kernel-devel-4.18.0-552.1.1.el8 ?\>?L  HH???7?Hf1 U]FOz]jB_ڑBdأ++V lYAЈE2UGR0K'Q+M_?am~PX,8,Iz-[>pKM5EA=һ} N&(۟O޶&=[8vTG* +]˺'΃R1` 0ѓ3OCt g SfN_?ɅU~a7i>"wgB9U\P~bkF5 MPUTohEX֢Xu%?=>@Be*btlPN_o}(hr?nĆs]CWuUQlGFAy?nK/ytĔ#bYLgX $_N)CN6wsq̼Vl7UJGz?Cfˈ c&Gr6NĽԑ&AuF͡h A310ebbcfe17285e721e30ad7a2399957d8dbcf2f4d1fba9b00285e5895e473888ad6d27f7ed74b954777166e5f0134696d4313740302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023019dbc581b1bcf26a6192bd8a413f5179488e2cedeab40ece04217444f45c4dc1ffe35ca45ddd171af390300f328304fd0230041461d22c6ad6605bf60c9cc963fd67739d0af0553de119e54847a214e49ddddd35ac9b9d8707e6753c606a887d331e0302047c435bb500673065023029292073b151ece8b5fad275ea91b9bd930dcd619114efa88c7e320dedc7a783d4e45c148227144f89ac522200be643a023100c307648a2270bb299b892bf98ff6e79c0d06fa0fec51e5b75f0b686794b525973cd80a4fa68c9cda5525a7783153ae220302047c435bb50066306402305d5a5bcfab6128c6317c277f3b8f31e236d206e0d673938c6bc557b9abcb96cb3c497cfaee610c06c37d1d1debe8653002306311452d3c64fceb5bfa52d8b6f54e3e7224ab8ee12cdb3139599229e93173703f31f4ea138f516e74c9e8ae002b44290302047c435bb50066306402304b1f5650a9a7a289a1768f99fa1583783a0fb1fcd10ea7bb5dd79b35f95bcacb49e9fc16753a32e9f909c9b18bef34c80230530bde9b9a98e1b6d7d8c72b94cf0d9070f878e86a3431acc112c757fa7b955a7708443d7080fbb060ffc03d4ed31e2c0302047c435bb50066306402305b6b3651dcbf3c01f59df766ca77a9e5c8b5f7fb14645652c5333a715357e98f214303a5d244e4ca76d2b83a9c0116e402307b5ae5fcac8239c15f0e093a6dd4104778f83e979a9b69dc8172a07a75579101bca9bbe68370e83a20529bc6bf81a9750302047c435bb500673065023100a45ce35886d04385ea6ca00c0e3f473affd2f2571c10f3c59197d3ce5a82b9d4e26181475d3d1de62c03131e1e0eac72023044f2aadae88b702e19e4a779556c2e3f8d85ca20c9f1bd505651eeeb4d18ed6402becf44e8ea91e1deb9f0286b7afebc0302047c435bb50066306402301d6e4d10f55ffc9b2a2c837a095d2c158114d66030a5667232b1bacf340ce38ff43c5d7b79a2a8ca263d1e6aadcfab3a023003c950e623f8178824d9a8e36bdbb52d1fa3f0a4175f16eaaf679cbc5a80b7e1d2ab1d9968f41c75fedf90acf84d2bba0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230676af51f749f0d3db9d89ec60aa54e45831c0020f8b2068e7312008986277791a929f93d2aaceb478b4ff5b84a83002d023100ed54890e50e1dbcac03bc7196fc599271cb8a155884e450c083975926ba63e1f2784dda04b2fb706583449b20dc534a70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e5f9141daa10a5e5c2a4ca510e13f95ae46f9c7ddada4cbe9046f8cd1e47c35aa25e4615d8a4ed86666afbb4c480e5b1023100937b12f5b3274f806d739d05dc82ca7214f8604aac9974e60a1e68c184deb04d8cf88b545110cb8264cd1983dff382350302047c435bb500683066023100de57eb5f3e0ad7a3c23cc65e654fa0f02c5927fcbbedd25d4756c0068b6bd328e36ac98ab0cca645a9b11082af7e50fd023100cce17deffa07cdae871b527ae9b14fbd014dd8ca364026f9694b00d522613048db68ffb4f6857250a2ad1489c032a2740302047c435bb5006730650231008331808a4652c77a1ca16d6d09680b7c2972531ccabef06fae8c45581fb1561b6b986cc5d37ac41dd8c0d7359a063e6a023005bc7035f35ab3f02526d4fe737c130aeb3b72949c5f3fc5e9c223e0760b93927c9a738df625a3496702b00b43fcc6710302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100cf1d02d9cd87b669d70139a5157df201ef2975661294722517ca0cd66b8a76ab9849963d3f0a68600df732da83de6a75023100dcdfc8dbadb87f6642ab537ad2515e3122a6d6856b09eaef1bc95066a42d673f962091f99661e11b3bab1959abe8952c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302981daeb339480f850a626cdfcf7cd7c9881dcd0639efaec056a719b9e2ea2d84fe6e957ee0f1e9fb736fe6ca0e32be902303fc971754dea6704d1ef7e268f73d3bf49b0146d4c6da05c68924a2ba5a232d503b16877749a67a78626f4ee497c02f00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023060e6f1fdb1943516abf0f8c211f1584550986b89d1ee8afcd0859a55f72d944833ce4d3b5aa798d5958009dd4218f17e023100a316c5416d6c7e5d9068ec6171d72fecc356e42425cccdbe395fe9627db35ab6be2c684a2e172f7e495577eaad7c62240302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230424c65928d2206a2a37b5a02e147b59b4f9e9c21efec84018e9ab9954420d96c92d0014ff76bf8bf4acf6b4a9d1a1b9f023100d7abc5727ef416b83046141e219a33e2ee0defefee8c81160b41024076b1e70125a0f014ffbabadae7bba6b61716b1900302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023054cbbab88c29c75f8b262df08509bbd0e7a66b66349d1f7c0db7ea5967d16d0d8c8650dfb04e1066fae5d5ae2cc6f610023100c39c80e64ce3f6c0a9cfc4e5eba974543bd34490ee26b3d052c2a002d432f949862fc82cb4174b83825d2ce056d2e0f40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c34b1afb5b92074e94a493c84f183a8ac490d959f29464ce42da2473721ad8422444bdf5e439b14e0c7df42ccf43cace0230613ba621711d44a2cfe6347c5004cce83a2b91e3535d6b3ab68c51dd1c2e9b2fac54099283a74bfc2ce6de93e35c0dd10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304889fbdcf3805a0b6ce20d3c838478faec442597e3a0e50ce8b2f321571f23d1be63f2d0b380bdea6daef1b4a053a7df02300b904c25e086f34d284827011d4c79d6839b55d9476825c7cc942304bd6cc68e335fccba8347ae09225fb76b6107eb560302047c435bb500683066023100e11323e9929062bcb93cf0524e39aa631eed0bbe91a2b948e5581153a1b19d77ba41594b0bfbfaa051814834534ae07702310086b1d2c4f284bf83fae0ea5000443de739b278054a79584978ae3b1ee2297e42032b466b11a87d17893a6b8cf005f8db0302047c435bb500683066023100cd4e3d305e5025d10cc1479b8837420cccfcff9019d9479d5c6cc7e1c0e6b0af65b50114bb5d7f66cf8a27365e69e6b1023100d1e7cb81d21e562fbe6e73a9167dd949e886f46226d43ed6087adee2d75368d9de721e0b025ae1e591df634a55c7f1240302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230723ac7636da50f5d905fced1292538067cbb72db638d0944c10ace7241bb4aa8cb37fd1f5432dc0e393196c5e57d446402305c6fa895a8d1fb4aabec34aa3c6513e57fae8a0b88ed602a16e5c925f93eeb1627deb031e708aac84c81f72c1bf4f6eb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302009bb008482cf7fac1f72d521e7baf1a629dc6dcf26783e3ea3567087fb8b4707533aade6b891c3e072567c050d4fe0023100b8bd199ab8af9b9523aa189057eeccaa3a32de225e05a32929408d574485ca64e4b569d5492565a3701323eae21e6df60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303fec1a8ae2b3449fa5c58ecd17d96c573aa742a7840954ad46dcb60d43a57a39974cf2cf862d20adb0bd4ed0277a8ddb023100ff40abcc8d6dd166612be5cf3e518c5fc854b8c9ceb106be44531b02af17984d515e33e0b9b1276449a4f7edc512633f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300d840bced4f7ad7b4fae7fccea3b350de744d8b2203f0efe06326d865a9abb5148207ffba22a2a5ec10b2cab37585a70023100f28a3f1b648a0f4c1e8cc06b9b0df2922a1023ce205151e3c633af710d42a86eb24da67cc4a37666f1a35564302921360302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c83ee22ea63a4483023db83248dde9563c52234d3950d3afc9c9014fab22267cf9c732a4d6fc28c71503cf557234de45023018e9306812a8bb1355e2e286779a1ebaa1f601dd1608564c0f754f002f66b3159dad70386e7e90d798ea1058c2be55c40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b15d0ae942ea0782c8ff6ea6a991df92294cd0b3465b06ecc2da7afcb20983585be7e3f328bab7333dd5e79d8f009dfb023100d582fd39cf3b74a647fc6cc866f292a64258ec5d1f16e11ae5f57a91870a6f3cf0387730d2a5f1618cd538ed4cb2066a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b3879bb4f8c34598645ccf56cc09a624bc3a63d8f78e46f5975a2eaf8f0936318f5bd162842fa119af273310449206980230056823742c0dd685fae0cba2f33ab6701cb97530de06d6e493cd412dbacbb4fb11dca10d21da5cf1f32f87244a813c3a0302047c435bb5006730650231009e212e0445059a7a8207384e51484f449231e50f08fd6d315aa5d44c04244b484a65b860fc88a5af7e079b3d72996dad02306eed642ade2c0b4c5da6cb59562f345465b42301320c8b8fbe3adfb1f90a36d37d148821a535ad910b40eaf0c5a306180302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307832659c72a84380e8582176fd760b95f3301017546d4fcc2f529c8664de9da31ceb201afb05b9ceb4d17eb04e2cd709023100b81eb21e6f785f98813514673a76ff19e0397845db35ed739300430b1240a17e28d7badfff243d5414206ae20dd352630302047c435bb50067306502303ce18ae9095953ae7f2dcb620920d76e204f12fa33c38dfadded144372834804dd5e551d1895a9a5b004bfdd31170cfa023100aaa1931abf4382775df5da3f13da39d777445b711d55fa4f7f923a7b1fdeeabe4ec575f5a4354c2b5f9fc35bea13a1300302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100922fc2567f86563fadcd4e6615407766c71c704fcc0e1123977bce37cf2ceaf12c0b4a1452548dc0d500eaa4771610df02306fe98699a77aa862313c50889e21409072161f206208652abc33271d59f93d41c2abaa65827f1de2ec856ed76c6e11660302047c435bb50067306502303b8ab564191aaa4b120d17715820a10bac833db0adcf9f4f96e7dd8891266c00d2f41692700917691e6d74dde854c9ac023100965b9f977d2ece8eb11435fd979a1aa0ae5ec9b97bbbfea434bade7708fda7be3dfdce433c2d71ad5f553152e264699d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305ab2b550f30d8ea5c8e583dec5ed926d185f68269e4e8570fb2830818d4cc3ec192386a462b13cb433db2b7a666ff3c202300ebc209bb945aea95e40e41ce09c9e01adf18fe2b55d8ec3f41eab9c711f1bbcf07804f50ed03fb4184b5a4e775128c10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d3ad191f34f83260d9c2365842f830d8fa4d01c9ea3c394bcea3585fa40ed1a365718f92e94d064405ddfa32ba7e80c802305e636820e2284bb2942e902e52f85734ccacfcb8255eb0927ec4509a384943466ce8b74a27b32c77cfb9ffe4f26943cb0302047c435bb50066306402305615a80934f72492e51fff7dc1cd7d5738ba4b4424786805a022dd3280ab295fa50439bed1a5a9a3f54bf6b06155a7d8023036696f4c6b92553716f7a3fe9da23ffbcff4fef786e2095bf63eb7e6d3327e44bf4e3485e8fe1f54f54728edaedf1f3f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d26fb2858ad8c9ca502e9a31fa9c0e76e2d1812db63363c337ead7cb16d7b7537fec25253b46457eb9420bb9fe20f653023100aad8431fc63133a73ae733f6943a19208843162f0dbedb2e81862e24b868e420cd551f0b152e26bab54e4d963c44c72b0302047c435bb50066306402304f074766f6a84c1ba6778f5f692b29b8f9f2663f3d8fae869c17bb909592f9ba3722a95d6c439cff0efdde5e2b2740be0230377324c99ab9cc208b07fac88957d3dc6c7ae539a56b82ef8406946d6ed4ae122dd30b73518fbca9f308eacb436691e10302047c435bb500673065023100f956eefe0168d39c85c4e9cfffe802de36958be54870daa77a871334b9ac0e3a550fcf1be3c4cd557849e6c063e18e79023049b311944855f2d311499af237d8d8c97e2fca1ffd436357f90aa363b75383420e037773eafe3d0141e2b14741bcb6ae0302047c435bb5006630640230667f494b77880e0bdf67e15421f5f048477db862461842539f4a580c98b99a175725bbfd3aa7bdbf6dfa42cc5bc1a6420230120e57d5be1020a7e838092d4dc8143ae51da02f35427c851191d57998736aaede4a08f1390d63f7990686a86dcb63d50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023005d36fb52d58a23224d64097a29e38c9a140b795e02bf8ff45260aaeaec86e4764fd3b16d698079dd6a2f287e2efdcc4023063120b97d15b0ec11b0bf9025a6f7fbb4381a793afe3566bdbe2ce36e8919af3e7cbae7b99d71033457aecffb5ff0b9f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023009dc1c0eb4c048da5e1376df10de0c7349abd2f9690fac32719380fdac118aaa17b07795a5ddb8932759eb0e547fc7c902305c1f913c9db510f40f7776e66b8f6da5da5ecb9654a4f5d19c5295030b369728310b42a9eecce1bc88b5c144a9ffab9a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d6372b0e65a9dd68778dda35a0f7a63d95e1fbcb435f9adad014ef81eba14170e2ac460b84e0b2a1874232a5f549255f023100c27ed14d3ea48f5c8c58bc1442580e5e117f594a42669a9f1b3bd753870ce70f4f40bfeefc04b979882009e5030876380302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d2d68d35850aef7309ff417cf082f9163346691b52ae964e02723a9b23aedf03750e32c03eb2be51295bb7b76a1a1329023100f1174d1291772a48cc98e81dc90361241ee9ea003a99a465e932ff469d829dc431e09b0e76ee0f406f67d2b54dab88790302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304c46d0dd3c93fed741e3507f3b34343c634c1d8fc9848d47547822a791f2eb7eb8a14ddc47d03d4efd9724a69ab2eb17023029572d23102d64edfc505a193565c7709cc35a10b6bcf89360f731c01ef4c5844b9e8a25103a91e39a846d53958d24c90302047c435bb50066306402303aa48a88ff5a2476ab5d38df3ec01ee852718745e75cc88e988c2f8031d3e38b53a933667a707c37f4db9de09fb5c9040230310e875b14725409b8fa6a73018fb2a46dfe0a00e8a06172dfee57581296678e7232171f32ebec03d5bf378fd7937a3f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302e9812e29ca60a7dcec4bba46bc92342d375889cfc932d197dd6a7404c32742e8c1b5afb9aaf0e798276c854d889a44a02300ca8e4e0d8d2a84e75cbddb363b797554a9c4dbadaf072dca08c8a6f0a965a4801db109f5c05cb3b46f455cc510f2f810302047c435bb500663064023043b61ad42e4d4be0870cd303700c8eabb06a6d70ed9ae399a9769c75b501aecc3a53ac966e430d930dc779e0b7b56e40023040cde0de0b7d10052ea94a80c4acf62a6f580cd092e027f804212423de155be4e8d1fea9c9d16ecc5576e87e2ed9c6270302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100bcbbc74576c938d24e865e4b8693beb92d3c1045f449fbf93451b95683921d58438c740069d24ecf736e588d9a304574023100b4fc37ba0bca96c8894ce2676ad9c7b7ee12cac83bd4b6a46ff0a9906ca48deec2e1ed640f8a35643fc405b60b4715890302047c435bb500673065023002dcb812db3ce3b78c08c669bbab3c69acee9057c6719fb5f68c9245afee8293f7ba1b53846919c6df5fd596480dac4a023100d9fb428586b5703e11a98c30e08dafe133c3d8527571a89f8246ba038b6fc4663fd976fa873f5777c58e9496f39d36ea0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d232cb05d0f73699ec28d83b8202945046d2176c9e3b088f86cc6cbaa924ad251b3a1ecdf76c649f2d043d14560d4c130230612776be676682af1b11931af162604bbe36de881cae36a1de06149deae29e38bffeae6345a11b0029c6cfc41964f33d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f2e8cfbd23fdfd0ec8511159eb58e009519f7396d231eeb976a3c12365b0ce632ffb380971458f5b6e1cb99d5c690ff10230104156fd8f58072fcaf3b2a58b1b9e9dbce83619c9389eb7b9c9ae44e12b1165a0513bba651f4c3b7fac321d18b041fd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e87f3c3dc2d6626beaaaa661187864850637a27cad6b4432dcd237f0c6aded29a4fced28826ace4d25102f45ee868d91023058d9a014d67996e791f5eb36964b9fd3c3845e11c44cea90f1e499ff1ca37dcd8923998650b812ccd86a61693f8d8b360302047c435bb50066306402305f681e1c57e64693da2bbb5a6e1d08b594fcefe56c5e35359c81dd6aeb4e7d3ef7d9cacfb8c360a0f9468176052b79d502302786d7b625b1728ddf3adf8ffc9de627183dbfd35b6d3a8de661b9cdc3b8c254266bfe2939db45b762276110a62f5d7a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100883be97d357368b28df4f14e6c81cc1e5132174f3d36a31cf3dd7cb86f29dc2ff3e832f62a964f4bfd9d9752070e993502305dbc90bbebfc15a7ea0382dd27a8939b81d0afd0fd064f36ddf0b508e80737b9b351e014148282f8c1bd9afded13542c0302047c435bb500683066023100dc7fc3fb2df64c8589785503916b5216db797f31de18d6eaf54c2982a160dbc9c18d0518f10bfd5dd3b6cf9b742c783e023100906e10691ddbd842b3ea387a9d0e761deabbe8e4ca3603dd9fd248e7888b4bb19b6638c6b5beb09b3a2e4ef93ee350da0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305eb5d2356b3dd91142877cefc021ad61c0de8416c5e351760500a6f4119b42dda2472e91519324dc0ba3d938404c1bff0230425a1bd456dcc02d6eac903bb429228baec2950d325528ea35b7840e5b8e945e17cca8bf93174691793f8a59a090080b0302047c435bb5006630640230022e613d0720ff625846db4e3ad52752a2bf0c937c40997cd15fe98ee168efcdee23f791ed27276a3167d6d732c5a1bc0230197905b14d1ad86bf274748d025ad4ed57598ef11c21f3ffda23194ef9f9c31df4f024e2bd1529aa47829d518385a4700302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304fd24112eb3b00d2ee3e7fbffa40849918d94afc152f99d2f26f8dc5564bc9f0554410319d05270a6fd33e7dd170c15e023100efc9cf8ca83f8cf4622162b5f6d9635b1126a94e627da9962eec4e571a676da0f329455c3f59cbb59814b43bcfd746480302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307541e8814dc95f2848795f411ebfe4ec9a1978049dbc1ec362da14efe0e65548f35c9bc244c382fa825af5930bde7d0c023076b9f5af0023362e6ace74917972c9379d9709b6cd9b52bd5aced2a10f29927c959b5bd618bf9e50c70e844e0d2033390302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304609750cef0f722565b65206d367e41925eba09ef5bf23e5deff84a4b8d5e6d4d9d26088a5e698cdb72734330ea683a2023100d4562fc59bf1d7b61346c37ea5d5d521d05c569233538f15020017671fa6a73ee728cc7c023a22903c50dffa542ec9230302047c435bb500683066023100f326f708e75f43314944b47552baae697368aeceef12352bc07c6671adce8551c7c71c2e3732e0cdca95b0a68ee4dc0e023100e053bc7ca8a7a734bd229fd85a66613c3d713e3befd3adee062de034da11e6f83fb39278f7e4f7231c6565a3a73b6fa10302047c435bb500683066023100e9eaa24038f79145a44cf50db03e5446f6305019f8251dd3f63d5837cb6fb62f62e8119de883917c7029ba90ae921fc8023100f078f0ecdac6aeb9bb36bd617f8eac98db4c1a6e9af25f31145cfd807a20e7fc6271d89a58da1e454e393bad9ea8abff0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008af9aad5f4ed389d78e9fb38b05309c2d52286169b7bb794510b1fad2d1dca618260887c5fe0f6f0ba959c2b3717beb2023100b75770562ab8c489f14c4a03b19e85673f16c070a1143aa7043b826e96d17b4ecf77d0970a1e0430043f683d5fe1a3ea0302047c435bb500663064023015b6c355d0d2a14d0f4e800b7d26b062425175279fb9c1b7712d24e008f9c61bebbd8f28e9eff31be7abf058a3c4a9ec023037d112163185acf124fba37527b38b99c09b3b74dc22153faab08fa6acf6580d3d33d644036fb70b602ce2a73a60597d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e0170af7bce8f1606ba2bddfd1552b1278d1af0409cac9bae5c2fd903bd9892930dbaa8f1ee55735512b4fea58a308de02300334333a007f28b2d4ff4bd08042bf760f1ce149964a9a5aad6eb93f05d03d2562d36d1d591bb0a585a01d0c293ba6bb0302047c435bb500673065023100ae0fde2d250651e2cb6489a7d8106028e9a96a336c5d6fd05050ec2aae9152e49aea82dd1e9ef329402ef253cdc0ff5502305c1e951392a887a6311d63b41091f184695a20255a4fbe0a903820e1f32d4fe56b635bb11ce5198ba4e3dc65d7f66ad90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ad41c9bc9de1c16b6f7f7b4d3f88aeac105b8cb4e86c76a0a6ba104362bd4f07451823e53746c49fea52d25d9bf690d802310092587af74a73c259efd448544220abd714499cb2ba3086ec63c3324ee0b6f6dae8a82a87522517b6c6d064253fbcaaca0302047c435bb500673065023014acae14a7e668d3bdca1a93458565fddd54eac9c3922a6f895cae0115924ac8dd49958befc51151d6aae023f850c0fc023100a1c01bfab05a677f99da89014df7271638671bc89a631ed7c7880c29c4312c282a488f45c0eaa93e037b9cd586d1c48a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c26941ee15c048ec241e55e004732d41d2157e5faed45f0dcfa827bf9b18f5f68fe7426765a90ddc38f3e49e619754a2023030fc63daa34696075a1e23f7187547d45e8ba8fe1bc552e295151c552a335aada13316ae1680412efc5a0bb6663296ce0302047c435bb5006630640230378840d22ff2343e03c101772e07cd98a6404ae7a6276ef6c890e20e913aa8c7b4c2255126a306c4290ec33be45c910b023034030c960db1be9c57b5cbd7cccd077b166d1178b1891be5458ab6e12d70887564b76029b5bb4613affd97ade531f2740302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023064cefda94e107b1d73056fa7fae97f6c4f70df1261bcc10cacf4ad9b39f5111b526a933d4072cc4075e2b15d8ffe5b2f023100b332ad1d2169631012694f0febf05d6f936aeb4af212e0fc2160c096912414971751cfcea87bcf9fa8ebf567be3a9d7b0302047c435bb50067306502302c692fb847abdb9908a18bb9c8d0d50ddf0756793b442f0530bd23fc2399739962fe44143a35dc27c7bd3951794b9448023100b266aac875aad05767779879555e054b51b9fc09f139992c014f304a26aa514af2a4d43809a76b64abfabcb85541e9230302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023069b4b988e3a5c49c64718448382e2081bc18caad06417218a6630f7c134aa64024709d1fc4f9b28665f623e3288d7a75023100a46cab5999d2070bcd4489faf4717784cd6860c60f478cb43c346db99615f0ceef4e8cc6e807b40026e5aa98805d64d80302047c435bb500673065023057e2d3e86b0e8dbd45a3c49ef06d9c858f536fdce301b04655ba691994241ea813088c92e8d05492b913fea9ade660030231009394f177f551a073d6353f725e13f4a8bd011c778082fabfb61a7dcd3e29f3fbfb150d1df0daadcf3dda1a04427506980302047c435bb50066306402301fb988ccfd147a2d4e8183bd6df3fbd41585e611106deeb21f0ab4ca6ae336006dbc3feaadbb216a8a16d32921addb9c02301d7a0b86bec273c656589c82dfdba427f34d096935f4868871b51d08ecdaf356770972a89d665e2cc526021a2ee5fda60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310087a04510a2ffe019f23c93a62bf22d23060576ab8e293683204752f0beb780033169bc98975c063f7b2f873d637230e2023100893845ec0f9574e7ddf8ce61734f68c79c61a47cdb646f653cef620c82825a3e943ede96265c1b6a19b2ef9d46ac381c0302047c435bb500683066023100ffed0427a4b9877152b493deb532903a5267709b1d001656407305840583b803ad7893abeea1544a2dc2438bfb5464a2023100d35b06794a123e6f174616eda1ed0459f6c677d53a8a8b0c3fc8e6a218c8840fcd85b2b46b1246c168db4df86f0736d60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306c2d77574c9d7ad3335840ba1602a4d419ec41b9d063fb8bb7c71905b3c6af745bd2e4d821faa257d65edac91d9771ab023100dba870a73c0215489d2b07c501ef0fed4769a6b0f0bfa08fae7eabbd1cd093ea392fd7e2ff4b8a0ad4764565fe0281650302047c435bb500683066023100ab38ec84a20f27e0b7c168881c416e6777e23941c8271af97bff25e238d4cde5c92e57364c109739aa7b0ebf55cfca5a023100e9ff3f0a19cda4d51706f5d928f3d793438c8cc54749b71bb6f623db8fa776c60d270bae079d5b91dcbf556d5d1c74fe0302047c435bb500683066023100f0ea53cee9963ddd2cd08f08fef05fd44a3b72c2cd6133e29af84a0c0e6ae1df9d6938b679a21349ad69c2ea016c9638023100a9b1d0f8e5682f71de746cf34f9e425b0b80181e0a8d388827adf5804972493bf8d801722fd626aaf5b187e7edce16910302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306792dea6e73f8deb6969ad29149258af5a668300d0cde01d054820a60fa7b2a1fa31912d1ec8e3b3d1ab2214e73b8689023100cd63a8aea72b87956b190d251e0948eda529976c7547c8cdbe7c2524f5971fbcca8b30701938c6d292b0528ae3b4dcd20302047c435bb50066306402303268318a6044c3241128e89d7a5ff1c4490baa1d54b66bee243de26d36926002e2aedc95b17ee648aeda89040ded9a9d02303a46b33f3333163084cd4eb8b304855cffb4baa9475fa09f36f12a176dfeac5642436792a6f36591b322baba4e8ca7d80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e3c8dd5add6f40daf12ea63f363fe1d1fc4e0d56f82598d2ddec13edca8e51c2b1cd868c19f8abe0432ffc364ebda30b023100dd192bddadda5c195d08665c1356a763c02f6bcc2001a593d181216917f2736c13bb9bf39553121d5c2613c1be84a6900302047c435bb500683066023100e9eaa24038f79145a44cf50db03e5446f6305019f8251dd3f63d5837cb6fb62f62e8119de883917c7029ba90ae921fc8023100f078f0ecdac6aeb9bb36bd617f8eac98db4c1a6e9af25f31145cfd807a20e7fc6271d89a58da1e454e393bad9ea8abff0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023006ca3983338967380a124032e77fe27b5839a71d0b50432a2d79c7347e69fac6c1041e43efc5d3b22c0534d116829f83023100b3066c8baa439910bce30a8d7d936e1e9a881593b3e63ab10c7ce589872bc2901e9690272fa43e385514b34019211f2c0302047c435bb50067306502305d55b92c7d2a04c03d8b96cd2f52bf50dfa7617f6ad1398a4811f94d61b907761f762e230af4a52dd1c601124136136e023100afb0731f8a27a50a6ca08d3740906638e8fcc395e28ba126c44e9452cff8faad4018c760f4b3670d2e7d45bf0618558d0302047c435bb50066306402301b8cd5ca5d9ae9158eccc780db4a8118fe92c3026f45dd070fb8607fb94da97260ca79741506f03b0a214b6ee952360202300cc1605982556f7ac003d4ce604be3c26562efeac4f0413dc633bc397a90d67e6e7831b98ff62cc71750c61248f16e480302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100cef8d44c892e69d3caaecd38f620a53d89d8327531dbc3ae766d77fd51e7d33737af1059c1bb2d60d085ded9e6f0ab67023100d16c2a8ca419a149e947d663c6f682dbf5584147fe9f2936471bb2859cf4db2603f3432757bad08cb729a31b4a3811330302047c435bb5006730650231009506d47dcba1305f685db5c8d20ee0d71385653d05e9d9dcdc8c24821c84516d732a2649b144de692277f839c1321a6d02305b4bc73c1177d7633a012f9bce86c0a7582b97b6d19253318f27cecfc1eed8010d59b078b52b8947580852900c2a100d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a649a0a44c46996fdd0f4cd2a11d979b513f57b1b0e8327b85809bb8269184e6ccdbfa8b5c7cefd696f4ae1a696d404e023100c01757ba2d05d01d54a07530dc49893b82245535802acb1cf89559fe7ce78382abfa44bb56ac9aeac97fe5e144793f2b0302047c435bb500673065023048bbcdd5801b38ef715a5db09fb9f82c9ad264272cabfede90ba716e0e28ea4da540960bcf146fcd740f11b646922eae023100895089962c062bec513b44d3de7cb21b008eb5b9ff39150727a07e7bd6087ca794d7c1e72df157b8a894925b63c765d30302047c435bb50066306402302d670c305b0b2fb1fea4fe32f3fa17877f105fd556bedcc64901c5edbfdc7005443a219c5ece5a75593accab7d667f980230042599682e8a14835d6b268ab74f0091dd2430503617f3277089ca01bf815eaf8f3c8dfad6aeab152ba08575841f6ca90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301943945f83105e40c6c95a8d9eb92e2fd14aaa3cd184e7e18f209bf59797709beaa60a3672c9ef3ed02f68b7922b4abc0231008c51da98acf58786565f904dbe5f32b3c94379893486c0b5a742c361fc3ea7a3c02e5b374975bfa669f0bd4ac3ab46750302047c435bb5006630640230151a8d45c2fc20cd249a211cd7703bdbc8312f62c90dde96c1f22969b14b7b01613cc278384dc7050ce9ce3ec108696c023002093c004bbc1c3ac2d6dbffc2b3065b6497e279012e401d15661670421805ba63997a3fdd9a524134335010db649f680302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304a84e1aa76d313aa5b259f24cf3f5925233901ac3c4d9e0a82cd0329a93511b4993be6e017a66bc507c333d62fe5246302306a307cf05277b169ac3ad1af2a14747bbd3289fa5b6ca3122402956ab724742cf05294a7b369a85875c4e5df1b25dbf10302047c435bb500673065023100e5508080ae880037ad6ddbfd61d77d9e4c53aac019d69ff719d9b0ab4f4adb16795e3af8cac544722a5ef8a0fc6e32ad023079a39e1540e82fbc2b8fe2734db1aace5f38fc21f590cce42ef326f38a5ef47ae2e5267f9e3c46625fc25fddd7d8d11d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023011316a9d03ca291d5ef2f1f59e47df82402e0f24558732aa2af6ea0f61552b9c03d6bbbd5dc7a6c07561cc311f5fffa0023100e422b20f1dc3b71e4cd8e6f902748acbad700324c4570ce433367b2d9dc46848c6f85dee2ad137400b8b8c2dcd11b95b0302047c435bb500683066023100a0b6ed39d8634726bdc0e656e252405eb5c89765e748d4644eecf4f7eed80e6deff8e45e0fd21d3c650fd607db59aa09023100cfa7a0e41057edfe5d7d973411f53a6d4357dbc07bd34b4503d7cca2171c3cdef440044a3848dc71977097038634c8080302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b89b78c8a6420b5a63167cd745018dd6bd94260d9a6a5b0080caa977a6ea04223f390e66826bedfedfc9ee26c2f7b331023100bdfa3c4835fb655fdd2b220860a909faf2bde9257168fbd47c285bafe6758886ca0ecaadebee4eaf11cdf4f837b8ceb20302047c435bb50067306502303751f0318aa5c6bd9c8f91c247c992c3ccb69c4d118b13c4a7f5e0dd5b3bfda622e4f550935e17c1205ec2dad6c97e15023100e95f63c09bf5fbdd7a83aa2836b19adeea6f4bdd48f0ea32054ed545b5f3794d6313f3ab07a1cb4b76153203c4205ab60302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300f17cffad1816f9d3ed8243081e6ffaf7cf2a355e682c21fde00a13801b595eb1888aa1910d63d762620221f561cfe8e023100ed5a85f06b93365a414664e94cca70656b978c9aef658bf562ee364537a278ec083f1e68de6777b42b9a4c4ca7a731290302047c435bb50067306502310083b4a1afb138d8167245f0b4a2cd3eb6e984eac00d37a12669514106ceaff94bc172ccfe784a1e61bcb70aae4c19d7b2023068808da587f2e749a56bd96569f86835a8c31479759438ed3239f1ffd925dbe72961bc762c0c25e5511c0223c255f3d20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310087a53f9e2cd777530b30710556d3c33c45f76375a2abc28c75aa66f2b6e20b64f72726b7f083360487621230cb10b9e3023058cda91e1cbc9a89c78318082129a649b4c26ec01e891a09f769e7b984d3f73b821c3d152e8590c2992c4042a2adea080302047c435bb500673065023100a26cf4f075f37df19da4f34218e6da466efa73833c9a5b9e2d7f6112b53a1ff0182f3bea855217d7eb526ddea9c1f0fa02304b928a228c7cf41617eb8927adfff8e3fe2747567ceae67a75176e254b9a88a127007789b893a27110ee71beb51c50ba0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d859073217aded76cdc4954de7b53acbe8bd099129e1d8a1d5176a7cb86aa8ab54f0784c9dee0af5de591eac56bcb1d0023100fef07843111873e549e0883cc069a942a20eb88bda559e9f4f9a398412e45af038e9a087edc2a2e217857200a28a7e160302047c435bb50067306502301b8844f806a8390cae0949ef855e6e8221d02989bf7fa4dde19b4653d2a434f809c7bd928e6e9a8256b78a8417aff67f023100be4940024565b5a0cde094b1d4e65ba4d15b18269695179ff13bb282bde95efc96511971b6fefd97832cbb6781b1cf2e0302047c435bb500663064023034efb30a292311dc7e560b18e2ae5b6eead7fc34362b8aa9a987e408c5d6a667ee02a8ef66a7b41e3be62c852858092c023066a651f720a4b91c08f6dad65ad0b3e42a6cc01a3337dfc4b82d4e40008eeeb19fdefc36cad388f06355187177e9187c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023045ab091e763e0629d9a5e2f99a706ed4b750679bbe64e101df56a4be6995580cc3db04c94de0c02571def8037ce58f6602304b37d35d613d0720232b903432e7c6d3ced06f341fdc453005188f3317081220c6a1591a0a1225b0d625f8d567acd1460302047c435bb500663064023042b1dddbf1c8947902f4b923ba437b6de6406a86f701652e55b1c0d723b4cfc30a413b45d778fdef40c418e942cd328e02302b9bc182b7a1649f6cd66e83fa2f86c8080673214429b5be2c4b73265315fbadd1daf58d8a1651da9593f38dbf6a93b80302047c435bb500673065023100c25f7c61e70f7e69f08d58b42b6ff871327d82a1db28586caab36e8da08ec1248921a80989802a96d205024e2303236f0230556083d367300ba1de32ea62632064cceccdeee89db71fed2f4022f3e6d5d27185e3e1dda3936f7d1b651bf5af282de30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100eec17763cd8f5a54be6d62bd858389a821d77c010a4fe6c3fd2394012bf58caffdace41d48c914fd2ae2b051bbbdd56d023051f341d192d9503c08d51e4a5f5c3215b578245b5102a2aeabd84320e331951a0e270fe80953ea316be797933060a7970302047c435bb500673065023100cab94a13759ba229ce7195abc16d1911e114846f9f87c09a7f330775480744fcaa537025911a61306b2848f86cf1dcb302303e1d3be4948ac89329f82aed0546a96db840bad270b4f895e805a4d78a7c6ec30ab10e70d264a4e44bacf145f7c1f32f0302047c435bb500683066023100f0ea53cee9963ddd2cd08f08fef05fd44a3b72c2cd6133e29af84a0c0e6ae1df9d6938b679a21349ad69c2ea016c9638023100a9b1d0f8e5682f71de746cf34f9e425b0b80181e0a8d388827adf5804972493bf8d801722fd626aaf5b187e7edce16910302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ae058ade8a79cf99fd585d8641817d3c94ac785843132b4f6b63e674f792d09a38a750bcc36e93e63482b2611f429aa902306f633993ff2ea8af64b71d3200965cd46ae04dfc326b1772628c9c00929eff0866df6214c3a72a2a52cf2102249de1230302047c435bb500673065023100dc57da636b79ceacf9a776bed48d47772c7bc3f6d438b8a249dc095ef344fecc74e0a304aa8aea6c0a6e4b353d5a8ea6023027164215e5777551d9921ad0bbdef6050ea75f2426b83a2cc0c1040b588f22db4bf66b1885493b376f12c7d56409b3f80302047c435bb500673065023100f6339deb4b9149010f0b2d60e6f03945f8050a2612075a26c6cde137ee7354425efab64b55532533cd78541757a7437602300294be631cbc60a5477fa71e75981e4cdb62b763e2a3732e7689bf0d0ab347c2a2ce2099329406ff8f5612016a446a8a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e014161c71dd9dcd9bb58b7b0e9ec95c64ab0f67da9cb0df0f9534f66370dd9e53f236e1a6918230e04328063261efad023100840956b01470a0103435f9a95fff4692cf1419f927b28143016ec1cdddeaba9592f1246342e2f15df7add9eeb34f26ff0302047c435bb500683066023100bd5ad34ac46476bbd4752c762b332b64caed7763f7c2d99f255e010633cc3dd4193ecf28edf29f80b54f917ee6eec28e023100d93eade92761b8e4da181fb5c1d7c54966ea6a50608710bce34e37836f385cffc3907f87d1cc5243f743bf9682b567370302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e5a2e1d8fe66ed0984b82a42adf9eb768df1e1d5c7529fb01958b2837d0ed058c66dfbea9c77f5d9a57641317583c6260230432bed65c386736de9635ae43cf5539630cee9e7b8a94ab6836a3172af72d6c7d7df66d13954b533e8a0094c3474b20a0302047c435bb500673065023041c55e7603e10bd06a5f1c77c5a0e91e0554cd5a2647c034179ac2f5c478fb0af67a7c8fed72ed8a2ea495f75f8adf19023100b5df42640356975fbd0b23348fe176d522c089c95d6a53f57d79c0337679df8632b4f5742c751b5394803d691a43b7c60302047c435bb500663064023057d01aaeaaa4ff8a8eca99aa1e1488e6cef087de6cd4e6e946a65bc4d2ad68de6ef39d550318d4c60efb9889bed71dbe023021dbd565504a5ac4b52d450d19540c47dd8f054d0dd87d6167954d49f0b024a4fafefcc96d84e51e87d8691fcc0f3d370302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303febed9598ba3a87d4efb1a9c893d2de7a7b356bb9daafabe3e23be793857e0d286c8fe44105dc9d358557eb613ebb5502301ac25934f22acf208ee89510f871669696aaf1f9540bc3af0822417b4a67987aae76f5c7d730fb73b547f49bb6748a0e0302047c435bb500683066023100e9eaa24038f79145a44cf50db03e5446f6305019f8251dd3f63d5837cb6fb62f62e8119de883917c7029ba90ae921fc8023100f078f0ecdac6aeb9bb36bd617f8eac98db4c1a6e9af25f31145cfd807a20e7fc6271d89a58da1e454e393bad9ea8abff0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310086d24a38c8a0f1ff614a2b32d70ffe8eb46be164bbe6291d9af80d331902994a0a08d5ab71a7f8a94041086a0dc78ff6023100e6af7d3ec443faaea1cb99e6529d7ab010db934734005c40c22e6f0cc0a64ac1b7b1f3ebc2fef06e44aac9966b32fbb10302047c435bb50066306402304b83b57c91e5631d09a414745d4253e5e862ce1ec661459bb9cb0344e2ad3b09fdd37b40d7e68b665eb82d0154d205df02304b33e67f6ac31298b8c76d2cf8e3b94976268642f05fe4f1dc01cc084dc0dd5a68552f5d2b4a6c56cff0ad73ea2c62730302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230765dbf39c48f24d0d0fa8005fb6a4d37d0f4b10bdde93f390097cd6bab8d1b3c2ddbf06b057c5613e6f93ab158b17732023100b910ba9fc923f02dc05a763e402df2b6b41251fa770abb822b36ec5b796c6afc5c0afc690a8e3b7404f42efb82d324610302047c435bb5006630640230154ed653878614b84340d2a9e72c6ce7c2511e707b8b3672046bb8afd3cedcbe160f1b6419de340b661d285121bb5b7a023073890e84cfa0a1467cbf31aa26198c14f3de312562ca181e23ccf2cec1510f3b50040935d2912d744dbf2d9c4ab2666a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304b7c3b552aa542e3d775c4bd99ec0750e07c4fa2a3dcf05f1568763e635d87d886f159f01f5c3658eb6f8b5452fad4ec02307217400cefabacca15fd1a945419cdd1fec0217977c82025869c64e55ffc3bcb649b41f21f26e6392c4bf00386bd5a060302047c435bb500673065023100de82cd040c4c8707665defae93f7e937508a0926c61f0ba3ebf98adf3b61c83687bd71cc88bf23b69261d085082d9f30023076d8c8a3923d9de03e2d3c4bd2fc60707bac602fe2ba7105e16f85d26d12b0aca7589f7e2a6d593af6b3f965873e68310302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304dc31ff98c87ee3f0c4858c8fbc17bfe8fb68da9d016682e1792b99004350e03b8465e9d0404091009e7fdc1574688ca023100a528c3e2952f89c21225a1c2569699946815b89ad4476628f39da8498d5a295ac6ce68dfc2cf70a0cf35ca4fcd9d013d0302047c435bb500683066023100a88a05b08639cce4705f0e91fee1b81d932125d2c2d6b80c76164e6bf1dd4f11b57ebd952150e212f3492d330b0629bd02310091ce654cc5d3c3b3221952112f9ed3dd232d57f35394f201d638e6baec0de172ad5c07beb09f735258356a251cd8c6ed0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023040502f5440144181d97f507bb600b3bbec24bb79b312783a9593926cc5c540043668071bbf16b566a146d0feff5ce3d202306655b950c25ade49712c4c79213cda6f38b64bd11f411f4cbfa528320e3d75171440e0b6631e790ea4978f624a9942d50302047c435bb500683066023100c45f5c11a778e73ac15e242934ed5a13c819481181ab6644aee9723deaf3df49ae86d541bfaa6944382d38532a576bb0023100b3b7b9ae8b22befd18897aa134af735d5126e05f77cd4b563a20184dc5f48e44c981e5049669fd8aec99bfaa863ce3140302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023029390947d04dcb94a8efce2644926f4de9541bcbc89996d062fe670a9ad674189dfe617f9a8164275d67430e31b115a2023100b16c7f7311ede37244599f1cb461fea6f8606bdf72c0fdb341818f77d62215c1fdcaecec5693dbc2e75740a606b57f7e0302047c435bb50066306402300aceeaf48c0992694806dcfbea195867ce5a58365d1b9a88b1d33cc200431dca56a68855e4903dce12c0ea8d683d80e602305d6514d426b300c3b030a06f8bbb493a0dc728f597ab2ebf256a862bce335861aa375fce4626e3a603911704234799280302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230012d77568f865cb1e241fa7fe2162adc74bf8eecd02880320e37b230b84d85d6f0d92b020828f4337ce5a3ea1a3716a402302741bc73975b13238b5c363a719c9326c9012ac571bd64d2614413ef9e59b5b1702e4db0409a3abb2f11fe612e4bf95b0302047c435bb500683066023100fb13b682bf143527b077203048828dab2551803fc5576022b868d7f4dc52684caa1813dabcaa5433567fd1ce4a876ca6023100c5e6f38478ee32965def667b3d0544b3f6188674fdb2447c5fd1d377b493b58199ebab99023e7507fdfc18fb2386e8560302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306946ce23388026a46690664d82d23bfa0de2c0b96e6bba0137971b89e0b31e9ef0de6ee810809c68d0d7cc211520795102300b10bed0ebc5ac8453ac05b9e04dc17cde7ee178135ba94bddf86a39ae4f40137b3ca644aa10e81797770b40a83b38240302047c435bb500683066023100dc49724a9c1a83ba8bbd3b35b14fdbc7ecb61ec5a724567f2c2b8d4f6c63077fdd242ada8f5492bb84d7d69d71903af9023100fddde5c2aa7ba6854ea01f0d36b2a4b842caa6d568e6f7352ea8dd8d0143b2c42857530064ed68448b3bb746258373c20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310088b94878a2d90e03d812095b55ffd24394064b5ca9897c4473be06ea9c3d45c940ea8240bdf9a7a74eef8a5cef9fe00302307478f13673e909e237512675487ba131aecd9108fe2a31cec85c1690813a087c900e8937268a21e981aa9f81cc841db20302047c435bb500673065023100ca62758d3766967e1aaf85670aeadf78ef294d135c2fdc3789a00c10cff0205b83263b0320e6e250bf92f28f99ac1731023007fa0ea9d181f9c4a891c56d7e43b317c0f30e756e50fce3c6b4bdbdeab88a75733fc9d072cb629aa509aad89a635e330302047c435bb50066306402303fe750101d8e9a197c12d6fe0510ca10e1ca8eb0a478d217a9a62078dfd03f6e1b3018300b76c8d0b6867b671f964891023042688ab5f89b2b1b802a2b3d37f6cad7a36da63de759c18bfe5c0d22c47c29cd61778e6125deff98ca245e0608bb75b10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023010ff54537e678209ce10b8104ec4ad2b7a9e1de819d9a9b309d570d491029bb1c3d6c19cdc835ce83ab54bbfc3951636023020ea364269051f142fb6991ac9a0620978c8b9fed3b0ba6456e7f1ea12fe651c00988670e4c7f3716485579a4c1e721f0302047c435bb500673065023073a3f61c9e90600ca094e298f3e3d668c2d0de5e0ff53c29fef3f54e65111475ccd8908f94e64716aea3a081901f7dde023100e4a76cdeefb713292c46de702526b56c4115e0db98faa241a7df2913c3f5ef4c305b9638301a3f3d642ffd93addd11510302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d160d3eb60d8f6aa253edf4a5951528cc9e4c6fd0150b0c773a99729efbccbcca41dc2868cf401fcb9dd0378f364acde023100f846acbee071774bca842f6f5b6c4b895c7acd34fca63f918f8619708675d96f40c36a1601f590227b17c0d3a6f4b9b00302047c435bb500683066023100d8a7434beefc0c6a41f93f4b4f8f09fa2211364dcb48ea0d84032838e7066ad2ea1d71f9db158cd24fe4f428f91a2eaf023100d46f9772e0315470109c405450a69733bb56f1ea3fb51f4070f43b4b88149f26cf009c5fdfe583ec9aac3a084c9c5d630302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230658bcc05d5fdb06d6826bc95ef3e163fc2846a9f972f3811bfbd843b3ce7d706511d1ceb452e0f4b8fe5b2fc6a0691e5023100831acaa35bd95a9494e562d8eda88a427bd967a2a0436cb410e7f0c5a4dec9e8488c5124182ba357636cfb17cb88faed0302047c435bb5006830660231008a9f59fade4ec7a0ef263b0b15d3715a41fb47d743f0c9385efeb9eccc9267bbd0b954231be7a1da4b88a2bbbd73ac290231008f5de1c1247667eee895e2fa2674264ce7359d96026c71764dff3bdb4cf85ab5cdb2433a4ff77d22a09425ac833b6b180302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023038498804a4e52e764d8c36b63debe84f15dcb6ddc7e5ec596995fdb3dc72b0fdd640ab044b26330669ac7319a4e12682023066ef2860ca1df1378cd0a8fa3a3ff24df7ffdbe1bd4d7340623a38903b8ea8ff9b4d173cfd465a2c180dc1ad7948073e0302047c435bb5006730650230658f92b939a50cf388634c8815ffb716b89670ce52980ee13601613f8fddd0c2a2eb51812011bc81f78bf401da6a6360023100df0b64f159a8e72b3b85d08f98abad1d39b58ddc3bf26d82e1e58867c6dcd6dab4f29a9e5784e6f113fd836d2364c97a0302047c435bb500673065023100bf262ad272cc2326ff7f96a60a506a22bb93a5df1e18bdb42c8f63b611eb3c7a829a0f43ed68df8dfde05708c95193dc02304be08ae21a1850c856881aec1ccfc235595d704f99cfe4ec83458147225a356a931937899ba6ddbcb29eeee73d4d7d6a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023056eb12692303cb5b0f4b08f1b4a39e52df5c6672b4b396a6d07305bab75749c6bfff4de56e0da1f73dee57c9553516c102307530b9e9bb4ab44a0b9c211edf96a3a2d3a40a140b146219410f789e4035c58fcf1481247b246074b25c9e605d5ecc550302047c435bb500663064023078a950e090e8ff6b1d45a85e5ca27042173b1bea503bd97d5723e155359d9c12a649e9670284e4fe10995d032e7ea5fb02306b1c71386e8596d2838df5a26e1fe7d81d256d2ceabd9d250c760036308129bc28f00536e3c0fd947f4dac7d670ec9f30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023002c8aa7657946041ce6390373d0e133b8c048cf01bb498266e30ee36edbf5b60295403a03b06d40d183a1ece1e3989cf0231008d5f088c8ba52557edd2dce54ccfc68cb5e024652af9ba52a6ec7185540c31677cd0e79114bc7b0a85bdb60a829739d30302047c435bb50066306402301236a075102b883b71494fa98c819fc95355ac9f0f515a8d0bf3ba993d2fb6187adfc9648e968d8b697e9329920bf5c8023030e1a339cf5a11d50b3b25e6718a12e14e81085d51481ee1e3e4eb4f36eb9683c14428450ce107447374b083ebdd13c00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100891f2a1082b647adffa96b894ad89bb7b2ab3d49dd8f5073e96fb1533d15e88d207c08df0d949d42b0b775e3ecad34bb023018bcfd0af4d6cc5cdcf4131ec7c1b4aaf606d3272b217288fb670300dc25e43ef02dbb1535df4d7151d010caac005f7e0302047c435bb50066306402305d2b1ab0dd86cd887511dd8acdf3039884b9c246ef0c2b6f41294335355ef96dc0ab8e4e5d1cea556e9e82fb8612813402301000ccc57a8397f0ada8512b43b718a9b255f4f5c4d041bc0089c10daa8761985b870549f8961ba8ca70310acf185f570302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023001e269bf41c17be6803abb65880c71281c62201f6d6deeb63638442eedb6b60c03188e115c6d84d8c5e832296cd76c49023100f97274280685e071698def5b84ea005331591ddfb16418fb5ef84facf4f535fd4b11f0293d10707c9c3f307f3fedc8170302047c435bb500673065023100ee692caa9c8911ff49b70ca1d844c410704c1a946ffe2b26189a39a2fd8e54ed8554356ee33fd00574b158422769817b02306d3ccb6d7f43a9ad57a112116ce3b9d1f31c8898129be90215032377af70fcdc9822d3f3620e7e138dab85f12d350b4c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303f7f6ddef55b20650324e8b77e9965769332f317b5979fbc6e187379f208447e59a8f2caf23dddb46de5665d5476552b023100a56c7f237e38d2ab2cd083aaf9e49a1ed28ab712de59fd061ef613ea6b14e3b81d89a9a7078da0b496adcb545b5080390302047c435bb50067306502307ae113e6eb49384e843ffa49e31f480382f720162b2c147b9377277856c614ea61c51fc80af326d404c63aa9cb7345d10231009d5a86b389fa0f6226b61be3e6a06a44e2cb5ecc8d5551269abc00ad42128881b55a86f14065306ddc1dafb96934883b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100aa4432167edd642af55652a152349c1c3a2a3fc77aa82a48280253f4383454d9a8876029849e3c97ac832506f7c8864902303746cab4301b139d4cee54b0d762d5db8be4ef086ecfd8190a256dd858cfb3e4ea66af3297d501b12f7845d8422532e10302047c435bb500683066023100d45204db440846b701cce40f148ef2214c5cae32fa592501bd1ada499112a3737a07e0445ede5d41d040465adc0ab65e023100bb77b69a0fb187a7f28a1e8f10a016f0f4d77bb30272e50006b54be4834efc4487432ffe70890cb0118e45182c926daa0302047c435bb5006630640230504b05c46793dfd549027a1637f287f7438bb5121bd1653041eb16ef07c0b68baf0c215a66095a95221978ac0681b1a602305e15c5c6723c686693c5e223a4db324c4459cd9c1eb3c10c4d4c62f7de3542e3b641296df3ee3573cc6590486ead1dd30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c16a6dcdc1853aa767beca46cbf4654fb653667c0a96a7d54136a1320ac00b7d9ccd5d63cf5587dd19d05c8f2bdf8c7e023062c6d440dbdab2c488d92ffcaa9811e1f3c6545a012b32d847014c12029ed918def48e84dd5f34752f19978f94e76f090302047c435bb500663064023032b915ef2655b5ac82e6c354be2eb83a82cef30a3545817892b8424a5d4dc1199d82843eadf4dff6a8576fcf0b2877f002301c59e3728461fe008c26a060e458b756332700eb6c1fde724fc2635fcd666e349382bd2f566d406f665bafacc89ae8820302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302de992257873f0305da2a3e10328d51ab8c8642726624a228736a7a71d7aad53d6a477b5c14300f69cbc1bda1db3b8ae023100c5fc146b1ff55ffb21e5c9d2f0f24cf440456ceb6afb93284dbf64ce754d47b50aa18fd178380e2ae504667fd7ee5d9f0302047c435bb500683066023100b9d6c132184b1cf968b85b5ad2d832aeb1a8149e22f3c46f7f2bf4602c72df7a5a526a28c1525f903b00fc5030d8d6a1023100fc6e5ea692d9e6179c91563825cf9ec1fca6685941dd27328f7dbbf04211b1684d42a0045db409b9e6e55b76ad9d976e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301f321726cffc956cbfc129d1bc4f53ebdb1ae708a6f35f50aad0b978627664670c7f23a1233fa4dfb3d95d342de80f37023100bdccf0512490cd6095e93b0b9bd37ef29fcfabfb6452dc1b34e100ffe2a5c667147876cbe712764869c914a9785c7e5a0302047c435bb50068306602310084bccc9e9ebae869c50b7781e45d6c4c3db03dacc6630877bd08a4b510ccdf7f8fe76f3a2a7c0f9ac2c8963db984602e023100f52296e54eab2f374efde5541bee7606fb6f33bdac18eba6ffd990733205baf5c09d18db978be22005140226d6a5da060302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023051252464cbc96f89bcf256c24d1c8b950828393db4309dac215bb43275362782223b55fa26c2f7eb67ffb4e107d80304023100bf1e976af25d9471edff0ae2d419045ae54b952a08e7f644bef5315ea92228955bb8d4a0ce32512e6381c243ddb9f2710302047c435bb500663064023003ad915749c792df6bd182e0c49795f306430d7ee346f632486c13e34cbd25a91ea369c7888fd02aeba25930e3ffcec0023057cc5de7a937671fcf290cb24083af86ad9dd797983a89847cb250c74c2b89b713d4571f80d990e4cf53581fb9675b460302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100cded7c06d7cd0825af1932626984bfde55cfbbf9e03a2ac31a0bc19252e7da680141f2f533abccccfff44248c88e7155023100d9ca38684dbb0a16cd2bf9c9a2fd328aec3d04f04021a75355a50a520aa798abb460abd8acea3b31518a00ee22c9febf0302047c435bb5006730650230156214d0c186603d4043b66b2d1e6fcdc5c83e689bc65f268600f5ce5421a7efe231af9511b5caaeb343c4bdf2cb6955023100d1ea01cb886f2aeb419fed2a20ca0ced9dc078f840c0ea945a6bc8aaf8cb66037dc5e0e9fbc4a85e7a3d1ca877029bed0302047c435bb50067306502300263f6554955a4f45156848f7dc35725e6565e9675739e2bc9f0f1b4b0b484369191203800ef2fa8a0e4f7ecdbe62239023100f34020bb863077f5cc67a09fb75fd5a088341e20ae750dcf5979bdba7c83b7f48137b8d2d4fe83d7d461d759975116370302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fec57cea46a6436ec52933f37f690edd715784fabd9823b9eabd6726ba06ce58c28ec8774500b385997af38feef40d130231009cf7666fca9166d54f12c956f986767b716d43d6ed2f707d6d26a65f0163fb70aaf217bd005d1f689b7fa9587ad43b9a0302047c435bb50066306402300aeeac3afa14097900e0db378adc1381ea7f6628d963c94570482950a1817a7cb8c33460e3e9de2c8f0cde84acc357fa02302517c4b0f020de5b43340facaffa2d6dbcbc8075060169a2bfd3251cc7f8348c7c094e7d25c871c7e001d0812e5fd2380302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305c5ec9484920890eef0a828c572d4c80de94ea67286ec6fc8dc9cef611b5a85c1dcbb9bd72f45a3aa7d4b9772aec5e9f023100839dbe3e08f8f243242652c185487e2c6f62f429305ab44f7bc847f60569a2517a2e3b2d9e0777cbcab8be8bd744a4100302047c435bb500663064023035dcd7d4764e08936eb60e48911151ab4265704ee28d6ddb133cbaec57649d4a13abe98736e43cf940953a9f69cde2eb02303c7e5244b326d16ed672a5b0cf45425516c75b8fba50c57a8601239b8e1462bd22d594c9178ffc6e44c45558bbe4038d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f646d834c69ad231751482652c169002b558eb515a86d284b57717d92ab4406609b54427e7f58513783fb437a200e00002303b434305dbaa29f9c74401316c4e030ab3ed3abf4599cf9846fd2251041eb5e6348bc2009a67410560db9a9436d543670302047c435bb500683066023100d9d5e51387c0a61ed9d8925e4e026e466858d3c68821d4e6b55efd2a17c893ad71b894bcfebabcd9506339b9ee7b609b0231009ed64fa1ac1b271d4ea6916c4a5dd6688677aaafc482bc4381af650925709552b2785c67115d41b351054de83345f0130302047c435bb500673065023056263d53d2e7aacd58b1209979c3d454308218f4db34539459e6bb3966070265d551ee2d5ef39fb5ce2a7d52172bd142023100c0b9b5bf0dab886bce310fe81579c088e893f7eea000a8a8f9741f65bddc657612db30cee5540a1055d570ba885396f00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306d4c551d9630ac8b00a7e165c856a5ebc7e6c1d65843a9f3da92918660f26bec6404c708593e5db8ba2d5261878913f4023100b2f2d16b824c793c20f1a3a36cd1f86dc2c81916437bcc06a52828d6a11de5e598941e7cd0f35d68a75e2a0466a7c35f0302047c435bb500683066023100b618b564ab0101fb87c6833516c2530f1bde845f68f1ecca11250b2fb89c1cb8e078701dd59201206c423da889efc179023100bd5cbc34215403fdcd1afdb475c7b4583bc68e17c0c0aa9ed36867cc301a7591d5410ecb8e2bfe13a2e00e65d7fed6b10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c9a82dcbe4c3cdc0ed721835ac3b14c3934758e7029980c8d53f750b25e3ca675833e4d963b08e13bd0bab0916799023023060285057cbad2653eac2c03c8a9438c99345db9e233b2ea7470806fc0492c096825c74bfacdb26bae68bc1c5f125a8250302047c435bb500683066023100bd930a7cd6310ad9f14a998017e043371bea6692333df42982a30623d4d5588761bab2b69be5ae2aaa49df91ef009ec2023100eb78540e5d479ef49bd76d1365c2cae43ba875abea3af8990aa8ff66444f5c1f891d4edf76ea49475274879f7bf140600302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023040401214666ac38f3ba4505644c05daeaad98738e2383bc0223c304daea0c77e1816ef1a747e35207f1ba54f4459008a023100809d2fcf884f0ca7509068ed5b52902d23b0c62038df678aecf470dce83ce062f5112ff81eb6018a4fc9413e0e6ffb9e0302047c435bb50066306402302a72a823f681611dbfcacfc97121819bf904144e994be34085127180c4cda1f7d99cb0b96549e887544229573ed75f03023060039b44701b529abc0528c22d578a0f49e66281056e4a7655fc60ae5f745482baef2fdaac745fdcc46553fdbc071ffe0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305060f934e406370aeb3e8defe244546a06c3f23b673825b23873e47425e753ae201071a5bfa437e880362b5128beb2310230702a34c6bffd4672ec32e8614057f4165ea245b75baf139c8db18105acc4c10127b8a9dcab4107c067133170adb188bc0302047c435bb500673065023100f9a1a9404a2d2237249689fd16f2ca6a544bbd8745b6632a3037ca39f0d19b47176b6c0ce93e1c2e11586b85d71f6c2e02305901f630f60df3618a01fdbeb9dde0db7cf486c5eaf1dcc62ec4b3a05e5af88f2d06e3bdb5a275fd4904559ddfa5224f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310084383d215338fa2b7a76b71b5f6f89d4a97aa0f7627bebad334df68fa2d657d910a1ecefd5a404e6bfbf2b4005d8c48c023060fa1554f80cf9b866c36414ef189dc3fc938e4eeab08b0eb86b37479ddd07ee99af66d34d5038cdd6cf9f066850e08f0302047c435bb50066306402303febed9598ba3a87d4efb1a9c893d2de7a7b356bb9daafabe3e23be793857e0d286c8fe44105dc9d358557eb613ebb5502301ac25934f22acf208ee89510f871669696aaf1f9540bc3af0822417b4a67987aae76f5c7d730fb73b547f49bb6748a0e0302047c435bb500683066023100e9eaa24038f79145a44cf50db03e5446f6305019f8251dd3f63d5837cb6fb62f62e8119de883917c7029ba90ae921fc8023100f078f0ecdac6aeb9bb36bd617f8eac98db4c1a6e9af25f31145cfd807a20e7fc6271d89a58da1e454e393bad9ea8abff0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100db04fb6a5f99b28b56a1450f5bc75200e28d6332db96ac386d6cae1de71cee7f42adb60901f40d25967ec117e7e32a5f02303943b60ba4214952e99c6d1e24cf740a2c833a763e0bd2033288d452d32a24b48c593c9a688aa27bd6856058a827d7f00302047c435bb50066306402302310bce0d4388c24d5237461433ff983fd072aba037652bf81e8378eec16788cacfb7d345a4d02eb7a8a3e9591cf326e02306e31a62ad22ae967e3c7102c650def9fa84df20f1d360e7c4bc083a288e380180da289bccdddd0984e5cd04ea63861140302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ed6d122bff3614a1a76995a0adbacf69eeee4474df9090f75d23c2579fbc5a95b463ce6eef0aec28bb5794c110fd0efa023067282e62deb9d5b8f185d9144bdbc46a7b2492968159be03427204f27755ce2e970e72110087f7f8b8d7d9fc5f3da01a0302047c435bb5006730650230680382f8df8d3590fee46ba1a72f11da57b936198741f92580a314cc5ea9545bad7dfd66dcecf173e81cce1f1cc96848023100e3aec3ce6950c5590441d71def6bb209150fad0d1c161297f31d82bf6883e1ddb1335c84d1e74af3ac3cf5956d10a7af0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bd9f65ce4223c0258d1bb575dabbd3f4d4beb7dd0dd33e2e5be5f5c9313e4931bcf0444d630bcd19784c51b6e30d898902303ba61c40cdacec5248334341a881e7a7285a5f12f62a1b9e8f9f04d385ae36449133a398f50564e2b1c552dad0524bc90302047c435bb50066306402300888c07da709b2b27c16bdc09bbd489a4170a01dcfdd2b4dc7bf4f6abe0aa6063eac1e45fc36c73ec5c184095c60fc2d02307090b8d1e5205dcb05ed886b083b70b606de41e28f81e053a8a9acb0b92e9ab88d9185c9db82c8b2f90905a3a5dd6d4d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230369f453c3ff212403410239854de4d0906dee25ea580e55c3ad41cf19fe31a8564bc81716cd87a09b10a6179225c303b023100adc6f345645abfc3deb5612b4470129b751af2a4d2aa78bd20d0f264dce1c90786facbe17ed9112a8fcbea6dce0fe3a70302047c435bb500663064022f32c6cb32bbe2bd9ac28b5440022601fabb8372ecc436fb76ddcaf27d45898f02df2821400db4325acb60fdc39d1e17023100b5c30a22ad7b6452fe2fdc4c8f8d3c7a4a644861bbfe3333dab8c1e04e772ac4cc4d6b4402b9370059c743e26acfb3470302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306a661968c617bd2c2c3a4acaadd5ec2e5a91b921049b1226ae631f7d35aa4ff79b2b747bfd3d2c20cc9f8424d8a94ea3023100c375919d119fa016e7c390148f817670d26dd5ca94cfcac5d6fd71fd9784c7e9b323c496975df5e82f45f1b022f1d1410302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303aaec5062a37e4402b78b6524a39ba43a9f298c73603afdaed8077d839140ec0a8694b0ac071d38c3ca1f192df962266023013f376f78d1ee72be5fc13d9214ffa060691cae34849f4b0c2fafd1e16761529f0a2920662bc59b66e82cbf6a17313c90302047c435bb500673065023100b1e5995d1dfc79492afac317287d45ee8230abe97a4f2828ebe2d145601f80ef9b42b3d057fcb63b45e9e6b3e7f68d5a0230271ac03f63f0e3814740919cb22d883a5f661aa94692d049fb22510228113c986488bc48c55d26acfc98b5378f13b00c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a546488c44597a2743f8e724db225693e4a39b909d9ae657d83fcd32ecef3423e2ce8d7e4719585627208c72a4ea44c60231009b6a75c273e2ed2abc7d03268e2c01b9f6d230b056112834d9fc9952198b1dd42fc7d842194b4168f61eeb76960547370302047c435bb500673065023100f791a88cc19a916a3e8ae7cd0de106fc805d3b87406d1f55446e432bc687936bf5fbe9ef1485b03b2dca03ff9470dc4502302c24b1d73102fb649c85d4d66970302fb6fa5a2a0d822dbf0fc347ca0adbb41032801bc84cd21dae15fb7e72d97b90da0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e15b57322e8b279c6b3592c278d792f82e9d1e5b36d62e528f260fb9bb95eb82bab2928635e1d179a4aa756797ab6940023100fe60a935005eca47b0f7f40e8f11fe95787adf418697031519c0b9bb38f69665e53505d86f12e11d79f09cfab41876ed0302047c435bb5006830660231009bdb20c25183b6bd4fef0f7c67b1d3c5c95eb4fb4e434741b16c2be6e63eec21d2a7e5c4378d4b44e63d0b566635d810023100c21bf1d568c4f30f73078086fee0767d509e88e3a857552c1863c8384e80518a7cfae1033318f7f61d1051cf0b2cf92e0302047c435bb500683066023100e9eaa24038f79145a44cf50db03e5446f6305019f8251dd3f63d5837cb6fb62f62e8119de883917c7029ba90ae921fc8023100f078f0ecdac6aeb9bb36bd617f8eac98db4c1a6e9af25f31145cfd807a20e7fc6271d89a58da1e454e393bad9ea8abff0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306e20b15ff6723e69a204f24cd298ebd89b336de15124a42c0cf744b6ddcfe57784409b5dff96108e3240ff942de64c3f023100a7b25c7df558b8c657bf494d7da4c92b2183acb27d1df46497742cf86c0d1005e98a648b035231e230a92150c3eb7ef10302047c435bb50067306502310083c65d6621bb74e54b72cd1b4099b40b816128a2d7c0a4a6ee14b49ae77890757c619cd9ffd6952f40bba59ec747af14023056ccf4890681bab848035605ef699320e46e4afb196f27ca80e9d4b98edd059e4604baef2832a437f7243165ab0588fb0302047c435bb5006730650230085b94425b08702d4f079dd00028da12bae860ab6fc314e970c9629ed075d9dae9f3d59b7870a1e92423c333aa44fc1f023100a7f14554c70e63a9c6b8c33b25c53f2d3a40c3cb6787adcc6474309d9a502a45b422443fc3eb3c24d71ef9fe10e637d90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d842c21b1cf295ee57a6b23a5a0d7e2e7bd8f851b31de56f17b572a6d2cce331cd41a2043c6ade13ef032c8d62b2704b0230090af22eb25f9c844b892fb51c90583a8368c37be166c6ecb1b8d3c42778d5638c4cf90680659a66043ff3210af1775c0302047c435bb500683066023100aca73a7d5f2035b3439ea21dde3fe2f6ea8b8029604d9013d81a273798627007071b2494b8d6c869400296a7d5d675e8023100e05dfd84f939a5fdcb262b102ead24308494b5cb000df7723d82110ba81da4f5bc5923be542d6d26c76b8d2c2bb8a1c00302047c435bb500673065023100f5cafb79c6334acbd38f5ff9e025a981d5ad552d9ab213504f3b836e5ec2bed5e6ffa61f67f4c217935bfc012514325a02304726df083169fe57eadf3d464c860392472d95ef93b076c2a74e3669bbe6a6b4bb1bf4e6c0cd1e6e426c5fe8cf7d3d000302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304b3e3bf6e6ec79089e8b113741fbc1a12be24cd5c072fada1c0fcc83c74bcfafcc267eca4adb434f04305e1eeda5c5a8023100a5359d72d1ff193d4438e99579934920babeb5a52e868ffe19cf214a3aa524f1ccd3be2b1f11253d3bc14cc1e21f40c30302047c435bb50066306402305ee87feaf26c0cc705ae34f589b83e9f4c92ac3f0232f2bde890c6466ca4a801801a1f38519f925da86782244d41127c023018f46fc55d595d0e230be7514b1baf4a9b4b723fbfce5058be0789823980f133cfd732706a0b70fceaa5ac264fc858c60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b55bb5c98d90d9bba22068ee311b97d4234f39fb0703bdcbbaca0de8a1c8b1b1f634d4820623197c2b2eb9b767af523802310099c720a58c00cc7ec33c10b37dd6d38541946c1d9af04fce9022a558bf8025ca0783e57fa0060fd19f29cd20075975f60302047c435bb5006730650231009e91744cd4e606b21de67dfe85b0111e576b0f2e1a3b45930d0615acbfbf60348a157ad74a463d14b7d41f9ff63e159402302ad8d5a037c3dcabde75265a023a145832edb7aff597c7449c4e8a64d60d321cd36c125939589a6ded8d5251da5722240302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230667cc032edc688f09a012f52c8fa314b305bbc8ac26d59dc5095378ddfef6154ba2fe6a1b1dd6640b53385e93316c744023034f9a2fa34dd7b51127cbe1e3d50b29d17eb707cd08a93b3b634d0685421712b38aa287cef5e3815c5f9e3c282fe2cc30302047c435bb500673065023066f29bb64579b500c4dbd8ae5e4a890932cf113683c8414f2f7e6b6324cfd24c0b5cea95b2be6651f3c124621a4c9116023100f8278a0aa64cf20247ec7d799c2f207118df2e5c909cc417175599386cd699465e530627fa1e7e11b42c8fe4191658b10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100dde241a137e937ab496b1b48418de6f3b11575b8600392dec90b3718aeea8b53900b7121af6c4a47c757f90b83c186740230542705addb20925c092f3b0d7d45529cbb1ede0e2c17290db150248dd50983f61b5dcbf2d05ac3cbc41066704d6d07a30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307819ef4b6c3d633ab95896ca64554258db3f2464c72b1658d7d76ed7d617b32f825a4d6a5471d04f6c5a2c62de30c70d0230394325ceb11f971f8b8b42a7e42a1e202ef313c1934095a3d96da941b489c8e32a46d2ddec6a88370cfaba005b8044500302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305c32d60c4e5a467a229adf649dc17991c159842ba6f42029857a3d324f864b515af0ccb06e7cd35f096022987a0ba5b1023006bd2c9af398bcbbed4c1ec73a675a1d3694d97324e0dec91b02aa9e7649341ea3a305b3cb6245c72970dbf2131603320302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d7db58aaa0b1bba16ddc3b7c05dacb2e4fc2dc75cbc2263be2ae91b3e059665c85b915c4ae513b98ee2a2ed82b95b3bb02302173f5ef15d09ad5ab108de54b76397a80afce8074ca71850b89e1c0574ca881b7f4afae4ef3af13f822788c1a36c4450302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f10c7ddebe26d1ba54b34902bd8ba3632f8a06e9b1e409cac803f3240184420af3a14e76e9e1611835fb5246260da3d202310090068c01ef28283492e4075a59caa255dd27db846313fde6ffa28b70751e674ab4b099b907035d8d1d6a14fe54f86f9c0302047c435bb5006630640230514670881976da0fb76c6820eecb787e584b978636517684ecb5f57c3ee5ec5bcbb5bd6904e719f1f7fed826b3ee44ff02307558ae87540d142f20ed5c380848da195cc545dae3a548a4a6af5274eacb218cd355ab4a24b77dc7e02d9753d0d946690302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fecda4338a82312ee1794880af6639dae7e95086ee2efe581c8a480932600b752c4daa8fe474db11ab10f1e6fd4a35890231009e32d11bec7e501c38608d01695e6ad20645e81c6ae35cfe9f3e4b5f373f46b7102c55ff1e36cbbbfd1a0933d9b529eb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230371e905348a8fd1bb305c99e2972f347f5cbecc71aaa07f75c07c2b52cc74ff568eeb7eb040f530d862a1464083c1d68023048c2a531e573a3c8e6dd1d78b41f4a974a9c108a7f489bf7200b3dff730089d1dfd73a0c8ca98af334357380f20fc1c70302047c435bb500683066023100d5a4b70d38dd40626fce44e1f8fa176cb66dadaec752ecb77533f301175d8b931145b3fffc118163d6e25fe4a700b4190231009f84397a53a5b59741f73eac1489580e350f54db8d74d62ed79282e87d6e47baedeb53c54ae0101a48a532d7182edee90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100904f870d76d74a4dfc6381a609647710fe4c2dc544523b0497ab1e4684b906fe2d1c6ea2c3533fb9bd0df334da44cb5702304f1e5c79c2652ff332e5a8c9c4785f58b1323c21fe95b5cd79852ca2e7599ecf6108877533c4eb039e638252ac2ea0570302047c435bb50066306402307ba34511259a0bf0446acb91ba7f27943840dd7c556237d93524fb8421b770b32b5c1cc058f893547c8a488d921a7a220230122c1dd69f4faf7f1ff5fed01c7f5fbb5aafe8eabb01548ec416092e01fb7513d41cd6352f16940a1ab2390e74adb9e30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b1b1110e4acc552b4b9315d108bee10f59e091ff21c00e42b91fc7f3445ee987f5e6db286db8ad218b067127e51aaa7d02310083648676b167c526655a393cb6caeaf8cf598c4b80d4b004916ce6d7fb709eaf85caf0ee9aca8b00c1cc63e8ca402ec30302047c435bb50068306602310094e4409ce2e31dd14a1ccbf67ba2874469e5b8ac9dbdb3dd858bac7d0c27751354c0d58becb5cdbb991939d6209a2f5f023100fcf58f33930e72d463940345c4f883d44f6329472226e9ffa2d8760d5c00f779bdde912d63fa6138774d5fa34c739e5b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303acc6295ff3b6b9adb0b067cb2a1cd4322fd73e7535c5861951cdd93f0551192363874dff32463d95a34ed42a1af1d0a023100e6d5b8646d656d8a326f84ddb0004634a79b1f63235335dd066f6b0cfec045da0b3e3eae13b0626e657cdd961ae39a290302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310087c7eddb4846266b549d50e2abc748a925ebc6d72ab02de4cf1fddbe3448d981ee6c3a3390c6212dc9b4c8864ba4858d0230726948ce06fc0f45e8876e5ca49a58829739299087afa77d0e4871ec877b268d0c75436bb090daf0f06cd6b44e24ef060302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310093860afbfec548fcf3c0456f92b53950779ff909d7940cfb7d16e53911046c71c4fa47522d05d5141506cacd9f02961e02304f4edc2b331bd01d74a277eb8aa065f4349226ac24627f804b97c9e1afc7f047cd5a367524f52b39dc3841cf393b33f10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e1bc5216f87498cecb1a541f61f7366a974f8ada28542b7edc49038c48dcf6a6cdf5c0417eaf9150bdd34a9c177b45c5023100849087e2aa4f3ef3d780a110c4f44ed1bd4503425514b6bb07f80a860b29b66d748e9ae6709cbae8f1d49414c8e9671d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100dc2f491f151e2d3ae2188e2afcde32f92496c89958fd542ded74eeef83faa0aa0cdc3fdfc36d1bc3b99e6a651fc095fb023046e654db121ef85b7dbcd862f5c57a4577d3ba2c0547d4bcbb3cc9a799d6a76fafdeeab288311b1b7e4792a7ad5201060302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307c1eca38f9b3e527b57aa3b67c3e2e3a90a98092bd91f8bce6655dc68a5c8784ca53dc42356318d1fa65626853a3210002310099d1468b51cdb5387a71bd68f49d12a2f9a85de97e5514b34c009187840ead053cdbf3bc82d6d3f54678d2d9f280b09d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307f40aea8299e109d8e43e7322573a163d764e14ef3c056a82e9de7acb33a54b8737cb317dab20dc7ac7e19ce436dd7c8023100b9ce8a439c44fdd0f27b23c048a7f4950d634851e4421a89cd665379025c04de244c18a667b6e4986407b499b7089cdf0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023027a6fb95457b54aa272545c4c872d848a8840bacae353f161c261fa82b43828d79c8b6b4c007b6c3d11e0bc06788e69802310081bb18f07ac02562d2435e01fc236204db0edcf928eed5c1c4c119786e6fc95b9e1060906950cdcb6c522ec6dddd22e80302047c435bb500683066023100ab89142b6e9c380deab58fd075c0715b2591f041b15b169c4785344e316efd6a53d45aa207fa32d82563ead45c6f0831023100a929d4a673c6b2f43d4c722c595dd3e905b675c05c2b2d6469522aa90089997ea5de34a7589f1bc92a1311ba93af1bf70302047c435bb500673065023011deb45935139a99d1a9607225e42e899480fd4db7e3ae5160990f716551a305d538ce5138c2add082c46f3c4c5fc79c023100bc48e6c78bb8e697ca80c8619f0982065e19b12cb12b42a50674de73833e025ed9839ee89712a981c7613d34a25ae64b0302047c435bb50067306502307f9c28226f1cf415943789c951bc07bb7d14ba04826fe508e4be0b846051ac70d7cc4bc98fec12fd298f027eb1aa9015023100b956e05f057eaa7535ac925efddf8f2f8881267137956938c928ec4c4fd130eb151e1282e26a69016c405b3a42b0930d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b03f70c38a442c943c753960e38c1e65327594d4784980ec09a34cbc133b8221dd9ea53b44b87fce126863f4fa789596023100bfeb98ea914f16061335ff41a43bd2a7401e64082dd46a4b3c4d9def505214ae69a529045a85d68b91cb49481fb766200302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230351b9e7d968407aeae2d0f389e41eae6bc16e383ae539908f78f65155dfe393341da6bf59301d0045e4f7f218a57e9de023100e62251c38c8116cc2d1727466a83f0eba862165af67dd5c696410fc2024800ef972e91a680f7e2d901d4c0c6f0caf67f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302ce63bc44d28aa1b00a48eb698d097cebe183cc6ec64151ba872095d3878d5f5f789a97921bf40af6b01cfd48c9e1fee02306e88cdee1492212f75eb1b2c142afcf857588d1e8cced2f0ba489e0c314897b00a93ba080dc04f418ca12bf6f2dbbb650302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230419f66bf5ae02326464b7a1f01dee82ae01a1e296702a541b2c8c8f880f252935b2e7f7a15069e3e405e4295ea68d1b80231009c36d861c102a072a79aad5f6ad4d9e29698a8d79ab65cec06d9e4494eab3f714bdd356d8f9fcc9a5c64c3ad664d0d270302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a10b6007f40616d856477964cff36624191675ce137dcd27cf1e2aeebeec3d798c531688b343c42c985a68a9ff5812a1023100db572607aaeba6baf2d6927063ce9da97681febd1031bfffb222c8b3e4be779e6f5b04da8304b45beaeff8b25724e4520302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305e0f40d0ac73b404ca997ec9085cc7a2d4656342e4ea610cbc6288d6f2b0a2d66a7281497d33d66f3d3d7e35902ecb36023100d28315669c2cca92a3c1e5cc9069c4a891daeefffda0e9c45989e93b02eae2414f799a7b20ca4b3154ada2fee5ac679b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c86e78d8067653582d7f9021fb5f0f954626932ed48f4be3434bd22691f3964a3674471c7ef4a1109f6b25bf517252e4023100bc47f354b9c05084f168d25b9df50900e9445078138c50e911692dcdcccb3a4b032fb4f63aefaecfee7f2fb8f80724b70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008aeee2201316ce7f6ce9356a2a84afa6a9473e8607a5fc350bbe4bfbdfc3e6fef39f66f7534cc6c9c57eb98d8ea88edc02302762fe901f0078b8ac9b603f0f240b41233aca092837cdefc6835a5018542dafc91003d8607482945b2653ad26f3b3590302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e2127b26b3098761f305d1c3338fafa388cb896d3f36551159901c7248d45d7e8af086d42d0c7efffe12f59cc1b82045023100cbd969fb45c16f7eb3348a7fce8858e1be087c122b7f86214b269b080a2326bc66fa9d477eab5368ee91dd3633d295180302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023001bcefe0d3614de0e5cdf4e35c119f7187721a3ce74980f12493407e851d26f61b2b3bf6b92be035fc6531e36d56110e023022baab8026d2f6950accbe0021e54f1f706770ff22d8294cefc17019093b71feb449b7f96e427cd9ef88c9c6edc839170302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230385bd9d123bbde36f1396ac2e859473bf05603a8d033e822350d550602d2ea04ba2416f6ddc848cb97968b446d0c277102303cd32d60a375c92f1517eb854fa4a9b149258fc4a0714a02b721e17e4fb1f9563e263055c2250698eaa4f15a59fb581c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100803b247f3834e904a2a97ac4150bde24a04d37a7aa4c5c2508de3e0ff621070eea5f0c7e4b9926abaa54ab228d1292700231009b93135598a975756e30c356fbda3e384d1fe39dd06fed911f25b4baa4f2d1bffc189775a4168bd481c2faa4fbb57fdb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023030d109a4efe8d03dbb81e13895f7542ab46ece48a86b0aca50c39736487fa55cb54b89941d078800dcd1d2027c5d7726023062a5a59e4fcd0537e03431be6c3db2dc99be3a11de9387cf37035d05afe4ae67efac65d73122cb7a2a7a987b7d6ab9f20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d547b3b404a0a664ae4c36fcc9bef8409d7d635fd84b97596820890883aed6a9e395095055dd60860faf315d63c2b9e8023100d0b27a74b0423457140ae78756225baa85ad5d6df759b19661c212fd98ad021b9bd0188ef13760317892a8e6be8629710302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100902ca1695f16eb6250162910fe3328e6b05092c1faa7f4daef54f787347de364172df77a059b8282d740d4c44f8ae61d023100ee2c724d3d593ae0aec3e467b8e16fb180d84681c40743b7a615b52d97592b23abbe2b1c2850b31370e3e8f1a056320d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100aa44ca66e5f5e2a06d0387ddda681780ff884f60281fbe51e10715455fbc2c61a55f2d7c9d2bc27ae1bd275a3e5571c60231008ff712dcaafe2784d3716bed46b343847f80b9225073a647e5a02f282d29fd21c9762644e640f44fd1960d6ceca7536b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303bab3b0474cbb6023a695878999ca6cbad1805659e7d74a1caf2369d843df3173d49c5ef7b9e34b116fc889a4d5e8513023100cb0562972c7dc2edaa9b5ef50b3b28d532a09aac729e8746b10e3fa62c82bf5cea05c98161845df78ce9615527582aae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100addd690ea76c1dbb5c50ecd9feccf2169dff849f628afbbae12d6737e4389f88436d079e868dc088591f853c608ba174023100c94a0854471806287ffad7c4115dc96d8b0f0b7ceb76ec875845d981715e29cb8d7bbdf00e6d3d7a2dc8673863f5145e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230543cdeea66471267cda16866d61d4ab7d433e43162305a294d6fd73b5f1e868e2657c020acbf96c57dca89a992f163b002306c6603019cd75c6153505583adefbb807b1bdaa91562f0c2f2091fa2e88d66b4036ada4f014e3851d4050ef8845366a00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b5da6ad1b17102c13baf6c36fc26332896912ad70d740d98086b7b9f9aafb47401db40c26dd8251996beba258b4d45f0023100f5454de99e8a2fd20e7104f50b0a069f9afe1981de4d3c3257a4967f21262f308f098151dfa3ad4d4a95e1e6050143160302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023002ce4af0c4dc3a4015736ade6839d77ea50b3a89a968b98969c5ec18fed5dec70728cce9f641ca1a9e0ab1b7f8a82d45023075b99647be3053cc76a7eb3d9504436f6a190127581f351194813ac280cbe40ed2f7eadd3d8dac0aa9ce87a4fd5378040302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230090b8bab2c227bb18f78173f8f730bb37b3ec4fb81682fbd709b2ff10788c3062c8ffe26ff7ba9fbc8d7dc0c710d4cb8023012bfddddc1e4b0784ed220e255467a3c45fae8b493f58fa6121e34f3ac6bb21e9d3cbb4064b6b46018ad01f1b981ba700302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c5d32a0c3d43967cf5f9f41c7de0fc07b2de75066d497e4957a09035ea79925989ca2a4ba8890ab9428b061f51d88790023100b8336b621c0818041772e6f20fbd4250741aa55f72443594bef14a3f198a62975e8f226bfe143092ffc4f4786ce8824e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230456999f5726e23588b19f32bd42b39f3d02f9fa321e22b2f4ea1b700893fdf04f31926fa72e80b02f2056c9697f86527023100a942b67089c7021ac7da194141e083a8f6e1bd99f126fd9cefb209d0a606a5dff0f86af2c2587789c27e565ebbdf7bb50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301a2a481537dab946984518c2865a564a9c0ccc8ae26ca266eac458862e3a49d2250d7c04617842944fbb7d0d4a4ad54202305334a31258059b56b315d94ca697e9c855f3e81031b1b8853fabbdb8b87ca5e7ece59b36190823cabdd54540e90e74e10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ed0ea179fe94b1e1a417c47498356e5d0c803d5ee751a17999e2fa8b470584d4013ae41061424ba9c07b477303ec159402301c0fc7426fbba0012a59a6e8fddd243b2389aa4a42f599af01bedabeb3ec4952aabf06e7ad2c6a3d777d5ed5400b4e220302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302b79c9069f69d038e00a4d51fb40fbdd578312aed0e2d4f233f0cf1c758bae19cbe11364d016b8756c0d7231e0940c8f023067f8139caf12fa9be77b49f736b3fe837005eccfea9d7fcdb2ddb7ec5d9f43dcbcf2a9db8d18cb8e34e78cfe2995fcb20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023024e29154b15161cf8f9ae060703ea98d0348a3a15e2a2fd857027ed03ac73c455d3264795a7e1986d9faa67e64590c2a023100cf83b0ca4d35ee9638b3f4e4ecbc83393b8270dd4a5d06c79af03933b46b901a815a1b2682e4f36e4b37786f9f3cd79e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023052608645b7fea941e39423a247c1f01d5933b4d94dd1a084caa179898a9e92eb7b88b89e11550cdd014bcdcb0b32aab8023039fafe47398c78366b2435ec4256d666e713adcd2cfba19689f48cff664952a0e6e666c354bd7149bf1ee8ab8b9dbf660302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c482576923183e89c317df742cbaf07270a89570efe1ab17dd9a4c6f7a2460d08900724308853d879536da95e9632cb2023039281d2cb0fc62c18a0fd7065e4b19a99d9eab1b3f5366a9c788a6c59ccef92e0b6e39bbca4351fe0a739011b03d633d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305c58dbeccd54f8ab30d6be47d7490c2373f28394793a04c5a9131631d5089e6ab9ca0353e6ddee7f759d13112e726471023052d92ab6d0fb0cb1c93cd29801d5d90898bc672c4fbe6b5f5ddd19443519a713d751ef15b5a0c9b7e26bc1089d20b73d0302047c435bb500663064023028315be6804888204c168fa29d2b8ff11252ce83ffae889f77daaebe989852fae35084261857e0170cbe44bd9d7cf333023043add00e24450352d6efc05ba64e7bb3ae88294830517214598efdc4e21cf18cbdfb4017577f333d6134a17ef32f713c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f81ca7605a7d950bd7904d582f876b784049918a3791330bd03376170b9827cdf987bc472a246d9ae3d4bbe1963c0b5702302d2698d8426ef56cf6bf0011fcd483941fddedfd973a5eae316a8bfe070afcac229ef5700ff53cfc2c28bf52e21145b80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f1dd4896743f9bb81625a20dedc3cb086c9cfee1d7e121c80393ca2e07feea0fcd67a01ba19cc1cde33e48af79af8e830231009bdb52d5bd36a591505c5237096de37d2f0bd590ac3a5e4d734b4362871c5afb4cf68aef0e2a8f9eea6853a4adc198860302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a09e13da3e2b920096ca2bf4bbb3f21610728f66f3c47b34c9be0a28f6e1e03053ddfe904a05c424c33558fde5bf533c023100f3c0656a95af5e3a62ac0877409274fdd366e8a78b8f0cc5bcb84db4a552fdcad4b65ca3a6309eb195a0d91ca15ec1020302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e0d98b0e517400c65982e8c2d2d5dd35a86ae3e6bac08328ec9b1738ac9fc2a8b69f14e5db111198fc139369325a419c023100adcd624587e096dd178ab614ee3a9ffd6e03dc86e8de35e50a2dba64fc2fe3657ae79de4c611c005a0bd3dd529b0a2fa0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100afb60fe2c420a7817b7291b6e4c7aacf7ba80609f41b07cbe8c6481936b4453584da48feaeec939183ae0629342b8467023100fd32e49f16c4631bb26336ecedfce57a529be6900a47791593b038b871c4fe6bef98b3a488c292d4de3e05e581ded9240302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640231008279ccf9df38723fbf1d675b7b500cb04da3d5111522d87cb232d13211ae95b279be37b796f0b01531f0ca6434faa646022f212a4e3b652ca4f1df33ba2e1ec513bba6d31c49a47ccb5c57394af3c40e83d4521b1d46940c22c796a6649a8a519f0302047c435bb5006630640230650d2b72fd9f5b53a4a0ed5f70d4750c3462903bf7d73debbe0fde3c63faa74d08987325c92b255c4c4fd4909c7b8f1d02304f7f5b6e49c67585ae980a17a369850a734ed863f9810a85a5ca78f360ef2f64e2aae9fddcbe679f4af19ec82f1843ca0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303ff936efd2cf80c62ca153216482d0886dadea2e5b8646e186ffaf865852ebbd64928b858d1b4412206742254423764202310090cf70384323c75b29117c028e36a7ef69875e897cb3eeab371471ca10cd1199d61f2791acc08efd0b2f0043b622545f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230654b1467197a26bb58b282af3264ee0b422e9653cfc77788445993c657bcdce6a2b62a01c8711037b528fd07950ca47d0231009f985e3e10e3a26640a00f1755f3cfd774b75f532aaf6a15677fd3016c0d3732066fcf026c1644b7219fa95038f49d260302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230064f31020fa97aa77d0a9dae0b1c11b52405474b6c24a316684ef4e154acaf50373911c75e0a0d8b6a6c464d4af01158023100d9e65081b04098872ed0dc41efb6ff132872c7869629578cf266de18fcf837e824c9e879b08f81a100c1a1004ee6cc440302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100870a2a5ac042e5633f6323fb9ed82d1322c19a72c267dbb2cac1b7174ac3cf3335c9e3ae197364fd79c920130cfebf220230404366e4d9ecba0085468de469c21361b90d52319444f101c0e8f14eb3ea48948b19ec60b47676b15ed4077d30474e840302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230570baabe5709da58757ca4036936e8d097d60e173780e69acc888ccf27d631b8e3ba477bb8f9cb9c873fca4d4cd5b34a023074fa268dbb7201a00f719cf7735a96956eed775ae63fa8fc781b190433b638c4126c702f836454384edad750d258d2300302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c94cdf8d2b7980fc6abfe9a1c18c21b856761447d9afdffba81f7c92e32045c186a9e96edd3981790507e7e542859939023074976f82a43ec267e513974f35ccc2597776d7c696eb69caa5b4e05a0c2df10bd0c37db8a2b41797f3c0adf18e8020480302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303e76022f0d7d1e8ff4f5d0f12aaf9056188e36501e899e5f86fe99d5f5b245713cf5f720bbcb0282e04f27ee2c1f8e290231009658e4c1cbe5278a68f2ad236d95ffe1246fb95d50b4029cf0b2165cca337652ddd127ef420013b269aade0c202d85920302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a0a8a430a81bc35aadd9a7a8a3cbd75ea771e0c1fee868be7d2131c6a00c7914b2a82da2ae6cd0d4c01f35dd326d9e2b023100fe687fa25d81f14f0e25f927633809d589eb0be8e090cd2324a27a64036c34f38bdc113cbc447f4a4f5946bbe7f64caf0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100eef1451b7fadce2caf97368a516dfacb0fc18a661b523227577a240307c5874a5d82087e9e8b112eebb770f2796b104e023100b292d4802b92085b63ed45f17b765a2f84128a2d42c93130c3fa52de3918a5ef39185b5e920b2be7d04121bef728fab70302047c435bb500673065023100ce2b20bf004de036a7bf718f210ec2004207398fd990261a4314bacf1273f4994484afb4df82f0afbb3d05f27b05e19002305c906dd86694c540e2140ae6107b080e42cd5ab8995ab409fbd1831a0c11b107b2d3b8facd060576f887aa1eee485be00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023053550771c9841527423b0bea7fb238c15b661565d80b8e572c553d1d16a9c5fc21cf0d9c06079afe66778086e4c291ad02310085a17a7db56a9e5cdc95b3d8e2051c123675d8e4b9a2a49a3b9ced204be4887aebf04771a3fab2d3bfaf4881996535e90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023077c8af3152875d17b648c089fe707716647a7e1d7bb8db9ecb1fcdfbf1a2e67f3c48d84c8d7f9af23e1e2a0cd3852bfa0230536e24e0045c83342a6a045a77e5e8ddd251876bed66037f5fac6bb5c566d701717dcd7c219a01380004562f87e9e5aa0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023022af0d4cd1f228f20d166f7434bdd7b69d7bffc3b8fe95b18cd732840cb77c2d9d9af57dbd935bd3340846a1f5c0b75c02304e358d6b6a3d13cf9caa2370cbf64b75dbe305b20514ec6bc59930e682004996fa4aec731913035191fdd2fcf5bec3450302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023039335fa8e7659d87fe7fb10482b90633dcdd63228fd01899262ecd036dbf720a493ad1d1b6924bdf4fae34a05f041c88023100d3cb107dd9a9dc276ffec0b2da5d0967509de3781274328c0a3f96e4b5dd8e04c649dbcf7beb4272dad83a418ffb87410302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b19b56e9285d62545562f13ef875ae3cd842f09fa527675466a8b6caeec30848aaec8d805361ef5af1fa43505b993f43023100e45d51157ab01e7d9db2958a8959302b704b66e0eae3d41f77b01f44dadcc7041f46dde0940df14e6f62fb7684581aca0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008ed3cbf808ce229431f24402769a700eb25aaf3c6d2eb3acfc0783c73dc9d22b0cabe1beaea580a3c6274d02ab1bf54b023010ae60066a1b5df9e539de49f59e71ea758ba4737877e64d66fdf285c62a8f912de0ebcaaa8e5ad34b9c26b49e6ed2870302047c435bb500663064023076d872298e5012148b879510680a9666a8730b30b7105c87ecdac6293ca353a7e2ceb436d5424cb56cc1f4e013bf688902302141c9ce2b226699510e68abb02e63b9cbba18d0753e6f657b807f7c6ce9510e580efcc7a40cca953129035a28a89c2e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cbcb62e218c1a780c61e29b24d9621f6b45af49408333e0d1aef38f1bedbe2babb24fa1db838fe60f38afd97da868bf802302a103c0eeb33d756256b082b5438e238405ea78b34be564db929c88aad1c9021ad34da3da12eb9c5bba1da02263b03cb0302047c435bb500673065023100a2899ecf1856e5f5748be9e2ed3ead7595c16964612ffd10635ca19d652d0976225470bb5dc5667fac0daa5de610f29702307e7131dd9f781091b24f79739ebc221c41a1fc76ac786eceffefb0f3ef78e99fd44f637924e8da2a3397df39f9e7f96d0302047c435bb50066306402300c626f96796737270fa5fd9fb0a354e7da77be723dde637ce60335b2e67b9e51eefb1fab0fcdf8bcd0cffc0abdec340e0230080a29bd0b54a2a517d9376d05bb4e820808e4fa61905605209bd460c52fc60144ab376c84ca325485057dcb246bea360302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f43b19f17f528df8ba4f3d206137c884abc3263fbf3f1ddb85f9bd4614c97c6a25ad73b630774e605e246baba540426f023023a6a35313cb4b897bbd078a61275e228344b19826cd0477bfbad9dc3b19079dad36b08140707c0fc0317bd82e3e1e430302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e871bd17538eecc83fa48276983231fe808dd5ce581aa4070e7a4577ef6b4d4bd03b31ce1e171f6fa192c6199582d89d023006c5404c8c7ee59a6ee8ae51ece45a2c27da5b04e9855e2f0c9dd90963e2664b4eaa2098794ebc2b9c984e34d9aeb8eb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303576b1a9ab5e40d35f19ef762500d85752022ae9580868707382f16e4c45df5cdf46f78a9ab2a413f19b514a72af494d02302902161e0e2108129992bafb7a6fbcba2c740d2fa77a646995775b5d4e0f825950abc2adecf794ff2b918ce9aec8e6ea0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310096d12f954ba882be0f1b9f50032bb6abf08d4c5cb86fa12b1d80620765ad097b6ce7a07d68f8ce7fbb8fc0514b5e6d0b023037f138c8388f4a9877d819ce8d7f702143a342b442693c07ef3fcf438fb4892a0cb679109938e06dff932929ab0913f00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230118e9502b7880e42dc07c7e3be0f9c81eb0862001c868872f7f27548a716dc48ba7a58f638dc937ac0e6b7ae983722250230690bfd7992b77dd088f1eea2040f7a6510cb7fc65d74fa6c1e6ad1bc9503b724c1a886d5a71251d8b82a0a77129d365e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310090be4e56375d65d7fb9f5d9965609c375de9b0efb4e0c25bc98ad92f06387d9af8c6f4e7d6a610278df968347a8b0ddc0231008a8b496c2c6e981dd0e3c564a4d8de170b91edaf143c00b2cb7256b64859f757f75ee043a463a3240d4746057767e8850302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100da4378a13ebea0699aa48d3489df780b471f8fa32e1e5bc44389f42f2a2843cdb557d9d903b5a5fb3b7ba0e90b320225023026b384d44a40e698c655d657836ef1dc4403506a214b7d7ee3497f0c8aa4366a4372aa3f5cf764243f84cda249c2ac9d0302047c435bb500673065023100c4ad6c0140be93b95cac293ae7f6e9b6a8a8700edca23a4493e306f173bac9c441c3a97c12f5ce3603e9fa172e84df520230445d49cb21048d4e1f66ab6abde6b6572800d2e6a9d2e77fee9f9e452f8ac41e7cc24de432e719310587fd76a3d3acea0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302a405ac3cacf70a45497c72c1008b8a659ae588125318c35b17105fef8623ca4e80b1f123cfe5fec16e1c5d912032ea5023100a60128be421cdbd8cff360dd44e794e49746cef297864f88d0cd9fb119c0f54cae89a2b781df714ad5ece36cd3810cc20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023044aa2f59d46666a2ebdc896fe1dd59499bea378171072a249380166fbc461b8e71ad903a0fa84f188924480bf0a9c7500230029abd824a99e08913fb9bba9c4d63212204dfe42a3af9dd053361c2d994bd8c5848ad2a0bba9e41728eb9c2ff2a7d900302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e370a58d8d99ded4baec23edd33771f832bdf99b9b6ebf421de4473e7ad3333e49310b68578323c95e060fafc6504a5c023100e8d6c3aacc9b818d63c17a7553beae0866fd775c410ef97719978d7c88faa74c6487cf7f61608e88d809e60d19f06f7a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023074d45f5b23f1ac600ab1de30f74ada4139ccebc665a04868ccb6919e18bf72994abe7ccb2400c16d0c339e8f4f7c19480230487176550c07e2aab85d520a6d2e2b236eeaf010859f7d7f943ac2fd83c1668a88493e5af9ba44f4f24b250d269d8e400302047c435bb500673065023055a36232bbc172593c6e0c00b218cd1b67f13361c5b575e4314632eb352d98f84869d2e1d7c1f7a2a05347944349e191023100a7a33b0dc6e402812d24dce7221f68dbfbedea41e90adb7bab06d765f04b71de4bac873250eb9d00a8c7b8d37417d6f30302047c435bb500673065023100c23d8af27247b50a69bc172499cfa38334918e6fafb96feca0a700f9c3db80a4f1b41baef1ffeec4355f94453f2e17210230239fe4a0496a9f5451f6fc834f2e8ebb8ed26892664ee7e9e7ea52f2f4e9b487483df27480fb7314966418f39e6b03d00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023037f66023a6259af855455f382ad1a79f3d2c813b4d9c845f7838f68fe2455b98a538ab6ceccd0606865e83f7b82074d402303902d34ddd2c7a5fb5fe1ff3975e103e44b951ecdb468a96f8c20ee6b8d9a520c1cd767e34864c2f1eaabdd770cdf92d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310089795b246aab2ac3b22e5f3749283af5a2f4fe09ebbaff249b043db452ff8f007968f282443f9a1e36c3478a71385e45023100ac724c4d606df9fc41928fb9f4f9a74bf1e953a6516ef2fba9ace62d2887db8cb5a7953c24c64703438c27fd937b31870302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bfb0ec3975f112ad50d210ea88819753d582d4e74cc0d00487108eed62dfbd95b69f7f3321a64499ab97d10cf28f41a602301ca28e2c47521d9a7510451df764d98281061b56392b5040da5fae341cdac9742c160261b0ab9d8256d3be796bdba0200302047c435bb5006730650231009d1486e70f08156000f3063ca156e7ff60620b959c73539f4f45b2afe4131fbcd32499afb0ecfb208e467dd4e86718750230573cea73dfdc14e15a7535bd6a059697335539c9fbce4669e2d87d1cc65ae99c9d6cf927c92dbb6d54d31705e7986b180302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307f6935ee43dbe01f75d1fe0ddc43a949d269955b1c08385f6b0cb8efd85f2491d5ee469bca145348003b44f341c0f009023100d4e7aa74d7d4bdfa8843bc6654622c482e1858aa6e509c8cedec7e23b85b4f9ba9d2e201317573741ddb8d25ff4d8fef0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bf370574a772680fdfc2ed5a890ffad8911d4ef7581e681f0ff26566408caa2c84099c94fce5bf8feaee4fd4ffbb58e202301915937b182024896743a8d11ae585eda4e71fa9ecf70b43c5ee687e8a862b1a3f162940ae1e6054b299e776080cfea40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100993147b8bf545e6168dfe6b4a3e86f1ce5fe5ce4a20ccf999c27a80d0883829e94b10ec1da68d5a9d70b29c1c77230ea023100a4a8bc3f72b31a6c7eca28cc6bdb38ab526bfd984856837ef4ad74d8542d6179249ce812dd8ec8f2d757df21eb5cff0a0302047c435bb500673065023075f6c49959024a15f14939deef8bd3fc1e06f55acf7df8914c69c6a0e4431df42ddad1420550cbdfebe6819ec13523cf023100a4822d6a92d2f3241b4455da10a88e7ea3e57719af9347a84c25c7bfae22dccb8749643e92473f71f4f9ed28112fedc10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301072e1268bc9c0b904936587263de3ec131e728716e29780b152570cd7505af028c171bc0835058933748d0a9fd9ad06023029f1fdec3e3c9c0a028bcc6af800a40c7ade76a312a4f7c9938d752a3de534ee6b3e6ed82e671b92206a06c177e73b1b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230692b372d7092b7dc5da408e2bf3f87c5c2b12bed06ef97d0051782ce219902bf5b5606480e18b1fcbe37a31a9701d2b002303b209a69fc628bc4d9ae8c348a11df090985b4c5da5a24bfaf7583a160e176db0bec485d3c921b83a84bb4b1d0ff7fcc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230676a65b13f80a0e4a95709e034f5de94094f83f37ceb1a6367e1c18e1eb01d9bb1c51493776d404dea1911ad3a8bbcfc023100b57a2438c6359375e973d343ec04369592e5b26c46d2dba28711da9eefb763baa9d8bc2e4b6a2aac9f8fd7a1deea35110302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304fec674de6077974c37317b9bf2f7439ecf1387d60c609d9cd4c612167d17c3480e05862b27387c841be95ea2c897be80231008ad5f478df86b07143b609f8dac1d8946fdf1c8395c0ee99c70090a4b2a9c7199c7f1c8a5dc5a6acee1980138d7cf12b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302c2fe34f8ea20a43f27bc7bce04b2ff6d80fd202752291d326a2696eb70d371c403501a1b44a78d982ebfda27edc1a290230662c191ca0e2aba26b19ce15e19ade461e265257c69b31a6a1f9f03926d96e9d68402ba8f3a1baae0dbe48e30fb7a7cd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301d0c5269f621480cf84c979e8ed9c5fd07de0009850f28b5eebcae2e4f88409f0cad968869d5a094d9da9a00cf07412402303d3c2d930e105c0852866b67087a0cf75488f08aa3d6c70ba396c9da0d7033598d5c438d77dc48bc8b5d2b665064266c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a759b60484a6d17989fd040c2d273ebcc3d9fee09ef0e481dc9ac9ae93cd3b521d21c655f83b3436d3985a807118097202303e17d07362fefbacbd79eb53e577ddcbf0059fe79b0c1ded75c266576da815e6c123588a50fa12525c5e9f37eecc3f200302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306c7b07622b246596e45e29e4bda93f1401e012497b6ba350dbf3632e2934e518b8556563757af34d085e0d3fa7ac8dad023100afd6d5ba6ef4d8506609cd9919a6fac1dbfd5118cdd5cef3f282a639c955f7f9e84b834a4a27bb88640d0b52891ca8100302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023066b0e9226873dc46bcdcb91565d108d6ab190111f0e924163c0d6373874f58b51f8327737929c0280f90aac721177830023100d00e80d65d64b9c15ab3588ac5b79f87abe66771f069380e74dc91a6434c0c57a170c31d23b33171d891815da0d569040302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304ad46e175a3adec0b92726ba390fc0c6175ca1e737229ad6eb551fc0637411d5c7e4ae07928d2d71bf506eeb95ca733b023100cc5f779c5d4d7edaba893553093ea9dadb9d184129173fb6abc63b43d68523828961fa5a136f67e63fbf980e822d6d7c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302f05af94feda2d2a9acd9513370d1440f42aaf54da6d01f28a98fc50513edb2ed1ba0410ea4e7866d8a74b91d398e3a302303a07925a462d1711ea0eb2d9e6d14b609e99562cd6be264b7f30f27e57d66a8bdcff81f737926d8b5a1333b43dfb69f80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306a4f10a7d5a92ee0ccce0bac9a936aa42da6c2a934ccffabe9d98f810d2f7af70ea7399563d9de138ef17584fc237ddf023100c87e755311883250060f4f4f098f7780b5ac4ce7f49a0c28a7d03dac7e1f1ecb68b8f25cd9f88174c63d0f74564e32b90302047c435bb500673065023100ea103bf2f3597f55a29de838859524888c145a055e80536954c4a3371596ddfd60abc2b33a1aae4db2f9cab360f0e22d02307b41d05ddc30618059ee1601f75f85a44e47a25f8dffa833e9a05c9cfac9ed7d6b473ee626dc7bf86753209bd7d720090302047c435bb50067306502310084058cd5b1f0ce098593813729d77f2dd2cac644891a5e0aacae3d96cbb2119a109937ae547aae8ce34878f4b0991de302300927c681300281fa38fb40879cea99f84f11e037651e8cb75541493922454bf4dbedf7aa6ad7b6e7e4a3aaa1c162b1e60302047c435bb500683066023100951fc61e676abc29fe45de9072f8042b871ba4a8ba2a91a040cd2ee9ad946810845b0f4a2f00f8fc7d5eb6e99dc6c3ea023100aaf6290e9642755b3937e0ee43d6c6ee770d0f59f2796d7df32e544b4f4c0dec3ce372af7e9140d22da12ff7123888130302047c435bb50067306502307306028e493737ad33e6d163b7f852972ad91b458583d93b49e644f2101939702e40b704c04261590f8c1b401c31e07c023100fef6ed572d227e167c5754410ec91a721256df2245a604639a4588d7975f1a53d5268fe84d403b59b724e68aa66b47100302047c435bb50067306502300ec2eccd2993ccbf4b69698d850464bc6bef9f48c0af150eb051d0ede141c34471638e7c2035b342258319c38cd956e3023100a64d21a6174a70d50fd39d5ba66ac8d5003acef3a7cd3520ec020f32e41762172e2e98f018945e86487d3e4494ce56890302047c435bb500673065023100a48e2dddabbb2e255bd5707b1c7e915049e2aad2cbd1587f389502c30ce0ce691d038d6b39553cdb3ad1063d48836298023048baebe2ff16debe27d462d3d1f1464064d3fdd2a2191f44edd4a0976ae566037eef69d3b45b4280857008435b6aa62d0302047c435bb500673065023100d7969dba4874cff6bf56ac9d69124ea6db40c2ca52944c678c22371d84e8d18c6b6c9d12a85a570ea25ee07ac48a96a602302ba149739274bb69859b23740ff5bf48d32d00e909e91836500b5215054872dc624a2f2f84bb4a7d21b06af8384294060302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023079bdfee8c40328ed305bb96200b14098f03e01a626d5ff19333b151c85e1ad1fc052dd1663b95d353b14e18e2e6430b9023100e1814c3bd1bab158b6b97d56b7f1f434e291275bb7b086ddfa552260e1890110079cddcfc87f25e8decb56f5c30b6aaf0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023051d13a30fe6fb85396dc1a8be89f7f830f58904b703abbc71537fd8fd1027a17c74c2225ebc1de2e025018f61017a963023100d08abe154db28b51ae014d85c43f378a718078aa258dd1cc9af131e760d0cbb35b5b11657a9b02b5b4da4966c6933bf50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230192f6f9cb0494971d2ecdead1b11e9d150d4bed5169ea2554aa15fb37fab2043b0a9f7dee41397920b7392e5c3f4b8e302300f73254e4da4d44d7bf74d1fd31f64a003ac8a7714685f06239ac1fa02d8dccf6aff2a14329058646954604b039814130302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100dd516d298a7ca60c5fc73328950fe9eb9692fdaeca0a141b8340b2a51b941ceae64e77702376071e6e20ff9e3639f8fa023100a073046c193d96340b61ca47699cb04b243f3948dd375d4137295ad9320dce61578e324f37fe97e12d161f102c496f460302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009032386e30e3dbeb1a2a9406a6c6f7d09fc5f019482ec15582c4fb8b82e60250f80e2f2d14a75ac86c620dbd3b2704330230460496d2fca59be78ebb3c1051da7ba542a1920eca25425513083b6498943c64bbb95f1cf3ed2f7b8a6a1c6ec3bd7b610302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306fbd7c3badc148aa75489c5a23582f62db1fca0346f66e8435995e9b2255cfb54a98ddd97c97a546165fd99743580f8a02303e953157b08aacc4e8494b61dfa9124e2f330ba041cd20d110c3f350af3d56fda4a7abc861d89f4fb022016ec565a3a50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a378c5a4c4b1d0fad1f2775b541023fbfe5ed91e726a916c7753a0a0ed4e9b98d99df2a3efe46475e18ce7af82f144a5023100e0992bfadb84302707a9552fbfbf4756e2ba1a1407797d66d36de443df92a5e428fe72260200492a49b3738f9dcd478e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e633c37717cf55e520ac1404727bda3fcd676677dbbf5bd0add07d5d3df64447f2dc188aab868fc8ac363c3400d469f7023100c36d1ed19b6710fe0bb0db8002fabc8cca41b06f1bbdf73cf0dc48abe4208a01b2b7a912c86b5af2d2c00c9d7f80f4a80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306a093f51f15ab3d6df349a8ce7f6a36390841d880581f77a78eb1066fe974b5480e2ce12b6e524eef6d787196c24a1d6023008499a5b392a3eeac647a5957295682317d3420379fd997dc77e37bd2140b9219b7d50669044af43ecda97a9d48889b60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023044d457c6d52223e5e304a1b2944d37f99de7172c936a77c9bf5b6fb49a2138c662f76ee3882cf36e773d50cb365369f3023100bb9081e1bf74d1a92526a4b6b51c1e762a6be24d15eace4366cd104cc9916d26e0a539f125b46c9b912e04159e083eb50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c0929c90fe9612ea6a7415b4ee2b77ada7578b3c65cf2c1b7815252787601ec61be87a36ba36b416f6748c20a7182ad6023100b4e0fc9c585afb60e7d3f0c01e5a216a27c4c132120bf89e4332c12062dcb65d664c6a33ae1dbfbee337a8b6870c39550302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230307d40dd13e564c3254754e4dae150791d541cd1136e42b103df7423ff09cf22af1a968ebbcd11c608e985a50846c9d302301ab57326da27ec688642042e840ba50b21dd7e0d97362cf843982cff072f3bd250acd4683df43be45d56a801d7dbb3760302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100810723171ae97174910d44bd195476dfd0cc38921d3d91639f9068457540591e24ea2c8fa769b42e03e29f4d5a87b04802302f501c9553348fa5112dcaabf2892c528e96a6735ee787aab234db264aeb876faa98e7ff6739a2b3963d60bca9767e750302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303a5a123a1c43c909998bbd9f6630102ef521b4df6e939d9976ee527ccfb9b86a753d8291a38a5284472703cfae485385023100e0c13526c7933ccafa9f0c65225428b81096a257c01e0ba1308e35404cb0f368049522793abf8ae42041a27a55c844980302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301d90328e8f6deb472c8f9dcc0148b5e8b4ff5b163b45e7733e4be6a6fe4923b0cf40ab797d1c5f6c174955be8562a5ae02303013f330cd9f516267ee34e2b66aa2443551013e48ee31e2f84276ce7af063989b171a838d802fe4ec9c918dfcbebea30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301578f0940002039703c024eb41b289a95fd941a11f24a9483d2cf8eeaf4b2a7e9a7406b0187e3a535c09bdc28ed032e4023045e90c0f6b475ee2b737d228fab000c9e9ecd646b0962d11621fa0830e5c2018c26d12bc0a973a5eef4307eb6b8abc2b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305c358af4a3e66012dec294e9ecc882062ecfde1b41f654f26fb17dbfa7affa13422b288165340294e29b4ec108f54a8f023073765a6be8b5b38b3aee66e86150f66a264c959cfdcbb55c348e049c35de369cee1e7e8646698a5870d4786c4272d4a10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303b103cab48ec94c87af53a35d461606496326a81153c24c075dc5b9952716c1b84802720be760a8c1b62bb2e2f3d7dde023100f5d89784ceefe940def26fcec058444c98699f8e158f09fcdf9800c49b2629e019b4198938e5c05d48e2f3b9778882cb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230099561f261f34762ef15ad1b01fb46fb925befe05c433cbbd971050e0099d10678c46f1c4064750e80e3e64a0a63ba50023100a6e1907f82e7c7d36b30b651fc847d9a967bb5c330ad78345e383857fa48a549c138410d24f18e1119a4f641899ca0ca0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023062c0c7f5d4903923ae6e06369aaf33592901f616656f628e7816195f963d49d214f7337bd56d2a0396fdd24e98a8990d02301e9ce9abeaf33997e6752d10db87468513bcc6ef8a45f096486ea54a555c4fe50e8dfe55a55bc4420c0a8547b3b4beb50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d26cd934da6bd6ba0fbd9ca3ca18ada1a7f8a7f01e8dacd105c5d8dd008ddc81f146bf76a9b4fd54715530849375ca2102303a862b90b9fc64ab818b3668d3b99324c3ebc356f410a3e92177afd5ab8bfb1997d85c5dc85180bb9a99544cf2c22b9c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303e6db292f7f21ad1bb5c1e0e0512aadd8ed37f93da31ec2cb1233b150979e45e4e31119bf6b1818a456ffb33ddeae39f02303486bf7f3d82b5d9ab36729ed5a0fd3f935242bd2eb4df83a52c69ebef53ecff3748a36a16f0e1a9c3f2a85b358233990302047c435bb500673065023100b1a329a89df963322dba9438a27d3111b99b2a942dd7741501bf11fbd5910ed92b8ededdd1a72b0192ab5ff83b05813e023037e49b3c3a9a02e5de127f07dd55f9c9aba61cccb95034e6f4cc7d46c8a79ad5d9f1706b555ad142563b1af10a9fb3150302047c435bb50067306502300156ff23202cf103ad81457d8a248f3fd9b2b86596e85ecce28414b66e60914dea4a29599bd3d2976fbb4ea8c66b4ce5023100810c6d042e1454e0e18ec13a06ad4b1ea4963c05aad69256da8e328fdd56d814cd508e8ad54ee3b4a3fd82a47146f41a0302047c435bb500673065023100c30a20445266b8b535cc5cbbed6f2e5a56ef65d542e6fb03d0745b17b30c995e2bbde8ce1254bab0be3b48a607526aa502301e3ce905e99376d2cdb2298966327f747ccbb50a9651ee879a89db52387163cce778c1145d31c42ead5a8340d41b05100302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100fa0b3ca9ad0c74719b68890f67fb8915b34baf051a89cae5d88555c4d4e561d387f2b0a5bac26e16c6020b9d25096861023033ab887dabad2149db8bb9dee0da52ebe43fdc16db0603e8cd8eb1faa5fdb63313e65e46a47b54b2678263ea342488090302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ec0a2bebe076cad23db1acf74a568f3c5b80c00f586679ead0f4193ad93647c3298dcd3a7a1143afe6ca986c1bcd310f023045ecc6030e8eb1c326b3e1c7ff71bd04492c8a428e6989e62d9ea3f3659a5c606bf2a756c03fe459117e1183acf5ad740302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023017d5106d9d8d3f6603885d02c5dce9a58d46e708d3ee5d4a6ad68950b27269deaeefc4454bcba3d0b403a6d806cc210102302d035b9e0eb21c01f675244455f4f4bd3765dfbd3e425912aac7397b6ce62a880e979993b3e56ef2f58a9e643d93342d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230560919653fa7b6f6140019d35a225a99439b77317af97c4a854a93c563b9915a06ae61a0b59d2e270eab7830b4b6dae9023006c52684526c97253e288f8ca7684b11f7fbeeda28c44917f560b658b3497878b4306e1946425b3f6122a96cb040db160302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230222e3c2769a77fab4dd1203b4bb9ad7619444fca5a04ecfcb5e31f92763cfdb2baf0a293a2dcebfb91694271416e6f2a0230135dd584d63729d64b511f54a7bd22b1d255561da1be50f9c1560d0dc3f0a7129d34fea13134eeb1ad3fc2fa984c99130302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300865f963c3e37b35bbefdd134bff9f27d7db0907dc97fbcc9e45b6a730a2b5291661383d688f56932a05c5f8c346ad4d02310087b56acab34535501f7a5ad171085bfe71569f6d1fde1194fc893dd19714acb4648363616d9ccd773cb6a48f4ec542660302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023050ac44f480176c7826b068d9ae0239dcaf3d8472a69318cb47efcda6741d04cd5218da09f6ff753ac6e6d956e0519966023076be64046cc0259b37657ed2e07845f056b746a31a2a0828be325660cbc95936e4b3fe1d8e7a03c04f241d3e82d2e6ef0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fcc16b6449792f204586c7cf8e85fe2d60b5395dafccd66ef333b08f3a7e99137f132cb663d84775820c6f633c6d9aed0231008d3b6503c6109a33e13dd394b96c1a61eabff754e6085b69c6317de1e94c31d7487c2df23b1eb1098a775d51171d0ad80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100cd061fb983afed15d243b8e92b9fbbaf198c358bc5b1c2490cd5c841aaf839c17c79a1d7073193f8d12f936a38ee1e4c023100e2bc39bb6edef7e7c2e534e1421acb65ff13a73dd4691e9166420cd1177d5e00caa6f7e5fbd77438eb332991b1294fce0302047c435bb500673065023043be65189c69b6e5d57499b86124b175572f6881a691bf76a3b43d27ec133a15d39de231b8c9480180da057e230bd6b1023100a9ad7abd480c80051cfdf40e2956a9c860e4b840878dd9f6d2d3e5543b5fb49b29c4c7b18a410acdd9cc6d4e13f108010302047c435bb500663064023100f7e33556eebea6c6047b666b2b098ea7ec4f2d27764a1653dd13cdb01abe72c625988c331c939482105448c019646884022f5eff717b78cc03e997882821463f45c81361c8d15dae5b2cf5b6988e1c2f1cbed2eabdd5504c725ba835fad485725f0302047c435bb500663064023023cca1e387e61024df8d0bede6bfac7d7f658a204f415939e9672acf8ed6a337d0ad149da18c77492d786dd6ec347648023048f11877e7909c751c840c8cf87490bdf948e5444da8bb0545a87ea1070979dabfabd2a986c549733e29eddb0aecbb5a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f947215376ecc072c1b4929aabd6c1b0024b043f121c8d641d0a01cca8f8a81796a13cc5ee593c1e47cef5ebc43e447e02306d6d4abe537d3bac19160dc20a093b72df07c5fb89f070608228d59105b099d79652930dff4adafbdf1de3300d8fb9190302047c435bb5006730650230115e53d94ce1824b83dac4ab76c315bf89c411d5d5a1443a06dd06d12182722c815d92ff84264f2f9ccb238ef5e73ca0023100db28dbe3f56f589c121d3b6d50da7c23a3996dde86b9fb877348aa117d1d434b32ea3c89bd0423da79e2e2f1a9ede75f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302a4b79dc281e153dd56152f7316a628b50a58decf6263cfc3b14d14240c6e5f501c7b6b3fcf6ac453bbdd9f28c305d86023007378185a0a122923427b2dd823b3daffcdddd0f8287592f72047ed7d14dda361fd7f042b58a154f9565ec92465046c30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230222015186dc61ccae629d69341641cd3117df8871605383a4d9b98084bc2ad542b7b88b8638960d59928253cbc315ccd023065982ca73fda02366e2b61446449c6b55b1cc8972d76d53b00e9a732077d42e7a4c05c610bfaeec9b4daa4f4405d66cd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023076e5b1c474e0ff88bb28421e196c95737ea21dfab71022d63f2476ed93cb2c023fae5808b38ccdb11997568983a8b21c02302ee03d2ed0b691e5e4b015837e6229d830c64c504264daddcdf8e72b243292e3d179427db513551abb80d3785a4481610302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ad8f6fbb47058aef126d3f5868ccbd783ae01445e3b08f61bbc4c319bf3be6cdd9f958089c996ec0ef0315e0edb5bc62023100c727dfc3a3bc52481e723718593ac2fad8a91fdea326489d3aa8802d030101a1ad66625350ba9c5fbca0dcadeb905b7b0302047c435bb500673065023100ceda549c89f3a26d3d127487e28d4296ce335f2bc11188b32cd12bffa37307f76c9a7555c7df2fc9189a5eca54260ab002303181d867bb5945c090fe28d78e790c9b1c3c8ebb17184ad0cf114090ac5f8a8b8c2a02ed2dca0ce03f74c5868110875a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023022514020c6d7deb95ab393a7634b38f78b25bd34dfde721abf22899f38e8402a4bd10c771ad014c5afe618f3cfdaf03d023100bda897cf73334afeb83b4d966c439884fc4715d013cd1363655348327ca8d67a1e21ca6ec663a8c85223480173bae83b0302047c435bb50066306402304ed2e12c75889e61bc25bf92129fda56573fc557b56b3cc39dbe8298f8d6e822410c3d2664d8a27cf333313064b6774202301b37759be190c2be4d1d17d5a5fc44c0bc5adfe7f3bb0a00394783673cb716239017dd1c2532e9957d5ede80afd257b20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100dc490e2fcffcdf1dec88deb884a3670d9cc63b245c17b02d1b9526bdee5ab6baf8ea63af36a5f2fb6242a1c77873dc360230275ac945126a187c1f45bc375a88900839f21e7379fa67335f6a5b82ee8ca0ff44560656e147cd5c39f6d024870d99f30302047c435bb50067306502304f335c3d1c7aee1e85c0764826133c37258c1e376070817c825bc60a1da531c614a3acfd3ec6133f8b09bb59b7ff906a023100bd7451bbb7b51430d8a0e2152d0f006002d26a0ac07488055e1ae14ff4950a6179b0c1805cb29f2b424581ab927b83770302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304980591106ddc1e6f7d0ce8ab8b0d0eac5cd47117cbb7b2bf65c310a43bbdc740ab2b72c80dbc106780c88f70236fc81023100dce94092d3754da5f72e3569340565bea4cfc598ba22e3d0df34dd1f12da7add07d054ed8e751f7a039136678884a59b0302047c435bb50067306502301672ea4f0373d401a523a7893b69446afc0f50478be4b6dc66b0aafe8235bf6dda9b7445b4081aa940dda895f124c180023100ca07fb55a7121e371b5d2d645b7e82f9894f35f243657711dca6cfd18eb43804f8c9375fdd4c926d18e24c9049544c520302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bd4af3b1632e60f0d0b35acb9bec9d9b14ea0c8d24840c75570d75fa964b74b35b0007d7493b4539bf3636755c62064002302570c437f05a2912afff4a02fcb3ace5863aa77796f7b5a5c5e5a898385aecd6e935ac825e72e85b5cf63cafe172cd4c0302047c435bb500673065023100e1029e0c6007293e500baf63103b1229376dc908688d25b4d188683240ede1360bf2120cfa43b954f9d702897a3f34ee0230080f7f83adb2de26791bb2ac9a01d84089357e2a49f579ccc5c2f913ecf84518a952db21b7ee256ca7d779232ce398ea0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023075b6fc662a61a41e0b2d643167c1231de9bb46161632c973e097d30beef9f70df8364c1bedb391b43b36e6a00924e09302310096bf64c12e2fc236d07b5265cfc5b7dc7614e26362f2f1a68dea484a861d70ac6d737e88b7ed68ecb7fe92bde6abc00f0302047c435bb50066306402303b8d43edc4861a86262690bbff29532a3399a41c42604ffa7764c079a479dbbc7aee04532ff1972642dd21b076e74ee802300adbfa9ead9beb78c7536193411c158c79e64705489492f329a6f9bf3c010dfba10dd39fc20c9d248a23e921ceda09710302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300b0ace4644adcefab4c846fbdd54f4d52d0ab3d07ff63ecbee5ce6b7fd7a7857bc18eaaa94dee50832fabb323ce29708023010e81d250e4f1bf8a441f71dbb516ec55512b66aaab1b8dc3e9f14f95117eba6438a606cf0b853e92c9b435cb96fb6960302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023059f57e6233791e8c60b77c647fba8a19711edff0bd80630475c8b911345412a2b7edb0e434d733e1986045454a53042202310087a7f951e044976cebf66fefac2ecde131e515e0d6602ebf78290093b02efc06ca32698213374f43a6b809cfc038a6100302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230112ab0404c7fc5a12434ad2ac898947b90f08ca51009f046e2f6eea08b05119710a871ffada8ffa70be1f385e8193d0a02304abb778cd04baf58f9ba15205dc9149b7611ddf7b631c8560a4cc4c48d65932d2bd58aa910e329eee4bb4cde4ca17b2d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306cfb3ac016c64567b03d43a8c9be51bb2b00c19b0ba8451aef531d5ea8d505ec4930034f1c04ce2d28c7325e5cb33761023022df7bf02c926acfc1e809488eaefb635ef245d73d98c705377cb03d8a9e3d2656d04dd1f36114484d5468f15bdd58890302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310084841d3bef437546bea870f22f1e580cf605f327520e37e02ace357288e0500baf0149147287bb57cf0ab9e523f969910230486198536af7a1e23c26e54d05a4e2e28228f945d2c5cf11b1b5051f83d9000d1a55de461347e04a1e3f03140157cee00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230088e22524154bf3375a2722106c21b6a3d09ce77ad3826734679ec393ebeb626234f5ac7c23cecd187b9e7da89df739502303c7190705d132e2f7b0341e2b84a9040e1b3651780acafdd621c58fa24cea9c6c116a92561aefa5d22f8a30ebcfb71100302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300cc22eb2b53a3c5075eaffd180bca2e6686c150044b98e946d49d4e9ada04ab06dfc26ae9ade19fdbd70418f5dac6225023100cbe7c6d36ec6958b79bad1a8f3195ef316254bbbac7f77d028ee2a7753a831be31b5411d8da428b22fa97907c78838510302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306479dfe134a4b9fb7ada2ef2f1afd3efbc356fdfd1edfb2871db0a7fb51e1e63cb2087892ed66064820842b5d06ee6bc02300cc3f12e32de71123343880d4e3a07e0ea0d6f71eeba2ac626e1ff8cc87541cf9bb475ae6651b28fad849b2bed07e5a90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100bb3b3c3401301b4eb607e3003554e143c460eb6d85aed16586ca370b9a2f28ab16a97ebf0b9fa1d5c6bb160bdcf91c800231009f0b8d6cf6f9b236cca8adf17b9b539a2cbb27a86670d0b6fb2c684be7fa73634f77f63ac668e527e7c4f93696211b3a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300a450c410bffe67dee014e14f99071591a34c95fe38d6356e518bcbdaa6252fe91f726718437989f82690aa9ef5b5717023100c2ac7e9dc600c1129e3768935379f97a85fbeb5cd6ccfd679725e3aa8930818a2f749e9311e3ee2584dcc55c262405730302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ab29d53585f6f7af39545d20e74e59269613b01c020663f76a45c7b0f0487777b641b369935bdff6fe8c21142873593b023100e941a660d8b93c04bba4200d7d949b16b709125959ab6301a8228859d50cca37d1910510b4254d32672ef31a41d349a20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306d21d75fa6136f08c7d37bef0e96137f80d515026211f94efc4050d3270ac77e00a4a47099130ecb0ccc693b3075ff3b02303b36d1ba1ee94c4cb2eb5096a9d1d096aa51a5fa535dae9b9050ad7d3f2eb8d214d5273a38b0d0cac735a75ec0463a3e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306cc5447c47837f475352325e16b3a30b883e0d2ebdb22b7d7e89d28aa8c00d2faa126189ea9e5ff0922c93c06d2a82e402306181e2ebdf7267a6bd643213ab3ac737a1aee052e47f06feee9060ac44d673cf53f28bbdbba4fa4e16419b0f5852c7cd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301a83a76f5de807fb8b98f02c39139c41b85bd09244e89eeb0c868d8041e6596baa919809be169a4edbc9bff600a4ce31023100e4596e7f7e922f8688c6521d710d41afc31c8a76ae2580a2e5a513f36bd1ddf258105b78e7eeba47ff4ec4a7f56677ca0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100eb53adfdeced6741abfa93c8cd4d42e789d7bee85027f62ad1b5c3b6ae5e59b88344ad07963e2ec6916221cd64f503fb023100928328ae319a5d28568e6b5eebc2759c2bb2905171a77ccfe0ed18aab2c3e947a93d9db0ad11f208dd0ad2ed453817d20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301a8894e13a082732bd9d1e0f36a2ef0ce3e0d77ac25ea24ca22f5f328fb609106d38e479256f428702e5a74acd25dbb7023037785b329688f7ce9927d1591789da5abb2e28fc6ae3f3ef2f23b9d14e75a5a420966f1a7e7cddf638bec37db0eac23a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008dedf6ec02a5311cfea01a7c259dae16ddd870a557d5ff9e5c57425fe24cf8b41a256dc0339ae72594404935f2ead3cb02304488470bb32684fdde12ae8e8ed43cdf37a652234c67f8b53abc6ed84ead249fa422f4ec2399b629a0176bff55ed41c90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301a4af7eec176eeb2d27e1aba8145b0d603ff282d6b9ae9972405b8190a367a9c02c38e5ffab01ccbc4ce71d141fe5ccc02303f700dbaeb7a8dc9bc98bce277fcefb5c73aacc0ade23aeb3757c70a6a26a8fda6886bf004779a4fe67559757e4a98080302047c435bb5006730650230548a767ce02c68ecc27f35f3309d38c9c0de32c21037fc17a6b0b610342dc15ee5a126f75ebad53109490c01b966ed0c023100bcde4efeccf4e76825753b41c9b21bdaa57198077a96465b386897e9ebedaba042686e440515d75869fc6c29887c98830302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100dee7dc74e7fc11ddf14a4a99aca60ffcc529c9200a830f5ed72fbae8fa17a713bd869aa2c70bc06f2823f6ff49a2012a0231009c64d4a80f0bc28e965170d19a41e761c4c31bb3208578a5c6c9788353dc3395b46e280738593100bfa89583a60509650302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023047e1598334e36bd373d0e75680f7528c9c4ea2bf2a14e47cb30d18c40508ee6de928edf08a22f888800b476fbda72d3f023100c6b333be3e37857e9aef26dac330530f98631ac54b648932f07e789f35bd28ddc22182975a21c58b9c93d95c0596e93d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300a2ea66a6b8cbd06c9030fe6ef686d16682cdad9e063136f7f80da8d165acb0aa2dc7916a8dbd4d708be5a66667ee6db023100c0c1325b7bf7fcd4f2a1e8f49b071f289fff97938e5ff1dd29542380d9780700251746b8ca31b7b5bfc341f7da13b4cd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b6a5173a3834429e36755a813205624d4444d7ef377890e3ed87291f6da8604340343623f3a979c918976bbc63004df7023100e7e7a6b1d3da127aa025a88c5d444d4007117dcced545a2dfd54cd4903d584a3d245676c4aea34132bff2bcce24dfb010302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302df85938e624efc3dd14aff034fb89ca0f60fd0b6b22d5e7e4da4c4e23a7b7628c38c271d2c12fe492198a36448254ef02303b7c7b96f9060b0a48ed140dfc54e55ddaf0c4ab4d79b7387645fdc4e7f95a93804acdcbc92772f81a3600d84b0ed96c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303a20470a5b61f438b3f6cfeddf118c95c008da0a71a4e73a6ef89c431d3d1c90f7553c2a6620e9faf77ccd68a65f27e3023100c077a06b599b75e60903f8b0d616496caa6151ee16b9de778f49f47c09068498ea6543519370d75c3b379be68d6c5bac0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230166a5b697729bcd8d1cec17133a4cb47abdb6d286d091f812965946e6ab2df2cc6f20e51b7d57606ba16f4c95e25606802301df3ad53d878a75879e7ee2f12bdef56d71feb43ae0a5530914f765b62341c29157d1be29f59e1845b118f530823ab640302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e384b0d14120906f8c5f1c75e564e941c48be65c6584e80e3d0ff726c3b475e5178a5766ecce3fedb49dbd0213146f5602306be1de9bfc1734e53f74f175df6cbf3eccd9c5f2f97a0ac7d501784ab2aa82878e3ae2adbd4b36147282c600e43330190302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023050029b7c90978e72c33f8e82a7590303b9fd33ecb038034640defcbe39fb2b0e3bcecdbc32e07ced0b2ecc53443123a7023062e40822966c21c5b05acd23719e754249a17b3f105aa33188f5bce2c355de94a494d2cf01499df11c2ca3b039b4d5bf0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e889e7c92b3dbf60dc0789f45c8b1cbed7ee3d1f383a341102816038230528eaee31e0c49147ebd716ff5b4a5c5c1747023100efded9a67e67ab4431a3c81908f578f9dda5d34535fe402053da8be17cdb2e36b58ce910c8a0f0d0146a751a900be35d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023011419424149ddc913e9ea1e84eda5dcf28fd2019bd87502d07e3d29ac869f00a8fc34b44834554d203dfe8bffe52965b02310097d122c8052f13b573c69964b77dc74af7c2eb59335982d550074398915ccf36c423a481af5c85587d529a1a910094940302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023078dc4a1f027d2e0ff7adffe6ddb07d6491bb4bed564c88e6abf3913effb77e8cfc257d35a9150979223975b634ae4d6402302d4b38cab0a10022eead79c8a09b2cf265bebdfb3097bfa940f386c31b25aec7c6cb27135ff60238d7c4cfbf581be20c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230405bdaf897b8307886594234531c06c17a1db6862ad2cff7bdb9caba2cdfbfa9d6f11ec3158fdb72ad8222fbecdc99ce023100bcee15ca9787a867544ec7a480f21d9fec243986d8f163f38e2446384f19eded647fff4eeb4378962e936c6067c8f30e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023041c70f0dae33e6603984198e28ec858dbebdc3064f39297d1c017bb53bf4b68b1d926870aafb927157a16e40ec6f8c20023006d69341da0294ea62b7b32ccbbd1819740f5dfcf164eb38bf41bc8ed1f36b3e5a40b47de6051016fce28a823d9921b80302047c435bb5006830660231009803b11c98bff3a8803418ad3e8a3e5bd8c5b6f36eed59d8eee8d9f88ca6d7ae8b22171a9d425d17cd0d58b4f4c4f8ae023100d2349c731c36c73fc5a4cea87e3bfcdea242ad2bcd9e248acd180b6d44d75148e9d0e9e6117f80b37b62bb6a9fea02af0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023028792f89103e6a3c266a3ce99d4735289a352cddba28622eb76d288e2d77330a712ee49fdefb26416aed86fae83c842d023100a62b58c5cd11ff22e72b72bf62e5a26c24fdd82327c873a03d6b9d44be719a2f279c6ee294aed8b4153bc187936e3eca0302047c435bb500683066023100fa63745259f5d4f40c78b650f9b34eecdc3693777e956a73346a5ab116746b23ccbb5703470bef2149fcd72e9ae8753202310087d4e6d847dddcdcf833204b6a4fbb83b73f1bd6b5125453ab59572c203d443fe77a9a7b7d5303f177f3badb13b91d360302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c9d7c4e4f8a782765abde74849fcdf5addf67a859e1967bb16888d67655d89759bf1f6c6417eb02bf2a1f0587bd01e7902304a4a09abc23ddc2cc4253b86771b8b933c12aa7f9246448fa35a4f4b028d55f031f6f881d5a89e7195929fa03fc5bc790302047c435bb500683066023100ba611910544151d8645bf53ca3776d0363cf1c1c4d8015400652734561cbfa076a9cd91ece2c1f77f552dcd723248cbf023100dcec33b062d56e16778478b0a94bd2138e826a9ce77ab1d0f423b4090f7e4db9d59d6d53835b75a9fa9f998e8680162f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301f4c7d6df702a30ec66752444801e5838ec8c2a825687d7ec4e11253b8559a0d83699ef628d341cdc0f773a13583319a023100d05e3049255a1ff0b9f8e71dfecd6edcd1a99a63fb32642f78add1ba769f1cc1f912e469579114ba97caf7c335b970ad0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008e572f96b09f63a892728e0112adbcb47711c0e3ab5772c7f59cf4485af231ca9e1dedd706bcca0f6a6c25fdf8f3d73702306415e6e94ee42aa726e6a842a7eb0f69582fcd443c0373b681effd8ca23a7be3cd19b5afb5b2647b975890e02a66553f0302047c435bb500683066023100aafa24c2088d55f12ac12584ea33038b4a230c4bde43b8d7de30a60ba6f16f3170f7f77b91300f1e0473b9c8d62be200023100b88489b4b511d8d8fa1a1b3164be734ec3debf156fb4de0815219aec3bdc3ebbef25c5804b283df8709e10c50147a8c40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009a959c3f61f2d9b013f9a114cf03d12a8f6a7134d38bb2a80767b0f0eba72020f5565380ef69e1bd61460e30b150508902301869da82ed22cace0dbe161a45f812600ac2695883aa3dbb1bc17121240ed774a248a6aa43c6c29b92becd68becbcea90302047c435bb5006730650230650b36daaacc87657b6c2312d47714f4f370e8c1fa8882a6bfd3f01c6a564ccec875f298e3ac24e1b4263be50687c622023100c08b7e41682f59f96d519880c08343f3a567d960ed54063f0fcef6bb6d1b7ea8faa0f2fb8d732c795e5a2ba912a388c70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008cba4b5da0128e6aad66a9f1faeb0afbbc535724ccb9441097e0b9dafb2894064e7d6af97a4e21d270eb1ae2da517ae10231008c96b06351dacb2a1be2057985498339a6f7e8c693a0939e3c057a79acecd3e2a2fcaa3024aeda96d430173e440f80c90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a7b22fd5fa7bb1d31badab380cbc99448440983648b455f53f7c2991edb0be66964aac2116f7d7f0b6cfbef4d8a3cf24023100e6df6030a95464737790f7c8ccc91d23742cf801aa735831ae95a4d7af7aeee87960fea49695cca10b09e5171545bc2f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307ffbc5954df9161f285bf12c294bb27a1cd625e6977c3db7ce097a4f3435e67e8ba3d63e860f8869763e4e8735fb5b6102304c755a3655e289c6215aa2f3f74b36351c25b5b49e66fd374994d13cd5b07b286c2f5a8c15483b089b053f30737cb3ef0302047c435bb500673065023100cb217e6b1c95786b41b7d67478c342ebb4b3e102e38c8d30812d74f6ae6e415df090d0a40130d5ba8c0aa1a3a5e1f5450230200f910ac3cc681f83b09f7672e73d233d05d6ea041266e3d6361ad5b0ac3eca6d7a5a2b8074d60a2df16158d62f54130302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e962ea0d35e826e57023c51dbf217af361dbe0fe0f993f6e9f34f967463859ff1c54355aff802319d7d0c8229972b3e602307dc403b60e21836a90b58947ba41838665eb9c105249f243139b0e62aaa677d8ee6fa5c7f3202e70aa2ce718b1e0e6bc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230638a9706a697f09bd9b38286d8c0817ba014328ccf3db8dcebe223b0d6894ff8fc207d296545593dc7442778a522346c023100e5d78e4f61b7e30eac81f6095d146efee3d3c50ced0a265894f591165364e2a868df338a415b19d7e85019322e7bb4d40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f8560297799dbb3cb962159328f7fc90c43d7dfdfb809da30a1ab61ced1e33b616f20353f5ba4e7c653993dd4da3691d023100efa178c98a97ffe76fe0ac1904443ea678b46b8007d44f0ee514d1f278f0e10fe2f1ad02f5dcedc9f90c254ed51d9fe30302047c435bb5006730650230288370fee68f98392ff9c97cfc4357c7115045eb2e8a80313ff5859dbe6590a5c11b21966d817a00ff4a7919df092cbc023100e96301ab2eb627d697a9142db33e7a7869fa31f22bf7bfe4dc392de213e59556f9087a7b24fb6a3b20be77615d37f7570302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e06fb971216310ae68efc0f3faa7206a94545050d3c767233f89f3b0a670caa8abad5dfc8db7145a14d6ae2a59d8f6a902300ea2cf8c406a14d35fddcf5d8b1dbc1c08da2887230061a72bacd4f761d2afd81da932cf0f540af72f097640f8430c290302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100dc925e621074e2522f1c21e92312037ff6302bc50d9345539649851b6c2149f1ef8bd42610c366a1c506167ea8d95847023073ac49294b24743c1b0eced1d9dfe789f95f3d43be88a20e8f26396fe27b17fff574baf57ec6a252caffc1b9b0263f420302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301876660454cb24cffed7e0b30ce1876d9c4b2f636cfc9063db9de292b924af5677d185f48b5a9a91bea6f5323843ee5f023100f89c317cd4b1351b42306303e894ca3229be84fc68eed44083828570853b555c693b53251fddddeeb35d2d780ca7b5550302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310091c7f552397aa67d136b02ca6d0aa91b18f40fed4718b944b0979b1cca37d7ba7cc9cdaf63ca092a96e8249fe86efce6023100945daaae1c293155fc52791daccc80f06bc6da4b37348825f3503e23915e6adf53bc7bd4604633c7ed184e5ccb8185c60302047c435bb50066306402307e28417235e67b073fed776f1d0e08c523220a83c7b96678037012534925e421dec9f59a8c872654be0bd02085c84ea0023065ad8591a8139c42b6e0ab4b2c8c5e0be5243779557cc3efff456e33958e273dce03921741c602067a6adecf775fa0210302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305b0ddcff54be2632abd953b14794c1d0f2e4acff3cdb28f44bd326b5a29b59afa7256d9512c3aca15d862ce024af4c810230705a0a5c6ed856fc61e5d84e2a1c491100566eaf2c9c7beeeb0b75227c5eaa0610cb692a6aca1ac06628ce40614b1f410302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100dae783a895b76cef3efe8a199a8403faaa36665707c79f11e6e8d344a864103c06f893c4e2538985043787a74a2ddc6e023100fb22f8bd28137ba4e6b1856e4193b29be4a3a1b67ba23a32f41c13d06a1ec3eedb8c1488af2897fd302cf61021430e8f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009a75ed88709603a6d70b17c837c3b79f1a31c522f4ea66d528bfa1436f2bcd57fc94762da55001627f8123b56fdd2abb0231008ade913d72ffb8b1107a6ef83109aa648673a9118fb2c8392f3fc1b118bd533628d3c025381ca364b764718cbc14c7bd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a2ce808a2132d70bc4032b0d9e13d95966111ed63f2966feb2c57f2044b9da0ba7f60a90a726f1cfb27634cbbc373d26023024149255d8ac0a1826b135cb7eb7272fa6c88f7131cc316da3cabc3555602dc649692696cbfa746e4098f5eb5fabb16b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d2380b8f129892cf16a394e95ee223c4e2974617829d10e0c1bcbd4651e96503694cef47e3f1e00d90a53b6b863c86a9023100ca9d3460a8822e3a41f09058a870ca992a64321971a316b7b529b346b7e24afcd9c9be7092795c5577c317fb78a158320302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f93532914569d69a90687b5268bdef147f2f1f3e06f29610db2b594efa58d16be0465158819fcaf0e4f72106713de587023060c70df69ef8bde61de2dfa02f3e82c39d79e022c16127a8d750036fd800ca782917d38b3b9394d0ae232b10fb2568ee0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306b0f1f0fa07fe70018b9c59d15abf9767de3deb9c14c3db946dc719c1ed235b642cf013ec9a95c455cccd0749600e2a60231008bc98712185554b78df78618b2d2ff03f2b6d8283ca6a8f9823c08cedcdab8d4c15533ec1a49a66c466ed88699a854470302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307ec562e6f32d133a64f7699f733ea6670cbb10b1d4ece7d088a5f4f59994d59cdab834b377fe122c1ba4e6b5a8c07fa60231008d20c5f9c5d44d23e328f711069779bc1fa65374793051a08309520a31c8954bdcc5198a707b917dfcba27accaef2bca0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306550ba36dfbc00bf70eef4428dbe45a34d9417476613717ee786c3d973f1b6ddcbd6d4642c194dc5829c0a3ab25cfa07023100fe05aee46c6b9fdfd7a499ee66fc25bcffed98aef0b6a10d723bd47a173c61e6c748b36ac929d55d153c91861ab5749c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230678f830f59adccd83507f0a5b8371d2911a850f59b96495674850faf9cc41657f5564d5c1e44b4393a610f1b97dc251702306708bcdaf7e3d51d4359edfa7fdcfce6a123e16ff3bcea0cf649e74a245bfb5de2f5a56166e4a85ad35a0a3e27a03cca0302047c435bb500673065023066a26219dfa06e31e84564ee18cfc346fadcaff86a741ef2207c7a4570f999e4fc8f090b5d8f0e7083f598ddd744b945023100dacaa038a6897906d54c0ace669233ca65310d014b8f5ea524c3bf8216546be05f79f9aad48635119edfb0e74121d3020302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230658be3f265e7f445106bbbdaa0e258b92da094fa10460e3915272c1540d7a28af6ca505455a6783e8d8230e68c227b2a023021387900f466523c039f413dbf6302ade59b59cde3a0918f094ea48bc9d9de7c20ff5c5e0af2b04989acf5f57d144eff0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300a3187e25d61619d6421c632ced90c0d7265652803e5ec9f442110c0cc18c55c61e033c2d60b2ce3ae5895f71e5d0f7902305352e2c35ea0de839f3f51f7daa7c5c0498c556ab71c3fdcd4d5638c22472696fa105d7130ff64d319bef45ff81b8d780302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307ae8490e7739059a638693fb2047f0beef3ca9e8b28ef8de21dd9b2f3648557e33c1066774afe5fe6532e46f1fb0da8802302c5bac5bc982ae65102ea200b6de666464a180e53ba9a33a4b1f790aaef6016874c0e72366d443591f095d15d50dc4590302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008fb7e3aab93d1e2b1bae0f6d8573aa90f196599ab6deaa9ff9637ca5120bf0bbdf146a376c15a3ff3e8aa6a4290b973f023003476b89de1029afa80e5cd9f8c7b515657be137e4b7219d380f1328c1ce91030307cc0de7060d6b7ff25cef0b2ad8bd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023037d65cb1834a61749ebae9b916ece1acee3a94aeef9130fb6fa8b1b8aff343dca9f39e05e2367c930d975a90f7d03f7a02300d9738da5526a3c63585a560babb45ef047af2b47a9624ff42e5222c65781491be2fe42e22cfcbd85ca17c2bb37529490302047c435bb5006730650230719e0887b0eef9369e52a7b1a3970af6479f00b99d876601bee0d112cf8f0bd2a5376260caeeaf58ad2d68a490c21ca7023100cb00ebb5e04441138193d6d715d167e0431fe262d520fb186e521d1311859a004ee474534af72071961c104589ccf4e00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023014e413bbafac5fa2adad29aaafe03290dc588519f70845f5e490b22699ea6c70f5d0e74e3a93e25e299c3c938f735e24023036739302e69334c2bcb93a41a4c83459041dade022069a3744547ee2439c4cc449d793b697bb58ab5afec619a5426e2a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230255c3f5968a31de3f2441f5593847914284d686178d9d143d94fb84aa61572fa3b3479e8cf032887cfba6b57be345480023100ec5f9def538b81e2f8f605dc53d73acab9450960b4fc96711bfb82283530ec3c6931609bb331cebe98a8e97516fb83d00302047c435bb500663064023065a8201a39bdb2e6dcbfc2c95e9994a6625103c72b8fedc697cf7ab474ae6458794b19c01cbf4123b91b1f8337726cc80230585d97ea8eec94cff3d46b549087419755350d5f0e0b792ea563bcc98f28360eb5e4bc60181394c86352a5edea5805eb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ff25e4f9f6f5e31b74d400d3cc16d6efa80b46b2798489979bc220a4b2006d2944fddee9dd7a6b330f72df20e4f6518902304416d2643d5161625a091086e34918901c60182fdb59cf0f0b6b47d2ba2ea754a7fd0fac8b61a548803b0d9f35b50bdd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302629ff704dd7ffabf9f95797954594a6709daf3d7e14b1c2a6404b962a9978565b42a984b6e22ee8ff49f431b3257c21023100a06d90c6b2eccbbbdb9dcbe1b0815c3e67b79a362fbf7afa7b25e1224e83dc298caf3b96dde56457d0bd52367d0b81f60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023034d0c87fcb637db9db1db66550715f0fe915fca757445ce1405be0d8bbd3bd00fc3edbaf4c86490895d2900b440778a0023100c0e4ccae641f4a8b93ace4c10e58ddc158e9b43fbb7894c0bdad726da5c7601d8606c1573af8429c29b5a940d779f3020302047c435bb500683066023100927b9e52bdf6d6badb55509b5105fcea0c158ecf26b82828535284e5866ba652a91d4eda4594f05ec237e2be04bd12f80231009f76567c0d9e31ab40fdf212df709cdaaaa07157716e15d4b1fbe7915b0b585d45028efcc99e7e3dc84da9d51eb5ee2b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fa364c7ebed8cde63061996fcf892cccb5400252aa40aa860061a6aeb04c26119ba0c2364d4a7ec170611115f866ed9102310086ebb43d6b1302af88e2b0cbea93daf2463d561c2c395ae52e50eb7d008bbf87b1544614851d0d6412904d58843d4e9a0302047c435bb500683066023100ff508bb8ebad9625bcd5d99d490055a95e1ac89492733e1a4427ec5753ed975724d981d419d52ec23cb032dff258b3f6023100ddda39585f34e61316f22bb31bc05e75bc781a33d396225ab5165b58112170516d74322949bf499ca9763ea9cb9b0ede0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023050ca3edf5586b0d24bf84b5970dba74b00ea1768375a29fa6619e8e928f39700fd76e4767d20000450612ccb157e9a99023100a148d592943b3b5dd8785db994138c6fcc70eda6a46176eb37ab98ed4cf7102036da966a09354395654b7977802f5d0d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301ed136cb22b7401dd7707cff5ca108bcbf9d8bb365b614715dffb13118fa5d81c62d0715e658fb267092f793acff7c6302305506be69bf53a48c975df52bd0afd79d1afb253eaa91ad565f2927265da99ae43cac49ca4254855c50079c9a3f0aa3570302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307f3a86abecbcd5022e97638610ec023ba27a570b20418b84a9489fce6bd028293ce28ad6c468c7aa1599a7e599e3e59502307cf33169f6699979a1ee161b844e347cbffee56cd8722a33beaa2fcf0a2021ab1247f7bae38dc1e809b2489ea88371200302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230312906beb264e631fa3a37370bc6475028f9e59bfc4c289bc1c8a5ed6a0cadbbb3e986723b1b756b71a411a0403a6ade0230789375ad7dbe3df551b11d6716e3507c22c148c67d7402c33faf9180c13ec1a9c155fc36259dcdb677e3251b6ce5c8320302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023047957c25399893411198e5d66c26a5f412584e235e0a9bb5bbf798582deceaee087fb53a692cc6bbdee7cfc50d1ba0b5023100d54504e74e89d45667d5c0b14533fda9059070383598f8011e424ed7f949eb902ff9d9d06d2a6990f73dc1053681163e0302047c435bb500663064023062abc24563807a64d9b0a368ddd67b64a92606a570fdb0ce94e4df0baa6cfbdd46ec15c2e30ff2b0bc2c0fcfcfa1f4c3023044353db351831a0cae86cfbf3ba18d8a94eefa33e3f59ed193cc4e223d12fca67949972165035fa961fe023624c1fabe0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100967b7df638cbb6563e1191ea541f92bb2fb8870ee0e6ef55e9acd24a0edc461d14bf9cff0f33470fc037ca19be5f8152023010c78057ab7b584cb5a594ddedf3fe3778db57d49acb7d3eaaa3eae3ead43643351ea412d8a0b8158bb0e13e3df6a19a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302d16dd792ba55fa814164ff58ae906f8a0bf6fd9a9dd7bde774387e4c6302064cc61734260fe8250e93666117f2774ad023100bc929db9bc509d8faeb56b542245a0d7b56807d6c602ec9356b76b2008b250eb39a005dfb1e96542bbd244ba626b5a3a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023029f793134bb27c8265a2bd4b2f5533f45f51a36426db3a5f6526893bf84ebf843469dcb95f25e019c8c0656765bde37502304648f4578bcb4eaa679d39fbbe3954c19e9bea051c94cbb004edb8e0bf371d5eec3965a2fc0c4830c93cec34ad2a467b0302047c435bb50067306502303e6562f1cd091718a4a93e1dddf44abe829ac9d1109edae4c42589185bf2c86ee94495194e3c8cc26b80b026013babb0023100ae66e949f3b684085db689a08afb83c6179da1259b33b4f5d97015d8b665a6e3bf6f10785d775a28650f7911c66223cb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305038b0912bc6b8fe6c65b0f9601a49fce9ecbaff59fe2537273516160465dbf3caa6d193f80856e63d6253972668d04002306223aa0449a042e648da78aaca6191b35a8fbadf0a80e6885db859a940f7e2ce4f7f20ae0e4fa469ee3504ab4f2f31c50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300b0b972919180115d1c4300cad34ac49226051c4b5f62ac22f569da0ca9b4e4b3d36ba450210877dbb2c37e2f0cbfca202302c054113a4823e7ddc8a75dc4e9b98c9616e4f8c487f7d09ea3ab5fd767b0fcbc6b30f0ea1bf91f8384bdac61b35a5f00302047c435bb500673065023100f0acc1767faef84fcf498912c757039ec66df9a64b5ec0e4acb5d1dd40618d5e23ec11635a5806ca015b2691528a55d302305c026abf7e9de2116bbc20eb045e92663e12d8a60256e2bfea716f6979907c7afa0bfe08210c2097aa5321514fe1962c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303d6029836f531dca16f34cb602b28f6403c7a0d3599a9d5f985c09af57f48fc20feb26fa6bddd63da5041aebb04dba7a02302455acf97ebbf9075dce35a7eb5b1722c4a4c1bad65a18cafad8e44cd94865a5b44aa9eea4734a4d06264d2174c2ac120302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a740f2272605ed7b724016d58a1e11123214cc78d9b99f249047e9a2460cdaf1390061125cf420bd64d498c9187c86ab023100b4d7f1921bbb36d5de1a93b3514772b97e547e0bb0acae121fd24500d6c8c52c09526e8c907178f2817dbc6268f0a12b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303d6029836f531dca16f34cb602b28f6403c7a0d3599a9d5f985c09af57f48fc20feb26fa6bddd63da5041aebb04dba7a02302455acf97ebbf9075dce35a7eb5b1722c4a4c1bad65a18cafad8e44cd94865a5b44aa9eea4734a4d06264d2174c2ac120302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302240b61c9d6ed5755f4f101b2df839656fdc4504eed98e02a610ba29ef93c3a3a9f9e62c744d213a658c206b4f3cedb4023100cec729539db67ab2ea41d794643b8ada58422fc14060cb107481fa64223073ee6519df3c7d95c3c55be032254c64c7900302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100abd47ed607f1f72e2bce04fa693dd07fc83cc8987d8c2b3de3bf1ac8dc937fd44b0da094e166b1c047c9e327fa054aa702301ce85c8622be0b2228c0ef531b7ab48287108261d369e779e8e5e60d3d659746b3f9bf38a919c359860eb929610849620302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306f9648300d1279909146db5276acd69816aa074d264bb9c3ce95b2a67d1826c738eda3b7a00b6a2a8d5e18b062cadb0c023100a2cbf553402a45eb3b7689598ec5214f35c27aee80b0cbe70135830e594768f983cd2ba7a81e0ac658a354c25e5b15030302047c435bb50067306502302937621dd51a5abe455a3da60187feb2c48dd8e4453a62178aeee101b6bd9495ed32ede06a81b43735e34ceede1d14f9023100e9b9c268087f34534d8f1f088201932e80b4c0c1b191ad3deb1574bdc65d777234efa78e386875db80062b34bebe14b40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e18af17c88b7761781c3f31a2fd2077e474791af5a4a60ae7a93dc3ca72daac4e98b9b5f39bb4bd80cdc270c62b06974023012516231b9c377eaefe4e1a30c59f8e104475b1f3d787e880662e2c47a1368815e008cc33f332a944834b699aac2a6be0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230086c27dfadb4f76c450640feedc2ac32f4c2716d407618e7650eb7c7b61498036ca3e8eb6a644ae3358d4346b1dc1c2f023100c0fc406a9abe533059f86d34a9df0b1b69ba743e1fd4331a5a4dcb37f54cbab37bf069916ee9bc019e7ee546682fc6be0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c6c337e9dfbcc5ed08e18b82108fe6b35cba412fbb43586ed0ad7fb27cb13426c7e469b5c47c2e99b4feb602631ac0e4023100c01aa2a79b0202feca486319a5c3b92bef1e62ebe66205c8d991ec29a28d0ca6455e52d42776753f54aa27a2c9be074b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c6c337e9dfbcc5ed08e18b82108fe6b35cba412fbb43586ed0ad7fb27cb13426c7e469b5c47c2e99b4feb602631ac0e4023100c01aa2a79b0202feca486319a5c3b92bef1e62ebe66205c8d991ec29a28d0ca6455e52d42776753f54aa27a2c9be074b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c8f773522b02c1a498042c40420955fb6aa7f47045d8df65cfeb36d8148bd426f64e519e2551c8ad8390ea474eec3c3102304152bf00aaa9e81748dda2359dcde3d2f2c7dc168fe378a39cce36f789c80d5f9bf3f0410c545df30d10cb48a0c9e1c00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e63c923e537757fc254466a3fe2f966008482fec173277fc50fbbe956c456c7cdb11d5f3e8d7a0c58de687c9dbe8a6420230603830c1f2c6fbdae544ec70d6c5131840b9f6e9108c8f4a0db804f46d061995dfe6d32e3dc41b7ba5244f71a336fb250302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009442c9d0379c3b040bd4fb969d7ebe47fe4e94147ebbd99def636fa9597a7cf9922a73a3190672ba99c3b80a486a94ea02306e9f88c4c87ad51e2140b690ca3d2f7cab358fd555ca9d5a8d85519b6d11b55c0447aee5d7c0644dbc08ac9134abf3010302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f132e852dc163322661fcc2a4da6c557629cc8f174e28ec7af69c45a7ef62a301cae8b3ae83c6ea96c45e71ef0f56fc4023100de18a88dcece47ee1643b2d1b1764e71ab59eb4734de7808b0a9429a7efc35f4a51767b9654ec3d84d85ce8348ff35390302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f32df394c10dddb8e51d8e0768c21407bc9c02d84124d3d6f7e1355f095f81bc79751b4fefcf8de73493ea1b26cac571023100b1c3434a8916794672a063466161b1a5be117ee93b27dc9b81120deb229b8efbba95f7f346ef42d6bfbf391fbe987fd50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023039fa65aff0fb4e508d6b65b7bd0c238f2e7dabe1368b24f0485e847be902ba1920a0b3384a31e2b1322f627f1ecd7bc1023100f274410cf22d72734d895afd17b7f09cc2d217318a32dae45ce3e126ec4f99e43e18d5f6e07e724c97290f4c07a4d0380302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a59bfa600f8a282b2b538d729743fe0df9ec0490dd48ee57d3fc54a12441ed400ab55e0243ebc9b990003462fae29c2b023037513ec04a051e93bd017578efeabd973ba21e1fd2199a1e56cbdd8cbe6cb4e411d2e1b89d6935daa84de894f2aff23b0302047c435bb5006730650230788c4d7202ec2f024e6eed60f4d49639c8984d6ef51433888cbde0c4d87e1c623f960c9b5f2e1e243a583d7efddc475802310080007ff53990828562689aeb8c16e9432f716ef6c7130cf5dcb0bcb3ff8cb4c6356f28c6c076ca9ac8e4b31fa96cce160302047c435bb50067306502302e3983561dbc96d75f533e622c4676749482dccf9e905a653a47e81cb0726c10af1efa7076e99f7445608b605aa28c0e023100f29a9fa4f6393faf8092f8311fd110a4edee386861d160f92c7e2dd2315ece416e0700e77a75a28049c23f6935886dcc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c6648ea348816e8c4543fe70afa656f42ecf02d7ddee8748e9dce1f534a1b22e9491e8f22470953cd014877570d23b4302305c08a54bd707d08f0e3a65d09837e103e1e74d7d627b38cc9c565017d28f96e3a2cade0cabe4c7d0fdcbd6954fbe92650302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230766b2b8ed68ea3977bdf5f1f5642c2c6de7ebdf8f557f1fee01984eca703ca1f96aa48e2262ecbc7110f263d3754c71e023100d096e9eb3b8f5ceada93fc0e6c4c94ee7efc8d7e7bf91dbad2170ccd068761cf052b9b002c075bda961d18ef2293c0710302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a848ac0fc3574501fb7fe5c7a8074213ff34bfba1a753c6648e3663c7a43a30e07cdac9dd56665a6c43107c4312058fc023100b23cbaa56d1d764d15251bae75d87a461bdbe220f58271d090acd9b6751ecb150376cc21ccbfdbbdcbc7233a128b006c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306b09202f1abf6d45a1a838cfcda58b1d48098b21d26d2cf2b55a146d14caef9fff672907782dc97ff269884de4c43ea202306a1eb612d25448337ac271b16e9c248c60f7a268da36f4cea6cc09eb603f7bf0258c910503221a8879a274b980f797250302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100979388595aeb6d70c84faaf7298315b8c8821da58fc4082cd6aaeeb22a0bb3a5f8a38b8c7ced5c207b94150389be52fe0230783a26b6d75891c0fa86f00bfa1a04dbed18789f5992b7986db64fa10e429978a87fd1c89c60567386682ccb59e213b50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230667727a09c54eb4af211dabfd7d044a74d0f7055ef0b3098ca0f2e79fc2efd0a9f4772909612b1b38d59b733e99d429b023100c73670c9f2327b01914410d42cb2de2e06477b5173afbfb1ea5934afae65bcbadf8f075f3bcdc4c2a9185b8b065eadc00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305ad6a8711acf83953483c5ac78c36d77272ee37c85d5f211d1ce6e96d5ab00184157b89d31bbcc55d930d5f1b7790af8023100d39a6e24ee34bb344271c86e43eddd27c7f08d13685f817dcf2fc60910db34c2864c562ad2de94ce09c6e8f37ea548a70302047c435bb5006730650230250fc48fc0bbbf5e01251f9a1610894dd258ccc1f3762d39e8e86098d3063a76fb2bee392110347a2cb5b5583141c8a0023100c769ce265865f03a399726c2e6601c1b39a9fdc671c15e211eb0019b23eea8d33ba573e8af2b381b70bb16bcc29943d60302047c435bb5006730650230498ca230217cf7a364e8747748df0ef227473a97657de0124928199cefefb04fbde3170ece08667531579cae33c08707023100d20b4d4aa6dc33f8d7742084c089a57f832f4149b1256382fcac7afcdc36924279f6ddc70c9d0a764789be16d72e4edd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306baf4bca6360553a1ca6bcf69f4ff0ceb1f841cdd541e5e8423de37e1661d7b39ae8e8073176b16f2670d23a3fa90a6a023100e0c85d3cd0a7af4a6a00ba901ab2dcc3b45dbb197df28e466e50c86e5a68da56b27e4865745bbdac62f2739e0ac710200302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303d54e32b97464a95ae08d855c77f9349017740f3babda0d1ca8750ecf56c61e53043d9a1b0f92f1e9a69cf7182d13fa9023100bebaeff906f3c43e721295fe20e26b12a67a5b9244e4a3ae9434d0e5386c30d25d219a6c21cbd671f4387425e26765e20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301c7d76efc67d655bfb30032fe1562bbd8bb215d86842cd61a6e28d669f45130017981c91ef9c8352e71f42309271ca220231009657c8e70fbb1a6d066214eb577ffffe010d4972ae3b8b7da8cfebd968f22fd5451fd99149efb73e1cfd6c73cd936c850302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306dafeb27b4b035c752d01e6088721e2dccf7a7e1e36cb44278b0f7e15e9b68c967938f19973d64e87c6f19de274f04da02306b5ea4d02b6448e6371e0ddf0bbfb1d911e147a3c20cd79ec531a7e71d01c6d04cb5cf73a56959d1321b78ff546a76340302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b802a95cf77ab803a3cac2ed1397369a4171a0b2f1a897fb4e8a898219242712d64c2892cc29e65dc96f6216b186180b02304529bd0439fb73fee44ef2d7a8ef8afa4d8f4123258868fc0d83863a0df18fce4fdc35413bbfd92efdbe8678314fb60b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300bd3c5c0b523418f1a21c967cb30b94b02a78215a9ee6925299c7c9298753a13995fb71e8fd6e8be522208c56f361ce0023012d0aad5f6f406f61acc63aebfd37724b8d54a0a14462ae85b7fcf920edb1374a4b675472a2746d5f556d0a94b8beb6f0302047c435bb500673065023071f6e0ac1f699bb9ea2ad9f1caf3a8b090897988a51c3521ee668cef085f9ae481a92fc2f68eb5d2c315a0940ac8cf4a023100d3549660a4d04cb39c030352365f1a89faaeda3e76777bf1f4ef51b8ab68329d85279caee79b44f99ec46a91bbcf6b640302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023017fc497c7b5c6228b15ddab68b7f259fd8e99ef8e95115dc09051a9d6cc07795212ab666acac4b7adff9f0f609a7b77b023100c17818ce1b07325f22b5e3b1893135c58253927e53f2aaace66a7e900a106b9e02d18b648601e4fef3c854f05275fe250302047c435bb500673065023100eb3fc95ac44cbab60f28219c0337e7ed45f58382a96efe206bef744263e1bdab6de46bed8413874d1b214e637ea359f8023018756ea68eec07cdf75910b90fb0fe5476e616ce52234299588b0629ee603f907d040bd18a51f0339a6d1bdc5e04e3170302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f19842a9f095053a5b91700bf6992511a84f64cd080e10473ba3e937b9abc8172962140014883a9f47a2bbb62b79643f0230679197dd7ac4693f2c258d4039b55d63ff8adeb42457f3587b8963c52f8a0c37f0bed49f5d271d8f1b507dc5bfd47ae40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a65b26126dda25f3a12cb78de9a21bd96f9da9257c1906b98fcf3acf3364fd90489a22dd4028eb8568179d8a1a75c39d02302a0cec3ffe6ed8769a7f9a93c3e3121c83815f02788fb94f1609965b30a93f7cea3e5e76a5783dfb760c168887d592410302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023038181fb7018e2b288a96a993f9bac58ebf6a73bda7b7ebd67763d19e1ac9c00ac5674cf6f46760a9810655278e867cdd023100ae15ad3f4e49d0ec5d5f4c003c6e4c3cf49f196246c3a78d95a42a058649f1b4946b93525e6199e312e0acd9230e9bd10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310086307d59e435021c9cd9a078ef7f5ab76eb6efe6519d0c772ca29197a3ecec9c00e8a9af8964be325d5637137ff00be2023100dedf502bff6a63e4341149992f57465ba431d612f8492efd02e09e45785b9e5ad347bcc89e3fba39a370af031bbf435f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ff1aa8fd0fca2b643ce59823ae2c48129377c3f44a4a191aefa7feb18686a61d33f226de3130e5d30a2d65ffc8dfed170230296e6f10b09a9ac729b9e8270bc05f70a746c38209c138303046581b0a12ed840b1400990dbb59b2a02a32e97c60f6b70302047c435bb5006630640230051894ad167c640130a5cc5a210466244f2620e6b43d5c756e930ae6bb19604e67fb610be80300a0a5ef4f08d97a85bc02303995f7772424a76f570af09d39064cd70108d9914c6eb74cb3ec9b408e6abeac4b71f7c4ef25c6cf967916dc6d52c0c10302047c435bb500663064023046746655f874c0a63a4b8daae1ec87f073976b85ce5f234e9286da8f10b49600836366d8f104924e60f8835f67b3375602302083f7175714fef8c9b39e20cc1cf200d44e509d98b6e9510ac41f9c46e4e0c0140029af31dbc03b5d5a2215c6da3e430302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009cfa4ca1f766e7f9bbe16e6c0c8497a9addab8606bd3464504832d5105a2d3f5454aae4544565d003f28cbd6cfb52a0c0230192a8496e93c4b7a73937aad16456785c2fcb5d931789f549f737e9bc10a914fd450854723221d1d9d95956d9db012fd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bf506d9e8c5678b319b4274e8b188b38e058cd9fa0cc7c848471a56e2e696c865b141b76afee2bbca7ef49acd56535ed02305c7e70d8c5e518d60b1a3073fbc5aec9137b42d1602c83efe9ac8f164eea3ad6374a84f1f200ae3777bddc66af9940220302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310089571f97687685012709ebc0c4507163baafa9900cbcda5133ab336f779f2c55fa7860ff38746039d3ba48cbaa0cdf7d023100d4a657f5b41f76c024c42c94f3b07de3ba1acdcb6c6f11bec0d7ca6362202ca491c82aab21e820bda48a63047cad8a770302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307c89ca03a2aadc3cc427a8c446e8ced6eac8ff240784004327f54edf2103dc15397c85c9876a21ad9d790df9f1aeaa4a02304fe3faa05abfb08b4a1b3a068da4e666a45b1bf28830fc7fee7943bded744649bc51d6991849d69b0198781eda8ee5520302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100920a7590e22f5a1828ae2178d307718e518e1aa816e93247916d4444a555b2843bf70247ac000df066c7f52f055449a50230130efbacc86a4f0973f6fe8a3c5196f8596c485acd2fb7faf50de4a88349fc91aece09b9a917cd71ca72a1ab7caad47f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100909a856041fee4faf148b6392a2f57f3b6fa5483f603c620fee650f6a337489845a32e62e9ff5711ec30e274549fa0c002310081ea8af3a12185164b0c391556094b4bc17829a85baf97feab8850b7643b337313305662c9e85f149ad7ba5b3a58eac80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301e19f7fd6275d0ce8ef24f84e79860c68d7eb2c040b0e7aa870ab134301b3c4bd3ba683347e734e2da58d1f1f3cc4950023100a64cbfadeebd150ba47e3355f5fe6626134db7f089153948810973735cda515882c6c22bbc3ee613c13dd378be3887c40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304cd5b6ef87ce56491eec859308fffc6bfcd84f9ebe30c30f8ea37c28aced7892ab0891651c6f37e33abca6a61566a68f023100aa7aae9be1e455c3a89974f4d3a1ffb0beda961ecf7703ed09cfce470b8ae7b482888a85d18bd3b3fc19c7e5e0c400940302047c435bb500683066023100a3932306043eaeb2c6b4fc151370af475faf656d5792f4ccec7aadd2c1b6a3682ed19f607985a0ab3963d2042d427a43023100fe6623b5a9d0448c458ef13e0202e03616a611762cd752a9bcc333af0060446557eef9bf7b0bd1d21466a6708f3148750302047c435bb50066306402303f16d5da13d9c38e3409d963bcd9088ba9287823d6b4ae4cd8032fe259128bf52fe112eb0ee48bc508bf06428f0fd634023035a28325dbda2b1a26bf1e4e21b13a85d898933d46f7ed4806af022ac55b2d406ae4ffffec8139484bb637bf9f6754780302047c435bb50066306402307b258d3c753d67f26d8e4aa84bcbf1b36a15ae71609168d197a2386ac968075ebc5a86a63fe9b516f17f8604744423820230273b844b87ede2680b9c7cb16ac756e148bcba776a99912b161a6652b5ac65c4d0b66d433cab041d8a6af86892a892fc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e5c0a7ea6440f5b349af4bcdcd28d9ff88e1d22b95f04808859ea186a3b286d0be5c894b92887ad56767d9bc94ecf336023019b83d6efe9debad99c0907b2b15e8989905c8193c1e47ed646b237c7ff6cb766e94e2b744fa4215a6b0b89c42dc3ac30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023075ef3300efd2059259a90759d2ec5ee94b821abecb4ad6f3c2527d41819fe7f4e8ca7e521d1498a89b4b1357ce3658b702300d080d4759a4e377176ee00f077225e6c62fe21acee1cdedc19eb848bb6811868a205175da920d19bda21f9c74034ebf0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fed7f4d031343f9dc9a7ada5726f0b0fbd48602158024cacbbc82c2849b41c4232dd4c26d66d977b3533a3a370bb73610231008eefebae1f124ee3c5766d2bbfa9c423946f3159484376a26bd6386c91fe587ad044068294c62aa3f13d6593d4a7f2c10302047c435bb50067306502304bf8b456d54df1f5a2d3a860d05f71d0759d2b194dfc176b631d14a28dd28167bcff7134d3f3fca6bab1c1d529f81117023100a4b2387f9c99e3f120b77fbc4680b3729690b9fe292a111d293452ce184ed04714bbc88b523a283f8af4279277784fdc0302047c435bb500683066023100b3956531d92d986f34c7779f1684dd8dadcc55d1694c7cba70c193e11065e8d16211ccd356b7845afa322c71f6692f29023100bc297fc39c00582507707ee6d4d9f20cff2b03c24dfb3e5ec19dee1f5a18e87de4b6ec0d8966dab1a580f7f979783a3e0302047c435bb50067306502302a3753da13edfbf7beb06543692ce381377e54053cb821d82098cbd40cb7dd5a01dc65c2990ece89e4bda9c89c9cbdca0231008bdf7733df583a541891fcf761e01422f30157fefab36a9f137daca1c014e6543d9f7e5a6cafaae110f74fd654d2b04c0302047c435bb50067306502310092df39281c2a9fa9ee944be8f57c1279b44d0b4a98638f3bc00cb87ffea803f377c8195b18ca6be5dc0025346365905202304413e5c36d2f6f041ea91de8230d44428a13ce76bb957d7f67f2a65f8028b1eb9450c379bf998d876a0fdbb929747db60302047c435bb500673065023042ed395399ccc78efffc777fcd6e25bda503da356b413117899b0e8b65673ecff445c4e2c130df93b1578439e2f9e77a023100c80e96026f0c97ca4db57aa55a1a36080bbc3106af24849177f4b79065dcc61caf4c10c76c9cb3358b42df22fde1a60b0302047c435bb500663064023047ab7b6ee5f2cfa132159cd35dab8a4f193270c84442c078e3f928674522ba51c8ada64c69d97545de4621b8df0a4441023056756fd715a79b2675c0fb6ad14dc9c86fdd68cc68b915473146a3fff261cdba5fc5a52529654a6e7c8c5dc58b600bf20302047c435bb500683066023100ca396f4059e7e05f89f8c80a80127f6c7eeb3f6c239ee944be72bc8f44df977ff4bc6bb6abc85820a29f2561d6465535023100e2a8820e9d78ceaa6e3382b750fa9db2995579942696b7572af6a30e9c5a8cb5d9f0689d38dfacc12325487458471a570302047c435bb50068306602310089cac29ec7946c0aeed75e7568e8227be8cf16f5c6350e3e5fa7c27a72a32310f3179662095334d2b814e96b60cbe7310231009ea215faed3ec512456456c193356f537a52cd789847b8f4dd6768c1fccc0315aa6aea427856706c2689ed95737a30be0302047c435bb500683066023100a1159fed076a142037ed4bd6c53e49275ca3897438c9b22aa0587561a4d5bada3b205fe29b891daba7e9d65b947f15e1023100d024d126c9f38b27bc483a2bdbd3ed4474e02f98b7431f7a5809837b40ebc096b4927a00c0028dfaa59a89c681c210930302047c435bb50068306602310091f113b75128bc3c3a48c07016a88a63c408fef13e90f4f8b846b750d6fca0e27c6399e4ac432e13a3a8064c4e006e8a023100acea2975d049a2bb963ac6c69ce6030249891ff2409e9d3b5816ff6ec7ef66e7a1ef00011a1a75043a62d75d35d3c5ee0302047c435bb500673065023100e5e16cb60a5ecde63027dcd737c544927186a9263bdebd935c7346884749e372d46f8c66b02602259642e2b0b26c0059023069da172b4e4a8f3bf761910d60e080d5f0a27c255ba0728d951667b00b6122e21591e8aa9b6c869798d07886304d5eb30302047c435bb5006730650231009eaf271a4f9f95056c02b73592a759be81b8e869d916741c9cf5dc76addcb2d0bf7b9351ab856311671e4d4e0d517ffe02305269431a138e93d57349f546385497697c56bdb4eff4083e83d82de9eb4820b5bc4a849be73ebf7115ca2ada1234871c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230611357ba2ea6dc796851c422ebae7e2d6441bb98e9ccf81247d5ebf000c3570cae3db74df9a6f737cf849cb3fa4069190230387ca7aaa42f9f9d6e6a9069a8c2088941c7050098c085a7843ca9db074b62105afb5e7b4c65f21baff561c1b45f52df0302047c435bb500683066023100db5ec981d7c4efed8e6b87f9d6ce59aed1d32fc8314beccbb80bea3c9d81ffc361769fbcadea9a079332fa10f07fab3d023100aa55e5510d6c3673c543d7ad7b9d6e50969c6987d2794d1480fccd0226c7f0ffabb175e8aac7e93b1e742ff068e0b0d70302047c435bb500673065023100fe81110cb1f631a7aa2230b68874b28811caf9297bdb2f0221b051446437c3822101dc3c16cef0d5b53184bb162c19a802302bac2b01dd28f52bae11073377a61149cc6eb1e0784d5fcfcfb1657910f5dd079fa8403a46a1d03f5d062981a320620e0302047c435bb500673065023100bc1e07d1d30d989152f8244259fd67eb840c28e4f46fa6182e271ec8f501b4a5a18ecfd005bfbf4485ad3799111f05e002300b6e4e9f14c999e6080f966521fc7f8f4b566f1eaf0794b09606fef0d577102428984616eefff0ad9653b4ec4e15c00b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023013d66c000236388c49eb57107639826465ac672e1e52ebe7d8506b6ef7b134a5e2d16943927269a18478d822572d1a2702306ebf9d75736baa11f0b143168945f8626b3fbb3cbb9247894168eb0e89c673fa60c05bdeaaa4cf04fd9076a2a399f2f70302047c435bb50067306502306ddce6a159e0088a075a8a237bf4f80a9a1dcf70aa458b74d6f92ac6620d359297a0edefe3ff3c10828c4d47884068dc023100f85eaedc702983f328bcda336fb2ec2752555009121734e6d7955c146a01705621fccd50b8d68a64c4569bed9c5297a20302047c435bb50067306502300b2abc730ec8491cb81859a02b38cda8222ac2ad6265ecc283ad63722775f94ad08c7576fef7e9b71a6dcc474acb6de8023100fad6150a1f78acec5e757b6454343203595063350e37bc8e3add0c1886bcc01ef13805aa4a5088ff67054f61547aa9770302047c435bb5006730650230390a15bacefde8b56613c3e8667739c54e590cbe753400440d278603ff4779e229b064d68543a3dbc591cdf00f72c753023100cf59ccacbf275d418e4eebc12b5f5974eb44d9946cec767dde2f7ad5772c93cbbe28e2c870b4fbc3e663f0260313cc840302047c435bb500683066023100dec5502c72674f03c9cb3b49317000120cf3dff1447c2ddc62f535d429c41097ca0b00d83ab1fb87293513d46a5c421a02310091f8e47d07b9c3c5e8f1a90ec8451c8f66efed33b25736d81d26c8d3bce2f631bdcfe5e53f4696d2a3f6a33b7b158d640302047c435bb50066306402301cc77cc18138ac74e72ae0b70e03171d1397f5fac697c06944c6ecca8cb57ab83621f43b0b33c0d06dea6cb03b0db4a5023031528423c001ed4f2d3e835a9f5c4dc7d81f873aed361925a4b9306cb87d6c8abcac4ecf959424a7ee584d31281f16400302047c435bb50066306402307cb3b9d59ddd16d0b7ecec1dc919d44f789e02f4c92d8042cd0cfe13e37400cf7054ff85ed1489b056ce979f97308b7802300dcfc29c019beab39936b09eb1a1792cfbddb20530b359b7f2093aa773518573dd6ed23557018bafa0551e84fba2f4380302047c435bb500673065023100f257f838c18a10c500b79955a61ccf866113fab7a9270e6819b378251418debb3b5a9a2f08c12bab1ef93d254c8ae7bc02303a49ca74136b4d77ed85432ae1aaf0d7b3cb7b29e3b9ae3458c52221c6abd659f1293ca8fa15e7ff6ca0b21150f76c7c0302047c435bb5006730650230481b8de98ceeaa17039ef3a2e77f18a74519021d49c8b25ba38f396a686bf6290f5c24e613d2ebdba941f02c036932fa023100cfcb0e6c968d83cc51de9caac99ec587b5b6b67f4b14490b29507dc32bcbc33004dcfe8358a3c43d0aebd3cf0cd089390302047c435bb50066306402300d99739cb60bc3eb28d609eaebf526cf4e1225eacc6f3374781b89ea6875564cb0a2745d6b992a590aa600cd0b0c3135023027edb367e888ddb43d8aabca3d9e85b68237810d8b53c9061ef0763d4e2b15b470d44336972f7ec53ef2c15a1961f4820302047c435bb500673065023100dcdd6556bd788c7e3193a54e1ae6710b1da296d3c5b8d4a744010190df1f59c6370b52ee54af4b5e6d61263eae7288770230674cecfce0245b406d71754dc2f012e518e2e80c9ac989128e57be01a0c94d4ab795f850810da323e6999164d34a3b2e0302047c435bb500663064023003c0c852b7ff22fd347d1e5067f7f8faf8f51f2c16df1ef537f5ec929cedcaa2bbe4ebd8e6daed8d5b33d8b2e54d5c890230387be7a586d2105c6ed3339c37b00d146806f905e2fe8a011631d46a41d50101a264328d65bd5fbc5359906cc9443ffa0302047c435bb50066306402306f7bf26436b9f2e323118268812a0ccf92bb48062ab07e3a513be7deb26014613932f29bb816edb73ef51144a26ecc56023065f12e6dfdc877191ea3e12e114f11fee18e6a0bcae4377df5c8a8754aabb1990f17567cb0e32839c9f7d42489d0f0750302047c435bb500683066023100da7c4ac92778655f76a50cb0f01610a1ca6622d4311de7e64652739b491c1300514ea2408569ea1bda3fba847f22d0c0023100aa498825af2d1fc5a927fe23ac05e01d5e2a5c78348b4bb675b83408b250d19f45d76d830ba095b6ced2adc921db1bf70302047c435bb5006630640230300af8491012cfe16c0d73c28f1a8db25e73966c2f218ae5ba77d3627afa1d7768e45130a9b6d6194cbbc2ad95b735f102307f3e87ca4986666cbebbf5e2969a66ad274f6243bc2d46dfadc6947da136c801b0b0fd5d1d56cf3bd2b817edfaa207940302047c435bb500673065023078b56a27efbf02a1786327f122f280554b09ffdbde971262e4d7be4c75f3ca8b2827ac00559c4c1a65d7647a5e1300fe023100aac7e775e9a11e422d84d22bed4cc38a207570668e46360bc00056e4613665abd8026c5370043879ceb502fa43a0a6950302047c435bb500683066023100b3fb34cdd5d8db887a90e7187e2cddc0cb9076c0591d11b497d94d18136633e3fc7847e189b3af04a78e3bccfd0c0e20023100a36cb6db91df7b4382f4d0a729c2c0bafa8b0ccc1db59124910ad0b81c0620d0e14c5f21f01df82e44b0f74bda0a18a50302047c435bb5006730650230465a993223b68d92f061ebcc700c7fde38577413cf076939c938559e18463519b2451e60708b80a5d9e44cde38133e1b023100f23ce0bbc82dad85a22040ccb061f102f73c9e3cc9458f3b9f4c09140b0622352b3bd70980d0fa6eb4c92d26e1538cfc0302047c435bb500683066023100adf427a8b23386d0fb8befcd46b1ae7eabd086b5a89b73617d020a5d21ea8757ef5a2910581f4fcdea8d3ca12099e2a2023100e88c445c8f58e4ee719ef80399957b8d9161c63e50322b0c940a98f6b2b4c4d2fe358820a1e41338229e6097e8b24f410302047c435bb500673065023100c42c0fba9cd96e7c13d3183cec93404e727bbebcfbfd14a26f22093392b7ed107b8cf581380cd9e37b510cfd6bc4daf0023046c764d19fcbf85b49c514b23e453e4af022a8314998b47ec70331852581f3ef10cb4d9ae80e6196f6956d67cd839bea0302047c435bb500683066023100c992274b60162af563176bf346641841c141f1059fb2d1ab2677b061ed15f8a737737679058eb335a34e37169f1dbd50023100b36cb51a398f89016d331ad2dcfadbfa8d592de37047f20e991e2fde068a41095ddffa7efc777497e1c5428a41dd3b770302047c435bb5006730650231008468dcf8e768164a2e85361cdc6745db2e17aa2e631c5611b3c7677d725c5be9dd9112ce1197bb4ab9250a328052a9e102306c7d49ede6d26dc18926b51344f230fdef1a5e2db78246496ee160b344ee1e7cfaba45623a610e9cc83bc994903885010302047c435bb500673065023074674c60fec9fde1ab67298f632d61f4221c83a4a62c663eae3521ffbe43a38766791df3c13708c803836250c5b72e3f023100fdf1a91f7cb38c2a5a398731fc102350740ba8539ed22f57ab6f1ca26f56714b5d3350e031cbd6d2ade19f2d8a36f1010302047c435bb500673065023100ee358f01fa1305366da660f09e10d4ae3a0f3b5fb528f26ebe624710f6aeaa61044131925debd8b7dd60f85f20e2538f02300693c290658f4bfa3cdf1b7389a0b0953e10d9d3b3ab81b8c9b76ae8a6c1fb919e74fa26b5a5f5307cfe9cda344e4a0c0302047c435bb500673065023046588fa02a2d5063b0f4c37f20b610fae3d2451e61aebb667743f239a34e070145307623a28d715157ca121934bfbadb02310093656fbc6a166c13b140d5268b600859d2a3801ee6b3a1c6cd3550fd83e49eb2b23d8140bdd6f3b3411ff7b3cd93cc770302047c435bb500673065023075c59b590a45a1d53c1d0721c235a52320d8c3aa42158be668f53d281b50a4de45b5ffed1128e2a2544fe8829a5a7472023100c5199133d5606516583fa38a65d8ba5f09639275ace60f9a23fdf43cd5f25925b4aaa8334729396e7500113e90125eb10302047c435bb5006830660231009f67531d839a61f310571b5b65b69c4ec8622639a6607259cec19c9ddf993bdb5147ffcf0b9aabbeda256e144fd24f88023100cb5d0e4dc8f667af1b464c7ae2b8f2b26f4af29703f13690fcc8e4fba5cc082ab816fa610dfa20568f8940df79edfb050302047c435bb500663064023040a0365984f73a6c53473f4fb2fbd28a7a064c4d88eeebcb5386e7215958f6e43903cf8837afa0da2f441d678699fd8e023032f271272c60ef1ce4ab49ecd44464aad6f5c7195be96439dbf4fdf1c5b550d206da83e7189d40647985c022dbf041ad0302047c435bb500663064023000c60897edb6a06db60382747bc791405ee6e5a59ad81cc20f05610a327f26ee435ce1094332d307f0279520907502940230761bf1a68f716d26156f8b13d38c163bd9d11a3bb7a971437035e5ac3384a0a56e7300266773a3723103ca251e8e9a240302047c435bb500663064023045a8e91d62d37329689b8a6f2531319343209e367161798367ded722db3ca77b84e35b1e18c06c4f5d9895c2bbfc088002306768de146cf7603a75a949f26d35bd918572c8c91104dad5c8b2c0bc5728e696a663067b6ee8c69b78f339bffcbc36170302047c435bb5006730650230158f23a9fc6101fffbb46ef649647cdb8520f389b88d56b88b0ee5fa23ec854b2c195c044f05fa6e0e491725bbd605cf023100a8cd47ab427ad1256c98f34e0bcba2818900d5856cd9e960e0a7915ca55249760be5fcbf423e09019a9606ea7cf89a7f0302047c435bb5006630640230590a9e6c37830292fe74793d6408dad35b784ed9948a303dd8b6fe88026df837a4bc059f568895dc431491da90861ad9023022e83577fe5320a003e51d883f86356d16a117b8f08dddd97924b4173d1a346f9fbeef21b5e7295715f2ff6a555314bc0302047c435bb500663064023075a1f5dade5254764e7ac9f092292658b5a7a784bd3652361aed1d631a3229320455c1d1753575b0a7eeedb84b2bfe08023052c36d054b0c08cee5484a92704fbf29cf52992892369a43b891f1ea7421c45485541a62ad61112acb69ad4e873240b30302047c435bb50067306502301deed699565c41c3f45bba9b7cfc195750ea35809a9814ed5f3c6f7ff5b5a7803d7266f5dc9bfacb3858d9e40a5dcaec023100bd1cdb6796592fe6cd1138ee414e8ea78fb9201a443c1257a2b10a191ca6e1b42a90d6431acb202c3ed37814d578b5810302047c435bb500673065023100bb52a6deda50ee7221e3effad987a2e57ba425505b4e8549219677dbe541ad5edf3c3c91667abf8344a3f63f473716d302307c9215a481879299da94658d14ccc7ec36982cd5582c28bf3a5b5f0e755a5ca4bfb972f469ed3aa7a484f74c1fce96cc0302047c435bb5006830660231008981ec3e7b21ef65e1cf0828ad29a7b6ac1164a4bc38d74f2ce4eef955b3ed5ec0af6f595ae46f44d06df88ce7cd0032023100d655a1bcdd5dd9244256e308d569eebd762d2372d2f7d69931433520ed7099467c670ad0d7f915ce02681084735e93c90302047c435bb50067306502302d5c2f2d3f72008e91caa0104fe747192391be6ef8b511556796b49e271a13a0c5386d15581ef2e28a25deb5da9f93de023100e0d88e1dcf5124c5a33497cdf1791b97c843a5048985961f910f5c20c9f6446378b956ac28d92f38ee8ab822c27149670302047c435bb500683066023100ac9dac134fa8e0a23a7c9c2f77594ecf42213bf72493b43e738c54ae7396c1c9d2b06694523102aa9af3bfc72c800a0002310099b3ad6869baf15189e6c4dda7ceec3008f4360e216d46032946b74b3fb67d45d4f087018150582e53b7deded2136c720302047c435bb500673065023100d39387a3232c27aeafdc0b1fd47b98a96b7c9537d9b3196c9d3fe7801e8e5528f330300803eb6923b89ae1014579f6d502304064d88b2a9e16113db81b15948f92311d27bbc729a04025ab4f7eabd4ebb15a4e23fdec8ee0e2bc6c5e027a5ced910c0302047c435bb5006730650230438ff69e6826f3ba9c6b051be83590ad3989c722431ea8d14bdf058c22070cd6b96d6dc8515676c6443b38fb90f4ff80023100a7c29b2a352d67a121f89aea84d2e432371fe50caec45e46102dbd37d3254771bc0ecc0b40cb1bf48f1d54b4a9dad21a0302047c435bb50066306402306247fed4c9719dd5df5c1cc0b8f699bda4dfdffd63cbc3a8e079e0d9067a435455146e626fc147f19ed5e1d8f053b9980230641df1f42f58ae73e5d5d76477497ca227eb82d0cd4fd5c8465660c0b241239f810e7f0fb8b50aaab235249681872a370302047c435bb50066306402300e5547e53950864caa1ac3f3a42470ed61faebe36819e6a3e492e1f1a6b1d73b3cfbdc2839062d15dfaa5af6f39be4b902307a0885bc4863580d8ab27ff0422d945d67549e922cb3624cb3eb86116f237cdce0c080a38eee58373fd3a3397433481d0302047c435bb50067306502302c58e64bb83bfb8a910af3853bd855152ea2c08ab3912c7294cb7d66d86c4ca13dddc0c6030d370a1079d833d4ee812d023100f3e76e77b154132bbd9016341469e1c9479556c1b6a8e01c0fd62415d7156908a5c4fc5c1898daafa919277224c1d6a70302047c435bb50066306402300c3119f3bde527b378a26df39984ce404553715791a55df34edbd52d613825147090ab0af3238f379b5327364f63959002300944f79dbab05f0632b6d9010e248c52583dc5c82b9fac753c7e231c58bf431cc2556016a077e62e9639f68117f1234e0302047c435bb500683066023100eb749438d0bd1d8c43f5508a9083db72666f6b92721813326564731694f66add1117a74a7e4ba4d1e917a25e29b03afa023100be528cb14568ae7e1abe2c3d0d5a5d103b032abf2e3be753d1951091dd12ca0137bfd590277f217d899ebe17a8dd70700302047c435bb500683066023100cbae45bc34ac7068b669cacaef46970294dec5c18ebd1fbf2074356ff8b89b8f9e2c073e6fbde27d28092c46dbdd5384023100a357aee007559d48bff025c2d05c18457ab65cd51f73a5cd7b8a7144079c33471b0a7a9477e9ba91253533d5d6e37ac80302047c435bb500673065023100cda742ac1ee716e10796db3dd238905f0dfef1542224b4f371370fec78741383a806acd9c005a545599e2465cf882fe802302ffcfdfcd17a12f5c13061aeb419442af4285080ae23213c979757c5b088d5563f4fed23b6c05e7c20510d9e6c7b71550302047c435bb500673065023023abae9e71166a7b18c50aa2808bfa91dbd09cbd17919af06c5f33b77aee488f8081f0905e0859f4e816745c2947e880023100aa940e7f028f651acb404e787286a981009c14421dcf4970fca54df2086443a2c14c7d95582a13298e143de99825cd150302047c435bb500683066023100913722d1412b85b8ac04ea1d7575a8aa2c2b79abbd2ab317ec5d93f03e732c47a0cdf853d06a0318c10aafcc415b50a10231009a607c27aa2b03fe9378b1b03b02593f51e71fe8cfea020a9f9379052e1f945261aad1744f9c5d2d79954066cbbd87640302047c435bb500673065023100d252f2487dc454bdbb00d392db642cdfbb6a2bbdc19f07355a10552babd71684f6c9ea05b640ae8b1ddeba23fa0ca24902307ec799388563473fc3c9991dc9db6345a54119a81020091e65b122a06109c566030d620f280cf0903c9fcea483bc0f650302047c435bb50068306602310095c226576617af57c4c7f6878f53795a2d1952977157117c1f6ccc4c43b7886525fdf593e6c50f7898098e0f06c6d858023100a74fbffe34ff05a4939d0242888dd8907f74458590bc8d9a057c9dde84c79a8c7c5fe4fcc1a37b59d1cd4ed951922eba0302047c435bb5006730650230554e9a93a33688c774979b538c9862ce4640957afed868477d920237780e3855cb1a7c2a5f2edeaefc7635775fc18b0e023100e7e7bb114bf11ac0635f256c10def551ae45d34d8410e269d40db1150bede2455b8b5ff67e1626af0cd97895809bd89e0302047c435bb50067306502302bbb91ace41093a9af940d6ba33a743dbea27e3899ecaea3e44dcccd90efd8cebf97e079ffd5dff9111796dd73cf112d023100833edcc63d54f5cfbb0645d1f451d20979cbe155d10239fab742a7ac12608ae40e17fcb3920a0f156c3bca363c959e9e0302047c435bb50068306602310096a29160c6dd6d968723aca4fa25d4f50e31d49c0d6297e278a21cecce6eb434f6e50c946f65ada8cca8add9fda762bd0231009e5d7fc2bdc6925c9ad5db643d9fdd9981a046b09f2783206879bde6da995bdf55e51b40687b1cdf1342d2b15dfa313a0302047c435bb500683066023100cf50a2ad6c0e6369f916487282bd2841bf7d9ee0873c5a46023da3b087468294dfcf245963f05eb9f6d5bf44cf451bc7023100870370f96032ea266bfeed001dadf6dbe3d45dd7a157238ce795fe977593118068be3787c53b1399a10c1817e3df7efa0302047c435bb500663064023038247eada2fca9ef767aa43ad1bae43cc74ccaa04878816f3e019c2849c285268c255dfa8589bf8e638e916d75bab60d02304fccb0c4c5de1f0f422b1a03d0678023856bc923a6707d1ca8f6e59f190bffead57138a4ec27e246672088ff01b0ed540302047c435bb500663064023001b5f278935d7f26eac5050b7b683cb2c1dc9d06e150e823d9dae4491601145a07fb225995d1fc97a4d4976eb34cbb5602301038be6e6573887e1cf7f1ea2f0da1d0c290436fa4081e76269a1d4053e75702f71d0adbdf11b7d97280b934e98623cb0302047c435bb500663064023077c0a5c1a7fc6225c0d51b27a9536474d7a7e26c80648a636810de097b85437a26993f6bf86cf96a7d3f5bb65031b323023030f21b82870bb1d5364101a4574e545bc0ec18e385b39209b1f9cc5a7734bbac179b0d4f9a2084176d28f0ae972e552d0302047c435bb5006730650231008e65602cbb61a8a56215b1be112161d0b47643b12d90fe3638ce4d79f686e2c1fee111950fbfcf5d9b5aa89467c9a77702302960805beafff2a8a4f4b5d2b9aaffabc99e540075a3b39b3164f733a0ca1825af2a1d1a5d9aafbc5f96f6994342b2410302047c435bb500683066023100b4a5b24157dc9e00d95c37e559cb24691790de620cf94dc0004530415b41b78c6036b6025803949d4db968c35acd9d20023100e9b340ad1e81e182e590c8e8124430c2cab9fcaa5a6936460ffe667ce585f1ff9d47b63730ba8b026b11059f7a0e0b250302047c435bb50066306402304e56022be5584fbcbc8ea030fad0c5e1ea747b41de64c1021258c9e1663b8c71903907a25f5680f2b8bf12461ab0f67f02303604949ccbda10e9ed04eb1d8f5c689dc8ee846e2ad4f945649c84f3264c02a9ddea0ccfdb80690e816120152dd8ce590302047c435bb500683066023100f4118a883e89f0c4281539e4d5c1f894d5af1ade913df3849a168fd71750328d8ff3d7207e8d89d77ec9d77b1fa4d4fb023100fbfdd290ca83332ceb67a18d745465352192a90dfb3c335efcba82244b896c871fa67ade09e284f28eac98ca9f27b3ef0302047c435bb5006630640230192cfca5d39cff31390d12f818424bc7b26f832b0d2005a9c56decb5326a122ce13a40636224f1079c8b024b14f2addc023058ac4cc81a51e83c42028e911c3d9fae2e77076862d2851db9b2d4cee9194965690409cffda3e42e2866e31881674e460302047c435bb500673065023100e04e83716eeed7adf52bcae8d7f5ccfe6394bd9db09f85a59431a65507742b5f12746bd5eabc3a2e35635ae58983aee102306bc5e7f0757c6df609547da823022ec3735bbb38d383185ea7a6616d3536562a514c5c81ee26ec56b6e31acb55f218c40302047c435bb50066306402301e50b56f90c5b84595f55d6ed2ebab77804a5a7edc77aa99e767548a8c36af8f38a476922045c02a874b36b4c70c28bf023067fe2bfb3e64001043429ffe2902f0329f23978fadfb5019513078da02a414ccf16ffc0acc398f32241d9e79d46243900302047c435bb500683066023100b49930326b01ec654660e188ae1b3189379ae71f74327ff661a5b7ab7c93d40aa53aa3dc1261d1d08ff34a33fe49f05f023100d4be17506c3bfc1b793e23464f4629384e8aa9d775c636eb8faa7f18b7bcb7135caf018e33e481e9d06af824d76536650302047c435bb500673065023053210fce0991b2093249293ee96b1ce8caf36c370545f891d9bcaf89acb9dc32097cf9c944e6d3457679f6ca41e46b5d023100c43d301d1399d739b167a0882a6396f60324c2b3ebd6b7730b8b30058db029fc66714d515b5c091687532a7495b6eb440302047c435bb500673065023100f43d40a4db98c89321b5745918e1412cb08c3e86b5b65b4c3138a43ae7e2e8adc97300f38885ee698ad5f5c7697ac27302301e81949f1202b781533c507a2a672202801162809f381673b4b4b761b6728401dd2227f6c9ecc245f3ebbc0d46398e470302047c435bb500683066023100cd8f875c80da25f6db1b544c998f1acf3d7745499441d1b6b763414063f239627d1783e921909366551b09123f510b05023100ed1712df00f05c8b5f831ab4807759a7c33fa12dc7430c60a9502b91f258befe8aa7e68a53f66d1f098a21720dcb9c7c0302047c435bb50067306502306c0230717701f4693b00621c034d245ea311c92b3de3707e100a2539a80f0b30dac0e2cc38f44ed40cc4ef2831c29b24023100f2c822c0d7b94072bd2605ba07731120ce0f8dd3543e5e67617ad77f49802271c48a73a0d353f49379ec0540d18599630302047c435bb500683066023100ed2164eaa5e860a83292cefc045b8718511427bef81db42a523e0e99f8cf8f0fa1e361875a59055218946d056024aa7d023100ee25a6253aae5143c91b49a07bb82521b391827442bdd0d629f36eaf6a9208fed478a7fef63785167784b88e9d5cbd2c0302047c435bb500673065023100ba12e3099f8754a5954c9daa0cd0b9f86c48220bef13e61c471be5e2c96afabb82678903e4d2fd843b01c9cd47ed2c7202303dbaf0e25a51b4027e31e7aa8d08bb812fae77ef1988fb224105ac4be0f32635df308520870096a59ca1fb45baed2ed30302047c435bb500663064023020e5932f8fd01d167bc1711091a69098e713cfe4d5d79fa22939ce62ea5f06e6e6a53e03d8f48a1766d4e3dd7d1d0686023062e8e5a32170611a06dea102a9336aab59f6008350e387764c9e6c8792d04e5be27175531253a420ef7aba66dca635530302047c435bb500683066023100b5653520ead521abadaf2e2495da4867f930d3f743306d966e633e7e09564de2c580f5c233ba5e2f320d26a1f28e6c45023100af0db53937f459b8ce8b0e124e02fd701d37a9c104ed0d0a6470343d791f4f32c217f27ced675ff8d0a3f3676ee8fa400302047c435bb5006730650231008d3102e6924828e21dd1b778eb9f8e740007a766774b6a3dfa33b532082b2673f8a0b290d758780b9a565a58437867f00230335d5a1db2d6550d9eacb7a5048d6e96b4188d2524ea17f80d384c39b1e19fadda8153fbbf31fc90d1c0439d849512070302047c435bb5006730650231009e24e4612088c685a28eb70df0146e394a3fb9290a98072ea3292be945efe315aad81b152219ba1ca79c05824e1f828a023069736cdca2435efb5b43ad586b5539ae5a1a64c2037ad27316cec9885e86f36923c78a1f61583bc8f58b8b383493e3080302047c435bb500663064023040d4f69ba64273a9e4062de372dcc5c6b3e3a0f87202f76b5802182dd5788406e03dc5954326839a255ad9258f50c6e802300fa262b3ba304e55d2949eef3177a0a38cc6675fe69413a4b0d58c6d7c1dbef1f3cb6c13e3427f75260db09f2c3bd4130302047c435bb500683066023100c03cc5f0a35b316191c5ab8435d44cd218882803ccc1384aca37a2684bc46741274377768fcff28fd336419999590f5d0231008a8ee867cc45e255b65258ab36cb4b5791496cdb94f9a3723db919a9e03957e2605e414f0f2ea6644f0b78094cda01a40302047c435bb500673065023020c1e95139ea700801f04d8a0366d4dbd1de086df7e1b5d8da916aeb2e8eb92837d429e80fc3c3f90eb092ede890cfb4023100c389f0d48d79c5fb9bb4e494f4bd80d6683ece8c47321521411d0b1245c4a0766d2b92f475acf64d54a7ddee59130d310302047c435bb50067306502310096dd5d222089e42163fa50641be53160da508870696159ed276cd025f0378d89497fe8f92a83c40edcdc9acc98c7f0e702302da2490942056393f83006d546f7ff3bfcee5b0528d1287211da5c83cda8b2e7c1c13a0b99f472e65026c6fbe7de77be0302047c435bb500663064023011fa3771d2975aefdb0d33fe8ffdb08a99a2661cef03b381d975d95602918a58aa1f6f3125a8f67d3106bbfb92560d3902306fd1a7fb2527d2fb48df8c4a33b59069200cf128f0a9559ccb70b8933b264a66681c6ed3ee4c73ba651800197c61e76f0302047c435bb500673065023047fde717757ae2d664088269b88efb8bb4b94c792621c057ad0568abaa2fb69c5617ec46ea8c7682df2358e0a41d87a102310088452d67cb5fff018f5906805ba10fe2df25ad9e60af672e9bdce4b6492ce0d4aeda5230dac578f7e82592fe61e60ea40302047c435bb500673065023100a2a56510a6b70966d938c9f86bf1cce667c6969fb6b8c3a1abc294b0ad96d3718852c4e7d3576b54b2fd6beafaa6bf7402305b44610ebc9133e5345474cab37f756401746cea8b1961ea536ff86740dd264e93429cdafe385c9a7239d7bca0d0dcb60302047c435bb500683066023100ba934ad4f5a4cf4a9cf22cbc347cb5a3ff2f2fb1677e18e178edbf8e2f9352f024e5906d81d8ca083cdd52fd77c2b5b50231008dcfbeec9cff762971815e53fc701da3737e76c7ab27ca631ad48f89fb324acd0b8f6c25ea4243799e61868349c0748b0302047c435bb500673065023100b7a457105268cb684c8c078a4bea4d58f29b60a38efca03b43293f6f3d40a53fbd9f5844ea3865daca5777155555f14c0230444ee6484d2da56d3b700ac140334466f3f6fbceb23232be7ff00ec79725c7a1c9f7c9f27a0299291c563010a1d23e600302047c435bb50067306502303068342c23e80b09743e6aa25470ed1dab61f005295fe72f2c2ddb52df2ecb8b5a899e1934b69dcedb4229a424566f84023100ee3bff2e014427304fc50af189696a13705577e45a4d49c25d91c24b0ded7bc599267b5f92c983fa8451a7c8e0d8c4870302047c435bb50067306502307b02885171098680de359804b27fec0e5ebd359ffd38384acab713011cb8ac2366d1b9aae963c41d2a31ce5fbc7a6fa40231009f8985babed13c898f83bfcf6e9b53f2e1bfbc0800b0361fad4b636e37d2b340af89f3bc20a2739447bc999da2e5e69b0302047c435bb500683066023100cc7ffdd3e7c4366096a70fb250ff67f838bd556039ce939b4325310486180958d4f45cc02771d2956611af851aecc320023100ed69d474ff69843eb62194cb9c1d93b73244e912002fbb904d1a365b62be78816871571980ef87132aa6b0ff2d588a740302047c435bb50066306402307a669aa2e21aeabdfc916afb0a67574565bb657db99514cbc2a31a07b2487a39d7ea02a8861e6c917e126627fe0006da02305d3eb8f1ffe8d0ee98f06126dea8a60e3f7320b50d93b7203d5b3c179f6f5ff17f238acca923c4ec9eea7671c6c73eb90302047c435bb50067306502307392a56d12b1afe918c1c41c80289c13a16aceaab5a8632903b78bdfd2dd6ebf374522ef2d5036f0769f24e5cdb2e607023100c642b8ef63abfa4cd055a8e4276392b2a40d3e13598a1f9548a002171326678322bc8f5d51e459169d4f2b4ab7ab801b0302047c435bb50067306502303f3eca10b267bea62136585cb2c1edd8476f68582630c1bbc67153612858a713e5ce168f5f5d99a38caa6477a4c24811023100db464c33b0a239faa54ca5a481c51731250299908a9530d537a3cffde576f26ecc016bcc2c57daa5b0a873e88a8c40860302047c435bb50067306502301da514e5829468e64ad77acbc28fed29627d8cfe05251ee24292e3c810decd6f95d0504bdbbdf4047d98c18f535ad2250231008ee3f10fd2532d876ad26a53d88eea9b6b2a01fa1b1e7b92b01e285f9a5138ff4346e9e54cc2f99170d66a43a4d183e00302047c435bb500673065023100ec7257cfd795fd8424b5b688d4d2027b04a1e487920e44c2d15ed607d8ca58848550f785186308cd9ded9259ff65cb180230336422b0bda1d911ea19a93914cceb59aa2bdcff09596af6d0488f4480a14078682a3f69e2da2ef99ea2c1148563cb770302047c435bb5006730650231009c05bea86ebf8d9174b513656f3990153550262beca7e5e781a144b6f215694d0b135a1ddc6a0033311736fdc47cb62e02303f14a15a2793b23b3cd452b6af21a9f107f12460d31af0cdec891a07de676c41033108e2cce87d11b574c2c449222cbb0302047c435bb5006830660231008a58e58cc81a4ac18909c088bffdec3f40154ef3c36da5ad4af8635c4fa404ff8587c2af264bc527270a8d46c8a76881023100bb28a629a95cb2d346b2812eb8707adb1b6b9e6d6a23492e6364905d73b43e3c0ec8a3cd4f88846cc5e4167df5cc65b70302047c435bb500683066023100842b827a89ae4831d16967a1bab241544a2edb103e456db89acea7fc7f7af89f0c148a2d206eac5d7e495a02f0195706023100e74d7f0d30867c607610d240f4dbe728ba5f1fc0c90b44f35b73af6ca979cef7473db7ae096cf89171fd079103118e250302047c435bb500673065023100baacc2eea7f0f63678600c0a244c602d9b54d1f89e2db2c2a4cb4f60994f30f6183dc5bf7f8aecc2b5b531a9f4383f500230070c28c48d70c1820fe309ba9dbc437c422e8b77bbabd02c3a51a7af73d37268ee9c729e273650ab3595fe3e88a76e050302047c435bb500673065023100dc14a479061922d8b2338ff8ddabb04d69ace661f6924b50d3f95b87de50ab98aea21fe1ba06a1cf0624c34329f76bfe0230753d9f51ba2f983251c15d057226f043f5c4b5f10cf9e5c04ebb18710a32614e22ac27d315cfc36a23c7a2f624f90aaa0302047c435bb500673065023036b5b5b211f108f7f046c59790db216ea1902da0564830824366c30a74472db35d06cd7e9b9110504c96671ee8ea6750023100c36a5fce51057884630d372b689b7bae4d977324e80696f25fbc7ef596873c37613e53e2533f834c3ecea12a3df5a5480302047c435bb500673065023100ade5d48d226527bcbd8770aff11e6ae8173e629a5c9da1843759618de27020906a255fed81eea9fe2a78cc30f13298d402305d339a4b3580e43060bbf18d1195b197ea824ed3a9750c3be5df68956987bbcf1b05d3e2927ea2b29c89d6dd559e18fc0302047c435bb5006630640230370fec94338700c040a65c9392023c568173a058e76f27b156bb95a0d447ae0f9e4f36c012430d66083d13a5e764fe3b023052cfb9c45c96b9a80ec39c7bf2f6b004f2e084d807aa3b8e24b541d4f25633e7bf2398431c5258ef4a3d7b9d1a7e15de0302047c435bb50067306502302a7a01163352a8705f12a64cb7024f62f223b30e10f46e24f74414bf3bddeff157c79d5ef6e77bb64f7276d12a81153f023100dc515b952cf656f39d7e28e12bee4f5e79cd596dc707fc816551a8bd7e0062f9d36a6e56575a0ae2c2cfde17e8f99b770302047c435bb50067306502302cf1a6177bf976927ecf86986ef05610abe4881f993f77d8787f1284cba3459ea5d7a9e2cf4a30787400c348df59e50d023100f806f172a9be4d801ffd889abda713c843c7b20a58a687a7882d9e20dab26ab46076aff2ef4a2b4777092f9a3c4bd29e0302047c435bb500683066023100bb737451bffef2f937af977719a5579c48ba0e23a3876d00367f8f0c7fd63776f797bb7fa09dc3e967becb4dba9e5ee502310091bec5dd234a6ed2982cbbfc70910b754d5c715f290fa8ab64321f91394d2d1438c7f75be7f406989f3d94f8f487ff250302047c435bb500683066023100c9e46bd2db00412f8cd89a6ccb8f8c07b35ee784cc273997bc5cae384fe7a9eab48f3436e6094b76d9cc20c07e3ad087023100a20b02aee65ed8431cd04409421c823a482b727466112c663ebf3b9b064a049b6971af030df271496123eb322403a6540302047c435bb500683066023100def8ee2f4e1025ab2b27ad3f17184e158166e50317106f1434426083f4ef1f71fa7d1b8d9906360c1233ca04ba3a324e023100dc665eb5b5fd15180a1a1b46d9e201a455c1ac87a273753709a5b622b6ce258cb7c797851425908b1e2609f159fa2f940302047c435bb500683066023100b15e633e806c4589b91c32c75f53137fbc8346a59c0f3c7713ac4b518d0e4e4c8ebf62393366d9c884accb7c7eafabf7023100b0999e655be2eb0731f23786c34fbdcd5bfcbfee1f4dbe63f89dc3a0ab959828e0833b757031966542d712f6a96cacad0302047c435bb500673065023100a56eb4c441eb31ba034ff6a0496e79d103203bad9b2b576d16db04786f9232f7b238c01cfecb68449b8c93d4de47a745023077a2e3b04afb624873480290f2fb66b70666d8ec2cf0a0047dc32697c12e2e12019e58d5bd54c9eb75a201d42b259e440302047c435bb500673065023020848db4eae47b7101125cd32eeddeb003af78e3ad75f1dd7bbbcea3f60cba2a58a2ec87b6f4a794ca84708f61dde051023100b3810ce31ae151d6340dd8ebd7399050598e07b438be8c5697cc24b29e462121ba624d91412128a8052a7fd81e05280e0302047c435bb500673065023100ae1904dc978b8d53335c0f97c609e8dd69f5e34ad3cb2d40313ab7d8488d581038add52a49605f29c10a0bf8bd585347023068d2834fe37aa69d8e78dda22746df1fe3d866c9d1630feaf3f65bba9c68e2dabcc1f8a84668105ef27f3edf675d73450302047c435bb5006730650230465cdd3db2f17175f5a1d7b36a0c97cd09626104453ce7f359ec31000ed9b74e5c8efb349545c2a5ed02ff2ba5315bce023100c9d0e6e72564e0acba57715f39b19204411f7310725d0464d5b2655d62003bca79bb7f692470545c0af9e8829488c9e60302047c435bb50067306502306bdd3aa45c7fb6be032e691e98dc3670a67f9c97a46a3f39e167066ca3cb4e7f3a4c5b18657ac71b1feb0d39d2a22a51023100a3f5c6b0f3916c2f2dde58da4cb860285fa4bb8652403209ab18808d3b0977d51f74f955506c94a672f116165a6bb65e0302047c435bb50067306502300c24916ab1d39cfd4227298512816815f236a4744c313b70c97cc218f8b232e215f6e0d46936a47b8b54e2818ce18cdc023100edc041570f9fbbb75975224d7274d7edff9895c2de96cbe90315236d1ae2d22073933b1899b8e7830a4cd2e8338c68a10302047c435bb5006730650230648161e5de45627f84a62cfcf0cb4ff72b629c8fce9791ed42492a7c601c9cdd3b1f447bc6107d39455e1f18c8504035023100fc8a32e4f6a97cf6b729b729512b558d055fa73cce3092db4e4d84613b29d5026d805d4b3d2aaa10a51cf3be71263db90302047c435bb5006730650231008923caac49f6dbb166a24ce6703832ba1aec28dcf40314ff31d68f69487af7ca7478231a9c6862ffdac2c42418e4b6b102301ef4fe4888f8307fb792c62ed81b78f9af1fbf24d41cf4d1cc2df4ed6911a39b1ba6acf5a5a510ee8fea9bfa28ae45300302047c435bb50066306402306e90abd01814672fb423a5e98d053c20ecb7184fece3a04e16ff24f18aac1f6f1edf536bc8bbcb36675bf40afc3db32802303026eeb107557181e67d397d535b1c4be0fece2994b90888afb7b157a50ca22ea46b3c88e27cf8b1901232f462c3fead0302047c435bb500673065023100e1aa292ca63b223ec2df2ef5980cd5073f6f1dbe765c7caf0c30e11eca3003e8f0555070d018d2fe9e5f5261acbd4cb8023050ae738285b610f3889b37902b1115c436375702bea1d4ee15576f6630d7a6359e8776772acd0d391a04cdb392e17a8c0302047c435bb50066306402301336df00292006851c5598fb8df2361a535b0c260738affea15135c66b2f01dd32e5d34500d788449c73debdc839df790230210784d03f569fab975166b144a5c9b8e4a369bfecdb229742a5dd378bd07fdbd3b9d7206d74b47c1c3512934be8f0bd0302047c435bb50066306402306eb7d060434929fec0311d095f0b29f0d9f90a79e2336d5a31d603bc6d38dae3ad0a28ee03248de0c79375f4c60a46ad023003d4ab636af2877cda156121f3cf5cf2721235a34a7ae2993d22bbd54a75f562492bff60d92702d57fb1d92fae5eb6580302047c435bb5006630640230057dc101fe29826ba24d6b10033549deec811597a532739b160880929d337c3f8abf6a4773f3c5a1c62b72daef0c92c60230375a592d393d09ac004ee47056d3c2872e2a3653061f4e125c8ec17ff3057395563e2bd6f00a2da770709a622bbd38100302047c435bb500683066023100e961a1a91c5b216d4a0e7c9f753d0a69d31dff1d900797524b9e334b56df77f07dd5c9071fd9ea7d3be554d6d32b258d0231009b152c82321f1a3d6b1569accc6437500b853e3bb49a7e85d52ae089c393c1ed439c567980c9666417cebfdfc5f7bb1f0302047c435bb500673065023100ad0f18270462eb1b068e1822a834d25c046db3065afdccdc8cec9a8a8835c7a8e965e202486af1a3f696c0d60e2937d302306e35de37fd68001c8125bd65157b47367da5411b9fee0a3d9191e3674a98c91c338ba84430f45a03f1e37330ea4885930302047c435bb50067306502306db9c8c0ad166ec7c36c98be10926c69bc8e7e7222c1474b35a0b7cfbf7f8f5d7565db395a462055d26df5d9b2ba770402310094623f434c0d5dc686a71b770e3bd7958d472aa83f69130b211713135a6b1a154cdd953ae751a91592dd23985f2ef64a0302047c435bb500683066023100ed209d6028a6fac001fa230b649b15f02db56a249e8985f9e83f4a2bb66dd865fff8d69885d314dac5d82f5790e90c83023100ebcf99435c3ae09d98c38abc80835c2497bc320431435a39f9cd63021c70e69428fa84b8514c33393434d18c1d87a4010302047c435bb500673065023100dd3bd068eed68cdcbace19bf79eb0a76c76cd7d51c8fc4bb939238e011ca2d41f6dcbe7e72e97484da252c3e08b0b8c002305324dded95bd83b39e1706b8d0cb4056c35ac92819dfaad5440a06dd1846011fdb16fc8cbd23bfc399c4ed528e5ac4fb0302047c435bb50067306502304eae3a32027f30fee8390d7da7643c8fb97f3da6afa1942c9705186cedfdd36312b9093fefa6f92507ed19c7048cfd8d023100bf2302df7a66d3e4d6b406ef3eb0614d3f4009b745ed8dfbebd59772da148af4a1d1fe6fcf28eb1fc8fa70554a489d3d0302047c435bb500683066023100cf0824f35a5cd540295e20aecdd6531865b31020b40bad4344dc16c0ff8d5764a572221b32724f8b27e5d2c6b2530945023100a253a5dea88d2866338593b6684d98ecc86638926bb2dbae0706196ee65f44dd93ed7b3cc5d1b74346a8306b672e30290302047c435bb5006730650231009da31d28bbe37963dbf4e99af153d5baecd0d30b1733c4fd0c11872937947b9689f1d231e81736fe58da7f4f01dd88c1023031e2b75f01b831f5212b59166642247e952dddaf1ea98d1c98a2ae9baf4887e7d4410375b69b1ae3989a329477acea570302047c435bb500683066023100ed536b70cbd8081eb7ac0b5eecf4e5a3674f7f1423fca434e71857c37eda76b7f670438f228c97304439d39f3f6981bb023100a4dd553ccc9f69b1a167cb0c06549f000770dd3b4c51a35db1475de753dab86feecfd8d0f6b13bd495f70117618c791a0302047c435bb500663064023004330387af712b4a510c94410515d5ca1ce38966b1e0e60635695a5e42f9b128fc69add0afd8d884605691250085eaf60230193076ea20f34c0a8e589b04b278b3e4624fd17d64fcbcfbe4100e741ade89076cde762efc1d8d28e8f39a363aa0b25e0302047c435bb50066306402301d03cd20ff2391407d1685fa52874e4aac35670a2802553428d306f3d9d0cd3576ad0ab02a21a279fcbf15a8f8ba79f802303dddedb1375733bc436cafc3e106f1e9cefa103f96f87af819a7465a22992fd6f02e9b4d9028958fd50e9f1ed9de7af10302047c435bb500683066023100b8f7c6ad5728637ac7c6df6f2b511c648c883250f7e4813bccb4d759e2e053ba2c32ad0ad3a3aab12722664413c954ee0231008c23070961e317747c58badf817caf3ceb775eda02fbd73ea4b51f8becb49a8b79682674fbf4dab30e7c2956fa137d630302047c435bb50068306602310086a8a8b0f3cae030412f8e525c5b2839f36f5f18febf7f45e895b30e2aa59633091f1ce4ad5cf64d6841fae349576047023100880f4992f770583f77c17eeb31a15514cef2bfb094f3760108392703bb29dc9ac15d8d11f7f52e8ab63f599c50fd37b60302047c435bb5006730650231009ec820bfe5333b818c57f0d2231f89872a3925db1242036c1e34f56554bfc181e5b40919cf1dc4a21d6d575c172ff2880230609a0266b51688236fd7fc07f3295334866cf0894a5ec85a64f5b8c314b1876bc3f2feed795d5e5d901aec9281aec9810302047c435bb500653063023010b43dedc1780b3451dc31e10afc031de658eb265210ada7804ee6f62c335ab729d35c05546ef7f92a1026cab2f7cc24022f231e0b4366a22a34cd1fced53592e662eb6ab3f29a12391eda254f94b5f1c016d856524b407051dfbce8087bd1154b0302047c435bb500673065023100a0a878376462abede03d2f9bb2228d9ae0d1d4504bca560915e4837a9c6f9704ab5b2d43c5b45e14aaaac926a8c132ae0230683b7c3ffe842fb30f450355af953a425d3552c5fad11b7592b4915bc263cc5fa5d75616ff94846e2bc2d11b390b2b1a0302047c435bb500683066023100bf12312f304c8159eafe74271b6bbf60181738cc52197fc69d6feeede6f043cb3b9a7e893630b1b4ee20b370bf1c44c1023100a012ea366931751520c5c2474dec007f41b8b5b1e76a0034647230d4ee221efb286ee120a324f076767c470b3ad0d23f0302047c435bb500673065023100c29b4f142490e0f92620fdb58279b9868251debf29b66e2821fa6b6968243112a73bd8e94787101435e44fa30b5972d602301137d426abc73bc7aeaff114c74a07809c03338dfb682ad640cca25d940e3410279877b075b78b1b5a97e6593b0837520302047c435bb500673065023057725ee4e3cec5b5e6cc96974d7b6086950c7c58b70d6b5b839196f7252fd04c57659ba60f00159e8379ffa8418ca191023100eff2eb5a59c25d902fe52f7495668b1e6dac3966a84eb71f66361ec0695e9a4f23dfc67681c6f055c5adff8cf69316c80302047c435bb500673065023100c86359285e983acefd826e7b74589170ee5a4a0de51cac3952c99d34bddf6a0769146b33ac88ab86374f81db39525eb802304923fb11cb782950649bc1c31d657f8ba01e4275e886132568821f998e60aefa86eb298d279607deb11601e946e2c37d0302047c435bb500663064023025e70e9e7281bf8909d7a37affdf96f6abd915c04014e9eceea2e7eddece7c92e3517f9c02c64c5dcbe5cb424c5a00280230395cdc686a6b508e23e088e077f6982e522dcf911af8055299538b8ecf20c4df49193f8b4a6ff57cc76b306ad699de110302047c435bb500673065023100890a86971e19bea3fe3a1d6fd94e61c013825917b23ee2fa7b86fa180a7ab2ddfb9d5b4b8a4355acaa5a6a553aa13b3a02303523297d7df2bf4c1ceb70269123222e5d407985f86283834e013d8a1aa07e116c3259275b198d4813ca0b700cd66c7b0302047c435bb500673065023100df8a3a0e98f47bf5172dae56cfe81305d3f2803a23cda38dee2c4e71f3f7bd251ca98f72f178bbaa82ca63fe184a605e0230381bb2bc83379b8c7c60da32087b821153077197b614c5c58a36a6d305d0f45681f17b4f34e56490535dedd821c05e0b0302047c435bb50066306402306d9ac3d443e7302bf248c3a36742ac63ae5c60b1c77f13aff386a691583ce5a46b2beb732297c31527777cd8f6e8c0a40230272fabb31775ffa6a7c0546c44a1977b279ce9c7b77f3a262daaf6a66f4dcc23315398f72640a71c6064a2158f82a5a00302047c435bb500683066023100887d34cd7108c04a608aa5fa554de82890b6ede11628971612bd1091e8e18f59b3f0f8b8a3376d5446949d7c056756fd023100877eb2831333656ac0e5977796570dbe6cc4d2099b9cba4ef4cf58704d847b4ad22de300f27ccdafeadbfa980f57141d0302047c435bb50068306602310082e953c2dfb2a472249c219cdc08ceebcb39f60cea0439629b58f2c6c6e75b7f09d3472b3a0e84b3bbdf062276f7084d023100953d0c4bbaa5d87fbc734561640d7dcffa317b79edce3eb6bf72a9c4950f246072fdefa4b49cc1d06a52b67d27e70a7d0302047c435bb500683066023100bc732d5ec8fe3a25251c017d91c4abea5e72bc7661d8ad5980aee427390e8b0f5cf4a71dd46611df5bffe3de8f595a93023100c91516e56552b38b041291becbcb18a865c9e8650175e6ff4cf4d9bea08c9fadc92c352c3760af968c93d9cfbe25f02c0302047c435bb50067306502303ecb0bb0f0b1d2b7da8bd9a7c891be886c549c8f52af84b5ece1091774adaf100badadd342ae92bbcd84698583d2b395023100f3a7b63727675bbacc99cbc3ee36142d54c06eb36e284c787299c42f039bfb47c446561e094c138058dd7bbb15e624200302047c435bb50067306502301ee4c87bc2db87ee1be0dea60b223ab8f4bcbb5c84c49c7a16888ff5a206b037fadeaf9d08eb874d5b4be107ec34b8fa023100f7db706edf2f7a674d74f20345a25e31b6a58ce5cb58ebef5653c3250cadad2c15414c497721e086384ebf040631c67e0302047c435bb500663064023011e48c74736b5bdb6ceccf9fff40c5178c618a86c1eec74b161ed11e48dac246fc3361f7d0cee865f71a4a4c1502db100230480be380c14abdda0ddcb961ef85edb0e13ece45a12f325342f25e0d8ac3aae6886992cadc54a8b5ce8c55b125f367a00302047c435bb500673065023100d1ec3b9ddf73ce15d48ec3808b0d39249cd03b1f442970c03091639d27252d484b1ca79cabc9061b32a4820f69a2982b023068cdb72b7f972123e78f9456fd93a5d2b1c8de9e502839b4bc3b2c14d7a006c3821de65a5b5cb3399fc72c159c0ca3d50302047c435bb500663064023004111c6c2c22b873f2b94d76fb589762d5eec599a064449e44dbb2cecb924031dda6d78b45da16caaa9b466b41d5ba4a0230520c0973760ab3942a8ccf9338e5c9c5cf79788627192931809f174afb0c933c85200304457c95ef2da270d6632cc61a0302047c435bb500673065023100e3f43e69e9f8be198ea75cd78d7c8eb07dac5693a04bf408eab468d6149e9d41e49fa47f8cc9a375a193a520e2fd70f502300ad3598c768175ce4bc9e2b978c4261926855fcde4a23157523cfb9d07079f185b28ca386716265214c4c19fd477809c0302047c435bb5006730650231008257132a63d097d89133a333ba98a25b7f20d252b13f1f836b91107d4dd6678a2b773a462c90eddb1056aadb1142b47802302b792fed4c2cce864e5e259c3f0a215eb6d1d9586c5d8c04ac43f442850272a66612587414d3893efb2fd2133a32edea0302047c435bb500673065023023ab4381990f566437b25b85d1fb8402969c6ec64506dd2d3f5241661b901a3a6782a02d832aa4a93fde24a54105a680023100f4a41f9f600a823a333a1b388bef8859511eb7431ec580d51deee813f02a2adecc5e92096ed51a1dbe72019300166fad0302047c435bb500673065023100e6549730f0543c17a9b4c96a3daf6df66eda344b71f62ff21e5ad7ae63005ce2402aadf0902458ec7c5749e80be710f402306229990b9871a7111cb91198e57f8435f237ac060bf53e1db55f43fe407396e4c28689f74323028c11ad26f9eab4dd530302047c435bb500673065023100bf375d7d91614588eac6caf3d19f932a3edd38e76ff10dd82675406796a476456977650d5bace0f7d72cffd2fd3237d4023043d82733afb5b80f222c05da4cab583f1e788850448853db887b53229da0a33ab44af6ccba12f85b1aa342203e35925f0302047c435bb50068306602310089e4dcbd56ff7c2c175ad535b3c7d329d1275916800d01aaae3827e81767adfbc5a03f7f0f57dfa661dcee5d509476d4023100a3ca4c8bce6438b46564e79f0f672e4b32a599127ca947a9bf4e6c4e3ee9fa038357bbba2b558dbddfa8eaac13ea99ca0302047c435bb500683066023100b3026af2a6ea7f92b3ccbfd037142e96ec93fb918b05af8072dd6128210601a304544128c5142b88e955e5174c0281410231008b4b97233d12db4663c0f2f22d5180eae742b2932f2954613e482b7e3128e1a6542635871a2a219fbce578302bfbe24a0302047c435bb50066306402302a218e0dd81890ad1647519f9c376e8e96752ef594db444c253a0d480667f5cfd5a352abdd31098d348aaaa0060a37710230305ac9bef9cf14609246b85f810d9a3fa0b0ed8a3373c327173ff3f0ff5b46b2f898c37ddd22108054db608412e613ec0302047c435bb500673065023100c87389935a68273cabb4289f1071c0678f3b09176cf630174a5866a9e36b2f864c814f84c5d0d41770a5322f55584639023022cca63dad354072b3bafebd344f32bd8e467490f7c82d2a92ec74a45468c2b1b15f615d34f233122c2e99b230bdf0a10302047c435bb50067306502307870c466a2a0cd0704902b215c153df25e5216f85ac32dda91a87ce5bc534f9bc35704e23f3603342bf2114d2d4e0155023100ffdefbc7b24f5e0730903d68740e8da7a5594624c778dc93a0906b31774fd79fd90e8f333f492dd659962b755320bf1e0302047c435bb500683066023100bf938d0c3554e0bbf975b058d33fbf4546a9759b7d34e631986d774a89f3507e1495b33e1a2d89032de2cb7d67987f67023100b7b2417cf0e1377bda57cfacf3307445fee0311ea62646c692f34f28d136f9e77a61af9d26bfa8c95a0e8c80353fa7810302047c435bb50066306402305785162a2523a92efff7da58d32c4e3fd98afc006f17b34987019c72be0f920496f59b0a75933a5c961bc3cc88e1072e02300409f2a4a5d17229650d00c18ebed637d487b6f4a0a79c116187c81f476d919c70d5333e74e205a0664dfa761be05df30302047c435bb5006830660231008e17f7cac4aa82c03ee76678c2c086c7fb7afcfe76f92254f06dbe00761e4b21b22815a8fe8720b846bb925b3cd9370b023100c1c4551531cb10c99a12bce2e0b21296e02f3423870a9e56a09d5a46564080eba0cee3e10830ae90fbc2d264e384b8140302047c435bb50067306502301840284d2b1cf882b27bc96fda989d79e4a11611390317df93fa13aac32c583e3c074c3c23b3ee0100248ef6281fa4cd023100f9e5c1f93eb60620febe515dc0240b843dfd8216d14e10dda8d15e2fcc09580193082fbc4fcb6630b3f4bb07431c7b820302047c435bb500663064023035ffe5ef3d7c40a368ac31d324c834b42e741246ab2c3e7e353607499f8fac98e254eb50a7fd4e6b907765cac86f398d02304be96d69a5a8205928fd5540eeb7ef54a6294501fa82894fb6fae048c7f13aee1b0e11f76a76ce56d6a137a4f0c4acf50302047c435bb500673065023100b6c5dfa57ecd1924cf8d6b112e45fe4440b949cf7d15822655d795b0ae5bb5a4c655c49bd30d5b75d84906629d1114e90230015e7fe7848c16146699b274c8e9f21df8f484b0ad82aa028a58a2b62d3ab09c2ca1fedcf93789b35dcc6800d845a02d0302047c435bb500673065023056377d38ed33dbcc31680d4abe92f7e579cfb3cf8aa18b8b9c8792020d8aa939338b3d5d845a31e954205f59651de4a1023100933af9e06e92a53606eef7c30e3253288da742163caf3152fb3f089b77b7c1a1e1ffa1ff8f1f05b6abf92057316499eb0302047c435bb50066306402302bc42ce4e6973c7a85403a7c0cd6e16548f61e4bd692659a0182f3272f0cee1798f88d3f3354f99cd5dab172f098e6cd0230694a518616092a0e062b89eaf1401c74ff10050dd692e818b98c92b3cd592418af35822a2d379a81fcc3ad54500b4cb70302047c435bb500683066023100c7d987ac2652b4613f1eab736c49e67846b39216096256f423e92d17a4850a93107bf93df8f1ff8695b388bda45b8b67023100fdc9f5b05a030ca1646e3dc88f5fefb645e9b04bf8780f9d774de72b5222a74aa01e0ab2210ab4cbbcadf086d27f3dd50302047c435bb500663064023051423018fc3d3c996583dbe407bb32e54d83580bc4d1aff07680d6dfdb90c78f7550e357a0646b29a6bc2f2ade0caca4023053e9790ddd5203d2276624e064d6e0188edd6aac9a1a134f2b99a70677c2c39c84ca4523d83d26c799fc6a0d9b132aab0302047c435bb50066306402306844e46a1ac3be93dae6a9a477a16afcbdb181f9844c7bc4151307d829ea344b76ebdb3a5639ec24fe09a431a14ca5da02304a2fc04ae0250fc35caf8562c21b2d924f1eab3d345c261fc757e654555f809cbd8817b3ddede2208edc27ad98e725fe0302047c435bb50067306502310099f186748aec4f7e67918194d141fb69eb4632faac7379f513eedb8b3f5363eecfbc4c4715fc90c5ebfbca2c53c2736602306c4b8b02715f1cee8404e4e75103f8dd5de1d9c4c45a09230b55c5c7b511d55bb5723e59f237249708f2c893dd0029370302047c435bb50066306402306df29baab6fe1e0467b2d00e9006075070a2c9c6eaa17b0195b92d5b1dcb5613325a94a1ece0b6d06f208bb0513de06e0230413d824310a6a34457b153964680bcab5cfcff142950f92380645234a4cacb31c8f537b7ee7011d0a5c9409aa358cc370302047c435bb50068306602310084d55a0d3ef57d1b339ea5149046e8037ee5e093f874d2d4c87256ef8f12155bb9c617f77cac2ed2831ade740c4f9b68023100dea83098593c1cd0f5462f455d7add63db9e42b0a36102ddf5fcda010f45ca22343c81bb9aaf07340859d30c07efce630302047c435bb500673065023100a0de139c97799cfe5e271619ef147bcce881cfc74a18004de8ad9a8711233da2e15613389a4bc810f0ec61b0d291805b0230226ff1e1210111b345168cd7ff795ede4e6acef2f036cf58df2511e0e19277e7179104e3b11556297259f4911f684e320302047c435bb500673065023100a4926969ebc8801f8dd45fbccd14f702c6dc090390a74ed8ef160241dfa06a4a1fd276b29f5dc9629e3a64b508d4693e02301d83562aa3f7de3fce3e1c10cf4a9bdb9663578f3ac6cc736a1aef0e33aad00c23bfe3c421dc5c155028b2c8a53ea5960302047c435bb50066306402300a3566fe627f7fe9690d6d39b983f3bf68f8147b9d0628178ca7b592144fc052be44b48cf3e9d4e1c7264ad9f41b49ee02302edc726d0e74aa84d919cd5256ef84275c2fec40bb1a728667debe7a0684876b0d6db1f68218d3046d861b25defd69d00302047c435bb50066306402307570a205d7ccc079817b7bf034a9bf1347d22f66800606998787b81167311872a5671ddbc075e4ac23d8db90c2d34e8f02303dd3b95346363b365d4470416c233168983d0e28f8f8207fbc721f206a818b0617a46551d690eff343473d7d1dd505510302047c435bb500683066023100e313cd8da1ca26d9081c2af393100b226f9f91978f2740e69f07d38a04383de1c392d0815418b9e5d7fcb4ecefc3cb7b023100830046d64b8deba74571656d57c97d4cd62b9ba6d677dba1fefb32e4d196baf184f5c3ff604f9a92204a1679af276b070302047c435bb5006630640230039ef1ffc7c7694bac65c9c032639568160e50d2734615f5861feda4602e667137406d70a8619cae6a28238fddf086210230593716835b320a58dee2b309a86c1c5d27f20d99a17bb1ddb5ea714ccb9947d0fca87761bd24043ec46d63c0c8c55bd60302047c435bb500683066023100f7ae4cb5ebe40817c5f998e656862363fcf4205cdf2d044f6806ac9f7b1e4cf8379241d0eaf8087a762d81af35414439023100de195fe5684cf2c45c147158066b30b429d4d86c12894b4281dfa70cd06d206f6ee191853c10d01c2d7dcaa1956991320302047c435bb500673065023100f96b2623439b907a94739f2878063542206cb919d9e8062d5de2aacf9f103304b16ce4bebe2d350235c32bff216ce74a0230716e7a553c0f77ceb33d6ad46143470459a10395552287298d41362f70d1e3c6e2cc7bf4121a4394252428a9d5984be80302047c435bb50067306502300d2dfd4133087e9c35b8bbd5bb1c5064d7f1a5fc6bb3106d35ab72a755e3d89be43abcc4981cc2f53f7532991c98b4fa023100e63c32db8d31a00015e64dd442cb9c1c639166291a71d25fddbf7d5333ce83b18ef610fbabddceac9344d826b876ac840302047c435bb500673065023100dbee574d338cd53665785bfae30c67fcc4cdda75edaae7a2fa92ecac3a2596577da81bd2d6e2f47df1892b8715279ce4023056961380fcd7c0b73386c2c4a0df4566ca2f85be585554699ee30968f2ff49a00f252da61d7dc8faee86aff9397ad8b20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c0c6169fd1106053dfedfbe27d8128e55d84002cee4ecd2b5d22f27837eded686bb592631f1e9c5c283256890835d0cc023100d153fcc8d66326daa3a6258f69678679cd65aa1d57365a990c438b8b91652a94e9f3fefa2d2887876af11b384920ac640302047c435bb5006830660231009ed70de471c24ac6d050a18f4f3330c8aec17235e07103b9b8cadd230c85687954b5f1c207eccee8d4d4e821e36883bd023100cad301ed8de2ed309da285a0417fabe8e05ef017e4c3278508a28c7c020da9d9fcc350a008571da03c70c44d1ed179910302047c435bb50066306402307a5267007b9864b294b664539c35f7d0be5f97c0836d06a8c8f399a9af52480315a8815ef726abef13e13afc588bb9190230630390c14833cea4545ca4c52e3f50a8c9c05c3b0922f59484faa52240df7ac1efe8b92a63d82383d19466dbb135f1cc0302047c435bb50067306502310092c64772b0124413ce2367cbd6c976e922c8db22319726d82798507864d0536b1f53e4a84c0b0ed79e8a37fd9c474b53023008c32baf281e16dc35f2fc5252c7a22de8a7df0bcf4ff557da067fa0589d1e386c56841663e9627d9d0781a231ac56250302047c435bb5006630640230400aad46d265567d309c3549f26780a8c30bd5ca69fabb38cefa06a656542da559b2cd5c952387f24479333954795404023023f33c667272d6b0fbb557a05c5a4648f1d8446c6c45606893020a524f77951887b86620c2c7061300c2f11491cb9da30302047c435bb500673065023045ca624252594ab34e95d476723c7d041736304692e688411b8e6c1ef341983e85a858ee521c0315de509581f5cea413023100940553760b6e4b390f75b85b56ebb6719f3ad81879cb97cc14b5001b5a417826a3c384178dfea168516e5208efd7f99a0302047c435bb50067306502300f168e4c3f66fd0b8a1023f60ffb6022ac970d468e2952cd1c1f2e0fed32fdb3db7c27085923bd7ad6a8076c3d62fa360231009bd8b985b3943e445de6d6138380890ee8bd0436f345b61359b5bd416800786345c816af9372bf464ae29351a2e7abdc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b4dfe9bcba742c593ee7f733d6590c479db1d88374a5c63a6454ad9b781d916b25c135ac972e930ae166a0b12ece70b90231008a01ef5e7d4a26bb2cc16b5252c087c3854ebad2f0194f50b9ae34e29a2c13409529d17f14a3174d08cd700c6962bba70302047c435bb500673065023100e9f8a661b00284d428c47bf5c3856f79bf6f4f012917fed6d1f3354a317ccae2c52422bb8577d83ae29bad8f42b3daff023026ceb0f18a7a3db49e5b86ca54c74af91126ec72e23b698fcb7476344b213397325858e2ca88ba569223d84984d742fd0302047c435bb500663064023015d58322a60d2b69804bc4facfce32645a5a1f14c002c502f7fc99181ac4b4fdf3dc63166732a2e755181934a1649aab02301a2cfade5f8669b7d9768709f15ad7d93a703adb9d37871cce489acdeff877e266675a438d7f803db7ee0d78fa0968cd0302047c435bb500673065023100ef03b5a62e9c80561698a741d2bbb74e7dc437a8c310f2a5bb2ef3a37bd0968301a24df32ab96e2a80977eac1744a04402302f699ee4b2ab4ccd7596a212c6d64a8539e576c2eb221c61d318af85c49f08e8d4bf7c5d09536191406e47bccdfe134f0302047c435bb500673065023100dba1081afffb236d02de03d66ffa636032f6498e07a8f963d56ff740dcec81b9f6863226fe48558603c7d96db9ae86f702304af933a8bf986b732e9e75e05901f19bb995273d3ef667631e249b7f7616693ff82517da4cb5aa91fd1c86c727d8b7c90302047c435bb5006730650231008a5897c077625dc5beec04f0fe0a24fc46117efa19306bc265f3daa67147646a5e5613d142673dbac5e1f4abd3a730270230312dc6502ac6825541d5cb15abd267b096b6410f2479355db88142799bc8b94e369153d1f9b360840ca2c27b01ec402d0302047c435bb500673065023100b895890cb888e68a36d1b9f90ab9dace30153dd0aeb4a6fb8928bfe5fc3c7c9400b13ddb9f1e61e99d67763f04337023023035f5b5cdce843fc6c1b21cf93a48b2e26ba96094cd30ec85b679b01e38cf9171dd8e41faec9158e89dd37f29e11566210302047c435bb500673065023100bc58cd62fd79b76884a2e557fc257d06b8f7f44123c9c6329eeb8a6c350bf40313bbe44331c5e0a77df60740a59d99ad023050f83e3e8341fb655213d49875eadd3c33cd7fcab06e0787dcfea20ed581b89cd6a114cd0c1920af5d4579c78f62e1190302047c435bb500663064023078aac70370d03fa2e76a39f3e9a35a0e2f4cda646ae557d735e698716f0b69822f5d83d065982ce6c2459df5e64bf21b023033091ba32c3dbb63a376bee00df78e46b231ed0524493174464de8f4bec053d0d49b57cde8e379ed9d4cad5b02d6b6d20302047c435bb500683066023100a6e2455abe80d7470880abb6768c2f8b6b9fd3a6ad3053697d86312b0f5be968eae9e51231c3ff08fe393ee2656c8506023100cd6bde45893496aa095bc9722178d530a63c51c25258d0f116658073ba5e6bf1de409b056ea9adc7416a3aed1848b7ad0302047c435bb500673065023100e70d61b6d2f750024e5babfac3df0caee2fe5c071fbbe51c019c293d0b39264244cca7c1bcd071523057a251b50d3fe4023016e72f5a1cc5f9609999f917f024a4d91acc877c56311f235bb056b4ce6c19f963aab19083815363db23fca71a02caab0302047c435bb500683066023100c6fcddf5c0a03802fe972fa8ed636af4c079bbaaaa8e8cfb0545b8e97cf1716da30956dcec229896f594ba1b11e9462f02310084b0c4640a0b347dd1b454b748af2b4e38d04aac3f5833f59fd8c9311e04b0f1fa883fd029d01542e4ee402138c2b8e70302047c435bb5006830660231009ee647db094dc1ee0f98c050781b32565eff25980395476993003e1cb480761fd698f3a7fd0544290481b4243fe374d90231008f57465743aff85907e6a510fb560918dc8e857c37a5e95a97c3c03e0b9eff02008976eacb37725831ac1a92d04082780302047c435bb50066306402302a7ecda29d6880a4260243fe375cf920db206ad002636cca51f127e17f96b62dc82cec2b2bddfb1f1d350f2523fb19b5023056d347b7d27535e5f5a026a7e518d241154ae435360a6b3ccc69c0c51bff5a4db9960f7f4ec9690cbc66b31701b445600302047c435bb500683066023100b43f4c36623f2524ea69b2b7b2ff4936706366994fbef2f61c598f05a7f8be90d9ee8091a19183b75bb1e59ca1610a1d023100e984fdb6eaf9024f76084cb521e8448a9773727443260ee1dfaf5c82090c0f7ff4cc0027f04d9586d79f07601f01178c0302047c435bb500673065023027998dfea8a8f60021a08aabbc7b4d81b3c0859201154ed685f10ee70d80ec5402c0583d97302da5bb78d95eaaa1d815023100df02e27c670f6c0721a82af14aebd94ad59df19e5c224cee3d16170446dfad4f231ab840b702c83e7205ca0c7f0149840302047c435bb500673065023006f4753d71afe4969a09819b0bd8368364bc543078bddd7876e2f3b0a38b63bc46eefc81387f0eb68c029b5425da1c6c023100e47035f1fd21f4313415a797200035e5fb600afb9a416b8a04abc6413320308b4974879c842aab272c2a5613562af66c0302047c435bb500673065023100ed2564c93f5ddbe6729de61aabdf924898e856758ab9479482e6d673a49eabb7e859a485f005ba2f5fed2ea36d8eaab3023039933f0f96cbf1d848a4c2b1b40408655fd499de408860cd3817808fb3104238de7fc5f35e4eaae9a0e5645dbb023fcf0302047c435bb5006730650231008f113951ad9cb1c79088bbd3578ea3ec85c33e50842ab16630e37bbf084872394a62a6c504e4de17efbbb759682f8fc90230713b9ef396b005f243d1964410a75d887d5e1c602f0a46fb1f2eccc07a798ce97f9e1cd1ba83f37cc0377f1620c5b6750302047c435bb500683066023100b34958518cc7fe631e0280e601f16f8e1cac87a25fb3d15e148ea9a7b89d092ac2475d301f5454bc49b94602ef6027fb023100ed9709c5863436152d0816ad866898c2374fc3d77cb206e6104ea3bd68a85efab91caf335d102acc909913029c8244fe0302047c435bb50067306502310083c8c0e262fe00cdd2c894673dfefccf1ba2d8c80fbd08fe0b8a31ebf9246b8e136cfd6f37b00765b125a705c7f645c50230101d5f0a1de530bbad33ab7fb2a49af76724f3aa7401dd3af1eaa1601f6bc04ad2cbe85e0f5a8a5f8cecbd498da02ce00302047c435bb50066306402307e10ffdb0a29f805d8ace1a1ae90f180883b2d3c989d7b4e534206ea2f88cde76cd50bfcd05212e66a0b014064dc8bf7023011c13013d4e7ab09a33a131295f6d70f24b088f610e16b95892708d4a3aa4166f9a3c510a5e92d3b95af10645824c3b60302047c435bb500673065023100d61d8ec13d9f71e11705f89757382244e13fe5ab42fe0e30119fb4041c2fce0c99ef24a518100e97a959062c32181c1402305fdef30b6ffe15340f1900545146b2e6ce6f841d2b7ed9f3535bc8ec6fffe1127f701b8fcd96a39e746aae857fb5d6400302047c435bb50066306402304d1deabc689685fb1e8d6057c4b6856f15bfef3b959cdbd4f39b466b927d304f59545229019a7bb314cb116ece13213d023013a850b54422407e953b33a4b68c3ca20369f01c8c52908fdaeb33b5679637c354003cd7ec8b387a79498132b509e48a0302047c435bb50067306502310089255d13e0746eac45616db3ccf291bca2432cc78976a44c20b79e982ded40e97c323fe8001956b2c56a80b91e58d4e50230200bfea2503f0b1453a9c9683bef3a6b277876e2f7c16a261e9f59b2bd7adfb8345e4fc3fae7fd3b5320115b411e09580302047c435bb5006730650230497e6330bf7892b4a83e54d98695fe469369678d281500b03564261b4cac7df68c81ec4998ff146fc4be4080fb755d2c023100a7a1a1dde0e888ce9b134c218e760dcf58740219affaad6d772c77eb7f156e9e965625cf92c7b61ffb5a17ca0a7a44b70302047c435bb50066306402304b14531455214e0d96b4d296745da2d2c61dbb352004c817948def5a516dfc867ab2f57123a1f671ecdc2c24b0a24b1e02302e7a9b58a62067dea2a880ab07f9595602e748ad530336c81fb238f799be8c942e8e4e54953325754bf5b1cbbf6065b30302047c435bb500683066023100a106801c66d10d7e78f926158a76b009e44d93203aa67f6ff6cb836925fecf06a6afe004155094b87abd378ed9005840023100bf6da07d0e7af8a272e0ec3556593ab9fb2daf1940d68a6d6f829ff50ea51fb5190a9fef26dde26dbf23b6adfcc6f4990302047c435bb5006630640230313eaa1d5fb280a72d966b08ab7644c7c58a6c60787d52371cd202833b26cf00c00f5ca05fcd27bf88f2516231819ed802300115d565ade2504bf715f300f8c0ce2b00f8dba748090db8852d1e61f543af32abc11c70f911bfdd7451115b368179630302047c435bb50066306402301718d585d0187cbeceff700d46894fa5e1030e963ce9658ecbfaba75a10063e02c93fe693c3b94a94fc3c33c1127908602300f80b2bb024b27f91aa2759be9310afbb51cc590e8cbf5255a247e1a4302c083ba9a43ef9c0f001d4080eee6192488df0302047c435bb500683066023100d7719dbfc8189b1a4e969b45eefd01a00464b762a750dba095aa09c961681213c0cd793bc1bcfb5e0dbfc3e351b9966b023100d62900b26baff26bb7422bfb864bafffe1e635ad5f7c75103bf05b3494e18102ab834417577d711626209a136f2ebb1d0302047c435bb5006830660231009a263f282fabab836a1a0626053b643a80a81ab7b0f08d67ce3e76071595faafec1e8b002c059db10b5870b173aa5339023100e06c9c0a972ebab7497602b94d6beae2d6dcd3985a9bf4b62b08ef17c865eeaf3d6f861a7671e11cecd2f2cf6e4e60510302047c435bb50066306402301cb6a12dfb0965b43ff9fc8b14d790aa02816f176d80411ac8db331c1e2225877807fedd09450966864e77febef65aa00230623364a826c8e52a2a28710bb176627565a0d4e401705035110faebcf8c3dd972fb233308044452fb13fc70bf4a0a10c0302047c435bb500673065023100f5a8e54df6cb3d6d900f4b82823487dc5e390f382c50f1c66049d2fdd0591db3932e301e55311b444c69510e73eb8be80230672d1272de61aac52dfb8fe3e0189c10262579b29a9f8b0c481895000a23d447231191f356b5a892e59ee45ce6d9125d0302047c435bb500663064023006f2fe93dd02c9de39d231d0bef35fd038032189e536e921ccdcbf53263fe27c00812cc3ce007a4f24d27d877cf50a3302306579bae226c67aca481bc7a4c59a85f760da2d02143ba9a62cbad1353185a491ada487f228dfa9ee1a6fe35e86378ac90302047c435bb500663064023051f3f72b2337600f31dc6f7d14b4afaa1b06f3b0864f4d76131aa708d7cf797925d6176e6a1c3ddb4b9330042d54ada702306b25a6297732097348bb2e953368858bd69df04c4a1003a015f89e4d850d5dad26968845af0c5262f320f8a93cd782cb0302047c435bb500673065023100891cb19738deaef6906dd189e2bbbdb234e5e01a45b20a31ca4e93d84695efd19288744421b311494aab11ca6f83f01e02300619cdfd5c6b3714a5bf9454e95bb673106f5d093bc4ec782f36c5f27af7a334b9c7d30497862de369f6b5026b71cfb30302047c435bb500683066023100b0295b3040e6dfa11d796046a956b83b559fa603d7fc617308084b7921f11f61e97dad5d92bb256e95bf1cdb2683fe91023100fa4b4b9ef0460fe2457a68f41d1a7929c5391cc27a2b4939d68fe0cd432bea1d688c3dcb9f12dc57cab79eb44d9c9bb70302047c435bb5006730650230157f5af34a7c17afe35d5a14e1397a6e3f905a6f4e4091a260a3eaa0271f400f18948e9777352970fd0153e0ebcb6fbe023100a5b63a16dc69c1e57394d427adf0a15f98e2a29e2ceec4eed354d8323b3baa8cdfe4ab4c4fcb9532ceec56150365b2bd0302047c435bb5006630640230755a898da268fa1868cc4fce95732f24433eea15db9ca427d720ef85fd8c5a2acd7850de66682abd327cf4aba0ad74e8023026f8fef443c4bab6e28978ed9a36bffe767357cae9cbdcc080b2c7212013d006b9bed09a6a747b7b624e47baf312ff6e0302047c435bb500663064023032815e071f13c838f1a5f6bc3063118c881617875509547d9d56f93595bff58d939d2866ad80c31bbaed84120b79a7f6023044582e79d1b7264b2db0ab993387dc228bd20efc977a51b8d15c6fce1c72ab412f7a3b2c26fa8cf52270e540e456396c0302047c435bb500683066023100cf50511ea9dfda2eea8b7cd502e3f83e9f71ea65f98031316cbb87e5a96ea4c2609cd6b8fcf531bdebbb45449a4a81df023100efd75cd5101146da1326b38c75441c207bfd80c1f62556063b00d8f6a92e6f0d9933afc55a075885fcabb134b71ef24e0302047c435bb5006730650230513f5650cb056cbecaaf00488c3a76e005a21ee7beaae584e2b82be549896db598c31ff3438f7d61c963ac1120633128023100d0964a2807435b028adced5edd1de817ebfee6580e74638969314678fd5e70d0ed66b61386d37e9173741239cf2b0e270302047c435bb50067306502307211732af1bf376d7cdb39346d074c98d7b54a170835891d69f6bfff9531a0ba6557a10ab0242c58e3a10a3d5f79f15902310091133155da98aab0ba990778e8a1d9be6fdb4b8efaf22a2afbc512932a71b399292edd40e38d7f7de19e945fa5eb69800302047c435bb500673065023100b4fe843f3c2e87d35e147c6a4250c191bf3943907b52df6349d4b8ed56815e26a692aab0b3da548c836b633bbee0d08d023009980d21f67945f2e0ae93dcab2723da829b88d9e62aa6e0770d1e43ecae6cd339443a63bb6eb7d6afb73f2f8c3e61490302047c435bb500683066023100edcdafea2ad3c86e373796f604b8531069bb1b97ebba0c58311fe9670a35942a822cbaf82a342cfa1bfda9209328f11d023100eb5b3da89498d1fab0e3c1221f74b160e9aba018391dd4998de4ce4c8de82bf9c1a7c914ba1c71104f6f94aa74fb040b0302047c435bb500663064023020eb6bc48fc1c97be221bdb284776d493ab9d4c57b96c4d4a3d9626930199eb203f5953ac707122b060c616efe63e08e0230015645dee340419dadde615112b90dede11b7e1e8798c92db28ad69ba39ae5f233e9f24d6b329769bd9760016dce24270302047c435bb500663064023045ea9bd13f0308cebbb3e13fbf5a42a9f599d51c67dbefa3bf9b5554052ef9b589898848fc5adae96cea2ed902f4d197023032fc81e3c0fed8f9698705594a7bb77365fa704b1f75fee288d9975f2d2b8b014bdd08833be3600f0ff9238bceafea1f0302047c435bb500673065023040d10ce42484d8db485ec55435deaec95317bd3827704d59c32cacf8a103889ed4ac6a112b233c973daaab9db8360fb4023100802611b410baf370f976ff6a33d5ca94817bfe078d3a20a64c34c5261e382bea133659b7eac32b41b4012a697e9b6d0a0302047c435bb50066306402307ea68b878987ccf10fb4fa75453b822ec784a09728080e494235eeb40b93024750b82a367aeecc2352e25e0b309d2cb8023024fcbe90b84348aa81a087853ad6990d0a3c1c215668a690b8409ed85519b46eb6e734f950880d41c48bd51a3a0d28db0302047c435bb50066306402301a36912ba094d52228ab8dd141d378a68450254e07cb76f2d1a94ca8c4295a7d156fe97cec89f300b1fa1ce746710e9a02300f3a8b9fecca8be8b65506e9e02f6ae7326e791171caa0cda34fc50aab563dd486f62c87f90d9391f83e77c2e4d21dc10302047c435bb500673065023100daeeae7c2d9f249f554a68848020b15c9a120c670312f849ac74c8f92e190b2d874d0344398c85342db72e4b8639ba6302303d01c552a21231faf4bc76a0f5c2b2128430d7b73369e75d39edb46b144e942158c0ee2416de9b62540b013d9f9df0e70302047c435bb500683066023100fdb1be2f6e1d0feaf0407a29197773e13a868192e54e46320eb7e68e0e8bc7463ddf3169f798798113de43979bb95da8023100cbfaa842a4e62d5f28f25c6ebc61b3b3fe9d203c872387c5c4409de172f66b169bea478150e1e8c3c88cb575311811120302047c435bb50066306402307d117dc3815df403ff981f26f37afab16c7d08803332e287b51b2f910b28128c8117246093b1e9421ca3ff2e78bc4cf902301c6c3316d2db3cff88808f9bd104b227065edc9c40805c158710cae3b05cee02f99288bbcd03344bc8c04dc0a3208df30302047c435bb500683066023100ed715aaaacb7c5ab624a764c008b4a2cd1aa0a32b735e91bdb8e82f62dc2c99e2850298d8dfc04dba8cd7fbe887686f2023100a1e9713dd8b7de526371eb92be9043a729c35a7cbc483ed97f19f79a6242ce66bc061f2b18b0bcb8278315259ce6b8520302047c435bb50067306502301a586729179cd23ecf1bc57ab91d877906772d6b36c0f67770d0b654a3c9b3f52dda8a63543ed876edf131e9040ed69a0231009d645af7074be65611567defc914d4eeb91b288dba2212021dbf46f24bb1fb7f0e73b07f2371847ff774cfdbd897ee630302047c435bb5006830660231009741c2f5d1286410652db7713959e5dade0ca3584fe9b2f284ea9045848a7902ad7563b161636e3b1cef101788801cf1023100aa4147bab707f42c70bea26be78e82cd271ee8a4b47f2779d6fef2547e7445c42d4309b6bbb2373b14269ec11476ed450302047c435bb500673065023100cc037654b0beadc33f0a704c3fe9fab9a69d8b49193d2c0130932fda3d482dbea1a8836aabd79d2f6594d1541f4a3dde0230618b31a82494d715da14c51982cf65baccac7d93cc77c9438e0fc95787949682f6e4d458539bf45542d4a0d16554b68d0302047c435bb500673065023100a60fc24d679196ce657bd1af37a5b35018747bb0a2728bda1a38e5613eb6b5e276416b1f5a729c15ed8cddaada47393e02302bfe5a6514fb937f79e4a57c8cabcc8c2eef648c7dcea756330dff595ea4628b8f49a52538fcdf8a83008c0d2cdc8bb40302047c435bb50066306402301d3a0107d6adffae6240d7cee20bdd03f251e609211e7c206808baedc3a4bf96431547b0d2f44b7b73c835f3fd78617e0230119a9b5a206955d40a448ec66f0a34638d7fb9a99e6adb67ce299947134a4e37e7f53390de2476e76bfe801088e2fac50302047c435bb500673065023100a4aa777710113cc8bc73d914193e0df1afada0c59ec0d029e90bff7b29ec0995d1dcf8b957cedbc9805f833fd28288ed023023239b0ff433f4b8d5c37b67081f89b22bb985dd8c28f120919537898921174605b6bb233b043c3a57a79e746c8cd9bb0302047c435bb5006730650230361feab08b2210b4b075a08033e18fbfc28b44d4ec1d42e5b3c052da303ef8e56e7ffc27557ca56930b409a1d202200f023100dc641511bac89b6955f33ba567a3ec79c810af54508ab7675aaa0d0d109c345791731d77ceda9de63e28b39d0813d57e0302047c435bb500653063022f367e4b152453c33df6b2990a58375d36c1992e1a0cfb018f1795749c595a1883a7b17f0fbb18a03835f9a0069bd2360230738fefe734a2e6da683ecf317b3f36b7dfcae284d994fb76bf0ac4cc079a49558244727e415bf346390d91d7427d47760302047c435bb500673065023100c143f3fc4ef67dbfa15ede53c6c6b21445d43aceabc0f5560081efc25c0f3db3f99ef6f506c2aee0f521eb1674276ea602306bf5c73073e9daa33480088218ec32ec77ffd9bc2fe99edf3ff5bd664499dcbbfa6bbb8d94b751973fe3b95338e8b7200302047c435bb50066306402307f02977f97fd179c06187cca1ce7b8ebf3b010e58fe1c50bb91d353264061b9ae295f0831a10c268094328230fc1411a0230557b59941c5d354265e358ca494d54a36759f94f5586530c2623f22070c6a2f5ce859fffc1bd1a823f924bf461e6b0b80302047c435bb500683066023100ed1669891c2f5a26c863d3ae6fae48b4a924901108b7f527bf070a3daaaf9a3ca3071b81df489fbcf513edf2352555930231008d1c0e868bacd8a13fb706ab4bf4cc4ee36be5188f35fefb1eb8d9e3b164f93b6efde656a61478545946001590bddb5a0302047c435bb500683066023100d9517285b04402298fcb35ca53fc439229baf9d71214ce7d9c7159d656804e7448f36d49e9f434b307758b3104a3039e02310080a5582a21b319dee1380bbb992fc026b6b5002a8dd8d51d10a5c6a890808381fb40d3a072bec90e8f72e153143ce5f30302047c435bb50066306402301b8f57148bc75edd8dca3f9459ddca43ac9a623c4573c6d64a516c70351a9d77eb212d0418d56721b71fb83d2f5cc3c402302d92f9ff9f2092e9ec32a5cd546698e5e291b71b1888b39813741bf60b9e284a9efabb4d490765cd3d1c4f5db08e6d620302047c435bb500673065023100a31538bbfe4aa075f818a0893e40e76791d317665b9ce55327793e9f4d0a5a0297a6db06dc24a54416545c7534c869fd02302f8312490b14f0719437fafac3bd19e201d6c9fb1c8f98c0068c6a66263b35b2f2648d20b7aac61fb79048ead78a42a70302047c435bb500663064023006e5c3d67c1c70ac08809ce321167c94d46e9f913d0f88d5ab57763a59e5a98f5c5ed3adb41e5cea8c249d3263c35a4b02304d3b11bd68948a9b638bb4b38e62cacca27201d7bac366318fcca9976c30264131216567e70d7b64999133d2e2480e510302047c435bb50066306402307fd4b65c89ba3c07ea7997fecdb1139fda2c81090ef51a6673abc795a54b327a77ba13c520edceaaa8740a3093d789dd02302d6b39b612b383ec58a965297b9655886d413415c0689fa3d60fbe54afc417a3eee0f6a712b43f22a4d3f710f124f3b30302047c435bb5006730650231008182003a61b0a6dd3ac3fd2f8cefa86f2f8801cdff9997d23eee539d81cec6d3313afae35d00912bc42a5ef40e131378023034cc91ebc8f3d8feca3acaf888f7f8773479dec93b32883bbe88e215319e472ee34bdb5bdde32c3cbc1d5060edf36ac10302047c435bb50067306502302cdb2c88bd2fb9b9719571863f1ce7139f1695f8f45182713eb2871c8e6940e86dae708fe199fde4b217199f6ebfe28d023100d1020eb66e173a3fa056b34a5db452ed4f31f12eb29a76042f0c3052b93d62d9bc5b68780f583df60def5955597b965e0302047c435bb50066306402307f65abb1c23b95e66019c16c182132651e6c4b4d38717260b2d85787e45b92cae6434a0b27d5d859d1702ad4ee4a4bdb02300f888add48208c0185ecf58ff0d688517ea4c197b677fec03625a972f995e968c191c1e1991e8b7d3b910061e547c15e0302047c435bb500673065023025ae0b82f9da4e4290d61a980b2d933c4f875f4f066c7b027fd3b3fcca44a2c4ebeda93526cbed229067cbdd5c1974a2023100e65877b96a76a4184ac86522956b1a5b15c99d8822c093fdd63edb2d0945d35f4a931d2680422f48878971d87d7c640b0302047c435bb500673065023100929e7c41ace4c89082f5b0b2ca78e6132299a40e1901bbac5c0f9296d9d5364db985879bd78394d4af03a5a27ea80dcd023003d05eb89813d6077ee882d9393ae71b8c4be9e04b8a3eee5ff9f5ccd2ad3225f8987198173fa88a5daf3728a4cee7dd0302047c435bb50066306402303dc416d037863679d4051ddade584e9fb008c5cd7200bf8584436fe6aa8488f899b3eb537361c814f8879170de71d2e402304b1de2341893a38c157e7e9bbfa492b2ea042147964eae3bcc935673fc65cdddc9bee59f0315bf96ac0f5d8f5e37a0210302047c435bb500683066023100e9f475d85912fc2490c16abdddda26b8e05ba05e5d0da977ea370189a5b789dafdc3131c8d022cbb98c107dbf5e5106b02310080409e13be7ce001f841027618072c19ec57358a864898e63b11eb9281a78cc2a6f42bf4b10ece808aa8e0c8cb43c4330302047c435bb500683066023100a0f4ed91ad34993578a8508fd955e6077d9069197eeacf4d53685b915b7cc60a6c6254009ded9736469addf50c71cae70231008e202f3750ee919d580974f3a57142805aa44f514b40a17a3048f632e22936bc5b0a391b47bdb8d58f317994d0cf3a660302047c435bb500673065023100badbddc51b7e50f7b855e1281e39463e49e794ff6b8e285358e1a5e12ac0bf0bc5e3ac01b679ad999c86d0de98ff324d0230202e1209034d67e3327d4a9e6da95c04a3a7b9f4877b8f8829b35c260f6171362769850462b6fd990c82a78cf6e6d1b70302047c435bb50066306402304644fe91c8e6c7b0678c6ddaee189ebff4a44780c1180ff4e49e362537416fbe48f93f686605de96679e1d255317c655023017bb09d49c776d893d12b0894721c70334f85a1da79fa7643fa71d82e24b432cb683dc005f680ea4a47f128dba54d5900302047c435bb500673065023100f11c259aaf99fbfc4204c436538c5036d9af33ae88244463e035cd5d836d48139d35d9184de575b5e60a352d889d7ee902306aca8d34cfdc82b02ee13b8a4ced4f5ccefd90869f4d6a793b6e0334edfe81de046f2df7919662b1d6af69b2131fd29a0302047c435bb50068306602310088b70d86858225e3a9002833eba6fa313f67c9e09a32fb3a165929518b622a2ddae3e2ff648b9463546ea833d53e6b0f023100f399affb196607e6add21bce6152f55f89d70b6552234cb47c389d215dba6331ea38b296c74f96b0952fa23a4d3479e00302047c435bb50067306502302013b83ad45e15a42c9ab8b567cff3a6526521e1b7babb9bc74c97452986cb505b3a2d5df4810dbba776d8cbeef2c5ef023100940fa37652705031197894668951c188edde22986252f09d103d6ba311b0cc34eed3d1950edc48976c362da4bd93e1c00302047c435bb500663064023014717b9c552af0b32bd9fafba7a3464010d3b34150a438b894b6652d6475084d9d3e13741c80a10ffb9ea012d27b83cc02304485bfda8672183fb72c5062760716632374ea22e7c057f75bc4729ba5c89f102cc3990b8626a073f7f2225e9ad6854f0302047c435bb5006830660231009af3037ce80c95dfbb111523ffe21cd52ed0291dddf96f24d5bf173ad566ccacb65104e3aad14568ce94e4b691f52358023100ba9ca15868e50b54623ef9b3b7aa04f206a291c422070766547c9443fef9137b7772b9d75495c907824f565f1c162e440302047c435bb50067306502306a05ed9b11506b0d48eb4355514819d33904f2ae6421b8a0f69df1e2314329a852bd94bfbb542826bc787dd9cc87f80e023100c1765399774105f0091c7ea4d7d2091b9460065be6d103423b54d64cd316de695627ae702d568b1a826de9ad67d9c1d70302047c435bb500673065023079cef117b8ab512ea0aa1f809c559ca30181d2bbcce43028067a891f3ed4d165f6d6e6b3c236c527e58e55ac8bde7009023100fe33fcddbe484889e44666c3461c59ed726c46eab6937babe29e1078ef7badafaadc133727d4199953dd183412bfbf700302047c435bb50066306402301bc9da92df0ab80c7d28904a8a0fa10bdb325496de08a308021f01b2502f4958ec4783ca80bd69a5d08c33de1e6786a2023071c4f3c5e1055c438dc4c193379a309ce1a81c22797c3507e9e192e2e19804119734df1d67a6ca580fb98144ac33e4890302047c435bb50066306402304c16608b96639c7b9c8ffe3c3c2c097887357f98fa423983e8f4ff4485d4b77d470f376dd2c83162ac53d92d3fe451300230031a26f07de84c673949270f15a0034b52a61b1e8d0dca11f4cd2e0a08e7ebcf169f26d2e7b04ddc05da61246b9d9ba00302047c435bb500673065023100893af98ccc46239e4f22ff823be203da1d637965a5b9e886cfc42397d78b97a32bf19a5c2b1abba61ee874b8379d06aa02307d8cd148866e23f83443ff3a2bd5984a42728e507c4d849be36d3e536d6f09ceaad27837e7ee00d6c58b5c600b9734900302047c435bb500683066023100e7099fb0d100cacbbcb55eca99b9b4f68ce07496c38aada2d03e18294a6fe125177fb08fd1a3427e0805393f2b7dacc1023100f6748a3061f11c4e8dbf5752d93e923f43ab48cbf966527dc0b54af701280d2693eda955278990420cd7bf12a8c0a8a60302047c435bb500673065023100e73db39cfb09909689ddb55462f782d9262a33eb5281db761d4c59102b832cff0bf11a6f6fec4329351e8ff0fc14a8d8023071991548137863bcbbf007775474b70add0002794af956b0babfd360723c733163c28706cea2757ab4fbe9cd86d527990302047c435bb50067306502303a41f4df821dfaf4f2eb5db70fb4585b92ec534288df21c00cab5dc51676eb49339040b19575d3904e97864f9078ff75023100f9ff1e35a344e20e64471007b0540c7db7b2a3b65a867d084a0fe0be863d7e9fe0b182d64eb19bbf4211c215ee644db80302047c435bb500673065023100b6544254b72fc071fe56b81afa5d8b881dcc2a2ebb6eed7e832e73805e2b053fd421de707b6e73f3ae7d8a8c2c08e12802305161822b0dc0018f76ae3cf2b42a1a137813c1cef39e68883be0621848b5d9cf22cce232b154599cebbbfbd6fba99f3c0302047c435bb500683066023100b183d55f29f6a9921529bf4cecfd46ba8a5d3afc5fbe6c90a5267a1d46e89877b7d3dd882ca28a7681690bed95101c510231008459892541d82ed16863853997caf24ac8ce97a90c1da9dfeee40f9313963267930fcf759234b89c2d0729424fca902b0302047c435bb500673065023100aec2c51b7608a4f0fe4fcaa0f8e6ac5b97965dbf6c34e292067cb6486f3f6e9eb2fe05bd4d59ec110e0f62793ccd85ac023046364de7ac295b5d86b6da07a431c158a97b485902085db73c4b06115d2f3d166fa2cb952c898b575edb3bc0e01ff0af0302047c435bb500673065023022e815759dbf940e0624749ce9ceff72d4814785ce2e52e9808e82d04777c1977c48755c8fa91287483dc9def96f22530231009f3e6beafe0c4805540bec835af95d5cbd772d431471ba52fb8b8e1e6451c2593a29004f026e452a62004d2cc5c41aab0302047c435bb5006630640230572d6651ae04a590ae188860acb52b5d9b3e6a047fde058697bab1269aa40c556e44231a0b5cc6544b37f5fb1596141502305ad37c3d04310cbcb6751947c6e157fae8e0a695817c45e5cf6916965febeb33bce924e062e096f84f6dbb63a3b59a030302047c435bb50067306502304817a2a2ffe898ff9c749bbf518eee88621ae32cf7a50f24010cb46a5d1574cd4001b238e5d3aeaccbaf07d61e2d8c9a0231008db1a915a02f3328b977a8894845ebd765f6c5d8703e79b3eb1f87368e17dee10a38263954550226274c70676f9852d90302047c435bb50066306402306290949e92ca616890418b60d7aa8caeff8ef1b4d3130a5aad881b2a1699935375697aeff59759b20f1932f07ce00dc1023050a44e77010559ef9a3231a0d29e63cc55b5490fdc793608e1475cf50410f0d9339852cd698219bc896d243ac51fd3730302047c435bb50067306502310090be4bcb95d5ac803fa8d17a5b18136644b94ded4a4ee49f65e286a0fb2f42fa7134dbe1bb7dc97ce670b603675e8c780230468cf9f0d222282dde0ab80d4724e10dd2f796f793f768675f4a1c33ede441342f3e2e0fe60e359f4f2fc014b7fa7a6a0302047c435bb50067306502306f61913507f7aafa34e8ae497c577517f888c700aa97a03446a7eda301447cf73164549a15b6ba09b678eeb490ce424e023100e739a3265f463dcfa45c85acf3f0801535186259df72f8d55aab10d07e0e42c3d70e307f4d8df97c716fe2495cfa6e9f0302047c435bb500673065023100aed0411adc5f3bb25ecc854b6daadf0ac07372f153d1ec44ee34b8f2bfdf743a96f2be85e540c002432b43f6b8e93de4023030f4a1031d8ad8de5064e2bb69fb883fc4545de4ee9c1675dd66dcacc88f1b32b1296262c7b9875ade6fc4b770b568950302047c435bb500673065023076d9c8392d3655be04b0a325768abdb4c5d249117d519bfb38dc98201c24dafa57afadc878971b943dc23d097e88a69e023100c5e2da602c2950023820e27534284d58be2b31ec9be4419eeeb974abb4f4b63ee1360793fb573a7188143a82339e9a9b0302047c435bb500663064023051ab3f06ea430625f548678026a11d09a57e9904ce93766086fd09d950f05434ceba9988f063a29b24168fa1c473244e0230317439516873cdd305121635d6b60f688a3782896bf03b3323c6365c99e0b4e5aedf63c5c50d569f778585f9e22c00dc0302047c435bb500663064023018dcd33b65b0907f976e52ea1360047e991a69a1e5d373faa3a0089cab90dcd1378f434ece2d0d10b07e7ce506f7e97902304c76fed23f2110d843ea317715274dadd262fd725c7fd66a5c43766fc5a7ddfd9088cef2e7b3f78f5c183c9da8b5fade0302047c435bb5006630640230304022dea74abff3f42c1995c3321669ab167325bbb81492dbf36b5ae201fe655d03a8d908c080f2e5fabc993304fdb202307ff347a52ec6f79b89ec205d884856c2b0d9f2b8ff766a586d8b1452a4315d2efb3d4ca12df4b5bf9ccfed21528824dc0302047c435bb5006730650230568d7814b691ca62787142c8d1af5a95f010988eac7a2ca835cfe6001a9e95f758dcbb9d5c48f8737a59ed141cae9a23023100ac9dc3ac043349ee1b23d3fd7ad103a8cbca5b35e94c08a4b89d03fe8dce03bc21d5a4d253f913ea5269838ac4de2f660302047c435bb500673065023100ce4c6696d1ce76b20cf65db821c13d27f288d5650c81d0fd741fd760c089c4c7f9d15be2f856de2a08d808d9b27b8f7802303c38a19a193aa53fd00532a7d9a6da2a9dbce2196940bd429a0978497caa385a894dae95fddae23541044dd90093950c0302047c435bb50067306502305ec57c8bce42f3a150a3c300742efb34302fc426dbb21e7ffb75543067ff3e97dcf5692770977d6297863fb0e4ca89a5023100fc5b2350bc9a03c065c81f324c2b04d9fb0899e1620afffb2b575adafeabd80b07ac39032a23b638f8a65a01c681b9da0302047c435bb500673065023100bdb4f351d6e4734cc8b5ca35d1af9b64370b4e7a4ae32cf2a12f65118911f9171288e7184afb0cb1438d65ad423ec5cd02307b2f913fc511ee944bcd5ed3b1b07597282803363705f40d53f3ae8871baf73b7ec4506dfd3825d5acae589a79890f1f0302047c435bb5006630640230265b7c7598aeec11567a554b17e941e4b5b31bbab4d30f24f5501d6fa5900b7d96650dcdd9f7df175c6ee391f8f07be1023067c9e905f57d5c47d0db27508a6e942fea18fa27268cde8ae2ea60ffee50b284e8d91cb4f82893213234b3097e6937ff0302047c435bb500673065023034c6fb4286e6a4e2bf0ccd94d1ce82625e65c346e6b1319e4e71d021d86ccd4254c6fbf4337d0be4f660091569690b3b023100d95a6657547261a72c6f0aa6e190600eaae7bd3256623913cdb16b4bc2b7c6be3d0083812c2924d1f13611a41f876e7c0302047c435bb50067306502310087a8190dc0f41d7e9a1db87c3266bcc50a56ee4c466491baf8db6870c93f543b4362004478a62cd3c11d72909ca8726b02303acd9c64336a76b5a07feb7e73badc762e8caa92764fc64bfa0fc9934082f6cfc959efe72984585b21876180d3edd6530302047c435bb500673065023100c5922732b29c13f690d3552040ff6714c3af429125a669d6d5e4ec1cdda13d8043da154870c5df46f769621c0a07e21502304a7913df07043e105fab6b54f1cbb3796f809f0d3bd7726e8750b092702bd6b88478924f735046b7f026785c526c16610302047c435bb50067306502307658a850a3142df69001e1c088da8b327b6483a3a40850163a902386e850506a367e22fcdcf63a01853b38f9d87c6bc4023100b9a0db137b9d06b5521cebd88c4f88bc4ee0c63759a0f6e556a25def2b73378077edec6877308fe0a02942202b8084d50302047c435bb500673065023100cc9dfd069e0066671975ceb5efd94d3d1d0f913c7d3968fc4077f6095dfff7a436c170e3ef33fa0a87da8906f951ecca023051abb916ab8995957979f983efe3cf8e24f804f3e965cb810049b3701e5dc95e93b014ee8f5f12f3c762fadbd307f6660302047c435bb500673065023100a9015b86e588ea8945a0ce916b7fa148e284b4b96bc9b9096105fb29de18f8f975bac7a996d0108f9497dd4a3dbd38be02303b38844e66ef68401e942719374c4d1274bd63a47d101cdfebf2cb8e1428b41587c5f9fbd7f593d13874dba698bdd2d50302047c435bb5006730650231008031c24e5fbe9fbfbd7d5a6a02a7fb44e5bd9f2230ead7362f00a6e0626879dd88a524bf241df80a5f0cb4080fa5de45023002f05a1a77bc5f73d21109645b95b0be80cd1b1932313da7d9f2bb114b021877a27c0731fbd5809380a3ea34f6b95e690302047c435bb5006830660231008381a638c05af8b3d5502c118efaae4b69955c2ec7d3e25b5a16429ded5f6a13679500a4bb73b7cb76fe41ff4ffdf41e023100f740127b545c3b54505acc996a781e8e8ed05d7431dec2b72abf29dc5e1c2b37c255bfac2cfe8e79bb5ee538e5f61f7e0302047c435bb500673065023100f270e9b572e860b0dc369042e6334d5880cd6ed2431d7f9ace6df587279b2d1d41667a14563237fdbe764efb3fd32fb1023075e8ce2e199a05c61c74ce31d4db78946abdda57b71e8885bb591374f573b36f5c191e70f2773c7700299fa7b8edffcd0302047c435bb50067306502304ce95bee28cee58e88ec49e4559f1a7f06c76d836375b6225dc4dc6f2ccea09790a5ab383ad02a62ab55b58cd1928957023100e4ca80cd84fc4419b8d559e8f1c9b97a082c865fbb11d287268a547fd75e24a5cb62f9535193b4f75951fbb5674a92ff0302047c435bb500653063022f19a004f67fe5765c271c93bbe083b16baee500d495a8b703254c704f66591b8d3c179d9d5e5bae195701204777058e02302e937e3a9656f04b4636d96f4db337ba4540979cede1b2462c117699f84d73c92531482f17487e4451862530da4d40fc0302047c435bb500683066023100c6c783012e0a8052122be2485f34e2345f256b5e39ca6558a01bfa061c8f5912c8369f6ebe6b528c00ff0f4f2e25cf82023100a30442fafe4d97929c21327afccc90ef3e40dd41fd3e8b7c4c23306124d2bf4357228fb9273b92a5e72c4021885e752a0302047c435bb500673065023100a9059a4bce5613d4c78fc8b41cccd8edba14930bf883d991af043e5ce388329bf5ace8ad1532bdd422c1c831e91ab84802305ce873a2e06afa6db75bf072454d8ae95bde77c9bc032a3c4e0cddcbe6181b31817087362732336985f851e7abd36c560302047c435bb500683066023100a02845aa894b08fe58c2c708f6b66cdbd9d79c4775b2946783d944af96ea59f720a756455ad62fecc52b28ed7f2a2921023100b79d38beb7b6f1255a91a6129803d4a36a02e7a8358eee2c9ccb377e89a2888dbe4ea04dfe3449f982d94892a250249f0302047c435bb5006730650230015a2c72769e66fed32b9245e28782f48157f6b4a5874dbe69d025f4ab3743c30f852ff25998a1ce632352b6d07422a3023100e77285c3e887c52c505922672d6f866770cc7c885535eaad72d8d766d497c2156a3ccacc2dc6bd7ea19ebc118057d90c0302047c435bb5006730650230063d4b57a1582f350ed8b26f6d0479516dc3b6458cf49a890587635ee795e7c71b73d436c2624050292b2ffc86b5938c023100c14f95cf888162297f36bb81745584c20b17aa7fa5438ce69aba4cc7d2b2e037055a6a3d7d22ad80781bbe026dee6cdf0302047c435bb500683066023100ad668f0e54cdf8bfa24967c2a5eec8a804ccd35cc48a078ba5d6189c2175b9fbba85bc1bbc4d7baafaad0eee8ee3f71c023100d4fec1e4dcb98ce8080b7758d46dca81a3f758d70c64604b0bb028bef585605f9aa6af5d0fca827d11b7b21a13a798500302047c435bb50066306402304f7110c4037af4302f85fb7d5b3fee3b1ee55d41cf6563676ae6a44380f2d0af8d580c08c1a92115d3aa3117aa8f83be02307dee3368f5204b467cbc1282dbe3f374519c733b632a8002b9c97c137f489bf93f9868f8952d2287bf41ecc00d5e5a410302047c435bb5006730650231008d5750ca076323d040821b1facb3f2939b96e64059d745471fb9b4983abfca28f61525473e1b454cab8961202ee0390202300c8fe666623658dd1287640317b97a23bf06a144ea11922278ce7a168eddc501ba3e5b7ea6b80de9087336b433f365b70302047c435bb50066306402303ddb157707fcfdd32632959a6df239608dff89a172c5e82c4c44843a6e5cc563d62e6efe9593cddec462b0867ee5f3d4023010766ed45dc1658aa53f356f71f83c8c1962c4f2047b970e46407c2a30ce9dff55753489b1bde6aa8e25151752e238cd0302047c435bb500673065023100a11fc71da4742e11262f0f967fb33fb6cd804b3d3fcae32b02f08b4fbbc51560b87c0dbed40239146b602ba414e47c3102306d856f89b69506aa0bcb0fcd91ee70fee6d37d4d3f356af6fa83bc01cf724e58193d91b4a08295c7da58b182669022760302047c435bb5006730650231009a58e9056c3ad401305894647ee5c5aa1fb712a2953980ef8c68770adca6de1416cb3c41b2dfe7693959e9549ed77f6b023071cf3f35a33fd823eed0e0216096b4d4f497130cf49b396d72371091f459c1b3d74837785054e0e279cda8e248bdb51d0302047c435bb50066306402307dfeb63a045e9676ee4ad40c18c90e589c5e0d1a9482da572c075df041f48dce7f62e39e4d3ad91d520e4f546e158db5023033c9531a86b47c7109d980b6e73bf87ce20eb62849f617eca55fc42f397d4ed656b9f79136fc33f61ea6bbf2cbb7e8a70302047c435bb50066306402305e90fac693c978d46578073e264c3874761d3edf00f1f86720d7c89f275cf736459ba87a849c425743461c5101e3e80c0230396610ef3591dcbe30486d87c1f4d3d9bfce6f87b12aa27977077d1ef81ffe4dc26fb63e06163b0dccf847f37022dd1d0302047c435bb50066306402302e9553bb22affd5b33ca16f30755ad1aaea7393d5ed31f2dbf692aed29b3737f7f9f4d2e54da5fbb9d16f40a89d24d5e0230732c055e4abc1d2b5683bba56fc2b6a683c0c78cd19c908716c9e483e0389c223a5ad24b69d8dd5da2bf74ace21b45cc0302047c435bb500673065023100c3dea28e7ca5614ebe348a7433df973b97c331782de662e866613caddece3384d3e537b27ea8c8aa2922fc09594dda6302304a7f505cbb5f15d667b38f3c32e4ed80c726c9363434764717bc6213c123aca47163d555e9226afbadfe7f35d327435a0302047c435bb50066306402303330dcf056346124227d1b33e88420b78780acfb380a6bdc52e0eb1211fe387c8a52aaec6c96e291e2b91397a0c04e2f02302d79982f9b257716766431082b7e13f11b67c627a2ae1892d4b7ca344a0310e4d34c1b9ac767af7e19acef4b71c6f5570302047c435bb5006630640230649aecd7b39c283108bf562cd2b94578b97d1a185d377ac6d18f32b8e6c72105702dc6c6e6994402d1997f46564d312402303d3bd36bcccc8e4657796bdf3f48b3533751ce4431a486fcce42739a22653aa2bfac55ccd454788fcdfdb7c5823842710302047c435bb50068306602310090162dcb63596565f5583e2480738a21fd956530ed631112efa37b3c833dd7ab1b9fe7ed3dae75d17b0ea7e2c785fce1023100e9913033f7b900ea43529180e3646a679434d71c015d21784f34815b9204ca457f17aa5514f0ee72f63417fbf53342e20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100dff56798869d10e96d40c319f3a54dfc3863d29aa334d0deb51e63ca2555da1298fb63b88de4d39db35cdbb39bd7a3a602305bc9238dd735727bac0b22b7ea268bd80cefa3443275f1458a4b13f2be441a04d651998cdfeb6caf6d2a0992cef1bd4f0302047c435bb500673065023100c5ae62a991a01b92cb86b9e54346d7b860ca6fe5162568377df5f3011e1b85ae4bb73d006fba6da98660a543190bc83d023038520f01de94e36c06f79996e56846bcf500a447a01f6d2698d0449a45552e59d1802a8f079da92cf26e05fedcc19fb20302047c435bb500673065023100aa4385cc3311a86990f9bf1741a8388eb0097a7c95509454d385603b03f57abccf6a02fdd0c5836797edbd76c269f9e1023032f628294641ed9834d84a77dec06d76808ea81ac4b1f5b89ab899ae728a46f9c3d59f94b91924693075d7f7ab66371f0302047c435bb50067306502300356ff686f120cd341e0782ba3dfde7f472d19e742d58456a0c1ffd87550cea3c57dd8434bafd27bb9b25e3af18cda7b023100f9aba06ad642e5f66b41de40ebbcf22ba0beb743039a97557432f7872a4973b37d29695b2005a5e60bbaf8eb8a7a6c570302047c435bb50067306502304f1a379f8d2e3b0b8740f42b94b225c2ae585a5e646d61645503c13e3a109c5673b191969e5331d59f6169763ff48d7c023100b4aa3d74f3ab3940c6198b007e0e4f7d433f631507bb0fb25c956cfd978abac90ae67a1a8e1ab32f5104715e3504e2fa0302047c435bb500663064023007b0f5a774d4c324e51a724401976160e15925236e31ff28caab95322f3f3a88d6876ea40458dea334702c90d856cb4c02302866f53fef4768ad5dc0cb26728d977caa573cbcc4bc9d94cff1388b269b87b6ea6ab691f6b99e0cf5760201faaeaa6a0302047c435bb5006630640230365d86da3d0380ee0aaec91ee5449f7e24907e445dbda4a91608bc69ed9ef34137a0299aaa7361bcc39eacfe33b700c002306f6ea79df35657960fe91f8108a17258e9b2b07ee4b0d16642f391d8dfe853212fc275d8471988d0079055c00c3ec6ba0302047c435bb5006630640230363983a5f569af5bfcc19af90ae68cb4dd799479e959cc6238860999c585ce3db1bc449482f0a0269411b8e65f90906b023018d0d820480abadf84bbeba8b22182a3ae3c63f78a5d2ee1a56ff8ecf4224303f8aee27a5cd61bd1d6c8e21c3eda19460302047c435bb50066306402302a6f9bccdb717a918e1bed2a05ea165c157a4ee5aca12541e89776dcf9aaa1cefd2546faf327895299fbf26b58468435023037eaef42c193c75be3dad8ecae5db798e0e4c91cf7195687a46f2daba71f6714810daac4dc224b1fdc52457eef115a070302047c435bb500673065023100f72a91646f259a407c8fd4320da6349a8b55d80e4d706c8508764b53eaecf26fee500e1e93216761ecea2e6bd742914f02305855ed2159902db58f2467197ce396f8c402a53bf93c3e1dcf8d926a3576b9a008193e112f89a9be26ed2a6ead38b5620302047c435bb50066306402304e2cc94ae714c1b2afba7b0c2ba8ce3d62412af97b5eec685fd6c5d327c0446b94530eb9fd95bc4e1d36fa6acc6648b9023004f81b72cfca755030d201dbeca3b86ffd0f3c91dceaf2112d7c9e2b4f334fd0d9c861ac7f5ca5b6ab2ab470f2b3b0640302047c435bb500673065023100cff98d1b977cc86944821ee08ae1b829e1cb259d3c74f075ba672bb169a2b8b31161246e20de8a6c966014befc7638fc023060c43bbf51fed6bad8004e6e2670d7f27e763f5fd51d9b4416714ef65ba107b6dcf3e16920b87ed6c01e28358c3396ed0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c8f69ef7bf599988b7d7609e5fcfad34957b234322516dd7844c503148eaa46244a49fa3d0e5b06b95c8fcf2d3671cc9023100ed44db70bea2c0ea14c8a97c743d10b70f254849327adaac27d7f43e46010b731ac2274e4c9229f5350df85ecb9cb0350302047c435bb500683066023100af45b241074bcf820d08598735db64c1a7155e07c05966b98db60b322ab28363ac55ef25c1e605eb329090ac113aa252023100f9db8164646d3049f8b31b08307918adf4bef9b2fd4ff70583d2b2aa39e0e6db655ddb05ccb9befd38884bf29572ae770302047c435bb500673065023100eb7c8af735fa3fb47ceec8ec54653ceeb2bcf5db82b6bee3014f0487671b09a7009a318c1f9734ac374aa4b2cbb2696b023024c689aa485a1669d09e26cdd2e17edf167f5ffa6135fad7486251a783f29fe82ab45570411151ac816d1e417ea47c940302047c435bb500683066023100a8de40c52347a9050d2284bf369df4a977b0f7d9564bbc527a7fc1ad37b65e0cb4ac4708cac8aadef493fa40ca7c78d5023100c22c651929de985bc8dcdd73fbe58d0d82e5b0ce18711827f62afb4d8acf6a6e7d6e823dba15100df2e858e483ed92a50302047c435bb50067306502306006d982789113617171fb52fecfe1d1ed9bea0398032332c2386056fed90e2626188d832ffebac709a998a233d3dfe9023100acf201aac7f090070050c1632b047d19808356da1a63c2bdb2488ba894690fdc9e7b2d671e0b9459e817a2996d2b4daa0302047c435bb500683066023100bdad6a36ee2be3aaddeeba20279f032c383f01f9b829d114e893b76795aa1f79d5c1cb68182d556caad2a0f0e20a3cba023100d43833224e0f0fc102aae60a95a690c09ee283670e658eb92f2cdf7b4bc36ca89895db60e8fdea4c1e3738a7e287a1390302047c435bb5006730650231009d793c58280cc86c4c13643dd6ea68ce50877878a040564179569fd5062b42df636c0761af3f6cfa3c20291ef04f36b20230022b05e0df5f63807fcbb7cf4adea4b06a2d6257e31a4b0677e83739109363cf4bc659cc8f30541e00a56534af6c05b50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023006da02622494c407fd6f35de31fc29cac3772789737b10d85372896bbf17936128bc3a5421d6aa8af77f10e64b64879f02307f2f9bcf83f43ac2af1cbdba137ac5201e7ba44ceb769cf9af4f25e68ff4d3af84a03d78d0445a82c8bc36e10701e6200302047c435bb500683066023100da9a6f449b57aacc55c7902d27ad0f625f96e82d37f3ce96d2703566cb6ccafeac14ca404f8d4cc153c002a5eabd47c1023100d5c7bded0667ba8cba8739d67af6913e6b9f182df3eff866df13a3bbc879cbf700226207b1e3b9000a2748711960b1fc0302047c435bb50068306602310088993b5f516f92329033f03f99eacf9de61fc939b6b8be9932e063d508bf265ce32816749ff53842d22725aa6e990f10023100a43e3829797d8b94be5b59be619d02a6a5ff38624b389a14f3c928cba364bc4e4f5c3c15708f3b1ff597b272462221270302047c435bb500673065023050c46b953c92c35b7920619f1c11e218caf53bfa30f3ba022a728f67642c55b089799d9bea9418f504ac726cd1f13b67023100b0506c3e5202eff10ab96cb25b9807d04d489559cfdae984ff577ded2fc6ed54c72e34e7f424b002aa11b5c20710933a0302047c435bb500663064023071a56355a6a1967044c8281fe7825253190befaad9bb01735ce601254792f5978e53d60bddb6af23d71b9b4cb60f82f2023070c12cadee5aedc5981e15b4167d1a2ada5880da6859d7d55481e4c3de33ebff9fcc54852f39ae46d77dee1f9e0edbb70302047c435bb50068306602310088b9e8b839638892b2bc94dc6cb8b0a37b6189ed03ab8370d478258c2b5391e8fbfe66d4ffc68a3b3ebc5c7ac5199ba9023100c6a5644a693ad2a14d62b0b38a774184834af0021178596936565d709d4ef437d20854a12a44b1c790760cec67a02a200302047c435bb500683066023100ac3c91f2fbb2a6446cb450fea5bf7b85b976e7ac0fcd065e00d9a9bf0381dd728a50a164fbb0f94cf0ce016fa38670df023100dfea903a1958554bbb150b9c9c86e23ced3a009593803512addf65fc77ada6263410ca2abe9a69ab3db4214b8beb35b90302047c435bb50067306502300b7db9fb2bf00e9be6f7f4b664d1cc28505d07773ea6a4f8f7660feb9e17c007a38c3d3c44af4a921e2b0dcece0bf068023100e7186f9cfeac821ef04cd21433a8d7eb2057791d370c6fd5e8bce911b60503dd9f96f2eef51a049db57faec830a893070302047c435bb5006730650231008bf99942cd83700d2c579034d29621da53892c87168fe74f658ec49e657f6e47ff04852a58c8ae30a646930733bf367f02301dcc9d49755f9f95a851513649ed798783c53345accd58c1cb44ed7ac97f5725cea255de9df06e729f1a66934d815e950302047c435bb500673065023100a3433c73ad131fe6f2c43b60a7f21d0d5d5bf851c89fd8973fce0fc81bb5d17423afd433669f4cda5edb890082ec1241023079607ddc733b9608b5588933999cee21b922cd2590cc29b0c5509c84377155224cdc255ee0feaa0389bbc89b8be2850a0302047c435bb5006730650230621a983aafed4a9af26f5140861599784b8e3a4acbb80fac337d15fa7557a48306f8269ae0bbb39c899e84a047b878e1023100b55c50fbd10322044bbcd8b6ba2e89863c0bc18cb3854e13ee4e97c8dcb02d31ac3851ec2c473c3dd752907bd0845f110302047c435bb500673065023100fa3bf6110d1fa33311b0830c4a04cf14b23885ce019e8d1de7546135aa4b1525f825f063470982b287edbbb464efae670230640426c5228c1236640af4fe4ff5bf32a595ec8a1f2fd6975dcc0b52eaa5aa87cd1e7567e9b073c274f154a9e2b0e72f0302047c435bb500663064023061fda3812edb3affbc33618f51a16c7fe9e073faede2be18d69187bf347d84fa34b9bddd8300a813ad31c3b979186d9202305a270a8f0488624fcd1e2aea01177ca956f68529b3a825dbd0c4d20cb8c8e664e21f3c8184111d5243d4f80d6a87c8a80302047c435bb50067306502303b3691b35b49b285f76a833015b1fe710b922b8f3a5cf195c6df35cfb2ead9eaa9a00fb62f765ecfcd287def05172a33023100a44035c226aced19c2c2ae3eed4cbea4c010af16267083124bb23e13871b56f9074a96acaaace9a336c27b017eb996040302047c435bb500673065023100f6392350de5ef2281540fb008908cae5d6252972c3070d4d2533616631da64a3d5ddb9a8fb71a110e58885d004984f8402307c32fbef8b24c399b6e6a49725f677597f2a63d8660bf234dbd97f16f5ac4e2fe44850a49ff482232ba509b5d2dfd2d00302047c435bb500683066023100ba57a6dc9d02ec9a6b61a195b1e4dc73841734eb731eb268f692fe7fdfb5e2e55ee624e808e55ce6c28c7190c4a0c657023100aa95f274fde3a435cfcea8bc89a30db7cca32e1621fa7ea41921c292c42537fbc5bcab7a6488b6b9a3cb729417652d780302047c435bb50067306502303e2d06887349587fe42a22e76b1f50c5bbb3861024933c2091375d37ccaa024fbe7e89e896d108dd9c4b82b2f14472ed023100f1c3ba5c15de4a63a02653bad842adffc62bb219d8cbae7146461fdf6d51371405338ced88fb3e8f70de3ab91c730efb0302047c435bb5006730650230377a92f3ac04f76f9d02727d522cd1d7f225ae00e46623eba103c3dc3e6798eef272d738733485ea47dab2c1726f8f10023100a7bfc2d648166573740fb84d608023babeffe3e7174a63e2298c46883fb3e2f9df580b120a7658f6fd5f5d4ea23603490302047c435bb50067306502300b352ede0d3a168274ff8b1b38dbe0ea4cabde2b4f8e2c754223a81e721a48a5f32c0e383b79da232b4809adb77c777202310081b2b7b62c36699b648206733d264234b1403c817f5b2b816b56b661013518f66c37cf51bad2ad31b97f251dbba770600302047c435bb500673065023100de36689450100dc4ba75ac73a6880aa1665c42445019428e0af8d1da4ca96ed10b5b1028ffea16f8d966773990bcad020230626f515c8abddae477905fff19afed0611f0ef50313e59cd647cf1c7efdc4d094fd8a9922210b92e193aa49fa31fcf840302047c435bb5006730650230788d200b8f33d3feda92e6e389c1867e98c0e924f7e814fb715d6ba12d37de4a242f18d13895a514618140cc635f7195023100a4ea60a63a4025c3cac0043f5b86a2da8a5ba66a0253633d8401245afe5a011baa665b5f3b7c9484f0e080fbd74448ce0302047c435bb500683066023100889efdc218623437a6c915efc0e03d4980a6ba1755700a5117191c28411bf61b71df2514ff84b61b2daeb1f3a7497c74023100c6bc549db41f8e80cbdc48ed0ae654da09dc2ab012a30196c1b317e0d0cad0210898d4f6b8d64ce825abc76c3ae83e6b0302047c435bb500683066023100f8f7f957e76a64b5d90a96b783c9849c0d55e8160459d5307c9cd6e41a0dcb1eebe4b99ca07593392f5dc1beebdcd8760231009cfadf1d235fa94800e2e2d6cd889835c71935e39ce8d5ed160743eaa0b2535099b3d57a7c747beb636c575c72ba5b940302047c435bb500653063023021e54b3bcb638f86e967faf8b814a5d4dc286621bba4b1f060b45ae5bdde7d3891e0e697c62c42fe8e901ea427757a3c022f74fbd44f2dcd478d8bde17d93984973cf2e26e19d80205a8bded4f05a6b87cbe9ac3151d17ef589be129aaaa85d5910302047c435bb500673065023061f9892feb82ae3ace53c3a2cae4d91479eb889205f8ee5c7d441a7380f3e95769dc07185209c256f70a76f6cf38ef34023100fcc4707ea82d924f510a785e1d2f3bb136ff168b883183ffaf9a772a48e75c247dfaa19f52fba3aa4f585eebb4f2e6ee0302047c435bb500673065023025a5dc0c55766ebb537f62bbd8222c2a7ef648e08673a9500600e6928ae0dbfc4c2ce050f06dda37e519b75e3e2237000231008f01e9c16088c79ed306741dee81843e2eaa2b2dfb8e176e4984758643d0699f33a7177ac3af10d22b3f42d5de96c3a40302047c435bb500683066023100a09d04314b3244ccbca87079c6ab462de909ec2db60f76a5530997098dc2b03bb871f1cf6f409da42b9dc7f6fea9fb96023100ff0d5d54a98cb8688cf272cb3716cc4e5c17847ed7ed2ab82f1d9aaf17b97219550ef72b7f0c808bc5c1585f9c4514f70302047c435bb500673065023100dd8868b1b05b09cb3446ef8706d8af78c6bab9ceac66cb40ffd679a38e6c8de2acf02ef91391a28022d89847aaefaa960230072d911133581e169e2a1eb69134f80e5371eff064d2826ec6a619d348cea34e4be5f77fa16e838d9d34f02c8e051d9d0302047c435bb500673065023100d8dd1d4610746f10b66bbed10deb22c290149f0204129b7b90423c1e211da0d0829a3c882932aba48d8ac0b12f6d0422023055879fca00b5c55fc087b4dabb3567c83a27bca23ec34799a0e7c26e5870b4e1ecf6d586a37ab2e208f6db50b2b175880302047c435bb50066306402305c7286d16a1efe873ae34dc2867247c1103883e797b5ac9cc9c92b6d5e064f1072143905b8ee511dba73e957badeded40230677b47405d2f001363257c06c12353ae9d999f6ef17649b3b337634d94d0aaa9a0acecfa2a638ef6d9271850a41802440302047c435bb50066306402301fc212ff07b7aef3a607fef1fabf7b02d7ca13ae2291da62782b1a8e8dbf554a75f9da6eb39794f9affa2f7f7ca2f2a0023078dd006078da435693bca0bf9d24bf5b721e96df079d98895c661fa4eb32ad5fcacd72db4f928bcc91a476333b81e87f0302047c435bb50066306402301b0206095e84331934fb89495d9fc2f618126df98e33911d8c2b3b2f95591ee92ec5ea7c349c2f369e91b9b8c4f4e95302307a5a157037efe18ed6dee4985cbd5eeb9e86029418fab213bcae2d47a6fbcead7fdf053ea788b9a1da7d57beafb35d910302047c435bb500673065023075264f67805e01ed4922f328541c5589212e1d8f38ecf5ba9dd216170053f2fa5623f694895f30504ce9d5787cabf40c023100f4965148cb8e5739ec0c05e2663b98b54d24f4431b76c580a83c4cf78b077673e60413914199a1aef4460e1c96c3c4930302047c435bb5006830660231008bc3c869e8a9e7029c048e27fa477151f54796d099d0c5828952db1e863c0f97a81ecc95cfd6272deed2948f0d8d1a59023100964f91e4ac0888659ea783c215a7b3d32c1215087dc100c6c2d43cdf8ba9ec2e4b2073ba831c5666b335070aed0dd9960302047c435bb50067306502304ac1f64ff5532d309b2f3d3887bb91565a39fab4041f0762a8acfcd1b9099ab75ae7dc6e5b4b466cdd8da4f47f48547d0231008011235a44a2513414b92a15b0c65b1151439785dda1d2f4d3b38450866e71d42ec0b8603a0be988c18ce3cbbd4711b00302047c435bb5006730650230406e9e85aa745900d1c27d304fd69bb773fccfb5d1811a36973a9fafc0cc2d0faeb8c3fb5197a15955bc84410e6f66a5023100f99c68b0e9d476751fbf3d95b682b3a2cef8e33f4c3584b9f30bf45c1af20ebd9c230fd1ae638767a903e9addbd0182c0302047c435bb5006730650231008d955b7eb5f54e24b01df5aa1f550b77e995ad45806b555d5c432e0189daec85e1efc2e1a6fe16fdd05eee809bf5359a02306b1d32d2af49232839e919354b2cff3544d7b2f105117aa6f4801d4865de69879cdf205c8724a607ab7e557bb485c7480302047c435bb50067306502310094bfa64293e27583fb8d8e9cc08f738860f226bb07eadc2529d9229d661333adce9dc4f6fd72d489d384c6da10bcc74302304a1677f6dcf34c5d3abbfea98b9f9750d31737c0d5ee1aa92e0fd8f19d1f5f7dc477462ef0f8d9ba4598919aff3f70110302047c435bb500673065023100915afa9383a5e4535b3201e47d54e06aa35fb88ba89c17960c95ca1812a4153b9303c2e3f7ed88263488e78b25ead30702302db7ac8058d5f4aefc5841e9e997b54d4878454b0061ee8f63b86e64ecd3ad4d33e02a7c30a2c2f9969fb08a46c2f6b10302047c435bb500683066023100c9fcb3915f70247c93e90c60a4673d621d1aa778c13c454b0eef9160d407937502d8073c330962333a4fec58cf44baeb023100980b78b566334c78c5ad4203d2eadd378bde2042e8689e1293654e1b97bc14256b66a18314788f6a2180d64c3b617ff10302047c435bb500663064023026deca7570eafcd11c6b26c0d35cc135b5f1cdc7427d520a8c4bcb4cc9be35e3ce6dd5e67cd22bb4984c86f512853d8b02300c6961bfa4c99d5dba54524ebd92968cee9e52a348ddd3288324fe796ba3a234c655f38088b2c2f25eb0812a8ef2c6370302047c435bb50068306602310090992c1453eec820f5a1b947dc33d7f53d73c5d063e28beb4d0674a5b13ac728d36e89a1059c5df423dfcab173ed5eef023100939c0cc9ec8ba4c6c85221b00327febecdb306cc8f8bcf15c63edf77764954cd9862b9b08014e4d3d87abd1e21b57c240302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306a50678887cb99f1223057c5730bfe9c0b0b6309f7e22902d4093d66ffb094e86eac8af77171455da4d13c8c593cdc2b023100eca3df029208ffab74aafc9e183f6f58a984788730a1403a7fa3f7f8e53151663cac951484e6a37e5d52de46ff2548ae0302047c435bb50066306402302e458fc373c2d0e67a5d9f6581400a653f22c40607eefdb7ad5c84d3736247714f6d3798244e9078f7b3d270cf49e43002301bb99e319bd9e451e2432d7210398f63180e75e955d2b85954f05c6beb59ec9b426e79ad78085f0f7b6ebdef50b132e30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100dbfd624c6de7f9ebbb5742063a11d3d6c5a79e86aeaf1d04cadf7afb596edcfe79494e3f3a482ed39a9296a1f0729f5a023100ee212881bb32dfa0d590eadacaa01596510cc9e8fe7d571771e72391e5e597b7566aab6487138128085854768183de880302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fa550c61281b2808639366a08f1acf762464b879317c6c95606e0ef38cf3cb1c53f9015b82b9c776c2ff800f5a4eb0c9023100b55c0fdf41abac81503fc059d1035b3c57595a420ab3751d880ab54317ede73296733d8cf1228443d2500305ad7033b50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a7682b7ca4c39725d7957d9d657ee9eeb2045fa9681f72f2e3477780ca8fefe8730794e4f0a589a09994da77e49f88d4023100c7c4f45ac789f43d24e5ec956ea4b5fa54853c3a36558dd9f0c607a19c2f58ce7cb8958f1588528f245326e302359ecf0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023017a1a8618d10ed35291ea21007258632e1dc4f864d81c277017c40ed85027927894491e97dcb50937627285e393552a5023100d61df3606b423597c98ed51216161cdd0b83aa3c1a63092b6dc8790e79ca4c931088d16bebd048de82c9e685932f417b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008b61ea22be89b9f2c76fa0b72f6e4b8e4413845a0f7c164d3905298985a64f94dd1e6b0f75f93c2490bf758f78cbc552023026ca7b24ebf12d9acb1b99e4613686759b6e76e59eb139a397c3b7653f2f6f4c30c04391fe5b7a581a047502c0572f5e0302047c435bb500673065023100d88675d48ff001de8970f13e075de25c7451005cdd157a29591699da76b2aa551fb68fa677ea71bc04e2fdd823928f4602305d1e3d7a02b923fb81033ad4e9e7e7c15d9b1bc84faf49605e5fdc796b15f131c74d8cee0012fd077ce48c3f3f5fdef80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230106fb6599bc4d6f39bef6ca7928070b64bab219b81fdfc9e0305bfca1f89f210a8e5c1f068a56a29266c7b1f5e80e3f1023100973e416b32ec9e9c7cd3925ee95f88323ecbf4bd52f6432faf7573fb3be8ed65d545c9bb8054274b85ffbfd4e92c5c460302047c435bb500673065023100de5c41c9c1a22181ac82ec7556675122bc2a0bdd7bc1a55c6bff9494ef05b5fd212d521ed7a62b504719e15bb6d3cbd40230671be9f0a2c67e86461ce226275f553b6ad820356e16d8fc9183ff3d484e519d0f1b9cdb14f9f556aa1bd2c1fded52fc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e54929ad873bdfdfabe8678669a6c053a3f1e69a8397df360d059c998356ae33067f562dd84dc9151b3c75874f9fe097023100bcce2f3c80cb8ef06f14eb06f795c8bfa7049a1626fb3704d9f3a987693c3c96103dffed4f0cb4dfa2f298ad50000cbc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e00b6dab710e83c9e16b35b7020b186bcb54e001d485cee874830f23613fadaa9c4c5dd69b71d55db3cd651aef80c6d402310094e08670a7075db0db2cbeef47431a2851e80df619f66b71e3dbb6dc81a308f811d5c914b6b9670c21e87dc737cd9b780302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f683f2e00694ee57cb0fcf244293356551beb6d4308f00bc97912bf272a06b4cca0712306d866492a189a0457cf3ec03023100a3c07533254ae266c43caac74b05bffd942fab9544c39a6481e2c2abdd2095fd9d0b6495e9034c6f3fbd6e5e1025083f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a8dddc129c9c23f4f286e1cd2c57e2faa32a8e106385e9b495014088cd6f6e57f5f12e50f5d846aa23faaee919d151f8023100bdad9cbd569f808621c7963e93fce0b741c239c303bff0db1a11b0042697da632ab9ce0a955c96a318de1424c11bd0e30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100814af09f646a7569c14c905fdf255f1c8a65978beb18d55fd1820ef370c9fb7c2295756bffb04b15b5fb00f5054fa1820231009d415755d9ae7c077dbc40265af7d84961856c4fe161cff6152dd864c685db5e927f6f4813d0a5b393f140566b0cb7850302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303ea27ca651a2b39ca8418962d9186cea4379d8d710f590534c21e63a67b4ce3e01a2153c7a8d43235440378aab5005ba0230270c41042e14fbf9411778ab7312cda13080188a1d0907a3adcc0fc5070f31d12061e9135a65f649c09c407d605920590302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100daf5f1b5987381245f8c12811529b080cbbedb362e29b47f2446ac772ef8523e981ce2c196e03321f4991b7a8ed8f0890231008f779df506968dbd5fd52c9857984a4df03cc0e186645448eefdef1d43fa00c3bd461c04989c201611b82c4cf828c3190302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f3030d2114172a34d1e5045c1bd347132749b8b904bccad5374d5a96b34318ab4361e762fb3f74d52cf3f1ede0f8180b023100b017d9fe6f20a5c530dc371cadb498d54250d98a288da5b06e3f15aea62bb787fda33621847f531d819d42e95badf55b0302047c435bb500663064023022e1bab46f8a966c34ef7bbcd60ca44dfe688974387ba9f2460716cbc53b8a10318a1b62ede9b3792b74dc915c357dc802300a63dd6b0c465e3d2f76aa3a6a39f855753ab152cb196196d0f56ef1231f67f303eb81e31d82ad9e7b8af58339a6e9460302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307e8841f758c14b35eaf075c22129ba424df7d7020429d16eca1203b55d0bcc37db66f56ea8db1ffa3c311b5062812569023100fd8b9bb5e443cc0db0ff57edec726e7fa552696b95e15b7318c0e60d68df3c9a2f0c507335bc199df2e0bc55dcd492270302047c435bb50066306402306893eb87c061392562b5262993187a3cccb1ba9ef3a327bd3669dce08028b5e04c72837e8cb861407ecffd9f44d955d202305bc464558f6c747aacee1f004cee847812121851c904def7a426a5a1116c8503bdd9c93f289acd5905152bd35c08d1c60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a4a66ac61daad1aee3fe599de22a6d8e20e6bb8bc147b6c71b2737a550a9c062559b6e44b776f678cd91fec28643b7c4023100839823d8817af71d42f669e447fab2a9673581ec69aca77f64505c23ae7bda6a591718ed2063ed417d1ebe92db98bd380302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023023ce4c5eabd20ea276004c8b39a3a94f7224d9f4a3f759e179778950b63c5674894dc85c99c14644062d35c9b2d45d280231009b94a10d98a72b810a3256517ca3e9318d15631b8fbc7e42f1f2455812e6b4a0cc587c2eb4b2129615aec92651399b210302047c435bb500673065023100e2c6c2ed19e8af4948b4efb29ff67cba7429423cb081beb72cec8368b35abe0ec16060d7604039b6b5685cb500baef51023059e88920f809ae3df78b56b877aafba27eaccb2bc07f45acd3ee457596bc641bfd6b1bc1185b97091c9f9a31000e99f10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b480aa9830d720f2a3457b97ded47a04cfd635c95c256bfffa661b8b00749ac5ca56dd431c60982901b230bfb27ba74202303168742f5e6902837c55f90564ff5df6ff64e3d2337e309d2fd079a06e7bfbc0dc6f7b10ae8058378d9955be65ae01b90302047c435bb500673065023004f9b6be77915007963806ee2a6d130e8428e6f72bfca644d1a0c089b914d0ea16f62f358da7a1060f944b6ade3451d702310098174f9efeebe39a73ea60ddfd4af85fb9c4d549fda09f47fbc4ce07700a119990542af13fbbe223adbf3d7e3694044f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e21788018fc7474928cbf228b38be3956b258aef73ec7d816a878fb596d66cec25768060092f5a1aa13d6829f1b54f400231008025b21cdd18500f31b4adffceb0719b396a05cfda565c12a72af839d6f705ea553833c05e96808ce6a9be3495f94a160302047c435bb5006730650230363222411899e8a8a97b0be256180ec8a0dd2bddf17d0a5215889a10606e4b11bddc11a06f0c78cb48bd1d4be381bc8e023100b77463fd056682ef297dd3bb72876f044500cb291180b6d269dfa2a318c24b020a31dd49dd4bb7aac294b092e3f817540302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100cc85d6b6b1144517e52d432592240296792a4a023ef4657016f3f6191d44e559c0704c25ffc6f2e92cf561b4bcc73803023100a54b3dfcbc13db5720d5cf130c99f4091df523e544cd373afd4944cec88009f4b7c0fab418558066426ae9bc277522d50302047c435bb500673065023017aeaeb717bb1c8cc762e90d1f8132d100f84234103f4c18b48b4ef1cf307c54d58e31fa70f0c13c167c68e5c4f07314023100d08cdd04df6aea548a680c702642266736a71160ada2eb2b3eef8b2765c4426f8f7baaef07a134d2040f86eaf4ed6c620302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100fc1dd46d26b6bc74a25f9142c982fbb94766c33f0eb3858fc6c98fac967b000311d613b746367dfef10850404ee7709902303ccb78b73b708922c355952c3e0412e8cf395b4ca75653c15c703ecb0fdc0313cc54cbf85c1b29aa301ceb419ec516c00302047c435bb50067306502305862064b520d12901bf41509166b498fac6ffec70a39c396d1a41aec1d6849dc69331eeac04d2feec2db79ca17750368023100946a4a216edc200e41164478df30e407ce3207b2ca966df26e3c0f0e0c6aacd30bb606d3909ce9ef6bb0e9e3546a4d270302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302d53890cc2386946e121bba46dcec2524617d690ce90c6701407d9a9aafe2e9e43b3cd9bb3553e66a7fc0d176941202702300b3741a66005a27e48c24c5ac27d1846b313c4b6556f1d587bde8e18a3e9bb5e785495bb1a9781c8b0e5825580b135080302047c435bb50067306502310099cab14bd79f07f73e99fbc2f2af7d676fc433c2243bddeb2e2c928409f813d81c54b9c6356a1ea23380e13259b79bb702307af60f600f78bdca91bbf1e0f1a39d586578c4f291f142a1c9a1886940fe29785e6c9760c48e05ee7d73cbab2be4754f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100df113052880d6dfb819bd958c16928a24f078b68acac0ae6e6b3e1b56c853a2ba9bc7d006932f399a1fdbf8b51ab9916023100991c7e5ede0bfe94ac1cd776cb658717d172f24f95881468131afc5ce19fb2e4deb447727918b1d3e9dc55a56b695a5a0302047c435bb500673065023066e3dc2802363938eac801b99aa5f85897be92a8a2be37f3d0c073c09cce9bada59e355355ab3a9f4c02d8ec851a01fb023100c3783bf8d4cdd8b6539878e77a38cf77b3f2c83b15cec3f5bf43db6661db7eddccc77b901c3ff434e33989061cb654910302047c435bb5006630640230397dddd34357c2fd893896e85e49a2fc420de3e05f5359a5d162d5f6ceceab3e843ed17b8f3e7847331670069973f9cd02303f25ddab48c8ce90f58b9de4b6f669d93d8292ff26b85d0e188367db79cf79c292fa80f9d9c754776bb7358e191df0640302047c435bb500673065023065801cde54a34ef723deb605d4bef8ed2660adc244bdad4d764d9b1a452771a94ba51e17cbdf818ef8b650950255ed76023100c7dff015bad1e29386ff46273c5368a9404ae0628df42bd3fa640779228af5e3036d99beed568cf4f8a84f86071a3cc30302047c435bb500673065023076f7a6edb537342d4a8ee785bd1f0d3e9ec41c7bb40336cc6d9d3b263810581310ef3032e86446b5fec5e9304a20da470231008052bd59002e4e27a8dd89d8f381cb3a52f4a2f95eb4d8729754f542643eaf0cfec52fb0a56507acbadc62353b3a1a210302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023008754d6cfe3ef403e3aee41c737713d6a5a4d67c45124aac8738985dc445c9db5bcd05882807fe1de74e2f2ee0ce0a52023100a4b85eed037e7191ddc4519fc38121be30f0e5075af5bac7e558e1d238535f05590c1b3caf545cbe6cc48da368b014da0302047c435bb50067306502301360147242287a8be8b85e0b618e364811609ec50eba424652e3d74c330ae14c672d629ae9cf2b99da1e85d66cc8eb30023100af0098a3c39917cfd85e7d8887cff01ebcf920588ae9e4a1737839e68f757e39682b0fb1cc587a91df5661cbe54a44a10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e25efd8c827fc49ea6ff7262dbccf0c63006fa38bd245a19153024c833eae9404c4259c27df56c359a7f95df005d7743023067356172bdb6d822058fa2fac1d0d1302807ab203a10bddf81e9ef73cec3903dc32aa4aea1b54652988cbf1ae44b15920302047c435bb50068306602310086b77d0196bc1177c5612bd35d50965d65e7ba3e7b5fd88ad2346fccedd612ee2413fc7c3c9195984a52d1bf6c5f9799023100eed3e1ab606bbce99b5c7ad1eda5b3fac9b969d4c7dad47d1e4807ac47823cca364860fe8b431e7d13a38571db4d5cc00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023066723c8166d23344fd31b6f28fb4132b273cfa6b2cb960daa70168edc49ca76fce035384ae75b89e66c9c261677d0a8b023029b8a48fb8032c35bdaba3ad9d9f98fd9d07e76c35910c6eb7f1ac9c60c7e12d7b44f9d099f51d41ba0a4bf81cf998540302047c435bb5006730650231008d79b62c0a12b260a42d359b155f9756af62e0f071ae4671d709ad335cd35539c8050f80d6bd2cf61ef03cd9a226b69c023047e3747593b1d6adb0a346f152d64cbc31f9ad14d6f63a2cd29a37b3dd2e04f228325e5f12f064ed59bcba0e38ee89210302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e72e0d053f58891f30c1be7f963a3939b485793eea307e4eee152537713b0bd13a3fbc4c446ecfc0e4cc53b627af0128023008b57923b536f472018862f38a5859b333de77ba8683f73e169dd91797bc821249e27e5d2b2fbd6107f7e01e716accb80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b8273d75ca928adbe6999bb5b65705aaa6c016fa96056e467b14fea73ac184c43093d0bf18cf5edbdb1fb80918bf9a90023100a156981a0a92d181fe1ae8326ff076634fe0d597d84ce26a11990dfc5afce0115ecb2564a0534f1825341b17f62d78d60302047c435bb500663064023044064ad3de62194bd13388bd454e757c05be882110f2861e630fe7833b3aad856855aa10deaf74e9daa8d358118a5c100230577869da12037f499271cfda59426866b89e631a82781d0b0f8d8da116391ebb696c0f263dba3f79084601753591f84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ad13a122ebd67eafa9de2727160b9483cf9327606a0e64d2114eac36ba02880b99b9890192401fdf747eeb2edeb298b5023021f7a19ec8bb379a397c5421b9848a98286582deb5a1c48395d4fb2bd611f1ce70275919097a7cbbdcb14cf2f9fbe60c0302047c435bb50067306502302cf2bc553ffef32784555ba6ebe2d67adaaacf3182b0771efe4898fc56f61abdb1d3b7c7d7debfea660d879e556af825023100dca0771c5a561fb81b341b9194c73374a9ff5281c42b8a6f8d68dbe789f94c86ca5dbf4b7fc88a329daff6ff08cb90de0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023031b389b39ae820b62dbcf5b8484d8b55143174c4bd437be6cf807c6f1ce515e947ce03d9a37c88c366643c2b6562ec73023100dca809010c4920e2e3623a7f10f377a6fffa518b3c343d0f5983ee8cddcb28cfe5b2131f7b2c1531ffd58ad7be73b1660302047c435bb50067306502304d955bad32aa9a91363e8f064571a611069d1b768d40f0a85202bddb09bc3e1fba70ecd77834b9bc937d2530b43fcaaa0231008895712d0dc884c4308a702be2382c124c2da593d06f6466583b4df5929b5c3b729e6a5121434dcdfcb57abfa2d46fa80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023057238547f4a142fafe5926e7572c7c077c0a979a921201b8c7c53fb5fedffad953f868e84ce2f31e9912c2a7633027eb02304899839ce8d898eabbbafb9ebbb6e5ee8d6ef7203601d78da38826804a3824075d88c39167a4a22061847f3e150887100302047c435bb5006730650230054b557165bb5df14f1aa57370fbd720b6af2a4879ae46001b674b01d184811c1b525320f16bf846ddbeaff4d38f5855023100d9a89bea764ad313798b8bc83a18c008f1cae0f164e6814766cee3353e76ab0864d9ecc469856cbfc5fc2cfca592954e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023005a6721de156955e4bc0dacf1b06d93c8ce14a3bf70439348138d5b84c9e0a8886f82a5f813b423970cbbae810426c1e02301d30998d79052e86399779550e4dd48f70ae71b79a23f9307f163d8b5f18af4e08d9f6d18c45b0fa66d6fc7933a8d9240302047c435bb5006630640230324cb139f72fcdfce2ee50811a6174b9bbdd5e1c5a699af47f8357f48f5ca0d497a30ee338b1e16742e8d313bba9523e02302c4dfed7ea12351028d01b101c1617d4fc4c0e6f1b33b6f224739eddd619eaf98ab5c15a81012e8890b1ec0511c873280302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100db174413cec0d91f1945c4fae223ec55926c87ad3e9b2e398f86c7d7a272c0e72eadbaf2b37aa08ca63e7ca06fbd371202305990d856a3474c6c519f3dbff3a06f6ade059f7bb2be434bad51fa437f9da652ef0f92da192b8a11b96003d83b4a41c70302047c435bb500673065023100e7dcd6e33690ea3281da4eaca87795ef13407b1518fb2a56bf099539b814a9103b9a0b6620d83489a7afca8f70bb455b0230097a341ca9c379db6d82297b7e8037feffa3a1d63735094048489eec1779762e779f61efd59be99368675166ab2b33130302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f095725456a0a27c3d65004ad5c1a0c90058f44f56ac70207d9ed490d05cbf853cc5842c2422c920ceec5a62a36b22ec02307f83fe2c6fad5815de800c712b8c67677932eaade9f5aab1f4b7dd7193a943652f4791b47c9a3719a6a2cdf38594863e0302047c435bb500673065023100c1314d732ad0fb23717af174a79474cfee23a840c7565cd1bc43fa5d00aba65c30cd1964f4e06dd54a4cbf0764cf0736023036620acf2c0876645683e0035f2b815cd3469b983c5947461a6a58149cd400b3a23344e7dd7e5f319fe0b6716ef1dc8e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230637715b5462c0aea0773299b6d592db6d498cc75a268a960282fc4fccde7dcfb770810a7cc166abef986c6706c34d285023100c3d9b89ddfc70cb18fc0083b93a479d34b53bcf79d6a240fc048ee5de65773e640191acab0101b251d3e971cf190302d0302047c435bb5006830660231008be98847d7af36e39cb445dcbebbf143873d4f46b512eed5342e570f4ad70e47d12e3ee317a16a18e374e28ca4c75a13023100a191b2c2bea2ed7c0452ed7a973541174d145fb2b5bca2736603c6dc1409e71d585276615893a2018e4e8e3d124ab61d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310089ea41925d5e03ca1bb485625697eaef0f829117792372f5f25ed40195547992ac6c982ca874499042c7431a39bc4893023100d65c6e0286b03a8b914bd9055ce9a3cf846e16cf173ab8fe9391c46b5ef0d31519a420046a42e78778be5ebef2eb9baa0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ba93fae513564a23cf391a92281c02b029e28769dc3f059d87b5657ea0f3fda54e003efc220e725470845c335db8428d0230028f82b1eb24df25eaff7db810a6fc7d4cdc3fc01f69809b3e22d05279b5ab39aaf6908f929640478eed38d851907d440302047c435bb500673065023100d428d6cf3bf1a768a28c8edb6a8187f5f14881f77ff122086d9db8dcfe96cdca1bd271d320cb9e4a0b0b6c0bdbafd65b023004c0229837c4fdf21f1279e3e82c0d3beb23db06f76bf6064a401576e5c54cc104501f8dc52397d9283163b165d920390302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230338559d2b9f0d65b85a3d69a680bf0a6f7515d2b26b496329b17772a73f5f9b248bbf30e653e2f109c26e00c6abc5cf0023100f1fc718be23859b7b55d497adef63fa4682fbd65a0a0f19192734d4a94b32e8a7334178f647591ee34105d020bd9452e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100cd27b6b4db91fff486b41e5149ad113190d9897fd94102f745a3174dd57f99eb401454f3ea86eb4176249ebbfadd4125023100cd2483a701fccda578b0c370c73df79da433291cb9c0dbfa5b38d113efacadb8a8f2ca139375ef2f24b10f187a15676d0302047c435bb500683066023100ff407fddd4ca1a64f59a02ea7ea38217605a013e06f01588c9381023b722806e941fa7c3807602728ebd3914ed595324023100f7136a37040902bcfdd5f2a3b056755801be2ae0975d8d0385deb1a324e4ba2906defc6d78a9c587a5ac0abdfb202d7d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310081a114946e03cedbb45b7cb1dbfb8732af6bf3039ee49a5d6ca736ed3e4882e5573b152e8c5480ec25e332f9b8d3c5be0230760fec0612abc475fcc07a1ebcdf2eaa524355165128271e087149f51a8eec8728ef14a85bef29448876724ab0a3ad670302047c435bb500673065023074a40c78a378a3c252dc07494693680f1999813d41c243e0beb6d8628d3f8b154cf5cbce60be3bdcca2445fad3097a02023100c23807002709235e64fa3cbbd4528aec3613c69eb7bb5f6f7210a3070f4c040f31274a4b015e2bdf6dfcb3b118d0620c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009157f159418c8e93aa5af822d27aa6ade91dd25d621cbd691e2ce8202f7bdfaa4fb25764083ecbca594455196561c963023100fafa547e513ceaf42a25ce5e6b48ee7775e309f5164c60b8f6fa7e27975cefc2aca5d64e5c8a18d3dada53d3c3efdd7a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230335545bab276dc012f2a41085f6a6cd23beb2e206d9e9e37205689343f844ea97bccb992734e6dfd31cbe3d8f4b981d2023100f349cb5641e81dc6170443225ef7d75d7144788bc0d238005aa7459b18aecde69ea58dd26a592bd253c5ed59989e6ecd0302047c435bb50067306502310085367a31f4eaf70e27d0270916ef652a95575967d0bcfcf2c6452994a3e1eaff3be2f94158fd6a8dcc95317f10a005e1023027cf21c2e117b5fda535eed69ab28d48c1bfc6c9c6006212687f3900934c7b697d759266166f69c9d009981534cebaeb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d130e2f0a02a70067f97e660dc1f7abf7353907d472d9431837d6008f8893cb66fa5f5cb17b48d3615d1c8d22b22a277023100aafe80b8817c9846f2eb55d7757ba94430d9ac31e572510b9f989305ed1559880019330c7f7db4bac0527b712d5b628d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230722418e19107180d084574f534038953b38dd3e47b4eb06833125c846ec35ed1f26849030761af67cdaa7068233501440231008a27bada4a5cee767fd1f63511fe0f0b8c34e702537fd4d2890a4cb8db7fd45eb321a6858395be6a168da376b0bf20260302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023054b51f56120d9d048f71eb21722b29bb9b59b2ee32156620ee8bcdec06687205cb011e9d5da474564f2502bbd17175ed0230690a530154282595e2cc6f0e0ed7ec23fa4dbc1765bd08a4fc77a88998801c77fed9194e87169ab0e20f262a1cbf2f810302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d58a212ce99c3c2b289765724aa96ea5f38cbf1137aa3e9e47cc527a029a20f16621c9e69373fc6b2ac593826ee8995e023100ffaf6d4a391b2bc96b69a696dddde1bb79167561208a6d5eb18238bdb7c8f891d6df4c8548716c4e4c298ed31b21cef70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b99637864e7ea38d95c7b26bef313cfd6da7295b2b922b6ac941ff24f60036d9dd38f7fde2ff8db01bb1cc333164ad99023100b267d66e3a66940ea379b13acb0dbbd3d5243de80208d61dd0633aad03057d982863cb7ffe712f2fcee6b253c75a36470302047c435bb500683066023100a53355cc24638e5a15d455c696083677532d8adf63ff1e9777af188ec13db5b7886da5fa256ae6b46a600cb446369930023100ba2d99684d0451f5ba53cd42e879464a0a50166cc7b84fcd1e1e5deccea7787642a649cf86b181dbe480d8083a5823a30302047c435bb50066306402300e7b1806083d2d8da5d338e29fe6a6fa6aad0a583795160e829dd010906f211032ac5e16f2461ee0859b0e48be1eac4302300a6cbc6279a62df0c4c175948e7031f8933f9a300bcefed6858387a6ef56322cac8370709ad1682cc2542bc8c67b26540302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cd6ba41dbbf0192469fd1b218b6e86db8cc20f7452bafec185d53a8954ec6eb148ba5c688586fe56a98b263007b32fb90230157897d0da3f80c1542f568fd4e7a87fd9696d336de815a1df7a0cd67b849fcd06588fa2342df512f27b8b613cf42ba80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305e56ec971a376dcd88dd860aa97896d1ab3c3449f3d4eec27824a282458da3594ca83fa7a9d8e879d0579a620678a93402307bbc22f73496f78d969b04532241a23e2445dbf315e432e7741445453ed8170975e2bc2bb315131bd62345820c47f5ec0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230512c2ee3498cf5c85ab6efb068fcbe92fdf7b3f401e82d3abd16c5c70a935cad0ecee28ee2b3d8e41bf356030a188b36023100ea18b431175c00e899d79934a998740d710252e2b20ff2efc0b83b4be4e6387d77034abe775e34b39873ce133809fe4f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304b1c4aa85c557028e71f8bf23e10cbfb1879eb71f80d37a53d585c88431d5e475526937b3729378d940506c5cb1ada9f023100ac9b6d7e9ddeabdd0170854d561ed5caf31dda8fd5bf39545df1821f683f5f8cf18211ae897176bd7caccb37fccbbecf0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a349c09a67ff3be53cba897aec90f3254a0a820554fb1a8f025f6913dcd08e4fe90437d4e3206078a6b6a797d1d2aed602300eee61ef42e91449e268493feef829b7332fb6750cd975d2a4db7f7995c65daf218efe9de3e6410766c829ba71270d600302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307df5209d0df2a798de2c23121617f17421c027179e78c25f807edd9101efb22b16896e013f897ba18e38f7306c89c8d1023100e8158b074e2528266fc418c4b3eca7fa30963ef93b4ee0c5f71e12d377f30c436f1821442904129cba92be73e75e1e4c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b034053ce64576540a9f6f91928940c49c045818c5034d53133dedcfb699b5c4535b523656d5758384a57395875c8de602305fc978ed13660db4c2600c8cdd291b796fdc54633f192bab120ac86a8a9bb9e7db09e2e41a2c05c2d0ecd193bd7a813a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d2d3925c6a3e7756817e6039838b793c03dc44cb53c67095b8fe66ea89104294efe8ac1debed5400f8ab3c6768c310a502302d747c92df29d6ee1f6972d337374be206376e8314029a20f5c7b9ef2899a171c3ec3503b9fa3677a4c406f68b5819bd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230239a6364dc2957f9ffcfc2d38de62e2aee7300d95ce64c42e907def1fb7021c1c327ba3a339e0d514a5aab34fe23c0ec0231008579e78a3d6f80e9bd2e429f5dd523259018acbc3afebbf15427626fdeb703d99b7e66e9bf3a8eebe94cca7214a386900302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230736b60d75430dc2b88535564bc81f3a62e62ad815eb0de5b046dd4dae5e7e9aba2ddc25d37c7742cb3c042c04f4e53070230382309bec6e17d0cf6653a36a0cbb1410926e43bbb4de6dbf6750f75ce5f9ebdde9182d8e31724421518fe605cdf45640302047c435bb500683066023100903b115648261a1c67c69452555b29d4885689c7b5c09cb8958c8d885868278b55ac19e7d808f8ec8b98eec5f1a4c79a023100c99db2bac5af76fcd8cb961bab97429f49f02408d70ee0936af2ca74d71f5d1cbf2c5639d0d6434bd42fd351cf81de180302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304026d55bfca76a332fa2bd317e1f524b71977c04d9b051597ac2bde9913d1590f789a1471f27c2e7a91ea6aa635f453202305c2342f868f3107e0723faa810699e6b5acbf4f671ae2b5cceef673ff824787f35f7078212082786d3efb8c2b36cd9100302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304493f151fcdca26904b60d1f96fdeee442272d2e1e9f32c05a4f6c607d7e8d3ebd31717622d0ff3b15b5a97c8746d054023100b3f0561ab726bb9293ec5765c9f82378a50f2f509d6c024c6b038dbe83a181659d7e4096a923f915d78abea00f32cd1f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306040a349899702faf874f4a458fb33cb2626a8df8c1166fe722ab8749e226aa9398d015414676814a73b4ef72d105ec102306b9cbaf49bf794720489821569c6277b23759b4933e0621ca22656dc690368c433d7ca8820ee70acbbef5aadc61ed1d90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230131b54f6765f5187d320e93348ae125b2e985c65db2c9d64e5a191a03f5cda91ad57785cf0e48f953ba83915ceb2f037023100fa682647f31928fcfecd284b99add33dfb37c7ad2d26ba3ff2b54da98202e1c1e7c04dcebd03b32e83966d53ea913c640302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305cb1077f4c720bbe019ca5f3fa528d338893a47adbacdc86c19effd57fbb4ee06163dec432dfcc385b9bcf42e29a9adf02310081ce9e4314ab41326f28f9eefdb24d7a24fdf9bdec0873b3de415368457986c0fc5eef4c37f3671a91ad70ba62b6b1b60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023069385cf43173a742df0b6077f385b0deb489a298521f1247658b2570b1b465fc0e8b422669c1f64b11765de8d6e2a2d5023100af11ff90e6a0f1271c11d5c72261d0666fc15eaba237a7d017fe496789d2e6f10cd9c7a4ba3925f0c57bb7f45567e56f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300b750f3c83d53b039235f870c7a5a8b1cbb03ac09fa1c1bca8dd5802e1fb20196461557ff10f54bd28feb7afe7f69fa60230043bf5d87549b58da962dcbbfbf2908a942c97261e8e00284902498192edbb5c312d526ad09755aeb4ca26c66a70185a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100983508c2e81b02b2b370887b0bb29fb3ce8dfb7aded60d2ee9b10c0d73c7028f3af8c5ee1b484ae1a0bcc1a2b67f495a023100b5cf65d2ab43721a7a75e5ecf7b3709ef873d0fac919bc927eee4948eac8a4b349aba1c33283295f6eda31906ac167660302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310083eacbf353a0e6e33465786897110bfd24d0b69c33ea60caa1c8570c30b068b3fe4541dd6d00eaae22de2c3c8e52db6b023100d61bd561a73631ea1c6f84400e1b1c162448b9debde2a7ab0e05d199d56ff7886daeb74915effceae594b854341b14700302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304b3d4d2c2b1a7c504eace59bb9067ea0510bc4333b1ed26525adac346d4d7559a27a860f8f5dd99a926245f8212cf1f7023100c8e5a0f9404a01768ef1e97943c5e4350784896e5faa94d1abc0ac6c40e3dc27aeecc282ca915506902e9184b8a534470302047c435bb500673065023100ab249087539acadc2119f10009da0710db62b8f96fa95c806363a84166fefd1d182125f1f3b24f4ca2446b836ea99dfe023032726777371734f78ee68f9e963d58ee53b666565d4c3ca2196dfcfa8441f07eefeb0af304ad3b9de90ff71e12267a2e0302047c435bb500673065023027ab6633ee935ac6eb9598178f17c255042a50f44d1666a37ff755231801b33e7ef2c9c3de2492e1c3eb696272153ddf023100807ec1837a5d40d1f74ead4295677458d3bac3ea88923adaeaa743a069de2341fdc8fc6ef4793461fdac9cf6ea20c1950302047c435bb5006730650231009ba24233eb29880205b6c76d26636dec51610937e0629c6b65a713dac1ffba44d52dfe28be9c455e610a9df3f20716a902303915e773e0303db8fbb3ce41c8b8b5370bfc7b3a20859d5da5ccc1d58cca7a7f1133ee82f924cbd5f2e0ca1c39ebe42f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023000b174f813cde20abe43069b7daa7720d52a6efb364c4e40b2d972b0e44eab64948977bc3afd0c46fd3f005e088ba46b023100acb15aed801038b9969d2333c0e5a08cae743c713b3e2b25f5b504151c580e3b815836390d1a4a4794d9e225e1caf1380302047c435bb5006730650230079577ba63a9eb75017e625bcd922f8ef121f50c2425faa90177e4df0cc6619f33235f56e596ac2aa62089a6cd8b8ae3023100a55ef9992e88a6540d131deff6fdca2fdfdff250fd8e81c02286a3533c2a3e2479269179fed5417839f71c6d828494020302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023062d28c3b213625a3652e8554c0538c6b1c77bc8a1aacbd811e4809a375323fc9edbcd381b72330afa0bd0fe8a5d857e602305fa3d70c04d4a8475f09a2c5075ed636648e6c1daa7ee22c7abfb66c06d5ea84cd94c0fbad575b446fef791c0d9643d50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023016476e0e89777842a8614c4adcc4cb6bee119d0aac3797e5a81699171c3f1dd1bf4fc03ed8e4332007d343dde5777dcb0230166d7771e2ab028ba3f6b194e8994ec8bf7f13c75708b3802d3ad3bf9f83fd53deb2185dca2b8a5103c541d834d7d85e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d79c909aa87518c1d8df7353433d3307b6afdd18198a5e673fa824bfa5f359ac205ffb7676ce15f5867e43e5d17c6bd6023100c914e71bc042bd8282a44253caa0f2fac787454c415aa2c93ab7a518e49df8a06034155a4cc410fb5a986276df83ee5a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301f237deef0a771ef7b72723c6088c697f0eab079fa66fb5c70eeb69a371f71b7e49cbc318363b9984a78e52511328a6d023100c571ecdaf92ca736159e5bcc4feeb08cf169ab70e704ee183fcb767fef0f8d12695a57bf8a2ae92eae6da036ad549b4a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304ac1cdf2950248fb13b79792dc0279f6090a2feecdb531bcbdb6a86aae8e08f9a159e5e4522fb326db5b31210d5b8575023000dd67d24d015b8e9afa243fb07606dfcaf6797867cd24f6d59eb1be17f5511c1b672028d76e5d9ebc611662f42b9e450302047c435bb500683066023100ab88d8e5a3cd58016c542a016ccd874de9025b0e998d3861cbec483ecd452cfba5e5bb0111326e47255663874df92c82023100e8c140cd0bf9557229ecd01ef8734490d28eb1ed4887d6f13eb62e9673211841b4ea344deb0df25e63c5322fe50528ba0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100946477f21c43f50286802619ca90a6ae87a8762240322a796306baee36d04ce7ed381f927d079ffbc97539b407a72f3e023009d464fe661719d1abf3b4c71dd2e9aaf71c57f7d40a407f857828ff8b30b0a6aa8210a4623de03b48bfdb0028ef92d40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302266d0d2252a8c3a4d32dadec6474fccb4668310b82396955f0f7a7d8927eb3b82f952df969a943bf2891592e9b23d1c023100fb9dbc09d0c5badbb1c7f989ee2613991b4b17b61f5648d4b5a747b762c6cae98273ada85156b0c5e05acdf7827c78180302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d1625942bddef0ab9f71a93de8a9f1f9fbfde099f6411541d5166b9282daf619edf29b3954234e44649351000f9ca446023100affa20049e20f392b24f3c1b00e87d2498388159585d693a38f7261e60850d38bb4b2d66bab3509b94c614d11cc119700302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023051181e819cf4a0706ca647dc8e98e4cb2140989c98ef0bd8079b0ffae43e508ca03bc0e9e37af5a3504105c6b795a66602303015e140af8c215ba4b13a1ae969656bca5ea799920323052f0de131665d1bc93641ba0d5a7991a89b1f353dcbb2a4e10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f6b8fc8ec111d4dd544f60dcd14ca34412ffa9873a67cf85ea3664ca8bd836def4e1dceb70f3b89c7b93bacdc566df5c02305d40ac74655e3c8d16924836cbd9cb10beb07443d1f8c5fef0f36ed5c5c2713cf94e8e3cc99615f9d7d14d0db3ad69d70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310096f548b659e5d1ae2b937aefac17d5813c82d301988f21e56bc4cf6da55b5f1ea7fbec20cf2ee72c7ff035075bdd0ea9023034afb8dda57067ee3f04daf86e4b38d8cfe9e24569d094513f9456dead1ddc7f416bd012b9c20a5f1cbee334e57bc5fa0302047c435bb500673065023100f484239f36ec76dc125c1ec2ef1a081bbcc66a732075fba15604177597dd7fde36dc29137cc97b43888fb8666b9b51d3023058f369cc9cf981899a75597be0a65a7949d8d3456b90d5a000f0c9c8ca3f283867b000bd7d531a401c29887b5c917b760302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023038a913b859df5fb0b91b69209adfc03cf4dea9d76df03c7adb29e5a7b121d064faded4e69aaa517df3fbe995a324ced4023044da74d8e1cd9504167974da5fceac7d3b00e8eb307d1d02e996ec14784b9a5c3f4e54e2d08203d2413e6704b9181ce30302047c435bb500683066023100a7617cdc94376beaf1d2ccf38d084e56d625af6b945f39eddd497691c0e5e423087dd4959c403859af32cbfae8a56c7f023100f1ba0b77b42354f4964f11f04e3e01015d894bfaaaddcfcf4998c811035d9bedc70d4dc7e050a969e9ff7b04a6a7c0a60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100eb45d7024d7d74121af6227d3f3d789ff9b46809c084a4ad5000db59de699636e660545f24cd892a562ed7a87a79baf702310092585cde60b2bf97e99c791c9df7846a164fed7cc58d899f554bf79ab4d6b06ec635b4dbc42d12143e8bbc17b5c638f50302047c435bb50066306402303e80167b2dcbc085e48dcf7f0904dc9cb6f2f79bffe1c8ab44346bd135fbcf72455851ae221bcaf3680aef8ba92a6a8b02301234cee93268d56b3b92d016864143bbc332260d28246135697ef986f1381dce47544c995250fa215ef1dc4540c2b2610302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303e3b3a90d900739ad751437374160aa3f7cdbc00cb3dc81a5f02c8a7cb7c0783100c41cd1bbd9ff9da6a4687d1ac29c8023100ab6a30f779daa36bcaf45680c096c373f979cc37c28363b3363aa02f57343fb6fd35787fa1704acfe02a6f46e6ada3fd0302047c435bb500673065023100b28899ab48966af991775d3e1345c3e157928a99ff4a0dacf841816b3a1de7d219f9791b9fc8302674eb26a2712608fd02303a72b02a01b612ccfdaf67eae58867cdc7b64e69a196f76dc6d256a4076eee450465709ba8a3ef5791144f8acce718fd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100bc5051137f4448a6d90465d27ab3f77459a369dd9421258f2ae2f8914e4ee4281b88d8224644e23b256b6e46ab9349c1023100df66ac2d4c2bec5f59ba38bb7345fa35edbcef783563a7404ec261cc15ebdde9b34e935856ef41b3afcbb3c402944e8f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303db9d40addb65fab9415881592f0972ea753c1783c80d5cc1de36d57d56ac98c005d27f4ded5986955ed5773d6407e3a023007827d49975233ba2da201303452bbbd251b99c3a5725d736ea78ff991ddae758e12fd30d901b60c5cd3bed3cbfb03560302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305c446d8c2314838ff77924f92454bbf3e2142fa619e7e47b4bf5fbb2cc7b7d7f369ada30323f3140f76cd9c96beffa3f02306bd1d831df14115340ff59443fe6370d26748771ad47d0cd3d5693fd296e826db4110098908b403f350adce4ea5ba8bb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305f7e3186946b2b8feca092b69febade90f7236416c8c966d79a25ef5cb3977e063f90f974d44b1e15af4fd3b2bddbd17023100aed4f72c0e068be77e0ac9ce2d7c39422a01745aeb5c0e478b5c7c1824d7dff1d0d347b917bbba2ea07f69d190600aa80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009a8d3bb1b4ea50e205087ad895beac61f4da50b4b2ee8b7a374864ab36b0d278dc3b1f18e9d4c372ac9d5d1415a2cb6d023100d0e97802bd280475ff8f0febcca0fa1180e965dcc465a1e2d9f6a279457eefd94a1f8617aa571ea91a79f3043467b2f60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230373ecac0cee75a026b9ffbb1adefab6811547df5b5c3b7e5ee55a15f3a60078f65e1c1945c56d2f674618ab9bafc477c023100ea33774e7371ab36dc9ace111a4b1989c5e66d0c77d488a63cc5d5854c06bbd110f05ebdd0e6d66fd477b183bfcd97e90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a4732da2c8430330b259eaf7c13ff0cf69669950412c21976577ed79772db0f12cfaa46c280e436981151c93d3133497023100e793884e364d06330b65e34e7b52048a8ec6e22b19464ff015fe6c9947b7d0cff4bf8404688f00a00fc0b9305fa07aa90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303aa438088898d524c18986d0fa861d34c7095ff1fb8fc5c7d0efa7535617ddc132c0c8133554ff50964a4bdd95923462023100dbeb09145dcdb894145a777311578e3ddc0a532f630dd29f59674beb13fa7c09f1857e688d2bb2c072349f70d1070dd80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009a813d419dec5287a9ab4819158c0fe2ed2e8b0a63393222a55b7c8c061359b171abf58999285b8d4b98ed9fa268d48002300a77a1e6b16385510a5ddca7f9d523fb2f4a79c4157ae82e3677e0967c82081987438af48b9dccef5c58b2b9e6a277c30302047c435bb50066306402301aa1769d59ac9a6c9d14d824c140b59f8d57a9885d7da3120167c4fe2dafb0b396b5f3b1abb9ee78c6a354893fd07bf102301b3b3b99946e3a8e5f3cd30ce4d4b61c1dd6774e5ee082ddd02130017279b9118a51ff3a870c11e535f15568bd3d59930302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230093b833aec407365d99d9f6467362b665f2d0f9627b6b32f7d14133cf8a2929d6d118f19c9594ccbdaf4901f4c5e29000231009f67e6d24cb0212e6a38515b950c55734d992776dbaf1b4cbe644843156e1304aed1a06abfff4069e960222dbc2e08440302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023014b392acff128bf1b83156968de32cf9d352fdcf1ec9f9e4432c00779520e7234cb53f8d5db74136cdb9feb59f0aef2902303d48873509f33f7aac475cc09e0620cdd03c74bf6a3e72cde9c730c9bf00f35058ce0277cdae72c3789210b8435101e60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008302ad7b51be025614e17b861f02263e9f5719b27bef327ffbd872d61c187d0c9f6141b89e8b16106152e7e7dae066cb023044215ac35fed3fbc158a3cf6eadbd162057493907b6a24ccfe1d42369cb3337f93130739ff9158b213aff0be9efa6f800302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c0315f4643048add8b71740477e1a43124f7b801c6832d6f65cd2657d5262c572476f9b95e72bcabb462d708414b9384023100c1f98c2134c85220db685b54b70cfbb4796f9fbd415a51984c7d21377df0d2c81b6126f5c1ed16f7b6fb8c22578080040302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fef604892b0232d220564ebb64a783071fb09d496698103b2f5a9dac87f31efbd451bf038a6cc13c731b9f942cf348d8023100f4cf8a572559a3016a896fc1f137500e9f6677cee9d548dbeef3664232528357c87a26672d49e4f8bb3272fc9559adbd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f5fe4df82a5b789c478f580a3eeea23af269a5b1d280f09f195671aa88058dbcef00d382027d52fef0070fa14cbe2ac102307a891e80ae858c74ac7901953d67afd2c3d5912a3975f1b82ae591d93fbedcff524360e99a3e0b1110e8c85337852b7e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023060a1d40fbcdc550a75c71ba9098c080f4bee8a61d088ad42d738fba73405631779505bdd6d737ce51335516fb12c6681023060a70e362d072ca2f503e1073e6f33ed9cc64f32da90674fa28fbed103428d5a658b55f1334fb08c493447a816224e980302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b6470a26479578ccbedf27221c9e08e5bc883a9ce4f172d7cd79800108e277a61caf5875c15b8aead2056b154035306702306fa7754856d0815f9756c201b00e079168221ad5ac95d5c2a5f6dd002bca3f1fa5c422172ec915e735578dd277d0b3bd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230157a33a2706ed6194d22294f802abe6703e4ad0011106d39d483fb26116b363d531e46d715d1ba1f5ce2db9befe21b5a0230350272dace6a06048c4dcef1b5433ea51a1cc2e44ed8eef68a7bef19bf1a94104021fbb1e078827c8a694456d2288f5e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f5e70c0cf1750dc52dfa71bc23236b219f35a85930b7084ad9333f0f8cb4f4a321838d4c84f61c6cd2fea80d82db0692023100fbb1f5996e2ef0209045a8f2bdbaa62f4d216b52e06ed907924ae26106d5428366211d44d9926c083139b91543b015a70302047c435bb500663064022f19a195af7e62665cc8d77be45348506f0c661d99565433fe8279481d2cd9c9e2e5746a9773fd7c5671bdeea5e5b70a023100d4597d978f47fc92834fbebd0764f13be16ab715a134b5936d829309d84336eea07cf46e696109cfd1f1f6eb0dd7a9950302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301667b9447fb27998f50aff8efcf8349f88e92f51dde9298b6394afdbe0907b08dafa9ed71ecbcdc8f716fc57e11532160230074c9eba751126e4d7fcb9024c49dbdefa4d30f8d8b6a9389782007398269e30f414b1a34addaa77d6b11180d926b26d0302047c435bb500663064023076950bdc8e6335d9002832578d70e5a08bc7fee092712713cf818b1e1b5547d7fdcb26472535b813b772b58c8333490502304a41ecbfce1a00a88b428beb50e0c636115490e63837b9ccb9f173fe1077db5030e39b8d2b662cee6df6ab19486bb2e90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310095972ec2ba8dda42aff0f3e0012b2cec494fa61483a5dc748bb1c5305a7e5149db4814a83e090c08c80f4949515719040231008a40a1b9342dc03fa55a18d90f5bc7292edca0ade0c3ad270a61b1101f7dde0233e2d5bc98e250e92f0d137508e131c80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a41cd5536686c2efc03ccc2b8e894d7b431c7aa052483f275fa43b6d82cf18c6b9bc5af73b7ce163b7f5593dccc5c7c9023100dd7d4d7a1dd594493ef943150e17a7a59fbbda11ebe1026d1a4c97e1bda892b2a6039f2b9b5bfcd6c347077988e12ef60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100922ec1fe675aec61baff214843b65aaa8f90b4362dde041251860e2dd6806a5fa666ce19e4a553d461b53b29129dfd6302310085763277f1cf293d8233a497af58d93f105f6131558408a66e95fac23013da5b4f767a581d7d122fb86f4079a09c55570302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008575ec0f54a74ef304fe89a4eacc55a38b5d2aa257f46876d3161066ff6eaeec1489ab2c132e45c890c3603fed25c10e02302dcf692e8b3b80eb8c311eefbbc46ddce235134234fefe9022e3d04a4f6c67d2c362a98fe75f28b6df79ff7aed1f9ba80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306e62a66c02fbda369721aae3d7fdbcaa2338e2bbf079b8f7c2320e2fdbcb54c31cf3f7225c1cc0276f98fcbc8c6a942802307e09363216ed32211547171462c5c8ddd8e27116f58edc14b946a5946d5b2ff7fc12a34fc9b223094f9a9c9156ac232d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310087ff170361fcf7328c257d1c8252db689b0c5053279a0757564bb0c29bcb99327c5d4bdb7ece35dd1fee989894d2139902303eaf6cd05d3482123800fc917a4c70307ab5085ea29403fe71b5a67a671920643ffef3e0e7ec52d5410a8a3738447b290302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023055cc14eb97647d1c25c69d9aa7b737229b16afd14ebf4fa9d6b60db4c06e7f0dc83ca6cd7e66894963e1096b4721332f02302d721d47a15f76c8c257a3bbc5f3b044edfe49e3adbff6674714989514d44c65af1c308c49b4f552534967e06e237d500302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a5d801c9c37385e9460720908bfd3b776a7911071222c17ad7a61c1bdfd0e084412aabf4b9a651a55c821e777a72d9f4023100e0d6c69075996fd7366f5a6bdfe585553461035bb642caa7036b39cf48a8895c8ded46982a853bec4ad79e44cfb2dbcc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ae654de37d11f9794ccaa3d0555a81925643233ded2c42b9fed530631732ddcf73567ce5ad5c97c7e9bd8a27ee82b030023100b485b50143787a5fd8ca81b5263c244ee1fbd2d3f881ea3829c86c3881450f7bb2eefaf3b3858d0a7bb864420eccda140302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230640b9d89e110c0720e63c08d57564d50b83133e5a967effb048717d048d2858083ee9eb1650e868f0fa4c2e00d206b7b0230173f0fe44e968b5f708422ed353c8e0da9ca033416c2a1a28622b69321fcc0f57c517b62c2756c6d99a2ebff6451a3120302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304bed1a680b12a55247fde348711a5ed48a835e0f8561bde1f2da097904f638ba7cffdb395478247877b197ff13b4c14902302973fc009112c9336b46d0059e72be327c2bae5fea3891d52d31d3ee3b6345d4d55110f65954e706657cf933eb12ea3c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307f2d9150a7962b8386db1c6c0acb33e90c7531d535f723ce483b81b6f50b2d162e5d3f5c6cff33f046ae7276c2cb689702306f40b2782d08e2e7dbb5e4d05479de6b11acfa99fdd7ea84c1632819c5cd3682417e6a8e1646294692e52f6e48bacffc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f00aea34f3af6059b4f002594357c8b888a2dd15925744ccbdefd1c0836b58acde8137e867e3792e534b2587425c4efc023100cdc74dde97b5808bfd20e42721e4f1898f6dc78eee000a23ba304f2750428b5a5091478976d432d2f6d53d5502e749100302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306a43188edb20bddc2047d542074d168e64f0e130a3b18ebb67942628be4a0d41755bc7548dbecd7d1aa87fc3d7d31e6f02305f02f307cb507648f83668f1a520aee1f2c91fcce9257b3f80a39b1a0914eea5b9abe7f1498d5b4965069c6f4a1afbd80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d5396b4432e3e2ca23af63b05f2f42fd2fa89f63117912f4148273bc58b38f8fe395cc5e634112f22d9d44a8b864b5eb023100bbe51c10e037338056e449afb942c469d183cb4c3e95da2232e77a008c9c7cbeb0a6477188a0df8b18da5fbb28d29ffe0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100facd0b2cd9f3ca5dabaa78c1d695704206c8493517971c67b2bd2e02c11ccaee24472db9634484a3414b6174414eed20023100c06f0fb4e9ea5282b293223feb9a336b48e5f276f2ae2207bb84a86b86a1c7e825bcc77cd7a83b4df9f6696ccdb8272e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f1ed8fd8a270defa1408b3bfa05ecb74fb9b37f2bb354ffdb5abb32207846d241914c4b603fc1b7769d1f958f3640016023100a2c27f36d5f1e9889e46e701a9da208e5a564aee6d7cb7c07ed550b128df1ac5fa9b43a610050ce5c5943db37658d8080302047c435bb50067306502307c23b9329bf23ad6d3698dcc31ba55025e49c5f13c88904afeaf076ac3f52c7167d8e9008a1aa49be5b510821f5e6e8a023100e233ecf29711d7f0635ebe02f1a48bc192d8b789758ef9de0aeec4d3e7585294a2d6a62a279787a7c82c4f941960a4d10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023064b66208e655620cdedab9ba0b8c8133e0924ea6f58f7464410ee9bc923a326e55f0d9c62bac11cfeac7048b87bb04f80230034a98947372fd9076ce4915853419af44a07da69247e7d6919ef2e2bc9ac574039642b992e524e6cc73ac25448c250c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b80df6e0f827b33c2a541c9947e4326b70f17a810d9c0229c7c52c95ca406ba4bd81913e6d64274c1e5a1eefaf9c6638023040991689c6314e48f5cc8ffce8a8494a3b93387885460a36937939b140d9d3febd9c2d0594ee4299965b844cab2580bb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d026dbfda810f44e9afe5dc436c965a24ae1a6a274f7e479686d881af6fcd7018d7b14ae3c6a5c736a87a49214cfaaaf023025e356603ca094dd96bc0e3907a10775cea1d146b1e905657cc2c40414620ce73862e631bf6bcd8d8b7e605b30ff5ef90302047c435bb500673065023100a7c92da3404c6a7db50a6ef0d37d96ff0f674d51a170c9a29fcb72b76233a4df59432f9d21c6ad2088dd150150c3639802302bccb113b5cbb2091342042a8a608b634500093ce6b0b166d271deaef689cc56a22766480fcfcc2e8fc1e4a0cc0cf5fd0302047c435bb50066306402307df1b08bc2af0683a07f543fbeb3e9ab8447c0f569a5f50f14d4665f9f441b17ef42cdbe6f78da10fb9a094d4a74add202300fc7a424277401c0873d9f75e39ed221def1ba7e0ed20fbe6dfd1f51275b9d62763369c6a3d76d740db7125873e24f340302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b91dc5658c095c47ec8cbd774055705da4fe87896e8e542a96f7b9f53b31ddbd85e779a1a07d57c645a66ee6c54cef1b023100b0169ca87c9ef60f3cb465972ddc9802352b24deaaacd62ae3993c328d334be7b6cd078095735ffa14f3c567c716faa70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009b629dd1b1d96c7cacba81e70807543be11c566b1cf4aa0265eaf968b5916d24e06361b1f0f45464ce309e55e0b5922e023100cd79692a81449e4e4b050d52d9ea05d1b56b1191d466d08934e031a3c0b229e11ea05ec2885fd665225ad348c469b4c30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305ab9bf050be29bb1bb9fe6fd4e5e2d9fd0f4e40a760030093c44a5ec20456fa29aeadd815f2deda2fa86bec85a63d83c0230166ec82e02fa04d99240fa995fa981d6913c9e4f5dcde15aa01bb2c667cb70c43767723b22279b4775db43535b839c450302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230498843f0df68fe4dacb717ddf26a23d7a5745028ef36155d311762d4369f8d1b73309ca86552f5a7093bb561de6dcbfe023049338d53d688b4c78b172c51f56ac8fa437773615aa8fa544421f43768cafacd6d3f6e087719ab94c43738aa42f4bd7d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100831870517a0262f660eeb73fe3c8a4f0774a3681efae6cc59485830ec430685072493d63fa89030c700c8e1151382db9023100b0c2ff11ba6f2c597678ed3f1633e37fa915008530e15796b12bd24fd27c1bbaaafd712a73e7071909e36fbc012c85aa0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307b406155b55fc360290754e80317f1376e9cf2e1b2c1bfaf87d75fc579ad572fa948fdba939dba70d0defcd3a39abbee023100a34817c93de42cc26b495fa4805c51a7758288853f9520296f500322c70ffe80ab980f2bb024d74b4bb595d85f47bf2c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230389a25d1ae87e2a0244170cebe1a43d3cbfcb7eedd1213fe26d1e9dbb39f7403f9ead9204bdf37c82c094bdeabf29c3502303eb639f18531555eeb7c9fae48664cf01330fdf725d752bcebb1850cdf5d2ee282a153f489ab3d7707430b7b106e0d730302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023021731e9ea487ebc98a08cb8e455cdd73e67ce38bed68c00e62be970fa4c5be56c0bca150c9795844bf725fc58b8a1584023100a085d052194b94dd3b4588d31540b03ec2f777217915736e92201d54512f633545dac70e21ed021acdd0ce959ba39eef0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230111c34aa869dffb10c5c055551bbf0421d64a9d483594812bbec051360c67e3982e79a679efa8748048515a6e397b49602305eab47980fb110385ad942426523841ca789f8b8b7b743a555313efeb0d992358f2adb33b4afd953f2e2096fe730a3e60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f3bb362ab535277bfb71afd1cf985fba0f33639203cba575ba26d79c0013d1e57265bc60c2e4365b7fb1f18e255fb94a02305081e08b2f8158d2f4b3c99ff99ee494299b859dc02ea43fe5cf6846ca824925715cc9a4b224c78ac6cb63f028e206540302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f90e116baa39ac6b8960b39a41c80f749a8ebb5ee73a3b6de5571ab91b557c9d0e7fc9bfc72c52a4658c2bc6e95232ee0230156b1fbff84079f273cbfbb1cec20f3ef4f70911591bd7ef2614869adad22b78b3cf367a0f3f0cf482857f4a81d8b86e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023026d19ec31f7cb666cedb7bd6d9b783a4b6653c87148ff47de47d3a383f668a7d2aaea33c4653839a27db3788108519c30230603fcf9be300e16e68b7d52b4dee13fdc568f1e8e652d5e187b61c98caa69095a2421bbb4e9770860c96ccb809b1cd500302047c435bb500683066023100b9c1cf75903e0180154518c05641994eee0425710e3fbea597f946cba8ee28d2946798d3a5b562bf9c77e4d3a54b83d6023100f3d9a6c5ab0b42cd065ca95131f8223881ef640b997893ad1e169688937193cc7a1e10290aa1a64d7156117dc46acfe30302047c435bb500673065023100bb2975d0be1cdc9d71746551e0a89d588de8d6c2e3c450461758f5ebfa9a40d763e9acaac237c9c5cfafbd9c417b5c410230196c10ca4455ba9be27b5a0dc58ac42726578473b72111bc6fe276daeab7a79602579a8b7846b6a06dde24609012f74e0302047c435bb500683066023100b54563a6198bd5e720ed08e545585c3dc9c0927d1f6750ec02d2cb33ec30be8641173adb6ec34efb9acf4267d0d18a21023100922b1a48bc72b48c9efe5f2205e39eef0fc4ce47f5a9518de10c2daa149d3ca683c8051805787f1f97c6b6c7ebd354420302047c435bb50066306402300d91f7a83739ef5036d99657c4621585c796bc151be6358c579008b8ad8ebb028bc9b0b683a4856424a40ae02d1d985402305742fd0d539d8a45519f170213164aa0e1a65380225304c2af97fc8fd0b554d45ba060ef0fd9085f85d20f88d88733fe0302047c435bb50066306402303fe585b577f190e964986832f4a4d5483f7f37600a96ba19dc9cda1dda8c956b5df7ad74926d0f49897287adb7b5a0cc0230340fdb1501b2817b230c711e4d57e6b27b3ae83519aaf8e64013f7920458d83e3f8267b0a920768c117a7d0a091f76e10302047c435bb500673065023100c91869dfffe1e016b2bb5c18afbc9f45d07c483c1a0402e2eca675eb7817925b3e298614ad8d72deca3a815cb4c59c12023032042245a458b8870c123a2156e9c3155f1f15b63745ad23207d5c631d6e3a752eaf530dbd15674ac10e1079a48cc1230302047c435bb5006730650230406b68493edb2f239cb379fa82fb383b2260b9f4aa27a0964b1501d55384a8426ba7e8f8f6d01163cbf9f1170db4333c023100f8eecd56d357b2c0e7f953e91525651c0cc4e980b31e7317b935c79b5f96a6e7692c89c3d9bb1eda02c9f2bf693a8e520302047c435bb500673065023100c203eaa10210606c569deb308d8b401b9b5f8d44746654cac24df47943c39896ffee43a0e529cf3a723a9e121ed9321a0230009849f4ddf98a8aee43424a41738c4c99fab93e24f75bd4177252d2fc6a5534ce6b043d2cf54c1efc69911911ef31090302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100fe320d285559ce89634a1744a38dddb3f3384a14bf4cad0a059c322c6281b041001fe159fbd8ca4da7642c78c9c37fe2023039df173a5cfa025dd9bbbc459d30d4c5fd735f5f9ef1ba16a7d607c2d7c0851a664f1449c0fd835378118880d2a0877b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023052633c0b628b9a98c1bb5917f6e72abeaa976fae00f65f67cbdd24142ef002698e4ecc3b45fb3dce6d2f84b944b5241d0230391f6b08c765bf78d8238c177eff492a83d945f9aeb5c8e94ad6053f3043a90677c5d97adcbdd8f4b470272c0d73157c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302f4214a0b7198ce1105f490b53fecaae7566682def7afc663e05a3ad0e8ace19abe24212a7beebaa9c7d8c1c1054b289023014418e2eef095028df40894b3cc338c9bab26df88bcf8f93b4ad174d80c44f47607fe409175f86285ef525a380d0999b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230530575dc53de95bf09376f6888a9225ed18518a167a39b3ab22a759b4dd11ab77237cdc38bc6ab64ddbdbfb87df94f3802301f550070e4cef4877b6b20756addb16d4eb6789def9bb37ae6098bbbeaef2c77d3cce0c912828cc88078407ce4e53acb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009b5de7d2a50747e890b77090827236d1cd8340b88364d5ec3203630f1a7c2cc33b9df8a1a11732a5167579b7f9986f6c02307ea8cef59ec97d836be3c9fe40ec7d0c131cd85db5551d8ccd22a66ee354cf8c0527d1447b72ceeb55c7a7c189f559a90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302a6fa542152ce4127cd9aedb6320165efb2e828a375f100451fcc939ea6e1bb06a73e896c8d2295f50d1db2bc773ca590230690a22a8fa30720fee5e2fc83d3a55356b89df9dd0069b5913ce2d6307bb9d6fbd996e2d3fbb1fdd142141cd64e989fe0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009b05746a64138a13efa24fbaa99381d13130c2a59e32b91b7659672e9301a90a7cb80f32c29d54c720d5581f50b562e0023100970aadd7828f9f7b4c0077a452e37dc452f85c00807f2b19de61974da40dcfb9b917fc1bb4a92b33d677fe69e6eeab5b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009c69a4b5d4560b240b77b56001fb801661eaaaf7d846c7879638d1db03aa391077d70c5993b1699812a5c1f0c92dba3f0230155576fb72c1c16c0a16c4183bdc49bad6d7085a86a6997afdf1396732e95b05e56730acfb7807e7bf6adf7ed4fb20d80302047c435bb5006730650230539570b4ce0013ed54f84ca01f9104dad8adb610ffeba8f42b77a0b13ce2ce0af8a0a0cc8176466fbc8fb7683ec3c41c023100bfb2218cebf9c59f956b864387e2a218df8153a1e80d1b25e71b57245f159158dd5d378aa071801a7f9f07e91444b70c0302047c435bb500663064023066fbbe9a09ddf22da182e17797f728ac4a3e42ca198aa053f334afa26ff719466d3d74ab1ea933c74909948ad629098002301bd1a3789cf90d16bd318b17a432b555b566d4fc5da3ea022956773d500eac9d2ca1bc93c63f27783aa27d8f7f6166060302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310096fed2997c3e81aa31d39f1d02615a62dde91b7b7ae03d4b923c0da3791bff7f65fa3e30b1b1c6ce936298e2fcfa36b002302a82b1377567c1ffdaa3e8f35839355a3b724c9412a9964f7d3b07ae0e98c5bd785549af0945030eead22abee638ffb70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e77242ba80f93eaa28474f915d37731b29348446c083832345ec504533c81139e53597ae5ffbbcd9d35cdef1cb00e9d602310081153783f8fc01e16c8482fae2c5b8479d13300104b74dead92be1bbf00f58775eaab5ffc4dd6b1e837fdf6307d969040302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bace2af2096cb6d41704218908415d834696ddd9e0864a8f64857eaf5dc1b9552fcb4c99d9eeea6c9e13ed522883df330230727a4bf5a93e392c6c68cb9baacf76e469659e4dd12bff3fdddd6421759c9059626de826b49cb0807205b8a0823ce5f00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100dbf93bef1290a7a1abaae799cdbb6022300eccb8f77c1d2c701c756b2629caa79db9d3796e34acc8565de577836f6a56023100bb37a04f38b080cac2d60041b67d37e7089f2f178fd3d7832a6011eaabe026a8c66361cba9b74e8f4b1da2d6d2be4aa70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023021f8d1559069032aba6675c366a4f1c9f0810fdab5a37739424f364be182795545b168db807d792064312607d13a6817023052823f79368be44c6d9c1b67909e810908f96dd924b7c5783e2f7e85bb7020cd1d7506550a5af8353c5d36ee28fd2ad30302047c435bb50067306502305c855de9e0b1929191c378b574d6b35e2dd24739257fd5a975d10c6496a914be6da00d8e16f47188b3d41c343faa3a80023100d682de0f20c5f51f2e20fb3bc006cf8db35541b023d9b7ecf6298139670ae3b2d4b3ed14c048f0721a2503a1c6104d4e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009abbc54b76c84d38458594293571d31d28ed29052627abc4ed4bcdb93a118ec8a2c1b4fc38ad7332ebffaccd6929ff7f023100a930390308e6f4d72719e56c8c9082decebca6280a818204b682c014ace123be581a264a0947715e652e3d92abe003b10302047c435bb50066306402301a586019f5d4ba022dc1361e6059adedfc6a8879e3378063a305c0db508e3bcf281605e809f212fab7f8d708a77260080230674cbd671c7d8529a2a47e36ed9da56d6cc899b8f3e10d1bd8474689231f409428024bf9939a45daea5834b05672dfac0302047c435bb50067306502301c08f127c4b66070c7b8a6f8214de672ebb88803298167ac6e6b7ca2d7c7d914ebbef88ab7178b4dde33d9ecfd8675570231009dfb1399214e1589d3d4f780259d45f449f1dcd98f0a25c10cc481481420eb135663b8ab1288117bd4e8c2cd61f198c00302047c435bb5006630640230439d07d24739f981a0e5f14323d1c26ffd682887127f7b338b9175181e19231633c0416716df46dfa2e71907cddee0ef0230408c8dbf0d1a455a3fdaab2772dc82db08fa77cedf7a37999509d811204703767fdb9dcd1d8bfa90220a0bbab0e5c9cc0302047c435bb500683066023100897d769ec9d7bd1232645446e853f03be8d2fd39e55ad99d7ab488836e7e800a73e42831c3adfc02ba676c3a1fc9176402310085d7f60097b017b251084a0c000f404ef83aee1bf9c90f91743eb0dbd31d8dbad9e8a770368d2095e7321f33932bbe830302047c435bb500673065023100b645766cfc5f02abfc019674e9743ff4aff0fbf440df1d65531038e808c3426cbccfe992ba4ff879cb454311c8be0fa1023069e8955596ccbd310fd10cc1de8d8230e07e87bee124218d9a13b4deaef2d997b798a06b9921f90c6677ee3fe9b99ff80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300c99e33b45b5a9cf2274ba3279fb548043fd4d8a346c6014951ce4318815fe3010996aaeb3b274975f534e9f67310b2e023100f0319035d2da7dada347a484194559dde60965ee080aa51bef6b74f9aac2c7440944f8a09419dbcc462add1cd268c81a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cd4f9c4b1389a1a2083643d7f9d74a8831cdea279515a6b8fd0c0ae8141e432998063cce74e3195dbcedcb8e47190df802304af038a0d10653879c269f0a53a56a9ed06fc99ba2cafb7bd8027f42fb0c31ecdb6cade4c99f667769f79f8dca50d60b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230274066e67b8c651d0e60dd7cc6469dc2c8a04d4855aa6869fc25d790210bfa0e8c389388211cc438a146c7526e2febea0230145c63bf358e7ab85e73efbc050cdbad0cd18fee9df8e74466316634756ba77d9fdf7b49cd53c6c03bc5dc14c3a0c3220302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ba7ea05cae84d3ed7472598b504aa32fa35889bb9a71d6588a278c665396586e58d20bc5e20552d46315c99be6ffac7102307d5e85dc7d3ee9317b750879c957436b4eef4174179e205995d37a9af31343d1b157766f8c9db4ac22f1c3c44c26750b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c39a12a226abb01ea32120875e23ce18ae2a9955fe9882f97bdb7c86496dd2d1508ff2708c3ebc3849848b36b0431f90023100f48554595c6337adba4c5b02cd9b1f6d11acdc4727fc3b9a0b6b853d45975e97eb74bd69a3adcbb0c8f1aa4974bdcfd20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230314ecfa860ffe19c88777b0343c593a8d05c4553a26dd41f8abec4b18fd30f8360a04e82fb69458810f87a9bbfff4eec02302f2f8a16c34240f46edec2fd42adf9d4de0f8f6333f8e414986d4c1bacf5c8a93af9f594d50fd417f39460517b4407b40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305001467b82d68075c409533cd3bebfef4e15f1d8e7521cd3803d50639dfca455a4113197af5481ba2a9c54eea0838af6023100b855edcc9d85dd7c0786d0c6c2d1649824c7bbd67e9b2c6a3ca494a4402016a044965698106fb33477838a8c707576b10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008e0eb868d3e6ce15d6024f48facaa92ff013a5b77067553258b848bfd609a4f08b5438d45ce13b3796df323102118a41023006fac6eb2d84eef44ad34d71915b248d44c353cf20921f48a9593b00ef22a61e193d31bb6b0f65a520c990835b1f91920302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008ced8a8473ebe647366c768405ba7c4cd6e94c319f65f60405bfd492897fbe634ad03d9edd643cdf49de89a6486bb1a1023100ccf41b69963e53bd192fabc674bb3d54e6217b59ce4d56da8b7831b7569b9a41b6f9233e92f4d97666c561e4c49a1e5b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023064c0cc953a4d9c006e13b1dcd96d42856b605366d45c85ab42265a138bf62c7b536b9a867ac6e5f2d08fe9c0cdabb66c02301149161492d754776ed22406223396f5e94cf0c66377030a46226886a0ce057c2599b9c0fbbc884106ffd77744c700720302047c435bb50067306502303cccfc142ddbcb982aa9166faad136b25b7a83fb324420a63ee92d72d4a57bf760930b023f38280af6df4d7a7f8f975a02310099fbc8277fb1d3b9c05cc831494dc0858198dca484794b4d294f9133b4764f430544dac61299fe2d2a533923bef1e2ea0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009db247aae3bdaa8745dad0cb34e134f7bd22816724af35302d8572ee74f619e1a94a5a43af9500fda5c5318b053a16a202301219ce797fc43f20b688843370c42d4a402b16d7a62577774480fed882568014ab069a23af48fb593d9e358a16a9d1570302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300484fda1be233be1784ba6f92c897f95350517c6b9fe93e5d449234432980efdb1b40e71284c581913e4c2e4d913bad8023022f42d8a411572252762096c1d9b50e9bdf4ecba55b90808e545327c4efb6176733ab7d77dee9fb0ab1347acd969c5cc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230438b5930aa9453aca397e5f4f4216a3767ef38b9e5102189601bf98ba5293e210775c74c0021859c234d4eb598b5e9bc02310091fde93e9b2b86220b7ce1310965112203821e9c8213569cea7aa54c80f9b5908cb9e96cc53433f284912a6c64a66eba0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023012d0027001936b6203d8650cdbc31428463c9106a93a6d19765b0d541a316cf6777c4dd34b40761b6c61571b6153cbd102304597a4091d3a5b6fa81def01a6b91920935c68c1897c51378b4691eea7fcaeeaba76483dadffe82a64eaba00ab37b1100302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023047a43f0a222cd847967f0205664269340b2a2f25a9af6633cafafc66b954401ebc12cb4605366a1d2398516c7afd972a023100997958ede442ef19f9ace0ed6fd336f9ee0a971ea81d3236e2cbd5afe9adeaa3fff5f89306f3ce9cb19ee1107511ca9b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307aed5923662159856656ee89acf21f14f791f8aaac7cc55a3cdad882bf13c9c30e2109d63d027aec45fa18c4881bd994023100d355d42cbc54490e28d1cda3a569b1564cf04b1d042a713d814e3218bdd91d4966d237b540db3bfa24e1e9b0ff59ec9f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023075424ea937d67ab463690793bb6c2df27c7f26a663dac772f02df1c0efaa6d7ea0c00f4c12f012183a75aafa658ecdab023100f5f76546fe6cff4a24209410c39ccc6c613d0d0be3e1ceac2192d6a3517e4e85b96cd4c30c261f2b256122cc0b2e2f530302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306d5bcfe77e29d9243baf2a737afa2169419089dc6839a5215330af0bd7c06f245327cec233c3e8567e77323d35a51c73023100cce380e7ff6bc18f5eb1c56428fbfffc37488b13917a112ee7833f6c1ae2763362501e7b4a3f8a4a999faaee3e1dc7520302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302330f7039ce0646320e88db6ad09a2786ec858c79d30c8ff507420b09921098161f8b42bb6629fc3cee6364a86802459023100d6afe805e24cb5884a4d282ffab11d9bd8d43c6f63438ad3a9463ca276b8b9de768c6cc62a587d15de40bae0ec05bf600302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303d7cb7649d467eb3566e39d1b8839310036dd58e5a6ed1c775fe7a5d20c9281a9900a4bda2d32fbbbbac6bb218499c1b02302b4e6377cef135666a09b9fa6110455aa068c1e1b97f7e42c1e6265250b6d9b391518199fa13e8854ec24397a5042ce30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cca78d491b6e23f5fb3ec1dd8ba3a5cb58dbbcffec1ce20bcfb6635f9f063af1a594c3d6a4047248b02de28427f97f0e0230052ac8226dd56d4f091b5a36d343dbd276a0653e93624014a4757e68c2b0769477e0a50e3e64187f863a1118bf0fb1440302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305db7f8c3f2f2080989b6c1e885ddf0fb715a60a9f337a77917db9650926f1ec14b55dcb3f5cba0b9df478d1726b6badc02302191e0cd23c9dba629da5a62e7e9289864b886824f84fa425900efa60467eef738ef822a36eca7f6d83620ee482a9e9c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023027d64fc4ddee968f091221f2c69dc49735408302d67193b9f1e0f17b61516b856edf4d5bd14c5d5172423c33d7182a8f023100d38af5dd827409baaca04b9e5301e7ea5afb13250a78a446e28d8687bc1563e58c440b061db8d2b654e44beb629f3cdc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303171b75ce72919b9cd3784e03a9f2af99552d8d64d61cfab935c39fe6247ec650c72e5c937dae1eac4bf9fbb5649adbf0230513450545aeedc7ffcf85ef3b87abdb6642ccc642a01bd96688906ee6addec48a67022c6f9ae2451919c2ebe1e4a94430302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100937234608f5411209e37d24f7cef74968dc8a7a70d4754da27c69d68a62b384a530fd6286abc4d16d660df10d3480373023100b2597c6a66784f7b46eb78137ed749ce47e2293479fa3556fa538937926610425dd59ddee073d5bb057a7a83007b3f800302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a792c88aca3569852a0cf2b7ba106d066fb221bf6fd28fe12c2ffa94c8f6586878eb6ae5fa89eb9dc4f117f4763df4c2023024f7fcc4ac88606f14ffc5bcfc07246568d6974da92896f079605bad53defbacb0dc8e149b6daa30b47861d9a75882670302047c435bb500683066023100d3b648890c862a1a5c63830b8ebd66e05129bcea0126824a6e71b216ffe30760e7177b5b78c7729579e211545b1a2679023100be53cd93835c1689cb5fca5422c77c3bf1604260c7f68e6573d963b981502193ae8aa0f3fffd9dd06d567749255f9be10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023037b4677ea1950857c5fe74980d55f6c5f6780ab2d436a3f119990134b8e51b0965595ed9379cfd6684dc724905e9d3ff0231008bd2110dd4796e75f2fefbab53317dfbd722465f1242869e6df1bdbd5278a9880362b2a8a5fcf5b23920a8bbb2707ca70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023017b2fe3f304fa17b48e665bd397031d167b2382822f79edd6cf71ae3ec525abd2a3152081c30e31a172ad7148a4423f902302f4d6904eb471f84152b3def9fc9184e471ca5d52c8c4a531b4d46d900c90b6ee9440a0c985c6224f13d499a25a562a40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cbedddda9b05deadf5820cd37fa2624895bcbf65ba5bc36e7ec4df9b08046b3b5f640c84ebef48e0d9ea7c15a81b0143023079fcfca3f21b96455760b16974aa24c8d018922b0be7923b7cb61658fe22fe406cd353bc6206e5b761721adfc5cd2a180302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230724f9803a0fc3a6baedf612461d852826106afe7b3cf51d76290d6be78520f1badeccc962faf1f316dacc19c1e90b9f4023062eafb9363506fc363abb222f19c274293dadea297878df587b3671a3b444ce315b5df82e276249bf061f84a085bac740302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310090ee37f32b9de006e527144e4ca874ad254290f9c75600f0ee744f796fb1b613019e5cb80aa4bcdeb17bd26f75274188023100ac5a5d882bfba9e9512fa8f18fdc12546e44cf095ae12ec17992ed7d076a3f29e79b670311eea1273c7877f80cdbf9960302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300e004491b37ae9806dce982edc05f63a612e583640578906b1a8d2b7a2ed5cbfad20a970b2cc6915a0717faf68208f3802306aa7c557ee3c4fb044ed0ed4dafeb24ff7ebb6bc6c0f3a7780055c1d6a8771685c6bdd90ac4f155f86e1d9bd6ea4cb880302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304a1f2214d931c02125eb582975b7a61eb2631a89a451bd0304d35b78d17c4aadd792eeece6157e3c07c91abe987ba44a023100c5abd5dd8b8374df14baa238973b28a846de73cc43ae861d3ab9799a276f23f46a4e2c95a86e6f4de2f188f77ef24be20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301733dacf3ed09f1de1a38ab03f92c715b607db15d286d6a24d8ed0dbf64994a554045b37630101bea98a0d79211c50e6023100b1f7317ecb5a197daafd06d22b7bc8978818a4021d2ad2b67dc4adb4831df7cfc1f04fc0c09be8f337e1f1a0eeb997c80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100da775c7433f6a3d0f7d86b2efc2dddcc0e14d191b3016aa736d5a9d272d812ac502709de302f2bd46c2132960938e6f8023100aa2c5340b53674f9aa00eac5039b10b9afc37844a73978b6923986f0467be61942495e731f856db60d917cdb7e5fd80f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023071b56e11a733cc200e075489d721a201869a5edee84fb81ca1f4ebc49f49f243fac617262502426efa11b00f21d7dd440230494c9e13edabd03728a6a718b76cac85277166e5d3e30a52ae386a7d0e976873909772e8eb2eaa5a4fa2ca75d862cba00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b42832df88f644a86d2c86809b800d035cf33a50eec185cebad2b12a1123e15b1e8df023b4982cd0d307abd7caa754d6023100ead0db4e1664b2bd1b1985dfcf421f64683e899ce0712c79f361b26565c4143bb23466b6900efbc1ec1ff170d043dff60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f19ca00f6b7b86f3db411b22a3d8fd194ffb41cdd1885bbc4900edf98b0737a610d393bff3c372aaeeb2fa924f59bcf10231008349f1254d746d0d3bb4638c1fe3e7f1ae3cb6ebebfba1419cb298c579b29c92cc7db29b838e288290e230330a5537930302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e020e371a6dec8bbe2257ca467e73a72c8b05117dd7cdb30038fe1c6f760f7d16fb9b73d8ddcb84373d059193783bb2f02303b3c84fb5015cb67a75afe6ee9e57c67907774a58e633bbf7e1d9b2e4c60de83bd12551d568b42910dd2f34556f96bac0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310092db361d63dca05fa73dd3e8498009b1963c1214d6bfec6e37d1740e996f9ac5942fe490d2dbc03de2b24ce044a306c9023100b3b82bda730c795b57873e4586361e1a7db2508d1293379b1c883477c6cebdae2787261ae9701978d1ca5a61d23209e70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d01de0dd7ee6ed6067ce2ce9b5c4f435450e4a5ed525ea350737b624c21d661e2323ac5e849a9c89098cf927910a54e2023100c2b4698f52ff2b411c233bf977d1833dfda40791a2161fff7f466de8c078e3ae462ba74f187bdfce275bf0bb6d70897a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023062fb169073a78b0b8567b32497947062fda97c5115b4aef56461b76a57177595c7778e79ced25e280697c8269c59d791023100f93b19c55ffdaf36095abd92ffe9e8241ff1a3ead07f3341f113acb0ce851eb4f9b5d896bf06b433a30ce2ddf1f5f8250302047c435bb500673065023100fc76f6475f99f4307735db5682b8969e1122de41d31daea1c56abafed46e094ed7cee81aed2091c078063f21aa56e9b502307223d9baeb5ed6b5756ad56e151d798b374314ef7e043459adb896d6b1df97c184e79f9764fe426e5d50824a1067a8ac0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300dea83de46c4f5d98bdc6d2db446a6e406a183efa48ae32e53e1505d4ce2c6fe73048c91fb06a576c0bf151ee662ef62023100bba3264713a428c8d7f3177ff884a3622e38ad99d0957ae1b3d5b3d8ae061fa3f0754349cfd3e9510d8aa5924718a4b50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310093622c9492defb008f6978cdd833cda331b7a4639e30cf5d12a9ce16f0bb1f7fe57814be3c8492335724d78229d9c5e5023100f32db4062eb18b61d059db3b17c478f9ab3dd635ca6fe158b5bfbc191b169602603079cc6bcbfc03473f75d8e9f1ffb00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302121bf55b8078dbebd42224cbff249cc8994183c027960a6d115bd2c1022e3504e9f46ce73eede69212bdc72f284060b0230490fc80d3bedca417fa9daf637c16b29ff362a48db8fb0602faa096ec8825ab5680c5c866ccac7e638082e1d1a97fbe50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023012367f2dac311bb9f8c797b10e77d6ea7cea74ef98220a0cfba5b9220566aef3f89d5fe7e4bd8d040b316650cd684ee7023050d9242035d71a9872af81af0c225ff66ae7d10f3d16340ff3e56b3450b37fe6dc3bd5d4d1716395c1958b64b35756d00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023065a20d5d6cafa059eb393a0da61075f25e1de7baaf2e040e23a314cb5909723784874bddfc26cc0faed6d4542920f77d023100ee2238e9dac658e5a05325d111976f57c39263e98a2660292bc501b2c116bd73125f0e5f52e560bd7c196202234287d50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b7080488ec34bb4c04a8141facdba1b83ccf985a0329623272a98e0d69d82254ecf2005d28efd6aa03086b47031fcd07023100ca4807aea097b9024e280d3aec1383031fbc57367b40705bcfe9eab3724f22fb9f996c5c77d66092568f0c1afcd2e9910302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310085be52f6f018c4daeebd22efbeadaf5f4432dc330bab2db66355c215b74e1209c3b86e5719fb93cd93696df1ad6e9b3b0231008e4cca5753fa1dd5476007bf83b6259f6655efbdf2e67939736f8294596cb0634bb17f44c83c91f5f20e2ca0e65d69af0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c96ce50c14c24e93bfaa1e15d26ad261710eef2f2d4e9eccb682c1905cc018128c34cd3432a5d23d19548008701cdfbc02304b5d42a130a5a2d5f0fe5baa5f7b5853c20d4410438937d89140863222b61effdea3b382fe65afad87eac5029a4deb170302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f7619890a408ceab69b07cbd7723a93f7e6083713ace7d99942f6d46588f89238fa6aad16b6870f723802c1cdd8452eb023100fa69fc99dd5a0e0cd5107d400bfabad2c8c67a9e9c780a840040115be980021f65f733e233c5fd73a47ef4651ce0c2570302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310082d1d9f237cfc00f756ad337c1e73a8fcd0aed31d3a2abf54da0fc122f4832a009ddf033073722d7ba377247ed1a714d023100f5aa3c89ec46a7ec270aa66a584f55521c89354a34a6e886f1d01acf85ba4a5ced0108fe2f272baab2bb089ae7155e480302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100acd8b995ea87ff7cafc6a4b9edbb7d163f3830c568d65008ef6534ab55c34409c88bb1dc50cd5684ac55efb19c4d0291023002f6c6ee447b83a1b8ed0bd148e8664de05f779a477f62484aac0576e9b9210779bb86314736f6d833fdccf8ace33e330302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023017861bfbc6898364242ea2966a650bce0ba7d33e9364772a8c155ae5ff60a5bc65ecd897511e3c487dd89b9b01b7c9600230654ef33c4cbe4723f7d7c0511735f64dea7fdd48ba9c79e9a42496fa0f2c5652d1efd60a7264f88da9e6fcadf409f9710302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ce55bbd6270da8a5c2e61d4b01d8b93460905499674ee34dacb743e71ff495032af55a875a088472a7230253222453190230474cfb7feb4c23eeaf851c9c92a1517541c690d712fb6bd6233e3f4e2ac365e1b44fd2735524dfa4782d120c89bec3ea0302047c435bb500683066023100d3b10891b4499ef6ea56ba73c86c8b34e63b8d5802b650efb340d9ec11b082784b4192ee59386d8b7430aecea71d8f8a023100c4ad5228f3eeca700ed8fe25eb319cb6fdb875aa381c4642ebff23f289e54bb9b8f1b867df754309eff256a80fb010ab0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100942a1b459de4bee927fe53b84afa1c74fbce1a8012738097509a9e8fe4fc33db7f5b8f5be42b589f989f758455415a9f023100e4ca7ade5788f9b03a9d26878f9b3163e310e44594aa889815b97ed7a0d6712225d352212976265c91d5e668d479835b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023038ae86cdc950f938f183dfa27db93f5c8573dc88df5877c3ecc1bd2c2d7d6f3c52c7cccf5f6f7c79c4880abf6f56c7d5023100dbf1718824376a2ebe08f8d4f78a49324ca7e1cea9d5fd979b1ac14af0a65fe6315376f758f69ff23e6d3e69bd2583ac0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ff5dd0265048d69c1f90038fbd988ae3e296346cc18c8852d50f5d9f96221b61da5a8f98608139c7b48fb4b123826e2102310084e5c28922b31c8431c14bc47bddf382df198d2b2d64053eeeec104c4e7f0297af76c45933a53eaecbb05feef799b1590302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023029fa1e12088735065d45c2c8e39536d05415c6679b4be67b52cf0de983951fcd76b9e76fd2d8aa26d3f2a1058356a8f9023100997ca2f4f46637592ab82aab6ff67e3c5449792d2f30f81221ddb818e91493f93171acde60ca786b220ce5ee04aadf5f0302047c435bb500663064023007f2b070fb8758f3e5cabf42bb88c7a5dcbb4c0178374255aa553d5c6f95917056ee7bd2df8310649afafcc52b22d10d02303b4d1f12a01a0838f4f62c207810c9a7cfa0702e1fecc726be74de7975f94a9aa99dc3fc92f7b74964edddf8bc7284680302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304f9b142c6584e50a8b33b0b1ac7db7f5e2b7cbbb3f45123c298478376a880fb93a184ccc54243a5539a84ea1cf1a55f80231008eaa89828a4796bf66917f467e8bee81e6156a07103d753802f47c14b22361b1e63406df10815edb5fa8fbca12e8aed10302047c435bb500683066023100cd56ec94aa7675734f48cca373f43826f44d3dda15ff5fa7cb38a6876addcf847ac9ef592753c04dc00fdc719b5d6224023100a59d2fe415c7aeb527adb9f4cbd7c7f73c7f66d44952fcc8193065e47432a7da296059fa1c932f518aa35423564545bb0302047c435bb500683066023100fb2d05463ebbb8340349c4b2943d373eb3546b7b7ac1ba745c2af1dc4a9a0f034baf906b628d46a1143eff10b2db369c023100af1ba8bc38d78c44b6abf80228a719bd4a0a3ff40497e790f24fefdd5e2eb9442bcca2ce49249eb1f262a5b304f11b240302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b3e232bda79b2b87fb5be7f70ba7dff98c5a638a11d05eb885c5d1c50fdcd42d7c767bf6dc6376a811f4a33cd412e6cd02300dc3d0b10e59864f557afed362e62e54126ad681564cc15985a6f188f516600497b0eb66a11593c26d7993ece2a79bee0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302633a34923902b82fee9eb0017d85a2a0383588e552dbda3a1f200db07577ab8a33be2c65d05d16991d2bcad5edfaae402301fae9630ec8951e5c23cf7c3fb5c6c6a9b152ed04ee2ef7bc47196ee811710b8d0b1bccbde5a0c2b36332b6ceae5aafb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230196c370c0096db31312b665fcc46527c11e283278dc4e74d6bdad116a5e1b3d5ee7f9f0298a487099c53348f70f5b0b6023100f2bfb9d872d7c966615d4a6c77c51dae0fac81a2c5caa78ec8d159a8b9ac3f4777648be4d5b0133288ce3cb31c70a1350302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307efe8ff3cdbf9c391a370620c555cf2e102150dcd4bcd90b000ed941f98bb2e10d7f21411331eac4e56a20216bb9aae5023100a6586c7d1a6fd1c5b8f43a2dd6e038fa9a721bf71de5c6bad006a6d9eb1746c77a776dddd443ba3c9aba3e43419ecb730302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fc63e7811677016b044fd4dc0f800e83e75159f3177876c453d614b266e935413c60ef4421cdd840b2614e00f210ce46023100e39195d286ac5e012339306ab35475f58e136d4ea56a55f0ccee4e3beb11b7bffe8fcd264caa0958c767841e2947e7e50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302e99fc8ed870618ab1420bf0465943036e94e2b44060d4c4cabd67426cbba1805acd34fff566b24373075e1202dd01d5023100bb6d488af33f949ce596a646a62c01e54633b677cb33e1a78b0c8da08e154c96c2b9ddc2cd5a0475ac45a2d3b3ab7e450302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008ec0b5780cfb1bfa9c5e646d9658a070b9744aaa714069ca98aff0461f1be9075a9006405de965c4edc64c28b5e57c990231009edaf657cd81e874733b3356ceab9d3843e07783f10b3cd4f538251caf718bba9c6d88517b14838b1e80b0e046f8d1fe0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307050159d7befdcd34ba561ac6894ba4d14dfdd3bc82a01074058c1b24a8f5e8044ef0d2eccc3a626fdafa6b14cc7ba3d023057b14728acebf1d850fb842b72affb898e240347730dedc6f41088eedb8bdd1aa23aa27e582458b6563ced70b0cbfade0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d800769f2dfea6677e176da568e2e0fdf027e703e020a29fda36295bd1ac80e62d931601ef7c38caeeee81978e727586023025ac8d55a464d2d26675f411000545576792800eee055b84a9e7405f9b248f15e240aaa2ce5dd9b7d7bb615f48b669530302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f821cbb2e75936ed6f2253fa23cd23ea46ed963cb29889209c8162ba7960e4db19dfe5b8b2f2b1f5e0ab1318791ac1d3023056511ced703927874913a2238c70c3b243b1fd448c4c6ac88415774327419b5dc72b2dcf4ba4d690099aaa412bb7412e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300c8cc475ae862b36103401cf7c19e4a4d06e36561e85deb383d02cbc5efabd0390bc2a3bf7c61860d8b19e5a553e1fc1023056bc98328e785493f6cbe05584f621c3d111735d70c68241be85bfdf0fceb6710bbc0768fbfb461040f1a45223436cc10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c1637792ac2d3b42120807af1fcc96742ee2436ff84a72022d644752eff747f3b29872aa51bfca5661fc624cff85cc59023100a1eb4c710d6a8321d4e7a64796135f39a829658271f1a783a3ae5c873010b56f9efb32ee6bb140462ce36a231db929010302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023022b0f77bdc741a0a74f596f25cdef9d88dc403722adf824a25f4ca259d9e7e2c3a428d071f257925b8e050b34ca9eff8023012e0b40fcb8517148aad3a883a5a1d45e4432a385eb0b37e26b290641d27770e28f2479e7abb37253b3c13a3d7b54c5e0302047c435bb50067306502302a2b24512e88d457489cb795615202b65b3d06f4cbf57a5aa946eb3f1db9b2ab9f8498a6a6bfb5dbbe8b50a6822dbfda02310081bf431a0d30f13bdc4956bc618056d2f992f2c69305e7392891e1796d21b02d26cbe20026d3963358babef6ee1df6170302047c435bb500683066023100bda61012019cbcf2c47f32df83f2bf9db4ebec1a146203adb29564fa338f7c5379974432474ff8de311f7c1fd2bb8f3602310095be2023a8b28a2ff7f8acec68ea69b44748a9bafb1f5e58e8bc87e3ad44e75258cb17d27584cafd38a3ef9993a853b60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307e78fe16b8626e92a1aced8439ff5c1160d6ed7a7e9231cb78b6635cd1ffc2df1a500efdd681a6625859da3cd85e693b023100a535bc793e2464ff97a61c0e82efd586a6b9d6ef3ff3c08f7c43f440170514c157f4ea4b6c8f0e980adbf268d398cbce0302047c435bb5006630640230171a185b075d5b4de914b2e01fec8e266fe708212f3d33402bedff9f28bd3a593ba53d437b9b7649f278fdd1356e3fab023038c489911af586f50b04e93edf1b8687f44e9e39b0b35bf2847f6db5fefaced66c6053cf5feafd9740548efcff6852660302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f9472ddae294b5214289411b75c79e65a9d2eb0243267af3ed15fcc1e9191f14dc44e2ecd6283951766e39a4504c47bb0230355561d310d4e5ffaa1b373c6965150d81e1007088d0299128ac7272a8e8f3169e119d47d31539defacee3ced80a36940302047c435bb50066306402300ad6a729e013b36ac34e420876f6d65fe89db27bbdffdaf3b1f16517edfc674619c76b69fd0e13fb5ba9eeb81be5235602305851302b9234f23881ffd22096b485198a2f56f4fae1479a84e78f71d3e2fce19940e9df7ef9b5c4154eb827a597734f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310085898c56a82806ff71d9f3a5111e10e0d950cfa19e8d40632a4d81cadea7d6df047083b5b976957d0997e24daa9c51eb023100c0c9b253bea6371fb3e0889357535d3eaec0e41f460ffe851e749cd1e01b4817d9733f7c2c0ab991eadb71194770b8840302047c435bb5006630640230576679aae2acc78622176db11f19dbcea7c96bbfcba6261ce2f2e91ef986cfa0bc8ed2d0336eb5f4f5c7d54eaa350842023009c8acccc5fe83cb34677b0db54bdbe10be569b5fe595182e0969bb2799ec15751aa74c6697283921afa6edaaf59574c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230120fbc665c1e619d420569b33b5db43fdcbbcd77c4d5c73349f15f65fce47c6251a08c562c66b13e7f5cb67a12d95635023012cecf1237c8b7fc1c212a059e361f81c0e2fbc00beec08041391050c9109d2eedca1e7ddff538627d063eb002bd10440302047c435bb500673065023100a6211d68bcc733c80f8d8a77f79320aa43377c0cd0fd3659575f612440493675d3ebce211847b4f042d4b541829ae56702307c71e56fb6d6cb730d238f026d0f35b650dacf8bfcc3a0ba84fa2f078c3816d4781732278435ac92bafbb478570a4cb70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230486957de0c52d932a7baa8bf65ffcfb80d035a5669320c416425f6f668e8715f85935f992022a10eb4537beca1aed7f102303ac4efc0d334b1b9b70dc9a61b3e8de9b9e8c35c5e7028ab50a87028f906ef298430850c6ae0fa6d4e8c6da6c2d6c2bb0302047c435bb50067306502306d3b9a69424cc7e07fe35f5d53ed98fb08f6b771e49e5eac0a97b35c2859b83259df06006b64035e7f26cfce28c710b3023100a27547a0cb9dfb801d82bf25edc5e65769855b5eb9140bcf4ac44c558e1ed338b2fc5ee54deb2bd4f28ea52a21238a8d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100aa2aeab9461b57e0f507053ebdcbdab56e6f98d8297d78d5f834a1e54f242b6a325475001a585e7273e47fa605d8bc1a023100fe951d66c6a994ba4f13bee7c77b79d6565a606644ce358bee1a14e0843cf7a81f931f30006134c87d6d553787df5c450302047c435bb5006830660231009d0114989bb5ff20b873b48049524ab938fe5f9fb28453613a87b265e3a1a47676264b9d92522e8f4b65e0cef2b160e20231009bb4bd731b62d54ab98bc97f3c4c234a30addefae20aa1c4fee804ba501fab1ebc607c886496d180fb49e7c1db8227300302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303dd6c5c8253388fc5967c3d17ebe08e9f817be855ef656ac063213d9de1159144efe034005484dbdea84cedbf3f6f52802304899a25097e82761214eac3eaebcb98cc496e6b3692b24f4c8eb71b91e07637542b06b1f86a7849e9d60ae3428d03af20302047c435bb500663064023011bc3a47c6065167465690663573a1c6556b7a22dfe4efcc44f1b4d32a2983e2dbe3f72468187fdd88fd86fd77e5485402306344e468fb3ffa1245290296d13b88bfb3de812a173daa3592e5e238f06865f76734650253be7b4a8514728e32f7bdc60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023069d4c991c5613260e971ce9ba190ca807ac317cf0b1a9b6c69a90b74de7e418a10fcad8dc7cadf47bb2e878baaf372cd0231009d353074a3c02e2a8017a0e6beb6228af5612302e92a01bd989aec67c8bdef5373519933d16a1a8fe4d120b942e6b5970302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a47a92c8665948d5a7bf6ba1cea085932b1943ce5735c0e0b31a11b7dec31b4f0a00ea128f913d47c4996014ced55ff202307f6b3077318cc85c754edb9d33469f6ce46542d57be0a1f513e0729685c2caa7a475c04874bcfb2f6ae835e18cf849a20302047c435bb500683066023100c649a0cec2b1861e5026d9d1ff3f0e7270476ab74e4f12d2660d9b7c7050ef834ddc101c62bb3dffcc4de58226d1ecaf023100aa366f29f40ba92077af24b1e9c71f105f044c865c1fe656a83a65b10842acd4a48ce8676a55fb39dcde5d7d6648a4100302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100eb8c5dc4169b6c6cdbf51d11a26e6a1f3045db083fdbb4ca110dc18ecfa20ae1e3ba77b4517d79b972b4ab7d9ddbfe4602304515326ef56d1762e704fe35ed0fd5c1f0e60828d940c536275cb0925a0606a6dbc47d0954c3dc2d9c0a26498711ba790302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d0d240c81c6bc88fd3e4d2560ce9b9142c8dcd9c6fec74cb4eebf830e580b8fe7d946dedfd283f142ac001a4f284fb90023100ba2f035bdae8047f973be105311f25751048bc0ff1d1d010fed93601146c206fc23557a64cae4e726b2dc7f2ce217b280302047c435bb5006830660231009326ef5a2803c3ae54783df2eb6558e4172286d54d8c116cccf19c8e00fd6f21f49c09b9b8b7ef7dda991fe84694701802310080cf1c9a5462eba334f204ef2456727ce5d142e96eae286f410e57a49f9284000354762f83ee5bf3a8942c2413e935ba0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e83c0ed5cbb2596de53339e4206fadcae1912096486d3dfe5038af163a78dab43973b9152d245269de228a84e87a8357023049d6f771b0d347f388bf21f28e91d3733d8d0a4aa475c5ee1cfa601414b819c6ae23181617778c682f79735b7551a6980302047c435bb50067306502302baaef8859f3c81acf466c8fcdf8fd9c6910e1fb40a74a1f3d1b5cce2aa3e57e310fb900d5e1102eb25639b94e6bc0e7023100bfe968c343fc71a7602bcdf97d0a4803807b3a99bda6f21da1124d291899493893e1c5ad128ec98f891d73b9632304fd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e31cf5a5e219ae6e1163337494b4a6ba7c38c92bf33c4502b1f987dffaae15bf3c2976fa0ee3ea85541796eaf6ea14a202307f2dbb75cbd8cb25911681edbbe8b76610133a11aef06d582bdc1ff55cc6b184125198707a3b99294cc1b74a21249d6f0302047c435bb500673065023100efcaa2321ea1101822d4e40062085d2e474d02a75bf50af7082f91058faaa199376307f6365a3885c709a5dae459a88c023043f37a7588a81d9c1cea7f17e1ee6347623d1fa6b698c73d43cf339368684362b529e3f480c5f25fa76caec3c7f822140302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b3283a43a52276a828379234862976461d0fe9c720bdd04b0194e3de54207b83407e3ad84ef2b62ecc4752acbfc3fe5a023100fcb605e6f582c6502251b8067ec25003563106cf2ee4c8e0b56493f72146fbf0b414215c2db4887c493599d79f2c23aa0302047c435bb500673065023100a48196124657187144c16a5884d81403ebc457b8acf8d2b88435d77bb00a35e0c61c97ff1d50d3299ffcffbe7e1ca779023070cc1c2af53141996c4ab7971223418756ab8e71e66782a4682cd644736caf89433205e35bad24173fac608588802caa0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303d8076fb36bf4f0e5bd5b7feeca78bb94b16e5adafc6c630e4ef0fb1e706d790b3348e5e0ab271d9e961d7807d69f17e02302e043beb68171f0aa9fdfbec5f88d595c541ce4588e228de54aeddfcfeab7fac77476311d138f4137167be6ca9c269bb0302047c435bb500683066023100ddb30f02b59a66324ea3034e171a2aa3b36725350cd7bab4e93db7efdaa6e90c6b0c429052d8d98462ac834c04292295023100f6384a8d1295e028a1e730e1d1de65fab3e321c33fe4fd36c867e7697829b1325bfb788fdba9b18b67498c7a588e32b40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304e4907ef5ecee30891d22dce529300bac55ec075c6a2e081c17cedd6a17944b3ddf2eb675b9f93d46d533d82cd96ce57023100a993383190d52db5b1ec1767bf12d58020888ec4ce7789630a4a0fc33aed4fa59946b8b03d432c847abcb8222af4ad820302047c435bb50066306402303bb1f6b8f452f333766088979f08a2731870439056c9bd058a3518cb5268c11fbb55e5dc6fe40f9657f7d4c82b6fe46202304de653d748d38085927b3bd3ddd508fcc86c805b4144986d41f502eb669c86bab945fe76b050c4e14cc2066963b6ed4c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100baae3841c1f7452b388878c68e427e521cd69c0576d4f2431203f88be5a5b6e2d3525899657cebb01243b5070cf00979023100cfc7fb86be2bc35f31159e55faf531fd93200ff5c381e0a9bb244b29a83ac7a1cb659ef13f1734ee7b4e6226bbaeedb20302047c435bb500673065023100b1bac83d0a5201d0e3d7a55cc6ae796635b4982fad9a0ee09830782b927eb58efb5e53c1de971fb18fbdbb759b3cd2ac023045cdf81a51893807bdda754e722ca086a22fade72b2e9fc30b366f5695d60de198dd5ed7b9465b70f0f44679455446330302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302b55f4798d89107f6cb24c3d2ba20c7e6b139603fe2b966f87f1e107f0f0265616c90e836741969f419d08fa1b7efc43023100f8e03064dccf533e27b4baef5759862dfeae1081dee80e1e015dfe52d5400cdd9e7f84b21ebcd3accd6344fe102cdc770302047c435bb500673065023100cda688473f4fc96a7a3b2380e16c1f39006f601c0616a114ed8e147e73d74e38ae8c8648c8411ed44cb52511b69dd2b80230200dd285e9c529a392d34cc92d6a677aacc75abd8b0dc04599c63276e820e4ed2c11f3e2f1df1b49f74dd2d1b94417cd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230752ec5d5d7e9a89317c3754e53b486eff04095ebd05a7de15d4daa068a9bf32fb11557f0f5e8eda338843ff2bcb0cab8023100873a70470bf4e3aef9d0c7a0c2dbb9aac456af9818597532c52c17fa17e55edacf6abecb187998a05b7bf38ad792c6f60302047c435bb50066306402303062607a0d2de7cfbe7205cacd3c88f21401063d5f2f4b32e2a9f6002d58ce1a0a54dc99bb19bebc98adcb4e793ceaff02303b043329297877f5e97b6298bc350b747f645f0c31ac8fbaed692495c1521afbe75d8ca7f72cd336210d377f541ca25c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d174ed8714c82347eda87ad9e70e7260a30d4ffc614a35ba1d76b5d05d23d73ac8b4e5258a3f3ba0475283808094d621023100f6bf06bea9e4f4857dc5d8724a7154463394f8ceebcd0c698f09a59b9f68340cff7ca9022a61e1dbe3b0e3b543a640b60302047c435bb5006730650231009185e4bb6b29221d3dc004d506abc46a96da9cd1ba60c3b7e48ffa9c41b640d069717cecde7955e6c824e8ca452ba2740230785ed87e133e8625e51f5a010c91fff7f4dfe5540f5d617e05e86d92b32de6fcece308b0b1af998e4d5a4f3baf1c86350302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304f5275c20cde92ca793a59dcc99770b913066511bde67cb0dba8b7b97bd2c789b687f13518cd6a2e2195c1fa2121bfd402307de19a5b86b90e1df993c2bc186de5ebc66a539fb968fd1d07c32ecaed4c71110b92e6d8ff405e5c81b3a0c860f75b560302047c435bb50066306402302ba477e4bef39fb98566c5718cf3b08385aa04d13192aa8b701466a71829bd2a5596b99851e6edfd4a7413cc3e69f76102300a27581c948aa609c3c56e49b5a2b6b9e9ad52c9fa035960f08edf8973db6c25787b4c92bc19902a4988b93d57e04a740302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008bce48310ddbf46cc17fd78558fec8675936825c8579eb093a2ac6f272d4a8d53965a20d02e7a9a7691236a1828c8b71023025adc952116677db9667093c3c2dbbd30f4c80f939e89f9387f4ab1d34927cca6ba0a355b3783b6d3d7269f8a0f471f90302047c435bb500673065023054404ab27ea536da0a89dfb44b5f737465cb04ac353b67b48b3645e7a491347fd38ceef33b0c669ece646f4a423cc61d023100d1a67de64ea539610ad6c93df9c3ab9cbec409720ba3e87c4200134994b47db546a9563094e2edd09245c3a28486ef870302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ee6968c1d8b793347bce52c34173a4cc9beb6ed4f374b561db2f3e4980d46a327f8d5a1db2ae3d579959223dc48427c1023100bf3edd8ca92a9c6698adb3f59005cf1e06b95be49e8155cd59236d84ad54981c2285308146903b7b7d144d780ba811bb0302047c435bb500663064023100cdd87b4c856dfe9032ca9169ccd49e2f9e1ae96cc06fba5141d675587a7a5a9e78394e13d0ca1ed0b793fb4f8797b7a7022f28e485a0c2e9422ccb44a7fa9e2dad1030d7f7cb68a5cb4c29722cfb35d8169d7994e02f085f0f020641e6b093ee280302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304833737259d5016ab2f00030f9266e905fa6f87d72fbe1ed68e6af272b913285872679465305edf48f8b6ec038097fea023100b6f8889cc0461b66c992e874792066d4f5dec6a8fbf91654d6ab4e9f8f3419d17f49cc317a8b093deacea23d2ccd22ad0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023060af8ee2eeeb6a8cb50ddb7fd6f6fc8fe21598558ef14385f224cd27aeae1c76dcb6523df150a0d9b94455d8ac096eca0231009504dcc24f51b89668c9b5c6a0ac147617756dce0103de14263b26a54b5ba98648b67137a6329a35656946efba4598560302047c435bb50067306502310081db666025403c035a2fa012ce83c78d805cd22565201cc4322f577fd1ebaefd686d1bff23e80c1e63b2289e15ec70690230687b8efcb23982d9c94c90fdb936026679ebf76145e8eac0f0a914b0280c66f2826f360b0fbef3151291ec68dcb5978f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310088d5a1d8a19014a95e28800f27e8fe657c2499378d3870f92acc53be543e28d6764414e4286e0fc05e7050dab6e43a9602307d6583d21ded619e99bec44720d566f2d25bab03b34f5ada5996bf33efc5d1e22b341f9e66943401445ef4f71bca3ca70302047c435bb500683066023100dec82e3d54f34df65a23fbe1b22232f7237b5f31089cfaf1f39f87603331f6c587a91b06a9307db5d5eea79621062fcb0231008a2b10e32ec5002ce1b22a3ee38c9e07566177545d4a70fc7daef0d01fac2432aa0d0172014a221b674934e2dcf331ba0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e18823b38cfb4a244831c8c76e9ffa9486e6a86caf21a9988bd6fd2051e4547949ff4fb2bb523984cab97f6dda314c4e023100a691044f213b8b347966c03c0a8da4d62e9b29d70644b7a8822a5924793c871a43e4382d2b6ac26082c9d7676ac6aab30302047c435bb500683066023100b0b53ddca6d7a102d5681955b62050a313229e41c8476b40cb536fb49947bb2d6dbf30efd5cfa1a69f9ce5ea0d44660f023100e8e7772a2433f80764d247d894c01ef332afd9be23f1e7cfb39987e08db47912c67c9518f0d456628eed2a2a05921a650302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c14ace49614cfa52ec0b73a197e6fd85687c5ecd38d5bf7c430c0a1597da80c5646e87904fd840f20e352e401429379402305966d6ac630673c4cbc90c35e217bc8cfd6fdaa462ed6f1fb2394ddeda330a64e5585b078ec5eaf24791afe0902b1cc10302047c435bb500673065023009ba2d817fb4934e1277a3a2e09c14dd0c42da4bec4669f6ff38edaf14a497cf165eabdc32b2a1ff68a6042178db0858023100c936912156434021a5ae3ecb3f4593fb526d3037e40fd3f516a8644740a22fab30417b0993207004251b016b460cc2bc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307ae894e2b73dbc5bb49c5c48e85b6c29ff27a84abb87fe73c105b5f59f7cb395917c43ad57623ba697e6f7d8ff7d0d88023100f992a35841ae8e9d75ce0d942ab083c438610ce5816ae75409ae4b60b901f7506a5dabdf4ba5cf6fdca66d2c5f7918cb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303adb03e5fb82e4bb33a09e235da2da96307000a95788b0520ccc3e7450d06550c59d0e0126596598f8bd9389d33dfb1b0230289b59825ee18cb7ebba91d42f6057c3c7812e5a7175f8e72bcd52d9ea2794659fde9c57629f6e73c2234be35999a4650302047c435bb500683066023100c057991aa647ae9313c07acebffbe7d0a61ee71ca6214d57a4f47939bc3e09cc8fa56a24673422dad318199f7b57300c023100f15fbcb70e57f172a5850070f0f112bb2c2152f7f4328bfa71352a44fa6c85ea8d219fdf2a1a7a7ba319743b52da667c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c2d0fda83598c983fddcaf73f6b22581eca03a628d9581ad2e27c3024d238f9737dc03db62cf132ac98301fcf6e176da023100df9d1dcb5a97c52f6e64748b96fdded3c5eaac23a37378741d794fa60677f2df45b1cda9e2b2f3d9114d6883952e51000302047c435bb5006730650230493da6f5ab64c2b41f11b468402bc4b6edd65e713a637ccbeea960fbb73d77a815afb09d6f466ed839b1d13b5dd0323e023100bd0279a4c0a9cabc604a842698b00eed91e333ade416f1bd1a4eec2fe2075d3b9850ad31ad59af2bfbcb360f9faee8030302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304fcfd3bb1dbf25b2809e87b48002753955f91b47bfc0706a055e1a0328c0f641007d27c7018ebcc6fef814cee3c1e18a023100e3ad882d1073c928acf02226403f4e45dd828520d5496ae16716fb08f92b8bc9eddf6fcb186c17a33e073d32a07104970302047c435bb500673065023073f1664e14940554a444a727394d977b64c6678809c64bc8bc988c28716dfb68b34468a5d1b382b21191fbca464e4a84023100a323ac4851c52eee43af72a17c58650a486175297aae1d74b5c04b8994697e12396d4fafc72e4f11ec15097eb8929eb10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100adf5190bc2622f8fd7d518e228fd35e7f2a83d3b1e4f485733d3a0d8170d530694f5aa3173f897e4666995246366b3fe023100d94fec1c66e6d1b18c44d76b6670430818e6ee0856b8249a953bdf7fd15224f9b8009ee3d1cd11d614673cf9035f28000302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023034727497d6eb71b8aae8975eb68fa46a6f6e2fa1b937dfcb1f6bd5d843cffdbeca5b5fb35d20802d395bfccc5617950b023100982a9959dec207cad021337c5f5c1d9c4804634bf5cffcbd0210f54ad2b9283df38d31bb8d7febcee2e6dcf9f11abb8f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bc1a2f68c93345d3a8672179fe740eca2f8d6d05fed6ef4ded92b410692d5712ce01da85719a5fbba1da8f4fa387380502305d5244688deffd3cbde412d15e29e9694ed5ec24f09fcf5ff7618121aad3048502f5093736a377183ffb6fc54ca2cd9f0302047c435bb5006830660231009b25dc399e73c9c8487e361c0c2a0e796548bc719bf1bb72036220820e12d8afb785f7d3eabbf6e8b1ae0bca02d7665d023100c0a73aee9fc58111e63963cd00abde6bb87aa833550e06f1741bdb283ea3bf41f523db823591df85e9147d93dbe3efb50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300ced59b45bb7d8d8c90b08f02d4a4f88a581d38aa6d5a4ae491132e4be50e26a3e9fd90917761e243565ec3a2ea4de33023100b4242dbebf58fbbbd6a9db28c19be5bead4bcead5a2c667329036c296c7bf930fa78ab43ef4ab2bf1ce83154653cc7d80302047c435bb5006730650231009301dac360c6cb962bf20c683e0b92217afbfa8ec3e7575e74b2bb19f8801e9266fa1d9b064ec616ce45e2397b0218f702301f06a792467cf72cb35cc4472f1b14a74a6616a30f36847e100f260e807a9eea462b3b926d5c40ffc781d11e0a1556f00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023056010a4c49c7eff41ebece4b1089db60a14d8e6f7c51e2f303415a2168db1a73e15065df65f078384322eebe0b41473a02307176da830e82e1747de80a8a4b761ed9f9bca0a779929c4fa1d52a0b48b3838448c0bf0de643f15bc1c8f59572bf57fe0302047c435bb50066306402303b27057aea48b6892631a00b9e7c2ac488da735ed00ba5b3c0943d9c689e666cae2406693bc95a2d248766b0d78c87bb023077677efc429700e0e715fb035fc7259b2860f5d98ae94afcc04426bdf2c8bd17580bfb9870461ff50137ade50fb137200302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023023f83c68d484c09ff0a0e79592f649d0845f1eb0b31271c09ca8879ca89207ecb77cbd30f3873e8e822387d10522d85d023012ddb39a3f3790ec9e97570cf8be0f561b3c63e9af1f495cb63c71cf640533ec471ab0e1852a2f06c6221ab3c46759860302047c435bb500673065023100f4aa8ae9285790e6f9b2b3033ee46a761d68a9179c2160aae8821d6029ea9c72047d55148aabbfbeb671218328103bd60230326524c2e97e159d9f40d3dbaa03f983c1176c80f76b96098b55c2b92987893afffa24ebfae196346a335cf7e5c7e0320302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f88f45ca36e19744f9a8eabc18d04cd08c8ea4acfe5f004fb6d5d82f5c55ff9ef1741621778e3f5ca49638f519958ff4023100e24453a6d033e1b53662a4152e3867548a3d048a5ca930da848e3da014eb76ce8a8221b4f00b71d015e74456185470510302047c435bb500673065023100c96b95878c367584832fe508b8b53f1981feecde3c26588572ead4ff2a4bd32d57e1c0fc4156c5ff42fd91d885c86c7902301c4776bdd1f81c400b430620aa24d83841bffa692e8606e6280e3c042525e214f94b05d0322d9f9ed8ca40dc7d3cbd190302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009780f45abe674448749692aa2ccccb029788efbceb75a32f230b8f3d5b2d73162047c2082104c180707c209a6fc54e05023005a1b24b5f217d780e6e1f55d7e45f2f2e58662909687e4eb73a72d0b666cc13b0906c41e360c865fd7b85dbb67cf3ee0302047c435bb5006730650230590728ad6ceab260cef4bca513b032c263e063d402968b97dc04ff6c3b3064bf0de4170b7bd0b98b7a62781915d80f0d023100ea420df266e65c0f52740e8d40a66413debedbaf99b222cf8e38c1a454165c2dddac8e53600bb97972344a07e34169d80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023070758964f7dc2f31aa9f2905729c61ff602b79ce790e6e0016f25197441840d2cf390e705e59ba7271d14b75ac46d6350230715ca6cfb7e688b37a24e8a9b63b9bac3a171d9b26c5668176e685d61b9b73808eefc5c4e2443c9fd9b704e2fec7e05c0302047c435bb50067306502303c36487dc5b0413cdf4c80311e6172a79419ac2f4b98352d8ee2da7ce09b0ccbbd224168eb24171c2b89d5bb01cdbe3d023100b5cb3af781f11d8570499e1d855522e4cdf31f9807da6b47f8de5f134a755f9987c5da6d59023bed54a884278fa36d690302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a3e320be0f9c8c591246d08b671dd7f662e821f72494963f5544930957d1a2021c9f63af9b9592b8452596b399e931400230797d1eb7d8fc9382fbc2166dbefc6ca2ecea07eebae2b9afb340b2ce8fa27833ccd65110a350adfc49a5c1df8d1d5d670302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023015b5b4c84a2ce4ea2654370c8ec34b3c4513b141b63a6e6ab71e54b5bc95c8ed04a0335e63d0812d6b470b7e09ead35902304524a3f2ae6fc69fbc23b4350505bffc45880ca31b27338506c1d101fd05cd51749ebd295f48609ff6134f7e05c379120302047c435bb50066306402305bce7bde45f688f97db5e870f2158b2e93444abb8eb641a58596912d510f11d01b1ef752b7e7a26991abf01a21844b1102302f41b4e56c426b0deb69534bcee30746f0bb441e1a8a74ab17f85898093f32542a5e2e0243f66ca0c120b0e2770f78510302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302e55008127da26f018247bf608848eba4a5bd89f8f01d856114ca12c134b6374d83a9337a2bd1f290b2e9e8c018b11c4023100f298280789568896158f18835c292879ef3dd66d547214c1bce53f8e328272cb23ae5e910c4a168588f4b73c7c5cdee20302047c435bb500673065023100ad44a44338b5cb9b1e54f06a5a0efb2827975f7ab45a36c05d9c796a04895421ee3a5b83bb1323da344f6b4b3df239e1023041e123ca9ee74b72d230e48ba2fd4bcc1853bec434e8f969485c1a0dd88b94736815403a8738e23142fc586166d765d40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230700e8840b51e2ecf3e435a7f2dd91c49bb2d99616ea004ee1374c81266fb1504bac086b71e71cb090a7cd24cfe51063f0230563b689152ddbe24cdaa20ecdd7ff245b284a0d5e08b7e3cb756797726e86002e7da6d52e26c05159c1ba778526cbf5e0302047c435bb5006630640230147b87231723e09c477176ce4c24024d0900d0af2465dea08276b295f68b0fbaf0bfd2fecdc107ef37e45b7f4309eb13023051ac304cc2704890790a46e33f80859678fe7286c214b9e565d5774d34adafe0e1e63479237c1be3fb965212557c4dc20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310093020824b8433aedd2091f4b053f610d5378663c54970179becf88405ff3c58ce73ba7a78b7484bf5268a6679a244f300231009c4fe83aa12d4a4ef9bd3651cc603334f33c7796e33b34c79b76f6089b2837b64abdc640635385777bcd1005a81dec070302047c435bb50066306402300bbe57e19cc6eba88ada234e954607c4e80d31550070e835faeb78ddf20091c1821980bca377fd1b34795bac645d941c02303e23140b8c34af403194017129b3e8b3269118aab85ddebba6c9fee2c21fd56f97882a004d6a6bd4b389b818a36bf4600302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100fafdf9d56a35bbefac481944c9918f525bb02750aa9a3a88e5ce1e34f2a72e5c12712aba315f75ef34760a2e2b4efb8002301134a15f63eeab692ec686a93616ad8b5ec525bae95951c68aa3781bcf87f2e76f8b27516fb3a81aecd0548b047ecfde0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ec88b8dba51549097f164571c62ae750166c247babacaeffab518af233722e3cd9053f137c2df802f55984d77a7da0ea023100f37de8a2ad4d91b67713b9ab723d4d8143e87b52b349fbd1fa2ca8613c1bd44619d8afd24cee6dd54ba2c8b4be6b0db20302047c435bb500683066023100ffcccdf39f4f1bd930e123402fac6b3272db51cc86c8e816ef641009feb3ad21e00cec6e6bc91d4ec947035379dd0532023100936ec312c0dbae32a660b7d6266a901ada968a4a07bffb371e246af257583051ff3c9171ad9789ef69eba4dd2cafc27f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a388e040da2d57c3df7c624cc0c11dfd53ad8b9e06a44c8650e0c5fec7a4a6d6a1c21392d4856bbfe43be068ee5ea70c0230323e773a9ddb6c532e5de72e401240e289c3ac05326bb4b0e9b9a7adca382b2d8119b331867b4f84c76b68f971dfb8560302047c435bb50066306402307bf2a49d52f2b1f0731d7341f756b4f1cad2c54eedb203668b5b7651f08515bf10cf2ea88b2e947b846f352f87323271023005c357f913bf29cf4a0ffbaea46772cb768d713e96fe7a8733b611916cd58f14df570c2c72375294abd8f46018dff7590302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f31642225deada52c84dd50939fabeff1e0ebea31f6ba159171520c2a7ebdba818dbbb625777e8ca45aca85ea9378d4402306aeda148cf2f878d7587c880d4f53cd153716e25d56ff82938257f4239e75ef02f97d9ab69c8577fca69801019cb6b5b0302047c435bb5006730650230782938a78a67dde1ad524d4b835faf044a4f63b1606bf7939de3b0e8b51f93200a3f44bfefda6899e9ff8809f5cca121023100fb37440e6f1bfe7e59f63ad0472932752e86c85d900209381d5834e573bf4a1bf4d4610ebde42c7aa63e67a30a88d76d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008e4e4d96700008c9baa7aa29ca7dfff5ade480c6908bb38e532723306ef0d7132979b2a7f0979d127729da266ac77b11023100deebd1c9699ab4874150ce49e604a0176657648e2f40e876afaa1ea01d423278afcc7098aad95c96b0bad23a82b62db50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b86e731a3b3b9c6bdc147777acd019473c5036c615b1e349aaa50677babbe8e6307ae3b4716fb74ca1741e9b51f26d2b023100f4abc798a5f605f12fd2f6e03e35c03862363f5e706a0141454a18b9e017b47c9277a73edbca86e25ee0ef86ab16bceb0302047c435bb500673065023100b7dfad5938f41528336727e7ebe6522a3a6ede16242792e2b3bf587989293ae43c365d2b4172c5dcbc03415da51274f5023000c2c48a7655c3ae14cc23698ef66979fd8f33f39858d30b064a7cda176ad17850d235af3e27246c12c6253de4539f7e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310091858cd13b9d1c662006cf62d1e2ef9c299be8198e46176dad1485b177386807be5493c20cccdef4699bb4201a6539f2023100b6ae65711f6f39d01fd6b38022457e02a5eda60255c8427a1a2650cc56f3a70908894fe40e5e59286dd8766c7037f92f0302047c435bb500663064023057ba8fecd17cf93a2b9f81f5b263c5f64aeb4871c546636a407b3d446b0e81eae29e40817cb6757ecaf025647c6502130230454295756f78ab1b5c94530b5c989acefb3c390611d8f01d1b96fedf6dd0534d28586ddd80ad6cd26ff6764a6e0317170302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009a88910fdd6be7512dbb9a5b0d70da646589ace84ee6483cc90c9a928f32af1883864c7dac0f12629cfc0bd4199a7e04023100e4e1fb6afe3ea50bd3e8e32bdf65f1fee52274470cba9d9a7adf09c7229bb86fe52e18ae9da765cef4052676b48265c40302047c435bb500673065023100c6c1726422b24b2bbf006e5e3ab89e497a7799da5f858709cdc787f6d92c165501cecd9588be4b25e49d85d455a7a8c2023031ffdf414b2598ddf3bbd04a71f20aef3ea18bb360dd31c45f8d8fa16055dadf3badc8aa3ef61d3e488540b76cfb8be70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305d881712e572a61543b9418c3f6a0d14ceddc624c84882eb56e4a771239302e1d6ec9f6419e298fd262c843bf0ac72d80230182a60f2991570a0ad32867c8fefb8a266a2ef72a32cf29181b047de4ecdf0e2bbe24d63280dceae0304cbe06163cbfa0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230593480b2954ff6c0d51a2cbdeaced221244ed27204e2a3f7dcb8959547693f8c1a13a3cad18c96adb8c30b904260fce8023047d832d3fdf4eb1e57ff9ef7a9d61c651dc575e096416ee27252c8177f2051f6b8334150246fa397ae59dab76edd77da0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023055a12c2af653e65a0217c6061db763760660e5713acc7534adb196b42336a1700a38889ac39b2afab7ccdac96b6aa23e02300536c3fb7e43aad741938b3a7392422fa9979115c4a3f8501501c3f74ed7369188f60ea3b2894a58f85c4c3b68e0b5ec0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230115d8bde5638700466bb14ebc95ddc823fba7d6caf24ef15fcb79698a70280f0779be07edf7cf01fd97acccf9aeecf07023100a26c9775f26b8a6d611914d2379787fe40681a09038bbdec348b4f39d1e5396cfcebba271fc54d4fbd3b48c849113c060302047c435bb500673065023100969f467cb25c54bde0e8ad76477b847d188d528499eb9d9cacb1d820a5e049b8f259550d28c007c3fd7f2b07181330f502303234ab273dcbcc7aa11e65daa41091376a740f9ee0bf89573f1607431924980523596e8f0aa09efc4f7f892e6e935f880302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a6475090baad6376aceedc3105a84052c4ddc881f23105b6c96ca563ea10b6afe74fd91466dd3fce59bec59a315b3d3002307b5b01ec72f629e05891fee4bba2ee58750d3d5a70c54cfb004b8cbeb84302b7f82a26eb1482998c832dfb742854a9bc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ab582467d617851c8e24ae946cef001b1175c83ef423b8b6f5e9886073a727d60782f566d5ce8533e30d14d7df785440023100b6158d6c3a580cfed3760cde747aa48f3758b7bb4dacdd118bae8d67868f3cd5e3db58f5fcde5ede360b02040de6a8770302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301b6aba2eb1afe37553168b794926d3ac3717953de7a22e967fe128d696dbd53d4182bdd4f5b358751e0f672e50ce2145023037e6c861949732ed24f0527fb777c10d002b5d6e678144693c36ab029ebcdbc1d41d15c2d22261be633177f852c99eb20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a5e57c4232e59bb69b97c2bbd3e46b431a2907ce41a719001f6ed3866b8f3d6c34208c25beed472e6231ae21190c8680023100c37a7e3d2079bb61165fbbd18273047637dfe5b6193badb99e697ffe8f0f68e9389cc46495b5263311bc864c341dc97a0302047c435bb500683066023100f980e36339dff686b9b6242383da41ae0685412718153c02f42182a0ab08dde49696b9e0c4cd534cad6c4ab0265296a9023100d90deb6a81cf7593894e273f529b8e709bdce8bdaa41e2e177401d0ded870acdb4d90ed5efb7f9913af0ae47c5fad0eb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023028f7abae07517eb9ffeba72f91a3b94d91145c975981f78379480982790844954023e4cc059bd6d1fd1a0ad564cba7a2023100b6eaa308cb0850079f94fd55514b723a5ceb4fa3f30219ddb34a127ca6b7f2d5b9e1438c4f7d886793d54d7e06226ba70302047c435bb500673065023100de5ff9db7280975bfd1c9fca33fa259abe7fb2ee1e26f11e8a3ecd46d8228b4930a55cf4d9d76e10e996400ae6d1cfca02304ec2e55eafc299abfd1df5cf4e2dcae88132e00f963c4aa206bdb9769ce61c4967eaf13933bf331ca192d45c2fd0069f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303d92bc3f6829ac2098a4a4e4188b2b05d345daf81bbe7ba886f9ee863ae997cf676fdb7d6d2c749ca7509d0c783a5528023100ba0d19942b665674125c222073ceb30df50594b638d2a9a7988f2a25bd97b3f2b2b988a4da8deef68724108c580f44210302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230012c58c2be38aa65705cad8d97185c866e27cd95633baa0c6b2e01cafc81165036f28fb53bc2de1d6fab797f1eb7bc72023100ecabe1034e09d5268376db13073ddb2d0a73ded3056652c2541c8eaa90573316bbb089699c8a646c87b1898d9852a0700302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230724ce39e2eb35418604bec8737f6fe87ed540bd0e63898c950c540b7fb88c29bf418999c48af63f4caf9f8738ac77f8f023100e269ccdaa340a778d7b67d77a6d82bfe111d27c57c7f5e9763bd15e8b0935fe250abec8d630877acfbee6e4ad5f1ddbb0302047c435bb5006730650231008507e7acfb075cdf128de1211ce7265cef68f449e7af14f3effa7d9f0ef391a43602fb76f1da799fd9a8dc0397cfdff1023069e9e89a76daf903078d8f37b8e14bcdecbed7ef94995362babcde91a98195ad41bb08c2153b2999245e2c7b81dbfbb90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b0130b9f6561469779e671760199f587093f258cfd70c8ea4a96c5cc3eac7273b51b6b9c6ab9f0fa06800a61d8470f52023100d458e8287a2973cf420433c0ff4f75fac29b3e454231c0cfd91e2ae29a9ec9bd6627b49afd9ed8ba7226fbac37bdc29d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230609ce65d37bfc9812f829d7bc3d86da43c5401e20641587353b8b6b3c3e7814423e26c623d268018679c37bec53b7fd8023100cc40c0158330fcc19548e3da05cf00e244932a1819b958ce372dd066a4af0883f5c0889390f67d3ca04cee7cc7d2e7660302047c435bb5006630640230725c4bbc0514be3b2f770c799e31528cebf3cc83a5a89987774b02cda9c4c209272ec298e19fe7fa1700d62bcaa588ac02307189886c81db92322fd07978881f4e4ec5206f14091d6caf042c3aa756a68a204c649ae80d5e5c6569fabe73037364800302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100801d7d9bdcbde0a8d4b933218b6f006198ddfd2efada2a3939a69f21e55480ffd2204a6997a7d9fc06e48d4cd738336d023100983e11de1315ce421385990d412dde241014b5134deeed46e4b275510b692ce7634af8748d1b4c1a1e9ca76dcf7884d00302047c435bb50068306602310098e906bd47b82935bb17367a679fe5b75181f26e6f4051655e1836f5e826eceffe9615585d9cf2874c12a5a9068c588a023100b6994b45ad651fb5551b6dd555ab6b15454d76ee398e649366faab6dfe6a4e934114ed9cb5c90db63e0d191bad2a5d360302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023036eee7f01b7d8b6b81ff945564a8f35f1b5bafd26147f4662f690a38edecb2bfffb7de4351c4bfc163ce188905f92f05023100efee9c58c97ab4f4a1ac0bfde4ce679fccb759048356368a8f1b84917c90e0da74da90177764992cc47b780da50cbc7a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e8ef65b6ffb1b63dca31f8188d09075a4d6c3af43653a03fe8709543d3feacd23a24e447ecd3299405ba3413aa0110f102300478dd7d9f047cc35c08888d730b77047149f20074b6ee01b5f2059d8ab10f03a98280699d1fa9fa96e45f7a136054ff0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023039ce8ec8f252551831c60701d3beb08e50df7370955d53025be6cf66716d7873bf725417ea38f271e6e4dee064f60a5d0230489050ecbbcf41102364422e93cf4db6348be93a95adff36b5c84f5506868f67005cb2f4d60f66ada83d6c2443b99ac20302047c435bb500663064023058f56e197fc39a0b96b9780efe4c303417d7a414c52cbebac351a415e9488da680c9451057126ca00d9079f8a683b976023018ae66d672eb2d84119e92ce6cafcda4bf2037ecb6c358f6b7746285dc49132e1217578b43c330cd73dd7e2d7336a9160302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100db3d55c4176f0e53008d5ef9808a881380958b3e5f600e08df7f7ee7c0117fedf79599c4a34d6b9a016c680783e8d4800230050a408f55b4112d291b77c7a22752fd693f0310f2ca86291fcb67fba9b26db55318400fc24fa5be8d09fc73373474be0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230227fc8ac18feb88a2fd497869b43487370587a9123b86c712676a3a38a19f5861a5b52feefa49828abcf6ee9570bb07c02306fe0ca10383c57310af08313001d478d44d16b4efb78e0f9cdda231564f6c0d7cf57832a985612f97b7798fd091347700302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500653063023022e52a3bf2c2c1cffb85e2d1f8f3da5adb7fc08a7f5fcd859d0b00ac6fe3bd2a44e3c1cea8166e0404a81b9c47620a62022f0e7e7b72db2e723f0c8db719efd7e93f80cd98dee4e9cc254aa9408e32016b0113471dbe8ba8f754757e80bf68f47a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310096dc96a328c9a3a40e4ce1b413ead23448e3d85ef9cfbe23e628532fe6e2549544a48c8f2c4a9cd932e2f6ab8739624d02301fb658f7fe350a0c3a763f39832d5239835c20cfd64bca66f3150f2b5fa8c589ce019e629b6ff12a1e4c17b925505f2b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310095982e99f979ec7695d4c475cb06d40558d0d795c7219eae2f6c37932e0328b063784d705bbe10eaa69f81cc66e7cd7c023100c2fc3fbc328921e7604cd45699c49698a0cf2bfc038155b8ce66dfb979726273d6a2b8fb0d7cc5cb45c415bb75bca1e30302047c435bb500673065023100c3311672cac68c6b96188b57fc06ae7e8b742029dc8dcf325e4b2196e6afa3de28c347025276fbffddbc56d273d09044023053082c7ac3ec72ea611f169bdd634f5295d6c288f0d4a9a386d65e9173fd89a6b24b6c303b9276a915ce5f14b63467bc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100dd37f328a0eeb5144d8ceb01ebea622299a1142cce612d2c12fb1ce68a8a9257c21d96a5bc32ebf24b7c69f21e64652802301e0b64ce4a6fcd90a5737115d1ac2206bc84f56df9bdbbaf39b52c2d60a56b2f657bf92c1a5726e401d45fe4618287820302047c435bb500673065023100c63e7e013f0cbd0ab988e8ca3fd5002b9731f9997e2be5b992ebafa07674e65f2d9f5e2fc9ea4f96cd8390f8baf2e5e602301a4ae7fc8d89e4c63bcf841da5b214e86f99d31870885c5264718308f9f2517b5049d716cd8a517bdd517a00e794bcbf0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304e476b5ce3ad57f6ab67cc446faa4295ae39c277f103b6bc08ad836ebf6b3624d80d17679cad9fa5ebab95824c336e3902310091d46520a0c5339a897c3a2fbcdafbf257ef7879d54e6e68c3320729a33561f223f6ba2104799b123948f8758c1fa8570302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023052849d94102b5c2843c9782877786dbb0f14d8af29b5041ad386155a0b105f33d49915d6b0987ee852bd2e7bc4daaad9023068641699daf59f4ceb1b0a39f35080fe61e6405fa7fe132310423d4ec4c5f8354f8df967f8799a1151af1d2330ad4f010302047c435bb500673065023100c310ff9dc6bd7647b441d83cd94d9bc9bb53029973ac1ccfbaac850925da8deb41e01157556ecbbec47b1812b228b91a02306ccd83e11e784eb21d58231484e47e871e7a1c7a0312b5face963e5248e2fdfd9384886d00ee7b3cf4bd504ebc2d84f80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008ea1f3f3424f6b0e72827c5e92b9946d39ce8f77934b26e5ca7f1b0269ce0ee6a705a1082324b3e97da6906a643ff2f2023100ed5e4c699919110d3a38f553e047f16b7d6e197a548afa7733cbe39a13151465442e761c8df2220e6743de8427d61e6d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d3109e67b831f01e9e20347c6f91920af2474d4da5f492081aa4dde2eb4043c4f3a5a6b60ae1e9b271f71a198f7827f802310098f35c1e6c38e9ab238fcaec1aaf4874cde9d1c14419d4a68f9f16bb7167cc202e123b178d1eb3c84dc151b57f710d0b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023020164d6b5aac9f95fbefb4cca5def2911491cfafb2d723118c4ac7bc4f49602c5651ac0bf3ffff6ec9dcba2ea952b41c023050a7a3a8110f330d7f92f8bd83042a690828de7a5da47f0208640eec002d8678f8a20625c240418ef21febc7bcc3c3060302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023071957890bce453aa488e84ea41e3c5248525c3f43ef93c2407b057f23feb9d3f4eddef80525f05227bf21f263942907902304ca5eff8bdf7fa52c0617741f62c3dbe65b76ec1df8d2f7337e4fcfa7733ab8974229959b9b31ad67b57ce1ddc8a906f0302047c435bb500663064023012e1c27185f3570ce25633f42f9b1dc33598051010efc58b135ec665161579489951bc283f1bfac09f1797eb6507e3ce023000fd0eb217280cad4fdebedf75b25fd0a92a1b5741a7b45eadb8b4e4ece953df674acc8ba35512df0ac10c97c63940950302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230605eea22f9d66422fb8525b90b00338c14d2d8836e9bf9de3b81ac72c6acbbd938b639c4bfbe83aa206326a633877483023100df39b48d4e3a2ed553934bc79898f43f043b4502aa6d2847b3f1a760eee24c2a13a2f34da12194ade4631be1899e990f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023047aedf3333746fc9731057af9d930fe30c1f18e87fd021093769a47e27c8c42a84579584bf6e8be829a6c9967f41b3f60230181ea018b1a142493c5b50ea5b22f148062b4e010ff926e1541827bda7839ecc5da520a2cf7f0e1762823a66f2de47380302047c435bb500683066023100882555a5acedd0eefbb4c9a87b406d350c9d7b84133e95d50dce893a007301b8d9f77e29be6ad0f9849303edcd2b2de9023100aabb6f23361ad2efbf2f0458b99ca2d2d03c56dc2a82d5a93d125bf741ddc1c573f70783e1cce167d5973161853910db0302047c435bb500673065023100c459b8ab35984e4b2e0d59dcb55373914577c4b6dbd4879d05c7f73d8a1d59a5e3a1f51ef274459e02c5b91f92af345202304721add4339ff3c0fc68b64b7c9e71ebdd4d054bb157b8ca29cb9c8c92963465276eb7d802c12f84b1b2c70c24cdd1f70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306a303e47168e3dce07a52dda1f3ade92cbd0cd0f1b4955085ee57583a48076e26e274d5b9328bf3d1fdf37c3681125db0231009042d202ec438e77dfd4e08b021d420f56bcb5318f783ea289606aceea25e304be39452cab53df4a3bfb08e277e78bf10302047c435bb5006830660231009784bbdc35412a9e2dd37f8ba79369db4c627e6b3b69062b6ad16e6a470db675cec52abb6dc1f69b0496647f4ee5cc7b0231008aac2cdd9f013a4b77be4ddf8d9a276425dc7c899a407a0d857c62c797f013df0091172ab7af4558901b1ace565d40240302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c5bab5e5727523e54343208db45cccd32e8fc1d33321c11c92535dde61717d597a237592e8bc5e510b367c2bad893ae602301b6eb8760bd3521e47f720f6334c8af3fc829c97fe46322c4f4db1a823553bf8d50a5616df9f5ddb4b0cc112ce4054e40302047c435bb5006630640230381188cfed029b355ecc8ccb6a9db9345a64d7d5a410b68b1c2cf1e82efbb4da72ab7a94f97215b657954b715c7bd35b02303a200e173a87c7b41dda944b0032da193e2dbfda437806daec97decd060b18426e13b19c0b2531bf514b77b8ddaaec050302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d2d58d91361f13643320fc7116d0bdf1e1c8584cdac4a9fedffc723e1a861921caa85bbe02c4faf8e82f4fc23f2b0aaf023053b1ce3c717b05ebdb82e43b23491763f4b67aa9c6cd4e916dda2509102f8784659b21221da1bdbe3fc30ed63e4d4b380302047c435bb5006730650230100f9f316f6cbc4a8e567a701246c830671b827818376d540c9194e4b7f287fac90d9be0a433356053abdcb10f34bfdf023100bd5978f275af25586685c53d892b9cf00beef6bc1b44691b242b154eb0c74bbdaeab89ec7dc160985cd50dea279d24970302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301362a2e28ff3c47c5c7a81f947ce5a0235a07a6bbdc2e334d510c90735f617fae012a96c58fbacbc34178f6680aa224302301d0f32bc155e50b86f2c1f728856d1ffec2b3239cd90634f2de6e330225759834e5ffb7a30f24e857631ae7e6bb091180302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307f82417ac973388d4d8053ccfee56de6a54f319674519de0417b5f15f03ec29c56f78a506587b1322905ed30304163db023021e0b3b989a83868b18f4d4c20438e9a095730a1d1738d358e08b2d78d4898bbabe3748010dd410483763a7b6b7ae1070302047c435bb500673065023033b2f5d5957d4bb668f1b2fac7a1054dd240db17566b2b17245f6a7c1a6507f692d75700a6899ba0a6f4cea5be15f3c7023100a7b6ba9454260d4ff1d3764eb3a77d23a484b38104ec56f52fc9eeabdcb66aaf8fb5e9c83b09982c2ce36a1d9ca539de0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c57a83d3eef31bd7a0138b79df144106985cb3173bbe6a906c5fe4d92cf01b6975ce584bd6867c4c4c0dadf07804ba21023100bd6c1246f17434bbd3ac5b09afae2230c2c3fca399c3189f6f07a1597656864705482f0b7deead2f5d06604012b357480302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230268515a3c6cff1b000e383a6d1bb9199ab519abcb82959390b0568a8c93e8b6e684973f8089af637a0939b5be01c832702305d0f6270ae46828013db83f901f1f612cc91f6a3980fe2f882e887fdf9bb38491824795274c9af6c7a0bb6574bd9cc730302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023037cb171b4bf992e3875bc8cd4c5ee128dc509f7704d55caa8a1f02833aaa923da4b88b7052dd653fc6669222bd159dfc023100a9a6a44e9323a6f88854c94cc9d52c87ea4e8908c907eddc76df467ae9cbd28e9335c688ec8a50d9b0e38544227874230302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230250646e2b34ced6b649af24e83cd8dfae46f5306518c641c4d6a5f865a4b121e25032ed6235cd6dd6f1cc18ee8fc488e0230540dff3c78266c98d15203dcd2cdddde2388474672425a87f73fb0f64d063526e5bafed73ec2ba5fdbfd83f922ca74000302047c435bb5006730650230277107a773ba8ec8ebcb55e2fff10fee7bc2f147bc9a2feb0c494808ca5eac53695526cd4e74595d1fb3560af1d05e9d023100f374583b38a94153a956b97fc22cd47178c18b52bab111546ee6ad11030bf8cfc8d921a4d2449d773b734b6760905a410302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c75313fa315054941ff145d78a394cf5c0dee397b52fe54bb3f17c920ec37b04a0ece921906efc5ffd91a4e76429f24d023100b8e3f4f3887a41a5fd994c59c3d8a883d26aa3f4ba6d2736e36d6bd80f9d879c75c05f9f6e826003c4c3b55d129e1e060302047c435bb500663064023070336331fe36020c752ce3500b8124b57dc7246bcda85a65074ad04013ed695bb10e70a4a04a9a72fe0ed846786977320230543b2eb460c50e954d6a65780d5f50d4243dd929eb03e8c4a39c4ea28f6e5e723f48b257e98864f74d15b560ba807a1d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306ff51de541243d390fa92a80addcac752134d93f80677627c9adb7ccb361a8d48516dbf63cab0aedee1e78fd7e77fc85023100b54c523f2ac8c0b5675b69f87a093a9c243ed1c1b5dac622f915d297b5802d79f48e51ef5506e686a60293ea665ee52e0302047c435bb500673065023024aeb33206ed00a3b5e9f8bbdb4316ae6f7ab88e5592fff1f77fa443cebe6a3bdf5e01c1a1781ee6cba0a745963b593c023100968a6a9346f13ff9eb4bd2655ac39d9edfb5168bfd838efc161497bf28f6d6e4de64dd44e5b31b264c8d3041811cab7e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c311e35db817a663129684d9e71061f639b6ea202f40fa8f404170a05a61faac17551d0f822924d69d7eb40a7f6dd53e023100d2ec7459a310a58cda7b60d77779f03eb8b62e2ff705cd90f9f853e70aa6437ab45ae2b066c99c8c865134ff4bbfb5180302047c435bb500673065023007478a306497a123dfb13072a2f2d520c59c1e602a3d947576fa839494f829f98231d2a9c953cd7a205e79c182a60b90023100ccef1fc39de2db62e25484818b6f3d2f0cfe22db2254035dfa8865996444164f4e759f6123f4d98d1afb4f280f0d6ebc0302047c435bb500673065023100b1a5f1f8f6aabd87b450c1bc450fe200bc9f57150751742df84d17029c34ae3d09d160eeb67513de477ad8ef6c87252002303e72706dc0605d66e7818eb9115888ca762b8238ed92b882192d271d2bf8af747c92bf0bc67da10c67f3a0f3f70039470302047c435bb500663064023067a8e0779bebb637110cc50b31a5593670fa782a153744dca518e463d2034ecd43a496149907abb48e2897c76f7f7d130230585ff739ddcbda8994f04ffd38acb02669109abd880f7f3ec3778ee60aa43344fa7c82fe0756477ca2df6459e3a2c0910302047c435bb500673065023100d6378ab5f2575d4508e23ed479b5d4096a3115f9043f78c1bcf9d3abd2042156008f4e5a499b653b5c431a821035bbb402300cbb8051933e46f1270e54358c8ac56705184888ac3a9463cec47a24d0daabc21fd82b382069b908feca5f36484b98f60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023012b22d1195c881119621ac94cc52cf5eaa85055354c17f15735153fbcab640c0b89a32cdd5e80eccd66fc8ce804e385302305cbd2377c59a2d755228d4d0491cfd466c572952bcf02ab01153d797cdd89f4b34a9905ef84310a21bd09e0583bbc6cd0302047c435bb500663064023007260d71b4e9b5f9834c3fe6119466035900315611ef3f42d5a51a0b1b883025efaa904ecb5c99fe6253c23e10cfc00f02303be8350dc4cb9ef6366a436bf0acd485a5d577974827c34cf889204ee40d62180ffc5408c1b2c1040b31d9123e8a30c70302047c435bb500683066023100953e6a5860871008eba1d6a644ccddbf1984a3d8859bf0e089e67dfb94222cf372df233171c68ad13e52b7f6d4755fef02310091c4ec5f3be8e97bf8d74886db6ce14d5089a2d9bb8c16f75fb75810f1814715398c7aa270969f19c11aee6e24fa194c0302047c435bb50068306602310083e2e74b43413f3dd1d834dceea33da4bbbc0de44b0fc40cc088edaaf520c012b848242dcf024c9b3ac6c0fc7f09bd91023100bbdc279233b38e85922d7b1726d93f548029b074775703ea185da3b07cbac8e884ef2030ff8faece20b3d427001c5af20302047c435bb50066306402301b7f95770f27ab8935816460d6a5105f69624669b84c587497220950c69db7f778f13c21661baba13892ce4cf773e49e0230009e16a7bee0a17ed6d16e23248c5db035ed49149b49a70240759748b5cb36fe4d7f14dee694237f306eb4276c3381120302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008dbb1915279a8802e0aee35f864769bbf4cbd213b3d6dc983eab562dc30e5975d154b41e176ba72c2b2dfe60aa4fa2c3023079a4313747f5fe147c6bc81c75824abaafb5385593d942b25d975fa055389a4f9f1b36543fcfd2c523a79b40777689480302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fe5e2ba2513204ef13c95221638e4734e709042fdc4bedd6080e08d28898d74fb48f1f7633f8d81470b5694a4e809292023100d2b1242bcbf398c601c74f51fb4c745f64fe4cfe9f0522fcd6760350f29ca7cd110ed44b8c20eb5d4bd744f920b270b30302047c435bb500673065023100b143316cce33c115aa1a2402a22409f957484b4e8e72c2d82574a63a1b7bc43d433fa81652a65918384e69f92877b2010230114b194aa824240e7ecda90e566167c64033a61c35fb9a1c66bda82044bad3b86f2d13a5068284e828bd3f06268935980302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310084c12734ff17eab734a49d5779e43f10a8ad266dd44a51ff3799e5924ba1413df30a666a8520ed4745238a54704220e5023100cf326e185f99def9c8bf7e5614b847ccff6559b7e88c43c6f73435f5091e7b55c7c86fef4a20be8f6e45a5d2e2d8e22d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023002711193c34ed3118d8e7f44477ffaca745193fe33828d2f8c48376593fe79468dee9521259369acf7945fdc966dcb75023100a075fd70f14a5797c127840bb363c758c9d1f155600fd1605b41662b324aa464d81c7472625624c476e64079fc2e8bd20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008d3af515dbe14f19769074149698f7ba5b97960b64cad2a3dd1abeb69572a348a5c5c8b58f225b44d12aa6acb12131e6023011a228e64e3e4b4de11d4c67639f25e7d6207c122fccdbc19977b1a5123209fa824dfa3736557f51059361d04612da4c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023054775ed463dbddf6aadd7cc7978b262842d1b48fce722dc740d31be6abec30480c22fc0faef88028297ccbf42928b80b023065fa7b71b5ba9ac1a7c077dab4f98f7e61db6c5981e97e4c53bf31d058dc280b7add46393c9ade740c4c531d5ecd72b50302047c435bb500683066023100d20f9a8f3dfd9dd8a343d270ecb63ca88a2dee3ace93d653b3a934ced74a497bdc8168fdd21aaf7fd2a82b45760a87d10231008b8853021f1cc8c68ab7b98b08fc059d7d666f04ee5e8b0248ce960933d3058477f978c89797116a2e11da756fc51ebd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023010588965a3983326ae6465c919f2e6dfb4e0d0ca4101297ccebb35bd9d9b9f4637c0ac8e0b0d977065447b1a0ffb980d023100bf989ac6899d657691e0827792f9bdec96e7667dbd2b9a8e9f9d8cfb61b12fd49b9d4980703f9a32863b4b61d460a8e20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100dbca1a1c832444d569ba05dcd1e7fa0acd68de622f711339491869d04acffeb52741f0093e64c88eb6276b3b9b3198170230799dc5b18b41cc440587006fcd52385f810fa1b1de46fe3bad000c771a3ee1cc89ff38bbd5d765a714942cac90bce8100302047c435bb500673065023100a5f9f90d6d130abc6ae6fe21158625b4e58b7e714e9961e8ead2ca874ece41877d231420433dab22ed7e312ac26a43af02300e28d5b0bab2e3cad853087216e4f905b4de990538c6ed3d778700a9ed3d51839c334af7d94fe4541aaab7abefc4dc130302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304cb3ef5c963f4c06415e768ab6bb164a12368d9386a3b4a88b5a7f645931a310919223e7f9993ebc6739fc2f727fe20e02306a50f1d4a92ce9ba8a64266732b0ae085d83a4b84e4bd0c759cac7073c8ec5b0513ba464e47dede59b27b1f6c344cccf0302047c435bb5006630640230710510c693cfd4f4ee20ab76d78faee27d64de212bf72c82fd40f60e5e3be70d22781e193dcec69377e14d81da8f0e1b023021c99e840f6c0951bdacf7c253bcb990f0819277577bf2c39f5374f7d428518c25941cf4d927b5620fffc8bf71f862110302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100999b42b16522dd5a2c0214a51a359a441e28fea4de2f2fbe9387699f9e442f4d5f6a405885e5805ebb1746526e261b38023018da380a080a7c54f82051942dbc9b5c92e0b3a35fffa97c71914462b3c0062c70aeac96af6eae8242dfc6c84fb057f00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307f3ff93573b8202f92ca3ce3fa254142454663432f6049fa5c0efe07e33c19fb499e339271e200e5ac9484ffebd6bbf402307752ed8a59cd6dc56bb45eb94d352e9696b5e7f322d1dccb21d46095ddad550db14bd664d0f07189b03508533d1beaa80302047c435bb500673065023100d43c21ebce1c35d1aa2ac7a25692ef54cdfbf09cdcce9721c871f00d617c50bf6374fb1cf20284dd96a1dd170e02b60d02300e0877740427658cdd008616605e2f1eb194bf4f9974e1b1bb6d33cb5d8e916911bc383a99c34629b6854488c308a4c50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b1963540e8ac5efb393ccb7f50ea7d93678829fe446b8db1d9ef55e762019fa06fb9f56a90b2c600bfb7ec20f1acecce023100aacc26b9d93f62b57281de1174c95b813bd6667821d3f52f0ae7816ca662e4fa42bc56de49f2d30caa5bfda52d71328c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301c3a2bac4f76a85eef0399cc6294f888f522f81780954a10d108ce2d65c96ab8aaf479eab3922c45e8d9f311cc636316023100a809d3569bb4086970b348a5abde2bbe0d1785ff904eef51ffb4671de2fb8b1a0c29c172c95a40d09da7e28497bf33cd0302047c435bb500673065023100b852799e220f55728d23423135f77349433984c6f0450eb128e62cb083a4be440e3d3b4ab41b5abce40c8cd05933b0c202307e85bfce3668125f4dc6e01ab9cc1075df65492c8fbe8b8218a58d5c0e2361b48f02cf47fd8fac85d59186830a0c44510302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307c8f62962573dc43646f65c81070578e1d6c23ec53ad139e19027a43cbfbcc9d65b00338598017d455b9863d0f0561ad023100e03f28a6f20244895fd22197952d7ed01a4133a2bebd55c2866794368dd1bd3a267161b6b93b484f93b7a31274def58c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100814de9c139dc8b327cf94eb04222a90a02db10a775f2d17a24da810c45a85669278602d1fbd3b5f209df55ade3c19379023013164104cf3edcf011252592700351a409f18bf820a02abd85f555177c6cc74e08fcd6e9ba06fdbfbec0e437b9af13900302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305b903ce545ae3b7f5c944e96937fe6e18a41b88caedc757b9d186023c7c36c152659ed233e5f7ac8db30abd644d86d7f023100f6563614593e043b44e9836e0506ed5e6b814a1a5341b70948534385b7820d400deb09b9d262ab3f3900d833c970e68b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023043f0e2ec3f463d02ddeb343da662de1b055fec121d82d904dd6abb8ecf35c5a9a15564c889d868bb3760a3a6675821ea023100a33339b00e195864594a0d8f2a9ff66c97ee2720e211afa09d8e2b158fb443752e12130a9af2ab99ad89af6c4d74e2400302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023041e42e2e76a0323c2594078beb364ba0b2d0d4919cb4b41801b7c2b0bb03da05d422c528dc0fc82066d3f1cf86ab30ab02301c343cb5cfdedf8b74eaa5c34904333602cf05a5fb645c6d58ec34ee216f05bc026c8b2be51ffbdb87691bb91854c2140302047c435bb500673065023100ab9237f76487c3999d15326747c0b78caa3e2125d75a611e15e06c453dc93fe277a6027c3c478bd81f560cd35487c0a802305bdc6d9ca879e41ef9b19456ae9c4076f0322569db5ae29a4651a51d52684787a050cd6e24d6ef561e268b5e104806390302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100abf75a925171e0aa1a001cd2ddb3bda120fa45a60555183176f1bb8c493a0762c32761591ab87fa8958c3a8072887d8c023100bb889835a2cae9fe6c0405faa4ec82188e7f29b0b2c2f00d2b17321b5ddbea7ae2f2360d53265bc60d4a1d8b019da5560302047c435bb50068306602310099b4dcc9808a1855e446c02cdd655cc1c376f9c6cf0b3e6c8028a2de400b9eaffd61056780fbc930f8ef248d3b64b57302310095bda213b57cd887f6c7c7f64f5365dabf031ff771e1c6818c818d091bf9cc0d7a0bd2f6db72ae8fc74feb4ae5108c630302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305134ed2eea914bc2f684230f8ed2e7a066ad1c263ed0b3513e5d46a2245b4358c7d51ab724a12b3d93bd08630abe5999023100ca094159b3cb75864f8f7b885d9e6ad1239f1c8d8d265b9747c354da0d9d063dee6db9b985e705b1eaa761f3ed3006f90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023045c94261f390887555e6e719510a4360da8a11caa61d5a31fbd9c0b099c59e5ed4c932d2f49da54f2a769373c50fa9e0023100ab6233028a00c739e988a29e10533dcbca9ee8c62e03b8fd0f1122396adec595c858cf59246d0d3221936a7d1f4dbd9d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023063969c8fa41a05e84ba189e95e97168bc0feb912f6c3f8000c159d2cab0e67462869c9a507ecf36bd251c3aec9c0e069023066af93112a33140a0adbcb7d5d96e11ce01ce5d7d459d921b012d7ef6716eb143bac655e4a327ece800e1d28012372960302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023044dbd526a0173864f1d1fa6a7eb44f62fe6781e41eee5d7570d18df76fd0bed7e4c9002ce4179b2a7c933fed12301cfe0231009c6db22e8e61dbdf82f35e209a1f70e545d13d75d591fdaea7baa64b15608629d61d90292c2fc9f5c44844fe78221b2b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230614b0f5271e669293914826c49942d3a34124ec5c735b4346e9df0e2722a215599d9bdd30245666af9752d414b0c7f4c0230594dc8d4cef2258fbffde1edcd755bfca286ffa6885c72d0b2744a2940df97f314b46389db687ee93fe5abf30d472c9e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230773105206633a63d58b2756909a31fae76c2fd9b80400696acb531244f2be23b90d7fae7aff3a4a269a20276c10b10440231008864bb4dc08f25e3062158f3b0d1c2719248df30d408c778b5f6c6ee7c171b531e835748effdff1180703d207e8778160302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302193693a9f96603d4942af918e83a08e9fbdfb31525fec0469f8b4127d388f3a82ddc51b06d83826b1d1c8213f869d91023100b9268c130883f1be9aa65a834d29ac4b5a0761d6ebf9b31281841245bb78fb8226b1aace3ee743df863a481e935041800302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fc66a16e2099028c8c467de393055175c7e96ed1acf10c7fe3c2197ea8229d2c896763090b170038fde0f75aad570153023100a4cb006c1f694fa99cfbca1d50c0884fa4c3c20d0b6761e1bba7893097d50b74e965b53a9747f6a93d661750bf25a3510302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300ce1a197e5a0976401cf10d265d52a7b989ea6422e6ad105b4d459bd0ac471c638e8ed5eba672677c91df21d0df9babe023100dba40cf7e3bc2e104b1c8311a06dc813dc99aa53f6694c4a3431939cb6e97a7f2b20fb4b1dd8f6aa3e7d3f295b5752be0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008ad6d8d44ea2c94efe9078109e1011a81f0ccf8685bd8dabcc28d522fffca979125140e3e78b6da0e0857d9d36520bcc02310087ebb07d68a5b7b07ac6ccf80936c7b4012aaada58bdbc106fe13ccb2f226d2ae4dec6179144ea3e9ed49edea1ffd1ac0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307307a4ca387befcf7b4bb42105c3e54eda1f1ce5d713ec238fe5b79dde38e13a7a2a28fbaf4663518da1525add77dc74023019e5397147afb26b7e8e269518f45ada4a155efc54fd4e0d04c00eb95152dfc703071ecc882bda691efbda062a6a74040302047c435bb50066306402306450711f3de038498ba3febccdda7544aaffbeffe9bec10f9384202eb8d51d3b001e6ebad46fd0be5c457b4a0852733d02306b77ced77438070896b43a5b1163323328f9dc599d0e4dc4ceae65801d7a940b4dbb225400961ce709247f6563ea442e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304f75e16cc89f81339fd8778142075862076523c1f04448cce43e1def4f3a02abd593c762701d7c8b9e1e91f2f388112d023100c5ca48c54555eae79061cb7d11ca2f3abb9b7274c73cb9a21019c4e389a875036b5c816760f1aeef3544ff6e2311f1cc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310089af787be98d6baa9994fadf47c0fa3948949f4e1954617cfde8c199e201275adc86b4f0f76ce78296b83577038d7758023100c3bf1211fce74af548455b1996f02b8fdf59c220c2fc85ab82ec4a395fc0dc7697f9cb473e2324392e54e11674dc816c0302047c435bb50066306402307b62e51d6a1ff25d979dfac5a573329cbd0cae3f4fe109b00159ab053684b5846b9507ca9b0bfa28ff9fedbac18d00a402303911351259ab247f93ea698d1bc6e8036227e20f64fba8dfe718c1b9531ca9102ae978140f9a6143ff7ddaa04425fbc50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301fe859fc3c22cae22d70cebdebc7030a23c492d90c78a173e3e0fe0894ef1b4a4b0ca68a7eac5c0ef584aa7fd3cb43d002303d16244fa3868df38939fdcead34c389d02de24c158101e63034dc60d4c3b3bea411efed02393f912f7e9d721d5fff6c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100eb33a881f68ece3ffcacbfd8f1eb641db9491b86f4b69165b457c48d9949d5ff617d7d3dc5451a125d30dc3386ac55b802306847adbdb44c6625f985a768f0a94f4a93437eae0e6839c13ff92bf6c2232b7022cfa33161094beaf8928f5651f9002d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307bb0f0edca127228e3fc8c65bf8651f2ac79ef75c1c1da2cccaf1869fb5184d6a650fa8534d15122d418883fae4a78d2023026f7dbc52b74e029c35522eadfbbf3b6c53c2a49761302fb744f9fddf7806b332707a39c8c37dd356178f7c62ed5acec0302047c435bb500663064023011a370bc728c5a1bd06ff947476a2b15dab43bede3980faf4315854000241a5a16ba9996770250b9e45234eaa8880f9d0230786ab15baa34a18869ad06389a5959b4ce49b5e1947e09f79914c47e92059a198c41d40cdb52bf2229e6e04fed6ef7cb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307223b8c87cbe950eec5c31bd120de1fc1837c5ed2d81706f3198991afcdcb2dce7ed1308b1b7b181ca623e7079d0c912023100aaae32691bcd9c208184a952d22d73e90b54654cbdb4fec3fcfa91383ba0c54309ab90c061cd955ff8e77070c5c6fcf90302047c435bb50066306402306bf0a2b8eda26335b9962bbaa9a886ca134f760eb598efd2c35a4c681482f8a6096ff070ec12c60563479e4fc4374f6802304afe8855c1527b53f21bfad04bd2e9f8d500342e9eede41fc884cae0001e093e97eef9db340a54a92189aa7bb0732b180302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c3ba039282532ad9835c94003ee0b5efaa785b54fe9294d5327adc1b991a427c6172d31005cf5287b591d7e6b641be7d023034c1914e4f3a82678686fc0ce6df2029c05764eaf7c96f64318412ca31f386931212b1eaab43d400064b772e24c2ca390302047c435bb50066306402304205b017ad8d856c755b7130910972535d7a9d037d1479c354c2119532c24bd82e030ac6aaee8c99f9ff46afbc0b606e0230544255967e40898aad9398ba4502393f7ee36545c0363c7cee29439fba4502fb4196367dd1c4d0967f7f32b3b0d418cc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230512c9fbcac46fcf5e3dad6091f276f8e5708d28a4fc275e8002cb76682158b1d95e811f2676259a855137c63be903da602300487438eb9c81a59f203661e99505aeef5f721ab8206c2e977db6de691192599de6d8c172f5c364f408e57120155032e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100daff94543ed09c6368c23554e75b82b2259c185875c1ab952eb5ae8f4e289bfd465d21a4b107633b23b1fd162ab80ae702301ff981c91f38faf6f5f1284bc39330b814108462b46e60e35cc46c1274eda7d2dd63992e69a0704ef3d671b97e9341080302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008c86642995d8ba5477b95c362d69a582b88acec2156c26b9260d00189a5f5bb4a9d9b22e2e47e96423799d34a5db7c4202304b8b0a29c916aec3b010162cefdc24ea03f6df6f217c9f9970d4df91bbc14a8acd337042565a56c4cfb62eb19ebf37360302047c435bb5006730650231008b0ca577294d31f86282585b2d049208e8604b5db42edb98e6b05f0ff6ea83a4cd2f1e12420e76be750d3b1c8901217602306fd7140e80bbfefa2a1397149667c7b706eb1778a93d7969b4d32547580469eb740ad51bba019b7c1ce7943d4b0a14620302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ce97dc6cb9b98842469fdd78080d8891f34c762cd29b229ac1f1e7e7590b9f37e6ba37b1b25eb843956309485e3e586202310091e1c7d9c424989656273046fefd5d9e54360e735ebbe09e94ab2934e09e0779405c47eb6419e4d0d1b02898692a798a0302047c435bb500683066023100b68534c332c7abdc038be4c36271daa94fbfb7d4b57c9a177e46c3b3f90f46bc0faca24c42e2ee4230d0fd5270401040023100e933a70ad3d226f9b2ce23abdb1ca70119adc25d229423a9f334584625f34de65b2f81def26ce2bdb434cc02a1e006180302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303fae20c5aee2127fdfa86c50a40f071d603c5c18d0da296cb3a3831d09944633d730809bb23e821670cc397195731df30230479bf5109c0de55d822c38ec54d6fc5b22cbae1fb83a1f18d79cf2f69889a85e0d249f38dec146727994153cb197be160302047c435bb5006730650230271c9f1056a3fca78c35df3451b8614bd6f87239fb1b537660328bee2687c1535dbadb12171dcc532225542384da0a33023100ceb7ceb9454540bf89143f689536f83648c6bbfcf4f4a669b2183bd3e922a66a0c37a9ad6fb05e70779e641e33d5b4f50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009a7ec400af978bce7db070055686d5b660cd7846c37e133030807fb579fd5077b07aa98fa78d9713304991c4f62eb85f023061b205d2d6e47c79d86ee3cc9009e82e3f732527e93a0ebd6d51c0e7f1ab2ba5363fe240d56629c0c0c5f66f1eb655280302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a2e689cb318625cc3abf21e15c34ec40c631e5ff0038e476ac1f9f14fa19dfcb24c7789b63e3a94935d0816a34877c0a023100eb9c0ae79d91613213c414208e253da3e29650aa8ec9d2f41c6f30f94667a800175085dbe9a4344f5f5cb9c0fab95e920302047c435bb500663064023031429f735c372e20f82e92b45775241ab1e0e50561338bd8ac1cac22bb2bf3245988f3cb7ee15fe3ba2aebc19014973b02305799365c6c415f3ec74ee88845454abfe9582cb8a33dbfe487587ce082887b7720389e1f8f73a67b54d46e7a2a6558d30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009779304675e5d84aa6442cebf42ba62b46011aac29c35d58a8b88652d6d85632a6a0f82beed56bbf25d63849096725fc023100e6e2eb9c4501e7f5ef5e85f7d09f6a81dc3af25ab96ca9496fe7350af73ee84e63be992e7162d9eb6e9dae4ebc51e7d00302047c435bb50067306502301c8ed890e66a9c29a748ba28ef97bc019417b339ba19e055087d42853b2364816c1a8e86ba25b345ca512ce0d813066d023100e180c046915d1e4395340f5e6951598a5f16cedfca865c9b0291b9cd6102aaa076d965b82434095121a0aa7050be531b0302047c435bb500683066023100b34b914f7a2966e34270578b06f7d85001eb6711642d10689834595d4c41ce6b93bf805b10cb967c38b2c0dc3d0fbbae0231008bf6d1bb129c7abd11d2bfdc72de629dfecb0c9a9e7252f20f73837c3e57acde494189e825fb466fe8a3d3d3d711e8960302047c435bb50066306402300102d043c5ed48f37c8ae187eaaf1a3f658a4463d731024c02970fd301b9a39417bf73283a0c6fff91a152ecd942c2d102302f5fd5447fbd76f67b8de9fb193faa49196230443203e551c1967cb471f057235b85a2e24a9670ceaddb0bebaa7391f50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d61c69624e9b705a6a66585b8ac4b2b1be424bf019723fa383ebc0d6ac884acea4746acfee3bc5c0e5a7704ed779ec6e023100b37673b6d5b684e313578f024aa1393f9e186160ef1cb6796f3bf2a2fde89afe18ead18337d648bbc9344bc3b7bb8bd40302047c435bb500663064023071ce324a3327ca50b787fcbe9c49ba2a98ceccb8762ad9c140550228722f3c1a1fee1eaf0e92d867527b23030860457d023018550e07c4d61dc74a343eb4ee28daaa58bcbab82d6c35b2440065f22ae63cb703a6342dd73a53265fabb46e64d0347e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023031c31a3761a6cc7aac47bd98198194d6c5df5763862c54aed44c937066984772b71998904907e2239f4e95d4ecce2ab202305396fea57f7c454b464ae586c32faa15a80237efecb154e299d52e28062645bfdee6d56167c4bfa7fac9cc13919d25140302047c435bb500663064023031b34a5970ee51ab35843c191b34f720137984d7bd95ffb4b6c6b9925f3bacb0754f10d132dcd6c143b0e6bb568068f902302884df46dce724588312ee5906647ce03cfab80cd2f947ab58a888f83864633aceb5441c6beffe628aec66833d77f5b70302047c435bb50067306502302baf7307e20122bff1573282c00071448aa207ac9da169ac3308a6308905d6bf3ad3cdcd16abbbf94168b42dd91cca22023100e7fa2957e7a238a27f4dc24e336be0e96cd53f8f57c1029c35c618075c03b82145df1dd9410a3b0712681b1ed7afcee20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023023fa8939b739ab7f9660d897a754d6380c6e174475818a71fd938ef35a9baa3135d4034bd8414941dc7a7d44adbf021c0231008ded1ea3efab50c149105ad0b51b0c2b15b71ecdd85c46f38945dfdf645a54037739c54fec3212a927b551e31fb734c80302047c435bb5006730650231008966cc2ac9de38801d21d2721b8938664a663b0b9ebd64551caa7170b08ba5f9dcde6c198ce22f151ca2c48e8f2be7ce023037dd6afa9bb4c6cc9c41817f1421fc11e562ea93b47eea613b40dbafe8b7532db70f372188159eb9cc1e5691ce911b260302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008b95a744083b932c52ffe58d75f9ab39b6aa4ff6633b34e27d38995b6f0b591b9df41c7146d25722e63e7e04c534700302302d01796b2bfd7cab7d5655420d18ec233c69619216a1ce64483de9820cb1d224f24dbb1e41f16e44da2bda8b9d7eaab40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ea8f252f8d9d2af060a072d32c221164511d6f2ff4c403f24ae574c4ce804d451cbe3e663762309a0dee5f49c43fee790230185865a49b587e316bb4cfe2c8c9c27da0bf424806755f0cd2227454db1dd92557c363446cf9b645ec2aeb12827ffa6a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301cada9f59368fac1b36fbd26b8fcf7959378a52132ab7f71a1e14af0442f28be1b1b8c3e5019e96ddd9602072dd23ef1023100db4edf6ebf1ace27cdf6f766bbccf10a5de2d469c3fec98854a137cc44f71cb87e29cdbc9b11c7799f25cd41993b7bbf0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023028979095668bd8a1a13787a048e0c3a645525173164d99c7b87b9fd4130a2d33c3a6414bfef9d8f57419b53a48544e4c023100dfaeeccaab54b6c8b8cf6f777af5079235b4598598ef8a6607de3605a14a66f767023786927ec7c32e61ad3ffb34c9a80302047c435bb5006830660231008dd3708822eefdd5b656c31b19acc4403161aeb7bb0bc049871a43be59ace73cab463de812b691459a0be0e8d4c74002023100edb10e06e5662ae304b1bba1274de4c201ae761af552e5d69d84ae7775a696d9ec3f96cd34ff2e0cf5e1510f9fa134b20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302c88fb5a739ed34756468e6246a804de00f3a9c38eb1f4f98d801a706a30ea4cd16fc73ee1ea0ba97c0f044d5c1ec2e502307f167e8d6861f937b994aa2d3b1fed2e7199fb8cc63b14001e1ace4406a09d3a63b22c2d75637d33b5f84a848e020a840302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023051fb3252935b67706c7f03bd23350d98087fb49eb41ebc0f7a27116c6862769043c63342096c963cbad81de22d7ac70002305935c72bbf11b30a798598296b4b4cf6930415120992cba39a38ebae3c53c0421b06131f06f8e3c345b3f21f7bf0a8ef0302047c435bb500683066023100fdf034903ba9de37d0e9f2bb14beccec7c257e2495c99f673d8b92b9b9478093690d18f4bf6115ba9222df1866d9bea4023100ac0b1a3a9671a66ed6788e18edacd404817214484476b262d23b93e673419b6394067a38c5a12226af0cb5d6d05f80e90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230218fa99045de55cc17b1ee7d61adba87615e125ae334bbced11b3c18be1a921b65ebab0f53af088302232144e9e7aa55023100ec768adea55a16b3d4d04ab817d25328cc485f3b261a45f6777c22e25931b65a83a22917476aa8e294cd2e0e961711c60302047c435bb500673065023100c7ced1d359a28f64b90f6198a518d5812c1c824558b4abfa4c6ff654b7ea3a36f814c628964f95bd5f4668fc6f0b9374023046282e899cd10bfa7b93f25f95fdcd956ae0818c713cbe662f9ad69873ff58a1239838e23f97594532d917ecfde4fa860302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306b3f5f16992e9fd979517391a03c816107d78ce85a22f76369cef300d8c94983443cac99b141e5cdde24d4b80cec5e2a023100ec55a7d29ad2f992160bd7a2ae554efa1a97184fb96ad3a1f726a8792a52fde1c1e5152b575512de3eaf76822e36d5400302047c435bb50068306602310088a344116b99561bfff2474cd141729a6987a489dcd8b8dadcb25856cc54a10dbaa5be5ef4d80d12c31890c15e957297023100e2fc12763e2fb0ec06e1d022c1111d300cc11d7b61aaef0a67c5755cfcae6691b9bbea9ac842bbaf1f13c1ec862cad910302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100de4273ed918e42f8703b9460201574fab7240fe1e0954721a6156acfa7b077e812691a922e189c273056c9c31b59e334023100ed7104f50e524ac8c5ec73bfe2cb67847e0763adb57337ffffb2c85ab1dffa3afa73a77301b8113e0fb451bfc35a5bf20302047c435bb5006730650231008f5e8ea8c3c002465203ad16525e2c3c531f818f19e102e9f2854cbe62a9535e7e0daf29771da04ffb28e9e5c091788902304533cda57869f563ff117b8f0c8b7540d0853f9b8ffe23e5ccab5d4bf0fc8ea900e9d46f887e9d6eff89a40630fcd46f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023063cd9ca07946d7da05668497bc1c85eb6dbdfb7e600d40df8718e40b2efc0b3152a4e707b4d4b37faf29728e0799deda02307c63c48cef5e3c0cf9d2c6fa81fdc4dcde8a26d2428a3782f00b76a18d1fe11d255de1f255c00abfec9d03880c74ca140302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023006d8b6c833ff17002150f4d308b8b4a2ab208c3e37028aab9639602f32ae6a44c1812141281025243be34812197602b5023011b43303fc1bb75b2e4d48317fbc5af335cacab1a59fc2cb00785b7f54e88c0803a250fe2ee103eefb6f35f76c2e20180302047c435bb50067306502302dd714b365fe753ed2fa67d35c7dc564f90583e4e213ed84efe059447a1622acfba482e0545a7dcece3ef7da9bd2a20b02310093da6e0009dde6cd7ec35e76c838e76f353c40aaa7a1241c3ca2c4f5687365c86f3704f9610efa2d68f81a66354822110302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023025bb801376d43ed2db7692815704a078b9dba63de442adce95f841eb13403d74d1447fe8eb1857585edc6fe04fbfdd28023100c3d5744719d4ff03cec3ed5fbfab51bc7940c30bc29144c2c762292d86209365328247e550d0ce9aa263b7d0561e21e70302047c435bb50067306502304ded936f91828703fd954f3fa12fddbeeb482ac033a999da97caabbde8cc5df1195fe50f28d68fee8ba77539cd8d045e023100ed11d39a75974d33277cd903a361eb7248e67b0d6d1b5624ff4b935d90aa3e716e4b8a900b598dc7a4fca7db40e892ff0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100842cc3ce7019160a89d96f0ba5bab125f202a594fc46f0ce51491541a61e20d55c62775781d21299465da990fa48f6ba0230279356a8f064d25fd1b5be736ca59e040321dbb7f6d062dde50ce826cb696d024b28d6b270c51677ee0d875cdfbf38d60302047c435bb5006730650230792c86be0429ca0e1ba3ad019bb28d2fa0c43390b1220e1a70ee1bfa10a44fd4ae4054c6b5fe30da2f6cc945d770b81d023100e96d99e748a0c6dfffa946d661e5ab89a258cd1d6f42bf524730148467973aeb2b7c78c994ad5d3104c164d1e81befb70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023072c90811cfd5877784aec18e3cdfc804dd89e3b8f331113eccdf7711964b1f4feb732b0ba7e6267c4688207d5119f147023100b9e7268b8b7566602e224e975dd6dcd8b5243b3cca117cc7379bde381891544e731cff7edaa020243394a8e23368f5280302047c435bb5006730650230735a33528929c897d68e90b74e825631cad2f172caddab93b6a59a639971ad8e21eeeea23d3621de28ff7db0017431f1023100f60422bb715280b7f283f5295780e9250470329c5387b8147414e22dae916e7e96b541d9913cf7147a1ca5a310eacd4b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009f568f05ab7fc7c7bc2dc86417965a09ee870363bee6303ae66ed9cb820a5ecc82f38213eb9bf93350cefc6523e7c9f902305a0960ef4e7fe647adc7200bbebf3ee1cfe435952a94b65c5dfcac88bf479b41e89ba921fda03243500c01db1c8ed1320302047c435bb5006630640230586b5336f74d98a559924b297e5db64db6fc877cc1a97f31902ebcbb739b8ba0e18255ba29e5a30e571fda2f085139ca0230337bdf0aacb7430574619b954e096ea2eb39aa73ea60c9ccf2538b7cdae89cc1a63c6a7674d9001ca33c62715ce15fa30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310083d2798d63540f8053c45c1d188920bc5ec911b396df720c3711753147cca8b22c47b1d3bc8e9494fc82c1b4fadb8437023039cde1e511a2f26b0d2266769debd8f506e270444785a6451498f19d09bffa6a4f9aedbaaaa5d7564e93429c6b1a11f20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304093c57855a1e64a6fd12c328481fd58f28a73b4c46e46fe8b50d0ca075393b16de92231fc2eb4eac5b8f80e38e341b6023100afa33ab3bf9bcfc66147680a0516dda79b828d621f7782ac00ed99dbe08452133675c030608dba69d144587458ba8fbf0302047c435bb5006730650230016d495fe027cf297b8aafb36f465609c649d03a09f02e0085854af3593391b49bf56337a85b528472cfd9f6932ff0b2023100f1ee581f6bd11084cfa4656c364f9f74d0752d54b8faa2b86113be66e8a668e929857d25a90e4322ac7604371c804b5c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230458fff31b01e6620ac1c3e1c6c3434216822edf70f987f4dcb35ffa6992b230e5979a36e1a37b610c71d77a38fc51f4c02300bbc554a76147dbe804e0209e3d0729407fea82775cd23b964fbc0b593af3286e4b177de181ffdfb14eac8919d7c89a20302047c435bb500673065023100fe4e7c2f098e7e458d484b5256d2bda4687566dcf5c9c99e368ca9f9ab1c80804149b70a7d349089c248952feadc8515023055220e2cedd49230cd79abc6878c2c81a148f37202821a5e80e10d894c5b984a80c9c5fd0248d635458f4d080e48e1550302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307929525635847072ca718c710d12d34faa0f1a821b3a1442ac422bdd199e47652cc62277d4aa2de624bc8745fd46f8cc023065d22a4db72d1a1326716ca4816f96f3dba218d4b7bffc1e963613d97d63a3a00f8f849ca2f057a7a706bb89306986f30302047c435bb500683066023100fda7300ef906b6ac90f37bedb5d2458dd85ee1f3924f1cdc922b275beb646bf08cc9265cfd1b4f93e03fd87f007cbc44023100b025f03ed9d594f7eae7eba9fe705d8f2326fc712030f8b782b38e2322cc41b601be041482cdbffa3c64ed111eb6430c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100dca4d52f520b3bd3dbc0d68fc71932cd5ed0e08df760707bfe7082176858b6b946aed5b2585244c57df317cd6dbae540023100ffffb0ede605adb555e7d31dd60e0bdef79a48fa6524d136ec9f60d161cdd3e746ef2bbb11bb6803f39189c707b0bdb40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023059a01fe419ae813335455691ad6943ae1f8182590a79fc69314db34e4d2eac3f061b1a303b79c639bdc62b59a60ca09e023100e6dfa9987660d31c2d59a344fc2f9b7e6b659f918ad6f3e7a29c5f5a0c093bec17ad7b1c0c4707e9dd587854ea6bb40a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230232fb96d9cfbe111b8835b4d85d1ab7d77a47f9b543d8303c1eddeb8229c276daf77441f911f30ebfc23c8e0abbfc74f023100bc411473163780fd4f1c3d224122e8b75e3d3733023f7aeeeb1cad5b9f58baa6a214ecf9e4b6f8c019311eb5a8f3a65b0302047c435bb500673065023060f47392005fb9a3080ff86fd17503d53440cfbcca67d4efd5b378180b301ce3054e83d14899ddafac038ac31e7eecf60231008875fbca56556a0f0f18fad3954a6af8d65841223f89c1e6f1545964c6f0e8686a9a2c50a989aad8cd0576fcb2c5782c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023005ac9a1a2df9457c0c71f69d3a1c2603920c89518cafa9d980497b86baf0fe940fe0d75e43716e2150734d0d5a48f247023100ab8ff7fae749767fab77b80dea85e8ab908fab842050611a05dcffe1bcf13ae5334f470d1edf837889662765367d757b0302047c435bb500663064023072f13231db17315f8e8ae0ef364f4d5590ccbb06acd4723e13c0e8df9e0a89ebce6efc24c4b61477444d6d60b0892ce90230539c42e6de4b455cec5503c44540b18e640ca7ae60e14ecabdc250f0ff38bf17013e104f9249e0b3e9d56de16492e3ca0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bb2d3bf909b7a8077d0149c767ebe4948da83c400cae95060bf99416f58d4747e849177abf4b6071b94ca92b04ba4f5e023026008486e2720bf16981cc6caf2549972576f0d620eecd6e98e70b4d472c1008e5e7c51125e7bf6a55362f112b903d290302047c435bb50067306502306107f5a924210f649e842db1364107c69873524257e31aa092b855c8e7ef1f172a1d664269df0f8527626c482f031dfa0231009c2837bbdd8443116197d76e76e8906f83aebc5c18ba4cba808d8fbbbedd432932ea8ff215e41debf9ed88b200b75b550302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230043e189cd9582707a25734ab4f16c9c63dffe0495947fc2221cd942aeaa05b6d67113c0e51d297082aa9688c1d6fa4040231009c8092c80df0baa5755405a5203a49445cc1a455c210d9936c143fd20ddf781218f4b4e8f77743c6483811b7099631d10302047c435bb500673065023100a44f55fcc6567859ab77671511d4382867bd17bb0041c4e8a4dd8f821f6fc58e6ba72a61d3581265f4a2d4bb6ea44bdc02305d9472adf62976ecbbc434e8d521d68a66ef6e705b5fa4ae18b977f4590ca9962053d1bd95b6e2fcda0dfba53f71af200302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100979bcead3726eb0f0715758daeef52d40b81b3a9562be91ff764753f845bfe57c8b6cfb87c635944c6b0e310db0358a0023100e9ba16bac4a9151fa6cbfec515a8e9634cadd3dfe4ff33f64e67ecee27b07086c72058e2ee66e1b83ebb1d4428ba4fc00302047c435bb50067306502300dc1ddfa25388769c3b596919a8ec79db76bafeec89247063b3836ff98d5561198c1a4ddb717ea136220092a6a89809c023100d3a98f2db80dfc869dad08acd52bcc81ab28499f8aaffc2fa38fbe99094c2842125d9bb4ee2c6b64b4d87882eef6bfb30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a7600520eb07db87169c0667304b2dc261d7c269d77481ebc62749548d85ccc061df4c6689db67c0f855edf1cb6f19be023100d5dfb9de79c6238c52a6e5e5fe11c2d04263be7a1e4d281970dfcadceb1c8107e4ba9c534320e5ff7684c9260f3a81e70302047c435bb500683066023100a54d89c22bf4bc3d2a7c35caf29e61fa28c9abb4313af82a169ad15c65dbd20cd33219a1f33ff9b26d096217ae2076a1023100f4eb8c4b92e5b32a060dbf9b19b4d2d1df32b9adecbac1cbc4e7d088bd3ad4bf39962f0aff7cd5bfba43dba3d32acc650302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230440b4f0dbb74b7b8b2d3e29151d6660eebf0727ac2fc23704309b9b1f3f5af7cb65e1ab03f6d79555fd142a4faa6ca2c0231008ef3b49444b48b071c034317eef9f9132669c7ab296bc6be67056d01529700a6ad38291654e536486ec825d1dd9ed81c0302047c435bb500663064023005ad0f830548dcd5ab51ab1a061679f5b16176105c0a5a8d6e268bb93300fe1af100a92564d025ec9b4eaa88a4e52bf002304e0f4b734388b4f03fb628164204a8513719c094b1e839a53a70612c93bf0462b7a00da1f565857978a6e46e53f268ec0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bcbca5a6e8a1fb2b982d6b5d4855a86ec11ff0fe003fc7728739f62db828260535dcc3d3b55875e74133c22e211422c80230180c539076bf3eee6fcd1c743ff37f6671a24106f3f990ba1911a27020540ee9953fdae3aa48d3355560fe7dcd6876680302047c435bb500673065023062fe5fe7f6fd538420a8e99b9fe9c1322611d1123726dba754447e448f1f0e81b0081435be99d3bdc02614fcf718291d02310099ef84cfa56b09eb7b432f8ad2e6bbe356cd5dd820110b95a4d87b47be40f8953274e99baea87ca5f0130a2dd976cfe90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304a6ba99f31028f39abd766ef12eb31a20204a0d1eaa3634132816cda531848865b0457f9f35d18888a78dc9af7fb9546023100ab76597a00fa3eaad0cf26435f52aef4c02af1f2757bcfb35121576fe215d8ff8ad1e4be1de5c4bdf9b1b3ea337d04710302047c435bb5006830660231008baf88c84b9ba1d11d14cc6aef4e517b0f371999c7184aeec7c96d871a9a89314be62e30dec32943687079ca4b53d93a023100f68730484fc40f214b53bcd96a38726d6273af69bb0be4653334553d97440d39e32fd4d9c059461dcb6654feb753d8f10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023002f3657808f23336f86f6cacababf328ae85518098837b0eada9f3d5fac778e8eb3932ffe51590d02caf7f0b365e6c96023049211c9d38f3b39176eb1b0486fe2e987a7c21a55a9e2317b15396ee4688ef6fc4c73e25e5f65dcce64c70ff59cc62ab0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310090cfae8e9a5d2053f4e37fb3289c4da32033fc781f863db869dd804529e27ae218cd90e61e00256bfb5df2885a11eeef023100e52f3f0797d3f3998277b556b00ff042c34fcd0c5484eeb8e673f9ce6128cab6d53a6c97012afe07b938dd8e855b85bf0302047c435bb500673065023073fc652b73ae32151d09a61b6c35c818a6f8829ef046c7ab9ff059377b3eaee1acd88f2776b336382c5cb37fcc801406023100be2319c63bc00081386c93d6157e8f1779f58e5f66f465eba6891e26c001469c15abef4831d313d0fe785d2fdeed27bc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305f46e83ab1b1b71ad701106e4cef4131313125000edc649e2ed1040f7924a01b01ee096f32c5b4f6ce71aba74423ef09023044d6d1cbb843bf6b68a2ab7ff91b9e6b9feeb5348e4a3d4e3ad910505efe62f18508f5081da263f58d9862d0f11a2d5a0302047c435bb50066306402305311451d38bdc567dc18917a3691138209f17e5775fbfebf88e6f6834e52e2cdba5686d53581b58a6a9e0d43217d1c49023036329d00ab27c60161e566c935f1454f4112f32d05bd5109745cd0d96dcd5ed06840ad66e2bc05dced2729d951e966b20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100dd0a081df9bb704a94a204abb60ae0ba3e35065e844d408c2c6fe35eb0b7077235cf62dc55d2383500ad2dadbfbeeca502303d13f00c45966be24ccdb42f9f8fccd433ef32666ef3ddd66cd7dc76d4c2d49a18b1df0e7a53fd9345d842eaedf1636d0302047c435bb500673065023100cc916cd1ab85fbdede6d7c1c880e0347f708d6c82c568ed6d5675f1ca376f4c61b1b7f5f201e9bab5d7f14ed2597419a02306dc4f7afcded124f61cdd9e439c59baa7364e81316daaf0925ad39c3f95efa35f186dd4732e6379e16dea5bb66e1597a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230219950ff2f111832c0b0699e01c673bfa677cf41310945c666222e7f16ca13b5f257b216e60d4c8289cb6b3aac30d7ee023031a89b28a01f91bc9218e88be6337720fa2eda5a2c2054d289a4782a984cb81f23a551480ebf4a03a59d44b7aeff11530302047c435bb500673065023100a68b5beed3b19da28fc41669f7d5e64ef4a8829784cbb901ce9d777d3342ce516e12db88d9365cc5e0779815ffb1c23a02301d473b9896f9026a4c71b451041533923ce530b2f222ff4e482aa537f119b9ebac5523b93b96047b4d7ffa081930d9f70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100aff866cc042ec202e894a5311ed03946ffc4ec42e4ca7ad8fa0f9e86a7000a20ca6fea83f0223badb69a28511b8532660230253d858cc4f6021753f4c184aa0b419761484fa364abb772833f9fb84ae2a9520d4339727f021c01e1dbb360ff6f41ee0302047c435bb500683066023100984a026f0ef6a93d07e665c7a28a4532330f854ebaf0d7c63349b023bbbc5e2ac454e1b835a0d84c6d8c35469dd1d766023100f1719661705079ebedcccee2db474bee4407d36d7e18835cce59061b3653874729c781bbb0d3cd68a6430f35e153d9540302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100841db002e761156a3c23fa005176d54fb8c52194948562c7dba2e7468fcab5020c1371ecaab4daee5bbfc3e2544e14e1023074b64cde9349a33afcdc192c96cf54179e1f3659ea6a47d21199385d2cdbc3ad8ff6d89e7af803ec98cc7ea4b823339a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302934f02fe627c08407d9b4bfcb97e5fb6fe39cb6205e90dc850b9e9e9c9ca45f82cdce7f3a8fbe26afe4587062174a49023053ea91c3a0e45b1a72ff105bc7a758a2ec569528543a9f52cebf26fba5196c212ef8a576cbeb046d54be824be3f493a90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c978218076fc2e24d16d897922a527f23bd4bb36ceb075f90755c2680a48ee4213d4a60eb6973ef0e662404ea7a478ee023100b7b02cd5c498feb319cd1755563eecfdaa31a9a159a72849854a21f0f1e893b96fe6880a04c59187dd8cab6f055649160302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230638ae4945be5bea6fd62f65b959fb2fdd3e72351fa0183b18b114107c4a8c83c1c9dcc699d261098dfad006284001c8c023100f8e4b68213c954c734ad24f32c9784062aca5daf69edc5ddcaad17e1b2027d1e6d1ff48d21aff83f4b0fc489c701610f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ffc600355b970e315fe8460ca8b8cff2b4ed55de1d68c1ccdf19c36d3bd985fe351b3296267c566c7229077ce51bf8e702300c8ea497369f3f8afb48ebca9dd927d6bafbe57fd4e17f0e3676727e934b05611f14e481b03692e5f32eae13a47a33610302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d0969ffe15b666f3ccac9ca52c670f44ea43fa061e328e30cd5d4a9007260cae3d986e674abb46bb3ee15b1d0b9caf5b0230582b453739710c0edebedc4a7dde04bbfee7885e5a3146e57ca0f46ec2e224c5a3fbfb148184025384ba67cb6edc5b160302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ed9ed067def262c89752d7e94731daadf9abfcb35a5b653335f3384b4a02c04d75545224ac9043421b80bb9b4b276b5502303a6f15dbfb493e8f6a32a5b6890d43a9d56610c783f84937c04cf4c94c852cbc287e79de305bf87fc2e4f02ef1a8ae160302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301d1a88eaebdbadc75319ac6cc0c162a1291bf06104c346a5dc35baa333e8b6473706aac69483f1adc74fad4208100f1f023100adf3897cc75958382c22da23a0026f1abc5924d0f979b9368f85374886a9d1a8cdf3d009403253927d7d1add55a5bd590302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023064aab1069300242b7f9c8423e2bed10fecfb81dc007d26de4b78952ada8a1ad49695709c10ec9adc5e5008dd02959ae702306fdbdb4e251a7c32ba93dbd91a1040bbc37a7b8c327c3b028b0efcc04410e4deaac679614aca237fe0aa45af76ce7b380302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a8432e927a61a7d63deea5388f97607a9b07bde865b9b347d0201125b8264b7d889967e3e7f12cc69c01d90f1b8c54eb02306a6862fa2c62b085338369dbeb6b690258bd37399aab2f800923cab7b5f0e1e3a8af3e33dcec19b6afae2548900422300302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304a5eee593bd4588ec73ec67c290e4f9c911c27a1453ef872d5f31af4726f25c8188895677ba0428f5141d53aeed78b7302305b07c428c73bae665ab750b931f05849c52bd5b13df63b1e9c7f655efdd578b790d8ddb1aa7f6d7d2b3f1538a05de8f00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a0ec75f6339668e2744c4b6692a85edf1ae7fb45e891fcea310fad644bc8e6d7cf6b11c24937762e287642985da6091b023100fe487f03713aa529a38280e331e51eb93976da862049363973e24a450f0e332f8c31c8abf27da91f04d53ecfbaa914f20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230501fdd615e7d48f69ea98a31ef262d3ffc0ad3e57f131a983860513e553a76ba470f7cebb9cf7479a2e6529507fb04220230740c0e64181bede0306d14357cec17ddc47a2ad5fb48a5fe94327fca78477524e41f136f873062ec4d65a97e7ea5abca0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304145706becd601042d5033f9d17268ddf3b98e778ee1524b2c51730d91b4598f1a17f10ec7943fe5180cb247d7047515023056c663a0464ce370a8625f00f79dd7249d2185cb8e91a6f5709a312aca397af9ddaab768c890c7054411c0af72cf78b40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100fdbf04f96d5f8fca25a00d823ccb3aba8844083b3d12a41f781dfcb85d142a813e693499c007d36ef53adbabea3911e80230443ba0efa6bae13f9ac657b77a7ca2bbead0d92cfdfd1ece1ea599a8ce0c0a03f156e7fed3ac999983ab1ed44c379b300302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023019b4dd5274efea37231a238c1e6796420452a8952afd57061adac5d3fccc7f1ebdd0ce617e771b932b24d7f527bf7a6002306dc8846d9e1779db66e9c1a9f8f8afdf874fee7c2eb4c73c44a8a29a7453defa652f1be1e79350bf9ddf7922d5561d0b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d010d8326ab03ac3907f1fee47926cc25b03223d5ef64bb37b7e857cf8e4c3c365e1d99f0a1e4e7ed182ae2f30798a4e023100ae8b034b6c9e3c1229f4db7c0afdbd805888f7d7383e46ea5ce5044fdcd3be689d085df2186cdff42dc114d04a266ab80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100cb2e7bc02c8653a673d02d9e88c01b9f97b7b3b38a5a2be92aace9d628d0dc4d06979f45f090fb0558840c0adb8a83e0023100af3a0c947bb7da0f795fe23aff8bb2a11fcb3b4f72fe5967a2db8f4ff1f200dcad040d7b3eea5d223f037eef0e9635130302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301daf48e5e88b4b8fa36f87629b9ee4316af1f179c88483694417e2b889bdddca1b899e206cd8c5216a197dbcf5fec04d023034eed71e2988fcd8109ab1bdbbb40b84ffc416fc401535f75669290e68b791602a78f9fd293bf2c4eb9552edd926cec00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a565289779e06ae9d14b15fb4c07307babddec0d17c7dc7080d7300a66d6948baa5421b907178053fdc5f7cdc93bd234023100d2d62da99fde406a3a36acb4608f7edc66f7b7c2a5122b70174c18a366ac60539833f0e6cfe4d7a12af5b7cdf2ff66760302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f132d26e173fc92ca64cd0366273fbdd1ec201a5b771579a4d574c1277b5acd5b50aa5ae8decdc151d704096308766ca023100e355c70f5a1bce0a62659020281558676ef7bf8f6857c9c52413f47beaa675de554b8b0e5651400451106686d6fecbf80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304ee736dbf308efbcec0199e3998261e5a2a88dd11de3d95654f894af237f3b79eaebbecddfa00b7c9607bb025d293f470230756777c88a8114c7f0a9665f14d2586fadf9b6cc88d1dc8a271b9e9450845c1904118f92e3daf7009ce013e85faabc370302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e14a186c2931e643c3f316a20dbc1da857081c060a0184423f9127e2032c5b44d36194d484983ae6f2184e201f884c50023028e253e14f5e32f587cb991b310d8850b993d042d30ae0bf0d6fbe2eaee9814e147a94cac7d2560758edc35b2e1881b70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230452b8d8fb2a5098024591e50d598d5d73637a370d4b59fec538a63628fe6cfdd80f2661d1c9253441c9dca6bb4634f4302310095065bfc59739a29c38a39f984d42be232d7c9ee327e8eda174df43072149c5ccbce7a8356062a3cd4d8af5a2ca7796e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230257f420d14f09ac019b434716bd6c4ff4b686084b8312b5f1e038882c4d20884f4cdc5b67ba465fbc5d9022904c80264023003d6a6c0179b1f05c2af59b470993a8672200f58ed510e0063051dace430dedaac135ad8867bc874135ac4b9510656c40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306669e42796dc3b695501c0e4d2d104d8d65a756942946bdda8b60d9ed7f8eae518d33d55be7431fab90f2973a2adecf302301d47934cf3e345bed4f29fda49044ab13fbfbaa073b63858ca6568a65497af918d653756774a6719485758a672763d580302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d8d5b9e809436988a846a3c39a029be392bbba14c4dab79e486cc8a5c104bf1e135bf3fa62242631d1f766506ce3e5150230257cee1560fd293c8ac9d0d599e039913cf0a719d5860fa8d0ad59a087c94301bd704551aa36f5a3cf7576120516a8510302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008b7d48c7a4dfc20521713d2c25a334be6e24ebf7b9b942e0d771f24fcd5cbcefb3c4c5dc982994570b11fe1b1e52ddb50231009214744e83bbb5eff68401f28b0a0cb325881aae83ea3002e81a8954a6a5a1a05eed56b93507484c89398351e1b216f60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009bf123daffde9b2eb34d92999f0fe423ed41be47a16cc2b1dd1ebe75183ad4ef972651d76cb246c899d9d2b240b552970231008ad298948e99dfb0577df0a10065b749d7d5c3261a9a541b77a06e2239814f3519d243e7a66191c9c54b5b547c3820810302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100aeefb9aebf654f07d370ba631407368a66d91a5ec376a03968836469166d378be335db42a3d8d20f2d566bda0f422450023100875fa5b78ced566844203b7040baec0d2fd7892f41d07a2de0edcfdd2e3fd689379f6f310ca7a60f83b4138fcd83ecf40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009f666f791ca9bb31278ec8d976e6c59f2a0a48af45b9fe63df0169f472de75af41b2fb5bca46136a850ea509f5fe9fb8023100cb3f77ddb9750de8360e1499784e3296776d0f73b9c4cacf0e17736740e0728ea4309896576dcb4ded15f9a5421b618c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230596490be73f09051169d70c755b88b7c6eef4da52ddb0c9c8645f1b1599443171fbfd79f92d0fd844ff5b1f50ea279dd023100cc4918d2c84ef72b06b787a02b3b73df0dfb1733223512cb0d1d2eb18fc093007456304b8bd60bd9e2ca272a917561650302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100fdbd163a5b040726dd8b92d0e5e030c269e7fa1a900b9da92dd87fbba7a55f503e89d38cf139369225fe30f0e910489102306985d076e21ecc7faa5847af5ce392dee54da25c13bfcaf6bef2cf3f23b648f010c1ef3ee2a03d10704479658d8fc1180302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cc1af4b9b61f71a49cc9b4af57fd9c96fd25bf3225caec84552acd859697e2767f9dedab8932de334d30ea10c0a69c7802307372b6a8b2031a1bd84382ead05a4fe7b72e016f840303735295377d7c86e6cf6141934566b35fade9441d40d6e76f420302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b0391600a0a67bfc45825425195e6279414caedc815b170bead0e5fc67b1fa4156bcbbe52500dda29e670bddf8839d28023070140a27305d9163727eb399ac82d2d87c6499b69d9235b9ceba0de89f78d50ed5f6842e5394d48341377109f56fdeb30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100bc419144645268fdb15f632ac26a7ed1d783c36cc7918ebdb759ee02d983e56e869b5506b6bfed9216e45ce07d18b282023100aa9f6e2ad726b57f119e7f8cfa75eda678f4090b70f84053ed305708fbdc4ec96d9d4aa1368142ebbc496a38c23d829c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304f20d22340257535debdf2b85b2f8060a15db6261c2ca33b9442933c9be3cd2a5a48b225bbfbf9a929cc317d72efc35c02300de80ae4a558b4454062f58f811738d12d288dfe0d8313e9f86defea9f9dd2a90778e6e72d7433d77bbf8b4b99ab11ef0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307515679dfd089d185086470e3d215b0e5c1f4e39992bf12974aee31d939e225bb631b50bb5cc93650c19104aca44ae97023100828e2eb40b6e699a8c57574ace38e84c29829e2d94b60b608e4261967590a5da28ee74cd4dae73cfb2919c54694ee27e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230551265f56ca3ce42255bdf4d4a0642d8dc15bcab0670025587b75570595c4ef06d49809aa2a81e12acc2c01cc0d1163b023072440e9b775e05d6fbe0984ee211a195f2aedee23fa711d1b8753f71cd703271e8bf7d29cf39063979d14b5819b580120302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023020d5660e34c1c4d0b97451cf8772f0e33b793d8cf79b8680b1a5b4d25efda14bf750a605e17322615746de4fbd755416023100b02e8c73d013425f79d0d9ec68d426b01105370cf7900af9574d125b83aa6f8a7e8a5005063aded43467f001662ff81d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f8c470f27609d0137b1ee897a5dc1118105c3f0198c776be1984999484e7925c9ca12285cc57b645a14c521b354c55d0023100a6c5fd35cc65bec1075bdc3f4e6bbd4fde6afb469b76a3b38bc410308b1c2225fd3dfc898f01dfc4f607ea07204364500302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100aeba9f0329eb65aa1b3403fd2c12fb42dbc043e752f0eca26f4d1b79a7c0c8177385f3b4d6a46a8e3f3d02dfd07a3417023100f702e75c41e5b2017f7e3aaf9822f5be544d2a0dfc92fb3e0d062fc6e48f4877277b634da28ded057979e28912ef6da90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d7a94d24435ec1983b5522c0e1e2e85e80ec1aa68be5a6aa7c30c0fd0f6f7aac45511167ab6b5eaaf8b12291bfb707ab023100cacbc261b5e1efeeb449ad66c8c2ccd1999cd04c3c5bf54c4cf1570e2d4a951ef8bc644b6188944b5453219838f92d910302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023075c22f138cbd6aa7e570c088beb349ca23b075391721a57bd746f1ea66b97b2dd9841c31e510c01ae112e60b03beb0fe0230506948a81942f7a8dc8ceb0bbda386244210a082a6132d249d3af362368819eea5cb6a6db3b8e0d990676be32fa8d84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d29434ed217c1a34d2d5f5fad9208032525ac699432a51dbb49656e6bd38679ddbea7ada5f233b287157a92e3cceffc802306f590b62e6a13f5902a25a542cffc72e1b89f23c9535b6e86ce0b185d9846a92752674d18331d952a2c4a68e1444aa8c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023076f4a99efd6030043ab89c638090886024bc7b821714ff36a1a9604b72c1110b9b121cfbc439b874f8bcb25ad99cc865023011ec49d2fa0da89f3546a3c80fd3cadd05cb0dde2491dff1fb5a5363f1541d15b365c071e405a0dd531104ba34394b990302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304924d0d377ad255d8baaaa700cad5b941af7f5ff7e0edd1284ec842450904eb446166c6e4464b44b95d5881cf3953a35023100abf8d08550407fe76fb4c5496fec2a1b8c8e8882fbf668b4a1f03cfdb49d83127c9e1ff57043c2a04a5ae8aac69eaa160302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100cdf4ab0d7b3ba2672e043c5a395270ce5cb82871ba661d83b43e5bd9ef6562782f217638cada6a4eaf1664e36b0b85b7023100d8d16aa2782e7539305a9613d72512bc22993bf97e5697e9017a014900bdd6681bff1a3495bc8897207bdec2f4048cf30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230458716a778babc4dc58ed21c562c520e5727cc68550347ed233e16434001715b4851082981eb1b490d63c3f95b291a4f023035286ab994d3d6534c111c88e429ff03cc0fc1ba2b6675d8a715f4bd7126ef4556fa21a29800e8894a3154e5633901050302047c435bb500683066023100fd14d995946641b5e0bff86d97b2d8bd88ea6db787f89b81a78dbf2ad03ed0d6d3f17ff196ab3711ed2af985f3c6b39302310094e9ae6213bf21cfc31cdf569ae275773e96b52868c8ad75c08509357916464f8a24a28314acd2aa4f28bd2bad2cda200302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a79c597c2947d9c3eabcc570da05fbd121481ca844b9f296f31eea56e079beeb503aa7ec5152c307ac7bd097c64cd42002305310db6123bd16afea53df65dded4758791d3b9ba9ed726e65a30cdb683819280c03dcdeaf19b53a43901823c2f7ea300302047c435bb500673065023100d5ec553b371a211787add7f0a717090886b69f6cc992e33fa874684a1d679e15a9c1839508a17ad980db6c4f3284b65e02304676b7a471ef5c001444917d912ad8cafa53a6b0cac270b941ee9d4bb501dcf3ad3da2370c75514eaf68c62f5c9218a20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009681030bfe20a322b322d3b9677e97cfd8e0baaa793b4655d90b04ba0dabaefcc8036c329aacf977db158ebc1a095a33023100e6cda40ab8c6bc6603e81729562b8e753feae3d6dede7102f20156e632a714ee2ae0aa2410710cec3974017d9ff179a00302047c435bb500683066023100ebd9c7a8ba3d4688432c0a677515169a9207efda873ccbd7e43f256df2598c5070d89b6785faa013802b37e40b180eda02310088d4825b726f1da3bed4bd0f0b4fc817c9e9af21d103e7fa5c040c32227615bdf8ef29b526a70b93d1bab7f70ef0ed280302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023039fe6d864ec281a2fa58e0f3570f167778a96d52dd35175381f948493c51000fc7b20430a29abcad281218c006368c48023100d4462f4eb2b3ddec64741fd82001e547287b8148d618643e9281053d560f0edf046b2a62914b22db9030789b28f553850302047c435bb50066306402304e93cb127e6bd79a96d1c066ab63b054e4a10bf514b88debfd5fa9ef27d1bc9cec76cb8ed3cd2c131c6e0fa3bc43115502301125a425d2cf1d800bbccf4104ff6feb51835f7d0266d18820445ebc736baf58aacfa21683b2e6ea30df9073847e9a0d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310097ac8b8b0057952c0148cc46f4c5d6c10817cb4582b1b42138958305c2c529c18d7574e283a33a588b7635ad2daf4248023100df69ccf6eb0e54076f58368109fee088e2c9a21f2dcfe6c7072b1d73bbc4cf05be711fc1658fcf0662e0cf3492b71a5d0302047c435bb500673065023100d2ca1138d5151c0163af324a181f79828867c3d933b589277b55ca95896e00c500912ba1724b5fb9fdb1762bb57b1eaf02305552c301c4ea1b8a7806fba62a39b491428dd335d04dd780191d3d073a859b8761b9944e0a0ca9cdeefcf0a4d86ee47c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303dc32732134c6d12f7255c19775ba4ecaac95fd1bed34d7d6da1c6b525b4963a42a7ef1886afd48e578eceeff0cde06402304189b276ce8070145b3c17665e671a8c75c59b5cccbe83902f0c2e65ebc6736224d7136f8142040576da8b80d664681a0302047c435bb500663064023047b4df56f9a386fc1792821b2444cb1857ee3cd91017740e2ae0443037af2eb6fbec340cfc93e9349efba76ccfdc4f9302307e84cf024932b1a25ffe251a1bf68d9a09063619df51866018198638543205797e568941fc203e32c1b2f64609be48400302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f1cc3b996b5c07aa0901b83e199a2b4dfd880111ce50bb7270f7fc1317da13590ffd4490155b5dda05927495c22ad448023016b725dbca350f621961ce556fd1707cf297251b3a1748e94822b3065b55397267a2603ff02c34c154dc345b5564e1c40302047c435bb50067306502301c8c3c5dfa82a7548851bf02235cd39f15045e4ce6a8105921c6016dbc79d1f2e0455f3b0779eb26e48e4603f0341a68023100b2c166e16d02d240ff874414fce0a770fb740f8feacbecdcb5309d9f4f01bb405136d0de405ff0a0189cd7c44cbf2ca40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302bce6661924292785277761d4e974602aba2f600213b8ad3d2fd6ecbd7629ad4e5dc56346e3a08caa762f18a14d4ec64023053ac4bcd444078ca297cc3082912c9e51bdb9c7a30393279e45d5243ea3441c4cc95b6fd904235e8b41d45e94d2df0ee0302047c435bb500673065023100c569f60f1a28e759dc889e246da668cd857674368a68af9db85bee2a3200d2a5f968f8c61f1516c48b5530ec01ceb1ef0230675a1cdf9def0e10ba3e6f98e73e19ba95f6d3787233ab116bb282981401a773aa4a20ff060f2e077f1191f2eaa900f00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023009165ebb042e175f8be8224fdae2cf9401cbf21385344b62839b7c76b74a41562a80a82a2416f158957a00b851fd1fe802302167e6fbdc7779478e09cc06fb9b364c241633de1b9c5c756df95282e0771852eb3aa3bd899ac7c2ac01c0b2fedfa0b60302047c435bb500683066023100fb9b59674766ca152f5156378ed11a47b57a0b833bb53df91cdcecde4b2f2bd4883e28b301f9169e66d662eb00ed234f023100d425984e53ebb5f244e1256b72ade02403a0128ba34ac2ed96762107301892b7d186fd0f72169ec65601a2b3928bdaa10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023022e9684ae7a014dc43906d04cc9841ebdb961eda44e4f25885495b0890eedb69babcb40c186a709c922a4941d1795e85023100cb6963cfc7133d9989982b3e82a22e9b7fbf3dfc6a6e4f266bc657c9040bd4eeb7fa2d37d1122d681880afec64d2c9530302047c435bb500683066023100a99bd90a1c42360fe1082d9163ed9a04becf15e7794958d7c88c2d7b6ec67d93a838c9d148acd4eb2a12475fd9e86d8f023100ec041617714b3e69e886da4dcc6a1b65f89812f5e3c285e0d5f5c995d90744e5b73fbbd2b3aa0d12d662f24b4c5c0ed50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023039096f83b10e54daab70edbdbe51efa5343c05959c443c415fbfe82d3fc9c9d3d33bebf328e62eb34945e48bf1028ae0023100ed409ead528735a1c841bd4c07195e422e525dfea308b0d8216aef4090153150277096405f239613677ca361e0acbb820302047c435bb500683066023100d85351311b3f4caacd3e7cebb5e4f65c5579e829b5d0c9a0b2049348018569ace3b743d433fdd09d8b131813ce780c1902310093a09122be9e16ad58cc053e71859abc999da8093000e20e2eda0ca7a57fd7c127ca836932d83cce11c9bf4610bfdb1f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100cdf2d94364117e754a9c7dd148e5ee61495b48818794c75002b490a5778bb2dc1b8641b5bf94ff12d2369c4a026d4bb7023100ea7354271038f70fa37d738d029b678db8bb9181b9370a993a429be38c78bf230cd9673248ff9012620fbdd7f574761f0302047c435bb500683066023100d1a71ace9448079d3e1823ed83daba962bce3551fdcaf5e91ff8f7dfaef43ade5b0e9edd35dcaf64f741cb9c0243aae20231009c354ae5de32e7387cadd84092d69e1893373ba64d76ca4e5f558018271010128329c5d76c7bd7cec1704ea82502052a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301ba5dcdc3814ec7f1e05cf3f0ff1f73fad516b0aa6491b5bdf30ef68a82a3a2c1a047b05da85e65d10c13847a0cc8ec0023100fa73becf2406f9016ee02240eee53ee62085339845a9d9947aa09888483006d9ba7097291985fa57f0ef56ef5c3fefe30302047c435bb5006630640230151754140b23d07d9559bedd6c7038ce9d51a11791dc72d4486960b4bbd79e621f7c341981a28039a8f529babb3d4e5302306e70ad5f7260b3663f66654dec3b22454b2f1bd04a9393e678025d95d123cae82e95bf733ec20e16cbefece6e21a8a6f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b73154a4f6ab430e0e0cabb3e3d158620c79a856a2b9bd9a70743ec1900819cd4cea8fb0d40b722b4c8c1037904329e2023100e1a5bc51de839d6afadfeb9210e9c2050573ffb2a4ccb41e09ac7c6c0db5b69eafe90e01d99d302ac76efdd18d0bd7640302047c435bb500673065023076fff7f3de0acf99bd3e12fb4c694a2e488466cb5a5498b71519bdd6ad3b9d846ddf3e5ce1c56e868f41ef982208962e023100b3bdbc12ad7afa19e0c52adb6256f05d2e0641dc63b0209377356fc36f1ab4cbc61de407fcf0a84c166f1ca60c515f350302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008f0ac5e017f1de6fb926f74de15dec2b745295beaa9cc7803234216e111ee8b4f510fb3389ae55541f6fb78ca6558067023100c4ff5f5a7f74df0cdfea53443b037deb6cfcdb62a07258609d1d10138655f0661c505e9f714f13c6e721d35d76c3ef7b0302047c435bb50067306502301e5476d0968a97ddd999a83da861476cb7710e135aba4df842b1b8db121401ebd9cf572070dc93e8ff51142b90f6ceac023100b10dd7e294ff3e7f6724ae3ce42d3f0d836506e3ddedc21027c89d77b74d8621e2cf84ed3561500ae8c258ce59b08f030302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a546d35cee159b33c3f7e684d6a6524901bb50662f35740c3fbb2cb35f5874df30d458645041ca6121cd37130d1e32d6023100c6ed3063fb7e735811b04a760224670012d9a6cb7d648d6e7146b47f03860082ff319b9cc60501c4e8a07c8ae9ae4cb10302047c435bb500683066023100a067be9a0e83dfc63a02fff31915224d1064cff4158b17d2705f75ef1c2e045141c224689b96f4c89ab48cfcb821a328023100c5e3683bec1d26fe07f3e179fbee9742ae39473d075e45e812d5102384b675e7cc932ffb0f060bcac464ebe33a142d5f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100981f5872a865ac062af07f2de0d30d6771001a311d9d3300f8fe69f2e9884d25aa8a5b56edd7dbe8c5cb1a71bb9520ab02305398b09c8e3de0f886395c3ce1e10790a7872749619bdad493b9cc82c610058bc973edafec63464bfa81304f36c1e8eb0302047c435bb5006730650230636d356b20fe10c734c19030a21a2c450e819141a54407aab08c9e17f6cf186c9c7564b388ddeca8f01d3c07326deea80231009a56014257b43038afb8249740d17724a55a9933e9cec8f854a6234dbbc29bdbe2ed5d896134821a05e2b062612894aa0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301394ecf91fd0fa348ec95f45f2b4ba203eccb625f4d47d35db6378b41e7ea6e2a00e0bc42901b5f2f395e8ac15aced2702301d56741f4e3625f344a9644e89ed1ae375efd85fa738e12f6070b65c927d5a9fe9ce4e00625ce28cadb1ac7908d27b7f0302047c435bb50067306502304601a0eae2c95246415fe05b1bc35250def237b094044add59d1db436bac57d86ab23df3916e34b374f03d90f6b4c74f023100883c9a07d073a27bcd8425ca4055703946fa1e1e8eaa0780173812b6007d8c9c318051ea991bc2ce3ed21c948cff5fe90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304fad57d36fc37e7adb95eb9f1929b7b381dc720e303bfc89811e26756b045ffdf1e5414f97e74701c584c227a216f82102304645dd53f44a1bee3590756b1612c6a7d148e119cb5f54560984ad92b55adb0feb4d32588de73993d8b72711f42df7080302047c435bb5006730650231009198267cc2f892fea7765376e7c39864bfdec7e9b858eacc5dcfc02f4181639652ecefa0342658b7e59dc4143f45f54f02307e1b74502be9ae076670078b659706d610e82a2700c0c311b5b5c45b9526585dda8204436ace89159c123917a3c40e200302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100843405077c3b08ad08a882641b327be3bae6bf708cef2a3d38e70c481f0fa08e01e49020dbd0a3574fc677c33aa3342502304b13d6c5ca8dedf94e05be3eb4daff5fd8f2ac6d93f0b8c453331d84eeaae5c99c95a88eb0896b2a4a4ea00b0f5872140302047c435bb50067306502304ce39b187997e2b372cb5fb300cd437e4254a9388158e262066a09d317d46c3a731658ded3216b2889c5099bfbb4a548023100b38f825af3ea568b24ec1d332e5263ce09b61e2e70e932d8d077b27fc943bf5f0c574752f2cf1b1160fd7d9db881e5670302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a22d83631e9cd85973af4f0fb051feee5b3f5d61cce5e3d86278f8da5c8a6c0e9d41476a448423c5a3ce79b46ffcf9b6023100fe3c99f6311a67f1426885dafa849d3dcabc0fe3416d27b937dafdb13f29101d8b4e947c4f66342ebd188971642726ea0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230660b6acea3c583e34b7ca0c59a84de1d13f4814f7ee3d1ca82486644611268d3a7bf4bdf062bb279936b672bf144224f023066d3ae171eb8b3982cb5d649824f048bcf3f00b68ca4f0f4a59a9b4d327411e4918b6384cd28c214455386ff213d07570302047c435bb500673065023100f0006d10dcc094529ac14cc6704a544020749c6680dad1037aeec00ed03f7924cdabc09c2595f67369525e06e9ef6ced02300ff184df01cd8398802316c58c2b8c9eab6b4904ac2b500d273557ce15e4ee7ac39bbd702a6d388f36bd4a63daf9409d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ff36035ba613f3b44fcb7ac1ca87570ffd97e598fb4e2002e762a17d2d565e59acb6463ddb70de67220063417fed4c290230797f1074b0d85a16274d039088800dab2ea1ece00e696b7e84059a4a2dfec18ec1bc2a689b793608928349b030c7cfd40302047c435bb500683066023100dd74551944bffb45af07d2ead8e218e104119c2aae873719d065639c473f4f27c24512cc7eb6b28ebb76acc98429c22e023100c9f9590c412c49765aa7900d756f5d959099f3d2635f33dadebf4e9aa3b5e50c26bfac4155f909ad53f20c55cb5563c80302047c435bb500673065023100f16dba370a229a5c68620adb7983f32d52681c3989804d7770b9037a60d49230d9b19dad4556aa0c5245778f91f8140802300f9e6c9296915e8da8576815a1e12afc08719e617e5f8d5c8ecac8b9ff06f8227b574ac9923d39563ab547f966c6452e0302047c435bb500673065023100852e391ad0a84b1c600f6343f2b6b841f73f603120d15a65846f7de2b36f0511e93a7adca052783e79a8ed389c0d1a8802301a2fc64b62f799bf155be400b2a9a1f35bbb943e4cc72d1af7f36497288d7402eb16b4c9d9181a0248153dbee58f98ea0302047c435bb500663064023019e588f95ccb082c567163d23b3770b79d96646c0c0883b0ad54ddec03b9817cb3133ad465a990fa615589e58a2713b50230730c64a9bfa92471346d04d8852660c6ccf44b3df5d35cf0b2efb1ca442149d7721760d019ac00167e54f253b989ef430302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023035f6d046554002387903f63deade86ffacc1217a96cff5559cfa2f9922f177551336062382fd25b8be1ac737ec5e62ba023034be2446ee7feb2648865084fd2bdf16d4a8191e98f9c3fb5cbc639ac31820423bb3377e8c7bf247717e2782b690be090302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300b88b35c74eae61300293a0415932bac946ff308278490360bcb589e8a7a3a939ee688a4adb17bb1b5242af430b768930231008d983fa25d4659caf92a28c596820d2da0b5b3e131072a6933aa87d35730858ca4da3d10adf1b75e0180e3b01deaf61e0302047c435bb500683066023100ed5fcfa3fece0609045afb55e23dbdd88631a4e1451ce2483eb63a8a3ff2a3f4bd465ef589f098c0f53ce7a7f0137095023100ae587683515b25158e9aeb97bdf29fbc9b6151db792d8ea99896c6b7317db492d74372ea05ec6f31662d85873d6b016c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b6d21d25c386a01ecb4f8a8879d06c19fe1308b611178cd270165d5dce1ea19a7058ced6eff5a88f92860a5e3b76de0c023014b19d88015e8f7f813332842e5650bac518ad6976dae41085cc0ab8514db84a728612b504c5e85be7c71ff4841dfd6f0302047c435bb500683066023100f3a94a366f9b29934d4e57b0bc762bff011d6007eea218f55f06cb16b12e8f3abdeaa627c00bc47b92d8007fb7f69749023100b3d11603d1feaa6bb52f6ad2e045a72703b27b6a4f19831c4c2011746e346be0cf708b7b2fbfa5074d5f58e52c5a34770302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cfec5a99a6bff4b9a3159b2ce08848fbd67b04cc5c1b9f21aa4580f6d8e1de06a8424c7f0ea9506d49a2abce9e5bce8a02307d74b61d7b7133a9321afd7a7dd8e65d72358bd10cd07542d0fdd04a0e77b0a2f041fe306b6b05d7377d3750397d2bff0302047c435bb500683066023100e26b4053b3f0a2b77b4aefd1688896418d33921d828d13984a92d1bd0f468c68ad76bf324f6a0ae78d0ebfa3f24c5a8d0231009f8632b4c17b2f27f56ef68bebfa83574f2653e300949710e3b4c9a07648ddf7414908472ccb5bf2dcb7c13c6a9850d20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307c5a65478baa1fae388e253a2b71fe22fad58ac1795546356e8befd2153d208303a70dc41cafc9742c6b076ef1d11c40023100d230414a5e003f10bd6ebfd89e202a4d6d18a3543fad9acd89622dd45803150c5079b64f0ca93ad50966528d71d5f5d60302047c435bb500683066023100a59836fe7c04b29266d20adcdff93a1a70e999138176e397923b00dbbcddacd362cf0e4d7d420c065bbd7b0c3b78aa43023100d4d3b5704327304e3ff32459c558554b8b901d40b5ed1d43e523f5edfb9078f9943362dbb1a8c8d7af9986e5933f8acc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d67cffb1fa0522822dd1e0d566c0637d0781fdfbbefb453096d7a2179274d6696658cce0e5c08e342759bc671e0df6040230071c40a30f2781f3762510747ef70325149dcb8290ca30bad630251cb7b4af6aeae837f9d74aebe37a43519da2564afe0302047c435bb50067306502301fd767617d9c453291a2b9b75fa9fd41d7340a1cc91c7a77a9ba90197cbe7605039cb91b75b2286f4c2656475d852542023100b9011f7c6ba92d54649efdce0525ae8c83f2ee664421a18ebb55d9b0a04449b5a1e0dac789c1ac3aafa3dbdba37ae00d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e8023c92532e350d11d4b3c0c737b843d074a9af42b18402c6181745a94f3cf7d51854facb93b2f3b852ba85de407c0d023046295505236b074d67b3262a646099348ed1e4ddf658d95b9c8ca58f7fb733e61a0fd6708817035f1d00badb72e06db50302047c435bb5006730650230711551b7828d5fdfef2ffd08527ab6862f91c43c2c3252872a43e4d96ccc26a50aae7658bc7d03211c063058f9319e10023100e0b295f1de1f01360dbd4574236668a9b3b9ea5e404652d266ad640b6e70713b12d7226c5efeb51f9c837aba39eaa3410302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b1dd72dc4a2a8e6446cd466f96ff204a8bc5319c5182804318d381d4a18c9c580889f3f5288420ed63bfb26f5b6289e50231009891295c371bddf87c5c2471ad67a29383b0893901642d9a5be536698f9628807853a22c4d8ec248821ea05e02f43c010302047c435bb500663064023025d86c9d7d40070979ea9091c74834dfa14216f081e71e41fb1587f5fa6d2d151104a676dd38a43d89ba8b93fde6ed5302300b295e1fc246fedd63ec939dccf1acdf617dc8efea3bc412fba553139b9235fa62afaeb0c11f400970fb9b41925a6aa60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100cea498891acad07896ce454cbfef42c8d349eaa116d0776437df87a3ea6a31493e0dca54de9ba0ae2b884eeed452b133023100850383cae4a60c1e58a19c89a8512b296bc170eca61255a5260af1b52d0eb7374c1659163bf98cd7c7027b0418f642b20302047c435bb5006730650230627999743c1a644d30bef73b0ebf1757bd99d29a2d8d48b9b7645d9db354cc168b10a9e9cb2185a4643044c2d19c0307023100de40d44b7d90f76f7fb90b1fcb94510e518b622458dd94a386b1fc559a286f07eb1c583276809c05976dd5835e8803320302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009970e96ef063ef7f99e250e2f5d157b2ccb249e782491f3cc12285f16b5b71f220d6bd10f59be9e44742d17513f229d0023100b68bb95ce94d08ca4e22607b6840291a3cdc797f9bb9b0e43b084290984ff2c12dcbe5dfffb2d5fe4610d62572cea7260302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230099ba45440c05f096a53de0e494c62fda5d264298582c2418bd7502bc8715ed7ab4de63500e4097b89517043125fdda102300e01463a02d0749bd875d04a35533b38ee7b0f653690a0320fe4c0bcbedaa72ac0850752ff10e2c25531bcc66d9e19910302047c435bb50066306402300eb99d43d06d192b22bffd847fcc7188f3736c479bd334a6c0c76f61654ac8ea020c82d43466114bb100e658b314b6cc02302d6c7afecf5ce8f3cfdede5859ac3fafa1043f965674f56dc7d3505e1a1fa557204c65d1ab15486f8e80fdbda3c041300302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cb8511ff6e2275c239f2febe5cd189eb0001f8bc9c913ea9256b31ff3b7f6e1c38272e688d269183a8d2aed2656f2856023044f4d9355bd25af51842897be26491087ec30ac6fe4b046543065c106840f554e5bd1b0dc42917e29b0ca10ae3aa9eb60302047c435bb500683066023100e26fc6a85b5eef4b880cf9d28b7d13114a67caf4056d24c7a82efb3c8de7eb5836a96deecf119d5ba21da5303ca12c2c023100ea42345a63cd22282c33e4a0660f185f630cfedba5a4e842a682bec130c9a6eb9a6f1842d71d3e43a5902bb0c91f072c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100956311713b498282dc37d44af882218cc16367ba28d634518acd8b32b947b3126ce8690c89b74f263a0d59a64d581d5402300aa253cfa3144fa776bb37ebd3ecd1147a3ac440c972be70a7aaed343ec94830c645553bd4bb81e8d42120527755d21d0302047c435bb500683066023100fb3bce6322acd8909bfe6c335c3f1f8cf4d44119620d74e2ce03226557012f6aca238754daebdba6089ead22dfd9b78b023100a08732676e83777d2b25258f5dddc8d75500d3852a7ad5fbc10b9a15885ec0eb5268b0fa772026f00cc68bd1add11eec0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f4087e070053eb6869dc8189561d86fabc28ba88c57e777132234d0893d72af26c74b96a68fb8e7cbe5ceff1e6d16c2b02307f81a9857dda833e80018cac08f2aa482515c492a98df12c742b8353bc3b9c277d107d31336f141d88d42b12861e0c370302047c435bb500673065023000c22e9cce308a5cd40bf3b080eb14d41842029311c46c7e88aa3a6e6407bf1755b89da6eee3edcc9128dacac835c8d8023100f9fb85f2b73a249029721bb47c08e384e726c1399f15a125d8a2d1573fe49e6267a699031f7222affef17e530b01e2bb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a052f03bbbf377e18ec1c68be859289bbebbee6aba54e7f661daa988c5842fbec144ed4127a79abb14540c3f531a79f9023100d7b4e3432c970ed199ba6973ab9e82caf754cef466930a1792b4e93262ee6f5208017b7f6139e7dd3e82fee903a5b11d0302047c435bb500683066023100b9189d17d983f861fff81cb666bb9b139ca7ee6552d8203cd9d0f3bcd39609315b1b7146f3f5c5bf4f58802dd5760760023100ce52400d8275a2514c45c602cc9153c94393dafb78a5d40403f9760d44e21caebe11b53793d3131ff2f93fa2b4d7808d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310084ddbf2b93a55a8ac8916e1443d3592f809e63b3330021ea7c01859a146fc2899241561b70ccd114e757f0d0aa3937fe02301f367a8803b6ff787c58319c4a3f7b36c677c4518cc8cb3805094a79bf208c77717f2defa8766e9309ef2bee52bb302c0302047c435bb50068306602310088c2de8cc06609d1066a428c3b53765551ae36195ee32c5b3e4d1750470fc997d985fe85aedb6d0ae65dc15b9fc65765023100e44dc2ec80ddce29f09ffcb908d909fd7b83afc02614ae66bcdfa9b40cc9773798c13138fb2542aec844950925fd114b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307800210d4955bfd9a16d0a2a8521302b4ed24e76e21b1936ebccf135c54440874fbed30a1bf5ed05fbba368d1e3e5dd20230436a065d7a1279fc35c2a96a38ae907da9de51e8029aa8b97b48f5c23519f9177c92605fb4a88a8fb400d4da557828400302047c435bb500663064023061fb1e56b2975d025e53a37dbba562f77cf6f1df7e38558db4061f512e6349a00f7864953521948df8512caff58a5d4502304d133d803e123bdd3431e8c85d1a40a3138cecb795abab7d57feaca068dd512ae656c33eba3d1609d5a84b2bb6cbc27e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023027fbc94a11b50f6ad5e8f7463fb85c9fc1e218c89e10bf352a5e5309b2bd484b78a9f3fe62ec93ccb36895d21336a22d0231008ea2f49c144dfa3bbf1fe8f47cb0d92f07c36952dab18edaef514e9eacc463fa6c5aa13371db94fe39201a335cdf2a9b0302047c435bb50066306402304d85a747527f65f881d75c571c1685a4874a5f80c5cb091b1f48b7c579544642dcfbf3d5a4ac8dbaef50dc4cbc21ef5102307a86ee260ce2a4bb754723f90f2891cdadce143998d106fa84e46142e37b4823e3584d91d94b62a8c514f5d53d68befb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009fb1e60fafcd5fe6ac87eb568ad489d5fb87309d833100de258b5794a76c2e7927e2c0fa966bd9aa9d292fe71efb75bc023100d1901df0122a1d36556c39b9ebf3c445ebef296167351011618b06e24d7c6f2ffb234d720f32189c9d54a73e2788c57c0302047c435bb50067306502304200e50df3f4b6c3505b62532d47b9d8aef2b47385420ad6ca3c8b637ade36df0047c3daa7905549e629be20882bf481023100d13680a4730d707ef73b448853bc00967877f20570ccebe1618abaa0a0a5b3155f7118145befff3b9660b37a7106e4730302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302a1fd537789023bbc377272dc2844a7163d727f851917f92e6149b8daaf500ab42a719f4d05dbc8cfa70bfb2b7aec5c9023100cb21a7379ffa43308c8727ef40f236d931633fe75d529bd47a7776de34051b7728153d0901b45734713d052d917dbd770302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100995bfdfc0bcc65b8218c9c017b58458fec9254d1cc8a161cf803a9e229814bbe14b1efd47f893c74a9a0fa63783f1b8d023100cb0cc1009c9ac419fe678ad9ca75fb331eec969d665f02a610e1be818f6021059b618357bab4febfcd999e6e040464170302047c435bb50067306502300762f225ecdca23ac35ec300fbcab1218785642bd9c7635c4fd8fbc88630e16f1b788473cc333e5fe5fcdb06602ea35e023100ffe46565a872357cd5caf20418e406615983a0de7ae2616992a6eeed754f8a3cd042d54348bcc9c4b46e298fa582a8580302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008353d212765f5d9a280e24df0f71712c7bb41af4bb3bf74356d66192bfc5c96cdc0242690b59b0bc891ef89c79423b25023100915f0524cf4d37288a0907e1b5f4e955b80ac10ab33be35c7871d62b6ac11431a5ba170fcd54ce49c70ebbf1bca778ef0302047c435bb50066306402303b3459a8e4ffc08cbe05da4dcb2e5c021740c38f19ccd377dabeb14263a716e15625b3ae4ab155cf46f875e254df605902300caaaaab60caa5739a18dfaf44da4e79aafb6bc963688a8472ab3a5f9b3e862d8e24e83f8df45ef6de5752e59b4317500302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307d975ca3047d001e3701868bd2fe244928deb22eaa6ef8fec367eef07d4e702aaa48e1b367dcae1e6d228a6df561017c023100cdee86fb713fc9ac5011695e1ec5d618c3b7896cdb87351cf10d62a18a8dc381a21ca873c63f34a7c7d25f24f6dd27e70302047c435bb5006630640230350382671d075d4e662c70159dabd24965fb0ccb841166c54926f8e2c806fc0fc236ffd2633fe12a409d0d10133c7b060230427e62d3909d5890dda8a59b11a6e6572854b0ab0b5a5a9727fc98d9eb1b8458086972d675c1f80f020fbdeb73b3250f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023067870b47fe6191b14539b60264f80f72ede2586298b40479fb5c653d492befe7cd44db8811ebcdf30be2f69d81e6339f023100fc7d09a12efc5693e847bc5cc683f980e1ab792d2878a27b597294c4afbdc275a56dce580d2acf375083b71eb66d97aa0302047c435bb500673065023100f79a4d928702eebc240bdf7ea472922703108d95914ff9633c8afe99f095103fe9df67aa61d16f42058c666db362dba702304c92ce7300f4c1f7ac3aba0862e78d967e099b740d2ff1f904aae7e002068a55431af38d53ed4be20df1b63e1d97de000302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023013469c96fe5f86125317f2e08cff2dcada2db5ac2f18a82850a596e50aa7a88ee97502402c11071da0c57bf4f8271448023100f46c6fd2279e26aaf09958eaad2f0c6e4272d1aa2445acd7d2f3a9cd92753757aefd6b65416ff2b617ce757d61e815310302047c435bb50066306402303c3fc68e117a2c572977e3426a77f2153a06118f7a44e87d615f816f0dada02b5a60013f6ce4863ee54efdfeba0f060a023027fbdc577cf9828ecbfc07b8c3831ce735a6135481245b97a34e743f5393e18ab58a7e1a198d99961cf8515fb3675d4c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ee1d1136c6eac58e07f208cb4ec6d4a2856ee0176e0d69521620fa83bb7021c93a17c1f4a107b8107a9505b0cea727b9023100e48a84587ba4bcde12064c3ef5bbcc52a45dc0c415084c610fbc89f3ca1d1d83065dcd31f14d3665fdfc5d69da6c49fc0302047c435bb500683066023100a2accd0d808bdd83cfe54fe1d335815fd0eeee32c8ae19180f0470272359a89f6c84a7fa1e28f30adfcc167709b66a0b023100b7d1803526b11ab244b12a70d82149f42bd3752d94f18f1b2d771be868252301ac34aa690b3de54c3bfa920123d1925b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302e94bbf4a3cc813be89c3ea9913ab3993002fc8e719457502537aaeedeaa409abaf07b9b6c56648733990de0ca588eab0231008ff6309fda4e469050c46835095bc45226c6c72342f12f78c1d0989079f22b2a63cea71555ff886793d6b27e59c8e78c0302047c435bb5006830660231008a6f987414ecc6e1210e68411b64ab8f1565ea4cd4bfe9c85f3781666481ef757b31b3ba8415e0df92900b802174c1b2023100ac4a9d30a832a014f1a6d0753f29a23ae17af5acf273e4466d93971d93b6ace525a70b972dc26bb912de4be17b6f65d00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023058b4067ee42aff030939daa2c84f64d675600d5397c4fd07810fd9bcc19185a0050bdf9b94457962e7d5a3a48eddd945023028740dc75c0987cb6ee31834388fad6ebcefc4796b4bb519dfa8ed6b26145982aa96406d4194669440c12390bcf2db5d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023008bec721cc09137ad8f73f6336a3a48ea7a1563bac181f2f11e43b9f489d733a9bdb452386b45f7ebfcf40565a6de23e023100f89cdee302d52a8771741240d8ede210a62728ec00f16d086ef3b66a1df3780ab73a029c4ba7e9b4fdb088a6e25b53e50302047c435bb500683066023100cf422b740da3543d9c4b28db6f8c94a10d23cd8f1d0352b7f483ff8aed8d560709d91f12bf002c379204954d3d79d029023100a166bf542405f73c2d79054aea4c6c1fa522264b7ed918f60e18b8fd176db8a2649c3e4ec0394df31481a22ec7aa66830302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307eb3791e260c6a1568b57a5c47aa6c05b9be070eb05987a69a93be78da1114e75e650bc9dc9dc5238c186965c88eeb80023100da2853359057c0a4e75fb7b7f43b42b9acad7aaa714e75e59e2cb9ea151bf75987ee1d0fad0260c6ae53cde3da83e9aa0302047c435bb500683066023100c10846123929cef68592a39626f1e8823bdecbc4b8f618ea1edf0c0c8aeb65ab0db7f8850da24da2cfc56214d898577c023100b9a01fbeb0f3aba49f413006fca78adae70e8af32a047697b4aa231b7fc7f6750611f957f7266962c04ac902176ff0550302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e0455f86601375bfbfc21a4316340f6d2ab7f1e43e4b66d6e7a4db0b778be7f8ba78f94435bd86d3833661985bd3eadf02300db882b4c2fcbc175489d038843902c67e107b5287fad45239e97c242df93e6bf04e4d27dd055272537f6f901ce1a0110302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d68cc92aa1b05feba046ee258127b1300617ad959dffe052dfe9269869a7ffa4f8fda4a6358971dd6b6c5b3f1f2fe99b023100a1e2f517f27b352d0c90bbf264e802ec3210608d106e60289d2365691d24b15d46b3500eb4b4cd9d28fd051adc83122e0302047c435bb50066306402307324368b76707faef2a5c80c60fa61ecb1e6de2fd3cf927db134f0998380ec2b7e5496d30791d913f5cb1ed6c5eadd050230364934ce68fc91a4c95c90ff9dcac2412910bde9cfba79af8e5f2f7390cb7a7f1daf2e0b41ce3412ae5a4dd5e723f9ce0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303b55d0389756b688350780cd13d63146575f8014ca569fa6cc0d513838e3351ea489e089b5f63f7e68a862ba98bf897a02306c304805c6561b38b125158a0d117d81d9ca635b1358ee3b29e5f108a84823edf36eb4565170d904347948b3abfd8d230302047c435bb500683066023100c52ddbcc9e05cb450180c83867734a207b7c10f1a054e58a582659c90901c639182233a96c0db279ac2b90f85e609bd3023100ab820a8537af7473e223c6c3e3fc5750fc444613e002fcfeea862fc3898970b0a2cf5b54283556acf2af3287cfbd08ba0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b668e2c644b2034b24fd5c4669635244ff8475d989a35f39c825aacb95253965441424cebf510ca5650d377aeaebabba023100e9d787ab5a6db251a091f44d827c3486d9535097e28dcdf15481c6cbb67102ab3d99dd892d94e25f759e7d763c1c8d2d0302047c435bb5006730650230300665920f64562c8f710a2219e5d112fc354a8debb6a4e8e0d8d7fd0cb8c2529bb8e0ece41c75c8a7d05eeb35257a7202310098385bb96c1817fa65ce0a8dfa1a703bc9ef2278fc9df4503555d92d4ffa1d34290f921b581c969f0eb0329d8e4647240302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023000fbcf906d2ef3e9b49e6d4d0da2f414fee132b128b01d484b987b50c2edc332fd04702100e73f43d07b15376e972d5a023100df4db8903b1049229fd1fad26e5020eea24a4ba15e93c4842f3c3beb9ca580312bfc36f98239742bf35fbb905a94231f0302047c435bb50067306502300a22301d61a266251cae69b2d9c11f6318ec01448811cb83a4e071f8e77fb02fe1fb6cc61568e831d85a3c904b2cad2a023100dbd4c1bbac4cc05e938066b2e41b581591c2a3f35fb1b9f85b4d4fb9d04908d872bccc16773934063a2deeba469800660302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008b4fe6d8b2b29ca413a619858b3a6c6e67a350ef8c5852fdbacea2401a1539d43cf664712ea1ed9b5b4f5309dfceb6d6023100b722ee7476ca7375086d81cd1c5ba7f9ef84e8cc8baafb52333a98517193a41ce2bc9fb14bd4179389928a5952150a540302047c435bb50066306402301d730754019549cecea36dae8a15026a90be6d6076e326f0798f2fa8588092165bfa7a9dd970bade95adddb11258cc960230346cb85937936a575ae68fbe358995c2a7c574e726e1e53e219f5ad3bdbdddab8da10e42a25bb1ca23982f7eae43882b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cac6c4c5cf11cb9f06b1c47c2ab500b20ee7350d5e00277344f39314de6602b57d74cb2b684ac2c0c1b605a7508a03640230771f06e31f3829b786606f9f5f6dee78bfa2807b34ae7ca824f58a32095e8d56676f5056e6670e987c05bc354e9f6cec0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230123f3a7ed32695d203fc9a02bbaa1840f162cff5b73dd50053e7e30996af7759cf0b6cf5ceeb5a0250d4a3aa111ee1a802305ebef3af03fbb39d5ad9ed2307cd46614e63b57ef868a23db6df327e9c4246b6098c3bb7e4447b9c65c1a7cb6a051caf0302047c435bb500673065023100fea54093fa4027240684384d10a5015392df323231a2519788094267b20b8254c5743fb0c12f48b3568a3a23b9e48d1e02305a48710caf23d88fb770f80f8a9aa9163ff290545e4dc85ee12741b0fb00f4b0ab78599d378228b13ba46d55b26ac8230302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c43887291afa2cf123b8ce887a101be1fc474440affd6f54d527f40a1834ca8bca90b8d028e47b72aff5a0136fa4303202301c9fc2835078661a8323e780c169f10f8091d8685e8c4b5b624510b60ad9367ec9641b97234c55a41147e7d01e80cae10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230475c8a209bb5daf849b1d35645cb463b17945815c6d4427a03fcfb7a894226aecb90816d58972059128f653bfc628901023100ae0e1a7487ed251e5a85c699d4089c03c87bf77e3b3cdb2c40e04412efa97cec013e9e4d47e324ddd30cde1a6c116f980302047c435bb500673065023100b66d60182890599d799e38353c0d6312396741ff65f4f84b5d69982beaebf362b1177a94a7687bc3bb7017810a8201fa023024ccd44e4e86034fdd8d348cd8d6c2c4cf4bc787fad3c46ffcdb0e359dfa887b481da4978d6a6db5aa88b7fb96efb3420302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306f902c097117cdb0228b27b29a7610ad9411b6d09776ab0b91170ff088bcacaa6cfac8cbe459db1d0f3ac3b7a835f11902307d07df2c1df79a749fe80799ad406dcf9a864bcde6611ace9070349b0494d86c768186477f071c80060d3e5d39cb871f0302047c435bb500673065023100ee3d2435ee62ab4e2421e5316601a89ae89c54e91548963486b7b94aab64b75c9cb37f1bcd1bcfef131d3eff8b65fee5023052551854a6caa01cb9bcc0b1ff4f9a0cbefe9542e18e636773996f84ff8346f03f6d911596d19046c8a2cd4fbc1eb9300302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023009d55ea0cdebf9f66bd246f31b8629000be47ef15d48db2effe3dda730a42b0a7e58a2f21658202e0914faf3ed831515023100d8c3028840cf1170963337f8c9cd566b88af35c7abc747482730501db5eb9e7702486a41eca8864cdae95c7d30eee0f20302047c435bb500673065023100da37d30e766ecc1f79784be423291496b999f18b626b6a851e5136bd286d6488b4a93206c46de2a4c2eaf2f4058a9fc002305d64037aa99970da321e12b463782d6a297bdf5014ad485abdb970d7ea6c3178835b0d5714b6444d53284df8ef3fa76f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ea09aa786bba4d7e267887570029f0c529a5a18c5dce68b641dfc35c02c8df47a4f5374027c288c3512dac48733726aa023100b3329058b9f86660d02a42826d2807fca8808cf788e01245782354da1493ac091e14a583d90b390853c17a5305e994c60302047c435bb500683066023100c0b0d158ab2fa8c20c176cf417f1e87e0e45bce40f012a6e26f06fc35037cca0a0efc564d4dfff78b46669a684fcae8d02310089b06370ae42f7a5122b39519d77829e9160a9fc6b46b1f60c85319dbad7f812cef9f15c83636c5eb59179d1fa77cd470302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304a6a6e7b96fc288478570209f2a650416d0e6f4eb38bd98c82e651fa1a2873e434cad3dbbd7aa5cffa80684ad9e2263c02304e3e30d775f0f6b3e99a9ef35d3b86a262020e2bad175a4570557ab455f6fef7337975d4f4ca6e93ca6253c85a53fbc90302047c435bb500683066023100b62cfdfab1b185a3ac79ff42ca361bcabb53b8d48eed06458bed477ba95ae9d478fd99d4509309951ef0597141615923023100c884e40d0a82f5702c91212bf04f178781555f7f0caab552437d071ddd4b26d17969d7545a62b90c00687faaac6052280302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301dfcfa4682b843936a03caa301b25373d8eed75e06ce6755019df42388936eba59e43958c9e387983a3ae75828c59a8c02300a7f1dcdfdbc710f9627f95eea553e7f2f7eaa437fcbc3708d6a14a161204f7a137bb5e5508fa671c6a1e31f5ff64b250302047c435bb500673065023072870eb0e7905107a5106b4afb9af667e0cf4a782930e1c64d08d4f484fc38a8878c1f650149baf22001c25261734cc7023100e3544279c870f09042ef6aaefe845922b51a5a39b2e39de4b1ca2130588e93d18c61a704c373ab2f3ec0710044eef3ec0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100881c7976411b02609d2d4632058fb988932ceba3b9014fc0caf9c972717a5c3129024a8d84b12a641a63996deaebaae0023100f16e7c04079b995a7ea527567aecfc01731946c27419843b2022d2897fc8b88dbcb9fb7a62d708cf83f61b604f9f29080302047c435bb500673065023100fde55ca6efc5d3e0dec82667089c0065701e3b870522bb33de39ad6342332ad462eef7227dfe6210050d76496d3bd34b02307ecb7e4d7c0f8c834a72c42ec31405520748a048760297818537588aebce591e7d552473d1d3c541363cee1ad91a34940302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b8609f78c7086c27963799c95867fe819805820bc84c22109cdb1a47260d0307ccda0f9556467589142621f22d79b59f0230705fe4dacb648370ba3b349c6c7cf6cd6c22c7edd9f9744bee455781c308740441cc43777b0b05a1c20b064b3989e9f30302047c435bb500683066023100bdaf83b0249581fdf730eefda7763bafe2b178825cd94e12e392a796636f713eeccb59bd36b8e15debb6c4ee38ecd10d023100cfc4290d331b6ffae609f661d52d311610847dd5718ec29ea7100411cf0c3ed7245ccb34f690eb8e6cf7a45913fe191a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023059b9cada8865d5b2b6cf1db357624bdeb3f6f291b6cf3982e3b83824ec833dd1c799e80809a833ddf10f0e214920b089023100c79113b9a51f3de6c19248d036d688ee2e22aef25b4a9319e033c8f790d28b88005e8288a5888e9044388b6767c903b00302047c435bb500673065023100fdf41102eb4f7fa25929ab94223ca05a682274366893dcf0a25a114c9cf37a2c0fe2623ee4a732f63ece3cd9d4e8335e02300bd02b8011c800c2093808f82768d9e77d9825af3c07f67dacb481c77521fa868c9d3ba465b81ed1f4d912da259655fe0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303aa17a4c39a88055fbcd954db4fbb7e4b1b74e960426bb9730d7508e6f8ff98b41dcd814739799791eb46435f289e7a90230048da0e5f0ce19e2044d17935c3185cf661c9f1ce38b56c954ed9c3299225d7a5de8473a9b054ed3cbbec4a6117b2c300302047c435bb500663064023013fb6b5984d36b537e262b87cdbf6e6fc9a03fce3350dafd54ef30abc7e89693cdb791532f8ef0156205188d0fc2f9c402300c5303f1f13e63f3e644a6dea6ef9742d73f23ab8eac406d7285a2c7a5f885f931542c7ac1c95371532b7abaeaa723330302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009cd4b8dd58f250de1d6cdf7e40108af300ca8b2873c67067a088810ed8ed4c0e1e4aab28b2e8597f62fb631d48cfa130023005234bef240993cf87a4996c5620cbdb6cc2096cec3e37fd8017ec542e79f524e2bb7a3cc58f9f78e7e295e73d8393cd0302047c435bb500673065023100e59491734152aba605a04af4fb9519416dc799186b120224138274032c991f55181a62c342747e493b04a5f91a19d2ef02303fab71775aea9a8e718435ff3c8c8633e0eb76baef3112913b4ece9a1e6797f5cb9958e5352cc794b74e1dbd27b444000302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023047a4e19c53adf997e37d00f54b282aea30daea78f158a242e265d2e0f33f02a04bd425c0e30aa1fd1e8c8c772f8b5c54023100838f8ae175c0b5c716cec27ee107b2072f26d326fad6417aa88a985ae1f3668709e8598fc0e48afd64ba9b9311fad3240302047c435bb500673065023014c333a9d133a84b8d65d08393e1c5f3748a148b8a483395bb30b2306ee3c786a71811cd91dfd4528bc41ceb494c0113023100c9431457cea2f7aa3505b29458464ddb81b6b42df04c2aadacc1811c965bf27b1ef8f6796e61f18ad07880f99be2bea50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023100d3dc310264b39d087a5dda43510dc75f225a142f1d69ab1edef56aa865bb1778a3f491aa6da5af0e4f043d38d789d2bd022f76638ee6e7ae3ce1f5d7b55a61ec5b63bb991c29d24df24259add6841c2a68b385fba0e8fd472ab3a9cae9dda1b3710302047c435bb5006730650231008f783cb5841cc54a537d765b774cddbfd7ebd66ad84dea1e9a287e956093bf20dd81ab6602b51fbc83817706f825c73202306321452b9afc7f6dfcf11977b61f9051c276ec2a26109cba590ebdcc8121bf4abb56614c0f931872845beeb6b05c9ec10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023045ebb3d38ff7bc1d205c16ab14de371e46554debe72cea61b697708a911c0c2c3ef2c4e869af6d6701bb073e2bde6814023053495216abbf196f8c049fd088e50fb9cba05b46de6d7ca5dfa60c5c298ef3cf4fcc9944350cb2729456a68a1f3afdda0302047c435bb50067306502304d1db750700da525bdfeaed53e3c2b4c6a6b3ab254647f0f6d5101f8b585d2377b75dcbedf4c1b5e124e040088966fa0023100c7c6891e030ca4e3f3674738194a41c3539f35801ddf0b69979b84437702e7bd9035393f7949f2724b7b08c31da272730302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230358d2115733ad5db4b1f8bb08dc9e5407c28dd5f955489403b64e60b0950f6a7f15c290cb22aaf5c55899cffddeb1b5102302dadfe469f66851f3ba4a687de572e4fcf06268c7eb4792993ecde472ec2083015954f08a251275a268a6e3e55da36970302047c435bb5006830660231008ccb92780cc7125c4aa27f1c739066995926f6dfe2f2abe406eb951bf14d17601da415a7d17889327407a9a92d39ffa70231008222def9bdf66ee72fe79d5ab7f2c4ad64f5e32ba64f4ecce83b951238d60759a8b0b2f406edb185e2a3f45b907f75450302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230244c28d34ca3a44b2bde70e7140e507c6041444d1b9b213734b3176b6d335d493b05ee114fe40e179aaeae8eea1931a2023100c991768d2a692c9892bd4edd35a97bbb5936927e97f91a5cb62ff7558017c674d844f830ece7803beabd34fd127182410302047c435bb50067306502304aaa3be6acbf6bae780f7251b3ff187337ca08c4029e8223ed8214627b71de11476e1ae93f55057a8b24fe5bb753d6f10231009349e7ca3926277632d2eeadc75bc0657844f5ffb97cee56a8dd1ab5ca25e8343436d79945a4e84b422902f5786cd1ad0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307b52204327a6aeacc8995e334acbb5af6f8107d91a6e53c5eb11a739daf83d552bd2a1f979f96b282b1211d833eec6b2023100a03b181631e7f3a4ddacff8719a3dd322ef69fc16df69dfa0b6beedf84dae46bc4287e28d5902e4ea1324e23e2065bcd0302047c435bb50068306602310082841ac7fbd2d9c9db919fc49d5e36284a59e6fffc86f2ce69f50f31929cdd44067711feb4579f8bdb6f55a5553ad1af023100fb0c12dd5e4cbf0886f7d4eb906b08722af0d375f9e69b02aabf1dbb5366167c39fea05e1c78b1a59a0b99a6ee2bab350302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023020610bb2e68c58d536c17189a45f80d4bbde22c80761b2253dffce4d2db57036666e5cc545d857ae5671c6ca2379c35702302faaf95a015134614eb90b21e9ba869f2312b71176db0f076bd77fb0243bdf57d94b34476562aa6948e88e1476250a620302047c435bb50066306402300d8f1a35259671d189a7f7d3e2a0745c9bcdf9782c0381f5f752be503c8ac939844077885972c27e4b71fb33a564c383023058980320908d52b9db6cbe87f619786c2f080bef4a71d7cdce2d268793ff8c5a665c94643e88dd4fce3eeb2afedd5ad80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d77258c4701f9afceeecae2d0b16454988ec4f98b059ca2c796d27e069793db009c2b65c7f027bf1dca2c3e4ea7f945c023021ec6a857c09b9f4af8be4d01bfe343a042a14dfe26e7973e0d74f88a0e99add0ff1bb5483d317a4c0cefb56b39110400302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307023c9782209af3ebcd9fb8d01c84b57ccc4350001e49344adc1f5593cc8868f7eabceafa4db1c71b8904900bb4b947402300a485855eab0b067b64c4ec78931ebc919ad3d246b6e06256fa9744e60426b284a735ced840e9d123ebb78d25c1fef500302047c435bb500683066023100881163b2c574471909521070288c99764da0389cb971465f63ef6910d8929fcdb6aba1303da422d8b7312f6f6a70f7ed023100cbd8e25a4bbbc40310c0664cec3bea602ca0869ac286954de2a35195e0ff8402577ca4031c9a148d1472de9c8a312e490302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023035043840ac604ef7d7c2e860d3213f33fa63c4fc1bbf8ebf79909af7a07f05f3355355066224f62faf195ac4fc71c87702300decc7fb0cfa67fc7786f20759f00c9f6418c9bf17354b27c99c162ddaf640f72ff189330639cc68d7a3cc61ba2dae5d0302047c435bb500683066023100b273dab8f39794bca55edf2b4c05b9fd724957c8b876480d1807a119403125d7ede7651e76edc52543401f8e19ada2790231008ccd57d7d42c463b9dbb17eca3a7b5c88ee6070267b9ab97086742f4dde23dd79b5f1d8a7dded296bfcbd60b9e54d2240302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b002955df7a3e06b1f87246fd640c6055b641ae2e839382a0bda3d2cd30b53069dca8648a9ec1fb531b5ba7f178192ae0230113f30e965bda941bc85cf88655de17fe63a44f3b5d6362551be00d83976560c4979a325860aabf9405dcd0bb69f4edd0302047c435bb500683066023100918ad1b01ba3783bbb6d162a8ae18fa09da49279977c0476a253b8a4f768e8f7782f1d82ec0b586e64b900cc9cc235400231008e1c78d18b29b2a7e7ec1909587a4abded1c6d9937c803e4b20dd109a2802bbe6014e4be88c4cba40a87e299438d49aa0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fea6155e8063ac3869032c41622da5124b66ccb9d7561ee94e97e7a0e8091b1d414145a89085b3fba3757b46c7f8141502310096b02649bf09fd39288437f42e174097dc29ea91bb09378bf1d0190af3d152804ae516c91acc654a3dd3d5e76e3e58d60302047c435bb500683066023100ee7b62f3f25ca3d2ae3209f294a79e2f89efeea547fdbc54fed45d62a185d339cb0693aaa381745b5cc78111e467d077023100bf24ade5f4f7c11148895aaaba8eb62446d9c27f8ab2d06d13d5b7bea38f4c9f0f57e4eeaf30bb723e63c22bbc932dbc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100db21afe64f55b3a7428af02beb64055ab4a16b2cbe2832281192282fcc59d3ef9f91f9662d9322177e380323888295f502305e79599ad5f17ac35efb3f2aeb8e89a227ed809f6fdf313b746fe9b95c8ef60a5b92255f56ca91cf75c186d62951e1190302047c435bb500673065023049a0e28c78f2184075ec413734bbbcbbfafa96d0acc3055263d19e97f640ca8dafcf8dc0fd03b5dec68d93fb6b83eefd023100e64bf5603959c402da0587030c92daa57113e19d466acfa6c547323006f09ba542190b5450fea54b082923fbf6fcaac90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e567ee6641135e8de2bb90ea5247682ab04f33b49c0c7e2affbfe3eab70c1aa179e41fb87dc7f58d9a2f2226bd62c8f302304b6921be7db8906f52eb00b419c5c19333e49b7da1b64006b80f2b028561399014b25d611948bb7ac3b66af5c5ca56820302047c435bb50066306402307ed1daf73e2fa13313eaebb5b698a3e2735249b716bef1f12eec2320668323cc36910b194da104b61dd01a4f17c78dc202303cf4ac142a2703830826397fb62b5d0df3d7e8f9345632d0852ec66e9092d6194be84c5a97aa52e35124ac30811c3f900302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307d148aa5fd2dd98a12fefff737a8a6d37a790be8dcdaa3f74dec2a9937eb1ca50f735c44aff1886665a4bb14f2d525f70231008cb093000523d1d859577eb234ab85bc36854360ec3e121fc4c7f960230a22274acd9948b009d6312e999b055e9f0bb60302047c435bb500673065023100f659ebc9af7086b627ea64f3f86e1fde85d17738d50f46e7b18e077c853f7196a78ac7878de797c827531c0a1b22af510230559084dca5b742d4659ea97c4f0b3f1238969e2bbd03d9a6883f320fae97c55aadb09995398d72cee7ab878d8e81c6070302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300d2549949650b2f3338949f1ac959b3cab50ec4c21b4fe2c8edad030c4ec214767fce3ef4f993f33e0a480813d4dccb202307efa61eec4b2413811541fefb33cf3fe7c12790ede023362dc8418f2306ef51f141adb6ec8d74dad2b8203a56c342f160302047c435bb500663064023068603c8dfe5d1fb07f21530f091a5dfbfc0e8ffbb9e40dddc19bd4c41d708319170de362f38680cccd6cd29b95ae163402304675dc9066dee6da342f2904f6c824e107210c7fa3bc82da58dbb969fd6647272ab7a52b414e58b9a059513d662fbaf10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310093125469ba509d53241d453be4eaaa868be7cf227be2e94159797c8c393d112316a4d811274457fad66135cf53659270023100c070d54d75f524b99f59781e26f71786513faa1754d37ae75578fc3868ae19f0d198418c68d668924ae94b6eb7b70c280302047c435bb5006630640230028d588d1b969424f1a06fd1d79dcf1e42d755cf0391c3c519d5a872d3fa7fab3dfbe370389f7b166fc3aa241ac0fc0d02300a9461699b12caf2c4fdd647e784df60515fd818d36f7f217d0b5d838d06592b541539d5478335c140e97fe94219b3880302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b7802fcda1279d9bdc31a23ca6f1af4c0026e56f54037641513c71f60d8b0990a7c05203ef29ded0635fa22b10cdaacb0230291689954134e5c6cab58fee2230f193fb28c740067a6ee9766dcf7a05d59c39458a51c00e022bb206af0bf4218fac150302047c435bb50066306402301f953e660da32cd32ac48d3a686441a3a78511ad93c049c1bffa8511dd1b12f9a9aff4c1c62d545ddb4ce0c01a2353d80230398df193d4edb7add0711ca833e6c8966540535223c8d24ceca9ef0bc56df878011e7a6aa572986838f7ff8ed26d80660302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023049453fab40f15f2ecb9ea4b13d1fe07fcbaf95cf6144c5e7a6f540dc03bc40f136285558a2a710328dad297c3c49fc5b023024cfa93c5d201103df6f8a69b97153b6257300cba6c5716b3d20ff99be8bb243d4860753d9e43a4bf7aa191845a342ee0302047c435bb500683066023100cf602f4b76cdad6b72d3e7e2631c71d7809c3ad82381c613dd7abcc89aae7c65c78b499d45a0a29df8b13f55649f8029023100feb27d846b6558301e13ce69c24a9017de4a372cfced38382f814ca5180be0e74f6cdf5b42e11ce698f29ec4547178690302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230063855aa9e669eb4696d9a8856a7730344552c964b112a0e8982055c70f9ea37b7c728b6d2767be2e604380f8fba491f02302bbde82061b2bfce7b086975d5d3aaec3f5273f42b9c7e8dadba76b5ecf247db4193bc6644c5d1a1e7f271fb3ebe19420302047c435bb500683066023100e1d399d267b560d63c4d2cde3917a58aae595c5295f5e9b4ee3036ad1c956a61b48ba81f1e090fc60a8276abd72e573b02310089229bee1e587237f3da7a8bb4ec7a76fc2479302bb928cf967e33d11778e45f5610d3dda3b05b48b33c2a31807e408b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cb2139a7cca5766811549b539989988fe94a313730f749586d53ee884b7afe13cdcaa5d9e86620871edfa7e6f5e7115d02301dd353c22fc5cbb9cdc3881380e59568c985ce66b507d45e3a0530b00024a30cc15eeb06d42508fe7711f7be4581bf910302047c435bb50067306502306756e7013078d2619ecb2d6815f8fcbb3b305b8dd5f59b7f9f7bfe9e588540f339e055885fd50fc4e5b438f6f491fffa023100f86e2aafe3aa29d7f0d4359f0bad921cfbb9a8fc16cd10ff003792e9942810fa7c59863cf4bf15d215b6471d47faa8f20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100aa47ab00cdf6b9d110b0e12a0f53897c68b4b3311f1f50a40be43f71197b59067a5d6eafbda2a9c12cc44d70c36909d7023100faace9325f393de88b989c1acbf5f6d475017131a2b77f5be09a92618f01320abb56801d845d4c5cda7f04db6eee0c8b0302047c435bb500673065023069cb544deb3ece934127b1b9bf9464c3b99bb42d8b9923de064307ee5f95df1d04d3cd417a156f739bad57f43d364b4b023100951c5d67a1418ea9c2a28e7c7c6e9c570cdb8a0bf53c8f93ade8d8a321c6b367c46a78224dc89b20833e1662d7f6f7870302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b4ec1aa1c7fa6c4adefc428ddf343937f1a839d3aa4f5c1d0147bd5f0c8c58cd015c0398162c6aea838551001b3c9d00023100c6b430dabe8a63ff603c67a35e2632779cb81e75a37dcf127460a93d0ac57750a20b9d4a2c933ef377694aba4c9214ec0302047c435bb500683066023100b97024c55f050b02ab1a88969226be3531858a606bc52bff4036a6a27afafeed7a0437000c028f4b0dc05d55ff2e0970023100a6c05b316de2b5843d4c994039245d1894f94481cf9b2bd29d4519637a4550792e7c00438027ba9d675fea97aaf865440302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009be7127731b59b8f693662007c45942690e657775e8495b9104e4cd282bca20f1531c673c140471bf046c0004ffdc27102310098fd141dd25c7098e8d92d9306d85546033e61e1b30a219191dabed3e5b9e66f6305f1314d9c8635b0f9573a2b5c04f90302047c435bb50067306502310095acf2a3b463e84088379e1f1491085e3f69ab8076e9d4f953ba768cd66c99795f195a6e5cab9d98bda38b84970cb0ee02304e91855d854ef2378039e6701304cad1f2461d8f493d87464699ca760543813aa0221eff4bc4247c04aa090bd548b43c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023063f85070860d985de5188ea9a0dab8b45bb8ad2e601777dee2ea2d094954598cb436bf88319e994b7b81fc8340efc6ec02310080f3687525275724f278f1ce07cfbf454f71c9614ffbc936a68040db2aa805e6dad6af55306bda9eb08555011f697bdd0302047c435bb50068306602310092a657613cbe4477c5a39697265b3c5ba38cc1adca9b75957e3e2ff6ce5372960d9fbfb12a6056392254e7fa3870375b023100cf51de5fdea37f814e4af6abb5c4696fd7637503e465d8941c597d344d896ea57a15af6c3331f722c1718f4eb85c67b20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023049217b9d0eed3ea5b52e9957ebf53b8f6d9a82430aa80635194dd73045274e4d2c5c9b1098ff74a1840cdae234398f93023100adbec8657e659240012f5000b5f6830975d169dc28bc9c44d691cf59f496385b810004c3d7df5419034368c21504557e0302047c435bb500683066023100bdb2652b3f5241f99882c74c8892d238a5c9e5620e02447d55498f97a0f7d1a307105668cce967b4203db9ecbf9df59d023100d45a07406c0ec6700e64ab86a0c20cc8197c538602a77fd36b13232f398ce2790adbf85dd4de55c583fe1850365bed090302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100990a291209d7fce48f29e9b2d36007ec418697f35223eeb6aeb4919d4c12e34aabb61191af46f84b718af5006827dfbe023100d8595c4b8c419fd13257f2ffe2497001f4207d5d8e3081a9409df9936b73576aba8490ba6363c03ea44ad956fd0eae140302047c435bb500663064023035f0e193cad49f9a00cde03dbb8546dd93d49373b7fee70af5bb53181b1a12b18c35fc2ce6c65acc479052407e3c49ee02300d63ccbc52948e43537dcc7ec860d3291560ecb953b8edce34798aae539d35655bb7d2110caff9a016904e36e091442a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cbf857b894e14d94454a61bf60892cd25355790016311623749319e2ef6d597faf5866514b54552c7de51224ac55d1930230415a88bb252a8afe8253ccf3a4e20bea3c61329d54e4e564c94aac9ed652d255a8666c526ffd1a93e52a60b207cbee6b0302047c435bb5006730650230599361ae7d44a9acff075d64c6b630bac8c62d3e91a2a2af9f5af92a286a04127b5b63fe06c851f83624099ed8f16dde023100c78d23e037d7625a7efb41c83418184130f8aff26088b483216cd06e86591010fea907af96ac8f7d16b3055740093a100302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230665aaba8584643cdc9687e7bba757bfae2dc2304ae5b5bf0b53c4a8a038bd43f51cf0609893ff7c4f913d42c6c6bfeca023100ae31fcf487fac9c9078650b4af97fc1f44b4d0d0a14c3bdf72c849257ea64163fabc47eecce7876c66ffd9c62d68722a0302047c435bb50067306502300e2166e8b65d71461db3c753434bb0daad2f84bd49d6a5183fd091aff60eb8316acfaa640a5570fc1ff8093772f1160a023100f9cd1697b454e4d29ea966a2a6ec9757cd3fe479eb21df7cad6665a6465a098b3869efbce47dc334efe982c0e5c28e970302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d011849d3b95fa33b5a6a1303fcd7f3d8e6cdf0799bf828e1ec9eb030ad8b27a9d14bf18d843617fd4d8d51b7807f36a023100a57d8928dd6050ffa21220f49339c79b7d11ae55fbcab8efb9f220785682568c12af07aebf7ccdce36f02a14b4dd31650302047c435bb500683066023100b05d81c4d8168e28d8c906c6c424a6db07725c824df3ec45c7a29708db247aa08a2b54ef627791a65af41ed539493f1c023100ed9b7693766575f00665bc8b3e9f0bc0699b4d14981c645a3e1858e0200f1c49dd5d18520723a2d82b9231a3f9c0cc850302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c66c4904eaf35526b6d83290df884edcc42d7bac99af96fa732319f44707b5c5605788f3075d746d7c84f725911d8490023100c169c4c5d84189b482b311804ad51b39dc23c3d84f53141bd9f87bc53660440a5b6163b332cd5527f87a72ae46fde8880302047c435bb50066306402300511bab70dd419fdb60b45723fa9333ceabdb2cc4a40d71a66ea7fff29fa1255e0416e5d237ffea500114de80a402eb00230144651e5d48b5ec409856d5271b551c41661c67c6fc5998a2a6930b48d81923ded098355c59908b008d1a2c4556cc4cc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f3b0cf46ee633062e6b339a0090260f11bcc8717f5e536fe231be613ddbdc133b8b887240e0d9d8790efcebbc8dd0eaa023100c012aee3c23ef298236d3f8f71b29d743d20bc7229395944cc848784de83450e2db6d30b27f61b2bff2bec5bbaa70c590302047c435bb500683066023100c9aa6ac32325321042850477364d673c44d8b1ccf023e0a41583eef1141feb1637ae82d53f30694ab7a2e28376a2e8b1023100ae1bdbca2ee4566d1fa82a325edcd61fe1135cd9ca00e275818a35e4f63779fc67bfb480feb1deaa0f6047ce0f1c7e330302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304b40f5233b01f677e7e1f74919714ef98b2d95248c4f0f95e2dc8d5bf04f225d45c29051214ea55bf43ad64cdffc9b010231008f5664ec823325a3dc7cc39adff81ca768184426dcbc8f201b6f70ba901d1b4247be2b157ac603a1194a7cacc44a7c460302047c435bb500673065023100dcd265d991cf4d52cfed533f3cb8c074d2a5b167a0b5b45eb5206a7148f88839eeeafdac73eb21d8724ce7e0ac2cf56202302bdf2bdd8c2e7503f31e740f3a822e254428639356269a87a6d0c9ba7b1c77c0950895588e6da4e4283d652ed70a13e90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307ac7560a23b73265da248c85bd88a7c94f9676d20c0e8d1c6287e74be16f89bf6449a88eb1d677cd610d2a51b2ff795e02300f49542af9a3cd7ba5b8aa5c37863ab9af8c5809beecb311e4b8ef97abb8cd3e713059b5252524034c111e3966a658b20302047c435bb500663064023033815ce9d05a183e760db2b5bf879e183b59d5a8910d1c1ef7a0d4a65846c02f498d2e5f8452586e149523f22ba9bb9902301291f341d8fd3c60f2856c9364b54858ac70ed4451483558e41ac57f8634a1b96d615c9f200d6fd26aa16e6b469ad29c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023029d15f09de287322588633840834cddd8af099c75b09db913de235b2f7b96777dc41c8205c853e37a801bb282533bb7402304299f539fe5a9183c3cff43748df41057f42a7b5accb332a620ef165751fc9f93bc5ed1b66288fb455052c5ad6dded7e0302047c435bb500673065023100e447e0ae919cc6b7edc81fdd5cf4eed3a7cb36b419ad0f55fdc75bd67640a207f027f65e70c00f9689e087343299656c0230136d44094a1c67fa39a7973c275caa38e25a7bb74d85d5979b33662bb89e6035a85114a9216fa7dd21e798af8cb6ed6f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304c1afa7382d47bf72d61205010dcf310a55717dd22bd8a7aa4088b8e83e87f8d5b0876be954e00d7ff2b6d4a04a92d3c023100e0dda68ef3aa4127cb2f69eb7813da0402b1cbad70a7dba6a43c6581499d242f92253dfe96e4489d02d992652bff81400302047c435bb50067306502306db69d60ce4a7b299e2c8bdc35c0cdf92e19274f23bc431e703d601941d25f0625a76c766382236a8472869a6f17a179023100a82054fb3471f378d5f18d52486f288bcb5c9eff00ea96aac1f49f22959c4b16373cb5087792e5d3a15de1fe1e38c7370302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008ea24ad611256087d5dac984999b0e849ad24363b0d88463d951aaef1700c23dd1be446129c7cf12efd805aef605a3af0231009d9f6c617a0ee9d25aa1d9ee308687aa2135969145d0e7b6b715daa1fe9a3b7779471ed72659e3fbb4705335f65d7d310302047c435bb500673065023028153830874b69c562f4dd4724fce440fc98e86bd814ded0ae26d178568ac21c3c35734526ebb71d21cc4572ba0a99d8023100a57630d36b8571bd6a0805f9ad791ea63baad74dc3805501dcb71c9414375871a8752ad361303d6bf0282f3d8cd097350302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d32fa23a8da23edf4d741df11fc9f35f9963cf560450c8d968c34d93cf121a15595d417fd0d02dc1e55468f6c1cb2c20023100ab671903404f169f0384fdad9e6f4003e80c782094f432a825ae62da2d9643114fea9b3f386c81fe4191af8471552cfa0302047c435bb500683066023100fc42ef020f404f46d1e6cf26a00c4a3c09d6128aaf4f21116c22edda8c240a80bd231ed620eeb55c5b84e90992ee3af6023100ff0a05daa2ed2b0a60d3a2a84a6dffebb6dc056911b55e396415dfab16a0869974c4f5a379c2cbd333e8ea824ab3bd0d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306bca91d1bbcdb6f46d6634582291f8991564ebd2ef96323761a645ac5df4b06dd7df1952efd0cba47a8fb3a17819ea1d02304ed9ddc35b85235f069816b03d9a3e68ca7e80ced2ded7f4c62b168480d7d0e4bc2eb0bc7bbdeb6bf90d37a688d15eda0302047c435bb500673065023100e14b2c3e3d311040bf9c103b1251861211dab74a415fcf1658669fb2bb567a2950c3023c8a258d6da69f100ecf2bc3cd023074341ff85c1a044b2e2bf97e821784786ed3e96049b5ca26839e18c33a95e4f22a74ca3730c3e7bb1209b3684ccabece0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e287bcc0b06f98f613fb06204e7a4ccd0f2eda3966e3770214cd63dd49c8e02565c27816c28c84066da136609bb38f7202305dc0c02d41d8275650028aba86e26d4cd18c0c36deb871f24d6186e632c5374edc887bb09c81e61a869b7efecb8285fe0302047c435bb500673065023100825f22bcd025239e604339a02c90114f18bff0876d6a84a8f15548f68f1f735a16c152cdd144c76737c39232f3a74a86023076bb87cf0410f35744dbe25dbc262801517d20c3fea5b2a354078bc0f164a31b5338d294b23554957103cdb76459df150302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100dad00ddd1e1873fc0b3b105314bbb3bbdb1db39d2dee23ed33b4cb6142a3dd73755a9f0658ba123730e458b067a061a1023074c4e65cfc53098757ed6e25b44e3374453bccbf718bcceab7d73ed200e0590deff6050d050ce470e970a55944baee7c0302047c435bb500683066023100bda15cb24d18c011e6fd69608fc74c0b548a2bc3a2e4baab4485ebe33118052c2f81795158b05df5b8d49babe2f11913023100e2b7e4e5cc04e4dd5b8dbf42962810d885c7dce373835189eccd51e38da8d750cab88016015b622d01193d091bf4f3550302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009af6a8a7ae2174dd11bb2c8ff54b173d98a19b14aafe6b65cb50ab69af7283d8b98a36d15fdd4568a6897ce53d0b0279023100fc29b00436382ebe9c4464c416188014c5fe42f6e865c506506931a6b2997d95e3db5fd6b6d4c6c5f72ed742181adb5e0302047c435bb50067306502301d84ef5f3d5a534120e5d6441e204cefdbf7bdf127ba57f25a244125adbb47f0536229076507becd37728b9536942e5d023100c035ba9265137e7c705132dee18766771ad031b98cb4eb0132947bf3eb8d73f1280e5c0eb0a0b2565d5666787afb1e530302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023022579863d23864558d32749ef2474d4c898f020dc1610bf8fb30d541690cced9d0a3c8e110048425f2acfb6f2951f4140231009c545cc6fa9c7abd50e0e6722d60290a034678bb1f1ab1ba21ae81e2e0b514b8d7b795eba7d0e59cac6377cc5bcd68150302047c435bb500683066023100c9da7d61cdcadf70504b37893f318a12dbaafa40a2ffa5cebc8d63673480908793ee8da1e9fe47fb6a875cd939bdbc6d023100d1a6ed9c3e8355a9d2f17c1deacd14987da938971db4fb2dfd3deb46368dddea98844b58be5b10c1d709bc6552fdc8b50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008858a5f38adc4037b9a07dfa52a331ae4cb7ced973a60e4f189e6808af795e31b3e4a3fbc601037a72fcae2833291132023100d418724c7990172a8524d5a96c19946467cda413ef6f5b6a28b4d87e0137ca120336c432a5d0b190e756208b09f6662c0302047c435bb500673065023100afe7724db2bc9cb4ee4fbcf2cf35b72e4577dac3e8d56d12f29aa0230fe48b08a7b61a4857aebe3f6d103eeb1aa5eb9802306bd873819a77ee66d371e5bdd3de21345379912ca78b6fc4cb3c0ad8f87dd93a0c365d9890cdeea46d2f2ccca715da790302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ac7ffe7570a0d5b8757902b0ca46c8483735b5f9ac06b1f93d799a1dded5c859f91148f75e1d98b74c7ee9740ed343b602302940e6279419866a8f2e371fd7f01f3fb819ecdd6bf064912e859fca9a08faca2e78c5b874f6a4df32d2b81c183eff740302047c435bb500673065023100ad6e405fa0611b8ee6f7d2197ef5f09504174f0ef23560dde9c8c6f546b02bba196a78115c97adc049bc887c6619832f0230137eaf579e8d65d6d5c1d1ac21c988f10bf1455c7c69ef13ccffb7f53af60fdf282cd5ca38006f63b97603128bca2bf40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306341928f5dfcd209879aa7d77c468bb795b332dc1e949db3e1966e00eae5bd6ac88c22f8735b456ec4c402149376294102303f64fe40a16c5220e0258c1bf51cb69e7e1b9a4d24e95b219a81feb8b50c84d78f321e61d30077934e849f0449915f880302047c435bb5006630640230248150ae4a749d3f36f6938dd73664ccaa821543ec05661d5683f7140c3214bdeecd850bdbf3b1a7074c2f8cad57ad5402302976b13c30a3fcde2d47fcb381aa85eb8eedf8aa7194c7d932cda22de568822f334e6fb253d7faf17537a48dec86ac400302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008d60dc7a796b39883cc4ea578d524b3099632d99eca880351d2c0896a9f8e25a87d30ba674239bcaa71e60b7a7baafa30231009baece291ed83eed456c1c3e5a01bbbf331165a0dd7461af93f9f344923c1a1a40245bf46716a30905c90f3449edea6e0302047c435bb5006730650230460b2a20df3dd29f464c09a19648cbe297bcb9cd6663a69c803f7dda39b3d3e327a44ea45b6ac5a1fc68c4070adf4991023100de936cf633bd7260846840e8fa94140fe71ca4b91ff13333a154d7e6d5b743a38a24afbbc133a9c9e437e5aa72c211d70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307104329710a57fd73f7d003f56bef70e5bd8a9c7da474764dc9400ba0437cf9203e4c01f20f5ecc0635bbf9f6651a9fa0230471415851f766a90162f95607604f0620e72c5f6f48a862b043d432f1fb9a4f31052d5d59479b0d004802997ca0af5920302047c435bb5006730650230432b7b14c959ac70e6ba394509b148c3ef49878dd5c5a9105142fc3e54ec313856cb5c59057968e26cc3a8691a6d0363023100b1476f1f4f6a27de95bdcb3e4db102528a9d5049f9e033df5015c19966f9c2e77960375b1bd15ec5598b7a6654cc43110302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b1ef202a6db3c1e8d434fd41a63b85be81baf7a5a4f8193a4fb2fcbb91e2e52af0902d6258db368da503cf91048846f602302f2f60afad5a215bec77c1358ea9cf8ae9a0962fe996202b47d6ba70b15e6cf05b9db1fc058e75cb4464b7a6628c25790302047c435bb500683066023100849276693c14cf7dc5a7fccd7797439d5ddf648937543bbb3164907f92c13e7707cd820a79b6bb674c1b7a783cfd9cbb023100e1c08ce13b76021ae838851ba4b23c175044425090554e28d9150ca5bba917f0ef7a4a36dea6a536c383d007047e6fb80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302493bc8cf8ea49a0af28d88f11aeb4e61de0dfa6f595bdbcdbf2866c80c070c85675be8b2290344dc926193589957d44023100b68a54955a312053ac0d52486b595ad774abb978a66057eda1ef3616398652d056bda9b9778c0b0ee27c127c4f42affd0302047c435bb5006830660231008b288c34ec40cbc4700c42f0d64bfac5fc0aadd76b780750363035437370d42de163868feb658c9c0c5afa2f031e6e44023100c37dada0fa6fca5814ce244760ca32c77d5f05da95ee56c90a7ff785b971bee525aeef1856e58c2fcf00697423daacde0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230362873c73b2a6ca6ab610041743369273e63a7967bf67b2aafdfde7ec42171dbe25529a9bf4a051c1161573d1542b0760230343cb14e528627418b3eccabf28e848f7d13b0bed09ff5ac951fb5c2a23018b59daacb0ed668240cbb5f14845bd4852e0302047c435bb50066306402302483c76ef03c8863298dae18d12a77aa5daa3575389470ff3c3a3cf9ecbbcb071bf95128b7d1c5aa62539b84f0d5bb0e02303bfba9c0513d0d37c7117fa845db04c5bc2d808ce68d98e5cb1af654f35d05c57b838236124e92c6d34aa46a383fd3970302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230298d766ef4233a34ef2c86da1bd39620aef2c6251dedaaac66ae9f1f9606174b52ae2c335b651d2ea6908475681d9f8e023007b72bf42c309d14131a328ffca07f23b025a4d5cf58f93bfc0c16c9303c7a8aa21248293b4fc9b69b68967ac18c3db50302047c435bb500673065023100b69efeacf5d0f1da7d5020db243a2ea9a104476b48ca916bbd11c9bfaaf16fe133da398c9092c59550e831682164ab8402305a3fbed179fc8547ad25df68fc92774a58ed5aedf2dac2c5074ce2e39d37b50722bf111408eab5ee5a06338c7fa14ec50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c1fce7b6c236539aa616739c18e9a1a0f8752f1cfa65d5f77327d9cd1fe7b66d06783a5d9fc6d73372e3e23953896a6e023100932c99c478ab9d6670ddd1ee48cb02a70ece67a17068104c8a854d58aba3ffe5eda967e88461aa5c2cd922ca448e2a170302047c435bb500663064023064e84c58c8592c5b90b1afdbcc1af45983162d51082f0218a85eeaf5fc2530ba0a2c9b0ca36c0f5809d9491b2366ad600230256d95dfacb8b567dcfc1fbfb6cf7be488ddea7ad13fe1fe6ca94261f386efc3e4a745d449eeaeebb902358c3b98bc3a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310087648ca93d9bf5a2e530a82df2f7173a650e6c6b652f2117bb9ecd0c2ea9d13a6037eab6b9f7632b53bb9b0a112b46c9023047d4ec898d0dcd31d068dece8e6ff0ac86695141d0a9380856fecdde6f620289b5545f6475ba857b5e5fe05946f7c1340302047c435bb5006730650230505173bcceb6eb3554b4995a24ee289881b71e2d3a784a7145b93b1ed91530083b1e60b8415baef4128d80ffd3daf33e023100d526a551353728ad9288b2d4cabde8342f6ff24bb5fb4599f7e5d0e3b1da5ece93482fec40ec3caaa1ddbf85666d90250302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300ea97f58752dc7120c532caf8d203b3445a36616213ef42cf295fb019d0b858ee9c0ea00f6d50d90b587855ce0c1338d023100be9f97e70cbb558181e0d7969de6ce617b3c2867be52af44a71bfbd8ddadae1467807397263ba74e9e37beea8a50103d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a333d4c9a603ccb2e3afe326bb35d8c53fa743bf39ddfca0be61db7870534c2b454c0fcf2b567641aad0344e09ef0fa002301b4cefd360cd9193c1d2b2f6b02af8d5f7e1d608c1e17ea256258f59d63e04c11534c90390f09264c4cf00f503840ef00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303cf4b5df2f1eccb8b7fdfbee5c35091e61b79b69f92f56627321e60dfea9881f312bf9b22d54bd463de8a37791bd032f0231009b3794e403f9fbc1d7996cb154023bc624cd490d366ac2b421390af99a54ce99747732a2144555ea3ecd8454d8e909600302047c435bb5006730650230422d0ee2da4de284b40a0ad6748182b337592217aab12c2d962637d47e6824c37afe976f1a1e69a1f183ce3a1a79192d0231008e1cf6b41affdec83983f232f40714e4564f004541c16c091209813c4ad2a2107c092f3c4362a095fa6daedf97f9575d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b181f6cd35f676a2e3a3c480770285b286426fc667f1eeadc1a9cb2ba0665e3f1086526dd1af1fdb06bda030b8ac7fcd023100f21c6bf716156a5c73d9de20d69417be847f52c3181c3cc313c98dd161519dc079fa7fd1d6159a0272a60e16e69291880302047c435bb500673065023100abdebb0e50f3f373e4349b0088dfd6375ed97420aea3c0380213a2b7f608655a0bb75e784fe89a938d7061c7109f74ac0230671ee91aea8edb8a0391cd052c3c295d1d551335fdd439e0ed7862a99474c1b0f88142dde6af8a943e7292c5e4d1c6190302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a4a344d4f410375f2adbdb1f903ecb273d8c62f313d62774faf6d45d87ee748be6285eed7097f9d8774207ef1b6bc1c9023100a82293345ef8dba5bd42f904746dde5ecc4a61c1cfeba552ced01f85061a4ba2ef3ce861dc77111a96a8068c5dd414770302047c435bb500663064023079ea6e7ad3faa3b84592008342b040595d4e7600bed064d19a8e81c10b02805c472ab1bcc5793ef4df04bdfbf1dae0c302307a794f2770fcff6c6c249fda640dfaf82128aec29ba31d26bf3043240c1b62ef987d07422baefb18b263b9bc7aea675d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e9c7b99fa51e06628b279b594728006ecbee91268a6133dff8ad1a180df0a42d584ec046d7416217e02549c9b43c998d0231009f869efc0553dbe4c8e83a6dca1ae14bbd7aead1ecfea75c082dcdeea0f4f79bd6259973b09e8c1b2029e91a1f4d803d0302047c435bb500673065023100e1ab511ce748a720039f11982cb450bf06d4a012fadd3b9b9344ea8796ff38aeacf687cf503ed07a4d0e7e7cd33c4fca0230303460e2ea843d6620c6ed7caef65a855b4c3ec379aff0cf606d92a2530983278e832eb11b28aecc2c6d3651b49da9590302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306e93c105ac278b3a6f86c3cdd6babbd05ab5f69b043a1b9a73a8f0b7eec441ddda1512719b99ef9496cd8b8dcff24fad023064e6dcc2db00210ffe120507d07318d20f67e8e63be10cb8b24541a1a7240e5cfefe88a5037258e1b12b4c9ffa7f7f310302047c435bb500663064023040a3520c64e4f0992844ae23869f312c84b5ce97acb4c5c17d670e190b984dd68dfe61ce83ca6ad030e3f4d35c2668ae0230362cba94dcc5fe252e0f754b4d4ba7c0bfcf6bb39c4e42eada570b6933a7651b91101865f07763e8ffccde2c2744ae180302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d963bdf7bd1ed153e676f3362970f4bc8347fee4e9977daf162d6ce32e9c2fc9b5e5db7e60a5ad5b68fb908281a62f98023100f4fdc858e14cecedfb12235a551b022504f17adea8d1a72f53d491539cc758ebd5eafe3be546562cfd490b65d05741290302047c435bb50066306402305944187bb9e7126f9d5a15ce5889282122592a05a34c1bae4dfa4a83861c46f8e86c6d54f9179b037a7f2b392655bb650230459fdc2af3c2618c0af395daa6a51f3fabbe560ce0a7940602f4f3707d7f6cbcb01b4dfa42bfea9d44381794b373def00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fb53475c80866b7c9a9d13b4102b36692b81ba61ac63ff390cd7bc0b9cefb55aa7e5ea5a1cdb5de2caca89945b7d7293023100d758ba9a50c837da127a15e325c9fd4559adf9588baa874fe3d3067521f06a638ad17fa36ffb7d6de8e4cf66f970bd9c0302047c435bb500663064023034b296435bf51d01af127d955c576e633813a9acbcd9de8eefe619be9527d7eaf07b8a46450410d7c08b6574cdc0370402305c119833452083e68a296f9c89b4341acc9d590fcfb64c761c5efdf46e005772e42d20cbe312397177b4a7cbe8b6dc4f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306aa0e94f2c3bbb4494a0261d40b3d2bc1c7bda5a0f815b5058734df540c53a31645bda87328e3443c1a346bf19ba11e6023064433cb519293ec870a68f7512c8938fb70aaafd281ae25115075f0a440c74eb04b296a2c797b176a5ad5ff090fce0250302047c435bb5006730650231008a4e839837b146d6a7ff87cde32093a6769506c4a3afa88af010c9233ed196233a2bbd4a1873b3d558cdf48613b573f902307190e402b7d3dccd9b208493328de4e64068eb91ff8d447bdd23b436e6baafa3ecf2f11a55f42396446f84f951fdb9700302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100fbd594d4857e3840ab8d726127542e39ab6bb42ec1026d7037172d2f6ab23cce0e5d3dd8a2ca9b40dccf8648df4a051602304c58c74e71386f01165c7c6422790e507d7435f512313f12f4cf73afd41860a20d3c8f3619b611a4188b9e072f0cf0140302047c435bb50066306402305c942f8f6653a1f6a93970d41a098da0a1409f5607f6bd35611f57445a50b2bfc9e71b96ec4de805738c0105d0bfbb0002307cc897de55a8c76ba4379cf9af1b22d8a5fa869a8026d15f085c14d29310d9fb4bd7219146b71466f398add9fd7200c00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ae48db94e818f0c4523bcea6ce6de22e74a3cc509dbe88580acdba0117a8b91504d2f82a2ba5c18c88739bdb70896b5802301a22a067bb4c0f196b9845fe95f0e1c90b66efadc18340aff837a2bd724ee2cccdaba7869a172b622b944818b1cfb66e0302047c435bb500683066023100fef02e6b8150efe17feb3d1d0b5194e0d6318bf3ee1d541d250addc3d7f6c9025e09dec07c3528dd2577d3f64525effc023100bd1c9ac5c7256e172c6a37b7b11a7c1db5706fe80786f0c56a19afd1e52140153ca61ef47265864a9b2d086081890a8d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b34f80d53398b883d8eddf5fdadb0e8b546887e656c5b17616fcdece1cd2539fd4540745e6780338a41e731ec42c58a8023100bae93275b0770f2d35e1ebb58e5a1d443ef61ffd58595f35900ee468264d6bc4708f14f4495d495189084f8d6317bfc60302047c435bb5006730650231008012e311ab18a5826364e1d72690875b34b1c48468548f14f2f50092afa7d7e46fdae85e846fc45c059a86a6b30c1d60023051194beac2de5adea7eaca60cfa08b1fbcd095df3048e392b4b28e5d7794b9d1cb98880d1189f06479411bc28888a61c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100bfd93b5c64aa86c4d7a0e24db9495397393f33c48f4ae54c5cf662ef1fe63d8fc93b230fcfcccb03b278c2822c50fe0a023100af80a8d03eccdc492cc004903d94842c469549b6e869dce728afac07673bc1d4f638fdb9427f69bd5e07758fc8d52ab20302047c435bb500663064023038ceec2bb24d25221b71844788c507f93ba71ceb704e7859915a735ff2c0d4686556afbf39b971cb254e0fecb8c3fe6502307f7ff842b3981cdd656c1dccc59202dde901fd469ce3ffabbe4fa372b9405e41e9c0ca133367f1b415bda8bbb97cec990302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100eb862dcf9295f2c3cc39e31ab6d8fa9fdc1e0a10944c0c51ead9cec7c0b198d90cad9ca927c9bfbcfa7d4fbb8c68e42b023100e210916de5e31ee219e6fadd005e7a09d5f9fe0f0c5374aa2b7d19908bc235c6619a86a73b6e32aeef134c16dd88ddba0302047c435bb500683066023100a3368708c13f7339ac950e701c9c47e03936a49f751c134a42ae646f0a4f66d0b127b24d37f99300aeb070ece4ae77e8023100832268e75ca7ef20770b5c7e52e81049965f5fdf3327f094fa09988910be2652b50b478871d4bd2c3fdd00b74a77483b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305a0aee70ea1cf5c136d20865644616d5805feb61a7f3eb7bd03ecaa6c40747c157aa9443cd6f68e7ac9f8e17c2ee84b802302737e2bb7475ac68226edfcb1d92b54cdce1df0aced3c7eab14f68d8bf3ddbde4161b63e6443fbcbef6afae752a2bda10302047c435bb500663064023021617cd0e31d5552c1c34c8e3bd4f5350271705f054ab81027bc216919f4925f5c829302054d598e9b9ba277317f403c023011b5e9b5457ef18a572dd8430a99f69ec09f227f9184de2783760d6ada7ed48fd62d69d8cc10ac2357bd9330a2459c4f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f55daf187731a786b2307b46e3fd84f3a6adb4abdd4c1eaf5626ed144c57b680f4ad2f8081408bb2925f078dac2d13ee0230329d6201cf6df623885c041841873812482260bcd65e850770e0c1afe1f53e148c84bf1f17b8112a47546172f66025860302047c435bb500673065023100e69abe570d1de1ed0f1a093502c1887a45cb3f7dbf0fbdf39bee5b3e7249f9c932c5ef59b33a6ecc5afa0f33a8262a0d023000ecf47e92ea9d35fc012d60c9ab6630aa1bf84827909f35248df13b096cb27ce5c742470d69c9ed6d01d62e532740df0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023025a1bb1e7cb2231a742b0397a8e271d43195bd04f237455e750ead7d9ef9b4bd592e9a0d9fce216fe9036ee387e38f9c02300ab469988422cdd61a17c566c38f9b8edeea3c971f1da6668dc10367a69aa15f2ba6797ac80d60dce24e0b3bf681dcf00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cbdccb14f9b4841550802553d213abb29c6f246f4a6fb62bab545efc668aad7e4fccf33d4bde752b266975352e9b6cac0230726a0a7b8e14f1f7593f5c341bef12176efa464d2a3b506337e2df2a9d620798dbfab2a8d69cb61fccf1ad2b016d926f0302047c435bb500653063022f524b898acacee1a9fc2c5fed54c794253c006cb1a66d02ba01e77ff88ac9290f1e4a0f50d73b13d3ea04b10de2c5600230720d6fa103451c5f80fcb9909beba25f8b4bdc31bf99485c898ff17df1dd85d733b4fdc3fa35228a7627bef59911ce950302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ed892c9e6e6eb620eb5cb2f13e83d204de439c936309d1141b6acce9062a87718e0e402c862d510233657cdf4d743e43023100fec4b974f93b936f4a0eda4288ce15bf78437a906500229582629bdd518efd172ab0ba4dfb093d52359de06f8d3a297c0302047c435bb5006830660231008e86cdfa9ca0df88b7f10af800a2b36885247bcdf29aa574361ba6700195a74c49f663c9c76cddae9786be3faf9d57890231009a5301554c29bb5eb2f8eae95e96cb5e1c063c3b845816542f261792943dd7e98fcf8e900e9c87e17a6fb8156f0610740302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006530630230086302fea00e0716aaea7e9aa0b52518aa9f7327b32db2702a698af244f046d5920c3831fe6a8522ac44c6c452c15f75022f4b5248ff3219db8736753f9fc15d600fdf634fefd4699fdaba9b49eac56d6fd3ade66e530954d9e3ff12e37faf34740302047c435bb500683066023100bb595a9014a3ee17b19b746c3530284fd2bace2e821fe9c9625554a9dc33705d392a14259e2e31ca0a94f18b763a481f023100f8fcf23137d41477e26f1e6c7eda2c155edc0ee0e59e8a27c7153aa51688577a6d654e9447bae13c487b8db0e9db6f900302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009c8c970ac58394ea4330bb225470e702cc0ce3a9fd43a252a1a7c0e9f38c8c5fb1dd6d2348eed28d468dec4cdff31067023100c553f357cafb0f9f5a62c0581dea38e32524c4aaa7958511485a919e4f6171a2773cae419228196434f22ac0a8557e260302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023015c87e0aaa3c6f17c717bfdc9e6225764f7fe2aff2f45cf3ca0e7be4828f78b2e88db67c74b604f8cb86ae138f2caaaf02307c6e20e29aaca3dcc2a10ce549a5d532acd2dae050fad989d9d8896a1f98c1536a0b152d119d9ce6d7852e1e7db035910302047c435bb500673065023044a974a1f6d3e8072d768d8afe71550ff929dc3d2402beb8fedc80b18e1554021851ad0a9b66aa8a806f3f86fc5afa800231009c9b3b836da6f6a6679a39bf1039cb7c3bfde1709752d764813a52fec8caeeb3e4404ffa09de90095a79cdbb475aaa760302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d39e36f62a9da3562d0a3882b91a12c638f43b1dc9b5463c082d1d567e017da9ae8ec2615dd8ae2d860f6964506033d0023100d8cd6b4b3a8d84a3266f2aff909b303a9ff64b7e3b07a03a1d33a32ac13cc12e6b7655f4faf8d6df43610369a4efee220302047c435bb500683066023100b496e431d1903df88ff5baa2d1b066a8159a7ee0455a0778450da0d51c60d98bbde893a7660db07b417ac0e8a1c1e43a023100ce42a65406f574ee9ba2fce10abcdd1d6a6e6116613da66389d5094e4462827e941ac000d913f3108ffa36191883cc670302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a8552fc21b7a2f940571f0736d21adc51749806b010029deb00b235a89610d4b4000720f5e20b997ac2df4da46b485a402310089db2f839c9e5b9033107133a0d4b9ac526275f3ef2b61983f8603e2bd42571fbccc0ba722d3396353de4a4b2ca98da60302047c435bb500683066023100900b7e27d533022c021e8b85c502317c732dada7c68df3e3da966cefe1be3fc1bb0e908a2434213d96eaf78ccf3f7289023100a4ab0806a6e2ae55e752976b35bef6a47fcda756d1bda2554c8f4f0ae4e8908fcf00edaac9f0842132ee4f95a25d644b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307e188e334039afb4f2269d2089890faa37467882545b596f3023bf543186c2915dc71a5b75bc8bcce4f99102156df62e0230538081b9c7588a7162f82c0cb5d7df2706f8d436a4fe535f7fe70d89e5b5d75e29948267a5787108916b9551b3b974340302047c435bb500673065023039297c89b92308837e107a0d16eca1f378409e2767a79360eb787f5a7d7dd181d2d139efc472c1deb8b150f9823f21f2023100e7215e303c85a8c5e090073e2889ac8752a790f4bc34a269721ca382e90f7597c2253e1cc505d1b814e3fc70bf10e7690302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307c20f01633cad0ee470322f59ca5d003b6e5bae49dabecc5f36e61b973394a8e437419a151990b4b4294b9781233051d02306f8c9f6b8ababeac3ba0e43e18d14dc11fa9c0181c24210a9460e7e80f12cbc8e3920aac5945007335738bfb18e884060302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302d05e2cca3820c5247440439b1ad3e49770f80e6b8360dd6347f4333270ed9b5c2bdde66298f66bf5b6949c2b114f3c00230392dcecdc7611fbcf08c7de7e127e6376296b8632f690dcdbbffc94bfa74f1d4729683c1858c2609e16abe3989075bda0302047c435bb500663064023051b8133567157e11e0e7056417fbb9f5929348724f61592cc208fbd8c39084d83b2c552d76ae7fd26eb642093e203232023006f4ad0a37520699f1adedc4559715e556322f18f46273290a7dbcc0c0b17f9a8cb29af5c93e2e77f4de6721fcb7f0440302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023072534bc1718edcc1dc9a137ca3deae3b37b42e38829148957cf4f3a15f76f5bf70caed2db4f054cd03399a5c36d62ba802301c65ab8febd18de332df3121e4a945ccc75006e13c1425b18ab257c295f3082185113d4d4554a177428262f0a3315e100302047c435bb500673065023100b6fc3c0e7f57370509cb85af6cb1626e209c1ce5980ce099ab01b069284323627832951a7628fabaff69dfe623333d8602300b57c510096129b7df7d08614431367610250804e8fb110e1c8a2302bd06e40036488f1b7c34383d5e72768ef0ed3c630302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230784548f9c5a7c2367dc6b6a9fd9c0971a7fe52dc1f9f0987c4dda409b34c6e75385169bbcf70068b0d2fe6e1b356db2f023050554b84c5233aef1e7892d0797bf47d2efce0b80754c6d1aa06648f7d81efeae73d02793dea88344cc2a4e20f080eac0302047c435bb50067306502306e8a9a3b2cb03f9f8832b52d43d5dd5a7b95517d58eda926901ed677e32075c18f21c133a1de28a3b6211077ac25c024023100c2eac60fe456255918e168c1da81dcf3f2f14258f0814f2258f491d7f9488e9d2f85bb6560cc103226729cfe84704c8f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023070a191a9d7d4d53844028170543b272c07178944129fd924566572e41bf880cc585f2aff616eb3af855a69e798d8e24e0230573e68caf62d81360151bc6a5802f1e609fc0063d585e21bfa059732fffa39034b4dbd1e2387cd0f10778528e852fb9c0302047c435bb500683066023100b3794ba2166a5b52ea1c620157a1e3349bd6014c312b697291afa673ef86a3fd51adca398ef1f918c834fb0533984114023100d8757353e2bb044689ed71ee975bfd8c22876c9ab072948775e521925edecbb8b006cae1f668edf5d6f6fad15709bd860302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d7eb21adfa057aa045ade9cd5080196e86b290558dde0fa944734c2c04ad8b08d3aeddf1e15ded95944b7bc6dc056e3c0230216fd853d4bc059b9d4dc3f0edf45f9c66ec034b7cddf6caac5fdcaa80a44b38b692e34f6cb6ab8edc3e580174e231520302047c435bb500673065023100b84b0a59647168e95a74f7c8a7f7af084ef8356bb7e746e7b93c5c60b089acf77bed4e8965e05e3ed4e6f464a71707570230438275d4a0b049bd03a8bb77b74150569398a4fec069def99a2b3792bf27919f3916d84f3599ae1b0252d68150ff972f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310097bd293f91985db090758d7daafddeb78a994d0979f3ccee832660e78460560599c96e9d5093b545027ccc65cc676568023063e85acdda79e61e24a5b6dbbd8f50018b95f70e680751670b13164d76419eab735143f15d452f366a117427910f83970302047c435bb50067306502304f18d7ac8c2b8a8f67569cc28a9b0d52bd6eaeb815b560df5f5974b23771f681491cc507c43bbe633a8e1d8ce8b95dc5023100dc981578cadc8af9f90766c06fc12dd95d24a11a1a9aaf27c9c60bff0aae04fccf7c146318ed520dca883bf478b79f1b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fcd30e5e23a94ed5d6b28de6cb111941fff717a9bd25762a48ac563cbcabfdbcb8caa5a0ff16c083f7ad199c3a637a7e023100cb8e5555676bda093f0f1c07ee035a8ea20a21da55ac19e794fcdb1f643ff4bcdbf7144fbdca85c5ac835d7d4f48d2da0302047c435bb5006730650230731c7d34b151c0492549c8e5a44ba2f6f76641633ed081fcbc30e95caaff4f397c58fb3281c0c45b875274e73b7ced6a023100d1106b59d5e9fee4ec55cc2b4bd7c8abe9d5c180f9b27c25ff63631f3997c014959e5cb2dfd36b75f290d770069760dc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100953ad49198b71ea3c8d2a412b27358ecc286e7a4f37277e92eaf6a09fcc1153d3d19475a9466930bbcf441fa565a5629023063b12dec4030851685c4ddb807030d95e7e26f3080388edabdea15b752ccb543a413a58239507a43bacfbc3d7c1023ea0302047c435bb50067306502300467072babf159fd499f416a135044d32590f9d9d392ffb46e56c2ac2d5f1aa2d7b78d35e75974119dcf07ff09280b570231008b6ff518b8cb7b8b9727b17cabf7298b89d6b0f71f07918c2148e9f5569f64ef6092d73428e574bb6023430068a4fc8c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c282101f02a563a83281cc2695d4883c36bef5b6e3c61516a7ad2eac900ecaef4f8f6b3ceca121f8e4f607a9613c7c5e0231008f810b0677315508c83442016614ac7b2faea3993cebd0bcda68446dee4c93ccc5cef7f3c2b651b6ecfa73919e01901b0302047c435bb50067306502303c95dfcf1e1c258d972334d657645c2d2855ea22040cfc9b6ce8a3c64292802b06c7e9cbe551a2a000f229e66de769d8023100a370e5c017f76689b55801699a2d4b5c987f91ca5145d5c06453a5578c7dea3d245ca95575a1977c85893956560415c50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301efb07420c1476db70cf95d5a47f3e98d92d7edcb2f189d605b4e92dad1a09aad552282887a47f1c5fee24b4a474082a02310090397880bdc2e10e378909ede5c65989bed40442dded61344354851ce8b3b9754774f695f974f79ffd5bec88f851ed730302047c435bb50067306502305287aa16c2ddcda23861657af8b1ed39b1f0216ff2ddf156672284afef6698168aeb53999e084c77f2acc1255e7030aa023100d86b51c9301ffa821673835fe149a55950fd36688ba4f4177d5b5aeb1a3cc7c131ea126c9d1a6db1e8eaacf1f71604c50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310083c4e5fc6869745a1fa50e48d9f2622ee0428d091cb2ddf46b5f9d7e7d5556122d76145277f47196498c0ae43be6434a0230079a0b6f59b7fcd3e8abb5abdcb26da4d4b2e8ece6a5f73bcc60c44ebd00f378189ef04755e1e8d321990d52d857e9590302047c435bb5006630640230332658ba9c3c29aee04d935586a2f17712754b4f9edafc283d79133f03957b57772f09708f2c5f657cc449d73af35573023051ddfdfb95cf055fea1647100807eb3cb90f74a82e31410fc2f6d779c5ee1689cf314dfc6cbc7d23653f1fdab42f73c80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023005f4b4ef1a41f140a15a00dd51324f4656021da511db1acb37426795d34813361e0c8738cab96d8be8ebdec7d67f34cd02300421826698fe2af7276d9ecee563cfe298a88b581749b93021be663cc0870d0159b13ebcd44d68794616ed161527832d0302047c435bb50067306502303117ed22fcdd6704836c33239d976ed40894e1a853104a0435792af05796a2ffc59501f06367620ea7b8f23c7741a1920231008e0f1af1878a0b128e093801ffebb3c03bc1328b9df45663f256c29153e9c97e427f985174e6d493bf857961b1b5eb140302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009f088e279a0622779cc45beceb354c7d50ed13699620f2db1102c32bf6ebdb1fe4535f76d81b3e57f6b1c57cce39d4cd023100be3691fe1e1964407c064108aee2697f6ac493f7892f2b72cd4b0419715db432e6c118f2dd1b9ffc6c09700576ee59120302047c435bb5006730650230617fd9d43410eb54dce2e3c631a43120c6ede4e90ad5079f070c870cb81a8341796bd79874e71178fef3f64c239b11f00231008546ba06a9f4f135453a72f19d2267853cfc15ccbd18b9645ba73d694754673d6394ef6119fb7091c97fc489f4a1ff820302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230540855bfa73e9b50cd7f6f6ada6a2b98b6088d73e35a82e15476d3593b0d1b01e8e32f939309852904e66f24ac6853c302306e5caf41e44f443a756aeb4e869867fcb7778f0ea33a1ff7e63a75f86f104fe5d3de3ba084510e0bdb1e77e9e38bd1980302047c435bb500673065023049d2fd060564060e844de9afb63889a2e091aef4195a2180ec0e9ddf5062072cd8f79c249f63e309c4f75b6f82ed0b230231009d0a5449126de6341123b287bb28ccfdc020f48a7f4a0a847a4eb18fa5af2c22a1f242d146c51fd6fe05ebb41a8d66770302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230287e5d24cf4b3005014cd8f8f83ca61bf5645a853d1dc2370dea9333d8bc5ef0d78127452ead76b4cd9c3a7f724e733d02302ce246712c47bc3dced9395ffdb26c70d3bf3c072f5df6d0ca94a634b433a567aad4adf26e64f6233f2fbdde1bad9eda0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ba066db3ada1bcce18e3878e778ef39b168596eab5ff2c298ceb81bc01429fcdc1cfb635607b504836a6e7bf07c4ab6402310098e52665a80710e921daa48025c3f99934571ff58993779ec9431ac7fcf2bea767a6371670c1d159135c1c78f2b7086e0302047c435bb500673065023100abde757ddcf6a1378284137326c4d19f8e03ec1a93edf700eef9a366a30893cd4fb6b5c2480a6c646c40654189c8dc91023021b81cc52a06d279b3a57f07695cddef880c48e6bdd7bbe6ed11f1496461693cf6293473f5f8b5d416534eab96244b280302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bb674a995a94f471150fed8015d945c00846a08030537032908815efe41f29d8ec45efec401507f9b7f837c1ea8a0448023062299a8b9937c77635598c3dcf5c7587cdb04af3f15ea5ada8b09928c37060d21b25090f0fd29ad1b2a7b8a75aeca1ea0302047c435bb500683066023100c68181bd72c9efde381feb75b135f9bdbf3336b7b01e5dbca07a86099b5464126d0e4f384f26baa4ae7ce11956203505023100ae2657ba45b5a78db520f6c9a77fe0023f24a770ead27759b1aa36a3a5c773954ca6dcb5c65092030fafd2550e3c41a40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230089bf42409121da71fff12c4954f75e25cded7561e8a07293ac7ae5618308030fb8ad058c2318d7cf47fb081d90a1b36023100f396084d1cb91d7995f1c038ad28065b25ce93be10ecf08534cb3c1a0102c8e628e4c1524f19ade7f9961e555fb59da70302047c435bb50067306502306f3e3238dbd57f70860f7c2516e626c07e68d5c53248f68ce87b1ff68469a7a32cebff81914391331d31d775ba612ed602310098266346950ce7344ce8f4ee02ab5c9bd18368abafd0f1ee9c9473c71c850b62af7a09eb974df8e9766c7cea631ce5720302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bd4ac780c5f9b7bf5a9790381e2d85523a625ccda83db3261647a8d86b15dea864d5c9370556e0df24d8350146bf25d102300cdc1781a2fec0988eac0cd3dccdbaff427c4d10b7bcf529952b110e716d0e478acd68a7615b8c0dd4252a2101ebd37f0302047c435bb50066306402303475c0ec8fe3bc3a20d366a7648501df998c7758023c961eb4994af523db77b71167021723d74b704410b697e02b301702307f071acd46bdebc456102b0ece5d1486600a2fb9687836c4367e3a3793b8ccb51158a34466b13f008ebc5a794aa13d480302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023078fd9d63a38d281d93f21ad63ffaa0c1d38855b01c23b50173798e4b6d81fc67e9e1c3aa23b01c277f24cbc827a934e202302fdf49aff53b8165036914cbb1ea2c3e125865b0aa642c2f3abe8b120ab9009234e5de741438c856f43f42b1d21994800302047c435bb500683066023100ce0b494c6baafac880707c7e917551cd05bbbfbf992b5abd22abce60262ba96006dcc8aba51e1add3c22001a871955b2023100ae3a4a15c16642663bfea7e672062f8c82e108fa4cd0e9f58438694bea5ea788aae03703c18dc80e77ea4fbdb3f3fbab0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306ab2e5890d16e8ec63688c2e9abad0ec3f729f020489e6105d1bcce36536183e248fd3feb3fe67e1d63f143103aa24a5023100a2ab1f668d086eb869d462ebf5c9da555f513e2e6fe5194c41eb47a2280308ef95de5502132bc071dc493cd4da83f3940302047c435bb50067306502302e11570831410f99cdfbd5617ccd77a2cc596e7403dc7bf42272d4daedfaa66ef3499056d1a1065aaf9bebc09798fc27023100aea34ad116fcc2dfc883f806fa23bf44535da135426b5a43a8f90bb53e19f7bb523ba4147422322e919528b78fedcf050302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230301504aefc40744ddb44b95c8e0810b45baf4a3bdb07e7380b008ed52bc6cc74fe47f4bca7a321e553dd7c66d25a55d402300822160e032235c977e1a8f894b185bb7af20e941c086f8d7903bb1de856d35cf7237922ef94777bd3c9b0a7fe0947860302047c435bb50067306502307b00259e41d472ec52b22cf8bad678d783c4fdecff24177bd0094902bc68b743be4c052ff41ee20f79541e5ea52ccac9023100ed77d234dc0f47990be5ae81f997de32ba8b21ea2bcb64b96790ab872f261119383707e9a289666dd0524a198b4ba7c60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230123b5349da21155da055ca5990c226218c16e6feda8533b09ed91c9fff3919cf24b6ae322aaf3fab587fe4a8af8dd5ea02301acb5672d56aabcd5b5228233e967771fbb12e65f29917d92524a4d999209a1790aa56379ae9a3f8c5beb156618869840302047c435bb500673065023100f4aff7ffd3d803b2f01d675cd68690c8065a581be279f110daa343e736a10df3345515ee93f81df74923734aa957dd2802301ed8acacd5ece27473581ddb2a8f9394b0c6e6d85e0e3084678346ad84718a6b66c5a84b624458a0d95947b939cb4bc80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b1b693aa094e6713abe556f2b9d7b09a2ed9596fd222db0c3023efd2869c4e995384f0074fd69c43e87874c6803107c0023007ab317d4e44c824b3a18c8656deb8e778dc5f884a970a39600f2a34db4c41775e1e33c5149b569d17527f060df354d50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310081492144224346626eabbcd561a8fbc464001ff24dbd3714124c0eaf985fceb0a93d7dcfb2ca6f8ec30ee5ef170cc3c8023100a62c62466e0fd09ec8996db07c4a23445f2200e084f9bd9b3c29e7f4116b3ba8e15cc30552e79feb17d320f0c95518d90302047c435bb50066306402303d0469876bbe242496619ca24ea9ccd5c5a962238de15555b0dbfacef6a0cfcac028c9935e53bd53cb0624b3fd9c573a02307632f29adf29b7c10686be7ba239afbc014253b740e84b209545ce4c3f730b6c7bb7aa4933c01d08e2ffc3cb7def8cf30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b3be369997cec65bd693c9e33ab6fd6d4b7a22bd364e09a44db10a7d628fad29fb2bcdf5bb03f92b1c3966aa9281d6ea02305f04d4302d3c4a7dce39ee41f49c87c2f8bb0b7d1e95f806389ca4c685dedcf148491c6a41188679189098ab78c4a2b30302047c435bb500683066023100b9a6cfc8fae8ef81949e38babf4ec05dce33730f45a3a03bcabc0f6917e488979278f74c4474fa07cc60a5072ce9fbb8023100cbee66fff03e2e600130993479d0a63c06bdef41c32a231cc044441b70a2d8140fb54fabd2d502004915bd9b0436136d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e34c96c4db0730e2de3b7fdc5c9f8cfff5b9330ee1fed7c6c40ad74886c8ac7cb6b1dd2b0e7e1fec8c8788a0516ea3e40230486f07a604ed9b51ddad19fdc591a04974109e39ab6a5abab492e642a6eea8da62ab49b23ada2b873d9f636e382c984e0302047c435bb500683066023100da38e3a11e142589992eb6da2aaf8fc351b436d2aad2efe0f3102c0211a3514a942a49b50d2632e16e562b0fa89c90ed023100e66a7441546ae230891bf4846a87cd47e83f14f59af6dc49ca9d5f0a5b9542bd5af1a78a20b7bafef5c1db2135b3ca9c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ad9af9afe0593ed71e4253ed3a86ffe5e5bea7e0d4ceda926248dac2f9afba59c4d600dc414aa6636cce2d5318195c910230084183ee9c8801bd3322add21c37b1f66d03f7d57f804c8d8a84e3dd165ac4c665fe4f5a00d275c1441b2fabc4304f7d0302047c435bb5006830660231008a6a460b3656916af3b9682b402afb3cdd23a8aa8424a0fedae1d931ba67b092764085078c2ebf535a8d56353b62b5f7023100b0bb86607a43ef50d72c5aa75c7f87d2a7a6fb7d4fe25f4f4aab53507e23015d507936a3bc6d43ad73671efdd7c24cc10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302e1230df3b4dce5e2e2c024e7aa8a00689c8aaf15406da664d587c18fdd1f9c545f1ac047315eb5791ebe399b270a98b02305083084e75b1419b6dbab96d496ecfa7d1c7f36cfc392d1337c544d7120b6bcbbda33e64ca2d1992c34671a0e8baa03b0302047c435bb500683066023100f38b2801d12549f2ae0b57adc39df70557c3986461f1bcae6b7bd4fcca863c5a86b86eb9413529f1d2e3e849a7ec4bb5023100f9c1273e118ca0160662fce474ee0455343b08115e2a13e7726696c32aa93cfb6fc09c2b7e54777b88317774f581e8dc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310091f408bd98eb795b80bce9d1f102a022f19505851838cd217c17cd46ad99de75a144613217a6df05bd8425707f4f9927023100b8683305c44aac3377b6f9df78459988ee169fcc1634859f4405add8482877205cd66faf0fa0f52211560ed52ce4b2e50302047c435bb50067306502310097fb7af3c4302a8a39542a747283fb5d909d50a4ee201e3c66b0c4d044c0db77671ad7ebf167086404317c98f7c302e0023032f5d35f7328495d3319132ac087dcbe2eee68139e23d36cf9f68c028628e09b983c5a7be8d0a72f014cd006231135fa0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100cc6a008597358a2403e26af0b041b6a0973e169ba76e9c233176805e751098f614555f6f330219afd2eb877bbe5df559023100da2000e7cb486d02ef969d9af05bd720bc1a17111145410e8a065a0c0df5431128d59b4a8dde327266fed5fc14c862fd0302047c435bb50066306402307d36a6ea2c4a366d0bf0ad2baba3110fd650bef11b4f1e876cd2bb0ddd79d2c45e9bc904b701302afdb8785ebe679ac402304c2584feebe27ebe34a5ffaee150d85dba06076a0322d93c9df879829351f3429ffcbe16ccc6577e33f8f4b046b238ba0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310091176161a1928df576309f724f4814b06b3957a85d20517416712def7feb76d9d1f4246f4ba02a4574450b7647bb581b02306487c9f6d6ba4f7ef009305e5fccd9e413125c657aee0a2f97055b55e592c91d921dc04c6505c5cb31cc6b52be7302270302047c435bb500673065023100d2870e4889fb61c400dd81dc1ff5667ea36ec4e66ee8ec0c6d87cbbf8643cfed885af819dd8c91704f319afe26bb3fa502302ab5055c04efe7dfa5cef73ea337b4d87540262f635ce64e4a3660de1f934b79adfcad64fc37dc53f43c58190db080500302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f9f639d7f02cd1072f633e63be7dfba03d6892118031b0174539409b37761ec41f381b4399b9327944e23298f5419be1023100ed29fa71443ece003aea14cb0a10a3acdec12ba25dec32bc12be7d5bda344d4eedc00d671ec951fef499f1f67cb180520302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a7d9a31cc4891b7f3003458b4054f6a805b91b68f505b59c3b05d7c7caa10310d1daa5f8c71f06116701865d808231c30230664879e6d67b6cbd13b655eec3b29a73ca080962379f3e74ef485b1ee409afae7af5ac1a41b3bcb104b76e6ac3edbcee0302047c435bb5006630640230307455c69df029f96faebbe3afcf67991291002787363172f5a939b86bc2739c42ed9c3a83e0d5affd872f524e7fbe9e02304e0170357e547e21a2fdc40f651b5517752816573acaf82bb63d836df3896e50b5000c8199c2705fbcaa2c321d9f1b690302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f6ebabcc97268e357af56bb2358e20d2406a47a6c5e69205526e18d90488dd3c01aa014d564adbd88e63c20e44828192023100c9b7b3ebf995a2ffd2cbf41fe247a1475b6d5236fc2c5430508218cdd3b53a647790487e02509595fe25fb1b3290272a0302047c435bb500673065023020e8eef641adcda11985ae33294ed434f8a726238361fa39d47f74d76bac2cf91672ca65964bf5a24b9828ece6dcf6d7023100be6fc00ac7bf6fc5a5ed0b4bdbb98013d8a6111ffdf7c183421d5757627fe14aa88925ea8c0df3b8789574d9d46651490302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023004a6c1c96ba801fa1a9cefcf20e867aa6c906c782d25558a080ed7495f4f61e7e8256a4afc5a23641930d8a2bad32ac3023100c010055416780c39233091aea06abbbe2063d267655439c9deda6d1d2755f8a537fac4da3494eca511bf6900e52688350302047c435bb5006730650231009363a193ab81db8d3aa53d711f8ae67168859397e7779a06d72de17df9600f7c64a2039a21b4a115cb58078daeae57f1023035794c27a6274d0c3865f2fee2087d074bb30c3e32518bca42b80c3e479eede6d4d26eebecbf41f21a8fad15703da6130302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c28ceba9a4d3e7f2a7b8d7e4ba026e13c06d092969052d2715b4ed29e495542fa64bc63d7001cfbd9c7dad282cefcc01023049cb81b036bac949b033d3b39dc374a283a0838a9179fadd281ea4d79d64e12c32c9eafa7510b6ada25c0487b911a74e0302047c435bb5006730650230412416bb94e942846a4aa20ad99efade562044568feaedcfb3950edecbfc713e38c54fcf626edf5cf59667bde0c91954023100f60c348b186a4a17fd9943ce3c016621e43f3bf9228a06c60ba2dbcd5a94286c8909c14448a3b9e461d2789ca909d0d30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230792d0b6b2cddefc32bb3d10b99551b1f2b12047e5de04560c0f877e09d6caa3f00ae5a0edfa89f28caa7d2cca717c820023100d866722deda4e53a71004ed93dad5201f1b61a7cbac13b814f97085b29bdf88e1b8762f867fcd42cef7360a111f960370302047c435bb50067306502302a9012962656deeb86662d3a9736df1a9acade8c190535df3842e8d2682f956b25025bede79cd4a1a87514bf7f15a2e3023100bcff36aa193a27486df48ab68324c0f58116159643522f258ec30ab268b802f9ea7b4f5ba9ef5b5e5b21779cf8c8cc910302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230748a0616e62e06a0dccc6d8e46a3427c41405390a823690a46e85f1281e7266bf6c862d78fe49d08acfe8060d38a82d302307c76635d44a6a7e7ba49d2ca71034dba78893a5d24dc5e25c9790ebbcd4f444949811bce722cb2cf09904223060371580302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230512ac184db87792cbb0921a77a19d503c22f3aaafce86e1cf71fc2a892e681574101cac134a692c99403ee759f42e07d02305030462586434b1cf72abc62c963889dd1ca5c4e8ffd0f9870fff713a6f9d274405b4eefcdbbb47bbc2a16a46ec5ffcc0302047c435bb5006630640230682eb38c31a33e458e13d704cc50f95effdf0f2adc60538d807c776ce2c51afcc5daa4475c2b359d25d5f204630fc6f702301dd607fbb81f287dea6542fd191da340a623368be3bef1055f27e6ff1c5b86a9468346f8365415f6c174b37148492edc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023073c23739bc556fc17d0aced888dfb1164cca8776869edf3f94ae0d1580e3ab57dfd3f7c45a0553bbd4a1d22ffd2b94d202307d8a6d72642c2e4e44fa1e51357c24cb0dc280efe9f7185aae817282de52f7913c77d6b739ca3db8e790487403aad35e0302047c435bb500673065023100ae2590ed7e77a5d149db565c61e088417703f405275dd0be63d1377fd05a50c1917a2c86686c73ef88c2e9128153f2ec02300505443aadc1897b5941b4d2278cc2eaacc812dc43f47e4241cbb912c72f3dd32c5af4629d5d6f06ab6e49e09d946d2c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b0fe17a460d737da8c29c995a4523e827f9e81bf010a61a5e6add1ef2c886eaacc3e6272dd988e84630b28983f66f62c02303ced085c71ff3f0bdbda34e699c0de72a065a0b86467d5471ed5c53d26c1d427653d56605ed139d73b0972d53a31827c0302047c435bb500663064023049001ee0aae24649979f63a76517a0022ef44c3a8ba80ec41e0cf9a87aa30cba70b7c55532aaf378463d579086965b3f023067990df375dc1c07657e023fdc8f7c1f06d97807ab266c19720d6c1a98734dc07cd39f9ef8db65eb37ea50d0af1ca8900302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100beccc3c13babef0796d0416cf69e106630d9ced66c0174924ffb01138213d0929a82c2078a91dfa23d964c97736b08410231008343d61b53cb3770128344fdd24f1259012715cde4c9c43396be5e1e2eb08c1cdfe0e168afad9768b2b2b1da0a7c08960302047c435bb50066306402304a8f0d6ecf0daf91eb1493fafc69f7b1e56a9f111bc99646fd0b83dcbd1c52662930ca6f23136dc2542fbb99ff8efce8023035cb438494feaea5c7f62277e60b7f8a2135327278dd80f6d6eda3f22d23cab8c2ddbd634a8e8d5b79690229a27e92950302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230377b2e87c5eaa1529a51e0e2a84c38e91a674e183358cd3ecc8fa100822714df9e67f39802486b7f35dad1acab787fa3023036a21d341483a0877808427349f25982483fd321000d92706c099ed83b0a9969b1db9d1aa3a45bf501f5965954f0a0ff0302047c435bb500673065023071c5c11ac32b763282fb56acdb3ab697b63a35500841fa3dd06e2990e310949a0f1c6801592305c22b00241aa8ce1345023100ab9afc7ed3876eb66eb8d442f27282ae63ee6556d1221f1e6b4ebc6904f10be96abc0963600fae3bcb2c097110614a320302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d9b7849d886999b5c0cfa7fabf77fe338ff9b9e2e58f8f19702927185cefaec2d50208148b09aa2dafc66ba3e88f0d9c0231008b28f8f9096efa232abbf5f368215435df780189f13163dc8f37dbde3bd20d0941ddf312bb50c861c3247af24ef87e120302047c435bb5006730650230653a254507425246f8a9654ce7e5b046f8989575aac43568530bf3d859d19741a7f335feec620da795b5a457904a953f0231009aaa91dc1cec67dfbaedadfe1538adeeae39d1ac4faf20b47ed82b4f9a52531999d7e9893a14d1d7633a8e48eb613a920302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100adc3b95ce172080390b9073f0f1a286a0db665ac8f5743ce46fb144c07e9c73c149f081baabae263319864cff156ad65023011d0ef6a2f235bdcd83b0126cbf1127cfd26f44dbda450c071f48eebd46b3a07a2a8d2066f94645bc5e6f722a8cebc050302047c435bb500663064023018f30e93ef090d97d43eb4a12a511d546b587b446e46e5bf86867276ae05220b8a301b3bbc3e03f2d1a2b2ff628b3e1f02302b9162b6752515737c2df93f9be6ddda5a617c419d327809acf8afbd8d40342a78a7a295a0ea5d5547bff451f2abb9290302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b06db41a8cbb344fefd3c55be9df814c563d71df959a46c04630a1ae0ad611abcd8ec9f5395a24efb8bd9f15c593a32702310080162a6fca7ef54c052b9663a001c549e16732a5ca4dc932180d68962463c7dafb53f4f61b10ad795fd61b440845fda50302047c435bb500673065023047a92da6ff39e71fa49a613b47782a298eddfa92fdab1fe4c9a869864901c388bfdd2c7935e172fb8c2dede06fbc4cc3023100a7c97ef4646b548b2b42524dea2ceb741d7316791b23764fc9abdd88923985bbd69cea30e28a90f5bbd7aa9c60da7d800302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a0d28f14123e21e844eb30478d3a39f1746660bb4b03fc58c436db5b5d9ef73420c9dc8986917e650996ca77347b8f28023038a6bcd1e2657721f6a4bae1fdb4e17b573b3ef986e409ad4bda5a85bde1f64f6f4d64de201e3f6c80fde662bc8b1a2f0302047c435bb500683066023100a7493662f6bc4893255b6ae42fd7cff2f8b7d19bb82e3ed8e3a568c406db7cbe8ecf23edf24d39333eb05a32035906a9023100f63382b0ed1c76b807beb2a7ee26283a31b5ac11803c68cc5878550c12cdca694c2e3168d12f55655d0a8790a3c476460302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e23b84bd496e4995aa2be3ad3b7c550e996a0a6133aa24c7701b860dcb05eb2b81ff39cb85ea9eedb71e84cf044d21c302310089cd2d0f65dd605cda7495defbc05542e64e003347be2c1df70c6c04d95b7338fbe548fc3c3b763e168b5bf752b7f3ed0302047c435bb50067306502301cd4f56f742327b188c78ae0ca31a40d02247bf5869642c3ded3025dfdbb50b412df1ecb73191ac7f85275a949b9a2ed023100de2c8367a1b62d7460399a799a0627445fe0b35b8d608f79aff4ad8cc5b0996f6605d16dd5492f068ead6e52e8fd0b350302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023005d6a86b1d1eff2bd1c4c17f326f4481c38b8a38b117b534abe98b5997f596c03e4dbcf59e9852af0c53f28cebd3a535023100b01665e63f0a50eac16b90b88c4a42d47e8472922fe3a1b616e3b8ae6ebe5965309d031b3dc9ba785c5d0d71486450de0302047c435bb50066306402305b28bd374221bb27dd138cc13099a16fc9088b9aa1d5c2e2efabf44d42971f766507d03f193c39cecb21b69a74823f6e023061d83f0e0eb134c3206069145b149b6e3fcb05d356fa9738d74ff8d73269f96a5eb97e8a0c393f96665ec6a9664ff67e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023008c31ece12c77e4c7749f5781e1dc75ee58b00f7a4a89e3572c3dd2c7ba6861bc169834bb8d961ad14e29259d9ed0c00023016180b0bc6c2a083f1cdc6d8af086b8f21484d5cc30aac54b80cfb74cda8fa416d674f32e17f2fce7da4aaca04238f560302047c435bb500663064023019570419459205f8b5ee33418656e80a214818f476eaa12604366eab7b2084211bab0487bb92b220355c18ec27e79004023016c8f4c097e910635dbe0871dcc7ca9a53d74b19ee9760465a6647a9454598c091e77e5c37219699358429bef8b8b6d50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a8371e7a54685561cbf8f587210d6b2e4f528e52f807ead8161b78019c39734d5fca2261622697f1a7c6a0d9d6578d86023100b8f5743fe086e51babb3210c3129f93eec366c18eabf2972de387226c6eed3344be99bfe1367fec5196bc19e7066640d0302047c435bb500663064022f49478b2db55a9156fc54644f2dcd25a61301fbea998dd188317195bd51c486a79f88d884afb72214848c3ef9cf768f023100c3f016825572d2cc0372c7e84396daf921f63cad8983505507201cf64a7d72c99455a2f6617c30635b5f2691e4287ba40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023011b3eec56365b5ab88186fc6b01e406c1215a664c5d0fc9589e804e60074048ce30dd2a1f0d4cae5129bbbdc6120eea002310098a3ed27843d284023360bd4e6f5e5946765d3376148847a4d1a606b7f58a92e8f7e14a6f7d950c6154bd7b6c6f675950302047c435bb5006730650230469d329b5bc994dbe2ee412ef174c9920cd7c1537534703b2eb0e466e554dab6c02093836ee1e827cd6b866036350689023100b41e5010159d4e3ae4be29b7aff21ae6e117cb574ea861ea9548d71d0f093eec9ded0665b7faf3d2f6c08a6900dc393e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310092bab734b5850264e91ae52983f593b5c08c17fe8de6b781a3612150a47c022300af5033f104caf5e0f2314fa9ff4ff5023100823d6f60fdee670ec2032e3b72ed607c5e3225347a05fb8581e5ceb89f17d799734a5da39bc5e1c044e381722b5849f60302047c435bb50066306402302e3d019b5fe5000ab262351117ae0ffd4ba41b300bfcd4634562687ff6583ade8bd3e275ca1a66a8c6bd2eb569504264023026bee422e265dc14be9c18b76c12de28df8e8dcc44ffa311625df77ec56c9f12b2948cfe4540c5f831f22a6a3847c6920302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ed4a15b41f386276cfa82acceede5682c00dead56ad8187b31185c1aedb4ee65025a2fb11a49f051b022596b383a1cd60230365ffd0600312b773cb4d470c24855a77ffff2b423ffe2cfc6592c39da10ac0a8762f24da3bce1198f6444bfd919e67a0302047c435bb5006830660231008912f6b579af3ee69d052fb7c7c282ca62568682c357baafeb489e04ada88cba452dde704c6239c8ca5f66deb19ab437023100a042a096ea90b719812b8324b67519ede2f9aa0e249ffa455faa2f40e37c92f868167949a8168ee91038b8bc49e6c6e80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023019d903b51ac5d377c4e9a535aef386d00e081396dcfdc4d9748c948ed1f65eb5ca35c488dd4f966724866447f8c5f6ba023000855e4dd831d3df4b7e2e5f5a2225b39145d775702ff6a200a40edb2c6173937b9f479c34490c6f0a8a7831acf2f7430302047c435bb5006730650230613a201d6717a467a6e18a1731c37736d1c031ec72b3ef6d1f3d711c5a0e23b3e247140147f0caa024b27a3534483a8002310097b789631fdcfe910425ef4e1f1496953e277820b7bc431928b07c293163ffd8b75b071bf6619d36fa1352dfccee8a330302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302ff3f0479abe044c739389c4632af00ce80883899c9a0c00c391094236514f8dec532a758c47c0fdfc2e9dc5e7fe5018023100dfd20b0f7793de70bb6b7d5c08b186cc744686d62c1e553d78c52bea71c7f960e190632e5b7aa874dd63282df51b766e0302047c435bb50067306502310089b99552f65b19ef9a656e3eb89167d0219577791fde78d63d92233e0eafb0e9e7c9a53e76fa98abd73b98c8018bdd64023072efd18d01bd86a71daec67b0718ffba56b56c3bc906f54c4edb81ce6c7bcf76c4b99b62d350d89e50bb95bc879781100302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023066604ee6e2c7ad93be916910668cef892530a68ac26bb434c112b3298da82cfadaad9dca5d64c8113f8f31f39421554a02310091332b78469aed1d8d14bb84b874c45950af5182f7a5f0abfcf18744a965a6706a6ae29a4a532978a8c2e3d2d324da290302047c435bb500683066023100eb20f08ae8b2ce2ac1e7c93c21b656cbda0f153d95b96a805599f4e64ddcfda77ee56c25bce824e52d77b50c3c85120c023100b2fd8b99cf41e5a29a5163ff251994cb7e0a2f3239274f1bef68af98fcadf2b1bab832e353595bcf2e77b40837fade290302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c1f6075735488c5913189f92c14f7868d5a6234ef47236aa90334889841dfa265660efb2fd0b5dec941f2bd8b100dd9c023100b56aeebbd89f06ed898a65f657b66aff7c9d1736eab4ebc1d01731d2753867a5bd1d43a66361300dd65c95c1bed5ec570302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023033b975e46621699f5ec4b54118136e9f786a80312cf68ea17882b0d9e81f3f622d6c6692dd2d22ae4f45e3649c9f90090231008526876b7d521580ef69919eec5096d2644a3b50752c630ac3b2bf7190b0f0796bb38ae8fda759f08a29eb6f78dd86270302047c435bb50067306502304e502e94d6ef89cd975d2c6942ceedce0f79fa0589b7ec835ab23bdbbbe0e4b6ff8903381c96bf268277baa94c1e33ea02310082c6c7e2c397057758ee1e3d05fc77e25ba5b76bea5a8903bf7e7ef18062003a4eb88ef2708d14045e80729e0cc87c3d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305cd19b82f13fa8aa70b1fc60f7ef8fc5dc9abf6ab59a9623c62869c354ce44f4fd4f2e0f0b8340dfef9307a5884e75b902302898a98781059eb35ba665561ccf7b85eefcb91ac65726ecc8c6bdef8c083b44de21685cc5095afc382600cc0733faed0302047c435bb500673065023100e34ee592865ba7182d353ec73fc6790b6ef52c0759a3527e1739c0da03e542d4071fe39a06bbb28225ac282a6f8ed91a02304c12d33ff43c06a1be241e1e8ec23cf857588e37407724c89ead00665ece12f768e6dcc826b98a0ef7f29ecaab1399150302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306160742a7819be957781ba5d1a0298b806369d6c3f77607626c6649ef850f4d54d9548c544b70001264e9ff80c4f2936023100e67584b0fc376f73302dd3b34092d72b94e37d7942e30647ee6c7b7fc3cfcf2fa4321252091beac715a8861f4fe7fa710302047c435bb500673065023100eeb2c7d543cdd967f5d7be0ed6841cbed6e002cb468824c89d5446f15866ddacb54a1d723f4bc66e90087d34b31dbc6d02304831e0a0a10acc360e4f0f689f0480ef3c6db91bf73c55835641c76d77af5738c4955a0ac7667b94453a05e2c7859e4e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f05b06b4b484c9149689c4e7658b08cc6889c7286b026fbe7297e3a66decb2919b5a539a4b44aaaea4d0a62d6dde4f5b02302a2c972ac7e29b7ed2b7872cccd66ed80353933bc483fd48e2903e8247356a19e5c711f63ca631819a10793c7bc6fc050302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023042ac75b0f2c6732a82f898a8c2023e2f2c59d516bd50b3f31087633cc8e5640efb4e7eac1859496eabc6357003024f13023100986ca904dbbf8ffe49cbbe1efd20cafc8d95253355d3c124a25204763f73ffe661c4576f484eb7a1a1fa23f0a69da0cb0302047c435bb500673065023100d326851e53d51e590b6976a7f807e8a85a353f0dd4060ff33fb7c1207ad74d90e3c76601a15a110dbc1ebfe07a36404d0230678604bb6160d61d04cc11070f0a7457e5a2ce4fd6210741062894a48ed3b8fb876e61c16faed9cdf9b88a5afae21b620302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303bd854cc611e1e5c327bed9235e609cac54cffca4a273962e3798de2c299ebf0b48fb7e5395c86663c1a9e86db06dd1f023100ee2888f8018c152d218830081a21427b41e1c23424a3704c302d2a73a5df65919d029a727f8fdb70461e3d367e0bdca30302047c435bb500673065023100e59e1d838f12f59524e69d426e0b4bd64b13f4a967f96cad37eed5aee2ca5a2aff3e6378a04a4ab1e8a28bece292986602303e193e3a5ba4eb292c0727d2fd0a04842871f89e9f8adad44738c53cbbf255f037bfa46c74471546081fa73aae708d010302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009ff461a18459000fcaf2b8edb4af4329e60de24220fa700bbed9f7e20d821752dc762433a6595d096a0b597e6b8157380231008cf72a869e5d6617e4accf64a7a6046dde5601bf9125442d3adc9aed312c709fb1faea20f2e02b6572720a19147a577d0302047c435bb50067306502304eb0e3bcbd232e879f61778a1701b8c9f8f0bd80d0871415d5b79718bf5f131d46d4677cf7a150327459d3b3743cc0ef02310089435c0427fb30ca079df950ba7b296ab3a6767c4efe677984f87b3f8a8797f2199e0635567f4f2cc0a895c55672333a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230351fc544308afbe4ac04f95c32c65eb34f27eb3175c56a6a28af341cb5ecfd8d6f2cc57687ad4d70474d507b5491e4ff02307dd82a1784e9247064e4a5cbab316772f5fcf4a638c3c9a8dfdc7eb7ae0cded38f18479617361c0de02ddd1100f02ceb0302047c435bb500683066023100dbc04b2461b50eeecc03621598e8bdd9d0ede5939c4111aad6c934d64359edf96f4105931466ea1025d612819fd77c4f023100f904a9c823216136e31120799b407a908dd0143f5f9ebd0c002585d9d12929ee90e118c3b15417e2aa814e5338e0e7f40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100db574d5005981a5e76b8d940ff4050c2e6f4562278849997554bced7c80e3097704e6c08ac43dbc336451a72fdf82350023100ab5431d93d6f91f0817cb5655e79625513f0e31a79736d0f60e2605d339c38464036ab9512a8ee59ba4ba3f64d504d410302047c435bb50066306402304abbabd978b347b02e5bf34890c8cbb2201fd30a7fb66207a2ec388740f97cfdc0f0cbef109867eb93bc974ea536721c023048553c6c1b10d25ba111b04c3eae85782224a26816a6e2bc78316a18fb99c7144429cbcd57603d108c8641e0e65ebe630302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230027c524483e95f2c2d6f3abdb9dfb98d7c1f4722c932eab3194ae8d02891e456bacec5b0d76fb263a9e9f5817370889a02307ea3a623dbab481194bad72c0fc50da98a92a3c635bf726d4ee117c22ad272406edebe44e9cba6fa5aac27decd29adde0302047c435bb500683066023100adbe0317bac53f95a41553a771c02ad38e572a429ca6787337a8477e1f126ddb5f742ed6457abbcb8cc275bfef89cd4f023100b89c80b39b47d7ddb28361638dc71dec2df797e0477f60d15366ccd732de87e273deeefbc93ca825bf5c06cc074acb420302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a9e1fcc60cc027bd7cc54f215ff975af8ae045329a48ac16bd6c79b7857e14fb2bb820aebb81d471b11e1d32a1361db702310080ff58d3fce545eb3a65efce5c48f1debd7db567d2a1cf8eb24f13fa116b1d744af50f8824ab5c895435cb83969c19bf0302047c435bb500673065023100a597b43505b7e8e0e7d78e3b0d4aa50a7f27a187ed30393e44e39b89e79d801ae03a9a22e021f852a116d45c970a76a1023027f3a5aad5e0a63f5650da56efb6a8fce755428bfd3ded9e407ea80ae252bbe36693b739b50de67aeb4c0e568f502fc80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301cdcfbdd25aa91b39e384bbf62c017488254467c15d217586e38ae7a0d289d349373f8395886ed29f82ed3a495be42390230239f2062ff8cae8db3315d5d9118a00fecffea2175bb519cce72ab26b45806ca025ca3c576e7d0dc83404bce8afbb1ea0302047c435bb5006630640230744e4d06920432244f5e36dd3447ee4574ba4f05934e787a470d0ef391878dae481ff9734ab8d5877cba43253df169b802306d6e69feaa1c70db5bf58f972284a7d250d4d08cdfd400619d279a0facd3212d8334f152f8c3f1aaa24f59c83369ac680302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ec969b07252641c4e13346e68579f89111ddb97df19521b0ffa19af66296f06a4c69fcc5e9e685b62d0003c2337badf102305aacef62f749e7fd9caf7cc488f2c6bdede52ae9cd12f9dad27c058026d5166b2664ef83be3604642481667b4a55e89e0302047c435bb500663064023045f5c94fe285501f1e87750a33610e285d26fb200e5b14157f726a23265511d2588626d9103ddef8a3650c9349034fbd02307b7dc9ac9db8204c77fdc9426948204ff7ab84832517cf5e691555487402842f18534cecb3269436236f3d4976f13ab60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306a82ad97e86de6aeab8a7c690c128cb8f44ddf14b3d620bd2794e92514cdbd9dfcd7b2d905fd0dc687bfb91f0e763a1a02302e4687fa573b628027362a4ca47c772378d87e6d2366beddc3787c59a9e75ea7c821ebf45a618a795309a2a46d191fa80302047c435bb50067306502301e49f697076c5515fb14961c3eeceb6db663c0433ac6bbd0bbd0408ea48c713bdd0b3031c8d294659add77f01479b6ac02310080f3387cebbb6962c310932c62e84da56757834e0689e3ba42293974d0a63152741be8e513ea24c3dd6e0a11030b0c770302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300c1e449f2ba29d55bd2382fd06b609b237a1d30760f259e9537646f6ddde72c8b19ad39c2c1fecda20d7b01c9de9ec3302300bcaa6522891577984c2da3a9c60afcf6e4def03df201f91b83b3609db3dfe250f1ef3d088613b3e57ca54aa33b989f40302047c435bb50067306502303d4ecda75d6d08306d4b8db136a178e13aacf759ce6830084186ddf08bc80e18e8480b3be09456e4cd492d8deb51eb3002310096b1b73396e0e9b5dafdf9f83a58dc70aee51877c5d0164b7ea3a52f6712f7bd53e7b8ff185075fbd7222a57051c3a4f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023014aeaec84e02ac931ec7702ca3eb58e754b98d83c8fd154042d131248049348c75ef6cb5c8bc62231b71d2aa7d4c1ffd023100d7aae424490456eaa3f23c9239612c3b21b1116087313ab477071b607e257636d8cd1740a8e40c9e2d89a9cf9c576e3d0302047c435bb50066306402303cb8ceba83eb4343b03c4a018897db1d953246ceedabadf0d4bdb4747bf00cf9927ff04882dfffa219e7c3867da0dd1f02307da090c964ea9b8a3144484a5f18df9852aab1511ea57761cdc402eac05f5192c3ff06cc27e42ff13adabed6655de80e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008fd4715521d81530d21fe9bb7b181ea7ba67c7b8fb507c53de6efe6533cf9d3d27e6532f6380e73ac88312c855fa7d0502301a640f338fb9d84938ae927b87ab1bf4c11e18dfb7ab20a2a90b82e50505e3cef812d7102166b1bb867ddc0f4f1067030302047c435bb5006830660231008eeb2ceec239fb6baea7fadb14a36a0f59c6d5d3398feb1ddd130bf61553aeb055d6471d0533d46d487553f79c6b15ac023100903dc0241eab604cfb3c7a9effa60bde7ea5e266faeeacf9541c7f0bb0659de0a9d95a776c2d4e2517db2cd4663229170302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306f8547d616d707d5deb756d6d28515fc8ad6242aeae45afaf6d4aa74f7fdfbdde4fc062e0cc7d8038dc685c38e947930023100d70f0e477810661afbc0d9781a68fa859d3cde964d21279a0a93666df7c6f0179e827b460168a56d922fb9a13e695faa0302047c435bb50068306602310086c013a5fd4c1574851ca23bedabb0d3222d83ae58a02d6eedc0323b593898f7a8d2a36de6a200e1477a302c25f3f1bf023100847a1b536d521304d8cf68d38a8783643126b94833739fc27c8340612ebde598f259b7c480af67bf7912356512410a470302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306376b2c1f012e544e23681177faa4d4bc76a216c5174a5127aaa72f830ed9324c23b28879b53230023e85ed7e94be69b02303dd5907db8bb3ef01817405e8e9d9587754a51cb24b60e2185b9cb8ff601139d8798f13b65486a3f51f566b449011c3b0302047c435bb500673065023100c2b600f13a8f30e277110141199d95a3e2f236f00ed014aee25ca894984101ffd898406759e26d718a6e6058c6ad9ee2023025fbc7f00e81a29a231d4c1395af5c0e3524537317f545c4baa28fffb619f89f7e985ca52dfcd7790f2a2612423976690302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301c7a8fb1922bafaaea433f76d32e014e263d0306c703cedb1aab5a9b79a32d980cedafc9893e0c7230ba2f4b527ae15f023100f95e7e08e2464d132138056452f73a92e5197b472d1f71307829cb84d1f62a36acaf6c59d3db0ab0bba00b4c8b725db30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023025cd568e5092a1167b8ce9764124062cd0d6e0231d1b9f90f0a510295ddb7ed5d4c4af4756196a4128cd98563ca8ba9e023018121811a4a736108c7794acea42fa7b5020273a121e84db90b5a090cdad86e3d0dc33530f8ece6a264174a8fe8baa190302047c435bb500673065023100bf55d831a91b177234bf113d61c8ccbd02b3533a86fb8d2072767573f80e38c27aa80293220b3b93933299e1172e406d0230123217eedc7ac434d73065cc31d4903089c750ba93a1485047f51a41ce6accf7b2e43ae6d53d1b1a08a9d675ea5eab490302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c73c6f30597824a5eb32289001a5c356c0af3154509cb2f47d9fc2747318ddac4fb4ca5b2de890d6e7a9b98df2a1620a023022918a5aceea2205256ed6a8fe9f9c1fa06b5d8fc7f1d615451a9b1603990685765a63501e4ca5cd26dd5d00d356e1a80302047c435bb500683066023100992065efd15a00425d04129053fea99bd3a0dcffe3a3196179ead4b3de2ea28d21a07998833737494ef0af31f23c07b702310090f9b653fe19c2992dc59a6a6b67ef0adce12fa18ecdee2e9dcdec47689694af270706e5d36aaa6229147a94c23f94960302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ee8495aded247324a0ecd01231fb707d29a77586c3d38daa924be7c6ffbe242533440c3b8f6831c00488dce93c180476023037e68408dd7bd7a33f5f6c20a5c7853763f3ca7db4a5ab76fe4db44c9664d08c1b9b47d201d1d8ea82dbd557daf80a780302047c435bb500673065023100dd1847af991e48c3f05defd9716916626440068bdccb3a3f18b02db5ce2f2aed15ece7dfeeb0f5da9309238459adb2840230384926dfd354844d656c7adb38909cc92f2ad387dc876e8993cb643de608df25072d6a66f7e7f826283b42233fe0e3d30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023016a9f15f811afdb85a52e52b45dd92e21d1ea1bf03c634e7688235a9f57da7fe7e58a1c94b53b8545b622a079c58563002305d4ab2001764e2fe6720016da4e5832f702faa5f8fb02996d50e244827acf6f6fb61ea285261e99b56e634c2cba5e08b0302047c435bb500673065023100a849222baadc03bd7cc38074b0f919dea47a76093192dc1468b8f26e82f0c1761152069c57be3f87f156c3c14be6b76b023029e33b9ff9e57cc5c82046ffa07c409c8479071820ef310b92fce8e68a4d0c4541800756e2db145fda9311d9ca34f1770302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008655af452b96fe991f68c9fba57e6568c71e8682bfb0247b5eecd658ce40c66ab2a713ee2567b952467d9c937e027f9a023005501079ed3e804ed9fcf4c0ee3c5982a565b29801668f800f9cd1613eed54ce7463a92fef36c4a1c008fece5063a9310302047c435bb50066306402304873e9680637a13fed725e9d1dc7b8cac1307feab552bcf0310aa05c50e4e9e391eddf30fc98b5d0294af1f680ce91e0023031842dc301fd4f1402ae015353adee315f9f3d533afe780318d2a828e2f6c2177c296c126f908c3436762097a969da9b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100931f2ec4b11bffe67a6f3f08f6c797495a0eb8f0de357ff27e672314a8231b76199cad399573e4ddc77c3b2bd8e0a11702310091a0c14fd19777cd3d72081d6ab27ba6a58a0317bd049d99f2d8d08c5f4822617498f1fbf1d6f9b3d260e6bb4e3d2f640302047c435bb500673065023100e2a160cd945de33b56e53742fce683cfaa270d9f1481589400e775832e32e19aaba83303c0db3f87432c7c326cdae31b023052480d0cd441ae9d959b306458fe1e1bdd6da21e28c74aa17a587fe6f25fd2bafc5d6a8a901f66bd1e16511896402d3c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ad5f2b0ca4e0e53c4105135dee20bbc9300691d1ceaa526263d873e5757689d3f5ceb91798f0ec49776703f4906e46c8023100fd8eb7c88aec49d2606f105acc1791993f435ed5a6597cdea718a8602f8fa7732cf0f1c724bd6006ebb1f699179b32380302047c435bb50066306402307c7c0cef496db0cace9fa079c799ff6847403c3ea29c61a3d851517b5938db37a12eff2521475a32e3a36819184e37e40230255068af879b711c8d344f44a242e326e6e858be1766e2a1151039974b8e84edaa694a902ce5d8f0a7e65d0e0416e84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023025aa85cef2f4677aeb6bf6196c92f4c042f28abdcaec33ad503c8500e345d96191b0054ac2ce27ce5c7d30725eb067e8023100c87de56dc6fccd5d8b65407fd6a58a7744002a797b4b0e27423667ebc94eb3784440f1e7e3d8e1b651048ee3e1584c490302047c435bb500663064023021777ee02788941bd0ccdfb25945db5911ff26c721a6d5c45589f1b180d7b01cbf0c40d8391af4474ab13cefd897835f02304e8ea895969c205e46d21669b0f21b3aaf1eeb09167f7cca4acf1c65fcf2f2ce2fec5bae32c922f678288c46ae959a5e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100db379c358dd6d215e5ed052cf8cbddb739b9ed4181d00a3e97fa823d19818a2b03b12bf6261954627b958d3fef0e6783023100f0fef4efc92f6d935c5a1e12f1fff51508b2b9b11748eb4822126bda80f886b261576f284f4d83f6159fee68880d22ed0302047c435bb5006730650230347e8ce778263199c1798e443c3bfbf903c025b6e7fb7c0dfd1520c7c3691280616deb4f04686b1010448d7cde649ad5023100f4d39f75f4b9824060b137531765ba67fb4f81224cb95afa694ff3284964cc222add95546e24859c321dc8e9c4237a920302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f651d2035d70263a57212759dffb70c125743a82eae755368b3d1a2a3cb0f4f90b9e62e5064e4692c821b3163603f187023009d03a8503c1a3a2c328dc4f7d2a95e04d9a7ecbb955a62939d677801ac1a457c03b16aaf8c6966f98bd17a60139137a0302047c435bb500683066023100bb04c815666db375c4b0a7f738a47135fadf88128f83fa932f86c8084aaad2b113bb334d4846229d61bd7e066e8e486a023100d66c1d908dd4dd3934531f360229a5c0b1f6519058084786a5970c64e08e7b22aa845365d8e9aa4264e9b5a57d498f240302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100abe61c2419bb8491ee42d464d38991a59062824df37889f92ca9d0a18af04c70ac398bea17cb6de590dfdd1f6ccdaf7f0230460d7a466e60c09a64721795d3f82b480cabf79c76bf43c4af6d8344097bf2b7fc5fb9c8e026c7f6b3ea9449f3c8188c0302047c435bb500663064023005ab574e3a923b4549440dde686ddddc1c66fd3f10c3f2eda443aace9fd8682d40df6d92cc0bbf180081e64042c8e5b5023012301130a84b23b473564fbf0db5c0820c8f36196ec0731409a586445446768f9fa05fd3abe334fa1e31f748e578027b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b171a1098730e69d925724f15b6e4ed851a0b20838e076de9d234b9b2247253124b8e58ffda4d7e10fc1c4255dd8d738023100d3c829f65ac53b7dd45c7956b9c2824fae5928c091d980f006648824c1e73c826af53689e7aa98a63348675945755ad70302047c435bb5006830660231009e7385902a49bb2dbd280f575b1aae98db9b5287254d36fce9558fd47a740d8d7bc6bbe372e6c5071ca724ab67ee5421023100c61088243907a9cdd1ec459eed4f2d7580abd35fddb6582f5e87eb14902d1743cac558d5dca0500a2109a9a6f2e8ea240302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023058ea7b17d951a3144a879c0e3571090ffaabd8d95a927e50364c81b028fdac53ebd75e3532ec55398226d2b84d7b325b023100f2fc1dde4ad7f9e1ea0da57fc7cb1c2828ea676db4aeefb727b9353c1532cd33c2bd984362f44165d21a9c85a649ea030302047c435bb5006730650230327f4a193db4c8903a543bc4ad0589661cbea7dbd48322b135bd16e16aeb0c119fef23888eddd96cb6bf9b1cee88c8ac023100a742ef2f65dc99344cf84b0beee8bdedfde57c870972b74f58595ed2606fcc49797c6e500ec0b5a082ce19e38e619c430302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d7fd369788b04666b4ce58d01db322b5b87f7a2f4056fd008bcd9655f5b18b8aa2a5e8e18f0ed8f716645c312c16a95802306e4e7d8c1a3bf126e560297ef75e04c95bc3adebe24ffc00fbb8a683025065cd24f50b470b2ec5cd794b8d990cada8de0302047c435bb50066306402305a440666a50767003cd2c429a14d5353575fa8037bc2b8b5a6a3e6e1bdf8a8852460b1466cca0987784805fb6ce29d0502302d86fa0bef96990b2ee882fd6464a8c7d8e9fd80150cc8c15a16fb8a69c16ff989f12abcca0f011663d5464c0df9b3db0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f3ab76887c34eee833f8c22809fa6c5e8a2559ac9f817a206d5517a5a7ac2e2dfb40fa28de1e42795794a70d7693431a023100d61a3cc0abf77296d81f8bcf147980bb808712de67dd334ed10c4b98cfd21baaade704a696a426dcdda565e081c89a090302047c435bb50067306502307a1531c532bda4b2679b97d8295bfb4de76614b08579e6bf6ce8dc1c4d56e0170b7340fd1dc0d6d1c948ee5827e9afe902310099cdf22a684b3415f72290750ba0a61cb64b6bbb13f9561cc80b72085ced29db00c54a0c1913d915ddc1ae83945b948a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302216c710b59c5e0d458b79ffe83c335122ca4d7c28a0aee2780c3aa646e5838ea778b889e746f2d9d9ed4daadb441f4a023100a8d9f95cbfd68e2c1dc2cf876c899cf790c218c92834e14a1fc1b0f3887308f79229d2d2629379a0976262533e3ca3a30302047c435bb500673065023100cd0c18dcf19742f1cf5e740b896a214df717800a1813d56bafe0acc2c5a396aefb8d72224cfed5b3d57b825a90a35241023008a89f362fde8764e195abf7e3ad8251ce98b5c9d4ed411546c4895c835613324bad834f41d30047a271cde2009da9270302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a3c0a29ed5b6ee9875ab8d10b50c17ec86a5608a0f4097e0a7f946f82f7d5543e999884b35ac389210f0cd8c7ad73303023029bbf9ca3feaf71d626535f9d68cfd3fb2a99ab122fd9e2534d0d462a8897f31aa2ec8a508ce3306fbc685853681320d0302047c435bb500683066023100f31a2239ba3abffcb776f51f61846199d19bbd98f2fe4463502bce679d79422c9c66f482f0bcdd1f8bb09ef41ea57e21023100cac8f25ac0170652f342ff8321056bdbd46374521084c176682e1430624152c1344e9c5d122e50c49f20af0341263e880302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304866a96cc180af005a008e0bbfa82022d71b361ec21c6427d3e32a09995b8dc292e095c7948c5675d724a6605f466ac0023100837fa81725494b66a47ffd99a31bb5b2eb146917ded59f1c5eec61484c3588ce9c6f5f03b9dd7c652e0d69425ad3780d0302047c435bb50066306402306dae0e4b2e754c30394dc81697f345faa3f361493c0e10347b1990cbcaba4a2fa7b02e1e2e3cc5e3191a82e5b203a37c02301c19f18a51f4aeb9fd66208762de46ed778d66e434656106ae2c6b52c0a5f1b72a31c2e9ebb73fcdcc7d1364d5a5bc640302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305ccfa8bfc49e1e4ff83f5d09b070edae16a913246aaeba0a96b3bbb7bae49453cae722cba395acbdb557fa3a386f7c84023100b793feb2775dc77b070dd8870413d05ac8b1d6184a1464a51276dfded672d574d1b1e6408545127808f38f443ee457f30302047c435bb50066306402306445decbbc1739dbadb3c6f30d504a1fcfe38164f809fdbc7a7ac859e10095173df488989482ef8bb6c6566af54656fa023033da1fce948c03eb256f9960ea0997438a18f81ca4a6f6b9277c73329a1fc505caed77a8b3c328fe7de7835e63263f460302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304f63e5a4be29c7664f56ee5b62b1235c68ee4ce3524c024f2a81de258220561aaea0c3bbfdd7104a4fc9616bea65b0c70230476df4fb8c69b028f96f993998bff53cc874f7b532ca2b1b76f8d79a8fc93e18225c1ad581eba43fee4e905bad8355ec0302047c435bb5006830660231009924c67d62de7e9228272fa8be6c54c7120d02e6d1e900ef062224b3f67fcfaa3a70858af0c964402455938a5fa32a5a02310086d4927316f9da9d1a84f783715c3181ab732a66559f4862cbea9dde819dac40bbdb09573b1d6979fc564245b12f71e30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e614f50f974e783cd504049a7517ce28817b0782ce05bfcc904f9c89174b1e092a46df584dce20aa57719040ac59bc620230386a2dcbf380cab6b35568c7a8cfdf4a80abdffa6ff986ed52b6ad0690e25160a47c53e9d639bd8e52aeb15e7c3123c50302047c435bb5006630640230303268f00644ffe0412cb96a4418f712282fb7c4c4f3f80848dc822a55f6378cbe1ff155584ecd961a086c206479cb5002304b70e52dac4288625710a19342f95c1812950ff5bc0fd9de7b6385589985296a18f7a56338b199731b61effd19849d920302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100946e09a374c6f4c76ffdaade8b19a65db6df63fdb9a452249988d15309bb15f5dc6fb2652337ef7d0255ca87b42ce52d023100e89a20c13f185b09d545019a987c9c9d3e6d9920055a1e64cdbf2d587d229385503f485b88323f25f36d79950d6773a10302047c435bb500663064023071787e09bf8600a33e7ff9a9166cbade65f01e178327b2ee14248ce1d2e0d9309baa71055a46dcf19fa48faf609f6817023030fd7b305cfe30648f14fb71a51d947035f44d8682513a0438fa8640e754aa979305e69fdb6bd8f91faa8ef1534e88cd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023022ec267348f8e990b84b8a6801dea833d59409175dc9eae5dc0df6d51d248f13dcb32272ef655a8a5530d3ffbe7e104a0231009bf4218431bd8d016e67d432db9531c734ecafa3d8e2be163441a49718553e40e0743c13fb2f63dda169a62ef3351ddd0302047c435bb50066306402305b6edb31e6cf57442dba682a47b0c32659dc21878895814c5459e53485e8eed3192baf7489edc695b635002ef130da4e0230132bb572ed26f3b33edfc4ec2ac181ea4aec037fed12b143468cdf0b75f0c976d0425564efde160cb384400c8d14b6440302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307ffeb86746fc8b2dcd434648cf73dfd741e313cc07aa5aac2156509037257591b6379b2217a7164e8eb6e697108964410231008166327c553cb81861f1d2842136a5064d37ff7e842bc31aa5899742b4649aa09f3f62654179189f453800f8b39ed4fe0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310086291461efc90afc8f57fa222901e84bdd53f14e442b0733ee7d5bfc1ed254692396a0cd865ac5fefbf15e9a0e33defe0230711a4b69f7a73567ecf161214b96d45391c462cccef2cc7a9c130a9ed4ec269a7c03df219fd7afa919718ea74ab383070302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ddeea62b793f0f8c55fe22af12dd05209066cf9f1be06de1ee01dd40b350c3ec6e309f7fbd1bd443a2c578e608b799fa02302ff5fa37baf333d5480c6c3bb986e3a34a4524000942c5c4200476cf956c7246f31f4d74bf07ad013b121d16348cbcfb0302047c435bb500673065023100a007948fa98a8a9141e0ac3afdb684ee3978a292fe1063e4d9dd497d1afdb516241d47b3016d3aefae28102a244799ee02300dc7faf4282aca1fada501a37e8202589e6b704a67686ab41025b658448d04bdb9cc6e0ab648398b47a00b29e14faeff0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e6b7b69212d8a48387fb21804451ba7a540240ae2842a4c39d14461d2141f7d19c4569fcfa11ac9319393946e06eb0bb02301740ff354700846fc2e61ded1adc48def4fce5433732b5afa83ed52119986cb90b00d85040425f74fa4c730df5d2be380302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c43b15f2c91f37f184d3fd6a3df517d539738ac5abcec12ad17a30f47f236fba9cfdf503870c3c345b78b4d3dcdaf8800230687356a6534e1fd6790dbc466f6553a63316e7181ffaefca51a998220836b6a42d14a6efac61d6d2f280ef86cdf654d30302047c435bb50067306502300c3078a355d0c078e46fc6ec82f5eb609a53fd88e085cefc6facb3e3084f1f7eddf6657c3ce99182090a0858cdb20715023100f3becdbf5ef7c61b470268a97b761ab78b093b5920c13df8330a203f6ba54a4834c6552b8eee0fedd6bee6d50cd028940302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f68c66f20569e9b34bbc590d902cf5bd885bb2d6ff6cb3e95eb9c6c5eccb4120ff33d9678653974b246d58c5e13974240230129d759dd9ccf841cdc7c837d485505271ec1450660a7c2ca91316e71b4a0ea278715020f4ba9468ff121b467bd1922d0302047c435bb500683066023100b71329d3060244d6c7506b4e1ca671f26741aa69fcd0f1838cc88f9f6c4da7578729619725500b7af533f157c5c9098b023100fc25bf32516c3f0ade4e7036b2a05b3243c33978a78f7b741e5400f978084ab5f68e24ad4b6ddbd62b3c7e26ffbcb57e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230603d7fcc2a42559e40545fd0b3733b46d24561f793fda742fad9c99303e3d6ea32b89e6a61fc20c898f1f24d9bfaafe00231009e4f2bcefd677e08a7775eea98d3d4eedb96dd6e122e97407cf36e944361e84b506fbd76a65b160dd29ea88d031bcbcb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230256760af0c2f04dbeafd0d9791645d8ac03b02700cdb731f5111e033318d0c432c0f421a12313b763699e9f2f0f801eb023100d2775d3c7a788cb625131c122bcd4e34585f62be219f1e81fcce3043791aba837a430d7b2a4e8c13440f6a703c5c33100302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fd51d26038f6742db60498b31dfeaadc83fa25c434ab5332aad76602d348d40acf19630342ba06ff2a51c0b67461726f023100a6c9cf339328fbf817f669eb295f745ea5d88ceb375e1c2499c697f5861915ac0f28bafbf620eb7b67de36a1fef944120302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302d126c09754e5f1ffddd70e3ad70849595c870c1dc2844ebfbf9b93089a794b3a006ecad5c97cef8023983d6c5be467702306b30c24219fd6cb33ba5ad803f5548d1bc5062e895ba2476413e9daeadafc227476c0448b6a9273f7991524b702704300302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d954d295939ab42c892b8f88dea2508f7b68f9d881eb08e3c4eab8aba7e5b38a857b6eb17dd26f3d2d864b9b3bea5f94023100994a02b16e4772bc5abef32ef95e58a1a590505eb2ffdcd0a5e01953ebe95db3e2729f2d96c66019fc910f8dff8ca5a80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230345cf0ec11c0bfd9b3f901ff193ceb4f8b05702f75eecb84b1ad4e88c3f016fcdd6d16dd8b0274e4980dfb5ac14296e0023000bcebf80fb07fa0fcb78f02b488c771c503fd21a534d63da640a16d4aa660261a874c6cb7bea2c255bb31359b4b45060302047c435bb5006730650230605394c13e533d70ac5c872244ddc60d60130262b4f739a4d792afdabb15599e93efe60a4bd4f0e4f3e9f3078f2a7c52023100cf0714303450ccfb508f3ee7c7c4a5cca5c06d5c8bf26cfc250d9b54dde6df6481f59cd29cfc1be1d92c6fb36045e76f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023075c33d0d1f83c128579d1c56327495dd4c79bf71045415862bc263f25fbc40d512beb20ddd04d848b5204fb3a119560a0230051dcb1d48d5bd3bd1f71525ffb54138e7819defaad0a1b4633155bcc78fbd865737b8f8a14615a21667b5598b5a12850302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301854c0755de21787c418df45ccdc2f918c63d3a44fd3f0d95741e2b59e1b7785bd86bbb5a6f40270e28000c3a25fc4e102310083ffdb60a1ad4aa89af7a40922a33170b129afbe36b26e1ee65c1092f313a51b3b778995d9715a4d10faf1a04b8d3dcd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e791122fdabac7857134bc86e98f4e52aee563203f50fdb5d22a5b01c28a1b01fb26cf3c168661419b5addc4b07738bc023079a66bf0dfdaeb6247dbc3af06518bf10b2130f75e63930156de2138e223f70b571c849ac5546da9613376024fa65c010302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305fec9a62a71b07961729a3a41fa3ff2b8b1e007d0c11bfe8558d410580075ea1509228bc9ac6c6bbacd0f06924c946ff023100ac24d61bd437f5e77c367984c2a1063c60f0498cfed17d9ed833f76d46c030cbf7be8106d887b7bc3e7f8405242d6da00302047c435bb500683066023100bb4382230d72907132733e2a521c7ab6df3f5db1975e6f64b05516d7349eebf7d27faa2027e6a0441e3e0e04ee968301023100ce602744047151b463ae9c9a6c5228530edf1ceeba9ff82206e56f5e1ca83ff2d4231cc6f5a5b4b4de6c4adad435b07e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d11cab516b71a88686d2f70ad56a8d8f48e1c60cb1ad0542c6c22c7c8de1a473d670eaee60d7d468f35947bf847b1abb023100a42f2203325f80ff59947746267c1f0ee54927988b1886aabdf1a1b9fc8c0b69524128e0c564192f75e01e2f23d1a9340302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302ffdc2978276c10ae5c7011cea9e3e0844e59c89e6ba2e2dbf65b8e9ff08819d0c8373d7d328f2368472f663e5ffa51502303cc3e4e05f21a1cc06b1090513f4205410f645ec676b57ae0cd5fa3bf89e42566bbe47ccc890adc5496894f345f1e52e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300b2f0d653fc16e46479279de4e3914d2307fedfb11f10a107e473378305cf58163269295f89a39d8c3aac58ce490b536023100dbf5bc51e1538ff1746d074314991de467f1bff65f05169e2a25162ac4534b8ecb10bf3b1be6ac38af56aa2868259d1b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230550280d1a12e8e8ec2ea837a95f40a69a412f08b187a792031f9e0b38eb10e46e66b76386a393e03cd18d6b6499a7158023100ee16f4add0d73630e843926eec450610706f36b39fbae9103db8b9043be953f86f74a0150934a8ed233bf107745475e60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100803f8c4847f0c9c6c0f86ab9e8c884ff3f03ff7d8262248680033a9d878d35ea0a8f5e45d1c5c52c7a1067016d1aa0a2023040d8641b4ce97ddd767ca6bf2c2b747c93c9e936385abc309f1186a53a95a05f5e949cef5ca6894c6981fd3400c9035f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a9419b51ba3dca975203698a3997d646be3a64205870b1b4b1957502e4123490b4ed989e81595a84ddb0b2759b9df080023017f00249ca24a80719bad11fd41ada50053f19fb7cc08ac80f8e7cdb6d3c2cb600914a51b83f15be55b96a0d44fb899c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b404950d3860a94d170ccb2b5401d096082dfe1098a61dde31eef7774a1ad3f57afc1a314a46c9a915ee25ce029d87fd023100b5efd24c1b5801455fd29ba388b6a6c000a7aeb3c061c95a3059af57c6b8dbb290f60f201ee4d8d3dc8d87ae3196d3ca0302047c435bb500673065023100fb2caae7593d93a6cec15042d10b23a15c6b26aa6bac234655a0b36c1db5a037da4db82b3ba13d47245f6531d4043d82023063753269c50f14063fc2581badce5392c8fc8f2441c0934aacd37a2448d6e86410a09ce5cd41ec3390a927c2478d33580302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c76fd923e25abc197c6c72fb3e28c3a47ef06c66b0b2954faf8137b76cdac60e73054227ab0c286e4e0b77a452b9ffb4023058245a1af8f193141e70b9ad77b89f6ee105bebb82f7923082346e0c9e5d8912635f1e85b2442ab226b5416017f3ee410302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100dd224a859f32d27345d2c30240d19a56679a506b909dcb5c0a6fd4a7ee5cb6d2d26a5a1508275acec13ecdbe3b8ffec8023048e162635cd89abcc13121f5c44715d00ce5791cdcb91cebacec37ed4107236beabf6d85f748db56cfc59d751e4dc3020302047c435bb500673065023058b57a77e1e50d9005fd65820e244b8e578093e64f28f9264b7119abdb7e8ef6be4cbde40105c8ec281b1102804d26a6023100a89576d525783616837446f5e87113c48166c2427c9fc95c7f30b1328742485d49ca6a1f9dd69c959567a7a4e5110f750302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100daae62cf52f9a292e400716c0753d61b0042a028bb08c3011a794ea240fe8edaf0d774ab27cdfc1c84d85b46b3888cea02300589f5d1236a2bf2ebd227e7b6c3639d914299c266e1ce32712bd18c174a1dd1b8fa31859f250dbde148366d2c3292570302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fe919632d6c5d1e2c95add256f20d2f2c61368ea124812f3125a078cc33329080a5aad36c1cc5553d6d8df54a681c96a023100fd0acbd5447ca8a0420df9fb5f669743df5f9b648599b4277493b378893f2f5086eb9a8c776fac9a3773397f8d7897d20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023037146a3b56dd51621a3b5524f6ffe0a061e6f5913567bea0fb89d3dedbde685946bc3090762f7a849ab76f18600d0de902306a91b3fe8eb8495b501245fcc2d7b24885aa838e6e2234b7d3021ad232fc35e573d986c0e79a0532ab467d8b895f8f400302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cb7dcae2232e8906e79a17da762a34316fad6768e3568fd93dea8d9b778b7030fb7b0eb77d6d9190cebd1f816ea1bf1602307f410fdbc1d82a0c02e32f4a061bda6a2c77336ab837ea1762aba16fcc7e1fd9609068de45d8f3aa31581864a1af04270302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009612dc39830cdc46b7b7bb32f0535c2d58d7bd26bdf62888f316a46f147e8098b01aa83d9befe872f7f562a05904c84702310089ccac098a4717091aa26cc09126e38ed7008da7bc33b64947770fb78ecad676d5c7b02dfa88d1e5543e361826828cda0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023034a6d5460fee3550aee4ead9aa98872933f3c64c0deece479ae20f902fe6b46dd6f83d405d72054a86a45a058a89e3ba023058a1546f3bcecfa87beb6eacb6193c59c6778f54969e5130af6da9477b6e9b337e76c35b9898bdd56fc0b16941cde7790302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230189f3235d7eb9e4901517ee83381ca1990f9a3c665b7fb1eb3a379968597662c48d8afd61f1ee471d18405bb228d404d023100a52a4495d1538e6febd53059f2b481369eab26dac8db708f78a3b277b2417baf042af42cd0695c4e284e5e770a9528500302047c435bb500673065023100b2ed1b9095a79f11c79498b95ded65e442e37237d2f40b3ba2fac1208c67e36b782152c79239b21c3b8ea70efbd3faf102300f155bc649df4470b488cbb6a56c22e0d5717423b894e33f8a6f50641bb39b4af0c9521fef01b999b8e4971bd43b875d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023007393846e2e778688b160214f1af4bbd09766a3be23f5de7330ed9a400d46f4b31d3932fdfef745f859be376f3e5950102303e8827678592b40ecdbbe991025f8d1a00e0f3d76fa8f82a5373f1966de6f2bafbd4d60a6ab0e405b8c5f4c837e174830302047c435bb500683066023100a5d068e6865a530fb87e95ec5c11463fd9777082084cecb647b1e76eed8454b934b7e6e31c93e905b624bb8a6e42c9ef023100904b0ddbf59f52f6dabb21e28c1e99222ff48113077ec0c65b7d72e6c092f2a40d5f40a6a0e696785d61a61204a67d760302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023016cd1d371aa012093d903aa77d62f5375c807e47228a06a5b82950aa7c8b4791d4d52644707490075bd3232e2d52030c023100e3841a4d5776960f3e6f8d1a6246df38d18f4ebd029c54669172975a6216aac031c5598320e4e9c929a0387374f73dfd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f8e0db5468af97ecaeb89d5efb6553db1677a0142bb4caed9f4bf5c4c625dc2de9327d93bf5cf7bc2e9917d20bb8c6330230203f58225f23b3d8cb410893166dbbc10ec6bbf17be656066a4a91bd9f1441a98681dc30b20c5786e4c77e98a47347f90302047c435bb500673065023100ffd02c4e69cd37ba3eebc84040f116e64174d3f587ffdb7e36468aaafe4da9235267c58f8c25b54b1bb5a879c16c5d4c02307580b2525fd9527c3ab4edcfffa91de8e911fbacb40bc09ad34fb94e5c9376b2163e52c5252f9d0bcb617984534798280302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230014d16a2190157206ed13a54d4382067643b812bc9604e1437f42e6bbd8b63ee499cbb27783ba058677609dc42c61563023042d8a98daffaff316dc5d0e565595985c4c5e1437cedf667bf49b6843c7ebb4bfc3f795c4ba6545ead5a7e9e038ebae80302047c435bb500673065023024b9d02f28ea01d60f9c6cc0e1808df817b425dcd39ae5168578b67c3d1eda2c8153d0edd0af9a322f7cbff43e01db50023100f1a3de65512dbca5a1992520d24f97000ddecae8c6fc8e61507f9b1822816f305b5eb42abf8f36e633bbaf1ff03d24160302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ce194a453a991b90c5e74f9b74741af04d07023bf25bfde978813cb957116cc925d0f670f012286be78acabcd2fcc0dd02310090eaae4107c98ef5e591f40f922e1492534160f05e7fb8efd417805612789d858d7850f9b8f98584875374a3f049ed8b0302047c435bb500683066023100da3f8dad2fb8ac7b14311b931cf32a8310caeb8326b87bdd4cdef1ef3f9d98226fa9a7c5bce10b163d2399cfc93411510231008c536b9148ffdddf34b0691c9995d60f09cc4385625e12919a995df43d79451f3f6464c64797e5135032ae6dda6379350302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300fa04dd0b27949b322cb80c9bd59c41f64d11174de5c604f7091221341e23c98aeb61c77827352b284f7eb1d77d0c502023100c3ea45e2bc7cc8ab58d9357cbe59fa8f94407f9f56c21537a2baf1251721e37aada795edd2110e23c2c8df11c1516a580302047c435bb50067306502306786ea489c0fa3db830d02bd339e71cff9f7d5737a64b4ba10327cb5b2eddc6f7893971f6fde0444cf7faa0fce9c37a0023100f5e88a581f4edd1c21e18972f3204bbd8625ab6c03188d0b794c269a1bd2b46b30c4fe2829547a274b8852a243fcb12d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230675c73c9efb0e1fdf8c350ddd946d9358c01ae2f3149d354078ed191573a06881abac181c9b1f4eb8427c679b4734a23023100a60e6a3152f88b4480143c74994b40246390159689907852cabac94f182570476413548e8110eca8c78022c5a91308d70302047c435bb500663064023009d69e8e9dd2d1d69a7c944ed93dd4118b28dd556d991643d991e6327280aee7adc2b2ad39dd1c95cef83b72365a0f97023006ecbfde7edf300ba28420fd7b48a379d5e6d5cd10cb16490601aef0d65c8e85bd4e3ab108c90b7aab7e14f0185f524a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306d948e3f1784b1e6f8e26db43c1a3f0f29da2312429e93df81c9a73d2fa744bad292dee70f642083e6ce9e783b13d7b0023100cdbd28b56cd21f2f7e3911028292252dbdd722af8429bb7ac0bcc396e74804e4bbda61dfeab7639dda518d9588e95e220302047c435bb500683066023100b8bfaf92912b249d5dcac18f190b5a682390820fe9477f8629ddff97dddaf77a047a088696850d551131940562ba0b28023100a8bdcd57713f0b3a20429e2d0d47f0a314ab2eb08e4b4039241301cda026ae8b2e797d76588c7b32273f3e843b7cf5a40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009b79cb8a5996a751cfc9c7bcd76778bdf60de553aa4f15d499d6ea5ec04750595c19f604f2e25ee04253a0548fc5b5a80231008a80bde2cc79ce8270861eeb95f399fbc7ab757d802d1696004984c9736cd390353f6d0854814c4600e2e9101f3b5ea50302047c435bb5006630640231008214de6d656d624852e2ba60cbefd96d865200aa0b08e95b9141635b4c6caeee1d50a7bfe757f4f1e3a4acba4a604678022f50a34393f1bfcb942c8e881bf0ff6e2df86722842b5dc39ce9b926c56ac05cac3d034acf0b06d9da20f87ee0495c230302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302fbaf5bdea03a3cc94f918798f5427dfcdd0100930fe486ec56946c7c3b53a6bcb1d6e68fe7966b8f31af86de3f82acf02310088f637abe0cfb31ffb40cafe6a0c94015d24ff061907dfe75728a643424bec3b7b6781137463a79aefd7968fe302acb30302047c435bb5006730650231008f74780951414c041f4f76e05ff733f27fdbe2ca3222a89e6c16514a56ca4ef0b368df222f99a8c646a5b66869e28e36023057ee6f40dcd83f67ec12e0c07d233729032c435d5caf8825da71b0646b8683155a2849dd7b3f4eafaed2701d9951d6b10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008ace932de2e7c381399162ece9d816c56d139895a8d04d044b620b07fc94aa725d9f6d668b9bf6db16f19361a3aa6e5e023100853ecee6c35c28809cf8b5e9f12c93a845bc1a3a11e84a4043b21c89ecc57b3b6ae9410b3cb32341140f32c5f1b310ee0302047c435bb5006630640230668d1a108d5ac48001e5121821c7b07ae28b27ba5439dfd45188ff757f2ed6baba7d9cafc9af69f64b844f77d2da30c00230256fae82af3e0c87101dd336758d7c246e86388776eb246ab4dfb99467dc8c74ab2f21308d891eb505f8fc46030f0e420302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305d2315e33023ef57af40f4a3b5d89110f53d38efce3c9b6e95934574189aa5a3332734fb4ff6045a7337b1250ccc698b023020d31f79e05f79d2fd208a64092c342e54a2f1b19cd11000a546104b4d018cda508f07c94e396065ee8e0c5dffe604fb0302047c435bb500673065023100aa51c35e69fda5cca700fe1ca039865180b097387b00433c2d8ed0c03447d3b521190610feba998d5d57078b39acf59602301a8466b81812a3a1690fcef2edea1f94d029784a5982dadcfe0715dfb3e95860c0ccf43bdd4f97314bd2e8b863e0a87d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008b92ff30286cce34b532fd480a8d0f96207ed4cc65d455e4de5383303340ffebf525ef8d47f8301955c1294cf647ed9b02310097308b1d152207cda6dd2d5f3af6eb4a6dd4b985cb923bbe7c412419d051bfd681acc3a25ea72b3f2b08d2e2b7e2e1370302047c435bb500683066023100a31dca997af458725a533871333cd08c828e9f1591a08656114f3e53819b9487ce75ead87a567354e1b396a39c6b50a102310084beed6afe3943dd3f3615df7650e8f0d5a9ab66caf5b52d29e99bfb6e14a40c1f20a09173ad405fcb19775301a382890302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307875060f42766ed72899006c025a4399a13a2ed1fd2742cb0f01feefff171d5e3638412acf203d41e22f96e5ef05f35502306416631ea24744223ba6ea675e1fdbd59638a2d263d5f217e38fea7d00f48dda81c2033a5074124add39b4f1e1384daf0302047c435bb50067306502310098d9375dbde7f7f583cba02a7b18b410ddcb91538f4347b965ea625d27cd4ee77a0639ba333498bfad72dca78afa9d8702302a57ff4f3561422a8d88b0ff26b41a241d1696fde867c6e62fbc18654b10ce766868aacee50ff040e40962f63dadea2f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ca98ef34008e74a55133c4b32434f98c053348c852f3c164cd7b35433f08b7435ad191de16475355b069feab5309dfcc023100ea718e80b036f4c940e2b1a4cd579ae25d1e07c1164ca57240474cc5d21a06599348438bfab5f22895a98c2b2929f0f40302047c435bb5006830660231009a50752ae7cee972993cc5aff95a235c03f9e6ed36f8abed5d947209ede8a2737a73999559e03907bbaee489b113087b023100eb135d3ae87d1e85f16cfe8c377ceac5c00b8d1d9ac83f8b3a8491acdf2ad9606a7146cbeced6fea6e388607ce54bec60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303a5fa4e619977f309cd59b87008e108dc624c313350935cf834827d58102456e65059c93dfa6d3c5947e94f8e529902f02302159ee38b0598e899d9b764116eb5f5e38cb4d36ae75be8d524c411cf513110322f403e1596e690fea97efdcf432e8240302047c435bb500683066023100a794b6f9f670fcf504b3553315087962700eb31352f10255d18b9f6b50e335599c92d31107b2421e32961f94430d2b85023100e191a3eee6fb38c6222ca3ce67573e29eab4ae9c75c98269d9bd2fcbbe02b328cadfbf50ceb6531d3097f559ff7db8a60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301b81f0800fa5b0ae93a42aecc05f0982c62c7d2f8bc2eabafdd38c10be44956600313ff89bcdce8473596037a6d87621023100a338e91601826ed8f80fe86c4f08d2cd6ccdddb96e27e9167ff0651481ebdaae074d14375f826dbaf7ff05931c2c8dd80302047c435bb50066306402300dbaa23ec14bcd6138611dc3bb7bbaa8d5480888eb597828c0793df0ad95afd861d961b718918f1e54383a3cde257a9502304dc0e5db337b8d19694c6ca22bebafc5c7a34ca60ae81d6f1f9bab8944c11145f756f81fd84ce494fca4d6ef0cd06b860302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230082c9401bc0f116112143b3c6d73babaa03de495235d3f9767c01c22b10b88001eb2ddd8c3fa45c03ce025e77de3d83602304bcbcb7e3d2d4777ea57f978f9153c03d892c0c6aee0d9e25ef06e9a315532310a8ee2199d0ef4c45bd5c89797a14c110302047c435bb500663064023066b18400273fecfa258cedbd0047225d234965a0998b0cc2c6620ed37cf09c40c3145b605e408f3622d0fcd306919302023058176399556caf1aef6be1ec81c102af90fd0650e1ef446dc72c306fc1069cf99b3b34760f4e27654a83c36aeadd9b970302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306e7547513bf6ba4ff9b729799c5a559af707e2e7afd17ef6d672cecc29908866f75b65ce9c11f6a346d1d4cb25b4250f023100d54bc74470d95e44116e5691e6ea8ed8aec8e1adada194d85ce1b542929d6f68ac7523ef2c357776634f1711c3a37c1a0302047c435bb5006730650230197a621846348a9ff94d1d1c8a12a0a413d43df393934102ff7c77403697546b39ec9fd51e582c6eb0186449364de7b70231008e716d4d4cab873e34d143e338e64935a1cb5a8d95efba68d91c644393a8a3fbd33c6743656a258313786b74803aac0f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023058fbc4f3013818a5426f95937ef1c3dd5a76a7a1b34c5ca8f8ead2b3bb4d49690caa5125870a7b46876e890525cc4b2002310099c1e34d7592ca359c0b66cf5d98a98422365c757e3bc711002cc21e707b234eb9e0cb0204708fafbab33df7ae3be3270302047c435bb500683066023100b53c3f62d69733113679101f509a9a9a37bae047632ce41148e3aafbaf51d8c2e68a78c31fcf5036a22d31a4057a3fbf023100a2db22380803507b0ce5427425093220fc72e8021e702bb01f9de744501db1a271ab26ba4553c7f36ac9fd553b395c2c0302047c435bb500663064023028559016f7e509b87e533e52dd081e46bf805131dd6a3283d99381888fbc49382c34b724458c126c8cc1081fb885e63302302a2d2b72593d93a08139805efebd5572626a1d0ccefc323ac39bece3089ac2c4e344addcc2d9f1fbdb846875854903580302047c435bb500673065023100a9ab2e162e3490eb3c17095a530be3d13602f45966bfd5bdf51b2eff6318330969a05f42bfe4bcde4df7c179c13df21e023023802426a7c7c14bde985d1eb378178ebb8e868d133b7191fb4fc878a3f44a949d4796d54871f3e178c34c1d568b8a8e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304a78e4ea31ac7ec34db24183148dc9b47b79289c5dab883deb1aa6094bff40f1779c7af4531d434c76b0f382bffeed8602303c82ae119085cd555072a6ff396b883fbde1505cdbd50cec5af742374983fff682566f648774af1ef38f460eb30dcca50302047c435bb500673065023100c2ec532dea63f83d6e3833d651fa9c5596e6ee1a09bb4e5d15f0d464dd56046e562d733eb365f5d174768d91c4243297023010e081a3fb27856e083a095eaf33501b01ed61aa20ac555f3aecbe356412d288eade075e355671ef7f8fb29619a299890302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f2c6e1bb39e6f3364d2c3d75fb008029ad833731fa8fa5d6b2c741ed1e5c67d6a99c83caa85bd9877e085739a7d46ad6023100e187c2c9fb76817a3fbef34fa41a90a83702b80ec6e930e53e52b5780a3cd9e2f723c77c1db710c4168dd8d8303bd1be0302047c435bb500673065023100d1624b408858fbd15ff52a8386823adf538cd5e18fd0a6dc0ebf65b016b29ac2337ed9d54eb4741b3f73109f07489bbc0230347156ec3b2cd64a821ab87574d6ccef23f4489cd70fb9df5d7172ed28c4e5a78997e36b472601e1a6b48b065ee966fb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100837067415fb6da271dafe084da2c8293c6a7c1e7886d042307891a9841583ab7915fc96445617e597c389b63d0abaaa4023100a073e8a62fb5935f756cbc5b5f352c371903bfe5479aac75ceb84b0631117ef31ad9409de8381a54742b56ac921735c80302047c435bb50066306402305d23af1c3fd160f08c895cafdd9c2c8f30a1e1bd841bb34eedf49c85c2f9e6172ff0a8257807f7f93d1170dedbbdc9af023046f245e0583c9d13025bd75b05ec7d217369965f544cf61e7aee3d4dbeacc59eeebc05294a25615f2123adf3ffef1eae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100df648957ac14212d51f648151fce48b426c36be9079f7e6f29995a00a359f8b1ef84584601fcb3c77686d4e2082ed9db02307066114b086ca90eae43d9e2aa4e83495c91979a972a2600e0c7bbf8da7c46be9c65356f863b50020cd6065e1ca215d30302047c435bb5006830660231008b7d7d0948e820d4dfd93f32e3a490f2107e5faa2b72c0de682fbc555da4663cc452dff04eb3e935d2f5d6c1de99cd620231008785170ebb987610544c26ab13f9f1f028419466a03aacd78ae2370a6e5b96b52c17c607118bc6304d8751331b3352fe0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100821667bd648172e41a65599bcde4efad3fa431bad12c37c6088565c66f71b4e073df8628194d3263d3fa19337bc861cd02302c7f1cdd9268266dc66390276911df89a561c8cf8f4ba351117431b8173777ebbe5ffb43da824d053cfde310e6838d7e0302047c435bb50068306602310080bfac72cc03a82145a361438826ebbb1e6c6c8320ac14d1ce279a659b91e33978625eb389e5d9747f4a73641e31f6b6023100efb211945b5296d91a9017c264ba5243739f7401c7bb14dc95b3c1b2ac17fcc7878388e4a56041560b94c28359ae02c20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b9fff3c4dc33eb6d376f87d364804009160bef1ab5b36d155d32052c63c1690a899e283a0e3aaa1f5327ed764eba8199023100f86538e1029fb96c1b7c5e55c6ee0e8a404ff766f64d2fb2c57ff13ba372304a8d92237b76a1145780bf56eb517d53df0302047c435bb50067306502304ba3dd19d26a625d9086935d0285fdb7d584c07acc967787753c7fe8f857cae81211ad0a9ff7e2f9a5a4e75fd224161202310098f2fb51d00be1bdae15ce2fcd43a03562cebcd9275d8dd82dd4f30c17a5ba6221f0e8a5990a53d2e81ec881dd3acddc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e60304eaa8c12c7b371f3dc1f55ee6337e1b2890b7275db1caa8310d25462c05aca32627afe645c70499af4e713644cb0231009a63c13746b2543d67d957cbe7b2c6c60ea27ec894df0547704a7c9356b46a709a6938b7446e0be03acf3964772548450302047c435bb500673065023100e2e523e09955578cb23a5df270a2dcbf61bfe735aaa1f86b919cb7c4ea875019c8ed15974fed2dfd56fd9458d96cfc0a02300da7925e319581d5c1722f334fe8bdd91b61dc5b9be73882440e1875cf7f3eddc5d7eb33066ea2b5d5a53905be5e74880302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100cf152678a118cb36e7b85c8e620d72859c163abc6c232ef0f0f183c6365707bf8a4b26b80e156f3c9fc59c86396b1b57023100f85d388845129a04344614c7d2c689cf56332a5b3d95bad7ef14730af3a6837ecb6298448e62a3fcee4ca6b9c955fde80302047c435bb500683066023100e3f8be4091688caa1ab171e1cf81c46703567d23a0549b76d772e15fd11c16b32f18fff388d2c816dfd5ecd2584f17160231008ddb6afaf954ba129a84db0e38b81803af02368c099473c2e76b5a733702fbd2c3abd1678d3f0953d7be9872cc85ca950302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d3c9847a2fd6f9be058b7e38a05138ed9e45add8121d658f4a74750014c9d80692e6e11cecd5bc113c27e3e77fa81547023100d73c8f58797a6e81763b0c72d35841748f34670a9136de19f56dc885a18db748209230c943d987dbeeb6d4ad969d4cb90302047c435bb500673065023100e50c4e108c04d9d406e20d74b78240f25c31b34a7b2222dc282065f28044f6d41d2b4973113c66bd4791f07ff271d4e1023018221027ef1cc2f1cab732e273254a4bad7c057f7940b6d19464e49dc920df436e7801a8575f847d7ddc870d78bf2e750302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023035d322dbf3de4c6c261d7bbf74f8b189da9443c9b04287a01f4a8d5e63a76e6e587b161a01b9c021581cccd767c87666023100b96ef9bf2e268f92c7d11e7786ed90d20b8bf64316431a21fd0057d388780df3a8435f7c59b6e46e210fbec9f6b5d48d0302047c435bb50066306402303de3ea5057111ca0bd977f0170df1874e1dd1b1ddbe1dcf31602aea9e673283963dcb2f2400954f661fc16754fb811dc02306ea30fbffaecaa01abcec65aebf68a387d154e3edbc7524283a84dcd37fb7263743e1c45ec1c5d75aab4fdd226e74fee0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023023ebc3fbddd08a5086d1a5d19c5cbddec9b16b9eafa0818cd1a7f4be45473c41fd8eb10ec274b79e07dc03b42a530976023100ff7195fad7960a2f2918393a0d4404cc33358d9ecbe6aca49dbe3cd3a865cce2bb195bc70a1ca18da6c628031501cab20302047c435bb500683066023100fa0a9357eea7cd1fd4190397869c562dc834ee400c9dd05ce404247ed32440361db77f71c00f85b27da24f00aa96f45d023100fa346eb5cf032ad7f5bc03bc2195ceedf2bee7aa9807238896577611c43d87274bf72e4a6c01d7383c88b9700bd70e090302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303bfcd84656136f77e800abd3b6c4f5ebe861641f50dbb33459455e75e69d2b074f463b724c2094d9f6ebf8a95386295b0230646894a4305f7dd6b4abf6aec511fdf09137b84e3d77e39847673f7725ebb698dd0401d65ec8580b21ce878b8a2d06450302047c435bb5006630640230144d5d3e9e2c395116ad4481338d88bf3ff7c5385abc156a53325fbf0216a5fad5b6cb59fc6ea21942504c654063d76f0230273c35c8693d844152fc158c5bf02e65ecce04b700b752c3b31e1992d8dd00a7f4b6b1e491f85bdd1d4ae557e2bbb91a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023029afa8b0d89dd7c29fe9993295d97a6bf3765a82669dd4e7bcbc0c59d9674cdde4eb554a9ccb37853796fb9d8e73b908023100e94b549353b8799cdfee8a010eba51a4cca184bb04c488338bd1b32cd8e99520c00449b10e40a76d15fb9dd7920b03e40302047c435bb500663064023045c8d95e967b7e264ce79f1aa2ead8b1e1e324d2c3367d4f83800fab9998497d8b744b65fc73d68bf1a874ceac091fc402305610d924060ed7b8f2e6b296d4d23f0eb5e98b3e81a4d247d55775109cb2291c9c4490152c74f59ba1fb0a125ee106da0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305d871ccc88d3e3828f6cc9866cf452c56eeabda69480aa88682b2b1b0107366ce1f2fce7c05778c6232c7c948c56b32b0231009a680723ff184217762f850b0bf6e28c8ea99605f060a3c801fa71ed20ff9673edafbc17841dc52a71defbf6e12cfd080302047c435bb500673065023045ba8d08cb053c2b6c9d3bd33e9c5bb84fcdcdb24b46d9a298fb8e0ec8946694c194d08d0158c6ead6a8a5478c867209023100a14502d81a61696b8ed8f8c26cdeea32d27ff3c745239f04e234abae61ffae726fe13d0bad97dad2532cbd2cae79ecef0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ffdb3790e067e4a4915a72c17d7e7cea7a84072ca044592ea33a69dccddee5968a0c932993a18c3e1290bd66e76c00da023100f1af8d9cac63b750a42ff11a28bf94d167e52a30be47217a4bb713b897205f476e6374199ed2ab743a5b98d90a744a970302047c435bb500673065023100bf9f53b7ef969f09e3947138dbbfef1bfd5273866b1e7409a1dc074e7d7044157fdcd1e053d167656e27574f7345b34e02306f91124dd77e0eb4aa163654f3c0f3f066ec33b3f1a2e36554fe33bc606dba4cfa29a04980b0968268968f0d6fcf30560302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f965fb47195915c746529b415830a5cc26d677a319f81ea6e87cc182629915a90fe417c30f3fbb9b6931a08f09ac4908023077d41b58b468d9a9a937fbf902bab5a7fc08065b096f59bd7b48cec78150532bba93a21392b6f8ba2b5a0fe46550d08b0302047c435bb50066306402306e95532dc51c051f541e0a0bdffd078503e75ab133a54cbcdff0f71a4efd8590cbd2c20d15749cb090e91c2e918a274c02301907f2f2aebdb1dfbba0aa2b8c991faa11464673752646f19d7d9a067a837786277fa5776bec9c0182cda57a16c66bdb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100fe7fc87bf07238bd3461212ab8a02fe9e3ee6a08bf32197c3cf94b278e18de83257e4d87ce93f67de031a6c036530c6102306a0308b079806e5eca3ffae7621f0e5242e23d0dc24a7f57aad97a1e48578a933bcc16f3b6e397eb3ae98f6776730a910302047c435bb500673065023100c88a9467018bb806e88964d1db014c619913fa9939fb1b601c6cf302585b702e6da668c76bb75831a225679260689f2e0230530acd1025cf9d5df6080592a92c68c1943cee1e03fd83a300439c3cbaadc5afa559376a1b0e4ca9fbe32d00132d54070302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023025bada8d80ed6c6ff15537bfbbe53fd623ae5a3de18250023aec83fe253270ee0a3f9272a280b9a2a3214ff53c1a322f023100be5f24d84fd26e3fa0472bc21fd700c6cb2bca2d971d34b605828013fd84232ec3bfaa0d3ffa8f9024417d911cd99b8f0302047c435bb500673065023047dcf8e740ee6c5c4054a13a661ba4f33bd1210500d101513d939a8d5d48779d80db7389ce481baa4f03ba3cdccf934e0231008c1df2007c6d320d1ee27f9b68220f0cd2cf86de2a701de1b95cbac76d40c885279e31e96de95c997de9ea2350833feb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ff6f1fcd43c57ab68c067be9ebc92e7682ccd2e2efe46244fdd3c7a0bf26cfdaff780d6eccd08090bd4a57328422f0b2023100d1a9f1440f375035e7df4f91011bc0e9ae36195936140ed6bab86c02093c2ca1c134381f09d0741acc6677511cec77ee0302047c435bb500673065023100f040e6e8904cb86e00e2cb597ca3c164898a9c3736c36d519fe54eaf38e6a7c12748242d09dda8458c264cfc4c4b71e402302a6a1c062534660868a27e770576eac27fba3e442ca77766b6e47e00563334ad644bdae6926922d01213390325c6a99f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023005e23f4071e1a1ff9fe1ad427e169f921380f8e0fed7670246aceec27a46c2dd29936f2dbf83b382402a888b91d4a21c023100d26b0c714223beffdc455c7f68f283e66b86e55ed20f1f01bd61f55caed3065eb8b2d51229d83bc522c6311815d16efa0302047c435bb50067306502302889485c027d6ab1cf1d0b23f2ffcc24146c24d5d7d1cdd9583a0380a2ad43b7f95f30830772084f2e2a49e87bd3eca1023100c8ad67ee0dba885269fd53cd2f36689b314e7867b5e27c30cccb093975341e1b7cb16bac369aeca893329190b1b44c4d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230533b8d936db8229750a9f181238df93625d7cca9ca81e77f85ea5f33676d35393c8b9e5f18ba21f640c26f6c4c38a2f1023100c98d83e8826b96168d71254f1f52fc2d9bee7a656b389aa704f27467a302187827b4f862e55fbbd3a90993b0a78eacfb0302047c435bb5006730650230037b72728e215ec6da17d066a2faaf2df4168753f55c5e34a6599b69e60130df6a06cd853d971205426ec59039a03190023100c5c53f1fa042144a2f5b3d783f4457bc503b08e0b1f43e3272ad281ceb13227138a6cc72e1ae45f9d64b60a471d9ae1a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100da1f89c6b30a7caf85523c6c677a2d6026e242c33c15eff5d8283a109b368fec3e2c278865f45d0dd757f175ac9d39bf023100a37423606e814cb8c69d9241eae76c61650dae9ec68b4e12c1c749542fdbb2be300d887547c62b5a541cfc22489996180302047c435bb500653063022f31d12bac0b0edcc287c553d4ae66f26e8465a5b2baaf136fb2e0103ec0ff34579fa0ed9ecef252c8760de587e69c44023059dd63a1c3e1b8d1e1090eb394831a9cf14e0bb5ade95a81f21d06ab6cdad65ef7e7312d1bcaacaf4f5a0adfa672a3910302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023043ecf77155d50da04bc401cc1241aeec73893cfba471a3c4d971c0cf8e4b3faf9bfd60cbe1a26dbe5279ccd2a5e9bbff0230657772954396680ae45a342df60e31e8d14d87efc8120ca9611a115ef3a7aa5576585484fc700d628564a0ec837ae2f00302047c435bb500683066023100bd21f000e2a547be95b989604272fde55d94a2807d9874ec5b19f6fb95dd77410c24e42ad21be90a7ca675b668ca6913023100fd4616ca4f3192410c619f8c95bfc19ac6a5a1ff25fb23770009a3a8d84ccfc3d2c35ffd16a1f291efeb8075f0abf1640302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100bd0110e1aa838155db6a4e8f02677ba79261fbdbdcd66a2bf7cd859778fdafd1b952ba222f0287de15b044fae9f6e948023100c75b7bca7c37452bf1b7be958bf88edce1daf48f8c4ee1bc99a36c21dca6eb7d787cb6824c12d82750a3ddb2588585110302047c435bb500673065023100b9c679c3cc5f359332eb93112c96a1caea117df8f39d386fda5d520a28b04da36c448307e9213fc36953841b95345e5c0230251706d1e878208e66a20b43a3c13fa3aec23ea5825a64243a8f73fe5cd0c7ed58cb87bb2e303eb7a832e027a9cc5e3b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ea4348120239d26e4278c7ee7b63a076560b843300c4d3f9966b28076f793ae640fecc5803fa1fd5eb8a41a8e4053b8c023100bf7bfe96d8ab80e700245bc5300312b9c891a2ce90cc95aa00a7012f00247e953b5a06e7613285d67bd48b4e9bb0cdf90302047c435bb500683066023100d5bf39d4abaff67f3066b5fbf163f9aed1d5043e21bd1bc5bb898289fe16975e82779e982a4832d901324ad654a17c3502310094b316830311a87f8323d760df27be5ec20d23256e5a5407f1b8be916b42a238b78cabe375af6f96165113d90805c5c70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023006754809392bab3d58402c705286dceea51dbc443f18fbf9a1c27b9834addb8c495a2380dfe0e1483f5028a8417de482023100995e5074d0e3627439417aef6dae63b6b25abb4e52978c6a0dd6769455730f5c5e083ea5b9022480dedb9fc9b67a089b0302047c435bb5006830660231008be2c4e1371b7791fc26c30a41b970a794040c1e2ca109ba4aac5df45d11330a82a8d610461609accce4edbc5917f4760231008909095b6081219ebd2e2466099f72e2cb2a7fc6b873fcfbc3749f2a8c10375d9aacf2fd91cc310ddf1883f2797492230302047c435bb500663064023075962d966d537b9c9f95a48811e29668856b06886c4faac2b13bbf8609cd2d162263a4e9ae8022b1e0deb547ccfd6bd502305e908f69ae4ff32006649176d8a2bf0b7ace09d5daa3d2bb93a0be5b7fcb8c836e76642b39d4575f4a7613f0c87aed710302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023072b178aa37f32be1f63cc8acd925272ca432512865997c8aaa388aca47e952062ffa1e45bc7400ca3c5890176121233a0231009044b0ba3ac7607e9925f4c3a4c105a4c679c4020a53a45ba473ee7422e86d0ecac805e05976cfef7ba80a53db5e16b80302047c435bb500683066023100f30fa3b632cef1679f128f3a0e30bb934771879e23688ec911e3d0af0d36067be37e5b89a979ecfb58aa2cde7e1e9f70023100b8c8d4b09e09c5b86c7bb581f870aaa8c909410cc673cc541ff9a89fa2ac15574d846e7bfd605c4f1ec2a7aa3f16547b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008e81c1c6149fef690f68058210edf59c860481cc580f0a9b6b7fc8648a7bf5feb1837f51766b12ba3b5dacc0c84844ef0231008594bafd96e54ca85806d59755fe93be2a8f9b97c651a63591f01246f597c3c62eb2852f1d6354daaa04331fc964f0880302047c435bb5006730650231008ba12680346949a66e39010cc8cc089aead55cba40d3e836a8fc152006c87840504b5ad6b2ce04bdf0208d43cea47a2a0230761c71a1fa4e8bd67b1bc79cf756452787ef64b1a7fc89246a94f0e86ada83b2a56719b2290664236e40a6be5d2da24d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100986ecd466be2bf25ad328be69ac30524a01ed568fc9fc9f98142f1f554199e09be62f74d7a57a795e625689f9f845bef02300bfe675eabc9fec26296b1a2e8a2dc0ae37f12d0cf54329b94889635b66a671049305040427bb2fa9711258ce6b9a2e50302047c435bb500663064023074e14b0115eb4c8a469305bede505de2c8a22c990e82f98c4723c151513aac73704d0d9c69dacbe6384df5bca91331ea02300be446d1a19c74a775c1d7ac626c0f3ae64afd505ac2df30a9ff86eda50b078d3a370b33715a21e666299f0f7c6321730302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307c4a51fd8088aed8f3cf3f4d37aa3269ae86abf06b5d22871d0cd0948a11fd64513244bba069e36658f1a328932058c902301696fbaf706a55be482fb070263adf886ef964047ac80b8d517f4ad991ce47135bd3a269845f353dfb2090a5ccca72540302047c435bb50067306502307094c11a42dfd3787e82e80b4c17e4d6a5e85d94169971a40835d1c74a0f0991dea4dfc85c390973f04702b7a7d80801023100e9a87e83e7cd3b66ee339c95882a767e1dc9444b1207b575acb0b830352a622767d5d0930dae695a74cbda1386eb3b740302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307b90a9c0ca28807a4ddd1abb0fb30aa0b84024d406bc5795731642f7c8b9ebb3fccc3453f136d3863d39c578e1bbbf4b023029e5aa625ee7290aa586a05544bf165be7261177c1e513b840334a12ebafc3956a84cf09e451b5e473f4781cf4d09f180302047c435bb500673065023100d1dc3c0c63e12e046f95344c8698afe43685c51ac21de8063bac2216522a677a2eb79ae131bf3f002dfa81da060ff94f02305594cfc04877f11f3b389f6f0508a0e244c1799b9f7dfb6050503623a98e5354c7480c236cbffe4598f81442b3c275c10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cedcb5dd2a4ceee4035ad78d80f713da1afcfb95be92e200eda8a8b88791c4135957f37341e0527c3d117d3534081d5f0230141a046c44c1fe533fe60ddc493ba68fb9a829b5e796790f544f8a664efe9e52c851b8bb5e22654b60a005620f726c630302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306317afcd7eedf67ce8d4aaec2da1660af7380cb7c700dcc2d3bfc4158b25107f2fce5332075d5a191837611f7013615a023100943f081547eb45f230a42d1154023f2249bc23867f55d1e9266c9736e66cf34cc5aee8a10d4c2c070c4755966f1871070302047c435bb500673065023100ccd102a0d745a9c50c40fd80e3767a0dc0d6a9075957fccf78ef4a5974d3fe4b86821772c8362dd26706cb785c92cb8e0230538fe042b54391304ad93e10d14b1b50ba78962ed1079383eff664151fcb8b966028f1c68df254c340ad6a69d2ab294a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307d9b1c7edaee235d36fb7bf52155ecfac55b2eb3a97e9e294e5fc04330577a55475a42fcdcfa3e932a3e71fc27fe9e7c023100982ae36a84a1925ee5ecc24d217767489310d36343a53c28f8e136d5436cfdc90f52411a241a9839bc0b3d8935d67b910302047c435bb500673065023100c2702e3ad167fff93249cea87ac584cbd290b2db410c213b2ca47d3c4f6797e0acf04cccdbd1a68a4fbd59313709153f023030f2a185b27c60bb96d9b6b191a9a79edab1f590bbadfaba5b98722c21cbbbde83e6dec9082ae1e376825a761dc8d42f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d16f95bbe47e2a7e46844439d7aa7a578f7b4d58c788116d46664763ad9c0b7daa3378363351330bfc239a787804280a023100e25efe1e9b91a249fa7847342901f5be44d359da3121f0ccd8e90fa2f4ae2d4ddee2f7a58a1f6597724ff37b5d4652210302047c435bb500663064023019075e413dbed1f35fa42b3222b90e0f3fe69d8418d562b06086999d34de025f7b02d6a65d96f3eb0b1ac0d5af6f39b3023059fb69bd7ed9bab446b6dd64ec42ec9a3f4c54d1dc02870ac229548fe5999def8e13f0cc4ca2caf5855c113bb5a0aab20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303d9519a68424ff296e71fd07e933718d74845d5bc820bae6cbda3feddf4b45dc59368163c6c9fbb8a92d3046ee5fa677023100fa58d1f5f64da76bcfb3683245b6c5072d204e26acb7e5a77c5669dbc38f99522aaff002930909a5c91f97e9458dc3740302047c435bb50067306502305809267076cb8bb62f9997099ea8009b031850316b7bfaa4180fc6c8c14d15ff2881f8757f3fa0180455f07bc147064d023100ac0de00a0685848129c0512363c3e222a3174f74670a322be63928d526df3a7bc36b9be619c625d6d096089b12937cba0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023013cbf8b8c4971e300122e1cfa29ffc98ce7b8ff83cf2977c5ee0c7a565307b5a641517621176517e1ff37f7f83e0587c023100e05c309538f5617ea430981de454a475183a91c3b86f0a283073ce53bd59bb36b7c9e47284c1ae89151028c5207c000c0302047c435bb500673065023100b880e549db84a5e63c1850efb2e69a6c916dffafc612141bd335dff817a07bea2dfe770bcd4e7446225d6fcfdb2ddbf1023065d7e9a71f4c54aa38bedde9836f02f64a274af41568e1663282f0b1a2d022ac112e7260f5ec7a190e05abfca9ca375a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304891f8e7a17d1663877b920771047e97e039a94612c3246548e55d7ce2de24eb7a8197d929a9df7c2c305a1cfe909ab7023100ea1c71eef1f46b7d14cd872403a264bba6ba72e396ab6988ff1cb9c564152d2726ca615a5d0d4031e3e9856f84e74c400302047c435bb500673065023029122d99e9d7656f0bcee930e03302861e9f09ddf42393fa9611503b852b604fadc86274394d77360877ab321af9249c023100d0d79867471e18c7246f891f4e4519c355e1c82894610f13307fcc767e7c4cce79c537b98e33a5ce5051b53e1976b1050302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230430dcfc33fcff22cd9576106af5bbf4d4620a48592ff2ae23b34f197b2bc11e632aac94503cd6ca610f5aba20dcbf83202306d15254d4a7d8d33a3bb5923de2dbaec9cf918a93343972f28977dfe7bc75dbdbeace0761091c5c17db9f147974c40b70302047c435bb500683066023100f992482e5faac4c126333147296f3c1be63a1362d2135005939da9c1b5cbbc29394d99e27d99ff7a1dec857744f6f239023100b6c3aaee59dc7d31dbe04751ce054352e6b2e746bef0bd4bc447a0751c945536843d2c4c464f79b32b43e190303228310302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230591eca1af268278a1daa4fb87bf4ad4797af752e69916892a4b7c1d22246b2a00053232afe81d6276a0615843d813bdd023052ea807b393bd23b8e5c24e078727707870d7a2b228497b2814631038e224e2934d7a33eb5d89e421396500eeec073460302047c435bb50067306502302c006fbeea6e04225e7a6c73db58e2004eeb3189f9ab33c527a74f3bcad81771bc560bd0c7cce3ad5328f0656b44c9600231009b6964e78eda925cfc0575b328ef273d707fec25aade11776de2e7dcb4eb88cdc89bd4201dfe5bec424b76f1e49b20460302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310094128189e63b6183cdafe69c0f5258e602d66380c3a6742affe12dfcbcb7e319b166c970efd74235b4ad2ad7baf83c6b02300af3779d59a1ada349f9e8fcc5cc0424ad4a8591db6ad551861911244e88a2ef76418f25d66f608c1f627f00c66890520302047c435bb500683066023100a0201c95b98d7a8d4f22de10d3d366d10d8a65308003f9bed731e5246b883f81c039fc960f8cee563b9409301cc7ef15023100e72813cb280bd53f8eaa8efff26ea57e86866ebe7f6e9a60c92c4de937c4d720dcec37a2e8c7605997f1526ff7f8f8360302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a165c65c7fcaa3af4ead5d6d15908b4629dad74da7e4550867b17cd46e6ad810218e89478576b447a047d30f15a9410f02304500426b41f125557b90defc45481f82a10ecef90621072cbf380cea5b9f722310d6bdd044dceaf687dc5b80fbd375ee0302047c435bb500673065023100d81b968ceb01ccd754074d7d7d030b17c454410b87d28a57c6d204b41d185326300576d044125bdf3d983fa15eef8b6602305937db03ef1f954619f9d5a024c4b0ed15d94885f45112d2f04ccea576f3d66cae08c3dfd0144e1b5cc59d20a3463edc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ef3791d8d521ac911bf3c1a0f8668700be1ddb7b2006737b58b81c40ea8ae5a00e898efacdb137d49ac650ac3252025e023100ae50ff2d05aa25b89141f93532db07c47387ee04e5dc269212b66e5bae1732fbbd4658ad10938d7f9b10fc3525bb65670302047c435bb5006830660231008c9b3c2cc669beb623b0c314971007285dec05cb33ef6ce353c19f245928f4298592d0290a000ef15b0cec54943fa8be023100ddea2fd6da8ab5790004b3ff891ac85e032c25ba66b948c3ef7fea43d469060a2b4ac1f5d4e1fbe295db12acd48ca6c30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023059b8c1eff03369304a755f48a4793172593f5e634bb84c0f61f6c52021b6b9a55c50e12e4109d2e7a067002ab07c03ac023075392fabab07755d5bc491ccf671941b370cad478afbf8ed19ed9148c8c60fd0fb952d319a01ecbd733a79e267d6305c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100af565b23c6d36aacc46c869ef9a5fba11693f640f9322e6d6c64972b1d02241e20dd1af9233d90b77527d5172ae8b8e902302b9771ce14a499f854656a455bdf0b0bf57451cf890680d459b00784af305ad6e1ff6f1ffe705e6dcb2dea0d377f39040302047c435bb500683066023100d53621fdf28147faedaf32e71bcec9fe1395131b0def44083877abf8b18e42947c1206d8a2bf4c815d4bd5bd15dc3644023100940b19cb75c81b9ea537e52a41a556eb63fe037ff2e830394aaef147ab4f4e39d4ea74433628c758ad314417dfd0d1010302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c0c5353b3918c96c702140049073a4b6650c48a29845f512091c329327e45d59b7293e08c33725585327daa9767325da023100eeeba9b850be03e1a19755363cf3704e16a8c69222856f15cffbe8f65e664b6ce981bc3a1a8e6e397410ec5331ae47530302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023046dccc6ade34e3c2329d3b508c2f87acadfff936db82b72dd7624a78849d4136bd2e403d789a185d514f51f7134f591b023013a660762ce06611d721f0bcb89a9fdc826feb6522a64d65af3c75e73941858dc84014b0903a64eb23c3dbaa928d526d0302047c435bb500683066023100c89d38748de79ccd26539ad5a9c31da16159b513b329d6d5a8e0d6f5ab204ff2521697d0a52e2f6ec0d528c8b88f590702310097808bd64a65201f9dd7a485be67bd193370d07b9883e9977bd09deac817a15d71c4830c7f257b022c36338632cb989e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009a4e08b9d4b02d1c57a09ff9b77ab29467bcec247dfca7e3cbc2a3dedc1e3b00edd70f17e2abc79445a417d40e38e75f0231008948035fd9f5ab39c0289f385edf930872047b03ffe3eaf4027393f3e50fad2a081f6918d6bdcba9f4470658e92274010302047c435bb500663064023062dfd1a2d5dab0710a72c4075a174517b87f63935e0ec22efdb423daed999e98e43e352afc4c3d875edab71c16258bca02303b9aed32560e89a72bee3a93b9723931e47f7e198ab55055ae74796ab466409019e6f635cb2891a0dc0c6dd610e8b07a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310088e55b8881187970d8765ddc582c4ba3151e11b3f160c0b875bf3c799b4dc3d484543175d3e1d2a6329aebe0296d6f2f023100b6578b5aaa530aada39ec40bf1e2cf20fc4f569d46a885ded96c9983db338cb4b9999823c0bfdea5984005de7e548a750302047c435bb5006730650230161cb4ad866726f67a3bae146418e9893db4da8bf06c147d5461d69005a539472fd986e2b76c4b14e8337ad278851c6b023100a12a34991b87c77c5eb97e5004dede6def3a72ab8bdbfd9465ea7cd1c205cd8188bb745296a9631d21dc1408fa98d6310302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100aa0d80cc71b89dce8e791aeadba0e6054cab120c19d1c6e202cdf2543dfaf1b64a01cc3210b30a7aa64049a85e1592ca023079632c13569726e090d091863e00e03e923eeb2530743723d19e62472f675b54fb02b0b3535695182b4b1517bb60eb6a0302047c435bb50066306402303bffde7fdb4f8f22ffbde8d36bc511aae14f5d6ecee483b56f50c742fea24d12a2b578b8adc2a0fb906da52047ab898b023007364c76b9448cf15c9a02cfab96a0ce27553384968fd15f60304373d80e25d358043a4345ca645c3b9929c2b7c882530302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307b8191d418658e173f39a1d579020b0421aa205e410a4262cdf11703e39e193228efdd7200b9ba8a375d5921aea8437302305aeb210d4c98ff4d129554ef085bc15d0f16c1379b66d4ea1769a47b90795e0c43bf11c8046b6f03bfc1637162fc4a1d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305fdda5d5abc8dd5523128b47ad2edb04db6460d0b4d2b5645909af2e547217024656329f439602995c0e54b59eb7a0220231009cca25417e8234fe40c428a855b83ddad780917274f8660cd81fbd367d09ad09fdd8d78a1b8af6f489e8d6d34fd4bab30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d346ad785fccc48678226dcd1fd2e91ada181f564f4878ca955af5d8310f84281a3502d3ca9f6766c513f456665155de023100f056021db705629ffd38ad5f17c110c5d34b09c28bd389096ed2f9286fa90e13e3f456125ca9b173dcfab6a4da214c320302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307d6dc6b5c19605f702388dc1789feea2abc4776cf785462e644c12bbbc54c19a726fddb3d890d302b7c11f374df55897023100ada7ea967bd263f1bb2cd78f31bf8a053d4c67b0abd31e8001d2f4849ba2ee97965118a77b438a47510e8ac9aac11a3a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310096ace279dd16dcac6ecadebbc69c38ac1b80f048fe581cfb696c037cda0d3e9f3cb5644b3766f8741469d6fa13acf376023100af1d0f1f6f4fce7c0cacae108be45c1b3154c1ef5e3996c9a4ab02f869f257b46eae74e09515d3dce0fd77b4f2406eeb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306f0b613aa8d8fe9170ffe4b796492dc2894538638349d871e5841f8bd8d476a0c5240d88915c44bec4ea3462ce3865e5023100f3a08919085a5bc111a634347d5c3e8f1ed1a2257b2ca04b3eba2ec402a7f790b785f2ca4277bb082ecfdd8bfc9c417b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307a2c142e7aae0015e9672f307f5256947e85ae86751c4669011b1ccfbc0283049008c9ce6840b3ae2eea6d3135ec978b0230513fd11f7e5d99d8654feb9ba1c58bb2edd87125cdaf47bb664bd6f6c7702f9f235e212c3f3288738189cb4189149beb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d50ac87ce91205d81801f5e5cab33679fb4a8109700cd6418ae398b8a258d7ff688733ceaabf1950c2433e923b8b7421023100ad48c5f1bdaeb8200f3b5454a4fffd3e862d8bcf99356c920d56f248672819b3340979e0b4a7e5ed324341a9bac84b3a0302047c435bb50067306502304a5e522b0508746b5c181634f8a2adbab239a777310148b6131d96a021d16c6cb204c017b8773865ea9c298b01ccb945023100a6f8bc62260902e33c2b58492d07cd16ee4f9f4eb036d6169845c17fbb2a4dbc54f06e0c350f1b4167ff869bff1eb5a80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e0bad7ce53afb3a2d35bcd99411bf32188fcaf903a7e1c394dcc57774e82c2cda81f4b16d887c2dfd60530e3c033f44f023100c8f4718ff2daa6855a57509b1773af50df8cd8c29d33fd7c6a5cc3cc44a1cc9e37bd7bbda33549c75defde213a01a9b20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a66964e0aa1f0d6eb16b29719984c1967193b4caaa4f2f78338a3850c38b30fce08a19754a4b8bfbadd1b60beae2fd81023100985b0cc1b88f9beef3e81f35f03b0b5b386c4e4efc7c4621faaca4eafc2b2fd405ed7fe4b176bcb685474dfe9117faff0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e1a6dcb1cda5a03e8e3136b60f67bb25e92ba21b05a512bc5b6cd25d87fede48aa375fa48c3d77d46a2e0efb10c16ff702304585150f415e07ebc68763dfcf23eb10095c46c71a2e118dd36055dec50b8cf9a4145cf2580eb863bb93b49ed7b52a5f0302047c435bb500673065023100c074f12a70766f4ff8f3a64ec5813c0ea506cae26220759c5e06ba3175cdc7d439c9893bde9c62abcb4917d89817216602303a3311c8874b70f64a189f26ce4dd70565dbc4fcfeb15121ed63b6cb76ee28a01d2c348340296b8b4e84fe2a0996d2250302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023007fca1db3449e341206986024fd95d76732b62b63afc0516848b2dfd33796e1ac38ee4d3b3916d2a93b4e360bac0516b0230014daa92637230200f8545fa463cefaad43f6bf21db29e2cef753adf20ed20a3dbaabe004d8fad4e16fb0bff321961910302047c435bb500673065023100c35b86569bf51e8ddf90e45c2337e40a863c611ff156bec06ab78a4a315cf66b7f1cb4936b9e7ad866e995dd73bb316b02302bd7ea35a6030be2ba1d29db318632677667657a43668157b27a3af8552d860adb0c90761b115314051da650c92d052f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230742919c195dd6b91956dc63ba5c24d5ca0516295d2b6ceba8d6e399e6e85d9d4906226fba4b3249205ee770c603a4612023100fa13279d4d6db0cfdce4e7dc13e4db666d2a512ccbd36c3c3a25d15ef937d7dc5552adcde4726a0d454b70d9793978d60302047c435bb500663064023068bcfb699deca48899e5d9e746e32bc8d77c9f41fb20d4b2235a9090b6913f1eb7d9391bf592ecfe0af3ff6c757f0b7c02305d22c5ea2940b644503a00e5cdc60ca8b2359bfe2c08f194632ec070a0dc0cb869c4a628e5010e2ccb55e544d24650ab0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c903ae89b3cfe7c52a91766558afcadd546a81570cc8a598ee28b705f36971200315fda0b7b9661b8a0a9fdc56eb10450231009d22dfb7016b32fb1d7773d629eb7c866ff35abfec6c024a0f43afce29fe8de29a26fc4c1121c76b6d5d4eb366b2cae90302047c435bb500683066023100923199c7547e9c38cc713f6b9a908168f187b13f3d0faf98c4b875c0e1d4005ee41a32c9e20045a01e50ccd6362128f4023100e950d12084707df9965140ef49ffc2af97de47032c3b5a08cc762c0365c9798eaf2eec6188d86fb5a2173c09daea9eab0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023066607042f74be3a6e96b35fdf5338d3732346154c66ca53a41f0a5cdeb2fccb03ead390b69c9abd94b57cfb29356945b023036f6d606f7790e4047786e32a2a730c531d9b00b674cdb30832de1cf22d11426a91dddadbd081c5c3e57dba4a560c99c0302047c435bb500683066023100a0abf0f225e3e3cdbb080192da79736c0734fc056954e30885f95bcfb8dd17fdabaab00d70fe38b2713ba02259b5d451023100cb92578bf0e0f9599b185e5038bfabfd4f4df6f4f6625d055697d67f4b8dfd307ab238914e4e193827da4336bf96be3b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230628caf776054c09d7932112b0c8f5c4c6c889e2e4d9209d495280ca8f81fd175850f9179536acef33f0f92a3ef9fad6b023100dd2f200deec89e86b60d73b211a1c5cc401a58629816b2ac07c99fed072e30abf830e4a1cfe32853cfd7ba386b024c250302047c435bb500683066023100da9da6ac94fa1de5e20b5412d3000f72f9b918dcfdc0c029a2dfc92e55e113e46d08fcee1433d63d0d8c78e7811b9aa9023100aea56a81e90966f51cdeb6e1cb91dd0c83e05f13082d6091da478da7e4ace074c8f63d7eda416ba56751a6456030f24e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301e3aae8e39c69ff17ed923231d7b636851bb311340cba49b121740d35c52c21428539e8033e3ddf02c0af2f30dfbfabf023100f1a3842f04155385efae60eecace36979b807dd56bc42ccd22ef6a3b371142267c49103a09a9d5aa69574e2b7e9dbf890302047c435bb50066306402307841105fc558102a91d8f6f0eafe7316020188d620caabf5b5d89ff16d966fcd14e977fdc5c3bc7a6a2467da6d1fda5e02300978653355e40b44f3d3dd84152173c68d5b95d732003b5f4bdc36fdfc6428d80576f08bc5a93429f5d9d2ee7cd7c4b80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307b4f9bf25d8edbebdc1fa72f6f59e7b0b93ce1d8790e68f1e7dd25b04a7608d253682eecfce41064d2357a292923b846023100fa676b2ec263c47e8acf54ca4ca5cb69bfddd500c04588e12637756f684ced7ba90cfb0f3c9888e8dd8f97870052f1a10302047c435bb5006730650231008e764f3200de9ec88a4ed9ef598336341388037db4f4e7a6fd4e2062e93fee752774479198f417547c4882ea380b96a3023062190358a05e0a95560afe155263603c8b1c4c7215181d32ca177760db9835ecbb38058df3c753b744798e8a76d10b930302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f540aa4b3fddfba9eea71f82442f6ae3fe00bf4e1f12ad0289592eb644df8bc23c56bedb8a4f214c7915746919e428ae0231008945c85fac426f99c80a6173f01fe5423fbf8f2356c17def7015f3ebc92422daac0d8b0391cdfe39e00b69e228d77a6b0302047c435bb50066306402307ca976bb30f1359903f8dfdf99ec763883d60f71166accef078e75b1bfccf31e59a484e6adde3f92850529921f0a181d023026fddb6f7504c3ae28bda083d1e6e6b84bf01256ef0d9604f01104f0d696ec8b1794533eba0458cab34e13989bde76d80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b8ee7a54a46456ec80fecd7eac47f0f6938edc4cb13a1fa422cd0b5a7eefe8c9bd34bd93047a15cc60baf96831363e9602303d34dbe5009e7a8bd6066ec83f0c02dd80bdc61fc35adbf771903f111c26077c51c7a21aa3b276eec8a9600122ca438e0302047c435bb500673065023100a11f5bf786128ae9ca07ac65eda643e147cb7820d5153665c861c1a4a113917a90f80b7859041ff16c99072fe8411407023045aa563d730ccda52d85d09443200ca42c3368013bae259021d568596d0d495a8544447b3038bc51d0e5f14c86ad07470302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e6d48c503b9c4c32d04335d5c8e4d372bbf5a62b948705805495b51d163c14ddbe6893cf82c35d7be51d4a830b5b3254023100b31ea8144bf571f90d5cce20c25662b27404949fcec41f85b4dbba1fed49810ad2c627803fcc43745e7395a04fd8c5be0302047c435bb5006730650231008447f1a1ecaff5ec7e55898f89b39c9166c156698c58d428a4e0c09d03d3ae398234fc8f9048cc5b153935484b5a641e0230764110bacca28a07afbf2ed43709e1004b29a54956418725d16d96e47118e67ec71c788c51daf88b9d9fceb94a877b180302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300de624159a9d21629c43ce3a5e8ecbc37d08abccc0acdc4c942bb9f6dc66d4c20a5830acb0ba35d4e59dd8bf556af60502305532b93e923a6430dab598a7fc79508813d2eecfeddaec14ac55b2a1f92b06ce09156170c6440394208672d46a061beb0302047c435bb5006730650231009427d3c6dba7435a8fcc78913caba516bbde56b0dbb9fb2fc6adb88a521c591bdd8ed4b4a240371905e2dbf6f84f8ba8023051468cf836f5e09e7c13107c89e2ee3b5e217a7e8122f77b6260580a68d06339fddf3e8f5e698f246cdf28b1648c19da0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304ec859c9323ea7849753bdf49d881be9bdcb35398e1ac3746b894407c75886b680cbd0325ecd0f9ba4562cec4c163f93023067460a59ceea390d980ec0aeb53305eb282f0a7f36c71be230401670190984740f84d01fe2e7825500fb1ca37227d12d0302047c435bb500673065023052c11fde8d1f80469104e155e89c6b57291b03c0172c5b5f0c13cc1b52298744173d9e9c5818a3ad415d046cb68757d1023100f2ac0b5f28dbabe7db09d41dd317c0924ec613cc95407313866275900db35ecbd219e78e9a4eda2a130e84cd10bbaa5e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bc6fa118012e48c7adaf7b6bc56a0e04d69c379e2ab9f7d65c53f3075060dda735de100d5beabb47d1479ad900e5a11d02300b1686f34f4c3be5904684646b99493c70abab7edf8d51ba3f7b7af0da82cfa1acb33f2a015d4c980dbae4e3253bc95e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305cae55bdcd52cc604be2ec05c22de52e8d433f9d3355834de67957fa2d6467a5f8b691be835f7a3c6bcf3d4e93229625023052e975bcc13e05fba8a5c7c78271c7d47942a5982447b96cb43b5309bba1d5dfcb1906282b4e3b8bf98d996b3ec468550302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302c58a1aa9a24bd6ba826859bf9dd97603f37fc7e773e1b8c35837c5d5e921c437b29c9ce7fda26d72795cda5cc955dad02301e9d109f681963ece3b8e7f4f08fe7dddd218821ec6a699a99d131387398d2ca81d0eeb98afe35d102d3d83715d456900302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c4d74718c14f2c46d3247de158bcaf52bfb12d48917b8c3d0f738b1a8c0c1f7de7fb56133e54392a7f1dd7069ced75b5023100b11f6174dd3571cac8a84cbd0ffd7852575b718ffc740070a9d89d13b18b54e47c75dc8e4482b43b7bdc44b3f6fa3d6e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ed4e18ddb521849ef5b3a46d79a14efbe8c38ea47c02a7e22c29f1fc7ed588715b46e61247af1a68966c72150ad08cfc023047408641b0d82c13e02dbc22b53e259d83f1aa159baca0729db7f8de5ced3f03bbad0e37427bab2074be5102677dd32b0302047c435bb50067306502300f56e6469694b496a1cfc4cd4f0636816145bcb221d23ded8c4eb7f0ecb3e987360d313439824aaf0ac41a817fe2a4a00231008a2d899e435ced25f569a39ccf42315b5ad2f9bda82e6fb41a7576c93d3ca5a62d7d6c2c1b2d50146b0e9c7414e7ede30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100fa98d3b379b0f94e91f6b404ab046505e4f409cd6907732ed962ea85a0fa03e6661a7828614428a02e463a4eed9cc4c202301d3779d07ccd0df684c2811fb8b7c602dbd477ba4b83e8f0281ccaca862e130442dabb1ba4d538fe7b873348852098020302047c435bb50067306502305aa53b5faa2d9eef8040457f70832f0cb250705c73c193f33e940974793796d1376d3320c103303ade4f6cd49806ffe1023100d487633f2c5526d25528c964bbbe5f3240e9b6867d88b45c172de507d8fe3bc77d8d5b30e6c684c4a9161cf9446d84260302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f82b21d8153c544e87b2331ae4e3f05d8fc0920fdb90e358245db7c0c62f6aecfb91d9ebe0c2976ad61484a5f37fe78c02307cec50ea007ea428b014a34a949c1e0a334cf1a4f3d7774a303a25aa6cf552065ca27d24989c5323e5dec4f0002d84700302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b633a76b3fafa28a5863cf7884cdc36200b8f5a8e4f1f5d90d0e7e4247bfd418a2a49dd85330d29f8af314911cbd60730230484b2a2aacab8988b32e12cd41fc7d6e1514cb97b97b7b01dc8d1e2ed362aceecda5ed233420f25b4d6ed0ea6260051d0302047c435bb500673065023011e71bc168e5d9ff147cd5491944b628fbc5a54cd70d56e3e4beb1a369b92ef0b2cb45861335e3f1dc08cab9282d9f96023100be2babae0ad27f82c498772baa037d74d2fb3b7f88ef73ace5e3da96725aed52a3755ec46d017edf3a6d3dbb61de80850302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023032b0ba03305ba1d53ddee628d182f45e5fd51571fe8e5c815f160db7067baace6c3cad94860d188a05e9016a4d0f5c4802300c3e9a1c0f68fdc57e5840cea9642319853cac3c9d71d906342fa65af232f09f1b6adf6c3b45bed31d0e8e942db789860302047c435bb50066306402303e5ac3a8a1192685926d67dbbaf813e044e1eafcde393f6fa1530f64e84bd395ac20ec6564f3f57bf539976b5c08ac80023003a1c902d74e6f8e7d70e430e25e052433f9df43755fe942c8f63895e3df7ebcb969d13ed45313e8ce9d364e421cb3d50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023015b4707d11a1565ad339d0ccee3b656390678f39c14f9dbeff33a6641cef29f658440b61d6ab1275604e9b62acd5d6f002301e3d9ba225f68ca9b14cbb6edb326abc41811eca2fa417e005148e24294235012999aeb03145da4a6a71fb9469974cb60302047c435bb500673065023100a9ad0a0e98024f4f8b2e773e45e85b69a35fa01e19b02fd660f0552c8dba0907b07b58a1f20774402229da65bcbffc1d02303d1a49decccd02d1dd9a183a4e77f3d4f9f9abafe6485920624f143ca7a2ed544afdce954b100f4f00ad9736e5471b700302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a64dc609260968a16c5cb1ee2c8a2eab5538d080dbbaf36e3a3b9cc5f02c32b9aede995b6cd7b98fa7f738f3246ee1dd023100ef38b9aa0d642a68d11312a49d70a075557ab4ecd24b4a4fc28028c0175a25ab5cf866f7967243fe5f44a13eaf43ddbd0302047c435bb50066306402301052ac1a2162878483da0f902f7bf3150e645fb5495d5bddbb0224ff2ff50a88020afe26c33d764fdbad1f2530f17d3502301f7c8d93d99fa1095a6325ae2c6e35aaa561742fd2c49946fd536db118eaf199a78ce6853b162d9860651b507e0c34f90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305c8ed00d9413e5d74b83df9b0934ea929d315c3760c4e7dcb8e840e52001a0a1007697797ad231a99fe09a140a208123023070ed0f425a77d4352d3b53158b94b17e8dd05e34742b42a3f11957b9357576f65d87d94ac15b54d543c5c5b8de854f3e0302047c435bb500673065023100acef9b9a300fc5ba4f5a4c6a29b5587657f5cd493dbb5d86b39781d09ad146a7f3386d5c1b798ceab3f1ec6512ccd28d0230432fd2ea01c5ff7feea988369f707ca740be6f121102f909251a1c01b872da004b4e486c13e8417f7a445e4a3f255b5e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50065306302301801c5de50b1309baae85ce83bfa34e25a03c53800702eec1501cb515079c178235f000356f153baa69abc0f9d9e3785022f3bb25d6383b0ae5a83e557f6391f8c14d97c1af8aa055fae3acad88bffe45f4a776846bab832899a97f52e092b65a90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310085bc2e8c4601b3bce2481a61e48912ed7f514ca1ba64371574b066961b3b836b64588c684db67e9c5a18d33c80698d8f02307e378a33520893d7ae72d8a9001d40d46176ac530688fc09394a8dda303f6dc9c4ca3774ddff7440d6a49ffbfa3435180302047c435bb5006730650230657a9970adfa03a84631237f7d67b089b540a7deccbc43e1e2e87ee471cc48ed34177dcd656509baff9bfffb095a7e50023100bc8485a37901039c495c6e067ffd4f784e647623f15c317b2ed031708e52675446d0cb418013e40862ba1e457757b3c80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300eab7298246e7149c9fbc81abf9e927edcf43820f9676b4858d807709fe7e056a62f4aeb93185b2e7fe8ca5dc07afd050231008112b1b3ec6d27100e2940239ba2134702c3c4990837596a95bbad906663ac61099b8475b4d25668f5214e2cf7ee54810302047c435bb500673065023100e23339a2eed2dea783ff9caab0e1d46c8a16e5c3513738b3ce19d0040ffeb979b78394163c896a47399c24c40c1c575f023052c1a83b4dd5fadec082547b6e4a4f10edc5f936db1930a9d582c31a4a744dc0488f3fdf9bbafcab9c337069236d4bef0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305f8ab58524ec7a3f31bef86933094f7e99e597b3afc9a58865e3b000a5808c85299cd34e83f5d3459512cc2e19e5298c023100cda57614a7314663ab66c02beaa388c8da1b57366d47adf50d7c6fda0b7fc9e23a3cba47a846736b993504cdad0c4b930302047c435bb500683066023100acc94760d3087b1b2fc286f79fcbb2a36e1fed4d9ddede29b8bff83a55d6f1bf1bba4ed30033fa0fb51be28d857a039f023100979c1c478381ed1a0ccc3c4eb11e88c16ebb5de79d2c22d287e104b5067acb0e1086f179dd3afe95114abb60f2c7493c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100db3c0866f64cd1c5d282ac39b12e7b9a3a3e9d3fe4194c54b5cb4532114406208310d1c0e853e71ae8596d904074f42902303f97a6af353bf98375f2b9701b5d3d5a743c591803bc756b9c720d9198ac34daa538e801d2a53f79fa9210bae066fe8f0302047c435bb50067306502306f17ef481ac427d7b7c9195e92ef3f7ec3a539446147620b5dc0300c4ccc6a045b403adef6b1ac6cac7da234580ff0e8023100a34542ad9595da1cce4369e755077b4fd4b3fcce58ad5a5fe4f1a4d2cff80b10142a0a85e174fea5bf8c42ff14e2c9700302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230766f91f48d49da0cd1de8c2475ff874996b209961e28a5acbf34f5c676bec3f19c9f5a38affc3c9375d1ce3edb4b09e80230630bc4f1100a988bc0841356b0b61d60eca0e401a608bf72b48925096b3f889d8fd9d24c73e6dd2e3426778ca98968d40302047c435bb50067306502301ab4f46cbd779d1aadee558640ac5a24b02aa6ce4dfbc6c95bbb6bdefddac30f4507d069ae4b51c4175744590071dc4902310087ac27ab34f9e3d3cf1610b3ec749f3c3bf68ef7cdb37d437b8add829a8d2fe83f2ebedb8b4cf0a3f58b8be3dc727e250302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e2e369353f088f77ff0e29cdabc007f07f79de283010381b6caadbfaec3d178acebcc2b18b2924afe595338f4f3efc04023100c0bec11b1e3e7c40ed9b9dc0e7f42b25852fcc463f494ab452ab1621a504e4228b89c4c96fbaf9c0f61119a7ac6dfa9f0302047c435bb500683066023100ec8953b1bdb4c24016e4be430de2d95b69edce7790878f84dbf4894516093b4b24d7002e791026ceeee368207888b0c2023100f23b7a85ba3b7a3c99a0d8307e5dcb238b664cbd5b0ea9fa9240650428948a5f83fd1eaa36e53fa8cb5c71152dce4f3c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023078ee130cf4290d62acc1eac3a330e169e05f5d486dbe98ee6f944c3872cf505139ca0d0dbdd687fd86b6185773d92a0402300134b9c1ee4c58c10b313590b6d18406e3eed768f51b5ae9e6f84630ba3decac5a3f40fa7ce7dabcc3b72eda02816e9f0302047c435bb50067306502310082a6e889957a976c3dd4bf636c632dffb364e7aeb3315960aba5aa5b70251c9723dda8e2bb00c6ee83fce5e09573b4f70230356a3d0fe24268cbe5cae9b356f6ebf2476a89845138b04cbffc5ec750ff3142d9d15704dc1f498578861d828264e5f40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bf4cb8dc9b79c848a26d5988d04ec4930fb0254cc74382fdf44f3e5c125ab00a6775fd2edf5a938de5cb26c84e14b3b002304ebbaedf24a345837eec1ff0bbe62928ef232ba838cb7cb350c19544119c20c24db6878eeb4c4ac9dfbe8ff8a7abb3370302047c435bb50066306402302d01212b8bc24b3efbde360d630bb85847bacba744e778ce65efc08a57f54fee5f6eb08e890a4e7c4bdfd77ce114c66202305651e3b51c51a87273e3f89466eebcd7fe33811715b38be0bf03502e1a7ee17ea7bfa206f7cddc6e11460e3f2cd48dbf0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ba8bb17b22af08d8574ff7e6fde0635933b4c02fb2e469bfd2b637f1bbc122582e5a92ca254ecaf25427d10867a3fda1023100dd9bf870fb5280adad5c3929e7e325a72fd9a06f609d259c69d1dca1a7018aa6955b470f03b3ae28f22e806412fae2960302047c435bb500673065023100ecfa9dd0346a9cf57f255c9acdd599355c82cc7a0e6cbcad2a4050ec716b39382b3218a2cd04864e6e6b12ae8897f0fc023033d802e80999d7f8a4aef8285b7f779619b4bac438b33c8635a13a76556016d196325903f161dfa789dd7c6e3a38efaf0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100889bbfc55667cc71e649f04fe7209a0dd893534046a3abf9695151859e8625295ab3240d6a5aa4fa302899671a03fda80230225810fdcd85e97db4c6be8aa0f3e8e6a69e741bc946a698706d69af80bb332d69e8803941c7fdccbd99132afd580e1a0302047c435bb5006730650230368405a2c4fe8c3165eb162d479eab6f0c83f49ba4339c0acd04a82261a03ab8c2b0b075ccd89dba7c218fbe88da3912023100b8bf1dd67b902f7a13c8048d466aa685ae8541c4d616421f85ce4baf51d87d23dddc1de1a4b7941279bc17d584dc794a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307bc42253d7e0abdab5284bb9f29c1382b94334bbc61c633c04973563a9d74d74fa2a74b32b75a0c98e1b6f098262cb940230495680c169e89c811bd65a9257531a712e3adbec9f22d59675743bfaf6d472de42a7e333e6ef33e1005c46b985e28fdf0302047c435bb50067306502304816da9051bc8d5710227c8da9126ef6519c78e8ec278a4a4f01c6790773efc3792781cd505bbc403337675cce8c165f023100881a9296161b0004187f76ca130e555898fe90c5aef25e0fb104e4caaaa2ac1b3393bef160b6c679c2de116df4ebb1b30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023028d8316ad2c5487d08ec4c67a4a32ffc4882281b517c8d7bbf658acb3581babbda90b7ecf8e07b472165c51a6f640e2202305d33baf23a339a5910861fb2a284ca31b684f9471abbf05e421159491072d5de2644e1ace0e70d47cbf521a884ba01410302047c435bb5006630640230637bbe8dd685df2d17f8d5cc6b82cf0c222b3a7bcb62824150e266c5b87c8cd019f4403c55e4f40278344a2a27bf77440230458ece083e96d673f4cf27ba725ccf3ff86b57c1144baa0d4fcf7dd82e06dfef4731fe7fff0bc7804c33448ef67323cd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e6b8cc722c9baab1fd2febf5ff91feed9006249a6a2fc1b30eee01a247429e89e3d83b1cc7791e22eddea3a4ee0b91d1023038e3a93f64a105dd94c130bf7bb22a93664a0d18b2e69318673bd96b7a141091f751c1d8966209813dc99f8b00afcfdf0302047c435bb50068306602310080820fdc4f3ddc13cc46d047b02bcacbb4844597a187c1bc8bb136483da549d7e474c9ed4c6085dbda5d6809c2b14d0f023100986bf81f300d2662bdfd28ac298cfb10d236af4ec93b40f1919dd26bc2b2a7dda96e90d1168a4557ad2d6995b3dfc0cc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023003aa6cd56c90b09167b7b2a13929c27b650300b0d4b61dba402a232ce6a4a588074cfe503c88a4d6e8e35d744c270dce02301fee7ca07c4fe5258fedc8f5fd852e854ee7f1227d78d0ea818237761d1b69b756fb31fc15b2d3bb5ab8b43bb84c29590302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305de2e455a112cf1439f49cae9b5a9178a4ed648c62290ec2622be8ae6e4d547d9a7e26784455b67d398afd2d58baa1aa023100d775298e1d84664f5032bea47345df03f0b56eee75cc340bc53989c4032c06f325f693fdc993ce1d56203fe3b109cb2a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303eaf7b6aa05927cb0954d7e60d855c7662dd22ebeec5eecf7d7b13e00e87a7871c043671b7672472a58786b49e989c1b02305eb9c1c2c19f16c44a10ff900d5f390d76f4b728a2554dfd5228871b1708ba3834736b5518b4b443776afe987eb957910302047c435bb5006630640230161a273a907f690b844ca4134edb3934d9accc46da808377bedfbab5e5ef5a385ab973faff7009c08cc4b7bfe4534bad023010d5827d707fff5f119e0da98ef151c6bf5071f71642f9b3c100cf7b3dd777ceb14e94645671c0762357ebbe2a7808b40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023011975ba01214953fc52781275a7e96c9023c0d6dda31563f5107968a2f2f33cc3d15cde8af4c52650080824605fd1d6f023100aec99f50d8ea34a60cc801c35bc4ad3ce5bced143f527e35a7473fa9b930a29fc8f2281c3446a9e9792e0113ccd2ae8c0302047c435bb50066306402304f3606d1a9ebf7f7eeb2ae4e7be3301d92997d02c8c4c6b0b9407ec81bf348c7fde2d6104ed8b941b874b6110fd8a98f023063f54d72b5f4a21cf272fcd06b28ac87873776b58b1fb0f5b735111ab55c48b9bddbc8f00ff40662d96c9e78392d10470302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305d30a067a335847c04b5be08e4ede2b971f01d3018a32561c60857648c5c835368321af8740711fdb74437f77357bdd202300c5accb00a15829c8fa70662eb2426dba3a561ebcf02a1daa33b627a343d10e2e8d96e8da8b99cd512116349fd2158bc0302047c435bb500683066023100a7d2b4614be0dc939324c786a8497bdb67535b0b51c57d75a7e3497bb89a8a567799a1f8facb5bb4c29dd3612577a1a7023100dae13451025d112d26b332bdcfe022ba9d0a2636061756d8e7976866845aa411389441a34eb1e3703d743b75f456a0d70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100bcf7a7305e4e68e2fc38d93ea727ab1411f1d1735685bdc7fa1c360aba51c6f2da20c18686d31577d275f5c5670a9ee902310089f3cfef8ed6f39ec7af29952ad142f4430d883789cba2ffab7de834ac43092a6658a6034d1fcfa45de927519e7326b10302047c435bb500683066023100e99cbbbc57bc8b64d0cc4421624f99ec4814e3cfeee3ddf1f36de1d92df78261f865489768282387b7e51498b5312f64023100d9584d733e131830adf1ad9b807cd9349a848d4e7ee57d904281756dea83beb2468367cce5cbf8e863b446fd8112efa40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307b30fff6d78cb07037ff1f274d7c26172a1cd6eb5de12c8c3ff5039f3c9ae6d3977ea7009946147f25d661d0937f0a060231008114aae8696e98e3825f889c2c1a3b0fb1bbf9983134a0e6dae9df671d0ca0dd139b7154d68d78391b4c62dc9d1f5eda0302047c435bb5006730650230590d93e9930961058a660ca50adaf16d45f3752b42096907962d4572f233470b21f88aabeb578714c94da73ca4b7fe70023100e5fdd784570ba637f2e6e52ef9b6172be9aa4699b719de9e5a70f5dfb416aaec6663a69ff8a88a92a1c1ecb50cba11120302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305c6e13a36d6fb0484f40d963e2bcf582f7774524d28c19bd90c79abd78ee0cfdc964577938628423e54e42e037ec00e0023100d4053bcd93e07a6cd7dae1cfb6bc54f35136c129e3ea8c8ca3457c8118ac30d2ab9a0b710e73c8037c67bb240fbc52f50302047c435bb500673065023100ecbdcbfbbe67afbb601f9c1933af7d68566839947eac3bc265db9271a2b1a4673bfde7805a156f6d2bee7b72747e1115023025e558ceb0c69e4343ee3025d21406e35c43a4fd6fefd3c6d0398a6b613f11f3234982e3122449aca58264b1ae770b2d0302047c435bb5006730650230656b012fa0ca6bf7d9a1f3eedd9416a78a1d7345514fa6464e386db104b3e1e9e4f1ba85514c15a510aa73a360c024b8023100ebc069f9283c00172a671b436d7a42ce42e01ecbc575f5bd8cc9403cd83fd1315003a6ccd3d3ea89901146221b67ad7d0302047c435bb500673065023008068347c21abb09c2dcfbbf57b4b1af9d8f209457ec1af01d8e6e68b8ff470c0f4045263d693eb4a0de8f96fe2af117023100a3c724669485537c5bab4ed5f789336a8d8b531997b700712302232cd3faa324e63a0814460090fbd91c15bd47ee18840302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306b3365888da6e3ed7c28db2a5dec5538ee09bb6e11dd5ec2bbc38ffb6997e28fb13ac6f2ef554289fc8548cfddf3b23f0231008d42f061cb08e30bf0eb57f8e9ceeac72c67f0bd12766da1a652d0ba4cdb7a5ebde5b207f38f469a6c86cdc4f58a3ce10302047c435bb500663064023052d98b30b7720c915680ead4f9bbd7d5f094560f1d78152a2b4f6d768e1d02c95b853a61fa34140e44ffec2a7c3318ab0230558c8457af4e0d8e252dd73013aa0b129aab3cdbe20de3a59797162d0600b0e6f8339b4c39601284be0fe7e61c830dc40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310087fae13e5d222f17e92dbb932f00147e7c6c283444bad7777c2a2d8d14ad22919c9c63df5bfdcf7aaa8c39da8a40101302307b7cc5aced63923ae36c75476c7798f0d9a2a483d517db8518c4b15b88b3f9d16408416100f0df7aa182caf0e02cc8a00302047c435bb500683066023100bef58cda637de3116fa4bfb1fa7cdfd28d0459994703415dc10f963b02aabfafc2cab614acacf0d0904c31904dfe06b9023100830d4ea4e4d396ff9fc373984dd4db63770df070c1e35a3d90c87d4a210f2e24de7e54ab4bf0a5d6fc7d3b41bfcd41a90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304fd59617d46245a7c7cca09954e3f5fc08208a3e056a6e95aff60e5d1dccf3b37ffdf4a8783ae97c7a9e5c30d8a38ee802301635923ec3d065bba3025f730a2835aefa846a1a91abe44400521ecd76043d732a29138658c89d865832ca0c96b66dc50302047c435bb500673065023100ff0ee8ae0799deb7e5ecca623e84b64398a7d41081f8cac4e8e3e8a3d441a3ae128dc6997bdde9a642ec495629b634be023048ef91e22bc748f880abad3675a6fe1a982af64bc6afcc1c300fe4c51f792c33fd5ea604ccb0c0c0c06b41da5d84a9470302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304f3ebb22990d189dc0e19c51f38197548c2654e7ff67965a93344643a8de84d21c3ab3ec2cd16eff2d7d2e776fd2d074023100a3d46c34a88f14555ef4468d96b46b1dac605c22a39b56dd761e67cd18d3e73023548f615a1a9b8698164cb782247b510302047c435bb500673065023100b674d2d6763b7fbed77e245244edb246d68abf3bd1984b22aaaaf77c0f96c8555ab4ac0cf817cc5e79c560427c6110be0230553a011ed9dfa39ca7ef7db415c6f80ea22394f8334dd220e45562c0f4556ab199b5e4091bcca57468d5aec2f93c023d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300fd408fb3d310b0d43c0ff728b99b853fc9ac948eabfcc4dbad7133d2e366f39ea85f4253ad4ebd1bc0a09245dc3a834023100ca166a1f8c48061c9a01ac4e6282da531a54f0d481d3e0c7b8e2125f31a0b3e7e05049b50a86ecb8be330bb9c85903510302047c435bb5006630640230190056569b7465f513ae444df30f687de0e5c724a9d6fd8376eb8f14714dfb506cd2a7591b25dde3bdf1e82e579ef386023056bbcba1d451ccc77782047ada5cdcda99cfe437d155545a3c1c78a3ec17e952613649d5b0b3ad35052de7eded9ce5790302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e71d48121cf311830da927ab29300406eabfbe6b091fb447c91accc97ee5bcbf58ac7e953c3f139a19c99f1f4b918bdc023100b8706d33b32d5be933ca4422887f660611d43dac89a1ed55698f7621021d15b1faa8ef863cbb3ebc27f2998af9c00ea70302047c435bb500673065023100899220bdf2b32013084db78b31edfcbe34a9ef1ace114532d9ffffa4cc5c25a0a42117f944e117c98a9a1147c6c2828b02304e56cd2e8434c6a0b51a6a5555068bc881e81eac1db37b5b9ab359152c736e53819dee08f7d5963e1ed673fcc64fe95d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100bd90b996c6f12a1a2e5682da685a7afc514edc630e7d38f99bb496b37cfe0e94282d93af6e2892bd0354ac4a4fd068f9023100c90bfb7e67dbcceafc9d5495089d18e60bd8ca193f5873a318b809f541650638a9f7b271939463afb92952bcf8cbbdc20302047c435bb500673065023100a116e43e2b2a76e12bb5ad9a13f78ab11f696fdea76a8452e59abe625e6089db5b3a010b57af25f3d664d1b19b1fdd3f02306890ff98c0b771863689bd335b2236c80469b0e98101a1d67e212c6ff6c924d28f159b0e09c7e3679203804f30e88aef0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d611bfebfbe7045d0c6a5ce5aaf808b7726be50e9d6799e8d29d11940477ee28bd72a9d5e5f50f79881d7501ad77bd720230294e9f9e86aa23168a43021f0d407c9a00034f99e760e08b8d0aa2082b7f7760f5ae7f942249a6725bbba5af12cb3a940302047c435bb50066306402305009c235720427bd6594047be13d7addbf4caf6a048a79f3dce48bc63518b5fdaeb5fc39241d1c9f93c2e868e602c1740230154cf1ebd8def71f9d8ac70be33aae150b55b56e894c40ef2ba7aabe6728ace30a77219f4c7b8427b21fa0024354f9620302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d8c45b2b650d8b59fe8293ba37f99943c46635109f70d16b905bfcea6fcf7fb0dbf3d4e0b5b5669d8616bade8a28905702310081cd8d02bb55f9bb30d1bbc5c2af1c238130077f272b033eb38b04fe341a95d3b1d99bbf9c58ea41726467a1d3dceee60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303dd52809a19350318d72a0b5c712a2964321d90a85138a9271f74998ee15e8c019ece31193ded3a1118079b88c8153a6023100ab805b3a1eedb1fbd1ca83a8c4fa59dcafd2b8cf5f3ac72f59f7795be5df10c3537fcf06afa257d72134798ba7f0314f0302047c435bb500673065023100f4e41d1aff24cf95c110b05d77ac9e119accef8b6fc235b8151476f4db60db9b07df31063582bb9a9ca071d6230883de023009e85e594fc98804be0611098e89baa7d179cd7f7ca1dffe8ffd44453db7fd23a5dff73328daa92c2a116df8f7052ed90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064022f48636575554062b1ebe82722c4917ee748efa353bd8910143b5346185be91cdcb0179342860388c6766c23784700e5023100aa4918c3a6adfe120912683deea9eb57b50ab0aa313ebf29a8d6d1cfa74190739d31f9718c69abb9c61f8811ee2973290302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230629402424f4011560e866809839fbd098593b292def5ccfff158bd720f6d7b1e0b2e1330548c52802d5709be9ccc0ec702302cb87e30c3e5be934759afb8cd1e7d13e130baa4bfc6157dd89ed37065321393a5a5f76b84b7dae55ba082002867f4b90302047c435bb5006730650231009bc93e703f5524c5d90f5b861e9fc68ceb90197bff964fe84e240447e3f25ae22fc51c25643fa0d2a9d8df1dde3ad718023066d590fb9a0a03aa7d552e8ed9d281644752b4276640894de72454da64d0ffe60a93aa5a2d4048ff958546d5b90fa07d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304ae2f87b56336b447e346ee6e422d21744089cc095625e24ae6fc4a88068d329b3cd82f22620539baf37216927eb7bc002310094bd5fcd8ef53665539b11ab9ea057d9cfaeb808b1f18644639d0dcab9577f3fcf9181e6b28ac4b31e7567cedf2a47f40302047c435bb500673065023067d532ef69dfdbbb838c0533f3750a9ec4b6d0fb1c5d7c694a3db210e95f86b3f9c59f7096ce8bd471cb9427e24b81cc023100bccb41f65c76cdd25c5e3cc2db3c73d1443aeaf0afb2aea6f712e262951912e744d95a0f69ba8c27e275f5e66e4b94690302047c435bb500683066023100977d35d9cafbc75b9744ff29f5e104196d7c4fe2208c1e809156d8fef4bbe97316915aff3813bf568e8d107b840bf799023100d33132bd802d69df60ab07e9592ba6a2a2f13c23265275547381b0ea46bf99ba2ff074927fb1343290825d48eaa1d2b10302047c435bb500673065023100a3e839472a86cc008645ae2d2ff8f0d82895d3c90f21c102109a5fac480f0f8639951ffe1ee0d2053afa0bc7d9b1007d02305dad0d8ad11c706dc8ee458a49366d1f779f5f31cbbfbc131fa2cbe6805ee5dbb9c7e99bc483498a934df23c2601c5420302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a4de112cd7a94b8c8e7ab6493846b22a19bfc528df21eed1b8d939f520d6f710da3605ee936d0bb83976bd02755683c702307aa89f5cc44eae2d586396ca37a4b7dd1af6fd3f252990d4d11ee6424ce19f81d415cda76a0476b09a4e309ec85e589e0302047c435bb50068306602310089e88bbaf37026c090ac7c1cd0625505acd8aafbc1d3ed8be8b7f08af781f9d9f51c12ad69aef52cd44fa3ff48012fc9023100ab8429fb052f2070d5a2f0c527f93c60754b0ec79a9ec56beca7ceec06cd3af0d9d3f983c3e45a168aed1ffa230e82fe0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100db9cf4408b6cfd7d93dd1cb1f4258f45857df7b00112cecf18485f4fe11c046c7b032dcbc9109f458515cff929ebba03023032df9a06f94f398f60032e81d00f6cf21d5e0cbc87eb400639c09348942e355a95c1e0dd13fb651711f1ffe4aa1581f20302047c435bb500673065023005804db3a8d907ea94ffc6fe39590d55f6b4b8af5e827718ff635925242c2b7d54f6be31ac365567be572f883fe5b8cf023100972c6d73466d71d0bfe5314375c2630d8af46d5701c95656317406934b2478d0d8c1bd65959dfb6a5728202ffdbb48780302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300241c560bc3ab05e75eb7e497f59d8f6be0faf146e2613beb553e1ccc12d2a1253d180ebe93e9b85f9199d4909aad454023100e9d84348ad7076f57c8cb022304e5a755c6a5658482b7808a6551489ffffc9c249653c316b377f9c7298879c991aa6650302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fc063bfff8f804bd2b6ee0637d6507fdd622b09cb1ef35ba21a1189b298325e4556511c2509dd6edf56438a89b26d01202310093cfdd2a503cf6a1fa1c29e00368819f7c72ffdf8fca6b1fa8f9267b49534f28912c1c003fa7c523c04d49ebffa050f20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310083b5d214060aa01cb0732ab6e253c6d7439071d2e7f1bb80ecd8ed888d808ab13dd72861dd3edc0d96dfc3cf7fc02c34023100ecdc4dc2fed5c8e0bdb128064cb614fc58191e91c9c3bb6ad7db782cbed8d7cfb7bc98b591439f17fb1426dd43ea004f0302047c435bb500673065023027d80558f68ea9fc045ef497d10c98472ba378524c0f7a140771819ca15e7ff57ddd6aad4e6b9c565ee106f7644bc68b023100c37b4651ce55b70d94d687394bfb8d7d1ef4e1e5df7e5f4b8f561e28238b7953dba2c806a0ed47507d9a4489f9b28c8e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023056d418e09ae99d0146e5611485a3521c3ee8dea497cb2a13c02bff51ca29a7c7d11d6fac6e9a688a93295dd000041a0102302f07e2945ce72cf74877ad01f8c5fe90a2880f7c5444942ddb2417b69756b1af1161562c8c2b2fd46e20fe60b29b53db0302047c435bb50066306402304900acdf20f4e9bfdcaf1abbcde3d262a229544416ec2b9f69c463e2b2b4ee2a4f4d1df6f84be41dcbcfd0ebb2a1ff7b02303a5fa921ba98e992777441bc401c2550526306efc7c940954f65b032abfccd3890c58ab433e294ef4c27928cb1279fdb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310086286ceaa6464dd1701323dcdcd1b9ed2db47730761f2deb2c96fe6329785c77e920668ae54c66bf5dde5f203d487423023100fce72ad33a0601accfb4a5128d0ad718493df9e39718b6a9e7fb092d07deb10ab96b6e9a04718a0dd574f7486d02c97d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230576956e1688c7530ee908e22e340ece0e6e11ab6e645236967e569490014839bf681c95d0f026bbdfdabf51c801afb310230797ef7a3cd15d8540792308b2be92751640f5a5114fa79d987b16e33324663e55620f66b8d2225ba2df5e5af069f63d10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303739999f44a118011e5e98f974d38855046e59001bcef2a7fda8eebb05eb63d756da50e63b4dc1b99dce553b256b38590230560e7b1a66d707f9f495969510e7661fdcb7c6dbe9f6ee795e3e1303cfa78356c0ca92fe6cd39028a39e472dea01ed220302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023079666bcac4d58d3222a322c9bbaf44356baaef614dee8ee1bc658b9bf16bac45a854435cf24eed4506a862b7fdd363d0023011574ffe0f028b8c9a9b795c23cbe07d97c635de6c0d5d36a3f393561dce84a678e01c14a263aa9f11c711375bb46cd20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307852557c303da56bd2eb4e77ceae440af877d70a23c9c526c838d50752b78369d291a0fc88d59fe4056a6941033009f102302bb03a67ea963c176066f83f2985d0e9dddab2c446acf208af39213c576e6dd20fe4500c09ad63f6ea975510b3e81e040302047c435bb500673065023100ee95df7c88e4b32347f1055a064095a88a5c4a2ed993ebd24502506a0ed15574e96bc5b4442d3c737daf3b7935fbdfc1023021bfafd721c51fc281c7d9f85f48b476f0d7d7f9cddc3cd47efde7d8dc3f143bc3da3b846511ddb59f5d3bb4095cb1250302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305401ac127ab0f4bbcd7ff618b6eb9e387b5ea81efaf55c1edd7f6d6025ca2a1935f7b21d2a32d88babc4a7226b95c64d023100db39a2ad4a1f6c28cb9f8567db65b29e7710a7491e74a13c6d7aef6ef9443649b15d80d63897e03d61766611fc9701490302047c435bb500683066023100f0f201240a95c9141f84a1dfb7f69156784c2f04feab96bb36f2b9c4fa696af6594af9f7baf6f78dc3a302127052d045023100c45c135423e4fefad1cf4a7009a02ca3cf2867cf2429032d0316c58b85e3c5d1c89ea0cd49a3de962f947e22b856c8e20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023037a48b43c36447cd1cf933f6f98597dc1b5969832c4fd41a785d5c9d1e2f1ae7eba89bfa4cae6044719cc86502b6f79c023055e3c1f2186de72c10aea8d7fc1b4b3e64f887b03e49bcbaec75844b942da6f4f0ca62a0fc47167c504916d21669fd0a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306431f547b012988f81dfc015fdb2a9a71b1e2a72ba5e096fcf3b3944be0a739269f929a130ec3b2ef33a46b3b4b910a9023100e2b578c509fb5b90fe936fdc8d1751f0539aa724708a39446f40850c97cce841715f44f45807f8924f6e3efc9e1f4ac70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305d7c1e12681bf1b6343d48a851d5ae0449e7d6dd78601687a6eb8727be3beaf932b1d321c19879182ad6d166a1f263d2023100ede1bbac0ebb15ce85b80fd84119ac9f882de834db4ec83be7e411405010b382253e41343fdc46a05ae6375ab676ccaa0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100fcb60b31ff4b12d197dd557732eee05720ca58606e7dc238d876f5c3958981ba6092e080f3804615de77b9f1d80d4afe0230724116ce0ef65004ffa237dc254631ecd5eb9c36a35761fc9897de7baae768923c5fb517654e15323115cae6ab31031b0302047c435bb500683066023100896cd4c7037f67ccd183ba6320fb910fc067a6869ec761a3bea7bb8f94116aba209edb04bf1a251afa86784dd3ab5a68023100c2b7582608e90e3c4019bbef79e98fdb9a98f039474abb946bb7a63530098febded14f357fef4cb24635d05d3c2e9eb10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302ffbe2c12650e447ec1469479a642943e707e60e36b065437df75ec046c339eaca7ce9f726e6793b51642ed91ed917f4023100a3c2f02f19d8562ae4d448ae9ccc21eebd7082dc2af86847a693a3f23feac9ad0654464abda32d18fdfd02d21a247d790302047c435bb500673065023100df100e449874a0abcb4e1a4ddb4b63a2e8c61bf062183ef05ae0c14a447207f1ea832be35bebfcb9054c72e9eb7042e5023069665fc18803ce7a3b459a740de090afa50285f27bf36d9d642247be504b7440cef46aacfcfc1e1071b9f955ed1f803e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b81a6cd7039e4cb29c617195c984376a5c3fd280c6f985c7b795080de0587d238dda0150c64e9fbc7236593234845c75023100df97ac7f2611baa524fbab719604d07052d75f0994e87180a88b8d5dda8c4521adcc8e8c0985e7b73d75d796524cbe8f0302047c435bb500683066023100fa376d48437ff208a58851e18ea884b52c696b44e93f710bcc9b7ae528257071a5efaf563fccb5389ee7188853f438e4023100c0d2dae9a45220259fd30d405aed1da74f272e6fdc41a56437db8310ce7751fa80605b4abdb61d5234db9c98cf92b56e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230741032de1339c66a010bbaf05a41127e0eb52a1a17a55d1c13b59b79267c57c797cfded422aefc1bb99dd46d3caad62e0230606b6612df9b559d9a3957f3566c79b1d2211693bb02aee0a90c96e841f5587dc687934184cc274c36035ff1a06e88550302047c435bb500673065023074f21119155ea3bc0b7351467f0aff2427d04b654f26c62c20badc9cd185edb02e39f680fabafb7001c5493bfb262c470231009e2ed1d218bfc575ddfca400e48d58d7fc022dcc89cb3e198e7b44ea9deb688586f8e8a0205714554aab7e8d863eaef50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023043170c3ada3783d7bb444fce029334ee10deca64779077c7539e9565ee78ba9166a890293ecb1270e51cecf761ac155a023100b3acd252b23bd114cc76dbef2b7af48198507f48988eed282870ddf4f9e3c324c08756666bdc2fec23379ada6d15c8f10302047c435bb500673065023040660534be1e4866fe8a62261080b1e82cec23cd301be2c9bc10f1d9e534b855189f08791aca873c28659b0f13190014023100e5dc6ec7bfb41665c9511fc92f54a0444ec977febb0eaae6ab6a7efade6eea2a0a7ae33a7ec8a87029a4164031e770ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303d4e271edbabf6330c59c6472aa8ce8f94f9b831d61a7353cc66d63c9a41a2b9fb8b74214348c553238b105d9ec8fa3c02303664e75e0c0abbfbf34af868c18a4384bd7a40c55cb5e45bc5459daf76a77c1b8f31f369001cd3a87e186c24e36c7e260302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023018a1a9e80b3871528d56f543309be1e86fc266eda1042a05e7721aabbbe51ce7d4aed21f3093e8d716b2552978caa6ad02303252b2823dedbefeab83282877c8114aed7cc20e67a12749ae2cd035c3779910424e6495089e18596fc11c12bec749f40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306f588dda46b77ba2a065c67670bef1f3ab3e31e0b56ca4a6f5adf0a40179bb350b6f3fa4d041f5a46c6390877fc83aaf0231009b4ce618c0f9613b52c40b862290e8acad532b6cc5413b5dca77ad6faf3ae634cd6b93bd5a1219abbf848852ab76df4a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100bb6a0c4b6fcd292213969a6d3b5b8612e85c6436edba33e1791906606f2cdc7bc5b8ad308a8c299d8c9d896b346f9396023100f8b430d2ffcadcf6d9146a40f8d35761763533a6b455f1ecb79a6a5dc5b04bfe5b4e25e03bed1dd6c15a15fb1c4cba000302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023015a8efd1f474637e52d10837b278566affbb7f7a1529c1e21da2f5aca94fc82e2b7a8d0686f9eef31aa19aa311ed49cf02310091c9ddcdc9f3ff296293baa69a7ca9dedd53487d95b036c5dca4141f7c7ea0ff7c32f37afb5a1c6d0ca83acbf49aa6740302047c435bb500673065023100c0ef25bd02e57accf7556fb656e41115858bf8b18054d3159c05741c29374e9673aa6eb439fe48daa43b2719aec65072023067b93bee5f42a5a08b5d878b267340ad4135e15b6921a90e41e6f5918e22da0d2d2e6003e4891efa1d8ca368b6008b9c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303481a982cce712c02723665f4f6c4e50fb320a29bcb10829e11f1682050eedd2d3cdd718a2442933e99f983a3f75b7d7023100becc0e092fefbc2769bee8803161a09a2d393dcc273645f5b5ed4cd067e452004c6c5ff64247fafe3ca4ef285f0fdbb00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009bb4acaf9997a870f5bbf97cb61cfde14526dd6af7e0c1103e09c4867cfb194b022a81b4f662ab9114606abb123c71c30230210bc1581deba02daa5bdca1c0f8d8652fc24296df6897f5237abd7c4a87e1572cf67f39bf66ffe19012b4b575868e2e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023014bc8ca6d08e5df5637007c73e39735affeff560dae4d9775bda5ddd6e3be0a67656ba2157ac1ead625e62c3d191bbbb02306eb2bbbb8114c35f70b367b68d9d34fef7227a6ef6f90de039bf9e9a06d0c326e6848e67932359f990bb20906805c69b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230530dee7ca3b0506dd30e721201502853fee8f9148e20b93935d137f7976de7e2375fb270ae6818ab04bf46d4c06fdd76023026f6865e6b7c87cc57b78add0a3291949a7f06447310ac4d61e7f11b2b5721f0e46bf74ee948a692b8556e29a5420e540302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a8361c8aa45d4a7f9bae50ac91c16cc353659f2df533fefc811b784b9d106f221796d450546964ed91830bed314f4f8e023042f55722f13b7213060368659cc88e33e131261ee4b405f0f12c64b3e630470dd714b0d9b077a2c02178488fe6641a340302047c435bb500683066023100cc6950ef37be4bcb97e9f3319b0fe590505ef93f46b015172c3d773b1451f54e7e65557a7ee7817ad60469ec4d8d15f8023100faa9be101e05b0e63f501ccc6ce87e2d99a3cef74c5c76054906222ea846092ad28a7a314932465cc2d320dc49bf5f370302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b16253d55224f288d531a528fc72f7c38427b393dc68bd6bba2708906edb47282ff48f13609c0acd11dfc8dacdcebc8b02300c2ae705fe7f6f9eec12ffcd0282025e0b6e9f8a8300710de19f43f552f56e4de1eb9412483db390d1bb93f4eeddc8d20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310080eb106516eeb889b782c0acaf5b5e6079abe34af51c6aeb3bd7c41e14386f59703bf9f0e2d361e140ec87dd0761ebe3023100f395bb72acf96874bf6d4d063884e30299d9da882626f370c07e099f1ae6f9d0e6efbd3f6ea34e3681e42e783a8008cd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100897cfb2c26240a888429bde91731addb5b35df656d28d88a96e83f5065424b0fdcacdc640bf1c67e103fd8f86bea095b023015d25fab6da2b9b168611ccaa49387d828c35c26b37fdffe56d2f4d870bb07edeefab114b54723f048eb8e914478b4b80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023047a15858243afa52a229c12bc336a028394f55eb2575bfaddc75c1b41e36ff71b984ae0228f5881275f8fbddbe5dd8770231009a2db6bccb6634124a499c62d0c0353a789510303200df1f6d41b8506729657252ccb06e093650e7e918eba36d5c34d90302047c435bb500683066023100f72c613f0ce1c1131f1032780c11295a0b122621451497e6cd3e0221f010e81eb847cd7d08dd123e0fbe526ba661a19d023100c1b30246d0f86672a907eb85f2f273374581010749e18b45704e3f71466d31f84e1b5cdbf9935846b3c2a09eaf5562230302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f167aa0f6a0bce3482c14c84fc040bd02918c0f1979393a05ce873bf6fa3c5cbbdd901a04ab1632735a3412c3b4822d20230453afb4bb5feb92bb788768fa806f403dc37695f173473c643565ce7c275cfe308e30471e4e38435a6717b922865096d0302047c435bb500683066023100ddb2da4d203e5bf7ae62a638454d95e1895601b11675e5034ce02bc5d460efffa169b26383c001a8151f3c962db7c20302310098fab89e41c84716f0a35216596097a69dbdf38b0495cc2ae0e7f00737b695259bbd9887f7f5c4539d4376d4e749f96a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302b2685ed0c7bd3f21ce66d9d9137fdfd1ae69033623eb0d77071a8fb8c934ed6e6584a345ade2d73887ef8658f2ef3e802303fc22a84cde82e4e1961fee52fb9c51c1bed46f1bfedc4e0c2921b7312b816d1cab4eccdf6bcc9b1159c06036d2864860302047c435bb500683066023100e7f3688cd4787ea8a4e805c698f4c80f93f365f84effc6e01b861294743d6d08fe5e64d5b65aed270d3bafc50ce17c7d023100f080c05fa8b76a0c19a7852e5f3eab2b95775023fd46ac5442567f0b0fd0975ef6f2fa1899f2ecd8f5d3e3a28bec1b570302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307521ac91246f9983e1746a96e2fbb1bdfde22c4272f48c8e0ab03489fe6204006b1a531585ccb2ae0bacf8e0b3f7df700230240c8a929d8986e98aabb04995f5fd7a83181364789f57c06d6f26ddd8d5e1b9c2de4c71271bf637197a1d987f26e11f0302047c435bb500683066023100d3cebc9c9db47b7c75a1270384a705058938ef6dd700f489e55376ba5f2773a78867b155ac19abd7d6668e9be245362e023100aaed20aadb99820201a430054b0a97d62957b59c461315546ae18108aa896aeba3295989eb7baa75170d3e5f54f911ea0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310083e94b30c22021f1b2911384ae47abfa97ee6a0e9f76b6bd15e5ce73b65f5ee109da60165ef031b9d5c841a4aeaedf060230604fa752f283da0a16ab86b58478d68b5c59cb75a1bbf82c069debf943947f7c841ebb65e900a81755a683c2522b50a40302047c435bb50066306402304acc69930c69da4224ac2bd9c5454fd14c225139979cf7f2290b00db11ba8a6d5ddd35524abedc3ca400e04ad2c1482402307cdd70257ea6e1ca2ac41008752254393da628e869ef169d815e4e43da4e79ffa0b6ed69036407e24d0895eb3e6c55a60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230720ce4775cbd52f3bf9d4eed29c75d0b4d859eb54a59656da35d39ef2aea79ea4ce65f53e7500cec7562c40203287ca8023100a085ec97edee91a6422e0dee343162010edf1f05943030175ded31fcf60a2bddfd7eac65b900c9d3491d6f8cb01130710302047c435bb50067306502301153c1bab7268757c190aecc9b09fc30d14796008599100a0f0d6b6b122b933cc95151d433dd368b6721970ee28cc9f7023100daf1c5dc6ec958cef13fcac1afc390173a615db6097dcbf42825f70a86d755c4fa7a893b07062c58cda1957627df4fb10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009f4495fc1d85e33f9ece97f3737f739aeff6fc47cc8a13d4403e86ed7b4f8a1ea7705f335b85817fe80b9589fa988c5a023100d188000f8fe89c0cdf028c435733319b75dd3fb38566f4bf18b5573ba35a094a656f627beb235c32aeebcf852e237c9f0302047c435bb500673065023100dd9f385460d8dc1b19abfc87f52a73f6cb36ce5dc57f5a7567dcf3038eed94a7b9f202032e5d299dd69eae0ecce48e7d0230271ceeefe133d02905e4da0ce528d9532c3ff6055ed1feea2d605f37cf968d8e2797e526a1eb364445bc8e1bef13f9a10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f68468dbaef34e80f5fe6f898431ef75eb0e17c86d47059858bcc22d6b6a47dd7944485eab292ddae61212d27dbd867902304ef77bf352c6e49ffe4eed25a23230919ae648af662d4100fb1150a399440a39668efcf4bf50b1fc13059deefdbd5b8d0302047c435bb5006630640230623086f1be99ff5d6bc01dec31dabb5d672c7c5c8fbafc8c8d1390ea4c546b1114a9483b21dcf63e02f411e576333ed702303fc653a46c95c67f723eede89873aa7f2c3011a3c308bc77abb9c15a3c287a2ef464ce09609cfdbee39b4c3353920b740302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f4a6ca816a9d56eaf203562cd2c3552d4b405466a058319f5b7042b2113c117c5454891f8c605d98bfd323300fd22f0d023100e8bda98f215782296e5c0d83542d6226e2936a18d7454deb678a6d2a011c66e1cba1b1667e312a220d5dd5e9de512b3e0302047c435bb500683066023100a7696816735bffdea273bf52a9e87c574613317dbba352a59e1de0a68b464d70625de9ac53cf3be7dabddad74b1cd7450231008612661994f9d24c04bec69908eefa7da090fa4a6e819fd8891bdb80b865d9bc7914833546f336c98b00cf22d2325bd20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304093e6f14ad684a78d0d84fcb40a0981af5d68790f5cb1b43fb1f16c801feb76ad613460b76777a7e900ede3e0491c33023100db0b7ab828c8b0d45c9d09d60c85d66272eb62db80f89fc3c12b563309138d6e088f3e432f1d35f721ec373480dbef5d0302047c435bb500673065023100eae3f22ac26c1f62efaf32e679e0db47db66f1f66706f39dfd913c2cd4f66696095c260445cef97000abb090d6db3d6102304ad0a3330910aaf46e31be44e5735d58025f65ebd711575d420e7d79a6412ff9240db02ca4e73de62eae4f8a5707cefe0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009a65270de5a5e21af3127b89207e58b830c26c07d20c9c6efff28a3fec988d6ab7fcdaf676ac7b5da681d017b9c961ea0230491cb9b523c86e811dc227fc163b77b786e680b8d44f644169a8554a708a25af8fa02fe8fc0751ad4359ad46c757c8d20302047c435bb500673065023100f123e723ccaa194b877239cbbb788b83b0fce077f526a3752c2539c1e41f67d5fee1fe7fb2bddfc6e6421e6a209c9727023005f19902af38e87ac335924f400fa740c7260f6e7ede120d36fb8421489b8a1ebfdc402895669fc9d9f2548d385d0b290302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f8477c700a9ecc26551a9f3995a46c54cd700d6fe3624ec201de1b17dcfa11d6bed0f6bcc3e95fa972b39de9316354650230167afd7f1b3cb77a4b5bdbf7c895d75ac2933fa0f56f0d93cb426c1013f70a4b52daa4ac61b1101e73b137b4cca20c1e0302047c435bb500673065023041d7faf7a7cb125280886d95a62b8e720d15f5c56740db65e5454a2eb4c3062926b0e61cd7006af7c5f713eadb17025f0231009c3caa129512d3ca82d1b7661e3839708e8f7ff88a072d77951c8a12660eccfefc7fa99847f7c7b15cc4ec29414ecc400302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304e471faf39cda2cf761919e7a72e88c28cd8190e43e922fe5fcc072b6c8d6faf36e378b4af1824aaa93eb41603e98d76023100ee56919a9c42c2c0314e8d43ea07edff1fedcf09cbec80671e78143cd099f9d46956028d27bc4653fe44c3e8f1bf9fb30302047c435bb50066306402303e141daf2d50518f236838dd24563ea2577e90073f135e1af0bd79bb6422b0abc3c0818fe41f40d12d35f91a6c4b0e210230114292ec3ab36755b42ec3d78dd8f8a2bf2776db465a5fc803855ff7ce6aeb0fd0b1ea4499e4c06553f7589c649ba17f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305d1f1ee357d4ddae97be818fbe32afa8cca1d97b6a541400c14900e346d20a676b8dbdc0a35bd57e0859646f5b3b5cd202307e028131484a988f81b35218dccf60597150cb44053cb6ca5ae55f7d65eeef2e266ff24265e6f2d2b1179b424e04bd7e0302047c435bb500683066023100b9caaed2b69cebba2105b9cc050dc789e317277666058802face484ef62d5398f8fb6687611ea0c7ea1746f5d889f9f2023100d744627fa24b3c41ff20bc01070acc7622af2f51c41f5e807c2f212327b50b1610c58bd30da0d0dd7ad1370eddddb0370302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023023e1ba25a67fef2e0074e0ea99a3a65e193156edc9eca33592e57072b1b3bdef3178de9254514420b4477c81f6cd0690023100c7c442a45e89d9c1b8b3e9a0094d1f4a77e2ca04e957a4abc80bdcaf6f47d068e2fae065232623f728b0ba6cd88af5870302047c435bb5006730650231009782b650e7491bc7d44ea78dbf17563dce675b0ec69a4dd5ba29004d4b870b8338d88621f2fba2a82869bdaec2463d3e02302a6d2ac33fa9740040a5e35917a3e9d2c4c13ba8d36eb8d7cdbecce2291cfe6479cac0a063cc2d3489d77c5d7ab78d990302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301c7dbddaf273e7a95830208e312f7871aa90603831241a1d5c65c19ad5558f36dbd90860b23f5bb556a2a960bc49c7ae02303509dee71722583711d878f4bfe535d688d52f2703722d123b52db030abcd9b3ae7a2e1d2891c723df97c7d78ab050e90302047c435bb500683066023100f1ba0b537736dd6fbdb700fb29cc65dc2f28dcd5e8cd90f802733c013867bbb29f8f027b1e96b126970d232eedb4a37d023100da395522b543afa2c07307eadb1ab90b40d74947ba1f844080cf9ce327a285d860832b49e2207145b10c9eb824aea6a90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e170265a108e52f197aab8d57bcc3c566bd205ecc082f74b6fb59e93048c65f64d703a8660a68eaaa9e3ca079b5223630231008c339ee32494b7ed965d2ccefc47adb39b035ba8402e271773cb9fe77c6fb0de60ad9077d08e3b9a8357aa83a7df8b3c0302047c435bb500683066023100c53052b9c92f076a0d74afe0c7ff8350816620a76c89d3372bc606b2ae15b5ff94469d2bc90bdd57ce1e1038dee64762023100fab54acf33c9497296d8b98b8313a31605f5fe4acbc01dca77b7db6bdbd29a0afa8fa01448e63f3ce40e95d478e5f7070302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303c0f5be804a1366ab4c50244162d86bbe440b3771d3857e5121efa3248d6ad03b0344f31679dbd6fcb90a7b9e44b1dbb02301e993ad95a1bde9d3e22b07e375d76e1af21c5d7b091b91d5422f3d99951552e88ff5cfe09ff3ed8a022a8e58c47fc580302047c435bb500683066023100ab218e2cfcaf11bf1383c8261b1e9adab9ea3b70665b36197494afcb6c442845a96756c905e376facb0ce3274d8dd850023100c1e7740e6f2178c2426425aa5204fcb496d885f8274a97081b5262adce199cb4a97d286a4d94d2c82c7f1b97a084f4740302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100cc4195ab6614d6fa53d7886b712d0a157920fe2aed2f03fba7ed80b25e47d44cf012bd33dc2ea474cfee713773e36de9023100b28047001a277c92eb263d56b8e0c838db718d129f5e89b2f6443c0ebd55e6ecfa9eeb49bdc078e5231a859822d3ed1c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307d3718f5b93d7f7deb106089f0ba5aed13db3bc509f7a29f1eb05a9f90bdf2e3ddd5fa847fc654604716199f3a2bee86023100dc536bf5e27c49a469a399e29cd4e18d54db7c318026baaa3b0b59a9f4f9ef847b77ff0090b42c3dcb8118d639f4c0d30302047c435bb500683066023100ef715c2a827b244bf2c85d851e9ce68c6df64d2cdd9441d08a3f47994dbef44d941334abec15d20fd0f01bb0443d8d520231009f555dacb498c0825ae678b92b4752cac0431fa5eda64cda9d83f24ee26d478229c6587ae96773fa2be1a7dee2d99d390302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100dbc9d6f4c1b023d5527fa7224e008738cdb53a870b35946a0eabb998113009bc20585e9c308e5d73aa8f8d34a2f8bb5b023100e9df97b7d88d15f9d4e147dfca66c3c6dee14cc2afad78d0ddaf257383796110e8bd1952d36b435b9fb788aed46bbfd10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a2f6e62e4d9fc48652ef67ca3600ad21f5a899e7d83484362fb2494f5edfb48c6dc7da53bbe7c249b0d863313f04cceb023100b4ef5369200c303b3ab888b3fb08802c407007605d2309547d2ade5ea84b484e50e518c933f9b44af1d16efb38557e780302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310092709b8dd0519358d48c21786e62838f565f96f6152f2ce6fb0d61e4edc89909768b63162bcfeb196e6d0d7bc92bedb7023100bbebee9395b2166300b257578ca6cb64e0e3e555bb426ea6527b7a8b953d9e721a4322ffce9bd92a90029e28d24f64220302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301184ae330b1459a1144a9078f5658513c8d23680a71cdf2cecb2969e048347e7a31ea2f5d72e48e615c7bbec1ed4ee60023100c3123fded5157c228f66b50017629dc673f6ad3c5cb14da57245f77dee73dfcd57a432d37052a96ef3bf74bc94b965230302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a333d0326f418cf21d3b2906dccbfe6c455c1a712c3529fe66a1b6b78294f1f999ffabce379c4e7bd3ab7b521b541548023100bd093f8a8abe03a6f382535811d5a203eee6ffccfb41c833204035f51316a143477352546a8af7a27e5469369bb410980302047c435bb50066306402300e78b72d3d205327556adfdb378bb106874c02c9af5baf878a82415eec29a74226221a2e01a8ec5b05e826cef0165a82023027f8ef5f329bcc5b562738d9ce248ed93a918a2187e6d2c5b2a94f7af726ea818e6a92a6d7febb64082f6785d8742eb90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230415f372de7c472a730d800d37f18686d9150ce500375a1eb57ea70e8a9a27604054122b483d40a864956530d2b1bd3d6023008d2e22251ce337a2c11d0d9489ce6eaaafb714b6a3b631a5fda7221ad4f856bff8312ebb6a2f39212cbdfff15df6f3f0302047c435bb500683066023100a705ed4ef9fe66a22c058c871862f1f51d2117c7a6a601ffa7ceecab290b13def25eab9562bef6814bd50c309a31a080023100bf32e1fac088100e526b7b058eafcc6437f5047d7e347bb0f4a43c81f070a71784ec8257d747f599ec55461b8c0b1cea0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300df039bc71909d7202bed2cf95b771ee61364c6c65b173946206e6aa3a3f758b85cd2ca1a8cb170fbd7a5eede353751102303e51b84b01828799211e1b5d5a8b109b8fd179c805bfd881b2dd9348ea9beb5ce8dfbaeaf9f6d2bbcc5f3103b30c344f0302047c435bb500673065023100b4054991d6cf9b46b24def999be1c446d073a5a31cbeba7cb3f516248fd18a0cf26b3da727737a7bdefdac46443aa77d023075661446d19d2a44b160d0b0fd59170f3a9f37dacfd79f76758e4725f734e7aac26885d306d5c5b3b4217ed658d7e9850302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304e35d5f8f0cf7ff94b7372b31d878f2b401c9fc0891d128f07f7e1a3c75670b0fd84711286d5a6b0f46b75f3a85fc5bc023013ec55d8484d092acb7fee31c171478ffa73728f80e8abb8dc1f3ab5ec8e389e438967209f5d84af217ea0832c9585bc0302047c435bb500673065023100de3b6e42fbf786a1d4b0a9ba3713aec6b9b0eb44eb219bc2df4f061ba7ead5cba54bea80dbce423f6443c2ac5c56603302302bcd60f72753e1aab42b1bd9b3e969661e1b1675f33785eeb76439e9795158c162bc773688a1b4b8655e251bfad5bfb70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e61cbf24a9e597b0ff71d2e1342af6010f7fff05761a2d4839038c096ab502b3d08d9563ca38318893e7c7695e28254f023100f33df390ad817118c2cbbba9f16877312fa478eaee3239146d0885cb609b141df4a0475e389ee652b7d0a0676e270d190302047c435bb500673065023001a58e70a6baaf7dd50223f4719134e9be3c9e657514b56ab8470f70f4fcb78cddd58a2f7dcd6cac694dab2508ade6df0231008be30e708fe5d903f48fa139e10033df2ecfeba6a3b94095a54bb7016e60f6eaffeae2e4c53a5b292420e55232f7d2030302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e743830fc8eabb8d8d59b9d5efe5b9102d247b1ac20aea51182a2af4d7b3c6ad13c386bbbf5e3df7ecec187ada60185a023100e2055ea8084811db3a4eed16cb9181a0d918b72d1c1b9f79971bc450b1783b0c09f67833dee16b9dc664d86a97217b130302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023018aafbb4de27a394ad9fcc339767b7e6524a18b12d36c90e7e872a92ba6dc9aadbc1466f4ea44bffaaa98f741f55d0fa023100d66ec3fcd675e13baecaf9ee7940220d89c318f490f31f22c9aa7c2ccb51131893a5566868552eca11b1e55634f056bd0302047c435bb500683066023100b59c7f5720261bef2e2fb0acb710d6c110565349ad60275b0de9a99c818a0bc56680ab81df807f848b06850c25c40bf8023100a518a60f26e42cfdbd62215684350fb2be50af793a84513eb59999548cedc814563cb018b3c99cfaf17efe249fcdf7490302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304ca7aabb8d8a2b9296fb756e9e4bad75000791d3c3b60a4b8229b6fa980cbccf2921ce1127898fcfd9d32362d2f4b7f3023100ab472b57f7f151b200b44c413fc8019eac5fba9f946b1011369edb913c8e29b14beadbf6be4262e4d16a9dd9adf73f560302047c435bb500673065023100973f126c68dcb19ccea58826a34e12741deef5c069ede0ffbdf7b959e03405d176cd429e077d65c7c614ab9e05165f0b02306d22801dc86ed4dbff58dedfdf55e5ba4eae23c4609447b6296b462737490e56722bae4cb78afbd077a6c5e493dc82d70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f504dcaf54c38bd61048f2cce8619ac0036e2c2fcb1108030dbe0c1c5ff88487f1bba22acd53242c04dbb33db49be2e7023100aa3240c740629c38fdad650bc9e5ec32b2cbda3a5a6c19a50ae71e30045490f4774c60a88ee7097c20e9e4554e9feba40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307f250311e485a06812dc1adb69899928feb53cb9999574d1ca004fa214e8c02761f3b43e80968b5b71ec5b9e3edc5e100231008f92a69900bca7c237507136f29e19cd860064bb1e0a3953be30d98cb62b89e2f184cd93180dc95a2c7130f58b9c9ddd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e8b6443be7c2d60682cafc5861484b3ba4cc73fd74cc3fcab9b14df810ff5e3c2b97b4bef30f28544f1337f89976137b02305845065866ad6790b978ca8b0fd4b104db96e9924d2aa0d43f704835b7e04f594cd352f7385a99e44da173ff6d884ac90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023034ece087579dc6a3282e3e430f9857e20fcb20bb2846df7125520872b05f2db7dcc6f6898adbb6532878133c9dd79bfb0231009b9c09364e464b7d62e523b3cea5d51bd1a0d656a7038e237794a27dbaefcb7dbc2b3f33cb3a527a9603b3161a3a344b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a02210320af703c64b98c8c8a3bdcea87c930c9bedcedf30a5f59e34d412a7952f6714eb0c41b6fa325b8b44ee24805a023077f89285d3c7854ea095243f45d25cbe1714e6a061f2144fee0680813c1eec72fdbdee0cfa3bc210cce0a86fbc496d1f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fe1649181b5ccd30a20e83d2021f012927a2ce5f07bdb115baf3751114bea5ee0b1546ba561baaaaa3a33230b06a71ab0231008047e8ddd2473131469bdab5972513cbf2db52a0af1a138eeb9d97f6bd79fad9e03a5c4c1440435fd2f045bd9eb1a5eb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100fcf8feb577d0f5820cb1e77c1cfd2e0218089390a3e58bbb51a4b07a1ff959d36d0dcd06c5e2cc92e8b5045cb070abb802300a97ddb56acb06ea0c6faa190257a7a1dc7073c14cc03aa6d5e8851b217ec75398f6757acd8cf3ea2fe89c899e768e480302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b958a1c2678061da7bb0a8de30191ccb43835d0f48120411679ce0eb4dfa4ae56beefee8eeb043aaef13296b79ea807f02305ea96d107da031dab85a8ddab702b44656ddf8fd6d6f4d2b1e666f48f8bf7ba023ddcb8dc9aff69c8ba4c32f8cedf9cb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303678f072f2e14541d2ef9da0c5e6637d754b95cfd0d0fff3ec494527a126ad948bd0990846e125ce7cb5a55607ce7188023037df47f6ec6426bf3222365e957caaab8d661eb8c4d0ca6fce5d083b60088ef0cbca9a7ff568e756b747882ffa5808490302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008b1b4cc6df64d5805f928432d0d3b747d1781c6c0357a22e079a9fefd15d9d589ca7737ab19f4e6b03a93069b2ea5452023100a26072d7fec1cea01bdac8bfd5e29fc18f71863cba6fa39c3d7b4350ed5ea9ae1aa2d2d31e4a812395422f40cff067c10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fefab94c2b4620e0df93dc6d705f61e0b5194b5e73bd9e761216fb703053665dfec6ffd8f279d8954ab2e8143919bb9902310093e41354aeef134c05f84d2ef827620df4c9458c19bd457f955d52aecce633dbd3427145a6382e3853cefc2917b093b30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100827c06692adb45c8068664db34f96fc3257a6ae84ef4d79f94aa9a37ed2a53fbe6ed6b2c1ce21dd8a7112e6e0b30697c023100f30484886912c0abc760a1a2cfe1b4d3a4c7b7120d95827682e97a891af65d638bdbab0fa43c66c7fcb6b65a26fe72030302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230031f9f2e1f41b808471e61a3cf11cfa46d7b36336bc6f5cd59563853428ea77f91b1ee29a298ff8bcd4d9d31b0f57ffa0230116eda42fb332be9b0c67b12b6ffbd57e7238f6507119112cb7013d6bc5a88a33bd28e52b3cf02b422ad47d9bae1feac0302047c435bb500683066023100882e918869ada06314e6b7fc4b1ba3a51d471a59ed85c67136d8d078f5ece39910ec25d9eaebd40c528694cc5632747d023100c8d6668faec89eda43a1e1d9037a8e7f30c3a9df3205e3c831d6db29bbcb95ea85a755819be8a191d27cf8df7135b7760302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c3197946da22ce73fdf0c72887394dfbfe3aca62dd9c85cd58b051f829176abb6f13fc894e1c35bf2cb7ca639d7a9039023077b9325ee55f5fdeb7628f8a6ae225b7de5bc3fc056b7ec6a28a9cfb268dcd561e9f78050c979bc534105aae94849f300302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230113d178f35447d2263e46830d9d8a40de127a78e55a5e2a1affb3156c4b59dfd9039f9801b34de0e72ada844e8415671023100def6512e61bf94fe8ef00d0f40f860a2626d63bb0e888b69c11f9b30ab14a16ef67f9644c955efecd1c72769d85362260302047c435bb5006730650230458313963c8ed1737f67cda6b8d757201b768efa4ed04cd48b5051957c80bfc1fd15fa5218776f222a1944269379d0eb023100ae808fe442b7741701b60a7225f003a4e747167534f250189ce2008ac2cc8120e23250da736e62b9e267d39f2f55de7b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023064ecf6c2514c3ef971cecd84b53b30e9bb6dd79b47d67043ee88691982abb9f4623d5e862540324bd3af537a4be892890231008f589225575aa9ffaa8adf3c384faf3af863b0a3478cbfc109dcc1c1380f0f27bb6935046008e11e7db4cebd065739270302047c435bb50066306402300e7a668c9b1286d82c941781db9194a3df58416e973b461c8dc476ca002ecd51e89c784da9c57349dcb158c3e2e74a5402301e3024b503495cb57e5a6f7b583ddbd1c6d20bbc6b6f68aff130035db36765bd4c0522c304d4bed71020245a60426f760302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e9ffc87398f0e2b05f74832e29450dbcbcd3847d643dcd5ab37e6f4a2b4fabd09486b2596c6344d8d3d2f236f206483e02310097ce9b1c1572376ddfe60bd8294c7797d5610236f0bd19571f200e574f04b81440fb2a2be9c63ff85d5a9ad56b5f73ec0302047c435bb500683066023100f77c46c091740b02028622eef37564e015c77732c644904469b44c3d86d3082e7d4710cdb3bc11b4adde81d1f8e22fbc023100e1bb506b200e392c610d7713c6ec2fa0b6d343afe9ef07b8c59058443393d20be4156996ce0752f54700306ef80b7fc40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a0d1e88497d2a0fadebe6c96ac4ad72cfc8295326adcf380c88a169e773539eeb9ed7ca12d417dee777908a757cb9ac8023100e34261672001519378f91d606d78c10001624133943545d34e925941d7df24740621da858ce2e248831c4e01c95072b30302047c435bb500673065023100f6fdcac3a7bb032c5627bfc2759afb7c84596e6ceb34c5da2ffafd9b16cdc5b377c08efe14f378cfe83c9baa30b20d1902307ed02c28a035d3bcd41e1af4544f9977a44fce0804063bc7e17cff3cfd6b98f4e871a9659a2bb43565c907e70dde0a4d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b9e2e49e4bae240d342f1b86c2c42a02735bac1637044b8e0cca7dcaf992e5b3097a00b3d730dcd38d0b87c79342db25023100bdb9e9e55965a248bc3ec24a5e985caca18694efe36a8e734e1649f43ec0970407ba40bfcf4de4862e08feacdfd93ef70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b9e2e49e4bae240d342f1b86c2c42a02735bac1637044b8e0cca7dcaf992e5b3097a00b3d730dcd38d0b87c79342db25023100bdb9e9e55965a248bc3ec24a5e985caca18694efe36a8e734e1649f43ec0970407ba40bfcf4de4862e08feacdfd93ef70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b9e2e49e4bae240d342f1b86c2c42a02735bac1637044b8e0cca7dcaf992e5b3097a00b3d730dcd38d0b87c79342db25023100bdb9e9e55965a248bc3ec24a5e985caca18694efe36a8e734e1649f43ec0970407ba40bfcf4de4862e08feacdfd93ef70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100bca1c8703db003c99b631b1d6733a0e4cf51b0f79ea9c893242dff48ea4b360eb4268dbdd664b48a9d3a93b801282f5b023100d3a7470aefc79e550dca4279383325ea4280d3873f4e29dc951d49d8db0642fd34eefc95fde2c8ecd27baaf71be5d3be0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b9e2e49e4bae240d342f1b86c2c42a02735bac1637044b8e0cca7dcaf992e5b3097a00b3d730dcd38d0b87c79342db25023100bdb9e9e55965a248bc3ec24a5e985caca18694efe36a8e734e1649f43ec0970407ba40bfcf4de4862e08feacdfd93ef70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b11de97901b45d49dee91c32595cf5e5ecace18e54bbdc7c06524b2f50427b26dfa5f00063760c2fe3dee306f8cc84da0230631d6d82b30b28ac2e17b3b66d22f306934324585f16cc3e3ac9ed749fd462f487f363e14a5e79b5d3af1ee8ec7ce5d00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b9e2e49e4bae240d342f1b86c2c42a02735bac1637044b8e0cca7dcaf992e5b3097a00b3d730dcd38d0b87c79342db25023100bdb9e9e55965a248bc3ec24a5e985caca18694efe36a8e734e1649f43ec0970407ba40bfcf4de4862e08feacdfd93ef70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b9e2e49e4bae240d342f1b86c2c42a02735bac1637044b8e0cca7dcaf992e5b3097a00b3d730dcd38d0b87c79342db25023100bdb9e9e55965a248bc3ec24a5e985caca18694efe36a8e734e1649f43ec0970407ba40bfcf4de4862e08feacdfd93ef70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b9e2e49e4bae240d342f1b86c2c42a02735bac1637044b8e0cca7dcaf992e5b3097a00b3d730dcd38d0b87c79342db25023100bdb9e9e55965a248bc3ec24a5e985caca18694efe36a8e734e1649f43ec0970407ba40bfcf4de4862e08feacdfd93ef70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b11de97901b45d49dee91c32595cf5e5ecace18e54bbdc7c06524b2f50427b26dfa5f00063760c2fe3dee306f8cc84da0230631d6d82b30b28ac2e17b3b66d22f306934324585f16cc3e3ac9ed749fd462f487f363e14a5e79b5d3af1ee8ec7ce5d00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305006d77eb7fe8f920e7fad7e27d4713bdf4c7f02b8fb5d715c2c518f1131eac613db124c33fb80f6bb3cb70acabdad9402300defaf22eecfe60199aa924568608a5ef755b1993aa5ebe1a940b5f04151bb178789623336dcfdc2e5e1c8dcee61287f0302047c435bb50067306502303eeb3bd877be064e945c3e4a0b32874373ba70530021b2fd14df083073aeab8262fdc380f0ec1b9ce8e3fff4113d0f49023100dca16d61b60b94bbbf8692edaeb821ff6a26c78f866dece41f369e0bbf18bf4de1d7e759202687f65eac8b4b76b3d3050302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306f5f10947fdb05b218536ac9396246848effb97f0963c24e2cbaedafa24517dbad15e18e3f8d135bd977151200f9c2ea023100db0f8dca05bf157e427c7f88c7665a33786c3609ae11514b87c60b683c24714384f8638c85a22bfe407c119f50ee7d610302047c435bb5006630640230081c2672d6b96b4014028a9be8a338014ea816dcad601c12eb070e683993dfb845cdc534119d8a27f61b068d1fd7ec6f02306d217142208509c93bb6a1c40187cfdc6f6ec9ab15e2ff93c6f43bf4f4beadbd440dea0a668e975ca3b0a4fa5404cdfb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307a2834016bd540061fefe107dd30b81e71ef849eb586ccdd81c990450471c9edaf27a53488d69786c679a16e27b33b8a0230508e0bdf3959daaacf845cebc216db2839edef9901e0fbc778d0da1317de8ecbf8c756d7fe0280e6932ca7a304f58ccb0302047c435bb5006830660231009625347dc96cf068a68260aad7d7e8918491400eaec48bd16f382cdfbff856744cda84a7be6d4052033bdc15dfabd660023100be115e32efeb193d93b06bc320c1f5c4a89a2544a48e8eb2142cf2fe8bf0cc70f05643f6a4bca7b9c1945744c2b2125f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023060259edf98ecfb91823b5f072416e4bc6acb50a89e709df3a658fda2154330023fb46e9569203a2c42ff227765853fcf023100cd8ddd78b39520df1367125f5fd8bf6d500bbf7d623987ae1d792ceaa9f0518443b1c2542a774684208d1dde3ebfe8b70302047c435bb500663064023013ddb2444321df40d8306e403798d921c16bc9bb5d1a5f58d3867274d4de96cc3cf7766b9fdefcc48108ccbc0c340f960230373197fcb947fae1d72773e97ebdb37bc4206bd97a29cd76842b9644181e18a301c37641434b46a8720dddfdd2e7a6660302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d72666061913dae797141c1ed4d7dc7261fbb8bec81dd2fea155ca94dc60639284aecc1822d6726e7e94d13bf7d57e5402304b75f106d0de83f9720808331a1514c835562b3326a1fe00dcc6b38697a984cfdc9bef023b005aa7f0cc1268fecbf8640302047c435bb500683066023100b609db045ed1d9fafeb956152c87abf62eaa8b0b86725199a936ef211cd83d4bd17f2dfdf495275a172b3c4ceb80e6a0023100a5a7abee9939740fef1fb0b0418dd0fe01fe41263f558c118761f2c136604167c6b9892a83355696e5a313f98b28de670302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b703721aee874091a3fa0da885986d785ce53cecd104c2a003f3965ff19d866b945b69c7c04ecf4e00df95965cb57eb402303c234268955ba0d3822d2912b11e19e342ea08d7890834ce580f46f4a5d4601853d654856da9a22c2883bd2ce031b7f90302047c435bb50066306402307acf4d8f0af920f093ae2c4ec337f1a0fc02d2700a6dcb9fe879d35b23b9b988e27350fea64c9938752d13eccfdd12ca023020b45c32c183c37fe88e056244cae6e967dddda07585caf87353488cc6ff691d518f9ec0c2d3d7ba3430f411942dc46c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300a7121a5deaf2a7860654b612231c7119ff99ef76bf31e907b457d30a16efbb3f8d5f062aaa9eaf993c912c5d844ddf30230291dac9f739cdb6318621de255eb0ab946150d8621dbdefb60939d16c6aa2f5d14800e147a683dedbee26e72c213a34d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ad2a567c50380c2940889c2fcb84289e02cbc2c4aeb3a688a28299a0e5b3aafa3a0c6ff2e7f7609515121b78db2f7388023100d642805ae72ccb4f3b2bce6e0d02f17f86d207e1d25ae756a8111916d79cd4ada7e5256f89abd53c16c7732f016347a50302047c435bb500663064023007136006b2b044d350337ea5b9aef1b5e66db68e56c28027d331f7369aba7959059604855d30b7d599d2bf871214d92a023047d180dcca58bda3fad2afe6fc81bb70efe4d6042e627572c97511d7698a9580c9e1fc27d9fcde81715a8a8decfa470c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b87bb9b949dc599fb33f568521a95ebc2655f96d82dfc3cc9c113c7899adebf06a0082528df6e7b0000e80533837a93c0230534641d685efcb4524f68b3485f6a6f4cc703d7c18878d5df66902884df75ade3ffe908e56ffee2d816860feb54d34940302047c435bb500683066023100f969b71cab7b7724f564a709e63f79f607a5f35929650175eeddc482c9df955cff21a734e0ac0bc824ae2fae7d72e840023100ea189c33c31e1f7ce06b6803be1246cbe2715095381b05cda2d25e25d230ac4f5d4831b23ee5e924a578a64bf6829a100302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023017be27adb11f538483e947319444b6a1a542ec3ae60de3a6ebd603ad0e3744fc658299a3c575d5af063f5ef217e854b00230414bd9545b30b69fdaeab8403ea6d409817dc8480b1c8dec13220ac6310b879e4e779c92de9016bd9d1703470078acdd0302047c435bb50067306502305682da7d2db10ac21a31cac38a4d57373f88302c065d5e78b4ac7fd80d99b4cfb51ae63f0a60443bf9c854ac4c215dfb023100f6bbe859e5aa681c373e3243b75b945b7581aad94ae8b335f0aece42997b6f7f226138ba69d3e5e6b95d9ccc64d1212d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d97746567417471bff5515eceea0fadce67617a5a997ce16a318ca27ca41cc4b022ba4a1f357cfa45ad4b8cd2f47f6dc0231008218bef56a65ab42826ffe9498e671041f2ea3b0ca4b4b22f446ca6eb367762eca593f1562d11219f4f83bab0d08a8c00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230203ae6c2ace1518f4d115d63049211dc5f210eca6506604be79c9ff497a98897221e9acbe9cfa7bf19f57dedb653883902304497e00d83cf6107367508109dcef3129a7525aced5ec577b4a483d5f623329ecbf32e042841762d6a8528224d6680a70302047c435bb500663064023007b0be5284edd993d856c7379d69a58798770686a16ccd4d1e11c1715135ef37c0986f10414197d61823ef6de6e7c319023013279be6cb2c4283185d85f08f45df28b2b29470a8dddebcbe6b41d9be614f25551182e8c394e5ae0739113316db6cc30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ca4b4ad627c1e51e878820c430a463cbf6cf97cd42a8eb6e81fa3597395c709f47a9084144b3aca345cd8db0d809b1fb02303269d5aa2c9230067262ba0bc1835abd672311372bced5f863161f19200a2c4447793e167e312da170478c379afbea620302047c435bb50066306402304e68a8e1b6f8b7809693a758da64b83dd41e2d31afca95513854eef9ee9f183aa9110509a626a47229db2091718f6de00230731b4ecc431804918e67ccf48ad87b6ee56eab682ab5707f57bf29cdd942d200a06aac44d724ea2cd28a68fcd9830a420302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023061dae45bde07182ca83aa3205852737b6a5343233003e6774598ab8f4a9ecfc7cad57122afa8bffcc0b4a7292abc70110230494501f577ca00d20d0cdcb05e9c174a4d0327386f9593cbbae379ee9f45708dd0dfc06abdc6f212ff5bc04f5e5621f60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f322ff00cb2ce1978cde7317d4dee5b5a62a5efb8cf8cd6b7ad804b61943405a092ba01fac6c05bc23d959bfe966cdfb02310088bca86d206d7090d29f287b63c189c2c5d5a0cbbad63193efaa70de188fa414a44e76ac04d83eebf7f1509cbd70c3fe0302047c435bb500663064023046a84945cccce756cda5fcec9e3c821b3cf47967813fb85c0e0a08da78665cf2ba17d4bacb0d91cae14f429d1345c2d502301c0d1facb8decbd464fdadc740234aa3ec06d44fb6682fc3a6e0676c396be75fd5d59ba292db0e65432799ac52d493470302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023015b54660ae7a7f248d1f4d8b2898069076f7fd44a2240fedc420ee89594711aee25844c28d9f4fcde530e5b54221f77902307fee77dbf24156d56e3d35e06273c6cad547541b4610cb53d605c23de8b1825377ca2e79a6e38d4d6f6266277764d2fc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fc063bfff8f804bd2b6ee0637d6507fdd622b09cb1ef35ba21a1189b298325e4556511c2509dd6edf56438a89b26d01202310093cfdd2a503cf6a1fa1c29e00368819f7c72ffdf8fca6b1fa8f9267b49534f28912c1c003fa7c523c04d49ebffa050f20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fc063bfff8f804bd2b6ee0637d6507fdd622b09cb1ef35ba21a1189b298325e4556511c2509dd6edf56438a89b26d01202310093cfdd2a503cf6a1fa1c29e00368819f7c72ffdf8fca6b1fa8f9267b49534f28912c1c003fa7c523c04d49ebffa050f20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fc063bfff8f804bd2b6ee0637d6507fdd622b09cb1ef35ba21a1189b298325e4556511c2509dd6edf56438a89b26d01202310093cfdd2a503cf6a1fa1c29e00368819f7c72ffdf8fca6b1fa8f9267b49534f28912c1c003fa7c523c04d49ebffa050f20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fc063bfff8f804bd2b6ee0637d6507fdd622b09cb1ef35ba21a1189b298325e4556511c2509dd6edf56438a89b26d01202310093cfdd2a503cf6a1fa1c29e00368819f7c72ffdf8fca6b1fa8f9267b49534f28912c1c003fa7c523c04d49ebffa050f20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fc063bfff8f804bd2b6ee0637d6507fdd622b09cb1ef35ba21a1189b298325e4556511c2509dd6edf56438a89b26d01202310093cfdd2a503cf6a1fa1c29e00368819f7c72ffdf8fca6b1fa8f9267b49534f28912c1c003fa7c523c04d49ebffa050f20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304e879bbf909e35eda83cf6a20dad5888bb2b9c916b2f1e19afdb65c99f886b24b34770aa40e8e5da86b39c483f5307f90231009dde2c5167a75f7106b45c9e969b5560d654b1a04cf2006c838790109ef64cdec05ec545a7a14913790d794f283c34550302047c435bb500683066023100ec00bf730bb34fec7fd9b324e82ade2080c8a4f48de95c3d48e6fef903e6af728022cc6c848e2942ae67f903ef128259023100f0fa3323d650c935d19338ed41b048fbea8f9ab0181681b11cdfb194747d6403d43f4e466d5ee3fbf78b1c72b6b1e2070302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023067e7812a289ddc913e101934e61b66871ea4728f732ec8220ee885b7abc47ee86e0b947c9344851cfaae82cf15430f0a02302042023bc850756390f28ffbef5d4dac6ffb8d7034adfe499e2de7a4d7bdc350f6cd437dd3c5ffc5b6b2add82cafe6d70302047c435bb500673065023100989eb1de188e88a2e57a6425214477fbe715a3f373fe1df5ab10da4e2101370bec3f5b846159ee3bc6af502b6754fecf02303c1ecc514e4a93e942a36a04a12dc0678a50b13ba94fe7753c0f458c0774383372a26b5aa564e3b0c1070e7053d1ae280302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230227a84413f34056200a2aed2f4a53313b5b0d73335291ca88f009ceb44183ad5c76508ff135541af3f51a63f1e5e17f2023100ce99db19fdb1c745e5c8fc09ea462f003cd6f0e156042be711f63220f2c0aeae26f1ef2cab5bedaf5db0fa63f30b070d0302047c435bb500673065023100f8e5286a5cf4de53c017dfd0119d7c4b731e03bb57232036c3b075fc3b670ffdb6cc34f806e4f0b8f03dd4923c65ec2102307243211e582bfcc79cd30862d606a177edd06b02202c36db6dfc8b59176c11f5a347c153dbf8df0e5510a311c9b81bea0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300bed19938c60e6a55c73eec651b582992cfe0c6569abc0138d6b6fa0114347177637c44d944b507abe39ec579859eb3202310096639cc3f310369f6bd5946acdb50bba62a32144c40f28526be63e278221431f501690eed1a1b5732a04e82530550edb0302047c435bb500683066023100f5c603ae659d4a369d6483407833a2df229d02e8a0dc82d7f24c9759e5b5c5409bc84d9cd2c917e69e74226861869776023100bfb9cab1c7df8de7d085e8bb2d74392674e6b27029d36b3b7f0b9125ae48be3923b70005cf14f7e601f1780ac04f44580302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301404c619dc430a7edd9be34d49c19056675bb326275aa0173854725b1f720d8143ba0707785f61ca671a936b8fbd7b950231008ba53e1a19060a4159af60a0ead127e28df60c2bf2d99e783c3edc8e1a8a7213ee031b7ee20a4de455d4ec7c1c1bf7860302047c435bb500663064023075d4d734d3db875cc8e2b0d8fd66292fc59b323fd0dd0eaf5c9eff3043e8f53afa3fe4b2e901f3e801081b95ab16822702304f0b37b920a4d6e9152dd55a15df5a5c600bf57d71671fc455fe04ea451c8dee320eaaa315b4268061bf7faaee4dbab90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230551b4a3d2c0e74e969d94bf14875ddeab51a73a5fe69b441977e16f1555b81e0c33b8489f4dd3430b8ce139fa4da0026023100f350f383dd4c26e6098153c9cfdfb9438467f46e3dc9e3b42d917641b36a60f190dbfccba1638ae781f09856a5939bbd0302047c435bb5006730650231008bbe35b316c656fe0e7e59c184d01ea371c80a469577128b76cf490301ea82078c9cb2841b2e5f0bc52b744fbe7fbec802305f33683c07d9749bccfee7966dcd4308051ba4faf5f8b8e0aa5a91d23679ffbdfe3c0cb96b79f54ffdd59ee79d9790290302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023052401014c82c324bde2fd545ec61c1bd924d7e874662ed3c7bf7784a728690e3a7f74269473be1a34654f71664d18b8d02305a1adfe8ffc6c212139524cfba6cebd5111144df4775ff168c98df5739c582948d9fd7cba3be83ebcd01e948bb765a7f0302047c435bb50067306502301f58d665b56964545e4a02379231ddad265e54fe14222128156bce8378117adc86613e008fa7054f7b6cd15edc3ef485023100f08b04d0bf52a61206249cfe24910a4f433b73515c8297e52edb0610ce75b420916dd6c282c1a5ec868fd3990fb3ce650302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100adb2f1d3ff644ee51b816fa17629dc0c1447262fb9f4cac2a7a0673ca712f4427873549d910f8a6c1836f2f11b478d7c023100dc5e88be837dbc3e78a680e4446d1218636044c17f1b25fa8e1a174a6698fb6c2b20bc1e7c7a868b6e8d5b618b12e87d0302047c435bb500683066023100968019e12d44c6dfc01b33d4281e031d9157750b15ecf6051f4a5ce1e492d5fd284a572e39a304974c31358a149f3b35023100c1d3dca49ef86ba6896b3afee3bfeeb8f12fd9236885a33d49ff69153e31cb2b7e25b454cb0b4d6d279cf8d6ff2fa3100302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008fadf811e7c7efe0057907e272f2a0b36c2b83bf44f74725227d06ccb594e74d4568364a624049762488a15c5df443c902310089d3a6c29a82d1680bb1457c422fccd274e36ab6325a659e11a371cd03c5d440fc33b6f8e932dacc5b749fb99c5c03e10302047c435bb50066306402307758a1afe350a2f08e3f7dd6ba678f5e8d7b5c7183bb8b32394c69f0f862bc8d248b19823d67476cfff519a2efd2dc11023053f23788f00245dd29c213fb7e2194036daca017c6d007bb76f1afde5a9599a4d5bce9ab1ad43d9bdf3ec6def338f83f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f5dc3de52a935ce463e05a846ce483f8ae00cccc62df8ac19bbc724af3739ec8abeecc15f33ef87367c1df86ba84648202305d75c3630271026a2fb8c34cba4a1225ceb1b93d076118762e6d18527df59c22588087fae20082ac76c7fc46af556d730302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302ce801cffd5db192e17c500bd1391d436d2ae63622a3a0e7f332970340ad13e4a08997ba1470ecf2a12eff83127a4d43023034977242e571e1193c49e1b0c24173c2c43013d6b0a2deaf3d0cbc6e40af23cedf383d5fea1503603bcfa1f388c693bd0302047c435bb50066306402301a028be8311872337b8aa48202263c2a4b1981f9a87c1d7ac12f223cc20c41dab35d9b8b3517ac22089c4fc1e326bd140230093833ff6808fb0188f42b8755b902ba7f3f567c2aef534cdfb8816ad63e2704597e6cfc9482923b8c852a4c6300397b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305d0a62fcccfc485d53d7ab8b637fd017afe27ce314661197f797d3390335829e956ec7facb6586bb7b37be7a7734a41f023100eb9a0ec5b295d7dcc2f2dde973fadda0e172ee80f26f7c55e8c62d3bc4e40f8860ace8cfd2b2c1bea95906c1ac0f7d820302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301377268a0a5d64a8a24c6ec85517676bb7a1ccde30af9d7fbcd71a2f62ac0046e45ccec411b30e048f23462929fcb3e4023071ee50af4f0d51c170903c850c9c69a43c821ce8e3e09529081b91be7b6955c4bd3a03e3c4127eed8a9907d83c06ab930302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100de2352e6ba5acf4767a1b6b6b957a2e5aa729596dd6d48adfaa79c3cb7c28888889b564d408592809d8ef3a864087c9902306a50974d5c2be5f135aee9fa1a92c1849be4e07a2ec2829ece4ba2c6065b99142d57c43c025c086e4b67596ba18ad1ee0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009f89565d02a258bf409e3ef22071e5c19ea35e767e9bd38d63b91d9afd0003d2700e98aebf763273cb55ac3003f90e7502302c0f8b1c6b286b1f57eb934fac4128f24a3ed3ad38913fc1a4ac2498f88e45b948a5aef9378e1abbd42a23cc3a5e89840302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023059b1f2eeb50254ab296a6d0c7351a3bcc50ae7affcde459de6c1de31b3328af8036b0886133a2248ddc1c51930aa3a3c0231008b5f12408ab5c2de3eb59326b165a6da2bbf427f4a2c495516bcb4352cd7562b9fac399208040a497a6362b5bc82560e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a8a48be8a3b9e95459acb04e91a24f16d905cdbc444a595b9f853dfa00b8c4480f67ab717b3439dcdbae0749653ee80d02306caa17cfa7562c10dbc7e8d71db618124a63d1c42ceee60f4b6c09d8bf310fd086d1acafe2f1c98250b1d1cfc465b2500302047c435bb500683066023100b5a04e6f1d5df34facfdad954226b8eac1e0e547c5cf12824fedbbf10a580954ec5860d2d95e50b686f9c7e90788857402310098cd510d1dd6f475c61bf2d2f1eb1e26a4530c8ac480c6114c3ac275f7a0c3b7e755b3740a9a07e88c3f45414bcfd9060302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e4af6f1c11db5c4ff15e279795c9c50d768e4f1463f60017c74e4e3b4dfd618ed278c43727b9a9456c73e8fc2fb3338b023100b538405eaad58d7d356eca44b4289f90270bebb9cf5bca044c39c79649fc2eca5d24e28bee4c5a4ddb063222e881b0710302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100cee58e71c8f5d3cfaf35221d714651a38ff1f0d9e638c2bd6aa9c04ebe10ed6e40ddfee2cc0dbb4a0ef6b1c318e7df150231009748dacdadfc8cb22f99d8786003b0bbe60114fd412781f7b67496adf5882493da1b009c64383ab88302f9d1c82ba6da0302047c435bb50067306502302cdb7ed4586ae7d89effe60781e4a9f816222c3e97ce735b0823eadc1c4783c0fafca6e2ad9ed18ebf23489d0b8d63e90231008840857039e976b3cd2b108058b350cfefff8b5179d0e5f5ae9a64622b558304be14655d3b623d6705aeb35a55d5cd020302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304d23629a8eeab6bd2ad96f4a36f38328e7e91699f63ee1a01dca2c452aedcf9d4cd099fce00547dfde4bc397539cc3eb02305dc6b6aaf2253dbe3c33ef1b0b01d29a3d31995102fe1383d8f3734c663cba6991b9496c51652875a8b99ac0fe0a16590302047c435bb5006730650231009348df4f14a976bf4ac5a70a0e852a171931c012e14b3104cd292e00eecc0afb00df685e04eaf59049db231f62d8a0140230764522c45650e8fe91035ebd5fa82f7177e2a354b192df6897ea8f11a4eff098143f1a3030f2e18898d84cdc8c43a99d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303be52a0da852a974513f040308a6b5e36dfc4a4878a01b3eae2d11f52aca75fdfc5550c5d8cbb7ef4cdbc7e9abfc6eb7023100e59e1c8afcbf53b32ad0cee44225822ad39cf870bb07d66f812ff549b8cfb8d2dde1cc2d72a6ce6b9ce24565cf16ad8f0302047c435bb500673065023100b376e4fc34ad099a33c466b2c59165222060f8cd57b788d45a0d54ea70223ac32d4be9de737befbebfdd066ee1fe68d10230390d1a71315d4067b99d34d7547b20e87dd8811698da1823103e59274f47d41268306b6cdea448425804c0841670d9b00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307316d7eb9c51f69a7a40f31d10619e8bde8d84bd8ee552a0dfb39edf729b1a407ae71b671ecc37e289ea5150163815b9023100bf63779dd4a3ecd4dbce6589c41e0693522e9265265d330a50571275accbaffb4431cdcd8355900ede45f8ad8198ba800302047c435bb500663064023032c4354cc1d841960dfaf1a903a81e54d4e4cec77e62f5f2e3071fe12f008695e818c065deaf76e8ffca1ae2779cadfd0230404397942669a0fae49453cad9af040f3282cc4d5875ec530ea97ac9e0ee994931c825cd87cda825a23b503562072a0c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e83919fc431bac5d8846076dac2d54ccfacd09003cd4b9fcee1fb4dd6116f13f1fc0418a3294fc6be66652ebc163dc6c023051d3774e5aeb66cee943e95915845d4250cff617e24117a6978b9f3d0d2e8bde69958079cdfe5967208914d213713f0c0302047c435bb5006630640230430dcabd7d2bce4a3df443be80a133b4b8f71b8f66bfc312f4e2b8dc5c7dd4b8ca0364abd95c4583aacde102c66d3d9702307c8f26cd8f890ba2c8e0c107de1e0edcdc5eddc4b03d5b42a28637cc59104de2f8bd31b58475bf446926a997d0ff91000302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a1ec5a91b6ddb22de59abe1662660c4d8de94730bdb17f5ab98b25a5b168ce135fb37ec810851e4f97c90102f085a0570230446d0cd10448e4a4aac2428a8fc916513c724e5e489e4904a2cf94c1bc36d3f7d394b37b35441d0a7fe867a072011d520302047c435bb500663064023029eb92fb4fee72fa3f1a90ce8c5fa1f8e388e810db094d343f784351c80c66058d37a13db0d7efd69a5ccb6a446b9fb4023064382af742d248c325b6c9711219cea92de7140401c49b7430716f35596a43b2030ba93b64bb651f2925f7827ffd59b20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230473fdad16cc3bbb259f390e4578c31ca460f495f2026d8448cbb2faf3daded91aa078d076e453d7779f7b8e0cc3c3c61023100d7d110a3060768daf9d62f2daf4464a3110c6dc2ce8b237adba38c239c5b316f9ff899bea7b14fae3082a2d8ab2aa8a50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a80423ec539a8aee39749b6f35b4d4a85168bcb10f8ae56f95f0e97d49898bff51b0e8dc1586a403f0394c6ef454cc140230422cf23b766794312e30f60adc490d05cbcd4d19fd876c6c5f27d1c68b101be5e849a9c002d1bdeb18c92aa4fee995e90302047c435bb50067306502306def2ef7237fab29c671b70c1d79ec9a42632d9fcad29e0740d6dc523db4bbc797cd3e2717171faf209375396e364315023100e5bfb818c1f28cab295a6a1ddc5977198b6bd07a47739aa52aab52fd0fa7bcef805abaade142cc9b779f5ba5b345b1910302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306d352916700aab0a7a69daa334db75e8e2d763483e2623c0781955a6bbc2fa2dc529e7333aaa901dfd7bbdeb168a1389023100c65492e75ab0c8f26a7f85535fdc1ebd16a6e915d434c217d741c672ba5d33025ed9a2a7dc819fbd793b7bc19e2f4c720302047c435bb50067306502307328a4140b864eacfd2d9e6983c50262f69d22d6453f65173258c9ebb2692357a08692a80f5003dd2eeb2c124a7b2960023100ff73da58a57bc68f3e32402761496266ba718642fc12688e3a145dab66d9741be2774af31811968337352aea9ddb30960302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023070d8e2046f018d1a8059bd62b8bf093e9553947a72ec181ff95fbf8f780724dd338224984fc4c2be15623a359056aa1b023100f9154f4302b3b8125dc5611efa0ae4a12280b782c111a709f2c9b5b9a0e7b2144b72b11f6fad7368ffd36a39cd49c7890302047c435bb50067306502307c1b361f6faba933c86cb8c6c1615aa1aee9f4443648d4c8a7916756039f96f717fb923c226d31e48bbea8693527afe50231008cb59565ee733c22c94f7362af27c1293f3baeccab0275978c36f8e1713ee6d75b0fb602ca85ea45a429e85f588bbe090302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023022a4275f65a25892e5aeb7faf291b93ce7f49c8df227ae71a805ccaeac6c3bf74f194c573cce8c68490220f9d7ac9dca0231009dfec22c95c92d83f863b576ad3bc92a4c5f015f0ec527011a285c9dc4f59451664aa20d996b7acb224feaa1398a14f90302047c435bb500673065023100834828ba9f75e3dcee4b6d60e5471f4230aefe7156c39455995c8261df236d92eef774cb2c21b5273663c2b142dc0fb50230466bbd74d0b5f2aa63240a2a0d937ef2e530622be050a8c8df496c5b8f942227d7883bb13119e125c3ebbb73e4a866b20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302cf0bb37ede997a179e5e600a6ba4d91463dc4bcaec19df5acf7a9500f05207c67f44acfb8a7f0b0b9749c26b58e01d6023074f05719d2e934f95b6984277ac2d02ea3bcf5859ae28e1a25ee8dd6cfdecbad511cae23b760c28dbb66e3b66de702970302047c435bb50068306602310095c14a73661f4d0e60c9efd5f044ca9beeaa30de111f07fea3fafc6a4bdf3740b9af0072cb3c04f49c6d3eff00007d0d023100def574a21079b10d5995f2c5692a5fd872462eaa7901299131b2cbb222b4fd7fce2d2e5b2c4d66e01d5ce70dd54d77810302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307b022cafe7211ee01ba930f990cf63117757626a1bdf83e9c1cfd19233985835be08f483dde3b0874499f821cdf91d4a02302ec99dc5af21b4369d6e410941b57dd1a188b3acc2b9337704d266d23d50bbf2079ba9a97548f5a63ad3de045644d5980302047c435bb500673065023100e89b16d7ba35e821ad380ffec1507fb16769aa79f63273b14b0337d31ef86713f41d9adeff7a3a826ab7d6109210dee3023022c398662e8bde3d5851a552acad42a500a03ac9583073807732ce106e8593ac4542a9afee3ffc905b3682a0650046920302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306d53676df17e42e47c4734968cd592b1521795c37747873234638462eb271d6218111b0445f30af7e36816c44e894733023100f25f66ce244e34f84aab2a3c47458743287a1dcc0fb2dfc2e5c197ba3950b5af68415e51d1c22b33aeaf016fa0b9fd820302047c435bb500683066023100e8e0177b19532e3cc2ba4f3309ae170d852c33a7a1a8358b15556aeb02eb34cb8840985491c11528cc6a8f9c2a2a7bdd023100d443f2f534d789f596e655ad044785764f03650f1452f0761d24de10857da40ebc4095d3fb701052c1da0edd3600b5b80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008b0696fcf39a849ab9fe4fc65c283e3adc00ed5951e6f7418be5ee5f6cb70b3a1728ac4b0637b39113b59d7b9d62fb38023100f5844e0321963918beb78c28a4a585fd3281aab66dfb45cc52dd8f6a1cf7ccd9aeb9e6a076e96ae17ebf640c6ccbf83c0302047c435bb50066306402303e1666c17f2ffdbf885f1aba9a459b86574dd1bfe2869869a7379cb31f34d841740e499d5253170713eb06d5a0cdf96d0230242838ae44a8558ee9c27f4ec7ec13221911bd141ca79c533c8c2ddd5435c2638baea50bec7d1bb43c479b6c1f24fc0b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100cce3b27d992f1aa4410eaeb84b6a1059ef8fddd7e25fed2fdbe1218eb901f2594e52c11c839678808b25200994a99adc023100844d7781bf2b83b0249a0eeb48371f51c23c489fb381c4989f402a2284124db81c3de50b3246ca47b17a22481e4839830302047c435bb50067306502301d79d2397f2508c19fff601d764508bb3a414daafd45dedb66eec2472c7cc4c57160e7edf9c0294e0edf49b60417c14a023100c2577e68749640f4ce2fbd6b60720e33a96f43f5db8ee556271090ab87453298b157d0ca0fc9568613794ce528dbd92d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023079f26126df297cfacda7620d2bb1cedc0a9d324fbf5abdb98d9962d1a64d0a2965890ac610549ca8332a05d4866fcddf02305f24cef851e580cd5aa2fdd34012b0889f10ef3edd303a6803012c05105852e180cf8e1b93b3dc914a8e55284093667f0302047c435bb5006730650230789c0047d0a2bdb52ca80d12fc05490f94ddca2b19048da4e2944a7e7cdd886812237c2814ac0bac03ff00eed36446ff023100fb39e185f9c58b882999ce81a3b5c3da8249e908e476b8c867bf40b1b34d248455f5230a90a29f069c742884ec0c7c3f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307169b137f17cf09d2029995e0fcdfd56dbaac839fc37de7af3de1bf8d3f517f942e3ead19345976d45e7f83a66b6fa1302302d8292c2a612f2a20b13371af346a9d288614b9179cf6bad1af88442265b369ba45b031940baf017ff88f882cbca01ae0302047c435bb500683066023100e3f7f5f9cc735c3a2d0b8dac2935fa0eb18c1894e13ec06c72998011197fa42a61a31e85f5709d2f72e7b9e809f1d428023100ee5bc181f66b4719bb2f847eac7d0cbfc81ea87c0024e52d38324521e4bb187663d5a6f9f72c4507ca1ba1337263d93d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ae1109a0e69b129b56e5768a95f751cfcbb38b1eaf9298db023edc11f0fd56710c5f50d52120055256bf16ecd778ccc60230081ba4dd8aefb3ceb32b10eee4de4e3741affcd250013928c4ad07f933f967b06d7a21851120033ad4b74c26e0dfa7ef0302047c435bb500673065023100d7f639dfc4ebc5bf78673f1b34eac95137e5e49666f8900a63eb2bd258ecb37e13905f5790d02144bf6e3ff5672414ec0230671cc7cd73143d443ed0a8ed03d66bf29f0b03aa36bbc915ed37b05421aa73f064d935e9a604029b40d2710657a917120302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009a8605a6f8976c90ffa176ef98102fcfa36aa64ef54a8cb6db9abccfa465b0a2549c8e27ddee728f697dcd2be0b26c4f0231009bf54bfaf612312ad60614f3738e3a91e005356070409f030917e77c32e9594b804b251daeb3f3ebcbbbe5a11ca3f2740302047c435bb500673065023072be727dc36019342f442153832d2055874895ad9ca966d59430a649f28ef125ab4a63d49ddab63abf9c55cba2a3293e023100d0c3b80387095529c70c9b06ea5a564f7aeb2d7bb80a8a8ce17afa7e2b9a9f3844c9e101905e4a835099dda929b734690302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302f8fa94ed0cdfe41c33a589ef6796d127302d38f6f5db09c750e29367ae89014bb97a7041ee616b90ed68e6cfbb10e98023057434e90244c9acca7774fbca0b8d61f05e31815b6bf3673468418d93b6a88c6ae86b6679ec13c27500b4977f3aeebb80302047c435bb50067306502300cc5144a146ef985be50a680e6704502a265fe0f6e2d84f7144c79a863d66d2e0f072c3fabe3135f19141551dedb38b9023100f6596702a7afb77c0ed59aae5309a55e38955c2e799c0036a55b8100b125246b382af8f03f886f6b53700abdfc65eb100302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306e6021c59477eb1cb43f4a786cb366eb956983a78427b3b7f6a868d4bcba1b85f328a401d362a0bf9a428102e7bd047d02306aabcb8a410efb4b0361c81bdce1c6c67558af3193a9f04b97f874b221c1390bb7ffdd40e5648e73a7d73c399a4aa3100302047c435bb500683066023100febe1f707ef4090acad970d6f41b65a9e3940af13cb5fb2aa83284c6edf51f40ee816ebc95c60811b43640fb514b5dd70231008ca6f3ad458abb53285aca83786b0022b65cade3fa5e13c38078efe0beb8aada72ac12f39cb0b4e60f4f7141e81547780302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f481261ba0f8472a3673879f76de9066fb391f20d7a175c0e348b1af4a577a31e585a21e64d6c5e6a54b40b3805bafe2023100c29e6b10f107bf3baa5b28cf13476d562f7adeb10d7606c21e3006d837079f3131db58e1fc2eaf69e3d2ffcfb20583f80302047c435bb500673065023100d1f4af98fa2be8a479fe30af9d272a59eb34d90b0249cd4d06abe4189877349e688de2b1ea56531488d9d92939f9d80702305a96cf73e27b851eb9a11706ee5e1fa177cf8a59a98b2f9e63d0b970477a7f0d8eb3159188bdd27b13644ee91e2502460302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100fc1acd17d4b461649c5c39712fb7e4d4cec50528b090aeaf039f8c3d205b1f755c72fe9db73a0347c9f41ea27981b28902303a03faf447f389ee94b26d613821e426ae33103d5286c425f323e6cb09f742cff426872d42fc5761d46aff93445904c70302047c435bb50066306402301ae738c981ef6c69e14e27b29896c69c76e7ad23536136b9f970935825beb558ec408d51b071e0b243d2de1a57bc1bdb02306e5ff9850f529d854b371e704d0873bf4cbe709454b6d9da249303fdc8fa5ef737b5e10cb550dc0a1ea8086440f967aa0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d2061e508e7578e9a0d25b6d2cda831ec2f528d89850f93327530444cd5fdd33d4cf74e95d5de75f7b5b6218160e46e10230382e71b271db9b4691891597ce531255e07f07e459dc31af4cd7b31885d1e1243d21046935482b8a37e660e7bd89aedb0302047c435bb500673065023100ee752b18b288bde138742d6f5d7cc84eaf445a64e5c0793766c3df7f9bd3287b9b4dcbce2c5a16d2f82b7f499c1fb339023068b1cb6928ca3f7a244360ea00328d9cc7bd6b6d4e7daf4ecf82d7ba256871bba953dc009c89999e11ab13a88f6723750302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304efffcad3f47342f9e8bedfe3e7d39e159e224ccf7b2a7bdff1bcf28b7aa720afa21d93b3705c3acfee919a5cec4a953023015aa2de595656adcf46c644880f2454886f3859fb6d0863c7526e9b43bb0392375bfe242291bb5b500d8535361772e340302047c435bb500683066023100e837ce7aa114a4217b29415002d2eb3f0c526b881362ed1fae82de4b8a24a3dfa7f402efb07b55048352fe7ed5649bde023100fe48b9c600b1b16d20c98e9fde41d15a1d36d01a44f24f268898aa670a92f3485980404c9b5e63de2974d0f4b2ea5ea20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307c5c104d53c31c3dbd513a2dcd647150fe9baa08bceabd6617a477dedd4f624f4deb2caff19b5c64211aef5de7e091dc023100aae81c7474953e79537596247b14b88ab710c556d096e5648f385922469982044a40cb9c82c9e231f487936883740d9f0302047c435bb50066306402306a3a467db5d86a3e5a5f44bbb1df4ad104ae2a9b1db36a2eb960a6d5a29d6ff29f75b704a45272f1888c205d3317e59402300d829e6939aa188079e53d6ca25272786e85cdf4cdfe843e11af22b5dd177bfd40aabc08a86c94ea64af44a38142a3210302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023077826e3c548d046d51ad749a88d928837ec46c7dd10d71582379a68f2545a218e697714a04b200714b2fb8a7584529e1023100a04509822f115c37019382c0099051696c58b9ba9a6f37349cb967fef0974753f972a38c3976e9d6c410efd645bbf6d90302047c435bb500663064023025197713b58dda4aacd0a27115ff02f13962558cdd7f9f61e3f4c5b558b845646ababcffcb8dc03ba08071c0c246266702302985f7835bea02df31d17b9caec7f3d6027252b314197f495d41b40fa7297a6e0997bba30d56f4a016604652243d1b200302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008559183a2b9a19ec7ae8ea113cdbdec53eb4285344d0a3626f4ec315bc62de0ee321108af379b0bc94b47553ab5186cf023100d341b6cb2f24a0d6d5738ec3b27a540a06cdbb19cfc96008a2f2fd9e93c8a73542c6c82074ef37d51256300b3616c5d90302047c435bb500663064023002e80c5ea6d1cc0462db2101ab0715ab71e5d2940f94bf076a29be75cc66007eea50ce66f3250a819c624d33625c65510230383d208f6872f572e19b02dd1b911de981f9c9163c32cf48bfe5b4fa4c01fa521cc86190c305e7f9ac12461b6b7652be0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300e60fc32cbc0e221357b2ad9d9947850ebd226c70c61bd1883e42ef08b91715e45b2791c86cae7bb7aea8fdd705b701d023100e1d2ea892a5650f88fde0908535ef23d36a3cba351ceb3e46864b03ba2a19e6b0a7cb36b6e4ccedf453fed7b136694550302047c435bb50066306402306260f87cc3d66921e34b182adc7585ba699a0082db94f2d21f438b6e3b97487ff152295029b39334bb14a17ebf805cae023009aa98d223946a45fee68524eeafea7379ed0c508aaa7a1c3797da1f463137e7ac778a7365e9fb5e606daefe7105a1450302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023023a8bccaa2225a3a61f4e98d91e54a3ee6bb5c10e79943a21a460b10130216afe30f1f69554977b725d73b376c270f840230061a8195ea85dd80b77604392463b0880752928fbde040d50eca5a96dc1486e7a044c78ccd38ce19d14f9656e76a1b7e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307541418f97b9dece23f90891127afc1c7ffc523a6100d14adfdfa1fab9cd618c19ffa0742ad067bca7c1f70598700c7602301f178cbb93f1ef229a1d3f7f4ff6593006b574cdd5706396112dedf15abbe66a799ffdd341a0056a156ee34de98015e60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023037c486164b64f9b4d16b5c81937d16a4e2e7badfde64d90cd69e4894fd49adb5dd0adb6c19b07366a1d3c8dbd24492380230789c0ed34371a8f847c0711987219873ed15712b92c41ab471cdf7961c7affa580b183cfdd9f98c2259653d52384a80a0302047c435bb50067306502305e61ebed610c71989c595d13a36d08cffad36acda06d72f3019e17b2f5665f369d6f18b373561b2aaae9cb82eb6fd896023100aaaab3156d11817e8182b7eda9f3d68801e015313d362d44c8bff7aeb8d469d4a1b315b7e673aa350a41b2d264285d020302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305dde13f033d37e8e03d7f1386e9f03d761e6d6c8f422f31df5d00bbf15b9680df3d4dfd992f1ab201c7d74b33fdf6b370230322f2ab8da3752180109b6f10f12e30320ccf8c6825b6ca41f0636aecb4c2b0e12dcdd9d8326eecdb56e1145c1ad2efc0302047c435bb50066306402302b3bcf4605d5e8b06efaa7dc4c4625f50ad4b5aade56fd8e09f8b9fa4fa2a3efbb7b0ead283d7e2757df724c2a8f433602300d0359053d208875f842c92cc2fb437fdb164b18ddf1b32aa79089741613dde8879f453a251bc0027333bb214aea2f420302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230563f02753d49a380430e9f6182aa1a1024cb773e57bd0f7ee6262e9906fe06c1fa2643c054fba008d2e80b5d7ce3ba420230717586b4d78035d20906dbfeb936f41773e11b174cd6337512112bd36497344b6c6177441442bb6483a322763ec846f00302047c435bb500663064023039079825d988b23048c26b64fa5e17a084788e47b89f1ae5473ec0e26287b53dc3e2e9ac5dd043dde990775f66a4832202301f853ce76801aa477c541776e0894acb0c8ff4c90a94eef30dac6d3ea414fc717a495c7ee6d3fb4ab3d62675c25995d80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008c72afa7b71e59129bb0fc97b879b0ab3b1cb55e184e838b90d4694c6e10b42abac2f61adca500e6afdec8aa30315ed1023100a006a99541dbeaf016b5741e7951941c00b4340b2fcddc09e9fa46c0ffedf19aa95979974d4b2069f2d2c4a2296313c00302047c435bb500673065023100a129affbe3c7252b52ed80edd79e68dd49ed6651ed3849d3500870508a5a635620cfa5ab92183c5129d95c667883f7f00230753e731653e6266ddbf5c671daa4b13876c96fc30ade5e16c0828663d853ec44bedff62ec61afc702a6644c8d69a02890302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e7c4f21e2b2dd18ebc1afa83ed8a2b2f7e63c7722d3ebddd7df4531a74ce63ed81c2b19854e373166b5a33254d5f49fd023100b7b7e2cfee221d0b4f692741742a8e5be06096604ec046fa6e3089929b7020960b91244b2e9244dd44bbcd09642b98a70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a9de23409e31934ee464fdb23103d8846853a44c615e2702467079515e7e9bc5cd4575b5121be0b8f334d4e070f2760d023100815bfae4514902901b1f5d5822d83750bd11e21b69a4eae637fea027794683dce02ea4ce54d7b0018d23945a0227d6f90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305ab348049bd093536497957a8d85f3fc038cdcd69397ddbab9a290dead1d00d5692de498ad64db9f2d8ec2b53422bee30230086f76ffd104e38419c3d507df4ada99b53ed812873e14b6dd0ee965668440753ab54cd516daced6bd7b8fb61cc35a700302047c435bb50067306502306eea10f6149c49b3087df19e7d99c2166bb6cdd215001de0cfc4fc93307c3a94d9114f6f0ed616c3c2b10ebd1b2ac634023100cf5dc48be4ab2626ed482349d1ad243e8dcbbcc9463f597bb7c5de3d2d4564b976325abb0dd68d3525f8161f10f235460302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c05fb98ef48fea8b565617f1851522378389a8a2c978e548eb274a8720dd64102fb0bdc5d91409bc748ef7e9037cd6910231008b2938679df58cdc6f38048c349f3d0aaef87a9775b5a9a96441b88e1320dd4c15d962a827618a19e00d05a0246488350302047c435bb50067306502303f66768548afb0b4722a8724f8f9833b137a4825ce59442ce3ca869ac97b42a71c060ba2969ff5f20295a1c3b931fcea023100bc5892c9a6fce05dcb14eb0d54336c99a464048d87633c57536c4e5798ab9bfe9ad63d13df7699b3cbb2ad23c57a5a160302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023054c55199b6bb7eaf057613323873e15f195221b623ada950f7dd32b235d347653ccc1e217ca22988a3b3d2cef5670db4023100deb9c67e8e78fcf82f0f8237dd69d75bbd80821bffcec01696f6b43c8fb7b744d3a0e34a0a626ee48293a4a9ee5bb6860302047c435bb500683066023100c5cca0f97366a9ef47d4d30e5e6aedc32217b94f62e3f2a9089444ec718d542d4aabcfd2eea3588465c5ea5744b3a117023100913bf7ff77053899a07b8495df7bd58a06c9349e4de71e599caa744c241a7b28c3ac396aa9dc1e289db8c12abef9654b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310083b512dbdf1c1383ed02e26376d12cc4a0498a4db203d82edfa20704d7b1c2e84f5717bb9bdbc8f6ed0bb0fd0907dde90230078d893aa84bdf27b66b665d4d464c21d2fce4f731ad9858258358d6f3530a9903841e627f87b5572dfa37adf011e9df0302047c435bb50067306502305891bc097b16258ec33e0a33de3806068fb013c2cc1a42ba45aae710499d2ea451dc63657b74545777ccfa56ba3867da023100bde2a3076025d6f434ae9d4906fbc452b61479550d5b42489871a585f0f32f4ca2d21a59dcfc720a8189c4d1a6f1bb0f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100acac74fdf135b9c7635c43aa2746cba19ead8a08ffaf582b071438bb655c786c28a4ed9ba2eaec768ffbaf902296d6e9023100f00538ced46d2e587beffb36f95afaf59c141b4603750d80bab352ffed98b84baf8d1937e5aa37c1300d3029bae9dd4f0302047c435bb500673065023100f5040ab4e7b3b44276fb3d5aa89df97df92ced28d62611685e104a6081fbbb7fbfc500aa28fef147a80d8186b9982a8a02303d63e798533f34bcd263f5b7e49b3dcd9b586cd5d0ac07b858bf009d0d8ff234f3d3b51486cbf51c976b2430400c7bb80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305ae6eb3e7f2174c92ea8dfb3cd32b8c941817469676686a1f2070a5bfad6f8982416efd945ad9e61a3f508ec47fa1173023100be43051029692cd2d56b22c966777752106ef0c9d15c6189a18ec4de808bfc31763a8d0e7c98ca4b758d0e225e2ac0160302047c435bb500673065023100de1527715ea6813d60cb7064a853bb368066b911c5d35298c3e62dfc076223bf3cc7811dbfd60eeb9eb66b753ae2d9c8023020dfcb588c5268a3b9e7a33a92c03f8ddca138c4d488ae5b959c07911ebf86d331bafdb839d13d0f66530145aae95e360302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023057ae7c03f52c4ad848c829bf3c21eb5861a1c4ba8b05514c1e0756545d5a72d0e8af1ca77b421daef4dd1aa0c41e024b023100f9513e7113f33eff7df813d3754014d83a2cbdaf6bd9c9aeb5b5bc53ceece7bf9043f4937385605cf6e13aba0398dd150302047c435bb500683066023100bc9dbfdd292d95fbf18ff9ea8ef7c5f016af37c1e04ea3e22a4014af33b0543e520f4be2d660c3413d01ce8070a833b602310094a0bd4e7489b714b45344e48e904a8c522ab0d0a847bac021425ba3d888ebb8395adf17ad1202524f2efe76c6aa43eb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310084a2a1e379ce32f8fed8738778e4560b1cae41c9407f9785410b53bedd31c9aa098761cc256b800436e6dc657f1805f902305e36151583d306b68f90c4914d6cfc6ce9b4677a09d6853d127fd30681da34da15e3baf9d18caf8d546ed08c71bd362d0302047c435bb500673065023100c575c54d1847a9c43d8b2d4446a1e895bd47ec6f77019dc84860c50c68310f240627c5c2da94c5d4bced31ffa2218085023071367200ed650ed527323f0bcb583488e35470b445af6c55a889b346ef44c237619d8729bb1ecf5a64602fe3536cf13e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300b7a81537208d3274550396bb0947cf4b4b5b541539ef146813228246fa775c5052997fbe4fe61ff8d531fd7a756873d02300217a6242b2eb25ea3422a3dc5b05acdf6d16ca7da954fa1b4f4471214ca47d30ad17a5020361dc06c50453caa63da280302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c574d4ad7a1536ccd331765525be3b848bd578a7a3c1a6c7734f8841ed055950482a7034778dc85541fa5046124648a202306ad0b488122adc3138aa18a83a3a52f12236cba6295cfffb32e9beded74e9e3696c91d33bb1c1820690e4f0d345c68b80302047c435bb50066306402301daf62a2b607dbe9cb2d5aade1db88a99121f6d478a777d5e482af0383d2fa16a7aea55f77c7fb4569987d524570bbeb023074002b098856bb9924f0610f6d971f1597221e8f7b2846abb32f07496b0a28b989f004a9b617fb0e5d451a3d07ea9c970302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ad07f13cdfd9828758d0b12e0b2875954c354ec10cb0c590bf4fbfdad1ec5ad61eba942118af8bd630e37bfce6c69a4702306034c18094b858d435958618ed458cf954f8ef0a498573dec38af20aa44696f96607b07fbedee677c46cd494d1a3f9c80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e83667662cecc64dd59a91d308dd8b653e6b4b67fbb9fa5be4249b17d78b16b6120e4ae868cd62bfa9679ba588c731ff0230265082976b363afaa54e0ab435b23ca2bc4978cddaeddd417fb3b4e2e5e9afbf4b239766d03b0aee1b835e702ab279e30302047c435bb500673065023100fd70b360b150172969db20fbb23a28bb8aaac54cd84ac14f2a863f2eb0a9d131f26308f282915af41cd489682fe79fc20230545f600f532675b988858ee6098e97ae74c499743442efa1618cae331cb0059e412e30bb7162d3abaaf5d903b9d721250302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230732258e5a8ed73707fc4acc0452f6f99fca3851d3bc164e189ef4e0b0a3011dc0888896514ed4af83b4e67afa8aeefe3023100c1b2f49bcecf7b73fd82690ac3ea87ce193ee5370470221c4790c98c5ebf171280c0c1f0737e98522185b5803cdb5d900302047c435bb500673065023100d82fee536e102a3ac9b1c15e80a000786b3225945fc6b83e6c77e242aa4a76604443abc6c18ece88deef74fffdc9e28b02306cf751eefb07fd4ac769f003006e2288c9eb958d2573ca882fe1c3671a16c84f7c4dbad1b92abe1ebb7ca0ddabc9f2960302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100895b60809b1d325a0002a13027886f2cbb6217d0b5c59f2642843dcf5d92855e85268ef187acd6f10500be416c4523d5023100b5fe71b8e7a41e1745930e7f674b2c735e673a983264c2bc53e1938b08ce5ca88218580b93aba507cc8246c8b5e775d30302047c435bb500673065023025474ccbdc04285fdef2ca0b9d2e789342d8e83c8964755af37010a24231654bd58edcf2e228e9fba2a4cf4b829abe7e023100c5f5b767f3465e6070963c0b6b22d3e8f29a8ba74a6baab865fae691ef9499b10477a1462f11a2c84e008c8d00736b9f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306d99ab56a96ac6645d2d861f95bc282fa8d2146c3759d5854d23997151082cbdd8fe7666c18262904e880b5947f28fb5023071f431b7ab1be6e6bba74ab2f795f856512ab72cd814fb6f9b7215d7a402409fcf8919e7f462a85172fe09a63d2c03b00302047c435bb500673065023100d445d2566f7082da986d3aa283607810f217571be722396b146b646f7fbe14ca57bc3016df7f342ab975b71f28ea9bbd0230339ae3bf667268d7dd0c9bd4e436595d7de4f114dac43b2bb30a5b1c484b01ae8a0a6e9c202faf2dfd8d3ef7ef7d89040302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306e6a31ff8182e4f200cadd641594def75dbb1324326e4209779400661bddf6466db9b0a0f14d30992483ffa10ed854ed023100e8336df03192a7d0405410da5678e195e88af26779d0e3aff5d7b5acea5d23f48198f03bba30151c502a14c3b5ec165b0302047c435bb500673065023100f7605f32ee92c1e101a6ca10bc08ea9ffb84463af678b52a59dde51d4869a275897fc947582243b8ca48464bf5a03c3f02301da2f8ace4b1d4ff62222287be16bb14151acb2b7f3c55955eca9e89c52bf3643355ea86170d930cd26c372d6d1206330302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023014d9a5c745597f299ad4ea1510b1394fb5667d34016efbfb5f980617ecbb5eee1d8513b4c19a4eeeeab99e4dc5d411da023100c599d2d7c95e706b413063c65bd2096b64c3e021d0b9f704b4f65de3e863789a9ccb97b19ced5df21451941b02ffe2b30302047c435bb500673065023100e489801f76db24caa6fb332a071279ea98a96a5fd545b48a3c7fa2390d8d4492e466044ad6f1ab7d518dd0a01c93157a02305d1ff0624e26684453551226eab92f94bd84103f7efb06faf8f291bf4007509635fe3270082176e2df79ac814d2e80aa0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023045b4eed7243ac6606b3d38aabdbac7b5211e604e7a583e838bc4151dc1f7e74e0f3af822865a738a831102fd7f90973b023072dee06f21a168b01f5b7e1559e0e2c4f127bd5c981eecda3abdeb0d5b2446048f032f1dd5e4fdec428e6a9a5e533c110302047c435bb5006730650230508e073b3149a75905ce1a0559cb64c560aa659fb89123376fcf585061920b4e33be2fa1c7833772418c39935cae14f2023100e1d838f5db8e8b67a30704c4d52c4a5064f2f341879a059a5912f796e6075b2b97b55651cad209b6cc486b614c20e39d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301abde0822adaf71d92497696d65a229e7a9f7bd1e6f456ff06ee9ee29408bb34b484e7df72a68aa6ba62aef153c812f90230344485c8a2e2b6c7620deb2ae68da2ca91e863d7dc97d89decd121714cff97f083e3b43d1583edb9dcc44f588eb122550302047c435bb500673065023100fad4b8eb97ec3215c24912b340e54e3dd2f6a1ce74989771c545619a7b0fb7223bf07e29d71f3ef98466e50b9e82b5fa02306c79bb1c3966e046d7f5dcea0c2404b22bda8d0e96180f129dce2550deac8aefd1220373e8d55d8d64737c5d544eb7350302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ef7489b714c641b5055ca489c3028a1b6173c32e8fba325bba95d3c504b1b447df38047876f298bc7ab6bb22413bfe0a023079d4ade255b77af4b2d00bab57b22829fc92b61d104809ef608dbdda14497cecc6e6ef46dd4fd98b2b3642acce9a033e0302047c435bb500673065023068a68302c5c420760664e9bdaf2179e9bc5864a1218390cc4c49a3a5b6c0160a80dde84479f3be041db67535f1e5db590231009925a2c88c88863ae1f8a995e632f17ff40597aa1c5e771f1abeb051166cfb3e4e1012a238a2b17cc384aaea5d12c7970302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303184e16111fdf4eeb2c2f6b541cf61530647d6e20a1aec45da8d85c4ac852ca1cf9ce293f58dd5721c6716e60ec729c60231009d1eda0e413b62aee527f596c6aac9c44728142210b7f94a5fd0d049605854b0fd69afd80b0ae6f3497bff064b1ca6500302047c435bb50066306402305217d9366b309a13e31226a273b5f355b4a27ec10e73fec28ed6e75073637eb103593ab82c93da06877ff5f5a474941c023034226ba26df1092b36d8178c879bd55437b461bbb43a2626cf124ea2c1bbc48517644d6b1daf1000f6d941272c0ea4260302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023013d2dbf34db27769d363477b7d37f31e398254b90fd91c2316392908b9db25d56d6e4b4ef6568189be50a7cbb6aa80c10230157c9d9f5cdf6870f477d04395e9df0c1fa03e0baea1f6afde9edeb4bf09d4bd43acfb5e54ce39eb20fdb2e5d006d3660302047c435bb5006730650230774523ada79c69ce980dd229c87fe02346a9385e18a1b7120559dde5237b2dd4985843fe630f1e514b65161c4e04bc8d023100e290cd5d2deea5a501ce2954b29cc97fdc86d5485fa457d919afa7d59b1da43eb5c68f898b0b1b3ca14882f11b2a1c7f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304667ac02b0469aacfb9b0be1a585cc0271dc82dc2d8cebcf84e0dd5f6e2c03f22843460450300697ac71272f12232962023100cb4dc8deec7a26e56a5fd9c6b9b335f81048b5b536761fbe29912648bb792ed9db95ce9873fc4eb6e2b404a942c68d770302047c435bb50068306602310083e7a105ea5b8a98366be5364fdb9ea1d9a8bf81b0bb013c061a5c530728518bbcb1a1cb2271ca1a05d37211fdc9396e023100b0d9158abefa4fb1a66315193032499f70719c80f4f022c3aa73613a6f3d1e08cd25e39a490d554d4abb8b7e533df1e00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230486921437b9f5b4b189a84770ea30375804aaf24de6f7e68f56ab11b4861d8a28fb7656c10a5e9d117820e2a11ae78b302300eceb2a36a722838e7b762af5f7d4ab5b52028efa6194cd86512f7ec1532d32be40f3f07a1d27b37b9308627768601ae0302047c435bb5006630640230780bc03dcbb42b6f3ea2b03e2e884466ee737ac27841f5b5d40222d7cf786d1defab8cc8724b434497c83c58f5a6db6a02303a574dc18d7da756ac8a5c80af508c06de6366440cfa4d5225f676ea1eab1fe4024756552fb0dfa5c95752e65aa18ce20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100df7aad739ebf56d271f02e35eabdd32b1f114cde9f777f2e562c95221709d45f494786df2ba3e0063c1dabbfd5b0487d0230719f58fdcae13da7ef84d9e9215b61d6689595137136d9074fb8b0ade2cf0cac35d15d3e7554c091a3437291384c8f030302047c435bb500683066023100ae98865d1e0748fcaf25554044fb64350ce9812062ea1bbfbcf47b966b0aa8609a5c481a55a0f3cad81d127392a08f1f023100846edf7018b6368bed1a2bb4ba3742d6998d01b29a96740e52cd2bfd7d08e168c5a5f7335a1ed44014fec05f56926d730302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e254190939a8dda660548c212380a888fc88b519a02c18d3c548c980a104d0f24a0b731bf11f27110209089d281363b5023100c6f79bc291c6460a1f9af88937d2f8aa84d0e7a92fef45e9142b4dd874a765ee907b2a1216c95ea3e19e10f14c4d0fca0302047c435bb5006730650230567a0a184241cbca2eddb3c6d8ced6a1ac9e813a0eb2e0355f94985a3ce393765b8f04907df77b0b2417f1c7cbc3549d02310086b0564ece1a2a5ca454d61e2b6db51deac779963c7036b0e2450ce3e6867329227a76ba75d23831ad8ad5fd9bf972370302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310096c01872e4082908412b900afe22b7268673faee42aa47081d1b521044c420b4b37fdf71ed4f13e98cba64995839e6d8023100d4aa4fe505e46c26c3665ec4409fdca06962149bd97b301f50bd8ddc3205c150968b5b34cdae4b93709c542724a425f50302047c435bb5006630640230689022e66a6aa64441b4581a1507d117847d57102ca487d7bd9cceba245d4506a398f22561e18543fdf1251ea33d8b1b023076a44ded09f2443875a965dce31485f05bc941031e930607e2e4ea13e431c4776de76ad74c7a5d8e367751e865c65a2c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300c36a19f15742e1b0e4f0ebb86864ac595f263f8de29b496fcb709e5870f8c59b8a5d299635cc4639c08a5d8bf42fcc70230496bc888c34915aa9f77f08448b5cc0d056ff46cf593162856515f6bf60705af81c2276b997a72fd0dfdb101375523000302047c435bb500683066023100e1c93d6fae39372fef69aede55d466047bd5d8e5390016e46309f43a579b04997e0a5c044a8d963b950666f73e16ae69023100dbf0a9af1ea1f685551a7fedb636c08c312278e9b143095db83120b87dd8e3900743862eafd25c4c027bef52dcf062900302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100cfd957c77314f143650c6f20649d5c619e51905f19e823ce6134e3ba6db351ef9c237402f156171b785ac558719ca362023100829fc96052745165f4736510a5b94092b2def2189760b6f8c850abfcb0499ece513f0c7dcdf902641131b6ffcad7e3bc0302047c435bb500683066023100a17f50f98a244a391d70789a1f1f1d52078516c17ef777cfb8cca8307771d144bf1eaec3d667e784d0cf5867ab97ba12023100a52baa0b1e5a4b14352e3c42e65981666a857563b1de71778884f81f0544cd13535f4dc1472eb16f9715ba0379a396950302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023050ad09b7c4df69d0094d6115d3ef93db04885a4a75c68aa943f7cec35347153558300d83472f96a0672d54b29453d97602305bd7f2e5c2987d992e8cfe968caf304050b2d9fa04b612bbb8c68cf10cbc59f8c1dd7f5e8614ca39085cf7dbf92f52a20302047c435bb50067306502305d5d230b59d588b45a8c26240226d4105e943fdd1c34b009f5b5d66eaf0d6a1ef8e2848fe2a240bec033b9c67bcab573023100e81a4a71247a4ac8ff39008b89303243596e0861fdeb9bb85d34fd5aa4025f4722a649ae3804ad1dd9ca36807ce6f3440302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b96a2a1ab63de6116ca40ba52906dbb2373d5459539befccd8e395d8add48312fd30a345d3d87530d37cb87f971189210230073e60fb05929d3053febedac09a89eb666f3065f64c1794b557b00104ee0d0413edfe009afd597ad177765dbb93a8ac0302047c435bb500673065023100befdd805e4c03d887f7b8f3a8406979b47435fe438fd45809fb7a4a3c9cf1700eb27cf98a66bf51c1fd35887c4c2e31e02306064441f912581e69160c75ca1bf9761dd179e3b920c2783f6edd58227d938a887703aaf2442163c1a25a3222ad3e54d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303dc70bdb8b4139e7c79ea5611bb09d7da60c3ff4fd49b2e7376b5015ab63050f89db9101a65f958e82808a920d87e92e02302bbb2615aa71b03f23e409d0779159c033f2408435f14ef94ed84eea114f4087d63d2c066ba95480107007c233bdbcdd0302047c435bb500683066023100a3210b600c0b83b5217859ac29bb9d0546bd157461c2faa4c33d545bc1a680fbe469e44d5ae34b3847208a2d5327f75d023100ba684cdb3546c4fb4802a6b0f9b56b9d93966327d86befcd20dfdaa8587b8fcb7274e65b71790f8941a3746a1cec70ec0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f4b4afdd08e2875c2971c8fc8d75459331183a3eda893ea48a64565cba32f632bd0a7237e712a34e1af558b056f8fccc023078c9b05af6156806f776ac22b407bc6906b7dd985cab5191af81459231c1088538d4b2d8a1075b76a2d8d6f6dd1f480f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b4e2a6281c34860bf258a7262bc8639d190f6c7af090a8f96b749a46021bc62959dc21541a8b6cb2d7be0a5e1f6de5ca0231008c3b75c35a22438d0ed2877bdfdc998a5c48d37fd0f63499dd53e75d73f0842957022809f0f90b2213c5e6ee53a5e6550302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304a40899a5ff2a154892688dd14fd7f76437306fd1d4a81795b82adac35c7f21a5b60ff58eecc32bc48448f439b04b13f02310088cca1c1d2ee5af6c9058bf32d9c1dc865ece0017d6a7f51ebfcf3e293337a2bdc22789724a7ad32a99c1d5c2dd9da690302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d84f40dff1db5e191a0ee5d85a623b55e3436f34b2aab83b8c30cfa6575d89fe11d152cf03f4226bec228ef373fcd3f3023100e08d2700bf57130718e636912148a275956fb267b9c9249b9cc2283572c90021b0e49302abe61f67026bb81de80c36fb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100dc944d13dae8dd073a7a3227e1fd12783dbf84c8e2dd80ccd546a76b98923ed5d578b675c426330799051b3ce7edbbf30231008c993a7a29530362ea277f2a856d02258641d19a2211143cf682943ec2657b0629012c8e949ef577b49f3ba71cc32fd50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023044d9b454bf82022b73fbc8b7722cc6821af2dc805e7f82d7878da56edfbb817a7291d12e523ab405232f3edef381e47b023100b430653ebc797875b957732bbda14807ca86d15da7ed0834cf5bf5fb884024165ee26e758095122a3b98a0e78d47a13b0302047c435bb500673065023100ce85bf70bdcaf8b6998015e9ee57ff06d5becce811621154f823adc1def985e8ebe247fa101ffbc409c31a77540b2f4b02301b6efc96439d5a68e0af5c54641c020d30759e2a91cb0c9fcb4f2a4b3e86008a22b76d45b82c3ff66c693cd0daa3ed950302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100cf10ec78aeafb1e8602e9d0b6fbd1f53ef3bffef7760105ee51ad638c5feaefcc4d0aa43aec9fdd1524f294c64c89426023100c8787f13b823c95d75870723ded33e652dd97a2c8279dfc989fec030224b7da56b50625c4adb94bc032d8fc3af4f2bba0302047c435bb50067306502302aa0cf5d125bc103bd8b893c4a3e1472a14296b58e10e411ca108d4292cf2afc232b11933ee2283c42068fc7ec87d99f023100cb6df2047aa82f3f761b8e67b1d81f924c056dd3b510cda1791abe35848701d644828b161a61e6804206de5cf968bd580302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a680963481b5b70142cff069f22ff0521ea57b9eae4a5107450de885214fff255a45d0ba55bd55ee8b3645e952a8c82b023100af2a6995a7aca86a420452e45e5aeba7a4e5c98f4b576cc5db441f0f41414a5564c70fa59386100f005cefae80e7e2130302047c435bb500673065023100d3cc2f60e163ee4bbd9f742dc65fb06fbc558f40a8932ed47d84269104efa86d0b0e2ba03463ab68e666b73d7595c2e0023070e08cc183487f237e4dec6a578e6b7145c6c4d81b96999b8b97192fe0fc1815ac36252577f556ea6fd9d3021d8c70280302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e4f04de8e32885e0c30c4886411495582b8407397733a3fbfd4ca94840aa853325ef6b7d19bc2cca43d4c62bb6cefc6d02303700877e5a01d313dc5224abfcaaf9cae854f0327249e12291f8fdd7c1ab8e4feb273c84455524bea412538b1e0674780302047c435bb500683066023100a94601b4fd7fd39e0cc397a3d347ffa42db87791f54bd97ed3d12f5d3ef58e046cf4c8c2b333e74e3e9d3e81827f2487023100dd8dabe4bf6316b9a48c8df3ca9b16c7ee935022de21c8610bfe04cca3c3dcf562233b4b98031e2b437b2a8c58e694b00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ab921cf590e0719a10be62f1dbcd2eb5a8374534918c791c53411c066da0e65cb3b71214e1433428fc47f729809019970231008c6f2ef42342978da73cc8f1e699bd0ec032529cd8c90afeed5bab12f0c0874bd74f79b3cdfbfd4f32269d10ea45d6220302047c435bb50067306502310086509672ec0364eed492361087547be08e2a24a196d9143073fd6e12fdadc8ad5e9407dc3826d64c5fcb106a5be5788702307e00ca16722ad0935627d7de4f463b636f3fc086499762ce8f0bdddc34e3d05c0760dec5618bb9c4781d06b10602ca010302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303c136ac15818afc56dff7877fb4e533c6070885369394eb70317c93d79c35b040a35c8520b3eae431be5ba87feef608e023100b6b77e3f4f75e3128acc04d7dd124a486066df7af24a7e8aa570e3093482b1a8dde5e8afab795d4e2afacf80fccbb8ea0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100df5451da41e48fd41f8757fb5787d0df730ac809d117805d8a867834553e7db5f01a2dacdfdf07ae6c4075e1c9028a9902303e09a9d3032c2e440ff15fe024893436c21cfef6577889fe501556eed0322e6678dd257935fb7b390f079914f160fe1b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304119cda4831d0b3d0329b7bd7ab4068ecf8a54e6057123cba5d406f95c6abe5929a4a1304e3976b7fd5832b23e8304fd023049ef30636331ae7f83c3f41e0d7cbb7c1f2a03c70f8db7b282c4038cb2f49457470f57feea3e6e816eca882857d400950302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306ae2bf518181d31791d7de70e09459ce94000e14296cb2537813283dda0b82e82819050705a5d3d2644cd3a83c69b9e302304a483f63d5fd8e271c794f979d3954b6697bea0042fbcb698c48aee021a94c6012a73c2e9a69a6426fc4bf1c31bd95160302047c435bb500683066023100a2d5e8d9b3221a7e6a21799a9b3b308accea7ae894900757ac92e31e11c0b39d3e6af723b7c28a1e5a25497a1d1cd969023100c69b48c2d8c19ce717072ac0a90e8506b75602d34b4c05e59df9cc145474ce232e482c6867480193f96670a7e45272de0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b2dd3cb55455a5e9b7bfa566924495546853f5d07b70a8d559cdfdd0df737f1310a86e9d2bd030cb1dc973a63c9e245b0231009b4819c76f8c99965e8d92d02305108514ed16b22f7cc1df1c0e99b6ef20f8dc31fdbe374a97554a3a453ae2cba6c2d40302047c435bb500673065023100d3c36ca79591eb37990a505eb3021ef9c83f9b35fd65fbc85e18a8bc98f0157de63bf559ec48ae0f6ee7885f3d41c11b02301c78d05b1ae0465d860fab97de098dd3085d67f06ab99802bd73883fbdb239c86e4f0284ae2974f8f71d6d4c35fb867d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230594e15ea4a5ce12c9bd0a6e29466cdb61ac890842bc1a1c850416f1f406d0d68e01c0c699b43f43574904a58ca157a98023100ff68433c02bcb388c52c1178776eb0a73578807bef6e652808d2490aa985287e65af914b7d6df6b2ed084096d7a3f9170302047c435bb50067306502303f1da760ab9174dbc272fb6627ea1d2fd6408adca85cc5ea26ed4cf8d93357f6a3b2202b5cbc7b42222afe004b85af47023100f7ace5a75cd98e540cf25eda6a702738c14f3093b64082d8f058dd7693c79a085adb9e6736d4188018c84962db83709b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100942d49e88bffea4f917f58b54f20376a86d23da93ca73a31962fe54ab5be3ab170ddf63188179083819ac5cde713a44b023100a1df3329c98c9a443f44ebd66c1cdefa1eb2427bc21bc504adfdd14dcfe0a96dbcdc43fe47be3d90fd1bfbd3b406b41d0302047c435bb5006830660231009affdbe446d72f73a117854928bd11cf5280236a0ccf76fc8ec77614cf581967996931274a17ea33f7a2f158b4003601023100a46b1a1c1dd03d25c721a0334171bd74a0d8b9f5bd2187c01cf9cb3f1f5015ce4b4d2a9986abb59779ef76de4f1320fb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301428c6e186b84bffe3347e4a52ebb6a99919a7b1fb0bd043d19c34e9d292b31d7eab60c83d774f8f0264191f258f177102304a6aefb1d29549396a61dd82f3b31fadbdba692dde9e107d15c264ae68ef3b37aee187466fc8e829ac7cf77f8bbe836f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e384c06e332d6c32d6f130114dcf3651fbf90b1fd5b42c14b849576cedfac35874d68ee213fca42e2ae95d7ad57fbb03023100a49a3857f44b4b5063b72c50524510c47ef39fcf4f5b45bb87e603d92a6c47016ec39ad1afeb0d6469f68edc162af4760302047c435bb50066306402305defcb8ffc60a28b7bb81c92e9b32796072d4976ce45865e096dc9e97be3aeb72b5fed9d8c41a2af7569bce9f7f2b28e02300917aaf5423a9de7d89ec5e4027207f05e992b35eb14611a4ec715c682d7505753041d2ed6bff7c30467f40d00bb13a90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300831df83be131c63c91342a174bffa3c84181e051ec7d67525a8300dd5c14c40c6e37fd9ad0e5c05361680502c68b131023065bcfc1f3ed379790ab1083493cdec7dd33e3af5aca3da21afdc2b7f9487722cff34b9699727368852953eaf903aa4170302047c435bb500673065023072bc1381cefd26b370eb6b2ed6edb401ae60fea86ec23aeffc72e775384c8d2e5a13929b692252da3ef50c4e9d7b2614023100d32dbebb4b834db030637ee641a5caea314fbf56cf121473dc57c81d4babacd3eaa66c939fdb0ce6ba36e1c743cdca5a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100feeafce515ab58f3a45f3d6f4a1e839e0032598b32bf1771dd6207e0a810b8cdc793248ddafa6dbbe7361ab468d9e9fe023100846c5c0a858857e64eddd72d6c189ac74db3cc038d6eb0c2f63bb73b5da2a3066752e6a65daa6e7c6751716d2dd5522b0302047c435bb5006830660231009aedf9610b7bd01512358adab0f18f83eba3e7a05cf354ffaa3d1c1145c9f08e24c9188a03b5cde1bcf19c974b3db9c9023100f022594d2dba714fed6682a6ff4e8f662388f9d796b94b0a687b1b49b02956f2994bf01e821f65a4c968a83cb59e86ab0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b6ee92b26f3177f82db18404bede904b5090395b91ec299082bdbec7dacc0aa07da0ca2595e5717b962ec35f0d2f3eff023100c188a8af0c4708c8daa75db0fd4e10951a5e1ee6cdbf9ed96c966c7c77c3fce2134aa2d60150f791d75f4974e7b034060302047c435bb500673065023100fb1a4899e804755bc49176cf9182bcd54eb589f66df70fd8dac35796267ada0b95fc62f9d2cf59170827c011af2c6e9c02300356c9c5f1aaf2a5ca20939083cbcbd94fbd73999c556ddcacd39064aa5c67d983d547ca3e7a044d730db8cbe20913820302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230282fae5f20dfb4a5869a051660c23a33f2508fbeb396f3a12535b3c00a26ec20199ce0225b37275280fcad6885e53b2102307b98de37db0fcd8f4140e33385ecd810cc4b42617c3579d2af5cde237a4bac97612aef36d5772b63d382a08dd329315b0302047c435bb500663064023070fbe643fb775f84c6f9c63795f1bcbaf0c7f118ff0b84c83be4fe578b97c346f417c2a3e02eddd123379d743cd1db3f023079fa1c1c939a5ca22d5d8fdb0f8dbe0b5293d2931ec6499dae5e6f9e621c261955361f46dc01d664673d4f8a0383c0340302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310090e928698c392ca7f472c6baf84cd11a0bdeac2d0fa5645fe2931f51055aca8c5194d8904350ad617bb7a24dec3ac83e02303ad740b86dbedece3ffeab47df8a4f07758814d0e5994441420cbbc6a885e5c184d9bd429c1617e0464f63e72d591d850302047c435bb500683066023100cb71fdc1c1c18002c05f5d07831356eb2c14db53c128167a66f8d7f77ccdaf1ae39aebac95b944c932759a63ecc998c8023100d94daded5768404975df1e15fdc156bd9e14c3af5e9bcd949885aac054b6b979e1369766128825521643bca519bd05a60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300f1130ac0d3a751a733020253afd3a38161d62d91ce2ce864dbce8c32b200915cdf1a8c1c3a0408b0f7ca2fd44998b90023100e3cb4ac57770b3109676e85755a183140ab1e711302eb42a0f93982e417b72dc59237de6e0122aa3a2e6f306a83ea7d50302047c435bb5006730650231008614a8574500169bc9f66558fa3c519600071db367ad44238c6f214228e78bd1c6f9742f539893bc663b28dfd1ddf2c602304b5a609745c2cf335ba3e8fc076389f14b581643b4d3f99305c94b237e498fb48cc02ec73162a90ace43beac1d7f6c8c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023013be5ded1bb0a5072c43719979f5cabe75b67c9af5667809441c0ddc64b10690a672e7f0f724f17b51b72d366ff4579f023012d32d2f7f28ca4797399c6cdc66be061a5e422696b87b1c365da20904764320d01428cdab324e02bb7a091b7d323c5b0302047c435bb5006630640230116495caeed4906c2ad1e4db63f306469fca4b90596324495c8e50fec3d74225f85a4d6f2d6d5f9ca023f5660e1328980230571ecf508570381ea3eba457dc4928c76bae87174363c39ceb270c590053a5d7b19e12c13b819434222bdc11bb56c7c00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306cab7c45f7b03835c13278727587fcbfe430b2e7c7fa11da8ca58d461c570e618da47fae43ba269c46824af0b38a9d8f023013e0e10847282a87166ceb3bf692d485caffd9ac60e92a3d46a5969d0b1083e2a275ce59b4a63e2a9fa099c1a38b28b10302047c435bb500673065023010101497105d73c0d372cf386203f6a137619b8aff2e8a68d3b829714cc62a7ea0206d012a0fd9a2fa98d3d994c8cd5f023100afcac93c5e496d7aa0d62fc8701f6a7ddc94c1e64d4d5ccfbe27036d76a8c79130fec0fbd6ba3f9214dd5c7c524defac0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230626952d98cb89d25b32ac766934f8b6a3ecbf50869bc6a9cb9ee06a7d0dcc98ab0c697731258c778296d0a4698c337770230285daf993ad0b325c5450d898e1ee3feba4fc0e02027b7c52f53348bdd556c6894553ae259921c6f503e66c45e5e0b710302047c435bb500663064023067eec46eb23ebca76ebc40f7a742ae6b4419776f809b8f87084cbeda991f03257e017ba789d56db86f14311a03e60bf502305c411dc45fadec7207fb2754663a45f9c25a61591b787e921f5312baf0f663676fbf0f013709c554a2b59728d8ee7d380302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302b643f92268ed8a59b53bbce8f8b8641d29bae3e161dc8f1c740d640a95eb10476a37acb35e204a3f77f304f9daeaf3602300e3f62a3a8574e8db81b81160a98abb9bf5dd503dfb2587d2157c6859961e82e1ab347ed4d70d35dde98e73a3ee225bc0302047c435bb500673065023100c23186e33caeb541a9d9e2da432d5c4282a0bee2f833c6fee0eec9ff503d53db4597ab25efab275ae6be3682a84392dd023022ff2c895b700935bcb91ae1a60db74b26eb4efefd63297608261064decab1a6183b54d85402559e8d362042d4234b620302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e01a7e5bb7d523f88935266ccf851987cdbe0c11e30aa9e2ef67c29703dd737c99adfb4f335d632231786b7ebad4f33d023045e9331996551af488e31111a5ea6416d6a02d9f1414177ed0cc5418298e26837400e194c735b570f74d0c56abf15bdf0302047c435bb500673065023048ca795180fadd491e68b40bd7f4e332b824438815fc31f6068186e1cf23cce3ae4437b9f7d647a0d4246a2e2b7f95e1023100f5dd21dbdad1d0d1f8f48558b53a8622ebc18061ebd3d60e105a18b7b87114cd3a114d060cce32fc991ac60de76c6f3b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023040e1234239bd3e791ff28730740d596b8a5d71a5012d09317ffcc922ea293b12c5a88fc637094da695a2d939b79b64c9023100e7c1b10d00fbd8f8cfc5e6c2509d6fbdaceabe52c857f824ac6f91692f16f3d426c2cd281f12ff419eee70e259f509840302047c435bb5006630640230798ac0956d6e4c75b94bee62d089a1c3d1697db4050c1b138cef4f7b6d2f5081c41daaf5bb47ac7c3a1ee398d5f6b6530230095bab927c1ba64b96d3e28816aebaaa093c232516ff611c116977b91f763873c8fa0b43e44dc099cc5f3868507880de0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008685184eb5ffac01aca24a3e132944fad0c4052c362ae6023c759ebecc881624da95d5f2a2418201e3f7369dbffe07ce02303a0760977773bddc7d4feefad1fc9ee2a9120bef05985b4fc3cd0d8e3854f6b2d806f193a28107402692dd7d54eef2580302047c435bb50067306502307f992dfe9d1714b933e511ff2452e1660301c85b9017194602e9a2907fd2037d49ac48e42c9de4a4f4a32bca27e6fe8e023100971d6ca3a830e92455e48f12726cdbdc137da08e4ed693c670bfd956f7685c012a5a19880e7bbb05d946418da182d47d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303a5100bb53fdb02e2716c4afc5ea7500f9ff42b4a3e9698e14e5b74ec8ca898233c6b1d3db7e843574e05468d8c240eb023100ceb461869105f793a7db47eca79fb84b3c3f581eaeeeb520acc384a5b651bd3a872ca1cab7312045edb46476331387be0302047c435bb500673065023100afc0524fbb846a7dc9c7744ca6b2d7341c484e77d15512818225ceeb62583d8fd40fa2b8a9b01b9e40e47225344f8eaa02301281b2a35e13a948d8bc3f1fc365fd44a37854866c66c29b69cbd3778d93e1c1d53a1795fa6e58abcd5df2a3688886a90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304ed1f3b8ed3c7c9ea831e6cda2bdd16b30f0a1d7900f1c775f66119ac9fd0e0ef2ac7d9ef8d6bfdd8df5c5124f6815600230721dd24ae3988d1002a786d1c49ccc9fed0e558431c37ca1a469bc74c91b76a9c3bd9fe6963aa1e1eb7821c1f68c1d100302047c435bb500683066023100c31501cede5deabf535f4293be68ec0552e49c337e1f335da6b922a5c067c4e3babab1bfb326bf53a303436e25254628023100d2d4ebcb3be4f305ffef7915cfa771b96d4ed8b2a3c1f087af59f692d14e592d5fb991d872e5023e63c24db0dd75b7c10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100def0e024f83b9a4efc751ef7be967ef889f4bb0abebadd438b8722bbb034ff2d029f88a50f1c9e1ce2b54d6bca747f0e0231008220639cb2446fb26919a2733808242734d8161a3d7ae9b52ba09d17f19548c3df7a62b66ea1c9f5ef988de80f6693670302047c435bb500683066023100f323ab49a7bec80cd89b23b6dad96bd0fd16008aebed8f0cd4cd0aea7a9b4c2d35b109ff4f875a669285de65c5e6cb8b023100da8b6bb145278aeba9a92ff33a571725ab3c9ee8de8c4b76762ad647f58ad773dd29a38439404b6f6142f87d4b786c780302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cbde9e77c4e31d96c654db301606cddcc5f995312babfd69851e70d78a88e0d2c59b0d38dcb6f188470f699c441d50f802307b49c2ef1c6becde06d44cd678714bef0ffa5eea24331adb5ac9fd3b8b47d6e9ca65ac2bbc22b3d44424386da2b58c9a0302047c435bb5006630640230553303493a5421c3be49344cb28ed7ef86b2de67401dffffcc201cfb659d0006521487ca2f1f44d86c0cab19d9fc98b1023017cf69a4552395ce51a514d716ebe1bab946fd401d81745d74c355b522b2f1e7a2fbc89ef6e5f8fb83149ee38e4bc9980302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310098336d1e5aac2615379ce16ac3cd461b95b0cc550af24d96e4c218d8c168a50ce7206d3546c9183c06bc36eba41199ef023100a152c6d4784fa41e66e43688e493466ae4ea6ada61058f7600441743ca8e2114d67a43a8c2eeac57d21b93efb7360f9f0302047c435bb50066306402304c6fcd1302a38145e7682e2bc03c088aeacca98d4225e73749c95bcf7856930f7b5de3dd80a265e146ecff5eac297257023077371a9bdcf3aadd49e9acf416418d5a1328a3114294784a5ccb20fc19a082199fb0cee9b32c50f61aad897612acca380302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100df76e11027bf9397c6ea58c4c81381e268dd436e219569c72fe0e7974970867e51820169acfcbff67848b53a4c2d2d3e023005e4d2728d64f5843f34d9445958a56aa70017f3e1017a528829d7852e6e14aeb464a875d520cd722586c17c83f4b5c10302047c435bb50067306502300251e821fcfe2a25e6b265e5b0ffc54921603affec428d97f270b15e4ea1e179e6e48da28b8e93b42e8f03703eece66e023100e955b73238ae9013a104fb99a587d416d71f8e83ccdd556735de8e3f335074504d1ccb21e9ea357d0fa46ed29db0b23d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008d3ce10bc9b6e5cd0b9a1ab134812dd0e6b6a9c455afcda95d88ac741f0efc1b4b701d77fb539ef12ff17726cff90ba3023100b2d33449334f87b141610b01df9e60c088e1e4a864d8f003dbb3461e2c487accb5f1a2e3d83ddb15a6450068b6889cfc0302047c435bb500663064023000c36a309b7d25a8d3daa7b602ceca8b57f4c2e6a2a51c4dfdf04e2da4c968e948401c79fd455291456dc84c2dcbf4db023009fada9ed55aa31aa4ec702e9e74c5d81baeac69703041a490f06d002d3faf449a30042bd94c14be8be105e5ac37e5e20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023032bd2ada913a339e21950e525025f09ac65073ce892817909a005950d43742d260f91aad5f7788f063827a835b39b74d023100c41f73a46507562ff795248f9647dbb5a5d0af125e24887480c6ae36195ecfdc3612cf86357a00215c8d3a9fb1f9a8a20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e23f8b2aa11ccc7b29d96a29fd523e34cc9c0caa070413818a7a0d78033af23dcaff2b1432402557894a30f7afd059d102300506abfe850f60dcae88a9802402c33ed0c766dee8b22a1d697c0a43409638dc9a9355c7fe73b5ea6bbe56d52f56468e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230732a90f1b04214b167a287c9f305f268246d97d830dd7d81e1ad294a9577d35c429e54de8673f77e77ee190235f5ea1302307ff42a5b639f43877605b805ba6ca95c97a5580f94fc5764a3542022066f14e4f751c13c148b55c0ab20d37fcb1f13ab0302047c435bb500673065023100cbf6d370072a1a1575c3a400ef8d59cdaeec217e6256235495400ab5533a972196de6df62a35d04ae744ceb8b7c6734202300503cb65b61f1c104410f2a5ec1f1b1690f195d6e969490611f51f99b575ead292948c94e5ea46d82ad463fca6686f520302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b99b845196b7d31edea89cd5389b33ed2bcf093d22c79b8042943e36475313e304b241b51c47ca76dfd0b26a29d2657b02301eed9d815e52763b1baa5916e25e74619475e0d42dec4ae94f2fb2ccc9e957ed483af5caf780b1d581777bc96af8bf140302047c435bb500673065023100b16c22bbbc780f7d122df7e0c011c5e3747dbd7f23a4c7e97056c19d7d738894d951f9a08d06d52568992b9f7a2ea42e02304a67fe2f23107687027bd81496b79aaf5b1b0e6223cbb5ad4d1e8f2a83c36e55036db96ac2f1834b26ebc69fb943ac370302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230015a8d6a5ab891c9c13140a7d41c279bd3712ad1e1f45fe0cd84fa97d6b2893a17d50739cd527f79b25f5be3b5f87bfc02310086ec2aca6820e65c95712c6b4e52f3a47a4ffa6e3250f43f3b65b6711d3c4a5305f7fdb2c02865e9f47e6af094cfcbc60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009918b15007a5d2563fcb4e7255e50cb95c70253f4a6e52c460c6d5371b54ac2a2d365662bbaeb33aeaff948a351811cd02306972982049233f19b3e4d3b749dcb54ce16c359bd2bd05158b5116b62fddd48df50845601ac0d115b64e993f55255ba30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100bda0b9312a95fe6ccd8149b511a1faae7abcec946b5b54cb50edb6fee40adb45f89a35ba2b96e681671cf0a6eeec0d7e0231008eb20f40fdde3d52d014dfbf54de96a6185f34fe7a1888656f9bfbdc9f7880b86f07a7bacb1f0316aa370549cbca13e10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023017b67337e244c6e8bb175892252f54a20d04c6341cb0d986ab3018c10a5a43fb60d1d16c0730eaae6db2aa319c0aac170231008748c838550940025278b8f1fee9ffbca23304979e9d3926eee5030610de9df05ffafbcf7939ee27cb7ef62a5062516e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230114719d3729c8ef15ffc50ecc12d1b6c661f526e2968f36a5dbaa0da101798daec28f0e7903086902f2179b11b482b0b0230257b3477095be86a9f3e0be5daaaa719e78e8c006dabd0eb45ec096b09ef27e1752c33d130b2d36e773e3a154a005bfc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bd9de12f180ea8ee2613cb240ecaf33df8a7e1195763648d6439702bec30c35f8573927c5815fc0540399ab4067e589402304e3c1d6c594c16efdac51ebd601ab5e333c1f43cb0eee8e31cedf2980bc296a3212715deb86873a77fc5614675ffabe40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300998e9bac1c4314924d17b521143c44f2ebe03704502c3d34634bd34bd464868fb44d95ceb687f950c8f86f8ff62ac13023100dc1dfa13a3af6fdff15cabfd73a00b43ac8b33b5c929661df5c4216b40ec6f8bacf1264702686807819cf20563898f7a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f10efec99385b24b78be20933573f5543de2e4cb82e7960e4c66c9ac1d0af9ff95dc0c83c85a991c66fdb419accdf134023100e5a15a4d395917e2a65d2ca0b89de325f95c8007a99e7fe351b8dc015fcbbfcd942c83cb6807669d08d009c8e5ebdc910302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c3b9e6a9d426d3dc70199f08f47791e12d2be4c7b1205680da34ffc70f3b6eabdcdc9a16324e076a8f28653b53f5cd1b023029802c95617dafb6db8248cb5affbdb27ad40ab228406930f489fd87eb29d0dce881e6239d97832a7e07e9dcda215d1e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023025e7e4f4bd6ae48f75ca97b961013fe1791bd54a0225a99464293658f719a13433e9a301c5c1689ff4e1f3a003ebccc702302cdfc0b00f1fad1e618a96ea964f66e4e0c1d3bf14701d7bc07ed6a3e216007ac749c953cabb27c3f72d0836eec1e3bf0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230272712e7eaa9d05d7cd9160637742982a72037ec54ac4f5b317f03cb8d596cfc69135b59ad7f0fe7a10ded6c6bb54106023100f19bf62243fa9ba1f20ffa1f1073371f456c0d89dd3beb29a3a4daaf594622762f7374b07420f717a5bc2b3328caac7f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230755451c8fa841df864af74c436a6cef84baf28a62af66c55542499080260cb24dd2a685c766fb2d6bebb2b1b1241b53602303a3306c9b549c8eabfde9d2244601e6790d2a9221721c88cbd18380d9dd2d0237f534ba9b0579fd9306ac9b9ec7e41810302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008aa08b6aed8ac9a742ecf008318c586ecea37167fb7775e314128602c10c2261e20d4759045124f8cab93435f4b6057d02310092331e3b6a6d89b7879f9de62d782e1a7b61799c176bd3783ef79ef28552b69768dd48e3574097b63ed0c3edfe97ea970302047c435bb50067306502300ecb8f1a74de31e1e689fafd128bb2a552db6803a3e02cd55c88a82b396daa519c32e8ecfa39cd8ec4b5a7f15df4f12f02310080b308a9c676ff143a32425ef54ac812cedf83db15192bfb72aa7afaff666ff81cd363faa9667ad44fc12cf590809a640302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b8dc14c949f5e2fefae7ed69be26c1010d99ca82c1cdcc0f6075c1268f38994482d5fad0f23d1df15d0db35bbd26797c023100f68d0678c38dc1af0df403a6cf0a9ce783df2c5e636538ea932c31184d624f510d6ec94d926e5d4b576e51460469ee670302047c435bb5006830660231009dcab0e27dd1e0cd118f716da04bd1ef4181b07da68e8a4658d6f0437884a4c66854e026c7a2e5a40a0526b3920dd930023100a4f295f885ee8fefa39727cba9ea4202359598d16099669cd121bfb2b5bb9490356230182112b74c1b447b72aaf26c550302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009421f2dfc515816a31b28fec425248837f1b382bbf87ba5f34e74456f5198a4b28a3e3b3dde5b98969ec716d8ec830580231008434cca70dbaef627087ffd7e9324e6d7988512dfe9f16d1b3cda5407148164499765a57c49482b14511ec4e6467f7a00302047c435bb500683066023100c1aa8cc8aab4eefc4e8e140b1e94096f4fcdbaffe5bbec2e298ba864e836676bcf8f0d80e3a32b46299b112c746b105102310094049c236504c9725300c627a57409208d7bc7de91cecf8b538878d96a8429c1e4183c253efbad8fc2fab234f33b50800302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304ff4fa5b218f65bb30d684d27d616e71c862426e25984a310e16a524bf1f5e58d3efb5b500272a58705badd32c253f0c0230496c13a8b02e035f314aa8d24aad4bb12e30744dcb90d374231cae89ecbc30e1de739b7b4494edbe0ce4431f16c7e50e0302047c435bb50068306602310095befc7e8c2f0de459ca17426faed079bd4fab3175cf1e74032149618fae5eca36530ce7ad391e35438c0975aeae85e3023100e217b3fe69445bae1057698eb5f33d44735102f741757e42291400dda0f02f27cd36c0293132e8708946f67413e625f80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d643efe5b8f9003d2d7195fa909d55410e870325d9257fb8e90d1f120a036a08f8c1498b23db937846dd405e3fc6d7a002303c460693a27ac73858f68206426346edf51e97fe4e8d9aa52e20ea9a1a29659c444dd45d615c90a113f607fe4f56979d0302047c435bb50067306502302a15b3784723e271cb42da72a8479f4945a9fdf45134db8430d8ea7d273c330f9d4846cf7a3a468f4c506ca734b30f27023100f639253b0000831d871220574d27d8941b7cfcbf6032ed00e2882c7bda10482af7db9af716e5dc5eca5538654550dbcf0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307e5ea866b6711c0c9cd25162d589e3752afe2df80d1e7f4857f3f7034bdf198d4294453824a74e1b0d8fc7a549603cad023100f2c14146e796c37f34c7141ee3c91ddca4e59b6b90cf943208dd6d9434e6fc740550c72402e7d8a50ef397bfbe8cf60d0302047c435bb5006730650230166b8f3b4ab411eeaecafc94a3ec73a5df1066afb73272b51b997c4c653f8e010f8fb455d75b91314d81f3facca7b18102310084d922a2f4eb0c71671482de38dfb3885906bca3bde9e568ac877858ab79af7b96d5af9c6329b307947f3a65355333ab0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306ba41fb80443c8563c56065333ebaf4aa5a11982a91813ad88180fb35b1f649fd9a368fba5bd71115230e61640a1483a02302bcd61b4a49db56052272b5958617acb1d9b6e63615a644bac178761762059a99702b6e8111284824fe3be5617a564330302047c435bb500683066023100bc30899e9e6c5b58e564138070b135ffdf211a0ab186965a90d72e7033f1f134c6cd4bb8d00ab6292452f45845d638a6023100c510dfb0c632be6b910a0b169f5e73db1aee10920a925c9e09c0ae3d493e477bf016406661bd3cb69a75d76ab8dd87770302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023051fad1fad511f899dc4d7aecd4bf41023731813c8d28d228456a66a5d860e4bcdc8e6411dfe431c77109b3650304c20f02307d6c0e87cda000eb896b510dc863bdbf7a6bafbf20565b69a0a29f3f3b4ed5f864ce5adbf2d2306f53943b423ac3051c0302047c435bb500683066023100df467ca2869e3b71c8071ffbe6befd291a2c891b8d056dfac4cf1f8b70762b8b44cc1660059603aff9a394fd1b5b7418023100d47709a7c439d443bc7aa0cc5cc4f539268df32a64742cd91f857835d23404c6d981ac4f091fd9df48462f28b05c9e6f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230152c8fe3e37eba2973f140b34a4339c845fb5992832285f18f56c25cc9c6c3d6015a1667e38db4fe7c9948582edd2c7002304fed2e88bd14672c4a264e51864943821a3a4bbf5bedfc33ce08ae5efeb73345284f44c3ba96305c0a79ee9a519f9c6d0302047c435bb50067306502301a42d47401d7ba636fe51f86cae9b99eb3d0d0f849ff1902ce98669eaa92592974712a6e268e22db714653e68d672d22023100d97a61243986eedef5d8a9bd352a9b060fa163fb81ca209bce161d88aa0677175742b420828fa460ba0b9cff18866b400302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008ed69ed709face8a0f9a81dd5045006a251ac6362263c736210bfb921d4b55037cbe3a25ef56ea5d59517e27c66dffe7023100e3d744b2d2d0e44b8d243e4819fc7292f3d023abb390b1af79f44aee715dce1e30bf42529ef13efd86d857d076d331940302047c435bb500683066023100aab45d4cd9c3b7d45d447e231ee72a858153076cbc7dc624c1ddc2a76b65d8ec62c446f301690675eded901672bc7dae023100d4a21b67150dc45b4b49e7b8bf0837046f4daff19326400393c5f0fbadfe84bec5c00a435b2a402d9ef1b2929742ef910302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a12e55e9e7ba0b29d6f77ebb10e929f9468b08571fd0be453f3b08b156a11512a36257093c823cd6f57c6cbfceab99bb023046186419ef55892fd47169ed7cfca42b3a49dc7e8867de9476451d8ebbc2f2fb919249bd064c038c9953009300f962db0302047c435bb500673065023100fb2b62c93a7c38b7469098e2c7af66b7e3f6d88bcef8d513c8385cce8656f52f45b524ed9e61230f48ad758c18530c060230569bfc15900ccc3e9f26d88903acb00caa83e66d831b683e5c6a318e67d101aa931407800f49edc9b95713f4e1f8960a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100db9e73f85f5ee2882d7ef0a7db3f67feef6f4a2f61b8f896c0f6f680eb4d327baa347bdac52b2d37bdffc49709c25e34023100e770027f54803b810e340d6bb797517822dab061fe189ab6887a8176ff4f1e04c33810572a2c6839b594d2eba3ab04000302047c435bb500683066023100e905933ea3e819d7cdb9044afaab4c35a261ee1f6d9792c9f9ffe66e559c2ce21d17632bb13e57ca02428b45a99d5b8902310095c0f36f98f6272b0afef438a04c61c2bd593fc529c8e72e48a33f4a14a80fb41efbe8904fb74bcbf9492702e40f650d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230466b6810d3318d610a924634a96131c10dad1934996aa6e018af272a6066d49dcb976d412e9def9de8d98fc2480c88d9023100f2ae29a022c199bc0c21adf39bde0a8550693a943d042621293833177a3a453f464ace23c7bb29a5225027e01aa933ba0302047c435bb500663064023034a2a0f16289714c7d4cb79b91c55a9bd0f77528a41c9f5d081c39a305035090ec8e5704f2368a6b93cae8207b6a7dfe02307481f718b73de81c170058d2042be072a88bf017c3ab1a172433994ba9c6e24338892cff262870fc3516ebbc12c19b030302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008cb73f9298eef6dca37acb7d32894302195da245beef302c68ecd910e27f0bfac0c6a3b019fc2587e9d2bba9a936552d02306ce671816da9547409632ce7ccecb0a7e1062db2b6709e4d8cdbad3de410c65ce18485c9cbdfd573912022ef93dbca970302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304336ef9f900e126bbbd126bcc84288941f3ec69073483e1e76fc4d6bb92adb7da096926064b54b96e7365627b7de681a023100f85066e2f8dcdb747bcf8a83cab9bbc0ec02b858db64087e60a2019606b3aece1e680da1fceeb4408d03fdc172efb4ef0302047c435bb500683066023100b986d34146657008487df8b04df32f254d5a13986886ba682da64558386288537b48dd2ec257b1411594d856afbb99d7023100eb1a30288ab8fa388e705dba4c0b7b0d9c45210c477440fd021753c39252551ea2dbe3a85445dbc489d58cfff26a3dab0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303a599dd8828f8a9082892cb2db0903c991c5d61be5821fb45f2f26e06751c545220804fbd95e6941061e348e093fd724023100bba60dbf2566366faded533811d2f98253c98d44b1a8fc688b2ecd059c0d7cdc74dfac064a1cdf57db5eefd4d0ab9df20302047c435bb500683066023100c2475bc868175f0ec80682aef0f28ee5d5b81ac43973ffcab6cedc946f77b356b3c4a8b8cfeeeeb02fe11afb2b8aa5ab023100d7e486bc9ad3d85c574cd8b32cbc1aa0b54d1c5d6a7c36d7a2ecc8226cbdf9ed69f073c47d02b61e5e49810745bf017d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301d8ea655deb51339294cc00ea9066414267847f30820625480aa916de27bff6e6540a56dcc624c63fa3bf5f65f0ad0a302310081863fbb9f28a7aca241c9a853d0af94bed087b543222c26f9d2ce22050845753534aa9f2eae581f5c66e462826a9e700302047c435bb500673065023100c92ab3f84b0ef42b203cb05c51343361537810b27cda641fd96dc003476741a669b67dbb01e5cc2c06eaa60be4c1d83b0230449f125967ab31802b5bf00856a3c611bc70c6385dceff3aec0f8368f7b33fdd43d0fd819bcea0e974147f0922936d540302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ee6020e963b634e8f4a3447c17a44e261642faec2a1956e4e1315267005f6d82eab383f681a92c588fbb7d910d9c05ae023100915540d1d59c8d30b348a853cbf5ce41c0d071233f3f7b62bb7d787e89a39251f4001ad08a302db5ad0d19369c01aac80302047c435bb50066306402303e421389d3e30295de81a29d458209bea553dfa9557460279b5558464211bdea6f123bb7755dc29ea7064ef0c281c83f02306e034de03b4e124dd119fd5312bcd136695f55ac97ce2d3c4fc5f9ca2e9fd739dc9abf375ed1537d9f58270729265e4e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f5f01cf05a962994598948e5c51ee9c8277f15294a3a868e353f2f2e3b9dcd9ee81c3ee07e6e8cc6a1499577d676d1c80230523e809ba9c8e14772132c792032788e3f3bad9dbe8dc39ba5836752a16214652c5af4b7b04cd00d8adb2badc69b90f30302047c435bb50067306502302b555588a090e6fc81f372f88856333cfd9ee209b91a4f23ba08675a0f8a01d8bb314d1e0db5984b2a3ae444edfd2b15023100d54d514a17862a376b88cc292934d28126a1b4b584cc64b9006a153ff84855930f00875429839cb1263b3bcb439fd4b10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306b97b4cb391e90a3b0a1a6b10c8071ee8c63ce316fa1cd39d7dc58adf058a8a41321f927a712cb5b67388c552625951802310092369df7e24c5c45e821fc76937d8c8f68f398bae5cb4e57768a78034a2fb1126bd70e7056861a216cdd163791e4e3f10302047c435bb5006830660231008955b1725b57e2e5fae93d66ce030428214bc2619dce7ddf391cc3873f95286d475c4df7b7fbadcb5419a6f68c488320023100e2650f9317eee242758164cafcd1a66b998c5d898795cd5e615ac308417cf5ffcd3dd80a142799a6692de69f81288ce00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023059f27caace5191e4b62d5e500931c5c7386e92f7065c07b1718b6cb3c17eec74a05d10132e914083df60a960d0a5c34b02300aad79c764d7a9154df23c4ebe94394f7d82f6f5c5b97c5b4e37bdb613b050d37619c33783ef5e4233e9cf8ae3656a110302047c435bb500673065023100c63dbc402d34e2c69bb22e79a2699c44769268a914fcf9569c36abe7aa86474d94c15c440cd832569411ed871fe2b68d02302721b01dbce8478fb23c6b2d0ac61d42aa20cc572ba9407e5ea20bac00c8a9661775ba4769e517dfdc269501143eaf550302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304d0965f8152eaf56b42890e93ac75299587fcc8ddc78eb6668d159ca33b1686b3ed34cb41168334541781432fc6cca640230131794d5624d083538e04c1f5bd1cc237eee0b7448ec17b94cfe97a0199d13b8f2e639e30e8e2c5f920c3de14d1ce8af0302047c435bb500673065023100cdd5d8a70c498441d39c2a891d14a805f96ab1d48492a02357624a848227f8a38827d9ba15c29a7ee778c8110736dac502302458e0f1ddba3e65443c2868d964754a1f4c0515ef184062f7ec1c0042673b141280668cccae88a32eefb0dd84a8cf590302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d9c259aeea49885bdfcc4203442f26bc299a5bcc375faa2389a0f2fd949d601193284db1a898c817c1955577b771e36e023100ad79a821dabdb504cb6cbca15868a0019e697c6a7a3ac6fb6d7ed1710cf5703502880c34b10cd605ddb1462d32a80c970302047c435bb500673065023045f64f766e5d120c19e03f15f5c67a5f1bc36925d95d6f7f025988dcccbd01de7ccefb6d4ff46decd35558a3e38bc6c6023100b8320bd3f674a11672e46aecec48f7983f392f1eb5a16983e37bbd744efcfe97666c4d5ce8943258f6a3069094770e1c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306a0c1c6ad3bb60d5518e7a0596e98dbbede9296280144c20bb37e373a5c946485a919428602c22512c25fdba9f5888d5023025f3e51f52eb74118731aec8e928e05f1ac561b56a4e926dfe70018a42b40d46a22e480cc4736b7962c566d1255ff44b0302047c435bb500683066023100fbe0037d6e004df8d10eaea143a4771e5bb2ef173330031b341baa840d6e5ade1368a7502f4712d931320e0994d9a4cd0231008b746f8830773540099f2a0c2d2bdddd532e11d6dc94e34123f96766f7104e299f132ee20d3b7407fedbbaff907630390302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ea796bd64e55a8cf8db5a0a9c2acd53121b4c0ae2b4b3f42c0e875d6e9349543183e83dd0e68a800530942a300661d80023100c8588dda2f5e500667efe19328bcca404cafe83684b0f58de2c167adb06cc9d2d325dd883d30de1c8ec29d2976ad3d760302047c435bb500683066023100f5b9c9a358e9c655b057d6370508a1645d479cd664e770a4bdefb9c990dac62b5a7d742826aa9da5ac16c64b461c10f4023100c9f3b5f63fd1844360c39800c2bee7ef85ace1439c8dbec7c418001b3d35c0bdc785ab931effb8e751a63f1e4913757a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303bed58fdca313cbacc2c65dd44bb2fe11edf620a01e4430aa63d7492f7e98d1d77bf72061215f6ee61dfe1b87b5b130d0231009bae7293b3eec9e2b39e52e7be4d0b02edcbbf16c61826fd8cf3150b5907ddd7230fdb9e855326fc6a8a002ded2d19620302047c435bb500673065023100f0467b05ca05f61421dbc57d0d7b30de750be1bced184d0e2d4b28ce41bcd1e124d673e1e256958280eb5184b7fa057d02303f1066827c766c31c0a0bcf27b9b6dec94183f1414b06ca540483843e473fae03ddca1937aa5ee4ff1c3d5a06ddb2ad50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a867c6025354e0f467d90c0fd6e971b0586f324453befd4fbe26488dbb0f746197b4aa45e496e8560497e70cae43a0eb023100bb63ab45c3cb2a16e64c6db64228435dcf30238ddef1eda49716ddc3a0de813ca811af9cf4909e8ed41d86e0f199665f0302047c435bb500683066023100cb23966c912cbcff34a4237342406f15975dfad114de7860901b5122b140c4155dd5b169398431a6ffaec475c9dc7572023100b554ccd8fcb16702b408bcf572238f8374bbd837251185c38aa698ff2d4a16a1311cdfb04e6a93009a8be4a60439d3500302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c49d7024c0b196649d6787bdec201fc11b673f6a8cfc1ad7f79daec657c10cdf1828f449624d905db34a69e2eef43f0802301c69b70dec3b298ca7401db9025c48e9f5c9c0b38de253263e872afde27b32946f8838fd67ddaab482ff7f62089773380302047c435bb500683066023100acdae98f9f796ce5e883000fd4d531c9fd1933f2390f283392be02da177918f9b7169135d5ef9642a772ae1382e9c5f5023100b4ed7f2759195f4759fcab368a3a4f3c7e222dd36c984797483e7bdd28de8a4c6475c0c49976004bd28098482e6617fe0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100deed4b7f90453acf191467db842b423a75cff358b169355af05d32b0d161318a5aebd059e04e5c15e25637c0f9ce610c0230772a25b5124fc13fb8fc79b518045bc37425744870330bc462f772812bcbcfa70256a9203e28f04aa18e83b86eba95dc0302047c435bb5006730650230723ade6d7c0b603263ef2164a7bae7bed20e85e2d086d862d79267ad661e8365828c28e2742fa193ac039de0f3978c680231008c93d0728aa4f9eace2f0b10f4da4ea44a625f18f7ed04756b99c0ed4c00273172bb9e08b748591bcedffc7b1097cd110302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c342eed7dd6c3d72253533c5bb6754db0c02f0c8e5d7c313ab145a9a129245bbb144fb34ae15aecd5333f4c414fb431d023100a99d162bad99fba2aff970d2adf2d9ee756e1ee6212ac56648238aa0465eaa02e614c26528d59103b253540b6b3ee3550302047c435bb500673065023016e15ba793dcc61f7179b81a8d66721b00ac72068369748cbd99c62e0e9490d3d2c14fd8031fc2b3f3584ee0f13bed8b023100979d71f75ae25bf7d723ebe43d8d2109101d6073d5ab330b25ad9c9fdf04bf6e42c0b8fcb38892c838b6ba9a2a058ad10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304c5674f7811ea2be85e71f5fb63cf26c7a8ba469fdea9fc53ac076386eaea999496073b3315e015fad7d6c72bd495315023100e55e8f96c787575d48caa4f8459969b31fb666f13dc4bc2a920f939c295bfecbf005a49e6e714be9292f6f68b4cdca4e0302047c435bb500673065023100f32817b2521b3468f1fc7f814397da3aadcff07f7412ce1dcae89fbc19419c6a11d6abe673d5f9c7a6cab0850827a62f02303d7fd851456c2d02516ea30194f594c7c2bf54337ac9cc3120d2b040774c43a38483167c35be19d377d1b9f420589ff40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009e0833ab9c6e09a11e2df5b3a3ec1dd64e6171b8d140404ddd5fe34d16a0a12a0bbb394a7a8c54152f156e20c8f6500c023066412935fc81e00f694aedc6374a65bb84874400449fda337f9b2e9249c928bfda6f2b8d2d249170e46022106972a1860302047c435bb50066306402307018644a591ddc2e9d4bef7367e33166867db809a10a104fb27d5426745534b3982511c2e7fc9b27addaf33e6dd5ba53023022c578a36923482ff9dd084b1cf90dfaca2d21a57eecd1dffbe626f7a4adb4861401d8e27a8d387769d81906049f9f970302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300f79a43b0090bc9191a8c4d1b9cb2e35ff354e2dd95d2117d50a65146e5d5824db026a7a6b2d674bbddc675456c05eba023079d5bb174a51a6d6b39580d7df6ea1b54bc06e9c7677feacb24bd78684fcfc40719cc8db5fb855a3fa83c7a8a5effe1a0302047c435bb500673065023052cfa6e41d2958e77f0cdfddbe845e2f4142d1278a2a146b750fe98e503e35e8f2770f44398d6379a1408034e84ecb6e023100d484b46f92262a0942cd2e8535498eaed330a90c00a4e2206575fcbb5ea7534aab16b8b5914eac96bf101a329b5a3cce0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230246dc0769358885f3b5dcd6767e59b0be159a932ad4cd21a46db029c0e3e6747b74043101c509efc96805d302f859515023100eb05479a94e57d89ad1025da378ef683ad0fec5bff5a6499ca55afaa198d3825b0803d6436dd2efbac7f89bdb87eea480302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b59b837365bd53be432baa5871bbbc3dd8a38188b5b93e080e4f490b6fbdf17c54c1f1e9dabb3923a4f83cc5a82742af02301aaef265c13ed46915b000b99032b13fb4795aa2af48e326c5335319dd62d92003049165ea45bb84c9bcbf6898d95bea0302047c435bb500683066023100e3e438b7b5bbd11a415c7dfa67127a382f70b6d051cc38308541c1067c3a8632687bf1fee7c5ec13d5dfce7a5876a39e023100d110bc0b9a3837408b8eb4f4da2b03007c900e5c14aed15b652473509ed1cfc40737f38aebeb9fff33878422b41656100302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e126f96b1bf4c6caada2ac3fddf08cfa9e47feffff660a79d757221de9d2f6ba10196a5816d6743888fda221de646d75023050962b7ecea652c66cd5db1c5bacec513daccfcb230b615a60352706cc52cd5c256f9c12b8ee009566ba532f819be9e40302047c435bb500683066023100bed3559b9d39f1653948a89146cef4da3a1d0a637d9a615059103d55cdc9b8c5d1cea78d22e0b66c04797aadb537ca24023100ae1238ff19bc0c92489dc031d236e60c57e344a3b135076e35bdd9016a2c1202120608655a18f67ced394e4fcda9022c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e565b708eb3ec1c1c8870ab6dd96fd2d5725369febc90dc8b334597163a766df7a416f39348b7ee88209104c15465cce023100b3693db7ac3bb051087e16df6a2c11aed8a7835fb571cccc457d9ebb5af9daf258336fdee6aeca911c7f69f1910df3d40302047c435bb500683066023100870cdfc0e528982418662b9f37cabfd60f16feb49e78bd6c72d5a541f6758a90a9a9d203dbb04ea9350e8d8c1ea2eb6f023100c1c1502dc6fe9c42d68a4fae414097496ce77ea89e4161d1f5e6f95ebfc1adfbfd4bcce257bfd289b68cb1170c5f0af40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307996d0f1d4e20bd127c8f56105360ad8bcf2f053f20210c67932100f10a71ef2c119ef56085f68710b7eb9362db9d59502306ed339bf482f3086f1892aa09989cd5f437e66270462a0b6671e38a4359ab8560402e0117224ea901413e05abfd5c9600302047c435bb500683066023100a376cf4294710683803276008adb60b9134b322661468a3a93e5f00baecfa6018ad389fa703ce4adedf9ccfad1b62c2a023100b9789d12bc5e8e5169342c1ea3bcb9de269484a72674fb55b68c71a3d1d89532dd90d6281c47f4bfe2a90964495936860302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306b143b2bc1e33dfebf29588055012059f85f1c396979223ba6ca203f1cf6c39beb0885e506d89e4c5d155ed7d276a88a023100ce882afae4567ab4fe5e4b12b88bf0f1554ab6436b1cbd6d436c9b0d56528466db092585cb168f71bf74027d7587a7500302047c435bb500683066023100f2fd68042ef03d09a8c4fd1d3729ac23ceea85b737ecbd7d05fdeb34d111225082e6439f6a8618a285f73cf2322153480231009c04bdd8d374ac47a16325339e4d22f7f1a49caa92a08530991664ac2494307244d4007f6f7d703dcfad624bcde0242d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b3cbbba69f40189054a224f253b1d64ad016f4e96ca66ac20f7dfc2c333271d47c88e6a3e0be1128e3b00f88ea216d6c02310096a4ec89a24cea65fb6361c0eca065e73dfd07bb59b7800890f478c15992143f022c29ac7020fa1f2e697c3d82a4b3070302047c435bb50067306502310087e52ef3dc5d3b6bbc49a6d99acc548d5f2833f29e235f238be8afb740d1232128887c88d35e1e33b0dc8e0708725eeb023003f70d91eb8627da19a1daed029893890badc8c714ac258e820b1ff4985f60f7e4d6008d64b891c5a2680f7d98e675760302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230133c6475ba2a2d9da7b8abea93877d43bcf9d0192319175cd82101cd05d0d18bf671fc67fade30e4fd5d842eecf80ad3023100ee81f8d63a1e9cb53d0ac4614ef243d1e6c4ef83435b80bf114c9953029dea65e0a436379c33edd728c5a7fecc8a10dc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023031e9cc241cc9af979c7121aac9fea102c5fcb4c17f2a6a97ecc83bf0a9be83d49ea968cd9a55b3a54991cabbe4405d48023100a686ccc08c0e348a1b7b73e2e9c578503afcfb3a259764e84e01d99ccb9d5b0270a5f75f7f3115667ba37a42395e75820302047c435bb500663064023071c724969556bc20b33e1f406ff2e9b639c15675a239d1b178145afd7db19cea71bbfd44b21f69a083459e2a9677ef8e023043c03ec02406b25178f1edb5d68b3ff3c334c2249f8d7f67448a28d6990275eec232ad5bd77886396867ab0780bae8ab0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100dae5ed239243fa8d92de98c390c345a8518989b7d83d9b437bb48d0206cd7e8fa9f222ceaa93b16bf5d00a22778b6d3a023100b3a915df93e8be45d3d27b0b5ba02cee29455ce250e399e9e4a7f32105b6812113948fbec7eb96549322069db0fe4cae0302047c435bb500683066023100a4ee9946004b4b1cbd734fefe568877efb9719211a1d5206a7c964fc7482548237a96b959140bd648b8f4600ddd36b2f023100adea99e7eea96b525adb4d5ed7536d62ab808df081c17d58332f5537745ee2385176cf6b03b038e42c8debe8926b778b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301633f5c604fb93cdac358380041a172e2bbddfa011a7df1f8d06b77e04b3485487233af0f4492b69aa056221c872ddf002302cf4c56cc013f1a4552a6677f31ec63d9fc15f0d2e8c88029264d1e3c737c900d3233593a96f6d4120c91fc2d45989aa0302047c435bb50066306402306d9339899475d525a7ec18fee184912d2b611a5658cabc72dc172070417453d3b98bd3f2da2a62a5fc82061f0b443b8802306496b7450a1a24e89fcf1a7689161fc738ce82cd066762b1428097cdccdfc3e69f954a3e61f295e10c977e486e833b960302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304f27be3d31cef722802b2f2bacbc711db0b431a1f419c1975d115650a6a649beb46569e5f202f43ac8f1bc206c96461b0230640881ffdcd90e2f4ec6aa00a7631c39ac94e979c953c07c1821540361a56f0c0edaaf97fdc11a976a847c61251437210302047c435bb50066306402305d3f9d3fddc8468543c0c86b5a4773831ce3b1afbde00cb1648bff16d2d70e61ee2678943d684b9ea97c2b148795df71023026d83e4a2deb6d7ea7af7a3ac4c076c67eaea584398926ee58c40e1a9271ccf6fbaf04ca822d8b223bd7bae33a840a4a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310096716c06d838b26dd33adf6b785ce8b2e066f531658988433a9032711496a444e54337fbe88e29deed13de85f61a39b1023100b29c9238b3fb5ea415a16bb821cee58bd952cd55d681bd013a9c1c539c51a7dd9a8ba710070cce7b5c8c20bbff6624720302047c435bb5006630640230490d2c06160a3ec453d851997900b25528cdedec2f2ca9cb80c154c6a34c7d107c80fc285d51a4bbe75c4713b900306c02304f8f9f73fc378873c7ced1df1d7e9e24de1c2314f2775bd07416dc4c62ef16655c42b98b0efe2e7075df77a86fd2b8a60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008450f78f7b152ffb06ea9ab5cbc8426719b0c65e2bff1eff3888f6a0ccc7ab5e3db07a2877ecb97d52eef11d84e3867502307ade8975d540d32728e6b77bfa6f67a9ef1900b27816d770e1e3e95904451e19039037386334dfb82db98bc3ff39ef520302047c435bb50066306402302a0345e51d32eed13178a4a103daa2fd45713b38478cf31e0c7fea8f83194b48b935b21badd40ed72191db3a6591f9d902306e420113fefaf05ac2da6318c3569b59f28139efa2270e9da1592ad9c8caee7fb23b127e6dfc2dfd7432bd912a7e65be0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023001d2383627a335dedac238ccb516d005119948d77f84a032252e0d3c165effb8515a160da53a86401a940fbefa7e0a58023039202a1c344f29440353745538ca23ab94a2bc5e513aeb4940222810110a9962de4624e60be0fb2806bd6db3af4010640302047c435bb50067306502300b43fb275f9517504b96b8a2e59664aaeee9320346dc4fe50213c86a73b49668c8a1f1baaaf2a4cc31aaa9412cb70d9e023100ac6cd53554f61eb96342fdbb65b9bc67a0d2b2f52babfb18111f5084fb56c4083e7447ab3f52b1259558ae8f862980800302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d99b644d2b00ca87af368920f0466c526055bc319292eac515980e4ef2f2efc72abcdee38d08059d495d91920fb6a64402304b83c33645fc62a61580d2d782ddd1dfbb444d7a037ada5f137e6a163f77ddd2878cb3c1e88a97fb343e8c40b22e28410302047c435bb500673065023100edff6f2c0bdb64c26ea3d6c5a908115462dc924f7b7a3b240bbc09c3c54c33521ee0d105155b9e17f62fb8364473d4f802300d8297698af5928c2de8eb68f726bbe7b31e9ebf108579321622996884e15197da1ad0a477dcb5c56f2aa73caf1ef12c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023000e1858c1cbb65cc9cbe9de748ec7ccb56d6c48e01b3a17d28f1df288ea8f2d3f3746fef14482ca0ee57c5de34b3c5b1023100f8ac189bf3db26a8bd60cfd3076231308617ff74ecbe14de4472f0477c193a6a0bea06aa5ab4e33c7ec5cd664bd4d2bd0302047c435bb500673065023025d1ba084fc9ae2c9edc86046dc5623b3b6f7dae4e67a726889532d7af3a00935d3f8a75c94b5e19814db4c3c8239076023100c33fef877cbe86a209f5cf36add143db13f45d507c840434421deaa5c6ccdc35ac4f4565532e8c58a7fbe1734b0c2e660302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023030ba677b897b5493e9dccf208c070ec5118985fdba8401e71bc2107ed49eba77b6c24cc39b26bbc614bca7e8a154aa79023100ea99b1da78b4deff34478cee3a836bbc539c56f7ccc02fdc119a846134ddbf7ec8de054ae5ae4be8518a7ef3c1fee4000302047c435bb5006630640230127faa9bf3b5e833f6c7e8655ea699475a3423246656a336a4df86675a5671b7b32dc5bddac8db97ce035a0b1ffce22c02304bd86e4f39d8d858ef2b2f3bf032d467f1d4d57274541cb5391d88e630ce465c2f70403a3aab0743a4e45af919f83dde0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cfe58ead00ae9c2b6b5defc1dd3c444ae45c3224de89a39976663b8f14a24edce19095f44c5beaaf46ce0db91adf6adf023022bad496345d91ebbfca4293d3d95f42f450e8927028c887c4d46c65809531616abae50dee03b996e1cf268daa7b90490302047c435bb50066306402304feae549e81d21b2b0c33ece23bf0c5b50f5f2411b709e22b94c97dd24b999cf4bd8fee80cbaa8126c0c9fb8d20e64f902304bef23c9a9ef9dbe31a2e82f1bb69444f0c76f83b07e0fc4b5583599a7cfc1b1f6b3e24ff9f736e0f212934237d52d450302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d3ff205c22ed5b5e46ce16dc435ab9a952f173a5fc3b5063836c5be4536bde030ee730f56dbb871d8be9facc3fe3c25102304ba86e75c517afce349fe392c0af7b0be8ad2b71dbdb1bf94e354bbb265f0eb6d059765a11ac810464a6b1edeb3874590302047c435bb500673065023100c6f425a9dea5cd759ff2ca5b15d6c0b39d4822964d4e647c7271da77fbe45c0cfc833acb0e0617433cc43e5aff0b7a7c0230089db1ffe01acc559451ca875aff8c232003e40d8d78d9b0a3d9be07495c678f1c0da1beca2cef8105e0960ec37854af0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100efa60b8f415291200d6599064d8421a02705341b9c70086c0f07190e200d148d919b729f925e14fdccabf187eec023bb0231009ce54d4a235ae54880362413a3981975298a901ab5d55859bd2f5312f31ffddfee01a5136bfcc5c34594e22b2051f1580302047c435bb5006630640230720ece6a7d5b209dba646771ae4329ae5c92ab8fe6098b1c6f570f02ff3f309674a5cff24f54207e6e81570582c55bd40230588b026917590dcac68e5f5f1b793efd0d6b85dab23ae6d5e77645439e3395cc73772b9a972b727347a6f519b898f0810302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cb485fc83e2a2e05f6464d6130cc29dfe6e299ce3ec65bb8465ffdd66df4b76e1921f8348d7a568c6e44f3d14ac75728023023812a47587569ecbe2f0a717c4e8cd03174e1789825d9154469f4a9c6f5290ddb84d0bdc070248ecbd51cf7401540b90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303bdbfc3864df5025466c3970dc2c9d96903b889d96156c0d83a475a528f7767f2c829f8290c9786068a8d62c8c70504e02304503cb14b5164abd98de0866db7fbb0c37a1f7e7175daaa6310bef35e3951c89426f5830b257d52acac6e23e5751b3c70302047c435bb50067306502303bd2e495ee3ffbb721290ef6784a25181de0f430e64a7fa878a7c2e92ad287c515aa17b7c0e6dd477dff2598be3e296c023100a3defe1530c6431f384317668681ca6e86948305e4bba4ebda652f491f0a872652577192e7b813970fc16736e36cc4780302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230061160173fc537d009b1e99a68d31d5355157b40344f7a00a83f42070d4a4ddee5949b4209b02f7b0c2a0ba54af23c22023100fe1eb2c91bd0b19b56becc484ce283dbcf6661dcf2332d77e5bd7f7b21180987cf1951017aa2f8f940990172e1e6a8440302047c435bb500663064023079833684a871a6aa49b6d5a55f703ea13d8e751cfe55abb00fe30434a1694088cc59b1238367208401a02f4332dd892502300e39b330ba77bfe9b1c9607a5f1c8347f3ab6aa6d0eec1e8c33be460dfcd0bf8afb5092a5fcb63e446975ce5258fcece0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100dac6b4217ecd1ecf2af16a91f2028d2485f980db76197f11938aefff2dbeff1e5b47be3012ec66b73fcac27780129583023053ac47639e77057f01b0875bb5a01c9e2c0c0d6a27227f2763a9ad818a6d8e8c3d52ef68652d79223b6566f4a05e0cc50302047c435bb500683066023100b256b37ed8f13af1d57623c21f5c5d93e316a43fee4b6b65aa34225ed74b2b893ae772b5da238019b54df1ac4e639449023100b36903c447d582e471d770f4705009c2cc851b737c7f70f153fb29c97243f366969d33387c19e7552c397087c9a1a4b00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023072b2e001294864960858c1dcf83fbb9312be796b75e9bcf22ec67681f974227a5123948fabd82ed8517466b5013f367b023100ea42bcd379d8adc14e3ef77620b22829c10450a44a34a65fa7760f0408aba29770163e268976c5b19050611dbb24ab980302047c435bb500683066023100e8658ceb9be16a4b5fa5660978a901c0dec7645d13837c6adcda47b03e601f3b47b42f56dccfb46c55034be0959b51fe023100d7de41ebb151366eb5352d4752a182abc35df6bf398f92d9e26e8fdfa4d1851416448263e8026bea241680c46a8e6a3a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023018a311845bf6dff8110ffca47cc617dc2269fa705998fdb6dbd99be1c686a7ce07ca80167877b201b69fa0fb0e9e58f1023100f59991da86d96efc43305707c4e89be94c5c02128971a375500c8f4f7bf5466b671a391b4f871656e37516f50fcd1a6c0302047c435bb500673065023100ed07e8306d4738813dbb7a4db3fdbd5db10c12eeeae8ae235e3095d60241d939906b13275ec4b72eeb5ab55fc916771a02305812e3f946cd974046e3f1f33a41ead1b57113085499ef6167389d32b205c483f01bc3c00cbf32409446a054c96add7d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300cb2a78f6540e734620cdde6b59ede0639ae85b074e6831e8e58a6e218ec53f90cac33a3c2fdc7a2cbfbc3e7d64e02db023100de38da2be92556468bf3d60976870fa65a30801a364cd58ab5e2aa4e2bedface1a05c2dfe890cfda40bfdfc8b08869bd0302047c435bb500673065023010bacb129621677e6860be2f654315e0f2b05bcfee56d1d218b895748e3b73868b9479635dbd4356637536c12f55340c023100ae12cee2db66f3f8dbe8b56553fb7370308f4f5c2b6a3745f994224f9a2592b70cc53949c297d45632cb0feb6b51c1730302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300e52018251a07fdc4a9229afc9e9c07a1e500763c1377509fc965fdba4cf2303968f8b73461849f86b036417d15328f102306a6485636f39f4df9c8b37e1e0aaad6d7ca7db857268520f1b38296431edb45b8cfedceae30ddbfebb50d1fc7c5ad78d0302047c435bb50066306402300101d7b936101466e8a7747263d8a36b9b3fc00ce1f166c273faef16fdc698a898f724c4d41b6ab48eed4825ae87c40302300462152ec74f957ee9b80b9d22386553865b4de582e3812e5361679299d8f83c96cdccb7c8c0054026c4511f52b1a0860302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305929872e88a6e994b12356c20ae5b1eb0595e3d5d5c536bac6efd5e34d3495f919846fc687e760993157a91f1e0c20480230544a33ad9b65348c214ca83478325aef8c3e5db55ad5bef7bb186d25f2a09c2119b4e3c2d71759935d28a8acaafee5d10302047c435bb50067306502303628b131a80f893d6c31f01b0470145b31108a7077d3bcfe5a5ab00cb1f8b77197389ea034367bc6d80421cad184414e0231009faa2d4de3ff766bcfb5cd0568a8402ea77cf9aa429424f1a5426a332a5b207d8d08fec8c4c447dd2766f3d5d793443f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307b8ef572f2161d127bb66f91c2fb89312a4a7d5c40954fbd123c5b039c27fc9e3e13fb0143a4b5257f041cc99d367a990230142c3f0395f2068db78b86e021e0f7876e30d9bc02a42119e1ae6cffe571fbf33e8b7386bd55f40bdb0d1fbeb867513e0302047c435bb500673065023042df85b193c8558249c9baf5e9356a9aac89e7b0321151a1635f039b31d6c91a46dbac13d5c8b613f002a8d78ad2a05e023100f076ff024d78f6782a4c006ee1a7d801683d5b00c375f6cf235789fded3d4a713e9b8dc73288b49e932b1560166a7c330302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230569738fa9ba645dc66cbe9baaa2d8e7534cab404892268808387b23e74dc3a423f22fc6e947b7a3dce4f303fd2fcc4c102301002394a51e91435a7334dddc1c27f6affb8f7eef2a03692062665c325df98cceea4daf5ba700c960b1e841bd3f4a4cb0302047c435bb50067306502301a1c091b0989b9ecf877170fbf970a19b9d49312d928fe7f6caf18dda92db2b8ad1c718c8d047ed8f61ee4c67a667103023100fbfed592745ca22b5eb9ca7bfae85693a10e3063705375eac369e488615e2cea39608def8546edb7cad4439ab47983610302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008dfcfff0ebd3b60eff49c498d50f27afcab7ec270eac53c652fc297bf205593ac3e9fab5c0c1eaf54024f695dc952110023031b836322f7575f2f764fe00b5713b52b4a57c0d046aee3ee9a4a8be195bf1c1d6169402594218593eab0d942909c2360302047c435bb500673065023100d2f166235109f14b6dec300f272698ae30d85844f0419a6ce3fccd73ff4e054b77df68c8b46283b6390db4a5d97a7055023065e0ba456d53681f2a90dd2e25c00375741c2cde54ff7ce21b1835e5851619918f09d13e836889b06710c6a4062dca490302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023010136200af7358391113b35cb699d9a1bcc4a09651accdf7927f77ca65492b634eadf02c1b562295beb02e82bc4e8bcf0230115a0cc51a2acdbe920bfee4fa2915c82dbd183d0cafd18be4843d5ddbe13eb4433f7db9a287b812b75d6b294b4775ac0302047c435bb50067306502306d489f47a1ad11d13de9a788819de05419dab80e554b481b25a0eabb705773a8ceb858708948a85bd08fbcc885e584f0023100b4de3384492cbc0e4202e9d102681786eef359d77bcdff39a72ec067fe919fc53a614fbbaa429f157017c6acb33468e10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009aaa9756e1f32416dda4f136ed6a335ef633b03003903c0cbb146f3503e44d063ff793a1ccc30d9bfad223d15d86ecdd0230010ad5cda185f87381719d530230f68e41d7b9c8d32737d0fce389f054d43843ffb6d7a686e67ba047a27d95c7d394c90302047c435bb5006630640230577c52fa51161dc18e9c5e23a8342f009c1f5096688eca70fb6f82d3a075def49d503c4b4ae093afe9ae7259eb3a29a602300cfd1f18f1c3310c99a0ea74b263e2c06acdb9f72c0c910d84b3088e3680fb355cff01d8b248ac0037b962b3619c310e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100dc1e27a3ebbfc4decf9edffd41f635c066bba579748615d18e86a1c90972d99c6f570a1928644fe30958cfd1f1de2236023100e97bb1483a643f86e064874413ea4c339e0378d732bd34faf15e279e0dd1a23028afac8a0a64ada24afdc9176a6a60b30302047c435bb500673065023100942cdef6e9499faca296e751c7498ce393cd3d8f8bac357f79f99a66514aec18a3bb99a4e40548db012476df3c08fcb002301d86fdcc835c3eaf85fdb9516ed57b5cefee033ddadf1f81010d9724335654834d3bf973ce9dbb70f8941e6284df46610302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ad5201caacc41634b808f18a931f8f13b0c1589bf397de5f2ab07a9ef5a2a8addd2e5f5591fb1b306327eef9f3681064023100ff3be01deaed850a7c5e29ceacfef488e1695a357e5e0a3bcfc361e094774d6535218bfa22747d30391ed85bc086541e0302047c435bb500673065023100d443b330a9d9c6c31c373dff53568d6efdac6c590937d85ce5325183a64f06e95479e807bdbc94036785daa7440eff7702304973b4bed398bb009ddf2eec4855f81d8fd61633914e9709f03d4397c8e4906965ee6779c81a3a2acde94f7396604cec0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307dd9eae524fe276b432d53bd59f8a2234b068cdaa7abfbf48f96d221b0e1242474f560ae35cd1b685ec1e78c2d66b37e023100f7a4865c5a32ba3d48e90b39d8e0d77f1a1e5a0d29f042f03648b095ffb14955a67d17aba0d2d04729ed41816cc2f9240302047c435bb500673065023100e286c22995905401d4e9181d91923d326f5074f949822ac887cf464bffcc2f20a1fb114ca2578f4ae76168ffb8e9c85402306447ad8343ac2be9fe5eb94deecf2b6a0e0f62396ca141a87cd86a140cd364238aeb601ff5d7652caad8a618e145b3cb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302eb6afbb80ba96d641d40dbb70895ea8642b27b7dfae6143da8483fb5533f91d845e8e17be86ab283bd54627700eaa9c023100a18c6d6fd8112cedebd4b450c27823ffbbc45c37bb062cce6a5352856a8ae336f46b88a6175b47ebb70c03f7462acef30302047c435bb50067306502310095a538ff0c87ee9e6a5d4fb1cbce020195aa3644933a44da7aa6f98e79dc2b6e5851ecd859b049067f8b9e411945596002306b1f67c369efd81c038e9513af4ed451ff9faa128936cf24e7c02f117454b6372946eb60a770faa058d051ba26292a900302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e3ae4935d310efe4b81ebf88d238f30adfc2caef411c038fc48046f56f3da8f5b1e011342484d7e8698f2d03ba128b4902306b288a2b78d9c6252d891de41e82402a7a5653745cf60133f425dcf9496645790bb8ef6607d2d7d3a2889a8edf5a6bc10302047c435bb500683066023100fb041d1dc7ffc4d2c34710b7a3926bbda16f4563a95eea183e95781f0996948fd3d24a4b3af358f6ffcead2ec7bb92eb023100e5519c3ba540fe1bdcbe44f2d192e832b87b42472a553861e1ccc04bc73b7528b83d05d9581e891af53ba7c59c154c7c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310096809a72bb3e844a74d053182db64502328bed929a41d0b178a4387460fae01a4e58c42beb454b45030b3c1968899bf0023071a2446ea34cb3791ed7db00084e33eb7454e859c14e17428cb1cc184fd2abac155935e16a1abdd50dd1cb809c99c0070302047c435bb500683066023100bdb713cf900618ef12c5751b3e4e5cc2811335dd5ee5204dd26968ccd6f5a9ffa9084ee510a7662c9ec0b6f04338557b023100dbb48bcea83f1b82cfecb0446292df779bb273533ad0556b7ca3f01c3b0e8466f3c40de154fa119296608139067c7e6d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ba4074b77f9814f59335e6c39af20e2ed87f8d8faccdd1034e2e4e4242358dbcbfd0ce2cb08b1099ca343bc888fe7580023100a59827baf125cd9b367c3e955748c31a2946e2d60dd2093bf43e11d558373602e536994adf6d2647613208a27dfbf6710302047c435bb500673065023100e18c8110c720daf0c3904ca7abc026a1f4fd772c207fdc9b7bb4bddbe0c4e8860ff52a8c413b9e8d4827df6334640e8702302503c33712ac75df7ae6727a7bccf09f5b66d00059044fb23fbee350562d93aa62e86314c5b7b15311a420b7e404684f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f596b41812d0307235aae20e9cf89feddfe6e0f962ffde2a8fa137dddefa9b1ea79b363e5847e0bee82772991da1868a023069992d43045d2074bee8873ffeea994b34e907818da07b478ea1e0a2ee43e9e190d74b6bdf661e20310fc02118810f300302047c435bb5006730650230139d79e978dc1e1bf56e4b9ba5bf34c350b8b83dbdff4a9bd12499d23035d327ecc8d2461cec9b22b941f73570dafd2802310087c8b161c9b2505bb65070c70249a87481303e44415a94742ff758b0d555e97cc69013b2aceb3d63743a769dd743b6090302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100eb03687afc4ef069877ce867b2b20a0e959a1eefbc13c6817a5c1f38ed9e3e7cd012e3d4564b6b7dec2f874c11cdf2d502303c5e133e974907d4534ed0fd2490882d15edf7b1fca5f0df777913b902548fdf300e02cefc1114be7c27f31102fea44b0302047c435bb50066306402302e89c5673dc6cc2959576bd0bc6ce41782474e49b1fd2846b3319094d256628e73c60b35a2893f379f8983cdd2d20a5502307039636e51b9776ac11c5f2619473cebdd0164484817a4482dd80c3dd86085de6654a028d433819d201122e709a873ac0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301f542a3b6c085926171d0d7ed09a40b31dcf744a45601ac93a2e3e663453fc113482b8b876acd87b81ffa9b0fa3951f202304cddeb4e48d11c2170caef6956b943d73ce3deda91ce9044fe1d4f88254bc3f4a2561a7268a1952ff8116cf5b892913b0302047c435bb50066306402304ea24d23f4acee766ab987e31365d935d2cf0d19033b0bc5ca6ee1263005d4c921a618b8ba9ae81c4fc70e9c041c07b802302518db7ced0b2a379b9546c1ec980cd11bf4fc3e11c754b45f72be4947d97e54e27aa54a2ea27ee34ad43ecc6e83b3a00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023063c1bd54f6557887f04d321d13a95371857924a3734568fb40cea030da1500407cc5da678ddfa451c669cd5bead8f5aa023069a632283f85d2c8c4b6e3361c413f722662c81143cb0e87723eff8b940d1c4bb3d42552b9972dbcdb58c790733bc9be0302047c435bb500663064023078a4e7cac30b22cb553af16c87e155d9b49b1880b25791cfb7f701bd009da800db3c6d8ea633ac2917f135bc074d0f42023017e949df93024dcf6e8397fb2d0c20acf048f880631f904ba7c1bc2eb06ef0c04f4fb4fe33dce8ffa9194494ea7cebac0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100bc5abd84e365b6b28c926eea0d06d690a602f9a841e8a26ba589055610a573ccfe9d2c45c27e8bee61980e1b1fb4b1a4023100f228233b5025ce63facc4c9e0f3434ca4ad769fce31a1033edc3988a538391adc0371714df746711d7ae35251d9c18030302047c435bb500663064023058f78882814c378957ee2bc5d533351203c59551adc95ff941057d443d240e10a53a153a6cb2b73f24d02814e3d40e3902300a15d4836976dc07abf77cc7b4f221f17d13babf6a606b2cde7cd3327bf25370fe8549526e1fc1543c51f26db0df22a10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d8000fe34dfbbb2adad3cf66a106e468ee4b9ed3d9d624e37e6b88bc1a70f6b5a6fad8cfcf42a1e51de4c7ffd6c3c98702303182405bb7b2e267c5f83faae981e1ce83404cb383dad42e21933a89a8749843ace33f6306d5608da9fce57077c755540302047c435bb500683066023100ac444082651a1f492e186797287fdc8f56edf261e573679f93245edeb3de268f39a452a6c2b632fc5d3a2facce532bba023100b73d57b3fd30bd034aded8b2fb4d4044b6653631569ce1e0c0077b29f2c892b0a4a3bf0d0508437bb9265ee29f25ca650302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f04c82701d6a7d01d13b3ada83f55217216187a3c21272815238013ebc578dbb218f32c66c4b882eb699857dfa87b05f023070c3a324b8a8cd560cec698956683966dae6e4a592467e74f2dff67228f582c2107920a576454d311105ae70df78980f0302047c435bb500673065023100e3087113357c557f8bc3dfd975cdc5e6d8c9c4201e105493c039eabdec04a3e1e9cbb738d4fd33bd73a6ff34ed3d1aba02300603295f1c0a6200a1d150585baeff0d366cde1a694ac1bbd7c06e87a5faed945cb589caeca6f3e3d0d3507ab9c20a930302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b4bc06b3dccfcc17b0a26c322e528e4e68bebd73ae71ed06824ea6f0dd3ecf032859b6d5b918a56ca25e3ecb777ad60a02303881844dce2576820b8b040b64aa9d37e44e9b3ecb817f810064a025c909409b042c714428958eae16bddcdc9bb765440302047c435bb50066306402305f4c98c60b07f74f0ae9fb476b4f5e93883a54e17741795f27946745b7fead67d9221bce9ff53afeb06fdb918eac94eb02302f92d393b88ac2466d0b4209165a6567b03efc74350e5739e74c60e96dbd42818a5571623b9911ecad5701c96ed815170302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f2c8f253d5ab85e2f1c48efac6153219e4279f7b93a8466772d0e636a4ac45b0f2ae3aba3f5a70f763bb6caac68383ff023100f7e06c10e1e8c549c35c48c53179ff4b099fcf0b7e7d45f3e88104571ad87ff47991e08351bd83f186abe72ec2c4e6300302047c435bb500673065023100cfcda0ed4d80dd2ae39768478ab626dc4ca69771ced8ba19b30b9bc6609d54f5c4b31d1934133ce5972044f7c6ff382c02300b1121fe346ecc5d19e9c345480ab8c28eadae60bbeb20a39bb3a9af3878623561a0333bc5595d7de447d9dec163aee90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100beb624249c9d659b2c3c4ee4d765bd5e62b9d20f158c2c67c2b6929943b4a815d1f9538fbb045a7b9d2faaf0bcb7e27802304db392505f14f052f7702cdda876b025aee53d0598062a05e5823b47a6a37f1b0a68be0905b6e867c00eff97365a15db0302047c435bb500673065023022fc76ff1374e34719b7aec5e4185ddbd2e26b96ab6bb38254ef1f661f34d9950ca5140dbb84ea159abceb5bc09133f8023100c94f3d81b2e24afaea50d3677e75b1dd0a1c4fc52ca9cfe24bde3d64986056a3009d765a1747e03f58de65140f3007b50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023028121f0bff310fde814818ed235e0c4ad454695c36a30af45f0f015d76aee750b98f61cd095c605a506c40faef811bcb023100ef156e15e2e491f6498cc0e76f191de1eb38132774b8a88ea8e7d7346d9fdc844e60ca3cf9b73022db69465caaa10e230302047c435bb500683066023100aa214770dcf6e2572b9e5210d619accf1c2f009b98664c41bf887fae80f17182e8caec3ac3985dea69528d5676b96f42023100a3763324ef746dd0731170bffd968fd26e8d604f5b7b7b93d3c3e16a668c02f621c82328aee6159346a71c38455f468f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e7081bd48b05bbedcb7535cfda619c7697507a139f9c3da0307190bbe013c88376306e85da38131a1a010c48a8d81af102304c4bf849c4bac4370cd19e2dfa3dc045ad96e0e5630d2b2d9b1eb3f31e8bb9db1663c9dc982bf7812aeaac401ffd16d30302047c435bb50066306402301b3460d06c14ba4458b90d4e0d9c21f42b12f9ea1f51a07e041064061856294870a1732f8f057902ae21f59c64fbb68e023059a2804e25236e33bfff96ce772de98653206ed9f87e9f625bb61512902cf364ee1408332329a58b63240017267337c70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c0ac7901e5aa63a90f93a4aceffb0b0c79ed1bb227806cecb278229cfa8f8847e59978b1bc9c395f342251c688d092290231008e493b8b7f7a46700458284f35da3ce59407a8e75a4312189373d8f7d0f0c92a05b7aa52b646dca53cc3f554129da8920302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300fc9c6e6fb7c31ca75b3663b703945e545ad1fb538edb1210f4d2bad3c7e4418a08d452217d8340ead02237837254d8102302c1a9f70d906bf4efc8f49ff534dcd1ae06df0e39b98a0b1f6f5a742fd76bf62bf247eba2f51dfa27c3dd3197392421c0302047c435bb500683066023100f423f33f4943b0bd1bc70a97721059828eef79775f1e547d674040ce4653075b4ac4ce93fd464d8402c29887a4bce971023100cb88727bb85ef231dd973a77b294afa3bf42a12df9a8934c0a119fac7e3a74fadba8c21808792f9d1b2c672354928ccd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023076b3e0734313c5cdcb674830795c925784609a84818cdffe33ce2017a38bf0f84d390f204c922b0ddb24a490fa45edad0231009dfe70448f220c0c04b6757a8d8838102ecb52e85238d82a73e997c519e2c0c381c9f02587ec6b713394d6bef73affb20302047c435bb5006730650231008ddd09031042bf9f377d4c9394829392d5953514b2ae905e0b9bc1845882168d26fd32aa7e95663758c88cb9b806108c02300574e00d56b95e5e5d9d73be10c6ece0e461d791745c409f311758ee53f7c3f5f76626f2c1044a61df35de92cd3eab430302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e75a1f61e694080dea51f11d5fa557048caf75acc92c8c8b2c65ec6fcf43116aa504ee52497296f4b2daf9bca5920c3f02310086b9a2dc84d13630b2c932410e3ca3aabf44d1a07a9a42d68f61b22138f11ba9318b0a6dbfa6f9e066e5863282fa4ab00302047c435bb5006830660231008e5712b53aaf1735da81337d9984b7ad2efd13c32f35c8f198b31443fb1f9bf0a90c28bb52d1bb5cc74bb45adbdd6daa023100b8f7446f141036f17475ee1bb02395bff1180987216661c02f1ea7e351b020c19b933647826f69d50c9f583ec33583a60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230719c324656a94472f59819d86604f737cefc6e3b574ef0dcfa7afcdaa251c8e9d2f1eafd1f9f8ecfecfdf9e05d3eab42023100b9b57ac8ba67470e6d83c9e5d29d370e1bc9318a4d377bdcf26fc03a37184cf37204f55987476d78f9e19e9b380241330302047c435bb50067306502305e4319a031323feae366c5cd1d73d0b73b8c821c8c57172eba10fc08149192526fd7a4bd385456b30fc17e6579b463e3023100dc5cd5cc12d6a384e191118e89a3cef0548128f7cc33ec616944425b2c4f0fdf57a54f15a87e404c79a42e80b393bdfe0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306180ea9c5fa608650c7de0efacd4162ea849c4d75b604d98f014ab0cd33e1036c9c4dbc9fc3f018effd57228d5da6696023048c322d8d8004c18f116115949e5211cda6b0b3bf852c9e2fdfa1be7b07ca1d3c5e2b73a724a3536de28c409309f91e60302047c435bb50066306402306bf6d7df78f292198d7cde3514e249a33b1c068e68b30f47d4f197e7bdec7ca95af9eac36c629be1f77eee62e6aeb778023024cb9b0a7efb5b28d0b5fefa480fb9803d4a2a2e4d8eb2f946e3da3fc99c50d4c776b64fe280b4ec098e92b70372e7740302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023024d74fcf0e7033d8370a2522ec23b00be3ccfc4e0dfe2df246471915dc442c508c348d98b67cf9c70b2ed39fe05e668d023001bd706adf8f5d49a6b46afd4fb5e4899d2b4f327e0785821598b90aa9afaffb5a6728c4834f70872a18de8405c9fbcc0302047c435bb500683066023100df22c54e45dc87216a08544c5391661a267546115bd650152242908298655d143871b2c3678612caed69cb2f14585a57023100825204337cabef3e7f0baba5107b9259ca1bdc07f2bbb9fc58fd1c6cd0f04f3056c8637706239284c7d1fc5580c672450302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023007722cc7dea992891c3f4a3bf9ac09639dab9a704e3f6b4ce300d1f13ad0e4a47e545eaaf4059724ce27ae624c9b7e3002310093cd8901873daaad16acd2fb2d4d470a267ce3818cc262de9a5ab660349d99845865fa396d5803fc010f744163abbed50302047c435bb500683066023100e4df547017196188f586c851fda581e449b663142c3025d256e244f34bb20d6d7cec40a283d9ce12988cc57a5aac68a9023100a65e51a3b9963b79928fb73d24697bcf3bda70c24f39018bf0fabcab61d2e039d634ba8d9a525dd80dc56ab05e4291300302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d7e24ae00f9f9300b1fab477247cbf8f6d69e5e114c93673514461eac7187f4c0d4fb35985444e4675c1fca05b98ec84023009663ed931bff15d9ba3bfa28c6b563aea5f158446d1549a38dcf4f4f54a233515c43cc0752fa27ea029ac58e82c080d0302047c435bb500673065023100821472ed6cdb3f23be3fbb462a7aee822237269f1fca224eb94504ff2c3358597ebe1cedd5033f074af196e370a167790230605c94fa4cd7e3e17db2b02ddc099436345de85dc63ae1ebe9cfee5e035a6bd470121e056fb41e3c26d52bd3aae5898f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a8601d9d3c822d98be107b490ce64ce3b79ba551ddf7558a96674f5f16e437872c14475caf70783d56a298d4b962789b023100ece60a3aed7133c0e5f83d4eea6fdbc37fab9c0d5f92f717ef7463258085370acc68d2e96f932673da1480389c4dbb8a0302047c435bb500673065023023b91bb628794e862c87d649de9c2689c1a34b86cfc5c9485df5465a72cba5a10dbad7818ed7d8fff54ffdd73c62aa9e023100d70578d48dc3a966745f72542ab2d7bbc1ca8e3a2b19abbf44f316b0d14f0b1f1f645950f467ff0860f6b75076e2cd550302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100aaae746b6805f3bbd8955b5fb78805551b7f270fea6a751b4eb44228d4acb3de0cd8d99b42bc49a83753f51ff81ec19d023100a5262d986caa90efe4b9a979a1ea548490320f8e4c4f7eb744202f9c70c6aa935cf284e344984f9f6fa0046a048088f40302047c435bb50067306502305fa5d7732199eefd6df612f5f5e5f69892b81448b59b26d750edab7c7cea8c4d31346c6ed702119e29f5d65e7350bd93023100cc3b637636cf8bd1d68631d896f78db2e22409a6b460c2c4a4d5e067dc41d01298884e6cfcdab37d1966f18ea3293b730302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306e7e8148ffa873a98f97db17ab0ac5da967db9e6c42953e1c9d6a6ec5d547cbb6bb0319d4f79b9c200b8b7e31009ee4002307b131980c5ba7a2e80eaa9bb82bff6e03128ac1b4c4e86ce88084f74a2b76f14b414ba509898ba7f43d58c5693496e110302047c435bb500673065023100ca50147b07bc7d99d373503ee45a7b317b32c53db4b42cd9ebe4282af577bebe78f1358f09143741a9b8a7c45628de900230356de0dd55c8a66a97020b737ccaaae49e450e3b862d2108a3be5059af00b839c0f5c18d9d5a27581eb9c5fde668223e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023054990bff8897b4d3387bbf6e739541de1b0ca374712d99bd6dcecca78991229c1f2298c9d1a97ef45cbd3dd01d58defd023100f736393f8241bb0adcd7097221b4c6c44e4cf69ddfbf2f4bd3e350f6d6a4e11568e2e2ce4a1b29b11f8553de9676410d0302047c435bb500683066023100cbefcd332c37e8669aa881b908426bcd940361d444aa364e3bcf24e5831113fa3adceca91caa35abd27502dd2dd88b02023100ac286026f06e1270f6c66a86e11934ab674757c9d20b3376940da9875c90eb3e47eade7bcbc3735a44341f508a1451950302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f0cb331cc7991f462b93f84fda91256c3ba7c5f087a2198a5c9f64fd252e7ff29bed0ed8599feb6290f7f28790d8ec3f02302a0a487ae5e487729cc8b1c932bb92e4c1de56c5aaaa9f5e80252fbf7ab9831e2c4e9ea05c7d0e7a3270f156fb4cb3300302047c435bb500683066023100feccea04046fdccbe9dd45fbef0fbdd42ea6d70ab408fd16919ba47fd15afe4d73fe28d2cbc3f20384b10d451d24bd14023100d046ecb4116126460c39db58d09fe52065addb3e8d7e1f94e4534d5e18b96c665602274d67d3e992f788a17b5c31495c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230373719b62a779dc64f18f1f6e0b874f739081db7ea44d66b5c9ee9eee6f6b3a863a770c0d9a4d36ad02de412c1b94c89023039051401cbdc66e3e878bc213bdb370e5c4628b6b01472cf2de04c6d769d8a7a11a2202259f7cd9258882c6276e7c0e00302047c435bb500673065023100d55a42751aab3d3a0ec834a01746f16f4f1c8b3d74df687cec3ed128f2df738ca1c118c0f48ee0ea042bdc49884091650230474a2759a1185b66c70dbd13c591bb60309ff208c9c995db633a2c455573449913f3bf6aba2b3e4e1ff2ac32be3051400302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310093991e90f5d52abd9b88270c089d3b9511fc71637b4d674f251318e6e31851aaec6fae84fe411e0dc7d14f43a2d74932023100a3279975573f4cb36eddb6eff33b69b3f54b96885419ac988a427f2d6170ae998af650a094bc1dd440d3ef41ad7b15e80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100966a7786204b912db6a233bd63b874347e29a72647d24d7af1afc1d352a7b694a4c8adaedf418934ce7700e192312a6b023077ee9e2708a1725f9650b8ad385a12a69059bc6b7964b83439c0e4ea11ea9b6106f0303e1160336dfd74267e6f9634ec0302047c435bb500683066023100a5da5bdba8577f8a6c775bf3d81078cc2a5d04f590f6da27752773c9679f01fd98ea70c3da0abcf66593b59fdd2c252a023100ba57de61a94fbafc21f1f0319fb9978b9d653511e463c68c2bbd3e1f47fed1958add9160e3dd6ffb7dc50202ad2a4ccb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310098e4a6c677ff2eef70f5bd590bda85b47d0e672eb7a8fd663a0022ab1b6605e561c00c900e4ce1c651f77f2fb33ea3720230671eba26e490b3bbc94221468cca9c1d7e798a2b234e7019bbd044b519f20bb3d1aa2b4d812f8dcff152617c118e367d0302047c435bb50067306502304fef4be645be04ef24d403e60a8f619af4f945182dc15086e8837f3c35ec054ee019ab5b1e87eb90057f3842ed1c824502310086e0051000c6996e7dc292e4a8eed24443f1c039b0df4989cb7dc33258604bda906aa2c54587f4c473d72e8cee3cf9120302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230098f13b257523a93cf62f475b2ccfcb03c759e4bad30e86ff3a6af231b86c791ef2c6e6291a6bf2fbc67816b41046e3302305c52274f59d828f16d0f76532cc576d0f8d9ec38b4318f4c33d015596328aae8563e29087598cdbe71f7136a7e1670f60302047c435bb500683066023100b351a1da30439307036a12a57c9dabd6a497d60dadf41702ea30344ae131b51369d52be43d45b0669b0d1d9868eb13b2023100a5443b94df2f651af7346bdeb0cbb1840547e73cd09476bf5f1444102f580cebb25240e1aeea484a6bfcfd118ae534390302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023049a0ae24b885ff0ade276788ed39ba597da35f78b865af796300dbf8c1949e27786cf538d3d02ea4aad56d97ea0a2fd1023100d78a4e07146bc933ef7133c1319f4ce28998fb5c20b5b0378dd5ab45c1538e7af407ae7686863af788b8d55a20c744510302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230564075f70aa5d0bd0fd52ba2303985fcb42a1b77754b613807acdb5238efe7f810c7994ba4b500c0ecb61a416731bb13023100d50f03dce53d0f1b534810a3a7c9fb9f7581f6bec8ef581fd73a3f688047da506ef16100276e4e3804b89ad54ffb90aa0302047c435bb500683066023100b737e1ccf9443506e301506fb4561684022167eb8aeb633c0b64a8d35aef4c11cec888b1cee2ac6d6b367d351d29b660023100e7929ad92681201dba95b1051c7f70442ed5bc98b55c5e8603ec61c5646bc958d2a78d4f90bd2d4c04a8f4b1fa397bae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230661bae6be8547ae979ab57f7a154fd51b2050e0817fe61c01e79cf8fbe8b003c867aa08c111c6cb6ddcb47bc8be5363c023100cf0be4ce9bcc756455a8a31a8b538942fb819758b510c7d3b1c19966efc9fa4ec89b7a59598348da42a29d721652ddf10302047c435bb500673065023100e63bb8a3810c614e6db85e23c4c14b48ff8bf620589d123a186905e720793be3db59d720640f26167119b4b720a3e9af023004d02edbe8cd85bcd0e7335b3a1a154744a22bbed62c6b8eb2b356c5f96943f13d4f58e1f09ed5368b52428e157831bc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310095556fbad6668cfb65ab532388ff4a662565425a26f62c0f81a120a52fafd4ef06fea4199275b753725ba83366d06a12023100c42d2f2eaa30a60fc3011be083d41e34b5d769f92c8ab28c85d89b9ca6d2846c3dbde3b08662d671e900620d5790572e0302047c435bb50066306402305ec02ddbdf4f746c0bc318847b03cb8769a9d6d58fe81ed45fc9c3d0abcd9f2b5db7b3f4e3aeba0060b98002fdf91db402302ecf21081be04d1aba060c1d9f7258787cae10c14f647614bfce4a03e8931a820af701cafdc309f5752f7f4b0bb7ef290302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023037bc0127f0fd9d4177c83c47578a93870c48c45fa9b8b67e3d47fdfb09aff9688f7c850d71bb303f322f1745e6797320023029ce3b68fee495a822a2ce3e90b1b260fc1e97e9c81b70b6cb1ec2ad53ae79766989da5931fdf1118003c4fa1fa2507c0302047c435bb500663064023009d716fe57f4b8b773cbcadb3c726d15750bab9f62ffd0087e10325dc6db84d0c4bb52d97860462041c860ab374b1c6002306bbb7746fe9bb9a58f97870af1b013f4ac9f55de32e6afc903bf531087156ea565c0566379a79c2f6f37ee1e9dde88450302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230770e50ec37393c1f4a8fe86ed6710b2cba4599008016469175f943bcf49ad1281aeb44add513bad76f2775b7b1085e8002305f9e1cbf05dc778ed793da1825bc76ffa73c276ea8e6571f6d6f259986ef1f40b69240b198776a4257344aaac2335e460302047c435bb50067306502306162816f435e869b1cd0aa08cbcc32d7543a3f33d7dc181fff9af4bd3db2355fdc26f82edc9490176e4454a45422e64c023100c3b3c29b4e9351b9f1b599af53f334a1e308f419a0ebb7b17beb4f3c60b450866aa1a2c49ee88e32f3b3ad81a1d823670302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301c6beb8278be0b1245163c90b7fa539688243fcbacf5b18243de866b6a6524f0ac525482c1b4e9f0148a34676b9a126c02303b3620d4997978303a4ca0643c15aec5f1a266bd15caaf46da6fae897eb19976409f939c33df946bad063b691a6df0e80302047c435bb50067306502303c9ea1cb963ab997c60b36efb4361b73ee6a75daaf7efd0a66c3e36a47c8a1903e875bb4ca900b0b2797da21f2dfbd24023100f2bff6aa1d4095d2ea1024cd14a3fdd48d5aa7863347217f62728a7c6750234d56a4091a207ae9d82859d77b7fdec1c50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e35c4432bf81999100cb386e8b8c79aad128505551a8e1e2af97953db878e488415f3374eb78542a852a09ecb43bc8bf023100d5edb81662ed5f0f66bd39ae418cc0e99d18400f688552850c3e18ee07f434f890d8205ec313d36922054ae6acb290670302047c435bb500673065023100cd8ac028609fb1cd78fd9773096cb0cd28287ee71a4cf714f1e1375d25df4dd2cca1ff091f7bf95ec73026a6a657060402306211be07a01eb838c07d0906a0c493cdf1cbd89cdb8eed7d772f6e309fcfcf3b68a5ccc749cfd05e1904944d084ae3990302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023063e107d7d13d7cf3fb2989e4fd078ca2f2e67f06c4cb5242946b180762977165121cd986a6e22915866f768295c6d036023100fdfef359c562f4309f975a710ee6d69cbc629f4568a40a14e8bae6eea50c24308fcecbd80e0a9267c47d9a55ed00cb130302047c435bb500683066023100adbcf4b1cf4e65ce19b5b81c5fe76400467d80e3993571797a064131dc2e40865f9a6420f55ae9c47deafb3208bb25f602310095089a06ef2a920e6ff7033859ad728313c768167bdd3d4a9c00e6c94c6f1157e7103ce4c9b76c75acdb284ccae9cd8e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307d87fec03a4568e21259e21208725f60f815e29d9a26e3a73bf7a6f94f4712b331cf814a51ec18abe3521326551559550230290c5c7387586441c6d4409c669e74e8825ed5b2c0e2cef5b3458746d3687031b2e38bd657482ce853a29cd36d188c220302047c435bb500683066023100dc456bf1c198f21cd5780b2c40a806246d5629d2830602f0a71b85160821a9bc0e9b8d3151ca60160a03cb7d642e9e150231008bcf2a0f200d81f179143db102bbacde7fc1c20fa978d82a0db37711abd8bc049484f3f7a456abc46949ecfaebe4c9370302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303fcd82aba062020d5d3da42ac4213add71b89bb890245a58ffa51646de14198c46ddf148c66db6627c021dfb3dc6ab8202307496088ea787207ec2061a0e487d3c72e09f758be11ecfa2298d30976f0272b6f6648cdef5a0c1b68464aa66c2d960de0302047c435bb500683066023100c63b758b28dd738cf9c650cc3c0ae2a8777ffa5117c09a085a83cf1f8b4fee2ea89c618b4e41aec934d4ad8147ace6dd023100a49559c2966f145bbcdff2ea1b392d9edc1c8ba1631a831bf3aa353cba00f073bbb33346fefaf2e605d05d15bf0cf0800302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ae619ce5f235dfee74020c5a754c11d58a5b099b68956c2b6f79abe35daefcb3f9bdc51b0aad8062f735f06fdb194309023068db4638608b3bf0e981da73a78f31d43c05d4a93f7ff89f0653332b86a79982687280c063576085dbda707c39e1f9a50302047c435bb50066306402304a8ddde3cf9c50837f2416d109e9eb03a59e7b63b284cbdc0672867ed40068537c8e69a75ddd68a3c165c1e0868c4de702303a438ec633deaf41b1c355943fcc8db54a4ac72e476addca42e89dfe06891763f04ff8024c3f5d6a135c648066cba9bf0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100cb1538c7dd062692a0ae7b969b44395b4313ccea6ed6a26bc10c4cc9adfdbe53edf1901f1f2f7b98fc3a4710f3e93be4023100c3bb6b20faee963ddaf31bd0b3a2b2409197c5f814930ea85495d866a0b2f989a1ce342fd0190e79c20d0c55c217774b0302047c435bb500683066023100f14b1f7081b3106365904a030ad3e5fc19feaa6292762c4ffd8185b64a28ea2861c91731deb169fd8b064ba966046ba402310080f8cfc71b4f7ed216206d20e3d0f9addee6dc831cbde17edf279d33c2de4f80936b11630ef959b58caf9fcdc17b633a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023059ae7ad1f80b93ef1675f708e0b2f217f554a77ac7ed1bd206fda6454391aa817f8328a2a0b0bcc8593dd0a74289828b023100ea3296f511955501ecc91071ef54e55d974091eb5cccddb9dd1247046b3277732c2b5d0c4851d496f67887b660a11ca00302047c435bb500683066023100b846209e59cf0f6e42c693ac0d3e366ff092265105bdb2dd34e5820b52d05fa06d21192c14f5f564b87f984f31127f8f0231008d1438c2b872d6baca417f587d4fd93bdb06c5eaf1ff3c984f2342df65abe7bff977d362cef036174a4e6450ee67b13b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009f1c92fbc0702613ffa430e9d5ce76bdf5cea25fbc91eeb8b0fa8a717e574d3c08766858a5970282d6db7e167ba7a3d0023052f5da955e5892e7c57c744a42f9396e99bb4c315448f4361a7a3978e49b75bd723b258d85c2ad75ba15912a9d52651a0302047c435bb5006730650231009320d041c5106d52cc90f0a5ecb658ce94068fd662125e7e299bf1c45c9201ed3694807a5ead7a279673e519ce91e3fa0230741658cfe8f88c8ed297ef316076caf5fb3a238558b16d958a4c81fe67cea7bddcf37700275aa408632969919cba55630302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303982ecfdde6275b03eb0ff519d8bc0fc648b3926b71a2870864524f012fb40ebb4616392bc4356ab7373c7fbf2b82b7202303b7f2178eee0b03c76cb09a46da344fce304dc12e5760e5f987ef13acc802080ce56557699ad1ab82ef11ea59ea4bb340302047c435bb500663064023011434cab4d8387ab06c3ed7ce3b3dc0b53a0756a28beaa73be6e5e0d5383187f31a7b3767c8cb485e28732d184a44f6802301c83abf1a4a6840d2a27f594d6956f385874f4ceed35a655d97f600173142986858c546e74df492532a43bdd7aacabb70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303f4df4bd66e205ea66f254255bdac40ddd23293fa285b2d391af0bab5e1b558df2f3d5e1b6f8131904fa1ab5bd955b5a023100b68dcf3ba7e39b0ef803e46bc51fc7080680b37147d195b82601c81c880f34616b583b651068cbf286a4b817c05a4dc50302047c435bb500663064023062a21e72a378607673f9437002042481122df75c1d465dde2af64db5fce7d3ddf90825bb0ca7cfabb77cfea6b54ce08a02302511106e05f53cbe13903e96f4bd0812d1513f8a6f849d2d3577e33def98c37542f0b70dca346f10a7a8c11ff34429cd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304dfd155f35221f5c4230cb113813ef6997837dab57ffbe32a36795f108b074719584f68660abfa83181928d5769e22f102304acaf2876717f8c49585db610e1aae6f7d5ccbb40b54e39d9e11dac17f298d787bbcd3b51df7ed6347f8adb95d2b49700302047c435bb50066306402300357605a6afc94e97c69671196feeec88cabc70abe913a181c34a0ccb47d0e416a6e3674c7e261c91b130f98054c390902302db734b1c7f0205dd45f75af9f349547bfe6d2027d282d56d37ddaa048672596f67a56c73fe3300fd64d57f76f3c29f60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d213bca8389ef5d96d972b753d118d9ca4953cdd07200645b5c599196c47c87137f59de2477793d8d630c9a8bda878fb023100a837e4bac90bb7fe8c94560319a85dce7d163e5de9e4b7b75899b8f8cb56fc1b96612c993f3048ab64bdb6ec52e06f440302047c435bb5006830660231009a0fd7adba742b70c74544561e1423a879f983eaf38fb8941815799045ece5b3786c209d9ebce200a2e61aba0d5d0f32023100e9bdc8de06b124845fa8e9581ef86520aac46edbfb2352b50992e72217385a95d8c22ccbeb938e78fcb2c5bece65e5a30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023055705063b8249f0226ff84b510b3fafff422f0f4cd33945d4eb20352caf5eb6fbe91eb7c90fd525cff3ae75d60d168b902301770cc70a21bcd60d84f2df81acee4ad5df4bb0a29e885094ba2c7d7c895f22a9282c6e793f252f8a7be2041978788250302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b348e94ae9076c5c27fd6f19dd1ab56b28cdaa263f33516b0b3e49f1e9fafbe7cc07c9276e75cca2b9efacb72dfe5621023004bed64b09de23778ba33797a98b9eef0649a56068a2498db9c9e128f5098cb67ef3401459a61bfab77f3a77e0abc9100302047c435bb500683066023100cdf8ce3bb9e6f09a22743edbfd88c8859774e5c11b0f755eb869f12974bc7106c0009704fd52988d68be7cc3f34c6b4a023100c2126424fce682f9eea0a11aa4a6041da7e4bc7318a3ba4d182d5c062f387855d9d1b7630ecc4a326818b130cd8a51700302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e8d8e38103187a86f000444f41b1aa300b7636345ae0a55c4d2167a48d6230b713aba007bf6baa468c93e5786f927205023100863c4362d98907db92ee78de8d4a93e2a7873ca0ee519bb6117c5b89ba53e4005aa7f0b4b7281481e36f45cec6a489e70302047c435bb5006830660231009cd34f11910cbda5d08866b12518f2e726e9efdb63cc77c0858e063be6e68730fa4cb7c4bd1375794e93b0add37c59a2023100961792195212077faa95826802e8ad2417b332bf347bcfc8f578d6937fdf714f0068c275782283b98f4ce4db3f49082f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023048d6932e9f4849c31b295b24b4ec1bebba4dd581e87e022f5fc561bc73456442df3c806cdc7cf0695c06b763fd86e70002300990a1f3248111111ae9c27f636df745aa243ee3eebf5493e629e62e42d2c941d9c95035c80423e8586dc3b493e28ae80302047c435bb500673065023100f46d0699bb6fe0f88b15c25e85540c992e3414db6683cd7587a38e84cb0dfd660c524c82c79473fa8e0bec70b01af28002307e45288971ce7456b12ab137e4dd95da243419ed9c4099844e46ec386cc1a0ddf003e97b545e12689605dc97746e79b40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023038854e69bb38e876cf078d56755e02e84bf6baa42a78c9eabb59425510c374d0266ee3744c93661bed5f478cd9775e7d0231008d032a046f167bd48255f3193941cc406298ff76ec800cccca16b41ee13233c98fc2a78f59dc485eaf079d5b546870070302047c435bb500683066023100a40adbcafe4372ea8996c0859ffc1b523e0448b23d8222fe5502042a079b356369bcd1bf31b0aaa863465934b595cf60023100cb5408b17b3d21fc43f3d6516b065797261c46f84020535cf5c11de3167e4769e36ace6d5e97256db4e9dd105dafd4e60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302760ab00e6311542a009a932dffd1e05d35c4160a5fa3c471b326e839cb93b50f10b34d3bfbb028aac6998ce27f01a8902307d4389a1544dc915b119afa7d20f396c88d3c9a8f1edc8b8f20247aaa134d7b1530ea29b1bd094cd72af39439b88f3580302047c435bb50067306502302cf9a9739b4d33351299a10a1f3b6e4c0230c00872eee8b959b8317c90af89fe24f67494829f6859b7b21e46126b86e902310084e673ab13ec1f89142f5ec41f57f6a366cc672a40fbbb7d1d75fd0f0ef763689fc781332840bef9e4208ac1ff555a260302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230628b87fcb308693e37999e030f01cb545e8c7577794dfa5ab9b9426968bcddad6397ddf27a33c9cd50c11087cbaab15002305ff5f0679e4d55a3ae43287d225e865c2d9dcd8cc13fbe7c60694c89f8ba3e2458d1869f3d889a769b2c471bf0d1f8e50302047c435bb5006630640230385d53f9e5ff3c51574eaad7eb726e6e4e20d13c6342610fc9a0f4163e0e428eeb93c70fedf8dc471666d3bf19e36941023053ef7ec73295278b3e23974c26c8a78d0eff6c2f7af98b3ac25c3ab21f3fbadb544b8a2254756fd4c0529b75708449b50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230583269e4e46e7a812e1829d010e2407fa627a824c0a787fd5221800d065e11773b7ffb51187ed286b06676dddaf3232d023100a92182dd758d2616024d4b6d5190b0fbb86ab8d5fd8b7bccc7c1634c54329fa1fdac831d7d3f21dbf6b2d58987ba7eee0302047c435bb500673065023023d75d3c71e8550792e1978d44a6e1e42f836752e6435707816d1289447fd6ae53f092d6ce932772e8a8fcc4d1844a9a0231008873b987a8415ab572f8dc61aea55d4d6f893fb07984f550be8ae0aa29e968adbcfa5b3eb5c07fe6a3790309e33c9c450302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009c8d2aabc7bec6ba3310fc56deb802d83eabdc34aaa38e7bfe709617d90bd1518566a41cbaaf376ee4382b1a93a15a65023071858dbb2112c8b4a2eeac3c769d1a7191e7de4001049c998ea4cf02c35d1f72fbd13a0677d74577b4f4c70630cc892a0302047c435bb5006730650230383e2869720eee309a3ae1ffab60e7e108b7fb139ac395ad12307addbc5ff18292aecbca2d77a81be775cb7ea2cfa06e023100aa988f940675eb229ce6f2dc951eb472ac1f042d81a153cd857fe62f9049bae1d2fca0ca47c3c41105a34ac0757c71590302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a3bf133ad726bf2ae78ba631d54ec1501024f676f67760648e232b5421e5662a577851382766147476f747101dcc64d3023100ab5b63105906f95c6d090b1f9e6ed1f25d57223b1391f0f8c584d53e7d9ab1db7a1a2c9f7ec296ae59e6f4690e2c9c600302047c435bb50066306402301a516383ae3f2cd6e721db1aca3b2a6074e988429f22d247b21164c0a20dfa4cefe16f021d6396e85009aa85a51ea70502307fb488418aa894b415b61e8ef860543bb7065690b54de37700172eb96dd2bb8bb13708ce24fb01f26fbebea0a718683d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301961237646d1783130b2a5ce26219a87fc183389bb425a95d85d0ffab16cccb85b3d538bdc421f81ada5a16e509bb90e023100ea20061f7ed04aca871129e870b97f6809846087b5a9d8c52a4c8e4264adf2025562345aaf66c9831e62b974205b515d0302047c435bb50067306502310087e2d92ddcdd419723c5f013d0f9d711d2d555938594ab4925ece2c8b30019f5e52254f0beb5a1b083c8b30941546460023062db4cfe9910f747f4d9846ab13313ebdd9071e6c2b90e57165cced374ddf075d89b97bec8dd036fe09453501892f0e60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303f085e3fff91ec4cc8c532185367ae7eeee73542a946b157ef9e08e83a016bf41e05ad76037a41c21e233a1a03b443c7023100b23290a6e5e7d3a9fd0ceca232761cd72a1c60fe0f3f21eeb256689dda2a656fccc730b04db7c829d886581651eca5370302047c435bb500673065023064caaac8ad431365fb036d5042022c6c509cab6af57d530c84c91658b8cb810c03eaab984795cad1b69edec1bc86d1b7023100f7466c8453670f98989d1551ade442754f754f0c14fd93df0581751de32ba62279cf874fafb1bf71f95590734d7620800302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100bd5421bbe854d7575d6a69e177463aa038e91acf25e1f6fbe37a9dbcb054db722d1750cc1c7568e4cb913edb27da54800231009dabb4af5dd45f5aaba96409d53f1c5bae4b0030f80b7f9190b9b237ffd48603776f9205b118ecd1850ed4d1a12298fb0302047c435bb5006730650231009376d20da684c75a02eade3f567244906ff42af28a4e1fd6df94aee82c6364786abd84b4ca193f4a28476a6596758e0602305c6bfc4299421ca584d692246e650bcdec79fb64b85a6906d8f904c8de0c06e450a9249d042737007792e272c9aacd9f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023050d2d39fca10d3bc0c1e434e4036e61479cb67e474ebf2fba552cdf3da2df876e4fca383154d201dbf05d93b909940fc023100990dbbf6de9d6a19ddf32f924cb7abec26fd77c4c57898e8034e16dad844211c4dcd672218c37c2764002c6a5e2accbc0302047c435bb50067306502300b78dd318f23554559ef5fb29be243de041ff48e650c24a75dcc163408b05a54fd507f285b63cd5b50d1ba0b35648279023100d3f995a9cf16406e44bcb292226d99fca175835291810f83d7c907ce0a4dbe4fd3554e5d5936cba522ab2c78d3b40b1e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100dca0ddb8ba99e1b32311fb6c11b52c69a3e0f0c68746002c563be6a921569a01a714d3cefdff8550be0094e7c4b4a0df02300397b298c81c4e84861510e0f6abb3589ce91392e69279ebfd88565594ee96d3cce06359dc02bcb403072dd1293a02530302047c435bb50068306602310088e99ac1fb5824208fa5aecd9161ccb4140eec11dfc1c0e61ca57d39fbbfb6c0cc51daafd2208ec23bbd8099b4a676d4023100a37ee05e8fd9bafd86a8d89a92f800628c86a10425955ad06e70462425ceec675375a19bc8b3042bb4c4cdcdadecdcd70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310092935985c910c24f9f20f0cf6fe27ce564843e851ad0b26cecc70cf46a37f0179324ae7aa619bf264fecb88c4f04470d0230519399ceb68d1720a650b4528d8e0321464a410bb36841a73929f4f15f6320dfdd8c462e8d5af4ee3d5282d5c70763cb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009acfc5d94a62ba4101c89838adc1085aaac523190ee6a489bce682fcb98420763fe5235e836339f620bf6f6e80fec00b02304b3a9106a0e8fc72ea7800e124ee959777d18f25be7894a42473fee33a7c95d18d84a3795e63d43e2b6f7304b844889f0302047c435bb500673065023100d207b7a33075222a2b01ba9f89379b76410a9aa1233a7454690556a047c30f04303ae1f6b9cc13bf76a9e1771d1fea86023054312a106fcf468f12b55204dc72c685d0eb3c3b1751fb0bd4730d5647ec3ed8374185d1eecc506932aa76e144ff85720302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230675e6e2eed96de36c4c5dc6c00f8388bdb7643e28cc7d540c2e125a653c8409d311bfb494dcd9291d2934efc33d263c9023044ebf16a81caf525a5fe38b937e4879aadf9acfed2fa752a4f0efabfe1c61cd833195cf4a45197f174e998b8a845ec3d0302047c435bb500673065023100a9a4910137dae18c827db0d30da3604c116cd90bf308ae32e411794114d258ca58ac467facb0c56efd8add09c2de359a02301dff23472902c19bdb5dcd926517249c402c9b4589831e3ad4f7e16a3f06dd98b6fe5a8e88ff28ba5aa68087ca3c93580302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230666593617425b351cd6d22cc3d14b7e116a0cfcdcd2155481932815afc18d26f02e195f8ee78b3f4f767874dc4da04ef023100926bfff18c7e923d8701ce3468065a832ee881c3571118201e05e93bed7bd5f8e6c0ac417a7c01346bf86d1e1120a5420302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023069b1aac7d6036913a8fcc6d14afe3afd6251cce77aca87276a55ca9d7ca964d62a57c7920a7c8166f244d7269a2490b2023100ccd95167931182de81e23ade453fe9093a54fb2e9118d1b493343a6e4dee2136b2af90641266f4b470c07cef9d0d78680302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d5a17739e39446604bf8b5743be742229d8c4353f034af1ec5678642a377e283fa22e955012cfdab9cee54d898dc3e9b02305a50b9105219672fe8c433a84ff5bdb64911128082bffa49d1f61e9e66d5891b5fb6810e586f6c6c54e816749f9025250302047c435bb50067306502304bf88c15f635164e546ec44f36917a35c760c2aa293e0eda9cf13af3719fe9f93d591dc982c33bb3b22ecbf2ed4608f2023100c8df32322a6de0cb3877d58c68965906df36b50717d3f56bb4b35c16ecdb3c2b8253f70677f83a77adbcea800b971f6e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f295efcf1b692d475089689d060f75d086eb089e3fdf5c0a5c623e636f1a9cb8dc876c834d950127d89aa98105f0e1f10230222564c9e7db17fa79ecce8b11f93bec7ad5fe45207c20361f4f5ae154628143ba19f2c8d323165f934ab0de66e2203f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023042ce274971ff122bbcb85992a714279a0defa99e8acfded96e007a1e1524b06528a03171e69b04750095ef16be13096902303afe2c5828035eeba105992cd2a015a768d38d4f15f36c6f8571dc55ed2fe53766205886963924656511915f2e0f3c2b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f8df42aa9655a3f03b8a12d3e9ef1f21fff16db602eea7f1c898bf4b855cbdd3578210c9f20242e12f7c9e61620c566f023100d46f188b7bf809ed6cc9d33a3616286b46c9be07a33ae4567c0f8c90d2fe713c11e723d33e935f42d3ed3715d1d1b4710302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301422dc7fee6ebd29d93e086cf79c3c8310441a81bb71c255bcaf76284a082ad54d894988bb7d279342212e8bb954b4bb0230350b507c675011ffc75588a62aaa2f51819b2ecf308f90c2dfb1ba59a75107a5f22a439144e2d52d5e333d59ae4a87370302047c435bb50067306502307c063ba1b4adca8d386cbf91efa8274d73b044a07416bc19fe257992883515469ae98429997efd6e89a032c33b35f77a023100f64631cf74c633f1cedd49acf3f850768ffcbad1577e69b3d51967c099e84bb5832829002a5aa6b24990ca762a006d360302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023079d50e17ba5fab403f603849a5c10f2c3b937047380892988a08c348992fb04a406890bf4eb6d9d4f01137876a6f6487023100c4aef2fba6725a4860dbf67d7e872754412f26ac41c8b1b11656eaf684d5e2331e13f0e4fd1cbeaf9fbfd624ed1c99e40302047c435bb50066306402305daecea97ae17ae8ccbbe4d216054d884b3ead8f97d9ab78f006336bce957be5403bb55b16391100113b8c1d3efa4a8e023065d0cfca8ceecc606866860917b08457ee57503dee696e54165207a239d9db6c8f79c8a404b96eca7707c486a0cd8ab50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009edfc87dd3ef752999fafb9c3d2c940e2dfefb1458084a24bdac57b4dd7d04c4443db8784d64ef8713f365cec4866e15023012d00879aa0748c8aea49d7a930e377f57f5bfbf696ef98cfa7822eabbbd71a79bffb64d0f9f7fce33ea25c91ff4d7b20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d09bcf24d5a6e290b2ba4cd30f027dca1f7111363ba6e2a7891c17753b0500dbdd3b0ea09a277c582d306deadc5ef94c0231008f0cc9ceba03cffaaf7b8ce484e98df7663c9fe2b5acde32544c17e218e1e67ad44ff7c65a0fe9fde9d0be444f0f03fa0302047c435bb5006730650231008a6ccbae885d15ff9b8cd09e1c631ffb2b1f0b3d5e73bf411a0c61ad14a8623bd37a4de5e8f318a368d76d81aa007cb602306e820dbbef1dae2f50ed805832bef4b511c07d2309d34bb8b715a6b985a2d09a6679c4eeda6854ab71f17efc6c38fdd70302047c435bb500673065023100a06e317a3bda21641b57f643cbcfb34e381e5b86dc4e9df745ce391c559395ce36e430b825222fc7b0acf2af64f218450230458cf499cdb4c9d157a66f8c4edff7e69f551bfeb6c88fa013592d65341d5bd89f496a3937105b1956d25d0813612de80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230593ebed057bdf86c986f0b83810b4eb002c5acb139ba6282cf8f53281894ab52143c28bbaf6639a9df97322856da4e94023100e0658f157e485c12fc78a954909703182043bed4a45bc0ea976e7c600251d6bc222664f42447d5e6922d8e5d31234f5e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100cf3c95f7d118c105074f9dedf10311a3b84d430386da45268c5714bd84a3e0ba7b7f554bcef1324cdf8c8c0ddc2f092c02310083ea64782f13a7807c4e484f05c3ebc2485022a0024a8c7bfa498691444158c169b9cc9dfd7ce8988eb04d192dc23ee60302047c435bb500673065023017091330c5106a7c6cfcda91cabc34bf4ab27301e093f4fb8ca4f3d23ed1f01cfb8b5df82e191c094df40a251dfd39d6023100fba4b2ccb5de51ec965e0213f848751b1f3d4a09f87f6a4bf58171507c2a5ef64c63b81ecbb7b7b0acbfb486a06c2def0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bf06f3ff53e3e227a4b9d11a0beb193e4a2a2522450535bcba3c5801c1821762ac88ccac529ba31e89ca6607f5b985ac02307f7856626cfb4c9442d7d0e994150d70e911ad9eea7b5d76024d3db0eb0c52d41d7a8d990383956719f79245f4148fbd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100af58667d5769541463dc42bc4be166bd1904301bcbe6013be376f5108bd532838edf4265f2435bdbb31f8201c16f677a0230417ac5ac94e8211cfdc72516aeb2b0f9f4b95f9d806a7cb3fb49f6556db4fa444ddb124a0cfc4d017cfb79e2d2062b400302047c435bb500683066023100f586fb7f037e6b71cc5e1d301c8d26c3770a85a349cffc956b101a3d7afe811e1f255d1dfe5cf4191acf52bd4ba16bfc02310092320dcc6b89a452b325be5a883e52cb3978c80c5ef9126e9b5361ea4e6b566f38e0def4af0fd090f5a8a4369abb44210302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100be341dd3a7d8baba09364b4f1b82f301c9ea707db9238ffa48208152034331e13e6f31654de7460a36485c3fc870e3db023100f73fec2f1016d58169c49fad05ea429e6fb312e02385d601c9ecb0eb76bb921f0419f1fedfdf40e5379088e8ea6731490302047c435bb500663064023073c965f75d75c428fc699963e573c8c64078b45bb418520546cb2564f7a6c7d033234e67f8eb24be81d0bb2cc66323d302302608dc191f7ca96b78713af60073ae50cdbfef1f3a45ddacac441686e5789cc9c9b334167ab4571a9a707c700562b9150302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305299ce0aa9e45f1e4d83b610a75f49739dd5f8d800eadcb8ca085a4189f039577fa0fc2b479697e2334efb2cd6cd5f84023068495954ab0714a19a848ac580c5cc3c019705ab7fbeaa98950c888e981de5fabbfe9e76382a519285ac99f800fc3b240302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b4cdb35a62f63203a3df2d8fb6acac8d1610acaaa611cf2354259407882329b385a8b16d39f87835f021709485054fff02307366758f018a2800bf43d6c3a93fff3db61656fa4f4fd53cdd0d275003bfc38a64fbff1b531951589762f657afa285360302047c435bb500673065023100c94670fe5943cb51b5b97e41e6fc6a7871cf1ab47223a67b706322d92cd2600d7cf84855fb2cac21a79df25e2222cdc2023011f5d94a3a54f1e14cc568eb07c9c13b400533dbbd80146e44ab0eff44d43870c0672be61ffaa881a59f5d84d7600d2b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c3d6619d71262bff63b18238c4ca018bfc043b136d07abd97d4ffe3b1d79463107fac6b4caff4485c88b762fc4a3354d0231008c3f8a4779e178a42d632d873c0e930f988355659da0b7a3672b335f4514035a02e4cbaf696becb2f89f87e1ecb61f3a0302047c435bb500683066023100bf13809a3c82181ad286275cc7721207db2d1938272375032eeaf65adf084c5444c9fe7ebbf019ca9758b9fe924ef576023100cba1a7e670f468d399204c4f2610e0a55422caa82cccc62dd669002790ebcbf6814b12a06191d8a2ff4c75416a0b377d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d34db868466fe456f9915a3d5a1286b7a9a7b3d4c000181c7e99dbcd5986fe889e4c232b5b9900de3f3b9336658cc18602302dd8e570426d02a07c46ce162dde4cdb771c2aab94bf36c78c2484cf267f477becef62498697e0513584a7125cd633b70302047c435bb50067306502303af723ee5f877297e9e9e10204825bb8026c0d1df750903f400f1eafea6a3e08560aaf87197d1233ca1c8abe73c3aa6b023100e432028949a7d03820404a5e935332517dec3c7b6ae30753cbaae27c9fca72ba486957cef4d18984b877fcca912e36280302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bbcf9ac02c2fc3840657d88a39696de563cb278661bc9bb20ebd8d9e80b91f24f9870651bf33ac770886ca18f8139695023028b6f5963b92ddf23d5ce2b806150f5bef163b7a524a0447cf2ef8283c1e0d089e6ee637653ce2648e53d14b7b057ccf0302047c435bb50067306502306900ee1554fd02515bcf0c968c96a03de8d47d1eb67546434029921acd2faccf39773458dae28f1eb2f9dbf3d9bf4687023100fe411e22318dd334b2c427ca66c884578bf661e9a9834449c604e2391874fa29d1d69bd6f8acc0600ffd60aa6fc714580302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c99f1cb3c1593310c7530368b033d13c259ce85d687f1e2fff121d8b8e3f8b3f96a921d112db35ef30ddfc701641f4b60231009080796b0fc9276afff7d65b72c8674eac3fb76a33cb35ba4fec75e75e5085550c88772d2973368e956a80996cbff9a80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b14b7590f67e58e74f23021a360133e23c45c35c04d08817f64be95d32c4bcf8c40f7c2a9edd6f960b2dc9a1289fc0a702306d0fbf9916db4ae1e2ca6e4a3a3bb3644080b3fd79e511599d2a89fea739a390fad958f8b30390cb76733b1a08e702690302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100bf5cba7eecb2a1a83412b1687fda80a640807230a979d483627474f844129ba4b0df4caa580f034bea14962f73056142023100e02c2c3297188c605cd446c09fc837f88651653572f7257c252764646ac41ce79de84cbcd2e56d3a154b48161559e08f0302047c435bb500683066023100ecbb889e9fecab34263778beeffbec48310e2bacf47ec4a1267e4d3a0d7d1eded7d0c84064137f8a4aa37648dd255aa9023100813abaa5c8a1b3aee98943c810ece252f7cb3ef11a88791d8bc910f37153121c9757227b37fd181219f6744f710545e30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305ac5d7c2f54dbff24b574ea902298a89fa76b2807fe79bd1a28b73e7e7c9c4b9a5144e683d74bb77363ce597e95602b902303e20edfb97de7694c2e2c455b57fb473d138c7ddc6dd10f1ff2008c7e735191712b4cb0452b7e6cb1e844a43d2d683630302047c435bb5006730650230786e9af8526dbdfcdc35015f54fde08b0252876feb8ab4bd2182b670161cb5e616fa41f886e2c75addf3b08f03429660023100a2aa2d64df4c108530ef1053106ba09a7123ff59372fc3ec76d6dc2a6071c6912013ac58b8635958716becc479140fad0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305d3d6402858a7e8e39883d668f235c6dd8cead29682dd861c89ed4a2cbb33a001fa9ca3e533bc6ed8ba613933dd02c36023072dc222c28d148504ac63eb851ba6d937143c31dea624facfc80578d75bf55000d477a07eec553832470dc4eef0436fa0302047c435bb500663064023046fcab1d3b5ec28c14e9c7f5b798fbef2e48c6f0d3f42b18310b5efdefc867416cd4d1f223852373ec727a79a6b912e802306ff21ff42fc0078e8033a2d14f62e7a06a27af44211665a2ba2644ff5c2714b759365ab52a151e3a8958cecc69d04a000302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303a86a88a6be694cf745c2c8e106b11cb38a1f2c051651bf0643384c9121566980ffcc79f7a789bfda471b471a0f05a5c02305951e921ead4e921682f54f5c71bec0725a25947a56c776591a95ce54ca89429764da459769ffdccacc75ce4ac5409b40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f3686ed32871fb8731b0130e5517a5e866a5aa6abdba8cadf89e3539dfd9221cba12916d6e233d2275007ea2908cfa46023100a742d0444f55ab4930c9a83d931229af01480b76791b856a7754363cc279a4ff07592443d0d04344067d94d5e1c222170302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d7ce589d88349acdadbfcdc7172f81465a1588a883e1fbe3dabe45c3865a390b223b50d3e3d33e3d86a601d17632a8ac023045ceae8af0499b8cd3e03c8d8257bc15b6a3260fd27911695c01cf11db3be4fa2c4d80d0691ed984683c65885db235bd0302047c435bb500683066023100cc1cfe2c6a6e4601f964b1cd34156e3d2733b288d7514988296ee97bb1492e36a8969c07c69528997d980d89dc02eeb6023100ce8a356fe63a4c2b8bac3e3b43ff710a8f26757be6a5596309d546849df75a6cc406002c2f49d278f71f91fd01cd8a510302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300fd71855ea2de521c9faef5fb627d90c3626c16285042935ec02750a10b1f3598b0e1cefb3d8581966397f67eb8d9a8b023100fe47e4c06b9e779369a3b669a253930fe34ce10dca8e0dfdb335c2aa2c679b4f78bb7fa52e3987e00c1bd532952fcd360302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023001c699a4fcea475a5358dbfd7fea1c39ab006a311e63d0404fb2995c4ae3b2125c1e19d3ea9517b8d7516e0bcd6b2e51023100bb10ecbc3b6a25eec21a1894bf0f65d268f80e396d09883837df53017d7d88e8a69c49b6bd8621706760da4da3f04b900302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230641a823d6e67d9cfc9fd6be9303973556af8f4232377758ec1c22afe38174ec39628b4aea33b73a293f28126a2f49933023100eb89028d7773459b99994c539749f495c050145cb12682b8da7d6f7740a4fec2672b89a5765010da13100d786bc7c86d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230610305753a4abb971f0119dd9170481e8001367ebef00717f4317fb22ad7c8c15be163059a652bc4500ec2c5c8bc580f02300626fa51c554299530675b83774a4674450d421e7d6a898add08cdee15acc8d4c664953c47a5a5b9fecb5d5e49f3ee1a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023014576d1c8bf6cdd1b7d1d5f8cef6c9f299d3b9385d772994177108ea9a377a33a0f70378303981e67cd9fa74123a260f023100e3bc9c12c52ff1dbaf1978abef817d134acbb4ddbaa1e0f3e204ccda59d5a5a59010347bac69c44d92bc093c50d695a10302047c435bb500683066023100f95d6c51f27f70c2c0287bcfe594e61aecb18d9b5392353872652de4e97175218439205bd27f2213277c8d56e804ccad023100a05dfd1a4b8735481f2ba9c7a477f2a690dce1bec0ac1802333b39464d552b1cb5c2e629f8ad70c3876f3c2ee8f4d8910302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303b7736d14281237dc5ef01f567583d065412704b9bce04f5f65d071d98b452088b485717737ff838f26270bef9a4a257023100d0505d14d591405f6011a69a1611f1dbae1b0e8f4d20b304bfe0b4230db3323f2b2e6655094a6333a78707acf5c9cb500302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009a4270c3794c377b9224fe45f4e0a8e12c7952533bf24bc6df9b7c8a25b560981999ae4e81ff30b0b55481a223baa04e023100c9d9a708f049a82dd656a11cfde6b62ae31555a815eef9269a467f29fae027350d55be0974be549895494b923fb964590302047c435bb500683066023100a4db74d176a56163ee33f1d802653340528548ed422a8d0451c1bffc3521b4552e05684d41eae3dfd01abbaf5cc92900023100c6f77f3bda1ae27ae900db6da22da113ed925950aeabe21add2914e5673b54fbb15a5cdf7c9b7e350a7a8089a75f5c6a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303be2c6253a9b73989958d21a51fdf9c2b0124e13d6232598b679e32778eac3fa9438eaaf755bae6abe2e0fe4f2cf4682023100952dd20724a586fa96f8a1128d057945c007847147e32680bf70b0a371bc90bcf62fc1f911a4c279f94300864c9c6c460302047c435bb5006830660231008e4fdfcfd2baa438fec639c52b5afafec7ad2daeadb99143114823a550f582288d075469c9e7abf4fb97890a0393f13a023100c1cef40a87048cc143e6ef9fd104c3a1793ef4dcb1ffeb938686421230b33800a4558b84ef8a78344de1027ccfacf1da0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023023ac202c0b516a6b234933d76d779b708d46218c2060521fc98dc4591c6376fc92dc472dc2ae344599387d0f9f38c1e9023100ed89b3ef0d2043951aacee16697e7830adff17152122fd4207f02672a218cee0dc83383d42732f29ffb616d7a84a7a060302047c435bb50067306502300af11a01d2de7a9dd16ecb62fb54394a90cf843a6b95bc5d5091479d98ae9e64d924cf9cedb56ba260c42e035a00b26d023100e5652bd6263d4ce0f222283944ee6bf82a8ddd73ae75f0d3ee592543b0eb8f0bb3d09522521348d57dbb2bc9bcfb3d860302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300efd4481c0ee8c89d978c7bb8194dacaf0048b610c5215eef792a75ef56c85d51a0f6fd628718a4aa30de07f242162b60230295f7705586f0065da3dd3252b429d1f8382b612d3fb839dba4b32a38ebe227a4da121dc8cd8de82fe9f0b30c6becc030302047c435bb500683066023100ba02752633a6e616f5d4ca40b9358458534c49751953f40c25c7a74803f9c7d4d5170bd5106025c296f05893c02b04c2023100caadbe5dfe1871edb221c3fa580fcb2f87329edc39dd66e4a99bfbe982456a22d54dbb68d00b6563eb670161958c8e700302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f51da7028c4c59286125a218c2561c3f74429cb13802d6b6ce355f41ccf0882ef073a9adaa9093edf5afb0277b95d0500230532985a79930e8ab76fd6bb5ec196c3d6f5e36b8ea0b3909cad91f37f0da777061c4a038fdfe1713eac67ba8c316be030302047c435bb50067306502304f5131e1cf48e7bdb28ed49867cbb855b6a061dd5f45d3344fd1ea58e2d5d790c83b9dd34092ed85eaecd1083489a780023100df5e310fe94083d1229ee424bafb4ceed049989e2c51552960c8c40c78da93d055ecbb3093ff8c40dffb7138ed8487330302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302443cd1b94fc924fc01e57014ab9fc297f80d4abf7fae026f1a431ed73371d9ae374cfa5eb9131186003560c0878bead023100abab6ee414c24941dac86c45d12a316428775a103d5ca8ed8a4af2260fda9cb7882d8d5eac64cb0960553e2b93a639220302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100944fc5336de684bae826e04293f56c0da19d41878ed7af581fa3c797183773c7755f37dd5f3f2c73dd48a76f78c51d05023100e567b159b965c82e64e3766afd15c2c7b3f8ad102a4cbf9fe46b8be595f8c4c5b6bc77ae0a7940866161543232a02e710302047c435bb500673065023100eccf20d6fea01df1cb6bf28a71a0b57803cf291847195f1baa11450c0669f88057c4e57598e09cff7ab6be6c3d973c8602302017694399fe0f5e7174fb72123ef0b7ac3e80ad9b810131b3c25d2d36dcc424b9808eca9d075a9fbad2ad41974781ff0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023100a016eea6bae08db7e6595df57c9f94163526429334ec020356190ba7399a5efcf0647e73b307e54c4c08e4df46597148022f0d5b0dd9b04b8da250b8e4d312cb9ab59c0bb60244c0e93cf8a98f491dbcf495a4308b95cb58e94c57293e06f4a0150302047c435bb500683066023100fc802843b0733e6579b249992e1174c2c7f560a7e7aaf31e13cd649d5838ec29bdf847abf6cfc526aa971079dab227b7023100d67614942093c857c15b77afd26fd9430329c177b922c8c6ae36561d1e22adfdefd270908ceb4e6cf412cf665d1e212a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100dcd300ab06791abcc73d9ed523db5b985b8d3f7b4c37749b64848774ba8f800239a92dd3196eb81f092933dc3cd6c201023100fcfd2a4f07e8de445cd5dd2531f98517013cdea852cc23dc456a7dc5b11c3636c7ed510ee1be9318869cc47420e32aac0302047c435bb500673065023100ee398c64c149f1ecc28bbbcefbad9bc28e503d93be14287834c38cfef47bee60199af5b93af0f9891ef1715a033111eb02302447753a8a0530f5e27d609ff78996a86b44cd6ab7b868a9c273e20a6b217271ee78e15561a50a59cdc08fc8c3edfce70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305350acdcdc9e220ff8f7e663085c6b069d63bdb455d4fb0114cb2c1b5369ea2ac42001f6981fb31b94b2e6edee15db8c023037940597d3b7391676472d28a9b60ad22ab1a229c830a1b8f5c165ab31358b7130c6cb1dfcc4423acceaae6cfba9c0130302047c435bb50067306502303a53813d28d7b4fbf032db16771d4ccc619a4a801d988eef4bfe0fbcc5db549edd18e19d749fc66a8daa4ee5ef16f12a023100dfe9be1aa1d6d33f34fd948fdbb392bddad04cf24c6112a0950563ead6982fa8ec27905a75b978dd47bb3c5ded6fef490302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230475ffa460cb9a5e05ef99c87df9621a4438fb5a33e4cd75ca2cc9c06fdec248b4fae18d14f581cc71791f8127db7163102301a54cf4647c1f2e6700582a87852d61c42a7be794e4d1fee7037c682c735985e0f83050c514a069e995045c7a0858a2e0302047c435bb500683066023100b0c307ec785f80642b2394422b78ef4f8f11f63d938efd89e73bea1c274aa959daac06696ba6252913ce95496d8bd33c02310093f86358e8e1b0b94a2c6c6a95e1b91304ca003b0afe820d8e19147c8d22edb33b9926eb8b34fc404551d67c0f953f1c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230061488b25538a67aa2bd036d67596e12c80b28738c460d78c5c52c7750fa46ae1de607e5e2da25fd769d2cfb65da26ef02303c10a654d99cc82318c41070f84c74b93294d98682dc96300ef997d490abd12ddd5bcb0ca5d0b9ffe65cffe2956ad67f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305ec10b89698e94519dff7f837dd363dbf5e913aa0df745c88296ebd67bfb04e0fce663204cf6a295e58aedf01986334902301417e5d7616aec889cdda1bad1b4c3ddc952d050e0deef39162b6626e528f7b85648240ee9dff8dd0c21f9a8d91441050302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300fb01cfd612cc9739b34d1e4ab9a8fc37c54f4889a39c66f54f99d44b70514f55e0f69bc2a128dabe478d155d0d62f22023077aee33a34357f62a31d7ac03b3fc0a182d8d6ad700d26856d13dbaef0d67b9be68af3982161ea5a86c171bf0be725250302047c435bb500673065023100ee11a7df7ae72c90218d431b5154165d985cfcb08042eb58730607509a6ffd24077c470df4c8d5e6f5b59a32ac33114f023012f7c4b92a911a40041a4a8f1f697a2a3951180468b8e2f28c2968784509ec89bb3c7cdd142e16ed53af31db88672cca0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230731bef061514670cba9de57e1505675ed2e35fc027fef3a27cdca27339e56c9bb198b18271dc6c7a5e48d9077e45db6302305aff0a5ce9e6b08b4afbf63790a546ced368c7d4974d6dcd9df72d98ba82c67fd98ad7857d17cd45680867599c1daf240302047c435bb500673065023100e02b0a24882bec9c012c1a9c96981fe56b7c939e4dfdb606d46b549eeebcc49f1a27596d7327b198f5837f457b23e6b9023043d9d8ecc2a7bfdb99d774c9e4bfa8de9bd9d6d47b637c01bb93fd156e8108afb2dce25fef6a604e817a0944ef2249250302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100808d3fe6347353635aee75c0b490cb1dba8469589d1b4e7225434d4ff6809fc81bae2cc3f3d77ddbe4dcdd22802d34c702307c56a177bd770d0d21877aed9436b61779d1df9cf475f1920bb5f6dee5fcda862b4db716a53a0de5a3dfa599d4f392b60302047c435bb500683066023100b392a7bb234da05e0b9a9dd0a9f001f51f71bbf9304cd900f28e021f243bff8a2e5d0dcc6930034a52bb7aaf001eb89e023100c5aa211c475a7f6568e84132d02366a5a0a5958d61fdb4d60c9c21e2e596549e9dd96182214dc3537290e554dd7a81c40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023038a5f91452b81f86645ce8d00c613a135fdc11786ef2f450cd87e353a56b67198891b7077f9fe2944cb15d8b363c5860023100ecec78c19e66d53b0e024e853877224850356f561779d0aa725636efd48b98d374fb8d18542d40a2afbaef05c804b4c20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b6de0a19826495f813ccb8736c1c1701e815ee21dca5fc339e7ad9013e5942f370be4b4914dbecf8036a9ba9cc0d66e202303bb5c0e0fff8a02d096ad3671677bbc20af84d078702a3fe1cb958b17bcd7a121da4ee6a6b3a02f5a22e80cfdd311c970302047c435bb50067306502305d424111ae438d3b8fb9d3352bd41cf66fa25e0d0796b76abfbfe07b1e0f19d283caba412f6956afaa40de06701a87160231009ea4910b57ca77c9b5fca0c6af4246de827420cffc02fcef923d30a3bcf06b7f78d78f4b3a508821d62ee0560406e11a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306a7ed0e5106b5c0ce1a14cfbd3674e9c727c23c0481886ac0bf9ec3902e907f23d9a22c82a300b0e2067c3e6b472fcff02310087f44ca0cbe33da5fe68595a99de8debd13d4b13698bacadd8738dc422c1a476bf2d67b1aa751d115b6c2f7a1b5f949f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023058a6858f19c91a23b938c5b3c819aad2d660ebaa16d7380716d8fb398f8ba74d7067ed52da43384faf6c0990685837aa023100e6f9f17230ffad6133c4042c43eb72d9704a18eb5e60a06c9ad7d5f10f3381e11eddde948b196fad5222d482386255970302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008ef1ca4c7a2abaf33fbcb0c84af760ed753ef98075b7f7e380256fab1f672afbebbc6c5721c1b9b6309fd3fcd16b94ff023018d152271ded7a7dcdfb23284206b985ee39e82b0aa1bccc258f0660033acbffbf06bf2cfa5a1deaf1ff975d41fd2e1c0302047c435bb50066306402305afc950424e2fe6d1393fd88db44d86a26fc2e846affa4f759254fd0e24b9bba873522679942d935ed145582fcd7648f02301ea05a171388a72e7b37cd5c0a27ce1b4f3ee73100330d246488d83f7732afd5225a11f6178e51b05384a18d8a47e3ec0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f7061b3e95c203d8bd0e6b54e5d2180cc5b90cc316855eaaa3ef295ad4bdf31f0dfd2a77e6fe8082cdcb145ba11c5b4902306fec51e170fb0d6279cbdad1888681c5c31f462a113aaa465739a283420779c24fc0fe1981e2f3ac8826651afa17e7560302047c435bb5006630640230786b965944cfadc30fb8b455dd9ba8de4f4ad3f2d2c44cf22f76b6e961303f233aa7067f8e6a0a30407e036865de0d9a02302d0ca98b53c8e2a65a1fc5b4f0c1e47496bd6dd9d6fd0ecce8ea3ef48c9173f073d802ce72b3046004dbfa31b0d152c20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310083a703a0969367f549ca0b62e824214140271038db3918fe10b1b2844bdd7b42ccb3a9229a2b3dcb471763396d3d4f09023100ffda607fab8c40dfa49e8f8ad49f7fd855e24b2de5f8e8b8277088596b9cbcf2ba42d3e45aa684665abc1196895fbc2f0302047c435bb500683066023100ee9ce1d5bf18ba10c732a28f3cd129dc347d66cf52d322e5cb4542faa11d0794d3d7e6a9468a06c82182619e2f3fbb4e023100bdf0a458bdcf7e4a383bc735fca1bf68ca90f46dc83c70d3bb662bf381cee648641cb8385fe16cc261044f37d265809c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307e555932ad26f839ea6a39e5c03ebd537926ab223b1d9ef3c0244cffcc3a4511078a24b2c052f7cf487acc170ac4565d0230171f241771e9a696a32cb1b03cf421dde8a9dae1504a413dbb6bf11b2e3bdb2cdd2c4e2d7d19250d3158131ebf5d0e5f0302047c435bb50066306402305174a98bac3d679dfb06f09722cb781e3ad50b6e55a9b521032abd6a47774a3ce58f72aa62464d3e64e14c8f0334f3e902304179e230c49c26e25ed67a7f64cb969c6bd6b1a16123ead9074647dfcd631750281ed92f81fd0d5de410149a0b3d09290302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b70f0a9ff6bc7921f6e4c68dba7e3c5e9d184ad2e799651b7e938f993619d6d61d439f674a922cf7b82e6ddc5ac4fe02023063fc804793c7df4c47ecb048ae6c02e9e9d50e4445d80a18eb6ff6057494f49ed23d0649f85ba5750856ceb887191f570302047c435bb500683066023100e650aacac664e32c696d393f9bf1bbd2a161a75dd9553fa59cd5aa006f89062bc77f82deec4b09fa912f320feb01b559023100ebad3f011cef149e71b88af1509eb10283cc1b8b733f803d669a51c2d8b1a3f1036e03d8b9e226211c318f08b52b28300302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100bc7fda200a67d9a9b1d51f31b0c76d3013606285da937139697d4321f0fe627f02495c5aece2c62cbcb9e6b11f2bda01023100fc6d44a2a743c583e06f5e13126716fb7c2ffd1c18dc1b6b42628e036b4d170058f10bfa86007af282cf77c301adf9aa0302047c435bb500673065023068678276f059e79fa043f091015e4e02eb4a305967af0369fb9011f9ca86e176400b75ae7a542f5cc6266769b050affd023100c34ab340c280039ea478d0298be71d2553d7e40db7ee5552021c42fb08f3c56f3a213fad8ba25b1ddafb9d632e8a06d50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c5dde05a78c9443896f7fc08f5117276fc91370544ca9ae4b6090d3ae8fea985c1156977808498b020baea9086bf5c8c02302abf7177c1f178c5defbd1748ecc390644ff7425ad8c1cbd5dc9ae8b361eb968253e6e327429b23541327c56f3382dd00302047c435bb50066306402303d08b728a770bfe7b79847014e7e80c3dd2597120947e25c28fb88126909ba610282fe75dc82b407753ab8eabbb74f2f02306d7eaf4a6084911094ebde28662e7fa52d32014cca54564f2cd14538f18bb0a5b4c76138a789c5d7636fd490421a07ba0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023008bc1fc971eff184892f944cc4dd14b814cfb57e4438e610d3fa2c114f48ecc920f62863602485dbb7f50bc4b8ef27b102303784b6b178f8fbb8aa255e68ab066a72013d03fbd6e2e069f885765c8c69488d0e15a17531fc564236c3c5233d77e8850302047c435bb50067306502305ee728130aaa31186fcfe5966eda60258f0be2ce7fb7ee904ad2979997fcbe4ea59304fed7c4583325dbdd044129b70f0231009b310c8ef9cd588166491bbf5ccc32ead02ce50c72125ea0f76b0978868535b6ae0ca0e9e186e0746348fe2a9e8c88770302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bac21ed0869adea7b6c5a5b9a2447b3a461ec7715b07931bb3724ababa1ef25593652586e72b5becc6f899c82218852902307a14c9c3c0802a78e1420a960838ef7b266a0bb4b76f4d3424da86ebb1ce8ab9701de1a3c1c7cee422e67c7ddf18b46e0302047c435bb500663064023023154daf14879011367c77742e4a07c24755e414d491dadf1340a0721b7d75a3825a8e3c1250cae7351322f882d8c88c0230199ffd555e9fbf73dac7253b8dc375430b2e9b0a74fe8f7087922886e50347dd1fb826166857f315be2fe88a78c43f130302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100eb173a0632daab0982ad815c2595a60d4afaccccba506f0087351a6a2efe82b0cc905e94ce6052b2c71481e1f589f50802310085a44f25081332fa749e548a12931b6cd5da15228c9f3c456ae5d19d3b0b1658be6fdbe1f4a87280709a126bdd76278c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f66e7e8b63fdd0c629b241db3d1a15de904ac4a99b8e54ffc78634e651affaa386507da9544f9030a44089f581cfa219023100d7ffb1e3fd4a83c814c53159d57720b09ff929d0651f40772716d06348e11076eaa49b144f2eb0b370ca1bfd456165030302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e38b22512f8773aebc2184d594e9756294bd317a5c19a52ed558d991d10b2fc42141321de01e30e3102816588b3f468d023063b2d271c16f4ca64ec27cc7eeeaea73b26fe2d14099551f1919e5f262d7cdbccee1fd3fca3213aeb2b0021b797c4eef0302047c435bb500673065023100b8716210d45f63048b24a4eb9bdd8726ac402a6b57bdddc497fdfd77b93c494c20f74c3ec08a1160a39d68ed566b4d3202307a5a98f1ad0ce59f05f066e4454090de90cd95893a9ed831e42082b3bf6cb10f5fc186c86d4c5a9ea74a5d32ca051a640302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ce30158b936b7aa15a562260d608ecd69514631ce4700a76d6e3424018840600c75730c2b2297bc49701b74851f4381a02301a6ccfe7c724120129641b82a3dc92647c1280aee45516b7a7a749e2a1a3d88c983ee1d7054680fdae033b833ce151a40302047c435bb5006730650231008c5776bf3e7bceafe1d2e19905c29b1d2540cebbadf1fb13ddce0cb8855114e2e9037ad1279ed81d63339713e06a6c4f0230215ec871bf92f522f499fb3e4bafadaa54350c47ad40d6f6b196092586facf8c1d07d74bf4612c5550a28ae5f7d8db1c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bd5d7b3e38c5ac698c435af2eafad91712902540456edfbfcb98746d0934365c11a2dedc18dbe8a97edf16de8337958b02302605f12140249563e355c3346db3ff1d38336535a61a1a433a270a8a30b6c783c41a5fc5a34daf39d4707a5c0870db0b0302047c435bb5006730650231008aad9a9697d1a362dd236564bd9f2036d1cf20c0b811b0dbcdf635ccb0435ba398e62ca3f052170b07a8da706b074df50230776d90694e01997bf71fd08779684a1f47eab723597e9ff22316f33e8c8f420c1d9b43cd346abf2aa8b93c359415dc5a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302ead2bf060ac57bc88f8fc846ef4494323a28514d45aefd6b8cfa91d62fdaad6ddc66a9b232fabdf29df548851e0036d023100d01f014ab368b9a99c78def5319ea5d7b57e1f552e8a0e121f903bfbb9b55d70cad0b548a1032e34cb3b849953a3d12c0302047c435bb50067306502304450be5fb60fa23c12c6a43d7785711f5f42bdd1f759c2f26ea4c8b89ff91cbe79ea3e9e88ff3cf4a51825f8d7e39b4b023100f6fcd74163452c6aa2821c028c8c7a051e0dd978a9370b9170e9dab951c3ee56ae2eedfcc306f550b5357305e2d0ead30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023032036fb53887d67c6549eeff450315e2c0afe9d5bb954157a2bf0b0a692306c2d945f565dd762460601d4641e6064b4a023100f2877f7ac1e56a2a767290930d1b770a7f5e63f2bd7650b74b1e755a38de69a945d150fd603f1aebdb247ba2d9ab34ad0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230529a3d9791943ff1ab9fb84e09b8793dc35b45f43df2121a053fbd6d61df1c2eedcfd32b06a8f5ecb97f8209a97c586b023038eacb13c9070435dc8d91030056d07504f7d277c9979073f4dad23df688b30a81cfd8a073b2d8ec526957d7b9efa0460302047c435bb5006630640230087d899d3b8321fee9f67e847a49dc3ace993dc9fc1b21f3da3e853978976031141283d639447b5cdb0224721b5295ba0230337ee5457ab6303e84797220195d30f3a1c39900a5a5ed38d8b614211d103dc3765420a2130dc19d87dd7aa0dc84050a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d7db1d4d16ca76cf99336184b5b23a393286860bfa19adb442d30746a9e46b4fa003ad54bf9dd30250f0d612f1c986fb0230262cb4c4972a7180a54f744e3e2d0bdd9b7540b50d766d82f86647a25497b3882e784d605be4b59fa9bff5fcd64d91e70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306baf0762b069c7f9b5d27e2df78c1800b05cc9d0af5aae19eb086faab3585e1343759549a69a31ba7a258f3d787dab3102301b6df9208be145a10afd53daa9fe04bebb2461d045b9266d031ba39cec1e8982599efc38bd7aa52ad675107ce0c9de230302047c435bb50066306402306891265a6efb1f298d8727a08d50f8fb0833b5208f16c082b0809d86cd978c21c1cf15ca718c956ca7b2a011ecd26c4502305ac5a5c62f7ed9ff904a7bbdcbcf4f94bc5b3ac40a09499cf25c5e37393444e03f11abe9b74451f6062f80e6775e4afd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230603a7e2e882abba46063d3bbf5f0d0971e8d62c6add13f343aac44ef30b7ea37f7bb4e56e0ef9223c6fd39e73f7366d60230651a96f31e100f06407635eeacc8a401f1eb93dbd3fa1ce129b436e1a07f1fb90b35c27a310cb137967c431428b013cc0302047c435bb50067306502302275fc1e8ebabfaeef5b752b473c984ce10c650516d816360984a087071af121d918b6166b189546c590808f1c75efc6023100b3631d9008e3690f9a612bebd5da2910b67ef5ad20c25cb0a730fee230a94ad55e110786a95609c43532467968faeeb30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023057e8fbd04c75fa1cd9dfc8b2f581d1fb8ad8a1f08d06461332ea7b40c59848456a9fc24f294c49f83ecccd7f8c89c126023100a8e850fb8a64f7d4813465e81c9f918088e29482c74add52a31a4f1465485f5ac8bf1afd24c12bc30d9f6fa0d4db89390302047c435bb500673065023100f0eed8f9838388170cfc36a4890890aa1e1ad0789aa8557d8420d8843a4a66374f712d2785ae8abc7b60340c2968d63b023049c2702f3d47b150c505faba6642d537c470edffd8d0eae4a2f60218f70a1d17cbfd75d2a0cca9540972daed624482430302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023035ee841bb71baad43abbb7164796364294449abe1d14eba25742010412fa2afebec73d2a6f06e93fb690afcfd98f53bf02310097a752662af78bd0a6f3591d76c423995fa2474c6ad697d6c71e5577f25de6e2113b808c734aaa561027f05354de09f90302047c435bb500673065023002152b9451287df161e60eb048171303bfce8d4aafc52be469f7b1acf256aa7c0874e00d4480dc560e14c9c13ef16551023100aba853b9fefddc95e58aa4f4163fb5fc5284403869d7386f46e5a6a5ea872320eedc0533748932bc060f43044b324f1d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b3b81de95ea9ccd343d055aadc5c1d93b9db17070d12b6524e28498ead6137f4770a8b16fd6c9dd4834984148456c1a202305c841d4ade21ea803eaca5a3923a87a38c2e42bbbc4803f206a05f2b5cdad6eb69c7a40ee5dcdc166540d1bfb22635420302047c435bb5006730650231009a8970ab81c497314fba58975910a4a4e91357fb135927f5a0903c5c46f0319fe0525d2e7709f3da9b3f2fbb415552a4023009a519b41278de4a2ab736972d0bd419455e15e2d144a0ca6d7fb6ee4ddd4378a1b65c53b3876d7a7444e1272c20ec220302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230367799d9e050cb72aafe3309fc38fd1cb2666d828c9ab91d8ec65fe443971c76c056006a76dc9574a67e13d23ea66c92023100e8cc18e9ec2771c6975028178c80e22bcb4f953ad685172e3a4b104d7913a7e6cbfa50e3c32e516781a6de44a3596d480302047c435bb500673065023100999cf8d0fc763cd3d0afbc8428ac39a3dc9af68c1cea10ce91db4dff5d6ef812eb904e561d5747178887666a92e8c71b02300847bc7389bcd7729902d325f2036fa3cae3fda0af0af8e8ccb7a08501f087ba70ec7b70eec87011e4b4032188ffaa2e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230009bc492ecace8979c90b41c3883beb17284bff075831f44fa475d332cd53c66eaf2c4c30acb618842655aa90d242d7b02310089dfde022efcd1def61bbb50bfa79b306c34b32f44de1e9ca13b8106f626b66d6f05ffb1b2a7a6e67f56da6cbc71d49e0302047c435bb500663064023007b4949e0a3603ad7dbab7f9b0a0849849fbb0ea617dca6a979745fa6db735d2f0faf1f29bc92d5af73cf87abbc27da8023000fe39aeca46baf00988350953b5cb4fd7de51a5f3166b3877af17843a4c55aa29288bb66848d607b61566ffc3c404000302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023054b5f8a2281299653afc4bac6b38f402a4e4dbd16bfa3fbb13ffb557e2e4676e925a72e5c653e0f75738a7b90ec7c48e02307ca36ba905ce7172ca49e757d86c952a9683f379d32d7ca49f0b792a397f285762aeb78c61c35f4929aa8f747933be660302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230151201ef86e030fd442c9343972d8246bffca7c0210657c16d49b9a25afb0e54fdfab49988365ad13e365be230045b230231008cc086194f2edb92906e4f9ec510f636e0c3d39c3ad81c83376afe25a1629965131437ced781c19910c752fca87aa2ca0302047c435bb5006630640230296de199449d3977c93fe6c2df12efca334446b2c37e980a3369e348c6c547238f12a3dde7a283313b1e3365e45535fb0230788b47ade0b106822f9bd90b53cd83f20c0591475a388055f6edddc0dfddb27178c5bbf638abbfb0c6ef5055e86997d30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307a83030cc8da9624daf181f16597b438b83f98e1809959013acb701e67c91bb3b92b427e508daf7df5d00bb53b0c3e2b0230611a56b2af206e2ce2a34411e960b7b3e7a5b93f3ca5019a3b8ac142eb087baf45400b37591daad107f93ac085e32fd40302047c435bb500673065023100c6fe15a3172a2fffbb51b865e66fc1be8785d3ae19fb2e2cbd71d554e33de3c0ce6a70774e9dde26226944b3bd7aa3df023016efbcee1ed044588d7afb8fd4797c1372b255894d611256286b7e02f94f3db7c2f692efc4579a6d85d1dbe2f3792d140302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008fdfe3ce0d9f43eda7fbfc1a2253a9a3009615073e8a136a354b33863c0a9e7db6415658f8a09aba083db0aa21f7a820023012ba187ee846806a84f0d63ae4c09e267fe091b821c24f2222c65e0d5a669ccf49ccbfe3066742297aabcb072b1f65170302047c435bb5006730650231009018feba116c019b21a7ba9268ed950ea398c59daa35e158481e82fe13af93a79781836228aeb1452226a4c775647967023049e42975d4074de850591717a465cad776a36cf95aba9aedee0ce1323f0ad3b1a1b950c6cbf724aed7343cb66882634d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c4b56a59725f35c8232a6d4e748a5a0c0985c3ea93bc34c4325624d17490e85e5e5a495bb424543185d4d865a3dba6eb02303ee1e9e34b21e70d468fedbeace6faaf1fdf9becd013422daea29b8b948b82f22fdee4e211b95a09c08e2d80b122fc270302047c435bb500673065023100acc3bbb296342ce4dada1d8f15baa3a410e3bce536653dd10deb3272cb91d07ef26e0aea6bbf0990c9f671d0943a7c9702303f12f62716215392248b37cd5d5b81caa3e2dc19d6536eddf253bbfbfa0f3d3407f9b087cfa32f9cee96623b9d1a15450302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023011cb893520d87f5efddbbd2fff47179d4eba128a80305f14923e101f2d30df36f9e86548262c0a1e8c6404f58b8ddf08023100dd45f3eeac3cb8838481071ce89e5d7a455d33d86d012d466580db0d4b0e1d9161d6b96c4c2a966180bb4313077bf9390302047c435bb500683066023100c7152caa1d6f83aeaea8a93adb9318a0efe6ac6f47ac262983a7b6f44280e9544de0bf53c2e26ccaca2ce465d5560dcc0231009a4ae077484d81e8ef95894400be8c3e1fa164baf58d5d8d8b5c1e308bece180c4aba59b6613b6366da4427b5efe8c000302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b46a606e2bda9a2791a2147d37f740db64053d2b805e5c4f4e6b9e53bf5c42b893a849a9530aa08224e1f828735c2baa0231009805317f211baa81dac1aef3bc826e355a7805d2461257a90f9d26ade4b5c87a799a0c5ee61cac430ba9ad4cc4cfe3340302047c435bb500673065023100aa5272219d08e1df09ce6878922b9f895b85a2a3984e005604b0ee45f085b0fea1bd90c07232b730591e944fe7e546ac023007fc5b73ecb383d7625dbbbd32a8cf7790bd3979db8bd5f516a4a2a9e886672cfdab7de160dc516de1a6d8dca4d611b70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100adaa84e2f1e4382a02768a58b5891b01c28ebc4ce7669ce3b014385727ff0b42be599c90b09042fa462e33a8d91f273e0231008fe184f0b3866e84c5021483a1361cd6b0d8d50fb241a569298108d882657fea7a1640a22163ed2d00516f49ad9d7a7e0302047c435bb5006730650230715d19a6825c0dfb4ca1843161e36521c36ede3623baeffd1ef485f2818958baa3149dcec03e5b446ecade0d2fa1cb62023100a0bec41fd1fbe8285e4e9bc50b3da4f03b72374ba935793d4b61beb936d9796787663a58494af5c4ab1094f640ac0fb40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023049458f173f5568e466b43cfa06635e0d9f20a844059d9c46ba90a9be466e3a1f9ac5676d4c6f25430963d8c4f36dc5c402305dfe5f71f080433098a81cf93bc9057f40d1bd72069e88553e9d16999963d6447147c06175de566e49514e0bc82cd1570302047c435bb50066306402302ee3f4f7fbb0f4970d9d96ed9eedcffdaee93fb58e1dd73a11c1b4c05d9cfb8623fcbe779799f3832a67b093f910e7b00230605f2dab2dbab059dbb138a2b364854ec154858fb3363125094f0db91be0f8cb364490a5d0d2f7a745cdf878b7f5255f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310083de231e389b69e27d3ba6c1b1fd36a6ca987e3e505eedb2f4a28e33afd2998b51f87e89dfe1d6660fa96a78c3a2220102306e25f50878a9673ff021dbe0cf0d97d04d95cab368d2795e8e5d5098e4539c736470e7b31c0c131bf55680fbdb83ec820302047c435bb500683066023100a94e70144e312c198e112dcde6ecc67ff3dee0c64948353a494f929d39324f7ceb8313579b710f9d5a3ee2a11fe692cd023100f83d25b6ff770d07961cfbe1ba067dd552d92c3e7bd67fa61bbb92078ffc732db6a7a54d9a6efaec4e9e4722d7ac551c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a509f08fee46c754ab8e2b01f4bac59bbd18c25d2bd7d31ca19cebbee95984e6095be9723f0233e7d62d5755f0056dd50230351b430f9e76c8948a9af62c8a64399f5566f7ec7b2356c7e7976dbf7d6aeafe113e7aac87850d620fe17f76744aa9510302047c435bb5006730650231008eb8a5b05e631ee34b764d99138048b13261359e32d9103799aff4ae4d9df5e38b2410e2556c2c86cb8398d5ddd3810a02300ae7da44908179f4957846537909feffc3cb5da41224c17f9f89d9c6c335341d4ac008974ce4054c5c1f0c2eb99a6a9e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008009343d140119937ad9a646595dd9844a6159d30b90c3b6567cd2ba69f7d4bd667fdce39d26995b8153083982aec5d302300797fde18523533701e474ea6bcf7ae7a58cbdda26b9a62efc5f916e9160a1ee9664298c4bd4b1c44a70c87e28211f990302047c435bb5006730650230151bcff101fbc4b62f64d5d5f45942c57f642baf5d91ebb0eaa475821019b2b2099b0669f544cd8ac131c4c74312f449023100d1cb078f53031ffe0c2fc6342ea19578cafd30ffce6783ee80f0841db7d309177bb7f6b2ccd58d04d7fd7c58655975c00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023005979da669a2d5b45c37fddd67f20812dcb1bba7fad69b554209964ccd80881c56f7278af6f730a2d8c17a52f77d42a20231009592ae5a254e1bd47d2eee6624f38ed18327074453f52d88f0e26807cf9ecff6e46f1cc7339db1adeb84132775e8f8fe0302047c435bb500683066023100d4113f31dd1041ff2822c924f4fa1e0667b487358b0d69f1e0a994af885cfaa5b9675b9cab7c632ffc9e180e197cc8a2023100804ee03916049874b67de808773fa58598bf6b181d6aa0c42536a050ead3e5167cc9f999387959c6be603752dd9bfff10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b71ac7214641d796f7836b6b9267dfd50b9ebe163ea1e80c782aa0cf9e1bda6f1d82ff0fec3a42c6584223742025c8f702300aeb801c38b5e887c795161ce73dcdd00b9de61d0cd72bad15a4cffb5dae59a8e695f3b8562598e3bfdb0f6947e8bdee0302047c435bb500683066023100b81264e8a1c888eb6c824c072e5e6440f58510fbac7c797e03f1f36e3799bd84936dfc662ba74f33d38676967f93c1fb023100e70a7f4272f86ba947b1f5fe82d86538b0810503b229b663f967ad39e98a59ae37622c8d2f509705a8c6537559273a580302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100af95d28835fd0f1962c4384899e6f16a30e515c0b9829806a0f6a6a601819dd32aea104994f68063acf15800078dfee90230154fc07c81ecb3c980e58b6aef0c5699ae74584deff90bbc7901e95d252725f09b07b3f446ba9e0dcc2a9a7f21c774c20302047c435bb500683066023100887271e5625e8dfdd5be89c09d7a79768fa2500749c96af556d9863f5565e1e687a0cbc83de9c35dcefa411eef44ba9f023100b44849b1ccd187511dc8f4f160ac4289c53c63c5599199799480f6c74a14b4575c591385d8d6f2a9f04ae2fe0ca9f4f30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300ecfa88b68d17d552178c15509d051f85b38a9d71aa91b20baac171ed30f47668812f56add5c6e4e86e6ae144471005402303a573951e12cd0814544cac12ddb483ea5fafa9872777e77a27d574d996b89c6519bdef4afe1010596fcd4cb3c29a4430302047c435bb50066306402304108094d640fbb2051b5fb7322d4a5380104f78b3c5675654559ed52b05c9cb07714c9afeeb27f814a00333dc81a4a3f02301eabca611ff4daa1a59e3b0c15fe43373a51295d31bc10bdb38878b3c73a7e8ef6a3daa7ff4c2eca2dde185af12a8ef30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cf18d118212f86d22d28807060b919f01207b655b52bbc79c9a1b888f036932d6063edf504aa7307b03b1973057ab3d202304bc0ff785d1723fb1b78db92b32eccd731a7cd984c0586d0fa88a6df82ed3bff5d89efb976cb3bf335eff16e5e9bbdb10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304754a48aee365e12108b8a82cbd10fca706699cd22e709175f642eee5ed5594a0c1a6d787937b0b3eeeb95286b8924890231008a3b27aa759fea3ff9ff6ddf50867b692ac6f8cb2c2d41bbfbbb75cdf7233bc89ba0c10f50623b1f91e08961565f51de0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307fa8554f99ccf11110310997c80e197c4b727abb5fabd26c0391fec7a4de773c9d7ec907999d5aba2dbb0b0fab1d3d8f023018f533f20542186e2b716870d963c7e5db28ac2cc813f810e3c77d12eb192ece1cbe720b8009ce60d327125d4bf6a1c80302047c435bb500663064023042f7643cc9216f6727300700c16ce1bd0d557340a8ebbf5a516d081265ab861ef74840c114cda943752acc30d77a391c0230665314d3afe0b5ed25b91b06e22348aba2294169a0c747204e54339063201e56c1e253f503e661092951f6f28ffb53890302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c9deba82d0e1789a338a9c05ffbda1ec38bb02ac69f9acecbcfab8404fa480fdec2f28ad4df7e7bc3cef7cc0097b3d9e02303a5a93a551ed84011606a3ed35a287de479b262cef13764dffe49deeb12daf7513feabb44fb10375ff81387ce038dcf00302047c435bb500683066023100eeff8bb0c852e257ab873a5187e0ab3ef13b43263abf5ebafbfedaca0223bec39c544db8b9e4af16d4076c7b9226d690023100892b02b8d093441351751d5f7532f3ead6c691b92f97622704f5547850e9476a502b339ca4fcd589efc2f5cafcaef1940302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ddcea3bb59c30f38b733c7274192ee7e304c079215aaa8aa439fd230e38020e9838830f4f21ce5fc50f192ef1ba6c82b023030a3c9af49600a9909ec2cadda450c2d335a2e87ffc64975e520269a5ecd3811fb4a7803523c87960e31c85260776dc60302047c435bb50066306402304be092cdd8b76922c14fd95e2a0d78d9c85d2d3a1bdad336e01cc066098f7f7ac6c37669c35cfefff0ae61b925dea875023050c898a923f6017e158cd54d3261f21503ae62077d9b2ab86fc20b7fadad171be139fc3e4ec84d10eda69d090738eb8e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023036fc0e1f18487e7a0f2b60a492f77ffdbee488c68e142a8bd2bb7576a6fc23b2cc9743f627c8cf0854ba347925acbfe302302e7daf91ba537d2fa89b6bf842be2e0da3e1656e119654f898e4c27ab2abd80debdd8e5d4c7e29be4959d7c1120a4bdf0302047c435bb500673065023037c13be92dd9cdb6cb633d3d1b3c709058c6bbcd6a0c7f932d95360a6372badf0e25f079030442737036a43ef2291575023100ff01f4d4f0e54d45fc3f1c118bce69f017f26f852de01cdbd6747b44d6d936fbf1b30e98d3debbf39e608cf493707f9a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023060e83e53e8bb4e936d8f1944f03a35dce3147182537c4e807a8981fd7757e32a0832f0184480dfdd7869a91e07d31d2f02305fd86de6e0ca5768d70fd8b26284609837f2626e09fdc9beac494af5045459aaabe76567fc59fdfaab2c375eab633fcb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304cc5fc7babf673932ac3d00c6f706dac576de8f18e9f2edcd95b5362e41ba74f9dcb3b62778a415a37d852430f7a41dd023073f021993e6f325608325a28e3d446abd598272ee1d9a6d6e21a3a0548571aab1810acd9011670af01036c8693131bc20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306741e049b83617aa2fc4c386293443c3a8bf6912081ada2f815ddde25b60f0e6ef46c8a6778bd061231c514b07122a6f023059f7481dd596a0f26a772bef494f245d00a13740eb1574547d5928906eda5efb93e7982852d736da8cf270923f13c92b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230035ae0017514804c3eceb1a1d1476e45ec2416d25bf252cc1fd08b0fd10efb354cf17ea1f2f2fecd2ef130d7610ba44e023100815d55e5b7f75f0f29de7e12b9d1b3d77d51375a7a4835e2a6a085a42093d49d8023324cd6190caa22f684fb9c99627c0302047c435bb500673065023100b5f4baa8c400e341105ec822740fe713f2e9d77a3eae4fb8501f69d00a6f4afbead8fc7ecfef987866261c8ec475ca6902301ae63938a7120802913b5bb9273fac22a3e7173ebba7a393cb49059916d947cf364a8c1ed4a0419ee8d353779e2b2ea10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a559deed7c793a16edadb8c26b3b3d8437e66adc0ed93aff4170558415fb12de26888886e4ef1c0f427f701925b4763e023100d6621ecc88143ba056aa0efde7740a42b76bf983d8eaf11392934d4c9c2d0ff390de22e403fb680b7282086da18c2bac0302047c435bb500683066023100ea22a9fdbeeb6fc7f4986e266cf73441777f2d19203bfa2af6cd1ff65aabd75bfa1a450c0657cd9241bb931e81395de7023100e61fcda8534ad4f526ff49446494d0c6d9fc99f5e02e4237f831ede24ff77d47a7e986fcca34c9fd23214989f4565d300302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008e23a935dda6809f67c2b598f3e409c238b108903514b29fd4b4ea5e7f32e0a27c999a0a5386c825c563b0848c16e8ac023042fa3e9edf8a2c216020ec39fb13ca4e01ed453ca6d5f9e91f30105b97a16b2ee90eeb73ee21c40f3d8e33eb86cc03480302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301cd624ec99389d95f8b484919c81c8d2a241c6de2573cd8ef87d9460b88539a868d12e001747b6a01a73a87a19a4ad00023100f9a6f86c5bbd821c615759d85ecc9647212b846633186e7a729674a0b2b98e006db8139fa8bdef3320cf2fc33b4c47010302047c435bb50067306502310092e4b7c0d2a0eecef0ea81eae8fc09e18ee768eb4ace5d5779bda65e5576dd059935332c25085714c5e8d56cccf12c8302306c0f6730b1da6f73c4138a0830bcd2f1619a51a32765533bbe17be74ff50a4a3db3563db45cb00f8e2df940fbc1d21d80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008cf54717cf46601145cb66149279b03c16f4c742bbffdfdd95ba4d11c2bc0398bc90a9c78bb53eda2a08c7c24033ac81023030954271dddc716ed75da88f28d1330fb199ecd72e08c024f549d2300e503e3ff01cf7e5f1090dde2dee944f4dcc1dce0302047c435bb500683066023100cc308e508bd8490ed3b424330a75842ab420a2cc17f7c488b2a6baaf7aa165aa408bd30f7f1bdfbae4a083d31de8d706023100be6d3df40b7903afbe32f087b4b6e18e1ecea7c8b2b17502d64cae656ee7360cd03d11cae674685ee3b49e9fc0e62e140302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b0334ffd7821d534b480bddfb24f35444aad2ccb9d35a968612ede14a3fe310db8f466970e9dc4984cfa0fb9f13b5b6b02310097da5acf8bc9dfedf5350da1109f3becea26a46f61c76078ab6b4f11a12a850d0640bae17957884d77b13900d181cec90302047c435bb500683066023100cca334eb14bbad83625152ea16af34ba52151a43007d289836cd6ae5a77558d6d1bbc3fb7795fdf8962e12ff25cb6e15023100eaa867b63dcee091a51b96fb9e854cdbadb50cec004d0c516c27bfc31e3ae2cf9e19c67d21690afbabbceef1417268070302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f1f3d4affeb21a842a9cf882d8cc5882a0ddbc35ddde85756f8f977faf531f8f8e9d333b101fb87f7c214cc1e5667dc6023100a6b34799b31c51dee5b598b83378da01e4902d6eadfda3fe37244a896aafcf55578a624b8e2420b79a817c3716514c5c0302047c435bb50066306402307f5d32349abb9263717eda22b93746a2eac3719982642235de351274b7c83d686d05c59c4c8a10a576e79922009def8f02302fc9aed7c8173f3b8eb7291737b59ba576b03a555afa49c2ccb0fc6c0bf48f2d931419e39a3c814e45990ecbac2425e90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302561564b7a731e05ce02bc8946f658243c67740458bbdf5af4ac29b3987d957d4be6fc1a65de3af81a3dbb2596739d3f023026a273ec8457cb348c40b3dfdc6932b978d9495cd4e46ca08d22ba139b05f6fda9ac51b3a5ad8f3df9198a5279d5e9f10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009c44b5252d16ed7fe7c1a45ae1a2ae909f60eadd31c67b662fa379b325f327c50168ab57783f7746d86de3779de30230023032f42b9ff40d9f3dc066647579224999c0b98a1c8f925e985d43e3fe0f84821a717855cd31c475427b963540d70293ae0302047c435bb500673065023100f4722b87f22d7f43f647e13bf5fc918008777bb511935751cfe468c4c59946effa9b6ff571f2576b326aa90582f1c3ba02302ec991d80815ad379514fa9d2f2a0f04ccde429fcccca69d397f56d27298462a4b97234ed099d8a3c99e04cdb5eccb0e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304f04aeabea3086f04edc16235f1448698c52d3fb8194e0d9c2678389d3f6025d8f95233cc0955aa566f245d246a9fa3502300fb64ef5af1927b4757198a51732b54b4d4119da3cdc1cd2eb0d56332f77df799e87dd9c216f893ed9475064e84fe0af0302047c435bb500673065023100eba6eae207e3687f07fcd22df2928187eb67a7266683869a6e7015985ae47cce5dcd64ba2e86433e59f95d9e8f0fd67d02307de624d9e9b724173ed74c74e997c46b029b76e226bc049b8e3b93675fd0ba49dcc99bd1f4b0f0924c371bdd1d1a9fac0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023058ba158ac5a262aa4302551c9fc2ed68f2e593e81a4e128f488db9e95104c1b6e8e8f050d66c3bd4837d9afd6525842202300249b81cf90759f9351edf7f7759adf2b421f6f9a32b1a02cb1009e9b096a85f523911b4fb7bdd20ae4d4f457269c37a0302047c435bb500673065023100c4cd66a259b3c9991594e0b7f938a1969416546ef526fbbb315186478f4c50c389d3462445fabfc690c105a149b3d6d102303169553f12ca9f6de1bda30f2a78495d4494b094a3ab013a208b31594f672739ced7c722243fc15d9ec552ef781535b50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300b30046926085de38c31a30ad6164d10e0a154bae05d61b2fa8d8d4ab8537a42b4e18546b13fc775b0d88efee8b9e9590231009c1607661dc0d47074ca148bf6ea7dc3096023f043daf37e41ef58755928881fededecd610ad3c6e7f8461a3c61db9510302047c435bb50067306502310089c19380a4b2ee1139dc6f0299a73ad477900cca712febaf8f8352cf6b008267f80d1949fd0033a834ecc7ef94d59afa0230214cd81d050d060b6d9d3a325eb307b67e5dc579a34ae9269749c5926e76673b284fe375d60a3685b63057abdaf8059d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023035360662edeaa76b5c4c835523b54cab70dacb1e52330f7f5e753f7ff21515d357b859a416d7a638f05505439046aec6023100939c173e4b03f0e7aa460b123305468f2d12d42fbae8278ab11fd622b77847cf4e4e60a3ee7f4be8a5c87d8258cda24a0302047c435bb50066306402305099798b4b0e97ac8f6ebb8fd93a326574a4d72bec3825e3837ff825b591ef816c15f7bb6c3cb428651a177f007873be02303916c554c0d93499d36e0dd7d82121a92377b259e157aa7b4c62c5be89e72a09f4d2e4961393a0cbcf7cc5a2c54fdd690302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100843102697cefa459f7fda627f708ebb6ec6b495367c0ff301218ed47c4dc55609ab9bfcb4fbe148632def7225ca87a840230350258669458d9c54187d6b227f3f27d3e1924d50bd8e1e0962d53bb20ee108036405e83d94e769c4096a95320291f9d0302047c435bb50067306502303dd4741ff44f6bdae589c532cbd47adabb50eb05275f1373b07198e4a34696742a1cc4053b4c51220691333ac3550acb023100fffea0068f8617e7816cb63ac2676aad50449b823518144d3a0604b30540ec1e71e889729bbd5376564f5238a79c43820302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100bff8b5aa7a2719e66218f390c86e79187e409d69cfbd4c79bb5a22123d4f1ca3e2a6481f78326902115ffba9647693a30231009ba939c0faf94d58bce00270695331cf8a7d288382b577a7582674e40c77a45f19647774717a176b2b55436d20f9f0820302047c435bb50067306502306fad991df9ca597c45bc8a44c02a14ec7c88bba073da52bafac4dc49a94036b83cd6c83ae48d42c468ed27f75ee93f86023100a28a11f09e3f0c092470df101b275dd956c265401f399ab53a0ab46634487c936154e8e14aace5c7e82eb97f9ecbd3f00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a6ff7d5f773351526bac5edc9736cea66fd96e0d9f13edb733a0b19f725fac9d858fef4b040dfb41ae061936b0c2e8e70231009f1daeeaa8c39855bd4b6a9628e9cc3a21c26e9a97d4746a5fe87befdfbf946107dde60e11f2a87d9fa149cb6ed97e3d0302047c435bb500673065023100feb27fb7b5d1bdafe3741d954267cb0a015d69e8cec68bfc5594a57ed54cbce17ab7de99affe24cf1cf58cc893d2d2f8023014cf0a36d657072860336ec3c89b1a30ad85a9c95cbc24a8a7eeb5a23d2f9aaf2dbe264542c0439b43441472d76a9e360302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d04d6673f08651fa806e5991ffc4e18915861969797d453c15931d44f63d493ab3d859c537940d5e9cc29ba473689cd402305b6bd5588b9f634c191fe2bb676bbb2b95134249b18fd35ed990b1fd2812bad4e510b92aac0efc17cb7f66287fe332a50302047c435bb5006830660231009369119eb3d6a688510cf13b2a6cf4b9494189350e877b1902faea9cbcc202175c1841cc8055777297473cd2809bfb73023100a9ef41560f864cff78cf68444db8a878c02d638cc02d8932c9a2d5ac015a10ab367ac5db0d3f97de3cb58c6ce42c6f5c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301c895389479d13cce72af4bb4357cf007459ef6b077378244fb1a46404e2fc019981b0950789a211617707085e29444b023031efbe268d6be50ea3ee22a91c85cef39376941152f80bc6de84e0cd6221a9c122ab09c57ceb537ac887b482b6866a800302047c435bb500673065023100fdc269a242bdb377cc98099b8e109defe18bae7f6dac1d0d7913923051d57c4da4ae9199b73940fe49cd6750fd819fee023044514c65fd336f30c7d9012f90c2c343f95329cc264092dd7709d2ede2661d29f992413abc9a94d6f18ffdada6219bd40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310094074042461598b4c2d93527c28b5cac750024a02cf31f25c172a8635c94494ed0cfd8c8185f5e7c494493610a0fe0620230329de17a30651434f28fe2274e1dd2bf6ddc8d0944ec8128473cd95034c2478f99fb29a92ea3a17763b39c68678388910302047c435bb500683066023100a45b8ed9b3a90444897620824bd9e6eca06470d9a22c015d19e974f7f74e8331f84c8a599a23073aec60aa4aa25cd8ed0231008c984690861ec5f7257cc23aea61b945c51e2c3929fd462673e5bdda9d02112ec7390d57dda7d1007386fd4042eb9cca0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009914f91e9535d2ff12403e589124d65ba636132ca746aedb98e249979260521b47f769f5a842e263b280bec934110b7b023004f3473b7ec0ee94de7a0108157f8ca8e194170eea904582bea49fbd3ec5ba5301108b22ee9a20977840ebb9b10878a90302047c435bb50067306502304dccd7387e3758ff22f57775fed894d80437a3eb559da68fa11e00844ab3f7a9a400926fddd3e1543c5e755fee1b73fc0231008e61ee17596582f9ab9d2ffb943f8366a7a6c1f7f99cfd18905a14b3ca7cf251b55142237377eb4edc776074118697e40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303e1bfd66d8ffccbe17176b318de0fa4d34bb46ee323ff9c00919e871b4a8c952af82393f2570cad15b69f6f3a4ff07f6023100d03d1d8777eb777ccf63d59b027117aa88254a8b530c527ed3253080c9c8ac8d46ec5c881fb4995a7358d0bd1d31973e0302047c435bb500673065023100b6aef313a56d0868604036f8e07c66a5b1a36e4fd137fc25eb81adfdf7e79113cb652f59b6cc5f911e26b81fc63d407002307f474bae459dfb27745b818fb9531cb1666f0724d4291fa59df03fd886b687e15c639cc055dae348f9378901cc78d1fe0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023079b8f8674263e9a7cd2c6e1d8540bd5b57639b3ceac7ef22adae361856437fd671f2450d8efe5abfb11ca3f4c229d0f5023100d7fc39dd9abb188bb45db349160031b86029756e879dbeda0dbcdf349f26c7eb03f288dc9a94cf257b8a1c31e01d8fbb0302047c435bb500683066023100f2e9ca49e955607e82455f66aa3c05ab2e366845ba5e21947a70a62ad44b1947336453d67d0d0d30ac012914ef897195023100f90e699b901d21e2b1771bdf95237f492430915558c868c032955e3a9fc6b07eb8dbd4f572d5ff56deff88e208940b1f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100956c6fd8a70c689ad39af49a468834437120206d64d7d2c311120989028bc414f79e15e5e08c274af19c0b19c40ea114023009f923c8d23a8e544ece032df053c4586ee7263c5fa84506a53b65a93c39269c8979a0029fae9a513febc4366c6f9ebb0302047c435bb50067306502306400d13c50d734c1f705922afa5d9278ef1f869c36aa19c4dcc984f7af57fbc090cdf4f34f683779bc964326d2476f4d023100b42733f4c7e2a487b45dc2f468207fa31730b4fc09ed48687cd3c299f3ed79a3006b9e44ae5cf4c7f1da7707df621d380302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e0612444147a08fba1f0db3ecfb6e91b056bbbee5f2f86d9601623734bb5d46b0f03c1a01ed15c74dd8e0ed956e6fff502310089ccfaf4686bdeda9037f54148ad379a38b56a35de9bca3eaa293fda0b6c27a88995ad9661e213c2e0b4501a0393b3dd0302047c435bb500673065023100921e54b8b07e4c7a58de40b93ee51400bf064237991172a169b4ba5a1ce7f0090b662a26cfd35c2a1c035878b6263bfd023069a21afbadd1ebb930bb6f39616859b11f6b59c209f2cd6bcae5b699cce927904e50c5c7145700c78da0e574d25d50a60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304bd959c0c8f9b38545871fdeb647ba9e645b46b2e79218dc05085fb8ddc79393771676811ecf870c8082f19af2354973023100bffcc30d1e474846b9fa0a2e3de06dc2ef2ca42d00583d587719a3bbc3e8d6afeb30a790015ec29688b39edfbdba2cee0302047c435bb50068306602310089b41e4e5c4dd53c34ba02f501277090e5b861f4ad5eab8772c85f7dac4a9067acf4b629e603455ee1aa7494b5f5cdd102310083ec0b0887d42abda4ae6cbad4f301c96cc866317419f9af77b377b47c0d60fce15401a0247ac94907560abad20870d20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c2264698b5660aac11b3aa5571d6400e95f053a1cf771869d591cd25e2fc41a4f9991e44d694f3d198395825389891bd02307aafaf75132ec371a1a66695347c3776c2c9358e1b08224ed2af9858bd09a29948c41b72f542a38e30d6ada3bbc09fc80302047c435bb50067306502310095dee065dce547c99b46a1856a030fa59a4478ad17df48241a503731f875a6b6042e1e0a3c76ba7601b521a3eba5ecdc02307607381da313e92332cba4a7582d8e7bc809b9351ea0e6977b59794ce644de354ec3eb73ab038eedff8d62861605b5620302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304b174b4599113d902f9c350bea79f2d73765253708d4920fabc859e9cd15a270fb69196192f8d6ba55d7e3cac9baa8b802302fe92e22d01d45a6e1db1e794c50cff203c723de7441639fdfefb66a2f10337cc34be21ac4b5ced895716cb1b7c7fc630302047c435bb500683066023100bd49e3c2870b5459d592bb4a6e976040537ce0eba9402e5993d3e3d1b86240d7755b8e4b2dff5561e4d4bd44f7edfb1f023100cb31ccd9a0fa56e71194edbad6fe621d41f0636eea84f3083ff3cf3050c209ddde0f8413c60a739a206b685a24811c9c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310090f353fb888b9f9c512b84d30d95cb343ce8ea645ea3c71d1a858817f892270b45a10aa27cd4ba10d80a3a7dddb8bf6502302addd4aa97d2b9d46100669570ba0b0e3da6c0ceb2b5d5d21eb20ba6e47736f8c13fa2644f8417a52a0feb0d40b260320302047c435bb5006730650230389930d902b1095c71b118ebfa4461d53f8a8c386238352ac46129aeaa764b5ba38ebe5367e561337fdd4d58ffd3cadd023100a9f8ec3e012e8df096b1fa642c11062490075aae6907633a14a532f7c326aa73b4304386f9f6fc84f09742a7d755168d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bc0bf9f5d8fb88dd25bf995bce2ca77b5db967628ceaf709448e716f8a6c0dd884e636bf75289b1dd5e4a58add26a4b9023007844593b45428e83c662f4666be075ae07264ed501b8e4db86a8ca7ab099064cbbfbbc85d4aa339ff233e2583cda75d0302047c435bb500673065023100da4dbe22eba01758240377fa8c534410d369d3d402b9cd8549ee73c5492c7ac00aaa3b926eb56c3b8581ecf318a7ea320230231f5ba8620944d25f4770e0543006953a8f763b852ff060ce23951c85db6a6a271986516c634fc76751e657e1c1d1f40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100bc1b5839c049f1c0d93e8f900c5c117d7752690de23d35c81a2afdeacbde59907bc28c9e2a38169635bb3ea85fd5982f0231008d2a86a0e54cc645adb4e61f6414bb7aaadd2934b72f571a48756be4f38e5ed1f67cb68f11a94a873bb8a728a05c67940302047c435bb500663064023066160c69e3dfb22b0f92a78dab89bc9ab2b912220c4dad113eaca7d9c9ab7fd4ced092453a08f2d894277d2f271639b702301231bb0131b6208795851ef94416a4baa9d21fdfe2a6292bd1af51c63b233484cf13ba086e8eb37411b5fc82fe870ec40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230260548a2fa62dad2e5a3d0db97a4bfdf51f0558ea759fe373ca4e28c887bdcc8835a056948f7d9e6d030e41ed95c112b023100ea9e6427f2b1214979e2a7df50c7e6bbe75043d4d524f9dd252f77586b7303fcad5c660a7511c912aecc28c37f7d43fc0302047c435bb500663064023079bc0ead6ccf48b013f27148c699db6ac97248928b2e83e99430945f5efeaa576aa9461dc4879a283f326db3da73134e02303e08fe6231103bf216292f1abb412740bc867f92301171200a9519d784655ff63ff3bcd664efc807034c39aa039e7d890302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e8814e80c83177e68e03f1158601a6490b2a1834788d224e1ef51f766b0a6dbad91893a5c127740540debafc38f8c90d023100854c926c1d498417b00e4b3ddd796fdba7e7bc11491167a0485cde6c49f968225d47a1aa0e0bfd70a44383e1fb0c026c0302047c435bb50066306402304baa0c05627d3397e8096c8388244e593df078f034834d8e75d2a6796694546d1b45133ab43239e1791008b3e8ab945f0230748f33c714a781a33217484e77a60c52dc193f5ac4b995b7513a3f945e394f94aff95fb03501385be89a472f9f2280b00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100843b47c69049c85c0be4aa9a4f24a4a0130def176bfb2f5a4c594719634853fe25c33df320b9a990e7021750b7629ec9023100c007a83af77bbdf02d4c17bd86fd6e142d7dd341f8881f2338c8f9856ce76fa3a392dc63dd34e1ec1a5b0098218934910302047c435bb50066306402306816c6c516b654bfd8117ca40cb3b5dc7c5dacfdccca46bc73454dab1d0c7540d8b89d514205c7abd1346627e44bd6d3023069d34bf275bc3ffe54a07492ad7ac07b35732fe2a75b812c4b9722ed553281c2bc976ecefe00cfe00a1d57aa9afd43550302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e285fb9d4cf771920a764fc8bae95d0acfcb6a967cf2eee209929a84a5f4e09ac68198f12ccd4e7539baf7d9caafd652023100ef3cfdc4442e8f6082c1a41f97bad41c5f4135795751a8899d2f8f973ac204dfaa05b18a7ed78c550b01140fa486a1580302047c435bb500673065023000bf377528ad525680f26b9a83d670dcbf1346f0988b106733f170a8017c5f7e529cf439aaf3bc2b01b46b718efab7a0023100e8739a6d60196f0fcd95e0909adf586aa3fc8eba6395964a427151a94dc4bdc2822f620f2afee0634da7efffc08ffe490302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023054eb445209778ff59f77c0d92d3f145a211b944ed8c78ae581811b76ffb3e2df6d5c5c5975cf47f9b01076f1a03e764202301b06790c671af75cfb07c097f604f603be6ff42bf0f53aec739fb98a9e33bb80de170673b9656c8a9b7f96843681e8d80302047c435bb500673065023100bf9a3d0b40d17594b58e32fc5c75c6113330a697cbdb6554677753d8a8165e9e241124d6daac9cad159af36085c99224023007c6e5580bce1b2591381b171941d61b6a31614b573755d740c79ab0de82408e85cb09209bb155a82fcd041ebb700f740302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300697dddcf081f7e3d2ee78aff6ae35ca397f04fe25e749c25571931cf0ed5908439fd7c8e199b6c85e1141884de512e002301a6114cff6023adc1043c4886c3c56dc8dd27ef8a621404635cc3d36ef747e55db1bfaa5da7fd05dae93f3745dd3f8550302047c435bb500673065023053a7c2814e630aace76b5e43a8d4f099dcde33d9e9fd174648eba4116c75ed10b31b35586e2c1ce68783ac0282710214023100e33210bf5b513eed4b93bdd127e38a28fb670fc4bf38dd06c9ced6c9cc8f01a4b6e3516dfd50e1eed2fdfe7e56fc62a60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100932f984aa3c99e63985e02214f0f94f4c1a7ae64f0bb013ebee6907bad920fa5ecc89158a362c1228a4a5c09972692d3023009c4c0f7dd5566ccacc0c0315f093a3376a9cf5a2df3a95c9576140d5e8b0035bc2a334ffbe51a685b4ca000c7b55a030302047c435bb50066306402306d8291b39c2f3b0e6b3d539fcd42e2e8a8a7c23c2e9b87b7125307dca08167970778ee4391170b9183950dfc3d555dc1023023d72bf95d2ff248ac37ef3e6b6b93d34064294da73f3aa49a39dae4e239d9a65b02ad5b6fadd92a7f0cc2c361d739740302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307a7c4a456ec5cf8f59af150f603e6fe8f5c27e306102e3fcabf782916c7ecea1f91c3daf60a1521b09debea0bef1267f023026e18ca2855a5aede77c0367205ff9a0597ca0559f5e873407eba1dd65c1012a95192e6551ae5a851d13287bd46f296f0302047c435bb500683066023100eb5c54ef7e59245225fc569abd0f4d19507004f86fafe924c3752508eb415bdb7e18f89b42a3a44bea71ef23bbfcc350023100ca220977a563d4d7704c92bba8dcadef6b61bd61ca640880fd61fa7672b7183e251bd4abac8674a1d59af725162788380302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023054ba062590f3cd42c626cd7ae17279ce8c010c208d3522d5fae0bba1ca87855416679b0ae77919f90ad606c3297f5993023073cf87782f477046931b222e6b7df4f4f63dbfb12bb63616a2c6792522d3681201f632ac5a92b72053baf26010a97f010302047c435bb50066306402301bd5a20afb553c1361f16f4ab8ea3c47686bdcea1d66a8dc1d3a2e2631956de2fac414adb18bf7f51d65490bf5086a0102306d10649ef8c47b6af86fc6a07457beb594d62bc8a4572a146cf131c28f72be48666906e9aa27d757b40eb2a995cb9e390302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b2940bfa754d7005f1cf3f6faa596768dbf335ea8463b7d20ebf73d72ee161326bbdc4219a2da42c68838eeddb58812b023071bb4a3fd1c8b241f3a8563af7cd89ea83a1d8e9d75912f3d3e56e6a4813126e2bf97300006ffd6dc90b4c919a94f5410302047c435bb500673065023100de3098cc650bfb31acb6572337b9ff05a0355cfb6ccb32aefdd8ba7b38b3e0905520e108f7544e2798210d5c73a2be52023021581b660b8fd37d9652c2e3e68b8c469e9005ff44e9efe773e426371f3e6bb9af93c04274e26b827c4b53d28ac70b590302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c2f96db0d7a91bbad6bab87a556879504c3087e4678159a42b92e6c5e81e0ae917d923e4695532c1db7b2e6444376a49023100de25baf955e7683c3e374410fb27c8d7d4dbeafa4037df459ced00d1656b67e35cd808a4d3c5528546f7a61cab2343aa0302047c435bb50067306502304b94fafad2dde9ea79325b864fd163020a0a761c457179bf0e7cac414f88dae8d7010a2f1c1318652ddae32313698d0e023100f30f14da8ef26d60013e2dd39eabe134f398415d2abead2e36e1f058ad9e1b5e24c9c529de02f1d14dda4528259eb9a20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ab2b73b254ea94c1f2cf7e2ae23cbe6ccb68ddecea9ad7378203cb164e1d31226a9e1011edc8605cbd860fad549c594d0231008a5c0ea7730758497ec7d792503235330b5f5d9e9e006b0f1674478be7d23fe285db4e5ad1a36bc7abae1e0cb981cbc70302047c435bb5006630640230146d35153a529cb93efaaaf1da8968f1d9442992569641433d80733ef067c137d8b5f903251c8fbac52f4f37889ffdde02304733c62d8016d01c8a5ed562f8088d4018b43f18d95340a2609e988472a1eea1307ccda8baae8573b72c0bab78de5e690302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023022a36139b527d03aa1fdb7a06c7aaaa4daa28c481e232256018a185574ef564213df96844c4c7dede57836fcc7ac9149023100e65259ae95eeee414d46d07b2135c71975450ba87aeb4da423e82b820521cba1ba65539825c09cc0b99f097c4937385b0302047c435bb5006630640230663b2d45506ad53bae9efc753357f52b53fb6958c5b7356c64d47c2cb588e1cd6d1da2ce06942c94d22dbee822f00fc4023017bf40ee0b64d8c482df8a8ce6bac252778df91e5d9eff63004f1c3adbb6c1f5a6fa494d4f641fd33cefcbcdec257d5c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230492e92c749c5e0e14d64a7eaf36a575a21e581f0454349671154fdf3b39abc3166dc78b6e1613a237cace382d883e18c023054671d76af0dbbc353e474b39f510b86d85454aee959288b0fcd3ae85a525039bb67b325650535aa1f47fdf49bb519eb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306be3be3828cc2eabf8641519f9d4292a42fc364663c968a1bbea85375bfbbb54f08482c6001ed3b6583901081a7dad37023077ca0f5d966843eeb71e3b5f7783a1691e44255d46c2cc51ca86572102b41bd8069db52952abdbc18f222a97245ddda60302047c435bb50066306402304db8711f40d81bf6fa12143aae63097ce01861e289c50d579beb167952400dcc5382899544d7703a243ebfea3aac971702303cdeac56fa44b17ef648b9bea888d9f99aae712292492cc8acb2e09c1505fd5fdd72abe931662be390ff6225a3db33690302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bdb223c1b6c203ad18bf3033c4f2113428b6b074536f660d548e9cd1e14510d8722c11bbe7308211316c8cc810746ab802300bff0e6eb45ea66656d3fa5de61cfe4fb6bebccd4acebb8ec37fac98a8043076c906f9e36ba0e146db3d932f7169f4be0302047c435bb500683066023100ac0233e75666455bc1569bd6fca91f2e8378fe8a262e6a10fa086699933f32f6c55fbb9df1a441dc6a2e097a3d999e72023100b7545ec92f2bb649d42c8a2f6e8a90d1b9d11cee0cb54e90abb605f19b5946604b8d5f54462c57e7b17c32f7cc1c179f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a5ae0905ed11ae9f481ae63d391849e5cda62ad09a55fcbd935403dadf6b732f28d21b5495735087b26eaa65450f2ef3023049ce98418874406b776c0c1d9e1e8d8fa1368fa6ddfc4d65beec70c0d9185cf1f10b6eed734bff80c19be3e933366f4f0302047c435bb50066306402305eff22cad5ad90c9a0f202134ee3cc1ceadc19ad4bdf5c3acdfb436932904b2d79d1d4db972fe59ae99974a853759d280230774c111d0f71068665f217f5ef162933fbc755bb46157735c8b3cc2fe0a96214aa0a5d1cfe97c5a0d5c0bd59327107d60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f170a02e1bdf198074efe27ffc224eff37e5e22392e3fec204424122788c71268c190edfdeccc8d5a6a920487e246b40023100eeb431342d5498074e41647f30751d6b8a4950e9293e17d813af3b14dd287f88335adc701afb9c9095aee1f7a99193380302047c435bb5006630640230504b9762c6e9e8b49f174196fd9537ede22d04b45c1b5fee2cf4e1deb4ef9bc6f8c5e3a072e16d6f2aad1e98e81d3648023024b768db1047b3451efbf27fb61f4a0b19783e7e24f528c1d8e405e05a5ad57a73fdf6811040928ff131740852e0e4de0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ec5c35307d4cd0c78c207e2a1ce606e48c49baa22e3acc22ec4a5dcbabea6e9ce822c0fef6a55ccd81d45c32a1f0c33c0230796b8a956ae87d1288a4cbd061817a84227703bc75b424b9f104d035ee149f4ecb83846bfdd4eed918522efa2fc7d40a0302047c435bb500683066023100eee3a6fae58d8214852f50236fa074dd81c2a3e67bda0405800f83a6c5eb11cd9665e639bf6be727c58e605f866bcd68023100cb68783244b5e1e197866ed7f122b62edd6b33605dfe0b09accfee3459b5572063cb294d685b76226383c159f3376ed90302047c435bb50067306502305ed8c4099c8b0a9c51780caef0d776975cd517827db61a3aac8585b7f73805c1ade1e6444b27c3d0e9871e17d0fdfd9d023100c4b1e4b47db9daaa58615d80e6d39a3e062c90150d5e947b3b022ee71c32b1982e8804457d6971ca1cd9281e4c66dd790302047c435bb50066306402307abcdd6afefa8203d52266b4778ab2c7ec970d4e2c4bde79ce0e5ac8458cf6d84dbc98b9b0500b1cfaf8b2e0a76ff66502305753a93892e860c1ac55fb98a631c3ba67bdfd4d6efb3528cbb0efd7094dd65df141e7b169e19df76d24c40570c801250302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023052d0d547fa7e498c38c942f6e8f1c655f4b5ca373f058f6d05f2bad07d62686c5c2f2e8844e854e6f8b2bce6f9bfc920023100b0a86186de5506ac4388486c6be14344b01e01b349ba241562765efdd40fb1da3f0f53583f89b782bd3016fe32b4c82a0302047c435bb5006730650230505c992f7cfd84020890129a4890ceb0b2b803ad4f32682034677c8bb59b515a90892e93fb83c754cf40b81cf0066922023100acb1f96eadeb79073e1d1b43192ec2430443d6af65b9736f556cab887c97a0050dcfeade5f414d794efe680f71882b7a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303f90d4e5daf675877e62d9d075709b0972e158b72114f8dd689cb8c267b8063bc91f3e28b440c8a4a3821bedbe0db5e00231009625de4cc1bea3e9531e0b2c8606f91a27adb4639cd2d54699491e1d05d3b852cfec716633470ce16058fb02ced4bd470302047c435bb500673065023064e69fead5b733e622fea1cea555e18d6164c1754a3b2359df3cf8b424abb95deaaeeb86d6a6b59da07a1c098bab10780231008120eee1a3295358233c3fecf35c3659eae9fd429c8264b893c487f190bec23ff46cf1d9988776d46c1e8ef4dfcf52b80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100936288a83a1b7ee76b77aae6a3f5ec3175c41b6cfac448432de283728c647baeb32f8541b00b1e3a6ba1ff106a89b96b023100e8d87b6666357da6205d7451c13f599dd38d8aa60ace06e45fc0d34d8f24e666eb4dcdcd7abe09fb04cc07e4ad5db6b40302047c435bb500673065023100d9527aabb895b5d7a3f7d6b33b2432b54875e2af30c91e7a3fc6fca25114604e9dff5c62851b8d690cd508fb95a620e8023029a380fbf5003cf2cf96ead6a076fdeaa5bb7ed85f640fb1dd819ad5bdc49d012176f842d0f043246533ea8b2bee28bc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fd98d9efd362cb85d54257bc255b21c9b624675c6b6d4767f35f9fdf0f5b71ae9ec9a9c9c14791a4dfaa83e1e718dedf023100aad7568775640611f0ef7f667ec2c5a5e4d989bae7856aae4881a683ff62fdabdeb8bb1bd4b6b3461bed7ad503e64bdb0302047c435bb500673065023034e47659eb84193edfa35154a95269d3345ba3b9fc318db0406111301c584ed6e65c93014630692a5a131790a15a54b6023100dbcb0fbf76f67837dbdc504be8ace43d488e0b123af1d7db5f0585d2316d831ddc6ba89690a2dd072b114fca26e8c4fa0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d3cfd30e04ad1020723dc49276e6f3723d21aa59f2a4e9064fd348ef79f0101b094c14aa80f65981bb130b07801a783b023072530d0a43225518835996a60294a336c1c825d7e59be650e457a27558dd2368bbd6f8c1ba7b84eaa6303775fe093eef0302047c435bb500683066023100d2ecb85c52acc47fbce2d01cc98aa5433069eff77891f58a37d53a6aa6f7ef9cbe089d4d931755dcaf4741ff3ed77dba02310091bdade2030c0e7e0de070326d4aa076efc29d741160cec379d30d04f8016a630e4cf2b108dea6c6d4604bb11165083f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100bd0293912330f95d7996ded97f8d5448fc7bd8bb215cceedae94ba346cdd803711787e3dfe573e122a0f31822367b8590231008c575e990a118257d2d9f20bf71572c83d6eba2db2daa554e647b19c38ad7da1b7f064939a8becf7d90d3588ce4ab3540302047c435bb5006630640230203fac42b45b5457b84ebc9338269d4dd654832ba01a32fb13164d60f92ebb42d7cf5ee056c779bc1f51582bfa5d686e02300d4a0e2ede238d06f1859261a008e8647620ac857ddf0fa1e6c3dcedeb293b94e40863b73a7e6ececc5e2e344f6cd70e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305261ae47a9b30ff7916a087205c4660672cb233b229a5cb31581af265c525754f74a6fd69268d49976d294fe4a798201023100ead6ac66b153bd426990aedb242fbea4dfd375d78e871a7914c9540d766d1bd3dee7b5735c748fd16445a149bca2f3030302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302c08441dab37f0a2ca1d8afe7cd5cb29f1e3b457969917ef51d700c7848742fceff3272c73fea5635c5222af835a48f0023005ced6e60265994eecd376316fd706c5f986c9706cc62d34fb5a14e92e6a80ad9292ee8379243c84ed5bc165001d2de90302047c435bb500673065023100eece3b970b112afd3c72a589f5e32ace3ac3bbebcd843782b74ad9f6432e6d0fb890dc95f67766384ce736d6d6503bfb02300d3308354d82bc6a0bf099c505a2781c233a47e60e08c231066004fac4791924415cfa3a0243e34b5f0d682b51bc0a6b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300c4046af16ebb3c82d71794bf6ce6b83c36e2973043b151acbe19d02292c01926f5774da02211c4b3a80ca380a265e410230589df54651fc24c0c5d31cd9c585bdd8700748eeb624885d36a434dae5558303c229cb1f6c27b910ff82b3848970ce870302047c435bb50066306402303edacfecd4af4944853639b0da784034a1b84907571bbef2690ce305704583185d3faa501bf9e360e7145a86dfdae04d023065cc53db21391275a59024786b638e9f936a2d1ecc0eb7146b73d10203fb04b74d042adec3dbf478d87510122fd88c370302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b7ea63a47b67ac1865facb65dcf6fe08693050959d86ff7fb3e4fb1b2764a4b11624f3f717aa42ab1efe7631f8094b1802300dd2e971ae6af6b6f6973351d7b00e7b2398ab619a4508368cc60d602ed4b65482548aed4629e0566b57b4ed58645ad10302047c435bb500683066023100e55d949edf243b7818d5ca3705b5e8dc31c63025b9e0dac47792ae0e8bf3df0abdd86317cc5346e12025166e1f5d4d90023100efccea19cfba80ef509974f1a1682ac4f0bf1b5e0551b2ffcdb104bb1461269490fe9a5b7135f8ace19cabaab95c6b0e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306d5ffcea0f533f65449c49f65ab882ccda1cd3f3235129c313069fec6754284e48765804ef133cf9e8186bb2dd92b3fd0230704e7148860c23604c52340ddfd05c5d9c8fb363a4c2581778a9bb5032b93ca8a8fcb68b7546b3f5d2a41d0c7fcdc8f30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300bfc5b9ce66c9c1643b5908380d4aecf4f74c1c8f350a998d637a79c3ea9f9f06be5affea7be62d2a5960498a4c9930d0230452e39518c5ea775f43487c3054286cfa81bab401d6a8d3f902a745424934a035b78569fe1e8de5c571957b3702922ff0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e3e3a9ddcd7b5ac6deef31c3279adeecbf6ebcd65f2d671dde69edf17c7394b4569870f5dbbd3c99bc2d39510bb3984402307bafb09f39e6a577694c0b8feedd864f5ed79ac4fd213de3df81f1a599f58968561006af920eb3be97798e3d5780a7680302047c435bb500673065023001d04b42fd0d76b53ae0d04f0d061e4a246b16b2261b603c346cd491902fc9577a71e2d56879f165ca19e9cd937773f9023100c6bf3910f54b08621f0d7e958c379afcdfaf7ef388c8eef92c2ece37ac7386ddc344eda1fead8f94e951c670111ff56d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c99e6e89af6ebc029ee63d0b2b862830268bb78226b33c098a255eab76888bf9f144a1d44a0fec5fa0f5b52aa374f91602306c57eff7550b17fb938a8a2df0e3ea7f858fd7747630118bf83db3d3247aba6deb6bd4d4b351abd7428181a59d1eb3080302047c435bb50066306402304babffda59f0b1498889826560c12959ebf8111b7226c6c6338e03f311a9798bcdfed14200d7068be8cd039c5559814d02301b2b1f18ea2515ed6354e7c4f053acc0336d6a415baf84856daaf5936d538fb06a41a4bcff7120d65f301d28c5b36fc30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230435e9354f7e274927893cd92bc96f6f939c6c42b994702687cc2b733879e439c27f95cfe94a1554c709d94bcb73d17ff0230697625de79b5678316f329d0898deda35d71d45da4486e5fa8231c74c060d37575bb46163bf16ddccf3b18f7e3918ca20302047c435bb5006830660231008d5b56e2d3711889f1e70a36d887df76aec705a6f52e7434354c210f8ae901713fe4767532498b169f24f609109dc298023100e44410efca0865bc7529a17b06de043449ee1bbbed9360518bbf2883cbeb9d0812a492640158e073450ddf774daa0eb60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305e9e29724b84bebde7472652495bdf44225b12059c1fbcc2c7a305d517d9102fffeaec986ce83c513598cb288fc75c0f023048116a38a7f1f0e485de2930d5c836c9610218d3d3697188dcb34437cbbad4c22ab01d9c790e7211e18ddc2bdc71eafe0302047c435bb50066306402304d02b1e0c62a84dce805e947febf27adb4273ed636973942e4e0a6821ab5c7415522926108b18ee6dc15976811b7a4980230756a6a6b2b72ed0356da4bfb868ce73dd7f5f16525a70e25704f1f1fe6ee01a5ac0856f18660e331084803e4b16bb3530302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230646a2b6e35b8dcbc5c1008ff80d94885d898c71d21b4fb0d54efe3faeafa5bb6b57ee901df30bdb1fc14d027288205a40231009422f7f88ca3a72d56b7339954f277b4f581e650a1585bf1cdf58de8207777a3bfd856764f2978b9962457575f7feec30302047c435bb500673065023100d890fc0e5bcbb7cf9c6e777c4135ad95b4d2f6d7389a9b015c826b85a59d75d789bdc35376beee36327d7709e7657c8402307ce04fec93eaa677814fbbe926a988e9f23f7a9c0df95229bc6266f9ec522fb9328a9e76572401e3348b8acf27aeef080302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307cf6ea9ed46e952f7cceeccea927828cdd2dd471c3ebfbf48763fcace56e5c0bdf1ee983861ccee6d5e62bd3ed558e6c02301ff444bf81b4afdb9be75f27b0506e5124985db78f1f418bdbfb0955ef9417cbbe1d8811e8d3c9e5804f6092cb98c7800302047c435bb500673065023100d99965f8890776b692223ecd5a117e9f60725cb8591210e2d560a03edfe98fedf4122ff4543d5c2e40a4ba76d8c309fd02302aab4409ab25806fcfe5bdd3d1cf375577ac99107b7beb34a08adfb82a2a360be9308cb07b0d2551aa5834f6818f17360302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304847574806a63c0a6fe06626bd2028c1580b56301aee21cbb20518a43f19cb897d793652f97dd359b92d57776d2c3567023038f843bd6f690c07a529b980c5b1720973e6b25965fe0e424bb00375bc07a0dc615c3e84f3de7f574191f5ce747435000302047c435bb50066306402307cd6c21b374fba29f6c9d3065eedac7c286f754ba0f3e788a8eb195b3f7c8e5d7de9d6f9078da97f63a0089eaf3d2eb5023007f061a2c0e7eae9aa7db9c8730fc5179e5cf6fbe552d0d59ed55962ab77bb4b6ba1824daa5279952a772cfc085789950302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303e66f944b6afe1bc6f1f7696b87f93c984d4bf32bd9fbbf2e2203aff81d12767be39e114b6b2993cc9681ba6a19673cd0230563fa75eb197f07d5bd7785bafe0dcd494f5dd3dcc8fc0fe9403ad293f4657d044f0b2af1aa9cc7564b8e42cf82331e60302047c435bb500673065023100db76423ec5784cb6f40155a1838ea88ec6c000fd7c6cd02f4d506e77e0c701dac2bbb45845c0a25a1127492f9d5641e002304f506a10cf8384031d49e1c961bc0889e9a9722a62c2182730fe22b563746eb5d45cbbcb20fd31f54ab3afa1ea68cabe0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b7ec45ca7152f77d8ff4adca99f294f2b650b124bbb5788051983b26a7503b1bb858045fbaeeb488682eb1443385f2e302303a2506186c655f2870c69158cf12f4d58e44b5cd8350412b9042b8821dbb649eb2e572ee8a983d1a88a9275e733ef0f60302047c435bb50066306402307453a165aba48ee4a963c95bdf6c6cea3f77df7dbd97a09a66c4f83674059837f06ef5f16c06e43444beff13ad85780502303dedd78766db5f48ceec4c5dd8f9fac941cc4e84ff90f0b79f0be6b7548bb4005a5e7feda4586325577fa45b86855a060302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230589a33c77b28cf76724068c93694fb5777507ee5b1ca7e6f3c12f42250a05552c7f74ebdb64e5289117c1b8502a7711502300f870b0b250be645169b2516f62d970bd8919429f6f337ee2da331fe9be6e7967e64760f85c62c9b994b2b835071c6a20302047c435bb500673065023100891ac8a2d159c7f689b6d935b241ecdb3760f3a45a84374dd6917498afb7a7be777215b32275d0224235028b6e98e4ed02304a08369e2ef1304ffb8de9531c1190ce2a65a582a102e450c5ae6bdb968f2bff122927a672a733f8c749b331d6b253a50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023022a012bea809106321b564b704940512d650aac202a8bb8279b972a7ebb59fbd4c8b6b2de709d087ac420436bc9ba5580230099b30c7f2d3de37a54fd34732a20697cfadedf48d17754d52cfb72780799e4b3bbf26fbb3ddf70236fb6f76ba3569fe0302047c435bb500673065023100cfd852fe45e7f1d0698dcfcf30c3fafe246d3fae1cf4d6b097787dbee37e2baa06beadabe7ac74cb0c69886c6fd92cfa02306658ed7e70103f309aef3f2f7355249ecb11bc9b1bc8f3ef486d069aef77f4cb2622be9fa2e8520775974b87397598e50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f288cb1d30a8c64ecd1ac156d6f4b38449acf4c288d80e3e339357cde66450c2b3737307ae5c0cf0f94b6395f2fef567023100eea7dd8d5f10d00435bd912fc7fc759a40f58d9c0d793e8de83598f9e5daea8aa4908fc52170fd3adaf34aeaa77e317b0302047c435bb500683066023100f8e4c246c62cd69004689500ebc4b450637db09c371a1f6c7e0da7a5beca8f9a1e2bfb432503f1a845557674019e71340231008e7c306ab5b894d590309e2c77704a3110cafbe74df825336f32d25aa20edb362aa44b9f92e44102f5c08794f481d7520302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e37ac33ae5c9ae8b0fedf2fde7119e826660ef78e1f1dc68bcd7bd345a9544c3b6eb063ffde3922c5b73fb33318bb2dd02301b7837698145ff975a1100287250ca4ab46fa96d70362f0bf81d574281f3425fa144e16f592ab094abbf2d3cc283528a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023018ce0fdead1dfba2ca97537e811328f5487ea7c9ddf84c33ef29e0dfc472bc4e867a637f22cffa54fa6b41ac81fb09ff023100b84ec8199e4636fe0306cc8de759e6049a9ead0f187c34e045cffd712c4893365ae14c7df8dd79aa347d7804a3e2054f0302047c435bb500673065023100ce593139cc9f28f0b2f153b748c21210e52199b2fa75e7655cf5a628b156a1fc22396e40340ccaafecd03f7a0de997bc02300d1e659d38f7a072bfacf01eae088445999d1de87954b3474697421465aff6d26adad5228dd9ec580d09299dfd7ef4900302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307181416a403adbbe8b0b9d2c52982a6baf6a9d0ffb5ca9733ca06d39d236593f1458a6df138fc5801e3aed75c7c3ae47023100d0427fc92e581c9523ae1d1f6086c02b698f650a8850e2d6766de02096f00432bd17985c65f82f4dc5e4afd4eb7e02350302047c435bb500683066023100f2876b1eaf0c47131ff07e43474df1358fa05432661ff53bdcfa66ef45c75e1680e0de4bd0fb91427a91602d1556654a023100c57720e61ec5486850a915427270a75512270926b5b3b0a3992b59b0269b24098d9caa0ca5e099987721e53ce663a6890302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f97bc555d58ff6731e22c950bbc0cc8714dbfc1b82da09b42429321740b8e6c86eb0dedfb5083cb9dfb757f438e60791023100e1b1d7390c68a9e24a0e31a099fdf4c451929520adb9aeb29e308013ce263c0c541fa5574ecdd94cbdba0838ff4314570302047c435bb50067306502306dc3cdaf2826a72d67e5b5c350261162c8d4717ad2a4e4516b63ea9be256d18acc7e532add9d64541283616813d5adbc023100c702d4926730dc8db8e6b0b486bd38cc22013e2b98770556905e49789732cfaea7bf8c05a18f54e28aa1b57c082684a90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d763cb76b1d89f92f1cf7aedefad6a56b56d91885369f284446236a115c2dd50cd7364f22eb18e0a45f69cf23ec32ac6023100b5884404be71672f26cff4b17c0c6876b1ee5015402056eb130f48fc85db8e6cca0b97d0989346e21e5e684511d24dc50302047c435bb50067306502301dea024bf0491654c2f5fff4c0345a5755478a71bdc89a5d2c9d025a927ad82772e11aa9c223a7b98f90d2ba872c29d8023100c9492ef3b4f5c7ed3c0e9ae69cee4f03b7471f077bc913dc00570c289a9eb76ce69066bbea289d05b187072acc44ec260302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302a616764d19811f89d8704540b783704ce31ae465aac5bcedcc4d44cf9373111378c46ef68c52baa3a44b333933f23f8023100f38117210fa5cc33ccd26e7354b095762b72a1860a025737964dbb88e7bcef008664c410aee54290330cd9d6b9fb63b00302047c435bb5006830660231009666a611e1dede12f18e09d8ac66c5fb6cee9995ebaaed784917d309f7a4a693c51b3e4733429a954bf88cb077919c5e023100be414f4fb5b68fd6496deeccfd150b394cbe460d4c9ced2c2e079303a7f271d16cacff6111bfefdbc4980938643468140302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306d2354f3014af4d43bce0c8ec6e94081b5d16d4831c9cdc01d358250f6dc7e53ba4602c687cae04a77ee1518f80bd63f02306fd7d4a921c4b36100b6769ad4156c0df4a23fa8a6b02047082cfde016716a758de36e0ffc54554d658ead2afe182cc20302047c435bb500683066023100a22c66933fb243c6b6cf245838bd85197d44efea529f484ad9500fa4076d6a71b54fb2c8457996593d564a65246f8a94023100cd25af3bb4a38b4207cb65a4f71602066eb3d609c5d5b942528736f8bc28d32a98a89447be263e646cf940efe03a39ef0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304b84441676c9ff2b1c04f5b1ff6cb7b6a4ecb477df2b0e02849483de54619abb8ad70ad89abf4869ca78fad205ed63d40230078be0429079713468317da279f590fd8c295aabb92deffc1ce93d7137b68352f447c483d311506e159caf82c1b9bd690302047c435bb50066306402300593c05b6aeda11ab1ad8740131bb87ff75e55a95a9f8cbe0f23ed5bb121bccbcfb1576c33d1ba4aad936fe454b3791102303321c8625cc3b5d3a48ce929c8d395305f1a0bb9b5876bcfaac82d3f56cb7fcdb3bce6c98f88b7282749681d5cecb7150302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305b30138dccd319b30b9759164a7cea7634ed2cf4c02fdb8907caea176cacd6886a594e3a53ce6542133b055b241e730602310082e9211597469ce8330770aaa4c673b2df792b1fabc5561db83257c7e3c64d7ce9fdfe16d434a34333a5569f054c23640302047c435bb500683066023100b36c4885bb226a69a886c15cc0c3ff27fd1479d359c5af0bba7d00a8c4d8067aebfeef163d53c79d01c3538b088daa17023100ea0e0dcc08828bc7f3492f90609029760f56dab38f91d8fa3a14c04a59e64dab28dada4d7cf73319e51696cb87b181c20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306baa3515963c9d19846142c84804581e0491cae59f578fdbbfc8175b196b0fc34b5a3ff89efd404888409a6491eb1cf6023100f3899b959bd2d97303fce3e23d7662cc8b143033d24c491e35320426099becded06607b59a727aabd81dc621c41026600302047c435bb5006730650231008328c5e93447c54eaed4c2226f2c4db44c85d12fa2a799e8c5215105581189a698e47041dda0002590e9e306c49b23f90230469ca6b76e804153da6e2aad45b31336eff3357a418cb5ff25812a24d9fc66a3df3bdc178805e2169e3e9b160361288d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304b64574ecfb8c7faa74a8eaf0b1875b9cd90828749bdfd824a26f8a7f65257499d7cd8700b8d609d38ea700e25b896cb023100f62637f7aa40076663ea2ad7fb6b8f37008198dd9377a3c073762472cf36364f6861555b9f878c6c203ebf6c1c8a7b9a0302047c435bb500673065023100935afc2db9cc83d40e2934b2b9b59f644748282a27a13f4c71f0613a500ed7d054a9c9114b0e0ebf059d89c3c17e9c020230041cd24f3dbe71a91ea075d0023edc8f3f96eccdfc01382237a2ba8faa3b28c029b522b140cd4faf82d7db77d8e263d60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d323a61c9b9d8330da3bfba201df9d723eaa602b6c31ee1d2e403a18acfc3499f0caeaf6cd53e2c3e107f7a9e3a807da02306d74cf524052fa90823fc145327e94ad5daabc292936f6de80e0795cd837e11e1ab153b88726a1322019122700aa40880302047c435bb500683066023100be27736cd45840a7e2592238b8e58fa4bab105bc5a907ba985772caca1ab5490a05bd32bfe36a4ce28396a7238bff0120231008b15fb4a7ac55ace60dc8acbce3ada84c46cf20775fac26c5842b65cfc70b84c3274602525bad86c12a7c02204216e270302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f09db8439e11d040f900d956c449354e197560e629c935345d804444a0d8b81e44496aadd1c2a951f6e8318e4cea63c2023100c540ca3d8aa99173335cc5b3386a1827f1893a148dbe0c3f1e3aeeb70780afa9522861866f076f26f8626439fb8639720302047c435bb50066306402301ec7130e57157da448968fa046a09fd65b4e985d586432e11ead95d91f145caab6fe57a25c78ba27787f51789c38cfff02306cda169e13b2ad18b0ff04565feeffa0272484fd9598e6a29455e4e21c5f020aaa77c35ff3b8c2167319519c90ee53b20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100de37bab56defa43e7d4cc39dc1c4a42fdbf64c9be2d99e13d200042fd24dd67e2c2514ad79a5c20caa4d0dde4bfcbb49023005c19ce60704217c8a09905ac113334c999d486d410d8e8d96f47836db9bc2028ffd70627bb838bd87e238c52a68bf550302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230108639b9d4ab21f48629d7dadc455ac4ace5c56137fc0bcc8643e3fec7c10c2d391633ed2f39fd295e85ecc9f1877a35023069683832430f70ffe362ad65541e85c8ef61decd8851beaf19a354ee8a58936425a341cefeb35924d1957e2384cbf6df0302047c435bb50066306402300d0b9f4e6ee8de569cded3c845168c0f5a6e275f824ffd7cdcac20ec64287d98454be1344ba714239111868cd067a4a10230583730a76df7db41c66ec9713928b551a27519d003af5888903a1332d9fa745990ef8749e89df1991988c99079ac76f80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230650f938c5501f7c20efec4969ac871c34d24be953a72bee5cfc079d35e57687e63dba212a8d7dd0ad2560e5d5d13102002301b51ebea0949932228530f313a783f74ea81236dd61ccc1d6b045b942c36d042ed4ecd9c5085c7be2e87d6686eb7113c0302047c435bb500673065023100decd9fd7c9d5522da9c14436aa9b2cb82887ae79a7cd4c141b60b3fa163c9e4095e2d773270b3a2416a456cdeb8b753602300a74cfc85e0894fe58b83d1e412f961abbe7e02f287c3282498b4f4b96cc80323a3c74296135ba802fd5117fd42a380b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310091c0a3ac15bdf1c1e9e312c08c7c38d28647954a1297fa54758f61ecb5be8d6865fa2c4a6335a591a86af1f98d3459f2023100c62563f9b825d69c4950e50c6fc046ea1e1a77b677abd5b657891179296ad328987af5e26c9da7a4b1ba5c6a259518280302047c435bb500683066023100ae2a53053e1edaf56aa47f72b942d849662e25ffb88b8c7327cb53352fad9fd1f6b707ca9df3a3dde238a26516cc385b023100f9b101313a082b5b00f6b1d66fd1b9f963f5d29224989a32df63e95b03bc943df11f6fe5d23f98f0c1f0559ce797e24c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310088cb838bc5cd0e71ea24b33ea3dd3fe67161c6c6d1ecf1a19f0595fb30383e139a055408732269307a64c018ee3127f70230412bc8b45c371e9c45b4981f23a3abbdd87dd39cb1ae112973f6cf419bc21f6ff0a79ff472aa5b47fe9866b5a74110380302047c435bb500673065023100fa163ad0f97e926150d2acd627b625fe526bfe9e533a889265b2b0480802773a9a857c0aec2968294ee31f17aadc5442023075d6436c6728936905e822b49310e3b5f4668bb06c109d583539d786d632e386c80668a04ece9877db1852a2e2a779600302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009244f01d96e2a5c8c1e66f5f239451f9b81fc58ef4ff9946ec51df7d9113e585583efaea2c5d8c4e5363ff6115cb9848023100ee5a9bc89f109816a6a3b40206e0d6944b4166a7b0b81bf1b3996cbd30e2777ee6d78aa318fb315238766d554fbb73150302047c435bb50066306402302a35e445f6d06e652139a4bdb91586b6686d945c661e9174f85accaf518ebd7ee7fba08eabdd1b1cc7f74a415cc85a040230650428463cd3ee6955171e51b89a2c3556c4b86bf7ae96362fb038abca28d4c17e961dcaa70a04a3bb02dda63523c7d60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306d2097f63eda62f7120b7dc684b62feccfd2162a34bddc87b6a14ac30255148b134915065113caa2cd80efc331f2901d023100eb714bb9056662ccd5603d6b22c7788a0033cc811151dddfdb3accee8b2d61c7c1530ef841d69653958d55fcf61cb0570302047c435bb500673065023100a589ffda5e2e75bb5c9bee5de1f8fecff8f18238dd7f101ee64a9458ebc47949af15e162107199a6a72f5dc8d59b551002306a9d00dc6c317da78bb3d2a166874ae47cb666df732e34dbef015ea4afb1a9d916a832c28ccf84fd739ea97149bfac8a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303897ba45e9b2bce1555e1ccdeebf65be258d2ab3201ac0cd9c3dc13f366a4361bf3ae5cd546a99790d34e4a5f9acdfa102310099dcebc2a138532dce915f60fface9a6420ed6c60a4a26b31aab5d99d7eff91ae7a0cf74748e8bfbee5b6ee33c49743d0302047c435bb50067306502301ce9f99c69779354c58c8bc9f7771dee03eb5cd29ac25047a6c1bc9369a06df604490ac0c4e675fc1aa813155c6fd8b0023100e1b8c9757232c7737a86945de4ebd5d731183c63ebdd61735d1d96cfbe4d15dc86ba8d2635ace1d6d98b269e738b8e370302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023018038eb7dbb451f1f8b93b2717599be421e83a8baaa61364814012ac65d625869a91992ae832656867d6d30558ff60fb023100d6084911ff6bd808c0fdf8a4363b2ce29fee8e0234947089d16550e2e95744e9d7bd44cc4b4dd1bfca336acb2f83b1800302047c435bb500683066023100f2632a157480b65c70168ed91ea92b1c94f3a59d5873843b5fb9492ee149b5201dd8991c7af2e9b14bd2449a71841e6b02310097a2b4603d02fda248617499c2bb735d348d2daa1af6bff0e0c42c339fa16c44b7375189addd610322c4912d2d443d3a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300efa777e46ca68b773dd55cd06b165706e327177885867f76f1280335e8a8ac7a6c6ca629b4aa12df7bf1c20558919bc023008572d09e24fd6e13c7f048e5fee7de906b6bebfbde853d77a335b9c01d7d66bb07c2054e8a7c4bd1aaf989575a513540302047c435bb5006630640230528225effff9f2a1dd5a2dd6092f8731f6fc8151f2c10f530bd9994158ec5b806f72ec57e3cd5ddd6f7efdd0a6abde8e023067fd1a7207cf7cd10327f86a8c3066c0cd89b63ce1553001b0caedc9c56c69f4cb370dcc088dc3b080338ee2cd1891e60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100837cc4c184c06c192dd8c8762e94eb52bf7859f6fbb98c96d2f0843d11fc9ab9ae31ac70fb51c771f774e2283abdd897023056ec911113b678913fe07e04f774d46b78b2458b2f1fe6dfb403ccf9b3f2c2f466dab4618a54c95d6e31e3236c7639b60302047c435bb500673065023100f2896b414269868247a23ab53645d0f793f2d5203ffbb3977456d1ab05f865919b10125d0aa5df62f5714accbd25286902304769f30dabb0c410d703ed73abf34316006e4eb2d393989ce45decc1b0243ea47f5bbe8816e5e594a47c795b0cc0b8900302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fbfe979ae2ab69f34ecaffe60cf211c2dd883b19a6eb545dd619a2bb6f6abd91d5f584661a31060e83612c7ea05d2d92023100b50afd13ded251cf96d3cbc045288eba3ef6b35d964f8df023a296047ab3b29fe03958072e9958e5eab77cfb7fab8d300302047c435bb500673065023100b4ef1619fa24024c50a33cc11bdd271c2e2189eec02d24b9ac8e6ee54095f1d2bfdadc17944ada26a179802000aebf9e02302eee55d110221db221b6a29b91dfb41beb6fa69634f5d85403010f0d615f29fde21066f638f430195192e5bfb209faf30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a7b0154db1dd07bd1f6c3364f25973b2785b567a5fa4461e2639b955dc40d438ca92270bb8abe5a19ec542d98ef95b5e023100f9637cf3ef44c109b2b0f709faedfc806dc80584612b89adb20ae66b875279a53eaeccf2eed335fdc635efe3700ee3ba0302047c435bb5006830660231008e62ae7ddf94327a2648b8f05015280132209f7bd7aebf439762857cdf278b3172bd3da7e3d20cf6cfed9e4e22579706023100fed3bb303a7028d3d6744987256d17a00fdc50447fb5a901629d52d8e6538f0beb5f2c516604a6844f5f182f0cb799b50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023020fb3dcd59e2ed3f64dbf9f66ec86a21e2ac46c27d328c6e4474438e1e2f9894b603237a13cbf0491ed0c768a4346529023100a9fa0378837e3c95856b2db94d5a728bbd6727c44b8514d180cfe4ed2899dc73f021af220f62b659fcc44cc0c0b4242b0302047c435bb5006830660231009ac40ad83f4d5d68ab7df8573f672471b6f4389420953b3f2166fbbda6a63940251218fb9b121608171198542d6cdf59023100c1f7b42cc3d400921e9ce7b1b0e89233caba6743fee6abb52b0f5dafa85d2b168c11353a85602cc777df172c060dbe8f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c86af3523265f640465e99a497c7a68d46f40381cb101daeb03173c2583bdb071362ea4f7fdec8ecadbfcd1789169be002303fdc2d0efe09d54dc7863e8910a4a3b1db8ea2cc54f61731df33300237f9651e458fcac61376e94cae33f25691ce853d0302047c435bb5006730650230110c01454265af80b28548c5d356448cce92db615083481d0a7b691b384a38ecac15158dc9b290237bce7edbd43b447d023100dd37ee410a8c1732206a781593ae9d7adc7784d5595b330cd72529e3f3d7517f52e55e235c1147cef11eac1b712487bf0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e8cd753ceaba8351f9f8ff7f855ccdad29edc8cc21ba18bcfe651e7cb363c80c679b178c2302f1c9c4137b551db5c04902302d016f910ac8287691415597bad5b4f21499abc2f1f3ebf23891441cec96ccd3ae4f5225793fbc503455da5421d21dcc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302bbf7504cc0d8216d352bb6b76de2a7d2df1efe6b0ed70d027ca3cffcf02da9c6fb0358a3fb7cf9b84e5d2fbafa628d5023100ac57a978a5b0428268b8445f010d15979a46aaf019a95b6c273c1a095d8fbb87b4f781e8a0b36db4114663a6d2026b800302047c435bb500683066023100ce1cff0123c262f039a8bf37f7ed77f1227701c14343b605fdae4be5049972e4c634c83e1b890be2e377720490f6c02d023100c6dee9d95ab74ae0b3b2205aa1a239d025f96da2777c5f4ef5fd7d259043c12b1c9021856cff15eba3d9e9d3462fa2b70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310082ebe586ed8deea2c778892db04b52b6ad0766bbc88b11abdf65c41040669d0ffff04a9dfba375bf2429158cb9db096e023006659c072a6f8506871ab7c5ce0a4c8ee67e8d857f54b1e6452633c17b7cf0f652385a0c74f88bae9b1dafa51b1b4c260302047c435bb50066306402302c3bfd6fc71c17dabb40d11abc810c832e1ec4173d54b63bdaeb71ffe0d41092d68938f34195529baeaf01c6dd39566a02301220f64e21d73ff90a33608658e694f86fcd4ddc3c23287216ab6c0e396663a1fc213afd45fbd5b6fad4e83404952d030302047c435bb500683066023100c69f0b9dad512b25e62e2d02ddf9693a1a7d6a03c223ee872964b88c7e398f66d8e20df9824263c6e7ec0ea8ee75efb8023100ef138e1ef2e5acb9ff34342d7e6a88491f254e057aae447b87b0fbaeae660a483fd4debe34fee5fae3a8cb9fb91a980c0302047c435bb500673065023100fe7a6593411a0e2411473b4f094fa651b60dda011c6d1bc071c44abb30c4eb075d33b9e9edde6099f2b50e4a604a0c5e023029252c332a067d687bec60a61e5b1317e0fb3d0b2001e2b22a872a1216d15d54fac662c307e7fd823f9504eb3be7465e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230572ef6649ae1894cd53e8053bfeaf57fd772c4c7844adbee4476d877b19104040d9c388f46c8154e928afa0a2e47dd69023033b0365085bec98e7e87e8822c20c030b9b557656beaf138d29aa308f06c80baf8be50e8240c93921c1bc29e7f0a568b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d396f0e93c7c37a6daf988a9e8d899bd1724317f4164db28ed0f5e913859110a18109de36413e8faecbf0d88bbbe40aa023100a0df0b3b85829cc04bd7b618b9d4b70e30923c38d1c30cbd5f729c48393e1d377c1dab3d50b716fe32991c650469922d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100fa3e71ffdb7c731e6118bb6d0f323577bcac6c088f22514397dff8fa90a5fa2cf623579491e04a2f7bfbd2f373dba0e002304a8d2a3d057e884404451e5432655684017bc59f9b96d1303d36979562fad1742fe9eb7ada8eafcbdf6a6a215e0ac52d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bc51e30db5d479315f9278b73a42b254556515f02a2f3c680e4a8be8608e9dae872b0856bce1c9b89f26c1b586f7597b0230606ced9487fd1c1b71db391979816d4434a8af8568e279ba76c89a90743766768a64010e554170960a3b1465fe59651b0302047c435bb5006730650230383a125c4e46cd383ca034ef9a63a036aa34d7cc195339648c6ea455e84f0fde29cf20ac9bfe9505befdfee8a2964133023100b38e4f93268094e52a568aba5fad8caf233ef740f0cbd655f8f212618db51bafa1997d2b0b98fb1ec21f39adcd2bf6a90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008a4a9d9dc6e0acc59864660060bf286ff30016547dfe978857007d6d4747fb6f432d07b9efff0265f57f790cc04c230702302de966024829b64be89921ad6a39a8c347ab2a6e3b9a06a8294cedf1b70d20535b8531b32afdf045053c8e32ad3ca8030302047c435bb50067306502306bac19f1198dd94d551ace3e65a0fc9270341ff447c2173118d535aeadffae4a7557a814f4c7bca46a64918e51549be6023100ac7228dff2b938a09b3ed756fe5da019739fb67e9eef468219e1d915ec3496becc056b188c2fd1d690a6822244fc42800302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e21ed1d16b7218c649426a1d9c8b8789e22e72ef96bcf6ccab83e0ffdf96bc7189e8fc9e4631c956c3d6109c191f1939023037ef0a80999429fb8b11dc341fc5f956eb508ae2bfb76978b52e7f2bb7edff23d2d2bbf007bbaea688a3953bd0c879c40302047c435bb500683066023100b5c216d1b9820625819a4249f71aca7f3c9ee7ef334d85284f75448504fe9ad3d0ac9c6ad37058d7d963374b6e3b0f2d023100af42484febc4812863af1e4be9e4678780341d7048cc1174dd44975fe4426a0948c8ec6341905770754048db69a5775e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ae5c7f3b94f05af4b2f3598b532246619f5e68db5efa9f3385202a08ca1218f7845f1ba7a465f45d60f4865c5c9781010230025b37241b11f56cf1e2a00a3d54d12d1f051493bd2ba9410dd27b1d747c3bd88c104763349c3e8570a711a9c4d505790302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023010065365dfede7375048e132a8e7d33742211539d4fea14b26887d0190a1d1ba1d3a8dd768e4c688a37494bc83ba8e52023068818dd53ec4f58758cdc6716dee8c5356eeb9e08e1d05cf6fde09a5761cd5e3e99c882d37ad4be79474386c31b3cec60302047c435bb500683066023100fa0c69910f6e7348d7c0a05ad9b350c576b844fe3a098167001d6421ec0ac456e49a8af07196b4451896f2fd62b1dc0502310080a2a545cee4668d049ef444c50f6fa6d068337c82726f8032dc7214c08f8e4a08cd69af03935a7043d3ebb23a1c394b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301155c6f0bc173b8a6523a1e409e3c787618ef1b40d1bfa833695daf257298b5d4a663bc9e06f61da04c69aa72f5d40df023100a8c8eb5d77c54effdfc968601d65137e3f63b14bb460fd7dc0002544927affd9192cf067eef47f960a5884a64c9771840302047c435bb500673065023100d3b5ab47c3b816206deff60abc1eb585200e39846ad6b49b4be4849971d8a318329cf592d9f085e3694e74464e2c2df302307ecb14c531da41ddcca3ace478cb85f7e8609cbc7b9317751ef1ae5709cd8f81a54e2804832677869b6f56aed56c96830302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230466533b2036c4944c9de916d7f7070f4ececd057d0953e9773afa0bec3f780884c391293e4c66c19b1f6f9ffa65717b802310081c8f8a5d99be59ed19ab6361ee44076ead54a0d5f6f71f939b41e74d359fdc92759256976b130cfdde9c7e3151f4f190302047c435bb500673065023033bb7172c72641d1d8beb0d77cac3e367dfe1221957fe775b29e4a5270ee46b4717cb1217fa36732ad1e7af6338eba2c023100f1d507b6232cc696c06e134035c7eafd78f39ee40a7b126f6ef88db25707d9ee3e13487b5ab20140373625a466243d4c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100dc5cff39d7639b1b3317e037e6aa3159fdf52af13399a440bc234b21ad8e77eb117117af3b52ac98500f0e5a089f397b023100d5562591fb2d941921de40d2491629fa3784ae16ae576d7e346266c16ba9b816033b0cbaea029ebe33f0143a9c2854f80302047c435bb500673065023057ffcc5ef3ab076386eb63878a5df810e786c969ce494e980a99320d4a860c529e406ff28852a7ff68aac5b31f815cdf023100ac81166fffbda9f4f1815b58251554855b79cd128217ee5289cc88df08ed25bd38ac9f26935c88b42fa351f1a8057a570302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302308ffef2d28967975c409ce9cc106ef0ef9258aad0cf772b56c96ff72ebc80de2ba40bc98e9e654289de5f9a364a6eb023064fa96ab85dde1126327e70bfad9fcfbc6839e7e8b0ef8f911d3093b1982b61e8a5bc9e2ffe8722b8ae97f731952988f0302047c435bb500683066023100e1c8273f3f7b69e71de4d209efe803d4368638673992c65a744ce56b32f86a05867b1b7640f9fcbacd39a7dcc6de37ff023100ed6211b636eb07d9ddc4aaa8c5b0cc8b051bd99a0fce48fce080c7a109b4ea53d9edd97d8b639a779bd1a7cbc79615190302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303f914e3be4de66e6a464d24ee367623bf50a6b99090ab90d253ed8209200b6bd8e2e5fbc56ab14a2de776c17f4302eb1023100bb4b821bb66a7fe04b609e27806c4254ae422018cf0634714583d116773ef336a47ef3ef8c4d2ef1c603340bf5f362a80302047c435bb500673065023100d9c0d613970d757fa498204bcf9df1cf0c289aa693ab1fe2b3e89aed5841f8dbdcaceb25ae875db837a8aa4b143cc5ce02300454544bb6461ad1ac559bc1b7154c7ebe6ca689fd13320f7c5c8b273d7e240750f580ff16df1ebb95d79e7351172d1b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b8b07894b0952f93ff88d42854d1a4a5fdaef1cbd864452920480fcd143e34e397d2ad6d926765a9e4620cae196819d102304f8e8623fc89de9b9a5cf9d92189b57b55accc4161c7340880f44440e3fe2e4f071fa6f548315c985aea15123627ad760302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008b5da6dca85052d245b9d88df72a646c2f12f353d2cbd6e5d99969e148316c466d43a6a486732b8526972cbfc1746be5023100f568d0631e438faf03d3d20439c9a1fc74a3c1cacb015e0f68328c7c8e4868be84b3d12421575faed955559dd43ae4490302047c435bb500673065023100b7e5f9aeb913196a74046399df03eeeb25f32661f4361d1068a58469edf8f5266eb36bd205911cc82f279c6a9ef1758002300a291947f7340d4066dd0f667dbc33381b2d8010bd1d8a6492efce9b35e9b503c72e41c7ab7662ed6ebd78242a2379800302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304c5d34aa555795202fd06382b567021283bbed0895e33c585f05852663f80ab6dc6e0a8110e376ef8db1f906ec06bbe6023100f7497a37cd77f97949a0a0ae8394c09630bfcdd89a30632fb9c4e1fa3c410aa323335c9c9d3c41c44ac0a0be529e1a750302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304bb8f8e5d1977ae6717bb5afc468be88f8eef318e4b98e9db4ad93cf38c2fb02b8dbf7aa5c92b8b5275fd775a4d576ff02310095ac17aa29744bb1b10647d7812efe3c0662714aeffe1f625d12ad084e4b6fb4c4ce43e213e4f5d74e3b6a670be577250302047c435bb500673065023100c04b54cc8244a4438db910ef41264625429faa09f3dea54ddbae1a40b3a845096354cbbc1a76b66a407521fa0634ced70230622a012b6d76332e8fa0094310b2dbd4b6df987ff8db54f437bc80d294bb7d397174b13bb6ef1559e24c15b3df099b660302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bcbfc66034bf933c2e16fb35926e08b38acce96b0e1c2caec6553b7484eb2eb12c4134ee05e3ebc2460de2da33798cec023056c5117d99f248c816645032f9515fc4c205cb494e572c92f5beece4e6a2dad08adaf9642c8a314dba27f425f42ce7640302047c435bb500683066023100fbe913528dfcfe566ae92bada060916066f5d122696b876bf390e3bc92c8e7738a7129e6024473f853b299fa8f97165a023100fdf7c7147405f02695a67b8288d6cc1088ed361124387786b5c73aea216fcf7d7d44dc68e72a3419e4ca1128fec5dc2f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d27c03a768970781bc32edd95175ceb9a1dca757cbca281418846f8ae1e1821eefa17b6af5155baccc65d7f1b3063566023052293c77471fbb42eb1f5ca8a863d0aa52a3bf129e6c037243eb8a5350f9c5c0a10366d33f5404a2feefc1a7e4b0d7090302047c435bb50068306602310084d680262e65dcf0639b880b8b50d36bf030fac9730dd46a5e491e429d6840164c2a4299b3857df0a342303bfab090f3023100eab1234a6b0298f7d19a3867bb697a936cae2aea1f51bfce882653d4f1affb75e63c78bf8d986374e545e50c72dfc7f40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d193d604931a959276c7dd1a04efd56cc830210246d672120e2ffa26f7b6a153d43b01e093d182aba641aa855ce5aa5b02301752fac4495a70f088482bf8228c368be2370c18e27fe88449fb1a8b5a3a6dd69b0ace3ee24e271f73411d08e6a522ea0302047c435bb500673065023100c3c22bd6e3541041962b91a7d1e0a3dd7b1897c70ddb2af956e21c6a1f74d176d4669be9be435e150a634f9853b6450f023060e8b6c39fdeea24940fd66c24647d6ecf4ca038826b66b21ddb91cc270fa2da85373a28b79c3329f93638ec02b7d26d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023067b787eeb20b5b10e681b01fd3c10470e242f6fc164a674d65f3cb706be02320db973eb13facb6272bea11cf20ebddcd023100cc6354456aae760ef16288b1c245775bb36464b895a0f76936fd1c3bade0f368773e7f6ac9b29a5ca1cfc3990e4b833b0302047c435bb5006630640230217f25db454cfe63ddc80d33c65fb251d7828b7d0e04daf43e9f702cdc9618f28fece0ec95c6ef80907d66acd48a59f402301cd1f73945947d29619f2ee0c78da5795a3da8ed4d8c9bdf205bf30b03e7e60720e5e34a9021de54fc05ce1faf5db19f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ab6de0764b99ea7f1b57323911cc728515e0b66a8fbf0fde6327b74cbdddbe717fe091bbf4523886aecabc71da5fa983023022712722aad4ac8d19faaf2fbfbe1c0a5c448f2ac648b0c8f5549ab1e40450753282530109c38b6a6fa26d1df735c47f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100df898f38513567eba19f0cad3507d98b523c5ff82cfcbb21016e4f74a4a86cbc107a8da684defe9235f0af25b45d481302301e2beedc13643a94b84683c2221ec74dde52f7408fbff989de9c4f6fddc902d42f4c7edf06329e5e81ac5531ea0dd3f80302047c435bb5006630640230304856336bc41776f60ccc0732507815a4d06f2af9ea27521c6879220fb252c2e35ebb63eb184e7a7102d1009a61d6a302306bb0b3e385f271e48271eb864e39903a797335fe4ab98cdbeda2ae50d4cddb625db1c1bcb3ad5888264e995ea3b77ee70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230774980ca9610fc70a895f9366318840683a8386130a35876f38d2c1db1786b7f2d5f036b33083030b3ae3fe6931cfb3802304d982e6acb04cd6692503f48605772941af9448cd7a25bac4b66af0ae9ed34785d1e324923472b39caa530f5973f85770302047c435bb500673065023100fcfc113c4699d9e8930c818eece5b62f57d19b1f9f8b8ae696a9c84aec7563370d6c1014dea239a81618fc35facda35c02305511e08ea6ed3fa18434441ce537680a322239875f001c3993415ace1eb604598bfe823adc44f93dd11f5691a122eaa00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d4d17920851ddc31474422a97db9c94eb11307f1d60f38597d9eedccef197e3ec93e010a3d0f851528206071f2175718023100ca97dd0fbec58cb39a495f34bea3f42acd9b3a41b3eafec71f6543fda4565c5270abeb50355504df960011e754294d350302047c435bb50066306402304a63cfdcce956b703639aa3cff279eee248246f814dcd49e60e0d7187987d0692dc36943876a350b26ee6116766109ed02305be74137e0c5c64c6f91fa9a676fb0a8b9043ca4395bdb959158e84b5dd2dbd36eecf55e8ef4ae36652ebeb87bce2ab10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302bfae05f3b5ad4deb6074576279170e263a5611910af0d64f370b68a46c4f30fd835047a932579f91ab7aca57a4a0859023100f01c56b4f82dbb9e0dc3b2e81e147c4ccc1230b61f72c5f7193a1018e22c7e2311316eeb7ca33901311aca32d5dc11190302047c435bb5006630640230312feaa16eee058a4411676b0c7987887f0f682d2d21eb9034fb42df64344fc66c9dd0945474bb0e06e8d18297bb5d29023045c524c4f913774395bb277ba35d1d58d322380a9fc0fd10294b5f2660077c7f467697a506cd03597b67664ecf9ea92b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b9cad7da239ca75c0ad5f7cb1ea87b63302159d9fc8ee8dab4bbd353b8a624c1555d7af60d7ad25c742553daecb61f84023100b1102012eaa5239b88d63329b958322b18881f94a99aad4528933d12b4992395c6271bc269b3896d8ed1e91ad3eb53920302047c435bb5006630640230239293fc2c677e6ea57a14f4b8ded89ce59b9159a0ffa7abc93b9cbdd2fe6357de84fdadf3dcb44180651072551025940230200262a44825bf78e61718aff0a27f8a22ee6c5c81e182a3e12d85b5a36f2ab9f771d49a36c5068a91f1f200975610bb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023065f432105a486f1e3bcd01ba8c920050b118df60ae1e934bdf84ccdd8099ad5424e647a47872a8ca824dfccd9ef2758d02306a824399223d026b46b6f7c7de6639a0c76923c0d4e55d9ec7b903e4cd2fcc16ba48cc46c2827a43dec896897bd3e2ee0302047c435bb5006730650230669c5c35852b86dd92143641457b1c39f771433c51f55eca96dde68dee3c51c785da11ba8eeddb70d372a24897714c54023100c36c77ccd3109a3e6c4f5f226f8a6294d59469a465b2ad93cf2a8233a060eca8ef39e5aa20da067e6dfebebbc08581430302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e1314aaa28d87fb92c28f0fadc5a443b2b6f1ee0c91c54d0204c9f152422b68c4a7b47394471cdb483f98eb09f4460e8023100aa6f076f5eeefc4e783ac3ba0539f0b50dcad62f4669d621883bdd94d36f3680a3f49326fa02280854c9885a2f9ed4370302047c435bb500673065023100f1780f11446a4b751187dbbb890345e69d8f64b18e5832f9ddfe19dcd135c3715a90a80e242967f302f9e1bbccd632ba0230692af6869a898ed7cf578520be491228a0563832f988c10bb7c3feba2137881102ea77791e7593d0116cbaac969ff7680302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230752a68ad769d3f4b1ac1042d5bc89c07eeb22c46002e1fe6d46675681ca677aa400641a68e7f19b7ffa73ad2b7f5d465023100f314f215b043538e647e1db0d12ebc990469ea9fb624f2624130b0844b55d2566ec525499703902ce32ffa2b270a96a70302047c435bb5006630640230559442f3e1732084c451f012a81f89dff523fd6fe1aace6b6669dafbd46d0c34b3c6b09dd25e3e0bf0c641533277d31702301f1d929aea374083c5455b4d2b45c4966482cc3b0fb02f99be618992bbb9b327524e4b41fcbfbe59f0296269317fa69d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301831483363b696225f36f7ab4805987b05959075e0b33caa709fd1727d3f92375e96a45fd7078f8935b80daa9154103e02300d895039d722caa5e15eb75d4b30ce115a386248de34ee2bb4e3ac1ba421c5b9edc3e033f97a2d47dd6e21009278810d0302047c435bb500673065023100ad11671bb009729463d21d15aea22f3e8f3293f1720eccb298310dc69c782bc753886b164b15385748538848dc5803c6023070dc9cf9610277f74c22dea180feb4a15ae1317e86deb0cc139a713f358721459061844aaaac2c655083a1ec096c7c670302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a2fdadca0c6236b611d759e821171fe72d07660f321a9a7867c15f525e7a34908716054350e484141934f8084ab700240231009da6a02737bf5abe2ee526c6b2191bc1724743948550dbdfb52394a9b303978778b8362395799fb1a454f69acf16547c0302047c435bb50067306502304e59f6ca86d0af49199582aa9c1736f0b53712a707cfd8301449d5ad93e00a2c51aff8dd14e79307746ba28b06c417ef023100f514f5f0e46f355f96a9b2e438e2d8f30e45a47ea26c66ca2627722b8cacdc16ff7e03d31bd3dc06953d4926419d9c780302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230590f1424b1a367de44efa5baf5225816e52cc1d8cbbd0a62367886a581adb9965b3da67471ebd459e5b10e335ca2604a023100e804982c012e08f23ffbf637f5ed8efc8b22797a0b0e61570d7ed80f5b28b2bdaf56f9f19135675a733dbe45f389b55e0302047c435bb5006630640230160abf32ae213a25aa3a130fff2cf96fd5fbdcba5ba1e93c72bc2b0727027a321d2e417aff3216aec3380e6c4735ff99023003b8c1ceed3ea485703a5d030088e9d714a8a4978c72ae8ed61b5e745550030d7afc2dc02492f44481fa8f0e7ffd2a890302047c435bb5006630640230084cd54c1cff27907db71fef6babca5fcab9f28a8039e9e76150264609234f9cb0f7f266aeed08e4e370c8ffb8ff70e1023071be86c2880d802ff79a0466e9df09818107db633075fa337500aff5a7bfac5a14f5828f73793af53af7e8e30d03dfc90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ebb645e6f06caed8150ee9ee67d701fdf3ad655e148ca50167d0ceb52b199516614d4f47908e303634474fffcf6f857402302c2a00d21be3c03a007d87fd0890ccd116fa21722170125bfd19aeae331204f7654313b0a2f14375e58fc38b1ab2620a0302047c435bb50067306502307232aee3cf40269a1f73535da3db7424c55c3a6043bb349d7f8015056943cb03c7c868bd2bb3e2c61058e6bd8054a386023100a8353a5eb2998e9f36f28599d9f18d037aa3ad960b1ecd2c211122d3d3856805af9f841c674ee73a5ed62a17ea96c1590302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008d7e1f573c229c7fed7515280570a597efd34a29a92c98fefa70a78c502c4f230bdd0efb5226491a028c45e529d5580602300d353be4263ef8180ab145b0b9826166560a84865892f0ae3f4af218e340c89b537cc5f4f4e5445ba760fb02580cfd150302047c435bb50067306502306f6b1f351e9f9f4996a5e7b72805d72cde43ac4022fd5a0ad5dcea486d153d8cbc8283298f782a99c4cf91fc83b97bf6023100c970d51f2b20f4c9faa4b6fd7c0ffdaa791e86835864aaebc0f576cf8f9f7afc09079e4ca31e98e7d2815489b616436a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100fb9e5106a49d97e47b489a45d5da706f502ed3c4d60941a97a68a0c8711760a1d34fcf0632b5498de0594aed521f54f80230713c52ab9b782dc641b49091142fe272794429a7d3fcfa967b17765473034a749fbe396a480003434b116055d3da25560302047c435bb500683066023100f71752f26846b86616dc46265f89a9ac36436413b3116a037bcfcfa6c4087bf67ca7560506dbb360415efcddce0b8022023100f4789d0a59f58dde0bd793300313fcddb5cb2857369bc24a37e2ffe624f5c1398c6c3c02b6e2a54404616927ad820dd70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a37606be5c60a0ccec2bc28a20bfa841b55b571f3f28a22ab4e19257c7b08dda4815adc6332bbd16a6d7c9ecf5566f690230448518919327d956c8a78f2082d7a01f4d3ac42a91cb4ccbb6a5fecc63bc1c8fdd1807ac50d2f3572798beb434d071e70302047c435bb500673065023012271fd12aaf91048e30b15f038cc02de35732e404f7dc38a0860ee8a871da92c59522f657e6eba786c8264908b514510231009941b8c90e7f202f487a5a888aa5f2bd93e47bf8b5ded5bfd96270731dbb764e4b968e44a13e8a435460f0af82481f7b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100dca8d61fcaf8991512088231c25ba3c51e0af9d66d19392e0cf4a59cebbfacca2cde3c4c80e083acaa08b4b4442ef9190230082dc69d461049f3be2c5e0171142c8f08c094c1beb59fec988736e04f21b1807cc5278dcb6aa7c9f7da8a35af75fbd70302047c435bb50066306402303527bd347f30d69fdd98d0c7e72ede22a1e2300ff0a8e248657452f398a64681845dd73daa9b5121fd7128c463078b6202303297fafcea01ffcd49bd2b53e0f7f07d05092fbce6f6e77011fac0c0429ed3ab464828d05289f4818fea626406c266f40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008e964ddefdcd886c5daf9a12438f6975a113d3bd037bfae47c040fe575cdf87a807f18c0e73675999f34d15191d6bf61023077466bc904a6c03ffcb45d3d495972543da3f6d0a5f5a9031d02eb142083a0a6060c12d7c8d583f50c9477b31454781f0302047c435bb5006730650230486761a57f1865cbf95d98588de058d52277fe414482a6928ddfff995085859490806f7d13196e8d251d8b5abf8dc92b023100ac86538b4e0fbbceeecaf33e77b542231e88faa8e9d53a28b07ed828306d27b69a3b88c0133d526426173436f62603750302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ff2ae7c7cc255eb44eb05f80bf29844a8dc4d8058915a094db8ad6ec0a30bff0d0e4c01d87164c797d115ab6d1a25c8c023100f19f5d202b8b721ac19877fe32838b97a5abdd474bf5879ce9039877079b18924eadfdb4e4d5fc12db48812ddbf7c0790302047c435bb500673065023023b30e7b7040ec66a656abc7c2ada2107eb7d63b9807771ef2d16a6c6a9a530626b07dcb22a1c8b930fce0352b9e27c4023100cb1a4190b846ccc60c8728c6f27f180ee4456832ea3ba429ba6664b2c0f8358db45d7d0db9c9804bba5f10292f7e19d20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023031aab2be2de7b0c5e06c925cb718d01a3b5953bd19a46edd57441a5f5e5e357d2c57971b487474d9a779aeaad3eeaecf023100c116dfbb8859f05ac69cbb0b19cc1870bb0f6709795ba7b3a9a7e02d781cd998507fcc9a683ed586f1a5fc05088ce9930302047c435bb500673065023052912f848658a1471dae2554c29be289c503be427b475b8f8a413c2869f115d91194ec562f19967ab28aabf4f8b7ae9d023100a8bf5e702e82806ae223ff5c52c7b5f85e1fe83dbc1c23863eba242be392b497b31cf45bd5d2d5665c736922c79fa7320302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e23ef21b9380a3b8d5305a6956dee5443342f5de88b0974726f60a7662b4a259021a363cb21118c51519ab4b21d538bd02300393a12f11ab6fc66c871ad9ff922de412faa87340b062c1489bb6f200dddc72999ee63c8049cc5a4047e2aee1be74360302047c435bb5006730650230422fc558c42a33bc8f9954e016aa1718d845f15715318ec7f63b80de5d6cc91328c8405184fecf977e96931ed1c980d6023100d6929b8913dff4caf28b657dcb77ef3f14606969a2de941a743b5eea518b3f4c37224bec9f35708832f0d348b272e7580302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303daae0a23084127a81c12bfebfc6b4cd5f626496fed9d3177881336d27836a746abf87ff91535314b0459b7250658d340230070051c888231eebb20eb20a2e21152fa59b380f7072384f0f19902abcff11cfce24a31b6157e51a7aceda7f5e9ba2a70302047c435bb50067306502307ec10c21c3ad9bdc2d961f6d69e20f19fdaa296009ab5f57ea501816c7ca9a650f55f5f54aadd69f1fc797bbc35234ed023100db98e25ded1aa49a7b6d25cc21ef9271524079d47820c1a62cf91d0e1ab471ffd7c72d73bcdd5be08ca25323b730a3d30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b6274a75549e8e479e64947112c6e65afad2f2459dfc92f6e6aa1b0a481d67d04df098d4ea93add5c7d6c6b5e5519363023059eefda7aec85efbee071ae153dbcd58db837e1131938910b56b15b589c6e3e693a88ac2c1a8b2f23653603cd31647e60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009635939b35f89c36fe424848850e0eca4746130900cef7c13a411d3e073ac49a1941602bcaa7358ae218aa3c9f881a72023100d2b2113bef419c6fb9a078b972ff9f3dd74aa6516a3b887af611a1e4375b69f7e3cb54d016e91be24d9bb53a2c97dc510302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023050b760220e8022a783fa8d994c2069f8b1ae5d435c06f8367d9414a1e2dd594b2a53f69cd969d210d5d91a017f2109040231009841f55bccfbae9568eef6fe077284c6018c9e918b3833f9ce3b6812347e31b0d909f71dbb98ab9d3b672f3037c7de650302047c435bb50066306402307afea4f4ad78ee96e9096fc1246cc6099ba80866a540b2d69c62ef4363c3d777e2fd93dae7d80fe3db1454cefef9479a0230506591735b288778b21b979ede876a0543ebec0f133e2b901d18e60089e83d629ffbcaf79c3bc8f0844945aadef4a2100302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100900ca7a35b670d49be3601358c16964058ca3af1a5217e53cd88dd43d8185d5d0fa0d71cdd3efe618a9308d0dc72acb8023000a8abd0a0add8600d703aac5a0e4073c744f25744ed11b1dbed25bc2d7ef19bb973931f01c51f2b6601109429e7a56c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100881540cb4e3f0e354e23496b9ac8cece0e490f66bd89dfe12b0de5d5f337b503f6bf543608ca0368fa6f7230608c17d302301157f901e22d4062ca872c593877a631242b0f3b8ea71257c2e5e12332c7bcfb6dbe64aecebf002bf5e4df6513261f790302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ae1a5cbfb14204893c43d8efb89d4159ca558de133774c46711ecb21ae5488543d1abd5fb54722180832582da491c1cd023100aa68e1e5e7478f4d0fda872b33d033c768a8dd29e2ce5c5413ab30b3c424a019cb44f6481c1336bf3e44d8a233eb94310302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ddfb7f1698c61fa0cff11bfd55109fdedc6af8864a5b2021fef59f1a3c08d91bfbe80cab27ba029f4f7e9ebeab27a42102306b7771d02251454aee2841310da7d2fe1023ba94c48babaa755522e2ecbc97803a904f773e51eeb40c2c35b40c2380ca0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300d678aa551aa5101f803d5696171ca56635161fba94babcae77af5cef06060aa1c659ff58ae7486f8b617363779dfb16023100af5134f937fba6f3edc97638457cea213fc944f22bc29c155db612d762e5130f84ec1c26cda086fdd882a1141e4799e10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c5507f7a8cd75cb0e80f401153003dd30c5d178b23bc43950f38bb8d5a952bcf56469ad7f9cbc5f5b7e9ba0820049ca9023100f7d5175a381b3dfa394b7791acb85b4dc12f1e00a249a59f274764bd736979d94ad8505e91469cd02ca23b7ebf094a460302047c435bb500673065023100c5b1b4f2c118bb63864d2db5efffa2428a518a59f12dee6bf6697de17e6431ad1c5f374d27d08be5560d47cc936e47c602300bd46e278b85e3e8214826bda535d9c8ad740670dbb9cb1346353212e4f6f75cc8666cda9a9dd3a27f6f435421cebc270302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100df566d0582e2418ab4d8a742d097319031ab75044f4b56c40c0ab64187ef751205d8781c71401cddf7b0f6533c1d42420230553c8608acbb25be93638312c2505ca396a14ab07fe1a748167fedbc00cb457386f1a52ca2fbe5d3d14433cfa9e5ed310302047c435bb50066306402305613d7967e7a20e668c73e082288916f8bccf48e2f60e3a9bca5f8f3e4b05e96ea8e147656817f1f1094ca4f0f776a4d02307d0bb93cbccfaceb675e86e5e9c4e44f75cb5e7d413ff98f649bb102a90bb3b95b00001bfea6a999cf70371ed7bcfc910302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e3c0e3128fc39002e6763f5d112e5e075308795492472c375eb2b37aa77f3116d4e2e85f5aae57595e0fe527738b2dd2023100c8faca9aa156c3558c70a93e4e0d5b696b73bde53fc849c2b6fb966d8c019b05dfd1a6fde1e73e76d5ed79f00f870d9e0302047c435bb500673065023100d09146012d7a238043e8e16d38db2acbc150c8fc241ee7af656ad8668afad988af59b339f7e56fb562a8a899367ce8640230206a7ba4da6f344915facf8f03ea9e15305ecd50e75ed0944f10ed83d8e98d54087e3980362a90e675190d1d627189a80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d90fce8a4a85efce5c484bde5796189e9f18bcdb2f62251bcf535c780d1db6f03ee030e259ed3efb16e6912c32f1021802305d0e5c67151824c3e79157b4fb60959253fd93897b56ef792602b0bf89021593e54d6b461757fb37c017cda63f29e6400302047c435bb500683066023100e94009a022eb0c7299ca358bb964cf5ea067e733756fe7831dc12ad7a87e123de8ce37dafa698f18aba121ddf5b0e6c70231009ed5790625dcc7c03e029ac46e913688e47b63a2928c21b4d322ed9b658abee4c52aeeacac0cd2ac6e4d1945fed1df5d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230429c45954b1c3cf878235ad93a3948d03ffe1c9484476cad2811fc4c75aec987c3791275201a139f34ca9dae4a7df2a4023100fdeec1a6894f3c6cd21e5590622ae5801b810255bbf3d1fe1fac8161803d1810cf0e8507e5b3e6416976a9fc981bba930302047c435bb500673065023100887e85ceaa6ef33ce9986c569949dbf370b8edb9625cf520c07274824a0b634d000c19f950c101f5aa33229ab41697c80230185a8d77eda7a39e33354dedf61515450241abdc70d56602e3afd3b2fc6922f580cbab4a0fc3b16ead3a25d27bc1277d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230428f7428d1aff4cfbe384c38c6320ea9d917a9d0f2be8f6a17e68d8ca98cc6b8557ff14690e10f435b0f0e4fe5627f3f02302929a14a5fcf69ee450481836394da7efa10ad960aeb8e0e361f0683f3a9f1b499cad62716866b874c70396e505e0f4b0302047c435bb500673065023100a8aa93897055523665c35637d1d4e695792fbb09743dc9a32ede1c0ae4bfa6f144197668ac4424f74bfac1f109c1569f02305737a71df5b8c0e4937ad82eee02f9f52d46ad35453e382cf9e0bd3386bcae5b472726f658de053d19ea24e2ca5567990302047c435bb500663064023021a187feb010fd862be8292230f6bf1bec4ba93c36c9c75a614e605c31ea4aff14a27faf1ee465631d9468cde4c23c82023067b5151f7d69f6f397d3da0d9400eef8702211b8a67a507a4f2c84d8a6b8280d674ce105b4bf3cdc51bdeb07d7ff1deb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307ca8b3798db85c747662c34b0529c16b285a33722b6cc0010d5cc1ad0fd04dca5d64fddcba40618721e78c0d308d05ce023100d6249e90c671dc14e871e4f3a7fda3764d20a17f77b5a1c33ca96d9201a0df9c1511e9e7949f747adf709967ec8805390302047c435bb5006830660231009f1518fc0dfd6fa37f46b6c02115186d1fee949287c8574e026667d735afe927185cb032feea236038b3ab5382673dd60231008d82bb782072c2423025794d2b31df667419eb858ef82977cce53d713b8fe5be426e5ae1a03715fd2a56d318727784280302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009ff777e406e16ff9d64d54db4199d06034201efed70d98ccf9f0363a96af67e1e3bed8ea384fb15dda6f46243a4b76740230770adc9cecbc44df269f187c3624c6901e138bf941b6aed364028ff5db642e3f04ff8a0216d75f0162346b717bca21a10302047c435bb50067306502302e48427b3737522c8a3197d3ddad21a7992cdb42bff86540a58b4613e96808c4c6e7c2c14b071aad23e0b3159ad1c29e023100e2165a0237ae56dcd11c1f1774eee903cc41778f2dd392912bb8ad2237cdd159b62e8a8e749a801eea9cc6aad683bd9d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300e9486b35b2285d33bc8d3333d9dd9802f64bbb7258ac94b8cbccdefaed96f77335ae0398412967468fb70205195160202300f7154b896dc58f3cc067285a710c55936c267d7b5f930f858bdf43d4c84197bc95ec1ba96d11ea390cf174146e531330302047c435bb5006730650230276b7eabb3c2fc3da5249dcd26f9a275f8cacc47b4dfce9a134cc23562563ec8bdeac41440aaa3ab942cc02c0fa89306023100f4458efb7a1e147b22b419049ab29ceee10d81c42b944a6d35f26cbfa089b2e19240008588606a24e0d27afeb379814d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023077bd0f253ff7e73d29a168ce9b69897adcd61ba50e71e045524a3fd49e738f3bd996e4ae0bf119169caabe4e1cff3b21023100e375d4f72bf7e5c5dcd9abd8ab977c31c0e91ebf67aad8e2f9ff38dd0c2120ab4ccce195a564420d11c59dc6dd6337f50302047c435bb500673065023100824391e427a5c4f86c64fd61febf60d138460d699da4987b0dbe754addab399cbe9333837377d56dc7a43b6c6eed32af0230776ce9c56024bc3b4e5576405f9d6e8139dc3d2e4075c8d6dede9fb56b1994bceaa1b4b2ecf881bde7edd08758ea44840302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b5be7d04e24178199e1f6689fbde1d4c49702deb690c59fb5a6faa0ed329b7839a15defd12adc1f8d2f7a19015090ce802305b32e0046035fe6d1313bf9ded9d7c5efd30f62948081391232c167577cf437cb52b082cc34c662edafa8d4e2af456df0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009c10635b5e3e6958afef88fcd93c03fa0e304d070b98e6658aa4dbd38c1f30f2a2ed8422020fcc13c379a51051dc148e023075c095e897dc8ae46b8b48d51a4d671579612f2105107650cdc51ea860fb8c12800cc4ed831f42f2835c3b1f2ab3f1150302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b85152c425a34153e2fcd7687d902e96f8d21ad9caac9fc451faabce97185ad64087b19d0b4a37dde48b1476fb33ca19023100e88fc5bc0110d446c3738fd896af147920761837c490f02f1d7727316b62cb9096be81cd79a023273d91409c17acef540302047c435bb500683066023100f1c1f4a44b51104b9ed3dc0fb0f4591c697690c7f7ad149360fa9237b90624f0abfa8af66c04525c01f0e9240dd9fcfd023100fb8e2af48c2d8cc39e934f771e33d3dc7d663650ed4da4cb31616e97bc8aef57dbf370ce28479d16eda37c6ab87a28ab0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304dfd16f4e5ad002c9062613d85966d49c827071a8ed424696755d614369c5c5b6c7c32723d3e0a2f8688a0b0a94538760230167b312205ef98f9faed9c95ea1fc7c9433c06a0de4bcb2f60c8eba571b5ddd2661ee912c379215d0dc4b6bc54ed7b3e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305c8b691c4640a05d0d59d672e9a0a61d21cace5410d4b2b0c840d6628547dc20b9ae4ab1238336c452b816ce9c223c8102306d71bbd79b3e5aca1722ab10d8bc1ca7a9eae8b61b07e657cb81a28cdc22344ebac2bfb1b2af81f5c4222dd16ac2fe2d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a94b2da904b953af01858d3d966e0cafa99071d96fb1dec6c99e1bceef05aabdcf4e927ce4be84e37fb1e617ead2f750023100e182a56aedd94d1ce5a3936e316508e1b4c53dc1a512225cd4d21552121735e515bd9335a631e2ec1a50a6e43ffea2cd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100cb069b82d8c5f883abf0a31064196887524f074dae76b758f87b9a5a10cf38ff5baf4267e52d853a80175138c90b51bc023100c0c4ec60c6f418660a2c631441478435b103900e57e81e1b3349477e3f665228ec26eacaa7505e3ef1fb3c4cae717ad90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e7e5830bacb399908d215168dae237d05c5d01323df30def2b91fa4bbcb57fb85f00e63d21aba7a23f2bc7a3c62df1c5023024a2db06b0bab6f2c0376c5804543156767a3c7528466837f572d7e79b0081e00cdfec05cfc0bba8d8d8ee1e2e62fdfe0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e2128da3062db13d24da497e1564adaaf047c26037546cf0d18d94233cce76d8e9a6f7af8d15a81a62eccc80c7d8ba58023029a379355b64135237a48b0efca6114d1fc5d80221efbc4943398eeb915f495ba549ceb6ecca2a41ebb305aff2e337e50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023006034c36e7549a7cd3502b3f3b65b37a9a387c9b9fa723d8a39f11e9db654f4bca89c2222e0133a1d71cf061e11f684d02301d2b16b32bad6a24eea09c5b37990e0527619325cb66e5ac03ee2049859a566f7485ccb360f25710c59b80f96320a8810302047c435bb50066306402307cbfb9f6759208e625c6c068fc4cafec4c27b178dca3767302e6a125fa82cc258f49df4fb07f8e1b2d046e5b9386e2f4023003f233d48f283a79276bf39a85e62551bbcf4a03827a6931a1c09e9199073fce399bfaf5226c79c0773e47f08b0968290302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c90704383e0ca900899e32eb40f5608a80a51965d467511ed41e7d6dc7247725e8fc7c43ff77ee201cd69c6b40a4079f023037e616d803826b74dab526348869c473aad20a7e3b0d1e0661c9d06e994a08293222e01d269bf2b8bbeb70e7f6e273220302047c435bb500683066023100e34769566e16e64e784c4b83780a5b8c6ffd95bd313b7ec6e20b6c5c8c057685c9223f6b861ad482fe774420a312a55602310096ccb35a3165cc21fec9a6b0d0cf13693b19be2e0b9f7792804d07e3eba38569de00a78849132b35d43ffd67311e5cc00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bd9be04e8f0d684a799e7fc6df4264f653e8ed1c07baed98de527b3aeb4f46ec04f78706fca36fe3750d7da268e6d48602307023e94c78fd92ecf0a4b6ae42ec610c175f51f6196bc758e58b95e6e9bec5d4940c2ce586fcd5dd1f9f56381c421b680302047c435bb500673065023100b6a1fe7e117174ac3834cfb773a3d8f2b4ac0fd3711cb3601103eb163d91f39d5c1c70af55f8a05d37f0066ec37f37a302303b6e5642d68fb17ecfa34be0bdc7f9c6647413ad0295632d8c037b3604708e601f1e3e0989bcad70de5f70d4535df32e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230039d42e327dc7a9666229d50596fae48f0785417fdaee76f05eb9f4081a67819c314864cd9d12b75342ae209ebb94d0602305409eb73c7a190abc7544b2982cfd2e172205b8283c3b84de7bcbd3d668110310e9eac719819ad2cc5dc02523a8455ad0302047c435bb50067306502304e9350f47f9cb37e022a2c7cc07a7cd365b2349da133ab22568d54b4d0d6ba81246c78dc6918105ba8181a2ef8b3aa35023100c5d862d8cfc8ef5c43dccae08486d892b02f9a205e0d8e126e32cb126f619171d82091585ed664a959452fb8d240c4370302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301f017296b3ae3def5761174cfe5526fd85cdaee02dbb9faf36fd88438ec3a1b2dfb61b44cd78aefd2e91d85be63254520231009bfd028987510385db4ad7bcbd530965e81bb76bd1b48da1ee78afeb122da1af1fa15bb0dd05dbbd05edc403e0982f130302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023075930df88a866f0348cc6cbcc777a505feef3337a72c1354cf21a8f31d1da1d6bbcb1d6c5305e938c610c76c1ec8cf86023044bf78464a8a261d8497ed1fd43750dd6d57e9b2e0d123f10cb1c9538667331a2c6ce2f5fde5a9c2ac4c41cbe2be54ab0302047c435bb50066306402303a126ead8d5ec627d22eec5540d7442627af6b1d8e7b61ff12dc4dadaa64261f288b648fbb83fc43c3f0acf63235c5b202304482a081c63413da956ffb35301a9573dbcb01625646a4827a926476414a7f46854f163e31eb8121502441aeb0aeb8d30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c0c0472dafe4f840643408df93d4571199054e8527d6ef67334aa9393e19c757d5c19cee16f557afa96e6050dfa0bef5023060c3dec6ae8fd565a7bc116b1190eccfffda200cef8d65de7d2e9889485b1fd1462f0b3f90806b44a2d405266bc7ab690302047c435bb500683066023100a34e938a23b1ceab190abea847ec4944cbe2725120a04e5fab20efe4fbf7328818046fd657bbaba6e8aa5be7d1c5a246023100f5da9cf0698e518c1b3627845166fb65aa0141e52d674d9e0ff2f3547ff5c1732dc31b83077e7cbaf222a4502c80f7fe0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301fb0f5131bf0d0ab7c0e844c498ff9bc4641c0708fe30ba8cbebb7be961d90456f7a847f6224229442e6d61fe6aa85bb023100acb2a384082cf0bf93d50740d5c6b80799d594bafe2b5cbfef313668e7a593b20516fd14703ce7f6f337c60cdd49f98b0302047c435bb50067306502303820695724e9004acbb5a805f4f985f0c99a27f035a772f4e613b847bacc5041223c073f22d9a32a7b14757bea4cd2d5023100dba01731da3abd7860206a2c5dd7f9669f86332b38bdf0558a4f112ed477cf3e367c1ac07f9ad492a37811a4ef23be480302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bb30477c1178152fb42862c1cda151e87c52eb842809d0ba7a13ebb97e1e4c741b27c2cbc717efed318450b61318d9a0023056436feaa6fcc3d4ddb0cbe61ed6ee13c6d1e2d60cd21566ccd328c9e503454759f1985cb31daf856645cc6a0bdb34140302047c435bb5006730650230190953fd047535d8285bc928671b767e29844694e2a59a87967c6b50742053a7d836d8aa40aec8fb4405a942fb99d332023100cddcd7bb9fdb8c3d0230a61b384e3073ed929cb42e61bdad48a125c5a00a447152b6afe9396024a4cc591fdee73070380302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230470dcbe6375c639f664a78d16d8893cbf7fcb6ed17e85759b0a67533a17ad348694a5424dc729f49c233a1e6b64f5df502310094b716418a9bc158b2a0c6a50c0cedc5b7839dc06e1ebd9f6cb0e4be005e87c4018d4be8c0d8012c24e91bc826db67710302047c435bb50067306502301e183771afb602fa32be906f5bc2d7ae3c45590705dc8e44e70196ec7af8e4b9ec5c91d4b13ac240130f183d117722dd023100b812ec37e53efa1208ebe303b6dacbd0bf9bc904887ef9f8fb817718387e12b74580d4ab5c0b8bc0b0b522f3231012f10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c083c1169b55a6f302d8543b0b7abc81d41e759a8caaac0a6242a068087f9b8b9e10d92c9d363cf2527d6f5e944d4581023076287a484c37c0cfcfeed03d5b08d47d4e36f96ac5fc6ee71528786722760ae1dd0ba0f168f85468a30f4260d03a2ab10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100efb477a72a0ccf798d81308d57d666322548f70e18a96a86487b65d99aa01af71b4c0d04e45ade99747702183efdfff80231008e478a187fb1460d1813784d1c2aea5a128bc695c7a9196c9707e91430a5abdd26654d6eb75f74c28f39d719fc656e3c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023020966a70ca01827f72d8935609e7b8bc23efe8d739c815e9451afb701ac1545f0137cdda66cbbde68d93271b18b2618102301974509f9c6a16710ae7a7dd60d2cd73dd2703a001e910466ee028cafe8b9577389a9bc8c45c28b725b43c98628851de0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ac4ffb31ad3616e7c43dcff35eec081740763da9fdb84f638810f52b81085e259f4622e10c6fc640501ed059129fa8c802302a8f05e40bd3decfab12bdd8bd8422c8515a4d4870cbb34d7220cd52103a2941a4f064d5c510aac5375e0124cc31035e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304fe11fe98b1253378d965f93320ffc9b7b014c449b375b3efac8ecb214fbf0817deb713b5e1244b87c8f86589744d976023100990935b3dd83da4412c91ec2b962c706c96c327c2a8c6d5cc0f1a753099ceb612d7c0702a8934fb0bc9152bcb3f3b74c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304d16d4fd2da86727b84f8d42cfc0be5540283ff03c776c310cb173104cdfb8071d796b87e5961669ababf1b1da7947c902302c0c2bd3a1d46a572bfa08362cb78c852530fdaf05231c78370d93b193635ca4cd7f275e3af3ca2101ee4c22529ed8d90302047c435bb50068306602310095668ff5d3be20fa8ea4e3bf0204fe1576533a1c8e1d05758470d8f42f2d215aec70dc9a96696af2c20953443b3d8fd9023100f20a7dd8fd69a725f6d0d00c29ce2aba887d2ca6f60d3069474b7997d9f86dec7f18fceae3285c814dafdd082d0651bd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d4050ef4539ff8b87176965060f4ba24dbefa571624d2810fb8fa6b4f5bb928322cb104fa403f456415e43a4ae8e967902303033a58fe7968e20922e76d1b1f7fc79584a26f637c0eed0a948bc7978dd444db685146002b3d215f974d954fa84846d0302047c435bb500673065023100cf1a3662f64dede4bb989af26c8648709072324cfe7f55e1bc92fbcf20f95238cc0ff8f89ecdccbedf300cab5dbdd9fc023028fc7e21e761b1fc67105cabe4b2bc9274847b6019740355d8fd93ae628727d885ccd644833130ed02448750eb75a8320302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310085c90689ef8509af024b1ebb18788f425d811cee805e4bccfda3b1fd641cb6de730cdbdddfd0649c3b730cd4eb1f42ce023100f7e53fd9cb341f6eccb7a87b547b9aaac93290b985877a48eb9eb3b52dcfe5fdbaf3616cb4fbf1791c8cc03d78f02e060302047c435bb500663064023016708bcb3bd83995d8ef6c1468cc02aeebb5885b8248167dde2760ae78df766ccda545395e628e65d867551a1c653a0702303739d66c86da18b174aee89f0b69ad86b39c60db1c2f5377ae1e005ae355c60c59a788818530471f79c79c69bad289750302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307c48e0f52627e194aeb1d844f087ea1613d2dbc3263866c1470cff5191337299bc43e72fce3fe076abdbaa31ee833156023077e260913ad77bf9bbc378f88427c968b058072da570d1c14534e3916fb928511d45380f8652646eaf292624ac97ecde0302047c435bb500683066023100cdac8af2fc747f54fa7f7cfef1fb31c7589d5f138bdf8130a769e73c1cf555af611ca6346bc138910ba6b3e47748f447023100fc67fbd33e9885ff130fbe6cc9e222010ad72ec14bfbc925716052379135d503ed6a342e7e2de22963fc602272ef63e50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b2333cd0238fe26b96b8421788f7c92a4749850e747225115ae65dfba95b33b9fa40fb0997dac99a454316343b07f05302304114a7b476836b455e2659ad72f8ec4935f9bc581e51a6880e034d33842a891dfcdb877006b10dcd3a06f8e8fe1b7efa0302047c435bb500683066023100acca0db0fcea2af6a2540383e9949334c30ba3889d8cf9f655798d7e3c5faa5846ad36999a74c0a8d22b7c471326013e023100cee09c89aa5c28a5fb60d6b556ec546aac6f16eff9648bb5ff6b090370fdffdc75ab0f0001394925e17f708e576ec5020302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c2c794c4afb060664cf326edcccdf2fa20ab93400eaef4fbb47fd866975e80de280f7c00ab5edf153b9e5ca2775161c602301909e8ac40ef79e934dc62732a1991fbd06d41878564d7ba8def19f0b0a4ce44d7cdf2af8c632b44538cdcc5cf6170d10302047c435bb50066306402307cdea1b881a1bc3235ca873351b7784ac8e6a8ece02a8d3849c5728ebcd3f900aefe3225fe455ba1a68f5ac14a6c56ca02303a793fa0e9b02665ed1f33796afe48644561b936d353013a10647f06be13ac0f446816b5ba25c87eb183f0fe3d9d6f110302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301a1b842ecf20fadd19e8dd596dce9a304690e719750f72d21e2df2158737834706f32943764b7d845ff796ddf31caa8502307ff9f15af444b228ffa668e19f5da178d55a0b439b358866ff75f12fe1af17344702f498c0deaf233410e7b60b7a4c980302047c435bb50067306502307f0d22eba9121feb0ce30dd5fc1ebe84eb91d2fc90a9486b7d8de00b5c32f87afd85117ec21b23108348389f3a40457c023100cc9dad7e6ba82e93f64c8a564ed48894c1b54efce132a7fe73b731d0d2a2bcb3777860291a4c2379a55cdcc5508ac9d10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302a673f465344a658907ac3e3875c962571d99a7ec127463855a346ff04367badfb726d64d7811d14e030448c0480b4d9023100c2ea3695c80aa0b03340f1dc860605006418219667ff770abc0077c059a930c595ae0e5789f14b778148a132d0f4aba10302047c435bb50066306402300a002c5d7ff64d039259a06a7f2e1478c1e1f6b9cf7348e56785ca2ebf1a6fcd9e7669a07898e59e44cf79ba1b3beace02304f71d25c54891d6c716fed67eedfcaa49cb327d3be0b23a3104f6e10ef3f02bb5900ede30de967c1346818d59b09e19c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c3406feca67778846e1f7ea301046e13eaa31a86999b97182dba54daa519e626f345d422a645fc8a5781692d27a354c9023100eac57f8bb3eeb8e499843a0b02a2b37ebd973d6e93bb1e6e733db0316a0dabdd350b4f2134be6eba0cbf9c76050a99cc0302047c435bb50066306402303f305fed94ec36fa484b536faef49937230384090ccd0551055d7b50a27090a6e56b251678c4e4723484017dadec6d7502301bee79d149fba2470e06b0cb532c5acc64d95fa5e064916ad773fa57b027516a91a5e238c37a693c8a18ba9d095728050302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023055aba77ff01e5626a4de9bfabdb01598357d141dd13afdad1addff2fc665bc91b6ad73f9a54d446b5c3e93af7f6705af023100f1931bbbcd4f2c020344ff2886e5dcf71fc611f696ea0bd3012e5e0c04b52aa7b2ce549db629a67a9446ab49cd0a46c40302047c435bb500673065023100896f2eba724cbc6b7f5ada898a4e06d61fd6884bdee5859f673347b3c14b4cc86d1fab7b244246eec6f402d4c815b9fb02302fed43d8a608912b6c8d7ea19bdef80011cf38160b72d7b5c41c0438520ed73aa0560e9ae195c0ea6557813743a4996b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d24177d4332bd6aeafaac01a3746fe5125fc60f2a52e30ff8d7a420713f940606e8ecae154312663ff264a026c9c7626023013a9ecbd8f5356f275e677f23c1e3cef80046124641aaf5c364565d1fc68c635ea9d773302ca83bbad2598f4139409680302047c435bb50066306402300741f275346edf106a9c18b8411a1da44670f6f4a2e2af73b26bb455ec3add6b46b54e6a8f54ec7e18d9c1de7c2c2cf6023003097f468c3af5bf05adc47f8a99a21de0a9a0d35beb030e98931756d01be5751935a30062fe1e40e524de1ceabc40af0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301915fd89ebd8242fb3700ac8283572929f7c2a69039b6b5aab90128c382df894d7bf416aceb15f66694133dc201c27d2023100c943cc3e54790209a00e2747421b93317046dd7d27b2c4ae5636f8fa5e78b63bfd5a14208c8a8e1a4e51a0d7d161ff070302047c435bb500673065023100b6485f2fde76b941ebfeefbf8dc7b43a344b693882d9f7e9bd34ebb204aa623e8f18c036674ccd7809211751ecb7712b023043f03b8e30c8c1c7f710b8227a09b63b56cda0aee4c99724bd2b625a94ff98334bd2f3d604b820768f9a64cc654c26ab0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008ea6fc6cd2b339e51a54225cd40756c1b98a7023812237aac7d33a20e127eb3c8aa8246cc563e9354e3fbeebd382a2ec023100ff6381ba06c5b628b5560f1e24548694c98c4fa5f9d3e008d6124e71752ddfeebedc1cba2302046f12949752f6f8cf680302047c435bb50067306502302c8d6e4d67adfc5bde1b595d45994f29dc16ea8c5244a3c1de54bd5aa9811304583a294554095c2e24e9e6cc939924a9023100cce63fb6dcc1d2bf85e8f9cc1a7cf47dfc648270ae18a3d0c55fba413ee84e259333709fbf68d56a7c88e83a3bb667b60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b86fc984eb3cd80cd8b68d35712f74eb015154aed645c803caa1e9b2eb417e25b067a456cd0bbdfc723d5db36079b12d023100c44204da41687164146c75b4fb7903c20589112919a77c90a8b4425135829cbc4016e27af8e26b84ef21d7b3058817d70302047c435bb500673065023100b18ad2d1d002cbd602a327b0892f014cc60995d41cc257eb9dc0a97e6d7baefbcf795546d714e806060c8bd0d5c7dcd3023015002e8fcf83b8d7228936db393e0ca347451a8dfc9087662bf78290fcec37b2caac88de4ecc47a1b9dba6d5534a4acb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a5830351692e0f759d1c07619057ce774d5c04973ae2c97d108c7779fbf31f97cb8b663a27fe4b35d18ac26f9b7a8faf02310096674b8c29b52e73060bd768f1a9f7299f9e36454105dcca4a850b022c37480a7b4b4b1e55b76edff3a385d71bb1bbc90302047c435bb50067306502303bafef8cd49583a17c3cb989028921e20541fb6ffbdd7e1ecfc669f30cbe4be3f43b2a8e3117da2e66231447f0b9c1a20231009225e06ba5c592fc71305765af56823cc99a422a376792e6176c993f1781849b8e1fe41a84d76d18f188f6fcb1d42cfd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023072e4dba7fb82ef5973b66a7cb2d3a2219287dd93777c0da2185a4ca5bff2fecfbe318143e6cdcb2ad5de8fe84130b2b2023100afe2d4767e1a9c56c5f07d00406310b35978939ecaa0ab438b22f86a1eff438b3dfde35da80bfca45f01bfb8e5cabbab0302047c435bb500683066023100cd7e751187321bcace0054295c70ecad317ff3be357fd5892c551a16250bc00b89ede273c1ddc2fb8793923c5af3cb580231009a563ecedac1bf6762230ddc0b9e05f026edbd5d661db6e867437a218cb1c7674829f6969e851d084c7b15b43aa245280302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305445508125bd708698698b709e0821efc94def0596c0d70df17e10249492db85d25c97624de1d74067e1244dca38299302305133da184a3a23dc006710e9305e69bdcf4ca71cf6b3f2a635f92b9bfe818789fed0a86b6acb5dd24006dc5e6b8874720302047c435bb5006630640230049840335b1f09775c6e57005020d95abe525fd4e162bb8ebe00fdcb5c12ebe5c241487ad88e42f153807cd7c7ae9e04023039c8b8860d0f77c66e357ec20f1c7f93ef1d001dc70b1821b3f0b94d5840b4a4ccf18ac96d6d23cef3c56e2abac43cc00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306e6a9cca98a19d70e23249833418698f72d619ae02b2dee2e2ee072a0dd263bac348d5753d3958bd3011a5ed58e4b851023100909f0c2702e74d54c3484d5b432d31c69869a91d251a26f1040b8e919eda668a83d6db39e08298435df7ceb55f5d40220302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f5d5b07be3eda5a9347f57b731667cad11ec01ba9a5932eb9c20d3d9e24aeacea7aab4f62a2281360118366fcd9f83a402304656b72a010428c7271014271e2eb8cafdfe5ae135e10b2e0be57eb3c15d5d9f62c5702894714025d9cd12f14e8891f00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307ce96045070ab2d915425f2e0a826e21c3b2df669baaf0d7bfaa4c24d7a0e7eb5dd10be19b1717c1e059938d95e4fac902301b63f1f31e8b6f2632a7a250fb4f5e8b57f24dc6722359ea9fb095c4383fcf6b8edd9f9c3e3e3af461473712a7b51b000302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230055e0521caef69e5674b9b99986dd6341221e56b95f16205e1a14df1c66bcf13c5e2848927fe734bc18c546f4494dca502305b6361d84f3be6bb01ffdf203d6b235eff866f57ed9befb3ecb7ce18d194de19be6713c8b50f442bf4694e3889220ae30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304cb7182b1d35db8d6bf9d348b6aba8b3c901893ab8d9daf430527ca879621ad95e065e58cfdabe58e910022641d358bf02306d48231faff7b3e87baa5d6e9774da866feddce6810547a4292850ff00cb840163ccda3b0477207c19a56c42899ccd050302047c435bb500673065023074c085ee05dcf9085b41afd7808791598a9c7c2df3190e922fdb985e55be2239e7c88c4e31f9037530f0196405a25949023100a1cebacfddf79f4fcdedd7774ff1d3359715ba30488a96cf41b5925f7c742b0caf51225533a3f8abb392883fb92817da0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300a4d6f571b0c3e8402d919e5c2fbdbb481dd58b1776e1999ccc79d77b9537f07d324555798ea2489d183b5dc9d2a9a4e023100ebd71d95ee114c5fcd82b4e282d87d6025ef44b5d6163000318be195c485ba94bbfff02fdb93a6b7e54afdfa9a3c3b480302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f9d01c68cc450a7ae40e170b2df9226c2fb124b173b3358357201f2cf5f8a9d5edaef340723f67b018a79657672d663d0231008d4be22c7f5e32989d82a4fc9f9807546bb8b5230780a146b490a997c34ba83a2b665a0ad8fd7205c76cdfb195685ec20302047c435bb50066306402304c741dea8dfbfd2483b99c4ae947f751ecd654c6d87336ee548d59f474c116d2430d34750dbc21ba4fca9ac5b7385e2e023015b934353798952e107a0569b5f5f598926ff1681d4bb40ae498d258d770b750a24f684dd02d179c3670afdaabc09c300302047c435bb50067306502310092521362cbc93f91e638b45962c34e9a1ddef0d26d8b4b800cb241f08d5f2e091f9d423b42fd849039f0a3f0c8ffb9d002304493672eca7b348cfbdd9fdc246a79d5aa21dc7838bebcf350846b12f6484085f9ba9f6439653488b33dc31b7b16a09b0302047c435bb50067306502303ba42e30d49bb0e832316b74c90483f656182692dafc34c4eb7bc99a9a78b7541d872c8c43afa2a9ec5a572579761291023100a74377154aa6fca9b53af213a4c0321588259a310e75e0501c708bc776ae2038275b6b88a0bd7ce752d39ff4b3dea9940302047c435bb50066306402302b86d5af8340c1364357071b3092f5aaa6c9f4e7e24338cb9df032bfa31db7f72347a627d85ffbe539b0f2509b96e2f4023041de7e3b8980b68a43e6a1374134ef27dd1227093453b6a3d58d46a1b5a62679a73922cb9e7e8e7212e988fd51940faa0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300bad83b6c4088469857ddc798fa3a4eea2b92e74f45a3f0896f270971a409ee8098d3bb596f6b763aa06c33f5c43f7cf023050ca1b64243e0f2190d99d9a89007819c02b01c19d74591c2ea51554e744313917b46b2375fb3c4d2441407f6dbafad10302047c435bb500683066023100e92a8a5e66d4849c04b064784d97e13365d0ecb75c348aa0e2086d25af6f446fc052d6068c8c66e7d86d47584ebff1620231009f968f686edf32b1874841b124a89fda02d3277eaddf5fbb4b7402fa21cac0d08e98a7ad6b9d3a90ce1ebbffeb1c12380302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023012731aa87649a82c66fce281c5d82956f7c0e930ac58361f83331cbc622142dc1bb02d59dc9fbcfe3715e76297032d380230629f5e91ac0e364610f2f22712210d6c16dcff59b3c257fc9760f910dae11753dbf035afa558787f88e84db0af5ffe2e0302047c435bb50067306502300524662af0ac44c26f5d4941821f7cdbd19bd40832e9b63739aeb9e09f6b8346686493047745c62cfda4c21f79381ea1023100cf2c2e8504345627cefd8cf6324efd017ba9b2129862bb7ce671a31596400289aa34795e9b62b87661650669b6bc64650302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300258cd5c3329dd85ee963d67fe3f216893c1f38e7cc3164b8ca338b376f47359d184dd00329b21cff04d97c07ca97997023100bf09f2f60eb61cd81158c89ab019c69347bede2cffcaaaea1a2e0f431598431ef1ff3a5b72ef03c92c1b09d5a684f3dd0302047c435bb500673065023100809303362725f221d81abaa5d9c082e12162290f37c754172707792f7e02d7d679cb9a3befa0201111b2140fd8a6e0a202303b944a56577dac0daf5581999b89e11ebc5ade94c0ed9b8b0cce77773cbf37bcccc8de49364262eaefffe61b0985230d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023052bf030f62d991fbe3198f377d2d2d322beaf4b2280601081c10164c08e3b1b2813ac33182eec4600ec41a59f439217a023039acd4ba8ad31b85cbf167eb91c0191d33c8d9e976e378b12dd8970da03ae15467131da8c15c65612fb26cc2ca9420160302047c435bb50068306602310092e8b0ae069898c763f81ff1fa3a635136b2f7b0ac3c930ba23154b8cf711069da54f3850fe0b3c4af3b09374fb195d90231008631d33f7c6ca0be8666c1786370841765126efb59bbfba5e74cadfb18ae312930abbe7cd8d38e1597835957db51cf240302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a5b198cd9b98cb352861d7a7180899c4b66187917cca91244d18f464c2f600576d94c32cbcfb6c0a5ca185f91e75991902300477dcf8d75727f84603acc6aa5df9407d230d942e0fdc7b391fd90e7e2b537e960333c6a43b082b5528665e5aa9fe220302047c435bb500683066023100aa28d24fe514cf593ad5f805bdf6a0849c2e2ef07f66b30294d14c95fe1a4aba48d04e63da2f1c3c276e8d546bf7144f023100a39ee4aa76387c7178e1aa6c834e8eccfe9a5d40bcbbfa1f488ad8c4ea589cee29af6a566d97a301d68510f175f245510302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302b0c8bcfc08991925ccd2cb746d8e4a5e1ba3abc10c353f813497e8c603d7da1bf5160ac665fe59a8f8567eca57ea269023066342369ce8ed41b319f5c76241c4187a9b63861f887d5817fd8133c51e45e9157f388df57e5b4a293382eace20cbc2a0302047c435bb5006630640230579aa3cb1911d17d93ce05cd823a2574e349e7c468f1b3541fd30edb38ac69778afa50b7b9f300e67dacd7d52795f9eb02300d58fdc2d16a6f5c4606d06fc5982d4ad59f52c85205d30f50ef0459d8e28a24037a216c059f8afca45900264ae968d40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b711ec6b970d44e32392f2ca1d307ef66e071da06f5cc48f60c58b4ed942bf91b95d4825920e8f3bfdbdeecbc0d27b3b023100bb10f352c1764730be61eb3457239e7c1e0950779b5a7fa4bdafaf3e9c21f9da8363b351fe373a425499880e72c96aba0302047c435bb50067306502304eac61f8671aaf6813a0685c7bcfa3408edab221f21ad91b2e08d7c3a422db428bc9c5c506bb01fd5f744b9eab1dccdd023100b3427f044dcb75fe660130ede450aa922199432ed93c939af3f156496f0b61fe5d6f61b716bb7d5e76fd978bc591f6e30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304a11c3f2e219685e2d1fccea4cff587cdda178ca1ebd9fd42ce9015ae46d8c4a98785914919a97d3f7baad46f261013b023100d4fae515edc94a19bf64dccdc870760f23e095ea3a0c7320b7a72fbf2a549a353ea197e4afd31b5cb4b706f3489b767f0302047c435bb5006830660231008abab3d1209a1cf56e7a1611bffa4b0822f57397ac9326de222d546959ad0c2386e2d3794f14120c778971178e8379ca023100bb2ea4d8928dc737ae1b267a6b4b2c0cc402763a3a7d44f65c1904a6c8915b35c64f352675c262d26e6d9cf8111dcba20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500653063023049b911a7e8897b3902f28bd5990211cbc796799bf11f2245a0aadc3dc12afce2980b577694fcee7910727b1c2a45a8d2022f123dcbcd4aa2c3e386bf10125ab274daaa003de520ff0425ba01a9948f603544afb41f9eb1f377783605e9e536a7fb0302047c435bb5006630640230635180a2f428ef50157c578f29237e708e626e6171db61feaa602161b3ce32abd01cbca4feae3822ba3c381e292e39040230326bec9a44f871193fa6ecbfcde61f3def4e1e3f7f8e33bd0adf1a84ff6b1b0a43d655669d00f95ea4ac68360b2b884c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302258a7bc460b7da8c7cc69d6b049f4dfdf0ac6b9a3e7a49599681d73a240d4361dd32a39443fb304f35d2b2403534b2d023100f1019325cb152fefe76294685a5279591f2d34409a98b4a07ea478759e884c2a9f702b091bcb8017db568a88367843710302047c435bb50067306502305254bdfb60d01a597f5e5c8345d78c46761e8f0b677d96d3b6e4372f0209672706984b8374458132d850961b0e3e31480231008dd5c2f27dcf2bb58743381961913bd83ac4b7fac6837d72c73f82ac17b79cac4d2e514b7f631b6dadb640db5182ca940302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301ac35a976353669d9d0da33d0740c8b7f9dedf3697fda541e74d979bc88ae9e8968ba5e3e94d9b3dc0e94bcfd3a3af7b023023fbd139227bed0bccd78176768333ce99c5597661dabcf2b755a4a98af3dc10e9ac8eddf74bc9d0f413c0bc3c5a154a0302047c435bb500663064023046a1017babaf2f525b5e8df1521eea32a0779d3844cb59a98c9d02fecaeb78cf846205e00b54996a5c191ff7d28928ec023056ba476eeb6413f30d973de49f824cc4ee0db58d782abec32bf21ac444bd7719cebab4986a14bac1550d51cd876cb1a30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023011a3078dca53d886d3d5fbd8afc87a0b40f8e2c10a7ff162ca7f897f894c0bc34f70240cac608e5ded5023a978a33e69023100b2262e9cc83b7817c7b5b3a8a08707a87afacee4957dbe368551654d9a2efa2e181508e5ff18e4509c3379dd02f6a6450302047c435bb5006730650230714780882cbee5143dee6eabed20da84b9b4b5e9d4d3a92c33275d6bd1e3971990ba454851b13dcd2957afb9015de122023100a472cd30b035199d7feb1e7be2fbd3e9d714d2613450662c2fcb15da9db9f82a32a69427eeeffb6319817cbf09a692470302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305c0a953cfb027e3d59e23b3957f4813d70310d8f8ac32ce9c62ab8fe67fc41e5c98ffc073a919a09ed13a0e4b6d0c6e70230181924057000c9b6835fe58fd1d481f0836ea05779f324c6b923fd77be824d39bc0744b313566547c1ea1bb0e32319850302047c435bb50066306402307ef5344c1e0a6bfe3f9e06d5cca3ac293bddc0cc5db0d1e48485bb495e80b3ac0d0a9ed54040a6ba8154da33302799b7023030d9440999033b9bd661ffb6e6c13ace67d4f2a0fe6b5da19c88c7b7d55f1ffe95da8d95445a5f1d92718b88588613d40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f49bd50d653faa3e612e109e5aca88ceea01b0b924fcd9a2f00bc9c267a66dade65ef90a08e4bfe62278e359c189bf6102303d7b4921a80f80f50e1501ed298d8e43077df3de06db084599a32e8eb6064a687ff896c5690cf00582f0b5ff5a0395b20302047c435bb500683066023100ad15b747c5ba24b454a2d809e2c7faaa9f8c7a04966292d7da3a147da2a34b67dfcc57b1b3474c98784ee798ec2c7710023100cd2d0a5a1680ab176e103c8ed39599e72b87846539523c1d18e038e2849ce40cb33d002192ae966e209e4679b5c34f640302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304f0616512d0c36f85502b0eb698681e779b55783db5361f3404d77be17b5ad4abc7f7915b548c069cedee6ac5f2097950230775acd5e4183d453acbb2788ec9d81b628475fd1b66ccc141db185a077af3c99332d991021aeca9e3eadbf08309c46a40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023011362fcbfa27568f93b7cfb01952b5211ab3e40c54f58a5350af45a770032cbc2eeeff40752d1a52b329798dff19197a023025491d4b7dc5606dd331902961f4c20991ce9ce5d7fa8900eb12ef1360136e01df74b8ad4afc880d301360dc762048170302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306d85fcb3b38bea133fae2bd064b48e45f02c11c2fccf935e8bbfc8c26e5fa5398218fa433c182da22d4ad48ef207c470023100a45e51738b07ef9589e1f7c73e2c1bcf12038d30954f7f3ce3de08c03d9faff0e19826fb719f6ecda35205308af2834b0302047c435bb50066306402302ad4392f2ab517eb76d1f2fd9597e86f662edcfe7110f3fa90de2b066c06be750d72864a091cdc8d431801f4d9c560280230414bfd8ed89d63f1c9677406beeaa44de6916899122daf4e9d71d364cd2c7a1259c9efe30e8cee992e51a22df3b97e2e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301a0fd4704e3c3330f24277a3fb3830607adac31140180a30e3e9e093edd1771bd2ef56a6701ff2c060110361696a03d2023100bb651fed2ede9fe10806062656dc27eadbaac85882aae6aed31cf2cd454e95f371a1fcbb852f74c7f9ed2c79ec6ced7a0302047c435bb50067306502301412e194f3367047f3cfe4bcbced07494741b13522ac20c718d41a97da3864db2774c8eb6548dbf0f3be94ea70016cfe023100b7b69dc99dba796663e3aed236221fc6ee6a00648e29d11bc7b6a0b281987c25dcb4b4483fced1895e5d9162030fc14b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230158494d09bd907d75254d3c72e9c3465a6172da043e9b8921a216b54517611b2352b00c8665850ee4859de93a9af56a4023029e1a8147f9448f2533c341cc2642e57e7d735029eaf9d141dab44bd1d8c2196a96e6621f237cc033ca2c531e60dfc640302047c435bb50066306402300a97d6014798ec8ef84c61056129e70d30df55acc54f11dabd3848d1957e25bd5de5f0c8b14c9145ad591ae9ee5b2814023015e182a2d5a9c409a161ac9ffef9ce7fccd7626c63653ee7985b125fd5dea94621bcabc1edc11d0832df03c038c73f300302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310088c3de7d7989a97debecf1bf528dfef5dfce1780a760d1a902381f8f8890e4f7a36819e29da66bb8e48c24159c7cd7aa023100dfe0024b3f470f395146e8468b16ace046ea870d7ee6a92206499afb22ec519d466fc806131e359437e720ad4836c41b0302047c435bb500683066023100d36563f1987b3a1e8be18d15b7a723a47ff42460d72cf6681af5abcc2de641d809776005cd60453085e29c93aa5d5b13023100834024fdda64aaab9848ea615fae553b981f679b7715a3173f8b8adf986a4f6916093d759dcee66e4dd801f6b77271560302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c0f252a283b01a8ab2d1038e50ff827e0d59b5752b0d90d2582f7fbc76a9cbef9e8c68ae3b857b9f81335367e9ffab5c023100ad89535ee633b71f0aab6231de1c721b3619eac47f5693c90936739a8bc1b1c26ada11eaf4fb03a349260d23c0cf4f470302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a2a055f2e576a7aad390a0816992a38104698302161183df0159dadd85a1a64617bb0192a10e483fd21e4d8e1c2e1980023052eda73ea5c5c08611b5eab0598ee2e30b53b11c1b2ff7aef023e4cf414652e8527a04f9ff1d90e88c4ca3bcd3c76aca0302047c435bb500683066023100dab978714abbfa3f5424662c00c0fa86b3702ec4785faf3c814ce9d8713848c43d2aef8fa268f9ebe1252a801dc86741023100e4a89297016c790c66dc5e1ec1e8cdf1cb4878591be90804382521cc75a736b3c31511e69ed63f40afbc01d7f4f479080302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301985160ce2706913895a67fa1d549d5f3f6acbd0882cd5f2d24e262fcee455608e77cccdd9a86f103cd9c704cb1bd07d023100e495cb3a66cccd350064e9098eebde5feb49d1223c87cf8606a5641c326c373e2c7125c0f98d9b78092c1004d5582af30302047c435bb5006630640230728f907e8f255a0c63ce9f36fd80fe60081e5ce42769dbe931003b312e933b5005f557e44f0429390603d85f1b27fd0d023062049105bdd1a007f9ec676f03006c6d2504ac0d43ede66bf17905dce939208f7f73b70eb2d16a9093325b3037ae80440302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d07b85f934f78335b397d5cbd04e4011e91c0b098eb31fdc880f3fdf80c09aafcd2176be1971cb83c9dd2afc8dc553b302306d1826b28044733c13675401536a008b66b071b9b6a46e6f8640e3524dd6efa6c853ddd506d0f77531988864038c95e10302047c435bb5006730650230034f6179cd99eadcb323c58e98f58c9d58f7a70269a06dec4ecc9eeb31cd88d43c1ae88ef042d8b1554dc7906d6d44d0023100da0f7c2c0f32671e0a9a053118fdfd77c035cfe5fcbbcfb54e83dba6795db171a117e779352cc013e3102a35c4a788010302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304ad1e572a48d2ae895c9d805568ae87fd4731040b1497fa17072412a3d59d83c63116fd42096eb1e0e883d72cb5875b40230512c409e7892514a3897df26727f4e2573ca8ab077611b2fd2b246a5c677039b3276be473ebada1e03e187f3c8c99b640302047c435bb50067306502303d4a9b49a81a549dd966041ffdd6004fe4b5c65fcb17b988c8eedb9b068d02e31d3dcc7f6e2641362f8dc41cc82160ac023100fa0e76a9a56a7efb2580db0e5d8ecd76f80417f01006f805e79db80ebc76987c7b547a9dd1bb060593591bc945bcaa640302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303653c13d5470f7fd444b028154bc3c903120f1e52de34d58d257258c5e1c7d3e80fe7ab4978d4ff680ae63793c5b4403023018b7ba67a6c053c06579111eafcab2924ae1c17e51a5dd0c73554eee48d59927f54c0ad90ead6ac86c5dad502a0562da0302047c435bb5006630640230379792c857ca7211435bc3ace2d443ef88c812a152088d2aaedcc0053d495c029e3d1966664fd4ee0056beb242956ce502302cfecd2e4e8a1984ba91e1d758543e8d4caf04a66bffacb67c6a62a784aa2a70e8757b4f0531dec1a0d3072561c31ab60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023029ee2c826c7f77c1f712a88bcdda75825fa31824601491b7d37c282f82153f5e0c61b16195eb7e3d4111beea279494e102303e040074df1c49568f15eb077b7cc6e96f0bc1cb5eaef84317a90d77a32aae9663f603ae0d05e8a63354d057fc26b44f0302047c435bb500673065023100afba198c53f5c6dd26564cd0a29cab8a62a9ebd761b2eaaceaeee831a7e29a4b6127a9807fcbe9724d906fc4927b2109023031cddcce172f370c664bbc9ac3adf708c8c0aa1f132c979a5b3a5ee3dc40e399aad3d3cd61d2962c2a6a11b9080a51710302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301fc8272e57504c78d7d9a948b481643404140aa69715df5e51d3d8420eafe5290bc608d65452623b859f20b93c427dce023100e47b6c47c05fa64b4fa6a61bc9ed761ee9b645f124a4185d248e1cda9d5649e858deb986437222e6f7909e52dc62a71a0302047c435bb500673065023057320332c2b71c9b75a96637dc80ef0194573920fb6a890ee9064a4bb7720e70a21980189dc765729d73a88d0df118f60231009c55422a2e6490c326ea2e3be5706df1f68bef40ab1567b4d2cc63bc4b4950b90444d913a448945bd08f7ab15a3624cf0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307a90960c565a03c3ec45871ca00afa88273838dfb394129e0d8e2d9b74d43ef38dff4cd74f4837d39b8a36116b6763f4023056a5e6f6def2a6857ebec234f54f761a0732c3969442b313de42126801dce6fb5f3bd2044bd2e81984f1f2ca941f84740302047c435bb50067306502305dbfa0a1e5573f74dda677fb84160b658a4538a13eededa8dcab9b91c5576b7ebfbcc0d2cf1b59bda9ee06544a8c0c6b023100d04e1a830a8d6b622fc111080584124a4f3c9aa2a0f1e7a6deedd229d0a1b71c243cd08877e6a206e831c15ae9d2e1fc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ff399ace3a00a2586b54065422004bdb551f953d3cdeb0c3e51885227181cbfe58895fdefeba4fb8baff5ed82b9006e80230341a16690d492f9c2da95d1205b8676502e4bc0ef0f7c315c371c7e6e6e6d9912a7465827e040ac08a4789ee9206afd30302047c435bb500683066023100f74176de2349d077111ae363681af801777f4831ff4ea331478a1cb2d26027a045d281d548ae1259a90ad9fc7cac6601023100a7624ee1022fab09a5148c45cb5085ea9c537f5665fffccf0b58f7ef79230a75261998fc5267394d42a618fcafea52f20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300ee791b5631f6548ab06631fd37e0b4fb2edf36b2073b557bd308fdf31b03a54af80a27d93bdc29e53ee39864973480702302640ccac667b06e395e48523c6155686bf67294def226c4235bd5bca3338b8048d07dfe275ec92dc8dd7604dea7779810302047c435bb500673065023100dc83ae762809d20859d93f4e91aa368780c4819b9287ead7dae42ce1722790ecd3327def716c4c657fb09170078055d40230274103e5f6445cd841fc22d6cb54129f417c86fc0ce85109c86f8852290b20e295ba9b17f9138bdfaadf4e48d65bd4290302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023032333a7b98a27f8bede5572f710d4673abbd19c3f4963d69994369d06080e8a44a54d5667bc75a3b4d9a72c2ac61eeb9023100d9fb79d8560594923c1c001fac47949e580e780de85e68baacb0329ef98a745dc177a7205397b2923c596417ba4189e00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a6f5e624a63bf52c098e4093ea17a8c3e0c81757272f45277c7cbd2724e77624ab558226bcc652cd68bdec973e8f841e02303fee58cbd8e3f535aa7bedbf86f68a3b800b2a926322fec27a2411304418b15e73cd480265c2d2aa14db008c3ad904ee0302047c435bb50067306502305407686f44bd9ba2c1ca8304625f3265c1bfdfa5ea9b01903ad01d225371fb5ae711a780f0c1a6410c25bb5e4409807d023100bfb2caecd1fc6d77ea8f59b9a542143458831774b7b943bc38f70985f944d4325c91dc01d15efc075248831e55150db50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100faeee5737f0b9f3159cbee78f686a74399dce2d059807317b9af43cc03c3a0c06bb955a8b7e1b214604451493b5af91402310087ba574776fc3d278a2bcb5a403c56600249777976c022d8d6efea0ef89b63ef6dd98db7282b67ab1ae18689442dad560302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100bb0801223502b6d2cb807fc7e2d1c461b232f1aff18329beec68f9bffab61efcb56a913f2a6958de32fa4f3f0b68250f023100a3ad5da00dd298ea3fbf26b23582c775ef2c95c443a8e04efd73415300bcbac0b9376dd37c9ed36b5c8761b8d4dc1deb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300b617d6e67fa1f12f9fafc839f2d0542be93d23f626ceaf982e8abfa76bb7ed7302ed2dbdffefd1d4193c9ab38e69cc5023029fa5a7c648641822e526d08cf3f2d4d934a88036969fb7f7b19ba0f1f2cbaf31e133266f828ddf39dcd58b51817161e0302047c435bb5006630640230095dd8f8f67d09ba35b73e575b746b967d5d8f76acd120bba1380f3384b7aa95ae6a9ff078c351fd9076e9c0f899221f02305c478273e689d67dfbc1e22793ee5ef48372865ed8b694125179d84f4cab0f2377bf99807fa6bbdf9aa3493c95f60b670302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023004ade8fc6e53b3a272b1251ceaa94eb804275e9401b6bf8f3b511ec73dc44af51d78dee254e7732a31fc371b3f5b8b29023100850277b2ae3bfb5477c57ee262860f9e87a4a926754cf862ddd0470cf9e9fa7a8b67fd5557bd83d222408ce809321fc70302047c435bb50067306502310083d31bdfde14989eb7d63cb22e1c3e4fb0d316eabbd5f7e459522821ca2db52aadfcfaf0a794f14a7ec947c5a7f181b102303dfc4ae99984a930664095e9dd85500f70ff6414322504ffa930a602321640cd417434ff8c2f8264510af28024dfc8170302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310082d7d62053aada5e65bf63497b03b65809c29d92e227feb715dc6f690e63483758dc26188f7f70b727ff8427c3bbffa902307323b25b3e81bb1047838680368968a62a5dbe507ecce49b91c05081e5fb132cd59b06d59b3b874c09f1f4a3d7f4eab90302047c435bb500683066023100fbc54d672accf94531d9ff2107440cdf3bd1da717aa9da9190c31c06513303712bcf801139ab90efd9dde255757ca684023100bc0113bf53e7c4690475cf3e6c78a523f87ddb9388ea100488bf160d2146d8df3e7ca3ad1e152595a493c248a1b9ea7f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100de515b08b12e9793acfc9f2879f959073d09b21481930903d3922343251fec60f25fb78f7dfc10dabb9cd0ecf70082a3023100ac35cc4bd7333a30b2055d4000e57b88fdedefba1790b12692c6de55c90ef3250ef0bddfd7718ac483a2947fe8b2a15f0302047c435bb50066306402300dbba59e32e369b4b4e2255ba1c31903ac9e43e0f8482a7a1e3df72718caa5981df298c5a9d63d5958d35caccdfc7d7302305a23c7180edbebd2b6d438722f46310cca15104d89cece45be536bf1998c7b9ccf419b4d8702b0e31d01a5f4ac8178760302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300a7185da77c97800fe5bd2c9ef9fc824e0465114ce8b48908d72f9ffb6fee8851b8e5bce3ca1b560ec5000389d0511fd02307326987a2b4edee875f399b3096965d884dc148c246dbc45db250dd2fd50f6cf576f488495ce2a37951ba8121bd938510302047c435bb50066306402304892641ef58a4dcffc7d88dd2223b218562d05fecc4d501dbb4c950697bd525b201e405fd849f057b7a60b0ffa28ba93023036844567327b09024af7c13f74409af68b1221cbf76a31107f7663a806d4c378ca8fce716f01c434d10615ca04ae46920302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100814aaf703a174aec286d57ac04b41a1a4d3bd8102ce7145cff92356ec362646636abdaeb23aa32a337527ea6ebaae6ce02301cab5fb0ecae7284979a229bb6bdc4be1274f4f3c570f3309d513e70303ba3ddfb69b65111b50abc191423eca95167840302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100da233709df39dbf1bf45b5333adad9f1e6fd908c455b54081dc4a73cc7d382aa5f5d7ede2776dcaba87e786589ebddb7023100c1c25387899104dc6d74f0b0f66a08894c070ce711927ec11b89b6dc8638b83e917baca46e1b1e684a345ec90551b11b0302047c435bb500683066023100cb56f061a28959453cbc07680231478ec278cabd33d1d3d1bb5abba8f71160dd7dc662b111fa10f39f5800746dfcd77b023100b93cb019878a264c8c9035ffcc4016ab2b8f52b1f07162fb779b7b2bed4ed3e26299ebea222e64054c48eba6cc56d5580302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300fb453f14df532d26ae50189ee8b933e047673e52d2032b4bbf2972aa6bf3a7fcc91b981af8649aace12c1541d40b70f02307e162775404bfc669adf02aa0fcf1ede72f716673a9536287c76e0cde291a7817df4cef06f1223d37aa86ea7ad9db4e30302047c435bb500683066023100918d176f91674e61a5baa5bfd6945c2c1067573d229b3d2e39980b3967d5bad26d144a6d41e60f8951ad7e47066aed97023100e6fd929902b72586629029d2a1647ad4da732c42c393eb2542baf6d9f512f51b0451c4bab71c12d114c1edbcfb09f6320302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300838c7375a85388fbc68b76c69f90c8087a795ed10c9d9408a19a6e450c23b105ea8f49903e04246c00dbb537ae8417002304fb73ffa49da9ec1029ff2b96c7c9e010bfd076bb4d7784b68d908beca477935e602521a269fe615fceaebd16ef917e60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d4f5daee35213f680e60bc9949224da524ce788eb89f5aa166a03afcee63b89fd9c8930ce274fe9a6f5761f6e98d54af023100e6c5caf4d954f1c50c33eff8c4e648b5ee75f8726243a8e71be68b1bb241834cc483ec7b121cf773492ef3822f3ee1650302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d51df99299453aa8681eba5a0e8cafc00ea03ed8f189a6f6a4269fcfb2173fb63c3c3b849af8ba7ff243c53d2848ed6e023100e72741ad3bd6f13cdd37c9bc87501562d094cc2b71591bce1b6f7eee6696292e9d6afca84b2d3ca45bcc99598ad46e8d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008ae2d7c5eb04517ac7940654e8f37cccfe8c6a88fcccde9aa35ce0401e6b4a1579bf9fe5dca5481beffb931aa76dd00b023052359e56f777f66d88c0281ee3693991517813da5fbdc82651cf0ab9cc52cb867bfb013d583f0a418048cc92dd2dab2a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023003574de60f7a6fbab37e3d0f0474082c8763a5dcf58646dcea55d57829ca0788a650de5a907fda37c624f501e0d5e991023100ef798afdc352a3766a1747c7e0939ed892979179aa391e03915210db8bf1363aa42c0a73ed4a53cc8ca6711e7eae85840302047c435bb500673065023100b97b6c92124483ebb22c641fff0ec7842c403a28e4ae2e727e5b3190b425bd291ecc625c7149ff695fb886b574dc7e23023064626d47b0b1191ab2aac9335a3a55549e84ae696f754dfa27901fbfc368d1956650c3996605ad4d7595011a7af4b3530302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230159b49e1191e3c99ca3192a75a89d53b893921db38aebe563b3bb5c29a94f2f75a6d682fcc7882d6de2de327db43b782023016d2adab66fcdc960aa4e1eee40dd146bc58ab8ff318709d84f7d7e57a99cd69001bebfc720e518dd9f42130b51ab4e70302047c435bb500683066023100ce307172d4003cce43cd03469605f87da7b1a430ce79358eb3c4faefba01a218aed1b611f140634a421fa094b69245c5023100b78bb31a6dd5a77da21822b4e71e6c1f943075edbbe7b99393b5122ba77d9412379fdff3f041627ca94f6178864353ea0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230436e9c58a9b376b922e29bcdbf3325a3f4c2ef4805607087d4b4c85dc6afecf6642562056845bfc6abf15b5d3cdb29b1023100f0a4fec639fabcb460d82f42592baa5f52bdd3e47ef35a9c7947cdd7b90a4e151b4eb47f48488263d179e4eabc78116b0302047c435bb500663064023066402de8cbbd5e710fdb0bda0cd7e3379b6b14440a069c5f55c3a28e7eba21e90752ab73c12ab7f488cfd63c5edf5f62023056a830c75eb8ef086eb128fe3620c3b9b5b17f109f2010b9cb09042939787fbab72e2a62238fc09ad7a98482470d5a3f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302a8378d1610c2811abdb3aa03b3d4f5371429f730a67e9d5bf7c486db5b6e05c772d305a1bf7cb3448317e51d4cac4e1023100c22cf167307d7a12e8f568748fdac363941d5bf9f801f22915fdf3f48646cfc98cc8bb4f021469c5ad21fb0ce40536430302047c435bb500663064023024d22aa2cc66ba6d7c3abcc1be9f75be4ec9ea98730ace4b89c888e12f99b6dbbb8d5f094d06054fd286c0360048003e02305871b89bd4c7cba5eb256769ab3f5a0b8bc66aa980adf802fa96098578a2eb75a56e59319653a0079c576880a6064fd30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300df7347642b6b2eed0f6a06a475e8f9403a93e22421bba1dc672d6e59a0dcb6c90c29a096ada10a6a496cbc83dbdfdf302304bb2971b25c96ff4731e4b4a365141f56f2d60001d96aa2921f9a55ccad8f88d9df3de0af4d65f7d9850948ed3e92de70302047c435bb50066306402305724f246767f9d635f04cb38f12bfcdc25c8eb91fbdbb1cda0fa9f7593c4ceffbd68619c84729d201b392bf0796c9fcc023058faaa121ef3ab57d8cff4d2f101b5a6e66a1618e19c806128a4bcafe25f19197724f7c6d1818ba03cc0791e100d5b570302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ebcb6483d425bc65490f52658ea8c9c52a5c382eeb4520c505f764f2ee36c6a13d32d4ad39c7193b6d857a60751f91ea023100b9d94a95c6bcc440f01871c5f8f9234a0da3747de1a6bec0262b6ebdf952abbd2fd9a4dd778859b792fbaf76977ff1610302047c435bb50067306502306ee698c081245ede27498276c59a1e6c222552ba89e6a1065d936c0145c9bac6558da1356f1c018a76bdaf48861a5c7f023100cb3b9b067c1b2ed2e0043562cc350095de9335737af3167380b94d775d83761af9f98363e4697ccd2d0326e6659dc8dd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023042d3e9318ac3aaa9ff7ff0477643fd85bf60620687e6df82912c5228ce807c6f66f09ffc0fb1720b68d459442adc733b0230354a1d4b4485dade5afa7fea1c7587180aef5c81835176ee63ed61a2573b596a12b5360294a2d24e078f4c155cffbdc20302047c435bb500673065023023eb98e1c7681193edb8dfb94fe90ec6f91343e5192f7b6577435005aa221dfe234b724d92674df70f8ac93fa4344cc5023100b6940e37c757907516afeb9fe73d2fee326026e8cdd5a695f8fc8af9f3bb175efb347d1eb7e8e638488ccd208091abe90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304e5a91a21392fc6f6b983fa67c7710a4c2902fbf77f4fe6a8d3ca87c9fe82fbe71422d074e4eacbc949ee71c71e0b7be023100c0ba4c3eabba83484f43cf441c7040f5ae13df342b10a026d4c50b146a9fe698e31713ce5d11635a2f772cc324104e360302047c435bb5006730650230393c92e66922f36ccd62a078187fdbc94ab8d59afd7db879377c61a917881222c5c138e7fe2208f66e4bd05a51332923023100c48713673afb51632cd80543091293c8a758fd03aae7b1eb6edd402a4656a2a956350aeb0d532519a7ce200e723ba00c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304e947faae07bcebca7d8d0897a37631d7820cf69d05e4f2aa8f63da7538763370140fe0569739085155d6b34759d726a023100b70581eefb02074e0514f6a2cad7046a3495e971fd54eae1af4093a43ee3405b25aedb92aea969102838022e53ab98e90302047c435bb50067306502303dcf1b5b0532bbe591b312b748164b8dd724d2974899a18caf1d7f65baf75ebae06b09abba23a2a1edffc2b7ce96c7500231008b1e286f07b9232f0c63cea0567999e9cc3fa3ccc5d79e1dcf2024b711f3bd7e5feec8268a6e49f1d4746f6d8f2f62e00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304229ec8c0c3dd6a1a65bfecc87faa906ad9363e3412b98d60efa65b5e9c827ef1048d3bab4e82272e91317ae5e13f12d02307405d687bc0328b95c7dcbe9655a25617a71f8b9ef64cf4ed949486f5ddc8ecdb9e947fa06efdb5096941128e0f1e2d70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a117e5dc11f4291e28a256e90db59c8118f71dc2ac44c86f252bf73b9d39802840571478db1abe06cc83740d7941856a02302a329919bde6480693dfbd1417444542d393724a0bdbd9edf694f1dbac9d791ad3fcc4091cc460c255a2509fc861c1230302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230333561cbb9560a4cf60b74b943dcb4a8ff86519d22bbc139de1c1d479369b8d47b85f5b43a807cda8cf4b979d517c0b7023100c3f0d5215b5fcd0cdc5f14d695ff7878852d748e33a32281710d8677e11f29cc43876b8db782d18e2e5541b6ef1c12a50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c2a233311295092059833d25bfe2ec7470a7472728ae1fd1d4652ea9e49d703851c0456e2dd26f2f4cb54abd370cdcf7023100c7a83cc46a99c2df890b287ad6a26f84d35dc3850461c617649028e54108a1e385452785d59d542b51092388348f7b870302047c435bb500663064023068a0117c3548a05619fb71efc5e4f752abfc456c5a55d03a6aead51ae59596f2e9a13e61a3a3c7bf92c7c9cfcbb9775d023075c83cc195f7cae69ab7e75ef3e2bfb5650ba713e738a96fb9d655b22fb886d40e031c0e0a961600c8ef49984ed767d20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f2aba4b00a43aa7dbd968eb61fe6aa15539e686e8bfa5059a4676a407825039b7d73226beca98e1afd3fb120a42a7912023100d3af95fa92a26ed81bcb649a8f89f246325a71a9f47a7b27362181efeda80758af2b07ebf88a42a21a3370a4c51753f70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ebb584725e8a000e93494583590118775c3b1da9941b129bdde5db5cd2f3c9e88e3b187920f6813d907e802f4d38ef3d0231009f514b6722afe7131e4c5ef1377fff5e4ed128307e1069cb5141183196784ec57196e6f4979d5b189c95481a7a39fbac0302047c435bb500683066023100d33657d6e356c1939109714d1932abecb7375200a9a87d653711988c34de28f91ce0fa48577c28cf11a0d56167cbdb55023100adb193ed6f2cd17899f4f1f5a39da29b6aa26270ecead7438bb9d33a77bce19ca20d2d0b36ae6c2ea1376a388d7f080f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023053df48b5b2796b44c672a4379a18f7746cc95c275bf06c65b3ce4e6fbc6b1f319f7916073e32d0ccf0503b4e5dd42b19023100acc2e9eef85c4b453f93ee421b3bd117d12214ddd538252d03d58c54ac2de6b36d1c2625d0f8404708faceac0450b6750302047c435bb50067306502307482d9f95e0fcc2c52f5766f4ce68157ddb517503b4b5640f4586fd316bb5f0247852c38e7335e93a41cec9768a49a290231008c67188586695df498c16ddc230b6b1e593d337795407454ab95899d61fa905a33fb6d7bb1c66946251a79db6544201d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303f4d9aeecbe9d5c0e50a92d8eb44f6e8539c81929b1ebe0609b53a82f6fd43503ed3ec62b82ae9fcea593c3b12118c76023100f5a2f7c59102e7487b2942174f6c9250af8ff31cbe439667c4e172281a814f5b4737c2e79915f4160853fb40700d41460302047c435bb500683066023100b2fd1833ea83e28dd4b001ec7548203a36bb0bbbdd0f14ccc250c66df8e6db326adc241563d63e6dd6f159077e6fcf6c0231009f47bf5b58ae7110960564732fca31b9f62bff45978b0a7ff0f99b3498122b5ff636a1851adccdde587a3ae9aafb56610302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306f258b2e81a2942b928d9ca5c080c459f84d118c1722bd3417330bf17d942e1afa80145d3d5d40b9da18e43227f64dde02304501b286321bcd73c7df102562de7243729f34ee3f6cb9d2c94a4901e4e01556e03bfb2d674e2fa636583c992853ebc60302047c435bb500663064023035e0608243e307dc4f4077ce49841a25b12825ca0e8435cc7664a34724901bfb503161c4155881aa3d1606e6adcdab5502301b4edafa8339afe45f3a7645107ee691c4244bca61ba162e7eb5b8ce9bbbc94116982359384df6ecce6c8f5141b5de600302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a1b44ef4fd566556073d5cef052f5b2494eb84feb69b828e0647a41c36d5666631a57e686ba688d1f88349244144fff602300b01b8aece71d49bf3ec84ca6c20865ba01f33d1f464aadf6c45dcfde858b7512e2914b70608245967688a8f60a8c16c0302047c435bb500673065023100ed84bacb40e84f9296442354dd0f0c4adf07487d1bacd9ea1363b230c9f7e9eca3581922a0d8fb7c2adbaadc2564039a023021401e810551d8efaf80e49be750677705c0f3f33b8f85df33a3fb6b37799fbd894d359729db9cc6d4bb0558c480de580302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a48bf7304a8f78391d87a100a4ffa1f4aaba7a7ac949217cf9ff48580775402d1e62b403ec7211c33351a57559774b30023100cff247856c77098aa8d34513576e24ccaf77725fb15df86bc9d338ea75128621eb687b953b95841a69cbde028132381d0302047c435bb50067306502303c0221fb20efdb63c1af30eb42cc760e193c9ce9ef1849582ca25475be4eadd1b58f9a3ba53d0ed46728c2527b5fc7ab023100cd0eb2ece6a83d57c92d8180cfa1b824ce2b95bab7c2dd77add9ca99485ec620483f87db99dcc1c49f8e3e106f90999b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304499e17b20122266674bf7012e98f3584e4f7df2ba733f4310d4359df4bcd819f3e4914c2475a1d507d059b015fe80c2023100ceed8ac387ae46e1f71142ff72b711ecb4a2e7d0a2a47ac197635247d14e86a4fc5f60ae0baa212f21cff6fb651262b30302047c435bb50067306502310091e1fbd74ef89613917a38082867c12980df9dedacf14e4269090c5ddffbf4f705403950de524ae714fdf5a6821d8c75023049bbf43276ceb42c2d3f2999121120b608a8604b02848339ec1c6ffd89667bdb9047098bc37d028f9460258e9146deb20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cf08d376ec09fe504bbc3600443565b892455a1286e1dda6676b91efb89ae7c3db10cd541c228fafc0d4f9bfd0c1a0550230737eb9d06502963de6be4c99656babfbf14d0d07de7975d15ae9c0da2046fee76e1e776f0ea7a7edb5938318fdba80050302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bd7dd267e4388cafdd9907582483d27312cac52899844564f20228773175fc7ac54bac565d34c77fd292da90f5046a2b023069783ac369c5a4c7a8ea93e77d31eae092f4a5c08f72ad1dbfca0a85bbcb743d510679738c2efe487f3c3406bb56dce50302047c435bb5006730650231008f529216e5020b621dc785010ea797c6509404e4c32bd66607a99628db0e77fbd6662b296db204b8a254f92604363df4023015029d764e3bcd8549d7ebff6a5131e7a823de45ebae2d11b04d451c5fd91094f91a8faf11d70a4b77bf08c5745a69310302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230042ff7f6d3b60bb90d3a6f1e04d09d284cb067cdd053db46395007e41f7a7c7dc073bad221310821712847f1ed588469023100d227d0e425c412cd973329633152fc66e34961f7befd824d54b76f9aeb53000b1cc6818ed748a458c0248ef2f3c0bb6d0302047c435bb50067306502305ac0734f5bf92c259a6e721786024765e79bb9156933d74c3429a5a92e22ea89f90ec2c478cf1b30732b9184b8d6d993023100be01c619852b9c512aaffbb97915d00ba74cc1b40f81f4d266a324b639ab3d196dff18f096b3f51fe1d6b3456a892f510302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008a857c1a7c1fe3f9109db3623f251b21c4cf011af5dac3fb0f1ff4d4ac6397237814bebeb59b9172f7faf4f47bbff9f60230555ddd8f4467ad30dbbee60a08493da9d42dd413a77d1616f2f9239bd85f9d81b741144097fa75bf7b22654fcd2b2c6f0302047c435bb500683066023100cb5eb058dc9203c32350090096d077c5b39ce8bce9ea5f6d73dc0cf616d4eeaf950f4256c4faa2d6baf6a99e0ce9c549023100bcfb2a474e3bf80cc7fb5ad5ac99af3297669e12cd755fea565958925e5f645fa230a9dcc622bcc0f119a5c2ac6fb6660302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f074d2e3eadf36bd279a3a9220c8c9f265b30d69e27237c3394e820771e6908d2c66fc06203b8787c0d9f8b4de589d2402307956770403b47411a2171c85fd99c10b3f81679a0cabed621e52e8f72d017b4e1b061f1ce771698563f103f34587b0700302047c435bb500683066023100e16dc599d868dde4d78efc6bc9d54e3b28c1ccd77c7aaef301a1af47335ef9f8481b115617ce055e538bf9dad9923ff8023100fda5b993ac8f5bee3c142c3828604822808663e6ebb7d71ddf0f6a0a900b578e8b38381d14dd609995bbe865f16c7ba00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b4c76ec15ac1f2061c40ce18c810733fd340e01c5c1ba2de723a23e50175d9c4478a834d7ed8ea27184987f2f1042857023100fd6ee099a701d7c6761529f4b7adc99e7154dac9d818a68814d5b8c57abb54ced5e862991c17fb274bf68d90fe444b500302047c435bb500683066023100ae2ee703a7103fff43767169f3eb06eaf5d385dcae71449b85270ef7ca4237d65b91da7d211e029850ec6e51aa07f1ff02310096573f72040a7c2dac0736c8662337be17a81c69a663e1ba116a41646a678a52e711ee3ae9db08320430bb6b3c7340770302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e95163484582a5074c6880a536682a722f0cb58951e2571becf4c1927260ca8249779146c085c9abc96b1af7b4fb36cd023071463c91cdd19e5a7f3f7dcfaa038ec1d761149cae74c1e722c5254800e678ac4c24889672941ec055f2082d29f0b94e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023041632b6447cf3375976c493fb5ddc41245bd919c40e065a851069f871893ed9957eda2060a698a597ef5f9db3a1ccc77023100a646043da8baf74f644adac888ed6f5077aa14e1ea032cdd965a70e6755e606effd8983b9279cce516be4a55f9a5c3f40302047c435bb500663064023067dd21dc1b8bf9866c342ad399ccf26c8c540d9d422972a8efb290c069260e4f693a1b3aedeb4118f3f9db070738fcf10230186d59dc6977fd52cce650ece0e56a3daf7addf5d11b55d8569b65abe17d022e96ad4f4dfe24ae1750e8a622d7a965ff0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303b53da3d3e703455488c9b169fbed04b6a189d9b547ba1e398194b31cdcaafb7a2c31d3156b4978b10c4add27ab500a3023100a31f3d96ad795505e5cb5f120399d4180acfc4337ab19c9dea90d14c1f0f539be531ff1958aa4bf527a59a1ce9ede7c40302047c435bb5006830660231008071a9f7183b7877991e136e00db4487670ada7f02560a793ce7d7098dcd5d8eec81ab0f54a455a8df6554f0726b86ff023100fb78a9aee63baf638001fda4e1b9dceb6eb055b1a13d0f15731a2a8f20641dee110a9c11deebed1d4eda159418855fbf0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ee8c50143188c71cf474f2fe12b2cd2c57fe1fd2d813a4ccb171c9372ebe0348128bf3ee74f0e297ac666498b432284a0231008108feb9958cd69ebd800c901d58ee2a13a3391ca5f1057a28da53cf775c4f34bb85a02ea08b82d1580838f9511ffa4f0302047c435bb50066306402300a467e66492838d5265a3869c329590f9691139879ca327aa351438773856846a3a3f642b1d971a90587c9706cd356c202305faf13bbda235411fa3237d19824c63cb898f4675fcbf97948fccd174ef65f51a237d4db558e7865e036952b6076be600302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f800b4f22f276bcd05b17507c2505f9ca4bece3ee3a0fe52e780ab0434401995456f7dd65646e75af7e340d57bc747c802302186bb0803a36fb516341a059a99b2997319093885932c23fb1f0e79ff919ceed6029f54b4e656048f8f58edc6a3260d0302047c435bb5006730650231008b180bcfb795f92d7a75a9e17b52b49631ac05a72c56fa1948ad4f1b4cf8c893fea92dcfde2e38cf287a91f598b96940023069b2c82b606178931c5db15aff8eb078293bc5e52b87cfae01726886b5d58709273829a9b28b1a4b4738f9cef6bb94d50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305c3597e614a35a36c2128e89fd7abd7d197bd8eefb74862c3c71be28dbabd9748cd832a8cece0a49505ba3cc5cf38c0102304a6ba1666dd041c4d84877568536f6e9c9bf75df5b46e3abf953e1a9c976287befe88054e9c3ec934db4913c997f7e000302047c435bb500683066023100a42022923f72b8a5f9333aeb5e0b41f5f3e5eaf2c4ddf1a29ee16e56983c0761447a33de2ecd875d2cd7802e9beb75a20231008b8c10b2bd45305d78acda4011318b7b4abed182a18b5ba2aa2263c59a07ab23050b540c73f77c329f8fd73ab51a8cb30302047c435bb500673065023100f74498f621967cbbc06a9af5cf68f98c3e0fe86f9974ad6cc9efbfa7c2370778fad7c38064e1aa798df8a3eb670c7b9402305b23c02829588141e27e2565131b91156dfd0fc4bdbf1da2f815744f624ac634c47b22cc1daf4afd4e73a2bbf6695d330302047c435bb50066306402307710aec9794c9b1bdb5d81d65c5590e81bbc3da7f8ecec8d996caa0e39fcf29d016be098be0f2cc2adf4e41f84d42e1a02300bc441a9e469c2e04483740356c1714a256010d67769f9dc9531dbd3961ac63508d64092ee275c57df867aaf912ea0c80302047c435bb500683066023100b86c0080a100af255564e206b162e4978fdfb2eb02732d35dc4f08a02ff005a5c0540b02416b2dccf09e530a0c5371a002310088fb5f40b25d3fa0861cd4f5e3222326e5f2227e4b37036695fd1a455422042a785ef67e7b3d6cf0d80ac06b55bd15020302047c435bb500673065023100b40c165e8192cbe6f0c138c3c0f84398c0a4661bde102facdad9c7881d5857b137a9bb7c5243eafd0a96b966860df8080230717767b12b27a4cc75745987882cd805d54e6e89a2dcb4a973f00998ede4990bb3306ce0164ef3ef5c1429a8e24073760302047c435bb500683066023100d9058870d411739e298b07dd7f7601d2209659f1781f55789c6a7ae3ccf483178aeb9809f2a024b6f2fe376694e8ccad023100afb1b5424a59a52a9305c0510c7022a0d9fe9c48554cdbe5ec713b545ace0d7241e608bfc58c7f29b6797ee5ca9589260302047c435bb50067306502310083525d4c9d0b4cde64fc1b4b4bd8fa3f8c2a0563ea1deb6c4e2e485c8632d714c1920744beb5a3aa74cfaeb322d4c5c1023014ff83d62c68ae5f660f2dd4b2cdca6b4458a255549c8da81d3c5880d1bd7ca4613d8f49b546189caaeabd4741d9eaa90302047c435bb5006730650231009871fb47286d09d5e6e3df89297b1f0170ef3dec419a894bb243f0f85c4f94e267fbf88aa7f64659fa0882d5b2ed658802300f7ad1ae6b74fe92ca10164ca5a0959b7c29d82bd85bfa13befeae7ec17b6b97a0afb5063fe2d1f8203153776a9ebb930302047c435bb5006630640230588a97c15242fccd35a1dc52eeb0b0987e8ee374662faada99ea54bd6112174a9357ee5eed9c5e82ff789ba1c998837302301f538ad2e49967895a9d50c6719e6bfe0e1da1b9fbf252c2b9d2009eac1d52dad6a2405bee1259714a60e94a0735378b0302047c435bb500683066023100f614eb38bf945a30e01ea7d9f8844eac315e078e5f75cde220a6a9da1608724dc51d69e48036be4d0ebe9f28f8707413023100a77cb7964ac81b76f4192208ba50b32d8115ebf240492891f47e07d7eea3fdc3fbc5ae80b2be240acd8321ec8a4b13c50302047c435bb500683066023100ccc3a20448de31c62b4f971486e43abad82fe479c011c541408d5a46130d1cd75542beaa8e9484a6c1121a2d327a238b023100bc216fede838cee6207066d35baab892ef8c93af68b338c009773bb5af487a5b4b9603b9cbf0539ee05d4cf7c42e6c9b0302047c435bb500683066023100c899b1ac7eeef9b373f07020bbc65f85ac7c9ad2f67af476e65833963a34571c548a4f288cd681f6603c4bbe2cdefbe80231009995b5f8c24b9fc12ee6f83ffdd0fb2eea225b9d2860c9246a647c152eab28319fa619e3db9adf3f14e278fa763939870302047c435bb50067306502303039bd0fb6ae95321326f813a9a57d5fa0ea121bd4fec4e11b3e669ee9e6c90d5e676ce36592bde9334c5c4d5abf6d7a023100d3eb7dfdd14d74b34fb980cfe661d217aaf6b48597247e9eb24afc357c581b100297eac74f8784b3821314055ded0bed0302047c435bb500683066023100b0079edbaba14e4ca182ab152712a6d76190b0849207b034914f758fd074476d7fdd885d9c87ab945d7c36ee7ea07c6e023100a802905175b7185809d2ef7b194feff964be3d784d3ad0d75d65fca0357e9aac88db0c641e6771551e6a4717d4cf0a450302047c435bb500663064023033334634af83bd132c5b9f8fe4c4ccf9e72539cd709e94cdb0b782baf8e1392b629173e74ea1db1718e4019eb287ba3702307ee5d5e650f665420d35b3d0528b27cb93f0f1ffd55578ccb8e6711cbd5ffb4a1be6a8049efd832fe9b062e45736fdea0302047c435bb500673065023026a9b7a095924d895e832f366cff93a92b2c9bd91d30b15375121766488101464d6ee86f62e9afabe6395c9b87dd1d2d023100faad252a31639c9b813e08230007ca2598e97bc16d1e40afe962c6d60c7b559602ce034f916ed3c35689d418bbbecea30302047c435bb5006730650230249cfd7c5926524f773a69483bdb2443ed4f60e356d613b67281b9afb558531f6e8f2a336ed2137ba6a811f0ad772d82023100a584c069ab4cc4f09f4b65e943e722faaa43892fc7d7bc7623ac17bbe5e7df1e79044960477fed822a9972b516fe23010302047c435bb500663064023039a8aec97be2ba3ff8d534c56d5b70a61af200d29cf63d0feee870ec76b7b3d51c4a8f965923b1ab9be74fad00a0221d023069e2face04bd1588a8af7b13e6076d3ddf31ade2af8c1e0315d4ec31e3a3b18fbe48e27232cccd6cab7d4f8d003fd3090302047c435bb500673065023100e911f506b96629814ad8453c7ccf798f82ddcbaa61e5851468796ba337248791dcf5361daf9e7dc7c6de3ff36c1f227d02306265bb612c1e1bd49f5f69e1e8400e065d6606c6446e4e9242236536d05e5a2f74c8a5596921289432434a3eb14e2b770302047c435bb5006730650230272b64101b0aae53a86171bd21c163968e3154e087b9b8129a785bb2c9f445be82ca003634c78b233db6b853b40bb904023100d8dd2ebffcd44a807ffe65a86f830e9d4d97791fededc0a367ff41aaca3c0cfdef0f84b746d0b06b48ef6972a1562ea60302047c435bb50067306502302dc126720e0c5e54d439f85518d961e6846e9707ecce76f8ca5ef84045208f0e12d1943c615d4b849777bd980529f053023100fc4d784017fc0c54a5a2e955f74b3e7713bf06241465af87b60f19cda6fc0ef3bff08e96af912d54efd17807b3b542560302047c435bb500673065023100c8aa6414b100a3adcc833054d8b188661124f372b07a881ba76d4a528668de78ca9d3d48c9676bdfc5f02a7cbae8399002307c2077d9f38fe1ebcfebea024f1b1e9edbfd61b0fbb95a980d670d69006b138b7164d4ad30d0f227f2aa6576d172a61a0302047c435bb50066306402301396a4eb16d0a818ec10f0c83a2436342eb59371e7f2eff0a3387e7d24cd853540ef5cfb55e82adfc906bde8b8f04e7e02306913bb73f95177f348efafbefa6c3cc25a819c4047451ea2d292061144d886606bf6e15044ac6966a414852ef8bb53b90302047c435bb500673065023100ba0f458af3b8378c6a4b7c14ef2ec4d052c44a32755e8b2d312f91cede57f56b7152bfcb6e15432c048e8d7ad882b44b02303881d1a1e7034b1f9e0f3a800a979cd3c8a305d41fdb80feda63560431c179feed2e4f73a4ceb458c6269ed0a6daa2260302047c435bb50066306402300b6898e7bd49826fcf9bdb69f5d7e0e7f1bddd473e91ae20c3c8b1390aa9b448840a63a720003f946013c33faede65b4023062253855c99bdeff8c3c488073cafbb0ef629a6de7972ba334a34ebcb7ba9b8fe9512708e8ea35b713bdc91ee6b16c080302047c435bb50066306402303ac18ff8b77655378ae2f10e0a517ce070291e4f2e267b93a652f118c2e9255fdbfcefd9f985aa5ced75c2c299b3e92802302e71b80a5ed270e6ca8b7251935f6fe53279555d7d926de52cdd8cbd57964e24d2ef7dea391cc3abb554bc9e6e0275c40302047c435bb50067306502307a0e465f7f7d728ed7ea682120a138b14c327c0b01653695063dbbd8d34a451e209b81f4d01f687b7fe2d3c7cd401d09023100f389e3c8218dccc03a2c8389a8dd7fc3cd2f3d61631601416a4af0260c155bc05a300b0a895cc394288d62cd3ccaab8e0302047c435bb500683066023100c69a53044ea79bd77189250a083c909f84d10c9c2d81152adb3e9c18721e4077da4b0cf45d6e289252e3f0bfaf129f010231008e812053b54fe674cecea195e106739126b6c6032b7770f28e6ea6554b5cd28c2853186c57e1d21c211e4e45bd237ec70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d834cd1f7eacbf6b4812f61d89aa83530653b5346919020b5e792ffae609b2b85c76da848ce92e619b9d032099bf900b02305ed56f6ef477ff647ae6c4b421a311f41a93437bda4c1971f0f658365fe72affd97b98b150f8c872b2aee0132d8ad6b40302047c435bb500673065023072a81f0790656cec69aef550d788162830d301c29cb0cd06881ba2477019a11c7241d31375a1b62f3512f963bb0742db023100b59e9d8dc491bc48c5a1d5cd7da0499e831ddaf6a89463772a3f138942d735333f32ef37354ca77877e70445b193f8360302047c435bb500683066023100f993095a0f0cc9c72537f24ba3d0abec2446e3d29e81c08fb4322bf414c3017729256bc9e970198c06f85b37fd5ceedd0231009de85280cfd1bf33ce1ae97bdc4330a67294b645b7b19809cba5c16d85a5285a8c67d62d8079666fe3c52380e1f86fa90302047c435bb50066306402305e10f0437b6d49aa74f7327e2f14570099acddaa17ca1079fa1a87deb854487e9fbb03b7fcf15899166ca64b0eb5f31402301029515629c5b8fcb7b7ca13440e0c2ddd4de89371f2d763b4a1bfe840227f1b08cde85d987291e7cdb7d359502df7780302047c435bb50067306502302ce17b957f9e0bc7272a634154f1e6e92ffd07245b9b80835014b0ab7cf6fac9fa2c89d0b427448f0dfb6e007b37dcf6023100bc3a43d4d5757bd26d5d789ff807b81cf4b92ebb0499dd104e3f1eb2c4fb83554f1fc45e4d0f4ee6ac1b601ed4a2a67f0302047c435bb50066306402306f0721d07e7707f9b3095f0544a446d123e22dd7e02f2f539baca673d88bc723c81a5a71c540f30e1ee363cfc2d190ab02300fce630d0fbc3433e9584b50a8026c5060198a72e7d0a812d4226c0ed4bf9d76b4775ab579469314ebfb1beb89ebb06d0302047c435bb500683066023100c41d0eec7f8dafb2925b441dc7366bb7dfef66d6fd7ea6abe3eb7a366843807a999384a1fc8e972d629eb5e005b075640231008bb0f101832b0ce6c96290c50f275429dde8f7f5c24c37f116b934c3ec2fd246d7011400d11d6ba6905fae5d0c7cb47a0302047c435bb50067306502306bf0f27e56e0d9dccf575e34f3b6ccc32a367b324ab8981f7a256f4c922540bd4c35e4e1f6c4d3417901deaf5d69439a023100e1128313b43e80bdb74b343b9356d6bbc957afc5df635ad7cf4810216975cbc5645191837a5eff07a0d0e762fa84f23c0302047c435bb500673065023019fadbab83fa39a725af9397e747ad5b8484be0a8dab1bd84f90fdf3ecd3ef6cb22fdde31d4d46ecd3c8a2dbd1bf2f76023100c53fa60b08dedbaa3317d69cc3d14132c3c300d55b10f862642809202fa594897799ebb5c6c612a4e4784ca0cf4d1d670302047c435bb5006730650231008d1787bae5d996d21f26c484b19fbe2388607ac84a0f6982adfa0be23d1e4e7554e36af02024bd2a60bffcb111f4b72202304c31f99ca73211e63f0ac5d0c2261ffc97e9731660c660a7852fe41176e574954e581273edce8e393fbea2bfa884f4250302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a6b4c61418ffb49f68473e7746418fb2f2980c4c750f9502e442d799d29cd9ee131dd837cf0e7a422bfd56864a4c66f6023041441b6f91add21583730489e1bd0090d1b1458dc38c03d5a80384921283e105842512b46f8831ad5a39966c4d94cadf0302047c435bb50067306502303d94ade1113e2a238f5cde28f3f6f7fc017cc6b478a5a9fefb67b7a9772c703ac7ebb22f64c39af4d0b919c94bc4174302310092f796cd1d868f32c16d56bffff981264e361415d96778f447464083fe2ed99d34634ea6e7d6c0424d12066d511a227b0302047c435bb500663064023047ab7b6ee5f2cfa132159cd35dab8a4f193270c84442c078e3f928674522ba51c8ada64c69d97545de4621b8df0a4441023056756fd715a79b2675c0fb6ad14dc9c86fdd68cc68b915473146a3fff261cdba5fc5a52529654a6e7c8c5dc58b600bf20302047c435bb500673065023100f00127f08f35924b13a9638f16719dcc5cf52fbdec50c61180b1210182dd4353768ffc45eb28d36d4669ccdc273bc7af0230057c4ad9c401e6fde379de9f133145993d3d4e85439101dac4165e2360bb4b7dfab2bd7da7cde2cb066872179326c4ca0302047c435bb500673065023100cdb3274a95197aff959c58bca78e66e8d696e89d5121325ed9bfac81209687014f94a2983a83f95a7b573a82c249224802302c935279e765439ed48d5b21a4d7f3b001c8634912f4127c00bfd124074cc6140f44e2df1ff889c860e06b3ea745b0f30302047c435bb500663064022f25f8f386dd8709ef35465abec5fdcd1d62e1f749ed7f87a762d86e5d9dd7362c4f875a5423f76f1b1075fa0a3c032e023100eb5c28b37eb50464a5b5960237104966cb3ca0097e78052aeb64a4e633723d255e71fc19985c9ba418475f4a380fb1a70302047c435bb500683066023100e89fd39726d274d3dfd95c421014e428c95e376c25738f0fe5a686bf468f79400e4f4b6920e5152074e48a4b7e546422023100f5d621c50a23fea956cc936603a34bb4166138548e30991e8f6043b749d079510e5426965fb4e332e05849c2849703650302047c435bb500683066023100e5e7d3b3d5a4772cdb3307f2ae4e18e1d5641019993be155981c1bdcfe28e2a081feb1fba6cf2725681ba0df0a5a6107023100f7569ac75845979d3d1e8b31b628eaf92a1b5d77f097d3b8e1d573345c4c4820fd366e24d8e58a851d9f7c853f65ed310302047c435bb5006730650230696afb22c5747be60ae32de85c0c9c66b601a60be8bcaa9f28dbc44432e0db0e412f0386959f7bc5453d089d8d5078df023100b18033efd0bd96f2b12e3a61bf7f879b87bebb7188ab4e38b4d5b5bf5f3fe7a0b5c33ad0f472da08b07b63d0a48416250302047c435bb500683066023100b3ce8ff7c342fba14a6ac563b614c1d793cedacee59bdeda1ea3d2c8111bb8096e28e1c1fa9e1cabe35cce3e33d5b15d023100d1cc5d438918b4891e99225484930606d637366089f826880f0b5639f147679ea7de1f84a14099b9db8dfad5516e3af80302047c435bb500683066023100a761f65f7909fdebd9a2502eb896a395e6fcfe110ce564d0b9d91c5e09f8c6d8dc763b5da480fbbd8bf8b6f41807e137023100f9caf4107b6c77643bc6a2bcf9bd05464d2c4bf1af9efa7de2171e10cb0db77cfca3e777e96c83279a4b929cdf2df81c0302047c435bb500673065023100871521171f8c00d5e15469d3400a35a407a7eab22f989ed2e8022a8e5d2d1476a9a1fdb5afd590c3cd39b880678f669d023054363552a065fcf0b50faccb47b1e9a01f01a6599c3bc4a59bb8f4d95b8bbf8e544ab7948414d3cfead39df03f53a0b30302047c435bb5006730650230011a9922d4aff99864078e6820e29931feef5e0d6fd5665f95853449701b1d342e8d141675267fc0ecaf86314f1ce824023100d6e5e161aa7977e7237a2004da5c714a69fbbbbd6aafda71313fd00f6e31ea8e47ca32a5338e750346bae4ff729c12300302047c435bb500673065023100ff7572eb46ea9be7d18a458d02f75e90aac58bfb26bc9b3d7f1a2d69e83c38656966d1014381a64af459f794301aee7e02304933b4269f260e81f8077ba899ef321ebd292ef24cf7b9162f63d0419cb7efba09bdf1919fb8e94751039584cbcc69290302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a2298d6e514962352e447406713942102845e7e9bd9026bc2da335eaba1c1580f035b5c3af13bed1974d28fea14941d602310094e07b19489a1c334ed8db65377fe663e962f653a41a30944ce8914d2eb558a6de2dc96f117e26f473624e9eb9b381570302047c435bb500663064023019fe1b9b636f38902f8a26bb398807cc84cde549fb65532852e05fc4b9472673fce1f7d061f22ce50918ca6baa9e3b7d02306e364f6769e7d7c50a4d68e0a51222214cb2c81fb4897fc9d6d07e6718b470c44d54d46d81fae3a3a1a1997ee6ef1a1a0302047c435bb500673065023100a7ef39f789a526018d7a1e09e99cfbf286fd832532c329355c33324adc0cd2ca4f17f4583b14e07d7639adf57e7c81c2023058682b69f606a8affeaab3456754c7fc6ea4112cb94aae484dd252994f8d3ca790b5392fc07fe5d069d538f7759783970302047c435bb500683066023100f20ce00b97b48d2e33456e8f3d637353575ff390ecdc00f77b2559e8a1949066c7968a20d7d43722d2621f1f03891286023100c3faa0ecbeb41685010e22d19660c6575bf891e2fb6bef53bd2b2af572ae366400593a45fc99df6a89e734cd6493cffd0302047c435bb500673065023074e044df5f4593a35531ac692958b2e137014d1cbcb41c7b4c471eaf9571f64afd75da4109589752fa22da9041e9617102310081b14bfeb2d3a794eeb0f82d6de5f83c941bf35a1223a7cfded48ca3f7963c44c44058e10423c06b3173905d297d6abc0302047c435bb50066306402305e81baf6004b217477b7aa59ed0b829b2c196503d6175a1bec65158fbe488a2d43ddd4fe0facf842cdf32c13a1af21f102303e6631aef57fadc4571395845cd8dcc0560e881442381b58fdebf8576153a69bcbb3bd1abe08cda3f893d6b19a4229d70302047c435bb500683066023100fcd07f0ca17cd50fcd643acc848675b5699a6ff360a39308a0069e71bb27931c57f5f9eef1a44f03c12a1f5567cc28e6023100b2ee726696ef9e33257c184fb2081593749b2f5494d0713d912c132081cd15bc818dfab6aaf924d434b540cfb7a91e560302047c435bb500673065023006c6005c8911c47ab8978ea8fe41f8c35d12fbbbff2659a9c6fd8fa7a4550fc41202c7c2b92b96f642709d720184d3f702310095630a7a2aee46bed208c9bf1765df0ef6b4f2b2f90d41342a89db1af51ee3d5c820b783f01134fe0d899a1bb6b9b6a50302047c435bb500683066023100b0dbad5c3b0d329397bf4a3c6051e428487d857b4dd86e4b78e2822da78bdaa11a9af4c7c09118f868f028e07c8357b1023100a5d81dd7c980eb14ace3d258bb159fecce54dba257885b535cd1be0bca607efa8fb5fa0fdc98a442a4d4c0db4097a1ae0302047c435bb500673065023007fe02314ed40294fbdc14dc73e11f80ec1f136e286a1cc063b5285b6865d23f27f82cc597324881824cd3e3cea961bf023100db2a9fcc4adb5aecfc9c9ab6cc3fa4269739dc4cb9b56c3e7f2e958e2b1137469345f49c470114ad0f4ceaa9ed453ee10302047c435bb50066306402302fde26f3032406e783d0edc332b4052c0ef5183419a8e0c4d384c07ba48e2c6e94588b10a8cb9db403d3a8a58956e45102305caf2dec697155009caea576503a48050742812404802946450855ffae598be4c40f6d70341d7278f42cb0ce9f9736290302047c435bb500673065023100ee4d074cb46a5d3378683802e666ee901f84d62c0746d168a721a6d0309394b10e6527e9818f900ba86b2bc6eb36fc1a0230018e6d22682dad89dd6695f9f9d2b530809c97f455b6e538777518d7687217b6ff9eb8009295b535b53e3b50864eb95e0302047c435bb5006730650230328fb6327f5221613ab994ae58785243d14e25d16f326e07bd0dec166e33c0f3f06198e0f4b6047f724a27dbfa473bd6023100ffac358541f58cfac307b5b206e6f7104b6c3c1f8bab00efc7439952a0318babfffb96b8bb2c85368d57312b2407e7e20302047c435bb5006630640230174e5e7a696a49563763f17642868d359188b2db612d3ab0a1ae30841d5779ce0e3429c9f4ed0e8df6a97d1f342b8ea6023070de9c6080ad33416de496e062b419b16e7bbd8cdd23800d81224c0d26f9f0518d3c6011cf7dfb0be940a3fb8b8ad8a30302047c435bb500673065023100acd95b9de33f3088f28ae8ca202e4452169d037455f83882d7fa53f146ce0612c429391203b947f612119e7136a35c270230394233ea230e28d0c6b241b2925574594ea8f5bdb4f5a1d0d287edbe2b85f106a42776f77983e22bf884310733689b610302047c435bb500673065023100ebdf4fa3b4a27234e8fd8238e2e3fe00b47e88ff02913894670836a3a3c33b2611638870472aeb6cac5d68d8cc4bb0f2023067fbe7c5323b2fb00f36232c62b6c9377666976f80ca32eb83bc17b81f2f40e4db4353a7c105c36fd7fdaba3f47f22e10302047c435bb50067306502302c3ece90d9db5f5941e74f4437a5d416c3158da418ec51cc56a343972fd1204476bb7e99e411acb23cb15a7dabe71ad00231009af42501eebab86abc3e3f67f1a0e3efe8deb58a5b35c0fe905bf2ebacf286ddd8f0804632f4b3d929a26d6dff21c4a60302047c435bb500673065023100bb035b1c0d2c84f18d6dde1a29d6c616124d13c5732e84c167f933d729f31b41a52fc355fba8d4ff7ce8ba94aec8d4ec0230182164d51f22a71a38a6d1a831a9d641b19f393b59420eb0a75dc22a86e8c0efb26ee4ac111491326fb2beb70e3831390302047c435bb500673065023100fad8cca958ce6bfb669392fde76edfa4de4d9a278657e1a45e52838bc9e78fc86464d5bbb784d562d8588b34f34212530230067477cefd9e5fdd905340fa213de97560265f8e4509c74cb873e7b86469d394ca858bcfca789cfc07b99009ea80455a0302047c435bb500673065023041e0246fa98875c40251cecf3b5f72b6b7686199fce6f4acdd6398e618f01cd455234da461f38a585be95a34cb0d47ca023100df71dbfeed751b6e91e7b0aa11ccf2bbe1c09ca47e2b3bb163f598cc042a1c176c29dceca420da02559be5d8ad5e055b0302047c435bb500683066023100d7d595d3110aac318338338062999db05275c07a17f08de6624b68651f0a827e137f815bd1a41379d1f98694f6685d8902310081b64e11b2de9cd86a12ccf12d71167cac9b16d8219e5a70f7d4b0929e4f5f009091440c6ab3b9d5b481166afa2f0e920302047c435bb5006630640230381dcf566287a67d6370d6fccc97e1b59790e7d20ffdc9ebd933c04ac751678466476266cd845c9886a6a58704849015023011d89b01cbdf952293e1df59f70654cab9a48fdb58647fa13a6a344a4991b7fd226a524c6502be3160ad0dd39e98982e0302047c435bb500683066023100c3abd1bdd006bd8591798c2865bb87f846837cad54cf15456515af368b98983890fa55ba9c39dbc675d0c87244e75344023100ea1783681425931911c9a62736498e15b0c9252c7b8d2f950bbb3e5b1066f7f307b80581f26e50c50b07f1b814ab6d2f0302047c435bb500673065023100fdbaf35691ce628b0c4ab80e0f00bb80978cf3b2487bbaae122916784b8baf678f7ec999a9351ab77878a442f4cf755702305f28e4ec3dbaffd4c73fb04144ca42e780a0a48c746912e88f024ba94d0a6b1f87eb14ff942ce293304ca92b5928d01f0302047c435bb5006630640230590d20294f38d8066112fbffdeee5f0ef3014babc13a067d9d39831fd12aa376b33290f3cb447cd1da06b127b54ed855023002bc0e7255c176bf7d1e1649f71cc29bea4be7cdcb31ef147a9568e1bc3584423ef20d60f50baff9b90d4ceee718e2d80302047c435bb50067306502305af129d78deb42c7e878a5610cf14a81132e8e4e4a9d769a7bca345001b2afbee2293460bfe3e22b419aa24b11eea0f7023100a067685196820ae21d7c0b4c60ffac5658d33934d4f8f0e7ac828bc8f57de3e141b9eefef45170ba128bd0c160bd155b0302047c435bb500663064023043515b42c33f42bd92e50666d493949e6ab7fe8d98e3f7fa3f09db50713c38a4b7b6bdec8abde04a54711f96dfadd0eb0230100e16865d920875814bcf779cd2edeea7c33f54698cd3c925781d334a482eccbdfcbc9bfbccdcc17b5bb8a686681e660302047c435bb500683066023100cab2b78ea01212db87eca961412b6707441d983ea6495f8e1a27d6814443a2358e23251ee997ac8d4d0cdd51efa7c4b7023100ff6ac68ccd6a24265ac5b9e206cc333e28047dee20c2cd79afdc424147402cabe11b74cb732253417f1283e03dc1267c0302047c435bb5006730650231009f5f420713782e85a14d9f6e5f8fdf941f08b0033efe9f6739e4bc143adb9e7e3fe3441f6c65be23253b056b7037b9c802302cbd294296e2e42302ca40d5d3a0135d10f3ebfe9c6960394d78e262aab7f22fc6e791a9022a29f91554188854ef2f2e0302047c435bb500683066023100fd4f1063399c7466909683cdb2bc71754396f99b262afa44cc0afb6bcc6fd0850879705784147bc3bd4a09dcb2e0a3ea023100dea1a7b8514479f025fefe04f00126aab924b1c942bdf7829af2dc523cfa667036fbc1f6349949b503c204d616cb7b670302047c435bb50067306502306f2ac3d024dfb70b6c8bc0f300979511bbd62841d16ee6fb95b5eead1ca053de7caf9de9bf6e38f16ce08654e3cb8971023100974d94687e7d8c35ed51eb5e59ab305a30d31d47e8fefffce88be3363bfc2ac09eab3ef44908506e48b7b42bfbbdedd70302047c435bb50067306502303b21fbec477a3ca4ef7bcd2eb7574e103a083ac1b4a18ddaf6c5fd4fabdf05072f41532aa48d4b3839e61987ba51354d0231008dabdcacb12fbe66a0f686fb6798d5028993b4a5fc7252c523861036819db8c7de8c8b79bbf96147bad39d7214c49f080302047c435bb50066306402306bea7f63d0c4147a3393dad095e767d260a4bc25e06eb96140df650a9074f20833b4fc7de5fdb6d2731f5f9481b449ac023046ae76f249c8d51202fbcdc691f624fded2667c9cd30d3822bb046c1fb1dcf8805a8f0c4b693de4771a0c2b89b1889540302047c435bb5006630640230467e16a342a4fcbfef0f0966b4d59f50c987a656b7bee8db44d3d8b48b327960e129efb90e8792381626cdbf86f80dd0023062c1089382fb03f24f5a5433aa9a84c49af4d934d7e6ea85456c94977e9082810e737fd7486610a054965de3d32d0d300302047c435bb500683066023100eb30292603dc72fe0097050aae543caef8c4066f9427af4e14a99d0e122160abb35bb67458c172e3bd273cc9bb2f2ec4023100d306353d3ccb0717a5e5fa6763474c00a3ee0a7cab8b74b3a1050f4ef8122db02ea57da32a75b900a69db74e3db9f2820302047c435bb50067306502300b7c1739133df3072e5b9f5753122bcefa5549263784fd8d76b7f4edc6897aff5fd7148ec036f7eb6442a2783be136d1023100eecceee5e9c636cf79ee3c7db300f6fd6625c2b5d2c0f3b48e390ecbb52ceb1718f9b993fb7b96799a43be96ba6ceee00302047c435bb50066306402303eaa42c06205a3554172ae50306e58cf8f4a5cdb30eee540a48aeb683f98b1f5e6d2bf3852ca022e900e82241081733c02300179cc7bd0b5bd405d441d91151ef92fa4e1cc8b07e7642ab17e57276421591eae95577651acd481861410db1357ad840302047c435bb50066306402306bea9da64f04a158895d09c4a56ae58cd144d68c171e077b2f2dd9022ff06dfc9eab1e3a0810e9a72881a2b8f90c137102306b4dad64b6e43fcae90dcc72a1d767e5105373b0c7f5900e1e9e6bc9b84b18d835b14598108d55ed8e804528caec328c0302047c435bb500673065023100ea8d19355d7d2025fcca3d804f1754b2e551201dfe0f7068d23e547b9026a8b787a055a048a74c6baae4b2bf4aafe61f0230368f895629ad55ae69a327481acb6a646c99f35745e7338ad4219f14db80bc5b953896b1c0bd373fa37487b6e0b30fb60302047c435bb5006730650230587f68d035ebb987a408bb474e895db8802e3a3116e11821b0e1f325c67f8b23ae11cc915756f3d1632232bc9528e650023100ae7dc638c3d76dd76d816211895f5a80efca399fea5a6676f7a4a39306f72b77c8209b1b41ac09027b8ca45bb4057b5b0302047c435bb50067306502307dfba3497ea53fd9c2cfecc02eb6c81ea3187bf91f4ce0c6a4763de97a91a8e1f10ce43dd3c9dd5d723cf6523f71c179023100ca732f91c4c73d3cbb1b012f8874f4be2ade2ef49be549a4d13cca98d1f7c36b11cd12839bb09084642cf1ee4b0947930302047c435bb500683066023100eb00bff1c21672c7e6f662fa3d5e8a4d8bdbf79f9c1f23d7f83ca586cf38773fbb3b0ad32800afb22cae874f17ce60d4023100a1a6df1f9c3c9d5cf66913460edaebcfd09446a03ca46fd7f48da15cb65a1d2b2785116ba8e13212afd45a0a5b8273a40302047c435bb500673065023100884e6784f964705beac92d1ae7c93210b1578bbd1c6d375b71961984d28fcbd01d536c6157c847761a06ae6d39f89fc602303f449d062976688316ab738e49ea0a9ea81d43cf960d50d464a3d81720f29ece0e67961397f6b2a9636374aa30ffffa00302047c435bb50067306502305bb888d56f10093251393765518d98a6ecbe9543a09e31bc60726cadb13b084de9dc7040e764af010df99a5c0fe2aa4c0231008a071bcd3beabec51547cf5772ef03bad2cadecd0588b197fd6aa2f8d12bf058a3677616d536109518a7c7f804adf3630302047c435bb5006830660231009e00be157573b80264e41a8fe4ef8cabd6cfa11736aa91bc524aed2c526f6f8acd54d27909e99a6ef0b6fb6866565b87023100a30af69aea867b2667bee307ff7a71d49f883b5db574a5138cf578e7c9f186e2363c013c284c50bc45f70ea43787cd320302047c435bb500683066023100d3669f4c019e358ed6d95baaa5d9f20bf45b80f2b65c5bbad6bb085e6efc92762934017cff09e54137f9ac29c335993d023100bfd8ccf245b775dec2ae663a3d1540829e8efe675e780141cac23f282f2c6e9102d10df98411136a09c6494c49f41aec0302047c435bb500673065023100873f4b884e5e7a0c90abb76d8aa5f2613cf82fa928d3c260e9a378e3f4468e9300f3787f596d073db94bdbd8fc1829b702306fad8c7c349151fc97cab9ea25d39ea8d52e76b40f893c424f66b5b6f8e74fc443226ed319a1169771916c6dc033c1c80302047c435bb500683066023100819f2f96bb073d0a34e2c950408b37112bcb46e79f7c5e33aeee3606c3b7a9b0dd9732128e7e126531d4d1ed078bed16023100a0f9d7031ad9c5278b80ad88ca48937515f1aa15dcd4ec83560071d29bd5bb4bc3d74e88ae152acbc0c06658c54a1af00302047c435bb500683066023100daa8328af72a5ca6e8a8d9a92cc21d60f81e303dfcb1d80158d9365e22a1130c9dc095072a75c878ddfb043c7408c373023100a7dbf49a4dd88483a18a10ef1364fd86a80a665443ab2f7e247146327633adba881238f77ae0be2261e5f971881ab6960302047c435bb500673065023100e93067a9042d2e1b8252de07a9fd31b9b1d56a7d996836a0357317f712732db8513a816aed3a8c9152c4e27275a128bd02307353ae75277a7d42fd69c44d32b41e28485cce0bc0950688dc0a89ab9bf0966a703d3db5c346c5a5821127d16ff1a3cf0302047c435bb500673065023100e08b06dc994f05a20439060ff752f031a012041f3c58466c4c852a71062da7cea020aba1527c97731e1553446c06cb5202300ee560907a559008af5f7760df951bec5b999a5fcf2a2ee675186434e86e7ce5d9070aa879ca193584fb0400d2f7f5930302047c435bb50066306402301f1858d9db8537732eecf19df5efd72a7f14e53390a722b98f07e25bd9a2a284071acccba95c306e87e0f70502ec642f023015e443b0d9b9eba7bb4cbec778c6924b200d68c5a2e215719771103f835382804bc08b328c23b4cf2bdb6ece3840efdd0302047c435bb500673065023100e074d60a47f8e4bdb31c16407a92c0eaa2db01e23865629712b35be36fd5b18b26da0b8854380a4cc815ab6e64c9d3d102301dcfe8aa67816cee85c73a7f901d5907c33df6892a5c7ac02380576222b8baf1637e21233b90d9ef8b7bf4d9e948b7f50302047c435bb500673065023100915cd6e0cb9358e852e56b1b571683af3a261b069d62bfe04cb978ebe9b14db4719a48b3c5f2ccb2b751dd63ba37fe310230112b5e09a40a8f89922313e73834d045c57ae95f4249280acf0284cd575f6d537db8d41ebefd1301eb692860db7a4fbb0302047c435bb50067306502307d2436e96010f276a8cf7a70426e15261d0ea38f9c28e1e7a8696200ef9fe49f972be761576799e953517712f872a5a50231009bc04c7834ca53d37071cd0e2cae505640747c4734510cdcb61b727309328b1c92cad1091ffd5e118719f30b53a26daf0302047c435bb50067306502306b1bfa1511ecfbf9c2267e86a2cb789d2d168299c30d33471cb47ce883f2e3da9dcce8656537ee56696a1cc2d442a2cd0231008d7029e588c93661c00d48fff03964b5d473c9aa460d993dd665facf0d29dfb2061302e6790dd8259a7f10f0e1d808680302047c435bb500673065023100e6f6419323ce4fd06052fcd2b8984f0f733d06d85c827814c61ee369fa0983df454d41172635b762fec808bb06276e83023008d5ceac36e1e160e945483b1272463c5d1e5519442ec14cd19b78a203ee03ca2c56a5c184e59dbc7bce03b03961fd6d0302047c435bb500683066023100c6c5b4945c44b217cbe39d33f5f5e1e364d29c4127700351e16ae57ef61278a5fcb47ff02f3d30a83179aa5ede8a9c49023100977c6ecfcab1555f297ce23eee3341900f0cd7c19657b118b36c435fd43714942543da41da5f7e3253aba06910b137870302047c435bb50067306502306236d2cef712b92fe1b0b1203c81f6c1d0be55c300fbfe2f816ffe7d05d0fa6840538c41f94565e14d236b87dc69561f02310089e20513e0c3661d13a47478970ce5a81b515520a148bb712c3ddeae6f1a0fcfed027e89aadb43632c506191ed3184450302047c435bb500673065023057696e08920dd5701a99db256c6e293bf5dcc525d2218a70d92a8de36cced26c6080c72e55cb8f5103dabb62790a892b0231009ae054c81815929b0d2ea16f2e0a1264db61fdab6d760c0351add0c23c955c2553b52fe04fcdc3a5a3c4a5ec9d2f874e0302047c435bb50067306502300db222f0c3aac27a22f2223837039371336e8e290ffa3b976953fed75e8fd9bea712e9728db4b8c5c3ab32a02420db0b023100e7bddfea85edf30e2ec9bfa0d051df915d15927256042aa00dc81e09aec8e191e450ed529d8f9f6624b5ec1a2b38925e0302047c435bb50067306502303e651500f0ddd8a19815e1d29243c876bff2fbe5af8f152c06e42a122a73e1df48a03154c5c944186a62c5a2c3790409023100cb7fea7e71303a924765797f5fab454af8f55528f04dd2e0efdee6fd442d04b56c2fb466a9284cb42b4fa3a4db76d3d70302047c435bb5006830660231008b301f3bef3590a2107dd669a0656d9abf76864fc45d11bbe63b6159db78574f5181fcb76df19aabb7d499da1c738ffc023100b0085c954bacf23e50f6bd5997abd8ca8f1aa9c3da7475eb1c4362344b8716526edb03a43ef305161e290d0efd21ddd10302047c435bb5006730650230450e3b65b08d1def8ac08802071a0fc9563fd7f095d0b33f3b78e56d5d45a761415368bc4a1e1b4e5c0bdfe17fdb0f52023100cd7e9a1655382089a120782811173e9dc852390afb532b7662f07975e0f607d1bad5b11c0d727a7c59bc160950023f670302047c435bb500673065023100fb5251e410c61ba962c9e44122861093fc73887694d76839db176867e9ea259db2fc4db1ecb9bcc1ef4fee0bbd462ce702303cb4185007d8152a5924f523e07e2fe8744d57dd5ffb5ee2bbb77284060b1c91c23f95ecf3687b32cebebc17a8b805e20302047c435bb500683066023100f77d9c92dc0f7e7ad3c711e7b083fa9738c2626f2f114342ac718722fa2d7110e04388053ca632f5ca300e8197c18352023100da53e1614947392a418eabdacce90bbf73b1ac8781932137b1674f2ca160bb41d148d2e0d8d22736a4da7879353a48170302047c435bb50067306502304612f9f9a70fcfa824461115855a132e0cbd6e7b9d54bca2b8f2b70df707edd4648d38da2097ed3e3eba38c73223c6e4023100cd444812da3e09cc3ff6d9521fa37b34bcfd0cc7b142e78d268221f5e22cab1b419cd6690faf76f930949439f7874cc80302047c435bb500673065023100c7eba99c7f73498ac9cdcc07f614f6f95556c17e597dba82d9d4298e21d93516912f919995361298e0dd84d6a73ae3f902302e5d3484c6f7dcc76d9fa17a1e254670145182783b3f55e1b91d4343b0e2d0329250151f7677108b3fd1a6ef27d704f20302047c435bb500663064023064e9abd09f7899441a662213e92d27abd7fef02d534bb8697bb341ad8a38a7d87fb387a3a3503288fd808a181b0685a20230142a6eacc759a59c247641c56e94578369a63326c90b8cc0a669abfe12d2cff260eeff6c70da21c9390ff6cff76a32220302047c435bb500673065023100a7dc5758ef5f52a6f00b57f0d0f04c10026bbb26c61a04708f31ce84b8537106631dfeffffc58de9b586bb1b9f142bed0230327e3d28cff84c8f6e76c06ccea8c3d1cca06bf229021e1946ef76a52d9d0e6bede1da87cf11aca4919bd555b475096d0302047c435bb500673065023100ec14f13ff68eaf7ee6ecd6da597de2ab2af32972a3a686a974006a18df06c9f6728ced37fce822e3cb29eb04099b62a50230721514169d4a197e5406da688388e47fdbec63e23f9bcba880a00ebb5b10f19bccff7ac68b321d2dece8c5fda5b45b1a0302047c435bb5006630640230664d8a2b5ed722291aa238787f856a83de004a6f852c0372ce9c2d649148b22b0b17cca7c573a1b70c21922e7080d72a023059354968136fdb987ea32c4083cba51ed0307c2f0e51519d581abb9af5c8d415806e82219b5267fb1907f52374fddf140302047c435bb50067306502300f9a8ad4796ea9d2cea39051999a9b6ad7f94be5bfb2c2f5e0ce5e2cbabe07551dd89caa0eedb7d05d3efaeb6ddd65030231009d88fe39181895d1c8a4af6eec81c0deddd3cb6c839f737a7d202ee4a4f6642d50157d9741defcc27557041f877eb8060302047c435bb500673065023100fc58aa1ed9a7409d6fdede91f43ccf7ccdd120d1dbd30567bc7bc5b9ffa6354e8a84f7e76887c43800de6bb0b21ddac5023031ebd4ab4b2a6c6f33e6a6c2bc99b12a65f0af488d264bc1bbe091e95dfc70eabea31af284896bdc1cde1943db1e82a30302047c435bb500673065023100cab2bd7cc28ba6d9e06af79bc21edadb9fa8f6803e62f6abc6e6e4537a338dcb7a7fac92253a2666a1918d371730615e023075ca91a178a7ad042edca543a95dad5740cfe5d7f298ff9baeebc3a3e6f755e207480071fc76f7648235e3c7e43460e20302047c435bb50066306402304a3946bdb88c4e061432788ea490a053d08d1a8e72af34c5397c95d4c4e1fd9a26c32b15c2b6a2129a92430c02d82fc4023044dab272b57e631ce0f8b2629ab7abe54dccb733f6db60716130d7b3ac71542f94c421f912cee6104da9f7bb9d8f66e80302047c435bb50066306402304372678f4338b54f0a2a0188ff7b6ce8b81a16fb743c6da9236e5f2de187ebb02f529a2978e1368523bec0772d5a642002300d070dfbe53be5a1c4e230b597e6f747ef01317d2105b585be80b2fc3b2edfd7bbe170c0541c766b9dc9cd57b6c18e990302047c435bb500673065023100ccb09a1e826001f6521eacf76cc60e76b9d7cf6ffcc84dae8a17669ca0b097526fbcbd5a9329e5ad4f514e509ba5abed0230691d727ab00ce912b98ce7a418fe64807e760cfa32c5a3c0b448db57bc3bd3236bbd4ace31fc994ebd3405f27c05951f0302047c435bb50067306502303ad08672e9418617cea5128c2ff4143a5d93ebd50f17f1c97d18db0a55fc16ccef617634e7dfbf4f9907e7158a8255f2023100a3a6faea7ecf4b8e04facb518b4c1eded7d050ebb5010aa84f3a6aa92d612aebb326027448380deb5e0bf6bad8e1b8550302047c435bb50067306502307c46d4398312688155194446faea33865cbcda44c7b7b663435e9e3c50f3e2aac8d5edd0546aa9aceaa571e92d875dd6023100f31159a1995d6f8d430d4bac63eaeee5d389f03ad813280aef882b3bd132a801868e7f72b981edd63a7877085b6475670302047c435bb500673065023100f3bf6f0657666567f4ba7933629d456c019aab05989a5465f50a24177da0f0c94201a36b0840b60f9efd121d7546d1d502306221559787e34f691a07350ff1285e1ee8aa834de280e91522a76cd4f4305edc624f0d77941945c00c2acba5380b881c0302047c435bb500673065023069d255ad64d899cfeeb4fb55f9f237a98688ff547da8e05975ed3ab5fa58a81d6b95302b9de61846fe9e48012d8a0574023100969e39487bde22fe066b5d062a065b5f11c5dd4ed607cb4b1a063868c60e24233bd629ba346be1ffd6e66a7d967158b30302047c435bb500663064023052a03ba7490a9019dec1e3cd705015aa3e186f597e85ed56e9f18bd43e5c279af5e154ba9163c256d6682a045cb19add02305faec208cbab4918aa5dd2ee3879485ea0c139b92092fa060c3d21c1db78f4b9542891719778a8712363fb8c8d70a0f30302047c435bb50068306602310085aec6f4e1f008f4394c5c8648a65ef7c8a23367b86b0dac8eaec3691d1db69f0b89cfd5f5ac284a2e589972dd7919ba023100f217f023a7437615d8ec56bedc6972153d6fea9d5298a06c26a1ca264dad9560c569dc75495b606197d56d4444503a4b0302047c435bb50068306602310080097b38ae1740f3e95a256ef947dd0223c29f51d86d04a7758788ac469510982da7d0a25c050973d09e6c91d6557bc2023100a0a66240c6e755a0f9ff475470141c9bb68ff5b454240e3e83e906429f9e523c283b8930cc549563046363d9bb6a1b8f0302047c435bb50066306402301c86524b4f7f09eb021c5f4df6ebe7b1b3ee310724385e1c8db6fbc9dc17a7fdb51c14969e013af81379437cf3797c7402302f7c9a34aa8a79e389dcf7f7239eee5340039c346ba01407def4cba5b2e00d38106007f487b1fe2c02609528719c34a80302047c435bb50067306502305882d3ac4ae9813f0984cdcbf74822607cf0a012c1f3deb4cf1d816211da7e86ca1e54a9baacaf31da2422e51410f782023100d7f0335d64e769ccd50e677d3ae378c835f0b193ad72885e53a38b8260337c4953bb8487260100126256fce7df6bc3350302047c435bb500673065023100af4180ef0e125102565b3b809b2d7aae7f76eab2c68b53c7008ee974bcdc40d5539949a6fecceea978b25cf6307ec51702300e9c4d8a184b096e572871ce718733a0dd34fe04e3f4864596371e9825bb250b60affaf810a6c0b0fc471ee86d194de80302047c435bb500673065023100c76481dfe40a819e32ec6291fb53fbb866a29f21c3851600a21bb3f64a0efd3c6cb4394eb833cf7b017b32aa316f7fc202302c3feba7e850e4509e761369fd0fd21ecc0fd14cb0176b46575e724f90dc4cf0f94fedbe6bd380c79c9d3bd44dbc53cf0302047c435bb500673065023100fcf5f6b95ae9f6afa94861c0332df6922df3b06d03a0e624acf15949ac5513512cc7e605e12fce65d3293ccad12eb79802303d091ec28f5306323ff2fbac4b8d49d735f9d78215e01565c273f51dc3a139db48b019af427102d7265652fe2ae483610302047c435bb500673065023067aeb6aa9b3182516b063833dc5686dbc599f1d86660e2571444f7dd22940e9c8a3a822a6ba447f1c1b894ab77a7a2ed023100de19f9b16d7b137fad736a9f9987e5c304c4e77300e8473ec90b0de6c27176cb4fed69e72e24aae75f2b347a56822c660302047c435bb500673065023100e3ccada9b2aa62dc10ac4ce1245dbd76e896902a45c46ed0ea27fc8f1b8b064330e9298896e2a827527d8b14267d43db02300494553931baaac125862903ec233c67fe04d631ccf771c82fc1a7784a9fd0a40974e9b4549be2c1ce92c605873773350302047c435bb50067306502305590fb24ef1efff8ede291c0f23f4bb5838c0e7c9774639618595c067089b16a4e2314348b7efe6044a3b4590652b0fc023100ac1559b36ee16a73557a00a5b98eb8bce9c53763afec7cc051ffca7e845967e4685a9f41b30cee51f3f5cf6dbd7af0650302047c435bb50067306502305a7810404c5d8f9b2e3a4f1df97e6be55ecd82f81893acfa85021b811eab788103bcae2d0dc6ff8ca94b799c7f0869bc023100f280903fd4104c35d08e6b1a0b9902f10c48b86f2b161fd73c0eb46a3fd6ca97191ce1543f1c1b78792d7e0d21a853c40302047c435bb500663064023053791c8bd9881ae30c40d079fa41f5e0013e430796dcf3ae633ea2eefafcd188c1c1b2780088a1f73e9c7ecdb04ed7470230047b7cea3bf274ac05820d6f8e26bc492d5ca024e7efc6509abddcb58fec57826d902675045543b1e0d1de3acb2ef6980302047c435bb500673065023100ad783a32e691f80a5e9d12008408840e5817b630603b85acd8b7bb8826bedc2dd9e3f8d603baad5f263befb1ae8e763002304987c7673beb554621dd4d6cc9335ff5144bf339b6cd0173040ce08e76640b254d4056c8220354b2ac189ef2aba9cbd10302047c435bb50067306502303f785b3b2e912f36bb50bf4b6420946f7a540063894632de225ba3f10594ecc68a6dbfe5d5d04d7e6609a73985faf8d60231008af4f44267db2a079d03e03c87206d90063463a898a888bae906bb9c06f40e87d5c36608ac7ddf76edf14107cad79ffd0302047c435bb50066306402303d238626fdff3f68edfd4518f517ec3a714884f5ae43e106276e5c6b86ccae2511998ba619b876e99ce0c685dade01280230760bbf7cd9952362d36c887015911990969dfd8acb8d279a538c8a196f65e386e6c19b41e2dde95c5b09795fb092a54c0302047c435bb500673065023100ed51585f49a039a219cf1e1dee8df5632f0efa16c88140a79ca8f4196c99a8c79624c825f21d267daea1585b0a4b0b0202301166c961b5fc5567a9ecc249bd2830ce24e98de7a72a386d745ec7147a5316bde2dd1c5ba6e96b2208f6bb5c0e201eb20302047c435bb50067306502306b6679b1bf938492a1f4953d6083744f43cd130b17783ff4f2deabaf5c5e2b0845e3c1ccba0116af51211c2e584bf719023100c3b794fed48cbdadbacfa416673bdf3cfe1efdbacc94d3dce1c5111a0b9ee35a54021af70aeacd6a6ed8d8fbe82083a00302047c435bb50067306502303b94037d678f9e9de968e26e15ab08b41a85fe59bb5c33684495c28aa0f9f88d9c02935566b334284d0b17f371d5a936023100c27855a9545bef25482354e75f60097331204ad107c599e41724cf1eb482f19f3819d0fdec0d8f2ad33b322d56362a140302047c435bb50067306502310098157e8c006717d3b70c9b5fcb9c55466b5c6c75b3dd740d63b1de685c1d3ef8da7ffdd5dfab953ac7e363e833d6209502300408ecfa0a7698f5a591081fa99a4b41ec8d8c687422b338f9f706732c1159c0676f18acda1f4f38ff61ccef63d2b6860302047c435bb500673065023100d123ffae03055588a4e2856a23c8ebc3c6fe631e7eb9de78699cd44ebf689de7a59a1114fd85f9e429f4077ba2cc262702304453a46cb733ad8d06a4a2848198843a8a5acf2845ae892613ec3b9427b61494f9ed7951cf070bd0a04b19d8d4d1ac830302047c435bb500673065023100df06c0044b8d130a07682104ad0157adfb8d4dab8de6e65f6def71007f8b6ac6d644f59c75e7ecd89e52ad6eba23c4fe02302576ab5d95ee1da641955d02c0244ed4b496abd652720337da3000613ca9b22d29c4534ee88e94b096f84caeb85799850302047c435bb500683066023100e22fb4c3d642e3a1307248b4fec2b7ea43a2eca292b14b491af8e9ef5d5d0a46a5faf9afc5d97fa3f01660269aa80a42023100ecd6b7c9d2fad03b9a96a8cb4211e17408850644b2b6898c80abb185d34c5bb81173b576ad93a743d683509081b151510302047c435bb50067306502304fa7576f054a482f40038aafe9d29f7303a1bafb6e8011f8b3ef9269e3f34659397ef621ad35a1f497cc7b72928bfa14023100c8b3762d8ae08e047100fb6e776ae617569dd6084dfe34bfc10cce5032a7638c871b082636dde498c91fa7f9eafd31210302047c435bb50066306402300fb5d8d3c2e2e2f289e5b542d1b5b9080b77ebc5fe55ecfe111de0b91aafb9b3a89784e556f892ebdb14f32989dc80c8023044abf8d406f42e5aa3f994ff6cfa9ad355add42ef03b6b547791834463c1b265cc0ae2237e5f95e88bf441441e2fc6970302047c435bb500683066023100b79224130cc271cf0a1106a8bc6c05b65b0d1928de1dc815792e3fd3996d7aa19fee644c4de52fa820934125221cee50023100ef8db3a0fbd544bfefb5c69f9fa54ee8518f3a7f1f074114432d62e7c56a7f50275ee3bb55a490fd46ce585f24157d930302047c435bb50067306502310086a23894d08dd390014f5445627a40944f33143946d6212226ecddbb680b6fa007f866a9ec7665962bbe70ef8953040702305188e46d6a8f1fef5b31ae23e154ab614df7e7f5d07278d9a8522f3c88f097a69dc34bb48a16ea575e400ffd7dc8ad210302047c435bb500683066023100d8e19fe6057a3b2a2724273dc649998175d51bc6a9a000b2c7e29b8c74714954d128b6eb91421a9be8a94c6732e72846023100dcee0c740c72762d4ce2d87d69ee642272d5df8929f0b8cd75866da2b4d3cdd22babedf4503296f78c44e18cfdf289d00302047c435bb500673065023066c20a1fa412196876659f2ea4ab3a9bef5f8900c6433d588bad5de59b373efb7ecd179fb18e05865c6d6e83fe93760e023100824306c6ba278dd134fb92564e8d6291759b04732ab0f784be7f5b117b02325ddf81cf7ee6a632dd17e04ea9f98c74800302047c435bb50067306502301eb932b401cc7730ea2fd902e330c44480f9a131ff5523a3d72dc52754dfa214e6a1abe41822cc0f9ec77ecf0abec0e90231008b6ac22ebd7da4b9b6086f967960a87185470cbfbdc58aabe42339582225be5e19ce06a2fd192f4233830b3149b3b7de0302047c435bb500683066023100b4925ac855ee4da0dc058e2fe4c8dd832741cc920ff02219326f07670760faa9691c475ba4163b88fb1d1427cc135970023100df352448557d50c2dbb31255a0443099b79612dd31b071f47857069100d84bdacf077d8118f4835b72b245e20c66123c0302047c435bb50066306402300365467f064d4edcc7c76ae783db2c80956e7617bcf34380c693d54e5818801ab51c409314211bb406f2259a63e8929e023062f38154e58060b403d9d2c8bdac93a0dc30e4b8c29b004af360445566fcbb3b17b634f5ec662e2afb528b5122773e000302047c435bb50066306402307886b0c328caeed034d6f5c38f2e0d0a001741e79339a6199c9ffa3b2e65a76b552f86ce5ce14a9b8b8a79ecd40f0b6302300777f026498c2c0bc2bc7a56d2638a89f14a169d5e16277b1b9947e6f6184b27cbe854c2509de105f06a9e4c3994038e0302047c435bb500683066023100e2cbca3ae2a9d4946cb92e83db21cd0498ed8dce114074d5adf573eb37b8bfee093379b9d260393ff705a4becdba4fb80231009a4e4ebe9b55d8fc7d719032cfab65d2fa0071abe8b0d933b717e5d10144c2d0a7223d25c3b690b8892d9ca5a223781c0302047c435bb500673065023100f8b9acf8a09358006c934c1f4c473f38684068e7f522c47dbbfceaefe065e88147531c4600254922e5a00a41958f24ab02307655ba10f9bbb366ed17ca667d13444f530306f731302d7d4a8c2911e56a8b746764d3a677167fac3816d431d23c45af0302047c435bb500683066023100f1d8339d838c8ac08a40207d8d007d9ce18917bae9ba3734290e8d4b6d1192cbf153691040d2dfefd460810b843d3310023100c7c786008afe046c127fb213d0273e86c6b49487cd81009190004ec09596a3028c43bc2bfd000dc42eb54525cc972a8b0302047c435bb500673065023100f234ae420b137b9e3d2425984a8107a0293b5ecc378811042646dfa75e0d8a4079c50164e3f3426dce3610a8d4a52338023075482d250c8c7bdd80a06f614d66214bb9ef2836d04489d21fa953ac75c39856e8d871297f0f4fb589f57c1406bcc14e0302047c435bb500683066023100978c81fff1d9f4f9ae28ca3e4e4e0d3f0ef1c08ea3afb7158b978f4b94e59e3c496c706cf3c2328379d8a18eaabae1b0023100a533489e6119f36207c82093d43c81a699f57f7534ccf7b97e69e0e41e6b982dd78e7980fb07c7e9dd2e7cb82ccf43270302047c435bb500673065023100a8f9e04b2e5b840fb3a1054d3d6c9094e7017bd5244484bd074d391b08c571d6133100d788e1f59a1e2fc7e360d281bc02303e4f87773502eef6a7e1743f7fe1cc9fe1b166867897afb01e30fc7c6abf3e0b6c33dc8752d04af5669738c4014f95410302047c435bb500663064023075a472ea5e433be0ea3c41148433d108252f90b2a2d5d8307b0c0e44dfb620d1d8bc5870594547e021e1cfa9c4c74b8e02302226874a96e722324e6b1e03bcec22ea2441236eb38f0e1ffc79929c46ffee5b9285b0f4f0bb1ae3429612ffa72897710302047c435bb500663064023003e98b6a85971915624601cf9f305e06c841e6e83d3ededce61df268bb72a344ecb3387c07543b93efcd3651c8f5032002307a789c709b30c3a519481c7bf0a26a733ef7a05596efdfe1d36cecbedfe555f91f422bcb4412fcb6be7688bcbb4994900302047c435bb50066306402304d8cfa810d1caf611abc0d542853cd02299cb1865adc21200904b3353df2e0c8ca03db2a87ec224c3f5001b72b0258630230016fdc264dcffbd74e9410b00e7a56f5c053f1814ea4c912d564e5c3f85440db0f072e81208ac87ffcc82b0e62548b130302047c435bb500673065023043ae52639bd3c80b26ca456d8be2086b40ec4bd2c26862187309050a48fa3ecc94fcbd16ab86cef8ed67157b5d1e7cc6023100eab921b3c703e008aa799b4326a9a8960ec5cdfccfc49a670cc4ed13ae183671072a970d4d17728bfd3dc210faffb96d0302047c435bb50067306502303477ffbd2b8a294b258e676597a87f3dc12f053d4fb09a964e6de43a723ee4a82966b13d62c9b734c7721635eaa1cb12023100d6fc114d4e23777911a4aee12432a66e10f4fac3544f74d013e99fd3898058c82a523f8742d3b78a77ddccfaa01a6d8a0302047c435bb50066306402306b1c53a7b2fd43e15fe05b2b95d20e389d395028d9ba3cdd6c7768ca717153f85f3cd805366096b3d2e197413a3183300230784134e73bf1996aefd552e92a81904180ffa306e430a36f0da6c4551ca0389300219ab2d371e759831a86512dbbc0c30302047c435bb500673065023012afd212b37ee25d38bdc2e56123e1881faf53f1fe87a304ef13b210691f776219c181386f5f4fc53b4ec5992b411c43023100a83f95c36c050778f48bca219862442fe0e7137d5e4943a7a59cd079e32f29c8d767d37c17ba58a1b7d5ddd13c35809e0302047c435bb500683066023100e72144078c40695ea30b3ceda0275c90aafb10d7ebdcc6edb630654fb4c62eb19bac939cb0aa86d3ab5f34d1cabc5f7302310082f1f4d9b086fb4ce84993b4ae2afbbf5cfbf946b3f284472dda392f7007fd15f973c936b5a6b3edd14afdbc8496f0330302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302ab25530e60fe13401c32c7e6fc1fae3ee84fa8dd8215fd94640660ed02e16c45871b1fd68850bb12e05bf0e6bcae38c023100ea78fbf8e41473336b74db2917ede570901a8fdb7d0ec2d62eba72a9b2819fbfcde3ec2868495e3ec12cf373ef50baf40302047c435bb500673065023011bcf5d4b44420bc3c0aee63dc8f1fe67365087429c50fb8f64354f9599d1200bcb7e86f11c681ad67c3862cb48f6563023100a9f90d8c40e89278a81e0aa992f24b8a9c9eff05cf108e35ab40817d7f9497187ea8891591f01a9bd3ccf412e3a219180302047c435bb50066306402301036be134ba536eaa0af3a7ce5e077e3f0b4ecada18aa1fa9b97a45e5732a263335428f6fe9b9f868c6e444c6e36e59a023003777aaf81f9813e08fcba6f8e40dae8252e9593214a6914c98455181c97ce0fcf6e4dec8f97bb437e95ac05e71f02ce0302047c435bb50067306502301d144774a5d5c835d7fc55407e6de72e706501129595ccfcb746d1b8d92d00b69386fffbbfadf40e3bb611af1534ea4d023100da5727f01a0f665f89abf2559756ede57d087786834836ac6c1de907d8b9f8e52bdfc0375bf62a26da068a2210ff825d0302047c435bb5006630640230571f7a03f9d03de49aac7c99205a335161828a69cdfd731d8d082e445e5f19611ad1c3ca58b313c8c1dc803f57d66ffd02305e02610adff7a4904799528793020e2e7c0b0f4ef2a93fed39200bc81976652bde4a915bda2f448cd109e5db98459d8f0302047c435bb500673065023033d5d06331177e0b872c4dc48cbeec0a61f9df544f879d026acb4a067d384d6b1751abecb40529aa15008dd1d27d20e0023100f0f69b041ee4daca3df96cddbafcaab807298a6edc50fc46d38424139cc604e1c3d049741b4a282a887c20c3a31ad16c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023049ce8bc81ba8229cac224825198fc297dba0b6e974ef86edd22b662ac4d3dbab2b6d4df04c90edccb5a20ece757945f502305c233a612bcc29fb16ccdf20de8cb8b8a84d9d4b668fd4fdce25d14cbcb7f6561487f82b4c72fb6f155d7aa930459d890302047c435bb500683066023100c9f4cb86a115b6be30c54277ff0bf94bdac8557808a870671ca9fab833eae32d7b67b0f8bc5bc5e5deb8a8c7c7eb7199023100e8ef1f9c930f793a34d3087e734dad95a59c33b01c6af3987174d495d31867a9726ab4c1b09cd95aa9b65bac57a300790302047c435bb50067306502303f694c41816f7d87dc24c465f440ba5f4705f5a52ce4caaec6f37b34c81c18c6e1fdb77e66cc77205b4839414d5d8c09023100821c048ccb288ca4a4d5c884d1056be2de3d31f9e9dab4499c4eee806f26ae084bb850aff14463d13b9da4cd88477af20302047c435bb5006730650231008bad563b087715f591b6c9c8640820b70943e5853c335d046a159e1d33879f9c5dacd43d8f66864586137d941dc8b18c0230337e7ac201a6319f81e7e6bd267ebaaee040138d4ebbe4692e2dae207d6530576861aa75325658ebdcd76c946844bca10302047c435bb500673065023100f88ca2f7108dd244c9e74f8f36c01f11e9f1e2c996c6491035968429ee0b99a71c97a6196be2604d6ab8c5daea5d99e102305b2816778c4af2e56eba0c30ed5c9363de8442cdd96e4b2682b630cb403e84873562dda5b13ab10fe86d11aa09f717c90302047c435bb500663064023048369c57f3d96468a4b3eaee794093a434a86df69e25ad7cd4e9840f25d19a64936bdbc3eb94283d0cfbbc9b6b3444d30230447cf4f0c8fbb942be151e22686ab7d4129cafd92590e5a808577d2f16b792c84b33b5e5b29505eb40bdfc50c303f6040302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500663064023019dbc581b1bcf26a6192bd8a413f5179488e2cedeab40ece04217444f45c4dc1ffe35ca45ddd171af390300f328304fd0230041461d22c6ad6605bf60c9cc963fd67739d0af0553de119e54847a214e49ddddd35ac9b9d8707e6753c606a887d331e0302047c435bb50066306402301681de77e7f9dc902a47889a91c06de897fb3f7060ce634fa540f26c613fa000794339ca166302381a492783f53591f30230648498554e8e2fd5debc493c26ec6b63cbcf992acca9946226a1ae57ef8e70de7095d97e951588626bc0e7e18c25a25b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100bfdc08a5c272a6c5e7e6e79c3866b1082e3e099e85b718abf37da6b653129e7e3989a1fc9ceab9df2c1750ce56c8675a023100be8f6d98faa3c3a77bc64b681b8881ac31e5648fedca7c0f2598e9db04c188bf4a6f2bd71c01cc0a7e763f85a16b0bf50302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500673065023063207db5785ba97b6340a1b91a7804dde5f09ea7a0570e37a163a3fd7f0031b4eeb52aed05568e39927bafa0a263fc74023100f5b9ce25813312919e928d9988d0652391b613737fb4b8abe321e4c113c51bdef08070e766a71cf96eff1460b5e609a30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a0251372220ec16f81d7d969fae3e52edc427a373be1c3463cd6b725f968a6502185ed1e3e55e2c55ceb51b50e6f4dbb02303d86e09729481a814777b634389dcf56d575abf17c5f294e2b8d867f4d206a9289a71d7e3d95d6a6293a4099028390c50302047c435bb5006630640230580cf36621615e2b0be40bc795dde54479e832585de05cf6258fcfe02aef22fb6cad44f21362672100f467c29d9f6a410230354148aff99a2750567040624d48885c6a87f3dab40fcbe4b5757dc56400ae5c7d5a4c3f424ace9581783c38deaf65470302047c435bb500673065023015ae919f8ecfbb234c1bd35c9a3ef8db4507984d8c6fd2ad2351845151a26ed53e76515222d009b7593d173bf0ceeb5e023100c08b40a9db992e7dfac1caf37be0a4e0d8e87508fd3a22ac1bf4406600ff7f76f974d859a524e0f41cb36603ccb4df3c0302047c435bb500683066023100b81c3fdf70f740341daced2db466cd44761dcd48f92504240d877a00794458c6e7039969b98d6c5719c938a2f654fca2023100c36f4b6451831b55a848a20b4c3627bc2513086db58ff614ccb52f9d0f089729d51495bf8aebb5c15b725d8d420ff81f0302047c435bb50066306402303ecd70f55bc9dcec5c744949a02e95096560cf53090f551fd259839f47e8b31db8a65c226336580233670ed030b34d56023009836ec838ca87e34d62cd034e525d433cc49ff351193f7e8e8da0ac35d7d7f3841f442f4382274a9f97857176ee3e6b0302047c435bb50066306402306586aacc1caf97fe8926f3299e564041aab92736d5898cbb4a8581f44e56b5aa19c937501219144be7ecea5bd0a2587602305c1b0f68bb6fb4745cc1c20e2d2906b82590648ca1a73f8151824951f762c2cb92f130991bc96704067e782aaeae235f0302047c435bb500673065023100eb439854c617aba393a16e17d58c9a2a1ce40ee7b04ddba4aa1745d0c12fcc815b13f2d70080339e99ccc8021c348964023071b71fa0fca1abdaf4ec6fd9cca5e5f88676a9f926e08340a33f488576941a8b7dbf2e7969099cd2722821bddd1140800302047c435bb500673065023100fd32b29484274612719fc8256db2679077f1b982b1135e8269d14f9cb12508b638cbbf7da8bafb4d3de2a572bcf75d61023066be44ce2cf6a19e0294d2d36b4a0ce8bb4f9dffe369a263712296e28dd7b0a98ba5808c7c4efa8018cb692d9cca0f510302047c435bb500683066023100e98ccb0fd29b6073039c91cc8870059bedfe92b149b759bd83c5cbb4d545eba862ee620995552b200a62ce503d93f71a023100a40780f12597f8b262b22b1a8e8246a6f7f712367eb8b7fd0515538312b413704644b3e129a8e4ecd3086a73604e9c820302047c435bb500673065023100c4ae43b1a429a7fc36e1f1331dcb270f4379438109e4b1810ac53de9341a244a1e16a812c6b5543c09d0f03386440f12023048e2f53cfd1d83d5081c0cd402cd67a91bd01e7c8f001a650fdc3bb4b49353f98aaa37e153faeb89dc15f4b5ec7ad34d0302047c435bb5006730650230180cb800b3210b878c7109ae2cab6ad6c891ecb237fa6deb9ea5c22dc328f710ef4f99a751d96729dc246cdeb859f6c5023100ed057876348702f8af7477be9e113a0ca918ccd8474952d794b8d8885bbbee8fbc1d1ec9851e372fcdf26a4b7251347e0302047c435bb500683066023100fb375d3469efb322fd49257ec1287440772864500f99c3a50768a12faa5db20c745388708e4477e9ff4b946b47fda6c9023100ebacbcdf1ea9d6fb058842ee118efa43e5b2b100f9a1e80eebb3ebfa6e362ddbf806390450bf78311eb91ce61befda690302047c435bb500673065023100ea16466e8bf1489f658e9ccfd152ad2ea9481f2b990d5535c25eb284c8b9263cf2c87a28c871c24c4cc4048c9a571bcc023074ed2e333d5a9446bb4650b9545a8b28cf61d3668c469c8127d6198728632fb99255e37a6475e4f1da2a38d6b39cebe90302047c435bb500683066023100c151a13a6e21a273c4362e330eaf09f042676d510940d3d5f41d69b0f030cbed39062a71a1a6a1e1f8eacb58682ed880023100b5561e5ec65282bed08939ce5a8df7b4624eb44a0a779ec84fce5db798d554f199b6e98087b0dddd110d8deaeb05cbcd0302047c435bb50066306402302208889bd7f04fa0c4b8c6ac7b80ccfb5ec086131d62be9c34479e3cf255a10608b58c65411484b9114d179a8d5e12af02303efa6b05be9cf4f71a02b72edf5f6f8ec1881e781520c6d227c7272f41c75dfebbf2039a13a5a66378711aeb105b0d790302047c435bb500673065023100d7646f3ed1ba2a47d83149ab0d7aa437bd491fdd93a3840494716eb7b9fad2374e5765fe4ba0fadcf50ac3336c824b6402306e12bb076a2088210a962d6dfca98a0cceddf1c63e6ba38f4218ddaa06f581cec068ec3a110675175f97fd35935a6bd50302047c435bb500673065023032a5657b1c0275f6a52c4be93107cdf99cce491ee57fce269ad5196ffe0f1087f39ac671ead2d89783a7f8582eae624d0231008e33b2cb4f8e00827616d7863f3daf972893b34c5463b401863b7640b65c518ba80261afce493e75c8b223a91a8feae20302047c435bb500673065023100d11112986fbafad9ff74db16919974c744e870a541aa057e57b7b508657f246a5036534e8fb09180953aa5ef59633988023021cbc22fd6555c965a2c79f92895c21d14261a375752809f3d59278a9183b71a08d1c25230b3ff234c195c4e7997d6f60302047c435bb500683066023100c34e554fd9f14ab47d31ec6dffef851e6ba59813135302ac49e60018df6e3cf4c2e53d95e2ca3290e535215335ad498c023100978643b8f61e07e5868da9f2aeede28cad0ab472a1d404e2b0c635f8192dee0e29c4f3885a9c46bd49960200d0b4380d0302047c435bb500673065023100eac3fdb71d035e55e975d67651ef2f5311484a36c5b867dd9b5926f1a142c98833a86f7b5a3fbfa6bc9b13aa023e2c4602303e0ae123dfa2b37d2dea87b3703dd8467ec3bbda5b4be8eb6fbe5d89d89093d7224bbe3f95e6205641cf280e6be163fe0302047c435bb5006830660231008ecf1d01d2e34526b28df93dbb26f47218cc93f94598e4b967d7dbaee895e313b46a72b6e425ccccf2a5e131ede08292023100e954207d1620ee32100b2b20d168087d2f36d6069edb62cb9f8818a362412cdd292f4412645533400d04899f490a776b0302047c435bb5006730650230723e1c9a6529cb2d8ab2409eaa25eb38120689539f0cdfa1e9c388275dea0c2d40e60a7b06806d0a6c6879b36a3d4d17023100a36d843a2de3916839361cd35d8e58cf87c45a1f670b40aefce57faaa2e8013e17bef99f02b020a8130460f5eaddde6f0302047c435bb50067306502304dee6fe565382955656c8a85bc8f601e1090e4b70462b0a527fbe2a2cfaade401d0078a487296989b297239426ccbc3e023100b073d2a88c3ed163c56d86742189eab338bd8defc2a1c7273cef3f889f3496ebffbcfb1f5d1ada2a292bf70489d13fd10302047c435bb50067306502304ef181d49f63051de801fec934672484b78a32d14b2a0c92a05ebc6d20fbd92a1dfd74e0f89ff495e3a2e5e15e652b64023100ff0a082a37b2e45627f149e29133748becb54a96fd33ad6d91021afb6fc1d8fa2de0120f07c82f4dbd9c458a6f6e340c0302047c435bb500673065023100a12cda336ff2f75cdf53cdc3e030dcf9cb1f68b6dce61ebe13bf6eb19bae517ee6f8f8f22f2a80bdb0d88f0ce431cc7602303c752e7aa01a571a02edf4130a2efde79ffbbaa9fa416ffebf056fa07cd6d8b0207abb049d988933f03a4446f8c4675b0302047c435bb50067306502310091886a755374ed7eb8c1e848b0ddeafaeece001ee74897bdeb44b6f75810950d031373fb5a616c1954451e2532a6405a02302c624c20290a54849e896205215c97817e2ea8970c214e6413c4be3a4487d57f6a29c20d6a1db6e03fa31ffadc28b34e0302047c435bb500673065023100a05a070593b12b296d8a15189cbaa5a46c3f152b2110c9869d1d4d8b038abfdce10dc41de1484ab32c682cb29ee77eb702301661b9d999ad7ad04364b6b2a9e70defbf072e26da666e3b4f0f3794e858870470bde0f711be2984b5483be568c996460302047c435bb500673065023003a63e7d85b2a7bc26ab8640afc45bbb73ce6cc972378eb5f4407d4619f0cc3f9b7e4c73ae3a03ab2c9673f5b035a0a9023100a836cfab5365959198b1b32d7dbdaccf9b98346376ca4eae79853f6aa935a1ffa0e99217aa3293be438bf1e1387e5dc50302047c435bb5006630640230276d16ee7ee83942fe84663b523ea4ca502b055fb04242eb4b175cb33d9ea1689c4f8a5e22328b7c4178de744c5d2a850230043e7a3c762764192f2bba2cfb6379a58da678a7fd8f140ea279e0d0f2c4f05cc4586e6b1d003d5e06a2a6c9e733b92e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300d2743bb87b0b9d5e03aa1b8c1e8bdfb4cb8f2c9628221e48f944d819ee89ed648ef99f1651cf9775d92a51dbcec45c1023100feb8a9c553695fb3d8f46d7d8a5a4ec1481b08446bef3c72163c5f8d6258602a5cf9f61f3ace01f14fe6d7c10f2429350302047c435bb500673065023100b722641f9f120e25dedefc77febdfc684873f964996a04aa75d7210e378c526dc67eea95057ee525d5e2e1d6a7a61300023045e9e63ffd68728d12b7e45ea067bc3cf7c374378ec888e4ab108c7fbfddd4ee5106473d5b4623341b5a94d8cc761e190302047c435bb500673065023066ef6f4f85b87c12dd04e881ec2277b571afcc93db3dcbc15364c4e15e5e8b03c3fd650e1a397c4c0b1d0ea269adfe81023100b788a8275e4e04766bef0e940d40bdfce6c1580b4605730bbb88bcdf6905087688f44e4fbaabde671d74eda5088d0a7a0302047c435bb500673065023046f9cd4bd6cfade3e54fc7409fd78700cfc57c3bda6f2c5e08fa985c1309c4c2ebf2f314ee9fc336694595e563ae007b023100bda8d29c63209756348b1c4ec80425cfeabceffe9bbbbabde0b0b010cd3ae2618c460be7f5e811e834a4f325d515b7cf0302047c435bb5006730650230099b8286b05dca00c639d974ff052896fddc2b9c5fe9dc5001140b7319679b1abd09ef3bbb6b7e8aa321d8a6ef36f7ce023100e489c1ac9f0d95014c4f833b77d367cd2d52b9b7981b7bf941027b9aa0224fdab9ca14dc4409ed7e3953959a9248f6670302047c435bb50067306502305cf8840c5b2b77134ac30926cd80240c2e0678e30ec55837405e291369cb479456907e9d3ab7846a330b20162a4dfe1e023100f282740dc4264f7a1441ed43e888c42abc3e62a0821507b46a7a0c72a857daccb5eac6be23103a9f649551d6d26912f50302047c435bb5006730650230226051c40c03fdf29741dc24d2f7998df467f0f255599bfe37f0f1e0b7b475ad19a72f8035f6f966dd9c42bd7c7f23be023100fa968694c1a31086a32aa35b243e2d51ba21b017fc3b8b36782860f76795e464cd6b4d7a16b6b59f4af0cb50cb9d92e90302047c435bb500673065023100f9146b9ca0e3f514497ffd934a3faa447f211d5f7ba6c97369e554affc1b2c5084e56a2adf3e9f4a8efdc5ee8b0da67802307ab0c13e4f6966e53108a179f5745273830100262dfcbb5cf766f78b5ba35a8f40fe3c38036d92b9b13dfcb830bd17240302047c435bb5006830660231009d4b28e88d11dacb68a7ac2853a049c207785f3c6a3d9fb934742424d26cbaaec5275614f56b37c89e4b34bce0e2ce5002310092cc47043d17b800ceaef89abf351fb777d8be1d1c0a316a5c205dd8cb09bc733202530521c67d6e33ee6d0328f76e860302047c435bb500673065023100edb795826766f612ed221fedbe16d883bcea917242a2b7ec17dfa9fbfa568c68123d9be716a68e2ccfd2dfbf81262cec0230530ded017981a617943edafca2998a51707d14e0c2d146f939f087b4f30e221ddf79e42f9298f5b01297a2a7b9ec2f830302047c435bb50067306502305e630f3be2713a1b08a87cc102848c45ff066bbf4908811d9dd191238aa5c4d9716aa7d83e04169d932992c37aeef309023100a1ca1d6b62e536244af69bc9e9e1bf2e68c5c873e0661a86288231eb994aabc71a6ba241a61d800c0785955942cac1bb0302047c435bb500673065023100f388881dee5781801d1e7b844c1024c88d74a014b2be62ae8dff2e7ae3402acc7cec07151bf1c5f88e4cc0c6dcc7118a023054a305b480236db5c6acdd7d51f0e8cf9c2bf580ec960ca309926a0e21f90749b06139e2f249eefeaf6b1a6ebc99035e0302047c435bb50066306402303838050770788ac67471320b9cda9e892eb4b9ce22c627e8452506daba17f0fbc4125d4e04eef952d113fcedbc07983702302ebd2c00a5c41b2f7b274ee81e9c7737f1cbd0e0be65c5ba0cabf0c030d82b8810dff3cc0c47cb43ab9191e0ea4503640302047c435bb500673065023100f0dfd55b4e6160e959c155a756bb4459f949321dc46aa6cc9cbe767e6c161abf5ce96f8bee3e0df34845a478410d5bb702306a43558595d65683fb9e094a2bdc5abff16f191ec9f92f65d94094cdc46e488749592963173ed49ea7a639d03554d1a40302047c435bb500673065023100942aa4bba52e8b66568282322b682aa7ac6e73509f6df361c3ea1a389fdc30e711c234153e0323b1315bd10811e7ce8302306596b5174da9c1b1e9a823942a239c112497cfaf967e4987a8863be5585ca784aa63127ad8cec95efe3bb7a873a644eb0302047c435bb50066306402305a8468fe4d5b581c7dfcb0287a0a6aebaa8377664758738093c2f8d84f956afeb1f696ba57ec5795fb6436a7cdeea5860230637e68ae47cc98d91fd862bd7b4ca8cea5641ca0fe44c60b2901fa01a299249762d3e2c54428d5f2963b3411f054bc310302047c435bb500673065023100d84f5a7f5b708403f7e93c1f19bcf89522b72b0be5a8eff213b428d697ce6f0837a8dfdf5f78cb41bc0acc04f7c10a0802300beb21a87306b7d770aab6839219acaa76af78cc5fa18e2d77b1acde9b600a31115dd14bbc744801899c7e07f92bcac50302047c435bb50068306602310087c5f0b593e92cc358d986922ced2e4610f02f620dd067e4b54248f71c499f5463ebe74c9fe9dde2aa485105eb491881023100dd2e0c38605931568e3cb852836b2d0d7ca37c7b112e47c79c73a2f8bb75f59699b9021e3e7858e58d6feaea79cca2fa0302047c435bb500683066023100a688f8da0dd1db54bb8815021504a47e75977894b9707a5240fa3455d56bed203e6f7d441d0b9d01f52369b46c0fc78c023100b582af382044f392df6559d8a592721d63dfde37679030facd46f7d21a60d4733c361995ab851ee5e7bf850e479cd98f0302047c435bb500663064023072902b969df571560822c1d0b3e5455956cdad6d71842ecf796711f7675f8984a7fa4cef22061cb0332716866ea3f6b30230153867d6e0e50abe26a281e3ee81a5d3b088d75ca553ba0750f39066ff665e16599746399dfff0c95a16bcb392c3d8540302047c435bb50067306502307b40689e4ae0742b1dd9f7ddd7b7ea1c7963fa1b5260ea5311395891d9d0d57ee0bc5d99f5bcd7da87789d72066b233c023100804eb18ea6c190a2972107f49cf524dac7860f8df501e34f2a67f23b83dd7f47a001fef6bbeb6228bca6105f506cc1c00302047c435bb500673065023100e1ab1df5e02c9d16f3406dcbeb4acbc9f36896e11931dda6e98b2159216f4643b87db2f53a5b3d5713fa09a50fa735d602307f16f2edb57217099a88f719035136b4a160a7ee690a9305cbea00908b3ca8bd973aceb3d0e30cbe6d322dc4a828f3cc0302047c435bb5006730650230358e2186c2780b737c11c75916d8fbf60dc887132620695baa93dd09fb1fb6608d08db9243e80450e17f660df885d1bf02310081994f950444af7e85d216b786ca379805ddf47166c5fa32eea58f16a095130dcdf4a67540fdeff3a8bd0757341dc0e40302047c435bb50066306402307837f3cafa4af3d39bf12fea23ae599a033ba83caee445dd6b814804d6f40e282aa98dde99e3e612fccd26ed9b900915023065d1c1bddf5a9110c841d65979624fb7c63abc96db50f44746be33d057bee1976eb5265bc40e5ca3e64e3a934d6a78420302047c435bb500663064023075874ba2955ab198add2019a33e2adbcefc832ec770d6587e5d4934c1b85e00a999e953909258885c4e9248943d3582302303d56be33144c6e968bf29f212c7b3f3fe3a9edd1caed75182334bd49a808d17f3dd0aeb79c8755a383bb50bd11f9fdb90302047c435bb5006830660231008de9f475834ca0893a2363f78dd8c4764ffedc5005bbf8642555ae9e5dc0446a0398465242042bc220be9d5d7fc0488c02310086cbba22a5ee08327df52dc59d3c08c689b80b3ab973311d72d80acfb81df75231922dbe54bdcf2e1d71ba0ad44a11d90302047c435bb5006730650230121f3485c25aa4ad5c73f93c263bceba6691a969d7a321fb1b1bbc45f0140bed7c63d79af3c417db5a8fe0b778d93249023100b8d5740248416990f911bbd84d209bf2b49ba6db46fd127110ded7fdfc85d83e5da1aecde4fd20fd59486575df14078b0302047c435bb50067306502300ddb002b6ed92a7550623af400de63b8ed9202e5b33f0a42f207eb6089c008c9d53ca6bc6d477028d7b66b9e5ee33076023100d31d2a7e5ca282d05f49d0dcbe765ace4bd2da02883084d3850eb5dfdda90b5163a53607b702150dbb17d2ce49395c460302047c435bb500673065023100d6dd0fac6c70160fcd8fee6c86605a1b15ad03b95ffce2efd17db3d60b2aa57d3d8c13e5750752cc6728677c7f3058a1023054353f4ac9bec087c84cf8f152419117b3a5ee3830b0db8856a6545f1260a078f436288818ecdf08e98c2497472c03aa0302047c435bb500683066023100945ebd09aa3a85e8d1a102308ed57ef3e911619426b3ad5a231c5ec649e935446b85eb249925d9b0a89c9909e6936ce1023100f02c5948ac66cdbb74f2d5021cf439559b76e2fdc649e71f28dd7f48808270955bb961851ab0e4f4501fe236cc49aaf90302047c435bb50068306602310094f6c304fa4617f826366cab6abbdb9e01a26425ac098aa44cbc563b39d06f3712d9f30303b2333e663ed79ea1ad0f3c023100aadf38a5b0cea7551d3d9ae9adc8366193ec0819e334a11d7eeffd11caf0026df445955a9aaa8cad6950ce2b23634eff0302047c435bb5006730650230023dd65a489c411c74e5f2c99600007703e5d0d1e9d2a57ce8036ad86bab58500dd3c513c6cb8f39757b52f84e39ae1e023100a9e75f3e76625de656c371abf2743275bd8cb592a77374679cd4fdf82fb224427bf73dc4461c566f70df35244a4746f00302047c435bb50067306502306d543f2a38863622b67feac2b89e5269790adcd6e88899622b40f347c6316f3a4ec2b069a9707f8c031f4eb2471964be023100d60aac63bfac4f32a866ba83a2325e2ab688605588d3f5c892d0e5271cd522e568d6e0bf613f20cda906dd6c20c81f3c0302047c435bb50066306402302090c0817b1f612e29d035d08b8ea76cbb50b8f7f792bd8fbfb51b3547bc726967cd3d6bd3d9b5373cb791705aa0b26b023021b4bb83f1152650833beb0063ba54a37a12e34655410e6df6e0998207d61c5e12defc8812d8677dd27fdc48f3ad5bbd0302047c435bb5006730650231009accb086de5b6d31138c9f47af9b34742906cd19ea6d0147ffc64329a1ffaf961526cc29ad68cfcc48ced69c921d92870230494815587f2ae6f9682ad55b8a53233a0baffd15f193bfbee29e0ea20208f41ef5d149228786cfcd032129aad3908a940302047c435bb50066306402304fa2c4451ee4ceeffedb43134f99f238dbf781cacc52f41805023576c0ea4a593a75755783b95b940778630ed7386ba5023001ba8e9881d411e756c63a54ca89ba98136c5b7630a58b7211c2e3a86d4a2e8a9047fbaf963948c53644e25777c2e5560302047c435bb500683066023100853effab91fa96d677759cc167933ea722ab3f59d39894620c8ee3b2245c18462be6b6efa54e4be509609396ffa058c2023100caf171e5bd3aab4637cb38f431ca14a387fc42d1003609fe59812144197ceddb18f98363f51e9048cc8146d11ac6032a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301790cc7eb60c65ccbc90197215b1e7c80459f9c5910fe8d115ec5ba31bdde38fd5345492fe67e75ced7fd037f522021a023100d1ae9cbca849232e91e90317a06e91d964bc884fcba279e29d966262f21451779d3b0b54710c10e2f4cbd86a5ff1b4dd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307adac7f22f70f6f00b803ceaa755d953ee142ce6afd1c2a7058835c87ee36dbe6efb44fcaa7c0b1b5d995c1856f7dea20231009c02fe9a942174ea311a10711f566e3b491ea0615c1bf99f9bd2d7b583253f460fd1f5eeac6061b0668dbe679f51ce060302047c435bb5006830660231008865d0e770fe4045944b0d26235093be4579219aeaf579404e7da2c5c1ec489a0848eff87e09f52da1a5adf41976333a023100b05fb0517116ff4af553ec9c2397921df5a787d0c7f0eabc80b3fe7893b237c117e49c9679d52edfa53ab592c56096710302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307c1d45c1562358a8fe88a5eebd4a9717dbdef5fb22c4241220a5cefde8de5376dd1ebf449af0b6bf5240ebc43798d8af023022f18b22d0c5f15323154a6f9166bddaa4a176cf14b52053a8fa6360194eddc9ee5ae5517c65ed82e23e9383116c72af0302047c435bb500673065023052cc70e7b17890e7487ce506e60e338e781697e0427fbf71b0bad3f31800806e583ad97468bae7ea7ef6880fde77f42f023100b3207795b3152c626217aea43cd1aa63d025447cebf3ac67bea9fed63a57d4e708ea2dcae0f37100b35a35df7f72a4f60302047c435bb50068306602310083d98e6d0d838d3be5bd16254ac2bbfb583e109da287cc46bc418dc332b5f52e305d597b1b6525a235b9debcb9e37fb20231008934b5f01a8f48d31703e1c6e1e849ea1407e78a306e31c6b916c378f67a161445249b19a769ad94f165745a4b0aaf2a0302047c435bb500663064023007104a005b25ee334d45e5e852da86a9ef06a7017fab410675a5e8691406d59a4543f3b979486625d301fbd0568a416102301bb6ca46e188e58e480ed01992c023cfbdad8313314b4398fa13e2ea866f134d52d35fd3f6f7e91aaaa9c22e47cc361e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009d0867ec595268bac8835776946cbea42491d47d191ea501f66386949c94188446c13e3b538cd3ce6026176b8ac5697f023015de74c8496829d6aaba3285ba2064cfdb03624d7807b1796da914a2ee5ddb72ca167e16e06faab5a110ca28206f11f70302047c435bb5006830660231009e79440ec3a0489dcf3ab4b4eec4591286cd3e0785073da32095ca49fdec4b37b33d9d4d234bf9b0b3349c69db184632023100db25a54c484c304d39932ac60bc04001dd7b637f9187dbb657753509bbf9ddde359753141d3174d5576b140f7b91d7fa0302047c435bb500673065023100fd264b17d6e44fa429cd069440a7807441aa46d071fc5f79f98f12dcb8cb5026568c791582ee587f49736694a2c9c845023026a090a4f4b6a1d3f29af51bf732c59e5349676bd44f730c3c0f8d3034842e9ded3225382df4fdfd096f0539c7ec3cec0302047c435bb50067306502302cf05005544ec45f85604c7e82710ff3aebf539ec90c22615127aa45aebc1af1bea7a6a4484811aa64e7c2d11cceee4c023100c09d72dc53f8232eae38e91c0a552760d343c1b087d8f50c9641364da7eae4d39edef8031ce82f1de624c28495af045f0302047c435bb500663064023060c5f6227c53fbc3dcd4ba9ec6333aebb80ea7f8a7c288775682a2bdfda0fe2d2525374eb44042614db0bf2a4364146702306c5e4fa09fcd61aca53041f409169853aa95377d62af481ea2544ff4a60349b57f74d3ab5929e71e2e1311adcb30c9040302047c435bb500673065023100869f6dbc9be7f961716eecb751006b75923da880b00c0ef6548073b2e22dc0593ab96045f29efa6402214be23c73f03302305970081d939ce4035c1514b85928ffaf3de85f3b2ea86043a5657b4c58f9d15119693a23ddb8dc71036df775d70d8f500302047c435bb50068306602310081b23cfd099eb3f92d3612c27da5dbcf1255836ee3b5157f1efce1b63b6544e3de4dd5abdeadf6784f88bbd00b4a4815023100a0e86f2507b21d402170a2aa0b217ae8479cb2a3765d27fcd2af3e6bb552220c45e898f08bafac3186c9d84f730cd5d90302047c435bb50067306502310098025b55ca4edacb70a4b3463e473849b2928287147be672b0abe9d8c17b623468466f8ebe22fd1dce3e406abd56065102307a624e16531e65aa228079bc747998a9152dfc0e6f95d7e93671f318c0ddc7380618df393ee3e77aa4a195de949044010302047c435bb500673065023100adc9099c81e3c27f9cb4aef68e4e5f6cbcaee00f1d0ce0534fd88e6e0f61926ec1ddb40d7f638969dd2382fa16a2160d023045f822290465a74fb8db2d03d09ce1f6c43fa63b1b962551baf23cc9fcf966638a50927b54d0486afb829d49596ce8eb0302047c435bb50067306502300b3912e0ca654650e25c9f4665e3589dbec0d15eff4dff775b4e2218e1d2cfb6d3e262e8b711354e19b1b217f93bd824023100a9f6ce01966fcab5c1a726079ae226b9ac3de2638ce82db586afa8929a82ba85660df9cc74b15080bb6da522cb4ea4580302047c435bb500673065023100cea2045e829cb54a8d0e2ba9497d443f7791e89e9ac5cb38df6facff8d9138936d07a3a3a5b908c0fe1a431ef008264d02307b52ed05ad1362d73e57bbeda3e6c378a0c797703d1e8b6990976c3600c828da2f5927fafd256f6e5b22c428dfab937d0302047c435bb500673065023100a65491f558d8be81c5658b49b78d3a85861cfd2d31d6f54370de4709fe8f4f41798fc109e67f9ad1934d5c30af93e941023079c955ff693cee4cb1cc61014f25d05c80fec76872b49eafbcce273a689baf9dbcf7a568eae4756671a570fffca7ec950302047c435bb50066306402305af4c81746453b898214ed954afb8c7420575d8261e55c4aeba62e181d6d21e010bacfb4db2106ae9b9c3f6ffdea1a05023043475fabac2bae1e93bae991c9aa4cd126e891bbdf72b7c5f8cdcbbbb46f14ea3eca6eee97ce095f913dc6bdb731911c0302047c435bb500683066023100b9f344b6a92fc5961542e01d2e66f60e188bd03cc38c2bd85904c54e9e621a3952359fc927d6b4720c5dee384258d6cb023100c54393439b27cacd141a92219651da5f273b61483612561a2f56fe3557b939ebc83a2153ba544ee11f584da8180b46910302047c435bb500673065023072ffc7a0366dccf5f686e184cb38329ea306c7557d67ceffc70113f1e18099f4993901920745d4de0c6dc6b415d3da0b02310095ac2afe7f1462bc2571c2160c98e7724bb5631d228ed38f14d267ec3ebe1581177a3a577b12fb7d716b2467d4e0e17e0302047c435bb5006730650230391414a158220b673dbd59fcaedca4bbeec6f905ca0202cf12fffa46714d836e74e6c5a37bc7f5054bc70a30b64f4219023100fa812f29dfce7996b8ef4655d91698e1d82d259e2c0d94eaec2d0e716e65104e16dbdd695f630179c227fce1a5dd77ab0302047c435bb500673065023100c2cb530ffd14a7ed2bac759248502d0e8968e5233b79e6a1de4dd78737832fc49af2861f016c5a49709deee9c30f60b2023008f2584ca1f2fbed09ded1e47f573b88d3af7e355ab989ce1f2811dbd7c6b497edde3979ffa0644909a52d39ce8352970302047c435bb500673065023077b249d0d0fc9494832d39b090808603818434ec385b5b10c457057c7ca547fe384cc396a43fc2a65e2984fbc5fe4e1a023100dd704c414b47a46c53993f845b5d43461fded7771949ab429dd8162cc58de77712db27243475248584f18eae49248d010302047c435bb50066306402306551b644e3618f9b9032742194fe59468e5b24654e6fa0a7042eaf80ee880c17af034fa026cf43f8b7d3843df81712aa02305c7c2107554859bdad52464408eccc8e33884242637b10bdd0f3769703503a7d4ac0d320b03bc6e0e0b0cb9ad9715a5e0302047c435bb5006730650230092f355418ad6f255ccd05fea9a8c071b5318f8a8c66da3ecc2cc702bd859f938a368fec0dd74511a6fd3a5576c9be35023100eee7f4e2200b9b5eafe88ae75b141977cc488a083be5bfe1a006c5b5801fd6007cac8f9d1d11d8c9d8a4dcb85a41e20b0302047c435bb500673065023100aa73b2e88f6ae88f52b1e64fed960fb96c3dd708daefd7d0cedca4e690eab92cb5d28d1eaf15be4f3b0168c28324fe5b02301c8a548dfd2482812b936a9d86cf70b07bfa3f630d2fbd608f8dbe195b3e7417a03f3e2ce3bacdca6c9d50cdfb6fcb520302047c435bb50066306402302bbe35e927becc81e1b3007992b53a1fefb01e68669fa0c0b80d8bfc9ce7dbb063064afeb3fcb188303950c58a352fe502304fdd72c81efe0e7f36b00d9f7920decddda68ebd00f48aa7620255db15e480cf2ae6a3006424f7bdb4293e1e6356071c0302047c435bb5006730650231009e7d16d60fcc1f380da2a3f3dc48762f19429668fe710c66225dad90baf6dbb94a1c5d9a0571c34f2b091eb09d757949023065a6c9d5e41935b6e76a30ec49bbba4d4a784d795ad9a917ca8eb9b1b8c7e15b710097357f6f953c6ee80671bb821acb0302047c435bb50067306502302b852c5f147190df524b080cc737cffcd13d1b9a3f86e2b4cae32862b2634939120a674126b152304d67b8683f3f7c3f023100c291acaa0bc721dc9b1c2a99ad7c0d3e14e2662c6c5f52ad604427de54b18b8fb1754247b27d191a0a58dde610caf1030302047c435bb50066306402303b94e9bc7c44d3aae4755ff075cad3d73ae965ce6d9dbe2df2e84aef86afd806502be00a100e53df3576792c300b7eb80230288677f2b0825443169683d8d5a91a5227fc5d58a94860f70504701caee862d5e496cb86a166823434dd8956c7ba63400302047c435bb500683066023100e32bb679dc9d67546b661a07d6799d15fafc44ec6cfad2d873ed94d6b3e4747f1d1b02eb94be8c488f13689bcda35fa10231008230862c981e611b4bc162a29c6b26ba65aa3af9ce427718726af9cf1e16ac9da59672399715b04153869cc0d1e2edd00302047c435bb50066306402300a4b0c6968a9c8f6f85449856b889763cfc2ac6098f3e3fd07bc4f8d74aee30114a903ff3a052c7a68bd519d25a63e760230581be179f05815ebc8376a4044cbfc1f76ec8631e690ab2754d5d081e7f6daee46ebdfbd1438d09111a4c5fc4144e9ae0302047c435bb50066306402301c4ea9bb92cf0182b9bee8ebb870f81f3f2d545f2b4cbb33a299e1a57e99ad0b8bb66f8d50fce2e7559ddfcb8d6fdec602302bce4e7dfba35979141afcde45a5f591044a2260c3bba2526ac23a735c47ae76f882aeed99b4285e28f5fa9b8783e1ee0302047c435bb500673065023029382bec2e90f72bb2830a0a6490f116307ad365bedd750c9ab3ab34df940608838f6798388c96206a38b09b1b2401f4023100a3b887a514a728fed2d26022c29d603a2ccff9ebdee6f44fbac9c3cc2d9a2e718e56696808743d52f93ba0994b39bdf50302047c435bb500683066023100b5ce25fcf605710f2efaf5dd3bcef3adeefb4e0efc936d72105b8d7fe6f72e881e0073d46e6f72ac8970be4c1193643d023100b416d2f924991e5cf371251f41bc83a0747706188d38d799538f741045484b1182383e3f039ee2b5a6736b8a46d413560302047c435bb500683066023100bd1e00eff34b75af7fd74218f1bbc7601739f145d8344d036544dc9bfe3d870caa96659e7a857f700cb5f289608d907f023100c23b7f2390353711e9e5adf821d1c0add38bd2ee1c65613b2a2eaeb61006930c8d0aa0ca8230ceb272e3ce6d244145060302047c435bb50068306602310082c616a0271d7b33293d2384405124adccfb3ad554972543467e16eabd0efc2b8a18fb450676b9c7011eba8e898c9dee023100b0eb7311796f5252650e9579b5e0383f99f855390fa665a8f409bda2d7bffb45483a5427b2a747d904632d4edb625e1f0302047c435bb500673065023009a3231cd80b90d3ce4a7263dfa8fa597850945a9e402e5d666433ea9d9884fa9820281e2d4771c2e5a1692503b0a52a023100cea14a105feb33c067e26069b59b4cc3c810af0567c6da32544c5dd596698239e1d72d2fb20802dc496da2998cfa77db0302047c435bb500673065023079361aca01ff2295a7ca87e537b65ba793fbb57623ecd6ee1e07856d4a9e7a7a8b478d84ffee889a75d74f01c62c2c1d023100f800ac38b0c9a35b73be961b55da4d0463c81b86b4657eb9ec5e2b76868231a105baf52660f92c52ad073015022102f80302047c435bb50067306502303dc1d8a8d83d2650646bd7b4faeccd418414990cd2c25e34647e9f323adb69d68c1e430b491b6dfe051f5ef01fd723760231009b406f9b8e5f59fdbd6130d9d8d148fb609a84242c1ebda86ed0ea66118c188e50042cfc2e657b7583f787207999df8f0302047c435bb500683066023100ca06274c8608712778912848272a4881cf819a143bb95e52e5295d75315266bf9ccddd187395be6858c7027f52b6fee7023100cdd2c9263ec515e8a1ee04d49f0ce5f6d98ff63f32893277aa7dec153e002457fa7b1770e25ef9ea39d91296dbd731370302047c435bb50066306402305f30add8221fc87cda745cbdc9bfe12830a500d78012280d346bf6e8e95a3f9fa93925a0d9a5615024055ee3872803f602302b437c596dd0aab5974bb2268dd4327b50b0d0a83acf0b737aa54454c5921b9a403db5ecaf5cca372d74a53ade269ab80302047c435bb500673065023100a43ad5cd21a3fd98b2ef25f811ed2d90a82b82b9112c887d55626839ed5b7b507b02668cfbecef49a63d6bd97d54e07b023000d612645d09a5d8eb3bd7431dae9a0ec9534b261ccf2f8f7be5329cc53b34490d401dcb94639bc454fb6202ccc61fc20302047c435bb500683066023100ab5d6fa2eb5dcebad50da0ab4dac7870f2b582a545a1b28040ee55319af555118a9f4cca8fa012cf21684c97f0e3062f023100ea54f5d5b7e4bff1bb3564a08cee09986036f6d4afe507a9152eec6fa3eefbb507b423bf8803a5ec33a8fa0fb4a26e1b0302047c435bb500683066023100b68647d2de160fa01e3f601cf83a677feb17a1719f635a3056af52da00412c2387c6605400195fe68954a3e09f0958e1023100ad36de3a5d29dfb9d37387e0b70c6f59ccc95021dc1f144c5d2554cc2346113b4625b720d7c5a6e386ec2e4681ba530a0302047c435bb500663064023065c299062eb9a92b8fb3aeb2b3cce670335b47b9342ec413b353cec6879add31ac238e50e081b5532bcecd0c20cee75c02305202abd20f094e5e8f4e613d9517160551bd71d03fed90168b3c12c11a02d839762c5984d303b15aa2240b3e85d75bb40302047c435bb500663064023031587a716fb046f0744ffbd12049a1e7b3bb3bf4929ef87ecda1d7b01305b1d1a6b4fc44b440193b193f8978c08885c70230691f252e5262c53c38619e9787e681f7d97abf32fe0c96d4568df09060f547800de639856c6e8bdef995f44cd702aaa30302047c435bb500673065023072effd5ebcd9c156b80d7f4014e9929365b72d0b62a1609c2103e320432b17d0ea8cfa422225d62150568bba48744d3b02310081fb75d1029ecb2353a1dd7c0d9e7f3eb89cb4a786436337fac2eaac29b99ad1628810c23e2ee7b1c198a8a4143ecd5b0302047c435bb500683066023100ec32d7412aa9719d077096d49e9ca8eccc277e5ee3a3b8051f52d94d8755e28cb448828f539f1e26d5cb854a01db38f50231008e99bbe3ed1864e65ad214872ee6bf09f682cb0c211734784922d22a60190ae11e22aa987cfd759ef42a433764abe26a0302047c435bb500663064023028068af33010e962691b36c3a5b4b9114964bec757efd8d2943b7e02b9d40c2cba307b4a69c00ea4bfdb8ae10535785602304a678f762a174c192dabd8e7afbf15b44029bb6573fb3fd41ceb442102a46da621374cae05cc8afa3b9989b68a41675f0302047c435bb500673065023100a77d37646a4f5ef9c42c0cea44684efaf9227c32096927779138e50fcd546bd085e07736b9a6f68fdcb2dd9c4e1ea4ca02307ccae6076179fb1d02cf05d00630f2f37c3111d1cbf25c0110ce00ceb02e75af0a67c233fb1c9b3ae458560593dbbfa50302047c435bb500673065023100e710d362625122b3eed4ef4d7dcf7216f1132623c40098fea82558f04de273f978d28fff03f6648e4f74b8839c18522102300134ce8b77fb59afb5a21b513e541cc883986f2bc3fe1033ed461f87979277564e376d112fe0e93f161f6851361c8cb50302047c435bb50066306402303e623edf72ec7446054eb6579b4885856f8b2c3f2b4a2680442fc59b0d8e9574a78b5568f418290e382b448fdf032d7502304445307b02afc1930e0d5f3f265f405839baac24f4ba1214f17398df665cacae14fe00a6df9091b07c2e4a0109dfb6640302047c435bb500673065023100cb2409ebbe6cda56ba582fca5f6f422bf9d204a9a86e4a20098f6be43d7ee4a72f051297df3c1aba3144409e74a38eb202301fd75e5d0e0a91266e87fbaa33d5c622b181b4662bf0f6b75c38d0c6da0a0f46cbc51b2c45914ca1b15b69421e7bc9d50302047c435bb500663064023074fdfae10b286ac8b94e529f760f582bfc72594b34c623c3b896262d3c6e774635af5995ffa0655ce64e6ae396884c8d023019cd6eeeff761061ed4dc5eccbe8c08e39a70f88f11dd97dfa8354e518d78d04e684c6412e021ded6a1259e9f80b70880302047c435bb500673065023006b27c44055275e3f043aef5d624f4fd2bea45e99d082a40364c89f26a0f05a3b29c4b4311836b440d17c4270496dc8b023100941f5527a379084210d20fe22d7986e19e261a36d8fff577f14122e1629145c3f9d075348cf9af041bd9fe7aa96ed91a0302047c435bb500683066023100d1c3f755464a9f638dc5d83ed229e30f9b514c10150f8e82fa90f75408137545a3c2d4d25bb8b0abc91b20ca64e741ed0231008984721140a6f56e7bfef473a53b0d724708fa08866de1d25f2a66714d68dcc66ff4f9545926e01a4cf1877e07549c6f0302047c435bb50067306502306a016bad6f50039e98e8bd8b081496fb02866da42493ad946ab6d35282d3f8b002122bdf80f5adfb2d407d4f9df4a442023100a24a08e0b1c2ba9982bac6f701dbf6d40924e3d30170a45dbd885fdbe8c82d712a157819b9ecc68857c0cb18cadf0dee0302047c435bb500673065023100d3a131c00820b6c2e8dfe1ac39bfb218ca93e4180d0fd00bea2e22f779e32f2d583c0833cec9022bab3ad7bb1cfd36d002305128d7c5aeff39a398abf7d05b6ab587211594f4f60ff7e52c49ad1b4c6dc68a7277153272fda1b62a9397adc44728020302047c435bb50066306402301840dfb7697da50528515425001adf840f9772d3d3f27e30796fce7186379d9ba4e62f0d164d765e665391b3b794988d0230347739aea8a3b4db71b287992d2f7167977242842ccad0a419a79235758e93b6174efdce69af1be577164948711584120302047c435bb500673065023100ea021749887d6c3fd705dc81b3361fea224a165e894afc96ef4c4c5a9617175f7db0fd51b2f36b63944288560ceb7bdb0230070e86c7dd027eb70507b1edba61fc5d7587ea6effbfa4c9666da13a6242ec5705ba91d9cafbfa611bf1772663ee402d0302047c435bb500673065023100b618d79f1eb1a9b0a5e3e94bdb30d1488fb40eb570b99b9f448c0122dc18ad1c427830c93d75bea60b22c7cbbc9f7eb402305fd659ea8af81b6334dc365c6cc6491ff95d2cd6dd25db20bccaaa18c94616873d3f095152f8f19166da4e4e9690ad3d0302047c435bb5006730650231008d406e5866adf9683855591429863056268e72f8a699e8e608f62c22d3f16208d30a0e2cb2d367deaa52a617b954976502305658a1dd542844280fab9f0cff97465b20cc35c33b18ef8cc12de0b09def5895750205227c27cf03f71a1bea017813f60302047c435bb5006630640230178a1894617d28db82d0946527678ceb3b851c6a2e7dd772682e740d87dc8311a25adcdad05f7f8b7b823d267f870dfc0230166630179b17a86f11c4816e524387be98f5b6bf37c5b5c614b4124a2135006cc7155e9c80aaae76edc046b42ca846760302047c435bb500673065023056d9cbbb276924bfc756a4040c6e1104ea50e4ec918a3f8229d1aef3e3a47815c0e3befc6ea0423b51ab4d16aae18216023100eb1d961e41b53e17436d58d17359c5a45d9d71b68b6213d2164f423af2fc7cfb365395f8f4b5b0879ccf7bd2dae460ec0302047c435bb500673065023100a1431e4669bd4e2fc2233fc5e4381e02711f523a4338cc63cfd656d67a00e4586ea15b75c8d77eb6d39720aa1cd89c5f02304572051a8a65d2afeaa7993f9037e47f3202118b5e64191d617c7e60e5ca3ae0fc3f73d2c58875b666a6e289f55624460302047c435bb500683066023100fb0fd3ecc9844567595e83066c6ed187995c623e1bfad3aab959cc436a6401f2056acfa3830fef56c527d6fd475679b9023100ad590127ec845860d6519f5a0b1a9c88a0f75d650b278926a34f0c4c9bdc9ce1e68e2d2094393e1b4efbe1cd001e0b8c0302047c435bb500673065023100bfba9c4b8bac0c39f6f0d6d661a2eda640458ffd7fa22a99292f8e8418cea2dad1d34baaa646d9b65807e838c6a0b5ae023062076547b76cb28f83137c5c31c4500869afa9d0ebe205ffb181760027758943624e6bdf0ee89a100c4eb9c7df43ae270302047c435bb500683066023100f3609224a1937ee7cdfc0ff1fd04e7767701ef3a7d46d7996ef1f3f37d6dd97b1c30040ae035f1378cbc8d085574ea16023100b61c44aaa97490c7b3adc5b6e547d70ac4ad82d68696ed471225a0a7d119a270dfeb6cc6bb7ff8a62043b04be5bad6a00302047c435bb50066306402306e539d7f6243c44f1ed18845e40ac18ddba9637250c7802ba2a40643ef28e7a2df3fdbbfec472ed4d2653656b085ce7402302c3aef164432604214acea45f04e50df7e02618f421ca44ed157ba16ecdf60ac73b9a7b33d5a4db15ac97c3b2638270d0302047c435bb500673065023031f4b9a715404ac135fe77333da8c7555adac2b609ee869f9bf70861ac31a3440de7d75aad8a54615b4be6a2932c0464023100bf4ab9fd0648ea1032132c12660d934b0391982120e34e66fa0c5f2cc36c4355740ad1a478c390fc4bacae4e9565e9750302047c435bb5006730650230081ed3530121b6fb794aef7d0443399874a22ab0946efda985ce8b8cc0a131877596111e2eb69a57121cac4f1993c2ef023100adbb5719aeb4e4b4d58801d43e1775f1fab47ed3d24d5182cc51a2b92d7b0c0d6e37ead0b5a0ea63cce631a27553e0a90302047c435bb500673065023100e0537a0715991154538215c5f4731780fcfc82b2b8bce452acb2a9d3ef424b24cd0ee12780d03b46716c19dc3c5edc70023006424e92f84e0a464497cc7254ae12ea26adc36c1e2062eade8fa435fa261a7cddc4b2533f530709304cd0ead70d7ffe0302047c435bb500673065023062f247fd0c6aaa22c7b88f3232b6863a462f05586009b9567ed674065e0997d2f0ebbfa49a15bb95528d7365d5174caf023100ae4e69452774be38d12ef8e8a86052bfdf9dc8cdc055a9bce868824a51c303a64cfe517fc420e2758c17e2fafbbe182a0302047c435bb50066306402300d925bfda3dcded0181f654082be728e76b99c3118e439ec0d3314825cc2183467e70afb6bbb2e6cba949624d06c786b02305677251042c8d37fdcdde4240aa8fa6031d1363eb53b68bf8c1d268a23161541948fef2842000915e6d5943d153b62b90302047c435bb5006630640230039db0611ccf860932016ce5145f2d72c48a190b605fd12f733cf8f058a8f607d51a6e24a93bf160f39e7e60d543ad2a023050a1b65661e7e8c3e0ddc8ff1d985b7305b36f178319c3e257e59440251e517d11186492057fbeb01f700e578d481d8b0302047c435bb500673065023054fa784bb0c7f4825e8006af34423020059b0ebdc162f06bcdca3b9b843a833e7e8c7227f4a08b0a7cdf0bc947e1af7f023100d51912f0a1156e2cbb2864867633c9c04fb40b84ecfe4c15a0976fe6b0aec357a58e8a38c7b4f7e74d072f0786de9eb10302047c435bb50067306502304300a28b4ac48e2a875872788d49cf38c24184a9a25d99d470582ded1e934ec5738451161b5649ef8e82151279c9d12802310096953bfa2c3ea08356cea91dcfe2dcfa9bda17f8eae491a8eaf4aac12ca7da3972368e9c97c96275a218266f8d2eb7e80302047c435bb500683066023100d02568b8cd868329546590b5ea1d56a4faf3cad33c0f136d32cba55b3dec60d96dfe718b3fc24e2469cd4407e48b8c090231009f26e4507489d5343d0b78cb04d7a0734f0efab61b4fa115848d4a5d34920b99b902b91638aa511eb2ecad369b0ef9a80302047c435bb500683066023100e6726139bb52c582761e43158c039023232a7ef5cbda92b375e9e071271a92fbab4e90fc246f07c31299bb8c3390088e0231009516fba43f6d36179437ae889e5b789f5be4f49c872c13f885e4852e865fe19a2bde54a693331e7b0d70e2550b38df5a0302047c435bb500683066023100a107f4d201f621ad336b6c06ee693114ea03ccebb0bdb9e73d2faa7367e223db11c2c922335be283e8e42aea16e6be35023100a8c1adab57bd12d4213fc655bfcd66e909ff4876ae60ad9f2c601873c91aa026af3dbccbd2189d36dfc7f48d17b228300302047c435bb500663064023049150dde7ccac269ce148319966eb3dc9dc18feb130b4960c8c6f21a905adc7846f591708ff404eaa00b5d4b58d48ea702304f10a315bbb3582c95994fcb8b810a65b1a027c118ea007f118f7d220552a4d2e5019a71756046dd6bcdf70d378c50980302047c435bb500673065023100b3b94f3355b60debf10a8f10ebb64f4f730a6ed772b2d03df9d0010e25908b70b626ac7bb54c738f42d8306a5c6fa941023028295de06500f90058a6a79eac1a5a11b8531349c2d232d3779d0f8f07ba0f8396e9add3f1131c4edd97367aea4295db0302047c435bb500683066023100eac78b3c26b907814e3a72cd9cf9ad2bd8f5e115f46e5aa8429a8b5a8e30b9040d3fcb7338bc35f9fe0ae416e673a16b023100f365e61e8ecd394e75b10a1c1e429583f11ceb601e9abd25541b26c9ae5aeed5569203278e19ef3e94bc6a0cdc972cc50302047c435bb5006630640230294c398b8e4474950272cdc6997f74e1986fc14c367799a292a13356341f8b8f30cf2d59b599c09c0fe257567193e65102307187c884e3892a0b0ec2274a1fdbcc0f840bfd437f86e9c573f1481e4f33cf565306f274b0cdb5a7f7eb364873fbc9d80302047c435bb500673065023100eb375a41cd07a27c918a85d93828736fb9219a5e4180e687c4ecd58bcb44cf20874e2c2b0a4d865d1c2d9e9ee7e3124d023034c49c70d510407957fb03a071081877d049629008205afb662a50a628ba485f307ba7f8e997b0e5d7f3fc2215b20b410302047c435bb500673065023100864a798146eb1de917e45277341938e6ab73a91fd34564471671710e1f1c92227840c7c126d72804a48d8f64a94f972302304bb2bdb7096b393b1d66b0b6ae3cdb19710524a25203fbe14f7d2302a85850e2426027975af7e71bf3157c74a5947fa50302047c435bb500663064023004a5172684d0a6590a5e1ffe224b839d4102a46fd99aceb9f3317765b5019c954938c157ef831d416ed5d5f210bf29ec02304fca7776961ddb72e3620cf0e3583473386a5b5e51e0806c25a2d2240ad78be44473100c2347241bae3ae6916f70a1a50302047c435bb500683066023100fae42cb708f971f63a05d0526b4690823e318291ac410a949a3245373b0d82ec3a7e3dcb66e6dd598619f0a77541de2202310087f0995b2b4f9af723619155c11484379ec412cace5af9c3730a5d237ab4d2e99953fba59e867c3c532e3b49142a50290302047c435bb500683066023100eb43457e154f7b6bb1eb55612ec12d53178cb2cae5fd95d2bd39ffacf3479ff53d5769013f1aebbbf7b35b2622890f1d023100df310cc95502001e916fd88c2b35022f8da7b4df6285b14eda52785430d967ca86a6a15c08a336f7093baee4e8f993960302047c435bb500673065023100cfaa7156933cd30f4ad727d7a7b062c1a01d3aa813b4e346052fa3a5f2c0ae67a9381ff41a1fce4c1fc6c17d5b352e6a023032b9b66e0df093973745476913010d0a3f124fa3eda2bab1a17eacf39d0cd40e378dacdea0e05698fe6496c35cb1847c0302047c435bb500673065023100fdbebaffa09c05af3277b3678ab981144ca26806c69b5b3a0d4b132acc6b71c4f210bcb960e74a37b8f7596a473aad7802306e7af37e75eca9a09582b6822a1f0f55c4aaa045a79a823510c3119af2e3d732d11b2dca429c37ea81d6f2e7b2920cdf0302047c435bb5006730650231009da0b9d4888d588988bdba597b2659c9fbde20db82078b28f758574ac919a89e960871282af8ad132d5313fd331312f10230253ce2a48a4ff96e5cf6550296aa33b37b15deae1c2d6dc1b92eb09d098fc1f79a79c4171071ab8506d8ffc33dc2d35f0302047c435bb500683066023100ded77861b5e13cd3758f9735edf9e181db7361e3f98997ce59a0a6b021d0fa039bb25a410b839b686ed9c4f8e56a8a8d023100e522a4326632e0d163e3988ab08fa9a5accde28b63e5015bbfb710c180b11f3d6caefc1147ebd1697cf709bedb8490300302047c435bb500673065023100efa0f04b500f9c66289586557384a7b48d6b281c090b6b0c394280be7024ee78f098eeb2318dc17faa6a0ea8f645834f023028ed79c8d5eda90505c9f6211b24e2d7fdcaa7acb6c25e9687eb226335e3ec409d09507ec876a56950d2b20b8337384b0302047c435bb500663064023067b850dc83a38f2d26dd280d7742670cec113e38e1933797bffcd672099b6cb1ab9519bcc93a84feb3bbdf4436dd784202304d387e88984faa37533bb94779f53b671b9d805f9b8900a956cc2e04a77c28c7f6aa7e0c13aa8eeaece35e7f7f5dc9210302047c435bb500673065023100f350de7750102ab0577de1577de1793c387f36c0488b0e6e87dd119b326c82253570b457e21cd1788b1da0b734643e8702301e6c0abb8495ac01966e26aebb152478e8bf1543535409f39f93389a2e15cafa025a44af7a20d9c0ccad3c685e9c67f60302047c435bb50066306402304bc5bebf954189fff60f5cfbe912afdd42beae1cab97cf5307c1ae3aac704e4e105cc9732737ab01af3b97548c650e7b023042af28a254638a6fe1aa669ad8a51fe7008e574db891c059e6f15929f2fd6315b6687a083ec34b1e33f01626e58b85a60302047c435bb500683066023100a916c525e4aea3711d13d245b994d620390767ae0d1570a0984977cd31421e6a4d2b374fcbe265fe56ba33adb4f67918023100d6116933e96fe76681ffffeda8ac0d4eed874f4b26599620827449468902c91b9c0291b1f31a0b8d554b8232ee5785800302047c435bb500683066023100cb16ffd9d13f6d31d1711cc4d3bdc81998be9d714010951d480bd483f9f6aee530f71aa24880f5994ff67e93a72363b1023100b2d396b3af3cf9172058042fa8f8bb4225f0d55c787fc33335be8e16343e083acba1905b824561c7b88c48c1a376fe700302047c435bb50067306502310094e281474403a95a543c292a5f542bdcfb3db57857abadec4546b9c179feb1956c68fd798b66625276089050d1f22a54023037c4a285f77ef490d268d9c34dc044318814a002b2c30cc940c77115dbd17aa6ceaa89a4ae144f641220768b6283f9040302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b2ae75201ff24e57a3a14bdee4288260d62130e0e7f818a4109d9e8b449f6a7868efa4e8bd0c238ce69fd05ba3febd86023100fd2466e011cff573be632b9f3d781ccb21da9fb8d277475fe211738b91ad452ffe64de7e0e0006082c40c0df362a6e590302047c435bb5006730650230483a010c980b8fb43ddbd98c6f9e7a73710d6068f3f46421dbc1130445884980919beed3ec53c0231ad0c2c1495bbdd5023100d4b5ff0bf72862054e450ea09f838aab632615cd87f913ac3d16590ce3e6ae31e5d08b1a0488172f3b4881694ecbbd680302047c435bb5006630640230390db6b42c204b84131958b8633b36a01fc6c3373859dfaa6dd5e82cb9c0890975ed9cfdc206d8591c536480f21fa64a0230245f5378276d19d1d315a902b98d724a35f92a86f0e353fda21284340e7eabf34bd898620a7ba7563fbd335d3293455f0302047c435bb500663064023031a40c6958ae66bda972285ead302c6afa756ff9c105c8b52c3bf32a7b7180e184379f779812d61788e0a7146e49e21802300e2eac6a81ca7f751f52df4cd83cce2214172dd10bb34f3249f32cb898bd10da1a5337d127d86f84f8909e7a6e6e2bde0302047c435bb5006730650231009033d165c5440a590dc1d883a5adfef2df9f2ddbea3b2a13459c1ec3cf1d7ff9f4bd3c39ee8dd6d3a5cc67231bbc8c7602303ccd011cbea2a911957238c715e396a818f654ac491224b698e62ef26992e8a478a7dc1f9056998020dbd21c9967b13c0302047c435bb50067306502310085472950e404d276314ebc77e40a88fa206bab0b4f4cd4f4293c7075df705dda2ae26a825db5c7b7ee1dd774ba1d947402305d124ca5618b8f801ebb1d2505edba39c680a6038d99c3af2974f2443c5cce82652b53885df7de0f5d5f9c36430c9cd70302047c435bb500683066023100add883ea62a37224a2fad64fca4746b41955e4ab62a8bc6ab93874f1ee031909aab923130c7f0d15cb383bedd0d6bd17023100fcd1efbe635fe2e95feddb61e3bc440e97c42acfc3272d3a9298e3a01072de9add596fb66a6008dd2c69b2061471420d0302047c435bb500683066023100a674c90b4a41189ee0dfdbe8d8a084f88bea5ca1f358081e1207a4204f40b483050eb88f43c5b065f3784304a0e4e22d023100cd4e50e9c0454886ca5d89863d86b7f1669a41ebe3261829afba6ea957b74460e8926095cc78802efe2b8d219c13ef9a0302047c435bb500683066023100d9dc1a06dcc5b7f16fd78d96439287ca835aea5563788b1afeba423fded02e8b5b213ed7af1712fc0de6db3999512070023100c469b805d8043a4c883745bd617bc00f6fbebd0d0e74262e0e854138e0aaad15e93ea52c5561d90e88e2f7bb33e6606f0302047c435bb500663064023038bf25ac33deb05b7971034586f76d37914f59f29d796e4326b14bd31837bc1b86e462141a0320468366be6af9bb895d02301ba00dc28dd84f9a6c4ae97d1995da986a390c1fe4f41a320a55ae46dcf6486425ef5f2a7580a62b34e95cdd569032ac0302047c435bb500673065023100bf88d59cdea77a49204ed2971ab839521d82b8519f53279dec359f9ddb100dac291ff3c404b6e4948307fd84aa4dd0af02300eb55dfc2f7afd7ac60a51dcb6a096d980f22a9a08465d9f4272ef7779c74eb074b5463b498c3af0cb56b3ee57fcc3a00302047c435bb500673065023100ce4f4728cb8191ce269bcd62844affdd150d61b3ae22bc1aa5d2e286c2be00adb6d8a2966abfed872fed34c8d574c39502300d43dfea19652ada4df3795da270730c5e9f158fe49c4b27dacc56b5c24212a25b48b48da75236c3897d94956f50986d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230056c909248800872daedf02fcc12f95feb8b0ba8fb7818bcd26cda9b70b1249819c6a86bc8b0c5805b509118f0a96d7e02307a02eb2e435047f7240f5ba57f8f494dbdef9626ecf59b136a1ef06f624c06a5b1d6277a59348ac9fdee6d02146242b20302047c435bb5006630640230302d903da2035054186b325fd1f4aee61f1e1806d0da7af3c10d2a3a1070c589c9065b2b691f1691c4175e7905f199e00230787e1259db4947d67d3e2b1b936f5c2ef573e78c1f2ef92b8fbb0e46a8e18fa36324682bb75aeccd04b272ae431de2930302047c435bb500683066023100fc08af8c424eaf3349eaae399d7da935537757f324c5a77da220b0104425ead7c26ddd44ffe9538c3dd70dfe732d29d9023100f1b896e21d1c1b0c08495bf8fb1c870a8aa12ea5a8bb529bb2ceb3ce9ebe601743a0c42f0fef9f3cba8edcb90f047aa20302047c435bb500673065023100eba353cf5cc7218f38de07ffc8e5032d2d647fd876a78354624c4f388a2db9fc740ff93ea648efe697a8fd6828959a17023072d94f8135f0fd492df759e181db320162e465c1f4c815d1046633dd7de1ba55dd9899e802ddd59c2c50c5381ac5fb0a0302047c435bb500673065023100faedf0a55dc20fddf1fcbf59ab241f100fd030a0bf3dc5b8eaaa8f32d63e4aa0235880f2c9fed7568ff22b611e510ca402306cf848ccb386ed573ab5cf1222f86e52d71f0de872f19ee9cc1bed43f29441df9593c026fbf7739519459a58c8063f6a0302047c435bb500683066023100ae1434b94f98da49d1c16a9923419c3bc7f86912bae8dc72d11026bda9ef0bb8e35a9ee22975bf75a43d197ee1564ff3023100e848d762ab394aa305353161d903b58a2b72c70d13ee07278f785dbf87832ee7e994f165d7a00b114d4d8ab447d571e20302047c435bb500683066023100fd2ed4a445cfbe243bc798772837af67fe7ea4412ae0bcc2bef6ea55728b49dbfff4fdb345d79431db1bf5537016df36023100a110c9cdb43a0e02227d04ae09266ade9864576ad4debe3e767f30b0dfb034c1038d161045db56f71eebd075bb2549f90302047c435bb50066306402304287f59a047809a1ff401ac5433a1c06cab1126a8cc94c09a754191295b1b264810f8a0a818941f3f208524da03e9d19023049e6bb9f067dd9f9d1a533c5e30ad6e35c31b22ebf16ac951bd32931dbf1b72fcf984821703fb16c3f6abb8e33054ac00302047c435bb500683066023100c07d2042afab6e875704525b3451a05226a611d1735811b41ab0af7b8b7b2ef877b7471c3feaff21fa6e06c78052b60a02310092827dedc1e7d38e9716f8fdc720dae7399853b8126fb4770352730cf05f87622a71f4949d4ecb68797d712784f6a1b00302047c435bb50067306502307abe021d3afe7a8ebb27d32fd38c2e5e7ab8f39557a8f6b2a3ff70a78379c176282f29c8a43b8d54e49629b19774f666023100ad1b0c2b657b739cc594d844369d2f92e02560a56933c1cef3fbae45aacd31e0e3602ca0f37190bfc9ba02fb5bce991a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301849455d93daba133f1f00c81627404d5667d60cd2ea4de721341a782ff62b85d8a8f8b39acb8422199ab765d0eb5997023071757ab37d5d8a0c030f9ca8a403801224a8cc0c4716fd44afd86177552ef68361a086f315f2f570c0da63caff689edb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100df1af3382518f20e2e4c186e9fba7094680f604bc44cc2653fa6e1a17f6f85e9d2cb6c05816f316169942b44f19e823f023100b4aaf04081bc74f04741d1098bd1c39cf0dced886030abf4b61369d42605117ba0e3e75b7986af521eb59ef11cbc3a3b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023068fb82dbe90a63b0eeaa807a76be930da101cdbebf78cfb7c94c747b9aaa26d9ad30e9c04fd9d6c3d191600d658df4f50230677666311edfb43654438f48c1ea9d27a5206b4fdb5ada86af6c090bc266fcaef5db72637a5f5aec2a0a65aa8c391b5f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e39d5ee0c45b41cc6c291400150db1777648b9df5d3187e9669220d400c467f7057309adf066f8e763c5ce528a6a63580230059264e8aec74e527221d21da847cf8cc145899b4bbd7a2c105fc572aabab79dd09431bd840a49d3e3624008ff8ffdcc0302047c435bb5006830660231009ccb26fe38050a1e7f21aeb19e33631dafe87a4f0234a73fb783c8cfcdc009e60842009beea616e4569739682b88dbb702310099edef2380d88a2a58beb47586df9862c3b3fd66e2e6352c2802dfbf9b4a7da31e4c0396c660cda8fcdb00aba7e017f50302047c435bb500683066023100e0ebc115e2237d6489dc242f8377580c8a21c5ee88753cb15c7f0029d8ca858140349cbe96403ec3776a0ba46edb51020231008763169aa5404608cca0a52d540d5c8ef036af9a9d2999e22b42263c3ad2182ddc4f9091927017d8fbbd241fb1ef88180302047c435bb50066306402305ee2c40d51f19ad75295976cceb337e9686a765ac323302780e18bf477cae6e8237e6915b9cd9dcab594b86b689fc9e702302d7591a29a0d00d0ce649a1ac6b9a60690877ce0407c7222deb918b4ca04fa167f303e86d9ce3728f74524b8a5b74f000302047c435bb500683066023100f849f02a6e0a3908d7fc5b80377447332707f9dbeced81dd893b1f216df151cfb5a3d18eb74cac26197e5d9b74e72284023100f29a15ae003cebf926976af18156025902a5e333e3dd7ac5a2fb53ae19f8bec78689519711110a2026592e20871f43300302047c435bb500673065023100a51d150dc8d0ccc0bcb992d9b0ece4831305a873dfa34194220e45f4e01f7a4a2f984501eeb01da841e98c67ec5915b8023000a5dab7071dc3cb96b016d0dfe83703dc22b6c951f22e40b7494f3e1d4b97921299e4d6ecb42c16c24a5f6dcfe022800302047c435bb500673065023100b7df2c8cfd6811fe753f965ad6ff7a9106f41fe978a2f57841b28fd52e7c4d8edbfc2850a66ab5fc0c615e7f7a5c0fc70230012b8e8cc6f53012361e600970790988565fe3cd77253e22d3f9c39f794a48a0856f93252b3132daaf4f0641b86ee3070302047c435bb5006730650230443ae71ef5376449f09ea99cd1a83e827cb864330a59199cd92cdd56a1311a0009d0d8c68607929f1817521f47053a81023100a7e34cde0eb876b98e221e5bd4abbb0cc62ca89a4f7aa6dd31db68c192e6ded9d222060fcb938c9ea33ff6fdeeb0cc1e0302047c435bb500683066023100ab6c300697e1ed0abac1a4af35bd99b36cc2dfcf35c3e0788bc006785dfabea0f7f9d2ed118286b6fc1992bca1f5564602310091a03f64daaba205505a32d56f5fdde1ad48739d82daffdcc3bdbb07d1fd35688a5796ac833cd240d736a3b35ff930280302047c435bb5006730650230313092a20c579c87e367fe0f9592a2677991458ce13fbec7abd7ccdfa47b7b98eeebf8492314797816a835bcbe21777402310091312b8ff763e65b6cdfe9896afa46928d60cb4873b2f0280a8a24c96b4a4e84f3846d3ec50d9bf808519e26ebab98ca0302047c435bb500683066023100e0cc2d401c33f822368530aa8a10fc19cd37322f3467afa1f7407efa93b34ff4de93cb48f02af662be57e2ecea914a00023100dba562657532c108e6b5a88d3c5c13b8aceae49fd5907af335f1fca9ae288d07e6f03e347aafe9ee2ec47f0dd2b58a100302047c435bb500683066023100a4625ba41626853805b54bc1ed2755e7233546e694e00b7487f45a377090bef837a01de599a2c8f886b2c7ecfd2ffb8a023100ff7118f6008f1cbe78e353869a5a299799855d4c013445f24f55a64b0243235d48f6bb9f215f84499457a7520f68ca320302047c435bb500683066023100aea64355863c7ca5f5ce149054b76215a5315eb0f3a9a139849f415ebf0ab93afeb11cc162b72b143f5d99e17e5e3282023100d7013f69de6eb54f86de7e3e58e9e043371e118e74c655f7bd44262259a54f5ded5c9660c8b49a8f865611bf8c0ae4070302047c435bb500673065023100d9fedeea5f8881a19a158d5b1769dc38de4507ea98f4013f306fffdb666f3520d0e923d28a4632063d2907ed529f822a02305aa235c33dcd6d8796b15715224d91b44623722ef333086e411c68635d44f16fac5de1a7e1404222db48ff49a2bb743a0302047c435bb500663064023035c18951a08d908ac481eec849045c2531a3125c6b73719f0cde365266ff7dbc5ac1536160d24b28a7e16138ec035b360230793bf8c96b27f23ed99987ef0ba6bcb4e4ca3fd88b700e9a235e8f28b05de0b5b2be3f679db39730a3c28256228961d80302047c435bb50066306402307a03f79991dce4643816b7d75c84f913d8683347a25ce27c411cfb73e02f16f5bdf3dede9b9725485d7375be141571c602303b4ffa67c97ea9955eae1dc82087b8a7658d01ffdb6bc7419bec6db407122b377c0fd4002c0b0f405c794fd0b74dff8e0302047c435bb5006830660231008a16b63b5655adf0bee7bb0db752cd8cd3635d950baf01237934db79cd0b2af83e727adf4c0c547b21e2581272c062df023100fd12457c289d7d1aa6b4eb58ff721d34cae261e14307b6c0e2317468bfe1f06395704604ea8f137a106eaf36e51e0de90302047c435bb500663064023038995c99b6a437cc29f6319ddaef241190218f551b10752d979e7d586b08a33a92592d85e2aff73f8eeee03e8fdd54af02306a1f35245f5225b3bd5f5157fdc7cf9bd4506ac7019e84d0d34045e3249bea809ff7296cad96141ba0d56173e84583240302047c435bb50066306402304de888b8855a22c9fe23af4b24d778a3628c876ab88914f400b4335c0b3a975221846d9b285e07c8ada1936dfd360b9b0230618a53649c92979f7ca4893ccaecb1e1f75a8a3fc96a14c6e6ec89e68d87a9a655f848e5094b936ba72c22eb4a323b330302047c435bb500683066023100a9bd2f4621bf578827d34af8588b589a8d789bdb2f3746c229828f42464c42cbe2cc192bf6b020f8fb735e19ed85154102310095248c6f6ca0362ce700f2b273467c77f0f52d2958fd7f41d6184e100ce04157c0f9dcc4b17320178d86b78e92112da50302047c435bb50066306402300bcc0c333382725b6d58474bb65b700aaefd7749af12b5d8398750cf9550050730f7d8ea8c28991af7a8749775a314380230283b42f6de93c05a383cfbe23c6b78c540290c742462a38e25420a1c70f1f45da017b04633c2e8f1bc5c2527fa80cfdd0302047c435bb500673065023100af223e433e03641163152299e5bde8aab104d454fde192b9dfca4610418385d6dd4511648c522e98bde9b047f8112b9502306f53161c65b4dc6b2c5040dcedd18c74baf7e745a28f4a633c505c2ee0f0f17daa5ded518b687742fae603bdd2ec87670302047c435bb500663064023040c60b18e40974599616f4cffcde09044ca9807dec6962c908a5d7bc96c3c38a516befb1b109e45e332f8bd031e1b1dd0230218d33c7543ed7d6cd516aab6d77ee35f08341f2f1f17333315234de1dc5117af4ae395d25e6e64b69b83cd3ed532fc30302047c435bb500683066023100a89e34b3e3ad47e04c10ff8cd433f52dede72049bf24f7bc8ee5dd0e14ce62a1c8ee1a7c89a80c54124a127d86aae000023100b3ef733985a8cb0806a9b4030924cd8ca0c5f7dfbebe36baaf393423215fd37ce5b549bff81eeb3227814b6f332c0e580302047c435bb500673065023100e01ab6b55e131703da3be9e32d7c4ce6e83a2881be6e941eef291d775cb7c46cd17f57a5b9968d4ab825c62d91dda7b902302d51fe6aaa8a6422f855ede47301228232a9277a500cad6d710eeaf86a45a0d88e382c1eb4d985ce44473f8b734fdd240302047c435bb500673065023100dac15c805214e2d6ca17c1a163e6788b4d01a09269622293a5ca887732e92a9ca52c8a0cc8823b2a4a865c4409292ded02304065f6c5889db20ef0b3c407559d7743892ee76eda4609a339464cb43a3bf0b53c6598ebccabe99e76e029454eb312350302047c435bb50066306402305d6cfaec9f28d058d40be43500eb5829e2ff4892dbd64e06e7d989646ab606a8762de86b73144f77f3ec0787434a59a4023066455e9003d6e4d8140ba64a1d7c87e798fbaee71c2f7c3f5d8f9524e8ee634e7c22aa812f6decaa79f3aeee0d01b7d00302047c435bb500673065023100a1514b06b405ff59a3a8976d15043bcaba4c9b31dd9b77b87b3e3ddcafaf808f7dfe4ed4e10d8964b6485b373149fe8a0230798646e589c07f41c3f0a675ead12ce92ac0d7587a2406609719336bb732291eb2c09583713f91aa300c4439628ab7aa0302047c435bb50066306402305326edb05b9163c827206249ee643ff2496c47156836493d03fc662e2a9cfba2f47d8733cd424f5bfb9bfbe5875d8cbe023056d18f48f5c45be984e7a0a8b129f96655bc93d223beedf7e1ec6bcb5c42914e71ee3c7f3ee7cd48141dbc69cd5284b50302047c435bb500663064023024069481614b6c0a5199609dc44f88390b350578c671fdd6f0dd751b82c25bb777e8fafe1a93f51431a0d36cadc1d6b902301405d80bdd21e65f50bcc4f3e3b42b613ef6de8268a107b9b3f6e2e20fc241b72d3e7b4a365444f6f01fe08149d5b5a50302047c435bb50068306602310080ed9c020dfcd26efb2bb503e61ed20d5e604eff9c1f63cdd0e7f37649c07ec6392b48d39314d5b4dc9194d5e2369cb5023100857fa8cac883f9b2b06660c6639b0267eb4adefb1dc73a456f7adfd13d4482e279348313c5ea033779e2eadb741c81db0302047c435bb500673065023100dda06389d60e08b8f09792796ff540094a719ed6c805d9c7858c2f078f231475f5460c8b04c605a1e3b0d5839d92e3ea0230048c33c6e617810881b8efc5ef6c92ca866b07cf21af83503568afa0b7a26458de02161c6ea0fce7d63762139a168d590302047c435bb50066306402302c3526fb66033868351a68137bbc2f8df30b0ac2db282f81719203b079662438ce11df76d595290003979f115f7f624c02303dc4f3bed5ccb99e04f477764005c9924c68fa58ef7f88994d3b0252a340c14fb78530bf3cadb4d306b2254ef0560b430302047c435bb500683066023100f6495fb2c7f3ab201590558ba24b456fc0bedc4adacf7726149a21bbc27ab478528e3968561e5a248fe3551b6664d263023100c787c9595835a50543483787f5e4cfac828812fa5474bf6ba8a1c50cc4baf24010bb282591434e62f8ad60741a4ad1fb0302047c435bb5006830660231009af0282f960b2b8cd40e293a1b16d123688482f6226741eaf7c514f2befd91d840ec7550271fac7e0da3cd3cd589be99023100a56d5c396a68ee3c2114c99cf737c559df90d5b444068ccbbf73b2a60b4246b32137cf4426407612a930714a1d0639a90302047c435bb500673065023100d51753a63ad041f340ef22998a3db31b0e384f70a850c34435079bcf3160a328e416d148cbac5ba14e0a008113b2dc42023008a8cfc2f877c2f699d16417f95f39dcc256a1c99adfbedfcc9ab20a2ece9d75d8182c0c163ee0542252ec40974d07aa0302047c435bb50066306402304ee9a2c91d62f431dbdc012d00b44e1d586dd0bf0219f1635b20ee352e191bd189aaad0214ff084abfe17d7a5dc0251b023056988aa2ac162633645670bf34290a28700a4607ab6d7495077c39938d75a910aa1a018c8b4cec6e349b8e0267b2882b0302047c435bb50067306502307e007ef9b5c80b6c6d27da2a6383d9045ae32329b97996a6c7499798e4e8e5b5aca635d68a4820de2a60c21c65517785023100d605bcc5477dcefc96f0016f47f45329602928b564e3caaa52a8fc8fc712410694781af1b32e3838c52dae9def6f2df40302047c435bb500683066023100b5fe29ea163dfa704a059b68d0e072397bb0030463dd2361d3298d98795057191a92ee1b4f795657efa179cf419103ef023100823c968d1c9c14286d178f5bf4d0a79cb422de864b86d062256cd0d839ca8d7b05549538292e49bae89a85e0e94c9a6a0302047c435bb500673065023100aa17761ae356afd179cbc3e5a180a1490b349fcbdfefd6bf24575312a46a85ea8b80bac7c37ee91f451f444047a6fdf302307848cb3c6e995c0676949df3c986bcb648e49d4c33366c821a6ce94f1254a586f6d858a14de35f888ccbdd502e7d78300302047c435bb500663064023041632b734aa575cba2065b19617de742f0a5ed9485974825d7a0c87b348d8e371667449c127d97e337a3e91412fd9cea023073d5c636a17f8116c91952a2fdf94d0127c23df0fb0ed2af249cd2d00e345b538fc017a7c1d7306f53d684ff0edb04bc0302047c435bb50066306402302c74a23ec5aa00538561cafac59780852d3323527f162fab365e8423d21e3e261d2edba4d27fee3f958aaa3459ba1dbc02302838cc169ed7f3dc3b267c4e8ef42ff388acd642aca68186469b53139eec74c95e3c46e48251f9be27bbcd24320188800302047c435bb500673065023100b8b3c042757d4fa35d2571903a1dbdbd8c9085d8e7f0e790935f40b0cf9144f6a5c5ef1388061601e84d1ea98d295c35023064cec6ab4f37c21a3a258a0bf2bdc062759ec8c2ee4f8b684d09a88958fc1221cf97a6933e6b095d623929358931f7b50302047c435bb500673065023100d65f0f4840b68288fa715b16bb3c9b63020d556407af0aa27a942a80ce90ec885a0a39e4c42bc1a8dfb29bcb7b4ee1d80230277e523f5bb3301975896dc2c07fe9998bed3a14a65595e1d0ab130b9f803a6bc88d25dd19cff7981aa239b96d94dd810302047c435bb500683066023100916c7e10e642e29cba0dc3f6981711604882df462e2307924a5a98ef4d57b6061cbed1936b9c3ba2bd64cba5360f5303023100e4400a1d60bfe023157dd55e71307354e098cb34b3db4be9955f4eb2f1cf6c57a53cff7515e2d266f7049fee889771b80302047c435bb5006830660231009342a8bf8236df6fe23a6202c7625806a6216531d8f77739471f0f0d434c21b797e32f512111e87d3e67b13caba08680023100aa47cb35a463a0ea7d049f8a91744d7672ea7ebe722bf525728a1d66dc22ca04cf5d881bc00bd54afe26b757aa65cbe70302047c435bb50067306502302ae5e7d5c6060b2149fa4a4640adbaf2c8bf3164e6c8e5ccbf54d946ded2cff86c9d40f2834df4adb569537cb1176f93023100de05de51fd130bae6ee3366bb0a291408548a19e32e79f41f84fb00bccbf09a3010a984764eb338707f0cf4867161c7c0302047c435bb5006730650231008e522dfaf2d9457ccdba185de4476fccc9a462fadebdbe159c8a61f7758985619b78334c6227d3ff027172396d6ed896023069e256495fbc7b0676aa627b826cc7d8b11f89cd549b9b587ef25443c605d3170af954f1569519cfd15821aee057a54d0302047c435bb500673065023100b1db8ff12f6bb812e60641db3515fa04e067ec7acf4bb3f2ed9d480a2aa87fdb92d80c33909692570fb2cb52a043700b023016a3a97071c66dd64e75dcac0507a11bba367ec2c239a6cba18b96cfb6c378a92c8a114505be98c3c62a93d0a20537460302047c435bb5006830660231009ddd227e57c4184eb7d111bcad5dceefee8b5cfed49b61089f42690475aa01c0b47179cfa84147022ad2ab7e7ce7e9a5023100a09b98ff72cf726bd282919c8bfbafa3c41aefc8321d54aff4a8e877084dec9d5602b98cc784457d29052e01f09c7f260302047c435bb500683066023100ebd6857a6fbcb2ef97f27bf709a79cc938402ef381c107bfdae153b4c58d65335939c579b42f47f2b4541167c237d9b4023100d64b8aa79bbcb1296ad0cb5df29e795a1f78d5ecd550f7b4d47220a3f2dfcc75e86ec7ead8969ef9d74429e96322e90a0302047c435bb50067306502304bac57f140ccd630334fce1f4f8e4cb58faa46ac8b3f2be46f25aa25237f76b08ffee1a3d0972d29f6e701911ed28823023100e80143edd4f7d06929b260e1fa79951a0d41de90f0751c9166456e2574b36d94c6489aca8824ad633a7db045e5cb8b4f0302047c435bb500673065023074de44a526c9e46d1a3dff22e128860eb4893bc461c05618fcd70a022fda802390f2aa035cb0619b3df69af164d881e7023100eb85ec229cc96722a594cd8deebdd2290c99155a4b75e8fe18f803d4bb063cb5397d466d383eed9c8078adf74e57702d0302047c435bb50066306402302e3624d84ffee774ed05965519174d152a2f95d7724b9262fc13776f6ca8d8ea04455891fda34ae651dd2b14e017566c023065c71a9d73d526d281ee9341c6a80a37b631aa6e7dfca4c126d31ea7b18dbce977ec301f9fc645586b3daf19a6d48d090302047c435bb500683066023100ea3841aad5dfab376fbcdb6f23f3bd6ac60ef285833ca6fbce3a81c8f0e28f9adce08717d1327dcd52981509f1b62f9b023100e8f9ab278242b951f538a22246dea80ff2e8bbccbf76ac07f719795c6e13ea79eab5a7f79bc9fb468fb621edfc1fc7e20302047c435bb50066306402306f441d12a62145202ba661051e2d7a0e3d482c7e8c96584590445d4624b0cfb9f9c6d01f0717e6f1cf338d6f17159745023027f7a09333173ef093dedbbe287ba92324ff036d79adb18e71de3c845775c752bccf5092bc972ae86d45169b92ab6f5c0302047c435bb500683066023100bcdde8f6508afb1f79ed30d9c93d07441b282ad7e7c31a75fd88d065bdeaca4500d731f06f96eae4bb7a7868e4536f94023100bcd67a36cc89fe269486fc1a92063a1532ca8edd3ffa55b32c033071451e0b0b7b59574638716c3f30eafbabb3f875ec0302047c435bb500683066023100fbe54fc1352265b6f9370bbe38361ebeb74f950212bdabd1f6518e9c6036a36e35ced3211c045a5a9f952ce05011acf7023100b344e10c1acf122b4a747a7dcc067d6c60793f3be69e9e1aa9d0ea4ed73c151c0b4021cc4bdf9155f03b50ca621ff10f0302047c435bb500673065023100ea7237e5c5bb8f04f64ce38d18467e34378e4798158cdbc9a2f6b0017e9a20c925faf0a3f90008fd44235a7ef9b21071023029320d485b2ffc02f86565d0aa5568bd94c3daec9f7750f044ff0a80ab70aaea3f4baa1dac50792e2aa49573d118c8110302047c435bb500673065023100cef5ca5d1cfb7012e398708556c50648491aea682b601f3bff801bc7871ea95f2c82574388cc5712c9f4ddf42da77b3e023000fd49362b1e18b994344210bea9777bfd38a3620d5e6700eaffc23893c6ee49bbf2ee202ff5a44f8d2524718b9b87360302047c435bb500673065023100a5596031a43d02cdf6a1ebeda21a8a2398fc755855f0d77fdb59bd985cddc083bd0b5e6aa668347af1748a3128d8943e02306a1c2c58b68fddc7c2d2995449257a13e7a66721b5e47a51d460488e958132226ffaab089afb34b46a2bea95c22af7dd0302047c435bb50066306402302797f86331d1628631697fe0a4d8a85c0831a2c2c3927ae8d72eed5c7894f705f56144258bb4241f002062b67145aec802306b96000dd124bdb758209fd387b57fa7cbeaa264bec021a101c28b7e7fc913df05c27afd21dadda3bc4a3da7bdc243930302047c435bb500673065023026873c5fd35de289a0e34a488fbc677e1a1ca3a79edca5060b8514ba1f45938fdffad33cf1dcb0fe06c16f8b413c61e50231008d4dcee34e3a6686b7dfbd3e031e4bcfc8bcf996e6e6d1a62851740c35c01b9a2d7039b18f70fff94c48e0b60d514eda0302047c435bb500673065023100a0d3511fe08c6169c97e8b869972aeb7c5cbfae5000b0d6a43dbfa579821eeb09f69f819bde4713114f4935324486eca02306c64dd79d399f5a6db22797a49d10478075a08d606e2de4a27f222decbf1aba28ee70d1fa3c8a46e98f81b7f6f766fe80302047c435bb500673065023100cf8e2c265d51bdfd96857a59977a403dca0b4e6a311217a4ac3bda0e17fed2ede6580a051fdf52820cc8807f22ff7de40230128b1c6d1d92c02a2be04c73c9e506ddf1f81dc7af484fa7f3f4cdb2d1b48e2ea2d6d84a7c05ddb8d2e88ccaef5534bf0302047c435bb500673065023100bbf5b1fe15f715e2290af0881cd86399ff094d39b2e0ee4a03874aa8d1e945543e38041d1532aa2d33221c1d991bf8ba02304d3ed078e1f3af5c0f33f05874f8778a67cfee4493397b644b720518c7652c65599b9e2dc6f5a060a284e684979ac5a30302047c435bb50067306502304ba744d3061f7f2d85441f7e4c6f2d0b34dd9a1e4943658e04026a56a7746988e942707d15397fc6c4a345a73bcc86cf023100bd26784b90ff3550ee4f91f51b4bc86e6be9922bb8f5abc306252b77f48a8bcd4d7ffc0cc10f3b7e5bdafce2d3d9fde50302047c435bb500673065023100a23e072a77e470b0fb1c7f5d3376dd9cc5fb12ec1fb5b4531372980b6a9405cb2dd430193104b53225d52096307b36de02305d227f0692bf1821f28eb781ffc84b3d472a61ba32dd0b4f6b765070ddc68f79f6a5b926210245862347e5142b29587c0302047c435bb50067306502305edd2326edb04af3d810520cc7bc2a185f168dc63a7a6efef1e74cd9f8abb950ac97dd898c2580ce52227ba28c387482023100f14fe6f5b135673efb70365046c6ec30e09deae99467858754c0a98542300b6658886a50df02659996f1b0fb2786eb9d0302047c435bb500663064023051801cd68d53e26e3760357bef05323ebeed8d4c4c537bc707656920158ff86e91e48875163607bc4a8132bed59dd9a70230660ed1cfe5ec2fd239f6ab51de23f67eaa8c85e8023cf298d8bda2592b11ba5956281598fc111fdbd3b31cd2208d7c270302047c435bb500673065023079be28de4414f1c169bceabf997a9080456cb478fc2d2b653c8018adfe44ce137e0e24b8c9d4133c77d4006980799c28023100f76aa236b1c0f55426a66682345add948045a11ab08179ae538e81cf6d366b3e9ad9d3574ec9295113e6118d6cf95fce0302047c435bb500683066023100ea8dc396344a93ebf940648823655d8407cfe78490cd4e77b79e08cc03c0ed0735d71008cc27ca7e1ce67a073aed7d050231009564c65efc9cf9101b8b2cd4a0db4550f637d90a91866259515610131d782258f72358e9b67d3cd340a604fe7b787e6a0302047c435bb500683066023100d5348858743dfd7252fed483a71a30cac416954ecf081b49207157745b06ddca0339ec34a3426cfde0e4ad9d599e2da2023100f1642c3f37ae81439fd0698505804795b441cf3bfd4726249dfa4d0f459ca6e2d5e8d2ab5819611bdf0f955fd3b626430302047c435bb500673065023052b0900d95b131c1729ac3c66231df278cb82d27516f025b4d21f74386cdc4e69bebb2b3283d4009fea6d8a77ab5d88f023100b6b262016da54937beac5bed06fb879f74b94ace9ff5c3f37ae95fa43277e2acee5119bdbafd0fefbb516312a3031d7f0302047c435bb500673065023100d23f26253760204c158beca4c5eb42622291d6733a1ba0b11b938f685a31098015ad7bc1025ac8ef28d93a025c7717e90230468d48756aeccf151db829cf68f52af29c0053db414382b8ae73cf9af246f9c0094e5e8dcfca6e714df1f91ce32c768e0302047c435bb500673065023027fa7554f4efce5090fef70e19f64d004707cf3e1552cd3c9e8942c88e2abfc3874536835e68486d9c419e607f1f9445023100d6de63768ed545cadc97be07eb0a004809b0d48d3af956ff9973f1fd68236459466bfd69dcc3229f46b8513c8029570c0302047c435bb500673065023100d36a95fae77269ff7c3da9ea25689ea38292c09d8ac742a2d445d862afa6407bbd1d62a0da8307b6e1f458cd228a4a8402301943d409a6f3e5237b9f3bcb584e0de682b5045e8cc47618cd803d003eb3f3cafed41def5783c286f0ed0114d8b4a8000302047c435bb500673065023028bef3a88c23eb4fa732950f6918e14582f115caf77ae5042ce021d54341a0aa335ae132bca0c4daf3fc67c0c85e686b023100aafb105897688821ab79241901ef02cb1862c4c41773a861ddad386824be5f9f9e40090376bf183167fc6c3d4174237f0302047c435bb500683066023100cd83af5861668c9ca6d9c47c6fe29b158126329637b2afdaba38e5c7226b0a2dff02ba59188fbba4b86a82cf99809b2e023100b1eaebd1a72332e10ec31d8542f756f9b408a05261dee187098e57952cb6edb6bf3ae8a32f1f56fb1de896b669cdf7710302047c435bb500673065023004d3dd924d750cacb87ddc04ed89d2f2458b7c61c7d0b0dec2ad6451da289ce2fe28f4f4495e4d69ed9829f402fa401d023100b46e7bfbb603f03a33dd3ba7fec4f40d7a08dea134a5587484bae1a87eceba6b3a97f66779bd9fd0f261f7496a1f71650302047c435bb50068306602310084ba3b80cd1648bbcb106e94366f60e8ffc4fb7cef7fe9e724bd9be51ca06cf3977755ad10def0bb90112db086516a35023100835ef73423153d11219a73bfc83a2cb589274a9d2ff8b8c5d354bc3423515d43b6c8d07052f874aa05afc22bcf0da5d10302047c435bb500673065023047683a0689f0c29969db08a8101902f2ab79168f8faffbd76923908eda77a3b8a98edbc073c241c56a98beb38eeb6fb30231009403654568d918f9b27dd41a7226c5865ee78c4f72d4f3a5ae0adde682ec88e3a166c274e27c88a63b00e36377c2b8690302047c435bb500683066023100c15e659c93d3d17954e6afb100d960ea05a89a36c9e3a1f0890026e7f891c394686233aae54cacf3e80d6dd00b4c84e8023100c5edd59836b8a99d937065cd139a28b50676a19cc14e24450d0fe0cddc6bef3bae701b3caccc15590a3080d7d7b6fc6c0302047c435bb5006830660231008e79d5d16c61e31a9abef73e655c10e425aa742de0a1bc6aabfa399e723f0727de3455c3174458cebb4b7188063c1278023100a13eed5b14714f2c21db670adaddbc2c997378758e76376b82d94017a4ea1737a4d3a9b289dcd1d0b2d7b377f86a6f100302047c435bb500673065023018a30b26d9ae0e80028a86e3b9dc7b74a118970e5c69389441f693f5f1e09cf0ee0991876080fb9e3e0eea2a21145637023100afe829026f49ae687f122facdb038ff6e7fb8c9003ecd05962400f5b6b299ed89bc71301993f05a2d9dbcee1496d959b0302047c435bb500683066023100e9a3267935df609152a187c8e9a463e9843773d1aa64a1ecaf03db7aba02d5538034debbb98c9b20184d12a95391abb5023100d6fb9c13670c3bf41157731fce52e842bdaf9211c98b55f31d25db7aeb748e6e1a80aaf4e6529b8bc07967000ca6603c0302047c435bb50067306502307e4799ec03b9df6691c98cd01a20612e40f0bbca8393abc7ce3583b41a71d58c64b98c6b12e8c15231017eb1d8472232023100c3e5b17d80d77ae6687323c456f800d46147994ca532ca9e98c3dcb746f92c1fa11bfae1c704d890c2cfcfa33c5de9e10302047c435bb500673065023100e346fd903c4f2f9a1e783433edc533171ed6ec2d6e5381283a028d74a88c991f911af69ae074718eff8aebe2dac0e9cf02301ca4af687b2d1be5f9f587b940eb38236acf5d48d530e428fa3cc9389c08740d6757162f7daede851b7b5013c2bb4d680302047c435bb50067306502310095e910a11c089864cae9ac5147280e9976e8cc0681c7e94557d363f94aa1caf995873e71512eb1a398f778e7c341c13c0230206103a13e30efe5f8c55ac8407d86ea010cb08de9041d33311e0076f7934462c2da8a25a261207103dd4663c62ac3d80302047c435bb5006730650230155158aa30fb59abb8896ec8a82050d684bea9af7e8f60a816e14c057b5bf9e011b79ee2b73f69dba77d7367f716f31a02310096f7568e7b907391067441f30379ad75914092e34198162620ced0b838e65911676310494d73b44f4d0ef889eda742a90302047c435bb50067306502304f495ec6d2129e81a51edc8f35ad06f79e006bec2038e7663bcb4da57ae351d0cd794843fb2b03b99d32d2c1f056dbec023100e25371fda9c12a38ae10713853374c6b4771ac653440e117a0f66f290883e95f1e83bd4165b1fa72232b20940a7de0990302047c435bb50066306402305f4d2ee3ba04f723a072e1b6221bb5964a139cee75fab1e57ad2e11589b39980869b70db98e7ff214249e362edc03f7402300d61e998887a7f7fdeb326a8c4684c437124315b6573da26e35b084e4e33d812a2a6e37031a27f226120b1aa1ee779ca0302047c435bb500663064023037e7c41c2060266bf393293bd5fc3eef8be951b9503c892b6aff552e00544e395811d7daa702157901481ef7862eea7c02307bab93d1d249f3a74d7835e55a1ec5a0cd897bedb07efdbdbece306fd4cb1ed4fa0c85da9e0f6c99c3d92daa62ff02190302047c435bb500683066023100d9ca0d26912cf0b176873095c3aa242ddc60ea487370fe001a80518316f4e3aefa367fe62f520e55340ac788d02b3236023100a3652f580b0e6d09aaa02e3ce700ad6cf67a5740e59781ca86c26ce021c0d17b620ab5b36d1a016567a32d6935c1e26e0302047c435bb50067306502306a2fb990f55dc130ea801c8679e981c608cc87716e174b106075944349fc7010b08c1f153b1d5cb325755e522a6b4363023100cdbc8e0be71e34bda89639d49adbadcd507005e12a7a49fa24582757cd758580196a95867810ba08335381897a94e04e0302047c435bb500683066023100e60590945510422fbd3737a24a50aa8b8f8040873d491c6009ffebb5ea5e94d41120a63e0160e180b240f10db22b0649023100db191bdbbe2f3b6459098596b4d2df1b997e648499fb8d63acf8684e7ea9d9c340d397220d5ddfd6b7afeceeea4cbf080302047c435bb500683066023100ad95b1c1dbc26e5530880f5549d504e764135167ca434128194c5d1cb81178e9f5e4ec361c526705fe0c053dba4bb80c0231009e631212c395b012031b8070f023a94cd006eab17e1fa14330c5d200880d64117a417203eda4b137cc9b634a0b93cdc20302047c435bb500683066023100b182a2a5f1b7578595a6317178ef1c13b39043a47906e8fccd1d203708067e0fbb1c103274182714df77e96d00d7509a023100b23e1eca05276570bba16fd5647ee35947a485c65bbbc0c347c1e3857329c6aadff4570d697509fb51af873c681ff9580302047c435bb500683066023100d36f52b71098f7d5da6e2fc1cd8f74c3722f98dae582b2140acf1ac1b19e380279c8b6706448c1ead2f28c21d8791b580231008ed8d728f6a82d25bef94af77dfaf2a0e432be7edf57277f8af30ca4322b8f56bf22d26ee47a656b159d2b2daf9193b20302047c435bb50066306402304312df5e13a9cb093793077c66da18c92b055f5bc43f0959688c849a7443d1d859ba5355f83fe664169763b4234aa31d02300bcfab980301b2342977a8cbf71141b63f6e5b46878580548c496d4d2977ce42ac8fd6a25fb1c04e683941d7073937d60302047c435bb500673065023007e1c6e6899c72484399e8c086dc062cb0614d183b8d59732a8de2f5f31731c4b97c75c4e9eeb3f61d30a3255da39ebe023100c1d8c296262a1d649228e273c4510195aeabacd820467635edfef1f8e117b44b50139094f5d662954deec45e4160de6e0302047c435bb500663064023068cdb374b092625984d257481a0ab3f2fd63bfd16f140a191a1542eef74125da5278f8277248cbcc19f3950883ec1bfa02305818f418955dae00ded088a17decf7e821598c168239275af2d554159bf1580fb3362960dbd4f9f21029d7146f2bebc10302047c435bb50066306402300a33d98e9f9745c80e280a9e19b345a2b2fa2e7731de65a6e1d49bec7dbc2c84806c1d69f96039c322ee4e9a3035d82a023067a36a2fe90b3751067ebaa9b95629ed87ead83b65553ff0b641fffc8d9a1a01eca016d019bf8417b28260d4a5bf39750302047c435bb500673065023100830f8d5f04a6dd6f8ad1509377d789c89ff83e1d197aeada397e305449339a78c6a0253346d4ae82aa604f43f77f0a7002307710c9252bf5c3ecd014defbf7caff5e5f27726aaca4ca3e29478c3eb324029659e54bbe87918cd7e7ef8770c0ac13300302047c435bb500683066023100905ebfc9e7a438a1a9d598531573280ab5568922821e3e53e8250b5d57f57d55fc3162d10ca984cfd86d74dc55147b4b023100a6940ae4d27217f569431e8d2dd29d5ce2d42e6afc08a2a9a2a0cedc51d2d63eacf4d6e2746d9f5ab30936c7f0d01b410302047c435bb5006630640230383c1dd72c826f31d5c908a07a78ba520dfb753354114329d1de7856c68fac4abc2a140b1ce6259767793103bddc8258023056c51e1a1493d0f37dee230b5c963fa4b65fddc4f8373fc537b7c2b378b555f365d73ef2efe970957c721963ff23a84d0302047c435bb500673065023100f8a4bdb8302f4fce34243a47d3068786e28a36324a53dfd735ddf67304a76452b57689860c4a55bc1a61b16585a451ea02305f644415f48213915e5f3fccac049ec557111d90cdcccbb8a595cc71545462d5224259e1da125a85da072196ec929c250302047c435bb500683066023100f2aac551fc5920cab6dd763374adb8e7e176b4f1d5e9446617a80497e6fa9016db50382d318e00da561ced80541c2fac023100a74c52d740ffe510c6acabfbc9ead38400086cb37ddd5d71379054ba47a212fd464b2a567523b780ab064f159d2d9df40302047c435bb500683066023100b907da922053c03a1a514f25c655fdf7fc0061ab0bd984f4d4d59527ce98764a0bf105ec330d4f99bc114f969d107e3d0231009f42b3607360f1ab2ad6fd461895f9ac8df83ba06d5fd9d43c8be12b28d71f861148a2bb1e15bb4e1c61e1ff8e3e3ee30302047c435bb50066306402302a211d4a040f150a34fe5e76221cfbddcf0b19120b61fd5532eacae18b5eb308c077b223680f5defc9429c1139126d4f02305d7fd1e78c6e3b33489893b6322e4a45c9c742e5515fd513e3713822ac6608b0b45feb5d02308c49feb3171f8b8b6a290302047c435bb5006630640230313055cac4b74e1a2521f3c8e0bfb1eb0cf5261bdbb317f396b6fb8ae1e866d186eaccc8af6e5db0039b7daf370d9e95023004d24d87b43834d24917170b63f217f1a00adeb3f0495f915ef4f27206ab66d7b5bc363aefb32fe76cfd062108febf360302047c435bb500673065023036421e9a6121b6803628440f5d18add64a7c26d6a61655cdb904584a9286f33108749055ddf76f2bfcfae21dfbe12cee023100fe26178e915e51705b4aa9fe3431a37607e8e1afdd7826a7f00f0e95d28004c00cf6c0c10caa4a24618ddd4daeaf2f1c0302047c435bb500673065023100b0c3c6f8f75a2c4d1669f49b2da02028e9d498964fe25d55a1b2cbe16ff3ccbda2df5142b2f358bbec0774605f32a9b90230741389d5a8596d7bbfc61e472f09005ebb153f7f8444eb6e3482cadd6d70508534d68564974f6969a2aec6f84a2c7b8f0302047c435bb5006730650231009cc196b3ccd309ee0c40aa8f593588fd81b1dd6c0e35646b04dc5de6b37dc433c2d327bb66211221dab532a37a960579023006184187f3384e3db68abdfa68b0f5de62df8f71fb6eb78990c071ffef5665968684fabd83824ff541501a4ebd9145560302047c435bb500663064023055cc655d1415d2dd47c256bfcf2a2086b4e4b9a87cf656dfed0806f1bd913d69e57c704c5cffb2dc8ceeee4c123d97ea02304f1114727368b6e4a8e86a472f67edf505b70eb94f46d4f821fd69c5f98fc409a2745897edfc0be6ece2ba8c62c216630302047c435bb500673065023100e80708704a891718f6fadf97001a3f2ffcb8c7c52cabd578c6e12363f9bee0ea54aa395fc8fc78d6a277d24d325714b302307fd0d7fa4e65c3bea545c65ff7d307da77bb6863eece7a9e136b9729fe9d85a87b11950a8bb7a96648209ca20c94f2f50302047c435bb5006730650231008503c24d7c4d7b8bb53146bc7d6a637e1bd9cbb866ea58fcfffd57bcbf35436aa3d8b3fe944f94b6f3a36f424ada9274023047e887585e462624e068c25276023a4a801291e6e41106145893f414f7f213b66b010f565f63fdc2fa81b9d72f7884640302047c435bb500673065023009d2b6bbdd9267d59dcba30181ce3eb9de529e794edd2a6a80318be049fd5b01de8288ee9706257dce2e928a10e546b6023100aff074de7f73c87ae633413724fad0e502ba4d0284eb3a605a911c36e5de40a5d9fd8fd21ee6a06a87579be73c54ee720302047c435bb50067306502306ea19892656acc58f69b5b982a8e97065bdcf30c292b2d0bd48d190ccd7c89647aae23af697eb57586a7daf4002a6ba4023100ee8fb77f3d2acd998c09aa462137abcc8ec1d761d5b1c5bf7a794091e05ab443f9584fff4bf3ead37c4c9f1ea7e17c790302047c435bb500673065023100c5cdacc31c7d708e6dc8dbd7fb9192090db04f27fb6f2edf5e1def127097461d033edfc314a16c8d88d882a49e1d203f023030fa34d43590cda124e79dfcf03d9fc4c17df064a65713f5066093f3e68ee4d450e8ac8a91934f857a74c6fa6aa3972a0302047c435bb5006630640230777ad123f02a821128c842633af1ae53012b25841fc8f86ca9cbbbc69d30c708c92c74cba57b7426e63ee03815eb9b6002305c3fedfbd69638584aa7eb6532c662b65a02e0d0031ad6dfb1a412efb0ab369eaf97b7c7f43b1951251374c66e4c90d00302047c435bb500683066023100c532f000ae02364d71dc9cd84f6f8eee727b9493637c63f9384afb1e7deae9ab7c026fe03a62a7fc88c4f8b9bcd4be1f0231008a3d1fc0700d88990e2f26a0eabaa2496d306b28c3395bb047819dc3038d67d466a9a5ff5d33e7da32fe0de1af85a09e0302047c435bb500683066023100bde0b86c37ab63f57afc51f1566d67647af125db9a977013dc79ec0302f185a89460410564174bb194c1026cec8de4a4023100d9d7d864c549166dadc0a8ece641005fcd1e5eee11224c29374a233765fdbf038aebcfd31f402bd60a57b36351985a630302047c435bb50066306402305a0c57247306d9fab86fd34c0475f8a9127a144cf21e215ee6c6abc0b4bb030a6ffae5f122c2db4a55e6834c71b393e9023021529bba2c8a0c639919bc3b173ea39e5f7b25038f86cb3bdd29bd0d17490dcaab2cb64b8262ba8cb22d81f1f9c322750302047c435bb50067306502303c52d2d9312ef2978c54a0188fddcc2a8f5a51e484045dffa634c6cd1f363320a0b0e626485e380c63d4b918058c947d023100878c59274fe9e4b39f7498a7c74c1aee7c709a88fcbd0c8025db280ca850bd0bdf18286c6d6efbae05cfffa4abe4c0230302047c435bb500683066023100a9a570d6600aed43ec0074c95eb97de938032d566a2dfe7f385e750d36ba60ea3a676c23b13bc0b309da4c7da2ba0d3b023100b65f53e841bf009693964b76d39784a77b3a07ea14e94ab8d7dd412c7cd047903ec190f14240d63c10174083c8789f920302047c435bb500673065023100a7ef0bfd529c74f60ed458d2bca297558fa0cdd3ab5334fb451f96150dc175a70759d448b497e62a82d497d58fa9a61a02305799ecff6592841689e71f76f14e2a91fc45ab60be382fb8c88d1089c6a3e1a78bb98656fc380e2d1406f9001c0b99880302047c435bb500673065023100c7cbb8984636d69de5ee55a47e62e9c2a95eb5a2ef24c24bde6b8571b404f839e05f007058bad16006bfd9768dfdc7560230401962a157e42142ff20ca193d3954f0ef1a375ff24bc9c077304db9766d18175b8e2117eab73a5261dacaabefabb0410302047c435bb50068306602310085e4c9252e19eae22f58dc5a210ff566ebe317341f74b687cb8b524dac14bf50abe61476a63381ed877d5eb09df3e253023100e46f7a0e832eb06685d856d6e0b6cff4439bdb69594bdb941514a8d8eb6db9c1385dbe18aca8bcccf1e1be9b39ca909f0302047c435bb500673065023045105985592d624545d00f2fb2aeb6f1049f61a1120c38e85b425224826197eb1e380581058719c3576e8c24a7532b9c023100ef1929217b1633424af02fbd16a8d211df0c2e750417cfaeaca90614131b8b49892cb53c09421f0e1aaf506640dd719e0302047c435bb500673065023043c0e851a993ea3bd0ca5067d3fbc53f5d2e9a4319c26d03b03f424d93506266a00ff8facefe3e79e0300d08071bfa6002310086b450f8538e932961382b3728b33d8234507d34204a97d040301965dbf34c12ebaedd4d69a92d9d9c550bb04ae5d4a50302047c435bb5006730650230312b5965ba76ca428ddb1418efb6fef708d0290acecdb04a80e5fd704595638fee796f81bea0aaab0828d22e4a4af801023100de8bb4af407e066cabafc11cebbe2b1f956c5b3648519cde576b94972c8de7f4352f2c299418412b2eeb87ae163bff240302047c435bb50068306602310091a6507158fa7c51aa005100ee50e17494e903083568d06315d567027a9bbe74ee9a6a8f68f49deb6cc935b5cb0ed95a023100812581f4c7bf08f5e660c895f452da8ccb67b1334d7f147bf31edd1908f1d9d16233bb0880c0dd55b56270fa352be0ef0302047c435bb50066306402303ef3341c48f3ce81feabe2e68d484f660060151d0f1280825826ae01df778a5a502e3aeb766844d15a89c9111c25081c0230772916ea6a3dcefaad3ae6466c7355fc570d2e20e702338c801d18260e9dc8153559e7eafa9ec82c996962ddffdbdaba0302047c435bb5006630640230508e6a5329517bf72cd81aa94eeaa706da9b778c2c974950d395b6fb91726f739fde1b671d737b5f73c7564b4234202902304c1f977a02474b2c83c7d9d6dff648dc5d8cb2f6b3782685e15c50c40014bf3e0cb63d387109784594c24f3f6de29fbb0302047c435bb50066306402301d76db530fd0e1053b32583c73e8d5df4c07e49d8e1cd573f3e3ffbf9ca599beab6b02afa2f75f4b92f38f2ded8c98e902305f9e9b3fd30dd002ffd510b6cdd50931009ebf0dfacd5b918f0cd6bf8cf32a88271a14ad201178cb460c6d690f694aea0302047c435bb500673065023100950b01cdc08c3343a8ef59abc2959021cb200e96b3ee9096d8cabe9ce3ba38e6a0d018a00962322ba3f72f851b8ad555023037d783b4762f8bc7a7c99ee0799241c5f1f0fd5846b17fd8e7b2cb4ecf2741e865de942d8d3c0a911afac9f27d2168e50302047c435bb5006730650231009d93cd7aea5318912af973c81c2a711a70bb36ee8eb39ad7ad5a37233528528bea8c69497a3629978473bcb48e444cba02302f5afcdb97cb33b87ef0f3205a93092dbafdf98f741f3e7c99cf5c71cda1cf39d4d9b4f4aa3720ca606c6eb2ff9583ca0302047c435bb50067306502302e74ed537e79f1ed97ac935b6e3608bf561aa0a161b26d2c10b13fa1a0e45766bfc9c72f789d86296454cb763fe3464c02310092b220db9984593e687670eacdeccaea409bb99d79a626f895a036331702ce8c3d27f8e74ef5f0e0c3cd616c6cb63c560302047c435bb500673065023100b98df25ccecfb13c0022e9d9620be9d1898d88dc1e0fd4b217f510f001316ca30540854263dcdc4e1068ddc0fccc13cc0230196cd869f342c875b308d44f9bc5f94a21a50423d1e16d4f763363a051b15207486342ea947d1d1a13ebdeb1e2e074f40302047c435bb50067306502301e2c9c9c9e6e61562e696ecdfa824ceb22d3736ddee2a0f2fe44b418f95f62121556535a4bb8f863e873b5fe1ea9a6c4023100d3e48568c62417589bb60b659579699350c17a4c20e35253ff16080ac6728d0b8de2c44e2a77605736fcce90accdc3af0302047c435bb500663064023012e0f33390463a6d162b7bbf6c0e3f40fe704b0d4f63b77808d80b39ef1cc56279b3064e570c422858047cadb9fe6d46023028a89047de6d4a9fabaaaccdcd8684d5f6c11ae81a6c391facaa85915b985e2c5d564dd56f0ed6422cc690e0cd4ef5620302047c435bb5006630640230697868ae196c7e87fb96386dc5d3784082109f299160f34f2bf55d04e592ff2d740bdf78e2cfb61e3e6f4294faef7b63023033816c7a42c6ab057ad1a263bd0f6a01a6a49041c2d575b727cf245d43099a1f110729b39449dad97fb18201136a0e610302047c435bb5006830660231009032b2c8ee299df9ee0cd18f9c898ffb681d4e939431b543c58f9986a92c1d332ba9be4390f875e83758e73aa89db8a6023100d0a5538bc772378d363e57efa2b1e42c1ea22f154166e88cfb2d0a6a69ac1deb3fc691a45c93c70f6b7b143f949400b80302047c435bb50067306502300de88e6396451bdfd5492a5df85b2ea7ad3fb36d3d401a09e08c5fec0ab7309967dc7e005a33b99c8e51c2572324c9dd023100fb56a797e914b37b4971df0c636fa00a6fb60840deeedc39459fad0e4b3e248d7e4eb9abd36a1c0b70f9f7aaf9ab4e930302047c435bb50066306402303ed2e6222e5f37c2a65e49c9aff5e4e23c34fe08977ae732da547f85033551727c5d1478fa07d0ed742f042b5d6a88fe023060ad2ed48d8a18fc881566e5419c6e63614e6c937f505573cc095705933659ce1833f50c42aa3a73a10805061c59c8440302047c435bb50067306502301f4f4dc5f21ef60d484a2b9646f2654da82defa48ae47dea04498883a0d482406dcf570357c6b5bb0412210b470080b8023100f5bf6edb63f12af810b101ce0e0b7d35e1b2dd7883e24133a09a1c57651296c5ca3be1cdbe101bed1b45b46104f778900302047c435bb500673065023100aded9abca5c32ce03e6092b43f0c5e9c612c2ea38ca2103c2bb8869c79e0f32f9384de282b898936e38b408eda96af330230784d6fcd4ec9acbde2434d940a0bde11ad2da4fc4f1c841d76b23775dcfc91b1ddc8badf8ae78d229643ee5eddfbfce70302047c435bb50066306402304ffed41121b595412f9069bad3dd00a5941d5ac6ec926f1ad42ea2520111221df7d2611a4ea075bd628fa21ae6b65be202305bba0629b6f776ed1e370ca493c0389c3b2aa7b718c2953915986c284a696edcb09d2ab31f4a9ff301aee72e0af988b60302047c435bb5006730650230605764067f1ded6a7080e8f479a1ec9bbb65e2761a5ef110b6ae186f2c3df3c7ea6ab7ec80bcff9649560eda20d3778102310081341f20fbb9dda99c95190cf4f1e4cadb54a6582c674d4c8da79f1cc8117dfea3aa27daebaff1e870e3535be84e0d900302047c435bb500673065023100b76285a1be4ea424c71b25f4311ffa443fa068a6dcef4e5c54481be93ba239d11f6622ff6ad5a7f8f6fe2834b07da04902305da853d68479ac58ba253e0ae724219225a34192f6597ff7d5aafb548b88b201362550e59522410fde4225d80990584b0302047c435bb500683066023100f9b0cdad6c0211b96b4d4a01d6b8eae05fcb9f91fdaa203f02a310d4392e6d27f9a7df0ecf13374b464e43637a82db16023100a78b5e892ca53909fae7eba1ae7c7c3a67ea8f79cc959f175209c2bf3f434390e2f2be20de9f790d58cee6d2551f300b0302047c435bb500683066023100ebb767ae800d04fe2ea107ef0a379fce646d0cdd5f4bc609bba2f13721cf3d39e09337fd451eb3e23c18609542fada70023100de344f7bbe4913fe2c1608e5a506d96f1e0b5a65cec9fc934c4704f959e6fa692f20a931356d40ae476fbf20f92c900b0302047c435bb5006630640230455deab49675652fe00032d7b77b46ce153121de4e6715af2c2abc94bf4eb29d2d4d3305628b73210f6f92a051c5a80f0230056f68cc6abb4614d3679299c718d4283af4c857f7fea87735f4b1ae0c1b3e62f1a3f2fa9c9f3de483ddfd639c7ed40d0302047c435bb50066306402303068881a5693d2d285b278bfd5979b7e74d1dfb26ff5b4f527d0153a63a596af571cde215363b58d9eee120c67b0f0d002306e4507d78e96a10b49e806f051c8fa4eeb1136599e559901376bb952a8b1f18f9a8c884749b7687e493cdd6af829224b0302047c435bb50067306502304ccb141a5b20e54d9cdb6d3071938118da7bf124dea0b37d3c386d6eaf7906606fe7ed0fc0c9914b65fd85391dc9fe07023100d86b8725b75ea6236454a7be9c3a1c1c094fd07be7def187a5535c637407e35bce879ebe0bfbf3a9f01e16bc6937866a0302047c435bb50067306502306475e2f413cf2e3851fe7fcc0816fd991a5c6bffa599433fa706e8ec7cce7edfcad23c70c44895d61b8ebc3483d5115202310088819a1eb0cd0a1ad4e0ba986f770aac8c16a3c7e116e6fe930d084c006579e96583ba0b2a3d8c2322eed58313e2c6ce0302047c435bb5006630640230039309594fe532fbad5ae3d58533351717734ad0fbe3fd44bdd5c26a3816bd04849a6daf3ad06ebef5296e8a546e2b760230093a18b7b63f154d9371cd7dce795af1abfbdd137f329624e56ca504708a8f43e87c0e32bfc4bc388a92205b176bb0560302047c435bb50067306502307f6ec67350b441c84a36f4b75b712ed7329ae8078b4c7f39c93f8d3c21f03b879390e1ede7f41e4cc33cd06eed1798820231009ea3b27f34685118d41bdf3a4659e961d681a5870e8f78b0d88998365f9741a9a1d572c456f72e92e302fbac93b089f00302047c435bb500683066023100f5358bfb1ef655b9d1b41ceaed788dc6a2f43363411013fc28a5fc274b1f4004ea0181da038384458c887edf9ce74820023100f5958f9f16b887e309e9b3f4072a7c122e357724b308907fd6945ef2ff59874a7afb5e5b8c4a0902e133bfe549478ce40302047c435bb500683066023100fa8c0aad206456bef3fb589499af982664641b147e109c1662a194268f9b5dda5d5993a6e65fcc604c8affe7c65ab5c7023100f87a29936369c8d8204aaa5bb51de8f00072883f4b4cf07876c13480b9a81cd66f09f7ec2731d3bfa27be99353d3488d0302047c435bb5006630640230689e0b7f440102fb6302689fefeb916710bc807f3a2f9f9574be12cb5520b6f0b81c2c6d489c03d6a251b05cb75b6d07023061487c838eb3897daa72d69333fd449fc49a00e8b8beca3ce63f683481ced4cc5118782f1395eb45f87ef3305152a6c00302047c435bb50068306602310084c9a1903c1d51e86aa1309770b9c20f26483d11f1471b815b81ce7eb6527cf4722d07e00f5ef867b9abfc54f59cfa15023100b48e0353c7f19bc4fb534acdecd28c9c0c5ab33d95f4d8957a8bb1bcfcb6449182be569b399d561869a5f649f35402e60302047c435bb500683066023100e3a81204639fe4fc78882718aaedd3e6dd199d12a50c016fa01e9bf82d88a35c584e687261290d470f464d8a7f1ffa4c023100c3da5b02319d6ca9634c2f0623b32fd9c277db222cb172626e0bd4d784e4d553e65f53542829ff017e12433f00e66ce10302047c435bb500663064023069acec4ea2546a61a219c5fa2eadaf8c5a8a276c7a80553dbea457e24e010bac035fa31935fd00ac3fec3a09dbb394e8023009bc67c897ccb45d373a5483e13b90b4edc3c3855754b80fc6b561027c7d34dfed06e78df4743499a59bbf89f94830600302047c435bb50067306502307b3ca8fffd00c6536872fcdc64d4601186e59f2cb49bb93babbbc8fd30ab664d18c8f907d0adb1c43ace2407712551e202310091fb9ce6c0f19e4d84f5561eb6f5844202a91ac3af5f836606c333cf3b602979520365bf7aeb6af84c6c8e39090effff0302047c435bb5006730650230034b761f63d2b5f7284fbcc2577f759f22ade4a23cefa5694a852de45e44bbfe63471648cb77b75e7b957783fc974384023100edce40cba1396846800c30c9e05bd55d083b869a9167cadb65d32c0aee7103993a80f35063aa36b82a4d3a95a99b3a990302047c435bb50066306402304cde0821ea441daa6237383925ddb1239a7dfdbbfd807bd47ffcfae9d905ccc9e6164a2ecd5f036c72a1e0f2924b30ea02303ac7baf43cf122a862669b410036d8c678aa0b6457b959699a8081dc3bec8e5e0adb1dccb609f87367ba52ac248a7c6e0302047c435bb5006730650231009e296b93e46cca1f7879f8400fd0dbe166aa58b39a7834f536278527edf6599f775bfe96a15689aa7bce1f1e730c96310230197b4d78918dcaf68959d475b1481e5f3a8a6089ac508079fc0079bc6f6dd8451494d235eab984f0f0a4db6523df94220302047c435bb500673065023100fc5a15bb0624d09410224987526c20f0ff5dd7b6c326926889baa31790f41e0986cbad3f7d6dea34f7273f5850c7eb9c02304580ec7503a933c855f0490f523bda170d56703dc5d6af766a4b5dd878db3ec948908a4a135cb06ed1d7a3ec343ba83e0302047c435bb50066306402307d802ae47f1dfc5a1d0b890e55e694354b8b8bdadb6694c1f67f6f373727dedc821d7e4413e1081015037dd08c5d6fab02305bdaf8f0625d8404446d91342ec83b755818465d5ee96c0bd099f38806aa41f69723dfaffd22228d2ac02d94a48cbd410302047c435bb500683066023100f72dee8b0023d499e33ff9f73bf4eb0ccbcd6d376ce26d779337c9993425ec8058027d6aa5e390c7688428033e2e533f0231008c8a80b4b63fd6a153394dcc6c3323aeb46226752b91afb40201e6b72f4b6c38fb6467cc0eb440a26ffd50d7667bc97b0302047c435bb500673065023100eb2f1289384cada48202485be9d0cafd162559619d5955f38406c68b7ceb1985d5f1464da40786785846a109b8df0b1b023020cd74cb146e737c0c70687fd27aeebbc34d6409eb3f9f3174145d1d9cf1fe22a9c4cbdfafcb1c89b7039e0cb1c2b98f0302047c435bb50067306502304cd1fd5025f6c80282def8d8580b34814a04348be10317412de236b732997a3b53be09f5efc6a28e10962a7b84cf9d74023100ec2d1652c47ed1068662f4d6d0b604a692f17d319791f0db6c7334bc430d03219a431ced66356cf9f6b0301bfd2508960302047c435bb500673065023100838627437f4826c1d08e7a41a474f985f37167e441e8dc8670c6e34e49cba33c5d78743b806081c99681300398928305023024685d0a98c5312c20a9c8938d491fbe045f1c931b2fb5c376e4a2d83e9b3508b609a28dc7beab1f549e27acc643ee940302047c435bb500663064023007297810a8e3093c6d93f48d6344e5ee884878e3002252d3330791492ef03f539b5353e74efdda9d2c3a7b86a3166b860230645f20c1e67e0437a588ae6a61c10541487637ce0486731772772d79572ce1a627b3fca014a56030192c22fbc1bc521c0302047c435bb500663064023100af6e1217fbdeadf35b82f81310764ab132da851725e09cb4981cd1fb17b93c093909056d8b046a2896858d8bf1a4c804022f7298c7cb1881eb0ff6c3f65b6aff52950d06192c178c325dc27603e3a153a80197a377d373e418323861f4ccde62190302047c435bb500673065023100f29b9d4ccfe8898309b1ed7d85ce246d4508c7f24f5e664b966342eaf7bf4a46788d7d7bdf62e549bf5d4a2c2279e743023038c1d9a2a4e1d99b9d8979157ddd5ba36f1308cd97f486abf8e920e14e94d26de32ac5f28fa9d8148e9cc094ce0c9cf50302047c435bb500673065023019259372a960db8a86b65be67368bf7707396232ab374cb763d5535fb232502e8b203e03bd80c6b7ffbb24b07240a209023100cea6c39eafaac6338581c09210b9a59f5014d56e5e077929799620864245702b7509423b9815aee8a7f53acf8d227c4e0302047c435bb500683066023100845eb1a85a3c2b1b81fe31d3c15f7994c786d7e14a8e3997f5871d21ad9dcb5a7cfe60db26bb512474a6f9d5fd466b70023100868b172483ae5c7902c38fd3a98f54be62dafd1ed61d6f5869b53aa89dc70a1bc6e41e278aa9531cb5291220e6a5a7970302047c435bb50066306402301a9effa5dfc7b8b8701363ca4ca7bf8418247f02de9329b7f87db938a03e656e8c0e697dcec9f2f71ba323f3354b868d02304c0f5dd8e7dba1ae4a2ab8057f2a74c65ff80e7fe0d9cc592275d7daa04aaf5f02316c408a428a8dcad6e3a2470f06630302047c435bb500683066023100ea8a4efa8bf8b4d8837e7cf869e90d23b4994a4acbde56de90fe8c2c3f6e50849fd0af0652ea4b78ffcf4c3eea49d491023100da3374dddea3ce24911eb0e621d1cb9405904134999014c80cd7182fada1c129aa0d4cd2042fdd3b1fa854dd5c2249d80302047c435bb500673065023100b155889d6080f41c98682693ccb8beb1bf3959bf0dc0351dedd7c437316afa54839e4e9d9cfd523d761ef8d05a5b61e402305afb106ef9181acbffd843cc077072ca254a337ba199b5c0e2672aa77da673af328acea250061087fdd6d7148dfc9b800302047c435bb500673065023100b3d3e088674dbf0c6eea2f0ede4b1b0cf26a03cd6e88c679051642f1308652ca68d618d55e00877111828737909258ce02302c1c83ccc3fb4d868542a96c98eff4fac2549cb4d78ae3453ca30314431857e15e1b795564361909bc2a49522783e9120302047c435bb50067306502305590b538a2632aca87f96447f2f931f00c0b7790f7f04e53ae43be116ab6d5e8caf85fb9278b81eff68e8ea1c81e2844023100f0a51b3ab71a8f805a6084ea9836038b80b48e743cbd05ce7cbf1dc28a325e0cb992364ee50e09cc6f4a10586374abc40302047c435bb5006730650231008f6264ba5f1975e4db8b9b2ab1748fdb5aed1f743943f9d98097a469a7b7722550d80d89bf5a7c76085c4137ab5c3b5d023008a5d3128def22bedcab95f3a8d5b7b08c9ae7dae78c6877391ab100980d04a784bcd4e46cc955a17a02dab26119ae6b0302047c435bb500683066023100f869ecc943d0ed696f6015f40ff95abc1c8d67c171cf9e5e7692bb1bef48c809b7882daefe94ef30afeb7568f4eca511023100ea67f0eb6dce2d4280397c670009083523feeb7a9329fe92d921068426a05adf9cd786af0a74a24f6f9eee2ee5554c710302047c435bb5006730650230660335697cc73a3705f7ba542c7f6524ae6bbc6a886b00bab8d28525016669cf74aa2b803608079c168f07567da69ac8023100d470601d0eb0db19a9fc75466d9418d107cecfbd5c6a50cfb94eaa2a1bc1233406ad68bce78bc59d34f5d1efec53cee20302047c435bb50067306502302f8225a078d1c5d6c6c6f1430f685f7a41b385661cd398f9a907206b783b07f203560bf11dadcbfe99ea6fb81f2562a5023100a66edc49cc10dec9a1d986ae7632c48bfba80a9fd7363f1b5fdddbd2252e6ddd3130c2035f17b5c3f6ed1e285aba479c0302047c435bb500673065023057634e694d75c85ab0cdbb0afcbf90969896eaa6d31b4e7035008088534a40fc564b72428fbd1ae740fb54f9145c3e4602310089547f80fc0e0912cff64e6a19a6daaa8bfd3e16702fb165bb01e7fe9bcac75919ee105e6e0991c9d1fc596062d5fcae0302047c435bb500663064023049f1f4dd62d97e42eac298abbabd1a5fd964f37335d6bfb226d463d772107a99a4b423502a9ffeecc67991468839b91402302ef4d4edcac6aaa700467a2039f68974d470abfa6d72c4807261c694ce3e9381af76ec05ecf1fada803b5936da171cbd0302047c435bb500673065023065658e493a7ec4774ac31133abc819302c7490a021d0b32eed510f59321e41fcc56d578b628bd17e9f5a2349055eddfb0231009edda0ef38bc3c0e464525d2eb70996fc26ac0784b8c11b516486bc3e84a63d0679bd100e98517956d322930c21278710302047c435bb5006630640230726851edb1f37f8d24344a21cbb157e03a4afc5e0e508465e5370fb4d5511f6891b153ad1217563d1b1532fd1bbf7fc602305d190dc3b8b1937d147a080e3fc70df81c4b2195d00fe8cc2f40636c1e54b90cbaa0a9601e6e5cf2e77a748da67046ae0302047c435bb500673065023100ea2e14abc71e1f4f06c99314ea53c4fbd55cd2c25c4a0e42c8b6e7242fccf0fe4c0f27a7fcc7ab94def3a043d58db878023000ed039d2c2a6df467e57eafde409c1d6ae8c9b82f95df217ee13fc32537fa7f72e6289472683db9a854fac2f06a5b990302047c435bb50067306502306097f55619692bbbaa04609296f98aef9bddfa869385f221c44f8c1cc954d6dbe959dcb5d211ebfbb4f8229fa77d65dc0231008c1ec01702419f48b67be81c1c7edeef2ef43a0f970d49b4ef2a54bdc2ff1d2cbefbd30b7b1d6e56d229f9ad096514fa0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230469f90230c0380df8ef890e7d6fd0554a38b20c0879e22bee9a7300a3e25d94588f7497e2887193506526b25a8d2c1f00230759170b29d3e3658745b70ffb246a4ab67d36e4bed09a2a85f0a3e573dfed070d330d7626e47ca7ffc1c1550fa6710fb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023007e0d025ddaba7988ed7366a632cfe9f5a724472d20205c217b5f9b36e8052940097a303e31efa0a01b30923386c20f8023100a67779996b354d6d2ec698fe1b126dc49813932c6216a31ff1d788ef8d05a39b23ea59ae6a89e56199b796ee10a5e6c40302047c435bb50067306502300882c075a7d8155d29167ad06601f567ea004fc41431ba7d5407c41187b1a672f32ed3c824788c091e2d58ad44e109fb023100a4bdcb796125381b3c013ede56ad79e12626db2dd04be5e76f109c62dfa55bee9760f908994fbabec79888ff721fd0ce0302047c435bb50066306402307d68ec38741b2a0a0346c5542664ff2f44a606d65672a56b560726910d78c7b3f3b56ae44bcde79290c895ab41eee2dc02300281809eedc1e8f706a57b6a0c9f21b6af106fd05eb08955be0aa35e8399344e98096b5eb6b38ea11498f240d7d6fb860302047c435bb500673065023060e8192ef0e1162dc9847b159ba9fcf5c9f75503fb625b37590dafcdd8ecf0c27936745f6dcf4bcec7ba20aa95ec5f68023100d54137e38f5df1bab035bc8b404730ef53c31de7ef7ec9120cd28219589f1674083199a2173882af7c45d46635f7b2580302047c435bb50066306402305933b08af13b5b7c8ac84d3d77e5f423d7f5ae9e31b5798cae597478e9e3a26211b8b450a7c6031ba9342a5109d9a53a023041738b0edabeb4bbadeea33bbfb12e76c8d795bff14f1cded863be090a0099639512a71a0028af1b32d4fe47d442f8f10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023010d721ef9b4a348c74e1fcb57682ac896784683295ed731ab24c1c9cc0c97556b4fe8258e5b38b750aae7efd329073c802306e3c85a690ebe6467d85d6a75bcc6e3008f2ae31f09e966bef291f94a0b89a9ba467fb8a7e821e951d6398117d28bb0f0302047c435bb500673065023073a2fc688a624c6637a5937ad43d340ee9af8f971cec6397388511e6a76cf7190d33f71ce2529d1b21472b6b1a82236102310099353f48acdb49819d0d18b606d6e35839ee9070ef8587b6ace4cd0a551c0f4a0af81010a09ad86ee8c17aac4043bfff0302047c435bb500683066023100a9b1efe469af5d78942cded97bc827ba5d7e1840b55cb358be58916b42349d844ce08745ec71c6d6baeb3a88f865c26f0231009f15469213965e6a5bd392f5726e9ad1c3bd9bad123c28ad2fc132c8b52c398e9c667842db7cf96408698f8f0816415b0302047c435bb5006730650230321231dc5b0e103eb3323e711c5506fe94b0fd1d6b8bedb005e3fc8ed8c599eae105544eccdf531f8ba2a7c660906c1c0231008c303ccb92316ad77d46acf1d20f71974fa8adbeb0d3135075278b7d4b5acc8dcc98ea8a85256b048e55903eee2cff0d0302047c435bb500663064023008c1d930f830b36360467d99aa77af2a325899ae4cdb434c062d039301de61497cee234f92417b909d4d55c53134650602307f04afbf7d6045df0e8832a0ddc9aa94af34360cdf498ee57769efeff7074799752c51681e4a11443306fe46fb10225d0302047c435bb5006730650230400ae9b5b2c6ff98c346c55a5c834b69f64770af0338f801dd0db9ca45a4a0ad04d2c2167ea026644cab8e1bb5f06bdc023100d34dca11d1f61cfebf54bfd8300bb8743db6c2be7776821cf2fcacfc4e5bf31ab30149c4a9a588a3ac6229ab3b8dde3c0302047c435bb5006730650230488dfbaf50a083fb6dcb05416a45ee5e517f0a71a39db91b3cc168767124cba1fc0b9e245da7a089904946e673c376f4023100ff38d327ff3b78db5df960fe1e1003410e791e70f40adf2580bc5c4fc5b10fcefcde8ed37e2dd1853a6abd00a4bd75050302047c435bb50067306502304cea7942ebda2ed869eaae3603f95ed306d6e9d866827b91b92b7285f7be2df6cca812466b7f111fd15362914d0cbff5023100b96fd288998c3a07da4558a62a9dc6956bc901e713794f874105db8d79f852883356442fb8efac5c64a53ba00dc744ec0302047c435bb500673065023100f1cb25f77ea799f7e8862f7c53b96c54463a56cd6c29e967641181059a6606119e3abed8104a1c2060f3c007b8a03fc60230432f7996f1ce815cec21f89dd6648536894b3ed9cc3f191be5882d494b5c9e785550117f47663775cc63bdc3321628cd0302047c435bb500683066023100f54570cbbe50e2a9befbd2c7ccb1457dcaa0743dceb86ba3bc68f392ebbd3175e2102c7def86b16c113fc828db8539f7023100938006b3a13fa2a96ac23b6c2960a803af7a0ed3ae957bb7571eb3261863d852767708869f1d060e91e92f634e0d8bfc0302047c435bb500663064023020928815d4f4d19010370863c0c98647d13d750afbfc1ef46d2f7a0acbbe5173829b19972df7f79617b2c9fe2352c65c02300618bfe43c72e8073c64463bc013ad2e6d233af8aecdb27f0ebdf7299df1eab40a9f326095140a77cf3eaa02800eb65b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023054f9f265a5d844dbf295d8b791159a54f6088fee5c58d4114c8dc386ea3e3215e628331e4e502402a4faaa5cbb5ccc2a023100babb494abb9616f18a1bebf99e79b8004c8b1468e8ba190f817bffd527cffb23b603d28d353d86adb79540af32daa6ea0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023074de2670dfcedf916c17c8ffde95b686cf97cb53d97901c1f092fce1a48076dce5985f3dbad2436ccd815eebd0b0d5180230214e133a2ac8db68f1ab4b466aec214059ef2b4b0e799a21d0c0e3208973bf45cc560f087b5ce38bbeb5ed564c8938b10302047c435bb500663064023053ac7ad4a16a5b1a6f86b4baf97beba1433ee00ee7939bffb55dd58b7d57d2ba602781f42f3d8a01d8b3fa0c4896c4f4023019d6eea214564a87416e6d855810e847a11acc3ebdc18b6112126b6808ae0c54677efc92b672c22feb135818642088480302047c435bb500673065023100d93356e19454a1062f2723700824263b12c1c8d4dfab6898670ccca8f7a258db0079a72ece31aabdae132d6ecfbe14c8023026d237b926a947d06ea4d4c9883c0bbdfd85e25cb1bb3fb80467df4c0a2b923a8fa252c523f07175c21c6f55d2178b010302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230720fe29c7f1666a5cc7496dec47b6ccd8d1f34ddb65537402ba1235502dbbe4a4346d68c3e80bfeb84c14c8933929ee9023100ee21dccefd7bafd29c733894af893dbb4e6fef589c9cd6999c625cd999469fcc29d36c75a0eb541cf701b5325f6a926b0302047c435bb500683066023100fa1b8e9b5eab104daf58889b25ddc55ff9f8949f9f226c166dc451745e0a0a0e68ceabdcb0ee03059506e355cfd5c93f023100b7fd0a033575b1bc95a0d8108feebb8a4769664866a5ac57d2d77d9105ac44fe9e8e7a1ba1c4b8559591942a83b031d50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b10d559e7c378aa23bf96c9ad440c964534072166a9bc66f6ab6b8ecd0c70fd3f47925afa0adabff51830ee1c4c60ef70230751a1c5987b72e54e5239515a9cfc6c81faf47fac5d8ffc624f761b9354b4681080fe06deaa719f3933ef8929770bc200302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100dbf1dde1f0436b5782d59283d1f6211c22841d8891845688cabd9c60c07493d1c0178a62bfc477b386d50321d92accb0023018a24a7475dec8bef356f2e82e0288ee4c87374d0749a5ed2c60b25140ea4bfe59ed773ef9216e5b180019852e4cfdec0302047c435bb500673065023100ca7cf80f11ad38d506bc999922f893f9144ed4c3b5843ccf797739825e284918910095f30aed9a4ff377c474346025700230661d4614db6be6efddb8db8b17a0778b2febaa65ce8285ffd3f983f1905bbcf7dd1cfcf5abbca3276855b07ccd4190890302047c435bb500673065023100ac7b3fdacfeed64e14ec732c58201f7459c404b08b0547690a9f620529943f945c704238b42d1c1f1ac853aa5e7095df02302d4dc48590cb01320cf95a9535833170ddc66402f950d6a0e4433cfbd275b7ef86c5022287ea90064284d84d3b2397320302047c435bb500673065023061df3dcf5343bb4fcef896ccd84eccd4798a19a1aca3ac710611ee642f06780eb94a69fed9ce8631fac71b97967fb7d6023100dd2cbcff22647c48e9db715f01ddd7e5f1b61a7f3e42582aeafeabc68aebabc37ae7cd267b950ff44fe5e5e863053ab40302047c435bb50066306402303b00e592275a1bc75fd1671674058c35a7c226d1924868cc75344fad91482840a99de7a06cfb97864f942f1e6cfc688502303fbc0de0f58991c08917250389fcc426ca5d260a72148c612bbe3e77b9768cb9230daef3bb18054b31a47ee1ca2cae110302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c2c1cf78f54631caf5e3765b4e77bf12a46b898d114bdba33a393f705569aa2af11876b6596fd315c91885e0ef92b726023100ee96f045cae895b28c9302f796f8108cc02f83c78cf85054408b6901c11171189308835216bfaf59928eceedbd80e26d0302047c435bb500683066023100d78d5abbdfe4ae472ec8616320191a5eb1a11c5e61f7ee63ae263800a3d06dd20d90670704796445bf6455dfefddd396023100d7cca5d3a04ae1bb6c69afbc0b04d115bbcd0ac16800116b46ac51b5a07e4551ebd7344697702e622af3b5aea803a9ec0302047c435bb500683066023100c9b9940e2ec884293c4b965d290be3332a815363ff33514595c5dbfb4d922ab3a227dc400a0236fc88b1f4e08f7d7513023100c4d8fc1d92959ea5ce0989aaf5a2bf4e546f28ab2105d8b6e9a275457297d74c2fb57743c671c1f3a03a1e467aea96a60302047c435bb50066306402301426ea72bd61b2eda31f642d155817c813bc9cec8c841c7c1ba93dd7aab8d986d71e0e01984d450ab98ff79e46b82f01023053682a85876870d1f8fbf3d6e10b8af373f1e358219cae6daf28e8f17f2b34122318ece23656ca4228edc62d32be11070302047c435bb5006730650231009e12d7b88e2abb0525f5c3ff098f09a58beb7fa66e4602a008635f5d79c34ba987d2310c0c2f7d29eb7a9b42713104d902301d0c1ce99d393b016df9ba4f7b8e65e6f71a705d02af6ef435aaf21f53ac56b03c2af3ffdb34d662dab01b4797ede45a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e8dcc70374f53f71b3653666044ca0746d3b0c7ed09b68223e3cf33280b8be539c3e18612f6b411b0ade8989a0b363df023061a88d537ed791e0b46795cdf61859464f0628e77b10d11690e763dbb22280a96b9994f91f718db47f0a6c7b5c0ce3410302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302a843da1322d9ec2755aa314cea86349aacd76caea93e2a2cb7d7dc7f1be8d22f644513c932d6b86deafa3bc6384ad4002302c03de4856bd9a0e5478ada7fba23e64ec9b7f46bb0fa08e5686b047b479592f57fa2d717efca9589a46e9c127d8697f0302047c435bb500673065023100c95b3b6aa6c83a7f32f99304d550e3708d7482f58d782a180bada79cfb5b977152a1f9770d91f056685d94db357c1a2e02302b5adb7eba0de0ec24c75ce2456ef60bfde65b57b670aef911bd286b4734a5182f47a7778f580e3e940fe068485fbaa50302047c435bb5006830660231008da8a518b96c97259e4dcd4c71c37a8f86513720662d9f9d2ce9e0427ba77942485f0daccaf9e7585da3c417c2adf750023100bce59c076398ba40a306a9e51d1a729fa4beac22c966f30d57f08e070494f3a2c3666b3c0e6af0b77cde410cdf018a8c0302047c435bb500673065023100de8cd411748891ad70516e01ec4e90b2cc3ee0c0b5c52865cad0ba41625fa8a1e60c956e9f302ee3df439af16d3bbeb202305c75e30cf3192b32c9a17e264c7606a70bdfb2c560384c260e029834d6877ff91006db57c9a5d00cefacfcbb87fc72b20302047c435bb5006630640230317cd293257716ac04f8630347bb7cba1ebec4c348df64377f1293d2bcf87d78e7260b2a93fc9af83fb554a23574a32c02307afc025a0bd669786589df8e0098e8192a04a5b05dc425e042ce54a09c2c6cca6e38a2bc199bb9e4e5855882ab8625be0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303c21bd9a9e1849de12e7df776701c009ec41e963b5f14b79a411be6492ba93489ee76ea742e9033e360bfb0689713696023041b6385933d053cd25e74ee91bfbe8437b062f9d78ad7162dd10b81a271304f8f1c2a7a0897f2e8a4490cca8f309df270302047c435bb5006630640230207b2be60c7c9752c32c628a471cdf18cd8823d552d74be749cd8df8b84d90d48da842499a742667d7fdf71b59937cea023047c9369e2d43ede9ea8654e9f1181196136093d2d0df310b38e159285f506598795a087e3c1be104602d4b911509a23d0302047c435bb500683066023100cead099ce2339917be1d133475d336ff987a6175e17f74209ec46bf0503384fd111e96a2a98a878e9f45a5544499c762023100e62dde49aeae402b83765b5afae11bee2162c99bbc0f5f66892f53903430477d8d267be9fd45649e2b925f925c8afdcd0302047c435bb50067306502306ea972a3ed498674a38fdf969fb101cbeb7264e7671d16406cc165918cc248d8422f44e944207c5d9564a20af332b9b50231008f8657daf672e1d8987889e8b343c1fb3bc970dfdee53938cac65fca26ffff9c2573196dcd764a698c5bf948c48fce380302047c435bb500673065023100c1b6f453cac09f9701fa1388ce85b7a45f616675afbda53d98de5605b65c3e8ea2e84d4c0a8b203fa772eccb9298a66502301e2b28caf7acdb1ebd458714071a6686196598b3cf3dd9a9f632dbc70109743cab045c50aaec6d0f2bac9d21920f88b50302047c435bb500673065023032ea3bf2b0e52da6509a1986d11953dcca12221f0d8b7d6e670c6ac418b1cacb47c095b6d96abdf7c1ea5b8bc5867277023100eb24004e5bb6d3397dcfef04321badaffe2a590837c6600c9abc6477ec9fb717ca8d9f5e743e346fa66a7a05adf004bf0302047c435bb500683066023100b3a4d0fbd2540bc05bae6521518f05cff1fdbcc5534b1045bfdebd60cf1427d29e8e44a3da0c207fcdeef1ddd3e5674e023100e11c3920b7d678bcceb1e01ea3c885614c3a18794629e1ba168434ae0bb6fe09f6420f5e30577dbc1140c0d0460f57ff0302047c435bb50068306602310080cc27b600d9a2f730d913f5edf8894b92f557deafcd66c0e363478a1b9535231fbce38600d2456815078ae98dc6ffe60231008765d299bc4dc4a91abeea426dc0d259154c49724871831a11a4356fe2a34440b29c6b844b7acb348f0368b2d65fc9c20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310094fd06ed34a93b38b93c1c67d14a1e813f475f39e0565db9699021a4207acae4929ea971c472cb36a81a7142cd082c6b023100886423143e0197f5a9ea004c6e5082bc24c16a72f31038268e1c02150afa3de26c8b3d7cac1abed2f4b2d5aa4d34c3f80302047c435bb500673065023100b0952af04848aa77bd51fb577c7010646cf7acdd4d2176f1bc5b672ae4aeb42bedc31e20a39088a7fa33ae3d2de39787023010b98c450ae84730f9983a3cddb878a87ae4641ca7016a03a0133721ded6b12eb2ede4aa2ba746ffff14a54b550fb6f30302047c435bb500683066023100bc50ebd92b2be1410256ce31246d712cde22a80af0806b7f125d864b959bbe78907dbca0ed7cae781d8b031c16b40769023100c5012f414a94e59c0e72ec4f57272b197ac2b59ac90ee39c4e4ee11a40b42f84d51db1bf5f85da26967cb8ab6bd8ae800302047c435bb500663064023020de4d50825ca4f5b2e98fec33e9d5aee0700535ad4c68043c0af7d8c7a06d65743cd2150f5dfd35ebe0a7a280c8171202302842e8f5c1b580c95e575e8f08f20c18fffaf82549c0447e1fbde58c3bfff8ee7a79c84853958f6cf171255ed2eef3090302047c435bb50066306402305bf4271c6a8273f31aa45ba98c3d4563fa5071c75ea7a83f3df4044c7610ccbac44aa827b176bb9f69838d8d5250af06023074e11e085463fe8991ef8c4298c2a3c81bd8b0fc087bf64bd7920717563b93eee0c46104e35e9eacc654d9470016a8830302047c435bb50067306502304964741627a9f0c388ccaa1845098937c9e24e5f18a0c5ef623a73ff10f461a87f326972a909119801bf58839b2e8a1b023100825a7303116c344f925cd314f530327dbd86428365056903a4d71dfec24c3fd411e889b95cf410c4763390c18680ce740302047c435bb500673065023100cb9586846f734a5faacaa940ebd6ff0ab0217c137ce35efcd6d383b42c0008773a10589bbb7b7bbfe1816999b929cf8402305119eb412a2a255fb3867a24fc9eb2cd923be6db557d485f2b12bb2b5370eb700d17451da5fe040b352e1d89510cde6f0302047c435bb500673065023100cb3f89096c2ff41d22c0f7d8ab730d5e64df42881cca30b6a7bc73fab2dc039b41347fc11273018bb49d2f66bbb2b1460230473ee3a78a0b50007e657a103722328152bb3a3fea1e66c71b83ee57fda69eed4987165fbaa590e347804e9ff18ea7a70302047c435bb5006830660231009f914607dd012491006b35ee6a9b1375cfadd79df8ee1c80cd912342a6806eada9712faf7c625892da052f0bba7a83310231008543e99a8f60d7b98087714650b5eaf4bb65760a9bad3a9d2ec445df921d9096b531cd0d469c9be9bcd967a62a831d810302047c435bb5006830660231009cd857791453630d7b8c0f48f74ef62385462e98c07eb435697f8c6a6bfb17144f41c636108bb0a0515f9c55e2401e2b023100c9d3630dbfa2aea1f82f230df1755f590ea0046664c1563e0a74903dd2402b374ba994536c1f6108dc235d370f4190210302047c435bb50067306502310089cb8587b1fe76dec2843c1bebb86af3fcf05c67d5c89d1cab8006e252a43f253ed595cb41e71e1f8d927dd364f100bd02307074d029cb5c71a33d3921dc1e3ab739c36e783432e4a963b0be0b844be55bf3ce7f01fcede0b2148b9c29d76fe96f850302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230668ec0447f86adaf63816cfa0e3bb203b5f525cd706ae310fa5d047aa3c0b77e24cbdd727325c71ab805796cc79204b302301dd7e291f8baeff0a44faaa4cd43fe4ff334d0ba4209374c20f1c51044fb97348e3eaa38ecfb68388dfe8af3b558c2010302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e131cb10fcbcbc6721354468438465e319a40f64e720aee890d3dc64390bb84b1d729a69d0e36531b01ae8c6afa53bcb023100c1330952070b5cd0cf68bd87a7c80b43ffed448b349c9b211fe9f0f8c50385b6b7d02196753d6e434ee5ee50e69fef190302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230112d69779ec01770bba4ceb7cab785040126207f6501d2be78863731e83dd5aa018e8befdf2c9a368b57d83a3047f646023100ebc71673f1f8073d404491ddcb70260c13c09f7c07c35f10c99e772d82c97374dacc4d99b31ac10942408369600ef2c70302047c435bb50068306602310097e00f92896c0c7b76a044181a338d6ea5760b4f2e2e608e9d1f40d763914ccdd68155e7e4c10c39655d5f15b446b035023100a9a092a682ff5f72272b4db55956a54d79969008a429bb4640e50a3557280284a42a127f2d766f67d0b51bb65724c3fd0302047c435bb50066306402307d179d9d7cabe0dde7066ec77c7511c3c49008d42e0c126976005968eb98f3d19acc633e9451ba1484233b4fbc70953802303a02500a97915cba93021022ecde04d903a97bf73558100ac5f025284f0b2708e52dd22e52e499b790c99ab7f456017b0302047c435bb5006630640230356ad2d1ec9fbb60bfb87351230c41d59123b1900bc92f08e621bb003ae91a876f3b3142139ae24b4a53970ebe9eaaeb023046c9a228b2191fe713b35478fb99916e4ed67988cbf3f1d6ee49c84fe38403e7a759931ae9ae79dda12a6bddb4a249ef0302047c435bb50066306402307d33e02c638e5fc76ecd15c94e34f6bd3b3630e6d89c6758ad466b30a897139437ace357a1cc4c533a06e565f69df0ea02301a195ceb0c4df643433ecb53a00c87f23d54d0d5643f8c8086f48fa7da6ec46a4a7b1c5ad36692b2f690e8acd01cb8770302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d01276bad07bf6f22127b51c30e66cc4b76104ed595506f44a91a471eee94f52c0fc4b6c4f24ca5c7cf9e02e54aecf21023100e4d8f4cac9f3f62035aabe2473e1528b3e56aa86fb6862c5554edacd18b8a7bfc8ba3db8564211ea1ba14effd0bcfc970302047c435bb500683066023100d7afed2a7f52ba0a2b3b53c339ceeb8f6ab15d3f2be9df90de164f51b2f4921a9196d24b37b43c1257b5149894c2f81f023100bdcd5f1443b098ba77786ff5dd9940d462ef01ae7666f26b215585145435e83058d086fd97ae7c455410c622df044c6f0302047c435bb50068306602310080adc5b0dbceb237db7eae60a7a30f9723322f9ad2e81cf4a5433aaaf10394064634aa1d4c9776010f57689a65b5eedd023100bd6117a558bbaa37ca018fddf0e6e6ba3db67ed0bd32b2b2e2ebd26139b2f234fef9ac11a47392b7bb1dad908507767b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f5ec51dab0ee0988ef0a5cacccd441078f20871d8507b2ff790fc917b2c374ee53980696d70fca3aa4b2b8eb3e7a33a8023100b9b148a47e17cbf888cb688ac8313f4428656d71988340111ff3616505fb5bf677808efd0c3c1c078177b908392f73e10302047c435bb500673065023100a4e0b715dfa4c228f9829b47e8caf569b710e8cd2eb1c7506cecd573085cadd7187e700afdfbba966a743e14feda931a023033d91eef0a4d8f97035972b5c08a938bce1f02172e7d4feb98f2e89147f1e41450b898b3be57c5b6d812e202098451370302047c435bb500683066023100a4012202f105248e7b60e9131daae5a0b7c634d1cd6170f4ede0f3970b64c797a3b5fb3f4eeb2d9ca002b98730222eae023100f367e3d117c1e0bfc2b267f4907b215958f56fbbef0a89aed6abc3c5ac2fb48f5cbb6ff55a9f64580891471554b357c00302047c435bb500673065023071c6e9af3009944e6c895a2b5879fff7422885339307f10d892f10720d59ac8e53e5e8fc38d8773bc2e4c1aade2219d1023100bdb5a75bb27abe777f571b9b5c29c6401f8b2b86b088f9efe3b909d31946aa1c9b686c59cb08989860b5b170d74b08550302047c435bb500673065023100e6a001edc9fe469338f1a44cf35dc2a292a9c877e5520075992a989c98804bf35fbc392c6dabd2441654240e35eb5157023016cc2bbfee847175b1f5bb56270fcf4616021d3afcad6bb6358314e3ffc428b3762078b251e1ed3f931f71051cb2dcdf0302047c435bb5006730650230465915ac5eb0b5ff80313979e41b9fe201a1efcdc549d20ae9314dde23c33573415b23c930ffaa3b4e216bac2c20d7b602310099b8143d4fe1992372aa78ab2b5d2ce0bd3a3e08d28fe3bdf5a9b7cb7aa8f55b04ae9e8393f3e4da0f881dcd9e099f010302047c435bb500673065023043305127d3406b9c7fb264d65f9ac0cd25ab47945a961a9e7698bb2c62078d31097f2994f9d76819d151fac7d85deb1c023100c5db22755b4a3df680b027491bf6ccaa53b62fefb62ff571c4c08e1e2569814585c0a43e415d0e1dea1e6a1617ce93330302047c435bb500673065023031af2c0182e3000dfbfb15110b418e65d8b3e58fa65bb6cd862219f2634a2caaa9ed50ad02f28d8b77c4060795cbd4a6023100f5a62b8634b9ca789ae3dc97bc19e63a052e93875634191df1d57a0718e203218fdad6db479e29b9b2475970a63e40c30302047c435bb50067306502305b31f8e50e27b3946ec2d59f7df454a364c6dfbbb3660327356e97c4d0bd1fdfeb1d4a9a4e3157e7b6422039c7f0abc002310084a1aa2bf7f357e0f0e9d0f8112ba8e5ee0d61f4326ff6a4b50782da69a6a25fe40b50e2ce2a197021d4e046e259d85f0302047c435bb5006730650231008b2a53f24eb3d711fca537789492b48079bf35080aa5fd60796bec715defddaa8debb8bb632a6d78ba463dab9818235002303dda3c0f187dc871cb404d5482d757c72c7104ea399e7895b53d69eb132bdaa43607bd868a4afe4b3161669154421d000302047c435bb5006730650231009bf4dde200f70cfe572e3e55292e1e21c033d316f68adb33f5dcfa3a206b29295596e0648b5f26827dc6f1c6c3aed93e023010134ab162b17520ce9f20f8bc3fe451de0de7030d5730e07c3efa751289b9ab70425f1813c81a6ab4bd8227d6645ebe0302047c435bb500673065023024ae2931b9f6a54659430534a8b6917451606286a35a9421d9ff9bec11538588b4021c1143aed1b13ad807bbaaf71705023100e8c37fa554d0ec46df919cf9742061d19a7dfe69954a8fa08c35557b8ee19430ae261ea1fdf756c0925b23a71aaa38bd0302047c435bb500673065023022fe9ede8341440ac3975b874922b19eb3379739bd7630ec10e5e50390337ea79e978033223c1f67ff3a15e4c745bdb8023100fc0f9b1da3da3362eda7b2c5ce8c4d2297fd99616912f9113077feb6c7a9648d25bce969e3602f5aa0689e313ce64a8c0302047c435bb500663064023011ec0908779d73e1ca3d06bfc114d3a1ca1a1de86f838cbc1a72539827a8989da93cc9d3fcffa5e2728edccc86f923b7023014eb502a8a40aeef0f2d88d828dd46c3374eab57fb1c0f74a45d53ebada30f6f4cc2cb4b2bf4eaeb357eed615a9b6bc90302047c435bb500663064023022ae64ced03e06f7dcfe4de5b4ee2837606e647dbd74819727b6c16cae4cccb477f90e2228eacb534339aa4055de6b0e02305714c655e3888771305d845be2547a8f025eabc274a6fc67a3ff666991477df834454cb2635e2f802b5aabba0051007e0302047c435bb50067306502304b1eebb9e2a419165b645925a83971b5e1a62c318e295d35a44982b6ac357eb6112fdc4afed3ca6b82b2edfab0016cd00231009c2d443a6fbff8e78fa2afc8bb6dc8f867e27c09e5467da8ca1fb204ab8ace41b3a82c32de24ba3c4c4d5371daf6cae70302047c435bb50066306402300f8b74740285d9ae29a1714c283e29ad5af86e3f83191db63938c3fda966954b7ec018eb042d48e939f0af0ed5b17ceb023050a09245eb414fa2157048ec9e1b35b2ef907bb342eddfde8adfaf6d3ed6e015fa9c66cc51221f20e59bc7b4af868dba0302047c435bb50066306402303e9b71b19ff300344c6ffa33c743e01bc03016cf020279f5a417b5851131248cb11a60f8bb503b230ffab26698a5eba7023057c5dbb336ef832d3a3decedc312f04433f025762169f275b99a75c8157dc9743b2c57c79ab937ac76f252ac26c1b6110302047c435bb50067306502303f9d0970eeffcdeab880efd8c6c0562a2e8fbe8cc39cb3e43682c0a2198aa850ea8c697a7a2c51edc12455796ff850e3023100dd05bad3970b03640441aeb063db9b623080d152f0685291891a61967bfc2da1f81a75569f813219140cb7aef48a90440302047c435bb500673065023100e6c54776c5f29f97a39b5a2e2a6d14f741cc66c72423625f3009398621bb6f1488934002d05b2870c1c0e5214faa99da0230784d01a0ddae231a1901dc66a67e94eb0ab332745207b3c20470099173cc67a293d8067ef6130b3487ae2d2850f591750302047c435bb500683066023100e272e9651466c96ce22495691428e91e1739ad638d0cf7573217ee343b944c498e3cca025adc839dd40cc590ff4c6f110231008faa023f1a2657e85ff18eda05a72490e0ce417ecf645a12624151a20d035360b689731603ee5bb7b6cbb71c133068290302047c435bb50067306502302257e1263a901355043250838772857fc1e7dee5508d5e00ecc2bf34ac8c96d0279013e744d361f60b28b526f58e1b3e023100cbf3fa79c37962038844a960a7e305722090162622c03e48ada28d01742aa00c48d6115d8ff016d737a735468d3406270302047c435bb500673065023100eb97a8bbf9c507e7a6a91bdaa8913e61260c84455b639329f6ed8736614efb778f065b580ebd87eb96110af1911a021a02301aebd8f00557522bcdaeeca0f9da65885b56800384f7bc1fee137cbe07bdf76c14c3663e4bfe34387a50a5d1fbf6f1430302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d4f955dec7e0842099e04b0961c6a4f40bbb6d547465735e273d5168d0cefe1d551e7bc13a4441839bcc911d2d59ca4f023100cdb2f136a1c0dec2aa55885371d2d61847e3ded4e22a5acf1f563f806ca3925a0208d2e65f6ce7cf47ce6fc5fcf916f90302047c435bb50066306402303a536cd8a64316a2d742e8c840cd56da9c5377b11877b592bd9de3790cb55197fd155ec4f15e6c344cb99bb3db22ef3d02307874a3f45293f2039330e7b699efb34901cc44880908761f104a2567661acae521f5fefa767a470c065bed4e91bb58e30302047c435bb500673065023100df0a7e92a3deec8f809f78054da672dc759533691eb32a6929aafd8edbed5e9e6972b5bb2767a0c128bebd76c1c90ada02300f125720fac00f4d46491e5993c0fd00fbaa8c9521be35b95408e16c8d30e3b59605f1dc43a7564ef64b1357a7fe5a6f0302047c435bb500673065023100bf55f4a27ad553dca36358267c4ea65a92db33d15db6222bd11102269ac58b146c8e2bc6bd7a86ba6553a58ef67ca626023072b599ce50db351d8cce18ee247635cc90addb027486516d975f6aa812e9e5b41a9af13d599d3d024059f5e3cc6a79870302047c435bb500673065023100916d68eca793e9e89260f211e7bbc0b6e9cc81dc5616d4d587d5a2f665a9cadae28ed6e4be2ee17ce90d230efdcf47f902300ca0b90fff7f06b4102d4b8e0223c533137e972216ff607938fb2957f6d8def204ef1728d469a1d166cab0cc99ef00410302047c435bb500673065023100bae62c87c1bd95461cce61dfdd89cc2c9c34055d58b1961d285e5406f620b05ddcf3bbad8b6ceeb8a5db10f62850abe00230379bfaaa97d56b4426f3137ee081fe2c4cd20774700f383018ad5c8ecc2c37ca772a0c405f2e7a8f1d4bdda354ec73fc0302047c435bb500673065023100a50909d37e135b286e861761c2b8d4f548e4b6fe06df25cd9b180d2295c13ee47b21c614e9cbf693bcf61abac7b3346d02305b88ca01ae4ef6e15c5584fd14a1a8148603d2b44b75b5996bcff429591f494a7c82ff3119a4c71c28ccc40f55254f950302047c435bb50066306402301180b440d7b5412763186a7437dd4c81338992f9148cdf19581aa1885218cf1211c139e58666ff8bd228476e391dc8cc023023cf003e1fc22e366a0a8b804e5e56cf461998e00b7bb21fc3f2cbaf3fbaa4d72933794eb44554dcbed988c27bdf6c590302047c435bb500673065023039763488dc75642ab6af71546cf3dad57ef7f2317208494a102dd9c856c513dc2d5f4e047005d7b8b3a8b4f80633960b023100e7723668e324898034e166dfc9b544b2b0bbaa59281432140b2b8f9b97bd6d68a6f2eaef302bc1861db72a3e3d417f530302047c435bb50067306502307b98d03f6afcff2229b0e68503544c9ee30d6221a1959df9aa3d208889706d9c811a507912b53f71ef42a60a85f84708023100c3da50d3c69b96b98eb8f06ef1bcfe8dfa625931215cf85de4f9d8305a924e63905f7fec12bc03a64a01344cb22bfb270302047c435bb50067306502304b2e28771d763e3e4fb310b1dee095620c8eaf89e1b17c7b06a3f2d14f8639068339faedf6e7aa65125b32a5ad7ae74f023100a5f083f2e5addf7930a33b967a4c7d8c1c0347b37a563d4b2107b324acb452840de741d7df899ac15d1402ad3ca60c2b0302047c435bb50067306502301b77bc1e1aaf8507aaf7ac76e917c5c0f039f20d404025b09b3422ce8361de298b055539feb1a99fc1d2b442aaf1b01f023100e578a728ad9c8470928eefab6d78f26cb22d9cc861e16321db2ac744df74de91079467dc947165c7972235876efc8f820302047c435bb500683066023100805b48c5418b00652f81dd19b20b5f78bf9d56cb0b5fa1724d6dd060572b1df37b3a043b5ad8d155e38408e16c9aad79023100c3db4b402138bef132de2ecb26dc933a00d6ce43e43e8d08237121c0984acc2c820c3f6ef39de396cfc25d08075854d50302047c435bb500683066023100f9bf1f8195d0b4bb8f8a7eacaad8b7233372df1f379eba46110de457dc0c0bda7a749197ed6674dc1142f15535f250020231009c02ee9b6ce68bf0ddce92fb68df74106b5645410ebf7413d3ede0d21f21fcd11f4ec184991fd44ba7f79cf701394dc80302047c435bb5006730650230380d61ecd446bf6c3324aca69eb00f3ee7a56d58333e974c9efb522543a138d18947f09d97edc73546bd39a011587a53023100dff561f189858305b49e378ae24d8efaabd046ca40fb577510f8c169305a8e2205e623b758df335dafdc64b14ee2c5ee0302047c435bb50066306402303011ffa86889f332b803363e11fe22e51c2a53342df88f8e9b3080c884262569910b49ebdd8fcde0a4c9670b9c9b7dfe0230108498938a00c3f19a8fe11e65d2e06d7ccab4ef17761675d54c73d12f510ac8236dfcfacf2a4e615246ef438651da640302047c435bb500663064023070310ab358a96eaa37dd7b663ed5478b96cf1e8099995989d344809e4b5d617fdd1cb6124b98dc9daad5ffe3bbddf07a02306505eed630396b246c07bc592b7b673ac884ab7e4cec46d33d5ffe0637073419fa95c2cd4b460b28dadc3daa62d2a39b0302047c435bb500673065023023bc1c81be7bfbaaad62234f5d2447daa63c02dc48855b7972ba6d2162a9cfe55ed7cc85670741dec1f2c0d7ffc6d442023100f8015331342dd96fecd39b5262a92db316532674e52527700e9a1d54ce614cebe1c8275a20b89fa4a8284bd137aa32fb0302047c435bb500683066023100c3151baaae9be42d12aa47135b60c350a402196134cba935bfd3dd8cc74fcbdb90a80547d4490771e3754b1c67d03735023100eb786b8504f5c2e1dc7b1d394e752d43ea1c460ab87b62992ad7c4fe0817430a8b9a585e5dae7d9b8ffb4fedb411905e0302047c435bb500673065023100ef2390ff583deefcccec8fa7c5dc66176f7be990828c6a2e312155a8d8ebb917325e39b3114e66be390ae1a53021a2c80230759971089fa7968bc3477de623604d3bbaba99f1ed23cd219c6f032b3dc44e0d230ceb383c697fc6025b2ff8fbd674690302047c435bb500673065023039b49ff59f5686b9b8b516f7deaf54a53cb74f65c70c0d4bd49c2907e9c0602e453ca53b570c32490dbfbbc5b728ff5d023100af4a728814a344fe205e74d8edae3065768cc71f16252b122c86f7dca8cd0d49d8bd2c2e9945ecf7ac4705f2be1a8ece0302047c435bb500663064023004db3f8599d9dd240bafe19e1098b419c6a852db9acea4ea36ca114dd18a8a3dd928417667a9932e49d89b73d0c99ff10230302fe53f24f8a27ee8c54c3aff1f0c37169483aca9bbd94335a6cfe1a0e79569cc9dae4ec76f88195a07a145ca171e360302047c435bb500673065023100877cc78eae6feac414d45c78b0a73b539d61d5cb3bdb4efbe4fae46df827e2d25abbbbae06fd6d59ebb9e2058d83c7a7023070085888197ce02f4bca65184d741d51f92986f9c5aa12b0ad3270d5f6cd5fbc912671ee7a32a2d624bede0b329d61c40302047c435bb500673065023100ad8aa28325ee7d29986348d9691682d8c4121e7777f6b752bf9690c4317bc9f563acc7878d971b67567cd47396ee0aae023017f17bf204f6e25156c7ff8754133bd2a217b8c7c3e765fbbf3158adbd72270276b48ce89f356527be07752e0d8437470302047c435bb500683066023100d5210cb961cd9b953d4fe68c63b3731e5cf819edcf3449644b0c1a4458b66a3415c7de463b5f356b2177d7a6566757b9023100f0635f1e7b56db8acee1db1622341067a35780c92f8b4b1c691538f3768ea726caccbc8e1d7cdc2d9e7269fcb033a52c0302047c435bb500673065023100c461de6e08ce85b8d73cd6ca003ec8eb784973670bf7691c7e9ad119c3e0a09398d60119ca93d64a4a54ee62d40b0fe2023036ecad7cf5f5e703c2292a9e341b48dd5469af6332de43046a55a8fc1d36aa41500249b397d5ff9c6c7f649a58dae4610302047c435bb500673065023100f7e4377676388e329f7b3ba7c15531bf1f4a36dd65c793023502eac2f66e4e1aec0331fb8e1308cc025075ee88c7d54902304ee3b9f5992d5d7701f0715f4af69f7aca2d9233c048139e60b2bbf995b450b182a32e8a4ceacc7a76d3abff0ba72cf00302047c435bb500673065023074c6d660ae025078cd17d7c26192916baac6218355731702d1e316e5c2a59f44a2d8adb28e49e5be44c0734b8ed7932b023100a921f92dbbb001eabf21abf5a8df834c1b087839a41171c28a225a1333be7edec1bafbe87e615eac63f70942d2229b6b0302047c435bb500663064023077f071bcbad31869418363470dd81b92cd9218a9efbc5f6274f50f4d13bb5a10e8a699ddd31735ccca50092ca4f34b1f023068d7d93f7de8c6b127a0517106db254abc8d8c8ea2759c96d6695e2fed9005fd8205d6f54578da7954889db9563753be0302047c435bb50067306502306cf91b48c3bc8b32d2bf864a36f358e20aa15c8d921add463c024d8e54fd55d1bac0b292de065c05e1cc5a570c2e5f6d023100fef794bf0024b911668a07ca9553435ce7b2552dcc7a157d483f9622fedda8968f5d2e4856681d7557ec595115f011ef0302047c435bb500673065023100c734e59c7d3577da8d16b3353c260a03f9d21de4e50cde1f0a3008e8037f5e74038591c5330082d20b2f26246f16734a02306b3f869b5ebf0c34d22988d73bf69007c66e5b3b5fc644b687568fc73a234f09846fda35411f32e424c1accbfa1b7c980302047c435bb5006730650230723e7f159ae15a312402ece4f46c7a6f119218cf9889da537bc734ce1a38af542de8507bfeefb8ff9a3709b6124e215e023100cea7df78c589cfb0d8b576dfaa2b41f4dc4b78560c84fa162ed74b375f3888d303f7281da0002fdaebefe4abdf8c315a0302047c435bb500673065023100b2876ae922f7e6b42c6d9a5a378500e740ddf3f467feccc6ba3aece2ce947ad3e317fb202f4e6a87396fd8724530edaa02304fafd2b472f22e0b7674260d6ddbb88cec6212ed914dd3aac9373d2cb099efdf19bfdca20d57d5582da41c55419d85dd0302047c435bb50066306402306c79a8fba95a9ec385a155dfd649458c285a9c7a459458f7c76bc9d771c8c429edc7f33c6fbe6c576ee32ab64a6f736b02303f8bdf67654c064f42d3545b19c0817699010ce879f50b2256f3553f68b1f92da24b85d18febf82c1e89a5a3686b3d550302047c435bb50067306502300d79739aff40099c0a25b62fca765da96dafbb1e41e0032902d4507626ca0e9befba8060e6c42009aa2c03f6e28b1f55023100eac8e6a35f141f45080d8669989b8f0ffdfa32b5c94342681a494672f9ab56c87fc7287746776825a8b9cafc9415f9450302047c435bb5006830660231009835fd0f6df9657f262a5a0b1ef0569f8f47bb77eebf50a4c3eafe07a1af76dbaf64016005a5eb7f45d6181a8589d416023100d1206848eebe49724ffd618cba1cbdab26da5c848472223530443b85134f790b70b38cff39f50fb7abcdc43eb5e269490302047c435bb500683066023100e75b5018d7da584497043576eeb6dfe7a2e4be8c0ab6ce01211d562e43d6c8952576dcfdcac52489884ead7a320b797c023100c5be36efb9d0293ceb5c3e3f22a8ebb750e2768ff2f91030b3d7296361eba20af9d066fe6a63522ba7d7ecebc7d67e440302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230411a165d52d91306531c7735233b67d10b062139d9e8509533ae7ccacc426ed022cf7cdaf8cfe71418e3215c46ab4298023100f1f97a882f80b46e6286c5eeac7cf9aafa388063a4d40abe4fe91322ec74f1322c230ad015273d964eb9b27c422b63f80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023049a9b4adcbf74723c8116a430af32ece8fb21cc1c7d0704d83ef4e25da7c5a61141603ee2f7a883f8fba82271dc654380231008a2592bf32b9b60775d85152b9e1de836be522f180183f81a6891b55b7b4c878e05d61afee97aa305ca72415a95b83d60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100eb1964f97de9ddd0d293a46b2b8e0da147c834da8e2d6f5f759249544a3cfa1b84de9aa62aa895ce97bace69063c857d023100bb9f6de9be9a74b6f11c94465c12ae959993cc043d3c49be582cd957ecdfda474bac6de6b89c02d492c1a3078b6f9b380302047c435bb500673065023100f7dfcd0bb7f967e25950f0028567af1bcd0f9ce1174971dc81c90b2fd0b5f708e3368e4f79f69663cc5646cafd2b560a023044da646a534fb0387c0dcf051004e4021cfaabb011a597eb36175289cdbea8965a96da65bf6e9ef6bd7a62c9c81e3fb80302047c435bb5006830660231009b574511ee9ca7787a7c5735c877466ea92cee50b599b62e092fa7924ab2e14c010bc4a626efbbef196790733cb85ccf023100da0f1404d6c72e587241e14b46f55c94cd1aed701690a018d268cfa6501c3a838e2e045546300d530d8dd6f0365e905e0302047c435bb500673065023100fce9dd4ee40f796184f3581217a02964c87a585f3d9b4ab3530605dd5950b73e7cd3171de0a2169fc316210eff30f3eb02301daa0401f858e3c63c8675ddeadfc706f744a721ff5c8522414b2e3cf3f8bf92c3165333879bd2efe15098bf95dd0abf0302047c435bb500683066023100c3dce79eb8e3f672dbf47c30b5d2c72ea49d4b02962184d128a1e4bb067dfe11aeea7c451e127c48c79aab201d930185023100fa04ca8f367711b2524fabfdf26afad9c1447ea5012795d6d36482d6617f772cb7506e58129d216b78435983e544b1e50302047c435bb50067306502300b33e4293573c20c00914f74669d3eeb9df9d2e3473833d378ecb7ea01f1f68a4c308f7ef7d88eb7fd769c8c849feb87023100c09f888fd1e5629dc7a30a25f11bccb46075ccbb4065fb54da04e824703ab45a85aa541c2b9842ea494c42da04dab5460302047c435bb500683066023100be3f3b881e4e84d595c77a7386f0d4d8ff5f7acf02c49e952cbf8dd7b9da4734c03848d33ce417a25b0905bdae709cf10231008c3d2ab2fab4a0539091f9ba3292301e170fef6952ef8345fd5bf06362013ee303b5c58e612695d530382e32ee06f0580302047c435bb5006730650230277255b3c2cdf6b148098540a06073876754f661dfe88a1c96359d850e2d483c068b72c069b77f8f79e1e9d246bd7319023100dd649393feb6b3bedddbf05cd0b93c10fa548fd7ca0a7e29ba1589bd53d5ade19d9def2eea91312c31f506a73bccc1070302047c435bb500673065023100df6251261057f17f161cd15840bdcc8bee94cf770789b529556dd995b64ed697f015d3b1b24fd991e3cfdbb29af3c1c6023011b53f07aefd33eea1e6ac31b8fb38d605a8f416bef4fda346aeec685a1c381bbce0f0e345432e5822e5f8f1c6c0e97d0302047c435bb5006630640230744ca8ee4be7ea8d7496b304c1f24c9690a8647b69cc975d5f287031513439b0c72bf4a88effc61686183677a0caae940230452b17c394e5abf799683c128b3b5bd75307fc72b72b791dac47971bc7c02c63f6dbd1cea211922a86f88031f83910f40302047c435bb5006630640230497097e03ac95b4918a75c68831b5e2cd27d233e8a306312923d34673d105c3682e2d56beedcaf81847177090a09daa202304e64883ed0a617255cad202e359ec2a7a34abab3baf4106cf6b2026eac055432a9440dc34908c78dc06c4cf55e344f790302047c435bb500683066023100f32d9ec5d9d0d29ffc175b79851ceb9f31daaca0281ce0022575482c90b56ecea4caa32a481dcd408ff38a93ae67807b023100a69b2a54f14aebf57091be5332652cabd2b3784bc313aac28b3ba8db2d009f29fb17bf5282a199ea8a700feff55c1d410302047c435bb500673065023100a047a6153ac4ac56269ca0ceb1a18b4f61c2953f00701c20c71a5aabff1775ce5066fc15870ccde453cd5dd78ff77fb70230140bdf88715eb3a331cc5a2d98c9be5ecdbb364544e1f7824941efcf2fc2c9c476bbb7f9ded26a87cf72c770a3b6f7930302047c435bb500673065023100ee680858c8dd8922b947046d060b6a61e2cad4a20410b886b4d317adc9671e8c5d011a5548b9f800e3f2e9d7f12100ac0230778e1860341790b20c76d14288ad138c859717a2da7270d0a4564a9e49dfad9d92240f8ae06bfe93ff4ed0f481c4f6d60302047c435bb50066306402303fcae12d306e43e8fc3212618b1b2ba78f34b7e79ec92731eae1e2df81cfc8aa1dcf53e66c266664b4d7ed80198276a4023032398b96ca6e8aa05dffe4d5f67692d71de5b7265dcfd65eee2cd24c6f9444ea36f1a38932267ac61cef8d87249e08b80302047c435bb5006830660231008a259e6a24fd1ecacd3020db86364925ee1bdc08e9dbf510a48ddc4419afae62fd5962f73dca735807e561f137f50787023100ea4d86d305bcc386b361f3be933aa39b0531f83f735df9db395f43c36b4db9cab88798c0a52302770e8b8ae1a00a09bc0302047c435bb50068306602310083cf9e0e9c972c60e1ef887b0fc58681ab9cb14768282ea4717d04d53de83f99408aa660f018e43036e9e9d47a3efe0c0231009318b8d6ac4c9878ca405d2dd2bd1d925745e6d6ab46f11fb1dc0337d7792b27f651b283f4eec8984e9e45faec0383e00302047c435bb500673065023100dcd1ed4146ec185bdc71a5c95daba2c68a3d63d066fbe3c9e0bd7202e5ebbe8bf23946e79ed9eb882ed152c507718843023020bd92fe6549521610f40292efee82be05644c3acaeaebe367e4eb6871bf0de82a94e5e0c6193856823178dbfcfd17260302047c435bb50067306502302a0e6686954783afd4b5f02184b99f4d78ec080f9ff3dbebe8f87b4bd4c433bd114790898ba5aaaabbe21d4cf971b3c1023100edd3aeafe999ade6d459c61aad0e05b6c4c6339755aea26c6bfb1baefb246d6d4144f980e2b903095729590d646bef150302047c435bb500673065023100df71d568341f9bc4a3f257abb502abba59e7b1864e471781173a585394f96182db2bcc627def3ebb83ce62d23508aaa402301ee0b51573fd13f4dff8fa7691a9c88c46f9e1f4a142703668dff9a9a2393cc046037db0deafaa11e552c2595140437e0302047c435bb500663064023024043b21582ef011f05d98da484d69292e5f48cdb69d761d68afbea44f3bee14715e1d14edee11016e6edd15d39575c0023064d3f2a8d7a72a19381cf553a7f64fd33eb91bf0aabad65c98ef5ba2ed04b449a3bc067c6831ff7296cc124e052eff590302047c435bb500683066023100b0d7b3acf8da8fa52292f6d14f12f0c43bf290e5eae50d432501b1aca7f7a090cc154cb542793f5b0275355aa37885a902310086f974b775ed58384488adc0be7c3a93c19ac9d7e3ba1da963219a643134f127d29d9756c97f7e6eb995f756a931c9d50302047c435bb500683066023100ca1667afa13a4f567f4ba1897f8ca2a6b33ef16ab6c80f61f1d9b90e02442df22179826db8336041cf05f880ad089c1402310089a5a6f077d8208334a404bbfce14b937c13798057cf0c5ba44561c2dc17a2c6960de163e7d0b8460f55b459c237fb1c0302047c435bb500673065023100d629bf5c9779e006559de8a089ce9b8e3fe6419c1ce143e64abc8be95d469b56cf4215e481eda47c2875ceab576a4ae9023074de10e648bf95a8f917296c4517e63ba4bb61f48fad063d85361cec769b1243025b792e699ed0a517f805605820ac650302047c435bb500663064023014facad5a6750a04f3ca2dce44c450ecf904e5c00739bbfdb0b64bca342a5e915ed89eb6685f8abc22ad27b3d9cf82ca02303ac73b5532aa23ef1665e32c8d025107783733bc140050bc59a60354478d1c1718b0742be501e0dafbbecf513096e4780302047c435bb500683066023100cc6413a8485216b7ce340412277ffacaf71acd1bbe165eaa0858e926d47fa9c8304d4688856cc2037b81ddf0ea6e70ae023100fb23e6b0d0ef9c77da819412719861dac6a5244c3f881a063f07008f36d18731e4191dffe88000c206506c26fbb10dea0302047c435bb500673065023100811b344fa98f7a871009d16ff9570bb42a9868bea91a3f15e37ac859f719905e7c9c74e4e20ce96c6e5be4fe5b62536a02301e362631a59d1d4f44928eefaff3e176f8afab1f2f2b959b510b74b125b8c6b97dd21086d0c3daff46b7b622f5aa58af0302047c435bb5006630640230198387d1d6274b0f38e1ef0f5a79120b88c20c0f14a82b9ae444cd2c1c25097a2c22fe4a2f43d8d45a21878b64fb2b1302301d9355db783d4246d5b8a7f3800f51f3ab9db8cee062ffbd41e49c9c97ea8b3c93561044ca7e45e6e05b977f213481ef0302047c435bb500673065023100b96ab6578d1b23028f4ccaf245314148066dce4c8398b296a873639e8375a83aa2f4174094726c13f9ce3385e34a61a002301a1c5747c3c3a3662a2e91dbed7a796085b73971475f34997b049755f18f54ee88357617ba547855822b161e7582fd350302047c435bb500683066023100afcf44626455469ebd611f6665915f5c697a8a543946bf698b04f5185de048530320a0634a275e29813265d069d589a9023100edcc1c68174cb00658dbd1da6a5403444be0253ee424c5d0db8cbad2c5c38db86be287e27b07b1a2b8d1382e48e6ac9a0302047c435bb5006730650231008c7346759a60fa10cf19137c7791db4563c2b1401b15e7b4e29ce059f295fc743defbcf77637e2ce5098fd4923587822023003f9792cfc85b6e6bee22b09e004dce097278985401da22fd7a3b78704eb2d671cf6c38a591c0d1fc0c66328f217ece50302047c435bb50066306402303dc651938050cc59a6a12265c43d51d756016a376c18b0102504173c0f99ffcecd1cb59b0fafa2d405f000b5f2ba8a3e02300f2699cf6df8c5dd9a2d96c34146fc91500b17a6d528e4a6b728e84e416e6be503324361662288b17f0e3a98d82d61330302047c435bb50067306502303884111eda6b91d311894ce805b2c6c4cd021c410fe4eeb176791587797cb7fc23f12e8744c70e1b93099d85142d7290023100d8ea8fe9b44735507272e29fb0793d8e823b9e0fd2c6e2f3b8060477b17ad9348dbd82d73576025840bf82030847119d0302047c435bb500673065023072147fa5a230b38c45212e999926c50b402ab19b58e8462a9e0e3a5c3e29159cfb3bf2d8b60cc42f1b3885af0abe8755023100d601d8e18c73f3552bfcc1ea63a38aa63a50fa711fb12b5aa21f80c788e98caacb10c221c874236116099a5297322b340302047c435bb50067306502307c1d6cdeeb1737102c887bf3a11a0612a24be6793c03ab96957d9997929c97acc4c611dd184785483fedabe2ca1126e0023100a2aa3806cc890f825e0114a779531498704bcc074ce7c08b11af8ab5ecc30eb0becf3fbed1c0bdb162370a78f7220eeb0302047c435bb500673065023100f7fc9f5fdff37b13d39a2c3e671303aeedfd0c9fbfae4046a0611f60f2532d217a61b374f438d971f015a31344998fae023012a34ce6cfde0a2dd9bffa95fb720e961886e116256f4dc03478fe4bb9e4dbc618aac10f005b0f1a779e3e146ae2e51d0302047c435bb500673065023100e702d1737e97689493d2e7af072b2c84e1fcb743c49752206856403b1c0c0a6590d8f3f96d5ccc7d69ff80f9ad65072c0230046bfd4421fc6ef51016c5459180092f04eac35e3ed59d751a44ded633e7c60647cd93db6ec62cae090cb35e003d104f0302047c435bb5006630640230039878a693d42954bfb21d0c51852dfda75a1cb10b3fd1c297d9bd14be5d357243156d986abc67d4f6150b9a186ff1a802306c45df254c9f9fb0cfe3d3b1c14ab11392bccc4b192762bb7ba82e01bad862a7a18e5c176aa2033fbcfe278cd2ef0ae90302047c435bb50066306402302b7e1006c82fc564d24a179600588ed0e6076d110ae08c4ca9a4a70779919bef93d4806521e02d499b97b4e58d6d6c4902302e5e541f489e837d25b684f3aefe881e8cf2598693846662c7e5b60d45d9afa6786caf70081a28377d919147c2aaf4b90302047c435bb50067306502304255fb48a6336dc93eef8c1fa3569aee4d433bf52fd5b4a8177ffdd68d01372e1e6b10d18447a5530416a9cf7a67fd1e023100d1bde2da58b0a49eb04ddd06073e52e0c6cc10ee4bbf3207398265174b1ee07e797007d004a1d0a6c3214644f4c5f1ad0302047c435bb500673065023100fbec1aea6a44c6d67e1ebea25d8061e012f6e6bc118780842ab8546c5a0be016ed2906aebc1ef092ccd792ce1a2bb60502302466f4c911f3716d6416485dd2f6666208dd203b4029d41cf814c16f72db1c0e1a93123d425e2f3dfd6603192b0625220302047c435bb500683066023100e3f97a00e113143f76ff5163d645054bc593ec1674d37b02234a20fd4e7fa50da694ea516f4210d696ce3ee00aa8fcbe0231009d32212255baeb70f666e095cf3e8125919836c72764aed8c6ee633febfadeabb0564ba066a529c0482d3022302014bb0302047c435bb500673065023100b0c2c0916a8d71efb0308647eaba6cd3ba824fa0d3d510b1aa70d47acb87fa2bcda58dc9d8a61099b7173a575c3abba40230481c5b57afa6e5cd6356e03a9ea1f68d2cc6567a2582cd9f6b109e0d73e38b2ab1e7be0705729f13163e58a7cb8927720302047c435bb50067306502300c0767a457d45839752048502f42c6028c9940d0a2d09a785ef02bb33c521fe7d8e519435c11d4b04d20f038bb2af58a023100faf13de7b2ff0e8464502d1fa890b4b7aca3abe5a7c27c2b9cf1c572ad0d9f6ea6a6bd26f09d4d1e8202cef865a0cd090302047c435bb500673065023100a305fb975b751418ccd6aab8665621016fa24a534af81cf7aadada001d2bc058b0ea28aa37c0b7dd9198078105a86c1202304846f85498beb67d6cddcf9d226ca224a53fcd47f02a8af4e19803c1d38bf158a393e97aea45461e74601b6310fb15680302047c435bb500683066023100cb7074c5c41456692ab0e7585cb6719b0f883354a93c48e01e758bd7b8e348ac38d4a0dfdab76507fbbf3c154356943c023100e3b49d27b17b657ace11a18bb24f656b3c9915b63cbdaa37c49cb0c758511f2a692c66013b1f8358bd1bec20d5feacac0302047c435bb500673065023100de7ee501fe240f75e989bd826fe28965cfe3012636eee9f36e8c45b6227f42bb1438cb21998fa612f2a259161779aae002303c1f5ec65eff1ef53a89555d6cbb4650e844d2409f2093fd64efb6f0fcdff05105a72f20af27b4565d80043bc01999e80302047c435bb50066306402307f4b36adbeb3226f39257585ca110567e9b69a8b376d4f0aae8aa1b5a8155887011a51da4cad9461b9fe9500a77ce76802307689736acb16d89c2332978d90ccd2dc5a57ab5bf61d34ff56a55a81386dfd3367f5e17f3f4ed0d325124fd7013965e90302047c435bb500673065023067c08d8a62ee5d46d78338f54fdb4faa159c8e18a9f97ed2af5ebedeaa1874aca69567970e2c219dacd2a1c9b77c2f05023100d2d76b7fcfe81123f3f07da15ea3efccdb862dba291d3d0ccfaf6db52456165bd33954172c10f70589b076c1b9199a360302047c435bb500663064023057dea32bd8eb2ab5d1daff524b05e5744504adfac01b439f7e61ff7299718667431f6a9b36a9d46d7b44dff003d26fe902302f744d627a6ae2ad0fe523356912e2ed3a071743187d7615ab93e75f12d0f630cd279f0247fc2bbe0728180db5cd6cdb0302047c435bb50067306502302413df60c30aa994aa71b4dd1e55ef34ab905f0dedffe8a96514eb90a7c7ee994b2ef10ad62a9a35ca4bce9bf5c3b4ec023100a9c28124c3609ec0c5ada345aec3d43743517d45768c38eb825804e39b8358435fa74f066911ca51b9559dc1ebeac3f30302047c435bb500683066023100bc617eefbcdadfd97a518c5067c1db5b444aa45f5cf495d99cb963b2314b9f3b7c5049b3bd4013e48367edfcd84b4b2c023100ddd95007fc1839cbde6573f23f1550a8572e4df873ce4f7fc4fb899ac198d80a1c3d95960bdecfa195f086029062f26f0302047c435bb50066306402300fa45292f491996c5f5fade887efd4a9989e694a39a9713380a692b83ef1d5687bafdd9c51ff13e1f849141cf17efb5202306e901477e566d0b0549e5fd08f3f6c403ec27e24d4aa266ac94e6bf1c84fd013591268f4e5e9a86a69f934be21067fca0302047c435bb50066306402305a5e6ea070a272f7302b81d201e0fb49320557542e32240d433951aa85c9fb135bab4f2baf4cdccc7c2651a9e141704b0230164b45316e1a37ceef2002cf1f7967f0a5a53204f8b7714a6851e4acaeb339b91146fbebe5fc812401f5ee697e8d03470302047c435bb50066306402304750ee568f37d67186d0dcbd8248a00848af6ce0aa1311cbba54d30358441b7fb34b4a6969f155bfd4130e86e3dc4c0d0230058965bc2c277fc03b4379f010086ed21d58828a9af0db925290ac5c138b5c63ee5cd159ba25b1e9283c7fb9120bbbdd0302047c435bb500663064023045d479469a59afee7920c58d1688bd94a50568f8720d3e6c4cb4cc00aa9553517764b765d8c321f3c7076c4aa605070702300bc477107dece6af5a4ac7b3c8ed24a79d1e4776c77fd39cb0e403499511146f7d5b36854e75209ad59f49852f7415130302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300953f728df142c4fa2b8788a1f864a6b3129de9f1e90f5edc4a80dda2e49abb1bc4fa200eb47c5d70e5820aa8562738b023100f55c1d7dbd9147e90f820deece112a359d5fbb6f200b8b0e8347ab57e5581e9d660d9a97b77efbf9f8f2f5c138e455200302047c435bb50067306502303a9f5e281d22baa8dc0e47ddee0cc1142b57f903dd875d8a63d288234d1d0f1e976eb944d47e729c06b46e1981c7c5d3023100e16c3f179408fe19dbba77b8107d8f41acb42ab5486d54af2f6aae0ac7cad8db79d4323e59d7ca740615a7e91422ff890302047c435bb500683066023100d6a532104062f1863bc45af9dd9c8e0a2af4cb5d7107afb86974821d9690e3505302765821217d3fd80e47afbdbf70d4023100e0edfc29560ab40351e71d3880dfb77159ef5d0100b05c7821e92c31147d4d1e2af3f5f7a2822e8e902706b77c9b84ff0302047c435bb500673065023100ac3c5f92c48a69dabac912d18caae0b000b681b398d9e9fdc5116fa9d9cdbe7fe5796d60631bab9be1b94f3a2f5596f0023063ca0afbc795f73ca4ca62dcda4e17ee681122413f1ee13041f17f76adce6dad74e0cbffa911d7e904077ccf0d5820140302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307813fa0c926acc12aaaea6273e9191aacfc82f977496ed2c745b22338431f47dd914f39c979b4df19055867749a8c77f023033fab297258992cd6dd34300a5fa4b26ccb728f16aca142ffdf8cf0849b9d4efd8603b6d0ea9f1250452ee0212fdfaa00302047c435bb50066306402305555d17674507b6d4a1f352a65c432f09a81477533621f742a1f8f6788d819f11e053d1c7707d254a628cb9c55497d5c02300972674be7b0a15025521d0eed1963b093e1bcaf602c513becd7a3a47fe7b99f26ee0cb68876024c3411ec2ee6a7ae110302047c435bb50067306502301251bfb0b403f4911e6ed2b477c8cacb657b9fdb4150efb83df3dbfbb2405909f4067b249f823b33b1aedad7aee6358e023100998afa6b91fb292ec17153af8f2891a346879ead4bd56dfabc303de0342724d476ca490fde4487b639fd98e382970c250302047c435bb500673065023100951e13323e1d87c76635852d2f01aa9cba79f009fda38f2241b60f5ce3cf3d19267ac3010bc23407ef9aab850767b98702305d2baca9608d2cc0425e2da23f9e2b8ffa3f8b3b153424121e723c7bf6c3275866ab68ec3f1fa1672fe5a0232b8c42e90302047c435bb5006730650230236b4959fb33310bf54c7970f960f7cb0a9df902cd7b05a5738476a1583662d655850df109e3afaae1c73b6b1899759f0231008ea831806c9650c39cdada887fa8b4061cbc2bd244f6f667787c14e39ec306d4304669e34ba73deb140904811020fda50302047c435bb5006730650230419f97005e584eeae5b5000f4e2ddad8012526f294e29101c304692ceb4833d18e00414b4184936901b9469f5592843702310087fc85990227d2a692d066f8f35c1735e08c50871af48cc64eb037298ff695fba641759d4314844a42b73e771bf0a7fc0302047c435bb500673065023100f87fb47061b5658d3578a3963ac075c0c5add49151e39b6b7361509dd04fb67dac77af750b5eb69b9e27dbff0ecb01910230356ea02b313a03f67baf5e14b6961f71b1c73bf570cb8a3af68307a87cbb453ee4745e7bb3915b36f33c4ee8358d04d00302047c435bb500673065023100f6d3cc02c96cb0ad5fa6cedbe8005d5a7a730e933fc8d268893970089fce73486870636a8544e421c6bff6dec87eb6d30230492f876b78017d092a1346676262ff8e6bd4cf1731bd7193bae6c2a1bfb9789377c1b066519f00e934d1e3790d0882140302047c435bb500673065023076a41ed6eb12b976d2491d87ad0325e17b6365b7c17139458e7bbf5a873b6a563ece1fcf3779d29539702ccf5df85a10023100dbd48f57455e7e48325e91dac14a85408ff60b69b588e6056c9bdf6d75783e1b06b3d0fb5d5fb8bd0a2e05870134b4900302047c435bb50067306502302bea5601f752762e507f2100b95d31e745c7037e92c1caf560dcfd3cc352914644bbce4f2469e2f16e21247c626e0f57023100abaab8cc00f05a5b0909a8a9bb819e0234a370df92e4d64fe6f1457ca2541dd488d7b1f1d499efc6d658af2d27ab0b760302047c435bb50067306502305d28d6dd81a212e15252de41a8c3946f7c7241f5e277856ec6af0039f06ec22a0e981aa230dd025967fbcf4e9f36cd03023100c17dd78eb92db66299b3aadd053cc137b5c1895ade05ad80a5d5101a61a245e4602f8287ed88d481e95a49578cdab7ba0302047c435bb500683066023100f520f4ef4792c0ab0a5af6958dff4bd09995978ea0299d7fdda8942ddf8dafe0b168f2525a79a13e2a5df36cc1557a510231008a90dec52e187e02e12e4b1abfc198575ef93a9763e4135bd679db532045fdaf302c3cd27e6645537c62232c78b0ad100302047c435bb50067306502310084fdb45cbee0b5f501c8041ad1008bcdec61128728910153c6a5159c8315210cf8f903be1b91619272cd833f6d0f2ece023041b21d1cc7109db6433a6fdc6fbc6954ff4288d8ea044bed65cce3218e674b00ee070c88926187676a2b0dce284dfb870302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303493795793ae488227c88f602783bc8e7a140918fea82ed95daf0af3df059722843d4c4cf57e2cd87a2938efcfb1ff84023013077e43c4a0984d54945abf42c9730886fb133f4f150cd789ce9a8ebe7bcfbfc3534fe2bbe7a699aa4e46631446597c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cb71511aa6452b08a23472583d5ce0f6c4361d25d2520186305af382472588b3ec457f83a4582696d5ff5b1969a24af6023067b4f7a5e4b711453c16192ce7343212a97c7d8d5654505b2ddba12f459b99f83d385f1df4ae3013372f66b29f0209b80302047c435bb50067306502300c811430725f9ba10f99f8c2ea61207f19ba4caf34f7b414239c2c5418495f2b95778fab2ed216897764746168c48ecf023100f316e65411dbaa70a1d171971d02232427f28b348c9e46db99d0e59f45b755704eed12026735f81e8990ecc39234d2900302047c435bb500673065023100d02927cd036753231fc756699324d174ed3b4c2505d6e91b054ef39240371942ce633fafa62a62f804e00ede665c06e702300a5ada7bc62783f2fad7a75701891050d23e0a7875ed771b7dace017bb45b860c5a6c7d58f083f44e9bd6154a40d52690302047c435bb50067306502302066bfdc5918347aaab60f6b76ac244fafe3a25d4f4995c5914fbb96d5e45a2b4e45f4162e00b5e27436bc31e7f7670c02310097c9edb49fa42ab1950ae939d2069683177c6f535155d934649411f061aa4f3aff3c025ce457b13c05fa845ba31661d10302047c435bb50066306402302c9c4374d687f905a826a0db5be2b5726ab50b84838b22727d40a0c73dc01a02bf437f947d36aeef6faf7b9a2733b7c4023069168d7e4eb216323a7baaa54921524430fcc3dab9a604210b3dbeae5d4fe98bc4c8b49a16637b58f7255d2823832ec90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305a1cc7a832e635cad59365c1f55ae7343efc0eb4c220f22ea67cee2982bbd6472d0afe32241014ab94c6df8fa3f065db023100dbf72f896e41af408e3ff5d1aad54379a16aed636116c8aa33988c9dba08412efb07711ef775c23c4f34a7c87990d7b40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e92e1817eaeea47f06daadd66933ebff96b63e07437297b52903df6f6304cff1c8295eeef9fc0b278fc7475921d999f10230527c12ba79cc7fa992c8faccce0cfc27dfb2f4b8baf100ed5dc375463f52ec084191f80544c9e4bfd2e759eb55ead6fe0302047c435bb500683066023100a1a21c391300c795ffdfa8f04279f65fde3d49c1ee524c8216eeae2928f7babfee52b7e253923ee77fb4f9941e03e3c2023100b6b3d518e21c7b1599221f4787d301aaa422d93e1bbd5d165a14efd03a50c2cc6900ab92f9a4dabe1e3d78ffe5f0bce90302047c435bb500683066023100b368660935480462d22964f1617b1e04176f051849cffb82ab84089c6a764c9da8b74dc53423e003374ecb503f4c3300023100e76db889b048f0e538702381043a2dcb57264969e032b04284e52e18e2e50be16e4591e8551943826b3e24e47a74e28d0302047c435bb500683066023100f15bab2ac07dc3c249caf18810355b9e004fe3fa2a42b399b50bebbdc0e56bbf45b9183a20e9d0ce5efaf7c59a301d34023100a3606120134791757b6d252b32e4d215fe828e7b3b1b9e1445ca931141f26f6589db1bf727993cc7d7fb636c42f90c4b0302047c435bb500663064023034a5da1de30577e4b0b8606528f3e3054b6824e2e5c1e02e1933d1ad6778fc26144fbecde08d092911bb9e44c44ee4ed0230357707f651ab33f601372ebe3970384462222c8faa76277f3f8b4b770ee0b6356397a6684fd46d874a1bab30bbb1ca170302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301c8f1dd406157f81e881f2aad63d410549b1ed6e465948fff8e11feabfab9247943f01de85ac9af365e30cf7609d1940023100826d39ac61dc35b79a42da14d303fbc8472c33e2276c1f41b0ba287b99da7fa4f74e129ee856b38ae29798ec75b37c560302047c435bb50066306402305e93fc5739207ba5fa708ebd8f30af831289023b364f1e7a12cb6ac2b0b2859b9c916e3bb2cbab5dd3e13fb7f92098ef02301b193bf93e1232043d6f2b618a65b62653930bf086ca0f074de91e678b26da9f3a64b280a42d21c08117b88ecab7b5480302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023030a06d283dccff4f554ba5a5e4c9c44a1ec3d5a6748e4ef2547b8099469650dc0274c87697bfdcb82d0aebe8516cd712023100addf9e4f45264ad791ff5bdeed7ddf773123eb3a217f03ae470fe4db8e9d92250ad067c4d19310ad0559d539d35b6cff0302047c435bb5006630640230182e0c752e35e0065c8af8c2598f9bd6fef07314463e1b6410042fd53a559ef8d99e118a612f29e26217df59ea0b4126023022adb8116e0e28dbf084743f1a244bb9891b424dca504bc86005505edb76c2b5ccfb193617d185ef72768b09546e51810302047c435bb500673065023100aaa98fbd17d04eb5ddc8f992d667eff3f37831f119dfe18d17e45e07a2ddcc0df0d51cffa9a200aa16ac33a5d5403cb0023036aa048109670f4a2d29de120e5e136f33120c7bb30ef8a3a1f553709bf973979c8b5e49ff12357ea5bbca3fa365f3e00302047c435bb50066306402304bf0430d64fc13f9e83b7defc6469240fbd4a6768f046da33242cee4fc2ecc6c8c1f5f20c5904c6db97af86957f66661023050e5b55eaefc76e17cd01502fa1fa75d2b5e695b8ba2853582f01de3923d4f5b477b9bbbf4ab0846320f412cb576a2050302047c435bb50068306602310097fd7209d1eb043d1f1a10c5af1a3bda5a899676c9cb3bdb57f5cb75721b4f380b932fb4a326722c8335f0b2e643c6f602310090be093b93b98d6228c46596a5dd591458ce3711ae4e4d0ad897af44527a1737d03caca62889df0167b6231b705715660302047c435bb500673065023100937493f4afa51ad7f3bc467a3f02f1f1b32a74ab8c4de6b8f8fdf280c6b1095432432f093263d72e334455b84bafb53b02302461937f8e558f496c2c216c0c141948588cac7a0fde2a10adadcb032d16ae7d0e2418285fb5eb0e8a7500c8b654ecbb0302047c435bb50067306502300238c8ad9102fc0c22d40105b525f4530a902fe568043b243e55d265f4e3e96b41cb96962b4abe8b20e28e2fe658af9f0231008c2467a234ae2982250101dfe70653004ec6eea9c6dd495479bbd30d14a2090d41bcbaea0bdc34f7b94efb60ca52ffa70302047c435bb50067306502304a551c1026c1fb287f3c5700b6e89e1259dcb83e2e82d9a086c140a8aa4c712aa6941ad4f14a45cdc577bd051a2fe0d60231009d7ad8ce185d12043186f7d341a03efc07fcf79d1dba03f4c97e05163e5b45a9392f8adf4f9a5efe330c0ad7196c6a740302047c435bb500663064023052107d304acced829dc6aba787c01189d0db33c9aeca0010705cbdb735b5e07e4601f6cafc05f79a001a064af917b77c02301449445b49b204fbd72886855959b6e468b58e5045ede5ba3945ddf44004a91d756eb9c4d0df65e9fb1f04439fc7a18a0302047c435bb500683066023100af56bdfdd2d32db6aedda77122de4332f9386d230601d41817235f91b9eaf8e3a5c31c0992f974fa9ab54fa098c92f3a023100a7c003364759905417515437d345c0207c13502c2d2c6e0fd4e2bc35a4d67b3d9791025004470cb52181caa3a4975e190302047c435bb500673065023100f5ecd91d28515ed33e1836c3c7f70495001b212e95c2ca8e63b81c388754017a81c145ecca4286e05f75bf5587e486a30230605f507791978b53db43c5aaa92c04dd86f21de31642c35c000691c1ab41109dfab102926d52ca85d5a081a20b3213f30302047c435bb500683066023100ddf94600ab7e855b2f80b89e4303b3f233dd65b991f9e768cdc7ceaffc4d6548d8c595c5c93f93fa5e13127df89f35b5023100d74dc3c86de14b4e4e8036e94c60fe66f34466a3dc24a6e61a36156657e9501aa73d5d9f97607598b66ab17cbcea15b60302047c435bb500673065023070663c26d66e9193922081a43cadfd525d15d7ca3f048264af5dd38fd438c9beb1a7abdbf57938134a9ce36ae083456d023100e927c810e8a06eb68778211264b9148c4429121c87a2b7d427e2b64517a82e93c14ebe482f194f472861e9c11ad802820302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303bc11f01718243c3e5f5df33b9ed227bb3f5afefc8c95b9eca72a69b14203dcd924e649e378d9ffd8b80dfe75b439a2302307db55689d45e7b2fdba3cfc67c5c43793ce0464f3bb17c08af9f4e023bdc7bb758175c3916ec463095a7ae2c22c5188c0302047c435bb50066306402307971c9d2a93aee52785c546945e42a7cbdef189a756a9b9424f4f597a185ec5d0a9ad1374a0d86aff60c62c73a1a3a4b02302a928fb23d06f8047fceedae86fe5dcd1a233ac957d1a846e051c06f7d6401d226d9330b20c2a6248b99ef14d90c24670302047c435bb5006630640230079f29dc138152b6879be9435f27b97fd1b1b53f859f432f9573a087ed5ba30003bece8a9b18ce402795375a682f8bd602306e3b224610dfd39a54d1af9729945fcda5d06a557d511ab867d13462b03328dc2342d1abe45b8667b00fa88a73e7a8650302047c435bb50067306502304b838f43df76821c57c2f2c5015918f9ff0a3c93ff98c2110dc198cf04b1b6b5cfa16464e47dd81456b32e98c4975b49023100ad3c7241ca8785a5e8222d31c0808825023264abbc57cfeda8e40bc9aa1148d85cfff5bd3856079065718f43e78935080302047c435bb500673065023036832687f9effe299143046ca208fcd399d30bf726ee744fa5aa0a6cb003b6a157f697b4725e305915633c98c65542ac023100d00e11443dada4cd55198790ef034e9a6a6402fb6829b57051b80ce79b0ae7f3b799064663cab004d2e99ba69181392a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306801d335b4063e8c32aed7a91212c3a4fe44529947c5ecbf836e10ff3ef950f07d043f94515a8cca4cbd8d8f9867da25023068f6089d8894438fd81c7c28c1182f1d036f91ecf837df79815bc92ef2adad98d34288aa71657b45c730ef35dfa733260302047c435bb50067306502306f49e502d2240c5a3504fdc7fcfa81bab22b5a66553460af5c47d85419c32a28de9a080abdbe32c8301598ff997cdae8023100c5ddde66ce195f73fe847c114a9fcd1d5765a6c655ee074274abf3d6720107f2d54b65b8e0ca0c31c46c8982ca3a6d4d0302047c435bb500683066023100807e47fdad91ad8a37d73745943306358aee91fdc3c0165e0be24c4acb6688e922994de2d028d4ae809ec03b9a52ff05023100819972b2ee1babf26db77ab31133efb385abcfe72caa06866a1a219ecb051abfb34777b0a13b6be08218701b6262d9700302047c435bb500673065023100ff8805849fa5173546ea2c8d2096441ce25e1c36c1b687cc2c7a70cc4bfe2b64849133f93a7d5c5af9ca86c947b0c467023062e6db52c217fabbfe161e24299fe7d0d13a25efc2e42f85ff6f4d92af0d617015f1bc1fb086f26d10b2332f4786499b0302047c435bb5006630640230352321f621fa7a46192cd4fa682d7cc0fb1849d74689deb2ecece4d42fd58f72afdc2723fc3fa1f2a989b4cc6d6d7dd002305b182542a2873f025fafbfdc4064c2796ab8b54c8766450088531a67ade7a83581eac18ced8793afddc6c8a5c7fc15b30302047c435bb50067306502307525017d90efb88e256e6a2487f1e9360aea264c8a10c547a9c0739fb309e8098983b3db136b4a94c64b0263336f3299023100ebfd243ff17914b16ffe835c5e0bcde45548c3ca8e25e8e6010802815fea7f3cfe8a84c9bc30b88cb70a90e7a7a0acc90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023018aa5dc5ce360a66f421363d0d6161a87704c6887b14a5a7a8a931f51a12b9289c06d15c7e752cdfe467614bdb6a80f6023100dc84f138461b0dc941950e2a7859a78492744ffe9ecf927cc4e9f4d18fdf4f3d4b217c4c28ec6ba22b4a716b39a7a86a0302047c435bb500673065023100ae8feef04de39dc6dfac91d76fc4368c6cab99f7be99c3c0f2a5be59db486ee801eb2f9f761770dc39500cf82570c80f0230486c192a373bed7da8bae6c04d84c43d86dffdbb53079854c25ad9ac9952786aa943dacef369a873a4973d680a90c7fd0302047c435bb500673065023100b08de81d7691e0ed8093040ba0b0f2db3e9c16c96b10273f6ba209a8f4444731fab96b19673fe382fb2b80d14ebc7f7202301a1401ffb08631a5f14b439a7f5ae6d69c1faa88a0df7ff8da9520bce3d1a000f3c1f3f7fa0ebfecea98a95b027ef66a0302047c435bb5006730650230619d33bad0fd4f7f1a7f6d3feaa3d04b32c3189f35957684414eca928d94b053c23b42c8a472c25400d5f90324761072023100df73a956348b200255d7f699948c986e609117664a37a0e0a0f9307fbbd81099274780070048d20fe78cec2e5e1f40980302047c435bb500683066023100a9f9e00f6c1e5090970c7f4d54c06c2412efcdc5ed316199a3517cec203f51fab4feda7e1bddc850f8ec1df84f06832b023100f36648fd43e9bad73ca2f7238a27bf4a8a2c1ead5f61118f35ee226eb1ebb3336688d7a1b6cb196f999e23395ad0f0db0302047c435bb500673065023100a2b8fec9ee9d2d070f1bb06ffe3213bbb30a07408f7d7403faa3fdacae7176a05d77cbbec2bef0c5fc9fe22dc262e92f02306698fd00a222da074d6c1708e5e243dbb8f66393f49ea973cd86368fae58c3f1a4e1d15c4ef501c51ce4cad0e4dae6ef0302047c435bb50067306502306258fb7b3f39e85b421d0631c3a5fc89e38f15f025c5a697bbd22e82268627324f47085c1404dccd2be27fb83e51a30b023100c05d655c2ed22c0f68c524c414d58fc579e3f4a0ace284cebbce749309ceff1ec7c543d7e7a77573efe1bea12c9f4b2e0302047c435bb500683066023100edd24dd9d55f791d57d06d4beecd79f1865343545bdcea70da13a174bef1e3229ed7b02b7ca6ed520efaa889fc444f4e023100b5d25551e8b18ea48f43bc73cf402c1188ecc3a6d87d5b6c25beab97e7092881c9586f1e4f3f3731a731e99d6c4a81a40302047c435bb50066306402303a9666c4945378fa47cdfe8a335d7548985175ac9e15fb2d0a6e1fcd87ea1a8ff2a62cb81e9ad8313697c66bac86adbc023024366e4a32c64996db5f3b17f892a6a63daddd06d18ea8caea2836de3e2a0278d7f3ff3e420bb70fed1a057034ec49db0302047c435bb50067306502302efaabbf6f9f8a6659f7f5305ff9009e884b1d9da04cef026dc42caa685a09cd19e033109a2eaad315297b232dec86f1023100cf5669d0b14793b160941fe24974eaef3273d68f1955b80f1f0f736b0526120891fbb41f266d446cb89cedd3801792ed0302047c435bb500673065023100e47379cff73bb6f00bbfd0a8aa7859e525e111a5aaec6de1a4e74dd2b0fb8d101d71116e8164c08569e54d8f0c7d1fd002306eb7820bfc00ae5f27ede3afebaf92c5b21f8b9310b8a955fdc05088e4f861fc87b162a661dd13e2325df6862203b67b0302047c435bb5006630640230208baaff62fcb870ec68ba18096569788ed86b0ad8a8a5804ac4391df7526cbd96de10786dd0be0c848e68e9ad324de70230503f1a1ff08738a1922ab4cc29dda569448e05b4077597a6c6f52c3075cd551a9dfe39278b721e12e7d3dbf75c0dadb10302047c435bb5006730650230728c4c2c33a3b45f9cde4c95cd09c5612c31b1f04d738d4b547e36b8d5a228ff4e175550e8596b3efca1a7544a396f89023100c39e4f900cccc3168cc20eba09f101c5265b3464520ab3bcdc2b4649202eb1e2bf364c11c84782f6f6d035cf208736620302047c435bb500683066023100e639db8d991db866b0a3768890befe417d213c758f3e195d42018a252ada8e20ee65dde38f46886f4652c28fd6820cf5023100a1bd8e3b98334c416246b0b8c021403234940a340229e46c3ac4a16ce7e2d1a65fd7157dbad51890b5290099954624550302047c435bb5006730650230678d4e38fe5d626eaf1d92b017b3a2e2c3d352d9e69d870ac5425f1bde50ae62286faf2f245877d087ef88da1a034cad023100eba25811fc879b0df1c14ad6a8798e7788593229316e11d3a3519a0b5ebca86abf1cbad394a1883fc5289683183f19ee0302047c435bb50066306402300635c93c78f606956591a84804d906315960f3fb6c7500897d62bc9172b106b2b21b41576a8dd728641eda52c753967302303d5616977c6488e1df6607980923e81194228e596f884a1c56b34c2caadb6287e5fc93b806c7216dce41646981041e030302047c435bb50066306402305bdef62fb28dbb1a8ec1b1128b662a4f35ed2fad2b87cd9a6b062c279d97daf65959e2635cd3c114455a2dcebc716ef00230367d07c3240dab6108484a094cec8e513a609a4ca4ec5ea358d2b36532a565dbdd65e5ad2626ce21ca0484b397f2a97e0302047c435bb50067306502300ee29b0d5d3a8c9fd608b20e80c4ac7eb7a44a27996205c080e690719589ebda3ab055d76f40bced31a3a8b7ca0fe46b023100933a34da755b3c9c86568f2127d5e97799a1adc4fe51b3818c14d39bac36505e426fe918e68f772fa1368a7aad8430610302047c435bb50067306502300ab32fe2d448e1d6d028fda459e61a20830ce4f59b711af5bc6dacbaa0b837584da2b762c1b3d2f92511b18bd3ac0706023100858128b81f6f76017cf769a4c07a57e33f06069e848af7a7964c372c7ee10c0726ec0561fce0b90177b2ecc3721be9710302047c435bb500683066023100dd86eb698d27ff0bf906056b66579c2ae72dc3b4dc89d2913aed33c2484d065fedb1dcb01876c1a908f1bd28bd9762080231009c7c9ac26e3f801220fba2cdad90a523577e1e5210557734cf163009a3e276c9f5dfc61ba96dbba39c44289333a2ef420302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a20eff149b409fcba4ce1aaa46ec52550a7c0f218abe3804304be0e7f1bc0421415db56e3291a0f780a0ec3149b98ce2023100c2d40429e84cbc81634e6044898470f44e208ecefbed5adfb1d144155bbbb658485ed93fb66715e85aadcf8430089f790302047c435bb500663064023100823263c1efa922c137e5578ebe30998ca0609035daed2c4a0d90fcc246c273ed2ec5d408701faa0045cfff17c3070ff9022f58a99726a7ef3c418b9b36dc98924d9c2a769419fa7b017fe60bace690016387beed9e6cecb0bdb795f6de2ea797fc0302047c435bb500683066023100fb9567d96fce321157de88cd8d36c7dece3b158de716846654151b0382deb77a72fb87e3ff48cc1d56316b6a01409e0f023100cebe48cfa5c3d479db2f9fcea5c0615ccb969ff3350dc3bc5ddd25e1fe4a7fb076d6f2a54e63fe71cfc0a882f2bd51b50302047c435bb500683066023100a27011346b980bde955c30a3d87a99eac35784141edaf50d1c8d513119de257bbd37f6f707f57acb118974990534ac83023100eb7b79ff23941e543873bef93c7c8c1c1b644e889d2317a3282ead0f680775ca95b3e342eff14f4b8176eb53371eeb490302047c435bb500673065023100f13eeeefdff702b8b680986f80b1cfdb3d1036733408c76a64f0fd25f8c553902a4b148d39c90bbc1ed44cff7696a1fa0230392b5001bd0779c0aea86e715ea74b50cec5868e60a3637cf5647bba0970c5d3c1cb6d833e24354576e844f32c4c1a830302047c435bb500683066023100fe210cf04eb945d9ce46661112605db5c1f3428477f83a3bd1f8c5435d535c1949867d7ad63bf012afc7d389aef7fbe30231009192280faa4cde1c033333a447ccd6855ce9549dd63ed78070a0352ef643deb2a9c18bec2adc224ea675bca5491b65050302047c435bb500683066023100ff40810378a8577d512fd0d2d33bd997fb02b9e4344633c191eb750458fce3558d31b2493c9beb5555ba7793f24c1e110231008294c872b5ed0d69ea3ddc4adde78f0a59aeeeb04fd3fdda8ee2dab416ea9ecb2e7a776c450178ee4013834f545f747c0302047c435bb500683066023100c352f0a072ba80f60240380b31ab62caa67f2aa677d19639b306e0e48d209995cacc75524f3a8be79450ddfb2a8b4c64023100819543e753cba5289caf397c942d673d064a338266042572ddc4f6f7bb21c246cc61cccff85deeff1cafe6391e15f4570302047c435bb500673065023100e63386fdc005cd7c199ea995e1a56d36793bfacca887c3ee514dfb666f3bedd152a21e93e2621a79e06746a1039387f30230793cc9329b33202ec360e5e1b45e46cf32fd97153c1806e09c2110685b2a3d8fba19a46fcba4afd1634e50ec71ef3e4a0302047c435bb5006830660231009ad4b91831e317e80481741f25b3d4996b10c4d4789abfc7d09ae3823ba5c49ce669589b7b791fc9d19578619c42a2f30231008ebfa343aa8731071f17cb46acb74500e07eeea229eb957d40ccfc15fceaaef688ca5311487369045fc23d2821ac21450302047c435bb500663064023062a58d2fd5a5acde27dca2b4df8b45620e431ca186db5d1fde604bc71526737c4c49da83bb71d6e034554a21891ff3a702301b6c714c50411afde3f63a76b9a740da45516c05be9a0bc1d82c2fed64c32898a8af28b526ff53cb8461893291b17ba70302047c435bb500683066023100a2f903a729c39013aa96cd659031b374ab94ce1be19565537bc203c7b0b1ee9c3e8a267c7b5b2d6d0a780555fc4472f1023100cb00ad8d74e0c25e3724786d1174efacb37a64e3ea79cd52f762844226a446077a6a7a63f19fb7303e1d5c9c5852939e0302047c435bb500663064023048b6d79d80cb6fbe1246c5ecc2cc53163c6583506be3478f8f8f97b47564b1c213c046b58223d6d6a7cdaf32a71132bc0230064cd7be2551f8b25b74093373335ebf650f91d1b480d65891fb2aab6cda5c409c51a0442090bc473adad08a88d3d9a10302047c435bb500683066023100cbfab67155b3a9856b561c9d86ddc5660cc6cb87d600640cfaef1b59045d0b3f21c4e5c36d4ede0f936d164dc940505d0231008c0cf551d15ffc88e8dcb47fb59e5388f2b28c493f9702720c60ccf07ee972a084da56cce43d4750515757800d0203800302047c435bb500673065023047fd4545eab5ae0b0cdff1bdb94331da3b4f1cfbb1edc3a66fdd1e262fe9f1e189f6e41060e328df3d6e251cedaa1b5b023100cdddfd5aee479c32c24417631899f50b398b8187b0cb168939ccdd6e7bf1a8fe298471f1853d1ff7a0e396257dce47770302047c435bb50067306502305bf150d380b3bd0438ada453c18ec115c32e964769d71e0ea06534fdb7e72102dc88e3106358bc95f8c4b8c28fc5a614023100a2eedbf364fe030e82161e3e54d2e22b634bf7cf23037eb66edae84195ae13acbf77e0beb7a0c60504ed6123f4fe85590302047c435bb500673065023100cab4c1532ffb7fe0333d6210e2ee907d2baebcb97b8515c9ae4011c6f1a62a4e232cfd24526eeb39f9aee5cf60d0c826023036e637fb6178b3aae12125463b934750bf440a5a35db49a5a3b5daf4e15efee19f6cbef57d6e67c98857e9809a10a9da0302047c435bb50066306402306e5d5c10e47df593b6673885cfbb9aba179d4951a3b8226185082aa457ca185e584fb5c0d609e198ef1bd700065dc578023001b262977c203926976baab1e22d4ef055920f723ad250c71806057706f1ad2bcc6e18ffd2a2796ab3e14fe0de1de49e0302047c435bb50066306402306ac29816b6663c4c788a9f76514cfdebceaf41e6635470a29cfcf9c4f412de3e18e837db0a63c4014ad04b67020aa73702305a1a2c932e5c61ffe9432c251a46db87e40c26618a13994ed61667e7739f3a101c5735d2906041758eb02c82be529a240302047c435bb5006830660231008ec20c2db0baeca31219194707dfceab81c0af3413f1c081dd01bb84ab0a24f6d4c15ae83f37a7aad245556d14718f0e02310098cb0ddb39e08377a78f34a5d2e7292b5590ede76e76c5ab9f0813da91e4bc81f363a62c1be223997e7590a83fa8fb2d0302047c435bb50067306502307522091587378b7692a3eb9e1d267f14f4fc5eb66c35024e636c54360bc276bc246ae9004c233eabb39d80c23ea4a64e023100c5c24a146197aa1a7d1bf876887d6141320c75a7f783553c59c6118eb9755835b8849394cf15762dc447b62dd84234b00302047c435bb500663064023073bc0b34d8f55b10bc08d1fa7cba965c5cb6d41a82ccb5d37438be7f6ba047f16f782c94280390d9233007f0fdd0808a023048b452b0dae8b200f77b4b7042178c535df6fd35bd6339735e549b08b41492635ca3e33ef1e2de2c2363a6fb2f5d0aa10302047c435bb500683066023100f98913e35e31202a373b0f871fda4b6d0475602679aadf88c0f9f0983cad28b840cd0a3d037dd7c778698d7332c427bf023100fd66e48876ff77978ab78b8d556eb6195dc464fd8940ac9dc36544836a190e4e8f615ea826ba1299083424d1d97167240302047c435bb500673065023100a84c164d261eac113c77a2a40b6aa6ef518972f699bbea48ee423cf10149674f2a01e4377a1d0e3b5cac1da1ee79a88002307aa0e7187cc3bb272a7772bc1c118cc1e62802c2e38b8c6a5dda88a0eb763799ace0c3083c80f81499cac7ecc15b67c60302047c435bb500673065023100893cb143cd16bf4b28b0109eb4f5867adf3c00ed3de0fbc60eb573630cd9abafb0b36f84c4609f601894c1f9c7203fca023004ffc7ac756578e29cc9fd10d80d0a600a6ba5e61cbbada0cd1ab6adc295f265709401eb3def3f30244e4187a22c184a0302047c435bb500673065023100b45d92cd028f5144b0c3fd06aa5f79046b7f621c3a7d46d3fe6fe7ed85a677a81e072340b016f70cb7478c3aeb077eb602301c9a30fca9b1197246efb572bd26c556d9b6034443024acc61832ed1f0fa508c07fcbb7d3d4400a033c452222f7f799a0302047c435bb500673065023100b55f54390d52ef4f9de02d6f9dd450177e93a4817fa37d8b68253de202041b5112b9e1e05bf465e4b27da7c0245d988102305fb47192d94f81123070139a53e10bfa62c694c4f085266fbdd27978750d7b6c1fd1cafbf701a6d075a5cb0eb628ff480302047c435bb500663064023076ffc6ddea3c5e2dbc16192e92dbbef00100ed228ebf9c1a684ae5629265f3cb5a6ceeb0958b92dfe2add17f9f4d844c02305dacc023e8708626426734fba0a270ec2905a97cac9b826ccc394813abdda1d6841ddeef91febf616ae4cfc2b57568b20302047c435bb500673065023100c2ee70e6bf2d9df2ee1fb444a487f82f4aefbea9b9dd19aa81b1b495a801c09946cebe23b32b8a28b4cc40024245fa5302302886e910c446c8cca032815cfa8567176e87873d94ccf5bd65c80af6a1ad059f6ade32cf911813bd7554a5ae3b8e98450302047c435bb5006730650231008e9377064e86e2915cee8e1cafef1c900edbf2253d00fcf4cee99f8f2245909c2eb8f95a22f5da6531672d82e2a2321f023004df8a0c14396571098ff80898437f08b37b10c84326878d6018a1ed6b754db84f96f756308a8a36421e6ca05478f0d70302047c435bb50068306602310099e411966a3aeab10aa2aa478cb74d29e9cdd79a945296c99ce9e8f0d5898952980f36a34fff7702d57b7eeba53450c6023100f5cc6fd15aa1ccdc7ceb327c79acb399133ac097edfacb0626eb85956967bc50836cb945ab6847f9fc3ae160e65406a90302047c435bb500673065023100cec43beea5d97c260c25a2c0b494fc31779a085aac5c286cbeccb43774968c23464158eea87eebc25f7acf48de31dd1e023043bc708bcbf202d8d3602f9e41a566481b19bb9c31b62ac7ee21309f9e9bc6d10d57057b461adb3816f5a1270804b4630302047c435bb500663064023070f1727052292a3ad4cb0157a4c5655964e52ef6822fb4aaa7d54b9baa0c8f755eb4aa5e3b9d9275da9ba1611e3ba772023009030b2dfa3e9bef6129a38c94e2a2515d2adf0f9dd372d2ee89bb71f3d62c478236258bf185a078100a93c87506f68a0302047c435bb500683066023100b3ca42df8b4ef34bf587aa71d7ee0113c3ada9fd1680bace77e51d9ae67aa31b1efc6239cd234d42cdb63177392e9e03023100cb4b4e827e29fdbf634570e6115b9a6d55ccb3b5c5cc5674e361e8c7b1a210be8b1f700007790cc45c1c988c59e4e9e70302047c435bb50066306402306a6005b0d0f8484c321eaac788b4eedf7d2f8de2c6c2e66f19c733e463f9b7ffcf7b4a43ac322932ef9c95a41b225a7c02305f35ee495b38ad12ee5c08a1b1c3d6cfe18b225f77c6b09e63b2516f3034534976c668cc23797deef350d6c47da12b320302047c435bb500673065023100fcfd4400807826c9a94f12df71dbe54d0f0afa99aaf731215a9b9a602cf4a4df8da042f6efc9b488e0c17dbded372dc402302231467b83a4b98a7ad408b038bbea59c9e210c2731e91fa08cba9a9e50dbd691428da43e455c6e965da05575ebcf6f50302047c435bb5006730650230037503786371138296e7e0c3a6e10cbce0ddbd18f1c4d7e617b9c65078336029326a8d40f504ef5b1979d5e1304a78a4023100e3178c21bd83da3a9bc1e208f395b69dbab49fbc4c64bd8695b6091b4010f09ffde1ef6593d11d33b5a2d6a392618eaf0302047c435bb5006730650230779ae31ea2a1eda6623c77aea3445534fd21674d8ddb6a16a4018bdfb3dfd516c3527d318edaeede4c6af65164ae9a43023100a3b5c410fe2bb2a0fc747702759249f9f1190b752b699a1f142515a8d1b25022c1164ce4340b333efc86de87298a040b0302047c435bb50066306402307e6a4a28fa4a2f86754ca5f6d08a043be6a7b67eb4028f4ec9c411a66b0ac21a5ff4afcdcc9849d8523d33961816971d02306c866b6b86071430e265cd01d2b9d84f123f635a87205f1a7f0a9d43315816c7d582118ad0db78437ecc9a4f55dbc6bc0302047c435bb50067306502302796ba82ca3fad09e5ca800f69f177ee009c68ec13c4ef39a58f2885ff84e670ae3fc8c9c766bd82528d81bbd78e6266023100e857f1f1b11de3538e73fa36bce15e86856ad454fcf47359d2019b33b9104ebcfb0d55bd9ffd069c0b87b115c97448e30302047c435bb500673065023040ea7043cbd8578974b536ab29cb8b20a1f76159d8ca32fe5b06ad9fe04d54b0805673b46eabab40cf5373e212699726023100939b2ccc15f7c54d0a2e38447a328f657030a28b9e0d76ff8eb29b59ccf8bd41668952ef5b69a2c3394f8b6544d6f9670302047c435bb5006630640230010bf48ee6b21fd8c5383f278900f23d8008c585778e5772575f82a9775f17cf33db246adf0be28aac5cff7c7bcfc99f02300e5942d6a57bf6b80ff2bc6eab83eba37ac2d6c4b7a015d022abdd08ee528551be30c3aba96eace90eba93e4602265ee0302047c435bb500683066023100e7016dbb7457b5ddc54852c67934fa693610b5c0a1aebcc98a0cd767991b0eec633a5747e14f4baa4e9eecaf0f925e3e023100f4ad6a5f59beebbaa8ac1aef0fd2efea6bd6c47b607ed86c93466e8a44e6521033e88c098c3be4cf1c0d75f4f29af7880302047c435bb50067306502310081e7cb02fbc167afa61a74e9ad11cf72201a6a8bbef61ddd0b74b578fb8a816fff9f01bd7bd394706c589cada01f53de02301bfceb751587fdf8349dcc7c2a67a18811739a258f8b2b37034851c20d73555f4d69f8157ad38f8e3723331f6f0f2b940302047c435bb500683066023100f7c1d4dde259ad4ef740c43b9443dcf7d206f9f0abe75bb8ca85e2335ae9c9a53ad5ed8e641ef2fba2add5d2deffe6ef023100e9af0c4d182370523573003ccba06dd40c1600337a250bc2dbcd1a0db4f1b18ce46dc28d94776a4f96dc352aaf4cd9e60302047c435bb500663064023024a3527625fd08119138b36f8e8e6f3e7ea5bb91fe0eba66d18243c3280ba5185a07bdf1cc87b9e1e807f4961539c50e023049fb78ca1cc33156ee47b4099ee4ec3ffd8503ec986c1c75bb9ec28c2141f149cef1b2b053d29d8a03fbf75d5e3c34060302047c435bb500663064023021479ab45a2c38022dd8f1808942335cecb8922c5dbeaf340ff6cbff28abf13dcd7ece01c8b0d403e61e18a76dc071e2023029b2d7606d6ad8d655f59a1a4de6cbad5c23d6f331229f792b946be719910c5c358257e54240ad181f484b67921df0870302047c435bb50066306402300ba7c27f37ee996c8e3366eacf718de6f68fc09c6fce2ba00655213961300a1a8b3b16624994cda4773bbc6eca90be370230664c62252dac32ec997b63d23e1bbe4a7187d66ed5c0e32dcb00a1f689a96b3e9a3765828b2896d609313688c188512b0302047c435bb500673065023100fd4fb7ed1318781ddfef0f110670688be7dd7f65da97cb5d240288bd629e6566bd71b7eb2ea4d09d8e9c7d759b296e5202302ff3f6781411ae4e59a8ba7f7b31648c6af5e6fb88be92aad154340f2b413b8aa3f773f3e15072e343194adc75d7ff420302047c435bb50066306402307104b7e2dca7e8d6b19fc99c01bafa60bcf07684a0e4e5c207f9d090a5b77b7834a41aa9b83465bf7c610ceeef729677023002b8b78fe26b35b4ccfa4ce57da0776ca1b67df3ef3acb4106df36442a7f11aa37a2ab102a97ccb9254450424aca9d370302047c435bb50068306602310088800e2cacbbff8e041bf246447ac0625516791b4bf397b2ec8752f495ea4a9916c13cf936a0be527f191fb706fba9de023100f86d4cd0b4c017e64afc64d916e347e02797e4aeceb7cf40a3af369b9092c1926ed6a22902621942bace9b50ff46d9d40302047c435bb50067306502306014da95ed30df7cd3ebddd52504958ef342f48b655e51c97a045660c06c1a08de713d396b324bdd9ff9f98384567c71023100c81314db69987633b5f22049200152bf378c6c1e27914ad95c65b08ce79cd17d83b8c0f6a65f60a0d721203fb270a16a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d57c31bba916d969e994cf4205183abd298199daf4113b5ca9c0965f82b1a093339d29d6867b2f8f08274233aa1c5a79023069c2e456a8f09f7cfd3cbbbe1e6bb26602b8ff1bf99b4bbbef99d9ef751112714e3ee5f36a453094dbe78ddd3bb6cdc10302047c435bb50067306502307f845a4683a24bf8d6768a20df159ab4db7caf1fbc993e79e1f996ee9a28333820a31d47c010ea3b19b2a460b7c3cde2023100b4426b925085eaa31f7efa8f9735b2849c8287d7f35e4f04237d47dedb779a8288910916fd749fadcbb2f01151ed1e760302047c435bb500673065023024e4142919bc95e05d25fcef3a7689829ea141460b8e2f17c480153b79ee727b68c9f52beb7d290397d7a65e00716b32023100fe5434e4785e319e32eba6226efc629d673f13940c8bc6c629a426e275fad70bd6a7c836075d2bd969c55553d37e01130302047c435bb500683066023100b3dc1e8fe49ac17dfb39af0c03882fa0bb66114a7ab904b9aa726d3587c005b20081aae1a3846afe68212260a78f18c0023100b7385fc037040b325ffdbac81f2fec9d47b13386b1cdb85ad6cc7d9bcabc06ec9fef9bfba208a135e91916ce5df4cffd0302047c435bb50066306402306afaa1ae2e1f576f3335b265077b5e127befb4895f695b3b45ca36a9f830aa4947bd7b41ac4ec424c1cda1943409582002307e7ab475afc67a5fa780e50d260a6c55860083ee52eb6f516a0b6a2f9ae3da1cd137067701d941a82f8f15adc673f51b0302047c435bb50066306402301307b47199b8d15abd2c8510410323da207f7ccbc648c7a2297e143180e6cf0bd83d895134c2963361bf07ae5279c8c802302d55b2b00fcd52c886a7f9dae3d8beee7bd998225f63be66c6cac9f930a06c3765dcaed764e95d9506785dfa97e2d21f0302047c435bb500673065023007f6134eea2e931a5c8f7ae4143d2f29879f238faf892d61807ef5505708c8ed3ac91baec39f0bb03d76163a70926b7d023100fd39c0b8017b5776db5c2b46ca2b0556d0610403c42d462c91e2abc2f3613dbe65c5f7cc7f7cfd588b9fd45e4cee1c4b0302047c435bb50067306502300a014a4e069aa32c18899e8674138b7b8bbcd62ad7610d10c57d8494360e6756cd2b4494e50b09cd89109dc1ebbca0a7023100dcfef188491ff62f17a365b1e899893feac8655309a51d894871096437a52fe8cfb645f11f781942dba977a6c847b42e0302047c435bb5006730650231009c2ced19c52f04b51875f94b46430c76766d9afe5ec33f78d7680e66358149a5196ddc43f0bed0c1a0a74ca9d541adbb02306cce5be799958bc16f43b220419b5bb7c22024ec572cfbecaf8be0249ed5ac33cbd31e1524aa6debe5389b346ee0ee090302047c435bb50066306402300eac05d66e15e8f45235f142b34d1330f0f989c2cbdd6b2bdd3c4d41c58048876be5a993b7d9cd5a0d33285c998bb1710230249ab971cf70bab761a7f0a35a0f5aa42001916fb533c5284627c0217a479584811ef2c443cedc7fb8630b1f4998a6930302047c435bb500683066023100e86c653ae6a2fcd04eb366a9ae3affba4b80366628856f2a24bb157262a46e8913bd8cdea0947fa960b0e40749ce20b7023100900dcb917e0836272fee0634e371e281f38a7e763c366df0ea062c421736a175c39614cfcb4bd189d0c0be5487d334800302047c435bb500673065023059aa5b2acae92afdeb1a24113f3b296d77d73b7951bd43e98abedd68178bb2e2bfd09afb4901e723bbf71fe303327cc2023100ac2964e78b85bba0f851bc11b6a145bab9cac515b6b4a2896405202100c6cecc36b6d6e5f0c1db0121e5a12f640047740302047c435bb5006830660231009f4fb57e29b8d35f960abd4e02bcfc4a147623841767e54c87fa6d49c41a84aae7b539e1d41fbd76548954f713e12cd0023100cf386ad02264bfbf51f35855566887fff97666d35f438458c72208416820bab1a2b301511614409d063553c6586e05af0302047c435bb500673065023100be0cc8d62b5c19674528cecfa77f8d2afa9f430679d0e80f636804bc6f84d35b3ba3927515a7dce3896de81bc317884f023013c245a5a1d4c1af647f9a9e95f5369071b1550439eb9163ba06de8e06d84c97495355e7229eb49dc84ac9ccc0abb6bb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e12b8b5cf9b0d9563329610cefe2b5dd042d7ebe8a4417a5a28c12dd6d74f70b26daf605f6a267b48b2cdef4be1515cd023006a16053e7cab63ca1ee4822d88187a76c63b821ed750ec570ed4ab1a2ef985d452730c2038f9d4521db6b4afaf4ba5e0302047c435bb50066306402307db247c09a12f2920e6c7a93bb87a7285e95644a062558c1e68153b8dcee4f134b9d0a02646d4f42923f64500e6b4cc502304c3ca86e2065bfbfa5a00029aba81c15047c56f6b2ad86c3edbae35229c2ada771bf92da50f84e807695cdb40a31011b0302047c435bb50066306402307c67687293554595bc7b38398672d6651a2a15ec5b07f11c880d8ddef6c91f1459cbf1b2b0118c638755dd5748d1e7ca0230490d6b6fd3f99a219f6debd22ce6d98a2f40c64e1596aaea4d02943f3317780c591e622380d9bffc5672efa27bace3950302047c435bb500673065023100c39c6376762d66d9e2fcc56ddd44d920c85994ba9a0acaf62356228d752608fa66aa3a8c21a01713c071f3bfbb4d8a8f023043914a4330ec5d2cba6a54f3537658ad83b7dd234735244e0af4af8e594fb0b71af659f4523c1cfa631c621e30acc0d40302047c435bb50066306402303a3ba6870d1ef401671602353e0b5c2d0dfb87786ca34bc0322a8e0261f49d047beda8b19711edcb34dccfab1631d21d023016d0b2ec78d33c32ebc2179ade77190ec44012bb0053f22cd6009c416411380cd8d01738da129d10a099603034f3ade80302047c435bb50066306402306e1f2c9e2372e2bff11c3d5e43ce0a18d549c1a105185f8da90284b7d1d7a53699f18deda16f141b33397966e8d48422023079e79727321131b218c9928fcc6111518be719d69e994b139f4454d776a4a22b579b85d1e98ea645f7603d783e4401850302047c435bb50066306402301bb889814617b29e6d476aaac8bd864369a2ddeddc75d7e62fcd97b39b7f32d40117eaa6e1b8fc0ef6a04741513d8f6e02304118cf0395175ba60ce351904fceb6c5a0e4997ca6a620de3fe7bccfc29956e7952a33b98b5e6c095a04dbf374aaaa040302047c435bb500673065023100e7ad369fa23ab46f7ef5443e5105e9ea15e74fd6b2db1585b83cb0a9a07552cd60ecda9d8f5710a9f021c8b227a65758023043e24dea8203b1552f7c9540e0213b326e509c76c6fd0ea52d3132adf95a92248324d1ab4fb2c19a5752a3157aee0c990302047c435bb5006730650230296bfc24eac9d9e6fa65825f50c805c896abd3ea6f8bfff61c3a5c0604bada956c370bf7c8993958776b0d0a09908095023100f360f56d3c19d253fd596d4ce13e13c7a1178dd1dd2c0a3caa6b3ebbaa4200981029db6b4e7a54a30d9c63f2f71cbdda0302047c435bb5006630640230705698647db2c8436eb6e56221ec78cf19c3b47dcfcf714e0a8b382207cc2695284c4abede275fe72bee32651012e5fb023055c2fc424a52237ab505af7fc2d2885e37a3a81dfb3c5baa6386dce286b1d552e6fcf52949bc89232a4ebc9a86579d090302047c435bb5006730650230098b0cd71dba8f7c8b54fb2fcf85dae880e307f3fae334477c1bc52ae427eea877efc29de4c151b1971dc90ff61524e5023100d7e7451141d0bd0cf45437b222614151ef967bc1a878e3d3bbb427947f79fbb9e69d79a4a19bcc5f41f119b813343cbc0302047c435bb500663064023039825c6ffc1d1438ffd6a4b773d9c261652d497883e706f253b8093e4d650fc9d3d498a922aa7d4a38ef7e84b9b0b49e023016b33dcad4d40202b735fb89f9f6dfa7c4e40ec00d4168f481dfefab781149697106b470cd3c00eedf0c47b2ae874c9f0302047c435bb50067306502307ea2cb3b6df0fad21cd953f00dd1d2b3664c0677abf13f07dc53cec9b29f7ca703243b456e70a70ad007cbeb9951ce44023100d9f3807cf0788966d65d486c584b7bc7f2c990a7811668b093b04cc6440e687776eba0d31fc34afab6574316a73bb6120302047c435bb50066306402303cfc2399e29f0f2aae310fb4f4f8f259ebfa63217815711b9e517068543b63d39ce05aee58fa2e9e99785dcfe03fd34e02305715fa6085f206cfc47141cfafe40e121e4e845b929d450c8a79789238aed05ccac755a616edb7444bf9fe359569ec7c0302047c435bb500683066023100916dbb704eef23d4cf44fa6feed7dab53fdd806bacb5c83ce219ac18ec4942abd24213df5ef4d4e259cfa46ddc21bd9402310093a48eb4389497b9bc52b87306bc5200374a911c583c144f03eb3903fb19d37c4a59cf878915bdff218c05c96fef14f10302047c435bb500683066023100a8c55e687e867511cbe165ca75c1ef0f66e969e4292932a6b40f2ab64b1e9fbc24308bc75dc31f31453a3bd9dbbccc7e023100f160bbc5452157c9af559d930a99da6f6a92326efcf1f5d8809a7b0044ef6cb4ba93e8c8521e463581457a4aeee138930302047c435bb500673065023100e804f39d3e64f2eceb375c12317805be95856b4d279cad08b92bc8056715d8352b95e204630ecd9a1458b85f95455e30023015f20cf00e76bd60aa05b6b44ba34ecbe8e1266c12b0f729d15cd29fd05150e7c595d407d034072e11ca55a95fe3f84f0302047c435bb500673065023100c54afc9c58f1289cf858d57c9c038e55af69bbeabdaddb11a489086a4485bf798ab6f544c8eb9547de6453e44259e95c02300f04c5e2c88d65cdb0d90395eca25f2701c9a52b28d8f6ede7ec20825f738898f5a5e9d76203b00baf648af4193685280302047c435bb500683066023100f4a4afa4c3a8523fc4fab93345d22a3e5e3dee05c028a2145153a30f71c45dc6b12737f963d6b1a0a205b1bc40bbb2130231008d915ac58ea4da46d8c72da9ca24df31a0074746b883255337ecc1901ef02d8cdb217989a34df629272ea99610ccf5930302047c435bb50067306502302f1b10504a1a77493157665c4f89628f7aec0bbfac54656298c38071e53852d5a04ad9f1f52707c61dd320794908e804023100f537ffceeedbb720a0e4a4b3dde2193cd3e777f1bd3f0fa003a41c793af49f82ace4f55b97bf18a419ede858867b1cc90302047c435bb500673065023100c03db93afa58fa1d365bbe4fab3babaa0b96c3f482e44573d8fdf162d16784a1dde009c3268367f7dade68093925c4b902305b64b0fe507327a72977e370222101cee628ba9d69ed1dc94c54ae589aea0b6424c6f57467ec662d6236664e3590f96b0302047c435bb50066306402307b486dcc55d58e0fcb91ad44e62b9e84fa5f057910074c8ab92a2d93b512da571a41336ebe9310f6456eb68dbca6e97b0230475eb7e378c7c3c0ac51d344ff5e03c1d329c1a1d0594f0e217a07a0cdd879e12536d526a6804f2037ea376e9c48842a0302047c435bb500673065023100e137a26b3929315b7dfbbdb7e3854fff06522562f6c52673ff4dabe10fd9bb576b6daf0b9719ef3710f01236931b2f780230077d5ca4c8a0ebd78301b2258f126abb45e2cd0b0f0df6e9dea59976c15de9e2352b63992bcea2f9937f6d9f605254b90302047c435bb500663064023006b66b26b61daf9e011d8bb87b9c242a0f156b426ac65cb76a81da8e5e6827cf7de0662715eff86d6dc3b5dfc70a945d02300c41d810343c80e382861ab4d6da1cb8b0f54718319485c4efdf37e3fab8ccb452551d8fa5369ec64c2d9d820025ee390302047c435bb50067306502302cb71817300638a2bb129f32022b844362d70d49a961f1362586e72c492a391c3c165e5c36485f4ad837aad159ef9ece023100e5611c6ba200e7c38e45116d74e79c7aa65a5233c0b91e68c3ae4bd1c2a88e36cd60b2978c1b7ebe1e643aeb7fa5e28f0302047c435bb500663064023009e6c7e4afe4a1f5ea2832b9f546600aef495c7259e17ee9de5ec7088602c938ab605a65c88ce3e2c39394850a48583e023012760a26114adfc82cf2ff896a093965b2554ea7bbe6715939f611d3bdddf2278d126cf3db4bd8aa47c6b6637761cdc00302047c435bb5006730650230194c78eaa0bb87269c5b78ca245d27e4280224a2d65c19c19462249910f128b2866582ba399aa3c81b81b32f6675f95102310085eaf885e45e1c36bf988ca909306a5e9eff52007b75e8520619331564d1df116f0693f7c417401864cd423158fff55f0302047c435bb5006630640230271625704dfb04ea3b0e8b5797a38395578bdbe9b70a3b7fff13d61fb3474d60d4a3727e869c079f8b12bd4a2af7312602301daf2542aa486bf76437eae16aa88916f0b60dc53ea651bb8e9e36c5a22d30670febf6767ce5bae5c454e5a4ade0e1900302047c435bb500683066023100dd463f91828c04274aef7a7c0fccb27032bb7c5a8fc8f58cca4576c81a351321f47a941c747315459c389a30683b8a60023100a89799ef430bc3b50538f637373d8626a1a853df5d8cfc40ab6f54b2510ac23ee1d44e242ad8fd08c23e243d321597a90302047c435bb50066306402301f45e79984755c02b963fb4ca4dca2b2c8fc36e55b15bdd0eb1186017f0d056927d1f9a3997d1cfe2b4298c6b725aa5002307607a6d8f647adfb7c1220d275995b3f335bdff18978afb91a044ea69a0ae3b1825eba9e523aced7ceffe2da6df54fd00302047c435bb500663064023029fae5b54a37bc64df4c1988d74589be3fa5b2a5c98a63ec53ea6d0faf626889f063a00293934211d7d537434339e6b002307803c69196a4de20d04dee910bb54dbdf2fb7e8d7a16385c2af58964efb67ace78f8ba8b8d177b247f5f269d93ff3b010302047c435bb5006730650230660eafaba3428cfefae21dff42dae96480f9ca1f4db43576d9b902f9bd443773f3e09658322b6a18c32bfcf5bde4f95c023100cf0bf301e8bcd5058a073a27efdfd878d8500d123503acbacac8fc8fb3403f77dd9ac43e92d3589d180030225125a10f0302047c435bb500673065023074c560e861534a7eb125016a1247f8d9e21364c2f6c278568c11068d644ac35c766e8a743cc6e3cb120b6ba7c655b8bd023100d05d9f5564763ecfc17371e9b420609c44452ef3176014bf6fb5d08aefc96cd401eee10128e85e2576cb30838ed036fb0302047c435bb50066306402301acca3af4ec869f5a79be30b805ce9e8e072432c0c28ee65d9b6442316a734b0406ff33667a13dbd21c7c33dacdb070b02306d87e520407bcbd49ca3aad3b480050e9172dd53f2570f6eed4844a7453d2922b0b0b85058e9c1ba87cce5a9f08f7a5f0302047c435bb500683066023100d20f7c1ac1b02065ca442e2af03ace3bf60d8321ad57acddc24e70191ebcd459d08284edba03ae8a001ca17583832845023100c091d702a341ba5a7a78d73493e88a59e916f9043c8ad161460c1b76cba67a70a90d8112e02dc5d8405cc3d7628c32a90302047c435bb500653063022f3052fe99cfb0199159b746abfe325c7c3bce66af2e6756a711d1e76f6031adf4bae7125e94642fb164a22b731f8b2b023052123d4408c79d94d2bc1dadec42629fcfa315dca033aa209d79c825e54c1a40a2ef578c0a0b3543a411b1cd7c4ffc6d0302047c435bb50066306402306d6b22dbc4417180a6fd59f59f00c7aef4fb64908cdb89a687979cc069ae4edfbe122f4b5130e1308453421e90dbb51b02306067060066407abb0d92215e4cb1da4859927bdc11e686b633837c11b44a9e965abe78f1a2b6ca06831949fd061f26390302047c435bb50066306402303f31adc464ddbf36aa6d712c6dc31a3ff81a238d9e7aa2ffc344a351fe49c0832eab2f2c361f156a37d683eccde7b76f023054cbd69960edc1f4e1a319df4dba372b6146b0f939d43f09101ae8e240d7ca1fba405c0836b94bcc61fca874cb1ee7520302047c435bb50066306402301006344394203bcaa515d04c9a742efb5aa79a346268630b1348e473ea6976deb60908581bac11cf1747b4e03ffec71b023066c0f452fc0b6f7b1e870983461752e8ef1f253792a3b9347503d471c8986c8ad5eddc29ed0773e7694c3c0ce3084ca50302047c435bb50067306502306c46ca59b6cf55abe81fc1227d8dfb90db3c05e6fc616d5b053528bc8845b372ba24113d4124786c1b02e2351b481100023100dac81a197948792b9c224abcac5b8a812aa8007b635b74b3247f753d8188cd608d10d90e3ccc1cbacd04b8e28bdc1c0a0302047c435bb500673065023100d7b2ea44a9f1b4458cff03fd51147878b8782e6e8d71dda4747127d86329bf00e51c30d4fe8d9a20f9f1a628f1ed5464023055963aac1231eefb0ff45f9b6695e258c968ab60252ba9ac70111821ee02116506753d7c072a7a168644efe6ab3b4a5f0302047c435bb50067306502300e174292dcc8d0eb8e85a2917a4536a9f4251a0b3d4f4ffff2e9557c168f50036d7c5288a4511d064a01c58561cb060d0231009239d4b8633ffa741a49d9b2970b1ac8458df4a7000456d6a2239bb5dc5a2ec940466d92c6d29c7e6782357f4f4af92f0302047c435bb500683066023100c128dd697920c8f624215d7743ebe32f8927c8a8488bb2252a490ed9276b37845908eaabbb62b761a37023868441929d023100f4be12903bb75908fbc9d1353c227c2a8f9f1c56ed287fe65a6d2c6e85a6c7f7c7bad55d39aa5a14ad0d49e97717c8190302047c435bb50067306502310080f758220e899c0fa00fd26d7f296c4bb49c1e19a161f6672ce83fc292be911aa827f58748681b7ab804f35384fd844d02301f15de93e4fbcf7cbba21488ab1b2114e242899fe785a8fe63c03b65072ba7af9b3f08e6be8ab8a36859d05084146f2c0302047c435bb5006730650230548e9736f9524751815e0c9f1c03a462fbf38e680cf4508fd46e18719c6487ac1b4b80ea31ab18a2b74955506f072eff023100dfa9cb3c40de0b89ff2f23805f29002817e51dae257f1b1507e1fb1b7ef09cf4be4913ecd909c3dba84cbfb770a849d80302047c435bb50066306402303e25a7c2cac1268b5f28eeb62d4553d758d622d70e2d5bab237423864b2cc79fac18d3f8f87631da525dd7f9dd85939c02306c421f74921075c435e42e911a54a14445f1e5c818ea8f1a11590ef155656cfc8d8dadb907359faf83bbc8ec440ae88d0302047c435bb500683066023100b536ca993e5983248d9ab3bead5e94470d1e4166a5fe6c58fdb5fbe0a2baeff5f1a8c60a6933f25d525e564ef30185ab023100a85510044b4faf2f10e6f618d53d5bf21744aff296c8c3d314f6b31ff8f472095b07a8dac153b99e44f7fbf04d83cabd0302047c435bb50068306602310084d2a146bd82e16305500feb4bdbb265ef1b2335f59a0be33aef655136f89184ef69c01882d1b86758cf1630bf56b2c3023100a1e155599db2386394af6fbb255280b372879d5bf359a0fa992f39ba12ff95f2eb0193abde2381966a04dd1578fa419e0302047c435bb5006730650231009fc7bd25e1d3348b15d7a691e3e83f6d074cafc42908ad33726927f4bc9053db5bceb5a1f309a1fe68aadb3d03de9456023037971639c6d9a3655ff1f7e171da8888455281b05cd7d00bdb9fc282764750586243d04eabbad9d38b9f660ec245b06f0302047c435bb500663064023054a23f44a42c756eea9c4853b2f1a25eea9e00cf11c2bdff408b7bf1090f29269a619edbbeb709e66f193c6790efb0e602307e4590c99d1151fd1ea34b6045168f44e24a51f6f94afa6bc4bfd0b854aa867c613db12c36aeac475e8472ce4da594970302047c435bb500683066023100eb980f8a44279986ff37c8712a78f58da21f216abaa1b5dea27d56b9b326ce687509cd1090631c522d8196f426f99b57023100d3224ddf136d613306d0c24ece66507bf95ad4f6908896e54c0d0b2c9d7980ce978db5c0a927e00e327b0eca51b775850302047c435bb500673065023100a6952a65d6c8640fc6290d30f2f26e65cb0d40700e636e49dd09b134b3174fa4e3b97b8d02e9c0ddaf2c124f3a7508710230379e242d59a647538ae585b39b68516204957687fc34cf49f0d4fb5569c518fc651c228988cd5e16dcad872acab26aaa0302047c435bb50067306502303faeb9aa372f0bd9703e8ef600bc412f8df2bcefb6dc5c83cc66e4a3d2a3878c515103faa0afdb94ceb3840e4525dd3a023100f8d9163823f09758a4d60c64aec9f8811aae44cf01e1193aeac220bb505b5a3131720c7dad04cb8e94b7f4ff0c5a2a1f0302047c435bb500683066023100bc19fae7f21c7e30d0f2944407dc2c71c564963e04af499cd55264debd07cfab86e6dc66b8f706f9612657da592ff906023100a6d84b617c3b1696218b3831e2389898f2f3b0ca7492dacc2dfe62ba008ec5a356d4affa0339de4dc75d04ff5ce767bd0302047c435bb500673065023054d629bac557421d6fe6eacaad65b7f9a9f191d2cdc718b95c11d901c11813de6db753904cc0e187721a26f625928bc802310093b2df36eb50bb781363ae7627c0d64d00529e20486a44f23420bc47f9340ea699948d98b7b364b28d4a203946fd0f2f0302047c435bb500663064023005822d6e30e749a04b8a3744251daa11d52cc49bcad06344235ab5a70bdd75cd8c0dde5017b1189de9f9d78379217d9102307a0423b010a34e6053c98a36d47defeb736413c89351e14b2a8d71693657078bcfbf8acfb69e41ac26e3e75bf889aecd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023035a40f3200f60aa1b0f9661aa573b743fca29fa57bc62acdec6a81e95f27b6aa3d6d5e5440490f79d1a4246c167da0bc023100cffdff9f1a10cdb75e60075e6d2e9a3150701abd70f03c6faf8da7d47eb3f22d36c2d1e196b95f234464bc08bb71fe260302047c435bb500673065023100aedb7db82ad6ddb0f7b15d43368561976f841a6908bcdb7f87587c2fc41063391f5c9da687cac71cca1946ca9666f6a902304a9fb6153d36e07073fd5e01a78d0980a535735b727eefa70c0bc52ab23cccf9114f4dfc383b793f061746731eb2b0c30302047c435bb5006630640230081cdc858afcdf8c92bd14c5d42b629b342a67dc0078f1831ce64604dde2c8acb850ee8fbdbfbcdddb4503c933dce81e02304ed98a648f040529f8bbf6f5d2ec54e361c9279ec42c467cdefca209699f3170542ef4fbb9c47ecc55d19eeb74e6df500302047c435bb5006630640230256a2bcfd0acddcd859905791ada547cb918247ddaebe9dd80f03146eed0df9390841388b1562782a559cd04f870a95502305bdc4d1ff3b919259326db6247725614eb079e67c0c314ec1947f7c8886aae2b650c3a7acd0a46c0b9cd54f4c2aa30230302047c435bb500683066023100f10a037a8d8faef8cda4476886186f920164502ed69ded4c5fca93319fbb2897fa17f6b82b52ba8aa693abfd1db71fe0023100f9b91267dec444aff2df60ae1e39d796103fb936a2e8959ca02012d0b25cdd1dd00e4a36ac2fdd3eda7da2c45498837b0302047c435bb5006730650231008c65fccc2529bea676fa76d4df0c16a50228749e31d768dd9513333cef2898a41117c0266c47a70d5bdeb353779bf96b023007fd383fb3448d51e8b0d30bd0771084f459917e9412e2badfe3d4513e65566070758df48bb697b871d08ebbcdd5c21f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304a428accfbed6ad06301ada011b4602719bf1c808c5d9bd922194b1d78763ddafdb7b39d209e6510a1e06b6cedfe3791023100d4716b81423d372f0956b75e867352a227482b61b11fa31a001efce8ace7802adf214acc4c95764d89a84cb5cfbb81590302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c5b28e4759db6ed3e54e86fa9a0e05e8ce9d5dd20010d6d2f1648068a0f2910f033fdc9f8ede92af57d198ea494b5702023073e6f872ae7f7fb909b9f8c87450f578db71b11e45f9eaf5992cb02515d975ddf791efc818c3b595dde944157d14a54b0302047c435bb50066306402302105800b95a92196a44c2a7d79ddc5ce9c6912359d8c258847954c6ebb56c3aa16558f7ccf28560357f92864271fb90b023072fbb1cd9c715a496cc0a4e9f04b52d28f3444b77256cb75796b051deff48a7e2853a29a2d2435aff33f0b1b172f04a30302047c435bb500673065023100edcbd749b9f68770fd290db00916df03f8ffde9739cd67275925c888a235cff6c3a33ed15d5be24c21e3086e350ff87802306ade8382d53f40da03c603cb1750ba54eceaab7ca164c47075e0ee2335baf4d56de02912abb1ac2f87cb1801720f9a3f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303912816bf94fe67bfa68249c12b20b814fa204cd5355c5d8bddcfdf3c45824a3d7770b4836cce1cdd0946a222db82a5302310084ddaf8e19b1635205d24d553be5413ad875d471e9a4388fef648b6c8e3a0b27cba7d6c136244b551f68579fd514e2e70302047c435bb500673065023062e00c6eb7832274de88347edb83e97b57ed48a678820d9e3c9d5fd437bde4f5cec0304943dd331bddd42d3ef1bb9ba902310097e737e61b9a97e522f7c42419274c20ed8dcc376b47e70aeb655d0e1fbd00f2aa08f6067a4a17d5670a244d63cdc7480302047c435bb500673065023100de3b14a6617c9c6a9b46496b60869eea238e762943bdb6afc07e21a2672cda3326927037c871ffd49f6ce8d17170729002306c9ede333d530f5c067f00f68f0e19625879a40307be06f9ab7287f9e5fec9f828682b1a69e8463fde07673c72c7fed20302047c435bb500663064023066605e104263745d270594b3437615c348b92ddb2bf2cf4d869cae05c61416604f90cf59aa2f299de184573b68e11646023053cda601afd57b83af142c99072504ed431785495819f4bcb4d4dc136dc890dd406b49e82425096757df1cf0e87a23980302047c435bb50066306402301bb827c0842f86caa5638fc15b950b3f647864e272087c6c5547435419fef879c6008705af95606e8b0bfe9f730cff0e02303e9cef1740e45363b31ba9cc8c8eb58c7fe22f0e20989928a8f4f9d5144c04e45919a7330d129a91a79ce92dbd228f040302047c435bb500673065023065759cd5b8ed2d5460d0ea8f08ff3b2b2581252dde3e5ba26741085cf480088764f0d0c0dbec2be8412c89e328db4f91023100c60efcad3205c3ded2ec762b601010b4a7732e6d2e6dab5d59f4d10e2b442101b4da98ca17c19739dd0791e1c77964640302047c435bb50066306402307e5ecb26922a231986015b9c4541b932987eddd855acfef05c52edc9a3bf6e26dabb61dc719081d9b883a35ca3b543b9023011949af4fb2b093000b015c4ac6e977a25a97d151897e42265b350004dbe69e03a4640d6f17362dcf6e2a4564de6fc5a0302047c435bb500673065023100edeb6836d53473a6ad5bc6ccf4946cf123dcc86795b2d2b7cd2644f84579d36df7a41b8a79e111da612182ce449ecc7502305c3134cc17575812d8afb50d504fcbb82e7178439c9e60202edb3bf9094aa6355734f767f22559d588022bc9c0f07ef80302047c435bb500673065023100dc1a0f3a5dff0aeb88f788bbea9321824b669b19234e08e1203a8e7a7d937c77d89d9a8aa088def02d7df78d58b5e3e9023009cf45828548950d9f8cd5e520f14616c0329c9d9b48ad99345b915676e0c9577cf9dff459b8749451d9aca464b02f110302047c435bb500673065023040c5d9c411784b8bd5b711f5eb0692a7be83f6c9b41bf6214b4df4bcaa44686ba106c01935b9238a9db5215b5273cd230231009adb222277228bedf6546017fd352d252d0ed9dfebb1345b05431cc1504ae4cbf7f33fd6ff6fdc9838bc14f20f8669d50302047c435bb500683066023100dd1f34030442c50133844d8393aeb308a68771108a5f75e1872586834557c0b9717ee11984008d1380b3ebe1867dabda023100969966a3d8da10d71ebe72ca4f764e4e423c2727805821b4b5716dcd6e893df5b709f4cbb7d54f5281a84ce22539340b0302047c435bb50066306402304220b35f971d3d271b67450ac8681cb18432b09c3e53eff10faa4299e4a98e798bd3d42ce884198d0a41e67b02b18b3202300ea254c45e0b1b779ffa2718de2b88cbecf571899cec8e58ab32d64a41f842df70b3d9656da8b5724c2fd28afa57c8c40302047c435bb500673065023060e558fee22366ad69c5a084f24512337074cdb3990383713cfa91b1187ac54521cf25b68ffbca2a757e4b18db203a86023100aca188e8c04fea90b26f443328419303d50c6a1a733b6cf47ae88d957333d3848fded2b98f7a6b475be8ce48523c08700302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023049b410cab05630696412a7e0dd04966f4559d3180a1b6c9ee67f6f8b8b9f404930068c4fec331d4ff07a2e1206927c0c023032d997ca7df77b84e9d73a08b6cdae6383d1e980baa66c68bcb1327cf02f077393af4c821f6ee86abc3a1135a0a0e1500302047c435bb5006630640230274848e6f4b77fc759bca155fe900c394c275fade69ff1ba1c0dce2a744f2097047c0a65a745b83be74a1146e911275a023078bf4aa9bbaedfb53e6a720bf26ab0fa59d178f630a87b9e2fc2c4a80bd60da6b1a45d7113db2195843ec109a33349b70302047c435bb50067306502306702ab318669fb6f64081f93f67459eada8fa09b1858c415a4f53d50cbf04e1cf30ca4868568fb042e636c5269b438c9023100e8a9d2971272431760753ff6a93496b70088b2bb59d2571cd6d75e445ece6b98e5e555f8ff68f9bc002bef11b3c6a4520302047c435bb500683066023100f1b38013e96b32bbd0ff4c360387eca23494f8cd0982e4df17986add23a5d0ddf345844b341db97b3b70dc830f5252d5023100f991035c10c9cd0dd5a89d313c7eb806d0c4bca991bc4ea71951a50c7508a0a12477cdfd0eb7b2b7ac36ad507a8cc32c0302047c435bb500683066023100f8fd4259b45e1934b7d417edcee58bdc52ef7e393048e467741fed3bf0365ab97ab75b9300ef4e72a8a4ad278076fd26023100c28a4f7af8d42bcb77d6df1238b81f3f788b226ddccce2466329858efa24a7da73c3a76b0ae080a47cce5fceec22e4210302047c435bb500663064023008c03e88084e47fac064c7be30fb3032e2c1e9d32359ca430cf6402c5b11f8134f5282a476831af20890bbfb044298c002306ff2333ce77eef16be50de2287d9d4edaccef70ab74305421d89fc82275eac2dc3c30e1b064c6c038eb9717d556476aa0302047c435bb5006830660231008065be46b35576093c7ebaabb5f150c515d64d6c2885c0a461d2a90e3ae754cd86d115f75ea45e3d4d3c4939ae405f5c023100c9c5b3f289f2c72b80416129ac809752f4d119d1d59c773c01f7a536ac1e3694dd09a05c4dfbac7bcde10855f419662c0302047c435bb500683066023100eef710c2984d6da508078222180f6a837ae0512a1484e2fc66c0abf1fe767548f92f3d7f9899d1275795b59027c7bf1d023100cf82ad06764a817713971741abb78e17c11aa6cbd1c46aeed630ee4a785d0ec5e8ebc3d2c41a2719b047f7f547f6d3c00302047c435bb5006730650231009b13a712def9891e763b46c2fc51a5ac6f47840d46824d31a5c32874e96e6da3bb5076a4bdc21926f78fbf99e8aca50902307f2acddd14f42a58c861ca3de134be282befcb9604e45423dcce4b02cd2d847a2e980bfea91c0078a9c56bcf195b7f850302047c435bb50066306402306b023a66010660f5100d2f838f21f254c45585cc30d2f0bfb805f960fb46d15b50353468a8cdc767c77ac6ada021734c0230313a0e66d048eea132019c903899b757ac54f460391d67ede3f573fc330c00e4f8a5ea3faa34b8efc1d30178f2e2ec550302047c435bb500673065023038794d143e010bc78c7b2e0ef237045c6bc31c41d627a133cc04a11d7adc314713b64bca623e5dce944502f1ba4f6d08023100f1246ef630330ad0b5949b13724119d41d67f5a2f7bc3f1d852f2d34b473426fa57279ce88902c1216956380c18c3b5f0302047c435bb500673065023100a39f5dfbdb076bac7aa4ee8c08c1b94b8940c16a03f11a3ab5fef1cd2bc2a04f389718ca7bb51dff702e2df44212fa8102300bde0cc0b8a62b5bcd852af5d881a751ea204df0b709d4b1ffb80d8d785139e14b7715d51b76b768d15d0f67655342850302047c435bb5006730650230115dbb62b34608fd91d033cabf46d1c88f54e9725184b698e3c3bb32b065283cd7c3cc3890f07ac160bd4e040311150c023100aff8c9223406a91e0e2eda85735eda3a67709375535ab358da2390f3b60816cdb43e39339caf6a4092fd6019f79e4c900302047c435bb500683066023100ff971a14068d6d9f246483e0fdfefb90569c37e43131261467e51b7cdc1e6e41d725a5e46fbbb48b09cb55093475eac3023100a5fab00781c4eb999037062082c0881e9acacadd0fe869974c902bd519289a10307b6b0c935560c2e5045647e344f3e50302047c435bb50067306502300e410cf12d1aa4c349975ae6f32fc6bfb693af07bb382be8dcb8a352d5446e908b8403ff5cd240f6037dba64a66b49090231008113d6f9d1996baf2ae44c6c718b24adc371139a844cbc172a3d968872f02c03622e9bc4c0192c5ad9ebdfa89e9d52810302047c435bb500683066023100d7b8260213fe022d1eb29f3bc268423e26d5275f9674ba455442bb8f88725b22b57d68ddc6b19c269b8455dead3194cb023100cafdd73689bc49937eec4cb90b884758c56dc16eb93e8eb6ff5823922114a7ff13b1698c92e6a2415b0acff86d1d78b60302047c435bb500683066023100ce90258c2e655e64176f33de0f14c8521caaace24d40e15ca202918336140fb2770bf45a78bb629020eaf14227d3ef44023100f66bdd99bc353aa365152202eaec163057d26cfcdbf2ff836aceb512143342d93e36ac9ccc9fe0d1c9719f3686ed71ac0302047c435bb50067306502300cd4bf96c5268e0e379da0e5a6447625b3ca7f868c478b59236d2b5f96ab8b445017b338ff4ba6533dd17ad0f1c2b7e5023100b851f2eb2a9f379900d4c12321df5f975e7c21670d34a27166dcf447ebd89ddbb0f4e72e06fc76b19e187444f22e43f70302047c435bb50066306402304fbfdd5c7d7792c3867d305173a595689a1246f593cad591662039f2269e325b3e67d681a02c17032c1cfd8ac2e4c317023032194af0f32bf62075f29c7652727a1c955bd705c310ce0af312d6f976affc98a38160a4f4526a22acf0a426190940eb0302047c435bb500683066023100a2361078ef1ddaf3f925f94486746635c05b4818c737b15b0df6dbcf0c6ff45c06dbff8c931d77deff9832170b66011a023100a126e64f32e75f7039cdfd150d3a61b0c5a3254bd52a725a26ec2d1aec8f01b6786b41a6326bb48f9b1ae42540f4f5050302047c435bb50067306502300f4927efec6022bd6bc74d61918193e82e8b068d0e0b513dd965ddb163721502e54790fa518cf7dc7925028db1c23304023100dc60b29a09c036914316870785cd4e0626028a253bffc43ab30849522a3652f4f909045985154703b43a25c8be7905f10302047c435bb500683066023100d9b1276b05fd6f7bb538f986599b6b9a08c02a2a6f39f0ece30478a7409c675aaa5d485bf92cf867c6bdb56d1a65f903023100b36fb5f7c37e97d1ed96a69819130f4e77e1e8e990e101ce77fe5d8897184fab9364abbc7357fc78c3e04698d900e4c90302047c435bb500673065023100b1bb9394f5ab910aa4870aec73973c810f7e9835836e2673ed930c622b5d8c4737836e1051fc6d17fe206108890ee35e02302d814adcfd434cfc49a0db30ccffd66181928cf82e5096db691fecec41758988353b283f813c95c0ab8a2b8ba336ac1b0302047c435bb50067306502304c4039d0b6200e798cf259aa7a828e2e6204f1bf9e9831d4cea42f2a91319f0b43382f55efc4471b29303f47818cb2a3023100a113444715df1b797dfa7cb28b684c02bee79bae8ac1d92514c3440d3629cd6796f7c056524fa8bee38444b2116bef950302047c435bb500663064023008406134cf0c59981b71bc1de577d245681dbe088ae1b99a69b7cbba1354fca48b69986a885e191b981379162b2005bb023008ab35db39149fe1be43ac71329a80096520d718d24540d315375ec49f771b8c8959954e8b716ef447e9cabc2b55929b0302047c435bb500673065023073b4555e27ba44ed5cc8368a01d0ed253c3a88bd25ed862895ef803bc7d64aeed348f784f942a8878f0f5672ace60313023100b348087cf91e297b8e45f480267ebc0739d9fa7096f1b734155501e794d87b96786b6d7067b65eacd36d0ae55aed8a380302047c435bb50067306502300ae05af574489778985cd1912819e744be5e9cce18c197cd28669d769cc62c3b3ce367157d27067caf8f54cb9ead59ef0231009426953bb8ed85acd2a2fdd91c68aa39f2279e0141743190ebe152740f4cd913ab93e11128b4b455c55fea8ae790000f0302047c435bb500673065023100d73e038941f98f1157b041ea1ab65c6d3b06ad67e674285b2713d93980aaa76daa513fe76818cc11b8e40d5af636b1ea02304ef5240ce8ca65eb5be49d94c235e0b4ea4cc981f8a5dced5fb55a0d158a84b9c90c5f23c97c7eeb741a60f2f7591e880302047c435bb50067306502300e4b19bdccd23571ea2ef95d358a8b52ec551af2a45eeea5b466da1138f6be45d5354d9980470e263f09e5e538926ef10231008fc27063a633e0902a4edb3770828d08434db96fc84dc8a0d2973c1606d7b395bae1c2e5381adb5de4db42526b9c3f100302047c435bb500673065023100f601cfc3eeb4c60008d2c02fd1de705aa96594a363317712ff2d5f27fda932cde421422c2c5e97e3b19dcd900e34b86202305113d1e8192ec4ff08c726cdac549e23e338c4b07d43a4b6b5ecefc53835cdb8a5761a051aa3ddae6efeabf2818455b60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304776a0ee4657fe7b7c0af1bd5b9398bfaf25b3192fa6e8e53da0a0e4a8272d8ed138df51aa45a3e32403efed1a6c18790230573dcea30e0b1debd6dbeacf7e5ba6f155ef73d5f73180fcd14fee33246b66f41850d3336d860bf54f5e11e7d2b00c6e0302047c435bb500673065023100bb7fd6b6a892ec3f79fc5a6d90c4814398598f238074ba11056366f0ae9871bf817e66b0b25f574d5e7a948d884ebbc00230340a22045c0a83823651e907229f0b6b0f9524332b83899189e1f67e3f9da6ed0233bf49f6617f5de78d69c1dc2d01070302047c435bb50067306502303530d0c6b9344e569b5ce94d0bf5d34d1f5fb3bbdde901eb55f45086625989ead6c5bea9a8d3be4497dba9ba031526e90231009d6e2b4dc44145d9914f9cd5a66241c6dec45017094d7e3168cbf5fd72331d1f134002f7001036882ec10c08d84810f40302047c435bb50066306402303273e58e001abc986ac174b7342e42ddeceef1ab2c57850f217414b7fe1fc522ed89bce93124e3673b28ffa924c424e6023058d1e2184dda2c93f816faae5d7c5f34cdec8fd9d786561cb42c4a08d8450c5bed5ff9097c7feb36fa4604e8b365b3b60302047c435bb500663064023025cf7e5c6ed9a6be171901c60a02e68a9aa3bc48dd00719986ae5d69714abbb42f7f5c48b3d661e4287ca7b2f7434608023076699bd9981c51c5564852dbb8679f2b81e1b1c49ed79deb622d5e356efaaf834a8a888fba8d44f0e079409e1cb2ea0a0302047c435bb50067306502303e0fb710f2c9a7766ac208ce6bc73eb325be1376d0f9de0f152f63bf86933b19bd4bbc33cff757846ce306bdec9b8650023100cc852598bf17e42042003f3d0446c2570d388170ce44c31d642d08a442121c67f3226612831c571868ade09806547ac50302047c435bb500683066023100e6bc2e89023139bb93a7f4d92da8430b44f3785ce17952519df96ff834f28adc72ab820f890f461f13b0fb39f926c49c023100e1e2b5d149970df501a2c3f3108dc7a29c216be1f1626933286f04e1c112542f799ec9d84a6f2c0b9fe5a1e9749650400302047c435bb500683066023100b83acce75d4310a289489d0560cab61d5149350bf52bac8e3fb468c3e7cbe2eb60437675725ef2c6d96462fb6d609148023100967829a11327ebca32aa39859a1f2b591dfacb252d27e37ae5e61d578706f1299d6a5bf201fe1840e1b41681a260dccc0302047c435bb5006730650230169804d5c59271803d4b746fde58f1ec1ffdf2ea8bbc70bbfed0a79e4583701d4965b50fa2519ba3cc26b68e830c070b023100d8c2270d800a45c2177edf3cbff0d343d47fa113810411139db609c2200dae64d99b9e80347d9a175b7b79f41788bf830302047c435bb5006830660231009af2c1f344579657156ae94dfd1838a30d5ac0a1080044d3d5e761b4e9d63799dc19a795e7a212b519c3cb192bef28da023100ff5ef2ee0caab7047e40f2123a28f7191b83fe280edaf223dc64330e0fe104f3cd653652029120b79998c2f79b76363c0302047c435bb5006730650230271878e4ed512e1dbf4dc2b2db9ef1f8269ed1c83006e293a90fe23b07e13f65ca82fd83ab4d365ec0ea47e6aaea0866023100ffcefed9b4dac3ad67e6006190f49359eec9b673f88cc3b975e6d5df064414d32e2bb9e4bb9b0d67260bf7914a6f2a5e0302047c435bb50066306402301b91e101ceaaec6b6e66e64ba40a125f1ea45fe01450c5a89b5cc81238ba7e26be07713fb09af3c217828913726b10a502305a408b00216aa741cf357d3817808732f7c1bba499ff126fb27f428cd4bcc698d2817ea5019dccf7eeca1adb7d3a4d800302047c435bb50066306402304fd79c24ebf5a6a6decb49774909bc16b14809c3eb69f261b1ba27763c385a24cdbbfb3095dc646515dfb5c661e5068402305f83a678d36ce9ea60a0be71caefe564f2d62cedb64fab32af8004cfaf6e01878afb1041c8fe0846bfb1b436304109370302047c435bb500663064023021abcf4501e7763d0483fc0d9d6f48e92efb5542a008887d2257a1640baaccf9fdbcf307b6a90233f02c5349a9a5cb8202300dc3f870646cc7004cb6a4e09e541322601ac614b418f9ed69f5b77e6522e713ac68e90eba61df0b5624408625396bac0302047c435bb500673065023100d651b572e7c626890b97034be35d2fbcaedf391b155926e1ca9c6f3799cabdb57a1d11d1e8ca1589ab696d6a3d2e9342023035f89ad07a4025c6dd32243b318ef8c2ad832c09d476e7a957b4c70ac1cb95fa569183823c9af417eb4312cc86b6a11e0302047c435bb500673065023100d1779d996a735bda5f0a0106b4049c9f716559683b15b3d4aab690863d87ae5d2ce4eb338fb92c44b95c802b814afecf02301c8444891ca9374c805b37e307e3280dbf94b4c98e3917888b7dd5acefa7fefdd25c7f663b0a318cfe0503535c64b77a0302047c435bb50067306502310096d1ef774d04bb182129065acc7d3e293a578fd63916a0a0c9ff4e67f254780d159dd96117526540ff803ca231a490c5023019780d75a933436b37a25181d65f81dfa909fb29592c6b400d561b07348e9ad1fadaeca4f3a75b64e67186bdb6b5ee3d0302047c435bb50067306502304043e0c305fd53210d866ca4df961e92d42df67e6cb647c3791642b23a449008439945b8db8c0c61b0275e32de61896c023100a0376d67a5a4aa04381d8473a28929037d6a955c020a9b2cd61e0193f87169df07be1c2db485e67cad2534111c47419b0302047c435bb5006630640230499b677f850177f035f0e816667d0a630f6530de0ded316ea0616b2a47e0ad036852e8775bfbce3583cb290dac1f940002307e1ee16a5c3d161876ec89de8bf7a9cd0e05703b2b0fd4cbd7dcd7988d9188ecb12c6d3b30122b9cc2b599c3c911ef5a0302047c435bb500663064023067905ca46ae8b0334112524642305fb8e7a1cf2265d062747b80bb9f7476aff9e98e950b198e5902a2a8cdd8bca4937402303cafa28a5ca5c2fc836145a59eaacc59c2bea3f874ae77dc6aedc1463f916c5cd6c74ab0599bdc56238e4a5f101f56850302047c435bb5006830660231008ea8bb609f2b4302fd5258eeb79ac795863dd60f9d15edffbe6d22f919b09559e423c9ce307f456b0e7ce52dd4e58f6c023100925d07b4d0ebfc9f9a23bc0a42b6854cf8b28161f29cf2fdb9905bcb197967046b04e8a24578cfb736110fe32d1276560302047c435bb500683066023100dc6cabd9400325e5c4d87ae295954d2cc6a155af2602c7501a1506fb90efc9eab8923503cd07b2bc57e975087cc15c66023100d37b69a485f66171620ec6f85443d8de94ec73e8967b061b31b45b8930a5303a735d0d061ca863bd1b0bc24bf685a02e0302047c435bb5006730650231009781933656967e35bce7f0020531923ffc455c4db8a3944344e6e98706d174d11df179a10532fdc7cf864cdced8bdde3023073a792b87ab4230103854be196b1062bd40439a2551d19d5dd1bf95c8b773885759ac80b16e845910f332ba54db4bf600302047c435bb50067306502304bb30f2489853a16f313865c0e202fe5f141267d7e73c0a4f09756df49274282ea24ecaa95668f98ddcd65e2a6fd7ac602310092dd93c96529515584272c902a31ea7fb4d3064d144c86b12c59116ce2addb3996c29772ecd679779f4046a4635ffd4e0302047c435bb500673065023100afc480b841f1984538b45b5ced6e3e5004ab03fc6f3f5722f3b0fd8258746a8966e01e6397b7ede0256f8f4be2becc65023017728ff6fc95ea9161f1295d565673ecc7a5adb02a81f87a426869af4988993e33c1521f18ff1a679e48e66a0c8747a10302047c435bb500663064023100cf67583ec07bb8f7b4f065c33c4c29c9f14ae800cc47e818f191eb011c8d041f7b09ed02b5fb6d7913ee631520d06a15022f0b305a67b04b4f9bf08ded1a431eb069e347e9e0d08941131a023c6dc7024a335f78ddfbabd87562eb40ce15c94f690302047c435bb500683066023100d28742a5c1086d53a9df0beb145bd549c5b1ac15a9f7a64e77a3292f8a66dedb1e1962800d4b779238d429345d133ea8023100d777ffb54b3361245b60f7e9f927f7fb007f64ebdc6fcf425da20a8d86c226169aadaa135a7755a9138d2b0a1ec1e9b90302047c435bb500673065023100c0f07bab132bcc7723099278f0a459e89d6eff7ce797d44f302424078ce76d87c3e858ef9f68b940668ceb9ac02db3940230249af79f6f4a98c95aad3faa51c5ae95d622d35bb6ea7f6f1001d4734064d5bd5bfe202d9e820cad3e77f24ad146e1130302047c435bb500683066023100f38413e721d5de62b2bba8cc0817a70645984a62c85bf44296a7c60e4c39991a171afe85803afc7356eddea31e7209b8023100b7909197a4b65e4c8bad0496ae7292a70cf4487c09384de6ce1c671e20bfcca22dd3ee47a64f7d49e03a60189c2a6f830302047c435bb50067306502310086991cb1c62c6663324253c21408ce68bd3ccce85c94fac0b448fe861caf0aeec5fcdfec47f5791888cddb524b9bcac00230616a48a228bedc5515c926beadf47a0556fc57ec3845575c20a2c2ff9f1261d8c95d40d4b024998490d005c86537c6240302047c435bb500663064023073ef987977d976d54e8f66d29f1bb4237faa8f401e98e72b86c9701c483f6c14b571eea36ce705b75bdaa2a36d21571e0230472b68873f0bda8317e38cb236efadf8535a70c405e5f261d794cdfe5b2f74af56b9a2abe812bfbeaeb56ce53b0c484a0302047c435bb50066306402307f7eba4d9de9635385c6a73d62c851b7c5551f081dadfe3a3adad84273e5835be10ff549d54e9e040f6768f784daabbd0230672a298ce933b350ab6c83fc2c3779ff9697db71abdfea686d011beb0ae253a32a57f89e395da537869fc1409d304ed10302047c435bb500673065023100e3a863c67d4b8834feb8ccf7b2b382fa58324264913a3c315f595328a6ca29e9b8b04618f521c2e09f10583e3dd45f2b023054cf3eb7b6cf9040281ad130e73dd3819e90a6413f924f556d8df75468cbd59c5b1dd767658d1e079f33ca3d6d81bb1c0302047c435bb500683066023100d61971d000cf42f2863f84b39ee67da2d7a61dbd5e88a5546bb9b8c09aeecb9771ea4d830126e9d82afbd22119b7ad960231008d46ed094bac740382fa3ac181b7164f99a2a0f1bace5e9a081f98d8bd593a506b070976df09e7931b757ad6b07acf7f0302047c435bb500683066023100b548a95ebe8098fee213d5e01ead47df72f05f62edc38cb2d021ee40c5b09fb1da9407465d3a9ebfbb66f14644e5528b023100884a175899575733c408ac9de4090a7f1a71be9735b1f2d25977e7a5199cb2cafd9a2f84e4300dd40cfca72427c141c10302047c435bb500673065023100db0e94c9d18ac50f07f05024b2026ff7769a7db9c9c3e7b2347861ca7c8801d7214b69d3b55dded0d356159280975f1402300c12687acbeb26416754ab07df171a885bf9a3089973831f5a76b161403c5f6f19c422de64915b81a0430a51b653d1650302047c435bb500673065023100d30b1b575a5f57d05c73827ba7ca7efebac844a44ba1821af0a0ba0f80fe78049e0423abd955bf80c1283ec17dc750c202301d70cf70a2888fb0ff512ecaa59b01c803657116fa9b4e1d3c7e4304710dd889529fb22d0e9186ee4d74bc26624c71dc0302047c435bb50067306502304fe78ba291463a619167edc43c3081f5f7ba93eae339cbc38518cef8e3402e0802a50db2f9ec6ec028ad419874d02776023100feaf025660fd325fb22f5a71c2d378adeca4a62b76a0c5a2b7d63cad2e25588fd5ab0dbea46cfdc93367702be9b7445e0302047c435bb5006730650231008f082ea53949653ac44d55ec8f36b12a2a2bb01e139a3c8936148dd663ce8dae16d8aedb8deab66fe08d01179ba5e5e9023038d1f54d034756c58b4d5e775e22aecd229723c02518d6f85df1cf9be88caaf4e922b86f08390c59f4647983e89a7eb30302047c435bb500683066023100ee3ac07b021b3f016849cecb4641d774d7cbe3d95c6ed83d36913de23c716f9284985c7980315c6459070498deeaf122023100a4d0e0eb7f2df37aa26612760cb7ce7bc7028be433e0a381c08858694c55c38dac694b20be5c01ae203e4a3d39e236c20302047c435bb500683066023100a901da73f44e134d60e37849e7029e28b1b780084328829e625dc46dd3440b1901a2f0b66fbc3b3bee700635c8b006c5023100cff5ef96507e73e546bfa8251e14944dc0a5b02813dee43f32c863b7cac38bba3be166377a813929f56f41a6365e7e1c0302047c435bb500673065023100a7748e41015c69ae32bd6b3951c212ab0bff699ba9ac64ca26c068b727db1031fd1f30749914ec71507e679ba011750c02302109bc8cfffd0eb773828c274bcb6ea42d84c5adac360e4698cb18e5313beb1795c59f619bf8d730b9fbd06744ea7dfc0302047c435bb500663064023043944e7f90bf7c10cbea19a97d6c4ab4f000790416a288bb99f77c6850be9cc8c8994851453d9e791d1838ec92d37e97023025c19ce999e915b965fcf6f36b7ca44cd2f87369f3d28b67d58c29de0f2bc261a0e3f4cb23a371155fb093580c1d8e1d0302047c435bb5006830660231008426280c9dcf615e71147342303406aab003d384c7020d9ebcbe1a69ee9f912c41c07e7f282db69f94e792470381ab5c023100e761c2e8e691ff796192f99274e71597a6652a0550ed12999ecfef45af0a579f04ed1d1dfbb88c5cb37884c6c116a07d0302047c435bb50066306402302c54187c9004fc337f2eff3a891b88ad80e38ab51def2780ee90305642c56244691385fee9261bd66d4654377a8033fb02300aae3e5e82ce7d518bf4fe74bb65d2c1dd35f142e8dfa00b8ac2335054e9413cd0a72bbbba9a762eb1bd67def7050edc0302047c435bb50067306502305a02d84cf76d1761fdc662e3aa5d437bbd5f42ca519df12b18c3090d61b5131576f77c6e7f316b9b42696b1f6acc0556023100ff2b288fa0db4604515e287da523b2666638bccf23518e2dd941ac615520108d50fae44c5a7e1a49bd58d404bee6f4e30302047c435bb5006630640230343d81ed459a2115160da9bcde9b0f9bf7d669997556d9760bb4b1223121c758d81d03d181328a8ba994515c98056a110230078f5c3c9de5746c841cfd094c1532b95d237f972d574f72294c2ca634a6253dd75305f2d4b9a18490d44ac5d312caab0302047c435bb500683066023100a828b9d9ccac6b38c0a370e3daad5b3dedd039073cf40a9059ba15fe350477c5bdff4b743877ec608f5dda88cb5f789f023100df0a6e3312534139e05763ee10124775e35bf7397220f03493e6cf45d03b9f64a13a53c9b5d412f3ad9411263e03473e0302047c435bb500683066023100d90d8ef5e3c2866719d450d0698bd9f488244182c4b41861c61b56bcc4a8fed2472d678a34a56c4a7c084a471aed9392023100930e4abc7db2c9eee9c763a4634ecb3ee68b00f0768f6d33bc9bd31388afe1cf683281e32ab6dc2e11b1ecee7d1553a30302047c435bb50067306502300f2d9aff7c2b6c5e1fce71e8b854e1c4037a8f5652be773bb50e97e97bc19825cd09c27fcea4af8499c34ec31cfeed62023100b6507d498371e117da7b32f13008ace0886ecc6f296f24be6b42b4fc1c2ad6964c281ce3c1cf27e0ed0441c301433f8b0302047c435bb500683066023100afdde2b023aafb27c74be3f7b3a47eb93ced50171e5dcf873dc2406336e01e8be2e839f200a73eddcc3e7a0a139dc8180231009e3847199d1e69ac4773c35add15b4a134bb85a833534e9c7f58e8a753e3abbc8ac802e1b2beee8bb8f023e857786fac0302047c435bb500673065023100a4b7d4095d345134a75c3be8c6491486c7619c1a5133cf1995d62ee049611d8edc82adc6edda434b37b0e018dfaafab6023044e648a6e04b1978e7f90b5b9baef9e438f6c5051835337feab921b9c481d1a17735cf3e434eb7056a55137e82be71650302047c435bb500673065023027b93958d98b557516340779ca03e0c5a7f19d8eaa2a36aaa74324197a6df1aa8b72b1a2644265a2e68ca3ed901de1db023100b22b249846656f07a52a4598976a82773c8c33c07fee8425ded0326a00ab420df1a537f681551103891df3c9606c83080302047c435bb500673065023100966216606be3a91b4f46a2388ae1be21bc522061455f0bcdf47a73cbfb3c4ff2f74011a828d70a87698d51bae955a25302303ed083cfe72e1cd13c8afd557e0b48abb5a5217b31c003a0dd750f96c17ec8264bbb24dbda7621e5200de6b41604f37d0302047c435bb500673065023050cce12d3d9c09eab7b737aaf7a610e9eee6e9bbe632044137521676ffc66a8c480fc35f8901b126e4fd5b705dc2c1e3023100f44b5c2e06d3a30b78944772039d6eba3e41e345c8f1d86c84f4e9766a0a12bc9a6419a5d53c96dfbde8c9028c9b3bca0302047c435bb500663064023043f094c09c045a070a3d08cb0642e30b3e4ffdd4b44bbe29242ea4a9ca92d910e2827a421a348bc01e8554abf008f3bb02307eebbc22f4af2b72d1d5b9be00c82febc5341f6fa3333dcda5358fefd8d1b2f00732c3cc94bbb2b2a9d4802cba9473640302047c435bb5006830660231009ea69b0912a69de045057ee92bb2bde1f39f3008026e151f7c39e7f6d37b2468233ff2c88d18e7eb53b0fa2b2e9d05010231008ee24a14566315a2980c988ef5299b686c7b719d87f6c9b87cf8163465c49c21d9e77f9508a74e89fc748351f89bfe860302047c435bb50067306502304da2e1540c01e49bf6a0cd7ff2a3914bd2289e2584563e4f6d796dc00d046c73179a781e1b7afc3f90615fde37340454023100d253af3acb0a277237962947b4e1ae644667bbf7d5a5324be925fcad2cc0478edcfdafcc4a8a464dcae769f8a453b5260302047c435bb500673065023100e398ef7ff1fddaa6af2e1db6e882f2887ea9f1f909f5196b179e59084f09d308970ac6e2ae13d974f39434708fc869370230349ce6e818f9effb56017511ad666bcf3e33645bbf956b2aaf72681caa4176a460964f832e483be426ea6515b2f1f2370302047c435bb500673065023100d9614392414d740f19d3aa506db74758164601c90ac654a6b963d76cf3b7bbdf7fb9b5eebf8e6adfafedabbb5ac369ae023041549d28ff7c45359edb695e674159de896901f8447e26c7f5448d4a3ceaa55b37066968a28c39aba5c767c21aa1785a0302047c435bb5006730650231008928570a51fe943143653fc93776de6020662a29eac817f52347d2bae0864a2ea3be0c6cd61c36cb6a63c578f8a77a9b0230115b398654dbc8c31379139015322c5363b720fe66e6ccbca549ced6eb5d2af7e930016de6b31cb086a6a8abf32d50b90302047c435bb500683066023100e057e91ce87ee4d5974bb5ecdb0d2bf6f1c360edeb6319e7248a015e9d5c1682df1c48a4d2d6bc50dde0e4ba229faff6023100aa60b2027114122a5db38aa68fe5c5b9234ecab8fc33dca9fac6c33326d136d094548d9cd35811c7d730a0638fc4aa1d0302047c435bb50067306502307fe8020cb8fff94bb02c7c1ddd54cf05df80fdd5f20992080746b3313c22a7d2c9df6e02d59013c92420970f7d1dfafd023100e7184b80e4fcdd6b609d9954754bb57e99daac676d352cb84b706a4f584660c96e5c80c2f1f9c26203c8c577dcec1a720302047c435bb500683066023100ee6dd669c1acc119cf15e36c0e0c55ff4217c81aa5c6e38d61323d0512c214410f2afbe984d2dff24ef0a29896531bc3023100c5ad2575a19c870abb6d5acd4c83ff565fe0014348d9e4dd898d1c6b182d8b2946ef55c51f313865471b06c8d0202b020302047c435bb500683066023100f80f40c8b56fdafc785b1787a137bce38605899477adfc3404bc163b7026a8f7a7a9b68ac9fa6732f1683d21a33dc96a023100a96c45cc310aa59f0015443c326783cbc806f9b69aae58dab84d06ee77a8fe4d62a442f41db0d53ac7b0702a8d8b05a80302047c435bb50067306502300559ff7793b25eaff4bed1c6a91dca55f1462e6322fd7e9fe9982d476cac052e379c8bf1564f88687efcbb974550fb78023100e40278c1e2484713a446ddda6f3bfdeee4f6d6c7a96e5c75f1def25eca11610166fbeed157fb8c20c284d44e2fcf04220302047c435bb500673065023057395e6115cf8716477f720d67e8fc6b1c3121ea72a7b9520a335311758527f550b54528571f24b5413241024609166c023100f0a1e35d63bd3023f7cea78e27726a26317ea99eda268ca9924203a12feb3f17ac836eba771050dec4994ca86b744d6f0302047c435bb500683066023100f2d42a2e1f26528345921fd83b47cdeee2cf67542791dd9edb58a69f41406f3d7f9cfd68177fc1424b4a45bb47fe27ba023100e9eeb6ddfa328c5f4f88ab1c39a4ea10da32a955ef4e94c6a403ad0c4d4007e750061d737cf0fcb5a43b6cac2b2147340302047c435bb500683066023100a618f6e5e9e61129e1e938ad1b6f14e02a5205f332bd3d4e4a91bf759ea87ba5e86e0d97e83c0e82910100cf7048cb9c023100cebe30701158cb92ac15c8165d6e2b2865efe9041c3566b33083936e70095c4b76e4a70bff9bd0d55bc4241ed353866f0302047c435bb5006830660231009a72d4ca6daf656b37fce22112884879a3a9909457cc61d5ec2b6d324a0e94f60e4130938cbad4e66fd05e16a448e226023100994a1bd16c569cd8d4da616e14bea900f4abaa24d50bafaed7e55231ba922159f8c667c53c0780b9bc6387303d004b540302047c435bb500673065023100ba7f56aae209e9c14c3e1104a0d24d9de0beb11563ec1ee94c404a7f89214320da57ccaecd051ff102a72f55e905840d023033d359ecca305035f0343f258432f2c9c2ae129182d517068abb324d522f06a2c242e03cf350adab913814ef69444a2d0302047c435bb500673065023077440e24b09f468c5c30012b69249b134b5b5249fe9669c69be18531ae39fd0cf9872880b923096e8effab6cb5b30963023100cbe34917ac62f4c501281fee4fb57bb52085b08bc9d6fd408d2fc460fbcacaa9e1c8e8533b90edacf366934d455c16d70302047c435bb50067306502302be0f149d758b9b56dfce711d7c33adca4c398708db98f3155f3ca6d1af34f439647190fb503e4351286214080925f8b023100c48a5ff86020bd4374277e92c2ab84268e105e18b4db0b45f6a52857ebbce325f410945378ec638f6031277b99b696400302047c435bb50068306602310082468f4cc870aed248b4d1c90d64e832f85d5c83d325b3e127e1610c91ff8f5e33ccc5ce80f591c8f19693dce3a375d0023100943d67b83ebdcc8fd6d55e12931bd4b1685f548e25e7579bf11db1affe5f88706fef1b7113c787bd991cf5d37f80e8b40302047c435bb500673065023100b373ff7d5d5f58d048aba7619abf6e83ed3cc0530d25b35de1fee1965d85bef52298e6847c3b876d0b10df53e86bf2ce0230018c4c19a24b81684aba62b526cd07d1ae4994573f5c9645ff06affe0bab0ec75ef2ffc191ed51d385c3c0dfbe5426930302047c435bb50066306402305093087caa1b36930038a05c2e49a5813cc3c3d5a0a792f3f1d4f9ed2148750523dfa2bc1331274a9622e8c46d79a21e0230172f592d98dde20ca9548c6b08a00a691cd0164c8db770b0287e5aec9fa3e65386dfbc0963a06766e7c3c223320301d00302047c435bb50067306502310099a8a96e7f303f06fac539c88e7c1c128ce65e8e7cc267851e55bec00846a594d8b4e470c28d1eaccec536b2cd8bd50702302edcb378c888b6aa16db61e5e7f54b59783e7ba5a0253da74368d5bb5fa6e050e1784684adfcf767cfbefff9d56046870302047c435bb500663064023048cd8a246a430f7a9cd15010786de99457987d182f952389f3346c9fe2312d9c02250c8f88c22f8a415395951803af320230378648e5cfde7ef2de32b600ebc49ab07fefeeef3614ef80fe015043196437a2c435dc0b6bea5644d5782905a139fb4d0302047c435bb500673065023078ae73892bb235373d927792b7eaca2bdd116a109ffdf710bfa4b45e4aa8fa5d3e3e49c6dfdbb52f406ba0132022e9f3023100ad47380d3e5ca58638237196ffa6778f23101ce64a314f5951a8ef249a8032cf69bb6481d1818fae8b4432c6b9e3fd950302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230123c8f83d55f0f0e71e902f65c9c405862d06b999261090b2b3c9ad38491e2a14d2f2da5ccddb77e03f0fc4d793be7f302300e34bf57144b5e0a21b14cc49d34a9c67b2698ab94e22a52e137e474316701ecd763af1389c5ba62941adad5c750925e0302047c435bb500673065023100f0c2725832e264ad4cd560588958d69dd877bcdbbd5bfb7bf035c1c929364b365ba9a079bdaa61c989653f304ca01c8c023032049898de58898f6dbbdfd965a56addbe30bcda7e41b630a09ad2ee91ef8c814a273a1fcc8eab49224fc643dcc9eb9e0302047c435bb500673065023065485fcc51c1c87a1e71a9b0ec0ed4b528b99fa1ede0b6b083c1340f01e3afbb16abc27b2e6c226aa3da42ee55deed9f023100b4c15ecda21c28f2a6c8904f174cdfc30ab893bbebddbc10d075fe9dc42176e9865cf91a92b3aa2a26a8a1c1bf055d350302047c435bb50066306402301060f945114d077771e86320b4ba98765075492f6d9a7109a978cea1e0d278f8432227bd7dd1aeeef5dde3a7b4919c9e02305719ce3910ee72c7fc0c15563cb3f12bf1b6b5aa8c4a07900c4edfe12e04aad2dcb9a1abe54ada7a5835e2e413f638c10302047c435bb500683066023100fffc4c15c794db5ecd2d3cda5a98f1aa4fc0111fd8e2f203151e9f34f85136c2511af2c35772c715b61392dae0b7dae3023100aedfab0b9f4a62fb03107c4f562cbb0d7f5a29ae406b0e09df03e7dba4e6034d11e4cd113972c08c27295afdbf78481f0302047c435bb500673065023100da9f4d7b5346b64d71131c9aaf7c250a7a700318705762f91258cd896a4754039811c9aa8ae03d2ad4d92de85f0d649502305ae4f2e141ee53c3fe7cad9233a35036e83c720f6159e0cab06ee5ef3696018cffab39269b951f35d983e9b2e43ecd230302047c435bb500673065023100ad777e252172758d6003fc95afe941920effeb02e6f89dc1b3dba8078e422dcff57412f793eb27a2c6f24ad747b019ab02305356f7db8f1636ffef1c9c73fb3b1d5f851b1c34cc5e570f5a036051d847668a37a0599953b92246e011807d9f647a0a0302047c435bb500673065023100c1c0638c89d2da5361f775fde56c8bdd92b633e813bc2db4e9264a9ad9b0ed5e6d9663c435415b58b01fa2a70a566db1023036a39156beedcde60750badc5cef236a6c935b8a18bdb306c6f98c1dca0ec229617a6a9f873c11b4cd097301b7fba5cb0302047c435bb500673065023100a632cdaa734af7ae492799ed73b162ee1a2828c070aab8a142ce6c07b52fa84c9f9d806f6789a5d11a01475c4aa68418023005d742975b5a9828129a30bc67e350898281394a69c50c6b0dc5e5436f83b63fd935c98d312fa4bde5e60531958dfa360302047c435bb50066306402306f2e23e2e9a2cef576e0fc6a87b8c43c31c4a2a0c6b2d5ef86ae62e01a2bff60b0728647822e0a871c5a523fc4a9b6d302305712521ef15863d2d03e572f48758a283edf3b1326cbfe4b2ced46e63ca09ac24cdc0b7245ecfa28001cc4e924bcf0f30302047c435bb50067306502303d2798dfd8ad4d7ab24037b004561e1c0b55277c1830497bac97dec7be71d92283ba9754cb7516b3b987a33ac3306ea1023100dfa5d94f9a8fc056953ebdaea2f00a1ea41f86d941fddc7e208a956b538d118f704e0de9be7618c1e2f2fdff49e75b760302047c435bb50066306402305e2c6803b43d45c82551963f833e727d89f48876ce7030f91e8cdb175b3d83d61237d6211fecaeadbf01955e4b9832e502300c106c02d6a7d8c2e7c4e2491158f22f9caeeddb2bccde5411bba94df5dc93be8764a8b59e64a67b338a50440330ac6b0302047c435bb500673065023100d4d4d521f1337fe5092b91cd72f5598d12f66897b55566e2f5165b8c12652f4641b7789e4fb0405560fa3ec7bb37d4e902306c8e8778f728b453170e45bf98885eef7786f156ab595cafc086845fbf905ce995356e8b16a75ca96947fa047996d5ca0302047c435bb50067306502303b92e32f8744fca98e5e9d782e347dcd7986d565654bd274223689639f4b1ea10753303078b7378e3612fca4475ce102023100ea5c9ca53589a9deaff674b44f85efdc1ff891b27bc623dbde23de4b42d2008fe907901861b9a4134030397802642fd80302047c435bb50066306402305a6ddeff859714cfb5c250550e099838555c2d7e812fd906e388c0055a30a6b0b0bb3a237bbfd8c0a4c9d64c52f843b502301fd446ddecabf1500d56dae62c1435e5939b193bd92ee4f8e902be4b0acb74da85200b87038ab8b471d9ec5df265cf260302047c435bb500673065023055ea0e0270dc16c7f5883c045b986b7a4a813ed5ded59d1ed934c984265cb82db72c78b017c65713798456a650716124023100c680800d3a013daadc644d8d329615885a4cfa4709557d2e3f92d8908cf6df788f7ef8b71476ffb21b86ec9e818706640302047c435bb50067306502307fa0d91fa7eb08c2844b1ae54832422813da608abbfdec77e6d95a10d42c4a336d16a814c222ba26c8b2ad954116054402310090c5c9f210e6b09a2e3ceaa252e3ff433fc5b8650c0704f0fd961c97f3766170bb549859c762a28763af45e3fa723e390302047c435bb500673065023100e94418a86645f765cf8b33dd9ed0e296e3cd2768b3e0e3425c645f3b016a8fd8fef4e5358e83535cc4bedf311fdf22b202305be1d1a7f14c144deff1f132eb6fa84dd04c561681750ebe67f13611afe907b1ac731b471fcbf9321a5869330ed283140302047c435bb500673065023037f86303f96af3e505a94137221132ff3eb7ef22049979ab80a819c8d59986942c1ff094742ee88afccf84ab7cc028500231009e32db820759ddcf77f5d74150b5ed631689e8fe9c247dd4f39639898f84706c0fb38191ae7a2c8edf8ec9a1d0b197200302047c435bb500673065023100be7f38db8d011fd486d1592004c72235e878c8e21981ac72535d7b6e0a112be92a715968578eb14e8e6ba1ecec2495e2023041ef39455c3f6fe296b7b7b0e9cfb545786f282a207cdbecb518be6cf1eb138c96ec15d1f804ea7fe95cc8a2751dd5220302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023078ef2d44993bb3923d4f0ec4e04224d659ae8fc7fe5ec4f3042c1bada9cc21b3afff0783d6652eaa96ab14a8cf16f955023100efb313416cbc035407d20a3651265eb1d6dfb211523577bb8976011fdffc8b6c86d2bf20a10666fa3ce74c1b9e60d8d60302047c435bb500683066023100937b5c28eb859e2bbc48291be307102a180af512ac863b171a241084b8f38df952785a46ba476f433b79e1147a0bffc4023100a3621b2482e0e487155845a02527405ab7d2e347cb6facef956a542dfb38659d272d0b215be03e0140650a30313455330302047c435bb500673065023010c41bc34f3bb66bc6c0146fc6b7653c7f16a7b806a8b5b96b1297d01f76520eea45717e4eb0a80953c474e4ec73bf9b023100a7916d1f20ce9178ea253a3c6b6f7dc7b020ecc4ec2903869ab60ae68299e9a25f469fbf959e5c8ebb3b99d116ee602a0302047c435bb500683066023100f2215418b7d27e157f0012bb0c2cfded97a5716a0608274e0c1606d4d16e76c333f975505878c1b3814bfe37c8d9b0c8023100f152197c549e3ea2dec442d62be2e839a53dbeeb140d05e9282d0ca06b8bd07468df602996febc89d63d79b6fb2ce41d0302047c435bb5006630640230287c14890cb6865209e30f3dbdedcd8c276d6125a8459734177ee86b175dec49d0ee54176819dbb272139d7bf4e78f6c023063ebbca5e577e83562223987e37a6b5757ee4eb08d2aba1bc64fe47df514ad34ef2407d88fa557dac8c1539205e185fc0302047c435bb50067306502310085defbd21772cb5be14b0ffe7c7de8c1ae94bcb57b47856f547e2bfd011aff2d330a4e4f60cd48177fa9b82c556f375202304aa9bc6578bcfc1cc694a433086ecd0c998e635afd3f63a842b3edf208232e37104d2dedb1e90b83e86960a7acaebc7a0302047c435bb500683066023100fd6f76f2cf34c3d41970809fb70e3731dd8d049c842c8ba48e2043c9f9271437fdba1b22196570e3a7f62c0f60dc1bb7023100f2c5a576bb0af341998de272a992f4ff28c52f1e3feded32c4dfc0c80780905399292b74a2c1f4bb34657222c55057ae0302047c435bb500663064023077920e7307b493aa67097353c5aa45e87091b08ac294f94c7da7f5876e918f026c9889d0aff2f7186b7cc297689a72da02307281b6a59340b019413fe02eb946ec583f51ed9109b6451719bea9ca5229d0d6a2b19440cead145dd1f623c9f61725a30302047c435bb500663064023023022cef3cb2bc5e0a06a00699a1641a75a8346fc0e96dbccad7ccd209fda49f7db97f04bc2d419490a4d9fef836941b023069d8b6971a7efb1c7b2bb8a2f2f31abfd3bb24390677d7fec84d3e78dd73f94519435d833a70cf6870e3e9fc8b82e1ef0302047c435bb50067306502301d2651c7cc3ec9f558ce14257b0bf38430f249beac00e56ebc8bf939d7c6fab1032e283649461daa7a5c9de4f7bf8e07023100c604f29d0f8cda3641b623ef0bb8514adb79815c5b10a7efc11002fdcb60d3eb2239d0eacf7e9844a1e8835c48c74cc80302047c435bb5006730650231009d89b7571d822eedf9760dd8c3e1ca83c3f604565be5945c37ebc23e1eb88df268863ebab52a7983a4ffc329afdadcb102304eb0c0d1057e9ab7c9c3434510fcfe1a3fb04ed6ebb3a80a33bd9a14a766d9f1c97a50cae1b17df6a1dd611478a13ed30302047c435bb5006730650230136fb60a60143ced9db63c8e73e2208fc68229cd4adfc7522ecb04a3bf54d12cef5a85dfcde049a0121c8fc89e9fa6f0023100b63d8e7cac729c3b915459cddaae46a81b946e20c88d1eabbbea88dab8a7cf4a3a76539347c3a3d7d909c81f377c804c0302047c435bb5006730650230178e48da3b73f63e4d5210e017326fc3fdf0c6ababae371cfa8d8bb170de191a89ce0ea7a351f9d3ec8369ccc9654025023100bf6970210e776cd5b20144646f3e8779572021c50d7969500e91e89af4738aa5d7dcfa84a226be278bd9eb5ded5e401e0302047c435bb50067306502303ea2798c9b27b93c9fc710cba88e1a9250c461f6d23e3142e6d709254d3201bf38a101e56dc9baf464dd7b13fb3caa38023100d1b3cdf684a23b099b42923969eb4444ca9087dda4ee684c1e3ef8f00b03c320a145741d88fffdd1faeafffc2d7638e70302047c435bb500673065023100ee3b30a61759af1df7655a9d9ba804ddcb258e452651add027d466d25f58b470e2defa7d2f9939d62e7b2de3a239cab102305890a568a69da9f24c09e3684e30c6fa75257150c8c29f051f5b397675843dd8beee0bf79d27458ae6ebae61209cb3f20302047c435bb500673065023100bcfe875b3ac6c51ffbb24f50cec503918a845ca3455311fe2f145cfa88d2792be7cff529f17a9e9333aa0a4eaccd008502305c55337461bc25431cb8bf35eb793ad0ed318d93b3daba194d5a8a544ebdbf6b4da9682b5030780d0e29265a63dace640302047c435bb50067306502302b7d7608d30e5ca9c978896debc080285d755ef15a9cda567489b1650786bf5526bca138c5d1b58c18ff77da62fa278a0231009bba8a903aeae26c74223fbcf6fb2de8d2e43a37f732f503c8a4a3febd0f6604f7e72716e1766d1020af821215de071a0302047c435bb500673065023010bd54b1e0f479b27cdd49506b395022c0ef2ab236e0360b3814e36836c0cf5d6dfb1e7e04ada1223aaeba8cdd90142e023100ac88762a2c98147de16d98c01a6971d84c56ce7113d668027c266d6f1b499f011f16759bfbf882cfd9c928db44ae00c60302047c435bb500683066023100fe219358aabc64a3e7a7279fa4820ecd22037da7e362c0df7163652abbed1f1db0c220b125a4efd1398412438b9c5f26023100b4b84fa51443cfa317280e0d2433889673eb1f9843292eee419148239c94039a1f26f1c78772e70b5a904756c261a02c0302047c435bb50066306402303cc183b5e663c3af6ac3f94e6486c79bd6328cacb882a21918a79235cf632851e66608a9a4a730a8b547dc9fcda7f0be0230771d56f6b7b3d44605c1b1a9962d13e55222ed46b02012fc24dd71ef644589a6e6cc01bb01948b983e363f203d8b74180302047c435bb500663064023034d9783716a216f5bdd91a9009fa0c0d43e893adb5bf48e5c230fe602f092c58a094a47e496f6b64f7c6faa6c0a4504b0230258ebd298b5dae432a2d557d9d389d10fab04207f07b105d29145be777c16598bab5cea007fbb677446c2b6f6af6096c0302047c435bb500683066023100f2f6c70639ace52b8d63b3822b2fbdf0923086f0875b176e18e4759b9f81781ded0543cbe0d0a52c478f27ace056243a023100ca93dcd4d63e24513f0104682b59ba6e5942b6e32907e569d913beba00cb2ffbbdf4c4d5d09f2f02deeb412bb99265a10302047c435bb5006730650230641ba88523b31f5b0f44cc3e4f1f49411ac8023301d62316898452defcb1cce776c54e4962f3632c4540564d450a52a9023100f3cb87be9d03b1da525623430f90357fea426804addb6e22da3a487f02356a5e8e3ade608424098238052608eca06dd50302047c435bb500673065023077c02e9b0f7b2c612ed9b399687df056c125db8255c3f6cb819ebeee412fdecb775de812437abfa9cea8d6cddb1b8936023100f36617f43ca4d8f5ffe5a337d04f379481fcc034f9bc72a2e0c26b54953e227625d58ea90afbd97179a04f45090ecfce0302047c435bb5006630640230522fd42bef51835bf1929f89dbe86138bec3b932fe831824ad8e9df0b9f7ec338d4d445dff7c2b1051d75d0ca1b56c75023055688bf73366c06dd2f773d8af1f4cca2570a36e00824921ca989f40d3d73623bd82fd15efef7998e82ff3e51c0fe7690302047c435bb500683066023100d42f88491788c7be408c91eacf1311261e3e2ffb683e926150264c6f62c0737292433ab2be0d9bad312c2e15a2111c4102310084f659d7ed118de3bc145c36f801056204a1b7b18bf15841a09eaab10b36fbf69e84682b85125c320923a6e2a8124d660302047c435bb50066306402305d19226daaddf84bf0c7376997eadbe75b31071114abad4940310aaeb9583f246c5cf98fe0e1a6d7b9047f8d93b18c5c023071441af1ca577629052043a0d1ca6bb45901f1e3ab7cfd9963c8364531e7a1812df027814b96f7cf20b2396250f0e4d40302047c435bb500683066023100cea82f530bc53c7f420db3628af44c0ed40af8a406b7c080174200596acd6915fba35d192d64a29e5d5f734a1200609e023100a699a0444db66ddd923d0c1799fa75bc5dffeedbbfb9346c6a3f016dca8cfd546dfb89584e22401f7910958460a00b070302047c435bb50066306402303bb76b6397d1b689b2ac40853709a4f7a91e1c0d79156cff411ad2359dd8f3f7e8ec6b992561f0d407d1873eb5399bdc02303340137815d138097e847d55dc8d8af903fe94abeaa02418b4b7ea959cb87ebf370a73bfcd62638f0b9642443919a8860302047c435bb500673065023100b7997c3b36258b68ec64164d477b42ab5da371c8a54c349a586bc75eebe26bf222eeb8421743c8f4a46a614cf7e6c842023054128eb807c178f4d386dde21e687f7d37a7e665ac746e12bec1decd2b5c18e8cb2ed40cbf447d131f1af4fb7d995cf40302047c435bb50068306602310087d40b8f60704c313a36bdd548fd53df3de24c44924a2615a9905c5be9edf9da85b21ef2c1168cae67ff6c2dca29d8d102310086a385fccf73d66bea415c95721ac44c9b9e8ff3c32428f80b7d0e0b48034045f876087ace9132014c581ec9c57379bc0302047c435bb50067306502304214a1e7952bef4f933896f8f22d86a196fe221c8ae3ad461d3e6c5cdc1e1fd664b3604da9f5fbb87bc14a8e9298fc0b0231009d01cecffbee36f34bd6a55c38cfc86029c095f4610ccbf170bd6c190f624fcea1174598fd3d6ee10d36d48d70b930370302047c435bb500673065023100a86382db7e44ea31f11bda9b2a295ee687d57a4ab55ef4e972fbab844bdb114fffbaa0e07a4a8e7fc62a1817ba46c75302303a0ca008bf93c3a654ace6e8aead4232de1e7fd87b11e8ea9c710420f2c12db9df6a319357f916148d052398c9eac1b20302047c435bb50066306402300aafb7c00538e100a7005b8a6cbeefc76180c5fd1f8833f2d4415daaf21ace338e6940b4c116b766e6e3985fc85d1d3b023068bfdfae03ec615ad1d6433466ce7ef481cb42cd66f46441bdc8c8a9d931055e83b5c035c4e9d724a2ba403602a522be0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302871d8f7810e16ba520872e6af70be697cd7b94c798b75d8ef5c57535e2d81098374cba13a1cf5cfea46fa0264b69ebe023100f55c95a5b12ec82ebc6466563b61c3195af03ccbb68d66aa6242f57879613e061e713e7d9009f8f30516b6474d9b04f80302047c435bb50067306502304194ec55b14446d8bd825d8e9e21f69478e63ccea742257f47a7d02ee56655d65fb7cbba6b06d19ff438e2dc2bb9dafa023100c60cfe208679416b37d772124c5bd563e6a54eac44a8491586bd2559768291472d24b2e2ac54914de62790cbfc4c448f0302047c435bb500673065023049ed9c3fb2c8a72ef62595a03bb376eed82853408731a073535a7e5948d53e6c67d66c28120958056e4d23695f4c6c11023100a9e2323dd39e5506ea261006a6fc448170e1406a2e209c28a739aa496b6b38640a4960a31160a0c6046d8cc5ff3c1a1b0302047c435bb50067306502307686ab8bacd19adef2337703a397b9c5c8b2c4a491c00bfda10939445fc0be9c8a3cf1f2bc68d5e646aa3432a4530d310231008f387e64741f72de597b8436b265cdc224fde752e77e04b6d3eb9194df66a0cb5d3246da2e049c62953571aba66498770302047c435bb500683066023100fe67fd15122a1c0cc5840eb9dca554d151ee68601ae540d6e1d522861b44445cd94a4ab74066cb47c58abf1656bd4cca023100c305ed76fdf073df81f8dc789dba0dab32805a830b2f22ed0db6ec32fe4f5b00c59403e7549b4f5a150fc8c61f9106800302047c435bb50067306502306c034eff356faddf55620deb4cacfdef24ca69b9d7a18b20e82a6e4a9ca51b8491fc066d1220694b667b9657fab5a293023100b1ddf1d563100d58d69e3c689ec27ffc1baef2adc34a9d04d9228a7106cc75b3ea53e6536fae3e73c6b8726070d0cad40302047c435bb500683066023100b57f27062820147a88d1a461d74a0d4205e87926eb20e25e0121674ab5d3127ccf7d21a8a54b6e43aafe87cdc4482ff8023100df7b6d8e9e370ddf8468b0aa1e6195950d1bf4d2687c5cbc6f5877c6d76260597add62660c2a3367f2a0e2b7b2c06fa00302047c435bb500683066023100cbdf6097abe34f02420e84094c04c0be26b64fdcb8e8c24f673889db0d8514b677def981a6b9b0505ca1d0df6780cd8d023100d559e530829c224f74571bd574b59c8decb17edc661698aa081ecc182eb860358f69ed333a45685bda34b05ef8a3c53a0302047c435bb500673065023100cb01ae39335456c7f0ded021b4d2784b88dfcfcdcdbd70616627ba81a48d8ac65eca038e158a043b00d4e259146ade7602300b06f5abdd3dcf283974baa8a64ad76dbeb06702412d052c7a0704929c2d452fe8af67bba745bd3e4e8a62bbfd4611810302047c435bb50068306602310099871e5697cf9cf9e55a7a7047e70db0a3e529823dcb161ba3185d38f777b1163d7e0eba957e14b2e07de27a72c1691c0231008036c4c67d7c11505ed57f5c948873fac9987660d6896322452459351e69aba8b3e4fd9463e01def1332d6ac4b7f7eb40302047c435bb500673065023022039cc7e164206e5f4635378110f3ddf659754e545afc56e8ebc90bb4b21667bc5268a2a672352bac95dd0ac70c34ee023100955cc66eb4f2f5cc1fe60ed57f2c68b260eb97d6318741589bfac9bf7a7da86eb39a730badb19518ef17b576a04e8b450302047c435bb50067306502305144a68da42dae53b35b19e6fb25668042896730a9139766bd3312e060d918b1ced78fe741ef459f3ffe11a15ab86f92023100f4da2e6af8d1674c392bbe9fff57e96e0d966aa7dbb0b9ac2ac4a9ea66447bf6eeb26486fd44abbde29c8102b3b706710302047c435bb500673065023009a875b6864bf2311688ac0cf81f242c0a0e8292242f9862aaecf8d4d7774e9f8e0ee94e42d0d11dac9ac2047ef8bf7d0231008ced4e2453475c51755deebe8a75fd86a91d3f61eae58cd8107eee9b72da4cbbfe0ba29a60fe32a12b490751839839be0302047c435bb50066306402301acee15e34a937cfc6c6252f0264be1ef807f35bd0f3d55b70053ae8b1b840ff6d483a0388a2943c95a753e22234aade023076c03c2709e44ba733230ecb4822d5fff7e8939ce992c94bd80409d467da6a0000f2cbde761bdf5be44e6d7789887f080302047c435bb50068306602310093c591a76136223869960b9d5ecef022d8a0ef4004bc45e43beb2dc31b6fc6c65b4f0695af810ce5499a76763967567002310088fafbbb47a715c79d08c5c3b6924f9349daf25ce5150df560c6ee771c5fb6531b1668cedee62078897f958115cc6d2f0302047c435bb50066306402306e19613091e6764af39b7570bf08053076ba7346bdc1210dd1164d62357803b5f512e04236f00a91d2e3b08b5b4ada8102301bfe58025de89cf7a21ace05177b38db5e27becfe2ece4ba79325f65ce0a4d53133810575c0e5e5571c782405804ff120302047c435bb500673065023100f920d2653e6507305897f03335e99797ebe0f130287a2d9a036fd1887cb6fdb5685051ccb59ce267555d774fe81750e102306400bbddef3da1c4185a8f260126dd713e37d7ff2c5b3df58645bf6569b7a49a365e02a4e323016409a1e01cd405404a0302047c435bb500673065023027294b4958c4c623dde0182c1013ca34f022012b23157b91301c4d2c536819dcb3df679dcac4906ba89a13ad97079597023100e61e0951439597361ad3f458e2837d17b316e4d806aab598373bc9ae79237354c9caf30218b446ef8d556df82bbfa3450302047c435bb500683066023100cf1c195f6f14a80c165a2f49d5abc28908bff16c06c0354044f3aaac857e6a12c706f288c9b060a4dabdba9fc567d3a7023100f47f3e745f7ddfa9902f4508a74e3491e33d3a18ccd07b01b8c61f8afbfe848ace3e6b7355eae4d25ec2537be3dac1f60302047c435bb5006630640230053ce46652613e1b8d15ac95971a5e42a011d1fc6430211d8326d79c61e8fc08c6f4c7620744ad4821a8d16dfd2e44870230580aebd9282c4a6ae2117f6d00aeec6af226d13d02521b99aa173b90086aef64722e704b1fde9ba58dcc12ce499ab4c20302047c435bb500663064023004142788b49b157724339b8067e17d0e8bfa308de59a8a5729a12db4eac5b2b5d794c1b6cb2eb8f1d8949efcf2e21aac023046de24713e478a9365331af45be265411e245fb7a2fd9c4d773cfbff0469b9394a51796174a1ff1eafe7fd8e6b6bdac90302047c435bb50067306502305e44b83beb5a974d01203bd497d8930a72969e872fbce0a0a78ef10bb5fc1d124f612223b7dda04b25dd5ea11c1a3929023100990e694936bb4c9b72b457e853f3c1e94d19dd64160cc7cd8d6dc285a4765ca63a6f3655c0beb6281f86ed799e44b4a40302047c435bb5006730650231008e1c0600caca1dcfff5ac87c0c092eb23df8ae4cd4d48fe75d9eed8c323b9dc261fed0e3d7e60774effa90a7832c941d0230207e0325f840f23ee3da35bcff8cb13f82452cac057c99ca8b196a1d592dcabc8a462223dcb13b50e4377f220a812f830302047c435bb500673065023100aa237176bb3fad4663ae15b91f20d2261f77e07b3d6ffa414a2bc438435baff28ae7b65c432df74d5bad1ac1d8dcd354023041305084f3e957f3c7c06375fe824f3fb26305fc74c5240455070301fdf97ec429bb6b63b29961896aba86e698ff12fa0302047c435bb50067306502310086347a06116f3b3228e0e9cf3ebf5098e9594f73658fc02972bfe4224826f707860712544c5d8c1596060e4d0526e30b02304266f2924622c55e8d61fdd85e3fe402b12a1d236c7a01d88f04fae0b758b73258adbc20fcf1413af6559b6019854a6a0302047c435bb50067306502305d3c7977a17a270124b463fa76ba092073a9441c5fb8249e37961c9ab15aa2d0f6e32f2119e8be076b04a8dcc4911fc1023100a19947f84541c5d016695851bb8a319a8cb80bd0299d0c475b909e33461780fccbfb3f8691b8fcce9cf55fba4929e1d20302047c435bb5006630640230383e10ebe1b39c8758804fd4aae6dae2117db41cf3fb384bd20680e8a2eb4f3076dfa57e758c351bb29a3504190826bf02303deb9487250c8584d72de376cc62135cff9f180a6c7f60b9210960623aea8f95d8641eed2f419125f9d66a432721df160302047c435bb500683066023100b66938485f759cb4a0a3bbf0060afeaa43923009ad6dabcca1d69541e40dc78af92b9235e2cb2ae241cd92ea90309f5c023100fb42e2d70ac6abe5256e7e6e9740c0e2cece87b65e9ee89e24fa0b74bd40a7da26c4fbcae99ff7271a5a7ba87be9317a0302047c435bb500673065023100cd07bc7599b7d4e6682eb13151dee8a4faee5eeb5ceefe4e4e9677c5df71e136ee8de652e7f07792a48c6037a2adc9d202302c98662ca424786cc3efbbbdf9ae68ddc5141a1abe874b7d7ecf54f91b5f4b5a54b63e2fca6834318154d03e64210f520302047c435bb500683066023100d87a4a9b7b00aee9442257eb300374867d1021014466edb4bd8ac4d51c37d0c839f9ebfa4c6d652b8678d8633b336af5023100ea847c8e0e110932d5ef81383b0cfdf90ae1206d2eab67f424e4b3c68756575d8cc7db06b5a36395a1d07f738497c7290302047c435bb50067306502306070ad9527b9d9d6169045917318581ef4b82af8713f654beb1dd9c04b2e5f946d8955dc420003ae22728e5086d347bc023100d7d2032b55a4ce6576fe55950b9786d107f6b9e93c0e163851c9b375fe8ba922a62b8a0bad0077aecc2a38bb5677fb480302047c435bb50066306402303386cd1206578216a48e8e90832c793eb087ce9ff926cfa20ee8ed2dc7410b186b6c2de91c30bfe9b9fc11b29a560969023078cd24063c1ff6c88e0bea7ebbe3866d6fbba95655b407814abb5c1b32dd48afc8abc4ac2c7191b7333d67b1402677830302047c435bb50067306502302da13a5343e545827c8b5bb1378987ba6ffe831842f0603927540522678598c9408cdb8f3d3d1a0ca79b1cbede611b1d023100e9991bc77cdf363001b095a22428b7ac4643da9c563eb6ca0358534242ff64423da93601f09d8858a72c871b695534050302047c435bb500673065023100a4ea21bc4b89ead931bc8a01b5e9acfcc4821a5a2a0f75964f4da316d69c30177ba0848695fdabda5b614c59e1de7b4a023031bfb40e1160911d6902c657ce53f9bf67ec25555594e6583a87a533183150c8f9ecef940126b6a7eaefe871752e3fbf0302047c435bb5006630640230095cd05e12208270de6fa83bb16b0117593b16719bd206ce93248a85cfd0006008d68bee0db6980e1107cb5814421af5023049310ffab1678d60a51280eeca3d9dd16974421684c1ac6fbe5802b70e090279afa163bb4ca8210942b101a9924315190302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e53782952024191ed20be1b467021131cfbf80e5abc8b8145aa98cdcfdb6b87193584730d3b172646b352a457c033c2f023100fb1cda1da23166edfda203f64b73ed2bec3ae9832343b8199fcfb963859ba19736b85b8ca34982e61c8a17e1af3f4a470302047c435bb500673065023100dbbc544f2f3ba0cb0cb7ba34eddd7e707c2cc94f439900fd2267f687877a683513c032e03c2a06bcc1b3363e3eb3522502307eea82009578fc1bc334522a68b0f014fa1356397a4e3bc1c8a27f7e5cb624290c123dd22d757762870912296448135b0302047c435bb5006730650230331a2e9b13ece0758137657aa04a9b07abec675b541c813253cab5b929517d4fc1ef54ab8c408af5d13ce6787f7e4a41023100ee099999fb213b407f131d09ec63659536c8d2c6e9e32a2682856c29728e44ef824053db9700eed722d222ad2f5f4f700302047c435bb500673065023100ee22e7b99c1082212c87d7747c35ae2ae7be401c8cf84c2cd2113df0bd352892841d62d6da1dab3910e7597b02190cd5023005b3a7ba34f16bb64f5a9f147842f4a4a030115e450f721f484e396e506ab34ef4c37a091bcbe8d6fb62ee11ce0946a70302047c435bb500683066023100fc1768f0613bb3e19ba7654683af8e8a20f9e6e81b773cbf9b1cb699578da231aea1d035897a47e1004c3aa12898b77c023100ff29036dee92a23ce67e606c73f177187ca31ef6bedf0f1dc9ecd44b824c41c92a048fb46d165ad4b969316e23736f750302047c435bb50066306402304a8c2debac745b746c55607ef15718c53c54635d81483f0fb7b92483fc8f232e69533be63c1af39ddbaf41a40206d4b00230040863217632816b9370534d4a06f44f01473c4864767f1cd8e389cd74b2a062e0de7a4d04d03025bdfa558da7724ab90302047c435bb500683066023100d7acfc6e5f4159f145553b73fa3b4af8b8c3b27b7010fa7b6a0fe3f0954dd17e0420d6050b0ec3852ac653f8d320910e023100bf3aeeff090be9352d5b9f1d1a06cbe326b060476b54bbf2f55692d92fd52e720e7d2df0b7b1f51edae6479e457978af0302047c435bb500683066023100cb6665499235c2c4d81556b35cced3d6dd30f88af122b48b8d29610a50546ce9cd07b299a5e232db344e0cc2d1e2dc5c023100cbd29198e25f38aed8fd4ee89cfd0f8c0a9f513fba21e1a628b4ce0374ebc3d6926e6ff044b0382b790fb246435d44af0302047c435bb5006730650231008318b819844403ce5e109a332a15cf1c3bff6c06f36354dd217da5aedc79716c0fdfe9f06ddcff9c447d742051e42789023024c4b60f251c0bdc6abc5652d0f0d6f61b22eb7e6747b58156d505415b893ccef499090f26d829845cc8a83e5db7f9a30302047c435bb500663064023006511dc6d663b01d7e92a6731bd0ea06363b998e85c8e191ca42155bc170da9a97ce367186e40fd5afd5e4802d347bde023022f11866c48704efba592f6e072039d9b7d6612511f641638f433906afe59886841a5cd297a9e4db1380ef61fc0a293f0302047c435bb50067306502302cdefe858a056ade89f184c53d2aa7d04e1a2f8751809ad75ebb00831d386f50898df5eccedaec7a8e3f5e6f98df2856023100ec9ffcd111fedaaad21412fb404a181dfde08b92274e1321728c7233c5957145f3b103dcbdb043509f8ab4ae4c51f32c0302047c435bb500673065023100b1f00beca718ad6a8aeba4b53b49e281d7ac0ea4f60255c43e3e3b883a23b0e582f2a0286d8699c6668fcfeca37fa5b4023009edbad877f8aaddeb608ce9977e8f9aa7cba8193894ab8b1d38633562b4efd644fafe9ba8005bbf894a3658ec7bbd570302047c435bb50066306402300c59229b1d911d3b1f77b1f2d49b9bc532ebb61dc8fc10ce5adc51ca7974c1498b09e9f81b8a116f9c6571c454fd16f502303aca785bcebbc972e11e08aeb1ee0265fbe42a59635a271c8a8a7dc99bdebaa777eff05dd175804978beb11f33763b160302047c435bb500673065023100ff7df30df3adde5569e5f44b9067220753787a1f72961e6316bd8c25553acf85be176c9c8afd200df68700ce7ee1cd65023078c109e8e127bff83441e1bfe22624a83c6134deadad3332b0e0c7290107514d295b675a3fa1937ce0c192e1ec24e6c90302047c435bb500673065023100cea95b7c72696787df0d8ced129d73a6d1f0ff9b0072f2acfd1116cbae87e4915592cc0bd4f1865c0cd53e86b58b25f7023037ecc07b06ca715e07db60cafb287a364f89c90475eda31fcd66c1edd7cdd3b7d63a8c242588cd4b5fd40bbde854bca00302047c435bb50067306502307e8012dfd3a734904377b6dfdb29c6dddfe61fd249fb6458320d206914d6f40c3c446cc7fd94d779ace3d6495107800e023100da7197dd215ba04c6f05b3a4d9a92683ec0f5b615eac1afe6e50b12443c9e9cc8cbd5c103325fb1f6dd39e179db7214c0302047c435bb500683066023100ff6e22c49f9924f8987ee3c72f91a4d6a604cfbcab1e653ffe27e798442e3b1fac7b2b6e6420fac4b2e9c38e0f5301ee0231008509abadd0e7cb5e866d2720e9fd528e25889283996047114f6a0f975cb1045afb0c244c1533f4cc0021e0180d2a14540302047c435bb5006730650230796e838d0845a9aa15460f33d799522a1929f52d03039700b39d2e661fa9e0a51124d5a98c3a2ae7e9ba022d8a1b5adb023100af73f1667b01fdbaadb32a06543da6ce992d82f3e35dc69c515e360a86f16303a8226bbc64a749fbb369d970630e5bec0302047c435bb500673065023100a12719edea31ab5eda4c998fc74b86c1d72efd42ef8fe82f46fbf3a68e3a1197244bcfcae3731740b35ce1c7eaf1583002307accdbceaa0d069fcad8a093966957c92e665f8562749864c47dc2a2d0b48dd26a4b2c1dbcb362277751b40d93c2ed4e0302047c435bb5006730650230178fd089b58365e687c421a9da91130b0c4cadc2d79c435ce0198fd20338c79eac1d0cb04906bbdd131c802161b2363902310081ff81f880cf125b4bc5ff720524831f477660371a5cb388bd32bd1f8fcd4e9a69f194a54e7dc47bc438a9684e0ce0b60302047c435bb500673065023020b5ec134d47915c73f43ec5a9d074d6a345a8bb9e800bb098d3504f45de2d888672e6340e7097eddfbacc7586bb48ff023100d3535c73781a1d6d499f6d87ebe2ba637e8ee16bed24120f1b3f75b1def4e48a66a92faa1759062250ff356b6c38b17f0302047c435bb50066306402307f4186f276931d87d045410323b9794eb1fc853f74cf47ce016f6eb95719b4bfb8fc8cec03f562201268d5a7b6918627023072765244647b374953622f0cc4aea19b52083c0d3f6039121eedf934a749c6c65adeda4e241ba7e88ddad1a445fd177a0302047c435bb500663064023041e192b01f1a4f600039d02b1b6a3b15fe9f7afdae4aedc46720f503873eaa2e2c03fe3d8c12a8597c334051f9244743023034ca1dec832fff7b14ac9f67024de4a101f86315d59fa17a1e1ce49fc0f70bb9830f435ea38756750fe6187696dcc1990302047c435bb500663064023079def51a5fee4ad9da3694736c19dc714242fe714b827d2dc857dfbff748499b87bb0fdcce69ef3fdba8985234ec5b6c023057d1dcde796d7df33877da525c96a1d28050ffb63c6e69692e58673b980a4330e30e2f180f928ccf343e00b119da82ba0302047c435bb500683066023100f3fe649da28547a99b4408cb9fcc565ad111a48b294b51e3c55a497e1d57425f6cb9969c6e38b4ca1b7664ae168ccac30231009a062bfb5c3dbb2225ca6c1ccf2ce60fa26bda0573fffdc4d523a6bcacfb37888403cb960ad394f62f939d1ad7e267590302047c435bb500663064023043ff3d932aeea33876fd91b9592f028fcf6437ca594a09b38dfa3f45be1846ec899832955c98576c12b1255a0a494f9e02301f80666e238c21713a399b2b194037fb388aa6ea01b97b4abaa877ecb036dd921bd8a085196871f741f733658ed7ab0a0302047c435bb5006730650230495fadcf22bae273a391691236bd8b945a35171bfbde5380b9dc49de144121f2cb73945d731f29682df5ac828792f739023100d0294f195f42db23aedd5c754d6f4c059f17e095865975b233bd9e260e52e45e4784f9ef412792f40fb6d3283292e9bf0302047c435bb5006730650230729c6c9ebe7f6e9eb8e4cdb776a59aa1cdb15687cc7366801281e97252e08b4c12fa463f8671fc02d39de0157fe5914d0231008d905961f09290858c0e3204ec400815e4245c3de40ef87dee1b42321dadde499dc6fe246c2e1b8136602baf3658d67f0302047c435bb50066306402306875cef1d4267519c2c77bc141f88a30b2c54ab5181349fd48ca455682f9a510b414f5cca581fba2baf45f6b74aab759023071a143d27849e7cf5151194d4e3728e3421a64edf87cef2a2485c68e11eb63828929981a20cc53ad2d76a21750305c110302047c435bb5006630640230317b993c1df1697b32395508f78d80f8630ef12b190c90abf35a850b310f7b4a4d82024fd9e2ac2efd3bb3a504a01d320230031661f26a7041cc684535f82b9fec9403b061863c8afc0ab29c9e5a007f283b27cc7fc570604e79519ae385b97f44de0302047c435bb500673065023100f09a203b07fc35ce676379067b3f85f72a800e755b9dd9f0a3ea4abcfde0118d87ad512bef2bf62feedb9c96684f0a3102306fd7225ce791ae9082fe6cf9dbf23862cc8c513b25c09b4866109b72a3ba38d4e3465f90cba83b2a389dfda9e0c9d4760302047c435bb5006730650230570fdc9b3299aa8612d375a4f3013fb0d3126e2ca1302ae66764390657ab2bfca3169cfdd17c7292495ae84adc3fe69a02310092d078e7ae6abc34d894b71c57a718da66d475c093c698f09305314deefdc9f66510737fe8d0977169401bf25e366ae90302047c435bb500673065023100d1b47946668a093191b300e7c01c787f2e10a4957c57961cb02a6e89b38487918445cf6e751e02509929dd260516ffcd023013c51abaabfbe7e62ff5c81493962a0ae6297b2b3ec4facd811498773e1fceec693064b414a99592d77466e1c97cccd80302047c435bb500663064023057298b357c2e75e77846ee4058a5861579d258f1edfbeed1c6a4dae300596a3e5d1db07acd239701bc42d051c3d4f6e702304d41ae35af9bec169b81aacf8115ee13450f37383e361f96bf5123f7dd21dade89bec8f46eca13bac6ef78284d08bfaf0302047c435bb500683066023100f242dc5e9b93f073d3e167aecd0505a8a77693fa7367b3688a3e0f25bf8901aeeccdc4818270a33cdf9d930dffd071ca0231009e9ba5331b66eea10b3c8dd2eee112b52b9cca3fd82f3e7cb6772354a80be420cb8fe342e9e28936b12c1416d7b1ce4c0302047c435bb500683066023100883cb9a32797defb14b5f3b03073157e31b650caeab4bc2bd56252209ca15a43df5cdab5f46d38fbf234a865f93cbf97023100cd5c651c73c227f3904ebb348d82a18352454acdf28f5ffa1ac53cc3e31d6634f6f03f8ad506fbfc6996ad210e05e8cd0302047c435bb50066306402302c0049b73cfc2bc53982862d8e05f6c70cffff54cbde113f13a58e8826e4a5784d9e84db651b48a3a37ca91dedd90630023003af71eacdd4d4c0896f4f54b91ceb75988c6bcc054a3de635e26be47ecbe03451c76e7c73cd2fede5c282c5e4fe9a430302047c435bb500673065023100eccce64ce66c56807d4b341779627032e4d35b35deeaa8bce3821de166e2eb9c6f9f7e6a7de6c39214984f9d80214d0202301151f88daaf94445263cc0e697c5fb726317dad8d7fdc370338c15b2f305038fd4309d18191f9528d2f0b5dfb5a5b6690302047c435bb50066306402300a126871c8544d8823eef5bc57ce0ca373cf18207536f10ae4d1ce3bbb5114ac7306333b27fb50ae2dcfcc339bf175ec02305e27d30ea6734e8779451b1200c5c905761234bcc1316b5f99ccdfc2becaa8096cfc98bc5ae6ef8dc433abaf0868ce7c0302047c435bb500683066023100a5216ec1a6bec115790b7e2d9b9b51b0265ebd3e0467d2c36e87a797701ef1673308aa48e165039c48295ca0930a2e1f023100f74305a818f4ef7cb10e9e667384e6d17d47ce25d0afeaae2671624791f13fe3c34d8d3b7e8ee229924702e8be9e01fa0302047c435bb5006630640230779ad484b0ecc84f211834ebc21c1310ad3f31d96256001b2dc9e6e0c400a92d540be256c1e00d6afee3479af2be15fe023011406aec7a4085999b4174f7cc014732d28c2c7f18f1c27931ccb577e71d2e140bd3b87145bb6fdc56972992db5478920302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023060b16e007adf869eecda0ee4ed4beff9bd32a0ba90f350147a0d61e07cfb65ff1b7883c0f4a2bde282322122a397c1620231008151f87a9068d5886d18d5ce1ff632a7a6691f1dc3eb7731d5e87a1400e21f23c0d39f94aa83ad873325bf23bc64b5ac0302047c435bb500663064023029965d75c065819ccb943ffed828c7c0a52f0edaeaa8db8c9d017df3f121624c44a105b4476a3776bb556ef0a2aa115d02301b5f32a367debf16a9f295e169d6eb65b80fae09c9d532466c1163ea0e19c25cac81866dc58a506176183304b93660630302047c435bb500663064023031398d19789bfa736494657b42d0101721ffdd444936802240bd9e5d3ccfc248396e3d297d3732e1a7dc729dfa553c0d02307792b0c3183d3aa59563951ed577c53a268424ef5d3aba2bdfe2ae8ffec1aa5494f989aa8bbc21ce24c0728df637466b0302047c435bb500673065023050f9e7ee039f194aa69c6c0bccd98df94e483aae722b0107dc5246b20c5bd0c8c8f2835aaaf05477a74b8f6b7a4cfef902310092a21ca9be3226f6b461835e1ef67fc2851fe57b3f4288bd06032f9c5f52b88235a3155b21cfc91b5d0430d6ad99b8080302047c435bb500673065023100967bf8f46a362d2f6a9de70a5176e54e4a5dbb6d8af6063d9bc993ef181e9382dde499fc455635c03ed367dea2e2e7eb0230736971cce059dc41b79b0f43ee8fe2159b039aa2f8e9cf87da8a74894db76cdd76d8eeeb0aa760e5ac5cd8c2d27fd7430302047c435bb500673065023100d68442884db2568e854d55674f3ac52a6d3d2dbeaf7c713eca07c179cd65e5087040843293d925186a39e8ac175ba45002302e4c5d616fa84f7a4f03166c15f4d507cd2e03023e246c1e446b3d08c89e40fb7208fb00ae0b8f749cf4a03e103fafef0302047c435bb500683066023100c8a45fa287d35c0ab8727bd00101c853300923d8efe42e3ccba7827a6a739cff7e6e130b218799b2da9144cbc65abc780231008b8891553046db14bf2cc6edbecec09fc91230c6fb5d34c4d4195b63d7359f7cf9af7787b1ce4a3451a88700c27978ae0302047c435bb500673065023039ffc601c6a289fa47a4e6c4c9715baeae6d0e0c1ad99a55c18d2152fd2755afd63f5815c742b7c1c7acb2842d72fe4e023100d39ddd700aeedd34035737041fb56f3cbfa1c5ff75d1da03cc19e906fabcf8c361884868c1296e7cb17c646f65747cb70302047c435bb500673065023100dfcac7ba9a7d90eb78f90272b164691b6a227d0eb322164337ca62f5d5f784f4319a3d9b856c7aac9df70a98082277500230749a4d1bed2b21fc1c1c85972909814877cc4d5d95cf50802a6c405681d20db9473b58dde8e89db72d86cea9514d70eb0302047c435bb500673065023057bcf5725b19c78b5ea01ef4b3715dccaa62e3838f39845f0b5d6aa55456a69b6e8ccdd14f766f8ea46a4508bc10255e023100ac8c04a0f10ddbacf7f2ced596e2983a2821f7a221f1decf2f562209e306e7486f53a6b90acb433e37854d6a109a961c0302047c435bb500663064023035cca5c29cf1d0ec7c0e6c4fab051dd338d786a2a1afa50c5d1e08b88b13310e52592cbf458f6eef3864efe192f32599023036fdb008b60d2542ad1835da54d7cc9d5edb7e51be56fe12e1964e9b88f25e56a0dbc71441b0260cf0a8ab9c726d5f2f0302047c435bb5006730650230032b1d822e1ade8bb0d31469f63aec3034d9247b735f13d41059e19e5f899bb47c2a984030e325bfcae44aab946fa8d2023100937da1a21149859b818c966c38e2ba88663d0c8f4bc9fb7716d7d29a39ba91b39ccdc44991403e92d31f8800feee7fc40302047c435bb500673065023017a4e085a4600444f402d9f00fd9e88e72ffad31c1579f4821518b9d1a1574fca34e964507637a203e57b452ce71583902310094d2cb525cae92e310ccb2557ba0550cfc97fd5e3b01f4acbf7a4cee25e5f1cb2272caa7d38a2d02594e2bf10dffa1b30302047c435bb50067306502305087347759074ab4d986ae96bd1d1fa7c96f014574bea4d365d21febab1d96a7f414c743f15be823bc6f13fff3ea429b02310090c368de2a26506308120b3155c9ecccefcbeb71f58f6dd267a3fa4f94916433bbff258043f14f97d4b8feb2a36a64770302047c435bb500683066023100b09468f0e8b96bff9f8d08323375b4b99202fd2743434cdb7d10b16443d7175918738fc3e9b3cd8701d4b07c88db701a023100c8ddf9a1ff72b7f53a6e6b4184b755d16748466ab2712b438c1be4c2ecd2210f7eed4170fcb8eefdd3cbab07cc4a972b0302047c435bb500683066023100bb6c63cc0b551808cfb1a4b56f6b3314041fa7065403c8bf30c73adcdb4dff9e81875d24a82d55d4821bd8a6c28d8673023100fb89ad078b31079c43b8fce2d499ef9f1a83419a07b44e63b922685f821acf7a6c47ed9c1e71764e3a628c5d2b2ca6f60302047c435bb5006730650231008d3e59ff3696252da474c7c0de6be0f0d1ce0e6e5bd48da035da447512daf0e814d1eafcfe71bb7f90508553da6eaa5f02303f3abc6987660402a04a30af95ec93196a60467e9f91b907c189e91a0b7d6922fafa1c8eeced8fd29c40d26825f1ae9e0302047c435bb50067306502305fcdca7180043e2ec514c46661c2deb04b4555732a2f4ec515b5e7751a02d2dbf4af1faa0d59d620c65c9f132fb53851023100f3d57a8d3f1bedf18a670a68c284d1c8e8f31fd4725df8c93bfaa6cf4c7fa005bcbdc3ade3f928fe33af68f2e9f129280302047c435bb500673065023100df75917ec712d86909f47f66081788c024271c32464211bbb032d8de5aed076bce8c3a43654f0deb53c57fbdf0984cf8023017019ba4c87cd5f0778976c01b4cd588309168d38a8e5de8f81fccc8765d2e22a956501911c20367d02d6ae430497b650302047c435bb500673065023100a8c5fd6ee02877508bb14abc7315623399a9181d2b777c2146674229edb59634f6b89e0e5038811ec05e6eeb7ee73391023032be2315db0b487f489bc9d9cc990f319498f5213286c789a2b8fa78b2dd2ec769e75e5238e9dd85ee5c4b44e6d542d10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303e898ef2c7c36cb928455876ae566d24ede73a56ae0701c3fdc9cef59a62f0d263fd8a16ebe0a2f5ab931e23d88e895f023100c7d60cd091d9d1bbfc0326a3c3740fa56ee3c1ff888a527ce6eea0b98c1db19fa2a53f8e3a4930aadf61f676579be09f0302047c435bb50067306502300deb5b7994308ebeeb6806c2b80b14687e377056f43b82836105d30755d780b0ed507b0b4c1a655339cc0be5d2351644023100d4c50b1f7678ad2a2301f41a06eebd7fb5ebb530ce19b406292f2e5c0efb9aa2e8b729d6c48c6fac9bc0c06142719f140302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023011fea92ad172ebb98559f04d1bf3d7efff1dad7b9b5a0b00d7ab2ac8984153b292d7ea9b55b03764b3908b2d5e034bd7023100e2d4a13ae45460aac56c575c02591bc220f8bd1ae4e464833c4922e628b570dc98e1e9c3f1c12876d4faa9803c7d6ac40302047c435bb500673065023100f3233a6cda1ac2261a94ef857c38feff8509e6e8b916e54072d08ab48b86897f378dc282382f147e72bdd7f79f1c29b902305887f0e4f10803defa36ac04f52eead93db495f90b5df4f6b050817acc476b302ab81812c964e0a4edd1e0eaf3c27c410302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300d0c932f12ba13a17d4cc55d81b7112839c4360f20548353b0a6a2348e632289cbb155e4c7c76c2380bd160fe6cb7014023100d62d4e3706843fb76bf05551f24e3f10a28240cc0ed53592df9b5930339e2ed6bb7456559bcf231cc2b87c7c621194b60302047c435bb5006730650230214a5d49e39f12412ec4f8ac6cd7c3c13577704e703eda047ea4f4a1521dfd0a40461c16c7e1cef5879b0a479dccbb00023100ceeb25859a2e1ec218ed7f6225b424af3eb8b13f69290b473b4ae8055aa230ccbcac4664f5845dfaa50a0e841d0832bc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ff55f10c256260bc8185c09f8b8bb54ab44b19f622dc8c4d4f4ce544ab9a30e90879df3d96ee2889477b68be695018cc023100b02ca74ab7728cc45eb2f3afef82013b438d201aa3706196d7ef6afe59048ea44e3afb93fe228e1a5dd027c81204d7bf0302047c435bb50067306502302dd6dd45db4f6720c3af23bd0608a0c3e1bc11c47dfb7e54b58d2e25bdf4725d1c3279f82307e41d0c09fb3f4d5a36d7023100f6b400655624ebd3bf0c88fdd65ec04d277d78c293eb3f6773b72fd15ed31bcdc3e0ad45b7f2ef73844526c0c4c2c0b80302047c435bb500683066023100f371b5e4caccfb7e74c759bdac18c75fc7c11a34e4950bcccd8f156f028f8415de3e155313a5527d61f4c676a2c282060231009c60bb2b224eb301aa7fedd352436a108bc17bcd6e24dc1138d8e5e238f9904c0686511eb4d3582be63d76157d24ee3a0302047c435bb5006730650230140d9d297b5cf94b63bf7e5bed23e1fe88c91dc2b905bbffcce8c31215a382d24a0eb096c3778245bf27ca8a805957c9023100c1839420c8f1efe32cfb149276db017bf98f0c99a9f9eae9d9366e3773e795ebcfe7d80469ae20238845ffe61dfdfc950302047c435bb500673065023100d2f9ab265e7530f6ccfb3a1e312e5cf2d9c4653d81bde90e0f7e7b87716f9528592480c22bb61136a773a332d473e4e6023035519d3804d3735d3a4762d532fc288bf08629d324577c34b5324f3f4a762c5bd3821180f001cd025395601746a3120a0302047c435bb500683066023100c95207c20181965774d67672a62826f42f2350a1604cfef80eaec2884a39382c8469475fddbc0f06dcbec3f156b3975e0231009f2f31b7cd9fb6d2708fc7fd3b20e7822bd29e5d4b48f140b633e690a3962aa32d59ef848fdfaab908212f74ab57d7160302047c435bb500673065023100f82321a39fde8608c37b4db623d14069da3c140d1d3f62e40ce41bbd058c64715b6d61830fe9f7f16e1c6945f8b6b0c6023054b63fcc102d628e1844dfa230bbe835beaa72ad8cba6385cad907b8eb59f89d587402df804f000ee197d5e31d0564bd0302047c435bb500683066023100dc1153e51c3ddb1724adfb5f6d10a6813f95c2ebe897b7934834bd405eef78fa2618ad636c185bdff8a369bfbc43093102310089c6925669398ad3ffb502ea56636e864f07159e9e1bec128dca39b9c3e557594f3a9707092154fa98157892e8c9bd3a0302047c435bb5006730650231008b209efb083998181513314549bdbd5eadfece7aef6547cda9c7b0a989cfe2e4d4851f4bce5585d7a575b192c6da6a3502300a4baee88095b604cba33690340b8c5da80c4b62487333085ac3c44d9fbe930eabbbcd76ee65c7e52871e9e3a16ddabc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023023913accb043a04f4f4654b38bf962afe6fd42b0c07a76847d8ba39057aa1b4c5448e8f7eb9ac7c335b02f46266b9db6023063c3743aa5e2c13b146207225db6112fe1036b2d9a4382315c2c1ec1698f0f489ac3299efe2c000590614aaf5318871f0302047c435bb500663064023056e9d775435d8041bdcd1d399709668052ce6910cdf041eb905cc748f9f001b10d9286b09aec69f8669a6675ed3b2b6002304a7f147a408ad6dd425c2c306a117153fef652bc6e1ca833afeb7cc8ccdaf86b0ee6818bcf4d153f8c52586ec36d017e0302047c435bb500683066023100e1abc124e7728e7ec10b5c6fdcce9f4e6d7d008eb9e2084f695aa0087229fe5e9d17eb348af3aeefd9a6a265090f5c53023100dcb84d876085e3ac4325937bda35ac340dec47f60d437afc52e3796a55bfcc1fc003c6bc7a7391e2ccfd6b6ae60ad0410302047c435bb5006630640230146150341dddaab2211207a45801e2f5fdccbac935abbad8a8632b760b9891c0e47f26e2767d9be2225d6e8122037277023010a5daf83bd92016260e99ca2e7b4873a0d79491302b8819c36095efc5c38f6da09ffdc9f4746f99200cacf368ad09bb0302047c435bb5006730650230262dbf9aaf2d988bcea1a1ec45198a524ce7cfbdbe69a2eaa4f329ebaba26b4f27ddaec403ecd49279a0ad35f333b927023100904c3ea95dd01caffbc402a0b12de210de313e9ffded6d0d11b14b76a7afa41a744ea79fc579431943ecc2d7c61590780302047c435bb500683066023100b58b5da67f70ebdea701be94bfd718226c5ab705a3263d9c4258ea58e88632ee303c3f722b3fd4fd6b7a7b8774b97a23023100bb057ed2a58d08fb413a1d50de41f4f90f9dff1be1ebe1eb6226be470e34c81463abd7870663db3d08326afdfd7d8ba10302047c435bb500673065023100ec05a364e842a40d5713a85cb32af6a82eae74bbb5482f67b1b09cb6c76c1c91c0210b5f00fdb9023942abe700fd76ee02307f8227da2330dcc7fdffb726c36917f734b3648ed2bac677803c2c6fe7695af35c9b829d7bdda7ec72c563b51a64e5a90302047c435bb50067306502307095c5ff2f76df3c9e4ef2c171106c0d725856cde59b11b415eeedfa1249dea55949d9c2e6623c6c5941ba5d7ee1b1c1023100fa2557e28e07203b5d7907fffd0042c417d53836ac461a2f0485005968c4915b5200ef49fa6fbc7f295560d3f40c38c60302047c435bb500673065023058cbeb499b275092ff239ec74f8a7dacf7a7df475a24699ef0501945f379cc4db0beff435dae54f5061af6474dba23fe023100a0ef91b5290434af318338280be553bf5585ea0d8c4089b5d80c81a6f4b4c5336572499d8844b45b2c338a5fb82566ff0302047c435bb500663064023026439e23553a4f7dae22bdb0fe36162966541ea82b4d5cb765045cced766afcba2d645f38ac127f42614128b68e9e38902302a1ecf9a150b2cf717489b83e83ea07c4d6344fca8a73e5ded2d79478b74a1bc60b6ecc166b0dc7179cfe81d7fb35bb00302047c435bb5006730650230415753e9f17e0a472ec40ffa73c109b43db1875b9f20abbd672443f36a18582dfd5dcc548756c3564bce6383b1a0aa2f023100da43d026d06fbeedaadf212288e65d0ad84f6ae230aff4dca8dcece357f23f4c762fbf45a324a4718ca6b2b55644d8090302047c435bb500673065023100d1e0d485162ee1a8d792afb07a795dea8d2145876243dd3b2aee171b7d3c24b3395a4c9998fee8446fbd0be5a61b375a02305f2af125973eb6868672538e37f844ba05485cf69c63336284082fc2fed4620d29b3468c27cec4b6baf2f848fae568d40302047c435bb50067306502303994a6e26d49bca8740e6060f61f7f469a10f772cb8ca0d1fc6064c3bb9492685b70f2a80f6cbe0625983c29921b687d023100812947c16d05bcdeeaa5c36ce1ad1fdc244c351bc3bd4035194d42e4431ddf854c3a6610e4e1c72e2c808a556a8db4a00302047c435bb50066306402305e11b31e8a7ea873c7f0eb38cc3c40b4ec93e211bc41b6abc1ee65a054fd17aaaf064753520061accc84f1bde89f5396023016ec5e8ece8b9bfafd2ab3099bfc6f2bc272e5034baf35bf7b76ded3b7466840a89761e3c3f58486190dd0c46bf873920302047c435bb500683066023100ccbbe4e018ec889f0a9015047583188e77e1b6dfb5493c04daf772d66ee7767b0f3875c30a2442984c89d1f1afab4e92023100e4653739b8cf4b8846d566e853731d0039751d5c98648a073539973fe6edc519c4dd7c2c2d5b8cb36c448571a3c454de0302047c435bb50067306502310090b9271e6e1da6cef58493e37f811b9af8f971c2dfe4d1fe806cdb8b5927e43e8f9c23da02deaa63bc9bc3863f3c8a5a023052381f0175fa882f89ce2c3d53344f109208af1779503f18e92561f7384e1052030da3bc976944c4b2ee350ec3bb16fc0302047c435bb500683066023100d9d3bc374462ff3ac6941868a61ece8d08d257aa46efe26ee02a4d8666edddc68c2aaecea0c9ce870993589f02ddb133023100c82f5df29b1ea97c76b68a8f0d624a39a927e23e42fd324ed938c82e86261047c7968343fb9ae56d0f7469826f396cb00302047c435bb500683066023100cd1c7395b0e08241e3f99e58e352b73a61abd859d0bc12f6bdb26a92f3940c5aeb7cf2a8073c935e4a00787c4ffb9712023100be20d805cdde5c6a8b8f568af129cc631a49d19d3250429a098f7f51d142a35ffa96d4ac42cb8e0b6834a28c5698f2df0302047c435bb50067306502303597636c4becb3bdd2eab00d577c40aea9b83744099202e493cd056306c8639ebaa428df4b9c407ae6df6575a94eae97023100daf502555e5fcad38fcecd56751ac2cd9b81ad2e4f70552743604199e082c6808e25ba6c4a951b38271605ab7786d47b0302047c435bb500683066023100c7518c8b3b661611cb2359718b2c6537885ea00dce8904108ce557e77d5528d15e3f8bf9bd84f80942e255c3708e6a9d023100a573d031504ee98dbf4c811815f5fe5b1a37af4c3682f9c5ca4e1605014f94753c7a664a4b767e33cd5ce07ff74a57eb0302047c435bb500683066023100fc09b9f053175cc6fed4718b28e35c1d568217176ca6f8926121ee463ad552cc8ac77aa94323512367038387948a4215023100cd14a181edb90de2a2742781f2fee8b6766c68dae7834c49dba3ad10db577d041f576270721531e9e0044479aaf81bee0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301acf281fe062a24a35d5e9c5bc66ca5e9d3515bafff188f542bc763a8093317d1f7de3535e7e38cc664cf799aabee1a40231009304410a9245a165b1eaa0ebedeb911ab4ad347146736f7f22baa7eb9f502eaa0d7e1b677c404b210ab3621a865585230302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f6c21f7d5f1d1c2ea1c0c8f05876cd90356a0203fb3de259e9b679f421e08ed9de2bc18c2ff4798b3d0ffb2e4a3c418f023011432f2e894de5451670378f214d6efd3cbaddf01cdbd9d4000e80bf1e2f3ff1d46c25258885b7e2b842ccc03333b9110302047c435bb500673065023016f0689d9997f12664ae6d6e7aebbd593b5ca556f28753340a85c3b4ea14227d345b4f658c61d0ffdf026384b9f5980402310081ba65e9970799ae802401fff1da751a4ff5dd27bcd087a2725c9a75c770595832f34a7a835fb263fe7d610461c37bbb0302047c435bb5006830660231008c14e0997a6f70d4783150452c20bf8a9804957c3445824b45fb7aa6b4033ca0321d09a8a5094dd9a770ee474675789d023100b1f230165960d9da899a39c667033d1f9bd0eba86c36d3517f6f62f155122dfd7c6ecd11b5dd011873a07e9bed41122b0302047c435bb5006630640231009af4c4edd95b70a0789e88d7709b21f50a78aaafecfcf2335790ee56efed70e0da43955dfeb10768b6f01121f1c9bb3f022f40892fcbb00c5f97e2d80739daa9513bd689d56078f371cd03b31098277120b3010529972e5fd22d53791eb916250e0302047c435bb500673065023100d5f8478e809dc7a5d59b2904f5df53bd6d4eddb165d7b2f1ca35a40b5963a689819d529f5fd719b70c7029ae8ba1e26802306c7e3f9822d1cf3442b5191e3948d7504ee606b9809a344333fe9de4a81557124d6872e8caf91d648f3b8e1e890b2e1a0302047c435bb50067306502306f28ac93dc71f57e1bcbcdcac3e16b294e8bdaccdb915509596662821170bccf4e01186ca628a2b8c153ac928eb2c3c20231008885a4b7a44ffdd619a88605d5e61fdeff94702c1abc4bac57bee6103f1b7326558630b74e03869b92d3ee0f5d8f440c0302047c435bb500683066023100fe50fce7dd85614d0616e15e2e6524240d22f6b11882759f96c949a6648d436ca8983ddf3b70e5567248b7840b245445023100d6741774e68af4ab92b00db032b31e336013a88b4f321ab59c06adad68d8182d12722fea74f0cac2a2172e8b357d57470302047c435bb5006830660231008252813fdb246bea2a78afeec4694c2f7c3c15c4f373c9273764e9d2c43d165c7fcf138f5a4c5c82c61b81bfb2a3e03802310097e874a4182eda4bf97119498c7d85828192f888cfdc4efacb1634897bb42448820de25864b0e7da2f486eaee682a2990302047c435bb5006830660231008af8feaa26c3b573ff7665e91edf02bb1ba58cecb2cdebc6366604ce6be590be9295061a088d2ba9499f16d6766ff4ce023100e84a2130d50d9369d7ce77f3d8a5cfce70b6d7c1c92c916384bb91575e12fb720f299aac1242cd404a3d23819005e4eb0302047c435bb500673065023100bd8f2b1e6739311597c798cba776943612c50c6dade892625bd852d3b0c242413564336592c4a5d4419f588c08f588c8023031952ec02a82d1c160c6419d30aa8f984af337db2f5580d5e73d136649a81751df6e808f46a3b5a9a6646d26688ce1dd0302047c435bb500673065023100b31ce3a940cb321158b1807eefa8653cc63865eb816e0c4d8502ff117335f7c5aa077c3d9070f53f78da4f19f3e9fa2a023030778c9e9786c7f6f5e2d4c2b67e1b582a7f60743ee309ce8aea0bc35e21ce09802c2fee26e086ea4fc92b6e76bb3a150302047c435bb500673065023100e30e01c1fbeeefe2488fd848d9774678ce0a1f0b2a2e887b884e289fd268693ee4551749dd23ea4aed28d273378bc91c02307013441c610a8f3731530a20f59ee9e4031deabfcd6c7583f1299f4b00ade3ed946fc1b6760275759d9e92d977dcbc920302047c435bb50067306502307616f46448ccfb82ffdfe529c914ef8288c6ee4fd0c5b4c50be345c043f75098da7783d7bd9b02428f225cff600783dc023100a36719afb84e41f9a746bec49498376f83fed05b30ed30a2998fe6b1de488d0283aa1613ed45f169d0eb5cdda309c6d90302047c435bb500683066023100e1ab8fc2b2e0cdfc808fe37fe0cb6cf0046ce9e3e2dda23ecae091e5805b40ced698b768ba6c218e34169587170582f002310094d563cf1e0300de8835ea858dc185ebcf21840918a39eb3878f845269233cea32286a772083da44863440b1183b6b550302047c435bb50066306402304e3b50107e39cf23c286a5d19041d55f246af3ce53905b687d9ceba64701a15ca0bc671ec4a876c974c8b304048f2285023050b03d811f30e6858fec364b7a9e141ac4fe34835843c207ba99220cb0d8967c4ea947b673338748951ccea6c17e13da0302047c435bb50067306502302bd01204710ba7734ec215a47a72d7cc8c30a0df0d421e2c43d204321996213a4c2510b5daf3f50203e99d136434afb2023100863586c739f677a5619fcdbb06b380f6518f220676fa094167ddebba93c23f1c4ab09563011deb8ec375ec79d688de8f0302047c435bb50067306502304823853561eafb45e3989391edccdcce0927610ec1dbb5fa197dbafd14ec8d9517feeb5d5885943478ca9c2c5edc9706023100d13f040824341ac4845f2701fc4a9c877d1ec9aad44f546c420d64e391ae6470b2f5fdc8bd7083768cbca793de2ae33a0302047c435bb50067306502305e42d018366998a303f8a5febfa7061aa3e7224af7242f94cc95c6ddc841f9dec7573bcdb50225873d837ffd3ce1ad39023100ccf23e95edc2fa308260b70f762c9e1b7c2a4a0069d35f132c6faae8b2168005dfda87181a0b38b0187d1ea67b46a1cc0302047c435bb50067306502303f410d335f15f595207461088c92b767874e96cd9364ca12d8e70aa8a89aca4044f79a0415029c219e7444a495041ed1023100ff353ed8e8bac447e0e54345eeccd2308bca134d789303359cf9b0f198ddd61657d77e1c5f56f300649fd6512a7576470302047c435bb500663064023031b31eb352c64fe0c14f50fdf4af34e38e2816cca76d8fb0a598362b0e439bec6571e7080b1fc509869e40fd8c3ab59f02303fac426d7f8cd8ad3570886a0224908354ec71b094012680c34d40329944d68b72420894271b6eac1d464f2b030526af0302047c435bb50067306502303c64f2211a68835b591a36b814de4c4f17e42494543c33d708807e163a62202505c982be00cef0b27a3e664521f2c030023100ba0170e5323cd961cffcca9f4c1f17c6c108d510353fde84fe7908c73579e1ae5c8d553bdf36057d13c6cc60a1f39c4b0302047c435bb50067306502301a691a9f16f8d2a9ebd25bbfb27e472cae0f8ac054549c009508f00747cd6bedda3ee342b989d693d59f5497f91d80e2023100ff30622ba021fd5955fee596f0aec4661e79fc7b0f530d1a87e1c3b462aac48f6d990ede55ffe766e035ebc94dea74bf0302047c435bb500673065023100f65c0ba70e45fe4135adf1d9df3cf9ed54f303872e7ac1fb7ec31902a255aba195999752be45a134cd52b837f4adbd69023037bab3875ceb69f3826338ef868245344e8649b318a0d178dbfbf2422bd7c1e7baf07332336865ab1fb2abb8d34fa2320302047c435bb500683066023100d9332fb017fb7d3e1b35587178f805d6204dcff7014473167b9cf4b5c0f4018692fc1fa66856ea6d16cff9b876d301880231009a9ece25cb65b5c19d7420d70f7da56c3873983c37617da8db36cb8ce8a540139226c0095e039ccd79f53a35bab9d1bb0302047c435bb50067306502304ac68e80f2da24653a738620913ded850ce0841222e5397691fb5dc0ca7a4d551a43808c0942d8c77c156c978752f5c60231009e5da13378fa122368ad47769262cb817d1694cef465b79f9304667ee495bf6ebb9684e07cf0f1758923f2d9f2f003580302047c435bb500673065023100aca1393fe9488a8464fe829104b5b224af1f05eeecc067a5b7dcbf1fed5350f9fae384290cc797f32947c38441930d7f023016d7aedbbd35a433b5ad423020c764e1cd48e16fe03700163c95e57dfa82f48f199a286cf27158f3717c2c9b361f3c370302047c435bb50066306402304a9485546342447783ccb969b9430b98630d996bfe7bdd43c8cc3fb2e9b6d5661522280a70df749b39b762502e29e355023001c25111ba86157bca42cd413bcb0d8c780e3a1c95814ad66a3277ef52f5b6f0d345d7a48a5c3b7913515c1252008fa50302047c435bb50067306502305e23a0f553d51492a4cd9c55b5e6e658c7d15776a4e6d725375a6d5bb0ef71c9cf632863a7d7d9369eb9f6529b5b4a23023100f54097cf178b28e7d42ec072c70e8375660776160f8b393f97827c0eaf9bb2bffb45b79dfffd87c429eca312cf0b69110302047c435bb500673065023100e4a1ea93a5153e2d890970d1a583dfe5fc8b0bfbc38a4ca99a1929a0f66e5fc962396eec890d064484bd8eef511c01ed023057f8c801f941d8bf8f2859f3b4cec7175fcca4b1f47c581571b880ce209cb5a213f17680e11bc42ed52e8063f00cef450302047c435bb50067306502310094c7e21b3f95768a2664d85118f48fdc91ea6f0a437d150cbb65768307be8aad1108db0d7d599760e5c705cd9f9cd6a402302c1e4b23647fdb0feee52d66c49665c083fe572b4fa0fe1fee9732fd436f4b0ac61c40d06f424035b3cc029dbecb24cf0302047c435bb50066306402301f99a4a905811ee1e7ecbec5689f9519a23e76916074feee03a674e4caaa3832c4510d37d8d1aae49f84cd2968ff1393023010c893021b00d40a57d7b4b3cbd1de6352bed48dba16deb14f680a68db7f9124b86a9dad8d00ef1bf746b02cfb113c8e0302047c435bb50067306502306199b429c8ed23fdb2c2dd273dbd48c01e10be7c9af7cf812b4476c2576cb0f67f1abed744115a193fb2eabaebd89444023100d5a228a87aad46276afe359f0b5f04ec525391373d089ddc6f61601671ed53f29ec1f8fe98767eb56b583c4b331f04720302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e4a5f9cd0f8d0667a1db22c687301cdae083f2b9d74bcb632e9f64b2df2597570baf7ede06a2246286e38813c091dcda023100e2eeefd31d5f6ec3cfc92fd5d3cc310257467d62a8e6672326742cecc756336d6eb4501a6d7730124eb40f9a3ee42a890302047c435bb50067306502305df05a38eeca900c37158813346153021650032f0f268f4620fe1879791e537e1ab78003843be630459498ec5b37c2cd023100f8314fc5ec55643282f64f367ba546d9aecabe6abba83577a3edb61ddc17a65fcf3a967e64239f85dec79d5abf5f0d040302047c435bb500673065023065b66658ee52f18611a3e4163ead4b03c4844ff4996ad8be85ce6dede2cc848119bd9768ff1377781eac9de245ae0189023100bf87754d5bca97b417d9861ec76c7105e45a4a06c148a02a3b93032ba5532181e1e8d0dc5231ba031d2cb981da458ffa0302047c435bb500683066023100ea87f1c797b45beba82601290523e88470a8c5ab0e22474f10c75cab826247ddd9fe7a18e08a13366470dd72da33907a0231009d32dfc05c505f907d433d367031aa8ad566b5fff2f13371ef345a641ecbcb730dba53f44fcf8928f455e7f9e66caa1d0302047c435bb50066306402305a6e306f2c5dfaa42469333d5ff320d75d024b3b126e0677ef6efcbb2ec8280ee9567dad6eef28219aeead158fdac959023023f9af0eb7a70b3a70b3e9898134a57200728f88be27d9675d619b952af800aa6d9ecfb48b257fffb2f6b256fa4a41800302047c435bb500683066023100c77654464cb57fd780a4ef1951493d73d47904ff9916619c5e4f749bc3f177d6175b89efc6b8fd4c62e3d60dd99bb40c023100b8d140dbf57107f493c15641a3df55abac22d2dd309a5939c00357b7760489997eb2da9794059a7cd7026027c8c36e970302047c435bb5006630640230789dde3807e9e2c80ad33b6a72295f8c731df6f0d116313ff135ffdd8dea9a1248bf72491105d5d99cafa58c54ae99dd02304a64bfb9d9e874b1f884b400a5fd7f8d02053166bab1087fe95f1ebfdc1d9c3d170b545f9f624a38120a1836f71063110302047c435bb5006730650230389fed7e8444bca2d37247c79d212bfa3b4e4ef5b0a9ba36de9c06aff5f44ce8f58dc4b96a02148a4f15f12dce284323023100f59473101bd8ec1a45beb5631efd156a10fc0324d5ff2b676e2291b07f9be1a75168fe78f3201c19ed4cc06a7f8a8b9b0302047c435bb50066306402303e83548ef18dcd60392154abec1685dedcdf35ed7cc82e518bafb33f12449004d493f7dd341a40fbc97c40ef678389e502302bbbc68ea30483c621a8d57bbefc6d3c36d7d973667eea513f37f471e1dc9bbb33606ada4df912891239bee0bdb326d90302047c435bb5006730650230599f3ff0aadcdfc75385db143158c179ca2aafa1a4dc5e8bf5de2e95b51d045d50d8f1d70ef3eda1cb40dde07ea6d74d0231008bc2a3aa2c177e73e8a192e1395d462b901a98ea519d1cea37a7af253c5836bbd134fe9a045e2e22b03ed7cdb9a2a6830302047c435bb500673065023100e289a6e11da20b555b0bca507324082a69fd91841a14b1e1c7c4e767847447ece5f281f67c9f1b1a8b9904e7b4929bc902307bd309a8dced64e9d585de649a4dfded24fd8220f095613d4e7d5d054c9fc04224944df235d79d95cdb58b496b20f5560302047c435bb500673065023062051679bd5579a3e1d26cdfa3ad293019788272fb4f3335f85722d5359995a96ec1d624b7e7da1f2d7dcff75bb54225023100c738ab45cf736a626e3aa106f5a25f1c54d0d046b386b7e640e4b7caefd0062f5a85ced83af50ab14d7225802b1427f80302047c435bb500673065023100b307b364e834aa11a567a3369fcdbec0fa04f58c7cc9e30ff28afd3b38229314fa91b9282fe4c5cae1301faa695fd07302305edcb1b6447b409fc8424cd6c05c578339d5276d0d5ab561bfcce6805faeb27dd8a274ce07e7fdbbf8e448257c24f4b20302047c435bb50068306602310082fd02212d29e852f9c38ee5bef5d7ebddc232c0811a5aeac0b5c6a83f3171d1c4ba2cd51ea5491c381c33dbf7d644ca0231009e86249f8dea9450d41bf695cc2c6c5ecff2625678dcc53a9a6cbbb1dae34bb6cd5323668c390aac1d3e604010e0e4240302047c435bb500663064023037e067b1730244c145d527e303a189ba54e209a1797cdba4d48c20bcbf19865ed47f0385af2f0f35fc4ce4df31d0bcb3023047e721057b09681af83831378255aed38c07f00c88790f9c58c37ce6e1875b9ac6b5ce0ebd68627371e70f10e560eabb0302047c435bb500673065023100c1d5d542a8afa7dc6495da41c894959bafd017d1b08971586ab3a33f84c7dfd447aa829101a8223109236492b0c37d480230066502c7b596954cd2f57e2da6917d5410f9b9a41ce4c45b1b6b83ae595f6005b6ea202d64a1f6401ea86a223025927c0302047c435bb500673065023100aa992de92e4a15a46c80c154baa2ff927c201f09a45c33dbfa36e372fc02794d4a67c02797d7bfa3e61f486f47f2a55c023071d522c6351e73c73a4a36164d44224465c8f9d1f7c15384413da4352cfa86536df322c21f596065fe51d4aa210a27380302047c435bb500673065023100bbc1ce2cdd2cd6249cdeb826406c5fc2eb4eea4a9864fc5db42722e67ffa2345b98cdf44420a1c889dd0365d674f26fd0230461c6e5e9c05f4421020edc2f31dc5e69bd79eabee55bd38d0409e0b37914668ca1b3e44059b79120f50f73e4ddeb44f0302047c435bb50067306502310099d41a8d360675b282028f7e4f60c6360db362aea7c12bfc53b2576b1da62a5bd704c9f130509d9f996c0eb5e80aa363023065faa711bd77fc23cbcec14d67cdde5179b7478096036fa3afbb917fd9507ccb438c9653a39c778149c70fbe903bcc540302047c435bb500673065023100b65d7603892a732c4623f3b215a8e1b891f493202ee21f2eb0a0e1882aa2dacaeeafb6e6b543318ba4d39e11878727ba023029a44de338fb13ba2cf04c871e5a2e2e0770f9cb4ea083d098dfa5def5181596b01b2c3564b86f8b20bae5ea6f53897b0302047c435bb500663064023008a4f69f6de0e40f6ceebd64b4a9c9d6e9e1ceacdbd7ab0baf81250c0c69e3164c82ab1ec3d9a8560ae4b7d4af1b226c02302305a61aa526f29795e423303088ab57081c050fb2f59881cee774c6446c3eb415999b9aeb3f8c08644c825f69de7c830302047c435bb500683066023100bb2237bd67dbef523163a304e8a8f0de4762509750ea079da435dadcccf4203fefce66f45148973a7726f46746e2f305023100d74c86cb0d813b88105fbae0138004944bb328c8f3c92ff87ab8247d3b380b55c97c1ee2fec63276cb0927caab5081310302047c435bb50066306402302066d543f7e92cc309abb8c08e6192985471572f7510e310e2ff9ee3cecd6b3dd162438fa47fe7df3d7d207490c6498a023038cd41dc5064d21abd0110a5cc46ea91f9820662f648922339c9cf7b0d3864efe4df0baab3c78c548421d743ba2e7ff00302047c435bb5006730650231008c66cbd7f668be3c07db31566bb0fb18a312f3ab46c2a8b14292a3af0c4032fc9d0d071563168b80ef16148af9dc68c30230703a29d8f08dfd81735ead6efb7b075d32b13f629ddab31634ca0dc14a95aef4abfaa33815395c07fda0a22586fa3a6c0302047c435bb500683066023100c44ec9a8bcf6378f6b8f91c72f6d22fb0f9da98a9f2817e520c5857b8548c6a6a620037bdc6fba6f0a669481bd632bf8023100d0495f98d788de7de9aea13d4c2122255966f99827abf264b128ea97e449ba200ef85e25214937ac871d21ba2cb81fd90302047c435bb5006830660231008dfe11f328bf1680965b5bf20188f38f0ca309ac09c0aad9873f0f50936e6ba40c3658e99e30adf3bace2890508103ff0231008d7e318dcc392077e864ad61063a53013c6674aa21c345999363ea17ce9ef8daeb2eb33d2d8a7e5c1a7f82778826688e0302047c435bb500663064023069a63b69f8681c40e9421f5e4bb68e2c02765eb8e9cf73f572de4aeed58ea0af55560bcc0c3f5b079505de44d3bc648c02303722d5ce6d7f7942a13dc9b866f46da88859e9d03b78df58b289405c5b42508aa25631445e07584948e5a4f3349e59360302047c435bb50066306402307395b0dafc8290439cc17a948552c8484aa228c650b819e0fe30966de9ec7c4f1030157b5ce2e8ea4da18453df7686a7023036249152335f741ec17bea31b87ba6d60e9f8e37b57494e74ff84a2dbe76ad31169680e2b044f8a98959f9f9db43dc2f0302047c435bb500683066023100e692adc2c48ac68ab4e1bc644040cc11e1487e33bde63df6f90d123ac511d4d6e85d73bb6f47ec097ece0ba487959c30023100c1b18f230a94fc48a17a34f9ec77646c29ea62bbe3fa582d4e4d25f1e7e7ca3762f464b66f8936c90d112696a3dfa29c0302047c435bb5006630640230500b3e421b6af02fccc67563f9a04d4ea13b6d867564127ff93f4d39074bbce6f37a2004d7555d315ba92a3fe3694f2a023041ca0d3ed3acdaaf282edfee8b73a66711a1409f6c91aabf7cf8e634be5aaadd665d4c8939ca598f89b99fa1d5eed4150302047c435bb50066306402303fb978ee50eed3fec038d3bb64d9abdf3926e8b24d3df4e435e9179d6338addb93bbe187533d27a1254a7cb62e5b99ac02302e918c771e3e0d96a3b3eba67ef8cb133fce6ae09ba094226011ef72413abd954f8fe84936eb62a5a1df996f2a7ee1c50302047c435bb500683066023100808dcd864ebc3940362923279a0eb5495b583c0e232955484ac3124131eded7fda041ebfcb13c424cfacaf05600d208c023100b9000278869b2ec509eba5158da7a91c8e3d0ec4d7ef1f2166c6b341b8ac18ebd5829c47054f4c20dcb8ff20e684fba00302047c435bb50067306502310086dc7f79060e9568f8b069fd10f9deb9929342b4312a3a1a91f2152221f69fc6f8182af362c35196169d784b9267ca2702307154ef387fd84dcacb0e551f1c7c7285e0351a609399ef304719c5b8d9d574bdbf450601ebda1b5033f0bb371607b38c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100abfaa71a616e4cd927b9ba26e534f0aa7c84ad51ba8c7fe9b8e2f539c5cce7061d4740f14ca0ff170d6c2e7bb9a776f002310095dbab0d19441f1ba5e22420554646434f216457bb5d4ae437ea6ba4cac786aa8559527f5ce97a4549c609ebfa4ba4250302047c435bb50067306502302292856e16193ba1b6ebbc733f54e7864dcff80bf05fc00a1a18a5f173f6241e1201b60f8239a3114cbba0d099781a99023100e110d68c39cd904b09b3dcf7570395af082d4564df226f74cf6f0b97bea203ca03406fbf202ac0c78b39594ff083440f0302047c435bb500673065023047d872ab25d38befdd1b815e0cf8f3fc6eaa7d5c8e5964d8ad956a0b955711b78bf42b7ac59c0534fd1bc900ae06abe1023100dd62068858d945e6107c58a9d62b61933942f58ef6801d2049a0ab5b11bbcc4a21761437b97cc7fe6203ad3df29d235d0302047c435bb5006830660231008c45a2d147427cc79df4a54ebd9880d1e343843a4a49dc96a654a32eead5596ca13f4b721137188ec65620851248f71f023100d06fd80a55a6efc385ffe2ec5e47cdfff8bf89bae4495307e34128f039c214f667a34bced338a56117088c65d92e74390302047c435bb500673065023100d8dc5f5882801cd2312bd8445a8d33d0d8189704719e093476753a6a888449bafa2cf6eadf7207e35b3d44127afcb8c90230707b4d1fd1e48fcb6b5c3a5f4e4326e4bbcba1c81f88e456272565dfa7d223ebabb8b61a77bcc745b170a20581ad4f920302047c435bb500673065023100b4e4dbf88b7eb44391f17cf491155258a1650f7f42ec9b12cc20376dfe43a2a38a499356dd7eaf838d0f0e448236989902306bda21bb2ee01c86fc0f6bffe79be4401df474df4d14904c5cecb7ef8ba88ad78ff15b1cdb3de25d3dd60e43c22ff20e0302047c435bb500673065023100e6de13e6d7c2dcf5aeb24ea382e6506498e9de74977f50d14a4efe3607ebbc9f2ac3519797dee18a36af7275941cb9ab02304ac45197ecb334b145e72dee836f9cc0c72942021dfb8f58813b5e5d8f6de42e81efa1e932bc2937e726e7f937580ca60302047c435bb5006630640230114436ba370ed54d8cfb6e0f96122ce6f2e1fe3071b130fa7d50d577bb5df4e16b4365b11c1482f6f6040ff3b466693502301564afc281cad991af55ae427f0aded39ae9727f348a7f347f7050c0842682c7bc798d2fd148b482d0035f8884f9f2c80302047c435bb500673065023100c34807e1048bfcb3c94585aa0698bf9d2964a4c06ef99ee1f90ad9439eb133640498ac4f499fe76002f7075df3ea012002301c6e21de19b5ca885f551734038ef27786e3770c4c7c693d11049e48c9101becea227b5aba963931e87f322c02c6ce7d0302047c435bb50067306502300d5e7ee508bf3daf1c228b26785b3be26ea9768f7d1ea32bcffeb0e403858813787b2c1291d24e8c0b4fbd22ce681868023100db59e3f07d8ede3c8b38073db372ead253b9a6e9d9c40fa13458cafa974c67b2d2b769e12cad5afb5b1aa5ae8ee783dc0302047c435bb50067306502304a84f97f6359e01bcb5bb63a71615c98e1b0c7ee296444eb122e9b4ae3e41ba78c8747469cd2f427d4509551c44d7f9a023100d8f8dc953f9563851d97f9e87ba69bd377c9e13958dfacd27c72f61161e50769889d3b88abb7cee00405df504ce5ba3a0302047c435bb50067306502302a15b645abe15b671490b38b4c7bcc763841aafebd947654af9c86c35c36fd89096624bcc113058fa535e895acc2cfe0023100e04c8a5722b1a814fc657b92db5a726e6a5825408ca09339ad27b769092d0ddfc977d2a3f2d23cc73006b740bf6dcf6d0302047c435bb500673065023100c15512e8d81be52e0edc940cee041ea359bace7bd7f0319c4722db0c9c4f9fdb2f0eea1d1405cad0d7791a1b0e592358023057f9835f975760cc3efb55d4149e122cf48c4248949b64808325096fed6748dc6e8460525ad777d191d5dc906fd93c280302047c435bb5006730650231009771dcfcb9fbabcef5d8ef9ec605b3b9f17833014a3a8139a103cd88dcc041317122bd90a63d3832addc50126aeb7c5a02303a243d1465dc4426e9d9f76c516a9fcd01ba7b67fdd64cb090bff5ab14ad97fa6a21c7f16c3a903bcc814317fb071c240302047c435bb500673065023100dd4e15ac3af99c9063eb5569469d8957cf7dbcf95a334deb8e91781c755504af7fb58a0a037a1cbe56fb553f1bf6a0fc023001067b8f0481f5a87fec745280243ad2fa743213f428e6b2de7b14cc585b468a75be3a892890ec65491e86aae33979970302047c435bb500683066023100b1616a20460157f2ef74558982342d87be15893c706882b13e38bcbb6fd0cf8537fb4f4d54f943982a6a174a6ff58a53023100b1cc7b97859037d16ee82c6e327918b1094e39096dee6bc2c3b94a541bbce6a209fdceccea0a75f2d9bd67ffa7f94ebf0302047c435bb5006630640230398105dcd76d56a31e31151153c918fdb0a34afabf8883de6c747f627af1839d1b72ed412586ff8ad4617cd2a7b168110230410e3bdbc36ccfdac04261fd00ffa0350700a00b5c83adb40fe92d737dd300dca42ba9f7a1b175a9ac49087505515a990302047c435bb500673065023100ec51af4e38fdcc52937e57009b7fe76b667128128291ab320cc725364fe0e3e4c6197f597994026132f4d01149b164ea02306d63f0146c64ba22fa47582d185b6c911a043b968339d7d0263d04c36f9e94c66ec421813834ad620d2599018c4765120302047c435bb50066306402305f79d2339717369e9e5b9009a7ab6665870d382c2627b030da3d202c2c14bda60ce2a7b0dfea1e39c4f31a0d7eb3749102306e6c1687c2f4422682e19ea62e97090a58d7338d14b46472fb1c0229d947279590f3174e08fa1ecf1aeaefbff1c093be0302047c435bb500683066023100e5bd549cc54e8cd48e7ae99a33915e7a858fc542fa82ce89957fa81db4289482dbd193874bf2d68eff42c84a1a3f77bc023100c05cd5494546038aaa292826957862d041a23a00ce0f6b9085c5c128bc7fc508f528d9a383943927f6d3cb624e4f25ed0302047c435bb500673065023100e6922592f0bf94f05e4bdc93d505d864790ad7f2e9987f3233f84ba8f6485a38f0954c1bb6d9fea1ca94a671c087dacc023010bdbb57e9e42c6b76f4441d4dbd72a71e292ec7eece831b0027fc09017b388e831eaec9b6f159491a2057e560d3b5c40302047c435bb500673065023100bf00f4bfae5362de6d067704128e48f10f2543de1f61ca6f45ae9287bc80aec7a3726b598ab78e29d0f90e1db94d1f410230153c9dcdd91d836dffcd1310640dc4bc37a4d243bb3a7fe68754d5a655c477350e1b3bcfe8c4c9cd493b54448ca77d540302047c435bb500663064023009c7038ee530ea8bc11f09f5238eeca78757e40845a33a4de57e5c03470844b30d76441151ecb2279590df56dcdeb16f0230740d640cea3de60121c55220d32c1f5ef4a22df1d0954c3cad68694b6ce4e38bbbe42bf7f4bdc3cedb45460954819c040302047c435bb5006630640230701a955f3e2189e0a98a83ccec339d8e1f70ce45eb6fe240c1d630064f893a79702bf26d3b240e9d7d80e00029f2077502301aa101840c8882a1e518db0343fbce1602d41d625c4a01de06d88c1d684cac638385d8b6a9022c65388b5fbadcc717720302047c435bb5006630640230339296a33e62e84f7f5a54f5dfb1449a0cfdadbb3995a599a0ab1ad1aa9ca60f8fe174e7b121b9b837c6eabcc78a2c320230450fd3357997d65c8e61b0433fbc8c5afffdfb229bd2cb7a766097a379bef41e71d11eace719d4f88fa6cfc2858f48e20302047c435bb500663064023039bd8eee54bedbaff2de470ec199328b2aea0185bc83450067338d7e619711f0f92b875ad8ce49bbd385751ae2f2df8c02305aa2928b3d12d783aa770b261082b7a366ebd039233e09ecd2e0be930ec73e92524bfbc7f077132d7d7131625ca2659e0302047c435bb500673065023053ce3a7b9e6b33ee567b2f68331767428620355e94af74fbe2a49b04a3b1ef9ce98825be2bb2dfaa161f346cb019051c023100efe08f8f8777afad996c900240080e4a8a6f2a4cd7218816c727ea22e093c4aadbe2f322a4b24a0a6a0ed43ea7e778870302047c435bb5006730650231009a295f0410b1647b6339c7223ae07a74aeaf87fa3b51863e2a740667a900a837dcfc785f6c9934060895ddec0d1828bc02303c7c4815c8445af4b56c287e35bb4fb94c66670fff6a0feb8fa3853a6fd928560f0736614fe46f6a54d7d93d5013675b0302047c435bb5006830660231008d8756cafb0128052d4e12754670017620fc25e014f283fc23ad52552fc65d1a333b53b193b0e30a115c40bfbb62a4a9023100f9c3fb3cd8797a375e331aea62e63cecf1ef89d0614c2f1f6e8392becb99e2beaad4893064b7458075ae16cf796dc7f10302047c435bb500683066023100c3c8d19a876a8060a82bc1783d08bf41a6cc9099169de3aa1390482ff8700d93c5dae65152032f328c4daa93804d33e0023100ca327fd621ee08dbbc6f9ff1f6828e7ebf9444d4d4a55f72a275679316209c7a95b605e0c58e88501877d7e93767deb00302047c435bb500673065023100dc3378a142150d6721c573b76d99eb09b441ccb6e4dfa017f36d89b5fdd46d5443bc3fcb2528e7faac5b1c6c298eb5b8023039d36fa57649788b2bec9ecd05d5c32819fb3e8ceca7549babf4c9fd110e8e85753dc2fab5fcd5842a620fde19d794000302047c435bb500683066023100df23f6b4393669adcf7cecee378226891f209a1ef9c189c1da743e15ddb5da702eca3ff03dda7724eddfba1b832ac630023100d24b4980a78d49ee72b935ac29fa24cf9003669142098eb7e3945c4fa59d1a6d5858913b5b92944567bbfa42c5ee82ae0302047c435bb50067306502304ac541a1d1e36b552299d664dbe46307538e722aec823e4f3e3dbf2c635fff9c2524041c5636918d482328fa0b907c40023100c56e80d55fa4fa6046bf96050773eea67cabcfe291d7d79feedd4ad513a0736b042487caf9f76a00c47b6cefca17420b0302047c435bb500683066023100b33caf2e3191d55c1d31aee9425bbb5ab2980a827b9a3dad815c88084df180f531aa1cb47323605f8bf7a353a4f8990b023100f0f731e9d054082bcee183d09b2d8c302fbc854d3d9fd44404a95465bce27fc53770c294caa62abe6c09d4d3472202330302047c435bb5006730650231008bda306b7e56ceacc147303e538fab7a27ac5568134b1556a978ffe77afe091da528d4020686917d1a5f86cb1cde4323023012431bd7559c90efb01fc829e97f4b880934171231b86441acfbfcefd80afd9218fed3b6ed5e20b77b89cce0971511b20302047c435bb500673065023100e7b44ce6f4d3117d2833427835224fe43b6b0179f6117291e5ac2d9c0ac8735bee35e023fe7e7fd5ae10fd28b0e5050902307b6a26f3a00d98d7a337a3d2dc8d852c6b17dd6d1f2485788215e2fbd74b05cbd05228999fcc2b4e45dddb5d05d5f6700302047c435bb500683066023100a0fc2dcb891797ca008344b1921b3bc63854df33f1032633bd434616374bc056d49dcdc671de04d9fdfa27dd0b12d3d4023100b76470ea3bb72560cb82d17c8706e73975751e49787fc1d7a0f0320f296cff6ca9a12eaea0004e8aee4fec58fe4de8e70302047c435bb500673065023028bd1b8aa22db13e747a1d03bc8cc3ddba60634f1d8987c2ce80a7852b676455295cd7d5dbfd1ba726a5261990137871023100f6fd97b7028003918396ab390119b58e046f9a0915fbdf01cce6ef34c8353aee62f59e2e39a3cbf62a996fc694a472120302047c435bb50066306402302e99b4dc0d596c1a8c4a5aa07c66c38ee6fdb2604f5210fbbb995588c71b48e79c88acc75d30fe7560424f40f2b6fef9023038971386ebbbc1e7991e02ed8c5663c5009154872a5c5143b37ad98a6819f21077f7851f8791d92f1465d441699e9c100302047c435bb50067306502301b79fb87809661159b72c3bb930289fb11eef3c3632c39b69e621406290bcb20ba44a0b68a938e7d0bf76424a918e332023100b4c07095188d0633b1fc70072fdb73d9c2d9f8fe0261381dd5ce763d6156e61f54f82dc83308488af18ecf64f0a9fed10302047c435bb5006630640230052068eecf4fdc3c51f5380dae4e52de0798846e21e7f0efcf5a3d8a584ea9af60f61b68fff1f4f9afa1db91b0d42ff2023003b731924c7fdabd69a261708153b2bcd51c072200641db24ac634fd54c0c1eb9402e12929c32ee99800e7532423f5e10302047c435bb50067306502301bdf4509dae4e68ccb24233cc43fc111c06dd21e4c9dff239680667a0886a02190aeebbb7095cbb7887a61c796d51ea7023100f0e41509324344f0941b0553874b511e4c40d7bef28f084845cbf8ad561634918f704b45fb5ad52962b65d417eff4e240302047c435bb50066306402302640fefe4ab20f627671440d8c80794d55cc546109d8b0ad586f4413e37845d52cabfa7f6b1cdf9eba0f31802c762f6d02301238380ef15be6016cbfcae589358eca5f9d3a452cb0386be57e1b8ce2fcc7a3e636f172faf3118a90cdef0b58566bfc0302047c435bb500683066023100dc9038cb4e15768ecf99cdb4bf883b3a283d15e4005ac8934a913cc8b0c43eef11d9707f8eb61586388bee1a3e17233a02310097743b17052be8d3d82b2b06b7c51a0854e7023dcfce18b58746cf99a1e848f1722b12ce5bd6e343ad0525d67ed94fd30302047c435bb500673065023100a37c20e9e545811cf77aba0b5ad1f060d8bf414baa9ea8a91c6e3b8867e5b865b0165549c21ddd2e5db431bbb51191fb023045f77eb132617260da3b593a88782bbc73f8dbb923b92a47465ce4ac8ebbd0cf1c91c82c881b20807703f8604b396bf70302047c435bb50066306402305c0398c9f63f25634f28b49c0af4e6edf3b709dd4a684f2eb9193c1e547e0e161f6f603f7abd5cd0b6a3ad874dee5d7702305edc5e235c7c421c17142117117e08e107df99ef92be292a8bd8777f760dcff50aff29b46811c7ad4586e3959dc511720302047c435bb500673065023008749cea7909c7ecfe89ded9fa93bb9afd16e5a7d5f6deba7830249e42ee5e0c721c73984a87a21b6081a5d1e96bf07a023100eba46f9d3eb00a1491007df973aa619c47715d379ef1da41e503792cf1411c5e2fd682486af0600f898f583ab0f311ce0302047c435bb50067306502310080ab425fd88f4f0655d867211f4799d35edc9a448df80eb4f81756d2d0fd0938cbec89e2ddbbed908ca0fdc1b422bfde02302c39b36fbb30915b0e7544ea97d8094f0b1c222159541cf0fa5ec8aa29b560eb9e9cb6b9ea2565e489e2b55330ff2fcf0302047c435bb500673065023100ff611a8fd572b68a66eab76c54e65719540a3782ac56e8f6eeb261b72617b9ebffafb65ff44d3a2e2a739ced128f471a0230568175e06aed9c806c6c933040738be845cd8772291ce20f64dc2613fff241aecfed54558e3475f5ac67022937c6fac30302047c435bb5006630640230149f45a74d50fe56e30810eb6944d9d085524e2c83693ea41cf4bc15068df165096efafad26651f7bf8cbf5a4d45c77a023018bba26612a778b83849955fd21eda675873fdd6f589db4cfc7f6685ddca76c1033f1d21ef45596dbdeaef62c0b8ab950302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303781adbc6bd12a870012eb5e0a60dc1767385a3bf80411fb0df7cdb0fbd9d8f21591ada08b6af1488ba494fed9f4aa4b023100fb05e8ebe2257d962dc2566a64f7d728d217214fad3c7ff650b5dcc51ae2bd779c9cac8ddbfca596e49bce9d97a016780302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302d8dd2eb0eccd9d214e216aa37749ae95001dc7ba32441a1a72677f0a7072a0ab494d5ab38aa9ea14bc1db472912a92f02302b010d9a0df667d1156841dc1e36bf0e5d24788b24746aadd8c559da5537edaa365e206a80e43b89e28feab71841ccc10302047c435bb50067306502310084fdc9d5f2fb5560ccf3baa17edfb4313b9403e6f2129cd4f90096c434b1501635cfc05eda43b66a1cdefc686a06189f0230148d352c2f5ad79d7b381d4bb3fc8381ce3917d5a1e7e50bb3a357adf477c52e04c251592e0377cf7d7590d8856634c70302047c435bb500673065023057b7ef079d46ac954e79679656a190dd90fadff2751bb596502404e0b60e792b2bec431febb03a76e319f12f3ffdfa9d0231009305d319eb2902412da18e8603f42a76a50b4d273a6fc18104763bd824b7f3baaed21960e8254964a682ab95353788eb0302047c435bb50066306402302dbc8d1165950a09e0618e38a9f34fafc45ed2c58943fa17b9b7c6013e54d16756f880e751d3c3179c901c259c33584002306bacc3237aac4f38d301940cdf838dc1b7ffd58de698aebed3c6a829309e9f1222c23d68c8de5b88d601d20f4dbbfee90302047c435bb500683066023100a439e71fd00b9b816721986ed6ed9630a5d4652c875481f1a54816ca101d512958bcb9b55adc00e623af02e93ce6c63802310087193fc27dda6f251ca984c340e8579c18daf1ec62632a8782620ae676b5a93797ca7c033c11ec4e8b63655b9188ef6a0302047c435bb500673065023100bfc67dfe10735aef56553906faa87c2f683bc88dffad28b3edf408b595703106c82c0c3ce875902c2f44fb4f12eb11e702304b46a2991627c22764d88f85a19d4fb09046ea8d5835114af384bacc4e9ab9e8a9f931a50d922ebd6055701bf26b33c30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023015f9a4bcdb6165c461ff7784312697416bb26dfb30c99756dd513f9b53b44d7432d4dad0fc19c9cab968eafa98ba40ab02304bb426df9cdcbec2cf41d69f59cc0de8a096d372caee551ba38f8901fcea6df91fd5585d27f0171f66ac88d1bec18f420302047c435bb500673065023100f35cf0045e65023d88cca9d22ff17a6a31e2224b74dd5746308f69972da85f22613ce46302ba408066aa4ac7ef8a8ffa02302efea96357f6aad44d4e4145381f5f9b229a19024fe42607b68390b3ae2d59587cb41525404e46218e2789eadddfa2de0302047c435bb500683066023100c07afa2b79e2423bcdf5ce37f7be0785052253df8d4444efd76744d467c8c482f9133c7fb53aa6a79507cd13056b7bab023100e3bacfcc26dc88f5c1d1246312a6ea41a5fd78b766032ccd011fd75b66d6b331f226095e312157e2464b42a7a022d1570302047c435bb500663064023006893a467540cdf7c10027deb10baf858a907c31ec8f541ba260cf9f8377ae7d468cbdd61596d4ed158a860291299fbb02300fea3786439a96872e52ab4effbd692cf054e9e21e0d6e690d88d5f24c43e3d02e63a64596c11309354b37c94fea54440302047c435bb500673065023032ba88561ec4ffb32e97fc4e0b1fb12b3ba8b1c49cf86f5fbece61ece7c4bcbcca89b4729f1531fa68bbba8372aacce3023100c0b462a7b1f87d6da5f54541e07fdae7f8974a774e24f2cae2513bed16502a5694920de8006e2920ef2ad14190dfa3a20302047c435bb50066306402306301b00fdb78af81530f20049636acd8798059cd6f2e7a89936c7ba3abca8fe00c61688834513e04ca2a89c6c6a9042802307b653909e361757eeb8651617a265448974c5f73ea372662a4b5019e4ef1fd85082524474e1fb923a378668f924e2b4f0302047c435bb500673065023050203add36b671367011600bb24f019158fd29ceecdfaae40e80a5d715dfdc7878f5226944fcf97af766a19f31f4f447023100da87ee1128569aebc0013fd0243719b6303d3470d512c2ad51040356f6993cf49700495c22dcbc24576c8554d0710d6a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307dcfd1d00bd81484930e5bdcb00efb1b711b7ebf20ff77f59bd95dce0aaba38dd0ec22b76bd7ed645aacc16f64e3cfdb023056bd924ae9ea98f54891f6c3a473cfca24313a35678c3c2eeb50630d54a60273065fbc1b53d24a0fe52718e3e66dc7820302047c435bb5006630640230723211d5618e13dc1e25972f57bcf6fe876fc8c7d309d49bac2b648be8e350dd5be110a5e7902d70af9a5bfc93dff6ab0230372e8618130a87c178fa65b2b35856ea60e3c009be2a656559ebb91d83e75886089eaeb4204ca408b289054cb0614b950302047c435bb500663064023046a28327d7220fd5d5182450a95a0b6acee43a62b71892ea1e52085891b925c97b73f796527430b7b8021a832ae50323023066f9728287ecfb472032dfc8b15139bce1a08fcbe3f3d65e60dbcda28d8da721c68d716f922a0c50f7e422f99486ecc10302047c435bb50066306402304baafc7d392b889d49eb903aff1e39d45a783ebe20133feab45d6e86aef83be31b60c086c1c1f88a9642f602beadb1db02303ac6d99c9016800d38507d52b37172659f45f21110dfcec469bcd453500fb410fc039638ac60745aa08cc7af63aee3d60302047c435bb5006730650230162fe9ca1b303570cb7be0d9925c308acdce2d93c213db410bc139975982dbe33edacd7a77fbc9fe64c8551740e85e71023100b58e3ff524f9e2cc4f2e1c26dc954008c4cd77df66e761a249b2562b2348d9afe41eae67a4108120e428588a878c62a50302047c435bb500683066023100955fafbe5e45abefea654726924f24bf1f0e15b1304931a56a99201e96de4da0b4917824365da6b791543254c8b6ddf10231008afee0873fcced45d26bf0a61f047c9a9513557a078d60b2544010ee5be6760d6d45a59b67a618ea4f3f3660251322130302047c435bb500673065023100c56147d15c2f5c65378efb764a9b3da26bed1092a1094bab25d6eed248f871461b0aa7cb9ec9173e87e20eb7795e3c6b02305b821d3ad2cc99801a1e80eb1fa5faabf9d600834236c9e9f35e6d5a4f67d328d9bce8966cd97395a79be317675c95630302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100955d34d48c0a5a2f8334f93a7d673b506fe184c0837c128eb7614a8bd27c491a05aebfb95a006fd4682e84d72302a4600231009f2e7f849d3eb5c4c602a3504286f50a552e7e3172c89db82bf25e671a68885c7fbec8fc018dd19d312aed1fef289bfa0302047c435bb500673065023100e1c48c2e087744fad08869b696d9183818a5db39ed06e6782dae6e717eca7d1f59eeec82b4e21ca1a71ffe6c303db9930230419c77a877f228ce770b20a8807f9ce824c682187507f8615a9c7e0b0ad93f1fc7bb4c86f898ac335f93d241d558a15d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230348db8d6ffd036aa6f939469a39cf7de15427cc33dab8fb33b7d8ba917427e8787e5a4b8411dbe1c17c20720014d88b7023100d6ffc6c65a3b63505fae0f4b5998500c52f43b1aeca062dab569cef1c3b049a100bac551f1c1e68d37d6924ee02b44040302047c435bb500683066023100aba3442eb461ec8e8f2d8ee4d0a3d11b1493c82bcb6076c22a0a9e542f4bce8fb4ea9880d7a419cc0200febe4e077251023100bfb6f1e6f9ac8b8c8ee97f4f5cb8640c9602f63df0b8957464112acca318ea18914d4751f09e019a97170cbd90976c5a0302047c435bb500683066023100c765171c561d2ac992c0304f82103ba555244f793368d5adbaebe314826034ce9d6a0ecda8badcb393dccb2d769dafa5023100e0780f79be9d57a9a51b6d2c54feed33b0dd1d650d263bf72fab72215cae364caf86416591e19f0b4db708aa13096b0d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c3e1c71aa5dade9e45f1beb5beda2bd7f87711b7eaabe613c1bc7fcb69f22d671202ed981a9e64b51faa6139caeb5722023039b9b9b35e5437d6d651ddef784a7151697acb25a677a282326b8d09071dd87e87d679d96dcde760caf734e0822e6a5c0302047c435bb500673065023100b6da75139fc9e4e1921b009717cdf9359c181475165170bbcd4627e6ca6615ff2a08d395efaecee35ca2491a3ee2463502300fad28617e6db5bf0309cd831c3b28c2c9549de1ba87f306be30d08e9a225371bef543d90ced4acb9045c25d7a6fb8f60302047c435bb500673065023060f13f40516fdec418860b7ccb72022e6334f57b4b6edb4e2ae53713a813dc2a9b27861481421d6156d30e460712545c023100f6ec1ed0a43a72daa66eaeec2ba0796c4344d6366db5b159a3f22c73bf6a5d1af0013599794123180a803a63de1ba5350302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023025b8dc18788d7b8f1188acec2ec41871f27eaa36c5205ff8e4cb4d7bc2d4037c76e7b4dde46070c382a6a76fe708784d02307c61851f46bba4aba9f3f51df754490dca094004513aa159bd93fb56040f6b666c30e607edc4db7abd2826ec623589f70302047c435bb50066306402300e3551ff543f01f708e821e41b0b7c6c125f94582351e8dd8ba668d2c402d9597612012637d37f578727a19b711809de023038e110fd2c81965b11287702f44ee2726f6ef0bb598512c49b58cc9b88d90b225597fb26be74765409ec6c0e920e3b370302047c435bb500673065023100a18523b2dfddc7f3b2240ac62e94dc48762beb654bdb6a1952dcf3267c98fa84d5a1aab7e0c1b1dc616aec7ba9e18cab02306f6a8eed3660531d5d9e429c6a9bb654c6ca097df23c200c354291f4ddc38551ce70ff9684fc111d29dc1d28f9fa3c2e0302047c435bb500683066023100c86fede0d2c32536368262d217f87bcfb7f3cfa5d2b01120ed4e0c6dd91dc3a40df0997385dcac6877c23a087aef30130231009b705b7d73b97a0c94127993a3f2195f74164e66232b898b147d4b78e068b4e81bc21af38812a90f530b911aa014d61e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304f1820a15d8bf03c23b64ab5986e44aea9a4ec490934f05b549d0b01a18de591ff09ed97f128b7833905ff87eb93b31f02305024901098e0350a21e394a236fb2682018d620bc3588e646b5cd3dc4e5090927610fa28dd963186129fd40887f255c90302047c435bb500683066023100ddc8541253695d2a703bc4a8e18145a982d20e70fe5791814f6a7d776b5370700884a8c57a61e16f2b4a84875c0d6bf6023100f9e729e983f2e94cf7c0810da098797a40653354eefc8e82435729376adc894645c2899b688b1ebd5d8088e54c390fca0302047c435bb500663064023069a0e7cb252ae3f29a0af848da53cc1e5e5af1934314f1629800b136a9926ab9e8bb4ab4c1f475d0ab0608f3a9798b3602303976cada246c524643d095406a9c4e65373c71e4d7e50d05a162f90c67e1e0eb7a8bcfd005695dc1e8a6722962fbcc560302047c435bb50066306402304a066769a16081910b544959d5b5d7cbaf760075a8a8c16390406cdfcef5b16d573c452d850dff71904d631ebf7ab5f202307a647b436a1a98b4cf5b8a7b9cf47d5e64e23912cddc63c9955f654b202f00763d8cc9586c41a4c16443a294d9d1c2d90302047c435bb500663064023056d32a1e22433f42153857a798831e67f2badf4e1be61bbacfee79b175b7910ba913ae017a8236c28295638b3d87bc4702307b558958e03c13f322074e539948e568e3dbac14961eb7940cd588b79d097d226de5bf210f6f86a93ab8a07aae5e557e0302047c435bb500683066023100d417f7ca5643649228e97e6a1587c0c9aeb4eaea766f83ee97a84f73faaee980581e7504dc1077329019fed07c34a0d702310091f3b0af41678cdea873d3cf0f3f1fdab641d5cebcf1dc1bed1f5637bf74e88b72f81f890f9d6908ef1ff05b0f51a52e0302047c435bb500673065023100a4a0fb2dec8afa42fa381ed49647e57e2cace80d760b7ca2e5b2853b5b4f48181dc43a0cc46a4b6857040750faccbbc80230348e119df3a513e150cc155b5469d2b77810d5b340db7395dd570f82828da510e62352b32c761799a79a88be9914a1ea0302047c435bb500673065023100bcb39779a9e1259464f40e5fa3dc5b3c0a3844f90aa0d5fffc1c18fa301680eb98382cbf1c8eb1bc242b79df795c3784023036f287fdb84996ded3cdd6ffaf3738e3a34190b081fbb78b46e5175410fefef6a4c791daa2f58d7e0a9e9738a2c87c680302047c435bb50066306402302873edd0f14d315af13c0f5fe3ee3521a2cad7bb2fbb7044fa6492f7f104a0115cba1480ba85b2e3f30a40635841de2802303088249da436a1d71a3e488e6505efeaae14addd703f14daab93024291ee5e4b99013c9039bb9f17b90eb25bc110258d0302047c435bb500663064023077f4cfeb227462fde22194aeebeb8c103d3cff30691a90d2c69dcc991da45eb0680627913df62fe4985da9004fa8af300230735083050a5b4374166aef0e0ab15f50d0b955f0719c087a32759ba6e6dda9dd18f09bfdc5a625f110f81f0bd57a4ad20302047c435bb500663064023030f5f00a65f6785377941a34ce8e3519a86079e59bf68ec385e5b5fa81adc355d82bdc17edebb01072e6a02cebda681302307fa4cadcd5df4ce3cc74ec0599cad7785256507ab5cae220d586ed52922850b2d4afc1560b5c86f34d6a3bd4df7d91ac0302047c435bb500673065023100bcd8795e19ceab4d852b2651af2dc3fd788c2f7b1a17bdf41f500a1fdebe81c16b9d2cf5f0238bff13dcc5445903f5bd023001f698a4e505c1b047c0aee89d78df453eb94d71917f24cbd46efffc98da3fb2f11b41de30a1e8f83055a7803165978e0302047c435bb500663064023075903cf2eec08151c76ddf78f1e903b1d557d8573ce7bfd1ece5fdc1e1afbbe2b9368bf6bc34ee7fb05a3e9b2e446d8a023032b3b0f31de70d8bf2ec09474e64a640c81ca1cf06130f2b2e3be8c4b3c01e54e09d68946f5d37ed6113567c09b2e9fb0302047c435bb50066306402302196ea1c80947d776688fcb31672bda3a8318551e294e274d07478fcc86afe3c4c6ad61b21042c1c966d9cc7c2839d4a023017a5d9a119d1ac6c0e340c7bca6b386d0e15fdb1f52f445e6c26d077cd6649086c41e99ff049c781ba1f0ad1a9f2004a0302047c435bb500673065023100a5f9743c906438fe35ced9929218631623a588395c5cba2d2349fe6317b3f4db77e729235db122f82e24ec944e998c7802302b4959839a7742b753954460ad8daa4a0c8208d3d2573841daa227eb91f6cad12ee278049469e79d4ec31afc59193b420302047c435bb500673065023100fcd97af9524d09fd5369e98d3564feeb54366e30c13f31df00284cb2cbfd33d5fe0c0dbeb070bfa2df6200df35756968023041851e3be598a98b3778ff2793f14225693342ca054a783748b2c92f101a28a30bc2113c903a9f41a1f6856beb2dc2b00302047c435bb500673065023008a2bd4edd2c4b1357ba076b2374a8cbc109be2a64d6e98dae8689242af6ae8e78de7b3984eeed294a1f680ed9ff04c3023100fc0f1b6ff798242d19f5bda60f12ec4c5b608cc5b1ef1d5da0ca12630e0a62c291737ad75d8525bfe2f491bedc0188f40302047c435bb5006630640230331bbdf7df73f8e48f7ef48a09de8b038bde412331e96f8b2e689d2099eb909d88f51a2e6a1dfce101cce11f93a5307802300b3052b789cbee18dee9f3848992a38e2834fb2ded57c2cea4022f882e7407fb221ecdb4a898ed1f55e0924a9780736f0302047c435bb50066306402305faf4f55b456b0bac46930f2cd4c3de418b689176b9efa4fd0f53df9fd252a622ce32cb94c5b79b11512f382e10c2225023048a43a3061582a364549eb892b8b1ba9fde3dc64ab516e36c83381ad400c1fd8d04cf3dfd26d708f1cee1a38111b5e2a0302047c435bb500683066023100ae20a739ad01e663e06c3f6d1edb0e02ad802600882aa0520431ad94d609a2f5b2995adc119eace9de6fc395146656d8023100a2c61b7641815290194c2e4b4c23d6153f155ddec67f7befb964a6365851ddc591831ec6b99d29f30d94fc31a0f936db0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008f20b9b291055d06d3f19077d245947c31a58ab7c193ab94243c47404bae30da10b0adde49621326a63e3788191571a50230475da428506301c58cc88103f14e0dcf8c939fde3efbf2f43ba951029c8426a2292f0061ffa1fd39ea04a256c6bc68de0302047c435bb500683066023100faa22b346df5cf1c2b8816084a4948869b55c115a050d9c3723efe74d2f6be88b787ac8efd78f50a0b08259851784273023100f88a73ed095586efe1962fb7a26992107d41c84e72975e36a0a542c9519c7b73dacdf488079a0aa88bba38bcb013209f0302047c435bb50067306502305328227b033bac49e70c6c3aab71ea90461a2f856d83b71f5450bad08ab07c33092bd865c1e1f36c4c39b860dea0f2a2023100cf2ccc24c5c0e0af8f31d2d59fc78df3db14eb58a237938c325a34ca82cb1975b99ee311f43f3d5db43d9aca3a682ac60302047c435bb500683066023100a248529a0d00ffcf4fda91ba6def16ea35134ebca6ad76fc2e5777b0305ecec247e337ffeae3ef9218c857609f8faa5c023100c8fe76dd9161f44a6319031e6e20a0472701e02085ffcff6d7f18b69e33f1c0da6b7fbd95a87ad76dbc05d76b97dd3e00302047c435bb500673065023100c4df198f92d2076861dfa1662b6bbb2b0ff0534247727188d16cf4ab371d5de3ad046c9d4b800deec205703060bd0e190230733b37345a3f475cee0c0335287d6ca9f89f4c83c0e0f6e111c62189eab92bc272b1c6fa6621646df7ee234099788a5f0302047c435bb500673065023100a3b15418c33d3823f89fa732a9106894e0954ff324eeb8f25f29e77a701998c0d81c1938190e695a65fcf728f1604b600230391451b32b15748cd085a6d013e292fa7f3c1eb3007f409ca0ac2da6cf9d3062c05d4a998bcbdc81f9921a2a75d66b2a0302047c435bb500683066023100c07c54886d929a54a304577bac42045d65f97ca58cd9140bf046e40b8acc4f9b75043e82d0e1ed2bb0d760a07cea104402310080bed319e61603ed0e678564c38ce030d2097d5131d240c5087b8e727b7f235e7b7a12d275720054dc5c414be9e733190302047c435bb500673065023100c69f23b2618cacd000f59ba9edeab2801666ebff86f27eb4b2180709e59e8fb1d173b100f33ea0172d863e487b46959202303e21e50ecaeec54d917117ef48ba828007eae501571a422c42d853a612dda89e1cac23b87cdfeefcdfade3158adc23c00302047c435bb500673065023100c14baef9cbe483eaa705172d376224755e1109ed868297ab9d0a28e448c6fdd780dfeacd0057838f713ae5e1cc560abf02301e83cbb7bec57647085d0592d331e168236531b1b7946f912c87f0c3e68213c388532617be595a3313debab15f1d90950302047c435bb500673065023100de31dc577324ae89cf0178e7e937a31771b7ed757c56c803b6d7133cdcabc901a173da2d8349c70f735a28ca369dae4e0230073432a2a1ceab5e04cb8f4902b207f8c8147dbc49961e374e7f98d0489337cfb61e2b584bdb9b04a6eb6e0b2c2844b30302047c435bb500673065023100d9c664cfa2c7296cdbc46dadae1c35bea7d09c73b513a2639771a266e4fcf7987267e4c46b3d6e1236b3e96e103b6901023011d4afc5d175d5cdd9dbe3cb702c97e86b10448ca8c14d9141571b039acf6d38a07c48e7fb40eeafe1a21f730aa742900302047c435bb500673065023100d94bf0bf873d2b7f7bf521d247b1ca6dbddc51429d513dfba29159b0c2bcc83a26c049a7cc2d4258dcdce34416e90ed502307ce437a6d316b9e7d605dc552599f2fbedd482cb4811610598989ac27c668ab6668613cf5b272e5168ee7e21cdbba41c0302047c435bb5006830660231009b83d120f63d5a42a203040a7676e49321c651ebd22668976f985a5bba2e6978369a9208d61c8f30b1c72d4c3be1f978023100b055480e295d14b59226e7f2eccfe6b3fe735ddd2f432d6981a0b0d098af76ba5ad52bf1a431447bfa50ac673e7b7f1b0302047c435bb500673065023100a12c722b0346a575495530272500cf502f801ce041e15032380570955535ae904d74c7a393d6ae4370110fad222ea7b302307776c47e3855dbe21959fa942fd974e6d428240997e9f7d5c687313b813d8bfaac4c34a96dcb94c7dda57a8344dda6dd0302047c435bb500673065023100d6a7ea5960df2f922cb88758b6ef399bda4153f237f8dcc6bdb6c80dc70cf749ff9ffdd74ea792a4c228467f0c7d57b802303b3a9a120b6dac164eb13448f665a6db8d5814482b0b56576253ab3db22965b9d42229657ed992adbe592bcfad6ea6f30302047c435bb500663064023078c3184add4ae5490effb34f5485b260537242b7ed1c2de3f1c5ef602268afaa6e0ccd4429caea84c2042b50ecf36f4f02305d7494d09461d527c982c7e6f74dc61db0dc749da0189c628dfcf89f4a798b94a632cd0be61052b3749b21aecfc2a88b0302047c435bb50067306502305995e307edf750cda0ead158c9855878ff408f5dd428936c99533bb8ebb02224f1019a3e2cf3890b1d94f860ca517350023100cffbe5951502dbfd0ad8866d9943dc92221ad2f862336b964ca9f3fcd564446d45e4b186559b52cd1887c98ec5c9ee5f0302047c435bb500663064023063d2b0700ea664cdb73c6fbfb1f9efecc86d52beb38a0b315111b5cebb7036240f753a4c42b8a08c34cc862d40f1601d02305e7bde2ba37549fa99a229168caadb3883981f261cefea5b11e490b325e43d58916e9b06c673b592af4464781ae2b6e90302047c435bb500673065023100ecea3e855099f09706fc2fcbca820bb3eb935f87764ae2085e92fa2cd55c0e7f178e01f973c366200a29ecefc7d3c33702306a1001297d17a3ef3f0a26c54856dd1af50772630acef8b91451e8e2db56550751b874cc0fd932c1ed7402a1d24a77090302047c435bb500663064023000921567f756387aecbd2c92fdfce1ff00c20f4504078dc350f37418008eb7a3007923b771c170435dfe8d79898398c5023042711a107fa6f4ae30d8e42e9901a441723d4760d9dd4b547d64111842b444402155152652d541b4d468d8052953f6540302047c435bb500673065023100adecf43582b864026eaf8b5dd0d4950cf525685e67666ee8f8f947bf288db3ebea6bf820c1d736e6078368210c696d9d0230671485da32b399b97da483bc90aa4ab7282f4a75ea7e281797e222a2630b89346847861f22efc40c8ed17ecc133335220302047c435bb500683066023100ca637fa5cace0d28c3c76c5d52495323163dbae2ca4a254f7e7226feb2cb5ae34c2e651aaf6e653c119a220447706d24023100dd183266cab23e42b103d17a906293de451b022118441eb0a93d850f4a3cc7c6db11846c7adc28176df0277f9b104f1e0302047c435bb500673065023100adf88d98a305fa7e73ade6a550228e1e07dd48494c89626f150d7cd69675f6a226078e994a6928b07046191bb9c3e327023038c9d35dfd706b394a48410b2f480c4b374f16bb9d2ff8c1a0cec467c6187bf1cc4362ac99ccc0f330372f4042e1208d0302047c435bb500683066023100ad0e8b7e90c32c18badd7732e18cc2d69f73284c47d08e7e50666d9dd3367c41c0162fc7d541191a91dd9d102dc4a0cb023100ebf44bee2ea012f3108bbbd70f12ad61e05b75374474f3c82501de46a3d3dd2199b5ac703b9840b0a30adc9f75505a4b0302047c435bb500673065023100a58839bda72d3277798f35c1bd413709c3ab6eb3fe615260e3ec798f1400f9d7a5cbd78e44b2e25b839c3ff2ca35e5dd02307c68450ca2f1f40111740e66e0c67b18be30bac2bc0deec0587861ce224575b1737b0c54be86993e8097077952bc287e0302047c435bb500673065023100a82e6769bb598946570f2491950ccf3258cff266b66096419eea763d39f9d681c2fb870a11145bcbad1247e9657287aa0230401dc727e0850dbdb0aef795975ea06cb30fd5e9aae35481c014e7999678a2dcab010ec97d7449bbd21a69c041cbb7f90302047c435bb500683066023100e306287576e15ace363b5c76e13e79dd10fad26606b84c4b505c990813757d1d96a8aaf5f26fc67e31f1c15605ba68e8023100c85c741295660f456e8ac60bfb3924b35f22992d1fdfc78d118dd34d60bcd3f5289f0f1549b51f36bceef5297a8b743d0302047c435bb50066306402303385baf57840879ef1d74fa3517873e0553c032c471483dba7fb5c2a3e067482e9aeb05d1c54864612dd6944021f6ecd02307fcf08519687cbc6bc8591e835fc3aa7a3d6123b54033e06d42a296758c292f80211601707ca29add4349516491155510302047c435bb500683066023100c63d35262f91da8e62bf15a306fa369873732be9b40b918407ed6cea3353f7546fed34be5290b0ae1da95ec7cb0dab250231008369268d69537f4baf2d9466c573c1c6dd5cc07d30d3155d2e869ff2ea104da3bb144a79f98cd19066645f6c7236d2590302047c435bb50067306502306c59bd2ac9f3e544b73807ea6ea832fef971e20f413787353c314bfd711e1df6b722848e578ec7b29afcdafec98cd40c023100c976046a4c922744b366abdfbd2516e82500847281928fdf712d7af2263419226472c97ba755e258a0f60c521c38a2810302047c435bb500683066023100a8671cb5505cfee0cbaa35a3e71d519dbb29603988d55b8f4677be9f6cf72689d527a6f6e31a6fa553b489bbf8d0eb62023100facc2c93dfc3c63ad0edd657a265002cf2e3851b937a55c34f05f10e77af5180c8f5c3c8df0d65eb4c4cd31c5943624f0302047c435bb500683066023100c028e71d0f54931d4813518822ea80ef0b9da52f3764c64a3244eea48a415e481cad8229a6b1135b73782213cc4c2fee023100ff93e19755021deb55202f4620b51e45e57ef98334074abfd7f593b4353328b828dd39bbc37c92a3703e0f119f54172f0302047c435bb500673065023073081397ed5d5a5975a786bbe2a504bf93be8703e70b1e50ebb196739741e11bc7ae9080599f8e93ed37a28616463b3c023100b26d9d6da03185e5aa58ffedb7d1467810970dd6f52e95dfbed64823d42b011e1e1fcda03cf261e0300d2cb98e7c1c700302047c435bb500663064023063c8aa679615dc418d6089b2e8988a9df8e8d7fffb2f0eb4ceda49cc25a37dd3bc4560a203ccf7dc3cb0b2df9f52823e02304c996b009740e9358d72247c4ebfed4f19ae8dd2699e71b3bb50be70e22cc0d89834d76ef9ac74b0acd4d4ea06309b390302047c435bb50067306502302e3dd11940da894d695e19c7cc8addce2aa6ab1a11fefd029550786e3ec0ffe50d379d3bf032a265262b5c02b4d5b7e00231009ca75a2261a484bce2804b640db084a9bccc326ac3ab452724dc2be43f336bd1e3831bd8c9f5375772d34fcd70346cf80302047c435bb500673065023100d2c54f0a9a0a17d6ba8fd0477509d1068f57c491922b70e81f7ad18779d366b6593e1ca23a63bd163d68d6dde7780bc302304bbdfc43e8e41fc753ea2b29200fbe500b1c8a530cf7caaeeee834a759d953b8b222de6a0de4956f04c430dae05a2f970302047c435bb500683066023100df06811c8c643dc840b0368e73df84cc2d1809ec13b8708cddb912159065e6261e159fa143623193dd844443b4b76ed4023100f25988cf540b3f01c6963585c718ca95c380d69efcd1afd5977893ee061e0562b4b7aa3ac562077322cbf3b005e2e1e40302047c435bb5006730650231008a837bbd4410a175e448269f1551ce4ba197ffc043acef230987935442bf5e6ffb6815584f0ffd45959389e1670fd29702300ae196cdddb2c7d11b2eb43f17716e2cf4841922f117a677c3773983e5bc3ac3e2d4a48ff7408bd60277071ad892db9f0302047c435bb500683066023100eb462fe1324e1561929d7ad266155d5334f774fa5613baecef2572125058cee7b6a8077e94fce8abf77efe2a3ab6a073023100e5ce5e54706b849579a1fbe779b58080c34ffed89fcb456a8874bc9562d08af4e8b96252060793bcca89ec5028d428b50302047c435bb5006730650230077fa24a5e280f5e42a45dcbd8679c4d6a9b3da0c752f88136fc79eb2902a90602da9f3cbcf43b2f7044b5f5ac5cac2e023100c45110cd155805b369d20ef691004f4f113461d72fbedde20e21deb6639c6aae6e25d0e14e0cf655bafe5fbc84de8ce70302047c435bb5006830660231009bb620a7a051620ba953a1dbd8b43898f799e66e2c06e8c674761efbb79e72051a0ee3d7ef47bcb35158c25bb35b3de9023100bbc109d154990701868c88c4a3248ba82522f9f0502f02c352c1a9430c4d8de1f40c2e2a273fa6b4cc2aad221cca22ff0302047c435bb500683066023100b3754c6594b2a1cf7b6d9b3d364035fb70420cc8f8ee1c54f47771f82b954d36110a2e1b45351854094e50e932898bdb023100d5ec97bffcce819b90fc201490299b18f3c3a21d86730fc5ea183b487e234d7e7cca801c74bae2ab1066ebcb09b4b8300302047c435bb5006630640230565824f2e90511966ef2661be8f0207ab1588e9449fc14ea7bca241bd65a788cbf0b92696ef8721264ca1e4950ab0115023045c984aa609de1529f1c401600ba4b58b995c534ffa329f0c82cf11783d950d38ebe8c011d79eae26b755c41f5f262740302047c435bb500673065023100ab75221cef6b029cb022044e6f10124e75988b5c878a111ea847559f578ce7d767533e535be674f1d25563489c9f658b02303e7465c2083dd3590625516c8cdeb1d26088e1c0dea25d64f70347abde99427955e76920894dcd732b60546f5c4e82ed0302047c435bb50067306502302c4daa7950cafd950bab5384ae8cbc0b04e2bb48f35ec38181fa09690ceb1e8bf4f581989e79b7c1180c4db25ceb16ec0231009d2b040211811e16a6bb9d07443268ea3f5e8c2476fe5db9d1879cda8cfe3f1fbdc8c5767c4d8b416b261b927fab65400302047c435bb5006730650230045891589846d8de0919f635fa790343cdf1749d05b258ecb5dfe3c300230634b90f7fe3b5a8257c327a9c0bd18cdc74023100dc8152258d681d2e3e01223830de9b81cb64ae67507fbc2c61b770e4b2007b908a2e6f540811156fc653018e6c9e6fc70302047c435bb500683066023100fd81829168ea539d23222f8186d6fb66faf53b3b49deb686b3d9d943f01a124a454dbc90ec30d58b116e8e165ea742aa02310084ad37c7d8de07b1ad4da7e64f1a3f0f45394cf487164f3ccd1e5b262ad819b13c23ee90352efd07d1d7894998a0bd2f0302047c435bb5006630640230678d7313cae92907806f47a85009897233d0531677d5f03ca3bf17bbb26d0439c5e54deea47745985cf3ef118b7b3178023033b2b8dae3f118c87a459fdbda8541f483614b31027499d1c5579b8f106c0ae8f0e9fec573d61d137beb2f2b22e6aa860302047c435bb500673065023023ccfeb7c2ba1268e7849a9970a4a6e44e43f5dd5e435ba47ad2290f10747e4ebe28742e5f5619e01b9ee53dedab6542023100bab3f762247b7aadc36b287967227ff34553c281ac07fa0ea1b6404b85acd86cfe819bd2d2bfbf15cea09e72dabe798b0302047c435bb50067306502310086f6c4bc813ba105efe8a4fc004a4848b18247e8430e3d311d97488680686990ae9a1ee18caa15e342d9c78495467de102305732908c7a259ca5bfa5a1a8660faf8cd3388fb2466180dee75795d64d53296b9eaad8a6d05ae42179c7150b6faac1a70302047c435bb50068306602310091a8aa8a25ef4656f242c84e2044f0b1d082df52139db3c5552db426eacb027a4469d449a6b1ba9c331ecdaa114a66c3023100e3be95b9aca1c4ad85854ff42980295c67b6f9eaf76b093336289bf87dea0494681b9dd4cb27283e368e5c1a9a9854190302047c435bb5006730650231008aa598c2a77b3295581ccbe82fc16595440908792ef15f19a626304cf32a995d7580ef758244a0e5a0fa6049d5da009f023018f009a57ee734fd1b48dac8c985529353a6c340360065f4d427ddaf3fe1a945e619d5fde96b0d4b6fc85169397821070302047c435bb50067306502305a4562e6a05a7c8f438ce05bea5c9f07b9dbb42416d50738fba433ca3c915a1b6bd0982adb4744adfc0394466bc919bd02310090d945ede35799ff4167dd2e2a145bc1e34fb2153c7bdf1d0f84fbddd788d1a1042a939f4989d1231af2de5e8ad01ac60302047c435bb500673065023100a514b90fe338126a843dc6b405ac7b14d67d6f2276b81a890fcf930e1293f484b9a3dbdb05fb64a63e15072643cf8821023020e8a586ac6173d32c91a3e5d7a01cc1f031964e91c8d404acc9b549790d953d9dc69fb17bad37f7a6b33c8cf0c55ddc0302047c435bb500673065023100e7f179299346225e636b30f441a4cde4edb2aba0d34fb89b7461c8f977e2265b428cdd6e7c90d83ad3548a8f36e22e3f02302b8ce50e5b0048129e55896d1db0180ac69ef09857af85408179b25261b568efaf3cf6c82973a25aee9e3f0e0f88c6840302047c435bb500663064023012623bd204483b213755de48e424f870070e6a181a7815c507b5b21b8eae1733e17d513c7ad8f866ec7b13e553604c4d0230225c01a041d40c6cb7a09edf1a8cb0adfc36c6e1f571fba86bd2e13be2f157ec0fc7eed05395f74e7258a1d147aa83f50302047c435bb50066306402310082046e168b0968a90b21312ff868a08bfb5757d0e5b45e778579b64dbcda60e9c558131b94ea973e5d448e7ea017ff4f022f5bbe1939d1562eca42f3043fc36e2724238c6be085193dbc7b4385da3d88921ac68775971a904d8f9c3cf4b01b20300302047c435bb500673065023071cdd8bfc346d3d66dba3ad49dd1383ef8b879913d519bf1d4b60dc5ab76ac4f5952f267922f7b08d8e558fb56eef40f0231009b3878a4f4a1895ec55b01f0b86efbba1419c91d4ff6a9d05dba3084276da082789ddba569f98aa6553a5d525ad335510302047c435bb50067306502300c00089238274b6b2c58fbf4a1fdc3cfb343fbbc792da712772f67e766646ce8e8599c9e8516e85fec2b186cb7b0b42e023100cb0a445e8d661d24d042834ced629e661d5e51ec99292b5fcc65c204720c3e1ea379d81c73c123ed5604d26d82b6b1ec0302047c435bb500683066023100b1820ac7714798685fb6a21f0a33c58f773c49ba23505d59547f6c393c6e8af6bd2e8fddb872e8b5cb8c81705039c25a023100ca5e55748a72fe76e44ae48068389965ec058bca4e98d0395cf4e57cfe76f0833d8a1b0ff1374fb41d7b837a3b6f6abf0302047c435bb50067306502310098f81afe9a3cc48a519bd6c02cc2c0bc5f3b716a51cb22b2247eae516f5634f0527467d50cc22ba7971e507daaf457b2023009929feb9f2c9b441ac2fdbf9766cd9f4d49290a6c855f163714354c1009bd732bca8298ddfa511bb00f3d21ccb073f50302047c435bb5006630640230604b1588e949a03644ad8485345fd01adae0e5f6cea84cb5692d32010d76439357fff480718b4578e5f51969fc10d5100230672d325dc028bf81383526e0c03a7e6fa53dbd10f61a85023bf29f7aeb8e09934d5a1b989b9f2a9360f9554dad005c930302047c435bb50066306402303ba1c7d9c0c4385f1a2f96ce7428ba2fe6808d7fa08d948e738d70a46209034d426f9406be8cc4b036bd065b428774490230317f6a6b3ec518cbfd218035804cdd94f0bb668dc0a4011462035367e52e674062a06de37e2b2415949f7f6be21106a90302047c435bb5006830660231009d9431bd30bd7a39328b8d31dc8a37715da28f1fc417e629ad9539ff34f6e138f83085e6f2454faa8a895c4599925c58023100bf6e8b8815525c05035967c26ab07dceb0c09311eb3b9b74f1a05f757d47b03d24784674dc43cbf45c27fcacb05ba6c30302047c435bb50067306502306dd023ffa38a0101296abbff2938cf164d3e02b303b773b1309f8b8ee30a32819e006f6947613f1a0cd291c16a766ceb023100fad7ba727344b9dfe9f2c326b898a58c2b399006d76a0c15d7c5e7b64579d3019dfeb8f48d0f5064fff4af7649ea51030302047c435bb500683066023100f70c063a311e70268f8f2f80a26fb8af4a2a4669d400fa14d3594d39827cfbb77fd0ef8d3e2ce4d243e63ebbfc87febf023100c4ee404b0f9e454840ef4eba869488a27729740257bdedc4a30747804f8906e0ac5c30997ec6b57ac6e170c5e9a6a9150302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e1e87229109ce1cf8d078bdfeb7d06f06de8732ca0b110974b70ee0c0df642d8088528939087c656a2d7f7e8be6ad0a0023033030cdd31a65cd7ebd756d61c34c9cf0920bd03b77b9499083c24c764fc1fdfdd3b8342ae2906a9e44b7684ffe443870302047c435bb500673065023100bd5f8c736d4e83b94ef24e2332f35269244810441683f4091ef979fedf156f0918f4dd47bda0eeca43ce3e5ecf16098502302995b09f6b5beb12b7cce756a6fbec961d1aa6931d08c82f1a5fd2a8d5ca7dc93a63ff7fac55d9df8713114088e48fc40302047c435bb500673065023100a26ed38c5a3bd2413233d905b3611100bc11af7208b0c4a93c2e860ace718874597c3a482ce4629244d3f110ba24ff28023023d0348d963992a42117b3f5c6cd89b278e0d3f4b0d0cb0045884d684a8f18ce78b569eab8f4867370fb35633c3ccd4c0302047c435bb500663064023025319a2014f116cbeab2292f45f24eb10486351a211714a25f68c40b36465fd0929b35ef1b140814062ee75dbb75c9970230245158050582cb9750e05baefb40b486e7b9f3e1547f7c2611244b2113808b71e2b66a875e76681950046f064614ff660302047c435bb50067306502304ebf29efb583a3864dcd64c1fffa2b22860b21c0ebfd6e670363619910268dfbee83fdc7650c1cfa8d256e78e3c6cb670231008b7dcd2d3653324c8303b133ede4a3502419980837ebfbb03cbe68847505e9561fead10c2145b2651f5573f9938612cb0302047c435bb500683066023100a4d2e96339930043debe55cb598d13a0b0300395061920b56c3750b816391e032436b4a292b87862507d773f803aa643023100a1e394a063b6645926275cc5d8c24b32483050ba5671bd5ca622c7041a3b5c5c99133d8b1dafa45df93098e2afaad0520302047c435bb500673065023100e9d11808cb9eec675a9fa39b6f234c6f1db762d33e907bf8aa3aa0bb4f4779ed94f13ba170ba32f5c55e18aa81459d7a0230467b8349e52c7057276a53026e3f5c2aea5df855c3b6535288d6e45a8436bf172918220913506a9fa417a56f1c33cb390302047c435bb500673065023100d468cf4699e78baeef29d6f6d50a53f04351babbed9dcea8aab84a3d827084ff574eb2bccbef6e25c387896c033287a5023055bdb10c24a4054902a4cdc558e7209f0bb2151ea47a6f6d4f3b771b753b66aeac086c10424cb2aeca84f46a9ff847350302047c435bb5006730650230163631506322ffede96756789acef06d9ee512bebd62ac7da66a2368cad55165a73080eb76ad8e61f0b243fcc0b85905023100eb681060e6aea81a6b9e99078d1886ba6e226d7a61c63a8fc1c87e253cb2140a4c0c2bc46d4acd6d1b23fbec1f6d0ff10302047c435bb500673065023100af46213ea97fd4fa1668a69eb7337bcca2bbf74f04c6434f71c2196ff29a32021fccf985c6cbe9cee8661b33b52f295102307b55405cbc9126dae47cac20b1e775efa0120edf073b90ff8fc50f5b1fd0f9ae53e3512b2cf4f4f7633a92440601f9a40302047c435bb500673065023067192dde89151cdbbb8129f2a89b6520706f66a0ef4d99de25ecc2863dad543f1643139ecb310bd504a67cb0f305653f023100ff7d7cdd4d862ce280185abcd0453d7e01a6aa05a19d5e7eaa448bbb467bd1960bacd556e0e682831aa5bc3dcb8d5cf60302047c435bb50067306502306e6226983e413e974e3202560e577564f33666ba9be38e16630aea115d81638571c6e69e8836d0f64a3b75fb1c49e35b023100c5387832d378c26c5edc2cc3c13d1e679a35d9fadafbe4eb26062c09e2c7d3c3ac7011c2614869756466880ef285dc9b0302047c435bb500673065023100d73c41ab886985675a30c53d783a40a4f902f542d1f7002c167a7fc8d15e8d521de07b567f71fe01611e7e24eec6dc3f02306cdd9bb27de5f5718860a53bc9a361b62de876ca2d434a9746e97b20023a0f05bfe3477235af646e203cac4c55ef64ed0302047c435bb500683066023100f73d3a00be53c230567991f1fe1e939c945c553ef836b54761357a7d8bdd3237063ec54d5b9a422f9c28b1d3bfd4c908023100c486462fcfdc938e355fe680ad5c1d756162407844c9ff4a9aae2418ebcca1d242d2916bb385cb18e9e93260d63ac3660302047c435bb500673065023100ff99ccae1ee55bce58bb818b3f9524ab17bd1edf5154094a66fa6ad436118fcb09eb889d186590c651cc590d7ae83683023027ce8b0a171847a9af4295420519cc9fa9e1b7135423c070dbafcba12f5e060cce1752a2e6f291e6b97590f989b2d55a0302047c435bb50067306502300e2b0e2453de9096092f98694d68ff87d0513933abd9fccc6152924a482d21e9f20d48539f564c8ed31a570ebec11142023100a9065c09f06ca3f41b67b1ec753f546910a7dcf9715db6f5d9a355952e03766708707f812b90d1d9cdcc97e48549cac70302047c435bb5006730650230707bd6aa7cfe4fe66117cd0041e6ea11fbf9c36f61dfdf686f643d2882f34a6dc358143519ae8516091269a182e38d43023100e69ed4cdaec8afb7ec825014b0ff9c9ac6b82102ab0e868440018ea3bb6e952df86dad239f8f92d128a61dd4c000d63d0302047c435bb50066306402300b614d286c9ded0d5949c11f6db72e92c356798680f54f63b0d161203cb8117124fbc7cf5b7f218ab42ff368babae3a502305916f714d3ce335e5726153a5c4a62c02c028b9c028136ef9d553c95f3a913c8c2df8d10817ea4831e43ab9f56201f300302047c435bb500673065023100ea28c751a38d18d5d7269f4fb4eccf394ddda5195e6c5bd9621f49ff5e4b67e9d37c32ad6e7d95f71e344bc5a9a423ec02300437a4b5bcfa03cc179fd2dd62cdce0c9477e00ad457433f0ca494d4bec7ee4a61c13d9b3f4d65800a3799c8de9b9eaa0302047c435bb50066306402300217d142c6b367828332b0db5b904b9e00e089ff3051c56d2f63c738614845dd9947391e2c8630f7485e4d8c558757d90230685c8eb6429219cf15cc139c131ce685db240ce5c8b049fe890995f95dba57c318e53f53099f6d791fa8a380afa433f10302047c435bb50066306402303f7e0cc31a64bc77354b03c195a096afb79508685ab6df0fac1c4e48a0e5ea921bc555f9664d4a3c095309f868a1ae6d023006fbc060a8e0aa99eb9db2165bb2c0dc07a9d6f21582ec8c122600ae87ac1c702a99d0a4b331e1429cc906d393b854610302047c435bb50066306402306d3bd2d80a49aed977590798312c282be877b3b1beaea37f50091a3e1168329ad95c211817115b1fc4844232d3d43265023064e4631d7d785990f2b899f2121a33068d70ee8f400107beffb19bce0a18106ec5cc6ae98867b41288a7a5ec192198b00302047c435bb500663064023033dc8258bfc577d146ec99160b68a78abcaf149f5da9fbfc54560228800c783c2cb416db05a7dc8709148bed111c90bd0230416399d83d0dc2f069938b006a6fbbc1c919ab3e26aea049493c209d6bdae76f433852e68d432a8c10e36c391c1012ce0302047c435bb500673065023100af70faa0b8395f29f3f46645d1ab89933e7a0fb8db125814bbe6fec0422a125b03432e6b8851f0e228e06fbeff96ccbd02303f7e1d4acb8b1957555f60b0f56b063269d630d153f162f566bac54ce5c422af59d107bdfd049895e82f64cfff0a45360302047c435bb500663064023070038abd3e050532b41ea72beb9b103fb9f0ffc9fc513a2e81ed7180ecf08b8bfead308fd015956531e497271995897d02300d4253264e18e3927bbbf2d877e8fe1cad04936eda47c116aae22f11ec926ec52ee645c8a14626dc6d6191a8ec3504d30302047c435bb500673065023100da5109bf778d452e760f8e210a9fd4b4d013edcbb2e32433d228491195a67dfc686da5785a99d2a89b546b3bed07639d023069c2f2ce78f91754184c35b418854bc85182185e459742fd9bfca8efb45a716a3cac51945b92c8a64c1975d9abff9e250302047c435bb500683066023100a30b7587ecba7991ad466868ca56fdae0c37e99a707b93cf7a0af96781bfb3aef367ebfe89045666f3fdeebfba962293023100d4782c8a120030fd72dcac918e250699f0e519d97b95a3abe275046a024a57447c02225b6f2fe5c4bc29331188b81c880302047c435bb500663064023071a3a2be6b7b8c4b2b090e324216b1be868bf8361d56d2a2c8f27d7081fdcfef71f3ef4619bfae166b5d3b6cd8711831023002e492c2ea94870bdf54634efaf9ea2d7f7b6db391d61a11b4c25e1f559ec0895dda018e7191a4a6134c37ac51b8f4c90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307b7543ca89e854790f1212fe1705e47c160d500e108b69f818f651c6034e1230f32c8e49daba7a6e0c0c26064d0b56980231009613a30e1efb07854092976fc5f051a6fc3721a1751e8497bda397d2c525d0ce3b0e60f461ef4f4bacecb5af43f8741e0302047c435bb5006730650230617f9f2016a0a2757526858b5154587c996fe3f56ac3486f2a777392f9c50a9559bfe4cb86d7aff456b49f5e9acf3b2f023100daa03815c4fa830b9a90e7f0a57799ccefbe741b634f5aec010f52d24842b14a89160f935774afdd8e0e48e5562187830302047c435bb50066306402300f1e899e4a017d64d17fc55db3e6236c036a7720ba098aad7ae55f2c29440a6978e93e86a2c461e19fe2c44c9ca7926f0230597360e51d0c2adff70610d773db60e7169a3619bbbd167f302cf736642f26b9503895126e32a9e89bf4f7d33db770f90302047c435bb50066306402302e60183ee8508316634118e1817f2d083fdaaa6c0d6497e6e1e924015a5cc618eab1483b3104b0a7a7b97eec4850756102301d184b26e40b079a1de2df3e03baa7e57f8fcc8d7f29c60d24cb29f2f1f147f5cabe2c7631d7242c09d00f78b9beeb5d0302047c435bb500683066023100b5a4240e3c4e842dd42eedb37303a1fa26f03292d9c9079bef5f83e85cc6abd0670eb3c05b7492ef0e62a90fb421606e023100b69048f078416e6b43bf5e6a074bc77e0b42a6510b15866249a831734e4d8f9edd51be336668058771c5929e4ce8f9a90302047c435bb500673065023100f36bd8ecaa1334d5b946df1e8e97ad01df010d8d99278bb30d6ed75b703713cc3e5e328f8fc253ac6713ffce5a8399aa02301daac6671bfd9d134441a50d52bd00394530306c42b86e74cf864e27dc86c5b98e399bf7fdfccf21a8683f18f603a2ce0302047c435bb500673065023100ded92ff4251703e327009a13193e92f37109396c1d1320d72e1917fe89081a2022a9c76a8471d57ee55ad24e579981ab02305d0fa78ccf8fd1de684b6a3efdb2728be0a055632d94674fcb84e87535b4ba3672d91a015c2a6d28570388642635cdf20302047c435bb500673065023048e4c678ca7180458869755f5b8930e4e3d656c0fbb44a3294822d0fc54202d89f74085ac7effbaa0c781ba27a8df635023100fb0fb21e43e855bcadf1f3155620920b6d6763423b7ef10eebf295c16b754ea5d2c2a50dab1467593e0d9855e803124a0302047c435bb50067306502306e7e785e5e3055fcc7a23a1819e82ad129a79fb0d937a4dd8c9eb6e766e3a9b820bfbba2974f8b4e41a01b038044bd53023100d6e518423a32d19e460f8e230accc90cc6de8991e4eeeb5e59891d3dd3d076df63fd8504021eddbf1fa15e27fcadac3e0302047c435bb500663064023063af4ca01382cac3bc0da33034a03c01fa5571bdd26aaf80a2ac3ed150510b4e01e5dd059d2c054073f7c518e2c496c00230325fa9bea5ea21ee19903cb76f809b005371fae3a5d226f4393b77cfced2dfd35cef0f834e7be8ca05cf49b6164c59db0302047c435bb500683066023100998c2d2b8ef69790e8b27d27f9d06a004e61010e2f3834641a28687187d638c86ed400bfe1be1919e29a4c8190916543023100987c2f2bc5b5929d53338d85abfc6e0e2a2fa2ac194d217b3a907d50626d5cb3dbb005840a7403ad628292a3288dc7f70302047c435bb5006730650231008ebfe4ee99d5beb3c9e0f37564dc2095b14d7f06435d5a716f340c2d160b366b3c6fa4f07d611af93a8296467ccd3d45023041dffac4442dce1eff69fa5ac6af876f74979e5e820320585653386fc573d64e6d267498e8ff56ea1f80b9612374e6c90302047c435bb500683066023100ad0933987ec187556fec16946d23fdda85a4d95a4aed6b1ed1183b8957343b4d3005cca4939863f5fad531c56a548d480231008cb5cb872c4426c5397676464e935fbb16d10b180812eccc869dd596471b8fcfb8fc879675f8d5bcae3d4971276c9d0b0302047c435bb5006830660231008bee34e362b2038c470d0c3bfc9846d8de95dc477ed9d316bb10a4c10555c5bb74d5ab83f3531eed09cdbafd59c85dcb023100c61f72695f89c459cbfb74d6018994be29cc6cd0659a2f635c1952a6339bcc71ba99c4cb31cd8ea0f4e8a595132d8b880302047c435bb5006630640230101e2b8e622eecb7d72cbeeedab51817280c873e344870e21dddb4a2b4fcf68add59f9b40defd967404e433cd3822ff202306a1043dbb99219e20fbe652ff1cc9a56a7c142ffac53e902bf3aa2468fe9538798fd82638ef493257cd269c69e0e61690302047c435bb500673065023042fe1a577472609b6400ca5a47fe59fd5eefe2d261151667dec4312db87c066864efd11d5c9fe9e5009de6aa919c22b7023100b510205e62281993010470ee0a87f19e368e15851217a679b4352abf531b597cd414dfe394cf39a483b221d95e20f8750302047c435bb500663064023066b39b3edf5d500af8e35f2e55d5a5f74ca0cc491b4bd1e58c937f5d40cf747fa7f8b8f9ed24c7dcb0992f798394e46102300a9baf92ab7643dc0ec1d72641a5e7b4435232aae6fe075d87037945ac438fd917614fead3f73945700c25f727b4efb90302047c435bb50067306502310099425cdb4228623eb256991c799015b7f66d499d31720a04cce0457b9443d208e78119bd4dffe785101b40dd3154b1e6023023915f591cd00a3b5d8974aa238b211f5efa6e28ed1a68e17f659f9bc353cb20662d5fea91e4946f2d23b60cfa43db760302047c435bb50066306402303c79ef88c52ee9816c66c90f2c400a2caf1c452c41351d654c76dbc8012766b76fdb0a691190da02ced25fca293f178c023052975efb64cdc4eab6687a757ca0967a693ee36f21524311ca8f3e01822a756038dc45a5ef657a5033225cd3ca6f69fd0302047c435bb5006730650230459c59e48f4bfa69a96eb96917c7b8d88e570761da09b96bcb8a4d21ee125806cbe972eab75eb0d721522ba2296dbf23023100a604e8a2a79e761082b847e3ebf1aa433fedfffc543cf3878a203f78ef65ed78300b3bab982d93ccbc267b7faa71f6ac0302047c435bb500683066023100ae57fbca65aeaf69acd1fcfd56b38ef3f48e25d912ab178cc2a5d5b1a66aa417b1050bd67bcab64dd34a804c33d4b2c3023100dcce805bdbbb6c3f25e86fc69defa40be9d9ed74142782b20b9abf8bfb9b26459750789c55e2ef7b5d5d92e0f72921a80302047c435bb5006730650230553fbc8c354c80d2e3dd83788f8d37fbe18a696fc986827810c6c45e5910b89d7c140984c929bd139a28b0c84ee67d51023100c0ae90e13cbd84f57a151eed1ee11c411bc85693d0c6bbfcd92b78aa72fdf404aaeab9b4cd58de01294b1b0a925c78160302047c435bb500663064023033a144246f16b4a23d52db45af88d7dc99d12ebe6309d724d16ed6f479a3f7f5a66adce948f89617768df4618fcff43c0230076693152e054334391827017d499ff1643b03093918babd88a5831aaa675df227c8db2f457161965a104c988ea466850302047c435bb500683066023100c15fac64c005f6049bb9ea95865947e5e9b8ea69026b6e9ab49f02ad6e2b2207d3556b68dda20ed871dda0ca7291ff43023100dee83b75c8698f10284053e0e4963c163eba3c85d0201cd239e7fe89bab8c5315c2910688987bbeecd1fde0db2d989200302047c435bb50067306502310081dc36e830b7891e859d54eded4fff0488f31e05dc57ca492942fc95dda3909c0e204c20c7bd2e910c7934a73fed5ec702305f2b5b2825180df85fb7048c648636c1aacc5d080ad19a2c504429d9414300433b322743f6ad975ca862c1bf711233c90302047c435bb500673065023061e72abef0a1dd6aa7f4470aa599aef0308bde112e6c6d9dbac6ee5364bd15a385922ecb6719c99758293f1451e62151023100df57b9bf529ec5c7d339fde6d3479838ebd2683b478a0e14b57ba0e1f20579f79c1229905c58cd911000cbdf84faf7410302047c435bb500673065023100b2da063a37792542139cdcff5d80d561015d898a0f81ef1d0842de4a9308bf4fdc1b333f5738cccd7dd99f208749fff002302e6312e8966c93338bed41e9bf90587b5c0cd68f2d6fbbb29c71ce3a7cf8c16990b5cf384d94ee8cc010aee55e0a29c80302047c435bb500673065023100c0a3a5ddd413edbbad40f6cf63f4692065f2c5a7afe57ef9a32689b0244d599fee268f99c8869db75cf907b785e96afb023014b17e8f82239931d12ae6ff01e4a8f843aaf7d2e1b76fca1d48e624c7df74b4dcbd622af5cdd875638ac8e336e61cf60302047c435bb50066306402300cae27ed704e50509feaee2067f2059492140d8fa4e32971934437b17b7d1bccb246bb10777615e666f1eb29bfb48f3d02303d9cae0f5015fa31afe9352b1a33cfa5cf457159003e47504281a8ffbeb39c401b51a2cd680af477031c009d9b09bcfb0302047c435bb500683066023100e5de555801a7d209b0878b2417aa15d2348dd2b1efa564eaff911ae6ff451c3548c5692994d681f857a7aa0aa276e9ca023100880e7dcc9f44a907d02d266c8db14441663d7f495965e1e406886a2b19e1cb4e79e1f71f78892e1db2ada8d286ef5fc10302047c435bb500663064023074081aa2585248819b6223630a0d4200723b28889cf8fbf6ad8bd2cf68ce5b60419c4611fd181c02b94e5874f304df74023077c5e8ae9650b665b3a7044f929b455d0b10445dc1f06aa7be3248cb980346139cbf34df555bf62dcfc5138aed90d8ec0302047c435bb500683066023100cf616bb4d7f09cf04e5ac8b67aab0ec9686928517ad679d316dc90d83e787981a0723b472114d9f64c6e08178a50c718023100eaaedcc99813a9b9e7c96b035f9daefd7f847f54735d17d1a4febb2245fc242ac916938562e94b8f8fd63b9a57f795080302047c435bb500673065023068bf8a4949753be19098156327c13833f01176a3cf6df8392405129a804f97533963690ae1dd0bda973d083c676925f4023100911baffdfb81e3ad6624e14b9840ff35748a3081fbcde386c090f7c5ed0d79d9c7e60f2f89a427b5419de71741d32fdc0302047c435bb500663064023032da38906f3a82032db18f93127736d55001f48473cde2c368a9e463299f31054c711307a2a0e49ba9980244f16dc35f023029e1aa6ceaa28ba32818d9ddebb529b9fcfa23509500780f2a4990fc46dd48cc7e7c318aa56ed5673526624b22da68dd0302047c435bb500663064023031c6227509da1823b09235a3698c0e7c6597fdf90161423dcd98cdf3cd5e5ddefc5d962e54c3abe9a5f507269adc584402301b06e6083206b8e7d84f18d9e5e363dedb72ef5ac56dc89aa369b1f98e7700dbf442bb6c325321a40875779ec11c87710302047c435bb500673065023100a01b779268525fe72474a77d5e25849b7ca4c064bd73608a8ee804c56d61c63a5f3a4aafd1c841f5cc985a4aa1c5aabc023036af6b6702de504755ad9bcc2f1fc1119288f073c01b1b1679e421a9b15db7acd13f6ff9de1c3e13b0b46737eb04f8b40302047c435bb500673065023048a4e8fa8fd729ef080a2077abc8386aa734f6d1930d3509d428cd970c8d1c296c77e97b5afce454737f5c7597b260500231009f304347f85a5a6272bcfde39c5ebecbc63aedf886b2c828b5998d5dc701e1b074c293c1810a739ac9d519223346fd3d0302047c435bb500673065023046e67a0cf727214402877f306663b19d1723794b2b268b8610699b1f7574c019cbe8c94693adf5fad242e1580f894669023100b22a39c0eb3e11aa3d9c607eaa728377206c338be14e95f01853766cee7450f256a50194a9445ff36c5874385c42d03a0302047c435bb500673065023100c9061f7e5a2e05fb7ded91c93fd6c9e0e6f3ac9541e1ba0bfd6e89bfe3ed350ee23efa9dcb984b159ad12746cd8d60af02303da99a98102a674f795a56a08e9e7923b2ee9ef626a819b6af3df00576289d9ece103e31f44ea4ec1499e47b558778e60302047c435bb5006730650230286ce0ff4255cb009b2639da1e9ffaf63cb2114e791d6af6f2a04d88ecfa5b0bb9005235980943bcbec77b0367b1c57f023100c32c905a09615596cb7510b035b5c153f1909a8eebc8e0c98bb20e546ebc44cfed5dee8b7078f39d456640e36a780b3f0302047c435bb500683066023100f6e4019561001c9a0f42ddd52ce45f647938a5f43274dfd9a7f05a9080f68c36d403b76ad842671f5ff96d410ee421d1023100fc90cf3c91544a1695da209b92ba8c9d82e0d37ef8699f7892d39b970233963289c17e66628a6ede375150c0e175a6e40302047c435bb500673065023100ae074e7a803a653b242ce084836a415a0ccfc1fb497ae9a13bdbc441d60586d0602a52d565b7cc902f7d3c61c4dd69e402301f2d76282e6634b1e8f523037825da4bcf63496c5bf9ff60caffe9df3bda0622b7e41415fc86cbffbd6d04d57e5571250302047c435bb500663064023031350e7dddc374bf1def41ea264399e90b34b56789c5d212955658782149056950833574b30ec09d5a51028fabb16a3102300bc21692657159dcd1bd1ac4b4b467432e5db5ccdc3bf62c9db48d1284a94917c7a5be1462ffc89dc0c3e9042457328a0302047c435bb50067306502307e21b80e3dfb3c304497315bfa525440a3b62147b2d44c45fc39707536c49f29cbbae3b9fca1845a0aa100984f90a8370231008459bb4a11b2d73b8287793bf6f5f0b394c5433828ae5775ad500f05e24d9cd09418811d6372f523822302c1b6cf62020302047c435bb500683066023100abdc034afe598520510da7dd246077932c46ff18d0627ebdc9a37420e1fef6efcbe6159cd4d14df0b90c5d5a06458349023100fb284e0e6be70d7f2f0dd98c7a53d26359c00ecdc102348860cc183d901b8b3ffbcca7118dc378c635086fd0e886237c0302047c435bb500673065023040c801d4719b407f80230c224e6c0413ed590d7994cd1aac58ea19a0be5d3833a3baf75b9707ce80d390eba9d22bf4d0023100ff1ac6bfd4433e122aea2e15022bf181ab35d15be221e82707fdd56ed27146cd476e94e72a817f8030146d103ac557d20302047c435bb50067306502305527ed66ff152c18cda5ee835c6d17fe857ae715b977db773f6ff2915b73fc2d57675b877d14f0a2c9e6c65979f5992a023100840c02f54e1e0aa0abd1ca9cc9d0ceb7d23b0079847b2683a31e50c059cd37af99e1c165db5d678ef4ae73c44f9c12fa0302047c435bb5006630640230060132dd1ff282e1d2314a1ddacda0805b0236094a8eaf6163c46dbd5d9080360569cdeca975f3721b31f44dab3b1e8f0230743985e8892f635ba1be23f7c962ba47ced47873a2ec69520dfb453f3b9cae71d81c171960864ea3fa602580dd521b660302047c435bb50066306402307ff7b655d5189065f5539fcdcf6da168abd3ac9b7acfaa3fda59fd18c75cdae18a455c605b7ad29b1d9e5811d6befb93023076a4c92ad6da1ed103dce1a947645eca06fb370a234ff83052dd80150acd3de7e6c3b2829d6ada4fab75f9ced5302f720302047c435bb50068306602310094a5ad2debe0b028af4c931dbbf26b67ed3e0f9377ef9aa9ba40f79f695c6e7d29d585a47f1b20368e5352801ddd9f32023100a86fb7eff22b59e43770fab164c08a9fa08f26d9b5ab4d3d6acb5d5e40c0b0592de743a3f8c6043d11d775cbe4cbaabe0302047c435bb500673065023100a1d51513fba50d696ba409f56a054cb4d50aa68d6fef727044aad4d2c3b05cfd18382ed737e925944e07b613c6d44c6302301fcef35b230f4a04bccd07c8bd59924bf5388938d8e8e5794dd7b58c4da0e43dfb9dfeddc36489aeef22ee117d46224a0302047c435bb500683066023100f71a565b8e25db760d1157264e18de6a4f21cb41ea6878b4ea4039cfd52c578c421309d6dc646f94737236b1b6bcd415023100f9799456f4357166d89da856051f99e7549389f494e2de1e6520891281fe6338d3a10b1316d5066eb08582e5045d4ed40302047c435bb500673065023100b079c9af72253453c35482cb89a6db584aa0f368ae609695e52fb5340ef09fe43fa7f6b4ce311375e65be228889619620230244b11e8542f0005eda4a3f65dd76f4279015bcf4654c677ff340bebc3a7cbd2cdb68469ccc6a240ce370e68e032de960302047c435bb50067306502303654a8336bb2e29a0671d095c4e18e2a6fcb2255776f1b206b9fb1d4821f52107f212cd30924d5cf7101e37e6c52b2c6023100d865331d9c99574921124dd97299059617dcc274c17ea53bd0aa73a85911f7648321e8ad892a64b09d5c26861cfc1d540302047c435bb500683066023100cf6d5f3f0bdfffd55eabb8501c6394d9fa41afe79ec05ca0da0adf361b74b3c38d34e26c85dfdfcf98eac6ad8a6928da023100ee648acc81e8642548e0bd30bf7135af9869040617835d3ccf04b50ae781ae5fa817afca11481770b5a328b12a4ec62d0302047c435bb5006630640230298f6d822af54aa3b843fad68b324e746b7ff57df07f5c8ddef9c6a2b11baf19bfb0ac289c94c526a4a8d2e2377cc0c6023033f5b94af043b9c606586ce41dfb5499788cbb32be6fa79db62b3a9b21ee34efaa8c1fc46c22f4a47a6f453eddc100080302047c435bb500673065023020be31c8c3be1ad95c5a8543f7b7ac7d3471c1898bd7fd709d1c85c83ff8d0f8e4d32ff8a25f0acd23d0026bcdea15cd02310086009142e344712ce06fca39badd151fab87ec0896383bf18ac8fb84bd6dd717aba7b7c8832a2b93d4017965e5a6a4580302047c435bb500673065023100b5f25c15d218df21feae716c2e6625cbbf5b5eb2b6321b3b35faf7f3cbd2394969e2fa4030cd3edd27ff0dcef60691770230731090cc4b171cf950cd24e080e6bdb089c6021cda46dfa35a907cd58cb0be4bf4fd5e4a18778837b842d4f834beb3180302047c435bb50068306602310093a4b34da8c9a629dc52ae5bc6f6864595cf701f5150f6a3d54395384f7351a66b9ee1f792af2e465328d869409133be023100bdb4049ceab537392b1b62b59d618b4541ab867e0265ad1f558b6c9159efed9109991fa581026e19585cc808e492db800302047c435bb500673065023100b66960ee7fff392cd41daf08499b01b73571041c5c1e133a871c44ff00e4a232d10445a1f84e98821f7c71cdad8fac2c02303ae3bd1be63bfbf398ed87674a5d4fa4124305b303a1ae54cc09bc4a8e7d68a4ed9b2d615080f8d42638a0eedd7c15b20302047c435bb5006730650230279f4338f8034ecc0ffdb6ebe82363a2be85a140a7252f43046fd61110ae7b803a79b942c9f03090be15d82e6f3aafff0231008be1fcc3209a3050139d7e2a321c2a1e82feee9d363641b2a692f8c471e563e3d20e60d1ba0ee7977afaf70b99ced36a0302047c435bb500673065023057485149f062679405871f1a93e91a608fe0bf3d3724804db001cccccc0020ddab11ecbbf3eaae64b98279812e275232023100b8079b2d734576a3dd6bb12708666f8aceb4bd287c4848629a310f2dbe161c5c41e4c90605a429e5c48e53c71e6e855d0302047c435bb500673065023100ba43d2f027f35e08e970927d416ec5c8db2cf702ef7eab82b752e14d2a66c312757bc050db88b27cbc517018d260165d02305610ecc063f03611c1d7941fc14487c303d8c96552253aefc14dc0b42392c755024423f1cd7cc7d5ed660e9df17477190302047c435bb50066306402301eca75279ed46ccfeb14a651749302f8e0bf5d0009fa3a46a99ff30c602ee714fcc9dc5895542e58435991e66dc0824e02301fefb84f1806f8e3325e544facfbcc58e4e834e8292dc3dbc16a7edb2bd677d2f0cf8b2a8523e52a9d4440ead100e46a0302047c435bb500673065023100a5f9540d32354f3118d53ebf751af24b8b4f089a4ea2cd10133922e27b4653bf40cce0aa9420c5cf0416028986788c6102304b0a785bc8e7997114c90538d2042962710d6dd13988a78d1ee752574eb0ef76c4a6770c3ee33f8d54f97b7cfc6d71620302047c435bb500673065023100d22f4ed80106a594f6aa59cb7b602e9ec79f03ae6aac367d7338855ab8e3c2120d3d70e3f5a34d9d4e203a9e7b2c406b023034e0807ab69234a5d23d2d4cbb4e706efa9e219814852c8aec2b24f5ce26421b0765e9adf3cc59dcb9de900a67fce2840302047c435bb500673065023100ca0d5c2a82ca10084a17f2fb895bdfc3944896783b126d033efbc3481252708dbd2ad15e6c1748c4b3e012c9ccb7fd1a02305710e7f2f19e76ef89335a19d951f0507fb4baa84e6425e44da430d71de3aaae3418f4f9774cb5ba45794a62e147ea740302047c435bb500683066023100dc9623e19064b984ee2fc81c1bbcc2097413d53f685783b31299988ea880e0c05a9128572dbda377af3b0a5b3babcd3c0231008906ff0e760394998bfb6b987cae9357864391689d74608c416d2523fdb7a18e38b289ffc9b185091b4be101d4e106380302047c435bb500683066023100dbc9a9f465c4e5c2919427ad10926bef7915c869e1dacabbd333891055aa04a7fa87bc35bc147fad9e960a1dad184b92023100afb86bf13c9aa6263573852425ee64cd3bf444838169ad6b79febc61ae98673c6f10422af7b5197dd8914d96c9388a2d0302047c435bb50067306502301934bec3448bf61e631026e40bda09919dcaa2ab67d6546602d97ee4d19ea634d68177b410cc5b498cc9b559d968d38802310083c015abfa05858d06347155aad69cd8cd4d5359a9387ac4984090c18fea260963e5e54eb75ffafe405c8edeeb45ec8e0302047c435bb50067306502306a428942596b097f7784b377fc3e7855a0ff80baabf52f6aa2317479b5992acc3cc51fea7dc0f85090667def39d3a22e023100c346792b01b8d078d45324cea8eb0862cfd76efc06f1c65cc0738c8522ec033d3bc5733f9b37e77b58bf5956864b95cf0302047c435bb50066306402303efef0815d84cfb6cb8b796a5075527eee4d095ad236619c0902e906f3e83aeb418ec2dd096a748357db85e8b79e28ed02304bb5419ff8982f269f4a86d19e95384f2c3744ee43848f8bc4a24d08d00dc8d77dfbec0fdba6ffbb2d2a9695e52dbbe70302047c435bb50066306402303cc73b6e83b65811ff81eedc6b0ce3423fbd276b94738bd7ecbe371c1ce5e84318ce0e1d74a37b91051a0870a29775c0023027b1366acd7d22c801dc2e1b559e4f81b3e28672988e0081c314d7e6cb8f613e56adc2a59cfb001f796798b554fcfdc30302047c435bb500673065023053d34098bd9a94dcece98cf51d32ec5839e21c2affb641f5649bf3111c2362e0846d22e901be18d986fdc76e22fae441023100e762ee531b2c4954f75a537b86066931de231ffba02de3af81fd60c28fe7b9d616c3d446c92143e6c9ac60db954ce7610302047c435bb500673065023032391bd450e346eee46b640bcedca1e9ebd19179241b04938525a58395bdc68e523a4b53035b1c11c88f3916c02edd0702310081ee80364003fae563bb42b311e9a04517c99df22f518ba6651592b197da0c52bf23443707876aa8b50dbd4ec138ec7b0302047c435bb500663064023002e8dba845694b95f219d608a36e3c80bf5cb36fba91202726dc5c89c79863b5fec3da681ca3014a137dd45acbea9575023053d2cadf462b4b514deefedd7e3748114acabed9fb2d4eb22b512a42f9f7ee7ea1109f22784cb9f8fea8072efafcc2b40302047c435bb500673065023100a40982bd673a7fdba3b7ad44ea24728746d1489364c38a99b6b4f7b3bd4014ef5a6c34faec5354438179b87325223774023046a02af0333b63ca7ea0157c08de841719e0badd452d3b03b8ed036fc3ca87cbd6e86a16526304c08ad28b4ff2f3b94e0302047c435bb500683066023100b461d9e953b19ec3ed02a3bed12167bbe3cc019f4971aa511dcf54f7f79b67a80a9de6ad0f913be15c7a9f23e8ebbf66023100e9fe63746b77f8acfe4f93ddcc45bf88355d2b4a181caa18f8af3f01d8c9a2896175380fe5037a355d73e00c686c24c80302047c435bb500663064023048f6a502537fb43c1636ce7e09cc02c673fee98f35a56ac7d21a8e982006d2adf8a6988464e9d4839e4d5312e3d4517302303b8f14044f41a962b90a3267872f787040dd1eb298c0266ddc1b4b4effa3e44e09aabf6a4c1d6fbd88b2de0f1a72f6600302047c435bb500663064023019b9c00a4be89a2e4f56d2b857993e5820cbe9a78d7556d4be68907d254cb62d9ef489fc7b5e1af6c981c989329dc6dd02305a7c88c25cd80720a4037217007d02cc880876f6ee6707c49bb54dbfee25ae6656e13334d323efe4a506c153853b57f50302047c435bb500683066023100f205e2b338a7e376f2372f90def57d15ef0d17f58c5225cbc3827eec4277919dd04aef6c28a561f46fe098b83b5193b3023100ed897660982aeb43117609902e1778237b73f506b3afc0cbf86d8588b182e2f46d30bb3cb076fc8e3cbb282c9e1b7bf50302047c435bb500673065023100a5ee4e51cc9fc850ae561e029376f7636bd8b37a056f3c495eaab0634c500eb1faa5cb0c4bdb6227dc7b2490edb98ff50230174097dbe5d51624787d9dda6e2e5264569a8dd923d5e5b61ed12d0cf094fafd9484ea2d803caa78a9758e0aa5c1e8470302047c435bb50067306502310095b88617d17e2aa278edcee94c4a31891915dc5499725af2ffb46bb3c99b212877f3bf6420314dc75a0a29c23f230bb5023054e67c9f0c30db7f4ebf68356772448ed36ec17dc3fef59760a79d98f845d41fa62e8a6b29dd337b0808aedc106d3fcb0302047c435bb50067306502301cb46b077897b6e0656a981cdb300701de46cc676da92961d9c26d66cf4b959943ce0ff94672935c3584e54caf1bbc8e0231008e0b0004719746f654d41713ed2df9511d6dba8f6fac0216567aa7e6aa425dad666e5ced39e96101a67f3f71f1167b3a0302047c435bb500683066023100c930c3466800ec0e221059c4a170282b479e73754a7654c76287636067bb8d03dbc807ea7d17d2153e37e528570af388023100fc901938946eea8324399964eee4466718d20a9068383bfae6ba4435cef2e24fafd1774ab1f9ba0e261ae7627370098b0302047c435bb50066306402304c2751144e31a1cc6ebf0b30d8a26713eeab8f71147104df46e4a3afdbd0e09577dfc568b8fdde9d16e1b5f06a3176f5023052cb0d129712672878f949a9a7702d7f0d57c52523bb182f4d860ca0cdae3e31eb486fc109b123ebbe9862aed29239340302047c435bb500673065023021bbc2891df9fe76792e260c5ec435cac73dddb9b10ddc3a6f7bb32caf0d58bb4b9ed01b702d5c13994325da324913cb02310097d981ffb8575105e2028a2eb119a9f4cdb3a9938fdb7b207a5777a781eb6fdada3ea45206e18f2a48f0f5cd3889e37f0302047c435bb5006730650230746f9107c03310aff829ba5667a5ef3ccb0175d9be2a259325d50ae311264558365826407e97770416fa3a2d73ed9df40231009a85a74f90c594ac085834d0f4cfd2efb81a37f595fbde44e3ff7a77ed872d010a6eb155d370fb03a633c4a8b4332f740302047c435bb5006730650230747f11aed0b849090be7f0911ab4bddc1ded850bb8276cf8e5effdb022cdc5ad53b7658bdccc15435461fce80a875a85023100df54e04cdb3bb73419a274c67f4868353c94a782fee5e2897d916059acdfc404b32c6ae3c3a230aeced6eb3bcda2c90e0302047c435bb50066306402307c090359f9082e5dfbd2ed7a336eeebba9543a1803bf44c15ae5c44eed338f4bc9d8867a042eba894315d9b21b5543cf02303974ea49ead782fe8b85e84b32c7c33e0ee62cb85850f3fe67bdff1510eef46b5bc001db90b6bbe10033ec26c0cbe8890302047c435bb500673065023079584bb4a74909ab6967b9be51b0e0978139c0a2e64c0550b93c8a667f9ca985ae67e56b5be247dbbeb7a20119ecb8f50231009523f5bd967f6bdfc341c85636858ed311c49d9181bf3889a58db908b0c03423a4aadfd3a990a9b9c4ff766bc05e1d480302047c435bb500683066023100e662c58e944559b1d1c65d3347d99d7995296e8cc3a6158e20f27473a649a0c5f06157f2bc88e7618e2a494adc0a7204023100eb3b0c18488da68280c7d02c762ce14ddf27557897a9b136ea929897f6de99b2adcced7c47f803e06c49115b05d6e3cd0302047c435bb50068306602310083c8732d09c6445716cc8feef6f12e4c635784605624d35c50aa6a6541386f9b47309fa7ff57fa20b9afa9643d171cd0023100dbab1c81510fd001ea95ac372de57b99f4f458101a8771abe929e16ea2a15c3c6161455576b316ffbb4232dff5b3ee150302047c435bb500683066023100c428f39fce4326bc427f0c314de92075174611ba2ffbd969162a9a931afd91034d07535bd89d7de4f57c15306c838dce02310088f60688ec6961208e64ea0367afb7df13de240315381d71be9b8c7854c05fd1815b3c46951f3aab4260c5ed1a1cd7470302047c435bb5006730650230402286c9519646a594acde6f097005524cc617c28b1de8942a00d7e535b637f63b9b8830b6f5d75f0f16f7d1cff84baa023100e5c6e91a45e88ebf7bf64d0c83317c2ac975896ecc29f1f4e2f3b5f36e43d86aad6ea7329abd8ed2920b365ca992717d0302047c435bb500683066023100e0fbef758ba36ade2fc1616b2088556f6bfc93e70ff6fe6cdcadfafd6ca0c88867aff0b42ebb2e86b1cf5171c6bcda46023100914717316566524223564f07bc12e4765e667e1be5821ffd25769d6ee747238b58f072c2ed5a23675abe5e892818020d0302047c435bb500683066023100ad551cf5977e0eb240eddd45338d582bc09f37afad4b746256b2bf2ca498afad959cd6d7d605913a027cbf23753c9a0b023100a8ec56a91700ff9b29c8a3e1d1fbb1e862119fa708f8035d1187ee8ba8c0195d9a0cae9efd0837a988af4109b24777cc0302047c435bb50066306402306a46be843c3ff462e17bc1ed6b9e7923f7873a9cea801f69dcb065bc1f49f44aea27cd908464bb59a93bdba3950d45db02306cfcad62bb81d4a9abff6c15e56cc3d93a3d9286b20b783de0e17f2f3353c6abded01d7c469f01a3572f9d4189d28efe0302047c435bb500683066023100cdd4d9e6e1c17c8c90f77d44805afa51538af7387413838f21fa0433a36dfba485185007ff67692370c534ab283eb537023100a6f5a23d0625f9d517896413165ff97ce7ef7781fac345b7c57e04d0f9410e8187c4eb51f5ad40fb8a32d574ffb3dca90302047c435bb500663064023010a4b07d47c82bdaa7624ae4a3855b6f8b1fa3b52531f9c6c1588010d534e2aed773ef2dbe662aa7ec92078a46c0ce680230370ebb8ed7843f470ad963956007ca626f2b2c0aff838e244b2081d594b02a9063d438c6ce7b6049280cdb177cc7df980302047c435bb50066306402305cbce8e4a7a654a5d5b15f7db72246d9a7286d102218be93fc4a9930ea5ebba93f681538d194370eb0e76e8b44fde0b4023045fa376d162abcc3aa3b3c591604d29acf95cd5a545ee44314194d210490d11816ce241667134109d3b563de19f1d9590302047c435bb500663064023068be670f7f05a05aecd069780790fa96d7ca1c0c8d3aca31395f5f918a28e31f116746cfbaf119205335717e1742aa0702300d3ece864dd1185f694102b1699e20169df84573b231d2a652d5ca709a0c7304a244888dd2ad47eb41a62650ec61d4de0302047c435bb500683066023100bd4ffb9427413c8aad57f4a7de4f28b44d60813780be66c192f872287dfdc82774df605674f087da991b62969bba0d3b023100ade51350e042aec93f51f7d447003163f165d25b94c86be7c1747e65b2422685538a250aa0f98d1fe1a39c11aeca6a5d0302047c435bb500663064023068f37ae749b12b741a8cf89dfb2c3f49ecfa081a12d5e50ac3a308080f29fbe05988fcdae3251d7f2ea67be82873b8fb02304e7284f4d3c3c1226ca048a021704382dee11ae343ac43e399a1617d50179b71b57418cb0751a19642c7f70f0cc570fe0302047c435bb500673065023100d5234ffcbc725445c5fd2f927962ba9086d7269628ed3be80ef1443b66b5b5c5e2ae8cd52c6f63aac3e19d943fea852a02303e05cde0fe47923f4b20706cddfb0499d18a560a1a6439a8fd906f796d8939167c4468140914ad6fc1a94cbd69099a4c0302047c435bb500673065023020ec04f3276cfe244cd8aac085c0aa80d7e57a2e7427b95d4507a7895b9d32933398bfd52839dd1b704379853daf81f5023100efdd67316029f79764c3fde67a7cf424fcf0ae632bc0166b5c59e94280315311ae995d637e57792abfd0515084eacfe00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230673ce078af79658c724200af9b6583b32758dd05b14e6cc99f395db537fa53b0e6874ee9a30a30828e8dbe587dc32da10231009f5deba813a5915ec9ec6016b642cde633bd431a10984ac95ab18e02ce398c5c688f53dacf758a7334a65c6932e2c7db0302047c435bb50066306402302aad9627effd96e746e80b9047ac301b886a919b73d1ea3a3a41301fe4dfc96e4caef7d4a09d33ce16dc48dc3730d4a80230295a31367c84d9dab3332f68d7337bc53edaedde0d76a4c778963bd83df17500a886a642f9980eecab79b5185a20a38d0302047c435bb500673065023100ac8cdfe514b25e858ac4a8a6059cad1129d7cc0727d30ee9c9213a7a7bbce6e8c402356cc06c5c861561ab2142c95a6d023007034ce196560e58b82e8c473571eb7cc5d375cfbb42b0544e808bddfd7cba2e32106c9b966fb5266243979d9abfb1460302047c435bb5006830660231008a4430dee2cd313021451db8733b19f163d269762047d89149019e503cff2decaa6e723e60c756e4535b23c260c97105023100cde3572ccf44c80315be057a1d43d09c9bfee611440c8e49f64ce4362633addde61571e13d4b7ed0820642893931cce60302047c435bb500683066023100f597954df2337685425758d1bc32b36f895a4253c4c1c39d70227559c479a6436b9060d36c0caac79aad271231af14220231008643067f52c095688e8c3e5b5a2cd15bf939019ebd634a54cd2ac01d6afa88235fb757160fe24576c9977efa3055d86f0302047c435bb5006830660231009e35a814d8de1859c2c9da30cd98588e758b032f1f86d0906ae4718f54b64f42dc9dba400615a8b506f1f47811800a38023100aba2ddbe4c77ad553904d2cec57a8e8770049dff41fb5ab7c8da6b7e77478947160549c090ef31f30a9f28d64a34e86c0302047c435bb500673065023055a1ff1ae94c4329fafee6f59c33a06168b81bbc624df3f7c7f7e1a69489352c3d1b9b92cb36d145acec13328c308045023100acf4c308683e798aaa74b012388eacd337e7e497f665d30f030bb3c171f53bdd8f4cbb59c1932e6667b0904c58faf8330302047c435bb50067306502304ea624ef104b7d7960a3e77c63b4a9a732579ba5450e2c824009c9d935931b6fe41abef9935cc26db1f87237a09d9bd5023100cad659e8e744b9f9c144c533e50485c2a815ee16d73844a218be82ac4d435b2c1d35a2aa4d1aed2d02293659407548a50302047c435bb50066306402303a8fefa73aa58adc7c5de2d0d4809f5d64ce6d3afb8079c7af85353ed8a8c60329a938a72746a29a370da38f01cd20b402303eaceb23a17f63205c955a5bbd2f05e4ce37f5ccb38678837005d8bfaa114ab723c93d968a23f3dbd1cfc73385a50a880302047c435bb500683066023100a85c1bf2147964e3bdecbc302e07f51e2f5d6004f24bb4122997c8c4b1c483679f72c57c7f999494d9b479adaeb31c04023100c8bb2a499f43fcba183ec243dea7478020b6cafb6b7a70251ee36b45979e8bb4d04f2a8d47b7c5f0370bebb0087c4fa90302047c435bb50066306402307730d57bb340824e5b4cc621095724dd03cf21185aed39332c57383ff5b0e4088920ee92544da1e521c717663308a86b0230028004aa5671ea314bc9dcc9fcdf31450030e89cb77e82452520dae0b0697b15fff582edf74648415e51ab15b9e9f8f10302047c435bb50067306502306167e2d95991a2e24da6724ec2dbce863b5f321c2d8cb8f2d5bfc36cd74c9ebc70092e2e908b0fec78f895beef47a2fb023100ff3c3862292b43a5fda5263abaf92a3182fac2dd40a04fdf5ebf18fb70d7ad98ac49638e793be20b504cf7b99c9c71960302047c435bb500673065023100a977c8db634c39874af15db588d9c440518ecd47c8fb681e229295c45473eeffc4f6f5f8e35dfe5f8942351466c38c6502307ea616eb931ba467c5ee0a107f0a3e77566761d269fe0ea1a2f6154e211d52b81077ee9780296f5e6f7ffdc440df97d50302047c435bb500673065023030c1dde57288f693c104bde0cc6f3b3a8933c633c455fa301bd58ebddf2aaef2b8978de21eee5da5b93aa3323e054232023100d2cc97f0e5211ad12a319f8664b29f0a121f7cde04597f858b0758d0ac6397593c0cac57e3c8ccae6d17942bbddccbcc0302047c435bb500683066023100e9c2feed3963e1c10d7f554600b82706ec972fa7ce6ea1e1517c607193f72bfeef0630b3907b631f79a01dcebfa1f9d5023100bd65e9f224f60539267c9324fbe7f6794b0b6e1e7da27f9a66f16d58dd73b2095f995f0769de002499703209ce7571f80302047c435bb5006730650230039bf254641c52e9324b54cb3400d590b9e5afc0d6a3a5cf1c06cc585d4181e36ce2f1aaf81bc18885bbda99cd43b992023100dd5b57150afedf46d40f889920b7841d2111d4271e786110dca0940d53cb6101d4dbfb87c42b3399c4d5a39af07c3c4d0302047c435bb500673065023100aa8256c8c4d1357c2cf475faa4e75f5c5b7836caebb3bd3fc096de8270a55bc6bd1ac4a00e755284dbea218f9734062202300e17cce0b62d5864b073d2676cfdae41fed738e2d6817a3fef170c95a573facf3148ce739571f33c290debf5f0e460420302047c435bb50067306502306ed6f737af9800784c55e648b23880c3b2c710639852ee2737b3eb882e5df8a9096cbc80b597e185dbbbd9cf215173fa023100d28e1612991f8b0f51fed70a1fe3a83797651c55cb2b15a5e3a47afe307e109fcd1a62fb1068b765875af85b4bf71a490302047c435bb500673065023100c774c7ee43c2077dd1968c743c2957a64efa92076135bbec2254de2b8f25a7d596e2536f12aab4857bd9337e99bd01a402305ed4c21601a6e045f78304675c3dc52b2f2e2882313d4ee2b78752df891e727203afda5bb4c39ea7b133a70a7e011e100302047c435bb50067306502302a71cb75188c7da3be909302eb2f54fb72da6aa2b7b3cb433aa8766bff686e122e6bb0f894dfc373ea64f1e98ac1eacc0231009d2cee0281650a851d4e18821b92c686692b289ba09c174caa8ad44d5166ea639eddae1c7eaaeea02f65a67255e6ec2a0302047c435bb50066306402307f9a9ad886315d070d0dd964d20cab3cc31330cac984f98c45c7dd3b9ce71d17806f7fa73a2cc118b875d14235a3bfff023039ef7d990c4d673f50876e3963ef99e7ead590d5f0213e386c06b0a53c8e3aa94f323eef5049bc3e28ded2598ea699540302047c435bb500683066023100f10b90b8461f83b9712ae6833197ac125cfb5b91cf66429c3f17414f68ba5e435cd7e0eebf0be56aeab7c47735a5398e023100f61bc72cf51ed45ba37d2f30890ec37b6c3d5c10ff406b65fa8c3e086a1ad421d87586537414e8c55aa3534a781874c10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100dbacc9b8cfdd1874d17a5ad30fbb87f39727b703bf79dab81f071f4c7ced0a8571cce5cff1d5d61749a7690485efba060231008c00daab51bc55d0670d69dcd34309091704c2a6bcc49953b643048d450c3ad3c1a284977a8a8757c9ad49d556b0e9670302047c435bb500683066023100f456a19e749775354a97a5b1834330fce17a5c7a78a4b30eb288d2d9e4fc8ae7f9aaff40078c62deebe5e3849de88186023100f66e4a4ab5defb60e0a14d20c9404acbb99855b8acdae6f83592e05b75d9f2b8222ca612743230b077bac531f1b026e40302047c435bb500673065023100a5b4d3e20d6d2571da0d68c7cdacb588f75ce0ecf6378b7855e45cee0dfb2c5349045657e903a60dd0397d8c01ee688c0230067597357fefedd8323f53801edbb2ca8fcdb343a5fef12f745f29696c642583b32b824966f9606cb5ee0b1ff17b83da0302047c435bb500673065023100a2e3d872049381c5302d86de41ad0745718b0cf18e67a3c009361b6da0772ba786cb5cfaef92b2b9435df45e3892e48b02304bf2363c170906f898ed3417cebd81d9fe8fa148e760608cb8c6b8adb3ec406a0a2399f7545b57257a9391a1b27d54c50302047c435bb5006730650230333f099c82e8a68b6602d1e24d5dfefc677f88a2815a1f18ad5672c39a76876776a978c5baa5adfdee0e6ec95b349fa3023100a40243db12a83f46cc9df2a739e908abca364fc7e1561e174680bab8f9a4e3072bd141daba7183436b5ffe628cb24d480302047c435bb50066306402305a38ae8832877a38d0d2849a26f3f42dc276705049da9834444451a9fe6b7323a56f47b182daef2263e98f3cfe1bcdf1023040d6a5056893f4f1b1a8d2556ac7276f5f96fa48aa5926ffeb38a96f60fc75cf2fdd11eb700b83bba0a99488c7da4c280302047c435bb500673065023100b56b0e1df256652aab7b957e5f6312b46fe2bb7b08f0432febe001abe0a8730c872e15d10e1453c6f1ea6ed0bcff89570230203052e50dbfd27655f56c3fed533b4f3ffa65fc2f32f43bc14e96730f30ff60b1d28b663b2afb1cfff3852d4b678d4e0302047c435bb50067306502310085d2b10d3549abeca0d6ce72e06debcb369fd30fa4f7c2d1900f09a9ec2dcaff35c493823073674cb31ccfd5e7b6f2bb023046e22807d8b9a225047ce940c0114aca81bde2cc592edfea032c15b7b20dcf1003f3530ae5e3df1e1cdfb12bf17cba750302047c435bb50067306502302ec420eaf2c969af10c4b89745434ce09ba664c9a38732e4f8d3f0cc091128ddf2360f5f5542fb0c89274c0ccf5a5e2b023100b0f99cee1ed249bc724f6d4e89f7c6647bca4bf7afac6135e92b32ccc17450b157c86a6e1e8e7ac1a6ca916b133163820302047c435bb50067306502306363d5f3c30f67e328ac29fe33f58649f08c00f2cc6b146c18d1d6810f59d3e98a0cbf7fca9fcb6269c2a97bd2175c5a0231009051a2cdfebd55d57e41eaa29a6ec9b0079e2cf4e96d144913e1999679d63019bc6cc133eabf431b756ee157db575b270302047c435bb500673065023100fbe304266a34f558fb5a87f13a836b59bcf69cd210dd2beeda0047e498f2368f234d3713b93b2be15c518c3baacfa3bf0230291e35ebaf3621f6ee0bb0a3b8d81e61e6a2b8abeab02a72fbcbee4caefc1ed70d7772e207edd6fae02576541bf971540302047c435bb500663064023054154012159f2444a1fe9d1ee1a0dd0050faf5f5dcb4ff20c77f921104f2cd4ff0bc6dca119545597a393988489c950d023073018b2272ac41e133bc90aad2063a21bea19781e76cefa08b390fcb84e31cdf4cd23b9322cc2516b7bcab4ae31086aa0302047c435bb500673065023100e344815b64bf944e5c6fa01a05dbe3a46366024c0d06b11155d3bb5df463a6001466403d4c39e87f6747a7eb6a177881023020cb4d6290b48b944665a911a9105b0151e8e736899a95777c7bdf35d161f54d427f52b8d853f545f6312511d386c4990302047c435bb500683066023100cb3dea83084c0f77848c783a45cb3e356353d2d7067d24217178bc487b6e4eb64b561eb2df89eac18c09bda017ebabf5023100ea1eb78001e21af18603047c14cc1601a90afe9d96ebe71f1b49e0b82de18fa34853b2774e5fa8cea70d9fb88f4a21550302047c435bb500683066023100bd45a903be1d54f779252beccf1168202fe104abe4a712c993109668d4131a59e2ddfc5e2bbfa2d10d14e49a6507a71b0231009f5d13eeb4404cb6eb912dd46ceb2160233470120b258e49e87ffc8e52596b558657549799bf07aca8381c4f31282df30302047c435bb500673065023005bb0259e6f02a2f1b4226bcfa8df0ac2f5720a7f2f966c8ceb4ad0d8b15a8d4270eed5ff413c2943e5670e84316a913023100e9c9a4869cffd11a3358eb711eea55038ce7597a1f51a878409207b9c9cd30fd3ffec24f9c5875ce8bbfba9e7f648dc90302047c435bb500673065023100dd8569f2d0e1d766f27456dccec29540181803d2555e0dfd0babb9c44b47fb53207f16a81d076e7966fc53e04e3fb2b102300fa561af21233d20740992a1e12f5bcd73d160e27d0b2b4bd6f41ec803e699d2e52b6e79c54d3a06d8b949afa2f6d5330302047c435bb5006730650230574f63cf67728e218876972aea00cde8c48228deacd65f566b48f4dc3dbf023c5d2667f5af56a09249271039d5877441023100b5534f40c08113ba1c0bfe9cdca7d26949e5d2fe897f2f80f818e4e7a54dfb4eb1cc7afdb0342e6c5c02399f301a4a790302047c435bb50066306402305735ffbe9e4579b80d1d27f851cd71ba36d5f0bdb4c7f12e325a9ac5daf3b27e5c0043b9a8570c3fb9c5893c74afcf03023038cdc07c6fd031ade83cfb4843757633523fbc72d949a782afe140c95dfca2d41aea932d028338eb70d23260ffea0aea0302047c435bb50066306402300e93c63bac82f2c8fc45d8aaedf339fd15c0ec0270788e86ed4bf2ed6c4a4c0f913b53737ad6bdd3fbfbb97dd4ad9670023030cdc7b2ec4f9fd6bfb7f8f3ce54b9df30a7c537ece1a17c096114ac26d95b7aeffbfad982ecb7def1ac55c4ff3a80b40302047c435bb500683066023100dfb2f1627c092f020351b59a14467f9062cb55355ff4ade1ffb4e2b321d5d3b94c4da1e52fcb7fb9d6ab9f3d09afb3e202310092b711bb576073237954cda1e1bf274b2030d3692f44fcf42191f02d49c31c01c3302535f240badaf5b5263a3ffb95890302047c435bb50066306402307bf0a951d042993b67587788364d5c3eaaf55f93430cd6383ec4293d06453d56d47c3e00f785f50c00179b92d6ed4476023045ca4769660e76e7c9e98099463130507fdcf9782429bb2ccc349bcee0e02d35edc31f5aa1a2efb2f3e08f6de2a031470302047c435bb500673065023044aeff6889c30250967875815e0986944233032907964f219b3a5bbf8bc77c55f7c1874787c479a4864f4553d41b61dc023100d23cc19ae9cc8deb67fecfec0733e306d73c9c1cee90faed480ce83b8557bd5ff8cb6203ad180bb1cf0416864f2c15aa0302047c435bb50066306402303d30ff697b23350c0c93521cd293ddff1c688efe1139bd158b7c52910bb0b0431e24d0ef5845067dc4fb49018c8eae3402304f3b235efc8d3098b2d8f6103b8e10737359a9c059c0c9b19850c61b3188fb1ffa00def2ed17a20992783f2ab68809720302047c435bb5006630640230731ac140b4f844c7ab455547ca5a1be5b0bf3ad00f751bbd550ae93d772224e1e37a28b85f2023e7b65132573d86a1720230321fd4188ccd6f6e2250a0292d6cf80f68ad8d559d4fa6546fd53a940ff3bb0ff039eec465c24d06d1eb542072bca7fa0302047c435bb500683066023100cd3c768499541ef845f7ace305cd76104c21134352c43e886f055a47f417aed9f01e5f97ad468675384d788019fabe3d023100933e4dc6d389e72ee406d4bb153548dd00d7217a103789406c62e6661c83f295b29e13d823fae705213ca0103634b3870302047c435bb500673065023004acb2c5b0e2a83c6afe71dfbd94fa0353b76f2a411573052128c7d81ed64b08e0deb542b89afd9752c2c3a77d39888f023100be5dda9ad8e7ed4d717484c31e031dd0546df231eb9e069cd307afb03b31df2a1eca45b38c876df6228ac724a1381f890302047c435bb500673065023100ab8481f0af820d89d530f67e332abe7b1109847fb6fc733fed0feb3905d20fb4daa373edea4781ee0601f924b428e8a602303cf43dbb32081237eee93ebf81e621080019132478d7c98f3aac6cbfc37367e70ccdc4e069ff86a01feecd950fdd27ab0302047c435bb500673065023100b4599168540142107f88b97e4d8c3fac86c2d704e6f6455d81c1c840cad979dd707581934855bb785a1168b079224c3d02302a33669a7cf099f9b02d787000684be25323adff967ec65bc0ac22a477183bd8df8ea55419c7eb6314913e42b8170e0f0302047c435bb500683066023100d09d9d73038aa8ba9404dc36e6ece1896c88f6da5f6255e3999e37fbed1ee141851bf936c9dba0c56a55fbca4c74320f023100ed8b320839d51a6a743cb9ee3f612cc8d2ee8dc928600a1649bb86c90b5349d1d8b548375b4c7271b07ca912cf0c25880302047c435bb500673065023100e640c9f464fa603960b2c97749caf4fb104865a37eb0c0fe3a34b319f7527320b316fe3f5e69bfa39858321f60f5055f02304d14178409cd7faa7db4da911abc21a6c527f5686a2b745ca3e63305af2941a80788edb45bbf45de1c980c948e94ad020302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009b8da354baddbdf66e5cf63842a9b6eacd39123991cad4a4bf0e461ae76606c666581ee99f7b242346d3de90cc25d1f7023100afa4a41bc1c7a380967062816f20a35f221aaf797e8e2955cd051b749e22852443bd83036e84cd921e899204d464b3010302047c435bb50067306502300c8b86c32c09c8ce02b41f71372c4be52cfa6f38be31fb20bff88296d2bd826e6514888bca81bc5b4a85f6855c627d4b02310085b75835d75f9dbc8d05bd86c1cadfee9c8413cc2c21e4e99e2331239bc18a2070cc1c6500c078d970ea37fdc4c12fa70302047c435bb500683066023100f823381a5b32829d89f7b1e7911c4da6c2348e95ad9c863bf387da410adcb0c3dcadde67ff24b83d7bad5d8d4c770b3f0231008507609f132f2f0b3e54c31c041b50b0207cbd5ce97fb296eb9e73a44c09fe78ff3ec659dcd350203ea3f89eabed27670302047c435bb5006830660231009cc7e1559b8aa3ca6f510d62f1a7b6ec8946ad1ab307515ea7da591cb9a866ef26dc702f1522faee5e7936a8ed003d09023100d681af5143cf27ef3c74efeb9132359981c02d8370378a3fb365e591c84bb83dfbce8ce4934558e29244bad97002f8ac0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310093e6852af6b4c5903d394ab9bc33a2b2f00dd53f50454c3f4a19f8d91fcded061a8675ec5e40c604e0d4eba1400d8e0902304b9a3cbe6c3b2595e3366f1ff90bc56d7363ea266d8835466d8c3ad0af53960f5ec5781487bc98f266b70c3403ea8a080302047c435bb50067306502307e4860ee5aa208e06d4ab9d3ef99d347aae1d457401f32a2b853b8fb8254ae2ae01b8aa005658216b7bb8dc80a6a7202023100e127c5173ba21b4f5cc69cf1781096acc9762aab6c0d6921fe08045d2c5eb64079671365a310613718fff745aab09f5f0302047c435bb50066306402303071381afe1e73747e0b6428a45dbc5dfacc47d0455805292f1af8738010c55f28b2c7e6fe253af4236037bb470074250230709c29a17d01f329548635f5d91ca066a0c8bc3a65599b937e9cdeb6db3718e78051d58914338be21c2087981ab074570302047c435bb500673065023100ce2db81709623be99417d03274a3c4794b66665d3284bc4404960dce6f3d065ca526a2069ab7b6574b476403e6989cb002306ce0dadbea22e27ba5705bd1d3a692a0141dcffe7af90602d9d0f8d50480856306adffdea175bdd45845be21189c3f230302047c435bb500683066023100df4f1459dfef45ec080d565110de9c83adc2dc41a9912f0a7f10a36ded139b3d18abfdafff82ef1febde90d36260e0d2023100c94afa122e1e50bbb4b9c31437d74d7d716b89f3f93102b0170762fd4dbf9bb7102a6198f0d1938d023d72c4cbe4cdce0302047c435bb500673065023100ddea5dc9f04ab46733ce43735cf342f8c03b24d78b2bcf530a05df49cca640ff93136a98c6ab3da97c4b88afd84ddee602307cb86bbb0dc15de0e294500fbfdbd8b3560ec09d8e3f08488ab59b7d1ffeeefde422981b931fb3b4cb207b15b333d4110302047c435bb50066306402303007523469a33bb1c0430ca21b6161ed26394f89c250eff7cace191d350e866cbb2dc828cd1792340564742983be133e02304fc6e2fa876442e3b6287d8814f8c91b3265073192637c08557cf66e0388382ce3fa639aae04bdb9990d5ab0a5e4439d0302047c435bb50066306402306aa6df0442e7828760795ce1b80d7c4444338bb4d48f8f4d5d9a3758cd09d0b1199191507eb0f41d95f7a3a8afa14c84023071a2e3c72fea7934bb9c22d5e60a44f0d6f8e4d5a6929b428bd21067e2297c8e441e6e180158cfb153bde7993b9cd02e0302047c435bb5006830660231008f5703c42af0e68bce5a724a837099a374d0a42bdd59ce6e027464238a1faacab745307e86cb1fe0c488988472cde9c7023100f03ef4c9101c774e0495d7b155291eac089bd20d7239a9f7a69cd35e8da0fddcc307a7fecdf9c7408b6deb1208a4b2790302047c435bb50067306502307ad9f820893ecac4c4d98785c67d8fe8e65b6806fd8f1535025e34f5c5daddbbbc8f51384974bd53671fd6878b2df2940231008a4d3dd440d4d54143a9a6888a8644b45102b2f87a150139af4fd5aa56b0894a9c62df1e3919aadd7446acba22114bf60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307c9f8088d371a15c5a6f6e25978bdf5a063e952ce3d33f7a2d657412cfda6f32d6642aacb98ee33d3f7d9c0261f4228002301bd454b87374d9de69d0597c7e5cfe1324982dc9a17a5b36bd14db675401254757243dc0054fa1fb637712c9a7fb62f70302047c435bb500673065023100adc685b9a8aea8e7b9ff8059e39a7eade1c939a03d4f58f136f88754bce9796644ba071d4bc3981115fc817a939fe001023032da1986d9a5cb0709ab89e7c8b7fb22a26423b79692cf82d3ad449625c69e74e7c37a067254bf6831bbe94ffaedfd180302047c435bb500673065023003cb00f479d20816c7e54211aad296a355103a0b164f8f8f94dd401e1e16274f2cbf3d80037559eae0040a0390b9a0db023100a9c8196ef35448b543b713e418755188670258c8790e298de660a88e9299cca887e7465272924637afed1514a8e4a3fa0302047c435bb500673065023100970be73f436b72721c5857d8c7e73d6fbd765b4faf158f3bdd27ed4e13afd1e6a9b6d0f163ab5c6b918f9528996e4a520230111d913f5327a1212c06be3f46534e2608b751349de01a17aa70b805e238f6a31a2be5840ef1c0d18ec704ee517f7af50302047c435bb500673065023060bd3b8a11874c1b1657aeeb10c8f215b10e507d961dcae32220b250e15884dffe4ae62fe6df1e49ff783706be811a48023100f1ee127e846bc47c1e417323abcdb185b8071041447396115050664b7a97726fa3352d8a86953a57e6f042ae0e08ba650302047c435bb500673065023058cda287d870ddeb2ab104fff885698e248aae5cb7771c657f1e30870fb3b61e89e665d7b81242875daf739c0d68d000023100c5593486ac73592ec189a9feffcf32dcabaf44358dda057ab78659a8a9c08d6d6ddb44fcd31077633dc571bf96234dec0302047c435bb500663064023057b4e23daee5f319f73b2044a716649facac965ee11bc8f09aedd4fdf3d2f89d47c752bee8759a8d4700f043f07a02ec02304edf25b5c779978420aec3dfaee441c1e4dd1b3348bff3d5b826daded6386f13c6f674463e9dc0f22b55466504cca1680302047c435bb5006830660231008d88cf973bc9447055fdea7888423013d1396d1a7fb67296a1a8d95852ed7b524215a85f900c3e8f8924e9a30d7b006c023100f81f783a4439a4d2bb28066a78c14e97307aadb9a8faafdf5ca10320d52c6ac4c91bae39abad5e28884620ef25ab361c0302047c435bb5006830660231008c4051a6142674076680dd05da645e18915d68c668d97042551384c5e0493d22291a76b89c7361dfa8fdf7118723ec5e023100a55f57bc9cd78f556a3a7f7e1f192c366ef7cb8dd7b262844e3cc558dc042522d862d1cfe728339a9b2c7cb225499a870302047c435bb500673065023100b74510c98404c921b0aa339f073bb0501b7f87124ae9c2d93545c5ea1922904d31f351fb7369414953ea146af01a2f1d023019a67c0cf75cb623bdc847dd1dfd5472e82d2911596eabd459d053a6fcaf966701c98a82c8b60261ebe786de5d0dacfe0302047c435bb5006630640230644f11773f219ef9122cd6741d3cdf6cbac62a48e6f851125a4dc531c2b6689fe1fb2981a806e60ad39fe1bf594070fc02300c14337a0990438cb6788710db2779d73bc2bb5bba0ac4ac59559de4c0ee60118fa6c86103126aab0906c494107a78120302047c435bb5006630640230594bd2fc8d241c5c8759e3aef320a500f3eb7ad607e3c3ad014a76285c08e9779d29bd4043c161294801592549b226450230148236db974fc6ac62b0974289e6ae47b81a121a9afa0a12893563e0a21da8fa3b692bc25a7328de0e28c84e904bb1010302047c435bb50066306402306686382d24ae9303e8e4c7238a4d4a4be358431ac61a8b879b14acd5cfff35c4a42c73833b0a4ae87297fc5d3b0e807102307900a8966ecc2f4f4a17ae52be2dee557289de1a42fd2bbe19cb363ce10d4367ede253d910807a64f94d477c8725a7180302047c435bb50067306502310098183b565f01a04bd629a17cf75552a5be903be06498d6c20ab55c1c281055287590fac227f26d994396b907aa91fefc02305f0dba1c0cd134aae49aaeea00a74c417db230b892522b1fabd67a9e06b6acc7d96672451c3308f7535e4fa12ba837dc0302047c435bb500673065023100cca8adaa4f4b091009e3df56c9b06211d31ccc33e0ae14be942c3990956d5b0a5bd0b47cc0ea0a0df694c9c34ffb7f150230054453ee686aa01c812fb2c4b360d013ebab93480baeb4abddba1adfb4fe2a87fdffae17ed1f5277a18fe6023741833a0302047c435bb500683066023100b4c63590268620a812e90cf06d7bf3c7bdb2bfe293d6bd312e755643f82ea5942025e8c11c45bc21aa2cf02c97e4a73a02310089ad2555ffb1a97041a4f351ee584858aaf1c936173ad448ad4d21a2bf352ce6d7e1d57f76a229c531e5f47a1e8f758f0302047c435bb500683066023100b418ded44bddf1a2dec4cb15b7f68d1f1d29fefa97c318a9fbd92d47bbb07a936b50381d692f4d391b8d0a9af942ba2a023100a36a1ab349b487005a08b543309d7fc5a6cec22967050e3cd592da1365c957087e77725a5ce58351ae65aaad79b1f1b70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100af8c127a5682ebe464d6d715b77b667876a60ea07f66bc31e46de59cb8c282b0ef388477374ea0b05f7fc6a75a9480610231009ec34ee84631214d102b1df60e621b6a384dc5567c3e95e7d31e7d98e9bb53f77eaa4a2f707670c545383d291ae8714a0302047c435bb500673065023020c2d5d4a80d7fad64d89e1dba51b48b401aeab9875ee2b437448c309db85b9d9e7a72f5c11fa79ad7f5af5bcdce5e87023100837043ae29a411786cc960e4649f162b4c25ceafc7b2cd8d8a8989c581259cf968aee8b1acd5b7ee09abced10bba19070302047c435bb500673065023100dacebcd380c5b81c05106b9d508f1d5070fb39bf49c341e60e1c8e86755069ecd8ccae54ccffb081d3061e051915cb68023076de600518ae4969901ad6fda9f97f14f172fece7766baffb4bbb4653673878677d843cbc66fb9a08b6ddcda9b4c0f200302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c6a7ab698e982306b7388f27aec44109bae7bbca71a5aa3065f5f5fd99b5c7eb2baa6d4683c396b0156fb6a224d9607f023100cad3b556b19f509e5924143ddaca16e34a948d6a4ac933987699eb30cbc63bb7e73f63ee6541ca9c1eb794257b991a7e0302047c435bb5006830660231009db9ab5821966b8076d7beba93d2efb146fe5692a47f4a6101d5fd68d7c4bdb28350850d4741392b4024353809a2a72d023100a76b4836e556ee2d99fe397b734445fe95f675142c9042a3c7a8231688aeda18327861aa7b44cf0e00cab1eb034574460302047c435bb5006730650231009cd4370038e8a50bfceb1db5420ed4807f4d4441b977db763661795012a81421f5024efce450833dc9bf5f78d205da5302305799bb39315c4fca2e85067fec97449bba931065ac4126a77ad7d4ed29aca54ac5561737a84855f06fb00e95e3f2a6390302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100facbe36e854e4e2da62eb9af4188ce83233539a23273da40258332801784c5967010a77824db71e7e44b1d3acc906e6602302cfc09c130a54cbb392c8052fe8adb00d8eedfe6a2fda5d6c2c47086ff18152c63c6af2b5b5d153d2ca50bc6d70f91990302047c435bb50068306602310087500351e7af851c6327f02b9664248468082f5151fc2a52a0a46488da4ab93ca81cfafe18fff5a439f590ab5827e3bc023100fa8fda8ecb25431d7713d8c2a42149b1bbc29b71995bcfa8a7f02a184abd1bff8791ecdaaabd3b2399b3e11484d0608f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100eed9865ecc51916d2d6f80e6cd5e3ef36bfd0c492d58ebb7c183dbea73ddd083f0e832e017042c49cfb2024374d03bbd02303a66a8f18ac1682b1e14c5ed6fa96df09f0c18e28fa94c227d298c833fc5a6d0ef82f9782c4f7a4deade58009602a9280302047c435bb50066306402306233bfa17236cce15768c66dde91025a9fffdcfef3cf9b37519a85fb18a974a91ca65f0c8705a87db22b81ed3cf549fc02307577c17af6e379e0597045959c3a767009411c3d412e6b59e30088fab37aa62271baf12ffb34a2890b16b4bb7c710cfe0302047c435bb5006730650230177666608c50d78b2adaf0dcee6504b352dae454c565f12e550fcbb6e9e2781d6bc1bd2b264b4794f36120fd014e73d00231009965ab6a6ccc3123dbde27c519f8a8890b0cad97415b949dae99652c3ca1830b26c23d8e9a5f970a0e78a48f7e6239640302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023020c391782da4d02091b71cf498e0889d4770d3df0d948fe89af0e8b582fe6cca72de5f88947e081fd38772753ec1199602305ee4f42e79a04c4af7307e345ae391109c9df7576b2a131525b9c311a252120b88c3cd76daf9e97c9d4551ceae25a97c0302047c435bb50067306502310082afa995128afa162def20f328903ac0edb6bca85fae7648d19adf2e06edef266078f0790697601ee279b03eb9f6382902304da664c881509c843f9780559f9b1e7047faebb2a77c3ef1158b3db6ebf52a9e5c522e47501f2e37de3cc1caecbad30e0302047c435bb5006730650231009a8a16dc19c3e33a071c98533f06aee81ed66e9f34cbd8e226f41f26869a43dc30e91ae5f4ceecaa7ec49726de1741b60230255b8bce7ba3500cb565d657b6f24c75e90307dade3b84fb3bdeda1f9923da3ab25510204c9c01856f869456045c56670302047c435bb50066306402307f99f9c69f3d66c79d6c1e94b2d4e5983a976f10d3898433ba112668a396926f9f1c119ad7faefc88cc525162e4135ec0230325a773487d029d76314ebc42caac8271dde1784cac9ac54a3aa1d024c52b8e48832f5d73d99b5cbf0e7db452d48e2270302047c435bb500663064023018699f43734f5a5eddc3250493be28fe73983358d82be82218e8471f31f8e0f01c5cce4a3381df8edf74d42313f4709a02307f0583dd122df6395a69e55536a16f5f26eee2b03c11f32afd5a8aedb84e7b5510b1339eaa3b3b4b86f321d63054356a0302047c435bb500683066023100c43d518baabe3b060063f39eb36aacc002449570517af21ec741bb18fa5a5be4ad98a8c284f57a7cce79cfef3f7a0efd0231008cd12080d868afc7b9db7d5f0b9d17b87a5bdfc22575d10095e133abd7e70dcb3a2693929504ebb1243cdfb2a43e76a10302047c435bb50067306502304b9d39ccc17d4c9f73975fa8f07e6b72e7e9e02a1d67a7bfea4ff1b078f552f30606a25c673171fd75224ceab80afed0023100896f0b0ddf1c841cd338a25e6bb4494e1e40e28f7c8b0009a437a7590ac0ff2615ec571f47b1f9d2797621364fa866af0302047c435bb500673065023100a394530ceba2e7521f966457c9333410dd2d63fe4f5639024443401ec81d05b1e3778bc09982d8cda19ebdf158ff5bbb023002a8ea1eddb47fbfa4963bac9ed1b6389cee1a4e81c8c6e4d7fe4cf743e8f33de2e8e66c5651f7885cea84068a7f0e790302047c435bb50066306402305d869aa12724603b91307701b905d6704ea9ce41c4ccecb5eb3440087172969bee97787973919b4120fd7b225041ffa10230094b199ee8d3315e590f162269a7d631bdaf258de8e68ad84c468177bd7b038f8ecf3551f553fc002e34143034953ae30302047c435bb500673065023065c825c9606922cbd6e88056c2384cde71fd099317dd1b5f58897512d27d693bf8ecb3497efb225dc1d845b297160a0e02310089baade0820c6e604b07e8bfecc7c363d02a307903bcab859e182c6e7430909a55493d94b3ac10b3fc6c2aff22a39b3d0302047c435bb500683066023100f96922cdc4203ad02f226fa67bff166595f51a0ac64c905e7a6c6a07c1cbe42383861e53aed896fc808d03b7fd45b6b0023100a4335486ced3b6970cc92f34326ea7f3c6a4ab69166ca20713b167aad708211437ed3915c017a6321212c41cda0b5b630302047c435bb500673065023100904ad81a8fd23866c5d0e724ccff49eec2e3b5e5c880b9ac7b27bb8268b98ddd8067f2178de67f870f0feff913e82f8a02300674a0c7f3b92c330584100ff305052ef856f68999c016612cb34dad8b58d2bb504e73548f78e7e56e9e2ef22a1d45bf0302047c435bb5006730650231009ae40e501d35db5026608981b1c0b4d50aedffb21698391cbc0b7d27dac5178ae4b65921049e0209236a1b16a3e16768023055c9628b167dcd491c963561ac3458f8c7fafb228447a7da626e8868e9eafe86b69f35bfe40ae6b859a81c84a66b9a310302047c435bb50068306602310091af32213dfbc25ab5882fcda8a69f6032c0c94cbe747a3465ca901b6225f9d6caeb7f6b6bfa4c8301ada2c2dc59c9c3023100dc677939905711ac7fd7e6876d4fca6938ec9a4fb4b0b92eb24a16c3d0c40220921f2c196d988618e847e3f56e3721be0302047c435bb50067306502306b1043829e80c995a8fa7ec2dc9f8ef8a55715e651831b99b97f4f1f3c5101873bfeaab904cefbf82a6e3a1da3b9eb4e02310085de26db4966d3d513c63d926177147cbab5e983dece12545e637d19c9a95d7377a9601ad38d15d3e4b3821bba66dd810302047c435bb50067306502307afcdfc4df31fc6399bc117dad65e39110aba2d442b2aa6916ed64ac83e0dbcf9a29890390e69eb7a87c1d35da31bb10023100fed91196d20a1309206a0c8a6aa7f0b08b1782a0017f509600846626bf63c8ac7b4b056b738596bff3454088ba2543b10302047c435bb50067306502300464c9673d700027eaf78799a78bc09b13ecfab6cd60b602ec56e1f42659131552ed18ccc4603b233e37d0d0af552d1b023100e325921aca876902a8e03fdd7bf283fef2ae3d13596c25d27c55a964bb05eb26bf7f6135d9555959e2d73a62346fe1eb0302047c435bb500673065023009eb694c3b09b9e7b30f11d4825730f68b61443371f062858618fadbbf8708e0e2a91b05ebf6d3fe2ca21ec305291587023100887cbcf40f5d5bee23072df53ac577130bf6c3e7a210d143dc14919c2149b2f72989a56493222eb6875640d760baaecc0302047c435bb500673065023100acf67cb726fb48dd74eaa7d14ea5a46321c81aba661de4a9f4b739de059f694f44bb844298b2482e9a0964fc0d3a58cf0230430ebb99847666b84633dcfe8b19125fb1051d7cccaa76f8e359d4487ff8c3f7571815566a71c9bd18935093da0b6df40302047c435bb500663064023046e2464f7f40314b5316259cb70200c342fdfbcf6a7bcc54afe12c15d248be28169dc6893e5828a6744c2fecda19354f0230024c0b76ad1a43d69fff6ba584dae32d364b4ddfb2844c22f611f7d021396cba6179f1a6d45b0ceb9271f220c63d03f00302047c435bb500673065023100f727e6c958f56770bf4764edfd0062895162c3578d27215711a8d4e9d7edd6f8364a0aff6ea906cac0dff786a60cabf20230228f9a6ed6e2487dc65754fe4840f83eed52378302359f92e35662980d3f08bfa15525012fb8d76913b61afff2d3bd9b0302047c435bb500673065023100bcdba3be1c85ed194c9313df5f80a83497a29cf36fab2018d8e8ebaabd813740cdfb584f6e668f79c13503e018aad2aa023060daee3155466bdbc5ea0b868d12eab8244e8402e7162cae9c12a23c4059d0be75ccf4aafe64cc63eee9091835cc56c10302047c435bb500673065023100a6c0350cf1e2ed5d491cc7da6f9e5aab6fe92190ce068800419bf996de552514d723a110ead8ea3032da2ee7eb1b8b3502306c0312c40cc2aa2a73a9cead4d6989097cddb8eedc792b4858ffb2b82ec0316e8f7fbfe8da829d9ba741dd00e11939120302047c435bb500673065023100ba3cd6f6fb160ca0914df8761d046d7c5cc74e548f893e2d18c6b22c7d443ec64325de6c671b028962365dcafa619215023015b462edaecf56c2f9090838f8d1c8f4af016daed9b396d878044b9faa6d5a1c82f62b8e407ecb1f51b65bef561fdb7e0302047c435bb5006630640230524b2f631f2ee24be213e81b1a5946f9c1e64562093e9b322c92495b70a53eafdb0776560edc4054d0e045e5c8e71396023032efb393be2365ebb370317f343fc43cd5d036bc428b66392722b1885a97c689a3fe6afdb789925222f0436c574bad710302047c435bb500663064023050e873bd3efa85bde3d97ed0bcedf15a1f4e5f5171072f51555c9d68af7ce8ecee26f9040eda365afe97fcb04e3a3a0002302b6f6f009eef283e56aa56ea00fb5944b371f9b5e5b2b9f5fe895cec799f88bc4c5604ac02a07c1e13fa502d6729250b0302047c435bb50066306402303a9386d04278200136f9b73c395edae6fb4bfaee617cc4f7f3485b30dcad508a5eca43d707bd87fc60d32117826c830302304ebd24de4a4e9b9f9127161af73427cdfd246e38438310f9522bab35ccf9c61edaf59b2a59fa7460a9e93ad2e596ab150302047c435bb500673065023100e6ec9bf204f68ff8a81d3af42a99252780f6e051f787c44f0dcdb47dd92600f98a9f5ac1c67c83297f020527a486eb8202305305f7638984617b0914693fd61c9e72b49617abf758733d061afa642f237eb2fa0b22cd3f7a647306e45118e6aca0080302047c435bb50066306402305e0fb84d534f4e533416a61a96f549f4908759f2c0b0342aba1190eb441b900b9d2939d60a2925af4b2cb20d3b396f0202305295737a02e1992eb969f7af13b80f15915884f161ae4f9bfee7e1c88bfdae2c94d4d33b4ec8d48b0c39a5b4ea286b3a0302047c435bb50067306502303d7b6de1e88ea6aa2044afd0eda8ae760baeb119eb0d92b34d03ba0f688ac272d78abef7495606fc185e00b353f7f03a02310083a937eb797cc0c5418fc4f5cc9762c232b61dc7777f7eb6685093c4da7fab6ddc117254a7c7a271f05ba4b32b23db3e0302047c435bb500673065023046063ab48bb68708e7d7045f9848f2bcc5706c5214d2ac907d66481bcc9e4aea4f858e40333a77e5684eb57fa69401a90231008e69f019b54c8523c29321b4721f93a6e9f0ec7e8924182e362370bc8d7a934803e07754ad5f255806257b2e5372cfb30302047c435bb5006730650230527fa41bcd7bd4d1ba60ab296c9d9803015e47c713aa70f34629b79dd9013efb1cce7395a8a4f3bd01119ec3aafc8efa023100c9c283470a6c2db1bfd72cd448ebcab6c74be8950ed936fcf51f18ad3a97c1bc631c4e027e5b24a3bc7271206604dfc30302047c435bb500683066023100ac8abfa060f476718b9e4f267adfb2e403dae213613f89a99d9a84e86873c42fd71334fc009137dc23a8174657844edc023100ad8d66d31069e4c39ed1dfeed3b80ce57b4906faa8ff8c77354932f7546ceccfcdb833df87153735c6d835a04763e1130302047c435bb5006730650231009b4c22fc2beb6aa392516a9759c811b84cfbad960e243330bdb8ccc168459e0c6f3db8341d1f7ed5feec836f164248b1023026a81633d81bcd6a298aca460926243362a570870136e27fb71bb8b87e3198dc117a45a30d15da73b44b75e46f4edc2f0302047c435bb50067306502300fb7250f1cd8ba19069d43cfada70c975554a7e5a1481775aa0f072504f8b726b72a9b488d6f7970296947c61bc8274b023100ec935ea4b8fc14ada6c67c517e6eb2e6a04984f3c3e5d456988dcb267dc3947496c11a7062f8de1af1880faae972ea990302047c435bb50066306402305b075d506c3808b0b3a33c3c7cc0b623d55e2f487df16f56468eaf7e9804c37d6c88bbc536d54e892f8f6ce85ea7f4ba0230794ce4eba276f24017c52929af3cc92d611bbf80ea73f05d69c668c2b83183d197641d96122111bb5739fe1401b86b1a0302047c435bb500673065023100dc3194bc1a8da5aacf654a482f51340e3d2d8854cf4aa03ea8517d3a264fab77f838de00c219c9542359685ca5a6ad13023047630b3503cf55fd27122cbe09ca23543b779168135da8720b34c5fca93a600379a70de8216fafa22bec3c72667d4a8c0302047c435bb500663064023022bc4de3f581d147750f3344567e741293b41d11e35a00a98cc0d932561c352416f8a65ef7e1258f3a9499a09d6f02600230357dd20cb95fd7061fe26ff451d0b5297b47f143e2db7d7d174e2202eb60550db3a9ffddf26c75a0f3501ab8b658d4fd0302047c435bb500673065023046a95c5f53dd135217dcb40e8050e1fc4f86811c3e0f9053dad42d40230d2e9c6cf8543bc4db9ea4014f46730883d958023100c2f1a8e395d4d93dc3497ec01f707fcb8e2296ba140adad8bdb5b43bbd56eb1f5d4969d67fbb07d6a6cd39bfaa8d9eb20302047c435bb500663064023055b483354557cfdcc9e4546170f507e4ce7c596d2310006dc773c0ac71f6fc1316571ea93561bb3df2fbf821705d43c80230044de0f8c43ffd6bd13126171b7eb54d4cb2b5f8436193129332699d1cdcab1027148a0f189d4632c62726537e8b75c10302047c435bb500683066023100d119b3fc03b27275f74df5b227467f90c82d5bd4bf717567af17993566bc40238a185cca4c8b36639c7be814c76f8661023100b698d5b0b9dcbe13cd609c58bbc8306e87525d944708bea40d750f2881c719c341317924531d8fa8a226afc405c3130e0302047c435bb5006830660231009a0c15378562134de5ec04133164ce24dd1e4ddf9473eefd86c8af10a8fc78949a24c4258b56784c2fc795b1a3b8a407023100a5e26ea931e530c0a8ec6cb42297a48e0fe87629e59609b18eb02bd95a2bfe2ca4accc34e37d16fdceba43d223430f060302047c435bb500663064023007ab4c8569939e074c2456b2381027f3f2864857f707380ca32efab35ccc9eb3b62918a612ff14f7b2c1c9bd821795c002307d456aa983164db660cca8bdbc1132968b931b0735b32c807c4ecd8afbc730b7eae49b8976b6757fccd05785cb4ba7de0302047c435bb5006730650231009824bac7f7e27711796cc7f861b8eeda9a8063352b5093b5d642c08530eaa1510972379fe5eaa20973dcca265b50b5d90230294c68cba684aa19dd059bc8b5d44b435784844cda3e12a76b5a8b7d89e2bc3408d5af8d71cc367fe61e3dc1d09cac970302047c435bb500673065023100ab00cc40517356090a39c31fa6f978ecc766568783fd0736494c49b3139a38fa937c9d9857a734e9429f17a4e267189402306c9d837ac79b32bf8bfd18be80a581e970eb2508fb1d32a2857d93f8f7cda37ef15163ab9fd6ee0d8b72d6004c2215850302047c435bb5006630640230335c11c48264a8e9ae939db59c811be04196bf76a19404bf1eda5ec6a790f13b151a7c387cbca969e761dd67493954530230380521b348d5e90e0f1a3d032d4da0ff0b588cdc46d759ef82dfe640fe5139b571cf2a7be49b711472ba2d505ff3e76f0302047c435bb500663064023051ba95efb383e83fde0bf1806342038c63038d78a1387375a0d5f837de32aecc11c29730bf1420cc1962d4c1845154a10230518fea793418aa2d3b52625c42a71aef8503aa502979cebd16b1dd331c5180401eb24d2ce5728d2112e51a6d851b9dc10302047c435bb500663064023050b2216d8e9725b93ee44d525a9cca18e7467787e41bd90a441f68af3e58399b2515a48d3e290f69a772362d90021b8c023008bfd43026bad5ce3d5eb528be45d498e37c41189581da809c5590896f4fbf462b97c83afc22bd3859bcc8f2d448966d0302047c435bb5006730650230497b905ea5d3b1134a6336ea9a7e64f9e829dd3006ba659dc2134fbb634b603f3f4d5abbcb2f53d4b54623bdd5e5d5b0023100cf245b8a2dac256ff77c5ec5d4188b3dee703c6dac8213ae22334f0007476f1c43b821a81c87a69e44a126ce6395dddb0302047c435bb50066306402302bce3de72573616b24f42c88877ebb305f1f5a3e701fb5476fa11b9241a36fc4e0a5f6bc9737e229b86805e7bd85a784023039462770ad53eaec3fc45569a8a707ea6b4b5c9e048556247ebf5f288b156d57cb5779d54f5130b9a71eed4bcad77a5f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023076c7a9af7bc74d8ca91fbf3fda4f4c9614bda7db750245f4e6669e069e969bd0544ca1fc39da6eae5f5266171f3e9db6023100ef3fef4db376d312c952432efdd4adabffd5d392ceafa05c378a39639ea13ffd6bc8fec5ea1e0ae81522b5cea795c6ff0302047c435bb50067306502300d0056e721a66523627132420e68085dedc8042edac51c29b875e65f8652b2393d3514553961646bf2c82c4f8cfa25e2023100e442433b26ce05b0419c3f548808e625f29f830e561556fcbd116d3a3303f7da75ef7504fb627300a13bac50d698cfef0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fb6a10a88f30f143df18d6e417accba5db5b164836b683cd9a8de7b7676e13f7c4c0373cbad92480407995c73813da3d023100d0cab71854c293fd4fa66008c3300c11fd104a9bc1715bd71d5c17f06d69106e8d0b921f58ba3aa27c4d42f2042cc1420302047c435bb500673065023100b94b76eb6935e48e453b50013abf2b636718083363239724e201b20effa6d7eaaafe535c2a2303cefb9818ec2ac289fc02305c7801293150471dc2f166e065f7de7f0d00d3cd576f37a2849bb6f6eba1e84c3c6b17dc9ada768dbbb2f55e083e5f340302047c435bb500663064023072ed8a93ef04672f6a60c9b678b32c24f46ea672a32a528a3ca7e4dff62725f86579dec995f97cf6fd507991756eb93e02307d18ae596e1a320e04449a0f44c2c6f36027f15de6246a8bd2584f83f3d7c8dd776dc52b025fdca3f1f772ba2f1334820302047c435bb50067306502306e8181431763a37a21db9ff4670bf6efb572db9e0a7230b7a731bad488e7721319854bfab34e56334fcaa88817af9fb3023100b280ffae7a10623e6eddc825324c019a8189db9d439765ece54ec3d4a3b44d2adca1ce649117039de14f52a54defb48c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f74064b0d6a8756facfad6a988ba5f0b9275c85bb9d2f716f65f2bd061564d4b2db37510cbe04b04ccfc2d5b033ff02d0230488348c65cfdc1d7686b66d044020117b17f99c2a135eb765cbc0d3433a9a2eb6bd0cdd3e1b93112e20b03dc6695b4a90302047c435bb500683066023100d8b30498d0ab057675e621e8bbb0d6c63a2467675131935825c9d5402f14aa024b6a8242eebca6a5fc7fda0982b32cfd023100c94ac787798467d71320d5dba50951a8703b90ccfd24486f1a8464aaf2f07dce714fcf4fdbf4095adeb020a024a7d8710302047c435bb500673065023100f5cf9d9a84f80555efefcebdbe5e7dce31c5e5a496c171b760f425352169196a9ff3aec8731bf87b090ef8f100827af80230208220bb0a1c1283b6bd6857f7b7896bbc9386758e1396a44ab725e2a6be895f42a9458963d6732142b4e302dac7a0cc0302047c435bb500673065023100b9e6c68a6a49058569e1c69814fdf385c2ed633353a7d65814ded970bb54bdf92d7d50971d99f6b93e460f1686f560e5023007bfec7f8e0120e0537fd9a31f48028c21f834673b97093657771fc049f52253a703662dc77a579f95af27807d20aaf90302047c435bb500673065023100c50a5564e9c523785790daeaf4be633381401a9fc897d4514265ae1d48e525889b180c4285b8aa192d409115c2107c0a023021e1dd2b7b30855ae71a99511a08cbc1db6ad8d88f751d56053644102eb3e65896177729b08eb5cc0e1a0d2e32ac32330302047c435bb500683066023100cdaf775bb2db641b4e20a69f36d003de5f4849c1d1bc12abc08c1142c02bc2da604793ce2ac4ff4277ac722a4b2d60a6023100d6a4165a246907bf1d80b100acf07fe1a043a59e163e34f7315e27541d45f7c05be22878f5f6eb1c3e95f6a50ab8534c0302047c435bb500663064023065490f2314a9311ad5ba0ec1db86dd7a916d804ecb3489a3657361c660e2320d6d55295f8e19e63c20d101b7930a947502307e9c73b9b7efbae1514c74a90802cdb68c01dd7ecfd8a805e6d2bf33769efe75d8b42c77212de3fbfd929f930abc309e0302047c435bb500683066023100f891901c5291d7d7b0a631522837fcd43ef15e634edffdf513e54551956ad119128c847b8b0e6f0b9136dcad696544e0023100d0fa8a640332d50280ac284c286122f37cc3efe544bd91ae71ae879a04f3859e8b3c61f796bf4993355ddae4bd3373680302047c435bb500683066023100f5341b18dd8d85b9f63b6e06daf633eff061a2a4ed56af6c2f2dd32ea62a0a97c0e5008540c45e4d31e0bf363fe0e692023100aaf328832619c8de3029512e46c8b4a62b24c04e6f6f12daddfe14d84f22fd1eaa8104e43fd1045225754d7e5e08b16b0302047c435bb50067306502301ff258235eaec2706f353ccfdec87fe78001bbfba53517f8e7dd7ab4d7dc63163ec50f21f5fbc5b408a707f9dcef115f023100803049e0c3c43709e7fd0d279e6c46866bfb43ad5034a094e97b77b6aeff41abbe45b56fdcbc329d270cb4f6e74067980302047c435bb5006730650231008253b564bc6321d07e41bed9c8901087b6dcb25bebb99419d68fbf984f92b5953ded738378d553442a533c65b96cd646023048cc23e5ebe3a0020db33b54e76cbbee3bbabccfea861a84c70833c08fd8771859ee8b3479f12514f65f4a6567592aa70302047c435bb500673065023040f7a6d0345e071017fa2531b685ced1a77dfe3484d3a18a9225d19b47d19754de6de3c67406a031b47a7270ca0104ae02310090382a73462305b38d6d100f8ff98c7f0b0df4a396e5a1923468e0c53d33d099bd278d589d87e5cbd1846a54487fe9c90302047c435bb500673065023100dbd6fa098362cc99b2b6f1f887b2ca73322d7f1b7c7f8acabc33a8cf4fb143458aa0258c7892ae50dccafd6f886c169902302e793ee714e4ad6303f868f8ab3381e7dbf1aee7bada691e461b2ffb1de399472fbdf5177d36bdda9f4bdfb4fcd95a850302047c435bb50066306402305b05d1c6f02558a3941004600bc11b9938b631544cdaccab9a9d7ed720667c8c65f593e4c3d838c3b81a28f87d141d030230725f8b77e2e855112b916a6327ad931eb783048c183c4c6f31c11b27fe31de9fca2a64772d8277c528260af6968902310302047c435bb500673065023100d68e822537df2d48c36700bab49d9e393198c53ea29bcf0e7f4b1874b388e6e074668cbc2f835ae96e7843eb5e9b4c720230393c5fd95de1baab93116fddf40f3d3c986b37058c2e79e3eae7992acf069317a13189704066faa294b8e549876a34600302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302db8ab0c5662837688d0e0215fc49792ed4e88fffd6a4973f4e12c0d083ed4cfe3ef2f09cfb57aeea69cedb46b61ec79023100d126f4448676216725c9f8112cddb13d667422218718758727bd9af999e0b21396e264574e9e8d27a0efbb3524c9dcd10302047c435bb500673065023068bd9ad68de32d96de901c6ef72b630692fb9a3050438722130b7a45e53f80341c1a4fd469afd73fde9d8c9e66f7f8e6023100ce798c3418da9d18c9a24c7fd7db2eb44e3c5ca72d067a3beb1b63ddb517f03b4183dd436dd25e44bf0bcdcdeb21d2b20302047c435bb50067306502300ff034c29683b7c324a760937e0126c5c694325339964427f058d6d4be25df00c49e09fd50961685667870e8dda3dfd3023100ce3af8fcc2b62cae0ab646d7d92abe7a41a04fffab3fe31bd9d79c6ab09dca9d576f01353faefbb73c4e63e0137850490302047c435bb5006730650231009cb2b4c5d7f05efbe954a12eaca660629c63afb8d2133d00a7f422026258ddd2d19d04097e3f2a1950275bd4fa93a3de0230739d6930f54d4301b567b00c22bf4fb8a22ab5185253d6842945a6ccf120c90f4da44de18d8b5ccc5c8e54d663b09d5e0302047c435bb50066306402305ec27d1940da237aa6d729dbdb53c6f3f415c9715616e15e1b20883d9a5ca689d7cbfd366aef48cb450b563734721e4502304004c2305b467ec067574fde018a44dad87ef61146c8f5cd6088060e9cde591e351a3b51895b691b4e9cdbe012b3e8f90302047c435bb5006630640230323f49bfc832df4bf35a068501ca9a0df0d454f30bd84d16157875a2d5c4242a68c377c1a945fc1207c9959bfe4b027d02300276a088463cde0a83ce080d4f3f38d005f1d7d48dbedfa0f5d74ab61512a913a6ae8f3d644422352bad32a1f6e382840302047c435bb500673065023021bd88815f96a9b9706c7006b9a1ab9ed9b46687c08c648bdbe1e939e01475e6006e9209222c4ea1d718cdc3db819c02023100a4383041cf9e809abc1e2b1200eef5898cc4fb1cd1e3a86d156df7075e99b010f4ce891015b465bc0a54c2fc3761ecb50302047c435bb5006730650230154c2d2d435b9d109c9ae9b6f696650743d8a065d29a0637a67722d908c1f87aac91767bc109366bbc58985741cd96710231009ac8370cf39cc5ad61a4f4da300be006fee510ac6384efefbacac9bdbcd6da59a5f9668106559aab5666c308e14d80240302047c435bb500683066023100c8c0592a9ebc012f8ba24209f87e8f66b8c347b097b16b6f9300523ccd7f433a1dafe54afc738b2ed5b4004e08c9557e023100b8052f23e2135a614567824da88c797169057f47a847e15ba6a5d1ab398dd4b642dbfaa1e0943c62b909e36176702fb40302047c435bb500683066023100b0d1f32a16c92ba26ba9521359666e8771618fb026c47308b30b73f53a99dad2098020f5dee093f16daebd32bd2faf920231009e3a5b90d22a6b88f50b5476ea7811742fb4afb505de66b9271f260c1f85b3e6fb17f5cda577dbba543d5267097e0edf0302047c435bb5006730650230457ff016dc8287fbae243bc064140a053af292240107716c4bcb370aee87cfb4bf3755d69890c75b1ed47ce7d8998337023100dfa2ae1d3ffded7b7c47fc184da450974b8ae36edb87759ba44c0f9b41699a47d2ec3e1f037fdae519cafdaaea831aab0302047c435bb5006630640230254ed9403ee8f80fb02bac49487b88d2d98a1e93077b606ac8d48cf21d6af3d38b03ff079896c5a97c697543c16db882023046a8a266743168746f089635f133d84d248be9a6f7de6fff2c618e03a4a90513504c7948c94a344ccfca1b30bf1e88f10302047c435bb500683066023100a0469cdda8c0f69723dafa262cbf6ca397b7ab2f7897303f8f7b843c4d1622b8de966a00e987ae8d57e2afad1e1e7cdb023100a44e6a277541f73b8f96a7235048e45dab51dc8bf9869b0ef11def2b953ca6e75bfeba4ec5ca2e3a6829e228c08817130302047c435bb50067306502305c10b9603bbb9eb2820af5d8a4fdcf54cb65983ae0acbb059157faf5b63d0f5000f7938d0fd9cec1d8a0f805a5eb3a08023100a03ce16fe614a738302ef5ee8eab0fc0a087a5741c2252d770d99d7dc86460ee54aa4b785af6f55f75a984b5182a7b6b0302047c435bb500663064023030659422656de513f32f871e1873980f7f77a3965978decc9daf6e884c9064060c5601437eaecd44a48b1c89d81f299502303f8f27536a5f7fb571cc994590e8e78c4c5151bb1e6b18277337ddc8b65284256a4b987348877f3f866d68a85011cb890302047c435bb50066306402303b686d3f7b26adaa1e7ccc555b4311c1f7285c207d2967b43ff2e837cde2cf0e16ad52214e5bacee74eda0052aab147e02302d9ad6b5c0c1255e6cbd32b7febe324aef492e0e6ba334032a8e60eca5bf56d7ea78530a6d81d798b9e22a50901f5edd0302047c435bb50067306502301918244286742cc07674c8f870fa07acdeef43aedee00df4e6b01d7e21d8820f9a12f226d183566adfe96f1cb8333f570231008c448cd94a6fe4119ab4b380610cbc0a0627d58863cb4c8f7eda2b1fca22b173ba7404beba3257f296b4b3211fd8a55e0302047c435bb500673065023058978ea3f6ac7e6fecd9c3139c7ee64284f4a7611ad306b0a26903aa3e4c3486b81c21c4c662cb883ded991c99a42d6002310080a73592207cb3a5a94f19a29574ebb51c8b9e1e757b7ad2b2f83e53621a5ffbfe72f3db631b2236c4667653c0b710130302047c435bb50067306502302d74031d071916e5c0dfb97bac3bbd8106b676e56ed607f28b482c59429aa644ef43215f3800dcd9514c50d6f1fb21ad023100bb9b1787131e24da5d6e3e3799571f1aaec5561d06d9c1a2f10d2e68be96c76c399f18b66cacaed5f395124aa37167630302047c435bb5006730650230055bf16ba2399d91034fe03b297b3efaac8b65d3bf4e65808f9e95272b396c41146840ee9c99cfa2450554555ae9f10a023100c82910a6391f3d7937288abd21994202a21e8300972d35165aa18d72d5b139ad0e4873a609ad4d9a907dcdd3da39f8670302047c435bb50067306502306119157dc1b587639d7931339f5e68870649105b970593f71f4ca01dec88835a508c78d48266b3198b661696d79fd023023100b458750220a6aaf3bf75582775ebcf7d96c48f458ba8ecf661412f604a99cb1c850f42b42014ac5a16ac3755ceec96500302047c435bb500683066023100bffb6628e9035dbd590f1b39f485e26869c34c2660e3f6195505bfbb980e6013bd75e46afbe2f66de95a02a853073ff9023100c0c7768466a5c47b371ce99cb2850e8ee757b5bec5a5b4989e938060b5d8c0e5b8738f9486350688696047863b1098680302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e81c4512d3b2a47e548e8173ab83d52758b308ebee28a44762e87250048c8f3bb91686a7646b43af76bc32b16a55ea48023034f26d63d245d95a58994a6502d3e9c709d8e449b31e762f72e8af412a4ec1f60acc46d583e63ce0d061665bee125e600302047c435bb5006730650230499e0dc3cfc1c1c56a6229046614d928fa230b56efecc9fad40f9980b2d487e8502332b75d88295a2c1a4cc96ffbb347023100bc2f41587d6633876c95e638e3d267238c5c58c05e32b76fd89ee690443db902281c2dca50ac077210a3a4b029a1d27e0302047c435bb500683066023100eb3f33d1dfcd7b3a6f401ca17f917974dc28b67fdbeb74788000c2ca87e8f4065828743a9983d386db65ddea40c5af5c02310093791078d8c971595c82f6b81d7a3d68bc0205e0d77db81582e0f51e4e886eeec05212fdf8988ba23918c2dcf5fef23e0302047c435bb500663064023011803732f3209d6c51b8299faad57405de90d81b428cefec548b937f40dc350183609ad3fd802280b0d566ca8b4bab0502303520ba83159ae0d1b84772dccb7007d5c474bbbb25a1a5d11972b4ebb5b4e5ad6a665096df329654a1343c533a78688f0302047c435bb5006630640230259da105fa7e6ff9d1b7eb055f3e26b11036736eb08f7c348bd9416bb9b0719d8e62b22c581def46fc7cdfa2be78199b023021a5a7e5746ecc0e304ad963b900e37a1fae66090a653f10dc751c6793c62d11a4e00662eecf0925a44e5b864db163d90302047c435bb5006630640230020605a7d1fed92d981e1e498a102399d0f387cf694a4091bf15949c3169735312e899513378abb29724fda30e6b338d02300ff8dac7c24be56ecdbe33dc9d6f02f063d790f8eb08098480ac943a3a00207b81cb81a6ad7fb16e2435f054820995c80302047c435bb50066306402307910262c6936c95577219e24edb3cf5c14076995b20fe4b8fb7428772c41089d40abad819f7a13c44d78d9ac56483ae10230296ff3c069a1821d854473691f5bfb30b5e14be7efc84e865606286f88d3bedcdfb040552e95b3a0f55370db4ffa7b7e0302047c435bb5006730650230223d9a729d0bd672f1fe1d52fef78ab33c047f909fd6d98666f31cffce75320d006619d964b8ffdf82e7adce2873e628023100879f316882b6789fe1ed3566250e5598723722f13ab0b386440556d172569440b02efd438fc4a6eac3754cd12b5f70670302047c435bb50067306502310087c174eeecb686ee29399e9e98a90a5cff9a11791f2c71a1fe9fff01766c4a6c0e8895e7aab0f6e154fc66691e0be3d802303c69d6de407fc69d71c093469177503fd320c9e2f1b39757a3a75413c4b01f05cef3d055706890b4496f3a3549f393f30302047c435bb50066306402307f07066558d0da9f0a859101fda43d06fba2a7eb40a8181c83e43dead3f6be7212bd6fc8ad0aff094b1f92281740471902301727d906e5d2fc7c3278487e08b3eb3b2405e83cf45d218e00c5282c68dea3289cf4002b4f54a2f1dae27c9106117c530302047c435bb5006730650230233bb9063efa359765584c294a9ed07cf87189ca3a1a2769be11068771f7b6ddb3c2468b73742d7b1c8937c437e10257023100b92491f14bb666d842bd3561b38011aa5b6fdad6b310319566418a5b4eda6dcb15df90a6bccab5e3c073113d26f2e9a00302047c435bb500683066023100edf28fd2cb0c2ba835484760ed0a79d702124b918d1225f64a805076474a92e62a6b5bc6240b1786d8f0cc67bdc6abfd0231009405ebbbc1d02478139063f9a787ee6709849bcee51033401bdd7210b544f4529c0558a46847bfb0468e9b50d35e66120302047c435bb5006730650231008dec6244d62c6ba386ad4f47fb08ee713fa1913f74effd0e21e7fae212d0f32c8c63561372dfb856b40225c3ccdaa392023026b500817ebdf4c31b2e2b6327f455ce02162b74b76a7b15a0bec04bd3e847dd838e0aaf5ce07621749a8edc7759609f0302047c435bb500683066023100bfcae7f925d5b5f557212d41bf4aaa2be1f781a1b79f1930e10aeeef38406429cadd1f6bf0b223883e3ee38242c146ca023100a0740c3d81216163b9802d5250916b5570eaf16b14de931615da2eb03d1952941fdf64739a62b825ee20f235a4ddc0650302047c435bb500683066023100cb80552142d61bf99bd777b0b7c2db9ed4993f72d14aa57cf2392ff8cf7c428b6a70662eaa007739592a4a763f1a76d5023100c33eeb43851ef5bd394a514647aa5a0afc743ca61a5bf9a447de84717c88f02d949d96db05f1f64cd074c90abd1b62f30302047c435bb50067306502303a24ad17dd62d9f4d6b6997361449b7d6cc769df3032837337891d61e86cf18588b3c52ce8463ac87dd363e4267c8e57023100dbb3aa58b263ed26f819e05dbe8c4a53365b5f96dea48773c2736f5a6d737b35a54414563707848defe515b1b04026a60302047c435bb50066306402303d0dbb5d437f7aef8e2ed5a07347e30ea4e6da5e8e0b4060d3490afcef0cca45527e43029c78161c5eda7f78a0810b38023073b323c946352c27a6a2801d53632b28157f97c70e20df7d66bb6d155fa2277b72f479f8b13757d484b10103e4ddad7c0302047c435bb5006630640230589abbc1526776369c8e212400e55a6f6221d461575a027d3b7c531d2ab518599bc2edcdfb101cd01b02e1c48ab9976302305fa4ef0249f39f8a1ae155d207a92e0cc2482be3f9e48c8e9e1826c3d96d9ef68540a7e2e812831c9cbf44751ae52a430302047c435bb50066306402304b9d3fda321066319de874826db39db9ac942cea26347dd9aef6b3a95179d4166e9907291e5528187cbada499ae09e4102300145f411eeb6d4b57c958c0e5af9257c2b9060148b11e97fbcb8bf8734ac092ff8e0fdab87d88065ca8a53f974e1d17f0302047c435bb500673065023016170f04d0696d840a6095eb5ca6560ed60c0e9333d6fecb10f3509f00d43d8ec7ae5d25e5c2c8a45417d63d236c2a6d0231009e62c8414248a8f67805d4c86f3cc15cc5e8db923eca04b9ce533b796187e44d08adfa541196ecf16947e1ef9b6c5ec50302047c435bb50068306602310097d7aff661f09b9b0c6ac167e3f11b36398c3632c8a0242baf976fde65c408d462bc19a0edb8b8661170e48f190ff617023100dc1c79daeabb9dc43b9bcff965b0a648b8ec18f23245f5411e7eb3c124b8e7b93731c52fc2a8ebbbf94553704344e3860302047c435bb500673065023100a6dfd1e3bc56b0e89cf510667a31492f7b22b97f94c0eab5da7eecbc363359f5b59c4465cd701d16c38208190e3e93ea023074a4c59008a5bb0bc21854ed1163c1eefccc6710f36e8de4ddcfcb08bbd04439db5ea959c82a072806e6935c4a2420d60302047c435bb50066306402301f4b10bb830f9b39003f15bfc2890d2c795b56a2494b95fe5359d6a25155dd4ca3ab26b13aed5cf9f8922e41eacab2c002304b7babbb0128d19ff14939fcf7b662bce07feba3487a8af2be3ffef644526c855a0502e32ad93187ad0a2f7da83007e00302047c435bb500673065023100d388af043e1fb32199a1f422ab45de943805182aac4291414cc971577f9a31ad597aaa6c23e7ae6636f83403579b50dc02302d18d1d398e9f5270c7fd704af76761d731467afabffa442aba43574aadd70e7b5f5f97171c8da626f90da52f68ed77f0302047c435bb500673065023100acce8adc9350542946712b83efbb3883f5b9f1c0eb8d3433022742454f8f8bc60af9eeb1829b2ffcb7cfc6ff6ecf0a7802300c3548cbbc8b9041048cb5cc63748c2114611ebe68369a052066878940f1a826341bd9390bf848b2578441ec91d6a4190302047c435bb500673065023100e271e283b4d469dad5b02eeaf5fe346a9b9fed72ba1dac29a7fbed0865f7a4d542541886ebf2f80aa7f3cf3ae342207c023042c037148dde7a1b1cad9a17c548e8db175ecbae0b9d92b767a891641c36905023ffe4c750e80f401d80a177e0674cfb0302047c435bb5006730650230263d6b68531f9b705a042675687ec107f9bf634e9bcf1951d53a1df0397420f4c05ce3109614e12d6a82cfac12710973023100cf9ebcf0acf95a4119a21a1d3493308a4fa20ef5b73ccbad4b467f447331545d48eb27b1e834f715af5da4a0cbf4c32a0302047c435bb500673065023100d4123338b95a93aef2b46832f17fa33cff8ed2aa823d6f49a41297f926181f9b55072debcf9c37086f967f82e3ea09e9023018adbaa6d68b9568def952f6a02749164bac437939520583262c0dcf352e2bc9160b45a5a61ff48c35db75dcd3007a2d0302047c435bb500673065023064f08f7eff61177043a60233a8502812d57bf0a8e8988080b1db72101c957dc4ceec5f28594679f9d2b97034f995c015023100d98feb08109ebe4c8eb800b57230d5e00e02e7cd88734eeadc42fb94365331d6be0820282f091d9620b2ed71dcac38a90302047c435bb5006730650231009b1673c158a2bc7622c522f4f06d03615fd8690a1fe6b8359037f88fffe9a67ae6a78627bb6cc4e73905a04508d23330023034e6d1c9b0b7f8d64855c58d17cba667ede7a6877b881b50c080346d7abaa395fac6ef1241b650d53bb5836f86b586130302047c435bb50067306502305cc3c3ac9f7657a3fece541dc54e932037e5fc3421c94e7c81ed05c5eeb63892d96957f283763525d8019fa6f414f574023100be777ebd2e5b725e24c08bb10a0dd6884a0f98633b8bc8904fc4228af684cb3d41684a868ba57171cdbce0c0bf443a970302047c435bb5006730650231008101ecfd03d75f330f43f610afa9f457564b445f62e3c617173823feb562fedc09f832ae46cf48f2b4c346a336fb8405023074b528d7ee3412eb176750be2f13b20282f9220d17731a95dd3ed023a15e06ce44dc83dcdd94a5cf41557c9c29abde8b0302047c435bb500683066023100cbb85a1b17a015d8094dd2a75b9b44023497fe0ad569bc3ee8f0e4e99979ecb4110f2ad1ed17815dfe22e358f64fd3a102310085634bc33ca83fad541fd0f9e82598379fd48e2b1d689c4c7b9d9f44a0e37bcef52216b8c201cdd98e0db198dffe78fe0302047c435bb50066306402301942035cd3b07883120777220622633dbe13a4e0e87166d45b3bad3e22960487946c8d54c797e9c686c2e54902961aa802301a11ebf812563a06e473303d2d75b7a545cd1eaad48685fb02de43fc19e4e78adce55c8ad9d4bdee8ce82d030e06227a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306011630d38a8d3aefc200b19c8c7a594bb6b90b70741b9d148856323eed6aae398b66a635425f5da4fbd8ff0cf8e0ed2023100857f82410e3add2095ab1166dc14d03443d5c6f9472b55c112fdbea907b2a7cb268a9dd2f2879be6f514c4d53c39479b0302047c435bb500683066023100dc0ea7690d496133ba798b15861527dfe6492b752f418406b6f195338a82a0773a7824149cc1aa36e5d47c281866ca55023100b2cbcf48e1315e0f7d1c3d05c5bb3302e94ea2d14d2be83dfbd7dd98854ea0e6c94abac2e9cb931ae9036457eec0c2360302047c435bb50066306402307ffa68d0d3a813c17a83907e83eb0520ec6b0cf18f7a0207f5768a390966f4dd19b6b56f54ad27b83b2b550e0fffcdd902306fd0b0884db35316a97770636dea189487ef4344516cb3e26903e11e0a96f2c22eb81f4c457f7ed0162130c47fce7bc00302047c435bb500673065023100c4e864b532e2d9bcc7434860cb5cc96927d8e51bbd728713e02f76f742f4a0b6bd1c00bf7990835148c8d888cfe3156902305357d582787d2752f848106881dbf3ce3a5bd7d0db4c4c358ce07a3b90d84af96c146f5fef38903ba3a0159813e2355a0302047c435bb50066306402305eb39f5fbea20ff47db4e488fc54638a5871cf244dc45cd4c004eefdd6703196dcfeb751919efbc038b0f734abcadcc202307a29fe497240c6da1cc7e9bec354a29500a101e972f22f715cbf0d9d2770d8d5e1ba94947c3c743000c2c67a69eca8d20302047c435bb500683066023100f8cc3055b8204f108dfff1aa17ec18bb1fcc3a00a08c057e501bc1d5454bfc2d60118cec6f7ebbf6522878dd06ad0301023100c9aadf2ea46de526db4d375e80dc45c158d8d87bfdadfb0d2317a1f0a90610d969bb30f89ae54c2021c29727e7eb39430302047c435bb50068306602310093dd0651db186318288c8602550dd4466ead7e0a78b6643eb1598b856447f1c6f98b678b638afe30adcde74c43fb4a18023100a6bf25f492a87af06b42be5f2a4c6a54e2e87dc09f41c653010f66220dbd77d85ab3df8ac5c32319f21d5864ba1ecaf70302047c435bb500683066023100d18c7c677e54c863dcd3b2712778437f521f087ff529ddbc885ec19a9aebeb621bb84d00f44b07a9f3b5eb69052b82bc023100c64cc15eb64f9444d2571bf7ddcd79d87a01c29544b5d4805532b4a65f08e08d3cace82e2757b3fa4f79ed62015370f10302047c435bb5006630640230732839cf16c2358fbe5632f18f2d38f70a34d19963cad8b4c708f5f29a12a05085addc4cefb1f58f85f2f655f7fb571002304567e4725a468b036ec3d7424ac0307fd0e656172367d9ee6a9d1050a8e65c82827c31886d9ee74c06007dc0d0832bb50302047c435bb500683066023100e3fba1f75498ff5db4b6da6b8608fc8c97f4165909ae79179614102670cbe4c054eff07e65fd4faa4edecd8ba72f4f5f023100b0842c65331501e1570858f97a9e01a4b25590371365e08bcc5398cf9f6cd7f7f4e8c2b228a9ac1a181466eb3194f9f10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023066fe6d11d002fa65a99c06d2749663e847d80d49a099b4041726de504d5f2bc18d8d54337e257d168922f69ca08370bd023100eba65932a512f1cda247f3c5e9471c3467caf8f95fe3f10d88d6547f3febcc2073fd8b908a7b4965b0525f65092361010302047c435bb500673065023100f2103d3e589f3e0fbb0fe92d15b1fd6398ed7a96ee607f22266c95e6372375a59cf3f5477dd5f6abfb797ae2ed4553c2023010fd4ac770afc26f1796fba87cfd3e0bf2c29780f065284f91cb539b8b45650f9a52bb064ee2edd9e0b072ec2d6a1d990302047c435bb500663064023019bff20ca8544b565027da68cc095982fe81932148668895322e046b313a00f1b16fda02e076ccf4e255514e4103ec4d02302f80004d1cef9372519a456a9173bd482511691f6e7523fbd21349f237f2188658a76000302bcc73dab0c28262adbc3c0302047c435bb50066306402302a940447db61e8a7f2787a390fd5e67adf54d7e8c50b1fd80117024a466c1ea53a8ccc88e8cb2498106469fab1abf5e902303ee981ef2ff172c50c3374e5311cd687ac6f3e5ca5b1d1e8b4a80c741041141b70a927df439be2742c514760dd9e54c90302047c435bb5006630640230593391affb824b4b55e3b0d084c003d747da2f4a013bf622db305dc5947934868b941793465b346d7cc7f6626f54baa5023005fdf3bb7a5681bb54a45339618b57acab8b191ae5d8c934e3b20f1a44664a0279eb6e8f6da51a019abbf26de36a14020302047c435bb500663064023053571508a550ee905b7c0418cb322d6ca61acab384a8f2dec00c06cf9b790da8bcfb0b6e5bd4c2c89b6e3a35246924970230265642dbbeb61c9b14c13bc359bd8ba21cec81f1bce9b5e1c730e2466b6dc8f063f2ed8407b8ea167437e218b71e653f0302047c435bb50067306502307f73cb8c74f54fcae60b23056f5b466403aac468db3264ef6abf0fd00ff3895ab8b993dcd0457632cab99d2f151f16c2023100d2327d1713db85af7753e6afda7bc340454954e69bdd7142d31deca3baff55596ff3797c8d24f3c2f40d7c482242f4520302047c435bb500673065023100f9abd89de4fc19324d86842d71cef65c43a59c89d400ceb8eab3bca582729a423a95213bc0953cd4099061c093a2bf1e02305cdb97b65da7abb1a93794e5abede199f59c93bd44c3eff734f4bf2f9e9d35e566f395131885aff6143237f3e9b228df0302047c435bb500663064023060b6e1c72a8b108f4a31710536ae1df67fcc836c39a8a81d391922097d467bbb0daf44f6a9bb09492c98fe75f30005fa02300e428d605a45eafab3b1d72527a19f29a6e0712742a9ca5621600c1ddb662c38ec97692e8427b0eb8c59b6f9831bcd890302047c435bb500673065023042a6e9a7f1618c13089f717fc458df7f209fa959ee0e120a0bde006599ce4207e08e92fe66e9d26a0a6c20c7f85095360231009092e6516e3bd5020f25e8bd901b4a7adfa1cc9b9c0a0f6c6a7f2dfdecb278f8af3e138edb46f796c15b66a4a0c1dc910302047c435bb500683066023100e6dc77582d0d1ade13ee37141809b717b0f0d967491ee236aea7474fe857c44d31dd971f0e00f1c73524750128c610b1023100fac83b1b57c0d8ee245b81d6031c0e59d35b30ccdaea81de4fd5cce401c57c1ce33e8dfdba4051dc7626010fd25ae3170302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304f6d9ba7ea50253657b0a92b8ad71a0eb4e1c4a4ca1c72f6a778f29bb7f08046d5fa9ab95a8810116d5a10c7932300c6023006ea9fef79b1f8944928d3dc50f2f259dc549e38ffbd4e31eddbf063a71fe1975d3cd2f5bd63d033216a28cf005fa9650302047c435bb500683066023100c85f1eb3aa681ed07556291dd09c451b75ac05e462f7f2048c496f14431c8f240af0692e9788cc183a32aa70c1193f440231009daf6d6ab70c648aee6b579d8f32418336a6598e9607619e717288dfab9683bb2e151db7cefd654d85403317a3e60d4e0302047c435bb5006830660231008f711fd310675aaf3c676a153e5da2bbd47beee26d7c83bd9b9e78c95c4e1b245ac4da641b4c9edef5a279b9bcb2d1ec023100befcdc107375106d2841ef5cf8315223ac60bb3f89905641368983f890472152854c8e2c83390a0abb66f6bcdd12806a0302047c435bb500673065023004672db4dd5de153a44756e8a7793601488db00143b47a9d5025896c4a18f3bce577a653b54799d1926788b01477913f023100d809dc4755d534d4f26ad556cf181a51cc85990107d3e2cf64fabc2d3a5e05e6df677d3acf826945546b6b31703c34b40302047c435bb500673065023100eed34d5fed0acd80508155b6b7222153775b98eda3db151da05fc77f411f58ba759e6122f596cc323ce46a3d0a3582f2023027b2be1f2a7eaeebb2b5bedfda89ea579c854013b5660a59453f069e4b502c82f50b315c4acf2e931ce0f8d61d6a22ca0302047c435bb500663064023062c12b827e344334b425f590e1fcf8011486d7a0b320c48550dbabf5cf2d48c7099f9d3d43f1b8da6fc32d44fc49ce5c02304c4cbb560a188e83e57734d68965c85c495a6796ef3a27eef7727c59856929bed76305d89601a23183c6e387def9c3660302047c435bb500673065023100901be44338db65c9aca69ee2503a25ca04cc98c5bd9477aed1cac86c557d677e44554694b6098b73fddcba5f74bb2af102307e810f22cc439fefc7f9faf01ae5c4da0ff90a884172056eab0cf5b49463422397bb99d0513386cb46da947d2e28712e0302047c435bb500673065023100ca826f82ab9e88e72225ed536bd59bc5dd0ed0250c2668d79ef3af499a28e64da386848615f1b31c6bbb10d42837cddb02300a0e896212f56b5c0e7dcfaaac002e597cddc7789e7effac9fb533e6244a5bb20c91b030859737cfebc08a9d3f14c7860302047c435bb5006830660231008ae468f5d16faa3e3b9f2c5966a4c2a4549caf0c813d663c899b6b45262f16e6961e94881ec3e2d963a38aa54c0c2629023100c661cc31d09dbf72508693859642b7ea39c38e6951e07783393d6027386fa5047479a329410c3deebff0a57b519be7790302047c435bb500673065023072c30504de7eefd1d079f234c503cefc546116574f9522d877cbc200cdeebda6b306e651a0e2fc3b17c558a7a2706b69023100b7c514a0fc4117c1cadfa59dfc282588176206fa8ae8339cfbab1fb5dfb091e55af09d4c9d1accf33b394821e79ed3290302047c435bb500683066023100cb889ff29268ec6cd1c391d1cc2e37ed2a3ecd1031755fb0e1cbff044a49cb9ee4a0bd2e84d586b02c231f73c19197f0023100ba2dc546af565116f1e4a525b551e7bef5cbe2a4c60a29397abfe85d68983dcc6e97457acb56a38357e352159317390d0302047c435bb50066306402300d8bfdc67366a8355af61ffd3e5410a5d36c89c0d75f7992a4b4e937a4655188e2e681773d40b9029c0697267d653da00230459973e32996b18dc8032c3e4188aac87744a76cfeabf00e56cd7ad510535a936676de719932fa58f7ee3f72b120eca80302047c435bb50067306502301d3f4289df6a562df3b0ee19e9ee9fe5f561211ff916eeff21e929b63379d6c2c90ec535820026459cb246903ddde408023100fd0dfe230ac326be5a6e172c341bb019df75d25578be0239155edb1ab8d5fcd33de52bb154856c39c24a0e0bfb348cd00302047c435bb500663064023076faa35a6ad49ff0ef5709a3f70db112d0b9e73dd02a47088e84bfa9951fa1b149ff610aee816c1c5a6a37daf1c5fd8c023015125aeeb149c6702411a2c91f1764ae3e8a0c067c46699192a8e39ae36a135cf3cdf7cf52f4006cc72b6e17f3a16e4f0302047c435bb5006730650231009c2d6f42d4cb237933dc00366f8373d2e863ca82ec93bf48b09470214cc5285ba9581af1da73b5586c863938221cca5402303621031dcd9d20bb2dfe28c9866fd4b81cf4f3b33cc9cfb5e0cc55dfc23104b7a2791fbfc8c85234c03c793ebc38291f0302047c435bb5006630640230501fe41f386897c997ccb19f359de2cb8d626ad2165707bc6c6e02cb78eb2665b0c0147e9ea9fab664d24414a1e3d46102303b4c9ae686c66244ed99370b9e626bd1187d72af76a3130b4aafae8e32eb31c91e881f67865365255de3cc8c2b46828f0302047c435bb500673065023100906056fadc5893265123aaa40c69197e89ad138a4a5cc251f75da96a9fbd1de7b05e086f71ca35cdc392a06bfabbb8c5023021cbc729b5463f7530fcd13a98fe29f90d774f18fa4d101894c1ab859a0b256eac36e8ecddd3aad193caf025dcaa19aa0302047c435bb50067306502303b9708ed4566d04ea888c2f03050b0eece6c6901ed2b11810be6aceae03401d0abb9fcafeab7a5777f77707672c20749023100d7ab03b252a9d0dd6344a2b7e1bf45aa55adea193e9ba20b621159050f9cd3ce2ed522cdc936c4b49b1ef95680a72a860302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008bdb458d0df84518d5009dde808590340b4c5e51e04dd6f15089457bdc41884383814c390af5667ab4077b2bddbf1cb20230372f18093c62d7807a5db7af83b8d4db4494ee41eb9aa1789d24ad68ea2e5975573212fd6549fd2c80ce2192ca5ab6e60302047c435bb500673065023036e2190fb26561d070878fbfb217f7a8dbbd9685cc5a1bac4be2cc6e9dc7d62a468d0863fdab8f0b1b03afeb276e03d3023100afc1a5f1f36287891b44347abac4f78dcdd34c9fa10cbba5f82126fcd3a4e2f73eb4e327d047a415d171a3db0f97ad9c0302047c435bb50067306502305f67e90cdab37c4f984cfe1c5d66c910104b6a376735a8551a5ec4f2a3ef5b14b8eee9b0c31b4a1f389f1e654a07e6e9023100c13342d913a1fabb05eb0abafb21272ba6cbc40c5decc838d8cf34af672128e723d53d7181513461e27044846ffa80160302047c435bb50066306402304d698f2391d2ed33294ea49ac399acb605a0b05e89ec238efb6da2328c05c1bd408f1d5d68e9ab502adff9429a42f76702302cf81f44f8ea0a8ada095f5eaae19ead910e138c02c364abb03ed3834e29057e40b4b74fe904752c2325ca461e9d28a90302047c435bb5006730650231009d2e0b60de3894fde8a70e0192470cebdadc9f2073a446763a85edb1dddc2375722aa236551a49b553fbb730b21a75c602300f16998a3e0901bde0a0744dc14c1e56e49e58a258f66a1a85295335d5e6a55e7b24f8c02ad8d325912faf96fc9616550302047c435bb50066306402306a4bb6bae126bc00321ee5d569b59783477be1b10606816239f7bde5d14d1725c3c77eaa387701516b1aab6b11f3e8c202306de41ca465067cc5ed39b960d8e12ee9cde25ca6dcddc9d73f325627c62d92719b8ceaa85dcf051a72d9565a887019890302047c435bb5006730650230128cfc1f854a736f3a9b967d4f272e0cd9922ccd0f62acef8ed4e47c1da1b14f3b6ab3363bdb260fb273cc2b379138d6023100e13eb9705e0ff61e09be4d32668bf60ea19ab0b1c9dd7184d7d8cfa7efccdfe6a99d88c3ab564dd1508368a4bb8f9c100302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302ec00c1ec4bbc503447077397295774761f563d663e78daaaceb07ee45e738d8e8d84b3e4e0a062623d6a55fc942210a023100adefe5a71f578109b516edb50c29ea0f62585c3bc8c8dfe31bf2f58716f997de90aa99fd655dde3706388754726276110302047c435bb5006730650231008f17b5502e75c9f7057788c1c786d7e526836cce4166bf6a5674948b16cb0bec29f8cfe6ed37ab35069260130b4da1f002302d728c1481d98a7848a554f6746d760f8134aa276586d0e2a12a8fc873a6ada4a6da10112db815f12bbffbc651aa42fb0302047c435bb500663064023030ab1efb6114fe316216ccdc1e5bdbce100e82f5f14955eaa73a46dd69910c66f2e146d5fed03872ae7e18eb236db0880230420a7a372959d9d0f96d26f40e674b63e018c71b1b82df2130d8b0f422aac74b6aad47ad45dc349f6e3b6d63716281970302047c435bb500663064023074681cc343dc88fad1268c1759a56e98872edd41648a1cdec1ba7c82b84e9fcd4efae6430b73aa38cdfe5a8911b5cf560230627c571b2c90fc68b242c105bb8fccae7996e711f266dd731ee42fd317ff971e771a35817d47b9dc00e8d9f19e78513f0302047c435bb50066306402303c85b375b7ae787abe2e8a190a3b00473b3835d8f37a30d85bb38dd1e4e40ffb3ef27194ba1050fc67e8240c4a2b9fdb023068790985cc8bb4c33f4c6f61c10aaff10b5756a26fd1f0cb7581cc8c9f1cbc9301f9680d955ecbb2de089fa2b2d079ca0302047c435bb50066306402304d44b8919e08598903cec7ed7ecd19dd98c5eaaadba13a708fc6fbaa0183ec7aa3c053fea1e550c5f39d8082082bb7e402306e459aa08f37a0d958906768e1dec66b5e505fcbed554efa7772cf60c50edd942b4a9e100c1c27d335c6d90723027a3e0302047c435bb50068306602310090f8ab55331b0a4e2b36de5b8c8069d821b430e8d9d26615b9316e955afbaafa3668d463ea4806e098c363106f181766023100e105ad1afefde82789845e35cfc528857c9fe3d66b546a7759758de184d2cd92b89764eab29f13af876ea4cce491af470302047c435bb500683066023100e2b11a1284729455b5f2bcaf6c74d305693d81862572a06cbbb697abf65af16ce4f866d5eda899428bcccb9e17198996023100dd5cd9454cb3f91f6e7a76ae12932be59bec2bf3d6bb08eb74e6fbb260e863a2e198390b64fc2a26fc32114015a6a7890302047c435bb500673065023100b093ad4770dea02bf5beea678724a30c65dd03338d1ccd25c1ad7333dbda5b7dc5fdb4e6106a3f0adea5767547ee57a9023078bdae17b5e267b000d05243f45df4dbd1fbcae328ea434c8fce71b16139707bb28be17f90671a3125547b1aac8e9d820302047c435bb500673065023100cb6b4a46c15fd9f7bec39cf4c10e85d51b49d9d3b95308e6e576cc43ac60da7a5343c12ca60ae5c071dc963db0dc339f02303d0237c2e196422e41d3fb86dac5a966d815eeb4332aa6097c49323bf216e37dbf063447f9481a61902d29b2f9e7e81a0302047c435bb500673065023100e253102b8ca179a1d73a4bd83420f6229767ab6d0392067a3910e7f01f320292cacd2dcffb5fcad04c866fe3dbfd9fa502306ddd0905a43750e00022a74354e3be91ef0d167c1e909bfa3e85f6c160358eef0b2baa5d4824adf2deff380cdc390cad0302047c435bb500683066023100bac029476dfbc462b6093caf084fec2612772a3148a846573acc856223edfdfbd732e59ec4c21668015765eb6384210c023100e4da9f15c5d3235b946d331c8d0d81b68c14e136599059a0df6ff24a72b9308ee5fe7e74076188aeae32622476a713ac0302047c435bb5006630640230159accae618459af105be6c5eaeb45aa431d403fda7533b95e7156ce57e49da472f0c59253cfb16aae8f470ea668ecff0230477673b0412d3bca4dd7462ead25506d5683de17457567206e96bbe09d7348cbafd76d5c8356d8fd2bfcfe16c7c171170302047c435bb5006730650230627e5239a64b61d0b30a83adc3c4b9254252c373dd7d1ff43a0eaf6edd6bd8ab51e70e3f8c8878d17c64a96259eb6aca023100e53a065abb8ac604d4a33f23e1604dce9fe15da5bbc000867a50305720989baeb71a6b0c1d9087425999025bfbd8c6280302047c435bb50066306402304f5e3e47377ee5b0c9ab50f250091e8cc068f6e5d36bc6de791fca78c83ada61e0ce92162779f59268157c2fabe339b402307ce9a1ae5088b0d7824386d2032a74993582eaaed926cfc60d19c026c5058bb33e843a740e9d6956325d3c7dec26c6ae0302047c435bb500673065023062d4b5cd8fe83ccf2b305f539d80b7fa4a5c906de63dee6201dc79a1314b4b1d666b8c097a002a657adbcdfbe587de07023100ecd6726b73b606be98bca78a0d4d3e7c46f3d27dff4529233c426f7e310d6ab570df3b558fc5d2f55b535c1956b125f60302047c435bb50067306502302ac1b34a8aea9b26da27d08717bbe956e0e8d304c3ae9770f137aa1bc74de86f1e92ab68e1d675cd249d24e488f35b9c023100a4a07f26b96938d46b0234c8c42a434e8bb2e1e4e248bcb43f19ca468cee4e547a7f69fb6d813f05cf057e08ba4b5a350302047c435bb50066306402304e38b0f31d6814f148c693638b54cca5822c927398c56b9f7b2ee01dee8dd0a4233bdd7609f558c757bcf3b24ae0d71102307120f0009d138ca6e897221a53ffd7a6e93b87c53b9a8bc65bd262f0997d932dedca8a4554ffea59d7b43fb237b5db4a0302047c435bb5006630640230656306506233ab657ed1f56cdaf53286b80dcda5a80bd39164251413b1cf7f43337b86943e5d89f4fb92386b91b8797d023076cd1efdfe6925d3541bf29c83d8576d4a52381ebf0cf2b0f0fd9e11a4c619c3242f8fdbb5e28b6d2c66f9f1baca4fd90302047c435bb50067306502304c2c636254b578918e07eede94d0b0c808da9f0c9efe00418416308b778952abf0ed8a2611be3f8f8b739925de5d89cf023100e40d1656c4d661faaec4afd7f9d04607482288daadc891814c9d10578f2153e985e761fc773bd1fc2a413dfa3fd01b6d0302047c435bb500673065023100b00e234704b9a981e2f9a360c0c872b2991604bb9ebf2e88a355298a1afa5c21666f3a38331a17c2c4bdcafd7bb3b45202303d6d00ff0577ad48afa15dbd10b800d552a190729d37170db886e2b739dafc8a9145de0e50627c4ad1a820729624b7620302047c435bb500683066023100b951c0ed58881a80a92d3993dac081d1639b8d282e4a508bb56b66c40470b8b6a7a0d2e4328699b6ea5c282dd978c021023100817ae66267800db74ead421e65a936a94babec01239f33124350b6278842066879e79e4acc42e5c21b06f2ea3c8e01630302047c435bb5006730650230349993bde068c5acd1120132447a0eb6730580a256073208f005732d2df1f1d02e9816e96255935881912b3a416cab2a023100ac3052f96bc384ac9c36fc456bb158e656362676fcfbb7507560254c53df9e55c5393b7b71b0281e32a24aacf69077200302047c435bb50066306402305c4565b70f6b094ce6a2e64b0eddd1150f8155fa1023e08dcda84b28a8883b96838c006561be1d3bcb58ad844c345ac90230730472dc75710d273cf3a8dcc8d8aa047912b1b55ec97ae41a399cca640cd5bc75ac82e36859166bbd631925fca34b830302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100af8791323125a5e29c3c384f5f2fed1adfbef18cc6a12fadc7b6ded96a1838e402577f5d25183eca6b562439c01e22bf02303fa5d957b8b4bd07bb8e2c10d4807488fafd383cc815749a848940b3a4c6577fd88b502951d8d2649af6575daae381d60302047c435bb5006830660231009fec13eabfc14c6945bbddf9a2c7ee890dffde21fe536162130bf0aec7e85cffec721ce6649b082a41c6c2641b6ce754023100d45539e9b57993063c312d72faefddef9341a9ef648837923f77c5f4e06052d0b2a436f9c7d02e8cabef664ba97e3b210302047c435bb5006630640230756b9b249d5c4a6140b64a56168c425151cfc532b8e3c47b7bafd1339cb9d28745f7861d14fa6a654ce71d0781f45e3602307a329b348853272ad30a608c9a7aa0c91830db5ea634c64ac4a22e00de404c67e43f4ff417e5861bca0ca5c4cc98391a0302047c435bb500683066023100cbba3f61be627f11a797ba017f074987603f3f54701d20c05be3a7b448a2710610d40d0206da26c2466263b05567cbbe023100c079f11dbfefd0c796b98a66537985dd83b65cab347a48af3e68b7ccf735ae21dce4a7686f134d573b3f10e128d8a4380302047c435bb50066306402306e75871136747c6fcd31beaca82a647349abb42cfd5d1fb7d30fb4f9702c14dfed1b1cecfd09c9062b7b0d0da714200c023001c26d8e77e0c814867caf01cec2e037fec0abd8b9f95b86a26b4c5c66ee67dbec6f13f6bb3acc8a4d64bb85d90a1c280302047c435bb500673065023100dbcc352ed2bc6af2eceb093f5665a2714c8db405694cc1ed73904b4e4b5e0af4f1a1a354e050f54ff4f9e16bf9599f3b0230115e00e13a6dba7d250d0215da0a7ca871a670ceb14fa4f2a69f779e9546589ad97e356247524455d10f5c003fb656070302047c435bb500673065023100bed62aa5b41807bf8cf787a57c63c98cd07af65daa040896f8a701b485310fd6cbcd4a2969e1a4996a7bf7d907df97270230382b8dd16199d3b870deb907481c42e287b98f2b4a6f075c63bd9990c0c36e314f004072a30860edeff0bb98185fdb240302047c435bb500673065023100cbd0ddd1bc896013388d97bda70570f31b37d82aab3ce91a0cf8e8386d8ec91b513be15b190f1582925a3508f7d0df4302303b9c000a815e8640ff789159fb1d0b05d9249a58347512030b18a0bd2cb25221c61f8f57805c65d143110845e48797f90302047c435bb500683066023100ee3fdad54ca061d25943dc8ce8e4650792a844eb51470af38bdc8b3118e389ae6b3c1fc6a8ee88f5c64362aea2b40e72023100f5cfbcdd993dc30eed674e00d1b3e45a0d2853c94d360203da56b7e91c991b16f384615289696759f4a4a0a14147459b0302047c435bb500673065023100d2c43d8606ab19cb9f8fc49e0af98412aa84d43c68ac80aa946e15e7150e97b72291c417e2548fdefb7bb8910ae1bee702306a1edfb9bf3a4aa094aa4ff9bf87896639e15f6239d53e2a56b12133f8abbc9e4e64b9a7f9f31823806c5ca541c05f740302047c435bb500673065023052795f7526fe154b1fa84a72fe4489e3041dbacbf5214e949fc188108777223584876ee236765174c96484b1944185650231009043f1c3200f67c3e5debb1a37fdf6120c9f5f04829d1b4ffc2965dd93212594872ca5de97e4e8bda0ea515ef9582b100302047c435bb5006630640230383ae7c75f24d4d573578a3b07da5a4833ba243470d1102e49184669491e0193936363090181b6cb7c23facf522c0b5502300f51275b1d3a6c5ee7b295d5330d1ed8ec7b23612d9830271cfaa4c7d96f524ced557d3fecc6760282d19ac7699da97b0302047c435bb500683066023100f2d25f17b278c8d649900b27fcf3b85e2e4a3ad84bbd704a334c48187d2c7cb0675be1861d4fc68c8989222b375655b2023100eb904e9d1a255ca948d99eaefd9d4dd1850a526f133fbfb1c8470b739e7657634a01ae667fe4f93e65f17158dc34bbfb0302047c435bb50067306502310081511c3c6e27dc765945187d83b5ff05cc01a9d7291b029e5ad878ad8fd6358349e631cd2778d7b18d9c29074d37553e023049487f9bbfba3c4d4f16e139f61ce58a0a51cf998d343400697c9b56daa57a10b744e2439489e61f0058e5be6fb27dbb0302047c435bb5006730650230138c51628b302bf2d897788a9d1192244996a4fc9ae65a77d1a180b6882f58b22f58e9ed4cf4fff650f759d8ffc51e06023100f59753d0b28aaeaf02170b113572ed40b52159ef92a8c1c825cedf13c94f46303b6d362bb34244afadf93a0e1e4023770302047c435bb50066306402307ab32300b351634dd2287be54671ac3d7a2dcdc60ed3eab36cc620f7a1b8ea2b5c07b83ab623a3d59621c21058a3673302302e59f36a60cc1a1847baeeba6075267853ac33b5f5ab4644e1d46b68da41ff5388119196e435667aeecfe51e1e4ec2d90302047c435bb500683066023100ad5c0f02f82ca9daa8ae5bdff433cacd3bab14cab68f2637919557af7e0377405a16376ff6c04fb6dfa2ebb4264d8cf30231008fc8921457f09cb962b126b28adb4e5ec35bc6de37edad467846ef906cd398860abdb2ad005c5e6f5274f3fe3b07e09b0302047c435bb50067306502301e3510e19000c5d96ecb557e41d2f56f07aa4f886b619795e01d5a41eaaeaf52d716d4a54bc0d48c76853eb223980b9a02310099be37a29dd5a9d41dbb38fc5721b791235ef904ef3350977ddf21189a1c5e3f9275ebcbe1a6716c395dd8469e4880220302047c435bb5006630640230187913f859d3f1522b358fd82485376038001bb43df739d202519f6387d2d934e87d446d3b4a14de72c0d69ce43ac63902304ad536469135f0c5d85fbebc642b167b1c51806469ad0111047fb0dc61e3270ee3ac7d5e824e354b44955f618599a6730302047c435bb5006630640230503d3f9b4e8139128067f63f512ce70681533cd84b90593b0e0e5dce7c640fccfc7b44bc0edd30ea3aad884d27652ae202307c23df85f9e86a9fd9c769482b226b0d3a9562bd36adfd0ce10ac227bab761864bda522587446d531f2ab1029f017c600302047c435bb50066306402300c60f436dbd49f3157df26396c10ef10d10d7f148f9d356fa438c3828321fd05b79bb8857949d8489f12dfc824ab59740230584747c4b72d7cb1fa7fc64d074bda4a36cd6c7e6f98f6d9e7b5aeb55daa29c353d42f62d257629c4b0dab9b2b5fd0170302047c435bb500683066023100c739450515ed426b4a2acbbfb7e1d373feff7157b49d0ce28a5e7e03eade02be5451869d8ebddc4e46b3a491f4c4c7230231009027dfdf77323f9293754d20b07e9234c970b388d1fc5ba7b55d23e6d68f3ce1e3db447f1b5978cb82ee2521c4c9a59a0302047c435bb5006730650231008f745e92c900eae4e655aa4db1b97819f0bd7c36e364f769d7ce29c632d31cef63a0457fd152b7b893560c8adebf5a23023000f1873798939bb0ecba4b4628e927b3c593a2ed1da3fefe2aebce8f0c91aa58e6d062833197095ce02348c3d5b2b7f40302047c435bb500683066023100d9c472f878d4f1274abefc6363ecaf6e006309d3b0099b639a9d633e9eebb3fd69490620d3981cff42fdd453906e0fc102310095c3f2743014e2ddd0196fe4b403dbd5a5ad3752ae787ac397395381613735f63091854610439dd8096fb2f2e253289e0302047c435bb500673065023100e09c02ebfd7dc69ed5ea762a669eb975b0c9811965782c8a0334563d9852eff19b978834370a15144f844de227b3db2e02301d081eea0ccf6a67c36ff2d433c1b61330404360e6598d1be55e4907f55d0ecb9d80721d29a50178cfced73263059f580302047c435bb500673065023100a103fe90b7af2de9d14a7eac39cfcba13f152636830374fee84107c7f30e6e1feec9ceeb615c1ae990ee72a4c535c50502301c7e073bb54c4c019412d9d004abef3aaa31f77fb13c6752e056dd814bc87d015934cd38b654b08abf251ce2f962a80f0302047c435bb500663064023051d552609d90adca9e8721fee16986ba7ed001b7425633a5476c7150ea7df8eb90b00f2af3d07859959d41d806063b880230272a3f867ddb05c19cb058c92e7fa0aa06abe2ed98e5e6637f2f7dab440ee3d51dcd3a3b64e69a2cd4a5586023911c9f0302047c435bb500683066023100b6292f9cd364c05d135108b1c674079f4b5a54fe5c44137175a3a4b5b6748867e1b5d9d98c100f85e282c35335140d4e023100cdd56de4565ce7ba0fbe5b7bb3282c87b536be98d902fbb78cf57ceebec5ebb3905b3b181f4940fdd7b27b4f2648d39d0302047c435bb500683066023100fc49f2b3e159641cc1d488df70bda1fd25d75b363ff879bc978d60e7251b5f6610f002f9267ec395c3c5d9aea2562996023100fe230f824a77081811f82d1c913e06ef051f246dc00d9978a8655b99430051f02901581aa9c741c047a24931288fe6be0302047c435bb500673065023100bd2b328c74f59a7025a402c618d783ca714f621afcb28815abf95c703448753162e91fc9334075cc59181de2e0f014b8023016ee5728ac1f66e613774741cbf6d918192ad69eb14d6d596e6f736559fe60c847582fbfc2ac9afd93b7e645368a35100302047c435bb500673065023100da7d76738183f8664598e384d7c805ccdbf28a615864dc34be970dc631204cb783e19e01955c5354e5d8f843ea1c45c802304c962591b3a919b43feff850ef20ec32977e59bff878a40dc4ac33367630d284e9ef313483ed7ca6c6cfee4f289afb540302047c435bb500683066023100a0a24a4305332d7edbbeeb8a70dea865b004aafe43a66bda960333b8181ec622eb951f8a2674e05e539ee687f2a65640023100b9460ebfc88b575cad81ac1086b427eabc9be19579f6e11cb59102f9150490014d95b8d9a2b1fad8644607725c5817c40302047c435bb50066306402306761f377c5d183119dfd72ad73f66dac1cc4cab0bd1f0fddac7307a606e8315df860cc130b75971fbb99c8fc901ec1f90230447b76f65af8f67ce2ae880a0a42b1f9f5b95d7ba263b37a1674561f25f87815deb36a46db47702a9ac4f061816f571d0302047c435bb500673065023037c4d7793c71e640cbe6245ff0903cc457b137dbefee3a76c39b34641df4c8d7de910bcf244385a619476355e7e55aa902310089eb7c0866b20c22dc1571420a2cddd7db8dab86feb9c049bcfdaf9870776979bae0a4c65a40fc644bb0dafda388bcdd0302047c435bb500673065023100abd0780431970a9d5a65f490ca71b708a1a83729801566f149383e63fb6b938f4ee7f1f1bdd571d43f37ae4f4a0d0edc0230510e8c58b3feb6e4cbcde2459f64cbcbf4759d0ce59a70983abfd151feff8af4171a782d84c21abe10594a43f822db820302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310085ca42cab375416d84ee8ce48a3ff89886dff2ac6f62e7865b5f573f3b8adf9cfa381083235a7f019b0f8a8a973354cc023060590b8ebc71d00f2815acad79da9ea4e32cd0372231fbd0b42304a8444f7a8f0010c8ad8559f1d58ac9e3d36096083e0302047c435bb500683066023100e1aac47b4cfc910c50ad1f08b1004549c858fd34843e30f867b86824a0c0a2ba8a7b052e5a0daaec3e0d57ea735f34a8023100d23ebd7b635af675d17748453dac21aa318e790da99ef549cf5a4c4bea3a8d23aa90c397faafbf5768b5b295b47c3b020302047c435bb500663064023053a95a201a3c21c2cb843ba82129cc612cd042cbf4b447ab20cbf84af80b5ce1954f9f3b70c6209e72e814da82c8fea202303f6b1bbf5dd8648ad0d092a8024b6ef0edead3b6bc55601b57289195221487e1382679549cb61b5604df1b2a3ec630b20302047c435bb500673065023034d081db9e5bcfba6aa7e3fb22bfb71fc6ff11677e83583ae2c6c78589e5fad288020ddd90ddffccb34e3ce540291177023100bb6d78e4a56703ee5492dd0c6f227cd2bb138164258d10cff7fab31db05ee738540bcbd04010649d1e8662d638de1a360302047c435bb500673065023100f4a96b0ce0d11473dd3dee4c65e5b08564f1b008b07645b3fe970c9523f9f7ad6f778ad36acec95f44f2cd8891d609560230526f661d99fc60a80e01056ab35276652e9b5b3763f14b376328707f1bce6343a0ddb48dd018fa5507b6681e5f8b2e220302047c435bb500673065023100ca279a14c00971064f30765ca5802ecceaddd5b4f8a17750705f310e8390564d94ab35378d1b4f385a4af042140c83cf023009d3a028733ab91b2e2ec44af6c4bac92d08693dbba1d21af763967b9851534182645c27144e84c3339dfa188166e8a60302047c435bb500663064023007a0fcadc90d40436b1378d6200ee3014e3c5360a32410c546a62170ec028c9c9d155aaaf4c0973b3725bb247ba2e4f302301d1768871f8cd3b6386da99b6db106cabf8496e92f118dc67c8f1eb36a753952bf03eb5375bcec866032461c93866e790302047c435bb5006730650230647cea2cae90e2c10b325cd1afa56e2531302559e1da4cfd399aa9f00b79cf550bc5601b45cc87b903bad2869e9cb4cf023100949b8a07165d8faf98badc3e2fbfd02d3a31ee51befdc77faf411cd82dd7c5a607bb3cfc603bdd60ab16c2d5d6d7f8110302047c435bb500663064023064436333c0ac0f43722804eaf58254e72906442e1ba9a841a55b43e835131287e80b325bb99ed781e7d8418c06c5f3d30230694a75cbe08c3bbd1d5004ab4534b79a4e642763229820d8477a75a288f7e964df180d2eb32402c649ee2fe2ee187d0c0302047c435bb50067306502300c5aa9e1a3e11d1efc223e5d18b16eb4c6645bb0a8ffb63bff79227f0c559b60cdda21484afc8018dd558407b29d7f3502310097ced2727d08789d9448f45e1a5cd3e961eeb0c80ef7b0592c26863b8d809b66120cf1c8a3d6173852700c79a6531eb30302047c435bb500673065023100f77bcc88f7a70d2eee3512ee59a2bcea3684b4aa603a1d67346d77ba497ec87c194b07dbe320860ffa22cb0d7dbd4f4c02302533598380fe9518f1e48ba3a32df2a6ee93b2b82a9d09ad65e18ddcc470718375e3f7771c20ecf1f95df4de852b0ae20302047c435bb500683066023100b1f1a7da50d8cae4bbd9eea967aa9d257906d987985e46279f82f3eeb39a10680fc9aad841988b4c5ffd23b4af0f2db9023100ffcde17ef0e16232aadd3bbc12f0aeacdcdc147341ca1554f1e2802fa3b8f2c4ac20743e0abf55ca5c319285da6ca3a90302047c435bb50067306502305df156b6d6581eba133c501e62fb428793394e83ab10e5fd3a20dd570f7ca3d287ea4fade33d1665cd68f70296a8628d023100fdba82c02047968e4b2a0d96a19d51ddef91503721eb0b4b94b87e66be0a80fc057d549a9dee68416abebe29f35b5e4e0302047c435bb5006630640230058d094c38df7a61d47d3ed1148657222905ba3e1b446e0ec35286756d303abf93449375734f48b68b41642875ef6cc1023041cd7cac96cc5762837daeda1c597617e9093ec9e488b0be3a473ca4021d19e5b2a99022d111c40b58089703ae190db40302047c435bb500673065023007f2da3ff9f1288da4dde0f2364209dd37c14b3431b60ab01424e7166a0819ded2c15ff303b74059d16bb04614d029f0023100859b95b987d9afa1d927474d4ff8106e47d8527fecaed88f1e3793928144a3150d71b4c7aa920a90af4b2c61ba445dbd0302047c435bb500683066023100984a0dbceae83345987bffa542f1a8d32cc10f1f935f2eb85976c1a7065ad302e62448a223b95c059970580c948ca458023100a1f98ed6fc95a4a7de1330ae799b5bf9d1695b40cc76e263cb503ebfd9b3a798844e991d3b30af98dc516e43e8282b1e0302047c435bb5006630640230386e62d1fcbf0b36a8dc92d411bbff4cc2bdd710d2ea17d84400c4a6ff4cbae3907409637127f62d77b3d7252526170d02302a3c62631d97a6d152281197d64e19a6238ecdfc1698fb8abd61139772c2e2354c4b4f06923ef46fff23c6892e036d500302047c435bb50066306402302c56483a06d6ce725426f5391844207f47a69b9287e6df2254235c3a7b40a15f39cc050f7238a7d879d725b7b9f725e302301a03086c652b1e5bb337a490ba9d517a302b0a714cf61f29d6c30424d00194c7f17a8bfcf8936a8e6e0751f5512a6f600302047c435bb500663064023060bf65a6283d6aaed2189ef799ccc2f62658d7e69ed3433e889d94b568ad7164dac0626f41de820f520b642c04384b2d02303edc612087a38939f4b868aac008df8469b3660082e0c36c5acbb2abdb268782ab40ec0b15fbe63ba3d5fcdbb8d190470302047c435bb50067306502302f0db50e8ab029404b956b9e896a7ffbd202c6869794f1c28f03019ade67f45968e8c57ace39458cd8ad02584c0e2014023100e6653d46b69b140986fcb438b2e35ff2bf8e7ba8a3ee9393e0325079d712173f96139e2ec2b8fc83c0020bf32c9c092b0302047c435bb500683066023100f72c3757dd27d14430e6a721c9106728237633ded60165af6a264770a1b2c7d811668a2235c8434fc69cc71eb4d8c139023100e3871c792758b8db6c607c944ee550c25145d911857904255442b7ac61449b16a08d09107cbe8c8d0160a9f74135224e0302047c435bb50067306502303cfd65eb73378343d01b5c41e9f201915847efb04220cb2f86b477ac73ba93bd863ed3e100f0bef8d88a435ae26cf32e02310094a64f07697bb76ee57aad91fcfde6f349758fe3fd33b07bd9f8ceb3b0c1c6c0de28a18c4b300cf0151840acd0510e780302047c435bb500673065023057501ec5e1e0863a5c14c1b5fd18773541323bae792644a889017c73d5cc794ab94fd75886e5dd96cb5b81f3169e0ac3023100d469c844120ca1c823055bacb61db2d16f8fb15c8a2000c16a0411c1f11d423376e4652c16a99f497256f3db7ce2f23a0302047c435bb50066306402307dfc9e3b45b2a7740edef7f5bad9ed8bbee1887287fd6e8a7a68699fece74fa9dca43844e4f8823bd3474c2ff419d0230230322273f9c5c68039729f1c4f1cb7d9ae72d2f1acc0ed85f4260a76d30764b6d1f0767685ebbd5900734891ac201329ac0302047c435bb500673065023100876facf7f551dce5d9f27c8773568b6d0fa8018c9157cac5c35efba3043e2064dc8c41a203b9e32f51a44840e54d32ce0230384f7af37e688a50a0cbadfcd3914e46223010d122c959733dbf1aedc8238e0774df575b124aaabeaf0ef3d05598af8d0302047c435bb5006630640230210f611474ca30cd25c7c415e03df2271683818c34cb04f2afce4513952a6af8452ce540678c85890a856e51d5aa9c42023005eb15436763f6659483bb5f5123ba162ce306839d5349d725678878c09eaf77001b4a14e79d1495644729c9f003826f0302047c435bb500673065023074457967f12497b937ec8ee4e648a4ca10176437f2e683b2a05d8fd54381d767d105db436dd67e9cf1317cf0ece1f58f023100f7db83163822f24b9184620cdb792d8fe12cdcbc18f9882016d0b951b0844d76c9ced9f8655462ebdd89dea840ccaa320302047c435bb500683066023100db30d57879320605ac46c98b303eee0fa35b6d892e1d21a20314b195a37d677367fe596d27bee108d9163e9bc6e71e2a023100b14b6ea94e1718f64d88e0b5e0856fa3fa1670a113b8022c1f25fd929bf173f111763962af88e08099d85f349f7b42200302047c435bb500673065023029c0a7b30166decd38a382a978614b829ff57b1ce1c2d8206fc7c6bcecb39dd7c71b91784d514347835df615ab265467023100f36be02a879be890ed4830988d723d076a308e1bceaac2a2441893f76a6d6cc836c04a05cb1eb4271ebb199f6ba2f2280302047c435bb500683066023100d45c14850762a166ae5641e032288706a37ac9905a18990a6fa43b40962df8eeea5da0d96749805ece1a0cdd8f92bb52023100a747efc581394050ecc08d9320d740a45defe82979cd0801a142b00af52a3e9582ef45c2e364af54a2119e96704674290302047c435bb500683066023100fa4b7f1740adb476a8fd48db9a47e22dfcbb7c51f52608a5e78e56f49843dfaff7a70b8fee5b0ab2ee4d15945990b33d023100d1dab8ed1368c2ba7f7f28089d2f0f19d7b695efd152d03d4bc0040a5110ea770fa00e0baa16d6efd082c00a312c29dc0302047c435bb500673065023100df3ad352b594cecdaf681d9ae4fe2eb668a9c60e7538706d6d3e96404da38d0b0dc0ef7169962d79fc2bf837c483cc0902306a45926c8b290a87586d50669fe4a12bebae0997b8e26379fed3b8906b5b20aa1030641b3beb27425be72075c873c2cd0302047c435bb500663064023077d5fc3ce395aa35477ae6442db3d1f3118f693641e58e3a4d03dc90e7f8603dba9b239928dd0ff4c0c7610817689c3d02301b1c497db5d8ff964c8ff8b03b6ba9fc040c2ec281d32839aab903f57a40b7006f0a72d2b5cce7d4080cd8f6ac3786520302047c435bb5006630640230699bdfeba44cd1b87d41df4cc7cc385c969f85a5941560fc5497349145797f17d355891ecb7abee708504f115461ef8002306ceb32f99c1a70e010fcbc61556ead8d163c86979426ebb5dbe34bdba5eb08bfd7f48fc35c4ebacc815b76b0d19cc4220302047c435bb500673065023100f943f34c0e7f59cf2dbf4cb1d2104e4ecbd21aa15a9d012e2931714d840be06027ebc9b39581e7843d4c12ffaf47f659023042e538ffc6d89e05f4b79045eafc5d5a7481bfa31478861210034cb464ee55e675fffbc16d3eae4dc510637365619ae70302047c435bb500673065023071e4eeec946b77b7fd4328fd0de473b68a758535b43a2cabc65e704b8f608261a7eee8ec7b05d329cbb2cd796ae350a7023100c8a136ab0a51d9b81497dab94868553497b315462e63258a67d55e1eaed9651bc943aa595f249f651a5b0592969a76970302047c435bb500683066023100cabffc45d3b517676e330b37c8f87ae07f09daa46e42cd01cd6394602c5a4721327fb3220efd402410f8b4564137b482023100965763ed181c52c629ac671190d92dcba6bfe31428a0e68bfd1f62fd217363223516d7dfea2993758059dfceb91d887b0302047c435bb50066306402303c7d63bd2063a6e1cc395cad3be7a0401db9363bcaa3eb1282aab7926bacac4f2304d7ebbeec4b9042ffd5144372e4a4023036826c7c6bb9c5455df272207644aef4e1e4508d6c82c25fd9335bb504e9566bd2f4b911878bb70c6a881bad476493a80302047c435bb50066306402302993c050c6745cbc21febeba25aecef9c9c3b640493123ab735d0b9a6059455438b72c0c9b237adb92356c3041d78d16023018e4730292f7292e98f8dec291400ab7c3e44116bf4ecc7282d4031531eb96ff12106806d2abd8f4de5d7654e21499200302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009f56dd13f3ebc21081fd25ba84bd47d64c84d118dbee8ffbd935b1f5d054cf788ab689492ba4a423f83cfcca9990d45f023100aeaddd48b92b6dd99f31ef76da69d5b506c1f7017fed6088fe7d55e354923e906779c5472d2032b8de418af184af3a140302047c435bb500673065023008143a09a710d0f54bda03181bcd76dae3d619422b2b8dd16cbc84e28ebef2f5ecb201970cf6a908123dffe28dd9e454023100b3caaaa840b4920bdbb4afbb106ca15c84fdeaeda9e159f362d989e83543f4825d72c3919550316151b2811e5b26f4d50302047c435bb50066306402302bfe5a6c48387afec8f4c4fc02a5b395b5250dea7292f6fe6e888634b20c8055f285c17789ce227cdf9008f9ffdaff530230505ded27b890a8c01f7e9b3c88cca97782cc8e78c385158ad320ee78db280f5f9ead0349c9c38c93d45ea508831609150302047c435bb500673065023022b160b82a70300485164c4a4a320f19bd2cc82241a079d566c26db7b6eba5d018c62e992a9817394fbd140a5a3a70ea02310094b7755dd69368f4578ccbdec44ff5e5c70069340fd122e3aa225944117dee26fe5aa114216bf73c96e881471892dbd40302047c435bb500663064023017194fbb99264e23751e1250bb83abdc8f2bb85886d079f53956e9795f60e9c98a1ca870d387853773a7626031b5da9402306b2f873fe3f2d8b82961d907930265ede9144ef3acabc915e02998eb71cb7a389a94de2ee973e71cc25149231c521ebc0302047c435bb50066306402301896c503352f4ad5fbdf01287768b98e639612a08dc21d31f1a7cdc14ccc6289d46606473b0045b05d408ade40dc89aa0230730f90ffac649bf6b7901492962b834f48af0f622a5c78ac818201e4183e8c14aedb599446a0187296725dcd9bc8b1a90302047c435bb50067306502304c1670c066b3802da5cf66faac71ec53c834e068a79824fb45d569c07deac7a12f6ab0fb99b4c84b0eea5cb38cdb8b01023100e4f946d376f63dcae910a51b5521ed0b728c4f4bfaa062e6e671d5b18813532b4b7d0c2a33fef6afb62e50f244b99b140302047c435bb500683066023100ba337e9341569d07a39f96f530dfb96f76eef06cadbf44e8c38bfaf0eef3e12c082b402eeb2cf98a1aa2f33763bd5b22023100dd60825b7647254e09120658585e6aea7a4c9985779b2cb573ab0c5ddaf3451dd29eeb863eb49cf39a3752ae7b0c9b000302047c435bb500683066023100d60f929fa49e7285cac1fa86c744268f750ede4cc38ffced489d4e0a1067437f165ef33bdfd58d9ee95fe7eb67cfbdd50231008678cd0c9d9fda17ec65454214d8b4e670f0b7e8b5231569cdeec387b22d95b725eeb6eab3f5bdca579f402d1288fd600302047c435bb5006730650231009818d49020be5aba3d98ef3b8441919d5317cce68b23c1f1c3e64b3e2e94a6225d2c777efd026c08e3f9dafe728dfa87023015e2b81cd61de156815afb892f2e3e28402d06b04d962ac815ac0b2afb9bb0f4ba62738ac1c24bd1e39afa73778362350302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100db4d1f76cfa6e4a588bb777d0cec0ec24b1f8addd236b5c1be56e852c174e757461e46ab3c22d618d5314b2488da4d320231009f73e75577a3ef40a791ff186f3a4d0b7852f889b78a0290635cab3798e968f0975e89e0346895f994cf886bf42e0dfc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100955f7aa68fa735a200c4b876f7105c2938005f84d72e69c826557d16ea0f81c08a6ee7b26b74ada8db3e1c9f15ed5abd023039c988d23a05a2d25f8819055afa24006a532b3fa2fa97b1d12de6aba21c2dcb45413c5540484a9da0482123e63685f10302047c435bb500663064023076eef4dc0c0a10f48dde4b3d2a6501c062e2e8163d5ed9fb8165b0214f412309bc2822cfc3a928e182ba10443f4b47cd023033cf0159095b549d66fdf76ca12698d81fb09de6516d490b2c9583bceeb2bada69bc8cca15439a2b9063359a3b7f09f20302047c435bb5006730650230361b6c55e101436fdb58ac825705f5e75a9a16e6afeae99c0ca6e6a4e21cea82b995956f9a5d013f59fb3d57cf70a394023100c6027b0997601ce602e187ea16019519a9854427ee3afec94a34cb92fc1857164dcf592f3d1f72499cd47e083c1662cc0302047c435bb5006730650230403a8749aa697023b80d8886fa644e5c4270db69c33bac75b2a16479623caa963152281ebaee559d7cb72cd1d842c4d1023100a41fd193471a2190e24fc637f367405a3513aa72a10e69904c7144c640f41a862143915e4e80d53df81b0843d49d730f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009d54ad824034498e40ea39a15df83075812a5d1e9aeced567106a471f54c219a837f8265ac6232b02eb1227ed87a432e02306b1c4136fe09e2f7057ec66a6d1694b15e44528c53c3c460c84bf8e56ee13a8bd37faf8999bbddf4d0cb347bc68e3ac40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301980469903bfd4f2a7adecf9c08ff5024beecc29da36ab5d3fab3eb4b51c8e302f88adac7eb07e692064c9abafc89b4c023100a88d3c491c0fcae1c96d24f0b3422843f67b239eb74a76c9305ea17cb051a3407072fe336d005a2ebc58c37bc10625480302047c435bb50066306402305228dbca7928d35d0571b91b1fc8cf20dfae311d96df2c2fc60edcb495bae230ad7b1c2c02c2ec48e645f40733ef55c3023021c15c20612b74c39e10a7a51156bd7bb842781d8d646d16f136048e25d720888837aa3070a7aae992db698a30b771b80302047c435bb50066306402307f742be18fa93c667303d4f48b90131fbf1c081e458fa6e932c74e0f735d99a05465a422e58a35365843f5f0d4144b8302301db6b322babac9a4aa1a241cb61fa47850d1d05e0fa2d71f14e616b17107d6747c55401c8f3958d85cd743712c01dd2f0302047c435bb500683066023100ede965b1f44549370cb040976cfdbfc80b50d43eea06c5506414f96d78b0dbbe7627f64d459910098e860d9f6aa7242b023100bcc4bab7b89f71f0815811d260a7306d324c60e237f6fc3dc9c7587b1b9e79cc73f7e532d165830be80c82a10e1a71380302047c435bb50066306402305fe295f6e09edb4fbd26471e50d9c98631987d082ffc0c0e37ea9080526e6e871094ce65ebfd39b6643fcc3e35094aa8023022e773a366912aeee3e619576eb453fbf660602ed1c308d3bb8097b0ff3dbc6c14afab9987a053dab385b3fac81c59560302047c435bb500683066023100d630350bddbf077178028ef0c91ece521a7674eb81babf8ff8f2acef8acd4cfb2c27f3bdeef8c853957ac22c8d1aaf4a023100a88a4e2471618ac2e3c02264f438c6409029aa015b668384070605ca4083161581cb19f043e5058d4a3f75fd4de744380302047c435bb500673065023100fd94ef798f6d394d1dd6eb2bf6cccd4d9fce8becfe963113adde6671fd53a8263628a74383ce66668e2f28438e2b3d22023064ba20dea90e74673bbc52b7b002dd45af1dcc8c433ec490ffb85458d78074a86ba0b7fe2c9ac50a19c8d504d128ffdf0302047c435bb50066306402307c6d363c5923e3be9d67674a8d57c0533254163a03ef7c81de72b14d8eee0602b37c9555d8bb01db54ea1a2aaf5d4b9a02300dca52cef84e9cc29be31e5cd916c192fbb57e061868551ad915edef7e2808517b9865359aaaa560d14ccbb60245ec660302047c435bb5006730650230301111a0b2f39ae40f59bbf79d2d81630ebfd03988fe46f8e7ddb24c2e6fd132580fb8c7d8c721207c528ee994c72de502310098624ec4b1e0a6ee98b20206685ed7f9a99c8446750bf1560ffc9d8c1dfa73a780fef2eb9b11a9497f810812540610c40302047c435bb50067306502307f77c733993936484e0d375155b68cb83741919b43f253fac23c0cb75c85e576883f5db1d8ff267e79aed0b483746fb7023100ca6ea4fb6a379e34409a9c540edec6c51adac61f842804123c6b43b4d9e50f63c77b8c59ea19d3a7a65dc03cf25c9be40302047c435bb50066306402305c94fe1a38253aabae4c9947d9d1ea27c4f20c6d4f9b6778122b7b47ef3469fbf20380b97a97d1c19c15c4ed3582c1c002307888085fa99dcc3169e7e9538c012a544a308cc27c5c199dde38e49056d8a613a256f1658eaf3a500fa83a41826f80020302047c435bb5006630640230669bf4bd833c6e86b8f4b996f8130dd48c05f5ef52a9404e188fd73488d9ba4301dd31d09ccb2e632cb84a45ee8bb56502302a74987235de1d546f934212274752c7ec62054a29cac235d9f9fff8b4ccf5e92094b392f78e83a8449984f36d61f2780302047c435bb500683066023100df4f9c0c7750b00eaf40a8680560bd3bf9e09e41b7b81a0d91158b7660dcddcedaa05b52c0d0208f040acfa705d18fe4023100f41b1e1e5e6c500f330d5ed9eff18abcee849830049b207006b2bf0980732b31551f0bcb0e043a3098789844f12014030302047c435bb50067306502301765f031c8d18cb393b44cf3b76a177f4ad2a6f9e3e1a2636a5ad1e5dcad0ed6719051ad790c59d2e84b252e50134f80023100fc9dd19348a33488967d08ac7c07e1beef6bea09580538df6fb695e22aada4d2c11834197cc4d3166b85cd24121ca4270302047c435bb5006630640230489c0a9dad8104b0aa55730360328feca033bb698d929b743accbdf9742b9a225728a4381f5415a48f26c6fa057c75290230598fb4f6ddbc2716c84ee0a7436f620fe5c6b99c2cd136157e57a47e40d54963ba880cb241840cbf820de9a6d6c2784d0302047c435bb5006730650230792a5d804e7f5bec67315f69a0db09257b132adbc18a339fa050df1b9e565a4f0d22b70bb09635af191e0c2ba70b8dba023100bdc7420c7e1c7c6a2c99bd09719ba80214c37583532ef95925b0a9d4e980d3f856530aff764c6d6c817181f115ee55950302047c435bb500673065023100aa715cb2f48c322132061d18ef7285c15cebfbd6047a672e125589739a36c4513fbe84e9c5ccdcfa87a81522256676bb02307e8a830fa50347efe7f05ba7df0b4f222292052d5a73d756193484dba48601c4c1967a6e78ea48089eaaa2aabec2e4960302047c435bb5006730650230663c0cb79fc7c4737d8d26a0ae6ccf825458029b7f93ddfa51e6e3c2da635fbde59f8db721243e4e9be01ae8b057cd60023100de7c01a4beabb660ea40063c3a30747dd1427fc140c9458b1eaef010ab80b48ea2d10fb13d9b9de76c1104b114b5d35a0302047c435bb50067306502301ec7f3082b4516383860629996961c1f08cc8eb852695d0110fd3bcf23f03f62c72f1e2ea78284d6d9138ff7adb7343e023100f2d48296266a05ebde02f9ad4adf0fc30dbb388d8bf22cc27c285df560b5cdf7b447d41792377e3bcf36ca148b9be6210302047c435bb500673065023023fb5825bfab4da6d3e9aea3d91936ee582d7e4aa32454f5cdc876ee6c1fbe11c8d289ad807f7950b12b4d7fb32440f2023100e40e1c841bd34cfafb4fdb9328e21245394cccf57f5e2484e8c8bb55ac5c7b7ddde5fe677b065606e3b2d05ef3149a760302047c435bb50066306402305a52c9445f2013f45c7dc0c88995fcec208d95c17f6e32246241c13f210c85ffb27cdaa3fdd15b567a3ac8aee538e45a02302ceeaf494269d888e234c6b0d3935d2942290804633e442de73325de8cd42a00236bd23763ef1054887c6d9c9bf18cec0302047c435bb5006730650231009036f73b9f006da4ec5a687aa1063646f1e3ec7404840242ca1de16ad72e807ba02970de8799e1bd59fab899d8e46ab50230511380a1caf9c70f1db4e04ca95a80c542617e17f3ce64a2dcc570885e24b114b358368aa3e292a139f30511ce461ab80302047c435bb50067306502304319c9fa83ccaa08a7e58dceec717f2d227e940b268d30bf77a93d90265af599f6515a9b370c6dd3f6670640168ace0d02310090aa103412d6e4aa4e17eb73ec9dab7f25282acc60fd5c6fa5a34f58f30971e37420d2263e009897dc64fa09c8565b270302047c435bb500663064023021672bd4fe7885b2c4748a06618177eb612a834a5eac63ea3c6f2c4815a336df5070a34ab04b63c53637f18f18ad24ef0230537a6380c853cd988618ec3c51760f8173d5dd64d02669da083a65f639646bb17b3c21127964110ee62de00d74b5b85f0302047c435bb500673065023100c1035f5ffc51bef07611159fc7bc97967c2c76a73883ed8adb518a2cd0dd86a724e8a0f09b9f0f6c15bf5af4d3e9a98f023013c22318009a60f715628b27d378ae277bb4c4391b95ebddddc83c310b729ebaca59815d052fffe2b0d6ab840b9292a40302047c435bb500673065023055d4a7a8f1fc0828f95a10ee436f7809ff83f2624a6c047adc899064de51fdb034c989a876611b7efd7e03681de79abb023100dbacf317532d9bf9fb4b09a7bfab66f4df1183c22e31d9880a3ee446bb822463a09df3e8f8fe3cb52b9cda985825067e0302047c435bb500673065023003d5e18290e70020d650e6a133f493fb7bb8ff606b79863bf75d217b26963f9ed2199bf8d9b19e059d9e208fff0daf47023100f028d20fcb54405f9323095f25d999b98d0bccb075d5660e0d74adfa2ffdaad8283eb3b349cf3fa1dc1e372ae51bb2b50302047c435bb50067306502301e583ad0ada610380ebe268b3ed074f28456b31da118f416de2c47f12ac2628565bd78e02fed3ad0234641f02626db4d023100d320bde41373df80037a606693e2101ed08763ad17df812aad52b9c944d77186c890abd8f5fda3af85f5698a3095c41a0302047c435bb500683066023100e612034be34752fea57c2a9f40b8dab909e93bf350ca74c89c730a33344c81e79ecb92a98b0b372ca1889cc8a4e6f09a023100aa3be07bbb26dd8e358a71f4ef600b2306f775ba70438a8cd0f75e669b89363547e00cd01c1bf8035c0f7341f588a7fe0302047c435bb50067306502302179e3364a44791fdbc022a37ca5549fcf3d9db9fcc9b1b1788d9d519a9e393fe01ab8f87b425a7bf8eb9032f7ef7b26023100eca98bb4ef1d7902a0fc8f56a2d14353c536985b3449e025a65d4c5fdbbff3d84bb36f31fb3d69a8c886de17efb070330302047c435bb500683066023100f52ff4a91ead2da054587be4566a783dee24971e12ecd942b6d013aaa35cf48bf43de4efa57de2849d1c091ac96d5ef8023100a6685f98423ce0d624696c42e3f95d4228b799803c92d87f48ce61063602916110bf09d1662ce20c17358fc52348a35d0302047c435bb50066306402306f550b56799bcea9ec50b81bf146b0fff189b0e363a3853e228e2e1b81de3e17fb5df9a6329939d32ec17800fb8a55090230238fb148c632da06890bf95aac1eeef32fb512acc6d7dda88d8b395ebfa9e531bf989d378ddddea37d421dfbeab632550302047c435bb500683066023100a1688bcd208bff23868270b439b3d70c499a2c20970c812d76618592c5ed5ad1af21092b41929a29d0d549ec42b91020023100e4ef531c722a8ae02b74548d1f11228c975e5324214abd9a0d8f8634d058f137be5c66ec19672edc322fba76cbf60c400302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310084bdfd6b089980cf20dc17961f371146f229e870955348aa46ad0230227885abb6f721e7847022c6bed5ce3307b9b512023100dfc57c68a0d90939533abd3be865784e8526e68bc564aa6b17d4bd6c6d264b20a69e243c5d5a5d0cda547342f8a7ea690302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023018cb034d1c6723895b4a4840dec05109a91478529e152ae66e60f4beae4d58b602456f94802956a717faabea94fecb60023100a9fc3c17d655e0b42a7c33e2d99ec7dacf4c1ab5620430b1ba56915870f3364030cbed36790b67e42c65bbe531fffa860302047c435bb50067306502305289399f76d498b44e7f032b82a2aba6af7e44e5074a07d411ecbfcb825bbd7c4a5c0e9a90dfa8ad31f6b4e56c788816023100edcc6415286ba4540930519b981e1374fbdc7f34b9f654618da694595f04f0fa713638a015ea98076f1fe77749aca6390302047c435bb5006730650231009cedfdbd9c0d012a30a66499203dbb0fa3abc180f5c201921ffafb68a5be7866e50ff15d0aeea7784777fa296db8656002303aedf4e12b7a50d1ae66ef143f7994b9a00efdece2fc413eabd79ad541dca10156e6228484f4c23587c5dcd8872024520302047c435bb500653063022f1f083076aa4832f529e3761dd7a4aed8a61e44277406b71092d371bad2b5141cfb2c25fd0848d45ae3f5ace89ad198023030321016074538e1cd793ad31125d50607a8bf10b81611692d0e7e50790be8b6d91b627857e63cb0c09ab2c0ee1e513b0302047c435bb500683066023100fc0dd0a31069da92d636d72a5494d3356406e8d7c8cdce7c0b82e1923bc820302897099761837c98537947ab7762c17d0231009c85dcaeae5256d0831240cbed99594b618caa606a95191ad0081e53ba964a0a39be692b3914ab2ad993fed86b2ddb2b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b5d7a2c0e602b1b4b37649492a62ba98fa121a6e08da7031ab22afd49b2afc6d63805f4d6c98425e046cdde51262547202301ce7bdbd5a5acdf733a929d4924e270eb3b152001312c5de4fd1f04f7df6bcf15f7960ca0f9d74226383f4eec0e977240302047c435bb5006730650230133a5f7e1d173a4a098cba0fd302d481d4e0b7938644cb090fe6b99daae684125ed9e1fbf204d7d284892592e2d4e0c8023100a2088b4fe788563b4d4f83aaeb46f31830eeaf51014bdd4c1d1a4bf92d14fc546a2dfed4c336012bedc0c1eff6ab924d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023036dcfabe855364636e06daeb2af00456803ccf402d3140b057ff86a8e1366513e13b19050df5916e17c0ca824d9621790230058418ad8ee1e0cab2298dc862601ad7dc1183699ea74836746e83f4e9fb7bcfe210d41c030661bf87297d13ab33d71d0302047c435bb50067306502303c727ab03715ea2e856ccbd1a9a26fcf219ad8aea1a43163445b6606af7d60acb13751dda8eef44b814bb6a88bab3c7b023100ac180a344d2d1c6b3fb193adc1e41a9f66a9f56a3eb34383eedf444b557720226768b22e272644b901b7cd877a4c50060302047c435bb500683066023100d332f62cae42c9996c989164322e242065819f417989437de55dfefdaf1d1359e92d65747a5dc3565fca880f7ba12595023100834aae6e37d8de28079f775ad58610c1671a046b21db6419bca22a8a1c1f043f0d0bca2523f3a3e2123cdd574e893bdd0302047c435bb50066306402301776c57b18c315c810980b3f1ca98a333ba77ec2db57c35c2cb5af5020ff87a3855ec1709dce8afe032f7fd65831aff90230085e08ced7317d94907a20031b7aae637180e226b1451661c307bbdcab3bff73fe83de383b17cabfde63374e4c0fd5dc0302047c435bb50067306502307b4085838d3b929ef0f3cedb8bf92d9d9010e9773e5d5ea3ac5107ae72a18bf838dd880a3680afff8d350d9067c658b1023100f8a495945d6e5783bae4c8f49e5ce3902bd96009bb22d93b42db1e369c4a1ed8064d4d6238d1b594b478ca784382645f0302047c435bb500683066023100d660c88eb4dec7ebb83509ca798bc95837b466299d98584d10bc0883c61696ef70ae910b896d59eed8a4a698e8e61c48023100b73d7abd25e002cde4a49f5cc101f4df97e2333ec377cba8f200c5580053ff18af4717a14ac66974ba14a352d3856a560302047c435bb500673065023100911ba6238bbf8c0f6d1c2db96f0cc2a0c0ace2817abb71da0c33a2263fc85f8cf1a9543c65a1bdc31600284b822da77d023050b6a64e1e37ac271e0ac76deaa203b84111024798496b6acc6d2e0879fd994e8a007c4fb8cdfb70518472fb7811b1c00302047c435bb500663064023061a0e7fe0e6693255a4a769f832349f72191c5b8681a1d254739f11690ae6bc9964943a63386ff82ed90a3a1d32b4da602306e852b47b22850d5f6680d952dc82a8f3414401397b40530e9cd698b9f4fdfd4a74d27c2e175bce086df2f5b093b4ef70302047c435bb500673065023100aee32fb7a78de391818e6421367ab13dc95c04e62597a48c477686ad1db4a72d4d44de76785ad0a8227be4ccdc85bffb0230713ea547e969f1b1ee94c8c4955fbd31169fd0d04d72855d70b8dee87d8e52b81e6f6cfde89ca23ace99d0c7ce31a3120302047c435bb500663064023007bae447df8d7c9979dbcf51bf31a792a806bf91437a7ad06a3bbcaee57fbcd0c7845644c7541dc26bf5ce87f0f6de9b02302524d08099b0809fb4e57757a56cbaa0f6b07a5d93c8d6073720cf9511067e4eecb27db0f38538add7d277d906af51560302047c435bb500673065023100c849aae189b5d7c3714eb53e4830842b29bda24e18e237cdd810173995689715e08f36688db03855bbf2cccfc145cf73023055638a6a8b0f6257122056b7b787e91efed8861ffc1722a508c2e7b6c6c76ea050a37ffdadbf8ce8be24b3774d6406630302047c435bb50067306502306f04f18d76573f75058ea446320fc3ff2f81502fb1cfb1cb5ffa6be4170d321a1201652621d722dc43adeb5e7635bdd5023100a3b7a43596c6aa4623f24e37125876821b5e0098db9d2d5939f86fe8770d747e0a00912a6125a7deb1acbfacb71621ed0302047c435bb500673065023100caea74b9908804ea642f7bffbb011d9af004a19dffce36d1f9a1535bb4e1d17c69af418d406d205f66d749393afc904c0230252fe394daa1bd6824a0c6babd91549e5ba1fe0da662aa0c876f0debb50b6240cb5284ae7c7d2daf9fc4faddafe58dec0302047c435bb500683066023100b49bd3271715480f97c9f300bd44cb45def03fc316e045881a09cbd9eca78dafccb93145a7ee3a0afbca0760dd60fc14023100ecf7a11845362a9d6a0d1b86c66db6d349ce843f2d392f05e9f3814d0ae874bc32523310efc225838ae40bd3bd55108c0302047c435bb50067306502305d6ed1e1ac83f998d82cd8e3f5e778de68fc07ef47cd037f161a662c856ae921e315de0d532a0767fd8d792955e93290023100c131a5b57d97bf51a547cf094e3f8f222eabfa2680922aeb142dd71821b469ff53904ac27b6d0f2ab9057a9c4546a7ac0302047c435bb500683066023100cc38b216f90513761f43b6659ca08be270d6d2d65f63083067f1d1afb86dfd7950a2d4073183859cc0244c3a142ab55f0231009e568c4031a77e309e698a521cf6524ad2a2688792a792b38ad1487ee79e73edb17554a7278121a86ddc2e3f9619eb750302047c435bb50067306502304ad6089a3209ed3c5e5810862102603f2874d15c1c30d0497ecf61c5ff813e93adb90e9cb7314a761e52b92c4db4880c02310085724a991e26f3f6bf973045d8fa944e65acb7be038c0ed6bdcf73c77d6303912f21671821d82b8c3414e120de6cda7f0302047c435bb5006730650230119882acfd6b627d446790ebad13d55578cddda60ed899c5a8800cc3e4ade5c9f71f1467eb16567eb1ef0101586873ec023100f1dc2717459c5ba10d39caeb387225f77c6543131b0b81d64ef4e28edfe06d325e0dd55c83ffc056daeed394afa70f9b0302047c435bb50067306502310092592d5655bd9d43c2ed1a908f965c1eac9607c8570d29606b585298849d070fb9914b892953dd15405856758a1fbd670230345273e8b0efa4598b1f1f6e19b1fef69ed47f983cda4bf8f1b93086a405ec8d0b30d96b958ea28b80f0fdb8df5927ca0302047c435bb500663064023062c443167d2ad20634945ebc2e7fd7f5a4e6112bd41d372f039f808feb6bee2682e05211dd3785e1a146d76eb4c605ae0230149c440b803e95341915589ba0637a9ed8e4b6cc737e640d15c7262890dc35e150e8bfec8db89f568e921b935ca960420302047c435bb500683066023100eccd02a443f3ac5ebccbe38266c7102ec067e38f0c695bcc6214197f740edf7e1413a38133f29614d880fcace860361d023100c862134cd4b1c67e68c2b6f157c8eda3b14e33cb0d6e36ee5c387c969c3b7e2ae85c9ee868442aa4ece59bbd393b6b460302047c435bb500673065023100cb2911327058e873a707f6ac75dddcf04568860d7136c590c64eedb8b5f597637f85f828f578e9c66be92cf2a682f64e02304600f294a79029a1e9cf4a3474ff25558ded578b972f86a2e21c26f6a1448ecae2cd40420c2f491816ec77bffdceade00302047c435bb500683066023100d4604a5e902096ae5a60d8748beb633ae844c6c24d3188f3926e3b93b5745b181f49fd0e66907093122f8132a06c0aca023100f755fc62023b2a50eef62eb1b34378d8a8bfe0b7aee7e4013e42aae9a50a8e01549411d1b3246a2dce7f7cc5c27cf6c60302047c435bb500683066023100eafdf0a460aa117415e1ed15ee14033018dfdf579a4c6183f78a35f669d8629b28594327121ece2d2811841edc534c65023100c9ee0d180dbafe348380306902fc3855ec8493ad7e1a5ca9ae0bc2e8ecf9d9cf9d654fd22cedba849bf9ba9ac2beebaf0302047c435bb500683066023100d7122e6a53b50ab167cf362efd8a068fe3a9f1ea78d2bbcc49c369245c565440d35dd8dd3bbceda4b8a7d1352a516852023100a3e7e2fc77216b0c7db0facad3d604714addf5d4817ebbaa0ef6a39bd4443b38c1d02a640a916d9c096ea30b04c982bc0302047c435bb500663064023077e9b60e35535aee570e6f6066b2acf29370a47b833ea1988575f69beb1bf33290948c6a8f0f5ef3b0b63eb34e75d02502306cf527269298d0485862a35e57ff6f8b8f04a126b8403a9819f97785ba0301f895907995d5e92cdcd5eadc9aebf1c6a30302047c435bb5006630640230381aac5b5923740f75460f890ac31b5aa6eab866bcef9c9084f58edcf7c87954c4181e24ebd4da83aa9147596d65df230230676fdb24d5724dff28ff8896eb4fcc26c8c6505c72343ed7fda9bd8a2d95389b1b3fa0b1df4d79b5d118fd9405d0ee1e0302047c435bb500673065023100e162830041c187c27e8c271c3e83b6c07cdcf4961586b6005940e8f7612c9c62ccabb574edeea8996b3080b60d4acd4002301bce043d00ed36a5b01b953471ca1e1ea46df938ac355711be12fb9a0035dbc49ac1a0defd4f499422f08243caefd63a0302047c435bb500673065023100d3a5aac87e2445d88ac3ea14fee5d5116013883933cdfd7d8bdf638191841134b3523f3bdeb3cadfac7a5d081e0fd56b023001966a75f7bfc032b3f0d0687763d6af5df0ac86493512bad42611a87f470cc66d6144902e2f41191bc0cdcfd0e5a6520302047c435bb500673065023019e38a1f30578456228143b336c5cbad3f59c79636a765f156397371a53ec29ba094ed669107062135a82225e8eae598023100e2ce7e5d0737763b8897a88c98b55b6070d4cc2f6a5cb327e9079084eae907c5a543a92d96c6fb14eb34a070777e9b220302047c435bb500673065023100ad1f0ebdd0daf8d075e49e673ae5603c1c83a8b557ef558928a4349c0418606a9f9b48d6ad223872619d21587671b36902301139195837e475f408e3685cd128f14671a127e8056108a3da0e1cdba9f575311e1cc3f4a2f91586a17685ca4b94b2ad0302047c435bb5006730650231009c8db50b0c546b94147719873056e9e1dd98835789449b61d4f086ec20ab0a4d5f00468f0d7be979900b19511dfb5a8f02303022d226b7e1199a8cbbccb64918e07ca502fd208fcc072baed4045aa3e2d2e8303aa985eede85366df3ee948c7441a30302047c435bb500673065023100ecf357bad525c8a81e6f6f4a2621be9d9a20b9ea89e8afa4a6a6ca4e0b56aa760376539265d3a9814b9cc2cb6c2370de02306f404526b205fa948a43e680cdd2cdee1a1aba8906474d8d9dcec36c824f162ad19a0c0eba33e7b9894b052a809d157d0302047c435bb500673065023003daa0d9c4519d3952ef29dcb263534e54d9875966fc299b19415c1599bd3d9a4d386cc9c2014a51dca232c9da89483c02310090b949266798544444700cc487ac212cd1a54b28662ebddee7c60a37c93a6fe534d2a98680b09c1a4d1cad076795aff00302047c435bb500683066023100a27305a16020566244417d10145a7230252f10027236cb6a50a09526e6e41bc95eb4824331fead5b9716d3675fd11912023100ca2811eac1129848b57b6782ac4925aaa0b271ed3651efb562b1789e40aa1cbfa0f08787ee3fd81e2204ed91ff9e4efd0302047c435bb500683066023100ff6d121de7da8530b129f2733bcf141db58f106c520dd4c23301959fe27a63f9715c8004bd8d1cc22a0b511a8e4084be023100c4eb54d91bda41058cbc3bb1acf14806912fba57d6aa71914411bcd4e225ae97916c7ca752c5c01dae3a0262f44b72fe0302047c435bb5006730650230681f223776b6005a921c78d00959a39feda5ef5ffe09f3fcffbc2d914c763ffb22ee68d3286b8600fb9bb1de2b3fe870023100bc1689950e8fd833a8d577093564097b04f823bf3fcc65cc76b34e96c0c2507afeb2d6396554b5d852fbe500cf2029630302047c435bb500673065023100d3e8d5118151e11a5e3c7b74c0eece95ef2ffa7457ed088e24477456a355abbbdca5061f87d17cc6307ed665a4e52c9d023079238407b4052a53a57a5738e3a265c8c5c7de8b2525ca75f6238e11c57dda33d2fb45e9f188bb61b268311bc14b06b10302047c435bb50066306402303519e6532f967de847e7ec2f7c8d18e852c1f52780a57d8d79d72daa50baa6abde64a8254f48caa1a36b01a20f86b82202302f78401e23604dd7749884e5685f2408b8018baf584a5e2c4d4bfb7161f85fc1f7f6f6175b335fbd903e22c8edc13f9f0302047c435bb5006630640230556c2e588e8909b9bfc4a4ed5c1bdf4cd73e4bbf45e3eba0c71e83f8eab957bef54157be8b561c69339a14f5df6527fe023022a4bb657cb06db027421532675bf7a8fdf53712d1a48aaae6a1398ce866f3bc65601cd57f89de2e0b2b3056964d68ba0302047c435bb500663064023044274bdc03236642d6c314aaffb32a33651a670f75053ccddd324f962b8dd969f07e6cc6bce1b7be9f136ed68d3dd1a90230625e3b26c348749948d75dced4bd1e4aafe837b6d060b21b6548b4f1709fc186058aac40b444ffa0f5ee00f698727b790302047c435bb50066306402304c4bd01f2e1d7e7ea0b4125a76b4bae69580e3c67ca497e397167620a0a9501fda8d62471869f5c0b191150baa2aab03023044e18aa93b7eb3a785b0248a56a8d11fbd0146979f8fe5e5a38f9184e1eea36629779c2bc0c9db6c30d8cc1c75b9129b0302047c435bb500673065023020b513cb1cea62a2af2cefef23872e58688aaef74946fd6ac3d43c34466d2800da57aa8379f3425951b0822688f5a6ef023100d17f67772fe94dad7ca3555685a1b7d766d6f11697e5068ac7bb3509e3c5fab627abe2cd7f441e22aa9ae99d85d28aed0302047c435bb500683066023100bb6b8a52ce3a1d119d64b4105bba03aeb534390dea5595d07c4b4ea8010b221c0aa22ce32bd74c54e18418f9a9040eb8023100e657d2679c7b262d30789b43acd91455eb389084de05a197cb3d55097353be9227d5a57092fea72a6b76a503e02bd5810302047c435bb500683066023100bb2c34baef4b1df1dc7c2f07f6baacf15ccbc73ba6305931e722de02b2ed48c419d22f3ead53600ea9a56077a6511625023100ae85c1f76574c60b60ac585ad6894ef3ffdf48be757f314af2205f30455944544b4f7455e98a4a69af2230be253554c80302047c435bb500673065023100de09e306d720465911818fe0c4af92dce6a87df5cefa8206669601b127101f9885bd3adb34578e3164b32600a314a57102302e1604e751dc60ef8a702370cee7cdc16bab37e6e8668cc195f5c95f99536efb0d55be76e826eb5ada919468423e31840302047c435bb500683066023100a1c44cca680b2330fa591aff5d395e3d3260893f036c36d1caea73cd8b4cf28bdf7689ec92e0fd4d0f2a77309950e31c023100ce0ff843d5fa29e1ae26646e499e3ccb279abf29e5f88cdc7df0d699ee47ff51716d48e3a750a23c4358292affe1ffd50302047c435bb500673065023059e4c596d8f6f7096e2021133a9fc4e848daae44f8fb00908bb40543d3771cc5602d8386fb4d459dacf099844d17813a023100ed0b235a1d93145cdaf6e97141c848b6cb358989572194d8724c16ab0fa2985b6af0aaeffac74b9021224d65c8a74aa50302047c435bb500673065023100aff60adf1d2d33a4042fed176f1b688e3b459968b34d783403d7d1ca66e61ed9d5444ffbb13b9d48c2fa10810938608b02302f3399845bb4db0f860406a707f0e01fff5840559cc4ce3fef027a307b3a5ae4e3f6c8b9d89b9533223a16242ea7a6d50302047c435bb500683066023100d7018bf19b02104a55696cc3a6a3518d5e69b922774d8b248e3393581171336539fbeea074e15f6787498c88e1a45012023100f55ac19904d0b8bdd42919c14010365d116c48a739d67b344bc79d3b9913fee1b65930bc465e491cf61399db8a77d2660302047c435bb500673065023100f488068367b4f6df1a0176d81ddcaa9f7d2630a3b0c5a68bf2fc0640a33d299d90c9526312a58c3bcff5cc44e37eb89502302df7cb63d8db70a9c278e38963ce284a99d3fafb8c7db70d53f7d392cc648b15acb26a09d6fd4a891878548e5956fc090302047c435bb50068306602310080ee6ba8bf790f77eb0089fd71158e126adb8a7fcfbe5dbfa085c3604fb0153a74faf45431f8662d0bfff429383c3f8f023100bf62b1a5c60b62712c0b58fe903f07b97b541601bc50cb5984dcd5cb90201c177932d5489d432ef3982afbb66c3ea78c0302047c435bb5006730650230406a20389148701bf6fc458a24da4732bbd9cfd90c2f56e9079407b85c27c03b515d5e34eba8583ccc52a0b44c3f90cf023100cc774f002614068e39b4c19de111b58fd0cae7895b97f5ccda53ac8b232acf4f9a426e68e60efe33d73b2c65313e24ba0302047c435bb5006630640230601d8e1c2f5f2c299ad89cc570252086611a5c72cdc8cb6e033eb50eae7e9333f055f9a41aa7b74f6319fa2baf8b06fe02300ef0fdf9014c9ce3ff74f2c0051b2d999a6de3af952e262e859eea75365cba235b5a8d75a428ec3ea398e31864d7c2e80302047c435bb500683066023100881e306d4c55687cf3f8f253174e5c3624b8ddd599e5d21e4d42dd5b20bd7987089015ea46fc1cef4be65b2c4e93ed4a023100ddc409e8a43cf2ccfdb9a36d425f86b06d33dfe37d3641f6eef25cddf47de653697d311eb3df4addab222ab6bd007f670302047c435bb500683066023100b38cc0981b2d2dfe4c4fcd34f418baeae3ff796225b347fcaac42c03947992c750e09a7c31fd31f404b120231ee6cf24023100f751a5c4c58223bb7bd5c2cdffdbca2a622402c81b44ec7a64e0d7c01a685500c12985a65a31d4a2637ebab26f8209180302047c435bb5006730650231008fbd4d402c423f045e54c65cf602d927cd2b1df361190c7ae8dad4d15eb5d0fe6118ea3eecaf5eda3eca2ab75f25c49502303a9131b94d063686e041aefc92ed0d8927a0aad05d29f7ce8c04833d6b468d228597c72471b9ba9ba9f38f99eb60b1700302047c435bb50067306502306d83281f579aa5850528e2d3dee7c7c64bdea0bd1adbec5cf8a496607a131b669d381d44f741903fa4e6f16f18c1af61023100a966c1c7c4572881077da4ea775c059ced49d090ddd5e2482cba7a92f75722695bdb82c0384f2e133a13e2b12570eedb0302047c435bb50067306502302f919dfaa9357d0a98b40d419d3bbe16c3209503f308de95216a092210080926e7de4e2b59adecde1b6e4191d1eb7ee9023100c62159f1a4f05bac6936d79954631f19b2d77408a7994ba4140ce6067a84d5e5485cdd62e3d2021af0e2b269a7924ae80302047c435bb50067306502307c9caf52cc452361bb870c1b436409a87330240a8b9da9d1f8113963dad69815d2e641e8f239f9603bc6fc63d598cb27023100be1269669842390fd6f81289199834f6563edaffe0b9ad7dba11fac21de0458b4e9425dc3785cbb8e4ac869b259149990302047c435bb500673065023100e8d7e14a1270fbc30be50c3cab8782f59d0e721e70650cca5b4ed599e3f0427f1a88897b9ae084cb776c3cc18a8f4e0c023064d0d64fcfc9e5f35c419c3d74b33313c9f0091916b2dd171942ea84daec309e5b1877d465a85607a5b76da4a513f06c0302047c435bb5006630640230020578215970bd3b5572f101b23149d03b3c7d2fbeae4357f9ad1a7f52a874b5078bcdc6bc9829daa2ca86fecee1d90e023002f302c0bd4a7a4b111b88b8cdef69d8f4908fd3c51377f5265b5ff3a091446e166e1c197845d6a5098ae8e0338aeb3e0302047c435bb500683066023100d4d904f86e78e6b6fdd97da3e079072daa579fa724c0fbfb5a3a918e1f48287897546ce7c0541595137da18cf72dabca0231008b407e2b5cabe4a62cc0ce28e2f089e3e8946f9ea8769cf6d750e802a5a464cabffe0028b62966fb54aadd74c28ef1f00302047c435bb500673065023100a397f2e57cbed259ebb5372c9b511b5f3da8adc3b3636a3e56d792fa838a1029f2eb4da4a6cf798f6774f5658215e99e02301f1be66216d9e08cfa881c3f1817935d755b2d46db75e30335bacc931b2505ba08ec752efa839b525fabe615ff7a63b20302047c435bb500673065023009a46acfcbb6aeb6507ffc2d0a5207136529f9034c3d63de70845287f83f294cf0a02f0d8cd17e6cabc9c198d7c90516023100b02792288c1a5cd519e66a7d4689981da5b7df8c8dc96c8b636cf0c4d2a84b15f49ffd6b604217d8f9330337b59646dd0302047c435bb500683066023100f07f31cf9a7efd805d402200771252e5c952d68eba93048d6c8b5a00f122e1b460356ede392b4f9435304abaf30d42ba023100a5e1f557b255e6b732dc8c841d44df4a226284a34a1156fc067405a1abeaba6b2b978c810a07922b28b4496b575ea1f80302047c435bb50067306502300ced9ca6a8c85de12bf8dbea17604be1e7f51e28c49c8984bf207619ce5053e081a970b22c815a4a090dfea13343bdc702310087644dc4c0532cebd92548aa73c858ee3a5b0633ba9466717c6ecad3bc06f0c3b1f84dd9e085470fdc6e00bcae5aeb2b0302047c435bb500663064023037023df4d95d1649ebadb0ba28883f36a093bd844f118467beb0855909dbabe2e832ea30418a63646b0f25f804c78e5902304c05e0ca93ed8018d3e013c62a567f19225d85553702d61a73aa39b73ff9d22e8e05d6ebf3a20c61d1470ead6b23c93a0302047c435bb500683066023100ec6e8f67adb6ff7e54a4a79695bd649982608bc4c77375d9b593070169210ff4a87af152179f8b1acae83074db6799ef023100fccc298fafad989beda03dc4583360bcc4f1724efc82850b3336b5f2216486fe4f1b2b901c644fc184f47172662928ed0302047c435bb500673065023100d708b8b62fa713ee8f1301ffaeaa740acd77968afd60779e951b81961baddac7299d1b05f62647557d65c253b4d5ebf6023050581c1cb672a0f1a0a875f56b0bfca1ff033842542647a6098a8070f2b2febd9da36aec6d7c38f2cb368e056a72e23d0302047c435bb50067306502300e087177875a7a5eed0051b5164f9c4219856f12e277c4faf44c2d510ae2d5d1d1f047839b67752c2e17ec8ac272aadf023100a04141b13f83a84e9183e55b7eaece4243d359ae95ac36c2025d366c54561786a5106bd4fd3feca9d3d74567933c8b930302047c435bb500673065023000a5b4c79fa0b30b62c4e36a09f27f9e5526426f0faa63bb6c716b863005262dc191c99e779fb3009fe3de2ddf96ee24023100ec73287c67d46f8c5b468a6ef91fb39baeef85d18765293453af965f5fb934a32b26893ab6ab20243c1cfbab00aaa8450302047c435bb500683066023100bd8bb9136d5d0d1cd042b59b49136725d44f94e4dd821240961ccf4963952ee95440bed0b1b92e78fe81a36e46830692023100e7654d841eca5392d1d647598bb18466f4626c2020c7e26b0a9d8b05617449afe3b2a81b05505595f407875d934fbabe0302047c435bb5006630640230701b3050ff583319f0a148a11bca97838141e4242c9818f137cd0b8433d77047e6ecdaad0b741236f92f11d78ad8205902306cb0590321fe4d34313937adb3db1d874a074b20df02b7d496098afa3a66ef917d69180301f8a777ab1123a32065d4be0302047c435bb50066306402300b0e84616a86bdf82fc8cd03ad1c7e1a6d5c9e833609a13b39075a19dfcdb69d3a0eec7f8184d49b700d7a20581c53bd023054e244c0cbfb4fbc1a1f3ef9ad982b684a9fe43255e034309f73d89b9423b0fd34539edadc81af63e693edf5fa5b4d3e0302047c435bb500673065023057e4cf92c2fa78f9e9611f8250aa24edc9458c3e896ffb79782128e3930301e78f6053c408c29baaf2bb92377bb7092d023100ecb3c9a6ca0799d2b2826871dc4e6e9b07bcec8d16bb93d36c93d8d0b58c618d801dede67b4c3a9cd0818b41509cc3930302047c435bb5006630640230669590480377bd1e9f3407508a201111e914e09cb458995e50e10f06a3e5aa32a0aa06d0cec4802382af50a77a4e2a950230551683165a7143f548716bcf382e3a8297ee200bc79f87df91d23d087143a3ca937010f4f72c49c8db89cb6179bcb3c60302047c435bb500683066023100f97ea589c0d8d532e0641eb47904df3a747a087e6abb2dfbe52fc83aeacb446f2716ef208af6bf04c67b9e60f5f8ee02023100dd4515f5de976740b0ff944da7eb3e7bee6423474a2ce831ef6af58d3845502e669d993006b9b311e761e6177ff9fce20302047c435bb50066306402307c17140c252c3bf805f9c55409109b05c5870b911321eb49d0395aa04da53bab66a100805ab4dd900756bca1487c33ef02303986de57d96c6084895c4ae0cf78f6cd9666482d5af13575557c0958153b8da0a4f19d78ddf927553ed9a371dacd57f30302047c435bb500673065023030af836b9ce1886b60a0a7137b023517957f0905f6e0a86d9ea73e47025fd280cceefa3a44c923b94b962ca1dbb48ded0231009718aeb99a3bb314020032eadc641913aed30502eddbcff9aa216d8ba2c33b18405b8b60588b54794e418765b95fdfd90302047c435bb500673065023100c8cd94e88e2d0ceb77e1da0a959e1414be808e99b84dd147eb2413bed21d8647b910c5386ee2d1d197182d5826ecccf2023002e1631982c44a507b49991c4889e36b818c42fee59fc2135688de67efe41fd2c68bf7f202c5a4ef56b7c47ed02236850302047c435bb5006830660231008554954a5e979fdcab1abd2f46678198e481f4da10b699b3246b2b80dacfa87f432c1ad94728b11865bb91c52ab9dba9023100e0170bfce674922bc349ad5b9eb9d1454206b9a9351c11da774f4cd9124af90052652ffc25d69d5eb09d6028d6672b130302047c435bb500683066023100a5d4a43f53211c74e3ba2e708858bf754cff072c0b1b2b1cab11ad1f945ac9eb13545e30d0d4f3e83dc9c778f7bc2a82023100d0ac6a12b4dfb5cf029b04d5db9cef474b14c3c2ab1ac8f169e90ec7b92daa95f496a3532d1700aa0918fb525559f1f50302047c435bb500673065023100e5a6182042a1c422f930c3c35a5319d3a7aa6738b35454248062bfce5e33b200bf6d63ea2bb7867c8cf1cdd8dd3203c702300c7e5f42170c2a6e32db3974fd82af00df316ac25bc45f5b954e7bef30ce6dc8280c31c1973487b0451003429bd4b5e70302047c435bb5006730650231008ecb444ec085855d96f38e9553ccd7a295ef8e6283faf2e3cde840c15b03d5b8d980dfd7ea1d90c119145b7261c57b6d023018a3aeb31fe3dd63f10bd9d06aaf337950b4284f7b4e8fa834812fa6d177bf64898e5e6349d84f4ade3d18d0c094f3ea0302047c435bb500663064023038638aecc0356e8a488c8a8fe737281e0336cfd4ee160797a7a26c98c111d204596af83bcfa3b4652e1b907a0355fd92023061f60288eba58c732c43a3a3ad4158025fb9c3506477fd2cf35c0898b1de22c7fbabec90b2c18834ce95c3cc534de23e0302047c435bb5006830660231009fe8bf4efe2f0440ebdb1f14cb0582d7c2ecb166fabac5e2fb7c9fee823efcc1f0d642bd97a704216a958ca197a79cdc023100a6ca42403eb97a7b1d53dcd2d55187330809bd9174de2ade1b19b429a085a4ebbd6a228fcbb7ecc80d98be4743a9e3490302047c435bb500673065023005fc6b21031eb9a995337b4c2a7081459fc01c1e2d165aca9405155c215bfab76893bcdbc77ef6cfe091e9f2e341bf420231008efa4c38883b851f21cc624dd4135496bfbea3c74d32fb8bbc0a4e5a4f5b16c07900712f23e5fa1ecb62aa22251753ea0302047c435bb500673065023020270baaa5aee8dd96ea85ecd45cf1996494f1ef38511965b0ad2a4b826366c8cd2ecbcfa6de9e5ed56d2557e9206616023100ef44c021d40c1ef260f2254deab8dcd461f1f41319fb828177625a15e69a7a96460a769e246e2b58b759cb738a1b349f0302047c435bb5006830660231008edecb680e315e4d035bafadecdb4a742be6c0c413a54bb0acd5b9c51307c290016962395a7deb0ef6a58166b87a9dc7023100d46805a640bd83c835d8f9a91315653bfdab1bf803281b62b0d08621b282deea1c4c045714425fcce516c427766a72160302047c435bb5006730650231009a9da968f8d5fd2a4da71218f84362436bd5091729491ae6af4abf2e9e9e8486ac2b656e096201e36e1e2468bbe996e402300c357300132fe72335279e3eee0361c71837b4c49ee8f6c7c8d59d982955a8519e9ecd5a45a0118429a24e5b0b7ccca50302047c435bb500673065023044d45f0a43817091cf08d63dba8f75152e5568968ffd7c6b16c289f39d472bb36a5e11c711a9f4bd7a6e57e7df460454023100bd695a78727dff4239e20c13ad5e3da669e33638d6f638048efacef286dfaccf71736640ee606c4eef068efa782751870302047c435bb500673065023100a90f671775504e019394db11e8344117c23c7d906f960260ca31949d8ca6b4955a3d3c0915fcc0d368888e7051f423f102303893f8952a24504b61d673f4eea9484c51abf71e295b708600e4ff99be356c906cc782734c84a0cea12dd1979567ad1a0302047c435bb500673065023100e7757ac218ddb2b94d16042dda77905da67c6b6f0b482f0eef1106a639456cb6694fd6063a2f6262a632f5f3489b1bf302301ed2e1360a59bad50708a9142a04fa3d12a764d3a33172877954296a0e098f62e32a283e93f75382f919aec704bfe1680302047c435bb500683066023100fc09f15a6a9d3af984b51d60f861beab939aa4cf0df1b3bed891b0800ef6e595c49b19f5a57b711173e4ff94cc7ddfcb023100fa83f58d0925d446b314058d0c42828279ff67cb4a841722f81cffcd5a9e6fc7cf88e56bd6263b15e61c07cfbb6f99e60302047c435bb500683066023100c32b55ecd0cea34f877bbfda7d180345778a324f9dd6de814e36bb6cb31411636a88d440f80e7f1668f6337156e2eb18023100bf86c831a908d9838a0c1dbb4bc1d407120c5fb65164ebcaa9b7148c9ef458f35d03eeb4cb875d22063bfa2e9f4331e50302047c435bb500673065023100f0074f5342624aecc127bf4b1f1a551e0332ed7459955348c1c736fd08e63bf0c9e1c8aba86ba73ed6666cf365bdd6b302301c2aee32758feddd727551775147c01b0e6b0475a41b173df3ea8996a4a7717cbdd7588aa170533f97ab05465208303d0302047c435bb500673065023022ace7617e565b8e1c73a7f92452d48a169b1ac82f76f47175aaff257ba21eab42e875d90b569d6ac833e68687b00b8e023100f5ad6d224db26b14d449d55fe5a81fd34c0b7ef9608961adb154f580f27f3d5406e7857f89e56cd1bc0493022c6a0c3c0302047c435bb5006730650231008160880ca8fbf7914bf98a43ae5b6c0a9960f978e45be3268ce990fd00d3cc947c83ae9f4e23dd369adfff16f475c88b023048adec563b0bec9c4ba4e1a422fca2a5de5fce837de4298e0ec256ee1db2123c1022d0ff518ff556068835c59aa0224a0302047c435bb500673065023100c40703b4fbbb354a97c274544129a8588e1f176216e276219c681e3c1fc1169c201e2107a46a71232b0e58f8035b9fc302306b12bd95d6e5c8a20ef1c416a45bde882b1c12477487fad7233d179d91110d48867b911faf3a45943db24e8d4068224c0302047c435bb500673065023008bab3f85a03d4358c8468e80b9a86a5a21c1f81525c97c21b2a78926b30b0971963838e40bfd596bf5c66410b5365ba023100ecbd72d6cd3cbe3180aa4c18286747431e773acbabbfc7ffa28f291227355812cb9a5bc3bdfbf7505c26dd1b89a04fae0302047c435bb500683066023100916e9d2246955aba92a12a734b7abecf4efa6b85e157333e2fd5f60e57a3a3bcb9059b61798b72bf8a77a3ff076227da023100fe0f6d3ee9cbf95eaf74bdf4f8501d0332236f5fbd68168a4aa88570135540864aa2dca416e8f69104c292e8545c32950302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f4c4dbfd2f61f0683763ea48261a22740dd1f8c98af86531dae0f7a46c68c96e6e4e6491c58a7870c57e209a1a30fa5a023011ac9b468b5b8c5aad18523bf6d95f0128a50d69551dddb80283742618c67788797ad9282c6421de914b7c29121a8d780302047c435bb50066306402306bbfccd7ae20ada21a7ac1b4f458c69bc4197aee68c87bb8ca1c17b54308db79e951dc0c35fbb5c9ded6d1d3a9a90e1002307f7bddeb883275ce44e8fca95ec640b4d917145b910379bef2674c8d6388a9cd409f3527e3cd9cab901d7b1bfde08a290302047c435bb500683066023100d22269323c3b8a8606c3ed14536d4e692b54a0780336694a9862ed44b822329e3eed4b6190b6d415d04e18c97e0bbfd0023100a002fdf1cf176951f23797f144b4539245d7499dab27ddbe9fcac45d0d2ea278ae4f6c4370e69cad02b6bff9b0ef6ae20302047c435bb5006730650230727c677e7299981893012d6dc117cc7d8c2c5dacde9dc0ab83334a4f4fae4e15fa6e76ef963ae3f2b176cc130414749e0231009301115daa2f1db0d50a9442967e77366922a8944a6a2b26ed2ebee3451538962144e69864e373af2f5bcb97e0de1a9d0302047c435bb500673065023100d929661945182d7567dda80060efdf7829d48880f81ae7838615a18568153c4cdd4ec8507a44c4930bd56997119044bd023009f38f34a0069a994e261355e2743d16ad60f66d21a4ec4f128d30fbd1494f3c653b00dc2f69a71182b36346db3804f10302047c435bb500663064023004254a98210149aa1910590bcdf28c28e9999958c02b53a8fd71905255f04362847ed8e894e60a5b92f48eb4592a09750230705239cdf7472b6d8ad6a7011b4331fe0f9fb5f785c6dcf8dfbdb132bbc99dcff0f6fff772fa8a6b3b7b2e0b7855d7c80302047c435bb5006730650231009bd0b0526953e0235890575b4d78aa20b3a44f93862020ab653986e7a2aa913ac87c2ad0d5dc656fc707524792734c62023075f6b5d8f1b1ddd9abbafd6fb504adf8f7a965f3369812331b242beee85d7c6cc05bbe1cf4995508b9c431fa259275880302047c435bb500673065023000c5f894c39461ae7c713b23a738d2fd4f71dcfb49f1180dce8e0ed22573e8c489089720f38e38523288920119110cb7023100d0f18323c57d072517cfcbfa43b9e664add5d2f6644c5a8aff4bbe428a1e7081a81918f22cac445da121c6ff4828d7120302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d553e2018095d4ec00ad5614e1b5cc1f3c774c8e8c3336d699f06f8284b13b45a4c1502204eaa37fbca28339cf04bbe8023100a0cf4592bdaa1687458f1a42fe5ed5b79cadde3a84347da305cc73451c4d08c4af029156d1d528f410ced373a4c298fd0302047c435bb5006730650230172999900c5f1107f1174a12ff610f97683a1ffe60f8018dd191b0346c445c32efb30e47640dce2ee152ecdc6a777dba023100f57c831a58e9490b9ec47934a8e0376035249ac2dfff8687b18cce144aca2a35985a3bd95d407ffc4451f8e5e4dd81d10302047c435bb5006630640230648f13791a46e7c6e31c7a9972092530936b29192e1e75f8f2b3d2bca901284414ea1d7474d3f3ba59069663f2ff3aae02303113f99799f6e66977630d9af1a461b8c6da7c1b7f9a2d74918e1ba71f2d642e21300494b480a316339ba117638bcde60302047c435bb5006630640230598c8e08c230ae6e7e585218c3139e07ecd826bfa216d2871cd4a254265d6b93b404f2de505d2fbc5be72b64a4d122b80230798229d0332d5de3cd4656e04d59d5b991f978c46dee645a6695b21834b27b060e4b8deb69f5672295484d3aa141a0420302047c435bb500673065023100cd57e8b34679fb7880f909b988c3dda1fa577d7daba8c47f762857aaaaa3c1a10aa0576605cd1f9e0d4b8c004604ff91023032b8ed7e99ad69766ccfec474dd9aaddf5b311c8a4fb33dd2bade1c2e8c97b0f067530563c009fe50e0bb0c411bc7e7e0302047c435bb50066306402303687086a3deb1e3ce2e5e8c7783c1bd9c0185208f6d1a911e599bc8b681a5d8acc6f3c51412ae930dd47abea3290ba36023055f6644d5bc8019cbb419a8d5e8745625cd91dad2dafa4abe7e920bf88ede0022581ce4a9ef8b022f99df60ae8349f240302047c435bb500683066023100d28a712ad0d5d0d012a7536b0e7c544d6afc03726ba9dd367ec3c63517797dc1a86ea03b5dfa34688945876f92762d8a023100e013bd1da1848345c879c941f6504c98b0e70532b30ef9b8a4294c8b9e9d641ef72200e2acc515000affc2cdd48db2e40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230663af932bae6a4b9ef2e2876e05a5e5e764cd0a831140d28808c2d50b29f574713d675f3c13ceb3dec46068c1f7e6fa1023053054878abdbe5549ca3a5cd420ff875309d80ba5ab35c6b56b261543fa064128d833c27773152904ffd18c6c6a8fedd0302047c435bb50066306402307a407380e140c073d7b39242c12c00478bde5d4b354633cbbc4579331d68ac13b991f05d76055e9c590ab0d7f0b857ed0230015ae4d9074a3c8c025ab57c0b19da3d799954254f35dd233c3df9a3e6e7f69fd11bfaa9bf447b4825c4f6680e41b7710302047c435bb5006730650231008045cb11535c1c46cf7a6348f81e72b2108450265451ced46e2d40d6b444a869181c8800c504b04fec528e69d5fb4bde023034b91f89412c1d7d188c612dcc0b134483dd2a9e2d3b7083227cf12ba5e1c0470f03b609aa5b49327399cf0c820cec620302047c435bb500673065023041d40ec734ff48c9237434df33b6d881ac5a60d921387baf4f393d791681e2b89d2aa7049737087bc40c011472bc810a023100f88c4d312860757ef14d7617d3dfbe21dc460784561b973994d94509b325f7ca8638e824f5938484931a5c91be597d5a0302047c435bb5006730650230466b03b378c9ee5f525a3ea9e93fa9b1645893b45a682e659e419da18e9ccf8ec19faeafe997e5e9b12924dc23454dce023100e33636d8e2bc500c5eb3748dc0227c1d83bfed345fd5b4ca5e77f75f1c467b1528cfdde7079c923ceacb14ebfb11aad50302047c435bb500673065023100e6833e7d745835dd25ae7bdd9b71bae40b3a73a6e855cdd5d491f7ec21481a20cc49d0cce344b4ebd1c46bd9a57f644802304cd237cebbd25d8ee8ff35e4d2cc6fdc5dafb4cb6ed2e67334eea9a67262eb1c683e81ef7b8390f15d8011f378b74d150302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f13d858526003a992c5c670e8c144ab4332e7b7ec2d3a63ad2a79424dd3783327415a305cfa32eaec985507aabbba999023100bd23dcf4905c37a9a107b36792d707c17c853a7903954b94f08bcf5fdfeffd99d9fadfb65f432591f2fd05f4f1210be20302047c435bb500683066023100aef33ed408ccab706f23ba014e61efa73912073e67b948ba6cea230fd46b0d174fbfb5f1b3455cc235bd80c45739bbf8023100d2b06ea2ac7e523b7c6f55309d6286b14126598d288c60c2f10f2c9688a3aef58e4e95d0081b3ea3b9d59436ba0f911f0302047c435bb50067306502301817074d0881533b539c804bf4ece3131e472838a89e9da0f70e99d28610094dc8b8c74e45560b4fde5c5e9cdb3a8263023100af3bb5e5eeca73ad4d9ed1ee22cbbdd5f9ce05637a81ce845d3b451de94fad61f13aa2cdcc9f7c9302b2f34e0af663ef0302047c435bb50067306502304b27b9f49970f99d320eefcc46065b9c57bee5f005abc06deef3d63101da002b7658d6ca3ab79265342f990503a6d578023100abb05e96716259eefb0419e9b3b8460ba047ef30e2045a9cfb8d06c0bed75ec8ac40b378d4e0914a79544f394e390d7b0302047c435bb50066306402307bdaca0836b222eadf4dda5cb7df17de14869372612bc8a80666b8a39a38998d6a7260c95015363dd9c5add153ae6a0802304dc4d827dde4c515f05c04c5e2740329ba8dac8d52c7506c34909d1bfed0c030a241cdd60a638df468469f97572a9ad90302047c435bb500673065023100d6b82712b27cf1f4bddede7b726968ec422c1de29d83e053df245c8f1450ead997537523db93cbb7122e6e9725da30920230751cdc2b247ec71a6226f6b3e5a396cc69705b8534debecd688d90b6c49faf08c163ff1d6322e18ada92e3cc3dbe60fc0302047c435bb50066306402300fe70987d7dbd827479bd246a02ba94f489b03c0b573cb7db4e8c930f9af3aa720388eaa495231b57eef4018188612c10230508dbd9c64cb339f21d02df2c68505816c9fdff47b3392bb2ab810db9b530c12d0216592d9929882f63e9947540242d80302047c435bb500673065023100d0f360c3f49e8ae4ba422f9a5b38f347b85af9be1b313609d53bf95b8f248cb55a773b4697d2270ec8d95cc3288e3a570230678ee286fde5decd9298b08dfe78e4740112a485cfcafa8e4ad522bd8b0ac736c0b7699a6387295fe85a90c342734b930302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310086e9d104a45b4b18c8f2cd5775abeb33de79553e3137f21fa54d9d6d496f0ec2664446dc4b1aca07d7a3d1d7cf8189a5023100a359b9eeb5fc80e026e582e02ac5f9bf9ac6ddf034726f21126fad8bb4bd5ba70853c6de3aa623a9a749fe0599d336120302047c435bb50067306502300ff04096e3838cf57e07c01819cc412121778f8d38305f2aac0a5c9cfdd9bc276f41305ed6395c0082d478d5e31fb4cd023100d9a0055b3d197c10fa199ca808ae1af7434bb7f55cceb476eabd0fb254bdf552fcff998491d264dcc5c94a1b337f07d70302047c435bb500673065023100f32f636145d66d5537c5579efdf7c1f120718f36c02fa9a069ce1a128d4e805fd30bac66671569bd26b3972d1f14ce5d02306c8364be9915c3818527a3d590d0ec5974b97ad52993c59d1a2807b4cd6420e198772458513f8d661417e7ed9ea95c780302047c435bb500683066023100c9aaf540b97b11846fce90443a5028b6dc08c9d97212b5684fdceba5afc5cdfb573ac0a168bdc06164dd8e5f2ada96e302310087531aa0c3a5d643787e97b39cdbc25dff79b167f2922cde942621be1ad32707150b711e39a70f6ef2a8fe31e0540a060302047c435bb500683066023100b6c1bd0669966d5c19995e65aa4833f0b944abe6f799a24fe747116321abd4fe76997203aae2c918cf5d554c8371d99b023100e75c99fc9fa635a1d77bac36b0f8abbb5212d114ae75c879e151a3c7c897a242e95b04dcc02ead0aa8cde43a470753eb0302047c435bb500673065023100ec5ee051292a68f654a559b9c76918b4c401c3bca42be719990b7cc0b2414b186dc9da218b88c375616d0c188515efa302305cb7e22002a30a859ab23fb3d81b8f1b054a660e171007e3523ecad708a6f0a4e47976aa87b2d77b3365b7ff9b665e000302047c435bb500673065023100b46008bb278e56059679e75d6643017c54b1beeba4e0528be0babfdafa8851f7e4771986be64469531ae963d079b1049023013e1eb26b034b56d83633d004208ac1c83bde090d9ffd5e3756624cb1d3530993c5aa973b120e0973ad93e4a743c32b50302047c435bb500683066023100fcf9f463ff75587ea68c73e81b078aaecd92fd59b8c612e337714eb175a0ed73e70f708bddbc2d904940a8d967fcd677023100ef607f331f4bd0b36fb75703fd9f315566ce0b81d9291da7e895e6b0a2d9059ae1a408f3ef866749ce59fe858d8051ed0302047c435bb500663064023064e091d3c75ec97cf62c5cf7699cb710dc155d5e6543bb5a3f5bbb041c5afd541afef8945c17f617ee78934620d4f99202301b141639c449bbfe38b48a6097d1779316dd4a775503ed674d287cdfb4a8e42bb546aed39a2381679762e8f5a279505e0302047c435bb5006830660231009209481154fd12b9815a0d7d7288d027799d1fd83e2039edbfc2c7e9caaa70e667722d794d4955c0da6e47457fa9a81d023100a02a07a07225ee502644774608f896e96013da782ceddb6604fb6ecffff1fde5480a3c8003712f52ce1611df480580f30302047c435bb500673065023100c39992f6830bcc75d0a4e90e4adc64a318215ffe2a7633798e5b7f3c88059f9698d9153a32f4940b4100cae40269012202307f1129c22c2fd7147419cfeea161c8317fafd7bff0d8e0faf01b3963bf8e745fa0f14252344eb067e3840df29cbca1130302047c435bb5006730650230015c65aa6ef3eced831a8578c372241210653d804a000df7cdaa777e8a647f2ebbfd36d0416baa008a844922232cf2b0023100ef9072c77f527e0debf0cc05965075be4833800a7dff38e84d13431d1b2a29311620e4aa5abd4f476aa153b172f164f60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230617c2c2235dd941218492727b953d29492439c343347baf784da62a77ed4ee957511322f452e1aabe8179f61d54cc07202310084486759461a5425e2b768eb228007b2cd3361a752f148a222c8333285edabbfaf3c0d39e60ca6ab44b67d71f129995a0302047c435bb5006730650230323b627536396b027745635b5dc2d074cfd708c4fe5ee5250edd0ce046a9e4eeba5001255ab107b7416ce62387844789023100c0ec2c0402f9d0e85f7deaf143f5c6ac9de6d36975cf8bbd737626f090ec095788cb1b311a1149ec9c7b0491609c8b210302047c435bb500663064023060fc97ceca2631069cbbce316b0968f377c6a9210941a53132b6293458b39403628ad1a3207383566da986ea739586300230126b44dd903c8db6807ecc86b112be3cf615402032fb2d284f6d4824f4291aff57509ee1e9d7618af0ff274be030dec70302047c435bb500683066023100f2b50d54a2603399461a967bd0c2ffd9c8214026ebdcbbcf202f891da49c8de43884905678f6a8a2126e7fcb09a3ab12023100ac8c61568ec3c84185fdf24364e249bcaba9394567072073c13b148f7f44d352cd5bc928f731235d5604c39871c887b00302047c435bb500683066023100c456971d46db3a04e62106ce6919fd2d35715f67f3d5470f64512d3da289df74bde36fda5976727b29dae5d79d028c11023100c8162eb4e3c3cb09d7daaa1129910a6ad1c892455c5e64e4db8de24f2e7e8ed99b82eae7c35c62006c2ea94a603165290302047c435bb500673065023100a210a3cc316a500e1ebd10bb81cc044f2a3dfd222dc275c147c04dbeeee37b684c416bb666d760da69b1708a188407f5023053555ac67abf8882a7ef518fb6f03809adf595ebb405c91a36444c6ec94511fe5b13b630ac5f14fdecae36d6cb70d33e0302047c435bb500673065023074afe53290b19d416417e6c48f80cf9a9516578f9dd45322df5e2219fb768d40de247cb718972a606aacaa3155a8c1d2023100d6c09585314182a3ca0a307b8f883aae33f3e6cd5a5f03cfa593a5b44befe7524acd913490cea36af0d834c5eb43d53c0302047c435bb5006730650231008f6a86baaada39905e50a209eec4dd2d1713c7fdf465d56dd39001a9107fdb62f5b9c7ff7dae92a538e8115e6afbe690023031ae105c76aa2f16e303a2cb5864c4700a275c6e8695818c034177bfbbb4eb59e42db8049b76f08338d0675dce33070e0302047c435bb5006630640230732f5af804844970f58302d9d6461c3c0dcc26b1bbad0c415f6440cbad67ba9a24524806c87c013e31a65e748a24689a02303e33a79aa8c1c5152c0db135f9925ce7b31a54f7b197311d30536643dfabad7ed4e35ba66d153197030488bd0c43c4cf0302047c435bb50066306402301d02d951bfc7245d3b3378fca2ddeb7ba59401ee556c6b18f491b25c6ae0191edc5b6147d843d2eee54f556d40f529c102301ec814c58ec0b1080d3f273c8f89d863a46d56c429fe254281c7c6b00dbbc9297ba0cfb0c52c5b663f11f977423d41870302047c435bb50067306502306d00802f43e57c88b42a29e4904dee0d5945c0556e67c72b5fd3419820db3d242ff636411562b12383925107f0ceea85023100c547e0f055d452f1cb0b8af72d5efa5d3cf2bc1331aff6c77b82fd6541c6d49f11738bb39f6d37ca0e71b36c63fc87050302047c435bb50067306502300d2453234d773bdbdd3cb599b9c43224154ad7a128f0417ab5aaa4ab6099c1c25395853b3437c84f373d9444bbf3d4df023100db110eaea12e61efbc4b5d11bf71d8f58bbbb249e1ec5dae3fcf5967b7e5498df777479b4ab6014fae8cf558ec65d77c0302047c435bb50067306502304f7c1373864e8d0f287d990661cbbaf9318f7408f1fac37e421b48bc02522cefeb3d2d48284c01bbd63f1a5ace3970c0023100c58f7aef219162bc4fa73afe89458ff7e70c5ea2359569b7d748495763ce35e32e818eec6ffe35cdd224e36bd80546bd0302047c435bb500683066023100dc4380ff7ab3ddac9eb0abfa99d6e32c545e861b5e97d856dbb0de7e593a168cfc6ab25f5b5cdd00bed950e39353127d023100b85ab6d8ad266ab1e3398798033931f4a21b566f37dc3facf315a96c52f1d11716920a89e718585758c5090e31c2dd550302047c435bb5006830660231009016073769dc803fdff390b882ee9ebe7f3bd9e4c2f019d0474b65d8483765fa1e193e2c3cfb3d4b0c270d113cfb8a51023100a215226590059a22816c0a3e400395732a48b2d4574c473f30acec6583ca57e21e8cb13691eb10dc6d42829e3365d3e60302047c435bb5006630640230148ac84e5408376a18d78bae5b7fa875b10c4c86ea95ddd72162635b9086216a1736cb69c968d463a9203d4cddf6df3002301f95b2c21ccc22ef7a8bceca69662283c1452857ceb16eb89b91a85ef4263dd052374f3ab40e3878e11b21107e7391ed0302047c435bb500683066023100a952ebdf380fae9d93c65e09b3ef46bf3775424587b1d97dff10f1fff4cb9dd0a0d4780bffd4b19322d99f333646fb200231008faccbf68c687e61194ecaff9e5dbe69d09f49d006333c9c4bd762df38b4fbdbe29920451eff37f28fc4958505ec05a20302047c435bb500673065023079285d2ab2d9824aaf14f3c80ec5c0590188908537ba53865c7b2985d0dc98c1e6645ad6086aaf7040e7f442ad5438be023100b5bba4447c0c0ade4c99b476563d56289efb65b88b18830393b32a1303dbb107ff91cb0a5913697e318198b6ffff3b040302047c435bb500663064023008c30e0cc75c277aea7a2d08a5f79b9a5f6a41a6eccbcdf0086c1ad2732efc5176dd4e69166563b28d2378529d5756bc023074e0d23af352647c1c81b6f7c7088fc8c9596a5c210d57c4c904c8bf4c0f5714ab23fb894fd3246f56189b66f9f0b17a0302047c435bb500683066023100bee3dbd9f48ef8cf4525459723200c77ce200423d44d54f6ceadee25f2195e0ad750c8dfe0a86710d2d373d8d12a9822023100ac7632080abece8680b878fea70cc74ecc064b5d73761a924aee5333136f6cd64d888cd11bd5a2fc03b0879b37c3176f0302047c435bb50066306402305294a32eeba6eaf795c02541004467759c5033f1f2ec6747129504778fe68cd7b0148062e9d24f3eebddd7b2ce4ee1e9023024992f0826edc29d8fb171dc980ed3cd0166c4d0900d2ff721ad34353485b08faea4435f876674ae8740e9c238ac42f50302047c435bb500673065023063071b4b68ffd684a8b54ff72c6c6360ae0d0570c5601185788db4e7b11cf8aaf7b3481b832f7b8a830b313490c26b13023100fb38eced2b6f6aea0064c33943e19fad2f041dfe4985e12e4e17c568c3483198a7e5081b192ebb7a036a517c966cbefd0302047c435bb50066306402301407a714ae5da73304b734405742ccf6f774e27bb235c277ab13acf06105216781123fdb358878c52cde797ed54bb77402303ce28fab4744fc34cf570c0c1c6363168a2e6b074468a64b5bb4c77626766c7a10bf6c8ed83ba1c6e12a3b9eb0a95ff00302047c435bb500683066023100941ace94555859c37312b9a1aa99b8b3cfa8a42d052334090208beb1b8cb753e4b0760dd740370f96f16a02ce8583ffd023100b8d14f353971b97e6b0d7de1fc5ebfbaf1a9b47f0930bfd4f6e38e1ca66fbc189ac0f8c716b717dc024fc4345b90877c0302047c435bb50066306402302543f9ca0310c143a01616777e3769020bab2c14c7fa2be9111622feb1c3843b42d6780f36c2ecd839c88761b52b519502304a3a5b05cae67958e5e2bdd53dc1f0e63598d154b9674042956c2228867e599de84b8aaa9482c6e753b24a26339df7d90302047c435bb500683066023100b05577daa3f5d43458d341d0ecd1c1df64f07e1db683740412fd0669aad16cfc2e008491575dead98a5ed3130a98d934023100af1c3d2028618c8f336e77343def6dcc6ef5cd1c656cce5c536ef648e57a6a4ec745b99231b4a6c12317f14ead7268bc0302047c435bb500683066023100eb361375e95c8a412b16d887af9c3bb0fd9f23e4827aa00601f47d4d5ac7ccb8db9192ca09dedc3a8dcb9bc3167e128b023100a73e745b4c2021d8d1d937cf2070f9e7a3f71b834c9aacaec60d7d075333b4270267f1df9fd2255b97e38881492eba9c0302047c435bb50066306402303c06a37f229b7fde6debf12900ce2c59e558df8e04cca601261a39ffe8f7b04186feb2bfe09b6971926e22eb4f262215023061fc214f7332a163b96c6f99440d6456705b226ba6e851fc56f91e6226a52585329361fb2c2bac542c25d95d3ebeb9830302047c435bb500683066023100d173eb5b684749adbd1dadaa1e3867e0ff05ff350f15d9b5dcc78bb72ec6a7743bd94b73bcc1a895401bdb6e1353a9a2023100e47432506990474c99605c9b1dac8cc1d1b9cc6859434a7cc77813e85c99e78d6b256559df324599530b8811a92a18df0302047c435bb50066306402304d8b73d4cb3e09de6043fa1dbacdff0468d35601dce2f48532c47d5dc99c4f419ad8bcba3c35c65e191b0bc822d2e70802301d66ab215dab5fd0d4e8f73419b2124ab793ae80cdfc2f0b5828d47970af5d496726f860801e0c516115b39d450063ad0302047c435bb500673065023077458d9a2aff1c9bf99153af83d1e3f0cd65885a4e15440450ce8a94e914a6a163f7c2d55d16a8fb6ced59fb32edee52023100aa0c712eb8ce2fa54b43cfb0949caf56c5c628b5e1a4c7864d1b60d6d794a0753697b15b230e245b558cb51eb43fa9670302047c435bb500673065023100da0b17fe51ee6c6fc8c652f8edf3c5776996fc9b1ea00a297cc9536efeb013cca295b88665224e4377fb8c5bcb96878202307e3ad8566992677e605d40beb06bfb56e99804f0c12f0572753c0577971e00111fc944c2a8a87079a26c615c643e05f20302047c435bb500683066023100be564e3dbd6b05d84112e2b8f934fc0257de1f1859184413f8fed5a84718ebe9198d7637977161408beb099a1bd2d75d023100a9b861318e970f1879c175aba4f8a6299a2b2a563f9cb14ddbdfe8b555c23f74b4fa6ab5b4db7d059d0bcefe522233f90302047c435bb500683066023100d2ae6a06517a5811e92efa041646ae6fe59607df95937836207d0424e3af5122a45d4579deda5671a51471b6ce211133023100ac6ac88a2b4ab7ec6ac8de8a3fcfd94330893a6076b76058f4526ff99deecdad9425324db194b9f18b44ac96bd3f75db0302047c435bb5006630640230443523d0c128835362bda238f1a5513103183509510eaa35c1ce899b32cacafe0f34f50141c7e46830d55531015ace320230556c3434ae01068f19958eb497b2052382d34b448b421030c0a71c4a87bfb72e0987275637084e2e28ba9b391a28ca2e0302047c435bb500673065023100de840250d6f84814ba37f53a4360ff19bc79eb60176cea8cb7a2b7645135dfde69eccae6268cbccb6cd0a20376dedc5e0230176591459d36dd3a3c79ea4d34dd37414d18c2bc1ca9637bc121ef4810369475164a6e4923ed32fc1d2ddac340f88a230302047c435bb500673065023100fede5c0e4c3bd8b5306283c85713ef2af598d357b95ed2c8ad89a12836ced57edf3d6d8b599352a8a2ba76f870541ec6023000ffc0bbce341eae94eac0c4bb6596e2a65d0ff1671247d5048b1a2b880f5362d46bd3bcbd92b8c74634d75247dd4f690302047c435bb500673065023032798f0d69298d621ef71879fe44acfd7fd6e585da21cba1d8dad4c08e492d9f72526c4b457afd333f472efde47d2f17023100d775d6c52fad2ab4060ca9072aff5cb5b06c6fc68f139762af8df84a4614aa791639ef797bc3e47301da1d118340c4b10302047c435bb50067306502304ad1259c409981f419d285a1a26ac579655039398c48937a4783bd08df6e56bdfe600bffa66c4638a1b96dd5f9c4c18a023100dcbe97bfeadcf38fef946d6922d70094ae0fbad6eb319294a8c531824dd8a87aa05b44c11a973730771f496cf2963f990302047c435bb500673065023100a14968e02f8c2341b6d6e868d3c617c58468f6963f30ef3d47ec1344422648d26d22f9e8dc151a00615133a3ac6d82d70230347ac95a29354a8f681d6bfb0c2d2dd0a2e463abf32ace0138e19957a5f7b4b9de58068c8c31e18047753994d98ae4bc0302047c435bb5006630640230303c2eb4ff004ace804e011e64b14a59a1089a1418754d43834994c90f4ce03e034d9993fb1c66bd16cd5fac81d465630230229079b542e09d2754b8b7a428000a2d301becbdfec9c8d4d641596692d7aaaaa17c32e4c34a7b920c1174df9226533e0302047c435bb500683066023100e8687818cae1c6ef6e45913975887cb354d30024f7954de4ed3e04008466a1cd6803155187669dee3b3bcb8ec21da70b023100f0df50d3399f800ebffe228d5e9a17758eee7b66c3449a0be297a381fd71d3e70a3b14fe696d20be93373483f24b20320302047c435bb50067306502310081209b9d411b62fe6a94b459622769eb1497f525604e20b2f237c0718946276f3386797138a9ce95d89c86a9a05ccb3002301038613584f045faabccdcf6fa01b9f7cf2e61c404b9be66cd325ced5771c13334a14143536895685297c11a783ee7220302047c435bb5006730650230189d0dda67e78c4851007a98802370f2f001dbbb7414c5dc4cdc089dc3899016ae84525be93cdac18a36824986eeec1f023100831af6f9670cc060b4fb51ed64ceea252aed537843a830d4675f46099d523c8f8014e3211625f26bea6b886e56a2e00a0302047c435bb5006630640230138f8d16948664687b55c58da1f5b62514e396aef0e209050b2908c34747d84622b7db982c3c84e300f8477abe55c140023042f8f02cf3b1d5ee6f79e1a8e38438005bc00504d6b32929a65d70f72a0011cd8127dba609bb95f637ba7276b8bad1ff0302047c435bb500683066023100b894b4354654867369d491167ad8805128136096a6f8ed1bdac7ea19337df6afd7e144fdb4bec64fd006a716f7d7fe6c023100adc8507540a6b769ee4638d8020a8f57bec08d4044c0aeb5499061d23fcdf6813f850016b07da822a4a57a9436c2e3eb0302047c435bb500673065023100c41015ffbc502d1dafa6786cd2a09a3f8b452ea5e58f0c57d548f0d8bbdc84188b0f54261129c13a75be7fb98be2244f0230096d0ff20f499309af03aed9bb3a0bc28d2a4d201699abe80416944c4e9d4e44130092d1d7bb29a5b37e5dad75fed9dd0302047c435bb500663064023052b2ab9e2e9ea64e09613227c5e6473e76d9e9f04cca8e35d3b2117b8b03cf9ba4ebfc5459d0fd117eec984c046bfd7e02306d1346bfb9108793eb0e2a7d30425c16e285fdb0a2a0601bc10db0b3d8f054413bfc3fccb427e901c6ab700f457a42340302047c435bb5006830660231008b339834d3872f5cda64e5d31769086df28c0ee664268a6fa228bfb8221fccecb834212e7eafbe55eea31414084b2d3c023100d49acdc638060d1bc50dd704ca8d0bbea6c8daaf926a9f7075db37950b4063b944c59dc2e250fe083f3c9f9b68d59e4b0302047c435bb500673065023100ae5d50aae1764c930d111d1c993973698de00c703abe6fbabd5611581c5f94225cd4bbef5ff5823d149b0addbd2cd6c00230410b81ba7f47b17d44a47ac42f2f8669935322decb8ebb6f7db9536536a6458a611064aa80e2b47870b525d2b4d4eb1c0302047c435bb5006530630230283c499193caa3b89905da9e0247e8954540739a81e3733cf131dbaeb8cd1dd54f51ac9457c1d4bc91b8dad523bf14f9022f48d9e520dbc017c490216427021bb900c89b56b21284506ada7f7a1c2e87da7662785c270e631772cc68d2fb6f29040302047c435bb500663064023016721e7f9dda17c3672f490672efceb1d3d9c5c77d0752b6520876929978d7844fd3bd4437cb88360defb10d497f21c50230435dabdfa8b1c420502ea965c9c0f8d25e35ab45053ab3a9a217e5cede1fcba24ec0ed383dcc2559866a960da63ef9090302047c435bb50067306502310090728d16da4dde92edd45fb29940c70a655ca45359146dde8c217af1040d84acff247b0623139a0a493cf1d448e0dc9102305893377bd2e8ed30f35cf314a6c6790810885765773f8d0232f09cffa364129d8b5ecfa0a72c833f3c97039734c1046c0302047c435bb50067306502310091b30d9d1043b57ac103b4c522d780a6fdcf6d7c2165abee8fee2c4cbe9a501bdec177df457952497ea20c84fcd1d90602303603465ddb2928a5a944813df622878899423919299cec4e332357c327e2e9b3e08803bb231655b8ffdd09adb50274010302047c435bb500673065023100c2b79404bba98eaac97fb0c8a98f19ebafa6808f0ee4405344ec107668108377d5b27f83d1a85f7aaf82bb7d89f8640d023027d79f01fbe9b6a1341d7e8e6db3d7c8b92d453c2f3bac5d951ade80207446fdfd8cea406007cafd1ab784e9c0f0ce9b0302047c435bb500673065023100a8c35a6eeaa8991cf0e5d770c7697e07714250483e6a6181c7f27770db7db0bb040404efa235b5714b2ec5155dfd13fd0230258dfd974ea10f8854237bac6f5551235779e2568702b828d8f170b595f45a92c102180329a732054fdd584f0e7ba0e00302047c435bb50066306402302462e4db00d4937247893801e4c50f03bd59b73076d204984df2bc88787700864dd82b949aff4b8021c1fae185337d31023016451d713e40bdf8773927e86d246410cab4f52cdda2ab0b61b0fb7dd01d4dfbfe69df750776c6715c16f6231b2954d70302047c435bb50066306402306992ec2e48f0c8601a34e174f5a73f43f79fa06cf8a1ecdd1bf42aa0bf698095fc123c6887ca84a5f9a9a3208b3fb070023032d456d346f9a6fbd08223f95b23ef43be84448c6d80101ac211bf7932c5d6565220be3fac15c48f06db5815e401f0c50302047c435bb500683066023100e0293b9e47537c92fb9e9cc6d21db241c045a5c49bd7b73a2f746175cfa0fbd8b93edf2514004911ab7d93e39c1a4677023100af31ccbf4ec4babf5396adb769f4727ef95ecdf926a2c3a3bcfab710047d2dbf40a0cc4d3c5a5919b884d4f5aeda22820302047c435bb500673065023006d7a971b642005e150ef5ad09b071f23fc6124aa1354196fb852c56a5e24d514ca32bf3f96592479d722790c8b2eaff023100aab75f35cee9e35a451b634a17c8d746eeb4ddc99f08b651153c600f3411833c84b9938373b277bdb620be233d4eae960302047c435bb500683066023100abba5da9a0cfbc04164471d3f0062c4f700081ac703a08fd02cdbea9708933e2639b26e3c3a64bd52f083fad40803a46023100b9238ec0f5d9abb8bceb45b5e3958f27751c83b2791d3a5fb51d1f163f69a0c923a9dc858b5b8d8df001601a463e39e00302047c435bb50066306402307280de285a2990e85a5866132c7dcd48034f4e9634f50d83185fb6d9c8127840ef73893daffe8b1000c19a984fb6f7e402302d672e263337979b04d686e0c573378142534dd05268858a20bf7aefb7414f3551fe9d66d5e99c5f016f678cfa07a7a20302047c435bb500683066023100c55fbe4057f45dee9dfbca05df4a68c67befd19e9755ef9f896091f54f84965761b4be9e6fceaa906ca293c13b817627023100cf7de1792ef543034aa74b5e1c3d7dab77789542348bdd97a9e0b0f8ec1cc3dd63b124036dfa6580581cfa19a326894f0302047c435bb500683066023100ac296c39b45f3c88ce844ab7db4a6dc718dd93f36d16c616a785df7e4d4a54f1bc192351c3945b4c20c0666e37b5383f023100e6355f25a9c4c852c175a5dc3edf05a9fbb926328cc1fb9f96a7b7c58aa3dff4ed745d29b74e8c3672a7ea276ee109940302047c435bb50066306402303f4eed4b683738f2f7aeaf890724b151435233875b05e617b70e008cb4c7eb38d5be5f9f830334e706fc3c8d0172904f0230195f772736f935846fd76a56e0abf2028aa09c1564d3e65109cbc7d573b3980f3f7ceec6f6052bc57294731acb643c770302047c435bb5006730650230338ae7c546749d33c90e75aa1d1b47120928cd7984d9bf30d2032fbfefbb51aa569ac6724b66decd2adb92b6e68c50b0023100eb03973ca3d186bf6ef9ed9b0f2967263405367020ef241e0f61167cc72791b7d01aefbdcd3bb2d23058db1a775f97e10302047c435bb5006730650230604111e4dd76f76f9c7ace8813ac1757cafa0905a09c75dd1fede093fc3ad4871d867e3951838bf7441c1db8d8ca12e40231008e16e76ad35caf8d22e1344ada995d3190c2f7f753f8045e2206830025654321c1124c7dae5075866b62fe9860f8c7750302047c435bb50066306402301cfe7bc6d8a207cb705014e9bd43dff93b24204f4435f6f955a65d1efa53a24e291cca8e10774d310151fadafdd44a9d02303d8bc9952f12791e94b97fd19233828155095ecda2bd39f0e3b34d931f53c585eba315a2b0aa765cb8f3e93294e392750302047c435bb5006730650230466b9a19dd41782921d7070cf3f7f5a94677c8896c2ffbe7b4834cd812677c848b0f3ab9cb762a475a3f3c9c5c1f209e023100ddbf1e9f403166583ffdd7f2d3bc49c1b471a532eda11e8a9581971c90fc09bc64d5c82853009f95d3d32b377593e1f20302047c435bb500683066023100877cb5e9b7685fedf1c45fc8e58249708d640c97bc61de7c91725a68d92d8eebee977714362eac1ce1d31adc24554e52023100ab0dccebb2c190b854781883c1fefe4e2b6830e9c8d637a5d4a679a4b4c5e87992ddac2b57ecb74259b96c063dc699650302047c435bb500673065023100ffa9e2605de0126761531ed2ed8d85c0969cac20de9d96c5923486ff291be3d70c9befe49b7685d1cd3edbf41e05ce870230013495d02a1d9d2694ffeacda2b6b8a2d92b2e61cf1d1ac35b23cbd4a24dd21bcd39ed64b671449327fbd919c956aa810302047c435bb500683066023100c87b33163a1ecbbebf3bf794a55e34152dae4b72ba1423f182609ae78a3d23c5f45d6b336d4681ca8dd543afba7f741e023100ec371b5080ce0bb941182aba1e28dfc653777f6d6593e0976c64dd4ac1e34a8b65f5f0de0a354ee86b7017cdffd6d2060302047c435bb50066306402306d868ba2a932dc00c05461595833f2293b5dfbe36e541842728907f2217bb688ab0a6ff0be53c23027845f6e4490ad520230311a91bf127cd56856d61bfbe8631908c266de37bf3a96a6a9ac13f9f19c7fd40c7884f315b555465a392bd489b4b0e40302047c435bb500673065023100e42c1ab752bc7af2456a63d9310157f95777d1ef9782e4b6157dfc6cfb4a83e057beef2ac058f914e5c09812fee2032d02302af2533d448645a104bae3592283f713dd8773b53588826bf8d07d0aa0f94e020079dd72e5a32d5c57364e59b9624b7d0302047c435bb50066306402302b5634752c2a5ec4509aee7c8b7452a8f7e78fd741895c12fb5ff8a23e01639ff2ea525899d2a67b218db0233d95fc0a023039405aa80ab0d4f8c95a8a09472e31a566f707ffec80e0931d67000ef66a50dad987af5134805ca82830d4de4d22b09f0302047c435bb500683066023100e4491ba3a8a0bfc9338106ce54dd215e7f36876d46dd3801f44717c1a2103f59d70196c6a058f6e387fa2803291ec65f023100a8e6f4d54e5ce772307ef06c9856d6808dbe01f220f0e789fed99429f8314d755d72153e4674173670965d8aaf2afea60302047c435bb50067306502307085f6b1bbef1c209ca386e6028ed24b92eb2d30d77cfb965edf2eeafeef3058f86e4ff8c387e76268174069e77d920a023100ee943f0390bbe68e2896eaa64b01d3551ed2383c42b0731f0f4d993626ea00840e7f38630cfa2fc70d696997486b86220302047c435bb500673065023100e66edf3373904216380aa33c90aab903843f2fe42bdc64bca7e9d68b44fd167342e265b782ef735418668c20c3a750ac023033979e5e7fd5d99ee673c688f4393265e46d68189366587b6798f379663e0ead110536a9206eb63b0a8324b6f972554d0302047c435bb500673065023100d36eaa880548f0d7f214cd807cd93915fbe268d386678ba141bd660587ba62110f6f3e5236fd0a3ad92dbd2649af481002303e9415fffe4756795cbb5005e59d38ccd1c12393243b2394990fe44e6dbaa1b638557e529b5773c4f5c03ac1f274f9b30302047c435bb500683066023100c1b490181abe886fae5133f10dacadb16e37222c3351af32b33d3454c69e102068952192bda7e8d941dfaffe0e26faae023100d0cc9b23891ee9ef2b6e42a0f6e6bac045d73599b70961e7381b1ff73c83ef0cc1d00d4a6c93c8b0e5eef052f12bf5710302047c435bb5006830660231008e1d038892678a8c5f36930a288956895ae1e9a9ae8263e4993af71944c5f0ac0442433376aa065dd12670f3d17faa99023100d202bbb940a1f402a209fbe561f7f50997a619c77e0bf877bd422af3a2f175097abd5ef83712944389f8e5005a840e710302047c435bb500673065023100cf31fc888856e393d250ae739cdb65c6ad829a4c03bab4cd491c973883f69f93318ea7c1bd94b55db56690a9cb0310d202305999b3ccd0c8e91ecbeb7cda992138d609b62009f4f1939b90f07d821c21deefee732c61691d1a3cf4c274ee39ca1e0a0302047c435bb500683066023100e091be36e92b3bed9e8b716036a9104691683b9a4da212bc6fb1ce02ebec84ee0e342d0238ab7dabcf0f2ac953348552023100c3e1356115c57e00c6a23a7e2511ac1e4abcadac6c4c3f1c861f995017975eb281e9958528da4e9b7d57bbba8d13c9590302047c435bb5006730650230284f0627d9162de28461ea4083474c26305b9c93acf515b7ab6ae61460450fa50f4728d139db7ba8af2047344f0e46c6023100e5aa55018f11e8a37f4536d5297c9805b450d922a06eb091c5ce1103e5ac1c1de22de9a3321d385808b179eb9cad3b4f0302047c435bb5006830660231009cfee75f74ddd7add6258fa77407a9707dccc9eac6e8a7580a91c851395c7c01fd11493636a52cc0aa49efe1354fe804023100e90556113aff68852848742973e85b03a37e13ec3dd954ca4fe468fc94f44ca9a9f3a07a9dbc20ec208d06a3ec69e9150302047c435bb500673065023100beeb9d60913fcac2c9304a304afb9e5476c63f1188b2d20b699267686bb49c5bc3d92204a7066c90e1da923bb4cd53fe02300df82413a00cb461da43548371f05e9603776db7e5ae1e678ae81084bb7a70213b592ad0f820802c1f21335258bce15d0302047c435bb500673065023100d6d57e042bfc7661ff83786af1adb86dd5635813055b0b917e7f0a8d8a8163d8eefcc396b2535edd563a3dae72a445fe023058f6253d35bd721ad1309477df94e667161eb00d2e71cdbfc9a301ab66acb0e59cfe69c67fe865dbe43bec2de97f3b540302047c435bb50066306402301510e2d6b9fb47c6d625b54bb45266cb6bbcb18cbc6b8bb67cc8741f2886fcf31d7cdcb6254c4e45e58cb9f98cbdbc73023027fb555a9c30401292f9b134108ace92f0fc4a1522f0974c2eda6d77dde353f9081b1020192fdce821e6b12da37d062a0302047c435bb50067306502301b55cc05580e4d83d85dcb081f4e7d86c8668f849a6c96b4114cc9a22ad1971ff49aa07b5d47391e247d1485744e76510231009a36e98ef0a1db4189ad13069cf9be1f13bbf9bf495beadee4732609ef9f9190cd25ff2748807d4318fa4d78ee769a440302047c435bb500673065023052fa2cff365c4e388d2649673ff93f7c257420b4264ccecad7fb6f596027eb7d6eee863a46076ff72d45a3160be67717023100a32c152dbe60cee51a2498ab00277aa0d6473b9fa4b7f4416e4a8354bbcaebaf229dcd0844092fbcb1d24b431ca8333f0302047c435bb500673065023100d03925b505417e442732369158924083908bc108e1435fe24308575e21507ddd38786b04265d3e1a53dd974c54f3159702306e02b70302325d0b71b8d365d08c0fa4ad18332467153c45a3c3a348be1c4799a5974202d5306ce3f76c431e24d54c480302047c435bb500663064023052f00496381a53b48d28341b56512eeb52b96cbd90ba9b5135f2cf2ddeeec3384a64b228dcc7d8fc83c59d8341aa206f023004f7cedcf45d638618b8a6ae94de3f574f05ddf66e792f86588110c84fda21b43b999e05bc3be4a6ed8a80ea59dc41590302047c435bb500673065023100c7d195a6df76df2a2ba534f3d83baef4735d96b342e70cc67fb1d186a73a0ae3aab8a5bb5cb4130a25bdc4efca93e66b0230317444e456a4f2921dd533f84510b7727374b39ed64e4cd08c12bced6c0c41abd05472068634b6cefb9797c6dc689c110302047c435bb500683066023100bc183ede094e407b59f6b086d2a5e2d470a7aaf2e19a07e5cc730582e657b4e64042ea8ed216a2a8da053070205d1586023100de1f6fd5cd44478a03a343b998374c9a5264f5238f887eaa047426414be3e8e52eb38edb337b3ffd27c5d66385af43e40302047c435bb500683066023100d5a9a215c0b33ddd744accb8ee18a2d9ba88e6ac43a82d50bc5e55793d78f90fcf53e6eeae19e62dd11b507edaa6819402310090f160c85fa008d64c0e0c0da888d56758bddf3d461643adf0c46384cefbe696b889997f1f87e55763038631e15717a10302047c435bb5006630640230359eee7a7ea093cd08fd28149dcf064fc0f49ccf4ff5504625a0c26962f022e9e7811829c900d5833cee13c175676ad80230023add1fc1a11fbfab73d42cac99c7485aff361a5f8be35f7cce96d2af91e34037dd42f51307ebc6ed35603d40a89ecd0302047c435bb500673065023100fa34a8cd48b74ec57126e8c4393632dbc3b3953c5315fb830528c132741b17200fccba0ada356a6c47572cf707d8ce7e023024e3603908a87b51f3202fb1b4e2a6d44a450390346b97122a2d222653d1a80e35a115948bc2bde05d8525a769f6c33b0302047c435bb50066306402302e7eba887b4518395386cfc61c8559a27b4886ab38403c3c59e6ccef56b00a27bde48e9ac3198a4342ee0b3f92656d990230758ad9391ca0ab56014c6fb06cf0821ddc6544fe736724ff83b5b7f0a49f1c8687fa8078321590ea55b45a8fe4ba34280302047c435bb500683066023100d52410f35c1834ad9a7f6478daef38b40e4983a7e024b252c44af8d6c95d27c3267f1c880383f8931f17655dc022a3fe023100b5499f4a24ceb6d1b28b13ec81a9aea0e64dc9da9d5a1d0819abaa5a00c050a5a333933d2fca53a3d4c86b1ce0bbaca30302047c435bb500673065023016288d78113023babef9a7e59df6d10fffa104741eb4eccf82110eb2947632d2ee7b323c7ecc1a85b09f3ae016b61d7d0231009081ee6ce7c77873f2b23cab559e56af26b1c9c723bd7f5b1378f7360e5a8b094b08775e43d24ae7b62c10058f5ea2cb0302047c435bb500683066023100d4aa150284b71dafb0456b7086917da0b88ef9cdcbe54413465cfcea3c27c434e360859a5eadcd09ba7eef8f49ac319b023100a1b5d540bc283777e6157d7b3d1e75d4aedf096ab068df584cd1b903ff65816582d6a3e4c34ac04a690d0e38410558400302047c435bb500673065023100d6060746b5fbba450de6062b9c23d738a8ea5010f8432f850a1d7ae8bf2733f39c9bb9e3d8de64eea2c65a56da8fb379023055eab0118e0b450b346741cbcb83be05fca3e55ab37f5310f6acbe30e415038072edcbdfbf6ecb21b85ad3a6ab04e15a0302047c435bb50066306402304dff6610ff314e6f52a3a38e8982b332cde760b348f8daaab1d88728dafb6945e9f7a3aad8271ec52caeccd9cb68fcd302301cf82cf13393c6ed929712fd5745577dc5bfd8554735bd51f172162b7ffbfc58781f37bf3cd73eb11cee0d64a072110e0302047c435bb50067306502302d773da0a18d000fff5b6c9da8df338d2a1e24d9578cf0f9528720aa8f0a785fe1dee9dd9be4e9b029305b44d50ba6a8023100bfcbbc7186e2126f923c24e43ef3082b50c0af292dd4eefc23833555b62d41f91588340aa7a6623892cc5e1bd4160da30302047c435bb50068306602310092b04d0f81d180e26bccd03fb7d5b3a0328601091addc8c6f0aee99189436526f86abfec31b8ac8cd383c8fe2160fc3f023100d1e37928c5e2cecdd4997fbd69deb148695539df5246dbb68771833e026551b363174016f69c9309bdce3415e40b36ec0302047c435bb500673065023052b0c1649f712120fe91649032ff5fd423f235146a306d1f74580cc7c204fbff089d9856122e275949d3d4886b9ec3fc0231009df53091386973c87b925018de47b0d83dc9ae3ca625d25fcf2f6892d90624180c22740bd6d9aabbaa059e39ce7f98e20302047c435bb50066306402300ee2a2806a9315f99fc7c5052262d223e39aed491e20fdaecef4acec7590f6332e97e574cf8b5ab345d48ee2b5af647e023050143485d1b7cdaaa50c64f2e77ebfad1c30e9ce61554e22384e38e782c05b3cc274d09cb2714b438aef819dbcfb1e820302047c435bb500683066023100dc51e7b94860cd96c5b2b07e57cbf2b8d5580f5aaf24a6342a5217046bd3c35f16d5b4196ef88f33f7162746f930c1c2023100b2fd131f8e42a06fcd74cf08fc8e68a2833a2e79c03f69c1ad991bd992719481465b13e5bc1b5b22fcfeb8aaf675b73a0302047c435bb50066306402306039c06e14fda7f268db4aff3c2cf2a70b9c57a05312f05ac19e6294a6325b11c009f31c99b6815c833c3a30e110c3390230327d707550e2e1e3557735c7a60ae36648281ca2b0a1baf2c92c04689b31cbd142a32811eb637b1b8f2bd75894f8cdc40302047c435bb5006730650230399c746ee7a492f03e747af0204b19b346ae56cff5de5264835a68e72e32eb5249e40a70cc7a92bd1cd760f1d3bf961b023100c67df76ae2da5ac476c67ee0340a4aad2569144ca4ef98db75f22e82f7bae55ca66161449e237ed7f4c4ec2a447ef4740302047c435bb50067306502305863e9e2c541cb7efb43c382d6af396bfd09736b974977afeb00fc3d6142b39b7c0964f2b414796f1b88826947206c8c023100ed18b217fc33a20bfc0d30b38037896b1b91cd99c159034eea0b3dc63d631d6e2541c6086b07823de278e340f68a9da00302047c435bb500673065023100d2fc577c8e5975a0e7772a799eefe92928354cf5ddc9846787ecf08803013bf823e6eb8fc65f298b37b160df52815bde023068ea2d2ed698e1f4d3a63f8b6446ba1e835a79afe6b41d352329dc31a03a05d03f55ff67c50d3df495bdcd1a18fb6f050302047c435bb5006730650230754d02f63947f305210cc4cc94c1f53f1cb21353b993e7278ea058a601caaabdd2499d9f1e8cd9b6016dca232234518e023100b8f6dd188fffc6aa7bbb0f1de9ac22cdee804d7c7cb049e4d40fd407c90a5c20456343acac97c227e0f0b7ccc0d943660302047c435bb500683066023100b41f0dd533eab0c1d0717d2474edcd6c7d1952fc2859740d3791379f28ccb286787db5fed04188abbaf83fffa4bcf9b40231008f831b23c458080b6f7af5bcec6330a3d8e3835e1e1e1748dd6938968aa556c1f009e693c2ef5a276af2ff343f7cc4670302047c435bb500683066023100d45d65a1acd3f21e8edfe460e7a91b02a6aa9108f3874fef63b1aba6f7509e73c96ea38fab994421f276315e23e542bf023100ee61687cf0197697d605fac3ba67c3ad96cfb1348547dc76ba4337f5bd7b3047ce24d73edd2e23afecbd545214754c180302047c435bb500663064023001d520a570afc363c0fdff393e2d80ed0d3d1e9ca01e593ec354a7bee8fe9fbb3fd73c78a6eb8c4e76eafb4cde6070ce023075cb3bc56f94088a9e1ea1e71f65ad1e926d1d512c2e6ebf88e7402dff5751a17b501bc01b0ec9310d131b5cec0564670302047c435bb50066306402301cf621542d1962dc3e81f438658b913c707f451ab2c14538edd269a5600522b02031826449020d9f11865f33f37041af02303ebfa291811b14b071ad6b1f9f5ead2f5c96666a40f464f8cc8742c3d643895008f20cd1f35100fdc978a7256855d4fb0302047c435bb50066306402300123f0a0d27b1b0682e8a79821ebaa9d500395c04ba49b357b071dc75f893a1003ec691bcda6a28300c9581f4942760e02304849f6dee07a153bb7f2a924d43726e444a1c772b3fd91bda66f63fec3b623b16931b4f13429dacb96d5e442b2a6ac270302047c435bb5006730650231008df22b049a3fb09cdf8de9d31f96bf99af16d090c54c2643ca4dc4836aaddd0d9eb138511e05c06b1e73861f3784f2cb023064f46297d802f85c9c3e465eb3a67d17c58fcfb6f0a125a304e6cc6ed0590cba5762d7da97dda966ad1e049841c7f9b10302047c435bb5006830660231009b54c7e053cf63f45e8140b67c7718e54cde2a030d30fea87544e546d6a52869dc0b1bbf49dbc97b6c76839a07a61122023100fbe3192c8ded8282fc938aa6b1f669dc2896b31b074a524c7039f2584684046949fa34a1b70626820ddfce5407045f430302047c435bb500673065023072c6b7d58881d915621f56e88901e9dd434427b7ac3c5218a3be9674e6f48729e57f1d4f9d23a62071dc3270445aa40a023100e4de3a80d92a46712997645c6ba22b69030997813319b85426a82201a7bf4014d5dee268b7ce7af1199fa50c44cb51270302047c435bb500673065023100f2fe78c1d911f0e49cf57d2ed19ae487f0bd564759febcc1e952e44a918a5c7ce55e4146d0cc688e56495fa78f5dcf43023018abeb5e9f8f5853bdec6dd2e067d746d324d33fa1c178444050b7f6aab484149a27aba793e5dacf6b1bcf7d1739d9d30302047c435bb5006730650231008aa5be1ed453ea9a74fdf34c61f0e0ebcace053d1a4f024b826240eae371e50aa812c1513ee9a9ebe914b2aa63f1c222023076b1106f0d15c27771f33384dddbd59051e86253fefeaa8c8f2f6e9e4fdcfc4a43f513de3bbe8073924c1bd237ea8a280302047c435bb5006830660231009eb96dffca4cc3c5554136d296eedeb9048704585deaba133093f2dad15170776fb9021bae87a79c6382b5e927b1c8750231008f4ae8ee8151e789d5f2ab3667d7a30ae411ee52c750217b333d612c490662789b3b0b55b47d95c3f4a6a80bfbe7c1f10302047c435bb5006730650230307b2a8067a8c3bd75b386e1b83b4c4e3f8058ffafe7e2f1d08b69b222548a71fe1b2f703fc3dc7a1d32b1882340e21d023100ad00866a66578c9f108c7bd9b9979a92fde62d5dd64ba8379ce56b7d37ec05e351cafd64df9fc6b57d36cef3497247a10302047c435bb500683066023100b76576ed1c5fd8c586d923b6da042c33242e4d991bfc9bad7009d08c9432c5f976cd9b3d3e7d2a1f5fcde5d125431034023100f3204dcc32c407fcaac8886cc3411f7d41ca2beb524d7c57a0e1e2d8d8c0bb0c64276febfad8dceef40cc710a8fc200a0302047c435bb500683066023100f08afdab71d8b889647bd2bdb4183b51b407e8b372c8a008477120570534ebf481c3aa6b96e8fa9129f64e85ddd8aaf80231008dd01e6602db1f67d89f24a1da7e66c23882bb4bde2893fd4d674ab91e3bd7aab0c739a4ab62c2cd4f008a4abec91f3a0302047c435bb50067306502304a7da82f22e715198b60292973486e730fbb718c03b892dfdc893bbe3bc7916c778255b40432c2e57e61756817d30de1023100cc4878ce38437e3254dbd2c1c9f1018df3d3132131e829563e374fa8d1dfe385ad28d7f40a97474fb15786d6d6635eb90302047c435bb500673065023032db0bdacc36b8c5d9fb8738e38e65fb210821cce3b69fd0717703d9293d2799fa2ea72424cbf440020e0b6ce090a1fc023100d1a88a437c39bceec87bd90d909837c286ce82638e6a251fc748a5b9be26fdddb82e42005d4f71c5cbfdbe1232b2c4a30302047c435bb500673065023058b6f1245ffef9997240f5da0f351e7f31d262c3dad02ac5f91a73ae2e3849c9f4e7d6985da58c82d467f12acb5659bc0231008bc4322c1ba0daaab83659507f10fe95c053a34f6641cdd68cf34b8feb743a1c9f02739ab5422b0176ee3cdec13ff3550302047c435bb500683066023100af5bcbc047d35ab044df30abd957a088128e1f049184a7ebc7e48dd72127773ea00efa71ac69f5969bcea0ed000435f8023100e4cbecefe1de34f9b0ac91660b4bf10d14a92deb0e22ec498f66b38920bfde6cbb5ca53e797e0bd020bd71b42138d7220302047c435bb500673065023100e5ede6d1151e9c449d7842fe581ff937a60b6c9c2437b03f5e4a2eb902a088a9ba7f33f1a6fa9f4da101effaab60607f0230084ea726c68181b975a6f143394ae33064dc3f9b99d30776126654829c614f249f896e2ec3abd49779896935b0d840df0302047c435bb50066306402303cc87f08dd4c200e999b73b9d24e384436b8b3769157f55a089b7f2132d94e4912b9ee596bba577d8865b6095f25109d02303a060878ba736b910c80d0aaf455a9938fb5fec01c79a0df4e86c0fd5797321773a01f6c29246d857b0cc8fb1ca20d8c0302047c435bb500663064023047bb5431f6429531a943cc875ef6361688b615981607f92b740e8b7e43e9aa489e488aca61c3f407cbbfe3f44d9838530230048002466b6408c2447c4b57baf9a390141557b6ecdf77a37af4a3410faa46fe117512262ef67cad1d452930c40ff1ab0302047c435bb50066306402307e8aa3ee076f5f2d41ee1de412563aa736ab9d34334675af99b1daf2895fef52aa0526273e6519e375cf28fe36c139c102303ddbc8b7d9b1733e37d08c784715a02ccef706cfd80279fe6632f08fb6facca1449e6fa5ae2f9dbe667114521e703f760302047c435bb5006630640230078266548ba5216864ed919395aaef6a4f026f36d6151d83ecd420ed29842ca0ce7ce231f695156f3a32498510cc0f39023019ba1c5f5b276f156f45d597277cd113e4327a1834191f50fe335877d00a3f86c543db0fb683b71d8e5aa80184d7f0650302047c435bb5006730650230104fa0bcdd8e9c9f2a5e202521d9b142a9017893cc308c5e1b174ef414b45d73dc07f572eeaefb24af1ba25c29c54212023100fe798621668e2e4313e9a78f4d8455a6ca5fdbb741131ae67a3a5c3340166b9eb2cc21838926e3713b44cd5f6aa7d5670302047c435bb50066306402303b8a7b6e3846b965c0c0848a0f376044d770422da8a95affda3a03ed8985de707fae01f7aff694fd4fb7233a5ad2dfdc023052df67a5b44c2a24cba7b5658336402aa9549c76cf8afbfc8d66a8d219d14859c6d7dc9a05a875f9b75bcda257c69a7d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023066a3b7fcf19725ffd7e70c154a80f21638059c9ff3f9b7357a66e7d7e11b6b4e0dfd4ad83a6b8b0f061da88b4750748d0231008be359b24e68c4c893cb1c42c7361e96b4c378358a9cdd19ed8146395329b76673bdae8e65edeb5d734a09fbb15435280302047c435bb500683066023100b87040dd483d98bac6d63372dee7ff3514a01e5a31736593002abdebb45811b7bb86eda845d39b97d433ca447f73de2a023100c4987eece05a95d10dcb85bb953d4fdedadb6f58ba86cc210a670b859523e283b3078cf57a39f70a14dc7c5055a405090302047c435bb500673065023100b41f0f36a337749f12458d44bc3c0e49b5e6a2be0e125cf9a22ce5ac3b3901ec314a1e48150f13118eb4c7a93117ffd502301f02e95f562598b86f9a1c56c002cd0df9b48d5b63a38cb65ff85b7384d66d0fa99202fc03c604d9f69241671a4e6e6e0302047c435bb500683066023100fddd8432836c3915aff85a81fb7d1a5582c96764d01f4e5bd639db5857e698229b11b1a0132b4b0c2fc6d8f41cf1394702310091472ac9e1fb654751654fd68276aa7683998551003fc0f4c4e6bb96882cc11f77b5c274686b269dbc1044ca1ec5ed000302047c435bb5006730650230047f69fe7493174c23311d24b110dccd8c4b83ff6810183f7aaef440434be787e831a88a7e5f4c0a254c6ba5e89d9bb6023100f79922631df162826d5540b81da1f69576cfc19dbf4238618bc273544e4e86701b07fdff208ba3c0d8742bb836c894f30302047c435bb5006830660231008fb2f2cf6c3eee28eb4d0be045ebb34c6e351e13f742882d199d6eeae26fe30c3e05ed7a85706fe4052216b85210dd84023100f12f9b809a85e611a7e14858198f24e8b7d76e9407e92b35053803da45566aa87d4abb83fb5bd3697badf6e4e54cca620302047c435bb500663064023079ee7d18c80e11d37e44905722af151e5a6c44461239d3b157216ce3aeb5605e4c59febf44f8a9179bcfcbebc7846d2d02302acc4ef8882432803993f3eab71e2e29ebd629124ffa35533b3f36c0e4e6ca89917c86744ee9967ac45243155c6c2ada0302047c435bb500683066023100b0fd86544b3e42eca1f3de600553caab18244fe3946b690592390835e0cddb92c12ba25c3a8abca0da8964f90e076c52023100c346712a5c1a78353fc9f234d7232d5ff01d8a7cd640ea39ca6c55bd1e62287888a05e6a2dbca7e96309ea923fdbde270302047c435bb500673065023100c35564b98a742134b36ee2fbe4ac969a950f9d8d375169fc49dcc7580c312116beba13deb7f580c88f92ba9678c747bb0230542f102a453295a8bf342e0da1c1345ce3f2a7ab57eacc5744bc1778594f0332ab42914bd1c214ef515cbef6270fe0d90302047c435bb500673065023100f90156f04d6f442fa1bb871532e032b9ba49c0f8e061568930c2339bd3a2ef611c815d2ce92a2e7e7497a7655d8fbd14023041108847727e4e9d816aac6ee6d3665c7066578446f97ba9e932dfe55176280f652be7ccc94a6106a72cf259f70365d10302047c435bb500683066023100ad4d4894a1967adf7960a2d40dfe2d058280cc319f9fac09dca29b4165efb9c4ecf7686b5547e6c1213cb7349955a3c5023100907b681ce27eea7ac83b2152ae6961d76750f37c9d25825bea242ef1cf7ff3a64813e2722ef4e2220efebc88b362cd400302047c435bb50067306502303bdc9c55203435f0669fe552965fc8de8e692a8230fe248b866be05d5d07bc5b5a32a5512e3f5c198afd2b34195a36e0023100c49648a21dfb4eafc71df73aa1e678bb9fb60bf97f48ce98c36c8e35955945a652c948a36ddc444e26e53cdaee2512ff0302047c435bb500663064023072cdf3bf95d4572b95adfaa828b934ca250bf523829f91b88f36b8b6bc680d6e4fa76e2e26cd0ad9e09d87821926625f023075312f2c033af2435ea10591e4e97f74be3d3c12215500f8ae2c47d6869bbef44fd3c86a40bd9924fbbb61200e17cfa40302047c435bb500673065023077cf7f3a9ef250302f49e62653e980456ddc3f21e94313aeb19c283c8b1838e7e1f1e89961437b91bf29479ad08e3cf5023100e7e8dcfecb2a149bda8a25aec27e97a5013b264e4ed9d46b5a08c2b365a8ae181076db3db239a5f59f93c0988f010a220302047c435bb50067306502303ec67600b5eb2727c2b53bbfed57dad6707244d9234fa5f3dedcde49e8f7fa54c07cb2f53561f4d235796b67c9e12fbe023100de35be42e9d712ba4b0fe7227ac33eef05bd5115f807f4b62c2d0e33266460cffdd86e8435375b13569ccc90ff16f5d00302047c435bb500673065023100c0cf0559a2ce04e1ee05941a7838281461746ca0db48a88913fb8fd1b99f3397530a5ae4a2c2c2ee93ecf48b6f5df11002302e7701abc4f332508967496a0620f5b57a4b547142e609a79f9d7144defdb28317598bfd5b0a7168927769cce6f1ff120302047c435bb500683066023100baf05a0fb6cd67cca6142808e7c82abb1d3951ba5d6459280027529a4b30c6347db69189f2f3b78a64e03f6452fb518a023100f501c2a741f7304fa165540ae95a1f411a87782361836edcf63a06d02234c96e713a08954ed5fb16f9302d04bf09049f0302047c435bb500683066023100c496cfcaa1fcb6a1b4ede30052f1c237d989698f171924d00140085afe85d853565cfac030c060c6e34b3028fada3a98023100a78d61c6d61b430ccb21e17929263e52316628ba058e4b4360b4928067b36e8943e6e66218a4d02bbf5007fd8a83ca980302047c435bb500663064023032a8033978788e5a322cabf84c157682158ade286d832f2a210dfdeee6b5a6f84201c680e912bc9e9e2e3e61a3ca0bc70230103394efdf152806830b8f867f26f9bb012c8439013c5235b39780cfc999dbe88c968fd8802dd28648c9d8c706043f890302047c435bb500683066023100f9ac81678cf499ed7bb1011b8216f2cad1b68ae83798b65c58eac58eaf864639e3f670822ad113f030d022665e7611ab023100b41de63f33592d3a57558caf21e87a4b88abef7c9170071d1d4275702daa1493731b3b4f1f1b8145add8a600990d765c0302047c435bb500663064023036e04a8249d88989b64688df56f30febfd5e960b054edb207605c7d88b008c77953efddcc05f72fc8534962a6c1f4c25023047da5b3121833534507f358f65f012f1130129ffc7e1871bda7214c2591a5de64dce80b27a66d3dfd7f734b27cf9aca30302047c435bb5006630640230774355f0a365e68a2aa688224310554ee1c9b3a584f3a4df43dea2afc00b5f7757f73e6e610d18d720f53b1ad43e401002307743b332a7e031662ef4aaa3ecc4223665ab7d6a4e2edd31d87789010ec02a2f4f519db2f7fce5596f4f55fb8254dae90302047c435bb5006630640230042d894c7b053f62244a7dd8bb4315779648c9113fcbe6af53450316f3a4706b5b981d105c5d21b3d047fa08a85a375102304fece34404d24be5c00114f8ce1528a86164a54d6c8f89784649953946e25659b6122ff5f40a35f02466222b0e0d9afa0302047c435bb500673065023100db64444f553bf439560bb5e5a4178f884841c0404e08f1877a7e5977e0bfdeb152d2a2530887b3c0ad65a0933def533302307e2209ca579dbdf2a27cde23b380b7dedc2281d1aca48542beaf8dec82546e46c38f8480df8ad7c63a9686e09680d0a90302047c435bb50067306502310094e2d5ecba2a9285d07e3cc70072bb3da189a187a016bbe546a3b9ba961bd65f697f8fe947229c05d3926e0e8c94cfaa023037bc9777a345dd4ce62e1c0a9e6d9d91b16fd54ff970353fefd0d9b2cf707ddd894e5e16dd5fa78fa60f8b01788f50de0302047c435bb50067306502303b39b4d4ec39f069819eedc4151ee09efd9aee39b6df127a055c415471219d36e587fbba5a682d4140e1da24e0410ab0023100b080884012e76d320411e16f283900dfa965dcc180479bc3105cf17f5d57c194441f6d428e1c298c80d54ece32e71dbb0302047c435bb50067306502301d8e14de04602001fc8d17d2c80e4510145a7eab14d12d93788d69ec7e5c4c3891b32436ed90801c889cfa2128da752a023100ae323d268838925043c760c2210c8187b3e9a8160128044b7b2c7bb30aa7e29be3a6d24b4709d035a134dae73b7a54380302047c435bb50066306402301724bd46ad055c1cd3af4eabca303ecdfb30953dfd8420eb2460470515595e5d05baebf8ecbc923e66b5c2a13f855d2502303fdf7f4c1a8935102f01f498438d9e0cf2c40bfe1082311ef0f22df70f870fbca20d793060aef8141e8a073f9dc027040302047c435bb500683066023100cad83a1176c155d50353cfc24d534fb81c423a54c359d8630f5d94fa7944b655e386ff34a9c69ca6bc6e797b85eba593023100f21166167558f762813489ea85282eb169408f4a48d56dd649779d3b9551655a492cd5d9e8711ae1840e3fd18c76b2110302047c435bb50067306502304574286ae5cbcddcb42f0a1ccc6b8ca9fe6d060faf846e9b185778a0fabdba382354b8709e9736c1abf26c6933ea6f92023100e17da8f7226d8991510a729dc550c83dfe7d1817bdcb877be9cb320e6c1efdd09ba07d4111fb83e6efd46e75ec0dffee0302047c435bb5006730650230503fa8eceb0b38b67452ea157c1adc258b9c696125c9d99d80b3eeeda6298c01425ff2c13eae0907c7aaf47260b3f22a023100944fe801689b04ddb818b677e041d8f37751a469ea5a1760c6c6d8499f04e6aca20594278a2a4f603fe4b57ed640fe8e0302047c435bb500673065023100a077305b47e3830b29a3d3c7984d3aabec7f25cd6858a70891bcd861d69cb7c72152f7b59977679135de3920acf1cf0a023041777802f8b1c24e476d13e6c45d88900596a842d1b6699d8d2a1a2ca0bdebd009ea04bc92f4230b5288645d1f68b8940302047c435bb50066306402304bfc9cc00916fa5f473b330fad8a3985353fc56cbdc6526b6a68d934f067ab2e2d09db54c4a1e8567f8115b33ad55a030230080b6d7abfb3bb311f8838771e37ba749cee5ab9b9ff3007501cdf8f5d52960b6cedd178e8dd3b646cce0edb6adeaaf30302047c435bb5006730650231008484dbd529706f4eae6481bbc80d10c34fc42b571a3207c07b39940737547bd4547e9801713e155a4eb51a53cde2d1e1023004a15fb3769b6ff75ad90d30f5bf81903566985413cc79e472e3e73ddba1d311f2dfb4c20ed8e597c9533442d2be3e8e0302047c435bb500663064023036f098cced32965a4894608b0a3350e10c1acdedc89a7c5837e2b3b4ed5119ea1cae4e35588e15efe8be890e3ad1692302301045d845c9b37ead32ecd8c5acf76c53a92b55ca81865365e67163ec5bd411660ecbdb521909c25a6f918332462f6c3c0302047c435bb500683066023100b2589cd8d3c8728b8e88287398de7096635ae82280516df59ea5b4b1d71baecf73d5a754ecee8bcd5b085849b452d74d023100b8eed857c4728e7fb8746177aaeb567dbef3c8cf71773764912adb17afce319da53b1d2c0e448dfa3f20badfbbf3d4d60302047c435bb500683066023100e24dc9112878859031a0429e85225cee03abb236d58f892dc9e376fc7a00b9988861938b90d3839d8590322e8289c12b023100df0db8b374cb1217af184f158f979b96cbcd3d75147b4f407b4dd28c06794690e28a4f78c70354e69ed4be7cc482a5ce0302047c435bb50066306402307eff044b69ca0e0ab319cc5357d851477e8d580cd3b7fc34233c4188ea459b47cf4f730ce53bafbcef4d5f98d74a393502306a6c693b449bb3e8d726cc169a0760d0fc453a851c9d08f64c8b3419bb9a070f69ae32bf73f0251c0590513ce74335a10302047c435bb50067306502307329c50fa4b7a0e513f0ecb9c583aee8b4e2097f6833173ac14138540c8b82f33264f61489bc1e992a180282542c08cc023100a986ee0daec3ef03f7556cbf25e7538e3f261a359d9fd65b96480ed61820201b14555967ebfedab3620e602628dfb2a00302047c435bb500683066023100e79c3b5a03161c00f9bddba19d331719d88e16693530a9c1d678138cfdae9bcaee19a5bda5d5dad47ebd5d28d8a0fff1023100f92b59ebe139e4b652a783057b9c83485e7ae0a91e03f356598e6fa0e4c41272c30cdad25bce0ce759685140fde738980302047c435bb50067306502303e2aa4cdbabdb98c47ff37ee0986408cff7cc3275314f91baebe49a6e5fcdf6ea7baddcf511ff57eef5e9483bf720ce1023100e0460ce1778dbdcfb1d90e981980427672b7b264f78f120c4b206b49d165f8a6df4db82c0546637580ff5a50255af1ed0302047c435bb500683066023100f39522a23303e5992e44e847f05ced635187d14bdcb25837495664f052d52b5ceafad0c095c5b6bb6f62518ef2b4b252023100901efe2a05b2e66c4743e744906acad493378386268d10a7146d865c5a34dc07e831b17cf5019d845a688f8e56c32d8d0302047c435bb5006630640230645b286ea95cb9029b29b4b1430fd1d86fd3162482bad19648002b3354ef03c0b79aaf7e65b6b8042a5fe82c123aea8102300b168faf70bc5b8486248b9139716af9e6d4960801d49bfd1d5f23c7232d675625e21cac0493b2b25976e6eda33ee28e0302047c435bb50066306402302cec3a7d5eb9f5c6b172281922fa01cc3d383d3de507b88acc21a6954f6163c23faa777c556a85c03659c0d912f06010023059c96eec5c16cf564e19572b9bcefce01c21ed7ca3ba8b37699f9b0bcc09e528f247f44ac224a9cf1c3d89099d46cd930302047c435bb5006830660231009b14624e9e8ce7897e6e94ab95691d88a93c59f6fdbc697e55257c5bcd8991e396e86174a19ad81c974bca901ebbf355023100ea983147e573a17ee862e97bcae6c5d35c827fa59a048a02db28c5184c0bf2a377ddd7e6aa098688f6c0f8a778315b580302047c435bb500673065023100d5f8c3a22309a27c15386c63804c2a6f2d3bd3fb94728eb85ba2c152003cc9ef554b275bd15d96d2fecefd92dd69f2d00230561e38bf57fc8980e8fb1339cb46c369a7af76a28b07bbc2e3313e239132403e2f01e8d4b60c2de20dd6eff5d0e9ea280302047c435bb500683066023100cedd47954debcfa31717df4c878dd14471cb8617ee77d5de7b49da94b5ff5f3e689701203ab479fe5328f7a4ed3ce37f023100d259e6944ac0d187cbf69714ec0fc0727b1ec0ca2089168e03b9218fa223605805de3604460dab17c37d0e3f0556f79e0302047c435bb50066306402301780eaa0e819f75f4814295ffbab0aaf2e0d6288e1d983c37b2d3eb09099d894dc013b33ffebcc0fe3b20493abb7dc860230446f6fc175587665bf406544faac3fd217ea45f2a93fdf53f40703adbc0615ebc947a377e4ce529b055ce5e4cbf18cbc0302047c435bb500673065023073bda77acb8dad9312b175114fec4aa81a9aec738f120f6ec4c2f68879d386069acb00a36281b72a72b7a0a95336f050023100a5066cd25ec2e35aacdd27f8eea21c4fc598e90fb5f748aebe23aeab9f532cb880f4e474de65e728afa100207058019c0302047c435bb50066306402300dd72bf2cf1a5fa0fe3d902f3cca55baa783c416f02ed6c5d8d83f1c21262113354ded70cbde314b6fb65f6c3b94652702304b8e7e1ecfc238013002967e5459b4ae245941c52ba0747221caaf01a4f4c9082466d4b64db0e518abb8f8305b47ca510302047c435bb500673065023100de69e21100f81ffe188d2d4a700855cea907fbac1ee48ed1ebc697a04f47a4ceffa842ca5b7463685c9e2b45f6bca2a3023010ee0de8a4d8d188140460098c3eb1cc5e05c86f78ffcb858014cc2e1f4abc26529327f2ebb7c32beacb631e7ef7cedf0302047c435bb5006730650230046512f8f43626b70c1ca42fa61268f96d33a63ca19ab7386afef469efacc4cf8ccfed390278484e0a382524aec5481a023100f7fd21ff585b72bfc9652df21c9385bf0395e93acf3fac485f3c7dd0691922a7d4df9f87797abcdd564f02e3a35a96fb0302047c435bb500683066023100865af00c36dbe9e1f50b6a53da2efa660ed08e0543b07d92754d5b81726f64de09eda87414cdd48ec69c26c44a184f00023100c8f902a9dc03cfb745e887848bfaa7db00cda73f3af17c4ba3a25a31ce7dffaf4edcacb60a2582f6572c9be86de3cafd0302047c435bb500673065023100c42ae25f2d0426273d3171d46bcabac54ba84a1f15c1d58f08544659bb42dd3f42dc55fcf74ac0f5a471c1a45b5fc5ac02300f3b8235fc683bbebd5a7a411a957354e03d541559103026b0158e891ea1b8425fc3facb68dbcccbaf8edfe6eead0ca60302047c435bb500673065023100c5ec56e7db7f8254584d1e6bb743bfbbf9a38a58ef23b09a7a681d8e87bd863358f58b5324d7856c2170251b94c4820d023044dbd5e07a345bde2200c4fd07eb36a866299bdccc67beecbce933a8271613afb06cb4bd15168ada3c47381a53f343780302047c435bb500673065023100981a69b0f1b8b5ab79f69bedf87ee6ef66fe977e67044689d04a975f795ebc2deed817a24367ea91b7b6d013d58ca34f0230055ba2d0e158ffd39777ab9e290bf61db189f96310d0986cb5e09e723ca72752d2808c8dca3d096175f86d580a0a2a600302047c435bb5006630640230777e9e4895e7add7bf99fe18c6e49998a1d1de082fd09c46e38759134d0d02c54bd1cafa87fdef9e860b92e6758464b902300ab108cd32e5e4db591ccdeb2b6c255ef21b1349bf41bd909e214ab358e3c57bc60217324899f34d80173ad552e4c89b0302047c435bb5006830660231009cb496070ed590416c23e0ba635017514622361fcc1950a138cc4a87a40f7ad76590a952ddcce7dcc431622932360d12023100ced7b6192fff2f379300c93e8c0794a691c3942ad0fd615c46fe5633f5beecc75bb22da9415de5b13d364939c8beed710302047c435bb500673065023100e0d0747a0d932641a6593eb5a3915f559f1836b1b513e04d79b0c06809e5b712a9b673449bdbc078421288bcfa783c52023009473bc1400e911cc8a84c1fa755bc045fee8f89f8336a782a04b037e233733b541e065bc2b85e0590106fb7c5e5811a0302047c435bb50066306402300eadbd1ddf6d0d5f4000f86a005b76dbe820258f316ac3e8610925f74137ed37007c3dc7a782281fcbf6c668c37bec76023043fabd26c5dbd5f257c31cb3c1c6dfde5a01bf312646f47502f13cb01c8d8bb5c93b106fd39a14ae788d7db4b459d8570302047c435bb5006730650231009b3a48006dad59ac723fe1ce252b572e7ee5e44930f144682c8686dca6666df37ca15eb4be7642db8bcf9cabafe7811c023056bfcbfe00676747eb7e477b527c40757467f33a2e9aca896284ae83c1031664d4664c9878e7cc9a93461a4d0c42ce800302047c435bb500673065023100dfe894f4c65a84fd4ad0ead3072612cea473f17fda9625cfe029c987fa58ff4070789c83f2d38a355a5f0d9d194fcbc102305ca819b93b0555d23f38095a758a4de74f2a098795f5a14addf405f4a0559f3607c829b2ec2e18dd68da3618e8d5105b0302047c435bb500663064023010c8b0c81359b1772e4839e0fff4ec53afa62714e0c74969149c0cd6a1d3f4526fb04f08c392307fbef73515a60f6c33023046bde6a1fd7f51754593bc61ccf42dde335975c8eabaec8ab4e5ec350c84ea148885e476f899f80887d21d2604f50bc50302047c435bb50066306402302ab8c4f24366eb6b0d236338383ef1876b0b4dfd0770d69e89658a649287fc443ffdeb49e1b1cd68633175f3f974403b0230439328774c5f82271fa26755c67b2f653db9423eb2949aaeedcf71821b613af5e6b5a74c032fe4049bf8777eb9fb021c0302047c435bb50066306402302b9960abb2f1a52fb453c149f32157398f7fb33e4d61211a612443d476eae2d898fce169820d45a702866fc36e1b5ff102301878a81412f46aa3b55c4d5fda26b949cf5d2bed1c7cc8de919ed2cbbfd9ba44db7902b8ae76c60f948b9063ee8519a60302047c435bb500673065023100b5a1f27cf43ec3e233207edae5127bdb438f4de1f2e390251ddf722c798f08fd17d9e30162efe7af0f14e7e9c7d45e51023025d74979a9ef365fb8fae51ed3d4aa8e9d2dca9989a014862a4358ba8f56d46962c46158e27f2731277f8029baf128720302047c435bb50066306402304b5421c3049615cea5f66f225d2dca151a3d0d3a140c9513ec67d8ef81e2fcaffff379260be9c0bcef0c8151758b159102305475cada6ed17489679d4d403558f60d8df9841e4dfcfb05f75117f74624423d0d286cb34f5a5220f710c3df5c0528b40302047c435bb50067306502301b768f515baa742983756328637c55da0345d95abc147266a49a95b6ab47d2a8e1f639057aa821ce14836bb6e41626cf023100ec9bd14a1fee3cef1c7161b66a9927f55722f87b637ac3de1725841b0db35d86b5b3ddf02b8b927bae225ee7143db7230302047c435bb500683066023100a463e9d8c90f2f1eb98c33848396dd85ced896474394eec9cfaf382f7ca8fd1558975f4da39e558fb6c766e521cf41f1023100cd455907aae786d5d30621f571cbbdd95126c1ba98a38783f47a72e528ff98970ef43a2796955ccc4dfe9ef1101510930302047c435bb500663064023070baa9ddd15ce142644c2da4edc955a3389a439a4dee07e7eaadd6d6c1b1e10c3f6a7aa1ef23a9d8ff94f52121a5f3f5023043879ec43c2ec2dd11158abba3a61a4d9e916c465e61b059a7590adf5f076dc6ae12605a19cc6cf88bd72af55af34fc60302047c435bb500683066023100e15ce5988f85ae6b139ecc1b28ab23a178099f4bda93728b221d79e9ab0a6794c4aa86a5b21627cbdd9ed26fe017a702023100a41e0f5e745abd045a7503304999aabf34efcc363bd42448930a90ef3e93bb35e445ac36d6abce95873410a5fe2fc6bf0302047c435bb50067306502300910f159b58348787d739b2151bb3f07eb33b017c549d1c9045dbe292f75ebac9ba0c923a983aec70bf0f83675fa2487023100d601f253ca668ea50170d29b69793e95ee05da9d2371112978281c09dd5022adb012956bbba155bded2d246be2986a9a0302047c435bb500683066023100e4985e9b691fa7725a5350f88fb78ab26b1eb39a1eb81c9e252f948e4dd0e8fe854a05b6386e32590cfbdd470ed42a82023100f95298d935c3043788dcd9b1b404e3b6dfb82663c9e4dd609525976039fd2db0d1bb10a3c50ca0760785781f99c4b1930302047c435bb50066306402301c2a41a6f2fe3fa066b1cf0e4ddbb10a99de097344859163b08942e37778c135cb468c60fcbf1bf06a9332234d2cb62a023046b124a27ec4d3381d606e1268cc5e4a327f83a2b060e134091be6fd8eef613e1f9788065e8b4d83475270ae0a6e40d60302047c435bb500673065023100afce38978e02f14b193e781a0e14775d5041710dccac5e514879dcf8a9d55a200a67f607aba48ceedc1fabb26dc5c5db023058d37d9db6a732dcff93bde3a6c4875b7d6e1bda6c4392f0e87e9f0d04c491b075aca9ec55ab4e663c2fef6a0154bec50302047c435bb500663064023077ce5a7c6a6d54b7b04ff2b05481b128aafe850232ce7e1dc956ea949e9931846796068453593f1c35b9b6d3634b1e29023009c564b64835d6c008cb339842e8a8139d2c47922d2de994cddcd3d0438e8e9b7b1817d9239bdcfa4644e577386938050302047c435bb500673065023100c94d09defe73c2f4e356fb1a5d86c939976a2d6b5d963663d287578c7f21fb650ea630c6bdd7602356f11f932da6bb3f02301197231e97101e32b4fba774759e849d01dafce65369fe01146f0617f8f2390ba80e2ca3fac57aeecca13340799e80390302047c435bb5006730650230235f5b1130b9332e54700e954e5b032aa7df2d994dfae51de23b977bd37f3eedb5db9b2c5618d78788eb7e00427df9f0023100a0f0d2aec8b8d2e8d51202380ccc9a8159eed614d423ea8d1253ee080c058c9872a42cf83fd5339592631911b13d3c3d0302047c435bb500683066023100f9fbd4b50deb8a46cf3f812b88517d529e38f88cf5bde8a84c208dcf82e04a19d2688382e6af1d04c35be347b0f9dd39023100a14bef24255c3af5e68aaa0838303090c53f7020859a8e1ce6a77b052d991bf0229a72a054cd70f232d0327450a6d8890302047c435bb500663064023077d4b5d55bd2f7111c242500d7b319be1127aa874398108c2a6b3ef9a44f1fdeaee7c9717f53b3761761019bd23f4ab302302c1d2397ff0f568397c751d6282b0a2c4b3ba07717d757a15be35eaa16b20184a516f9807b7b6ce34b63f343f0a4dd590302047c435bb500683066023100f9da762f866d4fcd960cc4a898fc70d901b76a51f0fb0a247dfae95515bc6af5737877fb0543374f96c80ac2b1255f4c023100989d08c60a9cc9c544cb43adfecdc44f30ddba11669d8c57b65707e2cbafd20759bc92af751f90861b1712cc814cc5720302047c435bb500683066023100902cd7290dd6c28a9486c3ab56d45706433b481c7e780eb236c69f9c293bd0eb6e6796de64cff9c37998740d9c7a1bc00231009c9fab1a04a1fc475a586301c64174cd3ee879da937b97d8e834be69d33a4d33ac3d7bf8430148441b35a970781aff090302047c435bb500663064023030fbc5edadd903aeb4a171f4ef6c225554d324c3a695978e414976100fce297ff48456f667382fd2c085b53b9b37e25a0230313f20218f307217205608c95ea0f40223a714088242ab9b90bd9691e553376800de9aae0ddb1416fe1cfd0d019731b30302047c435bb50067306502307ea0fb94d1ff1738162fcf616c1f8545f37523f0ad8a6429d124c5115a5208a2792282fc59806ac16e88f228524900d1023100d8633bc18e68ea70a0af9cb9f051af9d42cdda6d173c316c1dd229a11f4c1a7028c6e929878a748c145778f52168b2ac0302047c435bb50068306602310089f2f4cd2aa0a5acb4b74cec6251a878e84ea33ecbe2ad0507660d5fca41c231b00f12579a15f24dcce503e5a4b95959023100fc14101b617b9d6c67e42cafa4194c0ce5b46da2f9f40def2192a22a15edd8c0db669336c9be460c540421351808bbba0302047c435bb500683066023100aad53aa3bdd0290771d7f9a74000850d1ad2405ab95b09730a50b0625b03710cfd0af42f25cd52b2579b5e588f203b1f0231008ecfc86726b559fb2ef76bc36e4fbf1c21b3e227a7b4145cd6d7fd7b7e1ec073c9558d610e2ee4f2e4bcfbbe8907ded00302047c435bb500673065023068eee5abf9b245b25219e2bd65d62bc4669862d93c59d181c0aafcc26f5fc8fb9935f2a1d0b908222ad0a3cfbd899515023100ef3294f0a626aed0ed75a53ce80df8ff88afceb04c8167ec2771f8d376d4d90ed2369de3c1be5178b2737622e241f0800302047c435bb500673065023071d57d206999fda2ca7a6abdc55933211ce044f84e79d719cc6f5a48def3ec279da8d8f919c724d361b34f2992b513f5023100b7c6bc6639bc4a445041ee752450fd74d209cd383498b458f0e91ae5340230b750884da366a65a3a80a9d401ffcb5b5b0302047c435bb500683066023100f69467cd8f60999bb18fd97ee8a77e069a553be2dac27e8c56c914eac13a9d0bba894b73a2c7a58971e16e973ce3e933023100b9c61f4746ec83606cfa844e796fc8850a524f24ca3212bc6ada720de6481f48859ee2ae8058e39e58bdd13e7b1c3e280302047c435bb50067306502306418f82c884c664bef2e58a697cf32d68470b2c746bcbb013e214781e6f3030b2fca4a0fec64f36ff4c4f0753ff7e321023100ea794e98e787e408f45fe94287f0b376defab42e01f2d509d193fe1a2a4fb95b78c049f01b19e50f4d4afd6c7f0243490302047c435bb5006730650231008e5466dba933c37bf3a6b325d3193d234be7b3aea2da360140f90a24d0203d8d0688f468049a7b0113aa864e28235faa02303c536a613b6e4662c24ff4ee10c97127d015df91d54e94cb9b715d88233df90e2b53dcadb2ffa67370196e337da7c2b20302047c435bb500663064023043fc642a67992d58be4f8abf3fd1f94a631ece90ac0bfa4944cd9f7fc726de613015adbd2669cf7eda74f49b498974c802305f18758e607d1f9e2fcbf0a23024ee8f23c43d24aecf4cb8e28175efe0f2f5cdf0227bdb5e32289e275619bfa4fd8e6f0302047c435bb500683066023100e95f295f29a8db55a937f307dc52e7a6cb357cde157b46b830c0473b9cb4e7b4c003f91d3fd836db4730f3d742796140023100d5be1095fd40a6001c44cdb1347e3e289946f9554075940d7453a34cb6e18edf822100fc5b3c3d93bd4f33435de49e170302047c435bb500683066023100dd9b5d037174e955696b2c2c82730900cbbdebb7917949d95503bd13bb32d3bbcca1cd1b05ba2af53e63c144a8f4ac1e023100dc165325a2b6304cb4a0f26c9cfd7e1c03cbe6593cc7efcfa1fd4daa619cd15158e1c4755407298192e1711c407412060302047c435bb5006830660231008a3a61cdd9a4ae962f6001976d76045909a618cbc9c46fe57b7d449dc82212faab00c5b68ba65e4380cb3f248c5638fb023100ec32ea8b709e7018b6daa21a1ca24b82c7cc5c38c3020cab137fed6761a59985b753590c1487e0431da448533f8461220302047c435bb50067306502300c3d6cfccbfcf9bf33ad5c91a46e029c07237e0f14dbe16282f997ef3d4d4b414e3d22067d65200a5d8469800697eabc023100cb28d1b975d5d2c1c934ad423dc1156aef1be3e95b696f4666332a5cf133dbd1250518b0f64ee21d62a8a21cf8c914210302047c435bb50068306602310084f7373e1c7bc467a595ce12f5c96cf52c2d6e7a8780eba0b4d36869b4dc7532f3047772aad0eec61189ec0e310427cd023100b6c576636df47fb465e4a5ae50ee8ff290c7a464e1a0bca742c91a76f629f7196dbdbc9066c4035d477588918205cb0c0302047c435bb50067306502301c76cbe24c1599ef0c297a7a27ec208df10c279889017d875659273d3ef6f9cf7be152abd8e28aed8ff5dbb678d2b0c4023100af6eca6a71bb03722a23da16e8cecb7bb5f18e0231f4f737ed49fb5bc4d49128a8465e589793e66da7bb1e17b63120c50302047c435bb50067306502310089d5e01ce4ae100f4b77439ed6591ac0d74bc2d3d9200929a7e9aad477d4d7ba8dd1741c74d405fb0a70128a02bb531002307a311c5a78785aacd71b1817a9428a7cc58e7cb54baae64b5b8fdc9ea0f0d2768f775afc14b77a980863e8e2c4d081120302047c435bb500673065023100d214662c9f342cfbf2bff03b9650c88ef8982548582144cf0821a0ddab5e802a2a6e3afc51a9128008b7d8d2c807171a023069651d2e54e6f51b4db4e9e7acf583b243151a6c596da66eb6222a6742c128bb700b062f7c209ddea4fb656b0d97a8fa0302047c435bb50068306602310091a5c8d033ea6d1919e294c74200bc4729db5a2fe4b73147682ac050f2a56c56eb081ca4ec64c43ac8c1f6c7541df98402310091db6b7b67a09bf29663908b3485f27ec4a92fa6a97caea9d388f7cd4c521d9653bf0140b2927fdcf95eb4c8fb05a5e10302047c435bb500673065023100f65c547dcac907ca42dd1259028bba5c03c40a37ac3417e89e57fc71c6c79e9a384ef29929a6f392f8186652e53ac87a02305ba83307138bcc77547e41f50a4776b18a4ebea37b2aeb564501130fc3d838a1b49cb32c98c175aa089a4277b52bc2600302047c435bb50067306502302676844e9d3480b5f3fd9a95a18273e0a9816ff989890ed45399c6afe93aea5a9e3c7d31677e03bb289a59c78d92422b023100dc96f510eabd00e28df2a53f5adbfd293e0275f720ea4696d7de5d076d8e4338a2291b9fd36eef892e8ed72fb997ce9a0302047c435bb50067306502305f055071ce259e9f34cf82b75e6f3a0d84cdbcc44b75e12a10da7db8064bedd8245082f93bceae04ce6e29dbc5b6cafe023100c6fdbf6f9b73d9df3f90dcd26ff8596246cbfa7e2c83f6fd38eda9fdbabea90be650d37a0f39089ef4ae5a0bb14f391b0302047c435bb5006630640230630b9c1a4684cfd039f395b2b08028b22bcbdfb74e129397ce8e7a7b5daff3d13a79c8f7c20b1e94218e7c049496454c023034e6096a630dd3da0940783724ce552920f0508dace7f68f85ecf869548e8a5e3e2e3c3f09643974c6e7f3612300aeb10302047c435bb5006630640230374ee8018d854e41f85ad3a1506afe66531aa2e12a2057bb664974ac89866b5d9321d00de764f21817bb61c7502c0b5702300cf48dc91329d91688fb4fa8810233ad879e3dca56027537456918eee0b293d0d74fe0c8d4588765dd7ca4e7c73d9d430302047c435bb500673065023035709f2b4d7545504062a55f6f58f50744e3cf8dbe8ac04b085cac1a386a5dedc0c1f52d520b9e3ac835fe40273fd4fb023100d30cb6323562c29fe742b7893a4a6670bd6fcfdb0387a08f04a4a235e0c2d202999b8c03fbb7cb99c9f17b6ad91917970302047c435bb500683066023100c7ed1b3d94e524287e83565755194a2cac412440fa97fc65f84a33264892eef1192613ebea75433b6055d82eaa371314023100d4446291ed372ce1630a76400149a1ec5d1eb8b95ef371f8767010990da97c6c2f5e17de7118068c7ee67635d11c82b30302047c435bb500673065023100b372af86d8cb7ff07959f77d61545b03ddf1a9c03af567a483c1a3054cbfb2680970c9afa101aff80909912b839db6ff0230634e7045b92d95ecde91e5b25a09e019bca16bcefe9dacc64b08d5d94a47e0fa58f8d925bc8f95c76a27e17376aebd1d0302047c435bb50066306402304989c6e6a42b8b70072972df0121b50488c94ce4cfedddf83e33cf8ec92ae2e69ea5028285dfc377e86d4c5ec6651a6f0230172e96162ce19dd3a6ad8b7479dcef3ba2d908de5632406c47ad5fcbd1dfc71633e08fdefe287b08580f2cfc39eebd750302047c435bb500673065023100e4819d097b049c2216534aa2ccbfd13209f8945117ddb4f4160a9bc5c486a7998b3d88369d31c88a01a248cb11df96d202300bdc0413012e9e9185a36047666d6ec8fbaeca14f4e4293525b99916647b141a9d007475fce56cefb646f3edbc5fcd250302047c435bb500683066023100c38cce8c0b6ee34543175f4257c110253098a6fe9dbf7c9dc0357178f103344e4387619955e5e78e2ebfbdd4d0b2584b023100d0a72715adfc103d3901a339dc9f3ca9f0277e9680dc783183dacc3fdffde317b0636764bb26bdf0df374324f24afa2f0302047c435bb50067306502305b741c4b22e2920eaed16e504583bea6f6c4512a40fb451166de3f3e3ff006a30ef0ff039be946419ad99ddd0984073f023100c0ea33659904020a5fc37e67219ca90a74be26559a9539c568622b8e5d857f80f439d5638ae1878b1e89a07b0560145a0302047c435bb500683066023100f38140b1e879ba0ced14a081f38de38d83465a4cb18ef2fb9262212f5b13150da32e79582d44e8f5ba272942abe748de023100f710f3a198cefdc1427434864e231f2514e8f418e99bd57e95dac2022d818b92b85ad6416792985c33c1288b375ebb270302047c435bb50067306502304c8fa030fd1630e00127bd2fb55f37b4c5a0b6b31d9b4b080ddf45e64667f173e16e45be05d3cbdea857d436611af52a023100eb304a116fc819d63ceafd02ed56e10c8a93a6f746545f75ac84330263bb2aec7ee7e043dc526e688281cf859cee531d0302047c435bb500683066023100d99440fd0d654f22df37fed1a6611574ee28f288c9f0f746577c7797afcebdd8796557ee30908659e1a25ab07fb57939023100b57bf6cc4ad561b358c006fdf1ca1d8da7dfd02803666aaf6afef91659a455c8de0240c7a4d0f67159367f02f172be7c0302047c435bb500673065023100dfa99b5804ecf16289e98821bba8f8f1c1dbc8bac18e2e073a70f87053f585a6a653d160c2f693459792b74f1d563594023058e41d3373bb89de42262c51e08d4f04d14ec8529b851f90e50eaa2212bd277cb6593ed4a7030320ce44e09311b8f2710302047c435bb5006730650230107db950847baf309e2309022d1717ffd4c0082db37942ed544baec6684ab2ba2aa4b05791aa391445e035c70afbeb12023100ef11e3d2919b437dc945fe36ba810ce47662606326627d9da7f04dc54d22fb7b821a2565db15222e078e15a3d00cf2720302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d6c313c5ecd20f53ec1f133b761bf193519e7c1eee5f2197ccafeb9d33cdab03434835ef22e0373018daaa0260d46c6c023100d4d5b498b58d0d53498098606bc28e95da8b996f1f99b6ac9fe0eab916479adc025d3a14acf1a50b088594f8c1afcc150302047c435bb50067306502307498f17e3c401317efdb52e1b1d29d138b38adb7785ddfb00428596f030231b92aceb6ee042f03f2156323099587780b0231008c687916f105a824d6a4bc09dcfbb3ae3362fd10ba09f5634bb21009f2fb5188ea732ea3cc9cc93f4b4cba5c6e4fcf6d0302047c435bb500683066023100e09df751e3614a9c89ff7ce90a564779899e63007ba04202f3912a03bb09a4dc1abc99cf8a764611e6ffa9e20a667f1f023100f11031591346980e99eaac2b4c5bdcf5d7b3a78cd485d541799f90192f40fd023a5b03334dfdc113deafe92af03eac070302047c435bb50067306502305c28244f8341ce79279a2fd4abcf49efb1d71790efda3650669101252987fb9ce9307f175b42bd89b4eae0040edcd9e1023100e353fd33490dd9e83b9f62b2e3484f0d3425cd89d3e57c6054c1e8aaacb77223a73305c01068d5e1bd82b784484bb32b0302047c435bb500673065023100ab9a4b75ba62ca5693299f9e1214afde94d6ed2a2485d69a8ad61e5a0c14b1ed91caa0223c0695d3e48607d834b40ebe02300692236e6b9682ebc820e5f87a86411ef977425a4e0f6c4a1147811be8ac3cefc25ddbed505708ca8df9792371b64ce70302047c435bb500673065023062a6b08d5afbfdb3eaeb5228c0b758cf73495a32e71780027d0b8fe7f67ea61ceebfb7c42a051d7325aab60c7b54f8d2023100d121ccd97612412c906f08bd1c95b6368a14fe652e3ae90860f6ef72e9bff3e4f8261e590a645616a79dfce60b018fe90302047c435bb500683066023100d4bfb8bd51c2231cdb7e8b3092e3748a17e2ba24b2f509efa6c62fd8cc0b881b6c63bd5761ba30f510defcc32ecc0ae4023100c1d27399357fed371ea032a408fe00ab5f445f7623b388147c3f50fa451554ce4aeed30a3d88a0f44792e20f3a40103b0302047c435bb500673065023100a5d220f3880569657ec39ae433fb3a84a5fbeafdb0848257c474fdb83cea8936ca7ef3f3d5597dc94d65aa8e26e755f00230624463ffc5c4b1753e3c1859917ed041df84776dd1fe6834a7b3b076a03644c51e42c6f444f94348acdcd53966cdfaf30302047c435bb500673065023100c4eff54bca94c283ad0892d2aa24d52937b5e75adef854d72f15154b4202b8e44bc72d07e60881ed21fe96ad12e1a1fa02300dab72e60006bd57187ac87c4f15dcc1e325dbce2dd1f1636b0e09b0690d170e59679d5852797198ae9970be1fdffc7a0302047c435bb500683066023100a2247d259d223e7449b8605860b6e2b972176d29c343da51729bb54658c02684b06dc233829b244a71f3486800723d5c023100ccf7004a05fa961e5aa45b9f9eea1c746c86ab4e2f41c329c11f003064f4122f9705e842463a18538523d724b23d4eaf0302047c435bb50068306602310092f3ad23041b3e05a3e2170f9bfff74806645ad5deeb0c07e308b14a9746376fd2e32c830d2e80938e2d16b2d69c3deb023100eeb19371e7a3d9fae1e116232f130f10fcabf9b1adfc0143c2a8f0e159ff98ea41b3cf7e057dafb45ec10bb40f761b410302047c435bb500683066023100d62436ade8886b19d8dbdd4126c40d1d9f2c203407143e0d29d0f109b96849cf04c01da8a86917ade47519fb70ef5603023100cc3c4681c045b7209370240dea280f4c626d719abfd253d1e872c62bb0cdb3a30c1f4ae153dc4edd0f8431de0c65afdd0302047c435bb5006730650231009d961d81be8cdf1773fc7df4413eb818d57fc90a4e572e6f3053e927462db29802527904318717dc7bb4230b6f39042202305d076aaf356173613024c0b736ecf439c91fd292aea7a144a35a657e78b5c2d0b083fbb556192b4535c8034a4c94ebe40302047c435bb500673065023100aae42526a453209afccc640717668648e4af9ca3a0254de6bbe2e1780559e35057d05920dd628f18dde03bd79569c2cb02304fbecd483188623d224b0763faca88401026f2a0c9701d5dc49edaf045ba23aea5ae296fcfef0c98108018023fe6cf4c0302047c435bb5006730650230161167e68fd95476d9293cd0fb8fa506f3ee6e266218a1690b541b8a8830a10fc0808f4553f180e762ef3d4a0e760006023100a0f6c9932125d8c2d59865902e3eb21e7599bf41985b8b94fa073a1a023507cf2a71d38a47cc08c71f42c8ac5d2808d80302047c435bb5006730650231009654b706dddc4b5942e255bc9eca6451bcae8f3d640b015e05c73fb8c7be79433258d904ff90f80ab83c7cdd6772652d02300d68c74870e8fe08b2d3fcef07134eaf4191a47528bc6aca52753d6736b99442f69f6cc2b0c5a1a745193676ba0fdb220302047c435bb500673065023061fe955c1f4b81910b9c0eecdffc6a6346b155ce8a00d96144707e635c055cd0dc9f9a93bd7440248dd9b35b33e47fa3023100d003ea903cfb5c43d92d8d5d48a2623e7008b2718f31350aaf992c441763b7e130f7cc5e108e65c5fd18119d7b710a360302047c435bb500673065023100f0c4fdd4c71b32ac93ddec9aebe7182fb8b470d391a69cb45a7b34d2741831a21ba7f6e7791df5e46d68e20c7d99e53802307521c27932fd720d4c1d83ab85c3aa4cc9d00a352bb04172515d444e0f7e436b0c97f6adbfa13f52b13e52c8f8f573320302047c435bb5006630640230547ca25112793dd9166d415a3d95ec2f85110cfa6e6ff9c5a46a1d1616d1943ac6cfbd44b0dd39c09d8443bb7f651ac90230140dc592d9dd0a36ddfb2dd38ddc8550971369209ff10876514138ce5d2c658effb2d375e6d6fb5011e44e91b3995aa50302047c435bb500663064023045d1fac59a48ff19454eb2c32c9f8fbb2873af2361b9b4ac0232e61393fa0b2a6a9da37eb939fbbfaba1f315203378ad0230147053bc97a9239bf73f386499ea7a8fccb4e264886e1c717327e3f410bf6f470717db3d5e04183b8132fd045b51eebf0302047c435bb500673065023100bee771e4923e3b99a3846d608a167d89b0a17a83cb1946b24e31a5df73156fd9a29ae1c5e27b11fb0694a1b673cfe71e023066a3e84a9eb01964dc0e5f694e43a701dc50286bdc65b80d5b96753a8fb8a3813b850449335347c1f47011f38de2e70d0302047c435bb5006730650230464f9863f5e9a6fbaf79587248ff8fd7577f4259baeadda349aef0bb67e739a2256e31d44b3aaede8b142fecde265ff9023100c523851e3edfd6d094cdddeff03830582c1c8eef5eee89f2397c2f458848a88aaab63c3ed3e3740c048a9e6de59f7b8d0302047c435bb50066306402303f0d21b26ea527311cf785e5238a85559474b3ff8a6277d2bd441786ac057c5ef4f8c67afbd237cc58d57ae49d0b31cf0230688938ee48ebe440de3bb97b40b5dda7757169df87b0919e9fd8e72f38a532a17690508cdf4d1a063c293e83a64f67260302047c435bb5006730650231008122e111ba19b0239bda84922a7e8f16aaf8df6561533744484b6fb80749a90fc4167a6c195bf3fc96c831446f0387e302300173310a8b13b12d9f26848b19024f57e0e3211284382ab8aec68fbc6190e655b1bfac34c7e308a511834a7bfa3f26b40302047c435bb5006830660231008190776d6c3b20373366cdeadfe1d4aa1cb8bd8f9a94fab524ca808a87cec5c7e1c53c0c78e9ff45d819cda6918b0a2a0231009fc7e7113ddd072c956a796484fc8b636c543b6a2bfe7edfcd665f0322fa602cdc6bd2b9c7f1e29da556eefa5dbe8cb20302047c435bb500673065023100c445a52246a085d719ded2fa87c09c353b0999cd58973fea8e5764922e7fd2b08ae5e85a04b08a5990c6be60328f313e023045cdaf658d52bce6b55dff4c166b80b988d854817183e0dd0c95a2672d75bd392fe618d7f8012da8a0fd9d5f7d85d7970302047c435bb50066306402307f629b5d15fcfcdb18459b1ce57e06020fdde52d003932f899160ae98412df112eb60ffcd38db7c14508c0298aab5f670230614342c3d945d65d4ea0f3a0aeb989c47d2f7c030f8f3de4558c5e00824fbba018f6e993154efdc0ec4eff9e08b054eb0302047c435bb50068306602310093483615b87d18a45f422a120b2facb7b347545f4141449747391fb82dd6ecf50515c163d1faeeb19fc21cb0ed807796023100eb9f8edf294753187f48dd151313f80cc811b1f5189840081f4df4224305e7daa0484e3ec9c07a8a381e6144c708b8030302047c435bb500673065023100d5d25e39e5530efd972b3953c7cc7a0f7d9f4f8f3e6bd038dd90e09a48aea1ac7952c1aa9e69143b7c09bdf3280974ac023040fcd99463522cf208498c8327b31179152c2a79f49c353f6a4854db22f6dce22398cf272e631e09fd7a1bb0162660b20302047c435bb50066306402307879db62cd97a650244f3fcb991e234a807a2d31d02e147ebbb5f1dea1cc3789ca1182ca7a852719e0d83b4acee9ea1e02305d586496316c335c6bfaae6197ddb66cc0395f1633329cbda318f7b0158b86f4349582946c6fb1612706b4bb9e853a1f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f14fe84bd863781403cdce99d7544f5ea38a9e0e3f94cc4a350271594f75ac69c350845d567ca67f60f53999117ba324023100ade9bab8a2f1bd2b53969361f7a499f80359f0a7e7551ca856f4d281752312cc92371a1983eef77ce7dbaf2b9f59861d0302047c435bb5006830660231008f5893fa77d7c62d933dd1cc0b76d4db238ba07eaaf894098c5f367e0a7a76e57e0ccc9f0a4681f76952c49fc9b3a460023100bdb5d8e4e5bdbbba14fc251c528ad759ad6a63d3317c699d2e63e4eca1ec8f920a5a997c32e53ceffb656e060c7b0d880302047c435bb500683066023100a00a294017c55a11f98062a8133b335ab19ca6bd8322bfa17caa5588df3cae82c9402a9672ccb484e4d623c7bd03f8a3023100dfbf966c30c3b7b7af83f614ac6fc27ab4444704770ec77841290f0a68c1ccfddd7d4f335fc892ec82c4160fb1dc13d50302047c435bb50066306402304e4bcdbcf186951814e668ceac6ff27ff2beb400cb32174eeedf2c0b072907568b0fecdf4d2c99c944570979ae42397d02302b473d32b0589f2c048fd120db787b79082e52346f00f18b0c5da99c134178da830b4f08bb6fe2b6ddb38837d32546ee0302047c435bb50067306502307a4f061e92c2ac840ccc293c670af442904a159a6baecce077128b13a65881b87d62e4a370bcdb05f0913b2681b7b825023100c3aba4d93a120cab3f4e01d3833cdf778cfdb7efbdf8b26c40f3bfc95d75ea714e69be7a38f0a49b9eef48bd818a8f8a0302047c435bb50067306502307a86e1c1623560d0904dde94ed77631a19f760ffc23a094e23928c4f005c7de6b1d3b6f6abd7f83e3558d99f3bc54052023100b682f2c92ebddcecd2980ed2c3d3a7a1301758c18815d1a8bf6f7dafa2c9e5b0a052abfdb25d3f6cf7c079ffefce6cb00302047c435bb5006830660231008d300d7caf9dd7d3922d395d3e75ce3a51386b67bc666dd98488eb20f7f1e35f0540ae6cb7166d9f3da894ba7affbb87023100922379b3253e88c0f1962a18f9501c07e699c54a50b4e3529ac2ec014bca5ddff77d1f034898ce41b51355ea905f10430302047c435bb500683066023100bd379b90b903b8eaa14104b05615c1ad4158307616674995fd1f0e92a132174c28b43864140312fecf196d024627751e023100e80182825ac59c62eb7f10095790c6738aad3ff0d0136301eca13bc07e8dce2e64e9387634d648bcbfe87780ce21ae4c0302047c435bb5006630640230203b6e7b499a9706d853bf5e157afe0abbf148fd10121dbdc255a884147d0d8945d6a120a2c9ce460dc69cc870fc0bec02305a02f65108e24cef99140947dcbb7a8b015cd9a134e0d1adc0859f13753ed7e77cbdcd6ae59d29e7b208d1c94d2d82bb0302047c435bb500673065023041f787e71bef3d7eb615d9b759a76d8b79f7dc854c76e5e04cc8c486480214611d169b375e010c725b44d3a1bd4c7c11023100819cddd07863f30754390a79be78c6ab3916cdd2c697020a77431d37a47b1003bb14d8cb9706025bacf33fc337d34ace0302047c435bb5006730650231009eb41b1001424ed7b005046628d4e4b005faa3f5633cc2d0aeabd1dc14d194eec9d776dfd6f9df3986cf3ff2981326d802304d8c8838dc5e3485bf78943d2ecc0d8467c918c89b5e8d997f13907743f01ff54cbd4613c7e52e18c478e53a238f78a00302047c435bb50067306502307c5f7870dc8de4540f89d32060a480e1214e4f9a390d097befaf6d36e15c93943152f6f3812df0a35bee9ba9f3c65d640231009554f4636ed52a83c60e61304e1de83b56b22112173104b9cba5dbfd25cd9a77f7a0631ad3e183304131d582309fe2ca0302047c435bb50067306502304132d037d28a8c39eddf28fea6273bb54ed6fb379bab1408d2db5bf1c493ba975e92e8b2f98c688df318af89f7fb09430231009afc61f50d67aeaa8acab4e91ed92ca3fbeee559039641a9e350fa609f6643390e8c1519b995427abc22303975ac43bf0302047c435bb50067306502300ef62adb8135e1008e1f0e5c037fe09e1a1264c7613edf3e76598234809429ef768fd337798bceb7907b37833d5e66de02310089c936ff215a9bcf0f4d02e0d850cc8005434f32ddfa40d63155af15704149d5937e9ee2f02d55fe93f4785d65d1f3000302047c435bb5006630640230334866b5907d1faa1e690b18ba5a5bf26f9f54c56dc99d030a02740c7377f362adffec208fabd6dfbaa0c77c5352099102307a2be2beded663196e2b97a45f3cc2a4e556d670b80c0dde0b5975d94194357712e42e6d172b51bb2315c987c1d822820302047c435bb500663064023004de782dac20e38226b6be6d6eff574ce52701970e60c151793e45aacb43bd1d546f9ef2881e66a7534ac554e02c0a8e02300d8efc17f70fcd00c7c9d2956f4665f41fb818a0a7cc1801ddba7e77810c70ae81b5f2a196c2a282fd8ed01cafa272b80302047c435bb50068306602310085d1811d49d39be6ac030080e98eb5e729adec773d7a1131fbfebed241a3ad9d718863585a52369033266d54edab8bd5023100c8279792cea6ae37edeaf7be3d0fe5f531d2e500e47d30add3a8536c84e726a4990b35a1b496e3f52b3c4b45ea098fc20302047c435bb500673065023100c8a433aab28dca59c5c1391352acca7f8ed5f57f665ebc6d12a5875ad2f321e6a0a18a56fac5669085f913a174c931b502306ae7e3658efb703bc56060e4d590ab0a8ec1c390a44c63d07bf82eb8363c2bdac6fdc180a32fee3937b92450aa5289710302047c435bb50067306502305039fd7ce668c47768a7a4520e14f068d9f4b51d741e888db3248e781a83067d156d5a5440a5e87c75d8cac3095a41b6023100ef3124db52858dc52c3d7ee7f29b608f66f87db6ec9418353a0266f15d854afd3b2547493f12bf2f32bfe1fc370b34860302047c435bb5006730650231009437b89b57fbfcafd96dac8f7c102267b9777795c7c98f1b0c5e8e2a0fb8ecfef7b50317bce2d40b205f18957e684b5b02300cceee3e08ece14d1b6af038a796208e27234b882c225653154fd8dc312eab6ecc23ee760afc09d407e9480d1bf579b20302047c435bb500663064023010a06aa613b59bd445ccb410787bb3ce1916db614af137167eba7cc091ff9771539593d187d43fa6d9595beeab1bf03f023032b31082e70ab7b9ae54d9111a0a359e86df5b1b1b6a1cc4b6cceb18d2ad2fa91142c67343eff2196aa223ef51f471ef0302047c435bb50066306402303f48aca9d00fff51a69187ff77f3e2532d6bd0f11e4719e49c83e7d6dfdfdc0434343a0726514d25eaa8d6c3d5009062023017d8469bd34d1ccbeac7b5f431340fb600e46a6acd618b763d3f8626654c671f9ee4ae2c612fc1c70ac67d9a0c03ebdd0302047c435bb500683066023100d734bfb0e5d13df23af2714bfc79ad3813f5cfcb60260fc77db671acdf4129d17e1d140de76dd648b0c72f90d81b3d9f02310088e6408bc1d175585e9fc31ea9fb9d1bd2cdfc771909d11288d92dca405906d3fd2d201f73e3f2bf3a13ef40d9453e280302047c435bb500673065023100c0e9c60e7884a77520b0d1e5eecbb6605ad0db52c1a8b3b1d3c554f2ffa594fcb68f9c81637e03c329682aeddc8e6c4e02302964266a47798fd1954c76d015044250f9ca7afd499d85ee6d5db109f71271db0925e60bf9a3ff24e0ab98e4e0b667f90302047c435bb500673065023070bac3a52a09320cc483642d4646b3f5985c82023739a37bc9292e60d51c3dae975b8c284997d75c35f2fc3f40a745db023100870ca6470745cd0e89edc9920d8b2823d6f6b56f48a32b173fa4c355aaf36776398dceffa1c9b83b8841f61900094b940302047c435bb50067306502307c93559da88379c1cff1d5753fd3addbd9cbadd0cf8e8a5c007ac5dc20fd3e0998772d8ad27038d0e81625f023d7ac520231009b10e05a22ff699b8eb7410b63763b6f9a57b9d339845df28c94e49858b0910e446ba488d3bb9ab119aded4f00fc85e80302047c435bb5006630640230309531992cc29a8153964aceb0ea3ac268a2553192f7d2cd6568a58efec45460b2c35269c39ef34d6605efb343b3fa21023065b4a2e77234e4c60b515489e90a6d8e512dad12f432bcbdd53884f3ecc1a1431d486f61bd175e1f444f9a9ae517d6dc0302047c435bb500663064023029437facfba9f85d232553e65dcf1f02fb81ead046aae4a213e052c0c4f5dfd48a5cd2fbd147b3e0b4e38d933ab3abd702300473c8d599c4df71c4d4b39ea0a0fc5de75157d96d279b8540ef0cd582982682801f6db4ed1f919651c3039d7e91bcd20302047c435bb500673065023100c4d8510e7d0b0017c3cb74b77a71a125a3e5446aea8110985cba626d257d3fb382af13e5dd4f3d6d96580989e6d871850230585c99b20d73435fa28b27b4f98a79dae0472f35b9843dc855b7d468f62faa85be192165196cbc2cfaa93dcf24bc82b90302047c435bb50066306402301dac1d32a6ba854166fde5f2442783d2aceca6ab5d2ac31bbd27898e7715ee6df94c7486fffdceb091db4d7ad337991602304ce23d17c0812259e54eba56a3646d058ee85616c514186934abaca2403b203b6f6c26965146c5014e4b41872a4438360302047c435bb50066306402303e2a92b7ace48b0625501dd8cd4c3f9be2998ee53c0571c7535755ef1a7f825d0409dd156db3e777ee8c8a4125fcafdb02307adbe5732b5c59f4da23d6871edb9e9e54a53894444bb262028b797e81a24a85fe1a122cb392fddc107f15377581e4900302047c435bb50067306502302acad8a1c24c0047a840618e6f3176cd9853cf9578220ecc66984680f2eaf00881f7c2d233f990fac4b88386664ab80802310082fb77c6fd6e0731f87f3dfc7ca040bc2d8082c6606f201ebfc4d741dc784cc4a9f1dd93b67578d39d5755989c29b8240302047c435bb50066306402302a4c451b2ae2661b455e9f612a533361e7162df40edaca87f8a1473568dc8af98dcddfc4cb16f2f3ae776e10589cda0d023052557d22f0b22f769c91138fda8644dbbdc6c2de90b657b9ca479ec77bc3623fd30df9a1046f4079abe9a05740abc8b00302047c435bb500683066023100cf95433ded40f6fe65ad3e1aaebca51b76e9495211ce236792baf7208d5f560e3e12daebb19a2bd08af5f5ed04b5ddf4023100fd4753babbed355a23ac436c2c758a0707285ab7e2e7a91df35b599e61b2f5dde0637f9686fc142dc5a1bbbd986740600302047c435bb50066306402307fdea0b6a3785d42966b4f932ac805f6ffb9f1bd480532321914e76cf46fd2d44f0c403e84b76963e25e7318a1b6565b023073173d7d084107c1d3a36bc36243c003bccb13dea6774f5c492896ba208392a16b9e9468d7bd7580f3e89879f9ce8d3a0302047c435bb500683066023100a1a0436cccd7e625861d1b7ab86ad13841c73df7efca665727a46b1a75238eca7cdee1f7e5ea2cdbd90653c40a4f5a1c0231009752975e6516df7a3528bdacc2818c794b0b8be9be5e9347dfa521f034ec9ef6635711eabbe34c9eacccf72e74ff32a40302047c435bb500673065023100c8c255439d7dfaff8607891053c7ed9683baa94ffa310002edf7758fe38cf9f6f315e345b3b082e876a4ab75f03190df0230596572176f4832d6afecf49327ddce31a0c8f806c6a85cce438c5d8d1eeece7abbf9322baf8e25a471a11836f46b473d0302047c435bb5006630640230275a3160d2f93d96aa1d8783c166d02781b2fc534a5675f266097fac6db74d649835b5a7f73723be2f460f86c01a5d5d02300c6b05981f82c370f75737da32de2f70c0f0d4918cc158895bc9ec4420b61e2f2511ffdcb31cc49ee68d0ca31b5ee58c0302047c435bb500673065023100ee1128aa371a619c41c15692869550a2cd11f8b1d9a46d3be81f88cf40954505e2fb3e8e21bc09c01d440fffd3dc5007023011aeac1be230a276d21d95c080849c8143b9d863926b93f81e3432bc6fe31c982a78839add7795dcb8fc994b4a989c510302047c435bb50067306502302e5f91999f21f5af40d5b967fec5785b83b8b317f2f74c1843cde8167c1025fe0a2604043e27411b8dec6595b2f49968023100f25568b5214ed69819d7d99fa536bc2bd32ceae2e3bbd6f098eb2a5fa0c7789740b4d5b9bcc97df9a07cd799cca7fd290302047c435bb5006730650230447f775bf7aab307da7a9ebc1c99dfa39d58b21a4bd077ea9e7f9c3b3a7e3847af92e3be529cd0a1f490edd9ba809b5d023100b55a0fd809feaa02b76285283c1e3b305f2acfedc15f682d71f83215ae68b67fbe4ee94dd68459ea3b3454541b5d8f5f0302047c435bb50066306402303bd654e5051fb6cb97df64b03248afa234d37701688c9e7749c93af0e04ceebd69fc950d4b4b6f33c2eb2b1835f8f00302300a065e5cfc52d94f6e5cf824eb066bbde14bcf80cc761216935419155ac9a54509595d1c8e32a8ad7ac2ea3e805580200302047c435bb5006630640230683de14e75eaaa5ec25a140d176cb6ba4d5621996f4b199a69bc8e1603a115cb3ad84cb1109c1d3d89eda6f70f06a9df02307f2aab47fe3f3949099cb56ef5259deae71da9cbf331cdcb9184179cf622d2d4bd372b1f67463ada757191ffc5b82f800302047c435bb50067306502305ffdf00fbf1237c70183363caece38e033a07d91c0658256436ddd2634095e865d7d96739954e74d2cf4d65ed97ae641023100db39291b047f0d5bd8a685e7ca5f755c03025a843ba3a47cbd39922f524da54212e21fd9c060de60cf2430bd4126385c0302047c435bb50067306502301e3701d3c0fa1c17f1044d0795b71a1b305b49a82ec454a9548176fc78fc8bcfc692e042e00e0e0d0cb5519e5c92a3d4023100b755f9d30adf59dff90b27b6e23b06b2230c99b2941c1e4f83a30961b8c12ebfcddf2ee3a086b3ededa375f882c8795d0302047c435bb5006730650230279521b7c30143c4712fa3cb024be003c3d897d7928dfcdce55d950d2f841a51e1196d34c82abd7b50d73216729d9995023100b0a9eec133621a7cf66aea0226d966769587250c4362f307e4ccf1373b68d250d3b0f2dc71762c484127ef71ac875a9b0302047c435bb50066306402302c9161fb912bd38691bd90617759287e1c4d8b8de6695909c6df5fc38ed3b3d772c70f68d1f5ff1e746e71764306c661023007a29951df7548ee2f061745e95fa4df72b7befcb56525e75cf7fb5920d5f98886a60aba87aeb678127182a537fbc9260302047c435bb50067306502307562254854d729f7c04c094e771f4b9ede92b28fdf2de7d4b560c9a9da381eed00cc8be9d0c4f742b4b383a96e3e323b0231009845dc064ef7eec9ecd1486302fffa06ef15d353a0767e8387b0657f5cdb475e305084b79032127efcf2fbcee5bfe9070302047c435bb500673065023100e2abf69047d56dfed6cf7c094c2cf9cb8aa78257cdaa83ee411c5dc5b7341c94af7ed4f66b35692eb207b5dc783311a1023014d47f4b0df760078bed6314cd008b53a98e25dc998bb227879c4224c100d6896d2dc2e4af9087c2205ca303aaa471040302047c435bb500673065023100b112dca7eb65437579525b45e7b898c900940e87e8b86fc0c82f1ea2bf860d28edce221549f06ef8507c8cae41623e6902304bc147f11e7b122439773d587aa5c56ebf9f8339c938090629526f18dd93f63a92a001ab0413faf2e8008e53c7ad027f0302047c435bb500673065023100cb0f53830ed461de3f0f28c9a9c86e535a24e6edd0fdf9e68b493ce8c69c1d54d111f32cc345c32f2510ea94b2e1d85d02301962f86b4847f801e8f7354d45d9ba08aea1dff220b9abc37abe54ad9a4d9a365ad5304fb866f0096874cd050c2cbf420302047c435bb50067306502305a9ea77572d601916e9f323f769767772547a103649b19028bf26247cf4f15f7db59b6c487200ea887a28a190e535e14023100e6e41851c6991ff7cb0ced8490cb5f7d3926f1b1082d4c2dc8de6cb9571f0465a88786f9052ee5b3c55d3955d4b8059e0302047c435bb50067306502305ad7807573ace9142c69f13c97c255cb8de373882c6ae0595575005900baa3111709d2558e5e44ad2fefaf22598ff45c023100cbc421df096373605c9592dc45f5e04b06c1b243071096a30d7d4e0ae34bf8fb2559f907d7091fe37362db1ce4d5599d0302047c435bb50066306402302b16e8d55dbb0eefd83f59fb48bbe55ae41ba0783cdc464ee55702f433122583ea8efe1ad9f48ed70d0992addb7b9e2a0230391c34ecd6fab55a932677b10ac72391ab0a68673610bdbc23573ede1fe6b5a82e98cabaa30625ab3159f9495424a8590302047c435bb5006730650230503afe54275cb7296e693776ff55268f34d4aa3c96d14ef561fded711ac51d7aaa81c9ccf91acbfc2518497507d27b08023100944c056be65ee491722b2b8db99bff8f4281618d87a9c752b53087a5b5d1b7fe0864963ebd62d1b8d959862319ba28ac0302047c435bb500673065023100f0a9e186eabe74586961bb03cdbe175dac86f462e887d4e63a8b77282ee6f350844886f29aeedf3cabb086d27500e1f202303ef373b1d9792e39b267cff01c484959b5ef164e0835d5bda2694eebea1c07ae990fcfa59b460ca251278160e6adba400302047c435bb5006630640230299e7477944deee868a0e7e917665e422b7ca0bc4128260b30c24c7cb6fad5d7586d2f7f4e877a921a174f5891b2d60902302cf2f9b39405dcebe9900e33003641ee5836a611b7e92460edd90c8d06e423ab551733d028319663e028d916a53731d70302047c435bb50067306502306a518778ef21f0a4dd3fa37dcfd393e079b7f441160b93b8c4a1c01f764b1fe3d2d9ceeebc34842d98d2601ccc1fb870023100f29f61ac99d4c2ac455e6b88bfb38bdc7af3df86ec49d0b237702f318bb64117aa21638ccffcecb78dc14f8f6e15e9310302047c435bb500663064023037087604ee515098e308c34f4464cbf4d12ea9e93244576c80129fd5add8ea7167d67d1b15e61bede029f385eb63743802301d2374ee0f3f82a3a90a934b12b3cc98f9c3b715a31233d4c6cbb8a03405078f368ada689b751597275519721d02a5400302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e5173a9a781201efc1f53db379e0ad7a69a3183c65cf055f8d0b5396eb97f8155fe4f64b18cfa690ad50ca398841a86a0230695778ff427a98aabcab98b610dd8bdc55ce2ee00684d35994357c1086f6f5404483402ff7b25d9d651b2235f1445f080302047c435bb50066306402301b58cbcd5b7229487679d521e65052de19b4de10917bef0d950b01de18ccafcbdb3105e72c6b0446fa7aef1b02df2d88023007f4053364b94855d0904217a2095d534265e7e17c959573208f72f5981385765f70ba286893767755d442ead77a56560302047c435bb500663064023039b87235d7a5ca8b8f6aaa90ada2c2abc833a935dbf2e274f2bbadf9700ceedaba11b1eff6645bbe1dd0183e7f2b6aeb023051b9c5e3304c9c3f8f4f099042dd2dc57152837f58688b309682540b89d37f45fde410442ae1b946933365156e3dbd3c0302047c435bb5006630640230626b75049f8dbba8340beed417867e4644eb4705471c41d4bd8de2e57f04293c46a867f55e9f81d71468929324e735700230203ed9d1f1ab963327b6f257d0c2ce253544a00deaffe30b0e9587a8a51d2e1ed4e5c753d8cb254773c272fc421a86110302047c435bb50066306402303f5a15f36505ae8f30e94a5b3b45e2cf20201499f4afadc46c399278d5801238416e87167c2b0259c1511d233bc80373023040a7abc9f0086dd92c8d4708c4dbf44ad885a79efa830854b3e4b477fae63a3cf27ae12a584575d770cb789278342e560302047c435bb50067306502303cd7d7741a437085822d88e32684ed9613d91c33cd0585159dc47ff0b8f552f66f68a0537e94406bd1c78c9bf6153b76023100cc1548168b62ed77edf2333012f2b4db86a737042154cb17a09b2277f7518cd67b9468095a8c017d3ef2f973ea25a7dd0302047c435bb50066306402303d76328e4d681e2ce90c0ea3caddccee088fdfd0ad8bb493b70ca9fd43898e489a6d9b8fe853389fc7ee607ac5f2c922023071f5b655445e7242b92496dc366aa1c193d494324a3c11aa7bfaa06962a7c6396349c66030433953d5f188248799a57b0302047c435bb50066306402306fe5263b54046a8ea58605d78ff5a69f64478426815f21f83f83f7283574eeef67c45c98adae7a491f1724d339cc04980230156f296aab580055c8af58f072da250a84318eaeed215876a1e2720553e6bb81a0b66c6d862481afa4aaa3a00403a77a0302047c435bb50066306402302be85a5ed151cbbdcbb0614897357ad7ac3b75226dc80085c1701284fb7159d9fd11954ea359c18f1d87cd314721308c02302c39913ba46824d8f3be293dd68511041b9ebf5ad3750b8abdaa667fb282e345ae0c9d49d9c14d459b5e227cfa9462cd0302047c435bb50067306502304b70c36f6328872cbce37a1ef1cf0ebb1350ae6e3db766120c156da4927e46d99382af6729bf595159cf5aa63cbf4ce9023100e86d48dd38d93d72ae0076e0daf3017fc386ac519b9d5e7b55f33ccacd426af77e23e0bac1a8ccffe42b2b2dbe78e92e0302047c435bb50067306502301b5d478f5b8c2d14bf0fac553c4ab7a21287195d89a595b0212c9d1df45d2553fcf52d870932e19f637fc0231e3fe0dd023100df9c4b01eb7d3c6da69a372ca085dfcf64d17d7cac83e53dd8db2b1ca753dc08341db5e61d79c22733255c1f31caa5590302047c435bb50067306502302d446ab96d075b8b681c09cd5fc3688fb7886c3058942b3c5df630202ecd92f11d1fb79addffa749c80995f8ce197c77023100d6b644734c98fc0c8eda2c6c041dd746b18bc212cfd21e9584efe59566d84c8588996359850bb29213267088bd6369e90302047c435bb500673065023100d7b6e9b9ed397ba1f64fb755096cd3d90a58c40f557ca5f6d517f0e603b60ccb3bda4c21741fcb42ff0620d9ab72bbf20230103af22822ea63b167cb4d17d162333786682d76d6ba0fce063e9c9d0ffc3d6cba5f342676fba7199f834d18df41721a0302047c435bb500663064023037e9433458077499f4fc5b4fd3e0286b174d07ee2bdefddcca8bdd7c6f607e1f448e8db996b58bef8d48116e512eba25023039278027632935179d0445bc19fa49da94cef05c79703bc351a1d2b02a65e6262003761ffa3d3049cc8ddc84bf68dc3e0302047c435bb50068306602310096336773f84ea83408d3185a0c5ee56fb861f8f685e44d201b2ec110f85190ccd7f3b8d59970dae2f093d2ef0aad8805023100dbc06244793d4f5ed28fc7a89d5967ea1a7104df93d7699a05a6b4f9f8e9ccba5b0538e3b727e83a7d7abb1178ea22ad0302047c435bb5006730650230353e1d78c069942d2e82462e9794a65ce0bd49ad0654f838ffdda2a5ec0c17dcc2229dbccbcb6bf151ce27000e9a07ba023100de308dab7095958057c638fc3239effc2fb89b121b4b0624ec6c4cc6cdf7ca2e38733d836ad6a6f30b04e313a2ee3ef60302047c435bb50066306402306df8b18d72a7e4509fadced0451cd2cdce0d80d32c840d80b61bc9af1cce6e4c09cdf602de9076571d56d66d4fe0505d0230360698073abf91f9e37d92d957ca0a7b65f8d0321493d40f0caafff31a442a2b6dbb89145a5f7fb95a667b781ab0926d0302047c435bb50066306402303c495aa8f158470694c0fbbee84f94d600d86763002a4ebd7af0f179db86ba58b7c430d9a6e1ed5d3db33794e2d209df02302f36eed47caa27e75d3dabaeed4c248268669923f7d642e9813766d349f41743cf28e511e4b58916d8e865633f87dffd0302047c435bb500673065023068fc317d7410309db22418d02ab71586a1d2d64c1e87d26f332302792587533e9614efd0df88338fa1b9a23edd44d9c2023100ed50681e410ace63f50d461b4fb0197cafedbc54f89d07480f99ee63ae69f68ceeaed47479656b69e9cb017f596893930302047c435bb50067306502301e4543646e345d7b45462cc3663e559c9c5beb42f097614a2f192e4fc517c6f0b0363a0b322578930aca165401fb93ba023100f6c5aacaf1656c3f93beb23ab0d32406205560c7eae59db8ef8246f22a8805d8042646af49c18669fca0ee3fa925b7510302047c435bb5006630640230241e2529fb272cce335ce89ed125e7714563d5c5c5af06c02d04a52b5bab0b4dd8469b44ebda9d22b86d345522e91a64023038947503947041db52115a5f405db853862f373c279b28d5a2af607945c0c75fcc396dec69906cb3e535ed768dace59f0302047c435bb500683066023100e4d3721e4c87e6eaea1bed85fc6f8cff87f7ceaddcf02b0ab3c677453233798df7cbf9b5eba549a84dace64b840c5bdb023100a90b08e4cbb6ae861d00509dc1ca76719c3e7445db16261641319aafd98528ff509665e3ffd8c8b1316448cf57baf6d50302047c435bb500683066023100a4a36fec7c0d454272bd481a3ecc5ee4086f9679694cd690a4663620e502fb5e7037706ea1cb46d040e80ee0479dca94023100e48e1601611c47f25ea5740238bf0d6a62e085b6a5d769d886f256e3d5fdca2f5cc89436d8cdb4c9c0ea9df839210b610302047c435bb5006630640230070b99d952c490ab8cf07abb2434b0aa0752c8e70b7b30818b12fb8f53443e395dacef8d77b8fa0c5678300345fcb04502305c430f1e1c9a2796af2db4b4ba0bb678937eb13dc7dce472c011f942dc719aa85bba62eb1c7a5e3209b21722ecb7da2e0302047c435bb50066306402305406f8471e725504fa08853ef72f212e61268b49cca80c79bb6573cf317f6a5a69056d23c050155e0a26bb0e96c50542023031795da42fc6a8fb3c477085736ceca91c20313092b04895de6fbdb1bcd16c3be4e587b01e6284d2b71aba4a4f69611e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023015a2b258695a36b269e72df5d95df77b32d8e1bf1a40cd3c684c47c5e8634781da212d7c587493da537ccfc624f923d4023008930d39e0e0817d5e8e943c9e6985c154a38cb9ee59240d1fa5f16d8b3c778649a1e42440192dd6bbf4e7d0b2c1f3bb0302047c435bb500663064023051f34200dc620da8d5a9cedadd83c344aa4b4ff8a218bda3d4405fde9c0ced86636607a4c4410bbba448aadd1bee8bff023072121b7b6f71d225b2411b570539384da35a2450e44f364273cdc56b17ae0575c588bf427506d40733ec37790521e4cc0302047c435bb500673065023100ed7c0cfa8fbda9f515c0b823642d0bd464d316b8e1b5cc7c309b1f34f0ac67fb57f555932fe85abbbac0454f5b5f2919023052f6e37a972ce39daae13e68221fa3734c0c8d0a10c76d3879f473c3169ffeb159ef71abde6a8f963886d6211d02bff20302047c435bb500673065023100d36af69598ef8b613e895ebc32c8973b54641938815ddc76af3481b330b429f8dc8c282abb22cb1ca47e3d1d0e63554902307549a25825d38440bb7a2b324671a8c28864b1bbcf3d4df51e0fb7fe31f36044fd873f55dbaa4757294a60cfed067b570302047c435bb500673065023067f984b5ee5277212bcd0c82ab0daa41f6a7e41ce3e3f2e0b6789f17f977c02ae1b1fce063199f807a06359ef9b1c13e023100c138a2c26bcc4a0bd01f215aa9817d13662c6baa6be1cda3ca7df32835e57309f9919cce83bfa89626418c6dd362c9f10302047c435bb500673065023100f6a35bdc7f27907cf337dfb1ebfe01386e6e50890e2fbff0778c4c11f6097c4cb767d7bb5dd5a81903d72294f0a43cb802303dcd304256074ef9ca76817d3486debeaa491320d333ad58dc1b89719e1e50a9a35898c11dfedefd02455c1bcb1cc0c10302047c435bb5006830660231009710543e2e602296d51de8323d2105e5007b9663e024d2cb09b7ec6a112295419eda830b8d6cf8846c4fde774fbe19d9023100ebdc595a775445648365a3d8b76e259f8dcc152565f5cffb3b23ed693b7a7efa0b34fa091dbda4ec8ef3f3db8d121c930302047c435bb500673065023100a75ccd863ada42517bfa76312212b4090bc3ed54d833946b1d65494b1bb16c22b8f4ee19b30048813842a8f320e545b102307e8664792e1383c729a0adf6795586ed9899394615b13e31739f32894efa9e7da0d3ed96b9ce744bb6c1fbb0b0ef2ac90302047c435bb50067306502310092cf46ff25b443ee0d3a439a6deefda6a2a7a0c07dac5bcf396c7aa0e115a5a620a07de139a750541097e81050ce99f7023025cf605d686964cb022264ed220f2c1a9b378a2eeeaa7455d91c785037d834a4d314307087d7cff4230bf0e2953f42da0302047c435bb500663064023021eecd15ba393ea83c8b4f1f9ff8824d8e018f2933a9af1a3f0e8c56218e16cae9225e9e325c2970848b18558a5d2ebd0230469e894ac343855f1fa40d0b0e7806c40be30bc18740b159c92bc83f2fd65a2bee5212f60ca5220ba8dae8a89ea138630302047c435bb500673065023100dd8eb846f2b6c8a1eae2fd9a2390e2be75904326da807d422b7f8fa3e19b362248b606878ca51f5740b60b89f0971900023005c0126440486239512f9518a1c7b945ef9283507d7718904ddaeb7e1e252ba916745b534bc0650cc9150fce216c45400302047c435bb500683066023100b20f9c98e0a3e8576740abdb03fd12e5905f9927f15a85a6708b88226cf766c180d17afe8732b62de930ab120b6fe086023100d75e486da521ea8f3fa2339023fc2709313d47d0893c676f1980e44b71117e2a968cbac808d4ba87ab103ac47f1330c20302047c435bb5006730650231009789aa35576a3742c8d5f84d733b8e2aeb98b2d74cf8b12aac50623c4579597edf7ed332df69483b3521d7e275dc0b8e023007df542b269e7df10a14e7b363e83cf952186d9b8c94440ba636d4df14ad19f8f8d9fed2a17a2e0819f1fd4e44277e700302047c435bb5006730650231009c094c4ea4e46cfa14db208ace6452684fb9e3396e696729021d0fbd5adf88607cc5f8567e908f2bad1dccd1aec28d5402302bc1e4b0c578f9174950a7f7ebac8318bcfa10ae7a52882c8fcd7577fe20dd24c896386ef2048ee2bdb4a55d40501d730302047c435bb50067306502301153718166ee73701cd75614ba6f388403df699a0514b0bb1c9325cc0c188ebfae0ed4a709d5ab5924f5ebbf26b234a4023100e2ea1245d9b766a09fbd3d7227d131319d43e97df6f40a6aaed2dfed2e87cab58262f4515ad0fd743f964fb770b34bd40302047c435bb50067306502310089e3751777d90968681cc32de160a5f30c240a6d87225337a1c6b43bda905bbc5d1964a5d3d3f5370449f1f360657a440230700337a4cc20cb968595f27ba00ad799262cb3168578644670e74be918802a5f407dd3f1711ad2c472b9a7443073196a0302047c435bb500673065023100c84ab14b01bd75c1eb093194f6560f6c0cee03ca599c135ff972d1bc8950fdf6f245ee0d6a28690cd97c204b69080fd2023043314ae67713fbddc480eefc62a5f25b36c1637d157b21bd9c2eef212f46c27ee8949d5f63e02da343f9e251ca1940870302047c435bb500683066023100c8bd6e8b45f1de7f4ab43e9efb6207a3886427aec11e5cb61203a90ec7a66ea80c01cb076c5c9b03e31c902ff6fb0dab023100a52e588611e0761aaf4bd6be165981f070ace975240a294ba38f1a3ee575bf2acc602e18aecbd2aa49556fb7df5a09fe0302047c435bb500683066023100e2dc2a41a4ecc095ef632210a8d4505f00b1bb53030430f85772ea11877443d7a251916ef2423d7ee3a35f4a2de63a9a0231008903f0449cd9082723eb406b86b3bb495f9b5e862ea4e9ff00aa0eacd1296b533edec55ee32b5a3b5b3cbce476ce482e0302047c435bb500683066023100c9f7b037488b5b89f30f786009706af806610ffe368eed00fe8bb814ec53b1e5732d7fe95a5c4c35acbf77f5ba518503023100ff055fc4646e72047640994cbea653ce5d8946aa222663846cd1a8ffb1aea1a3ccbd7ebc857d93c33436fd38e5fa66ec0302047c435bb5006730650230393760effc9a4434c0572017e860120d14086df13d1ca5435e7981796b4eb2553213e1d4b2bd6d42e5a45991c586dc7b023100d1ee9662fe722d58d608453fa1202aea6d6f75a89730050dca4dad2302aac442a402ef7c8e5bc0e16f1d4a6dfae57e170302047c435bb50066306402300e823b293149aa3678c2df86b589527eea7e3af0dd4290373b6a5f851913c9f5b47e85329d856fb2e6e5ab33d371534302306583830d1188dda3973a4cf3b05367f024a2b4d8c58fcc59f35c38bf58d88d1f94a39b3040a0310ee590953bf99e221a0302047c435bb500683066023100ff50391983178f31a3f075aa6261c98c5b4459837a5dad475e508db2bd6b177d4e6ebf2fd45e84cb99a720f3232034c9023100c8cc604580ffeb76bbf4ee2ae5b5e9acc809f4ed476ef1a108519f97d55a5b8e284a084e68b985ae920d3de66e0c79c60302047c435bb500673065023015e9ee465638a4df237fa41ba20254f80a4f2348c8829f19d8e2b6c50ecf2526e62d1418f09b4b1ecf4ded7401ddeb3f023100d57b59549dc15eadd97d6e81a5c4132041b5c9511cbbecdc0463c9c536b29d378efa6e899c28543abbc5e497208b905f0302047c435bb5006730650230778abb61bc61abb9fd7f1c2069f8a2fa6862447de599d4704b222a2f123512062961192f3439e75c7c828367e56111ee023100d3946907eb5d1b697f4b0b5b268b7ea7d76937cadbe3e1f81db80dfdf0ffd8a10c320dc446ea78fe3ab9f8adaec1a7940302047c435bb500673065023100a4d818cbcb5d99ac9fff5745bb2659cbb921feceecb236cd98cb042de496a0fca3165430bbb9a673d9863a0e047d005902302f81765bf6c8e5af6c355063b5e8f24dd220f8e21708e531c4a66fb8f4d83bd46ff011afc1d29c0992b6bf25bf7cd7980302047c435bb50066306402300296b6f94fd4f26b024aea29ab143ed7c1178110bfa3b561951470f33dc877e0a37edcb8cdcfc3a729ac16e12c5ba51f023014fc9247d7bccd3c9c0a3907c37d66be3a3785208f2384f792a8314688737cb57fec692a21fa95d1de9d7f5a3aa33bb60302047c435bb500683066023100fbb994ebad66893c8c9de2f1e94163aa580a4844e08bf2d619630b89f899f04908355a0b9e37719c2b878f308cc12837023100bce5d8fcdf926bdac1ae0f469081a0452733d70c885051ee28d6b877832d18076c0bc1b05a4aa5f28278114f0887e9c90302047c435bb5006830660231009ed9ac8509ec0d98897ee81331d2b9adbf7254f842b26ad0fe1d5baf2a2fa3f14c29aef7617a6416c9053961ddb54b46023100bdd25d54edc986e23c464f7bacd55726fa774da1660b9ba554c82e2f6b68a6c562db367749defefe1e7c255fd38055530302047c435bb50066306402304d023147cb6750f312f63c796bbc007f0aeb08b5a25c19831b19a18cfbb85ee0f03b8e4b54af51f917bc5614c2a6aa07023012a029f997f2d64e4280ef56724b52df7bcafb2aff881f07e0417607c63ef3874a62416a44edaf8ddad2eb5d8ca6ac2a0302047c435bb500663064023055ee1525676cc90851253d96d09234a025d61d5a87c5e2dd7529fdf099589024d1b4d2c0a1af4ee8df3cd02f6023d11702305755807abe72d083735b4ef66635f7f181d69ed2e6a5e5b31df3e2f17411b7f798e2e299050a37fecd88f4d72847a4b10302047c435bb500673065023100d3cfa9d61933251522fe22d64685784f77839a399fb2d62622815dbd2d53b41ef65c030bccd0341a4b355f25a89454000230587ed0404844eb57da8e56778b5bc05890bde8b91f82f45d6090e835c24fd9df9a753a9fee5e93fa454f8a44e636761f0302047c435bb50068306602310088c3b28e5277aa8eff4a5c3711289e24f9d230333993c142f3c5c6f37dffc2022c9256c721d7e16abe4fe656b950d88f023100840737c9857f06968bfb8861319ed2b85755b639d4069ad449782051915e0e0df249dd343c29ee34227f11f553f23dd10302047c435bb500683066023100de80ea2152485c42ca944667dd35822cde6606a89114a41cc472bb61c266fd505a000609d47d44be2788ef3ff38d97be023100885ce21dba401d0d149f3166fa363ef7df69011a61c0b84d3bd22be6c1a129d5003293bdf796d5cbd41aa30e69687d540302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303650be4a3aa0378d4f954533f2767707b0878b3dcec638e2330cc5fe8c8dcc0bd07a7daa5b70582cddb0fbb5fa18a1ab0230548691e3cb0aeb7270178c40f29a94c2b11387762deb45307d9974490ebb612c9079c5503f61100017ba1449780ed1eb0302047c435bb5006730650231009ed2053681c3a322a5b5ae82817e4198d1332f418d38d6f347e609b70f13d7dae1c822f6682a714ac49ace466502640a02300a8d52bb588529a74b1485cb262988b0b4a483a54d5e9e75afa1826547b55be8234108d5c18a78d44c4c06e678b23ff00302047c435bb50066306402306d725779a71e2a0e911f04a61eb6e89063500f315a605cb1e5b231746b59327786ea958fb6023aa5d839f1c895c00804023035ab5ce4d0944323cfb103acb1cfc5ff63a0dff01492c30d586e867e3880d344d5e14dd29ff0cba43f20412b238cf53b0302047c435bb50066306402307a2bb43dc351408c97c512acd5f59e5e8a55e4d1e397b9feecdd322da863b1723198fffaf4f3207337e3fe94deee674a02306feb0a454f36c2643c68cc3b2d40374bfd61a326a359562ff7157b625f3a721a7658c76a55a4de4dc0ccd7e1928bf3470302047c435bb500673065023100f3744a15123cd132ad95f9f44ee18ab6cd6074302bf7d76e57aaf3057296643294995fedf89d366b9804c15e1569d59902306599e38f246ce738ba88fb63a3377dfef7ba13c74c58c5fc3702a03d949d01708b91f18e956a112ecc573756bd238a920302047c435bb500683066023100f5fc763473bbe581f320d54573e9bebfacd55b2097e4a87fbda498dc2267cc84dd024bfcdfd3048062ab6d9c2b4098d5023100c937ac50f7f82dc19a07fc8a85778a9a007a60aa846158301bfa2db5e911863fa6440b301f1cbb985735348df6ba25130302047c435bb500673065023019f664d2e964394d7c523592c5887485ffcc812f93bec2dfb4029fb8b7caa631a4c3aa2a21d7c07edb85061fba4f51ec0231008f5358d892f40ab03c08d7a8661561ddd196104acb95e6fc56f28797e36d822c9b8152e0bb221c290964e9307a9d84af0302047c435bb5006630640230478d6e0d5729db3b17cbceaf54f2383f915cda690fad6e22f9f7d92feeac7076b0888b9d4b93563bee3bf31c915fc4e702302c6ca8f72b072568818498f75dd09f2c8cb971dcb6b3966ab701ff7e5b448f7a57a7c70aef771be5a157953a69adbd600302047c435bb50067306502306bc8449751e7a1b7712507765207d3995886f6fd733c0a517b39fc907b84279c8a98c992ff004550f5f64c0d76b991b1023100bb84a2fc2bc25667a3c592671d56542503598215b1f52f0c53b192806e83cf8c692ec7fae858bf8d5329a44947511a730302047c435bb500683066023100e48f85f40686622b29a50eb08d82063e4b272053319bdb162e9590f39e72a6534e9822a2a94976cff5ee0c717d0bb1a4023100971c58657468bf679eb8fbfd474aa83910d11765bded0ce087277efe734ab083ff89e41147525cb58f695448fb8d67900302047c435bb500673065023100c1b9c220f9b81fb7d5076668b08ac236b1776a7b3e280d28e44f5ee5fa0f7944441266134bea31243a3ac3ffd058f8cf02305f5c2bab86e948005ee1e2cebf5e9159afd5d8cd477da5c8fb07cd641db7fd847f563163d4908218f614f2b554730c6a0302047c435bb5006730650231009462d489671400e726c6e58933ba858b2cf522a8e21de2f7c4529b6ab049377c16f9654ef6262ac647ffcf55565f8e1f02307f8d6ec2ec07773b4e742086da6098444cbb53dff731dbcca1a641a98a0982b40f0e08950ca7c08e84ab25a5883dca9b0302047c435bb50067306502303be8b44f3f4881dd7ea90ae0a89f34cad313b3b94b1a96be4b0094f7db599c0fb5b07441f75654f4d1fea9ce0a81a675023100f85761f7cad2464d75064b09594b7c1cef6f79d777a5a8c6425dbf02e86d13e38c1901893388553001cdbc292d0090f90302047c435bb500683066023100c1756c523e8dbc62f86a6e57e6c6b7629838b166debee9d45a2beab223a386a067b3f2c8efcd26e357e867edbe81b0f1023100e8f3edbeefd474707225bffa4ce719903c1a85708a5afb3d3ef2349a3d2f4674256a2cb40f9280c6fe378a229ee0a2370302047c435bb500673065023100a1638c20df9396d719fa3581aa0f37336fb7b661d15a182f901d72a339d986094c155f22639fe4888591b0e21a17222b02303fd13de9e7612b6341ce4dee09740b77debb52864204193f9903316109be76a56d44d5f2ccf4169ac7388b46a3b7b21b0302047c435bb50066306402306e653b90517bc2da90a7f114f5f35bb381aed93828d18217c16cbca5e8c9017bc29bb2f5044876445b69601242e35e2c023068daa6922f6d842024bb0f60ec145355f4f24277688da1e7aaf1a15096e8accd7bb07d0b596d6f6e33a046f30d05159c0302047c435bb5006730650230299153c9f6c3312fdf5b2849688e0298e2445c9961313e2abddec8aebeb6cd2979849a24b27a463f94ece7fbbcdcede8023100f0ad0e402750c273ae4ede95585120180d8bff9e7258a590e62b1fa8262cd17a21ef82c31263709fa17e04cdce11a3ef0302047c435bb500663064023012ccee336876524904e5a3d70c7e8370b0f7824f7aa74895c00f44b7ac263e9b8f1ff6048673198aab27bd8cb55391230230019106bc2fac4e7fcc3e539777e914039ea831437f07ded7985eaa69587c6ed3bed0e3496cf5be74031558a315cc6f7e0302047c435bb50067306502306bda3a85497c452d7ceb00e0323933b249bbec5a613fcba658b1458dd38ee7c6e1bca6a353eb1813933c6734af47edcb023100c09d73f275ec7cdf6dd3001488471f9d3ec1df3db436d9d21e7cc21329674986c59c1f507517d1e143cd7cc37c598fce0302047c435bb5006730650231009746bd87101eb8be7a39f4effd83e17c9111ac00bc6f18f47362d534c1ddc3e2c3c81e290695a38466f1fef3e05bb0cb02305e8dc9e4137d7f90e39d9d4a7329b00b20c7819c5061bec51535a5eb020a1d8cb85389f2a86744a00f5f76c40c2a36950302047c435bb500683066023100e74dbfed184f2e3227f5f54230b6d91d7aba30e47ec4cc9f72dde9f12688ae34d738bc807cb0c558b09ed861d84ed83f02310089687d6394b83a00ea84c876cb266c38561b862bebb4848c844d8a3b3542a29cc506d616c5950304557179d23e06e9f70302047c435bb500673065023100f4e31d9f0dd1f727b76561e8f0a70f42107bbff87adc0ffb80412c6633f0ba4ed2c7a1f26c5b7d0620ddbf3ffb36fe26023058edc412e3989216cdd1c86fa0f55819f8d8d79c124855932da670c4795d8d73e7689ba3e05a881dcf18263c959ebf230302047c435bb5006730650230396f265792a90f82daa856b9f326daca2786025dc4b4e3ed8f85aadfba4b052afb7bc027f2fbd98988d92cc5e6fc3d20023100a2c6df947082f2ece00560a9d8303c54e5cdecc31a2383d76e578b802ac793e2be37d19d0d8f5e2037c7362a993ec3f60302047c435bb500683066023100ba2cc0bd95da306f66332e9349b00ba5aaf8dc2f4d2de7f64a426d830c9de345187011d2c99cd99bfb158941f7238bd1023100bed5ea7e40787dd918cffa94196ce919bd18798910765c9448ee74e44411db8d026f7cc2068b3cd85cb05854841365e00302047c435bb500673065023100ae4ace09d6a9ee9d45ee812189f902c6445e3c1ef427cdda9c10b863c66844a59067fa1acf17070b612cf515d9e6c74d02305566ad0871c97869776f8a030166b74362497c84770a6d8849a402710519a403c53c68a24d583ae540f56f9475444fb30302047c435bb50066306402302d12c2046e21ca4dd96a9e291bf9d7e8a49c396302eca69f977b4a388f44639cd2f6f72384b0a70164452d2b280f529c02307671333c3c9d2ccda0ab60a6896fb2679aca135182b5f837d25a75393e2ef2df9ded9c0307920ee189fb481969c61e470302047c435bb5006830660231009cb2b0ec8a49fdffb3fb14403f6d8b4f713658cb8f11ae236342353290faee416f5dfb35fc2b1ac719c9d34999897924023100f520d366cb72f7c59e3b4a3abbcb02dcf8a9ae945c1c7ffbb3f54718a4d4b4d55e87f59d55e58dad1dc7ee3d3dca5abe0302047c435bb500673065023100ad88dfe1d55cc8cc84751defd517cb87a00035e68e1478c86c26641ac5529b986a40d41748ee31d034b726b10e10efed02307fd074f57ad6d6fb3d72106da7fdd86562f66bf7225045c6f224c0af2dd60985229b9f097ea34b84895d289c06b4b4e30302047c435bb500673065023061e0620076f724995eb28a10fabe69abd0739dca88d782c0d31c0da94540c48b589349140773a2beec759f371151a062023100926076295bd99701662c10d270e2e6ed021d5de6664b5bb81881d66b2a9f9b9759e15f2ee00625b9047fe4fe05e5e0100302047c435bb500683066023100ade91502281eb25abe77e15f4d35a1a730ef4c4cc52d4723079f282f9edbe75763a4969f1cedd5b81978623666e54382023100c0d8c9eac8ef7f19f4359ec0cd848cdf8bd0eb586d46fe111097ce23b6ba9bf7e0454ddd9aaa11f6471cb8cfa32248810302047c435bb500673065023013cc67c8b76e6382ad38f9ac13f6c6554661f30894d54dcaa0358721c0777eeb2d4488418f72a9039e39e7877b0f18b40231008b70f26b51d11428917af7aea9884836db9b56f72bdae56a38ef23ab2da2f18e8cfe287692971455a197c00425f467b80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302d3d89d423df165030e1ef064b91e487adf9f610968104e64758727e7a9e352c3f0c74466f6e36eb959eaa91cbb82d86023100e62b2b0f1d3e6b0776cf77d0df77a9bfcf3a01eac7a4c37f857c671e580c22d5881c73097fa460d3be05bfdf959bceb40302047c435bb50066306402307e4addbe3aac9c94f464396155016dd82d570cda31c51b809798d991a84c9f245d92b1c361d4b36fe52dfd40e0f8feae0230038f980a55ed1e6fa35b2f4814021d22d4d56847364a377d8338b717e55bc6b96303c75fcff2b2bb9cfba328a1a9738f0302047c435bb50066306402300596fad221702120d5c12f2daa66e64a52e857aab94a784b4d2138201f587493d2f8146ac4c5f5d4692a95fd82a5bc9102301a0148bfcf4f35007135ac4cca784ae1947a731fc24f4c43c127ad736925dda2bb021064f0e1be83271ca810b8faddc20302047c435bb50066306402301afad09e0073902c5d0cabf0542729ed3b2912e1eafa1508dd3a377b073db720380cdca8998b13ce5a787ab762515ae802305073e21f5fd3e3619328c98b4b2f9b71175247d9be7646e14abc4c316c4430f84b9e6f8141f3dcdba2c61a269b58b29a0302047c435bb50067306502307a226fd949c856c55ad80c182150247b09523fd777c4601ad816d2fc23a81411d92715d2067ea65fc63a6c2d75f23b81023100ac6edeed8091a7923c70b64f0a3bdc169f346653d69b8e63345066d72dee05b24f7d79b247b306416d4b1873aecae0fd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100abe91a0a6ce874282b85eeb896e2c9a8c15cb64ebb36aa5beb75b29e17aba4bb98c1930c2187e0e7344e74210bb6202e0231008b5fc6bda5efb072195b71d444920f1e5b5f10816f04a4b857d8d669962ddce81808f135291d54d058c8f123255184c80302047c435bb50066306402303b3ea404393fe1178985b6e6185d9c8849b846d25264a36a847ee926f084dea534ec8fdc836d02a3aa598798eaf58c03023014e3f37647adb016924b35498f28f5917b5978fb2be16915c10a855a41ea7522ef55966b02a7c9b2dd2cbaf48c3a9fb00302047c435bb500673065023006ea7f0b59f9c1e7863644fb943ced2aaf68ad53320d6aa18f75c2002d997ad7106e0ce0daa9e09c5bdfe25be16041fd023100f838e7b3fda2377c2780c959046952eff1b0da28fd86c75a8da6223b9cf5fca71b91b08e08fcef64580f93832519636b0302047c435bb500683066023100ca43a4d4358d5250fd6fc8197dca7b46693ea531de832e96a84de938e35b77e89c28a957aeda941a220816232bb5a95a023100986c490b4a6d941b763cfdfd62196d144311b10616cc0cf6225b0785fc68f7c57b3c3c26591877fb90ed5b26fc25d3110302047c435bb500683066023100f28060dda1d29ae472e1d2cef12eefd1fc7eed79c7f7e165bf75c0270f28593c0a5f8509606d2e0b282bdc2b8a97e41c023100fb1daf21df9516c50e6cd1f77e0fdc771dde84c0508a673456f6b4d1b61961330652b1acd72517cb9613c427bac96eac0302047c435bb500683066023100b8a0b55c0cd35d8a7c0b974ed5e210bc97c3d05a0c69c18cb5ad8f90b1b16023c8ed16c44ce1f288708e6fdb1c31074b023100cec48ab0be70d5a86839ae153d3ede6b2507716c0a28624182ef8f457d727e0520ad0e4d0f217cb9f2edf3143732de820302047c435bb500673065023100b49ad39dfc4b5ee657d7fb1c795482abf3ed63a8c71e3c6b923818adcf9ded5bf939e04dcf469168fe73a7e584b9b87a02307312ce43b13e78c553607051fd7e5c29a415dced4e0dfe933dc2cffb984a18d74d0de6aece303c63d419e17f4def3cb20302047c435bb5006730650230631f7a9c407122563c56d8889a821f6a30a87d7c9ba33567bd9d60e18c2e3ac71fb4307b3abf65bca5c8429946ac2dbb0231009e4a2499893cb617befe17d5e89b73961acd11814217847f3cb964ead41e9e3466c6ffa313e9ff0649b2427226664abb0302047c435bb50066306402306b0e8e45e52c07fd86dc26492951895f8b06b9abb4ee15b5c797389f3e23bd9883e3749a6f394e2017364bd30ad5b61f02305170b7a5ba9059ed73f2c812d266d57e783fe1da144b9a47daadccd7ebb542bc45b2c8697399cfb7621adefb158cef100302047c435bb500683066023100a414ae2cc6ddc38bc270b8f0832c4162d5f1093fd1fdc530f26d3e5436aa77469f80d3347531fef81d5ed30f5aa3b938023100e37bd60e44570ec199e9ff7427f97b0dbc2810057469c4bb69979c246aa5be14248032a1c414ade7da480ff22fdd13b00302047c435bb500673065023021dc1514bacb7ae1ce788f9bd4c56de56923df737d3cd91f0ee7bdd64ba6accbe86fa415a2d4149d6eddbf6430b7d4a8023100f76a02f9b6895e1e29c467ade7b98dff17fee27d153a0e29cd4174c760a9131730dcd37fa90374114a0ba6ee0f1abb7b0302047c435bb5006730650231008d73d9b1494ae38aba3d8efbdc6f880a4c49048f75101dc625d6cc2f22ce5da09a5fb7456fb9a4777f0eae30a18cfe1c0230534353bb45af4c1d3f5268e91c0c2c45903077fd5465c67c60ff020c5239d932ac861bf74329b4f8388f2697691c93850302047c435bb500673065023100eab02a59935561b54584252db77617c2cd2aa9862aa78f93bdd9a5ebac61a19266119dfa61f3ca7acbf602e7d62a4ded02300fca751fdff0e8836feae1a62bfdcb98a51649d576e628e17d0a6520f6f08d8f938f6e06106b8d3e056c68c7b12d27ae0302047c435bb500683066023100a27331add39fb181f7cce2eb62a332b220e2005b886c28ee3b10b0087e0602c6902df93284129d6eb90556b1fbaf72720231008ffdaea7863bb0cc668bab520db24ed35e8e48afb2edd28f688849f7292f13eeec3c564182bf16a36fdf2f033805a6af0302047c435bb500673065023100cd754e6edcffe7fa3fc1a9bc64939ba8fa8bbcafd19c2cfd0fed398eb87864c38e1a1a2e26fbcac9e7ceda0a9c8d8c9502307e54bf2c72f403cc92a863ba2417ad642f8d0e559f91ba53a907b13044484d64ad9154998357c4e7897717f61cfa37940302047c435bb500683066023100fa58f7f55824f727aeffea18638c9bd5e74253a200b51080d125c69251f8e1aa82eb398e70442b95375c9b6726a5998b023100aca711ad70af8f71bfd8c078439be626662797a9af333eb5f9b322815366554f0ffa0ae512f3427ba8d263fc5e397d330302047c435bb500673065023010c7a6ba84f5ace7a8c2f7a47af618dd8a4581bd65aeebf83d4d5011ae22a67c8f1756d27f50750c4ed3ff63d05bb0b1023100f077e69954c9d36e6dc7afeb41edd21a30855e11e8c84bf7333833b87d25880b7e2a54fbf1d62396883f09ae4ca854410302047c435bb5006830660231009854e54603e702ace78a63285aa6f038a1eef8eafc92fdb648eb1da9a567baf94e3d914235c3707f5fcb702de5e9304c023100d3f6ed334a31cc9a26a9ce5fb04aa40102890444da56f0a6bf76c1c7844dd78791c0e4aec31bd42fb15fd1036f17276a0302047c435bb500673065023079b582fc80f7a0481a0adf8964cce30db2c4071ec84d3beb4448b84ecf361ad7ba4b53b030c584e39a62d5e1392eb9da0231009fe1c024ad02b465b29e718a0e67ef11e4714a7bdd3a435a86483c875b4a6677a3d5a4fd62122125c9f9ac58ac3619a40302047c435bb500673065023052be2282a9d9d0aa5abb143d9f54ac44f687f19c2c973f848e34afccc8131c7870c97f6f380fee863545614568a72e5e023100b1a508497bd2b83bd500f6e48f3471c64237a40a508753325281890dcbc620168eb57a54170ba3a72cc1b576ab6a60260302047c435bb50066306402306010915e5f7e3f7870399614aa28e265905f9b2a8f8d2ab3c40f354c8149aeed419201f7644844fc955ea9684b94dfa00230503b866e15164fb30a25eab751920c864b7884b2c2471947163ddab32f1795aa8dd59f93eeddabacdf37daee5219e8c40302047c435bb50066306402302a53358abca9f07e8c45a49beb82bd9d8250613cf541caf71ec4e4a34f8fbe607c2ed72eeeadf91f2d70b98a750c2d500230476f64dac12f7506b14abdadc7b09a17d05decb8d20fd2abae3167c04da2b17dde5c9e355cdd433b3b47234595bb4dcb0302047c435bb500683066023100c539fa37818265c9719de41f033d4c3d4996c23abd832343230005172b3552dbd49e4c8374e23bd31d8894d864049736023100b8b65ef8a6cda73e294be6e36e280f5dbcdd83756d7c5ffce12813b577744fd58f38b0202e7b6abf49d2da0ae394d19f0302047c435bb50066306402307bda3921d5f35d902695c5411c68a5b45145097775a116911d5b4462e2cdacf718f259ee332ab9da20aa9ee6cfcfd5b9023060e953af634dc4dc7f94dd7c471a2bff05733160e723a3ac388ed6a32fe7bcbcb26d865fcc318abcb564e40597bfa2380302047c435bb500673065023100cbddcc9df8f91a4c542d3638989494dc80ffe167870d068884eef0a143ae4b9cfd0699b800552bebcab8d08b53270af602303feecdb046a7ebd9b72f9cdff61c8ac39c39658393565d2f98dc16450c9298d7102b06c4f23132897c833115bf0f1e7f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b8494d7504e463f89b0dc2a7658cd095b4925e5f805f3a9da41076d6a93ce8edce191c5e183a0600fe4d2ff68b91394302303c5b9789e5200b853e35c0ceaafab934c978bbbb935863118c238aebb26de0f454fdcba3461e69e710b1ee3827717a640302047c435bb50066306402300ee320bdb441575213220cef972e19d829ac41b1d048ee92bed65a2928eb4e402ff615d740c1d14b3792309977d7ec0302306f6b206c866d6772b072f7163bd41ca8228b1778ab63d050a1e818e24d48e8cc859a01475c3d4616eeaf42828c64a1c00302047c435bb500673065023100f8ce90d678e1a7a60b60b3ac67e5a2a98c8b87a2d64e0142767365c3dfb34d537f14e9b2bea95730653d13463b612fca02306058431c722e0d60cf1dc6a8f63c413114deb5021f65dcfadb7012d878de3c0324765aa8268f7f2bc0d74c06d5fd6e8d0302047c435bb50067306502310093c7cdd6317783ac4cde5901074f48ec087f791c271ca651f60a7b7102bcb6b96c471a0dd3182e6fb60b67b56daff91702307851f60ac1c4fe8ffcd81c258f23c465e30e4889d17e2c00b14cb2f35d61a2862dae63ed65068331e137181f1ec9636a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306745041d724cbfbbc8179f43dc3ca863f386c65cb136070c8beb2ad659f186aa3e3e7912bd76c01d193204fda6921f73023042236f1740a0465c460a45d8914dac420d2be025b6a600c8414f56a8dbb6f6465118d2c008c6fb9d3f405403544dec120302047c435bb500683066023100856d733cfe81b0bf85f95158e78f4f900d0e8616e10eeeca3493feadba9309d5b474862016558daf3672cb99d18b607802310082e3ec04850c1a6941757614d361648abc58a69aadf7003d1eb38a92e4f790693c6129fc3b92b82303689985d875c2400302047c435bb500663064023019c25e5cf0794fa0d5ec112930db6869231f55f1bdec7cadb257c32c5b0c02fe8ac61cb6c94327a21f0ccd9798031b0d023067a659cc7c8243dfc08b73c5a3633bcde19d463aff167cd87646b85dec10697c74a936aa0fcaed11aea4fb70149133300302047c435bb500673065023061dfb10f2629c4b0138644c0dbcc0a9ae9d1d1be0c26d3093f55802399e5d5794d4a6f1db28b27f668008901e49b8040023100f9b7816361ccf501ce52484429b695766d652d0ef2915dd822dc21cd58d96610b5264a45570a39cd09547bbde8555e460302047c435bb500673065023100b8fcc2708a778c66451dba2967228b0943508231d1078f2cba8b3609dd53cae2a62638341969e1c5419243755c41fe4b02304997a2d4f5784e0ea7742da14b51165b3dd52bc879e75cb07c8478030930b495cc2a1408185a8ed92e8c70f3edf172ec0302047c435bb50066306402307957d993686e2001c734075e4c7dc074168af84dc0ec941f23ec3bebdeb4f810002164ca99be3bea091a25809c1cbbac02300b00b7963d1778264db8dce0a6b5081d44fe84d2f45b8b7def72caaa07195166aaec455c89850e6068156906f7bb1bdd0302047c435bb5006730650231008cbf558c7f4d800e0ea3eddc03af84d3d8b992c9adc2487fc9a4c88397d36599d19ebc0b9c0d922945693a231c907fad02302665252ef2a9a74100c9b5153f0da349e1e8d1abf645486afe766208b95f537b62470ef11c82400adac6e39ba354c5090302047c435bb50067306502310083cddcb7fa2ba4e4df9f9a8f324f01810532558e36b18653636784a26f13f8a82f2e5ac4b1a90f9fe23dacd7d3324c13023041affcf439b4803b93b2a14c6e56f03896b11b14f1993fc792540788d85c0696b0758a54be374faeeaf00b46242d19120302047c435bb500673065023100eede68a355b6a85d720ed6b746304c4232da7c9b985732469d4a6587b23bcaaf60c9dce6439626f0c10c01c06f5b4206023070db7279ea9f82233d8e6fe36d8333ca44f7431c1d8206a2504db94f2741beb15f0176cf9f74df10b70fec4369990a300302047c435bb500673065023100a9a28b5e343091a36bef999139682f7ca631298df2797b8b906ec1094799fda67ddc41b1b84bddadb6dec8ea51c530b00230110cef8102e443b59fe818a309f1afe72e6ad107896aa1c7da5437f717ab2df20df23c369172a3bcf54526765351b7b50302047c435bb500663064023071f367b5ad55a8ab19b6873111236fe7262cf9e002dc6e8b28925885e5c485ab0f9aa2a2854b43c7de59d2fc3b1ba24a02302a9491fdc140404cf358749a6b77225e013a366c20975ca8d6d1f7e3734dc43c0ebc4ca585f1e50113a354087372871e0302047c435bb500663064023055353f8680d426a68261f08c7ec5f0a57a5ee00ef350a9a4e7124d1499ed0eac9118a11fc7912a2c47b8508d746cf37e0230344209a8c2c0f6bed7973d687d5f6a1ae9c34f7de6a3115474268c0d119a6f372b29d7664abd0947b6fa658517afac040302047c435bb500673065023100ef923b55a576e921846f9632f806d3c977702ddf42aad7d4ce25e69f68f644f2bcca69965034f9037bc0838fedabd7450230049347dd7b002aa6dfdc039ae438fbabed0b4d948e0d9ebad81ab75d53548e9cdea8c4e57904004250dfb7606d8a2c790302047c435bb500673065023100a2f02c14f2caf858bbdd647c22e9f7fea4ae9aca7c82c0678f8433cfda41ed7f3e87f249d73ba484bdb2356ac47bcc8c02307324e03866a07b0d4f8dbafc43ab7c7b1c1c79f23f5db3c34ca075f44f78080bb6142330cf42a63573a53987f4e3acd20302047c435bb500683066023100cb78956ab2c98e3e69ebe6adc5748a6b4d518e99393697423fc28b46803edaa9766930ba4433d0ac65c0690c460ac1bc023100dd5c9c365603683c3ce6384a97ed11b9e3cba8fe101869de3437d02d42fd29201086adfe6569da652d4a59c6ea949e230302047c435bb50066306402306541af25f1663faf9ed1dff3c15a1a55f2010749651fcf191f725e29faab819c9a8e04740c1f95db5de34b2ccc12744c0230604cf77d906381d6e50cb1f39588894e720bf01642a60926c2e942310bac527393e9a473b6bb5aa655a999dae0df26d10302047c435bb500683066023100ef822484161a93a84f5421d2b1e250ec2f735d83775ff9982147c60b7ae4471d639018933406bae0833e10e5067f1e78023100b441dfbfce873e6c927b0c5d3c07d25f19977b6bb6b181ff520fa187e4dc0fe1338fa021280429a5b8876de1e0ba979b0302047c435bb5006630640230446aaf7576e3152808403fe0ff7ddbbe5bdeb05d9ef73e1359ba14ed53f89f6b8d4292eb60a36922d373086b9180fc250230737155c1d08feeb70bedab66427d92e9ad24238a76075493ceac038a5ce1c13ab739a54c71b2778d959d71c8e9ca7ac80302047c435bb50066306402305205e36590f8a496c1fdfbc839e7c03e48d08d83375a1acef0c87c104c1781588778b82d4e2c4a671f5f2fe244c066ea02306c69f1c46b8530be5dfa60c0c1942f95ecc8830e57998c430f953e32875619b38c5a2e3895bdc0cec64ece2d145a53e20302047c435bb50067306502304377488d71606e42535183bf88fdb6b49b4265a3db2c853b07af7c6337caec2be22413a114c05ca6f0d8d264dd8b1956023100c5a64a3d26129c59512e5a717291af98315aebcf94468ab037f8dda7f340d3b67bae324516cb5417d337ed45e19e27030302047c435bb500683066023100d96903e6a692dd5b0401df288cfb02f7ad33a3ae80de970d9eb29beb5f5862c565d856551332a99d1c1c65315f72f0f2023100e301eaf6cfa8e4464be43f2edf6047dda23fc4c0523572d9a4256f420d0c4cecb1dc45507aab5ade7781b3b3d205d8010302047c435bb500673065023100a9d89317b7dd4821ea099babf6f711da5dd90b5ff1b14ec3e594c246bda4b5b3afe85120a208b4ee27b7de0bb21da15202300bba9a851f459da8a5d772208bfddc0939c7b0bfdfe17e3c1a7f2e8f211769068ac9ad2290fb700c6df65586ba2da8850302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008c0f3e87af60868d67680568e984f7b90fad26fc2c9a1cfbd5a108b12924ab2102801f47ea5bb9cd1e87a8b440904f3e023100b757488a0c80b411253112d9bd8fec99198a6591da2a04e192a603d64be4693459263511001f4082d77816df502a6e0c0302047c435bb500683066023100ee7352e6014d19df423d55eb7e55dbe509c9ce4bc53cdd512687fcbfc9e385daf985db09e49d406d353c1c7c1b202e3a023100ffbc527f20268a121590b344d6d9135398cb00b91c027b0971b855d61acca7f16548155bf2b934d5f636bfd646f871920302047c435bb500673065023100c0ffb9828b9afba0f72966046f26bbcb1698d10cc57da801dde37eac48077d0a5eac7fc0d105fc01dde3091fa34511e402304b0ed4b885c8e7fb20b45a1b0e4174194b73e8d4aaa1cc0be0733d1f4924fcdbc0f4ed249bdac6ed9f32e26190a1491c0302047c435bb50067306502307007f9f967622634bf3e93919963ed48bccf3c6f7b17faed738a18a359b419d8b34e9ea766a32ab02c38ec48920fae5c023100abc7418146b7b84ed6d6e0a4c0cb80c9cc38421b69f51cecf11c0346dbd09ec001c9afe22b260f222c054a105beab9470302047c435bb500683066023100ff44fe346ff6b4beb647cf8e77d9ad0f965a6129eeaf90e0ac4149a9df82979cae0419d4f5080587f132facc6a086588023100d7415049c85ad08f7a7008c92d4e246b443ef3947558ba78942eedc96078d47f5845a09729a07f68548d5c70c90bf35e0302047c435bb50066306402303c76ec8c6424a6735f61b88c50f7106fe09ac800b76e6c2cd406fe2da93368760060a6410f6e8d31596b7bbb833bd9220230590f617ab65c6d1e6f48c0dccf7a7933e7742142f2609e17420e14326ed216dabe74f212d982f4a2f6a77c8473d0563e0302047c435bb500683066023100d4ab08f27bf8d5564a1bd60ed426513f805cfcad20d8bfac677fb580f2a3988789aac7e9a227d2482faa97183c0284f8023100cca3c74e91766b4a23a2ef4a994a1be1da7f7a9478038b2bd19fed41ef6357e6bd88878c2ae357be007146a2764647ea0302047c435bb50067306502300838ca879c2635cc93ae6bd54e92f70591608e3298c771d406e555b4f9ba0281da1f33c57344b062c7c4b21b95b1882202310080a1f268b976ab2eab1fd67b7de9d4d8b6d22b75eb4d013b1bd25675c4c0cc4ec5c3152b6e627697de26ec82bf225cc30302047c435bb50066306402304bbed2629f938fad8dc9a50071f448b4ebeecdf585914344eb4d330154a6f20ab83845261a08a009e6994c0a1293a96f023030565f5f190d220f2fe898c6e636050c9d0a3d79088200ec66f11d6b82f6191bc325a5f622f99ba36c037a79750dff080302047c435bb500673065023100e2a25a987673c40ba2e876b6b22ac28f271674079f60ef815139fbc9df9e67b9673a511caa045c3fcf70787b8b5fc7710230495097b147190135a1408e7ba39897f89e4b6f33bb970537fab1a6c61ea9fb397be472eac58eb9283a8c47ed9ff63df60302047c435bb500673065023100f5f08d9d3b6aac8bf531f5bb96513ba0ea70742b3311706b73234cf242bfbbed68afb4b4cae65081017ccd47707ac9b90230570497e71b3a01c8dcf7bc88bbb2d3a6cff29b85d2f535e62a6dba1d88ab80804773f7a8f04d502986c5b965ddeddac10302047c435bb500673065023100ca5042864211ce6427c3e000fd8557be6aac5d081aacdf9acc9e7cf1bd62a5458fb88c3b3cbdfa11f334bcb03e985ae002306b093aaa7b5bbd602446f1a9345398eed7a981d775c1366ee3c9645784e14d8ed3e65263b9357fe951df8b2d3a298d010302047c435bb50066306402303cfc59f9ed3a571f2f514ab1edbc4c434cdedbe605df188fc75db0e068b55440f31a45dae2ec28eff747aebf671b160e02306c6c26e87d5daf71ce3f42d9346e03f80bf4decf5a5bdcb2b037b34856cea273df07cac419f291e782f03f315a45024b0302047c435bb50068306602310092ee32890e37ec7d8c80b5d3c8f8670345b91666b50586cc4f3e3ee40939251933096cae3c7cfa757713b689d2ab17b0023100c6f976661d10de08085a6aec0c0f5da533ea477b32f1639499662cdb0c229323db6400f911390eafa2745af735c503760302047c435bb5006630640230691bae213a8554d53b9956ab82b5976932d3ece8a5ac107ee48bbfea12b0feec8d780585e183eca1b3b251e942f6e67a023040d64cf13d2c7443ccdc6008f672f98b8057e583c5c5866f0c58a528e50d83bc79566753b79e088d85dfd34c9177a7b70302047c435bb5006730650230133df175d0435a5cac6afab75d8c0a2aa121043216cd292ff679b12131461f7814fbbb6ef468067686a5a6d0279e2640023100ed8ad39adaa1d343796bd90b79ae48f179eb9c90896a2ae71d9a54fc755d968f4e3cbe6040d002335fecd85649e9520f0302047c435bb500673065023100e504db4ceb1fbe441be3aa233b8fc19a3b8bfb7548252b96a6cd5b76e8a8c4440004ebf866cb3539dd637c81940c92b402303ce6ad9cb756e3395556b0a487f7024cb04d6990275f54adcc062a7689b30a133330dc4f3aa1499887d4988f16286ecc0302047c435bb500663064023048a65f58fba3a4f89dd5ba1bf00bc31c6135de1bcdc5d6c0bdbf69e0d555c91f720f747a24ab9b41c27d06d2f92d2d470230325d8b1cc355b1fe1926910763599e8238a93a18b80dc5e492dced776d6da4c4512dc4aa3646b6df8aef82ffcd4677530302047c435bb5006630640230278dc23d84fe98f7a1102c061f0ee695de136737398c6ba929bc17d378a397362a1cc114982a4dee850dc4e0e4311e8e02301973e5a76d5d87260cd45de2b8d5a3ddedfe9b8d3ed650f2477c917bd0512db26ecf37380c5f2390c728b46b8aa673bb0302047c435bb500673065023100913fb9032d827d0ea1cfa4ef94f704d756fc35e75df940813da524e1235fab2bd2df77d306980524073a14e41af1672e023039f89b46993088518d020e540cab2525997d10eb3c790712edccce76a3c5b44cddb2353359e1cd7206036c1a706af9e20302047c435bb5006730650230161385469e59956499737b1eecef2192f26a908c71a31773c1dc39bb4220a71b58c4632543764451d02ed074fd19be8d023100fc3ea69fd7711122bbfe14c1f63cfef2124acbefac067ecb3ed1820141789150c10f0bf54bdba70e4f696557ab3aadec0302047c435bb50067306502307dce8d54b7a1dcc3a746dec03d0069b4527b4143ba6f962aa41f871c11a62f49d7ac28bb0d629dfa7f1fdc46ab18dba8023100d7b2125f3eac298be085d5e0a3e5e0d1497a60fd9fb5cbdf8b9918a60898f2bb65cec86997a383121872c9e8c2e944e30302047c435bb50066306402302df59d1abec3db029305012fcf0a4508861de9b0f16910cdc616ce99a0886a5d2d30f919e19afe3e8a9b3c94acc31c9102305c97f67d0a92844b5ae2a9e390981abe8b5ce17c2b4be3b05eb5a8fcbb3695a52a0c018b1b9d45ff13131a7a03f0fcdb0302047c435bb5006730650230522f25478a14502c3daa4e417f4b9a065cda994b6c7b68ad8a83825a15158fe54f3fc202efe3a2c33268752cd1e511ff023100b4f37c0a232be088261b7794edacd36cbeaf40049e5d5c3d8d282bf5c849264750940e4e4f545198ecae26fc485e67510302047c435bb50067306502300f746d070005883f2831a05dbedabce6365bcfef74d6fe6e26964355c88dbe628b4b48a82abdfe6cd177cceac44094a0023100aeb1769e16823a78c4fd7ef76bb4fa0e5606e3d46b3e96521d5e14f10732e5c855a25353bab82a538e41b9453591488b0302047c435bb50067306502303d5b4a901154606e27134228a43a12238f554294b66807adb3446f2273dcd8e4eeb9890cd1f0b9fc81ff28cf6c75c5630231009539ec32c3a198b5572d6900d0edb4c2ec751138b530c571c8776dd4634112178b71f9f75c47ffcc53ffeca1f570bfba0302047c435bb500683066023100c1ee24533b47fbcb3da6d59401c4055917d26fa2efedb38db2d7c0c48741cc02b5634c0b9641304254cc3f411370463b023100e868e03f675659be0b97d3af298628971065367f4389b6eae2c489774b6f5849f145aa46d48f81ed3d56495b8fab807b0302047c435bb500673065023100c241c449215498e3acf6e093a704ddaf04b3bf8600a0b939c832acac728e520ff75a7d0194da94199b652f6194fa954f02307782d806c02f5bcd24a3f7a964eb7303294828118654cece3313f6db40df6f5804163c267834ef89cb640af2375f6f5e0302047c435bb500673065023073091c7c370efb2a174a085b9457a2a3d79c6c601ad4dc2f03f484d5fa8593f793ff6108afb539ee483f19b200e08f570231009183a03ab002a15d29ab6e528bd0b6c16c7d5bb26e1dad3b27188dee45b84c9410303507e902970b6dddacb80d451d650302047c435bb50066306402307e7d9c18bd24bda831a167e9e28b65df192d2f54ce7b92d4b8384c00fe5903e6bdcf2934b8fcc99c9231fd2bd7f3f19102302d6d858f7a23358db163c1ef50dfcd8621d05ef740bd3a27f98db134ce38996f6907630d1865f739dd216e14a68ce66d0302047c435bb50066306402306dc4623173194fbd7738ff390d6fe773869386440fef0e2208a24cae5b76e536c0cc016216bf6e2c5f87371f96c212c502307c91b8e695d5543af197762ccbf2f8259284de0d5658be06d97676d2200d99ab053cc9e48e53087f6e214049879998dd0302047c435bb500673065023100b5097e7a3fe870f58e07f0e74a3ff9a3f82f0e1500569788bc7a8db3b94e2d82885453cde5816c4da82124c4451df25a02300860d7048b39fe1ab773921f910de5c45ab3c146cbf9d8da96bdac11d2cebcadaceb1a0857c461f791259ed4f8d89e2b0302047c435bb5006730650230469a63272b0454c1b2b916fafd4087ca4bfffa523e25f099cf1929af571569d2124afd0db0df64fb9fe0539d55e6a52c023100ae4a4609d77ac2939d0c4c8ec281745f2d006ee2120b74a698c9ab15b48115a0936eb33273fb5337af400244d16cd2320302047c435bb500683066023100efd1c20a2e686fcc9df117a10ab001eb8c0b525e571b06ed3b39f79080187472234392f19aa260546a1ae192574d14de023100b91ce8d1f2abe8ffb7d5bb29d5cb9ce782e29efced08af8b933b8a8772466cd415e2ecb9cb26a3c77ea2d060d37fe68c0302047c435bb5006730650230260b09323ee0ef2d8cc09b22b637c9616385a047b0df62ab310a76d282daa72aed627c0ca2a34bee44e926bf8caaa41b023100b3e57bd395e7621354d28fd4ed58b8cfc4bd4484812320bd6608227914dbd8a46df1b6941be57f8678bf476ebf9686ee0302047c435bb500673065023100c717062d85b4e65ca0f649a1bfaec47afdb363eca8513416ba587f5cf2309398965cde4ea5495193ef47343a6f9375650230411a934845bced4a09741d29b7c4dfb3819118fa44f63131b744e34986ec162b28464bd54a1980cf9be1c00e61c42a020302047c435bb50067306502302a200a316f4e0b74f40e799f4ea5a3bbaa49d36d46e44671ee0e233159cc98e0aa822b18fe153b0e0b496410c4fbc88c023100eba5ef302ace15649ae9cfce670d2df44433fcd9bc0476c64814d879c2244ea089f50e952079824ac566d1621965cdf40302047c435bb500673065023100e5c20b3e7abb95347e17b059e3cfd76934429b58f216de2f5188a2589be24e8dca0b77a5e98e53adaed74faf1e7e4dda02300a9fe48a06e83e12e59248bf615de9a0605a4d111bd3e8c4ed0218bd13709bb56fd7eb3d51dfd8dd1341baefdd69dacb0302047c435bb500673065023100c60aab21b786668e743782326653bf28ee239a852af4eca449854c0624eeb66f32b30bc84b3190fc5e46302bc72b04cb023055e2467653d2a325f0bbaed477e585666f8af18c6e2f3391996c4ea2413e5d5bdecca191ac58c5380534f14093aa53080302047c435bb500673065023100995a6bb5e9b4d9231a10347470a69321a15e1de55c0f19b8be158ec273df87379fb3a57b421a088fdd22e486ef9206c2023029c700ece0c5baf1b82ddc2843cae1edccd7eed3f40f0b943b8fae4aa766b24dc346557e1bbee9a271c34a000ce7389a0302047c435bb500673065023100e525cb2809e4eb913d74367a479d92b5ce21342437b894d9b9282d2ff43b43a381bb325c42472f81bcd10e7ce316ea0602303803d66e3c1f620314c70ca112b57f8da0dd1ef1b88b250b37c3fab86421a3c00ca7664532ba272551f2f88d9931490d0302047c435bb500673065023100e53ebf29b15653aebf86a9f1d5b330c3ac97af21b0a5c8b31753d09c430c586ab66d8d2263cddc2aaf3a76730c89d9d402307589024e8009b5653a97052304f51d74aaae07fac8efc675365ec545b113b682810938a395bfd2d44576cdf96f7ea5630302047c435bb500673065023100e3d6cba5dc2ca7c72018ab6392e089bb541552854c1e705ef5911f0cf6a3b13ffb69d367125bc6430efb0b0780e4299802303cdd2247d58a341d292fa8a46c7037e98d10be414ac939b19dc14f92bb5ff3a10a384f920706c3e219451cbf5192b22d0302047c435bb50066306402301096493b277efcd4be4e9d0ceec5b63763fab95772f2ec09ec03abba501d43be77cb3929f834d1b2132c9d4da1f3958f0230682a1e1eeb0a1235a36a5a109e95a075212a62c352f159f2c3eb29464388a8b2590ec9c291ac92fe83567e4613b478f00302047c435bb50067306502305953fcda2fb2c0cbe824fe7bad5088b968d83417e3aefed57ca36c4a4e54c7811c7cf7c9d16945a11d604793ecee029b023100eb5ef7416c5ebefe69af36dae09edb37c9f1bb9f065db1febac68803988532527f34b1d71aded663e897163d3921b9980302047c435bb5006630640230525a3b395ed11213a4eb6b1a6a8d8065dcb45f04f65e5181d4b24ff20a52545842d5e78f501dd4c9959db57ba0760cc6023012af6eff548ca1f9e308bddf6ff7d2ddd0ca8324de27555d5d4b6d4809f23edef403a85a7ebbea6763fd0f864f4634310302047c435bb500673065023043c0b8ec3fa7e84e2071be15b7bf0cffb147dde85f420746075589ba753f2d04378d102931205c9f8f1cb3cabf881f7c023100a09026bf5eacd3d4ff161bb172234c989e2b8d8a2b538c003840b4d78bd7bfcb16706136f3848af03f91857ab9d68da70302047c435bb500673065023100840005ca0b50ff577726e067feeaff07c1431f6f681262b917557505a40f6dcfd4249a1498b92724bb1934c0b650e19d02305e61099589b51f2a0c35bd4f597e1b0f260967c6c4fbf13ec2b65e866259681124aa63ee5800c8da2b54f6c20852c35d0302047c435bb5006730650231008b842291ef923992ef5f9ad39b7369ac56de0e72e808248133fb5ae563c1279cd5967d796df742de1db799b5b5dd876e0230057d7af8a83219da0ce32c2e6b8b3c20febb333456c3a2f813ff01692981c37a758fe8b8f304f3429d54f6acc8de5e570302047c435bb500673065023100f600856909148b422251e8b1de5bfc442ba34e24e74a33b0e8fac0b0a8f0bd901c6de3061567b0ffa3e5ed42cc3a77350230269cdfcbd94e0128721604b2db32b3fe38e4195a4c2c4ebdba6197eb652d3dd78befdb51910b8e11aa8442cb65a61c590302047c435bb50066306402305e127cc72914de78623182302d0268d68d957da467a33501040c8d102be5789c25d67ad1ddf45943ec9bf515d119ac4a02307295f0097db87d8680ff3a1b12dfbba9d61ee56a7b13ea144678e3c11717c9329fa231716824f8085eefe259e1b10da80302047c435bb500673065023100cd3fe5d3b1f155df1b78e91f8a3f440e40890b96b5023028919e7748986024c60e27f9b04284b7440c7442ae59e104390230212b9b2180a6ae6c0523147165fb4b607c888e43f868b61d6ac2a6c033c949920aca4f47f9681c3c369cbdc0ded60c500302047c435bb500683066023100e6518331c6fbe4ff55f2be130dc9f9f858535918beeca831462630bfa4367a098ae24842c37420348be00415592d0e3d023100f784522cf4b39129f020b7ee1ed0f8562b18e93fb419a9750a25dcbedf044174d8c762374ad961d38ec88f680584afb90302047c435bb500673065023100a6d822478e511cf490eb75a45315f4a41105c38f0a67bbf19246b2d656c3ed6b11b2d079b1ebc6b554d93bd8bd499cb60230555de0e9fd73e27e9bb83a2785e782ed3861776d03de7bf88a627481b2ff3ec8985df137d27e2c28e31af27a805ca3560302047c435bb5006730650231008197fab48426bc15ac30b2658cb7bd2029ef3399f96888a5075e7a5d1d18f8b5799dd4be185bcf9848f5a2f9bcbc979a023073a9a34036bdd8146829cdce53ee7180f4845d7d9aa538533f3baf1c712950fc8dc094fa1685929261966119734fc30c0302047c435bb500673065023100ffe8a879ccaa11568e55e60a7bc4c9cd2cdf0f37cc50bc37b0cd0ee54d889490ee937d499a39d543b380fae7696843f00230105f1afa51d9669bc71215a039f03089a2f5223163f3cf33d49f00981410e1ce0e2cd11d89595601059272c32a7674160302047c435bb500673065023054734cf1f735c006b7b967ad0af43857db95d0a44eb886f6e59f7c236f41f7cb461e1caed4b84ee0c9cddd0486bf69be023100a62c3d45c993668790d660629156dc8f5226db3769fa85ebb4a0670f0aff775abfe35eb9e088725499f0709a2f286a160302047c435bb500673065023061039c868f9fad36dbf0c4126fa71e65eb140a7fbb3a97247c5a17bb62353c78aa4470554662a831c5f2cee3443f8aa60231008451db596088fb396835ee66c9c491d40350d15ad395397ddb6b6bf95dcceaef27050b9dd2c12ec4c8d5441264bcff4c0302047c435bb5006730650231008d2835449e0a53c855cedc4a9e2b5961cb24a15007f4dbd04ee4fade0e2d68c0745ba8a79eae5f861cd1d24100e0edd102306d8198b5a8fcebdbda17d0246c83154c0637156ebd837cdce211d20a1dac2b51ad09d8c9ef1bd510d788e505f1a7cad30302047c435bb50067306502307f451bd2ea70b075d03157cec9911ecd9f13e3a74afdad83c37031b76cccb84919ec8628cd7b7f7c48b36aa9b7147c07023100ed366a551c9160127a13b672517175cee680e3b64f0449d74bbb4990674e3184e35023374619fe627656f8823931d0e40302047c435bb5006730650231008941b28f976c33953a3e454ba2a5212936b7f4c05d07556d5c1e17c875e01c87ede64a32100e0044c237a669d57d417b02306ded0cd1e56209b587dedf642e3540038570cbef6d491faf4368852237749d4e51c0eafe3b27b514eb8d7c99f54451ff0302047c435bb50067306502307eeff2eb0286258677e489f9ca3ef25558b828cf993e5caaac9b6b862f3c911c06db2645dd7e688a5a0ba36e8d899efa023100a10895fd1647d4d2a9eb413d04b4256bbeedb1a47cec28b1846cc50d78fed912fd52e95144204a796ce0f6e2d0728dd00302047c435bb500673065023100801c6842abb73a7e840116922b64901b25621d26946f5ce2c04b1cd8fcaa7ff1827fbe2e3a930c81f782ff29f1f5f164023058e1fca88e00a577ff99e974ba2b2cb925cb5c75e9469e06aebd64eba24561740f6a595b18457e4156878a7f3da1711a0302047c435bb500683066023100f0be2a517928e1d9ea8059b2e96757eb9b166fb42ff93acb2bb871e365a81b84683b50ab6d9470314c3a5cd01d7e40dc02310089b6486e59ee50455df6fa7c385a13d851f18a502339625718a2dd6699afd02458fda5ea0ebf8c0116b7a712a13520a60302047c435bb50067306502310080e237738d20ce449db509fe66d7ea6a70b9e8aaf02686938848281d3a1510dfcc8cac5753382d7dd67d707566412dec02304901a68c568baecc708db81cc725a005876737a25f59ab04733a88151b803852b4433e98ba1fbd790111ed8884e7e8d60302047c435bb500673065023100bd618769ba705b413b7ad7657995808ff0d73dd353ae1c634f2aba0b5a523503ad1a7c862ceafbb82b410781dd257bc402306dbef4b55f4aafe53863d64404d166e210cc128b3feb2d69ef2f12b1ffb99fe79160b6032d1cce6fb31067bb621e3c650302047c435bb50066306402304d565d616b4b20adb4666215c34fb96edfff4f827e20fb06677910a2871948886bf0e30524fab047bbc05d911a62bafa02303b337f49e58ee3809243ecc8c3ea9e6947b4780c310ec4c6581163f2dc7c5981dc268c4a6af55fc9773b5f8eaf617e950302047c435bb500673065023100cf7071f558ea15b2b456a204a3603d65b6ce2a4fb608c4dcbba7f4e37e86169729cfcc630c6acca262b6e80c6f370e0b0230307a820c09f46b963b27804cf8b8b2f2d3584d060c687f177795fcb7d2e9cf9e8b430db99fea50f8723d8138277c6e380302047c435bb5006730650231008234d708253a25e2039cef8a4e0ca3733ee0b0c14b414c70405a9eeab3c9d87d2433d7f28c1d70e9e086a02c919fe6c102305a55885b2d79ac65e06e79db7472d3f8e3930654a13a88f82a427fec5cffa42edf84114fab5493da95ade60fa3a4728a0302047c435bb50067306502310097b40f45472746aa6cfa2f60ad036b46490357889609edaaa5fac3b7f22ae08e0cf91d14e9e2f4fd1a3556c964693ce602301b16b9a7576d9e2ef8828598ad99e48c8a77e438231fb5308af790c332eb342e69eee2a77c2a5621dc827a398bc8ecc00302047c435bb50066306402307a984297856f61bd660cb6b3d0720324ae34e5580f0ad6b17cdeaf5770da28b92c448b1bbcac7f37febc1c4c6f1afaac0230159406d7fa3a11657290fab99fc8c02fe6509bd87c3140beee24103c265e0e45a9d2f478c44f508f78335dbbf61ebbd80302047c435bb50066306402306d6b1cc2fad39d4b75d0bf94a29daedd08f214b661b96504f674f8630a329ff2e8ec0eda8c577fce86a003959c3e9d6c023064036f7b7ecc59661417d09731a7b66b06d34c12d9643e39753acf27ac5063f03f9540165f2ae9668fe723ac9257a5d00302047c435bb500683066023100bbbd261c5c10e9d197158b9b577319e9602ef9154e78b4a2bc6a6ce5eb946862ddbdad88042826423ee39e020d8ad089023100ae600efb9ec3a824d691319811d5868da64ca503a67ba89d9183afc87fbfec2b53ad574a3df8e138e3f42459743aa7f80302047c435bb500663064023056470d610b24625a316259c00796bb9ba7fe660869d29a9f0df2b86aaa3852af614d30cfa215feefc5534c7dc504e338023060356754476d1b0b6cad8b508083cfa546df932f8c1e74b582ad6908675802c75cb6ccfb066f45353e331e1b0263077d0302047c435bb500663064023077953108a85c503c3bd31f7f91c07ba1d44777545a29f715f05055f8309870afef09955bdb672c908eec8878194eae240230323347289ea2d1aac1604a58e290b95d9e66c0b83374fc694e35578cc1a4d35be68ae71995f0802ef293bbb5ea5618e10302047c435bb500683066023100f7151aee9589fb3b03b24805d2496cd3738b170856de0377208c531f4f22802694407fee860a030e8efdba6e1fd4881f02310099e8b8000b03252f5ee01ee18e5ff5280c31d936f4c73ad066792e760935495c2f97a39641ad34ff2ff09d9d3e438dbf0302047c435bb50068306602310084f8624e9b91e15daecd1f64ad8aaa52d2aa045cbf9d2174aa02d7cfb9e8275acd49032bea1709b374f2688eda88af76023100b156b3aaeaaf16c30bb873b7d6f742badb9623b08b95854ab3ae04e5c0cafa0e5e270049499cccbf80ffe5e225b0ddd50302047c435bb5006730650230381e55557d83883a633aa55a235c30964b88f57d1d05c3e0826a6c1a2e311ee50ec458e8d6d676a6b139a6d9b2deae11023100afa611a62ecf1ae09bf22b657341a54ece45c23652a4cf275c0ad31cb8097c60da644e5672b059351ff8cf5944c175050302047c435bb500683066023100d4b13ba02d73420ee4bd70cf351ea83cf6b57cc1d196062a19f3385a6ff689a313351fb84867869566541ebfe2bd43d80231008c2ad7eb73ecae32a1489cdc3d91530bfa27abe556b519b2dedfe9bf99cd3471d7053b54c4569fe031a3c9b2eee27e8c0302047c435bb500683066023100b7ccd0eebdd2a47571609720648e0175fcc0d159a014c31bafde97c1224b85636d51b32bc982c433acbba640577878810231008c6f6310b1b00a76bb93fb4aed7dbdfce656e1bcc06dd8e62a853864c63ce264d28451000fc8b0c9d6dbcde5d568e26e0302047c435bb500673065023100cb091fd293db67040552a8e6da22107ab4df4cd21734fc767b24487f0d59bd1d348d287de33b53e907ab5729c46623aa02304a23328155d555088d296855565b2f42e2a7dc6ab7e7c41c509fc02c2e6129ed658570c081463b8237859c92a983066a0302047c435bb50066306402300df279003e5413614864c2260fd4661ff1608ed98827d8b8bfee5cb8c19dd5f2fdf24a34ee9b2c71a465fa15dbe272a602303cb708fe6505cfce64fbe52243cc38944f4a02133eb91c3c6ff0ea0d50098b1c1eb6b229eb62342559d22ee0138342350302047c435bb500683066023100a4b7fdc1db685bf4511c1063f807565ac24e4bf0fccfb5c2451961118c5fd9f6406b29ab1d808a78ebf47f93988a6d7c023100abc1c67514af00356ccf8f0f7dd3ad601788e48669b22c5e250b77224d0e2781311bec0a572fc52e879a864f0c29e24b0302047c435bb500673065023100c5ec0286df3b7c7e471369911fe67dbfdf05fe76979595a2c03fcc61e3e0f968e08596c9ce7196f2f3447f3ce49c9040023011f56d3fa5a75e7fa0d1f937494e7961c8449cb96a4070eadd7abb8f5f8bf910ff95e4508ac0b7afac62dab97ec1cee20302047c435bb50067306502304b1a1c5769c3532c4d34177fa355321e4e21d71a5e5c32ad8759d03a5b0c6721cb294a7bf42dbeca8159cf8caa3f277e023100db77ba03685369f35ba3b048af24a5023502cbcdd435087a0e75a7b7a6647d9c630a27497135a17080536e3dc44d485c0302047c435bb50067306502303991c3062ce2d926a10354c38e346660cbfe71f80468e7d59e16d06b52aaf4ac3ea47efcc4cbf883d46765e79487b60b023100f1f4dc59a34bf2aabfd56a4918df3e90838f63340b7e0db9b23039b4fc198b6e31528ec1a5df9e01324363747bcc14420302047c435bb500673065023009d68927c2c0544573e432d7ac23ab7f878ca84f71207f82e1bca79b1243ddb1de0f0d68edef50e42e77100f792bc2f60231008ce6d53fbb817a8429d7c5185225a7dac3df7b66118a9b409a500eb7cb4475138eed0781cd3789f861acb7fd1a0762ad0302047c435bb50066306402303215abced06a86a226e2a822e248c9d834decf3cd08201804d44346d8ede0c19fe8407beb6d25efbf73571117fc0b6ef02307b8f514e0623c91cd1c902f45465fb10d64aa7a525587dff44db92960a41f41b4f2262107ca8c92c9da63462edc761b80302047c435bb50067306502301a4412f2ffcdad3c4ffe608e98eb7f18dfbd84dda2db6c1e78356ec30c8edfcc733d6a2a2ca4bc34f555adaf8b9f5a800231008800c5119966bcd8214b263b585f1ba9722551d45b88e0635ca10c8e18ffa4b812538fbfa84741607db2022871780f920302047c435bb50066306402303ad9afe712abcecda691da4999fa3e31cf960e08213b4c77223f6b24c0ddb2db07416fb30c20ffbaba5a100712ba8a0c023066e22c38fab085da125cbe67c06cd743fb135a1591672ee8562a814b21206ba33a8de998fae3be245b2796e3ef2e95970302047c435bb50067306502310082a7378f83519c9a2f07db8acfeec150a97c0eddf4e0d695318934510278c23936e9af5180147319554c036d85fc83a602302b20850e193c6d9889910fbc4cfebda888d16111a8037d429d970b22d52f8028d11b57babc05b226e523a6e63ba77f600302047c435bb5006830660231008500bde8c79cc537ac8b0ab45e331dd1ad632c5d332a355169d62bcab70884da02715a0e648b72f466a20be16c22aac30231008c18e5ccf5288af44628aab54029285a0c05c63beb843604a93278f6d89b2fbcfac803c69ae98a7ff5d1427fe59ac7d60302047c435bb50067306502303edd24ccaa88e73a526552d3115a7da21e9bfb2976986a7c86837dee3ea8a7b5135b1c67cd38f6fe3be5cd68d7ab2aeb023100e461a665d48ca80bb7ddf2c91ee9d8aae45f7ee2e1fa0c1e164242daf0a4ed6b73771ebecbd4a8c6ab8c7bd6e147399e0302047c435bb50067306502307ee6ecb9b427cce6c9cbb153961ebf0cbb4b0fcabfac8989a7497b978d0c26c083b805ace04add8c5120915fa73d6aa4023100ff2123c6fdc013a2ba726b38930f4302df98511831114fdc25f2f9eecfac96e637a6fcd87a318df30e547520d6d0e1140302047c435bb500673065023075ea7225d2f049722c7fbf8763fe8d9c40c8886a555b74ed365038f2ea63d8839347b1c225055efbf9de18f4b54fa136023100f9a647dd24ad8edeecd27509030fe93e5d767445bf37039a43d5907f6d1db8c922a89b9c3d8c4a5e674b456707e620df0302047c435bb50067306502307b99a8df116747643dfa9d5d56e2e0242bc2e3ef666be5ea091d2a4a9d462feea2fa21030658d7ab51bcc5be1d904e6c023100c2e4a5e38903332fbcab861a8677b2c38ceaff2daf8a3383abda11694b8779348dda5eda36e13cd787b12b06870bc9b10302047c435bb500673065023100838287d68e2e96b8f236e0c6c1b90b8c20a6cc3086679669af60deb834ed9e8ca3191148aa7b74ed8fc42e0b5d48fad4023001af3f4c9113def5004479683d44ecd8f88f41dee6ef96696ca8f9236d880b23a5797161666b3a0a3a768c75f318f7560302047c435bb50067306502302b6f3e7ce8425f61c4ff710449387c2542e8c3c63d635c2df1955ef7d1a0071408a4e24607500f59f474637599f9e3be02310083831bfb8e0ec6dfd8ed628ee31f0616c53c38a14bf12f05f097438dba13019a57ba34a5eaec4dc1d914992a7d5ef62f0302047c435bb50066306402307031086500a57cfd8197cef370091c22e38e261baa2ec22483f725299f25ff50368aefb27e3455f6df1ca7e794776f23023040298f3183ce8a3c5d9496647f0f226798e056b377367f69a636b9824336f359c5ad5ae4bf55ee06f6db101767e4c2e10302047c435bb50067306502310095a8d9f3f7d34d95cb629c7281a4d867cfb7ec5d9cdaa62df7c5120fca6126c46e949bec2bded6b0c462e8272a3af677023014bf7dab4004407625ad8c97fab373eb16595a1dc00bc5e2a6534adc7ff5c8efdfd75a0d24b141f5c9f891016b84e71a0302047c435bb500673065023057886b6364f5540d2ccb741f761f16440f82c74e925184221204d1e428f9845719fe4167a3861b38db0e8f45903018aa023100be9554c72a4a48a61c3f42a0e1011592782edbb4c3ee2d7a6f0da6b7ddde298a1fa682d7923a3cbccfb434cf9d06dda40302047c435bb500683066023100c85d8dd17c317a6aa80a0560e9d850c6f596322b75ff0aa2e1463d83bfecb99e6432e816d95d97cca728b71be9a533e9023100ec5be55342688fd556cd6691ba254d5bbc324877517c167e9759a9d39a0ce6321399a4a817964d7948e3c1b5cd330bc10302047c435bb50068306602310090c424587fe2f67cd842049262067c846aeaa087d2c2dff93da76ee4474377597880cd6f60e751b3198bbe1688ddd700023100df3ee48e1a21eec46f7e32ba400cc2a8521b450777b794776f730e1181b93c2858d287e3db0f91c3dba4053d96db09020302047c435bb5006730650230273dae1039aed2abf368a8d6b5b8347821d652e0b0f1494c3646585fe66562678ed875299699938336b4b61793ce8927023100f1c5f04126d6427aa0e61fa8b20d639b6d877c3140a849cf18d032f4ec0ac84854058edcec36404ca0b7703d9ed2efdf0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023069255de381f8e75b05523d3f88eb3cfc9ee9162a714147688506cd87f6cb009bd35c9aea0243b9ab928af86f6591d7fe023100867a0bfbbe35980be4a3ebba7a2f07fcb8556245dac96ec79b062cea575749e9e21252e1e7223156a347ee94d45c32370302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fa8ee95eeffe81e0fa9a469890a7f532e7cef3272837d43f268b124f1bed5592c52b8e4d66c32c4bcf2d664bddda67b3023100c34f882064a900e48c03e51b2e643ee639f26f23c1ff787e4e6d10d785cafb974d5299aba0487625558436836fa160960302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cc54e08beafa5e7fe266c4fbe66e86f51f079782ec65244b095e29a9378153d4f724b905abd1e0423685513da78c7b3e02304ad3ec5c73a62020a6c6bb798d6a687a2ded1f24a6f4c5a0f8b17b32eebeb5ecb320b497942bebccf7952301f5a5a9430302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230582d7de8f97383674ceade606997a18fce40497cf82482a07804ea391a28b4e834ee1d43c0d5430bffb0a8819a189ec20230085353c059c8f7ee62bb1f8c17c7eaf253b1dea38476316f6c4d50a326fa9d7050c165ad70ef3cea02c9b4f2e75b52930302047c435bb5006730650231009aa82f2466f3b710c6401c3ce4a15e38d30fc5e031679a08b091730072882399bbe153e60cba3bad61f9323edd0e78dd023063113e08440fcfab8a504fa6dcd7536325b7221bb5aa4c22f4e29b3ff08be5325546d794a817e3bc9bc3e67572aaa5150302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fd85b714c95b0969d4a44b5f12ac5013e7f458c4b8505dd7e5c79706e2c7c14e3fb626f7d5a9a38c604e52fdb371bb860231009dc2a572aafece2d678697eab5bfadaef0c63328cf5cebe0c15dc411c261498ec2c2af0634b133af286b0e02e1b8cfd80302047c435bb500663064022f7be71daaa303792dd01cc71071d170266d271f9daf67e0b87fb726c70e4228b64e91c7ee1373476d30a3252d88cf230231009ee23133ed0e5ec525cd161da39e5678370115a5d9220d3d94a96f3c90e2a770d0581d3029ee537f25103319ab3a57f80302047c435bb500673065023059852e00ff3b9b0ed4a50b50fd3e4d10b00ca239b680583dea9b9a601717915c0d189bf781562776342aeb23030c7c240231009b23abf1c20b4857dfa66ef8eda6fd873623f9ad77ad277e73aa74914d17074b1cd025771d3d7847bb8f83ef03e587d40302047c435bb500673065023100bb2349f786f5eea2ea76285638db335dea01c73cab2d77d9393c4f126ecf421816000aa4450fe103d5101b705254333102300cefd38ed7a36b557cfdb58d9187732905067d3997e3aa8d084c01cbcf862b7853e09fd7671cb957f46e4889f37faecb0302047c435bb500683066023100efe95eb6d69879264de690775a7528048680c69c6ddfe96a535f22c9018cb6c22fef7f8e9e3a6067208ecda05bc2422a023100828100840318376efc310f28131d41b66e0b6c239c9a8fa348ea617c1f741ddd753b1e11353c982bd77a92dbaf2724960302047c435bb500673065023028546ecbca56360d58a7252a959c28ccf85693105afe72c496c4eed70ccc7e4d7574646a02043930652ddeabf34c5a01023100d02e76b90523df12c4eca907800d5a14785a1a6092322d68768c07a5f071fe5c26d241d5be3750b09d3e7fcb04ad555b0302047c435bb5006730650231009474d2adba36a2f84db529b498b24bab5818a915d0856a75d516485b7be1c4b7dc06eb009eababb0f3fe28fa95c95aa7023042c33729bd049fb3fce586eb1e6d2b790f6c23b93906163ac14ada7cce552c274c3184b051a802d0cd502aa94f20a8320302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100fa78b1a7d9e23cc2f837a857af480b582dbc62c6d60502624b55d794b1c1f2b3d5ab73c6e88f7fc5751c9f6da57830960230622576ee5df528959191ecb07939178f0613b6c659110a7171fa2f9f201763a25d60d34af277f704ab0a93cb7867c7900302047c435bb500673065023100bfff256558a721b6176faa0662de506ac40b1d7d9b12ade24ffe68c03470f79452f2afe31bfbae141dc212b93a34e69d0230767b3f5fbd6b0ccacda4e0dd06fda0b7530bda9b451e590f1de50f6f869c11961fc96a54ad4b762e914ee42bf907c9cd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303e8cca0ff68affe17bb9acf2e5dc6edac99dda4a95390f1b63fe99ef741fca048e87ccce9c33d1364b5ef9201fcde530023100fbb2a7de3693cb8173090b9519a3b75a8752cffa53e1ddfbcd5e2d0e7926ef735dd529db55c7952f657f4bf203d27ee10302047c435bb50066306402305ed143a367f2a6f214ef80f140194abdce2b25acd5a25377d799a28ec755c2e9cb5ba6bd051cd27f45993dae0df2ff020230569359a30b53db158c2fa5eb92f20a1df7fe7ad614d3fa90d2bb1946f9369424a53787bc5b9a1588769a70f438f9050c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a7b73fa2020f851be85401e6d9ee3ec33808ebbb0978e31dbb24c154b3f01f3da02e44cc978ee7041a497420f389e3cf02305d199c8e1819647b15dbb93cb263c4feca0be5532c3894238f22bc1acc7d91767b360c549b6b7eab9a846170ae9201560302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303a99ef24955ba738d2e36a47b5d066dbf71f81ccd2e5b134ec9b14253f57acc67379033f6f6dc373cf80631dea25bb540230663ed4b02e93355d0689831aefe8923a87e11dfa4bdde31c18bf339a051616a2fc1e1c7f4b7c8d848f74fddaa8e934c50302047c435bb50066306402302729ba74fc689fd5aeb4abe2d3831ad645aa26663ca520c7b781ae73c9d5e0df34b98282a5e63d43295cfec0c2fe900602302237b8d8f7ea4db81a099510e99a1a2475602b5a0ba55c99b42ec4cea4eafab17f2032371f06a88d5e1fe86559e73c060302047c435bb500673065023100cefc7b742cbc42d3dfd625fe5b3c1c3e8c1f061fb11aa99738372b6d2ec78b2d9d087b70275c0355e20f063031c1a41902306c6d684917bc6335afa167b9e957f3498e5c752aed2910e4c642c58d8602529bbf9c46be6b1cbd748dd22d89d9084ea90302047c435bb500663064023076577da54d3388c600352b4f974cac30ef4eb83e0df8d622a7985a0118264bc647460b75c06d91942ede839fef65db4e023024fbac165deb75ba84a315ed12cc025f7698fbb1f48b7005efc99decd8ca922736badce7be54152690579fae0f246ad30302047c435bb500673065023100bb75c0750bbf0f4f446fc53c91607e04ad2a077d2d4c3d98f6ba8e52561a2a53b462f05f92d2e98e376f0766a31f0a8102307fdd1722ee588c9b2eb4e52b15020dd14c84587c4b4741cff67189a93d9b6f939590cfaa2a19fa0821be0fcb6efabeb40302047c435bb50066306402305935443e6b3e1b67c92751a32e847f4d052c3f3f921a85038eec2805c205394015eeea047aa22f54217f06b9c3da8d8a02305f4a2831f1103f68e7c80b95f80f2484e85c49d29a999d2f72e44bebc709bdb3c7f91bdc67e190819f57ad690c0503ab0302047c435bb500673065023100c3f0e8e17b49386106b7ab199157ced3ff90c230dce0081a4d7f7d8c5b1b9919cc53221b215317ce7586420a61dd20ae02301341807bece5154c454d0f18c5028bd644f9f51c066f92f2a069bbd4b33a52ef863487351352cf76291d023fc2db558f0302047c435bb500673065023100cf228cc07481fa177d7a323cf84effd0bf9b848ff09d1fb21d309124319f459d319709473dfe9c9a6463b76902edcee702305c7aae37793428f448e8df67a583264ba7418751a20f0bf637a5d8371c0e2bf3bc495383ced04ef2cd0ab48290ec968f0302047c435bb500683066023100d92e0fb0fb541f09d1623b99d2630a17915aabe1fa679e82a974f94d54e2a9bae3752d05407b4723771feb9bbf569d36023100f8adb3c3bcd519e3cf45e7a38c0812f47664f6136de4dc6097847f91c80142d615dcdf17cb7575a4e04c6477816f80760302047c435bb500673065023074171bc886d44fd22ad5a60f57cba2655fa98d01945170bb93fa717703bfbad0c4aea57fb4359da4a2d7289b268c4529023100b5cedc66e1794f413c25ca20c71e577eb1cd3f6cf4c0586b5d74d99e3ccf9b70244ad92257e09df534efa9e492c11f4e0302047c435bb500663064023001d2dc5df0e020a06e0552c22cb2f96bcfca3bc19e83e9ffa1fc4e11b5c83b62d7b49744a3ae5d1f32542f98f9f09ab802306007a9bfcd5aeabeaf8a0533ff858eb6f4339b8ad886b6c056e7cda5ad0a37427c4e2dbbf86c8e5122f67d0e97f230f10302047c435bb5006730650230548c4f98cabc723fafa38b79332f1d37c7ac07d7c6847eb648dbcd93e04f13aaf956d0a00668d2624282d21c02b3744f023100e7a904b1f0cbf8e9a8ac147c1f711da561b336fd0c33893c327b8ef269f6f4dd6242fa1c2d6e4d9efb8f633ba6f261480302047c435bb500663064023070311e2364990e38930cd0398ca79d53964e999f3c6b6914b1ba229a325d3b95ee091db9df4d92b9b8152d74992fc68e02304d816af49fe4d921353c30b8c44e7adc5112b5a6be616cae2d376310b6ad6cb6e6b593008d4a1007ff549cfd7a350ec40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d836681de2c1d229a59122650f3c2158643cbb159a785227a11f298d75f52336f847a59fb86378a9ca8c38f5ca5b92fd02301f2bc97b1e4f58db734e740a16f3914150ff2e1b16e37a121beef7020584aaabb7c4109d65cabc9e3592a0cc8d31f7550302047c435bb500683066023100e46ce03988ee013af4220acf729a1299ce7ff25cafe41d73c5885567a63954d06d6fbbca3d42e210ebff0f6af3ec18da023100cf8b07a39ed84bdc7f84491e90af515d31a31f22351e94ee68f4dbc73089bf715607f8f6125c62d23e79c8f0ce774f120302047c435bb50067306502310091279f5cf2ac99d66b2220a44a1af798a08b642faa9c6f98a8c85164eb7e38b91f3048753553b183934bbec939d6209b02307fee8d9bb05811946b5fc4ae410480990c8f8b77ed38d676b65f63e5c087ad102054d16196e7e747f5025ba1138c938b0302047c435bb500673065023100aee08fcbba4f2cda809c047230d4ca0481eee4dc5f9f4206e886e06100a3dc1e7ed1f52a4004e0215e46b1b780e7054a023027ca357157e8d7275ccc7f622b15aa7f3463309263aac4765fc4d70c263454fce21c8aab444766a1ae5f1167fb2340c90302047c435bb500683066023100df6d35583783a2dff01bbb37494ba080f3fc4d73002740416425d157263b5ba5b8e0d97de79f9b2aaac04d4322d01cb10231008aa6411a0de3db564f245b930eba00ec2c7fc99c180af5cf977df7e7a5d72f5b295356717cea371f371736a3db9c86320302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304a71c2450227d5a4d47d95b1eab236dc75f0f9f4fe9789e57d3f3b8f3c133238bef61001d3f46ea85d73d6f7d5e8ad5102302cad29f6108ec07b021875bedfb49ea0bcf114f22c87a976e1a556f20fd6736fd74f91e75f5bf599e0431adf7c3f94a60302047c435bb5006830660231009727a7a8379b9a9ae33e4de838446368be07eadf0d743894c9ab57022712fca3b829fe71723f3d7f12cf020fc62e8adc023100a29ecf046230f5677d5f9b5ddef5cac9cf7e159487aa508fe94b27a1e9b5a2f38fe434d484d9011540c22fddbc8f903e0302047c435bb5006730650230590f9034f00c62c221cbeef44cfa8f09f35b56cb086e381309618d88d696dd0ae4c8280da37a3401dcc758f678b2507f023100c4b0cd74defa39cdb2c4eb2d7d0800d589a6ca00f48ab9556975e07327600c5eaa055d98e3dbfa4ad8a954b3374c357e0302047c435bb500683066023100f8bc95e4c86643d186854c5f000b230e40797c3535b3075992e3ad6c7e44b72445845a6c1d8a113ab5d257c11ff183b402310097a82c9086fdeee3330f83fbac3a3cb00162c13c124d63e7dde744bba6cda9901447c42f3a905d76d128d8bd12c90ef50302047c435bb500673065023042fba48e103884377702a7f430faa8b2be26e077d9c8e95205e0166c7fc38f4f479d392a517768b7e09352662f9c140f023100fa16eb453881504b784032968b202c3b7b94f5e64deb0cda06249e0163d6a2941336dd1781106077e1dabf34f2d460360302047c435bb500673065023100ce46df77c5fcdf137ebbed280e3e55183ec8ea04a789f285785c0eabc1786fc465d628a088ae46a88816e3a3e7723fce023050ba3fb51911fc47a3c18a12e772141a8f274a7bad97c1e8fc50ba680a435a47d7527ebc8b0bdc98a9e16239e1616e2a0302047c435bb500683066023100d9ca8b2ea6c335b1fd7c2565f58cf8dc424cd64a50d551d55a6145c7747a7253beb3b55db4b26653af8dad543def88ea023100dc9ff46c2b6f38aee0d22d3b3e3ae5b71e49a4f7d2946b573e78b7b28f8fd1829b5c7d3a587b1731a2ce85b001654f5f0302047c435bb50066306402304c1d1804f57604e2bdbc0bacf1ae02f916bb365e77a2658f55b39774dbb91f2e654b10a2966824f82ebbc1db2fb4a02f02304b3f1d81d4980a0ee28f88aa5ab8655cb06e31c14663926281e7bf914074383349ae15390661320126d9dfccbf5fde500302047c435bb50067306502300aacac1c01aa5cf95e26680a5ae4d8b7aba25eeeb068b190bc9a4cf7c9bb831d398cd48f89f047fe3899158e414ee801023100a8d06208c706a4834a56ca1ca41e2741430be4648b8f40644e1396be350e12923001658b8582db403cce9c78453e634c0302047c435bb50066306402300e17be9cc167691d3e5ca375a43b33e822021dce5a7048818ea2b3c905d210ebf483d14edadfa8b17dba82070bc6db91023039febd1e141ab2e83778edd869de37ed2fd97b5d9a497c64828b81e9c5ed41b42fe1bbb30dedeae8e1f04d729a8e7ec80302047c435bb50067306502300ceb760ee09308cf64a70ffc54352d4efe1a828f0ab205fdf4b06d1e81b414bd4d1d78ddcb9aa2c164171d916d8105b4023100ceca7cebe4ff2354281e4bb59adbca2cca727577895785bd421a988c93f4d054740efeb40492cf6d7f93fcc5987f8ec00302047c435bb500663064023049ff862c17fb147228e5a363d2cbef20f6fc4e95c6c8eac99e8ca281320455e6a89787ff2179f4be7df6998ea3aba4f00230686041ae63a8130cc355b72e917b399fb24df57e3ac231cc4650eea62926db1f35a70f1a6b244642b37f03dd9074cefd0302047c435bb500673065023100ceb48e6d72e9297e04f78620249871e7a284fa815e94b28308bb4d145430f6d5ca15c65cf7f741962b9a92b11beb2d8a023077289ad52e73d86e1c3e082e3b3799b9b356cc1f7b2cb6c48720d3c031c81273c01f51fd68d7879c945f7e2b8224522f0302047c435bb50067306502300433e6bafeda050efd6c35829ed20df0471ff25c4b17021f6e34c4d4fe2878a3faa5eedf6c433d7ec65164f33f99827c023100d03e3765e25fe9f1289a7bc229a046e20417ca1ea95b425499e2adab9623c1242c4779aefffd918797a8f5b8b64804310302047c435bb500663064023059957d08701acb614999d1eda2a95ad0b7baa0bb2bb9b9740cff4fb15274361c1714fa8cf7b0cbd054efd42040a5b4e70230491cc8f70966709666d6b7b9b113d481201ccb1ff98f8a69f46647fdd6592d4e92ba31d212aaef4bad9a2b1475502bf30302047c435bb50066306402306666440af94a8948346c785bd867f820914f0434eaa49ed5315cc574585b18a5afe9160aa440b8b9c81004c69cd4cd3e02303b53a059c0c07aec59de958bb60051f6cfe47c0a17643fb5c36a9999d6e43a633c1436f59b2520d4354044dd8f3e3ed30302047c435bb500673065023100a373212a771e93a5e8270f6ac9ec7f446ebb8a7df6596efa739ef609510a7cae6844ebc89bc186afccb382d7bf48397d0230171f7e5e538f8795f3033d9bd498cb9653fea4ddcff6fe5266ad60e58660464214523de8b1146bb5f146ddddb1ad23540302047c435bb500673065023100eb3f5e0bc29820634ef20f4a1b8de3857abe4feb33bc42c8f8c0d672096a67b43163ca1313ae9dcae7a2e76ffd1e70ce02302e56914c00b12101c31e52ffe6629342e8ac35f38bc71577d95fce7d2c6af4ef60ff28541f2083880b5bafa7fc742a1b0302047c435bb5006730650231008ebf88efc8d884ab01ae08ca9859b0c3317b3b4d5d7436cef6d4fb99419395cbb7b4ab00138e4fc657ce94cfc335d30c02300f6f9c952f10abf4ce513815f18d7f20d94c742f24d257a8d27836de0e9cbd827876596c22de878bc594dfad75118de00302047c435bb5006830660231008a7f97e1a0b445679aa34503fd1e95d6b78e0685cce1b91f8b834c0c67d48975f602e3385887241a7edacac820182615023100e162fe679941e8b5949996814f0d8c76149553420df777f7acb353bcdb91ee3570ce89f2a1bb1d81a653ed5531bddae20302047c435bb500683066023100c0d7c51a3f0c94af6b5687363aea4aa7690fff284ddb7ff6cbadfd782a54a9fa6e196623ff6946fc3f230c6f24bb321a023100eaa93be1f5c853fc08f6d20f8da7b76db6788370d96e5037e0997469d60676a5397d903d2d6912dc0fce4e6315db61b90302047c435bb500673065023100fcad5cefa2387eaa094fc436b6e1ae539e5d09f932c339a3dbadde079a3769c8c1191d85a1d5f6ab25c36a42e65c6fc402301c1b6aa896acd8f039dac1454859b3f1d1abddd0b24501f645fccc698122502e5ebf1d431ee539fa186c45b671ddcb370302047c435bb50066306402306345e8f5629bf073f9772aa4358cb45b797d45e62ecd9d1c6b5444807fde8ab0c87eef6e949f75d1ff3a998c4c5d327302303f1f0f1425f06138bb89e6f40094ac3f1336fe6d6f84d193fec34e4c12d533b29e8eb238592cc891c9b0f62f1f6e5bf00302047c435bb5006630640230601f872f08e988b7b0a40cb5bc78716b2fa5b8b017d56f5635f92635dcb296008fa5d071b5d8bb174e636027fd87005702301f491fc882ae357bff960db6bbd1da223de6ef365c70dc8ac91e5e210d5bdf4e56fc214405fad3b352c9e6e873492d8e0302047c435bb50067306502302fd87a6b13d269287a7da96d06fa6d633bcfcb610b60bbe044663d46e5a665f1d203c3d82016084db443684aaf56755d023100b37d44e84375c3fffb115dbcea0101d0be2cd464bb58c106b49aaae055df03dc45fa001995c6e3d6a76f62c41f0f34e10302047c435bb500673065023019e2d9e16362037fbdeadb01abbedb93e79c523a4b3ea5482e35684f2ee154b09d1d5d7595ee165c751ef45ffdd2aba6023100e24c924815f4628784b070d10b41533384cfd79f438ae29b998759d59098602173d5ef7b041cabf52b4218d929f892400302047c435bb500683066023100bbcea36e51c5eb0fa0394df039e3ef1465540b6cd3669b5c53487c0990171d16266d5b893521fb4707be391126a4571d023100d6df26fedfa5725715be9f2dcbc51f7f5d092cb6c6a4a38384b9ff81b64bde480d26555f37b9670f4a3b487222ed10220302047c435bb500673065023100edecd7e7f25aa5e2b016add5648616a8d526e71c94346b0a3197a4722254aefc8adf324311263d423b17c767efb2518602306fa99a764cc50d04779cbd4fce894da31cd3b6e907552b7aa1f2f6cdb36bc82557834a2c50489e1b7df99a1ccb8e33380302047c435bb500673065023061875ebb32a7edf86de11e8736994511eff74bc18cda67e1932df03a106a56dfcd927befb8ea74e9c3be4612bfa58a75023100e02ff6d4a7acb4fc85d03439e7b05b0b19cd2295c881449f2637f9792a53bcc5c861d8b538c0837b8799a4f538c6ae550302047c435bb500683066023100d6b550da692c7fa498657c7a31fe645c00af0180118d799f7b8773bdca04409b0ef2e16d3a44caf17e1e2cc3e610546e023100b07e1307438da3555627fa0221040cfd85573b9d8048838d3d5060b6c5fd8910652d5b91aabf3e1d9c6850f3b3e64f6d0302047c435bb500673065023100ae6ccffa594a808a1d346fddcbb2b374d4225c13669ffb70bf73273c41b5a7480bed5b9f83253396a0790fd49dca4db302306562b34a9626856da33611ab418d943d43950d6b89b901d42e5843d84372288d2147def7630ba0339d8d01285adf47e10302047c435bb500673065023100e6f32c6d47307ad73820de371b271ceff5b8bad707221e94931e01c52f4dfe00e945112b73dc52fb46ff33e55ab259b302306bc68be252f9ea9533975aef78fcd1f73e7606ee0a353a81cbbc6f990a451b6a32fc3ad6d09c2fba2df0baff268726860302047c435bb500673065023100dda9c983003c7c6ead5760bcb9b888c392673ab16b1aa862cdb1ee54687314514f0a8b7eb7929a9653a50c00db0d976302300d79715407c3d444ff0975d9ee1c16f36fa35d6fca2ae55b8e143a043b7e4d728316ac025da2633cff5868030cac02af0302047c435bb500683066023100d95113e23b2d7b6dff19bb60fe4b3e816841b5a06fb7e7119f99e5608945ec7c369aed42080dba6ca4646d3d120a4e4402310084f65151682fd04016e881af5ff2fad6e5fda8f00ad0ac479fcbc503cd46ed0efc77fb4ce0ea56eb2173d725e83d6ca50302047c435bb500673065023100e5ee1c857024b2ecc3117537571d4e7dec335692ac893d519f4ccf22f0da6da6d201dd8ef6fb9dc1f851ef7df4a45ec90230250e7f6d8528ab2b2957209b4c7791f49fe91f5cc81fcb10a4134e904a446d05f1653023fae7ffc0e4cd4a392ae7719d0302047c435bb500673065023072f1d4828102e2b7e66d98537ddb57977be7ee2461b14744ce0fb2219239dc095f9c14992a9180ab7efea826947820da023100a9846cfec0dcb108cb10139a6656cb76da55c13f89e18efd6d6b77aec99604dba1161ae14143fbbabb6657ab87718e9f0302047c435bb50067306502307a4a7951e2d3cee1d2865a7b25d8eff8e3bd0474aafe5a8e9bb62baa899218ce43b55ddeb3ab3ad7361a3aa8f83d20bf023100a2cfc06e1249607b2cf2d7fb26c7958c54820551bedc24660e2c5dd2f4e275ef3fbbeb2988669326dfeb27fcb271ddee0302047c435bb500663064023077f9668ddef5de2b502d080363aa14201479075e88b7ff68551c4e10acee9709253f81483bfce47143eeb0e199046bd402307b095d550abfcb2c3be098a8268b26449b627504564e7a601e3c9bdad864484d33b576be47534f80a8f27af4a85e43d10302047c435bb50067306502307841a65d0def732b4ba8e93b18d35139089cc2174f7e43556f57f8f9a0602338d5be93381bb20505e4c2ef75c26750c8023100f4fc4f94d09e62ed80ad8d343189967a878ffb30d2a65d42d5525c93607e7714f0f1da60ef1b0eac612782d0eb1de4380302047c435bb500663064023078369582da76f2914dc897536c0d9f33d771e0a1d734b04e9df2eedc9e9d7cfc65189c093c5be3bdd10a47f21e185a7d02302e2c8b2a2695bd2b796f8fc372a3bb7eb71a0c1a7da136dd1a46ae1b4639dcb4c4ca3c254b2b59f0e64b989bacd336340302047c435bb50066306402304d1f31dbe47d226dcbe1eac25e10ae5c0cb94c67d07ed8083c751a04eea3fd12234fc2b2a98c74c8a509fa500cc6152b0230232b9c136c74991881d756a166f8946aa40b91cf3015ad815423048593504517013df877010733ca89e1aff9acfba3c60302047c435bb500683066023100d44b228406014297dd97607209503b1785c372a0fe612e12bbdafcad448bf21516ea87928dec99495105bf34ec5f4c5b023100b38dc19133609996cb0af6585a98dde1740e4bce22bcff101630d339da2e518f822fbd988bd4b0fe586ad367eb0ad63b0302047c435bb5006730650230082d7e560ab60eed5588084c81c4403db82f29caf9ac1c51004d8ea9ebd754932eb501bd6abdc742030ebb516956cd5c023100f73dcf7a5ac92cdc985cf389bfa52b9efc372e5092c2a5e78ae6d1f9b6c2c600d00a6df1c71533815e41972d3af0faec0302047c435bb50067306502301725930cad8eb3663dc7a540327c0ca23540a8d3d600a1ca069c3464474411198357b42ce8b88df40a4916e1c9486bbf023100b71655bb35fb1a399b9e76b84d440a23cc32b3ec0382ee19268e89b7c9dbe41a11cab35c4bd41c47ca2ae0c9afe899c70302047c435bb50066306402305165dcc80c209f074eba268cd61479a99c1b84d7c58598b93ca0d13aeb5a3e9b9e8eacbd4eaa58c49638ed996807f8c1023005e746c5d4913fd1d26a7b483044ce53d6febf3e9eee8eeabee5cbbcf53833838c28ec6f18886f9ee87ef2cb64957f5c0302047c435bb500673065023100df2b407d60febff994dc50782a029431db60236c7c290fcae7266493abe8c7b8cd8d269c6b9c243488abd5baecec990e0230786982833caa95274f8ade0dcf086434951abfc20c6c617c8c37b0e91278fd1f6125af16099b951f8f81c960de8aad750302047c435bb50067306502310097fd2efc5deb74da14ea1bc532767be9c19078e10ec3d0286746cd85428b2ac327fb305ef6bdb069083335856f68c3c2023039d17dab6262848fd6d6399f1a04b7cf5cb76fb3f333c9f92e814c54d837da83adb83edabc0687f7fc23755ed59a33df0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302332c84ad1b74f38353665b00ed60503b42f3d1032dbd0adf7c4cda3e4748963cfdd427e07a8dc9523bf4d8ab8fb20b4023050c7302bb1f664e319d7250b40272cfe88ba14bae3b616c9f478358606161759d1cee7053c36a081cf076dcbdb036bfe0302047c435bb500683066023100821df9712386f2177b6b1a1c604772ef958f6561c747730cd1c402d065dab783bfb21d4dac68da2c94a70ace3f90440c023100a3993a593465c0031ae7821b38df822d0b734ca8742e2b97101a089a6cc1de0b6b7a709d93d37ee840dcd6d2a17a60dd0302047c435bb50067306502310096d619ae37ba8579c4280c477767789c66140f3b43b52857a3556088a4f237b19fd80716b4ed9bd663bd6c05536bc210023073385af15b96bfe1afa1542a9fda770807fb785d060c26484ad7e6a8ee4c6dc5893a239e144e030b3890816dab4e7b340302047c435bb500673065023100888c3fadef7b44ec3da46dde31e13664ec1c33e0071cf2910d66761537d13ef7b5c1872bbcf9aa9ba9fc972b8a8f955302307e80a4e8de2c07cc61cfb60a60cdf93e0f8c2cef7201b6d9b68bccc55f4e8d5d4eaacaabb6d7de38a5868f3fa47b4a020302047c435bb5006730650230325ed8bfd042ff2f10e083a3a5d323ab564a186d0bbdf46d38f57cd3e558bbc42b2f4d943e3be14fc6f3c8b1887d2a83023100b357d9c51ac1a48a4bae1d728e778cf097f5e12280f75e15575d8e14edd91b60b93b39c7816efcacaff6bdbe4c22a06f0302047c435bb500673065023100d2f434510186307b083d4ad8bee1cfcb6bc396fd1f8f203fffa5b9f427135f310e0d2d48620ea0714072d181dc0c321502303911ef7f836773b5de0187f21ba0ea852263cde0976d7e931c6ea9c59335d48a7303a8dd721e66f7aa83ba1fc37e01300302047c435bb50067306502306608a14765c83566d8218e57ccb6553c144bb90c366cf0693ee3ea505d4e0cc17422ebf1e66f862d8b332e9e19093e35023100c0aa2d1925d5ec173eca72e4c4d72085881ae6864478b4945b866ca9433c8d3bb9b721a4932b2881f2933572278224c20302047c435bb5006630640230485ac959480b1e7867a32fc9a17b197adc88dbd9fd479b258f6fdffe129986eb3a6b6d9058c5115878321b13ef81bd23023021987a7a596c050cc0076cf35d4bd1df664b92d9a6168b08cc26c1d5a02843772a55c3b4338f7fe6ad479a8f408fdd570302047c435bb500663064023015d26166a373981ec1f37cea51394f89dfb546667be7d6b957949c626192a3b6aa545dd781b446181797281366ae22a4023048ca089df140622fe1af5b0cd7ed15adae2ba23b5cfb80bf85dd7947d6a06a9235245fc1b5c4e247fa3b8a810f593b620302047c435bb500683066023100b2b0ed01aad337a144a2b5e26c433673199c8574ee9cdbc9f41db3e1d243dff9f6edbe2a47cbadb19f0b08ef9b6d739e023100cac308e577d50646d9367f79804ad693d7ec6f45a132e565b0db176b73bb4db0bc4179cf6e1280dda6ebdfab488106f60302047c435bb500673065023005229b524b1304507cb066455b5729731325d710bfd34640b8f29ae91885ba708d9aa995dba9322188df7ec6718ab022023100cc649b329a4c21c8165419521309fbb3f23197e747620d47e7c7e304ae2cd57b343ca241f080dafa4b8a54dafa1b1bf70302047c435bb500683066023100dcf1d01979ec14177e11e4a1fced12f58c961fdd64fd15a79e20184d697d7c46bdd805a5f1b0bb2a39027cdad01418300231008b28e77ff0fa9b0207af78a1a01f2b2428d6b260eac5555fc6e1cb36fd9b79006da7e25f1bd597ee4088a7331e7ec0ce0302047c435bb50066306402300ec3cc2ec3aeba7de6b32cd7629918a2fe95f3ff957bdf02bd2bd65c1847fb981a61b6a097c7bea5f7107d9fc43b67b802300425d7dca477a13b6e535e2be4a0181b8b4a3e9dd6a52460de34bcdd4301b304cae3bb4fda3b6d819a69486d12ea5cc40302047c435bb5006630640230370135dc94331f83cef8bd12c095793e55eb1a98b89dd3ac2fbb55847505f50a0a5859639c99132678be0309c07caf7c02304298faecbe66946ff1bfb332355ee7a4e6019e5652e884ce4d3f5cb658a16cf1dfff03c11deacb865e3d7445afbf7f120302047c435bb50066306402301bd2aeff3d8b8e14f3dbfedce05fd88b88edeafed235d5cc51264bc9d12ad31a73e58bf372da0305ab9d30759c48771c02305b9b9d7a60600bc553cde0b8ded3ee8044cc4461e143bda5d37069efe59a47d77f63486f0f138d34e53134840adbc7000302047c435bb50067306502301350739ac16e4d6f6f7bcbcf904df339a892eb440ba0e139bcf0c7d7bdcffa5bdf94627b18dfff672aec4eff4a169217023100c2d39f46ff470be708dec15baef4a66be678be1938a1ec7024142f03f97a1bd00e2d0f230c7f247740250bc55cadebf90302047c435bb500683066023100a34d37c476f531d1800e50582102786609943566485a5edcec57a22c0c9d8e3d0530aea30a6ace21f19cfa89ca83bbc8023100897163d34f24110baa23e17286a230495434152f635485f4880355525460cfd97ec9659d71c2f71505bce350e3477d470302047c435bb500683066023100f733fdb55b836b3d55172be809283f765a1b994752bcdc6ac6b729923cf717601829a81eb6065d8ae3b2d0a0514afed1023100944dad0fcdfd60a9a7ddf299d6f340ff0d08416300dd689b06dba0921101a3a5d25dfafbe6b6df1a413437184080b0250302047c435bb5006730650230024bd917df8199d01c38d06506cdf076dbcd2c0630e89b8924f53646eddb57de0232f17ca39c1bebdb083d27e966934c023100a9ece415494e98abd968db07c15ee3797677448347736e9efe72fa65baec8748963afa36fad64a432f8355c47fe5b2e20302047c435bb500683066023100c6dc66cebe71241c8173c0174618d986d292021b659c72e88ea1e832c8865bcc6312fafe97c53315811f718d5776ad4502310099f1b07650b71d5767eecc09ba472862741a865fa93f6e8d15ea91f5f696f4c6c14bb42544af2824c9da604d98d0dd640302047c435bb500673065023100c25323d0a1d995a2f11c2cd160a1051bfa22f27b1d7159f24e951349d9504dab4686854a83819042bed86d67d5291504023076ada6892ffb871bba6b8753ca574b274ddf8aaaffbce5ea49c4bf629f93eea0fecc5ce52b42ac4fde659dab8e3bbf550302047c435bb500683066023100f1d4da40039c4cc796eb64ef0acaf5a73428bdddac3f66eb3d97705fec520a2153ee25d7b497b0ed971b071bdafbd0f9023100c6aa68c0c6f18e5d1701a412f290c8e4b56ae37c758a20cbf7ad2a7b3be44eaf036f4a583804638f7396adf9296ac2a00302047c435bb5006730650230583dd06300ea5e062366f4cb257734fe55e8ca84cff106ed636c0e08a4d927785f1cc1c123cc2687c160c80b72981b96023100963efe2637cc73a2275c2e49bbe6c8ad87bb5634f8bacd174af9468107cec58984a62b933dd83c463605cb391bf86e150302047c435bb500673065023100f0b6731c48cb1c32504822b5f9a8d0f8e77a57de73615db5c336745669cce8ee4630c58a48780a4e0b4c44d8becabf3c023044ad63717f053151c429c4a71394bdf2a3a2c3a5e1c0e781e0ce0f1d892584731e434a811d51ee6a65422aa190bc29100302047c435bb500673065023062233e9f68d847e963053a396de71fd906dd9c4d1b2fc90c4df61a09bcad91772d65ecffa7a925bdf3d38bcf14d49e54023100c6fae4b8720586c223b40804619475e71b3f4751fb4b926beb437a47876efe615b62e7360407c77d07400e5ec9e0c3a80302047c435bb500663064023012e04de02cc64fbec343673f9beb88c8f40ab98529150865ad5ca8feb528c9dedd1d44bfdb596c774b58c7500ba63bf602303894b350dc6fda134ffa5477500847a459ecd4d4dc9c1e40109c0f19189e0ddd97214c8ae85fad868ac2420ccb02423a0302047c435bb5006630640230749c9cc4f09c032de71fdaafd0c0c86d7317e54c0eda967b5e4a1dfb790c800e4901cbecb714c5f1c4c43de4ed32f66902306dac68c8d1eb533690469cd8c94b0979707366d1b7c3d86994a5adb9fee081b30e8ee01635ffd639ba349f264341b4710302047c435bb500683066023100f3751fa78e0908bbac9e596dc34550177d298bed99797a1962109fb64390e6cc7b4e89eeb178ac3b9da57feb4bf63c70023100feb4ebc1bd0ebb01ad75f1218ab83175db4119e7175a1eed0180a1bab2fb62dcbf1ca54111d37a03d97697619c9d77340302047c435bb500663064023069b47b394a893f6fadc95fb9acc9fe1bf7c7f4cae5bfc9ec4298b257454a4f18f337784033aa4d3b83955a67a16541c602302d422eea7ad835c6910c82d26ffc22c1b62d1ac6fba1fbdd06779629aa39658b75825b2ae13ae95b1bf7161879c8e3b10302047c435bb500673065023100c65f5f1046084c4e9d1412c5f97a86be3e694aee1e94a854be51675f92613268c3c1d7315f2ae08e5ad71db404d6009202301fd9793dfc3fe859419e3249a081f18e5dcd40895d85ae5e653a960e9a2b6f6e6c860600ab70a3d29d05805dbabcb6070302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ee6549f5989566cfa186827f2be995df1d6066cf52c91cbe047faa88e5cae8c7c1eeceb0f714ae7fcbdd1852565544ea0230337450c12baa83822d4baf7fdb707244672f0074c8ef6e22b6b01aeb31231220bd249652d692c79b73c107ec2896367e0302047c435bb500683066023100a977bd79606efb0a5256c38f38311565a9293f7b5e96ae687484daf9b7a5a904b3fe9fbe0f6bd86564484fb24f9110980231009968729e4b773f7e56e1ce3fc43be3704e639588d38bf13bd288bd16aacd8ffc9da88420219c7ba0f3299253842b9d3f0302047c435bb500683066023100a7054af10a24a1ea81098793463aa94968051e2a4f4f76cd2221389e41a495fd0ced7706ae57cd72a4f83c627a203b94023100ff45d847881aaa61a8b6b2a35e09fb3e567b7e82f2679b506882591ee0b6d3c0b56b9a46bc73bf811962c0fcf2c4254d0302047c435bb50068306602310094f69e9ff71ab5222cb03b2107fb6c15aa89dd312c7d3122149051fd2d946cb95735a767e0da7763c30af6758bc179430231008bedaf567d71cd4286ff86e6ac2cfec0797585070c6829690c94fd09f789eae81744e93932394fd2b67ce2ae497895170302047c435bb500683066023100a8b70374ccc26e98dcbecf0ba5c7a57cf581bc1f3f4fa881398889d152df081e9a7c30abb4276ba4cee40f6e57b7b39c023100d6839ce71bfefe318a0ffe150856d3bf2b9bde2392ed54a34408853cd88a066fab547b2a8d9f6552ff7ebcc9d61fa36d0302047c435bb500663064023060f6a3644e92655190fea758eceb2bc1c82c303fe42ff694a4e39d93bdd03a4953900c871104c5e347bad1f4628dc15902305a2460e3cce8cd83db85fd701c4410ccb94440029bcc688eedbb59d6f0cdc455986d7d74fbcfce672b2b35b7092c12100302047c435bb50066306402301f2b256327756a24a7a9a91f88bbf55d69b58ef8d1c1d5f6b77ae7107ffe6cdaed04c08ad0e4496b7857f8b0d287de3402304a28d7b5b3e5b045fa5d950bcfa6247737db8aa61749b70bebf727a014490f9f34c6d13a44c75eed4021fb8a6658cce20302047c435bb500673065023100c88e10747ddf49b8ecb8d6af6690900522dbdb05afae7ecbfc64188494b71eec5a432a7658a78cd300aa9452ef748cc302307d3276b4184cbbbf46283a9b8172417ee95f053fbf72e865f7592bbf6f618d3110cf3556d3eed0962fbfffa58878ee520302047c435bb5006630640230421ba5d0323d532583301cbf8e3647f4092b6d35617bd4acd35264603d1b32162f82ea7a766c0b53221a38a75e5f4e3a02301846d560314fbe864455f0d9de20d6a5eb3eed355531d1bb2e305faa27ff58a61887a1c31fc79def02f3c9c616f0b4e50302047c435bb500683066023100f0091f33b4b4f5288b346f1b9ed79d0c2c7223f46b3577cf99c0cb0948e2594fcd1d81eee5ae170b0c0dba1416b9d971023100c50f1211252daba355c3f411e6b92ca276fed719e78769d678efc8d2440d9ef79705adbf315b0ae69311798e0044ed920302047c435bb500673065023100f645d461ab6f46dcb60049c77d2d1e1c792601ae51865b0ebfa53c9485c90446280baac56efb22fc9a618991b201010b023035b55d0d40d85b8ad7ed2ff61c2c36af7ece4ef9dce05ff1daadde55f29c953dca877f028bfffce7e15ca84bd39bda540302047c435bb50067306502303cc90a2bf93ea9311aa5257ad2828b5ee814540b4482fd73c6daeba9b0a56115f2bca058ffcd321109dc93f0ee7f4ca20231009589a314cde8d8d5abe12bcb472d4ed49d2094ee5b152e2997e76892b2904d0ccc990b1e17091c459591c0fc84be8ad90302047c435bb500663064023011e13b327f843d56c60b26c89275c8dc128275f210dde35ae3b39b5a089693a75196a567a73ec57f1ed92f419d2e6902023003b90210291d22fd40a68e101160aed27b0c3ba0a8169b90302c38681546f82d82398436cc3827476d31b6e453f9c9b10302047c435bb500663064023075d71fcd1e1b307848c65f8f279a29654ad68339ce78dae92ef76f19a31900c4a45cf4dc0ae55b65a3e37d1dc80fcf8b0230769fd8a4a74bf469400f92ebf734a2e07a3a25286b458fbad8e53068cc4e017e3f70e03720ea6cfee1cc88bb05c4b56c0302047c435bb500683066023100d38141b99ee3adeffeb315cbff995510d99de6fefbf347056dfe064af27dcf6c56906c04aca94f08bec2214def4174bc023100add1cbc376a4abb025dc7d8fca42f4d4da13814a2cc6296a0d5476832a87124ec47a8e52a9b7190d463ebe79e4fb2d5f0302047c435bb50066306402301d782095e90610ebaea5911580878d9b0fb58f527bd4ca2082ae0a99f04950bf289f6ad67bdd5228361ee13a5b0b6506023060b0612d4b75d38d3ca1dfe463dc3879fa850c77a14a4aa52bdb9280d716ce47e81b57a68a4098d0e15114add8b816a00302047c435bb500683066023100d0e34b13f41f1384caa2d0dff4afc1a1169de102697599c3a9acc6f222c3a945368eb84f18425d0c50b0398002ffc034023100b8ec6f58fcbff972a047439f25a1aa6815a4fbe23969bbe5e77bbb535ae0ef6609acd8726bea223c62c6a70d8369541c0302047c435bb500663064023019a57822832a6803899b7b3e95e109e8bc47275bb3a464a3a78f961ec4eadda82db5cb53216f0ee11dadfc958dc406340230605ee02fd58dfc5f35803d56ebe350f0098b12529dd9d646051f0b31145f79793b671875940ad3dff3d391b050737b480302047c435bb500663064023025087aceadde0ae1e8337d8d0e93271131ccb135166c5362d168d2ad73deb23bce472638690febc57233490b2f8bd36202306cf5290e3521d885eac2a473933d8c161d5c3d9c44d32c3b1f93322a701803910641b0a7c4f9c61c06f0dd05d567010b0302047c435bb5006830660231009ed35c98ee701ccf797322cf1bbe0a0750f6177af6c7149a1902d616efe8b7652669b4dc585739371f6b8e9f3b540c76023100b92f6274212ab09a97be327f76a7aa8ba7f6de4c7cbdfedf352d9b561215da29dea9dc5ade9f200a0fa80612d449d4830302047c435bb5006730650231009f64e147c052dd36653602209d854a8c19c5efd5727c9ec7111a15d9970bbf933d306f7f90d3d7a74c88b065b4c7f3010230434b36768acb718d4ef940641955b32aca8e4806f6e89b041b903a5c0cf77e449626303afa038e4e01a9d3f26fc45b350302047c435bb500673065023100d16ff86d2d0fd14b2ef29fa40458a26474a95ffb966367b895005f076ca713881c40d9e0c248d2b8927cb11af5c5c425023013f0d071fe5247b06272774100e9a82527a479b391fd9b0c8a2db5b915f9274c74c0f66cc049a996576ae2e9c97985c20302047c435bb50066306402305747b4860b308c4604119ab177984b8514f918c832f14f724999254f4c1f5d79b52901818df49d1e710405fbe595c4c6023042afb4ae24bad130dd7252e23d12b6b0f95503336e550c4593eb4389a6b621533dc50e576f492f2312cd230c0a887aa10302047c435bb5006730650230345cc844b3eadac7f96a48cf6a8ba7a682788b36b2edc8b2b5498e40d8cdea78a246310e5f4253e6325102eb9b84993e02310098b5d4086bef554aecd70a86c1f2a78f6e2bdf40e07f636ed5139a6aed6880c2ecdc5f1a5634ae91b5b796f6bc32a2830302047c435bb5006730650230286589910f527a90f027aeb807a9a5366767d0dbaa5d79703bf40e90e59ab60bf8a01a14a30c217e7268be8be8692b22023100a8307d25172dcdfe0b3e5d9cad3fc909e8215d2bb350ecedfa1dc5d0d88c5b20f3a4738371668409d407c039f5a8982f0302047c435bb500673065023100bb0177595b17b9497a45d61fd5c118ca46bd277c567a773e487811ae26944f7c6707a4a231af6d9d31a6f8cab19e094002306cc0d22614a42d93d2cf1a493ce807773e44205a049890b10c0cd2fdea73d3e9047f67d2df6a02ee5320eb9243824d940302047c435bb5006630640230610595867dbc4f220e99021f36284159f80865877f05d492ba061b0a77c5e06c3279306f5d7364aabb012f0575c521d102300841b3ca9ea7126ecba952930958ee00963ebe625336173c6b2de224c6fcede9e725a02cbbacbb80a3e89244b39b17110302047c435bb500673065023060a0ea91fe6f909560580f37c90af7d841fa17fd229b1521400a997d3030b1ee9dffb4a765dec523e54199ad481ee2a6023100a1de3f8f8786c121e39dd7cdaedf3db07d499d3fd06a29f0dbea8a4f5d524677437dafef33ec899166320b7a8df906400302047c435bb50067306502302612a93016647c961aefae09c22afcdfb0f8b24df4eebaf398fbb1a798ca69385cfe27f4fcf8b2c0cb3f7f1e5bb8fde6023100db26e681ce86d264a86f957116f0bc097106b37546d91d4e4fed49786daf4860f4a15e3ed91136e085391f333d5808a00302047c435bb50067306502307d3317e6ffa88ad0a55e78743d35c32de99c2a9f98213d1f85fea3950a20a5474f9dd4baf13038b865c694727ab429810231009d954f2a0912c61fbff96d382a14c769607769c8c3234d7b4b7b402b0afbaced0fa63e0c12984b0dacf8e352386ea15f0302047c435bb50067306502301b5e94612cb82a447c83ac87371ccf0d7e3eb6111545747f4d890c15f85406d7acf1ab34b7d8c8c1a58469a8090d73b7023100eead8a39f0433c55079c2102e3e5e4481be30f8c3607c586e3c75cab90fb74f21cb1729ae223b824d02d5a35b556c75f0302047c435bb500663064023012023d0f8fa45009ae615ff8883f0376f99f7319d635cc97b0eff571e78979b05686b20130dfea476bf2975719e622c602305f868888fc5a70e4375612b3592a055764b8c3dd2506a1b6b512e29d49d6f630b175645db90904a8bfe28664bb94877d0302047c435bb5006730650230448ec46994ec8622e0d24316891a40bc30bbba1a8f757e775aa6c6f24244b00a703265bda47827b4d554f44d9cea969c023100ab76beae60d52f1609adf6ecfe83b2e57ad6b7e3e23708d954cd0b8cf1f2b8ff442ba6c591f585bed1986c42239760a70302047c435bb500683066023100da0e2ba2bf9a08e923c9615dcf23ddcf809ab0f595411af83942b2fc9ca10fb2d40d849b969372c27007a90fb14f3560023100ecec47bcd1e7f85be1986664b31e8713663bf5424bc3776e4bee0ecfc8a756ef7702d7488d72b012303903922edc297d0302047c435bb500673065023018445c27a1650dc8b083387c18f7352d66fcbb23397752d06223bf107e35fc26431c63d4e9c6786cfdd99947948f5695023100b35ad596b18a05c2310bb5272dd651e8685edd2ef01589caf099803fc05074473fb8640c6bb46819cd66d9a9fe9e8a0f0302047c435bb500683066023100bba840ad66e317d834a84b9f1f58914b9c69f3add52c468ccc5915fd2179ea00a1097c54977035a9155433f1f20840530231009024121d67d64bb4b93ec17ee98789d147e2218d6fed4fafbcef58ae6bc19a895693825fc9d6d559828013f8eba25ca10302047c435bb50066306402306a1f45773f74e4259be4ca23eb1a300f41876d48c0210de7cca0c81a796fc2394688a7eb1a44dd2405fada6904986a2b0230123c555cc625c93fcca9dfe829f27836b735c5453e541dee56f6a9549a11eb713c8321be48f78c2edc8e031d2f2fce7f0302047c435bb5006630640230386f7fbf63307b53ec85e06ecd4564bcd50e524f81a802b73c505a6710e3c9a5b37bacb458775538d5a2a7b9c6249b39023046a385ff89b3733c4b9dacd7b8e38a824ed4a187d16da7b86219c65b43147e157c53b6af47eac2c50d8cd19bb585baea0302047c435bb500663064023009c320da3aac3d71c4a1dc91f58ac0832384e131188b0ec400d90006d2ae43f202a4c2a224b7422fd98ae61f3c67fbce02305dc29aa038533a5666d23406a704f261a33ecf3df750569e936193bd39f81d0c8c2fa61593f4c384f213c826b5f7e66d0302047c435bb500673065023025ba21ba8231bf35eba640519fcb04b9ccfff8ae5f53ab9e0e6f9427013e1967fc572be980efff07cdcb25c1a9b6f6fb023100cb4bda7c7c468419f4fe662d5d9221eca10cfdf51aa229594e6a754fc2bb3305bfaaffdfd7e01355ba5d9c643bf433670302047c435bb500673065023004b761c08898fd982fd917ca9b21e3cb73dedfd7e59cc6f287a923aab183b2dc464ca780a90dc92515c43525748c63e30231009fef6851d5a5503d8ce193a15b13cf987c5c35c8b8f9c12d398f847706345befd574c5ec8cc9d176a21cc04f8aaca21a0302047c435bb500683066023100a54bd739c37f7124d735ea9442d0fc7b0352577db101d594f979cc877fcdeb8383fef0fb47af0a8555e70a786e982de9023100b0485451e45a748e239692d2606aff43c536011d250057661e64eb5bbf3d01deead004930ff7f49718cea731ee9bfa8d0302047c435bb500683066023100a30284b881267516d7bb594a2abe372caf982e9b79ab8b15b4c38c88d598b03052cd0c078567dc32c42612bf184a374e02310088ddd03307891450c0794d7ba1268ba7ae0479c97312c02c5fe45d2ffc7efef471867de7fdaedc718f92e6910730a86d0302047c435bb50067306502301c66da266d4a45c2ccbf9311638646bd5a322743f3429ad53e982060b5784949f7cf5635b0d414cdf95d56c8ce8fba6702310098fd7dbf85b3025e2b83434c051ee70fd4cfa8f1e3d11ef72ee1a4652a41250c0218903085ee12cff7411d45e50864410302047c435bb500673065023100b96cbe70851f873d712303419c4bcbaea9e2b602adce3f8cd25e643c40c87ff1bbf175d92c47bb307de8c005cf3d42ea02301ed7e359494bc5d8bf587e6f3b3d17f6aefc147a90bf52ac439b570b8afe3872f34ee3264391e6e3b77edc82267ef7310302047c435bb50067306502310095149367a5dd351049fa1bf9c01249b2b7149adce88ca54bb25e55551d0dc214b82e0ba2736e6e07f29931ff2c127160023033b15583ae65580775f08799be96295d7b07849c167fd6be43cfdd801f1c16c0f84d00e0af6e65c91b57f47f00db53970302047c435bb500673065023056f497199e66fb59876627fffc36a7f8763c1a21e350e813f0463b2b9beaed774b08821ee13b0d7c98a899cef501d255023100aa6c25b07aec606ee8a4fec49574d824646937cd49c4a1a09e836de9162e94f0bc22f2b48a1e9e5069e13b28a843b23f0302047c435bb50067306502305ca0576948eef3db00b7d38ba6d5072ba45f6e3624ea4bd896c082e18d0a82a338cefd05da615f8c9e9ae3ae850ea4160231009dde074e76ed5f9a8e3a6259e3b418888c9ef9a23a84201eba3541eb7e999bbcfeed7688966f3a29837a2dc95b6e35d80302047c435bb500683066023100f571d900f96566d792a5a1e56dbb9ae0f354c305c90a360a19a173c92a47918ca0516cb8b9a4891f66ec307b18a04a5202310081184a5ed7aaed7008a0f5d93b2f4aef311a79f5e6cd850f27e75678c1e8b5403b52f4edcda86af8beefdceec54a93290302047c435bb500673065023100f883b4616a31e8b57f94193e5280610ea8cf6aefef9d8e1f59d3201c8d86a2904566f1c43509587a1f4faad12c706731023045e968e44e9462f5d4097d8e12328aded4a1b97e7f0ac85118b7b3db185e35c0506308f8f03aea1495f39e6b79fb0eb20302047c435bb500673065023100cd7d72ff7174b30a771304283edf36525721aa5cf9223b5efbe943019b7f20f350d7785bb2899483f43bb0f4b6cef0ac02306ed112a35054cfdff0d9d53b79d306a71a8376d889ecc256638e4b18d86f64587b14cbb5668de7298a2f1ffe701b13040302047c435bb50067306502304b63a30bb04f965b4a2f015823d8c5c1f0bf61586b602801ae4b352f2e06c3960e1e949869529e81008a6c34ce8d69020231009b029f06fc0ea6f7289cfc51f161fbeb6fd20a3043b9177990841c8d83d28342a85efd095ce8e0c0697a4719ca70186d0302047c435bb50067306502307c97a64e0fb46e360bd638ee7eed536d0a63be24c62d9d4edfcec7c48a52a7239279c6a23999b28e4fb9cfb646677de10231008dd690811efb03938dadec00acb88258221adab8a60016eac42cd0b2fa9bb1db6e48a2c06029ca0732fb9272f07830b50302047c435bb5006830660231009c80a3fdd46e816cb1c53c85fef17eef5759c8416b81bdadec42c3e2bbb2d940bcac601bc8b2a3d32ef419ef9c2c4034023100f3ba462dc5a022d93fb168347976c1be971230b7d58ced63aa338d252b73874b0d56d0210a6461da85bbca50dd77263b0302047c435bb500663064023032dafdc0790a6d7220b77265ca0198c7be25f6aed055a58ced65042e5ffb5c8205be50eb1bcf44c26724e4bf8a3f53650230142ae6e20b876e280f433acd493e1de491a8478cbf663414ceaa5dce54f917f7b075a8009575f7879aa0551e60bda90d0302047c435bb500673065023100cb41088f7d6cc2c6b348e87208e642cf5f9ee3950c64e9c0d1d2dad54b205ea5a877d955bc3d5bf0b1cd0e0030a3f1d702304a29e40550108eb69b0cd3e03d89b08b2e8c9faf27fa46301f50e2e5b0f53897f462cf394b890da7043e85ff41aa51790302047c435bb500683066023100c5f90a5e3a5b0ba535472c816826542e8620a8675c33bd070188954c49cc8eb5de1a22e4037b8a926bcda0878f6f3963023100bb86a633fb65e1a4c21732b269c5c132a1cdaf7c3d9f877a19575a040b2cf1ff3e9e4d8b0227b0afc3c3f8e18cca92e20302047c435bb5006630640230209e570fe78fa92e8bc252f9037acd2809765ec66356c7ebe8afe19984af711c46f755f6f66c58ee6e632840d208094d0230425a55a82c81fd5a49fe48a01cfb5901b57369d27cff0b03f60ae5940e074af4af539481bea1615c08847ba2c422588c0302047c435bb50066306402304605b6105e550d7cd7af83b3d76cc2c02942472a0a01d64c554c6c3245e5acd8f0fb0bdf9f9544e609e03407f057912902302020bb3b57460c39c6bbe47547f4a765c2f8f90891aa0242e8c6da82a7455caaedcfbb6a5904749d051156c8af0443090302047c435bb5006730650230323c021a32d49f389efcd9c1427c072bff62c77c50a11f789a0f3cd698370ae8050aafc8dee4e83059a8e5ad8a28c7bc0231009e96e4aa4969c393ef8d91c729256383086eea79682a49121cb2bfab7811e986bd384ded075754385c8c999421149f6a0302047c435bb5006730650231008b18dcff8059f08a4e99e5b6bfdaa7e5bc1d0fabb55199c6891c1037aa066e8de53465261cda6b668e981d633fde058f02302f41d2a3f605f67dfe7ba3fea281291edc44f1769fa42110033a7c6b7cb86ab5251a4d3fe85c78c0bbe9d7d03b8a77db0302047c435bb50066306402301a5e1db34cc88a024c2b38d04e30c75575648e98749030824e309f1cb8d949e34517761d8ff508739b3b3b3870be67be023006c13f825f9cd4e0660bffb9a73440895f3d7f94a3d19a2cd77bdc732a6070220fbbf85d54c7f9dfc12452de70d710360302047c435bb5006730650230182ded5ca03c14e72b8817ed168f7fbe1d820fe30680d9e11bf15578376a541ea360d4b55257b55b5c61aa89bb8ea02f0231009e42384f7e714be9a9b6ffd94e4f6f2555dad4a0d1949fc7ed19fbcde16b85691a9f3dc9431fff30ff0beadf104e4ad60302047c435bb500673065023100e3071c66712ef57f32a546cd7bc632f901b95a0cbe46c283bfe0641f698a60014c7952d1117d370f125d57eeb61bd0ca02307896fddebeb10663c65ec9643614c8e945c7502b2e79d5da65aedccec05292c0d08cc15b7341ab8a3ec18b408171ba190302047c435bb5006730650230635b8d04f1234d5438b1e9f05f68f34fd9d2e2a698a7794b890b76537126332e671d994aadd464321851c54b5747b030023100b06c01e9aa4d1a7d81a64f00e0a515d6d0d17158d8272c7aa91bc2fadf73416dbb11d3117da5c7fa50d9a5c178bf42ba0302047c435bb500683066023100872675a19f3d78bba20fa3b673bfa1b47773d46cc6b40770c084d4dc8d80a6d0ddf822f18975f004479ed8b4bb017df5023100b7cd88f99e1fb6c57707cbddd0884e89b3786199a8f54707890b0754ade66a00762a2b1d889e92aaebfb28411b2ed2980302047c435bb5006730650230499d4dd8e6e7b6948f892286ede95402d1f279b1676d488e8b4d4f227c70045e22d2d98e2b86f7a809757272b51183a9023100ebf51da1fa7b6f95f613358c7845715be1d542bc382a7c6d3bab9485a17db59a0dfefaaf4eb1d47dfd000332aaa7f90e0302047c435bb5006730650230627b38ab8afb0ad8a2d69328d5f070326e3b5c0d1e5d699b032cdbdefcdd93344d7c456232e14c97762bcd73c1f90c19023100f4c51f0cce21ee3aa401a5c84224039229d49f4126abca64accffe41883b3552a620bb7b2b13551fc95ea00c5f146d380302047c435bb50067306502306fad3526c307bd830b913f7f7bcc2dfa338fded3584b80e388121b90aefde0346ac6c1764737ba4e079bb97881c00a30023100b5c9bc9a36f234c8661391ec29a91a174c3b6eaf04d1ccb49505248dee59d315834b1a540b59f1e9e051ff6ebfdb9c190302047c435bb50067306502303bb3bb289f6c789af7577dcbbd8aae280a0d77a34b14288da6d189710243b5640a76d8956676e42c2d992457db0ecd9d02310089b212cd75c8d6a69bf4e36509ec3200057ba1e40c128b34dfe0f7c37a64c0a29163fae31b305d3b1f11f343ae6ac3ce0302047c435bb5006630640230572070f59454e4d494095810aed174f0dd8d20589620f1e23ab33069fb338563ec421cb83fb73b2f583ce9138e32a3b702306bc27ab275e07364cc5fc8ed8bf4985d9d385dbb20c6c288daa3a5caa2bda8c2ab27b564757896e623a5c5c69cded1ad0302047c435bb5006730650230162264bb48ef85530a4e0eb43cf05b5b3d21d66fef51f05a83bab824fbefe587c49a0be12d7b8db3015217c2480bd74a023100fd7fec8ce81dbad35668a766f8419b4b5704c7bac5afefe83e9212fc11f49a7f64c2393eff6c64ea32cf9d1e70ea6e420302047c435bb50066306402303aa3acbcde16cce3755e5f6cbf587955098df1c92f7da5ac3d128dc8c386beb4ade3217ed8f849e297b850d301d6a0f6023018a7fb3efc6d0043b2d2997f1d085d44ab4df38d70831d52c341735f27cb6370a4ab81e0b5a1d2a5c0343cb226e67b090302047c435bb500683066023100c8bcefedd1a953d75a000ff299df53d1cc201611b789970b97d4e277d0ba74f6493e0e8ff280369ff6919268055e9f0a023100f139e9f3719fae65f1625a8e019a319df0e9d714433beb4d5a45cb8d389e6ad8e53db375522d84c2c95963f873c4eed90302047c435bb5006730650230380af1c3fd22f9f16910e2f95cb765b9afb2f4dd208361c273e46d145a3439447df339716e095af9b262a7b9104017d8023100b17cc6e8f9fd04ca11175673ccd1bb3d66079bcb7eedabe0a9ed232fff8459fcb0d136edbc047aed76b5f49e90b2e5760302047c435bb5006730650230766fb83246cc57c934f86527ccefaa65767b299b7e98bdd9369b19ec28e61e0a7519919bf9408adb4f82af83a2347cf302310087916f759a47d49d0f6fefc915ab8fc8fec347efe5ff0df53d65de35fb0b8d06b7c2f7bfbc0e6dc7cd8407a7679fd69c0302047c435bb500683066023100dfc6d7dea994af22505a52a4efda1fde4ac82b5d25d257ea7fb73d0fc79829a34ed3523ad2589db833b4e99417abb904023100d6cd18e76a3500b40ca90d86fb4e6902f9a454f940ff6922aedd311c6db7a6f9f42c29e23c82b9561095f0d869196bb30302047c435bb500683066023100c8fb2f12af09246d23828c60ccac930770282db784c9149b4847b57d69c7591628f6ab9328cfa3003b6aa2aaadb18099023100e45a6ff5f57c4746ef922744f1306c7805f8b629ba03d0171f47fd34f94666e494f72354fc077fccea1530d3751dffa30302047c435bb50066306402302245b04280db256158a76fefdbaacbc21bca5cf06402bbd59f7b95d8b72539815a1cdf95fe1617cc8b8c25b02814989f02305b58d92ba0b80be931bfdbf19460eeb27b6cea24398f09fa5e22f647e9c982155a8a3b6149dde87aee99ad9c7843248e0302047c435bb50067306502304546138043bf264a6b40c2ffdf923139eeb557e579d9a49678a06d348099b157bf42ba005cbf106a459b45d866a98e37023100f16ede97c7178b0fc695898cd9acacbce90266c062c583753b255f75599b4b2beb0357f98a59311b63a72da59d9e411a0302047c435bb500673065023100f7e468186fd3c6387874c7334ba8e96371ddd8bc577f33a1093a7a0c0a6f686342cf40d541f221650a83ccd25a6c9b370230772a3f6bf920a736732a4148d786f9e1f3adbbf9118fa728e605a3e18fe91ea21300fe3c2dc04aea15c13fc177eabba30302047c435bb500673065023100ac24ef321c0953abf5e109ce434fa846da0328fb8b13688cfc01c882d3db91ee39141cf6a9800afb28e1f54aed94d3dc02306165c2682b7b763a8c43c826a0bf3244f53907b9dd17e9e797037e49fc40a9d4991d8a31f6179c058d8f0cb768b306570302047c435bb500683066023100d4b9eef74095bbc468ebee83b6c605b4d12b5cecea861a2f2f23133241ca201d254dda4f4ea79f57b7d159eedb3c67d3023100d8a6a646deb361e70a4930e3b53c334a793961c6542c7c01a8f232fc28a8794aed5a1fba68449cf57a5682b0962be3c00302047c435bb500673065023100bac22a7a950ba5b2ec293066e681607c67b25018dedb4e3d298d4272c188a1de6c0b2eb7f0b6cb09abb83590f4e1511c02300177a428c4ca922d5d13ea0f80b46474e89b2d24ecd457500a955e2c95599b9e265f12590c2037f2fe95271dbc43a7190302047c435bb500683066023100e96e57b90eaf3cef3dcc912e83118eee2004eaa8b5b65f48d82bb6410a8750bf05a0fd3094022ae159322dc466d21c0f023100cd4e0a65f3b31d06f74aac45991e94a52a6787d5c74925cf42e7bbdf863097395b084ac0466e8d84725b38995a68c4e70302047c435bb50066306402304cd53a20b2c3c10a5ee456d890ffbb38c8432744226679d0c3540feef8897616769d66e346fdc264923caa70376f0261023057b1ced9b97bd0b6cec4a7a1f92a5522f6676a32e81887734faca80b0bd5e5e127cdb280144b10ccd05d47f07c47d1330302047c435bb500673065023010e670f4618a5b7f55ccdc6c79677721b2f7703a6de3a05583521412c727aa46928c452cc8bed44d3f5a859bab01d2f7023100aeff2e19042669186bb27144b888e82809224f96b7cc8394c629fee197f90934e1dbc752a820af397b8ea0bf4a46fc2e0302047c435bb5006630640230080252fcd63d18b05a2cd80ba2b235b6368c6827f28ede7b07eb726e2feb6bf884d03766f2b9decbea00367ac4e66f510230317a997b05be970ec12895821d900f21b7b6b3bec7d86b0cc86cad16cb3d11d76f5cf3e4b2dc90f521130973fb52aa4d0302047c435bb5006830660231009d29eedb88aeb086b7e4f8cf9c9589ca441659238ab3dffe14739f9e67db2fe8f6cda5821edc3eee916d07b0442d30b9023100aa2dc15029faf6553dc19828a7141d5a65c17fa23fe79e2d853868616dcc4006618c8ee0e34c76707f9879c32eba52170302047c435bb500663064023078867dcce4ca9ee3a99670c67e76b9bf95e1b3272e04350128e5d106fa6e40e94b7ea20cf4c8a1d28aaea4d93c9a881a023025588751af156dad146157eb1654adb13b87546639febb587b0ca052338f1fa2ba3dd7ef823d91582f5c6945b15fb2040302047c435bb500673065023100fef3a93517959ab8c7bbe19e1456e6ca9cd0011105a4b6d72d085bd15a4c1420dfc4bf66dbd975d6146e6f8239d357db0230632a1d2946ff81a9175f878d063a8edde307b6e34ac4cce83bb85cba633d0c741633accbf5508d242afb76dad1685eec0302047c435bb5006730650230748c09a1d0f66da212743466a3c6acd2f721c475db3d8535a3a6e9c5ab65d1bbd7d2827cfb325695b1164ad67ad20215023100cf92281f6044d1fef1c8b88b49eb3deaa36308e10e996fac1fed8f639c87d7ba3c976c0a2124b35d69eed9ee4eb7d7950302047c435bb5006830660231008525622bbc4efeb7625c223b391f5198a85f69a7a698d84265a2ad30af555c274779b26c5159bf0bc0edbe416df9ef90023100d61c872b16de26b9d2e1c7bbd0d4140b0779f02f2cf8fa322c185ba9a11b6d374ec6eeb672b17cd015aab9bdbc6840a00302047c435bb500673065023100c1d1f7abfca8e72b77bc87c93535905e0a0d135912a339d68862f1bbeb1a33e0490056c6e46832b5e7e612984ed8fc6d02302da7fc2f2a83fe58782d51befffbd05b0e123014df6e71ad79836c085311a46f9f99b98e0a86ba5b6e83cb34a3e0bc470302047c435bb500663064023075e570df56f1d4ae1771e4dc1814815383875ef9170e7f587bfb77df708f2bd8d714b635c819930981ba491be2c587020230174c93d4d3dec6403d1e01689b55e33e1654d7c66ea2d69564e31684217851595d4227a1eebcdaa982739a6ced26efda0302047c435bb500683066023100c7b542ab68421dd17545a39e1eb10ca386ea79ac9487726d3afd7411ad4c7d870942acf19a18d4f6f8e94a1cdf2b79f1023100c8cca4e3aae44812d4e17d9830bdb27f738eb49bf1c0c00824c812040f3d344158bef8721b6eb6ac98f6001e90eb2c7b0302047c435bb50066306402305129ade54b003ea867fb38d1324bc09fc13f0a28ba490b29117d4687d1159b115bd64450fe07d2d5e897285bfadca49002303ca7eeb5fd6edc89b8b8f55e645216e712e88987eef4e3f652a5698191701f4dfe8a69adfab567add89eb95d72acbe350302047c435bb500663064023002c811cb1230f17eb6d5e71590b7f48cab76d3531c718029ec7c600f1dd9acaafa724d7df58d39cca2b0950dac71410c02302d8590415ff1abc3b6a8deba96f64a3ac631c86dc8ee915247f81d44ce8b22fb7f3fda38dc47707d6004e7376638875a0302047c435bb500683066023100b7e66d5a6a7b27b05d755d7ac886c6f73de6e96e66d9bfc9cc96796c560d126d1f0c9dc03dd697243ecfdcab569e9632023100cf0dc8206a47563be838b4119721fd8d12731b920e9f943a96a2fdaf4172148d14bcbe8c0f91712a45c8f77a53b3c6590302047c435bb5006730650230016966086a7d19a88870c310b5fc9fe3ed7490d278582f1f5d8b0087a5dc6f7fc1ad61651f2776cd2e32fd349e60459a0231008c2922cab18fddc60be848910624c97be6212d35a789d910165667e3b39354f7f91656bccd80d8a4accd04a0be8bd0ee0302047c435bb5006630640230222e76c665e1c9245d3bf52385ce1ff6543db7dd942733cdca6d0761bfddedae5d16a3f6ce8e95a2e5e170ba4b24c9c1023034f0d06f3b79d8054ef87144c2c444f95e9596391920fa2e4fb138f98989e92b5bfb22aae687da0cf91cbeabe5fda6610302047c435bb500683066023100b1bb1c088e2842f034883b52ff05d1a6db15ad4246c8259300415b116d852c73acdf2c4df38428e4cf057c2692a0142e023100c92ed390abf4a2943988294c632b7841f45ec77a80016b71e0951fd287c200fb023384d0036fedd98b4169045723bb620302047c435bb500683066023100fc11dbad44568171177c97f5d2fd292ea54fbb91742dc7bc60d08c55a67c1fa129f1cb23ee4b9e562d9881dfc7bb81b7023100c325138eaab0c24d4498928ef6d576afac8f28e68c5ae2cc79859047303084a5ff66b926c71e08567ca97384a7affcdc0302047c435bb500673065023100fd2fc2ce7ec1bc0962afb6acc8cf7dce629079e6430964c8851b4289e64c69942d957f96444f2972d0c5c5f13e0a05b2023021dea63c1cb37b9cc07cdb1c9b4830025619e944448b08ddfafc64eba753e3470a266ad387ca11f64d338872f099bc350302047c435bb50067306502306d2ae7d7a1d6e550e14415d0981d062b8ca99352aaa7684d789a5d2ff270008fb260eb95ca5c2d371518f0a1eaeea857023100c7d7dbd6ff6ba4c4bab59c30338cc22f96c4e4d2e1dc4cdfa7c82efed7ec0d4b081a11313ba18af62d04df034bb3c8ca0302047c435bb500663064023047137209751849a4a6893b71c8bf797cb517717d9edfcc993dac4fac68c462e416782f24379f3dfcd9fdd1152507548202301b8e9f9a7a510be65f34cf347f01a114939d0659f3237a51fe2044787c8147811ad39fa489cc9ba878d9e128a0d3aa730302047c435bb50067306502307a85285320d106c875ab90f3053494350739f8b0a56502d8e947709a796d8e2a8fe25ca59123b31578b0da8ce958eb54023100abab2d4e5188eb861005a07490c7b1718920bd461c36901c3b7a90713886098244190c8cbe920c2c02c7056d91f518a20302047c435bb500663064023060c5094388cbfd8bc96df211a0171a65bf0d99a9633362edef4149b31fc17d6a2af01c763404d134ee45b23e1695451102303f0a62fc6b975eb74626ce123975b71ddbeb01e4403b5e7d391f26b385b90f465de692ae55f816bf23e5253ecb173ee80302047c435bb500673065023024422492ade0e54749fce46979af76351cd5cb018f6a62479fd4b1ec2c2fb47d90ec2251c1cb62f0dc2c29e97be3c10f023100dc18023c763cef3fedebffcbef89de2ceef241620d9ee76476fa241e166163921e6ff229a3b939ab75b6e9e4ea6a4fa40302047c435bb500683066023100ca043d3623714594da1b0c4893a329bb25f6ce23cdc1fb48c479782286c93167a926029ac9846558a0955f0a78da5cb8023100f7f542866d24f435f4fe84081cb11a95ee49e96e37cc559038604a039148dec6a69dffa2818ff564f6a450b9f6823dfd0302047c435bb500673065023100e9f33cb38dccc2cb2b7ec8c8b438dc2816cc484ec6b97cd5e1b376383808a24580fbed73eebc37ebefc49e10f9fbcac70230157f8f89b39022bdf6e09324d94258436befd0fd87128a83e1ada71038c065820d02342de7121ff5d6a51eb091a6c8830302047c435bb50067306502304b014d017440aa8cbf49a8222295e03b27fcc531099f17b6d1c51c87701d26e45d83322801c1ebfc5447fdd74aee4193023100e96053ba46ad26c9adeb43f9ed25763adcec5e05dcfeeff8889373af343a56cc23e852022db4c685844a58bf77cc1eeb0302047c435bb500673065023100edc6e02ea7b433803645f53303b69322d69d905d3364a92c0829363ee5f9da69ccf6e6af5c475625dc23a48c3ff387a802306ef4cc80f7db18ad6bab2d7041055dcd1730adff23a49664c5df98b321f96d5320475500a727b3a25ec3a0c8bdfe4a270302047c435bb5006730650230639feb62795b5d31b260f090f24e02290481d042ec42f98e429a6a2aeeb091a5aeae6f95bf07c2cf6ec0732568b6791f023100c8c884262226788f26fcae375a930f87b30222ed4fbd9b4c0896b5ba7d4d33cea2b63ecb2bb75f19d351c60e103936420302047c435bb500673065023100a684711ffbecda6a1e3058a32b59ed0ed03938c07634cdbdae2710bc5ecac1760d553ee045d70f15ded995513701ca2f0230757de3600b40a9b98f7dd8d680325315e33db37e946b5299e920b0d86a296afc5b143669a5b7b103da1a3847adb1a0130302047c435bb5006730650230692ead4c2d8763f712bc19a51c67c6ed0134f71aaf6d49bce9a36188fc7ab0804220c14def794c815df713de54cda615023100e1a9a4bdde7245e8743f5def73fce6c059e6875da9839514027b5897d4b4c0ae23fd674a7f41302f8b3731705c778b0d0302047c435bb500663064023076e69e89b8f907a3981828e3ee7d27503352a4fe505cec5838153ff18ded8fb1e090421ccbafc41e63d38ebc84037e5a02306659583a29b49d59f84a595a4a2fff0546111de8a8466b6241014471358d8cd1e74f317da90f7de4bd623be6b89ba6780302047c435bb500673065023100ee4399a2a57a7a434977f55224818e885c198ff1e332588c1791375aa23e8cc63c1d59ea55a9c239f631bee1104e4529023036511b2cc885ac7db5eab0a83964c099c6ba564e3ff1a333b0d5e903a3d1f960eb7af18f0f7bb17e490bbffc28e40bf00302047c435bb5006730650230558ac9d415f4f27769f8e8ba2bf5083c29ce95ae6c438588f87ba9b9213de505e7f038d7cd347904ed044d297012bd57023100c7ce482394f0bedf0a30ba70432969b6f9bf96122277f6779f583fc88f46a69fd6afa77be0d1e2b7d440a0cd3738af7d0302047c435bb5006730650231009038b12c24013935d04af485ceba03b48321d3924b0a0b210f949ddc197604d171c31f11fc7da2858676e3922f9507c5023027e8122c7b48b0a3823e4c556deca95a5ab56086be1a7e376ba1e3e7e8fd14a6b3e466550b7a1639ce286575531b36f90302047c435bb5006730650231008d594479e1311ea0df505e97faa53931f27992c3b41d65495ed48412ebb87a692ed74c359181bd63007fa7cc5e86148102304ff703d202b0e4cd471845ae9d78a59be42f8fd033d6611ae8bdad26b82984b14f3dd842eb0d0018f57402c2f582ad4b0302047c435bb500683066023100b6f0e78868948c3a18827d1df211d4a39c09a3b51fcf504d34fa3578b6859f4d1b65e9f0615ac8e6f3935a5e6148ced6023100949518bf6c62ac443858f473d80ad423561faffa281ce3255670c0c3e2bd861fae5ab802d6e8add7d3dc44ab0f06bbd90302047c435bb500673065023039777eb2c34914939e42ef04355aaf2a1cc3b97fa9eecd7ebf5aa1afb6d571bd04883ac4806869cafa129712476ad090023100faffd063385f84c5d830ef13ea2e26f217a475240ff37a68efb7f104ab7fa4e6e331ccae4f069c2eaf04eeb3beb579e80302047c435bb500673065023100c1a481e147110f519233839adb0d023cc79b628e4ef2bd4560e673d0928e2d76d1d70700018dcdbc7c89a0fbe061c35102307fb14971ce353102c139b24e9d2cf00c99cafd6004e32d61a08bdcde6f9514d3d330759bed93b327635232f19156eae00302047c435bb500673065023100a69a3422c34bbb6a5fa85cb2bed54785353550120fc901beec899352b14a3653d75127a97e9a52cc48e6509aa4c4d8340230798ffcc22510bd1d1e835908f2b9d31fe43d3c49029dc3fc3c0de492c5f54a120a2622b794811f8ca21bd29e89ff26af0302047c435bb5006730650230627ddb1d16d98aeb9e0ca6bf2d42aa9981549930e88459534cbe3082d0e15e18340ae64333883c8fba685e877df5c40c023100865271061c8591a4b8732b7cd911562d3aa8d9c9470c6c4717ea76c7bb58bf7ffc14f8ffede17da0521b6ae87c3bb8a20302047c435bb500683066023100aa1caf4619e529d8a65a2f0d5c7ccad1967c6ac130267aa17e53839a1c17d73e29bd2a0a47ce659481300a77d06671d9023100ad29a7a235a739b060c15b3ff7488cdc5958d4778bf4dc4bfe9748b86eb06074ce903e2b54e4322279b6c756e4c74cbd0302047c435bb50067306502304af0bd3f5d68830618a350450030f913cf81f8cc80d47586817da6c06a49bb491a99d03c7a7c765af4cd01f85e4f7dec0231009d147f52aa6e79103618805eb02ad9bf087875844596d22221472cf4cdb1988ec19afe6daa24a8aed17931367b0d14910302047c435bb500673065023100f421e2b019ac066f093461f5973955f39b492442c4ce48f64f512557595fd90abbf7c1fc2fe419ceb27954e87a6ee8c90230586acd8fd6b751a1222abd8dd4a1e5cbffeb8abbac7adb984fd0f55008e4856e94be71264f576f063e8982bd9bb822460302047c435bb500683066023100b37df351ffbf0dcd406af2a1818274933bc93badb59c41a5bd3e0e1abe45f86d546f3ac520481377a68115bab620cf83023100cb169dc3102449352a416eb9af3d131b5bb553a09f2f4de8024529bce528157e4f3c2147af3f7dea4985fe94cbcf913f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301207190a1d7cc35abd5432155d6103e5856f549a2220b857b27a2156b4b6c76c30762dc2d5cb527803510e2efaab067d023100c7f0229726a9db74ed3d9bd319ede0467a475f5c1a529b856c8b1e77c9784ec06b10facadcd2ab28292c2a15d626eb940302047c435bb5006730650231009672f6a83a2fbe103a76a0be0ee952033142ff1cb6fe6d402b2bd4cc8baf52d0c56ffbbfd0492d37132fc229c3cc6cf002306fca3d1fe26799c7ab46f8dae9a88bc44427c7bc727544e54ea72f5306780cf778bde95bcc5aafdd5d2a436bc5eea57f0302047c435bb50066306402301d3b3025fe39cb6590b8dfe6497f6b658a1eb2c196b42946a9d1270fb87185d6addd6d788a0843547c94cb79b77227df02302b150be94c17676f6282ad7e352f0f7ef860ce084cdd36fa3dc828fdf1febfa26f4785e1f0b0de2eb5ae79fcb8f6f95f0302047c435bb500673065023100f439607ef7d042ce96a8baf3124662f54e47a9e3821956c388148485de0f04cdf14231d543528456d533788ed096059c023037c6eef26fa57ff7b2ccb90b90bf4a873ed510ad2d57b29a5f2bc20c127c495d25ac3fd14fd733d15b22462c301f9d120302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306f26e77b6ffee1b6e6b3ed52ff2630ce9092ce447671e2f5d21fe68fd88a60f9d6e06588b67a42e506926d6f08e6464e023014a2077dc576b44ab243d4a449f84aa86dd1ae1747fb5fff56df6a77125facd506ce12bba82882d974da81802342476e0302047c435bb5006730650230528b4e9bc31a8f8e4405775a5e8587949326b26052e1535691f9464d4129ebd33059fe5314ae73ce9079e7c2625854fb023100b8b3b545e761a870b3de589fc61ad05c6e8bfefd2637fdb7c35c3e113472210bd83e1a32a309bb08c13bef70f0af512c0302047c435bb50067306502307f097c8b0ad89e98b905b8993c6987603d6354fc039f2308ab9b911fc5e1db16a1fc0fda72112f382d02864db2639ed2023100f8378b3964d95da1500fc781445e721156fc201651e4dd2989a6e2b447cea375ad25867da9e0ba84b5440551ca7f744d0302047c435bb5006730650230572449435c5e27ab75fb03df4700f3b0cce33d42fc546cee947bfc51f3f902ee005b09cbbfa0c77cc0fb20abea28f96e0231008bd669f352d9479c080b84c003583d4a3c1f598af47284a262c6713c8ecf036f81621ff379f1bbf856065ac12f2838b70302047c435bb50066306402301d49672a2026eb3986d01d7faa317c148643d57c9a08f3d47b64131de23c31f3379a5e77e3b7971b6712d3d220e2aa1702306a5067ec54f2ea8f5246306b06db1020e559304ebdf7f7fc0e81a4aecbbc4784a46ef983973403b710c9a7a9926392240302047c435bb500673065023100c9b55634619dff4dac6a85468719b2a4ae5df8ecefe6d8d353b30bafed8b0fef0a19618e8d83033f387236cb44f8e5b902307407fe248071e8148d1753745a288c97fd6e3e01aa41a5ef676ff30fcb38df1e8f586624e3d408992a76b762888a54090302047c435bb500683066023100cd51fd1d638b340825193c3a11212be0d7df3085e029d218384b411aedeaaa162c0deab3073085968aa939bdf924c1f8023100fe4e2dc2f8176546e020387646bac1854b00e90f7cd460a7a0ea50c21f2a733c1cc571ded28501abbe1ba115bcb90aaf0302047c435bb50067306502302cd06b9efa465c07804e179bcda8380667806466adb04bc7ce15938f9a5b21d4f144093fa9bac0923c60a77ab2697d9a023100c65289a87fbdd8a7b3a8194873bf2062b5d63d66e16470847dec0d0c255217d38fe78fab4a9a9279f904df25ed6b65810302047c435bb50067306502310088fdf6cfbfe9c5de5f1176677c8d43989678e7f03a1cce111d370b6f741854c2fd3af52aa5fb24db6d41fbefd0b4edd502301b77a22843067dc6bebe44b01b500894e7992159085c48b28fff8483881fe38d575a448463ffdc40ab6416ca22b9d4d10302047c435bb500663064023038950ce339e66c023d837bbccedf46be9a37874eaebe62d37f34bc4317eae31fff0ed026d4ba1c6980d102d7e546537d02304ecc3e76fc5ed6a802cbe3aa6a86c543a1fccef72212105ee84857e5e35b2b63299bad9b6c48f6fb472812eb217b7c010302047c435bb50067306502306576836aa8b6cb13b8118234f310490228230180ce985017bc86e7b413ef3857fc6ce33213c34d3e132be869778629ad0231008a029ee5acc29837beb873d72fb960c394ebbf0c1f0ce00a3ec059270bfcb525c90c2c921c125a10d00cc3c4f0ad2c9a0302047c435bb50067306502305316cee262a56bbdd5edd944cfa08748e79a207a7b4e25d8b80f54bf4343e5e7445f9b22fe5ab0005a90917893707be5023100922d89e1e0cbe6e87502b7f1ceaf60a1f281aa874b58b39ebfd57d11ea90bd2fdd53963f195f9b6374d6f3c571c7797f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f15f72c3052dc3f96025d79a7d674d7c4924d96ae4e204a0831d1e6ebfecf3029fa96af9a74eecfe30c928baa67f01540230647f91f5c56f6b0bca038a3b1d516fca5d7713b2a5f559b1f5c8fe438ae0957e966b216fb5a6c084be93664a19ff753d0302047c435bb50066306402302064b2b91ee49784696adc462eb4847b6c07d2ab44ac37129437d83602566e105d32620a1664901902ca91761c170d3002306699477664773dfeb7b580a38c6b940b2fdfd7963776b3607a8fbb775c4abc20f24afa1b70178019ef578f3076e030ab0302047c435bb500683066023100b02738416d13dfdbd2d9e5501acc97481d485229e4c1926ff04bc54379b45ce7c4c8a012f7092ac0c87622031c3a4631023100bac8627a2daef61e8ea9adcb9da65481cbd77aaaf8038dbb39681d403b85fb049ccacc5a0d78093466335c4fc20d98e00302047c435bb50066306402305b6d8f66a0211d7cb2f623a5488901a8256b3b19ecce51ee47bf0a5b0e23d4fc130b00415b69935b4c0f4a22def75cad02306d9cc74e387b91b3bf19ab94497c87ad6a75eee5043cb642064627a31be50ec597ae9fdf2f7fd2213edd60024c0c0dc60302047c435bb50067306502303ddb1e8f5d4c55771340d2d3d7f51db6b14fa9dc5a492fb4d84a856c87a83c1e569d0eae85b2d251e3c03fd5c79e4fa5023100ed726159c17fe0b72eb7728bb9fe89bf6e3a458e973901aedf619b90d363bec6462b81075bda8c2e94292417abc4408d0302047c435bb500673065023100a47c21d8e32fe476e6a9db43b2b802731a61198b089de2f94589bf42569fcc6c8225606234cb37f141d0e3bc0901db7602300f105e9ff75d6508bebb5f15ecb92d36cb1128a154d485f06f041ec12e2579340dba9a3d72a112fdd16594fbac3d03860302047c435bb5006730650231009ac6b3ed4e42b4d0250995d7fdf0bc1e6996c2ae942073142c04ca3354cad73b4bb8a6d8c56ec41d7fe0e1167a0f7c0b02306b5f41b715aed45a62dbe7a341acc8207cbcd971caa84931ebe361e6341b26a1c447f9912acff54822c0324988ef4de30302047c435bb500663064023056704cf487edee5d48010b5a630001da4d5fd53568e17e48b2dd2607f4a07ecf44dc68b8f5fa7299a551e72088f08c3c023045a4846b50a13fba0811be900fb392634d0c4d7275d61bd2e20b6228a22c5a770a0dc16afac95f208c1164592e34bef60302047c435bb50066306402306efc0693c8ccf8222f87fc5d538ac8e8c4dfec42e88b127d0010727be64a83b4a7c2bf588b9eb4db9102159e2eab77fd023047912c94ad49a582407d2126e333abd42d79d4750e968d9dc98d83aedf9ba60b5ebf5979ffeb7200a2b64b3de02afae90302047c435bb500683066023100bb9b3e0293119db2c336f733d4b4edd59eddf299491fe38bdfacb02a0a86d1dd795a3a4ae20f49381d69e915c5faf724023100ab7a7b1a4d5253fdf249f964450108c932842e1d92bd90915f3e032baf1881193dc3452d4ebc1b359dfb63ce04fd057a0302047c435bb50067306502307d4fad0a8d520007ee2c318fe892728ac8758d21d9ce3be264bce1358b532e4e55774fa4338f8fc802122a5511c7ec47023100da663184dfda961d62bca6ecb7b81b39dd5ad85baab088a3b658d553a23e0a6c74a6d7de7831d1e85ffe1ce0e7f0a1aa0302047c435bb500663064023028959223c716c65f768d16b42fd9840d9b6f0cb2571e234c4c58d8f81b31d903a1e7d5fcb6936205c7f275900c8fcf7e02303f5115cd9bf33e4de527ed9672449ef03ad29c0676287d9549d784b51d9f5e69eace97cd4eb34d9abdd9b4f7a2390afb0302047c435bb50068306602310091cd01c78f86b06dd1b40d93ea4c26ab9f170929c81d97759aac8a4428a204a39a639ab657994482aa6ccfef5919433d023100d938864486c657320147c30faf89c1b4a0da7034a1de30973935653cd7eda3b804f7e30dace16c25fd5104175361f1750302047c435bb5006630640230327776062cfe3944581c5aeff6d7f159b389620a30f822120a1237b3249b61481c0e0a6f6d3c2e4bd53f681e07141c3f0230596cc5c0efac8bb13186b35eb8879e8cabbd62cd4aee70ff1ffc5396f3f2a20ef6e10620ae6e025e6a4a272a4aad6e560302047c435bb500683066023100cdfd57b4d965637125e7f2f9c24fd11ad565c0989ce53f3d1904eb81627779ea062d850edb30e7cd60a484830d6793470231009ebcb1c8e6231e8e2665b5010840b6b8158dc8c1087ddfdd609be076d9b09354ad9c3fcf3be788cfa4e23b3cb036b8750302047c435bb500673065023100b9f1a7f2c27a73e7ac95cebbd78a8c01c1fcc04121b38dac4bd10f62548e79ad2693718c25af69254d28a4088d12715902303115fe76a83593c22afc29d80a35d38f54971fd24bbb469289d3c6c2c9afbb23b37da298e9c2cc37435f74b57c17c65f0302047c435bb50066306402305f1dc4028f4b9378c25a2f6713adc7b6bfeb5a8a53996e1d41a4bc49fc2c906f11fc96ec84c27035b7876fd4d7b8031b02307ed6f36965cf2ef09fa6cbd6b89e3b3e9f9a47137df87a698b7acf56c61407a595fd7cdf53cb0a24bff7ba56de1159050302047c435bb5006630640230494de493adc8a296972f5147474aca1b7bdc2e17db7929c78f372fc523f9a3ff9b326cdc5a3d959898d1431ca3bc7d9902302369cc8a899ca0288096a95dea8977aaa05e703ceb34cc63ec8e71a8cc1929e6ab901ededf55e6ea8f703899e877465f0302047c435bb50067306502300792aa14f7ac6dc0056e7a6b15d6e8483ba97e091ef1ef4a615bfc834b53f263bc157067a10e89c2bc6ad6e1698c796c023100be6ad006376ba95596a251887f058f26df2e226d529c0b0eee4eed01344a085a49ec9e1b0ce6ba8f4b9bf1dc1cd248a20302047c435bb50067306502307e4216b94aa4878135ab3867bdaddc711e6e061ebe3279d509bc0a16c477b7d6d606605128c032f937091037e4aa267f023100bb4369adf427bf4096fc8b70ed71a19e7afd9fa30ea74e5f24b99035ef976b35687b80838986f74f59c8b838eb2b12bd0302047c435bb50067306502306f774dfe79c41bd8b8fdce3d28fb9840014ecf63771bc736013155a3fd1b324539d40a81c33466d9e6047435f970d50d023100ed02127873a78ae590ea41a52f4cca734eac40e5881a40a919d1325d1099588e7c96e69a51296ac290c5038d2300e7180302047c435bb500673065023012df022f6d9edd9bb3db2d331380b8aa0005595c9f2a8d14e87b6f860a6f33fe399e3e62804455a203f03d4c91fbb393023100a11dd753e09509f8659a5024ffe1aa62633332a907144e3150b292d1bb8cdcda9cfbdd7910b23cc137eb77e27567cfe70302047c435bb500673065023100e958d7169390967d0fb098606d53a04163daafe9c4f623d20d9cd3b76b73de2256be37629cedbfc15d7d935d09962afc02305d6a73c13f2f97cf03ef1aec17f20c0da55e43dd79e4716e0b754a5fb6896471eb79b46f73358fc9badde58b0027169c0302047c435bb50067306502302ba439cc1ab369835270eb908769b2f4fd718730306fb511c3fd35bf5fadce6910b6df13a951dfed7151ae3c1b65d581023100b003d43a1c045fa646819b7d9cac42b60726e286a9f1b2113aca2ac0d81b374d77b1219e0752aa3e6b5f05acf7b106ff0302047c435bb50067306502301ef0b78501e45d98704bcec3287e8324e5af30123ecfbb5817eb98b87068e5c9ae482cdd8fb9eec14f9d6e51804305eb023100de4eb7c2538b141d25f14e87277b38a7b3da9a78856e5cb0f77e8d64ab8713c0766c0bc80b6c1a3b648a31c8ca74004d0302047c435bb500663064023039f8d58077b5d3a4524cc0b52011465335978ecbec7c288fd99751fb405d8757e97ddd7f1328251af63696bf3ad13bd102303a4a85ef3b53aace1f273fecafd11298c65988f2126e43269e3dc9224d0f0ab87f44fb1d7614e20ab19ca8369012f2ea0302047c435bb50066306402301494fa4154dcc50e397ef0a2c654d27e04c963d94da97cd14a707ce0ba3f4dc8a80598cb273f64f34267be2a946bfb1002304dae2abc6b10c85d60dbb78aed794eaaaf1497ae9360e5b7009aee7f228557208a8e06e99b454a2ac97c5ea647d9d4a90302047c435bb50066306402303041d4c5ae302199f3a7cd62797d10ad0292febd56f393362f20828ec264b01afeffe2067aaf3dd11b691b0570a247f1023036a34105b46f69b833b0181ab55243afc6c9d7d189f5b5c730925c830dc40b4cbb2640fbaa2e8e807a7f4dd81ca85bbd0302047c435bb50067306502300f41adc0734c6d8fe8135e0347ead80200e1ae41ab191c05bc8ca5e942f27596483a9bcac4b97d45a77568e08371849e023100bc0b7b54c84d2eeb8785c98379ea82d145b0640f6ee82193482cf33b442d31cc0c9c805275c221b340ed158800231cea0302047c435bb500673065023100c92497aa52119db054354afc101e72136de99c1dbc38a39449cccac96ce823bc07c908250a3d7b734e00e7c2b341c6700230091e10813e004e2d097d056f235494d6bcb573dca68ec7820d99e3476228d9ca338256b947e938004073924839ed4f260302047c435bb50066306402302ce039bffbf184d645e27d55d9c4181cd9aedab669bf3fea974874ceafe1856488c462d3b08899a8a48d961c88bda9ba0230072d6e9d4d927463ec73111b97c45f6b69be37fe34c7a810524b6a2a9e393403628576722feb24fdb7b30cd118a751f50302047c435bb500663064023006e1dab0d909550819fdaeee38db419c128cf1064a8dde3ff38a178745f4d36278cdacbe5fdf33ce7b2c402b322eff7702307fec00c64e83ce777997252e214a18bee2941f8c430864cc3ebbca2eaf8a42dfada002d8e80d9498d061a17f3b99dc0c0302047c435bb500673065023100ba76728ea058f81ac9c33af463251c57a8cc351b600115e20869cb4c65bfb1df569a4b99876eaab2743f481959bae575023073ecd3406d29b245e3bbb010dd5fe2a33caa5ec77013227d20eddc474b5b374b80d2e86db52430c0b30c316c33df01230302047c435bb500663064023057005b24047d4bf4b83caa4652f76a5e8bcf09bfedb0ac5c711b8638f1d242a08a739d14977df000ee5e82339498db4602303625982ddec1d2747143d69a4f8121b796bbb93010ec01f0d139c0ed7766cff80df654e056d31509518594709fbb722a0302047c435bb500683066023100b1fa106dcc734a887073de71005e08b7f4b4cb8ca0d8f4dbca01973fbad536342d33dfcd355cec90d0c15364fdf70717023100c2cb21f026349bf2c2435df1485adfbca2c1e36fdfb54ca6d83022c0c05f5f869af3628b23b5c6d37d16471e012d78a30302047c435bb50066306402306df1441bf3fe8aabd8e3bd758f062778bf70591aa65e784ca4cd9d6349bb74911b6bdb3cbdcb29ee27b08890a0672e890230609d1ebf0ce06c2ea825c568eccc001c784fd9ba0e2b728f4178ad89389a7e025434fa20694921d50b6feb66e0a30f760302047c435bb50067306502301f098fc2c66a2eaa9c857c8ba24dadcb23cbd28bf06cd68bbc5a443b5b8ab5545808191f63291d6e7abcd3ce8bbffde8023100ebe99ea7dab45b5a9ba07644fa9f1c2f6a6408948e3aa83e479e67b244adafbd25ec2c99af9e3fdb792d42d31bdc9f020302047c435bb50066306402304f5669db14fa0e5365367e5c7ee7f0851c3f00339dca8b6592022aceca4811d0f916e90eb84670178e1393b981543896023044ac473a27817ec7cc2d1d2fbda7d3092a9ce179ba6fa2dc0f20c51ff9b86a04cf841ef37a3d18b6c8aca5e16f5481db0302047c435bb500683066023100ed110431927307673c8403ffcc14d62fbee6bfd97cc31a2f674a4342d60bc4241707d81467b7026d9b0a9d8a71910608023100e698decd478cf1052cdf45b8d46f886085021e0b0ce32ef69cd36ba26a885aeb171b6252a1b304e55e9c69fc1899f1480302047c435bb5006630640230475e899492847dc3b58394631b8d07971a1ebf2badc5e8ee64b497f36d0fac1f689326aa14c26265226b87e0e3ce4f0402306135f5d685c85408d205cdbd1e574b8618369f0fd0fc4def7994789e26f084ee841c1abf69d30c312c9b2e633e6db1140302047c435bb500663064023071c8f690f4308fdaae44f381926c0f487d3445d43bebc7a3c6657e060d76ca455780a53d148c7eb4b58fc45f9c14cfcb023044ca5b7bcc3a57e246b0da5563287eecbfac84c5d36b715219c52cb8deb683c4780f92d00309378430ade250d2a4b07f0302047c435bb50067306502310083cedb779fed259020200027b8e7919cf244739d6bfdf472f1ab30d14dc2587805c5d5dd3d6ba5d350cdf212267c7453023052869cc8dc360bb7089e000cc4b5fb6374b19a9441946d217ef612920eb1739afeeafe58a45734b6ef63c65755d5359d0302047c435bb500683066023100b263feab5dff40d39fd7cc8d2e5f94babae3d5f5d0711b45270e1d6a10ac42028fcfcfe7541a5c6bb5489ba89a6fa0de02310080224edeb3939cf85565e0ef37dd5ec4d1ccb8fa37714079f6201bbbf730de03b9ce8c12172977176b0f5cc6dfe631210302047c435bb500673065023100d8828403cb420bfc816ee3ca4af85759c994ffaa021c45e47a4f5eb4b5973f05e46e01448a89d5fc641f7917dac9efb60230431f81681e795c100c8ad867f41e7442b22de2c16d8c2826782e180c6683d99967a361677118954bc6fa1796efe079b30302047c435bb50067306502310086aa5159193581e15a94cee177bfed0e74393e81be6bb99b5cbfd7ed5de2e9f54cbbcb57ebce85bd3a2150b62380d52402307bdb4629c4e740f432d6f67e58f4fe5a4b6dd774ec797c16b62f2ac8c331cdbf1c2dc86c3069319183d99fe3d39da1ec0302047c435bb500663064023010ac78f7fc6ed215ad90ea7234b7549daca720592dcd01fb8cf3cd4ac0e36b5dd664dca5a6bd7b38e181c639aa6d7054023019f73b375dd79aaba6c7a6d488cd3c59088add2588943140f03dc4fc56f0797ed0251bedcf36d9283e19d64214f84da70302047c435bb500683066023100b8ca19101906831892c7c0afe5274beec7373ecaa1754790b2868e581c5462bf9c5c3fe8bc83393b74545aa2ef246cbe023100ac2d0ad45952fb5557d5cc22926ecd603d75d9edb8ddb56daf5932cb760f3692d9108952152cd0dfd5ce2b9889c3866f0302047c435bb500683066023100f573226d25584dae3a9c4da3643ea4a0759a5e8a36c1139c53529b0192851ee5826c1c53b5da668f6d72eb54355065af023100af4d81ffa54e70bb599d342e07e8228ed46a3f37acd6bb79f941c5a6707d9ba50cfa184fcbdb3c8b2d427362bbe8277d0302047c435bb500673065023100864e7cbb233bc9abf3327e0c1fae59e109d976c09a089fba5b0750c6d59e8f78ea2b753c6a2c8d54a8c0037ea02e507d023026f32cd0be7a248441b6cf901b604c3d9934a084aa543a07d323a974f0f3f9f6f843e1f6efa76667c276a9b84a0c69a20302047c435bb500683066023100e4f23c53578cc4cc000071d0ee8301ec59adefd222297d1eef3bd54f24170873ed5a9a99405ab76c53e29a820e02f558023100c6e27923abffa46b829de19d0a7251c668aa3e5a4150d1e6278a36f1a61005b70f3fa1f8fdb741dcd5093979d4c98fdd0302047c435bb50067306502306400f7c5d9501f44abc36f512f2a04d23282dea7dde33de31f280d9988a400c6498a4b9101151c456825fffab6f95e65023100cebefe260e1d8da89d8aa9f3660365035e14b3de85aabba1a866d3c9874cecea8f3e51ccab16eb310d0b39b6c77712000302047c435bb50067306502310093f71a9ac6c9b7a792cf84fc0da9bba22fa5112096701f04e9dd5e537dcb71eaa0d8d56e545ea9452130b5a98743668b02303a083b8326bc52182c99ffa5cfcac5a5a8ba030c7823f5aeb0ae355696ae0fc55f5334f9bdd6b58f7c26f96b3aa784f20302047c435bb500663064023034cbb7979f8a8d744f9cfdd866b47cb26946a08a54502df0dfd65e5de6237b35d45e46c911105771d3f38bab02c282b3023025c63122bfa9cb0deebd094c53eb7151498b294454c482ef75517c4d982b45bcc94284952387614f704c6d87ccecabd60302047c435bb5006730650230285a46e686880ead4029304a8c7ce9efda50f569a392d2f71596e3089ba56e4808f76df7c0561323f3459058c0d29658023100fdaaf8195147733ce5b0760c462a2bbd906ef19a66f329d63ee5184b43e42f6b90541daa82c4180f075e918e79bbb46a0302047c435bb50067306502304bd6405fa3a8dcb2cd845cc3e83ff65053337b5b82616d30e76a540919315b848a2cbbf2fea86be89ac293b6b4b6c2560231009c0f926cdfc1d02d2ac0c9d3efc2a7c7129cec33540293c204217880482b079df793a3e3c89791a8db5ef4284611f30a0302047c435bb50067306502307a973114309d25d94cbdd4ebe39919c2b19f4e03b6fcd28bef6d13a0e0172e95575605a288ea490c73c294e5beb4c623023100b9a7b42d47aebf406420f642a83f977bcd4554a37f3b563067f8e23d80732da6de5a6b67ba05a12ae42a11045398f3070302047c435bb50067306502301bff4cfe084bd704d245f8254e235698a2cdc122d2c714005ef72e7e05c7638e9a5f9aeb2479c68fe2809ff1bc6e5471023100ef0011306faba8826ebe38ba3c9ea7474da1baa217ff097cc24822170d61a4c8dbd338ac880f1e24b360eac44b6201e50302047c435bb500683066023100a5e827f739b5539c6f1f62a8ada995ca7cf7bf2895b25c56fdc1d964ba61b21d582741405af6c94c9389319db96f737f023100ec64b36b049cde295409838ae34305e101b143f569c768a5e75e660c5dd356b64b76d79e3c5560cb7ad70c7828cd1fe50302047c435bb500683066023100bfb9bcff66ae8a70bd77f624970e154c5fc70709dc787561477599d34a9a22ffbf4dda65e5ad61e47c58aa145f5d9cd6023100ce9f632138c56f95c3184b5de1a941b56c2a921f7d31ad4d92ccaf7f8b7421cf6a7c5ebda60a5fbe2d0583fd5159a9e70302047c435bb500683066023100c389957ac1e6eaebeeb104a53a4950d35b8fb1733adc91587f2ce54a1a08704aa96237b1a22d2ee7089a02030421464c023100a062358f3dae7aa5f47168775ff9fe62450e5e1431a80f1604ff2d0b24b23da36729cddef84e1b41fb28a785a7fccdbb0302047c435bb500673065023100ab20089bece71df7cd6c0aef8acd13799716e816af11451571738ab3c10b884faf682970a0e60aa34252500e0d09e5ca023063d4ffce5126cc339430a964362de01d0a005248c7f52dfc014cb626ea311ab0325c0bbc0afc7b39273098bc293325d20302047c435bb5006730650230695cf01d247e1a9a9f8e7b41efa0c45b2a9a753942a686bdf508d540cbb243394594dbbe89c00d728bc116baefec025c02310081a5e881d589326723dc9ce78d2df697580850534d02f8a66edf14a01b2e7161ee10e3728bc1d13d762b184a9ad0db1a0302047c435bb500683066023100f83084a47104315d5c54841761b5a5ae66df13308d87f8bb73020123245c179ebf7efa09d57787fc4f7962d34b5df763023100bd0158b00eabdde849f18d6fa69dbf57a117caec24003adabd3a24ddbc5c38b5a823be9f1421278f6110939a3e7e1b100302047c435bb5006630640230505ebc6fd921ed263435d78e3ddcfcb8750e7e4250966cf6cbc96ff0700e8356258dfb9cc84e54642794f494c6b9c881023066a61dfe2ef536e44206c6d0cde646f7bcdc3062bb9ed65aefb60186e7bf0b676912c40add947d5808c2eb8f41caa8fe0302047c435bb50067306502301443d250b4b3fe97969934d6e7c3a11a99c91e646fe7f3950e40764b83364dc84a0a7a8bbb3274a048b32fb5bd5a4f8d02310098796816f79f2392be76f74a91a8810754cfc4fee1e6b49b808f7ee3ec1825567cf65af6f1d2bea2d6bf18e88ad257580302047c435bb500673065023019453b390358fd6cb6f573160bc23ca91ff90a2cacbe8f4212233a425760d11dfc5cea9485afd5d845e292b89ca353ac023100973a98c06b122118a12f658d7c5dcf083b79ae00dd6aaa6e129109e04ad1d74da2b9665677445f4fffb10ba0c87b63ea0302047c435bb5006630640230490dc95abc9ee7cf054585223785ec5258762d7513511ed022f3b1759e53fde31209a5389dfe0e22025222295119a1140230502ad2ba058e2f536383706ed70ba06d7b86da4acc1d25646fef8ef8f006c096a4c36fbe2c927eb28b9ed9ecee62747e0302047c435bb500683066023100c8688c0c8179265e468bac250d1db26e1f7effb8873f1be21ce8a2d8a78d855bd5072da70b48db17da75821821b7666d02310088240efec9dc282f4a8c9f3c42b66504dd61991e49ffc48a63f645fda48f54edde607ec6b6a9c94f987398e0f211483d0302047c435bb500683066023100a73686bcfcf24ad8133583f80ad90fdd21515d97f40d7e30496749dddfa4968be99a06610ea99c3f9a4efb821197e7a5023100997678cb8e66d9124facb8752b87bed569157a0ad5c9c1080c044ff3ca3af0c760b5aacc22961cdda8cdfdf491de35cd0302047c435bb500663064023053d646debc97c2cf342e82efc78b78f707115c3fd8b9e672ad6d9ba14a8fb8ca47778f574b3a27c9f9619bebdee7af6f02307ad2941a4f5e863894ce260ea0766a3315576e97c5e729b108cee0cad348edb0993e11e9ae46655f4e8db67afadcea300302047c435bb500673065023100cc1da39576aed23ccb695b253b05c6468ab38b6b022cb40872b4300269e30026c8f5557cdbfd7c5e5d6e9a7e857b11e402303d5a46f8c0454c21a0a88a74217b9a28b4487ade8f3736c39fe81ce01482876808cd3c48a1a892e5394b693c553318660302047c435bb5006630640230454d71c88f5053d06566d467c2bfbf702a9dcf5ad59ad3835aa3197bc470dd9fe6e27496234100c4a9d46e164928e70d0230524747e49409734f61c0d58553193fc3e6d1605607619828e9eb25f7ddfd4fb860827e2cc206fd1f1dcc29c434c2df9a0302047c435bb5006830660231009876ff55a543667861b8ea096ee9a8ef173833a4b21f8ea535f552b7cc0e3e874f59ee7ddc5f23caa4958a0450f24451023100c437fb89460d4c55f448cea4f6861cf739c5225729325eb711ed5d892fb573de2b1f4b9c65f5d45a42fcf4dcc58ae9ee0302047c435bb500663064023048508544b54c4a1c42521f398cddaa8d40d10252005ec83f8265100e9a03666a064a2ebd50102ed54ed82e36ef0838fe02302dbcc6bfafbe2e3d8e6423d34e3d10d70a9d7a523fb7f5ce038e928800f652b79821bfbeb72719bb3a74e6491a32332b0302047c435bb50067306502306855b60d9bf353669e395a9e3096c996d9c218b6c4bd9bccb99d521501d136f1fe487b31766d9fff7d58fcf6cda8e4ff023100dad07252f8073d693cadaf7b675aaa8bd1f0f80750b05a94502d79c5d73e31e6f57e9dce0dc7ce8be59d4e86fd4d36c00302047c435bb500683066023100c434bca55ca1c6e0f6716857bc83ff9a75997a9174a9e94138051bd6e9d53cf3cb076df64458d7ecd85517df6cbc0978023100ca8ee553e45a6e0f79f7a5e91ea3945a3bdd95b62ee754beb96cbc176bcd9304c4fd65d884c5d542878d10166a1473970302047c435bb500673065023100c209984d2a9e3bafb8d101dc376cc4444d29cb17fa110e7044cef87d88c9536dd02d3f8867adc29f2c47a5e6f25a898e02306f27e225f662fd15e34ca1ae9868c4f3593f2d4126fa87bdd79a45aae1e1d7f652318d2944b8d0700fe991738bf5c9860302047c435bb500663064023026a5b7348c3d7efaac9851dce091cf578823660b5ce094e29cd9b2f763ac6c4ca850fbbe17946f74f2867e4d99a644a40230140635a3e720c645c0b1b8f77f0c7f97b60dfc0f6e17bce84e598820c241a6d53d42797b6cf0eff3604a7a9b9f557fdd0302047c435bb5006730650231008e25a4dae928576ddd10aa44d30737bcbef25a092613af01e5c489e7e23c0c9f5092b0d6ad4fc877a56bbc19db946da5023041b180287c5d9587e0e7a50c2886c72a4f304cb6ab330c5c03dfd910e336fea03aac56ccebc23ebee9692a5b053fc6810302047c435bb500663064023063c852dd7412fafc4a8c391c4a3620712f361de0221d040b7c689a309786634dc2e068611a9505035aebc8ddfb226c5502301caf1dea010237070687c46b02639d32a1137aaf709e7635e906325921c0444d473f969dadbebfcf4c2ce23499cb0e970302047c435bb50067306502306b45b36f2beb0c08c30c5d776c35f9e021c9e08f1d9310d4f2badeb4b0b6dad4aa50c385a2f522973ea40a113beeed18023100d1cca8b280b918eba0a31687fcc7619341a6176502720f9aa860bc950d7e735778362dfcf1288f5bee924767e68cf9cf0302047c435bb500673065023100ac77fd367cb95833eca01ea1b7fd59085f797e4acc29571cdf84f32848b70a8ea7fcd859ac41144be7865ba4c754b51802306ca2fca77e1b3024eea6875d3235bb9c270e10d7a89c6134e92a6f990ffce177c676075a17c8d5ef183d5ee7babf73bd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ed94ca35c1cbf2ebe66488cb06caca0c545020e17f1ec75049ace11af4f5eb195cee3a2bfe72919346de5ec41a201250023100b651c46f2ce19fbae9a5339722c7644129e0285a182f05b80ce1177d935adb8daa0e7239d9bcace439cb1180e5aabc5f0302047c435bb500683066023100f62c2f457af250b2f651126697bcf8edbcdbbd7aac3856c9a3efc7bc69f8757a06e6b3fb58e04471d4e5efdebf57944002310080b71f55d1ec8b6c715e903eb87320c0e9fabfb9dde9d647c567eda7ad028e3cac8ebfa38a92e5fd3343146506d6001f0302047c435bb50068306602310092a477bc5cc60b262c2b05ae098cc3403717d0faa0cb61355c49d7dfd848689719742061332fcafa7fb2d26293523908023100d9dedcebffd51518984d947cbc90d93868bfd51f517fe2654e032da643a83b3b8dd2dcc2fd765918d3cbcc7dc4c665970302047c435bb50066306402301cb2e1ab6c169d0cedf991a5c76cea8fd95678f18363eea92965dbfefde68ee90b56e1efa1e2c8dc69a893441183823f02300371dec09ab83dba917ca4b5cf95bd3fd0fd492f08b70079e253e3278185feca8797d30495cb006f0002a622288bd3f90302047c435bb500673065023100fabc9134531490e72d504ae8267ce3069334fe398a6b8150ad3e27b9ff362676da7969c2eaf2c48ccc9785cd4c6e9bd202307e8042bc31d78c2d080bbec5287c01170cb6cc01199318e0b6403e2a36d6c0e26d97446bad04373b2527d3293bf94d040302047c435bb500683066023100bffa3ff5d537efd1ab0ac6e294caf8160245dfd74487534b9c8304d55185bb3daac1685a121c32b989e5dcccbdeda35d023100cb872d9d2de0ed71dae1f9f1b93e4d4891fed179bcecfcbc4f42db5c7c3492dd47d2e93f888b8e8a4a7fcfaa1383a5300302047c435bb50066306402306dc27138a42af0d766a2c32e8a182af55ccb4f2c086bdd157c5674bba7473e14224f0f81e26ceb4e10062e8b21166b95023078f21073ebd8293ec0532a8b289eed6d3e92fc19f618caa3418cb127fb840f97618a0b08f060fb6f359f63d2782f08100302047c435bb500663064023037905c10b4ae431db053b4a14a696f097aabedac96e7d727c905a63e4aff406d265d6d808f426b475f3d535a49416020023005b930f0cc66a5578828a58057ce0fc814e7c7f840893e7c296ccb4753d4bd240af88ea460d628a0b4e91d3e78071a5f0302047c435bb500673065023100956a9c4458cd07ec23147305ec47f3ebc268b18e95f998450e8660bdc38e9ea14157e1e999fb3c564c639c18e446423c023008891d99210597388c08124608c8ec9244f45eb7c62ee4280b4e74ffa1763092e542ba3e313c888a464d2e4fb5acbcf30302047c435bb500673065023100c0a6072a3da479e538f65d91737c4fef0a072ed8bcd292832a31e9d20ac17a0dbdadb2ff56fa9efdbd448ab2859e9f5e02304feae58640c9244a8b23a058b9fbf34cc7f07859f838fda74089827fef77b63b974e092143aea80c6ce45f817d84de940302047c435bb500673065023100817503d37e901d1009e2646b21241d87bff0dda4b27700be383a3aa73192e773ccdfa749a39373beedda0cb18439703402300ee5b16aef5bebea60c8e2b8ccb95f908167d2b70c94ee9228a2e186199a00c711d27bac24a5ebdb6b3ee822fc6ffe6b0302047c435bb5006730650230601992bc982ca14c13869cd0fb8c20b56f960f3c12f020dc2e0e33767bf8e48855d49c9853ad49c79b41730fe91c59a8023100e91969b15a3888a2eeb7e8042890127850d15206c37dbcbf18c1c43a27ffb7e0c87c74ffde333417a2cd4a326ccc2dab0302047c435bb50067306502304595dfa33971e661dc7a4ab8c8de15fe78659102e7a5db486bf1d7d5bf14892526eb39be3857844ee8b4d5df2d23c453023100ebae1aea1e28394bc90b56b8ee7a8290a4a4e5ebbd924ff2b673bf43098a58ec1f1a7f501c03a2ae3dd4a80a0e42e5c90302047c435bb500663064023038274499bbdff82e94b9c4835da07505c9d6d8839983b99477a3c2211ea8138edd3bfcecfb74b0ca29ab7486823dc73002301ba343400ddba80f87ae41f58a1b23a3f0da713074c4ae97921819bbd4584c44585c90c574a64b226ad5064a25c480d00302047c435bb500663064023041b61bd425fadd3dd215f8b210b3693457eacc44bf923cd6e8ee534a2394f460d9c27ee3db2b5c90fb6cd93b7d5b790802304fd09984df57c349e68b44ef364487eb26c38772dac1fc4bc1d5b618b9797dad0950ca8a8d3fc1a0324cb3773831d2e10302047c435bb500673065023100eccb0628cb69b8abad04231a558418e38f328a3d50c5d0df75db169690669a9681516204946966aeaeb6e0af53dd024a023053142140f1c9437bb59ac446c9013c3ca42bedfd8c640d1feaf682e289856e0ab4255e6464f634d9267a70d0ddad1d820302047c435bb500673065023100e9c364ee075ad93f03a4a9bcde659ef1cad3d31c54eeb9b72bd31795859a70e6380fe60f0248879ef0c45ce92d95987e02305e93ceee1f34a9b0d95996edf1814377ac05cbbc80021067a3c8fdd6d014f74f31fd88bede3e72fbe7acff30cdf2ee5d0302047c435bb5006730650231008407e86c56a6cdf0a471f52ec7d7fb8514d81cdac1df8c9966014f53b68e15848b37e04b68c262915a31a71c50b90d51023054c9c4d00d34275f1662a3551f129f45d8f6489d7e7ca94ecd03298e2fb3ea2f170c105b64b891fffcc4a6a9edbcc0b70302047c435bb500673065023100e68b5206fd9700401cf11989883c610a0909b72c41ae0916ab2990d9398dd18e0ebc91b11f6389676912bd13e12ece7202306ce23370501d1a40209fb32f0cecc7f3fea3a0320be59fe31254e7eb0b3aa3a53fc8625acc89d2fc16417ed6c19784850302047c435bb50066306402306145b44ca0c5c4434fd26b57ff7e7a821e16b9b07de8350c708c4248ccc7a0e5750f7b996457dd0162a44b4c3bb7a3aa023074610e599977c30b2fcfd74109f74bd4486e0f881564148bf9c9c571dfe2f8699eb33301d83051012e390ae237e04c220302047c435bb500683066023100ff7c594ee7f17738576b116d18eb94b502a7216e340e0fe3ba107172a8d210f1905b27ff8bbf0bd58989f2a8dcbbe201023100a6e6413f3113122e8ea92cc9f09c5dee54afa5a96395c2e2eff5a37c3d34c1ce3184fc2819dfdd012db979a45e4a5a280302047c435bb500683066023100ca4cf888786b4c359a363f1a4014a3fde3aa7b3a47aa1cb8f58e1b2a5f0df7b91777ae14c2ea4b5f112b0f5e7ea35506023100b1ca4835452423688aa7e9ccad938cd9d8c991b5ee6694657a7a25e2dcf488752127fbb63dad6ef1ea1c237df04f15480302047c435bb500673065023100af745de1846b57e37c2d0359ed8d51b124417f70277f96eab6f065c3c2fb7faa9f9800c43552b2b01a148a735e37d19b023013a3b74df1f6c7f1d193cedf5a0dcb6a20f8d6d45da5d5abd689cc2899e9fdd0c62cd9b35dd3f097b1c6ff81b30f239a0302047c435bb500673065023100b8f7a3a9f4d2ab7e01b0e237842cf2b764e71cdb39b2429972dfcb45cac7d020440235c11cd6ef57fa42d48c6164880502301c03d1bb402d4f5627d64008586edcd7648ec05165d3fc49bfb4cfa74d1979e6855e7da772a7ad25d898f9124a5e8f860302047c435bb5006730650230632ebfe5bd443d68583b91698d183c2efeecd0a4bf405e0c9ed939b8eba9abb22201928045da10e7962da5a2d16b57fd023100dbb2e670f69824ef29754b37b48df0d2b9c906740ddfe95280f5899cc9fd05e615b906686ea0abd65435de6d62dda9dc0302047c435bb500683066023100d82884716639a7f23b8b1632fda95f091561cc5f672bdbce5cc3b01e29e8b86dbafcf22b39a0b2df9e3f3e7546a9a0eb023100d962a328bdcc8e8910b0706b8e5dec01c53cd480ef35b7251d15933e24da34bff7217f92d5f4fda64c349d12fd6716cf0302047c435bb500683066023100c194b41d4c7262f6296109ce27be3290a6c8fd70e162944949eae0de8d05f5ae5f0e7ab09bc1ef0f3d3251b41eea09d1023100d0d277bce9cd3632f15788bfd4a0d3b75dbd294b72c18ab5f66403501b181e035be1391d14385a71802d39d1864695510302047c435bb500673065023100864ece5b8590f14b5479c3832e80ab0024186d9d433d8349b865439664b472ad9294092e24133dcf6499d7d7491cc4a702302092b631fcb20a18b5a6344af49698dfa125eddb7725a273e5d0235105f6af3a7954d553fb06da2d6575870686537f6d0302047c435bb5006630640230034d0e086dc50ac0974d0cc83fa688a6018228ae921282baa25236d911acf576c1e2377feaac37bc139fd84274b7eb6702300fbd4c2d9b39afbdd7149f78b8881f591f42b855fe13559f7a66c4759c228632114fd224a5d0803080b436e30fde0bad0302047c435bb500663064023012bcf7bcafce720940b67e7ae6cefdea9e6be96cb3c1af059d4c07ba9c74f74e9b81a5d970ef88ba6c1414139e7d3cda023057db050e4f9e928a046a9bccfd763048d75793047c421536b2439b508b661ae5a3b3d6333707808b5b48502fe47714530302047c435bb50067306502305f6d83f77afdb9ab314c03ca7198dedb81d5c78521241928a6758fc2562a087c20bf656c3fd99cebb42bc8d22777a12a023100c685e981fba62284e4e6b76ad619ebf6be982efaeddc31bd3ab23779dacf9d0319773996716855a9af21c6a9bc3e18810302047c435bb50067306502304c2ddf973ac0f847787690df3e9e8f826f9e986aca787e595c981114fca610943b1e86ff8966742d8d7efc0d24d5f73f023100bd0ee8f308aae169927a9c2ff615b8ffa7f189d199258fb06f0c288807dd072b9fbcea8a1f721fb20dab3ce7a6b19dd70302047c435bb500673065023004a7a22a45c8c3ab651d0bbc2e1f570679b28d78c28881e39eb70b3fdf261f7b2058d161317cacebf1b7f9fa1b0b282c023100845a3b38101a0794e6e2162d05c95efe275fd97e5f79fee3a008568110668479a5d000b2bb4e982a697a55edf2a21e5f0302047c435bb500673065023100a93ca2da0ea774e3d0b78cc72252eb0112032cd6d8e876ef821ffc20f162665c5848e9b97d06b85eeec755af91af1eae02302379a74a3509676ff34788df7f5e20675691e698a329e1eaad9e307d0e54222b1adc4f711ac74190c58912229a20d1310302047c435bb500683066023100b519cebccb0fa1a8c2c018eef936282d95ccf5c8c7a171212adb0eeb2875e93f4de33903e634741e1fbf94ee14b46b10023100d07587286e2ec872a4b1892d4aa540963df5a357a5c9aa2fc230720a606e0dfe9fea4992acd17dc61937c60651b20d4b0302047c435bb5006630640230191c9952f0e105f478f840b7c167307e65291113d85925ffaf498907e9e1e8e0e150168148b0cf1ccce7bd4caf7f139d023079b2bc60b3c9b326c5b1af19f2c016cdcef9aae90fdd01cb848b89e14933585682ca63db747fa5535d47a4686aaed1500302047c435bb500673065023100e20d560374931ea922591ca48a70ae8b389259f40ac4071cb8a32fda1fd2ff46f0554c9142db7bb8c90329c11ed8e80e02306cffd681f3eca549cd24cac9a35a85bcc83f8198f52fb60ba83d2b7abfcff4879c702494553529e5f14a46148d8303860302047c435bb50066306402304bde9666020333a0bb208ab5adcd5de520523ec222fb2232714935d55b9101b678493443a117167c598e6d2df398dfe7023077f8a0db860304dcc9ec39e05e3281cd966ffc759e687cc4fa6e614ce40cdd7aaf775dca06d7def2c94f6ced93d4db890302047c435bb500683066023100edf39ee7fd3aecacf1759b4fc433050dae46fb9049d7dda3e15cf425e19783a7f427800c2bd6480eb552398a4c18d317023100deb3fd2bbf472c6062248c933eea4580c9b70b5206a0eee77de772648f777d46ce6d70dc9494a8ad7d2c5565e08f26780302047c435bb500673065023100c1105ef937fada0b0157fea5055f38636d46688cbc76784d325c1262e897413b9b6321399bdff6433e0073ca172fedc7023052583b681f7a6c50e5c02df3960339db8257427f7ac99aba9de8e43e9b3edf2f0d38f32fb379e33b743bfe7e09ad9ed50302047c435bb50066306402302f3925a7891315169571e4925e91d66d85f5e34605d9dbaa697798e57d0042ed24aabd9d9f04ffff933682611965caab02304a64a5cbc9197c5d0de9863c425e54abd900a5fe088d73ee5054bc0848a2e6306769e1d82023f5fce061bad098362f540302047c435bb50066306402302bf44bb4c3285a3af0b1f3ff10cde0ceed96df2439b1997ad8a1d0294a76f4e5b110d28cdbd4c91e79077a84cbfd71620230032645fd08c15475b7ffa1c0cdcae32dd6a72c970d386330023d496fc1b3099179f7a5371323cb9c4321a27968db0a690302047c435bb500683066023100a40556927be98e2a2fb80f444c87beaa04b48eb5fd6295cf5f6a47ad7dd629b6bedf8467a83049286bb5b5e714ab67db023100e768f28ac5d144f31555cfd6a4cc8ec9234d081225eefbc9c9f25d60248184893490edb3bef788dade7df1c3699b89380302047c435bb50067306502306cc2ea42304bfd7a3b7ec4e2cb963686c040f152b992f9842ceca09f2517857b2d3e216aefe66e95342723593922a7cf02310085c89d32e36d2395765e3c42116e56084278d37acde86ffd5a16dbc100df7b711aa38c83998828b55d38504b60d1344e0302047c435bb500673065023100ee5fc9553536a18507a32ad8fa76d1d8f01cbd0b4e2b34887d1d0e7195f14660348af7440eed428420752894e0153cd202302a33ba05174d7488cd3e93bd81d00f6680fdc5331ed5daa17d55522e3c137016c92b4ac960723203c5b96f73f9a765900302047c435bb500673065023072e9b025ff804a6d9962246d1c707057948fc10e0838395067ccd87b0e5261cf027876a4daf118edc30db9fed8fb7d3e023100ebb1d69d35b86738b924f404bbaf0ad02ef7eec60935083e270c79f8076c905c8e636550c4717163217908d60907ee890302047c435bb500673065023100d499c34b3271646ab0009c0239cc9c9fde3b0572558f7bdbab1390f312879d14a4b640c85dec09be0def349cb37ddf73023009d659641d89f44328ab831bc5de2b57587055ff9e29141790540013a493e77fa773fd4c7bc90572a1f392901259b1800302047c435bb50067306502300a1f8e326048fe41458460eea62346382c3a31bf6e2db98b34677194c6187654122f857dae790c658d91b8269b0ea2ea023100ceeabde506022ad25b3340b201d8fad34a76ad643a9bc3e4ffa8dd6a1a4819d6d2d5c2073a7e00e5fe3ee8c0e043192d0302047c435bb50067306502304d533ca15dcf537fa47735a03227cdd3b0a671520383f64f2330f76aa4e017e88530d84d40bce06406acabeb47dac534023100b5bbad136046eed704cf0edf7f26676b8f0473d7bc86e65d9a987cd961dd0207a0f85d340cfcb6a49bd7e010b6576b930302047c435bb5006630640230629bc5c674f09216d7b44ebad4e141d8fb2371ec439aa2e8a24022118c69fba7bc27ea0c31587ce45debbe07aad9b68e0230798e88a87b944c967587f3bae113f3935427d7f97aa59dd45aee38574ee4503feedebe5c516d0eae1c27eff50e89b5ac0302047c435bb500663064023068924de9e062ee04639b9812b066b78fef19d5bdd5ade3e9816d698c7e51b84790e20efa31738373b4f9bfd4d990267d02302e2f92a8ad6fc3f744013974b0768575508f2fb94da525c5e3a882e7515d4a170836350f96f3f5b481ca451955c218ec0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a27061b6471b3bcfb15e8f36914d5b0bc9f22f34fd8f6df952c0269e75c181a5f617973b786338b0d9d22720c326ffef023100c758931e002df1cd715f77d7248801a3374432a2520afb4114ef615c83b4c950c1667cd3465a15d051a614cf362a6af80302047c435bb50067306502300e6ee017a5b15d47af667e8cb63a8abc770be693fcdcd37d061c229488c18cd9e0737ef672246be657e699290aef33dc023100d25ee5d443f82a2f6c9c34c0829e5e959550c4fc4b56c42909e05aab16dda1f8cea83880c01fb44f5ea40aaf3cff5fbf0302047c435bb500673065023100e1072cf5827c2d14d9d4aebe82a9a4a18bd20b7e3406402ca47736cb8bf99589473644ff94c4e1abdae92dd63ee8bd3202302233590fd2c41017eb7063276dca1fc485f0df4b2ee347d9a19631004adbf090a9486cc785d50c3b5c96729ac18048420302047c435bb500673065023068714c9c730f3f5cd8823b6568e2ffc30f4d16472882391f9b72c0cb3a544247449fa9915e513a1c2c22dcf5b19b98c3023100c148e7e128b1c46063a80850d1fe554873ccc6d8c621cd932730debaeb1d55589f0a18e9586dbb969d7ca60b75e09ab20302047c435bb500683066023100c30ad43a15ee46ff75d4a7c7a65f66d7ca790d40cb83f4b730eecbecf6e1d58a734fcbc64e62ac396136de893f47ae35023100a9b4aea95d34e9b67c7034b51ee9e6d3379a754a90b695dfafae7d516c2518bc56d9e1ddc2d25ca0555e9cb8361438dc0302047c435bb500673065023076c47ff75994d8a2d158f9d53a96ab119215774a9298c6640741cfcd6a069d19a96faab771f8055f53107476681e2f16023100d6bb20336245d9ca6f6455e6339601e1ad2513e419480571cfd837f5db88770353437cfcb4b8d7a0fd4f2a5ed3136e6b0302047c435bb500673065023065a9d1cd33fb30999b454af662c326f4a57fd6501a0c7772d4f2d91aa39e33f2112585b5abd4bc155de8b1f10f91dd9c023100886c2d35a6aa86c3e8f266b74e6889d5df5265e0510b1d2bf5d69d04056d392c1808e831e8be0870fd7c2d76edb5b5990302047c435bb500673065023047392d26f2a1cdfa293284bb6cb872a55df82d531d95a0140f9359f355ac778664fe452b839105a041888906d54e38600231008aa753c2a982f11785b65aadee318f3099d6eb460b534c7b7a8e4b8ebbc7d8aa7496f1d40d363d0a9a5a02f7494267a90302047c435bb50067306502300ad7e75389be7691b596d8866f3192add5a7beb9cc6f511f64664456a10ba4c194ae71b31cb4995a22a14ce582b6f3460231008fd1cbc38f36bdd0de27c8b3a6e35df1631298850efab0e73b5340626a7f4484c223375a07eabd2023fd63fd3bc827500302047c435bb500673065023100c0c04e4ace27e9ccd2da355c8bdad229a518f89e213345d3d6f48b7297d305a3529bb5c69d0394feb6dc9fc3c2c4c90a023061e2bdc8f0228dae7d47f38ac66eae1cd536fe44f2e5d551cb149e975b655bd1e1c1a06b679529424c25496f018eff120302047c435bb50067306502303a63265f28eb752c41117c378989c9157bb026026ab70ba24cabb431d10e6d0c153bf1dbf00f5e9c51cf1c348b8edce0023100fa609ba34771e076d93068ea6bf63da148424d539f7a00f6c062e20763e805745d7b2e880549615692690df79c7488530302047c435bb500663064023009a55cd7d5914981df2e8fe6fc3004a356119c86b0bab0ff3e412aeabdfcd710afa606883d530e2e5f763e9bf97430f602304e7e458691eac6321edfb1603804b623f77102bbc950931207e14b58a7a708e07585b7d00be2f30179f4b700b1c7de390302047c435bb50067306502304596fd16ff1c934998cb690883fddfc7550a328fce9cf9b265338f330736eafe44be6add89e777026c87501595a2c264023100be034631f2d1bf84f5feedcf4ef5e6a41f11b19b384d07d0285a8b90777a8ed45381aac6f5ed2c307a04dff7085b2d4f0302047c435bb50067306502305d3a89cf79e3699cf6ebaa1bfa9ec0a48670e44149efb890204c88a1d516a18b611ec41d11ccc6ac45069f9132cbe6ac023100c7e1d13b95566e5d01fc63038826682abeabccbd71154674483a9942c512baf972b80640cf21fe2298f045da652a60b00302047c435bb5006830660231009fcbb6f3beec5614b6046524f1fd0b08632e712796da6d512973383e89114742871b890ff9981bbd161b2252e9e09859023100f7032ac9b5ab55ee1a09b91301ad34b24d47adc59bb32db62ba5cd3accb86c68259bea08a33ebb11cd98f2a451eb1ac70302047c435bb500673065023100dd15195d8a22333bf818f9c4cc18f3c6c18ffa345f62e2fe1907dc723376b78f9fbe7ab6d3179efc63fbe6fff71b681102300fac8aa0aa09a70d7d8d46f1a6f79ff2e38cb60102fd44e8e7082c0d76270c15e87eba89779cf68d3d81f41827c0132e0302047c435bb50067306502303c8f1b2206db53489171daa4a08e17c87b52b24f00ecf6df3da27f730e20bf167a593447d8a1032d270e08bda78843ff023100b5855a463f7011712d5e3f11530cbce4aa0b8e73a5bf2ae8bb9e6e4265da6be1b618994849ac673e0bf2a5abe6d9a58d0302047c435bb500673065023013d3872d7d99203129aee275427b24a1f58b699bd154a3ae774a113f2b59d1dcac31cc53cc42c927b658e73ff4763e99023100d7476c08d2076371714c7a5380604c604528abc246487b23770517916fd93201e0786ff3b32ac83f065432f9d7c8e3ae0302047c435bb50067306502302e8e02ae621f337430f90b0fb1c3d6163a35e7b4a9ddae7a697bef56b5890292404a76954577b853dafa97f52d3816ab02310094c20e5d1c9d2535cee3c5274c457fa46c5ac28dff7d642d250690d74bbd300fb2997e751e202bf4ffa6f64626ba0be60302047c435bb500663064023053c0e3e4856bd1e7c53a3fcab07c72d54a098aa51bb1b52560bce515543ebc0b071fd65b1e0d3b1cf11a5d53bf282c75023003ec6c69f81c0aded85821ada2bd595ecdb20b083a02abcc0096a629b556461dc05693ea05e5e8cb4e8185503494fea20302047c435bb5006730650230521a4af1309756eb535853eb00115188c07d7873bd1dd6648237aacd96b528684632672824990d86c750333466788caf023100e800ac40ef03ec2ca3b9b2904e37d01a0a07dc6f334b0a8e4480ef2ce00d1536d82834f9d26d590c146456cc0771f9470302047c435bb5006730650230396b4284a4e1d2a2b54efe58461cab6c54bd0e2e7594496e511b28d77175bae191abb1039b8466155b9b4c6645d14ff60231008c0ad810adf0b9a9b8b61707939ec2214dee4eb92dd1f8e8f7f833d8f58fdd102092816a159e829f1af103cba5464bf80302047c435bb500683066023100b7315315d9c3114426de0fc9a51a735e9fdb1a65f619725c14e23c1efede8858d62bff9f4e6eb37da48483432cbd5be4023100afef9087faae1a08f77179848e554fda215a4e290619bdea38557f04074e5ee7fa39d693ebd9ae27918d64d8ea45db0c0302047c435bb50067306502303e7e9710d0d8d434403ad0f7d76aca8800c306218001be93b09fee1de0fb87df2f6a5a554854d70e92bb73420c0e0332023100eef17bfedbe597745ba84e1f1a2137b818e0aba6af1bdb8305960ec6f596e46b4491289d9a90303a598502a61c5b8cb00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009403bc6704c84345190f9e5fda4182c52f0cf1c148a1499edc3c0176be768c81c96b033e95ea5562dd4e37c0ca611562023065cfdb1282a85fe22254f5864e509c35725a498dd138232d12df36d98ae93b4894822ccb8d04b1e2b5e531122dd54b340302047c435bb500683066023100cdba99ee0af0546e79ea44d23b4bdfaac08100be81a088687eefa8fdcb90f58339841ad6812340813bda3fd0f3d426a00231008b6093689573a5a7ad92ec82764a6ab2d43e1fb1fa9c9ad6f45b105ec375fcfcccd4a9858f7b96823be99d387aa211730302047c435bb50067306502310081c6e19237b51ee53dfc411115d12e7727313e8a5e264750a50d04325c7265a694c7064ede328c746c46fe59634e6f1d02307373287537a98ef2ced1a229ab8ea851d1b0d0627a4ba7e847eda9442d698fea211e052ab307629b8589ca5397b906b10302047c435bb50067306502300bb9e333b8175958503474aa9ed143d04ca77d355ea8ac10335b9bea9f3a71616500b1f7f4d0eddcd4dde9c45a231806023100b6cbbf9bd9db5320645014d5fee875ab5bc076294b669ab3c44cce04f6b8ac66f81a6b429129b07de36c32ea23d25fc60302047c435bb500673065023027d5c18d2b937e31ee64612e6b5457c2aa7b334e77b8621dff5f5aecf1643739d5a69c0a1d048066a15538d963b2003f023100d0de4ecd6629df2c54eb00d8e13cc6a47eefe2550bf65167834676827412f37b3372a1537f204d5b2f170d7630b6b08a0302047c435bb50066306402302e85d8d4b693203df36a2998160061a02849f869a9cc2ebdbb6f3e7ead3a8e3cdcca21961c066676d4f0bd3e64a979ea0230369c2f6841d339b7a8b6e671a566e6d71ec5dee8e5fc796491cf1eb631e3f4d2744d9b96d49c58aafa5a2e71af7f752d0302047c435bb500673065023100882c768327f16d378b6d21e4648e5624a9a4e2581af6336f48e90af37cbbe834e240604505b3c54bc45bb1948f9d433002300da741dd5aaf1a8114d8592784a05e58f61f1139c3ca86426f82ecad2336a4a26c788c50d3ad0e15787193141e4f72cd0302047c435bb500673065023100ae4b18ccd989df20199650959f151b407f94ed8058952085c6ce9ea38ee00e83952c17e344580176efd9510faa718a4a023035b857be4affaf5ea3588dd7ee978919e93eb3b491c70970f0e65af72584b0023e9a51e28d8c5e7e9d9e9c9e74fe1c460302047c435bb500673065023073af659a716aa90577ea2daaa60224da1717c55d075a74d8718916274c35287b8dfa556a10364bd8a798bc9b30f93565023100bc3f87f4f4b64e6aea35c804d4306a80575965102edd13eead82d740d9a7a1bc52fc7817063db995f77e35d8c3ea26600302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f4890a96d5ea66d35ce1e922b7f3f390e7d53fc28cb03583aacdcb96ea71b694ce5303f74daa8ba9444d434a24091843023100d5b122e9db6b3659c55bcb586cc72bf5ead57c61fff2de1d69760a65a36a0e588606993432a0a2654ca4020e1f1f27150302047c435bb500663064023067242d2dfe0e366cb54a133cc6291e69e2634aebee42fe70252e5f36f2d60e803201e3b48adb7a06d2a0cba7e3ad24960230059ca3c926dea3f91ed7c12793f019deb6b042f6b77347b3097ecf43d222eac39c2a9331197f92ee1fb6b769e4da5b090302047c435bb50067306502303bfdfd44be82aa63bd306e3034b450dc5c0e6160d51ddae4b6166c7833885df497adfa0e7c721340f957b7590ed68703023100828d44649809959772261ca2f77377d11c2c7de683aa03e6496033f44d492eec7ea66b98e22e8871370cdd7ce10af6090302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230793d3301ea13ec26ce961bfc0054475d64a9cc816425b098645997dbe86bc7aa775c83b0d44151792f658b190511614c02310080c271ab6253eb5493481d2ebe12057713e41b4674214d865223626668bcfe5b3b95891c82f3ecaa2df4fee252e34a380302047c435bb500673065023100c1ac09c2d30930ce4a12607b083aa37b4d1143803b3030c276b639f8510925172ed38e1db999927ede180b3aa9ca4a9202300e72d363d5e60b7e1bcd5f9313cf7e5da19c23a6c5e19165cb0eeeb76f6d7a944ac39822e98ca9e57f047e2483e6b7d30302047c435bb500663064023032388d5a42d124099350cbd6ac551b4bf9c580cfce71095f877ac240a6ee283152a1ba80c32ebee3e899f4a289a5dcc902300eeb54dfecd26989fb35241f78a43f37253b188330f19b663693a7e9ae1969dbbfe326ce0ff82672f74f856a696c21780302047c435bb500673065023100af56f1222e2bc64c2b4f01ebe172692bcc72070511f15510c98cb975858fce4965f521284a9b59866a3573068dc9e76802301901ffdcd17c2ab731f1c7b37620b29e0cc68bed242fe5d71540ae2a1ce8e3b4d8ed4fac98a3700af50c005799775a160302047c435bb500673065023100fb6fa2a4a3fb29a8f9d80b66d5e93c6e2613fba856fc8bb06821cc5de8aad661d5159e270fddad19e7920276727184a602301102c8faee13a684f790a27f87e079405224cec9e6afd275d1dc72b6737b915e5698079a16c7311f7da5e6e7e9c01f970302047c435bb500663064023007d92ab306b0a303a521b6e8202c705820a92ba7e13d231c36d73005432fac8c32511a741cd50f37db2367ff720baac502303d3b07ec4c0f8eec88184e67245a8ac2b9d7d9101af8f75757b879c380e5311ae52c99a10d324c1d82c894636fba1d090302047c435bb5006730650230277ad29de84415ad84f4f260b832956659107c556cc890b99d9437baa7ab13edc5039d1bb24f18ffa0ba83a4686ec291023100c3756d1a7940180b0673ee714e5384cd05e20c3356cbb2502aab7d3dbb33796c6fcf9beb8bf5c51b37064973d986e35c0302047c435bb500673065023100866887223a519206fb8511261d1d35e64c030363d178545b4dcb507586166a0b150bacc65530c248e2f595cd37f3b3f402300bfae276e4bd2d7dea3274f8a936ca31cb91cf4b27dd20d1cb2d98edbebbe857e9dd744b53d41fc7fcc64ea8e14a88d00302047c435bb50066306402303168e5dd2017aeec0c7759524b6315b8b53231aa0d2435ceb220e1861cde2fcdb09ca7ff6060dd06ba70a22734ec3bfb02304db649b0e143dd9499cee8ee2b8644e852ffe86672bbd63f9953279486937f5340eeb18e2c6aa6f0f2726c5606deaf990302047c435bb5006830660231008f0f0dfd8cc6835ad1ba7c5cda739f4d262258df426aba6274f0f2fa8fa9eefba73d142cb411d166ac47133656ccbc79023100851ad1acf1b9fde6c5d76d0de558cd226c133284a4dbea2e8eb823a61661856c4a09fb2cfd8523aad9822314ed1b84560302047c435bb50067306502304becdaa33ded80eff627017954da3fc98d862993a0731fc770a4a7493339af40c0dada6000ef9d5a43e1d269913228980231009eac88513f484f6aa670582e7bf2c5c7d450e882551f76489fdec897332885b8270912afe03dfc86848d532c039b038b0302047c435bb50066306402302a13be6f9b2f5e7f8a5ae1bbbe8c8588d9b25eab8a91869cfaa79e6f135faa00e97ab204219eb2cab27741a9ad34d15d02304cdac63108702da5fb3bb7f494a46d8123fc73b310876883d4078e811772db2e062dfb66bad577fd63e6b765ffb9bf1d0302047c435bb50067306502310086f3d588fd6d8db70dce6ee2d654a5292f6d7182a9506eeea7cb9ee25593d922eb1391dc6ae45451caade883ee71cddb02307ed9949b2b1dceaeb834b6b3995f98e65fbdc6c2bdce968654b8dc2cd7ea05ecdbcee93ffedc77bc2435e59a4981fa210302047c435bb5006830660231009913c88b3ed147212acff1c0225281cdd67374c2af65719dbc2837310f72f508785b0f3bf6e6e026d87b02db40a8f0c902310088686f4a28900e4af2dc72e2f97260ad3dbd233c1244de8aca187de13273c814694bdc035377cc669d0070fde9e24f280302047c435bb500683066023100a2076be032b6728eb14a07b33b97941953688ea2ddbd83de55b8fa3c2d4070a64a1962277948873f6f26f44831cfe1dc023100c89d38e5519efba3e708c105351cd7ddc7419ff099c17f21e0824e263f360efea6cf00dd536d0b59673045f1e7aa26730302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307fda7cd37479cb4b7201cbbb9f803f890c9c2206ecf0a627f230da109c39fba8dd3f32590f24206e54e8891a20d7728e023100c821f5bb6f908299fb1e52d4451ca3d69684947f068582b32e1ed51496d2ec196ed7424e1cefb4ddff2872d4656f58fb0302047c435bb500673065023100e3a7d11e9a6dbcfe3be69534e670d8eef639f33ea67faa82425cbeddc078e85aa9841464259301fc4a0a14811d401d7802303acc413827cdba8209edcf8141eb0b8f3c45e33a675e03dc3b0766fa2d3f6cf20e7ab46df8c465e4ae54828c78c463090302047c435bb500683066023100fd2c3dddd3e8435522d384c3a4bd2cd2a083023e42c86130911c40222604616bab377d05ce28032dafbd45eaebbf46cc023100e51cd4dcefcc449e91da9e7c96c14bb71ae5a456e9a3226fb20c52e271178ec28ec19875963569cb2e76efbf48c7d0df0302047c435bb500673065023100a8961117261188e8f45ac1f0904eda709fdc48d6124e09b263bbd2439d038928c0c50220c351167a91cfc236629297f602304d7a92f227d97c83a503637377b37804c520e2d556f073508aaa80044c86a9210497b375891dc121b386890f5728e4700302047c435bb50067306502301abd737ea61acd54daec35b4270461f3d21499f989a35dd01c15c9430f06eeb36f6b94140a788e88931d5e8f1c2e43ca023100d2b9a9f0f6af5a7df1cc1bec86f586984eda8e31194ffb2ff48c5b695b67aca4dcf508ecac2e766636c88d445b747e370302047c435bb50067306502306df9b64014314841c63052d8ef74aaca4c60d55c62e5d2a43351c3e3d22da93ac2ef350ae6487796f6eb36834b68c990023100d0bea4933901cfaa1623af421b4c192d05dc937ae013495bc43e8626a7db1b2948056193f96086e25a201b38951e99560302047c435bb500683066023100ac31e0ce1aba6b8c97d8cbdc03c20998d6f955e9b268603079761220d6220364db42d01d687ab40f3608b129d52b3fc5023100f3266d61ccf09e03484c83bd28a52c222bd24129227db0d3164aab818dfed1ec768cbc94adf54083eda4bcb97c87bffb0302047c435bb500673065023100bbe55b2f4b5ca1ca237efc209e2817793caf07c6cebcc29e40efe4f31d6e8b6a742e09006f915adad3d003e2751e754a023062567625d2023989c018fdcf6e611c983a615adac59d99bf7d6671d52c3689702af7f5d18e304ea0ad3712d3fd5c562f0302047c435bb500673065023100e43cfc5ff65f83df3304bbd8f22506d68db6711ebf9709f29739a030ba64c12468012ece43cf4079a3a11b6c4adb3742023078a74afc5fc8a7a18075262dcb1c04b0b3d821ace896d541d4f9dd61416ad587fb84cf5e9613c941feba87f94cc6ff450302047c435bb500673065023100a954fb1a7b423a2bf4d2b784f36fd7ef48391166ade77ddbc3b513a616e60f50ce77fc4fc7508d13619d7b65e2bdc73d02307bbf61af67fcbc6588ea6b83174db658690bae0f79768a3cc1c22f2b4860f66dbe50a0be54d9e9bcbcbe34e392255c360302047c435bb5006630640230690a27cca1b13e1c186f2ae78798da7c30d44199889c9347486fbd24f4a51b73538a8e1be210c5d47294e6056713619602306f798deeb9d71feb306809e9273d526de0d515915409e78372c40f822298624abd47ad04b9632efd648a0760f8c898a80302047c435bb500683066023100f5df1234743d18ac1767fe549c2415fe6bd5ff55312c44b7e6ea6907980f4d6df89f0cf0af7a97bca2dffb65a91d0a67023100ff7c907d5be41ac6f4be5eefbad3ea5b6b48b2a6449f2bad3836cdbad367ac98b8e6ce2ea25042d567fdc9429557e2ad0302047c435bb500673065023100f8c2dbb4da056f433c11c672134e1f6daa9e641231c90335923cc24a463aaa0fd2f2f4f294641a5e760535f863751a5102300c9a00e17604d126d30c7ce613867a43592c7ba958786fbe1ff426358ce29f6535f2611b568d6d21b6ba315cd8bbc4dd0302047c435bb5006630640230338e4186c8e12d77b6be2216a6b3e6dc353c8c55d9269bdacf76295691db3292fe84f5f88065a3934c89b0bf9eb62d520230404123286e1947ab8af6655cafb374734bdc818006d01e4d5cb66ff2631f10675e08633cc25e500ffe2b473841a3a1e90302047c435bb500663064023038838cd39d022d4047ff042332b1fbd16278aec3c3018f2d5ebc1005129e5338e26f922d37cb29bc294a36473756558b02306b733a4734d859f934f7576299e984755207b4af2ad2c62371e62c6826d0ba9bd29ea6e369025f767d24cfadee54b4a20302047c435bb50068306602310092d775dbcc3c6cc55c805de8bb60d56e5b51981e822a4a1b92cd4f7d3b6698a5addc828034ea6d84431c4157f13fe5b30231009cce73b70f0431ec29277371a355d55c5ae9958c0806fc5cd527971df6ba0dc8852b400541c2a5dffb6c32adb380f54c0302047c435bb50067306502307fcc5d507542378fcd837f4cc2cc8d3039d21a17c7367b504a6eafb07b6372c94904fea775bf4b803f0f264d014bbf69023100e2abe0678b096101d8a3830f185b810bec7910c555df9f58eead3cec3471f813c63396150cd58663e2862841a8f7536d0302047c435bb500673065023100f5bdb4e3187bbe7152c44248bc0aa3b7a2a2f014554c9b817e7ac9f5c5e2d9a4bff1c1f401f86ecc759d6cd6c39aea6a0230363e7cb801114a991b6b3b52e0b7a345b841db954d23eeb4991a9d5eb0fb44550182cead74deeff51252d364a7b037260302047c435bb50067306502300a73782847ef7dc5a55e9c585ff46e1358f947f0b0f43021fa7e18733f5fec71ca0ba3220e99b3544869203798f390d3023100ab7d55070856d3d320d35b171745b0eda1112ae17db6c328f0935e7659462a3676abb78e8e08208ed92c07ce9bd3947f0302047c435bb50066306402307794f382d4ddc0fcc67b28c3152e4d1cc7e09f3be694f67993ca88a94029b82305e25505d2dea0d1a67b6889941c7921023042979ec69c86f027389a5ea2c1846faaf0386fbc5f1c5d714782b358dc1dfacae920e8c61d56be8f66c57c7fd3c7032f0302047c435bb500683066023100c775a995372a0ce06abe008040b06689287cdb8b397871c5b93cd35bc4cd2c461ed871c29696668a38b55bbbdc13b310023100f90372ef746d262c54db5352e91ec529a651a0acc0a1e58d40e3217a422dc3c3c362efa595839b9f941028f1b03b6f900302047c435bb50067306502302f20c1d7ca05b4e7ec40ce0aab8bd7aba1e41b6e53f6c4a18b100bed1d213f110700f24307d604bcf1bd7e952d12814f023100a1d010d34a43c17c362db01734481ea9dcd1d9b55bcebcaebc8b023e139e6f0aa5e6c17642a7ef26214e7e7574024ae00302047c435bb500673065023100f7e529ff498dbf1500ee0351e70ff1cb731c9310df2a1ab1eabac357446ddefbebacee7e6e756b4e75e092a237fe0a3e023063d124c87fbd9f066c01eedbb309da1afa18f1dd5c09afe773e3dfe40523d7c7ab1ff27771cbe226da165fd015b5e04e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023026d9957fcd640c221b95c87813a627c45f3e6c85a45fda232e34ba95c7720db5eb08e3397b74aea322b43e779fe7cd9902302edc951decb43921d6fb6e6c78a6830c1924c5a3398ab0480a725b29690c0168877bbb10f4ebaefdc86a3e5d6d72f6940302047c435bb50066306402305a3f161a9e4b9b1a7404afe0272af7f70b418d9f999d03abc2c8804b3240f4b91f317a38244e4e9c1156b968ec54895002307bbe62a61f97ee097525d0e57280b460a180e998cce97c6f99100f8f643d84cb02f9a520d2eee07ef24c198e9b2e25e70302047c435bb500663064023008471fa20acbcb60f9ed88056fbafccd8df5199fd69b1728595043f40627f51f59800b4504688303de2ea151f531fd2b02307ec51c39fd0acddc8f5a4cdfa563dfeb8cd9cbeda8c11179ee1c52f9ec7aeb2b1ec95d762df2afc3adce94621c1f289b0302047c435bb500673065023100c03dfc7b7f2e88e237002125c491848aba238ad459b262d16bcb5618c114b9b6cbca065ba3762269fe0c53269cb5ce98023024afe6f595652ffc8b7005519e1980e32ad5be5796277c9813eeb62e4f775985fe1e29f5b2e1e3e54106ddfd9deea86a0302047c435bb5006730650230404cccf9d247fc426e912c4384c1097281e0eb642608168a8c329e2f0e9d6dc8f9d2369e229ca5a368f2657898a87962023100b447a1b7fb9c21d17568a82e5749ed15ff2c58bd641ff45413237f71a48b81a979b1ef93c1233ae357232b60797531260302047c435bb5006730650230474b13b78702f528438742f566d15571f55f957d852ede728fdbdce4434eb442d271f1c265993d97e1c5499166075184023100872ddb11fda93ba1c19ae5450db859d4c7eea8ba9c2fcf3ce699477309a326ae5108cf733a752be192e3a4ea5e07bda20302047c435bb500673065023100a28740cf063a236f4873e980952ff2fcbf2274507ffd36911fb476d7886be8c78b8c785cba7fb0a491c845fe19d7fd24023046ba29de68b3e3bb2c78e6cffac77d8f22f86296debe63790c14e1bb66b8b68fb814669b0982335002a39b28ac0b23280302047c435bb50066306402300577f96e8eb93426d17e412ee46b4c55264e60dc9f886b9d90207eb4a58bf2577e3f659b4cf9cee6dddfe8166530a0a7023039eb0c683c31b91f2aee45c2b5f36cf856e7af7c3c0601397f3ce2d776da9cc409e0e29d7460cd8beb676a9ea28a95a50302047c435bb500673065023100e4a7612147e6be561274bb75747c1f1d6f5808518fcceb36bc32198bf3a4b4bf70773c6b1b093a260c0b1aca567ad9d7023022bb6e70cbb14648942717be3a3c03119a51e5ec4e4f3f76df2e7bd55b942c5af51efa8bd3622bdb4d72e3d6b30402460302047c435bb500673065023100bfa844fdd840689a4a32e3780f6589cab157fa1f20879e816dc031993d41a19f2d7bdf859ce569206d2f7d602748436402306f8ea77eaee4e5844741a0e2ea009010a8f39b59d0ee753330e2ae8eb3f4a999aa448b87366392f9a132df4abb0920fa0302047c435bb500673065023100db6b05feec11375c357f5af2ecca6358c87fe42d85b24e1b435113685271b9dc0d16e660b70916b03b1ddb5230f36e7b023037ff4d8e5a83e40c5cf52d824f9fe87dad5fea4391cc190970ad1ee886c17f91266fb3cc64b47a7d614904d364efbf5f0302047c435bb500683066023100ad7d16d2a32cff0ae12b8d8930d6d41a9077d92320d6c52f0076386cd71d89566353b29769f70a0a96f31ed2981d9883023100fe8453bc7e70b66fdf55a0e4d0fba25a3cbccc950bd0849f99e0b0a27a5653ea74e52550f349859761f1f74dd44ad45e0302047c435bb50067306502303b580eb80e9ae12b0ea4d1f454d2637c074ab3b62306be43bec2e1bd03af2a80c6f107eb0dff71890ca0b1625d790870023100981037d65cb33fc1c43185a57266a24eb6dcc86e9d3ceec1c27c5e2b10180c13e14a4af985f0de1c2cce579ca79f73180302047c435bb50066306402303c06d44064788180f15cab3728f95de18a71c55a20d690f148fc0377760ecb439c0c7f35507c7f15023f40ef0d2d625d0230543552137509875deb552d64aa7fff9983b06bd2000b3f90fdae71c77fa776eb9116e67b7b0cbdc91640c0fc2f80e53d0302047c435bb50066306402302faee7e738546501f7ce644f2060485b48016e0d02f454352534288d46081d19a8796969c0354595f1123738a1423f7802304e6baaeb6f9052ef6a35c53b66000976c2de2381e79c87c8cca1c0be5e0eebab85abc5f3c871558218a1d970b63f01e10302047c435bb5006630640230749311712ed2e74820ced0afa46f2788331a0211fff8a248a110af95e71053ff47ef69971ee53bb9ae8783d95ad492b902303e75a97561d0701c49bfd3c14c112fe504178e6ec0b19297e037b8159d7aaf9c62467c3c1294a1c3c70314bd4923fb080302047c435bb500673065023100b3767ef8bfc76980cf617866b091cb97463cd43c4e0807cc885ec51baf3701dfba0f72950a272a5b8023d2100429c1540230609129bce402899e1940517bf94064fba8e88162e2a0e0cdad485b3e142e80ba12b36f1186bf44f6f428b4f3288223fb0302047c435bb50066306402307ba5dbe559eebe8368f42ffb4d86b1a6b025957a79b31be63b4cdb95d1cf75ad29b10a639ade1d88e3a140f511bd729502302002e330fc99659dae1bfcbb17e53f96d6217e50f6d68eb1ae656256867c09b820705f46719f276feda3a5b059b0f22a0302047c435bb50067306502307e4f61cec0d53f4dd75f7a49fa13cc260d8763d73e44c6d39d380f12e653ec21828949da7c483a1309db80fa4cdce690023100c43f0a3822c4656a0b2913323b4fe1e1456efd207d4252bd1ed0e068d805085e2fee9595efdd34a8bd28d70d36607d2d0302047c435bb5006730650230397278157328d1356d0b251a374cdca95b4a36d2112d4ccbf0b8cc0739fa92b6ba7286b1e4ef4d2c67c8e03322eb0d97023100d1c84e9e4f09b53052666c9b78b7ddd7edbac859470fdc0ff9377a288449239f0b9ac381ce30dd580c57a1f83ef0bf120302047c435bb50066306402305428890f4e92a624016120de845f753f1f6378c4ba30e447b49a66f952b79e6e841c0df233a8d77e5f1a4ce3c2479cc90230764b7170d09191f2b9dd5c1cb1c936f1bf37bb292b8c060d45fecafa5b7d4cf621669ac80533709258da4df8404a025f0302047c435bb500673065023024d799a3ecce6561509db4fe5bd2f9bbb3a12f7310a508a492e5320f9772b3a7d5ab6495153489f1384fbb655d252b8902310080c89018d77ddde76b272c7ecc7ba09ab6ce957d4fd1b298cc4c1a96df60d6356b75fe1f7cd1868f5457047a2ecc7a340302047c435bb500673065023049cb9ed8f350ba6a8d8abfb92945a131276b6f6854657d9f6dd032aae817c6c8a6df595d238013e539441c7248957e0b023100cd5ba6f74f746e06dd206866af87b77e217df60c6a8eb8694971df6e492b6c5f5818f4a0946d2be65e4daceb8a620b0b0302047c435bb500683066023100f59b8b035094a3b7f00bcab0acba8a2773c506097dd3e67168b2c5f3df174554761b66b3659b368214cdaecede58cd3a02310098b65320710587460f40351e64e97a412d3b1a06759838cd14aec0b1a4e42bcad65e287802121db91cde320a89db0a510302047c435bb50066306402304bda1932229a286d349a9fc2faf3794eadf75703a90a4177cfafeb2c91af26e6ce2f3f2e1c9a4876e97db09be6b2c33e0230122b369ddb802fa19bd75b03fb05dc06a2e275d8c1a93f69d6de7bcbd83d99abdbbaa3c26751a63acc8d51e7449eca160302047c435bb50067306502307b3cade810917468957630d8c3a08e977102acb5c42724e52cebef98b98a2245d0a77e5f6949811e2decf41fad9227ca023100aa79161d6c7447804c85e77c3204b7cf7723b41762685acbbd2c09b3d78e2f8dfb3761a3eb184cb9df267cf9e1c4fdfb0302047c435bb50066306402305b87b681a582b0179506c63a913cdcca51d7506a1d9b062d552dafbd6f2b288411710149051c6cc5ee1eef8b7438355902304efdb47469a6e8abb666162317f5f9a3e0fd704b3ff8b2265e90c716dbbee7c93c80b0cfcbba0423444a3c20bca1fa150302047c435bb50066306402300101d652149305362319c4eed14c5283630f6e1bc4b2163dfcc0896ed6b27f5c31f1a1d6a751b5a17f22f6c19b8f600002302d68dfe31f1132344383f6a4c0de7967ecd2b8e44a898c58fa4a71474dbf973628cb66d8cdb6e05fcc77efde86f2be180302047c435bb50066306402302f510bef9c3e54456b4f2feab61ded1c1f32da1dd94eac28341ef34be9c8a247e2f823fea522a7322865bdc5b1066b240230299709cfb68423899891a34ee8df6a637e5a52cad086a74e0807cc59d80b27eeccd1d00dc2a8edc81b02b4f6db5985f20302047c435bb500683066023100d0498e8baa66a3aac872fc4cd84f2f7dd98651e026b384ea9b14dbd3ec5d3cd5c9fabe4730cda1309bdec0afe0089c9d0231008ee8d8d2acaf7a7a181787d55dba52eb66296fb5a523db8965c202f947626d67456937faab7254f811199e4319dc9d520302047c435bb50066306402304a6528beb1116d02ab8b1af6aa39a01e527421379c48df2098fdb1d68f5b5090e402094a081aba5e229b4e10c2b137d5023067912eeb0465580cb4692af350bfde9b47ca93fb800e892cf7e36a4188e3ce8d25b6ffe951f12d6dc2bb9cdb45388b6d0302047c435bb500663064023048aa136e6c106981c16fea6f13377353af1712cbaf3630b8ea3141257974575760a10b265dee2f125043b270a383211b023077d6f6305ffe1bf5aa8487bb05dbc7852f400cc750740316b6b774e2c4f83298dd1b1f296e26721188ebeefb0ccfb50c0302047c435bb50066306402302f742839ec67feb0c7aac36b58e720e0105a6901b41e5f61aba4bc3c8b1bbd28c7a1b26c3a7d12064a17122046faa07902306f470be8b2c60e5fe4506d6e766d1a90401c1c346828368468167dac37d900c766ef8898059a03946f270b2fc6516bd40302047c435bb50066306402307f0009772b3c12ee8bb144f6562354c17e1effee4f993c88b535bd918e60293aab732319d8e2838fa7c4e5bb520203c70230063cf32b98801c041df31cb76dd0683c93e6b2334c6668fbcde8f3f9c8acd057f48c59d6cfd8a20410a468b517c498950302047c435bb5006730650231008a6eb3072c0400b3056200934bbb7e68f4dad72dee427a71623253f25d48c772b892d4898f26f3c9f6dfddd587ae9ad302305eb45e5693085fd6420e608b3c4a6d0295582bfacf02a76031e21e0fddc679760eee11cd5938ca7e13cf9165f7af83d70302047c435bb5006730650230285f14ab5b6845c67a96a24f88f8e7d5b27e199f36e4810cc9acca8823595c827bdaa21cde273392736f70a453916bfa023100a3778511788e196acc20b915b07694c47217249e68dd027fc60c6f5afe6242b5db31bcec3205c96f9cae5dd915bdc9280302047c435bb50067306502303152203bc4598296e1ccd894de0aa2aadf21c833930e439371e97ddbae31cace46ef38edb8441f2f39d49bc98260597b023100b365c170d3c8dd0e0aa1b77df39d8afdf21e24ee5d3936dcb4ecd73d370fbcc871d78ff4d1fcc47126382cd8168099bb0302047c435bb500673065023100d8f096b550ce545f478df804d429afef552dab51cded50fffd5cc858a8eb8bdfdeae54ef0eb180c37e259d798f90563e02306a2603e26c45a2ee9a7534ee97cdd82ced6728758e5f3f1cc8928c777b7d817eb01dc4c877a133e44dfd0745d2ccd8f60302047c435bb50067306502301c147aab05b42626edb4091a3908dd12ad6b50f0aba0bd60580536a27f8b641a7bb4ba2bad45fcae0617751451db8e22023100a0f3b86d1f548090f29c8e758a90a72a28bc8b19d2c0b1a8862f57578c6e8b2c72569e7f1dbfeb997781624b7f92a83e0302047c435bb50067306502305fdd07d99f051d4b83fc3e497e2af47a3c12fa7fa38f0ab6c51be70c7dab1a54aa8566ba4da9f1ba124ce3fbbebf00d2023100abacd5e382d8b6a54ff78424cf8639490f152742d04680f111eb2a410863ed7534326428c6f51624c912d13ace87bb260302047c435bb50067306502305b93896ab6b52e261819005d8fcf30e90b58cedf34a53bcb73e512b9ebdb3065b8359091a68fc01ffd5f92da7d71cb6f023100a78d7d0a57cfa59e1a140e4f66b989b74494aeeea7bf17bce9e1f470ee110dd33ae800a34f89d8d59b389b902d423c570302047c435bb500673065023100a97f987f1c1fdbc98b458bf87b1b0e722b551a450219db5a3b7905ae9ea51bdbd862be6bbe51111b76521fd7bd0177dd0230398700dc6ade5f62f408a44975200c020c9d65cb02c858476eef0dc5e4f83be51a8e489c97bea2c8b6e2653c764115cc0302047c435bb50067306502306a2576d22c22d2c6da55412042ec398ab2793057e8e92b8676ebf50c272b7a4d37be04df3f1b71702df7842d70c32c8a023100b8a0770fd074ccbf487adacc8772a39a87c1ac3ad781ec6400a9dc99280e6d6ea89287a7b123df4c27fcab04590fffba0302047c435bb500683066023100bd3be46538f97b287f10782e2fa852703dc9766dba430eee081b51031ae7179e71981ca92f62e46b5d613a5a80fa06ea023100d803a5c54d646e832d2da651cabd9a457fc52b7e59eb30413bfccc67486ac03e640806baa855215663700b257f0afeae0302047c435bb50066306402301d9ab20ddcd062008a26c46c849e24d4291c89c29aaf2b4909d060c60b20523558d329ed5ea67c928611544c345ac39202300c3a63dd99ac85679a13ead589d62efec2073d591bb73c71d5de2051d35027d6176853db0f5d7584aefd9724a2e156f70302047c435bb500683066023100f947e564a720f166a733213f7c9f1637b9a03854fa7cc2a19075f214bdcf7b32f7d8e6351120bde065c2f17507970385023100c86daa4c6309309476efabdec21fb5950c74f01cca690981f9d52732c7b48627523f9bacdcba176e9f90b100728c0a6a0302047c435bb5006730650231008ff1d6504470e1ac21427d563d331b894794626f0bdecd4495968fe81b853a6b8f55d53e7bceb37460dbc96293fc29130230741730549505446a435397477e3e7f7d70c1a32e34929efe7f320d46af304029a3cc76c7702ead8b855c238f513df9470302047c435bb500673065023100957bc661169b4785669807cdeb4b06b99dd7ca978543bf68e22830d47c5a5c5352bbbe0853765f9d354d9ebde7a24a69023059bc137546cf474ae5f899a3f7002044c6357b1449344e193583b3e09eeb08ef942d10cdf9b4a0e7c6e58427ffe876fa0302047c435bb500683066023100e6ab624a10d1d083b2ccd35f2ef1cafdcb5117ef1fd2788540b730d29543a04e5bf94749cdd8398e5d598b99ed1d368902310082e54424a3f652bbf1d9ff245bad94c3efaa01736d600603bdd7f0a7ddcfe0bee8924385a4bca309fcab57678f2885d00302047c435bb50066306402307b2a3804a5071687c10f0c33151219afbc6a6049bd14403248a18a86443d3f9ca24c55a5fc78b6f61db17c69c85fefa602300cae7c258a2989bdcd5a6ee00be4c8cdf80028dc7e4b76c1b6ab498a3e5c8a939a31d37f32882549ec00d392614a9bfe0302047c435bb500673065023100834538eab225d5d8877b04eb1ea52a43304cb3ce92a6591153c6cc35ece7889b6019588de5cc9854007cc84dd3242bab02307b9bf972dfbf09e130fbf53ed4e36e22732b3802e81a80f3001b913473f894d4b356fac4ac3f5edd17ab87d78bcd89c20302047c435bb5006830660231009fb4dbc0cdfe234ac57eb569e870f29fcd56d0b0f8e41b982dd91a5d439498a64ddd8d147c132f89f7d1e1b8ab3b6bfe023100f6c89ec94a85b60fa5d787885142a59d8819185d38122b795ac5425e45d8dc511699699e701484e8828af20eb7ee005f0302047c435bb500673065023100dfafa069e9d514a2c6cb2b1b5446e5339eac5ab29d8305eb104fafb1bf094c8300bb3a8c8bbb0b89be1eaa55023877d602307ad30eee9df78c218f98d3b2858f0c7d1d435a64775ab96602bc5c665397b430b789277d48ff85e13fb37de9ea9b624b0302047c435bb50067306502303c7cbb26942b78d9ec5138f5b1ac8f57f4cef4cbd7010fa5cd815bcbd850c13507361728ed52c42d28b69a83b0abc87d023100b51db2ad90f4d6c092adc78ea4a5df7750f117d71a00d699ae39a756af7b406904f33d08dd6868391cf528cceac618900302047c435bb500683066023100ec232badb38ebb3899e99030b69f3625b533ec8f5a3a16d34f53f1527727a5d1b85b46019b51ff89eb13b88c7fb8098f023100a2fb4d54ca47bcc54452dde9cb829508ccc4eb04578b2c5a33f50e28123d90e8ee94018fc60b2b53674c586e76cae13d0302047c435bb50066306402303d00e68b1a47da2475f6437eb24388ed312925d808e87208869886e7b68ed2f9e7fce1d0317fa6fd41d4fba60ef501e402303b8c29713e4c175c56563e232a95a3cc1e4ffc0043b39b2ce72975a7973262a6f7ad7fb703a97ddf2fd9d5229f7f7f2f0302047c435bb5006730650230784e972f5946b094fd16e41da06f8879df55c0591dfc0689df8da349c9ef61fcfbc378ef45944e9f7bfd126925540733023100b33a2b44b302975aada8dd3601e2cb87e4e86b448a6356141a63b131d47a49bb0ebee53bed6f55b5ac0b4ef43a6cbc440302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230739ed7d1e13b9663ea3fd17b325c10ec8e8f361bc46ccc97d908fdc4e0175b07deddececc765e0193e6e4efd2c6a892802310093b75d77213d44b9bf0d1a1872658490e614a64259dda14e557ceffe3ba4cc76d119e204a3f71fe4f931d78f42c7a7fe0302047c435bb500663064023026ee331e04449d471d69638614425a798806661e5b491c5b4fcaf85f8191baeb7acf3df1ded0b5954d5c191817e2b04102302d72d61d808fcbe20880d10c3f16ec2657ead21e6022626796a7b0dacded5acdcbd8b628ef6e9e705f31a988c19eb2ca0302047c435bb500683066023100c0e50669f9de1ac15a6853add14269103ec78926c8370df39af023553dfce536dc233431a4ffa3d77aa93d9bf6c371cf023100b6921e5a32413295f1bb6ea6b3e27bfef9c53e8dfebad930413aa4d9a8e9f4883e7a93959ee540c9dfed570700f02d810302047c435bb500673065023100a282cc2e983ee5674ecf018799ef7bf3c6bf22721440f880236bd4cef8a91a07c35b2efc31e82084fe942c45edcd8e63023045ebea741bcca59ee2dc7d84839a39c7960e0efdff1cc1b09912e02386632d120f926ba1bf4e8b0455ed696d25b90c9e0302047c435bb50066306402305ed18cc274ea3cfd2fa18a17b61c79ac8288e2c8fc836e169f72f5cb2c5b60bedba0be1526ac0dd0591d9df0d15cf66002306ea6d62b82b0d3a9694d80c16d8d732fdc17a9080cfa069e0b55e379f2b792ae7aa31e878592b4d7e8a5305f8ef72b5d0302047c435bb50066306402307d5b0cae5935a35d493ac202484e4903e9fe08ce3f0ce5d841748ce08e1592d1de0c01a2f7e6c74edad94c196a169b6502305c261545d66185a651bed32728737fe3e15217647497b3f907941b450b15a06896766a3d9a0895e11f8d636e292239160302047c435bb50068306602310090288f34cf75af9e3cd8bcfd77c93fd48d405a3787868529b071c30f67c583e101370bdea91ec17b93cadf50bc07b9b0023100c5c7996f30419581c9e8ef85d81ffd76b6d49b3b2739f53f95a0d862ca2632e7188e7430931f85d30639ab953ae48c480302047c435bb50068306602310083340afa897a59b2b308fb7edb55483cb8f68ae70504f3e3bf1c830fd0645f40139c6e619a80fa5435e6aef63be2bb26023100cda17adcd0ba706d2910facba584bae180e1d110bdddc58c8c84f29f6231a619b4cb201ef9d57da3cf7b7044e9d44b350302047c435bb50068306602310084fa1b8a996b78f7f3d2c5631a1bbfb4db3cf64037f6cd59081943f58b5740bb8f777d5399b399627e6251bca2ff98320231009bcaade229ae76551162044efa3387ab961c657ad9517ad28a64009274cdaa437f424160f98fce9ae27bed889f6d8d350302047c435bb500663064023040ab96487996bc18d291a5370ca75d510d5d0b297b603a7b2466d30648d1e800d3fd699696857b7aabf5be284143f6ce023044df90613d2a94361eaf31b786b5e0949e07c69cb8e6ba453f4038405e0478743c8c9e872b69a1276e87b75c714175500302047c435bb5006630640230172ac5f748fbf4f132a4e258ff5d20793a7bcd8e702a0983d89e76944ad7f2dcae9f59b7b58dedefd2e58d8413e2e58602300c1f00870a48a870df332d10df9ed69e308614de11ab7b9eb6c8f0cb6d12e0ef836d526917f49b86297c25fb5dbfc8250302047c435bb50067306502307e24b222c9c2cdaa95cbf44f1cce36900aa4999c990003e502f057f02a336a278d1cab72c6ede099bbd5b89694b9681a023100a6f160a83fbd11a9cf7034e78ac73cc625fb55c9d7c85c3976222b7cde7e6396a7c20313e650288d06a6fd7f5c307d790302047c435bb500683066023100b019bb52058287c2441ae8d7d515820a43d01734c6922e2c795a84566fdea27509fc928bd75fb36f4eeb4523cd4022730231009cf2fd484370fbd1bb6e74a754529054e4fab9680f29cf1c2712f694f59ba2b3019231cdfe2f58b5bf0919bd195b82b50302047c435bb5006730650230432e3b99b0066b29c7c454de44ce21570831da1b4124eaf55b0409cba01a628dddcf462eaa2ff9b650e7ee7035c29e69023100bfefb3dc674240e1c5d63a1642e6ddca53a5400273cd295358fef46426f15e44a9c38877876fcce0423eb53a58a245870302047c435bb50066306402301bc7174b825f93148675b8829a3c7b8fe0b0aac6f724df98d7cadd2f956aa37eb6ad2e484a7a481071ed4dbb22d13bd302300645c7af3e6975c3fde858b03cc197892be6ae8faef3401a9c557a76889e0e48c61f43c87fb228040dff92d8d57c9daa0302047c435bb50066306402304365bb91ab41872e3bebc80196f8488e488e4210fc88638c8efca2d54af88178d89d2092c25a8708efa07544586aeb08023065f437a118b2ece03e91f80e6576dcd975e9d7e5162a4143727e13184e014b348fc274d1c9e3a16134da57cf342a465f0302047c435bb500673065023100ec0ac55cfa2a4e409a96920ba2fc6fbd8d255bed4aee3faf58320455871d41c299d93d6880ea5859d9a4476c791cbc6c023054f12ab906028dfa56850190a024eff6cbbd1f1c4f2d133da8526ca7fe91d43404754fa234f948a507621534c54650d00302047c435bb500683066023100d686869eca6183e752df2bbce99c3b78c752a6e65a549a0dfa1a8ba0e985e1d73ecd660cc6fe505c43b6e0bc0d33e5de02310081633d73ab990241c1a42e20e089c31254cb79fddfba543d23e42ded61cc9fca8e641f005882027c018c8e79a20672ac0302047c435bb500673065023100fc0dddaa16032bb104f484794fc45f3bbc56d458858b96d0a2558c6d2033c0dac0351bbe482769b87a7037ff678ddabe02300d04861ec5ac6a01a87f0704646dc77978e2ff9621d51f21e7c111a68b243590823a79d974f16202e434bb7efc82612c0302047c435bb50066306402300e501e5dcbc7ffc839e0633f14b41a1153930886fe896da813b9393fef5b3583cf405aaf1e1647868ad91b93453fca5d023027ef8b31309511e8ecdcd145cea3b3d6e6540f11fb7d04948e17e77ddabf9b33b954d39d9daa8eba017b638a8bfbf0b20302047c435bb500683066023100b7d00e8204e79d676ea470b7494e042849e2d304d4137be062a7c0f73e90d155e5d200bcdd3c416027b0a7fa7e2811bc023100c85640438f20197e94fa2dabf88a34189be596931e063d00e22f19067fec48e67b6bd053b8d39217e4329a408a7827ab0302047c435bb50068306602310090226a7262192d3661541146bebb025c0b24c7ac2ba13e9fa800a3533296f2c8755d35fad675666dc6ff8dafc406dcd1023100a8b2967cf64cc592340c928053f78639866a7d4774f4f2f48a36067cd7f0a536dc6e60962b4b36fbe17832aaa2eff3dd0302047c435bb5006730650231009ef1fe5182ea82a867c7a3ebc78c5b63e9c8b495fb973d864d07d3ef69a07926ad34632a0dea728113dd393b7ac6c95102307d6a4e776f4b1fe5db9dd8c85d316dc84a6331c17ca824bf973ebf2dc91ac317a42515e0d0fafa270ab115ec39c0cfce0302047c435bb5006730650230586a8411f5213aeaa8ca5cc3287f63deee55c9497673087ba8c888e0e1929b5bb82153935b451fe31a5f6e9959dfd56e023100e878f8b29f2cb60308ca8d3d90413f31982937ef7f8a0ebde3c76d8f66e7dc2cb6a48cc19707ded90486fa7cb3a6c94e0302047c435bb500673065023100e6f5154d8825e9f00622abad5ff185b3f906cbb4426d4b31b2a9c7c5b5cd0aa6bba42f6772c525b3003409002cee4e20023044da9a2b7f8d760654a5259f82ceb36d58eda2e1fc60cffa8f8a8b8f064b5b1b578218f22c14c1b62e4551bd6387a1d00302047c435bb500673065023054cd097b0387cd8d0aa82614051bfc79f1cccdaec079576827ea4f738433df013b1d7359fcb93d61775a070c1c86eee9023100a3bee49060086b1d3b176600d9c669c5c1ae8d396c89f26f990906718044596c94852563ce4fa6cb1b594e0a790df6ae0302047c435bb50067306502310093903527e62b2f977cc7acc519bc70771fe9e6a312a62d31840ba18f59a4179e5418e12f867d0a8ad3248da2d181e34202301879751fbef6484a7d4e2062d3fffc5948da0e2bb1fe09bc32634d36d38b13f865df1cc742734fdb93be7cff4d1b56b10302047c435bb500663064023031a9d717d1a0b0f375170f8b647d4485edbb364bb596cc54e74f20981b01c57ae31811c41a32c4bc551448d584648df40230176d3bf3dab89f3a9ee23920eab91822cafee6504d2a49df6532a02ba11115082505f4dd96724fd1df41970980bc54ee0302047c435bb5006730650231008b8a245af5479c14dd18e57ace294afe29013ca878bf0ec48c9e687996fe31e85246daa98a22fa7fc49feb65b2bac1630230102f30194483779e3b509d60e575d329d5a391fcee11d5d218ae6bdb294c76aece82c7a8f290602f4286972f6d2c03550302047c435bb500673065023100bb5659c90da6fbf5e80d23a7173c89803a771cf41e4885e61eed869f34e0bde8320c4266bc07630afaad8ba7b15619a502306306eb3b9bc1d563ca68bf3372258120bda869d339f8e62b4e17ae184d4dcaa37c3a2be759cae7cf411181f93ece8a170302047c435bb500683066023100a0a1e4a86eb6786f6978acc4b72a896a3df3ee91e6c787217571b9360d692b2e48e52046f0432c4d3e5d289f47a79656023100d61e3044ed12d94a41dceae51a5c55d18c6f3d55e21f5a771efe38191bdc1e1dcf20276fe4bd58554bc04c4b463c513b0302047c435bb500673065023100afd0f8aa4fab74a060908a499854ea3d1d23fb22bc296b4169ffb286868212c44fb22e43da48b0c61494f9b3048f947f02301b49ea70cf7a27ead9ba594ccd8b1c7f38f7bf23c0be54f8f02298ca0cd41c430487f604fcbf410f06ca8cfeb904ba700302047c435bb500683066023100d6bcdaf97c4f1e70d8b1592d0b5b7d53c95e2fc8983ab28680f28f02de2d88beeffa9c22ba9c6f885e448231833ad0ed023100f31de7a1bb87c037492f7b785f5a0129499f0c74126a0c9daaf5f923da6b12f5394c8975baa1036a599149537833d7900302047c435bb50066306402306d94661b21830d7ed99795f2ef08940ab2ca3f856bee1b4db60c3029bf733729636501e5c49e5e40ccc75c631dc1d6eb02304bb33def017cdebeca30d598b28713ca242892e92c5227dc2836d22519bd1eea00735ed88cf8ec49132a7f8e9a0a3f040302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f2fbb053af37e98e565b2cde6e97c24e49e70a2e850bfc4a5253579ea08b80485296293ec12787eebea784cc3cc2eadf02307a27c27c654e85a510dd0a62edc55bd5116a61138cc3134350f67a87678b531c3f2c6add013a4fce73fb089616828dfe0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304b38873358f2fa3be0dd622953b09dea3f1609b7f29fb1ae4685accd7f4ac78fec4b3959534265e897fe847e914aeca302303fb1880ccf73c71d491da083d6802131b261ef56a9043e8d2444e1573ff76a489a7005b82b250773c1772ac1f49dda050302047c435bb50067306502304ff6650a0eb73b4935922c250afb53b76e0996174daf98842dca1e5765db016922910aab06935de079c1573e03f57bad023100b423225ce18bb6f287903ad623ee01b1f74b6de1ff4d91bd5fc9691dbe2c60d095ce6ae62e9246aa5a6d2fdf4f9110150302047c435bb500663064023025af812b79eb938988afbf67d1979ddcc51d3915ec7065eccae81950006d7959a1db80050f545efc8b3a1bf85e75ff1702305398fa2b82e3152d630771658288d00ccc2d044159b236f722b8885789bdf115c3c05953b65261c63b89afb2aefd59850302047c435bb500673065023100e37bd39993c9cc0cc0e6e2acd993c4ed6f0b3b6ef937477bbafba83d06977e553a14f9b47804d756ec6c2621ec761624023006c603e1ac034bc6dcde1875064c3ff00d747b15ee17ed1064e504b1dd9f074bc6a02c8f9cc7ebf9e0ee5c6269f7c7cc0302047c435bb50067306502301dd24aab337db042175793f7af1be54ed7cadbabc3e9c814b2c192e72eef4c7faf1f762b6518522bb47ade48a7525cd0023100933ef9813fcaf8b2219d57e40a5c1179a7a34a3f597c6fbfc0a3d57702977e1a43f0441652381dea14f59ffad1f83d500302047c435bb500663064023020959f3e47293cb60abb243a0033dd69a5e3812c20e881ca4d4a234e3aaddb293f4123d3100e3d2d6c96b175ae71bb10023074f5f1d40f1718168413d28845e6fb16b8c92e9dde08c5b6864ea4face0a2e92966faa30ec53f5d2e4d7b02739dc35cd0302047c435bb500663064023069d7364695ae5a203bceaa23e776ea0c05a50908b1e2936cf972e140c957d4968c49c7f1668348d9d0d25a4ef5d7bc7c0230511a90251e60ac1f2bdd3aa4a1b183dcfebd0d3eecf096c768d09f9cf6a4ce9c69c5ce4137c38379f4f8c95c37468c690302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ee2b93c08ca78d26d1c3c969cd4f925040f17c2cf071b9dc588714c0ba9f19cfa2138d4f808492282f9b23e1afe0b388023048712a4b2444bf1210a23db93eb2efffc62c09b743f67f55dd742a88611dd0f39551663a76cfac1c48ea4dce10c0fcb10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ae4024c482ee9878d3434e80918face140c8763f9f6cfa9f1ed15d01b98e461ca418519aea7b2320c262012d99c3a88b023013436570647e1d4d236f244b5608df8d9e7bf4a02a8f327954b7b4264f1634a1a62775cce8934e7f3c6b08b34a73582f0302047c435bb50066306402303f37a40b3bf477841d70e35ceca8aaf308b15f62d995f744bc24f76a632482a0fe668fa2f15c4f8b433bcd7206e076ee023025c4aaca4b20489f5b44b42f1f2fc0760cebfcf9fc81ea12a6f2ee7710f3756da7899c95bb6047bc46a109b94af172d80302047c435bb500683066023100a1f675ee1462528d975ff74a6a1da58c6d371a9e7cc1fa6689f4a83c3da32f12f8f6ff443f96fb94f0864e60aaad21e2023100d57b4f2af90ee799a3264d56120b501014b548c7f7c94a1f9ef53042ec563eb1d95544e038cbcf5b668bc95cd07ec8130302047c435bb500663064023045589bdbdda715cac45a9ec29f38ac6055737851cb6e3ac3dd06cc0bae7a39ac9bff3af72373b0a77e763a170ca6f5b6023019f911854a7426651ae11bd632ca31a438006eb760bc8bb03d6e1f58d7288d79a85042e183784655cb7cdbe546bd489a0302047c435bb500683066023100f0ecd12a982f72cf62f7fce55c63eeb04fdd574c024522f39956702bef1bd7aec823d9b1783e437f8cfe967afa8f324d023100c695ee43301d46692fc4c40e7213062e81a255db1455b85bebea6ed043f3e76a1291ce959f51fb936d4424572fe5ea690302047c435bb50067306502310097caf858337c0f41d5ddbb0895a34677b2b82f18884835dc3686de129ef5e5672c9f0a3f138cff80fe1ba220511c2721023048894da12c8f5319fc6230fcdf1aab69f1586e0314767948ec99e8c5e0011ad4d7b25df14408e196834fd4a349562fc90302047c435bb5006730650231009b39579b08de1afcbfbfa2a6f585a588211cc3a989d2b4582bf963f8d22f6d7a3c79bfcfe40bae6502216b6087a27719023019d56bf17070d22772f33708a7cf3bfeb8b28359c2fbfce557a52e57df56e0f1bfc500746945ce45c2055f373f7fd1360302047c435bb500673065023100a95e9e1a69a92244d11742954d44ceddb8840dd760b71ee63b6a1494e9e358d005e3bee68da1690690b46dfa8ac51224023041528dcdd9ec89a6ba587f5908ebf1ed3511a709fa2529d2b6b648de2d31ff0a5e03b5f4426c204359101eb8b13c96380302047c435bb500673065023100a67301ef90e5f120bf12f478586671c22c8d446676e0d6fde5749a2bd55db67c06b5c61e3ad6d92097b33886248846a202306c719d021c7ae1cbb9879f5564e319e495276d720ce88b6ede9e381295d4ba3dcf5d33083272eb48868d9e78df0ffabc0302047c435bb500683066023100c10f96bea37e345b177693faf449a66aa2d46dce5ff933c97aa912bd7895d672638c003990965748bda3c38068a52fb0023100ad5de72cd02c82ec0435af3fc0816268b9a48b04ec4f794c0ff24af8475fe1187aaffe16ff57134df1029fdac44edcb90302047c435bb500663064023051b399e3e46f202ad85462db6042b9085c2526400cf03b6eab67a58c399010b9e9e7024ee10a9668228ed955a5df771a023010feeb5fcccc478d8afae4b971cbb2f333525956f3d16501a58e3b46d0b4bc349487e2cf69c1e9ac5a27d2d8ac5b860b0302047c435bb500663064023032d6efb1521c3eea00f2be74a0a16b89517ae3dd899fcc0ec0b6d2227f0af31bd81ad4ae86647b7d73c32dd5a57c452d02306f26dbc6c2cee0196bd8ee2dcfc605565209ba5b22c766dbdbbbf39ba03e0b1831000e6dcd9a5868b040d6b7a135e25c0302047c435bb5006630640230675d3ed5330d24c85feffec0c491e3deefc04d3ba85e44ec9c6032c3a36b963abe0bd0b7be559e18ad4e5900e5367df602307cff390f0c1c375cab85ec99f53f05c8dbada719c296296fd90efcd4f5a03caf53f5a97247a5b95c7a8e13c3d8b342cb0302047c435bb5006730650230610140866bd9919735512a4502e4b4151b68ed1affa875a2354bbf2f293ba0858054ee534a5c7842982eb63a62fc3c46023100c16c18c9d865d2408ed3e3eb2fde7ccc78707918bc0b10d4fbddaae8e461edae8f020360d837e12f6e1e119d47b90a700302047c435bb500683066023100e1d841c5bcf7e96e43f4c84efc08270220beeb860fed96faafa44461c70e9e8056f4523fad73c93ac5042565dc95a0de0231009fb749a1d50bc262cc25173d5673475cd81037d531683cbc05efbcfbeb619742c697ab431b0eb4e30af3de4f4927e98a0302047c435bb500683066023100eb676521328796d5ebf93a5c0a492847806cb0c656dc60504fe81b023b05f234d076da4e82e4c357ae207b72b44c27cd023100f0925b3f10b45c00f3e031ff2a5dfd68e433ea7feaf1c95dd00b742429436fb9b3b15ec56bf03fb3be7d342e724916540302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c0bf73d45006e43b1cb335d9c32b3e2e4e3795c69708d783c832d14ae0c311c2d8da47764942ac71652c8d57dd287597023100e6456ea988caa310a6ab7fcf3c77ca3dc64a7bedc8de1f77a1f9f06f4cd7ebf2d2122e414dd336f5f9557abdca684bf70302047c435bb50066306402300d72c5ed44e1d724af8965fa90f745401e20ca2f81fb6db995f1697889f5aa7fce00d447a09cb0b53470a671e207651002300355e12b91e6df9f550a28809f3cad74b1fb5be01659e256af7f1f052fbd4fc79bff40d08649e7fed1ab85d80054bcfc0302047c435bb50067306502310092d3e28dbfbb95267bd7f3fef14f0d402737102afae18961c3f4ef1003db376f86aa6fbee1eb6b96c71114ab4cbed62802303f71e9387b41651e894c0cc3c945ee6acbe21610e0a68568dccb3942c7e6af3b29379ec7ca32d31b6dbae3d930d49f7c0302047c435bb500673065023072d95339cecbc5b8d70692421cf713784a392f98233d91ec1f6a16fd0852b4da6386db48c016f692a3b72c5bd97323f4023100df45751550bb386288eb0ca949309d5cd96c5286daaf0476949d5f0ff132850daa36a87ca80a6e65c86273de233d20b80302047c435bb500673065023100d939d2248ad933087d4a8754df053b726d6868557316975e9ed3d3466d79d488c3b66b5fd338dfe17e7e9312d8ee45ca02303b022747d66cb4eab19d48df3aa6f73b511e90a569e3c4c5bd58ba6fac20d458775efc7f5ef62dda499590cf336c75610302047c435bb50066306402302587a39cdc42cffd89d965272e1d9ee40ad638dace83c2d4e111f7e83cf0dabd8dd9979af78bf4e98f05d5fb6a4e11310230590c1886795712bfadc786411cfe564d2a9120b85237cef60f5ecf9ee079c7c6d9632a0a410439414b55351b65d8e67c0302047c435bb50067306502305546e1543d39b213780fd4421a3751a4e7f65f45496fabd34abc584f947247ea45a7cb9ffd92b1f1cc7143b605872854023100b79536733d7955f3167fe6f0e501be9c990462fc1694b5587613ba8763b5665b50cb89bf69700c11c1cc60b63df4db740302047c435bb500673065023100dc0c6e9eeaa21846ec0fb82d24a3ea30cadc796e369d5b1e7ed26b76d59a9202593d26010e026a0d1d7b2f676d89049f02303dc48c11dfadd29bedffd8f87f91d217f4dbfa1ce1df7c53ba876a5d9561236ff01d612336a8b8ca577cfe1898e582ba0302047c435bb50067306502304f511dbf9381471bc644cc2518a0d10e5b14a35347acdfb798c328a8138a43534b9eaecea7a948ace7c9d06e670b0cd7023100966166ed4f1af440ce3c3300f0b952c7ffa8f5753bd6eeaab3d33413066033e2f5890d13fcae7d4de4f9d44be914579f0302047c435bb500673065023100ca51e6c792aaccd02d7fa97da02176c85f5be43d0dc641d33302c4712a6dbcfa4a3c3ff5db481608cadb0cd1ac82563102300cadc8fd3c456bf6a3c42af8e39e867cf302f1501363aa6b5619a21422d9bc2220fc4ac7e7fe7737eb7f7a5e04a531440302047c435bb5006730650231009ac907c982042bbeb36f24267c311fbe45e10489cad23cf4c58526dedee1fdf5cf8d2eb46d4ab748c8ee3bac610279a902306bca11c6d7abefd3106f559f8ec97a4cc73e5022efed12b477760a8e496f6643aebec1f99c94c7794886cded0dfd41950302047c435bb50066306402306ea38a5c4d783399aafb70510d8aaa5320e289a0776597d993fe938cbfd4a6cf51b704661c33ae984d2da6f76e60aa7e02307de2246fb4c317355aecb9b15f170f4d68523805d32bc3dce4004375bad8910000d6faa2101df0e6cbe024647875895a0302047c435bb50066306402306bda06df06dc7b0407105bbf050c9e7690cbb5cdb0d6d0ebf2e972e3a033dff23891c12f1922f2eab6624eba298d77bf02306c3e28902963b0213634411c7fdd27778734b465fb80e10d581c3a8dc40659c4cacda728e66be9d442e6d33edff08c8d0302047c435bb500673065023100b4f14c2af82d833c84831a2c8bab3704980ca06ad1a30763cd8acd61b5c4ff7797bae35cd85d9f88bd5e7c4c91415ea30230723930a91e4e3ddc1bf60499dcae816e8b234e2f340adfc9047697118cf4bdc39c387cb089560f2dd18ee673543261500302047c435bb500673065023100ed89bb59fcd3cb5db11e86a4867bf344d5d9afd7311655d31d68ae427dc6d3aa1e8da22129a9d6fd24ae3473233fe10702303113086a2f9d0166696ffb00e797e70b52dedc4031ef2a53b442a5aa06e7dd07f91b7abd85777e7df61dcb9963b7b9560302047c435bb500673065023100aee3bffe545ae7b1cd404f8e5a7b8fa121d08e4af7cec9e7888c3f85581bdd88d26b78b3722a43781433d87295c87136023019f562b79070ee0ca739abfd05260ceb587af6d9795eccac2916efacf581f75ad619720c2a3b018d42eb2dcc9907e6d60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a7ce5aec2e204f7b009b9192d4bfd9b069f4ad632e6dcda6524be5d464d0646432eb9f03ae5a0e49297419891235fb0d0231008f3374c8fe8471678eb8b05e5c8c88bcca70ff02d2b9636ed622caa57b04519d0e88f325016d3b894082ba259d0403d20302047c435bb500673065023100a9362d109f504ec15bb9ce883eb6d23a2b4a1f0d2ce58dca5cc610e4543d6f0377421369fbb0e460e8702765469ae90d0230461ddcb133f4825258e79672cfed6ef347fd02dde940bb218f7e6a64adde7cc8388ee46fda66e18d238853af835e65f50302047c435bb500683066023100f16be3ae14f99839f435b51cac0c763fb0e20d89d7ded46e6915a9bb27d9244b84cf9ee7f4d6b190da58c037fa948488023100b6602f893f2696120bf5ecf396893467c9fedf9b42fc5dacf8ed015b624ac914f370f5df9db1630dca88978b098767ae0302047c435bb500673065023009e2790e62ce807fdb0cb0943ba04ab503efc690f29871c3f7ec8b43b169a902e388febe341ac7ddbf62ce4d2218245d023100c9323ccf2446760107ccb2244ed0bc76d5289954b40d0a3a9fd42a7bc5ad83cef00cc6489138ef88c172aed75e9a90bd0302047c435bb500683066023100c1fb41d81c3e038cf5ba617bd383ed001d946977a34ca831eee39e0ec89d7212546e25a08427425e1c009f6863ca2c4e023100cb9f534a6f89871cfdd50b04fc6fdbc3c8da7246db8b11e088b71300ed32c9db219182234c7c2dd767101d735f94acfe0302047c435bb50067306502302723e6c5a0afa14d31510e154389e01eee34c9df53fe6a33a2d579cadee249b2fdcd77dd46a72d7a5a3657b75a65f199023100c1d50441fe3955f738ee1b30867ac1f93664654f12ebc6c82f8674595d113b497fe3fa798280761e67aa6e2a04fcadbf0302047c435bb500683066023100c0fdcee041040e1fe47275ea5d5f683331c56a9a676cc4d91417b2c273cff60e458ece47034a9b800c063e2fc3a2139f023100da41485acf1a0c6a42bcc0152313d4913fd491d4947621fea1607ba48803275a7f39d03205d10288b1feee4adf3aefe40302047c435bb500683066023100cbdfeb6cdb30045185c298564b83dc2e8cbaa5a3de4c0a6c227129339302c31fd9cbdfbdffd8f6c07ee952f64a5a2ed70231008bf24e38fca14f48cbf41ed04f71df9a2115efa643acb78bcebf8b3003d1ea0cf1c31c6a82632c7f3f5abd6e9a99d4d60302047c435bb500673065023100ac7fb9569bf7a8b39ae4fdff72bcbd9da04177c6a75f215a5a44767ddcffed852a96af879566343d927d1a410f3165ec023079d3eac81e3bbe1448ee9cf5db6667bd7b49bf6154fc093dc0c394dde9651520c2d5d28b7ee872022c7b472d03a197b30302047c435bb500663064023040866f5e29b6cd9c8f468a37e41d74dd2281adcf4ceba0d64b21a48e967e0009154df529763674bc00463c20f389e39202307f259b5bd3360f15accd56024027787b0afa46adfbc385938f3194159edb67b0bf65bba55bf2cb98e06e790fc81e5a150302047c435bb500673065023100ac50fce15064a5a166b714f6fc2d75005c84969031946abd6165b5b078d088af51bee1831237ac8e749cbb31cc1498ff0230306128c9aefcb2f4ba81d8bd4a6d2b0de8d10fda62145db9cedaab76bcec3125229a7329dcdb8b03dad80b83cb92824d0302047c435bb5006730650230140556e39ac313aa57d4aec1f0fef9c973d62ca45bc3f4cef10191cab6005ca9520875556362c7a272eb307f4b8cb907023100a733102b5d02626ec706f71a6edc51a5902e9989f4869d7c1626b2d9661bc0b3c5b0c84f449c994bf0376cae89ca1bd90302047c435bb50066306402304f3ad278564e3224456c02bca9a7b73f508615029fc1d84d3388a8278cd8fd1bc8c8c2676747b91e5dcb243ce0463598023037eaffc60c14fdf05eb2e9031ee37dff4d31dc7ae8d44fff16e964ffb3aa94be1244cda6a007dc8b7919cf1073e70a870302047c435bb500673065023027c9f1dc91b73c09db56b29d28e3af840f9909bc3b13f19a890bcb3b288a5369d3c453c5c779ee4708b3748556441189023100c52ae73482efbb7bc1d1f60b5cc42381d659675116ca643925b0dc1d2ece53dbe219f70aa9bb405f3a260934e63877440302047c435bb500673065023100b040d717f0f99efd8ec33c2ffc2e56f22de3d0685003185a000150c73734a7b6c77ac40db2ed08d9416622f17538065a023045f34e61b7d385597ae9cde9f716ebcc9d2873bdd59f0b49f9189aff8f37b1cee0fb1349e620eba0f7a877fc5cb408d20302047c435bb500683066023100d7bdfa9d5081803c25def8da8e589d4378b8c0e6a925386203bde6c65e29b12fec7d2d8ed55eefa01ded89aa94f53922023100eec861cfefea936e9304f8049ca5d888ed2512c7247f00754c87595e4d615bb9c3560271fc985b74c4f51f8a754c69f00302047c435bb50066306402300462c948fafdcd31e4639a8793a3a65571ad4278e0eb6f21fcee6e2cd66b6c1949419c6fa4c1102c404189b4b27564ce023069fa5d2dd8982204689fe9bf59feb7ef435489b5f07e9d9f5418070bb0aeb4557a69cd3152875313582d8243314b06880302047c435bb5006830660231009f3f76e68fe8ef6746d905bfa57bc5d8b7b969557325aa2f68af4b3a84aa7c23467c0805a57836272a09cef5ca6b199b023100fc430fd4e842e39399f7af5038a6ebf79ca6c219a2b682a509e3952892e8323e553279e8414bc3680113f3dfa56c5b030302047c435bb500683066023100cb967d77f916a1988801a4f35bc2626d9ba015bfa76cb8489752dc40ef56bcc38dc29b2e822f93bf8c8e87e5270c372b023100fcb5dcc44a8be943e08665ae4d0958e99d276cb2378c98b8a010572c41baeff76cdd20f65f6db70b6f084a9b1c8efb010302047c435bb50066306402303adb9863728fae27351df438abf2d21d383a7fdd8305eaecf8f09ef638ac069c883ff1200821c6bef63835f07a24cf18023046852a17b94187864111c91c88b9e83c4ba0b060a3a22fce1470942b82f94f5e47edcb43c611c62b3dfbd35d13b86c290302047c435bb500673065023100eefca63b2c68cccde2417ef5f123dcc3c3eaf8f88a43daa56cde49ae7ed93efc72833084a222f045724b9a8df0f0d46202304cba7f0e7333c6d70c62965dd6d697ddb57e629d6feddd865806b49d60f308cc97270cefd94b2debfad6afbc81b3d99d0302047c435bb5006630640230731f86bb992da5419fe98b5cce98a18651c51e949ad69ab314126b28c8cde961ffa61b6b4533b86ae69c803f8ead33a302301a5ed24923b2107f43c411366951eae8befddfecdf51f847c8a64d50f405eb110764a4e5759b1e8efa083bb42458b97a0302047c435bb500673065023100e6c59773f1cb7133a9fad91cd86fa1463c8779ac986f810e3d7063d514f604196bbfa64e107c6b5516a6411719fc09c6023016b40a93f05334021d802ade6ae61e34b0c71e6f637465ecab0986a19a8c6562ef797b5c5e934abf1240af0acad775990302047c435bb500683066023100aebebe2169ac848e370f93a95a482735b9902a0d519fd5a56e8f41bf61ee0da87f3f447c61bd87ed46d19ab1ad5a5196023100bca6ca588e8e76dcc699f5ce2bb87f05603fb1b504e5a4b8f1cf67ce0f5f6640023dcf49ce608df39d05a20b4c7396da0302047c435bb500663064023035815af86de1f506bd65159fd4270af789f678dc9df9e2cbe8dd1da82cfc48dbf6c00b825028d9e591bf9a34abd3f481023032b0362b934b77aed4a8aad647beb686f86933e34142a91df94e86930cfef96d3d111642755a18ba81464e38058c9d530302047c435bb500673065023064164d13fc73d38d3c7f6545a4378a6ca0e0ae17d7a475689ee038829fa4326e4d8c0425ef86ce5627703d56370ce7cb023100d1c2c667d35b2913500ab7440356eb453cc100be3405f86c18806e63fb7e843af9c1fcbae3d940454faad0220d2dfbc10302047c435bb5006630640230504cbfa9e5d5928b38c31da38edafe9b22f13dfe5665751863ed8c8daefb0e15184b74343a4ee84d17bdcd5619ca2fed0230242e790c4d2a05850efbf31d396553da169a1b01706b66e7880de8866c051c3b232a440e606111f5996bae0c9f35f64c0302047c435bb500683066023100b76dee755448efd8248551edf4d6cde98c06eea9c6d011125886935b99149eaa26798134d15419b43c39ce4db84cc40f023100efe58065057f20b269a3b18a3311f4efd60f2d37ddcbba1b4550666f1eeb7df32ebc28996a2b0e1231b3f0ae76475c050302047c435bb50066306402302f0138c72695ef62d2093b5366e384ee5ca8ba1be560ffcad6005cccecdf2c026d8ee100f3205c3ced742004d832b8bb023000ef47b940f94aba0f8c22158c078622d578ad191481c5b1ac587fed89f18ada1c81d6758b487c6c823f9b4ddf7b8c7b0302047c435bb500683066023100a17fb8ff1c431c24cbeb6d1d10da9e262f31e5c03430750ca0401b75c5783663495466d58b3427388f9dfe78ebf09410023100de76dbc9a5fff1cb446e9826115ce8e09639d73311192c2763f7cb2027ca1041d1c3245a68b5e403b2842547cd6986800302047c435bb50067306502301679adaf030e949e3259e65230e4f9eaf83697590418d35529dfe6c11ef4786725865945dcd3e9ee96187e657b88d47a023100a0a5eca2db995ec22e9160ee3d0a434a33ed8ce15de50c3b22ff398e185ce7c1d8b58064c106f4aaf2bad2a78f1edde70302047c435bb500683066023100cdf7ffc7527606bb5330b9243f4bd95e4b5e3ba1d170f1d9aa6a7c9a79249b534942161a851aadcbc433cf47396af833023100c01bb41c3e53b0b7001c7fcb19b0d1ba6eed23bacb2191841147a514c3b5a8708498e45595c2e42ee234ae1e21a5a4980302047c435bb500673065023057d100f2e6cd1bca4e1c0716057534ba1ff1c25782900ab5703cb7aebd73618930c3970cb584221fac3975f58b7fbf2202310089f6f785cc78e291a90ad914b5d7daa47539289a0053fb9d9d249ec5626bb9767a5f93f3a7f4f1acb64325f81c4858a60302047c435bb50067306502304d07cebfed5ad3316fae53ec9900daa4bba8eb1becc7ad67670953e0462993e657636b58a15c218ecb8303ab0ee50e26023100d9fb9b66362d9d62a52875c357db7713299bb898bc375d38c8b75351beb5ba6c77a1d7d9ef856a3e543b097e8ff8d6020302047c435bb500663064023025c96eb20cbe17383375786e71158295cf99e03a386fdd7ca28dbb69acc3a493dae23db67f38d217ab13221d2ef879d00230675ec3b179621b8b5eb29af05c1a1803b9122b3e77a70226a53cd309df585e5ebd5772ef10b5489a4d17190e6171aef40302047c435bb500683066023100c6fc5358a7051dbfdd051fe95455ee7544bcc18f44fe6e746bab090560413e06a83009375c4a95c83b75ea887ac151c2023100f0a0093a41420387f9fde0e7c0033767b647332590301e7bba261798b51af87a2ced51643138eef4f8c51ba363a6f2680302047c435bb500673065023100ecadc5a554b24f0242ecdd6560e9a395e7a793626d9db40b820ed639db882f91a732366bcc34e4a0f9db7c35a4f615820230516bbf305ffe8038de59623a241d158560ca089539fd34673f2e44bcae01291d5c82c521bda77752ce5cb0fb091a5e0a0302047c435bb5006730650231009900348644892eeddb50f98cc29580bbdb7be12b3b84ff933a63d4fb505d7b932339031cd21abe08ea421f712caf431202306e33f4faa821643efff448374ca569c9493ec97ce45b24933480f240c8324dcb716c8511408048eea89f8b258254d2e40302047c435bb500673065023100f4699057c7ba5d4f74ff29f8b11d9c3c98af7b625ef3c2d9cb21ef2a2fda980220e344a3198bf9b7fa4d9adf8098966a023054e34d3ceb7be0174c1a26df13e0e31275daa94260c0d0edc1792a999ec4fa27f8e20b42c492529f56b042642303fc4e0302047c435bb500673065023100e70c270f11eb102fc7b70236083f70639dd5ebf6cf26e430e9801847cc013d4f6774c0578aceb6878b94c89adea7955b02305e9ab7aa2550811d8188f4ec30388ecaf68ae8d54681edc190aafde182777b0a3c4aedd80b5d1ffee5fabe4ca9004d5b0302047c435bb500673065023100b9b1300d02c46a1ce8cd9cb2f7f2456f532a2e35e5f759cc5b296171b077501af8f79d2b0e1223c4cd6112e05bd9fcf6023034a1736ff35180ce9ce0a063ed63f52cf5c6e9670ca6f50c88e43d30bb5a9361ecb70987892acb395818f35e239e22a90302047c435bb50067306502305d00bfd14aed61d2b6607c46a1af5a147991d5932b45c2cd230bbc739c701e3133f08682719d8c665f03e940ae05f6df02310083cb14d3f8b72e5583e5ec3d16ad70b28fac5bd50c39cc264785c95638f42b68d67924fc55fd448c436ff7da9bd9bf270302047c435bb50067306502310093945aa25a4635ae3c1dcfa9414ca7d8d7e2df11199035d554a6aebb9935ca9e5db84597d3aa10cf65a104cf2902083002305bccf9744d53f04c14ba3b087c340c821abfbd665417a2da1681ca727fb78a284b60000fc89873dab22f8d66c0b207c30302047c435bb50066306402301c0cf5e52b8846b8562eb3f2f3cd8bc0cd16f69f9790afe930962907e54591263442dc1a65aa403f247018d841994aeb02302dadbf9603a35b4e7317d66a435ffdfcb3ce7a94e1a3d4a8aee65e09bcde73d87cca7e849f99ac7e1e5107e973a45af40302047c435bb500673065023100e115a046cf3fde1a0fcf34bf64cd2527348666f2680fc3d8e3cabee93ab74e06b0ebccdc29b971eac56108fd70c3c166023041d746e3fceb874b37d448b23e644a98405f792ee326a61ac9a50248cb9f32330cca0f19c53e9b61198802da044c0bc80302047c435bb500663064023076788435b1fc6ad11855bbe23b41a95ea848a635d508afb406bfca4cfd191e00f68babf56cab42d49cabae43add44ce502307d7360a77625e59e61507168f3eb0c04192de6557b752c512f2749c30d31700f62fe4a469359939adb5aa4d549cd998a0302047c435bb50068306602310097bb6149b7c9ed62488b691c2363a357e6001804ea979b91b8f7d44e49af2058e15022dba7cc507c91325c56d658bfdb023100f094ad185ec76c4d3483c5c8072ab8260a89c27987dafee3faa31c263547ba1e48aa85c8ef3f653f8222d78c35d603de0302047c435bb500673065023100ae3d1114b346e8bcff47ddc7e3c34a891ad2f3e2f1d0ca57eb01fc426c543715f2221fba6d958ce97047b06944b5bb5702306d9df5a8b509f25ae18b57019002cc3cf5c4a9a6810b666c3d3fd8f8e2532f34663e71efd114f1e73290f51064054f920302047c435bb500683066023100a35f743dd08498f98add8c343ed952be1e95f4185c4c7ae72eb6ec050bfc5d0978ae9c43688f8efeb79060765998c1140231008a978ce5d18a5a3252eb044a64dce43a42d9a469b05b7d9d8a48734adb85ec1a3f3181377bff17fcb033f792c9d47b590302047c435bb500683066023100df8a5130abb344657d39719214b6b9e9950d51da33de7cd1afff75ee7c261b1dfe546391224d52563c2a437b48abf034023100ddd7b73de00886c93eb2ecee5353db5e7603e07f2e4d25d738d41b5c7d4baacdeb4e22ef95d8cfa938ae4746d94a4a250302047c435bb50066306402306b75081b19c1fdf49069bb38a9c4c16c1809b721ac98189ff67301510d3d0585bc657a3a892ea551f17c4ac09361ddbd02303236db8d405130165f563eda8f2bc136bf9381eac9384b92040d40b1941e7cf301cdea036cd38c2bd338206e58358c190302047c435bb500663064023065a4c42d9da76c9b27a86c6f9ec41fa449d66bb14128e73d7c8916bd548ffa6b5c94f4056e5cb3a28fb6f841cd93ef5802301f67af999b1c8f29eb70300f03fd04d86c12ac78e58f075f7b7481a0fef3a01800c23e3d01a134531f7580c7d39333cd0302047c435bb50067306502303eb459a92eef1a8739d3ddc7e0e2a3c24c6469e0f4c8d2a561b35a5c0a598a98bf362a28b6692a677b60ee351883e4c102310098f374c8268b892af21c1b72e00aaf3a4da99c69001f1e2b87e5e875fd1895b04f68fcd241f38cbce1a3f207f0aef60f0302047c435bb50066306402304b089d24ed68e3ac949d7462015d2c5b8f99c0e57d8b48331a7e1c7aaf2b27cd315fa79fb30dfc5422c4f5ed27f509980230688430820a3d2954c294f6f09fb66719ac8789f143c6937f608ea98e7452b24d976a10b485eb76c01b496a4908171b3d0302047c435bb50067306502305042dae9fabed4d57ec3e59ef48f07ed671db8e522109c89b33183ac76c59686395d37abbd746ab86b9446321d6353ca023100fba8c2c1ffe38d9321eb6ab6f9ad712c657eb6fa7249c19bf64bb59fb8f9afe7e90c2c3f4d8be4eb3088c6e307d72ae40302047c435bb500673065023100a3318377263ddfe5f0bf6398d7dbf625fd0232d932cc9f71aad9d32b9409ec68ca5e6ef36ec7df01ff0eda21d73308ea02304396f62d9a23cf2e2a3b374d6d75a23807248a52fa09253c9a4d1aef9f4f929bea07b39a4742561756ffc3102ac0d9260302047c435bb500673065023001905c637789c4d4007f0007df079c4478adfbfbace7f528beda5c7e70eeafbe3038e9e551c355298115a1112e54482202310086e5ff3ba7e78cc0a94352c522913d256c9675870963bfa88f6dd909c6c1f34f2d4434584b5980e46cbb689e3ef8a64e0302047c435bb500673065023100a0f68fe9b6dac0a45acabdc7297101fb8945ff7ae3521500e12f6d73a629b118e02981491cfedc04396269669edd5065023047083482a5c62b2c47328acd4608a4f19c34ef3c4003d827f285f794d74b8cc5a010a540c4ac14c110edda645455ef1d0302047c435bb500673065023100f8064ef9a73571552e6a4bbcd5e367dc9ab30d0eaf97b8ef2622ca95cacafb6c6fdc25272ed221818918705a7d79280c023029d2b05f4a79e7c8f4787cbf30813538a95ba8afb63f84572536909709800e9b27f24a0bd977e1ecf68bd924cf2148ce0302047c435bb50066306402300cde1610963abb3353aab4567636c235f51a2f87f21ab49dbcf670943691210227c24a0cebeecf48d15970155b9ea570023028553a0bbec13ac64197fe0546cc0ad2b646cbb3586c3fb0464b3b7361a4ea95f27509ffbcce70e12bd355ebf2ab02210302047c435bb500673065023017f6ad771511819a517adbd0062ea30bfc1dd8fb84bd22767c5531ddebe21159d500fc943597b8319493ddf93423a42e023100be33e84f9e4a1bc58e5ce7904ba2bac76ff9f79614ab066d7ed8f0d90d837dcc20ef110eaa9ee343f8853a580faeaec30302047c435bb500673065023100f364a24a8e70470340045bcb5d97a0e85ef505dec868675479bd9262b9ef04d34ecac59054f750bc3ed2ee75d1d4dd000230150d3811bdfeeacbe327a1532706d184da41641d1d56b9269f8d56692fc3a70d728d25fc6ec1f1695550fac781c1784b0302047c435bb500673065023026ef01fde998945a3327ed87e03dd35b78eaf5ef6262439904982b835dca4e441b688dc82ebe6402a3af58c7fa3fc8bb023100a6bf0bfc065bfa9e2ce7822ca8dd2d886db32d3dd10b699afc808eddeafd87b388c7c5aaff1291ce90892de95966eb590302047c435bb50068306602310084d7532a18243c62ea6ace535105fc23ee93b57ccf16bbd241aa73953b8dd757e5977754f349c5c091815396b784e083023100a23c987fcb151bfe0b8f564b144c790093ad5b8c3c41902e32f0b2a0466307000c905ab3d8fe8c87b1aa8eb0bc493d150302047c435bb500673065023012af3a746f71873ae394c129cae20f5b4c63bd5ffa73863cbb37454f3e4cfa2b1677f82b8bb2f9f2ef4637fdc2078121023100fdf54cd4067c72021e2096d06ae359e434feaf309a9c3424af974ceef8b53dc25e54e7f17a7e38268e97b4b36ece93c70302047c435bb500673065023067cf864b938a42bdfeac1202fb7e29c3af77ba772fac05167d5e428744d9fa6a270322fbd1da686c73adf62b28ce2e1702310086e6319ae3bf125965c7bb7c7c202251a25556a443214974ebef8cecb1cd6da12617e9beb22cd3c67006befb247a6f7f0302047c435bb50066306402300f684bfe4b203e6267ebb6035a07e86c0061ea73b35c6ef09040a0ad804f0df0b0e344933f5ba779aa828927288be4ee023038138dcaecec272e232e357ef525b6d1bd31748ca1fcbd0a5be0eb4d9a4443284b7d27cb7b1c6e1236c5fd3ac25f40a80302047c435bb500663064023069e129ce03835f8de9979ce84443b4b6cc994c7736fccbcbb3638a65a7fb3cfcab216a177fe39851d1607a755aae6e7002305655a0579ed782bc5ebce2b4b81ac8eebb7e4809884ca22f4b2f9457d8898e81d96e9800148d5a0488ba7477546794d00302047c435bb50067306502305673a644c148c6f8051072cd0e91c0bd30846c964c60b4904afd6738302a706c831fec828bc8bb407b6da2c28ff14f95023100977a71eae46acfd95c88969b4c981577241721d46d41d95627f87ebfd68bbabc45005fab8f49f683ca3ad697908dfe850302047c435bb500663064023004ddc2debc45bbc336fefee19bf4c9b68e959123052f43285ce62194db5fcc8fa1a34e3c52a36739889a8a856112dd4302300a019c1c40fa9afb22821963c7394074cb66d250524a92c2e263c400bb47a486314c33e66b99f6c72e0579fc09fde6370302047c435bb500673065023100a2cdbb74bd2e4a2c54afbdb2914fc4ad3a081722e0e8788a558523ff2a72df67f77632518421a672bb6ae17b30bd14c502307edc7a7574230402775eb158b7b41a7bbb34ed2b711f773f2b3708518055325c33464cfcb9506ab48873b37c468ffb850302047c435bb500683066023100c9a4e5f05a15ec4448148b420a557d2f5d5cb4dcea5743686c2598b927df89d44f270f3101933eefd3c4d23a3d03929c023100fb0963dc32c1576a0d39097b40439efe4ef68a57ae486f08e5c93717dd16f51d3c2e10ed77ee39d527b58064555fad820302047c435bb50067306502302ecb7be7d146bfe20b7552508be399bdf69e0661ca1d593b52c04854c3a95f9138a5123aadfd302edffa062bf5dd65db02310089b794bf30101e4ea03cd1b6a56e8d3018854456353a034f4563220c988f5115f9326767e4a174807b1c38f3fe8de7580302047c435bb500683066023100b377af3a801fbfb0f9ef23628779bbc0da811fafb58a2167a888efb2aee0dcd1c804e5b50b2c9c1fa15ca6d06387e6a7023100ed81075dcbd8f18dc3ab9b61572cbff70f0e7d34c407577b4cf6725ccdc60a89146cc09ec05b399f26f512d1595a0be20302047c435bb500673065023100c16c4c48ae98b65567bb9d9269c0bc426a1514ae1e64501ff85ed2ccc3547fae8f43156c9abc74fbea87578db11bda5f02304b4e34db8400e61a5e511a7e0c8e759a2ffaab49ec4649ea0a29bf04042373d92e7c98f3116cc3c6078e2d851396e4960302047c435bb500673065023100ec2817c4c9a71a84855f62531f57a726381fd88bcb9428261b584e91aa75f54c4489a3b5cd48cfdd499dae4eb5338c7902300f7eef151fe3384d500f75e30ce450304252dc63a0ff4501d1a392489e9ec8861a5ae9fa7e0c3bda0db5d7145a6853f50302047c435bb50066306402306d9a3e4b628a59093b5995c825cee0d1da4f205a5257ae08823696a1590c2dbc46fc59d5e9a3611c6c4e1721a08ff2b40230228dec7469e1a20ec58bbfd1aaafd98f5bb4b695f3f46d5de8a243568e4b1182d504d0fded6daa5dca2f8f11825530420302047c435bb50067306502306bf01500a58ea276a553a85a6912ec75fb3ff51d4a57ca71be8e1e7fd17ad4031a400f088b264c4c7dc96b2d5f9a9c10023100f58d63a691fc0a5e06c9b5e3af0a18086b5876e88455ed6305780bcab7734e005facebe6aa60302cad758fb82d9302ba0302047c435bb50066306402306a5ff383c9eb09436bc1f1ecb08da26cfd44778dcdf6935a5e30e3727e346e4321704f3e30e157339eba8e1651094e66023048e934a44719652505a44fc68c9b791849de8a229b33f406ba8ff4fb1c94d0f1473285f8876e369dd0a08da915b6a03c0302047c435bb500673065023100a7ee16f3585280f95d0c0021e3f9b68c26946405287eec5c8f8dcf04fe377c2087f7e348124ee5be5ff9de628d08594a023028797d40d01de35920389d1a67902706dd964cde343be6fce522ffe0ef83be49c93f04161ce09cc1a867b46c39c94c1a0302047c435bb500683066023100fdde089c62590aa6d87c9d740c9aa96ead7ec0cf2a1c2ab1051a32876e8885cb689171ab000ffd7799dd723ef466d02f023100edd3228b119cb026cf19bd329a74dc57339785c0e2f29e74ef4d5f2c9d17f4503971385626b7c274cac6745de5e99f670302047c435bb500663064023019f1677377b3510280d90c1dff0def1a71d4c9ca7158c25c4510c560ca8f706069fac23c7ca781c6b3196bc5685cf18a02301fa2d44113e0c04448e73b77453971ae6a46d9dbf9484837ae7ec7cbe7cfb14d2970223c692e9f2008492377038ef0380302047c435bb500683066023100fc4cea67896d34fffab670084dc26a941704f2635ff347714383a8575e7caab0dd9d5d3ce22f250f7e8215fd06155b57023100ab9867d562eef8603719057f115747c4dfffadc54d51067d27dcd596f0762074aef313583210c7204b602ece7393f6060302047c435bb50066306402307d0c7ee975d7915720967b2ac97515648a74d8d93958e96df3a6a029333dd636e79efcb8f41d01db3601bf796f0c3896023059227e66099d3b31ff9371ec9f73130e9cf2ba28095ff31297f815dc886ea516ac6048ddde94cfd17c0ef79eabeb4e1d0302047c435bb500673065023100b739385fdb1bfada42bcda92808cb7cd166fa75c1263a286ac51e901b93e1c161dbaf7266c54d391666592d9b5188ebc0230374d4b40ee7050e243300622a69a1a0b4220219228d2898eaa7921c15d8389e3429122b5518367fa8510e2e5d1b065c50302047c435bb5006730650230544ed6a67d385b8d60984b1becabfd671389f82587d6c89cff8b8c52cfd5e4afbe051e4c3ef7974873d25fc1fedf388b023100f39a76e19fb3ef4b4784d0615c12687064089908c1991e72c06d4a492f33e113d788022c4b01e5e7173e8e1cf46bbe740302047c435bb500673065023100ff701755edc7399fc97b7f0fee9964cddcc43e92c320a1140c397daa7da7bf1d0641c5b29289594621f800033555174e02305ada5a4e41f4a481291815e54254f08c3e9c6e83199feb8c7cbfea097c705f7ea7f9a7271476b4af077ec85384f39fed0302047c435bb50066306402301817685873d41a0aa194eb8f518892e1288e4d7696d82884a142e2bc54f3688f35ba4f3820c5fa68396f748c2bbc6d78023042a6d052019006e52c95b8b47780386fb753907d81e07bfd8e07fbc0d99e4f04628d6e2cd81ec1d3c2234326b854f4e00302047c435bb500663064023043e26aee4875db033ea754035bd4c8b6d15e8d4d86868ad3a46b2485adb8c417875741456fb5716fd69d2851a7f17dd802300b0f9b9a2196f0a9eb161f0f573f416c3a09151122a3700da31f02df27ecd76620f107781e70070e855c9ee2fab0f8c70302047c435bb500683066023100dfb53ae47cb9e2c658c57fcd7e2f01a44b82731c3afbd4b9c812550763b788b8d575ac072e8a5384d5dc1c4ca4d75e2d023100b25182be0c81b666117c8ade14da1568d7de908f68ef0ce53dd8ad183d9894ab4ba946e44263249305d73d56283fa82b0302047c435bb50067306502310082a453ce4fad8e85d2eb6a4ca002c67260343f9602f9ca0dad44df8f3a3573946a1aceba6d033b5023eda59004d1892602301190dbeb1778cc58b79f758043f61d2af1c2ac17edf3c0ff154aa627985fa17c96c11e939af6ef8493ebca0ceb14c0230302047c435bb500673065023004bd208a2c9728a5cd31f7e6e1218856a5ae935a70848da1dc37d8a67b9cc8c9e5d54d3bbfaafcfb30414902b03c484e023100d1de0c57f30a92ddfa19cecbeea7fa88c2a3322211b24d63e3b863118615619b68f7871af2ed316b491c4ec63d3b30980302047c435bb5006830660231009efdb197715d61bbf22357e722b727f855b75e6ac4526d3354c9faf80f8008a62ecd4de7cb85aded06d1427a7adfd4e90231009218ae30a32f124b11e9e58ccae7f2c2042a696083811162abdb1332abeec4cce9dca5ca92485f10b5024d5e59c81d230302047c435bb50067306502300087593cf66b52d70e537eeee637f0abb18673e14cff816222bf7d0f7d48478fda9b77b52ca5233fc7606cb9c0e243c3023100cd56c67e026482879a3dd6cd31d639c6e0492df7ff9ce65a1c23aeb8a7836ac3cd90959209fd5839ccb9148aec02af4d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100864016f13bc24813c0d651caaaa97c3d4e6c670d4841312679275cd37ced7abe5f47f261d10d9d489d223bab59a2bc6d02305c52f0cb6ce24c25f12ef015bca4f3fbe90e447c20c19bfe0e510fdece27f6848e602315b431b8b0c48eb5099e965afa0302047c435bb500663064023016966992c7ad092d15f6a615142e953e06f36188975ff7967ea4b93b006e2dfa05fef3e28fd5308054f3c989779d3326023018856a14bb69b1915422f298c0b572c6edb39ad26f30e5f3711d3cc898c68665a01134b09b9b6986bbec1c5ce05d03210302047c435bb500673065023100d2faef6c49ac762cd2d6d9c0da8ffa2ac2306733d8aba986ef2910be544024b795825beadd9a32d4a7433b69a8467cc402301446d3c8898c0b21f63d508545dba7e20f4f8b6ade08c5ec92989ac85ee7fd69c9688d0a06da789c98abdd724ec414860302047c435bb500673065023100db2124d4dbcc105ba1ac86dc403d725c154e2f2695af4480eb7aec866c208cae67f85390fe1a7762a7b40e1e2e639b5702306b28fc62622beedf2b329400f8cd0f2e9c6b3cbc707af1ec28b0bc884307274f123a592ba22d935bebbdad616112a3160302047c435bb50068306602310098d38d81e8440b037487aab2442e8e08ea5fd4bd40e2bed346f829d06a3b42013b12797eaf53731af735968cbd4b8cc2023100bffd54236b94b8dc1278b69d524bf2f86c6eac06514bf84fd6c79f31d3df91e403d818ccf1852c2565ce5069e801fbe50302047c435bb500673065023039a409c5e58e66870676df53aeafd0061902e0d1a829d2b6d43d935580f0f390f654d8b9ff209d9e390100168558bc75023100f3f9e03f6cbdd40370032851a4fcd3696cb8288272f36dff2edd30c3d7f72c3aa0ec7221aa332fd237d266cfe8792f250302047c435bb500683066023100d42f875e8e1a09ae76ecf67e18bab41063d997ea995b2a1dcb247c1b62d765fb047b7fed1510edbcbe98b4fa77c3fb9e023100e1e85930274329b8bdca7bf66fb3221f8b742bdf9a572de4bbd02669806f0f4c0813cfdbc6f3ce214307d186cedfecdd0302047c435bb50066306402307b68fcbcce990dec72b3569b1902940055745323deb2672a39cce8f295abd2868d413ffa0d794dc9f98d7d3b5e4744ee023039440312989eff618c987c4fae3ea1c39ae3442531ae644b418afd28347006ae288097bde9a20fcac5fbf5e4e5c853860302047c435bb500663064023056da26bed36fd747b27343b8a908d21bada22cd28bee6b60d198ece3141b7dede3b17c295cda163d0bcd985a224fe8b9023042b9ebbf457a46f20dfad9fbe9a0d5aac48a5fb32bdfcb9adb6c584230c79829fef22523c1181c7ad3024b97bbc902be0302047c435bb50067306502302d53422764b7a367d189cb8595ff77a48d601ff9409171c2a2be527e5014bb9a5d24255f96002945af44d2679ab79c25023100a91072e0b5f880299fa20a8b341e56bad0be88f71892c3d270c1af7df1c8a0165c069906895c72ba454bf3c117f853d40302047c435bb500673065023100c6f78d99a32f342255a93c09a2d0e986274f90a0216830dcafb4fc2f893bd3c933001c2d8c5b790656924fb6453fe21902307764155357403c80df838f8d38ebec0c3fe3485f090fc064cabb74e068b80508cf0a950f2f382e1c39d19abe5a9856ce0302047c435bb500683066023100eeb9ed073608aecd965cfcc512cafaaad400ca58a2109f4645df2697ac53f3c8b4ae9b8aaef1865d0fa2277e766be105023100c35ad9c45fdc90556c82aad94c934d587eb78ea6351437600dcd0f73df48526c13630618b11b6ee1bb272f201ccb68040302047c435bb500673065023100903d49faac73ef299c3a61444d86dfbc8301e9ec3590b9fa37c98100cdc0c6ef0c7ea3b8273c0ad9e37a3a1dfbcb1cf002303678972b9d543cfb73edb917a1844e8c7017ee63d2136ed6c4768901859abd9a7d62529e756ab69396297ebc1392c8920302047c435bb500673065023003287f77345b9913d0d666dfd6c608c8fed0460afdadec5d78eca11124c23be96c92d9c6c37c61c6d9efe08be73de5a4023100ff96d14feb45015e08c805267a60a2fa2822a79234a6ec7a3c39dd5504728cca06fadf60c5d1e3f6083735b74e8308e50302047c435bb50067306502306ef9bc3bd2ce5158fd8d8dd7ea175f674a8f2a2a0dfadacdc64613c88551bfd2d91ca6e6deb8ecb90fc450c09b37b2ff023100ff2873bf74e9468901e7ee52a1bf48a1f86cf66f6d2ac9a0e46a91d1bb5dce41c2c48903533b5fd609d8eae6a62cb4840302047c435bb50067306502301cc83878177fb3617bc7a6f2d0dd9d740046342ad471f56059d2a4fdcd30d7ab37efce464bd39b1c969db21440623f90023100cfc225ad6074696234fa7077ed6a2748b03a0fe1152b22fe55a4c6a51d748b131ab4202980b2403d642191550c62055b0302047c435bb500673065023030a444b933dc96719cdd67232d919f6ba536eeb05d5272b54bb75004adf7b294496619ab501622cd44dda0517f4f351e023100c257904778c0e29f65731217cc88a21774423e529b98148ade937f7f63730385d4aac7a78bbfb792bfda01d60de64f590302047c435bb5006730650230123d372b7cbf18ad129ee83fd5fdfa249ba4800bedc7342917a674c52119cfb5c1e60cb338d77235d2de93b7483ab0f3023100ba5bf60f8088aa5662e53156d81695c00824d5630d292467cbc087b5b3521681a6418c1966ac947f0e8f13317b25c4570302047c435bb500683066023100ec39dc9ece37d4d574a1878a0a7925bb570fb7069709d638bd57fe75b9cca1dd7e1b2d7b3a1cdf48ffab9941b0634df80231009396fdf81219769a2f00c0281e9c1844a3457a10a1e32ba6339790c1226aa65656edd342f4dfa168df0e186ac007157d0302047c435bb500663064023076f56632ea66f12353701c8367e0f1bf857613ad4f4b504edde867b4165c620e641009b7a4ad53c7fcb12f195a786f2302305f92703d715ddfa0068b1dcd66a064b7de2c84cd1083e39f61fd90f64f8dc7a099db4e8a79b42e9fcfd6282216dd45840302047c435bb50068306602310089c5d4912340836e79cc2bf5aa152ce8ad2203b1f7bdbf0ee5751dec8703f48dded553d1a1f04f18a222f5926d608ea6023100bb339f353b80e606d90b321ecd472b1198d8dc26606ed3f313be949dee3e8337ce610917ff8f3a6e91bf2e32d8c89cdf0302047c435bb500663064023023507d6368a6974510620eed63b256e993b35da0d1354123db4b4f0e65e8fd0dc2e8cbc944edcc7ac9f4402a18962abb02303f8c464fc7e662245ffd0a43207eaa80d6aea2f97764d14a76da9e7016603a94105361f28a8ff91b008a4936489ff6450302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ff19c2aa86185ed8a9a31f5787c91052007d1dc73e86fd58ef0f02bddfda54317773875986625f1cbf07e8bbdd3d9ef1023100e90598ed325d02b47aa7e191a439a2f41e744dcbd707dcbae2abcee5e93eec84905904b46f15565d2bdcc5ceff5df5470302047c435bb50067306502310098eff05e175f4740295c3034fc0fc6a3d12192db6edfa4082ae6e00063957466a82255237b3fe85fb1ff41c81cf2e11b023067fc583e0bf5bee7f06c744f32b6d75762abe9ddd0effb07adf68afb49e9a2cd72a912ba1c1bce86e59f1f779b036d590302047c435bb50067306502303fc6e4fe049f8e1d6fd7116893db31d523181d9e72745e3185208fcb1c5c65fe3949a20c28279b97781240152fd751a7023100b673d940d3ba7fb52b907c47b1f2118f5d71be12b893a45d43c0335d52eca91f6c6247bed514d5dc1d66b4173b3e5d550302047c435bb50066306402306c0092f6256f449a32c03bcb11e0761b6b43f6719bc4f80d96b8eb3df5161f490ee2b2db26821f67056183698fb1eb8f02307f3dcd2a25c3b733bffe979330cb5c7a1c1ca6f6330080091bb9acee07b8ab14a5148592a0cb2d6a58876b7afcc9f4b50302047c435bb5006730650230030958f61fc00873516cd087bb4821cc4bc658283bcad1c7b024bd941c1c4dad04c11e7fa55b01848f2764f23b2f829a023100cffdff1f66b18f353b58c1ca46dd044818c4ee2d4eae8843db6659fcf2ccf6faaa2d585ba39edea9616705fc6d45d68b0302047c435bb50067306502304ef2711b261e3d13d8ce3de84cb9f2c8c64570002de769ab4d4f6c5536ea88a0143085e1250d4f987f97cd370dfe074f023100b5a806da154cef1c91ec9c29c234db13e98e9165fb0cd0b274b44c150bc7512567ab5c329ce19918def89d6036fb78020302047c435bb500673065023100d0cd59365ab39be8bc887774f19c2e92c09b0a07251a05f55bb56308d06b58483129db55996d9d313c8badc7cb741c2802300ce2517baa16efccf185048dae620d3856784e458ad34864968ff054e3506e4f3e317a38691bdd7cef995efae80dccf30302047c435bb500663064023010d77d00191335c9db1d35e1ff46536dfe9a5df6c5a19dad54438377bcd2386e64b26f1753352f5068586ed8a319010002304a9856a4349e0af28665d01563321035b60f885d85a7a8ee939a6c41fbbaa55a50704185a715875bef1baa3233534f560302047c435bb500673065023100ac759797b696bb832b666b8db5d3c0d2aae962f68b196d639f0e04fedc015a01d080ab2f169b514d88b641c70ed8f6db0230409d57fdafccb7bf6eace8b56d38ea1d040c9183b8b9dd08390f362bfaf5ea64153ba33ace874c3450c97d6e17edcf2e0302047c435bb500673065023000f59dc4eaa9b0170758d663d0f059e10c7a2832070641faee3180d9314a01e12edfc901210ac9758ea768a520e47da6023100f0aad60b93e85ed468be3b0ba73b68b4242a4841bbf7580cb98e9f138e2a41c38263b5e7e7c75bcda60f1d9968d9f0270302047c435bb500683066023100ee0b09933dc76511006995269273ba7b532abca38a4e5a1fd871c7cac8be6414803c90c50a45187463951243a3cd1363023100d0e753767dc7af25aa5141c21ae388f0fc4f920eb17e9163f377ab58a5a0f0790cb373f681a43853732c86d655ea87a60302047c435bb50066306402300e257409af838556039394d960b721a92c93b2ff13de6d2f7c99400b2412b7aa89f206a8c2614f2a5fdbe461565794340230021d7ec9bdf17d9e012c72df932189123addc596951df19d44adc7569cdaa903862461387807c17826ce94a64a44326d0302047c435bb500683066023100a591d60d361f3837690fd01e94b64df5690fd23222f0140380772ea34f036cdcc0023f6ff20eef57fb6817f9e708a3b9023100fd05cf0b894d5c29f8be8672aff822ab6a75af234d5620dbdf9337cfb1eedef06f133b3b925b9a76f6eef845d67424da0302047c435bb5006730650231009f9afc77ec911f786084286610bf949167edcbabc562765cac2e12b45746fa676ca1fb23ae7c6bf2e42e41d52ec23e5002301deb8aa596c816b8a1095488d56e3c9bf5ac44cdeaff4af6ed8c871ea288c193fea7fb4a58699fcc5a0dc19243b07bfb0302047c435bb500673065023100e8d23a4d4118be0d8ac00633ae3bd2fa86f658c2f7025674be367a07a76819ae56f23ea65734aa43958afc4685389a63023028adecb5fe7e2fffa3d56fe971bc54d125fc2efb3f8702b1175fb23784763cc206e9e047d3c912e224a4e8a74dafb8f60302047c435bb500673065023100e990ff51b7513ea6705ae52d0753ffd200c0879c82818a430c0e0d3ff207f994663ca3db985550dbf3d439e0118e2cb002306258a7783c986e5a23fc408fae17dd7b6e926086918b80029e11a0f50c73e7d43a5739cf41c2cb9b5b4bf96f8268c1330302047c435bb500683066023100824be47deb3c32b6c628eabca523347c4c73b5fb36412bc78cd589ff36fb49de870ac039ae3cdaf4a565c053a0520f43023100c5ec58e0536262141a4b6891d8f9a5c813ee3e1f8109e69e7d8ffa249f96fa25720bc5e909185d9bb5e4cdc45067e0f80302047c435bb500673065023100fa2f37bb1551f8c232ef16c3af87c4938785794546f286309dcbb0da32f0627080f1aa53137dfd946bc5721ebd8a7004023046e6e5f279ef073b96b736e01c6285f215153947ba40d4312dc6fe3adde4f72b1e5a12ccd62e0b2def1005ba232302e00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ed0544d33c029eb40e41164825fcc525616f8129e15c366c09d433eca409feec38ab679021ba860d813a3e18e57a211b02305e4268035153a230d8524e176965ec7b5b49874561f7896b0577fbeb5eaa27eea79d02a26fb1f9e815976be506a748620302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f20fc027ef55b6ed105d68cc122bc5eda78b073218bed32c2f8724e76dbab0bcecc50b6d13f75452b9b0c4a5eb46386c023100990d0fe14d09258933c0b6de9cddd7669a24ab217b4b3434999a5f27c6215892ee6b4e970b99b104e32f7ac5995688790302047c435bb5006830660231009be622ef29828cd0f1ab73e963f3321c4fdce5040e03067b65a7b60aeb7231a48998564ed9e06ffbd86494c8932e14f40231009a3d70c8c698bdf490ca04d0f696a4d8e159797d6ffa9ec71c58f1c38a437f7a4b5df34cefb99a8c0b8745070ad8e7660302047c435bb50066306402307b17bf6148872de6ef0a49946af83005256dd236a83a295f5f11a7905441759b03856aa6e49e212fdfeae948cfa54bfe023077db9a122b1741bb2d8a582fd00c6e7d95bd3ecf8d0b9cb2c919890adb970836afa6ac57955a2a1fd0731f34dcaebe0a0302047c435bb500683066023100cafd14da881ef9a538ca2fa9dc1922bbc010c36e7ca4bdcbbd98c7be8daa382e8ef7aeeaf812b4208c75736a1ccb4eed0231009e3bbe8f53505a2e6c6fa973e15d5aa0d38fe36bcea6b8ae123d096c4122da7463f63aa25dfa859df4e689da53ae30eb0302047c435bb500683066023100f4a345d93f61f583851e51aa70a59a25ad143a11502bd0c915d6d805fced5579e3e92156c3a13692be72f89efd36c66c0231009eb3d8f25f571ab9b0a051bfd3b00c8402af5c153efb756f9137580195609e8634d2869126d0125b9ef0b79b24d220930302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064022f11541c29627f5b35d1819ec9f41d3ed5c8714ccec9ec1edcc9371c5e197f78c876e928aa6c2864fc7f7a565ad19f8a023100bd7d3a2bee8a750680fcbaaf8f7b2668c67c62ca8b6ad24ea4a480563b25c13f444743cd5ab28d95a41fd9441820bf600302047c435bb50067306502310090dc3c4cd8011be1cf81a087663b7d5381bcef6d3d85534dd2868d41f1bc7e6b55943c8eb3822b2d8c9aacdcf2fe18c602300ba417aeedb60468fc5f5118040e26c95373f98a26fd7efc637b849660e911853263eadce70aaef088b5563eb89a1f2e0302047c435bb50066306402301828622f5c34561db2baa2ee18d7970446aa8efb6bd2a5e5356e37a7783bd36b6267ffc6e710a3194add925fe7aad104023057ca7a34b11d44823ab71d132ac90ec94e97e1c61b92c625b897014d1a6e6f9429047aad38e8c65bb0877807a715c4470302047c435bb500653063022f39e5540f61b7bc041b4ff515097ba912cd7d322ccae97332d40d5190b7be8ebca709730bf515cab5328cc718d0aab802302ff5ca9cac5f0990fc660086f23cb9b067e591fa9e02db438b47d48788610806106c5c606335426decb6101524e486be0302047c435bb500663064023007800871aacda5aafdf55765dc0dca2aaaca8e976acaa3189a507ecad181acd32004206af3bceb23f47610dd6ec00aef0230725814c55912f3a0a663e11c875259558004a74fe2482cf23ef5d8af23b3d6b8004e74a4badb1df3207dade0e61f56dc0302047c435bb500683066023100e663c790615d170b4908a17c7c569c4273da766c609107dd4fbcf0893af53e3e9b83a3451bc64ed4299c09ccc03888f00231009065fe6b18d0efa955d5a02b7f06b47a5a8aed5174ed8e31c50f91f9a50fdfc247676ec508d64114b137b1562f0a280e0302047c435bb500673065023100c9e870a77d793ef24bc3aa7dea9a8de1afd636da40202696b4e7593c1babf03a58ba52e032a0647f0aa33870c38713e802303d3897648a5114161d15303a30499d8c186e18b4c55b475d59075da42c784ebc5df0de98c5905c5eef0a17a078f179f10302047c435bb500673065023100865a0e1e45eccf7d986d82b95a57f7e01accea0a1c0031a654606f06e391b0176d7efdbed41d46ebcd10aa2aa5bea2ef02302a9fd19ad6ac3605b940ac4dd08a0336b3ddbbe76b7fbf16064dcfa391dbedf687374b8998a5d5aabd078bd33d862d900302047c435bb500683066023100e0e512d5641e3109615788f51a8f902a105edfed36cdc3a0ad5efaeb4d2c465498a5ca5c697bc599f53cb64ea8d376e002310096cf20ea70d2b5919868bd8433d5d29515c1bcee9a8c280fa4847409f9bdedb10b91d353ea096b72ddd532317dca3aee0302047c435bb500673065023100a3126548e7f43c727bde75d718408fb5c232b3bdadb63f0bf0d9556ff387bf48f6abe3ee03f32610675345315c85ae570230258fbd778594e93d994cdd06ffdb7d77fd20d7b11d9887ea40df26a0fc798e0406a70a6dfa0e1949541e8153309ab54e0302047c435bb50066306402307cfe5d71767ad5ba4f4d6b151a0269c28f1d01216238772a0d498135ed86b48b5b1a0b15aa4ae557b7f83302cd5d3a6e02300eefc62089285f38f398d27d740496b1ffffd1cd1d4b0948bc77b2e37c8d661036e01b6fe2840a723c94d821feb5c7ec0302047c435bb5006730650230273cabdae263cfd407512cf65c38fb6d254bf28fd6aba10650829c90bc83718fc93c8f3c53875853cf21f99a93965406023100a208260b185ed122647a7f567b40120c4c9d77db49044e590df38cb481f434e94f28f75058bf7731ac92a0152c9a82d70302047c435bb500673065023100de0e8bd25f551667f0b743799b92d345200630c8cf2f3195a3c4166be6f5742e47a736ffd596f8cd67b69ec12024e80f0230500d3adae20498bbd3bb58889c64edbf94832b929bc3af9ecdb4cb8856528f19d0c9774c882a9516ed170624a95c60fa0302047c435bb500683066023100912f2cc04fa7cc15a7ae5a60016f9c7664af8813f813f415d124c9bbb2a97455bb04100b43c101a2e39fb807d1612237023100c7787b3a541632f97456f841bdcd4914ce5fda71a2a816dca3fd2ab3825a2dea9be3ec8e2f9fcf4600bc9acd70f1042b0302047c435bb500673065023019ac1c69a0a44bbc144321a05cde95ff0ed6e502d5f482fe273c2a3f2b2b42e5243b6ee692a1e081fb49982216486254023100dd73ebfe692b8ff93c44b5fe36607797087843d570e944dac880ef69ba624888e73425e78a7573c7fc6f58b942935f140302047c435bb500673065023041ec8210c86d81773189cd11766baf366a7dadc4b1845e89cefb5259e31e9ecc586be254a3a044811711c587e029a85d0231008f9ebdbaa5e6a290f4039997facd6c95c14decbdc3b92a36eb35ea045c8ad4c01c9604717e0c1e5eae9857b8db5616700302047c435bb50066306402303647e985845ddde693a815fb3774bdb05f1b4ca75befe07e099693f7dffb4b488f4739c4b35b3f45a5707002ea2d48aa023076d3f06f50a8c09b4516ffe364c8b3314429a678eb02e1284ea95aa614d7af450ca9c3d9aeb29492915bbf9b018c0a6b0302047c435bb50066306402300cedc6600de716c919acf4dbc9215adbcf04ed65be784a35381dcfb74a7175b5332157f69760c81552ecef2572929de202307304573ca0a47e1472032a49159af514033c3fd4183cbdf8e3d23b53f80a4e5686b9b514068da9830dfb044065e0d0a70302047c435bb500663064023003e57a1f8603a74088442153f6c94a837513c86203941a0a5ed6194dfd1271944a036548e6757a0f9911dbb47cca898502307dff066c5de4c22f3293fc6c6fae403f06b818eb9e2746433acad7be6d421563c1440ae1061bc8d02abf9f5c30a9bd860302047c435bb500673065023100d7833d6d5d16f8a37ee6a809eedb1a15b1350d694f13f29f620db6f1d8ce91e427b4aefb7fb31da5ffccfeed796936de02302d1cd4b41d19c113f2905a031a0b7f801c411b3278b018b9883b8f17933ad7858fd90c89ec0dba88fc721f69c25ee4850302047c435bb500673065023100c56ddeb51c913e97459e087eaf85f396f47dad7c4f51502450225c5c42c9187eb1ba8e5e212f73a20a143f77945e8c160230042269d1f5ace7fcb86a94bae7234785f07b5abb45657f288636b9a82d9d038b5f9b34ad52aaaad9f31aa48f08a505830302047c435bb500673065023100d1731a0671105d2094d0e6235276b18730b48076e8478abbe2fe43e548811b1ca995e7390b8d647cb2022486273fcb8d023069219a244c18437f4c490c3f4dac571a8b9daa849bdc8f11238bcba5e63c604a2fc406cdcc2c7e79c01b85bfac4923270302047c435bb500673065023100ff01fcb059b3dc0f09bfb190660a2700bd3210f6fa8a3d6987750d7b38b0a9b675ea6f72fbdfc744b07173e5fa6b290802302bad38b16dffed50888b7f241e8ddf8a616e36904872a11c1c12ee85224a1d0990191cd3fdb120b878f9a02b493252e50302047c435bb500683066023100f0256d7b6853cbb03e5c538097e217b895c752d2b966aa735d2337b1bcd2a79a33c387e02ccdfb7fcf0b12448d6144ec023100e8a8a0ce8305fbd37d8b82b36f27e647d1f013d9efcf73c17dd888062e19dd7a6c726a2a8b89b899f24c41438f99da250302047c435bb500673065023100a678983aa0f32342416b27cf94171aaf39ffb77729fa51fa7dd43db228e6f5acf91819123083556df69cd5696f5b155002305101d3473c78d2ab1580db90ef245749ab82902d32f5b7682894c530dff434d06937143cfe945b0f341fef9aa14bf6f40302047c435bb50067306502306ba08b1a28f34b46a3d52480ca45415b2e474a2054d86ceff0d7b63bbab71256faeb7757d7cf53d76e1abfeb1a33ee59023100a1de0f8a3194dc24e23323cb7383303d05fc43b3a0020b11b060eba7e7b557007af14f3cfb882963493de54ba8e76c920302047c435bb500683066023100e5ab2b78d3b2bf43489c131aa7e2691c2ba3cb4ebb83f78709510dd5c6bc1614b8c8e486395727bf6a108f4dc8ff42cc02310085b688d5630c08c8e69bf263084ff444cf34254229c7eb108ba534cb3050e81e3d55ffd2c609e60bd0de08149e802bff0302047c435bb5006830660231008a514bb36556723b1915fb6aead5f3fa2833e75307b6205399f72d52527ebf432c03da0b0b45ab4797488c1b1bf9e5c2023100af4dae2016079fca643a07a4cfd7436ec553f195a1aed61f2fc3a3a72d73558dc27296441e476661334e7ac542ef84a30302047c435bb5006630640230750099e18ade170551e11669a17fd02e994d8c679b479f7c2fbcb6ef8971c3658bf05f8fa7caea9a05d67e8abe73d9fd023077697bacc747c7f3a15b09170e381330a6ca532e74b939f4df33151250d16d7392d105da66022ee8fe57852fc9751f250302047c435bb500673065023100ad48376ddc5e61b1a2acab1389181c82b32373f1e83cc453fdfabc74932ede2e4157b19f2a113155cdf57288edb2452102303f92bbc0495f1071552deea0cb24a8ba7eb9d0197b7e7512c2313e146ccbddd8afd47af5bfec85b38a498e871a03266f0302047c435bb50067306502301a8ac40d00c91fda1422e99b64c4041ac45dd9ed03aa22d2190d4518b95a30065bc6fde10563b43fdaff1825646c02d3023100b321270aa1a82cdd0932556939e45563dcc07c3af9bef8e7c1ff842e032c2987f41d56b5ea0b9b7cc84f723053d705660302047c435bb5006830660231009aa92f8d3483066410d4156a777918d99ef249ae478fc67a24c36d7257a9c5baee358c0691cf04e3e317aa38ecf7b924023100abff3a9c52bc5d2f6f0ecd2609504a5cbd5037f95c9f7cf4dea5df01a47f0f5aae774379c68e255263b6656c1496882a0302047c435bb500683066023100885e64f06dfa40df7b432dd93b2fa3a29850a1b8c94048670a935fa6b14c205a2cd0dd2a81e380b36b1a1ec1d9a248bd023100f0a35d9350aa893fe89f6d1ebf13a89c57d3c64a263913b05a2bc88e3bc586c1c7a147812583e10c5f435a6bf73c0ed30302047c435bb500673065023100c6337909290d131ba19f9ca28c2fb9f657934a2a0e830af68eb3019c51d03a52af546d508936a01e0b3d65b729388a5502302e05c10bf999ea8b5480e4bcb59e0a44ca8789a340986d7b61d6edd95fa6b772f3acf44a7100be6b27b3f73af39b5f0a0302047c435bb500673065023100ef166bf1891fbe888186fd0b2fcfb07dc8ca829675831eedb56a01ca35b5fe12f01dd813c5a5842196b1a340b8f7017302304234b457d704259399ea769fb126cae34a6d0836875edb95749145acdee3cb561bff0a1b9803dc2e3d2b717b7839953b0302047c435bb5006730650231008d8a0cf8b8242f42fae706bf33f371765fc8955c287a76076c83e8c350f51e91f94bb57222d23351a6c4e3c857531059023074f05cefa1db8ae87c39ee98030d2df5a7580aec8616d2f72c76e2b186a427d0f0cf07abc14ab185a5b65fa18022c3fd0302047c435bb50067306502305c500cea0c113a979f4abdc8204f7822bffa9748afcc35234adf4cedec976b771392e1b754a835f1a00af792876ceb8a023100f7967f1a482d3897073da1c10cabd83c325223c964842120c2ed43ac88c5a2c16c86e0f19b2efdb1a1c36de68d6735b40302047c435bb500683066023100ffcc05ca46222c31bfc68a9486d9b81f4f58dd9748502378de0fcb34f70a6cb51c1252eea48f4380722685da908388db023100adec95822f30e9d8be2e6c1f76d0127f1efff63a53b6a8ddeec31b31acf8e620a5cc1bc3cd6248851312fd7a2ce9971c0302047c435bb500673065023100edb44e22f767c898aea59525a589000464bf0141fc28f4dffaaea34355a51e4c281836427ff2d354c5e76662c131679d023055964a6256d7230ce8277dde4327a0a436bffbdddac5afdba10e90eb2a057a1d81ecc024be64de086e253b91748bb41f0302047c435bb500683066023100c701636603432a1dd78eb6317d1e5029af1142598b65a745d3f99772c61a9841cb61463792acf9f27e2d19a103b6ab84023100a629594ef4f42a9c6e05fdc3b5d63a8be04f88dec2013a7e3c986d003f2293c0b86e49b9fbaba769f4a66eb58a159bce0302047c435bb500673065023100a7b5b885e1a0cbfce4134857b93871407dcc24e3159070f501196780f6a42160baae62fc1a6e196163ecd29d51a82b980230116e28f1afdc92d830066058c3aa45c8e89f70b1c7a49fc7bee8b8e5e27ccc5d19e41b902ffcddc78f837e8cc7d293aa0302047c435bb50067306502305776fe8cdc8cbbbcb9c6794f736d3c73dfc6a619329d3e532d973f2d157e66faa1a3540bda9749a0c6a31de77f563e0f023100a8cbde89f81ea06abdd6c36e677aa8aa2b9e3922fec5568ef0cfb9e83adf7ef87f6c4d7b28d0a3652b834a1de7216fcf0302047c435bb500673065023100c27a925b3faaa487d4bb36d43634431cc90dd8bcc0b6eda77b2bccda3bd5dbc80b0874a5e3acd87fcc856944d20d8e03023019e2cbb789411646a7eb066688641b466518d66e289633c4bac6119a15a93441bca63d632889e2cc791e5c458b440f810302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e780e3ac76540bf7fa6b531173c3b24f9681d1fc48e02b40386f77bffcaa734d2e9ae3d93d973344ff95ff244143d9590230535d0187dd5032d3ef550371010dc24e920098ef314f553e628fa8a47bd7ac30ad2b1336a0599af451db8e45fb4bab130302047c435bb500683066023100be936d32708ee4429bf6d080919ffc80f638afb9d8539a6986cf78e1bf238e15527ec0e7f099970578994bcc4ba930e2023100f996ea608367fa30fad451196911a7688994817d3bd929a76dffc3a4f044aaac050a35457777c0a37f8bfb8e5a3f38a10302047c435bb500683066023100982ca05e3279159111515b182617b95758ebe8f460b8c64b36e5d9ace8b80333de3b94512f5252a2d55a91acb1a1e331023100e21dcf242b33912ada2b76bdc23b1d77502de91bca5ada77567c00135d4c98b3198abfb47f52f8324a5150b8af211b4a0302047c435bb500673065023070bdfe2d2d6cbffa4e2dda885ab09bdde3d92bad6cc443d6fdcddad2b440e2f329bcf06ff38a80b2b7f1f3c6c972c1a5023100e9f1b16489829499f37748c2c585ba7321e2e5fb951f085f02838a7cc320c9aa7ca6e8f95054b4d88c20d40c5612ca140302047c435bb500673065023100f9f0b0bd529655f51a99f82d8754ae1db14c9dec69e0883c9914bf3fe485c0381244899fbad665c593cdc3f51e167c6d0230153c226b5b36d999b01aa9bc710a3bf08dff65b565f8432e8987a717c3234b4e2730e1d33e7365cb3d5629a9a64a4ebf0302047c435bb50066306402306cb237c416779d1435f9382ac3d0de02a31533280c959d1d83a6df43742bf4177176dbf308588ccfbf8934492ae9bfd2023055231f9d22f3ba3a7aa38a205ee8a64cda8ab5bd0658cc411083218fb9becea75694a6b6bca3d2335256d6f77b3ab0ed0302047c435bb500673065023060a93d665823bf9057e6266131c9b5c9565ed0d0aea234079d56df0cc7b16b1d7d2679a00cb80999a73debaafb655d05023100e4982fa62ea642123a9435fed686c3a9418cf96a2329594ad2b608d967d3b4398678a4fa39d26c39a9a382260b52640e0302047c435bb500683066023100ccb253fdf15f6b398b9bb79d08ee55f428b599868963794abfed912f4787331a44820129a0b6d9e9bf0c40291dd897c2023100bb289c6f6c3c7ece5ccac501ec9e5eac1ffe4e99a5bcc3f35a433dcbcad77a46403cf2a805a0fa1bab8253ca9eda353e0302047c435bb50067306502310092b8adaf652c3a72286ece508bf8b57614a33fc871f5699f431b1feeafecebf4a752ab36c42e5c65d047e0c44cfab1de023007a2fbbb40630a8b7f4b2afbe345a71a28c0539c43c20d18d7c8bf2af13f3613b9122d6e22ea203cec1e95003cadf1dc0302047c435bb500673065023100a426a70c4721d7a428020fcad6fb240e6135832d4154b43749374c8d98a899709206fcd6e1c5177c429fd5e3e562d397023050897ef391453f56adcf546ffca3f73f1e5f1e2cb7465bc2a78238fd4ba91c6916978d42fbce87ef00412ebd702b099e0302047c435bb500673065023100b19577ec5bccccc4dcc9e26081afbbf4ae0c062e93fb741ea7864632e07c5efd5443d62fd5728a6305deaaab51ebb2ba02304210a96cc86553c8dcd410cda010f2726a84a12fbc2f5b0d56bbebd67fa8efaa1e7689498b05d5e195315b1e89edbbad0302047c435bb5006630640230008787c8bb52e44989732dbb451677227e4fb34e591f1db8d416f8131e26dfeb7d50c4dca2835cd26666eb3fd8d9ce8902300123fb859213ff3cc9d683f48d247612b37efc285b114a52c7473cb2b2ec4506d3fe0341ed49611aa6ec4e82dc34c0130302047c435bb500673065023100af376a4831d4540df76a93231b2954944a9a1453922151f3c680aa08f3e295ed0cbd1ed93c0f766f26fca22e2af167470230721d3ade44f02badb5acfa1bae4e3d7c1ce8f0772d9e2cf2f82c0e56a1f469211e39907c64112c5aa3f315d457c7d7be0302047c435bb500673065023100c49ee1e5be06ba201f31b9194d8a84c1bf842e553bee25c99c15c9569edce366ab951d4ca11950c6adbdac9a70ec3e8302302e423ffb833b85e6bb9a5ea3f813a82234c902e879400e28ee3df7ea9c1d04e939e81de5f707706e7626ca1ae7bf52a80302047c435bb500683066023100c738dd0abe220f0475fdcbb89692bfd2d96b497188be37b4d78db71fd0c7546ad81d8761833aa281a6c38a85bc97dee1023100c55a8979a69117325cc7f107f597adf3e7082d047d744a34320d153427619976083d0781aa9c131010610fb0ca98116a0302047c435bb50067306502301c3586e4cf3fdb93ebb02bb4f993bad05f2ffb6ed8ec789e055fd120a515b3281ead592b143ec6ec885b52708cc3469d023100e689f388b00ed7c07b6308651695a95e1237659120485e4789c3cc278116af44bcb2dcaa0908bd30af39e5338968aa5c0302047c435bb50066306402300e757c5fe0ceacdab878f2cfd43e37f095303ab942414ac66fc0a7232fee71f44831b8db4472541797a46fb9ce48dd3502307f12d4ad6a14b1e0066c080500e0c87351c8956ad5f11ae9043aec2dc6c02688032641f98308d6bba0f75cf5108261820302047c435bb500683066023100eafe2403764d95aa661de89dca79c7dd70225897c967e67a0995becb56532e2a1ac163c592cbdad734a712cdb6152ad0023100875b0b3cc3bc3082442d095b0f6cd64e625675769d27171c47dbaa48f6253cfce72230435b69f4e16df40a0bff4b34b10302047c435bb5006730650230499ddebb9ef1ea941763db69237dfa365bb94ef55b678f6670e58e568b63545c107cda2b9b85588fd6ef86039b7e12b9023100d3c8aa5f4aa6fe7de3e2dc2bd8fadc7e7ace6d797267751446c065f5b866143ba6a6ac45d4d7f65fedd32455a6586b270302047c435bb500673065023100fe70ab04d507951da6cf69b61366b34a85ea7f26dd242dd3a707aec9a0eabfa61f6bd7db6dfffdc6f31c9a68940393df02303d8f23a9bd8af6861185e2eea9c46f3459088d39ae44ead5a133aaf7e8c2f17f0d2ea5166ae0b4f2cdf983097c6741df0302047c435bb500663064023009dadc1275ddb0c5d5724fea1a284113d2acb7e08d42f17e9065c4283d64c6a45d7c2eda16d4b72f2fb32981ba7e3f720230696ca2e2d8d8dfce58e090b71a1046dee9fd5b5228a98a3b60c81057d0071bcaa54498135f5562ff787a9011326eba370302047c435bb500673065023100d7a08077f8e4b4bb93645d34ded5850a6fb4d1c869e8f58d1102f0a6e5a524b3abd7fff801071fa96cae48912eb41464023043d35e93f58787f5518eaab038589ef464fbb6123b254de80830e44bdfe8e5c7e265c9baf79004cbaa7e6eb0ea1479360302047c435bb50066306402306cc678649b854ff2b4b1191c4c16bcd0ddd566d5df713e1d77a3dfe13207081034a6e1312625836066101362eed46554023043559d30349ccddadb7eb4cbaed338d83b3112bb9b63a16729ec920dc1b7e2f98f5c3cdfa92e566917ae717588b671830302047c435bb500683066023100c3618d655b9b0a80d290f94f39f0588891119816a884d9b890ac1a03e07cb873cce8ab60562a9c705b07056f29fc965b02310085f9bbf3e6ce2366619d0e9dec1d781a5e77f8ab3ae7febe7f61f9c28ec00eda59f2df050feb00794f016fb5b1c411f40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023025f4e57a28cab507ab2956992db3b8a723bbfe46ce6250f5ff220f73d1fe70933c26f97c9bdccc61631dfe7037b3525d023100ebe7631e5d3b2c9eca8d51774f35d0eaa5544c7c6bb704bfe732e3b68d3df3fa7c8e924ebe08bee9e1bd963edae480440302047c435bb500683066023100b84d6723d384ff9846850310743df699305f9bf5e531035d2ac61c442dd606b3a9abe757251ccd3264ae29d4a10c028b023100cd5c99e913efb170bcc36179a1bf3dbf9d0901aa99d888f728ac9fc5ea354fd4d1cd72c613a0c65eb4c8d5004b437ce80302047c435bb500673065023024db2a4764bd8c3fa1f58dd7c15da698242e2473733ddef150ce98a258e3fa1e274b8de1a172ce4fece9801bc92a7a53023100a3cbbde96c8257f3cc48d0333dd01f211ec513b10177f502e5e53086b4b5d8b2cd543b8d97c0bc9dc34791f6ae8903fc0302047c435bb500663064023074a032f22b9e4173b2f76a6940a0c0eea325eba0ddaa1cfb099778b7b4ae947aae9170f15eae3faca427212d2880d44902305a1bfe415d04cfd1ba9a276bc3c77911bb428e22f548617295e0d5ad72b86cfb14720d5aaa284b1548fbdfb7408c52ac0302047c435bb500673065023100e6f8ef2a88c6eda7a1d4398bd6c5281e90b981861ca088dc5402387b7d4452299613446975145552d97c4d92f5f85b9e02300945a4e6a98e1556512f86003afd43345fc843ebcb7acb29038a2a0ea556d99d73e08832fb555963a304349bc144d8400302047c435bb500673065023100a8922419e5a5ea02dc8465498aa44c4ddf30a47b65394aa94ac649e8557841ad3118420a9e6e4a2d774dac60d8039f2d02302c241407bcaf9aced29ab77bb636ce209b0d76e2f8a9df7651c289afe45b5f67505f16bd2c990bca4d51b26ac4051cdc0302047c435bb500673065023100c4fd23b8803a2cd639d57c7e54a13e4a0955d0f4a5fc82f209b7c048ff5803085c83e23d4c33bf0def239ed505045acb023053935f4c044dcfd0de574d2999fb2a59052d70b0a5ef418fbb276a4a8f40346aaf6d210e16df29c3b648ce7e9f6b73dd0302047c435bb500673065023029718cf5cec4ee7148bc7ae3c7d50fbc7b409c67695d7a91361a5eeabc86892d4eb9dfad701b3c20af4302dba0ffd7e9023100a67c6fe5ef47c818a3bf92b3028fc1ccc3092e42413785ac7c923034f2fac78445624560d5885e9561cd367f0b5d19be0302047c435bb5006630640230030ecb9dc496a5957dfae0ca4f203f6cc79fcfc321c511f03461d3b125d8f452c85bec3dc97144cf4125ad45c871a94602307e737743b3375f155c394e42456b4d4000fa8cf3dbbe4daa6d81ad6dadf79d5249fa4154e579d0ad4d77533bdb01e5420302047c435bb500683066023100db5397ce831c8cc2c421424c3556810c0d95a23a6a52e6c44c0aa2bef2d96a093b8d9d4cbd0e665425ec1fbaeaa517b7023100a902b44e26d3c6321b00925f0ea94668e3f2b633c64c216afee7840cc8b76f370a9e1b766e43fc29432e122de56f1b160302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b2a9fe1a2c68d9aea0b571b4bc16d5daa803ce59c5873d3755cd0cb660a321d38fa28a08ccc74a9ea9534b51bb12d8e902306d3b9e8b6d58a7917a1c7e0577e669360e1c9c692a78740fca148d16180113534122e3feaae6a041ad6d66edfaa815dd0302047c435bb500673065023029b2865e6d327618ae359c23dc0385e722aff361b6c116d692a49351605b5db1ae795b6da015d3cef3f93205b21f89b5023100c95c3583dd2cf10629261f89deb76a8438a094ae08f6069ea5ec42ec35ff02042289741eac49fdf8a53eec7dd4a448cb0302047c435bb50066306402300764902881b4a9666af95edc4f61fd8f03fc6cf18b5c09bf92fdb376e6bd2422a0a96b7d93adf8c5b1a1e0214b54180e0230779e105564e5a4b9cd5045c4a4ad253d2def5aedce525c001b75345795718a63e73a639e16387def0f8db8fda5bb68b10302047c435bb500673065023100fe01fa5a5ce5dc563da5418dbe4d0cd351ce33b5b755dfb929f78c0ac3b45c11a397e026705ee5bb8b60cab7775bc3f4023079e2195caa39a2d931485e343f13499eddf2ffe108bcb67e0a22d0a224f2df0a0b9a724679967180f7f11dfaaa5cfe980302047c435bb50067306502310099972fb2c0fdc0595350aec2daf40257c960f4ab2ef44e90f1571dc60d01d95a28ddcf7e7accbd1261882b3bda78144d02307b3669127fbfb16414d5b680a7b972069997d1defd00de33fbbcc8c2fa1c18ef0e15350bf9ef2f9103239e9ac3fae0f60302047c435bb50066306402304480cca15dc8339983f45ec6cd6b6ae7411fc0317d6053dcd0d624e038eac732d31e6b7d42683156e27451a4b2ed2f23023013819a6a2c05459b2b7ef7999777f01b14178c272f70431e524531982878d690f9d9ab5582efd4b8a06b63fed93427810302047c435bb5006630640230429091d597bde1fbc61baf742a3304e6af362b5439acbfd12c64e731d33d2e38a71cfd8aa01d2b9ed5c6f3c34961911702307b3b0d8270f9c7b72457816e690c72f2d7f53100aee99483a7cf1a0ace7047d3da741220d1d49de4eaa8102023d246d30302047c435bb500673065023100be2f0c82b222849eb4d2fcf230a5553a060eb135d10efc3cc0d0403ad0c78f58f4e1b2f44f56c3009010a4fab05dfcf2023057a879fcd7c9b902217748c52787be11ecfc6fa40f4401e06d013847d02e67573202a24c0805da0f108dc853a4593aeb0302047c435bb500673065023023579290ce342ce32d7ad09dc54b5a55d187ee24e3a646e111bed66385faf66dcf5a6be330f9a9d0f72c1f46520b3036023100b2802f653989e3b732efa8060a6c06b8bbee4e8bcf5994f63d923d27c8a5581c4cce53d7a54cc47b3e6c5e5ef42fa8160302047c435bb500673065023100bcea02e092f5fa2c7986644df51abef8aa6b4ffc22dbce9e50e304a0d88202c675cbb64a59cddc20bc390adb96ecd9d7023049791e59a2f4b4dac23ea0a5e8a5e7a9d9931d4c7d50f4c6e178306c23c8ed79e992a1302fc89fa78ce09073868cc90f0302047c435bb500673065023058f7c248fb0df3063d9ec8e8dc678029efc21c766ad4237b0bb49bc56d3c7c0c59c89bec7e2cc5b605303230787efe66023100dbfc85ff69b263e88b6d992ff58c03b96a07a04f9e3819307ff6ecbc01838a8f3d51fa54bb89d2fe813109d8755eb54d0302047c435bb500683066023100d664f73a92c5d839032bffd53891c44fd0b22ef74c7b7893c05e457412a5f4a0e280dbc53f0e16baa764b1230769f6e002310096e72d10b0cb8da54f34a7726d6f23d1c634070b5bc760edcc0acf83c29887d81b966faae6c245c2ef513351e07a8da10302047c435bb50067306502306de77725eb9dfbcc8c09b97a51f4ab6fa951df29abe29072cdb87e9df5a6c168e4fb3af1844146ab82d3b807ddaf857e023100f701e21dcdd9634600a58315488757c294760037d4d5030089cbb3cd0f5183eeaac0cd3d0cc5c9505b9bdf48cb28abf00302047c435bb500673065023100c38009c44d82276be89f5baa87e9139a04430f0cd90a3bcff19976adcc3260ccfb0bb71725e2fb0ca4dfd698ddf7c3b0023012d33374f9bee0f18f7948bf7513f9e2655e7fb75311f88a9fc16d2c0037807398b724241f8d92420a7dea484f63d79c0302047c435bb5006730650231009c66750915b764c5a8b7a04c37b93e4cc53749e33849c04fd23e51d4a6e8ca0aa4d29a1608c879ad804a70ed19905c2102306fd2303bbd464e738c7ec90f8ba52704eed05c4b64bcb92cbbfc921cebcb84c12f5584b12617e4071b96bcf7e8ca7de80302047c435bb5006630640230304cddfc4703edaa768b61d21b2311ba5b67d7be8564dfffe6b774cf11e05b938297d652c610506803858056d7e05cac0230365de550ccfb6e07d207a888dd1df12aa1e25030a4db0a473bcc799ed42df6778ae5c576122a3d566aec026f7ffd12790302047c435bb50066306402301b64a64139f5d81fdef951d7637b33b4d6b03ce87fcc7aefad29f98897a67307eb88a7ff7151ef9340be75f695f4ed6402306c146fc0e3bc97a881768afd6848cfc633b2b779738cd98e8f689aa6513291de55fc16fba2bfe2ff6b903690bc401f900302047c435bb500683066023100d6c6c7d94df324409891966e59b46505fe1fd18395cb9bbbbcbfd74775d18f3c3f9b30f642e0ea4f1467ab3ce02b2034023100d54ae4b79248b9d126bfb6e03ed6e4680bf1a0e09829a0bcb130bab74ea963368057d3e07b24cc0baa2532205a587b2a0302047c435bb500683066023100c0c17b43028d28cc8632981452f5eb4307d61ab01edfab7d402706be319f9a91e49212726f05a841ea668600debd7b8e02310090b5321910b0cb6f05a2bb2c8c7ff2426ceca9ad1243da4ce85ab8351b93abe27e94ac1ad31e938fdc61769b0f4c054e0302047c435bb500673065023100f5aa34789a6cbfb6f84c33eb705616ada84b52af0ae3c61ac1cf0a1b68f115663421204da132ac580774e938b0430e56023006119a766ea42271d338d92a2ed70e1c68e1c67a17803b6fa054bfb7c1da26672753f7da828bc74d6c06db1f8a7b94ed0302047c435bb50067306502310095b65a6c38e61a061e06c84c89b517d29921f22e8d7dafed317e874bb7d2d44217fb4b63b507f441d312e373c95d7e3a02306e5b84ba4be63ed1a10ee9dc64742572edc02774b901419b9c637124f1f8ddbcecc61fa6488db293ffda3287534406540302047c435bb5006730650230585752717203ec0fcd267d5b51b042f4dbfd20fee24fd1787c4009400048375aef8767f1aa02f0dd921f005ba0a71770023100d939e27ee301becd54f70e113f59d87f9abd28175d1c54012bff025b126595576ee830b979c7738d6ff740493b49b4700302047c435bb50066306402301fd9f2bc341f429f24b491024cb8d3083883432438970999e416964056518b96355eaffa01ee4d3f9531a7e55838cda702304ad639ac4a1e474484cf9c286652611bae172d44040f5293bf8c715c3c62b74d0dd802536864ee1fd84035a01f821ae10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304b7c87b01db65f71cd62d826d415dc2b598de05aaba1aa118748ccef7984e51a3b9e38b77947f421ce2e91d33bc4c7ed023100feb8d2828d9e45833bb66d72f6e60e91f1ff2f9c4d58f812870e630b244565e14ff335548603814027883ef1dd1ecd060302047c435bb500673065023013983e5c3b0ed6206aa814f55343c0a58f587007fcf7ca6b338006672be731b1e37a15689c9a09b1943c61243892c5c7023100f4225d536e982e0e2399e9b91956e23b21fd8bd0f4d185a1a1ad7cdcd3ac03fc7d01a2669e386fea677fa8a7ac48ae180302047c435bb5006730650231008e6e77acdb2039a744fb2c6b33721f6084c79ccdcb6c28c5fb28d4f1d6090bc4608949e8948bdab08c2c84d9ade6093e02307e380cc5f45a4fcda678facaca80a184149ae3db94dca2af41380318fe5ee75304f37aa5e6c94e325fc1d263506adf840302047c435bb50066306402303563bb86d88608974cf5de9189091816d77c7381a604220e910562fe89d4f7028aabfb1b31b6ce3fe100ac72a509ef1e023060f640253d20f875530c26f6cb16f76d11e200e31a41b8ab2b5c88e3248c6d7aa144aa102c1c210c21a0cbc7dee1ebd80302047c435bb500673065023078a5aa71149080c56152c83d2e6a0240a65955a85a2125ec9699dfa21eeba2ec7c2884d16375647727e2c06494ca3dcc023100e1005b4dad87fea3531c5a681623c1b87de48fdb6097d96e0d56346402794fa1914f886d49fd147bc861e799b0590f020302047c435bb50066306402303631fd4cbc192e41bf94cb1082b28d77e26b057e7fc086529aab6ed3bda230ad017b419f503484c61784e2faf742ef4e023060f8951134280ce62867517828fad476cf41362991cda0904f73fe517b9d15c1cf9037e971195853069d040de9704bb50302047c435bb50066306402304dcaa96d834990f14ab86ec55ffc354e1c704307ee3ad8f8963ca3c27650c69c2ef0c54197393faa48df384e148440fb023072259df3c21b4ce5a8e9e727733d90b976014682a875c21eeb6a1a5cac5c27fbf84db7b052d5a55661a3521f2d689c920302047c435bb500683066023100bb1f6af144399e58b40174d32446285627e5dfd6d6793273b8532155b67b813cc8c21e9da16e096026916d51302a469f023100d5772afe7f55fbf6d4e56133cb58b20ddac6d9e860a0b9e1999de54dd01a2c6c1b47c7b0f28f5ac2dd759c0236ef44c40302047c435bb50067306502304033230797e74d4c0c96a00921267c09fe51c22b8968842fedf4f9a5294dba7194b48bfbb8ec79000f0a1e631f46cbd0023100fa678a1d25b6d5ce603fa39abc1dea2e98f9d3c52d34bc8e3cacf6c683645b694e9440854103d1700e39174ba695834b0302047c435bb50067306502307eb63968b9d528b5d0c206cd4ed3487e34a2933707b056b8047300a2c605b53b3400b701a13d56ca39fe2a103204294f023100e5344bdc71067727b31b33f49fef74873e0a8779e20360c885eb355ff7e9cc86b631259a476862f62b875063a1f3c7050302047c435bb500663064023001d9e8e09f0395e0434fad07678e5eb1d126003510645c457ebef30dbb12a5296e503ffb11de669016aa0664aad4b0c8023014c2822568c644453e1e6d2bc623adba764ef9f731db03f4c50306139649d34f60ea36b0558b7dcd2dbad7ccbc5570dc0302047c435bb500673065023100b55273bfbc80a52c1ec432188bc063a5ef28f91af65838389b7d3c3a4e9c7d7b76777f9f49c00bde6f8f05f3f64a157b023027c45e47de7390c7253344ec3cc594cbabac5bb5dda09cb15f2ec9b32bbb994c6b2a31f48b4472f4cefd27c91e23c9190302047c435bb5006630640230791ba82ee73e67c4e170a6c6d0cad97ce95381dda90d01d760ae527adebe640677a63449f62a2b459f474f895c4e357e023075c62a48b82ee7ab0e5cc2265b3a36b4d322dca3959cf1060a6c6f0f131980d5f7e94d83837b428ccd61073f617432e90302047c435bb500673065023100978cfb42b3e21be600d9a123c1bb8368b3485b1ca3e4a2b02df790d6659d49b168e766fd44f1d41172e24d23e4046feb02305ebd0f1915d904a395e59e89b2ea9bb4f45cb6407bef5d969e834647d16202734abe048d9c15a121568febb1a6e09fb20302047c435bb50066306402302c8c592e49e1b280b9aad06d68b4d8a1359867127aca7a62e51942215b03fe2a192b045f8147720cd7aff7201aa4c54102305d1dcd9591d0d3d810d1df045d36b91bad0bb59645df841816a22f3ffaa9a0df78380bc9dfd65cc4dd0e9ce888e1f9660302047c435bb50066306402306b6978254d932820653efa8b4904da210ee8dc340fe742390a373c744566443a34433d1aba10f83607917c5e284cccfc023059e4fc258b307993636e5a1c23b1ac2c91ed40375e578c3e30af981dd210622bc0289099f2d77c46258f4620b5b38cf80302047c435bb500683066023100ac1033cb3a537824055f9b62dfabb6044ff780b5a5a510e8f03ab9733c88111b0d10826e8ad0e4fbe419ce7f75bce234023100a4e9ec4186cc75d2ec758ffcdb878a2f4b1f1656908d190ebc25ebb59f841240a62838ce36ef75013ca415c41748451c0302047c435bb500663064023016be6ffc48bfda6af6c23741b60dc69cf7ad7525ab4debfff9a47d3c1d5a387afa569b556b860459468df32de337c72b02302600eec28c2efc5171d49a509b949c4a9d410b66080436a521ac31fa91d82f934a015ce4d11dfe9be6569e817ec791d30302047c435bb500673065023014e4d76e91aa007602358623c2010503e18f26ffee45411bac065a2ceaf1338ba91e4910995386295ac55b6cbd632547023100c5420f5c325fb8d7f191932ad7df7ceb215fa68d71493e708d0c981c2acf2fc4ad826b83b7bc19a8865ab15fe29ce1300302047c435bb500663064023021a813d6e64282ec99ad42ee2465dddaadd71dc2055d0b19ef395109b40f6bb26ce53d41d99863a811702d8660b21b7a0230759d2f06b5d8e035a362bbb9734888eaded58197ca694a229d16cd903f8b3575d0a94674437e7170751cb396f35c58930302047c435bb500683066023100dcfe4615e8076cbe1b684dbd33a61565be3eb9d9b19fec38b3d7354378550aa1a5169f90e6b4e07dc1e458222bbc202f023100810fd96edf85ba39c819606d7151e3e796475000e0a9d0445845ae47bf1d5c62efe9401fe17fc2e83fd01ab0e1a5718d0302047c435bb500673065023100ffd26428821cca22f50d12c7240c57106aa9eedf4bb8d66a71ce2757e8097eb77a41ceb6d5c46fc481366ec5f5b4fa9d0230739602f52bc3472f447d920da54b90b30f0dafe122e87eaf9f4ece91fdf43fa84dc041b342f78e7d97e5f398f003bdf10302047c435bb500673065023042316e8ea17a054733776128e3fc180c5a971c0f1064cdd767b2b3386e06ec35f138767fbb19f23f992ef9dcfa317d4e023100c50bbaacef973ee2e74676950fbdbcb00fe8e580a75b9caf746fa9caa923465e4f21f779e33f2111f4e3a74a241b13dc0302047c435bb5006730650230278d15c2c222972e7a209ff288d4cfcf60b0c756578cd7d50307e7cbaa0efb6acc4cdac2468059758b63e2296201a62c023100b9067e4fcda275e3081c5b78f00c5f02b7a742732d6ead0c343c4739f49a355b8c719fc4ebc9206efe33e5c81f8213dd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023000a0152bf2feed4f7515ebeff4c1830f2b4a85044bb95f45eedb5daf40b3a226c7069daac41e3b447dd8dd46e75f8550023100e6127099ab3edad7b255495f190795d7d0c843190e3c1e1649f62f17335616292bcf2b9419c2773cfad0206727d41a0c0302047c435bb500673065023100d7587eae15b34f792a4e5d019c0a286668f0066215530b115175978ce273b7a96eeb526ea4d18d64332afdf81a1270e402305e1fb4d05aa4d6cda3c86b37b34e14c7fa09356133560cf9d66d24561f01ddae9c1f667709b67317cf0a31b952866a580302047c435bb50067306502305f52ed3e7b07f52bf073c03950686e86adb1aec4b449203ff1d7b63071f939f5cdbae1bb32f5fcda351d335ae73661ec02310099d11ca68654046da744b7c7077279894c13579e921091d4ac21dd26078dcfe662c7b6281e19bf1b0ce0fb0ad4180cac0302047c435bb5006730650230682118c72cc624b5be70843b5d85e7ce0d220702a893f595ec3bf45b383c569b30534a38a1f8ea1827884cd6bf28e0e1023100f379cacc230e177bc3dc553ba06b0b1a81a5caf1e3b2418b84e5cf1b8a22db6461ac6fd3e9e1aa9d6a9e0387a116a9ea0302047c435bb500673065023100cc8db5ee2f38f345b7ed5b42c8d5d2c50e70897b73846222ef721adc6699ce0787f7618f66b1f1d99198e2e03a2dc79a023074301a73ded00254d15326b499aae0a768799ff5695ba0a13b9aeadb83f6707db5098493811601b83a1f450852e034a50302047c435bb5006730650231009c9c86516917446b2298e9bfbc1db218eaed2074329aa009df27591ddc64e4f2e29c5eb0e4ea1aaa5aacdacfcf0835d10230206c7371f11a2b23272604d5238bb41d16c2e4333f3640e99b953728f3a657d69db9f1ce5ef2fca7d3e54b4513e663380302047c435bb5006730650231008e34c338f5d39660843ea04a291fbe5f67935c803f2f75a462dae7e1fac9525b29d667e0e3a773227fe64a68eca82ab302304989c3b1cb6e085ceb2234aa7a5e26c963a04b4c601f888cb222d232431cd92c0e8abc35febaf89bb07971e7f5e9dced0302047c435bb50066306402303920770329377be694fe77dc236a649261da522d767dd6f61cebe7d495af2af25d6ec0f58507d4b12d98e186828ed1cf023074df81041a8a986bc5d66e5da7d361ac2c4ce152323fca3170dedfe5be21fe6ca0fe5e41bf11029b7137ee1233b128ff0302047c435bb50066306402307b9b73a9f097e516846a5c7f5a4273a258bfd1290a458f4bb7d6c15045e4b00ad3a83abb5183eb8ddf799d130e794a770230739300003a261472d7293090c4962e71d827a1f016bd2e1cdb48045cd1b3c1b8a8103ddac9f849664cad7d02cdf98e2a0302047c435bb50067306502304174b32324a26d6696cd09a8fc4768b69bcf2c8c3bfdc17399512b04c432ab156545a0ba37632ff8ddfffe34a4a66d8c0231009020084fc9c267d1e83188d2856e351cd179d67a4113874452f7c72bb84b9cc22da8517f225684bc316b0d12a411d6da0302047c435bb500673065023100eb69c7e4fa5987feefad33bf16694c3d0f1e8efd261466b554d0bb6974b44bbcad5601c6f0a2b20e40472fed6a44ce26023017c9fa3c20279aeb8210dd5d2a4f3893c54ee809b11dfb5e0b09d9bd09ab9777c7e0f379c0ce5f92b9b51205f2ddf3e10302047c435bb500683066023100dc7ef46c52a06cc2457d007eea7f50f8b5abac2d74bb7cf095ff6da16dbca179dea395757a1672a2b369dc1d3c10a5af023100e023b427c0743e196774df324172b7c7d7ef4d3e2843bde12cfcc404152ff3b2732af3fb3ca5be8c5b76e9eb66fb80570302047c435bb500663064023021a53f010d551f67559f7ba092dc507b262f1393deff3b17eba2b7c5e90d6d50d6088553d35dd666191ad096f4743305023039aab80c8c10333e89d06aefd385e0de6ca12cb2dbfbab1215e019048c6e7eac13cb4dc1ddc3d6b305f0bdec0e2d5eb20302047c435bb50066306402304a2cb6a840e2f80ba5fa5cae9a04a8d057b604495094a4754e5528f859c1a323fefe9bcda3844767bb073e8d47414f6402300105db2c76cf64d1fa5ade1819bb45efc1a142d87838105a8214097b62c8f23703821192dea51557ac497960bbe0aed80302047c435bb500673065023100c480fc6c29bd11a62b530c3f68455ba21cab3528ce69cf9eb584b3a70f0da3afaabf3ed80fc7a776f48afd7bcddbebe7023040fd6301266de80ac46e278ec94550dbb1bd594dc5169309a8e248fc8c33e85bc0a523c275c3c6f23040ff7e6045c16a0302047c435bb50066306402306e81da003cfb0b05d7ebfc721dd0f52e03b2fd99703e37146a83ed8032c8315b6ccbbfa9446e1fbc717b20e6c65f10fd02303972db0578b20c67f38150f8d6c9c6842083a6ca821f6ea76db9022fd99000a9abab63eae7a3523163add710228576ff0302047c435bb500683066023100aa239877b5d3203558095ff5231ae9562bc37c823fb56d6bc0decbef77457c1827792e84cd00e5422755b98298f2f3a7023100ac4da0ffde848c3b22b17364c95709f9b7fcf12e0e8ef51ee6bc7a38a2cee4e6969c90dc35b730621ffc4aa702c98f460302047c435bb500673065023007fed5a285d6363c3afa6eb712aaf367a16ddb4cccfb588adfa258bd5c3fa2f47e41c3d553d6b1b39cbe2542deb18f0e023100f927fdeb1e401f4857c5cb3e7589927c066dda0d48fec64a1dcf96bba618c8d7b40f450c2b59c57c4b93a058785436d40302047c435bb500683066023100b00e3e9cb8f3ee4e439dbbb66ec6b6496f3cbf9b728c5da622463ff61adc4e52493adeecf5b4405887626498f6749b0d023100ad1a1c7cd39ee84e63d3be0b4473c36ba9f4f5b21fdb3e1ea90f0a1f4cd6ae266281a511b89ae662da70d2651526cbef0302047c435bb500663064023004d72baff3f7c7f7299da7df47c0d822823ed8a0b8412d702c05280111d81a1b4262b04298fb7475f0fbf8b8885c7a7e02302cd5f1f98227b9210ef79423275d5fd7cf6235219bcdf8cc779e1ed4e550100ad98e167f78edb2b60509e019b8ec8b350302047c435bb50067306502306870a1dcf8f6d0b32203b1d1a29e734d95d11fd0c0fa8317d59a191daf339321b79f8928d50b80cc4337e4bbcb0af5c2023100b4bc2d033c60838ea3709607c5065f9e6faa710021e88a27bb5dcb17fb1d9ef015b8a1c9a4e151f6054e58ac67c8c6f20302047c435bb5006730650231008902ee4d34f4ccca45fc35b93f3369102a85894b3539a5578fc40af1f9b6ca7aaacd843e7ff97f5a2eb6002ecccac4ef02302ef1b491f93f792ae3fb113f037ebc8dfdb888f2902991e96cd5c01b4d71897e136b4c62646272d059e8c138e3bc66960302047c435bb500663064023032c49c4822283b9d9c1c6d986107f2e498ddec9b47145f5953c41ebd191205ab6718c3b8ee814d844fb050d03bb05ee302301ce323c3ee73926510f498a5f505728bfae9ee6794bc8c65cf4a32f138874ca503a79f1e7b2c8df8b837df561f30fb480302047c435bb50066306402303f28de0704f183fe332afbce17bc792da270efce628c8c2ec5167c87a5fecb1a6da258f808bfe08e5a8492596b28e70f02307dc875f96c018a5e5914bceb6d6d989cc5be46561d9ac81e3cb3299885468d580b802442f4e99cf119128c95ce690b8f0302047c435bb50067306502300568f1f476c7dfe02b65540b75c55643026b52f8b714023a8174d048252c9e0044f33f0c9743b0f361152942d55a44a5023100ff36f1121f97c25246343fd9ef1e767cd01ff9782c314fa3eb85eaddaf59ece8c8902dd16dfed98633b6ea4b0fb6df6c0302047c435bb500673065023100ee3000e54299c5fec262620f21ebbdb0e2c1275309e3e7c5a728b6f6b9dff2b619f6496db1a86b9c31e14adcd99c194a0230513122d1e1b29141cc6275e8899a0d7875f46669ebefac014d171e16eaf97fb9add78cc5a3514893a6b674fb7c9a34b60302047c435bb500683066023100a259235c8bf4d210c00662f0867d93dc3c9b3530ec4207b9040066ecfcd441b28e1c7784bdf256b7c2b514064296aa01023100f04c27956bdf716f0271549c3f1db2be3e994c9b17961d5af0152ba107a39be2041f92f082c552aae67971cdeb6557850302047c435bb5006730650231009323a4290258a81150cefd8b2acaa51defdc5cfb29dff90cfede380242c1cf913715d6c41ab8896e667e1192bff6ad5f023076e5a2b1a0cfaf7dd0ce9cb69be82a5b5083ff128a5d30c3f32a3d2dfcff25fd0c133be8c4ad43ec8659bc092a8007730302047c435bb500673065023100a8929246c591e904de0eb7498edabce340793c5f8477045dfa0879590a80e0e4153438e752d899947eed2fbcf0a0cc8e0230478121e0b0fd77fb337a9f75b99723137e46e194419c872927559fed1d0c329b637b2a25e9e2b84dfb716465d8118a880302047c435bb500673065023100d08f284cb212d4eee971d67e2fb4732f618b5dcbb8a285abf8e44781e3f7166975330faf3a67a8952f12eeeafc79a5960230377e337ea78a615142d8301078ad77a10e1121734ab28244c8944ac45cc8cc9fca3279c3e8cf83b4fe68d3093e3f31130302047c435bb500683066023100e0ad8403c28be8aaa7b06f06c59418af7a878eada9d35e1e551fd020c8ea377e404b13ca6efe3f43593450f5ee9d8f7602310082283ff2143dec46427cf5e2f197c8ef8d8938cf8302c76855c2b295fd8bbf78affda63708e78b4da5b5d19fa486596f0302047c435bb500673065023007cd0e436f69751f4331c1c29adfea6e6355ca77b0f3790f9ccce62e08e05e0ee330815b0689d1665ac1d00c50f42420023100ecfed3c0fb0f2c9305f813299c00345e54c146486eb9a18666fec606960beb34c502f40ddd203c10f98c35a41a47a7990302047c435bb50066306402305798ee99cb7af735fbefa91fe30f45b1fb71421c4fdadf651599f5c134981a38763577806895c574158cdf815638458f02302d2c88b5ff1ad57d827901951c9b1cb3cf35071b5f91ec13dba3791f4c2caa4456661f397f374231a718e8cf7dec61760302047c435bb500673065023100d9f867016d8d27679822cdad57705d3ab6385eb57453418408f1b3551d59f9efddd2b5930f31413d3017d9e87168d9b0023022dbe3c19b83fc6490c5cf05011cc04ac2225205564e1b3bea5a8ce28758bc181d1a483190c5035755da417ea6b8697c0302047c435bb500673065023100e6625e30981a0d7d63908d8a6e951e73931674d5d044be0b823a417fe3d457d5384e43c73c7af3a8ac2f61eac2fa58c502307f48102110af75c5584707b97cb8a965e540a8b824bff2e7d64255f2afa951b506aa941a3d99f5ac0df879ab1e6367270302047c435bb500683066023100879bbc568768673c42a1ebad812e782fa92e1c0b4ee7e0014f88555f3af67bea6c25499c25869612bbf86ed4643b547d023100e9a57a52b3a71c9c5516d39898d3ddae1af089ca2af5633476f3c56a42cc8fcfb0b38b68cda869b33e9b3a1731ee1ce90302047c435bb50067306502303ab77f303f5eb065babe984708ec5b82c5caf3cff32541c7379aaa2fc01cd7a5fcbb2f2d36072694cf910737a992f5fd023100b679bf6ac9f531d17446849af9cfeb828ad52c25503cc59bd3c7bd12a95f755f9bdb81cccb206eb8dff35094438d6b1c0302047c435bb5006630640230295ccdcb84aa4883052c54b09fd14f7cf4fefd6482f6c61626ae592914c06cfbf5d57f8969bbdb47e905a450272ce1e402306509f2f123e99bf705638a27b1d33e14db11c43549e6e8bf481892d49a0db888cf2141509c5798b5f141fead3ec8fd680302047c435bb500683066023100f83866351ae151f368989d668ba9e65449b69400adb0b83ad26dc64b996d72bbfd35c3bddf3da61035cd55928a10c5a4023100d3d61699acda99d85da015bbd7e620328bdfdca63076b2b9819d5fc83e6971b3820ddca365eb396abd412b98d07d13b40302047c435bb500683066023100c63c04b4d705ac59dfd2be4a6e7e79ad2b7c61503b279006227664088453bc91f139747c17b13bcb0721c0a4ef58e1a2023100be273f47c64555d80af885cd4d47fd417136202f40336308dc224ec7920188686cd6f84baa66e8a578dca59787c4c1b50302047c435bb500673065023100a395afa8926a5b1cab60912a2905b4bf39c40a0acc3cf00a99a009190cb9e8a421582584488189617876eea6369329da02304853fe377af9f8cfebb800b555265df94f8567ed7335ee01132c7228427d22fe4586c928b57987a3134325e40f95fe070302047c435bb5006730650230145d9a5ea9461ab7d49ed6221fb56237ccb4a3f97bb8fadee0a4010354ebb758ad8387ddf0b10e8084c91cb66aa6ee8b023100f3372a9907a8a37e78c4e0941c90044ac56347262befc52b0b18d5c87b6989451e84f30d0692f78ca42657fc208d457f0302047c435bb500663064023014183a61f44a97fcd1aa0bcc5e3d978764dc2de9d69d97aba9e3f6909ef07bb37d71a497bc31f625c3ba0c91cb3d09ee0230277ac39b07d7ad278d7fc276b657947202aa289ffeb37fb4ba855b8ceabf53b76f9b843cf180fb0cbe27fcd3c143361e0302047c435bb500673065023100ae0eee83a24d4e18d6d8bf345e5c79cda7725bfceb0404a823d96bf561efff40038f61c51f827678898d2ca81f854ca40230419b84cc15db6fc2861d686d25452ae9f8464a18f7969232c928763b9484388abaa48df2c8bc8080910a3d2d8100072b0302047c435bb50066306402307dfb29613de348cf231cd01caf860d9409915836a801acd5e49d282484812e40564f638ff80f117a7a391d0b4a19877a02305360b4eb820fad202e1d55a97a76c7ace5be587831832f2be825b998e9a7c0266370a3f33af0f1f4f7f1504b9c6f93910302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f386efaa54b0d55d901ffc73b94c07710b79ca0cc6da3c76f08a6aa40a2163df6e32cfe4ef80951d796e45a1eca8ab2b023100c1efa3b28e4bea9667e3b5851b25c21f757d551373af13e98aea2f43f5ce553007bf140b0519ae39f1779292063d39820302047c435bb50066306402306382b2476de42f3e9bd6d49694974fc80ebfc01d3da67fe77410c653d57210e943fec4aa999cb18d95606e6d3a3c975202300b958c2fb0bebaa080726bdf0783026992648b52879a4de48f47db6ad2efb28a6e8618bf3af2a0b0e196655cee53a8670302047c435bb50067306502305a0f6d36bad94549fc2b4984088028a556e60f1a7bc7be1dfe55e621018f92ae419720768e38610a27d2b41d590e8c3e023100c384de5c18dd3bbea0e47872642c91ebfc12a4442f315fe727a0a80a43a3bf6f3ff3074d57e7c8fdd97f0ea6961747f50302047c435bb500673065023070348bd94e1c405658e4efc0d74fb1e8410089061e61f8ef0a5dda698050332e1d63730b50a9109fcc9b33b4c053dad4023100d16d847db64bad8c1cb61b416f230db3df0fe906d3246a887d7e57dc36c1b5ce0233b6ff83abe508f809ffc7fe9d73fc0302047c435bb5006630640230593321d6f2ea5130afb8e789f7fcd4a75c45ec6ebb705ce9c958e4139c68c3c55a325fab611eb6b4913c47f88ad91d0b02307f506479401e2c944908b1dd3700715a79c69764e8f85d3e1d081b7331bb1ea0cd3b964714a1df00c6243b5a11f915260302047c435bb500683066023100c020510b2a312c3a7b0c82325e3977a443ab4d0f4fc245d1b9e89af6e6f14d1843b71a5293ec1f4a7f62033b5a56a050023100b34a7b94096ff932e2c8af4fc661168c8c5972d7ea2df9308d5905e6e01fbbf751d2507d452e74286850f1eda44370720302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305f5d6d91c5584320f8e5e3f621030630959f52e73cdb8ef78056b18602357b904cf15d4bfad498393b1741fd90149a960231009043862d361b7fcb1691280f12516fa5bc7f27a2dfdd5638fab6681d508cff31d0f6ea63fd3352e2a6dc546a2f0770b80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100bd06b4100f09f9876df41969e601c75b16617738da39f19c2d1f85c278288830d836f7d8d2cad4dda2316b95b9c45dd8023100e4a056667908793f57e018df5666f12eb3a120fb5a2d9b571f272af1c68df6d461278ff11dac8bbf01f2408860f07fe20302047c435bb500683066023100d0c48126d04996fd7062e62bdc0d827173c00a6a5ecc82d0fe250112b946c45ed5e2925ffc47c190d65a640d4d028c30023100eba119a5f610de054f43f03759ffb69c309620a93ac5ede8b1047385f5756b1e83faa34f6f2c06ec6645e5d81fd6710c0302047c435bb50066306402305c543cf4984774aab124b111237879e1ca5ac6cd42f94a5252a3e0a80cd8267a4110000d47caa78edbfbf400d18867240230774de81466d941f732279e4459e451c238688bf67b87d202efc3c2928024abcd9609506aac241b419eaff505921330500302047c435bb500683066023100d6594033ca344c1d0306b6407765a3d8cd264015cd97df4f330b62c1693c6e2b3a501944274d9e59fd2914b5c65a1128023100f43ef1096b161c510e4a3d220ceae03458e29d96e9712c2c1e37377dc8918434bb04a0a12302e0e1576c46bead1a33f50302047c435bb50067306502304209278be95b99332a3bc772211c2438e51c6e9380528f91259c86144b1d6d1e01c584497ed1ed3fd29a8ef24450fcb8023100b3c6acf43d82b39e60984fd401cff43a324c61ba1a8623d5a612d4ee6c291f2fbf2e007bb3960841e7c71b3ce0a4cce40302047c435bb50068306602310086af11c0cedcb955f58bef1a44e55901a7fd338ad7bb690cbbc7ed52dfac3bc9a68362ea1a325e3e71a537fe3a8ff969023100f39cd260785ce1b67b458321c2fd682a68f36f67e7b3bb00e55be0ef4e37308c403281597838bd4efca655de931e06490302047c435bb50066306402306e08d80240f87fe69d3d47295661eb2aa86ab0f7c00faac5788452a0b836ca876c832118589bab7642cc8b28385fb2ac02303fa7a0ff54cba1eae744f8ac584841254b3cc9e727232ab30c0b6f3e01243cd0343bf211a88624b637956a0100e62ab40302047c435bb500673065023100ed0b170ec11c2209c3d9ea9f193d4b04479581ec69268c69329f7a845ca5df9f05bbdd06e044f3bfa775f6e1745a8ff602303c5019878094bc1a6b292090d3536be8d3dd62932fd29b75740622cfbbf461140204f057623361d51f0d6012d1f003700302047c435bb500673065023100bf3d610394ec974f5610dea24a3c2c86dd5f42a12384271c410e88c62dedc83a1a4989ab725c79cc0a8c2c21db97262c02306439792275bc600c3c11198a326fe3b521bfc84144dcc387e4af9f36480e3f7c827f370a57b417f560c92c31ea5a09f40302047c435bb50067306502304da83dd594e9c9fc78d9680d057e6445671d83c75d00893aedb6cbaa9d0f6e9368df86de0dfc4794c9a5b811ee5e619e023100a074346a49b8ec54f4577c88d461ba1a92f2da9f980f63d590e63eb16db4623c700a73086a9c7d35b936b8a703ef318b0302047c435bb500673065023100bd79454f1988a377bb87c60530df01e44fe6c0a29bdfce50e989a5a4845c4e755aa360390ee498389623d4b4219d548802307008a9a41e345c00716988fbf1153ee5ea8f6baac05933db025024b456e01ae4023e63447534ccccbc0dbbb1514e546d0302047c435bb50067306502307affe1761a3d510987577e06673cc8b36d97e3121d34f9c0efccc53aad627b86af1262a8297d403a5ad207fc42f39f2a023100ac9601396fefae69c5deb7d9c413894ebf33286d3b56075f2178011c8606780beccc3b2d8eb54940c3f8d903ea4ee1750302047c435bb5006730650231008ee768a5956c31918ca814979d93d7955b5f69bfe50dbb87e81eedd7ff8be1c2da8a4690403fff8afa296b3192abe4160230675c62dd936b5064a089793c89155ca427c0775389a05a36ab9ed6117e036a858b2391e588076d24b8b6985cd65b98310302047c435bb50067306502302ebb9fc68e3275d20842acc8ace738d7028489fae517a04103b7c5f1ae70295412c63b39a1b0c9e853c54a2dcdc75607023100987e8a0ef7df12f25a451ca5998c097fdd4c2df81b904c10113f2fcf61a10d063f85b19c11e1b8088c60bde64b875c450302047c435bb50067306502301486ea467205e221d66975fe22dfd389d2ad82314c2463af3e2e4537fd70703cb43c3666dc45f96c771c3067ad77f01f023100dc545f4609d4e407b4488c7fbb0cffbdb37223fa1ea7da53eb994ec86aa1707c76acdc0c3201c7f6b20e43acd08eb47e0302047c435bb5006630640230759679c506687661c5fde162cf7ae2168f59506b5fb2cabc033dbef23f2cb16c660c3f2bd418cc5fae97ec406803c6ef02305a0a5ff1546ab7f0da2bac37a36b979e6a7ad21752c640714e706ce640d9ed6a3508eeabf2b94f28a90b0414bb6fc43c0302047c435bb50067306502302cf49ed8691d6394594335a4700a5aef5b5d9f1cd20fe35e31a40851d0cf513fd8a927736f80e30c1da2b4e85aa32032023100f3cde4a39f252e07805f59cbe14db82da0cb00a48c445f7dffdd53a054a2aad89cac32d63599f5972420c1d2b3858a680302047c435bb500673065023100880230f1ac8e371efed8cdc9b95697dda5db57557045bdaefa7390c0316f945074319412f0dca4d5909a7fff725c827402301dca2dcd0f5607c45e9238af7d5f42b8c6101df509c6820d4398171381817251ce690c60cc5b388b4f2f34c8128ecf800302047c435bb50067306502304c2ed8e58045befea2181b12627f10dc1018d4077faeb1b8b349643220d115317eb7bc36256cc010fad29c7fe3d6f46c023100fbbe8207d8c3435277b8402e76829f468028479dcce600f448f727209d827be0d4ded82cb5968f3b806bf788126fe5300302047c435bb500683066023100b3c477cbeb1e376f18eb31dbe876ccb9528cf37915947cf8deaddcd46b694562b4132cb13bdf6ab8e08b9eb2fe050714023100cc49ae230ac0f13cc2cd9b747be3a789413c9256e25c43673774fe9593cf4be4f116d28a9296dee4505695ad0c93190f0302047c435bb50067306502304d733f2255c5d4813b6c7ab2eec47e92c20024ae9bc113560cd9d2a0c809f896eada2744fc8812d8e131a728ce973529023100d396f02958b300e9b899580bcde7ebc2b767126ad06018b850d840c91b8ec68a4bea4bb22d33672db15155f4d3fd10ef0302047c435bb5006730650230495a3ca926ab9fbc380c33c287dfc91060a5814cece847ea99b247780570ce5fb848b410196a01e1d87120f605dbf197023100c724e03a31f2e21bf881e10d7560c07949e27d59ceb127590524e1d884eebe2acf9556d9c2ef13d609c8bc74c0920bd80302047c435bb5006830660231008b16f4f9762e2444abd78985ed0db1b3e59473cb2f9c8c6e3c7b0d3f8520b6a296ecde9898e357693a44127741fc1033023100ea5108c0492dad85d102dbd761f9ad8df88030e114a7e818b2f854106c415fa689285f9b9bccaae513ef13d6f0378e510302047c435bb5006730650231009ec138ab7376d8a20dbae37807e767cd60e183ec757d8a5cb92e117c9f1199a01bb92f80bb7645b7d2b5c661aff0466202300e139b1bbdf7e593032d3d1cfd730b9d9fe092d8fb9de6333e860d1bfaae5fa98a1bff840967de388eba8f5484e79d1a0302047c435bb50066306402305139f130cc06fb076ab772a144afbd956677df60068d1dc8963d7b7a40f0cd07f4d9f4ca00b446c6fb37d975b2f6d13702302f0a119ce6b8618d812919cd27dd3c937647d05ed2a6252acce7e4a3cd90f59f5ddc1e78cd147af2ac8a1050dc63e74d0302047c435bb50066306402304f461d75414f09de671e78611ca1a68256b4a1c2b2b891243d94433556a8e0bf5fcd6f3737c29b016ba3a00c7a2327720230468bb751a8070b0b6e508eb99771a5647d0446d2744094f70edc3b682ca7c47e38350e5ef1539d0f07b5ad33af563a3a0302047c435bb500683066023100823033a2b3df5f990117717da941abb4ade938c63535630c33384d0cfa30707647a741876a97af7aaabeb699553cd65902310099b17100d8fa41c3081ea8478ca5eeb71b9f7e7c4dc0fb79ec06f589558e8d47dc5a88c322ad13bbfd6f6e90f78016990302047c435bb500683066023100edb8cb679048bf69b54413ef8c2ef16513867c0172268b2fa5bc8f1001be49fa46ec03427c96d2e0599e1913a6f1a090023100fff78e763422c3172c7b30d149ee1cc04daa1e9a613360a97d85062eebecaae765644e78f76b637e3cef58e39b824f580302047c435bb500683066023100d89d55ecc03f93b5282eeca0d9e3abb7724b71dfbb8daafc797d907264db318979b0d828f41d5f0a86e4754be2c21135023100c393e30de99ad64cc1710156941df29e86ee3e9115600e07f8cf7e17120c7f109f6659bb0731bb93c57fef8433a0e8e50302047c435bb5006730650231009eac5ceb0b2e378a13fc3959dcbbe5eb6f7376e46917d140e8f5a7167317818c2b4b4ec1dcaee8a3b2d2f6e35def09e102303994c4a7e21df49a576a74176258c0fcc8907776c3dd2f3c3d37cbd6916fe00b4dd1983e2616784923b4d9b233ed4c5c0302047c435bb500673065023100c83ad77970e964fbefe9fddd7e83318b20835c30890c5b7e6fd0fe0f3ca8a2513429aa41790373f58372288a9142252a02304ac9d1cfe29d5ba93c9fa658d1a5debc29bcc71715b3302b7a4e2f9400f11cf4f27f68136984e8fe81c1934c319e118e0302047c435bb500673065023017dde87d4b146dd8e0d0d567b23ee8de776e3731fba3065b1c567c864ddffee9886a7e841ad709c85ecefb95c258169b023100fbd64d2f9bca3b0c4904f2c3b77341c67354256385b367c40fbb60b47b845a240a79040570ba46ff34884a97ea234f9b0302047c435bb5006730650230535b49fac5acbe63eeeef0dbf2d88e0ddad0b5869d82c219dc5bc73e7a2020a6df254eaa1da8e0513f3757b07f0fd31d023100d20914721878360d687758e379a16d7e0e5b47764be10082a7998e97bb8e90118d432f82e10078017cdb883f58561ecf0302047c435bb500683066023100defb0689faa491633763bde73bbccf278f192283e1a958f8de4280ad7ff76c30c885dc8226ddf6055d0648d3d1621a91023100c1ceb310d219aa32ee30ecc05bc2b52af2cf463dc782346031985ad5a62e909826ef422fc89eb63acb3435cc90f502880302047c435bb50067306502300e8867d80dd38bb4915f3916669a4937724398fb697456de968893c19dd6370eb7accc29be1c685ae63605165e8dea0c023100abc48ae5c74fbaac2d1ca2f654db7472a0d19cf76a75679b4678e66e09b47134375882edadedab4882ea4437ad4129ed0302047c435bb500683066023100e445f871f1c771a87763674880afcec7b3ca0d8d8a88056fe7d0a9b7ecf5781a1376497e4a9be877a67125f104f8b336023100f122c553d908b49b18cc2cd786ed51a9891b865cf9449d4822fe315b9006362bce352cc3fb35bcf81719fcef82c1d6fa0302047c435bb50067306502310087d9fb2c19e82d20d84e8987133649f0f7b3ed8c3b2cb1ae98199c95e4296c82f877be4a98363272d58246d26218d22d0230239e5d898a5276e2bdb976aef47b3c6dda7603d5d70054f9c3d2fe53518ec22a735984393a375f0fe755b028b3d28dd80302047c435bb50066306402306ccc50793a22a37dcafc456836906887c3d475e378f532e2f94df67ccd974f6b0f1d6ffe4c37ed1fabd7505d81ee036202306cc1da056ce8d1e33c15a26c8e674f33b4d4fd2e82edc929b8b577929c68c433a4264f61e8017ddcf872a49d430827a80302047c435bb500683066023100d229c712954d9bf46d1d7efee2658c151f74bcffd56024b600f6ad623ae935228331e706dc7fd2bec4f73bd917695d7b0231009d8e4abb7746412759f5549957bd623337c695738a92e436e27de22da8b98329cd95bc690ac6416cdb89ca2db68d98970302047c435bb50066306402304405c71859145b514e0a25cf84a74924639f4623143dd601a49e0ea7dbafe249fa47d2ca0ea0cb18d4bf52176defc6860230554d395af1d1b5e02a60b0f02e7038fd645fc655acf794398c6fe3b6a2bd3b2736091a824d4ed197bcfe3e41e9bb8b1f0302047c435bb500673065023100c2fd28da2e80abdaca9c0b13f76f1e38cc4a5470457743d68de38cba13295972528a553a555aaa7f67ed7ee1c586f8b902302c3abb38247e07a1e0f3377db37abbbb61cb6f57425b6dc076e07de067747292778e15b0a4d0821714fa0679c0df08750302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f13665669d5e21bd364ef0d2520d8514249807f66c30e6e1f72fc45429e225cdb40c8d00788aa53dd8dd42428f9b0333023100ee7f44c046345685b54c624436f91830f974ce3a39ba0138cbced2521dd5a62fdcfce2fd2fc9eeb186446dbd5254b4d40302047c435bb500683066023100c2cf6e4edba7159349bca34fdd39a8f3815caaa7a7abeff5f16dd6edf00e5202d1eb84e5888cf214eb15aa7d146fd9c2023100b81fe151bc3eea94474d79b0485d32e46c8074d66b22ecb1fe233ac89026c04499bf2e75a0435c5cdfa2880abe81a9b60302047c435bb50066306402304138af4ceb031a9ae1422db8d5cb45d9a84e24f0787b553fbaef7aab3fd3f2e62176928f474202726ca368297a62df690230011cd85e69ce320f914f37f5405a2d44bae0b436b48d493ae3e39ce52ef7123e7b57976757a0da6b9ab3bae40ae9c1d40302047c435bb500673065023100b8552fdd9280e2d598493da548d10ba3813fee365497fd668c50498f95924c8d6eab2ade63ee1e29dbe31e19318c503e02304f66616d8d1307b2f6df987f42c51c991547a7139d38e1945825066d705c544c30b532c8a8cd59c333b69a87a8dced470302047c435bb500673065023006e966c63785a09e98deb3220af1b88db5fb2e86cf9af6cb42f40fb12712ab4c7b5f7c406b70030080a787d623235ddf023100c6140f4b02cf873841ccb76a6afaf6bf874f663195c893a87eda45b6252a9dd0faf1b8d24304ad3f62a333bfdb0a60390302047c435bb50067306502304d6b7bb3a62425a8c783799591be4190010ce6d89b0ac78a57d24335d20135a3a0c371e60bcc25da5b39000a3f36a27d023100d6a7d2190b31742f1c828faec13e9e651470a408d019559132db2ff666913c73a04eef02f7466b27c2f0f1a89296fba90302047c435bb500683066023100b9adae7e75dcb71a282129a861f0468ccbb6ade0e2f990a0d62b9996f96588e21d1cb983fd92f762e76057e567ec0cbb023100fc511b2fed4a152f3e556c1f548334ca27ea57cab7ce27bdd39285dd4903840be7e63097805c1c7351d6a2abeeb6daf10302047c435bb50067306502306ca6e4ec44a61c46c1e709dacd3402e73363f7e4ce3f3c414ee69d7079d289d8d355a9d19e99c4961bf539a28ea225d6023100b4d669a62dc3819952b7c1122fada50c130cc4173d26194044bfd1fc794af003ac9e4df8787504fb22ab08774e5314fc0302047c435bb50066306402307bf8353a74bedef586306c37d45a9330e981d89a1369f72c41ceaef1eeb90faddb4c54abd2f0be87d89e169217deb9ab0230257cca37d5e3863c6458ef9fc7caa733749d3f990b99c926bd428e262c3894f53ebb7b7b0c370e20b53d9223f3a433d20302047c435bb500673065023033f01e21601b3e831e170c2cf0cc8d15b7be15f76c9fca8179b8c29bb8f402554e4eb2985b6ececb750ec24b03e8cd80023100f858742d9957300035bbf355457ea0869b15388e531f7006c7e7df82400d7f8ac26a929e98100cee85804da7c8ff03c80302047c435bb500683066023100d22f2226c2eb596f1e172f1c7d32355e1ab989e9d2ccf1e678568c528c960c29b1447ced082773cd21f15673dd76811102310088203729ffb749ced2ed804a673e52bca0644badc609db94cdb8247d12d9be646a56c4d71389de2e2f49457a7ac84ae50302047c435bb50068306602310092a35e0c5b8970130d6da7555bba630349c466e906a316b21aad9cec07207bfdaa6b25019f0582e0afc6e61e3d8bbb3f023100e6774fe6f76a164201d21c15399fe9b0da0731e2a9949d86059882e66c37bcd4f32f67caf6b2cf5a756e237951bc3d6f0302047c435bb500663064023033476c373d6a2c172c5332564588c59c038b3a6b6526888db74da828549accbffc8af08a41f71ba85f0cb91f3789b63602300441d5bbdb0062cad7502022469a10e4b9fb9ca4d993426c0a50a3212936d7de68947fa6ac9b5f1d753dab398fdddd210302047c435bb500683066023100c1c22e4d638412ba7f87fe6654662ea6396bc9236680905f6cf977c7107c955ac6ad6c29c51ed20181d5f7624c6e76e8023100992a99076e6138e8a57e52473b1556e8f3e7f54cad81c7798e5c9ff71db40d1e6370b1e9f922b558c79d8e3aece72fb80302047c435bb500683066023100cbb3e34336465aa1f80885cde0889890c7a1ea49556851fe75e90b326997b5b6bae63cb6dec122e34c41f44152f47cfd023100811679c6c8babf6e52daa6986a6344ac4371c9c2420858064c1de7910c94bbbb70cdb999a043ba36274855eaca22280d0302047c435bb500673065023100b69c1e60a90b197441673860063c688b2f83261819dcb3caf3463c220bd003bf93c20bff6c89d348478d1c9d76597f0302306b73d7239fcb867fcd80ce9d8131897ea774823ff6bdd798a3ac574e66f4afadd58d70f79cd870befe5efc166302f5b80302047c435bb500683066023100b5f4c082322607db14daf714998e8a62d8b4a7d75ad8ff33bf0891ca8e4356d9651b310cd666d28319bb9f1d5944c681023100ba7e5fd1792e80d72bf53dffa0a62340b413d9ff81bbd9933e2f38734bc0c7a0c302adb066cbcaf010bdfe3ffdc0c6d90302047c435bb500673065023100d82650082d54402aff9960eae128f327f40a058686698cd2728080257fdb535350c805acf7f7da1a14de3678fb2e6c7e023018178ac23e214922f12fa8211bdbbebf842c233d28a1595829cb1674624c58a6b3e932bd263669ff0a72f05caf5ef00c0302047c435bb500683066023100b37a94d85776a711ffe8732d5fd74714276c3d99745523e89f1339c09f1f4ee1ade758cda18a798d30ca0184de2feca0023100d412609cb3f19a8ec9fa34b0e10fb56e83f820affb7735be32398f3fcccdc463e3250afce824b15f191404ca1f8a03ee0302047c435bb50066306402303f7360b8f8129a9e7433f3913bd53d6de51e64049d58cbed2349973f1cbad658913ccbefeafdc8444ddc00060add79cb02301c7b64da4df86840b08bf40cb5eb0597e722efa1d740e7bad44e563f0ea4c3eab9135d83f8b6c429ecf744c7d7a90d970302047c435bb5006630640230455021b5e97e50a28aee5ce2f9bc6a9f5f50e56124283ad594cbbc79b5b59bdf2b81e32698577a6a67bc8d1dfdcbd78a02305838f8ef396b089a907a82d32819225fd898d18de47b329b7a635f08a265feb8a2fcf5259efb56ffdf370bfd35bf9b2c0302047c435bb500673065023066dfa96583bdf1528cefbc888b65cc61d9d04704b1d02ee50c90721c3b83e53b5f464590f6b279a5843309fde654a442023100df340d250c28437360e6be93c3a821bc2fc22a141928783f7ac879ca180e895527c1f85e29709dbd92178f002fc1eed60302047c435bb50067306502300fe716e70dc4d61070622a096e59e8800b82ddc378511c2923fe0607efc38c25cfddf53160b987ce576bc7a64e19a078023100f2ed8a097ec2f25fd8474d3beee5eee337f789019e98428b9fa9101905a3c59ff78ac7cf2e585f645cc42ce3f484d0a50302047c435bb500663064023028139aac76777728c78599ac0c5e87a1db99e0200be601948b1d6b1961e29565ac17cd0b20e75063fe7fd3ef60b158e602302150729677296fe170a2594ffd88e5ce6df993b768cdfa280a9d159c95d30537cb16ac8decf2959421f7432c24bcf9bf0302047c435bb500683066023100abc70678b8bb09c030864f6206b28d6afdde66e626546a1eba965e18ac6fa0b542491017c80ab6f9fd91385af9f3d942023100cbd9fdf1a04c683b475cb2d8b295a450553014672e02b88c6306a53e4dc6cee1ba8ad005af31386a1d7d12c589037afd0302047c435bb5006730650231008047e4be582b62e65348a38c5a6484306f3b11534f76087c8664129ed5f4a20fcdbdbd25c3f3af018d0078b3d802414302307332638a0c50b9362e230f46aba47a547b98a00a5618e46597a8fbdd9ab4df76a921f1214c3bc5b86b6835a9b8fbb06a0302047c435bb500673065023077825d28037802edd501b333b1bbf0ad3466c2306872262d50daad4faaaad8f51662534bf8fb8f1001bdfce8e9a25ee8023100871addece04af3a6244cb511dee6aaf6755e9163c07214f195084247f688e60ddfa3aacb81753b993ec96eb9309395a50302047c435bb500683066023100befd0f5d53db724cec9d50f411f05549159ac4e6aa055b5ab2708c739b5e32d31c379f665de1a1bd69f695d0d59c4f7d023100ff1e08d0a22755017119e4c9845c2fbf71d8a2ffbd7e8c16c1dd0852c228c42da28721c21fcb8d98aca2c029d8659c4c0302047c435bb500673065023100fb0d5a6bb72756af920e9144e5e97336ddacd67250499224a3a0df4bb7131c2dfe4ae71b7c922fe15ebd0c167a2122e80230488ccced6d9fef50f0e0cf34b9ac8264ff2317bf67a03d4588e8111df1c100faba3b3eb4d78a3b33f87065f1c1b11aa10302047c435bb50067306502305694d1c0248fe8c173115cd756b8ac930edffefaec461e99e8e9ecee29bd365415f90af26b33f057d5c8f3d3e8748d25023100ec9c548cd8ade1b6cbb5244c8bdfff1ad07c5db79538d5aab4bab033f32268f32e5a3352b9f708ada210e3502f88d8e80302047c435bb500673065023100bb2593443754e90616fb51d67e5d9d6eba70f658780d9cdecf316db83856143a7d345fce507628de43c7a8552e6bfe7a023062a5f5da25291077f4b8101e73c27a7f4e8d66f36eaab7676b7aeb1b8be956635520812858f7dff0f8262dd577f0d28c0302047c435bb50066306402301f144678c8d46b566c2884c1ad4c5717dd8469a0ed692c60ab121df3cb14f3111c34b22ca0642e63607ae2fab652c85b023004d981ad63b4b1ca152336b2a77af729105f1e0d9e329619d108de2f309e074875d3f93e86abc1319a2b6fa193c0a9b00302047c435bb50066306402302d7886917863ac8664d8271fe063562f5f1cf11ccaf2936d3440db054525b5e5b1dc332b10a9c36a37710685a84cb3440230433a1c2bdd7163a009e354e3d6af72de630f8c2e75a7ecc3ae40ddd63663a70c183e88458d69874316bb7d3c31e924b30302047c435bb500673065023100a58b6506e78313e4428c4ed1e3d57960157d7b4004cc2c9d082f5aca737eeae56e2d28ec1a6937b53a3be23a978f216f0230078e87cdaecb3d8244941d5dd744b864a8124fed8a775dae56d10d08b7365efe7affccbc482a77db17f8257aea2832ed0302047c435bb500673065023100f8996ea0996edadb33340eecbf0fcd098a5168794862f194615078fd969301e18aa3f28fe2cd82e634a49f50cd8b8a9102303d56b5974a3344b24ed61fd79f47c8b385cc74f79ea2a7450eec260825fbfbfdc391d8af6d5f28696a8596f6040fe4480302047c435bb50067306502303ad50f7b30595a145850a1a8c0c2790631519086cb93b3cf2a80d4708eac92781107a7283eb67f41075e33e91bec2d4302310083491541610ee8d614cca4f78d872135d9375785d5c5b6fb1a784f9846ff1accd0c039ce730e6cbc2142567c39d148120302047c435bb5006830660231008b932a5b510aa32fa6d8c40efd69bd92751e4755adfe5dd890c174895bdf1201bf661256b6c34cf4e89090e5f660202c023100cc458079cea6c5e3cf693cb463a6fce3f7ee70d2c0bd27f03559ea30f2af0b573126c21709bc05b4d2a693e0e735ef650302047c435bb50066306402304ebb0646cfe4a79971efe4b2bfff0629234ab97907074408d115b6a5fbb496852048d485d46756f4ec4de225cb65f40802305d75e0c9f765aa14807f7678baabbc47a6c5f75984e80b47716fdcc3f33e2fc798062a802b2c3d0d62e4c2ae25edcddf0302047c435bb500683066023100e2d1942611004a70a1b2004b0e4665ef3299daea0f7b979461342ccd5d7c2641375dc646b4fddf0ad4b195831cfa1ab80231009460a6112a37bde89771e7c8f5a63be46e9b81b0a987f0a18935648cb99b26e6e118f4ed7a018f89dc772094e1ade4750302047c435bb50067306502301374ba6080638e630ab61a91e63ec40404082a966747bc972d82ffb008179c857e53119b6984c8d3ee01acbbda0241e0023100a3de35f9a18060dc27333073227d8110ac0a3dc26119b37f314315ef8cfc2c550ba93550c68308766fc44c70d636fc8e0302047c435bb500673065023063ca5cbc64cf32bf91283b336c9ee0c0da3359940ff63c23d5da0f3a41f8a87288b2f91fa15907920c31356594b7dbcd023100ad17d82219bb84985d6876f19c208ab6653ed1d26806ae595faf0575a86ccc650ab83cd5ec6a41a979f939dc62d6cc5a0302047c435bb500683066023100bcf15a74b864902b976614340b362c707dd5cc2b8a964d39782fed9ea7b42b3ef49b4c9269f35b9d43cc2bb9e8a3f4bb023100a331ae5d0381ac205679e3c12585dfdc8a55d9668ad60d8b73b8af7572dfd764dd217e2f47b61dc98c058f075e8dc12e0302047c435bb50066306402301ae05d49d4555b76ee060ce564adb7a492d17412ebb9c3179e50a7904f2430a145645628b81d94df0532ae4e237bf9d502306fba76a203da9c7e19dbe1bf3cc07604a6585f1af6b5800ff1eb29e55a22982e99b5d4831951986dbacb53501d80356b0302047c435bb500683066023100f66de8ccd0e9ce9cd1b65719f24517564de64262052fbdc9ecbe7dcb9a8f933ec176398dc83502cbecae6b1fbc755381023100cfaa989b306cc8782a35c365894b88032bb1e02b3aef64dbf297c7be63c2af203094d7cf39999d5e6e3e49f53559d6b70302047c435bb50066306402305c00b6b9e18e675b5f4fef20b02901385955d1294427c6e1c46504300586822d5111e18d49e3f698baf25357902c943f023013c116f4c3beaa375b27c93b369c8a0ddce4c1f10ab6c37d99c1a9e5f183810606a2b97fb56e3261faf9de1c6d4415120302047c435bb500683066023100e1216a32bdefb2a884011a8419ec6174d52b35e9cf69a66df64adad29e0e129416da51832df58b569c6af31d39b19cca023100e97403258e4bbe90650d33069fe2376d0c74cae74d22cdcc03b7ed93be32a712ea0c555f85f8aa87fb464c3bda67c38c0302047c435bb500673065023100f61eca039da21577b9079ec60f5f1c33100b74c57907193d1d2603bfa6348fe6181b7d7ecc4d2ae00960a03b97b07c4202300f140dd6b8e6fbc1a1a758cfbfbfeb67ee4a8204d604e6d9b221e6cecab577a30aed696ac8d2e3dfec7633209b6ffe580302047c435bb500673065023001058259f5bf0987ad56546e69cf57fbea31a5ac16bdd9eed3e86b5149b0cec0dab364d1b2220987ed2a91ac106e1a78023100d3b1dec126b2f264429b849304ac5c2d4014e56ad41027c65d14f4b7205576b99e3ac4d6e4e86595d386121c5b85b6c20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305bc9590b9917a69cae8031b15a6ebeef36ec7dd15eb0b2311587bebd2b5f9b110241c70d6f3b62c5437716d741011320023100a9040cb0dc30bf6e220a85c2bfcecf42495b1b93daee94447e7eba6d150a618ee88d9f896e6df72ebbaab82f93293ef50302047c435bb500663064023034519d987ed9a3244219821d7fc13044b91ff463497d2e8164a2c539eb157f2c417786f614535d302becbf3eb590126c02302f0b35169efb3fc42d0ec8f03fb99f335ebb09ac3917d157c765ee8f7da7846329c59054b4ce5527b36ffe476b90edfe0302047c435bb500673065023100a79060488856f96e28a206b9793710c1609889ac37d95ba86c13a97d125e03bb80d5caa860fe7eaa6cbf57e5727493e9023030c2f8ace0fd81340d61dabafa25433e6489ddcfd19e0b2a41489a1907d480440b1f8e47acb05c65bc97804ff7462f400302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230532b81aac3ad88e24719bf97a4bda912de8400f85fdc0ae3ba0a445866ac44c16142fc733c5b13cb6cc5551396299896023100e277e4815f4161fb09e4a51921340a44b3fbf66f8ca84fcb0d48c710001420bee39043297057fa8561270c96b47068cf0302047c435bb500663064023010a33ede717710d82709bd933b3e842939e0ed3805670222aa2144998b2d2b56f7da63fc8c5c579d0aec00bb13e93da902303b39adc7a0a9d0c6a8b4fb0d59294ff0c3b96cfaad2cb1905d2158f7ac04f15a5f26b320dd3309670cbef01af66252590302047c435bb500663064023017d0f8c7da0ee8147bf1fb5611facdc993f6a5ee0bb77d2b15fc1d9dc1fd27c30a4ff81cce8534f739d6dec27c7148750230315346b4e58202063527041d115423fb13fe005fad9b361c52184cb6b410da5717af70970ceffef693b41abe767323ca0302047c435bb500673065023100a0289fecf86487cc9cbd352d1c9ef92fddb3fd94ed12d169e998d1f015735e61824603fac04aabf73889d312feeb9c9b023035276a4ab187ef0a8b05953c1e81a5be57a44be48be2b083ab869a4014316705b61536d546acdff51094b62b04ca31fb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100be8a327f5e7b89db25009609a3c26478f0e443de5941f29b4c506af29698fd17bc9c670d4f4c3fe364df11b2c0946605023078c1d3997d7d606a3ea8c4c8a7fd74023d5a9bd811ce95a5b3b91063324036b16cef01122f3757206534e406672f6f330302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230431f29f5d23ec6b977a06d293705e616830ed5a3f97471157b404e038cd33c1c72df899640780de7ea6cbf3524b2e7df023009f2a73c0b4fbbfd72f81b01777f3bf654f02f6044088e9b8c707d65bc68aa8e2473614c27c726c2e199c0983196ffd70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ab4d2c4ccd090365c9e4428b6ca0093dbf45f06803e3eb0a92f5d055b9630f62a9dd35980b6c79f6667bcec29dd6aed702302aa08bc7093ae5139b8311cdb3f708e86c4ded7e7f3e3db4c40db7b4030f1fa75a989a4ff385ce0ac11d610f6dc973aa0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008d96cb903cb08704ad82d677b72dc179b463233645d4e8705a549e7451018aa1abc8159ff6742484ad676060ec80a12f0230594ca3653ef0e965d60fbe651e7519d6a530aa6798bf4b894795cf1778ac2c511e3996fa9e4e99d9670cdb0b7a8e391f0302047c435bb50068306602310084321a25181c785d5ff40cc882c3f1a5b01b0fb03bc59db34d5c500555936d14b81a57923ff396f817ea407c93fa4aeb023100805208e1c2cb6fa33595cdbe51b249bee093b1c5d28b3b4c142e5817ee163b4e9c18dd13559e7fee51c48ace195c2c150302047c435bb500663064023073a8fa6bd85cbbcf5a781dfd90edf1405a68c993551de8dbf3b1f73a36cd07b65662207cbabf03a9625379b826bd38e002301f07b4e785e662dacdc77c695bdd67bfe3b4be34cff9f59713697858eb8922987d5764de95676eb39969e98247d433600302047c435bb50066306402301fc38c7ec467df4aa1aa1e919cabd236d6957d6fb62bfb2ebf02e8988919099058ff14be12890b49b8c57a50b75803e1023003ef49b1a27f76e47a092151a5d0d2d2f806001bd2395a653747ab94599fbf15e593a55d8ea3ef75aefe83c0a99f79e80302047c435bb500663064023016dd7fb0b869ced227b844c196a820f19562c5d706775bb216cb02ea8d1ffe04037697333f5f70e800c002b130ab7eca023022de268fa1893913d3503eb9f5acd27f6153881e9be8da7ea112cf24d179b6eb7ff0759acc1b74e6ef7df74b3471f3b60302047c435bb500683066023100dbe96714c398a5e2a2ff17baf5124c15eb2c1c4f6d1e6a2ae6aab21f8c88ec36c2f49d018a48b34c30fb609587be6e77023100dc2e0cb29e4cce0fcb172da65f9d74b4c1f3e922e268995684acb755bd1c5afb4cac5fba2e8abdbc2fe2e9930c1a897d0302047c435bb500673065023100d883d481c0483256276adf8d14b43a9accb9647a904b3fcaa3234db7f213b53939c3fcab4d228131f7ac4e71df2e938a023066955a3cdaac00bbd4fcb4f03f8d7f742cae9ab35a3a9f7aef57829278f4ba700f8819d05b3cf4fc5ef61f4ffeaf88cf0302047c435bb50067306502307c925e1b2110a1570e5478b3a139bd88f5773c6ab70d91cbe03ad5638993c47ee04bc9d2f44774802bab714af1f5edf5023100c372aef46b25bae1d1846472de0e60b4625bdf439fe793f75825fdf01e015d0503c1b4b05837fa83481a7200f3b9644b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302da4d04c0afd71a70f93cfd71e9e27b38ea1c29390792a0b7a3925009209af5c1214e6e84db82c013bb28a8aa3168f7902310089b02564c651f0f6cadd5b45fb37377499523491da21f49e8dba5c0af17c592564b2f07818530423b5cd760b07b1902c0302047c435bb500673065023100c4d03ba25ccf6f95deb6be0b06f0b047ee0c428684e799ebe17cf79b1b728253f1c38ed668df3d64c7333464ced83aa20230344c4e0f0bf9833eee4821c2dcce31c818d91a5b0c3d56e4a66d92f1bb015c970cdde019835b16f3f621956bdcd3b5d80302047c435bb500673065023100986b1341e5f8bd580e612dfed39c60a2695ff72e3b4961bcb415578d3c71f57c3f3656f3d45c8829e636357d4aab07df02304757d5aaff2ddd3b327d3cc078e106a1ab0625ad75ee7104989c52f7f91c869bac65be4893b7874d5ed2aef0398a2e090302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c945ef8deb4cb02cfd1fd93fd73d31ccaa3b565db7ff360c5e6d0937e1f8a37df3fe99afb8b72f086ab019b2f19ac6fe023100dd22834804b22dd67ed62ad3c826d05e3c0fab0951ad4ea835ee5557b07d8a3ec362a198ad807c2c79913909247492c70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a479f0e3ca13a19632ddcf5581a40ea99a55ec9a182d5719b2a58ebb374bcd1f7b44ec8d7613697aa68fe483dd3a87d40230583ce3ffa0bf7053369fb8845c5b04821570bcdeeba35dbb9d5d632d3d4ae1df70deed27dea79bb4d5a665ce5ebcdc230302047c435bb5006730650231009ca73005436b7d95b3f92adf649457b4433b113a680c82159a4d13df10da72ae99fbfb9679039ed1bc9a41c7356158eb0230274aa9ed3841763e02a3072c3e1c0273403af7a024c1fd645506518443e314480ebdc4550b5f2d3e1a5950df3c9cf8b40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b7095b164741c81206e8b2d0dbc0e3f9075f4126ec9c794959b41d012a9121e8c33843ee8210334bf86a6526a4c981ed023100bec83bdc5d05fbd43be65080d877da51c5320541d6afaec7d7863f69416574935afa601a9366f3ed4e580c1badfae0530302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302c27157c0dabf0f62adbed0df62721ffacf3ebc3c2a85fecaede1dbb29f7b7852f46eeeb87afec6571347d26b9e380e5023100ca183ca33fa4503d50b6e5e6973bb407817c01c681efb3bceb8fb504321ee52fc8e12476bde77cd79d051c102e840d7f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303ad232f90f1c5e67acec0244d9c027e6de1dac6b4ea0d8d5f66b248f4bd8f5aa967168632ce7f31f197deb51b296834e023100fef74b2aaa114b0aaf5f0873f37561681c5b6f7eef9d4016b2af75af7f3424d93fc3267c433eafb409a82b7f200b2f0f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100bba65c8597d64b72717bdd8f291b2861fc9a0e13c8288721f3250855c5844c1f36371b5009d6e37a566428ce5140283e0231008cc62b46e1667125ee4133e65b0aa5afebb24ef49c95d05906e507db68f985cb80a7b6989a386547a8db668630ed4dfd0302047c435bb500683066023100ae7584f08f8b6b76fafef5d8d4faafe51116d412cf2a0c8870de2e4a1397c67d585e669cec240eba248239d215add865023100e5e858197c70e6d9c6e59333b4ea8276dcd934675dbc0b3b5eee3e796ee0d8af3c40e1d34e505467eeaf5c4dda3e47920302047c435bb50066306402304804bf5632c140235563ac24ad3afce71ccef770ec5eb7cf527ed86b59ab65ff6ef872750b2e39f07aae86f49e6a3b2702301e4b9477ab483835401c0e098c335e44f1afba719f276c492597dd227286b79419cf55efd490a2dc598e12252c87f0a70302047c435bb500663064023058c3eae194cf7239fc9d813507320d02066ad6a0a482d172f64dfde8ae34ca5a41d6b76fa13678c737c8ee420c6cd3fe0230774a048cc29eb96c80f16da3ba3f3e93d65274594202d90a3caf82ff442a93384e8a5795cf47e5e298d5bd5dac91b79d0302047c435bb500683066023100d04d817ced1af6f8c7b41f7d69b7ca86058717930b6f5859dff3e32275fe523e161bc44e7080810dfd21b1bebc8c366e023100be70b8bda122081d0578fd0d892d7dfbfd9a1b03b79f1d98f06d2b44e81c88675efcf53f701e993026e26e40dfbea8cd0302047c435bb50067306502307053c429f00639cf888535d7d7f489d1caa366e8ffc6b0c3a91152ff0a98ec3a76b6dd300c526c074fd53956d4faf3d5023100c994c60fdce7837362ecc4f2e7fe952d376b849d57bc9f7352fbf8cdbba7a555a7bd5a21fac337b89eae5d63c98b7aed0302047c435bb500683066023100d229f7044f2e681cd029d177e0946492cfb900cc4da2e5c33d9c20c7ec40ca3b6a868841c786e3fa7e14030364d2514a023100bc4638572924e1f27bf9f5e269f6cf519d1654e2e534c6bad869358dbb06c9373749d368094c9cb14b5fa387919481030302047c435bb5006730650231009755c9c925c4ce65bdb9f8d7dd8b58142437cca8f1d26a13f68d2b7c58fd1a4e03933fdf0218fb73fd1403b05526a9e802301d69cbb2d66b5b763d27d814984bc675df28c0bda122d390f1814cd32c238ad815254acef136a31dfcd02412018b7e8a0302047c435bb50067306502302b5ae00bee73d9adf2f95885925552af71110b62df8dac952a9ed66822ab9c876fe825f0026d45fd8e3b6f341a160f72023100a4293e8f8629e4318ecdff84075b6913d478d69af7e7955de9dc6c1dc64a0a0bf8b08e5096df7abdbd87038ce25fc03c0302047c435bb500683066023100ee21bbca7e1115eed361a58dbe3b9b668c2bb7b5feac7fbdaeb3372793c37470942fd982e13af69351f018a1cdbc371d023100ff189282bc2520329ee97248cfde94625e2931d9f30f9200893e265441782722a57ebf737867ee2762a6807faf336f5e0302047c435bb5006730650230110408297761796f186decddc8cdda243c10f6dec930cbf5e7143fb12437b3fe6980818b9f2727696a7f841a0247eb6c023100ea985696762b70f9c47e92c0de825a54bc052dfebfa0a85f85312a3bfb8d4154433ceaf70269de955a66217beac86b450302047c435bb50066306402301260bd4567c8aeb8c64e98e6d753912dbe77491cc8760b00501be1a8ba56f5f4e7323d40bf76bfd4024c73e2f00c252a023046559173f6fd94717f92065ad42817ba3c7d06d99358fa64f995f9dca5dc65a362b897b0354d4e03a1d58bbcbbfaa15c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b0f384bdfde936df5a869c00ce46eb180b0edef28fe7ce9ddd997f6cc9f97b15e5e886b14a51c502f950665137cc2917023100dd2c43145b9cb1903650979e9616406b66f96a0868d0ed86a84b1d9937f3669dc17bb2b376e07fc0d655559c17c9c24d0302047c435bb500683066023100e066db40be043327b73067856439bdd724ce3e4347eda86b85c90ae1b4fd19f4dafc935c7a10ae933a4cd6d2ff243bf3023100d63f8aa8d29940f69541a2a44794a43d1e8e02f0423be29f0ea008ed155e7eee06568fe1d54c0f01696bf0308e33c2560302047c435bb500673065023100ac09a03c23e179ccfdf1b29f1a5d07448640e3b40e72e7d51d482bbff429b31cf36db8039c4301ff81d91e285639c700023061bf9aa6fc2489c21c37cc2db3f76faab807ad6e7a761a47ca011a37edb6afdf05dfa1573951b45c2cd57c3ef8be85f10302047c435bb500673065023030a9b88c5e38fac513115a7841bc84228b9ffa922812ee89d853a526a56fea8a7ea402bbb252cffd7bbaa495d50fe70e023100f7e79898c5d0a19c8e25f8e88ba4e5f4304ffc1208163e6cc0dea249bc48694d3c80a87a26c7841a47cc99cd6b2b52020302047c435bb50067306502302a705471b6304b4e26b83fc45f782b0a5b27211578119e937e5db0a98b815f1e2870ce95384bd157f0181119a6d4fb72023100a94b1e692f98bd8a824e368aada39a3addfd00fc38ba45ce870ec7bcf64cfa9155630e54dc32d69244fb1addf2e9b6070302047c435bb50067306502300242198c51ae6a44608a95fe9def9e897e068e89fdb7c4dd17af9021b96c9258e00af8e9ab27913a44b612a2dbdbee83023100db8a644ec84814bdbba9b457ae9953f26be59108adad88195eb189a08228d71184f6579465baae28971b6546748710030302047c435bb50067306502305f50e0a5a1ab218ae4fef511e6d1504c248ac579efb8845c6b16b974d36569cd25b9edcf365c2d2cd5f919a972bb67a1023100c34c334574be9dda3372164cf8739307cd7d827d77da3937a7b35bad5e01541fd040613b09d983281e06751b81f29e1d0302047c435bb5006730650230110a55717f9e437d4ff0fd992c3e0a4ce06459572695982bc8809bfd844152169019b464152ff06f3cec46ac9c6c9b59023100a8f5c5bb05d9b5c0c28decee53ff4da7e04e60eef30dee19bc1990fd2bcc92d7c8c3df6ff2f61164f54a18c4949d0f280302047c435bb5006630640230670c46ca6eeb872f406b12224ad7cf46093315fa444e2591b17a2c2a7d9ed57a53be52016d9e30405349dd3664de33400230340aad2714903ac575d99be6fb7ed5f8829a64a3dfd52c9cfdb6af9a9a3f9979efa6c1ec0c430a6111e791bb470fe72f0302047c435bb500683066023100d76fc089658ee2d9ddda4d5d980653f1333f8a2d805c67dad4682f56264cb8135cbb5a4fb54615e93c801e6917bec2ed023100d47b38aa87dd673009bbaac83fe82c7cf36ebf2fe1d0a35a3783be8df7f9e535e8764a2c9ed1b67d197a3aa16e41416c0302047c435bb50066306402306c42d260ab43ff1928da349c98775911af4cfbd22088872eb5b2a390b8dc63a79dce57c877bb2753baf4609f7c941ded02303e9afdadbb198eae3d6046a9b82d3bfb914e4f6bdbadd238b0bad9d1ae0d0641b4a59256ae83343e07903987f94b7dda0302047c435bb500683066023100fe25d2bbbfc652ba273cd6fdc593cd7c1fe53523faa135cfd2afbfe4c03196775863bcc308fac7480d6bf3040aa4a7df023100aa761441745dbe80867b587c605d7af3d4c72d82fe13c5881a32a022bd4a8c6ac20ba4501efcf3f29f7a590a0f6072ad0302047c435bb5006830660231009d3a52522b2456bf3b29fc2713a08d289385c14b6949fc10cd4d236db22020510a75938f9e07c01b36263540b6221db2023100b4cc567af03f1692eaebcbef38aee06b55ebc1cb7490f736d1043bd67c4416304cda59f89d19766a9e5bbb63f72c05dd0302047c435bb50067306502305a37eb63bcafcc353635ca60e93c816b439007d5f5edffddcbf98c7bdf81972859ec4581d94f5670fb61a6571de403b6023100ce9a5ff36ba4eae3ac2167feb9d76071d2de28fe1da8dbebdabfdf550a524d1a194eece06b9ed580ed8ed87750a7690c0302047c435bb50067306502300d3c36a085fd5f75b1cefce9f9b2999bbc08ac32ed548aca635e2cb82e23b6561517b2ef8a45c4674cfc5ee2e02f68b5023100c6093efabf2122993206921fa1348915b827c2a2115f027bc2a1a6114aa9b435f4b5fd2ebda4077104d7b69c4e84c9c80302047c435bb5006630640230629ed20b34a0b81981fbb4286beb2ea273373df16021ee250e7464c1d13c0ce949ff7f0e114eff432f4b813c552f78a2023056a5d8d53d44ef1d72061767b649a6cf9b472807484c22a14da6011c8bdd49c0e8de741216ad9143939c586e605295fa0302047c435bb500683066023100985ed0e375d0fa1c70da78df92827bf1f897162295558fb32a0e9b7ea14a12507d1b1658ca1308a25c10e0725ac127d4023100d2ad848c6078fa594a52ed28c598054e8334a7ef3d3cde13d350396f10719b51d90bba3acd6ab8dd608c5d3ca8561f130302047c435bb50066306402301b58ffcda192df8e446957878469cf0b0785db60441b48f52136a225f5279640df9d6c60bee8c4899e2f1d8016d709310230010130b23a94eb73fb9e693b57e3372d6c050e1c18b9484e06bbbafc2e6ed58d5911dd64bb87d899862fd65567e563080302047c435bb500673065023100d810226c120e035e9b16d18733b233ff40324dc6658ef35782b8cca0c19606441abf348a5cd8ebe9151fffa17078603702304e60a0c6977db6f6b249b1873ffcece01ee98f42bd8f40a231cbf2cb6b73618aa5872db1bbb34d033bbf4fb77dfec0060302047c435bb500683066023100adadce9f0d9dd5d85db7415233eb10b6f56d179bd444afdf5b757f1ce67cea182266c3d87294a0c6ba7e6323ef5816e7023100d1362120681028f796a8b0f80fe2f3987a14a65ca5b9ed4d1fe8022512e7b72006549c8ffdb2fa4723a79b917ef22ab20302047c435bb5006730650230180ec3f8c73cf72eeffe91890dc5ab2911706e2d3b93ef080c315cbd4dddf3b108f1e9468d58c057949aa66fd281246b023100dd34ce6028fe2963aa8b321d74bc6de697ff41e37a663b30202056e97ae4a3951bc2735f15f0a15570239f5aff063c700302047c435bb500683066023100e4982242f9490182303d189a05bd339133e4e4262fc8894e602d751e123d0c5343d3bf0ed3a29fca99584b192bb42a08023100d67f574aaa74e04d637c174c41c0f48a7bf984bce40582aa997a96b5b8c6cba14d60af0b55f852cda2eb3566619608520302047c435bb50066306402302d87f20bec6799678245773d68fc512c2237b0e73676ae76955f61f7a4e0daa7f89a5510deacf1d571bb174a5bf814db02306bc6ae360728d2cf3ef264d5c4ae63a0209aa0b00889add6abd715190f9c33c3f6d8123c3ddf0e558a7ca1f034a911df0302047c435bb500673065023100b2b615083c7f99411a8948455a4f7a5b87f500380e82247a8dc23c048b67476f1e82fa2059959834569372105080b633023050568e4fd3d41fa6e6a2ff581f965a1f51ee1c020395cee5e3398521a2402fe6e965707f0793410184985802fac64d7f0302047c435bb500683066023100f470caf10bf3df1fdedf02e6228b6d6d00d146a7d0a1c0b63701ebbc814157e826fcce20ef3c54e114a9f8ddde11375b023100af1f6bc1b09a40cf97aaa411e600ae860831002654d08ff35429f2ac40eaf91d9eaff322c66b233f41d88168093d7ee30302047c435bb500683066023100a13a84b4c76d9c0a3fca02c4c914402ed4fa351756b828d080713d432d491aed37eacdf5293a1d92fb355e605ceb9f7c023100aea56179d629bb4615488d984f6bfebb02a7c2ca6f945fb1a1ce35f9349ea91940202aea1f7503eca31764c96f3f6d6a0302047c435bb500673065023077df099474c866c66d9699b045f370e1bbe0c666cbae36865cc4445df171dc317317ace11036d999004c90d1e53b82e6023100f0a1aba7484e1f110b8958ba89d0c0f5dac1e8231bb20da722e98d010572a6f950721f13e90ff0073b3d356c50baf2880302047c435bb500683066023100a8d5003536a3bd4ceba896793f34ccbacce208bfb33dfd3b699e190942babddb6e263ef9546839811cd3e67672df51d10231008ff78c3efa90f4ef397f880825e05746a51468ff8cbd778f3173bf32c5272f1b5c1e23f04b911b7b5ee8e75abf0e3b340302047c435bb50067306502310090a2c1bde2357793f264da94a9f9ee366857a665238704befadd534575c0080223510c1d90c12dbceeb11ec8fa77fd730230622fea0cf6ebe6d15540ea0b35c12431e604b60e7b5405c07b8f289f3653dac5e1767ddea5c8b60526a4c06b6f1dd8160302047c435bb5006730650231008e3f1a60b2c00bed5881cd2b7da3bffca2c36d2fec46beb200ab67e131007dca7f577f0ba6dd494c6145f3c764d97ba502307f14b8c968a5003b9e9402ffeaae6e6756db13ee45ff2df39e43f14bd837802d8f60a2323bcb3dbc097d6f3785ac86c60302047c435bb50066306402306096f54dca77c7c4d2e00ab37a2459570aefaf8c2ed2a4292dd9cff5eeef241799d235431670b811a2691a16d6409b4e023001af68e02475f981a19706ccab505d06ba8ba4d8e36d0bbc308bd230348fdb55889f45652ab093cf85ed7d492b1681a30302047c435bb50068306602310093e49318bf025cacb6161ca830fcab46818a6321a9f2f89d984a9b1072a5b7820870984e2261be3a02134cf22be99a96023100bff5b5ae1a17aa3376e599975fb2106937e13801755a8c53c9b529f79ce0e1174f14f7e249d92a15e51d7a9f0eeea0980302047c435bb50067306502303da8fea979148234b942feb8b570a662b3556ea080628850fcb3a494feb81693fb7d39a52049d9ec1560ef231232db74023100ae34614897d6389483d2286384bd084adf52d412c06d795ae8fad1965e274c05d8dcfe7527e7cced325819fd6d41a3f70302047c435bb500673065023100e161c826695308da93feb90037f0a7169b04bfb558846bd8cd8f51913fe22284b5910bdf5879b85583be9b7f8c3970fb023073dbc7f4d68f7b56d73f8c3d0a18fa89f9163291dd6390cf4d6dea04706a81049baf2d52c9e96d63e5a11eff5edd085d0302047c435bb5006830660231009218ffa9c0669144661d7825b60522aea3abd1d4ef706455dd90f7db73faa3112cdbef9020f62c05ea6a0018f97d5322023100c8de23d0b577b495c11832bfa649906efa6f9526181232e5c9a658f124af0b6d110e9971aa095d9755679a5c5d9e72870302047c435bb500683066023100b6af23cab50df5647b7ba3aa31fa71e7cd38e65d57cb57a5a1c9c8eddf3e7556a7889a266f04939bbecb0daba635b04a023100feeceebb2bef55ddd1a1b74bdf8f7405c7bd324bc3129ef94cbf7afdc898a82f388afd44d43f5f8c452372e0afe7a4910302047c435bb50066306402304e4a190a086b574053feab493273bb0d637ad8510ac2b900120d09801ee1d488c193c2d49301748cf57db4acbcd8bb240230544bf7598d14c5131d5b0406e0d097e772adcfadcd649bd743c8ebe63bb226c906b5cc4eead2676ff65baa1e1e2e134a0302047c435bb50067306502303144a9dec255c9f593746ce9a063a0cb37e4d7b304f0c52e42552a8ccabd4e0147947b5d9f2dae079deb07fedd537782023100dc77a7d8cc32583ba7e9c46fc800046ed825721303c437a54f275b81e0a1a4b23bf8dd7aebc70ccf91d593ae01c652120302047c435bb500673065023100974f6b8fbebb2b138a0922d79b79a82287db034e926feea56195dc7e043e43ce2eca960103026d0606b3c276d3c2f73c02305fae14dd359ae187336e21c06aa34c8b5ea15d8a3c633903c3d35c8ff0b820c1dcb503fe664d1b8365d448c8c74c3d5e0302047c435bb50067306502310093c95281688b9d5e13e4f693bf4f6ae0f2e353b8343fc97067ec4255cef759af1c67d23513b6801f446246838cd55c08023041f6d9c7ab6d7a6fb185f90cc6abba7544ea572397e8fecd5d864e0402ca9137cd9b4aa4589b7a2c6dbf7b5a4772b9ec0302047c435bb50067306502301accf8e8edf8fb32001c5154b836a30fd8efb8c58405f17a989979b7f51a084f67a18c2f4fe04545f7f37ed6bd61ecbe023100d97a6d1cfc5f1d2183be63654ba4fdf9d584646220ebbe35aecb3a5c86d0473d9c5019c0dca0550fddede0bc6ddfdf860302047c435bb500683066023100853f3f8b8f4a782bd0f4f54259e6c4383d6e9c119f3d49294263c504da5bdf32fd3942a69f8b255211eb6e2287f52163023100e4c25a1fb907bb2a743b02df5372aaadddfd24579cc697ee50a01f597b26918ae60d2681beb9e44d632e9503e260d3a60302047c435bb500673065023100d1ae41e255b011d7c8f857302e696f777f981431dd6d2bdde5c4cf8c920b142cf0562bb2533931291ba96e4c32bafa09023035f0ae88b5ba37f114503291678f831222a250ce7fd6a97bc004365bd74e5a999aee049c69910465c1c42201b4150bf40302047c435bb500683066023100b791a428386fded8ba061710fa13aeb6b52302731474dbe6749d5d070e42d1ba619a968ced1dc9426a2f374a6311a005023100a63c4c448ce736d901ce4af6e9bbdaec06b3afb83efd21f6fdd582c1c83d67bca9978f421f45d350b420e7d1e453f8310302047c435bb500673065023100bfd927f6cb0e273802d2158f6f3f06ca09e01f632ca038e309bbc89bb2e264dd4a29bbfc7408d17f44300780d38fe4bb02307e75b518dbbd71991cd98d60dda36678546f09c281240d1cca1030d731cb21616a5aea58b2d10412069901ca82dea7190302047c435bb500683066023100f2320852c348c2c84af9cf18507a45a11c6ccefd1c80363ae1c16343d9ac799b8906369d029cfad4b20292f6f1fc710c02310087ea8dedbb2be78345e659eac64c17ac9198f59267c99e45edadf936a83cc9ef4472770a4e689d1f71bfcabe23aae21f0302047c435bb500673065023100e9ca5fcbd17685c3bc05f976cef41a8f520d3a31f62c31042d59aace5451207c6af5ad03922e84b1d6429e68996c4a8002305f68f395f456a14dde5f31b5cbd9d2f90e1b1bdfd4b047a94aac7de07c9e0e3ce932a1fd2754234cccb76dd864f1f1dc0302047c435bb500683066023100ef53a31cea97a7f02fdb794d7701ccd73a2c4e421049312fed4d4194687b5ff3910dda59cf57f256fef37b0a159c53d8023100fe970ae5ef5a7ef7d8d7084769cfc21901d235bda78f0e97fadb2480b0efa5fefe59b39ddd77bec4b5875029c6a75d890302047c435bb50066306402300c5a76698d377c0db9b2a6e5280ef612f5e5e1f7bab55aa8ff7f8eb7eb7d6fe5f2a186c0e21a457436babf439a72aa0202304de95dbb6255a9c7b074d7ade7cb319e9aa9a03fe799ae76331cb390487052fbaec723afdf043e4519dcf4fd7d370d5e0302047c435bb500683066023100e61577b1ac896447021d34cbc610ccb08643310981835ec9e6f5f989f77813da375765841290140c81051667b489dceb023100be9dae7d826c58be6ef348995c21cb343ad3e25a5646649d52c9519b73ffeb54680ac528761cee5d83084d3e5d3550260302047c435bb500673065023046a4d4f3d3a14dd42c4bcc8144fbd3fceaa3f1c0d165aa502c66082873cb4197685ae69ba79a3c71ed0ca4fd4a8d23b9023100ea072834513144eb649fecc7eac28d80d040f26fd74e1446191a522f5fed6330874ac73bc19b89ff976214eb36724b520302047c435bb50066306402301ec7b2f09090d2e268366cf49bf6e0c5edff1bcff727ea20da43895e3c3f80b3f89c0746cd59b605f3a1fb6536084e7502306ef5c594e8c8c8d4866b9fe95641f918000741baca8da94581fb177edae71561c560773d3ddc69cc95b9d298b08c076f0302047c435bb50067306502305a15ce69658c5e79b358c1c9261ae4910910d1db363df68804f32b3969e4be5287992c16f9e2b6f46299ed0440399353023100f8e8a28a312210cb4db119d6c96711f7c7273348100aa44db5649c28401cbe7784eb71c7b8831f14bc780329bf769e8c0302047c435bb50066306402303ff8dfae86486613274779aef9ac7ad932b72c447abf2677303a655fc2496f9c98dcbc4fe0da3ca759a2e8cd5a8844a702307524c92456584601516ebec000890927484e0e187943621ad8ae15c69e660a0672c2cfd0ed4baa53a78bfa54dea26df50302047c435bb500673065023100c943407a08c4f7c92f0037133ca91e4f08b13102492a796bc9107b089bae3f57d3896f17f64a0b76f384811bcae9aaad02307520989275299ec38c4920cfa33e9bcac06bd793a926a9a79ec979a8e469e725b16a2018b25575e56e453b2a188e19da0302047c435bb500683066023100ca3f31812a482d3da8224a9dace47d62663664a12aad2727fea6a2c4108f8405ca821a1fba16fb1df4f9fe707f490f7d023100f92228dc586836b04cec49278c195e3dc963eb7212eff27b3db2029f4b588abe1bbeae0ada9d076552f477fd9fb454220302047c435bb50066306402307395035be77af3a397a96ad142037c376d5d0d24ba604422cadccfbdc82cd10e660531a98b5440faec3c1999f2aafc730230730551251d09dde229c6b77670101d043594c1aa528a983ac27e1ec993f820fb925dc8715f20d6e1d0c0221f0c3b15f00302047c435bb50066306402307cffb909f166736d46ffb14fa440cb4247ae5a74bc169e83ae267ba59d12d93b9b43bff98c61dcf93c31996a71852ce6023059c58f0e518943275943dcaf2dd5ad6e890cd8f8650b415b7fc250729424ca4e91aa63c787729c6f6b5ae00b56b42fe40302047c435bb5006630640230538bff035260a76cedd330f3d586331b06af1fd508f1b66c8b443d571179f726c640262bf248e82788d11d000c7b34a8023024c8b2c435afeb96dacb01c2f0398c2e476d662b22ff7d00515585b19f7e060032048ddd4146e6be38f5fce11dbbace80302047c435bb500683066023100d04db8367ed7c1de22e6c7598d544a85fa8ab9e7396b79f318ca037759eff3d6565ac3b7875cbacc1ef54a7ce60205bf023100f1529413d50966ac919e69872ddc1c07cbb68a7f4eaadb8c12911ff9cc3249ebb1560008a55ee5d10b6598c563ef5b780302047c435bb50066306402303a3b127932cc7e050597587670b88cc9483e9939b6d6581be5562dd9c24313761285daa77f5dade0a90b4bf21a5338ab023036935304bceede8c231d4d4bac59a5e4dc1dda241b8c046cb3cb03dd6f7d38402b9e61eb1b1e9d01f4e8c01b44907e220302047c435bb50067306502302fae585a24b43248b959f8aa4dba3801e7a88acc23083ae426433eab22ac9fd71557a5f27dc06413a83d6b353a50da70023100eb71ed14b06333ed557d696c615e6eeeead7ffb96f41a6b937bf21466bbcae0e2b7b76dccdcf0e40b79107f42b55e58b0302047c435bb500673065023100ac476a5ae6239529eef171247b8fef7ac8abf21ef892a7dcd3d88e0fc49852d2807775e4a5ad32ecac7003aad222ec8d023076a4da15dcb67d44d5da2c8529e200bdda7e1dbbc048c7d0fdf0bc49c195163718c5bcf97787f5bb7a953e82368d34be0302047c435bb500673065023047edef2906dd3e4814af163b3e98d3f26c15d011497314c61b12a925ee1839a067e2b4be98382f2e5738fb2860a25f0e023100f96d6466ae0922d8d53012eab6760717111de21e6e910a4b4e55fb5c26a87e139e39070af785827fdb7545e6de702d070302047c435bb50067306502304e3ecb0a528f71e77c75f90f1131d334ffe35f46faa7da928e4d431e78ac837a648db24c0919193be2a5ac3ee8d9397e023100ac598405fa1ff0cfd0ef01878344813908ea04dda24a3dd74a7177eb0542506a1c3e1159c0308cfc4a979a6fb3d6f38e0302047c435bb500683066023100f547342c4f184675ce3e2269536d2a151075a098d7fea1d527e2615bf5d97a2c163c85fb1b2854c40b98b5ad7e06c1b702310093dbd5a6d23f57420ab9ecccd31b20ecaf791f9346024fc6fb665a06e45c1dfde0caae8bdfbcbbc2df559a6c397e469f0302047c435bb500683066023100fca9ddc15b20234f7e13cf5bd1e66bfc65f27aef8bcbd0caf521526dab8bde3042638626a16d6e63ab7213dd8738bccd02310082e29e8f51655586ee805497b9389aac183090ee1eb12d869fdc5c52db0d1f0efa4ac58e690cbfc7e104cd7f6d3f4bf50302047c435bb500663064023053362e2c7cb4ea616759c35204283951b6969a381da66256e282b933d0df7820382951e0eed4986256cf052ba78283fe02302db4d770aff362e26de176e93888c3ba2421e6b7542e62f35f21ef6f7f1cb15ba6a3d228918727f224530352606c84ba0302047c435bb500673065023100ba938353f175a08b7ae261b6e590afd438867a7115432a8da55d4cdd1f322b775ab0793b5347b71c49eb27faa4984913023054bbc80e4213274217afae35807b526bfbe9cf00ab71d83ca7fa13cd895182d308fbf3239bb826874a4b7082f58cd0e90302047c435bb500683066023100936efc67110f4402d2901a349fd3cef439580afebd9e88ef48fdd522bbd079163134dfdf81aefdad0c29632a95096fbe023100ece3ed598e858e46ee4aac7233e335db0b28d7a5f499d9dc7e295890902b28a65f605bd3b0e9bf696befdc3855f815460302047c435bb500673065023060ccc4c525bf85b1ae760d8ded20388521ec539a6625862b0e1f42f39244b1ba2e2840f40a6983ced5b6e7d733b23cec023100afb2c84a2694945c683aded9f0a7be3dd2c7d1d82ada87ad91221e391b2f3e4904a1eafd902108362c885c9de1a597cd0302047c435bb500683066023100aaf648e6309262a76da14868a1e1ae0b5db9d1247df29518ca92375683f802ea523feed6b1d55f22450247e6ac378593023100f19a9415824dd665877b97dea18229354eaf4ff8dc59af0f7f015ef6bf9afa66d03b8bbe89dc8c4f279358a75bccab050302047c435bb500673065023100d24c5ddb72790ed07acd3939b0d319c1004e5aa058338a64bb9893d9ce32578c09c0e665009a845c9f477a231b84f7480230683303a38dfa19e5074f00bb3a1c924b8271f998ddac78dd94f60c4af4f77716b7ddce5906784ef95436484ce2302a480302047c435bb500663064023033672f392c835fe38e63f7bf215cfe19df4c64f719e1497396480f98c924ac4147fc577a9e0812581b196769f5f8110802302b040824380ea4ff857c7a6f98b54ccd2dae4c5271cc14cc22443437ca252150337a5258f58b76c54e8d303e555cd1a20302047c435bb500673065023031c06bd2b4e727073a7b5b80ccdac4417de3f2ef3fea1118c4a79025f139b273a9e1b57a34760f0e9ce73d513623ee97023100ad4f002359d5186b864bd6937f7225d8165a4a3818b81dd1d6956949f0c464b9876f4f2f3d1cbcdd9ed22d1ba57c3b5b0302047c435bb5006630640230176332c60a7d692553855017a8a185d18a9e9f5173705bdd1789eefdb1a8fb0f7dfe8ec72649cc711352f62886eae4b202301bd4947e593e1c37368c03a1d8688996166061d927578f6c45e36326f3953f302d8f8ad0d20dc9a5880c3a04a4db87b00302047c435bb50066306402301d536b2e0fc1c8b835d70f339072fd6d5d35dca40f000d67a11a586a22636adc2a435ff16cd06f56da6ec3a2ef59d597023062a1325c067f58dbe24eef6b10c4017f59c96b98bd67618346e2328763cb24941d28f5dc1c3bc18687af847206a95f440302047c435bb500673065023100a9c81081fed12f67a35f34c7867d591b2c7310ecf057a5b96a3eff2e90db16ca55d8c712983975003a156f37099ef7710230062ca1de90a16ee608e6375c0427fcc832f7b75ff6d91262712540df64172492def8e110a3fae722080f5d9a80dcda220302047c435bb50066306402304079ea814c03ac3ab496facbf172f768b79840ab838c198d00a79a209c5289a988fc8690e3e3fc49413810c36acbcee102300da62c179a8b1739ac0fc7eeac0ff4a0f0eac61a94dae5e6277cce03ec0343934ef3948119554cc8ba6b0f5682ebf70a0302047c435bb500683066023100a06088bc663c78a13d8fb30a2c28d63f83c45574d07fbfcaacdedfa5304c545988eb6719f7bf2414e8202222bd07ac78023100b88b3c675f3c6314aa8621a9ff41f50a06182347e86a3af990e89c924bea83692ac944a712fa23da2bc2fe0ef1b577a30302047c435bb500673065023100ae2d9901d3b65cf7c8d69a70e1f907b77a58c8624c55eeb5de37ad74f7cd26368ddf5ae60ac50937b20503fed459a1a602306acbf8045ad959bcd0c13a91dec179cb094af44a60494ac36ecd4b561f9a64f2c679255b647d0da264e562d7b93543b00302047c435bb500683066023100bea439dafce4e30f769c169b34975dd8ff61b38a3864bbd34b3b72f7fbb1e9135dffd07de7c653bf6407be75fdf4f56e023100fd913aa2eee0ac746206aa8816dd2a81677afaf52529bf22f7edbca360f8e8ca85047f98f56277c4dfdf3a758499ce860302047c435bb500663064023004692b9038f6a601ea76d68e325a94bea2879978edc52611525525cf847cb515d627eb40ec4326dedae3d8cfd02aff4102305aacda57a068d192484e43527ff3ee509282e15da44061356320331dd0d55b3f0423a82d1666c8ea56aad77204fcb8930302047c435bb500673065023100861340d0714d039d57f8aaa312efe8d3ddb96881a10dc1e69178a15e33d1e5e2fc23e6ecf0cba7f4e6e8eeac784734100230623a041a87ad589158baad0502c790d6d9125478ee87621ffeed1fc21cb46b1ca8a44eb2f70b425600c134720c704a3e0302047c435bb5006630640230630deda659956cfefb2e5b9e9707f805b6fbd3b33004975a864fc04722dc98813d60bf7baf82b1d36b3b6309a9bba055023071bb8cfbb400b5fc9f19fd8f2cdf15e1f1f8cc3669a45d607028f05f964b9577a7f462fe811ff8efc155757a03fb85c70302047c435bb500673065023100a4b02dabef3d4cb6c0984ed60adc5deaa5573e3f7f5e0f03acf231dd881ba37972548be0228c396e11db55c5f42695a002305bba1b41fa13f3d64e3e78ed5527aeaed4d75e2c98af087b8640348fd0cade7521cd23f819ffadabc73debe260c5fbda0302047c435bb500683066023100a938e98a2054c47495db530983d72989e3296c3e0021eedc5f8275b64a534cb18c6b4b32e7a06d48e562ceec60c6d098023100968c7bc8900502fdf0204d3b2015d03f6c034912c547802838937c03fd171b0ce99fa2041cb990bfe24fe785becf91190302047c435bb50067306502304ba6f8e92d1da414f8bc7050178952c14170ad552864e0661685f362909d3aee032b015f68193f5c39530c6ec6e3d0ff023100b52e84e47b4534618e00bcaf05925273a4120838d96da3f947d96bab4711bab4b1e5b53942c17caac81c00fa9258af2b0302047c435bb50067306502306c32b527b082cf6cd4b6838ef3406b4cbf62a2e37982814dd760d5bb262b2885cbd40087ad83ea7dfa336baa9f63d32f02310081a4f4d9d2ab096bdafb190e334505fbb677e0d24b420e964270611a0599c1d128857604561614e890150c0c8751aff10302047c435bb500683066023100943c3e6240e05298f07af610b3473b2c6fd1370dee82a87d77c34d3bb4cfd750d6ebb0fc0b70bf8091d2193648d77be002310098900034786f9b772efd189a1c056d577d4dce277bbec18511382bb89be4b0eef923dea66cb2f61e2cdb5b47378bcc060302047c435bb500673065023100b385d7cfb1bf49e6e7a00a4bca5f051604570be40ff8b6881293977c7f193d11952ae3f4de383e625d6ec8d681892bfb02305ef798d4c4abdafb334852391f9d5f349b844111b4760476e219995b9ed14b6366bb82d4273ff8fb63234e0cdccbdfed0302047c435bb500673065023100f73fb3678e1d90e681b5a84fb4644abbe699e2742811499339d42e711f3205067cdecc70cab055e566a6321be8fd5d1802303fdbd47851b785119aa89a07e09dd707e05e89746cceb724f42ebd6d9fc0b10cfb3e5db0615416321bdae3eee5e007d80302047c435bb500673065023043ce38cdc7f9a4bca850af05bc2e958787b5ab9859e7a7c336495da7ae58f755ca07269559a84d73107ee5910ab1b84c023100d7420fe54c072386f4104265d818068dd21a8b277d0dbf91f7f1048685ccd4191f4a7229e693519bbf0f6323ea9f90150302047c435bb500673065023100f531d7c72744765906c92731ffa342274028f989915907a91ec009766395f5399cfbf3edd647b904cd5db664ea5b536402304b4ef87eedee3ffa9b97ba2d50dc14fcf0a3250aba8c9b5e1faa8ccd06c7f517bd63216e77e9aac6564c54db3df415580302047c435bb500683066023100e1cd416c159be0deb8a286b57ca78184730b4092eb71f3987bc00920cdf2baf82ef347f0210120afdd89220395847f1a0231008fd270cfcbb8f206105d43b12c328cb0093118afb59b113aef08e690bd4382a1ff954ce48330164457e9878eecdef70c0302047c435bb500673065023100c54fad858cdaf31af43f4d0e67f20819857bfeb610f4d8520ea619a8a3f37b4d2dfd7e5fd3d24a2232f83e5fcebc7edb023002ac23eac00e726ef1a6984df27dd3b0216af818b4dcb188919b63c4489332c688c005809504e114e3dce8148627899e0302047c435bb500663064023002049b533fc0893ab27783db96fefb892e6dbbb0230e3bc70807ff8c27a220014e43fbd545dc89add0da22bd19cc66de02301ce3d190003a09a923fc1c2f92281cfcb398d6366bd47c8fc6aaf1073247417835926e0c1c1ebf703e878f29118f80260302047c435bb500673065023100dab4ba38f01f8dba7a7f4f7d9b9494a464723f9fe55e60516587577d8f255e872a49cc3effe930a13c284517d1c2711d02302f640d571b129b9b25158ebb2e299ea60f80595b9be18f82f607d907d718e93fc543ccec9c77f4e45b53cffcb912f0f90302047c435bb500683066023100c377d95c39936232845370db3ca5d30a0ba9892145d5215f88df17f79b5218508e653d9d6d8cec355c4521670e51257a023100f2536c2923c5d8ce11321cc5a69f634a5a16eb3f54d37687c223673b7abeff2f663e338e833ff924d0cd5dbf0e2d01530302047c435bb5006630640230583c1aabe165503ab1c5dc41eaa91a0b0d0adac585b4515bdb813ff7209add04f5c908f66f16327a10278d52e6bf5fc7023068f2fca5d7f6fea216d02f8ab393ba3bef0cdc86c7df818b3f58c7f5531ad377768104a4e46b78410df215639b5a207a0302047c435bb50067306502302a88e22add4656372a64408c99bafc17e156f4e649907dec8187c0c855a5104455839cea36e18c0946665caf95995583023100c3bb4bec415c958c20adce060aa6369accf633830e21341f059a3964f11a40d6d9d55d165e9e9df93cb43a87bfc8979c0302047c435bb500673065023001d3c0910d17ce9cdfe969ee86b784a6d2ad01abdd8a0472fd1169d6c79c455c201fff4186c4a65cae5a6374d240e6fb023100da594e8c115f0547f56794f53ef1fa2c8c5e9bc1a78496dab9789f0c3877e06312c866836763387a1b992c0d9dac64170302047c435bb500673065023100cffde359c80921a59923383eb7e014d6f0c316d5bb5af903b891913f83b3defcd67419ab845ca4ca0d9614d9ce41957502307d1702127a275a41f14df15a15229d2ae24e5a9dda282f8141cf2ef839bcaad69b9084228c5eae16ff12e8f10cb574ca0302047c435bb500673065023062490e75df920bd6ecf1cc97a9923e8ab8de1b259dc5205090d36e7ace195a22e804b56d6601220429bfe6dad2b2a18702310081099a005d25f4fa16df903af46c5d1492542badb0257a97c3a5c431c3101565937333ec0657ba5a483d2d6ee59a00d80302047c435bb500683066023100dc7ed12bf9f24c38f7e6b1bc0cf98b55b3ebde4acdbaeafe9a98d220c862c138d61c7eebce1c260e1b52c69dae68c040023100e8e5f68c6cb7ca06a24170a64da175fd2ad73aa367fe1d97657f1bb2934be6f5361490527e9c1b42a9b8094d063914440302047c435bb500683066023100f7be1c0685f0bfbe448800503447e2a15f74b92e7437b77cb56969e1ccf353f3a8ffc8aea8cbc67f42c8cd38d71f333402310098f1f90c6beb71ea2d009957196fae929bf4dd987da3f34840e9ee34445ea0024b835830571b76e68414d4851c6639230302047c435bb500673065023100fb134dd30b610920f8e87d272cfa6c8670e8871618c084712cc3caf8a4a585c9a5fc626eb263a117a9e65c9f53efa840023060de5ba921c93f46783f1aae212518190f234434726f6b4e530ce7b0d1af7af5201a72f364dcd037b9cbe8933ee40a380302047c435bb50067306502302e0d8f96e5ad12513844ec852c8ce9609406a24b2e8618a6dc4cc37255199250ecd069c1116e63e95f853eeb33cfc819023100c72ede7c921ff1e7d24cd2374d26a8153ea172dba1d03ff4781c03456168a6e702baf80707e9baf440cb104d05b56e300302047c435bb50067306502300d1412eedab0da72900a80325a303ad51e760b6ada93e814d50b85f93fddc7b7a6ef85b80b9af4ee4df7d045a44a2366023100c207bdf27eee60ee03df4fa76a5e7551c95f18ea6f05366d5a00de343882846d299eb1f97098db370fa55cff3918418c0302047c435bb5006630640230115b88c81393a2e14b5ac954527ea3f003557617093c8c375becf6917f65a74a0a65489db1b4a7a689fe208b95da84da02301a55ec114634b3191abc501aeff604b1f492defe76cc2d9f3bb9bec6631cb86413b1aedd0478b38bc8ab6dce10b8bd370302047c435bb500683066023100d7ff7c5793f62fdea69fe2ff8463d069f6a46f49dff7aae6165b1ab07b0d814d7112d03d38b1ef6d91c0ffbb3b0f6dec023100cbbc958bf0b8feeb65770f6f87952f502084662e474e934f8b719b2b7df234a6ebeb2b70040cb61e0e78b7addbc5d2a30302047c435bb50066306402303989426f1757f85d3a7f76043d4b86df9caf8a595b7bdb8d9c44718d8d4bb1cbf5bd882d9069e02143584fe358068e8302306c91600612596570f758461bdb2a1fafd67d76d399871ba17ed149d3210ec1f392023179c22dea3282515e16926d30520302047c435bb5006630640230473c6fe2d7ab77c43d8b627999cb593a279d5fb37f08bef0c6759b86efd1bcbdc16fe4d25cde3599224d364c18cf8ebd02303da8d8eaa5da378e17e56caf37d47d006714130fea0edd0852572504e674b85be484852ae79ae425ae6b7b0e566f597d0302047c435bb500663064023012cd32d14ef1d183d1e53f134c88e37ea4ecc7ee46caddda6ce20c02a9dead451bdeb567433d92f3d5f1be094cdf2545023041662b40fa29f30398770ba647762ada0ff8549b19fbb833d77978a226e200a69cd8764dac9e11f178ccc7a313bf1b580302047c435bb500683066023100ebd6f6ccb5a89b3db3912d6461989a5e018f052eb3623883d7b1265749bfa068e3708c66d857c4be798b48c07714d5fa023100bbea8ef92cca180e7630b4d636cf1396660eba4041593ce2d2a1d04fa77e73a8be0549d1b0a5f780b34fd6805b08c6880302047c435bb500683066023100cc8ee2306e5e5ffa3b4b5281adfd7f3c7e348c9836d46d96efc738b7d62540f5a1c66f550ee644fa67dfabe3ac7c5847023100c340d85a1149246db058d0d98686db950adbae5c264e2b1be5f076b4e40085a77de5cdb02b860cef785434b8e91b4d0d0302047c435bb5006630640230752e0f7e24fea5cfbadca1b7ab4ec5cd2146cca02c2aff34920ee1642b19e9b2a8e38ff9e1761e71ebb212fb736da98e02304077f0688bd37be640928a10c342d82f6eb64253b7ef08014c58a284a2fe3273967694392a95186b3b9c9c8eb17dfe550302047c435bb500673065023100c9900c5fd1bd1a229af0883eaa7e5d4214567c099906b44560134aa9e1dc67ff3708ab2977f7bbe70a9a3ebf8c2f03e9023003c7a0349fdfdaf94da0d1213e0bb1538806cfba889fb8a4f1a433d1484e039d5e13e645021733fff25fdfc0df2dd9810302047c435bb500673065023100c9b193bff4d437c7f9f1eca47de54fc25485e0430c12076e36b3080f9a1428e17ee387f07d7672d00582bd43f2fd40e2023079cf29871544a4e15c2a10c39c143bee0f45233f46f7b4b754e5d342f5342519bf3b7f0d538555d1e929e850175a40180302047c435bb500663064023038625a3f1dc927331a539b8a53f8e34632e6e2c0942e4151886e69d8dc766825a3398d6a4fde7ed29ca79176a8ae492c02307b309a96a5905709877e77ce81a0bc8e1f6d0332b24a42150277380832068a4e34f30ce50bee17475d8df6962939a5830302047c435bb5006730650231009f279624dce81a575b89a022fb5ffb82fd9fb392238883b0b596410fad245091df6e1ba2e0dfdc459ecc7d622eb5ecca023047ad7c69c297a83440861931bca7373e853067b4945027b3532509516c6ebf8eeccd6735fc4d80dc8e3bceaf8d95bdcb0302047c435bb500673065023100d4e7d90df06e360a1f39ed2b73898027e9fdc8c22152e4341ca74d92fd82f81e91a3fa074a56d6017aaae9365da8898802304a5645ca18305e07dd51f44860601d02e03ae77f022393659c95a1aa08d4685b4888519ac293745eb05aff0fd9d57bd60302047c435bb500673065023100e5829ad64ca2f2fbc8f746032977cef1daf5bfc470620a4d52f741159010fd9740ccdfbe512f17e07b393499b813c596023069d0ae409c0c2bb730e0f42c3d0c0cd6e6388f9f78c744203f446435ac1404c2e31538ecae7c13e238fe9ef27a46ab8c0302047c435bb5006630640230166b60be7a7dcc04105ab3e330b65a2898558ec00636dd8d0f382bb27f396fe8e5dcc82f6cd760685b9e7f9951fbc8ac023013b88e400bbe00dca3945aaefeca6389a1bb4f285731d30c47cdf12ec79ee06992753e8679d97092d954688410338f2c0302047c435bb5006630640230132cef8e985a70dfd766d6d593c0bcf5245f5f7c1a158b68f74f58c49307b854659a0a5ce146ad1c5146c7b42c0212a2023003b69130064972a1c165cf75cc232c36de32a751008dbed120a7205cd728679cb55878c8946ce4b586d2fe1f34ed7b870302047c435bb50067306502306ed20e00fb2293d2b9adec59334ae0c056d081f361f1570ea2d0842c5bf6958ffa6baf6641c4a6eedaf79a2737700d2502310090f250f437b4dac36e995d41bd6599f2904ececb4716c07428de024af8461b9ba09a91a5cfef2e50a575acf0997a61df0302047c435bb50066306402304610d16cff402fb9505f74b60dd5f3c927c2f62f5fdbd46ad4810847c62e6a0588209005cd7d4aeef19a72c166e7e36f023077efea476ba5a4cc8289f5b1f6ea2f6ab60fe9cd1232bf0ce5e79aad0ea9f168df911183e46d603fc92c80ae41ab32ea0302047c435bb50067306502302b953db94db42c4e021c7eea854ddcb0125d8a596b14462af26aed70286f188ab1fe4ab4df42e7d7db2fa3cd7cdb6f4d023100ae7828796e05ecab80ca72b62079cf97c651caa404290ce9fb5cc6f5edac29ef2f50f73a03bb1b86fe10db80cf6b61e50302047c435bb500673065023100e87566bfb3980023eef0e7ccd6a192249d909a3d10f6c1b2e90a6fe19a4aba7dc551566b8384a87c55bcfadfc902531f0230586fbea81118a939e12077ea5dc53c996a9d120788aa361083a09b295d4e9aadbcd2d8e4638fa5f586e99dbb4883e4170302047c435bb5006730650230755c2524dfef8805d40d0311eded4c233a4b2b5e427ee250301d2058819db2c6f6d23a0a6f19a5fa153d649a5ffd5142023100aabf06fafd1da1c50d6fa9b8c380d7dbad6015cd9b1ba5406415257601ebcdee74d3bb4e101a19234bc9d3f13d4083f70302047c435bb5006730650230172beb4deb666accae579b5af5d4d76e1a3fd3db3b6a6cfa28caed3dc6faa381a0ebb3d807cc868349904cb2198ebc0a023100ac4635f99dedd991605affdfd902140266d3676ed1b4ddcc530749305c57feadca5ebfd6560edf9af62592a7e9f2e6f50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f6cc0a291e46d8603d5d7724f3e9003c7b217fa4dc87a02d87a5615b9e85c31b58721991f7ff8a7d2ff8f8454db30b04023031e4b443683f40c9fff1f10e2cd3efcd4213f2844473458f80967236031c40c3bebfe6d661c542c01b34c3f568900bc50302047c435bb500673065023100ed41f27c5a306a3e4e6c4aee4694a490b65580debf8d31cc07823c16f1883c0b8261f4c3ce54823632922bce7dfdb39902307ede74c402b9efd125f2ed1c6b2b31a12bcebda54afec73ba67c0db1e79c53180c3233de0a7003a16c72e28678119e370302047c435bb50068306602310080648401fad06e1c27615692ba2e18759a33e33affb73a21dc69b52cd166d260e9790cfff21f6c8f7b5e9f84d52ed44b023100839f873479e8872c8afa964aca774d663ec6708a0010e1be1ebe643fbec8436a68ebd0d93460488f7848f9c429ec1f540302047c435bb500673065023100caaf3865e8b016c85a10982669d397af9b7f41472a59188eb73eef483796d1b89f570bea211761ffcca42762002361e90230798add24b38a011717a1aa8e5a42957dc919f45832cf547b953502a342a835cf3cec9dfc4e0897bd12f1fd1b8eb036570302047c435bb50066306402304a39c1d9a128478dcdb71ead48f9affe28d62e4a6b4ad80186cb270bd234d572e451065a98fa160923e816b63ffc43ff02303310cbf29e091aa5dddc06cc2ba07c6b0cdd0b939461912e6cde21bf3cd71f9af1abe18b6acb94caaf5f9ec8811be7fe0302047c435bb500683066023100b4ccd9053edcfb55fd295a17ee0544321b1d39124f7b62470ea747d7e8398fe461603bfe01d19dffc6cc045fe25efac9023100f103ccf8d4ec831696047a7c6becac1030be0288307dd7e2affb6b3a589c79cdbbfc63c2cfa99ee2aed1b27e6fae9fae0302047c435bb5006630640230116596a8d0dd5e39575ba0b5be7fb133d6357105cda8cd8366ebd606ff2586d20fffac0b90ae2b8fff98b4ee45441bcf02306d66afe3bd53e3c2f4483b760db38e8f461093e1dd5178a1f3fd1aceeb2a0d8a158268950a522411724cd2bdc26887990302047c435bb500673065023100ba1aed96ed667eb5c87346bd2a53b0a71be157a0c3d9489900e27399d9231ca894d3158c22655aa1caa2542f16e274f3023007766afb72fff9d571f5f2b4e855c99b3695ea169184eab32d175b32a21aa9eb315bb3e7a1268c08bd0dc39f593f2f270302047c435bb50066306402303c9ef30f1d35bd9b87962244824bd13b4a583843876e79731ef741fdb54d15cc9c3789b15cd35efe8c26b789c8f73f73023005bb3929014fcee5a61ef4283b97718119e7352fd17c638d78ba0dadeec80e4d6441f73e553350295a2af3261df0c0a90302047c435bb500683066023100edf4991d3809af8eabc539995ede43d6b7d2f7ba1399e23f1b7f5809acdf4746eea65cacaea769e9f366e4d74093ac710231008e292b20f780f48e7ea9b15f383cf7827113265ff569cc351e855cbef291fc72e036b3ee031640f0e147f220b3f4fd800302047c435bb50067306502310087b24acf39d521eb69f4bdf13eb8357ab012c3ed75a24ec64a526fc26d2bfe99dc91b8c004e8c4c3a84e0ce01691c3910230379b95c40fe0a24a0972f6c5625ec74bdea003919cba23bfc847dcedfc04b84699ded70cf03c563647bf1c5b81bc098a0302047c435bb500673065023033c1c165ac28fda673528f3904266edc4e8d25fea59d5aaf00bee96881e0b1226a1d7999e69b00c6fcb5d5fef188cb8c023100ef38f97134e72a0520a50d4d2ffbc0122b4cf2c32e34608065cccbf69d857ea8c1de50e211a348311092c05c6d6d635f0302047c435bb500673065023006290c623efa7d888e6860f4067648fd497b50ed73e52b265766d527a3a3dbafadfced24fa6c90e044459a504c4dee3b023100aef27a40a663f610b245342117680ca0b4f4c7fc3b6c0ba2621f59447692cd39221160e5f0d9fdd43bf28f40c6b451fd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306e9fe6c8d17af4a452ed4fa4fc028cdfbd45092822b10c40014ca50ad21323ee98613d088087b49f3eaa37d5d0c9167b023066eb4e1ff36df8d17159dee0a58424fbdab5e9358dd7f37aed8233365ffb68c8e7309232db7feae9c0ee768c63d4d7ca0302047c435bb50067306502302634e22c0c98c6f718e2c8bf874c0677b5fc948c00951db72c72628be5115dfe837f941e79883a7ef6bc90d3278566d2023100976ef9bfa34f0162545a0fa40dff63cf52700c5fe31b91eec75d116093c7455925bd13dadf683bf3a123e2a82b6db6450302047c435bb50066306402305f24e31ecb018cd638f7a49196da236bf637199106396bffdbdbd8557bb9e57f8951ac34816748efe6b17b35d92472ba02303c12c49ae447e8a454e5651c8182f150ab210f0b36f242c24a59fd46c3f4028f87f79ca21aba5ef1e050c1cd453453ae0302047c435bb50066306402302f76cf0d559974fc2512545488dd0c14f05408891e50c0632e4cccd8cc610cdabf1d575f3aef2798a7b8ea1b3c516375023066af6840d2f2ba80ee047c7e89cc12691219a54ee0549d293fb589be3f3392aa785dd4ebcb8a7b8804555a61859553f60302047c435bb5006830660231009a81791e8ee8ee44c2d57a88247cd847217ba7d3c9bbc2c0d0c9b254976850d59f91af6437222597861ad00fa36881de023100d0c6e122b621fb9b8172f509f0d8dac65446162d6e082104158a1c8a7e323c5ca1c3a18611ed3210ee0944130c24fb0e0302047c435bb50066306402304c89403ee9a84570ee83c8fb09d3c9ce20918614d7f0b0dc631de6fadd07bf7c379121e13c6d8883eb7f4a492451534d02301699a8e8cac188c67d2db3c8d0e804b0e851f7477b5875637ac3da91008f7870a76f5b035569e89a7839176fe2528a210302047c435bb50066306402307d2cf9bfb66589d0f358c0244097a45881e26186ab27ad4052cb36c5e14ec4427cdcc3f41ccaac026029a48835e47ec0023045ce2799d973164557500445c33fd47018b9656db413e153551db51015dea690dd6aed488771684dbb4c86a97b9c1c610302047c435bb50067306502301848d977e62a4348235d8f34dacc595d2e1bf084cbf65c23e663e841470d6ceff4a1975a032eacf9b0d1c67a026966e5023100e47394955f836f448dbecd4540d7b6552f9f2a3cf8952ac9522ca78849145255d6684e3f642bc14f4870d222fc868c300302047c435bb50066306402307e00213273807a42814d3dd65bd2c1a16b44223b724cc2e95173485a4bd96441a1e7c8b9864409861bc3d7fab810a68c02301e7268fbf10e9024e25dcc467efe4476637b65a2d598ebb809918e9b92fcb39257a4c0660deac2cd51c10585652711280302047c435bb500673065023100ae5be43c6358565238183c5bf433938468000d691ad01a322a709ce2b18c01dfcf30031841b963d05c79457b19b16d970230158437bb9f256be270ffefa5bc2814755fc83d9ea0640da09f025a13b79832208329eb1929a42416a6d0587d8abd06370302047c435bb500683066023100e46c960c43501a50da16b32098fd7921fa7511b42472a2562bfd13373bb8f6c46155b6caf90feddbe18d5048430c8a04023100cf011992f17a249fd000477e8a3d0246775b85d2c9ae88afa820a89a3dfebdc6064dd9607d6fdeb60b134e351c49af060302047c435bb500683066023100ece4ad1ddfe98117c7381db54c82d4f62396bfa86f039643624340be220478e9036ff5e58e5bd2f41a1e29bebc7022a902310091709672a6a70e48714997c114f1d8289dd67349fb61009046e446c958accaac05153c10083d89f6ff10e0d55fb1c0ff0302047c435bb50067306502305407878e125fefcc48c94c0d4e8e024f14ee351bd50ea22e5815ea30093b76f65ccdecdeb66585e28a1b1c4bdd6d531a02310088f87729d6026f8d7d9f301e1e7a704f235ed73efdc7d7a2adc7837dc3a4d7d4140ed768e05ea1ebaf479346e4d543ae0302047c435bb500673065023057dfe19bf27d9e5c97a476dffcd49e9b8a93c981d183f88248013e20eaed7362693d9fc736a90f2c2850114eb4475538023100b7fc06c7b098a6ad3468e83e84c48ca0131da61d560f7f87138b6a6aedefe5fc58c45fa1a395960ee18c9b64fa61cd670302047c435bb500663064023013a2166d7a85eba25add11468f802df746fa8e6377b8d6efd9c2e3acf8671b5d191fbed823c8b46ec67dcbeee98e0f4702304871962101d4e6cb9e0ac747ecacc49e48414098a28392bfb4ecdd0635bef3e1e45c6797b8757e817be754ca3772a0ea0302047c435bb500673065023100bc4f72b12dd36fa8b585564a2741cc9835154977be7b0ffbe217f6d2b4760672e491016a67f76dc16876f95280d82d230230749077dbb16c248bed935c4843d8bad0b7a9144771ed1ba41babe2c61d937cae21d5c344b220d569635bbc78c1d9389f0302047c435bb50066306402307841e5493c024bfdec9d9418642a26273063145ceda6bfc4c2340558da29e542fa382497b60aeb2ae65ccc09ce8dca0802302b19f1bbe6cdb0e4d2f231576835a1d4815e97ecac664e19fbe04bb2efb71e1e5b083359135a53c458af8ff7b4cdfb4b0302047c435bb500673065023061cd5af6fb249075825f926cc9551f732b7c59d15298e3a9dfe98d4664bf17a83ce1f2bbe491ea38b072351a93bfbc0d023100c74539f56bf6fe7fb2a3f0b377385f923cbf8e9a6355176e61306fc964f26742d6a1eeec51c00128afda4247104d06f10302047c435bb500673065023100b627712adf54b9f7c3a33b2ccdbb23ffc30b22e742134fede783835dd40ed2b3c1a98a9360a63f88adf8e46f0434883e023063d347a65f5b542ae11e86abd3880d25b12e8b8e1816a4640a520eaf1ff302bbafe09fefbdc966e5884eac3e10b8dcfd0302047c435bb500673065023100cc99bcd523b3c38ccae5928a64c474573d585ab7a4508de54f3a4457283d1c5679a2bd0465c7583a97d24b4997d4c857023028087555f441a72b3a7f570fdd98790cf17cac82fc3b89b7a4fc18bd24db68f3909f02ea50fd2b1c8f89c1377632af670302047c435bb500673065023100f15de2b025df3590fc357c5ce5c7895faed346c0b9c43804493828371b3e8e9e36eb138b35a2fa64ca29468f642704380230057674e1ed272703591d6a8a93d59f046a8a05dd4cd3f4e6bd808df069bcf94758dd76b5585ca52cb24e06c724cfd7230302047c435bb5006730650231009845f144a734d60a7d8fdaa45882a8d77f967ca5d0afd2b6a4cf182eb50c7795c797825345ab535b50d61f276faf8af1023067ed001705cf048b7d5e6744e7861b28f957b7c6109ff6abf4b3fcc2e41f7d91e9f3dfcd6274b5c111c0fc463b8d10940302047c435bb500673065023100fc36a87364d5d60232fe29b8de85d59412a1cdf9e5145cf6e704f14a803da555c7d933006f5fea51de3867f683fb659302302d27ba19e7fd5d30a36d51a3b78a2627e41f08a1a648a1b68addcbf7f7bc04476b9a798859c1b164f63e850b07a100500302047c435bb5006830660231009b0f2ce40b317bec0d2c5b2f13ae9cb4f37ad815eab8bba7469a01267ec1deb115182dd6b814347fbe55398a6f7389d00231009f2143ebe3da707b9ee3b4961e876c1ea4b42203631e2598a3756251a049f14f2e6c3034c9ff639178148db253bc73580302047c435bb500673065023100a5aa1468f874d09d04005c52c75ccf7aca059687782df7032ce034bac5af528353c613fb7c123f5d3b6ff0c687b25c9e0230240084f48198964a30e1f3d505f4fac8f20b6c6315171b364f512344f9095b7d468bb5668be568bb8267df85b099a8260302047c435bb500673065023011f76b27b56ceac22214e6eb677784896ecf4f30eb162070357420e3f934a26dcc2e229682badceb9a6443ed240f6daf023100d71a250496eda3518eec5c7e65b41763d601edc13cfeb555b0f7687a64ef776c157dfe65debb3dbb53a8ff56752571020302047c435bb500673065023100c71f8e33c87bfeb6e244d0d64b6eacfab9aea5bfe3f42ee2d84f907f2efe8084fe4c5d42d72b2db3afb6c816d206dbaa02301e3292fe7530cb5755bd937a2247f95dc0473860f10d6ea69dbd470e839f24f7e1f4273264a90d24e3216939fb750c8a0302047c435bb500673065023100af4ed923b2ef250b1cc5a6e053a6ca8fdc00e367b899af5ba196dbbfd045cc800543239093d4203198a79cb93222bf75023045eff875dba0ad948f14898410669c61db1d0c14d430857fdfa5d1bf80a1e60d2fc42012513cec345b16105b4673dd640302047c435bb500673065023100cdce62ec9ba7957d6818deff110ef2d64f33d3fa6da679a56dc7a5ed0d731b3d28b9842c1ced3dc566e8c9c5c4e9135f023002ec7bd0d0f9854682f732c5b6619c2e5ebf3d8e19034f16e3ada2006cdd3d4052019aab88978bfc80acdecdf53f4cb70302047c435bb50067306502301eb10c578407d5f4cffce9e4deea307fdb05decbc5dd8bd602a0f0f4b508634b843057604a9563f7c85c9b3a0862e738023100d6f8838d201817e2d6e5b8808e323fd8db67e9f608861d166008464d5bfed95c7084fea6a252c6482000b8a1182a434e0302047c435bb50066306402301b462516e54bb63cd99e791d4cec77af943da8df28624f27e81b20a9356db8f9a1f32698f9db44eefce5cf648468903e0230104649fd042e6f5797cf3fcf672ea30a51c30732ff410b369b4f75bb0aa3873a3c6a4784a161da6a563d9218262968710302047c435bb5006830660231009b144f90b93874b4c4e293b337002b217151070ccc592044e3b30bd9408c78d93c83e9284e4edce4853f6b9a440fec09023100a933ec7d5ee980f9db5a1c5676d80227e6f878dc9bed75b656cdde3e7c14350b6d67537c7d41ccaa9c4326bcdbd3335b0302047c435bb500673065023100ff0770609c2afc1ce12e0b1825bf0a27b2b88d8707b9fc633234530e6e5a5bbf54d86abdbfb266d22af03b3a72d22d9602307d1239a1af1ee00a82253edb51223160540cc944a51f7ffdb7aee242479d5f08431f233bb4303b664e0749a23549c1fa0302047c435bb5006730650231008a657038cbb7e6debd57fcfe01af16dbab6a8012cfe1099cbdf60f52589dd4425734220fc19f42fffad2856172e1d46c02303086fb3ac0537112d94c7c9c313ac269881dc72b07efae6229f05db8af324b296ebaa9b983843d271e48f250d3a596880302047c435bb500683066023100fced67c8386c105716266dda85339729cee916eab8064ad2f6779e9d7d972bc9b6286220567121be8fb26ba74ae7bf19023100dc33efb33ef80b2a1d3597a7871b2bdf04c94a9b830ace791d52db3310fd5bc77ebb6a0798a91874ea08f70e000999550302047c435bb500673065023035ed0502126e27f84aad790a2ac608ea99ad8df43469e6d99465c581ff6b72f0d7fc2f8b46b95222a1664d6a6fbf4eda023100a0ca5607b4032e248df38dc413b255fa8f540015e1560ef6f8fa35c1428cd9ba22a72fcedd09398de05c73570cfe2b8f0302047c435bb500673065023100e4fab3cc227ac8ee2ac6edad59d24cda75c9bb9314fa0ea55277393ce60fd86af46b0880988e956cd2f7dcd53ec8e6e5023038ca75a7085efd3ad6396e40f184c6348e356d80ffb9300fb37426af2d898b1f57f0e5f3b8bb83bdb3e11984bea11e1c0302047c435bb50067306502302942394fd15234fe62390214f3e3cd57b414d9224499dbbe4f0f761926da66d5966896239a4526a292a34200fcf63041023100934cbb7014f83b0ae6c798a00fd4fc094967dc89694d796b8b6e585b9c9bd20291e6583aadb83862afbe0b366654da8e0302047c435bb500673065023021e812b7ee86feca8c21ee35f374b31ef908b71c3227bb88143e92cf0de0924835bc60a0b1d42fbf778c62fe7d321998023100b0fbb588cc87826fe7954de9328670e61602a34bd77ce520ae6e0d8b44d5815dab63917bb130fba5d2f9cf61358ed5040302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d0b0c2554d74c6bdc202ae8fd0f82318e0bbf4af5d2ccfa712912ddc255b4cb7b758cf4d48021e0f7bd2391882d8d522023038aff8d3c21d0132b0ae2101221f849a03efd3e51e9065773e55716390d359a2b3d0295a7eb776c764552bf0ab740c3a0302047c435bb50067306502305ee5117a7a22809a051e662ec2c7929983d13b5c3db02a1dfe0d223e3dc0ef647c2f11715bee3372a026b183fa3c52d8023100ecfe7a3ac03cc63046663144114ae47914b225aa4976cadc6c59a60b91ac60d5648f28ebb63072b0ecb850d494db27310302047c435bb50066306402303e6ae6b2c94fc3078b59148a0a1caa0f5dce0cab5f5acad6be7dc8e9799c3098d27ef9d6114a5fdb3889b7c2fda0062802306641679722d6aecda5aec305964e9684820fd16a533437ae4344058533db16b63c5116a6fbc91b10ca60532682d8016d0302047c435bb500663064023019e0029e233393bff66a4f71a81653674ce9980147cc00afee2c2e8abd42f63b6e9d1e43f3b02bb687a0e1d602bf4edd023002e26edae68a44f979e5f57d59c498423a26d41e915577dc09099f9d222006a00ce2ed5afd70812ea2839a0da33a847a0302047c435bb500673065023100f500f9ee3f2c2c252ebffebdb035acbe7087dbadaa7b8581bec8a51b546804c93610626e70c6fdffce84e6c3d1f91aa10230553a94e60ec867ef5868c56b321f05227f2feb6f10e263f8d7bf4f33e2ba1e273f8b9ab50ab7696468f10980f81dbdcf0302047c435bb500673065023002ff344336a84aed754108acbf71e0ec186fe6ed2bd8a40eeeb676ac31b5cc7d7798700d43ae60dd16c9452ef34811bb023100a16164b490271aa4bb0eed51e60cbfe24f0b5bf59951407e070290f6b9cddfa91566270b1c42472db82adce7bc24d6760302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306395b44216d40b6c6e8dd1cafc568f8ebdff65ca089e61830d6711047535cfa30b0594ce2529f98ad152a1fc1a9feaca023036ded4ba77ac74494e15c74910bfce7abb2c802d51a0527514eb664713ce27161164e78466ac004f684e8a49e79561c40302047c435bb50066306402307745b1db4288ce54810de726e8951f4708ed10a04d2d4f7392e8a324ff180dc5039b1f0b59e409c3fcb6fd820b42c539023004202599951b302af50f368074d8edf1dff53101495a6c4d9310fc9a8dc098f777e43be172179f9d9cf6e2200e143e250302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307d5042fcf90c8501893daa99dcf8429e4ccf2fb56507978d1cb5bc306e2d4d5af81001a478dd5325418cb9c6859523d9023100ed509f4472e1a7820ec5c93be327e0c05ff7a29b38a9399503b3594797c7f09f72264155ffaf3da54460f10abf7074ae0302047c435bb5006730650230145fec342720ab080a15db280f90f1dbc32ef4448672c03701ebd948aa1df32132ff8bab75f47276035cff5d1b6271760231008dc8c99311395bc71d0b364d7302dcfbfe70816059ff0d6c082b141ca0d64c25d7b3cbd79cf99593a48a4c548ab938fa0302047c435bb500673065023100d9afe7fb4bbe409f2a04eebc7cb288e708cb097488a4de47792a4a11857c56137facbc00286cc6d7483f1b33d4e2c7d40230342b8e0c41c1d4328fb059c953664c7b0226d9d2ac3f059c3643f084a87c7b3b6185619ff443497988dbd308db1c1d0c0302047c435bb50066306402305d82e72071074dc2537147645dddccacc98d5c61bd24ea07f46a4fbf346570560333f530a8928fe6e1a8d65240711d3e02307338595e63a096e7aeb8abffac3b3b0bfa4d698607e0b2a575ff3c9bd5f1aec11211416ebe51269f7f9f5b7b4b23b5ed0302047c435bb500683066023100f1577179c01cf920c822136aa17ab157353d0ce1b2f7056ff69357e79dfdbc284e02d1b72bcf7b46efd48ade5eb2c4300231008f53904fca3a002a6501c61d746c1e53b97c0b4c597e550956ad8d4f9b47381f7c5374c8529381e1768547fbbeff86ca0302047c435bb500663064023035aa4a5ccd2df9ba39d1b416aa08289e111600af1d626d6b64816b4f71253fcf7ab5b636e498744b3987c6d4c6f4dcd002306de31aae4bcb6f330b2c94a0f94f919c63c00bc9d4e8b3436a6cf6e2f63fdbb1c0bdc92a84ac5d34c093d77298f3bf120302047c435bb500673065023019ea1b502de4b0a8a25e21143d892f72d41301a5a4f88385f44405dbfbc3c578e2a2bb751a740b7d47c1bced7d196b2502310090299738e8aed0c69382dcff238b77540c23e2b66f880d08df921e671e24b11008935080b91b23739710860bf96d00cc0302047c435bb5006630640230046658454bcbca24b043007a8005b9ea97411b9cfb4ebaf1823e9fc52c29ce0502211bdac8c09ce6dc8a9c1d3e143589023015f3b0b05aa5d4872c5ad59694b0fe56c357f625b7ed052ed192dfe9501d7e5e1aba9257fdc189ad476283bdf425f80b0302047c435bb50067306502306f79bc480e9fed2d29bcf5f705556619a765cf64ee95a0f94a3f7cb09767f75234b0e72658c63c93fb35cf266424dab7023100c919638f3b593004a4200d21c1ac28f366bad69318d20475a89ac41c024c5f026fac86727e401cfe5c13fbcb31af2c720302047c435bb50066306402303eb8b36b299e1018028c561838096967b195de5f3ca0e917c22d2528b7c052df9d82c09b719f356ab4ecb26c50c0b7240230043d92ca5bbcc39721677d58d7a984b4021758d082371abee2b2c5b3e5601e77f007642e281f9fa878392c82a6b77d160302047c435bb500673065023100e9d8b4692088c1d0531c5f2099da6951706d48fb22ac83e70b62ba2eaa1f4204cf5958ae00395ff065e701b0ecfd289902304dbb308eb81e002ac7a65c393633eba7ea8e3504b718d4bd1c2ef58c3898978d23b398bf6365980b0c009432e469b74c0302047c435bb500683066023100e04f6c9d82e1e7ae84ad21e3340b71aa8d6015e30dfda98485c048674b7b6acf67d389ca28151c4d0efda379294f8537023100d25778192e11e4c68be0b98c921e67cab411ddfabf06225a84dc3ddefd6499f50ed2e99f1cf1ae47fa1f7f88f856f77b0302047c435bb50067306502303a59d1131c05e85133479f9719057f3eeb5bafbcbbf9e8d26d26403a298334051d567fb9109241972ad359aa3701edbc023100b93e85a3917392db7f3c6a7bd32deb441797425e7aff74d877ac6b9a44a7cc1de396b1a0861920aca10ac318cb65c8ff0302047c435bb50067306502310097ec77217420a96eff1caf3477278f0dec6a4882a29ac1da027607ff506b5a3f465a178ad41b0f259d79c958f28b66d602305428afdfdfc147da5ee37c8c90d774c6d2b27077b45aab1eb5f1de96cf86e6a2b27e925b8a79ba41e03a30f41d73e7b80302047c435bb500673065023100caba49d19b68d9f8f24af8fb6f8c00dcb96fa28f01f963e5506408aae3f31e5cb289c371afb50e88fc56411b9b00947902301f03f1d5c2783eb0db866a71bd2bf9ecc3d92e23ff4a31b3f89236e1c9645c0a616f602e1d5493ea444d6c213b357ae40302047c435bb5006830660231009bc23607a846968e0d3ff4edb6ee463cb693aaa43286834e831cdcfdf5e90ba49bed76616bf8c46179df532a4e6afc62023100b7f7739a879f34623666b3071dcc642800c3522958b240e6472e14def79cf8a9e6a635c2ede31fbbf00ff89f5f0da7b70302047c435bb500683066023100eae665018d076a9d6d7a7ed1d8d6cc56b26da5eb1b015bf28f5d868c7d2247130cd7d1176e3c11c760603af1329c069b0231008d85ab70dba20db1c99ec071786591fb89892e9df1e91f6f2b18ce2cc3f9cc61b863c6bdd7689e112e921476c9cb424c0302047c435bb500683066023100ff9adefdfb902448c4713bce966b8ee7f896b2a4dc7af22ef449fbfcf9134a4c4089008cd4e8e5bcb021d9cb0f623b250231008e218f2f750b557e30913f7d87b0bb69f813ed613a8f7d5d277672c1b5780348e4658a5e9a1c52c8bbc67165a870b7c90302047c435bb50067306502306fe1eaff5330c000cd40b43d1639e51efe4018573d99ec6d207434361dfc269d97b62e0d44e6ad2fa8136ad5ec9e50fe023100c34a2fed06df023ae89333314b21c58815269dfb157f4b7d25a07c483a4cec29951e78b1ab5138f8a292aab3236878050302047c435bb50067306502307abe5ff8be3935bdbcc2249ab429cbad49e2dec93bddba9d0907d4cb09be40d1403a287d438bc352711bd5e0ceb2bbf6023100c241611003accf1cb60482465c9f96e1d0fdce59b46199cffb9e079ed1d88662900d86d21f213eee98ca3197c2f9c6850302047c435bb5006730650231008e3d12a1030148e2f4b3f24203a92f26676841a79d901e68798bb7d1ead1510caa8e5449f4fc17a47cb9628c91edb2a702304b0e8db44fbd31290324eb7fbc6fd13a94655b520b0eb3847f864ec295f9cddf09f95859d9ed5aaac23b03868ccee41a0302047c435bb500673065023100e0ddb979521c741cb1f16421a8477a03b9ace766fb18bca2348f1920091afa5c5f682784215c8d8aef6f981e2a557768023009d0651b2313e139183b49829233f76a7646e540cbd73c7dd2243048c1380563e0a724b8f61dfbd1245f5832ac61cb3c0302047c435bb500673065023100e66f3b658b66e0aa47fe7e355bdcb3b38e514791e2f2c34d7f9a87ab1d7c05cf4535ea38022e39c82ef7aec63eea104f02303ec262e49ec64c2ecfa82e40d515cbdf8bf8012b6b12e033120f2f5d19c1849669f9947a3f377e2e36d0b9b88a7e21a40302047c435bb500683066023100d36c1ddfff8c44814944f1e2ef365ad2c3201c72808452648a41751228437c275e2c8e0e2ed71dcd4bb96c1b153e2cbb02310090eaaa4ffd097c0e521868c1f5765718334fdf8f60cec794331576d3dfbe85b07b54b0cf4aca97b29bdb6c1902d313ce0302047c435bb500663064023047376eaa31db7645f4701b8d2ec80d646081b5d8a055b7895d297992f22d4f797321efafbb61d926fba41bdef3d790910230290f3fd2e8182f859e8c53dced55776a72ce3b144b776495fa0093da524067b89e148fe701319702e4d5984170f436320302047c435bb50066306402300d4dec30779aef4ec112a1c2df796fdfef8026fa01dbaabdd4d360607f7dfd8c18ba5550c7885e54260b4600e6f58bf3023004c6aaaf10ae3eefba4743eefd8edc61b939d8f22397edb8072f6098ba7b308877922d37da6dc9859b04158af8240b890302047c435bb5006630640230552a16f2eb77a97dd11632374cc96bb305fe4e09477767b6d3e79b8410f9a42dd127e2d04f93f1fc74d32bd3d701324d0230225fd43ff257e12ea908be61df0f2cc62b339775ea6704af156e1869c159d014d6c05ec2e4444a2ff361e6d69f9b350f0302047c435bb5006730650230546268f6363716271c87dfefcdbcfe09f1e6896fc7d834537ebed66cffd20bc5386c47275d989448dde1eca5275f26840231009bedc0bb495ec7a10bc834112048db47d8a745b89434a9a68935f2a30d14303561c7269e13d3dbca5dfdd4e3cab49bc70302047c435bb50066306402303c01b055255c4328074e704ae961b96c8ab710080714a8cd51fd0a3039546ca03dbfbf464493788b2b324d5f5250a53c023026708c577e55c4a03db495cd32e2678e55ae45be26695314288ad7411c3aa6a0d9a8ea02d1f393fc0be57d9bc8840c6f0302047c435bb5006630640230307ad178b71aeb4fcab3ced838441385f9b29e6ea59957e86fffabec31763445d5bada96a60e7966f22226c8e1ab24fb023036aab3d83d1b8856de0837168ed49e3e710613289fa1571486d0c8e28e31af83380ade6b08d609090d982980218ce0860302047c435bb500683066023100b415fa64bd2124ee25f5a9ec72e1f40306f27e08468cbb76584dd8520b1354af62adf5036241365e30c163c58cc16759023100c2bdb010e99c684c066449d36edc18c4052f0035118e85d4725cf0f5851e390044a3fd6f4d2d663699bc98a7568b2fdd0302047c435bb500663064023065cb8bef35e86798de10667a643741cdfb29d9eaaecb08fb0fcfb0861444bc183f2cbb0d62c4d49b82f397f45d9b1d4d02304aba85cc9adef8b44fc0c30973cdfe1d8f094079749bdbf1849ac754c779a2654181af7610c895fd6d540232adbffa060302047c435bb50066306402306fe64dabb593afa48938719e4485301cf410b96efafce95ed2fa968cf0103af139d3f60c2a7fce4e1cbe821975019ff90230220fe176685b6bda23cdbc516dffdcfe537705431b365125dfc84c5b926f39ad885a3959dc4567c10dafa67a461421020302047c435bb500673065023100b6f5f5da330c00d9c7ab6e304ad4b03eae807be6785e4274c4df21eea1acda5bc73bf520a409527255491886c12461c7023026e3a4be57740637088f3c2bbd940da90580be8c83e97e05b2afc3604cf9b35dd06483d2736f92f7f5f83c15d8c611a90302047c435bb500683066023100b85263d0ef5fe6f11fe576406ba5a70625f747b27483d2fba8a14858e44feaf32cf2fca35035518974398ed6311eca1d023100b2442cef5937b12b6fed43ffbbc9e0c98dd086ea8601254193e29f74a591a190f936858aa2d00b19cfb417fb3f3c712e0302047c435bb500673065023100b5608e6c29512760184fac46420bc7de0df1a15f0efea845d6e6784b1fe17e13e4c337ee825b757c5a9bc5ccd3e7087102302339ab45c0a9af731fba7441b7f40073d9316754e49a73804ddacdeade3f6c2a7b372e26f8e75e55a0038d2e0243d31b0302047c435bb500673065023100cae9d525f45ff43739f96b8c02c13c29fb64005d5a689d4a2499a2c99a0069fa0d52f9b31508ef6661871eb1d9a4439802300aeadd1740915ded2a54ddf1d11acb5cef25145043cb03a88ddf1e8fa5891f82984850929e826635db9b4ba49d02369c0302047c435bb500673065023100d3c7b786cdae754f79b68b700c078e6bc6ed567b9ceda57c710b317544020c8693be8d13952fc2caf03af3e7138532060230305d00cb52bec2a97c01ed6cd5bcda4d469353ed5aebfd5c751c6b9ce4eecfde981a74b09620ec906890162d022ac2e60302047c435bb50066306402303c07f7f085a7e59c77df398258eff4dc6ec866e13826dd68288ed097d2588284a6cff66aae5eebeb15143988678801c50230046d2b47a2eccba3ba85456e40b2913055b09589632aa59f12843f2d2558496a091fd6d0ef6f72b17f512648c54f19f80302047c435bb500683066023100b7913581deee3925a1fe30f1db4d7b647b0b388b3b4f6878e026b50bee1a5f2feddcbbd6d41c44dc9d8e0b5b3d8ec4ba023100e485de23c6722dd1198b9a1e83bc91f0d4d4c08b7956d0122c9503b793d22e3eda808fba691364c13bc5dc80a05655f90302047c435bb500673065023100ad7c55deb733a135378045a0ad2e9c0cd4212d9d6e0d20fb6d7ac9f23cde9ed3a89ff84decb1d9ab2bb820c281f97ff302304b45b753f36693378bf41ed2641dd604e1c267fa72bf05eafd7114f446f8f22e5715eea0464a7d8d968795672725d1460302047c435bb50067306502310095ef580eea6ea861e05586bca5d32951bfb346be3ce5d4dc2887e178499c3a604b4539cd817afc8b1bd7ea539ef83f900230013c6887573a3b9478e4f5dad3c0932bd5df2e24bce0bab84b8ffeeb11ee2730044f81e912bf928274125f8252e6b5600302047c435bb50067306502302c2388e0466b0e21f94e57bd051361de8a637c3e9e1d778485e1af239f5ff5dbdfa0f964243615f3458bd6ab9a30fd830231008f695e7d64118fe5f78c443ed639f08f227427b2881eda5dd186d3cf0828bcbbdebbad18907cd4d82a0b4f5985d4b7940302047c435bb5006730650230232b14f8ee9172329041e6102e526f3d8d240457fed0eecb6635fe461146c5cca4a2431e9fb5078a2798f345ec97a8b4023100bf8e428ee9b8b8230309884d0def36f094ed05b63e035d2efc779bf07e88bb2489c52b661d6e3f3603811cbc24dc41c40302047c435bb50066306402302307dd165033230be256bd79d71e5992112dfca6480d904ea9174a766ca915e0fe124f114209492b31c28d95fe225a7402300398e3e1013ea83ba9740fde6fb120542c8222973158797936977ac5b7e72abf052280e038397f5c2e0864d709941b170302047c435bb500673065023100f2424ff7a8bfccfa94228a07ebefcaaf89fc436f3b72cb623a60aeee7f8ed8550b0fc038be2f78e65aed85440788877002304e6543355e03f25d246a0d962509c11e0ee171ec3b7014834bc88f08f41febecb3bcc382e4f561b511f0c6a153dc83600302047c435bb500673065023100d8d2a365f885fcd29f599f0afcca27a1f2a6c20325b3996d4ed37c7884eeb777ed4955ff94353404f29cdedbf998caad02301cf622bebcb122d2dd679f9cb5220f352ca1083fbd40608a7f83f5afdaf0e0041f3d76e537f25a34d3d2b892a8f008890302047c435bb500673065023100ed9bd07bced8975bda3df492221bd80af29055e1b8fe50bda5eb951bb4d63d18f02489d974b2e0b2930bd9da71d37ab2023020bdc2c8d917259189968eb7e660addf2edae9e770c160fbabfd1d965692b82257eacbabe9c94442b65ab2fc86f04cd30302047c435bb5006830660231009579150c6bf718ecea382354325efd1817a51e351099e2a02250268edbe8fb16f13687352f85e70fa2fec86528db9d10023100906aec9cc0629776df3c768766e23bf5fdab0088bd5cbad31fad910dc979209ae202f4dfd7e42cb86f13a96e2d29dbf50302047c435bb500683066023100bd2b7825d7599761b6a5b3c968e576aab76022471a050fb5d1532e09a8f5fa2f8d835bb7afa0c22e0d3781495bb87377023100e0f30827b2d658ff07e3722a44db1b3df91c3d880a7e92499ab35a7b0c244c01ede28ac4e2fc243cbc4eff44c4691d530302047c435bb500683066023100d255b68f4528448445b04cf7bc27f9d9d94101b0c4cc8b4c3403d54699dfbb8efddfb687f7b2b9458ca3e47585e07cca0231008917b3d7c264adfe7e1a5a98a5767168956cdd88d75402b37e43aa35d9f9730faa4f2fd3ca691604b4ba5e95a00b3ecd0302047c435bb500683066023100ff0b0331387e9406e5e89c6afe33ee7af735dff85629776e3dcc406d6b8baea143e310f3629a2a6647a6d7616e573843023100f913f10985d669c5253f88850f0b4d13bdc31d461958c34c09be37f195cc7819673aee2a924ce011f64b869e7a4b9cb40302047c435bb50067306502305e10c08e33b719cecfebea51ef24ac0f5f81a7b5aaa1dfd788148bd8bff59a2c3ee737d5f4196e13d6c1796a50b2faba023100d4f50f32f359ba17acd0cce9f6648e050f636cfd3b835acea4288d8bbb7da84f5366d0e36d32f21d9dd8abe7d0c49fb30302047c435bb50066306402305cb26a8dd08574384e93d6a8e474eea42f8a291cfcd784f7526e2d7f362b221975d193e20567a62d7e509163a5b0da2502303caa6a3440e9cb3d37a6e687de93e87513deb9a5f5a2e8e02f474532e8b201f2fdc5e7ff4ce2f173c1e1859514ad8bab0302047c435bb500673065023100cd03aff04f71e8c0828cb05a4a06e427effc034d425d29515bbe8edef07d8a5f50d3d2a7aeb0f8a76439a3150aee5e5302303dce1596e7721da3b12d412eb582a8586bc4848c9d585611e0c898047aa3202c182361ed9c9084bc4ddf951f7b9360230302047c435bb50067306502307bc572201f65affaffa086cc817b2c14a6f6c687141dd29d53e1164eee830aba733964fe3c7972afeaff224a19c1041b023100a14b53a465b3d87310670c5f585602604ab35eba5cf7d319eb3550fe54a13ef2ccf853d81a3b00081f9243233c1272450302047c435bb500673065023100cede05d2b5fe2e7311c94d6e17b8975bbf3886406b6227dbc7e5f0aea38420f7187d54f19d0b4e0fa273b4bb05f484a8023072f6a7d0b7cfeebb90d323e3720b3bca6c96e7a2d7b83b43fe8fabf2465c7b42f71c1e2ec90fada592a9c861f8592a790302047c435bb50067306502302f9eb3a9857fad61f0dad3c1931a2276455bf557e15fccb1f559f8a59e0c312d7d4fc1c656aa53b3c212287ad9a5aee2023100bd3a45dc84b2674f6d31a1172c9d55cf59680e8e71a862abb2593725dfddb3303f95c7e1542935d5910cbbdc09eb47e70302047c435bb50068306602310089e5a06d68ab78e6991612a8d75eee1d4d4531630205bec6afa0693349dfd3a700c6169762ce1a633c7c6d84f10321d9023100cc9b323922e0578edf8cd66c07f75d7695a1b29013fbef26fcf7858a0d15b18d59360aa069fc98234c44f136190839520302047c435bb500683066023100e43733e684ba3f45495af0fe1d35677fb16f664bff7ba70fe10a831300f9b4f9981cd8815391cfaa672634087dc6a55f023100bbc587b811215263aef8c37cf18db05002ce2fe680ea849aff5b370160620687e2abedf77a1926cad1fe56a3932e87130302047c435bb50067306502301a3c13685c936dfc10897b2a3160ef24d4d4f81a85962bd45627ff0187ebaa30a499b6423f999cb864ddc964bba892bd023100a284e7b25872142bc8bd13e232f5e695917d50d79d0fc851c0f0c6bbb599dcb4b3af3805c35c197d75ee24405c6244720302047c435bb500673065023100ad68054f59fedf8d1fb2ae35eb62b7e4d33c4aa7772a647c4140bffe47b57373b5de8f3715afa5da15663a81e65a065c023062f0616c1b163b27e327821935e04e86d90ada8a1e3c499fd86179caf58d3d60e4125791e0672e1405d21c1619df1b050302047c435bb50068306602310088bf6cc5c424ae71716eb61f0f57d2ecbf66c339f9ddc627f71f5953b9aba7fdcaeffe4e557eea2b06125ed0f7d5a3090231009a50dade25839b54f9e77915d11b03fbcb6e3bdf19010a8871bb5b6dbba1a3c47379295a63a69b5958de188d023675620302047c435bb50067306502306e4debdd6993aa80f76f405fcd50176b438192dd513d4087285f042053f0ad668cb21e4c2a8e700a26fc192cb77c68ee023100de67d3713e0a3ad307b43796f29b0ad40f48736f658c3d54b77bd52e1f46a82d1c54f935ffb7fefd0cb3d99fd58d2d8d0302047c435bb500673065023100da330186a8279bd85537d2c21623a542bc022f7905942bb96fbd813e40ec8f8f856c7c4d4141875f3dd973a0fd777fe8023045eae99456796951c1a0bddfd74265e133a34821df78c32721c2873efd9102b884bf554ce1a2000f7168acce300f8f170302047c435bb500683066023100dd2f43a1bed12d7700cb2b1d18f95508d3f1bc2f022ead4f46334e6eba50e8339ee6985aaf1317adf5bd5cb3f1318ad702310087e4e1fde1cd807a21858e4262d7c76e0d65987beea3e482f7050dff1f5217da6ac4e6f6a9caa4d610ecf278c2c9a2300302047c435bb500673065023100a2b5d5d672c298bac5f4e8021cf4e3f699899aaa1f31a8e75c29f37a655301ac455697fe79b1bd2cbcff6dda6ca7b9ca02307d34bd7ae184ea0a0d0601dd83e188729a529c3ea5b378efd09dc2b49ac476f39ac2658264ec79b162c93f4ecbbf1e760302047c435bb500663064023000c7d94a5fd4a4402843270efeb538aeb859897c7ab618881bc5eeaa3acdaf4b7a13c2a3467e2c4e42ae9d37ed2a69a30230651acbb5e953d016fef08f9d5b7c4f9f07c98984f521feb287599aafce22f5966cc4d6ae70dfea75624ef2458c563e040302047c435bb500683066023100a19f4041e3bd2120e7e7715f4ecb31b243b12ec07764de4bb62df55bd052300f60ade32315dad7217b100dc22614df14023100cb97510620aca1a4d1f91a13bda607a40314867d665e4037626adc3c5397a4419bbc556bcac5aab237b4ac70886f4a920302047c435bb500683066023100939279c1480b5ed9fdecd0a72269ede9b5db6c12df441646b7a709240e2b3bcd165a4b0093ba76141af81dc4997f1a90023100ed30a6aa9625c4ccac79180406e733871375922441da53982af844413908d0e1d945f287d5a0ba69b0fc2bea4f7368890302047c435bb50066306402306d265ff4fe3b70e3070a0d1078a3bf70c4563d8d5c6ed6f372ac5cbe56e3018237c3dfc58fcf1482edf5f12aa4410e51023068157956851b824dc305206da5584030f8ec71e46f8b27d5d1a9d9d29476d33f592a3b3f2eb09b68a624cd77445b96c20302047c435bb500673065023100bc248ce5fc82f4c2918d09b230b8b09004d373983f617db8a4eee5cd909d8e86819214b8670145406f04aeb1ec8d1748023015924de04a1f0d694f466df77ec80389c44e778ddd2358b04d092ae43c9cdc3eeda4d30aac3e83b8f1fa896ab9e4f86e0302047c435bb500673065023100823456b9d761d1a70234697aecd4d01f9ef10c9c3ac8a25f6cff184d3bd7f69e1c2650b0c2629c038ff775e84ba173c402300b874111cf5c9a6a92a0938840981f389daa1e122af04eb95ed319d58ccc60e463cb761e7f5714db7abe0438ad730ab40302047c435bb500673065023073977718022f819a3fe6436592cad0cf8070b0594798e4b9c6f77c6db68eb4269fb14fa61ef2d141fcd6bb7ac302964b023100f1ca30d086e47827f4326995f61d4004ff1f79294c8193f0033906c277de423d392fc40c75e920eed152053fc00907af0302047c435bb500673065023042036c78703dd521797a1f530dabbf6f15b578ddb76ea40bfeb665ac5c40548c9a6d23021224f322d24046465deb1a47023100e4309304bdf84a1d9e28652192414da9ee8c75aaf69c9c3a1cf761a9ecf144a446ada5ca03404fdc050f5512c5dbff690302047c435bb50067306502305685b52d4ba1df93cb7acac911827647ffed10b43bbd0d438c578176b960f2d1c6bcae8036a7ceae5c095ff0ca0b43c8023100e6737e148205e02ef6da1ec0c96937f2d7f9e267823c7f2795713d065b1e761996616a2f95b939c91c3b1ebef30838060302047c435bb500673065023100f62f5fc558aa078057b7d0c19583360e0c3a8fe43542d5b5ddcb99d7ce9f539072f6d78549b905cd25cf8e8ca6e223b702303b171e6ee49a69394df7f84517382a73709ca43adfc47060d1de5409786fd6ef1cd1e14697c1723eaffc5c98fb02d4b30302047c435bb500663064023057a43673f00e215819cbaa76c76229bbe777f31d2967b20abb9761e9baa62f31355ecbbc2b7fdbbb4d430dc471470888023064614280b42a68fc7f41c012533f9562080faa122305a1b504d8b0e21569bf8c704a6fd6d36346946a34768d719ff7280302047c435bb50068306602310087ebbbba352c445034e08cc3519c25e87219c9e6b12aa113ccc3436a87018f8cd6354722d8341288257b4aa69426aff1023100810d71b667bc715cb196b547a03ecc222ef59ed2bac16c16d2d3209686177e32b9405d607a7a7ff1fe116a346069a8d10302047c435bb500673065023100c67dca17bbe5a18a4447f47bcb13230d36edab7a437ec990c2145175a0d370a8a7abff730a1357a5f37a6c11cbd87a5702305f39531e8fae748b365523f522debe86d6300f1cc206a6378e60e1415bd2bce0b08c8c52afcba5f9f37968840e0c4bbf0302047c435bb50066306402301e687fcf717fe109544fdc616e2880193d67b034cc894cc210cb4607e72e91d1a1af63d40875f40770c34a666924341602300917040eb4a991befcc8c66992325e4885cdc8df29659eb449a8089ab5cd5ec8fe94e08df3fcf1c18c079c9fc8f27d270302047c435bb5006730650230696b3aa00be609ff266777a0e432b981ee01025ea5deee2abb9db7276431bd9b82f8fa9e48f91dcef3974f4765fb57ca023100822434bd9a7173be79de96b5bd991f2e5d21c2fc789df0fffc2d41edeef3e49369a35e1a2bde63004bf21e1d6c47f8770302047c435bb500663064023049985703ff24f97fb734ed62b90b1119df8f384b8dc7e5ed48487dc93ee79aae6c0397e57095b710d42afd908f8e6d59023012d7eb41112a8b90dec687af230e0e258026c6cee22dd7a84743066bf3c31b31255653dddbad1925a4530901d2c38bf60302047c435bb500663064023003b7d607ee7fed8e83bf400ea8cf11aaa7c087420f8654e961ad9126f2f8a5faffcc2db8bcb664a78a3de2b2a4136e79023067475e2310889e30cade9a70d44e866e184b705b44eb6b8fb050ca24262a4570ec9c7e5e50e9a104b4b022b48acecf2b0302047c435bb500683066023100e77ff1009c05bd5c932182a2faddbdaef64e8d9effe680fd5000d4360651e5e22e26446d663ca6d0afbb9bcd09410d83023100b201f934e195227cc554d033fd7eda13f901b9b5324ac274078f54ac761210ca812e35831c934f7e4f1ad9ba0264f6cf0302047c435bb500663064023022990d3f4bc98c554c8311d116369b98dc3a965b377c20061606f9b5147e35075ae9628a925ed74d74f21a6e1df12be00230445452031ee1addc2a60447ce77e2f1c846e7ed54b7a59b624d2253c43699da04bce07d6c9ea7bbb31b168d4ee312f400302047c435bb50066306402300c7246378802051e84b2e8fe45e83840edf7b047ac9200a48546e57fb61967dd7d9120b49dc14641a34a36e5a58e55ab02306771ddf5e9702c156bb0efeb46bdc050a9508f86d9c12428f8b7aec35a2f2619926e99b516827ea67fcb38ec8654c7ed0302047c435bb500673065023100ab247d5765bc7567e84dab0c45e99981d5f396f167fb7446a488bf95fb4aa52be2fbb62004f0d8c2b80fc816f4a0e3f902306eabaaffd19d4922ac311b1e6de5f6a69651fb0519b9d73ba60a4cdc571bb42a1fcb9bf3c727e13feab54b69fae0f0ae0302047c435bb50067306502305b521476bd019db7b59d79adc3e47356b0bd8d26301437303d9997a986856e9edc568c79e701a67603ba4ae9d31104d60231008c025c13c7866c04d24ef15a9bc178dc9a426e709fb548414037e3f565ea3bf924638254bfe579122868acfebdc12a9b0302047c435bb5006630640230377ef2fcebf7485c424f05f0a924db7f74e01afc593b66c62b87d0375e525affc6322b896c4c7159a70a7c0f87746a180230114aa37b6e9a40e2cb5e3705fa963dc31cdc43475b825b31fc58c6907d257af429a44417f609ae8c771b6e7d07ea4f3e0302047c435bb500683066023100db843c7442cc1f04f27083951a1261061f2b17bd0640baaebe02b196d0aee00aa9c524b09c8e60a28b3061ebb1bc1050023100dc59864ab1f9e819add9d2d9c3674b425c41be9927f7118f84d533ddcfa1817f43dafd6a24642c4e1ed8d64092f237ba0302047c435bb50067306502301ce3f227129b881d1cd663360e9a23bdbfbc218639261d7d1142e92ada441110eb17569b72b630bb479911d9dc3eba5d023100fa781d3aa8cfb8c942c8265b867c7af32cd20a945478b837841d51241da08e7884669d663da80bea12ae96bb93487d5f0302047c435bb500673065023100d6fa2cd67b18b37060fa66c5b444383835c3a7821a3951c73740fd4c8b6eb9aa1f652b0854b00a47db52f48205fd7e2c023079948fcd7b2417d4ba1055efc5595bfb8e22917967b2adc80e315da28b8d3f847106ff8a44eb845f9dd37982661a0bd60302047c435bb500683066023100c7a4c4e8d8188e565ae1a477f083863c62d2ecc55cce858a2e9e77e7dfe89588977b5a886884db17536086dee3c2e4f20231009c99e0d6782ecabd6ca16311283a1d0eefb3894d21ad550b57dd6e169275f875b486724d56c6ac14695c45312acccab80302047c435bb5006730650231009f00b5f0e1176147a32baf89d9912f27ac514f9d59e01bf70d6671168fd6eaf1c1bcc4fa36ff2bff7ad618402727098902304232654bb670331940f80e45b0c7af35d560320ec03a5295fc9b0a8e7613c84583ae3318c74c9b9590e7cdd5b205dec80302047c435bb500673065023100f2b4c4f12634e8d3423691ff04924c448c36035bf71ef4bad724e255314f07040fffdcf5eef833e78c1289f08207400702300859a29bcc1c90ac622890f40b40d9f6057cf7e5fc684968eebc33fcccf45b5f3c6a1363f11b588818dc75416465cfe30302047c435bb500683066023100e120a0b0989ee8b5e2b05c457fb106b60a5f663d1791a20bd69301b6faa75b8260b0f0a5e01294ad001fb8144370fb39023100e7ed758c9844110df2c9cb4e15bab44737f865c2102b944bbbf8bd11df26310dc29c0415ce493b2682a4771e4dbc5a540302047c435bb5006730650231009871f7017415339ea0951e52b1cdae271d168e3aa76ce3282c13784abc2f37b7b3b79d158da2e5bfb28e61def56d684002306859e3f0cce6dbc34e88dddd77020e94bca906984aec9faf0d0e7e6eb4a394393598035100089d4a2da3cfd51c58081d0302047c435bb500683066023100d5e1f0788d2cc89f9fc5687da5c92210d270d25307eb91d7dbbc706c22e760676edd820e22a8e8bb900267a4da7c5acc023100af130565184038e8aa372a25adfd96ebc86c617e569dd904e784062ed2420291d700065fcd0b042d24f8a2e31b08b9f30302047c435bb500673065023100caeb5b85b9ae4be49fd18909e527728d27d60ad8a8bea43b0973dafccc683272814ee96863d2c5d71015e1bbe3a222440230552f60f9dc3a94267982f4da350d4db2c1b4f4a29caf55b8710562d5f309fa10272411a77d74673bfce25321a60e88970302047c435bb50068306602310097fd1ce3e054015a1ba0e2e382a23362427e9d59e81522ec53767700a160c71a52ed70339ebbba038d88b0ce55126efe023100e2ce15a313c10ed51f0600c7fa2f484d3c0b76beb2fcf4236be4e76b88994e4846c49701565b963bf737aad61723ce000302047c435bb50066306402301ba761863dbc0ca50bb4b36e57e46fc06811625cb93fe26dc9f23376f8e07a8b40205bfbb4437c49519695f22f8ab68502300b51a14e3d6dc52bd70b108c98420ff89d7ba8605689d160b6498478c3275c87b246ec1c3ee2d5d6efcf2cbfa66dceae0302047c435bb500673065023100cde099b54cec07ed5eb1ec77fb6a81421977c283089684f9b2cb2ac6dc96b1a8857b4ced1eb23a7cbdc999a910681ced0230362a68908ccf984abe3365b3e2852ed5eef15a8d96e17aa0392a7a9a2268c9318f5f670d49c2b7eeabe64cc0da8e43dd0302047c435bb500683066023100e33d3d7d256fa9b2ff84913422fdd9ab3d02e389f4234d8d35da53c9bc839d329ee452fe3fd6ff4ff4882ae0579ed878023100a5658f371059c281f709290fca394630ba6ddc1e94c956fff8024986bb2d33844ec3f9401b51c7edc6f31332135316400302047c435bb50066306402301077030888d8c4d7691a88ca0621895e93b7b88627ce064a75b2e2bd73cd0b5f671a8454da2da2ef953b02f27c2e0cb1023051c742bcfdad89e9f3eaf946203ac5d845441572eadc70744c5165f5bb27f274e7261598e5a2e024a4dd0eb5fc67e74e0302047c435bb500673065023100deab4161b84302fbb1902bb06fcd65d250b15d044515025d7a92d0b48d544034fb29cfdb16f7de86347b50e292b9044f02302574d10abf4dd45dba178dddadd0867b0b646701f7d7c4630bfcc2103ae96de155e4cdb4f03d639ce6b6b330d75781c20302047c435bb500673065023100929ee80cd1a3d9ce3b582c623b3e75a7887634da0d0bc6b87ce0132f5d9ea5347ab12efd567d396fa7d5633efd22d15802304bbe67c78d078a14bb49422e9c8e27c8fbbc8b9a629d95eb9e790febfb3bc5297dc76c4838097602ff56ea36610a5a4a0302047c435bb500673065023046586e79794ac9a8ec0abdd6b05e854666a67b390958da280379ca23eb10e1f6d0292687d3b2f57cdf846cb0260d8176023100b87820a0387ed8915fbf478aabc76b6bf018952bf95f3f43e2bc0d882ad15bd56ed64e459682569ef6c3563dde02216d0302047c435bb5006630640230071b4b8799ef69b981a959078a441ffdb99c71ac4d9a8092deb8ac56fbfdadc4e527438f64234607aba88a23003ada1602300f6218d18f06920614435a1e1cc239f12e710b3b220238e2681faae51ef6f3d159cd448aa72964549fc29328b09794fe0302047c435bb5006630640230422b709c8c8ddd43b113a0fd0edafefb7d8406fa33d905bc110216b245fd3a3026ba6186f3be7100b41a08804614695402301ce49ee85ee00efcedd9041745a9d9ab3c708fc909cbb0dde4bdbd7e0d75cbbbba30c7b4ef59ef89cb3b28e7cbffda6b0302047c435bb50067306502304e26a00f53292d92b8d52caae2ebd154041256e2eef07a10add64e93b894c71ea1c3aee9395f96642418534dee1217990231008926bdeeabf6fef5a5f8d130c2a883f4854ae822212d8f6e8af1362c7589365bb273b480a205e84ee132718242ca6c610302047c435bb500673065023022b11eef0f5be64452bb96de80a50acaca8a18f4e6ce1baf815eb6698518d55b5b763a5165f6fdb0cf71f93d1f1691bb02310083e5260f9c7971443fe5588100ab44d08d01fbe616e86e74d7961b7a80668e072b3f2471dddbdc991524a44f62bc3cb60302047c435bb50067306502301192c0606b7c6cff82e833ca5390731a8d721fd14490982ca3e40845ed3868c0836d8a02ba2aa61381616bb5723c71d7023100dff76e381d7f59ad5c6c41c89c457a26156e8bf77e83e78982b6601f256a378ec4a8d7b77484cd3f20af813b1a55c56e0302047c435bb500673065023100a9f3ec5c4176acaab5bd950d39ca6172dcaaf04f6588ed2beb914bed6d13eb63807353f6710ec2f49351507543735fac023058470dceb6a30cb83f3815d1d50b6e8993bb6b160af4ac42715ec547d836a42c86f6b7f4a24715ae7393fdc56ad906240302047c435bb5006830660231009f123daa74f0e8c8749a0b8c2103219e060ba7a1843b46d2944b64b41cf7b41575cc29cdd941987a11be506b506ef9ad023100f0cba84d74c64d3b5ae5673f9e293574c8f68ad64c6bfba02f1e777e3fb5b0a1f341733ec55b4aef2784af3b581ece520302047c435bb500683066023100e4833ddd9b64fca78f210d37df2ddacf4937f1f1dbc650295c94b344463428629e2b624a4ded360732a1e26f75b27e24023100df044c9b67ae113c62aac572679520a294be71cfac75cbf5101ad1323fee621806b01efc50219f9c099f77942697998b0302047c435bb5006730650230152edc5ff1ed632b7db904a6320dd93d2525c17c5fba2029c7604e6d7a5bec789562fed299b878965e2f03d054453d0d023100c494e8ee51a61c2be8723a83b68b65b8d5e606f9bed67020f683e55019ca09307bb207655337114fa665ac47ac1daccc0302047c435bb500683066023100e10e9e7190e13e62a97b039e72d42b105495571f0491dda16d5012c8027fc08b70be29adce19ae706eeef9d7627ee45402310094c37464a3876a2b2c1a41c25719351067dcc9d71ccfdd686ac024c0b030d4d000ca0cc2ab94e1f309dede8d4d32619a0302047c435bb500683066023100a96b5a8aa91bbb6203040de0ec12fa1596a956a25ebe540ac3ee3556161f03f577c6472e057ed26a00e65ed0299285d8023100cc09891159861d1093ec1c120e5de6750b563efdc35b4df798ef540d0939dffa1f1ede7b3f195817fd07a860a46577520302047c435bb50066306402301f4ce9876f2ff59fa9f94ae49b2bacd0e153f875ffeaa8ba99f8c29172e3993487a24d80af5c4012329f1532b8229a6402306ada917bb01f41e29f54b1455bccfdd06c53124fc78bec52ca1610e6b088a01009da6c6b1b08d04697f2c31744b8ad6b0302047c435bb50066306402301afb8d8e2bbd7f875557a1aabbd232cd90afb05a6ef026859568644a2d958234dc7523d11b98e0afb646ed1bdd5b48d702300f23f1fc3ec12de368d22630cc9af593460fd390f3b4c0da082806ed0d6e27363146bc5ac2da937e4007c99ec27be2ba0302047c435bb500673065023100fde29d0475ffbf25131261f5aa8d7106ceff772787513022ad33360192d8451aa2d21d85a42824069e10f1d749302b980230081fa9382dbdd5932d867aec1ff277531ca5681a32c5ce95615db32a64e7385ebfdb7f8cdf190647f1bc017e157b8ef90302047c435bb500683066023100f7c131f833e208074b6518041deddf768f26377ddc28db2d9f222a9ac954457d21903effec43693e7f804433e1baa792023100dfd81f39007df5e3ce9a53397a76f70e416c7895c582720b7e1e12a25e1145d1b43dff2867f8fc2b826d9bc0f14d73b20302047c435bb500683066023100d3ae6de68720668d6bcba32823bbc4fcc0020f94605841c3bd0ccd411ecbaff9e437e97600375999720919ab2a7e039a023100b5fe1df60b50d49da17ecb2b8d19fd87d96c56f5818dd6b5e2fedd73599e40870c2a0ce7d29ef9519a4436452932ef3b0302047c435bb500673065023100b806842f23efb8be28f6823940cbb28e932aaca1c03759b844d1e28d6ab01883c8e2b59a5a4d449b9598d772e78ee1f70230477f06d6a9512f4c268d2c7be48cb3fef272d10c967b5470f21510c22991ec3f527d596273286b10f058fc899034e5bc0302047c435bb50067306502304163945f80bbbe65846b48e1aff16d052807220f565b6a79154e10174dffd639d735c1461a02616d7aafbea2e0732ea0023100c3226693d504dfedd3f1f14fae6dfe304a1ed480347fed86c234318c7d9f21724566d8b253dcb56ea6326c75e89751d00302047c435bb500683066023100f6154a5e81b8fdd3b0468627b728e8960afd61298595e43eb952470c2936f15376df208432fb3401b53099db5be8974e023100c5e2584032439f628bb8ce38981b4d52a7e9d8fcf41e9a3320f38b1ac18158e591a3393b44f110b3e9de08a22dec1c7e0302047c435bb50067306502310086fd12f728e1e1f494b2adbea2a22b57ca22191a877d8f53afb1b70885460c3f4d828429406308b611204fb87d6c0ec70230508d8d2df93684f07c08d0b4afdb418e57d437400a24e306ca1f9bdee033a85e2b205d46f5cd89a294e0382bc48758980302047c435bb500663064023026a18a3a1904939abaad31d8e1eebf2a272c3c80c0f4821f234cf0c29da80e775d0313c5953dffbadf1e86fa05d67eca02300613c217fc03e5a02632933999373d7987bd9324a0f282f432ff11c48d5baf3bec52576ffe0812d4047daf74c29599e90302047c435bb500683066023100a4ffe218b5317f2df9b9edcb809f5ef0f9babe0cf62cd24beca4f7b98abc73848e95dbabfc6bcb0137172e368d7275b2023100a0533d8d6637a8ae49c124a54f7eabca99f1286c47bc239218cf6a99cdac8dac7dce587b7a87df14c25917273be0aaa80302047c435bb5006730650230449998d4848115cbe419e44b6bbca5eb9a23fd3179c763f51d89be5ea3f9de01a0ec4d37e1edc02ea4e596305f58ee30023100d906e6a66bcdde46ca206c93602a081af9d09bb1467857dc3939559460a44f193e83014fd0b419ad6bc1bcbe75bcf2110302047c435bb5006830660231008e26b3c34f4676e5d652a6b1192be2c1f3002bf05285bfbfc6f8af6b48a04ca421f4dac98a39a22ab7d57632ca7a80a002310090f2eecb7c3d2d92e232d519c3b89b498365d5b9a230920c69421bc665b6af0cf0eae7ea263ea9e0df05559989a6c8fa0302047c435bb500683066023100c329fa37d46a4e311c75d9048d4a61a1033c013010a5a4018670589de43194b7952674d084fa6f9b0796e204c795d7bb023100f65e1edfda70194a7e655b80f461aa797a4dd03f37838ddcb4614b9c78efa11a21f819ed77eebb1fbe7a5c71909073100302047c435bb5006730650231009875c12a4e552d3ce2e27461d4b57dcf0fe39a09a98eae8fa3380d4afc0bfc34d50273bcdd29a1ef1e045d147b91916a0230413163e9181e812103ea7c62c526e294f1061c5ab60df67e92516585658809a99ba01850198662a0cb6cb2bacda45bf50302047c435bb500683066023100c9d8526d0a2f634eecca7ee558f3a0d3039f61fff67b60bd785030fe719f221e71d1f646f658c5d324543d0376875b97023100f170bdb5d83968635e1617f7e94a5024825b691c56f0dd0e6d51d9914e4cf05761b0a63dde4c7da211a866a79a1278410302047c435bb5006630640230152cfeaced78a20d74e3fd3c21e556253c6e83c56b03bf8240792156520c5542b0f0bfe92de0739385af225d308762aa023063ed168d0b4636ce3120d7b6533b29fed260be43cbc6e55fdd77bab1f8631d21b52ac1f6f2aa7c6a4e1b19a5d5ae3bde0302047c435bb500663064023022f882b7430c75a63702a9db7e1c81cda3b5f888f8d4defc6ae43fab17f063fb829473f5a64bcd19d1a1cbc38c13808b02307dbb47fb4fd41bb204ceb420d29b0d1217c92dcfb987ab76f65ce55738963bb572f8474a42ab1f0d55cbf82a7aafdcae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230075cb2d6943e2c6249898a38291c89ce1b67be301aef9edb09c604c0128f1ef05f9c9314d81e41099716d6cad4d84c4a023100c660c9adbf3d50c462658e6331d60532273738453f95d91e751325c802f3532e4c27a2c3a966a9acd408c75fbf0767f50302047c435bb500673065023100c9f988074fe46ac1275068720def9f4701fb1cda6f61f42a31a9909550eb3a840ade7ff4b42f4e6c1b0878ac16214dbb023078449bf2b4e05093a19b59664e26ee228c1534e209c5837438a74de803df29d6b3614a4b4bac76e7116002a836bb39750302047c435bb50067306502306672480c25b8241534da3fbaea2ee8cf1626be94a4fc83ef0c23500e116f824f989d6692e00c0931d1534cf628b78367023100ef7ce2a77860f955d1f88f3d4f59da882c8d92e1a705f6fbcb871fb6da95a45cf40a8909bf05fff118e1edad9073e49a0302047c435bb50067306502306a1b5b635920ebb547278b064fa9f9831ed3a8366eedd199e73d460ab9a86c49b1133d22fad71df209408e861d3799bd023100a36a80abd28afd4f673ed228e206f7356ce66080e8d14edeaf752a9b189335ea0a5df61aa7c740d8a4b6f2e2a5a9313b0302047c435bb500673065023100d71eb05ab88b9909e4c0e1ff6629fee615ee86a0bd269996b03881d4267bedacb27c6004ad3314fe663e787c681fd43a02301c527364327a5dfa997e1d90a4b789abacc397b488f54e57b8b8a7c9a019617eeed4eb6f1864e8025e34597424f184680302047c435bb500673065023100c6571c3ba37fa5816fa7b4c084dfd291a9da5487292526f6776be3fd0dcfa065c4d287d81b6ce0ad2f4ca5ac8c7c4b150230540e3b2cd69e00501db42764a78b47ef248947f1f062943a4455da61d5b90d6ac8d37045fd89f8c20db87e3fb66892ae0302047c435bb50067306502301645438a540e9c6c41be0e0ee5e1c82407665c41f6a801dce80d892b2a3edae4890c62333b8ab2bffddd593dc937af06023100d5db69e333f87f247c37566d7a039a70a701a6a22f0c727c14db8adff4badd54c2d08fcb0bb6de7e13f1d31228d0499c0302047c435bb50067306502305a2058e71294df4745c4e8b564e69ae5cc6a6219f800032dadc16f49a93a7061b4e5956e9adfe4e28dbcefe1d881e6e5023100cf05f083296b262fc9062a0e4ac3cd2f22be445b94cb8211ebf4d0de1144d7490c257b24445357d742735c10004e42900302047c435bb50067306502310095e38778fa2774a4319d41ec293eab1600dc0dca4121af07391689b0adb9df18e759dc1bbdf2775acdb2cdab104581dc02302233262e3497be4ed52d4fca40cd6124f74be2438c61c3ee4e4e2e66ff2ddacbd21b0b2ad4093907262bec6118257cfc0302047c435bb500673065023100902fad2eb5cdf378acb4c910d4fdd3432829031b2e288881d9bcaeab17da57bf8b494d8af01a058292228e0b10d8fa1e02305c43ae3f7607a327a99cf270ad467dac9d99a43fa7a6f8a4772315bde01570621d22bafffe90ad9ea7f72cd4a7fff8450302047c435bb50067306502302df482f3d1f53f85d674d9e9855a5b277eec5beff43d2ce69c57a02f37e33d917486c7bd4eb759ccc58e61eff2f7cc52023100b7c5b961345e4c69c62b13ec83bd6448478e5b344ea71582809626a139e8bf5f4f6261d51255067c8754bc8374fff0a30302047c435bb5006730650230638ada2b786636afea64de92dd3c855068ecd264b73028df12f538cf662a25e5c2aeae2e224f896a907fbb46d4a4c9d9023100923c7979cabd2a0b4008bc3ecaaf5dc1c7488871fcd08bb1de0d355d4068410e0cc279c65aedf30821a9c69146cdb0d00302047c435bb500663064023040a41db1a2811bd06cdcdc45ea20dcebcd9b11ac644829d2547e0c640d6c280baa1ee9545150dbc4f44b338f90734a4b02304958087bb68c9b3b1aeab41da3f0ae1bd9e8bb27af8fc1ef8e783147c4edf8c805fa8a489543f3bd87a6099301565f030302047c435bb500683066023100cd9aa7394b2d663eddbcc58e5f4fa74c465c5068cfe9d47c4da535148dd0bf6fd275fe0f04b5639a492072089d006949023100d62db9b872bd503d1802fae2f8b517cd5ca6965112ccd24592900efeaef4ec993ab81e6f44fd4b69c7fd5d69004d99b80302047c435bb500673065023100ab08599adfaed76cf2c16e05d46c1fc9c63b7b2cca9704eaa3cbfb0de9d4b9119a615b1a30a1ff920261e7d4b1496b3802304aa4d47b14acba33e50e7796c77253eeba38d84dae7a6db4ed9dede8b3750ee678449d2eeb064a5d65b5d823c057ebbd0302047c435bb500683066023100da1248c8b53a3b3c4e1e287b4bf4f10f462a8c27e9c93bfe4a7e62f40fdd15c48cd9360b6033489a25ebb97373a62e6f023100eb1fbeafc8496c45139f5ccbc6161081ec91139b85c820eda776afb702f54a07d9891437c0749368cecdb7f9d9dddde80302047c435bb500673065023025bee4005dcc20bf02cfa1e4402e63bf6abde56ed2851d48370c7565eab88e397a310620b0eac96556295c62054bf2bc0231009a60f8688fe2b7d97d1f7404b1cd1039ee82285b8f5cc8707916a4bfa63235b14df428d39bde8529b8e7101bd42b8f1d0302047c435bb5006730650231008c6b5255a758341184417deeecc1a9c92dc1b29f4a590dd8f587b16c6f9a8d19f0d0ea97eacb7f7d0b2a94a365b287c5023028da71f1552d5a494feece6cd847bac884905b9d49b60a7d2e909c78478a6c181ea31a9b984cec71c843ab365645b2560302047c435bb50066306402302f520bd7eed500f62b9105064f5a5fc05a31c32c83f99f532efc0698cdc58d8fc430551bf247fcc3d24de78e944f84410230314d11318c4c738927d89e9d331b50a6594df33daa036c872cfe2d20501d5a59550f267b806214ad1c6264807396584b0302047c435bb500683066023100cd504498111ed549b19b826ae27de38db67359cd3a4916a585fc05e181a98d19d04cf7d89c7b9c15da61b3046b74b8ee023100d634059dd52bd383cb4158c8b9cc458b00630e3546d0b5e8124684308747ac92902594613b15d69b60c1dda793ba7d690302047c435bb50066306402300bdd5fd2e5c069e6408b746e1baf9f97777e758d6d93a69144be10872c8b184ca16e9fecb287e38a3f08afd8f0d3a0b402307e4aa486a19c9e1b311d3ffe8897e410fea3eb682b1735fbacd7b006049bc1ebe5d9d8bf757e63e555197236015cf7330302047c435bb500683066023100edc3017fa079cc2c225c659442d912a5994dd99dcbaf019f731d46d37f737c1fd71d486c4d13ebe3f43e2b283f4c2d0302310097c78365b237ddb422a44e1245922d8fb41ab9619de2862afd2097319458372d8eabda4829df2570b3108a8e3f85df130302047c435bb50066306402306254fce9fe5ad083e31bcc2d346d00e0ce47b44e9368441120f3c88cc755fce8a28d7a4dd69b7b08770c9ec999b7f869023001a7574da220ef0092955e40f8de1f4962fb8f8166afece238113959fe52c0060fa6c9be3cda14a58c1fed7d546242470302047c435bb50066306402303908e5bfb2dffdcc1523ab8ad05ee382535acea13ba7293d97a847ef07bd345703a1a70af344b6c8ba22df48a25de8d8023027d22e1ba9626258a261d1f4a2330d2e943b4d39ccd399d445770ea2f3efc8887910e4a282aa8aa407233970895a33950302047c435bb50066306402307dc618b8049f257751138b258a9d2ecbe3ed3df726b99dcee001edd6c279d893b8f004311199baa704f493442f08c4cb02307996a118a18d848e5378e19d756364412d6993300017b64daafbd87072368564274085fbcb0accc6a5376ed121d84fd10302047c435bb500673065023100e42588ce52d432114cc961a7bd85b5ddce679d5cc37b823d90bf35d01e031db7cb54a5ca72acf1fbee27248c48ff9d1d0230466f71c786d9938c144a6ced92f2cff5a43362e06aae78017116169bdde18ef62d9a3be98c2a44d0469794c305844e180302047c435bb50067306502305ccbb5d4c376726add091436e450030f9cac0eddb739fbc3cae482108a5fbdcd3a41a2dd7b509a7233a241195b389c65023100fdc862d83b5be815907f884ecde0b8631c0065a9cd8b89db048a270bbbc2a10a67e17497745890b23823d1432f6f4c1d0302047c435bb500683066023100c97cf3b6a63e944393b3ce58931340dd54d8b5bdfb6f7e0c387f75c97be8807f08fdc7042f1f398a4222d0278f455054023100a1cb06a05cee18e7601dc7e3d67b8ff5f86ff09b93e06287d140a7f019b1513d82bd84e3fed3a3d3950ff281b7acdb640302047c435bb50066306402302052436c4cb993d153fd749ba4d9e759a7a8dce827af62abaf5e911fca67a25c978caf11814b3722ddd972687a513836023076c998a4752edc10c7ddcda4d80e647eb513e13d29014623a0092ba159a999821df14a813113dcf2c3aea6989720235f0302047c435bb50066306402302690e2220ee84c9f98f51571c9fbc399e45a67f5ee1435c04be0b960b8f3a75f4a7c8ed75a35c0bbd8a481f4cc8dbba4023055aa7c88879f736449ba14c3115e022711e50ca9b71e3426d0fce6a822167c248eda5f9e1f38c7629fbe6ba74b0c96540302047c435bb500673065023033e60e2b8888ff7a8828c614f3f1d24466643b4cf5f72e333c3f962f077b59c67b4e63f771dac7f0cd8ba147f79a7462023100ddbe592667d7e777f0154c409d36ca93b8455da5052296e0ebaf606cd52e94d17ea64ad3ff4c24dca75310f4fcd074720302047c435bb500673065023100a53f2be3de06de1f915fc42912eb97e6498b546b8d031d61cd9d166508e4dd90718a388e2742cca90b0edb83e48669d602306d9af2fd62cdcaa7b4b60ac67d9b53d516a2da06024d6aa1e4ecdccce92ef42a4bc5ea18426b7400e2b9d935d3ea7a3b0302047c435bb50067306502302e5e43b82be146cb01894e8df5c2b6889b2d17eee6120920231f215adc6a62ec49b174e5fad93ebd12a4ed84f9eb8956023100ec2a712930835fd7568bb689b163310502cb69853068dbcb5f350e872e685e2e34cadbe54d902f02c11eb3b0ea691f410302047c435bb500683066023100de00544af7e5acd6812624dcd37f1dbabf7f043047137cb1579ce631ce07e7df90927a9e31dd5c70f41f4d5903686652023100e3d10a0aac18929843aa52b1c229328513d23af46837b98e56216077f50f42f5140683461f60b62a700d5f1e2145cc730302047c435bb500673065023100b7da2e21e9b60b30f149d762ecf914af48d7c9b8fd43532f6964c13614f5c307a4d2a9bce6de81a5bf6a41cb6e7a4a08023035262f56c806b1d71c4b95bdcae174d13b1c435235a9ede8c06d02d741959de7da7f31c1708ad643d7523849eb00e6da0302047c435bb5006730650230481874766caf6778c4cc8a8912d4e0c3511b170206096dc40afb0ca6782b83277d8d120594d0239f42891e12d224a028023100cb53375d9ca365c24523f414beab83fcfa42e924164b9620cd20575598d6b1038ddd2500b22a5eaa50cc13c1a4e8da120302047c435bb50067306502307181c001ce6e7a88eacabce1fc1de8288354dd0b5e82ffe87fcce5c1696102b2163a44ce2ac89f772f13d082a67781a3023100fb276e30665c6a08fb7875ca84da257e20515e2d07a06e3835456e867acdaf54d7abfc1eab59bd30608133e424728be80302047c435bb500663064023009756b4b7590493cc99851d9aa71e1fbdd90dece925d3fce5612a8d83ce113331e10f8aa855c594d1a390e4d648eae4b02307e3a3e91618b70eba32f5f0461e0594bbe981d8a7295adb12f0e8381fd953fee68c6ca187ec21b73243238480987d0600302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f5325914cc84863be7f563900292033878934188438600b69efecce278fba4b3c962d5525f4f5b77d078dbe305c7b8a6023051069145baa387079167e110f5b33d387272bedce9675aa3438a92f1c8ce3c58f668b6b835269fbfcaa4fdcbe452dbe70302047c435bb500673065023100c8a7ce2a35daed48329b180f3eb2491b8d7e89815cc236c75ae21e540f9e1f01b6486848b1f28231b969bcb23ed7b7340230622ee51b09c72fd0c66a0ac7e608195937a2a5f90d1ff694868e9b8e2f36464799be4b71ef0c0ba5718643f2c6ffc86a0302047c435bb50066306402306aff2dce12f9aab72ffdb9ba926a33ceeca6d8f906181688765fc078580794d50573e1757977c33452a1d1f21371d27302304a2fd3c00539555548e93a59a30bf7938c4c7948cde5494eac4170e2308bafe152d38343e407a3bd95301568d38171490302047c435bb500683066023100eaa675f40481245e471fea075c869869920a37d827268593ef729a5de414fd63e7ba51b2f3b6946b48c96f6cf230b8a1023100b46898d799cfdef3421f18f309ea869bb3270630131c2393d390521210ffa8625dc5591c325632c8d33ae6524282f9670302047c435bb500673065023001e57eb6f2ba4016a1ae83a5a52e0f7cff16caaaf2a6571c88c321b040d29e427a392b985a9bda2466cf6bd3b29b3b0c023100e0c6e7a874dcdc230fbdeeafe57632d93931f8386881f5685bc0f9932109ebad4b5d92f3f2b7217a4ec7dc96503383de0302047c435bb5006630640230797fc591badb0236b98b895921f655d92c5b1de76438a9d71f584cc18a87167fb217a050228d688c29bc70c9f46a7601023017f1844d28eec900d7fa21038462ad802904039bceb88c8830e7d32e6e0744c2f0211cf7f593642b656a0ad89b2731ce0302047c435bb5006630640230724f3486cfed405a7ab78be4f0d5464fba284498d7275a50303bde70898eb47090c3e7c51ca24808b0c1ad580b56adaf023064035536180a13ea0a0bf188b0e2d8ccc9694cbbcec05fb61f806d07c6f742d0eb2f4e8b2a17c07b81a855587819fd990302047c435bb50066306402300a1a65458f107a6a0bf7d96e730e09a8f7e781bbfd06ce239ae914ef186e40cc7fdb1c08be95b49de026bd10e1571b990230162f4c06aba9b350af2504d6b479d935cf5156de688422c646d97fe960540fd19670fe1302d7aa57088e52b4408daae40302047c435bb5006630640230784f9511719d61524b866c3d7ee7354fc37c02ab18de07e6b9007d68786e00069ec236a11845024d20d65c1f7b6789a2023027d20fe466d97bc82214ca37bd5b89a823d94e406618cdffe6a455897a9e0a7e6547a8bda05694a162bef4e47c0382830302047c435bb5006630640230574ebc894021f0d094b81f0445d70dbf47a22127fb47e62a22a7f4a0793fa5dc274c9d3b97763b58c743668d02843e8702301263bb1410de9ed18a03b028e6a7798a0d3be516a94f4117f5be1ce5e73b691fd32ceb88d82a5dd648e7c154bc50358b0302047c435bb50067306502306bbd5f4fa3c6e20d16605fedbeb1b3343e2127bb27688d977ba3620f95ac267cd23ac5238682f253bff50070a4b4eba7023100f7562fa1070e1ee4ae0d74fba5e6131d5e42aad0cb6be08e44c25cfc7ebf1a07968bc984ad4a12c985dde4137df378860302047c435bb500683066023100d666bc122c6b10ffa268de4925a5592bacd0a1950886a5b76796a90d12abe9e881962810e3299f3fa9d67a266922b250023100a5f9b65a86a2be5b272da6bb913dd5f74596347e409b7a589b812db43102aeef4855eaf7de184fe09951693f36c7bd490302047c435bb500683066023100e990e8b616d1109bde818092f817f4b196ddca85905120eacb68ca3412b40372d54065b13b581dd1d28976d47fc12b69023100ccf7cebaa3e2df0b5386055662a717517109c07ff851163cbdfe722de84250e02d6a37189e8f0aada24f99602a70fefc0302047c435bb500663064023028adcea093148565a26bcf60e0437780cfa24464b01843e1dbedcc56249a2dac382907d4009f72337db8ab8d8da9263d0230087d1d23947f7ba581cc64e4c6aff769688e37a865be5c96bdc76e7ee7bd17eb11b618e1400b552016d0f02957fffcbd0302047c435bb50066306402301a6d01b95f50633f239f67a750d2fc10b321b1e5068923a3e3948d49d506560f5432cc83db6c3ad9648b5789de42970d0230190edcd5e52cf647e5bdafc30f0b5961ec6a180b06182d1daaca994c71d5f30a3aee05e49fa32aa38f83292bc20ec2310302047c435bb500663064023074951cab569bb440a699abbfd8563e01912c5fd6b567251caa9a7e964bc4cda8b2626298376a1233ee566726b332524b023067a7ed53bb2328708710b3b4c76414646a191aca2ebfd3ebe9ccea61dfb1154dc31b0b11f1d5e1a0d88d5980f84746c70302047c435bb50066306402307885d9774d96ddce4fc6b1dacb6f781911e63015b9e520378339c92a8d93724f980258ace53653b3b96e98e2c843314202305f97c5be93e1e7686d8a991a917b3cfb2dfb12f9bcdc715fec96a95665a71ed81f8fe3d577fed25d12502b05f9fb0fbf0302047c435bb500673065023072ebbc31314dff6e0f406347ad88bc72a0f36d2987844c2e42685c3da602468c0133ec49fc3901c3d0c56bec0290acaa023100dcad1af4db73955cd8813b24b41cb6adb52c450f2e518b1f2e631e4020295236821c2e03ec2a91b215de37af6bf67bfc0302047c435bb5006730650230430c39b589675f40d7a57efa0b7614639d52a056067066b1de83b29565a9a714efb5bfc34eeea35ea4115b5797b4aaf6023100ed7582cfc8282ef96357ea587c0b1e18d5723bc24570132cfda2a0727d9f326519946fdb6a7a4f10111b30258fdb36670302047c435bb500673065023100ee7eb6c3d2bc54e76e14436d1ebad3f74d11543a46ff73f984eab91c1f651cf7e795f5960ffba299bf2780563a85345702301ce769d4a1d4f102238ec737a3135a2e60bfdb651fed969f21004e5f5cac2f9465ac825d6196580a0bb5f63ef0af59ef0302047c435bb500663064023055772ac7e05407bae08a67afbc1a975cffc0f29d722c8540f461b19b6bc09f1e9825ca2472015e1747dea47d61939fb7023029be236a78ce9d7d95aabf99f5b1cd6059da3a23d0ca8e811b26d2bd523de68f776342a458775fd551a81b841c6a5cc30302047c435bb500683066023100c6ae3e5d5d8d76a9eef355b708279943f57745711e472e3583169f3d62a1fbd6b462a9423090b7da9537bafbd8026383023100909312737fe7706c77e9fae9a962005ca6e0ac4752b85be6738029b67ab00d64f6a11842ffac6c8a3cb3ef08e570ee5b0302047c435bb5006730650231008007648a04e93048aaf607ae0c551b691d65ff8e43fc576e50eacb32a79271ae822a98bb84f6dd875d766ec0e9d916870230544bfe54e7317f158a8908d0698d3d02d48aa5fdff1d65f411bc9809348ee7ce10bf0915da7463f3f9ad1355a7cb727a0302047c435bb50067306502310094ddf51302afc73dd86bb3b1c610c71e12e5d68fdfe2f3b885c3347fa01f059d8e09f3659f196d4f21aedf4d3a252d2302301c7e3cd155f4c17303b2be79e5b1eabf46dc5d49a05de08c8cac107cc8e61da6c2de2cdaef9a7a42623d216ac742a8280302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023055186adf6f14a3ff8dc23529c0d2e02ac3e8b4a195f8f7f27d06e1493be0f4eba7eb84659048bc7a13e33cc5929553a1023100d0d374d5278ecaa545305c22e52d1521ef5040fbf82f633b2ca36f27fbef4db39e0fe9525ba9ceb2c3c00ac7b070cf4c0302047c435bb500663064023034187bcbfa09aa7ad192fcbb4d1c0c67ac550833acb4e21daa3c23c6dd4d0d913add4c007a39d5972aef1a70ef3a64330230770459917b2001a8e2a3542004a4c6bc321b4edf391a8e22f0f00103cd331a6aff20e54b309988f5dc0ad437d59738110302047c435bb50067306502302702c2daf5dab7982ca1ba3bab3aacb255301b839cd0cc820cc4381d2465c7c2b96435ab0f8c2eb9e5d9fb758d44eb05023100cc8d5bf9caf0df1956ee086a3da5e93f0c4114280e51d070d4870f1c41f388cb988ba2adee89d54d60ee9fdc627bec840302047c435bb5006730650230799e6401dc11e8ed6507dad2fe566aed9ef8006873efb2625f26c43e18d952baa773330e856fb075ac2ea811180ff951023100e56bfe96d12c5d0bec9bdbb9918370441602279bafbfcc75db71c1e153b4b806b6c74d23479532b6a5f38111d64f86480302047c435bb5006730650230663ebcb9a60ff2911ab79786455a7963461208f408a291fcc9927fa78153cd0a93ddb9e6bed1a46db804e2c6a53b5975023100841fcb6de602b26aedacc8d7520fff8bd244eb46b62ef29088506041a19cdb7a7e8e70d3d35d315ba146986a2d8296770302047c435bb500683066023100a0fa613252bfe110261cb24d3dbc27602764c505aea4a56f33a7c36ae4774a7297d49772d8c48044e2e2d8d2889705f3023100b0c1c856e70a1f7244bd0bcbde315ccda013174b4ae2d3601f5a87d298f08c8982fe3dd8141bf71b0f34208ebc086a8c0302047c435bb500663064023059db81ce7db2c76c70cf4eb97c858fc437d9f3e5ae630fbf6a64447a65306172233f767d9e04068e7934c9dc97c2cc3d023003e00fcf694a805bb70acef3317b7b777d0ce71a6c891bf1e3f8ab4c0ded99338f70dae0e16693478a31ea63223701230302047c435bb50067306502304694ae4426b4058ae7b82a845617203e66772877e6180a8935696b6e5ea1679ac8a47c1ea751082583087b3ad78b8721023100e58783ded259bfe7c9c52a7ef783f1aaa1e9f8165732719eb9b45838a507d6b79c3067db07f07d1c5b22ed994ac5419d0302047c435bb500673065023062527dfcfb308f430643b86d3213c591c879fcbd14d58b56ccea9c4916616f839438df0c5eec6844d9069277514b2c35023100819473a3677c9bcdafe8a269cc10aa1adf43d03b325654bbc9ae2a79ba0b11da1c4d3db1c0f17e6137030ac528494fa80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310099f299c91a23cd3955e2547739daf1e1ff88809b158c53f9276b9efaa268b899f4bb0ef7e8edac03677541bff83bc6aa023100bb09f23df21513cf9954fd4474211ad66edfa5f534f5ab128df7961df97dfe10bf5f2c70533a6f25ceb501503a6b302c0302047c435bb500683066023100ecbb97343df4140b6ddd16e859d6c31c3cd70ef79bcb4c3be8e74826aeabf82c1a475c00532441cb18703390fdb157ce023100bae7ca94735f92906ee09f62ae853a950f235802308b53b102159cc049018677c7cbdb4d6f67d728a044772b899c70f40302047c435bb50068306602310097c7af09dddce27aee9824b1bd50e5ba065c6fdeeb48f4e02a0e0c0b9a4b8f3cea871ea9ee3e36d7398e87e927a19dcf023100db45ce6a3d51c0880ce283d3f60391bc396e240eebb241ca2d67b2a8ca2ca776ce685f65047aeed46146cb3fe5a2dab80302047c435bb500683066023100a0ea386a58f57fe3c71f99dff79d1e72b7792494e2e2f429634c00469346dba326619a32e5d1f4b4c5381d7a3b0d550a023100c97d84f27f6e0c5c3054c26ffa580482a73c79892fda968a5da0e3bd3fb3f24578e53fa1bcfd9b735e44782e9acbbf850302047c435bb500673065023100b9ef4255e7e78467e0974b4c90cb00cd8c535bfb04b5621031f0e4fd6b1c5564cbf60bac0f5c752c4b4f2bead22e236602303beeaf8a9f01b6b149c5f59dae53ba4d76004c484a284a91e3b95724817a70d11d0ba167e3f95f6e94c9e8c3e8966b640302047c435bb500663064023051fd1e75708494b405582f91a3ce94d9d11e813c32ce8bbe35eaa4bd15f06b9c2d4ad49923bd06b15178d8cbc2bc975e0230218571774ae1dbcbf549f5fe2d7d8210d86e047d03eaf787a4b4589cdc20143285be796e8ab6592a289f668681d9152c0302047c435bb500683066023100dcaba26891dc56b5f8f22d711c36ad83183c51a543f14f9251fbcd6c3bc1e0373da912bfea61d18dbb64abfd2af4a557023100deb8ede27d6ebc177c646df2816137b65d43a4ee54193f010382cb0ad19dfe5ad15825ffc7255dd0749059517df4a4790302047c435bb50067306502303475140e9ee3fc74f5ddd56ba7b6d5e13812b304d8066241344d89682a4775eda6679d127b76d5074e8a41cb4fb71a6a023100c724cf07cf0d3df4e8ae5e849b660332b1d8cbb5b987d3499e049f66db7b24d216db15580cc04bbaea279ee86f4612bf0302047c435bb500673065023059011855fb9fda1a4a642ff163c25efa1500f332ede7a95a9a4080ca8a285b00b916a450a93fea02bb973d2af9c56df7023100b8edb00ad5d40c1cd4bf437d100c8e307f029601de7c7b256e9377418bdb9384d558bc16b2c5c860edfdbda0c5b7e7260302047c435bb500673065023073b90eb24ae8aedac5eab6a044bfb975e14762ebdfa15a09d9bb2a180a9fd0900d05aee875cddb880f4f6c5240012ca902310082d202306baa299ba0862ca51074618edbd9f81aa29e4ec7b15ab397c85369d603e9c665c9e30cfd4af253e79c03ad9e0302047c435bb5006630640230093f6e6a8410ec18d69c8534a604120acdc403e45ef52420493f83aac1a5aa713c6b7260e680ee85ba32d4a47696918d0230632438a99eb500f2735d78f71b87f481ee7091db286aab5065c81e7648b2ebd88147be6451084c4f3582c5f8df4bb7e50302047c435bb5006730650231008107a16636f7599829b02c8911a104a3c46514c89af4c018d28ba6551e1eeee50b5f16dc638e0e533ba00e9788e78e840230097c93e7441f163d0298fff61feb31225007c3b0e84a83892a16b7844d8a55c3a63922cf241334bdc7f7f6409e2f86280302047c435bb500683066023100cd140762d1cae81947de404b51d2e317ddf21ce04f608c267d9efe749ebc2d4304f87fa9120e1605d20b3c095933affd023100e2740c363a89ff34ec86e52dce48fb63ed1e3c05064ffbe5e4412f55091425ec504413fd541696b25742c7978d4f6ef90302047c435bb500683066023100b32fafba92011240f372740d6f40f4bea2601e9584b4c9c608eb008dddbe603cc886e7e187c864ffd704545fca6e1e06023100ac3e68c6992b1c1ec664c3d154b313cdcd5e978acaf125baa611e172453985ce796451f288b00c80b5176bc053cd79610302047c435bb5006730650231009242bf274ea4e4a3a13eef7bd4546c17233ff0ab2dc4a29f54bb848faaafd93fa9fea9de640956a57d445da2804cb2f602301e109a0b5197ea467756e32109d7a26d1e485a7cda4688599ee0816e2b95a4c5c677eed3f08fd1b962f5de39fdc6ca580302047c435bb50067306502300859bad642e7d25c44dbed01824d2c5418bfac56e0ebe7876bad00b4d8926a943142fecff16ba92b03896e625437d45f023100ef1228115ce78bc39bea93480be823f4b241d44a3591f55295d84567a8e4afa8406816bde6e011e382d27aada389acdf0302047c435bb500683066023100e8cee1f6a57ce40b1d10a97d7be2d45e902712f6d0d81113cde48cf91bc15b0db91146f5068ae6bc85cfb6f834c3ca27023100aa7b0cd169ffcd992231417cff83168f81d2fb14118e623c640e03b4a240dd7db72d02568622328c9dd2911cba062c7e0302047c435bb500673065023100e9fa679face32488167dca36efbe13fcaf92436f77426a39fb8f4966112cdfe951c5d735670f100a9185d8530ad014cd02305eb06797779c9fe6906838a91bbfff8a97f2a197b796c1f32dce048635733b5b60f3fbef49e40795c1c1e94f3f9294c50302047c435bb500683066023100e69bcfbcafa58191e574bc60c148745951dbe7688333b26f9f3b30a2071b30dfab652a761ad9693001204a3e65812e3a0231008b1e6fa3a3d208dc3ed0744940c7e30c939446b2695379e97203bef2e4dd76001ad45abfcc401e02088edbced74f0fd90302047c435bb5006730650230483fd81708e8a85bcf594ee8c8b76534df8d8ba132bcf08177e53cea0cfb7b9786912ace0a999bcacd84350735faa19f02310086c1f65564cb45715e6636bbbfaf01c23044e457f68f9b99ca4f2ffdbb644088aed0cbc8e76fb32b704b5be981450cbf0302047c435bb50067306502304c02ed56623a5e5367c5245eb8f0980485e0239c94de5cb4814161c1560cce748b6647d4c66335e845341a291290b726023100d49b3977e4a4fe01d2b79e682129c1930ef36a664ee537b061d75f6922a56f1343b4044418d0b6856548cc41b47e207a0302047c435bb500673065023100f1c557c2e97dc8822c454602964e8156aed8f50f966f0b936e6c912f1d93313d0b091eb7c58bc4d1ae1fa497a807980702307db041bc99c0c30d0eefba2aad36ff63f9d1188153690e72d7d9190e6d2315951aaf1beac7cc5c31b1ed0da1261d8cd40302047c435bb50066306402301992f77a86757ddba8aa3073ed29738a3f7ff9b074d3912909c13daed228ae1544f33aa8cd17b824608d43732af5b5e502307ef1a80f8872d25fa625301cc1b63f39a7b8c8feea1879c031c056bda57d0ce66cae83f5e9baccf3695acbaf313f0e7b0302047c435bb500673065023100f91d449d8a3b7a3c5f4fc6e848a09ae75d59e7f7f2c2af7ae8535515e85bf0972802009f71e2a98e62e3e54a52f7db1302302a81506fb093980860fc97b5673f4c03e77fe7c12ba49e29b742d2b996ac4bdc4635a646245bd4669a8983c1207fdb240302047c435bb500663064023071c2ab0110e0504a2919830a286013de9f73775d12eed08d5950195e5f55ab7c898c8ef5a8b13cd5e3131bbf801117ca0230589a1bc6d7d27a1821eb4e208df7e0161a99859e648f446bc760f1ffb129a0fbfc57671fec42c68bad941b9614dda44a0302047c435bb5006730650230300322edc01f5432b4a4e2ef72572ed407c23b690aafea89bcd3ce3ccc8202335aa0430305a61c9765b169d496facc540231009f219f608e3ea0303148874ed8151c44741832d6c5ef23644318d9ca75f3f85df54739827c33a09d5295624783572aee0302047c435bb50066306402303768dc8914a23089c550dcd5d28082605bc0921d0ea187aab38bbc2899e2afd35eb87a73ecced7df9715b5376eba6879023054fe24db31e89504d16c12ada0a69755ddd9306751d40fd445d02ab864ce45887c478597493bb4540ff3c0db2cf0c5120302047c435bb5006730650231008c154db62b35320709ab8c8fe42ec5546510a2a7248f1d9814201f12e8671ed696e7b2983f60b8a92e99bde17f2f7136023001a3048c78417ccd6a0d2abdaa66543340c987df21bf4d61ac90404e891d3040d340e20e5a3ec84731abc711269d125f0302047c435bb5006830660231009d87a2119f52a2aa32a211b4b179fe22fcdf8b228176f34dbadb2b18632dcf1650ae2d0c9a1811370c94ba431577e8ff023100a0f8a3bd0c4c625b60cdcb451dcba694cecfdd1afa0b716f810d65ea7744e7ef1dafbb631d5026b966158fe04ab529ed0302047c435bb5006830660231008e2a75e601610a7b9ed31fa916e9733012d48c6a67dfc5b0e8f786cde6d4bfd422bee7f5a62a66aafa3ec5f5dd180804023100c609d2fdd047ad4e1dcf482b600427f70a73ea25cbc287289225a5503fd0f4db101f6f53b9b5e3a2aa7c8113248ec39a0302047c435bb500673065023100ccee8928aec0a4a638b047077a6684a7c65a8322994b112da5f7d000e3dda9943d8b6aafd181eb288b69b7bd615d4928023010e1ee22a504e3b4697f5b86a27f63f8923ba7b317f75a45903e7ce6a9e6cca0d8c7dca59938322be1b99f3eb93033830302047c435bb50066306402302dec7571ce45b4f102030b6de5e530850e540a11024adbd5bb3ca060d5096857b79159f6909421c4f4d0284e665b7fff0230557f80bd826ce79373a600cb34a2e44c0060760348e9bc6b6f286a2fa8e4df82c85a626e10b880752e42cf84dba6015a0302047c435bb500683066023100f9054ec426ad268dee9344d1ce781c85c7a3a300747d12eeab5fed8f11fdd383b80597eb99b5ce96d34da1492b459d69023100a52dc4c6e20c8db646b9915227dcca6917672e2639404ecd65ecdf92969ddaea138f8df75cb413c91806df298b9c89b20302047c435bb50067306502302fcdf1c51c7cb2bc87259fa13acef9ad1dedd7d3931ea876def20ed0eb61fa9a124fe9860eaa21955bc59021c1b4579c023100b397161a43a7e6c7c4bbdfd8eb2d60ae2947f91b37b707111c2a1c1d383842e164e9fcac5630d3a6c1b5d7920d19ea2f0302047c435bb500683066023100b24dc709de756eb31e61e1d750acce81471ff9d612415c60b2ce4b3afab482178d740dabd513651facc86a141f58d0ff02310085d96ff7af2f1c63c42690acb23308d8c1344bd3291126683ae1ce9273e4ae6e870311b3605421d0fb4994c8c6c5ccd10302047c435bb50066306402307a61fe3809233f33bc3efdfa02d7da0abb48b60b524937f346ba1ca6406bd7e212c98f07efdd1c07f819249ee7906bcd0230754c822e62bfc3ebd8323b4804fde3f8bd9fd82f2cd7c100b2ceefecb3c5ae68be6727bb5d582487350b70231b790bf50302047c435bb500673065023026dffcee58fe3591c6f624e82a2c5ffd35350ef1a679e7157e4c47300eb9f5efe88bea930005bab5cfabc70fc8de9b40023100bce984fa49b2868b7489a4c3ea18310ab5cee30e359187c9f9b990f5baf4826514ec7712dbfca81d61946a87d42c865e0302047c435bb500673065023032baae634fff66d9573dfa537d6db8b49ebde89c06d121599363daf5cf9386fce3ac1fccc79449f92a58177c9355eff8023100c59a581ad1586713aa492489601eb648d93b6309a8e339bd645801a3ac8510d1fe7589a28c1c86803f395284c5ae8d000302047c435bb500683066023100ba71c6c92baddbc6b20b5e4429cd2d4634058b1abf9787e943984802c8bd3218e6574fd9a0282d17f9ab51398c01626a023100981d24dedc43970b3de243d9a8e6cd4a751f81d3c37922576c0716cbbab07a0b504c3a6646f418fe499c9de4ea7c062e0302047c435bb500663064023061507a656b1bb45915d1b8aa644ee5ea9877515b2e14aad8cbee8f9c88437922a419718521a1ba5295f2b2cc38bd5da50230388cdc19506eef08cc9e9c9ab3c9617e12896003776ffa4456e2aeba52fc09988aa26fb6f59640dc27fb9f3ca1f9451d0302047c435bb50066306402306797f631b11e4b912235cc4447c12a65d6e4bec42ba15ea8b1738b5f5b9d1746c43c7304350382d071762feae5c126d3023047e58c65ed854270bbf62150f6d7ae63eaf7c568316a5758bc9da7d1d7991ad18284a4f0738542ed3e4648f104baa1800302047c435bb50067306502305a02bb7d284f8d24df24c5cdf1a0b7d0f73874b50e37df9457cfbf983c521cc536a0e05d96ce9879764e114dcbf7eaa6023100f0a7c33370d3d97f1a4890a09601eb57eb4c8442b85a60be9cec7caa7531ce4bb9a8f7e1caf86ff3cfdb622b83d9df780302047c435bb500663064023041b2aca2100db4bbbc6319ed7901d87eeddf02b031b0023459b00087131995bb7a2b8fb29bf8f7b20cf6ee0d1ce7a26702301d782a96412d7878b25419a5ef557a070a86c0470bda75ce7cc9355bf831b658965d8bea042c78853080e810297585de0302047c435bb500673065023017b0fc0b61a273d0563a1ae5992f7a12bf9715fa50a9da2240d770ace1ae15280decf9c49844943dfd8320235542a34e023100e2c4be5a52a7b793a71772888c4eac74af6ff308594510983fae3ad08534e7377ab1768faffc0d580c4c34fd4aad59730302047c435bb500673065023100ad9642f4ee7393d1ee4ed00b85351673f7553e9ae0a93c663d5cc2b2cf0168864e0108f96d8f1ae6ad0146b092de9588023077e090fe4f16599d6fa9bdaef323de87ddb70711c4f264cbb4808109a00652623177848dceba9a3cfb9efd3d350a9c730302047c435bb500683066023100a66fe6b9b627d7c131f67e2fc0463c54815293bff1365276485fdbf0bdf12b7865a923478c0b25a26cea725507eeca36023100dad06ab33ec501e81564b27784d953028d60d4227bd88166cd467e5c2a98d4d6012ccfd19860d4e3e40c2d3bd8d2511d0302047c435bb50067306502302849f374e77f30447f8b19abbf26e92a3d633008b3ff863aaa948e024d192db6d0795dca584ddaefd26e7a002aa6134c02310087af588a58e8ab23d953d13b714c02c906b9b468c71e1fd141a12e353a6df34fa1cbc94edf23960fb1be5bc6ad629a0f0302047c435bb5006630640230691f2b5aeacde35bbd6eff330c975b7db9eadd455c1c6b2aa29d0c8f7c4cb9c19d0d83d9ba26e55345a579570ded2e6d02307008b9d838d4680b34b028aef89a69f58f09585267802e396f4413887c4969186749ed658374156143969dacd22abde40302047c435bb50066306402306493db04172966c62c867889a22f24d66a49a88580293c8f0690fae2a95f5bfda28759b044052a4fef37f2b878922a96023056ee0401b84899f352bc69d757cffb65fda23475328618cdc503da30380936ac35561dfde217ca374861176494358e2c0302047c435bb50067306502306b3a88cfb923faa69f382f7aa4914157bef7773cfb5313ee80ef120bc6b4a66146e57c3490f7ec8e204074349e24a3d20231009ad0b093a5ac485fc00acff934df553b963436c0bcc4f2d5b180d952c32d6f46e1cd48f561c1f375bd4f64df004869480302047c435bb50067306502304545371852e54e43bee5f66cf9d9e411a42c5e6a6541880535d576866e70b1225ec69e76b3939a0745cf0a8da4345673023100e4583a6042955dc19471523ea8b92ef124a2cc8c13a24542e19bc84a00accaf3056776d5a0718ec911b2d1a70ae040250302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100bd9cca95b698b8be7a993103b456a06d0fa741c80c9dc0bd19d23e038bb22d4004c673600f75ca3a1659b4be06e2c2920231008e1ee004fcf44c26da382e777a8d97c86f50f0e998db931878d51699d8de70dbdafd8f378a0d1ac07b6cabafef1f4b270302047c435bb500673065023077438b2602396463d1785b5dcd33f0513565c62ffe0ad0fdfce90594af5c2d22ef7708462ca5fb8aa89a0188e65ac4a8023100e268061641cd836e14192f9da3f7029565184eba1ada39f14470db6dc3b49036b27e47b293f75aa5eb50f33724b448e20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e5ad63429c57a3b61a07f15709565559455483b7f32cf1b8c6145fc07e19f089467d7f400277fd94de7e2c8a64391508023060f84a5586aef33ad766913ca5687844a32118078d042b87353ca79fc1749b1d7f022c1b43e6bdac55dbe5e0c2e1045e0302047c435bb500683066023100e521f0db7a67bfc12af7551c48201ac30cc36598b4e2d5c728c735956379d859274c515e2574b5fd194793a5fa519d1c023100995b9803afd88ca1620a91c84853ac987eae24397b0a5e3d8a1e7c94caced7845fe273ebdaed0fb4e2da94cd84874df50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306d552cd9632385f103d64e0ef16282141bae64c9bf36bc489e5d493a000b3a15c77dddcf820f6276dd768e01e7ee4225023100f1d4de94d6b70213ed0517105cc2ecf63e70f9d6252e54c8853a9f2521a39d38f73bd4a29f5d863509c4410311411f090302047c435bb500673065023100f05f63c914d383f4476a1a6a706dabc215403320e517fe09d20612f7f9d8870c19990d335d0499ba80267fde98f851130230579a8a58609f005654aba1dd51fb763f83f048c0173a0a7a48ae4ee8e217d202a71924cd1dcf9ab556e0ec4820c658fe0302047c435bb50066306402305978b63d387bb466b798670e5409a0d665da600acc47a0d69644f0869c93f9a3d3ed216f29fc8b7bb9d616b88951bbc702302a28cc864150cb73f6fa08ebedb399e8c45d7772a41208907d154fe40063ca0503d6ee8a18c98d91ee0ca264e23f0cb70302047c435bb50067306502307e312f91aabb1c60128bcb1123cc1dc64a6ad8c9e5cdb271b4b284ada034926f2091620c9fc2bc10a3ae0e31a613dba00231009b813ba0ddda7347aca444275b9ddf09c1b62f3ec1f2431973708923a4f0ba379afd03b1bd083f596d00bf2732e3c1f30302047c435bb500673065023100facfd13f3f013f0bfab3eba5b1038fc76548a1885761584f632991e73adb18ba71a4b4915fd8ef21face28e9ad1e209d02306f9169b2e67c887da12374e529b73cdcdfe73e05f4fd0233124e570b3105df687ba91e33ea14d60ac39631040d63e9cf0302047c435bb50067306502306ef4370a956758aef21f89372407b7c44847232accd4cb833322ce4f31e35ed8f65134dc9f337e4e601988269d27a6fb023100a450992f756cecbc9b0ed0acc67b97b7514bac4613cccdc31910743746fdf8efc7eec1191f19e9ff5aeacec7a644a5390302047c435bb500683066023100a6cccf84167a590f3a1ab90660fceefba050de03f60d6fc68f14f1b3e98ab7ede1deef1bba7260f0ff23c91bc89abfc4023100b10d908f064d401ccb2898e4e28f3712f09b72fc68e18ab0dddaa69224e1befb8833b2dc5e899cddcf20d1b24fa1b6560302047c435bb500673065023100a6ae20d726d333f09b31d76c5d1d5e87e309d6940f189fd12f2c53ff20475099715dc40a7c606c00df10618b44d8cd0b023050a254ec90d727a7778b35cf5522bb7ce645a2c8f6e165ea682882729d5c03c9938b2a3146d1500e122edb6233115f5a0302047c435bb500663064023077f1442eacc4884f5ddb8f5c0ff225943e2cb6a0abfba9b43aa66beec4334e3f9ffb9a28762c444970c471fb7a6f39ef02302485760fa9c3861a9a1d02e495cee3899b402746d1c55bd147b8cbb1eb5f61351084e16d2c2bfe1576e9690681bc14e90302047c435bb5006830660231009c71c67b053e1fdabc8b92c5cb20d3e0905fa3c48518bf0bfda3069ee7009455dc3d63fb749edbfa666fcc34d4ee89dd0231008e6667478b75ada6dbd8552e9483b73542ba415d2314dc80fb1ab9cac630a2261dffd015d29c183ca80aba2c61eda6030302047c435bb500683066023100c9052b6e4201f3b6d52948e4f2280636687e202eac103ed4a1c01681707f0f355446137edf1f2d56db8d4723c175986f023100ffe9321c633b818b43735388cadce54710c561c105d7ae5392d96fd5c8043a51dba5c66badfa8944f9437c28356e041f0302047c435bb5006830660231009a5689419c0065c69d9c2de4c50083cdfcb1af2510452059dc6843bacf4aec54c7111e4bac794994866310d5f9b679a6023100e4ac8958817c50144c847bb5238c47a85bd6074ece3c278174dab3f5287580ff9543f268cf4f1b81d42bce8c2cf7979c0302047c435bb500683066023100a18c0a71e904e920a9f8e70c796e03c5fc084cf7130840c61b0064be627a35f4ccf0f0cf1892452789643252c7fe6bf2023100e80e8f1cc4148fba029ccf3a84998a64a8ff328baa4d1e44272282591de987422958703ae003dc59b50df646abf961070302047c435bb500673065023000da7c2ae2d54106b3ad3b4df6d6c6a34deb0cf4f3b3011efc3588a61d0718f9d0cf66f5ac029b5b20c99189e453e7c6023100aeff25d349c63892e17502b2afe98715b3c98db175533e62c2afa685d2fc037030058c9d67b3801a0760e315d87c3e9b0302047c435bb500673065023100c5bf4ddb69c65817ce7109b15142989994acc2f5bf4d3f0b46ad0b4b01c673cb2732f809cd63db89dd4f7f1d639513e40230156a5ad726dd92650acf8bdcb7644a10089e73f88a5176e0be8a7b636a6731b983f17c2e5a742b2de588f07dd3a901f40302047c435bb500683066023100f13c69c0a1e1daafcf05cad456b35efecbd94b8777ea0c6fb37b39c8df4a5fb9bde982089f81b3e5b0e6437814f411ad023100b84ae73c607a0ba9223718009453cc50673dea38bd8f043c82f9d06803ba252229cfab3b5408aa8efcba5a54d70dd2b30302047c435bb5006830660231009cecc22ef23051744642d4af9be93f8b8053ebc5b8513f379e288231f787d5887e3ebc8f904e88a1845830fb6cb091f1023100b0720248d6ff68594e871b306f1090fe4d8b244022c7b37e384c9080a60b153ce5329aef5cfa404a490cc4afca0113c30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307166e0c3e2fc036081431891e24429aa5eff193ec61069042177f632fabb36154233546e2a905aacfcdfe24c6baa800b023100bd708a09a8122cfe206010e39c4bcd10ff19c196c813f05b74a5a11d0fdcfbc22edec89177f1f0e170e415dbf7f2ef330302047c435bb50067306502307e933a6af32ff73f751ed88a32e16120e916bcbc999aeeebbea3164163fc4e8ba185dc5e5485e818e044eb45453e4091023100e8ba6b5d64d57d4bb44a10d844fcd12f56489291f28dce1536fdcb5e56a77185d365519f4c79a05f7a042e7e8f2b65d10302047c435bb500673065023054d18646e13faa3562ead757837f8a96748503b97b76f7b7f5bd4a9780f7a5b7df1cb338c4aace78c223cfc5e8a69b5b023100dc2e01565697e74579a35043229750b2f6dc197d601c9ef30ad5c5cc276a0e7d089ef5f5fa38cbace971179c39d3d6870302047c435bb50067306502306e73e02ad31d62d83fb5aecf378d35c777ef8f2487aca6491a0ce0722f8204b061d873ab5cec076bfd0f9827694d9d0c0231008573bb4fd1eb6dae69bba853f8f858ad4205f6089253e51c5eeda172bdedc4314dd2c8db8fe6261ce1cc148b9e96581b0302047c435bb50066306402301f6890ab6ff65202f553de629f7592866301d9dccc8f33c2f496e4a484c1e5e4399d762060f318f187851fdda145f22302302401964ddc4e706b596616c98e7729bad6ddbfb54eae4a38e46a9c2a2ccf77d324c8b0d0f9aa002117e2580c04c5c9160302047c435bb5006630640230563ba663972509c47c0c6d6f63881fa16d5e4612904dc0bd43c81861c88120112e218d2ae4c71ad04e9b400ad5b10d05023017546cfab8d6b22e2cc8ddffb0730dafe83a974792742d7fb9ee6c0d7ef5c9703c42920a5ffd6d990192edceecf684bd0302047c435bb5006630640230111a6230a421b38bca90cde46ce7bbc88a8fd203865d75012b1dba8766d70a9a2dceb9633193a9488dcb67f477b43b0a02302a68482a99dc90463494ba1b681448f2a7bca6b8a1f8d00b9f6f5beb934c1169902d0b96e3619f2155032a9239c77da40302047c435bb50067306502305eba7e5c001ab210d66c8f282696430fe052bcdee5e9cc3aa6ddada60c6caa50576f28253fc48eadd107f6f0091a489c023100a22091667ca6271ace410a13487759fb5e96c27cc907255c9f2c30cdad0120d1ead0b9bc8ae797b50c4225f7fc4049010302047c435bb500683066023100eee3be4eebefdc8e1267f56836dcdaf8afa4a9ba08aa99bded7ce99b07ebb83d8328adf10eb90a62d07427109ca781b9023100fe3a044710865c1d0d559513409beeb661ac557ba9bb209323e358d898069b65da41f5ecb034a8840320e61e869e66970302047c435bb500673065023100f47977a8cb70ccd53540693a5b2f03acca99791bbf2301c8baf530d575fae129ffcacb6e6bbff0bbbb9076aa0e46000f023048727c01b5787564a3b7023bcc26330fb53df8415ddb8915bb2f1729339671c2a95d6e677e6f2e214f820ae7a6a4f01f0302047c435bb5006730650230507c5847a5cd639921ded68d93088490368054d07d4750da0462d2c39ea8406d65f84f9d36f2a3f13d52479e152c2118023100c086ee072536367871467838abc1e2122be9a77af23d04cff85dacdbac9f653f9bc07b1261fee035a58511019f803f320302047c435bb500673065023100d565357a5a396769c2e2561d78545758ef182762718486bf04025cc6c9e8cd33b804e390c055b0317e3260982e2f75390230611c052f94a0c1cc69366d0a74e39b1f2ca1d4f1466cacafb1ab2506d8f7f3b7e73629b3da92c46e69a9722f6134eda20302047c435bb50067306502302289205ced425e5a16dc49e4f4a01a05d9fa1845d99f2659834b46afba88f3d55d65ec600463131daf06cc1744edcc6e023100dfc34a73f6affcb8d9190fd866c929ce09c55a06aa6c8610f6110d71738f56a728a1ce51c8447ad1ddc08f33503426390302047c435bb500673065023100a9750f603e5470d90d7da3706bb4609ef2246cd932c5212fd4dcf373ed18e311b350dd2380c70d915c8d52071150e8a402305410b18012e915205f6c0bcb0a039f21c8fe53d57c7407b293bd4af152df3ecfae83fbc64c0de80ca53d99479137acb00302047c435bb500673065023065da77766af1b5acba82e4a189b0a785f78d4a154e35855d74dc866702e53e5e34bd4fa66ae65c2148e10463e0c24b2c023100f6da7e39434cb64fe1f61d7be56fb86f0a8c9b66d57055e79b2e8667d13babd61fef45e78676b6d1bb527d6f4bb5ef980302047c435bb500673065023100c346a1d5e7413914594aa7719a2fdf88ab9a71a3cf8195e78615c5e6c555061846f73d715dbaa8cba543776e6a0c8ad4023027d36f12b67d22f775ba3919786184fa9540bcc0b57ef77cbc9b010cb97b6da9eea5f20f45ebbadfa9b9d30c1c7294e70302047c435bb500663064023032a94c1a3cd4ad8f2ee614d5344174cd19a0e41cf8e72711d097be79715b2fae3f45b21a7677c2333ba40c4e3a03fe5602307208cccee0ed06e97bcf5e3056a2d2d748e39ab2311056ac250c8c7445643c7033a6f68c7b71cb518651f7d173dc54220302047c435bb500683066023100e45f96c2cc9cbe83ac4e345e213443f9981e262facfb3988935e81cffaf2b24ddc67878d8fc17018b19f4b358aafaa4a0231009bd9041f3c9cd338cd3861fafdfb1a08042d0d7981c5069a79b32cb2d908cfa05086197d8938483e8ed2dbefd05ba0f20302047c435bb500673065023067911920e5c8d4c1b1607a9a765e988a1a08df446b4cde422a051e0a0efccb598702d2c7a5ce62dbfc41bf4484694674023100e4ea9b6e5dd4d1b8d075459e4be2d994f34c183dc24956e7e7ff677c7be39b28cd50b004a3b71a926e39befb65ba67050302047c435bb5006630640230616022eb469581b2ba7365401331d4984032c54e285acefb1943134fb61ca3f8eb3c8b8128696387f690bfca22ecb8a002302c09339f0055dd07532e1695b03bd1387bd5f1e60774bbfd2e640a62e3676e06531a2813af37926c85f887c53f5340960302047c435bb500673065023003b3dd51587cce84c7e72b68d8d594447bcaf88a70961040a0996ee1b430286ef62b42aaacb2b50bd2b041f6479471cc0231008cc7cbecfe469b92c487300a92199221aa8410d144a03107bfdd80af0e05253698a6a27be40ec63c0a3ce26c4d9edf860302047c435bb50067306502307a7e0f6359270cc14ceae5a544d5586ff3476a5039051a26c42074c021b44090dc557a66a525d6ead7bb5fec75ac9e47023100e0349dfa638c5a8a67e03370b949069ef686838254d46fd594ae9bae9d1b16ec7c367545cffbfceebfcc5c80e5ba2adf0302047c435bb500673065023100ad4be995ae2b0cfe81e60fdb005bae4732aee3e3dce8225d6e0162fa57998af2b8e6443d3bc94c4365b1123f14fbfc61023052cb6e90df1243654a154f6ac38af4cac51b561cf44727362df274c08982b56f2ad347f8968eeb5d85f8257c8d5569bc0302047c435bb50066306402302f0cee0d23ac7b71050e5937ad2f7956396696829a75027416a57feef0ff03f0808304c265b87363b5ac90d5b9df126f023014d121083cad31cb65557d180b7924f87281e4da96a6c72bb91c1e9feff9684fa870411d03fe3ee97147ca1252fe0baa0302047c435bb50066306402303bd7c6d57e6195fcea76ecaf6a85ea4a147541f50c5bad915c05ef1f62292c305123324914bb81aa77e607e737b0d2a2023064745136e6e2cbc6b82a1d7926e55b0e361641349de8ed2a1514623503ef5d04017f40f94851d636fda53a26836e69f20302047c435bb50067306502305a73226b4070cd836e37877d83ad5c2aebc2fbfbf8643d654c3b8279aeabad28fc152df32cc36d0c5816006b7a702830023100f257f8369786ec8a2f636eb833302b48abab2aded36e2b4a8cd2d5099bfe5df23c9656183895ba3daa9fd0468e4fa8840302047c435bb500663064023032f73f8ab7d08fd482a20ecd986f4a8df3c0048ac5aff8b2be0c474398605082aa3ed2d708791d42942b7dec5eead5a302302061ec460e63231f8c6758d4d2962cb599c4a17a9e2b1f6a2ab479bcbd1112329e04407b6143d98b933981b49c2f4eaf0302047c435bb500683066023100e645ca0298f770f64a21413ecc50981a0c0e2c30cb59c18a8b917cf56eb48b664a39e646594ec7b1e17e0695e63ae8b1023100a4f14c3fe8c8a619d6b3d3bae131a3b3becda831c9801b7a5edef33213c9661d5a5e4df81797319c7dd7ed236fd8e2c90302047c435bb500683066023100e2b3a0b12bba503a22c9ac5993400b8cfb7b26ca89982604ca1ab4764bf20796cdaa9b042f7b1cd000e6efbfa4de2ca6023100db381ad8a29023b89358fbb2a5daad1b21792e9489b3f19be739d3bda3a307f2541babbfca88ea61f0630f4a1b1a0a680302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023031e7ea622a99a0d232c42db9ba8c4497ca4538781a7bd74878bf445a163eea292982f5c81a5a58474d8a2a5065b7fc1f023100f5d4133bb44076d692e994bcb790699030f3f05d44f1fe57d27c463f0700503861bd3c532ef63b356b65e978d96e9b2f0302047c435bb500673065023100f69645c83e6b3c88a524be964ade41fc502e1c5512683518e2f88d28013dd60e06df99b1086d3643730485c8c2a00e3b02306bb37628e4171779f6c3bc4a103e5b4a53f8539a1b7ba2f8c15e85b238adbfa25b0782d0415a642e6b820a40c40503100302047c435bb500673065023074a2925acfbad0c133efe0873b36dac4ae6433accd89019d10fca5a67800dfc35fbf53956aad3c142be1e420d8eafa13023100dc916ce11f633e6eeff555754fe31291be78dae0e4117ce714cc0eb530da66b64582f86c887013622d3813f4c077141f0302047c435bb50067306502301a0f44a14874c5726ff757dda31b31f7e3899e3d728ca2ed20f876a1bd0e6450c3ec6dacb6b2d7de9072a44c577d3633023100d2f6c7053df85a1de3959c0473a36d5274a23b762327e4e7b262b00a4392cbb2961d4b72e2850eb58104c93207a56bda0302047c435bb50067306502310091e7eb2d2bb581d753a85d56c48da10f8de1bffd40f65cc19d45f11fb83205b0cf8fcb283df7290902449336d10cf142023070dc8a43716c51d9fe77dca75b8751cf5500029162ef9c0b2617f3fe2333206143f4fe3da243b8810c5996112d55291a0302047c435bb500683066023100dfa93ec3afd8a0f89575f32c49b3c3a92272b736fe3978319f60fa6bbf7961b324081501896cb889e07c2c2f091cd9f9023100dfd98ec5d63f2dda498fc0904ffcd73a743696786a43485051c5cd08d0018fc69fdf1c649533d7ac44f0654a666565fd0302047c435bb500673065023100e801c0ad657f76187119970862e5c60ddec80b4602bb47f58ae88792ddef8ca59a4c486e1ab8c265c3e0ec7ba933f3e2023068bb4e6c8b64755eedefaf2b46b031fdaeafe0f0f7dd2e7ed8a32aecb2c776f552d3ad0e88f5077ef443adb848587f660302047c435bb50065306302300a2435dbb6b4d83580cc0b1e048de0491b0955d08336b60f9ef145bfb5b896eeb546c394e5ed8ef35bd7cd633659d90a022f1a0700ff292e17597a01414a540e834665bdfd7d167a44109770fbfc00880e726d64074e51a15830aae28abf3d08e00302047c435bb500683066023100fbd7edbc44abec4a7e87a54a7a81027b7d2ef40d34585cef6d4c29f4623f148329896764082b84f7bb06e1928708c3f40231009d6372e454fcd623f363111087862acfc9d031f516532d715da7c6e5489109c85d459bd7f65e9970fdfeb81bb25cff9b0302047c435bb500663064023049562b7fcace96acc1ded258d5d83de12585a64cee0fc1b1783fbf2d9dbbc6b4a334f64faebfb6d0df6d8d6ecbb66658023072c6d466d8d3686b0a373d8637c905bdfe3d5d394784e0a3e1b795a23e5a01d299036f1476cb645ea18670347017ad5a0302047c435bb50067306502302d57f4989c57e05c4c4225461bc450ea710d0ad0c2007bd668fa4c9bc66adb26e7b3169e4e056d6752a5abb5acddd7f5023100a557ee434513e904495784a016a1eeacf6c4e3febf4e37576a2f7352e42b945a81b4852645600ec86676e234075720340302047c435bb5006630640230186ab5001f9f2487080a8490fe6e9318f41371765bf588eb2af835a4dac6acbbb7345e301072a10819d6f8df23c03a2c02300537eef15bb3e1bc65a52b382c791ae44f67162421769dc44eea50a30c7044adc4da233c177704d46fe2f66d195ae5490302047c435bb500683066023100bfd1cac97fc3311c4f1cba9ae17285f111ac97fc7b4dce23e34e8eb8954c3bb49a5b62b7d88ccbbdcfb46e02199170d1023100ce91839fa7f99f57e129be008c6c8627d2dbd82801c6c96c2a9a6f31476e3e9106a56956a9a2172ebb1a36af4c638c940302047c435bb500673065023100c50dacd77a9338789f3708739f6777374ebd084a025060ce04ccd12ea3d1b1263c35c83f4bd295c9d4f5a7418e6dd65302306911f62e7feb12931a5403f4cc58a6cb553efdfa1cafdbface5999784deab8f536d2c04ba30268896af676b6f1b712060302047c435bb50066306402306465b1a309fe400400b224f605b30f44a0d38072832946e1aef2b0d52859e09f0d9ab67a3c0a44a70f30dc0a57f4b9e6023056a5db8d5d625bb896c45f16644570526e8ea40441d01e549466ab49f408126bc72f769aceb7c00fd0c6f6d8b52431860302047c435bb5006830660231009f304b70a6612811d083bdc25fe66c91b691afefad13959e16c84aa6e17e6fd96e1ce7109fb3268b37a7e95ca47ec474023100ad53d4d6c693ce52d90edb29ccaa0b59a734d518421c09059c513a42480e4716b11b4855713fe4b42446f8af24e7b6510302047c435bb50067306502305f9fdf4d1cd072f954371c4314856c8bb5c8dac88200e7145f9083cda03cd2946f70346c4548752028274b543b7d06ec023100f9fd374a217753500b902b4f11f1a6d0e7680bb1c5bd1c0e8c5fea4538cfb93c856fafc64d6a6eb9d2bbf941637394f50302047c435bb500683066023100e46c641d1032d5e5d11106ed223792410e2efc87128cfa4f5578f4ec4dd46e252f9207835dfd8572ace89e1f0df65fa8023100f21be780b2925d324959cdbd2b5a994604ff5be35d5e2d7e646e86f38978370e19e24d9d3645c8afef2be88e5a8cbf7b0302047c435bb50066306402304a9d319e3db26f7beb86295d71b5552e613827202d767221353af0ce533f4f85ec43e24d75ed53f914b5207534dc1805023041f80c138e25ce2df474fb8d28f7731e45746280272c586275c4d1e8e1044c181f7b29d9837c31feafb5b310d9d785600302047c435bb50067306502306fc746c625569b7b9ac4b15c4b4da291c16e9d3820e030d28c93b315471f4e2688d8f9e7e0059a416d61dd4a682adb44023100a4bd7239c8d2cbeeb34aca32cea2d5d2c9f953f30dc84c3ee9b612e73fabcb714478ca77a7b105407d4093a1fca707e90302047c435bb50066306402307a52a7bf9fdd0c16ed6b1d145ae7035487be21961171fed57e4367e05492424f56b7a36660c448897b85dd8651d9d2b102300af1612887820fab5eff3134cec61a920559fadf242cb815be38c0852cb623361ac3daa602beca0a06f0efcc3627f3db0302047c435bb500683066023100fec61ceccd45ab964ce1e935c922dae271ac9627d2aa2716fc5538a9c0589bfaf4f83aca4dee624eca12b51a7425c6d4023100a3f7c99b6072dcbc39e0c3e37a31a787853e15ca8e712188853d871122450a45337332f826b6781d0f09f1ad0baa17700302047c435bb50066306402300934e138f9505fcf8b7651e2536b4b9665eade5775571d896c68a228bdc959b5aa4a33676c9e277cb0f17ff7700e3c1c02307861bb6d21c59c61bd6ba8a9b30f4952af67d586f10620b92826815a6232a114e87662706fdff63c1a7c0a14878ec7270302047c435bb500673065023100e0cacbb96a72a2e21e41dc832ba7c05d9418376c5ad3ccf7e92ad6bd35bb6550f7e0a43a6b95d80d0b339af24740a60d023067e2a9a39e4fc26d43acbb315a6f59c0253115638514dbe06e3712e38d444c72f743acf41941df820cbb0470b68d26070302047c435bb500683066023100b2df6f2d090f2a453282bea53397ac96eddbd34d2afb8c4b210a9d865e77be33ba1ada4afa9a6337132ed7184dd3a7ac023100d24050206a5938e4bb2c8502101925b90bd2b34f0b45828c4cf82227fb7cd5f7d5187f2654b76c037fdbf6d6f33a83880302047c435bb5006730650230653f48e4b89a5520617150b2e0eb7a121546e458c39dd33409790286e555e6ff4847121a79942ddae2493830abc1674d0231008282632cdb5948ba7c9c7adb7ebd99fdd1f894c29a3ab512e020ea8387cad915399474952de668e91d5fe4509f2718320302047c435bb5006730650230708532f76f78c31cb29332384b62691e8e3f93a4a43459f21d43c6032ae4cf8e7ca4229732d5c28b3b8d1a24d5323cf902310088fdb47d6da3268aeb23b2e500deaa522d230446bf8d34709c30878a37651457fd1ae59929a7ebe305be951c208dda6f0302047c435bb500673065023100d4e80700be0630dcb7eb06afe6ed3fef58d010471ae8288ce75628f85d5958d68c5a548dab0a21f87b2789fcd733ae3602307f4276a02324e3dc7c987fdcb1db1dd26fc4202a8171472b6b507144225aa099f6229818e4ad2401c26ebb19bb691e1d0302047c435bb500673065023100cdad70de491303560d9a18d3bbce0b126d28d8ee0e9f7cca2abb0cab8013533144e5f77795162ee7dcb35a0272f0161302306a7be99c229bb6428d27dc810f68f67d160ef9f10feb1f7bcf6000d35d32d14675f33da23d9af2f63c6640e63ad2f36f0302047c435bb50067306502304891642004daa46a76b7402463360470ecd8788b0e48ceb1b956ea1607b49dae50f2fcffec83b4a48c80e0bfc009fed1023100e61251e022bc05734a2ff63039fc7212685294e18bdf11d9063a19a8a67a3e8c0e4921585b973930bee24a38b89980430302047c435bb50066306402304cfc6ecfd9cef7c01562aca46ee84eba4f2b8ce7535625ce5bad607d4cc6262a76dba76c4a5f32e50b8991f247cbcc8402300c6cecb3916eb39ea2e8cd2b3e21bf1a616c58c03e6a3dd9d9e92bb6bf569c0ef519e6be87936ea45eb1a86804eb8ff20302047c435bb500683066023100a446dae06a578ba702cd41e545d33174e1b1555e55f87aed92097badc916c175c5f45d4d1c58bd53bb5b70eb3a50589b0231008d959b56c3753f74bae187067e43f14fab62a1cbb8373ffad9f0c0907c22e472dd10f0c8a08b581d34664bdc17596ecd0302047c435bb500663064023032e644f4b4fabc310960fd0837d3fc3bf09001ab6901b22ab40e134b635b110a9ecb9740ed1a9ce6e186d23bf421d71702306b039837abd5d4f9a57e4499ca8d2de252d6287d19d20041ed90dee3fc0c60f139203f186ad441a99c909788a69e28520302047c435bb500683066023100956aceb8fce8c42fd3ff1d7bdbe66a54c9be3c6c80388ef6214e5aef9e963c88e745f78cc25aa65bd3f3ea92b56a3276023100d7e164c27e27cc738b0d01469ef49c31aff5acacb8bcd97469f488ff23774d284d2bf7e6dc6a77bdd355d80eb14bdd4d0302047c435bb500673065023100ccbe1ec53b24a2d3d7b80077ef9de644615f349a2d371dcfde37c26e236d495203c3354ac2575a1a647597378661fcdc02307551b18f03fe97efbd248ae834f0fc3595fa83b1a1eb88448b0f24879d91214bcc1d6e27bc8ca048874a5177f225cb520302047c435bb500673065023100a9b85315955717e5ff061497f54aa902c91c787e221c112439fa54ab3e83e7e2b23da16849999467e9de16ab8b3ae8c5023001c5942755d722d663b1e71ed247ea250fd51c366843cbb0db4cf5dddd3dc66d1c0c7fae0e002a74aad6824ac1d5ca430302047c435bb500683066023100ee272989581bc70437844b7e6092bd09fa8acda5c3791a8c960447c8fdfbb4590df7bcb1c86e96bbff0e458854fc954602310086682cd0548cf94e5551c3cb8c8b93e831d0f417d04ed6cc959815935d0100c99afda8469369a55006240865d9ecb36c0302047c435bb500683066023100ca58a5383798ca9405cfb93dc33b00235930933851c60a2d34abe61e6fadf17a8b6ca1ab5571cb9dfa6266f6d8807ef1023100f08df45ce48322655901aa232738af7f2d10a9fbc64a7309d170952b8d7364b5e99eb2b53161e33e4796b5837cc11f5b0302047c435bb50066306402301e4a71efb5a548d7d0e1eb015a05600e546f3f4bfd17da38058e5f90356112634671782eca40abc498cfdc5f844f6dbe023040ecbf295c47c129bc768f8e15bd33e84995b3dbc2ddce5d95b11d7c343e8a9a3859de35f92ec06e15dad1a93cb381ea0302047c435bb500673065023100ee39119cc65e3897581371bb9f8f82a8959a784e45032320b9c25dc224284de1a57144b05adbef13ec01d999b2e6179b0230399e7757df8d25a4a59826df41a3ad1453985ca780f45303207b02e22ef0a552bc06e81ef31985e77563230fbf1ab8dd0302047c435bb50068306602310098aee58c06641b0bba2882493f85b843963a8f399b4da37c8d3ad2db08bd2a8460ffad9e456c47360638919ee62845f1023100a5708bcd965ceb98159cce353e1eefeb0e9160b29ff35cd5cee26576aa7612faa084aba2d43fb4156910cb27119d00490302047c435bb50067306502306fb7f5fcc708ff4f690d3715ac52c56c32c1ded930773de6d04fe439d2746901f27bc38c7105caafedfb2dcd6aeb4033023100acad23d773b5d8cd586be18bf83c0b0b0be2c26af8bcaf88fd356c0c96fdcfaffc2f4f77911bef1fada80ac40fef37cb0302047c435bb500673065023100a03accec64709ab1fd6eedc54fef33ad39c58d069da226e8d78c51b0fc175529ba7685e2c92f3f1d064f622622f41c9902305c080c07221d2781d41af8cc284d672dede6dbc5adc5d063f52c6cfa9949688e6cc1cb500746a891789ba9c3844f27c00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100dab29f22cbe28cd173f592a5dd28833653792a9716203a670b55c5504e17d9652f224de00554ab6b3f98047c80417756023100ae882ff625a275d45691e1716eb305aa65a2871299b2028176e9aeaa538091137e3068528354e2a5a9a06ea83bedc9550302047c435bb500683066023100f8a17b934368458285e5d758a380e951cc244cf22952998fa033afab193b48a6fc344caaad2aff33338c23fe479864e602310089b2236f66cc908a141f34bee5d6f08fbf29763975a717470ea8e20b7afca119bdd5b437ba4eecb8578eead9c86caeb50302047c435bb500683066023100bfeb8fa67e6de159ac36507b41cd6e8ace93ba42fa5335c14c5763e7dbbad7a5231a20f283298712161687942c7a4190023100fe021dce2303da96f2f43d4a46afa9edfa5f1086a0c21cccf3f9986f7561cad74f27a50a32037c160f4499fe6f2b16240302047c435bb500673065023077ec179b790904e8201ff4684a09e3620b3ba1705f898c42953316e9069aa99b08b46910481d06c9f0d267c91ecaad9f023100dd192e69a2b9ef5241974c3671ad5300f5aacab8fb1d9e36308225ffd3345842449938d3cf7235dd026984c7175b1f180302047c435bb500673065023100817b849c3fbebe696e2f454bb08176d78d02a717b028f2200f3f07c2c95eefb383929c7d117c411cc4e4db60eea6b39c0230490d4de657d797cb2807b001b5a9caa1f5e35619cdf23fb38395da30dfa8bd9c31cae51f724625d7dfcb3b4563ca77470302047c435bb5006830660231009f3eb4b1b311b16e1f324ee9275415beef19b573a0b1321daf80e6bf535565c5039114adeb6d5c929c8f41caa6bd7cdf023100de82979685641a5587d171d238f13209a59e1572ab98c99e6251c13034dc0a9d379d3cc45842451906341e3c057a7cc40302047c435bb500683066023100fd5587faaaef03fd7ac067115f20393ceab817082235623eb426e8313ec05c2fd53c06e79f3616e3b8872a1a639ce1c10231008e382d154df63a4b24fd91a54da7552abfdf6c234b9999e9b7937c5608257528f3f430df8bdd32ad219231f27e061b0c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009c69a499f3168ad64da2a97a9575c8f39bdcfa255966781f936d1105ef6998ae3296bb6f9b4e04e64299c6567e9331210230220dc6db98037b168de7b201670db6ae47597ea0d4902d98fe85553c2b606e61426dd2cecd873a2a682f05e40d6ac0720302047c435bb500673065023100eae4ae2e9f7ccd5c3c6ab9f3b04bbd467e7e7b4a0f7bf965a6db280b13f6bc5317c2f2077be7f033bcc54bfd1368bad1023021507b89d943fd793eff24e209c16dafc5ccc5df65cd6401a67c5a5c97a999f2c316665ca897a0bc7920e25a2666bdbc0302047c435bb500663064023071988148c32703eba433caa9cede4435032e57e3ca26a03f98ea43ec033585243c42d8331fc42471ed0691437192f61302304f92db5db9fb6245a00772f5f571128bd79234574006c8dcf30b9f6b6f21b15b13936f304006182fe2d7fdd2d64fd5c30302047c435bb500683066023100aa025b5cae069c0bfdf2e9e8bc56040f298e47a51220d0295dbd8387f71fd845e47bf32c5748b8a2bcabc88fe3283963023100c40323e636a0c8e757641cb698b1cbcd4fa0ee8ae864cfa9c8506051f7f7d549ace8486542ac283bb1ed381e4ca1d40c0302047c435bb500683066023100831373f2b87dcab7ceaf31319045dbe5a29a6b42e82fc4d191a18b125b30203256513859f6b96c6afb312a03b79e1296023100b91fd444bd5adced1aee235b25f17f4a40175485e700772e26e39eec9c21734df04c5a6248c1a5b9b99b38d8011a909f0302047c435bb500673065023100e0880b1c24c3561ab361b16234eaea510b3332897a43ffb62940b46d19af7f7c7a2e49d6c26295c536a9a6c2e4c80c0402300eb67ae60daf02acb79f24157ea403e73b5212aa599f07fe196ade079789f070942d206d2642d0748f9cc97b7f521cad0302047c435bb5006730650231009a8a5a0e3a7b86312dd9ed86db0ac48bda1452d2b0c12ac3317e28577e6ea9e9840b9ed2d3321e94f852a39281d109d4023059f637b6857c32a814455737b06e749fee2088fa0b43c256a0c7f14aa004f95a99133935f61a3b57d1f4b60a5e69eebd0302047c435bb50067306502310086ba6598cd308050e5f94a73da3ec2a1d5f26484768201370f6af550aa95554e01a500e4220bad678efe9c4987932d07023018ee5eb4c733f7f6a2bf2b5eae5f25f1d222878dc458ad37cdbdd75af8f22d187c41e649490fea49e856092dfc8f8ded0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230495fc84c566b77994bb69b404354655422b6dcfd644705a5e320c2d8960068df149008365f098e5d42bf8c989d61fab002303929813e102c3dfb4d1f82059488e5f950fa6bf2eb29a492f11d9f5142bf1e8c11f1830408ee095613abc8b2e0bf92170302047c435bb500673065023100a4fc706517b20668e01d822c4e84ad618acaedd2db926fe2457d8e4620a2854caab3417165654b16e6e4272ce58c7cc102302d025a1d82254024a290293e005dd4f00b9eb4aef3d9c1dfe36f088ca1ab9b6692f4e2261c28a7c3a70e82902b2cae040302047c435bb500673065023043410690d0760d5ab498497f71dd988a5f8d47554672ac431608849e794305a3b0441408d2599683fbbe796660283021023100baab5ea09d1726ed4721e68ce60651bcbb9bd0e74363afaf4b279b8189d75772beba12b8304df1174c3e3eba2e1554700302047c435bb500673065023100c422e5f9d3511317c543a79c625ed347c8c7bc8393ffba03504341ac56924913fc47f9b5a779adf80b64d5af1f26c5fd02301b3917ddad328b672a389cc879f89d8f0a827453cca47e0f6f505206c58ffbb3767a604fa2f86900d3456b10355949800302047c435bb500683066023100be6fce7fd8395f0fcd3849c76d5a6f4e6970ee40baae793c1ea6b1b6da9284dfef00bb0f0349ffb0daf46c8ecb03441c023100ae0f8171f0c37e8e52e0307816923c5b1f00f2f79eac3d80758ca285f22b5ce0be1764832cd808e653918033ea63281b0302047c435bb50067306502304dc431c21b65c9ee16755aad48440bf1ca1c9dea307c0cd3014d776576683dfe0055bbbb9fcb2cc3c1b05b3e8e0d443f023100c26fd16b8c9ed8892d8e608a01e7fe3884247e4c440cb527dcf3e4f702602b0f3ab49f274cb6e2a772c477730bc4b6be0302047c435bb500673065023100ce47d2035d38e07ee3507cf03a98628df61c1a88610edb13c28a19481f9593b03b41fd238b66ad9f9c1fede68c3b7ac902302450887861142bc8691a92098fdd35bb6e3e94344c8d42c44393d36850ad450404a0b69db80cea7565c564a8fd9a7b240302047c435bb5006630640230334950aee072caa754acaf9774e5c2bbb5c3af8ff6cb0e5177f0c226c007760fa25e27aac4272f558de1cb27c683bc4b02307e1bd72496805c7b74a7e174653209c8c9f706dcb01465374b3d75fbfddb79943565d25e9f559d972429e09a0ace3ab10302047c435bb50066306402304db692b068e37d498f14215fd1d01600c26a3ffec564a04d57f9c72cb8a0c6916eb53f9c2119207a53704d5445492be702307c29b5453cc329d87aebf4458650d12715bd18e5cbd87c66d663d701098da47670f95a0697a8fd7cf43675208af20a1a0302047c435bb5006630640230300861552f227407aae87f60812c321eba12460605883403e9c6afa5ad0c20d9b8a0270fad8b03d3b8cb39ec78d97eb602300911c90ce37f91d6f8c4bf8f4f6ffbf3873118cc27592fff4131cc7ac1d3c7733836151058b28099a7d0b88964c7515e0302047c435bb500673065023100837a03f98de5508311722dbcae94caa6a713dce40b3c3eabcc1bd550ce867923aa6bd168c61af644e5a9d7a8a5d889a502305e3b82801e7cbfe7cb51343ece964cc97ae688fb644e821fcdcb44459028d9c91b055cbc98279601862cb3d3807741780302047c435bb500683066023100bcae5e683d925473d0c1c4ff83debc04a50583480df42aa60ba6c2a60f10d3d7b9dbbbd1a1394671afe485f2bf7c847002310099f0a92db7a7a25ec9880164a2b991031d81745af14dfec8426e1670506e3b27807f6d2fe736bed2fa38791c70b0c82c0302047c435bb500663064023019ebf535aa5de3de3f0fa9439c46821af333b44c415dca58d8f98da4c5189921c0bebf927a2f6d23a9e193b2cf79cef50230473c2d87faf18f64598cf892c0424a60baf49a837ed4eaea67043804ef978fb1cf362714f98783389b630358681d85f20302047c435bb50067306502301c8c6a7b20af837f67ef80443aa04345c55361c109f1d290ba37dabb2e17b395ce836b0c304483a83dc173f80e4380560231009073518c8d900b57a9df92d0e13602fb60b4c8c75d3f056c4d1d0d6eaa84f1d4deb89d5a8884b75558c3b979adc8201e0302047c435bb500673065023008a1310c0a52f6a85b5f7cc5d4ca45636b9cf727f78aa90a03011193be13a401dd4bc25b50c370c75c2acccbcb7277980231008fb2a05c03f604b531cdc386b09b9df8a5f38e768f27ddcb69a6f0cf6506835ad8a6bbceef258575ce8c78c9a0abca9d0302047c435bb500683066023100c472811310b2594fa47b6a3c8c03e7ec3fed6887d0f3311fb274670b1b793d70ae9ec11aa0c709ec63561fec92e4a8d1023100957e29fc8eaa9f514eb275c87d0715f75f9314f0e3dc4ccc240c469dced416ad5623dcf16c79bae674095e85e3aa6bd40302047c435bb500673065023045f28e0c39a0706625ea6f50b1749efe81e80ced5f3abd77b314a447618e0bedd1a15f0640f7eebd3c5182a826fc65f5023100ccdf63ed753b8a81368ed25f950423aba6fc2fa4cd62d8a5b262485e9d8d1adeeae662eb924fe2f6af124a17a370b9d20302047c435bb50066306402305c5b683a1081e8bc540edfa776f674ae2ddec3b0433fd9436c431d8968f219480b1d670f21a781df05c8fd9d04a77c3e023031eafb5b8ecf1b5ea079618d0c38ea96377fd483ee504f819abfba7fe270adc3359997c018c432f7795fd0f929c453d00302047c435bb500683066023100e07183e0464381f24b41102b81f21f31dd5b86bb01b87ebadec1b19a5d10c7d1bb5c677a43c1b5924ff37650a2154a6a023100dcb47f838b1075bd999366eb9b1cd4b08ab02a7ccc8bde4b7e40490884d6c416d39f9a182074c5f6bc4b70807e2e43ff0302047c435bb500683066023100f647682d0bb678cf14d95e6ba0076d9ee555aece2e2cce7add420c1d9af34852526de8faccb6600a0315b6b913e9147f023100b5f9497f2b3597a3c76d1cf5fc29eb1532d9151488912b24f4fc865858f0d493cec058fb71e4d9b38132403dcb0f153e0302047c435bb50067306502307878912e2d55efc46f8e6e8322cec6811f4700ecdae3651a80639057db8cd8bc7c883556f510df7c4ddb64862ca4a4be023100f0f2e59ac97a81fbee8d907a15777381f26c308c2b7ead2d71a5cbabd1a472e63bcdd0dd81a74b0ff773362598203f6d0302047c435bb500673065023035483e89ca9c14096bdb95918ae246942ef9c993f95efbc8c0a230335928552e87d3e0630da27a9fee66a3f33ee58c740231009081635682d31d4583680a16bf1beb99b79ddcec8298aa022859f7d0eaa268816e07ca774761846b40be2f55ed29cbc50302047c435bb5006730650230236de232c55854a85833865a93bab3f1dec446805e7c8153821522e1ee80fde28ffcd459bb0ce9d3b2d9e10f1354a60c0231009bbef5641f72065fdb2cf8ca34da5698ef9113eb27519aa0b59a6c25f8cc1789b1cbf9e420434e21c2d7b045ae65b9a60302047c435bb500683066023100c67c6ef543d3b8a53aa89cfc1170c15b626d95b21653565a2e4e0bd6985cde9536ef388c9822ff118fd2c88c7abc985d0231008524505d0e5c670d648af7a7b5bc08aba9933a19f0c1de2e1de0c574999b1c966f647cd3eaf67086bd38b55f482035c30302047c435bb500683066023100ef79fb4e47fb57188bc11e9455cf75cbddee5463ab141a07974320b1b0add0ab7400ca81b2e19ec4c94e3dab91a72e0d023100d85e5d9763dc83f19489521a2dd1b4fce26fae639cd1c2e894ee4db7d0b2235a99ce24c9c718c1ecf636b65e261eef540302047c435bb50066306402304ff80520883f1c94df5edce259e17cf2cfab49defd429ac5ae153fa1b1d74c222891b24fdb0056236948e266189af73102300e00860024098b2bf7932774fbb17be1e3e843621e62bc011e5888f512841b781205f1adc0704b25edc01c47853ed1090302047c435bb50066306402303d06d323a2814e9592d78b29c35ffa2bc7132f030b063deeb07d600a5b916fec9672667fa314e3b2103aa119b890a1a4023038b3089a99296801b61e353a31245fbccd0e27c68bd42dfc027e3243a1bf69f47b1bd12f58603e21d5eebb7eff92184a0302047c435bb500663064023031653101e81628d773987c1fcab36afb6f0b99943a6b0c99fc46cacb282c848dd6766c1ecdfd825c4c09de60f037a992023036125d73ecda92a14e281b30ec445530a6cd24680a17da875cf468d0f0434d4f9c719167b8fc38dbd47a74167a177a450302047c435bb5006730650230725660e93c8b750a0675e88ad24768071de982b411fea74b459af7fdbf659c94ee20803d47886589a0f99a41621593ca0231008c3768282363b0b4fb40fc5dc6679cf0a08e7c272fbde88f51aefd671fb3721a5f7c3ba3a267424f30902dfeeb09482e0302047c435bb5006730650230547a743f63ec03e3c33d596d0e8d2b65e679a89d4c753a694721363fd1b0e48ba29378e75bed419e28259bdbc5f508c2023100d22e79ad12848f51aeb5e1a859703a0469d301b30147db41a6da68e984bec7c7d3202f73dac90d3ff1cfab4f5b7f95e90302047c435bb500673065023100c399ce00e22e3d062326b878944bff128791aa4c9c7f68b9d628f3a17d5173acda1bbfbd7f0043bc249ca0013897e22402300d4bc456fcf3b6501732298ac73fcdedf9095c4d7e34e1507bd27bf9da0b35bc8ef6b77b8dc55b063bcd0d6588cc9bf50302047c435bb500683066023100feb7119d5e7455a4b7bcfccb0b3a19a46a90258a168b93f033fa696ca1f640096c4c3944d901d2f4fd12a5c3dceaebbe023100e9c3374324fd33be1cf5ac7182cf3b226b54eb03dcc7ab38d18635c29951880d187c59aed9d8f0d360855eaaa63ecae00302047c435bb500683066023100c760594567aca0dd51ef903ad0e460021813d987ad9628174b15d2ef3b7fc97657b04ba5be66f418391f9a14f8e69b7102310092ef84f5ef15e6cde1b457fa5b627613e1a173267c3832141f408dfeeb5493bcd16942b5072874cd1dd91a5fe9c608b50302047c435bb50066306402306905057099e89d6109ec4c9107ec0ce16657124324bccd71625aa3a361d6a98976beb9b85e0bdd7be9c919e41a6ec0d6023044d2dcea60ad189ea6d6b317cd6d704314518eac0b536ee9b65aaefcc539414fdaebf7f78a4ca6c7444ae6c578b2767c0302047c435bb5006730650231009a4fed9bfc4665ccd70743d53c2d2f4b6f52422a41c73ca90b4779d7e5b60d7210c84fc315446e215dc52130567b8d9d02306feca86c532321175cddf6b5b48c58a5d806e9cb575a5c20484be4230bebd328d0394965caf8d59a951467c5d4889a280302047c435bb500673065023100a1992ef1936194c0c8bcc00ad62c7beaa330a7f20a33436394b654fa3d3c31ace52bfcc9624d91a07010b41c79ca296502305657cecc023efa81e1592ac29a7f70f4889a0bd5abfefacd5cfc7244d91d2e904209946ec2ca2bfb71cee88be4bde8060302047c435bb50067306502303a009450f3d6df019cd550eba512c9f79cb25f540000ce8e27046cafa68d7649ebde5b6bccd55c9d3b8c7e66c1fa5622023100b3cb499feab38c22860bf4688a722a8bf925f48aee1584120cc3059338c5ef2f485dce98eef94ae68b33a93f2dd31f3a0302047c435bb50066306402302e4ee41fa178995d8b40bd67948cb86a0cc6755246f895bfc3dc117c2620a001fdefb232797e80aa8a0a1c45b10d1102023047c1a217cbc597d51da791e4886c12d4d040b310e88eeffde7e1f4b18a6da56969f7d9be32be7f4141a4f3ccc13620160302047c435bb500673065023100d37cb9f880bb4efc56dd3f0bf71d10859527c6a4fb3c27139355902581860f145832301dd0f754a498b77fb5f0f48c3d02301cf5bff7addfb19ba784ad5093243120f089fe3fe23219c58a58332c39d52afcf25f6f5852008a01bf5e4e333327d1510302047c435bb500663064023008479bc8f5102cc8d7c595ad4408fbd9ad7ed4bbfe5ebea37bf336d3da752acec4e256ed7145aafe695795cffc43a1900230540c8ca6e2a7ec78503b0abea6a14360dfc686b47c5205fba7fb0bd639072c71c1471e5e6666fd19cede618ed942f4030302047c435bb50067306502306e503236add646998b27774be2e86982adcadb85edb48f65cefcc17adfe83eebfb2e056985e4bfee6afed5214ecdb7f60231008eef5e5214877208a7eb720fa3d239a35669484589b24d5953e11e68e9f3a7596953b91bbd184e0cba757b2e51bc7dc50302047c435bb5006830660231008b8ab39e90f012874e30371835bc27360958d40944ffc2d8067a620695852f6f70d77411fc39f1ae77c8f02cc83630c9023100e7e7933c809914b56db2ea18a9ffa3ea8b93b8ef7abeea85f6ca6520a1ceecd171f4984454bc3bdb15399752f7f6677d0302047c435bb500673065023100b82c017965138809426d09501dde8d1745daf385e216f10c11b00801689499a797969f783f3836416f5b9f42751c8492023068c53debf5e53fde4b05156f4b2df33dd4c439d22da81dc78b9a1f7bc90fe985939480b630a93aeaf5bf9329a7fbe98b0302047c435bb50066306402306817a3503a623b42cba37e3879973a5d2dee655b93bc2c4b9eda090786f2e841501cff7fc2f96cdc9533c1397e477c4202301f1bcfdb852ecdd2080975e076be41653b445050fdc0fa9573608d181159450cda1f9eeedfd75e83cabced7b4b9873cc0302047c435bb500673065023100c72526d9da4358a588acff1477c6b70cbf8d130d0b56da782d8b533f87d16190a4743c91465280ceda7533989cd903cc02305a90d5d0df36d6014764abcd77750d91fd3e96dfe6c2a3fc8c6252d7518d905201e89c0a070805b9ac95b44679f09d830302047c435bb5006730650231008bcd702320ce1ab7d36a2bb77d32b593a1f7308dd00aaedd63d0d6d8a08ac59bda95ba63e3d97bbfbd9d3b914395db1202306840d92c30a84ad9bd1dedcdf773b9e84fa579df53793c3364fb516318fee0a6ee0bb41ab7ae78d4d1d5a24faaaf3f4e0302047c435bb500673065023100f6d9a514ec7748c836fb4f0fe765f4a86083c2c8956465f6bd2c2197290f88b4f87f47505da99b74782e2400b585225c02302f0b58eaeb5567ee87ac8b443bafb6556ef5ce6c0f10234c8654818ceb5d8f37d01e1ba8b5749b4c4f238fd5adc5fa570302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100edf7539be667b4611da92012fd9f765982ae2d2b5acb271d469b48ff243e9b0f1ae4db32d193066100ab2f3733f3645f023100ac8d97449cab5eef0fd09447eaf3118de4890dcb595947a5344ff80c7b6283127ee8aa1fb6c361369ab0cfc7d69c024c0302047c435bb500673065023100b048df58fe6b44d4cf7fee313fa4aa4e1ff13452fbce39aa7e513926845514d8d714448019374352189a93aca1fd709c02306f804d8afa560e8d4d56cd1366fa61021b4c2c7dd18004bd79fc25169d9bcafaefd58a69ee99fac63e4a00f94c5d64ba0302047c435bb5006830660231008c086907a98cbf520d1b171df54df6a0a85debb4b56074b9c9a891c4479df7723a4e632536e632f8bb7dfac008acff2f023100b4653d71abf85d3873cfbbc4f58c15cebde71e6cd327340239d6d9c15823d38735b48d23273ab72426326f77539745f00302047c435bb500673065023100ebda89bbcaf066408c66a381b530c48102da2417b6dcc7fc4c80d8bac2554e37e4a0237a3afb3a89f41f958264a95db40230267708139064058174351e56b54ccd2cf54de6cf5a8a531736c7680c9aa926ba92bf172762c57829302ab0c47d3db7df0302047c435bb500673065023038cc20bbd193d739c30e19ff32488690d3f29f4e9a20154b992d275592bd4a8eeb8972f60800fd886ae0e85486521b79023100db0ac220f0d36aecb93731a48680c5d751a5c3df40bd77e95b01fec0503fde738fc1ffe15cec44df395dada418fd2a010302047c435bb50066306402300133197c24711d859e04ce7d96b1272c799c5e6104e74a67b00b70d171ef612dacd6b816838ec41adb2365c94896008f023079a429906c224535f2a00120e7f4bdda52751586f9825024c741dcb8c921a16a52a8f0023b3f19e130a2b8c459f4d47d0302047c435bb50066306402301a42e70a264c2573efbd328bfe563390c0d2908a4c90db90b156d75ebfeed323156ce2cc1bb915a0c125cc202a5778a70230561ee24b27b97f48283bbd729d4ab2147d0b9731f5517dd31af36f2dec2127abfbd69a9a76ff60bc8f7fda3a58799f700302047c435bb500683066023100ea72baa3475bcc94e369c138afff1b267eaac1b398429f0cfff37be5d4a5f6351538bee878da4afeb41e85005577462b023100c567232860499ceffa7898659cbd3df70314aae8abc0f0cca9e41b351c5b6c9f126f72d45d72e40759808eb0ad1145580302047c435bb50066306402302ba3dd3f7ae18126726d4049c58d608a9d264e314bbd560d9467b63e70a424f6ab0ffb4ced37da4584e009dab2f5e14302302fae15b6b44588563ec77f59d519157f18faef9b00822fc170412dc6f6bfb0fdb199e1bade596f0a541a4211c3edb4880302047c435bb50067306502305a6f32f88f519caa445b7e270338286eefed2640bb75be2cf85ffa98bdb0fe4b14339dab5618f084d7abe50744daf41a023100bca00b952b24dc8ae8137694c256d32d16f9c08e1cf8283b2208fd465ad0eeba7b18a59e166a6a03b3c2f1e535dd70680302047c435bb500673065023012f490d81cc9500c215473dd275e2dc44ec76aa2b52f529f485280fb4521e534a2dc3e1f44dc1acb96d85b6deca856dd023100b9ac4b8d48a881c56213bd0a6bc78acdca9773a6243b74eb04daa03936b43d10beca5f675d4b226294ea4be97bdf25710302047c435bb5006630640230038db54b696eb9a07ace4d9aa5ecc1d4f6e30a2b15e0799905d5e678a2633bb65b3fcee49c92bdfe9967088debe45ab3023066ea6a3d6cff58d01140ba60fa2f1bf0587115c25eb5056e95ea129d29833a8e181f84f768f656e42096e0b6b5f2f9830302047c435bb50066306402300c957381fef7473428d49c9e0947fa3d8331ed3f380178506e15c1c53b64d37e2734faf7c51b953f6feb9071d5707d06023062433888ddb63d47adaf40cef030b402a964dd01976c3f3667d1c0e0165b3b07973240af327124f6742e7479f296334d0302047c435bb5006730650230115699a64cf25db71f1b41d8f9c601f4c3328f9d7dd618a0d368ed90d24bca176deaca74a225b6d8c7e82eadbdf897a5023100f2bd9679d32326c39c102523a8e665d7a9eb77c6ae7de3ce47c5b4076f60bbb7b0e8061b7cceeea0c4e617c671af15c00302047c435bb500663064023011cba67189e8ce971349be628b7bf32f878b0cd4a610c24549de92b06bff2cbe5a146492f70c9709bb5f00d208c5db4a02305b6813324028a14d5f638b7982e393edeba79d2ae262b118340978e62e49bab22118bbb3915a147ca0758cb60db93c9d0302047c435bb500663064023032e4c50237c58e5a8ba3636fdce527be11c14cd61ea0cc9e3c5558a5f55f96d75b5495662604e3dd9319be4c202d57ac023010934e98686110a616840137cc18296cdd3131a7a4f25009fdb42d878c5b2fde6a2df9dc7457a6fc208cce5711969f450302047c435bb50066306402300fe72d6cd6851623ae9fe78f3c9e9c7e05029bd05b504cbb7fad02f9032868d608f2e6b04b517cdd39192762520110fb02307d59791054a4bd2d8e0964626099eb955a97708e609cca7e5a0e45d76f01bc922bf4737a8b944d498a513c6435ad56910302047c435bb50066306402301f750ac80839a03f0d1e22b03a2a3fe9b6dba6f17665daa5eb56b650c28089bf8e68f9fc3b2bab7951ed81b01a2515b402307362a5a9207498ce77d3cf2095f0df79f2b09dfa6e6b1bf4efe10bb2976ddc04f5f7b1e31c4f4e62f2d38f8c5dddf4840302047c435bb5006730650231008881422956712b1ad8ec5ab4e46993fe5af0f34c49c0b6be4f2d2b05e9d03ca76b623bc4c16ff9a81ef4591b84e309d202302c4797babaca2fe61007c2026e0ba90e07c0125081ade41e272f573b35bb6b12fd5d083373cea9034fbb796f068f87a50302047c435bb500683066023100e7fe82bdcd1d9622c31028995c06a7b1a3e06825e3afddaf0a61b60fcbab5cf94d6faa7a24cff8e7c2038913104b00a3023100a6d43d2e48201b994ef21eaa9e966517cc178fbe610485b74ff26222d97bf5756a24da3419aa01015202c6b9579197e50302047c435bb50067306502301a8d4e9112bd3bc1420416b6c149f75e1ebb98733969f1b13e783b161efc2fa51b1a26b516d1d1046ac314859aa98a68023100ccb17da186f53f84677cbabc436a2a9f5945d93f4056e18a208c9b7c258ef56d7e7508205f2f4bf4ea550d4f1e3b87b30302047c435bb500683066023100b0b52d394f494baad77aa5669f11eb89cbe3ee2d0b7dd90aa6bb5eb8f79b4f07a3a696bea6cc19be844d044e850ffc16023100c151c106e9a3dfbab98e63cb70d609876f892b2cf20aab1ec6d8090524efe197110f2f74ffa3db6499841f0fa6a75edf0302047c435bb500683066023100e8cae2f9b65a8014c512d724fa6502eebb45093586d9da2bb2091887727b83f244703799f80280cbfc2806707dcbba08023100dcf80ea4efea83f5b7479ee5035b20193249f13dde95fb262b4e07264a230d039784a9080fe07170170129e2687103e60302047c435bb500673065023100f9d711afcfd48f336775ec9b16e9668003d95b583807dbd44837f291a7032cfed8c27e9582d82dc0ad9cd7a52975222002302f0a7f8f7b2549aad39855717dec5b23907355ad548a87c86607dfc7df69c3f4064aab4887a4143135e9b5f1acef719a0302047c435bb500683066023100fbf702fd83eafca67e9242b30e9fc39a7800d868fe8b4c3d15c201e005995c16237d8474d89ac21c4f267c6b8d76d3c90231009ff92353bc2084f34f1c79c4f79febf648dcc9a0ac07a3a96d9f26712520620131dea946342dfc7db55b867b56064de20302047c435bb500673065023038415eb9580d4b8959a75052c2ee5140dd8b212ad62560297e14baa78f92c92fce61eacbb4f00f425915b04aeafbd761023100c90272cc5aa5ac800d833dd480ecc469afaf494134ee15a84f667ef659b9fcdb18b60be2c702c44c3dd4cecab42dc9210302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305577478e213fdfef882dc46b3ccc35c37bc3f8313cbc7afd9e2eef51a6096b44a14c9c161c883a53a90d5b54471c1fc0023100f07f3b52d18e481f3a48d616077415fc00758806ff642b54dd0c567126a769639258cae6061d6b2434e028bafe9e9ae70302047c435bb5006730650231009f5122e1cef5735627bb717eea4a667b27d155b7399a974f1cb99a256654501204be864e0ea0bb6e49cce6f9da367e0702300bacff1be8b0fd66f26fad1573171717c0bf1ffa8b2b4d7693ceda101fe36c405e7f19fecf13fe20e32d6fd92b8a74fb0302047c435bb5006630640230021b141a35b4f05abeb5394eb7f021551795a5092906d54c1b0225ca41bbaecec4cc3c5dd0a3bf5bed2039a5f9f4f1a70230645b726f539ccc7ba7e2ccb4deafa72e9205da04a8373daed27aa8bafe0faed303e9d73e531568bca1b2bbbc44a8e6210302047c435bb500683066023100c6b3672f803289ab6546c8175c6ce5084c564b907a6274995f0c30857412a3a036326be1f49f5a42982ab38da70a9527023100edd09a18abed0f3e9501cd0cd28b322bdeefc6719721fbadb05af73e5d6dc0eb6a3df8fe5a98f8a04da7bb5e8f1961120302047c435bb500673065023100bcc22e4631ae5976876853a89294afcd329efc5b106e7d1c98e5bd890462041337f2cb3127e8a18a5d7e7bc03afca0ce02300c53c047cf6afd2a1d0812472428ea044027ecbe140965d310882533fb0156194d645f080893615c62f7e50c56b123fc0302047c435bb500673065023100b96ef0956c570f38893b9c2390f638753124acda2adc68325103847ced78c1e67b930fbd3ffef4e75755b77c68c8f8ad023070db0a47cb7abf2abbf85258c9e5f0ead26d71a0791a1f552f34b75ede45d04b79e50d361087ee578411fbc8a70e26460302047c435bb500673065023100d3459e755ea5d2e55832b6f72316db0ae76d345b86d5aa2217c9b0f2cb52f5e3c161dc6200918a9e5d015b22bf57ae5e0230142b4d491a99b0eb8734f8d3c5bb0cdb420488dc7091cfb4c6da5966c3515bb942154689d98d28dcd9be4071bb60de270302047c435bb5006730650231009ce2e0e019b04deead7685e9a9f7efd65ff020bb8a53b122fb63b449769d7954442d9a94efa63fdb220d1e7f2aa33f5d023067ddd8a444e1556589d0f546c9eb540c422fbeae5580e991f3f78b4eb6287edf1bef7fe14d487e41bb95cadcf68986930302047c435bb50067306502307569b7793aea5d7e03d4709607e085219a97e2d1a7606bf5603e6a40d18b9f8790af0ecbba59383a4f0e1d306bd9b576023100d31070eefba5c0b1ba60329bb1328e22cc5ce47d216ad64c3a62a3dceb3f0b64257c4ed8e9d23577f641364beb8f10b90302047c435bb50067306502305b07dcb421801b1ae52727553338befeada62d5962c93a671eff8ea9f1eefbebd5aaa1157545b0b7e27754280972c031023100c7ad9285b3fbca8ccb21cee6a8db843f6a0e016a585a6dbc2b2599bed45ea767d7c44049dd96a0cf255728bc7c6193210302047c435bb50067306502307aab4f7165d351a2e039259f6f6f299d1445a2f5e14e1ea049c3ef41a7bee9ab8d756f21ff3ab9f8de0eb3cbec8ecadc0231009dcf7c5544f787378965624ba60d3ecb34e9442ad41dd9ab82a110d559ccbb961da38d24e80babef8fa2382dd7518d910302047c435bb50067306502301ce611198f5cdb27b9606fd21733f4213a00bbdb7feaf485f92c543dc7b82d94535d9da152ab2a3bea8b79e6cb6cef890231008b67d25ab23b596c29acaf485481c6d069e1e31c81964166288e8dac814bad77f575abd8fdf80dea6a088560698f89c20302047c435bb500673065023100c67bebf274a9ddead58f72ade5582743595057e20b01b29c4625a955c3e8dc81337316bef60cdf877e14ead2e368865702302a22cf73e718e2b309c990b11fd45fada6199a2ef5e8b7cb160d3ebabe397fa2de8f2e5759db11c9676ef0a9f5af085c0302047c435bb5006730650230644c1ef301302da67ee1c6e4bcaa6ca9d2320211ecead79ed0feecddd2f8962d6cb93322337c7a45417eec9b765a2272023100ae733f95500543ca7432bae12758857cbcba95f2f93dcde1ea83abc1c674885dcdef5d57802ccdc67ef6f0c58a9d6ea70302047c435bb5006830660231008df9a39d44274b4446f49425f2dd4f94fef4c66cbf79733bffaaaf7770b614a382a02649885d9cadf1380da0827c188a023100f0c7ff7ff4f3bb0449b08118ad39e1efbcc60ac941bb5c10d93c3814b4e52a95e4f295a3ca172e8fa47ebdd411d76f050302047c435bb500673065023100d5e99d9857e740db5658d6b38fa746006f663e6d3158d0fce861b275d15b555e2d2ecda3934b07c0be3ac815e45dc7f80230091bd9b09b6274ee5e898726cfeb59898ecdb0c9b8e311f3b5a8a4dff5f59e3db748440a969031f7705ace19ef9f0fca0302047c435bb50066306402302b5509161a4570aa332b336e350345d174cf1fa19200c38579b0199253af087b83915d15ec076ff11dc0c244086bfa080230352f0a98161d6e8fbff2e6a396a8659c6858f01a2fb29799e98c804dccba7bcea9d2fc82d1fe70c885a879da6058de240302047c435bb5006730650230450cc83b09e200c34b095867f186e8db7033d7427a03f584df33e0df6111ce4fec4e3c3dd8470ed5758d593be25724220231009da111f2c3cfe1509f49f0881aa93efbba0149b153902c01608617f81b4562fbd2f3a110d46a8784df82b51036239fe40302047c435bb50067306502304a8fa57997d746405de7838d0d411ba53a9bd31681239691ecca391a916e9065ce5be81d89dbf3b24be70ea0cc097f05023100ccc8698b2602b50b75683205cca40b03e6a72ed1b48cdb8e999d2bab4249814a8beef7f3a58beca1ad0f230f7b4ece890302047c435bb5006730650231009664bed6a03559552de00afbd7f1a3ed0d001f64ed8a231e252d5ba00b2f3c79f5de95bf9f7173cc8e65d194964445a1023064a3936e7e991f0abc43f2c267f1a25cc0904fb6e2c172185d3f0afdc47c6a8785ddd5283339533386d1d76dcd3bf1610302047c435bb500673065023100f46583354c2c4b428a310c5568c456e85bf40b63da9bfe9cb0dffe15db27977fe23b22ee9968074f93174941ccd6ab5e0230384245142e0545303c41c87ac355f437d05db68b312e84254d484ebe5e4af364d1190def61ea0d2b7748c55015944e730302047c435bb50067306502310084249031bf679949a59a16f87db8191812ae476a903bd85426d60f15bf14aa43d6cd783c0e25a890b95c1f8e94e953c1023065c6caa4b8b7c038625dc6ca92a64cf59241f39d0fd97a40f1bd9db6ee412bc4fb1552297f73bcd6afd422df9de542e40302047c435bb50066306402306461a94af16f5a33adc0d8870a0d7dae261e98617ba1f13410c130f33eb7a08163dd90d273b1c3116579dcfe13aafd4202307a209850adf699af424f2da8344bc90ae3b415f84e04a6ee81ba6110a52c67a3636b84c446e4f9262c54233e1e56d0630302047c435bb500683066023100ec01a1dd59593e19909c35972d5cd43957f407c95d99f454e81d6c5c1760da2f7b8b04562f506602596599901ef5a478023100d0a9994a54da14ce4291d87436aa0a8a09d4e8fef69393f5a90065fd0105d709b2a54d6ea34e1c3bb49f5dae531600ea0302047c435bb500673065023021ca3be2f0ec32d82efbca10f3cb2b0bb8f8bd1d873c6c65796a1252385609a854b699fc09955099708d88cefa14f1fe023100f9611c0eab7dfd8985084ff18fc75b86a0c42d806223c83e7f8170235254eff3a32451e6d6cb5a322dd315af90012fff0302047c435bb500673065023100cabd4ceccbcb23eefe10d556fe7f9cdb4f9b548f63005c06980e07c68c3f6138e3cecf7ac3d008033e9a95789a0483390230709c03f8a5fc382d4b139f76201ae5a4c25eebbb534b3a77d869c76bcc1acd42c308fdd17b4c2deb6907a373918672cf0302047c435bb50067306502306eba38d18748db8c994e5ec1c28fabd87e5ce7f5e1afa3562bdca84651a187bca2d01376b9e3b1f76031f2122775ebab023100d079a36f7f60aac6d8f10665cacc1ddf57fa8ae240cbad6da688d8b634071e341b83e32e6ceadb3aceac4069e4fce5cc0302047c435bb50067306502306ea21b8691cdb3e2cef4e09e4a683834d0e01d21275a1f9f688b97925ba7137a06a1b73d8cb6bc541206fc343f78502d023100fd54b076172017697ad3e96b119c1ed5b611be1ba0e812ecf32a9b8e702391be476ec15a8dad29a02684256f503e8bb10302047c435bb500673065023100c72c0d72ca36e3bbc43edbeeae7481913b6165d2d3b5d19393aa9f8db8c46c48b4f341ac8b663c2988b9b0e71383181f02305a913c8e5ecc646c93f5720256dc12407ba7f1df723981da330e0202ea90c4c9a94bfa3fa61aa8fd9ccdbbb2e09cc1a00302047c435bb500663064022f2887fd5c3ea95c269a59e27c09eb387a7e97cb53669e10c52fd6e31a20af104598a3806ed3f487fce8164e6dcb7c84023100dfb8e3f8039f2f5ae026beafd396958f08df0e8dfbd6d831a50b59b237b89f585700d1a24709365a9e81c02a531a9b5e0302047c435bb50067306502300584f19384a8e202cce8aa801726feb262ae2870706479c030dc56c668c3a8ea4294ba415de70dfabf2653f2b2cf34d9023100d4aca1e8e68993423a79f60c8473f059312318962c900deac5e7009f2bd1c6772d81d282f365f259215685a7b1561d2a0302047c435bb500673065023071a880913d38c879cdc9a9d834371f7e110f86659100f5bf923bae14491a6819d5e54eb40bd7944d9b0e0b817f7efe62023100be9bf5a9302a01665a5b465f8cfb96597ddae3fcaa22ce2fbe3aef05fb160932af7ec4a712c9f3ee960636345ddd32310302047c435bb50066306402303b30f944de40eebb974b4a9043dff30ea009769afa0b09ac74d05a4053ef93df73dd944560f58d00807b3b4ab2ead9e90230459cf74f1b7e2cdf0b99bc7d7917b48130304f647e4c77f762a8fa915a0318a239a723241dacedad6232774e3e608c3d0302047c435bb500673065023100cb4f6598acb3405a668210a11a36a75159db2e7fa5f8e4f3bf93a80167ab8846404ff55b902d51ec52180204964c5efc023071d9522fd1ba9561453b9bd1b1a92120457e2ff1f41bcb624488cd93fe28bfe191b16081181021d0a6973fa1cfdbb82d0302047c435bb500673065023002dc031a44d9e002e95d1156bde39fee2e63451b7977d6fc9acea61b87461e5508b82ac95724152556887162bb388678023100c7eb071bfa72122d8aad7bd5463ef7f6a7c13c7abc6e0a2075faf2c767a53efb60b859dc4e6252cba2b07a5cb28455c30302047c435bb500673065023059c5b625d8d7c90fb9dd9aad218f0f1ffc2c84e392d57b77007b6578f658f3f0689900f6d13478c2d7af2aff516ba91d023100b35f0bb9ad64ddbf1fda47a9c8944c1047d31bbe3f78bc27758918839f347e20a199a8c6d1c222fa9cb57105e13d9ca20302047c435bb500673065023100c8e6fbc0112760309b8ccc449f051d0bee1869f30cf634e05625f9999c796997a402408c29ee2b03070f1667e4f6c69202300374bbadda364d364a71dba53c4a13f054599ae2f5ec705dc4ce5f4d6a63311e2990a0f6fa48bd190e159e641580dc660302047c435bb500673065023100990f6ab4e73f1ffd0d4db104db8274f58917009fd4cf99c41e1cc6615990cac7d82e00a120107eb100c4247684e4dd370230206531acfe4c0f13ccfbabb9d1733dc0371b1b82b04524162ca9c826c6211cd22ee995aed3183c2fc98a24b29e913d250302047c435bb50066306402302f72309a8a341f2e0d71181daba61e14f2baff450e9fcb75e9791907fdfcb2e9c9a2dd44092728aef7c5231ab83c87950230136b9a96ecf197b1ef834b02ff52d65f7b30637dd1539a13fc381902254824b12e21b84b9c41deeb869bbb431b1c534e0302047c435bb50067306502307836b567e270900f2c9b145f58b4a92b234204511cbc2ff3b3c050b89da103d13aa699ba73f4e24647b63b95e9b25874023100ade45eaee7c9d04660e41d3b0e3f2ae6b0a133b0da789922f7b167e4333e8c3b527aa9ed038f4a2501c9b4ef467361fb0302047c435bb5006730650231008431426577bbc9e9a9ec3b52dc801c1947abce22db3a96d4b3387a25b9d8bfad5f050b1d0291472f9ccd93ff94348530023008cc3e330943baf152e2b92eb3e01b7b358905ab77f5d57f149432b1c37cfd3eeb86e3a0519b4b74f98b8521be5251700302047c435bb500673065023100f6d5959d9a32122aef7065154bfbede2619c9e04affe8339bb0b729f4d74824ab0d60904d0bb75d5d48a8afa084371d40230282f1948acde68ccf10a13206a0de6870eb66189301ed4deef51d95c22c8f82f72271eda8fd0180832938e1009ffefca0302047c435bb500673065023100cd0808a98e8b2ef177d89500fd56b2db319c1059318719303d5c0af0ba4ae4c54beda0034dbbac34cea633649844cd54023078b0e17867bbfbe9ac784e893b59dcddfd4532e454772e0ee1752877674aae9ad9d51e9d0b4b23a5195255415625982c0302047c435bb5006730650230341e221f5c0824f1a38148ce6030d36c913b874ddc47ef4dad62021e4a7d419c177a4d9b5e4b5b7c59f5187c9c89a954023100aa66f393ebcc36d35ed18c25046076ba0acb3f067018441ac7d969b6730b111ea46bc76fc33db2c76f89a87a432f395d0302047c435bb50066306402303f8d97b9e22f61e10a9e0706e75c7779a131e0d9cbbfbd96d2308adc7a7c036cc2b3a8e32e4f5535964e3c264f0a025502301d504092a47fd64404565b36f843b5fd0f7e809f58710ac79b3694f007eea0091aa10563e0815ba440bf1061db9a1b270302047c435bb500683066023100aed29fd5e0b23048c904f2598c7d6cd280d2d7d2e43f57b03e476ec44a4f1a760f93193cc4c2580a444d22cae3bafef2023100cf30c16c9cfbd771c785328ea54209c02a8c8ed58752c53db40f3b71be3acd81085d53e8d057988f47f4fe893d18edb10302047c435bb500673065023100bcb19e111d60d2b9b321c0f94d5c5fe53fd183e836b89cff9381be0e3bc495cb2f58280b1f25e5994b3d85439d4e95eb0230393e8e23547d14c24098f17c0356a96223b03727431d54bb2c9188affb80cbd337b45e55afabc83a61d61192e83a8d2c0302047c435bb500673065023100ab2124a884691a7fcdd50e06101514bff15a50f876a78254e9818e2cf9e645c4b500870d2a7cda564ff4284a99bc898602305150171d9f0ad7426947ffba4ba5fdab49c154463dfacb0d098b5544dabb8a176f7817d9f15ee4f95d3be2d5e47d89700302047c435bb5006630640230624ec2e9ba843316e8c60ef5ca1b0798d8b9e03d7682bf968fe038ffdcb1f9aff659142de9daf363391f46905cfd232c0230778d0b1643dca917dc4c9c35bdef508340a9c04834f243ae1591150a775d1e409629a09b5a91bb8d48b59ac2642b4b0c0302047c435bb500673065023100b00878341d8913ca5b0f76242b5e10f2fb86e2ee5f3222114b4ab68294861a21d93d158b077cc497f133d0199ce80f8702304b7122060bbe4eb03135b25ab4aad5de427b8851d23b0147b2f337f981e705212adce1f8eac270f21306c24d777a49410302047c435bb50066306402303bf2388ceba50dbabb18949fe84b29b354aae90d1166e40f6bd98a0282407bc2ca7b8308b44c1ad3ab62f068dc6a24060230731434511797285b032129b69670edcee4de75dc86aa21524e4f3382caaac7b2bea6f4849128a513e475189b2a6ec8690302047c435bb50066306402300594edd2aab961b85a6a97fa8eaf8c500fb13d034ba0b3838d0dcd72075680fba90aa60de3c19541f9d5f4f5043cd7be0230109c5db89fb6cbb75ee8774a7942771aef2c9b3e9b6a0d13a2e0a2f917e6d3c1c5223c1bfad5111c7f4a2d373ea633780302047c435bb50067306502304104e1ed6113570151c7f88ea8aa75ed2e868f21e53d7b426b8e7dce7dfafc9ac1392ab60ad990365b24ec674babba25023100ebf5a12682b3ef6ff2d4a728053e174b88fa1a879d1ea100e5466490772ee56a5265f57073700b5aa6b36fddaa5df64d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fa29cfaa91f318bcee1ca535efb7580c4a73b02a59f1a16879b98a7e72fa4cd653d4a6cd895bc11bdbb7e8e8329e2f59023100f22307b70238feb6e8d95ae866dee72409c46a39b43aaaeb10c539d96fa33270183d5cc9663da3a4389436d3c633888c0302047c435bb500663064023039777e36b00451f437dbf1527802233fce4fafe6f460ac7f9fca87004d0eefba6dcfd9bc848d161a905e6a587012c8f902302a8e0188fd56baf85fdb730631ea94a14c9ca35f2b0a4bdbc868b83450112d321e0d00e141a5a2b4720789053f2aeb0a0302047c435bb5006730650231009427e412fc58217e8908d1c0174487833e248764aae142434101baf35a1934f3d6f54adb1d7aa08022f4a9013ddc4d8c0230432774cecdbb0cebe4e17dfba1af8c569a53f9b4ca88a3c22309375b8aab0684ff11e361358271325a561db6352b0aa30302047c435bb50066306402300dfd7bcb21b98591dcdab28b0176da36ca8d9dca83ed854cafab2eb7d8ec066a7a6fba79759b3402248d8a6a372e77b502306466dc0158cb2ade5a7f4f799e2559c9e86d8836fa5dec0c567fea923aeb62e02c50f636e5ac9d4e4463618a03319fcd0302047c435bb50066306402303f8b8160aaa43032cc403596857e60619aa02db43f96018af4a244bdb04f038315501dbd1f1527da16ab093d2f73856e0230491b8bd7a556ec0a81b172114281cb44b277e8fcb0ee86801b822a777e51c7b648d54289c096c5be1626dc33a6d21cf30302047c435bb500673065023037ad164c70409466f2be18c7139a63fdc98c06c73590936495bc0c026c419dd7af8f69dcc7a9ad9ead0ee538240f3488023100bd1cd7c4f6f4731174a031e3e3aafcf3311ee4d22e2f51230e1056d6cc4d273ae88e091a4ae0091903e8a0bdea5630530302047c435bb500673065023100be79b42704be5f06836ed26db3ddc01e601ceabd4aa0551a7026ab441fdd0d86aa4bce2406be3423747cd4f001f7858602300e6729a2dcc932a497f954afff80e024ecb59343410147b35e29817c1e953473eb44edf508da8a53c8d47f1ec078d0370302047c435bb500673065023100e64b0836b1bd09d80f706a8c42be3569d831878840906fe20222300b653c9d3c1c466049d19009b0da49ee5bbd4b0e7202302072a0ac8bad5f4304e4d91028eb2533fc89d105afb1dfcbf663efc30f206755a8189aa1468879986c241bebafcbdb180302047c435bb5006630640230703d7d3b108cba6cd3caf96df6b42b233c35ee29bd1bcbe86c79475a810deff13e592df858e0dd93f0a5b858d4e7a1d602307eab8a2a11654a0e820a3a5985ee50628688ef2854b864145fb7d9533205d2b8bbbabb8f516f29c235379b011d6aca340302047c435bb500673065023100e94df480461852ecd84e3c158967dc88e4aa58e9e9342d70271b49e0f7d6a65399d63794e4783bb48a6846881633b98a023077b33821869b26b0efb0cd3f0ae787448003ee18a23191dde111f45355a093473c0133f16ac5a8080c59a8e29a5fce3c0302047c435bb500683066023100a4a0e321feb04c56d828fd5dccd4a0ffb3e9f30d89abf16c255f3b57ea03a7fc03ef0ad5616d72371a891d8d587e7c3a023100a4cef3ab83bce8ef1dbb22d0a9d67360ddcfafd477c00e5e8dd9bab8cdcc0d10592532c2d2205aa0c9c15bb57d3d06230302047c435bb500683066023100b82a46dd2384302ceed4e631f820773d1bcc8d3a43c275dd5b5d297764eb3aa01ebc0814e4809a26cf51bd49555ccd240231008973ca219922708e5d34e1f12e26c6e081513adfff1e4f2a5ccc2f083be4bfc35bb774dacd3d2b3aa6a931ab0deec7520302047c435bb500683066023100f20148885bf76dd341ba05c42df7cd4e0c3a001a092377a573a7c9e53aba8ac31cfcd92b038e77e2adc9314db0b7e55c023100fafdeda728fab704a5afe67ad6884c6020854387916a6c0d8fdceffc0dc7dbab3af6e9f53f1515b87aff1084b21e811c0302047c435bb500683066023100eae80681f787169a2ccef81f906ecddc7ba9f676cd1e46a490cdca6ce2dbd4036200f0bbcb13153dd15167d8ecefd3ee023100a11e88614b50bff02d0142fdf946c5875c251d1319fc54a9079180a75b9ecf27cc1705ade31f0f27c7f35049f61952cb0302047c435bb50067306502310090f88e961b2429000a74bfebc391095d56949fd153a728493e98a145a5bf48c9b333c00d98fe5968ba32a09c2333407402307bda5e71bcb0918740dcd585006a3f2aa8bfe4e8596299b8b2e4ae98878523988c0bc801cdfe28ea4d0695b47f1a512c0302047c435bb50066306402306f266fbe695f80dbe2eb5a36af0c54e3cb4e9dab9316a0c88977a7c0e34bc6e2528875c820c66d9e4cc3bc454b368bb902306437f4bb0d2060417be4ec70e1d2d99bf81da75d418e972a0b6f89fc5522ddc8d2ee189bc4aee6cac4c775d072e621350302047c435bb500683066023100f63154ee330cd7bca4b3a80ad8c6749e34e10dccaddce43f2e5cf7e5ef1860d5d90c0a8b5bdee584de9e321bd42e86d3023100b7dcfde367724854e855f6bda018d505a1f66ed93ac8acdd0bb8ad7de53e4fcea49d12aec5dd7d662dc46a8ed68b555a0302047c435bb500683066023100938d4d7123aca530e9e0afe07687fc209ca80092fe1971399732132a932430cc840902a6edcb24b49a8702b783cdd7a80231008af7433cb4852237b10339f28521fc4634b1761c3585db41906d79154d6bcf4f30a045117209147869337b19ebeb05c20302047c435bb500673065023100dfc9b9d8f8a10ac054ee6947e1b05fdcc05efd54c269cb0433dd4383d0702c47195c0b8e65d0e9ee1325edd4571b89cc02306059d42cef23319b20eea3b5f1f90edfb15727ece3767bee141f409e8b20279660a49cbc2d6baabb30373258d7f040530302047c435bb500683066023100f9b4eb2ee7348df99afcd2dd4ba904999094b2e8c51c94800558d34ef475cd2fae2b5a4297ec501ea28633d84e48c9bb023100c5ce861867c8979607883656e6d4a46b4024ae3da1fce7ffcd2225f14e67c3a292ef2570a7687e2209a82b9df0f2ae640302047c435bb500683066023100fa0338b86533e0371a14e1be3a6c5414ebaff1c7b8ae44f20f49ebd05fed4b006b33fcea7fc891acb666f4cc590d46e1023100f86001a445776ee1267e6afc7bfbfa078da2038bbdfb54b76d608abf5be7a58feb14c569c3c74391c0d91b70915c58c00302047c435bb500673065023100e7c367593810be8d52d2fc55c0b6aeae0236ca6a22de6ac4f92897bbc88af0933f1095137841b414286b59fb27bd557702305f2b0ad4c54a762103da76254586f7c55e30f5c76953af11717e0f60900f580fec11477594ad723e37ba625c7e4448f10302047c435bb500673065023100ab0d8ac553a76acdeec3278afef07dce6d445c0f992407259321007f95583a3533633bdad7f6142925fec84cb969112902300906b1bfd63ff89c23d4a275254535be08bc51076b3bd6778051db2e7b8f806fbcd49f60224be17cd9b1ac55134c61d50302047c435bb5006630640230444e533a5a2fc97045469dfab709325dfdd44e816ae3d5db2ab72feebb05699f91847a8de7353fe4386536c52975e94202302dcf6388d7fc3035ce26250e434685d87b5b50988d68e587695abc4c4bbec45c220c4869a3298eec9032864f772b48130302047c435bb500673065023100c154ffc98a672531e31b795cc0169c0a43bce90211b3b317c56c25251f3dc102f3809b8383a57e03d0186089e80edbc602305ac3ecac10a54e8628accc1fc634162a6de7f68aac7848dee152941b343b7d9ffcef9ac0fd13ff1a95356c255c6880f00302047c435bb500673065023029ca5eff9d3de954744330807a0fc71e02c6a63af5400e0d18466d852f97dd91a4fedf0194c6ce1bbcbb56a3871616c6023100c42cf77a5758dfeb46eca47a38affd60578d136eeb7ac866b4904fdd2fa288edd7cec5ded0f8f88f1b7afd46e4d7f7bb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301425ba465d93483365aebab187845a6deb9f85e03d806ae474dc241f4df7d92b2f29d05a1fbf0815fd27869d58aaade002302e03d4f51483976d47114fef21d0364c3f6eb060d625bef0ee018d4106f0340867b0afe870fb6a536b93c98dedc45e0d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307b0a53adaf328d3c1190636094a242c32e9c925786ccd45de2c63ecef95893c4bd6c798a446004444d3c200eebacfa4f023025cc144be26778fe3abcc594b2b113d411b9e5ff3a30d326d5558ef75e7f774827590353a615e4db7a11da7508ea8cd70302047c435bb5006730650230385fea9169e1e19dd04c9b70d9a560bbf9bd02e2449d8b1191245a6a7ade08e47bcea20563e71049ce393d67199908c7023100c96cf6e39b4c0a2ebc3ca2482dab95f081f98cbed7c04d86418a87dc428ce9c761dcc91550e8fd10ee7b864fe4d991120302047c435bb5006630640230337bff702d1440a689b5ad5d6c75b6430d9d6319b7a7ea75b3554dc5e83d3f0af1037515bd5d0289e94a9403d428910702305cbffe96e61719f9ba6285d5a30afc607f2271510a750ea4e9363a1256cb7ab220d6bf5851246f3cdd290458e82c26150302047c435bb50066306402301e5610879e51fa0cb219e9b4d6d76a98bdc1ea47e0f0e6eae4ac72625bcf17eca4e2d3cf623df4dc616cbdc40cc03ef4023036fba7d382f9780725988284d3475d7f39d7beb5ae419a899a33bbc63e18341a18e050e21d3ab17277c82e94d9b682770302047c435bb500683066023100ae9a26d0061a23ac9fbb4b391bb1dda9e0aaa93a1f670c3f7224a8175d8c18b0568d34f1ef946d7cf47bbf0cd0a5b593023100911116bb86dc3c358e1a2ddacdc252fb78dd9654a6a42b3f73bd246105f8e9c913b37b124995e0d644e57ad49e84d4b50302047c435bb50066306402305d8bbe335aceeee97d2b718879bcbcf1acff6b8ebdffb6f6774a776017c4d48eec8c86e4b478b5257b96016927e00a8302302e2443de951159bfb1314c1d2472edec490d8c2eab02242f6bd60a520120d48197fd202bea2903a66cd51e1d427f1a370302047c435bb500673065023100f398fe02adef043e500be8c5e02384215182b1b20192168832ec1753a91bc6a7437055be03a49ead58cbf9de7f4b68b5023079d86235058c5edb65a8a70e999f9acc48c69db4cce6c72a60b34af003584d24eb1060491cce33a2821fa349966e84680302047c435bb5006630640230490c93b7df1318b514aec74f45e8dd5817fdb09e301eb6e541bcec58083574987060a3f8e65406adfb9ad8e97c67a831023019cc2de27974e36ed87d79c66b366530ee20ec93c9bc704955e59d540c178e317032894ec0e9f6bfe1957ef24ad7e27d0302047c435bb500663064023044c12d6a3629bcbd8e93e58cd352a905ef9b5e47f91cabcc6614f8ef38675dc945947876c29c4007f3a2fa8790bbe84e023029ba2be408ec8bec881716b32f06782023067e6f72fbde3bfd3be9bf77d6299916bc742fdd7ec01066ce95aeb44934010302047c435bb500673065023100cb4c0604ddb5f2ebd38c5a2ce10b39a092e453b47767001bc4381e8979c4550ac2216ecf8290133435b3ef9fe67d43d602300e9547c46f887d718d5bddcc45f715ec156f19f8010192282aba9a57348051be922a0ac23b172433a996b54efc8b8da80302047c435bb50067306502300816e4af76d2e57cd214ee872b4a50b69006cf77d139860cb3fb4c8806468c19d893a6ab926f9ece84d77d12a7ca9de1023100f528f6e5cfac089d31be461acce62d8436f60b67c809e48ebebc4c517029362a64b617ee523e4dc26789309186a6e4df0302047c435bb50067306502300755f0a873bd245b3dfa236763ad1b0048a628baafb9a9909578875436bc10b3e2d56aecdaf931d0985e166d9f04f9a7023100fa0b82f3c1b061135969715020f46c306ed3aeaed1e6ed056732473c7eec92a11118b771b0c8729679eda5f7c8eaa6650302047c435bb500673065023047abe095d76f1a4fe42554af4f9c0128042e0064a6fde4a208c624be0da21c8022494dc664ea2c84b584689fd7aacbe7023100dcb1834ef1dc1432520b91c575d237d7fd1c0430642043436a7a49c560f1ec6b62c33bd28537dca197a43949029638a00302047c435bb500663064023059e12c116da104fc500cd432462c035668b2105067891741078494c3ffa0a3747259b9a9c1a1c65b90fc7e35140c515902301a4894f17beeb5586b25b90bee227cedcd3c0f3961d0dbff56ed5b783037a58a6a710189e32951e2048afadd7fd6d4f40302047c435bb500683066023100a76a9753ad54ce9f53305d694af0624e5e1ad94d1eafbb109470fd28e2b985ce9e2bc12aa5a90d2f77e00911a151afce023100b653759ca35eaee123b7d277c21307023ab4684d2b6226d12b15f0ae30e7bf2c1717cc236b9eada624987b4937d4839d0302047c435bb5006730650230488d7c232535d23a0adb3fbd5fb25761eed50c0656d5fe71fba3e70c51e7e51a7bc482d328b687da5aa020a627d5d5b7023100adbd125731ce72d9183b6acfb1c80c53024c104e02367363ccfc218a1bd20eeadae0b63f7ba2881976fda8df6bfae55d0302047c435bb50066306402305c3cb4faa26b77040756f922db971cbdffe0b41b5792f04a9963700fb11e15015dd4a3d9cd781ce2d046be8da3a7ffca02307cbe950b08469f28a6b88ac938500f55a0c4f0c179de5df22e98e0a2bd71eb28b91c870976418c8ca44efdaef26702b70302047c435bb5006730650231009a3a09c3b38415d600fd7a9b52e4973f844464d2f48573aafcedc46c27ecdf37ae3449dc13130f732d7da8584fcda22602302371b1f8890b97be8ae508ed021716a31022d19f7ea99ccc076a2202ed98425925ad1fba0b276caa3ec371ece92af38f0302047c435bb500683066023100e66f40229fa15a8f7e97684dad5b28fcaefc2ea4c8ff0ef151d24def150fe553c32eed377cf6da64b8f2868e37c61b74023100913a2ad99ea7bdd4e5acaad1722307a342d77d6705d0d33df72164eb99b15ec0ead695c9a76088c06d858f0e020619940302047c435bb500683066023100ea50927de50cd6412de71a6fda7f0b756652c9b0603667521609627b01a2a92ccb4c5c37778a348aaeddc607a0d65e9c023100e9df0ce5f22fed7ed3c23c08dab3e58daa19d35039ab5760636e2740ec3f00119dd9e37a5d7ca6b83cf36e8fbb04e4d80302047c435bb500683066023100ddf09206a9e1028c2efca4e9aa4af872f787602a7be18c0af3ca5b417cdc2dcd8ee39f0288c553add684d5fb4c65ab6d023100a67fec10b387e220359641337c0d5146b40930552a4a0fa5fa2ce8c046ea70e097474441909d99a0e5bd6b36a3d5060b0302047c435bb5006730650230609189eddfaed509358613360b8d9be85c17ab10beb3e7d27fa3e5e3e80dadfcb333b1ee3169ee72aaed28dc174554040231009377be810c79bd55b91025023957a8c8162ec8bfa452f2bd9243791e22161b9b063275d3ee58e354112354d56f7fe9cc0302047c435bb50067306502301d19908431869b5aa791b4f009f4b196e6715789b565009610e1c6b8e9ec626e81433191ab5231f7bc0334adc1483bc8023100b27728772a3ae955c7219aba321fb35a89ea21df5918e571fe4b4976a195cd4032ca262ca8dcb87c772e863ab68b8e680302047c435bb500683066023100e20cb1df795d808f985949b70974ca5e03d2e41bfd5e71d8957cda3105ed0c25ff7ead48975cbf98291c79705df13a4b023100b97c098b992b159622136b33e626b465b5ae99a04659e922f207e4d0b57734c8260949436d73b41e174ea20926429fbd0302047c435bb500673065023100ee4c5c7f1f168218a584bda06ee8204bd500c8e22043094ba947f9e492d17b33c3b6e3b2d8c23895f06e7dcf481dc33c023065abbf2c2776abe54566bd4adea14be7f0e8f49c0b6bde4c54cd3a2395e5f8d2d8f37594ba41f2b21c9ecf104f8f109c0302047c435bb5006830660231009a781274994dd0a9707c0d36d076d989c03180a61f9250f38ebe108bef3dc74001e120b794848271e747d2ce2e635286023100d3123fdb268d9065ac93bc096772db068290f531b4496b344076c4a85866e0fb3400fa41eeee47e5c4e7b2e373ce59760302047c435bb500673065023049ab6947e6bdc1aa5b14bdfce16a71861dfa520ddd71acda5d9196aca26e486ab4c719c946ef65352903fbaabfb73274023100d0bcd14e6aafb069f621a3d98ec0aafb0da4dae1c224a4d78d4df01212ee1aa2e5ae0e8bf315005ce9a4758f2cacce060302047c435bb5006630640230324a6ea9a38324422e2368e521da5b235a1bdf3568d78dc09c9f0b37fce509038edccebd5a1a668fb67d856a6a313d1f02304b5393ce5d125dd51d8128a957f7c3691e7ab6724c0909486542330bb43c6e810cd224cfc78638b85eb987c2e0cd90c30302047c435bb50067306502306162a1c0362e05c6dddcd7c9588ed6199d8cff2f2c863b0fef73faee4c6cf465b385d3bbd61976fcf66227a2e676a100023100ef7cdd540e6f5b8e68fd23fd66ac19682a8fc616075a5d2b4d8fa34495f43debcebffbf34107d461fb00860545d524300302047c435bb500673065023044bfd55ad3f1dbdab4313124da691ea0b4109b71a8dffa473cb74ae2b9ad3e2e2a3789bc9538ca21843c8437794b1fb5023100c74b45272aa5b8a0a49107f8496360b05658cabd7811205508a59bfa838e92d78a0aa1d66ed8ca281093f764ccec037e0302047c435bb50066306402302ba5191a000eaac9cb305c1694689d4c328ea63fefc04790ab871a801dd3d58907c0f979fb16d43fbdb19a8751f8d04e0230511d4c88fa3992d6e999c01bf86078981e5aaa099058c944adfeb357f4fc20121f4e32637f00df45ede825b7ec78a6990302047c435bb50068306602310091eeeaef0967f9c8a57108d1da93e2903cefd900ea402ab20f2ed4c9fcd2e98350ab0d8fd20bb920bb34f154dc08e8a0023100b24385122fd8ed2da8121f55f4eaa65ff8b56ba78a4afae0680e5b731df9663be41d95ccb97f085e26c1443bb96922290302047c435bb500673065023100e7e1571e6818fa3bbeea4acfccc229e3c595628ecc17d8dc02244629f218e0b56d7f482448b844329d9f46489a7f87810230219f92bad390e156793b3023f739f81fe88da18e9e5d8a93b572df4731813a42844d51b22eeaf3299277df0cdbe9f3af0302047c435bb5006830660231008ea3782aac4928539c543e65f3ee3a96a9b3ec9a313c60b9d023470aa68e2518fc00b5565370d43a2ea8fe4e89370307023100862356f11267c0b02266d2d8c015d3eb09bd34359a6f4bb3d1e172ef84d3bf96b03fa4675f87be38890227f19e91b5070302047c435bb500673065023100cb748dbabd8872829209d91a0bcfc199083268547d495680fd2493f55412dee5698227c7032f2a24cf975de5c400aafc02305ca2bca100a12dd3aa96635b55d3fdd98473a83b88eb95102afa750f1f3871f9a2e44384b7cbbf63525d0942bd83ba830302047c435bb50066306402307dbb69bb1fd8b9e1e2b72c6d56ec37cd81030f3ad4a625a5b03544e879d4da98c728f351839d76fda0bb51001ab6c6a302306cd3ce5da7ddf25c90aa81793389d10492519c2a4724ff61ed7a2c83b1c19b4310ec359201d2343677b792a94b8fa7900302047c435bb500683066023100c886fd15064a633845900001d3d7cc4b007585cc25139ae4906bfd25ae059a85aeb518663d1c8a410d70d390acb5986b023100b387a44fb32538c17283d448200500c63e01ac1bd53579901364cdf2123028e79e4f636994dcfe67841eadde3d9916460302047c435bb500683066023100dcb9491c228e508e333c3570b2c00b48be05a9d5b3a1b15b3a806d934755a2e5690bcac99c0f139f757415e92c628e62023100f1c96e78a49ababbbcd221089b52650d67e541f45f22a736b18f216f98a7b1ea0a7593a6b6bb08bcf92912c289037fcc0302047c435bb50068306602310088f5f599e6e2f149043f6cc9518fd81d734a71031ba1bb2d60f2e56af76c9d9f5877c5a4294caeb1067a8781fbcefb31023100d0fc991703f6aa089fafa29b1920e0b7fbdd3f9ecb5d1931ed1c06198128259c267267d7062d4e8862f4d3f5da6da3540302047c435bb50066306402304a7af7ee0aa84e80d26eccd64cc72fcb011e407cffb1dd6ffbe1872d106f096f1db3ee418e1f275db89adf610624527402304b680767ca6e5842cc78af8a70fe6f3d574b45ff2a764c0214e7ec443d37b3cb410c4958958185f1e4e6a2f14232701c0302047c435bb50066306402300875c45bd04bcfdbcc15ada4092bb58fd999f3fc39f790b27099488f0ae9ca01dd6f1da465faff79b539fbaf86f7c06c02300367422bf922772b608577a9e584a13f12d090d19def909e36345bff2cd25073a970defc1c14afea901eaa968476bd210302047c435bb50067306502307fedf9917bc91987f2cbce9f22c1c45b3d3d4fb44ac4fcf27e434f0bd42aeb674ac91e42e11b77b2775d9de51682ccaf023100ac2ff7054e8011efedaec4f13c9916e5eab69928deaa3f251494b8aa9d21317cc7a6588ce62ea9874ff23140f1cef9450302047c435bb500673065023100a9ff55bb211f1e8e5b0a053391c071ec8ed4a7b133a7fc4cc93a02592ccd34086846a625e60e9cca09ec72c6e863e1ce02307d773f42e0711ed891f0ab59a416f75a31261322a4a3e235661350642d871fdb132acf2cc11b79b6f32ee207899483aa0302047c435bb500683066023100fc90846d674c4bfed7e1efe1efc32349777be21c7643f54b48e5c0da771fc2cc1fa212c13283bfbd5662a9b2978f8782023100bbbf39643d701e8263b1264d9fb9c4fcef1f3d71fff9707acb4773d4831dd65b6ad888e4e7e278a716e5a33226c30e980302047c435bb500673065023100ddd78f9e17afcae2e58ef1e431960743c00770e28d56842ab09432d2330f320abccd9e9d89a6eb2e9d3b0152c715ec5202303d2de9e100619b259b8919df7ec8dca29eecb97a5ddd293a6ce13f385b51d9e9187209ba8bd81527278cfce85dedf8f90302047c435bb50067306502304ebd16528256683ec37d4ea1886723f14f64ab28384891c0e0b0701b2a32d586f535fd54e09060593397296877cb44ea023100a84d1bf13436c8fbd579fb9c3b1adb52ec878a33c5620b62510f1f91e994c5797e2f02574a7715026a5697c73cbf75db0302047c435bb50066306402303345529a2db48273b5674c2c18d8cd806cc0c067c8cfaf8b7ca744157ed4832e32cf5896e5a4a49dfba2c7dfe4e81476023013edd74531d0db6d9752294378620710b8c26952e2c4352c6fcb69661e188c84c3cd1338aa5f56ed0e06b0d9c03914a90302047c435bb50067306502301e70fd08048dff3fc85eb5e5a4a9433febde1c039d8c373a0171e6ba91cda19ca5e2fdeb1af6353e684f6ea54bf6841002310085c746983bbc115eb90f7b77c58582a6728e098441ffe170622e88f76e870fd4e2945da3f80df93725f98007611d7d450302047c435bb500673065023100d2422c7c669c978bba10f42e107c9252bab66858e9e5bef58647f929bdb130b994b5d549a41b841e952a2826d5eab94502306041d9e595410853029ec9ec3745cb86a6f55de0ddc3af4495b4254f987c43753c92753f2106eb16ca8da12569bd69440302047c435bb500673065023035c5610f3fbd38dff20e6ff182309e04cd8409994ece4978cd92616c1507c957ac69c8e7ff6ce979addaa421524963ba023100d44f1c699b42465bd52c1392fab116944ea0f2afd9a088a70319603a9e589596cb8fcbc88a73eeb7cb190c072d4aa1110302047c435bb500663064023002f0b03f4439500e31711d582e59478da0b74b830e513bffd27206f045ac0b0ba0e9129fbadb64ce4185bc7a048dd22402302f70a82dac687d801701ebd310e0339f6841fa70e97a532c12febc9daeff4131e314a739fffd2547ba64c31933f3d7220302047c435bb5006730650231009c455b4956665c70defe5669117918d4b083d7526d4b2ecd1a5cbf4f78eee1a9ddc6ade6375b0cceaefab793d8a8015502303c0d94e099dd25a339f79dd8ac6962e4cb7d7f7f3ca8e6c7b698e82bbc3d7da42ada5405401fa95b5cf0cca03ad761e90302047c435bb500683066023100b965fc0c710742c64d89ad7903c65b6686dc927d21dc0d19b74dfa1deed4ef91e448f1f8833be4831892eacf5436d8990231009670c40914ade65d7545f2e6a9a7997854c9bb42cb9a4e0b6d89197307d94794f5bb1da860bee37eb1fae9382c6b54090302047c435bb50068306602310087a02adbb76a2d7b7af55b5f3cb23f5bf020076eb72e38465495c395852b4abb4dc27a50f80d146d20fdb5f50aa707d9023100d76450bfc2ef01ed3f949d11cabfe93e5d407bcb96c93f91227fa8b7387b5816bd18f41794c14a0470f9833288aa99610302047c435bb500683066023100df83638f04590655d70730764b5d19ba865d4046b61a9ae626a112fb31eb32065fcb8f8b0244c77e79c7ce9b8665f996023100fd363ec3a9e9a5b93cb00da9170dae5efe0c6e888905aef175cd4353896469f71b95546127625b7f29f393575c7812840302047c435bb500663064023060cbfa7cb5cffe238778ec2378be6a3f73c594872b93f89dd7d5657292e56fa7e29273ce55193d5a557272cf83d8a9ee02302f8f92cf93a4ccf11f608aac79cc03c90b3051983eda42f8e2d34c260e4cc9a8a8cc1dc22e1beb5f431842425507ca610302047c435bb500683066023100d44a93fcf9844aedc8b065f4ce584396ffe09dc9e3ea49d6ab5a4af85b58f508c1dae390329b6f5896624f345b1fe141023100b40b588bb42499cae44bc94eacd8117711aa078a7d29ea6d061df8efc240d6b28392e0964dacc18e2ade64ec474160600302047c435bb500673065023100a4d264f1f3ce8d3ba729ba3d1f700682ecf57ff808837070785153032c668a831789f068d334a48d01eb1ea6a484823302303def897a18351dca7e47e4a743ed431d40df8ea5792674e903b6b4c92b6ad0f408708d012b22750a16ecfe25431237590302047c435bb50066306402303ea6dee41c288867bc6f7eade1476d1d010e9fb577491637a548e931edd5f4e01b2bb8a483e807268fe2ce7101e71d3702302cbb430a1d7381fd77c93360a689e75e1eb40625d9bb1803373053d45ada4870f7e59ec66c326b153e1ac82067c85ee20302047c435bb500673065023100dff30eb78d0a03b0a0b2498f12e7318dc3bce769ce2eb3914fbf3f54b790c3f92c20bb29241d9e104e7f21a049a1abf10230307e61eafa57e9ffcb413a387f6e533b55eaf57d082233da0604912f1191ff43b81e4c775285df969b37f8d4ce608c8b0302047c435bb5006730650230167066fd899f177f069bd3ac283593227e56166b2699d0372b22d295bad701a5dfb04af35d77fb36a88c17011d5c560e023100f1ccd5352b188701e89dc7aa81955f3a4153e662e021850ffd007126bc012e51a5208cbb19b2fa7598a036f62e67789b0302047c435bb500683066023100f190fa060550385dc44556a5e8ff81b2289345863e1d632040050985b30c2cdd9ad80ad70ecf27922263b330f3db8050023100ccc1c526e80b511bcb8dc9b49a783b82429b9cb36719ade524b51e58eaf090ca88c8cf36620d57bbd51adf1ef9e281980302047c435bb500663064023046c7e50b5daf2cd72f533f8b0bac2e3b182eab0439913552ba398dab55976231f86f5f0c45dbb4a45f45bca19658d54d02302bc9b03d9ffb6da6eb6d20c059f8edfd4f0624fb9c009d03acb8ad1606045eea3a93d7ebaaee721079c529f4729e3e7a0302047c435bb500673065023037a1948310f6290fe7867e971686f7432741dfe66345e628763d8316e1f8b449a2370112a582c4e029ae907d599c44a2023100ec91b594242056e009f6c75899a36f30415b1b585c654345c23e5eea07ca50a5a137ee2a8479a4e5605c5c7cc75ea9b50302047c435bb500673065023100f662861716221d5ea7c219e78829c8619374224c2c4a61e80c8714a5772fe3a1f6d621a4acdb895b76d11d1a6b6a32d402307fec22ef5720471bbb871c48ba196360560da2dee029cdb5f16a498aba653b9a644767f1dce6f3f7a8e5242b92d609520302047c435bb500683066023100e128cc9489e6fcd0f0ad2918761b3bea728824cffb1c3af957beac7b882bc47f33c67ae91bc8e850005474fbc86a80a2023100811c72444c306670b828fda896bd7fba1915d7a381754052b23cdf0f97b494d75e765a02fd34bab73c2d37394468c2e30302047c435bb500683066023100ebb86a615f67e97478d83db9ef00c36d2f66bf9200bcab6c20dba9c88fdd0c3bfdeae367543cd7a265f3eb659704cbd2023100b1c519503eccce457c65f2e9d31e86935525033ba4706a93d86b4c685432734cbe715c1cc2856a771e2e7ad864be5c640302047c435bb500673065023100bde0f688d55ae720aba9d5f05552f23bc5c9ae9124af76178311caa209251741ecb8f5316f9c3ec6342065aeb92b2edd02304bf927e77a9b06ab3da5a6e122a1e1e9989893b113bf3fc65fef1e494a94b5ec10b0697c9ac87bbdb144a9536a47e7250302047c435bb5006830660231008543f87b43b56d3d1b4916e8cc9e65188ad1a1ef2ebfd67a26f8c8fc33d94a0b17a99749dcc8de15c0e33246abfa896c023100c1ffc35a4002a613f96b3d9b2b3f7f5108e3838c425f6b50f183ec5262b12dccfd580c8e033d784a6802db73a7c3d9920302047c435bb5006630640230180c4d4d375e1285dd40033c115a5c8470a1a2cb3e14af881ef828b7a2179f6fe5f5e79ca15dc8ec945bc2148cc5809d02304d0d4074d46fdb6f4d4bfaa818a1d60ebe25ebd7310c6a7a2f72089468d5f9bdb790c669c7da12e4f00bc474a45630c50302047c435bb50068306602310085ce14452127538d74541bd6732f0438cbd88104fd66f11c25939b893c6048a7c19b2c4cb3fdbad376cb424a0b6f298b02310093f20ad2a509b33d6425d3b7eda8d1afcb27d472646f4856bd7b3b0ca066b4a9aafaaff381ae7355a4b0e5d372a048470302047c435bb500663064023003647779673bacdd8e440ae9df58f383d35e3d4a48ee07ceaad8ba18d4891f5d390840c0f04769576f47aef4b7f4cf0902307311ecabb36c0501faa66c16547ac21264060c2254137ee6a3a4929f8f1a2ad1edc386ac2f1b56d5999328fdce641fa80302047c435bb50067306502305996fd6d49e71a26558e7e96d4df3d26ba785bde16a625427b1bdd807c166f21f72997ab1aee85fc099966d90cb209830231008764f497d64eee40b4391dda14f7e79f592d462e4d8bda65a55ee9c4483cfef0845c9e7b40d23e228efa3feeb6a2003c0302047c435bb500683066023100fbf2744df5e1b1f9d0f06968cfa02c283b5747f16b606df444ef8700406261b4e02fe102b0250e8e70ef56d8641fef9e023100e07a66323d39369ced676d87cdefad732cd18da15de8ff0a26e1259e852791c5ed6b65c2ba94411ffd49f7a8aa6c499c0302047c435bb500683066023100ca8dce40f6030b7c4a09c473f0a0cfd2b831cb281d9583c7ba2e3114d8e43b70f156697a3fe25e0d74be91b3dd10c479023100820d1668117af370c6e55a2fe57be7ff9763ebea0db3fd0cc192f1e212be8dc562613be44442469f9b066d56f51f1c920302047c435bb500673065023100af1ea908431a903cd69379383900b5974ab317241255e32788f65a6570e4dc22f249516edb86f7498fd8474c6e5a38390230649242067351a60466bafde804419c5919ba604a42375c4c63f95ea5bc5a503c352384e100f720e61f69537ff463f5a10302047c435bb50066306402301ff0b14517fa18da78e46783b5ecd7ecbf1cd3b07f07a067a9cf335622215398574e03569511e3ed2745d5432107ea6402301243117a0fddbb96b6d91500e53a020f6d24b87dcd278995259bbb9bd5569f65ac3fa8a832b367dee4699955a2ffa3640302047c435bb5006630640230110606be76be7c728f78a88a0f34310c806447d762034643d459af1d52929f508602b312d9184355ddcdbb82891ad641023073fe4699dfbf9e76153f7d687a8dd60357025745eceb8be82abcea0f5c25e11903e4fc94f635c0edd1519fe347ba9a890302047c435bb500673065023046ea3bbfcfd37cbb65af4164541143f9a0e726da36d35141365fca3a3ab28ed1265c4d938d0aa100ed4c969fc475d5e0023100b8c9e88572cd2d4ae19bc384de53c1e20c750e9ded1681faf4588d1161f221df7e075f2a68a067343d811d2258f2c4b70302047c435bb500673065023005ac61f3c05f5758bdc0959abf5665ffee8441e9e26cdc4b18705b21b66c9cde880e09b5f48514b9d885bcfc1161ec3f023100b7ed904efbe28276edf29975e9115a7eb82b788ea8db9e5bbef99e0c13c92670bce7c470e45f8a232500f816ae7d27470302047c435bb5006730650230211cc788ed2b02e5df7266e6e987a57db0a82508cbbebe06224a333a433b08eae252274ee60bbd9f62d135e3c2be7bf60231009a5402c199efc0befd81e4784ceb9ccf89d4110f656c75cb5385f30a47147cd8bb1e51c15eb59c74ea13386adb8481f70302047c435bb500673065023100801bb6c0769162c5eb1a51bfd6b5dc1d9493a268f2fe57b46d1769499bd8d9749d82932bf795c55c1a22d30d565d93540230596a954458abfe4e4018f68ff3cf13f2fe8f628ab80368ea9c3310d9a8f524e338a3d67717185a396b218fda66f252970302047c435bb500683066023100d93e914594974fcd91a08159779d4fceecc78a430dc1663f3c57d6c861d91f43206cc3ac97569783410af772c1240f81023100cef5956d770bf1c7fb204b1cb5758e6effaffd288d58db6578da9c2bebc1da88790340f94c2ee2dc70e452a4780b3d310302047c435bb500673065023100fed4e02738b3031b4aa463736f2f488883181048edd4bf4377a96502d32b345ffd93404c806704bff91256607057061e02300622e357c3fb29fcba582beedc071dbbda2e56f3584e8a0a558b390bc4d28d43937cee932e095e10f953278f65b744770302047c435bb500673065023100a1ff12c138923237198252f3bd949a4173d69cca0b470314182d3184e36842b589acf78c9b93ce48993cf8f8727426c1023019ec09490548b0819f326928fae31de4fef25310cdda32c09f628a8b2b5f6dc5b59aeead11c681fd83be7a3517211ccc0302047c435bb500683066023100ce476bebae9f9670ea1eea9550e758ddf9ad9758277c38ed9d571c7ec0c151718b4946a7ec12ddfdbdfdac1502e05ac8023100acd3764174e5561b879d124a222fe6d1c9b3816fc682b868c268d7e5d3d85266bfa3e06f762d33190230585a76f140180302047c435bb500683066023100cb0bf85c276e7840f9e7b629fc8c6e3dec73486a66b0e8be25d031a82f5d8e2adc365bbdd68db15f8b3505f4d6d406d4023100e463d063836f902ec5e4403cc6a6f11e8df0be5582899105d1124218c83182062ead7ec129c417ed0cfd07d33f4ace670302047c435bb500673065023030753cb834649152427c778f4d545e429e9b87591ca8c74acd7ae70bac3383e91f06b32a56968cf782d1e818ab0ddf92023100b7e820fc4cbd16afe6a8389502ed434515937da6b604f05191a981e5bec80eaad01811da13c78c96d3e2ed93bb7006160302047c435bb50066306402307de85f943b22d3a387db8ed72ff354df5255c57f571809e959a5e69929c794fa384bfd1f73db3448cae970b145cd574902305293b3a82347603f79858e1d96f32e924daf995582abd301172976489b572854f67ca12b025a9398d4fa238a116902160302047c435bb500673065023100ec68dc82eb5644b7611ec4cba37d01e8f2b85bc7439dbd67c08cd45e298b62a4e41444d1acb565c4801cd58b92a4bfb902307ddf5a6ab0689edd276239d7f0f052ad63cb1b610677fe65ed863227bb719679db201cfca438ca9f4f9f852f4b6b30f40302047c435bb500683066023100851da1ccfea0a3e826c65824dc6a883425d19f691b4973f7b10ad80d096a3a44b9f968c7a37475f4909c4fb04e74b6e1023100daae0911bd461000bd0c41a0faf2a2c8764a85f4325a9ea33fe7c565c444004d169816e2431a437f9239cce95a64e8250302047c435bb5006730650230498cc9f33a39ed0f0dc4990945465d6af11c68d897b820afc6beac59a46c92f05d61df8c9e03dfa1a366b7e7ac252de0023100fcdab6c3a63efe5a2955cf09c9a4ff2d48a95a45200eb993f676c46197e824a3de7f6c3aeba52bbe777fa0425e9dc3c90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307a0e2e553fbe3129d13e6d41f94da0a0e2ff0719daec010393e20e351f57a001c04568aeaf98701080338cb2c0b865b70231009f1748167b0218d1d1f1be62d2c9362db83e6c6f17186bf1871796e3c64b81b0869743add5a5da039a56f9d05934ec250302047c435bb500673065023051f19386bdd03b60a2a34b588f8e74532a6b0cfd0be59dd530f7268bbb85126d429f1daca58e09f3483168657233b21e023100cd9e42948b8569535765075cca9738645350b3171be037c54db0ed072f68a5c395275f80310a170427f49c674f4a96160302047c435bb500683066023100c6ccc46deb728a4ce601d8598146f3d77e65a3a361e041113feeb5a355064a3389737e7e275312f80b9860a04666585b023100854166a297499ba1303d218b96c85601178bac0335c215ade0d2b08a0e1c2fda5063519f2baae74a8347ec51de6d63590302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009fbe1ab611ed9bebf935c38d9022a278765b453301ac32a64d36651cfe76d2cbac8e0eae4c76853009092d47b235027602305b70c6156aaf3cfbecc1035d557f22eb2ced6269384954d076ec3293b6d9d6aa22fff148a9bf03f916968982848b5ce40302047c435bb500683066023100adf8b6d20e321ff213fb3ccda1c0de4d32a60aee115c4b4b7ec5b9a9a79f6984a38a4255e7c8f59174ffa16d91b05423023100ecf1edd288a9099dfe5245442693075a8dd9e09c86a872a1e1e61d60add9fe97bb8260ef6a0d5c17e0cc3155738478810302047c435bb500673065023077f6725bf3d2d14a1c5b6eab4df772b9ada0d7424bec5fb925028358f99933b1151c6238ec90221ea2fb4f3ed2e2421a0231009c22164ba85593a467a446fd970f4268258285a565ff950155e91e781351214b655e1e205737e905be17a99b0251f93c0302047c435bb50067306502301cc17ca674a20451992aad422784a4c51dfc04301875d6d2c5832063597c48a37500c01bec1db015f31222cec073a9fa023100f1000e6806c2b04ecd4c7cf1df643028f64979af3a2178d5a2116b614b5b4c557fd4ecf8ac869518a7dd88d381863a290302047c435bb500683066023100cc241701fc206c44813cd88f583c346d5131e2ee8264d7f3581932b6028861b4faf5147f3f66e0a0f7668506c5f81d78023100c68fd8e2c4ec8ad935c2cb2ea40ca05f665582ba718ebcc98c5c1058d70ec47774b2e395ce195b349a06bb2727b905dc0302047c435bb5006830660231009fe7b6b56cbba5b02a5f4393bb859e74e00714068c4d699d022b1fe499c3acde0250bea80ae4ed65bc3a6591eeab2708023100f324d6d9bb03404c29b8660e7fda75d26c3ddd19e4fa42f8f78e18938c75e865a666e71a5de97ffa842482fec74d33260302047c435bb500683066023100c2c2a4dae36a4bb7d6f99095447a70f19f8154f4d8e7ba9b43fc4436f822d20968b4666ba47f0cbd25a56394c55bcb50023100dc90f0d300ae6b053345d752e72d16e4310dea57ee990bc0ccd1552f2932a93bfafb0433782d3f8301c9a7ffcda38a040302047c435bb50066306402303e6b480813a1128c071a1f90a6589106ccb0f6e6841bec71711e188700ab98a4007a1892f89e7b41d344ea49498904c902302864ff207320084f4fa2c7f1dc05a54f3baa4e0e11cde2d92985e442ad640cb40bdb13c7ccbe1cc2ef21103405717a660302047c435bb500683066023100e07a1197257bd485c12f6147cf77734fb3403025da445ac6bf36616eeca28889cf0011c4d938ee09ae418e2e68f1123f02310085fa55f8d8dc087875006b2d4582e6e01be808fbb207e9510cabcb678fcb218cb67667d85d28668cbbac95929f3618000302047c435bb500663064023048e82e7ff769c59494788c3718990a3f01270e78af02a338325042acb068510e01abe0d8453e5dc6e59ef8a14980a5330230765b89b5c0d6d9d75ea7669d6c552edfcb9d96f793b8defc59408d121bd56a1ea2320eebdab4bc87de64d1603a45fd400302047c435bb5006630640230279d7fd88cc2b671f2f5d89661eb068bf31e29c4233e0eba6ef27f74f0f57a98660a34ef76b7d460a42c2509872bdf05023058086a42ff7b6a657a839e2ecffc3ab071697bff69d31902c70e98107283bb029792834f9d82720907d527f2fb0c02dd0302047c435bb50066306402304abea77591b66b0bdcbc4148fd6871e6b56e4a12487d1fa4a53e417c226438e6444338cec7e249baec398a19c3fdebc202306f8afa661bd7f2a522286fd6fadc9cdf9f2245a7d8fd22d051ae7cbe4343f2d350d811baea109e2dace78b261f7b79100302047c435bb500673065023014271a4c2aacdf9e9e32e0591427d14c7bdea03484d88b970362af7b1051c800c1c7a51bba8f109c37c34d04ba120f6c023100a64a6251eb553534876f9a298653646e6f532b7062b97b218c0bf7b916bd85afe6f9235050ceb8317887acc84e18a24d0302047c435bb50067306502305c9cb34a688a26665142fdcf434169f9a5a64e4ff5f1524d408b31df776a095f8d75cf52b810b13d994a6eabdff9af49023100fc44eff5705f4cde176ce5f7562fad0bafb48de936423738754f3fc2d2ea8367dcd149a3695d6d58df342709a9cbc6110302047c435bb500673065023077bcceb5652b43071c9237b02512c1243877622d6f45bbdc9124e00eed03b8b577696a42bbe5a0e10ed22957137911df023100dca08a1462f8f10ac9fe21e8dccb7835ab5e5abfc7683d6a5ea25fffbbc8d7276916c501c3efd8814a575412a793111e0302047c435bb500683066023100e5781af62944195518eec942ab83732236e780501d90db4e6cfd8b05c81b320d66c02fa1ba74ea2b2fab3750009f14ac023100ef5c5b7d9813bc3285af6c47880148e71f5bcb57760e5e7cb9f62f872c36a4ed6a4f9142722bec0fb7715abd9d97c2be0302047c435bb5006630640230134a4b4d4c5336d2927a24213c57f398a9641307ba095fe757ccd4809d48ec3acd06680d62b2c87c19f094c5995c259c023061c7626c83eb81e0941d6af3ec48e9a5786d058c072eda07aefe76abc4a0fa63c920e54a387766989696dc7743e174920302047c435bb500673065023013c44ac509e3a31b949be1021549343ba12d0d44d9f4ff6a75159a2ea94ce7ec9b31d2bc828c12b2786d9d2b3ca68e1b023100d4b64a7f43727b185d0bd2f737ef00f2b87004b79be7c52aa91afd3775744fa955efd943e4081581ce5358772c86900f0302047c435bb500673065023079c0c222ee62c983e4ce4df787d12f9d74ed8a98753fae026269c3c8050e3ce5c24b95deff09f5c558c6642212b97bdd023100f2293c7e5e113382909bc9334935ffa06e3f0ad504693b68724794833f5452cb8e52353e5d90ca927f00cf475fd8c76b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c0f1d05ac307108db02fb932c59014eb0ee68ad1f967a2835348ccc6b8874bf31f5dd29498de3bf712e40d5e47b4469102306c5951e449250f1a427c47e0b27ef2ed5a4bf6178388a6f7bbf4f6b909ef9fad0ef40c680ff9ad9d7e151aeaf1b7c1180302047c435bb500683066023100c57f378f522f77969838bfba3aeaed1114183dc156315d687c2b219f1c6042009a3661ed31186ee87476cc5daf17e102023100de6eb7e3f64b8ab5a11b5b87264b5a49f86e50d625241c15be874fdff4e06a6d4047102bb00974cafa368519afd2f99f0302047c435bb5006730650230078e6f6a07213a4361d5c434420394e2eeb8ecc3981ce117cf7b3b0158e43740a6a051838c0cc6906960ba2c1446ab36023100c33be90d74fee4d856761fab22603c0fb61c0b71fbabfd28cdc472dddb57577aecb72f8e20b9fbc49aaffd1ee689abd80302047c435bb5006730650230249b3366d7853ec8c69a7599cc273bb637d2b0adaa28833c1601401698476546bd8a5b4a36d7bf2b3c43e59d52ef36e0023100ac1d1544562e04b88d079039f31fe1a19fe1a8091a60d9312e5db6dfc88437e53559708a7cb0c1e83994248a6ef285570302047c435bb500673065023100e629e9f97ebaae00fea6dcd905ff6e293c7a4cfb7ed2a8db312460d4b8376f345397fb76b9961460d8abdc12500884650230776b13d9fe0dca93605e1f08f6d18a5f0aa28cb6afe3e443705315dfde204bcb98d8f3d7db5801baf995ea9f4aca58a00302047c435bb500663064023021ccfbca2470c0a50f7de79b2894870aad3f943561208e7a09813a37f64e2726c860e196fb642f2022195a54b2a72755023041f704fb3af2b808c14fbea85dca90b0f03e04f0312d9739f471b961ae6f58f56649fb2439f4dca195099da6ca96142d0302047c435bb500663064023066fc2ad9554c7f3da20cc38809cf3de5d6d792a19b4e50bcfff701eab744708457e4d489a8a17efabbc1443d33094b8e02302859eb6a08fd2e5439425724284853a41646ef8bf0c63171e40b23828bb56dd2ce05caf97199471fd15ea723eef02b850302047c435bb500673065023100efc46411422fe932c084bd93f058a151fa0626f2512a534878fe3ee471c8d2a2637328b8dcd93a5e86af1f5685924e8d023031f13c9a940c29a760bc4e1e5aa16f9452cfd1df545374fe5c42528941cbdde4afec3f910be17840cf75b920dc0126150302047c435bb500673065023100ad2886b8b1fd37407e31fac2904b1101ce7f7d6ecad07947d5539804d7270f553cdfe40bd3c2aeb1d64f519b00cdd74a0230421dd42fc7d565f15cf43deb8034837719411ad540df4658037dabae309c6ad060df2b4e1459d38ff414da543807c2200302047c435bb5006730650230564914d5fc53c4e9b74a0626c996a15b3b293b7d347d9108defffbea3bd7076d670cfac641bc0edf6f5387410abf3ff3023100ed773c484bd7b163b9ba0098ee4db2fa3e1baf8b81f6553e6cd738c3908c29c63fe51b342f3a8b10265a392ed9700fc90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023071ffc1e8ff9d504d909fbe4f8fa4dae0b111e2e78874d8b7f51b84d8497959844e1bc9ba78e94c7451abc7360891d8960231009c13d1a37919f1168d5eb7426de59747dec366c329de212dabc9bc855b3431f82348a62a6a49dcb37aea41f8ea8831050302047c435bb5006630640230510f95a5dd016aa6f2c13b93605372f91c2476530328caca3c6b65a8b502db31479d3a2834de91305d2c7ebb6a55322102300436142d9525eebf1cdc920eacf3a747cdc8ad89fd2587802eb153c5791bae1a4151364df71fa4d6385d03fb9cb8a9980302047c435bb50066306402301b0da86eb1a6187e3d10f0c2ae56d195f21919f560715342fbe418a734639d7136dbe567410dbcfdf3d1a17ec123384402301fa0c23843693630694162fd24b9441c37535910ab2f540ef707405b8e63ec61263081e6714ba40560c3783e2da515410302047c435bb50066306402301642cb11a1d69e386493b0766cf4ee02fb8653c84a498c66ef692015a87264d2cdf1374e7a19993cba1f089e98a41cac023011acc098bd7b655df0ef4d843ea70390e21deb2f3fa31499f2f145b565c9d5204719f04986f31c0847fcd5bff25b93b20302047c435bb500673065023100834a2bb84d50eea7634921ea2f1a0bef5b1530ab1b3657a3dbe78726a9c5a9a2ddc1b4cda879f979af0c45c990af611b023037f532a8810f96f41615dd5379af3e38d8f52caa809bdf5d75cd25d73d952ca6058a2550c2fe51f10a03dbc01ba9852e0302047c435bb500673065023100cde96bd2d80a4eff0058395ca0d8a71e47e3fede06b50fe42ff6c653315a22e3b3790d52e2d2f199d8037eac3cd26ea802307052de9de1e9d1299c33b99ddc1509c50f8c6eb0e7cc96010789d162e46f04a66ceddef7e8712318f354ce211bacee710302047c435bb5006830660231009e910b23d439afa6c0366b7743a92fe70a5ab74425f1a5cb978abf8911eb5ef9638c2904dfb010f74321d4d8fbcca2d7023100c2baa75295de818887e4e7933df9aa3c752d25ab5d106dd457bf0bbcf49c6768447fb39fa16907d12efb5a11ea06f70b0302047c435bb50066306402306b18393a112e89d8ee4d455ade52ba3780824a53985cd0339f69434ca630cee0dfa35816d10036df247fe00bc6ff20bf02302392fe8efe4cb49803b491c1f3ca38ed4e68487fdb60f2a9f62cf312abb9fbea2c8defd7bc3e2798977ba25dbeaaeabc0302047c435bb50067306502302e62c128fcaf9699f68767a80908066fb3be173a8c31cfb11bcd0c0a35cac6d8fe814cd48177d03ee87ca9fb50b31301023100ad9f5d1fb384a55ca6bcf7d3ce02738af9f334f2405a223a9e1f6d2269869cee6618f9a4824e829d83ebbdab3b00ec460302047c435bb5006630640230437830dedde34bf729f5e7eeb246760457c632109b8b1a2de9d7c797797f5912f122bbccdc4847f2727930af91400ce802304101f4e288bb83265d43d786c6afb65b6436fc13700b58381b50d1c2e30a4d5614d598fb77405a7be53d4a896afe7a530302047c435bb500673065023100e037b2e1951ef8c78062cf9e35306980270de008105ed5d4f4205f60005237076ea11ac58513f5eee26889cd87359e480230065a76111222aa3dfdf65f54d67949097777c1c709c1bc07fa4fd2ae0ed5e5734ec56088e46af03abfc75f6cc0f04aaa0302047c435bb50067306502310080f2852a238d8e141476eb8aff7ac58cec91070c6a48c62f8059c33751b48472eb661a36b0e82063011eda577cd677340230214fa0d0d209d7a68ee2a74dc730a925b9d48f5d251e4ba1c8aa3b5376dce2f6a771b0b0ed539712414ba071eab3581b0302047c435bb50067306502300f9500452153054f80e86717362d4c697ac02885b886797af717a6003b0a9a28d411842f90daf26a6a8ee075c82711300231009d73f2ad16b8c66a66f13540097549dd73c6e05a3afe1d588a6f735f6b4ba0e5770c0a4367f1209bf345b7000c867cfb0302047c435bb50066306402305050e8e8f885b167cb080a13265f10d2a1bdf51f4717ee6647b5e995077c02fefc9f9ff314c97cb1d05b1e4530fe81d202306cd612c360c6b52c36c31758f20479f18c0ede7c8651f057fbac4dfb5fb3f58ab78bc04355ccfd8123b915b98ccb11890302047c435bb5006730650230147c674021591553c071e2793e1c92964cbf137f5d7d11231302ffcc2cffa55727356d95617066665dfbceba9fe2ee19023100f11f8eb8d645fab159fa38198e0e00b02c10b8bb6a2f479ff4bd2bb05b761dd8eccfd6bac97fff6b6a4e3b57d87f21200302047c435bb500683066023100db4d93eb78e0a353542e977bc052c43d15ea9a94895909fdfeb593e0115595fe28547b612f88f70c60d9b24a63377bf8023100cef780df2bd846762f6c12cb7ae3c2c674680ff4568bd1ddfd434db0f59ee3e1e2e35b74070957740eab831ecc99c3dc0302047c435bb5006630640230371e3ae65f9c28f68b4868660ab85c2b52c3f206210b203f6f5bc5c10f1f2d828ee140ff66f10dbb774c62f8510560f102303125917882b60ebb2e5b4e0d4183284f7ef0fe0d0fcfbfc56ff161491399238d717f5c67b0cd6f9051513aa0ded00eeb0302047c435bb5006630640230691e2ade8f82cd8585fc958b057a56cfb3a90a19c315f85d9114e9e0838687da4cf04997d50146ba0159c8fb45ebbb1d02307a50720c3f48e04f473c6422f8aebda96ba1edae6ea16e3a4cab6ac0b844551f467ac0fb098b5a515c667f7cf16221f90302047c435bb50067306502305b6ec22f9eb24b575b154af43aed68f1d0ba5fab8327b01e4da9ac12ff0a00da8f85e43125f61ef2b874178ab2b189590231008b12ad460145d827a87c2bd1f319b7748f3689b8dec192150b53067d0b74c926f5562200342c7ef9e5be57f3fbb543b10302047c435bb500673065023036849de72b37802e22fc479b864ba510acfa387620c0dba286ecbfebe9ec92df7139cd5bb2f16202cc9dba86aa444e49023100ac3d60280685eabdd9c642facbbc31df8f43d3be586fb5103e968f2bc871d535f0c38a8c8f057d7ef9de6605c0132f380302047c435bb500673065023100862f591c43f99e4cd57a8656b5c00cf147cec31e346e6c1217627b3359880ac651ff4315afb274e953d090e6af1a3b7d02304c5d8887916dcf0b4b57395f3d4d6fbe5a9cf4cf592dcc98a56e5b4cf1edd9da30caa32c764afea1e40772d3b5fae81b0302047c435bb5006830660231009a05b8be2a1acd9af8db710f0a7f77b5147d10db7f76e03c7fa038414595b00fcc516322ea510f4638b2d3ebbb0be85d023100826d52cd58ee557399b68890157cde8ed69da32fb2b8879d787398c48208df35bf7135f2c45250b6fcaadc3422f400ad0302047c435bb50066306402305c8303b420fe96ded4251de523b1021fac623bf924fc85d1b55eb70840899fcbbf9fddd0b69c6eb498755f3310fb4ca50230174663d9e6b73bdeaea9216df088655100c90a63aea21238a268b9652ec15b66f3971e1723fa3c55fa04b6133cc59e4d0302047c435bb5006630640230089f5e9137e9ab4023a1467196a20e9c520c8650b042fd5217d43f3018ce6ac3354191d5336163ce6bdcc9616d3997c90230616934c2a1461969c952b00188b578d243ba61587336a1b12f3d4c766cb0c168c6ba007a491a5205bcf24e1e844096550302047c435bb500683066023100a72d5aae61caad4129686e2b85498492ea8b4b18ab1f39d9abb39db57edad5221b211935ebf3eb2ff1e000539061932e02310092c5c0c503ef1c356f7d0ecb30bfcf8bd4089e9c6e2a44d3120f519d5cf7055d600face03c94927415d502f6ade60ee70302047c435bb500673065023002e2a25aede4ffb6f437a78a99ed8ff0cea9b778626ea364e232b9dc8eb75d3180cf6b2bac21ab02ad7b6dff51ed7c54023100a5f59a43fedca0663811c44683b21c0501df633e29c75f8643150ed68b33ce7661114a04f3f4ecbf387e08f020835e0a0302047c435bb500683066023100d9146e7a59b04895f4dd8af6c6f29f38a59b2eb438dea555cc6f80933efc6a8a7018dd410f8c856a700d2269685d7ea30231009376625afec0a15f5202d7710c02505980f56a587b16bd6dfd5e2b5a514470f42257b7fc3aa4a199cf89ef81e74c7a0e0302047c435bb500683066023100838701f91d4c67bd894b30ef8e3e618cd75dce35945f95718833324161293aaa0b7588d32c13f53a46fd6928f21fe456023100883c117419f2f126ff8b451277a87e279ea9e472b124ad7408696c0d9221a55a2de01a7dd9ae594852692b43938e8e9f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d321d638edd9298348da3ea3e851f61cec8cec3e6c4bb4cfeb2255e70ab7ad902255de44b3d9d8239e0a7007cba872d0023039215fa785c84b9f01633b615d4e727f783169ee9768c668edebbcbf7007a5d739a80d70ec76a34731f3555a53577cb20302047c435bb50067306502302376d7ce511ddc10fca52814866ea46f205e6950208247d8397be904e51587f23ffbfa384d9f8e810f47fd84bbca6f500231009ead18bf5adf293d134382d39028b515b81656211b17d6b9cacb03112fe6744c1201302f54a523a784ff886b3cc7b22a0302047c435bb5006830660231008d35ffb65533e94b4b0aee14300a47c65b4bfa876a06d2cfb03544bb8ed93cb37a3c0abb1e9b0316c8a09a3a4c9104be023100f1b466135daba5dc377e6e9aded366ee2c55a9623b6eef1c61c9aebc2c16669f299080cc0df9ce4c0bd852e9d1ef6d500302047c435bb500683066023100db3758c4ec11c388bcf8a108abe6ab54573908f3f9efdbd3b8483af3a3b2b6af984d8573e38311bf5ce3eddd278b9116023100ac5356d1788735e26ebcf606881f66bd81186c7eec4ed20451ca1408abec010081b5b1756d1f959e5065b704b81907410302047c435bb50067306502307f0d72522a8e8e9062a7139e9a111f14bff412fd0fa870d95c2e5becf3d5c9fd34e508b5826a606b145017f56134c029023100de85692b0f6cb8d6ead0f370fe6cfcbb17d4132cb447cf564cdc6245485271af04658e77a8015a057ae84aa6bfc9c1d50302047c435bb500673065023100c1e7bb6f35d2ecd8680b0dd59302913b6c1b20a5755c8c9efdc041dfe18e390ed7365fe1dce1a41def6ad3a0f4a72c5e0230355d56c90388c0a9593a98dbb10cefa046fd684e864d3737531e79340104e804cbbf83b7d28157c58c567989756bf7da0302047c435bb500673065023100e8cd5912284197462ab95f33f5653a3b74c54c99a83b1c1e8f9b70b5a28ffd872be0e8c68eb50a31c8c9145b4a1283ac02307683eea2621f0aff35cf9df74c480dd31723953fe62bcd5145e152316c0ef9ee95c27b19bc9833eeb10958a041e0c0be0302047c435bb500673065023100f3f4bbaafc79152db7c04b5e499d5e4877c2478d4d3c77ed91081a2b8f828580cc4c6d0f0d2f850b8c1190df90af4c0302306b2a5fa403d87cd950c1834e61d5e1692a7cd7db1ebf1630e1d5d04e8c180db13dadbf1e44d95bb8dc548803b9990ac90302047c435bb500673065023029093e9bdb873a8a97d0d3c087e7d646458b32946107ce6dc538ade00addc4ca706080fd0b8e34e43a4a885d000726d0023100eae3ab538d566f4db2e1e43df68384a85f921c448995ab8b8ecf686dc8bda565159620d442fb5493f3bd8e430087d4310302047c435bb500673065023100f10cb3486c5f659a72f2d94c835e9c653d2ad017db76f0ca94f6bca265d60606f0ad8f30eb6f311d1027a78b6c805e6402302da17f98c15935e60a34b1571c9d9ddf919af7aa46b4e08c7e37aaeffc4a42c71d6b23ce8ce8fd1df5e86a2f715776050302047c435bb500663064023025067de67a2f500c071e57ebcf99b909b5c58e12b68de395b07bbfd647f12ab5bbfe634b3ee95607da05c76e768fb604023077811b558c0088994220fae83ecdc7abf427b37abf6a07462a2121a671aee82c5a18c9d9613ebc7a2b27199e0b8f51c80302047c435bb500683066023100b7f34376565eabc7efc8304682e04c2068cc45b3d0c6003ef121d423a32752f5cdc008f04b7801ff1f0495b528b988e3023100a2c8bab2ac55950703f35ef96a681ba60deaf32ebbb92883c2a7e6a896b8f6e03b2fd375f7d7fa58de070a69f7eb4ec60302047c435bb500683066023100c919addf56361ada66c95892af59a8b4f46f0ffaf7908f64558718e157a7df905de04f22975d0ec1fdd5d85bd79faec1023100c68fec6d38efa07880fa22d55b0e31e30f0963be26611bd65a5f6f5c5420a2477089270c684fa2177ac83d8e6de9b1ba0302047c435bb5006830660231008125ed408878a9f6296bb63b709c801e5cee5e9e5719543c3e41d1ef9d3fc47e8a863874b8940f4e23877aaaee5e934e023100c8b0d32e8fef48d38cb548ec7a6bff41ea9e7da219d818b48d929a61b088e33f584e31ad33d89ccd613178d0cd2f13be0302047c435bb500673065023100f234021ad58f89b5d18b1e570d75079eb97b41245e6f4fa1b228e7b6a6604d036291d462170259403d44c930310332c9023006579ed64f092f2473e838fe15e95b202cbb9fe906b571c9134ae2c1306079f4d5d4e6c5fb9287eacf310132c40a3bbe0302047c435bb500683066023100c838ace501ea69fe871d1a00181de1476b7340c8e2846a17f4df389bcdfbc25c5ba8db66965543b9880511cde964d0b7023100dbe78c3b3a6ae041d56d8bfc10e02b22f22fc5302a0660f8c25a0f01991d690dfc4c3b7ab82048663ba6b835df6f2eaa0302047c435bb50066306402305b61dd4f0c34b9ff709c235ec68b35b8bf489f9e712a46303bb37813ed4e458274238cdc00129828ee75fc0ebe806577023055be4aa809f284e1d38ef90e265e06f39b0b6b7729ecca9b53ddf7a3af902295f8a55b20c05271e707e4edbdfdaa00790302047c435bb500683066023100bb80f2ce2f1fc22c78039ccbb280299b1f1c5a9e058b1b321b86b52f2eda1928321aa2271a2a4233a661c0beb82a29e7023100c0b331fed4c0d4ac5eeee8d349fa85d30b399c8caf1620ab27011e7d30afb488aa82dd4869e283e3f2b8e3df068d2d850302047c435bb5006730650230485e6df03a0dee98ca545182c364cf2cfa12363663c3303da24d1f1484e053f1e1656b2541fc19e3c7e8b49e692a32e9023100edb7587baddd5780ea3c2963658b7947f2b7ad9286df1d4b28d80378a4e6b216ef6f9000e995b88d9b2d977bdb93b5ce0302047c435bb50066306402304128c27cc19c3562ea52b57fecfbecbe53b96b4403024552aec71858af0ea5f0b0ecfa52e265cdaf99f6d6d3e408dbfa023073eaf793c4d34fbb23d7a3795e4fbe56a893d135491ddf6dd14b8388c2d1bcf217c999956c49416f225ad0843b212d510302047c435bb500683066023100ad3ddada8e977ab06255986cbb237e59bc9c293128edef781a872cba44e0b3e6a357a526d97f4fd9b3ab49696c311582023100bd5b1999b8ef06aadf9a2716154607aac42d5cc14db770918d324753f96aa3a6292d394afea847c48b93eba94ab042f40302047c435bb500673065023067dc4944fbdb7fbdc013b8a1d529296075d96ae8cf03c39369b19b84d519461f71e6ea6cb9606b86387915eeecb1a83e023100807b8a2ba5837d54646ce9f975da4654b79a3071b4d7346915d73873d80b56abbe87c8bfe975d0780dbc3605a218c99e0302047c435bb50066306402305e590711c4261d8f1594608d3784d0e2d7fd634ed9544b901d34345fb55d3f6ae47c2c675562b1325c4dd91894d2eade02304f6e92fff9e54787c64cfff38cfb833cf5b45018bd8c4b7e0960c408065b81844fee51e3002b747022caf105771c77220302047c435bb500683066023100c61b8e7218f6306180f5e5b97ce4040ab84bfc181ed8460c5c83c16083e1b6a0a1fef26ab4d33543c647fe80283e7ce0023100d73759e06a3490c2cd476e79496014d856bd541d085c36d3fa0554a1484fbd832ee85e415dfe635a1300f33491dbad110302047c435bb50067306502306476d2986b83b8fbc94f798a285ad4cd092620d1f3c2582b598432545329384ba12a66522f85d2934504b23e82acac96023100deb5fa6e6bb5aeed28928bbf0c7168d06a1eade57b9493ef35c7a5d7a8a9c81199eaa9e550e5e2714a3ff205321b7bf00302047c435bb50068306602310093226fe33000e18c58d1602731944645fdc3631c2c5d519fde4c416cb79b55d9ac365da73f6d63a295e59466c260b8810231009db5a2421e2de0f2b8c5c919d26d3cd0abf0141b809bd07e303741b537acf616830b51f892950952646ebba33f1ada4e0302047c435bb5006830660231009d55bdd1ea4ed1e1299d40a8ca87844aa429cd29e7a36d0c50106e31676f5c2946ee0af30e6442cb1503ec714a051f2a023100f0e9a7d9d2d304ec217f7300bc41ec3219e8a3bc737a7f27485751b5630db7d63acf6b36741d3c09eea6f545b68aca5d0302047c435bb500673065023100f9af2c67a2d8defe510d2b3e40145cc668b891b988868460921fb6dd5cc9eb5e3f088f988cfbbaf88e347196324004be02307e65fd3c193fdb0c4db4ad85f86f6c9038969e0c0d354b06fe09699b5ef39385cd46360abcc5789e22cc67a901d7f9ec0302047c435bb500673065023100f981008939dc3329c16b9d3fb397bc3e7f8668925797ae72fa2975ed56bf55bf81c600a3d1fd585441cc40a16c89ffc80230198a241b7aaeea1847b51128706b8835fd282d27833966839fcd7c5831e7eb15835ea93b50bbe2b8da416186cc9d842c0302047c435bb500673065023026bb6e78021331aa3326dc8c89e2450dc4879f289ad94720d6ebfa3f768d09305d948e19a2103f37a7382f99b4c6749e0231009fff1e364d5fbec72179cc4edefa15bf81291a210b1353b1522d642824c93705c421f42b2e572dc539a3051828d6198b0302047c435bb500673065023100c11137a7b9cc7e83e843c5bee4ad0a7b0c36679985e1b3509a1ac57baf73531b471debc93f3b9f8a96e0081bf6699f6c0230131080b611a9f01e1a0e3718e4ac53b7d3b18c81a75eafcfd9d7c07868326138c811462ef6654a6e793f7ef6ce91dee80302047c435bb50067306502310089a2e461184ceda87feaaad63c9c44bcbcc23238c19db85dfd7f79234d5625771ed8b2c7af7b3d108f37a29533625cf502305bae75c0f11fb736dca710e722850d2f3bfe1d33b302d3a080156248f917d8d2b67b70a36084f4d0e276d07b086c7c4a0302047c435bb5006630640230519be688552e56dff664fdbed5c04fc9159a4213c7decab03a0a1dfe0745bbf11a78d0be34c712aacf6e1c9f7c31092e023033dfa597fb09112e5e6bf9e0c8e7ccb8300b045aab064b6e769f20755b6329df3d57eacbc043fd30d321ef4106f326a70302047c435bb500673065023100a4cf687c1ca62ae4df843a69b9e252cba61516c9ae550dac920db0fe8f746dcce7d3b7b66e6ec5591d2828fed865f4d8023035b98f89e379db807b01257116030437d56e12ea28a5fc8a746f4fa4225fe1c147f1b70b65805cc0f393d1a3403699cd0302047c435bb500673065023065daf4835a97460281994b37066a5bfaf9845587aeca6dcc5e2b4ad9836e6430940a453c537b09acf2227f3c92486d89023100e3a28eb332d7f3739507a9fd32be591de5d0e207f8435c923c3489f5963f6ee72bcb8a7198eb4b517e296bc149f8d1d30302047c435bb5006730650230078a35933bb0780a7ad2609c8353ece81c75545bbb501c3f5e2c5b0c7457703105a2e5da0f37a649335fb6cbc0e5bc28023100c25fb682a1723ad3620f2850336f7f5e79438bfff632dcea40eff43d01546026d0ab549d070dac51c156206cacb463b20302047c435bb500683066023100f1e4e938f0d2583a5e31072a6adc0f630b907afcf83cdacfa51c18589889430296e3ade0575c35433210e1ae801c8e7e023100df5c159666b6b18388170a8bafb122b67af08a05ca5a48af68bf68afbd49ac83977491108be240dc29d4b252fcd4ea0f0302047c435bb5006730650230548574c4de281103a6b403c4f9f4630daec7b78767ca24fb50ee664fb07f3b85cb572e1b8abca7ae354e84d767774d03023100aa606d3e431a8890b4291ca0228b7a147cd943901994d2a74d5a926171bdee331e3ab649de2ef23d91901ab876e1b0c90302047c435bb500683066023100b9719f95f2b7a0524bc22319b7e68a7ea1c625c15d0b3c10f566910d557b0d1f87806bfa1760f3ed04ef121fe7cf5e9e0231009cbc032762c2d903d5a0a62bda819282cba0cfe87c98d5ff4c8f7f5824d7fc3af698cf4bc76cfdf34cfd0103682445fe0302047c435bb500673065023100a9c32077f026817eb5042a162dddf34e600b41ef4c5c2f1acb0b6418d7a5060a5092ba4783eb5c49359ca5049ce8423e02300df590bbbecb0044b79465474e92f1e91234ffa6705cb18ec2f8f7718ddfff538328253ef2de0a29656a52a1ea5190f60302047c435bb500683066023100eede2ebcf589344defffa90f7b05fb5e6cdd3843cb8203d1cbbd2f13aa8edf683121a3146aa30f5f511ff36d78784e67023100ff23c3ed15421832708e08d32ba04966e59a2aee47a45db98af607ded0fb330faaa2f7c10be8cd9addec00b121605aa90302047c435bb5006730650231009088386b8185242ed89a1b5b0f916c17a86926b9f33c41d354e10d55b13ec357f65b90fabad53cf210d8a56214e4da340230509c64a3f598532971227af37bf48105507810ba91af7e900e4c8ddf4af6f2288284370dfe890a927f368ad0556c05f60302047c435bb5006730650230573a863e683ebdc93b55fd467d696791bd98a13ec48cbf75bd0f5619a367927d8223986d2ccc96ba4609e088317aedcc023100e102733ec5148a28e9427899e72567e43c93c7eacba52327deb38f971bc085f801f0a92a43512e08fbee7366fbb30e180302047c435bb500683066023100b9640e5f5152fd054d65fe23726e7988c69dbdf05b06bd0585241b7c5f2afd21f5a91636abce43f71058ceefb00a965a023100eb5fb92fa8f356aa47905508285c931dbfae711953fabc77d41772eb859397fdcd04e9650cfb17ef8c0bc81fe9a92b990302047c435bb500683066023100d1e80a86388aa53378c520153c10356591c98c662d4cb1bbfa8bb37114dce935453e72a535981c68a1bd2e058166cb47023100fb8712a994a08a9ac70077331398e92088b163d3906e002b293030e721d9ce781191d4810bbe58a39d19135f4ff09c680302047c435bb50068306602310089b9859360c8a118f53eb21dae545b12c0c91431cc3e96dfbf3e37846a68cba2539b2ab2092622dc0be14176517a565a023100d53b9bf14b1b675573dfff1fbf516c26fdb61134db0c09559f37248ba0c27801e75be167bda0e998a23a71a0e36fe3900302047c435bb500683066023100baa59ff4ab61fe44d336b61704fbe1de30d7efb196c5d81be3da2cb72906ff08f949d0bf3d697ecb539d5d54780a35c60231008bc109695c757b90a24c97631b0c79539d3628b18a24bbf73ca6a0189b7a19d3081c13454d2eaea38cb6a0c0b65f29ca0302047c435bb500683066023100e2a93e3f3cf42959e76fe361419052af26de613dc6fd33a42462115104209ef6ca0adbce3e9f44f7b1618104cadbe72f023100b0e32a32b84fbff1eca7de499325fd070b61c47fe78faa67e1019e3264530e8915a933dacb663892b36b96f7cad422ab0302047c435bb5006830660231009f7a6bf7a312f90f59af39e020d6d5a5fa6d56eef87073055439afa0dd14154e0e6a08e90ddac6613d1a37eaef57a19a023100dc3c676bfc1c5103162ca0ee9b3c8a6f39003a29967f1dd3784237b51d5f9a048cced572f3abd98c175d0d488eb80a9f0302047c435bb500683066023100800f14edbe42d9b913cbadbcaf00d79718b98dbb7810c563f6e1d81c99edfc291e94cf264f3609d6092a223f69b18926023100b22f914d00eea73f43127415e6813aedc0922fbc9d46d94094706dafb66fc86f4c00a3e4203293426ae538d73239fe850302047c435bb50067306502302b76fcc190a954a697b2f81039bd71c0f9092965f2949e175898dde28d0740b2a1f585d19cf53fbdfea03ae6e8ce1bb50231009a59e60aa56fecf8ad6bf30c3228f57d8515c8296ee6136d4fa806e9a9899cba3025fc818e43a741be75d37fa8d1a0bd0302047c435bb500673065023041b9504d3921ab0322d189efaeec6775d5823b25a7ac1dcc0ceffda34422709d207e9c9ea8d65aa2c1383b26d345340602310086b2c29deb4643cdc27df8476ab9cb24f5f2e81a8c3afc2b4659e92b36e6dfbeb02d1c03f1751e7fd22c5c3f41d226e90302047c435bb500673065023100a3a60115cdf290734bc4e462b7f9f282291eff076fc7e3a49c8dbc3b5cf71d44f5cbbffca69134b4938b5a4b3e658f9d02303cc11edd064bf1471bc2daf56e85b088a9e8248741956bc76e1f760d2160c64900dc9365d5b43c8a31013e9dfa326be40302047c435bb500673065023010ee3dd4858a67d438992fe48bc57627d1b116f1fa3545a2940717026b715101f60495ade706f6f4c326d462767e2bb4023100ba849a143262ab0dde4aad4cc9f026ae0fe5153245ea9c29f9fc48e72740724007e843ca40d43d453aac5742c6617ad80302047c435bb50067306502305c43ec65baf0ac670214585a6433597510ba2402e0f89215a8e3ba5807e06d76fd8981a09268e92e6983013355c59f03023100ad64f01ce355d3d2872a71e2ab8bb62f78ad380ea31dd9d8a0fdaad3717273ecf2fe02ac153444ffee78aa6c13101fa60302047c435bb5006730650230532a4e08e135c5ae310f0d425ef7698179c392d1eee81c6c1cf55af2809b6f6d4e2b945505269fc41c8bb717793ac01e023100c54a5caf6830f2a86c6cb655ac34da570ea75401f702297bbefcb5d2507636021cc3815cf750169c49e921e0b877a0170302047c435bb500673065023013576c08aed61c9bf34ff1226fcfe865000a96841f522bf0c9f436a157628e8dad955ab7da5b15fd2fa3c89045bb556c0231009868c725de5fff0cecd7cfd4c073ac40fcd901b595eef9860cf12967fe7c36f80d39ad7f10e5aad973756d064b3acfd80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023000fc37426a5cf820ea792ad31064adee158c8e1b22454f3b52ba2864e7d6e0f7c0111afa94f81232821d3d455c6c6689023100a68f1d5b15b9991123fddb57a1481de3a52c9fa3d22b8e92998a13d32879e8fd41b806a9567252ec7fb162c06c0df61d0302047c435bb50066306402304846475501e85bb5eac1d3ed931914177d386fd0574e0bf2dcf316f16bdb9a40f31292b606c5ee628939c35f65c9fe4b023078478ec7cd81c0662e27f85d98b70dab7b973a76c013d51471d3f0825f75376d55b057547cba85d2af912b63ea85e63b0302047c435bb500673065023008644d275a36df37c1ed7b7592f88b02b8a7055f4ec5a5ce609f91fa2eb3b896fa3c4777a4000d5d13fea5139d155966023100af862fe4d3c047174cee3e748059e3e2f5c29dcdebf6d67e32f27aea607b6a860ef68a3e6c9c88b93d16893591c4b2cc0302047c435bb5006630640230270f0da9525be5890a10f77182b799d567d64652542ae5eb2ffcfe16c0cdb519f243786241920d13a646dd80fd5da90602302ca0c91b18343a85c671d769c5b5feb11bba4e6479c546ab6d5f0e09c775cb4dfcb7f4c99552f25afd22dbbdb77253980302047c435bb50066306402303f1682867e61eb0b940897c8df48d04bb91a01ee994aa073d9a5b5493eea9a237f47ff6d8cd3526e0d4ccc58a6f9d2250230378119d63ff925de2c5a45284f9775931b28429c0660c1806b50c377bf5ff690d447490aaeaa1a523ee9f72ab444531a0302047c435bb500673065023039e5afdbd0ae6310fa449d720b401610efcb78f90fa8d33e8bb0c7617fb241a800293e2b98196b2bb9df7ddc93888636023100aaace5f163202934d5a89f9764561bab483f0a65720344cd200289d248bb95f83941d255ca7cd407a802372b159079380302047c435bb500683066023100cc6198cdc5fb3d227b16eb611b9886cbf9b6a64c4d464ba4e069b59801483c3c1995c98333473e0e15a417467a082d2b023100c4972dee38c9dc4c2b9729eb73837cb361c844cd5621d6ac1c7aacea0428650444d7d6deee09d62dff331e64615ea3bb0302047c435bb500663064023016c569b2edf8ecf2af3cb6a4dcbef26eadfb763cbf026c8e9cf81e64d37d6527ebff1532e9ddaf02596ff3fdfa66c4f202301214b4bd278ddf24158d3a2d0ce42c127b9f56a6a9764432f65549cc9fb1f77aa300a4f79b42a64e10cdeb223804da4f0302047c435bb500673065023100ce95dc3ac40ef2bb67de984e667d4c99c6cefce7f0c17a0683a19906f4b5578dc8fe2365d0a412afca66c7136e7abc6b02300795e9916989373dd9a6e368459ce678d205dd5f9d25c25b0981d146a277289dede099989674778bb576d76c9b52ccf00302047c435bb50066306402301ef6ac851ac059cd9ee445b6bd5c57ef0ba4ffbc1626dc9ef150ce1605914bb549fbc99874a80a3ac246b8b91f9dc7c00230755e9f14d8fe5ca9a2c7f8ed70a94e636465adc04252549652becd9a2fbaeea95c08d3f6a3757050baf9cec76fe6a7d90302047c435bb5006730650230715ce611802594e06733566109815dedfd36f339919e10e8f553a55b62cc355f5c2321a8d73a2edc7561472cea9206c80231009dda9b04f675579aea33009d1b8fcecd9e055e76de89bd2a0dd3ee25532c74209de3b22d7bde2ec9b77d583dc256b6400302047c435bb5006830660231008654f38d5caee0c7ff00b8d64f06cde186134e2ac44fbb5979dff8828ca47047df6a6415146ecd045e0db1536dabfc6c023100aa0b7fc3ae71cc64ebb1459ae6909c32ac43bc46ede3e66404b29f77464b21898fadc17025f65878f54fd2f0f2a90fb10302047c435bb500673065023100a03574684edb84dae39b09f519d3098ea5ff9f58d41ced4474abee94bc368e6c6e0dba39b97698271be424327580c75902307d019b6ebdb2b975817c31bccea0c0875038da53cc7e46778fd1da04e0aee981e84ce300df054beecff79ec72473f1670302047c435bb50068306602310084430d24671972147314cafd654d24658baec702fe6d15ccd0791cddc7adca72e193904bc129f0dcef05e45c814ac9ab0231008610321ad619c1e8e97488703c0f76a60d7e5e26dbfb24bfeb0731c291fd4c023120cb5f2b4be612f85a05efcfa1d16c0302047c435bb500663064023073bf1c6f52f81fdd706bd30c6df84149974a58996b238faf5935ac11e09164e4c53cb77700082698ca0550a1fb938a8a023040368d4693095dc969b53cf57ddc7fae5504d72679bbf8bd32797f6990b1a3c8a1255a69858842b48832ab07ad7383850302047c435bb500673065023036b1e5c36894801d6b9ec214b6b33f9c157546f98a18444e2ac38ab96acd08279285d5a0685e8f7a180f8421169d2761023100cbadea4f1a7a5d7c2faf377360046d4ce0ef522fe4fdbf59a9ac1e50e82684b58edd94289a48efb0a8bfeb99958e48ab0302047c435bb500683066023100ee6a876efa09377fec473fa6af66750c755c1143f00a7991041260c6c2b744641c8f815e71cf74336785a6d96b5ef4a6023100a3e6cd4b43f3f1062f566e9f8be075b2bf26aff80cd91d9a06b3b8078341934d4adae1f910740cc5324b6a97507392770302047c435bb50067306502307d5437b6d3671a7cc6263beee185971bdf59316cae860188c7da67aede4ff6ab1e8be0600cb654084d6a04ebbe314704023100db96d123c2ab58f6baa783a0b15bb8bf9ad5c291dece6a7b8d10000610f3fecf0d4651a9aa13ac76e975ca6d1483db1b0302047c435bb50067306502300248cfad76e0ab5768a03a9fc00ef2bd0f49a8238552d328f032e1def9414f6e05a53d12126fa1dab1192c2dbf6a3955023100a2229947e38b1c354813879c7f7d5fe5226cd37b3bb0ad36603ecec22535d0d8f50c7356f2d5ae2c7227256f0b8ff4b40302047c435bb500673065023100e2f64e9b878382684ea77f05ac8ad0a22baaf8778a3df5a733bc09c6d1c26404548c07f46957f79361cc3027b4964a760230378cc52b17de8e4df45ce62f72ed03df5abcab60d9d99f10d2c536ec38a725b9933e8aa49cfbd83fbba43d08038d75540302047c435bb500683066023100886e61a56cb594d9b41f7bd9f8dcaad4c12598dd3ad9c0ccd743d23e521652cdffeb1a7cef309ec7a54e3a620566b921023100e9f222edb811bfc2c1b50655a1077d3bc2d40b965cb00ace3290ac88455f9e94f9aab028623dff53a0f7248a34e84f390302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b4178dc1135583f38285b59fea9a794a28416138d42c3807cf77b93bf2474de611abfb70469a10c266b072af620e0a82023064d5b991519f1c5fda17d6c89b6c8c3899c7db61a00ae04eadff5c94a746d58450d386f015846711a8f84506911d43e00302047c435bb50067306502310098adbf08c7fc4d0c8be71b6037ea86601650909b4c8aad1112957f80b8ff3cf42b4ca9d02bde4a7a8c3a9d9018d4a0ed02301a61c924700478a114275142a52da495d74be86e368e2ead2392f65a64d0a33258325829721933494d3b3272434b2eb80302047c435bb5006830660231009f47fbf8e1b7ac9928cc077eee9cd1fcafd415f269d2117c0456509a99b63bc1f320558979f6dd2e1e6e455be78c49b4023100e1377e24c4806ee3ae9de5b8520582e1bc51b1d12f46e23a8fb414f0fbbb88fe5800fa105be27712e69446462f5592830302047c435bb500673065023100be677e6aea9c6e6c054119bd353661b7ea50d220fb20cb021d842bf392443443c46eded339000e687b4fd4706c68079402307d345bde8b46daea5d3faaad241416b2d7d78b7c684f299e56216cf14fc702f1a15a99dd6f2db640fda7ea868b2240120302047c435bb5006730650230714feb26cdadca58b2d0eccdc9661e674e7ae7a45cd8b18bd8f228316d7185c134fac99ad5b02e1d26e7d2df2c8dd835023100d0cb422c83352b454ce0cae799bf04f27480dd50d53e768771f12b555682244a6a64b35f8ba1514085cc0204d326c9cf0302047c435bb50066306402303feff8fd1e40cbe6b55286a536575cb746efab344463e8b3fd8783a4eb6e9b988770edd5d635ff52bfc2fa20a740ffe202304b017d1f547d005f86fd5fce301d719ed177b5f650a88b5cae7f7df7d4c9d1cf0993cbe8332225c9a13772d8284201d60302047c435bb500683066023100f573303a62c9a8b4a1b85465e4fd631838ba87503a81d5feb0d7d5083f639e7b35cd8c0e559764648f2402fd8804a491023100a26fb6c6a85791aabfdf1f75f55af8c73d847e0bbd207b792389dfc14cffd8ef5b84848dc09f6160ac3181c2dc3073cc0302047c435bb500663064023006ccc0c963f58a2251adeaf12b98781b4812868e7cb76559193edd98ddb4b86fc97d16a9123ee96911591d2effc2fd41023015fae0c2c43f793e01e6da8401cbd48f31de3f2033824fe1c3248895dc246379af3d72aa9e50d756950de19074ceeeef0302047c435bb500673065023100836721333b4b7c1df6d91c34a138619c3cfdc525241ebc9ee17bf799cbbea0b95ef0632308db9a3bd3b588b35ec7c4c8023043e67123fe73cc9a0da05eed64ba81d6fa550e548e9aed3b5cecaddfa02a6c4759c733b2b9a621a3e6a412a7f051baf00302047c435bb500673065023100dc3990e11b92018c9af11b6480ebf996a6166fad2d832620575d33e0d71a97238cdfaa87ff8ca290dc96b9b9decef69a02307ec5280d8767c575e5e326b23817bc97575bb94eb0de52dd941d680bf7301a88942257f69eaf7bf71e9460175d2fbad70302047c435bb500673065023051a73d02137281abb0baf8194713d09362585919f9edfa0e37b06e9fc05df20e9d12667d4a32993450d4116c8b5322f3023100dcad07550e27d5e30f6e27fc7a294dd48eab7a88ff87254f2a9a616c018959004c2b65781cfbdb6a73b2eb36854c59590302047c435bb500673065023049793854a75a35fcfb127af0113c4ebc773e52e3b81846c8eadf186d32cd24c9f571d3e0426da3de97253b2dcdc6ef05023100d606aab7982fe3d01f98a1ad4bf5a2717f10182755648f08212696a79bf957845b9129f260f62b2f55b012e061dbce410302047c435bb500683066023100a525151391efde846114e84b982af26dd29d6eefa3946e23896a3867188a4138ae03ae4fb3754269c4035f8530ac8a4a023100fb216842c814ab0212164f9169d6489dd5c98d448a965f63420d23689178626c7f995b1d3add5002b5e3d25dd67ab10a0302047c435bb500683066023100c6a2bde3cc5f3b5076ba77296960ebead4387164f99c7f6c64a539763a75504ed1bf0853747dc758c3114eca942762c4023100896ac26ad40362a55fe2538f659b5a27fea40fd7ef4e757bbd1c1979dc434f3e0373de26924f77eebcfa61dccc7f58720302047c435bb500673065023100b7200f8bc9a19e0a4df636720908b8eebfb7ba50b9607e05dcea8068f4b62810ce4405292e84ae25c01df0b57a578ef102303dd8f8f360a67eada7340093d94d6fc6f2bf1e11a8bd5a4674250fdc36f1422c8d543ff2da9e4285c41b61bda5736ae60302047c435bb50067306502307deed1160ae9219224c68bbf5fd2d58ab2490933256e3d75f015cc7e98cbffeb6eef7727de8b64752ded83df3d149d8a023100d5fbd7e4a681da7210c89fb66f91c53644bcdbd0c29f1ade11ea2ad029a9001a94e1151887ff4129b4b937dd0d8fc0490302047c435bb50066306402302c09ea6259eecdfe3630106de5c6151544b6151ba4299b1e0845943b5184d29d72f008a7ebd1c53fff1cf41b2fee5eb502305e02f4b6d4f5b730a5f631f6a4aafb269c173ee922d2f9156c5da524e9c4e33aa0078b58d7968e314c4faddc47895f760302047c435bb500683066023100c43ef52bb1fa4483da73614e915d661c1e4f87ad037692115eb844f42141c6a0129f6d25b86556870f9f917d29ce6f84023100996e3c88f822b23870f7884a5771bac7309559048d05f1b4753405392f11a50992235bf00947b9df56a823a5a4d1265f0302047c435bb500673065023045702cb2a0fa8851b89b18f43f1e2cb6012639dd0370d78765b02daa0c5012d9041e92279ca4574f851c74ca6d376862023100ba109f0f50091532fd735fc8d2ca0703a26af582edc2caff0e883d979624111da50ad8186604b6f2665fa856876c5b240302047c435bb500683066023100b5b5a4c08d1f9c13e1329e925ec99905cb5d175e65b49a3093e9dc9421438507d1cfeb51f7477a5831b0b7f1bc12999b023100a520c0f8b877a76fa13f1404dca58552f41e40f0a248ed2b23187d05048ee979cd948bcb8a27f25a1fc42606ab24ae440302047c435bb50067306502301e5a4e8f72bf56fa9d8f30e1882da847ab0b5ca68b2478a088c2b916aff3e5c38aa48cc2e5e7c734fea1f30773889541023100f1ef8a0d1a69468723a88bd2fdd44596e8a6be4e1b39dbba950cd62adef1975e31e99d306aa6b853b8a92ae32ce234440302047c435bb5006630640230195886d57e6d2dda2c292fac9733e44558292e1cc79c17908e7bd89ede96344f648b2f6b7118d4f3afad337bd12f79c402306e6780ef3cb1f37ea0c6638a1924a60e2f633d250376a85c9a91eb96978cd3b465fdfd0f0edb8f5630e5e3cd09af7c950302047c435bb50067306502302580a19c077d383e7fc32ade14fbdaa922abbc80e519a12348f9f0b00d3197e35f9352a7951c0dbf07538ac8753df687023100e5f5791a0da463a913e841d322cce33458505a23b8d8daa77e811ec775eb716e4f5e87612f87222ad98081ddcb6676cf0302047c435bb5006730650230373b2740f8df1456649007e69aaf95b968063f3b60b5279e438087444fbbe1076511f0d2661593ff28b6305998d6253d023100b6877ae196abf7e656585df5606546389624011ca1657137bb54c8197e8803b4afacb8287366b0c69d4a09fae28af2640302047c435bb500683066023100b839436b3a0bc9fd1b77b91a760a39f60405bd3e8682a0bfcbc2aea91b67a557e590dccf9cd5713128ee57bb3849e140023100a84edcb7750e01148cffc2f76b8373d995105bc9d52d2c0c2eafcb137a87ebe82d1a90f7c5fc7de75dcf6d8f60f172780302047c435bb50067306502303852cf03b386615721eb361c26ae5597e1cd659358be3c09097663a950169ca3fb3ee8f59214c72a1d963835cb101295023100d5c406a2f937fc56a0f4016bd9254cb0ce65d70d1bb1859077fadb425282b90071a89e9ce771aec7faea49392b6545630302047c435bb50068306602310091f05585a24ddf4e530a2890761432c2e18e4a1338625e1d3b6f453b9a07964d4dac7cdc52b2987b4f36c8829e2d4fa202310090b816e513bfa22cc855621afd0f4630de496456e6111d6bf8ffe90b3b33da1ba64a60220921d00744a80cda65312c640302047c435bb500683066023100f4974b0a680db0756215bb6d10f1515ce624bc50bbf9541a4eff05df17159cf8e00510b217f3e1f161e4d968462bddac023100b729ac6fc7fdcd8caede8e3c32f9b4b452d4e4e3a84534a0465f0895088658f67870f367c244851e2e23d8bef00b13a20302047c435bb5006830660231008818bc918a9da29704757dcdca4833cf6c623d931443b455216387a16b42b1e0460a7d896c765c01390f9ce6985e5cb90231008e1bfc86afb29966bb7088013aeff4bae9f71280238a23e92473c72631892018aff9334e6740a85b5d717f4ba7d88b110302047c435bb500663064023033be08614e1d6dd284b9c82d0407a04208cba6bbc74bc2e183ed211701cd027fa9a7d2512cd7b262092bcce83ed89bad0230541d7a51427b94b3e451c710e8cb81dbb23630ba763d3aee3fc1a98328c7094bd6169fcebd29852a34a3c151a9367fb90302047c435bb500673065023100c5a21c7607fb2f1ce1701ea9a449f8eafd71c8dff016e6ca0104d596cec88217e91c3b6bff99033a5ea8ebeb043ad9a7023063144475d5658de38d78c5247a9c7462f70683c5957643cc1a4cf626c1da1f28d87d66a0c87d419eaabf4d41d23c3e190302047c435bb500663064023041dd3eb7462cf5c232bdc966db9ef935cdb69c9293cc8843c0e6abe7e92748c80c3af1c9988458da54f4e9399088ae5e02302c6c4fa9c56b0cc35fb6e72ca47e52216238d2b44b0ba99f7447ce38d4949c4aea9a14991921db68c4caedd227f0a7f30302047c435bb50066306402301c1d012f1ed2cab6c03ce8b4f731d4c3a067020dfdf48737263d55179fb6ac6ed10b4ba0c179d790b4ff1dbd3978f27202305888420860e35c93368a5661ddbaff08227dfb90e9f27d28e5d7e2a4a81ab1b0bf21963ba0cafad19da6a6cf94ba40450302047c435bb500673065023100a34d51c6f4ad9bb043f50810552d1e2116ae2256f1f788bdf1b4f273611896536917179e8b1661c12161045258f8d81e023078d601e42a14d47efe6ecc4cb5380b79afe7a73f952624134d3c688ac314b463e485af09245b214efbfffd380608872e0302047c435bb500673065023100a811b2ffdf43c64cf7fdf548fac5b25aa31359597a2c03cd99f1737c8ec8d457c1753d695bdf3fe5d5a98c814fbf1f4e02304bb9d6356b6c15fc5360049c372a568307a757a736369d44256c4151e1769e75915983a6baab3050ff89c30fa01175f40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302b7f8b1ffd1a2bf662d2c17eab05cee9c54f8784e378c804c6b77e605482ae58c22bcab470a04e285e3b5e25617a4c9d0231008382b3f09f14de9cf71c2acecfe83d532b40ae4a67186ac1da268e15c870e15b975fd55ccc91902c002a7867f5c623260302047c435bb500673065023100d11a32cafa2926d2b20702b9a7576f33f329cbb6c3247f3678b04b1d5c0ea23ac4ff88cc533af9ea6811de9f282995ed023055fdd4c1a6223ddf16595fbda04b755d9b34e38be45928554d0e24bccd80dfa4f607ae4ae3f611906aaa0e03dae2d51c0302047c435bb50066306402306d09c5f352f3414eb46fbbf79403a445f046ef6f03015c1ba61637ec9acce9da5b34e0f5b7910a40975d441b3efbc209023054bf1ae23ba5cf1662de55f2b1ad7d8cf2d5fec01801437768b5dfd2c6d22474638dcdcd6e78cc654d66a19240cee0440302047c435bb500683066023100df57a6bfbed7d048c8c06e9ab8028c1b765eb1193fc3fd0aaf9be3d28d0d5191fd7e9772443f1d3375aab75af5af8e77023100845946751fdd789889f090792f79fffa3f0d2da1e657c1c64d6bf862eb7683f0004cc433abefde9faaec6b4ba84f532a0302047c435bb500683066023100e40c9f643b8959ba8c806809bb41a7b40169212c9fe5b4697ab5e3606e87aac5d4a85ecf0b919ee9ae90b6a0b9d91532023100a65927f3a8dee2fb21045d4a3ac7a5f51ea072152ea88f5716f9d43c555415944824708158d858d9b8885835682508f50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100fb8a1bfd7820de6221394b645734ded1405a2ad7142e17dbc4830c924fcf00c2a671694ff1b4ebffb483a04e6b590808023011133e01ace872afa0e1bd72f453bd02983241c37a8fe0638767a074f5a6c789d9af86837e323e012247a0d11ead674c0302047c435bb500673065023100a42aeafd370254e840f25b3634b6a16989a5b5ada8c745515be4b61cf2ae9a93dc0d62a400ee906b4ca7e60988852b60023075b7f968323a1d8a3ccbf623b736846709758f74a358028dcc5dcedf84d1277cda6eb2088b72cb5f20d7286f7ae708190302047c435bb50066306402301e3f55479128d5e0c14f68c7b6384dc34103ed118275e371100ce81ed6de6fc1dd12c7f00cce5d24b28c886d421d8f710230362e9dc7f4ff1209c6934422ff0f7de48ffa5d1a6da87afc1735f6145a4bc4ae1b3171945f22169bc2849853a9bc603a0302047c435bb500683066023100ec57851a296cfa4021999b1215c09313eb15917b8b3d5281b7d12a01d7c6107b2ccf2ff1447d26d1d07fc480e14fd3c402310091c2c8f32276f89ac64703ae249c8edca349866077a1380154fa66d3c80bad630b18fec3bf998013fda36f8933914e100302047c435bb500673065023100ac859db61deef19913e47ca3b1d700e921e82b06f4b02c2b5582f403c9ac08b695e26cdcd1ce500467f594a4a62e03650230182013772dd59d43d6dabffc916aeb45fc17dddc2bc17dceadf84ca393ca18f5fef455679ba9f8f712f967970df6ced60302047c435bb500673065023039904de7096ee09e5e54e3823d42aed9b9e18691b6e41940ecdd8b8910887cad42b82734233352d0f560484476fc93f7023100bece1ac849bc8ceaca4935bed12b5db317f8468f62aa21c6d3136abaa8fd8f9f38ba13a80e6b4cc3ce72c969c05879080302047c435bb5006730650231008cce02f944c5585fa2f0bcafcd052fc2878bb223d8a749e59132f6e9767a5c2f01c5be1a70e1185804eb7b7c8e98d67d023064424945a737d2c56cf07253e2ab6ebc8e3ef40ead62e81712c62d462cea92b7e2bbe9ff3e92c1b549105b210361092b0302047c435bb50066306402306b506a8f1f33a58925c9b72be5f6b5eff00956a8edad9c72d53cc95c9da79bc84b26cdf701fc1eb19c49b6fa5fd5093b023066e7eb057c58e779f696d6984e452d9d1827eec40cdd452904aa665dc0b622352050c5db46da5d61ee3d3257b22be0770302047c435bb500663064023017ad8af723e973a02cd66c86bc0eb99ca1185fdf14cfc098a61b1185c52323c50cc16b3b525de19fccb47da35a0b45610230125dc94a5a9bcf7ec17227246680a8ee271e2730499daa004eeb7668837e6a5c71299b0ce236bbce2fbd98dfbcabc3bd0302047c435bb5006730650230387c77d14a0e2277421750ac1afdec816e79446d5626a9b391ff6ffb61f03ae47d4f595381f671116bad657997c49f91023100b025038b88400e62cd58925a664ebed95b3e3afb96abb013b3252779b1484c264c08e5b2463ebb4fd8abc79907d468490302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301759a8f22b62fd553b3955088ff9ebfa047e2ff0c459e41c379c9614e3c58a31a96da2cd65f5055c76c393faa29d3494023100c9c0d3ba3ded2b1e1583f92459f14c8d5c2d35ce884d1b63d54daf77e808d05b2930e60b431e8a7069dc4db26c59cafe0302047c435bb500663064023067dc72440f600d5bbd309636da5ee16aa0a7a2b2e708c58e9c89bdf546cb9748c5f60499fc207a06d59298451fd7271502307ec6903db3a3283254808669cdce274a7cb05c765de759ecfbbbf47e89432b8d970e56fcf0a7f4c4f12da7d4430a49820302047c435bb50066306402303eea406e249991426d0fb6eb15dd801291a624f85648c9b1c512eaf5d8575f72c969f1aa1835180b5da8c37e1cea9b5802305ee88eba09f97c7cb91baa1e71a2aa3dabdec2e075af29c53125334d6e0f5ec1d3584ec03696a2995a2988c3fca00a360302047c435bb500683066023100cf25a4d63b835c4c58066093264e017938acd89a3129c2353666aed3ecf54cc75c9b0a5109860a823ee64d06aee33a200231008129d26a19f25297754512a4ea7d739fa3f1055f7f4c377d0da4dec5ccb9fd06291de12d8c92aec84fe99ee54c4939470302047c435bb5006730650230541964ce56d10efa7c1a64474e15fc7d4e77231e30f9bd8f9bfd62014fd3e3e9013418f035f644d2beb68a5c5fd242670231008b106072ff6e016410ac9b71fb0845a0e6fb021f120cb62044b90bdf3eeba6ccbfaea6c82b79b5c52fe1fc806cbd27ab0302047c435bb500673065023100b1b1490ba7b8670d8fed1f932fd3fe713a634a4e242c747d2b62d97303ea40e17d98035e20fe7d26d380031a3ec3e20c02300158db107f4eddb6dcbb4af6df1807979620eafaea27356936c8f6d45320dd8308cf4bdfd15164c94ffb6b0dc673844c0302047c435bb50067306502301dff62b7b6960a29b0af3103cff0a25d7e618de0a4a6d0d28de8c0a41d2aaeb4d67647cbeadcea2431ac1922de6d7dd302310095691b5eff87535f48f5f4d58eb2fcfef18304b9145f105164503931a38076c434bbb521a36f52d171555598803469650302047c435bb50066306402307fc3d8890556ecbf3b07a62a0e88ba81390668988b3236f8ab77cf478a36c373d0490512d1da0a65a8d74a331fdc0496023062ad411d9e8dc49768801f9a029555d32a9f8a58015e5112fe0fdade9f9985b9c53e3b06565a517a1be5cec59cf85b890302047c435bb50067306502304b7db6c1e5db556fecd2710ef9bd52281a2ec5d4dec03986a92f16cc0d3135b4dcc62486efc5a3eb7a6dfe510b1a3933023100af7e76fa170250dbd29898fada678d60c5e0352ff4addcbfa6175f24115c869c3c0f31a5d9a53027fad223df030761410302047c435bb500683066023100e2f83156e0db417d3d0d65cafb486b25f45b01366e86db525d80b5d1d9e09150660567b8108258d6ca15b28c4afe8b3a02310082ab3e5a599980e00be471dd9dee412d51a04d73aa5debb69152f2cc2ede3879e7f153214ab14ba7bfea3379f343bfce0302047c435bb5006730650231008948135602ce8574fa81caa8bd92968f32bfa382d9f938b489a37ca07e10031b0bf67135939e983ae28f18bbeb36017a023072c9140e885ead765e109e16cde1e36a7ad527e57b81efa4edda1dfd7ca99d54c3db20f69accba983535d627a2817c790302047c435bb5006630640230568ef143f17e7661b333341858f04aa0cafbbfaa9b851ad82269af3710f06391caa06c1765a81a3ea3b6ecd60d218594023001dd6adcc03a9b03ea2306e9f3f40b5a414a41720393cc3f21e4003c09b0b25f961cf9f41d65ddfc68a11a0e0db394800302047c435bb500683066023100955f9f339978de3b04311a74f15517225681caa7e3f76979c6676e37d9908af47c17ff4d9f0f3fdda9c97ed12c908c1a02310080cd91388c7bf96de8ed4fbf2ed258f66063a2b9861504aed7f1f25a346d5e81d1725dde18364fe59656495e237d93430302047c435bb500663064023061552080851cb0b3f03d1c338c0c5a322d06147623f5571de5ca1e84861cc5db955fe2e677f8630a416bbb37c8cd8f2802306f3ebb695074711a0228fda5a3904648b727229fc88577c317f4f69941043bab7d49d5d59cb8823d9e4787882c2686660302047c435bb50066306402306f705e9c039bf15402dec1d276a26dc014eee8086d80cb113b113564fda9b9eefa25a7c31b7f4c53843e10e3942d85a6023034f901086e91daba99cf30e2579644c12bd4e3c7f28e5eae09bd926e9bf79e01e485e9ca6efa8abcc0a44df7a5c03dcd0302047c435bb500683066023100dfd916fa66eb72c14f043f8719cab4e967f143a9bbaa92792cd6adaba7598bd99886f3d395c5ebe6e5c20a253020be5f023100f92b1065a635849276efb39c565a19e0ae84c76bd1dc9689ca44f8e509c06e0e933aacb9d7ff39664ee928c22047def40302047c435bb50066306402305badb61423655423abe31b066a32c558f7db11386dc5db28a280d1d259823d2af226dd92506134b8992d0277bd849895023037cb10dcc592073000ea0635423d1484b28b22e6c4153341b30ed7c407b77e5229b6d7872ca58878bce2841a8768805f0302047c435bb50067306502307d6d960bcdae235ed782607186b6f487fa153e51c1b6e6cbc268aef278b5f0ec5ee36d5c6c2250583c14d70f548a2c67023100debc6bff68253a698db58566f6e6b1d908f21c91722486ea424a48c14f68c6ddcf779b9172c14c17ae9cf34b803d64420302047c435bb500663064023021c1189923bcb7a49d60e5fb37ca3b5702723dc702d939046fae46bf66446049c71be80412166b964f0ded5992dfab8a02302f1463107a46997dc5cef39f4fc9ac3ef797468e8f758368c5e278c17a58014e8b01a703decc565582e1874a6b617b140302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306c8924b8cb15a59f06b74c5181eca5d64dfcf6dacf15519c7da5b0b933982794a82a69151063025e6a1cb74deed63b7b023100ad18b50001574b9ad1f329502d6af39dde1ccf2f8f64845621cea4a389c2dee971dd15cd64aee2bd2445d02e66cb8d670302047c435bb5006830660231008dcbe172404ff292a67992adc5094d630a667d101bede1a792b3b0a98c50ccffe76ebbe62160dfd926005cf37e841b28023100f603eabf07a33dc1261d81ac70e7b1b2c4b2f60e2d356601b8bc5071514bde7c5e43bac0f6f7c47e39f46826024098720302047c435bb5006730650231009a1caad2feb6166fa97c733e23c57a7ad002571beb39f1baa2f432630475994f7e0c55afb796ed39e95034b0018096cf023067436696104bc1b88f40a7e0692f08ca0b7c5ebc9ff74b1f54a00cdf704f9de1b0c5abc62fe892b45c2919079d7369f80302047c435bb500683066023100b659dc41371a3b1d4811f23628018dc084dc44030957e1fd5c549267765a2c6caf32f2d4e0270772b6df336fb165b581023100dcfa7c683d4c982d56f311f15971d610a4031c9a064dde26d7507beac7f53d6e08af386845103a441129a2583ff5126c0302047c435bb500683066023100ca5a6f6db7f7a1c54502a8b0b9f749dc368c1e4140b3c31ed570b92ca55384df60a76a659f0a30e183f9d07ace2536e8023100f14c8f263acb62f777fe1682e0b3ce0ace33a039c0b7d95231a8a1f4d3821a0f745cdd6c1162cc7d27fd0910592da5990302047c435bb5006730650230359ce7b142e2442f89b3b6d6497ee37bbf2c27dd24c1de672c1935afb997366be9f7b2bff67b17b459fd878e9344474a023100b6e5b02357414f600bc8f4146f3c31988f79be9a37029507539273137bd8f028797833f64c4723541652a0bd8216842c0302047c435bb500683066023100f9e5693d330da5df03c9d1b83b6d0deaed0d6bee744965b5cc32cf27402eebacb8ad30d07f601917955f175c59007950023100b34bc1551d79daa05f2857554b9b2eca7893c8c382c5d8a6e146c26ec994793a8c41102458a4fb85ab2c321ad416ad120302047c435bb500673065023100934cd752a1e09ec15f59b8b9001b9fa79fe7ed708ba4066c6b2443415d5134eeca05971107b9d77a5e17d88cf5dbc38702305cdf98079411262f0d3e74b0b1633dc01cc881f22c6399f812b5ee9ae782d06b4c8c7d9d3352ea1b6a50e2c1fc98221c0302047c435bb500673065023037ebe2b5ec8d0b8bf295b53cfe267f2436eda728d48dbb683510c7ee007edf98ab9a10b040231f32cec5a0d9eead7a14023100841aa94e86ef3f0cb67181ef679eaa25a54b3252da292c8e92cc72b3bc9f0e309c2c320407d2fa42645a4da5d9bfb2020302047c435bb50066306402304d81b115f69dc21e484adc399a9b7c834667def918f7b87431dbe44aba43c83fb18aa46d30a414427030e09e1a8af2af023030ea9a0c827e42bc9800030fc277a8b6e900d0f42e3f07befe2ea69a760b69c9309d898b0bb718fec4d196b26fa100aa0302047c435bb5006730650230319327ea87695b15fdcc5371ff3418385e95a71eac7365a46c4511712b5984c76db27b9ca364760780b21f7c1ecf5f1f023100a7e216725a02970539eda0482108bc774d63ad1ef232789545d3afbd5eac95c80d5bcb1ade5f93a3f49b189ef1e661590302047c435bb500673065023034cfd749bb12efa5634ddf868b8cf7fdee4a61b1b7acc465815b3f3c92cadaa4bad76bd27fbd7475d9c2114a5775afcc023100cfd121ee80c9a4e285b51448bdd301056d794a7cd00646e3b7f45e1d1abe3b6d760d00f7904bc2a4b8c193e8cbc4a3160302047c435bb500673065023038d5d31df6300d1a29656410e029f7ca1a44bb290c06616bd6f62343a5778bae1ce4d8c94566d938259320c788553c5f023100cc550cf296bcab9524800c6e0cba8d4666f7162adf5ad0d9e488cd6cfd207388339d1e2056044b3dd212a102f2b3ca010302047c435bb500673065023100fd6cf8bc77cfbdb6194f087008e5b8f4bccf29d2e1e0edd0b0b35fc13418f8e720eac3899e8c460ddc2a146ec52ee52402300d3b07427da494907c1f6cbabc730d78b6f1c059d0bb037d876dfda5e90ac6c7c57881b92ec576f236d917d35871aa3a0302047c435bb500673065023100ab82c803f07f45e40073b8ddcea8f74a1952b7c234efbf763bc7953873270250485b997631754a94e07ea7842775f57902307826e2c82d97c8f8d68d7e3c5b536a1eea1eb07647ad62c87a48fdb0e0cf4caa36eb9f49c11bcf4f5495c4b35b4b5fac0302047c435bb50067306502306f5d7800d62412d96044d3205eed23eb6f7ffd0e66c6c8e780c61b61f75f652e4bb7de45e6fe053c0eda20d413223990023100ee328d0807cec45ff28c782a26a3c7db1fecbad4385d3c3ad29e3d5f8c5fab37d1742db3bec9306585abaccbf3859e510302047c435bb5006730650230534c68c11b5a0cbc9893021939add091aca48aeffb172ff802b26e4e9727892a2d6a89ac9f449799b288c8d3c49c58e0023100d00b789be996b591764a8b282affe6afe8ee94df3f634c9058db96067794a29663375c504e49dc8eaae2ffdfc4ff94840302047c435bb500673065023100d8712315cfa9c8a51e53d02c1b992b185f80f56a736c0c7f03dec1a72d745548419d83ff19bbcd3dbf2c3ffb4e163d9402304a7ac141486c5aac93e9b54a11369831d99a38e9f63d69ef21d230b1fcaaaea015cdbcf08804902f0d5ee4de639e42730302047c435bb500683066023100c22526bab3d795d97fcd0016283975705032119c5de3dee123360bf1ea5bfb9518c2bc0371a758697aa44b098e16957d023100ae296bf77dd4af6c043bb01d2cde44692762fc490d035aab72ff9f1379e6cd860e942aacb9badc8c0a3b4b44c9cd72e80302047c435bb500673065023065e05e3e8ccb187e60bb9195b1cc848b01cfa1d1b46baf2a776e8cd22e6bb0c6e6b37955e9d2f9b9f599d1a62883ca5f02310092e8b21c5ff509708da03a0cd735cae79ed50c3f8cbe1e754e5b492755ab2d1c3c648b3f5d4f0239a05ded68e06014ab0302047c435bb500683066023100dec3b63187a3cbe28f2a9a9a62a0957a1695fdb509aecb2045be3cb41932165bf4fc626b29ad014ac638b03782f7ea67023100bfce3f03c4bf031155d6cfb974e59184c623dd28c7b889ee2610c11f0734c3701a6f5b84e8d16ef5572ac3cb02eb1ed80302047c435bb500683066023100e0007559eeb1384e55cd5d1629d30ca3bc034a93c6646a394f851914c6e251ef9d7021acb993cbdc5171def329cd0bbb02310091fd9ba8bedc48ab5006ffc0bc5cd93747b992377f5932bc105226cd5ff8afdefc30eb4469724adab2652a7f5d03b23f0302047c435bb500673065023100a6607d29e075924c1f79f38f6d29400b0fbabc195d5f18f7574326a73f46027c01bf33923754049e5ef4a310ff48bd94023071ffd49392d75d7ec1ce8bd5cf24121929028f614523e7d5848bd036b8633ed53a74a3fe1c485a3fefe00befe652fde30302047c435bb50068306602310080abf6f8e203c7f7f51e2d799317d50f5cca1e6ceeeadb1ab2dd5338a4ca284076f9b31eb9816b47dca9e3bcb1878152023100f106f2fd4086f5c34d9d69f3505261032212198dee6c12d398ca2cc808d170421054ab7ecaa5a2c5c772f316e8901c460302047c435bb50066306402302e3caf7c91d8d315d252f21e625c0001bca211ea2a15ac57f9483c5d1faca7081bf6d72ea7455ab50c668c214299d78d023079184d4c772bbc1f838c024955ef930f9321169a1a55f34c3d796ea95bbedd9a1199e7d9832b195c8224566495e69ba90302047c435bb500673065023017516c418f0eb2d745a04ff5c9b896fd620ee1d1bf223631304bacded944d3789a1694fb829e87d6b6ac24a4080db0a2023100b176103416af523fa343240fb74f88dae6c842cee1aa284ed43d1e8e46b30bbd90424e2a67e6655030c5feda099bee810302047c435bb50067306502307ad074f1286025b88214fbe95f70540faf688e7080b520486ef365379199d93eed8d0e13e261e55dfe36989a9f455604023100e7372dd45e5bd276e9148226c174101c7a62e0167df56279ac1ba787a6f2f98701ff423dd64ecd1c7116082440414b8d0302047c435bb50067306502301f6f89c046dade6866c7945b71c861ccac92f9e3ed274c09ea697b4a2d8d1b4f97e0812373b895de346f390140e4335b0231008ff783fd11a2e773004c66a9a31e2589c12a0c8b22caaafb68d88c37dd0e33c44e3f9f32dca57dd2d98797307d96efef0302047c435bb500673065023002ab717bd09d598f3f95eeed528e23fd4e58df9036a8a70869e9744e64869fc9dfcf13b797dcb3404459e39aae2d29c2023100f2e8db35b9e3f2b666e61fb6b7b1899273569ba1856fa1666bf72869401ed6dfe042f0ce89968a94d8efb38262c72c590302047c435bb500663064023044538cd98d95c37a284af2009e2686b6da120cc8e92f2bfcb507495896bd29c9aa2af7160952face2ee3d5520ce9d1d2023010442cc82037a6b6c64a1403b9ecef544af84ac2a24b1a4f0c74510c1e221fbccce068faee3b8acee49ac0bfd32090f30302047c435bb50066306402302aa7d720e19e8ce2751ef8ae1bf528292090600790bdbb47fa1415557b52cd91abf9197fd1a84de4b32ff61eb908319302302d1d28fcb152371d519cb760fc8927eb4802a6ef08aa5fb9d8ee95a2c2803374e3fb8c4a12fc0b4f0b702b3e963d3d2f0302047c435bb50066306402303e29e6d61c14ddc03d08effaf3ee6c7666bc2fe98ae04ac04f2b8ce36afd892b46cc3d813b94b24f026177344f0a92300230503373e5e2400fbce28721c5124dc177179bb49be69e59fa9c979b9f7d7832f7d71c1e5eb540b993fcb4c985e5b44f6f0302047c435bb500673065023002fbe406ce797a90277add683d247a189348817aa675bef260f84f03629eb60387cddbc821984720b3684b7648a0b52802310084cade64bcc2c88431af105df0a67c48baeb2253a50d637c2fa8dfda4d74bb97735ddc77e10127b58eb41f5f91920a100302047c435bb500663064023029481f1166caaf657155df221334b7f71d138bb8310cc3286ad0c9cbc3d96bee84a30c0934028dd4b6a32d90815a50fb0230561eadaf2c2ad1faa02e79d008b328739dca06b1d2900c2760b8f0a05b8118b1c26c9f7b4dec35293d6d59f2df34d0330302047c435bb5006630640230690ae4607a99b53fa01609016b6095c898f4a57015735fc9a71a08419363a91ce07c1ab7d21cc7420c77ad95287bf534023056cbec7d12db5afa9de48036a073c4aea63428ff8c960845941fa96987a02ee6da44f164eec762fc278eb06703ce1a440302047c435bb50066306402306f482332da6d33308745f152904f296e7f7d6f1f1c5cdb450ef1e3db931aba4713805878f1af54833af30ccd71c6fb0a0230136203613ca290eb4a8897114971cbab2adab5079061c9263e688c1edb1215b2a3dbb18fabdb0e8dfba40fb24a53fe020302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302a386e74c970dcbf8941aeafd7aa166b08c5dbcc80fbca325557be26f333ab8137220930594f98751780f92080aaaf15023100b23d8d9f234fd85fd0d55c818df5386e3335bb6a576792d5fbab07e9add01dd5e0209abd9364aa002924270da78622bc0302047c435bb500683066023100be1cf0247bbd0fb84a1e5269e64f90ffdc6b2158b740e1083d740081259c23c71c9e31888ce3a2d945b976814fc4f416023100b04f14eb17fce65dd79cd8b3c8d25175ae26c74fed1f87c3f98c20af920de7547346b4e65d70116db463ebb8a2d43a790302047c435bb500673065023100d572906240e14c963f97b79c0ebbd39c1d331ede288bb22b07a2d7074c3d71f3b27fdbd7170f75e997f2b4b45cc0fd920230092be56ff4e6395205e362ffbd80cdfa81ca9e8c89aca3cb72112e753a79be77c9553dca5c6a6844da1e8a30d931ecc00302047c435bb5006630640230152c53befa1a66267188369f3762d48959d7abad28a15d7294ebf59be6cfbf5d9800bf67b8a0999c391bc08f0bdec2b50230578124e39f67427bf31c2f52cd3451554901d4f967a64eec756371354051d01e0530967524ff0ebcb26e198f7a95e2a80302047c435bb500673065023100a02fc84f1672416d59bcc8630b4b49c04075277f9449ac73e1e20b34cf3dea6aa2c785637c0e1128e4f004628fe2090602301d1bda657dba3c1ca9ec8a75f4c2ea7731461b82ceb4b5ad2ed1c1d53b3e61195a3fab44a93632977f84ac81b4090d000302047c435bb500683066023100c04ef367d8b4a970db40a20bd99f520079df8d280b5f25b41412bfc3a5767cb7dc1e86057c6755427d6309f9f225a4fe023100c8f949e564e0d4459e8f218305ad6c1fcbd92d49e73bedaa7680c77ecf13235cde4ec14439ec88c86b947bbc0dd504810302047c435bb500673065023100d365921c899e2ff9ce735f0c9f4ddc48d6d86269f91fb63cf8a31bb77db736b46e4783d836ba8075435202255639f652023012e74b6ee2a3b2664e2f5f52f42dca726bed4930fe8aad7a839b1dff789d950707732790f33d30a8a45a2ace49e661330302047c435bb50066306402306949904fbbb8041e864c3d561508353fe7dc12228acbbbdbf3b7030427bcad667f640365ae86da48641e7e902d7e174f023053be372b5be5dfc948502d416dbb224222a801b7f6a01b73353ae8c753e485e3d4afb4e852c9695af6dde65880e50f260302047c435bb500673065023100c8bcfd7b0aa1f3159f372c3dbdf93b987cfe49c7e28d5b0934dc1d92e4b370f55b2bc3d437df3a0e23006cbbdded105602301e00cec13c5a091804e658854779dfcb96c89d233fd0d021b5b31d7a9f1ec5478ec430546b5b367d03ca1e864f204fa80302047c435bb500673065023033a350b02a8370a07452acee403065d62858db802c8dd0295213cbe1a53cf08bcf7b917e000eda440196ef675f005205023100c7885e58f16568148fbd8d33679d5d38a67abe3d1cb1145105b49b2237b8c3889ee9085cd42ed2aff584c2a0c7eebb7f0302047c435bb5006830660231009d03ae6a6a5c55675943ebd0afe7ab32207276588d78878d20430f1eea633dff3b4e8b4dc51d237c7f868e807ad3d872023100dd86fdf86167b41e8e621e3f523ab9e6076bbf805ea94e78e8d799ea4a7fc14c10df20812363752ade6142c77d83d5210302047c435bb5006730650231009113d4bdc0b6223984417d7b2d6a901ec5aeeee38cca6fe41f7f553e1196f26e104c7515777be7197b176931073bbca8023022a62f7c7920baaf7a5119af227fe53f4b685450d5775810269b08dd51663a977e6487224e7c516c254af26c062b99c40302047c435bb500673065023100a02066508f8eb780aaea062cdfc80408af516c67926e5df8af014803480ab198a7d0b0fe81badec6a328f990e086bdec02305971d2799d8e220ccff469ec6ea0bc47c4d990010c6841f6a200e0a69c5088cf1ed49ba2f82adbbc24a7d4c5e807a1fb0302047c435bb500683066023100f6eb3a0d4bbe0215940e0837822c84eb5680247ef3b9d4c604002303ced2f51cb0511050cee8d42a1af662a50da8ca62023100cfd23c467aab8d3bc0d377463937d6472389b7dc412122f2a58acf1e13c041347af4b550007e1f79b1044721240e312f0302047c435bb50066306402302ab516e0ce6852bd77f3bf3095c5a2c78f13974da0d6cfc0c784c1245584cc55d6c22f57395cf4d6109d8608e187ba550230067c606e547fdcae3d7ac08d58a61dd81218e5e79e8138b9b0d8cad60608b5dfd3068b60fa9776386d42a2974fdf8b500302047c435bb500683066023100c7db64ae656008ba01029c25b00dabb2ded02ad8d82143ac39cad8985a59acd276adad9b31a9f97f3149cd365e16b7f8023100df5a17e05f34bda27c88ad38482cbaed4bd6cad49558d16abf9ac0589922042f89e8a0221bba63ce4937371d02e724420302047c435bb500673065023078a9eab283d385f2aa7f8a77bfbdda0223b9e65425e2a81161acc2a7ef8e302c3f8570f226e58132ae3dd7eb8d44e798023100da574159e16380e5227e31378c1b97b283f48f1601e834ded36d52995d86375dea503e992aab6e9a49820347955d7abf0302047c435bb500673065023100f6220db01c120fb2aa905778c38a693ebb994e45dc1831bd1ef61c2cf16ffe624387712cb0d38907ac3e06d41b5aec6d02304b75786b80fb92ae4850dfbb411e761bc6d51ab1e07c15bc932f522cd3b3390fc368575e110fde1e1159a51caf5032f10302047c435bb500673065023100fc73f4f95f9c6565a06e6a8dddd75aa2001b9f1e4c65f63be3541d42e82012e40f9ee1bb2b1c94892963feccbee00e16023018104ab3673441acd5bb8c1751f622d7088d384f7f7261a5e59bb6596d242d60e2dcaade752c9d3cce6d1b8f95a6606f0302047c435bb500683066023100a1cb5e6999ea90ff5c4d7802293a390dc9ff329f720040b9f8f009872aa948ffd50bfe983a58a26cef2b7e3fb3c9ce8b02310092d8f8d42c939f1c0f0c6ffed83ae5a6ae8863e3ad23518f491f227f79932ab7e08c0a3c443e24bcf9524415bd819a020302047c435bb50066306402304d72ca3c3cee7cef067798525094c8a857d25490dfa51383988629c03d0b891e6ac83af327b54190af7f43eefb8c500d023030305a3fc22aac8475323b11bf2d77ceef757ab3bd30b479bc7d6284d0e72ba55b37fef54a235366df2f6be056e6a64f0302047c435bb500673065023022e0ce3fa9de4b086b40765d3e960fd076dd82590678ba3299935ec174229cc71ca7583b1876c6762eb281da3b27a7ba023100b84fad01b3b2f3ad93129d17ebdfdc3c0033b15b070541fec051709dcfec23c603a5349f625f2cfc54720f52988dc95a0302047c435bb500673065023100de45c5b85b5ac444e47db5039c68f39a34ef002220a746c11882e1b93a20924f219d1d48f7399f35aaa8d1279944dc7e023078a38e95b8a177f1ad9585cdfa6ed14ed25dc111eb837b9c188a713d05ebf47befa1190328ac241cf13f6377baedceea0302047c435bb500673065023100c01f48f7c255962ce08b70c9f0d9f400a5e8269cb2a5f330cffb1322fde358c58094c12a3d5c963ca2a2f1fb91f86fd302302684f8f1e3cb639b273fe047f0936e2df4f39e4de1c65451ae0242d8a2ebef2078a51c46fb2e14531135f8e2675849710302047c435bb500683066023100f0afc19433a4d95804459d587a95e4b3bc9b10d5e04f0e6308d8d38aac17cd108ccfd7cb6750068215321e9365f362a0023100bfdbd25ab7b5db005bf3cd60963abaf2469f5ccfa9882388107344a289420352db2925ed51a890963f2c6dffa89708ed0302047c435bb500673065023055cc9d16d215b34091b5f3608535bc6ec93868335dc32c4ac87daeb44066800ae22092642aef6bac2db66d6059ed2c05023100db4dd1959f448bd0c41dce91a809edc9f67a08e37620db3e2b58290f5287cb54cacce9bba2ac2c21c2f21d388d5e9e620302047c435bb50066306402301a7be7c3bd569a8d55c3be3a9a98cdc606268aa5e78592ae53448a0d9e3b7898af95fb504fad5dc93dc7dab869a277510230573debbd3365171b2a8e07871a34f5cddf8a539f9c94360eff8d10e726a31c6dceb98d1ce1c2debc37695cb539fc4bd90302047c435bb50067306502307adb9fc0fc248cfc215c6fe8bd27bca698d64f9e7e7fd3621d612a3336111700838771b0a1ff7208cca14887e38f57c6023100f314d4dd5135eaf7918f4bf3860e807bde4593458806b4fe910f11c649a6490aa0010c717cb87c7dcb8d7fdbffd0effb0302047c435bb50066306402306ef989fe3e38485896c83abb403b8e129c53fd36b5e6def80e51cadc393a10c778ffbad098cc7b2bd806396057a26e1f023068f4b5649e807c6576d3042b87acb7e370104042c5694c156d3278cb3390dd26562e2349012113b5035cdda41c2c25810302047c435bb500663064023067a6d0fe3b8c18e06af85c9afd1e3bbd13a952fde31229b2e6cbc939a8c2f4f545552b39268acfb283487c8bcf2b487e023016cdef3758c1d749af6e32e97ad5234fdd84a8de82b2713eb6599c95a6afad7cf3067472adea2a62400d309e3ec57e850302047c435bb500673065023100b8998fd9f0591e9e0def113b78ddbc5ec885c198cf54e2538f6c4118ef20e705bcbeb4000f83698190f0c91d11e1b27602307db75ab1e6082fca7ed5012c07664f27c20e9ca6665ac7a66b9eb3bea57d12ca6889a4b7d04f0ed1de2f4a67d54bfed50302047c435bb500673065023100e1edbc2763f21a1332ce1c074bf79935c407db3530bf6853b8eddd99fbcbeee42d2f458da15e9f054763e2454945caaf023034941da1b960e4ca0c3d9a76be27df5b926ac7eb8180b76c9d980a4ed1fdd806710468a0ebb03ea09c2f88a9d69522ea0302047c435bb500683066023100bdc5bd77171072f56b01450075bcf45b463c715329eb85846fe2f2bc2dc6943034512317c1fa115001e314bc5af6f052023100d37e40fe98f74ff7b0925da6e5edb691ade4c25ef6ccc2ff2485e652eea839fa13eb92af09bafe407b327bdf77c744390302047c435bb500673065023065a63fd6baca27a0307f5438c02e68720b93d63390da42f156b5e9b99f1ae81a026642b4224c3bca0139c80e780ce08e023100f8728ac6947142f3c149b40b30e6778a9c3e2f4886db3b044ec04493cefb030a1247393ed24f5951139551ca55b3c5790302047c435bb50068306602310080a300045945c4671f517f9b0361cb878de5026107005db6e516014425f06054a07f7575d40b077cb56fc9c1d072d642023100bc107d7cb63514e55c6759dc714c289f8039106fe8af2850f7870ca50a1a0913ebc28e35d7da6d6c2b1eec59ff6509f20302047c435bb500683066023100c31fbd7008330c90b0dff23505d3be56f6c9b05cd6bdc9445e9e9c37078e557c72af549e46b994aa53167a2fb3ae32df023100caaa85e69efbc56795ecd2321287adb6bb4deee3e8ac75e9d7912177b9d6d8e01d21a79aa11887e15cfac11af81614ed0302047c435bb5006730650231008814c5f27e466370fada319b9cf61324602abaf8063c0c2e93d88d0d4955c5cdc9853c69e78984804f94e97b3bb16952023050bb106c20e2caeba502e6cfa37e08f84c09b68e194ba34ccc859736395467aebcbb4a10fa348205a30acc28191da0270302047c435bb5006630640230423bb692e7af7288a0b3b3fadab2809fc0b4d1af687869b81bcf813f3566055fd8dbb5a305b3c1735a2608c31ef15b21023031fa3a82c53b8850d075ed9170dd380d00cc30579cad6194b603ba0934a5076b97cf10f58adf3d4faa95619e2c6b61020302047c435bb500673065023100b30a79154a1d073ffe538c8ba724c78e3992b01aa337ca84bf7bcedee8bceb9061bc81fdb8e1a1ecf255df6669dd893302302937816ffb148d0ca2da7224f6205aae80ef2c755d71b308f5ca777c22ac739c4a62adbf4692e8616c678ef1a95195430302047c435bb500673065023070d9f3b116fc7fd5c76d520dbe10d92a5e8bf80be9f69ec62f75bd7fa3ca4e282c75209dd2dcfb5d4672b2bd50fccd4a0231008142247962244a215a4a1f7403b85127676378d0cdca4971b7c8f595feb372d477e0e93f321a1474538d7fe7eb0563160302047c435bb50067306502302bffa8fee67c02e6f85213e933fde516d9d2ac8876b6625efb428148b79b416ca99a45017476c221ebf0e1eba4fd6919023100bddafe4635fa607af9efecf2140a0f20307e005b4d457e57e0e0fa9f87f2c26f4806ece9f0000315289cb3618667c61e0302047c435bb500683066023100e85d77d44d1ca954c424797c5b3c91e1f44ae795f8f48fd7a2f22fca6c4390d03811df5a3007f0bb40fc605b70f87574023100944d2a1d2dac95c21c1f366669763c40db5df53a141cbe2ef4a74b47f9471151eba09c808de3ee66d3477d0b07efd7840302047c435bb500683066023100db121fe1af6bbfc03f6c656cd2b3136115fa7431444feba32bc9e67bd01dbcfde7bfbc7a93f2760fab75342040ea6183023100e29ab34be52452d74060f28208b57ddd9c6eb7292c336157503afe8982eca761987f917ca1bd20098da72f07a353ae4c0302047c435bb500683066023100f4bd5446c52d2aefceb974d1733e17f6068d2f75bd2022683c4e58ab571048f1c913d140acdaeb1d56ff193b4e33a177023100ca7b71b10d12ca96bf098012a0c4eb1caf08246181e7d4e871b01576de4ae3444e097dd408ed8af1ff33de9c7a5169140302047c435bb500683066023100cbd3c71b693f7bfbdeb30b3586414cf5bd0436cf3cf50851e73da76d087742438b0c1dfa12ea7369f32860a8e846c88e023100d2ddf023cf3b5c77273dcf122c41abb1b7b6ee66dd0872d20bb2f590c4056f8b93e068cd9822767a9483bfb0a39c802c0302047c435bb500663064023073b5a5a5cea1b3de09af14c10e1ccaac3cd28e62322a0c84ad6b09d8a699dafb2188457b093831152feb706544180a6d02304fa0afbe9508da2fa1b7ce075487ec59c4653220a031d96499aac36176539e343d00228a4b492f0bd30836516672119c0302047c435bb50067306502304d678603b28b1a930972dd7ce50e9967513b222ed4069f3c0ac3a7a650f8db3e514383babdf3e040a3e031bf13d49b13023100cefc6234834258163b5a88ae5c6bb14b6974a6e84895285b1a1ffa02e805bd29678cd48e4d28434479fd9245983a44b20302047c435bb500683066023100aa84176a13b85c27f0a380e29bab416648a479a1dccb87ce04f7a3b890cb4f25ab997c4fd6a2219637d8423c6e0a48fa023100e52f14509a1a4208abb8979029ed4118bf9e962d5d9178a37dca7430502c033bdeb9d1f463be72e1a9737767295afa5d0302047c435bb500673065023100f28dab71018c763b6292415897c47dc88629eb04f27548faceb7b9d0f15bb0e385aa64223463e08927f043b6bdb7e4b802305a4b9bd5c014f09bbf15d9ea22eed857f3ac70c421057c52aee2b17d99e15b0c82057f22fb6a19da288d16006714ac310302047c435bb500673065023100b1a32331c0ecd2febeca5ed45d4ee6c7f5221d8eb471d971c8e9dade61592da9ec5b822b701c9b42c664c3ef0967c52402306393ef39300ae02e7edb19ef7f2c99084ff1961d68a2914f10654e931ffd953029d58cdd3d12f13e4bea4dd1b12da4fd0302047c435bb50068306602310085a9469dd2a298c3dc57fa02c0152337b5bca7a8e1241b9562c9c796f6fcb917276afc73b3378a6878ab580a460af467023100d87c3c0c150a375c4671108203c78e9869455808ba4ca91a760f194d137f42e6ad650c9c3317fd365ae99d99d22978510302047c435bb500673065023100f408839267a460ffdea61009591f4ddf64f17ae0886348c52637cd462cd362594ef6f44a0579d040c61f34f96ac05b1d023028de06e72dff5c3cd849146f7ab142e25880a5f405a372bd4c4301f162b7b0518c2e3fba73f07efee3ebe6e264c9d10b0302047c435bb50067306502306664b8a0e5ff15dbcea72288794332d4476002ea47bb8212e4e1ccbbd921503079f5044d877b111dd5c309a5e4f2aa6d023100e276e8a65fa90707aa9badf5710bc42f40d64d716a5c5c3f08360b6dfbf8233af11af82cb3c2885ee4cada5ed62288810302047c435bb500673065023100fb53bf1fda56fc827f47883bc7886ad0cbcbfa3f3e455c5d8967a30648af2ba3b435d9243fe2e113ee54a69f0719f9b402300329fa7671f01d5456c231e27df99fa9feca0ea8106a524e4f62b2b60470ef0422f7197aab16775fac09b8d86de8a0220302047c435bb500663064023007a3c869116c1a53777cc401b1194a0d9f8f3283f0a72ef36853663d60ad97555c5eeac6abd996e9ef59423efc28a2c602302a0a553f6e335330d03fc6944fda14ef25207f25ba10c1f0d5cd1e89157ebdea9de375c2b315278b2b4cdaaec0920d2e0302047c435bb50067306502306742659372e8c5b3efe18c71330aebcd3e6d3063b11951c8a9c96877d77ac8f4e71378a35f99a7400012e7a99fb349f6023100e63f8d7a540645890dc53d9cc4d9e2475f60df7cb8641712c80f10456a47ec24d14d031a76f61128bb16b87f4e8ba90e0302047c435bb5006630640230119a55af8949b66ea02ed2ea619e50730ad4d4daf6a6d1c6a9d331b0fcfc337d47ed7c5769d9e43ae9ae310011d2d4b5023020240ac7940ce01a9a43af8e9caf5242788a3bb229b2aaac83a3a44cb6ef5b763f267ae075db130cd149777ce313c0910302047c435bb50067306502307f4c4449a161f4d7a8915392c33c453c9fa498b0ffe32f23c1d415643157454e1410f3e777ac9d8b4830544810cc3ee3023100d1c72ccfd548830e69cd89216097f7bf9056f4e5707e275b30abeb2aa1521239f876ba085c72e594d55d19690340f0c70302047c435bb50067306502310089b09ed59bf4c4b554167a311d0d36d900a099120b17ccecc99aa81e5fd1e480d6aba0e9e08a3418843eb37d500c13d0023060d54f3e302549911709f5a250b737ae17ffcd5d74758d63746a0019885e6e3057b9950ed083edfdce8d00b58264682e0302047c435bb50067306502302ed2b979409df3bc7fa80bd67b17a08b440b97c1d777dd3410f70f4cfd01239702fb8163aa5a2c4da883cebf0e8c9660023100f6334db4566a1da0c08cc11e3d676658380c309fdde9f7ad2019ea8992deaed6edb2510ccff6287caae3da619999c3c80302047c435bb500673065023050f1613665d7283577f35dc51282e4b4b297a2e8f03d1df138f417c39fa69456adcf593fe9130f1ac6e64a4a6e53b14a023100937968185f31769c0641aafc956f44a7c90b2658fd4c0f1d6f353a08926c0fb062a34ff028671995ebcae9f6b681ea2f0302047c435bb500663064023041b74d5d5402d45e9c91f96df1be60af6a0e5b873ad6cfc72733a089b9c2221592f0e962b4aeff231e39d3772a437af5023070f1c2b976be65cb3ec6ea604ce818b77472f374e6d91499efaddec26f7df49c3d8291d69a7ba0fca2565678f695be8f0302047c435bb500683066023100c282853d5d35358ca7c2456c15a00331f16ce8036a47f19a68a117e52caaf768a686dde2eebf01b74b8650af1bdf33d2023100ee7909f8ca194720daf37d2147e070a3a0f7a642860665e6a6e4064c6236c22261fcadcb35da0fe966ec5772ce6b10540302047c435bb500673065023079bf1a93355c5705d58f9bb452b7f0ea2ee660b4669384ab073dd35bbbaf24766520af1092af2dde68f2bf4418477f11023100f3c8a71c0e2423e12b31053c9850c9759b66ec3a9e50b41e2805a48d996ad52a1740252d5c8d07526b5a3983c408f5b60302047c435bb500683066023100ed2ad57ad3525a0c79388dc42096c302ced43e2cd4911b802cf11855b9a51d70ba1ffc66de0f279fca04ea3764aaeb9d023100aab8badf636cafb0b6bddfce340a4e6c7d1ec6fe676d85eb320fd6efa3b127f3d5ce839bd5fc95bd378076e03b8eda130302047c435bb5006730650230746c99f9766b267588d474a1a1e69ffdcd39f576eaa3ed911f93b321a037af82ca934b2b31ef5d8f10d842a9a09c309b02310092d608b200e367007b8d6429bc372b0f71bde237c2f586eee55ee363c5be578d77e0c26869153280d27ad0143927315c0302047c435bb50067306502306422554f85e24eef6716e023ac64a86a796b80ccc0f8766922dd3877c54ae7bc834201422a4797272cea110277620ef5023100bf147b98a169a8be6ad451092c045c1ff75e1f6fef7ff3cb454d17c7814aae62e0669d08116019e93e8c9e953368eac70302047c435bb5006730650231009dac8152690bb36b4d242535833e369ed2d13171033099c3f7ab17255b3d4071030cfc3b25b6bb48920e8aa386d597c102305676976be5adaeabed1b188045c3391e7fbbc9da397ce621ddf26d6ad46dd535f59761e68cfb7cc128e665e41d7b46c80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b6c8e743b37da2a70b8bbf5bb306d885357a81718bbb978285823bad93adc163b7a699b11ae4ce89065b62836e8c2060023100fd98cefecc3a351dc3513dc883573fae1ce630b2bb6328db5bd7a32529255b82a9b0fea1037d9d40094a2b37b47f6bcc0302047c435bb500683066023100c6152fe435591f3368ec1c44b115b62fb53acbeafb32e641fed8242e8c2262f52735999d61a82cf4f7e9273884909ddd023100aed72051eda310f40fa41d64fdf325ed7c1a2b6ba35845c612acd99bef2c4b22ce0cf2d72058444ef6cf7661a6dbc29e0302047c435bb50067306502306c34f5ca439ced80be3055bf9edee366a8b3b3042efff57e422585833f7bdd23d82fb05661a76075e597eb655f4d7fac023100c6d17cf2e764ecce8c7d76c06bb40ed42df2eec45359504c53f78b7f1e0c08b077a5bce22f174f6455f7adec1bc1eb2f0302047c435bb500673065023100b0237650269266f571e36121de717dcee4e31fb171d9e665aa0fbd0614cf7ec56be702a4ce985ade3d9058e94d68091702307205c622cb0896ba0e56c6ca635f9c703de8c6460477b3b4463cd046d70f175b33f0fd8730c1c916682715ac182a89130302047c435bb50067306502300a5ac1bb18555482e3f69f2703201f394607ac0f08038978e95ee7b19a9a89d7b3e6d0530d7f4231089fc8c76edb1481023100fc131bf8081870501920306b505408acdc8e6f13ba9b400676ac39aee4e7df92e92db339fce903ba4cbf7121ade6d2130302047c435bb500673065023050453730d87cdc4ca403a61aef1b8f298c8e6813c8281c16c15cc677b8ff647ac4a6453137419c07db70a1cbf9a7d5f1023100c37532f9573e72ca45da29d81bea7f9b42609cfd72b516d7cd9be7c2dd7022a00757d18130ead466a795617be62e07aa0302047c435bb500673065023100c389d4b1a8e2713a293bd5c35e2994d947f4ac9be4bc12b86c4c3099f757dfb4ce748ae8e77c2ca73b8c308f111663c4023079fd12177e1db506bf053a8d35dd10b9b7fd67479020b47b39b7cb6e665ed9976d878e1316284809c8bdd4a9a5bb42060302047c435bb500683066023100f5084a2dcd3273573ff1367492750254f9c3a268949d10b7aec9a79ff2ced210aca98d1d3199511667914f19d541bf30023100e6dd997b569f5b6cb24a41f8e5c41ca9c2dfa321e6f729c596bc447b8e5e752d64e6a77718ab4703f89930b883f88bc50302047c435bb500673065023100e53c74b4e897f1e92fb8e9b38d616ad625eaaf936eceb0516186301b9b0aab73ca230c2c32ba18b6b6656950500114c102301bb4be1401a67cc553046f16e45fb5211744682419a5914bbee1f5eb9bea257655b77de160a027e8f5646d56302f7c890302047c435bb50067306502307113c1637987c8fb69ff6de24b8084b4ee7d7d4b4a162b3a1816e4168ab2c135b57cbdcf1cb48de307975f0d7725d47c023100e4bd1a4cb79e4ae373d070c12db4017bf243a74f868deac93f8409bbba7d69c64ffecb58ff5b47bf7911e115c482b8520302047c435bb500673065023100810da37441ce32bc324e6de0958373dba69e3c30879f6030d74932a816fe4a529d29e90d42fa26c9387017d4980c2819023045c146bebc80cfbd1c99a717b9afdb3879b89b4b1900898dbf8987da0036601bdfe455e8618fb1d1b856f9ee671ade670302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303a57127ab7e3bc3e0be2ea07a6e6fedb9d96e040bea9e2dabc4fbf60aa4cfdd4a5b274347604a1817ea7055429f6c06702310093677be983160bb3c86d6b524e5686f42d0ae8930637551c6a0c2e6bd5c5957e7f2cc17b01921318a1e5acec5616e2820302047c435bb500673065023100dd3abd51bb7aa99fb506192418061b9d77bbc23d344660574a6d8c93f50971f8935897c4991165fd77697cf1856cb07102304a1ad37b9c2c492602c25c85edd2e8250a6e34baeeb78b2934bdd1125b75ec45b89a82fb404c60b9b8471cf2900d8c050302047c435bb500673065023029462fcde15de10fd5fff552a806f519dc8092704ee7e507e7554862f514439cdc2768a745b5618eca6f4f354a138a5d02310097cfb2966fcc4f6da81302274dea220816a879d1263b460ac67723680eca8f0e9c35b7ba698da5a0640095846085d7f00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023007036f133f81789c313c601f8027798b13646dc299ece4ab35100d239f3beac58016152a79e680d57237a829e52b866f023100b83ba21c544832db8223fead77df482a3d60a982cad529a79c5d52ebda3b82d3139dade7f730e59c51e40cb9043442820302047c435bb50066306402301e0ddf8c914b28f943602a903ab71f78fb0843d840abc9a469756b6c32ebdc83356e292cba685073d6209de339b7edad0230619932fc1890da9f29892e1f92ccd7575e56c51244b5a37bcbcbe5d44ad06d8ce2dabf02a86ab90a5145d674507d594c0302047c435bb5006630640230649da4112d8cda056327a642a57b057e9139383f8dfb82acd0eab19082179dd2ff5fb27f90e1a6f5716bf1494ac079c00230398ca3fa637f0ef34579f584bcba6f13dccc82f95fc80b3d70ac732f63b18ec778dbbaf6aedcfe25c5c94230585c69f20302047c435bb50068306602310085b404c80497aae49d37e6e07edd25ae023a0cf371234c0c28189dcdcb4a0607d4dfb03af4e70035dee87f40f11538a20231009408ea6b3b4327cd42906628fa262bcd96ea6bb73fe007a5c68c09afb2f337d678b5a4175a74ad85ba5add9f925c09150302047c435bb500673065023100e6a9046bd50e756938ee839536ecd324f38ef8f13242fec1810e8177b627c3b10f82c039e575454e7a86f21eefc1864d023041fd7b72e4c57e78aa73b1bbfdf7aff74d7d70aa4bf9e0b942ffb662ca029a6d52e876f940d565d37e305c117ec0a7d70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023029f304ab83ef7ef7b23aa5802b56aed23b77f768df2f08256a4e08d13b9f50f715008d928375e402347134c5817dba96023100d77e61d65560f4a9772dcc3cee79eb9ba7c549aaff6d925370d5c69371049be837f6f0020cdd1e9f34f7242c57273fcf0302047c435bb5006730650230162bc5ac918c93d71ea3a3ea4b5395611ba7a62e4308f36cc287c494e9f82b7579a83a77920b5ce6dc7251dfbbd4bb3e023100f8910f1474e6d22076bb3721fe37fe9dd3c4f4c89da5f94aafa7d93bb6be985433b8a66bee954f87d1dd9620ab847ea00302047c435bb500673065023100973f492a7205c9b232d938201fb213e8d57540059a78d0d82c6de13ade2d0776af135d52445bf376d641949296c3fe640230176b4d9d209a154900ec4085d5685e7e41e80265539d6e17393c91f2a51b42cbbc97480c741cafcc866530ad3347c4270302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023002c4b06bc67e1316b08aeaf6b816f8114f9c54fde448403d1722c1c835c0f06edd901faffe6580a40e393fd06b85f402023100e4fc9450724dfd514ee1a5617f0c3b01972c0dd42d80787d3f53b40357f340f35881ae153c13ae84fa1c9cc219102c960302047c435bb500673065023100a348592229e5e5fd7f90c0ba49067a98f1f858a54a149b08795bd873d9cbda4c71e62fde7af7d46410db3c3604ac4e6f02304cea1623b8662a56f94b0f358a08b052132bbd92b5720234d96575ca9af0fde4e0728c60d70f916e388d034cbe2d59b60302047c435bb5006630640230486f437de2bd51bf333bb03309b044e212ce1e1865ffa8cf12c1f403d437010dd0af49a84d29f61c2ed32c64465e41ac02304bac8aff8d077a3e080efd6f8b3a645187e1df97209575e3d975026b22a84f5b239cc3c56e1051e121a4903fc4e054e10302047c435bb500673065023100e0066bbfaeb8baa4063df04b658ba9fe4651ff762e07ca92f875313441962fcc40fabc20fd44b6143067ce68a6e44e36023014c91dbd5ba47b14e4dd54376e0db9147188553684e75ff589f98655f02718e0a359b7bd59fdd20ef3137d54b044dffc0302047c435bb500683066023100bb608ec682e7fd8690d88eabfe79e4c61e2cd9c9222c14b4fd277fd44168092cb30448cd55c8000b5397662de30b65de023100ab53667dd8ce90fd34d689adebe824da4abc0f3288027b10a637b57e7637f063c03cbb1a665e0e1b81b3b7438f28d7d70302047c435bb500683066023100a5ea765e4e6af090136b0b89ed012e62ce83966df482c40ce37782d968b7f88313b197f3d81824adcf53773fcb642788023100bfcf2e415b6d8049153212009ff955c20896e5e72ffa32c156d09834508fbee0319b488de65010a020a7c95733fe7d810302047c435bb5006730650230453b9b6314c91c568631a7ba6993c4c903604a1c0d5ceb5b89032c2cb6b229ee9439999293681fb558e76ab7722cc08d023100ccd339f224d2a8b641a5af41e4891a2804197eda1fa5434b7bf8afc8880da5f3e0c7ab95e4012ba53cba6a634c4f1ffc0302047c435bb500673065023100d97dc7905ad00ea2d39c9e308d3f344615f8e774d637c2a5993a6e44aa28cbd5b6d896358572ebf4c72e18a91ab05e9a02304c9ecae4699343e8edde3bc685ef4f0d47bc70c388a9b51283e825b62186285a25551a835ebea2e534268827103573610302047c435bb50066306402303dae98d436a2372b4f5ea3a4833e455160666bbb0aa889a79709f3eacf29fe4bd2265f3d839b16fb59a2035a84bf38db02301601ea89499c8424c61bbf05b16b57833b6c35ba4e5e2ead12543381690ce6549832aeb9dbf0248af5204aaadc51b55c0302047c435bb50067306502301ff65fd803a3270b5ac07e685071a765af86785a91ce9d60e412c66a6ffc4b417dfe82f79415b7f1193cb1c6527ab7f202310089e5cc9254346b0f914b49a105ff46d7010b2214d33454dd56e7ec41b81a13e3467e84935f2d9e68694a07052b91b1050302047c435bb500673065023062e7417f8d79823c4f4686a890de2d647b9f0f9a396224fe23c4a9dc21665d1276760faa05a0fa048902fee75abedfcd023100ea583f6bfda91d6b7f3acd3808ed717de46632736f66a0d60aa325fcc9028dc1e479c349f504449fedc7fc995b27b6320302047c435bb500673065023100ecd1a4b91461b4025b933d9e69f18ab4de82a6978e58f7240d7d68984606c6ee6eba3c0a4e232a49b4d8a03a885e7a8702300c75a7ba3164cfa540458e136277330988b5686277ab6327580562b0a1dc7abee3372cd433115bf26a196d5d98984f700302047c435bb50066306402304d8ae016d23376dc773ecfa84d42ecba9053f38b537434204ac835f0d7e0e3f80104fff69cd2c08f73caeec359b62ef602304a49287d20d363a2481ff23af558a4a18ee3a842f3f2a5202289e2c410fb699c7bf9a451533428dac561377bbc7998810302047c435bb50067306502306952460cf48e389358facb26af36a1afa1809e636e515752f4ce24dc710363d7e9918190a1a4d2e667e30d0a82b93e5a0231009b41446f00591c8f7890524e7262cf9fb1cd9de9f4317ec4f8f3d69862f82ae839e5bf417a997a8ec883076041c889980302047c435bb5006830660231008ee9cab74b4fbbcaaa23c272322356d466b130729867730462df194eb4bf7521b8fc2a86b2a59932db194ee26bd724b9023100eca4f96523cee5d11c158d590d6e114ce6b68e1e063b0dfc37ecb9edd278b367ab22aa4c182da73369b50c7ba11948bc0302047c435bb500683066023100d101c3c63479dda542bf2593cbfba3be53f6f9d31bbe34298c92c304bde05e461dad62d0fda480679bcf4b542904462a023100f58020a418d6af647e9f8e1726ceae47b62a08f31dff9ffb862c233b4eab64d5b6a094592f1e94e6a61ca9726ddb98ae0302047c435bb500663064023045e1c1373b4a1defe65c45b0195ed8fedfbd132d8869d6b1d5fcb07bb6625045c94481018fb19d713dabcbb533ffd72c023072973234d7366b56d1df46bffb3e6334c097f4e11b07ae436d963d15bf757bc79dc55caaf5936fd5957c7f36ceac0e200302047c435bb50067306502301ba92306958aebf10297fa27dda8c61527dd548021686a21894d5aa424f1daa73c7a87995f828f028f13e88ac111920a023100c627d463f9e5bc184a67dd9e9d31230ed9e98be35acd4ca499af3572ad5a80aa6720207f98d1f7a4dea20417588575fb0302047c435bb500683066023100c667530be98f114252dada01db5215776e0940cd149af9921012b7a3b7273a7d708117afd9a988e2c26e8bad55410fea02310087fe5ab07c68c4ca558434e6c616380598a7bc4fd3a09330c20743e82c0619dfd117bc1ce9d9d35d3995e154dc967f810302047c435bb500673065023100a6bc01b0730fec05a3dbc67ed2f81621befc1d2580f12d30507fe7648c45bfbba0f29bd7db651bcbe25b41ea722d25fb0230591231b1d9a0596552c12a061dd405c312900d522bd5df49814509c28efa4adfae5192105688e3f950bb9545a83374340302047c435bb50066306402301e59340a51f14cac84b035dbca3309f279768287eb1f2499f7d3cb96be6dcfa95c3df03c9685f230ca5d4b1e49803089023015a43134b62f1ce15e233d81ce224db36a3dd79f1a13fc8f375a44ecfee4deae5aab2e2d75c0ba9a973436a1b9026a0d0302047c435bb500673065023100c3902bbda62611c50bc645d589c13cd467b7776c184eaae67826ed3a2a4a38484e258b225dec46691dca19fee42d0ad202303ec4e2ab1e63fc51362df48f99331b9dfd6963012401b98f4f7c5eae994338b00887fecc4e0b4ac45ee8034bbfbb5f220302047c435bb5006630640230388dee50f30cdda279979bfd51f4b98103a154d908c01e774462dd7cd065913c5b5473e49da349d7e0fc40c3db1bd63b02302734b27ef3bd2ced2d60664f6f22aeaa42407e93fcf1f96e77965b62634de10196fdbb71dfd93b45a9b52b4649f7e95d0302047c435bb5006730650231008f19351e578ce9a05e50de0a224856a85b9ef36d0f9762d636f2824960b556dab8a21ea1706bd86553b0bff70e9a1fb20230086ade78f03fb2754f6a041357f55f3863e7126f2fa0a2b2e039076906fed4010b639bd723a5a746e2a200cb87e8b4e70302047c435bb50067306502306780de9d634993dca6fdba8b067cfdfffb205fb9139dea9715ac908a365c7809c8e448a64ceda2a35d56adacf91610c6023100f1a715ecf81a56757e192b36a2e677a734050a5ede17d62d7cfa0d53cdf22e5f4a87ebc255d73ce038fa7f4e5d46d23d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023038344bef4bb43c28af75c8eaaf080c1c7c450700f2c60940090be2d2f0a1a03c59ad56409d0b739574ac1a595f3eecbd023044428abe6500ceac5afd065ba62070c7bf08b5ec3827384a2b334cbf5f13d4ffaee6ac4cad9543a27a10ab132ca338f80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023013b9b959ccd3bce0dbc1f25375a83fc2d6a676ecbc448e748d61b71cd361de0b529662a0be7d19f98228e06d9955689902310087a5e01a1ed08c0d2a2b09cd7f982f8bedfe0194547073c48438fd1bfb5bdcd9ffe9764be04784333285d30c40fb7d930302047c435bb5006630640230246d478b434a36ed282dd633b1baecc1d03748fdd770a4dc3ab681e3042bb2debead36a66fa4a18fc94e714351918e2502301bfcb91f97504446a2ba9635026445edbe1eb2741d1d9c6c93d2b70db019875ce881e8b5eef0c83b6ef265151a22d3820302047c435bb500683066023100c845879b8b14f5383f12b782d6100eb255a17d04ac3aa068374a4ec00eaa8fbcd0f9185c5ffb7a99ec2c76c93a298759023100f627f208f5fe4101cc33d45c3168b0b4a9551bc6ac5ade37799e68ea352566d6c4ad86a15515600b17db833b2f6a660a0302047c435bb5006630640230099cb7a1c40d39bbf1e0b7e7531eeb3be0f06dfcfa3c78be988b280c65ced89b62850cfb62fe6c59ec132ecb42cc09e20230257e846700c2781ad73fd53cecfccb49a850690fbb41631c3c25bdbf12fc1bfd45abe88d75633616db580ba5e1f2d0830302047c435bb50066306402304a73c6df3d8419ed6b38c4fe150b6d32e748a30cc1d225d68bcaeb4fe38a4420a2eb4c34700b3b3c01eb64201971e24702307ac63ce321e53e97911ff96076828b2e261bb8bc511371bfaeffc1c035966dc37c9de6167439271dc718dde821ab054b0302047c435bb5006630640230066d7701bebe19205f5cf4a8a946f79a44d3cfcaceb94d87e5d80672445dbb3bdde8b68cb1cff6410e391ed0db49583102301885c862f49d49ee55b90e9fb3952b7a16dd94ea38e3313fbbb4924fcc963106c3dc851f94ba6a5abd1c5b8d32fd55e30302047c435bb50067306502301d7da2e557d29bb4f7bbc08ab2fc90ab7fb226a558594029980bb5c0558f10b7717684d2a18a2d3bd99ac4749be81ca00231008fa7a8971a76096d51cbca7a01c864efddb43ad46452a553706f1aa59283d35360f55cdc590d698186293bdbd9de96760302047c435bb50067306502307058ed8eef824e523a243021a52a79d9309bb0cefaab2c8d31c353b919cd9105b72ead84b4b852f98787cf5538e338990231009fbbea1f23940f83871a4800cba51335c7f6d19e873f0c8c9fe7481d442cc01855f78d21aba7ff336ce26bce7eac4ab80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304c368405afb14353c02f8ec1fd1a036b1bec929bbbed7734feb0f6d31ac458d54c49d817249accd326df8f92c7cb513602307611dc9a39b706ecdedfd2bf136addc63556efd7143ea84a167765165af9cd0c29e2137c8f7433d571637de1e66ec1870302047c435bb500673065023100b6a081eeb7b4ca6c95c76a4689b14ab18037825f9770777bc8086b2a480e8cade770f41d424efa0abdcb9c79c6bc063d0230157192ed058f762fb932a322f9cf6fe8f173773a1450a840f82e501c8b12009c9c9e9609c7e0f95645fabbf8f4a434610302047c435bb5006730650230455c9840594dd2185e06544c62ee34491f2d645de2bd7ae064ced27a0c7b12afe1e83515c8fd62cdb26928ce127f6c9b023100cf37fb8b07339b6fda2bdbed543ae9187c3f7cee42553611937828aae20775c7e76c0633904eb2aeb92049673516cec50302047c435bb500673065023100ddaef5bcc8acd5279624bdc3a6fef7f9fd28c447bedd07b659c94fa4b0b17f772af7c190b58f6a59b4816c8cddc93a4b0230752fc773354f022e111e998b2893115c867fb29366e4e0105b2307c533b89e594febd7b033cb8a6ca2bcdd1faa39d5cb0302047c435bb5006830660231009189bc0d0dd74d0e97403105586768267c5ec278ca13fda5e1b10c950e95267ad4df0abd93f90d0c903d0322f8972f340231009a096ef2b9bd4625c1ffaf0456d08bd191c5649b66d2fb0faa8bf1cddd6d65f78d350ce96cb3dcecd2cdc62e30e1cc850302047c435bb500673065023100d59c7ddcecd46725efa26be8de42cd171bc80d92f9a7b0b8281bb35862b49caafc031b53d4cccef7a497414ca079a7f2023054adf496e0147a911747596211f9902714ca455b03e2963e7b7f9a8e11c71143b271eb12472f3b2edeeb93fd5c4e9f990302047c435bb5006730650230698313bfde50fff177487bd5d22db7cc176aa5194d05fb02b81e7e95b46c66a9b83bfad96865ec190bcb5a0cc673e54f023100a3b120f3ec06605103921ddb784289d0dc1e3e2aa96fa648f2fd491ad3bdb03d9dd9d58a3fd28965a5799c887ffba4220302047c435bb500683066023100cfd996b3348cf59523eade5064ed936164121da0a22030a94084253f5bcc128172f4adfb9d4bd842dc3779d0fc2271530231008fe1022709cb26c1c6a9c697c6493164c0c9b3068db67c8ee7d32354d47f97e8244e20a1d66729a4b11879f5b2b4f27c0302047c435bb500673065023100fcec0b27f9264f4ae3548a4fe3f23d1ff215f573f9d45e0109d8fe1a3b801dcc0643d3335cd64a1d0a0c1b24d324262102300ccddb6f46743c20d6449dc20617ed7262a7db0cf93f78e84d7ed3a478319af4a3efb2081539e2aaff5a9bbaf08802e90302047c435bb50067306502304d8d7140c2545e5a25ce121facc27f58ef00c24c5bd77120a22f4ca2c4c7a6b26ddf4b874ba82815bc5537157838ed4f02310087ef3809363e33814c49c8e923948df2885829bec7d77c8d6f224aecd8b5f05523342986a1bcc238366910b1fc4df5930302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230038d220325b217e02878d23003da71288dade182b4c8ab7ceef260af60a5ef357c25864e1114b85b8117b3eaf0a9a2e4023100d4f3f64f0e5491517d59f72305ead0b57f3c242ab37126e61e9f3bc3ed9886810ad174dd2352a4f6679998750a98d2d50302047c435bb500673065023050d94cca8c72e78ba8bf28ff5595a933eb95e981e83190d107cd229bf5c76429f9d893e353e012caec3d745bdcea5e5a023100b87aa82fc013596a7b24d66004078de7fc8ee4e596c5cfa4f4a4eb65f7a9de57e562376d781af5dc1e0e83a063a90ae60302047c435bb500673065023100e76b8b2cfbb0a76290c08ca10bbface09edb277a2065cbdf21d82924fc11c6e8e9a5307a015f467d753d64424f6a977c02304f3b90f948f3350c9d65cc0b8d1dfabfd854b69a76d437ffe3c0ec49aa2e8351359bbebbab18a729d9c63009fb7e0cab0302047c435bb50066306402306f965b884dc865a92aaa57921325e1271898cd45bf911f9bed58b6e079eeabd2528a5ecddc43c78ff054557ed29df6f1023019e3f6154df2abc1921938440153a41bf2277ab5cbdd56e4be7f1b176bb61e5466d3328169120bd6dfc8cf2481f79b430302047c435bb50067306502307844bcbe64a29678b3cfecf7516db90c5758fce6a3bc43c37d34ee1f5ec625dfea239d23026b8890e56a696e100b05e40231009e62ad94c22900db89ccdafd230cce36a5a5f2c331641dfe1a221d1f5861ebc5a33b4e363dc89cc82a17041ce1ebcf160302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a6e3b95a8c4acebb33f359d44e368ea59f918b334d10ef354b61dae6f7a3480b7413b75e7f872606581bb1ac8511cf070231009625eda3cbe9cd7f1bed10d56af96f5b16390a52f34cee9e90b8a8cd87849501ee8b7018aa7161ac0dd07dc28802d2160302047c435bb50066306402302bd6d62fb39c555a36257ca4b068669023716d1f75eed349f6f50f94e60cc95c60ad0360aede9695619bfb55e487c0ca0230654c1c34c21c9227fd86437e73a5f5c3b69d10fdac0d9bca7a44b3ecf1fe28d9f43007f46edadf3a62b2c5d5f603c0a30302047c435bb500683066023100e657a6c463658954b86c83394ae55f203966e3417c9b75937137cb41747f7b694366df79bd9a1f7b0eb14f9bcb901e4f023100d0b1e450a93f72fc1eef689f34f1486a2616eee0d20288dacd6ab6d4536aeb42b427cca9027f124fbdaa3a0ded957f800302047c435bb50067306502310099c923d553b5a0e1933a9218c0209d9354cfc5fa313a6ed4188ce8f3a936c5076277dddeccbe4cf844dc09ecd2389ea402300fe63b9c7300a7435e5a32a90d72679a87109e725a3d22526173a0965a6bf08ae10496672274f5773f13edbfc900835e0302047c435bb500663064023034f5eec1301bb719d1220e58f54c41eb3a2a72660d84f6e6ad864f28ff3dd4eec15f80f1195dcb80d43fdcc34e8f3ee102302b5d153385c891526d83bb7fa3020c55c50f726a202b79f89afa1f9f032e6994f97aba77f389af35ed230dca289922a20302047c435bb500683066023100aba465066ee82abe7c351c8298250b7d2d32fe3e037ec0b2b5576df81aa9d30436c69a34067d9e659c270a2f392385e0023100aa291ef44e0a05d754a7201632b1443fe8ca9ce6347a4258caeac3ba311a2a5657ab6f538d0b2187170f4c925f437c870302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230071fbfa59397cbd9a50d09e7d3b3137a69c048847596352328a65c1236dfebefefd6cbb951d0faf25843d3427855756c023100a562aed21ca9a13ffc6af16cbba3c5d1529f661c19c12ce8f388c54691569ef5399eb763d72d00824f7473442514f2f60302047c435bb500683066023100fc62b85236d228050ef8d151dcdfea51d9d8a43745ca42500dad84f83281e745bbdea2aed1f6396a30f2b75549f24ad1023100f3f20b6548e9d82481f89c57c92b23e363529e27cace967baa8ad5c7e13bd4a915a4fc9cd40f297344562d947fa1bf9a0302047c435bb500673065023100a4493cc50f79b411e9b50450b534047d672f05b03d8b6830c96a4519df0d5cf641dfc262b0626a33be2cdc539fab86d402304e357b0b1fc90cb49794c64b1512c70261569700986e323e51bc8e8fb96e2125b0023b7b8cf25cf7f94818527b3d4df90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023064c468165b0d154f9b1938b621569f69c2ce1d72a1010d33073055f49ae8e7f69d0bff09128c742c007bda4698c713e0023033c83ef416d13b20b63c3b21fe50d3c06996a2c68dea108fdabaac9d1008e78208dd4f21312c275d91c865d7f682a0110302047c435bb5006730650230357a51cf443e2a72930226a3feba0b2e4c8b216971c96a2ee0a945e114c00a1eb0775f5161590570692c8917358f90f5023100886860d0fd10c7db80bfe8731aff571692c4701e1fb579893708af21a29f324efde4c47e2e4a48226e7e9b38d4d2f02b0302047c435bb500673065023100f834d89f15bbbbfd622424233e63bd4e9846d33c79cc425adbcc4f377ab6062eff734ec0568391fbbf74b1bfdafddf8a0230612c4859d9fdc7db3302b2148b5d8be73f5783e508d51a8baa5ff1322a5277d2ceb4cbbd4c4b10b8fc9bb9837d5ea2ef0302047c435bb5006730650230335279b2d12b14ef74d0d271f403e977a6c5cc443ba63d50c6b6bbc3bc9dcade473e9802362996a194978bcc3f8c6487023100b90b18457ad8efad9f718cb58a9d887e6c7f73d20f76ebfae6c917b8165264750fed3e6fa1d360063aebb1e0d4b5d7f10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d4c1e02584873084635a0bd7905b1a8e7f79887a44ef23d48cf8bc5d63eea5ce25b7ed3b1ec9e63f94a8872864ba2c3b0230495ff285c910cca913a13858bbabf27bc716ae9dd5243516b76e478163c22c02e2321b3033902a488e969ba08681be240302047c435bb50066306402306ea4776606b66a4cb722dfcfa42169052dff894d1b453dbd83f9ddd4d8a0d79591debfc6ebed9f277578ca9a62dc1aca02305d10f425442513b4cb54e91cd6b7e3931d0134a99e33bf481a9a3f2e2ec24fd10f1d026ad619ee3953d5997dd7a0b71b0302047c435bb50067306502301611ce26f641719646fc32bd0538c04d745c707726076ce6ca3c81edd9369c42f5bc5ab5dd840f4225fb1118d61b34060231008aa5ff791c420b2078c1c332066c8567ab7f340b108f7c3fa5a9f68323f1e35b10ee5bbdbb95e2a292653a330037a4310302047c435bb500673065023022c88dda4d4f62b1a8bdf80bb39864495a2f627c0e3b77b3445dee32db8f14c2f5e20a384b8cb6edfdb2f88a549c368602310083a2105c0dfff30541ec378be5ad68edea70ccb6979f8ff4b144af1dd595761f9e71b8c44b23ada1e796901ba474f1bc0302047c435bb50066306402305ffb45b9b4e3f0490988d4b0c512fd1874be6e2c9fded6703da744273abe7ebe3fa1be74dcb21ed89f1fac54ead04fb0023075b4f90fb902202d1c51f35e541478c7444f6fd649ef949352afb392ace30c329aa9c151ea8bc53a6edfd66b8ab531710302047c435bb50067306502300a478b9c9ba0f5dfb318b97baa9cb0c9a9a910a94bd5e363d15d59190ec9be54e12dd62400def02260d1cfe82f62748b023100c58703e9addcd975f108ff7c3bec989f98417d577c917da3f6fec9bc42c8beabb57ca244c2ab7a2529bd14dcd43b7c040302047c435bb50067306502304a1d55985d1386a724e4e828627d1228696496ac3a221663571159d375212adca5ab9099543b7dc90f98829500863ebc023100a48adaad8563dc495e1f601e6927191715ae46c78b71243b6779616b080c8b2a1d2193c37438a296b2cc3764e00a0c420302047c435bb500673065023100f5459bdb548cfe2e08ed69ae53e191e1b6b2640c6b685d34c9d5889cf206d3e09c83bed32fdfe454c60efd976b43aecd02307bebbb08d050da82a5b94129670d3182d15fc79183ed04c66af66f3ba04e6d18c3e6b70a67b70b4a751737d2df5c3e4a0302047c435bb500663064023005cf84d681ef69f537fcd8f234c26dac00e28ee130ce82d3f65116ec950ee7ea5cdcb0c1c97ef8f06c6ed889293b82cb02306e0d53266a6fe1171557fb48e78ea93f4b98ca7f21b8ffa74c99bd55eecc7cf7e368a319fe07859baef40d3b36b884570302047c435bb500683066023100c33368e36f93b301cf628140f19e8bfe251e7d2fe03a5994b1b415f9b7855cc5f0e35e8a1c60af66141bcb4d66be3651023100af9fe2b7026d1f077129a96ee05a1c67408d8ab3ee704430fafa46925a556ed6b4a53bf5ac50d7958b7bf0e80792cfef0302047c435bb500673065023036a9e768a9e09c0e8abee17cdc9e67e5f80a9b41a061c58a554e9a66b980e5b373ef0d5d5bf155695cb237cace0e6549023100bf4121be13d5b56f8a95756adf87d3b0b9a036de4b557d35751562e52105f3e3ee27608263b193c7879cb2f39f68bbea0302047c435bb500683066023100bfefe1537eb51a38390626bbfba9039e76ff9503f44e5f095fa29ebb108c17f02315273f4bdd8b44c2827c082e16716b0231009c2ead92ccc9e4b0d0af929933d0db3481bc5f107e87c3fc2eaf3c81e9a0597bb6721bce6e26d39d30af80c30f8b10d40302047c435bb50066306402301913a2eb7bafca6b46980ad4cb0ffae73bacbd0ac890619a35530d960ffebebfae8cfbdef8bdbbde42df65503fb91681023055056e849c5c6293f9e23a8150bcb54f9bb183cf0228dc375f5c38f555002cebe8570571b78c38fd667647811d9172230302047c435bb50066306402303fd6975966af49b72c97c51839a72abc31aa3b924942c01e82e8ce2ccbdc49d3d656e8c052dce8b7ba68afb32ec0ab22023065ebe7bf4feda65220259833d33c1833f4b805b2009b94ea26b0e6d7a12eb76dbc70056bee91dd0dcfa9c6abf209818c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304806dc64ca0efa559087bdc8c3703dc1a1571fb4fe8dcfd006f47db9ca06064740770a8e3fe722149afe29df9d43f7c7023050f02891c44e4b722acb6facdd14693ca968fdde8403ac5c3d2030208bdb685a1549efc120425211beb7fc2548b78c7c0302047c435bb50067306502306122a7bc803834ccf90c7cca63722438b65858cc7c3445ad24f16c091bd2483ea51e2c0727b958d872880a6cb51558fe023100a516b55db8caa37f184223a3b08d250634fdb922977557b93cc3528066b21ac526c52700b94c468c00163e9808904d500302047c435bb50066306402305529503550ba271a80683f992918dae27ae8cf6d7c0c8cf85227ce2da51f3907b1c62bfa76eb0c2cfdcec4229d4cbc9b0230376c402ce927c6d63c6eeae32a772322a534cac4fb5570bdfd0ea1ab3982949eb5522840f6aea4907c34f240e30bd2f00302047c435bb500683066023100d20dfd5fba52f8e843c950c32dcea25d18889054b5fb1ff650b782aa0c5a9e14be737fbb442b6df318109c41689b6a0d02310099344f942f3c5d07a64c7c5f834b1ffd3127be9701e88e7f52d1c9efbfe1ef367dc23281e56a6d592716f28ce4fe3b9c0302047c435bb500673065023054f21046bcabd4d945c85079ecff9ccfa8dc573532068603280c82bbda96d1890df24960f71081ca778724e8329a34c80231009754debbd3aaf7f5150e2179ce7e57758faf82b74b844331a9d7242891f2c97eb2bfb318cdd297a5cd3a2f6ed59419ed0302047c435bb500683066023100916ab897fcff2b34f43332ee5b21c12563aa0b39ea466217b8158b427bf0223ee0d47ff35056d737c9e4fbf72ecfeaff023100f6e4f0377dddd4ed9efc5d63d3d9efedf9254ac2c3aa0c2eed5fe2ed73a33248887278a9647ee41cbae4bdef1834e8150302047c435bb500663064023046bdbdd354e0b6b111756ba4c7c8e051307cf35dfcb49ac36290b5f40675e2832eab5aeb6125a439f7e502e4c0a76f100230589bf7dcaaf2aa9ebb8ebebc025e91d4a2a29710a6e32f19089b7c0e181204987d59857b48fb64a7aeca034412049bd90302047c435bb50066306402303dcb6f2b683f0e715a5e9487c02a57d2161b46c4b176e7d12ef587f0b260e4f1e9dbc469367a25aaf79cd75f0b7886ea02306a4108458ddca7da509fd7c54743376965d6a8dc4625ccd5527c4275bed9af21d64389088e142f79e705254de1dca5490302047c435bb5006730650230074785d47134e5369349a592f4cf4a1ba91368b631697cc0d684d93e0f155e5a95d6e36929f852c7d7301ad8c9903321023100d667c0f5fcdcc02ba46dad14b1ceaf950f26c778cec2e41859dd9409312316ff5b7712ed9642b7e2b3d42db92cfccac40302047c435bb50066306402307732b30695dc91a6db8b3d7a9de020ab01475adbceb0d51fe5a2fe0719403208e507c04a75d73a0dad3e6bed8bbbfb2b023015effdc0483b55a23d65a6430639e307abcf9260dbe294a80b022000cb45104696ede6f0f19f199183282ed35b4742810302047c435bb5006730650231008db648e57fd28bdcaedabd8b1286a66f7ed5229958e43787a90ac8bfebe6f5bef428f88ab4b8f2b36821e97ada48b9ad02306efec9d4fdfa3cfe372017d28212026f80502903a2f7f284fe9fe4a55317967470ce11d1b25d9ee03b5910e819311f000302047c435bb500673065023100a758a059875f923cf861586d430f8740e92c125c135660ee3ed5a1e6c362af925cf139d539d8e974aeb13f2a2c81ea4d023006f72093a38ac9a9633e563ee87ffb806affeb0e9fa71ba9ec493a01f433ed75483dfa89951b5416b1422756ce43cfcf0302047c435bb500673065023073254c0263396f204a380d5355819d3d1530df224e43a81103bcc7ea433476784cfc906acb2b1e49d6cdf91d4bb5aafa023100ea345f80e9c40540ef8d3ae1dda22a161983589197e3e12434c6b17b7149e7fa1e4417cce303092ff9953352346de2380302047c435bb5006630640230704d3ad5cc2851e928d16cd98f5816bd6f0120e9c99b3c73860f27eea9288643fd88defccf48874d9feaf075595598fa02302388b179202c0a4c1b9ec4b2493a45ff3b1d4e3a89468792c5b099e55d225fcf5b9cf7ac328f540f16b774442305bb0d0302047c435bb500663064023074ef853d77ce333333d68662c5027915ee20ec1542fbfd6ca7fc33fa9a7d63d68998fd00c99eaeb2054e0e594dfd448c0230653e463593b1576058eed081c9efdd5bc0c46461f5766334b6b83383929d1f46fa01e06d4f90a9a740e16aa872e326490302047c435bb5006630640230591f43e5b0cf321ef8f5e22069b62e20151533e7f86d96bd0e66954e010643853d2ebf66f9156ca259421190be42a4e40230706cf97a14db4ab602de2e6146c21f7c6c051af86ea13eaa0fadbd99c0d28ba7dc71b14d625d14410fdd8ad8aaabc89a0302047c435bb500663064023042c40be7b8db191d10a918f00ad84e63728718356a4505f2a0673fc7e7d3921745060af435a8d792cfded56b56440f1202303fd61e3c6d1d22b328d38e10a590cdd8884213b53dccd02067900ef73e0adf9059d3e909dd6ba7089b5fd448adc4cf8f0302047c435bb500673065023100d79a6ff1174c375db9d50600153b6178600fd79c551949ab64200ec3cf81156e9494b54e482f1a89d9b62279be97e2340230625dd8b294155908cfa4b67613e54f316f0917330ca6a2549bdacf77c210cef3beb19c8eaba47cff2d2d44b7fe91dea70302047c435bb500663064023058db721728c7e6ec8cde6aabccb536cd8476f6ba8ac603958b6db08425659c0bee529995916b46b61362c7856349de8a023023468ba2e074fcb65cf79e0d88f2e3a4fefe629a7be47b4d5ac98c3f5dfcb8fe547a5fb7e604da875809916d052e6ed40302047c435bb500683066023100b4a9c0228e3ec225933187600150a2f0e068468f97d77ad00ed8cb0e014433806c98301004952160dc2031edcaeeb77e023100ffaec8f7383c867780e3770724aeaf78657b44154ce8ba73842238309a72600905622b563d6c553b013ee4750f091f3c0302047c435bb5006730650230676567be5bc28cf9c895edd15708a114e76f38e8f051ebecc9ffa6c23659bf498e8e2944cf70ad4121a5f3c1865463af023100cdaccf5bab6bfafa70ebd69f13bb1f61ed570ef46c41c8cf72d2a9e6e6a21665d68c6fb541b896a68ee476b03f4192a40302047c435bb500673065023100cf6d9a9bc712b155abe569e57aa056152e3c0ff723f9a11f6f4f6eb7e126c740cf3137e2025ba8bea555927fd4113966023002beb43ae6597762f7d000849576816de4b87abdf311c6aa8793f76e5c74082078824745a24c1b3295927eddb477df5a0302047c435bb5006730650231008e6afca2544ad986936e9c8043c550fa1ef9602e800bbaa05914895e1983eb700918dc2746e19f858332ba0efe8b737a02306b31133af4c1d0606fb19cffbe25d9251558b6c175aa894b9bc32099b01bc74f099fe0c1937397a5396e210410387e030302047c435bb50066306402306385f683ac2aea3d8fc81076d740db328220d8503d04bf6de5b2f69b0dc754c737b7516a9c9ff0c30fe6415b7ea30fff02303f4dad3b14affef86b3fe87782c7c2f2f8f9082980e6b86c54ac10a64af19eccd2413ecaf812829322bf5cbc45a264290302047c435bb5006730650231008cd2fee46aa8221a84e39c096bdbdffcb3c4e33a55a153a9d2138a27e313cb3d95571c32dd5bc55ae48a5862d41a9c50023021dbbcc24dcb27f540b686611da39f2045c37a91c03853e17add5351e649d9e8dcd54ba2216ce98a9d808bdc8c09e8d30302047c435bb5006630640230617553515f6da41390aa6a1c95683df3abc65ea1d474f8eb59b3e89057218114cf2423e495dc0e5ec640e0f2a4b5061d023002f9b9ca433b8dc465ab6bab2c045df190407777ac61cd66b002d9b72f9e43e9e01bc012031d7f7761610c914943605c0302047c435bb500673065023100a5b527c6bffe0b84dea65f3303409d985a8f954f099657e86fefc92cb7e73f2259b73045a4602c0561d8ed09a7e02b7802306b77492cb7cf04148f1aad1c51e42f33052204f176e7bd6253b5bada89c6ca922a1881dbaae8710f5c2014d779e6f0040302047c435bb500673065023032662cdbaf8381d054f8409781c0ee050bd246b3b72399d42e6d53fc9234f11546db7c4ce288db2b811e48c416b408c5023100daad45549a6879b4dd8c3ad75819addc8ef7c4d3188ab762d44a3034ad5af8832a57232371135a974e48c987dd15ccd70302047c435bb5006730650231008f2ca9bad9971377d8c0fecd6156d1b1dc1d394f54ec1e30baab510503073d6107625780ca7dcaf2a5db5a31bda7a1650230313b55767d1cc066b0e6180f999a3d60c2f6fc2faa2151a0e4e1cbc23418d1319bf30d8780c767f9028c3c085d2b09fa0302047c435bb5006730650230333aea5694c63a6b9c582c066d647a1a2c54f29c3336831c04c2a02f9d8bd5fb0b6009f14ac5f598d0d5d383d1b86be80231009b8453237cb30a083c03818831bba77081d57bebb0f0ebf08a062feed28fd9d0cfd55aabf1a47de6dfc8bc6ecfa704ea0302047c435bb500673065023100b45b439edf55fe71895916e8ce7aec4acfa9eaed0a09fbf626b127173e0dc9b19c411eb32d23a5f67bf8128d66934ef30230217d2cdbab9606c021fa63648f4afcde96c1b5a3c49d5cdf11af4423e61e2be28ec9d47f49217b6b839a70c384ab33280302047c435bb500683066023100e65cb058c6c4a25fbbc4a0ebef8531345256d3fa20ff682c6a95a34f4a8a8af4f721cb261814146541876fc145a7b99e023100ca2b299f7ca3a6f3760cd23851d3baed25d9349f2df34b8f5ffc141934a23398152269b0b76fef1a5590766660ea08f40302047c435bb50066306402304efd54cf050cb775810e37890fd4fa2273c9b9d128df09e3410af428cc3be4cfc392f6a468ff3263caab4caa349417f60230523319a31b1027b9dfa2f65481c291daffacfcab602c9d129208906958de8f3d12c195fa1c890c00630cd7a18073e58a0302047c435bb5006730650230208b98026dad2eb065d9ca38795f6b66937207f39ab87564a3c79d55efe0d7a31ae1bd2f40b71746aa79c236c223c38002310089b0be34a2e4b9d2dbfcfd2ab8ca7a50543e3e64fc47fc678f3ccba4e9da14b2d714d8241882b25dd662eb01fd2ecdce0302047c435bb500673065023052c753c84358931ecdd28b93fb75fa7ae7d3615277745f9d217fcc2bbbf01880fddb62fc15594a48687be13c39dba933023100bc364832b5060f2789612b8e58aa824d17e07c602dfb516577295a0058168fe7016bbcfe41d403091bc921fb834e87e70302047c435bb500673065023006ac991f7851a881087c19c712ae7cadc4fbdd7331ff2d47b5bc505203e96838779af2042d4901beafcd0fb9d5cc4ea8023100f218dbbf0bb87993cd0fab38f8a0f3ad6054f72a30ad0238c5abe127e1a070455c618430fc2ae42cecdac1392ddfc75d0302047c435bb50066306402306eca545df193653f0d78e1cd663769ef5ed992033cb149907763e96a3a795c8ab4eb0a9779cdc98557d023137262544d0230017489307449c7a5cfbc6722012da7546dcb6556b182c7100759c86b345aa227806fe1a91633a15e1253373d0af8fc9e0302047c435bb50066306402302735e5a32ee8cd11e821b0ca0a799c38475f1499334e319f6591b8ec1891e7bfc0adef457ca65fe2bc38e8dfc280e0ff02301a918c052057ec16eb70c28b8fa65ee7f00490446d46345b9958c97f268e65db6c79215696c5359778ee34a6295e5cb10302047c435bb500673065023100bec694cefa7a0d30ba802372ce162e429cbec771590c304412b201b3377b2d6c653fd681ead664875629e12dadd111c30230690f041526acf48a50a768bcecef56a7408c2d2b4dc6dbf34ea84469f603f8e0bd3d3bfb1813566c09f655a401d246d70302047c435bb500683066023100f38079dbb682c4c9c76e8e02968e263e199b8e35196b6f8c5c067020cc71b7bcdf4022d1aa4dcf8f19c69b7dec0c4dcd023100e31ae347b9ad84d1b037b46ae6903b1289fa53803545edbd6d7265c138511bd7ac9c66d67a92023b2cbc676624a98bbb0302047c435bb500683066023100c68969a7fb7aafd2537322c82be894ca8dc97a9c154dee2488bb6dbf66ddb147020c3051da3b5b3658fce6fe7ab1bba1023100a76b732082c958a60662934c8ab0db4c77d7a59abd29892e570382de166038ac320c6492186e73729d56048148416d5f0302047c435bb500673065023100bfc21df8dd725106cc25dc806182d1be6729135388dbe8bca3d124c95a6c88b569580230c3feb99559c94696620f1f82023076e4137d51d61c5ef45b5eb983ad680d592bfd2f7cc9dcac29f29840d7e93e90137a2dff1cf9cedf73d984977566bf780302047c435bb50066306402300dffc5e7bab696d579b605ee73b70c7a1832fca5fc966c9e14c08adea19823cf34a67bfc62633967d44180d58a104526023041dc73d5d9f8b36d7e6839033c2150b3b0fb6150e4b99b75d5c6efc5852f6ecf5497c054292eaab124b17607ee8877bb0302047c435bb50066306402303519463f7d0abb8fcc03b6b7e616b387cd884db6f6e9c02b3644df76173fec49016958e403bfbc0a57156502581f95f5023062a09084d81b2eaaf1172b625845c9639630f490827bf2e473126eda80dcfa3212e21a6a83fbaec32821d6f3f83a87a20302047c435bb5006830660231008aa996205225b42ee581c06fd7aa7d104b87fa9733fd3cf98f76a67d81ad9ec408404d06b7e17b1b4d230f1d02f068340231008f10a72b89fe80ddcbd44e9b6edc1b8bf717f884c0235ecd4d9dcc53732c0acc56b575eb0cdd794a09379d6d129211110302047c435bb500683066023100f2b594b8e275979afbe140e49c2e4a0bbcad91beb4c1c0dbf26adb19292d39f0ddd38560d03e5de4aee2d66979f46698023100aa2cd0272732edf6f48282c30f82dea01b8458ed63a31c5389cf24ce4dd502121e2e901e3b501d81727f799c0a739b910302047c435bb50066306402302ac34f534b1e539d3729c4819459a8a51eb1d65e127bc324d6868c18e5dfc29a9fe4231f921080d427b1bbe2fcc3bffb023069b54e8e82deaceec069a9f481bf65bd0a073017acbf4c84c32f7134e0e926a1624f035476c433ff7825ba44f04d56e80302047c435bb500663064023100c742afbcd688a70b2f400841fcd06961792f9c42111b2f24937580dca39f0a3c6583aa72410c51b6780c8e972a3aa078022f3d9e5cddddd19ef486f799b47cfc97d6b79fe3c971628280156f719c90054be3347f01941ccc00061e67a5da54b9f60302047c435bb500673065023100e208ea7fbe9285b79fc0f9353f530d718a5d7bd48cd3a76398d93f3145792060784ea695fecdc8a990a7f942d211041402300317b34300de926f53a4ad4dca9c61ccfea94468329fedd40d4f004cf27f13cdde0a9d1ef93c9e67cf037dd05b8b71b40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307219dc4f20c73f7724ae8bffc5013ebfa933e25a8f8f362bd458a95f55fc8a6ac68c8c8c289972afd796bf4e8673d564023100a8dc0140cb54a40e7d41a649d87ae341ceec46ac3807def64dca82c2635bcf0db501b7b9bb14fa3c1d215b49ffee584c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c7b845b0110437b84b7808f462976eb3394ca5f8fa9484464d9dad6923c389478a116d6bf1d31fc611fcfb871a462e2602305b9d3051d108f5fecbae5a9595dfb9b90fa42aaff20d9eb083cceecb8f395361206e2c2832c4ee22dd1e21a69dbc7cad0302047c435bb500683066023100e575470a77fbc505f39a5fe0c61073c027e683a4db5836838390350a90a4483a4163c947bcc55062fa644e08efd0e777023100938ffc508265573887092e86726f8007888d99879a38bd4ee031352a418f78daaed548125041ffc4f5c45841c3363c8e0302047c435bb500683066023100cacb86ee9acd49ca85614aeabcd1e45cee947c628b85614758e900d1d6e5204c4a5f639032d1b7430678ba957e86b40e02310092052db470afb9f1043ebe3a53dd1aa5b7bbc2b7ca3ee18132030a83d5dd6c74b4b44a23668f61d298f80c6119fe0e2e0302047c435bb500663064023033c564258ce590880130aa41a1ca9cc5967c0e5a41fd8ec82cb749f10e64750e858dad948fee724f8b05425d1ec7feb60230237b0745e535437af100d4d697da176ccb2fba60beb99d7af5b43dbe6c930d33b0821be3d3e98b58381a0ec75b60472a0302047c435bb50066306402305da7c298a8aa3aa64331e62f4dde5764f06b2f797239a17261c9489ca98dc7bb0f9251e47a9ff311be9f3b92fa823c74023017f21fd09d6a532578dcaae2d5df7421ca7248c2a10218514518bded7082b2aa0a43e5681b504904ab4e9c3ce3c6451c0302047c435bb50067306502310086e55715ae258876fc7fe0ab6980e4a2929682c70617a731b181758e2035331a6696a5198f618e06a57e186b6ab70b9402306306e3def1515a17f0355cd81ee86f61a3605f3aad36eaeedcc69f8ac8fdec42057d828c91a960a6285c4287c16615850302047c435bb500673065023100f377923dea702e93cd5482ad2d16d392221f614a4509bae8b3ab46a3a68abca4200ce51310130d9bfa59bf3ca953ea71023022c7587a7c67b339ab7498461672a11b557d84927ef917f888344c9ad88873e3d6893c9d5ae2a1d65db238e236230e5f0302047c435bb500673065023100cf1e9c2cbcf91f34583c6f7e53b71b9780abb7a558499a953f7f0445cb6afe36d65740aa7cd06c01d786400181ef89ac02303c3da172ed9df186a451c71ed2ef4e6f74f9e2ba87e7b8fa8b0b8dc285b856162a2b9592aaf92e05076353767484a59c0302047c435bb500673065023100c1fbdd66d13201383809761000f16498196b0ff6b1a044d90c0c19eaaf011278b5054d3c22f71819a78866ada6bfabe602300dc3d52ecff8c3329dc5513b34a7f305a7cf6a53e65eecb497075501889ff63f9c4eaf476f8b5cf1b2a3558c773e3b5c0302047c435bb500683066023100d40106e7b219cb185e57410e52942d53af4b7173e2e3bd5a27a6ceb9a87e1939ac67663e2230b5726e7f58ffdcb9f29c023100d977b94244fb9e8044b8d14d7dc48072559042aba832fc184b5cbae83d34d449f42da5c1f8cbc9fdafabd3842836fdaa0302047c435bb500673065023100eacb835d8b867528754c946fc298e212be55fdc636c1406915f8ab337395353acff45642b85462faa2b46f21663b410302306acc77d335904a120325877baba6b7675cad0af6e4d38fead24b05c6d5c76a721dabfc58ccb76f314db53efd4b4073da0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d17a04de75c9efa184d6e427460df69797caa185194910fd7a46a0f5fcd8cf1a501552577b1a477aa5868a1ee8362cdb023100d6560c0f65958bbf39c283f8024af12184b40533c458b4c6217d3b73c7dcd1eb2f9c4e679df4c2beae35291d0f0fecfb0302047c435bb50066306402305a0e71e234bd1709c23513b12aae08e7254bfda75f16ef2293cb836c1156263ef739c51d2b48e68ea7009d203495db8c02300d6b9a18bb65a6d51e40fa42a15aa20d57f719491a3886cb5f27b126a12cb2201898241aef39a43a8c0ffddd9da352120302047c435bb500683066023100b52bf19e860b20dfae23e57f9e8789ad80f823c74bc5b68e1c89ab480a727e8ac3413fd1f5f09d032045af5e14cc542f02310090eb35e6dda71cb6ed6ff5631d641d1562435faf1d3f5d10e0fcc0d661f9360c00d333ca8ab39a05d7b869ef9ba6568a0302047c435bb500673065023100e14f369342034cafa2a16d23943699d2ec2e84e0536ab23ef3bd20ffd4eed48de1a876282e4291a407eb7f507280c83502302469d6afb32b6e678b4c19c91393e29c63b748e7a0b886873571d730da0df35444feaad6c451373f0e2ff6958e2023e00302047c435bb500663064023039e6d63c6cb86c4816b81d51f314e475c8cfc5168b5d8b391a1973ce9818712255d92bb4db8cf0331e074cd9f61310e7023066ab73c267c04be869dae0d8210ab3416f3b8a3af7abaf0185c43cdbd80ca13b8dd0267105cd7267f5a5c0f47712b5cf0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a2ee42452adec26cab84085c771d1f41850e0a857ec307a8bb2a4f220843fa9447953d908703e13a288149c449dbd5010230594f9fecb174822f67f2b5a666ae6950076a1bb1367e0f3f5b4becdf651ea02e2ac3c0987121d2b537d473fb1bc2a5bb0302047c435bb50068306602310085c8ab258ea2ba54ba925fae98d7e5380eff085357aa89e7743a1f684a5ec32312dabb69c671e9c85137c20dc7936a70023100ff61101abe613b496c3b0b0962925ca94924dfebde4eb4f95f1375bfddac799e8a24b2ccddc639bf225bb6fa00ec3c1b0302047c435bb5006830660231008c8ab2a618eb53c4add0b09bc6966663f1f32f251e2bd413195893f13081a4a289d34db1704a2b5d313c533f9ae8840e023100b5b4b39406f2b975bc518b07bb5ef5aa4e35523409869e3f22294386b7eac93eae28740686d89906d9e811af78f3eb890302047c435bb50066306402307f1d4a2e6d24b5b89553f29d7540e1b3649fdf32d0501f3125e3803c2f7d445847c0529fc1653bc64f3e612aca6fd43d02302730aa96a064eb38236680e3376142a635c14440c2e06200c628dc46e1727efd6366e2cfb6d18845c35b6b0150f085960302047c435bb500663064023013796843edbeafc9787334f5963346e5f81dae8368b87b83c467a030664cc89052d0acfd401eea48ce56868e897c0fa4023050b9db0455476da1478054c6b13ce1b5321d3839fbbf905aed5e4165fd5360377b55f6af02c97d7ea0e1f7e41d92b7880302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306c880a390ba9b66ada97bd41b9db6e03b8bf858155a7fdb5046eedc1a041e566b706132c82c1ac38606ab9b9c7189f1d0230791f8e9be915ae8435b8433acccd34ee5bc63ffdf747f059b582b94f99a544cac1becce89376fc7db6312dd34db66cc60302047c435bb50066306402303d1a6a29a32fe18bfe807c1a63f016eb11bf32ad3a929f70e5110f1a5fc67314cbc4ec8018b93eebb483de518c55b90702303e51cd6614409c24a50cc5e3eaee6f203de3c06c61e8fa32aea50f6af4f1555aa9219c5a3ca40b9507045ae2f3e181e40302047c435bb500663064023028306df66a9a939cabde935a9e28cf046e786094a0bc36dc471a261e3b4d58faf2d8ba61c70cfe8324e7b10bf0c393940230762fd9bbe8a5db8a8d24eb1eafb90966e50caa1f5e1555577a7a6c5e5e79ff0e855886a1bc2aba4ca662a14bcd92e09d0302047c435bb500683066023100f4f0db8ab16d34e81d4442bb1af5f8cab75da567e752e52a539b4366fb3926b45f16e792e972c96697f4891b6798e2c40231008b591362d7b6986722798bf848f562792a5849192e43357efd477c8cdfee526a3324e2414bb38150bac4de6ef4ac31df0302047c435bb500673065023100c6d04e01a23c48c31a4f7960daa8e92eff8499ca8e43172d43521ce62edf8f2a0efd49dddf1ed8dd26bba45644c90eb70230037a135041242303c17b2284302ecc5626e46e471107682449365ce7545a383f78b3c3e877e9241abbf2e3e9ea5023820302047c435bb50067306502304ebd5218d27428bd8f9b5f696a8de1cc7ca02bb0b11bfd28d22edef9e4dcbe0ebc0c4c6db7bb2df49b48e4a61faab6220231009a3934981fda65acb11a03e4fb1785eb264acef4023495b8d19853e269e3b21907c11543509b9ec433f1f4649e4b23860302047c435bb500673065023100952a570da907a3fe647952a12b55416b3715c3dfdc86d761d67801afffb76056116730dba9430abc5862682bfbcb574102303f35b14f6fdfaac4193569af71f32f56a8260d194064cacb5b9b9134a9ff381025606bd13b914b1b1957ef0e418732060302047c435bb500683066023100b84440ebf9e1a7a478574e990653d5b181d08562bf6fcc21625d0ee848d63aded34e3964ceeaef9797a7f688af99456d0231009c81a23b4af38484011658fd433389de67b1dbc9f3035c0237ebf5bc09406fac5fc65ebb1136fc61db121609d02d104a0302047c435bb500683066023100d6845e6c53356bba95696faaffd4c42f6489e98682e877a6aa1c77200501b158116b246912a2b95f33d100000fdb6661023100a9119d52b713be624bec69e92510f104d3168f1b6157ac7b6135f179f6691c17705c02773165d71b884988d6a8b8bd820302047c435bb500683066023100b0812c6c29b33df7ef37f42d0163df0c12e75c37d2645f6504fc9c4dbd51683475f9250bcc3083a6248c943848fceb53023100a70b0ca35b871f6be600583fa4b1a13cdeb18dda4d5f46db0562a5988f791111085eff7acf58e14c2e41b699eee9f46b0302047c435bb500673065023100ed19964fff834f540401a6432b30e36fc5b32823f7e3372d6903f968e69f4e34c4e6eee493826242fc4d45f474960d0e02303c8f48acd11ac6efc19ff5da42ea6ea888ab8771679c06d4f5a4d23b59c633d7f828066edf75ded85b3dc5502da136af0302047c435bb500683066023100c393d3229ac1a4c60232ff8d208e9e65219769b8c1e0fbd42c4f0f1e5e36d6d5615024fbc6d8e2f60d49798f64de2531023100f6f907096bf8392d68f4347b34fc75706fbc115be9556f1e3cec1dd155bfce87441f90baaedb8e3329b25de4bd1db4a70302047c435bb5006630640230244f08faf9bbaf64bb4164aafd90ecc07af46b35dd844bdd8e0aabe8d5cfd27d6dd423584e8536ac9f366a96310d033a02300d8400d1c4b1806e343734bcd3b1c4a8a1c035987a324cc756518486231bc88e278634b7dcfa5f68269a6a7e31497d760302047c435bb500683066023100a06dd41a46a5b2527034e9adea0cccaebaa7c77080678134d8cdc3d10dcd5681e2ac84a5cee78855f168650c36740d1a023100e43af2ce270b2058b62c850b2d08c70a90a9309f26b27db21534b3bca62ff2d4a8f22d30dc19b83547b7d5a575eb93c00302047c435bb500673065023034b26247f9fba5947800c0664436e8d972fad9065885534403a7cf2597d735fb8ce9f6cb90205a91d71e931ff767546f023100aca6b6073dcf1dbd0f3214e7912b689a0191e0f38d641aac728a4a32b81848e0b321aa749d90c17f3fa183b10e6f4ade0302047c435bb50067306502305cc9f0a2348df22d9d298fc58f4bf9035768a2841c1d11710555a74eb2fa94733bc39cf21c94108c3edc74b43869451202310089b47cf6e8f5ddba4709698ee0a4f2e9dff0f8d4ae7b7e35cef6704aaf8f996e83203422dc643affba91becb62ec845d0302047c435bb500673065023100d47e866ab9fff13fa4b3f6f2f85ce181d5871595d7b4dcbccee7e8f0344d8c9bbf2cbc506552253ba0b64d87df4ea5e502306d8068b6553dbad81aa147d4266c26740a51bd898c8f5459d0251034bc949505c6ddb8e3e8d940cdd8eeaa525b19a8a00302047c435bb50067306502304c32c529974aef880f737741f80a72b146fb263bf4238a6d8ba358b2e73ee18640cb70d6cfe101c6c6dc87ac867126b90231009a1256f0343bce2061d7addd759fc252d13a90f9781c8c872ade503c2119ed71e1abed6de1e8fd6ad00254179149f0b10302047c435bb5006730650231009e611046ab7b5298854f3c86abe4a756258f8a40891758a8d279ec214ba7b151f422690bcac67e7fb3780a5d07e9a58b02307878bbed850439d4c02fbf84a3676e62c21e65411ca1a816003b4fd9869c6771c853297216b85888ca45027e38a5f7e50302047c435bb5006630640230313ae9a2718efbfd22e093ed1daf4315ea4e890356371b0034479a29b637731e0412d1879c97fb61057367b3531042440230738b07619aa6f746913fc8c540e536bdee887813a755a7b074512cbf8ce54819b593efb1c750151bba75c1833701eccd0302047c435bb500673065023100eefc39b43797dabd61d39c7acd3ad7231c4183ad3d3ec9c4e452ce2285222ce95740e15549a01a809cacfbfa054c498f023020ac6a9c5c445bc7baa2f987dbc29f9c8eef0d2c954cc0c4c48a45c127f884310b6b6851342db63b575739f4c69421020302047c435bb5006730650230068b56dd3bbfefeed0bd719d6c16d489ff18309d10b0d6b2a36b2d666722ae71c86b76952ba4bd4643125d69412d71a8023100bae00052b04adbabe9870a5ce0768024aac48ad35667fa739e3c1104da56417ca16a914e64033e140109881a01d677810302047c435bb500683066023100b7c96ac79fa31e0309318f0df6c6eb1f411b0d5d0df3e4644a23c6532886b36b4534ca839beac88a86a19a956fe157c7023100fdaf703c9520154afecb6409c5ceb38f82b9b66156a699eb03f5448f197da962fe36ce474e3cd42fb4293ebbe75d3f3b0302047c435bb5006630640230311de4400f77d509c1956930a78d78df1942caab1af9d1b740120b0955aa5c51c9162d583aaa6cdbf0d9ac09e973893e02301f032070dc80b05eae0a1ba1163d38ae023f8e84dcc489f54fd9c931de4782788482496186ed7af0033cd3b4f4c492f80302047c435bb50067306502305d5670994d88bd77baa5f1a3b17c7a988f3e04139369648025782c2af6c19209aa107c50af394bf1ecf3112905e02690023100c947ef50671d1c83c938a02de79347ae924d76d10150c3abd746081e6481bbd45a93aee0d78546870e73a364e40199600302047c435bb5006730650231008df14616659f1d061eb22305c40ef48c1433be76d5e2799d9e028d95ab7838a3fdddad2c8a782ad33e070c1f4b8b6c6102304c4a13900ab42047cc8de1228c8f85c1f6be3af0dbe0941b4d2123f34b24168274ba8b29097fab7ed607c132668375ad0302047c435bb500683066023100b52d1b8c17622c0a676056208bfdded92b9f2ae5718a39b8fff56e2314f57448847f1d2a578333a2992bba68c71da339023100f34325556666ab32af1f9335f67fbc58425b33b538eee2b1b477a2d180e2328d25f05b11cd547033827ecb828fccaf190302047c435bb5006830660231009557f3ad86b24a79a030812c6b4494fb5e45b03086ad8bc8da26bef3abebdc909b39a6d50a6d5c6fab83023368d9e8cc023100a857093042e110fb622c0ca927f3f4c8a3cab028cf01a1ca943d77ed289479ea12d8678dac918f5191f1b7f1cb79c9d10302047c435bb50067306502305ec544d7a571da49f821d1c90f64acd702df02aca4644364b67703348bf76189b1fd2c5ed210e8df2529fecfeeb7d444023100b48486e860165583963353f2e01adab8e55c1ff081f43d783f20639c35fe7f0160d9aa1bcec655f4d883ecf7c6780ddd0302047c435bb50067306502306fe1253df2028da81bfa636c26eeccbab7a1a0d98681939d6395d2cd42073d2d563c059883c7bf0efd07d235910c06b6023100fe0066741253293db3b928371ee9e32887881c06f6d1ec44c5ab643175155118b6a556b374f9e4798915585c86b36cd30302047c435bb500673065023017200f9f5a4937cbc98e2d18789f7aa0cfb03da267791537e638ee58fb1703cda546db87aa5eed3cd48574679aadf2f8023100fbefa0150431ae03d44c1220f2db0e809c58f0fd39699d32b101d4f53e7f5e3dd7ef977ab7cb2c7891ea377019978fb90302047c435bb5006830660231008dff5df89301e4cff4a50db95e713a12e669e65f15613d22ad00b82bc30c32dd2fa135b377cebb8e8d40e626715da41c02310092a1c49321ad7803c4f763616031b388983e0c07029edc3b500c6eab6718da4e7f4562ef01e1ee361ef74395217945ee0302047c435bb5006730650230286f67d692cefe0936302d7aba92124d2e38b37d0901a07f5050c04025a52e997ff1646068effb60fbbffc66d96d142a023100e43c0d528fc7b3ff04f5171e8cd7982f5794081b6f30cea8bf6f8355133ad964c1d0be43c2f59ed70f9cd9b4623d33a60302047c435bb500683066023100fda3d0e0a76a70ff27e77e3ca6231b29cca835ff9b724afa6d013c1ac73fcbbfae34cec963f5cbee2397aaa56af2b049023100cbe69cb0ad19f4e9310f6a828a78d932a61f43e814c8c35e063e75f2ada4674505e05c3db7b3829b7acd75923da08cd10302047c435bb500673065023100d337b8b14c77f59c2e7da85e7aed3bfd9f210108bf06a3f934106fca0bfb05145810b5822954da95688bc35ff02a51c8023055d79d86a9427c280492e6647081f2589421af55ba0ec445495df5d2fd12522eac8d42d89c98e2c11fa71adfb7b90c120302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a5c877be15321428c83af44d007b60f018c0844e706a792d94487f866d2e1ae64bfc36d25da4b579d0c44fe728bc2e02023060138c2b4614d8850b7eacb297be0ce17cdabcf842d5c75c5a0bf347d72d10549a5d5799fa09c7c60c341b584790a3ed0302047c435bb5006630640230742d03ca4334e1c16c8153bfb167a311de30fbe16a19fdc3c417732b7a1eb5e6df7361b11cb612314a16799cec19ebc80230425f85b309750b25d7cd0ccd1b80a06b9e5aa00d9b2ed5ffded45d9fa6e094f62a5bfbdd9301db8f9fc5a9ddd36fab240302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306f78859f197095ec8fefaa1f9ffc1333699c83746162cda9dffa470c040ac98acb04cf0e64e5fa66ba732954e9d7a904023034dfa1a06637769bd94fcab544893fd87d903a10d1248e95b15f931b188f8e3e2c6935e95463a1e92b9772ffdd4252a10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301468a2d8f8039f7982ac9bc415ca84dce614732b1163fc7d59a3160717929b6c4ef1569dc9e08de9e1f11cc958ba185a023100b489680b49e9be453680fbafb073c759cdfe89aa3ed14c5edad092ff18618cbe61f531848ddbf5a6988fbd0df1c1ecda0302047c435bb50067306502303366db66030d7600da6f2f3ffc1a963525997e2437dacd135c9db448bbc8ba73ef5edf92e7006d0b0e53062583bf13a2023100c32d21b5271abaad21d8265d80fb578fb7cacf768fedcf6e2845523ec001f57441bf203538d01f1675b8f191ff5869f90302047c435bb500683066023100c2575fd91be4f88d52f52590f5e65e5c7801d89ecd193a58dd5b2cf4f5fe01b66fd9ec6ea8a2bbd6878a6e9eaf1ad31c023100a9fffe75c854e1569b5006f5fec0da10973a8bbfbee3e473387e46084e2f14063e2a2448ae81e5dfe80dd24a76e1c5080302047c435bb500683066023100f59e2eb78cce63743d1b07f4d5208accb5ac8e36424f2c53e639f4cf816a2df3094c4f417d8feda8cc6cc7a032cd33f7023100ece91ca6f6e98abcbc33fe1f4f5758bcdb59e3583bb4233163f0ee6b7bb17c49c357f676ede4da980860d58b9ce453400302047c435bb500683066023100fec62dbea1c0dbf95babd55f0df2cff441eba381ce483c55e00d98ac601d61edcb9c2116236e574ba4d616a6132358e4023100d24fcff5302505106ceac3126f8e7b72dce5806809615a652921df1fe5a3fa9947717c4e1a59e867a3fcd464e0f18a030302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023056efac690f2588798bf2ef625cb259ef57aecf3a3335073b6f2a18cf4580d2cec8326fe2396a705bd0080bc3d3c29ebc023048bfca625f9aea05644ba174a88f6b72939154156df7e3fba2c782c52a9a07c0ff8af25ac204e557d98b93019af2700f0302047c435bb500663064023044023d14c84d9b38de9bc0da615b039ee2ab7fe36b83cd7d0b8f9a343face49269f858e2f33bd17cf8cd156de075803802302c631578addad54126805e15d477a2560a82be829af39923ebfac6aa5d37a7ef4186d04f05a925dde3fd3c30b59d0a5c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305238fd46481bb32c2a0f3ed08bc6b1ad77b113bfad328a00309fe8232af4f5884b708c2a142c0b2aab02caf30063bea2023069ca9d813d3b076155635ec1a00c82d659cfea67ba70d086da32391bf22bb3bb5df133aaf96d5dd1808dcc2a49ea56de0302047c435bb5006730650231008c6df621d7363b69c4c49e1f3b7e10e792b01fa41d0a6ae497ac7772d01d4c2c92d6351aa3665cf43440ddbea8c6a33d0230718ae4108693f3d352a7d63a372190df85c6d8cd9efaeffa5e944bbe1f1e4590743bc07280a1ba5a94011ff429276b560302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230269691a1c6d4677673ce603516f3792c980dd63205c08d98df6c5b0ec93aee26c71fa651cfdada854a992dc0fce369e302302770e4b0d8ea0d2c6e71a7cb802c3bc90ee477003bac9cae130bb7ef9659ee2ddc3b9caf1a7333579a70e7055937d1750302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008900a7dea077d16d942fd1994399ca25a50377c7764f057dd699c80f77e535561a7ffc02f256532665f87c8119ecc44c023100e6c564850a93f834f15607cb46769f5125837b9ab8561cb882a5d2d6168aba843635333235893d70ecb5631ade1afc290302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304d0ed36312281b6564c2b5fdacf824368383a5e3e947d86efb934b81fae9bef081e1ae92911ee81441fc9bfb24f91c9802310084ab36d0d465a8d984a8e8ff8164b7a93977c2f129f576a59a1f44d0a32b1421da2fb44081d25c408b54a451b6cea3b10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023056bb21704945e99a4b78f06960e83d5a5ed4befd366c726957c0074f2177f8f0c40d79d7c4b0f8d8dde7c495d50b87e1023100d2d6c116682be9e1864904944baac258cc5ab6a42e0118d8301c70aa6b41ad7fb32443ce064bb0a400cb896543c220400302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301dbe57d63f399aeb76459321453f93699cfa6f29629635786ab9a383813525ea9055a083c72eacb4648b6e2ce27354c4023100c675b78b8f72a0662ffb06c0237edad08483868681316f465a448c134df46c21b9783817842ab44e454558eca1d7c4640302047c435bb500683066023100dca2e02c3cdddcd31a86a91121dde02f058691a4f4d8babf09b153de9d5d76c24ecd2581ebed2613a6f7616d15b76149023100cc2020fb6e494eebe5a2565ff666348329a6c556556bab256e79dfb096eaf48f6a0ec567122a64d7086f10382bdb79300302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306082be51fb95d49c391f518006ae0c0ef0f449d0a26f54d7603a019666e4cc4563627849326b1132a995ab47be144bb4023100e80ea445dda37c6a324f2181526c4bf160639d015dddb8376d7162527301b316855ce04f97b7828e007c1a707316bb2e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230572ada80d2ecf9ca2d04c6d634e8e320710952c392ef060386a18e9d4a1a40695a032b4c6273586cffadb39e01e568da02300440e9c81fd252bebe67243d5350a11bedfcf1c8bf5ae2d65c76c86d3c8b879a0f351124f1cbbe508cbefdad791ad5e40302047c435bb5006730650231008ae80b220f81238981047cee5c5ced785d6c90c2ac3db1d5d836d3cc9fad1817bc7110d51e2b0e3f2810cf4341c47d7b02303e803f48507f52834f36c4208c9d2d83f2b5f9e84a795d1e52726e954438f4654c2fdeb6899ccdebd2a848b355d857680302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023046326f88fff86324d61cd9edb4e8f1b99d29dd2f2ce2aa507d6b4b524ec422454e3972889c31ab49fb2dd542143b9b510230746cd24422423ba3d0612c05e5dcd06e6ef6ba6a10de540901069be223c3ebfc24f3ce53345f569a38c0202dfaf1045c0302047c435bb500683066023100ae766e4fed6a362be9eb4e62ab96dfb061a6d813cf77d0f47e3944f0add11213b0f69db9a1087d546c1494860e30f4970231008b5ee46f26e75662f3d0778ad65edd5cd6270554733119fd5ad2a1baa40afc81dc67e3877ce0578eb6485b6670a0221e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304df98750dc0fad54295f759c9615a7ea544720c4bf5c7122ebe6ccecbe30e0db67734fc4926bee09f174426b83f11eb2023100d5b3f8630e8c16345d80fe24cddf65165b78adf46af3f7ae4f85b64d33dd13ffca337500a483add3d8146f049178170b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100dc00681967eb074d43a42824c92bf171c0d2448fd19633f98c57805e98a629aece1530dd15dee595d4033147dfcd6c5702310099133f9603200bba73a7d617e82d3c773e36b16ea98b327cc2648a3cefc76f2b2190665e4f578bd680e9d0b6dc276c910302047c435bb5006630640230325eeca66482d5441087e9c1447daee60dde61f4abc5a5d6e67d93ee322fa7281bfd05f0d578075e38c8a53194af0e94023061bd4d6ff8b96f80fe31a50f6dabeba0f3d4177e26bf8f45b26a692da91b45f7cf0365e34b8b89030d4e036716e62f320302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230445a0d0acf08923a7d7c7727c24eb1403cc82a986cc51eacbb5d71797a0fd9c5c823cf473cb570b353822fcda853051c023100c43b2a519caa9f5d229108f475a38e33714434296d1155d6f00a7b7891acfc0730a71329cad3ac06bb159545476c74bf0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230535f69354c0fa8c4e15ccbc6002d877ec3b0be71c3b19e632ca58023faf4afa30f1544921bab8ef2bfaa8b49657168f50231008e3770913ca13ba2a909eb4a080792d7979dd98bc643466f98f59f814b35f1c459f120f647cbaf41ed7fbcaf9857590f0302047c435bb500673065023100dd2d6af9829e98be8a0a9a4e338ec94b66942a6e9a7d10cfd0ffd2c07af54a35452a7709c740012763a191d3d66542800230382ab9df30b6f3619035f1918af333f1855f2fac62dc91462b9db38a236da73fbbcaed93c998a953cb09c964e7081df50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230199a14b85313c6ed5d837b1f21963c10bc8262ca3d307880be3cc357039ce418db4a8a9bce9cd238d5c72bffd5025e3c023100ad964328813e120d9a5cbff1dc0ba58d7bf1e242b3a64c4ca9e916fdb9f720afccc6fb164a985d848b470c522ffc73e70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023020613d887d1c3a96eb1a96ed3d661c9affb6ea8da5db0d52cd52828312e07dfe4f48b8e2542337b6c2e0efc10cb4c5ed023100facf7ddda0e1785a2f466fcab3e2168f18c686e542031a23cce48d8dd5584886fc28f8e2e0bd64e56e817228ef68cd1b0302047c435bb50067306502301cd345b7ab6cccb00ca64e1a21d32665180773f43679ee4694100a41307e4d5ad1783deedc71917ae290748cf55889dc023100c6616d957d42d90400aef4e4ac4677e98b2099d13c8bb302301cabf86e73aa69a18f91ba3beeb636b7c4ddfab20772130302047c435bb5006830660231009ae13d4bcdc3be9abde8ea3cb23f0a4bde837d77b84a27a8e168b267d85e1035785d0a95454069a3796a8f7419dd456a0231008300028ded38a56b3beb1cac74b959a7cc824a84d9df7f9e2e897328b71dd2c378a37f80e628a4a05a53a9259d3a639a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ae181493b41978be9434167f6bd703aa979cbf1118bdc09231590b5ac0b219e506173540b9f48f38788775e4c08f0f9402301f167681f97898c822e41db90ba81b7f5a8d7fe23c5641b6f11ab107ea7995edc6b4284be8c94064ef46e0e44f70e05f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300afd7d795c90fcd46006b30b6b4939b72c50c81419b8b135139fd87206e6b3238505d201dfdd7ae7aadd559149168c1102307d388816ba942e969ed96348ab076728f5fb186454158a004b22e21f149073c3166bebe27ec5bbaf4b7f965d2e00584d0302047c435bb5006730650230299483329bdc0a121985136f069635c6613c4c4681fbe3ceb5d32b8c140786f46b12b276e84a575bcc3bc902923b8a53023100f5d2530c2b0fb4737869d27f522890604c152331c377478e6579d7397c06f71ffacc0480c622c457375181deacb9e6690302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302613b1172c65c3fc6703f672662ff84ed5d74f886c142241ac00dbbff7a163d53542a32ced2ff9566bb3ecd898121f5c023100b0112a46064a52430457d3dac1a5fbc1b19a55e99c3886ea43da1bc08d1ce4730ffde9997e7206e8ba67b04425a709880302047c435bb5006730650231009a84f3805f3d888d67675cd4b7cbd29d1064f635d91210b5feef6a6aceb0a5e9783e4491b5c7cd7438903496cc065955023000f8ba739f552f845c05c4921231b23e2b58d350db22baa78784c5aad5644682a9e7165f66daa32faf33cf81a87977750302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305ef016b78f49f7bba9330dc79072405adb219acf625d579c74688c3d29117aac66905f5dd587d878110865c6ef5ea95a023100adb3df3dd2c38a29be083d83195386709a6bb02dc672b9785ae72de0526e98fdabfa88447bf999b2a79e05001a7167280302047c435bb500673065023100a6165bd0f8a60b9f4ed9d1fe0b653dc407c11f4374ed3bc981c71967259e8afa22f87c084efeb13f0705a65c43a884fd023006c2b998cf9f34b11588254c0d460446f8dd1adfe136d2b46e4895160c086b9206cd70dc26102ca16f15f11eb20075d70302047c435bb50066306402305d8c272b9950a34702a95f53f40d1e66045c0e1502dff960b6f6e12eafdf6ffc467b49af906b4bba5db431b78792e10d023056701017aa6972316329b61953fd9e553c3b8a32b9ef9e3c33c3b5f3579a562ad197bb2a04d1a0f01c96b4e8724188500302047c435bb500673065023100cfd7fe9d6e1cc7f8a03379ce9679c2dc6d751bdceb005d0514834738efc85b2911cbbeb23544b7e59910c792080ffa81023035e3fb1ace1cbfcf506eb612fe77a419e86a9b3f64f62c09f3cef0070da36ce9d6285215a85f874324cb4250fd5bbcd10302047c435bb50066306402307c7af7291b6e294f93ff9e88a123d62b8a872b18db263f069b4c2f6f60001b7954354c3f02e606ab9c841bb3bf8216cd023078cb3e6890a43df6a1dd63bb4094bf87064450a7fe7f62004e8099e96068f31a56b646ffc078d56b4a0c53f329c4a3990302047c435bb500673065023100a54291d6b37669f0229fba4f9e51e7086d0f59a7ff32ec115676f042b9d5ed20934c2c4aae9e55c4db4dafc094428405023045b4348333e75d73f095c8968039e454dff1622f3411868bbaeed0f24896fd7e1e03552201456e7e4632e721411a54270302047c435bb500683066023100ee416ff79dadb07d9dd1f9d9e5a60589895ff0c66d46abe2098f5c6eadffc50a49c32c734b0dcb7f1b8c355e6eef66a60231009b3b0fffcdcb1e4bb80e669f5e1fad1b9092cf5555730d35e6e0cab011e22145d8953a3300a6588a5c9cebfa4bafc2800302047c435bb500683066023100db7fd95059119f4933bace2d45c30f9660b2045bc89d42b20d70ba8090bda367a704901d695b89b46db31b1268331846023100e2857dca5a3edec8b35ebccb34f03e32f8c5ed644a1bb6f70ec19e90ed63cb29d5c8a28ec912069c89a55bb87736a1c00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100bd931a28a79c1474ca9939cd17d09abec2c817c230db84d3ca58693626ba92c2a44bf71b74c54c8c6ede6421e95ab272023100e195cde4c4162f570e267dd60bf2fe8e203b65d9065f7fca187a9c0bd41d1152093880f7ae77ce953388a38c6a00685b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008eeedee25063a6e2c2095af0ec31421660a3f4519928bbb8c9dc375fcef184a0e1f66412b36565d3769390317b7bb61d0231009b1eaee83f07a6ff8313b8f984d833211eb848aa06f33e15d9cfa4285135c7ec7a419468ee853a9dae21e4e4715493b50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008515780937c484290d226713b670779da2cf05033db3c0823b560c49e81214f35b6501e144d491c35dad24ae1680414302306987dd85c5c58dfa47cc1efd3e2af1e3a49b0eb977c5aa700834d1897ebe29138589b7774e201f18f382ce08ef9b68080302047c435bb500683066023100990821668035480c0a3937cbdbf8a23578f9365663adb411a64cc2d1d95808861843e504c04798977cfa2d708bf87a7f023100f996496a7c640179618ac2eac730ab719d5ce28bfaba90a64fd8dcca1866d611fc7933f7a7369291103fe520b07ce8090302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301270a8b32e4f1f2192d88e043ff5190a4c78a346ed242f844ddc72a622a10d0010ab7d859a8f703aaea1769169b12f0402306284c834199e13d1b02a2af46b157cf87a694ce45cfe73c589351b661800c1aa0e89bfba31efcc21d631acbea4e9198a0302047c435bb500683066023100a498441db867fe8e66eac8537ca64510ab2121f899c4bc0b6070a4d38b12bd412d2dcb718526638af437da3999daccff0231009477b4b02a5f300bf21281394d6bcf8255edf1e85ac4e98b63868a3644a14e0b05483853b0b99eee31429884ff571f480302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300653dcd06e085f7c637d5668a478d88ce4926e25c747a442a48b1f1c20deb85c1864c9da41c6be72f1b02b6a3ef79807023100dd6a4d90434451277681932e94a2c4dd9736f786548948afabbc22f5a6b9a7efbada2a5ca608d9a0b78eecccf01e21f70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230565fd2332f5444bc603218c4884ade820dd713a0a3c7a3835157cd28974cddcdaa67da7dffa8723d19756cd7d4f53fb1023043a7719fa988a55ab1f8d0f5940d3f118c44a90c37a43120e17b299c24bc77959f71377f7f45c8185507f64c2cde14b00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023034ee6080a7826752488016e39e22de749f701075342fc01137cb5be686c5cb46db8eda6c58530254079a359f106a3f7102307667986fa33ddc43a74fb132ec36f63537412773174cfb97916c1d7254a07920e266aae7757540817f570c4374798d9d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304fd6de93a4b4381727d4d8a03687720e0c67ba0473d6f084738d90f7a6a36e8b97bc8661775d7f7410c628ff02b76a89023100f8b04746b2218c3d9b48687cff64bd2a41db314626cd5ceb5734c2939432822de19a27f542dcf052964c7ae6e714fb260302047c435bb50066306402303bea7e9ab26ede9c3f53d5ce279a8e21e044310bb235183d3607575ff1e6c6b22e39929ba1211dc86061688c7c8ca69e023065223f8f8f7ea8917c8833b18d2df93dc91bb1b55c7ef58fd690058c16736ea7edebb6b552871c014cc57356455110d70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c2fa032de4e5a213c5c3fdd973e6e55edf46d9b3ef61a0021d8071eeb1442bab0cf11ea454e1f0da637df6aed87ce435023058e8e57214839c812c00a3b26bc6035f34a1fa0bf01485e5329a20cc0984f9c7f346b6c9d4adc36a4b9e25e844297faa0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023043e7eca8b6e3b054c02b7a4ffcc88630440c4f499a0df69ddf453d4a07b411c9c807040f532c280f64eb84e9e12d0ca50230583ee1897d0a8349c5656365d3b14ebe43f1263ad88b6b19c74a9e69c99ef6ffec6df70809631cccf61cd5ada79d92c30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023003e9563493348dfe22d93b9d814a9c11bf065109e1fea5bc9c55c3932d02537b7dba7048688adabdbe604048dd52a5e402300581216d62ba217874a581ec968e24c531bd0ad8a46756a53a9c062db251056d963b3e5640b90f4b743d037408dca1a30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230441079ec0bc8683e69aeda90cabb4942bc1f330847fa5ff0c5e3c7b5344569d9eda6ba3e8df77788c2d7ae1dfbfe7c900230688f207428e8417d4733b45b0b2e58d07d537f4908f6b005994b9fa656bc938d60270dab95302f5aa80bf0bebac4a1a20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fbc28853ab149fa7e722ccfcaa8fd1ed92138234ae26c3e6cda7948db426d0230b90fdf4044ec4f2f2f8e2e9ab47846c023100e5d30c5e7c9439f365aeead2261f42b3cd430d1bcf14577ce36a08b6a08e63aadcc3cf83d956a15742046dc2b9bd647a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304ed370723b200b4367246c11f5a11ac618625070b596380767c4fe0e19d1e8c31a7e35ba4b463d0465997d170d0be4e10230275fbc63c72aeb1cc3803a99058688c60c84ecd3abaf9c3987b34c2a7ef5ffab6a1a8a1b721224c2da3c343ad60d03630302047c435bb500673065023009e29f67402c694b5f455acbff1bc338eb1c45750f63288d7bb070ba914c54794cfeabf3f1c1f2e24ad939672600a545023100aebf4963d0c109e3d26dcff1c24d19732fda4f5f39b70ad0cda7d9d420dce0058d9b6ee51f1256a475f1b7d59b3f92950302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100968ba92fa97a149d13dde304a4aaf35d6e0efce0a9debf7b6a75cd1a30811c7cdf3b883e11766732fb60ee236f2954590231009d3ac9c41abe157bff9478d0eb20fe36c67f60e563341d17a1f42f0a07eef0c3434d0edf47e5ada6dbb2eb8bc31f72150302047c435bb50067306502310095983661c385d5e8f5d02ade373e96699d2a930a54bf17edd5a4c8698ea340a26a03f74e593b285b98bc5f557099dab102300b9b3840a8bff3ca7423b425415038c3d7452de1a46c89f99c3b143e04ea1ee8445de6bfdc3dae1a1f03a5c54b2686740302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023077b7443f5331068408fc8c2e933bbe8db7e28665214daef87a953362a225c5ed0e2800601055e89e5601922aeb97f055023057e627507c13cdf930484130758c3d1b6443bdd34996fe58b135c9bbaada43852453de41fd3b1377758b6b9d7e433a3d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305c7d19939e825048a070a6fd72706fd8cb1e853a12aac6037ce38ad410b54294544f6cc8dea39c65c30487fbef40a4e4023100b9ce529fc3868bd09e4eb89b9122931d160707fd6d197bd96240b75ff088e9950d36d0a3dc3041bf04c73e6f3737539d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023048e68d12a2e6419b914bb5d09bf515c2fda4a34779607d6d6a696fc05913cfd33589b2091c96633e9b6c29d86acc9a58023049e0df0e79187d94ff7334c080a35208fcd8d330c843580ccbd9a084eacdfadf81887d8e6b1ac2a74b0eced0b33261780302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302cd25e125a5fe44821c287c8d265f76cba0b867a38ae53774107be67b07bae3a5354d62171c9d639f87974d2525c752e023100b81c674f8c25564ec5cbaf963044b1c36645971fcf4eda5ecd6b30feedc3eaf7df5d2beb13ab19c035ed5cafad0d92aa0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023066db422f7fd2e4b389a15c03ac8fb9d6523c6179498b2a091c6fe2a81a64e334b8058b331ae11c7c7a0c317c49dad59a023065af95dd7b03a0b53c8adb8111f16a1630ba29b3aa65bbde9037882fe30fb79ac75a0c8a15118f1d207ceff295d81c960302047c435bb5006730650230365dea793b00ac2c36cee6c472971476d95f32ae7530409b5d7c06ea5784597880c53eeb0d4906cb568b7acc25c6435e023100b53056e2c159279f74d265128cf8192292618e01e13a9344dad6eef5d14b0643f6ef7b442f9191c60115b9bb299662040302047c435bb5006730650230570c6ca07fdecadc64aab11aab9f23cf4b1b711847cd66f98de114e07a391674ea53105eb04f7b1f24195b0adfda3028023100bde3375a2b6672b4ca7c5b8a0f044743c10e8a55561a44b54e8ca05310f0ff336dc352ab082aae810174b4d4534209d60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a37a8bcec11ac52855dd19a00bf83e29284995d5cd643913761676b7d99e6cf85f780c1454d7f912ac49f282e14d8b44023100ebf5de8e0ced64e6c116fdb83e75529839398f4c891b54cee4bc139d1a1d0495e95ce4ae67033681e837073583818de60302047c435bb50067306502306759af98b9cc6917075becfbf5d2ef248c9152aed0bb991aa4d5b32fe5ed219ece061aa3e93d34c4985b8f38d84d2c01023100c1fe834a96e6c8829c539adb1ea052fc2e39f8b13f80e658bf1438c8af0a8f7bbee0a164a2e7658cfb2cc31552523a1e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f2e03f7f8d49c6210d58b78771f270ab725dbabfb801bbc0648c581b1d9223763adf5349188c1efdfb0203e886ce05aa023100fa2e43e2b09ae37842543104ee8282f9618351251608cbcb9d71be7e73446f184090d6cac2b7cf070c292a221ba307210302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d139d79fbe911b946cd713195ba4b646d0b046bae448aca42d8d920649b102b7403afb6ee8751abb26bb191480adf65a023100d5b428f2dababcdafa0756061ae30aeea32b85515da18bda2ae469c59ebca5dcf16d22a7b7560b536602cf2967cdeae00302047c435bb500673065023100c076f43b9952789e2c854aa70daba4f3de64cf79afd7ceee05e6430a6ce1eb2ea70d047e0a318c73c79205ea8650d69a02303cacf585ac97b4cfa23e5ddf6709cb1d7fff8b873e56e2462fd5c85c71cb2a7ca26822af5ec50d7f2bfb7e591d44cc9f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230744556b8bbdf0c28e7c4860bbbf9a5b10620e1c24bb6ee29cafb0f95b53cf9908e8425168f9b9def7c1d41dc81be2145023100df0fca400f015ede06b1fc3d8d87134d2504e81e92a3994429a44e5a113b6db1789aa4988c2ea3a68cbcdeb267ddcc700302047c435bb5006730650231009ba6e4c190e80e4d8b91c168466b3c3aa0c0fa5a1195da0da047bf3bb0820aaa21b819287b2670ac9793f892ffeb4f55023026a8f3284c554a48bd676b041fb55add30bcc4f3ba36181349a1b4580ba5b7f3afdbbad7682077f70e513d2b4b942a230302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a3b0201b4018d8c9d8d8fea72e87879ba4264a8ace868178c63b144d6bf04b9615cae3a70f374c90d81de3377a6ad5a5023100fdee80ef2467127ccadbe166116b984110d3d7d94ea4cfe1706b19b51e897fe3c669b6960e302c5f6e2ed4a49dfdf49b0302047c435bb50067306502300d3240b983ece0bf6ea1ba7f4f139b8e49d6b8ce70a7a5605bc950deead019b818614cce1a3aec1889aa28369ce1336f023100e064943c9bb4a385b1dedbb8ef3fc9f3f2eefb63c0d325fb2507cd9d41b2d8d3b706d91ffa8221f947fe2b2047c991240302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310091b56fa910fafa82c910f420f7209b1ec65a909a9501a647cb0d5b9d31f8ed07ff91c9276ff4450bd7d585690557470f0230402e68f730fb738f677447f987c3a04e3fd379c3865e2f7de61703e3d731fecd9ed14540e099b8db33b60557407c5ae50302047c435bb5006730650230242c52ad09fcb3e701f1dfca91b4b9f07c086eb8dc74a5dada8f61e591d3f9a7697c610e6485a3227567e09c09164eb102310085fcaf1bd0dff4474f9bd980a953357a1025a3f43dd2e475aa44f067a9cc262ebb54c3597f1ce6b6e2ea5d1e6cde4e770302047c435bb500683066023100ed458cbabbe56cd2973e413ec89457bfec67d23a23d6ec7dae4183ab19e5c52b02d687dd01fd22ec3d6527202eff539c023100c0c7cb29ff3d574bacf2b0798307f5fb1df15ed557e9e730bcc3c164daffa61ca3eb122740b0ed45ff24660504201d7f0302047c435bb5006730650231009ee0afab35b71fa6ce96f125126c5e3ad640c9803741d86ae2e1989a504fe7bf9a893c3e37133133816bb6c994b9045302307288ef599c35cad19128fa5d417c802ddefa08bfd506d88ea12e7be2df8e2dec391bf2047b191af5fcb5dae518670b2f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c225568a85aa6c6e68365c4b04e4388cacb00dde016434c6842dc2afbaf86f8617268174e575b86ae516d3ab8d414e7f023100a6eb39e11819df6acdefd8e413bfac561e034afa1d69525d1be8b2b59c7ed1168bc6692e9db818767b6901c0597972480302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305d24570b8c390e85ec27171ede8cc643159c4fcc0b9d96d47302639b5d60243218a052cd983496a12dede4933cebf06c023100de61a53bd2454da0d1e6ac7b7e7e5c3ae6e6122fd168558511dab2f4e7812bcf1fb4071c6516745d94ecdce4a1be6d9f0302047c435bb500673065023068a0bafc2fbe2c2013c20a6dc4e0971d68ca3d7ad8bb1e98c2c23913c511ab098bef94338f4213e0e9a8d4f185e7a13e023100811de2ecce290f95afedc79334d100e56a973068df979ac369b6eb260c6d94d86af3257eb579beed59aa9b01ba42aba30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f779d5ee61e79790fb0d57933151972287f0659823ac577146ecbf2101a4ac382f3e64ab50908c7f53d13d32ad84959f0230753a6967945013653bf16a8bb502ca61920d3724bb29bde1df1aeb1a0a8b8d9007d024337619dcece2dba4f305e196900302047c435bb500673065023100da60019b3884acff8426b1c09ab0bec3c3570b1241b2c829003ef9e1edb5f3961075e4a63df1d6e15e8a40c24e56d2a6023044af71bb034551f964d3d56a6878daa59ee6840280d13f9a089e59dfbe24084ca834fdae47280c7c69cbcaf9d3dbb8fc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306495b13e0d32a32f361935ae0ee4a43a6e2b90edcdaf469027d569af2f91e536a1f169f09319ebf7ee7343d7796b259e023100914152036962dc5a18fdd6218ae9144dbe06d0a8c47024428efb295ec2313a1b9444e697a6a3707143668296018dbd1f0302047c435bb500663064023012eb8610e8bb30ec59b0f56dfd4c0f191ebe1e856b012758b135ecb6a482738e9ff2fb4515339f144f2271608bea30fa02300bd9146aedd165031098a260426d9736fddce5cdd14541eb326f2b35142d46b8596b2ec2f1ee7453dbab24fc732c87e40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c113dc829129ddc45f841554a80ed2e0447a5a6fe7277de8fe15971d42d824f8f39c5c89b59246ba41741a4ae13bfbec02304a3a58c311fb26961d3eb113d9cc3498968df8fa015458a5d748ec944017d1ca6999ce84c2597ab813d128cdd7b90f660302047c435bb50066306402304a00e91ff3a4f571e36221cf0c602f76b3a87c02d1b0ec2498ae83b012855b6dcb2f53799a29f0259b1070c8a1a3aefc023001836ffd309ad5c9c646d1a11919a55d5dfecd78123830d58b7875076150e5a066f644fb59f71634e2b677e36fa393850302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230515acd00523f9cb28a9019cb224c1a9ae3f65c86123fe41a27f1f1f3ffa06188335ef9976e9cc85adfe46d06172581fa0231008c2fc1cc223889d9f7409b4430177f526ddb21011cbe6ab8d95373d1e445b7aef15bbe892ddbfab06dbe94ea3257aaed0302047c435bb500673065023100a9a25535f827549dfde695793c4338be3848ec9a8925f0f0784aba00eb9878c4477926eb5fa90acb604b33e752d09b5102304b70a2d48996de0814d65f6f9d59d5a98e43267ea30ba0ab8bbaa5b444609ef6f5185bfa0ba24845604aa85a61a64cfa0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301ebb5aa71c9226a2b099f41214c163a16b1bc79d99fff470d5f4e4d027ced5a93b8f36993d0c8a9c7a4dbb0c9d4e86a8023060767b10cebc5e8f9e4628bb301cf10d9d86f9b48eda488f1773dc7247422533781959e71fab82b335a63e1d2c85e70b0302047c435bb500663064023035534620a172130d04216b61e6b03778bf898b665af34ed5378a6c12339d50d70b78cee9a42c2618480abe0a77f350de02306d1cb4695a771125faeb4ac2c8548f117994377d46c6238687ef8d256bb31ff0b303be57ace4a2577572883f57ea06970302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d411ce4adbfebe397029b44f51d8d9f3cb847973b7bb4cee09966351886312540e3aeca82495e8eeead250c68822df4d02304c06f43dd510ef361abdd5ac579d5a880cf9760bdf80e7ddcb4a595ac973f3e90b389f61367c0b41f4e2b9f85ae04ee70302047c435bb50067306502304409b24618232824156b23747330dc7f334f67c4248e609bf2b22af811aa1faeadd474301999502ceb7d0e7a5b7f46c8023100bcd73159ae0d06685f6964af125f1645e5b8ccb74f94c45a1e7f9f82bea78bb6d438df1037a3c93d07a39512973ed77b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023046539b892c6d8db173f90af0bae37c799ceb14dffd368b662d4f510912ab4084d31dffa6b09d36d74096d1b5fb6b7d14023008ffe211c44a58251978386551824f1f3cb9765e55d84d28f5b2ddc8885edef21f218cd852e9950a2f9fa21ec29fed410302047c435bb50066306402302d569b97d972a7b22be62a7006b5895a994f31e4d6406ca775e6ed1cfe880f1c7e3e1e3236c942478a3915058cd062420230793f3fd5e1600f39d98f3f5b902b6d71f4d43df1a7756bcdd56bbf348456257efc03c226a95c6d085b70fda2e2ab287f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e7c8903f28c779befc4c902a30d8c1670c790f21258f553e4490fb082371ad34037ba3cc119c855f997f0394a49642c1023100dcbcaa7076c595279227574f11c8ef0a576a0a3150be56b6cce68d3b151e35abfebe234bfadf7139b79e47e6384619590302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303a6ab8ac8cfc6de8ac6ebc7b9b7041f119b0b770a0d3e9854a050f203f0c49eb636c2a286437fda9b4e1c78c7893ffbf0231009397137f19bef836c326bc13564815dd4d06c12a2292fb6a7047695082fc7d85c9109a058fbb6943149b59112575735f0302047c435bb500673065023014783a8233d1966236eebeca98c62e1d09542315f08e9907a64aeaf60734dcbfe1947d697dfcad9274a578e3a7d7c9fc023100ddf7114f2506c9e500a6c16c2339803295f7b380e7a05c08155df72735dd08747f2b185713cbfff6634eddde1a75d4410302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023055e4584f86c768ab1add130de869e3a67017b50912406c5081439f7f476f711e78e269b678d3055ff481f8497dce2766023100a370cd5c45325f5cb204928df4353e47cbe7ee696dfaaba55cc122a8f5b53003b188201c78672879769fdfd6d8747b400302047c435bb50067306502306509deab230a39ba9081c61a26365c1e7bd7b12147de5ba9399b2eed1c17c98dd771f0089b7a96ad71e05d79ff16354a023100b1f39d7545e259758e2fcc5b8c0f905ccf6a740e8342cdb7a518530eb3fc321b5c72f2d588d493f40dc466a3e74735fc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023060b46a3a11013626f526f99962c199d4ecd69768eaaa0789cc860d1e652419ce9ff75a4490e0e22b0b88a6428e46c4b302300b00b839247f3a89ac8af310077c0ef09dbb1efdc0f410e66c3859392127c1359a9c0487a308a1a8fa3ab76862e7126e0302047c435bb50067306502306d826f2300af1115045e1447aedd58bc9b96a096448af8bb9877363a09bec5e09821a37fd1b18401a8822b6f0c04793b023100db582012e4b528a543401f9c4f0592583a5575369c5e611ba5e8f86d0645a5f042d156469554753d94ba2b8aebd886fd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023017b880551ee89d7a3e3f1fd84d8b22b95a7b8a64bdedf9a34181cd8b5fd27bf054a7bc89ff7eab5ef8ad7d2c8ab105770230058e58cb6ad06d6b7150ff6bfe22258a4abd77fe06e33ccc84914a22104941a47699374c4a2f1b1136e0decfeb9685cf0302047c435bb500673065023045fa5923a1e354948cb69773efad092f71fe48023c15a96a3873b56b66bce41d1ccd5cc90baa84aab6da67c51ff9e7450231009751d8c255ea1dccc5db8fed3de37d17a677fd514d32b8682f0938d57d9d617c74e9c23c545375ce6773c13025da1b850302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302b5bab50429bd861b0b83de62c63b42fba0ebd6bd6193d796c645204343c4e02725c02749844b74e389ba8c679c8eeee023100d1199219daab6b9f45efbe813aa95d48d5cb77ad894eb7d9174c02853a5e5843ce1435932371147920d4c5566322fe940302047c435bb50067306502303b1c94d175621b6624827778e339e512632688dfbbcc11dd532acb0ac844b09ce7d9f4053b2a45b4b3bf744ea2b2496b023100b9aaa8e482442398ca6c5d6689149bb4ca6ce86dc1d5b494f0e9a963d8fead950c3af14ed1d07f2f0dd5b0a6bf7321210302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230684a9a570bdfbb6b91852385d9658a3fd0cb01fd44fc93425803e67c6baa1314c8b559f6c32a98d089c4a7a74642cc40023100967e6dd4d4ab74757ecd5a42fd14486997514aaa718850a955b7e5be7a3b89eda2cfcdc08ebb05f8eb2f788ad2bb33a70302047c435bb500673065023049c5bb15ba947da69d819d7447cd4c968a61b3e4bc8908a35edfc6b2266c52a78633fbbd6721bec49c8354e1f216295f023100c8a3d21428ac19c1e6b2c4f3af393ff5865a27582b254748ea37d712990a4a1f7f1ca4ce2919bb031c10224ade61d76b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008b8e102b1ba0cc4c72bc2c3503b7b867aacbdea09a6b486fe776933545e8baa724b71f891bf02a7f036fdb027848cfa6023100d9d878f98aacd175c49d38e250eddb65053dc4627948f1b0e283ce05d4931b1e43c1342939eac400789c60b97b4853210302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230258b70788c13f78a4571686530cc885924034cfd70bd9232d5b7fd9b9e3c78a472ab69ada892eece66dacb4e4edfa391023100faaa5475bb09af11d08eb7ca7ac8c05b29fd7a3258e9bfe82055036bbfe8b8f7f92ce3409b3f434865c2d267956f33980302047c435bb500683066023100e64eb653e6cd5b7e909487992f8aff59ce96cdab4d50edcac37ad2e38ced2ade92e9790c2523dcb7dc69a6f434962b03023100b3c3ddaadedef448a433b99cf8dc55b1f3e4bc8ac3446ecd36a75e16f30c6569597ae1af4d097f4d9efe58657f8b61cb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100837fa49ca0bfb89254ffc7ead1395daa27d18906b3a514a2a614a3330d51a2f3ec5bc11f8492a2c0e75bb988b9992327023100f7726f76f389f9807a35d610d370581469668cade6e8426006bc7a0ea476d13321c1e463fc9e364d4b0312eaf4f289e40302047c435bb5006630640230354ee91aee2ca017e78f0950ae5d431549c678ac331948b13ccddac07ed233dd879024bb7ae56a1beef75084a030103002301045e64ebb58f4859f4375259b05d40248ad92e656f5b262f45a7eab8d64d1b594c878b8ee2fb4ca5ce71d14d2e183790302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230305fb33b6a3eb463c6c66a46b9850a75bfa5733527fb28322908541e350ab3d32195b95a5e7592b607105f37dfd1247e023100b6df7a6e456712f99e3d2b713d765960936ae38e1d291f3a405c7aebe98c84772c237e201ca8368879148849adf0bfac0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307dba59020f936704eedf15a4ed39bc3e461a50f1ad07ecf28b4dd17a576807868c537b5d627148e6fcbe37056b75f43c023100a70a7451d7bb916eefb25adc90058337766fdde964c814043177e044fd2427ed5ba7344c74961603c1e52112de54af0a0302047c435bb500673065023100a32ca06972ba7d6a938bafe4b1ceb29ce43310237a9b21a0bbe36b76e0e70cc785f3754faa3823f357a89d5254fb65bf023043c70fecaae8b8daee9b282e0d6cb196e80550b6ee18e84fffb25d22be8855d9fb79fb448c30abe0ec7d7c934747f6a60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fb9e745dc6d768253982afe984d61f7f15e6ffde3761a9742728fd795724e9fd42356fb1ebbbdf8038e5df170e270a7b023100fe3b47b952c6809dcc6e2d94d2125bc0a4a64b98484ba14d7bccd0e80ccae1720ab333cf719f0016701e80b48aff369b0302047c435bb500683066023100ae8462f5d248895856fc750ba60beac1196b34216ee5a5159a6c17f3956d50124457186dac20ae0888ed570cc9968473023100b33bcf0c0cdf4b38ab57f15381cee5b442ba502f45bc86f37a5eec4570f60ec57aff01a0a475f0f805796e10e614fc840302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023044a763eeddcf56f5a722d53353c5297324216bfacf1c59b428b39e392b2a3e4eaddffd84977a3a1b0408afe727ae4a28023025b2395f9044f4369984a7b646277d0891769b756843437eb3d051aba3ea52e10ea780b4395128abd46a00c500642c570302047c435bb500683066023100d86979eb6f8ab6860441e7c5f9ca6e8d0a1cf46399726a5ca80b0118932c4f46fdb184c7ba6148eb690c217e6e9e8dcb023100d0a35d813c48fb26e9a232e95cbf5904a0075329c13921f86bdc85bf10069bb103a43e23da0651dd0dcdf8427562b0ee0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023067502ba42246039b86ed4ac477ec8426ebf87b79839940523e95908653a19fe6255ac5db647507891b2f954f767491ce023100d0d1ec123500023473bfe19fa16bc0d29494a749466deebcae6865f1bc60cc811bc86a3f3ff853d241d3316bd2bc79600302047c435bb500683066023100d1e30c6f151e66669d3d5b88f730ea4294dd7b5ddecca871449b9e7e7c074121ec00218c5cde50485de655138928a9e50231009a4b8474c03a74436ac8afa95504d1cda29c3856ea52ee4b9b87ccbeefd7054a6a5b6b7914f95a74eae5fdf0d500e8860302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d37aa9d1340f24b2fb1b3e829a65466f4665b009e4a0ae64da667a7d328077a6edd6b0fc679b747454f4a5f8411d0671023007490c15945934136218f0a4e048beb75b4054e2504c04a7d863ce44479f690829042d91e997bcf0200bb1773b34d5940302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304d0ab3e6b469b48c077bf259c1898b825a54aa72f5faede9788eba4ac142b0c33a87a4ff28fe94716c75b1b8e6a7f4b502301ee34b582672dd9055ff237e5e74d46e5c5153fb891401c3c2a42e7523749326ffb2cf9729d81cf822a54c3a41cc7f990302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023046b80b76e9210b8796ff67f8e40709a6610ab27bdfa1b82fe831f327d5f232c610c5532d2dec17cd4badc93894b33525023100e434c1fdb1777d134dc70f7c86cbebaf836b00c8ed21c2e5d59c3f2535d8b257829951ebf1e28c14e058cd9583deacec0302047c435bb500663064023044ecc0234a22225addf6ce0568127205898fb2fea7f88c89ad32c04849f966f079fe9407222e1ede265671019611d3fb02302eb66f0e8873a3168df836b6abc1dbab82882a75b512edc3685372a0ad3c55fc44487dfc8da06f5a5fcfd1e52e60a13e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100eb197838b94db486b68f30f84e133fa9cc9847f7574df9636148349fb7aa7169ed8e362c61dfd0f57a3c28f566b0143702306aa2d8965f2c7e63ff8fe680bb16719f16f679e7bd9d6ab4cf45b7b4c12db487686753c697a42de56893e865bc71ff340302047c435bb500673065023040248507a79ebcc084d44d43e3303172b1332b1b94c3bf583c3d5907ab8619e6f3815e0ce669d0e06fc92beb575f6a38023100e4be027f6524f2f877e445d9fb4c8b92aaf4168afbdc620529ed0d5bc7a3e2f4fe0dd0a5296bc7dbe65c6a5b8a2f51c80302047c435bb50066306402301912691e41b34728ebee4b073dbb6356e81eef496146732a9adc789650ff696a923814ce11b0157b6bd995befe152d7c02300b3f867aeff41a50a0e736e25349e302cf2ca8c37c7acf316c1f17f0ade62fd55bc98f1faa35df7aa84313d405ff89db0302047c435bb5006730650231009d3d776db89b48697a4235d4a61e81313e1653536545e6402c61faf3069a9055aebfd4a3779b19d876fe2668f2a878240230464f4f35e0910a16ab16fb729dbf88ce0a083ab0337f5cc9bd8baa38dba418630af960f027a305c249d293cdbabdfb470302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100962b2000a91235c0cf419438452d066e68551933b2acdb7cf07977d36f57ca0113576c63da2d6b886ba3748b61f5312202310084161352ec6f37937e7b3e2f0349745ee5837c29586fd0a8559bf565d66101a6c89bc0dff207d87c4463abe6c6174eaa0302047c435bb500673065023100a774173f2277e74891359358b5a26a569abde176df25f9015fb3b08da8977cb4221943e9e9a0563f7e7f2ec0fd95aece02300a8530902fa5e2236895bbd2c4eeac8c6cc04dd32c9c3aaeb40b8a6ec7e6f8e6b0ca842afe5aacc18555d339fe56f4610302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e3a10a0146a91a631daf2aeed45470995f40783620d914a6d688dd6150a86a0b637e7d5a6f2b3cfd74fd1d6bd412527f023002623c64f0a39d19f04a61067d3c5b175dc42fa0a18431ba032184ce280a59841c018184ecae220bffb2f890e4bc8a2e0302047c435bb5006730650231008ff4c19afeb2121031a711202f230ec787bb9808120dfef2b483e6f55bdbc83f4b3952eb76e25d0a3a59a13f35e7e6a402304afde593d2d6e096b83a0013cceb597743cfc3d2228f78cf22b052b46130c1ba5139633becda37e16f81b79cab586b590302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b99303d67f3d344fa151596a1093f1c99deef36e80dbeeace0c25323262364f05ac1a440cdef7c4a87f1f0797a09f1b2023100afab47179ecb03b482c86801d8ffcc049e0b6fe53e5d0a6000023a98ae5d53dae365fd48e7986b3a0845c3fd418e560f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306f38729909ff69bcd4b82151dabd8050cf76bc1c7e644a55cb89a1262bb334731cf78f05edb10c99e60e8336f8c87bc50231009270e29b4e904e5feab56ca543f08f2a7ab554a3799735a00c4ed269bede36704b473e4626b66bf81f37275f10ef88b00302047c435bb5006730650231009d72c53ceea04bf5e01203223f52713d514fde7025ff969f4f71fe55185e7311336a5db8e45a9ded83ae180a97b31643023001f664d3d417b3ca7a08862184941285cb346ffe4aef0cd570632abc717278155de564cb70c98d6525ef0318c5a2625a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023071b1a0e52417d3f52857d0cac2c5ecf2d3e3d02fef09a3bef6391ff1e0f314e85bfdc51507b0f386ba4df782a2dc092e02310085ba0f025c7ee95c6b09578e407530476994bc8b2d2841d7b582c5781befe845b0df29b83b2972909a43aab1e273e69e0302047c435bb5006630640230050b20169f5e87d1e3e70d6d76e07a8a75ad5497d9f43101eeda0537a9f11fdb2e821123164d7b9298e5394f8a595996023056d7c9f62e9fdbf094ab2f5a7b4cdf9466d51ae1f51d3a149cce2ca41dd65e96cc095f8a2e762a024e7a7e9005a865050302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307f4168df1bb3dccba84f5102457760942fced91cfb63c22d479577b4c860013eadcccdef68419972eee7168242827d3f02300f956be3755036b492ee2aaa699ed6f101aa146f7553abe5fac5e295f83ebc50f3246706469c470d1e139d53e4bee80e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100927b3c6440e82f629b38de6df93a6971029c5b3da33241229cf151d3c00e2ca6930813754df72bf523ef895b285ca4de0230550336870c57317d4907483fedea7018eaae0ecd1c96525c3966ccdbf53ca2ccc77fdd975e44c73bc54cb4a33981c4b20302047c435bb500683066023100d9179ad92ca7759cec89975dc57b2681ae796912273992a92408d549f73632e9368d3c4522fb3dad005e5f1c4d4f3450023100b632fb73beb0b52d6edf88fb71c6966b1e3b730eefc3c471fcff4d2b5e416aa85576052b20b7fd00098d8caa6e13acf20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100fbfb54453847fd63b9167495563b6ad0201cc82e7f9b2b6a7f8558a769d2ff42703252cba964d5f0186ff7c560e74e5b02307a11b42c816027d0bcf3ae389f8cf17b0cd1511130e2f81a1af81ae7d204d310b69c7264a4baaa1eb4017e4d3af7dd180302047c435bb500673065023100a0f66de8405cb5bcf8d17f90d674c1b9ff7f2b67394d3500040f7aa884c64db6b8c51997a2bfff63221a8d2161bc01d6023063fb5e126d2f60f04f98f040bd58581636f022dd1ffcd3a69a3f6ba6a84f9677a87247ceb06a074b775ce2651d4eee770302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303d8c926be0588e88f7b2fa098c74164f528f6e11693e6db08fecbdf45a75fa61ff3ca643d0c7e88830681703c6d3443f0230590885ecc423da20edbe8bd0f1804c56da29d3a36e28f9a9ad08e4113552bdd717375d54acae2ec5c528826b5409da860302047c435bb50066306402301573526300dad8b04e89ca63970ee031bc0234e0fcf7c72311288685a1982435258b8889f8e5d860c43aa43be2e9182a02300b3d83b86cd7a2ad3ce72f70095264c79cf2c6d5179e2d218a2c15a24aecf2f3c06b69cce1b12b23af08c8026b91a3830302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a174b35111fdfa4ebb3daa1439635476494f42769ef81906c9a7aa36d4d4e81b835da9940f045f708e283a4cdb3c1cfd023015ae0eed76a1807684ead41a4fc5a2370e0e25693028e84465fb5e47896b360f793078f431bb53ae10d7d769bb23afce0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c57541e57d1d6356647bf5f0eec648e1289d61ca025d75a708c95896f2dc237dbefa7ff1cd26f15743b76ff52b10a0820230308ebff6aec7cd88b17cd8113535981e60be5da9fac93c821da84c69c2f0bad12b6e9a763a5b1334b2f80b68fa06880a0302047c435bb500673065023031e9171b419f767adf9b7537344de01e25860635da7cff1c54c4552ddcfaac6ef5742cde28b2e40eeaa4dadb6086c3af023100f11bcf04bfaeef62cad76fe48bf215431d0b311b1b6542c93459308175a23e5c0957b443d448820a312a5531feedb66a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230599b690bb6e71b230d9e3c1afb45427aabbf65c305d76e83240e46b1377f87d528cec5c0e5f7d44854ad0d54552aa0740231009c791126a4e9e2412e46b6ff123ed0588f938cf5806db294d2a1884f587ab03d31e7fd6c9bbbcc673c90f98b52a810650302047c435bb500663064023058f284017d370f9d253c85e654475ee6eafe56c439da7b07458989ce0db33790e94d5099d76daf4b8e4dba59e34081ca02307bfe0680a105bb28781d3891d9a958e963d48292f5b75c97a33512b60651a84a627a973febea6b7721f4f5a07fbc272e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ab0b65a80c519053ce6620f838974f931f21dcf663557511ddf1cddbd5d047f0a2f7591d865181f0ff9f0d5003a474ef02302a9648161b88bbaa7bbf8a31a8cd521927488f8c6618d4c3e2465b39aec135b1f0b96f32b1f5cab532e4ec1924637e430302047c435bb50066306402304b4fed85ee84baa81bcec38fe94e827e819272004628087a9ed799122acfd42b5ae34439a56cb70b387cbd03d3175188023071f2fd33b19864c2082e8e4d40c0b19bcba37b010ce4557d6e783c1fa2c9b6fdaf5e1c4d8ee566f27aacc9add7056afa0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023031704a080f702c43a720740ad34709d7c2c1c60335484b8997baec937205dbce79e476150dfeff1b062349a07e0b7a9d02305a7893d1633f5e199d9d448157eb53ef2c64c9edb598cf9f64f1b67778dd30ef2a487ca22fced3680e065f837d540a150302047c435bb500683066023100bd7151ed0d34cfad9774e93c66101b1682b71752b6c5880cf046f065b0ac3c34bd8b0cabf678c0933cc30631edde6cb302310099600179ff21ea9098459f9fcf7f84505ebb5331affe5e4fba82b3179a55f52a9b3e5c3096b005f7c0dec1944015ff9c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023055ed202096dedf71d546fc9f81aedfbb126b91eec83acb9fe79075afb4eb5fa3e5ce0597061f1ae1d3d6b20e021c8180023100b087f2ce943e76bb8774c30aa10ec7a0333b14742fc62f273eab1a47658e707dec7d80e7f76723f9867d361687af578c0302047c435bb50066306402304575fcd89c4a4799b3c13b330c106e4a19577b8b35a261fc31375f5505da40d146ce8b1bdbc80a9c2a9cf1f04bee293f02305fd4714c710553156fb04db82df8cd2f2a2895f9d5c302da544e22c209773de4e2a804e99585c7b6db73f80cb914ba020302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d94642de2258ca23b831b12880dd4f1cdb5093a6853d1dbd87f28eba746f8d0289192bd8dce133c9427cb0ed46aad18c023017a192dfe187f121d53b8bbe99ef86cbb09883205655945fa69c9883b9093cdc1f25ca2af70458b1365e67906335b7780302047c435bb50067306502305e565d75b8853ce1730eb69de5d5106ea843268a6eb1bdc1ae60f1914a7c57d90b172bf7985a946d1a227aec8ec17268023100f039209b561c175c1b9711129cca00619a611c2e82d54caa77469499adef550c2da29977acf6e1dc417b5e72909e8ab90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023026d7082da55b171e1908f182358f24162cf7060c643dad2dd385edd6766d4bc01caa515f9884260344048554fb0e24f1023100f6c7c37370ccd2da29d7117d46e99a6dd41a6ffa3cb0b360e9c11a7ea101f0bbc3f7d48dc0da10a0f03f65b14afddfa20302047c435bb500683066023100bd16ddd9209f28c7316a575ab4de7e498cca3f78f31a7a2a26465f6dd26230912e822529a23d929e6ab374b508f1ea18023100d4e6d576e87541aa4576c29f5cefd58ff8be74993a957e7674db3af84b8fd0d32f46d7fe122b2362b39900d03c741d9f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310089923ede581a681b0ca28ca48c35a287d1095aaa6595b593a410172182d9fc63066e3efc736279e47530b87f9b9a1f84023100c219aa356e1271357eb26f225f0643b49bad4b83d1e26dc2dc4105cb58e9adc5ec5fe4158a087d916f50ac2b24ea2f3a0302047c435bb5006730650230103fd1c1db494f269b3fd6a8e13b101da0878c656c0ef60644cc68b6e6536404541a7c9a1392c9341aa84c51caaae7e0023100e7444ff1d3a4bba83b191524ee561f610bc6cd9826680b962ba2b5ce6ef8712382dfaecf1208c3549f0d9e8c72aeffb10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300a7658ec544c1b656f879b2daec85d17aaa70870fb7dc82de9866f03da1854bfc7d4024dd86d504aa45257105942a90602305f0f574dac4e78e379ea1db1a5a5e225e134d513f776c20de7684781b0e65645826ae91ae58f1fbd8c7f181f207abe4e0302047c435bb500673065023061543ce16a848c8e03c6027bb1a4bbadc62eb17e83f53ca203f0a021a0818ab5768020f20bd66342912dfd0c0cc41fd702310099f84d7a7cbe6ce6f43441b9ac532f575a6bc65bf0d87af1617b85dd89d779c68345a364b43c736606a5f21183f56ab00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100979139b6e95ce5d3a8989ff77df23066ac97806d213b7caf43ca52e8459eb515473d01c5eb5b1fcab0be913f87527a30023100f1bd4b51457ce1197d1b293a3dac612c433511657f9f56ceeda561454d474d00e7ab248637bfe88d6632c8466c1a01300302047c435bb500663064023017016aa1486ff012761f7992d434c5a9c3a39a6e5fda88eb048f79d4574894dc10dc3a65a2d05f5879b1ed41c8ea3a930230235b9140b7f8de02a4b1923fd52f3e31ca163ae5d3c0f0a6c5f72dc3ac9908514f163cc3c0185512313881a1db35ea720302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303ba21c1f0be9379d1dbccd558989402e9bb010f44491e08c40fc1326cf82ae9a3f6d77ad55c203b6d2b8166f862c85c0023100eb91f3b9bd51cd65a9e8b025ec72d5509fa98aeca9a9d33f4b3520e38377a47e60d70cd54fbd05e50176d8571cced0220302047c435bb500683066023100ed9e834b8d40c7d86a7a84a8122892346fc7cebba3894ed5f4a96cd613232e5a1cf8dbe2fda457377e47681712015dd20231009518a810eabade4d30239d5e32370612438014e8a1e3e6fe535359b22baea188c89ce7bf95076560c202d1c67d4521820302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009c8b818c17530dbd6a4fa9aee9dc531674e1936749f3d4f51cdc93794fc74ffa4193e2a3daf093d8b2ea1621179aa1f90231009fa2c182263251d6e56b8182f2bf6e71f677274a200e606817f6754d20ef9be9d679560c3cbdc9c296aeb4d2c5d221b30302047c435bb500673065023100c1cfb008f0292b078743cdd45571c54bd0a5a6508710fc1ee72ac920149333f670254d8ca5fc7f5c10bd93bb35ba908a02307beec519dd1301a0c4911752eb6c8f50494bef6481d2dc9b39fa6054697ff080979eb85bc8c951c4e0e323c6a7ed8cb80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ab1635e377976ab46c13e47a08836f908be733c3097c8a7c934e8e8c73c6eb13ad79f380601f4567a781bf8b89d95c06023100cda056c8feb3c70bb1de5ef6ac73084b88014303b16c0a55ff09abf6c43f0a20ad1f3a5c1d65a29193383f4f6ba3aa900302047c435bb500663064023035aedc065ebdfeda8b0bcb0298950e0a078e4a619d66e16dcb218de49ec7b5eb3c74d6cb32cb9fcf13c7d038f1732b85023078df8eafbe3479b1b6754f6d38c04b1837caa4cb4a949c766759012aaaf838516cd93dc6d5075b81109603f6667e15150302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023069618f43e296e990a9dd1332b2d71e65a1b3462b917764c8ca79d7eb6f3d9c5a87053340604069dc79c53d17fb813301023100fe106bb3354ca04841bac2fb3e5ad1e7a0cbeb71430206b55a486c69c6d1ba3ee648360e4cdab4ab4400d89f4f41136d0302047c435bb500673065023100b04a4f06daf17edd5455bd77fca5fcd61c2c6ed2d543d6012834b8cc324e06b889e2c49aaf964496ed2c04bd1da3b29e02300e82382a89267b82a2ab49ca660f625122934b6d4e9e43e3a9fea5ccc4650227f42b4154649920a43356ec93e38a3ab90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300d34efb41fb8dbeac2d85f43e475633529dcecff02c69fcad674bab3354f43d205870faac682db38e8e77b3f61058ea0023100a62121ca892ecddc21273f3cb021fc5a2e3caf924d26a38ba8c772c4af389919e614ec0252c4d3fc6507efd52ee94b740302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008612e3c97a835ec8cc14177969eadb0f28b1c91fa07a74ff9d2c28f82698d460a056f8f25dc91b5f32b5367e1254e629023100f69223645928817845529e479455a07a0c47c2999e88798526d7949b136109443497000e1cf9f826ccbd59b77b91423a0302047c435bb50066306402306827d8ec4e956582125baea72ce578a40b66712ffe5649f31de474dca8185600d300a9d76bc790c3be4146e235594eca023075d8b946fafd8cbd1e35e16c7618e5794bc80d16560817fff79352eade6d06d7d6026b14241e0ec8da3ae5c963a33e8d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d8f9a0a2105c60455d99ff5ca915d4b762879dd0d576bfd6b7ccb0017ce7ed04d600715160ef1694efde5a568e5a43ea023068dd6245807755239cd672c6f0b02d07ced2c9e080c9a0fc97726c018cd196520cf89c6a1a0a2229e80edd656c7756270302047c435bb500683066023100cb80d52ee38f1a9beaf943eac61a7a4c70d053dc49c038229cfee5c65b897277cb963c918cca4a4d36860130a826206d023100c90ae08847ac122b5d2a7b0f9d4aec55560de1bf925982d60a158a42e1042ffb6e02b8fcff9fb3d300fc3707292bbd750302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023057dc5a6ac795e1e561ebdfaf0a6b205eadf85cc9726bcdf7e583a1d8647caaef5f0e65db92e9101df2fd69c2baeb4d4a023100dfc90d795f05c1dda8dc2fd73f75ab24ecc5f0a8d22517d874d06713105def3176b10593f3ba322c49ef467dd41414530302047c435bb500663064023024049e184465a661c4492b7e8778da741c29da9d737ec3193d60c8fd38ab161c85d689aa9e5fd276ab6e4fdf2217517d0230307b6dd302ad0df1100018c96aa806c57f0fd65e35b71a9a81e31156c258304660d0c447a5c15ce565195b6265a1715b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f70cc9d64a524012fade88dbd70c3b4e9b32b11c76c6f9b72810c98ab3c3f2a311e7a1a931014126c3546b1860a363f8023100e6addb0a79a138f68f8bbff242f20fc61dcaf4f0017a60021f815d5cfaf9c4d66f5ca9772d0e8fcd73c3a3df50ed73080302047c435bb50067306502306005b69bf51586a3bdbf38b1dc20445fc7d9ea4bded4cba3049519c39216f620d27c3f4bc6879c1d53dcd99b7f39f342023100cc5f99e2b6fa5cface2999267ef60ae6dbdbba5e814ee21a6b6f71f7fbb2de75d0a1c96fb4ccf2309f605957e3fbf2280302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a3d833a76e4fb319f19b6aac1800f2afceb3904da5fb2ad19d71c65e67f83317858b26db916ae370d5b3481f592399e3023100fae8dc7c4a2015ed666b3bddeacde1ceca4c83894f0e355cafe670e836294999f221790e9f8b70806c05641a64105e920302047c435bb500683066023100f920c43c92919570a829f033f92290a22f364b82ab7778dd4d27089355bd7d43e2589489170cc7a5ac0286910ee38977023100b25cdea3f1fff48423a855d790c6532010a64b663d0cce410f03adce3f68f728dc4d3a5442619cef933a380976f688630302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c781c115204981bdd7c971bb5ce0b3f9e9535ebe46221582e056681b03d37a0ee5d141f02fd1302596aa2d16d4f66c61023100fbb5b67380bdd4df6375194995a24135fd975ca4c024de99fd68c32549491557a08a9145416f04773da04440459d21bd0302047c435bb5006830660231009f492127eaa9c1dddb86eca47e4ec3d025d98d39a9189b7d47ae96a5578711964ee6ec5060f04a4981ba5c5d6de57729023100cc2eb8aa0e94b722ff0dbe7c87b3203a3318f8724fc0ccf67c2cbdd68e2326ec9b63f42067fd25ef6d05f7e3435ab7280302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304a384b60ac0a593499ee583b2bb26043ffb139fb3cef2b427d82a2ec4b1a90f8d4c4345f0a98d819379c16116bae231602303f91f59437516a3f54fca07041de5417bfbd8c398390757d55a77ff9337f1c3773111aec4916f9b8c0a41db8446a77070302047c435bb500673065023022395a5f172e1eb82faa01f3b303f72da4f88967a0c7b4078540f4286dbdcc7b056b3e838f327ea9897d81049395534a02310091a73b9aa090ec3bb8e17d76a4f7a07fe50c73d50b28c67c7e1d8310565b479db00dea7852bbf4c731fc55ddc5794cdc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100adef0e4276cb76d72f38b974b5e550d9c21517c2b105457172f9a9a5b8c5d7447b66d5d2271ec5192c04c9c9a07fc2400230221c6c31db65a16d2fd809bf7629f048aa1616033c7a77c8213aea35802b8917bc2a5cc825904d9df526716d661c6fca0302047c435bb500683066023100d2a15e0f38f0d4003a99e16eb191ee6fbd77f2f545ca86108d150c88bf530c7049ea3d945407bf51c6bd0989841d69d5023100b7e770f98f5e63215ea9b2c72d05f385cc9f13ba7cd6ebec4cecef04c378c6978fe6b5d2d54a05c82d2667c6ebb26e030302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230673ba47458bddc1bf9e1e16b507f11830fc2fa21d603af3f502e24dfd46f97796111482754fab7248de3cd26ab7e21ea02300ea1191a2d8c15d43271d49107c6cc12b233f71ff85929fc892911ba2b26952937607d7449c71a71ec43fbc09e16d1560302047c435bb500673065023100f75408091bc1df91078a5812fe5fa722e2e57022ff4ffee8213e39805cfd1e7f142bebe6e8d51603c37f4cafd9a1c64602302818509277eccdf5d819c10951b3eeb94ffb4c183866a58d4a32f658eb6cbd1672357aa7233bae09e56da23ac3f633080302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230724daed837171de7d83b4ebcb772e15f0944ea74d6fc0901735d4086953b0551fbbe871924a94ef06d699a766cf14b440230466133e2538300152416c66b1184d698cff36e2c28f525e597a2ffb550e58af76f721a53c643524e8b03a933462385840302047c435bb500663064023100adce15864921a84c6861db1a2cd839813f78956d06a11194700ff15e2309a9dd1a46c5e5a5f98928d9e8e2521e96223c022f1ab36eae356fa6e003cea7e829d1e5bde07e6a423850d916177f35a9d9335c33b61cc116d373b5833474c93cade9b20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009ac17a470cc1e9a6d6319015530af3cf6b73db5f4220a0f1068bf1ee1c42c54d0f503193029aa75d69bf7c964b80398a023100df9c507e379a50e3caabcbd713c348a395979cd47802c45b05ae76e8b76e11173c68640657486cc313dd030eb62fa3410302047c435bb500663064023050d72d2ce1c9553ab0a8d2b3620d96c79cba85cace08d54b617345a8b9c943cdb6fed1b52d48980fd8f23a7a85de44a702304db01d6d75b08d882bc7f6ed0b60576587fde757097fdfe68aa44ea8e971e93de1f1bb0084270efc2a1d702a19115ff90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305bec472fb74d3e030f4715f91db625d74ce002e2d91db1035d67b6383a1351cce1afd09e8b147af852d514f2866c469c023100da847ce732a840cd90718ca13d3f2089c1c00d3fde4c6354313c44079c9d0cf936edc7e00b4b19ec5e215769d1cb06a30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306f4523ae0f3d68f2b4967d65abb4eb19ca67e6282910e3328ad5c356db9af2170424f04a1cd55cf52473891613571d35023100c5cd73eeb9278c51f832974d953b6fea24a3b2912c8b5a5fc05e3ed4645ecf75a62385824f074a917e601492c328062b0302047c435bb50067306502300cdc19b2146f66b6a4a86c5fbe1d69381aeadd1d446b93e67527b544ccfa028521342a0cbfff7808fcfa4a480657a00b023100b39b622272d16877fbb8b2039ac3a5377eae84b5ef9a7db7237dd183d782a388ee58368e02bd994c510d855a48aa215c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310095063bcbc49724b6eb081efeb71d8dce93cff53360fa30cbc8b42a44b3892591e7a5785416333baa4944eeb116161642023005bf9f1ed9095bcf79bd8e4c4f6846506a91f423bb4f8a8713eabdd17e72560cf583b8e10bc5657e993dacdd5e8bfd1c0302047c435bb50067306502310085b85e13e8f77fed2838a4fad8befd70acbb50efe2b386b64a86976a8aee2c2f16d8614b929605cf39b25730773aef4002303627fd83c5589821a1ef84f08084221f6bfb0335f65ea852048b1d2102a9631b0ecf8e8fbdf2964b083df74ab91616340302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f0a2015edfbc691c0f8da6dce253eb366a38bf4a46324c39bf1fe8cc9c6e3f52b2b12384ef670cafe8234fc97e40d91302310091a0e0b77d4af44f32b019ad472f87f444ffcb5dc384710b7a6b29e6a5acd9b905429554500865547f9963418c7c1a570302047c435bb50066306402301ae36de693050795221e761205d38a8155f944810507d69b1fe3e876ae0adec8e0ed73172e795e548aaf1409db63ebcb02307a48d87f3c1f4a04d08452c6e5b4c27da245a4f26bf768f9a7f352c60072fbdf8ce0c9169741b2310f073c146fba85a10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300ae249e76adab90ebc2670ce5afba797c477b53a3252e23b5cf7e0273107ddcb6e798b390325014a94575da7ba9079ac023004cb5bfce0e9db1386985743be95777a89b3a061abafcb7c8d8206dd129c122e6ae914027128eacfa8268d4ad712ecbb0302047c435bb500683066023100d6af241250b6278f4d4eeda9aa2c90d1a4c42309242d1f25062a75a92cb0e30797da4af6851f54b594d4223e7c761545023100c7562bfdba697b9a75d71779ca1b34232880c3259c7ef45617a907924030b9d6918cad325ebcacd8350ded308b88d9e10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d427736983ad433267029dfa74436bf717e850509b2edb7120cc9c87fce6b0c9187a7b6eab7f841990f7b32b0791b3bb02303b0e9284d8520b414ee3218de701b5d25c82afe7ad3963b3635229256785425b4ac843329aa0e1bc2ce436a6165295ff0302047c435bb500673065023100e8dc799eb3a68664825da6f47732e910805fe8a418dc28a98e97a85cea7006c02918039e63941745c76baf069cced99a0230533cf568757e682a35f0029df6e7fc2bebe30f7382c3d38acf56e07bc68d47032d53173240345f392614370dd604497a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008f0385f65ed273e19bad6481d09fdd82413a936d6108e922e9287f3d533759f9fa8f23e43ef86a561c6405be3e7582f2023100abb8bad1d13b32436a2bd87193f41847e0e840dc643887d30b98756a82ebf845ca4e78dad917b63475596866314a0b0e0302047c435bb50066306402300a773a8a269a447e1dea4b4aaed70af89d3f550fbd31fd830fe2f96878b23b112b5a50910ee34564531d643b5bda614502306ae968bd10f40ac6d2cae15d48c5e54f854fca59f3a9c022a53a36e93074afc0ca23ed37b0f6070e14a9cfb4de9fc34c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d37e7ad03fb69987e408f1192014cefe15dcf9f3d12b0a463a1e6b9bdde009618b7fcfdf5a9b751d861d184e13c4616b0230789410d57c29676f4465cae73deb785c5a46ac390a95e9b04a4d0b31e01f2d5dc6c7833cecd15847d4445f63236bb71e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ecfab8a88c0f3437b6fc78667ff1a7625ef89067efe508befececfaa55350dd6bb39e0b610bed80211067fa83ff1e7ab023100daf679adc9109e3d8dcf2cf64fe7dae274ab6b0b69b26334be0b255d1c48c23b637e8d566dc63e6884c4555962bbe1ec0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ae384f58c772268c790ca67411f506e4a4c87dfcf4232b5cc7a5bf3417f2b6d4e777831bd2689214743404e263ca7b3f0230458bba296c3448fe93f7b9e95955f4367b600e48af8fd4c5b9cff54fb646543ce4dfb8337f0cb36146936cba452ef0520302047c435bb500683066023100c733271f654a55aa578820c93ea14cfa7958a13a349bfbb0bb5177c2b6c60045b10267569e94d66625e5b68470ad5608023100cfc89b1c30a44ba6ebfc0f5f2d10004305f1998f377fb34f5b2d827e08776ae1804ca376aaf8fe46b02a459677ed98770302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b2bcfe04e36e61d8b9ec10376b385be15327cebde8668cfc9f4df37d36cc1fe4f026d5d10cc896f197164f95fb04e34f023100d993eac6dccf1033112751ffcbd0bb38290456cd06eb983df7b6d145b56b00c2261c0d40a78099b1194ab2512202567b0302047c435bb500673065023037f46643287e946a30004408a0d0e0997b720012853374818d461984355af382a3a3c3c271cb47c4ac9ad0b277d2e9b902310081887eb85d8a801891f2a5ae40694fbc8a7afa46f4c1dbd24cceafcdd5f02080fad4c1b57067b131ccda4702786784790302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100dcbbae6036967d60bd9c7ab8ec8af2922ddba495f1b7b3e855e96d788a8e0af339a7bf37749afb5bfdd3e9f0d994bd4102305f8a388f43b42b6fe33cc850f73e684f8213c4e673aeb49a83b276d7bad4d0276842fcba2c95ad6e58bb10cc9a0d79e00302047c435bb500683066023100f27f4e65b2b9e99fbbf54e1486bd5bced1b33187f681435cecb4485e6b7901634e208d62325c3e190260ea637c095d080231009caee1bb0865f95b8073eb5ea2cd7ff92f85dad8f7c169cd73c0f30626947f5d7501368fe3b0e6fd7e00eabfd1beab400302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230757253d26685221ae164a4de27866086de26cdffc1fc022a41765800df0754dfacda2fa367be33e6f51986aa9c71559b02305c850400234750c8621d055a984b2ba278f08b7f3766fdb45383f9f6eaa56070b9f62d0239a5f53aa710aa62ca6f2d8b0302047c435bb50067306502306dea3cd8d606f60a52c496bcf8bebaa30eba17b6392e10e275a0264431b3941f0630f300a807ea4b77b6327138d4bbae02310084465607e53f1db5026d2d05bd18a1c84c0133ec8a80fb1ef5bcb420bc5593aaf1b705e3c0dab92b3eb8bc661736d97d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100bb301577e35fec8289c66fe10d23500871ae7fb1f138d183137b3998f4e131478f9f61cab08c6f2e786de30bb15ee6e4023100ccb406cf1e210ea070e42926a7239ff0b0e239655d6dce80b5cf3c76f91a85c49a9f65c341a47e3b0acc3207cad30b0e0302047c435bb50068306602310088b792c93253ffae515083d4a27a35e7353eccd2e33dab6b4fd4c56dbb125fd85b601295e553a4448bf4bc516362b488023100eeabc9b159634dc27ae5bc69aaf7f81b1fc1a5d7b4e0f51ff284dd3df5563c8c28725686df4fc1c745d09f0471ad34620302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300257d47e98d1e2b26bcb9b35e68eefbd7bab6e19c51c5554a7296e728978966498898be0ab6bef8afe807cf0580e44b5023100b08e882b007434a05dd5994cb534915c0328144466c6c60016163f77c328c1e1912cf2fe92ce3b7dde0b72c2e1e5f2a40302047c435bb5006730650230105d16b2d42ccfb33c5ae5df99f8dc30b9e5fd3ea54a0d9f52acf19c8aff7dab7ee60dc344e3b8ce4d67e1a35d266c88023100f340deca650f55bf43647dc711e23b793307c9e5ab53dc2b279949b3c970d33ff198702a39ec93291b3068db3f627ac90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310098a24c76da3cc2e18e35e410b6b13cc1b69fc6a98021b3daf9ad3209d536ca21f999eb32772ec874af7b150d52f9a7000231008ded5bb376b799875176f0c6729677560895c6c6bfe9cd3cc0761ca94b0006853f2c51bcb7a100ed5c105293c48dc1780302047c435bb50066306402306a9e2b6a3e041135cb5278cda6b1c5edc84634ebb200342a412c8625f44359fb01485e3bad2a67da036b789f4cf13523023021a56a209b36064e13c69c9b8b2d95ff8e20b7d7d79f9773e31f075b521fe42d49738dbf6821c9bb3db9482138daf6c40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100816f1030b03d617ed452c80bf8ac6940af09b1a03133a43b3945128b75fb4b550933239761005422edd2e33afc0e69a602300d4bb59fea156d1930e9136edebdcffc6fdc3a5eaabf1a4f773b606f791657ad8faff2d41584bc51d55cc2a35a0fa6390302047c435bb50066306402303263c3869bcbaee89beac86a89955d74ff84c7a3052c13d9ed339c1f836062569b1134c00855293165fbbd735c55d63602303f4a5d36318ee66774a0e78404d8d59cee0fdc08f3288fdfaa3a4c570ce01142892ed3dda562945253f4c861b92148420302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230570e8b275f8fc4d3b55c0d7ecfef436adb0909c051bfd948e5b51d809427295849cdbeddbbc81b1241ab85a47bdbb2620230036c4287129cc6c875761dc2aaf57c8bef5b6bfaa8c4d5edc61bcbbf953cfc677ee5431edc846f55974d308094847de10302047c435bb500673065023100afc34ccc23c7e747454753ad9137a127726c20f51eb42bf75a6ebbe987c6884fcb491c3f32e6a6475ba9149434711317023051de1f309027b9c7d76ec9d671209c23e95f0a00b158a25dcdb547d8970df631d432788cbb8bebe61e4edd85b5ebd2220302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310083c198fd87472f3f0a0c844bd3dfb5f1cb57cf55af6e27c01336a1b17d8e2e84f2bd7ccbd80fea65f20031163f635753023100aec2c222256801c6e81a6709c2fd767bb7fa80118f294f838569dd4aa86deddda690b916ca7f94853fb540c11de7678e0302047c435bb50068306602310084e58529c7cb3705aae05b26d00f58c8479dcea1f25c62a296c072a3bb93d4792c94af143f3cf73aa875d3fb81634986023100a7d70511b416bc16f3e5b026242c71838e4d61615943db2440c54582ac066d8b790c38ebc43688353356967525d538970302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100caa60e790fd2cb76696fd38cb30bb7d66bc0965136eea9827909d5c26e26695609a18115aa27475425883c860fafa7dc02301b61d777c265acc781a32dd01c6b5c3bfcee4311edcfa82f8ce59983672c8781b14503fbf745d2881f0bfba8c8c5c4190302047c435bb500683066023100ffd4515ef0d9f9ed3e0a39db5b5917a7467c0f446e775d751fce374ab9c3b55606150246320bdc13d86073befa389b98023100e3f3d2e1fdd8ae080fe559d5593561bcbbea982628da1d24b955c97b4901553c33026dcf9447e17ba5f7752bb36bd38d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304853549ffeb2e20f65ddf7950309d3b411855b8ac0da43c7f853d3cdd205d5b00da52708514dce01b6817357202dd1220230447d109a0fbfe361c0df5c3255b886145ab8d779ceac2af040a416804b0c119a8891e501ff5285d8ea3dab6af52af27e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230422fcf915ef5301e99bd6d06ee4c7dc01d268e951430744810697d5a89e26d1bf0fff98bac64a1ff41985d0c0c6e978f023100c5f8108d7be9fa3887b44caeb1c6e23951b34a46b05ca9c253647b6e15ed91df9e3fa1835b6605740c1bf8900a955e550302047c435bb50066306402303bfcbd2933c2d5ce7fd84d676782fe7910676941b105d1338272a08966daa4346bb26bca4f42f1842e5c773b9b07f727023024e262da13fe23287a368a5275705f2d0b4fe4970771c64f1a037f1fe47afb73165f97ea6c15c8f6cba2c50dcffb1af50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300bf1490908989ebd0417afa7e87f16bb57c9fdfcb31808e66556180de2c26805fc173f9cc2b05b4f714fe0076d7d1439023000b355298665fa9e59dd649154379ac09203be874d6b70ccf4c245a5ff4b808e9fb46db77d87e415aa18576719b78f200302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ff823ffcf150c07a90ddd0d6ad1647d2e3e6d64da2899a1786e8effac7d26d531108bb6e11ebe8a3137e728cb2ccd8d202307d0cdfa58521701cdb320d7f3d122548567f0978fb35ffcab99b3b0aabfa076598d4f004cb9a3fd2b0504ea8136929be0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303e61d787e7caf2904f90ce08219071cb4fb577e7ce9a51010f295b49a97a393cd37e7d8c37f2c94997485c079132b1d202310086e0daf9856db7bd48c3f3c6d19bb224a8d58b42b4190e708791b14f84c6c3b0e6b04147d3f514dd7f5c3645cf18fb450302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230688e70090a0dbd0250d83938a163cc5d066873a36aae2a7839ea6fffeb7fc55ac8147667a7d1b680411cd43f9bab587d023100e1f12f97f49d46d44baa1b0a9898f1c93632d63f8a5ef5b26f9e57566b07eb0d70d667349dc16e63cfdfda26911b0c980302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310082091c289723a17a80fb58ad064e2e96c2a5b618f6a7233d86cab74aad1560df0ba8760ba194a96c2bbf096a73a264d4023100db868d7593b7a97049f0f283eece41bdd1a1aa5c6cc73e04b5080d5a71d62cdfa18fef0f58daca7a2e4501f577e8d41c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b8fed221653e94f69e3522c2ebcaf3045972b2db4da4e53bfd699c25d308f281f7493b3f54651b877ffde1f8136c813f02307e8b4b913e2cca05b94d03cd747a2cf5a46e48b5d3c06c005e8ffeb8470014ea7375951eb86a1e1be099257e4491db5a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100cacaa6fbacea5b1ea836677892fdb3788ff721d68fc69df473b92b01b692e6fb3aa9d83d66b3d8dedab2d2cef9c676f50231009fe9a700966ed54ed7e96961f28c890595bea0c7d446fdec1d46f86f1608d46f19ad8ae4ab9bb55d286f86b956eabdba0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306d0ca9a7061e7f2a99e65ad3e3b1734e6e9c65ed2e276536085a3e6ac9dcc22887e2c8a38cb773cb3439cc9df4967421023053b1219da60f81f7e5b135ad64861da6376a213d6bd665ee42b71cdf6d84f8ebca072b725eb595b26fe3acbcb368a6180302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303b9e2d7c0805c5b024b2de7b73cd79e8b34f24610b4ff80b0a21a194b6a673bef19d4f5523db1650b21bfcfe777876eb023011b85849cd5baea4b6fd96bccbc59a1fb74385e16a694bd0be09ed28254c55896f0293a80d2fa45b558d4741cf6330eb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305ec70564a085249dbe0d29a35ee2c00a4fa5e16a83d5b511f4edf5a423681dec96673f9ce1f8fd9f8b1d708f23c361fb023100e5fd38efe18d1c43184eb3dca5e3d3abaf4773e5ada9105395ba55cb123c6161bda13c9344eda34346297da926a9fb800302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230500bb8ed3b2a36979a08308816ec65268dfec68f93be5e6b9416261a57ee0ee18be9637dc7d8c26c44fcd019efcff8300231009410e18420f10ef815b3a69c1b14f17520bd20aa7b0a8d68bb9ef1f434500826cd2f5b08c64c04a26a5fcf57245b676f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100fe41abcfc450f640d7ff1a03572a08aa5f5fe35c2f99e12a4c75f4a50f2ee68b7612cf931136566c746050f92181fa9e023100fa7ec562ab65b794a6d53eb92d6dc0e8bb244f2bb205f511af546824e6ccc0f4597ea468a19338ce152066dcd76771cd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303afaa701ae258f43a6a405f45ae3b274cfb4c244b9285ef169db9cbdc38ac5224d46775b1cafe47070424ac2a734eb630230333c9eeb44e83ec4588b9fc3c118f02d7cb8c248a3d78f83fff2073f85c457f4510e21ebeddf617cc3a31e760e5648be0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100bc7d3d3c675d3beeceb756ee6b5a89f3d657c0ec4c280317798643a514273e26996aba6b9724c9d23216d81c9560afca023100b9125b78899e498d9be4ee24289f7b89448a8fc4ea7ee13687150cca73ff843c1d569ccb463719ad755b3cb01c84a18e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304b4af216b064f722d57e2e0b2993e081d6746b5e75f0c0748b97df62b53afa41608e76eade9a76dd593adcbd2f6ee25d023024522a9dbbede47bb079455f022c6d912fbc2f080cbeb9eb4df83cef7089730016f72d79d34bc9ebe26d9e6f3f15bb960302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d96f4257f8cc683a502f86c0bb8c4bc770ede160413d0d2bad8680b7a24c0b607ad5192555f1d0733eb1169fd14bf6a60230202dd9bf2fea789dd67bef79f46f076a3beba123692fbe6403c11d6ef9e6e1019e339d5b83bf45db0e95f08f2d414eba0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f14ba9cfd0585725a8a95c5e1e065345ac9230fd2a450d9b3fdb5850e6189f113b6a5657d711cc73fca2c71f1a161ff5023100962f59ce16eb2ca25e2ffb7e62aee30ec6d1825e5f46e7fd046706c5416883288bea6c8ac04e539cbb056aed688723cd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302755d5912070219a170a50b0252c4e7e9933959a38b68d014212e695f4e3c64da27c2bf8a1962217c749f7236f8242b602304856d7eb2bc6d319ea5d5b45e7cd6dc8e5a39c919b81a2749863f395de90c1c489dcb21b3b4e83419d72b1351a89e6c20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023032a23d21c012e3cd30bf2d2a3ec6854a84c2b61bff026bd509e111942ba7b70ffcaf59a532a25a06ce9338b81398a0ca02302b137055ca84622ea296cd9c54987b94e3376a0b355d55b45a67ac78eae80a5c7546575be7ad0c7a1818dff8b0ae08b80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023071968b5a19a4d6de959aaba4bafb575c6cefb3342bc336dc42a37336c856a0c6b2e5a27806fdbbdbeb5ec0312245a33e0230379bbf1b22161998c6c7e00c38f709d759c46dca54a56aac24353c027508db0086d50373c4801e732336bc9ac624403f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008024d1a791e062caf4f964e294a3aea164d85ed7797db91e1caf37c41d8080964bc98127da464467665d6f70f7c85a7e023100a94e55c38039efa5e8d9c445952a1b06c5f3fee3aafbd6b9d88601b0164b17d8774d553166f3191b369cdc139c97a22a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f61c7affaf4f437503652eb1ce439de5026197a67cc5a90a75817f864a5ca1e3b1f22bb389775685a1cee41eb282d1c4023065c8f0c25e9015866047ef416311deb9df59af2858abe0c52772256f65c9e5fcf6df5361f2b879840e31f0cdbc8c7eae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c3a896ebea635f05447c3a69ba19fc699b557ffb44dc703196be5081ae8f96c1476d3cd872268907b1664067bfebc9f4023100bde39313460f76e4ea60d9d1b09f614f11bed7152ab6a00ae77aa41c94b5d1f5a5e34b41c993204b6d70e705e0e61cc00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b07d657b1aa92d4fdfa717bbea54719e07b3f0a03aea2f6de787f44552ecb0dcc7624dd23133d03e948a9eb2d1a5ae0002310090ed02b3d99688c15838626cc3d186c7fca700093a7fb6d246d2ddcaa9fe14594ee3459de1a00261b3434d97456ea66f0302047c435bb500673065023100f6a0a79bc42a1dc6b7764fbae21f34f8f8c79c37a1660b60288f5ae55699ba34c497226ff86e3aa899732addeed5f2f102301a867679cf42011a2e0a3eaad5555f43e3019f39b4f83fb5140372bf081710aef98b4d461a8657aaf02d8ec456a5196b0302047c435bb500673065023051a2c3977f773f5588960d40dc24e26e7d8cce6c6a046dff46f9651c64bf440ed0568c024bdaeb25cd0f4d4bec1827cd02310092440b36bca099374bb263a9a827789aaf5ed9bc752c6855983e8528908c5551f3de2c8726215f1d91b1c2a1050525990302047c435bb500673065023100b99b50e8fce5951b2d2794fd11867f25afa7fc808dc9cf6dba2a371164ac02c8a4b6e3845a9b41f7a1e39b6956a4a6560230629a2f26d51ec40dd644757cab9f5a18ca394b5ca99ab94dc753d902f7b23a67f6071ccf19c9fe3337a47cbcfa5077050302047c435bb500673065023013b8c41f97bc85b8b0d0c08014d2ba2fe64c8979363fa48fb37e8a1745cb170b4dd90b853b4df72b2fbe441420a2c8f6023100802d3ab205d6d27f2c066892cf76546b8a7f033a0045267b4950e247b27e5b669fb1ca44a3ab28a4c1c7cbeb53feed680302047c435bb500663064023012b9a0812ba13d31ddf69cb4d3d0d395cb4b11da7f96c412d56724f169e3784439fceec3645350bf16d15dca0c668f6302307cc6c4e74957dedf2efc7516df15472481b3a6d349645ba7e36f5dcb192dd984fec111696f7ef907cdd7113f7f4a90670302047c435bb500673065023100e6ab10aaad6d9cb1c66a1df4111cc81e5970ed6b2d6cddcdb3fd82fbc00630043a02cd35e7df25b519ed7f1b9872139402305153b053efd10887d8d270eb6f971146493ddda353dd78d68ac37bf602d0dd2952393bbf7f9ea793164ba4cd4151904c0302047c435bb5006630640230123c65da2331959ba22b9b7f94affeb275e4037cad8b6573ef0b0e52b5b883a1d51fda081ce63ed48cce10e9f7ea496f02300b87a814cc4b73471cff717fefc70d37f670aa4cc66466dd4e451fac0de4b41332409430715344182171bc5bae7fc15e0302047c435bb5006730650231009ae2b022f3d5b585da8d6a62b2219747882221de3e6b1a8509acbc96cd9fdf12cb06f51d0b834e69d1b8b35c4dda518b02303a1dc540828d2e74b95753fb15c51238c6c5b2fbf90d83b78e77ba2cc91f8f3d9cf10ad12bd9e6b5099db21ba57d0e900302047c435bb5006730650231008b3f1e788d6d772c196a0d0345ec0d5336d8da856adced5418ca692bc5f8928a88cb9177aea0fdc37d89b51402e829c102304ecc85d84cb66ea1471e134a8c0db8587a42a6dee1e6ea7ec02fc42a553b3a25bd6c442ea024c196cc9092081ece9c530302047c435bb500673065023100c9003a8d3c77d00df4a748ea2da29d06b901991ce396f9caae2af9e8d112c8e8ec02afad46c6a47fd7a44489da6168f202306eee3d2409fb550ed726bf4aff87938e0e9bb3a7f445aafcc4eef9c1f00362665c35d4ed567e60eaf5fb9dcef52e7df10302047c435bb500673065023100965f59fd198d166514af7595d463897b5514f04ea4c7b7fa28cc677b0df89b53625279df838d749fc09323fcf36215a9023070ee152fd7910d39c8b316a4aaec40bb37ef1fa6b18d0cace7bcfd995c42c8962c1fcd43b3ee168be861721d9a02c9df0302047c435bb500663064023061dba9e025a785ab324f512f5793df8dc4b3c11849c821ad90068b58be0a1cc4c6f0cd27fea6d172d8abf54d167b2a3c02304c9d2bfc0557e027502aed5597eabb070dca703c7f5b0557aa557b29c1cd30086464f47b6331dda555e06dc670ee811f0302047c435bb500663064023007eaf6307f668d1eb3acaa0c55fcdbd75a8a62bd98f9153280879b56b9abc55d076ea3b74a4d81a8feb760330019e94f02302b185ae745249ec3e64c4cf0d6093414d4c3691d1190d7e82f404bb999e0accae20166c05fa5287f228a8eff502baaef0302047c435bb50067306502306424d09a52d1702475eb09a4827f09d00854281d555b1d6ea4c8ce43f4a1868963e3ae1c51a70b4c2d220c81ea777da3023100ae876d047058c83c2ef264bb7718075361c74be792751133ebd5a64a0c0814a92b5c1528f2cb1a48c6c90e1b27d26c4c0302047c435bb50067306502300a618b40932ef38d98ea7236c51aa169a63674c737880da7b94eef77ff0e2a278211d58062d36628dd0f0e39a89d6bd3023100b8bfd2097bb8fe1639fb4f0c4c493a84491424f877ed7d9fed18f49dc40f76459e7326a6816fac323383ab11147c30b30302047c435bb50066306402302ffdb30cfd3eac14a48cb68526bee9438bd4d8a1aa61a5bf4b3a404e36617a73a255e159af9c9a495a43d8399efc852e023012994f465dde0795b32556750cfb807c86a5b749eec0c14eb795b4241043f8a546da000102b38cb56933b7819dc36c8f0302047c435bb500683066023100b44b9dc15a6ee5e72925498f2b9cdb487c025f88ce63cf2587dc0e6aa80478fcdd10c6fa4824a9b2c762cbd3123a42de023100a77d189bf1bd1cab03751429da5a72c2f44ec95f903974203834fc5e1d1acb7eece2b4b5b687bafcee11e52bfb5037050302047c435bb500683066023100ec844e57085c37b990f80600d4c32ab0efe88ce27983a567011562b58833571192d5d10763b236bdfb3acc350965c046023100ccbcbd9d36de086d44c25bc6646fd021fc0dea5e9c657a52c6c69d67dafbec862675eae35961f8a656424657414a6a1a0302047c435bb50066306402302ef279f10b6d7bbc788ac78b1987b1a91c5973fbea186c9294c8231c65beea2557970c83bc1557305d091fef0697f11002303bbbd3b62f13f987f9002a2291edfa099f4c764abb72c22d78e63649bf49514913b1534ace1e77c940d3c72dd7f92f710302047c435bb500673065023100d08b7a9dca6ce57f371816e45e494ba3e1f883dead92bf97303aa30ac8c7233d7732b763251a3f90eb41b4f053f9866a02300b012d8a9b3418c8316907fc0575d102fe4dd75cd782feef6228b0e1bb61dce022aa09dfe53fde4c2b838feac74a38ed0302047c435bb500673065023100ff856d5d3e66cb29815ff9866612ab10c9e50070d919d8b41474be1fcd33a012aefb664419408b64ad548daea2e6926602306a39a6112e0db08bacbb568a2a1b010ed4efa370d75c2e84e563a49017c8fbad70959b9b48fd93f92bdf2f66d6962a720302047c435bb500683066023100d44be953e8d5af77429dd5075c83a0562777b7c1a38db7a0e5db3cd6c84ef37beb61f1005bd25c7178838185752a0674023100e2f122b73432e881046be4aa7d6012107c1381d7dab4afe66dec86f2ec72e54c0868fe07b22aeb5042a1c8e16c4120a40302047c435bb50067306502302bfd533af5e0039a9d9d3966ffcbd6a21a27999151139e1857c22cbb9283d563d659080c9d119913c1a95cc5bdfb1823023100f0529b0f622161094fc690116394c5cc54fc7b035c98e239097e80ff65bdf51aef13dd67911cba715784558c97317dc40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300bd4e856c2eadaacc6a361895be2aa96c0efc0f04036fbfb4474161f5136bcc5227f5aa4c7956e0eb0fe519fbe52cddf0231008b57f490841d939b26fcfc0064698373a831959a8d1af96efc0848a654ebbbdf40878bd6af8383fc83b87a458ea8ae6d0302047c435bb500673065023100b5a64e1786d30418f3d577311736f34f8c7e00d1cf4b421c9ab43e8f9d0535938ad4bb70458d3b627a1f11e72cad952f02300dbe8a780f2e2d9120c2cd07d403bc64eb9522987c8b99b41336e6879dfd4326d85c79aba9c8410a28c1bbb25889f47a0302047c435bb500673065023100df973fda69802ebba7fac6d55b5c9668817850276485818946d71959ebca6bc9e0fd89e7b9e03dea6de1dff434da9519023056780934f248ee33e5cd3d4178a404feb78412ce0f7b97d3bbd5bea5a02257bfe4dda3b9a668bc90207f8f43caf4f5c80302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb5006630640230241b8e4786d155028e9d3bc794adb461d79b69716286ad9b26aa2da233fca5d22f29e533ba0a4625193694735e8a4bca02303012e0b4a8801cf263b02e563decc1fa5e5405714a9eea27537cdb303d3be1e975c85b25146a4cbf6b7e8b3115ee57590302047c435bb50067306502302b2960adde1673b042be3b5009c569a59a4a5bd8ad89f62a4217e0e78ded5015f40fea225843286d5b0d8f360c627c6f023100fe7341b933eaad05412b881ba227bcf017f0dbcd2491ae6d6ec6008229a97ff0b68c613e75982771b9ac9c4c2fd6a4620302047c435bb50067306502310083dd7af0a6a284c9d52b26fd7fec999d9646e808109ad722db94599650c311c1524a802a04adcb7c3a5471f0a512c8aa023066596e98125d0aa2249fafadaf8a88c0c1a69ac1b19823ee446e161bb37370a2c5422da5319f055d7c527970ec5b47f40302047c435bb50067306502304ed586ad8af8e680b3a4529bc2efdc9d982a15c8fa636d162c91f2c2a1888648a906f3c1ed19c3b416216893e8028f20023100993368270537cf1b28ca47a194d128e79da38316876535cf9fa36ea9849a7f895725471bd5fb6f7c2ae8af0d4e45ca6c0302047c435bb500663064022f0a8ecc3809022ca427c2b400da82e09d9db92f9b0ad196686023068a0f91af5d14251229c2e743857b1bd425c0bbf80231009ceffe6312200fef30b55851a773c8d074b15032a970589e961ddddc8cf440c55dff343d625580daa1d710499bfc1e1e0302047c435bb500663064023062f6e76925af284ab40578a269c073a4f4d3ef0dcbf29eed188fa01142edc39cf0992eb57b6973c5a74720011574b058023020a0f03da1f71792ac1fd75717ebad34ef43c06d10346bdd4db1e3ec03f197c06cb05df937ad3b0415fbfc7ff3769cc50302047c435bb50067306502302e7bc758d96832f534606628de2b58669f3c9e12296ae2122de5feee36ffa8e33ae8e49b53620519d3bdf383263231c9023100d1d6e15e125a3afeeb77120ead75a01847f999babb7a92dff9e419ac6041d116297f6de34ccf457fdd04e3da991a12790302047c435bb50066306402306d5bcbc98332a1e4e0783cbde571588e538aef4b08a2e6bb0cc0e5b000d6f95dc35c896856912772a33104290c5dc8b00230739beb14efaf091f2bd4a206134aaeba81468b1a12e3ff456c0be72916864677ace129d7a62956036dc137ec711ab5020302047c435bb50067306502306a41c1e9482b7100d60a1cc864991d3bfe1b06b51defe8289598bdf2d29eff2181cb9e6a26d87e3cb118e2dbe2fb15f4023100d95cc6e3ed20da46ad3ce0141d0e60bba99b7198e63ad9edc6eee147be5f3cf6b0ba7c7a158134079f09d59f8188f3c80302047c435bb50067306502304314f909987f1f2fb045cd703a9d5eafd7ea112174e3b8419d5ff79fdd21b3567c0bbe8922b0cdcf25a466481ac6b4af023100c3fc36d2ea3a61958858ee1333ee3f0c7f7396e88bd1d3f4e0bc80496375de489ad9d74a89bc6e5a28de8d1f654c11ff0302047c435bb500663064023018fa2ffd3cf18a1e1128dcd2e0b77313952262e3ee26aaa7f0c063d7062e5b3d131d82df3b171ac30d824cb21a84d59402301ad091a37a7aa3b1f1965920ecaf421716160a76fb179e13e230f66327a4cf63d6806b1a51a777fa5a534928fc0757440302047c435bb50067306502307a09b873330523602efa3ec90f7eefcb2ffc30db3c67059f5f2d5a94372b1c8fe5d9705ed4208cb551bd401a39dc86f7023100e8857b24bc8903ccf906863153fa9cd446098ce42d4389cbd555431a6719b92655705eee91138fcd42925258dca852340302047c435bb500673065023100b7cf0233c6f2caabd4c5bee2d3c6dcaec88965870f5cb31ab8347a21a8331195826be536e6074088ac6dc94ba9f2b9b1023038096c9cc72d4865213a1f62525424fa4065c4e3696b63a0a8a42e85cf122a803c8d3874e645f61ea0cbd121031b1a360302047c435bb50067306502301fa89ac699c86bf49d5451a302a25e0a2b4db933959daf280bb94ef7d0ca7b302a14913e4eed0ccc72de478c7c1f2161023100fcc40bbed155c64113b14c02b9282b05ea57e353bcee85f5d97cfca27ccbadb3bb1ca6683d0c5bdbccaa085b85260b5a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305438be9c44ec66eac9660f0d890bcc34de0cb88ba5fe03678eb3d0a0b3a76e78ddc0eb7442d4c484473e0ba16209e1b202302168c56014e8523d858591f3a98471375bd75219959c480da5c78eed58737829a48df07e8aa2989dc7fa77f51b1f9c4d0302047c435bb500683066023100878e2954e3fd95e1e03db0de957565cc5cd4685ae4f6ddb27b1c9e0408d4306f4bf5cf73865661d75b73145c6d1bbd4f023100c0ddd3798ef693d6d02596c225b1ee66cd99146951a22116733cbeb8ed479e363f89d4e0b867294180d2c7d24b99b92b0302047c435bb500683066023100f48e52631e87867c9b341d3c2c7e930a2e8d12059fbc63b25037278cfd3d1f5651da65fba515a4380cfc1f1e035c043d023100a1d029aaa11bfc6ebb0e238edfeb1d797b9ff0fae15a67752f295fc3488e0bf6cc6220f737cc03aa70d4f4f279b1f97b0302047c435bb50068306602310082a33b3979a0568f7ede4cebbbfbe6fb17c2eff519e02d67002a096c3b5bafeb09c30ff0d3634791d0199a61eaa4716b023100bad2ff156ad7bb2743af0325593207131e11cae163ed1b5e9f0e2239b871cab3de314b441f413c4da3eed7054c4d03c80302047c435bb500673065023072711bb114fc584cbe90a8525cb537530b2905ff9f753275fbe8089bd3e93fa3f9c4c48c51ae499166fd2745ecbf0284023100bbc175ae60268dbc5642e8c49c7f5d58b926549937390a0bca1c0cc9b26a082df69d0006cb99801aa5301ed2ad19d8210302047c435bb50066306402303cfeb9213e62e276ff26a65cea2cfab575e267b0e2132141fb6c61c8baba46bd27647f7f896f9abb19cc7d6e94685bb302305e5cf2f62f67a7fa101d6a7697fe6b1d5d0988f70a87213a99241b91abc1e759fa39d9e1ce7d438228e06f61773c81cc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d515665c73479848f3b6e67e1f549a3f714c282d8221c827ad40481bad022712e6cb8efec1f8dda5d1738dd4e6fb3b8b0230222b73cd40757fb8f89241269a6a93ee9edcbd3727be47528f159de9599bc8afaae0652d26e995b6ddde76a73f9359a20302047c435bb50066306402306c3e25a8ed225cffc691c47f56728a9e52ec19b74abbbf4a53646627a824159c27f6a67a304bcdd1927a9ad3e4a1be2802300d57e3d2e7163b8030100628e4c04d3d53c2e73c7e0a1c407d504a989ebcf12a41af14391690dec1648df630679cd72a0302047c435bb50067306502300cb8c1e340942aacf90581a8a91fe545dfe133376290c2f5fee0771605050d65a6cb21d4684d55ab0d0953d46daa144b023100834f508948bd8d083c666172cc67d988e8c2d59522feeee4e04824ddd8e25c16e65b051012a32263e99e77f408eaccae0302047c435bb50067306502304bee2bcdce7fc451535d29d71c8c6f691a1d486489850b413ddbb39de2025a70f84aebf4130d63568562a0bfe25720b7023100bee14dce819d7eee7572c71e043f9902f20e1ea9d85a82cc1fe713e7317f9e12409934f38f95efc980df6ef5812d2f380302047c435bb50067306502306c561becb06647b774a0ceef94f605435db84da8971e410ec5e1c53ad4e2b498344ef9e4ba20b644575ab091f00ec92b02310092e2bb84fda67c27b83405c0445ee85921430ec0f54ab7e6c38ccb7ec64454bc61d7d6599b1684f1db7bc5b3c6e1682a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b13ee2aa0bdd2e0e2451db9ad745868cf97626213ca260ffc05610ba6abe828283f018d8129d2eebc0ad88cb6bcc3129023100a6835f684c987f776a5876b4ca600414bf01b01734a8fad3a82f459b0c6545b4cfcfb222daa74ca8b3160c7cd9de14690302047c435bb500683066023100b749f644af1d1aaefe1839246fb45cf05847be3a6851e4d3a793d55343403363840f95225699ddc1d46853a9d40fec550231008158c189c1c1ae6fd01b92ec7c7cff19f952cc8ae3a65b1541662491eee6c2d628d67edb8d4108f139f5d27b6b599c8a0302047c435bb5006630640230407986b7a594368f93b6b38b68ffd2e2569901535c006fad4574affe6b343972d56ee06a0c7bc565a32fb793009782ac02301a89ea5be940ff173b98f71ce25d1b0dc20c6fb8168b717c0a229d71dc9e222ab087bdc71362baf1c766b345251526e70302047c435bb500683066023100ecd30a8f1bfca3072d90e5a629c3c3e9fe46bb2f16459a11783a558a777f2d725ea202fac20ae6dc0e0ac9109050dad2023100d5083f5246da1a291f021186e96feda6c25f640c1c59311733a49e597cc2b89d1fcc72762745002e901340a686ff6b920302047c435bb500663064023064a5f007308a6b4fe0e25069000e80b107f66757d3bb5d0fdfde3201cd668f42f77e39e30c9648bba5373a86977114330230758ef614a75b9976164b5d6cdb69187a22f81f479b8983e787a42c3188c62dfb9665257f37a753b379304bc9a3fe4c8f0302047c435bb500673065023100c7f6e0c26ab3fb99b8052e3ca27673628272583a57c99993d834d6c6a4c403a5fdd42095ffa5c5f40257fb44b7a208ed02303c2eb727b4f7682a57cd39ecdf37fb05702db12775b732c9575f6f3fdb891f64fd5cafae59e1dfad512f6bd6e074b0fd0302047c435bb500683066023100b4aa1eed7bb5a3a868f7f6d385421778b47b786b3faffd49553d19bf3c3b3e59f5b5faef2d51775bcbb25c671a2c8fff023100debd91e7bf79bd5d5f12d18e0a428bc6fae871ad37e6971d2ea44b3cfda25d221f89de6cf712d51f918cf35aa94775670302047c435bb500683066023100a35fdd08bc75e1a09be2fb22c3f13b4c368374690309b5316422ff22f76813ca7638bdaed9331c1a771d0071eaf00c560231009589a8ffc8f1f07fcb20ec369148290da07f8bf76023ea750157a9927c4dc3d297c6bfb28e81615285e587cf0886743f0302047c435bb500673065023039946efe120f40c2494b3744f5fb934550710d0cca6e4598ba93acd26c7edd9998e5e3fa4cc42dbe59d2784000c08a8e023100c63d59f27748414918bded8a8480b0ab5f03e92741bda360d1faca2f071ac825798cb87c08e306bf72254869cd74b2480302047c435bb500663064023043f24f3b16a766be74cb44fa489c0ed255a1cb731b173904a5bb4df9740b51b38585370e4c60f525338302136d97c3d802301d0304960b81980b06ee6c606c17285f0a75f87735e1ae91e750becea9ed3f57f618188cf8a4fad8419702fcec0131ff0302047c435bb5006730650230533d7865ebe286983de278acd15051673fe1f4e7a3f5307e967270833ca4dd275c487797984258d23d2fd22dc2067f01023100b039c41cf98266bd03ea5db4e78c7420e6a70d9eee2fe5efe0835cadfda5206d8ab1cdeb943476cfd9dbca52771294ff0302047c435bb5006730650231008c7c5c8697c578ed0ecd17016b7bf27d884775e3f223e8966977584d1f2812c62f71446e15b1c507a077bdb7e2caa38302304b6303e52633135b3aeaff2bd228832208f152fb70fbfa0c902ac2888bac03bb0b69a7e22cd1812c1b64ef76505c44c20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009d4a748d412cb6aacbd7ab4ba2ec6654acfb74edc32c93a9b0937feb6f745ce0e0220460b10dfe2228dc24e5cc97c5e3023100de41a754eb94f94f0129355352ddf2a3a2ba7e0522d3ce27ee074bba440882df0dac00f2b4c349d6968007f0fd07abfa0302047c435bb500683066023100ca61eac15e54fd7a455d0e0ba6a7c270951746ae87f8dc9855cac5cd326f13a4daf4b1eb9695672310b4598bf0f00a91023100d88f9ba6758aefa9d62ad50864c386890c193819808a345857b9660e95513332e96f2380b07eb7d9a5e9f635bda0fb160302047c435bb500663064023004adb3943135555890f2d0d06b86f576fe6bf1fdce1f3ddbbea1e826ad9f5b2e78bb175a45466bc8b5d607280f56e0dc023017ae52e75c7b7721dc0b7972349de667f9ea83208df4e642b2532d4ef7b31e7d660fc582a35619327abbedd4bde8d8e80302047c435bb5006830660231008d818bfda9d1fc345adee8e54954850e1343577dd957cbbde5bda092b9864708a47d18c9c7f162dfdf1539691656aadb023100c466debe2428a444ddb28a056b35383188c333f5ef4944663a5a97abcd5ede2f609261ef03db553a6d2c4a52b406ebd00302047c435bb500683066023100d59de70bdcc64fac7a23d313f1b05c08ec930eb3cd5a84f8558dc9322b3d3d93fe81bb555e66d33da65163af73424e24023100f7eb484a1887b91ef096a013edb8eac70b6edb0c4b04cb1b58e6d5b1af4e6426ef41f2afdf2d236a1286f877efdf1ecb0302047c435bb50067306502300f777a4c6d948031fb23d9441f851e05311949ef237f47a6a58386936311ab45a81cf52cef3b1c4ae0e0e6b8398e4042023100a629533a7e8bf739779c0f8668d296a3d53731a49fb75f1ffef90933d09968325fac1cbd1fafadbfb9a4bb5148bfcc730302047c435bb500673065023100dcb5172e3854927114e0c310c80b0e2da853b246b883e3b3d3ff1a02c473af00f1863a13f6f67ce6f8547ac9269dfcee02305e24c5919f1ea5bc4f2118b85a1a5d2510d624df9731f450e6cbcc4e60a58ceb89bf85d7df080d26f65e2f57b22e622f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b63b794ddd382cebbad838e47044c7d7e182f623b8e4b221a9e16d230f0a65c3bb9e80ae58eb06a20ae7835e3feac41e02307eaee790ebcdcb27eb3f2a292f911d3548fa181fb3060b155e6142c9381f8345c36c4ccba851ffc496857d85155755060302047c435bb500683066023100ce4cc22c7eefe89c7b03f1a0fe4f928e397683a0c51b20e6ed5641550f8f6c3e4546726abf8cf188e3d746894b0ae7a3023100b0b0ceb725b11eb207db045b5e53a8662e1c01bf484dd6e43cd9a919ba7707975a340a99687d7732763c09f4fa68e2170302047c435bb500683066023100f0a85c42233866fedd2d64ca8bdd881839c84d75eb6b91a9de596f5a895465de5232a44ab67d07335ed8c8b62aa51b66023100961e3f4fc214632793a722e232dc2433fbae1873834050fc4283a449f380fb760f272bfcdb2e1097ec87e468d7718d6d0302047c435bb500683066023100be0615f140717fb4125446dc5fdc2d34ac5ef321c5a93ab5e27eaf3a39386872e4b5da82b68f55ce895e198513b8f4fc023100c6124cc8ee6169bbaa532453d16a6c80efd0ff64ed86a7523c3c0707f82ec2fd2604bf1f56e790fc1b4ed305825831fd0302047c435bb50066306402301f2cb151930642397ed3ab55d36d2ed04981d28a130aa0f984d2dbb37c66546686fc656fec87edcc93582e903b550923023048ad8a53b4146babd8cebde4f93a431427a452b2f91cad7c2995232bf72fa1d30405998fe4f5f4df875f90596c6aaf6e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cea9cab2c7f4bdec26769ea2647898d1aa43d97056db0c82f628b651547d4e9285f118db67521e5161850f440b823a0402300604be3c8c01efd6db5a2477cf9eef4317edf0d3d89bdb15a18c6f82305e3827b2df03038f2ad799e624fe0f2a1768560302047c435bb500673065023100d349e73ee8f0a32e52786c9233db979f43883de71de952e5b322e153e7e16a032e71c09959ce28810a0c3ec60b34cf2002304fd8d21e0c7754d00c87104273cc67c020c753941998ddb44002461525f1a9005135391d584ddb83b5435f24d2904d1c0302047c435bb500673065023100e716f459bdd20c2c6fac1c62e258b6a5ab9b01b28116bef2c349a0f03126d956180e080446e1e77ff533d24890a67ceb02302e1e043d80fa9c98db3a327db2df2b54213509e8698e0e81d13bdc120df314c650a56970e2c5df9ce85dd716a05c08160302047c435bb50066306402306a2a8239df24a2d757edc8d1348e6d88b6aab493270fe6e3b1abc2e2837a2d9c12a781a862500991ed12fbf4d698af9f023012e1767e8ea7890888c2e766bc963049e9562cbac2395450193b56982a07ec43182df0ae60ab86ddcba4be1349e163460302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bdd1239e17e84671481c7925ddf2a39590526c65a4f4a530b9680a26b4d512114e8dee266c93b9b6f4e5247ab4b73e2f02307e80475c37de9fc61bc323e5972bd0dcb38dc6c61ae342973082704fd72ed02dd4f99e4991fe38cd0bcc5e9e69c1f9aa0302047c435bb50067306502300382b894aa6337b9a79a626d739a1ab089b3625c62e0bd3cebb95f1872bc059180c593280384864afe5a4057f0e5bc4402310087fa6ff2419cb475d96afe69fbc6434ca06f55b334c8f17253a9a4e72488a9864aa9e811667c87377784bbaa42eb31730302047c435bb5006730650230285baafb73fd36766857f3ff56d7f39927420c6bf8d55ea71b59ee3161506012d7e6acde108b0e554bbff8b98ec4d08002310088c349613818fbdc2b17b8b289868327102c6748d53b83c5fafb8ebccb48d044b645b720ecdec24eb710efa326cbb4a50302047c435bb500673065023100b6ad12ef0c7ddfe86ad9a1880e045dee95043c147373ed49f320922808969bb472686d4468ab82cbc67d0f8baccef8640230047d550a5af353393ab4e5599722b485fabace45318f21dcc8a893304ca299f5c2af6e6e248655bc8a5ed8ff62fcf3b50302047c435bb500673065023100d95c8fcdabb944ddcb0f9c5c82a38458c96a77b1a81196ee1ad52879ad56bb62d78c4815a1ef11d86e2ae7f6a778bedb0230541b671af8123dc25c0e158bc396dff8b518b401acd4c18d3769a7c6dcb9adb8ab6d541280a5e38375ed71cd458c79f00302047c435bb500663064023030cb940de6dab5740b83d3df4d135be10df67c68aa415cb20fe2ba58875709ab84a24a65e02476d8dd10659fa2e88eb40230529e8e84d2bc4ec03c5fb5acecb54c316c0beb23434701fc7e941cff4ea954ef3d696bf2bb3ed9e5abecf5107947ce670302047c435bb500683066023100e56e22754ae55a4558fa8a25d33038fd2dee89103a52748aee222498c833ae043f8d61aea2ab9d2fa24bbf42d14d0a5c023100f3f9b328c3e1296eba33ee58a246515646e34589f865ff546ff49573de961c0a8468c9e6b546ed0458a776a40370683a0302047c435bb5006730650231008233c494ff7978c9dc24ebf9bc39828ead0f25347611831a46ebe07b635395006f5267c86fcb06e170e32bef124287ef02305812684e0dc801c6e7b649ac71a6c7df692c3ec6bf77cc572c6a2e1aefc2d58848533abee183fd180b08c52ffdbb5ae40302047c435bb50067306502305ff87ad64badb157838e6f7c5008d43f74e093eafca76ef9f3475502414753219225ee155c1a4bdc2ea9b7c7e36c6455023100ea2b27fdc173af08746256316cfa00b2490983c881240fb38744ce493ae35970942391da7f110c6936336c082e763dad0302047c435bb500673065023054adb3be049e18694aa63c697367d2ea96cd222d22e2c650d20c09e7954654b1b28c7fd834d2c8eda4ea1e56e4ee1b02023100c3a7b657d2963b435374bf08341a1a2bcd0db95db5bcb1d9ba28f8ae59723a88cb00f6725aac9df352a02ee9844fc3c70302047c435bb50067306502307e4425dd6cd194262b99768d8b5ad78b53703742861bad202fbf6608654503c20e9bc1f6a16c00e0e2968b3eee9a84c702310089a1e896e708271a20994381a668aa03834205a6813282db7f0640039f6f7867d85a2dd3c1c0be35f90c0d41c26faadb0302047c435bb500673065023100b59033a306b185bca4de07cb00bcff38714ad7cbc57d984034bf16a21b85a437fec737b8357f55a4d522cbd44e0c0fdf02301a11592b32e2f0377ba08cf1b15f8a742a9d75f7ccd0e14ea3da6942633e84a8c13eceebdc15de0c480458ea5badd51d0302047c435bb500683066023100e5bccf1e28eee40eb429eb35bc83f2ecbe5933096747ac96d33d4d10cc2d9b7ca6fe3ab0d7a718caad0c763a41b3a37e0231009a0d1453fcac1bdf27f51fd911c8b150b5f1c37f20336998242444c1df124d2d71027bcbc2e2ac5a4a525c5b71b335650302047c435bb5006730650230730a72d976bd616062b25ab5820ab73009050753056083824e3894d3537340a1e6a36ae8a8d2b81ecb11e8d69f29a9ed023100a673da1db156ad74f4f892aff2ad392e94e460f94600e5fd03428f64adc414a1528a974b5d06d4f57044b74b3ae43eab0302047c435bb500673065023012b3836aac8d20de99025272dcbe6655982f40b58396d82d793df118f1d982db8190acb90486c829cd1e256614eaf7db023100f297307e2e4069578f8adb07b2bc97146c2dba6301fbab9e49a4d39b3896a5230626e88138193fb7d6db4c36bf5b59340302047c435bb500673065023029f00d9e828cf27de58bc6530e98899c4eb9bf9e789f6f5200f3acb23d76cff039856bf9fcf3f2ab5c78f39f3e3a0813023100ad706d2226fcf719ac8f938a80d94b3779f9a87cc33599d2035274a3ef5e21f7ddf85d5566b87da4d75153485ff6c8dd0302047c435bb50067306502303cb944fcce71116ed080e1ef8f1ba370f85df4ed1a378efa1fecf2c71e2cee8e6e6e574b9fe4709afcc085e16ad5e499023100a0a22722004d3fd8f47971fdd5b3be2e0708b62424f70e26a0e112136367e267beaaf678ec81117fedae263ec6bace760302047c435bb500683066023100fac4c01f9ea531eb314c5b5361acc1df889a7e05b7e43c48ad95dddc6624da2d5f8c1215e8a8a051cb3e7cd1ec5a9c20023100f1e96ea9ee9f6d8857ae0e4f4c392ec1cd46cb16fc71b1f4ca87d5c0b4433026a92c13455502519529227ab0717da6500302047c435bb500683066023100d0c05e1454fb98a711fcd9e3b3aa205f7deb80e2ca27a2d8162cbdd1c75b93662fb7a3abba0d890de972d9d824eb9ef90231008e4d0e4b3f57ae36a94dd14311100c4450d44e3029f8c0ba2e175f767a14f98c44c4f3d6b95867cdc599b13bb6d23e970302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230102e11d631ee8756afc514e7334f7915c00b173ec13aa79f60cba9ae312a9da0442c68e1c45a73a431284ebf2024ffce02300e44765d22b63a7adb4e1ea2c47a67eb64bc5674cfa21b15cd1af37f5c2af82bff0015570561471420b46544b56dc4ef0302047c435bb50067306502304d2cabb63cb9042aff94e86bb04a69ea842b47a691556f27e2f968427b6c89cd2756b2cb3f487460a530201ff90fb582023100e80ee4439a321767ca143dd063cedd547d0336b88639069c0e6dfe6fa6718f65c44adf27ca17bcb70779a6ba6d5d982b0302047c435bb500673065023100d05e61f93cb4a7b0356be93ccd986624837eea9854c2b2ce55b3950f7e33631657d378fc2974f6ae2042c864982841ca02302d9bddd7908f1e8cc169d3305a4bcf3dac31bd59731363b8a61804ed03c1c02834a7a277759c7cb72db3e4f6682b18430302047c435bb50066306402304421cb96723cf1edb4287f54a4ba9576a52d0fb1b5fd4e362c8ab7e731725fabc97e9ce54b86e9f207985cfbe8e3ea59023036e5a9051cf1ecca5ae0f13e2ad388479a39273e377975eaf7801554741bca67d765d62deb195e26012ef80c48c64bcc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301cceb0391ac7db94d44779d1df547cfc56dd9e093765cb2b34b1fc4c4be7a0a2069fd7c23e689483394a448390b6b7c6023100e247d7f44895dc158cadf19d370613478b8539c6453105c876e1e27ae3dad1acc5275ba1a1571cf030bf2950076ef05a0302047c435bb50066306402304767b4beb43164b540f0bb84dcabb4013b7cb772f47db2de54c27cd59ce81463824f50e20bacf0625aa605087e910f3902303fc9ef07c2d4ed33912092ec6c7063913190d388cdf29e167858854dd5db1db696aab67f667b64d74af8977d659af9420302047c435bb50067306502303df82519a6e001607413f56c2752205726fc6a51a4db9e65a6e9c3879b888a916647632eae2c26d2918ba70c592cafc9023100f12170d55e5ba8b1cd34a62855c0a6ec02c941ca4859bfcbd37b6a6dcba39276ef1c5597f90ec3345b0b2103d57232810302047c435bb500673065023011505ce53a61c780fabe54cf5544f2e9967f9719d6f2366726aed8fee452b641a91737ca288fc380dad5461f435270b8023100d0cb08bcc32788a0f6db3cefa009b17db5df31f105218bb7b583ec5afac1bbc433037114f7021c4f504bb552b47dddb60302047c435bb500673065023100e25ec7a1473d6a2963d2da2a8b6666d4a4d682f5a4ddc6a159acfceb303d6acc17438443dd7da70fb7b592fb5ac47bb0023038a9e94d75b02a42cfa0c62b06741f718891d97378c892d2425aaf3fa86a7aa7f408e585ab0d11190410d6a4eb4547430302047c435bb500683066023100a9e056c26412fa776ece1474eac56e3b6af2338358eacd6b4b8d82e9a217405495ec6376ef77dc1d8825c99584015d29023100bd27ba610b7b40d68f57965fac576aeede0f2e2a9a1cd8632f156f19faba9d37854bc183ca3b94217c4ea451128983670302047c435bb50067306502305c1d219544179a4b5cdcaa98990904e3e59c4bbf6a00bdfae78f277442aa9993d93636d96c6e35abe446e60764eabf50023100e7d49f9976476f1df8584909091c0977efff23e9498dd6963184ed2bc7e50b67251e5dbfa680512d30a575648701e9590302047c435bb50067306502310094ce83727c2b0fd974bd820cd19b85f80dbd5104862738686ff652a2d4a9c488f739c29de23225a499a55ff1bfc24dc20230747f8de0dbb685d2026c5f098485b90abd00fd9965ba2832c61bff83a7462804a786748973c4acc75b9d44e0404b5cdc0302047c435bb500663064023078b555ecda3a79006fc97acfc8ca872875f7633973b1975b0727aadb0c439b29bc11997e8a355668eccdcb058da27912023078ce84ac168331f8c0525d1df5e3a19c399bcaea055b3a50bbc17a3602dbc2f98ddba45d7e8f02c70240e4c6f74195f20302047c435bb50067306502305f6dc9879d7c6c0705fa2b216e59010352d590a3ff388da1bb4b7ca86887e5de175c396b1b08d5b2a702f6a52058a149023100afc71edc9a5d2c839980d9ca65f31de8041f11e8b08f8f49171997890c06058f6f78f30a768f31d3de49df6c9871b43a0302047c435bb50067306502307b415b2fec69f1e696d06a2500b16607aaffd3e05a39d4c584c32a9eedecd460f0ae834ff4211fb11405e3a9b88564d4023100aafb93e44075eefd21d1d0084c056815891d26d96d48e5078f86f1cb6b42ee6f049e9569d942114eeceb5bd480c8c87a0302047c435bb500673065023100b990bd6f3e8e1a75407df8ca102d3b462000ddc8bfb868a02ecb6a58ef5f0b63cc5f8f33671a0b43b9328c3a58164422023070c87fe5eebc35b713a08de1103c220bb7a5148bb1a7430ad72c8916f41b861cc83f3aaaf43667f28597d5b72f7926fe0302047c435bb500673065023100c18276ca03d2d2667f33aa8cb3e8ebd4ebff9af8050b9449c3738f4dbc0d6b57cbaf82715ee755282c6e11c8696fa708023045a495d404834bedd04448a3ead80b634e4cca10e6ec8ed2114dab3bf43c8c7cc118af339fdc455c6006c72a268f85270302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230670f3ff5b9c9f15bbb4780797f1ab6eb1a3ee747d45e94870e956b9039c7e2730c91b7af85783ebaa3cf4a479d39023d023100a4885f68fdbddf83780d9e917febede667508a65278cbe85439eff583d1bf341824951a3810fea5890b6d3b5d863ae2d0302047c435bb50068306602310095f960462c5d74ed5069e2c185e00a4431e6f52aaa4a49543740ef396c1d9853d8b8cc7240b7c45a96de90e7d1a47880023100bba0c5c41fb7c681502995077127f53781f7d82184ac8273f493c2219fdbc88f83b9102ad2c10effedc240e5ae9065bf0302047c435bb50068306602310096bf210b74b477c069b00636186cf718285369216f3c440887a71ed41812794098113ce7cf6d1b481dcd568f7b514b9e023100ab492a1ad621516b22fa5feba03620c020db0f99ff51f327de8a2e433546f431f5440cffc3433661b82a5b74c26eb1890302047c435bb500673065023100dbcb9db18b861f77073cba87a0f96f3c2f75e8ba3b6bea63ea3afa890a41e58bd3eacb37263cff8142b080f3de8f64a702302b9e45b33a22c6eb40166615696316263e6901a7a628a876c60d050091a7a2ba928dd0d90a87ef13d77dcdb13e388e590302047c435bb50068306602310094b5f4b1e3961480a82f6b1bb4de889417676ad704c6566a92ae4fc1e1cab799ef718f9cd22b5c2576dbfb584ef0b99d023100fc4c7e9a78769403b3a118ddcf734bf77100e13869aa26b640d22b69545a3229c3f4276e0c3eea661095404a955a18f20302047c435bb50067306502302abd7d612f7b3313bce6355b37e83aa72ea04669a052386a458d15c1953cf54056a9704d84bd0a51e74b95ad88fe034a023100c922bf40d875e75cc8e52ab5fadd40f4070ff8c862a71f65b63c65eadb1d064343a9e2dce01607bdc3bc208b1c0853870302047c435bb50067306502304e8167fdc534d7f3d53bc064c0aaaff709c3eeb0ea881eef45c3d451593613480e193330232cd7f85935f471cd06b663023100f8e985b40c98430435c3fc78bbecb491afac09422fe87ebbb21636c91819ca5cad412200876a5a87f006dd6e71485ee70302047c435bb50067306502304bf1bbf9a43d5e1a07db6f2284dab4146ceefeccea7edecd041cc31ee2f933eaebb995587483068e863039af80569e14023100f647b3b2efa5e0ea6ac967920878f34cf79b42977beb0fcaab4fabd62ce4fb89fc855fd9334af15d6f7086cc7f4697860302047c435bb500683066023100d89554c9ca0ddf3b20d723fa5a658ce0592f78f4131c4ace5509f0e3d821a7ad9ad16ebae75d62a129067252938ff9ad023100c8d00b4900c92c9dcad05cd50db9e417571f5061c7096387f360ecb33c6483dc1cb075c7625ca101cc10422cefe92c5c0302047c435bb500673065023100f60efb6b9ef0e40ca9de8045f16f51f6ff58f38bfe8fbb9332676d3828588f16f9bd4de5e13d68aff31a7696b1ce022902303842db8867fa4a7bb494aac8d2b0fd559f80bece9d3f2e1070d0f8181bc058bd219404e944b0e9630ba61ca76afcf7470302047c435bb50067306502304d93dee6f7bfc7e950f0432b8052b2067e77786fc81727b9f244bc07d10d32847fc6f0107c8a9fa0eca7ea26b50a7c7d0231008fa58a4b4d933ffc2a7217425733c4dba8cf152a77f0bdd453ed15a30a7b76902dd60a2fe5bb7976ee0462f4cce59d930302047c435bb50067306502303010b20743af9f70534b295938515acfc73cad01be42f7d47341c8f8916c498da4a1cb84d323e1f76a1d845cb774a6d4023100d0715e738e4f61b0f0613e144f3ef7cbdfeded1e22c7c24b1feb9150b0380a2019637ddd8085a65131a91d8cec2c44e90302047c435bb500683066023100d686c10079c6e12cd4baadd153f4ec86a1b3fae23b7246e682093134b158cb31fe0f0ad7debb42f08d801c01cf95b772023100f68708fe242d516fdf4c746ad9fb85ba841f04b97aed6d6703a04bff6e973f708f74b8e17312e62625932b49e9c085c70302047c435bb50066306402304ab3a50e57ddbcc88ba2df8352497e3e2f294e1e16dd42874477027922364c3f01d9ca2bca37246045108362b08fd05f02302ef5faac8225ab80a8cd206af0153034db6258496803d26d7b58bdd593367b70eae4ed233f11d054ea10618026d714c60302047c435bb50067306502303d85cc15ad81851d48975cfb31e6e690ded25e8193300bb29b8342ac93637249f8b92d377f8f0c6add110b85a3976738023100d76271deabc23238c883652634cc88afa2e5aaee91d8fcb9148f6ca5a7d5dbefc94afa18ab15634cd619b8a051ce39e10302047c435bb5006730650230268b984739f2a522a478dabe15ad96644a06e8423878d984b2b4c298c5ac328feba0799da0e595a9cc2ac933f2554dcc02310098e9fd8b055227b60500e3dde67f5bd9213fc7a8fb68c5a15fd34c03c162e54c95e7711ffec59607cc085fc9661e6fc30302047c435bb50066306402303c554ead775cb821d04ad624f977b2979d9b82f292edf076a85190d92b0f37ecd87f6d03efcdb7b9fc96656ccf8ffa0402303945a5aa68649e9dbaaedc99c55d7f770f150326d67128461617b543c10280aad4f8d4c224586175cd41fae6863bec1a0302047c435bb5006630640230648694e69bbaf7eefbf764e06d9a41a1a8fb9fcc8da56c99423b562ffa2c96595b1fe0676575ea6f89b4468ae6a61bee0230740d7499a5aada9659c3f2368ff68be3dd5c164f528d63f82ec085805020e54b569f54f22ae737b6f52723de491437ed0302047c435bb5006830660231008e4b0a57722522078741409373f78992674ea0b2123a3c1277efc2e05d799fecebeb5f324357c2634853d8ae5105bb1a023100bf5d777f887991a445eabd7b17c92121b3b4872fed5ca0edb58e416ce3658bcb5e7466f77b9d3a8119eb15c388d106880302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023023ce24f417a5e5308f38eb72e9b08607ef601bed7183dd34e78b77d6d7fbbdf70d329f534b827b6f2ff74d8f67915f9b02305a2f24b8be885e3c8e23bc43dd7322ae95ffeef5c9527bc9ff964498217f5ffd134ed165871216d7a8344118341b42770302047c435bb500673065023100afa2833aa9b2b13a03c11fcb336e16ba23fda5e55d8c6019cc648fb577d31de003dc82aa1e6f636575542d4a1fa5055c023043b0b20f3fb49e93145e314a9a0d3039434fb257a4815da4853ec8dc4f7df4f271a576270a715810f724d11fa1e527c60302047c435bb50066306402303aea93b22a95a0f117c974ac7cbca0838f53d79d2c8c031336b5b28accd29078ed48101168a981c94952ce0b5ca1e6eb02305c7d42fc40d84064b1e3415fff9ac78381e6a5eb6091b95d71ab65b1fb024437d0b0e7ea2074118f78fe9791b2cbbf2d0302047c435bb500673065023100de99286d1d4617e873edf652ae75c27d1777d1f0997999b8892a04779080150fb54a61cec1b1b0fee522fea21f7bd74e02301ed335cfe1b1cefb8ceb43b39472a3e36dfb8db348f444079a22a689f4e994ec48f5f95a53e22630cc6dc6c0bc859ff80302047c435bb500673065023100dbe54d0e160ef418393cebb86b549a308752f38bf209f484b5d7f1156cc7a1536e0489531daefebe7fcd62c41451fa0d02307e79148877d5511121806545dba817ce84c835852aec41ebbbdb245fe97b5f05e5827d3aca54716de118a85360b787210302047c435bb500683066023100897bc277fa69ce589e530015930deecc02350161378a74bda9007014c2f7200fcdc00841181b6d25375e0056d641ea190231009f2d79edebcd611c6518d72d3fc20307e4808aa5f37a5c10013ea2edeebaf7d431ee944a62d77ff81ed473ee2c4962c10302047c435bb500673065023100b32a4eb31ed5d50b0e147e35498d4e2dfbd1c1abc472303a286c98198a337b8b685ee92c277119c775675ff88d6c3a8502306b26f88f7e3f17776a2c870b03e7de89e5e93d3d8868ce903f6254755cd6bffe46faf9d9a93b5f2afdca7531889b30170302047c435bb50066306402307657d21bffaca7ee62382d16f91e48ce62573cb3ecaf1d506013565458b265f3c85b6664a138bc2940e7031f0d02152002303a60669f6ead41e9c17f552da7fff987b56c64cab6ac0f48ecbed55acb4da1c929799a5d0dc0197dcad27a4aceef35330302047c435bb50067306502310088205c0faa5609b05ba45ce65c787f1cd10eb05052c057c3da04b4b5f1149c24732632d0ffc16ae5375ff305000461d502307a827b6f2be51804c6ae93afca08377d0ab987e6ad73b6a53821b2399ba51e0cdfce18d8bf8757f41ad4401cf0b4e15d0302047c435bb500663064023001485a9919b84ac208d527056f385daeb235b9c779583c728c08d4a772036e9ff16b4ee96d110dacb55da1e80ac2df8102301cce1d9f6a4a554ea794300442b4c03d32c318da8e8f9868ba096d7d2841e1cf42cdf1435a130d2d9cbfca62a9a0cd9b0302047c435bb500663064023057627a6dc7d1063946fc1600e7ec84f56cebbddc38e10d80677ab98c2a35a8e1b6d477d03658c58e79ab5b19a4e66a19023070c60e60b2b13dfa38e273f2cc44393fa570dea725d1f07e701baeb286f052fc7d4cbbd61b6732b64b94d95be3754c5e0302047c435bb500683066023100b6901819dd40e6370945535ba3d3062e6fac3e0feb526adfef14d01593df197151c5d1e5d4792b07fae82dc90801ea03023100da826e348919850c4b32d6e9386ac55e7054587fa640f6d1e597546e404fba5da816444bc7a0aa3c84786faa18a9b44a0302047c435bb50066306402301b41a54056e79d77db5f9ec59eed449a44191c114f208552d082cf7bd14f5272bed370e576e2049c86e32c6ba81f9068023019f3c5f14e9fdff7a8df6582963784224b66800318ac327734e718e0055736e51a71ef963e208a8f1cc837d96fda12900302047c435bb500663064023063da3b3e27aeaf7f27e96684e382bb2821688f63c019583ae3837e6aa54d4f51e346262dfc748a22ff9ceabe712923e502301c411bc41430d07075126408767cb109e4e483e8a7b5dd001dc2dfa10684fc122e8933b53f2f4f10076184414bdbc0930302047c435bb50066306402302ca008db0392fc4f070d112e10a9179e20783a3c100555fdea93a17f8fc616bc2fdda198e3473f05e0fa972daa35eb6402302b740603faf8e6b5b1870ac1de647cc4bfd49ecaf5d3c1b9ba7b69a042becc72566659d2032fff38c5d506b6970374950302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100902355a2376e61878bcccfe7bdfa54591ebb35bce3bd2177aeeec5b0a9460b94b0a8c16aa659a61829136682bf681294023100c646f1ed7746786f1493d01972f1cac0de7bc7294e358b9d627cd8473330b2e6a2ede7feaeec0db8ac59867f608c64070302047c435bb50067306502305a470c91ddf1f9d26c450945f3e0b94c1d64e1fa9111c63b5acdd03612af952788fec0cbdf7be71537da07df625a5663023100cc0075172a109a4afdeeeeeb4b0bbbcf8be045e569930bb10168f7438d6aa70b5e744006865fa08caccc9935c3b047dc0302047c435bb50067306502303e3d6b4f203762696b162424b2ea9023824df38ad59bbb1c898a7c93c0479fd8faaf0635f1bd456dd3e61b58de3a4feb023100a9a563d2281a8a105cab792337c1cfb758d74e87e234bc3d71e69161b0c5b780a4c1a98e81638b36cc03fbfa18735a810302047c435bb5006730650230443ecf28ffa2fb90950141edab08af0bc41ccbedd4b5b49775aa1494d929eed26be1e4024199192d0e1f45645dba6fdb023100a18388af3ddafb8ee51f23bef99899c2aef1eb87c8b57b055f921df10aea907cea96e74b903b212bca26fa9c75fecd430302047c435bb50067306502307f9afc6863c8ebe59c592837594f7492bb87f8a998b9c7c8e3090a8463f72479feb069f4d00f994f9900a56d243ceaa4023100fa586c1960b273ca168f2c56463d0cbe4b01b7692c3ec357749b739bd5b199494c7787712a61621551080ef4fe6861060302047c435bb5006730650230266651aea811c261fbc2397b0ca54d96f1951af608e6eafeade5b437b9dc743660bcfd1b07495623a7a05908d7fc0bc4023100853d5362274910c95b7b72a3121e922c253fc45d5defcef92399e7436f0c2db1591d866d26a8d04aa1cbe0dfb4eba3ad0302047c435bb500673065023100c688661391cce58e3e8687718138c1d15c63d6528ee7d76346f1131113f3157514ec5458ce0e64a471f6d2ae7472e8ff02305ecd4623c7ee69c6b89c1e2ad96bec701f14290a92580cf0343a15c628d5ddb962f25d41233cfdd35d1b4afa6e4252aa0302047c435bb500683066023100a279d7c6f0843463f32fa43efd17d62efecefe9d3825967301d7f8037f77cdc6983cc0b71740f26f2c85f0b6012e7d40023100f756325170b61078f641ddaac6a7fe9d4c2c9be6e219e842646370c7ab2b10dd7c788fd5f2c96d5c7d8abd04c0031ef70302047c435bb50066306402304c72e32037759d730d4f41fa277985b5a81d2e50a6e3a1ed25e46a23d2b71a5ae1163e961c56aa725850546f8be746fc02307995f2999a91a49b2c6dce637571098ab2b762b2d92f55eb09c82e546cfab4c2b88e54d9723efe10b58f2f6a64e6a83e0302047c435bb5006630640230358af4146f40301bfd93a7519eda4032db62de278f0dfe6e24c10d8b11006d95d6987f7c02547adc2d6e19aa07a120410230234b33a68bbbdf5a2a8efcbb73423fc273523ca47f62a8f88c334fe026793ac8f32ce7087f9311e6abc975287c6e41b40302047c435bb500683066023100ca355bd19c62014f76f814fc5e3be8ef4d02f197489f994a1593d098ce7c8f61812b6f1e91cffe2c62ae7d26a66d1a30023100cfb561abb183cedd970a56001983d86afa1bfac64e4b3953075ed482f8987dd3cfcd1f84d2e456f0b34aaa61ea4ceb5b0302047c435bb500673065023100807bb53ed11a4efa975c5463ccd605ed9501e420fc3a791fd0877c02e1a0b61db1fa365a07cd72a457b0d76ff81bd324023077995e91a52f5a1ba90f9b631b7ade669d13608c3fb102d96a4858e22480c6063035bdcec1b98e68ccca6047cb6cee490302047c435bb50067306502300548e3d50a64f6059809089df08ff2c931383ba84bc4c4307896ce92a1f8a1d18ba46a4c9785e64bd35007ea505d0f4f023100a4194d6f40342742d52da879e671b9fbec2c2f44be00eb104ee4f4d6a951819a5e5a06e35d5be74dc613a62176697c090302047c435bb50066306402302589a756287a29f3e30cbb83400bf861cf83aa8ce8bb8376228c88bbd69d97a8564de3018968496f520e5ac5507af27e023057591a559d451525a0e3680a317ff6e80cd52b4317679047323580870cbe111e64ecbe25e92b8fda2dca77b7dd39a3db0302047c435bb500683066023100932edaff8f583837f58ef2c7f7555933d1df7203963d023a7ce2ad94431b7843a9dc1a582860cbb49e7ddb86f7e272b7023100a575a4103d053c376ac6b6719361acbeb1c3878cfe252d6e2637709b7d5ddc70365731e6c1358adbc52d55e975504fde0302047c435bb500683066023100d2ccec3b3bf0a7e071871d6e4c2ab8f642e60c6928a60c230a26028d6f3a73253d1777851239476c95be73b764cc3f88023100aa3a00c8251f781ebf1425b547e74c697a0623a637a5d500761c7be9def990055b8b6e67282e218125114d75b8ce1dc20302047c435bb500663064023059da9043ba1849a68fb1a1d63440e69d1ead3538f1478296be21dfb7ffb1a8a67706abf0979f3602ccf362b526b35815023005e33a2fe5eef1d7d89a161ad07531ce18dda8ddb88345e6ecfb823e81ed180e4c3c9d9938731e4ccce3c2682624e0500302047c435bb50066306402304b1f22f6591fc89d2936cb427205e25a690a602a6b8420b66536f9dc0508a392f759ac034d26ceaaf0e31bc4b740de07023020133dc27317969766ae92a94923841b866007378a3a6617f4f89f0855bc8635128a275a92a43fd64ac473360cc98d4e0302047c435bb500683066023100be9c6097adca00228e7fa4a255177b6a408b1bcee7b0032654480cb2b8925f355bd68b52faa2450235426a3d7432e9f90231008a360ac531ddc560391889317c27f7cf2f4cbb7b77af4493aa02e5597da1f9028bd1cbe7eb02c009872217189dc70cf80302047c435bb50066306402304b749b871fa081345518d92af43c75c484360e3e250631e24353a4bfc6955ac979f715223b02c89b0625f31d80c063df02300baca8fad14c8cdac8c4c9fc6f4487099de44ca3d96b445b41cc5d45fd95c3b5b1418c4fd6aeb38cae35208abd1aae790302047c435bb5006630640230754b073429b0f4b45c9e349d77c5a507f00468edffce83cbedec6fedf06fa49cf7f1a5db1a4dd7a5a33e9a49a0aa83e50230035ed425bd11a15e3def0618b6dfb5323938716b4f4323df0fa0d1ceca81ef5ae7e827dd93ea2641e5cd13879a9492eb0302047c435bb50066306402301c851bfc4d7ccd88bd83c2c385cf9e1bf5d8ef7628bdf9200d02d00df5c64858439754b4bfec98228ffc8f12915bf3da02303ed25738a68a5106f7847cddbc297588b22ec126c9551d5e65d661e8c74fefc814929020adf948a0ee540831507cbfe70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306dda04758d3ad94fd8baf0670334c55ea4abf48440640593bc885647f79388c7f7191694a72704eaadfd7f7e1c94efab0231008f2a5531c78b147ef2fe219bc5b8096b6a817782984975422958a35036c5bf6b922f6dff3d3a01ac3e04a0a502c503330302047c435bb500683066023100cd890e5214fc92b96453bbf9579a6be73b8aeb992942dfe0449e93afed58aab098100a1156f18580dc1c5a4b55d85175023100edbe51e6558a87efac2aa05d86433a79d49a66b2cf08a67a4d68eb41390e00e8ef1fa84119daa6c09dcb6e29cc9f7d2b0302047c435bb500673065023100bd7bf38f05716b918e434484fb85390ad24029e437c35d6e9d92d14b8ba43369fd964c7dd966b3703836b6b7fdb438fb02302d832c295e176d783121d0765c2b06161136fe127126b268334089e5cc6d118b06a3b51da6df479051989e9e547c78c60302047c435bb500673065023078ee1f6a6e70826c2587d97eeee44a446b4bde0ba28e3d525e1ec02da9da402ca117bc93654bd0f3daaf149a49c8d92e023100c56e67c2a0de63cea9d557a720211102ac5ca913a461c6b2f34ce4cfa41be46ea232dc9bfd1d6bdf0516e2a32471a9c60302047c435bb50066306402304c0d24e00b634e67340597a495adb027bf5ed66b0e8ae8a76c3d48e09787613d13eac1f984470953afb37c4f0f3fa1f902307a54c1c6b2842544a16a5a7bec6f70b3c297a2ef764a3c60d5e45a93e836a67a0d6329a2a8d9404526062f17ec9030330302047c435bb50067306502300d21ff1aadc29274994ec1dd3e76a018855fe3d10e9bc47de930de4b0260c43685a72e1a0c83c9248bd059d83c0b82f2023100af6524e7c8c3b2337410194e98bc368be4e4d8538f9c4c4516f8924bf926e0c3b9777b4eb66e35582327316f45f498580302047c435bb500673065023100a94ab0127f0e009501c13626cd743895c006bbf229eb5d33ddcb785ff487269ff1fca0f8260c02c97b76979fb3c4b48d0230531290f7d2f7048a4067f3d60d36c8093e54240cce7635252feead2df8856167df2119cbce9baa0af595001beaa20c900302047c435bb50067306502302d0d1fa49daf4ebbde58bd6eacfea37c1e36f7f5ce23eceb6cc45e5c9792182762ce8aa3a23da55d43e7e39c34a4f3b3023100d6701d39dfda3390500a4963a961aa6aaacab8cbb711cf41dbd4a7b88100581ac1b0ed1a24ef29c4f1f107d335f0f71b0302047c435bb500683066023100b34f5345f985f4a0c41b29a4913dda0c4c5a034d7fafa3d8535dad3c1b6cab447252a6735388b163b7cbb2377865ea01023100b43d9ce1141aec5ed1e6c822d8641d3eb7074d5eba6b822f2ecf84f28de4455b087ff99704baf4a48c974b3d302000370302047c435bb500673065023100a636fd94aa6a91f00f7034422a0b180a468c3450efdbae65dcd6dacc3ddb013a347e5ed28562b68838d998328ea7c46502304a14ce7ea1d8109be0fc8861ea51d25724a6cc72c79f49b5019debc7ba29898355f17298941da81f60c31367e43c07d10302047c435bb50066306402301ef8c2d804581eab0520e079e35434b8034436d2878ec2add261ddf472279ed74618ff5fc84f50293a6fc854c90e149402307a60d8f63008d27cae1cd899246ff2254903559dec6b9fda935ac2e7f09e8cc95c5f8e6e372fcb9f7ef10dfdbb6e45e50302047c435bb50066306402305c72b3485491337b58818909deb28c2aa2f0adea1d351cd6030d44d7c47d776f68bc567bed67b814594c77798de634ff023060d8daa35996aa5d371c938a6b5abf9da4b6a45528c07556399311dbb113cd9d8c75e4842409e51fd50376bf51543e1e0302047c435bb500663064023039a2bdf8435c432eda2497ee1bc60558e83e0a7f95dfc9b354d6fed3e6be6bfaf70e2f2154bba396a3e6f28d9c2d19f102305e360cd8df7a40e3c320215b013531b221176f4963cb088836174cdc0ae6b796d711017649802c12544550e1e0a41d300302047c435bb500673065023100ccdabeb774fef54a7d3af7c69a33b49f4415da99c6b154ae70e52a32574b71c95c1ac80c1d42d89698be50c0c7349ea6023021f8998b37bd7e0281d88cedca20268ad0f0f1760ff0c5d3c208a1ef1b08fc2c7e525bafe8e3d398c922f0670890c8980302047c435bb50066306402305deb566048b8048da9f3a4f8e84759cfe5244a5f768c5486b9a4706989418535775f2220850000b739201a66dae3f3ee02302bbf6a99f7542cb1a25ae46bd283e1a8ce77a79b9c607e1b10694487b7f92209799580c2b1fc7b79936512ec9c17169d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ea1bd09953332bb5f4d87a3bceda9823e9ed2988abb23773902d2a93389f55825f54f651a48f6e24d1ab1a85261ca97d023068593a9cd5cdcd3c389ccf41be1f95afd962791419364063a4848cc889ec3185264c9aab38b8621cb6c16a98e7556b600302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d02849ba1f41ca414e703804056b78cdebea968958aed6e979ce61eb3c7ab66272bf018be479fd2f28e15dcb61d680a2023100a44e122f3da14459510059239f56fe53fc51c35bcb04051e86b4f698ad383bad3ea0646ec6184a649e833dfe4ee70d950302047c435bb500673065023100c1515708e792536633358f29fa88f64e1cd06b70414e982b1c013ed0a4de0f3137c6855ba943c928e4ab9ae976e8343a0230009de247e8cdb5717d656640ed7c3169b93cebadc8a9725dfe151af86e3a7cc3f167356a1018143c1f2990f2a34b35170302047c435bb500663064023044fa76ccdf5cde3640d5641edd78c3467221a8bfa40783cff33ae786505605201589c015a0fa1d72ca4c855c2232183e02306951b239755607e2317fc5604c46c092e30139d916a7dbcab09e2792790ddd4005059acf2b339802f13826a63d00932c0302047c435bb50066306402304d7e5270bea9669684b7e81cfd484beb97603a1b8961891db3408784c13fac4c23ea59e6c9f2456131066cc9c5d805a402300af3de174c5c78ae1455be87956f0039fc04e8a55cf8a6a4479bdb9f511c59770e73940862f1add1c56e02388b6cf6e70302047c435bb500673065023100bd6ce656da9fb4f7d5dcb25d7d5d941b8077f8d37a1a25cc26fa9b3928174d5bddea4009bee9c381101ffff8c9a7c2f302301043e8e8a81c06f9ff7b87e0fd2e2853c469a2f6a109bf5560b026a020671ccbe6ab8a4b2300f3877068a4fd808a8cc20302047c435bb5006630640230103e486e5fb57aacea5601455b35b1eb34435ecee7d5052b2d9c72fba38d385e3466c59af76ee90d140cf17d9d133f5502303aec59b314d09c7b60d74450e5269973fa47e9e7e6f363c5210020d434f2afab40df41c7ad428c528a0ba7c2178317da0302047c435bb50067306502310096a8da100977425598fad7a6ef18eeff18a07b7c95336b8a7a87cf7fb8b6ec88d098029d9970a8ddd90005d3e5b315ca023058a60d0f04872d029051373bce6a8d8b19d38bbfeddf135aa09269d79292bad6623e57ebe603889ac970c313bfa5bf210302047c435bb500673065023024e84227c3ec29e90443f7a078249b057fa240b34bd9b1548c210e695b4398bf4e2fbc3bfb8878e50d1dc28097ac792d023100d351f1295e0efbf77e02d0c3034c13b8dfc5ca5cc1b78d25d4789444ca5ea486afacffdc38b67eb2dd55d2aec93753ac0302047c435bb500683066023100a8428b52c4f2517b38475ab696407a80a74f3160816feab16345cc31727d03d488c7e86811ede9ede8fa376d2cb3e4e00231009870a63b490c922f0302138e2bb61ec5cad1f598467b2a8cf16a82bb91d8dc1ba6f37beb181770589419e87e2804ba860302047c435bb5006830660231008b1e7f09ca7667df6e3fda4d80435a36e3b30291e999420e5300dc15a2e526ef2c8676485b74748fe314168dfcfd42af0231009ad0fda8e176cf16688a50fc8f89574a12cac5b16bfe632ad8b1498350d2a65c3518821b11725d086a3c3ae94e3aa7140302047c435bb500683066023100ab081a7346746a20cff8ba7c8fd3eb8c2abed10a1299236ee7078cb853be4a62af8d65f4b076db65fcdc2f0fe4e53590023100814c5de72332367aec086d7eda67ca2ff3570d526667b96d2e4759ec86cbea310cc20d46d635ee5babc42ffcf995bfbb0302047c435bb5006730650230520b3bd117404a88f19f2663474d0a37fd59e474d7bca2d94b31c100d15e526b77860f7d359645b3a42ea3b1cf71eabe023100e8175824a792df810b796f98b4743c5c8eac14464fe344b75f8e417ed6510d7df9a11ab734e325d2352aeb046f6862120302047c435bb500663064023019ab63424f9bc69f727cc0d2c4eccaa52eb5d82c49a6702656d963b789655a0c6e1bcdc1639326782d7145cd548a3ac302302825b9e86160f2d1847455a856d992025c24152757c5a8d7a0f521f9b92bd5e27085920b4aa507b9e43a4f6aef6fe7db0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023026e6f24cacc98f61ec15f426682bee1b65941a21cd2d302e36bbb00b8af14963275b7a3991999574f134e224dc97ee1302305818d6216d8df7f61734936a28ee88a006e7d3ef655c135522b43a2276a017ee1f5423eae724cb5f520e4c0b1b60326f0302047c435bb500683066023100fc2f15b866b73c79ad9adfbf7b66e506a10a4b0ad69f3d32c478c707adda7ae7a997b7a8e562c8c3e8650ef6867af42202310091ee68635acd4735f9cc638aa11bc6d2fc22dce8fc17b2e349c1c6479cebb0f2dcba2259835077bcf6605c0da5b0d6c90302047c435bb5006730650231009bdf33a6321066267ec8ead26727909febe6d2c8c7f1b2b256d689a31d9b108cbe06e1513e2f7531fb7c33f10326b8cf0230779ef498d843ef987ccc77cfd862d252e35535ca68d04281a1c38717148de1237b5a471cd5da763d0f6114675aae01e00302047c435bb5006730650230055a15599d1b76727a0c97644b87b38608a413a8323fbc0ec9a8701130682a12a400c1c64ec754e96176ffdc6d296eda023100e156f1fb72fa829b170c5b8e53dc9002c324d7db6e8e419218e4f2129eed7c8d6b6a34d731f0f593fe6eba7b04de7d550302047c435bb500683066023100e38e2c3138c0ea3a915c72537a05c3126ecc9da01403096a4b2a510be40baf2e106f91bd2dfdc9ad0e347525534677b3023100f5f3486f8238dd77d04d9293f45cd889f899480831fd15ee8e0a5ee8052b74164a7555b1d1e8f26953d92af3626c30150302047c435bb500663064023001195b7b1d7f234614f188b3ee8636820d7e24163b5c0243a96e5e3fabec7de85319c0a490eba46f8f04693b4da8271502307efe89f1f61889c217a2be71fca3bb7c2d0962f9dcc92c641efa6353f7948346efd03c616b4969bf279a46e5c3761b380302047c435bb500673065023100f0e2e0b7a5dfbedc28970ecc585d12437dde7714c5eed48a6762f4475ed43ed604770e487850a5ab78a3b6758b7ebb1302300dc7eefbe205a4ee407f7009edadeb468d77dba30330f3e5f21dd06fdb90b92d76ef97e073954f09624710f95b2bdafb0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb50067306502307c0a5bb4385150d49003eca63bb03e2f12270f6e06a009888e69bf8803f6439d2d47b4e97a59ce3e714a6a60517f48a00231008fb5be3f202ca7db5e3da391e63bc94da433e31cb98834fac5d1295c34abe26a997dda95ad0076287faee826b7d601ea0302047c435bb50066306402305a1d0c3505d93f640667f64db56d673192b051f196935e92471863a2f6db64b8820e7575a85901380671e4ccddea357002301338b2508bb0331fe3ee99aea8c0d6431eaeac4746f431f932c39e11ee8444c125e0c323dbef0f880c23f37a20c39ba90302047c435bb50067306502300813581c1b1951a9903ea5a455797c1b2c075adcc3e0d093eeda826302b3880c9cc7b304bc3442b254bd81cb98877f0c023100ab61914fce717d51b6760c8c2b97ccde905c36cfa7392e33e3c84d79efaae25190c69651c642a63c99f92ebf1ff23de00302047c435bb500673065023100fa87c4ec09f1f420efd95090de3630596671507d82e867e76fc385b7235545a4dafa30b9c53ec2876a31e1c948976f1002302079c4d9d6616b660ab01af96a32fe97aaba44434d52b113f81d515da702549b3e12439569879a00649204c0e4f91d7f0302047c435bb5006630640230707c40685238d8eccf8b0c6a64172c78f72df3d633872389ee7a083d74035a7de513d47cc654d851270b5c3baf69823402304e8bc01e5e5f7085d7bc0ab219892ac6f1f49787bdf37599deda3fc2bf4d2ad00c3e3fdec19c2996198335280633c6050302047c435bb5006730650231009234e1eb8ff5f130d017e716504686cd97b615999206f40396f1b42c86a72509642121f513604d6d83e223fe2e18474702300e42132cd15dbbfd6bc500d43fdca413bd4a7a674a741125228e18d8775aa55bc2fc175d333243830034193547c7718e0302047c435bb500673065023100e702f85f98f6709bd6d690f4ee51c4686d75b62a5fae72f0e42130d160992315b6ad0af1ed5d6b43a2866ffc8732f4e202306f6bd3287ff416240c77cf29aab3efd2154c59b93f21557db302f4656b902177f00bbadec5ccd121599b3791c703da090302047c435bb50067306502305392113683922594d2011aac8c48ebf0e112d9676bfa7dc61a5791abab5aed258c66ff2ff1d3849c2cc22727fb413b5b023100eca900bd66252c8bca9adb96395324f5206dc0523746226d9c1fca13aa76fd49620ad11cd8e07c8054816e0ff80d45b40302047c435bb5006830660231008df986ef087cad1c10f8c6026b809064980fdaf5e14a8f0d95144f5fc8c4efd12190634eba20174651d976f6293b2bde02310083b869f51735ae621d8192a5a8712246198c6dd213c829d43c1528fbe85546de33295ddf9bf59ce3b51fe0d1aebf820a0302047c435bb500683066023100c27d2728dc275bb07bc78e57577adab5da487daf77f8b5a6bfc84945ecb7d6f05bae41b6dfd0159fa34ccc5e93303f57023100b7b6919d58a05b67984fd187cfda9f018f826854a856e6560d25664607d906a22befddb28e0a3f57835aebdf180424b20302047c435bb50067306502310089e1b38dd17e00c587769f7eeaad8dc9b4944bb2009a24fcc7b97838bb8a6bf56c44e97afee7a956e75a874fa30805cb0230484213f366e6e64cb64ff94ba14eef1219c6adab4c3c14a69c748e8d7c8cb263cea72056b7776db809aac6727e7be3dd0302047c435bb50067306502301a386845629785553300cda6a8d795e8e3b81b0c7aad629c5b1c0f814f4b2508b06483ed1b2adb744783bf2ac3361975023100cab498ddf3a68f73070e5ac2bd8fdb3654311ed7093bfdf1a6f0d0bb8aeabeac29c967819bdce9104bcca39db6d927230302047c435bb500683066023100d70c918a6e62b82789889a187ddbc86a3558969226a429e8f1525f1d50e3a390b658f1ce6278a918e78e1ecf9fc7d4ff023100bc328bde690a8e0a5e101aa0d569a6e1c10edfb1ecadb9c2bcc53b651fc508f88d262e2a4576046630d91b6815b9c43d0302047c435bb500673065023100ca67bb084077f9ff154a359fd66d70e69c4e8446acfdc892f051c390d66289c0f03617583dec936af988e47743a76dd802305af08e9654bd225610a4bd62c716dc53311886766b5093cca036e16374e4714472a42c16f82245d703fd3700bef8439f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ccf488275d6ca60472f5d367068cd550f8dad32603855b9cc1704c0d8a91e68f6aa4f1560602a9b150022912d059929902306875a22b67dba8582ae969ed12197f9252a06c2421283e4be63bba9b3fbfff16e97c901dd8b5951123ae29c3157d11d60302047c435bb50067306502303e50b7e4463912f1ccc4dda67a30400c2d9e2ee8570858a0920b486bacdf2bfeeca6c89ce3424891cdfadfa4ddb3303e023100cfd7b9ceba05f0d2e1e02a0b972e8f8273d6065b65e27be1526517e79a7a42f956ba0dcced76d17eabf0fec80b92b4420302047c435bb500673065023100816d0ab448393451c282e7b5b7670d6bb57c51067adaf0299c6efd4da223f5af3b4043761a83d2d606d25d2aad3061b60230769f4270d931a1d8d143c68d80f1e6ad803198075a542341447e48af8c49e81c2f2a8a1fbd74513a6519f579eb6c84220302047c435bb500673065023079a46bfdede22af0e666b2d8043d60fce384daf795d380b07ea7a53bff8e544a34bf90e15341679900893b0648773484023100da22b649a48473fde40b89945518b42adfdf8002ac6224600e5af34b3b6c261e1ab32c00f18c8a1727f101cf48dcaf9d0302047c435bb500663064023073a4baf69b3914cb103b1bc4048372ddff14c5cbfcf717dbde4a0984e74f3bbf2596bdbf66c073218b5c405c8c6a6ed902304f448c905682a15c28d702ef090b79f32e19e53fe7ac497db9a5b701e22a41dfe3ec1cabd3cf17115a0b2d8d6ff5b4dd0302047c435bb500683066023100e716ff4ad142d972b29a45ba059765dec0dc8bd055e014e476238a2987d29d98c088ad3636e64a15b71178a3cfe1a44b023100e6e31d0d7b0c2d87a78bdf8a8d7b4797908fffd893868a5bff05d6edc53fced970901160d4b37ab29129cae8421b042d0302047c435bb500673065023100ca2fbae796e7d86d048114edfef440ea5217db981017577b1b9e9be6a5c844c97ec8783fe201c39c9d92a09016c8f4c20230748e23c8ebf8c1c8ad211c386224f75173839cb4422da5c0806a0b48b9a6bc6c6d2e2c5221ceb332393a232e79794dcf0302047c435bb50067306502300ad86140e3c9690808ce78e3c1b3fe1fcaa49ff14ec9526d3e38f8f2e21ed6414e37e60c1fe5204b4dd6c608013b686702310094a7793769a69ceaef7c08e9161c403be97073ac13fef66d57f9a44e023a8156b1b7149f792f0ebcc231a6c8625557900302047c435bb500683066023100dd5260040d6988aa38f3e64e749daac79fbcff94d5d63eb52851cb53a45982f2d94de82803a02d431d87ebad7cb07c13023100ca497ebfd85ae92ce823675c77230f2770a9a8827d3c375b09a709b1ccbffffc99f349fb80299c8984b96cde14b4af360302047c435bb50067306502300f0f9a02eabae0de30da559442500f52204a4f13b12a8ac0692d5be9e4a9664be37fb93a96bda1ab0a73814cd9fcae9c023100b0672afd16e2e8a785226261c4bdb2d3a5c2fe72ca285ab582a67fd62c10efdf34bbec2d4df3d927c47e6199f7d7a10c0302047c435bb50067306502301c2875bec0975f084e3bea549070d5fa3a9b31596f6d43e6f0dd656e5669fe657613ac5458b3fdced2ddf650cfac338c023100b7bf670d11a8448138f3af2a36f5f5b7503a3eabb126d714e4f4b5793f6de84e74b00db22edfc9d1abf9f1b95ac1d7f70302047c435bb500663064023040c43a32e208be65dd28c9fd57786075b959f48ae42f3bc4e3515816dc0bd6847abc5fe2d7081773938b61a842659df3023055c2f6bc6a26c10cea277b39cb98fde195835722d24c47653cabf713420743082322ab82bfc150d53cdbdc8bd6f461ca0302047c435bb500673065023100f72bd15b6010fea57b15fc959429d7bddc025b169cf81f0a1362a7746f9904295bfacbce53fa9cdd013ddeba509ea26f023063ca9a667e316b49114f6f95423bcc40864f0b057fed8940d490c63b999980d44fd7be7a97576cd4fd0fcc8ce4c0f6d50302047c435bb50067306502301af3ada85fbfd88d6e82dc56749873f87eed37647e5ca399b991db9599a18b9983b36ebc9a75683e3427d9c7d24107a2023100a769e1aaf7c6b155aa3c10cffdb931d62bf667ea64422e5cd5cf2d5938033a6ffb1f3b09765edd1e5ef1a7592524a7580302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300388a679a2332140e8835860e9c042d6d6d9475f1035716caf41f80247fd7f00c8c95b226999671ec7553cc817a4a521023100ec4d069e4e67221bd7f759dd0942c656d95a253af1e2c3d81da2e675f7adb461bb46c5a73cc1f8cc77de311d399884c50302047c435bb5006830660231008e2a9035270430ff099e02a758ac67587bbbfebc9acc5d9393b5c11860884a0e037c4622216b15ef7bc43d9fbc48a225023100e10cd8d96c15f5ddd0ee029e6c2dcee15865560b68b75a30ea62d409cde589598d21bb2818ed82b69d1506e3eb29417a0302047c435bb500673065023037c888cf3c96b0723936fa0713fc7da1411b2d4e73dea31b52fe890f1558be33ae2f4c429e5b3a5919318832f02edacb023100a06234921a3300bcc51228ff32b5b68c87d71e6951edec5a5c7c5f80b978d0e7cb72757901b932eee782a24d91c939ca0302047c435bb5006730650231008e6f2882274f6864b7581dae3a995ee499a055f18d7d35cec2fdd1767c367fff950efd6dec06cdf6bfe4df4e2daf33b70230393bdff540d4ae869b0bbe4ad4edea698e79f5b454f77832943a5c0f96c2a80d6b8d546898e4fca3b5440c953fc47b740302047c435bb50066306402302ecc8310e2591a20d00ac5a5de54d53a475a0257aea7d9775999b72727e306f3897de2e3a57b550bfb76f26f4507c5770230687a27168d285d55f3e4d1d4e7d3006f0d37ae689cfbafdceb4a773aee23d444ad6abded52216054a11a4ce9c18619f00302047c435bb500673065023100a335e0629f8037b4bce9b877756ad1892df9d381898d6518816fed838c7534074b9921004c09188cecde4217fb090a6a02303048620fb32f9b65c857e1da7295dd2c3fd0325729433ba29a060379521e15294d231194cee281f074a86f83089a510b0302047c435bb500683066023100fcebd7f64eeb058531d2e0668a74abbb9f5be5483e9b6391e94de9a1fdfc1df2aece76eca02ce6e7fff8d5860a997e51023100ee20e072c684c17f60673ce5e0730cef6f0f2d0681e54f9160497246ebe76b7c1d25c175a57016200a8c045abb00d2960302047c435bb50067306502303062df3c0ee5fdcb83644c7dfd1503e3c9eee6a9aa3c0074c996ab6d23ab9a635e6e59769c7355e359be4ccc9672313a023100f61fb7a794b213e4bc5582eef9c2c25f6ff967fc528546f88d55153bc902b146b7a307ec39815afd8ea89c7fc469ef390302047c435bb50066306402305940783985d1edb5b48da9b5cb9818fc695e71aea4ba5827d580daf4738facbfcc382c577f9c86ac5e7c5b775a5d06b302302342e922a4bf41164b64633ecf28192ba1ed83323111ef46e2ef78838fce4f3484c8e1861f49ef177e2ffe38938924610302047c435bb500663064023012098bdb98d042629002105303803186fccad881485878805d34228541508f717ddd56465683e3e58702cca5ceb685e30230777531c98d0f1db4d9717088250a940e445d185d42015d149a1030fc8096193e24ca1c4cbef2b865ea5c55f00ad753ef0302047c435bb500673065023100b9bf1aef9292963415e1444f00593e0a0d2fe6fb43cc2809f554a6cee86cbe8d912398e9db73318f6ea1730e357483e102301d2df3ceaaaeba6dcbca23847ccf8e0ecce686e8fb1be14ff9c45e2d147289a373a3665cf37e4547020810e5e12235510302047c435bb5006630640230105eedf6604a7d6427821b1cf15076ede296d7e0fcfb4307552883827441a7954e16b5648ef52807f704027c98a7fbb002300c872208a2890a22949000c9f783bc3bf95d60b70d17c2be5bf5c323809ba6ad32168b1f8d76a9149d79fc136d9f82360302047c435bb5006630640230134aa215ca6a7652699fd0a20162fec58d25bd1519d0a386d5140f34d1cf954c206e4bba20e729d8272e5040fe06385502303ef2c1bb439c4bc0a9752f9a7e4e585c1b4bb154d2002f944a10767536214cddb0342980b57b7eae36c7ab3c1f4708560302047c435bb50067306502310095e43190d750e80974e790999dc830656445aa8ef208815b23c0e9b6ec2d83b9b69fcd68d1e14ea71a51c61685cb2d8802305dba1b8f7fc3a9330bfb6fb0777cd447bf7a2d028c2c152e9a9aaa04a5c71d195ef4c84c0351037a5f73ac3c58e3fae00302047c435bb500663064023074aa5eac1248e509ddd2582db17bf517feecb414556b4e807ad1d90fa1ead7188f4d1f5192c676f1a512aee473936d9302300587ec8812880d5e587d85304d3cf9b10f7aa96ef6bf859bfd106c40501a6885d33cc4a78c95c8f14d97a6165d0461c60302047c435bb50066306402307a996a71b61888ec64de0dd3e390b89a68941caffcc57181aaa29d37c63fad992332c830f6f81b937bd66cb3f6879b1102300eccf2549ce8f8b2c4354ce4e1afb643806162f3dacbc00d26d3fb0c5730ff263876190a4c37832bc8e0748337decf000302047c435bb500673065023100d0ef30074771b700fb52dd7db4c0c5bae6483f4745a5470064aa9c3bf01fd3feeb2bbcbb3079b9796622971127f701cf0230594ed76c0a976779d5ed39716e4ef2a96731fc3e26fe9255f0fcb1f8a26c02d65e6e48cc7df98ca171ab97731eca431c0302047c435bb5006730650230451c16d7c42025d9e797b3bf16c8e7e9607c79ded1a950afb49f4c63cfdd2a60ebe4a0243d9af385d6ca05cac713d72e023100e0792eb700838af93b87c7e68cf424b4a9cf345bbd4b1de447d5f4099e38edcee49c051dfaf7f6fd7c946ff0d4e0e0d90302047c435bb500683066023100e45c1921ceffda304ac53121efd850e4af6cf3900da4683a7630d06aa034f1dc10070b5f31d2bb6b146839afdcc4822d023100861d8a2b04701e825b38fd11d8e89058359c2c3ffd030cef680e440179a9834e5508ac9dc36b551809296fe7d60059420302047c435bb50068306602310086f3ad589d766cab7c8a86230c9e13ce8c4c254784e260c99edf80ecd95496566df11e82e4a1b2570f160a98039c0d86023100c7d2ecabad957957a3dd27700e3efa65ceb9ed11c4965395d0b276cba44364e17841c40bfc29a9b12e1e4cbe940516c40302047c435bb50066306402305e3323b1f11cbf1597d1859175fd43f341b02b87de60d4869e3c7a4208d43a42ce0649b2979f9133bd0f2ee3bd94ba6b0230134a60b90dd55315f901427443792e75e36a85324ca23560d8e7c5f9d95021c2cbebe47b86fc3f320bae0449c17cd71c0302047c435bb500683066023100958657eec08b832e53943fdd795df132985eaf869b506b52451d47700dad6e15ed6a6ce6cb4407754661dc953903761f023100cd32acc0cb46e9d1460ac0cade1c76bca0be1c00655e60580c600870086b1d1b37f16663707fdc15583fac21d24dcf4d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008312580bc52c7aa34adc03e66e298c08426049cb1f9c022658d38ff7a9220671c4a3b2fddf427444d70d2d9bd6bf76d9023100f6deb476657c035f5a568f4269ad20d1b9109e61001f2d74da265b0a2d5fe7b62bb3215d2eb4c4a45c199b82c23f3fa80302047c435bb500673065023100c174862da39855574492decbb77ee7708f7bbc0cb2d276c267941a17a095f3990bd9fcf9ec7a70741e99b51761ed0b33023046cff3f437e4141c8d68523f0ea1113bfa2886da0205550aef3cda83e95797279982852ace650c10f63e3933ae76de5c0302047c435bb500673065023100efcb5e200ad7e8e768e5fa7286041880eff5767b46f9eb0d1ca6cfad480eec816745a69958dbd05599cc8ea99c420ed802303bab3c8af37f8a278ed846c0eea98e0c45e78a2caed8b8b72ad66eb20a20e0e1726d02505fdece1981201dfba9e91f4b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230598b88037795d2b17a48e307d2d767a27328a86281b59f2b6116fdea3eee47b6dfc75bf379c6b107fef3ed3a84748b1f023100fed8fb0757953d91ced6f896fdf1b6ad659b7e219e546d60e381864f9c9e7e187a8c113aeedc6ff03ad3780df83bd51c0302047c435bb500683066023100c7f1de300103df723d9b2ecb5eaa1b3d71d8c0511966ef9b86cc738b60a9cddfccfe064eb79f3b7b70d1885b8e10218102310093d088b54b242d65540415147ba3243c064477a3da14cc88cabebb79614e37863124b2d7d921aa5841b24356d7b22eab0302047c435bb50066306402303f63e1fd0dcb513d2c46164b5f76caf3684cf2d342c661ecb9dd294eabbaad943263e568784644f7dcb97c592acc22600230327e89b14b4348b30930311a9865a5b849c3411a66215db7402a8840ee47a4719fc78972104a55b33191486dcf0b79470302047c435bb500673065023050d634b8c520970d72e2f103f1342deb2a5802c924f8d372cbbd5165eb086567f6a456144e81b688a068b908dd10555a023100a15415e3938b3fbf5131887575f2040166ceb32957bf746363d31d896bca98d15a864587f316c71863beaaee93957b8a0302047c435bb500673065023100b7a03b8fff295370ba11b91451b6c9b6e10285ac0cc35e5935238ad1836de0fc6228d6841f1ef0b5bf50a3b8ec78d0a402301151ef8b316608885ce48378e09067869f98cdf8e31889abe484859c9ce33cfac19427921b65a503a3fdaac1f214d2060302047c435bb50067306502303c77059d64ec4196492911517c5b45fa9b9e421e62fa7aadb62896cc979e0e87d354d25cb8c13cd6c4d6e327b6b194a6023100d09efd1c2722831f5b3cf8dd57048560d41abc45f8de044bac6b3055b5070c9e78ac3d76fbde644d9edc53b8e1e3c4960302047c435bb500673065023100a29ad5e0aed58041f5905c55247c327c03c87fa2d4b50d09fc113bbd5059ffa9e8a85ccae6c46fa0f47794dfc6da71c202305da4bd7c501b3949ad9ab54620c36a8a3743a65c454f08f0787ee21d7df62576243ad7e662124d722269cc957d1822930302047c435bb50066306402303c9370d812783028f20922d625ffa4973bb3360de0755d635ffc9b881e9d4cfcc756e87af48364f54eed7bbe21faa661023037737a14abe4ad0740da64e610f36dde320dc813e72411b57c28f77659c13c6341ec492b937c2ae04afd64189bb0786b0302047c435bb500663064023015fe69c852a761a3f43c39f03d668569381d3510f17477de5f44dd2f91736e97db2d02cac05677dfd4221a36ca7a77ae02305b5ef557ef7cb83b35f6b34ed8676bc29844e89d3ff61559a761834d9c165a7cb2e6d22e7a84212d9759b462b5a001a20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230089ba6c6c7c4233f0c61a3b755a4cdd7436312166461f9f79782809c87ab0d79ca832d8111e1c211b0e5d721ded942e8023004f1f65d4fe0bba23d8364ac7e10919fb0317697f228d7980cc42944d4513bdafb33cf7299bf26b2af4bfd725ea1a9a80302047c435bb500683066023100c7523f9aec42f57ec6c398bddeee05cb44da3c56aead7d7b34fb8cda39051138730ad7384a326bd4155bca86025af0a302310091c44fef4f78e7f42a237271076e21c792e9c5f770c3da6fa3377b9f5e3a082abb5f5860f811640a5c0a34db2cb63e530302047c435bb50066306402307022e6f77c9798c832c02429e649704044bfcf950c0f41c8fd13ae5c349d8b1ed3bf47bf14cc07ff5ed4a1043d136dc202307a597079ef27ebd6dbcd1ab266ec06d80062026529f4baa1342ce3a9a3a521986eb7b9990023b1ef6b14866e381c503f0302047c435bb500663064023042a9a2d8711464d1079570bd30d50a617e643c0c168e6c2b769aa6c7403a9277db01a9db71640ec32d8385d2cef5d3c002302f363269ad4107a184e7a3e9d1219929e1ed91837bf69559828503f36254838ffb9c35bd67a55455723ced2cf5dcac8d0302047c435bb500683066023100c590a51e41a8283145f7829913f64c962f1df91ebb2fcc28b4d9448ecc8bd780dbc009df237dc2377e085a2e86017328023100aeb0580cc6fb5319b297581ad2098b053b838523cfbfee4e1ec5f3cf899449d3f193d7ecdf079edf4cc248bc82de112a0302047c435bb500683066023100c46cd1d6d31751e0a0bfedcf5d847775e9f1a8019403ef7063b7517c20d5b2e7271cb089e58ff4f517712bba673c4f0e023100f39b80f5a72ca0e59a1e72b5f1bb67f98afceefbe46ffc9257ac2ef3e1202b48ed1b31c944fdf9af8f1fee9956234f3c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304045938e581eb59bdf4e1a50d3a1eb6c406c457c4f4011d24642a92776e6bfdda611ffc1bf0d33071077301686dbda9c02304e6fd9c5d4c4828125af4b1ae047ce84a629b6d3d012ac4f4a1946819c57a13d54226888e63f527cbb2a06e54378ade30302047c435bb500683066023100feb098f916058d473b7ae2c605d559ce23f8ed2aa69e8791eed6aea0932683a466ece82d51624dd143be923194286a69023100de356c25b844ad9b75d79e56cf4f8f9de2282424579d5f0e4a511f7928c126eaf545116e2ab2912f5560dcdb974ec9a80302047c435bb50068306602310088ca7f93b80d86a4755af6fd6298a96f98e3f97da8db9fb5c84c08a8c0f2c0e99556049f8080cf4f1ab0f03292cb8416023100ca986b6c86be04c4374afaa68d375dac083e0842f4da1a86db3ca5344690d28fad70fefae7c558bbd6180e4ab4e33e890302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c6fd8d33dbfdbdab1460496c5bcec27fcf838f0f24a762ef392ac79a9a5f2a312085a23098cb1feb8ab716a0ddb7762f0230764a17ba5a99df0966d0e56fe51d8c991ba38a87d2c3f7cb42ad61cef577f2c4a49c94ef9507f1f93202ba6bca0e43f70302047c435bb50066306402306dc6d3fac66240d9d2f54623c2cb3ecb8d169236d1967883bcb39afb33c9e224f73ea3e4d6bf8e52c13b60a062a93efc023025880a225bfad213bf443e9a90c4a69fe16fbc83bdc96eda7809ec7d93826f79db6384007469f2f668d3f2a99e489e560302047c435bb50068306602310085abc27ad7ef79ac59053e5846f1856acf7424b1938a4bfd23e3e7a62d764183e267c688febe7be22958e5f404d2e6220231009825cea37b88e4c6338c318d888e10a2301611f26c9be320d2f751f26f9446ecba90cd59781fb20fb5f904108f7416b70302047c435bb500673065023100c6fd8d33dbfdbdab1460496c5bcec27fcf838f0f24a762ef392ac79a9a5f2a312085a23098cb1feb8ab716a0ddb7762f0230764a17ba5a99df0966d0e56fe51d8c991ba38a87d2c3f7cb42ad61cef577f2c4a49c94ef9507f1f93202ba6bca0e43f70302047c435bb500663064023056dfd88d3f2d531502e20dd5e1d4d6ea324b33e08d6874d99dda05b0d8d3ef5de33fbab6cb9b5ec8d88c916078a334d20230247df4027eafad36681d2c26cfcae4ea3c708c2d5755a23056ef56058be3b57253ed53e420d07870657852f16f5b31900302047c435bb50067306502310080e652cde07371e97399272c8300a31849019df629defe634140837cbca3894749c9b323f7a9a2b02ccdd4f6842925cf0230584c14a222da14393c502005999fccf098b07e4a471c845fbef6399cb0b4eed9391577b2d9d4028d63fea6ee4c9113090302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009c1488d74a62ef37d47e7591eba90e52e104a43f817ad591afdca14c5de9f2465a0139d01f8ebc94f910124e5a2978f402302730436ede4160edbf860a462d25dec4f4de3648b16a2a15bf2353057c7a176cd9ec4d1ae96618d601251e977a4ddda50302047c435bb50068306602310094305e6465488294e12ef5c2cf7481e3dc730347714d9fa681550df58dd328eb4971dddd0daf645f5da0289d5f90bc8d0231009d5f50306a9542cd23813b38719f42476fcf83fe3f2ffb95cebe03ade4f00595a1b99dfbaa4ea0c408ffb832aa101aa60302047c435bb500673065023031ebe0b05c26dec12cad7d8ec93ef236cf254f499e778e3439b8847b1f2482f22a967fc0a993cad8002c8a976901ef96023100feb5884fdf1f62536e23db21d5041be40dba26ef83782bee7477882abf122fa861eaf482e03b630e5578fc74cc0085510302047c435bb500673065023100d463abdd5a3045724f273c5ae7e26419ab271eb534e405af54f04f6e4d2c5b7fd98b62ce5b2dbc8f7d7c40f09461d36502302edf51eccd27d547c60ad1ece3a344dec7236e0677ac8c358390193d939d13e23e8b27f056e0105e60be917d00db74240302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100cb6cfdaa34a5a51620335dc03a79fc36d10c6e5125d4498e238a24883c1075c0d13c681d1224a1581f162baba960ee4b023100fa74dd2b016474a530f4e315efdc768a375830eaf857162eb3b79695a39a46b9371458339e950e0b3815b36f256f62070302047c435bb500673065023010aab7e31bb32c698ddf2e22102b9b520d76eeb383a24a6de47c39c0138da33869081f88d24fc1db9f740231a851b93f023100908950e37745e358d2fb7848e431c901a92def89f1487f3f9ecca5006ce54a4b517b1a934ed60ca1e17f1ba10978f7d00302047c435bb500673065023100d430132247f5dbb8d3df909fb347e0e3bcb7099139d723685727c5d973f2f54807018cc3368ac1d00dfd9617ab71975a02301dc9cf36c0e8eca06508be5d29503c629419246de451c19693701fc3d469ca5cf03262c20afa299bda9596c89a7865dc0302047c435bb5006630640230561108f9e7bda53a8ca813b70688468cd4a2e5e8ab262e38ddb620dafde828fd75eee0411dc1f99f4500932152a5618202304a1fc200cf78ee102832c48c33ec0b6214b76c354dcd0b983bc2ac05c22d21c22922421f3d2ccad94f6c18de1adbb40a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023022cb3df927c3db9b5f549cd216839150c1a8cd77de630d51e29947ff226d49da3dc023825167c82111a367826ab37e14023100dec12ccd8bf301be04137f13e9edb3d99643dbd9f88a95a305cbd18f696db399148536a6d7734a36636cf03cc07667a10302047c435bb500673065023100e604982623796dcb16cc0d3e1fba244d79672d82ac6673c6834f8056b5aaeb8d1b1f900616912135b93ab2d4c47c85c902304b77ca5e04c4af8def86f148a8bb7896c3148f2020ad31f0268de2ae68fa5fa3504e37a87a1de8f513e145a10c845d210302047c435bb50066306402303c928cbe55dcda203ff169288ca9e13f754687d2c44f1d14199e11f902431279ada35ad79cb69c0e08da2df83ecac70502304ed0e5f64ac48f54a46dab3369f1ae577808ad0427f532f2eb25993f421bfa415a088b9825c4f9e57362a4768b9b2fbb0302047c435bb5006630640230557f328933ec74b087cc7e738c1903cf242d60a40a8474ee6f5895ac3c49e0dd971656e61486989d8e3976b3bfbf1976023024706ea6540e4581725faf2e38eae0ab516520f33a045d9908f2c7f603c88007405873ce8e69b529c9233a7210844fcb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023068a31e4e2acf919e91dae7bcfefad4f96470e672628887a9bd1dcbb561845f81d6dd9fa3d7ce617a9ba920e7430764b802306e2324a13bf7e9d97fa64eec066e9282de22e59956d03e4374bf3e9ed819ffe65045c52f7d3866ba379787570190449b0302047c435bb500683066023100af2458d4a0c6159321171871a21bf27c5d1a3e9a54b06d2605233f07185276a4d881b69d7ff26b75c580408f7ab2efec0231008e388b7e974c9e26efd1d77684474efae7fcafa7b24af3a96fe0e8c9adaf069c21221ebcc420111f855dd48de68948a00302047c435bb5006630640230671e5f076c03d48366a65bbecf0f28e30aa8940bcac71624107fe881beca151bccbd1803935186918e9d34ece57db76402305a605e875b0e1b733b9e4cbf806d79b59d04200cad5d1c222b5f42ca729f8ba6f36f869d765fecb88a41c5bd97579f200302047c435bb5006730650230448b132d0ead4520fb18980d7c7a93e893b992e6eaaa2201f6cc10ed6c666d111334d13f5c1e0a369a55659dae638475023100ffea1b2e9d4c7127a7604fd2a085428d7c34b53a0a503c7ee3500c53738f8565e681fa8b6621b0a0a83cf6b4405be4840302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100dc353fc71c2701f54ccf5802856b7a2dd3fbb74adc6beb14734c35001cb2de8baaa5042401703b0639f6ccf2809291c4023067e21696482e76d4543f2e0926633aff8de83ae7af4320a971ee24bace0abd03755d1b3c4f9f78dd91e90b826628a3dc0302047c435bb5006730650231008ca7751198ab1fb3a2107267217abb95584f499fc3ca01b1b55985b55f0b9e5d7e9686c95ffad9baaf305efd0349ad1102307346f143cf0caa900d759397c12815469bc06b1c15a2b34837df55668b289ce91de91a874c7e970f1c0d0a41d37884dd0302047c435bb50067306502304c3aa567e2ea28094271aeed2c6f709a5cc5e7956b97af95b0f808aab9a86bdebc06ef793e0b080ff68d3cbb296dfa0b023100de0ceb7d143fdb77588ab84ff3789abcd764d45bae20266196f205479d79d51b513c8efe115ccbc143e9554710fcb7d20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307da25835ffbc933c999ee6aeabc69ecadf9bfa3aab18e55999f9879fdeebc540bd71c7887a21ad9995843d574d3f86e60230234b3e47d5a104afa753422a71c358d790f1c956ad7f02bd9ffba467f0d91b092a42330736d5b8fda125ef6361dc11130302047c435bb50066306402304f286366e13cb01a37e4082e6437de0624f7195a8a560edd927100386cf11a805bc3f82832ffd6c089bd3abcbf33a882023044cd740fb4553ca82beb0d61ec092e085a629aab82d89c10b674abe29b80a6918ac4fc6d8bfb2174a2032035dbd356f10302047c435bb500673065023100b08d20d553f283fd1e5883327984d6e8e46be76675e6d4b5207fd4b51c8742e80262c8ef01ebe0961fa4084282471cd2023010c6a34369acfb71598957b3c8236c99e3a901e9d369a4959bf93483a835f420f063cbb42ce07c330ca64812b9fb7ea60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cc3c710226269681a1ae6b05048b4966013d58a96000067fb8dca6921a89cf3a80dbfbe3679133cf37291ae15de23be102306f7c61af77682941c1004655ac8b83d08503b167a3f414152cffaedae386f92cbf4b884eb53f67f03485a2424d9f75610302047c435bb5006630640230267d3202b2fb756b809bca7ad52639c9d1035c5909d7808d3696c5ce150466cd187ccbecb96c98e4e0493a60dbe0592f02307bbdc06f4cdf3a60bf7db666d3f51a83786fc912bdfffd3f99238ab19eed1ace8ee4115cacf5ce0ccf682faf00d7735a0302047c435bb50066306402304aaca40818ae5ad323c5068aec36e551552d0c947db738fc05e0de58d9b1f8267c234523dfdf1202cf6a0fa52310c10a0230151cac055a4a79dd694628dd0d8cb5c0da11202cd8f8218efeb3244d0e61ce2ea79e5859f714a24a08365761d33a552a0302047c435bb50066306402305b07244613630b1ae3a928188c440fae5a48efa7d4f8bc036d4f4f4411cb21e8df53881edc177f381e5f62c0e597746b023077b38de93697090747a314e017e2e35a6debd9a075b89bd5ef34f23e3c2c583bbe41d44eda04c6580c80cf9665f2a9e20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009cfc692b5e45763fcaa95b49a365abb67ff8ddb985e24aee45fb9a33fbad6eb790df079740de230b30138568bf9c3fcd023100b5973f02315a15ad9faf4e66f2391bac635eb6a7be9d6b5769e7b078df0b97744bfef8af15d76b8b989a560c21c386990302047c435bb50067306502310092909b0fc9e3c8ebfa6967ef5bf7c3d6d178c486a0f1f91521abcb84df96c0e724abd16d2f79f01132b3504a4afa852502300f9649f29573c3080b0bb79981409379902cb54c63f4c09a17d38c8f8479ee737baae7571fb90a031d744dcfa48cf5ec0302047c435bb50066306402302b3d42ac723072ecddcd506832621993b4ca47e454c02c1dfdb96de0af5d1b2b080a470458e42dc89d6856acde2fded602300711bfc3ad95f3766430ad95b293dd4b613203a5aa1e14d6abe08c659d7edbabd8ca277b824b6d1b9c072e6528be9f650302047c435bb500673065023100fae9e28e80f7b79f3f5b53af163478c380e5cbf1a08ae2e7f29437ebe6eb6a77fbaa39e32877a315b96ab8d3d1fe552d0230590ee311133bd3087c9ef56f574cfbfafdd137d50ac080554fd68bd6503a51618c410cb82546e5479f501c6a3e8238cd0302047c435bb500673065023100c3a0ebf8d65c873801870bc38d444c99fcba0c91212e95e8d76eb6c4ee82aa646a97766ef4c83b8427eddf0f16b91c8e02302a43eaf05d8cb6bdd3b6842454388a040ad4e7ee1c00914ba741dba9709aef7f9e302197c58626266b8cc58339552c140302047c435bb500663064023073eb90e4223b597be312397bafe949b6ae7003e80750b7fc3d2b768893825957c0a3e3e8a0e787e2432d172a1e3db45f023014ca4d9a5dd6be533e8cf80d164435b2f3bcd00696f4360bfb27ce1f49be8caa9f320d2fd6a963dcb3782a6273462ee20302047c435bb5006730650231009cc834d7638844bff5c6beb74df5a64abf584ff7437aac8f0642b3a8c57976b2ce828105a69fb5a0fc550c12ebeb448d0230514685e08ce71e0d4ab4d52c9c570b33f957e461c37e8b0d558150854a991f6a3a849fe1cc8d3493ca7cf712f4d69c1f0302047c435bb50067306502305c69fcbd0ab08fa8e2fd95d844c1fadaa4aa28a763488cbc3973071b308cffc726d6509b32f3b48c2bd687bee044706e02310093b30f17976133e009feaa69ae7682c9cfdeb38ecff1b5b0c55169b872fb47144edd62668a8ffa6d7a2207bca84e6e510302047c435bb500673065023000b073bcd213779ab52486d1806ffaa0ca29f7e630c09e3116955c2300e94903c1f7a2baa01d36d2d70862670b753d62023100cb870d84b524da222ca2db40df6cf64783f7a1a4f3be03f5631a9f29cf5086202128278fd070c8bf649ceeb452687de90302047c435bb500673065023024485fa2772bada29e49c0149f888ea592b6d8c847b572dcb1ab94a3f401916ef6e3f49009bece6e3b83ade06379bdb80231008a0e04cb9525509bca4c66fc1fc6403bb644ddca372c6403c1567554125f133c61778c10e005c981a478dbdbce271dce0302047c435bb500673065023100e870d62ea1c7495de9a218ad8371b28e361a90229e9dd449e4efc666a336f2087c122135afbe5ef0ddb369f7dc38380102307e498b06a349209aa6c3c33aad4c1951d714c2139c981e6f96a19295067fadfac89ce8f9f6a824c0cfa8949d9bedec170302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306d2e3945861ef1864c9905eba076c30501d409db296836bf3f72ade0636a57e4f36bdb557394b99ce7a3e3d2f41e33dc023020ec6dddc1013e486c9858c41e48aa6463710344772edf0a0da82c7607cfdbb84a23daf657ec61a4dcfb1923ec77c75d0302047c435bb5006830660231008dd4e76c80ec314468277209b7f36a7ddbec0636a29d9499dba244824cd8932280f0712975d48bd8959b1f8dc6961b8502310096d89fad5db5ea4b850ca6e0bf29804d65f350c78f2ffa3bb5942f8f59df29874604ade933caa40aa1a8ff6241ee4ddb0302047c435bb500673065023100beb76feded2c75a2ae26bf0d4d75e0fb5faae6b7d7e032e4f445d9b06d65e57084107ae8787d3e0b58793f8272048d4c023023f1398528d46ae3d1a9379e69c0e664c14b9b42a3d71b4afc3058f9b5956f355c5f1b3537a95527312b76d76f0359f40302047c435bb50067306502300847027900bd2b5de68e672a2985b60d6b6a7ff4e8b1a66dde9f41b71b1b5c7c6b82114fc1ff222cbb5cdbede9d8d551023100a27af5143ddafe80646b88991511bb9a8ee175b78a2aada03119cbc0fba1cf33a1321a90541661ea8a97e810ee21e9a10302047c435bb50067306502301a1aeff209a8cd24950f6f83b14cca5eb7ecd55ce8537575d1ccba304408a686da69dba27dfaa598f005e5ee8365abcf023100a39e67b566cd499f99c7db54bcfdbaf86b3134102b9bb1009742d4b4f3cb7c378798f41aa4fe2101ddc199cdc81270100302047c435bb500673065023100d062ad67ed26c96c3055ff3a736370ff275d04a89af178ec5e48b7edeb1ed59ed38671ea9db728d575e704bcb112acb0023019bc4e2f81db365a3ad64ae504c08b16a1d35f42b215c500b4a7581aa760935f44b561dc1d8b1d3913bf955c5509bfc40302047c435bb50067306502306bf346f1b0b49d605411a6a4a01b4d8bbeb038abc8e62bad6615c13c0234fb75eada345978aa005958731203d532235d0231008188551a61a59b5b21228a3bddd2352deff2ec2040ec0fc54d260232df7affc172221bc859d74c61d2fe3a9ad3aec2b70302047c435bb500673065023100ada88ac3fdcaeba5a98aa6132df83c06aa23472d8e8298af92a422bacb4b417975170cc5e049e19890bf00bed7eaa1ef023055b92ebed9077475e2acaa27596e83bb8c29c72627c0e9b7d416e33ec745ec1fd19518606b74029bd1fc0441805d2f0e0302047c435bb500683066023100e318de7e9a091256b3ab49d79ce779351f8f61fca757dd28af3aa53c892efdc4c5c8659e0356cf4b56214d1048953f35023100b4a9d5e5e46f0913811268fe4abbafe993f151b53c5aa0fd97e6e9209ebcca88b433b0d57cfbe82e31f3597a5929f92b0302047c435bb5006830660231008e3a43a3eb23c313a5bdbe41e163f1ac897c2a1f7356f2e510dbeea19951d6dd82b65b06110d81db05a7f4bfcb3a0c1f0231009710169e8d7a423bc5aba559cb5e9a27ae4a40b540e207b8da2a43c7e4c85e45bf19db72337cb87c0848f52fcdea1c680302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100fdb9b0bae0cd720bbe7c4fee396a09b5069c33ae505f1a5dc9f9228a276fdb57ec342b56ee3e382fb68f1ec2972c494502306c19a042b17c5d2c54e6a638f19a6743c42299338bc9f14072f590252381b1593ed2e2e067ab1a8de6e470e5e14382f30302047c435bb500673065023100bcef0e561b3913dfbf9b0f1acb9577f5ff0f42ed0a6219441516ad6f3387977d5ad763d2f8da20cab9452bb5187a23330230691f67ae9103778beef82acd8e3d4b98ee6b6237580c0f5c6ad486f6398b1908a6b2d7096ba9808d5a1e760f8f3f45b40302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100e5847e9e31ca9c60ffe16671dbc5603e26b7e4488744a5474b717780edad448ae0bbbd6a8a5e3af59cc2fbece66319fd0231008686598b54ed8afceaca9380f6e830241c80bcfe488a0271260e5d777ed709dad54ae717a8e4dca0bf45eaef0536b08f0302047c435bb500663064023034a933bef5a0a3ff343fe07d32f07ad16cd15ef76baacd0c19dd075575bfb610ccb2e36ab58f46154bdd6d78fa8fdb1a02303fc3f5ad9cf753df0aefe776314bac3b44989e084fe215a2213914c3b812b43b4809382c663d3dc986c6c19e137699b70302047c435bb50067306502302d2647eaac93a24143b8590b6b3b985c51c75924777a51a324a94c23733eb0231b512262ddb6097b083ba5560bd13ffb023100d55e0cb0f80cfbe48c198af11c4ed5f128363d8cb6edf66bd8ba73a0173706c293d32d9b2b75603795c398a52d9984590302047c435bb50067306502307cc940016d901694da98d9fc3d554a8cfae95d12e06de65f37b20fbdd45273a7cf1189309c62ee98222a98068ee5753a023100c11d337f5951510c70593a3f71fe325588faaf675fc716747b8eb297d07fc764e126e324546225a823ed0ced37051c1e0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100b7b52b1eda7a6b29b5b4aab04f08ad403f51199c1ae7958bc27d6ed3d5f6b96740f7f70a8a243958365a4bd46c50b30202310085fe826c222044b63a40b7e6e97ed6e7c51155e326a4d14608f8f13291f13f4d506a5bc3c708d5958d16b2ba02a0b05a0302047c435bb50067306502310083b537feeb7038ad5e03fce215cf239dc02e49637cb7758311c4c68f709dc87edcc05694257884f5d8cd29ee2afeb1520230514fe0c7d5f5bd4f5a1eb2baffee851861519dc146fa32c86415dac89ce2cea152c1ae94639e8875a766b5eacd1c340d0302047c435bb500673065023100ecc53595c279570e287ecbb907005a6d715c5ef573f73d22ea007272f43548a26103eda6763500ac2164e669786d12c4023024826e1b7677905a94cac801d06c7b24f3a1a5219167a3ec1cca142594dd03d09741fb9f799ba1f728495bcd7b2cf4a00302047c435bb500663064023020e4846187eaae19716a3509eabc088d9ab83d6a27ff87233e4bb20a9c11e0060f9bb261fb140abfa5d40560ca3267a302304f88319b2daee6314fae27e84d5236af13f3662d645349f17d7de159be8bc3300b974b087f614db5293219b55dddb8490302047c435bb5006730650231009e1831d9d9e729c7ebdedc6895e29d9ad17ea2737edded24d3f685e25b17fa2a4fefd703affb7f2c8ae133f6f7d5ff82023016711086ba456407a5a3b85df3a96344621ce8cbead0c8531b315c008b48ff30a2c2e4261cab56fca6b794407f0912e90302047c435bb500673065023100f0c35fd3106a6ddedf3e870ce1ea28ef8dfd8fad701cb3577900c0511b8ca0f32f85cb18ac1f972f8c9598f65e526dfa02300ebe83357f17d089307b55f4b950e39ef62cdc0fb04762a5160911ddcf42ca0ce40a2a73ad91ec41ab9bead091b3539b0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500673065023100d8c6112a74588382093d9be462880f8122fb7a17026d25b22c27e91616fea11d08be770bc0871c37a0965ce1363902030230742e2e2c086bc85e2057c472e811b5dbc8f81e80642dc772e64bc7fe17146c6897210f4dec1af4a782e2b7adf40daf8a0302047c435bb50066306402304a38e4541b65b88123355b4bc904e17fd0e627a57b719a138f2b9498361bb07f8552d98c64ffc4adb9e19d9c9a9d5f40023048ec743c72f1213b3df7232e9de887e4f8b7fc7a9671fd71b51d2d767df3558f36f755affe296f17992d5121d052764c0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb50067306502307116f62bbb9f6ddf83c3af0225a5427f61c0985d1b1b09b59ed97e7954c0c382e5a73ff1da670892c910f0eae4c98287023100e6ad7ac18d51ca2df1aefdfad039b85a40beeb7b36a0fcc90ad469f3e8a726312951d4eeb609d97fb07c02eb853f3cac0302047c435bb500683066023100b3eee980e24f8c8d2065c70b050894f0d7a435f03b7b242bdf198e59e0fb15209ec1db763810f8e064e0b1c1b686e919023100f10125a39595851e340a4269b133fc0a500450ff85a36a3916f033028c2239f1c25c0a3fc70a95232182f7afada75c290302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230357004501c9cc93a7a160082af861682d1a173b80f3fd46d6c38998e80b8315834bbd214ab518b05f108618a4377c0f602303ecebaa38c52657a8efe9bd302b548168be217f76bda434aca884e6b9e91bfe40f9790d03fb674d79bf460283a0ef8230302047c435bb500673065023100fed9024a3d2ed4ffc0cb052ae3b5b9a1dc9862af188398ae80beaac96e0a906962d6ad65f6ea43e88276546e84adffbb0230393a71b4f0a292eca30c3baec7829e611f95f107d8fb20c630d7bd805647326c1c3ccb5645f89bc52f0ed2a2ce85e8c10302047c435bb5006830660231008b28dff70e8886b38fb74db758965386a677ee8dbafd37ceed61c25e4590a7528c741b62874c3af99bf9b0f9e8df8d33023100a5ec53fd76488bfbe34820b502ce981649e74a8626bd02fe1a0207701f6212f36877a32d1cd09e4878fab2050c69aadc0302047c435bb500673065023004b2126f5514b308037a44028ce5291071a7a99b31f4adbe55a77694b595dc1ed4d0b94aed7bb8d19db324b2bdbdd7c20231008f72dabce16b796b9aaa339ec5be2e7500ccc9c9e6ebf27cffcc14745b62107fa2c882c258505523e7d183c827f1b61d0302047c435bb500673065023100cae0fb6cd4001a6705e543f209f88bcaf70991f832bb5e564c62b779b3aff465ef20067bd64ad486b5186ce7e11d929002300baf8554a09a3a77d1b94c6fd8fd9d9711eeed974e88969fbded47c389d84e26222260fcb16f01e43fe9b6a4516fcbc00302047c435bb5006830660231008ce6c8e8b898c1a69451d7fb9bad67330e0d9ee2db78e5539cc80c425a9d85adcdae2977901ade4169083f2fcceca6470231008a186653c8b992cea7b9e08d1ea85aee87bc89d37aa39203d17ec353e3acdb6339879994ac3feb03f86b499207f7adb30302047c435bb50067306502310090bb1ccb5868e7cbe54291d5c115b1bd8c843667854c7997ed6f91607da2d71d35a7b143b07a171b77c824ba05f406e20230358c4b6cbea7b75e2d4d4504b87075f2e306198f6649186e1f1cd3d72d25717807ed707addd42b1cca0b5d7219d41a920302047c435bb500683066023100f08348aa35b8f0ad9eca26a17e8b29054eda80f8e95dee64a4ed461289f2fadd4c240525d16773d011ae6f215a747309023100913e875f54680b716da8888e0798b941c7972790518e0df509b789d48e43683c324e06ba5c3748f8bc47cff57e4f5cab0302047c435bb500683066023100e46c09b5aed7827a272b8cbbe72a08daab19ad1cb7fe221e5f68cd7df2c6e03c8e4746e85dcd90c7c1603170795185b2023100e72876b3e435b3fb9ef706aedbf9c42f92b56ea96fc37fbc3a344235c53fc08c87aea62c1ed213475ff2da07d08077cd0302047c435bb500663064023048502fe2201d5bcbc06ebbf86527882a25be3c0bae5030c57aaecb3bdf607a5bdfda8f205c6b21b8dd718addbf1c28ac02305038a4c7fdab19ca695d2cd5b3cf0cf25b6461067a88cd17f781f2b99df99bd115a5d63c484244c9e07d7a05adbbd1f50302047c435bb50066306402305e1b8fce4dd22895c4b4afac37e26f7e58d7651aee327d9c8d957467a292258ac8b3c70160ae15eed973fd828ce93152023009d5876117651dd36fb3472cb3c29d9bd382eed6f9d3bd41d26ce78ec60d0474bed2c3d206fa7f2bfd4aa85740c441a10302047c435bb500683066023100d64db4e586161c1a3e1cdfe84aa397ad94d93a907a1f006bc40231a30ac1d074991012a61d201468bc5fce34368a1149023100deea96ec4d05a3c9acb9630fcdcf5b18189eb47bc73e52ab856d93d938ba2d81dfaa9cf74d184d3da820622ae06d22080302047c435bb5006830660231008bf6eb16c80be7bbe374479ec2c7c2aff5af42813365951e3a2ee6420280b9824cf2e3b423bfe05b304c580dd03e55a8023100a7c4aaefcd17156027b8af31b7cf6cf8ac1aa5057f0dccd05b24cc8f7572fb5c62b9e791cd8906ee9cecd96633d905e80302047c435bb500683066023100e6f9d91adeacd370ff444b374d9c26f75b406722f6ce26bd832072bc1458295a5a29db35f2971176337fc9cbe178e331023100f23a5e1d24b1f8e095294fa75796ab0268fd7a05e324ef366f7d1c02dca6a65eed09e595b715682719056fdea24229af0302047c435bb50066306402300d76f909a73d52af5dfcc20a19341a7faf2621286477c4aa250e3b3be310630d862e722be4339ab7d45fafd87b34c6de02301f1b66e6fd491e81696d2a4855e7bc3699c72c7f27dbd7f90ad3f0b5eb5af156e68f4e7213891c8fb5896db6b2e8911f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100baa2b5c8cb6f8f60c31c01e999d781403f0948c24473081fc9bb3b3d59515dd95ceb30558a46c105d3594fc89eb6b49c023003e918ecb70e6c47a80d6a6d21459c63b9b73a4f2bf2cc9be14ff91c65da8f797eb769c19a936c5aa8f10cba4c9fe5620302047c435bb500663064023024aaa50d5b32c42fd8056a326b82403e22c8d0e503d521bf747e70b968b30a8a9f5849b97e462dea8fd4c0b4f894d39f0230389db8eec2f2a02208c567848388cf117a91fa86447cb869131fd9339a97a4247aee6f10eacee4b0ab09bf6b77e9018d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d7d1097696bfd692b36e4f01b20049150b9a6e0846f512ac3b19b9354b205128285d61f827836c67cec7480b09ce01eb023025ac077ccae14db458809c85d7929dfbe0c29d9ef737705f4d764972c414aba72f7e9dc6ee97c58f313be3516c4523750302047c435bb500673065023004d4e577da4a3f5123a20b73ebae224803dea6ca8ae318c69abedff33a9fd81157cd7a9a7bc5920c529c2fe4626057de023100e9af5a9198122f9e863eaec829c4ad35229445aaefaa742cf3105644fb2ef5890fb060fd4444e35c09b82bb405b2936d0302047c435bb500683066023100b636684a957111d92f94e54a63c5b16d1cf1db8d2749fc604421f828e7bc94ecacac8d835bc8ed921bd2a211b0ed827f02310098de74fcb2fb2397dfa633367b33fcd29228329dd52d21a85e8ef1eb335c09093da925d6ac81355e5f4eba61cf4c6ca20302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500663064023026e8ca5a56c7955e44e3e01981a436840f5d95c93449d661112254dad1832ac8f0f9a86d334944eb216cc30b3b1e2c9c02301c84ac922a32e0c56f55921359783de59c48417f62ef52c91ea0014ca0c2a85181acd00be95ed0fa8e2ec6d19922a9240302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c343560ddb6eb963d001fdfb713143dc98083b4e239b7eadf1d94c7f5d735ef945714e4732fa0f06c0f4c239a2ad84af0230214260994e9cabc0717b4594fc92338f644efb5f8e9a2c92811241a77e0821b85ee32908fbf1ccb1ad75105a1a12fb8a0302047c435bb500673065023100961928ba1e8c5d60825e3a1d9a9216b537621442f94a1b42bd3379fef9fe9c0a8987c6ae0f1572c0906e1ca2a3e1fb72023079a4f2e27c170b572f655ca46cde9cbcc195a92c82e754da4eb8bd49697a9548906218e905db9b238270bf53b781dd2e0302047c435bb500673065023100c8fcebf9739c546504075bc7a6bd931ff43bd7e2a9fb1db8d48428ea27c55e54860062d52680dcf81e5624ed2ba3df01023024adcfb6b40542288fa2cffa438b212dffc33bfd2167b08a29df4b23e43fa1252c2a9c6cdb8ee33e663416e6f75d85400302047c435bb500673065023100ee62dea5fcbd977e88943407f1596f4d197dcda36a142a3bf91ec4881e911472556bd121c51b6f3bde84f6357473bfdd02306fe225eb734c8b23cc590b36e0891ddc2796a93bd06a7a7e7a8f573d0534e23b5220fb2dc5858b58736cd96b323248f20302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb500683066023100f192f22aeba2958d8b51a6e3f9dae0f8a2a823b90ce60cfa5a126646ee4eb401f7f61c9c20f6bc5e6901c583ab6358040231009f52d35366754af6c77d0c175f102f747a93a4fcc2a54315edb303f57a21bbee00111c1b35802355e66a73a3b87bf3ae0302047c435bb50067306502310095a23c1fdc815b88643f74693c4235d0c333ddbdd2f22517029c4e7a848aec9a5b896aee8aefdba267c4e252bcddbbd102305b88b81e0b83a6f94ecce523b19da447ad018bc430b1a093c48dbb4f515435b99175e76842ac7908420c125122b585d60302047c435bb500683066023100cbb562cf9521c388a6d5d5110c427a3f3eed43f085b5be6c5d7fbceec3ec2223d2d940f863146a4f72148a58fbbea85c023100ce427de25293d144e13050825b5fb9ad7f504207e241ac43fa1106a72b02be2e1da744a55e5a9a1309592f9b3a0332640302047c435bb500683066023100b87b32e91e925f0a05a68a40146e7eb361c78dc8de0761bed55af7dbef806f7a97ef9f102b84bbbc450d595ece852d300231009ffa21cd254490a94bedc59b7672b6e650f68c151ee8d0e5bfc728c92c7b247803ee493c6083f844e439377d2b743e9e0302047c435bb500683066023100d235a3c64c1c0c3ec409f35ba41cdac85a5507d65c71240296e6e3d79a9bd8ec0daf3bf93c9a3a78be4bc26813ce28f0023100e370c042ea6bb75be5b6eb4a888b81ceafdff7aadf39e42f04e21dd98d2159685622bd7a7cf0e2955370c795e13987640302047c435bb50067306502303e17e802e9b5f36b952f236596841b189b7cb5e76069ac143283b0548d1d17ebb897a499f7d272ba1bc8e459b5de6f1302310086b54ccf0b6922349e9da648605706b4ac4f6e34b4c9496ed5d64736fcd6adfe5c0c7742a2f563e16509e996f656e90e0302047c435bb5006830660231008e1fac8d1ae388e234d894d9b8f6c08f8d9290910791173fe7e186d70b040393c613508247ef76cf0ba00c473b4aa2b9023100e809b0227bc24d7cc1513d84e95bf9cacdbf8d04830287e93d920fcff2330021df6816e0ed98793322933966694a707e0302047c435bb500683066023100a523f44078f4cbfb06678f4d1289d11e2d6cb8a694ca08f8ea68003c8e3fedda2e6d8a26ef4627a0699146d0b18ad6d10231008f1b5d907b44e91bd9a0580b55a94eb5c42a7111c24a8b9288919ae1baeac4306462438ac2cb408c892c6c7d1b51bfb10302047c435bb50067306502306c121a8776353dee4c261f48bacb5e5d44b12da76c5714b90a825111456c6beb7cd7d3d5f272fa4f48c2a874e3f89e50023100a40db0de9d1ad0e4dec5f4839bd5ee970c8af0c8c1049ca94e7f75e4c66c04106ff7722dff0837d8eeb4a23e215d068e0302047c435bb500673065023049f5495a2d10ca81c8a257f8dd18d54fac1c1ff06f08b3c776fdb8a8c9142be9d626742a907dfc79fea4b8a402ece9bc023100b812d86c03aa0469fa4affe1a923288b2a0990729ca28eb053c49517bd7ce1aff3b4713c98958da150e011978dc908d50302047c435bb50066306402304a7484ed17d2f7b04ded8950961dc410f950355d5821a898c347569f0fda057f4c885854f4beaf232a6fc6c66964e39b02307e03004db000cdb796c6b2310d56912821fddc3ac44d364807d1aa4d5104a6f8b6563654e2bcdc46697dd421975cf6a50302047c435bb5006730650230143636970e6e19de4f281a56d4337e7f3afd3c1b1185ea265ec015a59b71403dab03e0ff6a298876924e69ef8475d89a023100cc16c287482a827c7c3cb13354895bcc1145077692cee3b03874abbbeb31054dc5d6ceed68e4d95f6737268e46e0537d0302047c435bb500683066023100e94865e065ab9607120660a9b55d1cd6852344de788fcb8f04ef62c6730d09c6dbd54b1c08a2a59b2aba42f59a5458a0023100e1f8b1c9edbaaf8c3a6021d7c41541a09d1c6d6d2e60a53ca7457a57cfc69604adb2f9b8ef38636af6866c66e7420b520302047c435bb50066306402300e57ca1577653b8bf619f7b4f773d67a2051d1694a2c8f8ded09a717d458b506444ff4a8879a77cdbd96d01ceed8c7270230639d2f11fe932c238d8cdb710bded7885e8919d90265ea9efd1c2ea183b0fd608276d1eff99edd2532a2685d883becc50302047c435bb50066306402303049588def83b184ea117780cad9eea00f299bb9d80357a235d56c93a2cbacced314b3ba2d37fe9d13ef6c949fd3ccc90230716d09c3983fb6de25ba1ab0a0eda4bb97127f7fe47d72baebce093f1eb1cef52214d232e99ce1bbf0c73ae3460e23d50302047c435bb500673065023100baf917e9e510fac01aaf2a7a9051f4dfe5c9ce8d5ec57ac2707cc89183763c37a797a0770d4a3ac4619adea0b3cb6dc702303f57220e6e7620ed5e6aaf70e7f9c73a70387625d6851c3fa037e57c9bdabb387321232aa670b8995099c6652c53411d0302047c435bb500683066023100ade5157087936a36daaf850a4b2d39264f72aeb76b2783651d3f12368f2162dbb295b6919cda14a00e8a60c7f5b8533c02310084431814bd92d98d74a355e9a7433da5d80852a8564bed1b3c7e163a596829e3ece75e72725605d88da30a1818eb185d0302047c435bb500673065023100ee6ccaa12a066840b2fd6afa4579aa61a04e700b07e0e4f99297a2703baa6bf25e6e3d541aa64a9464bee9081eef8e4002300b6d8b7ed9db52866427d9a57588233a9ce3f8b84c31b30dd8ee7e38fddb3b24c523d1fddb6fd268d5c2df7db81885630302047c435bb50065306302305c5f9792cb36253bbf43c617f3f833ea4511f904a12b532bc4470b9f7c8d15434d0457202ba9bbd0f47db136c03d5e9f022f1ffb7267b7b97ae31dd9d381863c015b3fcf9707b1aba7355b32ef39722352f0042daa1d4c3fbfb01a95f000138d960302047c435bb5006630640230080181502b588f06a25c70e00ff4441e5a7aba8a67a938cee4dd72356e84a0805af0a51371578e16ab5faa202870cc15023064609cd7b5863b47117a5520df2e7df85c58103b48d3f9a3f2836ac5c7308b97f5c0856d1d495f97d66d4fbce17dcce00302047c435bb500673065023100d2feccf801e843d488253721888f2f4ac4fe0bd897176e28ce1dd4161963c34915980eab7f7e79fd1f94a2e37d849602023063d55eac72ea4c9a353b62f560867367f31f562c3bf01be3bd1644d8423ea60795a8846fef141ea59d7210c418348be10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303b8fe44fc3de5c6b5111619a6cb0d8048470b159688413b88c793de2dcf0f5b01da2ee2691b6e773bfb07178ebb9a64002305f30d7f158ae9f5d6de7f31ab78f9fa190b2523c15d1b45f61298023c0f8cbc32309fb1e9e912e8382569ad9ad0aea500302047c435bb500673065023100934e886589224ed1690bcc81e32fd85c215c49b2dc0dfb45e654d92463b21d7d6c153cb577cef3119805b057fe050f9502306d28c79d124961051d1ee3b772965bfb695c7ca273275bfafc6f07fb2c54bb081ec435a71f354c653932dc6973b106960302047c435bb500663064023069364b0b37310da53fb34345261ea76106367722931ca925d92a6e0c45fcf5e2aec11788d3aedc8cc83b6ab2b29b6499023023f1b80d81247f9eafadeb0f1c8b949c05874932315cc51f81a0de8a01a7bec2466f074cdc388b6c4667f5852b2da2a10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307763f154b38b694d98eaa9fe0c150f9216a8b68eccebf1a3a9369d77e444129cb5c69464fe26595362b43075f2fd4523023015981f43dd5a5883d40da469ed5c90e5037b189f0b44dd835ffc8b7e3f24661c4132fd44ef617972b9a998e0400709dc0302047c435bb50067306502304744968432b57351bf61b0d1851b02afca0e491138b9b7b5009a4646c5a5009adac6df03aaa1a3e8ffdf16e196bf5507023100f6dd11e53db699d61fcdedbf1ca053673e5663e391ce61e53bb3e563c5b2c2088a3966ab0c10c7f6d024b2b8724aa6510302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c0e8598c451447fdf406756aa64ef3f7348fddc3a5b548f4eee0b75465f1092ab9c7417db4314ba0cfc448147f4de53202303a4bbdc3efc63dafe0d1402be8270cb1da55ea0a520e5446cd9ab16cf3b30cd3f73bc2447b9fadc3c5a1e8a144791acd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301853744fffc681eff6e48fbb947cac5da2e97ee87c2eb51f831fa59f4fe4b9e65f6e9353bd12b748620045a94786b750023100db2fa3c12ae70e5c78363fe629754c09b683eba732234db1a3c77431cd3f1d9e83c3b2961760c6005048ffb42a09df630302047c435bb500663064023010dab44ea99134314656f5522f0f16a40eb3c06e4958656c27ae390221fdf6e2504dde2f9be4a329e47eeda6483cd38e023012cc7becdf1d28aaeb5da5ed85efaad8516d50869ea64518630452989f24cf50f73def3b93ddbcbacfdaa3d27fe2c11b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023070bfc2662965e4a955d1cb6852837c26d7d59fedac1b5df6ba747a6e6e3103dbdbff937290dc062cc44b4b04fe502f18023100c12278ebe5e6b58fa5ec12862b2f2c755d61d09c50c7bf8d50e8d55793104e185960a8c6ffaca350b753c9768318865b0302047c435bb500683066023100f7f42793e05d4461eb06561bcff209f08515fc83dace3ef6f4567a4fc63a115267c7a0465d43602e0ac43b7d372d8d7b023100ec34e7e3eb24bb600539ed1616a18be8d0fb99472fb0dd95650458392ed0825e853fd1eef8ab0030433b7c54777328a20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009c0cebf66eebebe88b7a5687dc9cbe78534406200a3800946e82d8568c66b795fb5f98be231e4c31b3ed7bd12fe403b40230153f530b2e3ca92b60be668e4726ec00e06b73df2efcf0387f1ba9ddae0586c0e97a3735b756dbdf93e12617c75f90b10302047c435bb500673065023100ef3d066c7f3b0df0dc66814807bbec9a4d28c82a3c2d0122bbf36f3fc17f149af1d0da139ceb0c883748f7d165e3d80302304745da3a5ba87f4204d8c3599bcc1df9bbb4a2866530a5dbcd2651dc015d3ed783aa624ca5795c4eda58c26471a06dd50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e043b0f657b29b15b0367ad04ecf95047cddf2191b35384aa9400ccf24a515cd2e8e8fad87147e1b5d831f6594b8cb1602304a06ada7823e4b0dbe48862f95dee315c2e4702ab4c0e2bb832759b8c51977078412dcda74eeb3356402b10ff8d6e27b0302047c435bb500663064023023eccb1428e338b7b50483bc4e683777015323cc117bc4257957a267c2ac951e34ebed70c5fe421a24cc2057ed781fda0230695a5258d23b8c94d6ad7d2e5fee7c023f173b538ad7b7ea81576f06074bd5536964fea18519da01ece96b1b0537d8690302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303d6cbb2da0ec7b196317d086b5d2f8dacb4a9d1628f9f3e158e9696ea56bb896b1f2799e2d720fddb4056145e5b23bd50230777e051d6a605f38c47492e4b8ebb55b029a10d2bd6e32a7e6d7358036676a2eec35ee7cf12a6a10def4aace70eb9bdb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100aa042ea6394383140e980342c9a667b80979ba61dcda97e43d2e34c47005a4be3b32c8ef0d654fd1d9f1c0732f340e8f023034356297d20f6b925f105d788e1dfe6d272daa9f34c6f21336a9a61edd84dbc72e9809c14afc6b0b0d9815799b6bdc1a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023060ef05f27849ed84af46c04daaaae89919e436fab830e90c91d6231a4d8e1c0378bc29ce12e0c8770f282bcf48623e8c023100dbff92b91d2475f640a577f5bb817476de188bfbfff1e00f38f1ac81bd57f72698a77229945bd97ebf97498a06f466420302047c435bb500673065023100de70add96253a1b814028ae87f7babb7e9deb15fa68877d9e95506e6eddc35fa625337f5cc523ef0228e4a6bb0d2af360230518766461953ba997a75379ced774cdf66866ad413149922d4fb4d91742c854f755a93de87c8bb86a5e75e7af9096a500302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100edc876a9b149685affa55ef039b72785fc9370c8926e7100edf8b9b91720d44edec91d66ba5d30b9b1fa0be01eafabce023100ad391601c7b802e5f64cefeca154163591748870b11e1da264e7a1678c4dfde106275e0809b55bb334683aa484e816180302047c435bb500683066023100f8b5df74d4c743a32baca166e50562387dfac8572a2fcbd5ddeabd168eebadd7651e09d60432f278f63c703cc9d7420e0231008248ef8692eec2cf7c552278507f62f764a0959bc38c2c80a371e017777166716c22f515fcdea3c250d3b277e89374940302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230059fc1cf34c389d7139a0b1722f87308ade1bae41c76a3fd599bd8ceae90b06e43f31994774ac0e6ca68657cda709424023100fa3bf26f9d249a332fc398b300fd0979fea8f13466aee2ae47cbb527fbb79ce78f7bfba7b44a38486eb990b228acd8210302047c435bb500673065023100ce125c0c41d0e8d41ef966bf3f8d96cf5d51e1db3525ce2c13d627426e52b0528ba6ddf9dc2c83217ff9d28b5362ad6f02303d18d1dd32dd4972966df149a6c1e93d07d3f7970204abe608bb448ba67927e6cab51f21dcbe2e6f2e2397a1318344d70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306b8ee94422528325cc773422fb49a77ae71ecdedc461ddece2a4afdb25fccdc06c1fc46c21d9dcfe3df7d5a847560781023026756a3bc31b98aed9f41fdc5015e53f902f5f5c920c24074e371f3ccfb11f7be41fc4a81652f93b779ead43a2fb07ff0302047c435bb50066306402301b8e5f2c11e97f163de3a42f49520df1bfdaaa1e67e14fcfeb8ab7bd3d7e5671c51b4a6ad724e5c4c56a6e6d4c7a44d0023029a83c86af6b38c87a44a8fe16b8c8e6994f4367d2448177aa4ae2541a684f5dc5008fe762abf5df1657b4189ab171e60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a58e4e1922887ac0f59899a25ae77c0c1fbe30f861d2ddd04493786153a03e1733e391ceb398b8c5aa749116c2fdc642023065f83d811b235f5519c4cb3cd90806ef18c88a73f1acd24a1b46553c0474b92e42f48f32284a5b7bd13f5794850985ff0302047c435bb500683066023100984e2886b552a652e18a41858e674fb88986f54a65f81a1c01337dbff14722f3234ef1b5d4240ce349920b216555d376023100bd870ae3d5c9e355a5a2e24e403afdda656b45895d4ee9da0f31eaf066fbbc54cf0307d1a1bb9ead64817b2f0099d5b10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100be4fab79143b2629cd2ffce8c47f3a912d7db3335a0db003f53cb5d43dc6f86cfc93774f4cd9171e7718f1ff690aacd3023100d86355d47b4ba07fd70ce84a339942ba8cf5c60b1bd585e179634c2e50281f54b9adef6942666dd786bb26e44f4dd4fc0302047c435bb5006830660231009291d9e50b46f2915ba2c7fdb4fe54f1618a6b7f52486c770646c4b078fde5566ee0398e10e16484efb1d8576ef05bbb023100b4776aa0ba051a3858d59839ee473f481bb6e929df5c9a327822265244fe97704c771b9533267d99a1918f44e195994d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e1ebae148933a438672f3b5bf2d87222532685066da79f1ee1b1744422ed7f902b08e897b9795c5c50c1bcb553ebcc6302304ca5ce273b54763c5901f8aa0006dc74015e2e3c20542f499160848212e2a2fec975b0a22c3e085542057353ada583810302047c435bb500683066023100ed7d3c02f0ceffaf3404c57926d910703afe4be588e2a784f19e3cbf5bc0551136521b2c090876afcae4f7c05eebe71b023100c8fcf5930b30bba0316d9dc920cca1cf6e155a7f63b521f5a7773beb760544118fd0ae0cea224dd7dfeb1877eabe13da0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d4d501a57107211208cf2888fa17902aba36a061167d50f2d9fdb9aeb9eda8ae122cf0fb78a99b04f25b9371849d2812023100e9554920798a154d883896e6072f566725e28ca822a49b71a750a38617ff7e228f8f78d8a9cb5d2e39b03a4c22fb6c180302047c435bb500663064023032221ca9712f3adace2b8b905e1f5a15f79b77dfe9603e647715b904df1c26993e16ef17544837452d62c8b923af56a902306964ea32609a1090036178ca82edea4e3f09ce70ca1a5f7b71b09cb39b19995495a3cfa71952b261b2a16ccabf6deed30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f06969efeec3dfac4343d44215ac7476713e856c8da9065b10b6299ab5251a33508a551914564d8ce88895a768f11b2602304cf0c608f5861a9bb9057c20bc598680970f8dc8709ae428d6133c2bc83740fc3f57faec2482e772c891c441c4cf00d00302047c435bb5006730650231009b6be7d96b6577b3ee3c8341ad8ac1f45f80425c307e50fb44e4ebd527f27de7beaa8c62afefa639a0986ae12fe2bcfe023004c15f1aa04b9ddb0b84a39a64de23c278d22f27038ecbf939ea30f4adfd1eb085b14b09c470d5cee5f45ae94e48ba440302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100acf7eabca40ed0794e461303368f903d72045e44b82701ee88577c4a61a7900b354e1390dd1553fe9c79b426585ac376023073436772371480a77475cec093a7cda89c18233141a80eb55657179c045b93a1d0565e8f7280489fd763ec2c90c9c8d40302047c435bb5006830660231008313d0c03d6cce47cf574127efb141a8c62dddfc1d02c387818ff623411789853150bac23071f5ca21179faa42cfe04b023100915b58290277a6b3a2051312cd16ef8ada236a67b88fad5f851c1d59022af426f122e2dccdfa83d57e65b8994d07bae20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230607724a21f718659ea4008c44265c179be6c36f81d3454040560571dfd4f8c2f32f16d401594e1bc0ce97acc6f1cfc17023008376f5479808e30fe0d74e34d3b4ddc28194b2b4a96f85a2bb6c0017504e32eb716bd835624622bbabf0ebfb2ab690e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023031d7f1eced36f7870882c72d4eb65fa38f008f9e108f20c09a1a072254b926877aa81a6fb2c37f1c2e494a7eca39206a0231008d547133e23fd48ff5c5ee15a6006181f8a4f695e709f4355ac04a8b9ecaa9af239d349fbde4698e270d15021bafa7630302047c435bb500663064023056c3137cc47d950446ad74fd49dad486d4cd633d19a1daa3f7f3c5d1d9a24b1a6d367933c8839d6773bc475cbfc19941023016ca9e7b9428636ccda195a9bb3aa9f259b5f7edd1a4e1bd335388b288191827ea697a2426b827514a31239f7783e7c70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b0b180142023b036fdf57be2af8e5bed53ab8bb4dfcfafeadac696171d24759dcdac1cd9912908348bd300db7cb0a1fd023100dae67f1607fbdda7bd1b5f2dc36fdae82735f054ba506790f5b8524568c25a6f80c343efde98c3ba94fd8fd93b025dc40302047c435bb500673065023100e8f82cbebe01bf55f066037143ab17bdeec99945c1751442a16499ae1a8a87052f47acced859eaad783b2f7edbd83092023004260cfadd4c4d2d2b9454050ac4f91f66bfd9fc6f8cb574ac7f6a4f36526d92525d649dd27b18b6f5c2f33411c7f4a20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230753fc5d811301c8a625957b97be9deba36183b0dccd327f08c77ae2f12f4eeedac76bec67418444a3f033be2b4ab971e023100ea0e8ff7ac881027ce789262471c68dcad5293b38387455e1df2cfa62396629d5079fd4c8c7eeb0bbcfb84786ca0cdd30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230602a2f1346710bc23834141f4c93d632f4d122fc1edb00eab07d2d2618a59133d02289999cd6b908a3584db89eeb550202301a7902cf074766097f8efb3d939283a092a2e99dad9918161bb4b8135412c9542ccacd9e538143ce147f819c713edb270302047c435bb500683066023100897ec8fccc8041ad210abbe82cb03a1c531aeae408a9b4fb4ee647cbb1bafce603bb8ba136696e8ba339d1f14e993f4b023100a91c9cd5f6969c84e1fd2c2a0d2232e3890c185e33494cdbad337a54c311209d8ebf5c07821e8c4e58a84efe8b1f312e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310084d7aa25b803845cafce08ecba6b9f5241cfc13bb516a1b1410946c413aae2e5ccd4d5c125f3437242c8c5aa5bf9979a023073895566677faf0491ded0b82008fcbddcd810562d53d0f2a4bf1f3744c686a6a417485096e2b8a81a89dd2c0d326ec00302047c435bb500673065023100a6a2de63518d5b101e978b5f80ac73099388f51ee446a466b8c50047edee990d00c3a4bc6d2f7a1e35eeee470c9a5a03023073bdf5e045d678c350b76dcf10fe1556f8fb3a574e6183a769e3ce6e5df5472d66a1a822049b76dbc81267cf9e6b1cbf0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304897870d26c6b879da97981f7292d9c3ba9caab20a59a9c402763a552a79f697e9f395d72d49faa349a91f7af35bd3e3023100ca3109af81fbd53eb8af9053929825e8e2bde0c2fd7821e84add77f828c8dc7f4a09a785a7aa1af61794da6482f7e4160302047c435bb500673065023100ca43fb78701279c21fa41287e2ae88b2c74e952386bac33a7c63e83cea5558ba70555be10632e029d52da03ea7bfa39e02307c21d7527c2299049b85daa8c971f1238797ed66c8d4e51401b084d329c1a4613d4f0851b2959daed390c13345f8af700302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301e2f8ceb90f53bc6951398d96876261b2b30a5f3b4b346112e52db1f832ad01792f7b6ea50beb6924b37f7c5b9092d77023100c3642c017d81c39ae530ab5e9d4c179f19fd92913fbe5f4467bd1c96b60a32b1255a65d7077de6caa3e751c1bf854f080302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a7230aac43856e009355c6f9075af44bd96079e7c9191e586fc7354397d7fb939352f7a563da802b1ded2b7efadb5a39023100ad4303abc7140da2bf9cb3624f5b1136760252ae6df4f67a6f4d324b27b1574593527e6b6c7dacf0830029127ce1cc100302047c435bb50067306502310092070a0fbd8ef23c1307b9dfacfb797ece85e151091b422f4ee9245084d28a6de98b95ebc1d01705f8d7052e38aac8e6023075561611f96b16a194415280ca8f25bb060a86f5cc1c855695bf5a82274a6bd908b72e3d8d785a78f2a766929935e8630302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c1152250fc11acef09bda26caabe3820ebdd0f1416a4f21d3450c8f23c1464469a13a9576a6e88aa6e77c55067f23409023038651ce1b04a0251a0e15e1a0348a61b1b8b2c8c41d8a520eece1c486a0e47dec5670cc401eb34220ad6d0b96bea4fbd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301e271b68bebeb36bc2714fa73f4acb37c19efdf73324d5db5c29dbe0f74c4f2888b95f9113f7700e91c96c7e90d6b85a0230417d4d8adacfd4b03307bc720d20b6e2715dd90d13daa8f88167eb931a6cb24de505656373b1fb3b3c572463b2d298620302047c435bb50067306502306599689cdc97283605e9b3727be0fa759e660f14da5016bb31264db413f893c581174aa6274e69fe641c7ee31cf0eb600231009ccddcb48c14f9139c222a168589c3eb783a96205a95fd94dce9a39a5d51abd06f2ae7f60aba9e76adf26cfc86afc0760302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c5b45d35c1a29439e8340f257e0dd593c984103d022b974233b4682e32f074e2036c2fdf630eff89fb9db02bf431cdd9023100fda1fbace797c911c77aeab5f2447402f801c6ae38928121c88685ffce09ca746ccab132562f40ef1dc791ccc51f8fdf0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230556961fb7cca06db985d164a162c062157b8b84262743c44a87aacc2f72fb4a5bec85f757cbb818dfa9ecb51cb0194c902302b4d1abdd9eeedb7c723ec4f464294f9c3e8be0273ba09c394058bab148ce84948cab8e36c242c36c1cc38c067d39bff0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230545873804dfa8ba43a1c1078420aee316f22d5e34ba2e7e7a7d69564140ae2d50896eb4efdbab4bb6350751d7b9751a4023041454795d6eb4460a7fa1d322a8f9e9a3e554fbe4979bc6b348bef62de3638226477eeb99fbf64eb34f3bba99b81e64f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023008002f585724fea663d3cd8b77f0fd60c75fa21c5778ca231d0ddb6c26e2e68f2454395f8131458d67036e6839b2c60602303eb08f99124656a609a8c9cdb01e7d3de153d84f651ebabb475d43c92b2c5d3c7535d9c38e2f3da4b08820beae3fb3470302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301c187d7408cb4f872023fa09d062f4e275bf75a5653dad0411def1732aeca4b7d89eb9c7b116ed75f83c0af5029b095a023062ffac2fb8cdcff3646c2afdf5b0e10e4bb3711a07e0c7a56beb754a4e21260d686d386091d9ca2ea1b172e667ee22c50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305ffd12edd47ecaa81532e6ed549bae75297b88dcbb306f7524c5ea99022177697e2848324ef00211e37c11edcdf6390e0230592ba1102c419f269393455641411d9f71298c795a7a0be375f803824818db60e7bb18ea3631add0b54dd22a14853cbc0302047c435bb50067306502304f57c2c93d62a1ee9d0f97fb0bbbb538de03a8cda1f29b66a43f223f1f6c72cf6f657ae4ea07d2cc7c04efa09d5fc93e02310080cdf4c75477f873453bd7c07ed0419197c4a6376b9cf801cdef5165bf5a4f3a860a95598f899a642f53b846b10d373f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023071e8b5baff9eebaa102995ffdab0ea538311baca8a7fa780aa087aa2bb4d5aac22130bc15cfec5e072b54221d67f20aa02303c80be1d80bd96a55cc452fa9d3ec566c890e02143f836131b8dc0c0d1af9858c3402e8e48e4b3c03c4d2f93bec213e60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230655bd373b5991cf391220e9999a0e029905059403b8664e8f5c756b4a1e458c629b4e0cbd02ed1b27808b312c6efc9b2023100e0b71c6ca3a201b7d65906260fa6b9029fc7ef8e644daa01e6644c0ccf38823883c170024ef1ec290ecd35455c94dbf50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f18ef621f26501c6af4ac5381c470340b4f6c908b4a1ab7b38629dc2a525b72e002c516289e39ed04ce225564a71cfff023100a6e7c30f6e99d305ffd069a219e6a5abc59092e10a77ff25a46a053e7035580fc65a1e88a237f7de883aaec046bd7c210302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023003f7f680bf17248e829df0e17e86a14539b45d060d64a94f47c742576330fafe44b273f9f97ef41c0bc96eb6c886201b02304b00124beec102ccd7ac239cc8ee956932d203cd271daa6228e7a42455632d5b5925cedd507ea7897c2b6a1bc39339490302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b5bc9ceffdcc86e28106b86a6b014e87128b5607f518d99b8b91d9d04fc00348c2b54c6de0aea52931c180fa9fd37197023100e186f3ab5991cea14c12b4e65fa940cf3fbb5a2613d9ade82bf9ad0ca6f9c375cd8fa8461825e2b0fdd185f894a6ca3b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e5b63e06216dd504e1acc75cf8980e3f911edab6bc8f06d7e577e789ddb7e25af8e632f433314730afa239cae75d95bb023100d726415e646291ec84305714bf3717e4ffce88a45b79be0109837b48f2336781a986ca7b05061f37759d2af35999d65c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307bbd15c497c9ad1583832c029a3f41fd0c786e3354b8f1accb54864520a8793c1d17f8dae1302a7c2d8daf44a4c186ce0231009e7d3be9b263475e5ae7c937d90bd764174b012c5bb10828fc1c59eb17118cfa391cdb4481d550304d29b29bd5e07ae40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008711f3dc06cb0b9a3b1cac3eee54ce909a8cea43ee875e93688cea9d95ca27721cd08a74a1133d91497a57c8ecd0dda80231008481faf269b32c996ffb09dc765b0f483aa662e72286ec44f169a894af4310645ce6078134826e9d7132ebcc167e19000302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307d9fdca4690f6081d8139f540b8d65cafd80e7c9b84301e547d6849281b870f1d61e0cfad17468eda8f97ce57c11b3c5023100bdd3dbd599ef8950bf7c1a061a7f7c842a5e98eb441df3601da283106988c112a4a24090b33a9400f39565ab694adb6b0302047c435bb500673065023100acbb46c16f9c956d339b39296fd5a33dd43660ce8ad216e6d1669cdb4722fe072241747a36ff18f2dd0f234a2bb70f17023065310966977fa6d5bd6c4a75e6ae4a273674c54aea9f1ff2176cffa4c04722da258b98b4cee32716fee4bc4585a798d70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100cf9aae83288de653f094c49eb09d36ec4837fcba43c81fd964395d70b58c7a02e7ce784c04fe48e6401ec24122bc28dd023100a5eefd587a3fea297fe1dac59ee466414e6fc3869097057cd2215b07749c3e3c254f4cf8381cfc0d9247b05cfa61edfe0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306c8cb84601f83cb8eb81660455cbef830329d7996878d1eebab46d673b5bf83d5d6761a9e9be4a8b0cfc131715231d3402300d91a9810ecdf0f5ec5c98ae811600ccc93d7dd9a9abb720b4d1f2db9d2c6e6f25d24698ef7c9403daedb91c04b078df0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ab98448493d31b93a0b1c8e03ce90009137b9504e0fdd7b35824b388ce63b8e5b50d3ce9dca404ca03722deeacd6817c023079193bd649db32955c64f5763fddd05fd055117a5501d3ba141a8480ae290af9a900274cc620354155d2c6b9b79bceaf0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d72a092dc80b4abb743c4d98699755569d546e48ace31f7a316889eb13d05914c3e3489351dea1eb7201d409fe3e00ce02306fb17e4c2d8d85e3e2c1a393d632f3b529a4084f523dfc57a3858c1369589c7b9fb94b94c9b1aa9adf1ea40e1fdd204e0302047c435bb50067306502310090dbcc295bc13f05dca2192571504f9e5e6fc774ff0a0941846e1b75d3343d2f7de7a6324c363930ea52cbac117ff534023071f48f951666a5d39e914926d648e6fb5dc51d11f6f778656c089bea10ab1f90101975c5418c0bbf584e6415b7e03b630302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307fbf1b6f73237afa32edad59687cd757430fc529d0e0d281f52b5cea91e07e00668a78670e092222eea1fa17c9d8a713023100864381b31c4532852e5a74a5973d5042182e86fb19e0f52b2724a512f90dbb2d256dfc0b3c2ed2d34bd168f0023332380302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e73811969e6fb9543032382d888228456bbc40e821fd6bad6f52c9825dda94c60e8c96791b480ba5c087222a4920649e023100f4dfe46f746c1fd67f43549c64f3d1f1855a95960fb8cd6fae3bf1b67bbad3324d2033eea5c9cf0bdacc2c498a57717d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230248fb43b82ddbee355cf4f778ab0a277ab9d8fa1d406ed10f96699facbaa5ecaaa57a189dbe9949f17f78ff08e01590c02300f26e22515b7375530e2dd95d561407f1f6e4073b507dcc9693166575e25a9f4090d605668eeb85a5dfc50686cb17c260302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300258cd4bdfad61e7bbc38b7094d43f9c15a25ae5a9b2c34c420620221a122cecb85cb93654fd3ec892b77dbec9761f58023061eafe42ec9b4e2538538e6bbbe6d762bbdb2f4a6defc5154eb00c2567f7a49b466ed83a8d55ab2b502124d3b511e0bc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b9174170776c4ebe8f3849fba1f7baa080e27a59aff6c17a553c0ec7226e6234858f738d62e016801bbbb7d36e1dfa30023100ae3e155283f82c2a765be650e2a5ffa160022f0b9986609c6ce1b6bbff87017bd2ff80fc0e88f24dba884620bc8e2ae60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300e1cac3527831e44d0cb79770bbbec21328f010d8c9169d5fc4b0ae70020ce74455d425dc3b060c765c854d17805581d023100e9a6de9f48a642e8c15d39374b3b124d87b398e2e56ca729b573f87d91391a17d8403651011067134f2300e071521c8e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e9a24480840d92425e3bb037f64e34f6f1162cb36dd4b7aba809272329e12378fa43f889669f8e782dc2a01768af307d023074e67a354155a13791263c218dcaf94ec9fa69420f870a2aa8591996ce7a3806168323f7122ff2c36ca061d63dbf864d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230408b3cf94177385a07c6268872044102eb216037da2385aba18bf2a27875b1e11e4e0c08bda732ec38e7a981212cf6a102307f6592da175bfa6aa4b870310c21ffe8fc6424fbebd14b6f46d2763912edd3ed29365c846b9f5dd2b76749357c61d6060302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023011b5b6d16d2a040c513dc93d136545f915d792c3f8c7f0057802a8711402e236cefe9613e88e15d4d9745892b8258e12023100be86d6653884472f271ee85f89cb67fab87ec3c495581124845dde7d511bd252a9ced92588676fb4fce74622bed33c9b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c83ba2f668e9569d6ce5f01df330d8122150ad876e8056059377624fb900dce7c28697605ea361a04d994b72dc9163460230615964e31458a06d5ddcda94ef13410dd76aceac25eb5ffb70408e4d17e49f652fdf9eb1734a42d525ce10cbcc0d05780302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cf194ff0828a5e2b20a75527bdb9bd5d0d4e0d1eb6af6ecbf4ac0a2feaa309eb76538706e445948132388855acd9f194023065a73d00a969e4a66c14353f3e18f7ebd7b7e6631af1861f36778f9b35edbd6f960bcc2ab6baf216b3960698bf9241890302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e756884e949dd160c7a83fd25acd9e8db628eadb6485db3e2d01c702c12b92fae75d4d4df69592ff2d03e023f220b55e0230508d81ac0a7837463eafe56bec7a7fd97b6f019c64de8af97836aa49d71a12d7d585956aa69698edaef1a39d492a94f30302047c435bb500683066023100ed63c1dedb06dd30c7056048edcf591314920228689036853362492a3bea126ecdfadb4c880ce7da0ce3e76a96b38661023100d2e86a19203f4e3f1f1794492803e54eaccf6de19e9bb76c494b3c36a1b393d26d32bdb7be1909fc8d0dcb2635671d2a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300a36c30e03facd5bc5b9a26085ac985cd68a9b74ef1809c64cb4f92b91df0d80784b4d0e31e741e46234f4a491b6fad7023100f4d96f22e2485e6a43231126b0bb0261e7d99486bf2a590f363054c2e96f808ee317d8576a7ed73137ca117df08af6ef0302047c435bb500683066023100dbdaf2dee2bd22be946b38efb3238b194f94b34a802d6d04c6313dd81c6ed93eb5d58dae0266bfe707870e4e221a004b0231009d2a09b8a91973324b2cdbf6ab0f4ae4c63eaacffa248fc53cb19e53eed870347b2b65a5677e1c8907abe8809f1b188e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023019e78b72326953ab78118cc7c9f5fe33cb3acb8062d290a0e6f1d5c464583592c306d8b01cc14d00c98578076daec49f023100e8114ea6752cc295de0b23c91c8e3f9a37fc13aa8593c43f4de9ad11cdfc4fb55a45ac20e9d502c6618788c7f24715050302047c435bb500673065023057b399b8e81f5deb777e638875cfa609436abd596b93d449d9a55433e969e926b2537681a9369614fa81df5b0993c543023100d449b9f39f05206a594d4e779ff0adbeb1cecee704b363a41ab59ef3c743ad32e6e164874567c3684cdb5ce56e9fa06c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100fa1f96b3200d5068de488a671f214896f64aa58372a2226b38db2d8fddfd664645651c6a47086329a11e92f11becb80e02303d288a0420852cbd7b320f8a80489ffcf2065e2e7c28a764044462dc0e87e5f09d851820b4e31dc923491069b25446b80302047c435bb50066306402303ae8467ba603ad6587187ac9fee2997482f4e9fab4b85a3c9d8997c9ceeff73a8547a204b263c371f6b95bb7c2873a870230192f7dc9c5f2494057e86ddbff148ad302d7fb85faa216a91c25c51d1483bbd2c0c15cd481ec6f58d48b7dbd13aa192f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d056f1072fbc1f74f1ca5bf38ee06e95b260de7052246a87648a082a00d3ec8b6617d3647a85ae89b21ea48525eaccfd023100d45e4b3001dd4f149a85b62a0f0592ae0282e5a514ff8ec66ed43ca9cf4c70cb9d1fb5cd30db245383872b88485b0ce90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100dac32b894ae6723703604bf348068fc982536a7898031e3fafdaee8b17ac29613ff2ae88fd20a2c125172a07a70f760b02310085bbd85aeac53d0439bb11e1f3fbffd9258fb5184507c58df3092e2f92336f139224286e61245a8e9f756cb6140fb49e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d87e97f7945416b4d1dd6f5c032eee64b08111b42ac49257089f740d6e276b6dbbcec8f735d17454f4b033c677a075290231009692c114a197c019c266804f29a80460b509793d2adc3ecf5db5e168429e9b8b248660937c6505aeef59f280900087710302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009d8f2eb87d5035d8244b1fa4c578df23334b1cc4a1643c9b6ef614d17e1d914e11d8b9cc49d3dd3bab745debaf2cc9e90230126db10defd65059c24e0b182c955da5ab4b24fa91ee0bdf67f1675aa04fc241dc6c0f978cb696ba82a2e5b63303cfab0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008f8b67d499c1d577a958b3e575dae10e7f7c426a66187c2ab9fde419cf6b7de8a334ed936c15db011531968390c65b1b023100db5d9bf4fe83102c12eda88af4f635db373a5a20478a5ade8b96d98c6aa6cb59ef34b33a813af13051af63b559ac68e90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230615b30be5610de1a0601ee88f734013aa092d5e706bddd85a765c3a25c3a26234361926c8c91ce709d559df963998b85023100e672d5da6a56c139751165c6c8bc4191925b0841a3d83413f16f87740938491a1d380cb7f802567dbed4bb4a85141fe40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bbe569e2a71af7f3b029d03c99efb12f2cb7283ba088f746a5fd5a70bd740e69738860da3dcf96187cd8f21267066ea6023061b9c4ec65e09fca5806ab9020fe354985dd29bbbe0b67c70faaed7898e42d3140fad9ff39c2ba40746ffeaab4f01e470302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230587b79fff7021fdb61749da86eafc9337aabb3e082c68953137f35510cc4440e09f7010bea409f12ce33fa0c7146571d02306cb3bf2bbc548715ddb1db5ff08567040d578c6d02a9dc3a075c0e3668b949b6f2bd7ca5754ba57d72b2f09077cbb16f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009f93c7398538e20fb6174d4bda9ef78d74768dadcdd7cbc551da2b9862004265d4d33c60276287daee002e98969efe4502305b90703ac738012ec830b161174e3ae1e091bdea558355e0c08f8eb2bda0a8293eadc6aca945520bb598e1d5fe68bb160302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305af61e873472421a5aaf6109c0066ca722bbade05584f4bc0a03248add83abbda84330e00d449da6163fc0204c81e4d0023100a2cebe7fb647754fad9e9f625657eb8bd535e28ea4bb3c805fb41756ea71878f8dbf902aa9cbd101f4bfb91067f229200302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306b0897f700cc45c4d842e3ee939aee0b19354509d4363f3994c635048ed58795609fb16e30ec06e2b0a1a81e414df31d02303392ffb8b1a6e2a71ccc80de142d8b0a69dd10456a157ea52ee0a88899b48dcbe2cc6eeb99ccd8807ddd05ee6b9fc1680302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302d3a04321912c06e154c1571a5b510e46dae1bf5a60d5bf9bd3f84025f8d75e85a3031ad88611d1168468202ec3ae291023100bda57bcd9e434ab59977345763c5f35248337281865c9dfb7c5ea1dd358128c08ce60fc0535a530b78d28dd22d8d0d650302047c435bb5006630640230253fbd3fcdd6591368031fc6d01c794b1a020fcb9ebf1387f974809b531748a2d20ad551d9a3329ba5ca1e89370e4eb202301526e00119f04c43da8bd22a657e360deeccf65088b8eaab848aacbc5ffd5546f286e5232369c022902ff37a178d7c8b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100df612172fb3234ccde767c4a968690f1a062c869612fdd6fbda5b8c381d1eb9af5abeb229bba00d0433d502039c4d70c023100b6cfbf32be45cb5def69d662e90278ee67ebb9c803e576e96b00793db37185f776cdff19fc88d997ee977e19a6ba66030302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100835f2c13a35e69ee3b053cb59d9b475fc00e8af3762b611348e7825e8ca24baf5691e012d75670d6bec6b65c002df88b02303510bea40f5c8d20e962831910a0eed3bdad52674d4daca7444c8effc52ea23cc7b9b5cd6bd65cd879c2d08cdc91cc9a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302e502f5e029ba3e299ecc098d99be34e65d7b0ee68d12bae5be461e393af8701e1ab2f9f9275ea2b179f0d68e807d290023100b4de260d9d9c33ae152d5909d5ed40b0bce5d110ca5f1d1ea2c2cf8e29c377b63d795f1e1c993a8bc75a9a6645f9e4de0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023051bbfafdb560413e836691457b29fd3d9b29d60b0010beaec85a973b96241826511461caeb475c56386d2e42ff71da48023100d6e05f279f8fc117a90eb65bb0fe6bab6b87c20c488126c962d80f38b8d4fb9033f8e29b0f1d986bff96125787c9242a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009fed310f32c89f2b046d3510f382ea4f3e11afc6054edd84ff4e67d95cf145d283b9259ff1f0e67cc1400bc3d252225e023100cf9cbf1931f0cfc855525c00c5b27615d5f571de95a0fb9840df530169af2e79c59a6909419751ef6a782537c90753690302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100bcef35ec60ee624683ff701abfe5b764e9e71e220d9e90b682f22e0d45d71c802a92c80f2c7a558ef04068976446bc6c023100d5d325f0349e03cef8b4f110cd64b1c1f36ee5ecb101ca287e696b35e04d707acc76c92dc755d9b1b4390f6d332015ef0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ba115c86934929ea1323280009f16b6ee270b074fd441a3672a94ec7e08cbe84befd4164d50a23e9c3e0cbfbe48476e60231009dc1ea1be413ad1d8f63c7e217b100cf6177e844ec1c0b19ae8f9b5a3ee2d26891762f42789198a462634c22ad1153740302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301c62d01baf4a02b6fc7a1199ac525fd72eb7e9741817ba9b710fe8f1d95040d21de8479f4e5349f16e38fc97c4017d25023100953f9a04015daea38b83f98570a3b0a0ea25224ec2efa067ddaae2b7fef62d77ab2352aaadafad3869d811788043d2d10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e2e76202d922b5b8c061b2d201dacc00042a6416128d975b07dad21bed4d2b67271f8cb9c278dcf2c081cced65ddf28702306ecec135c9a6924d84426c3e915e7aa2ca4bded1f61cd8ea64036f23f89812d9dad7be0dd418ac31d467c290c188baa50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230560bb3a37b4afc20f12c659dedabca58ce057f67f0ceef5bfe893e29d2382dce492bdc7fff215f687954ec97cab48a69023100ebcb3da348c5d120469f876afb0f5f63b6f3502e8c9a68520f3b633c7f66cc7b964e5b5f8f75a33b233fc6fb028e19fa0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d5a27cea00d51f5f2c474ba738fe27aa89fe122aead5bf37d2416dd7fef4ecc910c13179d7405676b4d6547697caf96902302f87c7cd4c47dce73863aed597c43776d616021a38b23d049fb5ae550edc2afe504a50ca9eeb60ef579a89f28147fb3b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100df75e1cc7d3c0f9b0b43032629f710eaa6419b66d155ae24aa4c979513f61045420ff092e8df8ffaf0ef1d4a64d9b6dd02306f44baf88af57043ba4aceade599974286f79f980d142f791607323222d1c244ff8f205dd70ece8ec3849d11f18e2e150302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304815220ab79bf49f4bcfafb77d8ae6e3b56f8f4957f5517da8010283a3f0e047d30b341f6b64bf35681fe44dd8fa5ca302301befdd886cade132c46d1e301a977ada9d05fd69fa45d9dc1b5815af8e0a6a40f642b675629ba253aab7a3b632d2f5b90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f70ba407d7e4bf08a214902fc16072f53b7a329a563db8bf9b8b12e52180cf4c1cdafc3d27b09e39acd3f8b47d747c4e023100a5741aec6b41b8f9a2b18cb8491050bac9c29e835070745a6777e911067be59f8201021102ed85c00532e30d645aeacd0302047c435bb500673065023035cc24e6658f66ec8f59e3b5c1f4bb7cb94055794af47091945d6fa1e0507e99a03d1f7d4416395d48a8f22800f0b6ea023100a75db5e978214faa06aac22678c98139febc5ec5a8e631906972b5dd7f066fa0905e8ca8ea646ee88a6a5d0605d95cdb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301f54e23816efc450f6b24467169c7479e934d0f2276cadd7c1258a24a001006b4a10be70cf88a45f05e6978f82be2596023008f6a18914c36aa974491b04835a619c6d467fbab507fa1623316dd583c177554ddfd4c41f57d0beb88c40032409744c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307ecd2f466de060a5b6bbaee9584cb4a3d6236d4f94b99f7c1a84a786b1d07539ff58151002da0ab8f8ef2df5583c13b802305254a7d50b7fb1167c73b4e54da09e1a204c3411e6e8daef596cadb9d8a32322dcb0744141e7bffd196c5a3971b502010302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a69dcf668566c8427ac78435832a58fedb532fbbcfb02917ebebc1433f402476af5520194bf18dc691ce1bb44b3b8b69023038bbf4f16487d8981db163c5633f9de2650d7ba1e7c3c6cc518bb10ddb8cd2b5cca549d7bc7ceeb618209ae5754f01850302047c435bb500663064023079cdd01df78c6371e08368e423d650e5eccb442db9c31094d4a4fe6d2f95f81ffff860433d012ec1acdf078863c5325c02305c56542d6ae73be2e72f22a6864f95000b54489d62c6ebebdefe9aa94317411c0ef0393166912a6883c0824b0a4fe3f30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023056f0f0fb246dc457d0f873ab9a7c70d4afc1dc00bd7af7867b384df76dfab08362e3380cfc465983bbe47e6ace34fe0c023033c6f33a86c38508bcf57b0fa6bd5cbe89f7b1527bd9eba69a801c24e85f0a225259182c735bf771b07377f867820fc50302047c435bb500673065023100b691ab54a25b0aab4e9d90d686ebf3fddf5eb6545e8683208a91da5e3e5600cb30297fe8de9b65c5d62fb433e0d970420230171230aabfdac87a58b5f40f4b2246515e7519a6c50ed9d661a62392a0592f019fd0fe00bb94526ec906d3e204c8ca0a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310098f24a3efa2bae76cb51caff2ab62a7081fd137d0328800f3794c0c5d081632396755dd3c90877756fab4eaff65d10c7023100ec47a239b9a7f0d05bd9655fa9d52f95e97dcdf097d153b68db10dcd33ae11e5faec544feace0dabddb7ac366490bb100302047c435bb500673065023027c2448561ac316331fb54fa2194e7e4e9933d546b922074a89d37dd8f62dcc8db2cce832c7e8a794d71f0f88cb803d4023100bd7baf1d914636a22e309570e97e7f0d6350911853267dfe7400f1af2416ac6369df9e79656bfa3c37a98aeafd4f50650302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307d6afb3f7461784be46043ce9fa3419d199bb375740abe8175be86bffb881a1cf7c13d11573d35eda20bf8ea46f97cfc0230083baebecfe0a7d203d7436ee6e1315201b987164efd6d2ee6e19ff2eaaf7f8d7f01b4270c005adb9baaa9256171cfdc0302047c435bb500663064023049fb17107b01ae76117d6df0b19d6131461b79e152e7c08163afb86343d1983c0e5ee0eb0cd526c9687cff1060ba646102305dd4e08b28756fd830346a983687aa2395125b3c30edc847ce4ea678a01ccd12f5b79ac820417011dfa81976673f2e4b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303f77a28faf7135e7307e8f42d40b64b8f8fb298a17087759de4ca678440fd5281d527239fa68a2752e3663e2f07c6e52023074cce25fb86705d8dce7dad5013a5f54f4d0185c6de75d6a75bbfa0d59953aa783ba8c3f3059b9bfb9d0802afa5d6cd60302047c435bb500673065023100dce8984c21cde07f99245d9fc8e8c0ce8f74f5538226773ceabe40ec78ed17edbb7d25bdb185780667ab92ca12f7e2c90230560106ecb07603b7fc2833ba5f232a4e0bfcc92ffca3a5668cf8999ac01a15aaecdc796acd4a150e6afa5125c459e6e90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009bcc532e008898c9963f352c864b379cdec3a5d9ab45a63f1da52e2dca2b7afa977d2ff6b961a62132a590bc6fe8d933023100cbf8c06731b700709ff980a7d9ae91d2630f43bd3bdf75fc9794cfe9f1f3d0758639a4c4d7ab35b2d7b965038b1871ab0302047c435bb500663064023066deb447e77c670f076ba0f700e812322d7595dde1ef0c8c532a3699d396f8862afa1eba2916fbb0cde46c34b9c8762002300f4912aded45aa4e4698d0aa1d2a980f3f54667f4a958143bb46a01d2a81f588510a4f5f791e70611048fa13d727e1580302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009c6d552540285fea6459896b0f82d115ba46a7d9f6a3da9c573894e7224bfebdf45966a4df2a1d1eb66a659931359c390230531e73b884931106572ae12e68b06b26a2c32135e3fd7f5f80c3bc96b41fd7f921fc0e8783246934dffd5bc65d517e3f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023015ea25f214093efed23960840235e0da2c13a41b04b718ac745f445d3a0fbae2061b5d9fe430aecf36f0c22d55230da5023037770f9ce81271a631d26fb25f52ba8cf423cfc231b524c1a95ce730f2d89345ec34ee353b69677f371e2a0f13c222710302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b33124736acb1402815eca4e54083f958627a045ade4796f71407b278144c4f5f75e1b9ee48484d5ec458aec7ec5806002306fee9f36daa5a9ecd542d49d9396915a91ae64d8e02d9106d1f20ac36708c5ccd5f8f470bac32d2260c0c25ecdada76c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b8d7d73919505e8e827afea4d213577e62b599239fe8caad263bf93a3c875983218299c92b6407ecb9c95b313631fd80023078524661272b3ce9e57f592c130db1aa203deb3878f87502daecabadb173b54950af102c9135994d693cda2a20ddae8d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cb70ff7cbd8a1bc8ee535304c493f57b3f8f246079c218f93e68a0f6c5f1caeaab0722a37636023aac277d9f72627f640230584c1fe7d38ec37fedbd1b8eb9e4a2f23044350a2bcd1f3890deaaef6681851a9bde504032ef7e43152ccdb483d7471c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301dc402a9f20f1f982b1dcd7035efb6ebd6e073d20604e13b376aeb24bd13c305392b6cf45eadbb4d680ffa68024e65fd02303a5587afdbfe0865f0f0dc6ffe67693bccbb24eb125c7ae846062d3b7afdad7cd5d4c127540d319499d5c7a2ecd8ca1f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e28f8d1898f5fe4118f2c73627f215e7436a0e34de1170dfd9afe62a94dd0182efa83bb44bfad8eecba548bf6a7b8122023100e97d0d2cb59ea41c4337768238714f3b70ad5c76526f72b581502483cdf20c0b09bcbf922da369a055f45a3c744137d50302047c435bb500673065023100ed766b50665c25444143ba7d3999c516aeb9cba56ab6d661ec4b1b8a912a02aefdfa443643e6aa949b0b731aa096ba22023054d46a041c4a0fd8eac5d4dea546fc7e241439d72fce01b9f11ad15fe9f7841a9df5206ddeedee476ac6a4c009c35c2e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100aed44ad424fabbb1ef7ef36c01651666297d28e7aa3382ea9990786d888da00574f749c548fde69cf9224ada8d881ff00230658811c0c72dc29fa652bc06630155900c16c1f821e6e94f1813a49191626f6e34aa6e9b8bd6f36bb55c1bc4fcbafcb60302047c435bb50066306402301fabde55b4065c4b0af4cce6df8ea6f3f777f22d8f772d99aef52a3668c29833d3919f37e67c161b6d258dd540fd4a2302302fea563f466a267e81bb43424f4e922481653e5ebc1bca33aad7dfdc1ce59907f37121702b61fc55e5b13ebffcbeef2f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bee1123272a09829b1d4f47be9908bb5fb366622407dd0034090fae629dd70458c355c2e908dbafcbd3455a7052ddb7a0230312cb4ec2ccbe2afe9e0f8ab7a5eb6944a08c09e4cc4ec9a31ce0b372da180598662ada19002f467dba50f3e447bdc830302047c435bb500683066023100c958dc6e9ceecc54a6ccbff56de20125884db6ae523d56a27671518bde328f78f6a5096cbf1356cf8ab0f8fe69edb3cb02310084e65947fbb90c5c40b917bf458abe6059d36078f247bfadff8cfd0b308150d4dc6237c89d4cf08845ab9797ebbdb0da0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ef073c633c8efa2bbd379bf59de1c1ce4d248e7415f387596327cbe169af6481f49b90e4edcbc3b1f8636d0b1cffa63d02301170532f1fbdaedc9952672e811eb0ad849827836ff78d9263b77b37ada8ec99d8bad19f259034e966c0419076549a4b0302047c435bb50066306402307c147b79f529c0115cfd7b283f3c7367975da04797dad1c4711ee47fe6c7d295f5346d27901d9c657a0cba06fe598cb90230727532e583ee66e55033aec5cc40e4735d945f5e022e91eb93cfe15bf853caa302ad325c8a268c7af5177b7199e166780302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304c80d38b0cb8abd50cceda0c36cabfc1830e21e5f03c52776b24aa5d0be727770bbafc51fead224bc7ba7b325724732d02301a56233ac45bf2812e287f9f5f66dab14bd0f0d3828c8e0b65cccbdad6c098433658629b7da1493757fb6ce869b4e9250302047c435bb500663064023029f884beb0fb438c30ec24d10291e850c58d22ddad07bc0602f08935bb63672edcbaaeac2e959049bb182830b9bd878b02303deaa82808dd4ffc77c100ce690a3a4a97b708e3fcc8c22cd83e75d0f745f814d7e9f92eb5d785d0380e820a07cff63b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310089c5816c9c562a55e9e9586c0e49cf05f8ed10dddb0d99ca11eb9bca3829c9844161c94a6b31d146c7db117160ff8e6c023000d5ebcf81237a7f34761abf9d4300cedacd48b3ecad3eacada639de638cc8af8e48074277f19782abd616b0fde5a0fd0302047c435bb500663064023024bb42aae42f09cc4c2a849074a768f16b3f283bfa7ba927581c60c3e797e7c6564bab6382f3940eb44ea49c50b70b4b02305bd7ab5844c803e9d4f29ef6b0a6bf93f8c2f61789ceba2e7dd319490689989d319c246b3f2dc656aa50c266bceceff90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301db8039bc34960484486992cacedb0cc013370ddef31d5a48821d9b1d81adac8c8f9b6c5ae4c7b335b3551717a97b4ec0230693b1af398d05c9db5f86ebb3fd704983b35f6d6316e3cd48db924c8da2d3f652b53d764d2850c13221405caef0d9e640302047c435bb50067306502310084de8b1b1046d57ad5aceee0469ee8aa2433dc914b1c1c45eb398ae03d0c021cdac23bb1a73690aec338f2c48266f69002305740289127fbe8aa4d7f86a976e156487a8efe84e75d196f97e96d91dbaed2cd6d58ebd249d49b20b92a688287e7b8f50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023055b7b2f29db220685e9ea44f9709cdfcf5e84be69f22810afd0659bcab08ed7f8895a81bf7162edbf39cbbcfffc9e0ca023100e1542e0edc798ef2903dc9da07894cbb19947a0e921b7f33f87197362d629320547926d8ebba92d773d7215a88d202f90302047c435bb50066306402304cacf1a005f4be608e56a3e6e64ce83a0d6b957ffd21b9f0bd0973b22ec82fbb128acd7181d27c3522fd1037511723e402307f47460311a12b642892bbc1a05c55b86c15d6f436fa20043b1188d80eb4f3640c95016b6eccd18c3555bab0582eaa6e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c312d53bfb9c9ca4cf863e6f31ebeba0e6f55aef821a854305a4ad2dc4b4cf22b6155e33894048ba2b82a33e57607014023100cdf0a02fb299545f5a12ea3b5687f0af4822909db4dff51b93ba321ed1c84bfbc2d4634c030545d5b748fa0f382778d20302047c435bb50066306402306a6c6b3fce96099c8ca4b8b5c9d2c20a575c269c91f773a0fdd6bdf1187c26a2c15fc06f3e9b18740e328ec43e6196e202301a118d7208e85b55a75a98b10f31a0232d876819655b519ac0cace8cbb924ff0b0cee52f08576397b6d7dfec320ae2e80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303bca67dad22454b6e295014b8be98d5d210cbe075afe1e897797dcfc86bc830da4a8675b82a189be89b635003c39cf83023065259f51b5a422786fc1c8ffb75df24739ab12e635f198848d218f7a742af9727843152628828b969caea06f5605bf2b0302047c435bb500673065023100fcc17b91a0784fae5c914dc74588d0de21b4c4308be907fb104a156c010e96639794442aa3fe20bf54da391e8e70a249023066fac7ac302fdb2cbef8c0c5c76cc49beb226485f1ebdff9cd4f80a3f285c87b976d90ae720b5e44171f778be00d4ada0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c67f06db0db337e47637a178481451adde4ecd647b20de8ea9c8b654d27ca7adc42dac10b47b4a903da9839e6a505d7702310098af7c5ddb91990a61d09afd610bcce3dbbac5df9d1c26a3419f510f73e8f470490aed44a2b775e0acc5b78b5f606d2f0302047c435bb50067306502306817c5713037e4adb1f406cee02548025a28ca38d96cb8da0a5ec0c13d8b65b491130cca88b1634a3a2986e14d2ecae0023100cc2195598682ab896573bb503461e9873f81091a86b85778f4614738dd7d3da25a862efe856717d7a6cd470a007d40f10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023027b75a09909d975a75545abce54257caa65f2849406796d615c2f2bc5cde1c929543e79a8a5f52e0000adb0065daf41802304163d693c3fbd156a9cc6bc21573d900e44f2247de25a5547aebc939246b86a52af949b1e77d4aaf805b228de4b71f710302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b457ecd878beee8384ec5c699da652fab534f114e708278c43dbeca7318ee8a3b4d48dfa7aa9ee1f5b315f3ce8e23f5c02307782194df368f6ec2320256c2d5ff3027e73f564acabbb06e4e1a659d8de6fd99cc19ab437323d1cfac7d7ace465a3170302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cf9c723c5dbe180d9284bcd6959d1461534c1c7276d9cb5995f13fce235753e6f1d512b240c73dfde5682d7bda654b5d02306a522d90912327e1b45ba390c6dcd223529e6ced5423fed913d81677c71b081b70c98ba6d164855f2015217cacbedc270302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e081da7b2d451fdb4da46cdaff0865e0bea3f6d603365669131339840358e5e0a1f932cab850d782b19e09708da5a216023100cb454f949735887074859b88c7e19133a1f3079d207d08931ddff59382d6267434935ef3703a7ade6e8f570eccd907090302047c435bb500673065023100a9928fdd474bb1eeea2a9a45b46a9577d4987a29e8c066f75bc12f0d2187f793b2ef64f4769778bbda053d6b6f03bc9e02306548dc15fee07590c03524087f6f3d35f1e9f86e82afa6cb0bb337b37cefaa9facc4470ff7293901a29f671cdcba13c90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023000e8387db4a3cf25e5daa39d8c6561107dc64dfe16aa2786a75bac400c64e5c658b4505a0696679e3fdbae3dd58dbda902306f944948c44254f731086827d29bb1803845f904148bfca779bae2715051be4cd0980e07bd2c0cd0efa12c87d86b9dc00302047c435bb5006830660231009623156dd09e549d6621b19aa07b45cbcac5a2057264f949f1f31c2d6e46344433f43c2418fd4745b754717f9a7d364f023100aaa2e6439bed91d501fa62f7493c8cf2548ff5134f8a7bf7e9384c224cc35236eb719bda4aa0f6f00fcddb46ac1dd2740302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cc060d9f936eea624fdd2b09be56085fae0aed77c465f7e6feec5b6b2abbf5475c059a898deb481e086dd88517187250023060b98162c20f079704dffee17ada6cfe79b7a72eaeaca9a187c95abae5e7f8b736b2cf6102a5899341325d809aaf38ff0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230063dd33c02f41fdbfb3d83072180c34516863ae889578a6b98669a11d2c67d4b2e70900ebce64d905873b1528c3dfcc502300d22f573f702cebff22c577659a02046625192e6f1f0154a0ef2c8dc0a4a954168c9754835a6d77eb1421b8cb61be6430302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100988c72aeefa8c233fc2f298c92ca47f21a388d0744679e22310b344cae4f9d45595cada32e5bed896f8bea60ec2fe80f023100b5929c75997c51b9b68e3a3546c6484040318806a2884f83b6f6f6255e586f64471f5a2103a1b892fe996964b3a090580302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300a5fb815197f3b34b8144f5a4cb1c2ca79264cdba760e36ece1d45dea0a49721bf096ba37f43df26ecc7004a7794c24602303b6e2a4f7ded80d61e1adb9ce959241b543d6bfb6c21e790759a8b5665051ced69fa6b0b4ecf911b3511d57356eaa48b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300455aff4b61b754c87be473b53ba3597a49607a3e6700112df7a6a99f672dd82ac7677c35bf288fdc0f411241184d05502310095171a9bc97a4afcf1a2540e00d657e10600d0bae7596069ebd3844450e11b74c247b1adaa3a18e1417408572ad75cd70302047c435bb5006830660231009fc76c8ae8add945c942a1bc748941ed85619fd422cdddaa9e95d8ac8a555b4ddb28b1ffd3fe2b12d4834a78e6a1b3a402310092b7abe40619f216bf14be0751ed8b39fd40f2cb6d7f52e782e48f4fda735c4eba2a22ef0a67ebb4b1c89b92ac559cd60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023035047e19a61e0a8fb7219f1199c132195edd4bb7ac204f9758af4097207f2d1b7aa3d62e1ebe099dd757df6c98e81e31023100be94c1061994f2a7b1913a729e18c746b2412296845524af04d687e98f19915148e66400c94c16711bb93c463a2f93890302047c435bb50066306402301346603830538e57f3dff856e5ecaee45d41720bb5cb8943bf1a3888fb9682beab382b0975ff8f495ee1c4528d44a32a02307bbacd99d7b77fcdcceb4fcff56745e6aa2dfcbe8aad08f180ddca65fc8d00d1393d40f4f0b1a71533a8dbc69084ad710302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cbba94f9e2b2b37cb1e2b80d128a5101f8e371c9ec92365889791f7da662a7a5b60a3d171b40911f6362971e054ef5dd02302bc6b71febccdac0f03335b1f04da9cbbccfea7d12368e48cd0b8bfd1911c446d3c5cc9742763f04baf53b20f6f532030302047c435bb500673065023063db386139ed546aefe074c10adc7006ce566c7c1ef2024029c1018886ce48f18b401e7d4da2109b82783eccfa0ff4d2023100fa2b1329b40cbccef87910692daf0b9f2c38c282104828168a2590132bd6297f3c12ff88d9c66f808308fa089828f4c30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023040086d9372ba46cccd4f00c2c3b4dfd535c20765db23edfda712c02a36a47d4af2cd4e75d2a75ca56f5f33d6d864ee2e0230138809b43ac6e71ad9f06df5c45c48aeb1e7cf3965fa815613304c15ce4bf521fcb032eeff760da263ce0262ec3343630302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b61b00f06c0e16009807850b5ec86782cc6784b54ac1709643c69fe185cbf82d1b0acdb6a419cb3e52127a08dcdc5e2b02303cfdbaf9337e20810ce83ac7560f6d779331df03409cfa0548c76ff395bd5ad537b7fce6b6f3beb26833e322ac46e5740302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009a2ddaff5d6faaf0619b483ecebf71ea194babe19c2ae47fd24a2baa0220ac874fab0f4bc0ff013c5248f219c0a1e1a0023002f31d2a11fdfd4ca6b7715adce7889b2e12b14321323ddfb972e5947ae487494acd2b9e12aed105dadc4126498d15c70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023070f7809e501b3d26cfc9352d403af3c6097780b262d9cc106b99e8b9f4b0e3d0b96e105f7bc51bfc391c1a97e10f369c023100d02d2f0b463edcd1e7f3de7f63c60cd59ae1a09f48565c74eb991534ab82d2f4a530a886de7da6a6da91ea7b08a68d7d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a6937d9908ad24db450903e018b26d5af4f4696a2b17e44ff6cfc72bc386c82cb8287411da48d4b20cd85b9cb86b5672023017d262947b17a34d4d0683d224406fbc9d145c708c398353b9411846c1662a8fb4e8856962747eed8e1a70fa8c1bcbfd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009bf1ac3d0dcb234503eabbf41ef6a90006711782a7c8c72bf96c26fbbbff2d4394a059878d4971a9c84af9aa961ed5d1023100bb60782533df4f1b60089b9ee2e86751ab39e585022f7c08f1d8af693fc562fc2caf0b1d80a9c06873e7475617b908eb0302047c435bb500673065023061ceb56ee839fff9629160e540c5a4beebd1bcb03102b2c3de2e3f4390e6f0862a6088f5ed0a3001e14f3ae8ee1bfafe023100f82f81712fcd5426ffc42cd82ca516cde8b42d8a074732e9a2f43e5aa34000d7dafaf3430222d3c175f0a46fd8964ee90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e25433ab47076fb749561e92677c9451d73793c579a48ae28c727025ce2c4e42275954efcf2af8fbf7720fe5921192f102306419d1bdfa5a9fb3f8ca418ab660d05bab7306628f9bf12c029ce234a61f580e52d5629d30b08827d34e9a3263e65ac80302047c435bb50066306402302351416c22662e109fec46c316236b0ded0793079f77a31034770aa6bb872a43d3e8fba83c1bf3ba44a7664461e3667c023034aed9866b6d1cc57c2e683fff9eb317b620d6660ba9bd903ec313682e8fc844e77fd383524d283a500e119dd335d9580302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023028dd6530270ba1a787788fcf4ee3de9dd13cdcd6200ac74ad1ca6aea7b4f8c9d777db851f93e0e310808b58ba7a0037f023100e603ab06259661b050e7b527105102b1290d69ddb10a03c651316f6d84291f52b10e75945c327dea25b5a4e2de50476b0302047c435bb500673065023100f5a1ec4f5d7d621475a44ab19f7016dfc02af5798af97e965d60599181dbed9772542c703c25987f2d6f988eb6b0b3c2023007cfc92d2d30cb6bbb510f03f6ba956c65e00e37cd468eb5ef3c40fe5d80e81d0f8379e0b6e7720a5bfe12d8d3322b2d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306655b53a4f92de74f348edbc7fda4ba55239af8e7354845ac69fdc776385c854db08a797136afa7e8613dffe413ed4ff023100c5c5de133d3afcf0b6ea07a0f43c15b0d438fba03826ea8589e95dd2e2bf5e8a54ad80d94503171c15542c15dc21ac150302047c435bb5006730650230502325ac53016100b6f438b5e93ee5ee8e239ef767c800267f66a20aa275cd14a4cef34ff88f3980df43ff7c3ee867ec023100c47a2baaf05459fe6aac1f54c27b2781a2ea51fcdd2918c5ede9a0ddddc8affc5c4f4ff78ed4cb1c0e851416a5f492c40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bd088f92883eae5f4bdd6edb96cfbe0ab1f016c373a91f5e84a219175c3522f1d629942a50e8738759562e54617c48940230582d5561e8ec770a2f7735e740fd6f91cc3d4e306fdc7c4d2b7e516e5ec9651dcfbb961261811b54e52ea83ee0fff7a90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100dcd43381b00438613868f73407c6263e173b702a5a36badd4e7c2e04e7387c5cff6b7df114f208333b15eae0feaacdab023100d91d011f5aab76ffb10a33b80475bfb0ad141fd6f457215f7d5c270d8170efc5728227fdc3902e6fc46b263aaaf21d490302047c435bb50066306402304b12feaf7e2b5864388ee5e7c667edd2860bbb65e0c700e07c5f648d6fa4f2fb3d5854dd4e8a1c1a5a20220d91d3961b02302932e508c000e887e51676747e4e7d894c4f98c5e3de2d6d5de9160119063a1103bda1ebc0cc2503d9f61e75367e68a20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023060daf2913ff3a713b4e2b876e463d0afbec6307faa852463e6b964b8a53328ddcbad74f75756020704845b8cb5dc9c6c023100c12ff5dbd82204b08e1820f370bb117ae343fbc3673cc1224bdffc128927721f977c81bd0204e86071565d3d7a2e05370302047c435bb50067306502302732abd7c1483b3b28b143174596465c28c43aafa7212adab509efad01aa7cca8b3b5902355eae11372ac00b41a0a229023100a78de06ebea467fbcc40c5a5fa2e2d3403cb9f76657d4042e1845718aaf86068885cf831dc0862af14445a926f73bc170302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009d419ddf02c141ce045d0251ef15af2e50294042cd157d962e0f10726b5e56201c98b20e46692cd71176eb2beefa32a60230505bcd37d93f7eb59671ef6df9e59fde8afb63ebd689176323036b5054f457b1e1947e481f93a65be0d4f6db55210d100302047c435bb50066306402303642b2badf5d95c87793e3d81dd2c1b06df5c0719248ba04effb64a3952328467a431ee2eb19a072682b3a4ae2ca5d5e02305e0e68b5d28d76bfb224ed9a9f4638b963b96e357afc0d531e2ee42b3fa4fb0d8e775bab81451cab4cfd86e60b23f6110302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100deee8119d8cc2046d5a85405c151a120a3db3ccdc722e656fe2e587fdd2cd37779666db8a47425edecc0d481ebb5dee802306226ed60548e620df33fb78b191726ce31538fd0ee583ba0279a30d72f67ed6fcc06384f0c2353fff508367693f91f3c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230247f7959a68cd37fcf936a4cfcb264b585746ff32d2921c6bdf6f1fa1c753c1a6f96fa33339525522e0ec579e4802e000231008a0e6548ed2ca16745ea3dfe1b01450076a36e796fc237c8fc15f81680f50eb3080f4aa932d6af8b06b09cd3fe9e24e00302047c435bb500673065023056030060bf17ba2d7ee5b1a7d560f46bb1acd064601f0def4fd0b1f8ef994fa5c7b3fbabcc8bd5401f80cabbe4e2e9a5023100fc1c19841dd476d289e79fcb3c54952860d6210437c0f128dbaa38868fc72fa90b3f24dcb45c6eccd32052b66fad0a7a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310094c5687dc21c41e095e2a02625cc422fd0cf47f6b5d2973f8f74cf2783d7fad85bb1a394c512c743ca3c9f43f18deabd02307385263ee9535882ceae8a5f1a1ef897498392657ec19a4628dd765d8843ef3219f16433d81f9126f0ba88342056599f0302047c435bb500673065023048ffa4881aa20ad173a123917aba3c545c8c58522aa49dfb109f751d2b19b251fab07a5a7a1273402fa8c8e9f11c5872023100f03e7422fba3a79f6df62399ccdf58570ceac32d2745ddd717c582ef2cd1123ba16bb3109f8a9651b677e5ae7b2bf1780302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023052e8687fd644fa4d5c508dc5d7dfc64de23bcc717058bf7220b812c79a74283e775492d9e6cf7e2e3c89623d080026c00231008106d2c7448ce3fd8028d8aa6f815de8ea71691ee6ac5b1e3649b28da0bd7c097609fd646398084a43e5414dbfff33640302047c435bb5006630640230406a29bc52b85866ac7e5c32099a0c77b37f3e1cfdd0546a36dad920715e2a6175df63039e549679e1f5aef7c199877e02307c6707045dac013df6dbbec101fb3e85bd3a8a5b44b288d55a4d2e23ca10f6adde3df2ec261ad58d4cf1095e6dd1f08c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023013558fddb38c060500af80615af7134ac2c525973f001a8c53750970d321cf7dfd57cf3dc00243403e18ab425de845a202302211580b535828f2cf8fd0ad46f12e097f9dae487deb69e7de68f6ab0d2816b6be6c00ded91f7faff1a1aa2d04d6f1d50302047c435bb50066306402302e059ce1826805781f0ba7c030afece4f3934dc47c94275824fd58159dc13d11f14bb5fa8b309e0de563aa32396e0a5702304ea786f7ea08cbcc56bbffcc399db5fe1f553a8ba6ee5a452bfe25da5420836bb0f80f603f637a69668148117a0a41440302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023058bd73364736200e440da36535b2479181564ccc4e23bfdf9325f6acb99173321b69d43b7a7d74e04512b924dc3ee6ed0231008db4f11e1ffe7c214e5ecf84ff36cd2b08e1faa1a01c36fda588ca499aadc878c30f198173aee3bd00a974574004a8fa0302047c435bb500673065023008f39afdc2d6a7c9dbaefc5530099d229aaa3195979d6d1ee37673329e4179ff65de7f0547ab6b4564736b165953fcf0023100bc7e0db2852b8852328b15f262cfdc2050f9a8867a266695748cc58a4743d35b82c8b6f756e8594776207eddacb8c0a50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100fcf26fb9d1fafaaef7184f85a9fb545d5bb8cb48d8fd79ab8c2a32cf0df4fe35e5d07a12f445567e361eceb68b930eef02300ae4fc8e70c8c438f264920998495e4f01371748657c6fd441eb04baad4de3bd2709f640775edbe568f8507062fd27ca0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a321604b130db1293cfd225ba773975b81e3facc51a853581598101e998ec12afd0388d7ebfb13c7874d06a2d13aeac902303a2470ec777f42ea5efa263def42289f99dff0998ab5035f0322e9d5cec50554894e565773cdba4a837558ad52f51eed0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a66acd6167a46e10ac00eb5c5c702f549bf79114ca8939cc14eee2921f321c7c4f958cff5fe7ba34f4df4522d373fbfb0230581bd77123147b3e1f2654e3890a111956e2116f693439e5a8ad861eb9d2b78348009ca2094fea46d066dabbf21fed100302047c435bb500683066023100fc7f441adfbaeb0ba987e5c1adcba794465721f1fd2bd2e27d0f676dd53d9e885e25927349beda726788a1190ef0594d023100dc9ff069e4240a65d8c16982017549947af30c65ade31f15117cc6760fd4dc799a2fb09b47326ef3207f0576f7abb65b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d17ea9095e1e732ca3643a62bf0adc787afbf4db99c1d659e1fd3b63d02a7fe5715473b60b0c07f7cc7f32966c32b0dd023100b566729b4e768db0efc9307e64a0d895156662861399be6685eed4cba6731545a08b6fc66cab1e271f3c6010c7f5a1c80302047c435bb500683066023100a8d68d4278be3877d3278e70f5bf0896009409996a5abe930b38c4bed9402973d388244ef94305555dc8abe542bd423d023100c63e8975f85780f1008376f0e3ca4df17f04a01a6e439ec477e2501045676bb2f5cfca2e9bfe04a4d7d82ba185706a830302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b9147e0848feb940f589f95d8b02371dd2312eff0dc483f4ffbba8f6867b8fc123c4dd817fba57ce3ac22bb2e3f1f251023016bb50aed78a85b61dc40f5aebd8c2ba23473d6dd86ef6e38e3d1e6b767c80ab9d5601589d92eb2fd9492bb8a068e2200302047c435bb500673065023100a629077f46d78a1ab01f152e845deb76b2a981b9d790a0161420941f4e8414668ebca677607a6dc0bfd3d69df3e457d9023078754ab7fd69671b7fabed5e1968f4f2f6f51c317410fab2a0bbfe1c941980ef63020e828d56ab564e22eda00d7499cf0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100edc800a7feb670b40183067c0f1de683db32af94b217e728d6a62cbf6e12841a8fbac21928a5eebfe415bf83aeb9d20a02306e3d27f9a125271b11e213fbc9a04e419a2f233bc2eac3c7430460159520152ec900b743e7e4bf60b412225741603e730302047c435bb5006730650231009a53f567732bf4323845501bad7e4ff2a33a36947f022b0bd06270f710b72a4e90ada3e74d7ba3c2a2c95d773467026f0230395b32dbe313c61af51b2203c4f7df87af97c0e0d2ac2ca8cb9b6d0a5621a887eed4aacea1d635fa1edab1010228c7d80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b37be7ef60e4051ba51e2c8d1eacb13c5cdbd560b2ee10b9d8f0f941dc073bd4a54b572e9627d45d8e27c1df35723fff02310091728ec73c64881e9a5d3827a4ded689c946b45770cb13da6021070f19726e40bbd19513ca559256bc69e83c3bd34ba10302047c435bb50067306502300c6853436e8a730ec2b0d7e48adc117babdd453606852fa602027c37497fcd942ba28a11ebbae7f36f4f2046c73028d8023100e89ecf47dab875c29623b4a032980d915dd8ecd24176e0e939f3780ff7ff289960bc33eff34ca45814e10d2cfae5faa90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304c2aa0b2c5ef263c94a4049fb2f45e9b9354cdc4acf45c84c4bb3bb954cb20ac4a703264707ce638f84a56b8cfb870d6023100fccda8dda7ba5a9a4511e223d536f880663063d39948de22991ff27e61d2c9ada1867f2b988ae2fbc4db591b5da85ed90302047c435bb5006830660231008d414cd6a7cf8d6ff08410a8d1e62600b49451769800eee35e498a7815bdc9f6c2a58573e8422caa6d335f7a27dcaafc023100e8b15cfa0bb38df405a6a8872b016430f5abb631ec3e6146718ee474c4613ef1c7dd3bcb130d7e9ead667753ef9788b00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023015bf23a33c8180b9133568cc6ce42605b7c322afed3dd25bbf12bc43e53fa41f74b61cd34ac4dc91e53c1951f0aeba9d023100a41b63a5cbf1412dc3b8bef95b738775feae855c43eee01944e188b4b7f147349d764882881d1392dbfdac9caa74ad0d0302047c435bb50067306502306833383ca5b1d1a179063ecd6b85b841268a4e8b6c3adac6b5bc1443c279dd9286fe3fa74d02c521ff6c21907752b2470231009aec9ff028a266ae703dcee5ad9e756bff47d8ab57419bde602367ee69d40d2a6e25854b36d7ca5759c6851e98abf7dd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f901c3b7336c141e5e6f89b7e41b312176e54fe33734b8a7beaf2dae5d72504ae10a4dc54a1d9723152ee07144d845f5023035d9819a85c5aa22eb65d7581769397a92aa55f14af34606612ee7afa1ad0cbcb059d890718b2da1d47641b7ad081d290302047c435bb500683066023100e20aa976eaeffd17d5112a3f680516f513f941ccdf2fe2571b9e657d075584e87af4428889f34012c12e42e42632d4e9023100cf17ef4791ff3c83ac74c6b2c2fd564091fec3d85840a35de00d046c2814d1bef483a91ae352448e94d6953549bda2020302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300af481e88614144cb8eded9596e0ce071e89bd16186343c02430a52a1c85341765e65b17b0f9f770933f294b5cff7e330230017c25a4f75b97bc36143fe6191fe7044d9fcc0aed1234fb270a9af8a66c8325cb2d8180555283051ff42217279af53c0302047c435bb500683066023100a2cfb61214c688def15ca963d6da40c1a813e9c7bd742f270300a975fe10a5ba2d90604e5232de555f44b586d12f89b3023100c724f27fe38798b613f5696e180af3663d7da358e4ee1983b4884cf49a3e165fb85687d600374f9979950d18690ce6090302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230392eaa263dc4b015ee56fd025dbfc3cc464deb3325e08c637d3ed4477ab2f2e712e56c5376323f4f11879af6076376160230619b665a835bd52aeeff8af5a44549fdd3030a7a2172ae2d36b23ffd69f8bdd4b111c84a52fc2dd9510984cca42950f50302047c435bb500673065023100a963195d62c68a4104510e718cd04f0dde1fd72405b47963431b4638969f4d66d26bd9d44c312176f2ad9d7679f2b89d02307ca6520146d4cdf0b235ad18ddf58772878ac22500053e0c4963b73865376a8a3b3e73f5a95f0093c55ede0d6eea58040302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c254548d8d806adb845dedc62a14d24e3ebd55c0ed69931565fb300c42b8d766d8f6d8a34496b486051496835a3fab3302310093427a5a07c25cf9ed286b0367602b03114d21d084ee8673396b27befbde1568fab6a58bee3a46e10d34e599bdf20a110302047c435bb500683066023100fa34c77fb25bc2c8fe692f3b087960c72becf6ace988568046b44f4a040825ddbcbc54420b0faf8b26a8a14d1f0a729c0231008a135a6dd3d0912059b8bfd07af3ce2bece3a3e562e1af0b1e448880b0b1521b4fda60b8ef91db3afe789d75f246787c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023061f5cfe937eb2d83ba1348226360be0ada05e3f543dedd604219ea29559894d89162032f642c3a10e75c68668e0e0c71023036a0b7fc079811cc756f82736989359da90283989741b4a1809c5ce791295569da32b126f5c8b01ede410a354ea5b3f70302047c435bb500673065023100fee7f14b1c71cae734d12c37e48580b62c8f1671606ae2341c29d86b14e08494a37044d933adb0eb9362475c1159715c023026fd587e65a2e9b707d2cd1896133281252d669fcb73c0b0a4e24f5d6a2c5f24909ab57c6dcbab0d4b2bb7d389c59d860302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303ac82626780467f57997c9f9db4f3a4a177f9f97dca8070c6e84cc133e8d6c9fef44d7709cc7675c7bb9e99521a6d149023066a3bf5a4d4ca4e50ae0ff60d9b3317f2b0f545354ce7bb323ffba6b0d269dbd532de3b164c2bc8d01401280682ea7470302047c435bb50067306502306cbc42fe96a90ca7c70ac94356205d1fb8978c391d53d1beff2e7ebaa168d4353f112ab828448fb3b2a68eeb6540d41e023100acfedff17736f76c78cb29046dd86062ff0ec2acd266f4cd1c00f3d27164a7a04f6bb00040b44807919acd518f16cebc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b6b63e3691b441103560f5d076a0135286c7b8365582a7d64bf9b087a4bf72c05cf2f19d691a8bfa5f5bd0dcfa49b07c023100c340abdf246fd3d18b74a8da1426773aaeada4a2bd21889af591fb66db4866115a0147cc287a74e418dc3f4889a5b8660302047c435bb500673065023007b4d3c5a7a4a2292c56203d6844b9ccdd1156eeb1708b481f05202fd3b881e0a990e3a516e03e17d804f41c54f60f54023100ec0da64b8982aefa5c72623453b8a27d7d27d3bb5d92fa61403c85e273f09fdc2b5419d1c26400057c83e41c210f75d70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023066c2331c3802f6a3047703c892abcf3a38554f81f8e377df226eeb25bf365fd70ab4fd7906aa84c28cc613d047be0db5023100c4ce7689a6cd375af8eb69353714ec870fc15ecd58cb1a2d8dfee3a34d63860325256ab5d90de720ead3abf05c3992b70302047c435bb500673065023050e36429758594ddd6383473a941afddb7983cf8c9af8a63d14cdccbd127899a063c5daad8663ad9ec33f0bf24a41419023100df11372d36029a243024dcfdbbcd38a0fe5bef3638e1cf56b370c91ed31b88745ea365c440f104ea927bb3390a5769f80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300a7725216a8b38a1c9d5c6af31248f49dc0a570b873532b8e0206ff5143da8ba056b8553e4c6bf3f8cc5d50d7b90cda9023027ccc7130a05bc27260b1be3367193b32ff26404acb97172d5048eff5c4d052f33f9db6ce9a9554d4efd23de592df8570302047c435bb500683066023100d4036ed13c15fb9e1d23a0b64a3a20a26726b815c6ed42f061c538902bfa103dd3b30aa349029712fc89b58a73685075023100ed3475369a82683088e2ebde5bc64f51c2a16e63a0655f3e44cc16433a000f1c2df4438544a534186e1c68661fca18cc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023049b84b2b76ac2db2808d66a6959776f4d6c75ee3f4d614dc92ef6f6716ce9b82946ae1d4f71b66519fdfe85b60eddf11023100ed09c3bea220cc388f69afe1c0d51bd809cd72497667cf2b43a6268fb87d397a4826b23f3d4f3a160607aa8cfcbace7e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306d60fb11d9a7f737d038d916c12b4aebd1ec8f3991f6b3949edf0a61bfa1faa58f9b0004ca0042082dffe8d0115a5b81023100f6b4c23d14e2237e31c6bac9f906c962cf21f13bcc8027c4280fbedb17b749d8058433c0a6df320d93e2b65381f1ccb90302047c435bb5006730650230313c05268e32df7c751318458f9ec82fb157097e8ca50332c80d36a5d1546637ac0feee374e2c9d321b6f97f526b11bf023100e7f794b23d91e57cb1bf236a62618974a153dab868bb124d6aeafd4260dfe8bb12bbbe4b3bead19a7022388214e2530a0302047c435bb500673065023100f0c5390955b251eacb0a5693142521d3f09c73a540605ddbc08b3a9d519004ec1a1b8f00e2dc8ec2b7305c781733c16002304f496cc0ab8b900995eada17625d2877e9fb89bd3879655fb1f37f198c2333d458bedfa8248b28ee1a574ae27ea749a50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023044d2b6f4173d8a40c865e1ccde2b0c5dc5693620ac9d73891d7f3ac88867b411ebf0eb58244339c11a5905dc5c9083bc023005db6c11f851e50eb44ce5c7f9e3320fb48b0be18595f8f50195fa12d9305e4a16617bba98f9512f7865014a0fdf2dc20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100955ba4028158929e80f0f7eccc44b8cc2d69117bd2e7f98a7654da0af85201c51cc8cd07be1ceb0fa69d5975bd59188f0231009a62c90ce03980253ccdba29b70de2e3b7a72d24fba14d360c56c2e2489472a91a89fba3c0398662507f0a31e70311c50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023018976c6204ae323724580cca9f072ddb39d8d904f2a92ae7983dd07f018dc652f29333107101b5ff443a20e9c2a24465023100d0a415b69f814ac59ff359a1914a7d44b99eea8db818c898b8d4badbc56cfdba8bfe13af565838298360f735cf223fe80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023004796ab4e86b1f3ecfd14dfb6aeb37bdd132dd3653518470cf8bc2f986e148279f2b8e145125ec7f23fa8ba3cad87dba023100d57fdd610febf462832954e0baad7e8547e45cab6ac632f5c79f7a2e6832d3462b387e9fe9187bc1713970a9821d78d40302047c435bb500683066023100f65328629056ca7fa165f667a1cc4e30ec8e46adea0fe027d714f81098319e512cc31019a78b90b33dd676cfeb69a15c02310094adcbc9444be272f2c480704dc89b604ef8226283e481f99092c57171474f9fe8fa9a68c17d0592509f41df2bf335e40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023059d79f8b0f0841159e94290614bdf5cce255241962f503cfa50f6391ab4b49f29f5749e473be1c383d67567dd7fa20a7023100923c43b2cff165adb7d4f00fd9bf3ed20e2edbf943f10aff0dc1e02cd91d2a2f69e6f09b52875bba21b039403192a5b30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303ecc65f912b27c0e58e2f297e214a62224413c6f06e320a12db11ac9d27a9b989669db457513352f07cbaa2920ac1375023005626a4764a04f48e5b4aa8d5f413382015591a52c7b06f14394a8cb5b6a9708511c1708301910f4c9d7e2574b62123c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300337a746ee893e27d55dcd1969852b1916f473baba2fd60162876d059f6252357fd52342e643006424c9b7b6f099ed2c02310097dcb548621ae44aea49e24e000c34cb791b7ee232c3279ab03a0fd4c1f9c6da52f243f228f53c7ac666e9dee47ed10d0302047c435bb500673065023043c639637c5eeb4aec907eba44e65d52078dd66f0776d3e12ed02ffb5f11f559a3a3c5c8c6e5939826e36dce9d06b962023100fac9740070f8bce64c2506ae2fe11f518e524e8186068097993ab441c15581a34f7feb2900a74adb48985d3c2dac724a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303088a7eaf931a319ca65456c2977562eb1b7c7c2a990ca9fa714a57eded9e0ca070177884e388592256c7a5a275edcca023100ccfd3e011392dbee992cb62dc2b5383f9b90177e11b385038308e060a83328f87c76cb1a621a5f7423d885a75b877d530302047c435bb500673065023031dd18072f47fe309efba0c8a6ab9efaf25fe727d6e6a12baa6bc4dc37df9db194b5d52258ff83ab87701c6b2eab0ce1023100f46a6c0868351c405d8ed189d9d1bd02af230c88397af688e44697ea21a32b4fab1d821527ba4242d54616b7cf3feeb90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b3d4138cbc623774a597c94b48e19a350bfdabcb860e885e5403aac8621b4015202940e81b26f990ac0442f102bd94be023100b326f1c252ab48e75c28e042c1c387c14a2cc282bf714d11e0ccf45046aa655f9389edac8ef6922df3bbb2cab0d690480302047c435bb500673065023100b5a86159e09541fb6394477a22d4f2454a47fe16a59074138c64b8d4f78eb59600747ae0b0808f6760c0e40a20a0b91f02301ee17a08d23c32489932de96ea66c9484dcf381a195fa7f0ef91b2f2e08eb6726c1970aa99fa4fe811e7ccb7ac1a71e50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300eee3b285ec84d98e61a5f400f764982ebe2bd9251e85bf7cded6447390e07ff230d810a4aafa3956d3201b93f8b5987023100ccfd28c5b84b57dd771d5969603d76749443e682811b243b49cdb06139c5f380419cca7ac86553e0f4038b7808ae01820302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302040872d742566269488eb0adc6f30514597fedfec43e11a1b6753e0c2e7c43733ffc17e2133cc6dbc26e9564ea33704023100e0b24edf6494a15de6964da87daf093c45c081ffeaf8191b92220c74f2c3233575957cc6bd8c7a3d855e00a8e4b59b5f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305818f8965f3e66817d1cce71a2bdfacdc663320e73e7fb57185a1cb015b0575e0d5f46c674108185a667d129472ef95a0231009191f0afc0983e47bbf8cdbd71e844c455e9ad0d8522ec91c219b988e2764637439dc7633e55021949fc07d8519176c90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cfd3d211aac24ef2c8b5bff47d938243e720ec2bd2237be2c16c892ce1e1871fe8ad1adf1ccf12bd313ceeef8fa47eb102306d35a9e72fdb3e5fe691b3167323207d70f97a6c3351b56163a24a55a4caa1b717066b5c4a2331e1710fdcc26d6e98130302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301d4afe2889cf0052a2b6dc8bb70a8f72e26988afd2965570663ccdb599c3fb0c2a9407e90c97553544602e18172fc614023006d4a2b01229beaa078a7ce39b4bc48ed44e281cf97c496de2852c28900c30b84aaa8575f14694af5cf80006873ae12d0302047c435bb50067306502301f4fdd30dc4b28043a27da9473dca602a6a15885118068dada301efc94a98f9e93957dd098955a035aed8a4b26563eb3023100ebf220e99c0e894896bad20863e16a5d72f439f41c9563434b7cca7d6a5fffb712eef6faf32e9eeb269b06b9357bf7ee0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e033d79b346c2a5febff81fc65b7176607a7e37554e3317d895de041f5397c7e1460113add0634ae6df411da5ffea4b3023100854996e3b8966a8ce6a5201542b5d4272265d39dff3bbf35309885d34c080728c479c75cfe9911949396a9fd29967da70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008d749a3636affcd55f5f7f04e1340bb267ef6c4f98a74e8c1670d313269755d17cbf7624576f3de7338abe7a7c52b0b9023100dabe9b38a2912af90ca8278d699f775c19691d1a302816d7cdd313994c26fb47f28dcec84b5d07403cea72fe221e6c250302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023023dcb1fc7850d069d4d394568e69f0a655154f018c2b03c6e70c53b6f8f58958e773c6a76e748ec2a3d80085842d110d023100bdb2a5ad0aba789bb08a71047dde0a71e8d4c7ed2b6202154c7f69a058f9ab051cd2bc7b623a14476759eff27321bce20302047c435bb5006730650231009bf98dc229410e00c13bc8f0e469376b836bf12c1a798eac2e7c967d049851f66641172087723e85bc7763415719e68002300a230ba7106ab6655e180b1110e2e76e70d0f0caf80dd857fa600a700b69565782cd8c152d6a833455648d5862cd36740302047c435bb500673065023100fc1383ae30a0527911324d4cdbe59b0a2e79125deef33d729c62e21f8725771ecf5de201209e5e315361a85a45e0ea2a02302ee66acbdfc0b796bd9d3fecf576335804a51671f7d0ddeb296e335a982e43fdc7d7f34c45b3d467c45966a49b69d65b0302047c435bb5006830660231008a911674392c1d3e9432f63b1bcb367f990b958b1d4328d590f3bda4cb09c5de6316e765c337d7f66b95ebe1e0dba6520231009f587a650d3ade29de9f930ca5e5b250717a1e894de229666c4c99ce861875d92aaa9c01bfd068177fd33c5846671b4d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a8796c338129fb3c22ecf44ee31abf83aa1aaa5ef7cd861fb859a5e2239e8194b7e2397695ec8fc8a45ce08465e3d33a0231008aaac8abb349f506d7a1cdbb2dea86d48237b5e1812907943b7d948bc1899dc4d7f383d9fcfc9f80bebe655f60b1e0ed0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230450f2a691defb47df053db86ad4037589599c0e38d62d51f827ec9e66d00fab1034e1d0f8ff33055589c013b3439022b02305aa9da502ad80abf736d156dee3cd6a92033b403483a30d9b731ab2f1f8d7933df4d0c5181be68fc4489044b320122260302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303c8c734fd2ddd2524bc0324ea9183629fbcc5f6ad5dd14ac793b74dc6656100ee521da03ed317c202ca927892de2b4b90231009d00257270d8f73d5a095b94e6171d6ca453a49ea103ea446743378681a201931c569f82f0f723d8e9835da34eb1233e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100d9f650bfd31fd8655b43912896f260ef7bee0d67997e73ba59f788618786bb4896890a63b92e009476cd12dd1e2a8aef023100c4db68b157e4b931f5ab9a91d366b5a7bfc47bb40db0ec84c548dcd88968c61bfbb045926aebf9f826be607fda9e0fe50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301370dffa9488e5228265e8894fe24a07b3bcd1b55c9cbe8835a4fe008191d78466c4d92078d93f1f90a5bfbea23ec728023060af4ec7a7c363f2a47d7d74853123107e2ea776822a21e12474edb1696875a58f9de6b89b9baa4d98b348f39f23a24f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303453fd480b7fc1673cf3bdf6fc7fff49d7363221672d7ff21aaa62beb1b9d03f5cf6d0b94a3a94df2a295c0770fc152302300e2dbf4f21a6e6b7ee9531dc7835a7e3c48d81eb67f9f2bc763b358100be64ac28600f244edad109c3edcecf034b75dc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023062b0787176cb9043daee3fa9e30fef8f35b5ea6d8b86d56d7bde8d1a0d663f7da21fadb1e8904a9f00c74898fc6470ed023100d2f23831a093b8534367f24733f86349c440ec90d3aad10d84a022f3b6f2e674e225827921dc6e64f0ffdc29c6263fab0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100aee9aaab5aa6531e0629edff05d5a018032b2c042a443b550811749ba2e4c08c7587338f218ce3cf25ea60e91bc2483c023100dce53a410b35a29a66bdbd0e18ae168d3e0a820f56ca24d364a70d4d755dd3d78cf7debe198f1a665c13f82b1ea387090302047c435bb50067306502307077ee250442f48bdda2f80a370caed975da2c13cd46179da605696168e54249642d185ecbf3fa709429472a1c81f804023100aaf23d32296ff1f577bdaa111922d8736302cda1162d157ada18ab36e2469d83db29cefadd566d3389c85ec08318f0930302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b611da129de7e46122890912b24cdf63e3e75ddaf0e4765efd78c8ee1861730b8ddf662d370819cf0e5a8c0bbc69e77502300ef7bda94ca19c123baebc5b2cf23e67da38d4c3dd825626ec6b15a18c08358bd53fdb708a690c86fc71a3b221724e400302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305ea99bd090b4f402f7b9ca71c64f1c06df94469b559a09eaf16ecebbcfcb4961c6f424c07e370c94913cad76ce683d9602310086d4b87ff08423c20b4e02f74e41e128fcf6b8278491a78e4aac4b07596eab97196853e03d2736c55ccae2bbca18eb1f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ff4d9aa71fd8e7ac841e5201bfaf20dace52031a279c81e9fdca0a6c4f57a6aa3ce4ef6d012d52a1529e64158d04574b02304bac00c21569ac3638e522833475bbb89362736c694c7ee526969301d0e41bf02c86d6ed585f43d111fad4f67ec6cce70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230109c72db39d6b032bd7263c2c97b697521bc05a565af4c0b6ea562331492f2ac5d43bd961fb0711df7c922a6e575f27b02306bf6f5e3178796078c189c2e964ddb39abe9b60b82b10ba43b8fde9a941451a9017109e8c11b4a8aaffeecfd10026c0a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c0ae5d9fab0f1f5b814d1334cd385072aa88f1085268a0a39ebe05fc48918985cf12fb0b5f7f340f05fee02d0297fd7d02303cd86a5292c046a0ec0d37359e6ed9e9929a46ce0acbe6aa82b360f438b1b0579e806fd067cae3c7a02e62f6e1d42c760302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100cb43425d7bc19fe19d6e0619994814a942b7cba32bdef7d05ce082da9777bafd7acbb876b81d504ae82f9a1de555ebd2023017a38d72afb5083665e22f07fb633489ae0463c55034874be4f69ef3313f9bdaab0ad0e05c4e981c5c2e189ed3b5dc3e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023060ffe53cd96e08844addef87a8bb3a5aab79ed107a7b74f8592b92af6aade39c8e6b48b53b4ff455417d248da51defc6023100975d19b93781a3b8a3f4bc812b5633d40df143cda45a7bc3e427b5738dd73eb99543004ec5e71e056643ab06a61cfd480302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300bea5dd5808c85c66a327f6061b390b1c0f3cdc5b8ee50d4d106847e292a13def3df4e735aea79899b48458b5a84977d0231009d9e54bdea761b875b1fe8c39af93b379d40491feca56392c47b01822151ac9e28fe40efe6e1b7d242e7a5ce26c436900302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009f9e72afca402a4aeb68df379cc6919c9d409efe6da209e32a09ac96d1f1813ba5861c0fdbe6b13c38c025090509345502301996fbf60ebae3c9871164dd1bcc3a54d2594bfe8e6e055df1f3444c7ac6f642fecc9e671d177d024128b8176e558a430302047c435bb50066306402303f2b018c831ef58bc91e3b68feff820611f633dce5b3bd2e031209e0a985024097da8e27478eb685396df9a6779dbc6c023075fb3c97bc402cd5f4ddf2a73996d45e822944730aaaebaba69b9403e0d18657c296081a2e3d3a7a9aafa6551c8a3e760302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303dac73683513f2f4d3bbb2122e293081f2fdb1390c5dd152e10c5c39de2c2c33ce907032e387762ae96ac2f1366e998e02301724dab9e01fcd1e501dc5d34032b5d27b310af62e34af6749922b217852c46c1d0920b5dd43de34dbd1a293ef6729740302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230790fa5b392571f6e3a0d4c751e060dc355a90b5981b5d169d659243429965edb99214c8766410492ba3a89b73aeeb4d402307d8228890ad8d4096e074e3fe91ba851c0cd5c876796e934fe17e62f584c37ba51e0d4a74a6156d486c62b9a7f90fde60302047c435bb500673065023100b7e688577f8e0408d6789627cfc0bcc3f264f6cc5dd2d7699a0b0549c8a49af08ed114f0065885bac8e087e7401738f502304350307bc73c12f91be896796c9c892f346b34853fe202d9be38d5c432eb8223e9812f2308c1de6d8806909a4af372390302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230513dd3d4c1ddf2bb71a14ba39a374d31f287ee1bf1fe93a9c1472efc016f94bcabe9459ea40029c2bbdbe46ed3ade317023057dd9a1785b6169e6d9293e04725e7f0ef0b4c0be01c6936e1189007808699ba92b7d739887d90cfd4c8f1fd8d75c4f90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e7f7ce62da40ebd0433b2c1709bdfe3503a385de26695b3bf8f7cd27844ad067349ca5bf270d48e2c39ac5a527146999023064201e918604711049dbc6212549b0307de3af253b9c0dc4185a1c8e9fcb356474f452e0694cab0f6ee3ccdd98e16ea40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302b185566d46ea7cfe8fa103b9bd95783d8665f759b23281c84093138cb7d193377b936c48beeb6aef7f88d726f5fb13802301f3ec30b840b6afec53393c19f6f76c565d13d6d3a7c48b29084e933ddd7e0d3ea566e86053fb7f311df616741d871c60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ddbca6797234747612743ff324faeb201fe0ba692bf9fed7b0cdb55b6f1fb6bb46e18246a3306731348c9b52d183377d023100b39b3cebd7f94dc96bfb27dbe4188f1f1a8e2bf4c6b46ffe1b01812e5c7291ec14bdf65e021ff63a447f3012ba4155970302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402300b70def634ae3f45d8528168e1259a04c70c1a9488c382710e68458ca9f13e67a76a692e8b3022374ab8c2dddd93a3090230280ea36cfde58ccd034a89429ca24fcd99944ad7e665e59109c32d7fc5c0c5d35e5e540f321e1fba073141e00eaf6f1c0302047c435bb500673065023100e385c0203dac90a7b63be36fec06af6ca505c9290e7ac4160e398d7c7077bbc35b1fbc48960a2628bef8375a46885a4802301a220eed90baf94d3cd6584fb8659e5cae85fe21372a566c026542317552bc3f39798025954a70ca01b79be29841838b0302047c435bb50066306402303388a3e333a71eb4fb00b9509a2a63394272dcdb8983eaee5b00c37e54908b6aa687421edcec960f1c41360fd1b5623702302ae35c4e14c0522c4bc453e205101804498cec568d9fb08be84df9f28cb65d55ca99736222c993540817c576d1072f7d0302047c435bb500673065023100d574671c3e7795ea29b7b6a26fef19fc019431b68eba183b49705b1b700a67746899a2209942fbc681b23250f9afc6f702301ba4a614ddc6a3e7da7812f516b5c6e1b9df6306de8eb8756df0bc789ba4828419646659c980dc9c0c342dc63a77e75b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e5ecff52687a68df4768b22c9909c37d4b81a7b2b9b4a204618b416f92136c9c8f0900e2cd38e1f0b5dd8e81f26f980202302a9d1187a87074d7fa72722e1334f097ff3a4ac4563c6fcec2010751fe075cc7115b1e7fda6d63a393fa7a30224467620302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d30977ea1feb57d0762e7eb1a18740763223e90e375d644966c921f45b4b3c8c1383145950a2c054b095c81f2add4670023039489557bf27fb00f8a8ee512ba0e637b9cd3cfdb2868aa59458910804fa13cbbd6256e2ed1756cc3e4d0bfa4172ec590302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307fb13c7c11ea7e0b6abe20117bad047f0432443cf248679b8485ba395336b8866c478a68fcbe7a3909ae6d802c135c7a023100da462cd7f73816c5dda9d066abd65efbca4d293501298586d2def7915dca2ae52c1168a741dcbac367d024a25607147c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ecb9e82832b0c5fc43ab54a06b2d388e8c3a914c38ae56f5396c5548c5374ef5d5ef3fef654215dd279e3d97bab95556023055d7e489982f5633c35d437bbff1d89e804edea8ff9668217c7ab0cdb1a0b19b95d713defec92a859c138914623ba6c80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307f3f5ea9d04cb97f7f65d65aeeb835ff0cff981596666b77450d4ffae0bc4cc9bb17948f34eb22c3872a6e16f211f94c023004f5fa1059a3734e3416bee4d4056794840c82c620c1561e130f9681d4363385d8047d4f321537ba1518939178989e060302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ef6af7b833b3d1b26f6d2a346e0f7fd6241015e11c77f2378d3b27f8e6ec8aae2eb166771e335faa849acc367fa7cb5402304ebfd404c8d2dbb27eb2024f399c174e0bfef75291366f0c50273cdb6f6ebdd52db33073c1263c1ffab3b8abdfa166df0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307fb13c7c11ea7e0b6abe20117bad047f0432443cf248679b8485ba395336b8866c478a68fcbe7a3909ae6d802c135c7a023100da462cd7f73816c5dda9d066abd65efbca4d293501298586d2def7915dca2ae52c1168a741dcbac367d024a25607147c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023015b18f5a347572f207db25493703c3df25fb2c3b698e62238400abb5cdd4945996d24e2142b91e20bc31b433c34728e6023100880649de5e0af106ff0a52aaab51aa760577cada88fb2da2ab3c9f63b01b8545dee1054a485472fe2b446c7152ccde520302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023000a22a7ae99d85d298ede3ecdfc09fe40c169eb50edf77a47f66e0d6ea25820635bd9914107f46cf4b1b14fd8e38ada6023100c9d20acf567886ee44bee83427406dca62fd840dffa831c59f860563ae895310a8fcc5bb1adea6d01b906f65b8f52b120302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307fb13c7c11ea7e0b6abe20117bad047f0432443cf248679b8485ba395336b8866c478a68fcbe7a3909ae6d802c135c7a023100da462cd7f73816c5dda9d066abd65efbca4d293501298586d2def7915dca2ae52c1168a741dcbac367d024a25607147c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306eb094a0063f85c94de16a18776728e7f63213f13552a350fd1054034afa212f0b9487441061bc46922e74815bf510f2023033631a94a8c691573606269c6a982353a3135d1b8e084d4990ae7b9ea4815e965a43a57eab5885f64c1c487057f5f3ca0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009038aaaaa8cdc9afb8772ef92677fa0b2759488e6abeb1d75ee5a3e263cbc23bbfb8997f28d1594af5c9128b932df4a2023100cddf496d3a29845cfc2fa5978db6e6caa0f411079de267a6aca2d0d2b5e0ac00b699b0ef4ba8720fe261b45f820655760302047c435bb50066306402303b07f5108df1575e23d47cf8bff3f74c3a95b2753f1487138f07bde66b36798a0d4a2d6944707eae26c5aa87dcce534302307b3b547167004e34ad1c1712617a68578aa5512e2c6a52d4feaab033f8dfa2faed14e42cbd09dfee05915126c104e68f0302047c435bb50066306402301dbf56efeef541c6e7cbe3095100734eacfb6af13eccf490e9f7d5be946bd2b667e841c212af1ab65e0925bcb8370c400230236ac6887399c6b418991a083884fafd806a2dab90bd28f1ac3146f8e1c301adbc893f8a94926fbcd2920ef2150884880302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023008cefbd078b309e36b46788d2f4dbc0dbcfe270bbb38d589e3e04c50bb436026b8f3b3188178248d0fb78d910d3ee7a6023001c8c4edd8b6bfad9b7c6a37cf2b797baf31bc4bae52feab0bafdd252a50e74aad684b30ab7741cea2ae04eac1abb60b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d8340d32a332f18e3d6528eaf4f807bd856af26d9b11cd48299e09f0258bb3caf2eb0a29b297e7f0c86c4aa35f77ec9102302b53fb535297c7dd7688100ff0158e7c34cfc8c06477165e14f5c7878f19833060685d65a787b82b5f5d4d4aad3680cf0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304f6da49af1f31c0cf93c11a64b5398e28e49b33587e4a964cda096882d704ec9c28531ad12860ea7082f38c82b602bbc0231009a4ceacc445a7a0bea37f1e1b1e2947ee2533fd07c8d9dc22a3701612af0252bffc1228f596c712dcb3ce00dea24f1ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009e5a6bdcd38ac4244fcd98b3855bce57c80bb2f46acfc4919136db760a73361cedf21350861e12bf2331af15e318026d023100e4d4a5188c030e94e4159536dde73ed972c34a20ba8c4a0f5b2d20e60e88cef04f4c42b481e407f9932343f90fb1390b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230602c128e4edb2721e3fdc71f9f6f832f06c99946c370f06184f46ba1a8c110f8a2909a8c6e532f4cf2a0e709e1cd1d1f0231008944f3a800029426409d937d694fcf2f9f98e986eae0ab1385f58a7bbfbd685bddd73ae6204dbcf7cdbc4f622351b5780302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230111818444a4d52b9d5433a4a4fbb3222fe99b37ccb8d5bf4bb2a7efb9b6d20ab2e3d092ef6753b3e93f3e0c687ecf9f9023100e409dbda5e63ee8bc754ef09e266ea0ac6b19e5aaf785f17441f08f998612f36a40298a4793d11ef9564c3437a2e00570302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a6059c2209967aeea3d9ac35e35e17b989d9bc15f1b83c038d0210d4c3b9084155ede2d48ce452bd5fbe026dca66fe5e023100de90e46d9013f1c3a02fc95ec02ba6990c1f765a4170d1c032533d40881858a23b2d904c7fd05b4e02f0a36e686c8d200302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230095e232635ee7d5c6cd3c27d304f63bc683833baf556e347dcc2b5d5309c505990683c6163b15fd770b889745b0a2652023100b08035c96d9f6ad99b11cd6753db5d2908e5ac6805e5ee8a52e80d37e300dc39549692db096dd4d1adcadd758839aa740302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f689cbcd26cd6faf1b96580ddd31a8583fa833556dbfb560b4f85f5e4340b873a76d8214d9077cf707233b2df6846ea3023048b25460a9b30145f71618ff726fd442824bed1b956a7f6194d2d345446bb91bb89525b99e488cb97ca043fe1974645e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ee85fedba26ab6f81f0ec596a6e4c07c0e920bd759b7758c0542c35b12bf24c69b0a06c4bfcafb73b63029a9d493e1cf023012d89f3ee4e805308dd244767b3032b9dfa15868aa0210b2196c30463f12458d11d53da15dd4187ffe3a2c5349d168a10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230792e7d39dad6cc4744409ee044e0f1652c6f4881ad1699e148aac03a917e03c00bfc912cd8fca24b3d1388916733874b023100eed19516ed171b381c48e0f80e7a862dcf6ad065c816b4d407f8a8fc1c7e7d18949acfe36416a6efe229a46aa0e835f90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306faff637d5d88c2c6ebcd46cce4ee00c0780c8f608dad3e5f67957ced91a2f52f464cec44a39ee9ffd2d6cc78265b3be023002ce668be27e0c299313807a8e5a4ccadfc46d86c62b62cb97c853268466fc6c2f9efcad1be31f70dd4c54715c705e120302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023013f6ba7b406014d8e2bd2e93b2e34ce44b3c3ad8aa02beff201810d3a42e75d4d7a094b188e0bec82003aa6535dfb01b023100fa4d18bb791a36dc8b7508239b8c6f2bf599995055146cf4bab4a8431b35e7bbf5c9ebbbcfa3adbbb14c876dfa70c2d90302047c435bb500663064023075592891937c5c4e29d5c4d8f0b8fea24181cb9faf0c9103537d426b3920284c24bd98f477fcf2d763204084ce76208102301cbd938bcea671ae85cc9581987876fbf1a7f6aed11e36d06599b1fb932cb19a91c33c907a9d561f4072c4a095fcb3950302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e3f6e3121555c957ba1ecc0317fe107eabb5e2a16900b600942f7aa56af5efc42b9f62e015be8bfeeda372351bc9c6f102302f99147f6e71922f8af03948274b4d03659131e3ca0b84c9482061c32120bb1fcb4dae285af9c6d3e5d5058fd84ea5790302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023001e2928d5409f08159efa6e04b48112d4c80897e8ed7e59251daeb9d73511ef7f74deaba31f69f0ea9672d3b2a228f4d023100860e768f2551cd5ae2fa0845e9e9ccfce25aedbe48067f63907954c9e7a9a62c70bcd12c41dec40f3552259d5c623a040302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307e3ac743677357ac70b908ab4190387661bf93c9e7cd009dbb170ec5f52e35c55c5176f36fbd1343ca41823f9dad474b023015c570cc0250e037f1de6721780a3d1175d8d5ae4780f11afe9a2ef5f3175d8db86a51e9f51569ce9e965c31665a7aaf0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008a216f88cedfaa086de00d53f9e2b42040c90215bdc1a4ad4aaa3dfca3b512af7609be64f3de7b0ddf545e6b4c8ad5ec0230781a736dfa1e3bce9fd0af17dcdc19549a0879918369b0624b26c294daac104e5206d46a7b5d51a56675d82263fe1aac0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402307faf5d2674b08f20d96240bc872349367de8a4601500b8cfd57d52254485934637240e6d66192c12385d71be171dcb7b023076b952003f5f06466e9faec02048f6b9d09d2075cfc3afdeba08e213cfbcf523e27696626c2667f47193844dd43399740302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c6e754bb0ad51db44c432c5699683f2c63413797ee81045429811b6fbc36d591bb3425ea3b940ef7e36e2ebc48b6424002306e6789e2b070f6537c5ea54153eaf0897487bd04c9e6430f80f1b564851280f6929b9900ebe9e6cea1fcfd9c85c4763d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d0ab8d687e6fa983d5fb382883aa1cdc7cf9024b8a04959ff9e075b43a3a1b7edbc7d33b7f6bcf7e2e2b105f1e10a2b402301721d6b0d9b58fd6335c69cb98b3eeb6cd5f5d5fcc1bf2fe7e1cb2979f54087e1ec7bab1eb9c49b33561e75782aceec70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304e2459c2a04ac17194b942fa251b5b8cfa40a1de15d5d2b6e6e066d791cf04d76675da1bb8a80bf25bb614ba7eb3dd81023100fdcf3a4b8565615ddde42f601cf8376750dd8ff7f397d7821536725181deb827e470e93100578fb0f3e138f320e2cd200302047c435bb5006630640230116eff4f02209460a542d1cde435f8f7dc1eabc21bb97e5fcc2a82886a1ef23468fd0531e2f1146f50f4856ba3176367023013521f3c6f316e1c21ee57986f593cf6c9f28e274f7653437035437f28610d56b1e39395f47d386c33d2149ed326b83f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c55ed49fc1345d9f16ad83655983bb5d0f6422c5fb6754f6e39b2ce8c8262ca35bf39b324cdb13aff2cd6fdcbc286a41023100ae6a3d6cbb0a655a5dc0481682f1c7f16ba60f1aa5248b79bdf6d75b1ed85390ca2d22d8e4f913c325a21c761aa892e70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230279293449a94b3b135060bc01df2a81299d551280f17dd25065609cf52e97bc04b2a6d59828b4717cf6131dee5a44ba902302074495a0b11ec427fccbfe3748ec2221b01785885036692b5d21e380c5877871abab5eb4d7c33369d572ba1737e76d50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023075e18dcca9e826ed9648c6ec4601a2d3a53b90daf9ec136c2c690efa977c385450341e133ff76a49aa7a82a17a203ac9023100b97c363c47b6e5fe90ee65088d9a511a361462a502ddc99aa62767dc942bc291d188015978b2384ca61f31415881980c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c8e5d8569d4d4aca23453a9b71fdd4c6164b02347f8493bf6944aa8da1edb21c714e145eb53f30e2d315a8835ffbbb4f023100ec0e7fa68a4431f2495543575b61eb68f761e623806358e3e651a0c2ea1b4e4958171fcd9eb4beff0ee2fe18b168af370302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b78fa9e4c17f8a248d91db4a78818a4bbb7128a64bec4e691390e9e6f0d938cdc93dc248f2c85a88872735c6e9a6b659023100ea0f191801586eb2efa0ffb8df933ee6b9b335793e97353a8296886c9b1abb7af36584dbdfabb70becaec88b48a4cd830302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303ec8858f3b3c4a6ed733828fece7110dd2a0a40fc29fe4b7faa598e42e5a89c11c73781ddb7d6557af03e07b4217cc29023100eb419aed929ae974f7a7b3d7b5b5cd8174aae9fadce532e42e014ac3a4728462e5d845abd2306f4e60f716df35d5128f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310081bac4b94af67711650372bac2bfa6e82de0ed9b008cdab92b63129f3d6ecc8507a45fc4abb286720e6b599f7f3b291802302a55d33870396275b8a8b9d916ec29fa78dfede122e2ddf2c8896003b2c0179330b95de26776155cf7ea95273f11fe5b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502307d9bf9dba287a7b909edb55ac39199294363b9501ceda72431c504763cbbb55448370b3157b8e99e5193b6c0d20f6d25023100836fabf154ac32fc44950e62536062141f64f9172ee94e83c0de147748f64a88e3431010507dc4e58bd1c8d364cbd11c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305f35ffaf8ace588336db38321c22ff3d42803bdfb8e387b925cbf4a4a5386abed852e7f505203b351b2e5fe20176d1e5023100e8672ff7f78e6e99becc7cb4cfc45de59e591d708c38de5d90d5d29a1f9c102b0fe5f00998716ca7e288cd6bbc7f09c80302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303c79a39d97fa78e20513bb8a6ab36afa9d274e147acc21ede28887da09ac58878c961c374458073db5f1cb09caf92f9b023061f2bd4ddd41e7a2648fcbbe7676b615b1723a006b11d201a9cbbdd91b6e85843659776db5ed8d4c09734a1e2fb9d6350302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a974976a4e3707fb026668747cb5ef6afa481ecf3286507ec7a73b0ba53e9864828ef36c7af43c29d5942e65cb1aecee023100e502606826829c987db031fdf21829a5a22d80b5f1af002c020b650290e80442c632c476c01233481e06a42557c0836b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100826cb153cfa96c79e39c2162cfb11fc6e5203a5d0eba043667fc83f1175e836a9778575ab44fd72e7fb3ac9d0f2c9cd302300e3f8c3e75f990cda0f09d635fa57cb073533a1ecced74abd4e3f1292d5f9aab08a2271f81a6d744233220fc778c8f030302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100f60dbecf223c5898c100d45d0340b8635f7d114db3233e5c9bdcbc228a2674b7f76524e55f9bae5410b16d3941358eea023100b0ecb4eb135619e69b6d0df980678a4268ae2090c423847d9332991707a8e0d6a5d5bb3b8c6b0842474da419efbd98e10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ce7fb81f88c14c60656cba1f14363d9b51164070e691fb885185f9376fb6f84e617a422e5a5b3b1ea636d0bacee90581023074e2382c617a4ef2afe71c516dc90e6ae6ce1f138fe83125c9e0932fd47ec8ee7c52b1af205d0564bdcfe782d2d6e3cc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100fba29dc67880af790b21e6410f6b509de97ad2fa5c0a009aa8c4ab734ddd0ad44d536d9b3facc8865749ab7207af3b54023003171b38686e75b47b2f93dba56c404f977618af0c95c93c7bd0f908fade5994ca6b36a56d35fcf32b5fc02b8dee893b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303f8ac2f444601382359f2349e7233b1dfc640cf851561580c581a891389ea46ffbb8b3cf333c1bbc851dddc357def57c023100e2c4a39803f056469e2fd214452d22f32d92c9265b3b9c7013f67f252c312b568a61b7e3ec11c91bc9be7d5a1ff87e4a0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023023257d1e323440359835d019a8df32c6dbef7bc41ff8c99478c9ad99f704caddd2cf7b32d8329b744e429e9d5eed2ecd0230245db6c45c0a0fc6144cd4ac16370a1baf9896885c5d700460a86bbaa0882db39a243330f1a0f9605bb12d841bd273ce0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100ab60e42c69af02d3bc15f2d0f3f81d205b288bff5a7417bf0aead4a3e22295cd82845627b762342b0d6478ecc186aff2023023f99a054d462679b77a39930fdc07ebbf8ad441a62327b1883ec87c92fa514959be493bc652b6146ec0bc7776ffb0160302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310083edf0f2511cb8595166f8ff432e12f17c75ca2490c5b78e4dcb4c811402f4f37ab956a57e36afacaa2e90b04847190b02310091f3cc6791d2b646ea214872b1ee7ca2bace570e053d0d12fbb803f7784a7ff9e3302a4504d5359a3f3027da548fc3a60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230717ea0e485810beaac2153dca9b1c2eba2d46eb50d73de6d44afd592468ceec9e3882b048b9ad5086fb674580c6ec09f023100f18d5ed4b2ecc52bf2974afe7fc0e1fd857b1fe6b49ffe6f9e09bf57c521da908c8a830ff64c4f9fd9b13db2eae721870302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310096b2e24a8e84f0b0e3acc89faead66bee92d9178997c8b7c5c19449a0a33023c4eaec6b815e21852e292a1372904550802302883ba862ed0f1d1efb26cdb0d1bbb241cbe3b7c0afe64595789fcb793a71e97cd7ce929d6abaed934aa42bf5843adb10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310096c3ffcdbc0677da207c4aad60b23a6094fbed5c84dcd36adfcce6cec391d523d588eedc14bb2dd75145983dee655bb90230693133eebd9394b3e9eaaac64a2827741e5dbf01346d8752969f4ea7e7ca0ccd315e58d7c8667d3876f4264704c8057d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c5c2875ad364675d29857c847bf6bc74f359dd0a25bc56b1482cb5a512d4988bd9a9b4de6c45ea7fb5a4be1c0d26c0d4023100f7c5643aa5507d29c516e8f41e1581aee8ece2f9e18fb27b0b67d1c60bda53d06ba5271a0179c894d850aaa337398a960302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e0a2ba15d6949afa5ebb8f879636f96b48c168fd90535e8a71f4aa1ba01fdf2977cd613dd0e3dec249fc695002f5a9b1023100e3952cb88a856d53b7e20da414e53e45ad823b2f4e77b7de62d531a7d07d1dab450597853912453192f0508a8eb95d110302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008737f33434f643bc7f26287c290ca3b5b43b33dfa7ea8f1849a81d2fc19515736c0bf9daca8259f90511c75b854af17002302d6b0ad5b7d7ce309e840bcacad9f8c5ac8fafce5c9d7bdf8321838d2199d5cb1cda861defb463b9570f49435d183bcc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100bb8b1bc5d8f691483ff5a643b1c39ef4477e551c4f0446573d05ff056ad212ad4bf043776fb43525306664f15af88cda02310093991ed2e4afd56e2cbcfda265a2b40e3f7aa736f887fcef5097c8ac6b715d8412d4e56944ac28007b900e1e4ccd72a40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306931a403f577ee13f094eddfb9a98e04be01c2a8b45e6d5d0bd716e24586ba0fb3b30d87e20c69f5858d848d71cd1ef60231008f39bc51b1943cd0af04cc23da9f882fc5c2d771de9baacab77c4a922afc8fba4429230392953af1805f8a776b4367f30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c402ae214d3f5eb0aeb87e68bef45b464a91202ea3764348253b74489c1ea4c33ee16bada3c059331f38cfc9e0052f6e023100fb09300524b99e845ad95ef741fe6b00dcf9d454b22fb304377b31f2614f9e1dee0bfcf8a7498dbcc9cf4eb42e9fd5680302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023024ae10613b2d1a928c7100916bece2000a485d779c0d22266b37e2a2ca0523981b9c77cd97348e296ef6337b72413e9602301aecdddcce9c98de38e8303ae0d9509a2ea795df29dedfc9d03b822e5c8a597553646cac63549d1aba8cb5bc6a68da760302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a49bbc08c35500687f4913dc4b857f0debab380be115e90803b17cb86414224fea68d4e881b2b2ea267355b504f1176d023042569d2811d0d0acf0a2c600f8208dc4199f5c78880e72d3cdfd8c38043bb6584338adf03c0b896d8595935f19b96cc60302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d86f9993dddde3a726ba2bccab195246cda967eb036c982289a9bb6d8b6c324074914c4ea05d3dc51d4c6906044bf8f3023015f219247c2a3a6a997ce87c3c37307adcc975469df3e78d76a46c89718889c040aaef43d2e7f27c25d07b843123e51c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402304f0bcb48eabfd76db97cc29dd48bf349d1c4d36958ec3e36d2a5ed0100d824230fa3360357ec2e93f570aaff10a2aab102303b290daf943b633c54ca4f1bc0d5a01b776d406aa8e89c7f9a1b308b01aa898ee7f4c9a6fbccbe6836731340b230a3ac0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301203c332d3d977fa4afd95b3b9cffcda8ccd279fcab3f7fcd1b6e317ee3070f9afa78a975b01a906a0f9a1a69d10b540023003e195207c68a6be3404b474f8cdb5c405950cf59ffae08a804d6c888689932e03209814d8a9f1f0525eb86367a2626e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230654d20881b7f78ed5e10ff53538d618ee7f477fb0f5d196d4d8afd500cb584a1d30f02fbd5861b20b533f9422b325e7102307e8b2e4c908ed18dbe12a32d58019864d9d9f328eaad496298d0ac046403cdc5027660d9554f7b1970554723913df9aa0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305935dcfc4f0fb1176820fffb9bbbb4cf4527ae835bdc0d94a549a0c1f2273cf2720d6ef814b65312156fe4255642a7b802303cf3b9567eea5f92b23df2b5ebeadffe8c635d5421b9a9966a8b7d0866213a9cf13c5ef38bfbcfcfb958998088366a750302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231008011162f116cea5d67c1e3994aff1a87569238f849e97aa5f5ae341e64521979aa575dc2200ebb21a5be717c63866084023100a1f9ecf33a61adc47e55f375e6db4867753aec152afbe1668d8ab5d70b0000cc68fd8dc99a1262a543a74354dc635a360302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100ee3a1a4d50c6937d7ffb1838a8aec0441d5f16925158f8051b4488b41e27f0a5e0fd7553a432639f0dbbf03f2e9765970231009ccee761d7a291c289041f1c8d81f7cf00a1ba8c3d495071a06b9b0e391a6249adef56f74f9bb3a888e94c34d4350ca10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d0e5631fe73baf724b55af08e0cb907aec533ce834955fd64e8e65fb5bb6a2e1abd8f7a9ea00848ad4687b47b824be3602307b3c6a26b47b5e9879b0affc7ad52e4c1199bf0fd8a70e16ca15b986b0407cd52cca3b0b451a72a10f8ea461149813530302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230482cbe34ff96f915e0b006c842b7aa18889d8b557ea0df7713ff1118812bc89423c240e570f98dc973352e570632900702303db5392561b7423960be216267f2dde1d14aa0e73e381ccb979662b5d1b58acb1d7bf893a1f97703e685fe7a701b2c0c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023056af0406889efa8c75fd501291f2d2360dd65a3482ea0b786b928495addef8dc3e9d09f3364e9bd9602d5a9cda132cee023100a11082428124f1827d94a2fed9ae12e7a7faf41ec8cb327637b1219ae23575792c4375795a266cf15d859a0c3020bd030302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c75dee84deb0cfb1042855b7a1a5204aac408f6fcea9ecfba2e40ac3e2a6becca006787c1bafe321db1f81ba09c2d15f02303736474b87eb9fc02cfcf63a0e8df79c416bcb38160390f04b8e120a6ba227662db3aa2dfc72a1babd968941003ce7d20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230464c53f72bb37c6569668866b250771c2c63622ff80abcb2f77d2a91dadf97f76ae17eeae55b3d388719acbd271e82340230113073e39ce5d6bf3257c0b76056c5d136c489bbf3467d6f1f9fcd0eb9406f0ef4d2ba7594a66bcdd3705e78496394b20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008c163059c53cb81afb55db0f564538db1b642b9687e8787e56706aa271bcc89da75ca63ec3b0368e853ca513c5984ed902307f7ff6be7742583007ffb177e1461997e3bef70cc706e2f746be93533797bdb1397407022235c445b0415470c14099940302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c451cb97d18e444c476cd7021f6134f9a7e9f1a7e38af383a9ffad1aea53f0a1eea35409a00fc6e034f586d4a64a0d4702301f0003384ffc28b12397bb872dd0d6a1e2ca5112fcc4f93f5e42c7e37ea0b065ad27294244e37906d8f6970ad58227370302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310089ae88fcce8b15ff8a5474d03759a2b0df473488bd64ce40ef014d3ff3fa0dc434acb685ee5225473626cf91cc4c6d7e02310082eb09eca51d7da649e499e50678a209c65dd13a4847cbb74d30b0be25532d080c57dee6a7092e70dc784722757763fb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023007b41ba52ce25fdf8f0855a2f29559c6d2ead3526413896cde77766acdf267bdf9e652d15906e3cb0ffaae5890c11820023046b95f1ef8b9f0ecd52445907809fde838c2db52b575357d974e1c3ff96b597740f360600f1e20f2cda163009adfb7880302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100eb99f861982b4091cd81e1b3e8b25527851277e3ab01e0589fc226621d07711f38c6fc9c6525c549ee884f5720d6fb7c023100b3fa5ed6ff185514ae783f1f2a23f179f7abfe9a54c01e361e91ad4927cc8b676276b536752f70e22d1ea3399de427ad0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100c3367577d0d4c6191de511b8c7f7d6122782b3f0c5f66167632b320910c2457d3c7906914c0e45c795fc5cacbbc9ff3002306f1697be440050e695a5361aa91614eba8a3076d929812ac028a1765abab38f77c8f92da3f9b8d96590a95efe4b77eb00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502304788de990a785e023e8c9d157566303c8cb0627f868893792746f7be3fa3f1c82e0179634726d8bea7f1fc9b53a15d1d02310096084bf5807d6cd1f745b747b9fe4eb764a683fdbd78dbd15fa85cbb6710002a7b6ef453c1a7092d7997d07026874b7c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230691d2eac58c2a13c5c730625650b333fd9de08199de04206bf2062cf13b5e28086c1963ff149111ffa25d8e231b7df5b023071a8cf803748af197db434350e4dfcffdb9fc62fab8997dd36c6a65a37211e005124c27ffd8ba7600f7899b4141f8a4b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b74f4e0dfd4a107c3f57fd0ee018b038d2ce6c1651a48812c034c08fc49e48a1d7dec6c223783f84f85538aa149730da023100b86c8169ddc99f23850a5bc44e99c650d2d7f20775e1cb10328184464077e1fe8b23b0df49495e3e634d28576d52f0f20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502301fc7b5cd05d3776e6c54786b4e0f6601c04b5ef07e1ee28ab4e980757c0a09f1ca1cd6b0b5546b12fb18abd01b382b630231009ecbb5a83be651618f7ffe7fe1aaafd1b583dc8518159cc90abb116f70c108f79f26bf4b069a0f01595e5ccc0b29c35f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100871e7477827c5456fb454fb6458a7051c93a7d89dffc0b4610530e7e32c3501cbfa78953b1c2c997a6d42ebd08f2f70602304fa7475f495d7eddf6c6e8d941d531a556b099f99ccfa59dfc7d08d74cd93a69d28bb0c80796d82b7b4c5e590bd966ac0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502306e9f5bc1bf9db612c3142dada85582144887060e92f848a4c681e127eba91bf9ca599acca6010e6d4545d8c81899f00c023100ce3741f40724ed84643a0556235e00d3cb2c6730a1ca5411e9d6fdaeae6322dc26f44c798be414b95895cffaf92e61be0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b319069906dfd9617455b390d533c87365d59d753b47554309d21149d604b9be228287d477dfa296cfaf0f64d6ddced202304bc519b59f8735362b9c9692427b58f6efb40a479b64be6182764627bfb6b7690d2cd6a7cdb8b3fd07e66588af935a0f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302494c56f1e381bde29c92746b6f64ebb1e1523740050e3919933b826cdfe2cc44fadb4ea29ea5883fcbf63bc38c9d5e1023100cb0600076ecf150807d6ef3c9c09993fbeec535e3342d7dfcc1ba2365988080f0b7ad6203245d195151a7708d630e6630302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402302f366bdd7c13bbbf969670b33a0ed9f62a1ab65aca1e7a9b9e1cd21f8e6de8602dfbf9908747858e4ba6bc0e6eb3f8ad0230713a8d90fb7f56c3d12320b1d8d8c2aa884e6e9dde3662a3f3ffdf6376005ac4ee37d4b05478cd2e5448ba8556b692fc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100da3ffede46ae77336fad24a8c548f26733033054526e282e1c9fbe0c01bdd6124671eaac769724fc80855a03ec664ce90231008d9cf54a9858efb3d186325f2570ea8ba6ddf8d1ee0afdee68d6ef3ceb9d1340af61578b3e9fa4eea52dae0ebd62bbce0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502305bd66a54c0fbf493293cae3dadc4e634e8bb959fc72f0b8f2e163631c9ea443d52d06bf9cc470a880c518ade1a5be7e2023100bb50b10679be761725dbcf8c265b0962f1c23a752121b727cd22bc7c2d128a623d7187994d23ba4bc888a428b7751b9f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310082be1fc53f827d7f24b20431bc50c39a3f848f7f8a7e5e07a3315a943c934c88221c786fdb807e1b9db814aebea8a12a023100957d630ef98eec421b7c2d3316f6a1f1cfe767728114b1a6989926b99dc7f6e960f08fd948ceef1c1fff5a024d87afce0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302b9a09fba677fa8b9b976f7d75ab102e1cd5312c4a10a2f388d92c07b05d2378cde641191138ea3d405b96bb68a0a6ff023100e89dbd2668374f1734be82d33560dcb5f3df6e8c634f392cf692e664a6ae4987be1e236881d9d390724fa961020363c10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023024734cf73d206bf9140dcac778e5839a333c9048cfdf2d2496e15ec6cfedcaee71dddd08330663fff90e62ff4ffec249023100fbb6268e0ca3e1dc48b57f9972131e1461994a4b3480ed5b2dd022220598c7b131940cb64aa7ac7350e6495335ea1ac30302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e0233a436ff645a99811981f594cc6f6a5afc6833d0795f88cc9eb1d1d230213349999ffff46ef34668ece39158f2f210230191563804153985a3afef1d09e42a9808a6f2f694dd600c875bc881d944280a952e5484802f8f05dea6dec1d33ffb2d90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d68c26d6cb38a062a3c49e7e3e0aea00e71799b2c345fe9a22725ec61ba64d6542c1bfaeebf54f18bf07187284fd29830230045298d6958aee5ef7290b1de64761d43ac745f8aa7e88628b847c1f95eca32761487f25f7b19b66f7f082e058e8791d0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100eba6d0acca7362d0cd6366e2fbe4a6a99eeca09dc2eab1ec201033dc1e0116fac6d05c900ba96d04c993360b7f7fb32002305d56982e6c72257838480057b16d7509e41d68cf90bca2cfa554ea9a48a51e41c4e404d6be79b6615ac92d98f66840cc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100a5d4ffe5d314f92a7f92d424884ace4452ad0eb01ec5c587c996171c159417ebc448d6acad2204ff1046ae30981b0751023007d22fee788f3cc16543ad6cf4f1590f70b4392df298ef01ed574175380e66831304303316ec2c59e3e1ee8b0555345b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402301f5ac5e3f6768307814213dedce1986f7beb73364f3157f6964930b76ddfa308bf62515d8958781125de75c158c2190102301079f468f7105320c167365135dd4e5c3bf5f0f3953ab72046b758e0f8756108f18e20e88e0f7ac2354280da8a6c6eaf0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230668f8d79f0571713c2629655c83e963738bb85894a9c289445c6e1a5d2c24ed87221179581f5c3098cabc1ddbdb72833023100d73c599524eb778ac83d4f062270a5271ac768f0d26cce3946644776d964d806fadf7aa901b5571f615657672c6e68140302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a754698b17de92bbcf4d6e65df1aeb4992dd44eb62144a6a7222a5bbc69b57a0bf6b5730ab917e6368b604f32e5a499402310081bead917a6e55271c54dcc43339ccd7e5b402b5dc53717f679de5259949914eeed079bb0b311a7dc1a74480ce9c8cb20302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230295159f7813b4defeff9583a59b662cb8213b7138cd5af5450b888e9928f7dda5907eedbe2b46bb8bd53261c8ebdda2a0231008b0782dcb5183ec695e37dce6e30c9268cf7742ed9e36514e7477c2fc8042cff8bf2de326000e66d11af6d9aaccf2de90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023064a0bda56f86ca6c6a4b1ad0290373731dac83bd1cad4917476e6a592f4f1b7e5c999c95f7cc67dcd8cc1a62316c358002300ae4ab68145dd3b00a7445937695a2e0d38042df96a0c4e3015b57877cedef8a0886bf91fda9837a626d40f893f418320302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100d6f4f841d240668feae1f7a38c157380a7290706c0b3100c803308f8deb55940d47a0326759d2d160994441e9b7182bb0230091c56b0b8cf97520fba80e1ccd445136421ba6caf6e4e94b2e5ca623a81cd2616f47f6692151cebb00403a93f6b3a830302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302fba4a8f91ca4a9179b69d5addb9e04c72635e972fc0c20c8460366322b150ec8df574bddde675ba18849ae8c86fbc23023100a45c67a14f883c6357d37a537b35694c09f62c049c35e73a545adfc568c228fbfa0221b9dc15547e005b5a8cc695e3030302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230515f377f288749a44708fb254d970487f040fb90fbf7a4f51c8645f0d9eca95dd437226812d07c3c1b97cc03cbac9aa60231008d298988fbc02a5a73a2b25112ab823f72871dfbdb157d927068c0cc365827b54c8c8173f9654671cf7b0025bd3b3a700302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b17d77eaa6bf32a20a832c51c5d796cf380a272c7f336c15a979e93811b1bec7fe024dd659a3610ead4af4a3e10ade8402301f583a66ca932d32c93108d009d3857fdd8ecbe5a6601becef01f73ef6dbf0eea616618344123ec500ab450802981feb0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402303e09b321f1fa772b2b37f7a68fa9db94ee87f63abcea0986b86172f7545dd6e93b2652130de721d3a968f0f82ec005880230417e2d900dacb128f38391d2b7351cf983eab45564e92d81a55119418c3abd4f20e5ff1cdab0eb6521d2409458a9fb160302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100b528c38a977a65170df6fe2b430852b74cfea0d320294decbaa41118a0aa258e6c60bf013c1ee78969943a6edbb72980023100854ad23938092c6977271ad58182fb62249237abc98a0bfe86d3edae32f5e891671ca365043c17dcb2fde398f2f149890302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310089b902f43a1f47d193a2eb7722ac8a24d0e38b9af867e9c79c170729981e8af2e3fd44c3a32f191ef9dabf59d1e955a4023100df53fb104ab6ddf2aa73660c1582a75e972d0639f223b92e8bbe27898bc794315fa0398df3b7757e0e0e430dbffa78930302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502300c2b8fa19c446e4bd8b5b13e0ea052faeb8775eabc5a2a41457b89d02527ac21f04a7cdc2009a478f00932ec514688200231009b031e208f627c47dee4cf61a063d3e98cee141a086698ca27e7b172e705e1ddb4873cedfb022eeae89901d20fc5a7700302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302ca488612e54b233b13d1c2f735b28589a72c7b37ad1b141a5a9a192f40399c7f42e16f0bc183b079c85f14daf3ee8ec023100dc220e413718f7d70f05b7614692a1202b097949273e94247f6cbebd76f0a883dbb2745bf15c1390c30801548f3213790302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310092c0f70e68bf6f6a595de3f1e727d0d5ee481d1fdedb079fe01b191b3827e9988f9fef8e8aba25b95aa39d775b7372c2023018cf3ce1ccc68721d384923408d078d428467b17fced031398b5806ecdfdd1afda2198747916d9e0e4cca69193618efe0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023007e0530af848cca23c72e7e72d780af12f10ab64059e3c5f6b0a76c3c74017a6a9cfd77456f31a3cf59b5ae6d7f7ab35023100fded2b4d82f02bbd54eae91fed59bb33796a4c687d814d8cdc856860a351de33c5ac4cc72bbc3e453da89be5092dc6f40302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023002c98e9c14d10c38c9ef1f497557a1d393a6b4bdfac2ccacd1c0ec036dcb65417d72ce9c0b136b0e36a4717844d0436a023054a518f6d0d1170b8a951a9541b8ff422354037dd5c52c54eae56b7996a81dbc0f09082194be69b690edc5a72adf04200302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023073adf183dba8bca8c6e63c5b47d352196f517ffb3791aed14a9413c5b24a6d99f4f716a683178a180759f6808de73fef023100aec3145294872317eedf7ff1e49d2609e8ed61bcf1ead117501bf1ca135cf2918f9d1e63bb23ff554474c7a635a814630302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302db0c727e5b0b66046e9d72f45ae32ce12bb9b1d15eb9b55f6c4e1e4d6a2e7cdfe891d6ae45c5fde7e91f5abeff906de02310098e732463c6aa6180790abdfd93a83e54297d85ac12530af09990e025a8001bfbf454d4f14db937a005d8d678d9faecc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650230541e75135d6e5a87923c7c870ef7af592f0e79a297a07cf8d836d9e1dbf0830f5a1bced6306e8a2a2c38dcba33a16cda023100a0c0fc00e362c6eae9c0e8a148452dd1cbcfb175931d4b9a70c2fafe72f09549ffbdc99a52d9cebc4b2fbede136116510302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231009c8f2e08e705281089423aa7d633c8fb6c2ae6b45ccdf425f6628799714f07824b0bb38d5a24903a64db97c8294588a902300515832c6ad1407199f9e2bc2271af5a4e09ea3a69022f445c91eefe38f037ee0434ab629a0ee83abcdd4cde0e2eb0100302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023040c0f8447ea3fcca17a7c69c4481ebad9b12c713b5c6f50d272f92c1f4938172722df79b793a35d25ebb0d860e6094e7023100ee4c866101d2f43c269f0d75244d344ae398c0ecb4fd98c73415496a23bfd9ac107392838fb2a51f06ef9be7c731724f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50068306602310083be235ea8efa481d6ebe7207d62eb4a44a738c9eada55bb298a4df5037523fedd43af0f244c07ea8396e160d524f48a023100a883a38d4a7973d72533f5bc60e987b7341a6cc26ceea2b71d30eb246a53fc43414beecfed0e2aa78eb0d913117f53100302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006830660231009d975a537489bcdb988fd84d663c17016dc332478de5d51c0c6bbda51dad035ac74553d8a752760c05a61b77e99bc8b002310090733127c2c75a58eb0d0b1d18d2aa2293f305c7478d340e4d01a77214eae553dabc16e44b8be78116efbfe9c0da9cf50302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502310094c4217371e97e3c33c966f3e8c914603a2ff984224502cb327fa45b42c95c5e287ab5b2d7729051c493b08024200aea0230468988a7cefeff1b57a25a15c20f55e1e2413a1e891e6d01b7775f94f9b3a42d4b59035c0b319878978f0ef1f04c86360302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100a4978d1e57ed6d339f22d8071403a3512469573e9935f48a12d6177dcb81c4e94719af1d93cd161cd66f940f08ed4f25023100b49015bb8d82ce565f2aebb6d963a583a2d41ead0545002f7422c0a1ee8e87efe9dc0a85f1867576b4849043752b9a5c0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023045fb3a1018bd335863d5da2a2516a6aaeba38ea92991d5dbf129e14611bc15267fb3121eb68d5c5bd1fa535daec95bf0023004726af9f004b2f3148fd5d5cb5d3ffb1d9ccd414210baed48ea9f23855e3ff9527f4c2e6272abbc23daefa26e3bae860302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230523e16c7bea700b63a486cf1568d83f2587c6d4a87c5fdcc74f399211cefe927b9d38d31464b2a743726a23ecdc0cc1f02305e002e5aa5bca3d953c647e50cb02d9dba4299379ce449a574ee95b9809557e19465661ee6905766acea4c498944b2140302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100b259a70e9687cfc99566ad6fa002c9edae9bbfceb8935bd8148607067d4be80f23e6c4b6311c877521d378c2f74a8ae3023064d3de06027e85a4b9fa99a289a90eecd8013ba66731af921effa2ccbf704c2f121b1b17c19fb04adc1b03f6ac0d3d590302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023056babfae481a302b240969b21a13f3b261a9927437d0bac6b4adb097af734b4ed67ccbfd38d8f24aa33a2dbd527f5b37023100a6efa31055ad63e0972257b6f2e894574dd8fe013f039ca8a56922a82832a419661ce387a8c0dcadc6b3d9a6b2c4dedc0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100e2cb3d57bdd4f21802e3a4942371a23d053c94c638ef8cbb51e41fd1f8ba3699c0153a72e4dee0a3ca560cbf5dc87a99023100a301072c2bb3b35b818dc18ebb2e6887b2b2c9ae82207a34eceb478dd43be22ed122272c069dc59892808dfcfc2cbd8e0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100eec8d9e8967457449acbba98dfde3503c27fce663c4a9a57080b5543c83cef87c86466e3767a5d397c68da15407d1c4e02303fa4c5f54b4449ef2d24d2ab986599ebaf1754659400cd963db50b3271fe14385b070c8d030ad9b0590739b4200ac5e70302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502302dca1fa0d76f083413cd02a1c274c4315606c3415a5d8e173df22def033b7edf446521be25f49d8fc0b0f8e418c77ed1023100a9c284603d25d90f3be5bb7fe7ec5699b8d78a23fa501bd9f59df3a61dcf2833d0ab9a78c64a36c86ce0fd0309ef90ae0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb5006730650231008d6a176749a66d933af45a680e29eb931e18d590daf17271d18e21e089bc5aae09daf02f6f7ea5120ba49cb69ed73d6a023043892561f885339646e6695a442797cc39f7052122c919f667bbc46c192b9c6b9316b19e9044a0c0dc947ff15fa688250302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100fbe67814d0a0ed2b1b843d55bf4495fa318d90e3f4cd3da2dc7e249b3729b31990a277d641b97cb7ee44b766d73461cf023006263a78c88327730d46eeddee117771d864cef811299d1b57218f8900de8d0a61c56b1cd0a60a1f8774fc58f9966dc00302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500663064023019cd296ed07a93233443cde55519bf06e3864d2679d835db267cb31486397016939fcc145ecd12496d21c69a5db88a2c023011973714924dc709b5ce534eaa2714008a9fbc0ed687d8d88fa6b7795cb9f115c2e713dee1d759a2da58ec4c9ce240050302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100f8640a21bc3af17dc6ef5d8be999c0a40e580734923504b2de9ad2240588e0015f24f78cfd1b5a65719285273224214302300339f512c23704e8686c89ad346859831b9931137c0c0b9aa369a092eb7193abf00d263527e13d76f1c4a24a65adaf150302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100afbdafb0e22e64d7e9cbb6ffa3e55aa1044c87b116f251b20a8d9dcc8ca98e03ea3824668338995e560f9a36af1f7578023100dadbe54b539b9230e87541f3432f59c4d054f72158a58cb909080bab5b2128dda88e21c200843165ccc87638c6b288fd0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50067306502303b1fb7eb96b29fb59c613850accbb4c3ba381516bb70318c81b65e912378a6d3820c6d299454e6bc012607413859f4e5023100862350f58ba0e7212ab2c33159591b76ffdfb5d00efa2bc4ddbbb05d233aee60ad9aa8731296063a7a4474613ae373a10302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023052dffaca505bf5543aa2be227fb747491ec32bc9ff17c25b2c389f258442f824c0908a4cc59aca094bc553a78fb2945e0231008e10710101c51bfa9c4e9876c962b887b990c627d12e3c22af4ba95d34000c84d5b820f9007d0a037665e0f5a1259d0b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402306efd9bac4d85ff2830602dfe343bec19958f36ae9844e7a7617c8e13a9fd3380f5464bfa80ff77057efdd1c57e6476a902306fa630f2adc33c6ad6b81b3f141b5a0c2bfe33c5eaf0d522237b9117a0af47c72466838e2fe6b64a0cea862ca142e9b90302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100af9dac7e77371df2150261758a48d075a702df607982f9d086ad1694e4085ba46cd852c425578d64f55a313ee3309a06023031c38a1f8e2dec93adcb6a39751aa55c0539db5f2042cd3794bc6ea6b54be155522cd7b2850203c20ea18c1dcef417480302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb50066306402305c0f13ec011f4417d3c8d4014c29ec39a846587cd2fddd8e4cf4028e95c4ead5e9172cb8da29c9723e1a5dc74e06467c02300263b9eb4b57597a6550d9dd8f679f597d7acffe4f5ef4997346ce4a434715cc1e280f190579cac4ca2eaeb129fbe6640302047c435bb500673065023046814b31b8b5864043d023876554f0fb26a7bd1b39a4b0e8480c818fc54e61f7d9a4ecc3ebc608f3810c83577e56028a023100ef55b660696197370c6b918bccd8efd4404d0192b57dfebbaf9ff0fbe7bb10575cf1ab2942e11bda0c3b424a26fc6b3b0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100bc2358e5b652e7be67fa7a1073714624acf204ed19a1676115c5cb2dde224259cf5dfd04f0f8f0f8cb2552952ab596f90230470a2e81d342fd9fe6f5efc9da4db14af3ccd6678237c134079978a4581a13328cddfd4fcce829aacb0eaba588ddb3ca0302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500673065023100e11543a3ada199d8db0bc537aede1bcd310a88c3d16339c15a6427dd9125f7839d4f31366b6d8d5edc790616d303b8ff02306c084fb1b0577b42fed6a66cd9fbadfc674b93b3af0d4903cbb0ac4dd3df7aa2e3fa4a7b68a0c0661d1b44f9fb25ac310302047c435bb50066306402301aeaf4fb5bf1901d5c1fb0e238fda89a83de226dbcfc2a6a34d2cb9707dd5e4229a175deefdbe44a63621c5e3cccdb0d0230107887974e7c09c942b693e61295c9da6217670fbfb4a186fcd82e4b5c9ee8a5ca3839bfef9f130ecf790dbbdaccbd170302047c435bb5006630640230657778bbb02e3f658f4618ba4b1086481f578fb35ed9ea48b21c39c2da7714fc9408999af33f546d07907ba8e182bfd40230022bc9e89f5e03920c2abf0fd8b1b7fcbe32e577de8c1c44c260f61a45a20dee8e73f126679b844b90f434db3a5da84f0302047c435bb500683066023100c7e94af832d431ebdb585e03412edb3fccf18a464df4c3a376a3daf414341c012eb56f756da18ad257d212a15936da97023100881504d38f3d2273797897fdb1d7f9c5068ae6bee6f38fa5a497359719f9cb304145f6faeed10c57689df92e89c6f96f0302047c435bb500673065023100e458c3c7359f251cb24db9e810b43b946299b6f6d86e8dcb790337bfe78adb00b63fa1a1e130ac686d1dda3256f5a508023065c3ce2f69458c05345c9b27c9ad908ef3e88c75138e8a6f0b5c5b65cbfa4b058ef132bb98ca8a95be2b495adc8f8cf30302047c435bb500683066023100a5bfefeb90a4bcffbf3eb3188fa31748f6a60b1f98d0354c268ba247df0c5075040f2a0d03597204df7407e786ab3e67023100ccd730936cb0528c52810c38cf8fe4189560afba5ed3963b463bed059cb279737087da3c74e251e81c8ddd38d0d4a9820302047c435bb50067306502310090dc992d504372c7adaa68edafd140e2c7c37233296bced9752e85da13669b4d4f5a386ce3032dd18b42fba0b56973f70230096db826bdba878d3e76289eb3cc64fb12161579407f769773b974c3e4485d85330c013d4769a091d4a85d10a3bfd4c1wPf1 U]aze&T19zE[‚.?2КMZnBi٬t:'X_((aaeH t *.n.+ບ^/E8l,, YP^RvXL,P vړV\6R'CSU噪^ &zTm){5>{,&I'L3*@wy9XDL@([gPM\(3 r 3}'0kNH48w:]ɉм[6,2af>Lp?#^cy聯7cD5K\jRIdGpXQQv4<+Q' mV.o'֪zR>"' f/·63xZ T*Vrf*Ofb1ؐ.D,1 C8OofN\<1,B|YUkrg>p>?d " fC VpH$H H FH hH ?H H HH*LHXl(89:7J>BoGBxHHdHIHXY(\πH]H^…<bhdj%ej*fj-lj0tjLHuȌXHvɮd*PXpvCkernel-devel4.18.0552.1.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.f+ppc64le-04.stream.rdu2.redhat.comPCentOSCentOSGPLv2 and Redistributable, no modification permittedbuilder@centos.orgSystem Environment/Kernelhttp://www.kernel.org/linuxppc64leif [ -f /etc/sysconfig/kernel ] then . /etc/sysconfig/kernel || exit $? fi if [ "$HARDLINK" != "no" -a -x /usr/sbin/hardlink ] then (cd /usr/src/kernels/4.18.0-552.1.1.el8.ppc64le && /usr/bin/find . -type f | while read f; do hardlink -c /usr/src/kernels/*.el8.*/$f $f done) fiVXJ ! 8{wUcn<y92%# ([4 8!Lxj w 3pM/& pWXb=}7tf ,TZU6GL U<; 9 PWTTL`9 lT50C> C v> i3w(+YW&rR9A9 ZqU4 +#+ NQ}yB tou&TE6gvDFMZB/ DZ Mh/<)zTX +w\8N$ixV B 6 YDHL\g8g6 4$,l 4:]<e M% _^XRJaCx 11xXWU3^5KxVPVVcX e7\s>FNBa|}S > 92WM_o#3sXj3{j_w:Xe cqknH~ "ER|3.u@@dzK~;yb ap{ m8?6]]R<<q yK< aX=cZ y jz'^}$m kjr&.<KJ7[ m #6[qf# Z>I#^lei#FI bv  f%&G0 TT) Oa 3pCU   * i0QA+ PA]w# MsD+kt K7} #ER!w\ "A& iUJ zK)  \&qa, sv#w1+5l CI  <VNX $J'T_NGv;%r%@&%P WG+\' 7n |z(  MJk %sh |_GR "+6C ]G&HHl  :7'G4T -x Jx U_o8k=] n) I }> o  5MQ~e.})f9yu @0 )  }\n l p  G 6h5$  u%:V' ""##!&!!("!! 8A& _4,o.!a7 5 s\ P Zh'-/_ Y7 *R 6#|t5 M[%+TJ=K =qk  815-xn#,Gj]nk C hccso$G+gT E d )2bcNZ_|qEXLUmaaa"af; l9G&b&[$!a h;r 6[pi #FQ;" ;i3leS@=14j 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]'+.#YD/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/P1HV&I)"./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?(n>@Yb1b    [!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'(!H9K+>N$:K/.jjpN`bE-GLh ,;:#bk m| U "nZ638t i /aen 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 ?)16G&<[R("  B\R @ c:uI5 lr# )yLH4(f  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/ %!  yHZ ]&;Z 6-%d) u #| PHVx=rdxh&C d*>= e+#G xmU8;S+>x@u/J\6"/O(KNUA- SC A !BM Q! _B`z 3h#( Q DOl}96 h d/4. e_&' /BAIkpo  '  (d 8*X[&= 5 2.vB c@h "( .wg , I k*< +5k'.s#}6wW[i>/7m%42|1C I]e)u0:L' 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큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤AA큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AAA큤AAA큤AA큤A큤AA큤AAA큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤AA큤AAA큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤AAA큤A큤A큤AAA큤A큤AAA큤AAA큤AA큤AA큤A큤AA큤A큤A큤A큤AA큤AA큤A큤AAA큤AAAA큤AA큤AAA큤AA큤AA큤AAA큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤AAA큤AA큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤AA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤AAAA큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤A큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤AA큤AA큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤AAAA큤A큤A큤AA큤A큤A큤A큤AA큤AA큤AAAA큤A큤AAA큤A큤AAA큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤AA큤A큤AA큤A큤AAAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AAA큤A큤AAA큤AA큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤AA큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤AA큤A큤A큤AA큤AA큤AA큤A큤AA큤A큤A큤A큤A큤AA큤AAA큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤AAA큤A큤AAAA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤AAA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AAAA큤A큤AA큤A큤AA큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤AAA큤AA큤AA큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤AAA큤A큤A큤AAA큤A큤A큤A큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤AA큤AA큤A큤A큤A큤AA큤A큤AA큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AAA큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AAA큤AAA큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤AAA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AAAA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AAA큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤AA큤AA큤A큤AA큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤큤큤A큤큤큤AAAA큤A큤A큤A큤A큤A큤A큤A큤큤A큤큤큤AA큤큤큤A큤A큤A큤A큤큤큤큤A큤큤큤A큤큤큤큤큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤큤큤A큤큤큤큤A큤A큤큤A큤큤큤큤큤큤큤큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤AA큤AA큤A큤A큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤AA큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤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큤f+Pf+>f+>f+>f+>f+>f+>f+>f+0f+If+0f+If+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+If+0f+If+If+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+0f+If+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+If+0f+If+If+0f+If+If+If+0f+If+If+0f+If+If+0f+If+If+If+0f+If+If+0f+If+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+If+0f+If+If+0f+If+If+0f+If+If+If+0f+If+If+If+0f+If+If+If+0f+If+If+If+0f+If+If+0f+If+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+If+0f+If+If+0f+If+If+0f+If+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+If+0f+If+If+If+0f+If+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+If+If+0f+If+0f+0f+If+0f+If+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+0f+If+If+If+If+If+If+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+0f+If+0f+If+If+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+If+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+If+0f+If+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+If+0f+0f+If+0f+If+0f+If+0f+If+0f+If+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+If+If+0f+If+0f+If+of+f+If+If+If+If+If+If+If+If+If+If+If+If+If+f+f+If+If+If+If+f+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+f+f+If+If+If+If+If+If+If+f+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+sf+sf+If+If+If+If+If+If+If+If+If+If+If+If+of+of+If+If+If+If+If+If+If+f+f+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+0f+If+If+0f+If+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+If+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+If+0f+If+0f+If+If+0f+If+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+If+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+If+If+If+If+If+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+If+If+If+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+0f+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+0f+If+0f+If+0f+If+0f+If+If+If+0f+If+If+/f+>f+>f+0f+If+If+0f+If+If+0f+If+If+0f+?f+?f+/f+@f+@f+/f+@f+0f+Ff+Ff+0f+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ef+Ef+0f+Ef+Ef+/f+Af+Af+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+/f+Bf+Bf+/f+Bf+Bf+0f+Ff+Ff+/f+Af+Af+/f+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+/f+Af+/f+Af+Af+/f+Bf+Bf+0f+Hf+If+0f+If+If+0f+Hf+Hf+0f+Hf+Hf+0f+Hf+If+/f+Af+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+0f+Df+0f+Df+0f+Df+Df+0f+Df+0f+Df+0f+Df+0f+Df+Df+0f+Df+Df+0f+Df+0f+Df+0f+Df+Df+0f+Df+0f+Df+Df+0f+Df+Df+0f+Df+0f+Df+0f+Df+Df+0f+Df+0f+Df+0f+Df+0f+Df+0f+Df+Df+0f+Df+Df+0f+Df+0f+Df+Df+0f+Df+0f+Df+0f+Df+0f+Df+Df+0f+Df+0f+0f+Df+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+0f+Df+Df+0f+Df+0f+Df+0f+Df+/f+Af+Af+/f+Af+Af+0f+Ef+Ef+0f+Ef+Ef+Ef+Ef+Ef+0f+Ef+Ef+Ef+Ef+Ef+0f+Ef+0f+Df+Df+0f+Df+0f+Df+0f+Df+0f+Df+Df+0f+Df+0f+Df+Df+0f+Df+Df+0f+Df+0f+Df+Df+0f+Df+0f+Df+Df+0f+Df+0f+Df+0f+Df+0f+Df+0f+Df+Df+0f+Df+Df+0f+Df+0f+Df+0f+Df+0f+Df+0f+Df+0f+Df+0f+Df+0f+Df+0f+Df+0f+Df+0f+Df+Df+0f+Df+0f+Df+Df+0f+Df+0f+Df+0f+Df+Df+0f+Df+Df+/f+@f+@f+/f+@f+/f+@f+0f+Ff+Ff+0f+Hf+Hf+0f+Hf+Hf+0f+Cf+0f+0f+Ff+Ff+0f+Ff+Ff+Cf+Cf+0f+Cf+Cf+0f+0f+Cf+Cf+Cf+0f+Cf+Cf+0f+Df+0f+Df+0f+Df+0f+Cf+Cf+0f+Cf+0f+Cf+Df+0f+Cf+Cf+0f+Cf+Cf+0f+Cf+Cf+0f+Cf+0f+Df+Df+/f+?f+@f+0f+Df+Df+0f+Ef+Ef+/f+Af+Af+/f+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+/f+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+0f+Ff+Ff+0f+Ef+Ef+/f+?f+?f+/f+?f+?f+0f+Ef+0f+Ef+Ef+0f+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+0f+Ef+0f+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+0f+Ef+Ef+0f+Ef+Ef+Ef+Ef+Ef+0f+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+0f+Ef+Ef+0f+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+/f+@f+Af+/f+@f+@f+/f+@f+Af+0f+Df+Df+/f+?f+?f+/f+?f+?f+/f+?f+?f+0f+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Hf+Hf+/f+Af+Af+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Hf+Hf+0f+Hf+0f+Hf+0f+Hf+Hf+0f+Hf+Hf+0f+Hf+Hf+0f+Hf+Hf+0f+Hf+Hf+0f+Hf+Hf+0f+Hf+Hf+0f+Hf+Hf+0f+Hf+Hf+0f+Hf+Hf+0f+Hf+Hf+0f+Hf+Hf+0f+Hf+Hf+0f+Hf+Hf+0f+Hf+Hf+0f+Hf+0f+Hf+Hf+0f+Hf+Hf+0f+Hf+Hf+0f+Hf+0f+Hf+Hf+0f+Hf+Hf+0f+Hf+Hf+0f+Hf+Hf+0f+Hf+0f+Hf+Hf+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ef+Ef+0f+Ef+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+0f+0f+Ef+Ef+0f+Ef+Ef+/f+Af+Af+/f+Af+Af+/f+Af+Af+0f+Ef+Ef+0f+Hf+Hf+0f+Hf+Hf+0f+Hf+0f+Hf+Hf+0f+Hf+Hf+0f+Hf+Hf+0f+Hf+Hf+0f+Hf+Hf+0f+Hf+Hf+0f+Hf+Hf+0f+Hf+Hf+0f+Hf+0f+Hf+Hf+0f+Df+Df+0f+Df+Df+/f+@f+@f+/f+@f+@f+/f+@f+/f+?f+?f+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Bf+Cf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+0f+Cf+Cf+0f+Cf+Cf+0f+Cf+Cf+0f+Cf+Cf+/f+Bf+Bf+/f+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+/f+Bf+Bf+/f+Bf+Bf+0f+Cf+Cf+0f+Cf+Cf+0f+Cf+Cf+0f+Cf+Cf+0f+Cf+Cf+0f+Cf+Cf+0f+Cf+Cf+0f+Cf+Cf+0f+Cf+Cf+0f+Cf+Cf+/f+Bf+Bf+0f+Cf+Cf+0f+Cf+Cf+0f+Cf+0f+Cf+Cf+0f+Cf+Cf+0f+Cf+Cf+0f+Cf+Cf+0f+Cf+Cf+/f+Bf+Bf+0f+Cf+Cf+0f+Bf+Bf+0f+Cf+Cf+0f+Cf+Cf+0f+Cf+Cf+0f+Cf+Cf+0f+Cf+Cf+0f+Bf+Cf+/f+Bf+Bf+0f+Cf+Cf+0f+Cf+Cf+0f+Cf+Cf+0f+Cf+Cf+0f+Cf+Cf+0f+Cf+Cf+0f+Cf+Cf+0f+Cf+Cf+0f+Cf+0f+Cf+0f+Cf+Cf+0f+Cf+0f+Cf+Cf+0f+Cf+Cf+0f+Cf+0f+Cf+0f+Cf+0f+Cf+0f+Cf+0f+Cf+Cf+0f+Cf+0f+0f+Cf+0f+Cf+0f+Cf+Cf+0f+0f+Cf+0f+Cf+0f+Cf+0f+Cf+0f+Cf+0f+Cf+0f+Cf+Cf+0f+0f+Cf+0f+Cf+Cf+0f+Cf+0f+Cf+0f+Cf+0f+Cf+0f+Cf+0f+Cf+0f+Cf+Cf+0f+Cf+Cf+0f+Cf+0f+Cf+Cf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+/f+Bf+Bf+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+0f+Ef+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+/f+Af+Af+/f+Af+Af+/f+Af+Af+0f+Df+0f+Df+Df+/f+Af+Af+/f+@f+@f+/f+@f+@f+/f+@f+@f+/f+@f+@f+/f+@f+@f+/f+@f+@f+/f+@f+@f+/f+@f+@f+/f+@f+@f+/f+@f+/f+@f+@f+/f+@f+/f+@f+@f+/f+@f+@f+/f+@f+@f+/f+@f+@f+/f+@f+/f+@f+/f+@f+/f+@f+/f+@f+/f+@f+/f+@f+/f+@f+@f+/f+@f+/f+@f+/f+@f+@f+/f+@f+@f+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+0f+Df+0f+Df+0f+Df+0f+Df+Df+0f+Df+Df+0f+Df+0f+Df+Df+/f+?f+?f+0f+Gf+Gf+0f+Gf+Gf+0f+Ff+Ff+0f+Gf+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+0f+Ff+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+0f+Gf+Gf+0f+Ff+Ff+Ff+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Ff+Ff+0f+Ff+Ff+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Ff+Ff+0f+Ff+0f+Ff+Ff+0f+Ff+0f+Ff+Ff+0f+0f+Ff+Ff+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+0f+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+0f+Ff+0f+Ff+0f+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+0f+Ff+0f+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+0f+Gf+0f+Gf+0f+Gf+0f+Ff+Ff+0f+Ff+0f+Ff+0f+Ff+0f+Ff+0f+Ff+Ff+0f+Ff+0f+Ff+0f+Ff+0f+Ff+Ff+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Ff+Ff+0f+Gf+Gf+0f+Gf+Gf+0f+Ff+Ff+0f+Gf+Gf+0f+Gf+Gf+0f+Ff+Ff+0f+Gf+Gf+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Gf+Gf+0f+Ff+Ff+0f+Ff+0f+Ff+Ff+0f+Ff+0f+Ff+0f+Ff+0f+Ff+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+0f+Ff+Ff+0f+Gf+Gf+0f+Gf+0f+Gf+0f+Gf+0f+Gf+0f+Gf+0f+Gf+0f+Gf+0f+Gf+0f+Gf+0f+Gf+0f+Gf+0f+Gf+0f+Ff+Ff+0f+Ff+0f+Gf+Gf+0f+Ff+Ff+0f+Ff+Ff+0f+0f+Ff+Ff+0f+Ff+0f+Ff+0f+Ff+0f+Ff+0f+Ff+0f+Ff+0f+Ff+0f+Ff+0f+Ff+0f+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+0f+Ff+Ff+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+0f+Ff+Ff+0f+Ff+0f+Ff+0f+Ff+0f+Ff+0f+Ff+0f+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Gf+Gf+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+0f+Ff+Ff+0f+Ff+0f+Ff+0f+Ff+0f+Ff+0f+Ff+0f+Ff+Ff+0f+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+0f+Gf+Gf+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Gf+Gf+0f+Gf+Gf+0f+Ff+Ff+0f+Gf+Gf+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Gf+Gf+0f+Ff+Ff+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+0f+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+0f+Ff+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Ff+Ff+0f+Gf+0f+Gf+Gf+0f+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+0f+Gf+0f+Gf+0f+Gf+0f+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+0f+Gf+0f+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+0f+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+0f+Gf+0f+Gf+0f+Gf+0f+Gf+0f+Gf+0f+Gf+0f+Gf+0f+Gf+0f+Gf+0f+Gf+0f+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+0f+Hf+0f+Df+Df+0f+Gf+Gf+0f+Gf+Hf+0f+Gf+Gf+/f+Af+Af+/f+Af+Af+/f+Af+0f+Ef+Ef+0f+Df+Df+/f+Af+Af+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+/f+@f+@f+/f+@f+0f+?f+?f+0f+?f+?f+0f+?f+?f+0f+?f+?f+0f+?f+?f+0f+?f+?f+0f+?f+?f+0f+?f+?f+0f+?f+?f+0f+?f+?f+0f+?f+?f+0f+?f+?f+0f+?f+?f+0f+?f+?f+0f+?f+?f+0f+?f+?f+0f+?f+?f+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Gf+Gf+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+0f+Df+Df+/f+Bf+0f+Ef+Ef+/f+@f+@f+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+?f+?f+0f+Df+Df+0f+Df+Df+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ff+Ff+0f+Ef+Ef+/f+?f+?f+/f+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+/f+Bf+/f+Bf+Bf+/f+Bf+/f+Bf+0f+Df+0f+Df+Df+/f+Af+Af+/f+Af+/f+Af+Af+Af+/f+Af+/f+Af+Af+/f+Af+/f+Af+Af+/f+Af+Af+/f+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+/f+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+/f+Af+/f+Af+Af+/f+Af+/f+Af+/f+Af+/f+Af+/f+Af+Af+/f+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+Af+/f+Af+/f+Af+/f+Af+Af+/f+Af+Af+/f+@f+@f+/f+@f+/f+@f+@f+/f+@f+/f+@f+/f+Af+Af+0f+Df+Df+0f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+/f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+/f+?f+?f+/f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+Af+Af+0f+Df+Df+/f+Af+Af+0f+Df+Df+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+0f+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+0f+Ef+0f+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+0f+Ef+Ef+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+0f+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Af+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Ef+Ef+0f+Df+Df+/f+Af+Af+/f+Af+Af+/f+Af+/f+Af+Af+/f+/f+Af+Af+Af+Af+/f+Af+/f+Af+/f+Af+0f+Df+Df+/f+?f+?f+/f+?f+?f+/f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+/f+?f+?f+/f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+0f+Ef+Ef+0f+Ef+0f+Ef+0f+Df+Df+0f+Df+0f+Df+0f+Df+0f+Df+0f+Df+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+Bf+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+/f+Bf+/f+Bf+Bf+/f+Bf+/f+Bf+/f+Bf+/f+Bf+/f+Bf+/f+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+Bf+/f+Bf+/f+Bf+/f+Bf+/f+Bf+/f+Bf+/f+Bf+Bf+/f+?f+?f+/f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+Af+Af+/f+?f+?f+/f+?f+?f+0f+Df+Df+0f+Df+Df+0f+Df+Df+/f+?f+?f+/f+?f+?f+/f+?f+?f+/f+Af+Af+/f+Bf+Bf+/f+Bf+/f+Bf+/f+Bf+/f+Bf+0f+Hf+Hf+/f+?f+0f+0f+If+If+If+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+mf+f+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+f+If+If+If+If+If+If+If+If+If+If+f+If+If+If+If+If+If+If+If+If+If+If+If+If+If+f+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+f+If+If+If+If+If+If+f+If+If+If+If+If+If+f+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+mf+mf+Jf+mf+mf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+mf+mf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+Jf+mf+mf+mf+Jf+mf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+mf+mf+mf+Jf+mf+Jf+mf+Jf+mf+mf+mf+Jf+mf+Jf+mf+mf+mf+Jf+Jf+mf+mf+mf+Jf+Jf+Jf+mf+mf+Jf+Jf+Jf+Jf+mf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+mf+mf+Jf+mf+mf+mf+mf+Jf+mf+mf+Jf+mf+mf+mf+Jf+mf+mf+Jf+mf+mf+Jf+mf+mf+mf+Jf+Jf+mf+Jf+mf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+Jf+Jf+mf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+mf+Jf+Jf+mf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+mf+mf+Jf+mf+mf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+mf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+mf+mf+Jf+mf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+Jf+Jf+Jf+mf+mf+Jf+Jf+mf+Jf+Jf+mf+mf+mf+mf+Jf+Jf+mf+Jf+mf+mf+Jf+mf+mf+Jf+mf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+mf+Jf+Jf+mf+Jf+mf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+mf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+mf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+mf+mf+Jf+mf+mf+Jf+Jf+mf+Jf+mf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+mf+Jf+mf+mf+mf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+mf+Jf+Jf+Jf+mf+mf+Jf+mf+mf+mf+mf+Jf+mf+Jf+Jf+mf+mf+mf+Jf+Jf+mf+Jf+mf+mf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+mf+Jf+mf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+mf+mf+mf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+mf+mf+Jf+mf+Jf+mf+mf+mf+Jf+Jf+mf+mf+Jf+mf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+mf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+mf+Jf+Jf+Jf+mf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+mf+mf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+mf+Jf+mf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+mf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+mf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+mf+mf+mf+Jf+mf+Jf+mf+mf+mf+mf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+mf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+mf+Jf+Jf+mf+mf+Jf+Jf+Jf+Jf+Jf+mf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+mf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+mf+mf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+Jf+Jf+mf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+mf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+Jf+Jf+mf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+mf+Jf+Jf+mf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+Jf+Jf+Jf+Jf+mf+mf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+mf+mf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+mf+Jf+Jf+Jf+mf+mf+Jf+Jf+mf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+mf+mf+Jf+Jf+mf+mf+Jf+Jf+Jf+mf+mf+Jf+Jf+Jf+Jf+mf+mf+Jf+mf+Jf+Jf+Jf+Jf+mf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+mf+mf+Jf+Jf+mf+mf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+mf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+Jf+mf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+mf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+mf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+mf+mf+Jf+Jf+mf+Jf+mf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+mf+mf+Jf+mf+mf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+mf+Jf+Jf+mf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+mf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+mf+mf+mf+Jf+Jf+mf+Jf+Jf+mf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+mf+mf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+mf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+mf+mf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+Jf+mf+Jf+mf+mf+Jf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+Jf+Jf+mf+mf+Jf+mf+Jf+Jf+mf+mf+Jf+mf+Jf+Jf+Jf+Jf+mf+mf+Jf+mf+Jf+mf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+Jf+mf+Jf+mf+Jf+mf+mf+Jf+Jf+mf+Jf+Jf+mf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+mf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+Jf+mf+Jf+Jf+mf+Jf+Jf+Jf+f+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+f+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+f+f+If+f+If+If+f+If+If+If+If+f+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+f+If+If+If+If+If+If+If+If+If+If+If+If+f+If+If+If+If+If+If+If+If+If+If+f+f+If+f+If+f+If+f+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+f+If+f+If+If+If+If+If+f+If+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+f+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+f+Jf+f+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+f+Jf+f+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+f+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+f+Jf+Jf+Jf+Jf+Jf+f+Jf+f+Jf+Jf+Jf+Jf+Jf+of+f+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+f+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+f+Jf+Jf+f+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+f+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+f+Jf+Jf+Jf+f+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+f+Jf+Jf+Jf+f+Jf+Jf+f+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+f+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+f+Jf+Jf+Jf+Jf+f+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+f+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+f+Jf+f+Jf+f+Jf+f+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+f+Jf+Jf+f+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+f+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+f+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+f+Jf+f+Jf+f+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+f+Jf+f+Jf+Jf+f+Jf+f+Jf+f+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+f+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+f+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+f+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+f+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+Jf+0f+If+If+0f+>f+/f+?f+?f+?f+?f+?f+/f+?f+?f+/f+?f+?f+/f+?f+/f+?f+/f+?f+/f+?f+/f+?f+?f+/f+?f+/f+?f+?f+/f+?f+?f+/f+?f+/f+?f+?f+/f+?f+/f+?f+?f+/f+?f+/f+?f+?f+?f+/f+?f+/f+?f+?f+/f+?f+?f+0f+0f+If+If+If+If+If+If+If+If+0f+If+0f+If+0f+If+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+If+0f+If+If+0f+If+0f+0f+If+If+0f+If+If+0f+If+If+0f+If+If+If+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+If+0f+If+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+0f+If+If+0f+0f+If+If+If+If+0f+If+If+0f+If+If+0f+If+0f+If+If+0f+If+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+>f+>f+0f+>f+0f+>f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+~f+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+Ff+If+Ff+If+Ff+If+If+Ff+If+If+If+If+If+If+If+If+If+If+If+If+If+~f+If+If+If+If+If+If+f+f+f+If+If+If+If+If+f+If+If+If+If+If+If+If+If+If+If+If+If+f+If+If+If+If+If+If+If+f+If+If+If+If+If+f+If+If+If+If+f+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+f+If+If+If+If+f+If+If+If+If+If+Ff+If+If+If+If+If+If+If+~f+If+If+If+If+If+Ff+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+f+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+Ff+If+If+If+If+If+If+If+If+If+If+If+If+Tf+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+f+If+Tf+If+If+If+If+If+If+If+If+If+If+If+If+If+Ff+If+Ff+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+Ff+If+Ff+If+~f+If+Ff+If+If+If+If+If+If+If+If+If+If+If+If+Tf+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+If+f+f+If+If+If+f+If+If+If+If+If+If+If+If+If+f+If+If+If+If+If+If+f+If+If+If+f+If+If+If+If+If+If+f+If+If+If+If+f+If+If+If+If+f+If+If+If+If+f+f+If+If+If+If+f+If+If+If+f+If+If+If+f+If+If+If+If+f+If+If+If+If+If+If+If+If+If+If+If+f+If+If+If+If+If+If+If+If+If+If+Ff+If+If+If+If+If+If+If+If+If+Ff+If+Ff+If+If+If+If+If+If+If+If+f+If+If+If+If+If+If+If+If+Ff+If+If+If+If+If+If+f+If+If+Gf+If+Gf+If+If+If+Gf+If+If+Gf+If+If+If+If+If+Gf+If+Gf+If+If+If+If+If+If+If+If+If+If+Gf+If+If+If+If+/f+>f+>f+>f+/f+>f+>f+/f+>f+/f+>f+>f+/f+>f+>f+/f+>f+>f+/f+>f+>f+/f+>f+/f+>f+/f+>f+>f+0f+>f+>f+0f+>f+>f+/f+>f+>f+/f+>f+>f+/f+>f+>f+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+If+0f+If+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+If+0f+If+0f+0f+If+If+If+0f+If+0f+If+0f+If+0f+If+If+0f+If+0f+If+0f+If+If+0f+If+If+0f+If+If+0f+>f+0f+>f+0f+0f+0f+>f+0f+>f+0f+0f+>f+>f+0f+>f+0f+>f+0f+>f+>f+>f+>f+0f+>f+0f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+0f+>f+>f+0f+>f+0f+0f+>f+0f+0f+>f+0f+>f+0f+>f+0f+0f+>f+0f+>f+0f+>f+0f+0f+>f+>f+0f+>f+0f+0f+>f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+0f+>f+>f+>f+>f+0f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+0f+0f+>f+0f+0f+>f+>f+>f+0f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+0f+>f+0f+>f+0f+>f+0f+>f+0f+0f+>f+0f+>f+0f+>f+0f+>f+>f+0f+>f+0f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+0f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+0f+>f+0f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+0f+>f+0f+>f+0f+0f+0f+>f+0f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+0f+>f+/f+?f+?f+0f+>f+0f+>f+>f+0f+>f+>f+Pf+?c70d70f776e11010961d26b0641da7aabc3f22579262addf5f98d17906e1b4d943aeea3120e4f6a7f729af20f13c584a79d9c7df4eb14b2ca01854624d20f5fa440327ef5d61924ff03b7680bea8fe805fc4420ce5e103deaf56db9a9601079d5d8b8f66d5983f1fe1e1800073976733e6c6e54bcd9edb802b280a63b74adf8b1952fc744753771af2fd40976ed71f00fa9a54b50623112fd2c0cd3bf3cd8063bb96f4597ff8af19eb584387506a4540c702f1c2017a6f5398ff0b3f3fba873e209f42813734e516918d804b6e174d63f09e00f4b3f60bfeaeeef50485bbd7511203d1d9284d3d8db4ea0a741a1b03e300e2a9c812205222e8fc026a458420220a876bf3835fe06ed1dba1e8de3aa12fe18ea0d6ae505090357985cb29230933516f885d0b46bad87679dc9b36905731d6834d728f306848947033175dc228cf2319519ccb40a770088dd9fff78496466e7b3814766ba6f901037d098f8c1ccc20baa302107fe87d46fb7401d91aacdab82e2491c7c8613b0c95031da4e84471df89619cb26525622db08b81f27e7275f1c1dd64e57174c06e7bd79febdd6aec31592a0294c9e276b3d65987f470eaaa2dc024c33977f409a6026185bed4f55b571c2738b88cc09f74b4b84ff494f71bb93b3df25675a48178dfa7ce98244c6024dfbb4f382a643d538fda5df16cd9639085cd64f5877f63e4ef41c9a4c3b7b1392226f3c8f9b858f0cb601c14e0dc88a73e24caa743776fa424aeeb27bc37402e7ec7972924a4ecb50dbb7469221d706b958c2f2318dfe3d4adf23c6da0f2251ca2ac85309fe8a4bcfa4a53896c9eed83fe15e44638a9fd8c2d3c64de92bd5fb773d87e25758e5a2622e2fc0890c2ef7ed4ad61ee8c6524bf9e51fcda7ddafd6c4457adc2cbfb72505ffb25318a4507900b186542bbc07c8b2cdda872829d48a3c9737252cac2c3d060376051bd400edbfa60ba7ce9df19101937ecd26d11cbc0b8ba07e762b5c8653db0e025e5588b1b1c57d4473d4926dde2a151c147968ba5d0d31912cd6ed3f7ae6acee3066a462fde5d1142b8a16ea0b59510c3d9137f5afafc70fe18ceb5f7c8ae27de7088029263c037548ed3e920d61995c6c033915edb772d77604f69b09f9478711f2b058d925bf859200a3eb539894de28ce6ce536b6ef4881d480596d4a60bf3e28c53d0535c1b8a92aec6f1035569e8d5d99533bea624614503b1765259766e469cf6c5e53296d8d45f3bde15d579000aa27234c69e7dcce7ece7b2f76a0683969d5f19ebc4b6f52cca5bb792126483b3b8b75e27417e08e9473eced1c817088495033ff5afce8d9852229d398a081a4baa52cc7c6faec669260c6b454edf07c7ab2c7d9f020505323dcb34c975b96f5833e2353fb9e7776c9fcc028ab726c753aaaf95af857c9ea520784a1c863cd2c04be93d5b3b7a7e72c2b71ce79f44d8698d0392141704a8d40220b1dc14cbb8afc4c5fc8b24f119802bc77ba324e5e287d6d8056192e5272aac5c3cf236d563b9bfd5414a249f99b06d79604cc514de3981f988464c6a856402fa2b6869fbb4a37803df2db4a45a7d3624839e9e9cd0de0f3a4a71efe6ad3cc4171b2bbdbbe1ca4057f1ee8a70ec6f0698cc54b613f13a5b7dee8d5a8185fe2e847b626a96047bd046b1bf05714a925ff4e91a279e30cf4c855898d599c316f557bf7eaf8834e40bcae517059524ef2b4a1c05f86d32dee7c51b6c407532a77a61e6e6a9ac8d9ae9a71c183955a31a181ae2f3661446e7cf0d3c5d121b9e17fc2d4ba5049549331a94a5cdb297c4e17f08e8fb39f3869602d91d6ba45c56f0d6266846d7d73649e4f90b9bb55ea9055cb7fb989a27fbf11870934740228a94633042b9debf4d116cb93daa31b9e9804a50dc36b5d1b9a98d1afc924ef79089514bb9419a40ddbf9e59f91dc0bb81af273017a3ba6c59c894c17829b95edc22f0d5af05d2d5923f6b4ddfc7a97a56d5c2b52289c123b7fb629a993aba08362063e884fad36cca56625fb735388e8f242ecb3efa6b5e3457999e16499191985106db2ba5ed0607edadc1dc3ca059d67394db68a931c6b373598bdc9293fc55440f0ca9aa37f793f9652cc9cdb4a78abca35e1c2a5aba26d472dd5df12dd0ca97dc87df98e81e0cf070489f7683a8fc4af41d9ba7d0fd7fee699b1b1f5b287a4f0b46441e38bbc276584a543a5870f22c21bffa0ac6a23664905c3427f777c49a6a0ce66f8c8e94d64062a0c9d9b959c59560cfa011c6b031e4247f05e473bd1d421ef2ac855a7758d50e315177e68bcea86b2d2394fcf98b899afaa3614af301ca85900bd5e94921a0c32da3ab29d1f9aa277c91fc76f4a7075a6258d40d13e2e1fbefe346394ded3fca8cc2ae7eed4e0ab7c8a9965f6996fca2827a01426483e6bfb5910e695a97dcaab71b04facd18ecd60cc0e749c91db7638b5a841eb65b95336d4b0d2d34217b18147e344e6b1ffc7abc35e99fb24de9dbe2e734bb3086ff14bf0ee87813d92b32f982f893c09c86066854e5a39398576db00c2eaf8da38150c8b1008664c4e7362396af63ed0fee3633e2131bbc1bd9b1ed865fd62fa5c279edf8c7a8c4548b39a28a54a9992210ff570c5e3fefae68e089ae0ccd207d5203503f9d132d56ebd60aa6fc89bcbcbe529b292d59da0514367c2fa7410b7852108846ae3386b317a38ed57b1afae8fe80e1a6eab67b7a27ffde519956a732160aa3f96e43d5da9db72c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b091b6160357012089ff9d49d4e5b65c6481e030e3e44a7aa9fa2137db8c923cfd0e401af1daeb836ff1832b140f73842686c83a36541351db6db77f36b1d451cd52dd61eaeea7b8c4d953b52eac27c0b16ed7d18ff1ab1f0e9e0cb0c531b4a667f8753506a3a7ffe6910c4a9458fac0732336224d3a768e12c61752dd751870480295e6cbdf822209e231a9a9dcc330e1f3f9d31a85ba6ea1778a617e51c382bfd34699a2efc86726c058135bb47780c596e4bba2e7e36150cdf5c3c8f44ad58a2fb702168a0fa3b30211e339f672d83ecb8ed6ac170d7fdb892ce24b7ae0e6be8819850f8e3086ea13cc411c4292e2372c6c4d78153be10d4b49a3a6d54817aa7db17cba4c54f2c4ac6f0cedfd66a5efb0eb9aa936159352d58c66509cfaa4ec479d2bde838a70ad275f3cba7362a07bb342542ebb197b9a7cb91612d8fed369e773434837d1072f36511cf3169d149b1a56685ba0928c79fc19aa1369af071edcc1e42d288676dbb9a76c2091382d941d81a4390534173a01bab15a3b20a7a74b1c495fa94ceea35a1c22cb817e1648b3cb23cd5a43ce3fe4dbfa482fd1801f89897f6c0721944ab6d15cc810f26e03062cd35dbaf8e66208676e5ef7140dfcb53ba35a66d328915d012af2186ca2970283f9eab6d0058db4227b20260b681288ac87dd7fc264ddbba75cc8b907a68d3903faeb73f0c6285ae2714ca501a5a9338009203d0a85ede5cc2dbfe62e7170dcc7bb41c158140f0f8bc49bc30c85657a6906a9bcc2d98c66545f56a2abba69a214303f4fe91fbad1bd71fa5aac259cf5f61ead437cf74b68e2824fd1546847b4980a12f41086c8383533c3b820a12db422a78aeef7982157b3673603ec0ca9fee565867fbe916936d001e157d297a9dd3c33355e54fa815fed023ff1e795de6e5bcd7cc01554a557a1c7aeae31b4a732c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09581e2ffce95d8e6d4d63f0c2bdf8ed670285d75852c56e6e5640bbcb4dc21e97d8f655df6468490d2fbd7c4c35832d36afa6d53523acdabe7703787b5b14f3a2001c45c6d08eb13141915e9f74d533b6ba68193ed998c6c35cba2443593b3fef881ba17e679f9bc0778508ae05304a2d9781a4065d02fcf30131045c61fa46066b573674703a97a2f3a2253bcf0e6157e08111f4c4f8110ab6987d918eb2dfcab649198bc7b084b6cf39d0ee1fbf9e7b6b32c80cf962bf4c02e6978d3dae99686ebe0eeb6da7ba61ce85fdc4e1c06d175bd2eac225d98f84cac909f15f3b947701a6b64719c1ac7795e29366d0d96bba4b873f936c2ebd7ea55ad3ebb80242af71b96e77ccabc19c609772c574c0505ad472c304776fb62d0c053def0d5a9c31e7fbf48ff91eaa348395b22d842f570cf2e65a3d2c1f23e1a4ade7b4897593063139819a78a2fded30dc26f27c9473aa0b190dab7d0ebcf4d07c8119d18b3b4e3a42ed1cd4ba7ecaee5208d419db9344311079fc4ce88ee02a582b1ee3ee0aaa27ca9bb2d0621b7929156064307b02efb0960ca3d503a534463180e355997d189e801c53cb769d73bd2204e36c4515a693312238f7a87f9111dbe3446ab73d9bd3de558f03b0dc75985154377932f556e0e3e521b4145431f84888c8ff1e487a58adfd4746975d39f40d3cf61ca576be689b68b057fa60ddb116a7484e6427c3e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8551248c3d28ce2b064dbc323a20fc7db527dd233e6598ed8b9d205aadf12cbf34e867a98ee769795a7c30f3acea9fa4bda3b846bcfacc461c3b0075c7cf548671cbfd0bb41c01004857246a003071747353b9c3c3ff4e59959980944f82e9da4e116f44af2fc552f49ba861e27e2f6aff9a7188098a3262dc1b34f031016a57713e606092c52e52d561e42d22661ab41ebaf1a23bf9f52059f6d52fe9827e0f6522489c5e00f9b2ca77a29bd8a07df20768160b06d3c501fa520ae2350db83abbc246c101ad69232414ab4567eb4c7fac81dbea0aa19f40c5b13999ae43519e9d457fff263f1e0f8856c379e63b0d34f3b45a6baa36a250ada6590961f48d77def3951f9f20027111aadd7d5258e57d2764e72a513612b73b29f8d1b43148548aedea9a36526ce61165286190d31ec5cd9dffdba092f902589bd0895c7402277b35bc9d5a2416e1923574d12225cd85a8f4e517bc05f360b00baffb74cda0ecb24c4b58917adfe5461569674cd4bd3e5fb1c3b789785157af8a9dfabcf645261f4a6906a9bcc2d98c66545f56a2abba69a214303f4fe91fbad1bd71fa5aac259cf5cb8135535be27c3f3bf63df0907d2971abae439f0203b6051affb90e2847c8a5f9e96a0f7838a5298837a89223271c28dc33ee74b953a11425beed7fbce5bb988d5de817fd1f2b6214d389581f02a18087946adebcd792d5e130c24e1c375f5628cb77864808d120e180bcddedf1b24ba7bdbe366a29f1e7e269469108d748db77eebf4792c6b106897628cbd5c63fc287921572a5d343b67d02b9d9e30793a9b40e1c0de092cf1200a2716642029620a154e98fb763ed63356debf7768652caff4bc1e665391aabb7d32b8f0e6ce0dfdbd2e4d6525d77f213f3122d825ca8701e97942c6e62becba36045bb5ef1c10ce86c80e16eebb471672f840a6046e5226330622d6b048f2e01b4b27064bb7ee3b94ef52ba5eb0ad1ca592c92d996aa92c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b092e1ec58feca23fad7159e41bcd36821549f8609e629b9822b7dd541c59f4b8c01bae3ff7d3f08121bd65e5a3e3a00028120fa38e17134194b228ba5f61a5d7e331c4877c641ffada00285181b3b67ad333e991cb1952a2ac0ba99452e22c48e70b5f1ee1bcbb28de35df4aa47377151c65cf75578b0cec72637604776a2d437eff105271ec8b74e1b382003e3117d2ad0becc687985c4c1c0c9c04ba0df73b9266f1251f2a62ab07095b5dcfd9f3871b6f075230a2a6e1c60edeb9cd10bb481853a6bdc2130822aa3d396849a82497c41682a2eea75152c6921d7fb936b9effedfa0765570c3138541e5435716e2ca77cd4032daf8d3903beca1305fca8021e372eff3fb4e6c5d271e792814483138256291bd04975f3bd5ae8bf5d01711d525bd83d3f21c4d36ec7014322624071cc5f50cd5246efc667dfd2aab85fea7213dbe1d2bc57b1f3736c6b7c8da5e63120a73db731e286ee61c8d691cda27a0086197bf2efa9fa8dfff63386b64aadd66819187c7f3f0e97992ef3e261b2806ee2db4710166ec3643f3bfc34da54c91237cfcf44cb1b9c5449d3dcb6d3c505b046d0c2287411f0b0b5af1b9fd23d866f77929e4ca6f487e0fb3f3dafa83afe17fa7e7fd8ca88056dc90b9be5840ebbf6b39ad1798f7340297d2bcd5e71583db489aa88e976d94e8fb011f3148f76c9596b3f4dfbd739ae6ada37505f773f693f8cd8fa394122d4f85ce337ca5f5b9667a38b2a633037913ddeeb65b4d0fecee83f9b4cc85b05770692b3d0f7ac24026a15ed5969ffec02816265107bd712aea8c4375d00aee5734ebf3faaa5df71a223a4215b0f9f33aaff5b6c38df60f33c3330f343423bc0a8dee4927aa1b2805931c1b4db3e6610e7ca9864f4b1b9196a1d97fc363558e36459552c683c46bf7496b93ccefab5300a805f92f4d75bfa9cbbf5a923bb4dfa37cd8c3aaa083d8e6f46cb47dfe5b273581f5f5ec48ba801389bfb7a3d28c8f6bf88c7027e7c2f5c0d63926ca604a860dc18d1c0da47a6fc5cc86605d41c88f9788f5b4e968b535cdd90084c88dbee598b460ecc86512d5176fe94d53924259af4a1bd8054ead7d8fa99256d7f1169ffacf8b089f185a72c2f8882abe4818b7140152df9e12ebf0eb329ff66c8e54409568570024c42cef9478287e3a19b78fc29bb30df5f752545834eea94b617a8b98963455a691ee196837de67c17e0fb2a509ab14e34cf88b269145fd4620109dc791c0d9060ba71ff06392bce8024509f91bf221b8f946ef96ad09120e03cf9f1e5b5c74643a8a0c0cbe9ad9d6f9f1d8d0503ea3dcbcb4fb6419b9538f3cf3b39e8427d9579194d439b82bc09ee6fd7426f77483be57887b1f717545cb956ae95d153c25db1cf898e7f84d71163764903ab8986107e42732c347d362656b28b170c1b6e796b35be1805c2cb59791971cafcbff1f957f1aff446f4bb55b093221e0f9f811feb539a9c48b53d7eadcfed98e1fd7518017da97a061318ffea1eed1efba137b719c02d8eb107f2949c586bd1950dff037375b65e69ed337639a0d62a6a45db7a0fda179c0ab317e6a8f51c750319c8a42cf956b23915f3b4b9ca3a5cd6a7d1583118ee1ee183996589d054b8dd1c2cc75ddf60c2308ef31e0ddbee3e4547afd079550f6ba1930cb028ef90b8ac36e9caf17f0b8fffceca64f1bdaea1c59ad595dcb52d5a4118c99f25450f5f2f0e05460cbafdf479ee3f93341f797c5b2203eb225e86065a99a675c912b1c24deb8c6ae5b88518a66530cfd999dfef7bcd4566296d23fc141dff1da5478c4475ebc25a64d912a265925573ae54cc3891900b62ed86e7f4aaf5a7e8373179980f1595775385a8d02b64cf7dc4b4faf56bfb45c647c046716c40c19614be9f4f63490b9bfd5a9fd913249782759d59aea99f9c47efbe235f7bc07d25f6db17ccd2324d78a983317d4a2ae4ce513827d803991498dd6ad3f897caea1fa7aa24161afcd9bb6687ce8f86ce457ff16a7b8bd0b9ce411f8dda285ec39734e320cce4388430c3df5b9a56ad96a6494a4e53c350585dedb10ef7a87f8bb911bd2c50841ccda7024f0f0c9e0d507c2010abf7b65a20f7f4c2c0487e1276029ee6a9dc29698d26cc8293b059ea89998e4b4936e799a934602b9f8f016f044abd4a5cf6b3a3952f65ebd0a7394bb649587fc1c78e3447e29c328e9c06fb9e9dbb5199f9ffeab97cc48f03ff348baf86dd745ac6a333e7f92715d8baf9c8a9f39e50e4fa7a186e790e82bb296dca7064be1392ae323f1b3a9b300ec0d1c816f8214d1b41695feef5478294870c8fd7c5633b34a567a514ababfcf2fcfcdf231c6783b46cb6328d9bf210076094050ed8ecde8bf92f5f51ec92f807ed2fd61e1a0ed330de8d7ca7936b179b24a5525ba3d61f82091f172ecde5c9d04cdb1961164c5fe0bcc6d8e00dceef4ba3edc4818fa3a6d708287f6ff0105401fab83f2f4dbabcd800629ee21a5b30d934656b77a707ceb0b523883a6013928a91901a70d98c4344c78f255ed2bbd8c9488d4ecfedc42c50ecf96e5d7cf8df8bc25bcc90d4922654a404924c104bdace338ab8d1c122bb16c6dd942eb85db2c9e4c34c3c88fcc83fa92d2a6e124c991a76817468cda0502c3b55192c16e52361981f88d88ef3225450939615177d3b6eeb078b96aacae7abd3c71c8458adbebd12aee94df2f3724aa11faf4bf7ff36fe49bd73d38d97356aabf0f7ad992dbf45c64a01f56d4232062f94707af8c87ffca19e5bfc9f621d25181504538cb0a6306b5dce26af6b81d71433d04da5b3b04130b23cc28051938f6fc0e1cbb45845fabf52755a1462f6df60628a1287cea5568528843b886bccf93429dfda810142fa3a17d7e02d71a2b0140b82e2ae62f6d1a4eaa716178d50d1b0f3194c47f0510f270cd18ca785e11e3b54e585661678faf98af52dfc43254b37bd566a994e307fc09bb9338125b8ae1cc55fad8a546e6832c4bfa93204665a9cf4673386f10c02f0f6f0e7532f8a772153057480f8eebd4aa0c3c818b13b389b4187131d792680322f742d89726330622d6b048f2e01b4b27064bb7ee3b94ef52ba5eb0ad1ca592c92d996aa92c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09cf1dd922b1aa15f94bff94dd558b3d90f19aa827bf78c88ea5a47e234993c7f0238c644183bf69d26c5d020117b7493123b45451800bb02f2e4ec37491f32be3a26c9070e6159fd1b9984b9c5c923be9a81c00a101c7843ee1cc41ca4bdd691538a4eb01107d885d44c4ae527ee558a68dc7535cdc7b5b9b63496d8b85943ca05b3bf0d7be0f9bff118cf424dca0a685458a11b21b0699f91b1563410db1ab16d1ce453a059b15d1b9174dd8e585f7bdad036f50b898336b86eafd2cba0fe3c1aed6861809d72131f7a3ec83495157a54d3ccc7bbcb079cf94201083e4a42463ac71355848bbf51536f4cd9efa05d7fcd5bb1f55163bcdb7a3293cd201facbf597c772e91f106286ded2ca7eb704a32951d96d9322915ec15a7904a059007bc8e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8555c1ba96f8c127aab4bd1253c4992b27bc04a62c8f1f48c1644f8c9fe3cf010ca02e27bb8323440c05ff9ca7c12eef1c4befd7411490159690180d8dff8d7cd2b302886c44dccbac2bb65fcde830856fce571ac2246ceb0baea8460cbdb8262d5375bd286f47ed4b45faea85fa65bb2c99cc42e9cef50ca76ddaa022bb16b43483f2cbfcfd47566d54aad520e57d21bf89e7d4531340c9a2d7d4be0955505e42903071bfb5f0ab959a57db7f09e7bc88a02d84fc58ef0a07fc8691dbc8321935c2c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09e651c6033c299a7f88c63620ad219b0da31b3d49240aaad819627ed446633708c460fd69a428f81ad0e00688b59bd8ec10edc2ab7847ca2254d3ad8bc71f6facfbe001eb9ff8a51ce65b0ee3b22ded44f8731a41efc0bc150804163f91673837603fb8d2a3a795605c1cdc4f7a3c03ee4548af9af70ec7b13cfb350693965f5afd7a48671c7db4b91d1babf5d30000e17b2361edfb3fd822d438aa2eeb79c551deafca7e71909b401ba47a4449ed2feb366912e6cd009f48d490115113f07b85bca9a15450b1d8368c4f2adfef540749fe232c0f6051df747c32d261b1d9b375e98a6a7a08a4f740f2930538a43efd3d7aa580737f94fc7ece1fd070f22fa75ab9736c72dd808f71721f8a0e8877b681e872f4e12ddbd37412af635722a583d091d0de0eb049e78789d75f488c41bd322b785c02c587504f4de99a7baefb621e9575c8a19a23a88d8de30100895ef78e526e150ef3e3f6632941c503aaa19e6cd5e9cd08e65ede30636c756e8b18a74087362fb0cf8afdc0ec2b1834b0d72a8c0b855309b00451fd1d4981988acb87eb2903ab091f4e7ba266b57f6fddd65d0628a420c46befff6e4b6d1a69745b018121c77827059895dba459abc0bb6640639765d809fb87c1b3914459fd78eb0b7eef53f312003aadb10cd1273db20c9c2a337f37c06373c6ecee8af65f2511192f049a9fda6983460a30cbf066527a95c5569af018b4434e9e0c2674722e2cc1a9bcc8accaf07e575ac7359569082efe2825fcc2e6705a0f747ac1afc89825ef355de382f75f4016f379fa1706336621dc976558869a3776361143f5720277c0b4cc4e92cf02d1b124e9c85958ad5508f501bb6bdc496382ddf07bde75a542e601fad63e78a0c550592ca5e60725112b3d766e03b2e26c8dd072d218a8d0d3081a63c65883546cde70bd14a8cc40d372fb9bd9170e1d9ba59bb5ca07f3e63c351882ea29229cde8ec29c43900d4d6a98138da57ba826cbbaed808a412d6a74032fe25cd326aa1996a84214e59e7ebe384dda3f6ead3973d63778ee11b5413b5574ef2a8031a695ab82aa6cd6097c1b255259cde54050dc49f32095c348864e9b65e66f55f961ac3c5c884ab1f136a770c9d5a8284d81477ff6a54bf6e5fec9d3d2f4043b59ccd67f04dd856787f685d44b0fac7914b195a60cfbd42d867c48abc88ffa07e426e0c295e5511d31fba4f76e076d418cd5df1321d227fac514244d41268ca89b5417a2e0b9f3431040fb4b8640432c10695dd0d2b367dc8abfbdfe3d8166816e749c5c7877c86b4f3f55911825bdf8e82a090097e85ab00aaaee4db448d2196a3efdda1497ccbfc4cd4b4c36250ff7f411721f118d1d260c771fb5dc1b588b43aab0e55a633bef5dbb9a5a068c097b61bb48d37f608d175503161a747b1d82ff60b381bcc0abe11e7797e3202547b9970e4a6d79e80d0995c11dcbf78d13fc032879a7417a6b5e8b0676a6ed2a1daf7c2eda49865ad3539254bbd74c86789035d194eef7866cb236531c8c060c7eb0b45e6ea33765f1433e2417a425bbc4df24e0d594ddfbb495d4e14491f8ba717072d647c5db5343d17f8023a3fe182576bdb3b5b6573871ebe0717c709a807591555a4ea2fa0beedb19fac4455224d867b5e2e20b861c37327c289f3fdc3757742882578abe56131d7f25ce3fa16b27f24b092e8524da179bb47dfe2ed6c0adfa7b8ca122af945102098c5a133ec6269a2a7f2dc3b184ad86b562ea8d8cf5b17013f2fe97b2093f59b5b5ebe27abeb40f259470453213b7f29c947ed443c39a1de1742a33e28338e6bc8bfcdfe09d6db76e94175d3bca4f4a8b6a518f4ddf3fbe5b6bb49e3b90f030df2e65b31052e551e938870f55c20d29dcc97c7bc9c38388a87ec386d130d1989150910363d31ad1287df84b8c2d08c3ee24cbbaa710ef7cadab974cbaaef2a0bbd824fcce29aa9b36092668aeb897c87dd8c2f824e4b3a02f6cf17896939607580cc0011fb4987a7a4fd0cbfcc1a3a229a3a418eee5a42030061e6f76e3b9cb4f05ec0130ff1d61fc23e80738ee3b1e872fc48ed386c16d5a80983d1182607faa7c9923a498ae0660b87ae104a313ec1607890bacba69a4b1bce31c2d62287565a2689a23fb70681d4298d6636adc59f4c8b5ed256a5d9483d25de128c8f195182ff998fa34c2fc761694bbad0dea7be854c1832049d45f1215d893bd98b6d228cea06b024bd6fda56dc83c6b5e8c8eac38bed306176a3f26b090f6f12e03f405b242953e552ab635213c071b4a3bf99593913c8116455bcb266f3840c65985a2d3b572571531eac253e1122f0b76baca907ff86d1b8d8881b8e78c19aaa4be7a3d83a5e30b3bbb288cda1805486798e78915487018d9018e28374334ddf5dae3f9a14c598dd131386bbcd808df7fd33de5b3e1726952335aa109114922c10f8a002a5358f0b0ff7c396be2fbad937611ab8de36a982dd1279ac45ff15aaa88d208687c91ea6ba9e1c6656e90de25d6030e07be0ea529a2f7ed1b3749030b67d4441abf7beb95e8752961851ccec4fad4827b0ef13e30c7a8d21f07f4ad8203435eb568a1379c58d26bb20e401f4da4351cc693ce7bedc9163df0beafdd4b39aad83e10917ace0089aebedebbb33c6b4fdc8fb5f5d617a6945887bfdefc307fd11dc37665f4825726ca4b6d591a87a26cca945ec4e78959fb5f29f638f146b7602df23f832895f9f9b6012f669a25a93ac0489cb047d512f522d56177d5c84d82b53e8676778dffbb6d9925589417c4f9f08400e946b021fa8682665486a39ff590b9bc35d968c85f772449421c1282b4bb734c468da9c9bbab1c7e115f452050d706facc841a8ce8ebc8f26871268ec058f461d0138f635b7842936bb0d1de5245267f2fe6fd714a0e75d0c946465e18db23b6a4c25f6db2e3ff8a9ddbfe42546fa95b40dbee2c7bac277aad4a0a708fa83e7a14a82f473e7821a91023746e8521eca386cc35270722a39ad7b71921cd46d3f1dde0f04245bb85d25c885272d1b2b9fd88d517c975f5b49b0d6cb395c0069e9a85620f03d868bc8ab8335fd79ec5791e75336eb4338d2a41c140997f2a4f6940732ba092ed4a8ba8e0467ac8e1174630f15379c693beaf25a8822ebb09293c8991a1a7f055827b1d985b55dcd52410485a8be805bbb7527f488dada3bbff9815e75218e0f23e93697b8aa9ada7236cb94a141ab1124d7da580a225ef7177810c047f9669227d5a06e5b305874a9de120b489cd814455f12e89d621391c216b2b76fd8652beb87e47fc9f49392988354bb9f3774710540cfd05f5e8d84b303c4c4bec6bca7df581d6ca13c9c8517e6d68963ca37ed7b3d8bc6f864df20e4240167ac25ee5fef5a6f56241d64b9d83bc732bc802a07c8bf87bf12acbf4e7f3ad1f1d328ba8708118940392d18d8d1a09a55596987c5458b8cd8e9a0f3e60d5e6172a93a2755ccfc059af8c8d89ea214cfc7da41848eae845d928fe80fabc91ac697df8da6eb6471779af28b21d8c39f4c5d12f082f79b404365e3f5be7396b97ae3dbb7bc36decc4802765fc0047eebee325c027067a853062317a965262e10aedafa2bee299baeaac43a434f79e96f4e7afdef0ac4b1cf76ce28dbe8ac8504fd87a8e63d4d03a9b253e2f1ef346b84750218b9fe63d6c0b1e3730b5be278fcf48d95c4c47e26d1767921acc0d05acfae4ff9e86ed22cbccdd54d1ae034e8c92d897f4b3d80ffeca765e1ddcde8e375db099156fed7aa123a1e67294a19c8c5933cfc6a477fb81b3a83a9d079bf6f931612427ca5070cd7f7130a3fddf07a123d99968fa33b4c1750f7c45232366d5527f4ce927b6e49df4eab57719d846daf2d0a782f9ff47f5d01769da487050b9fbdabfd7f1899d63ec86862d682c6b0ead14babb7f66192bf54c7f7d3219dbee88c163b73977663abc50e6b9ee95464070051d89cb465f13f1ae553bec7e8aa42b77c9282996dd009d0aee562f5a86af90980a628f88ee27f62b4564cbca385f9a7b339c2dd33ac699486a98c5bcf1613ec3e1ee9d44ac3c09438f905be8aef9a7b69624ddebfe1379f0b518ea82bde8ec7d9f42d0562c48579c3ecca8d29ee96b6c08987a6d6e5c19add316e15ec0687356e11313f447de5c92422b899b2a1f0565bffc4dd44b679a9c12ef5cc5483b436d970b7eb815a0b3f9246e206f365eaf6696ea710ec3d74c2d3918af886b4fdd410b589a24dc4d7397b319801039100a50c7435419d91321e9e39518a3b78f0acc3a313135ede1614d35f94fd9954b70371afb85ec079b2791d1207fb2612469f2858552f9f4e40fd630c8a32e85521200a85384bd1717a04f89552fc6cb3490d76c5e9c8a763b9739d464d1b4ec21ad8f5bf95a476c17b56b6bd2a3c20003c77430d0c2dee210418f9ff17bd9fb603290b237a8a68934ea3d9926a49effc7b5ecfb537e1dbf826b6146171d436e0c850bf0dad45c75075f6b8a4440c4bfead86a4491f6397df872c828bb4ee34749ac7d022b55505f4a29073fcf4be8b5e8af7be8f2670dc08b600c8664b6a6d1b81cd7fac4e1b426be179d03311318b9803180bbcfae4d9a6ebd4009b17ed3657a0a0fae1bbcc0243608db5dac04e28dcdd536f15b405a37e40f72891c13e37c0a703b1f883679c016bf7d01f8b122b47079862f968781d468da4b97cce7eeeefab41bab84db682c7bb0325adf4148e6328243a8a828e20c7ad770c52b6fae702e4826b6d96b1ec5deecb60b6d653190ccfeb18881f707b83e2bcc7c07f2eed1e914aa17c15c472e2b131b2a2aaa6a492b25add68594ac600a39bc76cea98d502acd1d75d627942c56633ed17ab067ab3e3d37c7e6d649b523ead364cf56f4944a25a0e10213aed24bf71d697941b5f741f53b73bc27ee4a55ed18f39d52cfe5d1fbe5ccf8140d07cda5417dcd6f207d9bfa0a654d55196b268d5eef0136c12a374d95fd911fc66048ae082e5bef8fdad3949d9054c9861bb3d89bdfe7647a1571aa8046e4f6f571e2d8b383f8370b3b610c48b65187c394d1502c0c9b33f819eba2a5ff6e2b9577b1712cc7a480d32497d1b78647cd1bdc312719579d3198356400a5be4f9164ba71efc9a447b44c9394b6714823eabcb4e928eab097318e6e108392f27ae25200cc84bca28772688ed2bddfa9615b628f26677f93964a9105169c6d589ae6fc63ddc1b9bb66adab468e4ef3fd9b5957cc19f95e0bfb56b4498aabf948170a1dad4105afc66b9319137366e6f4250d71223ae89693b9e863d4fe20419d6b2d66ff53c98742876a2aeaf0163feb039b43a9756867f92a9c5ec4e1b85a64fc66907239f6887264f70ea5dd790fb297104e2eb152c6815fbdd20764cabe1673b0338ce0de95aea872ce91c152a5e8500b23e4cd0acee608a039e922c761126dbdaad3769153589bd1c860219eadbb2319ae604547acf477a4a62ef5fd8fc9c2fa6826f7d765cc2ff5b899e05c4e675b83c00a7f20a0c522089a1d8dbe17ceaeb4af7cf28a96c01c8e17bd6c081e391edbe70b3d03f59089c5b6d32282f3c0c3816a2708d3a68a4615a1d6490d4623d2f68cb4bc89d220622cc53217022b0cb3657fc216e25b9a81c4574e9dde87aa0b388d6e908fd4aedad6a15e4a5f1a84c6308d96668e547a5f5536914a2976828387004c1bfaf9bf84a2256b071f7a0821b4bbce2a5c222ace880aa940e24b5fd44b1fe742ab04d85eb6e643700e7c911ea44534f7542fcf1c9f3fa79a119cca922b92fe8c5286a2112bf13efea9c026adbe3716f21673498cf0f7bd75c215097892cd07cc1e257a10e0b339c81edcb229375adca68360d9f2bdeb767fced212878bdca91c3c5b7b3f20e80d0b1b7f18993e2af99349160863fc25d0637e5bc6b7c9bb80a15175c7d4c5c88e9742c56d02fb09f142567772eada9e2f91aaffbc949b2577b99442859fc89061ffeac0ff6e46baccd045d587607ba32b6ce0330a4e966f15e8a8092aca8b07a7eaee0399d6563c3b7814ce0690b038d0e435b0898d149b43121ee778e73222174cbdaa9caf573eec276fbb0edd7aca4a6128093754f2f1b7fa151aeea7670323da4decd135774a9993ed3bc3fc57a267f48c0ce5efa8a0fd4b2fd50eba14a904f49974917bb3f1713e3c8260655a9e2529ca1c554b8fbf217ed74a4fa8b1d5562c15ffb86052d4892947909c512b6a5ec49d2ce3fdae12737db98210841ad16f323126772d18b7d5d23ab73de120f26b5c8a9665e76482383e3187e4fd2cb1562ba8052f7fc1b40ba47923edf565824fe59e468d6440cecf21a9fb590b0afd4b1a07d7c7c708e3f9fb0b45a7dd26514ba1e872f1ae4b60931853f436fdbe2aa0624e915af7de5472915fba6b7d5e201b8c81bfb5afbc3356baa7072c491737b2057740cc5e2e6acabab82ea20958d5e86ad815e597f4ac8d12c386851e34505a71d7c31cb1f67a13640bc31e59c300a78eedcff9607a77789b59d08084fe79d5b951994ef312dfb27040aceba9e0c1072368384442dd51296edbc5dbf62edca092db9c8e66d077cb88de49fe1f28d8a6f988891c9a4262ff669cc589b3e42242eccb032ecae08e4d230e827a18ee8cdc1a980b7dc19c6f50c06d0d2c543ae95b35c4bb5014d3e7f3ca6830fe3f84ddf8dee74a249d19f05c6623dad3853b9ba791c99093c878478b166beb8c6baf6e3d357af10bb7d5629de6ad49cd85ff4a4de02715d8d53a6448cc90da28c2b23cd151a5684532f79bce9035d0073b7d4d3516062918ee16243bae42016f010c31f80346b8268fbbe45ebec0e69b876622923796aabb90d1dce1af2a68ca7f80ee484f419438c64a044888b4d23521533abd1f58287909cadcf5daa72de6c1cd9b218e08c01372547ab2725a41322f2c95ed42cbfcb0816429f474c87b4d71080360269d7d185fc5b06e016819dbe0d760b39d5b7e2679e707955ec20889dccba3c3d9ba73de08355e6511f6590523bfb7f0c8edf60e7a31753a392f9a941d93c5f9c836ae2e1b8b1367af4cb8904747b58450d4f249436095ce561c2f3a5adf61270f592f4d8ad807237a85148c14c7f1b445ab6e1e4447aaee164e3aa842570b900165416f0a63651f4c11dc6cbc01dc1c38b6205576af6646e532dd4cf8f62e3255dc76a02222a86976398a31cd779e2d9d97c201290e8c9759b58f7618735b805543c24c5608c49ef6d8cfc0406566fc92355015cf9277abd3027c13edd0006387337d9cd5538921dac51dfcba5ec95df4dc2eba974565404d7ef8a60a4ed5505fb2f7c0fd019f0e7512f25525baf701e521fec1b1f9a8485c4f7d395f453976842d151a3723d0d66ca3a62b2ccf946385c7b5b3885be4238e1b5ff65e7c8728df020c5c1b97bb59dd547fa8c98ed6ea3612ce99da4ba90c20a56330c2bbfcd6716b78b09aec2f25ec151ef5e49dbd3936862217aad990aca9ae80d51d909aa65ad50dc6b834f8870b1e04d3e797704e4c39253652656d934d223acec95c8328d516dedc760cc6b9b310359be96e7387b4a0347e745ad4908aca5d8761e8809782b8923e7f05d255c44e86eacfc3ce8732aabb9216a1509d3f9cb5ee497ecdd64069ddc50d6e5173955a347bfd36359b1be231e6b53d6422692a351b00945deb11a7023ee7013bcd14c1d7822441f9663ab0f77cfac42bcba458d33c4bb9b197120eea402693946bc87f54e8187edc7a98a15ea58f5e95b1f4fcaabf1251d0193eade82a6786881e65dcf57ed54b801307e1c0aac61f7828779489326463922ce22ab832b3b26a532e9a9d8b9c594b71bf7367940da384dc7c972e0746e790b1ba66e6e7cef5fb7b3b9efeb312854aece4ce0a89c3a01efc6d89629c3c81a29fd1c6efc58fa2fb09c12f3447ce821a90b3529998268b32f1b15afde3b42ea2e0a85c63c021d3b682ccfdce025318488adc94175fe0a04f373322712ce3832e7ce267dfe9870927283ad7219a3a693422f648aac2db72ccba6f4fb1ca46905ae2490e1cbafc79c4f6a663519fd5f1ad51f95a9d04ac0efa3f44963596f890032994b71fc703e18e844a9b33534b7a18061d00057e8e4e0c458625a9e033b9865d60331ea04805d5002d8d564871724afbddfbd1a2624c7a0cf69099ba23d1dc784d224c5fc5cc2cb6b9262e590da5381d4faaec49ad7c0c3921be3f580c94b112147addecab9b4b41f3cb70d61226aa97b09a7f109f80d8cfd74b9d2a0e98d3165f1dac82f283a5803422c4b617075d803ab772f736fd29bf39ad61b392ac9ce9bdede3c7f546274a717a77aa0dac4bc150531c2a8eef5bcc53b3788d7d71b09bc220de90df85be46292008aa9aabd5c92ebcf7d7fbf5e44374ec6516d687e8c045acf3f7bf1297ac00ba2e47ffe054a5040cafe03a27dc8b7f0b29ad85ceeb9cf09d0b92bb9e7a2ebeb6e55ce27d527281ba37bc3446c39339cc73b6a309f1910aa635486fecc3befbf6e1fdcd7cc5ebae0f47a635f4008254ebd04688d17f537cbbcb08b26a8e47c18582a324b3f90229472b7053b9a6371f675d37b14492683675668d986a84c4b9097139e3f9411c1a0a424004e30a09d002772f17335de5369ac612ecae9da6042dd6c155a2fc19cbbbd651bea0876c2ef72aa4c135fddb4f7226f9aa86a3f597d2254d2fb5d3a5b372b98344bbda390cd60ef3d6553653608c1a7372e044212ef78a659d2c2ab73eea8cb5c115ca2160e6b6dff6d3ea27dcbb797cd64f5ec4b393d3fe064e9f360f237267f267b9f8db2f0cb2e436628758132f96a53e0629e30acf94557dbd1c8e649c1a0092241136e4dff3df7720ebc5dd7798b101049112604a98781737b98741cc1de4ad1fd9b7e282b7da41b5b02bdf815654cb4a29979d187b0e67bd029887a929d87de350597b4579ea2dbecf490d6936c504d3c55ec9e32b93b5c580929efc4bee329ae5303e93d020b1fa627c6db0ba3a8fb3d9ff71c494ed9e8b2ae7d739fb194f2dba40c9a973a525d7952cd8bfd6f50888f12ecb6f6da70d3a6b3bca03885ca9b5c7be2c02da7a32df1360c33e64c8f82d5a181d7de918389a115b6162e0ea2505f76c1f1a1286d57ddf4b89a9dcfc0245aef94d7842198dbd2bba5e52ce92b743a0ec0c5f09168e4d81c34cb342147a492c87cef529de0bfe781408e13aaa2a043ea4b53f3e545d7027e1fee0af57b77ed043e76fe7783c51049487f1b19c1448dadb3b42eb7b212dd2eddf3823681043327fb3220b57044c0edaf2fac6673678ccdeb99cc10c58f4ad3f56100ba84f68c3d8d8deab5a1c08721814999367d4e6f57c005ce3e64f33877e20e720670cd0ab56c9b4173544eb7183f74d946f6fc4386e62a078cedbcb42b3777c95a4ef6b7ddc35be381159d985657f21ab235233614ca6c1145464213a77b491e89f86cd3e26454c1b92937c914b83a8db322488ffddc662cc395900239d7fe05c4829dfe5311813e1e2e0a12b68303b50334f29230e1c6b148780bb45d7f2ae88f615ebe300e508235544294f7dda571413b1bf97efc3c2977430db2bbf33b4e6fdc8484a7087b7f220f538f46ad5f01216a39aaeb00fff64e47ec3283dc748d9dd57532b767486eb052d80a2a6cfc485d6b9dbec5e9dd9c311d187ca74bdd52899b4c3c9b21654cd435765eb29663615affa725de66f80359072d31545dabb2a7a97e264413235508a04cb313fc6f88c2394041a6cb1b4868a9d4664362206997cc06b697eb5c82b2ff6a3e9baecb455d91376dd4e317735784507a83a0a873d2f0f71d3cc4e499a5960891d0f8fb7cccb89f99854e51ea8ab302cb60de94c18ecad5aa1a88e3c52aa374c9d97bffe2b4f0357ac46579b49ab6d1f6d9ba6fd5dc07b7572c9369cfccfc39a8e159faf5d2004ca2e46788185317508d4c5a0fa617ea638d83d71df8838e266c089cd0b2b4a71094521f9f56b7aed87773ddbc99b9a3310965b0f282ceb1bf95b0d69eeb786e9b0ea8eefaed9855f8e48cc1274c168301aadfeebccf0af3dedb8aaf087f97755f9aab5ca192b3f7c9ba5888025b538fc77121610f7df259a06c0f903a80628c75544734c90253cf9eef0333ea20b9923a84238a8d010f5707aaab4822a53efe9edd7d79dcfe4126a8d3fc3da532a9b52c078b65d2921019177ae7e7566261371f99ffc5398b1c5a1326a3f6b96db2ccb4640251f0637940e1f751e81de226d94445100efb51228fc7da579ca586a2abee315bc6dc298434ad679373a356ab97f0ec4da656ee3aced46c84a9eb3ae0fb0d1395466db857db9f489f03ce969099e18f58cebf36fb054ac4cc448093c9b169351ea7445127b73d43bf5980e3bb0ef9a46194b81a7b15255ae3e5975219b4ed8a74cd22fcbcb38b23a893db4c18c7dbfbbc38662b8a8bb40173816e73c24cdeb4e14347d43173b0d34dbd557fcd5bd96882d5344e5e22dc26229b5b86a848dab20e45c35ff88f68fbc5b2aee00bf34d83cbf355e6b5c3d928168e2920fdf3fd87b32be62f4cf5c6e1fbbfff7f52f78eb36f3abc323f7e8f833472e69576b4607fff22f76cdfb791f06c66cd5bb89f345319b382de6ef974b7321f3b870fea452a9cece026ba76a46255548c6e05309b18e5190025430233eda9c4d0f72ba0cc3540b240c07f07b3413b99730512e69202d925c5087c543fa6de7a782c634f13a09425a16d7bd1e32583a02c62b7997d969b3a627c3c424e5fa6bffee448fc07bea817ec72c34941c030da6783ac7f3dc48074216beafc00a740d965c61e0fb15f60463537b6375cf798233b3bbebfcf8f034cba8e189778de6e2c7ecdbaacab145ecac4e5e4c7c04092f4d302a1379c65c28f28a4a100a268603a4a7780036f324330e86bffd157257fbc3e89c4836555d52ea9c6fd667631702eb57ac55ba3d5636a978791813b04070370e7222c6d892bdf4e89c0ed73adeb0e749aa47db0e9322e633f8902dce2da566986c66de4f28e29284514911280f7f62774cf401f4e2c41da6840672ec80db2efe101e91db5765f61f692114dfbff29b4251022fbb2ef7865bbb573bcc8bf977ec8b43ef4a0e3128e58ba9d8b35e7b1329a48a84517196559674739baab09c25f9d98cb4ad982998209593a22f9095e80b54bcf8d7b3ccb3c33ee59f33292bd6bf2e9dc4f5e7127a102c632c06d821111f5235a3f785d1d4111c6e05b65af34db54ce7e825b2853ce49d4247b27302dbec1579588b6cdc7177e1c393866e747ce3a38a8ff89fc8fd4f66ed14de4a3cc0ecddc3f631621f3c9d23f76d4fcdcd6144a7b0f7590cac04789ca54793d0e231a79bc8f1c034896a887ead08653b9e8ce53909886115bc8233d8e0138dda5e85c4b2454f112ee02b801a72d8b292e3da980e25afe6e47c2d7047f692e7c8d7cb2aa78f68436c82954a492f741ffc4e123577a26bc5ef60b3b83a6b7ab20ef4b21a296774cba1c5ef435c578062dcaaafd1548240770aebfbb54271f51ca06945be507989f7bbf8b31a7d2b80711cb1eef2817fee8070ad2e7ed27c3794854ffa46cb30e57534253bc351fe67ea797b7e1f889a70fc57ca25a6848f3fdcd3a2860a95583bd7df007b891ef7738fb1d1071659bf6885a725bf39db5ab218a14fb9f518a788a63fac9c7547800cfa8f0e6d4a7d64fe9642797433116ea8693c780429373f2d8a68a5b28a7a4ecaa597bac181dfd0a0cf098f9360df2e3f993c0e0fd92560446d97311199f595fa0737b7e6105488dfb485d54f8828e1f105bf4270974c200923b988d2848a18876a8ea2e4d951cfe8a0f244329398dc6baec0452dbbf4e328a238fb499f716ec150f8ee06daee231cd474c97bb51d3469fcfeeebce121a6c48f76571005206690199f92be5ef4ca3e7c123de5485ec5d968227d1ce822770ff6a1278b879f0a2df9d407174e406c85b8ff06a51a894514a719096130cead008a0a7200b30b9d5deb2866f39ebd942aaa5b4bda1e1615f032b663395d82816800f21ca8265f0661d1974f480b1bda242e5f4f85cfbb56e83a327ce020d32890d5d868f3b1dd9e8e94def3a37df91b703e6a5c2e928cdbf36751be24c4105d7523413c6f3836ae26f84795332487161e773abd775b07af6f94c3e82f30800f119daf8bb642c5b4c7392299e870fcd44e5e25fe913447c3ae3d7cc6fb259d9e9e55605ccefe726e3e7aaabe3df170fab5f4a57db832ccb19c705d3e3fa6c994d2a717bcc862e756b15ad5343178f9c152362e758e97ae24c5bc9cc1a7bd17aee4030102141a66ea9c9cdabe8dc78ec1dc3dc041b48fa8e505728f261519e7d79648bfcf1ef21dcfd009d15fdb9b5633f3caba2f216979020102161a3c4b47496ee4c441d2f1cdc0de411b63635ae3bcf9f220a9c824e1ddf90c5241bee9116405f6cf74ccb42f0bca656adae015248f114c4be87482723c8c8bd04b39d85471165843a12338196e4ef33b9e1d63b4d780baadd0010c309cf3689112cac2445f548440a94638a6859a4f78d5add81946b4ec840c80f67000079d77cb1678e815b8e61ac3699c04c929b352faac2a76b784022855e56fddf86f6de6bad81edb05a062c845085890483d959587b1bb6890debf869a44b2e0aac295274b6bb2ec5fe123bc5cee4b31fd734d7dfc21151365888f8ae21169c61edd419873b6cff916f3c8485e721a943f74d2b747f3e44256df498a8031868dcc81b8639279eb962b6a66ab89902cb31542e3d517dc1fb9b720e6b3a3b252cb5a29f37388e7cf4cf7a2829c80ad77bd39da3c3f5fcf25c9eeb0963ffd803d1c732e4b9ad0023e238702c908b6d6fa38134f06b4d123f8b9a612622116fc8a3125df8a05c6fb0ef365e785980b4dfaf6f77064eda451d10029ab51006fc5eda1f1be3b866861bfc1a3961136f5b072a7f127af6fc80865f599ce721fa53207eed8f868f53c7090ef65e785980b4dfaf6f77064eda451d10029ab51006fc5eda1f1be3b866861bfc1f7d272fcf770f1bc5a6adca9b42a41a58a4b444f2f7620fb76a047e1f2d0dc04d6e4a2f14a7745296e96e75273f9dd5216e6030310a5506b41bb1d4fd6f09a2fcca3bdee93104513a9e153272df35e0fabdbce7812782c4a531beb883f7d563dfd5957d5f2f807ca519bffea2e47c19c39c40cc43a6164ce2a7d10d04f3e0bdbcb584fcaeb966b18acf1470d69fb46551e75f67def1435b140d50587ed98933e411e00e7118d0eb1a4b5d3581169e76b988197e383238e7f8738ffc78d3aa310d486cf6c1536256bae77f7e21d37ccc2228f1e5b777a1336c43878d57ebb2e2fd486cf6c1536256bae77f7e21d37ccc2228f1e5b777a1336c43878d57ebb2e2fb74d7809c6c9f24c7ae89c9647b42a07894b89acbe510d1657cd0f49888516666ed018acf76703ce37fdd60e554720394a67f85ee17fa976f87ccd6f90a85fef755650106a8ef815d0e5c231df595b678f9d302a5e4a6c15b38750548ed8e51bb16af762aa022ea39f4776ecea22e8bac14deeb4cc9c1bc9ce45a77568502c5c2a090e9239328c44e297571b39e2928bdc5583dc88e76f4d47cd93d224b24a4061c861fc80eae7c95fb1caf75496358f0b0f174f8dd8fc8fe4ea619b8f88ce0f77cf8c2e90f69af4bf3d84b6eb29805e04d83a30cefb5fdcf044611941347fe4bc4cb146abf2fee0ea7d74ccf071929f83b0ddb6151657aa7d46a3ddd05038db7be367fb4955982d559b55835281056822bf814c02f3470835fd3ccb19a8ee16be85ee6290e7ad84ca97f7ccd05bea29e0ec90c26eb506ae15a5e95863b871172d1d6d1637730063f2d87b8e198b5617433d3259c7c3ae325b3e35b71a51e956b7cbef9712ed67afc2c356248c18244539fc5337535a562e5447fbec0e6697bba77d901272613d4cd165ddeec2f6b5cd29c730c5d85522cc9d97b91a86f4ede6c2a01b3d20372d5e70563c0fc36d2b630745f1ff96040b3f8fae7d78cc95d53c20a32d4af84080d355b2c6dca17a5a793c9032d9d3b401a917b07f72aae68a34fbc1fe26a578f27859bacb39e0784b9214942224af6229f11e07fd7d9cfccb4e4b08928929f2ab49b1ae381c088ee8783be29c717b5bdd353d615e7db652ae7b8a258812d2774113757be757d59435d726178d48c6b6988d4ff1f7b68d4c7bd824d74632b306e9b8c9e0c14df58a2b7c3ea445606b17fe5a9305b8007fa656a50dd0e921e0381dc01a1cf69366b4d38c3e552d86900cdaba1c9de8c5b69162e4c3810b7c30fd04710e0ff6ec53c0f0faed747bfefe21e102e0e8b3974a6c082ef5fa835e9f25b02344924cb6a6bec4975e319ebb147abc75611c92b6ee726697570b55cc21ea445d0275e03a50d697a2ebc03a6e4cbdc13f26698b02aa77a581c531a2ebf1e95e634b38e774d548fd04ce24d49bb407029a6fd04cb97ba5ae28da99043e3e33ff73e2577a222beb9d1ecfe94dafd108a35f87d8157fac9ddaadfce7361081470a89f0ee810a78d94e179976cfcbdc0e266a61f4a9798e60183508eb116e676a544b00de2fa949d33bfb66530c1c42a4dc9729a19011e398b81aacf3b3015bae64a55d63f4cbb7e77cc3f868d562f39a896d78e1ad36473afb6c9f95a8ac590b10cb82b36b3d28b34ddac52b68203321d2288479a4220baba748900d6f9e273b063d7eda052bd76aec671b34036f64c3be125b426d88465eb77681cc3f2cd386bc5f6a636973619802704d0fdf6a957d298b3c248117bd1266275019864e053d042369daed54a35ef46ffda4815b4e2f8a2966c13bfd4085b043e7ac5d4f94619deaad90ccee28cd7343c1e114c17e5a812c2cd216af36c9f8f57d767341d750a5c2714a09bb85eb40dcdd694fdb7b6c95dbdc5cadeec01d93482bf21c0c200fb0d681e5cec7cf649ca85c57f93eee220eeff6356165ac12583eb4c8947da45b26ce1c05aaac989c1cf965134c3a52ef5169e69ee8715c58095155efde37c4ed163bf3e0e44bd6b52be6ece68f4cd66e991a4fd72f6818604ee363ae448569b05f834130ff2e18b26d9b7730e44ecf85755200dd18ed2a58426a42c38278d7da2b002b87a2afc97eba5379bd76e03d50048d2be46ba912be53754e61c44e31f66a89b71f11109498b31bb803a8bffc3d9fada6d77432ad52d2397935c76820c76a21341f2228bf7ecc16374817986c3eba9fa495ce3b8b9b605b08d3cd1f78eb82055f5ff9d55396b1a8a53fd7e5ce0ab6a80ca4256c1df7eed2b45f72a12e84884d2ce0c6f7c2dd43ff58798e5731a003630be4f0c224a9e584791bfa487f469d880420d73c4bccf0cae600b3462689b0b8189f4191dfb8dffa655facb35e14c1f0dbce2af97e4c02db85b8822cb743269b8c31c23025d889d07641eecc7a5b90f19c21926b0efde7a0b53bd7fba871a750ef6eaeeb9cd5b53ad8d18d19a226b5abd22752de09b4f03a7582b36544e4f69310c8e0ad18c656f7f601391a2d0a9735cb8d3944593d4f7fb57361886d8128246e80719d9d8e485791521ef3382497c166c0e5ced0713b21471202df473ec431dad8a7ad4bc7b69d886cffa26ede9bdca9bbd1662deb0e3b8fd78ec886ba1918415db9e8051a6512d84cbe0e51ffb4446b41d01452f52b538b633e4eeaf0a9bed49539e2537e0cd3f2bbfe26f9610ec2ef55396441b9f3269170478f9971fd72ecdedb3806d45d78a9fa63f96f91d2ef67cfd5efeb9afc313b033447aa37c8e1a627b8b522e6a7fe234714b64ab096b675d84d835d92a0acd32b75b0b0514a9bc549ccbd5fb7cf4d32e3498a5f4a7dc3d788925a5e23e27c29e54888af946740169172d4b4a1a49c30caaac37a040f1b4670018f8237274b8791919f7816c44dadbdb2aa22025d8c5bcf42056ef46dbb72e9b3d529e46a022692c79f08b39bea9c111bdc5e3ff6d43c856fd7b0f448dbff667d62904c000e382c767d263a394f6ebbc7f6a914ff719e10f7f81ce1d0d0665169fa2da9be187686025da32794e896aae2ecd347af9e3cf6a55d5843ed7143402484c9462194feca5f9bc6bc6a8746a74762cc3c5e2ee832eb06ed50d9d40fda1dd24060260573c046ad651ba0efd1b2246ddfb4360952afab5cf8288ee493458a394b82bb692cc73badeaf61e1e1db0bc9dfd4d011aa1f71f3ed51575e83a8808e09a515804686433ff0778d7b240f6c246237754cd4f66f1642f60ce5dc8b7c457faf88867e22e6b200ba8bc9ba6a8444281d5d79ceccc4ed4a8d8f0a543dda61132bfb483f30ee6aa1f17f31b950256d77e11077b598adb75a1555c6cc828c21d13d39ec18568d58c9a08933f86b54623cd254d3ac801ad379c877427ea8ea0fad5fac2abadb34552b9f0b8ba3b94a300bd7395ddf1855772125a9c1dbd3000990934550b329cf82e757dfa6ad63f900cf4f47b0ef7607912c65adb324080ddf0124f2eeaf0644d2a420308d70fa7598ea397c5f566ad1bc1c070d75b8acfad9884be9f5870df25b07c40f9ab80ecaa8efaa70c859014ce1da0e746ac21ac9012e5d3570ade0ee737f43f415b13164581063388c0ebca2b44ea746e4123489457831b8ba7a5b5a312c39e578120e3304442f9ec1987bf09fd30fe883cef09a120f5044a42a193d30118764d3cf499e956e787cd4aff2e26444379c708ffcc3030813c019e847d2eacf471513ea9bb667630cac2c093fc22b4815b8bbe14ed21f92895bdc003f7b504f935bbd15d00331ccea6d11fba4f9693f538f56ce17fd1436da2b236d1086e556830a64c28830b78865172d81037a89502082067c566aa3c5b6aebc25a7a1675846ccab8f5c2f81fac991cfa67d31e9efb6be9516120813981e6d5105db8f5c3e4df9616316b59df6140184e3186d4127da17c9ab8c276195ca50c21188b7cd13a6f39abb2d725a0efa7c01d15d5e1ca5a9d4757962861c5e95d4e86ca84e087d41c4dcaac35c1cce1d031566b762694ba34238b3aa911c56f112d79fd3c696ff9da61b50844961989bd95363a2accf969e9055acb49c4af21780a4ec38fcc326ca8a437907463dc7025da31519c51b4e027255cd469cd971f3f5ff4a0e76325f1cf2a3f2d4d0fd5a30d8df21d8ad7557ce89909a35735be610a011b498be060333179f9c555fe04268d6b168955b52e5b0daecb9b5b116bdd9ff082a597a74274ed04fb8b3f0b38de40a34e2230fb4f44790117e6840545fbc109b7cd20bfaa6ff0b6f7d0f62b7dad59a0d3abbc6afd647824f3f56543160ef1f62f1775a9bbdad2b2003bd6f7e988ce0e6671687bc54fbbbbb1fc7a728709980871a63992f0f225346236091481e3a3ad8e0045f905a9802da1c6d2011748cfe8de59285c7bec8b14fc3297b9479f9e491ab176d1432fc3f0e90ac3358eb843395b29d30cdea3dde23378d546857f6d4775dc8fdb9c0e862bf062e1a98a3cdd2f8a8954348476f8c586c3cf35e19c7673fdd540557bc29e87ae1adba8c025ef57007cf9432adbd4d290648a29cfc8a8265f1febc9839a0820d10b7ec58a00059e9a3180d3ba835e1cb28b93e83a2d15ff93df5ccef6932722be3000417596bc38888ec392e36ed88a9ca8d716d0b34b8ab26b3528531f04befc36db1ace14f666de33a547d7f78371aec9cecafb4375879e729bfc85f7b14f2b2ee11c8f36afa56d8310a5a585d9970c6780881b156d2f00fe8d5097a82ecd898ea44da53df5b193f8759c1aa9bfb9660d3abc5e829caae909a0c191189e50ba3d9e5102ab34d148dc41340b0806fca463aef05d6de016cd33184d19e1b150e7fd480da86f2dfe316f26dfccfd47809ec592b1c286ecd2b00fd82af56b7c890b4e3926bb02d21c32da9a9c828a888d8e461e13309fc9a56a1378eb6d004ce97049e7aa8cf927274e35b640e8e9582e7e1f5c075e58ec07401a5f763239aaf0be910d05149413c313fc709846ff67d38f5003b0d6ce8d2e59d3938c3f9fd1ad0a08747128445e443213c53693804b0b6376e0b1fe6c2a81e96dad128868bc72d95a8a9a52b3bf8ef5ffda62593e4ace706e18bc1add4e447f769e4a24e5dda946168d991a92fd04a30cb01f0205e434e62c91aa3b35e76f132611c07043fc9a10ae0ea393ab6dc388be8076e9571c601d0562ab265ae0635f8c4d530d34631f46ad5cb7f9d413fd7c6b76980dcf79f74f4ee8950608df428d011f8eae9c471bdfb2dc5af274f0d683f92bb70d7532d15671cce46d8b57a7ba5817e03c064f6b7b28c2afb33aa72c9c303eae02121a860790510a9dcbd62281579b8fd318af635b4709b72489bebb0a984b7f8bc4fdab6649f511d976b5d311bd2be1b45c940f35a483c7b44063b92d0b6883d7bfc8f30241c0790fec70be7f57cb1e72fafe1e5d16bd75218c1c469705261e43b7c37900f1b995fcc2c5f60a5ac5324a0d3ba9635613f125358f363ef17ec274aa587510853fd5d0b555de7a979c0eb4933ee9ed7e6319ff86f090e9e80e0078f5ef5cfd2403f21598ed263eb8973f542753f7f59e783f94afb99f988fc3766af3b3a0fdfbf50d4d486e171204a8ff60c2b0301b1447225969cf14b1278c105f7187d16a732d08cdec2a6bcfbc8045df789325e414301a31af88504d17f4d246f8efe6273e72da06110cff4fb49a24885f211dd1b75a65276b5909afc986d706418f72ead166a69459805c9b26ef836b1bb7b3f1faeb9e37c4f46e8a82da3a4d6a6c53b6a9b8b763410ccb7109191d44f4f24dd105f668c32b7e895ac8df93d3402395980cfa05d5d6335c06f2fb5bbe1d84b191d142ac43e44f08253c1613b3c4c990f1830720635c02f5b2a3ec393eecc109edd25f721107a8a6ee7875114453c23e2b5fbf36a220ba9895b774deaa6b4fa07319a7f5598d861c5990ee81ad85ce0830ccc05f3994d74c2a0c0012832a57357dae41c4a0ee189efb04add028abd5b4df1d59f8a9eb190b3a3b8cd79dce806e1e8c45e3e094f3b14b5337d09da9c7aed39dc5855529f0fca2c2608bef8b94422e2899e56400087be1be181d1840710b76113b7b655a22c65ddf13e3ec7eb930cbcb1ebed1243bc726e72c69472c4bb250a5654247cd6b19f8aa82b493d62b5372f9df198f553cf7d8d5a4a74ea9c0b291eae6d21cd6ee91b03508110a0fa1c93eb60fb03bbdc14a2cc4f6c3e5830460ba63ed37aecd1b8373b4cb108471d6a3e438156fdc510064ce1b13b1be3aea45fd2c21ee44df54512a86775b64521281f34e3d13a26ae99c4542293bc1cd983371a2fa24878a452eabeb465754f8986cd8d7c057d164555c5288e933386a28ff4b3e36b5c5f2025e22388eafbf70d32c242bf41548c3e1edf4ae5f75a98456b7f5900e673eec551b1f75d04c91aedb57cc7bde5468e4f92a7df627bf7c2ac72262ab81a2f61abea573ea80e7923a101bdeb181ea104c35e3090633be8aef93759f3ff3b299c4b7995fd3fc9ac34e26229a7b75c0f93977164ebc306d88d50be83e0a030061af0081ec5642952058f28bed9a4d77ad962165c563ff729160442e64ee0f1ff3fb60fc4f9170c5561fd3fb0a42cd03dd78c8dea7ce960c859c53603537f41f75fd184fcbd1804335ce2c82990d73e57948022b5b6db2d7342c4eb359359ce40937e41531b9b4aaeabb5b5d1e6faa888075b3318cdcfcba74364f49a991029b23093a991784cd98fbc469ae7a749873ad56a1750f5b4182c7788db21a0e2b370faf799117685cf07bd02b52c91e8aba868bd153e076ab21d3e7e78ca2841a338bcff71ed937b87371d42f740ef22f2c1b20e89e198848e8bbdacbd113d3315c15b8810ead3a4635788f009d3d0fbbeedb4e7df3c06de5aa264385e070c07a25b74e1e9c85e89b7cfee8846c38a453f349c2f4e84c4ebd47ac29a4005ac69b3dda6346a5cae74ce97acf88f179ba82d0795c296e3331f315ffbbac1722ba6452c931bf95189b1f0b05c090a617035dcad58a9bdac63635509cbd81e64ddbbd1c55441b24d2723ffa4be205950ea6ce1e1acffdb26f3bb320166287d05aa1e1987dd6576feed92ab91c7ee23ca2644047376e8f1c0ccf0c28ae37ba48a37675e92395b95b746dcd1d6669f62e979ce5b28a644f24d559940b8a37072896dc4d2e53c6ff26b1fd177d5acf38a226b6f09f4cf5a577e1d0676a8932b883a871e92c1427692fa1c07de01a0678e2cb08cb3bb8d1440d4d27e3634a2f5a35e3c609382e6aa75598d678ca7b32b90b6f50d2554352f3071213bdcfcefd84a3a124a289aafe2fd544ac37cc6e9f3e1579b02d37968da4449957b4fe1c578a28e384abced83dfe07ef00e690d0c1743c3c9bef28d8cfe253a1f624adeb411ee1b39fad8a20a739ab969828a0c78f9705981cce47f2ccc04bb82ff4562a455a031186ddd0f34dadc5d59997adc83c4ccf706a86294fd7865af0b342ee23a6bc69c2ec7385955e7b8bf85d3c218408e9fb7343d8e48b46080e22fcf626e56548f85e4ee878c2df12a6919b753967b9a86392741b609e8a4096c0455c7ba6bb4bad5f1a8dbd7b8fd1a89c454285a6a81fc11af3354fc9c0ae9802f538510f5e6636fdb8df307cab62346e4608125b19c0bf67c1b8d5cbdb7a16968899edc5bcf8c7cd0d4d03d569108fde6736b72b3d766a4bcedb8bdb7a725827616de7d5ac81d8d7d959e08c5e0cebd028a52e8dc4b77e07d061d5fb1cb38b59864cd0bde35485e5b298ec78a08d5c5da9cdde2c649e878f1c765ec425283ea382da8b47497c408bc581d92ade997552d38838d93db2a6b307de1e75dab3070bf96d234b14a56ef2cfac837864d4ce35da4ba8243262a9031046b9a3ac1d61f4a25c3ffe1e4b4e628fa2ecd87da46925d14201f8c6fed656258a787926af0afb84e8a4359be0b2e57bd789aea63bffe2f27e0b3dd048e8a72dd80aab3ffb3a493ff47dc70a2820f35b44f7c02149695fa3129fb0599265f3b5eced13415859cd8b1d6e64e1569327896facf2e21d312f5ac9af7a77cbaa6c0479e40b358e75a7716738b3262af59c3fac30233e8fb30446bc1e12d00d0819791bceb83055db2aa66a1e943e0be03362031f9d198f6ece3796174c4307865ae2596283b12ce87da7da7513a5f1a8de8dbe61eeca533a464cd67a6377952873f9d574c2955d4466ac5d8149c0748cef7e566e776af903c8a4c28c229f272e060e280ba03986f65422068419aacac6d0c9ee0236d4f54f59cb9d1461a2945efacf5ffd6c1ef357ced706d360f7330a1b84a998b0b54ddc97b7bc93e053488d71ee140e57d1f5d25fbfeaf5d93733982be60231bb5756a9334ee8d241e609e23d0221e7d5e5dcbb252be9f2132064f13e142fcbfd35b75cd080053e1707d267b8d9b52c26edef9442dcbffdecfd663a9933ef945c74f5432ec75368602d0c24962073e8d421dae30932b06feb3d4c574751118652bcba5d2c4515f8cacda67fc34d1f35314ee49ff2658559fb148831d6e7820ecaf3040770121438f7da40e8be1c427a1f0a88a4abcbec3466b6a7447df3313dd3d896fb058c255ed4290c30de613c83d6751331a19ed3b916ef522b82859f532ebbb151ca54c42b1a2e44403cb1f13ada21f8bbef060e79c7eebffd303afe03b14bcc66f672de4c62739f81839931e32bcece570651ff7377efbb4f36d65938f805781846b82f6d7f0c5db3667900ed62d8ee66c4f73b02b2a8baa7846470f13a864aea45c2f1264c2842cf6b64fb18251dc7c04d9c8cedb2786ee80490ae66e7074ec2e3dbc52a5f2f208eae193c5b3baef4a2751f49b3274f3a6737a36e909241e2105c66276d17c27696d0463a67dc3d055d77fbf3d405b417f1dfaa71d817b0cb0a85f552604a1cb1571ea9a9de616640e9c0e98eb28b97c31a6df129624e91d3e2267ead9be01c3731939f5c5944198461ecb2d9911cb6fea764fbb5d1eced9db72b28c47a93e3be2593f69dd78d7d7393472aa4eb92461f1f109a31175bc43c7670ece8d0e53353f5afdecbcd41dcfc0103c397c6abeafc14d50152ab1a081c398b910fd06df081095cc84a156ae040bb52002abb88543c0004a249b883c8c5bf0e19e57e405c0a3a32dbc540a0e452c914553884d931e223180cab23f00a9d2942636bc9c35eedd3c8d05a1d4910f59f9940880a66a4e4ffde03cd7e9c271ae82153b9b6ab2006cd0554cc9163ae049936534e1bb86c2d7cad5ea7bf80971ab396208512b8d6d80f4caa6c196f4d4619c989240fc8ce33682ba89e57676136d6681a101cf3ab762f3c1c4b76cbdffda41f5cca332552d1472030a27ac2e96b96f3658f6c3e7198c913f6b8904d76506a2e7cd8bb764b0eb1be443610a7423dc4ebf140a71fd1fcfe7332bffe7d8960c81be147732552073499cab1c8b906bca6ad4df2146c26f8bab59cbe20a40a7924c794ba3f0165b6b3085bc413882b3803d914734c8b63aeda6adf0667f658302e11115a526568eaa23e4cbf836ae1f22cf86d773cdcbb95b9e80b5b1cd3c1427ecb65a41a47b91b8b0db3e68a378a3beab585210a073577e121c5ee54d2cd875de2e464c102d6d46c4b9666ecc690a76780639ac9814ddbb0f545918b9f8f56c3e5b07581ff4e47080d022c7ab54223c7e7712cce85b5ad3046f440c0b0503ccf3b543aff93b9838e5a2a9e47e3a9b3a690f78a61e5353e475d6a821819a0637498459ca8df5f87e427036e594ddad894ad5210d0b11b76909caf1817e17536411ceb6d41b20ab198248c60e864907653ae21bbc0be5a529db8169c9105836a5766e7a9b45762fb270b92f844ac1fc1e579a87354179bca1bc3ae7dca593353e929705b19080466c2fb04d6645d6eba842a21a3d2283f06af5f3260a2907e6e7cedd20ad0bd6ef527c44ee7b654f1b9b01abdaef33151bb1788ce96f4d42d642454fa06c967b2c3c7af620492a5b2df7f4fe879a1eb5f84b648cc3dfade4f2df3754e1d1bf2f48ce3df98c030caf4080b494230a7bfb0e37b9f4431d979735191aaae09b8927a05157b8bf9223c1500863d37316ca81b002d88e36df1e1ef265fbce73dc236ce3a6e9e208717105c7b61455c40a556f18e55d22f7cb448bece89fd6c6dbab3b4254b1feb82bdd0adec7f9d870fbef893c576d0333ca49a4824e0d8d3f0fa29be1e6f53c4227a716c270fdd873b7861b5efdd4b6328dc1058b1de5587af907bc8d547e9c9c961b4186117874163b8117be2ee1c481d641e528a9b8d31bb8aa314abb365aff9969c555e44ac44cb08acafe5efb4ceb7d891acc6424ac2b528e7c5d93f58dde6c01c1541bcb1f04c33612eb2f577b85b5224d7b40ab198cd7da796c0ef4441418692864eb9933a4cd4d1331fa3b64e0d91c4128e03b48e2eae7ee3d6a190e3f8c4ddcfd86b1d684e5c97e9d35d57a659a0a78a1ae42d5890b5d7122b59c33cffa021ee9f8d62a52ee3fbb20831dd2898c2575c31757854ae4f872ec90826a12f6638b93be7a26c330fe6fa4dc67f38ca1a0c07dd8344af018cb50bc5b680645ced303da139891475186ca4dd46f95d7cab675df0268568d21d177e9914b93e661e0a910d21fce430f8e1e7cff62f0cc4cc001924d4f4c30542bdb305c3f9cb76ef5e3b68e94874aca0b01fbc431f5a55b4b298ab10905368e7f0b596d9af26debf6ee7a3c211dd4a3b73e345f30183e2ec7395e3aa595837b4cc24f347cd36018ca28066875229a71177ba43d2ddf53cc330ff076675bc54d1fd5e776854032030a072a3306095be0acb68ab37ebe79d9858a262797eda1deec6ec49e14ca948e8b38559bc6aeec023bd4f4ca264ee5797ec7015c2ddd106b65d95e1ec15883ffafad8fbe741986efbeaaaaaad2c9a82f1d41773a9b504ad76654f3ae2ce4d8e68d69e358ef88caa86f1e2cdf0c73c676eed997c5fd559a58344610f86102eaacc7f7a45cf53f17b4dd592cbeb9d6aa1cf3f56211564b6aec28d3339494746850e2ae5048c8b32befeb056e25cb3379020af72ecdbcaf2ea110def532acf608032edd4f58a732d68f478c2578c22a348161ce544b7eae545375145c8962ae513c9225d87a4213b0331b3fe45b7562ecd27c3d6e792c512a224c2a80046c166fc96d769898f980c51f201ee6a1d8039659612762f1add3c9116c9a9ab2bcdfaabddadfc70ce18009d87367b8b7ab4353409d337e2278721c18728ebd60de036775b54bc812b863911351c640902bde7e01a37d61669fad7b70c9d622a8895224b2ced0795dcb7afb84525d64752aa9fca71e9a69b272a3c7c0172eca5ca3b9a5b1c2de77984f6e7eb6801551cb40f58ecb6494c975ca12aec1dd58d2e18ec63d6403365a1312af976c7e3a5b526e08af97fbd426972afae6c6a1821e707a1ba632f5e98239819b66404d7a98e8db567b0daa49db68eb254f61131994b47e67d6f1a92b1f27851adb4ee2f7bf8fd47d2e850ac4c4458e7c6932015bb259d5611c70860acb7712c923da33ab747c62765676f5740c0a7699f503215dc6e371e332b7a7f5a6fdddbac9c860fafe2a6ac1dffb6eda6a11e9fff2f8d41d958e85458ce64160e2daaa8d78720a3c80ccd18a6124ddaad8bbcc85c90b219185f0d8b1a54acda8952e0ef305aebfa78bb1b76ef78f0f22f8cbf1d64b86508b4b457d535c6c36db02c5e3f1eee65927f1e571c61dbc097e76599169b91990033ccb3a8cce18047274ad80f2d8c0d6311cfdbf709a0d5e358719ea7728a568bdc1a869307b6a1d1633e4ac55daafff5fac1155a218b232ba4113fbb47e886616791a6de640fb4ab875edcdb4dec2c752090c8864482f5e56fa0e88b5bb5ef40f1dc985e247ca86d74b0c929717c343f20efc6c0276d24e8f62c08c92bd283043adcd2522df8f5a57671c216c3736225d79c8131b66be99905b84030c41235cad081f909f6242641ba2b5654344762cea0ff54c8d61c099d242dfcd10fdc9723f1890f724834a464d0ec30a11f428b92d83fdffb7d7d618b969e115d5289d199365fae45733a473edce6abb4840951a05a1938d04dd038efa1294e542349bf17458da3119fd918a6ac995ca5c5137657c6f84379e5a4d025a3fc34b150298ab6d2bfacfa19622c0fbb88d2e012256a2cf77d11f767add6590e242b566ebe73aa29c309662f33e1fd2762a997fd3f16fe88f7ac4afd7b1bab9167b555303541f95ce4a9e99707a022ee0c2b652ddf192869d9452c49a6c17cf628b53539eaa8d8f2aa7c7b504dd29db49a74e051d82d7f4ab15e9ec39c25ddca064ef5b3a3e862d624d4d16665abcb3a4f958df4569c208606dfcbfd9df6d1f0d62907e43e6ec2bd9ff91d37fb4b3157ea34e4947a8f50f08c55f1d0558aac52e0b495008bbdb98d4e4ced809c2cf43cca714634f49f29a327d8f453f5cd9f71b38b5a0fd3147f703cb00e190239330118b9ba5f70dbae84caa52aa1f49f11a7d7399bf8e61d231411e8524c920e0415a52abe5e99dc3e4b2f12846f4f33707fa4c464ee51e8c711be4ed47bf5007c51018f0c3615dea623e3a204814292aedfba9e68da6f3e299dfa3b723dc975ced97d3d4fafffcc4601e17cb683cedc22111dfcbcbb420a59e90baee675459f7b8e7104a9b9cc118b5d1d9edb570b796fa5edf30832d3a2f664e71240b863189de37da9a4e4a9bff787a77ad7036314a30119149f2845b80aac78fb99d2c0d479c0cbcf9c17144a973a38a72fac4e3bdd349df1c38607d8f63e49754718ec47627d42b704f78e9692c5adbead872ba420bf8bfb42cef6bd4edae17fd89ed611f361d00f75aa25c6e5157e8e2cbbc6b854e520b58c12c5be2ffd22aae917c87245ddba128b8d31388b3b0d6c273aee5a499f33cb5b69c164564553d34c32a98408ec1a7f7a0ef0e0dd3b5f91ffd4627f9633813d5827fc12089593223cf78475b6d5d7f406c17d8821ef3ce94a12fadef6b34636f9809359e54434997c460a74aa665b1e447b6676a62a22221ac8a2528e60522e40fabd3c0b4da4687fea69b80b90059c68b4243e2753b901fc7a352aa59677f4666ae06cc85756ddeaabe5df939ce2bf56380dfab623b6a2889a20ddf003631a00458269694a1e49b6fc8e4572f21361943ba64f8a30905f2c09333d60c4aeebb6a860f2803c16fe3139081cde6ac9bc1718439f6fd735147475c96ba6f10aad34cb5b86d87f54fa04a50135fe7600cce60de36e557f7216a43acabbad4c6b621a12a7115e32415b29a4a5e90537d6e813742de37138851938686cd4397d87000aecdf84603c71f16eef9573c3a8c4a195bd25d7b8dd1521f91a35223fc6ce82debe22a30591dc413032082f8daab5f030bd4b06c931aeea6f4a551e16f73b9195e26c8bd1ca2bc844d8b6d0436b5cb33d3e7625399d229642c4d989fd387353f3995e542d5da565b446c8b80469af051ec2af8230ad8c9b450591844756d7feb3d622af30316086c503b31cae96dba2fa230af5c006407df65039f840bfc887183d690e335d5aed3f51746b5e0a46f1e2ab109ebc383efd94edaaaed14457e236268e0185818cd6bc2f5526104a65a6a7a5478b080c92c6d361ffade46596643486f1fc406a3bb138348b3811e719afb4bdf2b59d41fa92caaa5465b7944e2f7ab98092de65fc3e21760910a7716dd2aa80b977f5e3f190ea0e0432a583b6a8cbaab65c1c686c4a18dab25e32d80148ef7fc38da1a7a518df04ba4b353c931382d641ff16d0b055c8fa6b45a728aa4c0caa350e2ab2b52188f5db5e2bed84593f64b96f9520d2c712cbe23950ecb781f0562a49f5ef4489b6a765b128f4e144d720b8a90bace5645da0f4ba857990a7f61ef117b3143c6668e919b4e860f342cba2389277b17fe1e7a6903c1d4d77f02f841bb8e0b7042309473979251b2b77e94fc1cc4ecd2d280036bd23c1d2a279a7d98812fb7b078dbc0e08beda77f3ce5dbcfbd20e64b590cbbef131766ab393b1d9b2b1ac9ab9529b661030c1861ff6add69d3bc808475c77834873df83d3168c1e5e97b99f069db274cd06e9093d4ccf45854b3858321a79138629fc5af0cdadb66ad8e4699eb2acdb1d4f80f142654c667a6efbcc9fc0d78515095b4f5ad56ca990832daa33e3a5665e6a53ffea81c088e1ecb0986982af12e04ac1aad247dee39c17a3f84880f52eaea6753c23ea8bc886a986113d83e46bab0141cf151dec00e2fa7df5fc02ff91d133e7b74f182dfe441be3dc8764d51223145291d99753306077f9fd7b7172ff1b519e7bc7c9b82566fefc24f29dad144250ce9ff9d66c97093d0f5dac8e18f1b3e413d8a2e63910cdbc4885c7d82e5e1f6cbaeb04c7e9f936b0d48d15527065e06c969d6f98cc5137adc042c864403e0f671d7871b78d25ce7913e528aca2c30b617bb13dcbe0ff8f940241e32580a58c968fa68cbe5b3ce7996110b395f67633afb53ef74e2c97eeb22a1216010f0f6c42caccd9efea034e39335355296a155dd8f013b0b8b05fa5778ff8ca639f2e4593e72d7ab3fe2c2f7bd4df77f620fc3783a7e8b8b96fd32e2c336221f6e43d8cc669b71c6dba8c96e7ab4307c9416a3bdc0430bb2c8af56a20e5742ec6df601d6176eaacbdd1d7b9860c7f87de27d6f8b1a81f2014bb71c9244e9a94c270bbdf5fb7a311f1dce9658cffdf13d37b5d82e10481f7b7d09d4e6a62deb3a81a55e288b92eaf98bb85081b289827d7753bb1d756c1a9386b2794c21d14275896bb8144bfa644de784897c99288eacb04a1b31fe974760eb77ba805f975e0686edd44a60adc7f73174ea2cb45e2b8dbb81918f5bea661b9d287614b2522c6235ef4e702aff54065eec0eb74dacf65c9ef5b958ce7a9af9845947fef316afd33ce6bdfe58c24e6f5eb0c868c10fa5fd9207cdc1068e295c1d9603391ce1e8ff87d1e677ec2a8003c8e0fb69d3f0ebed16b41520762a1039b46d9e90c50e4169cbbe09fc79446fa0374aa916fc57b1ad8af03f7c54395cbffff0c3f3560d2cb22f42a770d2e2887e06960822f1803cae8ed22be4452b59a20988126be21ba7bc3536174451c16ac011aec52fa30131c8983d63a46087fc415652907e49813da2cbb65ba2ec0fb1649d92898c5b0ea415c31073aa9cd8c7ed2b8f446693383a306694b4d280f94849a59fc7cae4963592f55b6fda60ac3e3303922033f503c3112a54ed9e8b6f91b4e53f54cf48d654d502668405473bbf0a541b381ac68d2f6e06d2edf0d9504bc2948207a8e915dba4a9cfe25aa6a2f99b5d94618190cd5be0b51ae668bfd828788c4f1c12dc1c807aa1ae4f665055c95990eeb836fc759dc50939d8c460e4b3fe1378c5b5ee6ab76bae9e10e65e47aaa0c1cc5b120868af4daa6571c95cb60e8fd5a093a7084d0ecb8fb17c4e94233e4c1813e9a1ced4ea083c9f1405aa45fbbea9d77acd203e51387bf256ab633257ba90ce27be921f0c91c8241b083b35ace878c28534c88b8e2842295c11476d300013958eb4266df4216c16051db923c3db2b01ceb4606f6d0884f845983b8f0b48f7b17629e6ed832ee0a58e2aa9d7f1e3d09125bea91b1a2756c29ac028d5d095ec4ec2bf01fa4a76e35e67bd119b85b993030c123ee7457da88847301e7f5c388cd78b0d470c52b716841c8df93b540ac93cb35e72a4f7d901f0f7542765c75e1ed04bbd30f1bddd32b7e614494235ff153827da72d56647df9ca76522ae8da1037ce34fec6c7295f95cfad4751859480debdd94efa97583bfe022574e6ff359d3eae9a0e5c3bb1ae425e989a5268dc9b171e63cfc71c78ab496ac0cc68227f9c974b6a8ebb97e8de7d9438024586ab190f5cf0718c7d8ad3e081fc0376a9154db98029196d3771d2732750efd10540a70e9c4dd2547c252629d4e43e9a1cfcfc4a0f7f42dba35ba80e091f0f9b5ae97c9a7dc993c29e2fb22ecb62b8d21903f5a3ab313540968b04078c22a498871d21f746d5be9035a76f9470b3862544e5265d79dcafe24a8a3a8d61ada78e00f2bddca42d79658ada50feff401b4ce623ffef9a133179d3ac3526f08f63a90a12097559778925dd0515764fc9370ec5fef19c95d1d4b70c5369853034c9703f72fbd19208f22a27c74820058c6d454d9cf174f11b363f1f5dcbda2de696306b40df9aff263122ff9b7f513bf705a52bcf10db17057d8e6d66273f82549d29bb1c5d3170e52fe3a6c5e131fe2c0738af2b93ce7f82984f57a255263fcb47aac314f327200fd3297c4c3591dc16dba703c9426de66e7230cd5408ac43699c3c3e185dbed68434847efc9ba0245e0502c4284b40ddae428d4711a54c73e39d9493680b8bf4c0e4396954c1034e0b40278c95446378127eb8f8943414e5cc251613e46d3872333172eb8c8135cc8611191ed80d97351b83241219154bf53df9a820ee7db1a65b901292cede8bc9efcddd32495fc8a2d52d5e18369a22c5bdf21d957d54e2244e3d9d40712724658d31de73ee3e51f2970f730f75c5d7975460e02611397f97af5d0cd06e43389c7139de840b959b03225c6aaa890d07953bdc119fa38af692a860fd477a2ddb8c11ec4b5921a2175e0c227cd45109fe50442d1339abe383e81edb1432e9da9767d371ab813b4955b3a0be691aaf8dc64be0eb44e21a279b7c36948df0865af1fecebcd92735e583eddc11e13af83c2055b7b0fadbdb47a0f3da068a17bf4281bf97d49dc515f625ebddc66f4dc93de4eb4a2623e11c9317dce9710edc9ce646bba91c681539d749f6d9c6dc277843f8518aa51f2b74ec5e2f1848bf5892419799adb785debbfdf33d7f16483204fb922c0eb57cfe680b849eb68fb7742d29ff7a8e7147d7b129573f69907a28c6d340749023177ca8c656ec80aa883ec0e5ccf38a8810302b1301b4da0df46a22c62f8505521311e4575bf35f98da29af2ffa6f8617bbb76ed84a95570e2b1a75f8b253a08e3c25eb886f8bf8a7a445f1b1af5ec7cba84b00964536b6c1a60606a9e1ffe37825dcd33498c5ef2e508fa694b1f927afbb288f297345c9e4afec9fc476818f248c28c78e26dcea6dc2f6ba3e65342b727e62be0ce6cf050f5215dacdaf4884ce604e804c68b467895e646989dcc955c24b26206be47bfb9f926aa0bccc41e6ac7ed1fecc5ff534d028b8b40110efc494a6ce368cfc4f71a80cf7d3d87cb0cbe60638052e341e3c1fe8c50928d50463b590da59e51f824c39b6c43fdf3595fad71dede50d5deb9b08c09d48921d613f210ed0e0e9bdf5135e9b651c28de684dfa50588a132645e1328793df4839d51a7c9189b8331a0527d9613596298bedf3e058b39f3928d59a270a05dd64e43feb7f5e91d41ae1628f34f339a656e0b3c734ab29fd87fdc2356fe919d3c2b58f1a1842948cd86aba5fefd11411b397efe153228e850779164a80735e088296aef61538ac616e71aabc75966698cc69433ec1786fa7f300722cd33cc92f439c968bb4f0aa40e6a5b648473f6237dd73c94139d14dc80dbe5eedef578aa778e820988b1e722989b12440aec25fd98bd4f639f08032fcd2d02e2cbb83223cb023451ce6fac2f7d84d7356e8963e9b1b6c29666d8df29315cdfb687cf78ebc8b23ce451424dbce87f17672aef4946e9608443852128bf2b982060fd7093d87f6eee4e7b75c4bb398b428350278e1d1cbaa04183cd99913afc99551e5707dd4a8214eecb6c9fef9eca28d0ba02485a7d5bd3ee0d4bcdb6c8b511ca43f01d1421b05448a30907f4a35d626e2ecb12dd12fa52281002fd940cd8484276dd100003ce42b0f292ae8e1c12b00d6463cbd491e9b63d697cb02dbd4da5d6888ab32463c1a6e1bdb55b07a88e9bccbedc3c948fa44ad9acbf224f5c953259af2c51cdc4ad99649c6908f52f39010f288f474bbbbd9b13c358c6eae318fedb50c907d0294616b98e4e80f85baa450bdbee8659864e6016a45336c43e111c79dd023b00980ea90e662a4471e6461a99771cc8d5b99f1941d0b4873427d7704dd4f8128eae5a23a577ae16c364e919f855202a87d93a300058381c2353754bb9a7562ab336d016f35df93674c7fd9487cb1c0f9ef2d388648aa224258ae74d6b79f07864e67d73fe7fa2fcd447e99f1f7bbdda60a3d410609e40f0f772f01a9f019dc6e89cdb4c55914e135d3aee201291ffbf787d679e4b7a4d081703ddfd781ea6dbb5f46bc001315384c2abefb20b42eee8cec6a6733d9aeabdab5e05833d6531e5a41c8652e09be5ffc2fd353c43b760eba4c632917e45ffc84c6557bb915a729392415bd5c9818efe39a21892846522a2ab844d2fd759841169e2c5e930a4544319ec8fddda58fb23f503531259807ac2dce16ac4505bb75cc778d5a2da1cc028fd022002c0443ff4f8ae6772eccdc6e72b17db8b741472fe810195c97ccc134b0429468cde24a9c8afa1349b4b4381e872338fe8b7c74bbd5f7de12ac6f95e54f0c6de92266ba712b4d371b5468f300225c530c710d097c61c52cbd436a9c327f7568c64cbdb7f7083365fe5ca2bb2ce3dd0d718bef9483efdf6ae5120cb70ce9a902e2104f0445b596adc067e37b80c850e898a4213cb9d67584b47245ee3b42b2e5df950a01ce7c2374db7b971a5a4304646d5a4e9ccfa76395ee72ecd530f0e47ba5da46c052c26f4b9a953459ac4f6afbfaaece45a5ff82011960fcbd6c2f3f7207d61791f97406e59efeb90d071c82492f56a386ee54ab8c5edd864107295503e102ea339e0fd4496204c697bdd5c1b1a35864dfefe504a9901bb3801c1b6cf9d36bef650e297aff61dc1cbbb9789d0e667fea057a262e39e86100b67666a4d14507fd43f105a251be7d713303af0581a5bd3b0d787c0a2aa9fd4f05382315c0a32fa3d77d08b9c75b190bdbef49eca11f61520db974316ef5b09915985fb3f074dc1ebc48f7796722a162b3f0263d3ffab496fc54482b2494bfb40dfccf983dce09e3ee0f570f3bcc969d4bab8c1f3d4572ecf3b5da7f936d6bf1865f0ddba5c80877463ad6650d7fee66931486956a07884f53deaa13e2b80b6ca981303acc042195061225039c080c900169b231ab343c7e9ec6530864ea6d9c7f1ca98f275aafe3c5533d274aec702ea6029f8036bdb577b0c53e08f7d9175b80f0fd759d48de2f33001630dc4905ee3786cc6097fce981632661195691ac496b3bcc37452f0caa104b2205a8a19dde0196a7791988b3b74e23c2174c1e16fa4547451bf5656a8624083945404367142c2a1e93b9e46c479ca81ce2b15dc862700d6dd1c194542bb1b7d6078c829857f179d549dbca9f9fff56d1a9bbd4905b9550f7574b59e8be2e813904f46198fb093afc816a8df6c92211325fffb8cded840088f864c7969facb4e46c115cbfbde5370b9617e772b077d62be3df8f049d5b2b6f178eb2ddd8e0d32c2894d31051830bab7b131979a636527a32cd914be8c093277041d16fe28db29f6fa8f905f4c6b028c487daee15cd8adae17a81b6406e399005db9ae973c5ee9872dc996129d1226069578643f673d9038ca46a17203b4ad62ae9a23b466c6e5d8273c3f3525073c096b52e7b06e80f09a7f945f078dfd7b6d81c2aacb5150c898f37a17ac22be28d013d772e75f5ef0acc67cc624c910bf0e2584ad7709fc43b875369898d663deb8b1de1328e47cfcd5cf6d3fd97daab3be354e524f76657059aae49b92884a19fc1edb6a6bc11a8f0d078d321e2f12f4b25ec9424f5c34dbdaa5cc64e4137f041be5f18b3e6cb5783f0fab9655298e24d49ba6b81e85c73f96c38a354d01b2d6256edc97c7f3ace7719a65bd184fb4c9187a7a40e04231cbc3f4990d42cce357bb8f498bc259d7fac96928a750f3af2d93f048136e222312ccf4b73395d043977551a72fb80cf08e869aced8d19a7e71032e2010256043e2e2c3e7b91d615a1f0a27b096a4169899d971457227db50e17e15b41fcb8c021ab1942ed9ff47185b2decffb701acfc4d2177ad16f8208839c92ff5fc2a3b2bdd4569ff1ec09deb2abf8d5022feb768157927b0e4e2a946963525f5bf94c71b18b539e3a242717621b4c39e2503a8a0c8b67a4d649104fa0ae61a7eb14aac6f7fcb7a82fdd255f7c294be3785ad4c7ad8263f6dcb2505706e585c1d0a83decdccd78eab1ddb47903145cb22e7b61f941453042895bf79b0e17629b896ffea7726674edcba7a42e93b0352506c648a4bec7a491461ad710798765079f69a51ed864ca3539a5e044383f2d51b3c60dacd300f6a02824cdbdbb8675ef6c213901e454d4205a24b785ff54f2ffcc22e011f860bd6f6c2c7888132f6f53b6fa84743c0dbd8e13009652a92e8256b84b235aaf9366b3488f836e09df24e2d80c5af1bdd7228857acf488d5815d3d8244e6fd3feabe243ea8c4492d30b7b9566079d72fb32fc9ad7f6ee32d73dfeb15fd52e36ab7b9628b7aefd55ac894eb3186d4815f08ca5bac06543afc01fed7d2702b2053c686812486db0f9241bdb013fc1a961aeb0385d671dd3f8ac2752ae1af263961c4e056bb82fd29d46155c4b526772997cc9c777aee8ede713520f00b34ff856f4b8f816aad35491cfb852598a9a0222878967072ea1e544e626a52d6e9b74e201b9606b86a899444285e372e9c4d714620bb217611ebb360309d80bf99dfeb64e97362ab7e42d7dd18228aea7cc18da54a53549135ea6164c24fffb0f7d1af1d3131ad44d0dcec7329ed0d761ca45aad69614a120631c179d916de0241aa6a001eee6152d5084327fa6da28fbec48679900f86af802aed738fe903da54c6e4ee4eec51c55ca19f6bac958d0ee35eeeab2cdcba0faadb149976f7a187b8cc109f30317b990fd5122bf285e1dad10fbe50b34024bb77c35cafbc223a8b152868206b8875e23ec7ca902027b3a169bcf541dace358934e87534d35fa28805e85953342324ab19f4186537efb01ce800bf4bcd9eba42f22247a3da26a0ca22168e6be5949a87bd086d181f32e4094bbe4ca0fae94b9cf57dd166bc490365018fb0aac6ea91b9b0d89cfe0419771f05b9c953284bc1f43d334f4757132267131f7514799c7b17f3d0922dd79b1ff3284a087395f296821fa33ab0d607a504a20feab165347f8043170f6275bd0fb61debfa3cd99bfc996fa5c3e073557479039c3445683721dbbb7466be6509d7bf7f0440bedf08dd5c852e67cf1d531e877ad26eecd7fc46f28dcb900e903fe30544817569a81caff5852865252045200b560c475c8d5bcc799961cffddc074ac99097954299ef6883ecc2f9b0f2fbf3ddc33bc736dfb7dec1f6fd6f6fedc3d16fdf9967e1ad9bb640d307251200d9348285daff1d7b9810c323c26b9c67f1329e6decee251bb50650b7b9ff6c92fb0fde8f96893beacf91f5c55ef1b714134f904e27c06c030ec8a221e37e508507dc3ecaea2f86cb905b16851cdb8decd71151cb2a39a2c0ca0c0e9b7c807735f29f365f4ff8112a83d56048faf487bd6bcf1f921a6d119f15d5bd3dda21108967f6e3b1279f5e81b6dcac6bdb7d9fd8f5af4cf8e3f6f07099aef7d4e020f82bdbd6891005440cb6eb2c0ced786965e36da745834b3a4f762e19b88ce9a7495ca7d63fb93c18f4decf93c709679b78c2bceacde707070828b95dd915a3e315d963797bfba550d409a6e1d0ee7f34bd35d27a520b0e21b72e03e2bd056c42b754f17d75b1203d27a94abf103ac492442f8c288958dcde2e6d6ffc387fe3829eec9408a67a6ae8a92042d42f10a762999603ed270ba31f7db42c886b6147c0a530d37039ab3fac517efe5282a6f29a95038b8475d9e4afc6ec6ae5c6ace6954ff4cd42d50ed69f6e36c3723069e41b4a2184adc03d6f1915b08f20630dfc15b7f6481fcc01c6c722fb90e439c180b444db6ad6b20df44907a2bb9f03bab04ab7ce9e3ece7bf245514dce9f96040a81340e47cdd44775dcf5ee227df0c0748109dced80749228992f01af59bc8c7726d71ebd706709aaf50ee080b0bac909cd449646a4f550e47aa1009fc7900d308a821b809d8c2d0335670aad712b2c47b53353a5427f85ce934965909f44353f9e1ec78c4d6f2d09163f45055091edc6267687bc04a665d6654b891cbba3db4756900b338e86628416c7e4c13cfd9b0f652707414a754a855074be080fe188b3f1abf95cadde7456770d0316853160ca99285ca8550e9bfb5613143a5f1a24f10eadf1f611ce50df0df23a72e814f738e60560ef0dabc5f7f8ab3ad8e5e2f5843dac6f9c0c9eb5a16097751f6eee40f460089816f0cbfeb9c32f8bbd0b8e5d31ec482e85a9d1e840b6e1162042561074e0439e48d2e15678db7ee619cfb3caacfa4ddabc7d5442dbf20493e0a748868bd60e8fc8190a38aa81c1e2e2b43303f05c03b92ff153761076adaaefcf0004f75d9f21eb2b1c8abe4f0f29073247ae83a6044d2854b858860c99c72019aee538240dad6d3febdf1a03609d755b4c5e6bcf3563785d0bd92a6aff7583c18c1b2c56864a3023d3d3e9a9c947d2471942781d6766c8906f5781a9ba589cfeb72aa6e2cd8d59824f6869d70d082c3015396b30af597b7f12c68f3944251873519193c160684fd2085d326944cb70efa3873606da4cf00ef8d9eb85f080da2f5b97286a2f64caa74fa9776fdddff28ef6b7b47d4b9388049cedc5ee4248253c02bcfb2d1ee03fd660a73a098d884b90024aa1c9df5cb68c9143efe7b120eaceb7bac9911debb56a3ce009e353af53b3fb6fb4d5297c68cf86f0d079e9472100c6a072f5b200ede7429bc8977b544ff631dd1e0f3882e98d4594ae0ba3f31e763b093f76e1f6a3d5455c09b2cc1d4a6804256cc021d22bdfa9207b92562b571f7ec723d08404cd6959e1a662a66bc766dd379ba1bd8ec07e29b8aa45b53096fd5ab166c7a4cce0cbf8a4132e7a30446f94953b60e231b4c357f2c8d3968b8d928eb3303de2b3551af33f2e4d74d11419450283c3e12d1534bdfa1cb0e1a6a8854b338b2d29e25b8653982743046232b23574c0c4331e0bac59f1581eb70b9271ffc4b156fb25f6d3ca70f42b02159fd6edfd58c468807ff8dccbba548eb85ad7b27cdc5d9fd42d41fe50123ee71852469695eb25502eddf8149018feab234bb1a355f7d52f2434270408bfb602a56a0490a6cf7384d2f85c8b4a34dd92aff7202fd0ed6388f1b10f8661323faeabcd29a7ac114500695a5ea97ecfc19e11f776778bebe5119b633bfddfe7976b44e189c07491fdb43da05c140f99eac6169f357160a113f23bb2904ac26ef4d3e9c8b0894e45c0a0fd3910d5d8c9dd7a0f9f3f368c39027bfb2dfb89082795a4e07a10b5ae3aaadcbe3fadc7e701562c64f9c5f60e03247a4ef69b9cc56d40bea2bdcb7942d015485f7b7515c374cf5b86e634803d36295fab13c6a7eed44863143a106c9a6aba1c2873240335ea394b1623c858227325e07c74ada6604aba5a0800cffc902b89aa37096be6e66789230938c43307d14f2d10ca94a16d661fab3d3ec45afecef1fd39e73c23ff600e299947cf4f65cde6e39ef55a61ede94523b2ac545452ec7bef3e3fb6b7a0449aaafe051122037389d29881f61ff47595a506cdebe652c06d9772b9eeed8a45780baaece2d060c7ae97993411f65c51f5b1c0654cddd0b649a75aa6ab64497a25129226f72c6248836840f7022b215bc1d4807ce5c44fd16675dfcaa616ba0987dc40fcb8fdd81a7a2c2316c7eed8f30c019f437f8f7e9507e882fcdab408bfe17f588e054ca87082ee5952078bddf3726a74e09c9e490400e88a1a4299a443b94389a16f0a2710d55ec713befead2de0950a051b1c170022e22b96fd88d40db443e5c47904d1c963ef2cb12773ae2cf659ceb3b46cba4d9b00ac4d585123eeb99b0c8d7778c2c365380f1f84ed905283bc882e9e27953b7b0b5b489171a1ead9033b3be674c8131c9f26c6f2ed99f454cabb3dfd1ada43f22ca6f5843d571fd8f318907b632da1ab13a90e48bd19e6d5640e4a418cb6ba988578d928c0d5d481d030d47f86f6b416811af7b4df484105f4692e55b523cd4c596b1ac091b2ac0bfd4e63c8544fe2e815a159841167bb05244f32fb6f26b9490530a62cb759b43c30c1b59b66d1e550d7927271e40d9fc9ecf4d06df5c3543b865235836c834513e5cb449b8eda2a425aa5e5a9813a5bbda1790a2864cc16e41848513f5f93c427f85ea3b9aa7f65c1a9987cf04f8323c8b524baef2d99087f56a9240651f8c28e13a47acdc0992ee7cd38920c8647413c6942b9a6d99d1f7fed486c97b39d0f6171339559d85b5f527d983856bcdd6a1cce2abe81aad222f09e2328b006b4bef944bf540c3dc3d03866b697bd672ae330d0d1f7efd68ea2013cfc58a55faee4472bde1c73f04c7ec740c4e107002dddf942571b59a85c89f2740e824729c5ef8451fbebd05c5e95f06843486dd4ff01c49af433ae4c8ec378c3295930c066f07276e3422d150b7c74989a759134cf0ebb26ab7e76570caabe0e110f46bfcd9b4a15f60483032ffe7350f3cff417ccbd166634800230ee20a3bf74372774e27ece29da045627b27df1987a493034f9cb039a8f91a5600c2217419454ee50250cda276198a315e72214e193bf65f27b8f564fb80979befb4eb0870866f9e958e0ef442c65486e0ebb38635b6203a485078cce3fafa6980789f6232ed3de4d88e2d96bd648c4482e1069ec34575bf6739c270d74bbf1d8742d016de19c11716784f8aaab9a763d6b3e6d5837bdce28e77c4e5d772dd3adbc19ab23691c7a0973178304ae77271b9b6302f97cb8d88b92d1ca5c5517582daabc93fe7e5306fdfeb13e100666d2a360d620bbea6927ed3154b68ee2fe4be139059fafa501d03719be5bf950337d8213bd6b95a698ebd0dadfa8f1467dd72d9a26d0e2985ba04f08b82efe38685f688e336a1e3caf521fdfbe61219ceb7511c0ec8e5169c51d8a8e36ffe00fca66f557a0316d11cec60315e94cf1763907928b079b8f4c74c9539d7a42bb652d4f6f7d263f436d7391609bacdb27433565f5b89bc5cbc0d8ed97771e53f45fe29a029586d9675b182a06b102aceab804604d2ad407ee0619a176c744035c9bc33decc180f9d0d87fb4b90df7a08c1895add7eb04e728bf0b7528a635c1b6edf0dd423e00542ace09e739894d02300cc237c350769cb20a714357716457cd95762b9c8b9454a1fd9e9d4179fb3efc3e3f795f7bb7dc0dee9801a2cf0d471efa6697b02469da6ab1ee66fe985cc277553199266273b1e63314bd7fb7dfb2f3fa36a612b7e9865cccbc7d1f616775f54d6880c1be23a48799f2d331285a8890dd1ae01838b65d220aad3c622e3d3e483d8957d44ea54bb4768f298beb5a505f314284e2e8c8424d94563ae6ac3446a8c54ba9b13b6a2c8c28ea00e4cb990485cedc0f7b6bcc8b88cac51ab1f39b12e56d2ce2cafa1e74df206c2050c57dcd7a0f87a0bb00a662524d136f7b8e6e05c8e4f5e0d95c5febc1bbd9eff3ed2d8b41edf7ea9e841b27ecd147e89ca95eaba255ebb31f10d3cbcd24edabf77dd6a5513d9194c7f6555c40cb1a3c981ba6f0a1853e2ee8967bba8fcb6835548bf9a582dde5502ac05db64948ad098b159bfd8fada31254c530396aec4e87c1a4dbeedae1bc17b702f73d94a0a45a3b4088510958734d89aeb522b746eb51f6c5e8a5f25994e3906b94e8e801d34201df93f2beea12c40715892d46a285246ac59bd7c295bd2fffd919b4490001b04ea8cd67db8ccb66823729f87db8b86d25ff54b459904fc26ebcfb0b71ee6a83c010c3566275fe920434d4792d055a5282832eee0dea27eb757f00b29410f5879c572a279113fc1c4a2c75fddbb0b3efc22f8383098bafb694a3efceb1f1561683726b046aadf4f4c065b870207ef084d38dfb83cb5ac19adfdfac8ebf9cf741402d60c37fb2dff682919f6d449732ac799c38f6bc78241a356f860328b06f4b6fe82630fb40a45cdb491919e2a6822c011ba0da307850626453b1ce798297e501993906b649c5fe536cb0ab89c56c04c4668ce0d8e1ae1de21b28d73e1debe07e2c18938b57fe94bba4613ef1844c44f90f8510e47e41d40da5a55c669c93f7d6fa902760a52d4934579b631ccc9c6cf08e08efad36ca23330bb96412953e2a2ff544f06b2bfd4e58ef561fa20d8442142d00fabedc7191a26f57ce0c4379399aafa4425288243d6053ad62dcdda6f7d2abe8fca57b69d09075f61d4c852b36e26547ed0c9fad313db91b78ed5b893cd4ffc08fb5001bcb114d30a61842270c7afaa9602903e8ae9a78ff8572feb604810d40378540918cbbf8fdedabc73a9636daddbe619dff43ae3ccd4a1a5062a6ad276f6d057b0e2397cd1182dbcda9977c29eb330120077701465f2c257ceb7227ffaf23c648aef1e294156b5b56b9c0d2062729fb2e37de1a9ab243fb7dd7c408d855e41573d763fcfccd5278eb5457ef995b203912ac1afb916cb45cdccf25ed7df4dcc0cb82bcd5f2e5a020d5c1787897208fed394e0c1c18cf07f1570dce729f7b3cbe61fc531ba29faf4e1b88e8b818497106e90bb7f142be76862e5051c1990c929e849eaa42555eaa2d60a54c468e7ddde73489691b62299d329abe9ad319781b6cd521c32c370670ca3acf71680788683c258aec9d564c1af0046b6ae18bc120b2f4ae20922229b85f86821100c6c8d0e0fcd2fbb07b64102a7afe37fef28c1c3bd8284d8eb58ac76c29611894952b64f445ab782dfab90a54968d42e0efd870ceca7762b21fea12f8ea5c81695870ab685108c03859f67360efd1ace95fc060013d1f496674f04936abf3d5503b739cde1aac6bead572542934160e2ab3b9026f7beae7de82bb485cba9cf19bb6451b2e86ea54a8bd72f8ad91d3dcd031173718fa0b7fb5a86ccd9f2191fe6d59e5ec4487d60bbb3c330cfa66699ab47741d4c1bd21e7775861740495a72817b35d9ccba3c37ec6fb8f8fa88e30817638b7935840e8993ba837b3a1e4856612e3fbe0d7aeb85f5eb4cb872849a2c220228543a6eb2b69641fbcc5b2c3cb5ada14ee76afd2ce40d58acc70d2bd25fc574881a5b201ef6ee6ac8d993682a11a5c2600e4df6ab59e3d14d617b4282052177f433fb7ffafea0c77341832c39ad9b527307649fc33daa75858335c864dda533db9a707f2f376278463b6a42cd8c69ea4a53af0bd13e04a370556f3c8d7a38d3b43f59c4f11fc406af33538dd257357eb5cc5003b6ee91b0ab95063915acfdaa3636717ea4c29ba17a8fa71c54a40c72c582ff90b07e480fc2a5a9924bb5e071a21f370f0e9039e6dc18f9de0fb827b244a37a2224da0ca2df6b0f586a69dbc7c32d8204016f3d8beac7231427860c7ee366f42a353d00cdafd425908a33841df7493eaa3c24b3f4cd07c4739ce1092dc13d70cdcc7603963c071ebf94c6c6e63331de9741a87bfd900022821a0f57735c2372a7bc17d4cb837cc0c12c75a82173f01db422e0690c9111797841b1dd9dfb8dde4fc9bd507d6db1dcdf6b0e9022a7b9709d964647cac340d6524c76e27224a3055f13c2948010a1d301fd4bcc79e629e2c7b2712e500cb51697bd2e9f2c7f8991212e96c9b37cc292ec83a27e3d5d5b2521666b995ff30985fb722862fcd950f52cfae2f17169b74a3ab8ce9e294be6e37ff56c78fa70aa48cbf52344697892ffc3ef12858b469d2a70b5dda8bdb38dbf65d78c30b2548d1bf4475839b3399ad973a50ee286e44c260382f9d872aaa5ad9848648af0f327cdcd38cc3e9df6d20578bc694432f8943bcfca7c52b1b5c87d527e2ac3bdaef0a7c9b3eebcb333cc0d88f4dddab206c00f132ecd9fe8144f9efcd8d9a4f2b8aa12afe30599fbccb6dd0c2d619b8be6813f91ebfe63d7053ea886875efa24b152cb244e8a9134c718268c5f32f88949ee588339806a3b2d613a7d9316290f2cbc0724287f2920c28bed47179f1ba159e16b8fe083a8f635306b19803e52862c71ec4c96354986c58a2e8efb012f37fc3ba8c463fb73fc0cc9370f10a06f3caaab26bfd1c2424c139bfcf9dc2621a036f1c3a5b1afdf22f43c7b7106d5c556b94d5708f0251f495f2a5a5c57355d026b8ca27fbd5d32d3a9b79112c4919fe24dc691e4fbbde56c58661d0dc2c3ec3aed8504de6db24fd07c95a5f7eb30b85cfa554b32817a7d5c8915d4d9f04744495cfe576de600d0d1734d0ee46234d536ecebc50fb6d42177606a57f5911be2e4afae08ee08ae130de0a412bbb926d5ebb770ddc0b4adda14f63941f93ceb3c091262e7bc2690b29865818d82e8296812671301d23d9d2bc42a703a400b383b8c0c3085fa2894f392455b4feaa161495e55bd0b1d5733fdef62f3a55906ee30835762518c21a7c6c7fe0559ef59f10f191ea1c4aba43d7b6f57421006c3767f8dbea18dfd7faf1cfa41c83727a4294dbce735d20503bb25dc64cebf48de93b1e878739ede2a066d08ebd567d138ae66e647c8d880b8d71cb02d9c82433e8a89cdadafd8a750e397c124ccca598c4734e3c9bf372c92d76530e69d80fbd17db07da496ff1cba99cc71fbb5b35ce2382bc18b4e009e1f014168c598d99bfb5c9b87f9e84d83c61f247e84d4936c440422ca0507c9e3b17f5f5eddb242b9f7e72d4c3fe06dc8a6449a20edf566196239b827f54bbca889aef1f9e0ce35452ad99dfecc710e806badfe6abc9a160c962368e82e59367dee065e8491fca43c33336d612196a34d93bbd6f1bfd298b7589022d38195a49a2aee2e9d9ef8e831f59bea19a6351ce68b1e7e090b46802ee6e61c843c75b53d6ba57b4c3d5a5bf482959a4e161003604e752a0fc18f0923f53b74c4c4046730fa6c3180ba6fb5e3d7b0bc3b9ad1841f3fd3bae114db71bcbd055bad0c8d5fcb293cec2a0a7da75ed515c1fdbd76d2e8c9b4881fa775066a5f229f68c7a082c5d1db4c8a4607f04c2641413632856649b6c559a6114f6f24fe28bc8b8babfef15297248bbf9260bb49bd04f1dece0f612d544495fb0bda63218f62b561515f11d839b677445516823ba5a88eaf828f637515d2aaaf52f97303f43d3ff5c0522bd73c03587c2f75f563ceb4a1a26800912f05d4fe00ec531281b64d07fe20f8df716d7dca7dce1ac293d2b5af0d14003ad3f93485027a39ce2ccb138d89fbbb6227037209a8405bb57717875efa2aa14bc17f83e959a692e6df374f56b2a7ed0c92e7e23733ba13982b57d4512f52a92dad3801d23438e6a426228c3ad3691d9b141e39aead5684a7a4e7a17ee2cdff9d81f8103421c8a650c961a9f5f56adc511bc65402a7156e3406a21bf3ada4b867941e8b13f8f8687c0b0db629b76e93ff1fa57ef6d20c269543000e32d12f852e4b924d0fe078d794c485e92a68c9522196ddd925aa2daa1718a08db0c2046f4fc1f8cad6e78e49406107d956ff255e4a485b2186f26f37dd0740083d9b1c047d4edaeada215bccc0f8196e29777ef4b42fffc0ac17fd8edcbba7ecd385d18ec551917a82b64da47a9a3daefaf5f5e1d65ce592c106eb1b7e0889b48829c3f99a1bc089578a3260a0f49d63d0d81a13f650c5ed088d4cde90aa0f51111be153ea41249cf85ecaad8a3ccae8848e9655e569ddc6653a897a763d40529c54ddecb099730bcfd54ae51d053c8327d1176f548f07bfe0fd028f26f6f6903106a892f0f8a1f7348c9bcfb99280f14d7913d238a3f5bacbd07d443e69e4d8da8ec881c14728c82b64ead6f21b3400db58c8c3a749ab436e852aadb8a896793f59b08ed59c386d7867cc26878e9443ff85c18bc87e0841d6946b4c673de7c838496ee1147d813885e150a2277d9d7db1e1ddf21ba061f6fa018fb2582e6122d1dc4b5ac7ef1d50ac54fa9961f1445f85be92dada9bcd239c1e4bc4d7a201711e3c9292853986cbc78c356e200e66d33423c799179ebd378aa69a8193814c96de389f741ed020c3c14f005bdc12d4de549bb4cb57e322aa1043e0cec6d4235d49a2b2a835682cb2862d41fdd8bacc03da95512b086ee09b2533947561b078760011e3d232feb7061993689893ce0c52933110ac23a7f5f917f326df590928eea6e1cab3e34099b3e553dc2f8ae012b64423b51827002f014b20b54de562375834d5434834be500abd23d83cf8b070b69a1da6303877a66b353e31833fdaf9286903bf2436252ffd39b065c64e459b5dfa733f6cffeae666c30a7d0c36716a5847762e13dc89cf555a648208a7670e2dac95c7dd6d6f1cecd9c6ab600ad92ca6354893669556aff53dfa9c6d69b37f6cdd2c5e564e66fb61ff19b0315c93873d2bf1f49b2566cc085efa4d839b46268e0edd15aeb664a2bb8d061288e58805675142bdfba4fe41118b68e09334d1763b2a4fd985f83f0dec4c3830691c8e1f7cc5d9d204d6380b980679488cdeac5250718f7faa9e3bcc3fd1ecaaa2cb450f563d52fef98930b28ae4fe881134b0e753b3517928d09f13bc3bc7b10be354f499c829c39eec6a1b38966d26ff88125f937c39a819bff3cfd9d5640933480e17de1156254aff481471ff75b7421b49de344e829ab367f0518fadfeaeed3f224884e29380f69d35e1cec316c8c753707cfc938c71fb52966533e410fe3028d6c32a1d2b99f823146e7f55073d410dba896dda0581866eb737f553937ad3d00dd2c3b5bff4cd8e6ffc6831489a4167095f3d9147b59b6d268c59113075eb2ee413c118e067ed3fd754f03a1498b1c6093181d245f62df6847a6821c1bd2f6c6517d0867e0050b0495d9f3ed09721a3859efe4c26a1717cac734474cc560a418a26951ba3afa6bc903619c009d12ea2ff4c8dcd5bf34870bb97fbb01dcca8cf1087ec2aaf0194c7fbb783b25a17d2bb5fdfa8ebcb817ce4242eccde15e14f6a2ead5b731811a1a822e8b1a266c21a38bc29c70a4b5096daa884bc60d1ab3ea76e37f5ebb081784d3dda750f1c2dd089fd64383151ae52476f2406f3aaf1a55b7ef8806ca71b7fd3fa4002ec8fe9ab2c6e398cb43aead43a48dfc045aa1eb3aa7787f9bf7857161e29f29f19449b479cc751bb5636849805d79fc9c12230fef2351a6a0d2c83c056adebe95e2d5ab1346acb7657cb164cc06b6e2662e2a6c9d728d67dcd51c5ba7cffa04fca96aa7d55b3bbf41246486707bb3d2c219109c9993bd9d7f586560ae6365d15dcfb5338b10a1fb06ab99e84512605c8d5a506b09048efb0b5403829ebd58add331db0a41fe578860cd3d48c48f499c076327a370eb5f315d02d08f0c22885de97f673a14207b951254dfd38e6a08f97541b70d002958d12eeb31b52fa0fdc4734d642e86af14bbd34a11444f0fb073ddcb58b16381f766972136470307176bc8f8c13b46f7cac6b117c5d2ba3ae5cdd944d7aac5ece7de7a3d4e3073559313db24194775dae829a35e65d94aede43901da43b52f8a50b0efa5aea0b72f8782e2f0548e0ee73eda13fea8ed57567f7237a872719493ac7481006999ad81df54ce2f8973d784ae6e2a1552ea6c042e16e9c0b9a60ba18fa9fae96474cc9c4ecf7fe722b34ddc4dbcf0dea7b4b2ed7a212f8cacc94a09cbf95a903a6f5c020de628d0a32e33cd307000dd09c8edb50eedab9f96127986e4be3323ca879b3d4aa50507352a39bc1678b5b931768271a7442c74d60073255e15920830a38872dd133848ff42759dd30a2024fde61517073a21834704b5b89ed0a328c93bb55fd41a5f13919aaaca0bd7ec949d9efc2bb2d8d90305ae5d364caa7320ecdbdb46f80c188fe3dbbb5b38fb464b4e6d9db5790db4385b9f84f86116b006fb153f7e9672dffb89e7227ac3354293a4b0792f1566717fcbe98436873bac1c976a3c699fabc5c0d7b477aa9f133128af324a95a09ac798f3132cfa5a16d1d7551f5a1a8d34d86bcde5b04aac2fca5205b58a5a4802671f29d4fd4508b81842ce88cd04cc55a2b73dae089634bd2b2ce43f792e0d2f72cc3810b9c8e2707f3fe0bf80bd45130f6007ce7c3ecec96a4285adb340317ee0ac037c58a7f76d9045ecda1931c125dbda11a03a3b954447da11a7d163e4f56dcd8b99879483e7fb69f1d336c40461066922d2868b91acdcb52ad523a7a68aba40e9205b22812496f31fa17dc923423a66a389d9eb91cb878662722eba30162b148354c3a3e66b24c0cf9586adea6621025faae129c4b9a58484caf37abc49aa5f29971daac89ee00c87d1b945c902a44f24d239a3ea1df6a2e05a176af36f2476ea995313c2729bc4c88d136666b79085ac3db00e48e9735900e98dee905a4fb1e162f4055327b5c87660136bfe42fb789f7dbebce796ec6630bdd5bd55c990c4318bad90742c2e548f02104088eb8f4db0d55bf982b18d29806a90c72f50c0b361ed6fa665b6526fd94ce2b0826e230115aa5d73279f74f7213a9fa3fdd5cc3b915b4ef5b60be46a505be3394bed11d6ededd76bd4b830ef7b09ccd4382b9b3d07ae50c2e407509ca6a1859d2194c7006696662f014ee5a71514f5d9d3690ba0d54f5ab5dae33682d786284961d7de79c4edffe28a1c01a3490ceb20811df1cfe5954b13d9aae5496cf022cd8bebf128f578caea3851cec11203f7a8ae6fab747d0e31aba4d58707428fd27c618a3630266b5fd94d4b8068c8b372f1703cb54e62c87b5e605acdb8edae624b831f825e09051b1de1edfcbc4946af4780401e1d023239bb456c78416b04a42d2a7e12b468040416c85624e7f99c742c785010a0df5f1ece5ac7f73f7867c90e7d72026c6500dcd948eea5bea83988add5ab266e4c682713d393787ae83cfe6ba699d87ae7c59e139d37c40474febcf1f2990e087d4ba35fdc2849ae172543023eb240e3fb7fff84c42ab276dbb0355f1cfd6bdd1f0401b34e33f9b405fe0c13552ebcc55bc40802529cfe9a3b1808088283096c4e6d70d57754e2a9d03c2e862bd9b3845a09bbd5bf0caf33eed8c2df58157aea57792b65159f4696943ae98dde48630a55ac6118863c7f93157124f147234906f43caeb64d19636ce9453eae6b2ca47230f87ef5e3da7bdc72b9e7a0dffb12c6b2323693f25069acaf1a869086550cc0712f88e6d210cd144681031b1b1ef442ad258c7fe242e5dd9ceb7c48cf303cdbdbf9544a07341c729e362cb3d276343a4865c914618c1f103c4dbce7d5cbb9228eb635926f39ce15929b93808e57e35427fda15fdceeb46b8387d08f0102556b01a2754ae28b19d5a0d6720c71755cd674c780831f3cbf345c9bb7b68b2fa841cf9ed1d8204ac05ebefb5ad1983deaead2cd5c71a960b4837d22946dc9d3b60f0750f3d8a53f443439d78b47a43e6c33415e75bf0ec1dc116bc66dfefb2827a827b8f415e9dec139af8cd48937339af8d4a914a236fce4ab3cf616108851890ca158ab0e8a8ceb89c28cc2d7bbfd7ec377cbdcf51e82c3502a8fd2fb869366b9d7ef8f45f1064d076c9589ea909019de686265ea92369b1e4c8aaab055353ce98a4485167eeb27738d89c83386affd93c2fb0a70046fa60ea0899e3b5e51f80081a44e95b22b4527542a8c7ebfa7df96ebf11a98f1e1f98f2b4a56efede17dd6ca0a8f5992178a899e35d02af5f704b0a5d7790535af471b5e80aaad49dd11cc8ffda61c4882fc48399345011702818437e16306dffb98ec16b62b2aee70551e48d7aaf0f4858182fb584af2a60df13dd117444d5dcf2586bd96a399a98af3e4ab4e1c7cc39324ec6a4e82055cafc705b068d6f877e362b8cf38521862edcfb7e7725821ee55aabda7684d2c5fa6d313ca6dea0a1ea54614c2cd20a756c923a12c056eade4fa898c81677958cdb13dbe80c3d57773cdd9a3b093a4c0f670b023aea301a1e664559ee1ba88ff1ee58557fee5ce27d69784a9ff7aac9daf810226065317dad81887104bc5647daf1b315d7e23133cd3ef1e14b026cb4a0b3d9030c5060baa8a6fa86b16b8816281f68ad0517f1299af5387cdea3518ebe8eb402b62160ba6386d05f5f6e1559beedc540167307473a1fc88f1dd0863b6bc3be1c814c3512e77ad9eb1c8b7a0df03553a679304c53cb767af8ffeef26e3c7f34dd132a67a04c9985187e7392b0a657bb0167f900bbd00e403d313b098683a9114cd7b8cdb9941fe1e1360e8718a8e635ebe6a06978a5ec5d988a82bd9629f52b66d53774f5ef387b2dbf535cf3099ed3bbcfc3bc9b1a62d4e07093960a216eb823704e12e9a6738da157189200ec6c66bb4d36d189104c2ee6e3da1cd82cf09a3f7a61c11fe8d9acb53be3b2f13190467c7653fcfea4611ef3b5fe8b929151afd13d7b84a483d45954cf44b0cb899c994e01ac5672856cb92f1295b7b72744d482e2480dfac1c2c7ca67424702a2e10305073f2e258405ba22e3c69c7416cc3484bc6cda50b73644b78c2769c5a91122a078d822045f872a98d8cf6d0fa0be4dfa530f21d31bc82a742186dc0e1e71ed3943b1e73169ebe91c030bdbded3842eca6734d7dcba1862cf43fefef4918935f80d8be1ce534537439385a0bc072b095fce1d7ceb81ba4c727bca08bca20b71fdb13642af122a7d4b3c76d8e5291c668ed687719ddc54443ba31e287cd1e269cd2e680ff09ed9593a1fe42592f852127079c181f0e54d42eae0ca0c7e4c19b3878cf9b1b70c65c819795105a48ed440746846b7c45aa42fdf7f8117f45ca6ab4b02ca2b9c2e56319cd15cc781243f332ba8ac4f2288eca4353af9c529d45d8068cf6ef2d9d6e92de847ed792e3b2da51186331bb022e32f9908783a7cb8c8c4f0be769140fedb72865093f98689e36ed0a2959777626a70eeb988d1722199fc7e92e6a8dfb7787826bbda017cbbabfa833b9e3925531a4afc45e9b1970a861d6369d2ed71482db72ad082092c11165dc3f8294a8c71d38f790ca511bc898ff643ffcda3e875f8a0b3b7c0d49497cc2d842135b17f4dbc1a4ec8c55bb67647b17210b4194583e046df9b02a53a7ecfc6b195229eead65e4fb6dbd461bef4f51b79476cdb544ea5ceeea7b4d906d907450d2abdb5f06443fa8e1db3944bbe0f5089ca20a649789e59adf477d17806131b682b7912c3c4e2de22a56fd817e12b16992f3c5f2f963cc64c24f958c55a9b3f719114e559446fa316e0fb83e5f547666a6b73e95c6706f3ded5e9bb9d0cd9619ca9659445558295b59c017b1481bfb1b7899580b384148aa12e5a60425f4998c02aa0a7c2ef5d85ee1289556d8cd86694dd9298b26f39d040f7cc469922e233ebd6abc7eac863946e6fe7d66c4b3b3364a54e9758768f8c2f51ef3cfb6ad400fed58c0c4a0671d66d0df6319c0e2b4ba11fdb803cb2b9a6246ed159c2a23b3206ed897206b8902eb796c142ac724db8319da5db61aa6946595ac7b9e40319d9d9d718db4c187c6782775d9a054a4d042cc5a1adcc779a40bc70343056bb250d50e357fa2f56ae37aea578d5eec47bf1ad458b669eb9aeb48c5714af7a8067dd71489fdadc66c81690efed6600e832ad5a138dc53f7d5881bb98d7202cec8a5601a87d9d9186598e771e73efde416d809ce71d90e3a4304671c3bd70de1de6781e3bda32caf3754408887d5202be0bbaf365498d69366284807b90abc934a8227e2328f5db131566494571aef8c99d3b084e82cec4c86f75d1e67eb15f5ee60ede4821ce3956898c5e1185ec592da7a68ebaadc1f6fb9c0f5615f02591acb0bdf32384b067f893a3090cfbd3e656765858a64644e0f62d465e9529185ddafd841c7335eade2dcb8e510a6f66a531f9c123bb7a65ad11e3279db3cfda65a0df2d52fa1ff170e2e63dca68be5ec79b84a94def6368304d38b44b13d198aa0816aee4b7bbd2a47121d7b47d514ed03cd7b5d1f879ff4a4eff3cee1c0e15d7fb1d0647ed5e70a06cf93c27b8be76efcdd288eacbfdd4a25553dab91be84393d4b69f78dc43d81d3653151b54e574c2e705ff2995411a524f92c02f883a3a949ae852ab8a26b3db87e588ddf24c3b2a071a52e9a642cca8a304d80b5ba4c839bbbf2eda48369d8bd9db5090b8df6bf9f69d7be90a75cd7fd012b18319381f8faac79f2eafa693e9211a91a0794e68d7fdb36fd68758f9d821ad1d6abdb97cd3bd396188de2435fdf4c675477e063ba8bc340702bf99be0999dcb86736a9b3564215317ff4bfac3e99881221d64249c156341751bd63643309bfd9b6b63361233dfd8dc472dbda83ce3114d1bb814b7d591d90d564b97a70e187d59d532aafb8259c7acb0a87c70f997e151e7f4d69ee776b6fab66fbcf88e08b065225162edbee234976e2c063d7d9854571f7374f35218ffa1becae5b7b4809e21b074e569f8d68d143242a3c5535f87791261c7bdd195d98b84498392e1ed1c3307399d9c37ae122df7445ee435c92a0f00a85a90cd182748cabb9c061f5c976182c4537c081a9d33b1ded532be29ce7d1ab6f21ce82a8726e2bc2e391d5dd4245b5791abcce02fb10fb24fae6abee0a3ce8a08cea70ee45daa141fdace6d12a63110a95c821edef343673a6e01f428e40416e3d68753ca99db69dd0b26cfe8af220e63490ea5e056751a9968efa99d1fb0f7c4a9e290c2bcbefe385b3f04866c32e8fef57d241fc5c69374b534d4b7e49921d871e9a809f4b740e9d3e53c313ab3d0d7afe022287901f7822d1964527cec5380d5e78b5b5294c253cee5432359f651e1c836029c961139094248a1258d4fe38f4d2221b4968179bf7ad1466de93bc4ab9dbcf1991c648402dd9d3006258c65f13409b52b029fef9b2ff6cbe141845cb29d27de79e23a28994fd8c2f08200b7de8f7d16303a80b46eaa1483c46a533541d468e0182d4566ccb812e7b94a5154560fc1b1a558ce8a7eb24d8eb1407f4f3c1ed4ce2cf18b6a365d5034a7cf9bfb1efc9b8a18bfffc8b248c5e8ff537718f736998e1d5dcd1a7ffb8fc1f570726593fd71114f0e2de1bf1ed8eaeeb1903c22fcfadcbfb9d4f7bff3bd08ef2c6fcdcbe238d463fc9178d943f728e8284130b0c9c5f4d5f5e09e35e6a803ab002e68c8bba40ef851a4690017bfac94b9d578cf91d2615f6412360794bc4c17628a1bef13351145544e7c2aae73ab61f7be0d1fe41a564a90bead0ccfa266258f24ab61997f45e88839375c0541d9a81152d57681044b5a4229829971e59950afabbc28788ccb05f4dea72ae3a4900a4c918353342e807c3208d21db1fcd6ebd2228fbc5d6d564190f7da2138de1015c08c160f59e90a50df72baa5e4a17eca40692ccd540702dd4ac88ef3701da609f07d6d5115dfdb473f51f57b061fa50a2c6fbab608e268ee278e4d0c3b4102f1aa27fc740c5b601f3db8245419189826daab749ed01a92f2999c63a37379609439196983304d67ad1e9aaa9b694e63af60fd5b5edc3aa2823eec9d0e5a491f608b7267d9e11e2f82966445f17aafbd0ba6f44c763d292637447ade0e8d666d65425d40389efa1cf091bea481e286f6cc1da8368d4314525adf6f7ae27b5df2c3efb4c9da8f3311a5812a15c9140e8b14315d7f7695c13a9a2df05af053d3a247e6dc0a61267e6173655b101f53b1688c5aa9354c8490875acc3bb47ce72b63eb5ec7adfbf66380f2550c418432fe47df1ecc0544187831e044d0d5729aba90537d2f390167b4ef46eab949de09eecc1e0295c76de707de9892ed2bc5678e5aaa5ff7bbff86b2cbf5f49874ce9162748b2a43851398f43f1cfcd95a40d0f4a59c72ca82e740606bd10bfaf61866821b163c536e755954275b39de82092db790eab5f89d37bb522268212d75cc9c798f643a95b18cb146802267338d37e8843e9c95093d51971e275a742ef8db39dfdaef0b896c4287507166344f2b51edcccd5f3bb5d0caf0e459135dfff83faee382d3e41031cc7d0316d4bcf466c927974acc0aec849905c510f5054c98056bb2fd026d28463f4317713bb36c073acd5dac662d45b5a9798a42b1d70f8920bf353051fec5c6a83d152e88dd2ca3c6c50a99d89c10c4c2a270ab292755563206ee13e2df9a4bef61397c230087f01fb05b4b6dc6c8f55c4dcea745069b0f5392dcd5fc3f450acf319e2c5b00d66a726aabee5436f4a2c67d357d013e161531384b23027f520c20d1fffcf2a7202b88c51a7c44b6bf2f63149ab71a0b58ae4dc72231c8fcd60d2ca4c48fbff243249be2c40361454bdfd58534855a90d9f8d9629ccaae1c466afba74db4fba324f439c97406979f01541ec0cf78ab96f5efb851428cebbed3aff631a044b9af96b4c8c2213e82e76f0c126eadcb71bace44f21ea701f19869492a06f2851af0dc7cee287f0cc5ae54f0553aad8edba40190c4fbf4a1180a9609324c28085ed718716fe1b903f21deb30e9d2a1ec1d94cddce0ea644f9d333fe4f212e315fe0f3d1d4121095fcd71838c224377a2aedfada43ce0ff1ba720f89d82bc28000c3994a56777e7f39a995f4c6d0ede44eb446096850eb341cd0c4d8504404d259beca37d35fb9d12075551370e388fe8ffbf704430dbc00a8a48e389bca82dfa66511f232c18d338da503790782db18cb358129155507eaee2a6bdcb2d5014a311aca75319f71aa7db3c8e85d331e3ff39f88cf9144a08baf3fd4e93efdf08ea46ef913691544cec56006633a08cacc399d2d355f6022afd735b5c32b5e50acb2ca7a4feb5f3d80fe72fe5ab0ea9cbb26f3efb52068d1924134856247269613e21ae4bcbe74d4637db036ce42b06df7d1bbba292e62132b57dc0b41dc6be3e01b3a5cca26ea4505c318ae6b9ae3b5c05e8bdb575460685bda6d682bda5a1337a930807411216b758b32542ddb76fe0421056fa2911cc7bf375cc745659a8a64fe03a9e2805bb9eb49860f483d9a0abaa75761402a37c66a70d6cce4924d0355c323eab95a3fd1eeaa209813982fc459b1493f32e8e8588cd81ccd146823e2728ea20af131699fceaffc0b0fefde0e5f30a7bcf87a712cdeb5b895660aa3320bc2be9bb77a40dbfe1277be1e7bf472e00a472f2880cbf7441d95ba87ee976015451d8e68dc7188748d022f5adf8195b22bb148c91af3a5a7e43f76ef8e7c8ea7cff557decbf412d55374663177a4427ae03ec7cc9fdede4f102d1b93106957756ff035553d25d7b80588b77e83812f566c31f6c3413864c158d270905190dc1798b86c958bf4edbcc516f999f16a531e3f76fe2333f353a6f5dc37a75a09f746c3636f46418bed291e6334d1b701dc6fc3ae907860adf00a15f5b66184c7441eb7b584fd196af089bfa9eae055a93b8d3aa9f07064514d4108b3bb39e3d3fa2a6129f9e6d776d1dfce884c3d4f836c7cb66be33c3d054fbe568a1fc0e65d97bcfe9513f38ca7f7b1e4873f1cb6e71b62c9cb3688b687a841e1e6d33ea3d23d1e700ba201883886628d3c42bbe9f82279851df86ddba256d0c00e07634b0f0af884a113fe2854fb61bced9b4775681a5f9b378e7075763bfd71968f5193cdbfa2dc967ed4fe10e2a2abb63ddb8b39a8025a5d68e1fadb6909d02de70ef0733569b10ce689800e71bfb270f42ffb6016810ada2f50ca9a887c07557455d729a3e2e59d5182fe1ac08c997d4a6d8714fc791a65664cd031c1490266d680bd4379f71b93836339e216975831ba1c153ac9adaf8230a6659989bd2e664d996b5e70b9720e1a0e89a2681873aaabedd1fb43c3f9046086de12d7fb49c2c62ca3e87c847948fdcb3104ea557ee969dd29a1aa49c6757c666dcd23c9474aa28a6a8ee4216b9cd9bdd49ab9be34f744b7ed164a180912dbfda7a0be51a0ab0a8ccf1548e36c8ff0a8ebc55d8f2c3cda5c522cca47625d310bc4ae2e378fa2b7fc435090c9aaf0e861efaa91ff71d51838a6288559722ade02f511f563664cff3a0ffb01855fda85687affc93eb0656faea47795f4f2f3bfdc8b3c565f52c58b20c6f470c46f9d1633df11683de880d8b9a6e5a3cd762a814103819e8a3d5196e84f1d46e50fddc84515e5e049ab429e9e7d816674b36dd46ec4717ab161824599a66a6e2f42613d556f822d4780b913f0a87cabe96d030c12da5b4876699201cc6abfbfe201e905eaffa65c4c3792cb297937620cbb9b9ffeb4122a3e85073d67a6e680d0a4d2261bffe845e98b0eaf2a3da1936096ecf46d5d521faa6009e0cc6a97baef88ad5d693ceb107fe45c6f31fc5f982444c75fba94d820179d3ecf8e4841da27c90b1f659561f8814d2f47118f650fe54128921e9c1c00498118a83592bc8e5ca2e1f218b9f02974a670a593d8ec985eb544f07fd193820c1d86932dd6232adb706f0c177baaee20687600c2b82a1ab35aa2b0f9c3313982fa6e634ec72396923b1c1bb72ee8d13f27dbccab09b11860af0a73f81af55cf43294ea9f81f7761108c61f9a14731936e88e4d4c2138db35691bd273ffbee4014115e40f06c6bb53663a5ff9f7e989a8a7b023295a3109a75a77154a9cf430bf67dbeb99fa79d5f4a01ae69bd7dafc9803fe41830d26ad564e9db25d64a33ee593db5be67e8dc352549ac9863081e118ad1393d6aa5ca069d14dadfc43cd8c5b9da7b9834bef98e4bd706d2e6fb9d768ed12daf0b5cc90222a82139ed20804b612b15e94da968f9dbbac5c3d1db9d09afa539a19f4e923bfe5235bf3846cad469e7764d1205d6882cbbf548f232214f7daac78135dfb4063b26bd28b5a9bfe89a9a6dbcd1e38d313e045e619374df1ce27e37f521a87b8570c628cd8e2cc5b2eb14599927c9c745d873ee641cf9e20986f39da2a98dd8bd6caad6d699c207cac1251f22c4ccb053860c424a520df639cde3e4e1d0a927d949e9b121b387adaa017943996db18278942bbf56e2cf5ac509df39892d830b015f952a3bab58a5bf40c7783b4a457af722d5e73ed67b27e2de5751fce4132c271623ccbe7ebd40531fbd24ac041f06eb6b124711eeef5b06e300fd88f67cd2335bc4abe2ebcd881163568c35aedb02f05af89144956677699a0c937242ecc1c4e0e862eb34999f32981cb63b0b42ff851b3e45c0aeed01018f67e9d78896d7b1e71b8056d6c8ee7f64938981994cc24d3c7691f08b6912d631a0e8a399d264fd0afd59769071fc8cdabf6f4a27bfd78e3f0e8768385187389f70621ce7a6e69f472ee342ff3e01ef7046d7a51babd5351efa1e43656506abadf699869e4764b11bb249886a86ad4ae00d90c51297f756ea910ebf485d3aef6cf3d98436c2e4d1dba5532d32f049d13be2037b5da9bf5f29d4565ce8c807db3cc90630029da9061c76d50a47bef8fdd4c8c022c0aebd9e4a9aa9c2adfbad60b957b34a2b34074197a24eb5db0a702e9bf565a8c4cf8a6c0f90bb72f3847a5a85f61963e40ab6a39cc283b3bc5ba3d355f77917df709c30c8d97086b8bfe66caef606d176e149114619e6ef84490576b6de2d7f05ec3861fce262d9a6f776ea4c2b07a9d32fa736b15c0637e38d6e32908b041c97807a61f599326336e855b25b6af6a39d0a74bdbd002eb4be30af1f6e6577072ae4c06b7f4b65901f78bc13bb051edce2cf30819cc642dc03c3935914ccbedf171723254fe0b64b958c3fcf9a0910a57034ba577874c365d99c545a622b5dee0bde2e3965b7d0c24cbbaaa29050efde94b660f671592e7cf7623580d89a952e28d45a9da4525d6f98844814d56d29029e92d19f7997717689a5ca574e48d8f49567e0da9b842f2f2cc0957f0d53d011a22a86497de0de7041b763698614af49809c17e82efb08d7c742ce4fbe04d5920c54193175020bf956b4829313481b546755f6c814823be19a0c017cdf01783762d12a79bd77ae08d3c39ab87e144be4439fbaa08fd0af76aa9b6f38a8adee7e25f772fb2eac5af76a351f7b9dcaf7e9671947374766b561703c754ef345b815ab8a7ddf3381032adfdf1724ba12b389bb84f52c364314971db358938b7215f0989b8228ade35679f99ac4c35f96f971b810a7ee273b20276ab4aa506090cc864027e4b11948ca234f4353c291a90cbd38e6e4dc97e6c745ed4d539ed39aa89d88dfd12a232904e5989bba5b71eb0526cdc34eb58ed009a9f46d12e4041387779ead235f142cb477e31f0e44e5b677ab7a6913de2ae9b0857cee31b62ac3679fe9d823198aae94d63fb096424f2cdf09229be839e7a2a8c1b3c39f6a15e31211b339e8d4762825ba7300222a5320fa1acc45e18aa607b3415c18f9a425da694708d5534de7fd83786080e7c969fc7449d5ab024fd556327bd211a521d85299251cd1d14fc528bb024e89b31aa135fb545b7f5ecfc0f1c3b86af791d7d6bf26e4afdea2faf6d94cc358ce5c50f24409cbc1ff9ca469f152f41c399a99eb5b339efa4386de7d1af357fdf8eebcf07dd62219b6d508decdf36e72064228b4a1844e0d20f67043b12a53fbd7db1b9d4403554e5ae8fb7b534988ed770751ab0d6f6414ddb494ec5e4a1f2f619dab2a4bfacf9b021041f0a2f0df6937960f5f8b64708c03869e674bd0ea3749a547b1a4c0bc644c98f521aadd392eaba111612709407675c2ddbe09738d6af3ebc9e79800e48a42dee07d05afbc5fa239b1b9d640f68659bda3cbc488e722995c2ffb70f2f4901e12d564bcb2920bb6145c81c29a277e22ceb4375288227a9985f97dfb7b4fd6be35032a4f0de6e77e5edb676483d4467fd38299ab866cee9f3b7cc1835db4a7a2abe56da517c1af9ce0aee5e2c8b63153d41acdc18da0fda763444982abb55134948c0dca29b761a601c5bd598a4c972614edb6c2543038c008bfd81e1db9c53009b5e661719f03c025461a4ecce280545e974b12ce565d6a1126275777f8de8c224f325d67821dde414b3cf020e85051a7723fa437662a591a39d278e65489cd4c90da2ce45e79deff6de213e0984d39fb7d3be7d66d6b39cda24dfb582cd0fef0b784efe0e31def20a9c7ce8f53761c9de7fbc9cbb5e9b9eaaae1e382377ab3321bbc7fadf5ee6f41b6d676743c3f610dd7beedd02a1420240e57a4deebc635304fdaf5a0716e5c5200e8a62e37a62b51c10a67d0eee7caa953df17bbbacd76f3be8939447b205520988746fd1bef45905c9cf1efb2dbc866b4ead37982fcc3bece0fe1c9723052059b1cf739d39394cb306db8387a0d990131c06c42f2e172f67cea28e469c8911336b09fe2cf580613754ab565fd41a973038720424e04a72f92f8dc82a43a8fd185244fad5aa9d937df8433ddcc15924878d2d6c319a5df3822b5e879df02b7896ca9bc4877dc8d2b5adec82fbaf6780ab36f8bc7b71cafaf9b5d59cef86750bcb276eca53a35472b4fb06ee1cdcf3a363e3f5b6ed07c2dbd757021ac2a7e6235f1207c0badf723fc89e27c478afe5ce8982c5d334f14fe1b49c076ab3a68a99140b27f285acceb01734eb708aec69d26962538549825a0d3175de875e86b93e29a46cf2c17afdb9ee6334c9d9ae57b60bb27a734412ff16e399ccaab07f81b58553a6e5b0709c12953393f48f78c1270c7c13c2d42f0c98d7049259fad463162ec551c0de89cbc4b76a25be8c0443e0b140518b3f2f4a087bd6baeb6294b10ea07e168c3d95154ef26631a0afd0af0a21ef61dd3cbd501cb14dfaaf76e0b3cd1e0e97f180d9beec1e648395869f0f44c5fa16b6d95c0f8f849b7f99d15eb3b06aab7050e56f058896f0914e13fb3956e693909f967df365f2c1d16f85d93c491dbb5b1df904ce3659fcb20977a62fac57ae645507fb1224fabd1124544eed9fa22bcfe919450a6e28890251ad7328369da357723a070d1f5a2430efad1a4c524daac22a705d98f7dbdd1a8a54c5d9385f9bd189c12f6f5d79c146e3bcd290fa6c7791e76f886898af5a3a9cdad0fb78d6de6bc2f8a723b16a4579e122e3a3db2ebbd1f9516d6a0a9b22366f8d912793a3a093d345966e3958f447456324a9227921b0bd6c71b3e7b859ec5cb9c59f65c1eab41852e605a6be8fbec66b293eba39662dc664c094962a730d661c0db9e00d003ed9dedca1f324ebfb3d286d57b0f581d88e81b13a86fca000f290913bf707ebaa00371541d9ec012efa05d94969d5a25b0fb47d1578695818facf7288a8731053dc4602fa2b4d0bd4e43d976e15f731a61d482e9bd43ec2f4ab24e137878bf7d57db09b5f96109d8b5979dd31779d4018dd25fb2b655333cd32f417d7979a4950964853040d4e5960a480b54411e7ed43508887591f286a6daff86064c8241a346b3bbfaee2ad41593875b15f702866ce16d3b973e9b337fcc45585bdad670dde851aafbd4c0323a8c6bb1faf95d9f652252d280d676b02a34f41d055bce2f7c39bd2607f9991d04ae448f4e7f2316cd27dcb8625be811cb2e96b7ae9b478186469ee1167b415aa13b142bb93c23f02ff6387a056c39a9908f2cef4cafaa469ea964ee9aba8ca96e8587dfe90745d80f68ff56418a7f7c63166d0c0909c61b333cdf70aaab60ee6c2a3999318b655b2b61a07bbc28ab614506a2be83c4ea281b9b8879aae3125f121eb17dbf9540681180faefa2691312dcf8cb0c02433a7dc58b2b3cee379e05a713003ecb63d3b1ee767194689f196efc43c9a4365030ebe992d035e0ce23fc87f5766f0c6756845b17b71a378fd73ddc9d16c2cee7b4e497e1f29aaceef840e8f17e5bb79a75d96cd74c49f606c0e0aa192bfa7959b95b9dc55d136b46e30c2babdafc5d8a156f0965447860d6b753718dfc3728d592e858b3789a8f6a3421f98973246e36316b539b5ce3557f69ada699b6997f51a32c5280691ecfe59ae4dbe0a2c29695e21cc5fa974aa6c5b9748180a99c192177ee344d17310071714edcec7360d68c9f50720d0c1ced43b2e4274bbf360db1a7d4f54633464f89b02fa970ce1c141ae06859f355652fe50f1a5efb51125c4c234cd797571f51c5a7093682e0a24f9a43fca95f6fc8936a0e50f1a400a3adb1bcdb25d336646e3529afd66238d1acc298dbf9a624778ff517bb8e0554574e25bbffe4356376d8a072ec629f4b29801459107b2e5589310aa9337eb3fd5da8d531099e66dcb749630ddf11e5073a2d92f94af51d340f9e2d7c63fbc10f6a5802d84f548132754590615ec1d12ce6cfe0730f5f4591125e4ffed0e941b291d6a8741e34f4f72adf8012f6e2f1d967864acaa44308af1cfdad311e6009c1edc3520658361c9e9e0bfac0bd66c9e1f38dc0a19259d8d451ce50c773ce3de997f17e7f5a41e84bb56a1b4b7f0931a7bbb515eb5292dde549d7303e546c7cf6a0c448c6008b84151a10a4ae427a57052742dc9bda6a84b6eca4bb2b7ccf6827902b9cf98805ecebd48312d0df35fe4417258f8b4302785564fb04e2be6a173b5183b0e0b641f939c8885010af0d64a289444baa70e33d530d415cdd7f688af92171b93cd0177ae41cc0db1b1e5373930870d4458071c9c2c22070367bf4b31d27210c3b87c56bf3c49ff91086f6f7f202df292d0a103f02234208b4e1cf400c6ea930891d8433666c96cc18dfb00456d8508aad617c6374bf2a9f1abeedee8b2a8e67297003592305e3c4757e3dfa374f6428d7e51300d4165fa1cfc8ee3640304b7c6797f2bb86bcdb9fbcb51824b4b0a9df5ca74e164b5106f8d42b70e09da9779631ea8317dcf42db9142447df18e3d2b6b179687235aa6ddd021f99152dbc731af6ce2cd000e8fa722dbd04a0fb28975ca262ab5a111564b09af10b50c66b788bd70192d45908537617ba10a9af693d6b00014ba84bdb55674067108508e7b3452d75c4e0b1be52eeb4fe800e531986bf24032c6b8b148c667c51b9a70714ed74591281ac916951f1b28d94dc336aa640f2710fc038fdb5ed1931257259f174108d6095456f528b7f872442166a95369feade1abcf309fd891bd05c57164e39ab1674f3ab0299ea31668865d40235c75916d7697b941e039624e69f25e4cc325fb4aae8b9abcb998f0b6a0700e547dfbdc901827024cbedcafcda27eeb97a5f69d2dca741f2cf6d4e2963b0ea50f5995ce0fe6a1faa46b3badf45f8807b47248b35fd346e958d18d58e230e2ecde554030e4d409176a71eaa3e03bcb472f86cd20f246c07ca9347db3efa903c311debc5a0ba9f044c71c86b5c0a87e29de6b6ebcf14a9df4cf38fe27c713c7a63f214f8b75d2399b058ee2af7a9e84fb9edeb5b4c095d382da350e3a55e4e9695c001a24a4ba9cb8f81948425e513a4244d30c1d2602383a3481c40f0a8372a54bc869c8bc61ed3a7898c15c47a3d445eb61d135f7618dc03cde610f08b95d2010af76c3b3609c6e30c693b8856027229c3b0148e96a9e8901081f5276fd0346b36bcddbcb7fdeffcd84db5f6e7834028758560b88308cf232152d514766449b0816a4b918ee6434d950e184ccadee592a680d0398e50a4ff8a9f891225493fd423962d6b199b825df3ada8c51fbe8229f324954aeec9c37a73e269676a0fdec071201f1668f5f12a758fd641a921d802d0c4bff3efe22617f2386947709db78fe0e44e8df4d095169ed432d1d0054e2c0b4302c0cecb480968577e11bfaf0fb11b542b3ade3360183132d86dc5ccf71efe92f720ebd10842db80b3468e8be5db5f37ffb73cdd5623badaa643a97dd7ffb4cf760133f0b9a046c45df7b726881a35a6d4ceb4ed16324d6d78c4c9139e9626e25f39887db0f5469b9b27141d98b8da7184f689cf924b7a954c278e39fc9e7ee1757248522fabfb0675c2c04de99ada6e42868647bf77468def0f420efdf62a029df18a95c17c618518253052b4e230514fbf002863c2ae7ec9299dae40ec79047275f8d90c37449539a56df8def159ff32345a44d470e9784a9b01c0564d4421f8384dcc2d997ad4c1b2c500b53b1096866f602823aa46e133f7d855f83c84aa063fd85e0907b41e4dafa221f7cfaaaeeddb35c84bd295f0fa1995822f7e577233f4780726fd4034c06992b73e38c6b0e936a7cc8216e12ec7341871fa51040d3512ff5f3700f8ee6a9c08f1e22a1b42d97345583daedf51556544f116afc7dd855b50a5288e4faaef73681be8d6e10adf43e3926f097f56b58402b7d67fe6b974ec32ef1e5541fd141a4612cf0ecfc403cf1a4063d2af20f1830ce2ecf50ef309df5add3db85eb8558fbd0f6b0ce9788de56f5c6c21b973d97b2d2b72bf44059f1a5326d3d8864c0c5b2d09a1b748132b9eb4ad98a73219fe2296feaf34d2377a413d0acf2253b306ddc95af9162cff12d38651a444bf7501b1678eb2b3925d9dd80d2aee92a75faa8cc834bf14ea1459ff5aa944b4c1206cac2d989e4b0be61b2f7d1669f7458303392bcebfd745348fb7a448d2f20af607d631387b916da766e02641e43a0d8d24288fec636ac70a8e113faf3919f7593d8562378cbd16e3117211c8cbbd3e0543f7a0d1f61086dad200c6e188880a8ce034dfb8eaeb9b05f2181f5d3007e643b9bcb4f8fc0b51d59375c07fe4674e91d32eeaadf7ca8143e500ef92cd9ef2928d4bc3245ba5e23f59814452c936a56eb38656c8c787e46437a1e0506ca35a1cca34e2f1c85c7537605fa05cf613b06f12e676bd0dbf3b87ec2c51a9f150d352866890576523069911f7921abb478b37f3cc18e4c17462867a7ad02b21c21111e893ebdb6e7d0311766487f208e7e80596c583e9fdac2a2d29ccf3a048ed1e1f51bfafe935530b1cf2ab6821dfd6cb1aa6b787d8997ece53e3094766b82725628460c9aa1c615ba41e17c2508245bb2fbdbced5b311001cfde794f9e6400a226bca22c19cc2ef93c23279531f4c2099260e10dd2b9222621e33ae8df3ff22f0a862a6b57dfbddd025e1d14a9312e1f97c02e204872ed667bb3322b5f1767045727ce5acc1e30216cb1c39804f44b88842a4c29bd9c78e647be78a6eb3a2e42478376c82d589448a6bfc5f24a53c082da36b931047726850ccb98c1e71f8095ffbb9c441c0705bb8224e9aed7cab9453f890624293cf711efe45e310a9094c75480227a041fa5a821d5ab477eaedf411ad930e3a44a32ea5df2febbebc750260a5571885679f1e440df22532eb6f7c3c1a521e6e15dbb729b612568d1996561c85bc8696cd9a71d02e838711ee47380697005ee3d1947b1f009e3fc89a871a6a32331a908dc483852a7206085eddc0a00e53582af4c899667c775fa6e94e0a7881373760c66f32e5c90154748e97e5644f32ca1ed51d36a98b34b9a72b1d94dbe431eb3a2dd2c351bc5411ffd9a9fa6d7c747b0864e217af664604eb7215f25d27e3b7a9f6af3bdedfacf36330f56ca008227b6380f5e73be4afa339ea11f06d1eaa2a69ca86d78cb586fcc075235db00682dfdff0bbf89a2007078eb532e825b62925071b2180f4943ec2c3ba47a2365d71d1f3fdfcbc78c7a01fb5f18635f3ad46b0d07dd57d73964c12a637cf871f9ed06068e60cd53cbb56049f9bd2623bf83a47c62a637f5f3731814a6dbe8eee660d1d3c61b98489cc00b1684c071e565cd3b7188feaf06b902dd360836b77709bc8d4c528417a2a612f24b810c0eb060e88aaf2a0d8431551578c11fe9d7fbcba11994f68e0ffb109b04187e8ed7ce94a19813b013347b96b861ecf50c75dbbcac39b6e1ffe006942468b4a3c931b5a07a6e5bb9d492dc563f81f49aa7bcb03a9051b6aec5f65228a8acc39b7e473b4ceebe2bf37f5df064a42621fc9c4095fce203c8bf2d31c21501512be847d5758a48e54ba179b91803a2508ae8c034b9271773914322637fe80d60318543aa403704914c3a4113ef96996208571381806f83c8fba5a7e199b7896727403cd32dfd582444a07e287bab52ccf29963c2628f3541dd43e54853f6a0bbdef6773c4f5ec8cf2e4ea5cb8596e61da21f4d58c57a4ca055e521361a5f832b1c2315161860fcdf8be218b1519ebc96dd702f5e37c5ce66540484614c39c6b401780a493ee10ce5745312ec667998fb69fbf8a3ffed95a5458e926a7fb62ad5e58925ed5f6d6cbc800cb083a1f4a3365e91a1830d2ed8dd3e4f196eb76898457dcaff48f339da510196ffabe3689233fcb3849d150b36a6843b295a0dd5030fdd4078c942c596f4e27c47765e500ada061d99690e6603c0b5627e39aa24c0c3c2f2b787e69643e65536549729b6bce5a69ec9a0115e7b39472d1132d7b3e035294ef0b9d0e63e5eae4ab8eb8ff64fdfa734f70c0d02b87f104171db033ec9dc1d0b220b1a8886af87c9110522efd72eda7da300add731c1744725f1863af9fd391de70e731c67123bd486ebe7a3155519c4894f94ec96f310eb93cdc475eb1de36c3ffc2b9664e74e5ea7103040b2708b91f2d5c604c242592fd27671ee254680b4869cbd45f52cfca80a43d49172850b5d9b56f0779c984c1ece4ccbbdeabe88e544dbf5348900991d18477f223f5c70d602712c382a1254600769c255f4cd76bf83048780c6b837cd19ca7d3850a5f0454ca634eaf63ff06da9539c10ed49da532f1f7ded73eda753d9c4084c0a3e38e072a60f109e0292d7e970df787cbe7fad64ef41ea1a994c1b548f26399531ddbf35836e1fdae5412362bb70c17a8c716ec6823a4bdc09ae6cbff511c3d027bd860d2d01d83c28db8584309c0aaf7d0aa3c764552f27d9a1f2a4678c81a39eb40eac418254bb5064f1903634a7855c987a42315cf6547803fc6bab11d195bbd57d474f4738becbc13c65e049f1239da9edb54a9b984fdda737f2060114acc32b20ff495958edddff884ad4dac1c88730ee35b4747f9a5f72e2bce22ddf465da4b382f122a03e6a05643f718394bcc621a9e90154ee121c7f8e916deb52a6da142d42ac525db8b9c8a4d5c3cff78687eb70595b8a83f9425ea7d4d1fdd23ff4f6262990805d79d79cb9e9cff56a7e78ea0d90488a2567786ca8a44222d1bd09724e6c69c9d1a8a48fa6fe66ea2851d066c5af28d7427b2f3dede0074f51cd554db3e5d5f06b2f961361950a68e463bfee18fc13eb90df6e679459a6bc8951273c15a1d24f796cb3654011ea20886acf2d232d3e6d15a27f0df9bb04889b695402d0c45b7ab196f2ec556d6a7e993567f113a627d89604f1155a17c9dce7baf578bc78bcb4cd66883f3b2a15e485a3574a07724762cb94c7d4c1ce7fba4a3984c38e9e2287c8c53dac4fadb73024f17d529b67c428f68ba23f09b8cae213a4fa83db6d26d0adc1878d827a3f1d31f879b4bb162ba1c38005c71eea8a55e69391ba6d447b732cc458d0d3bf54a54029579edd9214460acb5788839fbedd87056d73334af1383ea44521b7a80192018f8fd20ed1e68287871e556a70309d9fb42389e576eda674bb566795e2ce0805fd0ada4f4d3f4d4ad83ecec28cce97b44688bfc7f3ca3a014b913de95e220174fbe253ec1a8a0f67cc62cc83efa577ff72cf6ad23b95fa3ba26b461d55219b6886afd49632ca854238688ba0081b3061c4bc4e587b6746bf759be78b8e5074020366cbfb45c0d9a9f12c0879df948350ac8b6fd1fd6d99421b54a6920423c0ee1101947c29bdce545f63d48e69a0d756619920ccb6564a58821a93c3148d5c0bb85f30f137d4e131c5c7f27604966d4ab84e6eab99b9cdd63fa6f81f0373d220a7589eb6b096530532f87cc7f2762641bd68495ef991d118564b0d6e054b3e6b7958f543e1c0248e9409ba01f41ac0d25911f70bfe6705d611d35131466fac50156e4ffc12a9d2a51a20daa8043853439d02648b2088c71feecd3b2194904d05cc13d5866fd62a806936fc510c1924a65df64f66f361996b5a497fc2aa42cd05aab7cb8cd03ca33905bc4f77ad9b277a9a1df964284f9cb85477c451c9ffccf4f32965d4df653ff4fd0ae32e652aad3ccb3504b8d9bc3f86215d50db77dd769bd80a8ae7d97344c74ba70c2a839cff7ae942be2b149925e217e42ed331a6e4f15912c5e114ae8bfa1633bd1a6583bd70c5f49df0d7098116e9d9be1026cd3e15f33fdbad00f4ecebe245c36ac33b57d5c2d56e22d17dccfd841cc28c993092f8bac95e6936c99d506c8fc605c0cf223023fa32de1bd9cebc08d7a9a57054e2b3c1152f7af6ea2a7d060161129a0971be74a8a8decc68d3da4cb2b8beaabc47c63b1ba7edfbe5e557ba4444c6541b056f898cd8676ae65496b9a2f13d83f81fac67befb13ee293f8a94170be7b5551ad95715510913ae2178c2cf55ed12b7348770b4fb1f87a184f6c28c415518b92acda27d75d66e1cafd67381e0ffa955210cef2509b51e54226488d7adb54a47dcf20eee51dca39e74fa0f3222dd2d5e8132ae51b25b38e7f766408b8198552ff79e25f0c22c872088be03c8a0140ccb5aa64f3391244574c8f9ecb67013029b62ed23822989e2f9f9ea2c9f4647c0cec6ab1edebac09437a46ea8ed7cc701f845b69af352a07191b5b2c5311c83c414d56f50e473a0b4f874ca83d8cbac2095ab9f50dcb7406c61504bc5c53601d7df69c2680fc08d14e30c163f06af5d85690e08e58e2886178ea9612729cc025d2fb030c8d8ae8089a5dd4bbdd49318079b406c87c29a0de9211341506615f2f5a10a9c04f3145b3c5fc303f34ac35dea5b16b725403ab52e864fabcba324dc8d67abbdf8a55b349a763e6e87531cf882c77d978adac4749a81e8be281d38d87ef7f002861fdba55d9af8eefe2bd0f2c2e17851ab4fa48268a1194c770304c7cb28fbe8e28e27c84b9512079a8796256ffdcb7c536f598234f215d06d3fe4b63c8836676bf35e0edfcef966f02b9c8c3d7f1ae9df85a4440a059bb01d6832a6516a7c78b5d971c0fb580ae4e1cf2105e261c30bc4f94b68f7dbc92990433ae2bb630ed2d45c25dcd7c73bda4cc241dae7cf55cee7259e43e0795cc8158fce789cbe511550f9ebeef0e3cd96b8f74eacca1bbf9dd0c02ed38786e6622b884cd96aa152e0c06fb108f7aaf24704dc7d8a129ed494ed9461dd0cf9a5fab8607f8775a9629277b1bec5f08959949f03116f5fc343303af1161e00d5b0bbf5398d649502cdf3d7842d2f1606adf6028d735ffb509d018d58d4f520f8a1324910650f2fecd0f05257b124b8172a5f5d4c99459cd340ed6a4e8c23ccc83fdee005c0dfbff6875e074f51c81c52108b568f0f5fee1787ff852bd1b0952a3845b2583115b1a5414a4dbe13469be58cb33af07d30b5ab69b74fb77d177d4b0b321a9ffc3bf7d2f746938276b58eb00e19954c4c81b5231a6d5038d377f27bf212a4aebb8d9f27f4481aeb8b2b0d280e5de38780f56fd7577116cc91f53d34f5166439ae1903d053b72b9e6ccbcfbec4906b5b233ed5b50d68055d5d679cbc1181759df3d9390d64b8647b4601b5ad3065318de37708cb7655bb4b0a307043f483331aabd63cb97ece323e9bd9c3f8cb3b198a73ce66777dfdcb415b9ed8baef405b3a99b966e2ce03f57eb87c7238ad3242c6290d02845bfdb10f6f67895e7e4724bafae599d2eef5b632ad399fba01a4726fcedecd8ed898ccc51ba1e123d732a7280ce412179b0a0fb56ec7ae4a296a864b2067f7ec15d1dd36c25a21033b5a0d2799cb03b29bba2cce7ddac30357a84e1153fe10ada25e2d74248dfec7aa9d89d814dcb87030a4ffaf46ad197281f5e11a4205f344854c1b7c48fa2c97f34d37726f042850900f7072c658a42f87c14feac681463a6ccd341db95459b735947d619c6084790260446c95f9844f122a53f80a8ba9bd211edabb4bcdef4922efcecb47498d328284bccd58e5ae39a673631eb1f8af1e5219bd42b0fc6e4bead99cffe8d1a29d5043a1fe0fd18d5816e0725907defdcd4011071709aa9ba548928cdcb40398f48852143ef9700a702c9f6b5d39369df559bc08f92aa1b6d16637d9da4323c82f9958044163ff8516d1c03a6364c1eb30a10140d4760c4ca378691b19043e69bee546ad434a23712afbd91839546f7c51d21129b1a8b307e17ac8f17f8a2c2d1fbf7de5fd08f818607b5ec8ba11939ad155c9b71d8de0332f764961c1a7f1d588253942fd59c3ee8bc168a74a04b11edda1ad103ab30cb41f107f19217e66c2e5d966399cc4add1a93a086421b16d8f3f9deeb97877e3cc093a5defa0418bb4301d07a2b71a17a653585adb958da35a9b221eeb537e901bf1f8d4ea148142116092e6fe5ea2b717565f5a6ca31533b998a340e75b59f41648f59d8c5aa20440403454008c91aae2ff70f295b4f54f4088ddeaf1ab0af0a81c8ec04ec8782e0a4203b191d970f27b82fe301ebb21489b97d97d73671f6f036dccd3be3d17178a0fbab50fb4a275abc947d0df1ffa7f6b40c204a6be77053e2af810962b8caeda417f21662ce95a71dd0b3d5dc7ec865e098dbad7978bd13d3d49581d3904150097193ca108db28a28ce3e4e29792007343b46c8ee4db0d71440438aa2355a54e5243b5cdb1ecbb1fb781e7ad84428022ed4737e62ccda2d16fd8db845663895f340219e982ef0c83e6005b57ecf78d5ba1d1fd901f2d7c22c407dd15e6bcc9e6213cbc41032bad6158cf792bc88eccbd481024a3eeeafd64bce9965b664ba573feefbce034da1b00e6053d32994ba87ea4d72fffacc5f2e4e986029447cdb31bccb6bc7acc121c4198569e3a943b4fcf4ceaf7b028bd012499dc670e65d894e1152765f29bf40140216dd58065852fffc183640584e0fa182853324f205da6e1d688ce8dc82c90acd5427d6959dbce8f05a9bdbb22e7d349291e65cf58df566740a65a01c861b2f85ad3c9c3738b0e31e53e02db4040590fbc59657e67d45353bd2af702ecafed24b8f62a91e4eb5f7a2fd26385f66b678f307508af514a6211274e984678bd3f19aef9660a2390eaf8f08c68cb2a0bc923adb6783ffb351e2ec3795b6112428816346ef9d243e8b940bae90e2983f12789539897bc3b8cb35467ff50575bfd609effbeb236013b7ef6b92343622113879d7e189d684f0c55e3d51877f29f9e29c7ae04d9bdecc9bb0bcafd12e38b866b23ad8d5b537e62268d153aee365e81fbeeb788850ebcdbe192eb4457c89dace75408f0c95174f594557d1a2778b584fb9f456cf784fd9d5a24555cf05d1858cf376a65763632615da9e3226819deeaffdbeafebd1caa5058eb4f2b81113db378fd63af4d13d975a5001462f353e48511b0d67916a248fcb1d6e076bde1e29e4d50c80d14950e8b8969e8dd5bcec32ab94269ac95e2910382813d2f9532891855a7513635f1c2a0bca330c4f955e85318024e4712aae2a0c84c65a925f987b1b9c2c18ed236c9761853b0799ff5953d5c87967d43e1b3fbb077018ea4f6e21260db6a0423e7d605e794555604ddf104a24ff9c0ed031b1d90159996d0aa68c986b80ede79844fa3a9630d1b28c8883f8e17e2222e0f60d33f9dc9fdefeae5a59f92629fcc8166a90fb62aba3ced6395441791596a1b2f06973aef5b3f533fe25f389ae9776808cf61b6e9991f5190e1b1ec29730af46e489a2250c07b50dd09fc73c33601ac9572c110f6dc8e6198e02cbb5c509a0ba4fbcf8bc687940b69d3078c1f2540c98dab7a019aac2ca841fd334181faddf619894f3aca055db653b11f23dd12d49ac28875896daf48e19e5dac46bb43b87ee66f4f45bab0b38116f4c26e6b117141ff08b7a60e6884763ea23922a201947b064f2fbd4b1696797b2fbe7ae8923e2eb1d91607f152aa8370f449fe8d9204893551692039632555a5c4afe98d30b65b87ab94852b0f3c4a63c7a2573b90be2cd6bf110a41239693ab7a117a130ae8d75e50277152d0fb9bca33d1d7e04b37bfe6416213097caf1ca3e8341ff7487f2377cc00becce1d5496fa3266fa2e537826e2297cb146638be4d9960a8be75b26447926e8034d70c9f9ea487dea031568df37334ebb6cc611130e2cbb2f14d90ba87925c09f8aeb61ef01c9af0f6b0a9511dade66bb4eb2cc95716e99755e2c1879191c6d0c67dfcdbb389c05944e43e926c20a2a93448f6ef423a63dd9652ebd08b206cdf96240e250f6df22f53203f7cdc92837ddfdb6de9ed3c1cb0a38908c19a45a381a917c834ec1e3eba2ec80931e964280b3339f406b6bb1bf878140c3aa803b72bcd75f3c0bb6feb16ec7a81c22699966d92fa79d33131fcd62603ca0676a52546c4d635cd89f76a7d57509c5d0dcfe052d9d4087770d35dd4bb953a196d9f50318a41683d1debeaee723f10fc220cb2d4c6636e957ee5771a82f7b7eb7cb8f093d596df1be24abd24c6a30841202457d95ea3e48225292095ab19c052d8f93144cbe3f36f1d46ff4243fd55701decd799dda358fe0fa58bf22da59e3af65e93f3b7303f1c225f6fd1e39b68ad9de826893024fd978f71dd2db4cb226a660926ff6206f8b04cba25e0da7532097cf1b0b777d71b8cc0b0cd729daea43fc489fa7dcadb43195c7a38fac32e02508149781e949c98ad1c8b79dc6cf39632e6d5a0552cac66e8e7cc61176c9456910d23172c0f646ba8a394d4025c67302c9cc71bbba8ba1fcde886854c8e9644584c572a3657fed47dab18eeee34ba859ed808b0a646c2fb83c05b21db3c0fec91016cd34d84ebe97173aff395781c7ff7343e57429b73bc7c7d0fe0af857509500a5843b341155b92a8e7881764c1bbe40fc4fabc037dfce5ecc8eebf21a828f5a80f3f3fc2b0a81eb75cdc91243ec02f427de5486a7c6554f5f3e3cb4e12b60076416388ece6910bac1fdbe4e50b02618d62954194e773dc52874fc55191272feb3d96303b04615bde0fb89c064e97c8dd8752b003af16dc92e92dfd2054d4eaead81d6e01eb085acc30b947b85c8b7a9416d3f88d5fd7125b2335e430cd36eb445ed5c16aaf381eb3a2ee5d00826179e978ebb3f39bcaaee1ba6d22ca4cd20ff38786f4e50e374aefb5a84eafdea645a1cbeac6aaa1ff2a029f1ce4193458b3390034d929573eda600c4882cf34bec3eb30ca622b77852f7d12e18b8d15cf1e109da0027baa951780d51a3c6f847c05a5e56071a3ef62134dce4b51cacb03675a1e76022387dc5c598839eb5daf6c47a49d839685f2781f00dba7cd66209f60483b1218d9dba88654aa39c3269c25fd6c7d0133530f4f8f266484c49917326f762ff9fab2e6b9174ed91f0b77097e3b3696e848f12b567a0436214b4f9d908819b90b81b8c919eb098dfbc90d4089a431a65387a61d8c302e808f6b9579db6128c5531eddd7085b99a9b937927afbb315baca204ca0720f78ca1b5e4594be67b2409cd78334b647c3fa3fcee0571517fb530282b5b9ef80918cf08ecef5283008bbe7f5c47a4ef587936cd3f1dd9607b1fb0031f3c8bee7f70c9da8d753ffd60278dbf48bdc24e3422187358128382b65cfc73b56bc6c154a3193a05cb7d0e19edba468d5079095405f76faed719d0d0049503226ac663825a7ad255d7c1556a3ff457cb5d521a2e964c5dabbc043cd14ae81b5324645db5bf30c1dd8933d22ad271e97690d683113ead0febd1bd6e9235d65ac10eeab7919e7158ff44cec24ad63492fc11471ff18a4efc88f117989d5ac3a217550089821a9bf694ae3fa2ce289d85aa17629f63dc2d953be0ec213469b727792ef7dfedfb5eea2464f7f5f3210427c3723919277f5af7c3b6a74b2000b4f2f1b4c9d6c05d33c9694424867a23a8e5a833772b39eb5537ed1108392575ee2355a679b50a75c4afb6ee064e150723e1d1b7481991ec7d6a5e9c69ad6f8e48731975514b98cf3b0a8925e97a084eaecb0e74a8e9ee86925331ef544408c5d0bcfe7c274365f4205a3f50aa92470fe8500ce3e8cca7ec3b9cb874c4d86997ce02e8176e833445ce4338c4e692ac9446888bcedcd3a8beb1c5d57abc50f987dbff91987bf866b1be5e033c46165dfbef4895065893789c425bbd2c13a35b4b24017d213a195e546110356f7ef81ddda8400dbf1402fb16209143891b1aa0164cddb0c12480d0f21b733ba26c1e27f6309cd7798e72f7e034acea76dc4a99df7123a07a057d423956f8913b193bfe3cd60fffd2678b7c14d7e5b54cd67d8b438f75e090662bb58e11b00d3b05a3ead869c6a113ad3b986c9f0b9bd4528eff32634da91ea1b00d64f8398ce4e162de344f98cf588bc6408fccc1c37b847cad235e5347ac449970146309edd0bc2cfcdf50b2845456062b37712904d8be8ce0279063041362a2cbb15c528652efc2bdccf3631d5419f11220fbc5fab7e87bfc702737e8e78c9d8384b10347d63a2e5305852dc7796b9bbc7311fd03783f589eb452e73b17f9d7f354b6ad5665085533c91efe4ed606f63498dde3a06f1da601a1042b1d1c608a76ea7f78917b5f8de783ff131340550fc838075190bc037d944aa9ff619993d2527e123e4179bb2c3827e6e4acc7f17a84e27eb73360cb119cd652b518f94c38d9129db7e52c2f9468ff0486ec0380cedb9378e6d934e0c99ae52e2ef9fc6489e50ba170528c958dbaf0352cc2f7cef08352a3adcb4367d455e52bd83f349e8759826f24c3dc0ed6ac7f8404bb0af5da140de87f74c4c859f218c305eacaa78f8c9fdd14ede23083ea294659d942586eae0905370ceda9a9cb4d1666a0dbbd8c0ad79bf4a735432a5eff1b5d5a7610eb7f4cc624d9f843cd0263456b18ab714f10593c935d5bbedc6489a8d8a0339b4bafff0f49d9440359dc28dd8612de0948ffb847ed91154c4dcd848a32d58077774c3aad2ecf3c222d83421f91356a1cbc441dff3e141e0bc90f404340ea881e4ea123993cdfee22eae9cb3b6ffbcee9097bea444cf0b85a7080597aed33c68a84f7ad691f6484a0344bc7e745381356b4bfa537e2da0852d8508cd687cb8f094ec884ea408ac5e47ce0cd2926027244b01176e9fa1812481a014b713e109fcc9573682c7250ac0d8fabc8dd55ce5ef4326b39a87c8c32cd837b833a1aa36268a931f809ab1a2113dac0595bc99c0e1b01e43ab5e7d1de72497d6b91d36cfd491fbcaf752c18083ab16a907bd7dab9eb5d13d738c0da34cdd8bffb1d4c98414951b0991986d35829d2053279db0a74ba87ac748040df2e82777305f7e42fe148b8daae9ce1bfcba47f073ddeb31c6f8f9ac53ac7e5bb7f0baab3df90a3dd239ff06c6b7da13afae97bb504892e6963396d6c49eff81054f826310455a8ce43cb5e402b3289f2d4cfe8ac6f26e16db50d26cbf5555180c4f4922f3934b25a4499029dab44c1c2e7703b6ddc075c05c8bd823c08fd7619458aa7041e350f4937636ad5bf3699759978bb98d61465c19ce99ecc1cc37a3f239ece8f8442eef66aa9ab107beb59f2edc414106fe9c7f3dededc1157725dd4453b85a6c8ec499a44b3bc2cfa1ff43ba71e794877d366bd8d7821671157e3774a179885883f6fa07c0558637d60c51dbd8310e1b3dd0d1c86a5f38574eab3d172e591a8476e2f5d29b0652ddc51a82673a498b20142ccbe417db9d507180a83dcd0ebd4695ef001a159429a491071e1c19c07cf3f3dc5957237b4fc8724772c2a61985ec32ab73c1fe4ee07c76db0e034b843e13ae19b7299962d7c33cee8a12ba8e50c57328f787ef1cdca8f2939e06ece8ee421e46d750582149f0d9e2eebfbcea928ab4ccc35216d78ea8e997cac95b63df1a395152655414ddccb5ccadff7bfba36944705f2b1c8d984613c2baca1ec42c9549e9da30171849caf6a2e4ebb56378e2896a4e90cb6e2fec04ea05e31c871011ef44cb50b3be928e7c2405036243a6f4c265090c44d9b22c3586b9fc84b776f98aad6144a36a8525f971cb19859a7e5538575429fc0b49ccd6b2473db23469f5ea61c320c2929f572badf415f28b1cd70b45b00dcc2c224eb3699ae1c3d88837a0151eede1610e24e8c315a74d848957ba035fbdbc7ae7df0858fbd68cb3fd5b8a0c7cb89cbd7823a805875590711f86206ea6b2d6f7d0f3bae0b5bdedf3a24dd0fe673e92abf97e877d57f6cd0083926a581fe24d67cc63ec5bf76103a9d2bc98cc5754d47539e26054b74c0a0d837332be99c3eec2ba889bf407815c992ef1d8f2965c76733173a3d68a047fe0d3b31b1718259ffd52613a87f6d9cb901b3e2e88cbedb0c952b6c857e643315c735d178dc6a20f596e84325129f116df2d285fa72600ff00c8f44b775cad186d8b7fc1dce5f0ad9576acae3a85ffe6fcc5424e908030f931b4ca44c1d4cb6989cf8e8a818cade7ec9590f9714d15b1a4884d70c5251e14413d4a1cedff9f71f7e056bdcef47218490cdd19928a691f0decfb1cc7854c56173a863a6b88920942d4b73259ea0c73f8fa4e0571de0a419bfd86945124753379d9826b8bcab6cc183da2c3b895ec584be9adac15e011ed6cb9a0e736b02f8d432cbd89a99d067721191b80c2a003545bb25f81432d66569e3d0e6cfc279c4a978b989bf610c2fafc71257d64b5ce2ad5632cc16de62a7be79c5c9091ae43238c75d97ded29521431d5e2ca63bc480f29205eca539a58459063648015b213a84005553c73a9ed94485115daabefbe456e840e9bc7dd62d4f0bd49fc63d0b8ed3f2e34e2948c1e8261cc755d90a9e80c305d8f9d1475d0a1e2bbb1d44cf004bdd754268bd697ad54f10e1cdf088155c55b97578f591a734fd6a262f2436c7463a32765aaa74da9854d6debd44abd41430c79187a9d4c7150dd3d1d65450adff282c2c56577d19950988a789b864017e9d0d949116fe7a7dd0529eee318c0e2daec9aa89613ce9791c680ff8b7a34ba4e20d603f01f81c484f4030e1225b0264281e05b63894bce76a278c4d7ab92c1f304599b8775fc0c9be0a8eca72ae14280d539e9cce22aad667320b27b5c37b74381bb6703a3f55d6192f7f436a288a28b1e63502a0e6d461a7862079ec64af8bb50c44aa23878d6539db38e40d88240dc6aec75119357e22c09117e9cb828bd90898559635a5a92ea3e6fc2342200aded2de23a047b9d1e0c7da67c015b26cf772df6527485c27a1031820fc771fc4d6ba983e090ba1c0b84c1db6d8f46087f70d0c1e41c02c45e8a38fcc2943ada8b096a4aa8ee00512469aef426055207983898aaa6874a15558aef318d7b82194001c0ea80f43b924483bbf60fd7841e467d9a2632298dee2085bbb95af00593386ea94f8b8c98351708eea0d52bd83e197a1e6c5ac15699b39f8463ad5c2846594563e444bd5d60b2d46274054e0f04ded0ec9645faa84f7b072a948dfdb26f6937c5fe174bc85dfe833592483dd173b4bb3f8613c1b8f5f4e6565043612ee18b338d4709f3d528e43f4ba65cd0bf2ef4f2fecae6d88df4bd8de9ca0e76dcba71b71cfdfd7f8296825d6696d214b95eab0ca162eb0913516e249b1a83874e7d52532ff1a3180463cb94d8efb41262ba49c795ae659a8faa4592a4499dc55dbe18f446f7bcee152597d27727f23f697a3deb4ef0b701bf01f3a249fbe3b8f8714893dc217235531b2aa4aa73c520daf3ec07486346bff51ebf61a8b61e80e8b72b5f35f438abc3b1698913c5e7d1f0ccd5f1a1dbc2a3c8f000a6bf039927dcdf5586ed9d217a6392805eebe6237202abe30b424e6a985f429b851c44dca16740133cd175b1f5da5dfe008a05fac833fcb63d6a5008ed3d6d53f32032eb76f85b21c5f5f6596e9ae3b69f5b2930a1c14771227551f5d9cc748ceaaae703bdf8cfdb3fe7316e001cc5e0bde335546aa567504a23bb4710d47f446243c5bb5251a78330cd53ff64df170909156ef94f327ab24d70726b1ba291e2a1dd78c61a95e529e32bb7be88ec7bef36c9a4193f57f7a87bc0f8b9b17b63263d1628595436a851163065e1dc8cb625810a8229d22d1d1f0804f50f4134c764585d2a0def12520a1525cb7a8eac34c05cc705170980a6c69eaf08e9a2789ac7dcd673dbea677b36ddfee9634011d7a0597a335fba7fb19c9e961bedd88f9e96f7425b3ff6a31df24fe168561538959d1e7e8a33ea0cf42aa6d713b0d1c7b3f4e969bc3fee47561766fc504c72ad80ea8688fecdc4be7f6317bb2265a4d1edaf0e961a87317860fd5685901bc45770be458bc323f6aa689742e131ecc0061d25703738d1af8dd6a2560c702718f72ca83f6b6da134274d0d95b26f144f7e83ebf761ddf50b7588196e88a77ff9dc45437c739a496fa0fd9169c55154a8314a1a33c585ad75d65660802c8b0c36603b9b487d7241650de56471984f092a551d367a83be043247b350ea90893d065aa52a46b5f69136304820a062cce658b64cdf0c8c8b62dc9095c5994712557c215707523a54b325e05aab64ce7c0d21dc448fcb056bff7f673b7f49dd95e280fbedfb9cae65704d3e4b48d03bf7632bfb1e9131785e1e7c9ff310b85cc54701a7ef06b36a590e703b01752d5d0b5396984323954e1ed8c9efe73e36c05081f43b79cabc210b3f8411d296f5f30e0a2590b8b0e848ef34fe81adaa17908c5f9c238d786d980cd872dff3a2c5260d2b96b5960600f6cc244847e8f62b86f9999099d1a6583eeaf177be4100d9123398e591124a8308db34c225cce6448da1bcf109fd53b8eecac35f85c6967e53adefd7ba012e06c4bd48a9766b25c066d445302c5f0336fe6301e1c73077bf0f605a95ee1ef7b5b0f6aaf9a7779b96484bf19bd6cc475f5d10b3f475c02c466a966a1c064a0b629c99465844876c8acfa6b29f6f60ac6d4f9cd0ee8b3b0b61850460edf83b840387d2cee7eb7a8bed72c8b99265e547f57b7845fa8d60eac7b49db758558bb5e24cd836bcf0b5f817a774645e6299a80c7316a2517b4045eabb51ac35fab5fffcda76ed1aa79b4fb49ce33be8dc351ae734833cca8525786b422dd4d2cec59b0fe49fdbf944b4f1e4a606aa9a23aec84102370df81f5564c7878dd9cb0a4c8dce6ebfe86f72010af2fde32606ae100525ac6e3b6c7f987d8a34a02ec32826f09d91fd02599e561feaac1c348e65ae520a77ce03d8ff33980492115e15d44571e53dbd186c219bd2c0503c471e618a9603972552c3e323f083c2b36520ee830f83febc66d41cba678238f1e3fb9f5b73639bdba20a8e128c8de28da6b3daaae0bffc6a7a5da6259cdac66ebf2a4ce3c5f0e591a1796dc1473266c6c9439095bbdf33b4c2ec6ff386216b6b1531e0f2f2c66fc41de049188a8de5ea8dac9fb214fa41b2943780db444e1c38700a7b43c6543f444fc97ae7105e0301b32f8a9d0672bbe066183d730ca7b6dce15ca875f7cf1f345d01c9d9b10a79f1edf028ebe30251c1d1fbd2eef24ee2971baa75bb585c0df5cf3bb3b87f8fd2682d160dacbdf3efbd1719bce199e539be071ea7a31316b9cf4dddd717a17834150979e5a641aec901fc49833d7ac5211a181cd50145f8b555cc01b27dc5b8d7cf272d6a20249523fc1e06242be9dac35efef082d7217b5fa54808626e1d3b8b97e3506c01b90c6fbdda832241df6fc0d0e0240da9659d4695cd1c6b5e16f141334e2957a02e8dd090d5841ad90f3bccce2d594536fce5ace7db6c73f46e610e9d09336a10dfdaab3ea8686acec6d0617a276249e58bfa510fed39f1e748d1e83cbf020c6f01dd7a8316d3c9ab264baae4b78407ad0ef3b4d81fb0d921352478d17718212b046628a95b9d35cb81abe605bc76d2d1e3f7adac5962ae5eb1ab44fa7787cb2504c865c1855392d9bb7b35fa004e4e886a02abb18b4cf01d7f311b0d3213d01bfc8ccc4880ab661f50b0950fca1c0dd9cb8d2fc27973b6774e6c7a8f2c117fb1924ae2450a90000befd9eded5825af6fec44f3e415cae58695ed9f187c7308be52aafcef9b96de0b08c78167f3c4beb441497c7f8fd5c1f72070901a699e26a71b46a0a5b2f22951d19727ce56303fa12773856405bdc756b57f190747d033e18d97e9e0cd3677e0668f77cc8b3f67c43e84459c74ae38e900288c7e2eae2b03a7432038659aed6dd61a2912e94a9f0b08ad7b360052be679153ed3e0219d7af747e9d72d4d4f1c5a869232e74dc0d9b4997dba3a6d3c5eca2698e99e0243eee69faa703fed45f1e6938e363573456d72cfc4782d838fdabc6a73dae338e416778e7d17dbea9d61a5ac483803c2f12de68769d4ddc136cec15c97854c4c7379fd0dca8a748af4a065dd88fa421ce35f04c91d4ee04a651ea9dbfabde7970190ac6c50b843909fa46fbe0c0673daf2de7247e8af20c756c55036f6fc8f62f8334838ba290ed021f8a6055a7164567cc8b9b6aed18da6d6085e9e55a4c7a9c654779a91de80b5186ffec8f663e9a42bea1ca80a47ac6361e166c860b481b6779ec29a08cc7f99671df63d8c65f2c38fb51a9fff86410d25c31ad2a5697965631ca449b7f5707701fd4126f23c8929d0bb4cf7f0ddb00c18dc4567f22f402b1565a1c8b99b527fff544c244efc8c08f9e36bf86b6c61c65118c70b7a12ffa8514b3fb2eef3edd59d226f3242308ae61b59bdd858d36d8d18a71fb103f908e4b6b65f55692c86d91afbb0747d3cfdef576409d86b888464bdbe3524305f8def6706222ccb7d63cdc234dd88ebcdf9bc6f4cbbbc488b60f44706c89942754e7f6b4ef68b68048ba28e2bce1befaef5b732e0e44ddade8efb0a44bed4e1dcfc9a99ccf8dbad358086b309ef8345b7229e9f7600f60d79d1172a759327aaa15e32f18238c0dc59062267d17da837251d8942892a2b045ef3429a986ce4527942b8823f6a258bca389f0723621cf0447cc4d30306beca7ab6089d9e29d687c36f0800b434da309989821bcc14f2abf63969d57f74ee57680e9b1f285bdbdcfa8da2d9f700e5d5303f9c7749d8c9cf075a390e4825fcbec7e8d9b12324c8e072ae593242c5da3836b8bd3aad76c4abd4dcb85cc7c4396323fb4b305c8b00792b6284907d0f63bf99e1750ff82d67318f23222de8eff713a8cca205e0a0299696b40d0fd5420d72fdfb5674207a4f5e7f08e0ce822505867019a608a870f88487aca4ebbf73cdb575407941e33178b31a3d46df6f6f455680675254f4399c5acc05c1edccc56223abff81f8b60e9ddf5947ee4cb375574e3f41c9c7c90c4d7534e82560245b59a3815f8466840a966afd6d4090f04831a6ed168b72092dc23ed8ae8313133412c27e086a1186a6daf5e760a665827c3e441be808672dd9206d4e6fc9c662603d266045a3d2c2178a1f87c4d7b94d3287be3d51899bdf5300ee1c3985eb2de398dac7f870ba0e2aa96bdebe8b03b779b0d46f5702743ea0422e94e6b445934262066aeb0b7b1ce823509f89136bc6e139b0ff6f95a9a5b28e939f2e2625d6e4caeeb88c20f7519b9c634cc8c389ae6e5617307114e39263695eb620a3c513173ad5c9c32c6befd33bc82122676cb9f07c8429e1d0fa76e370903f91bf543bdb2c1943bb73d9a21be68dcf898c13c0483e7810f16d7683794e6946dae8152daf3577b22b45b4561c9e4bbb89e94a4ab0789c508cb04215394326b7d62cd61d09f3c84afb216b4dfa7b4ac77f6ac76073312c2a19e9dc249aff8cc34b7d0ded362f2574c92d020a47d1028d89e0890e50fc1c6bdd76daa6c400f4d75e201887509476f304c31b5ead2887a465b2bbe852679b3adf11c52937c06fc82fe1a3c63bf8e6a9f3f5141a865340cc315636e4adb7ae9d5d87654dab0e2bbf3b61c57f689ddf6617667a64729c674a5b2aea2e3eb1e907d02f4f3cab22224e7b369e108a18ac29ce3ee5c35514fcf1b37443c12ac361b84053c701d0bd46be17c32c133cfaee5ebd821e77012fb85cdf6b13df3bfb6fa4ea1d74719725cee400005357ad23718a541a0cf902d5571b2980692fb3bd1fd24bdf098ce1158c104e9fc85841582091cfd1784088421ae22052e5cb8028b9c679a2c98a5fe7ba1282e43613bb5513f358006ca5b3f8698cfc9f61fd96de75b2f6de9d3b5bfa0c5d6ce37bb971e7c96a3e9a9e39ed084a48c000308dca090b722266f04415495bf01678aeeb8f1256f9c2bc1713b420ffe2d8cd41e4d62a934ce003512b307c23738340a67d884997f3454ee1c5f9b97d5c97a43c0b41dd676a384a8ce1cec8a7e5ba81b193785a5d3c6b725de6896c7eccfe4b6f8e0fca5937c28921015d3368441b3df001413943c867e7315a7f73ac4442a8eec92732a8e338de75c1f0658ab2919c1dbe736757ec0c0117e80ef6b7cd7f103815cef1524c47a455aeb7326c13f3f8347a0bd80920b10a48a979f3b0357aeb9e877bb9b159e83f475fc1cce17fb0ac27f1e9a6902daaf0eb413a3ec401e2f45a798df4eda3ad9a2b431c9c9430b99f8e1c24b5b78567cea8acb1789491d40fc6f25ca33a5fb243fa221f4a650dcadb761169d6bd0419b9ee4e871943e84f609c3b5f17c1f877d9b70e53a7ff1a31669e73b21c0a1fd8de5368b15ad910a81edaf743ef68495feba0df84b523ba77b632f8702b0414e6a4f897e3e0d5e56b575d064a3ce429d501602df249193b200af63780785091eebfe161abc537d4536692013e98ee0590c2dfb399c19d6fc1c3daf5c4f6b93303e75c4af605b004c0f0ee278d866fd2fc28a8edd860cc0c8be957a7b9e13b6d92fae89d45ecc94beef5d19f0945a657f2ad82328b829699328ff66c184d45da84dc0be1e42a7a4130ddc175a1f9cd592a573047975425c7e80fb0ac02bc7fec6a2fb04b4fb2f3d6e574bd613c82a50bb9404a50b96dc820a6384aacfcba7e664accc944335e5e8fa09929dee307db63fd16da945153a9427a690fc66bb7b84fe83f948320ab3a7104661eeb071206ecc31ee494330c41f6a2b6fd1e1ed952ecda197d4cc2e90ef65cce9cecc4bb0257575bf458db7b65c7bb589f853e5b9cbd3ab6eb1a289e72e481669f983a6c7144a1259eea418b521280a299e39f2cf8464a1172ee5c6f471590992574b57cc07ab58bafc866ca21ddd231244a72d9218ee5de68994c81fdebc6dd3f62c088803f54564f61a8cff7e574b474a4da03b394acb89f1a03a97ad160e9bfd10c9e26e4faa7ee9c2d1f63d21d69e1a1ea8f5f2ea02f4c13399514fd4be091897d36821b5ac9865c1a1b8c7839690339ee521d568979aaba5783ede9294f05c1be3e2f42923f3b5fb2b63a4480a086ff7e7bc8d3681d2d431bdb88094133afc27caeef4be06f874052768592096d30b4588f8d6a6f2f61c369b9180ee8f5591b3491c03f60bc4ec7734c43ba0cd727c28579bf189f99aa58ba0816927b2b6d7beb22c38dba9e5ef8238f7d0339fd3b8783c5dc974f7e44a8e6266ea8d14d5dc75ccb4d37ce3cc312d35230b53a6e9bbe5891dfac7972a13f50b2d91f539a2722576d86b98419c9df68dfe6aaf255eaefd07193f9a2096d457f3bfd9c728f9e1783bfc3de37535befbe4e4104f5c2fff65a6b477f791dc8f7fe773d49f5197de8fd93a1c8910d05318cfa3c278a341696cb707b97dfa5454ff98dca7a379d16e9dfaf042938cef24c3e8c24d730b8d2d1326c416823136212d4144a66471278270a02f883109fed1802604c4118c10d7d3412eef17cd47b727036838be68811636e08091ea11a9402fc5868edbdd52b8187eefea7fdc480ecc4a9da2e1ad4d541247acc3ee1cb80c59524ea49d3c79b99d44847d882f6a2282a2088d3e22aa4ca3d333bbe1371152d368f62deeaa73efa65267404c1e0f359189dc2929c4d1ee06c3e191f0f8f21ab48d65b4cca3eca5e464f42411f3b76deec91024a80b949202d5823d93ef1e7d0ff518a77b0d668a8d194d54d2fab2d4551ac4d9c61edca8bd5e19e4aaf4e2bee1e68a8065e750537345f5bb5564d9be3adb7c7f380534bf69aa524e8dec5d6da203c72c78204f1a8614ae4e41349886503c0e0b493c649776f475752d7458271e5fedeeb42b28ac82252121f66746ca6cf1bb4b927ee532b014ec3cc7ea70f586852008b6044b3236ecce7606dfa7a45a87dcbe215b3fdae68038629eb67ebaf4dcd0e14306bd706a8615197f9e48c9c70d96060544d787023b0b47e2d70f778f1812eef4b254b5d906f8bfce5bdfb75bc706261fa10049cebbca56bc36d4b1e198e0c5b6f76a930a48b7aca20bb20446e70ffd55db62a40eb7526c84a670eb857abfb51711f44877b10196d53f228561eaed2ef82a00e74ed97c3af0f0a44909f8da995f8c185649f4f11453b11283b4f3891452c0c19203164c121e6e86623df35c255e6499e96e747d1315e840a9c8efc01ce3de5826b19540256526263ba0570fb0348b1291eb02683b669867bfda56ba9b46bb4c973d6eeeeab32c974a25bed457fc3363967ce3bd87ed4af974f977f24b11b69640e4c8e00b17ce61a2d571772ad4b032c00bd977930af1bc987d1bd4107845c40d562d5e8969981afa971b56a78745f5391bb10422c8856ec11756d6181eaff436adb632fe16556a89e0198d2093dc7564b700caf6325227ca46c32613a40c3d6da0d5da95068160e1ff9de159600617dd3f461fab4b58c73192031b332b64036ce01b7a7f4f2c816a64068da2c11ef0b1fc191e8e7dd34dae7daef03efd97fde41026203ff5b19462f0e2184ea99a09a100806ed4aaa44774e907e4269e24fa24dd7e3aba04c6c7d0bd23f24845bb60155680099d82cd9fd8e8f1381af06ea20e90358d098d84808222486b705539eafb8ad6a186c2875c8c8ffc2919e8b64b32bfe0494cc1017507dedf6a8ed3e7de6f03c2626095507486b6dcb76e96ca757e66de632c52c82ec9a7f3571502263d1bfae55d6d64d948c8d273c41bb237faf7083d5efcc2a1ded7074857e792de438c0d812e331754998c7cabe66151d67168736545d191ca7b023e185f18beb700ae4e0ac0645f4ac5b622d412046bbdcbb5b7a32677ffc08e7ecd31a3549f2cdcb59b97b146c65efa65103b5c0b8753440961fdaeffb518c26c875e8ad66c406b9166f9f2d74e103e0a77c5ba234275672144a4ee0a2be1f4cf8a94d7f9f6689543ef18b12765b97f1c76d02dbd5c9bfd9fef239c64536e2d01681bc1dca1e5055e93e286a4090bd8f23771205fbf9b02482591795cc0be840fae2a713506fade5e192829f313d3c6c0fed217e8b431b9770b22eb4c673f9005e77e9f02cd83930ffdcc6e0356e2c19d1282458d2b0e264e58b86f19fe9166c3bb97508f3ce7c819bf195b6f4f3cffcf201545f96881a7c6ba51831de8e62045f08466fb74e360abbcbb6a1e795a1ed0665dee1078aee4d374af6d2f639b91f0ed643354201b0f3197d58d6134fdd193594564c31aa545400c2dd4b484555a6c4e0d118da65611e70550f878eb2847b9806fbd80326d57676a2e51985c999048628712949f4c39965cd262da3cfefd8345ed605c27bececa44e1db8ae12d4aabfa4b18204efed3e2d0f83f2f0a92312188085ce3019db98ba2d4df72d058adb0e1d152798a71b5d941b5afcef04b80297258f4e3f773fff9664b0f136876633811e1256d5ef884f4c971859e7027df546beb003d2833c6b2a1f23ad80b633cd31e2031d3d3306a0cb67fe0b05b3ea02421c4deef96a6f911034d014c0028c3cd35e4332fbd29381d6526514b2a96a8a6ef3b967d23b16fb8d362884955a6d56a99d0c472b65eebf45888aeb03ff1d004fd99b9524a6390079d2b11fc88eac83bc48be8e64ad06f5c2e9070c7cd02b39101c2d3cf07848f5b8bae4085adb4620e703f810c85504f67d3bbdd414b10188bee457b7f13b479f9c066f27d2dd11dccccd0ad430ca7c2bf2bf52dd8c405a6e2fcb7024eec63699a0ff0192ff376b9afaca53cfdb5afbb9f62110447942a554e8ff4a844d9c98bda0286a7d54c86bcd62d641ef07ba9b2c158e9fe02d50925d46c03dcd12371e4eefa13b75e0981d59ee59dafff018bba288214140002a8a1b5c935d627233b1e72a22d80c892fe23fc2f91a8f4f104a0b970c0ff68ef0b5a6841fd31b72375d767e9805f27fd2419342b76b5b73c497b5d669a0dff536107fd5cf723e13a0897df95bc8db13ab3b2c854afb0ed8fd73ff31ec719c8bea97bec0b672f5115e18dd5fbc23015f0313c20e4b1a8981cdc39968ecd499d6c8e4dfa114dc081bab0ee0bcd56bda0030a1cc4256080120b0a8abe2b7be1566116795d0fdccfcf1226275cc9c1aa494c65901934aac13fce6e8b16c4c6faedce34897de5a17fe2af702268e2a8407db5801078be52ec7cf9e4e773fb89acfaaf5ab4afefbf297293acecd4a498d55e12a8830414ff45a95c38478c2d20d40c3ac1ee7ed3e80f72c85a6701a57673242d34692dcbae708a8eb057cb326b8adde7a7dfe867e873027d2ba226ff0878d5224f61dac26ae13d93a25adb0bdceaff24c308914d1c4975d0439ebc4998e0dcd9c8fb91c44e7cce21f40e8409e0ccdf3a85bde6afcf01358fa84990892a2dff5b9c3911493c288c7f436b575a1112ac56dbd0a186d0a9f4f51ece9b7996ff16b42e45f843cbce57cb4aa4634cc827a62337482b593f868556eb4031bf149849666a8e5809a0a7885ce8d5ffc61ff347a25471d9fb68c0805bb3de0ad0a6edac5e73011096c65192b55784158a27a225a6aa17253406d360f7aa5a90b93dadcfc9fac82f2a1caf9fc30b147de1fd53d12ac9a0ed221a5edea2407c8648cf08d792ec23ae11026068569da796fb7cd72b8be33c687f072b4c0364cd973d2d591c67c7217fffc1d5f1187bc7a8fd59c8448a7244f0a4660032f8b3fa3adc45d7390e57cb5f3e2db52257ee7085d28900a3bfd12cc930d17948b107f877772670d8e5208e86505e6110bc7dd4166b765eb89c7c86a44ff1a1f0419e1e395f24076cdc5c0aed681101df817de8a894e21ad03e96a5b0e3c45ad027054543be60d7a0a6744fa5ac6d1a34b28ce7da6274204569bfcab30ea453a2f99d7678668b9dbff385dd0b386bb7b163dda7afd39bd6b3838b4fa24eb5988b88be016737c2d6f4b19a7643c4f5cf7f4f7008c219c71ca590eb6e85229c2ba7ed9ef1dccaaa365e9badabd0ca7b1ac07c3a187000fbe39a18901d2368d0250035d9d8169e4b823329c619fd18dab5a7ab806452cf63a6dd155901e4645dcc3c463d41b9d62d902af4cf7dd621dea02588d73f184417a970c5e87583cf020919cd425f0c6c66a135e08de31b5268a5611dd22400aef517de0cb0e711ac0b22f9b770918e35e2cf754c904b2dc45f2b1bbbadefd36ddd17deb4b7be56f20ecc8c0ba120ee36168fd433d217fed578e5d9a84104c5aea37a513ca66d3b3b50a70ba285d92a7f1ee894210b680203a9912bb3c70ffbdfca26300c755776698f42413b089cbb220070b854cf18787c7094ca81526468a441e2560f6c2c8c212c075b51aad14821070e641d9dee88403e7c5845c578c322bbc7fde54301cab43318205090087ffecc901ec020fce86d083bb3a736e9333c630e050ba8ab8c6be5ba054d87b1f6676c34f8573aa589427438e8b896c2c44ab2a33cdf8c02fb618c0e1ba692a7fbfcf600b28d3419e8515717e97bf09214d9348ad81ba345f9ec32802cfb24371887cdf606c0f3254a65fbf6a41f7651f86c98c1989a525e724c17a323feef6c64b79c576c7475ddc6538ce3edfcd6ac82a9851458a51e9601c8786f31a3e781309148d2347e453ac3d0a01e388d9fde710bef74483318eaeee75b7a01476a75bba0c21ebfb71618b68bbda5ea6c76ababa79e985b0c5272f6c1e8b7cd64c4c7eafcaabd9d7fa80c356df1a24cdf6a364eac472ebe55719f11d23ecae7243491b0a130541e43d5855e0d308ba93968752385fb5549247bf3801f76f4d115dc7bbd2f2dd6bd5e3d4e68ed2f2926a4108136526da212bf9e51b2c73a9747e70df01e6113f46b2554dc310a4782107bc4596aa96ab59b4d9a0af0ad8c740d9373f1ad79b65c1a3b0e1b6c5dd18fa5449037c88462700274bc005e01f6c7b9209153c2ff6956c934bea65b53e299433e7a38ca9e09b0a9b50aaa96110a25fd1705bc3e9824f8e3870932512eed58a68965a0c0aa3099bddf6ebacc2f71061617f0f461bae952fe5e9eb5c9edd404653d59ea485cf46fafbf5b4a282ec069c90631b55ec4f8f383b5cdabf75ded7e4bc92752acfd2f2e40cdb72965e73560fa5316f6439e1791c89bebb810650f0f4598e56d1a3888c2e023a8c41e3c2e13a57b98b579259dfb012efa808f24033f5a45e26a07e3ebd2aedee300b525cf4a5f50042547c0ec15e396e056d77a50a7ad4e8bb4c45649ac4b1c098afe4d991623f747f9c01dc1c29752bccef5618c12b2c582bcb35beec39bfbdb2220e7cc86ede403e9d700fd8df15ff4ce823e829eaeb0e7398c32ffcff0f8bcdd2290e3b3304d459e67bcc51e3267b38b2403311fdf79f51ec41f73927ead9595c73e4ab779f3c3fa6a90ea8cfa3da4abc0d7b641deb52ddce8f4620282fb7346d9b8218a6aeabb05b0ec8e56f4e543d31a112fec804ed4909ee8b31f5af09c3d1f10e40b5a0bd74e44e0e86af4c80fbeab8bfa197e9913faa55201048b8fc82e45582c9ae311707657910eb2cb2fd1df9b5eda0842287a22678ef9c6d0b34258eb83cebdc693b718e2ad055ee8c27710a113d3df35c6f2d8e757cf0d6c2b987ccd1abc160ce53803813bc06e5b12a57472295b7fa9a9555989c909b68134244857513bbc93bb760b55efcde4e92b9f86eb361e4ca4a2fb4eb3504ac6ea17279821e8e945b2efd7340bcc24795df7164f2405eb753433de8ce1648df056afa629b80482e3b05c8125f0345b189fc1b7e7715faf735331dc51113f7b5392b738a50d6c45fd2077290cb58244e52e1a1126810e039cddc64815a4716bb6433bbf2fb784f0fb887964031cf851258adf8a317fcf52198ae73b59e5c5d70e30b421b7da96a79f5be177085d21d390f5ceb5ffd559a22c31257e6a03c0265c9304aa59a2da3599cd7c9c4b5e69416f93b310622d0f582908d5af725aa26a7e37aeaa90c1d110471ca32e4faf45c3fb2ab75fddb959954ac50e2dee875edb6790c68660a5c41d5a03926552b03867206ce3340426d95ce1126bd564e3391038ee6fbc1b6ab1ac9264c81033b267a232ecbba8d8b0de3655d22a5896bf3545ebe6f161979be66ed3a5d2ed3d497bb6bd3cb4bbf53ef1cc838d3897d37ab187e63a239e9190c6801de2534e6f48fdb49848927a47b90e0e3aa0dc639da1125d5d90fa7669bd8a4114b6738d9181df1faf4732ef79a85009782ff45fcd15b0496c4b02d88b4435a1bdec41e6313f900e490087235eb1ea2045a12ff9803d6709dbf97872c080751c1180bad87f87f72ecd72f74f3f04c60cca2fc615f8d2d5ccdebc423b942bf42682fc67ed295fb021085d5004eb85864c262abd7b664686f50623c93c4c1874132567e1eba40e630e27f6f581ddcad38c92d56a411ee075dcae35db80fa8a8d19c3ad702d2c0c802063931e5852d561f8e0080c047395289adf620b9791b52b6734d57250934ed326997f966ab2c4bb4d65ad7e88a2d0f483026a2929e6f61becb80bc89e1ddee6d2968ae28b9a8eb59c0508ba38a8bfbcd2267826bf90587bbdca090b7b041224693f6d0166b4c02834681b7bb1b58b8b146b005ca50b8231b07fea37a49ccb1da9ebfd6874cad262359b764097a4fa47f4981eb082ff3cf5e9e78dc17977a9e444b9f232107d07fbfe2ff2cc1a3e369c7e76a5ff0841dbff2ab1e69084a47474922049198389dcf591c0c8ff982e89479a40e4e918af9e92523a39d8cac4376298372c4429ce15604b48c2f222b071b4e16f85c9763c8b15425458ddaf940f02494bda77d0596ae076e5cceb149cddc84f7a5a95fc6cffd59f2a30b77f56917c5d93d3a911ff8552f4f4f7093304fb03d2d9e0c2d8ed5a5963614756c8c95e5ea0e29da8011c44d359571c22506558e746ef081a2c5dd30b751e01fea027df566fd5712468c4ca55599d521d538e1f3d1dd5095797306ee993fc4c3c784a34b73195fb0c0f615f1c4334016490ec2773aa8db9c0cd49e0bc60553296f919142799b3c2b2d2d2ce24891e0f643326b1dc71d7f44e794e61ae500445ec2fba5eea515fea20a8d1845424475e94c40a6c390c8dc05e9fc273d29d5398be4c52d741bee911bbe56f016776697d1012ba6bb4cf0f573c8f5510d31e7ad80aa02eccad95c07acbd11ac139a0007eba1daf0d88a008b614125a2df4083aae16c66e8da11da5b93680abbb59688b37902def63369a56c783b0cf64a6774235e8a71f243eb6a203fef08db2c53ca154867d83053f8254d9c3de11a511b643b0b60e0fc86b136000db158a0092f1bdb460c14619f13ce2ebaf20e67566ab19cfaf1e6c60646387e72bc58dcac7115ba86e25f586f722ded694465f18016021c8081b81322902bab4f3266883c09e606a9778c8b266cafca67f32a1155126b4b7e01b95e4cdd580eae64e23dbaa56d924267584b251daedf72c7a7464c710c88ed4b3ed6889ad3285fcf731a4bc033fbe4c45b9cf03ae396e5d5e6c82124864b6dc49557656946d324973f2048ef496c8028792b629cc7ee0d589f3d12dbe4e77076bc8135065e9a203f58e74a1e30d782995e7bfcffb052dd4ae26d1840fa109ab0166b4c6c52a7101179204aa3da238fa9dd64ae5c8072061df93573f9a24ed1282de21c81cf0baeab10387be4239527b5c16f2c3d94f06257839110d75b06d660b2d76e5ff3032d85fdfd9681b00b1a95abfa16393056cb4b2d94c19ecadec0667b87dc097be57c47039b0e509167278bd432236fe3e6d84ab3bb83b0c28b3caa761944a9c4bc172a029e5b110d4f29818be1ab2c3c1bd951beb6a1cb9ca6f4d7ada70a102ca502eadf6c61b6f3d7609f9da494cd29f489dadfd3e21b76d2dc56bfeb0db76dfded4dea92387275e4a5443ab5c78cddb50320fd999f81fb88b074b55f467495dd412c212d57ab77439e8e208f45b9d26e89ae09d0b91ebf1e994d7c0cafa6539a4379b02bab0131364b38e3f06bf49673cccec26a3a878eb919cc17ee125ef6a98856385fca6b19b7f403b86958ac1256a945f1547b175c76dd081e78d98f3be8f966e96b6a252ac5fcb4224f676b0e2b2a66a1423d00af3152ba500a16135a9739b89824ceec90de82270dc084a5ea041d07a0fe9787221ee64816943379a3f7373a4a97915fb6d2db242a7928607323f3b6639cf8a42e0367b7acd0a44b874f46c0836ff8456a0c923bed7e1cda3ca8fc74c4b6d755b0ddccb8cb0977d453e6ca64fd87fc48a081e79d28db8d8883e120847ecbbc6fcddcd6cb998a8c7d8d96b0fc201d17d507cb23f11f7ee0d05ae26ecd988c2a4ac850e6909a45edd086eb88e57f16effb585fe85f76b15c3308f796f3031973adbf2faee6312b880de7b5d9f723f2bf32e06a1960d68cce846308c4286833d305a6c7e02cb1fef824cfaca2980e30bce10a4ebca4ce525efc6fa7cce86ea89284243b2bb468b626f2ebadc7e25694498e1004490614c38ae03b1a29144974a67d1374e6dc05ec2a8e2306a67c5f0e469753d39854d903fc72ef66af489b485a49a9600464e0dce7d8251cddae59baa8570146a4bd1d37c921ee9643fa16ebf5eac1ac9179cdfef0cd532d325965b67258811117ab2fb1b9b91b6f1cba54b12ddff22f7bf3713dca424b0ea01e87d6c421fb000da18193108e76bbb82883532efffba3bdf6c993032b42bfa7e63f39de9b86f695baa047dd0278afe7e7aba54530ee934ee4b90544b1b346ce5585502c7838aa07e3202536fdc468c8b1ffb319b64290b94c64164aa850fe0afa513ffb42fa1561f08526ec571a6786ab30a463745ac45e811a5630e479dcdef169b423ebe62b59f78fc6817901864f6bd632fc057053f4e1d2b789e15f66f4505bf37e31adf9ecfe9c5566036aacad9209953ba3ba0232655a84f0da62b82969db6c872ec8d47d77c09729e6955b0f29a0a80dedbd3e393b6b750631443a79661f1a08ee3a3442bdec4c2175d5009eb20d7e5afafa8149fb6ea5f7c2cbcddc37e17bcb8af5c0da549fb64c12ee85f16670f517e9aa259219b67ace769ea7a00c3793af4bc42923bf2978aa5d8cc35d370fa55d07b1d14709628fdf6981396408fca1f2974b07629009c2fd04e400e2c9a84bc68cdc00456776c9bde1a816bc8ccd1d48c2915c7845f294239195f6d4467493ef0cb6106a29a1c519f43da4abbec66ea00851a02317473d7d8797badc0959493291dbd9e0e10c9c2efadd99367aa7e542cb8a65dfca24afbb1bcb922a8e7b2a99d35301bf73f34d5c70114bf353dbbc6fcf0f2d0e0c1c9a7b77fe270134a5be19a996f19afa8776a2699b3244c648a364b5c2b22989f0319fbe79d64a307d9ddda67592e7e7074bc38cf1bc1a5b439cfad8dce977a7c9fe4857696008cbbadc291012f2b0bb55c4bd233b014cc983f847cf29f0a671180efbb5a363ca96518b4c464e0162af875edef74943434c9d4743463bfd78c327a4dbe22e71c25f3670543642ea7d0770534b691eccd9ea75ada1f12c5990dddc5fdd8ef7beefcb275507bdab23584ce8bfaca1dd485695a29a75f3a7035febb5a913768ff1d2530071f2456abad554d1da39ece586000d81e1aa5899ffb63f52da6906c3a6e7d2bf54b8e2f44178d2ee3c9493e1087d210eb90777264dfd55042a2b0644aa6685d03e424e9b12903606a29faa3619e4e2975a7fa1c2acd6f2789db9c322d252bf2e70ebc74c14a633c8ce204355b1e02368d825b40a4a61fd64c5fd83adde404beb2185d1da4ee836031fc2d28ffc5ee05384796235aa0ac25c27868cb9df44fde0af06a00d526ea0cebaa41f6bc0c00b165b70ffa1a7ae31bab842f1ad783a6cdfb59b5f677be1e64bd26c70084fdd6c34cd2eba40244f24f41fd07aeabd3af28acef46b4a7b3fcd8d1e1b8194d3f67b94df8f58318f9a9bc3be6322fc68c24e47cb0054f24f3c9d75be92867a83aa518ef1fa7057211c4cdcb675efac8d9d7daf3d33d985ee29601406a0b4aea44963ef4b9c5aad5ad1e050f9fc731220f376702e533a698c95f81dbf64a44e52f846b179a875cc02197018c43d47d7ed18716951108e71798c278642325bb209e27178e143d2c5fc7e6f9e54663cba353ccff49ac3adbf3aa0eda74cec6a3e135f7d44bf507c1b10fdbafa208d047cf3057f72705574479fcbf19d9638dfdf2d70addce64e15b0b705a4d3053b41fea8c3183e9fa892b557d5f2bc0d2d21f60df7537ed92bd8c2f83941176fbd55834df63d10d42b14db9dc535383e92f9f8fa59860f2cea87224e3abd715ffb96bb91d78ab60c6ee8b52442e1be28dfc181c44dfbf6a37085e00822204829a11a871b59a611547a898fd9ae0e8e7e1e6ee5325f55712ea9ef0b665e7a309f83cb88bdd8023680a60c1122d414206d1be9b194275905dbea59adc4b5beeb0e129649aadccc0f40d05f78da1df457aaa76bc6279595646f1078ca1a9eee8649f1d0383209d8d545d823c2ac02111a76cd729a9c8f4f9af61bb1606dc6de4c6c84b69481904636cb4e0b6103b00f2f44081297fe173582e9ffca407a11f4926eedef7cdea57be30a9a659db9dd22033de4b1a7d94131e5f9b1868cbbf0678a116cd4b9fcf9d6333a42eceb10090df9f3f0fdd1c9f27e18c066d441a1c3ade2d6c1b16690cba2d5a05b95c5829daf07463dafa9f9c72aa1a2ec4ba66eedfd8d8a4af153273a6edd612cd0ff80dd39b8ac8cd09a5ad3dd0256853651fc962c51df410977ea06c4df7ebcb4368a02145d78b9de315c06d8a821f708eda0a05fd5b2b6d199ce3491afe298b5672db63882c3b1ee85374b48a57b234f07b932cdfca55ef66632df41cdac80b8b7a891feae533fce9b9f080da248018a884bad6128dc8e558f796e1be8dab7f65e5944a20d3489329ca5508d328d9d9d1affa60c2fe81e08bc006efac3733b6202be06e5475e713a647506086354e10f6c70a8b131e1675a55110172f35ff036db1407b930d6fd895fc37b734c55a3e5e8720ff8e116e21aec7744814b3cc8578537c34bce38d24291977750706e4af35ec65e522e85b7ab63a5e85f04684ecb4770f69acd788d04be24297731668ca052ba3719711609bed9768a98cda10a01139b0d4e97711478a7f4acdc50eee491267412f302ba4a19285736003934ebd72b21e48d1ca7688d5a06ffcc00c3bdcef96eedcce8c626355b1f1e524cf60fefc727917e6b58cf9ed39311e830384ad10ecd87e93058752bc284bed5d0e2e0c5d1a0ec3ee2f7f72d0ba404fdb88960d685f10e884b308ec5d93f52916fefe3b5871ba3d5a81462d389067f112460b21e5c86a80135c95e56a026b8e33c6deceffb0870f75c9d5f90a97c74a05fa7ffb28c0136f261415aebe06ddf99f0c2af4ce1b33605afa945a96b06b07bc6cd0bfac8e18768cfbfef1fa978304ea5f422ed68d676500d043174e3a8bb07849c604367649e4a97464fb8a3061b0177a7bee64ae523c028f5b6212455b248a41bae6aad936e966656e9acd0f992e1a310f1f414fa77d3170f1208e81ee0d9dde0e9c5a4000b8159ffded7b0f6329d687f602cb67a33ce10a646468d0350d5379f4467ea0eab863db2a9a8acfdf96e0f6e452559a00848305b0e3a6c9cbbf6ae0263dbfe33e6d54e6e4df587a6c87d7b272515b09572e8a88ca061b7df1e5f56e20482991c0747a68804f422b33ca2630ebbcfacc6ca1a09c9e5a96c5ade0833b5ee4df857c314a9ec49b8fb2fc35b528bd4fe17a98d672a32cb3e0d20b8725d348c7e1f8792c2ca939c2ec44b8e6fcacf78b5a32e4534b31fb3fb9df43d64c2fe1dd0574ec7a4b0ea954ffea7b569def7df865fb69f8a28c13b5856e3a54792cd5ba32d19cecd62e034ceed9c54544a07c28725ad075af65f93c75a8462a30ae5aa609d1840856bb0f11a866d99785949218a2e5ec706ee1f8b173a71acfd97493d4a7406be04b3095e16a0838122d0cc8733eb6e785840af250453589d1082841dbb14650cc597da0cfe78a5d3db18134f0b4cedbc75467abc62960d01b2b8d3e9441ffa9361fe28ca9ec209021fd3f5e2bad4ed7d1d67ea711fa0e8256e65713af3290ddbe8588604fba14c69c06f6a8819dcb87bf1546470baa82accafc1977df6c0f25503023e53d4238608db2950574b9c8c2726d8f3a16236a2c78761fc4599d35768064e954de6ba25fc88f19460e390c0f3f1007a73e0831295d8ed48841d68ccd3f0657e9fdfe400260f80b4492782620ad512559141107a0ef1c14bfa67e432340a32e09430f0b71e2dcaac1d6c2677e8ab09249b8a1502848d50cd2ec90b5b5b6772897ca2186c7ae7abbe3b089e04fb0167b6f2cb3e02ced5d8594c7b120c432194532facf1149b46020ccf002f31b41a3dfcbc6bb0445d8dede0387895224d7412f7dc9446981b9312402f10a7e63e6103d75b3d79edc2e525d0d4a7565fdbd3a2dec339463dce2d43e5ef0f1f07286ddbcfbab12fe8b690e1738256ab945b7b1bc25490aaa5d4abc0e5e67ad452ca3d20fcb4f1ddc03796b727ddbe06c90f02cbc22029f84682409d405e0f3aa788b304f6f2a6f8d5e2a3bae8ea692544e1bca0260ef2b5cdac7c1338b51ed399ee8ecc46da0625c282bc339037869eeb5086065983480a577b4a0b1bcad08052a7542f8331169ed9d523693ed32ebe99ea6eb53793ef328d2c152050d73b6543c641b437909ac0377f75ad095134c336623aae89729ba2a3e32018cb270c68d24e6021809db6aeee0189278151edcf9f158b40e2402e61fc02456ff6355afd8280cb2346228042e3ed34b1f8642d8d45d786f00552b6ccc8ac1aed3899e4a675da8e126245a6f4c871f67b9430319fa38c6fb895e1844e0f8399185f00bbe534d8ef64cc11069b447c016cd43948cd7ec962c8da04208823339479cc27900979c837433eb411d56100a74501710733be8868c77fd507fcd10e6d2ddd6a24f1080ce610ae07b49b2b3886e3a48c1ed7ef93db51fd59abab788137be959d530d349073bc1d22f76590146b625868e0636be2810fafdfd6065d92bec6eb4992485f8d4673ef1ed95f2ae33e89a326abbd3e8ef6ef2050bb5f629cef6886a96ccaf74cfb1e726664580d1636c513e8cd83eb83ca28414aa46150d385b415f17b698a378fc0c8fae9c2134fba3a4c50efd52d6128295ed0a1fdf927f0af7978a75673ee958bbc4f9c2f7bb9c26e05a8aec90393888e05e898e847e6adc067ab76f696e426c34c72f3cba0afcb49da45f4a195eb27f5271a74bb98e4dc4d19cd1bfbd05f5bc7bdb864bc061a2d2ed9934e134e755d3b8cc17d5fb17549f9332c6594e2d770210722cebe65a040c59cacb1920b18f5f91f82a0addb43ef6721c5556d1931f8a63cfcfbcdbd0a69805f91736f1d01e10d5643ed9e61cd4794caec14c2fef8fe6eb460ecff965d162e132bace38aebb451a54b1e3c3128f370432197e14369f694bf56f5a04e43aba98c627f7d85398a4d2900e10745f54dc7cdbd0e5db9762630b06a6addbc0089b908098e1dd7036d56be62f9b1fa1e4112eed5cb28e0bc5b6804484cefe0a0c3e55ffdd6350031ca2a92be3feb030cd7a5128cce4ca85dfaf6f7a951b53dcbd8d61ad050ec9724d3cded3b25f8800e41308e4f853f74accc82266981975d711c646d722cdf986d85d6dbc8e8916e77c0fd8219c90c512064e792ccc9eee5a69ffaebec1a837c86afc3d285ed9dbc5c7f9ff0af7a79079493f9f232e8eee2245a7455e7e6edfbe64763c3276fe5010ed5d06947a1d3c7f8d59144b6ed4db749b2fc92828b33d273a1e00cc1d999ee2be485676f6ea814f37536e5a3dbbf69446aba119c26c5a58bb343a8345265c55d07c9d78ead5b15724af86d9e933f55cc88e9cc3d85dd0934cbea191dbd18f21e5760223366472c71332387b843178f8a4e5aa05be7025f976dd477261ae368fdbe8cc8290769d5011d59e3f31b32616766c4c3d66e820a3157acaa5bbc8ecbf6810a28640fff0db6229105659389e2b82aee8d3441dd2d50796b2766d3e7b717bc3491d73b06df34180311261bf37c456b6887135c8da2123c61a46b836980bb1e306d72d5b171fe8bb9b6460d0e867f4b92289e833b6092ef273e0ec9292f9731f7819c0144d4ae6fe5a19f3ab00da2777266f03bb6154401445a1ad682e95be137a6ea13a987da1a6108438d83796cc92c14430569c288faf2b46b4b2e3fbcd33a1424d6a24342fe42f1ffd9660dfcc0a4df48548baf312732de75eaf8e90e442daa44c11bae0ed367dad99ad3a4a8874b7c1828ea84052a77b9f436dc31c1a89e5cfc2ddb2413f5929f7cf168bec6714521b7dad9abeef92096b017e88ef241ed4cf6468a85f631115cf9bfdccfb3be173a4242e61822e2f8703b8dc2a83399e0a136a81d7d1e46e2a997be193f68ec2531693b20296934994e61f0208d746c829863b80ab8c80503048491cc9dae02094911fa1f27617569325fde79a428c0c5fb71aaafebea65836c951d27555be8966b98e2cd3d3bcdf7c0ffc75f21dd0fd7588adb17f288f6b98b308307895e9ec3c06e13f86324d3532a298b5b873a8379047f2bf05997bc12a00d2c28f7a8054bf1b1d961a7f4f90b9a1095cc7597e509e5bb1bfad3018057363b343bbf0269f4e56214df761d967fb21bed43b0bffdee94dc26a907e3d7f89aa32b8156893055d50e7863f3e689fc44fac892b89ffd12115cda79dfe9e3b4cbd336dc99b9174b3b90892447a11ce28948f7d53e86afe698746b1580f4c1a11420f3d8f5f331a64634017e6db9812b8d6a4be560cb5314da88f394709d260ff15ef5ca512a4bbc1cb38befb4a5fde1c5bb498cd83e0b5d7d180e4c8ad1378a795d26452626b0f6fc1b50d5eabf9bebd7a96553d70ee600126acccedecc4076931130a674c296697cbba89c4d9f485d65cb361bc71680f3e1d9a31e587a75f01b3b781c6fc97a77ca29e6cfce2baf0e9d013facd5ebe6fa4880fa51cc5e2f9e88ea8dcc7a86860a9aaab53fde5d195d1a167a2d442d538f675ef4098a574e6de46523ee10ac280b14afee395264a5e820bbf1bbab158489f52a8203c2dd7c12f24d7580acac6c9984b0d45a4ab9f4bc8a210a26ed8339ab9757f2cdbdaa36381722005a021e58b2af6297658c17050411a520bb1d61d641b142ed6d758eba978d1c40ca2d7b058848af7a12de45fb1cf233c8762e20a0b1ab0db0e7117207cccc73e047d70404359340b73fd767bb87acf89cfc2784e3b2995955786605695c976e0dbed74109547179af70bd4c49fed00feb5858bcfdd47aa92822a61cc1a7d12c5448205deeec2b94c73a82f3493c614a4ee4efe4b15a97910a18bdf58a8782e85e51ca146675a25cd394ae243e2a620f4d52ee451d1169895764594df2af6b0e132372760c3dd869bdfd54e558eef930694a5a29c513518c0a7ccd2164e6d5403750e28ca01fe16be70fd9c65efcc9ae0fe952c79650ecf9aa7b86a9813ffb3f7938cd731e48e2b6bec570349b1239055d776840a7c80b8b20030cac4359eae65f1e3ece2875896852e63e6bf0272859a80e4019dfe0a1445126a62355ce955a88a02940cf8d9bc6e6325e0ba16b60886cb250e2221c6a66d2d07765798dcc17cbe64a350bb8b4f859a1604cd6d5b8e2ae69914f77ea6e024524fa8c9232f9891dc4473b0bd6bb028a568d4bd82b4259b0684c08b4939f97a983958bbc1e8f57ec6145338825ad99f3057be321fb8679481df57c0051332b37222b7c90271340ab1ccf8668d8ff62357f84669442147e3f42fa8f3dc4f10ac2ecef7cd56d657d3379671fe416c7cbfd7e4af3b5645a56e470f480063306839d8924717141c53a07a1706c567030aad002e4f35bfdecf69d41734affe15f63e2d2333113c3307002dddae233d6ea7514e838a4df98730481aeadae7d6d648f59c12e3299bfc04670c076f88ddc45e4fba7856db90c35308b13b3fc4cc309a8ee115f0d2b4bb2928de4f2938ad72e1421340db8d21b6a93664c0c36a8ef8b5f0fdb20c92921c520947f876c0a0cab24bbee74913952ea5e923c0f7afdc54ad9dbeef60caf27c53c38c45343a2b68e690924568aba4f0b084727461bf7a5f171b69d4f7c5210f6d2bbc9b7a964a740aceb3259f2977fa32da3243eb5b22966d1a8d0dccbbd502739e99ba974c5ed56689a39e93336eeac1ed7694053eb56c4d1d41ffbc8ad75daa14b781c98548a4741160b996f293299bce1add6ab6b342e56b24df39091800c8a1e40848bc3a640aaf349aa7703ef00235d6b5ad319c98e8aa1a69c3d729c210d920e09bc3aa07554c22b2853bcddc454546e119135d33af2c31618cabd0da44c345587bd3c388a50de79d6204db8fc2b6788f3d5c30950cbd2e1f5e0fde55e70dd6042c856487299b74cc9260768d7da0baee80390c2ba045ff899c6fd0adc16058723666a3e344486b26548db78889a89bd46065cc1583203caefb655c0e3dc7bc3665b6d1af20ae26707fad61a934304786cc765d117693bd921801acf2228a7407289f3d732f29713f8545d80173229dfc4e5b1d49469bdfa99db9e56a72068515f2fe421c4acf18e885f7b924b0ff5cede5d428339f0edd96cfc845e703ee513afdfc5e78e9b69ef7953dea5f89a8264535dc8698771e306a1647abd0d3b5bf0ee0219c8364522d753dbf30af3020738572b9c5aa0fea2d44509379fb6f97e1693bd92d0172169f6071c7707eaecbdf5f10ba5606dda90fd36fe06a629e321fc8ffab4552a9aadfcaba83a7426b1b9e9ae633bdf77b651fbdc0c7deae26426a773835a33b07b5e6e3b41264c0024eb2b2eaff17c85a1cf2c3b673a0528aef374e854c5bf66c3c171c5b221f6ca17c0f00049638db6992181af4fc63910a2dedb3211d9a1c2ca7444a7ba30ce7797585a416160fcdd777024ab65cf6dc76d23e6391fb5cb6436f1ba3946622a6a80d0f3722e7b67e1a3db97a08d7781687683ef1b01aca52a152f59b052c5c6de14361dd8e00736428c906b14e9c678fba965cac4e2067f6ec49149f52543e9f03eadf20f01f5bdd298a904bf6b5a490ba9583b7907a0e3dfae1281a9e259b2f299536ed561aac6ef161cfcda3b0c6e8771e203b13e709a06dfd00012863084184e7654a2ccd6f7269b250778a835ce936ddcd6da001778a0487cfd83d3b4b3ca8a97208f92863dcba5ade82a166f8f9cd38dac8e2f797d752c54665153e0675cfce796fdea1e314a3cf3c0590b933325936208ef82791287b13a9c1325b10163dfebcd43a537d2c503c7cf0046bb45888ff923119f57bb60d87bb7924c624dca9a6a007ad56e140716f4bac207d9a86a3637001783d3f427e04d81895acf0a6e5af287e03c87f6cc564a3f6f62058d746b5173c7a74c41e7bf4ca3e909db504e7e0297ed95273ea737930a9d374b1c8848721132e6214a145774c272f4978cb8313412a074008bd662763a9728292e4de947782d2fa07416a048789a3b0ba69307262f9cb7cb35a98a7aaab28fcb813075fb3c28e90d499bf9b4f6f59d639526842fb05e471da8964331b1ecd248ae78c17270e8c89514207b3dfc5d65a98efe3c7d74418b0c15de64e32bdbdfc588591fbba3e9cd7fdee3546e568739e1cf4fc2f79d07f733bb0f32d26535f81b9e53782500c29e4b323d32086f9fe7076ead66014c1916b0b7ed115d58cd1928f414c4e935790134db022f7cb75f8996fd9a937e1853ac90e997cbda500902a8f281ea622a2770707f95471f0a7c34c8ab706652ba5b7c9f8facd1d82ecb42e29649cbcb364b4621527715f0e30914d0b63cbdd2e0da7b54b2ea3eb48efa51888e7a00d3d32b6462f110cdfcc252e1f37285165a82a1916245d2c2320480e76baa28188cd2c80574a1259e57f06843683e94fb76bc6c1765e96bb642679aa634b12b1c8b30fb282d6f4d0410643dbf2d298573b918e59a244244208f67258ae8611873b7d61f8c3c8df5b66db9a389aee92fe2f90d00025e638aad0b8eb119e25524ca2b218e022e3f59d3ec9acaa6e0354cbc343d054fe8fbca1506f4c2ab2320d350eec61ef78fcffa2c0769300023fc509cdd200d74733e8dd1566866aff3bd6ccba49b6bd8546a9d88f7ef948d61f72c4b54bbb07e1886e920ced2b17e902877579f8d8e863cc6df0686ed81688e8ff077cfaa43c41b06eabed0e92630119441a291c52df9fbeca379df4ac8966db2ce14a9c17bd3ea2b729120b098478aa90f5906b141d309623996228bbe490fea2dd3bf0f2b5ad88212725f5689011093b0fd5c8db3febfa88b8ba5d67cb500aa01ad718f6ecd2f1ba51e0316a731b9f36a9428aa90a9380da5fa0054aca7b559bba20d98cd153892cf93154b60211fcb95825afc4a5e3aa77af9915ef57b5c4d83f28405bbe58857d244f847fd3ac3417f352798f8e541dbd0107b298a2a214a9467754b4dff18d879fc8620741200a85b58860c71ee67f589c7949cb32236f6a7b8ae47031ad2aab245b3bf772c03d9deb6bed7aa808dd6f46b6215bf4fb8c4ab966f7c39598ca310cd0e4c2282b2131782e91be346c2b1cf3aa511f015a63ebeef2104c5752b46061c9c8f3a670d0f4af64b4f96718eae65c3bf056d8e65f8cf78779dc2e36972a96e46320f614afc8b684740e99882167f12387f50fe5e3f659dcb7d2987a2e059968d7a4957292ba7862e865f235b3b06669a091f18bb9faf1813d150ee685c36c354addb028f94ae5a38a947b7dda52c10837805eeac1bda0439ce79bf126a458a3f7f77f39cc58f2838ba3862c0c1455d8564ac593bf7f4c2cfcda2ce0b76dbf21c322e69deff36757d16545018023f2cb3f55fd6c16be14d5e3998efcebe7728b2a35f645d388259c5ebb71a583284316f6864103a589451ba6477c801aead688190a7d23063f02de1fdb61ab2a92fe4313de1b1964bf06772a4be424e71fc39ecb0d21d3f968940742b3c0c398f36880f59567fccbeb6d2c5b5c30b6a0cc48c5efd24f7866009b509320bec00efcb0a4bfcf34b1a34d060866db5a8d37a9d7f0bf0fe3e01bfc98be4660a4c20b40feb3e8ed22256f435eb70b62c68a316bbd770c5dff3a9ff7543da36f1ae04d01eccd9d4b42a53943d82a2ce03280946ff6eb3cae247f0bfbc4be83bcf8e40a31adb111f7df7f477f298025450c26aea88dfd57de541847b81f2f2239f778755b8bc8e7c5a455d07d8483218be04b48b10d825dc5d748dc1a7f9aef84e63aace5ae54a42e4f930447c5f43357d1b4e78cad2c8a21ac5f55bba85af3fd17ada5ef04eb4d7140d1230b7850c57b16cac7d624b927dbefda3c23e1108b533a5cfe5fa06c94d311c5f9baada2cbdc5601ef698f703c07a0c0af70c3795d1c879af2cdcfb71960be577eab0f6db22b923a36c0bd3e93fdfc59aeb6c1ed778b9f5c94e672186669d9101d38beade37d8622e6a346bb4fb72a59e6ea582b74cd8f42a919309760066c533182a92d221368c6bf141cba5ba04d7db240cc823a40653569c9454e70cd542ff40a848c054aab679492ae6416417fc7028f57989f782946e9be3efad63a63f34b0eff4646c136cb5a1eaf06524ff33efe9a855ffc456b46bbb55f20b080397dec05b13aa138430f09bbc1355109d49eb3080001927177991ea5a752178097fcacc6ed378bf9d118f6b8bf0d09e82bd56ea5110be57db7b50ffc4d4330efbf9238a6854de4f7317cc35acb65efe8d87656f43c0a488b0d81a37fc7e723acf24c0a7229fd9d252715294fd77f2756e72d67d083541092298ce9d86241dbee484570139b0f27f25ea995649457ef695e478de0db3e1a7b3f0855e0ef696feffff2f1f52810264da3412e520354ddd908035cc4abdeb76865a31cfceb5e28cdf52919f6295fd7b90af86a0c64e053010dea9d088c21dc4725e7b74428340bfa1159f8db90a1b2c6e0000959c5f3b9654f61cd8560f9cc625b9cdf31b9e457f70867b607c65b32d742dcf5bcaf9e838f11f454313dd45153779cfd85ab2b2694bc0ee56fef69188cb88c0a7b17ff35ca90345c632bc7f6412a5d4c5788e3aa55b0e9041a370b8beb489082b8be7fa2102bd65d1cc6f8d5dc4dd3fa02432a60dbe32be6a8261a39ee30d26669b7745c5ba297bb1bbfa3127d34b30b12fea8c98aa3d8e6b0dafd82af5ab3696d60a8e079d3936072ce437e784ff40c1bb3153632e854ef0cb4029a63192061a9597cb53dc17b567c3cfde20f1060805fdbb6180e5942dab6cc9dee2fed43848c4b2589ca42faee4022f54d77244ec98c487f91a09d9defc706e655fb026ff64cbc65ce6c2ef88699e8070526c1f878da508b3f75b7479f8d396e12ccdedf6491162d8a783983eb138e2cc5defce7e09ee81428dcee6200e9a6efbdd5f069854135a07bc98064cbc6e1eb10f3823464a44f406b785cde22e7006962dab34f20160637028570c55e9dfc28384ed83824605027298c8bc0a7bea57d7c596d20094d93bbab09a4daf35fa19f1d7d0f8f2052723b558f818d49376645df4e36941e2ab2271a0cd4563a710437ccfd8d0ff365b3c8ef9ae1e30c7dcb9f4eeb3f63a0c89efc8ad2262014541f4b5d0c9dd09d7ba6267ad78c306099ddddedb65769f9d2a5f5652845841b756fee290a28d510eebb2765d3fb7b55cc9240f6858e51bf084acedcdd8fb3a6e23cf3860b1b3b2422a720511380dde8e56d8bc41119b92ab765ea7f45e98e938b2af712497b22fe0c77f44a1d4805ea5e58d0f3fb5a11f0fae2d30b7be79ce20c640f0bc35402f065887177860be467c0c7cac59a011047c32ef2fddb5adfd67f6941469342bbc472138090612f90913b618e96d5f313ef7bee418c46a3eec48c1440db091d1efa320e2a8dbc9abe30ba4997d45695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e199d355cdcb33428c4d4f76d8f2d93c7ad6358d3bf1c9e10162dd890d6ebf13880add6b43067b443f8b3050a1b8a3b32955c907b46f4b52b2600051a4e8c977c6d2cc48f8fc73169df5bdd980bee258deffb2fb8ecd6693186d400baf128e60256188b6eb783240232d5c524ce56a801ba7d6c43de979f2c147e8d9faf67b187c4d787f3d6814569556cc879f6004390252914a92248672824bdac1579c67892f24d88863722a774e92f996e63bcd8d4be2bfe29ab7440d1016a37f26aef0f1151f6f7d6d6b4e5caa79805e177ab2558d7157e394a56feb4c35ee783f05e74e0882b5b054e621c8d80c268b751e0e935f84540a38a6e337cb88b4333d315b92459b85604315c9eb55fe177e3eff713ddc561f0b824e0a7dc21bfb37bfaf42647e2365bacf7ebaf8a73d337e163b57549d73537f7c5e7cd3cb16c32bf2d3a76ca9d16f85390e239468cc46625034b8a17ee577280b87c995a3fb2475b5a2e77d7b3c183b7ce4f053abcb96d4c18549f4f0b34b3279e62a460540523c2577a78bdbee96d4eabf5a20d7d1c860ec37529b6fee9130c6d261845a633bb5e5e54c8f4c5f5d138fad613a04b1c424b66015c55cbf227b6339adca97127eaf2bd81fdc835f3db730be42c2d14b738ca0e577863dfc9304ee0b8317dbb17bcfe4be4f28b41781a52c5d4f258a25af1fdf3b1aaadf4588f663762417bad5b5ff6d60e3281990a625ffcea68098c83c0143bad5267b58c618deb67834a666241e7d16ba258f1f669504096a34328c9c9cea4291731d9f1fce99cd0947e47d766912553f80a238d1c78305ae21dd2f8eb588c6eeebecac0e8a1c7fd696adc53c53db51d291aa989b64696a5934ebf044a4a0fdb0cce7dc2868fd42b198f3853955a6f078b73a77c26360d4132acd0315920722ceecffd1113af91a98b25ced9f16ac9ae81e59aea71b3aad8a70dcb0bb2c902e4c81afeef99edad2b149d2e9377f487d73171e25d4ed853b633f91ad35e5d85cdf8e0b6800919043c1cf4f67f9a15eb77b0e3118ba1cba206188a6ec3a21eaee922a90df882b15d31e2dcb94311be6e60db4aea17ab775d0e4f633f9f3ea41877c38af1809d338f4974f66a17034d18ccdd3f22471d6d27f9208e57bb9b8d10c8be29adb8cee5f98efac3bfe8f1c3c61afb4fc6393777223f71ecedaf4cbf420e97ede115ad13ee6a1192dc2d06a6f78f50d0907e351196fe820729d7ecaa7bd8ed50fb64c4125880be0ce8db85da7d97f68af33d79d599588954a0b1cf91f618d9ab4e390b2f5b5f2d9e9e17992b547b41f0704f61b424db994f59db8aae825942d50abcb79b0deb44897218061a2c2a8e0879611e7236547c81785fe0e57c1bfc9b009f31d432847243c6b828aadff579ffa5ad8f86e9875e2086bfa8c9431484fb00439a57cef8226145870db99fd08ba6bb9425ee0f59b7b8a76a54364484c6de2bc95ad81ec8b236f7339132dd78f020ac2091dd914466dd5f47c24e36a7d60d14b8a36bb67181e91533ce6105c8f0dff7f8143fc57a132bd5dd307c30ef906e7438e4478a8cd24a807c761567a7e9e4c81df2c073ca96b3621253d1c89230fe4b89ddfb66427259959f439368cda8805c512292b3da83e92814f79f777e4325b252cd0b70867522148de086d2e460b8d568fc68e3070f36ba9d915b96697f7d4ad5dd8a8fc67e1d8b998f9b914a1e58cab0cb69beee8f05617b200e2fce06723390e70076a825016c51572d6711c2c1a7511f16b685e6b35d4ec2c4f4491dcd2f1d0545c33e9ed87e5c74bc1a9b6490cea8fe327118f2a9b2b6333b948685bdb98f0b823b9bfefcc15e16f93aa6f09f2c5fd9ffbec89d4dd140d354d869218eea0239dd986f9edcd262ab914851a07a7a3952f316a0515feac364be4af1a88cc41a9178794d07984da887d831ea497b6905c8cb6ff82149466971f10b229d81678a2d63c4bb201e97c4b62f575408be233716ad6e98452708c57eb17b167a117f29779f6133a3985ab5062cd61c7f608d9befc048dd26dc49ceea4945d5ccc39403a66afad8dd047bdd1eda97dc3fb7d4dde763a7bbb5747d24b3d6f3063fb7e7200516efe8be63695973284a08de78e48c931ae4d934d1dda841a43411ebf1a4ff1ff0d3a37d16fb69d3507819a51802bcb19f3030967c02cf920d8bb1f5976f3bdd07c97ec9934ad5955e7b6a513e7c446ef2dc0cf1865852f69115e6dc08f3b05e1b91bb1ee3c9aa5d2254fef28bd5e93a4bc49bede96e388dd5c5eda67d5712de2bb8fa8ba0d14bf2572a079521ece7d82d11a5a03ffb05a1d400089602ed4914c7235e2173ab5af5b59546a04dc5741bb2b579684974040e39fd685e19814ddf5067a2befe825b9b17d53606ffc922ab853e4315712f840930e67230fd664e24bc93ac6dbe980ced53e823bcd879e963b4148af9adb1caa8c771eb56d31607dba1ff9579ead15eb2da130c87972efb3abde42bbf359897b5085b9a74008b7fb80eb3798943503ccd8d50c761e168825299c28df6527d1063d1afdf5016ac6d5854a977172a589981f584f31bdf69eb6e90000ff98dd71eab5c67f153cbbefee91e33fc892dfa8f94a99cf09f4962997684aae4d007ff7d3c7f357816f2343d6b460bcdaec21644246ee6813fbbed9fc4b3fd07723a914d6c2ed441821d4ab061a04a2c918475da9473872a60e166c7a649b9d6b5bde8bcd3b919bebbee63d8605fb8a97416d84e2657bd61127e5f64c63c554481c726cc5dcff339b0edb3bb75c6c5c2195d71209207b56ad1d10f8c2b6ffbdbff4de11c57ca201e2ecb869c04f773aa69fbc3f4f5b3b29b383b153e37d6023d7e1de6efb7cf28207fd2df5ef642d6984238a8ad702554acea384b13502bb86ed757ea47890d0f283eb7fde958cbc8ffa3a8ca21db17d3f2b9fdf18195db7547cc287d4c1fa19babb9959ebd8abf95e94ba5d45c2f0aa2f94b2bf335db010110f77fe276e8417511babdc61499b84375da33a8ad6997cf861947ca85aa1b12bcfc91fbdf5931dbe2496bd1702a2bbe25fe1468bf574594d5d10ef02cc29111e48cfecf27fddd90196da247c4c1d6f5a6cee476926b6b35a2a93cc3182de35b81a36b17c50031b900575a0164ce19c77d1329b3e73d7e48fcf79d47c49da5a3f0cdcfb7614234b1cb3a9ecb047ea7e1a8b0282b5a313715593900bace431936c0a096f28de150b94d0911dc3df5c8e15370c72d909a258de700abf0bb728efdf58c23b08094f0aa7ddbb182c69ec2da4b516e0c1be59670089b461d5fd5538148bc51a2e1f606709ac325cb97037f57ac7a460243c06c3a0054e0a22b4629e7730fc418c1d2be81f2fc4171ee7a6e7b6b57ffa5486b6642a45b4a6606b1d0808652b63186b851442bd496fbddefca6bbf4fa00cff65a9d1b3f2aebf761c66e05e3131105aac38987a224f561002903f209b4ca4974267c46554cdb61e7c84da842da74a7eced622fa24026e300e518964a94820a8fc82aa7d86f07467fbd41711521498f217e583f5b10a2f48484f3358ef7687ada5dcf3b23ba24af3026a22412538121d15e2169992315d356add041924aa96f9e332cf467b8d03d0c2c7ab381e9c2134a855cccd5fd3c0c7d126cbbc3ba1651506c983b9669829e971faad64af9060bf077e6f6a4282ce53c1428f78582fbe65abba74b46ae1700f63865202012e1be3660cf86b16cc70870ed5a3afab5314e516b1b596996e0831a89e606185eab183710a96ec07425701683ef6a1ecce00c1e4cc1c1a9925d7844ce00c10d7385f0b5af7f13836f80663e3359ca49231053be046bc45b06977dc1467e923c17cb37af63aa00b5d2bd76deb71518f21418a430b633de9119c686f5178c12a6e4b591a5b84c8f13239e661852429abc2837d039b68fd4b5d6266806a0227941b67c16cb70e3ccf8150e21229f027b76e0c9a3606974ed18842362e98511585e4a66f6a948fa6d9e8a835a16681bc60c6f11eece4a208f680fbb71b803c447e47574aaeb197e7cce826e3d4e92d1a81f8053b85053c8017607aaaa5d5f9aee03b93887f5c54f036d6b7eb61ff215e6250eda5bb7a16f8264fe1f693cb86c52d1bf1a68557cba1c0176bbaff614b8e8cc39e71f04b8085d55a337ec56a41d497d70aade25ffd1230700df485db2ebcaf9148e6f597a6797c2d80e7284fcd4c7346720b3b88af8acd115d096ec2a571f36f63f2a8acd17f660787849595bf75a28909f2bbdb4b45a22a3b05f7c2ad86944e73b2fe5355a2b440c4a82b77eb3e0e5216fb04c4e509bc4f5ac0742cca4824b2704794df4ae0592294e45fc41dcd079c003cedf99086d14160ef1131285cde3340f23616a64a74a5bbcedfdeb2923c68b56e08f586e043053a15374f6059d4750440720a220b044f9f3ad42cb6b25af4fb036fb040554b7486da3023e0f33e2a9499335d11518be40572a30c539b3c94bb7792a5dd0afaddf9e254b1d2534ca96e2d85e193ae49ab33c557d67f681912662d98896a01587a0eadc43c8d13df168bd4785967cb083f16c78c88b9fd55ed0ca3fbe0bcdb072cf635826fc8a66a395d845358392dd8e5a8d81c72161388ed76a51113b35d47888767b7d8a7da8070438bc35d4c75e69c466973d4e7e01526dee0c4827e6e12215caa242f42041ff0d57b82309a3ffd9df44071dc211c759d26a7915a482a698419812c6a07d9aef45decfca8cefa727ea4b322a4c5fed58ea05cc30bcdb641fd1b43851eb049d615c806b0d946ae29c560f54c5dbfd70fa90f8b0c04771d23a110e3e462a34e6a55a1619acac071afbe1f9aec2e86eabc12842db04637ce3e11e0d8dbb1be1accfdf45633a70faec505f368feaf41513185f1f30719107348e5e5cb1dcc8d20fe2b8d2e735c4e60876457543dae339e42f4f25f1753e758b88a75b32b9c3cadb33df26ea21e896c1124670c263fb0c8d0293f44c06259ad29abeecca630b68a736f749bac630deb9fbb1d71ed7be7f56d0674bbfb7ade817b034f1733e853227ebfe091228f850a71f249f738c08ab40bd6acd1f69ee2322ea7e9131f4808f9080407ea1dcf4c70d94e55d1a27b5e4979d89f14fcabf10d6591ff431dfe8a17cb767fa43b264cb5d6fb151b720bb384705b4cad1265d400a3d6d534843aabf6480a201ff414f05191f87739cf2f23bafbd07374870bc871c5d437a27fff3214922f92ff74438dec3c560f6f8251dcddabea30479eb51431ae1632abe9f28bd613008d37f939c8705c78104ff872e7e08e8b7f38660a0ae68593960d6d363ebac5fbdcc2f8098acbd7762346591013a5eb5360bc5f3dcd9b4ecfad62bd3d7c17b53ae7e9606a4b56aabaafa3f844385c364ed85f5beda8a1fdde5f7290a1c2060d8d6bba77f75dcf7568e3593a47459d207f537070f5c107c5d53b71d793a28c46542fbf6d97287b4d0bbef47ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d474dc8b43b03876a2a82897e15fb8477c956e4b18b9fe8453cfa4094837bb5517ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d98934f4d88c7294c71279d437720d589ef736ba3f9d7ff8d90689429e84ed41a7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d98934f4d88c7294c71279d437720d589ef736ba3f9d7ff8d90689429e84ed41ab1156a1c0d0f93c52b3e3e492720dc6682ffb32b275d534428a4f74ce1e2a0d5ff227ddea4b041a8a992d7b8dd0e2a529028418714ac4758e9c7203a96c14abe6e24c9031dd66ff9f13c047c3da673bb27acc341f5b63f557dd7fd78f4402898f77760056e559cec407344e118a2036a4ca3b5f78db0768a3e05afec60367bc986b6794fdaa3da9bdaa60bc8d1f8cb3e8f7ad8e05f86a41338a6bad769199f2cf4a19151429b1899b994833665d81e9b785f770459bdcafb15303ea9edcfae23fe21b3363d3598afe0fd23826999d0af2b0652fbbd1ed82280ccc4e5a6ffbfd440d8b729630d296c9e925184c6b24ed7f2ecc8b32b1941c6b8390dd3f16f471406ecdc7cd6744d8c96ad453d67aece0941ff5ad7fa1aa5d9bf0c144dfeca41e93fece0204248fa2e57a4fe09e0ee1149e4fe66d0edfd1b454127f1c6f310636196ff1826224be70a72a6d0cb922a2726d630372f7f5ca5e2fcb5a790a89f81a372b440b4ed2729f6b038ec457f1d43884aef74b06f129d324f6186514543e269cfeca56802f6fcfe22aff0647c756cde42dcd800eda4aa858c178f6cae8207a1a6ee0d0ef161fc284d75affbe273c9584eb7398cd37e611d7ffb44533684b4768410fc2b1fe9846d9a6cfbbfd2e2b51120387fce92ba1d0816f6bc09eb4a0a13a622b46ab87f917512f3cd25bc34be54b366f605dcf6b9d4545619297ed967a453b06f8177908399d9d6b06c8428574e13806a746ab21c4a75c2bd6d3510d5a7ba149f662557a0e850255de23f785d94e9617f76e21af96a1c8aa7d5b30f613a41f2cbeef9cd06e0ddd61fa8b9620dd37602e26a5614089d4826d6f739e0e43b05ab6e50e8da310596c5db02f727119d0289665d7e4303cae9b8aa7e8cd89e4cc49fca0dc8ed672f2cd9db291672426fe320ddf79ad971e43ee97b51367062810b49ddf0aeca9f297061e37a04714f3a4e27b93444e0e4168faa4b6bfe1a952e7def724a5e803c0f16126c8663fe14b8bf76bd3172839bd1c0afd1163fedf91534bcdbaa43d6d04efe4a8c9baa6acffda4966e72563d6549ae1c12177a0112a6263e800cb1e350691229a77754bcc56e04d5dd064b2770961d426e56f4e269d30cd5ef0a8049d17f81f0817013e55e54efaa044f98168d4e79b4bd2f940379868db80dcda181c7cd855b99a13beaa8aac280bc0dc04d3841a196e2abe55373da28a31735f2d7be51881f1f5763e9c93b1563e0430223df301ec31288437e48f05695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e190a8e093d58ad78199ec654abb363e1196f63118e4218b25e0d085e21d3701d394b8c5cd859bc7fab45107f2411c4d73bbb0045ff4735a0fe4e3cba8427ab58bd4967c9ba9d7327235b9a8ea6f67b6cd32470f11c3ba4e993d4d78be1962a27e0e71be3a051a58fd939c867febbb647773a0306b7767999ad35f4a845e5278d0395e32cb80ce43625650c04adfe72a99511b1debb362fb6860e3d28e40891590e6b0eb2a547ea62daf0b6f55eaa90e0f0493a72f90c995403adea20f06eaed5933b8981e0d759f390a2f076bebbf7e036ad680cd9497bef1b2a6703165ef4cb33e4dc84a602c00695598e6503cda22bca252db0199c5181adc73831c068933578bab672ade25f6f946540676a62b67f591070b80d2626f5406cda46e68ccfaa2a8061dbfb4ad652bbd55d70dcbf877f1c36e866beaa49057c9b21cf463f20871e42149dfa831c8895b0f68e24e8d09138ca82a27583554bf6aad960b801e990d30ae34484c5cf435cbc5c415811094973d17a4331be426f6b653d5cdaca28bddcbb15ac47a9b31970eafaa0e0bc53e2a6362f852a55a880137844f187ff6ede90061eb6d1d2990ddcb4e454d163277f834e6b94f4a028cf725d32dc56dc0920e3d90ead0bf88185be8301d5f664d1c18d740fe2d52c1e2f3dd5b9d784253488caf932ffcbcec4462466853ac900a172b95382b813f3516ada81e691abcff670c0e22c4816f6647fc66627192a60e77eb8f77170eb330ada6de06defa914faa80d5050cc0c4be7f27e5bd76ed09701ec5bd6f26d5df7ae7e18b02d347907b0d3b8895fbb5de7b416f55275e7449f7c781b0ae8e4cb3a61172ca7f84aec1647882621c9212d92692ee00590fe904f5d23da2470773f53df224e881654d3961d647ea79a68a397798466e774f586afbbb0583b5480ca49b141184fdfd2a7f0f98e04b319412890078eac8ff4276e4c11c6b3d1e921a76245a9f1a1fc0d474edb1d270b8a88747065de6e569dc3949835eea547ab23ae5fd2b42b71514d1aadee5019fa170e1ae8459425e005793ad92c956765c2e7cd27d31dab38a3927f6e498ff10983514e2ef9315420a90285e288f23753b396fc4304f199b4d976724c5217d655c67e01d33a9f58399aeb4e78c3444e660442808ad92aa06003606d08da918d80069a373dffdb5e775bebc8a953edebc427590cdbded1fe647150c7386f3b8cde7ec672a73e2e27a04bbf790066aae409799ff68f2b9fd4c78dc9348f83fe35734c484bfe05321960293d2176cb6065ce60be940513efafc819824f7c2a7320d7e20340c21db77028979b07388fdb668d85301149aabe2b96c303e04eb67ae8c314fb50562dae5fb0f9b0cfc68c9e242ef7c543ad10afee8061454ebf76567eedc380ac232fb2112c5e8242b1db581b09784acaea2515bdc6454ffa732fa427e9dd81f7b741bb02a3cdd224163258ff595dc1602b37f87ec978c74dbff498d3082a77bf9189bf2d27c37e10d49d8f3f1fd63711ab64e66e29164051d4b03ceeeae4bf85f86d9b18035f64107cf7a18adb3dca0deda3e3fe88a7540ef674b859e3e7842223a92b2ad723062c9d9393385c6fb4f55cab93ad71e25f8eed60fd384ccd2a26a544f0e84664cb862e1676fe89424ad6f5126569123ec78eaf1a8cede47b08916a60e7599e1b07df6027b9fd7c7c7d50ad176784b9d1c361039c7722358e94b9c9d3f7b9d57571b8b1899c5340d963742ff97c27ce376accd95ffce64dcf9b04a3a28ff7c0259709c395594a8b745a3b8807bea0da30c2b29a69f35c697fb47791be10bad3750fc899a74913292682a59a565a792ea9656e60039edf33bc3a5a17702b8a08549fc05cc2d611da811cac6f6ec1d6c0395a12cbac897e84d91e646cdd591fae7998d40b28de895a141e56f9a4a5c0e1f4ed411379d5bcec9856b83f72b3ecbe992872a130869ff3d568a36528ebee13b22c8977b7a24b450e5936bc627061e6ede3defb0cab2f1bf220c53fd75d50ed23eef79ca17f90d7aee9e5ef9bd906905c0a6553ac149148218e278579681e02e4f50decc5159a56da173783e03c218b05e6cae87fe73f578124db651ec7f4b275da1857493d9c6477e6b6cdc6f93ad75f5187e5a7c07a973a86b25635b7b46733659c562e1a95ea5e2d88021d3ce20f3ee178264a46cc22ad702a7e314804f9be97ecaa0079072021debe60e4016957159137c0ac9fdf2fe1ddc9fd33fc323421167771648a555bc79b18b889a74789732079fa44e04d91dd835b56c5a4b6aeec395923a44c20c81eb62869faff0ced335cbe32b493717af9d80a779f5fc0aaf7dfdaff11c2399ee62d78602c44b15cc96f837fdd896452af2f9262df5936d80dd2910e06bb3d119f285ad4bfdab902ecc9613ed82a680365e98f93f8a8880ff2656dfc98d2122722be875796ade64b574904ad78e422130727ecb5003606fae5787126236d3e153fa9f1622fcbc82a834b9a9aff1db79fe47b73b90eb0a450f752c1e1823bed3611de7c968f4a972c1494de707c9e11ec010adb07ffebf3c3455a7ee3b3df69862fc795d77d916417e4a15d7a5c3f9806afa37373443aa1b5fa0aa8649de283d0427caa00f92116d71afc6354786126556a50a5a9081cae1a47b458ed632bbe190121d625f80ff0a4d87e81a6bb4d0fa4409f30974c325ace8f27c3bfb6b455dadc4a741bc2101c06487e1553455c769068da9f705fad5e6e1a74cc1ede149d53240d936372abc91609ac44b692c3933e47d896f2e35ce23fb46c11b18472caa4f11e23f231be2cac9f60284f823c468633e91a4271c5105e728807ad16144d5cb3490ba4d850010d82c6cde6ab389d8d6ad5a5ecc79f4c8946b7f33f09694a868a7d600a83fc44865ae76de8c5f6eae10f9e29d41fbe75ce967d9e2594411ff1840301427632d4472f104876d8628553b299b43e26a2b49c30a00ebefa8ad7ad9879873f00041288fd4cc67cab2c86557eb86795d12581325cc6327cb60682855e6e7a06dda53909c0b58447f44fc80e1bfeed9b101c02846df956c0198222a8e5dad513fd49e82da7e717dc9be146b448a1c141e83cefbccfea15ad586cb9f15460ef13c41d70b1e3151bdb854436b763c860f87626209c62ccea946fb6dffe0a79a10c37aac09a571ed6a16ab6f25dbf280bd247e366e35fb143b75ab482f35d627631b671eaedebfcdec5944a327bdc99c65df8a750232f6a84cb313de49ede6abcf0f580b04b7e07466c8a2797d572897139b331aa3c283a5a9ce27066d78b52a5d3bbfe31d6f81529e3809c4bf1444320981c6e6c7940296c1ff92fdff759fa8d49442f4758f29d915eb409c5d53f1f3791ec4cb805d7d6e43322ee934c692b3d38f6ef6933f6ab67eb704f6345bec33ee632c5bed545fd7ff8610ffa9caa062c01eaa2b8a2950608259847e5e26f62758606073be9cfc65227af09b51880c8f1b72f5302fbd7b7b8d3fb772b4f5890dda8c80856b8e11862aa0f61997d7830ce851472e34094f7c6a1438fffe91ddfbe1c613464fed7a98e692c4dd4c58281a7a920c6191a37b98fcddc06147a6d8907b2911fe7c37133539e15d1500e82c41b9c8c4646a7ad967226a5507f0efbe956b03e0c39d8eec274af263ba22bb03f5de4b150681ccb30075c90743549588c78ca5b94dbe25d1d0650132114beb58381249b3389b6dc6f73e6ed1058829e500827715545ee2fee937877a5b00fc834cd1921cfa88b0d680c29f72fc0c839045f36166030d920ba610e8f3e112430cea74e061a7299dd929b70e702a4df82434ef6740f28475f25bf97415b5228d82eeaad8f0e889a7a8123287b111937507457d90615cc404e03f9aa6492a9f1a853637c7bd09136a351afd2095ea5c533d7a79e5a1c1075cdd55cb21e941f9d412b6499ec300d79275dcfe0338d231e5f3a0efeeea8a31168ed49e0db463dcaba806996ca78a7e0e1a4fa83249619c63ed1fe9be096c0c234d44146b475dea01cf557d5f4548db7329d00bbdc03fd2f52a34534c0f08e2d9caec0d7886fddc2d84a5682f48a4f252057bc1fc43abf04f73da8e1bff77cc5d0145355bdd81bff82ae193fceef126580b8b871271eb4cdea8d0a8ea333bfce7f3135180d65f33980ee2103d98872841b56ad5ee1f10aa30de0ed70009471f500a5bff81224a9af22cc2d3882be6525e3f013dcd73cb6168f2e54af4dd3e3d21ef96fa0935383947f9689b062d2f4fca6e9fc87d4df55d1b7755d78bea4c38bc5bfefa827cecc5b18b951d932f855791dc3a07078a093e9c109641cda8d5a7952ae7fe54b95adf46d2d3e8322efc6072d057fc5967841deb6746b5eb3dbb78944f652be4d6da704d832b356f1bafcd920b59393668ab50499de9cf4deb2bdb1aab0fd04b253aa6f0ab2817ebaec1b98db9d4e50f555d9249942cf53acd1605e5568394b29f519378fb92fb9cdbbb8b755f0ebb6af8e5757884b568f1bb1ef1a175f89ee9e87d9403c8bc9c42d0c4b9877a843b69d99adba28cee668c99c4ea6cab0774cd76a91e0b80d561dc426f628f94a60a582e17a8d0c53e6fe0367715471efe5bff963edfbff9d23874dc069750a1675ae861ef08e2ebb4dcc27ac79d093c1d5182a8b3f62badde575cdc1caa6931964643e27ac1528ed6663f34640816aee740b758aad8ef98a35e19b526b1fbf8e9ee6473db961a9b9ff7a8743cfda752cbda86df5bcedecab95c2075efbcd1fe15309af34ca0f9029297e131082d0de8147b9d7f2502385498b2c7e58778c1f929a7764066c6800d07ee778e3a13b2ab0239134c311d7e78a8b0ba93b61c72ed20533c4e035fa262c5c8f2693d7c25ed38dae42adb0d3756153c48b523a9d6510d3a42abb8801e612dc6b621b206b362bd0993122634012f480f48ca541a7e5f124bbfee669e71440bfe910859a93ed869a498c54abf4d0249d3c7d011fa273ae93f5c3e21f2ddbf477370a6bfcf9a42aeabfb4834c893483963d698a913e6aebcad26ee643a939e72949f29c692f2a6c102a51085bcb3131a7afb510e3bd8d4d754101c9811b56600c51c51a0dffe12671dab36af5024edbee2d9c9e65f0132d97b701e907fedff9200d1890d4b6809b314827f8a4a9525d2db1fcb00a59f7b5d3651bc6b58db9ac83b9b154410b7544d1e1488e1a9a744be224d66229e4257f917983b936340e3c78cde5c32eab0d9664a36ea649023fb1656a586eca32cc6c7e5f9470db7346451890b524c19c2886b3b220ec7e6bc582b0427554723bad48d53ec0f70acde980a6977b46bb9acd42d96d604ee7358d484ef6fa6dbd9fd37b32ef917db500753c4abd6c42f645c5e70a9627b7b0d8da7134691ab738f2dd098e384414e742cb9728634f5bd44a09b671a2d95459860aae7732064d5de3ccf2eddf725ca4739924d3495a4f603cdc4f8d10193c010e26640b1b3bddfaa81eeb5694d3e3aef600f04c37c1232c31ea82c75fb0eb29b0b7cdf81e1110c6478e347aa5bc689092edc088317409306d96e039c581926ab7d950e1b165e14d5082a12ee480040304f00ae0a711fff0f6cd59698e718d5b5845079192e65a5964825e8a5e889ad621e21f4677115b61c6951fe0107bb39815bf93d35686f930a91985ad75dbf64ee08652844654383755283e8c017f1102e85cf57565ff63b3237dd68d622a84e03e08e0c2aeb40cba0a371b078d93ea5bbe30c3ab193182c72dbdbef4e703282ecef133bd7adc1bd50cba1469ccbb175bbfb817a1a7a6b9e54989361d49a29e0410ac09deac582d8e8d451a5cbf457f1fb190b9b3a9c45d60f7b9824d42cb1a9f92d6185dffa63eec180a42fd5723cae2a61484237afe94025d75dbecf67e7de3cb6ef60a21c138a2885919aecc058d4381f9f2dd853b126ed9df5ca46cc9e9ac4ccca32a7d9b817fbab863b2eb407331f9a058bc2e8bcbd4a23179436ed7f96d6df4e438dacac64f81564fb3805fd8cbf6134d37e2e60375afcf3ba09d276c5f044045f32afff6d86c136ef86d37cee17a68d87c60179b2bad3b4d103c5cda0e1a066d30290cc74b76318233e0a93eb45ae80999ab92a3ea916d87d07e7b25a3fd11efa1237cb723e00d9c3684a6bff2d1a253f7f019f77e198826a19f0d7704108d837c89bfa4f3ba9996a39cbaba1a58e2ec054d8d0c01800f359a62a0475cde3acfd937bbaff9e7b529b1422650675aa78a530e46cff28c6149a8e001431d22a7039c557f9b1dd419aba43aca15609cc69ed349d2f091a9e198c1ef9d4108b244a5750eedd77a93f55eb82e78b4ac2e6dabaae3139eb65be0064f0f057e8944f4091e4bcffb61909b224c1b0c220592d7c429f6c795d8d93c10f0369e1ad18dcfb7668a5fdcf0057d6df2646436306f5a808d795994e58a507387bbd46cfb36bec4e720b2eb9480d9578b0ff0b9dd761de9bc941362a64c919bb4ed6da1408b3b28d9c9f2ce8dba847c60140cae5c7b5cef33eabee5c8edc6f00a88398b352e09cecf54ade881416499a22b8eeca336a7edfa7a9a08f2a7d59cab6c716dccc7a142f5d980fd3b14d12183ac8af79f68905dea2b245e23eb868bc7fc4a32a7618d75bd7ce2a950559f0b00d0265dd55fe58c22daf19a47bba29b5b468c7daafe7659eb4677b2e36ff7e98b8d9bf0ad2553bfca9edd0839b8b3831def12c635e550d179f487f1d79f075f44eb10196214d7a2860affad72e433b9554def64d8080742b4e6d802067c2f02d58cf052691189ab41f8557cec308fab9fe3fc22b0a9308a5b44a6437f467372238254bae169479543daf1902f71436b1d9ed887fece1d6aea35fe1510089052ddbc4773646f9b00a21e89862e80644346ebb44863de1406c61838612ffd78260dcb8fd8cc2f79f9d24c425338d4593dc8ab68d9d4865e61ed3289b9b31f72cea5862073bc7315b733a9a13e2a65ba9f47a93121d6491d18e9bb5882894b6f05b7262471bfe712cc08d04071c24280d7d1607f7bf3f1b6e108fb02e14d84c5743562678ca1045d5e137a8378cf6fe88fe145e3e7ee95359ee31da02506ab15825c8c66e8da5f6208486a55d847735e0d351e374a9f94646916fd132e72e4f994cbd57fa6bd0a3e3ef841cac5fa74ea264b290e6edaac22c7124936feff8752a4dedfa9701c8a5ff43aee9f1d230a30a54634f294b6678932a1b3581ba97241dc2062a7f2f2bcf68063fb3d3d3659bf7c166dfe1da7bf54353247c925578e961b3446175648bfefaa28a715d30be373c8771391c6d82d1ea3030ab5664f0335570478ef801090b14ffaef775198fa006ebef01b5f96097bc95f4f01d74cd69a195ea87f56d0dd6f232c7e00a91dcf0b39b29fe20f74e71613bd37a3696f5fa087e251d9ca590040e42286fd28bf62e7203ac087c9c0bb57e8f5d61320d5a9928b2ec4d5a254e39e5a456ec5c848f564f74ede28c7a3ad285329915a023486569be7f5de6b2bfb470db8505662e2e1c44c46ea81b37ec49bec570271045bbc306ab18e1274939bbe2bbcd2c3b5d5548637cf74aa692cb0f40701297caeab58acdd899a831e3b4f118aacedd22e2c2b498ae910fd8164ba2b8011ced0cc9c9727e7a3b42980aab4ab0c9a6b88d3244668db140e150193f8650c9259b87f0e10c8a1557a72671a3bdfb380ee2a64dcba12e7cd6943cda7b872b94389cfd625561d2702eb64265623690d11916b46c3b00034e0119e71de253402ba95952338243b848d24e04884744d6b24b667ce8e43a944cda1b0f1cdc02c89f2fcb2a60b43c18f7adf3f7b90dc80eec7b8977c0995a4be970d5e08eda7545fd8faee6a601d0ee7b6d3771d04fce7471975ac8049b4ce00c6ceb616cee6713d3d4a321e5532f7d554f5c60746a85f75e786d62aab7dbfce5bdda5925a17c5607f5967eabc23b483f3cf4c721876184e347e21358814c02a1dcf3b0d47a001d4011b22f6feb3362dfe50bd6518cfc10290ba4cd6e907958dfb36a323503e4eb872e913c3e5063a764217365c862a5a77c4663fae4873319523f9882bc437c9c67a15d7c19f0fb45dbf3e216e05d3741193c084a256aec795a680001737546d0b212256e8f89345f96be79179288c56e2b85456489afe2e3228c5b78f60935fc324fe11a1d49e16fbf436c3ba745d001c2c5e8819b64d220bb04192ade9fe0d47989ec78821e084a935c8b49128bb569eb218d207ed7d5e5ce68a17364bd54d793d29db620eb8819d57acfcf17ebc8d7bcb0e4568b9b3249f241de9029849095d7971c74a84d8446969baa9708b1b40af316fd8cd29127b8197ac91ceab6143f3267133f075780864a4f68371793646b526014f1daa8432bc5e937e4ee340625e9ae7640115614189588a04f6f9fdc19ab3a051ef62836b69d0586ea1188c71e42b901d59b1bfc4b30d5fd75cc5b7d8c62f79717b8be58b6daaa876e8fb098a20b26f19cd55e0ce7b90b26886c61e2555ca00379aeb7878dffc49fcac716d65b02f762d0f674f47ddebaccbe5165e2116eba1557825298f8be6e6744435c535912cdc99b17e8c421e8a34519af9e450b8cdf0ce9623501a8b0ead68c381f93d0c3c6cfcfe714f094c061dea84c8c4afe984866055cfcae7ef530fef01a138224a7a52c626889b4961878be12537df05c3145784939531562c1b1977daa8e663126bb2ec2fa87557d14e3fb4100347f80535f9f447db9118f0b7f0e982c718f97dbc604f2ddd3a9f9bd30308f554ac81aaf6f547ebca9cb910ab8dea81019debd497df72f6f4bec5e593be7f7634416937e7fb779f32b857bd5fb66b04c2be1111b2c6fa66c0fc8130fb4372d5972c06ac60d2d878c38043802335a1f77d2319ecbcd902af846e961c13fe8b581ab904a9fd90a470af8c38efe594415f4d7cb4afc772fb04a39f39fe093746355ca9fba436c50a09443142901b7389f37ea048e511a2375233e31b40f41b35d0197637f36bf9f374dde6df785e3caab3a1750b488f9dff841e0578b8c49a4682fd7947470d6cf0724dcf1da9b45e3fbc4a78470f5b85a4de21ff1872ac66d1be26ccab478f95d910f6217fdb5d7d9fe2b7546bb1fa01cf795cf4b0002c91321395c86fa97e3e8912cf45548020eb50a558ae8452c0d02c6ca4a073952d2ef266a14318cf20aed35c5bdcf974f51cf5084bd5e6107318934829f70aeaf8af4d8daed1503e231c787bb0040b75ae8da8a8f61578986fd07dd040db4aace4ea946c441c7e0e53c290996252fdd570de7faaffb767b63a867f026f61c45135f3845b49cac8a7a74c70c455b225b1d7966dc4938579d941e98db6468da91e2c09a41c08afe97ec3f90fdbe0bf8415063dc2102f01ec549daaf80f91e133846d4685e13028308e2074e9711b3adfd51f5752884144c100dad9b76ae43eb362e7326ab333ca296d504cc7cb59e3bf563f670bf793358bab6df78e1484815c85e91bac27c4d21d7b1b2fa478483dc01edbd6fce53eccc1a7f643e3d91b5bc0ec1bc0f2c7a504c20df01b50d3581530c3fca3c989f20ffbdb1ddf500c9092690d5261b706f2c02d4dd9663bc36be25395ab0fa7b9a7ff52034928d71c6a53118febe137e416143b67e6eba111c265420697796d5e15dec5ad0b334bfb4601257546f0a5fa8f3f8818f4eb85afa8ee1c9e912bbe04b95ab8fd4a1d89dcc3fdb4a1da5945641457ad4ce8c38c7a479d7924c59d1adb4b32e7dea0db4e900d02f1301e8e8965fb56c4423dba40c79347b644666020962beb28f35ff23cd9ea3668459ffafc3789626ffbf9293d76574110bc954bcc3ced0c9e998f8f1df4cfa1649e8579e3ce6915330cbb8f2b43627bcba62c1917c45235c815a5385bdbd91fd90a1b17d1fc47649388708c8a2af4b9ae7c69f2874593aeb89495117eb48566e439f11abd2048946f77ae09438dc95cb2d16cd8a0a017c815b708a20d71af486b6493019948b60e298499a3c17913b5353d5a8fc26f5acd488a7d0edf7ce841eada9b038a27ad2368eba0b804a7a020e14b858ca439cb740d9a322274e76102959aacfc5f0ca373d0a233645ec07809976a1295818ea5a01740b67fdd890f8e4ecc06c940d10433b8cf4f1ba210ac55f7156564e5461fb82b10f4508c0ee603d34b55ac671755d1291b94bba529d00124d48d54a9d273ae0da6277a0fbc5e78b6e0ca019d4ae6722abdc06903dda3a9f9b8f3ee706f2a3746c42d2715a8b7581092841dc1c58de9af7cc2de222a140ba958d18cdf778112ba2d2d5d79af162854c1aef2c5c1a39ac47639d734101f0af6c4cfb1592a555acf76b9ed422901cc6cd0df8f1f8a3ef754ab0855d145bbfdc376f6c7084a935b6e191244856b7bec5b316ad06b5d01c63f07c973b75785c74b977836a9d8e9d7176ad5c69953f55dc945dc7820bdeea69f47cb22fc46c684c161d3d36ea0c6942dbc93faf0a64086dc54340005242eaf027015543d54bc13abbbec51f5b47e9f16db40332bd39fb0f4dc2b079b8dd17a687993a37fe5e8f15fa81bdc714a9af80ddef99f65577c629c07f5887febfee652b991457e4dc0036fb195d2e53b6ba4cd503bd282384820731e28feaa93ee534bd4039ec32a26f15a974613b7fd70137f80d4a7e56b8bdfa5992a003a1c7ab0bf45a44dbaff9a1a61e99e9f0f65954ac38f840f4233a0baa4243f167d9bac54b6889132576ff2ab9fa39f2cecb68be571c363b6d46842b1920e59add1c740d0563bfc0c0744a6f2095f6d24d95e5ce447a460866524a8ab807505e8aaf95db01875a2291577137a0f594c9dda584af765016336e254c3560d854c80b7410adf120b34389aaeda9a504c7654786724cb1b2cc27677ab93c7f59ac649af1834cceb60ea81033ab43c11dae692d9631b5ccee4de86a35f8b9a9fcbc5ee4448c86e5b4a8935ffd19ea61243c2b48a61cdb1072d05603bde44788ae2200811131800edaa55e749f24f13ecb3a3962b429fcb8ae9fdb60adc0cb3c4ecb746ec6479c1ba99d616a0ddeedac876dead2c584101353f312b0d8ea10f0b6b37d07f1090cc30d4bdf5e2e36679923e6df087db05a7964ae7b21a55774933148003e799460fd70caab324a61f3b674ee43a55a9b9077f193d8e2b688f6ea938230c4d9ca3470f6a87351dd422005d76e72800dbbde607e4ccfdec5947546b8cf1310c8553980ba74924d6f87750299dd56c6785ec8da8f326a28ede3265523892488830aeb390d66f50b1d15f59000505ce9d30c36f2ab15a11314c3a9a9efc6b267ccd44075e7862037b09b2acbc6650fa4a815f34413544bd9789faaae0ee5eb80ed9ed6bc8f35d70ef85461262217352bded33ead7bad622762ef040058e2160c425c705eb1e97c9b6b048a3805ddb06987abe5fc7a5f5ad2272063d3db696012578a5916ef8380ea9350c5da7b61e340a65ada32524fcd9d684b7215cf8636106adca8114900b89254c8ac0b1745b3a144bee4e85157a6174129f6cf96c1bfcd4078826517010488738a7073b789a8a8d5e11c0aabe659f62f727d4a5d306f4a4172f45ad2791c09e50954da9eb9a01017e5b6c849d6035ec15607c84d38d66cc959c48b6b95992018fd2e1301fd076b17018c8f0daea4eefad1f3ebdbb2cee73667162316f62f4db2d00191b148fb81689616975e4085e37dff7dda2563f126620a60bcf0bbff00cfb9246763b322305966d948ca47bc8d2e2e81dea91d6d15af9550fbb972490c4dae700114314b4dfd7bba4eaaaa45031cc51b64c85997b07d5210f060b36b10e57ff97e37d63a439405bc0075498f78599da012a97de8a4d1c73d694d77c28c0f8751e7d223eec86ed50f50ad17a979192074d69e2f994b187d8c9853db0b8ee7416f98e45fe88d2303b354a656bedbc8646273357e7b33f199b62ac57899d565442046c255b596912a6686b21d242aaaa858bdbb197b8d176ec60694465b23994423fb29f94af331a5623c3c444d15643706e3bd0085cb8811cb5dca79434a17022b1a61aca2b27da0d20a64a1daeefe121e6c001e7b3bb388c73a5bc82e5f931aa89529d620ad3573b264e07dfb733cc7dd6a09c239cdf49d1120a3de1ca570fa9bfb8760f266e992a8211e27cdf3b32e1afbe6c4090d5913fe71ad51230104ee096f5080dec112a32287459c23f3b5257885488b3300d051a4640db217c08d8665f1b4adeaf3e11b82563a2257c6cfa694e96c71d6e70abe3b2b08cd886377760f24ec4b8c0daeb4c5905e14fdfa9ad37a9a46742029065bbd260ee23d37901269e13f80f1e5f390fb4bee6bb458af6d9761b9e6da0f8f66fb0364ab55791618faab639de2b09ef4d13420b0f7037f778f33e3d49b94a91883eb1c73bee6518e155f2343a902ac0c7b3d927bc461356ea383d35a835bba7779eee70b6ec977c7de5b48f974c655c85193ebd70e0ab69c033e5d100687f7334dd2ce2513a7c6a3b58b1d4e0a1a7a2714ef8b586337fe7a72f111b41d861487fe9fb14e1b418514b2a85d293c4ae8f36f75b22d7747b6130933d7b26db09753150803e3fb2613f58174127ff1a3c01bb5755c408c1f1405bf98a20969c0b185048c5487dc6a8a509e3481a5322e2c064a74b823044be76914033ca575e38d903417f39a500fe272c4566445b1cf72d8349e1a02764d4d1a0967ec5b00f38f03275762a3f1b93709876c0e4c597c173524f570582d1f6bfb9cca359aa95126594006992b0ca8ff02ab618db5437574299e91f2b002ed249753db1b0dd7bc6f23a3f6211f88b882bf7a938f322a444b91935eb6e957ee7f3aaad5bc6cab0e8deefd9410f6ecdaaf4385ac03325a4366406948143b459eb8d54f9f645b3b7b39a5ce677bd31032f1e02dfc71fef6d5d4bbb3701b8792114c5dfececa0c4844cda76bf06dabbc85509c37447799015851eac70edc3585682e635c0d0ad1f04ae79f6ab0202da6bf09dff99bf9c19af6bad7edc18d6ebcb30a880b7c22b7280e0a0e12727d267292b7f7d04448ca206aa64d4718bb873536d8f3636c9ed9003082ea1241446874be145b7e9dee50f015ae5f9acc76eaa34c7887b67e7e83b4f780663748daec46284980deb84afcd18199105b55cb9eb71c038c79f4eb27b71d880c0e73e07601d836947338667ed1fd2760fb12b5dc41acca3313a9b4aed4e404f118fd29f804fdffb7710f33bbee90b32179be5ded98d11e827c9f267c1ffe04759c98e13145ed3eaaa7408be4340dedb9bc18d06e3e779f24e5cf1f26fbb6c73ea582c8833f582ec82d3c38789f79a9604e966d31d6eca67e87845d142ec8c4ee2cc480c5a20a003f0c8290d6ea232ae06e9cd732b4522614071ae1e6c694591a1c21b2ecc3e1e45c443d3372818600cb11602ab47587c7682536e7e83ae3291cd34eaafca854f1c62cb71176d0a9bcc66df4e465a0be2b513ba958fa175de48441cb625ead171c2262e5ea8d32b36f1bb1e5b5b208bd08a4bead1dd14aeaf3f4b049837394418a1da41033df0547ecdaad1715482e02fff7c75aaa8d6ce2a3866ef2087ecf9abf8255d20a362b1905f624a3e2ef7a5a2b9810f7fb8e427720673a6fad7ce92e83a5a33fd31b8d8766ef06a974218fb6ba3938a226f858d786e79b767ee419f90d1d9f70d154d4b8717fbfa0494eef53c1a616ab64b9921ff4f2c0658b5498cbe703ac6262fcd05a08fd9c07f1919f714dcecde213e4ae2e7df2fee6dd0cf673f2c97e75e160627231ff8b0c415fc05d91246b6f39a82f9eb508e1683e6167a6c58fd65716f77d29f6c01ad85bb9a692f1ef4af6848e585118f673fa1de6544af3b4821dc74cb2dfa164253e28f98b1b763517fab6306a9fa614aafd30281a117a7a73fa47b95ef381bd5180db2805daecb297524128eb15cc66fe1d18a1a7c6edb14d4da6c81f91c040d3a6457d83a10f820d7f844b6f4a2eee69f3fcb24712d768e5b2ed4602f8d3fb6cc6383bfc8e87edc0d70c6598a0ba1aa7060608dbab4c5aecf83e2a4de57489dd98e6bf1feef7811c81dc166dbdf061b4b690fd32a9df3885b93fa5ce8cb7b8a6614fc22ab2de78564da55ae904eeecfb0a13beae680cd89f42b0c08a39b31f383efbf8138b2ced0276249c9ec38d45d211b88d9fbacd95a1f0af9b9fa1b4c11051889956e1e7ffddc98e280eff553e2d4ec813375dcbe7eb7c19ca03676c2d02dd86e0774fbfe4c01bdd29da9034e422dc0761c91215bf4793d98d76e8bc027d2d9e13c31e0b129fc06dcdd6d49ef659397fed958616bfcfe224c559df84568a92a80ec163a59e1108ec1b3dd03224d9857de955e42dca534d551311f8ff106c48a7eea9e165fadba7295509c83ee1487b52ebaa2fef89047da55e923e13abdf34a48859e2309881ed16ebdc093fc39a7985dea922b915929b5492135be978394c307a7615432a0afd9eb6639f9a300917964f0308c01d311ba39ab380c308ce0b141153221398440bcfcd2aa040dd76aae7cd630b11636b92ce51ed346c84533375b41bbc6a762947cf162353972a8a9254eb12eb23b45e939839f62b3f4980d9061ee2f80bfb9edc897d4575f9863245b459ca28a3caf07a2b165865a17c8f4bfd55053e68733bcce7a3369dcc0093dd3cafd329d99dd4e945c55f094a7034998600de2aaff26d12cc1452004696bb2b2f259fad1794c13dcda6c9dd311df018a69eb85bdc6e278543564da3952ce86a3e8905fecefc33ca5494957b7cdcacd7f220f80dea30c07ed01442ffbb809230ec17c591064f7847f44ad38c8c80a2facf18e3928324771a153572b35ba689aa5ebd7a0c24190310938130e76d29f4ec338679a7f115a9310081f3b648e965df3239704c639d030c6f3dbe17465d50a43786a492eb3f7d6bc8a5578d0fd5346bfa1423fe06c6b68c8c70197be1d06557e4eecca20576878031b5b15df716fa02bae3e9f46905d7a0eb05b000cb3a87a4de8f4df8d636db5a100e5e36d303b78dabcadeeca9fd70124237caa0d5389dd61edf03122a993808aff817c0b91b827b4b6086ac012597b64b37c4f76688fe977db2e494721df9e6eba765ca4d0c11edea74490cf12e81b68688d0ac2a0e9ef03e2a336c33f1e8873dfd73635e4c4a3c88a249b003e7b28251858dc2e61db414ba708419818ab18ab64085805e9886accf8f973e65786c9846f4df49d23b7fabfc144ab6b755083af52ae77e10ee31f806df82ffd86b064bc6ec7c6bf835c4d50092d45a7779660691a2e76c8015fe2aa1813162c8661f48c7e68ceb92d51855cf82ee401ac01d2317280baf3b2d392d9689de6c7b0f04f4685fedf27ad3e2c387f63022653080fbcf686898865f588291c132cdc284232d4b0c63a434260f7d873291d33fcdcd5ab29c200739843c287bfa263172235292aca28e7c9a880235de8ae30084a1cf82199bf7918acf23bb7c6bd432d9ec2155fe65c30cb03e5e5270ba2c7fc9c1cd4ee42cf030946c47065eb3a6dca9fd00b8b2ab3272b76b9c584b03d5cee245317a524d90209914986d56bcfab3e261093353da07e733a5dda58bd2478c1e3a28f33cb769c2c8073efc7d7fc0ad8a24a615fbc57d50c0e30d969976e9d527498f18bd248bb6049ad52f6cb8b69d4e505422c0f774c8b724188b61dda98d1cfbb0852f053049b9ed6d17d808771905161c7e5033c40dd7e3f8f93e6cffa33435ce358f9e8c7a314f638320021bf6317f602ed833ff58730c03b6c9c4ef22c342a82ad8ccf5a6d75377ba68c7c77e20c4f1fe54a90ddc1b4d3a49dcdfb7696979e831078157aae2d7b6224150cbcf954087569ecf5e81a1c739c3ba8be12864dd1eda3328a1877186c115f62376d980078a28b1dc2bb2d88f93da03045a70352769f55d9b003962fc7078677fe25aa60f744a728d05d51c954dfd77dba1d387bec0097cff365754fe20f1cfdbfd928a4fbf01caac06679585fc3a425f0ee9390a9009efe99a77ccbb35580f2a347459fe72f0a9baf5aa5549a2fb2758f1fe4b59ae4e563c7f67227500099148773187d14dd060e5cd912ed37dddc845cbe63eeda1c81cd2a8d50044ede5fff7a1164fd6fc6b93c4835321c24bdaab2eaa49fd836d84dddb8121cb3b10dd517d8aa02dcc9604bbd425c82146453064e9e1df75dff117ae7c4f16eff82b19653e52ccfe82419a785d53f509d38031bc58bbae39a232fc998dac1960ee5a60385009f0e9dec77e2d5a7d4c81435b73df6ffd89313f94846b7e2ff2fa0aee70e4cc489fd6a100b556903ae4e11e02d78f3c9d31f84e041d06435360404c956e91c55920454c87193959c2542d92b3053fb62fe0cc486deffd96c5d86e69940fc75f7bbe67324d149050bda7383b3a71b9e730496f2d80752f6c6fdd3d23df49173a6aea85f9502adab70b92b8d65de1c3d65f9483063ba519263a4a94a24b2d801208644a19edabd3c0810981a94b16822726496f13af129b9a6db27ce9daab5281786bc91f12547d1ccd4c2d99c80e4363bd692c4a1a527c0604e25d4ab5d1333b70be7879ed4daa89199cd059bfe386c9d518640090d343a657ba54ca6e8060eabcc3ed226d01d1367f81537ff3408175c2f6a95a69dd6b6a918300100b86992d0c87cd09ad270e4daca95b337b6134d3984b966b289125550da9e66c5790055f0e2e61e049a60ae1da1087a199d9e90c04dd7848136b4c97d9cb2e3fa473837ca555f34b128b452ad7e19a7dff3080489ffe466cc0be474d9cc6f4573af5d734f722831a4b061b5f30a3ea72be95beb50a3a455843d94d5bc80ee358a140b450d0229579dafa33674d6904618a67e0f8ec49836e70bd45d0ee332f61105b43991d0ead63a3da570feaa79e71bd69b9f53bcc87fe31351a6a7eb7986c0a72b03d72bc0ee22bf1c7d55c056379055951b58684ca87fd6ba7e2133d24ec6839cfa86a139ebb42f5aa52de1b4be78e7410112e5a378052c76a84ace8a0ba40fcbe90f06fe0d081bb83883ddf6f45d48b8811c2fb8e7aeb6d7dffb36f2fd85389e6e195bf5c5858561e53832d3aa7e46f5d041c9ef843ba48f3f76367c0ea6d1aa37a92f7bb968a53eeb6cb9f28d8195012c878fa7a7eb4a1f0d1e9d53bc65bc26fc35447f53469be541333dd6fc611b26e1f7dcf1ac9711060abfded12f1fdc4901577576472e48fc244f2f2c1f25bdf00e92cd80df18e01627996e6b23b1b776b50a1b4f1b2dd4e4124377c34385269fa2f3082711f8b0c8dbf60f95165c6ecaa63318adeb30acc00e20c7fd889f70fef093ad288db7f59201779d415146710bd19589a5838c4cbe6bd535c01e03115957208932a472428b5e5944503ef8e416b4112c93154d85a2958935af3578cf953db67cb582df73a6940547afb9b693b810555bc7d38629ba941252fb8217086a94e28cf55fcdfdc8351c22ba71bfbba18da3a9f20cdde148a8fef358848bde19b383c8ca6ebf1e4061186a48333035d880b53da40fc2f3eae96a599ec0681376dbcd1efd7307d85ce218b1108f0f531c86d1d62b28f4bc0561dd3ebc8654d5b28ad56192a59d5550e0f29ee95ad6dae6987d0276c242fd0aa2c144b84240d3e40e8170db3dd458dab022f89c06a57e90073061946ca3e659696ce1066ef46613b550a5a9300f4085647c8e97f99f53f635a866ad0025c3dcb4edb9a9f51d15e454c57243df3c55478ff3b3e464ad31bcd693ac72845063c8701f7ec4bd528219f93d2db15d883d12a06c237722840bf630b88d82139e2a3765749baa91231d199f95c78a60927992170dab48575dc3fffaaf4e7d191dacd421cb34b84d264a5cf0182790fcf5c5f531252b6cd8d341a0373dd016db058e893d452fd3552d55e22569108e83cf3aafae1975736f3d1f938566d80f3d4089ce655aaa87ceabd5574259668d39a0bf71a238675c5b3884d57929c3e932f8f4e21e3a52aacdffc32740ef2ad0a332b0dbb7196cdbc4b807899ca1b52249451ac5f419199f0401dff4d31ae214820a352a5c9e0e42f1b83bd71c09cf6b05d7d19e28900cc656dc720f85437e9e429c83b8ba05824e5dca22d37f4e263fe0d44f603f61af56ce746e4f8fac80c9119608152ce74bb38580b893ffdc7b2bb45a6f455091fb401e9229fae4acc1f0ce8b910262f088e7d6320aa7e4334705feddb22f01069bcc20918020f6b67b6d59beddd2a4edcefba908afb616ef90b4bd9f211e4722e0623d09e5136fe33c570a8f127b41fd814cca4dc05ec643d84365dac3688bb5556c303604816fcc956ffd2813cf7f19088726cdf396f5d68abc7d9bf4b4556bcb3eae268bd4617cbdeb26c2eaa426836614706f112308174931ed7b26eb68678064a0167472c4bc653a21cc38bbc4ec295110c19441fce6b5578e0865da9d0abbdc8819b81d364e1a165cef69aa1adc20dc0dcbe32aab559c1da3dffe433028fc2847945ada39d7e37bf4d8ae61d55352235d239881fb257457e0968c018e7d72be80d874911d4075a0bfe94ed9dcba4d99ae1331a4d101c3b44cb778e075223e42682a84f577d4039dd82227f9d7f1aa71bb1982205a5c0c0ab904d8c3e2eed1d4b5e850f3b632ea35eb2dfd8fdfa92727123f5df8e3e11ac557243997d9713fe060ac4ab4f1c91e10698c514d1b3a56e8e7c6fd5c8d47bf0026125ddf2127f216832badd4a0f0fbb3af166e64cee37bff51ea712702ef9db844d6aacc6f939c68db58b5e16fc4aee193a7886f2a5a994634ea0b409ee05974be4be5dda5ecc74f8541ff46d3c9763028c0617b6def6dec9e5bfcf75c7610dab9cac20c7c012d5907b049babb090a6e81d5c9690c71d3a4e8cbadb98cf8d1e32701f23bd256b1ef8e3d5b976da74faee4c0b47698b56e5689cffa430b94b89989c37fd9366dc9375d69962fd6824d88b3c3e556d54eef2a0ca3f4c8e7846c940c7500a624d7264ee6612f08bb2b2fef2fbc41b6d8f68c151ed03809335fc0182840b454f97f310f2d87a01ebc76adf181aaf0957700270d02ac4876836cbcb4fa062ed4b863dcc8d1ae5d6788b30af2a1d92b75fdd2e3c421594826fe5071e3c6e782d0bd8d11e5280170c5af26f6fa3401514533fc671d41faec85801a54b9e97e974d0691aeafc52348744c12e98cba849959b640561be19a1d695406442fda8e2fde7ae8cacc67280e7ee104b50eab01cabe16fd4c5d6bcd3271c5852d6ccac6e6043c66cf42d00a5b38bb44101b6de6702827f89d98ec55a419e3ffb936f8aa8be5cda143363497557c77d76144af157a5b074a3e67278eb8449418fdd78eee622b2a52fe006d47b07583f9f7c04355cd28b23b609728f977c80b0ff1503dff4e6416f3fd206704f3463a899f2e8a439948102760083fa0521c842a8591e3fc275e1a04d4d959b0060052128a39c9852bfe7e38baa4e8c778d1e0683c78aeb3f3efbc1640be6739d999faeceff70f545bdfa3920542085c55aff88ad7e92eb74fa63980023b40df7ae77dbc47ed712a7d18790240c81e153d214b78cf799a9d76ec67c43eb8e2fcf6598995c76de15a9d97f87eb510a552d03bf51476a2164c51fa9a7532c92aea11415de6dc4a126b2a362cf9f16ef60ce60e31088c3bd2efe48ae94c9f04b697c9c7e193368f354ac7f6b326bae08d85e8d3bcb9c125071a6a096b5cf159997f930d53dabc49ac5b189835499128cfacd9ad0bb89bcd33ebf6f6b6519bf9c2cc5d0511b6ef72ac35bd0959a5ca0143a250f3efc87ddd3e975c2d190b2f9ba194679f14eb9c16d5fa1070dd3b39e85a7bfb1125c41d834e9b276dda74e972951cc7d73312c6b32597d582729de020aafdc134dd4b153612a8848a19b4a759c56d798f5d60d4528cc12b6b6ce1799623b0e9cc51a34e4c79633af718b77fb037ae54b14d20959d7e4f7109b8c63e2d6278b39aae8d57353b3518522537a7e6ce2e5ce929dd7970441c37d8eaec739fbbc187b948feb2e0769cfc34644cf8f5602b17750ddbdd49236b0daf9b241623c246dba15ab9add8408e4c39df5d7acecdacb73bbcc777cf0dbe0140d94bc2becc1dee18281003cc6ce48ae8f4f66e64d2159ca58ca429d206449e53c76466f29f62cf16d119821df45ea0ac2f8d3c40af67cb1c8ca86786b2fc0e28a5b9f5d679762195121e536f4cddc2d7fe5e11223c5125787a92a24cfc7162f94f25b2f5f82bee90f17eadbc30e1d33b55644e4792342cd6eaf0ab5596dbe2f52c7ea7daba68af3ddd7abba1ae34c8ba83b166c201960d90f4fef9bea865d2ccf6452f95aaa34b0ec1ab576d074a638d45f0581d4a96be6045a1ef135a656a74f9b1798239904476507766a7212a243316a76f2df89b9ac8b7df4a68f0232dac3b38238b2715ffdacad0bb028a42588357e3fae10fe5b1541579ee42df588b38de71333264b81e24e387e1ce18afddc00ecfd8720ee145a48c61130c224300c8d2f0361b19bc541eb4e8896f7278f666083ae589456c9efa3b55b964f53c43e91a1a5d5e73887dd6fc4af066e5b5f65effe7d94d4ef607351e64e1f0e42099f1f51c425b4ad0e2d85c0adbb21cb1752ba73395743e9dbeee99f68aaf601435997e4aaef20a29693d942a1ef0dfb709c685a4993b2b0335a52ec81af2855da49e0c6e639ce5b8801526fcffd800926c08029fc0fab8a0dc501e673c6f11d58b4e47c3eb79c4e4196881866674b66c8c5bc98fd21b2629db6334c25d55d716c532ce61c9f6bc7c87a2c70fe70bdeb49d8446ca02b28f5a381e6ce1c9aae3c2d8f994fc3613c83a5e9a6414705782dd3b5fa58c39f774649436713c4fdb938dfd03ddc541c00bdeb460a0c7d15afbfa61297f37d5b60cb13da92f778d177344e34151293cbea26ae4b589a8e549382359eeaad44cb1f817b8e2c659d1fb2be40179a417d923568b63f6d41c3459db592e99b29a2c825ed4cb395d7e81388dd2eb14b8f2afb9d2889655ab4b9b1fc4625be4c17403699039f475fd5326665dd6fa5dd438cd3cce8ee6b128a4add69d0563b8d8f4af0b0a0ec34294a2a9b47915cd21b04e2229fa1f3f0c72168370ddfeb1a7c817c7762598ecf02b3a4745bdfa02c2e278ea63df9766f0547ced7615cb321b54875ebab601235a285bbcef55ba634f7aab4e0b71dcc60d8281680b85b5d19871b064267308f1121df62c57e995967851db78fae3adf806ff65ab9b3e372420d7f18bd310278cc79610272edfedb68bfdd6ffb54b3db1ec06996a2c70408225bf59a455e6c33feb24664957b20be8641a6ee420eb9e2a1a5a6e3cb0eb9d9e7180cedd67740a081523367930d48b902a0624395328476178475475b78b78355cc25b4aec2cd49be14420eacdbabc5a38795fee1cc95d2529e167dc256cf6fb488d7139547487c58ebe08c2bae2e0dbcd7558c4b062b45c1251e30fe437eba1a0848634f62f1c2bd905e517ff05f9e13a9076c7d128030f42d638fc379f0f222f7804b2871a3b7d223ea3436859551e8b0f96087602d1991909cecbb60ac1466a0938f9b328f0e2944d9964ed93bfb592d081844f1fe997d82c45b7df9827895f8baa8183333cdcf9676deb7bd7dc7909d65e8cb8b5cc996d443cffb7190f1ede8f61889764ee03e3ccd9a3f56c509f11eb715f0108b468f258fc6a8a4ef27c845b11dcd3ba039787e52801148f8186afb2c10d9b1e79a5a19ff902b613492759507acd89fa7fae88f751b17cc3bebbb5a42fdb59d2fda5480e2443a3a708179995c50720685ee97af41ab010016dc0ed4e03172261b314461fdd376f526519ba8131bea6f65e797938ffed504a6e79a079adfb6e89cdf7d9d353277c5809b45bed1d1df725dac8b490c65ce7269f121d6b1e5bac67fa8adb84f21cda2832e66ba19bf7a012034e6d83046c6b86f59b8765e45aeaefb45645152cf23e041988e9e60204a49db59586f4b0406e0747cbbfa7aea09a100ff7654908f5f7979a0a7e1625a078eb04397cbfe68b070d79c336c0771e429c929c7108ed96f213e86915bcc97aeccb8bf55e630ee9b0272ad9c6ac8b3616c528cbffeb3162bc8ecbcfe9f1c351856a3a344b748da9234ee78021c7792926895be6de8324723229b7e40bf658461424731af01faead15d8b1e466e43ff7844e2fd9037d675e670c0129f4159c62c774e0c2800edac8135e1c28f9856db3912d63d3d42f57ad532024418016d74ae092103a6875d26b91d1ca257f830d2232eab60ee565896cdcf0842db46ffb417746cecae3a22180c9978527d8d5b5883f718b9ecfa54ccac05e599e1336dbe04efb2d5d35c4e0973a11aa9932f13f5cefe01ed1570025d3227a1f22052e5aeb5dc3232c8ced20e7a41cadd879aec81bbc014d9f669ae12f6ca0adac5ff7a4b2b4643f2c58b4975dc8f8acdbdcc655e3bc98137f4f1650a8294bc5a587beebc5c52617e90a106a43195398ee26fdcb9d88b5d3614e77c9a03f0c1b4db0c2389759a8591482be43dc840d01aec2fb269e5fc40ffb19fc4ffca68a0c4516c8972078324cb73a0884c5a8df3f8d1818181bc9404eaeb437047119b5f57c7b998c50ace56593321871fdf780e39af4b9baad9b0dec012f1c8c029b668f7c1ce6b5bfe738f31ab0b7c42cb10bf8ffe262309ba664cab887b34f44817ab13fcc81245ea753670c4f74d40448a75a5ebded131c9c6d2302f4c506d3428851b5ab9bdab8a6f9ba0bbb51090eba3f5f43873a64f1d210fe7a8e86342b2c4e0ec4747ece636ecf1ba11f8b2b9a7633aebb52a3f7fe45d33d1bd36defd6b72923561774f0505ca8aa455f8fdd4f5b0d29e654d8244800fe0fd4db1636b066ff23254c7b5b4768671eaef6d8d4858b1ea4fd2c8fd6a78cc6e642662a2ecad3c5d159b0652ee70d19ba583b658521944726c88155b92b5f5b96d6810875bafad0d509cc1bf2a1dc8512ab1eb36399e85df48e7332ec5a6b177e239e0f9de635f55f982b9c875fa36e89539aceeb817b7aa221b04d995e3126665a9cb0de387b316c2d39696cfd8c56b6abbd8a545f35e745a8405b0445335713b5f9423e0cb0056226c5b76b2e49c2af4ab800e54d14bacd84e9e56111ff110d834664a99bf62f85248bc02cf9015f6c3d1a2bb2e1cc0921333ab22561fe314943ba3d7e3b7ae1ed326a991500c33857c3cd1bd4aa0105a46c0104002664a3dae6a35b817dc5c073c6aefc9067a06f22971d54248af5ce9c36066a24df476577ad33704fc31422d9b311f472edae7b843e421c9c479fb6519183c918cf7443dce06e91899df8799c9a1c08d4da3cf98f69e43b34b031e516a69832b99e3bd5e53f779d83c1334ec66aec50e6fdf5e23d53091aa88fd646fd3a5c270f1b5fa61e18634b48cd0a85cee44c2292d8b912253adb590c32458cc2bf3d74e4a23b4d6ac0832a094ad443c7efc37d0ea9cad14574b3ae1810b5c0a8466cdf8629107bb4ec2cd7327900b513b02d872ba0daea3554d494c87d6978f77ace6c4892a87428a0c739c0a27d2c4a316ca49e43c05d2c2775b7d869f7ebb91463adea5fdb406a021bd2623e2aef462da757cdcaf2a625acc2e0c28bfd2f1cc02d93c298d9055df761250b179c1b751a79ae49da175beadb1ab1565d2e5596444b97ebc7d6a86e382816683d7e86b2e594f1a66f743687181898795a652015577526242902ae44f134857e71bf23a06338f4f9f7418c0c3d4fea6c6a3ee802b247ffbcc9cfcf572ba3a1edcfbfe30a4ae761a0ab938c797c12012756f492a5cf7e106803827f9e6135eecfcd4ff0796fbef3b8c44a0553b996a99de212ca48f26e529631ebb93f005cc688d4345b608313fd4056654874578a0092715e11f40f91890f0057cae5e4909d91b75d30afa3c00ea047779f487f1a0e4ab2017bee29fd657f5e3da75cfd8b785cb7dabb78ef2bf02a8a20ff6d938db47afc1e7ae7bc5729121bf1c51d9f99f7472553a45838a15027b8f22d22cb28182054aade6fad2417ae44c035163b16a63f5ac25bb99415125f388905e07f905164005d850816033b1efbef171153301ecd6e6eb787d01135584b91847c3700f7aa6750ff0e64bac66918a722b6b09f3f39727db722ce4d7099b56438eeba5449462d0e25f725c18a7c9b495c8f4f9b93270a352210bb626f165d556493856e0ab6e5e57e176bf8bd23f69ce2fce1cddc32efd0bcb85301e25e67e5c61470f7f117a5523479755f22b8f024d61caa49278087c71a94a4eb6658f242534146a87151e156e846a2dc51adb38c746bd565ba7a26a297c0a71f517853184623a8d4dbae18dcefae3731e23c8c55e1e12c74ca4f1251862775a6a65d442ce68640f04ec474e15bd2fa00ff6b7012a1f4b77f310df394819290831f1c36a5795179f4cbd74515fd24469a0949cecdff26cff51d77759b81c0d64531841dda7b17a44a914c8bb2b134efb1a21b7e2a75ba6df7a0337015d789e69ba976ac0b94408c7d1485b518261df84c744d7bf60f02174b570c739c21e892b21ada4a7bbec47f52c68c23e3a9323e54bce4a68e1340e2dea1f528cc4e8cdfb790242f927b267d816c1c1b4537878bb42c899511fa023a88a1392532dea7442990af1c92d29ad6a0930bc130d81f31eb98c911b40985c36f5688ee6a4beeb8ea7b366398f12195aac9bb9719defd9809699650c244e517ac851785852b05fe77f7d33b21cfeb4749f1cd0c37fb2f584dc16d06220f879dbbd4fce477ed57f4ad10035f86a47fcd91b5868cc320b9748a38d34635a1d90cafff3d34fc628207b2bc9e193184806abfb4b2458b87bb39b2629770f3c4ce776fc1d441db331f45eba49297a29d0c973dec21381b1017ac9e6d612c3a7d2f0fd076258fdfd6c8f3527257a557654f9aa6143ae6e7b19635ffd1e11a1a98c8577c02efcd7bf5ace9ec03d53329724d0aaedc84351ea9edd1615f6af9608d3b94171e900054e1ec9eb18fa9f0e7ce1c4a13bd59191ebde70229f7f0516c1474aa92c3452cd52137fbd0688db23c69cc9316713ed1cc5005e1c4f263bb2b34d34f7d72b18fdaf3b5208536cdda23b4bc2791ff7863b46ca9e4a74f01bb1fa8ebd2da5fab3ffd9bbbfa60d5150f0b1327147566835d8847baed978b5a74ca3231857610823bc85681946a41a16b981c9225552f83a20150576e085c8ba7a57fc29a363c70f78c68ad7368e1c57e87b1b8b1be7b28d7c114bd4fa8136365eb2b2b77c48f352e7a52e70249ce364433f046035284572963327f143626145a05876cc3e6356c87eb9ef5c82f87bd4d21fecf62a1af835da681a126d1f04e9fa19cd1358341c897d2ec078a052604f35383ef3a46862e9523fbdd8503989ba4a3c940678ab674d4d0a5ed4aacf7b89f715cdd4dab39bbc13911b5e1d96e3495a95ae0d0d8124b16181d325d054ba4e34baf483d95bd34a02cf4cd83dd0baa779385e7eb6f921db3d731c18b5269efd46aaea8587ce73f0d4986fc6a2e0e484936d43fb35477cb63bef232b44ae7dfd627ad9cdef27d5a615c01d6116641bc51d8be416af9ecc6c8664eba15babc578ea9823f42bbe150992d9d304a3a98214b994912d6b0a873b6365e268d0446601e09fff82fa7e8be7fa4fa6104cf9f1ef9234611bc9ddbc4813adbe0a6420683aec0e09a0b27bac0adb22fdd30a4925659ccce463a595c1fc5f20172628a6e33a2d8f9fd0be6471ca8a4ccd98e06fe34c74b6eb9ec453159abaf8d441105acde99219acb322167a3d7951db4b439fcb90298f01868ac58410aff835ac3ad6ae7c43a77a63fc80da374008944d84559a72edddcfe7f34a89a92e17cf7c5657e84110c664c52dec76d62c0508e039a31ae3f29647e443fcbbacf0c8862030d0d104c167b095064a0854f513cfa53e7dcb2749fe7ecea3d29b42e927727d2b6b819b52cd1a78f0cb1e86b7743a7c4aa8b25bd3019596269d50e52a18c609a7c494bc2d7fe8bdea6d5aa046db4da5e9a8d6086467e3f99b84f664ed4890e26880a726c382d0f0df9e46d6f6c12d056c6f865c92f3f08ffba15e65c21e88e2859ebe0d7f11ce2cbfe8a55a1a389b05acc178be2c189650ad25a9ffce53f65dcfbe4653e5561959aa1ca0b96879d92ac2183f4cfc499c8e6b0e6587d5a9193e6d4a16dc113b7c31d5977dc31a025ee15c1f5916060b9f612e30de7e268c28e7a03502ff5bdb97002b3f04871841e251564527494b3dce8e146df0b644f006304fd74959cecd02fed17c39e0bcff41f35ab45b9ebfb1065d662bbb96f42542d019e97074e573aef524a1d23d825c089c0baf9858a06040d8a5cc8383e8078efae75f2da4bb5ca996282ee1517f5764818e376bd8a1ec00d9d4e3ac3563a1b813f5d9524f5b1843645acac874898fe3566c41378f819cfd6284604367503363750a82201c5d588843fef83901ca17b8169ded832c6d077a2f9ff7588d219c939efa47261ff6208c1bd3dd089f9c04dff2ccb7f50f53cc60b5f953fc7fb39c921770a52f8bdbb34e436c3dc0a50d257dd5d9a617bfa7219792e93592c5c4141f04b69213b3da41577a97915f5d53b0541ac701b2dbe8320e4d8aef6593fccae1dc417c7f83d4422660f1b0481c8fa78844907c9d0f786be8c3a7c5c4a330b91bc69d05d12e69fc37fbca59fa422da3b2325fcea04143f27900ccadeb311912b57a281e199fada5d8c6ff62fa5700649cb0bbe0495e50e375755c417571c9f4770f102e615cba91cf61ef5f9b9d55652c78c68568d8bfa93456272327542db4af05f9b8c4b393ca071d1677292c43478f67e988d7cd050aa0086f235da90d7ff69efeeb3c9f984d6ad3824cc3b13d6df683a51a1014be8cfa3302e978982993d3cde2be143d850b6b73cd12bcd9ee297ab49448cda8e2b67f8c40515f44a831d20d93807067f563bc523d5f81399dd5dbba603a1d44a0abc1a54f5ad20a190a41a3963e2a7bf5f3d35ece9caff1896fb079d7cfd23f4cddf262a1029717fade81daa78395e8571508b842b4c9af1cbeaaf9b5623daf19ea58c0a0920597126c57ff9aed9fa4f03377d8c9d449c6d36f4b903e6a52cb396730758d7b6be279a2bd80a3bf80f3220a52d321e24f0508723dbb5c9d66d9859d5794d84a9d544b53b9f0bab9f2ab046186eb04018df2e60a6df45d55fefc92714d3aeeef5b85de229b1ac535be8e7329cd566ff67bd8d7cd733ffe318588498cdd1d73a1fed1523f72e6c8dcce0239ba6f87002e06acf9b2ec96966f0534cd2ed71945e4b4d6804d69c2177f732ef9a6413ea874cf559cd404f997af1a2b4a47caaf5df1a927cf9ca3c73c58b96016c9cc2827dd8c023600688c6facbef38ea68541964201068183966b7fa4966ad74e52c09f955dabc800599979a04dfafbc58a9b0a6945df33abb44683974f5d4150713387778f7baf50cf53141f710815dc2df271679ff58cb1d8c1023a50bec40def6bd32e5feaffa4d16051483c6983c90930b9d60905bf5ce382ad6fc3731ac513e3681be4181c9e5f02deb14cec0a59a6205295751f6a42146c56d6594713134e158ea3895716a6d194249e3842ecfba590eb111c271c56bab1eedc3f07f1c413df91c63086d0cffecc62fec696132dfab4ac312730f8dd8307d2d5264290db32a691e22ec2dfcf1a268d03cf9c370d1dc2e7881a902e78f80d1a3139f07ef98d5c845161b3b6f9c73930b8fce65e4ebafdecd284955070fa945bf128baa25a4fae51a5b265220a06f60306bfe0f6ded008333ad5f9612031712655b3beadbf8305f3b5fb04387fe95b9b3b9869e500d597186e53f671a8b0ed0bdfb35a82fb4ed434dda91d77106398e1ca9ac060c4b17838ad01aafacc457312404b18b997c9bb7803747f881b3b83e230755333a76befd5ac7e16a9ebc2172d9c7b331cf06932430d60e1ba0fc2567d059d49e7f83643481bbc67f7592a1600d42ee1c55795e34b069350decec7a9bf2dd76708584f56bd85345065692904cf0cf280f9c716b27c45ed8c44dee8baf57839622dc9d7de26cf214aa5b3889ac3e113bc3357ce27fb7f30f9d1bb50fb85f188dbe47ae9fd8536f98d227b31e39481a29e5af162933b831219a3603d5d48a085c1b197c1b6a2ba03cd8df8494b60a7967712942378f5f3408710e6c8ca3fd5ad91cda3402126931d534e8ec8662b24035cd5c3a47deba380e25e05c1b5c2bbe1826a976e24625c722d6aa7b7487679b34cf60b5acfe443b18c6a58644c1f7a01225c4c98de88d6be84b4af4c6f86cdbfffb9249219508478a23607fd5e917779de64fc3f75a1aeaf31f01cc256762664f01cd066c93c66e2e08bb59669f1212057a49f9e324d6763de7ab81d0d684d41a45a60e02c2d711be7c66f8d712c9c3f4080391db67361d4d474c09e4cfb59a1936a9a877e66534acc1db9c08634dd295693e039e97a6c32a5fa0c4f52cfe53c7309f726699d73c6c553d1ee20da07b5dc0403dc38a26e08936c56254375f606c01bcd482620da55549ebd8bef8aaed43a7e79164643f4730bebdcdcbbf609d01f6d14c885936eab541c5a4a8ada7089a3f294afbf67d00e4a55dd513eea1f52205f2564b22b226af77cd5b2a8f14bf3e9c7215c1064434ed3b3e686d1ec629265282ac2e927c3ed4ca3c6dd63b2220a42489a3347a010b4a72cc7a39a9c9da640d465a2db04521888be35787d69fb59ecf3b5fbf563acf755ac9fabad93d5cd7bb23e0004cf855a900d878160df672001c8305a378b15a6c9a7ecfc7035e0dd78a16b3750463f862497b750f9bb8ed0d6e31f95866b8ce6435af30b998568da72a1145d2573d308cc47dccb743eb744c9a199e8814c0ffc1a7aed932aec96ea8007cf887fd4248bf69ba9991eb8f71f24decfd6a062be8028a6999b0d40789de01e2c39074e4ef052d3de99da76b0f94bcb81509a4a34fb4e9df435f892916930645dba35e8ca3022fa36a0c54da782c72b9ded1b31712abe62a2228ed8d395e71bf23b26e156df960d1d092f16cdcb54f9eca7cffb564a995fe045c671b4f235b1b87f1677b57556170184ec0641b862e8278bd2f6c978334fe7a88b9f3e8c19c8f60d9c1e6de61e1532d3ad0a4df386efb52911fdd32abd2dc946e4e523a4d1f9864614ea569455d3583b43cbd449e7c71b36e906fbf0fb78c42f392b0bcd41d615b598d966e277188fba43049064192e6b899fa383ae8d83cf3e9c9e387bac75b6cc261dc4e30d876d91b4eaed7e60dc5237527321d69518890ba8e7a32515a33acf390088171ccc14b001fd778df453978e0ecd12850050a6d3581df76f7adc0eb9101f892dd59b66ede0eb45b8301946bf97b175789466e4030fa92f132669a059aee20530f4ea98195e15d37fcdadb6ccd3c03202758b8c2b677f7e3ca444652d18c2fa2a4e4fbd269c79d7dc927fd83967a1ea18feecdeffce20d6342f45db525b4acbc752fb96190e3c7a8c178084dac1df90ae0b985871197ddc9e5cf0d1c465aac088b0b64d8b03c8239b92f749b52a359fa6a4217fc664cf6cbd020a52fa98b2f2af627b97c24b73ced25176defdb8ed4e47ab5d2f1c86853a23234efd0e9f68ac3612d95a73bc154e387b2710b8bf36542bf15001d4630ff0a7c1ba3177de17bc8c138ff067f8013832878e776715b9790e8e6819edccb2816001e311118408b813ca8c0f92785afee9f74e8a451579c65eff44baefe1c09189fce78e3e8d6b6fdd2de18d3c0553bbcd543842d9fbc6a7803b2b2d50b0eda8a8281cbd62a008ea577bcc6490029e81ab3a9eed69cbfd700687523db7fbf840b2c41f8452e99a5bfd70b610d76b07375518a8264026f9d1b48edaf7bc2de78095c19f4f2b9e2e35c90367ecb9605d7735fe62c220e6f685ca1f9e71d845cc47aaa4efd613117fbd124364cb7a13e3483d455142e2fc3b4f59bd09a500deaf9b945978cb4eefafef2adf36a52a43f690b87de1438df485779b4e8ec636974261bb7bf3a56c3f3b84a79ac2e76665f58751581df8fd7dfca3a7dec6380fe14e068ba1cbe4cd6fee1441fdc8328ceaf22603e0e90b79141236117e5e5abfaf601c5597468f5e36c9c31ac1169024c250c612bb35e4667c8c2da12ed2f9381b1c26db8ca171caf12fba7b9946b4cab98e919bf01781df594220adf3252d5be0435b7d426967bfed25cc32789cd97c63d387d0ef3d891deebb9028f5de14b994fd94004bbe27030a50b7f504e00cb61b34e70f976ac4d0ed2df772c1b495e65bbd97e993be010a0a68148efa1d7c238cac0d3139b81554da5503be5889ee3ea21c0c2f4208498f89f12ca9ba82808bef77c4a8cb34f6b7840b2f5dd12bfecf878c49e0fee1d8e02192d0ced39c578447955a2e431f6c2b53332c8f0f7deec71d568e9d9ad92975e1a8c263cd33dcfce55d922cf4ad71034532a88ecd5116d53cd65ccbdabb1af0ac74dcb4cf7f4e49077e27daf7e864d6082a856ddcc50844b832ec30db348babf9bb3d937db025547b0d3dcf46b0d5af48f7c946e267b4a0a58083d5bf3184c012d5d9243aa1516efb00ca5128fde618ad6db0c732ad28c78faa202315a825d67bc6ff95a3874b8051e2a48c8d7cb3b54bce2a04705c8d36b45cb870f38f64876ffd718ffe80d9b2d0c8197acc023aa3460e56fd14c11a04bd8bf64de312d693ab7445e8abf137eaf5308608f1f6c8484de1afa9252c76f3fd00ee0d583115444edc6e9df0500d43cc35c541ecf6f16a6925a74b596215f52a841586ee6fe11f46e34d7f399f14bbe41a855262646bc317c48cca42388f997be123dab1d33a2899d032a07d0b42eb6e9dc6a6901f2ce1b061957977fd87d8195515bae24807cad9d5e6c64b52a1ac25fa98fa10cc701fbe0f0f50ba061ccd46ca0c0358a4811195dc292a9d434b2b5b3098ef7a9fbe121c6ff96702ced5d2da61a0e55374666a13723ce5bbd58033b0607053f9cf29ee39233f95ff8189996bb385ad8c6bd2121827cf51b312e0ff602a9868b989c7abcc4eee0492a2458e737a4bfbd924a39f862dd027484afef35d33ec55ddf0fc2eb73f562edd6d61ad9be58780fbc9e72ed330235da8dcffcff8f0831157cbfc89d814f1930224509e431b4533576fd080c44fc577e6281e24b18a19a646a1cab716e0b187bb67a7395261c6c5fd50897f32e044736722c2e065b4366466fac85b861ce4d4bf03b05266716c34200ae559f34152a1be47f85c878284978b1befa97249ea99e8c8fa4a1318a4614cfbf7ee68ea38020a0a4ab6def7d2fa1182a8abe8690a6c2634a7f90d99a399daba212c695fa43c5d9cc7b77bfed82425d8b1e8817dfe791efc15a2b306c9fd4fcef20c0c691189815cb55116f32f180ecdf8811b4915ea82fe4bdd14b1b2838d2fa0f2d7f2271b01478007b247a50b81cce37b6666dd7da7a4ac95cf20d685eab4dbdb80b34445de16ac288d97ce35241c8691aab6398e2743e9534f8a7a104fb88f2c34a0de8b7ff76e6c1d9000981ec4d8e5dbc6f90050e20c960879e1aeeb7a737e5a549025dc2160db39b2b68f654f6cd1a4c128eb55ade49adcbeeb733e28bc278ae0011b52cadad34c175c58e16119d2c54483c2c95fbe3a20c864892cf4723acc35e2be5fd358fd38cd3c8111a9956ed62c7a9cc1bd08c6b473b300d10b174db052b6258807b295cbc2af802a31c55cc20b1cd21517eaf6cace35b9000e5181628522192cf0ac3f9f3bcbb0d1371701e9e5a5df4331d952d312951843c3bb5ea3bff7fde960e3c36971f51ac9eca188755d9217e6b0a039d1f530cfb6a851cfe6c3212c8dd841cdc790d38bc6656fadb65363359de6200005cc53e9300eb0a607971b778a44a337968b90058452e42f60b95e36d7041585b8cbf46b4f3ab660db6701453387456dabc441dfe28c3d2a9e08b4c338927011f882e0207fc7840be4b04ae75adc777cc52060c0921cf30dcdba0995c0324c3f2c69907c6d01ef102f9d9ce49d762233def1fe5f022b9e1271c25036dfcbb189cd728b61b29824c1e53d7ed4f4b30b7ad19c7788148066e4883854cdee94594e830b8ccde5c9da105bbd38e056d070561483fcabc420fcbac31f32552d0b804f2314e964926e5c3c776f5b53290dc78d2b6dddcb8cd986481f5e9390e287f5b7d379de6b721109eab4cd822aca533876538369f325ec2b2ca36accdc69a3803eb3b47bb54e3b7a94ecd7b289e4a4e1d6a393436fe164068e134b3e1fb785d4b781433a73661b3e9e14629c738c6059c0ca337b4182d208b10ba28c9dbf79aa3bed84fa0703d0b0c9b074b598590ad533b11762e3ae886ad1506ef5a2e50c18e906081718e5f24ec0ce17b20388b56a10026726de0f904288ab3dbe4837e26013e9a03368f90767bf95c2624a011aae52aae4d06e08173e791a95c4b4ae0cba5fc33ec081e5fb2056310b49e6b74535e8cf9f8fa36b1eb47a806eb06d16a589246ed7214ab5e8d9140513a27f95890dabae551fb8ccdf1500e227c09c6fab61dbb51325eec3e26bc903a02b009f03fe6200814983521485918d8aea551ab1cc2123dc120d5607dbb783e7c4eaeb0987a32a39c5ba9c7626e637f1964f0b2faf490b0b33020573bf16197ae15ab6df148e0910d8010a57c1297087ed5ff8c21c7d999ae4152653051f1604912953b0143d66b8c4d24bdb7279292a11744075e9b39256b71cf4c6c148caf70f1f2a3c6eb1b7bbe340d2222dbe3e5d0e875cf41db907e1eb3d47e9b92ef8535f5873693046365d7a56c148823bd79835070ffccf2e8e4c5ba58562469275b2850b0133cdf614d501775c5afb9e0692bc16bca5cf7cb6e5686d88a636a10c3aaeb76899cc7d569dadff4161b2b44b205d968b3f5438bdfbc3e8877976d1eee672dac199d339cb227768e6c34fb0740e4e7ddd9052e5241bc9075066e5355ce524721e0d2e77aa5a2f64a839db2e9fd947bd289d6adb1631bc9581053fefccc165d47ebb965bfe2838768134315e99e46f0a80ff7851907832de26cb544e1b338df6d831f9bb5a6ca9c86d264ac57d338fa18063b92d91aecbdc537b02593a0053e770188c1175dadf67a3e9721c881bc60ca4b80868d409e4674e8fdf56495174346e2f7fb91c850981e0516b41ced3f40185728d03b35e591e3adad4173f653822946d34c292d20f5e692ff4bdc166cb577970270b60ccfb19bec7a8e682f46dc8d2b0fdb3991f6b532c95cf5d68f860012fc16d5e1644150e058eedf3bff85b2df98cbe7adb360c82f81a3b5cf33aa272946aa1e9f529bbae53d385791baab3e3a507b783fd77bea7bda68d9828e47daa2c70c0d3acf9a6fe882b76a197a69f3036994e37628509e2a3a435780b034fc052d6e8aed99599e05e8ca8a3d59e7edc38ee878c1f5f6caa2a0d2b049f704770062db304b75e7385abf8f5269d710c928d559ad4a559e2b4a1b056f1076c28f6614cdb4f577daa691cf1256f027d2a7fc21ce90fbc6cf33ab02c644a808b1b965107c7c13d8d8f77adc4faa9740dc95eb8dada0c66c067a9921bba997bd6c9301818a4e2672dbec8e00e6109eb4620bf396aa8061cd1f8520064a66f20549f591318ba8549811c4cdd1c7fe7b87a6ef5fd5d5c19165d4d924afffb189fd66fa7803ed1d4b15b808b42452a1e5ce275f654c0821cd4d3a446c2f8cfd9e64ca90226c1472570a11541cbe380d7894d4d94a2e469c0d4c99cbd8d1029a0fb62e2ace66d8cb17b2278a88ea8a544eaa94e3236050366bcaef5cd49c778b2e6f3b58d4c02d97dcef41a3f8e294b48ea4cdea9319b94a5b87116f1a9432347c5273bb45a4335c392f9f037aa89b50cbcddc9d607b1397c10e336d09e22c424afd38f6daf69f1b3699228480547fc63719410c27859d07d933491d4146dd2640aa981535a09bfd3e245dceb799bd7a62b5908054f6684b1c24e0e05f1e0e31b0737ddbbd4e36526b3c88de092980730ae114b7ba5492a6ffef2169b9cd6a5890d3a9551c10ba5d4fdf7aee184097a09c63f4dd62370c7393ac7bd722b85418c111b4284c3879380e6a660d23943810f534a0e5eb62785918d9fb317ed1536178a9e4d49ed5d2ac919a84a7b157de23abfe437b44440f3098389434317a5134320c2e7a487d8013c2ca3b811fd09bc7efd9580bdf71744499850e93ad2564a1e691fd7f2e5ddab3c766478fd6a423d3d2ebc45535e14de1fe6fe5d3d56fe589df83a8633e326b08728cbef93a03f30f7e82277f84eeed8ca15693ba42ab438cdba1a508f21b1abfa12d15c9c7385e0677358693909b7f430f988c179531a6e7e7e677bdad1fea8035529c8c638de7cf7f0a428c6a3e986a657a0f974691f36f6572327de134cadd2cda7c86e56f52890573dfef2077ff54af573a95abef6e7c52e4a9d735e7be7c0d418cee0d760c900026dbd44fa891d2e85dc69578c290266f63c68313b584f4751d0f7c4cbaf0b9a0d254f1c36b6f0129dbb2ac1003f4d4f4f80b4740f936e176d5affb129e9217017b13afc5f1befce48d3d83f66628556eab93af9d2e1317e904441d03b8b746e5a1c2dfb8f4e89cac369394cce8e1cf2631c76ea11561dd1d3be04af5da49f418e53d262bc097bc7c8919eeb6e0d475100f593ddcb2cb2d99c7dba58ec863f99e9b6e31e19ef2b4aa0716149f0c0a295ba739ff0124d1e702bed6bdf94aa3632e1da1730ec8213693218523ada1693a49bfeffa7608368efcfe34280226297f64c78ebf606d3e005647905c60be625ff2d880647aca6130169847fb3678b747246dd404417d26332c94f2b1aec3236ff1fb2566cd47c12317d5edbbe13b73d34148678dd0ceb711037d398cb9abe0c3805f67503c9cc3e8e6e5d731a74bc3397b78237d6f955dc81a192b826b93a1bbd4589fd96128edbc3aa19f0f2279192e2d0893fc1663649fe5a4c282328cbc86ebb2fe03ed2a481894292782eafc83eb6011b101e0a9cd76b01cee931b0e9efa9cf58c7c8f2c0906527df1e7fc4c970937d5e43d4db6333e8ff3427f10df4453bb170caa39c26b4b1acbc92f07976138a5e741bf7e138fba4750e521acee639e4c78540a93589d8d53f2d98d8f0ff88e5874d1c3e52dac9c09eadc12378c857d735ba769e664f5597dfc85c3b8b4810e9851491ad3c8684d5b699846c51a92caeba61fa2a70dce284b0bf6cb0785f74b1cf12ddfb4464e6613073e8841b7142042850b8605a2f3e4ef3a4454889f99ce6e754d245fdec4041742fa34ff3ba1012e90ee5809b70f97caa977ed077911d3112ab6d56b84eec701adf074e1b6576d852bea25b6a817eb6c3ad3863d15cf72963470df5f544a5534febd462f443d714e8d30e9b47485a391a4702d12191631644042220c232af875e059c7da6c14b0d073b01562e763b83f2441eb05405e3159899494a6ba6992b4de0b563a8446cfdf4eabe905b992ed772f0c3af087cc4b2a850a35fc027972fd95647a7cd6c5198e351cd1fed8c10bb7f03e0af98804a109f40bdeaa86604a9114c7bc6a1ec8f079caa6d3296f3329aab19a84e6af1fdc2d2fd967801c5b41a78eeb45ed75c5137a563e8039c832db8c1c19b465d1ef06fba294b5c3ea290268db63feeab02e85339627b9f250b469584e4ffaafd7bb5b249b4f076e0f99ed52c8578d37f0449abf1afdb2bc663cc177e8c9ab1b7a1adf522a8602093d577915cabdf6edd05050497a3637f7042da7a9aeef44cbe1566950defcd256cf9b84995abe7a161eb32c2db9e033d33729e490ba86703afaeb38e3ed14c0de7de2b87403aac8c583448a36e356cd0e028ce0f23ee28cf935d03e58e150536df36c7eea4d0a7191cd500e9aa4c3e7d21aa01573131414629ace92f153b5ce6ea4dd7bd83f949a755992799c054104c864501272ccdfd636ecb6170f2109c59fa523fcced8485d55f392c20e8c3af8b500c86a78a82cd6c0a800c9bd582032dbc23f54ed9ef5916cac3f5778bb8c57d523f3164188a78aa78ff038414d91e7b69b8107910915733290c99b6fcef561b3466dc748dd0f3d1e9417d49675db62d190948c5d578a3f980d2c1f868d94c1a52346aa23b976dbf0e79717b203b3090b4699f6a76eb12db20adc0fd498058aff74e4f35a81f28457cb48e59d950a750f04278b2db19327b19294431eddc3bbed3bff235705b10b3948811f07d03badee543e789e9516a41d773356915cc6fdf348e355f0561a1a8222cd00cd623ba6868607f6473dcbc7c0c1a94dc58829edba05728a5aaf5ceb2c3f11dd4df98a402dfd54864ce0ccb835be3472140feb06c600688d4d213ebdea2358baa22b74a280a19a5782ea72241fbe5cf3d2338809920a48bb3896494ec1c6b5f9eb071454609e6936a5887bcc5e2c90830a70611deb889fc0e4e84b78e649de3b066112480823c8be1462713283f4208fe61ffc4f99a2ade0a0d96a2866e8b2138fb4f086c0a01c555a97f7c69cbae6e6aeb499dbaf0b7c09328d47ae12973737c801e1e3538159492cf83344e0f1aa2179de3c3d73529744f1a4a91c1a0230b2b01c2b692aa4272b96be075eb71fec81188ea919ed08779608b340e5527599da483fcbaf13b466cb2e4b92ae1583fb02b3c11eb95e18ae421f5708182865a9b01c49e922aa7183bb0b2a9950b76dc170a8388f79130414195eafbe0fc698fd8221c9329fc6dcf2f529f19eeb0bbb87ac371a07f99fa7700ead7d8589b67c51aa10632ec1d0106e1117568222899d31deb11ef6c32fdc74cea2cdf546756ac4f3780c2c7ba4eead42c4fa80612c42cf8acdc4ffcf2f15c5970635feea7c7d7b5638ff094d2e7153f2edb5a4991cd8164dd18a4cc60d097709e885fae7b7c511c30749d5abd882f9f97e7e237323e1761427ab5d28d7512fd05ede83a7182269fe2879784b1c3080bc85b03764098002beac529c98b4abba9dbc8ec98b20821a6774f2ba27b9453e85ca87b813dc2ebdc4aacc74a3bddcad623a85cfd097494782a3b2e90c2523f230a0cba5c58119f80a2f06c96496d42ea6eb6545cabed8ef78d9c232aedb29ca05c7b132112b73e16bd5157bf7d3be1b618a33279c7a6c9ab8ee4e3be08c9e74caf724cf2092eadc3f78e893fd015b70e54814f57bd3cd738420dc0a7db3ae4174c703d131e2300cd68bb9910fe56040fc3ec8398583c66b475d9f13887c1fe3aed4f44c3837b7b6e6ef1ed4d36e7ec26b0a5d977140aaff19ac6e869f8e9965b0b029046f29876918843fd820bab2e7fad7640e1d17fb2db0fbc9e66b830fc5471a4e270dd0b9191a4fc60800a0a49d0d7914d5df1890570c0feca19e47d65b5e9ea1e2d05185d215c15f0071cf933527cac574c6cf5b89050d6d8949b511a94442bffff0ac2fdda29cdf63dbfed58a17df72555cacd5b67197e7807cca4782bf16b925d9761e198cbb3d1a5f37241cdb2414bf379210529a0b0a4e37babdb60413c1e57a490da8f1cf676b950b4d6389f9455b1acbc12fdc1b0766f7936c47288b3a6c80e5b2be8a9a3e1471fbe8f2c137b51c29c381c70b3a82e7aba488851baebac8568b5e8e309acddbd4c33b83f97525929dc1f31095e024e98003f55b422ac06da9f4d55758cad35272b36d5a3fd6fa251ce114874147194cad7a1fb9a41ce45b35f8a16918fe07d2e67d651cc5ef538f08f571b892f16442544f36c710ee19dff5f6c9f2dce3b1303fa85e49d4786a040c6a589d9dca1db3e0ea7c0d7a075697aacbd551d65fe9adb87b26e8df37695baf4339f5db083ed420b929dfc5d2c6a7182263995e5da5e9e9028b46f82afc478a17dab2abcc2efae1d343877abc63ab396d2487a2017e7c25bdd936f15cbc97447af8468fc6b7527f2a63de97c151f0ecc6db5712765303180f9355b7a5c43ebba1f9d3f8812f28a80ed8c7af2636b025ccbb63f78044aa816c6852621f13ba8dcd23cee6ce9a44a8fd7c05be74a3cc5980ab799d13ea3ddb47c253660d97020801ad84e13252559db710141cf34928567ff66e0e5d49274447552fde79c7b06b0ee4ec81a9b8fcd3ac3c1577b1ceb1fe97678be314983fd723c400aea84f5e4ead92dd4f29787dcd3533d9ab98c3d66f04f36b40200a20e6983c35bb23a77eee6e04c098e98a14b84a285e2217d9696d7300f3aaffd196468116a11a5cd2af99040d9adf709c97db0fad08b99666f38a92cf0a2e7e11a36a1340810afff60a4cb8b360be372c2f6b7725f864e22371183783ea4d7193eb92c9a72ed64da7923ddbdc99d4211fcf877d324555c0205d46e6b9490b1356fc7231d1f0344f1108c79c52ff287b9db41d8f23e662ebf2ac4ca312d097a1150eeb4d641a40469f3f7ca131d43a254233aa5d5d256d8ff871f191e4ec55ac74fa8ba26205a25c3af616e138c788435959382f9d184f731d2c975512e9e9e251686bb9a1c6384f8870fd2c6234440a88ac846e85c3d8fafa8fc54c37c7acca8d25d7e878c9ddd5607170c9243ab5f27a7c3d4d035b27ba5a66c9e09dc6e3931bc5ae16f02c27ec415c586cf554bde71399c8b8dc7f2b8fee1b257b14fe156a35c2865e8387ab55bb4d679cc7558b67fbd259d2225dff0042034679dd74d8561e8777cc38ff0fafd45c05ea35444468a60d3f352ef2c53bfd7899c2aad729977a972c4e4bb2dc6ad57bc6e260e6c898ffb0d7abd6059d4e904146e6e73000a4e91301c0ce9ab7fc24a7236ceac7112a339da2df1352fd299e72fba2a46c0ae76fc6af7d446ea3c06dd4174e9289d80db4fb0b79fe5ab254c18cf232f0ca1f6aefb110b1bd089cfe9c25ce2c99f0c9ac5dc0cbceaa99c2dfcca80f60a7c464e8599d377aeeb7345efdf40d31407fea6a2f50419e3fc792da40cdffeef3cc8692ab01cacbee165ffed4cf233333ba94df43da81c01cf7089d67bc2963674b1b012b9dfbf4254a272fa9469ed69a1478a190fd7cc082064e3e0870cd7a5983a8fd677fc70e9abd9ec25352e8e266f56c1e3b118d8eb49834092063f17320d3d51cd3166d9e0206c52e9d3b1517db49ba67a6f946dd8cf2d30b5be000f43b3f9b11e983c1b9fd18e4fc8ec8befe1a402bf512f37da20ccd85b74f0757f3589148f3981a13a7800c16bad0cdb839ca96e3e20d7a81a6527d71add535595f13f120ee8712fb4d0ec58c58e68b3bcaa6f8f03ae2c2fe1c4e0e758498d884670ad7823e995425e544cac4dd495dd7543623e03596315664ee83a29023b4d8a023b95eb6558bbe0bfc06b8bf46978adc1fe046a4486461c9fa70b74e632e4a59bf42de3b7f56af8e9322f7aa462bca93887b78d86bd46a0babd8ed4b8801e647e1bfb2d129a817d57f6a2ce0ce960dfd721cef1e725b02da17d0d7a9c750501191a3fa2991fbcdc91bdcf0fc8c912820be7820d8fb60f2b9f5dee464b1c84e1204b603f505c564913bc723c4e09e311da5b2e5f99a31a2412e53658eaac796b1a2fd8499c454ebcaffa1de1b79963bfcb141f7da53a3c5402279a486d84d27668d591aa0bec1d42fac9463b14da872e57abd4845c1f1df08f5a8f1dba141f1c6e00073a3aa3dcd2383eb0d82efac5e21b6cc7d3da175cb6e1b96880775fdc2e7e44ea33ad535836462a2f7ea57be2f0befec8e381783136339f475a83d9a07532f5128b70746e1bc4106cfa60884976093f071df3ccdd79794ec61612386b5997eb236454bef75be15712a3b3296adeed62c136fde525c0ce6b90db11a7fc9e6fc1ab6f23ee49b2d3cb39fa58df38e730e4b93fe5ddebee22863d50a6a3f5695a44de35fe10257a096cff01ca6d6a06c65e97c26361b520d7fe37d3c77caa4d2820864f12182221e055727708eaedc97f743a48f7295786a46f366b7ce1b793ff350f91859f5406962e5bc38392be8ec16e861fe41b907c74830f6fac5cb5c827fc6bf3608efa370c3245a0130d8ee1d3e3bc147b4a605ca278f3878cafc7627079c4026c9b5ef340ab4f4994a78d09ef66d4b0af463bff21c6b4eed5c6dd93bc8a72ee6697410f01fb96365994bcc00062361f5a7fba090e6bb2a02838abfe3a3c5a67b326ef38103441f8b9f7e53ae5275b7304876f220a3a7c2cb3e7cd51b82e2a4f5500847e3866bd144521d458ec6b69650f0971942e42191d61ab9b15564b7c4617687148556463ab2456ca353a2f65a19ff995be355b53eb056761debd48cf257eb3a86ab18270d370298039b75d624fb852e659d50a6b7fb9634d90e1095286bec31609126631d0b84833d74aac85a5637d7e1bee4d8ae9486bbe78676227d760384922abd3fb9b0b95d8fedeea082fad833c2fe85803b8e6850f3e6588e1f918f3d8ee6eaa064075fd9b34947ce71676796a8c132eabc83752e58d25994559f474a501aefdddb47a4aa72afff6d4fe8cc84dc7ee7752d73bd09883eb6a07e3b5d926f9a57f97f5e1ed891d35ec4cb4f43a4b2b23205451cba3874bcbc82978243e52489962a63104da6a14d85cf3f75584e75e74e75457d6409437bc8bc64f768d87393d606691f3f269385b0b2e3a50bd56fb8fc1743d29ec8f548e0ef9b2638112162e716e18a6e6278e7f22549d3620477af0903972bab48ede3bdb481301e9d2bb9ee930b3e57bd47daa6e24adbc0bf15147c857caeeaad7f4b32df9dc807d3cb371fa41f9e0fce575e63292483f0cbb48f2e6f23df41da76520a3e6a10fa689a9618062216c2b5f52647226efa345d37b5635652311b0c9bf340cdeb92a96d97a053dfa38791d641220775bdd8421a7bce53eec8ea9377cc436a39ca51ad5d719ffd74b3551b35152ee769713df8ce17530962dcf98132036519361d2b6aeef2f27c084a7ad49f0951108e6dd3e461d4f5e29553af4d063c0dda54589bba671a45cfb1d21eb5401b79ad9bada0cf355ba519a3655643399900f0e5fcb31f0e965ad7a1f72d8ea9aba50047f019332287f33f7958f1b45e274cebe97b3e1e89379b356f582d28855d281774bf21e7d74f71c2204b673fca924d38d2c6f92a96bc53f69e98caf392b24a27175b32431894c604427ab4ce37505e03bbc249e3ae0b62411816a956deaddfe6b2e1054b3d8d10b78b4879bf6fcb2704a80bee22e47a6d6beeb7a58bc8cf1d265120dd984311a2fd965a9611f6f5541f89d4d0dbd9a9e86f867fde7879cf801302beab20f447427126f4420ef7310bfb6c82d045b544834fce602bb3b1a0032aa6a904f346bdd110b72a9e451f448cc91dc9dc5ae0733f25d5b1065270bb4f401bc321ae38dad78b6d260e524ef6d868e3cac20fef058ec810bd5324947225ffc6aa648479cc8c4f8c0505d36c65e3c997237c5924dbbb1ffe64fb316810d05813141f4ba6950ee614254110a938f5bb0e963a34ead652b2431b45da1631fa77b14dccbcfab442d0af96665746ad4b640713fae1b4c1cf290e67183545f3e15aa41956d7135054b04be3c0a71e1ebad6dcd0732d6c1118eb0c719334d93890e6d2538fddca93fbe938da85ab1c50028bacb9ef23783be162c9714643c1e60950920a507166c7ca285913717d40763431a9c8c7eeae0b6773820b1a7618ad42dd1a011aec789a73cb84b7c6aebc521a5c5569fa191b24b04303fc8ec4b91add984916616a8e148819965c0ba9454b44cc924b291b2b21b322d7e9d9d06ae4d6bb6e7719382ecde8a86c0efd8ca1c3baeec80d55c981857a7d18ed6607f2c1c2f19e358a07fa71784c76dccf6ac13ba01beeb6644fd9153a808c8d13ffc562d7780eaecc506a46b4ea777f9a3d15f363d14b834912051ca3b1043553c27d2bbdd901a947623a311a33a1ac7c70fafd395a921fe0c1762a720d8d0db710594050512114e51e5d7ea21c98049e50cff1eda479ad46eb8bb9fd1ed414b08b5f96c7a1ad95d02011a100b0acac6cdba7e36a9774747a812bcf1b988590ed46446530579d39148eebdd2a500794e1c5e74a91c7ad0b54587b7caa41fa7d7a021dd6663acd62ce11f6e26e44053e0b8b82b05b7860a4b04677e864a349e60d77ce7fcd657b116a7403be236a182271c47ce168a9e3563ef201189e8575b06756a4b7af9b9bbc1238b468d9b8341026e0e3f5afe8f6b34bdef815f595b9a3afdb0f21e48f2fc0a363c6ee8fd43594d22ffefabe43b7fbd28d997b0d364a56a13b11d456f8f460e69e94ee725092bab8caf0d8efd8d576b7a81b0d1f4e5df5820f43f3e29da675965b154fce31abf32c49723b63e0c8104d4c7d2a943cddb62c682a4262731a759808756b295ce97e802f3971775ceb4718338d543e072b73457f596971a486cad91a50bd58fc10506481d7fcc29557803e29f814a2a1ed1cce7e9622e3b21047690fb69f9da8becf5d5b3a6422cc41980983dac03cd13f5ad40938bdde37fa035d810bd2187ba9c68bd56a48c105950f8b91c203cdec9aa4513dd68d16704bd8e403317f838cf951f40923bb110ecd350339d46cdb5bda5d7de02ce3093925a0687a84a1d909bf0ea61a7fc33d376973db5f3855d9769cdb5bbc221a2d32fbd7c65ad014787fce1196c88d8b9d570d496ac109931a8c9378a24af0e6d316d9b661e3f7470cf3019716138e3f751d0d7853e59398cc1db1a0324ea7777562926218bd8e0db97756fedc5531a9a1c4b08c528e82ff7596e0a2c9ee89e4d71eb6452421617499b2e42c3fda6a05c78eadc76d756f1fcf56e3c00bea6137ab50cc98dbf222704e32956d3d09f98b67be0d01d2bb62025e51a0560da519e9a76320793a36c1907921a1ebb40ec4c3c95f45f3822f4be28a8422ef70cf1e711cbb14de0e8e338258cadeba061581bed9e67734e2b7fbd87672d25a046aadad186f3c6f80ee33e2b69c7a7452711f47347e7ddb769dfc5f11dea9a10c673834abd31112954e5814b92fa090e4942f1cae0fd9a78ce05d748937a7b27692c24f3c7e79d40b61e364e8ec2b8a3c06ed1d2b863f25e8f0740b46322af76247b6bd31337d7632b9e2971d4ebf9a3326f86886d87dbcc7bf545c9c71d95d4cf62e516511f2213b7a77eacebeb1a69ce642321769a15bf8bd8c95223be738ebd462d0983b58ca687ee1e610a16321ae7550cd68cf4faee4f0a4f8f89e0087df9cab0b821e5b428579a2c1845560e8a5f201e49041937b6779efa3795f6312ac6b9ae686b6324899404194cd974c16b90768451fb65323d39c7efde5ca9a000baed1e9148298e7c0186b4424515a4798dece69a76c4d86b93f52aa0ef17cc7a32fb42615626ce06604c1b95138a28e125d9cefe8a65d0b82b4e52892029eec3f5e9eb9e8030278ddad126799b329d430c8fd338856ce0afc0e3e5033df174c921ee60f39f78a84547811f50304224fd53657ff1e6353da9edeb4b67ff299e14e7de5a6dde8ba33d0e51abeed435defdc8f759052c1b48cb91e4a8165661da506bfe0ac8479142529d50107d81e2d5b54a20f6fa00b49b67ecb0d5c5f53f69e6ecbcf95c1c06e2bf380d06c9653fa0e4cbff55e4f7556f90cdc1d8889271da556be1c18dee73aa7cf3b86feb78c626551d7b4441cae174f5fb841ff04f9cef12361af37c54fce44fed8db69a5b7563d3e4261a285d4f820eefacef46bdc0950a29c28424d151a1a7322788342d3ed6659338037ef690d4669744c3b37a07517f6b76866ec78a164dc150a109b1243a5e6dd3c2d9c1f8a65ee58c1b15e1bed59e74a03e7b1af4ac5faed311ce198739a48a43bbbbad1c19fd2fe381801672c64c6a01a1010e6e48bc696a4379da0e77a17ee594f88604a5c6acf45e4bb308a0311d843037c5e5e38dfc086f2bb312ae2a2b219e5fce883086fccb4d42b42fb5bf358e2acdebe80314308274660395af2536ff767a942ca4f2b2340dba15df344e211d8ce3d372dff8233c02ae9ab677c3e5238f1f278d8913d42e441c4a527982b51d2874f7051e304ddcf90ddcc4959431859c4a084f22f3b1d0f6aa1e3ccaa38c499df6bec1b26c8c31100da4dd82020fed1acf612a8d8159175452eabba10ec9b8c665d8d62ae51d5b143946f8e227df4ab17bebc39adddb99f614fcfc2b14c592299d462eabb2df6e127c4c7d81da91e5aae01bd39a9e1e2362b006866155bd89c381c6b9db6b5beec77bbe37c3d3f70e923221fce0b509dffdb56041182f7604f79eb2afd49630b70193558ba8151a18321c4d71b141faf1400937282ff975799cef6df1c38b415c0a73d0281f4e5f49caadcead482e8fc0d5211d9527ada660c57a8421adc58486617e7dd22178e86c6fbee83c05171dce950b5e4b5d5900bd85b2aa0446403db76b13ef896638433c22df4478cf0155f2967eca1eff19abaafff2ce146b44edf66f24246c4b13c3892fee46757aae077f9b932e0cc492e5373635075acbe01139c98d825899bbe7e96786fe66750cb8462639c8bddc8ca445f41ab29a214f5d0ff379dcb8e1b44cae1f6e9540b389211a52cc2cbfbda37bfeb88020f605de4561a9f3e582c8dc72fef971d2b72560ab37c0e182c213c7e3f861e77609ec02b35664b710e1169dce107bcfc9dbe09042a62c481cef1a193d59f20f81fb7efa110a9eae1d13b6464082784a770ee8ea7f20b6bbbf20c122a6a2bc1c6a37be959fc88ef0fe8c4daacd6459b2ff7947b5af6caee3372e528b0c85b9f8f92447fb477a14740d8008d54a1237064ad32b4f83097f49aba14a2cf6f8377cd359dbbbcbbfcbe7ed225fd2a5569a80e4670dc48f17d56624971550e5e8e8d7109156107a5c77b50ab485ca3a266f895e8ad74a8bc111612140e5a2d0496f9dfe4d38bc1935c218da243cfb00e7306b2144a6aa35c1c0b61e8f2fed2b948461672b9de6ca78efea46b4a6a1b26caf8a74c4a49949e7b6554a3c27fdc5482fb78f54a9b222a56de4af6c4c70f90eccafc05c92bbf84b19fd86a0aa251d2363671ee043b20dc3ac19784291d73b274fc51c3ad2cd0da2ef63453dab5c6f4ebb8dc5b17a40c68408ca2079238e39fbd7e7166942d4eec6e5a234cfbc991191df8ed65cb298bf4189e373e5e1950d9040b63557100991076e887b94b7acdc0d1a545db391e0d352bbf335122e4bab47be39a496423e01e4bb2372d4c00c79cb6d7da2bdf6439e8d83d265b5a27f2b0a6021bfa35f660faa30277e156468e7ae38685b12bd6cead572a403c995f6b6daf16d674e149556fc6a743ddba79f3b878b9ac6dcda9b040b7ddf5fb71ca7e0e56898cd65451b054a575c7b872952729213cbc8bd3f603716cbe5abcf1d173b4e2f60c3dda30d2955acf3549c9709c0b4739e5b29bea58c52a8e18c3ac664a90c712f996e3bbb7ec71a38412b1d0529c0ba85e53acb52fc11b190d031ae72f16a25e6d1f1a6ce86a2a000958ad10b415ada246c55af1f6b0d8e01b8be160145878ca8501f64ef481e3720a3402c8eef148adeda87e4498c529f6972bb9a0a28833125414dafa0ad1f4e61b43910e67e9d8508e28560257dd922756d9dbf37799cde725000edc3d5700a60da73a763af12c772103ac7be6750283b26b4a94d63af35c72f6b8094b77d073232a0ba55b9477c789785b7c6b8a9f8136399edfc80fb605c51e76bc172c31738c0365dc9a9363174e005b2e31c71b76279a57589d29fba55bf7cd069514e440f1f0aefe6ffa31de03c4577ef125214d506ca3557433c1c349263bd1ea0d3e4a4a6a5d4e41a4bba5635c8b2a7401c90b2ff5db3e4169efb8ba10bb4bb34a048383af032744cd0d9db59923bbe3e18dae0683ec752897a48a7402d7ceb0c347dca5444e69f6262ea0afbb8a64a85faf2d1cd5be6e5090f437f247307b708c00bfeba1f9c8e31f1dd92769613c9b77460a5b2e4645fe2fd437e2693d905c8be8215c2d1b1c669d3a4351d848e2f7ebaaac364e1e352d2662d36c5ba9a75d3c14287bd77b4698ca5def840872c0c3a903e5d3db1ae326de60dea17129d200220a4746a4f7ccd4f7e536cf0428f3c2d34e4cc50175ce338e26bec9b11b4fb6ce75be01f3f7680ce1c17efc3246298958871118cdcd8577f38f22e87a3637dc5adafa5cf16e76f6b32a0ca30c111f58f600c551bcfeb9377b3345a4dca246ddcc1614883fa76d31496778dd69d4c087c8fd1c8ef65e5501fd2034f9fc1537bc10397296304ed03fdfee8eb09babde968956e0d5052f36613168166a55dc2bfedf7261f5aa32e04868ea8916758f407066fbcdcbebf072fb02447df06c80899f166c7e76897763ee01ef5340c403dcc4b76bcc29cb01c565350538b1a83b78786522d9391d531fe51c49f573a03a787f1df7f42412b02613b0baf87e190c23ab9a325bb06169cae16a8bc1b0462ed232c164e1822a83dbddd14d0504eadcda579114513e388500771d8700ea2c6b6234d54eeecfde94bd0c4922f1957b43e24b4da85be52a09b39567ff841aa3cfd3cacf51e46c89cf536a9f2e8e7d99d4e19453ed6890876ac3f3c4c8cbc19ee08336e9d31fb5f6694958dec09d2621ba89f435d1bd960be34e729238bffd8def7555140dec6889d67141bc7739e91b2715d35759b165e53e34d504cc209072cb76a0143b3bad135d59efeecf8e349623971160387b5e876c64d247027d354bbbf0b2054fde808a4f4d5c103ab0a010e9bd5185d51c311c2e4322b34aa5a06460738885950b5b569c6b99a1218acbed8eb893f217b5501c9679f02701349bc2dac58109f77b58c75fdebbe301af579a7844581ea76509c4277bbab4d011ea9fe4a57e1dca22d1fd92acd01d8e301281995d76b3aebf2145915df8c2822e00b21443944d27c41b243c694be0b88f703b9569bac26c5c20ace4217610ae1d9397d3accd5743659fbebd2d40c43e8485e31dc9e4d17a883091aa291457bbebca8770dbd4516b39faf9525418ba6c9fde383f9adadf46fc2dfcf3f13a809053e886a49fbc020380b7698692c0f87f5a7a024030eaf5a0dedca8e9ae8af43c55f3e6ffb891dd5f8d8a57fdca2706c5d04104a6830f3b3ad9ea2a8d70b1f276aab85659cc3e885fdaf67bcb96609014f259e0a7e47d806e85d9bc92215c57e2bb7379c8ad07515c910fa684bbb23bd3c4f852e40868bc4f29f97c5369512b9b282208996e1b185612f0d50588cca3a441775c6670af35ec340281f0195e51b284d818e27633e5488ac81e6275ab84dc7d4bbd864f6c5e68fa74377bf34d08f91c44230f1d9da04589d382341520cf2d9257cb267183c02363dd9fbce396f654671c8704286d395736ec9358021f0ef2ec9c81a23527b406890193ff3bac6184f6eff5620bccac0499ce883f5660d529de6323dd9a5741047da9a456ed3fd990080a035c786582645147a6ad3b0dc36f26dba0f3dc347751d889e2f02b00f91fd867ec6cd2e0eeca7a916cb8f8012836fbb3213d059533522e9cfdc3940df7cb58e658cf38d0bb52d6a8764c37c7219a055ba73bb44fff8647af375b428698adbcd725c90e4e75a37164680dcda19011f4ad24d0e039d5aec7bc06bb498bf234b5ec222b255831f63896d165eca4ff71a31395c36c816f45deabf124c2c3ea770300d8daca474fb932a357a213f11507df4ba67a52b226adc48858fbe6e81f3116572a5ec6e6cb4e3d7f9e5fd03b1ff8d82d1b1fe43120a3aec573459f90f78c3bc6bffc05afbe781ebe1fbfec06d76964bd5c3d66b99df5b97a4de6ba18f1d67750c6c60be63183e02abb822f3cb89a75b2b23a7216025b2a83d532a76331d5c195be06bdbf6382f5803ad5bd8839e2c8e99ffb3b314ec0bc9a2ac94a1911210d411b5e1eb677f163834961f8741914f522d8dfdf1f178a076325abd1acdb40419a58ba384568c9db64496b3c7bfd869413bf90111a6fd5197c46f420a1c50e975f17d53c601d8bc389eafa5ed496f6730374dcaa00f23f1397c4b9998dc261095653827dfa017efdf7e12cc6e5a835d700acf43947676927539033e994427e72a414a291070801942dd02f309a477c83f2d5035b5f3fef2e7beeb1b7a80a0336352187d8d96f3433b78dea80827b952b73ce3d36ba041316f4d62f24efc1f450129a3fd5fb4daba46fe843d839cb23f3573d2e8e505ddb3fb9b27513fb84fb72a8115440735763ce2ca728a61bb0ed798371031ffa7b1d6bd2f1d282955ae2d7a117b470bb646357a7d18153cbce5ba460b3865b71bf1665ca1f4611a60cb1383988deb57d3b106ded4a15a977d82e2788ac22aafff80d791982fb16892398d4c3f0bae1276705be6aa3f6077836847e1f33387e1125d86c0aa39c9c49729baefe94224b6f3747ff2d453f830d91d32de9bee044184e7f8e934d7abd7fe8fcd82c956fe33fa797cbc4815717ef5fd13c05fe2e49803acaf5620125dc07e5d00c85526acdac31d83d02afa895b166fb7f8d13f55bf3aaf87665a174fcc90c6e38e5c4bb5b1526ab92204b356726c66cb164997e5a029dabc87f2424ac323f483fa112ff5c03363f50f3477f031dd646b4148ce9b188217fb7ccd904e03ab70ee733f8452e5a2090dae8bf4a4eaac68fa7bcef238d07362f6a4c642eb7ac6dca3396d567e40c4c9489cfb74df51f808998bc53c38aa15096ef1058fa7708c4839b0a38fb21364f56d61674c33f336bc561f31de7b99ac365bd992f0f6400985eedcbd10b7221ca9f4af2da0eccf74920e751f9182921e2f4d08fd73e5b3edae87f1b4fee5bf661d0cb63e42021816bf23cd9632345949a5ed9f8842640d4801a6a8cc1bd4531cd3d047245d23bed24a8f107f749ab1e74984734bd29c7a7ad47cb3c15a6bd4ab4f8a43b791bb1b1ffdc789d986b4f732faadeec8b9e50c238dfb8696d3ab3e3d20c8a533a0c424474e00a72bfff5194aaf98c34dcf08fab8653fa72ecc82ad910478f1ec981200189426d5ed4cf0695fe01c09e125b32465b5997eb05cfc5eb27c1660d14e6fc08b5d6b40b93a98cc35b5759bcc5eaa141b99f62063a9e4cfdd7b6a2eea1dfac89619d719bdbd306be576f8f4358d885d7dfe965e11f6c9e5a0a4b406599f48f322994d42baf339f86e4261ab252163e9e0ad3f21656269669dea89c1a156633bc3983147d2f284ec0853b19f6735cc1960926c44740183635fba8c32ed51e1a456a8130d5b617f193899512a687f75c720f871173a6ccd0faa3e8fe53217df3b503f5d66d915ef047d412d3e1396ad58cfd8f76aeedd1bf3204428a471c156b6dfcc8c7ecdc5e4a0bc254622b149ea46ec205408aaaf5c7a81bd853c92d7603b7bc0751d8d1d315031bf66de4c1393bbd0a7b46129bcf67b7c225d97d14f622283f75fcd1bb3900f27c79bafa9d6e3d66f659744a080827f9d4cd666be03289a86b19ea49f7ccaaad9e550afdd67f5207aa6e59f2a8fc32cca13916803d1c836e55669e6c4baba7dcaed04e04baf0013fa348f9f4a823f3488a970b52814f49cffa97c77cf6d6725af6db703e83d6b9ce0a58344fa8a33efd90473f201d3b0732ee05bbbf8feeee8d7ea40c72836d3909f49b840479cadb73b675cc6a09caa72bb715e947829b1c086d62f579d800d7e1d23368cfc29f34231f9f757d4b5cc55f15c1e95426246cf4e48e713e753e8a7c6461c10b62036b7e524e60ec93e3e3a2f2313f218350c63b5512ee6c7d6526ee8f9cf3d63fc548ba8992cf40c67d017d52c3d73e1fd6e949d2cf22274724eb5da5cec6e1a36cb5807f37469f0a2f6213c5359ff55d91eaeb2c7bbbd5cfbd7b7a8f5c791683c2841e1ab8ac34ad2de776e068738d541108b08327e1b113b8bb900e3a705e2bf15c098425536d2b7cd64f300c8e53e0796474e6aa471ff180e5e7a07318cdeacf674095a0d1c09857faa0714a4bcef791a9955f6b916fc8d9eef605c0e18e3b16cbc0305bc91b466f3282b109b3512b31aa09766b670cd441e153ee2546ec2e3cd159c30fe1206fb3d901b88feeed3f23cfd838d86e6886a45c8da2fa2ce7a0f27574adc397d8252be58d3e42e874b7acda7e3c3f375259e55106f8e1cac746355fcb613295e7d63e643631048d7ed7ba11d4b4393d4ae46f26e442ef36edc2bde6dc1e33ee202eead81f29ceb7a73d883a68c7df55fb5fa20f31726fb14b8fa82a61075f27ec0d7eb4a25055a74321a3ad8bd0deacf112d438d0b4514d561bd290c37260ede515ff2076efed7d474aa2921c355a9eaceda3bf08cd18ae058d69690f1ba29d7c728e16df665c34524c3eb0437f32910c11894805d8645e8671a0478adacac8f15991a7f9108aafc1d8fd6f8830c4fb709b7ecf08037aa4ec65ec2112fd279bf2c03b10d37b9d3200fff6aed823f05b6150009ab2a55b65cc789061c4be5a8453ec9eb26796af555a1735c61c01afa672166ed28a6019c91ee5556fd2108e02e63ee89fcfc5edc0b26078fc71a4351b32567140d72836835ffee0b1ce7ab16c4587c1df99a8c6281671badaf2cd67d0847996fd4a93ac56feb83dd82002730c59bd4bf1484e77b265a6870ce9e67024da5de6d996f9abe19fb6f54ad1ec5aabe43f7a36d7f32a567daefb969a7234a0e9787f79188094a6794a3d78682b51ee57291213efc7ea295e6143d45e8444603d36a0ea98c5d959cbe3d8cf80d161ef341bc6a11265989696b8bcd96d140cfa87ebe007222f3bd2c2b1011f014abec17dd7714af677f151bfbcf742103e73a7d5278af5d2866717776ec27b318ca76547f4f5454672897eb6a620c46d13a5679d7c9a69549a14a465ebae9c84c5587c4548b897e3db9b224a11c1928189302c55c7df28943a2ea8627d35fd0153132f10b7c314e77451faea5bbf60db3c57c834a7b5f696a1ae46ff252451896ad7927b5595d52559fdb6b4e89b797262e1fbf5a8e1952a47d7f1aaf2c83a8528c0edeeca9f1431139b1863b915815aece4026c85058caaa3394e4c86f98c13f29d1bf514d73806f77e2101806489c281f838e418e17f86ca8ed99711afdfd75e25b5d9b9d748a8190881553b9d819482ae0115deb865c2f76dbdb260692b663adea3dea997f07f5213c2025838828d36d4f6bafaa6d27827213e8516616595643677fbbc68d853a6c5ec520e05a7efc68141e54a0c07b82947a9f20fbff7db66247662570625a2312065a82e7651da9993688eb3cadfeab775f5934ffc666c8ea3a8865f1dfb5e4897efed55c4bd96d8e1434bf1140554dd8aa919baf10b182511859974297123d84937843c96340ffd2f620f6823d55c8524d4238823cb6d952c7cd9445e89719ba4d4a29fa15ab28893b2f5923e67a93817b9d41b9aab6bae8c1f7c7e7df4d8ae73d506079791f56063b788f73cfbaf33208090bd9e63ee6fab8000c6ad2056769edf58d8f75a4b3dced7e9d80a7105c77e24a120c91683bae341471754f10e2dca1a279bd20289b0ff4863626a66e36f0a398382939e2648af8e41bdfead022561e37a6486aab0ed327e41d5bf5779976ad9081f012eba090a5d4c7637e31ca347156aa2da211c6fee450b1218384ed52751b7ec3af704b978afd60635c84122ad209f0d270d08abd8a177eddab4eae91dbd4256ab50e122514c4a6ef04f6d236b9269a49e4e475764ea22e71cdb246d7a03ef7c1ab4975a317515ffd20720fcc0fc4bef4dfadbd7f2c08deb1da807eb1d4118e71f9ccbada26319ba16517ebd77b7100199142a5adfcabc100bcdb4450708bade23f5ed0f07b84ff31b6e41ebde249391a2955d151acf41d24957321d3c89c22060390935ebc7721cc7519c675b6d13bcc9f4356370d73933005fab222306b2742d7afa06941febcf596e650e3324987d720aa7c34fc732a13e927a5bf38e3d1a19be59bbf7c4b57bcac43f4c2d29042d9a59d7506ef59725362b1f5529f416f973df6bac2c202727ef1295a518acad2a213f20400c610e8b91990ca1a86fd9ed8b2e69b71453e26d7d16cc6238937d19e918a206a517a7a1d7bf13071761f85d0aa837884fc9918864fb3ffb9aa122e22b49af61afd4f797f02ac22091be42e669bcf3805775f3451ed6a6056328947e8a4c72ff5cf017e934a632be0e397ea4cdd94f5a63d35a19972303b434f30d230518e187eeea35dad663251c94f02b16beaea73c5ae6b4b184d81a9239799d33edc7f6da46c08f844151fbf6225d24787bc80442c588ec70138af45da58f899eb3051f74d2947d4985aa5bd5b9ac27e721deaa41498b203e0e26b4485d83246cfb073e63952c0dc8ad9d7966287a44f98183b6f262cfb0ba48e0c71909dfe776d0a83372abe04efb927110af7a552f172b73ab8523bba2053beaa9363ae572e7ebbf47921813a21a40143e965a2922d75fec8b75052118d4780beaa9d3c3119fd870cd0cf1726dfa83e447913180dcf3764f93781b503db4f6b85aaf6e4b7d107e2c83598eabf4bab82c86ebe734de43f1dde30884eaa152d2f8ea3001c0163b5b153d392dc47d80953a94df4cc2d6eb96373a12ee5ac70ccb695820013381f4b398c7335fb094c37235b088c1f50465be4ba1cb4f99c267456597bffc7b24073227f9dcfee73a0900a8a8d8b8c583257538fe141a5ebf08002679936070337d27f6c44b13432796923feb4dbffe6009daf4df13db4c6118df5ed865abfbc7c9d9e49e8abb6fe5ffecdaa9576ac18bde81e2d31bf83438536049a6549db7f7bbc9e7ec5f05f7148dfc113d75d36c6fc0ae50ffb38edd6ac9b6bf611984690312d7c8253fddb0526ae4c922f46472211a8df084371bd8b853a624e5781af907b9045495fdce2da4a3c736eabb6eea97c771d2c4669fd62efbd5304f65ba3bf0d908693c4e216e9db76c784426e9c53db6e065828e176e6acfcee2f68fbf2598d49ab23ed3a917a8f705ffd64663f5ce84405f06936189f0e77a4d02aca499546e071136d5dda26eb40fa349ea4ff60f14a7cf4d827369d7f5a10007b58eea55760f46e71e2b3485d759d42db08f1922e54da0b4982904e3b1c94115b14572c2fc9488e55e7732b62b1b706f584ae089871c9dbf7470150d4a8db894afe937bd247dd13dbe18f0c21bcb18088639f1389328646b46a4f27656d4686ae834badcee5f42a9222d32e343433195d65c78f750f680de4fdfba8d3ccc9ff92a40123201eca1c9a216fb81a96475b53fb09568bf1abc2d6b4b391ead3bf4f3d0121f31bf955e41afdbeadfe702036ebbba788c5c71aa77cd6249b6a7257b13850eeac9d5a3632d6137a56aa4c5e20a1566155ac5711c263cdf15fa8a31aec83bbabf3b2e470cf457c287199e2345664e524946ae011e1363921dfe501f4125260d82044dc9f399c2f191c825ff3df7bef9db180a682e5a05fd7398eaac74925e9dd5f90158d2838d5a37f30f112c5d9b6a7c7d21aad64b171cde1050ba3b16c690a41df161cc340fbe8ec194ea8a5fde64a711274e87d7e5a6212b70f7f90906c6367d56e59fbe8b2a27a2100f4ea6e04cf88a2cffb545a8acfd0cb05a39f92edc9505e54e22a33020c4cf6b355f93d502cb37b6459b7099ff6e9f627592b938d90c5c6f8e29f859dc2e05c3faed394cd005b70d1f99229c49e7891eeb0482c7ab66f208bc767eb8b717e2a7323a615a1c4817b3f94ce11a8aa798b8fa8c96dfa73d915bb2410d462ba8f9e3cd864af7d6892a213555c5a73b6cb0023d3b7d59d859bf9528e708e9dddbf6c58ae8a848a7d7fcc896a4052a0147a81d5aa54894a9d4d6851c7253a2c64d800d1941889c88f4eb7b06712c00ae3d76416abdea39da64a713b8d49ae024fb953fce42f2cc69103ae325dbc8e79b395a6d787873be416cb72bd976a6389b70337cdc75c209cf0d62c10b69907d65de919889d844b07c6a2d298f68ee97b5510ca2f94772915ec11ab5a643bc4677b1e00183c461016f942deb8b3c6e3f087eec96c192af17b644c7769170cba3ac0867586cd47d2b2a0f86df0130fc50720af6f88707304bbc7804270ea977bc476d6a0f2f7c9fca4876a7ce03150dff0e0aa117de6a8e509668cb3cfda08a38d802b862af7ab9595afa37a67470fcfb0dd3b16e4c9cc526963d21a7fcb5f794069da26e1cb0463bf05846a8d2c392ca6778c8e9b462ffca1a2708714f8977da0ade74ebbeb01a738d214aed3a8497ff23704a63dc05d4e562a632ff3df8d9059a1ebb1e5be926ee0fc6b874c66bbdc347ddcf10280bed2a7cee28031643f0fe26e0aa0d6fec187d76027d70b9cf61fcaab62c532d656aaaec091f3b716ec332fe01cebf2721d8f64512ab3ffe1323f4185e1b9ab8a2f4cfcf96d0387d121561149ba9447541120783064945549bb9967c095fc0aff758284ce74de68021f22d4df5a97c98ceb85492fb924aa9137d5b8e490ecf5932c581506a458ddd479b17fc0de8cda6c4be46bb4cca9075eaf8c070002120b249d535ca6c81371c02a4dc3cd637c6995a622370a688b5f49914c7d2e92da16824ce0d06dc413e8b373703c180d72a406a2207ece53a8cbc152857bb6272fad4d1e35e560f03fcf957ffc060ccd93e94089575520bed9ecb170f6b1eb0cc82055b70a8e012495f644e3c0454fcd8262225ee1252e8f3f9756eb5de4c6a220f6d244855583a798f28ece02f14c08a2501fab4604f1f7ecfb8ae111f3c9d1e0762aaa2afb4be9f40ba511ca6d3b1db9a14f348f2c4e5882515096e940fb529c269e66b4e0771b6a08ffc1314f1421df562e83f88f569904efa92218a3ba352e213b8df67a374c013322c696fd4a8a029dd8d0604766acc64fbb75e79d80672029f869e07984194c2e0144a07dbfbf0e2f1224dd68d0b22c68cee0491c5e993d946c85dd0670dffcb04ad33e678cb19b80a3b3d6c8f3a6f267d428f486333fd84e61345f03cc80cb1f69dd8cac4ba3469c4ce03e9eebba116bd80700428f4beebd015b3b93dad366494982a48a84d926974a624367c6f07036322fe965709298de069a589ac94fb917e0032c8b88d626d02584b8afd93fe538f44d0d154148a1e9741993835b04ceb8cda5e2b3a9c548499464d76b2892501d398f3a2b2c219e81c5e9adf99504739e5856eb5dac4eed43895767254c132f47adf66b558b08a9e08a19cfcba97e8d8f16567eb28b39704cd5c7d7545b6591fdf9bd04e18480953846d423bb5a5c11253a37ce3f4e5cf70246a88a524484fa87344fe4cea47e57cc67954369577f5d6513639858c67b1d004c1ab32ba930ffe74f17cc5ff9ceee0146c4f7f51e67742c0b6dde2eb76c6d8dccecc26daeb3d57b076955841dc4671d4a9d97bb1cbf25a77e423640d579398bd580f06e8e7c2308231531c30cd334818af3bf692fd17b852d01c0f05ca999805b038c340b48d5aa236b40b7f85b1ae6534689d416a651636e6669dc3766caad8ec6c1d2eb59dfc0dc3365e7179b68f2725864cbfbe8b8b3d4b292ae8802b4730b0bb89c510ce11cff99f7e1c490b839d6a99fdc4da85e27e83e2abc9d003c4461fe8ad4953d7e1ddd0f95109dc53029f3f78605c38ed53155c583eef2eb632c0c732a04429c120839356cf3af7783217b74caac0618a53751013b04f02591618278d81f9ba39e01639a8d43b9932152fa6383a3091d7e2318c82c46214fcc6a813eb773b72e6712d50cf3f14a67ea0b6d784af67a7dd585d9becb04d5f0f23bc04c8dc1d3275cbf1ac7385a054762a3cf4a326f89c975315974f4465f770031453cbe412d19f24cb308eb7d3aa34a83b5d2e6dd5a0ff0a8f27f36bfe2a8edaa9776ab3bc3a1ae7c98177a8dd1f3c4ceb8aade8f8eefa42b18011265696a22beef499112686a3c17f43b7e3798320d20004b1cd3f1dce620ff008a1f950fa8a8aaa9145f12296b1178052bbdc888836411f3cbf6d9a898ddc2219051e2038a1ca39447f5b396a8988413e4b7e80803443ba934fc76620f629567cc7ff31fad9f19acf06c197713894fc08ff24d59493ee733510ed8035ee361363e3c4bb8d45c35cae3e6231a177a24286b8273eb06e246777347a16f58a9390c7c072d27baace1ba51593d1d38c405a03d6402ecac6e646d23e137a69e46df7bca3cca889f5d26d70d2d908db1e42f0b02a9124279addc9abb1c60e925615f8950f27f61351d32a381d3782c3c385b3b62fba36a2c07e01c80d8670aef9452dc9898adba4f5c5f151392f2e59ca5d658cc46b013604e24b328af307378f683622d4d29b9882a94ddeda8392322a276ed35c6471ce42382e84e41214d4c2638f59ae91766376c39526b2a8f39af1192be1c835878000442336befcfc6a39b2845a9a00ecde88ff11426a29e89f94a2ef4986603a0743c16c69d1ea92a196271165eede650ce2201f8c4e3adafa8e7fbd46fc784f1cd99aeaaf213f8e73082f20d39f803a065d81b65cc9caff8ed7d739141e23e0278437e5665365bc9eaab51e689542932605736dae32a89fc05d76a177996838a093c7e5942f84df58c52360eb36a7a48f6aa8ea3eed9fd3660d3955c74c6f310ee400d1d30b3aea49835a53738ee27ced4232c2d952a5b61ca7393146448319627811329c327506d383a95c089579f6f8e635a045a581ecb4d7450ddfc844a6b96c64fa002239ad670b6f913517b69dffa07627dc468c4a9725e5785a1b3361d97c86838bf197ea2b64ed29af82671d0c938e75f02105949abb75e8fe80faeee5370358c8446372dcd9fc6d30208173bae5bf6dda898da8eb84b909f1f9a8c8852c7c6ec43ceeccf08cf947d2a85e72c99b69f8134ecd9f64607087a577cc1bf76d2ae7b74aab73332308f43dfb6ff2468d4b2f32e84de31559431d7d954f260dcfee0d4bcc480484cd20e8429316d4508dea754a63cc0bb0f58136b903be14450aeaecb33a99be86c8fb6fbab99f7429774451d066dbd911bf392efb33562b1141969a18f57a9e2fc56df4b9cb481e8b83ab55df3d6dc9b6a2b961f71346ab87d12a432f85a3917ced413ba337507190f1d764170fb22aecaaaf540851ea2cba33d93b412cb65a649dc5f3b0e16538d68d754b9e3ecb3e79d1c39673f3270d96a98b815feb5115758cc9d75fafd200b4b0de6b8a5e06bacab72584e6adc79d85ea76b998b0e9f4f25d30af8cad29bb2ec948a7c538947c5a66f5848b2a21f465297307f098e44952257ce1e937e55c2e24137cf857a471eccf580892b7b354c762c93e2a34df168320c30511d680924c4387ea99c07c171a10affdc3b7260b14ea36ddd9dbb40932f3280655f3ec2818117ce342481f55be27e6ec84195db870822780a89462bf56bf3893b8d22c588527477e127ee6dfbc0af651dc957d92dbaa4145ac9388d35136be66c191d2221ffa23db7ea11156aa92925830e89f7ad4553be528ed7012deb39ea3051078e8e4a6cfa9a9fe8dd9832dd326d94120658a7b7777a6a4c92ee271311a0809a675137b0fc6355a51810646276af4c497ed6e8b4dfc2b8cb18b6211fd34871dd27a42daa84f438af55607650d883e7451e6b0a5362242ce2e6ddde2ffae71dd342c3c54b71104a3fa854c6be1310b86079841f991b9dba4f56263a36f0a2bd6dcf54a2cb6372ae6b8c42a11e270020ff70a684164d0661d5b247688952f435d29a7f69a219e85a9ab99db1a4a1665631d6f66d218679b42ef0febd6086479e16ff06840a7f09d091e71da83caa1df83be721411aca8575ac74934b29c7eac8540f7c67c156bfea8114131131d908317b74a43466545a0a81c1120db2b21b929bb2d996ab2d475675e7e0f843e22b8234714b64ab096b675d84d835d92a0acd32b75b0b0514a9bc549ccbd5fb7cf4d23e047d01c0afa8f190742b6f071c6e2012e9cfd0ca1ed13a26f7dfc4f26d2f9cb0da5b1faa3f5f8c19956c26c42c826952db7b2a874dc876fb0a5b4fde117ad298aacd136dcbec13c7058f0e7fc6a495108f3e9db4c9505cd02beb95b7ac99e10028b3d6f86f28be25181a272067e3cedf0928348e3fed00c7229f80bd803aa00477e800485a04fe133178453d56fa778e36b2556d3b89e9a6cad1e7842157fa5e8361d0445f71d405e759649850accf3a057be210014907da109d1c26dcebb38b2dbacfacbbe359c02832550d1d9da0d683aa5e86caf9fff0c5b9e8e6ce3bdc536539260d1727a5130417275ce1a92fb732a77e1d3ae695b944f4dbd4bf0ab4c25383b29decdd26c56426fddb8b98a5dc068c602c339b4f7561e2bdca654904106e4fe9723b2d76c8e6d86efa422ff6cbcb85bb44f216841651862a22a16c2116269e1a50ca3bc5cc05f009b03c9e3170197c4ad2d65bad1ab25b9ccd049fff4996ed0fe2ebef225f12c67e66e78bc80f61726c76fc33cc0aee3a4c7f252b7afa6f68bf11026864bcfed6f4b45b6f79b378f525a00e9e7ec91510061aff864ff647f80918d719be4c3c42e15d8968d56d4177b449dd9f05000ed5cdfa73a1a1d9cbe4ea0f9188d7816e59acbfb4b382183510c20765913970cc03f0a258466409a1e3a13097682ec788a0d708394a9fcdada6ac5fb264ff5c2eb0ec4d13be5ad677ef36640243dd9fcd6ea536a60cc584e31d319ae2b9d2ecbd5f5da66669f0f048c6e95ac8ac198b137dd938e55e1dd7e05072d2586c2623b633df4dfdc6892e8d1c5be2a6880afaf3fae99101a28ffba2d7d495da39bde0f1d457225ed163cea16916a2e67a253ca48216fa1e6e260324d3377946463e29a6f1aad7e16c4fbfb0693986f0c10454c7b44c3db72626796a0808befa5d07a77d38f2bdedc419bbc94bc89ae521e00be3fea4c2bc1e33fc7b4bf9b8cfd87df2c46236efe84c43813ee4bf04de8c65e95e9100329a7620abb09423029c544808e384a126691c8452f2fd7e94f2acdb0e8c7d9d90bf882db4ff2b1a4a377256c93508317c2d8216b8f63dccdbbe6270976a953d3c0b62ac6725e760c7cf8f68fec8fd73f60583d2670e993fa25298639d89f63921d0ae7e8bcb1094a4e2ffb7460187f648cc839b7c101c4960f679e43984c67394313693fa2834820ce9c2ac261b9e4e3f2d8fb5ba2e19225e6d36d54375ee566999840787147360b6e99c77b98cc09b5db2670333420e1f072ce18c79dbc1adecaae3a9937c53bf328e1c8ac6ff1cd427a0aa668be7f56214439269a08215058fa7d718c5b6a5a4ba3ad3b97589f7e8c397e3327675b64a895abb21fa805ded56655cdb39856f6459db453d3ba818736b852ec090278e1e6ad9814f69bab000367e33e6aa0997f353e9ace4069f08ee5f125f72fe8842930cb42c8ee450dea8f983675c7ae4c03c3f9bda7708cbb3e0b40e7639ca18afe9cb77896c5a7ab7905cef16e224c12ab2238606ec9ad07f90c6a9ceac0734214b8b17b2baef16d62abb66fbbce337d7b7eed07d10674eec30369bda3d0d70bd51a85384dc84b1b9d1007ae2cdda8bcb3b03d4338479f016e639e3524b5ee4cfdce529665fc9b6eabc7f7b63227d9dc61a681bc916558a8a9ca088d4ff23cf8092022529b8c70277be17e64db50e77f0e8e563b7c678e2655245b3eb5c09469de8ffbdf014802ead7aa8e5edf4a84d568b390dcf6b5bba20d086338928889d6c28748004988290fe531987f19df0d807bdd41616198c73614e7158ab000ad594975bb01e7a0d2636c16e77d44f1ef98ef36f839ac000b3e212da2a5b89f0d91d5e74db5642805abc31696a4faab24e12f2de171cf94ddba3d5712f7d92ea728e278e60b2872ba99647b2466e7240e76a75081e608a206971aed280d27d4741686b9bf04b2d02f8141692d75e6d31a940153f3b956eb66752285d24b8190aa4e83a1627cb5d4aac7ae022d2c4ffa1759cf0eff67ff5d60df492eeeefa1ec6378286021ed7ae90c1a649ab8a5b08f0bb49fec014a98caabd5a6f2b5af8e1ae29908d23d66d3c7450ecbeeeefd6f44a2dff4820c1d328e7e1848dd56405f6ff0a68c00f387e3728bf39b2474548e107dde4fad781cb0df1ee6f17f4484490086c5010a63a2aed750d2110a949021ea8a0ef7bc36a29f07591823eaecf80202558533a96c988f1a2cfcc02706e8f48295e039576679e083def245362b75a937613c55c31b59ef8a2667e2b67fb93d691cd0838cf2a646dea6f50fc9f37e89fb674e46cca0962b550437e590a4a2ef1b8980c80f28de0f4cd5f0863f73784299ec6f7da0cfd34f318f0d64bfccf60d9cd3836943dd3fd5da5a2aeaafac2888a855cf01f112f8f650548cf7850659033a6bcee34a38fdfd74fca77b3273a29df97ec289a5512e00b0b89dde036d6a2b7aabb267f68a5e920612b9475011eb8a590561bfe1421840f13bfa0462558bc01372705d338786c006c68847050ca7883efddf9ab9e2cff55f23a4be90e903bdac1d275dfe8df8c11e9777fbdc966c4055df17c460cf1241e4a1d8c8555322d9f5c01234471932d522cd67af3431555440b0c12c17f2ca8b4054cd93bf6cfa3e7dbacf0153d3399184fc30902d2da0d4c4b2077f674c2482e75e19ef9778d780f8d71b94ea58317988667fb84be360a6ae45018db41888dc4f3ade3edeb30565bdfef9e54751f5f2ce040a8ca92f7b8f2d03ea40b44bc0db074e910ed57705e92dfaccfc2a7cd3d62a098bbb2762e79c438423043fce6587fc34eec805f68e711417509267244c629bbe3138b1df445fb9e037a9ee976d08424143f169957d09ea4f1fe7384e31e38260ad5e2632c6d543d0cf3cf13a5607348b20fad7762b3642e3ab6fbf1b403532bc601f82703f08026297c37f7957e21b7c1838f1c11fb67cf0e954a1da4dc8c6636f77f8a0d25e37cf4a4e7dee23dfe74b5b77da419e706f3c53b3b7a7cde31e8544e7c105f91d6adf196af7b0af7c4175e8c749f2acfcda2ffb59b926bb6b665182b0d6d6720afd28e0766ac1202b3be14f983545dbc9230aad0bb70625520a474a8c54615ff3f5c298423cf337ec430e1a26272bada9fa2f1bd4681847e407ebcad1550977e9f3cad65748956ba0935cb73a86172806afbda84ac4b9eb2b59e23f4d9629ab314dd110b005ace5528671c97dcbfbb5cc667524fab71c3010d368aff4f6380c9d04b0f0e8ab3356d206e8748dc1f48649ee4747aa21c00613b317869c05ff14a570effd9d331f4dec93af4f0141ab2dba9883175f74c1222ec46f5280468af5b1fef0fbaa50dccf3e9a717724e399c8c0edb41bc06c0314139c0fe469a84f3a3e74c314875121a36ef377617616df57e0cc4cb6d08fd428b9d509a1a0f2976ff6a598fac6d8e12108d3aac7a028fa35e2d546e67e0df381ef0893910f749587f1d9bb0b8093712e0ac123ec65607b82a83caa8ca2a11322caa77c49fb8ef005188ee8f6848e505709ee5a89f22ceb8c99dc8fe41a6480ae9e7ad6570f398d218c3309d8eb283b7127f4c82cc8d92df267ac8fd356a2aa574b8eeca40c867509c8649ba4d076a1ebac17503819c230859e0a0e624793256a86b0488f94648167007fa1f6da99eba1a0fcf224246e8d03a2b3bea3a8fa1574724ffa7831d18e32139f823a9dfe4acd77fb3201b95f5ff7763d2d3e7136344ded18e32a365b849ad43e1b74ae3a62955f000de80484ce0f45ed54d20f37202ee108909b28cc84ccd6a789dc8435d98e7dfabe4c11ba30d266ede5f0e0e388ed13a984690c333568ae87d0d333756394c19179e6b000b2fd4aefc0821e7378390314f0f6ae381e89b4e9603ee951deca34dedcda97c2eebd6f3facb169998360468d0b555de2562d9bb61626e825cfa6b8171509bdeedd72ed802dd0ff33fd18693268bea1b5f7888d185e7cacdd599acd804ce757c32c9a0937f9816d4e921686730ae5bf4b58bff02632ffd68854f731e4cd20ba831e7cd6794e47c61cbcf94121a2f93fba097f97e2b24822074a53798fde11e2997459d372f46ca69e555231281416ce3a362fd2583b5ea0cff584fa524af5b59f59d921407406112dcd90d44afea026b58b1a347bb1b38a6dffc764f6592858d7f2f6f4e236db42161cb37506dd58109a7b6c35e364576ab1d58ed79a9d861b183f0f11ca2ba886ca3bbbf9f6c5f70927806220deadfee5d9600b25be613062d9e5650303a7f8a0c4ea9b298ef1175c1011daa1b3acdbeb2e9fa79714f981854e36ae9673dcb33ff4b58b0bcc42dfe76cace7556f0790b383b38bea4739b9814a351d6829c8d88da26e2d6f1949f60eeee6510fe524c350d6431bea93aab3373719202eb1dee8fe2a6ede3a08d591f8d436e0d6f2f96c546575ce9edf8c3714840ccf6abac12be49e743b7d28ac11b7faafde2853f65b6873965d039f3421d6b73db81bbb22e112cf08c03cbdfcdf4096f6861e5f8f6b176ce6e8ee11c8af28a36b56c709f8ffd15c73889edb67dbb6a76c9641e6b7740f6956829b95f96e071da97fe5ef7021ffd50031739ec4e42d1a70505eddf12d257515b8192081ae4488c169fed989bb96176226605f57eb0e861297d7c172e3d814a2f967bd8edb860f0ecd780f1b489f6530e48563ba595b118986f16ae92d43ed51671be540f9b44c735574930fe7f7d08fe0a97e5a99f8fa9bf1b49bf8bfa510e8067d4ca68cae06dff23a09745745a75c3f4fab2d202a8fab0f69cc7159de2b9e2ac09afb414fdf60242be9250718809129e45ffa78905b11eb4ce5733018640ad9ac848a9717dad98c2ffc8a78eae910ac55dcbfed2ec210a0652e7bfdf84f269103490a494d7dbc80c252593a9eef79d58d9349f4f7967893e225aae5d905dcda3db9cbba5b4358438d5e21d116112f52ee5acb12557ca55665059438341e45ae01d14a3bdabdac877b0527e3e5d0b552376c2b438d4f0b5bf98a7f8214df6b47f40979da50d4ff280272c403652c23ca4aaa4aec5ce911501c2d4fb724b06358b0bbaf9c078d350be4da8bee6abad656916b342c991d1d6c298d433a0c9bc6bef6c44301cbf23caaa8df098b4a95bcf76cac3334d10379cecf460e855d3182ec31290c986b705a87ec2ba9848d7a9bffa3f314b6b61cc2b783e2429aea138683405647a01f0149b35c54a90462dab9e4d1acfdc0ad0350d5efa9c5dc57ab8735b71d7f8825586ae3b9718698ecf6a1c30f15e602dad5aa908550a950302efc422e799868470997f5b40e87d08fdf4c0c7a5d41176d95699652d963cc736bfe46ebc3fe7dbc4929dc4418db4ffbe84adc39ff51c6cfb8f3bde8bf52d192a1d561ac43e380f16c5cd3ae88f5d349dc31b96b99c4c18b3e6e1fc870372c93f1e0d416bcacc314abb1f1334084773a7347e74ba65834da47cdef7abe70926818ed1d066e3f2c4e13d9f192651ffc17abb99bab1f551308156e0820ff5c875fedd4e10ca91062bca623c50f8bb314f569f5987a4c11ac123d6027910d6cf276ccfc2e6c46f44a572e166067059a3e8966bb869e246f6842832ef4285356d0080c732e955bf8a535c438dc379ecbe59e457b972c010ccf72cc64e524ce3dbe054de985a48665953b223e0625b9ec7dcb742502754a1dadcc2d55fbf08528d2f53a5ff59e30724f0ae785a31d4b54d1d57fc26e0fb08723241fdd735ba6ba20b3e58069fdd857fac1ff9b42f82b30efe7b4164fb13ccecf857d4836cd97cc4e0dbce6c310a4b394eaef5016e6fd99302c91ad55f6e392dd86be40af2418803632a436b2edeaa29a3d0a9db1ee3180cdacce8033367d760e0c2b19be175dd23323524fc21a1c5526cb088ba79f5bca18d151e834974d5fd7c9364f0728cdfde1b6711a9cb40993e63a272acd8c0e9180d89e1efe40f0f6c8905257e4bdbb379f9e28f6de8ca362f7af9ead902b6daefe574ef4fa92f7b1e7cee614ff9164fae93cf621fa3459877f8e8aa52449cb0b7b071d50495625be5eee77e11c937d6f5ce349d2a9e207c9a9672d76c12655edc28657e3a1ab0abf02b9e87d14d132503b096af95fd15ccbbb0993cef2758864543efd3b5622fc59fa0b3dbf7df0b3a570423b577a56d5ce225a4fcd8b1ccbf9a032c3630811796b6d082e363ff72edd40aa4af552a47b180ac9aba7e780a384cfc89c3fc5c059eef4033847734d40f92a5bbda6177463e913729bc6f0dc5cfe6048251bc41f8ee6d10fc09c453acdfd3415280231c1e889c42260120ed7058d964e8c9fc1640e2788afdd5254901632c1d6270f433c09f72a34d3516ef56480b6d10c33bc288c19f08ae273fdbeeb5dad2faffcf09d2c451d7e8d748b0e29cd7807fb65fa772517c81f6e5f161327dea102cf3208984e5c6cb615b46d28bc0cb66e10d530c88efe1f9d3c1566b4f51981c372dab90d02e53fbf353360c7473bcbd3d8189f20abf7a76caad487be012acddf30297fb11119308ffed8702ec4036f5524d7073274cd69d745842070ce76047fd1a378810ecf118764f22d7204e51f803086b65f68ebeaefff9dde82b857de81edf53951f3539b08a572b8da124faab968de18116a4ae7a81f63293a53461100c6ff4f0a01affbabb478ae82c7fb55c02d563a74c2fc12c6b8b44e98dbe0ce25ea2423a8f2277a707f03b2dd4cffc5a2e28adaa9ad909e2329b982297ade08671d73c58a566ea1d5f2289a3c52a9156a919b49fcf192676067ed0062b6a99d43feb4b97dc4962c71e1764dc46720d06d8939e1f1067bc45673ad65b7f1bda2ed3c5fe06eb9e701eb09a7f5adbb33e4feb647d04a1d45bfceb00255f6e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855c70d70f776e11010961d26b0641da7aabc3f22579262addf5f98d17906e1b4d9da5a874a22d0757fefc840aed5dc144cbba8f4cfd9551a65fba89a9fca3372cfe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8555edaf37a568996e6cc025b32c0c41a134eddd8eb98b2cb2583d0512294091eb6e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e0deb650e0dce2f4ddbe0eb29922869beacbfca95633af5225702832eba215a8e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8557a10fe943f1b136b9cfd3f24da219918ce107045cc2e0610dc7dbc115a3deba80572895e4a53ce17dbec7b4843081f31308676108eea4f41b4d27365aa890a247475b628d7821a1a45f672fab34d8a52df053ffb41e254721f7c8b2dda1cb3d4df84057a2ba980fa9b14aa7d71b85fe58c66956c026727dbee687d956cbebffb07448eb82fa8e6945899ce99cc2292c79f47daf73f6cf4f7e1d3114dc5389f0ee43e7020d67065497c17a6fa4a7973394dbd2124c88ddb184aa01b10cd5e2748483334808ab40b21729a0c1aaec92bcaa37449d498c9964c648cbff9f1c439a2225682eea10edd7bcefbf09bed85a7061f51b63f00bbd4a2595798b1805f77bfcd152b9bf1ed0f58984c45a9c8d38fd38e5389f1a6e3316b0ae03871327068a20fafd35ea1bfd146a78e5136d88dca7e17115e1fb4c10ba98bc82a9bbec2c0156497d60327a667f7f59952b5d1e135ce12fb11e274a9ea2d21fbe2aee80f679814f5052476c9e7ca67c3768388a8a0dbb9222e72d7ed2e5f42166382920d9b46d012bc472cb04df4a81aee68df7084c95f069ee437d1238b532671a8f5d6165b2dbd4042705136e4e297f3bb7f93e1e5aa6eb36594b0e63c8a605ffe523fd4989793c6f26619ca013deaca58743db0bedda694db068c35688cbf9016dc2df7a9c3bb24fd758e95f4d8cd3e86fa5dc11e8e989c4e13f2611c595d03ca7aee1f9620687ab212af2298d41acd657cca3fc4d3d469658fad39f5dbe457d887139130b6096b0491a18e3104c298245905d7edd813e4e378045ddb9fc92767338c2309ad831db68a64a30b71cdc33b5396caabf41b6b27c350b388813891ba6482ffa1315d956bdab5518411663cbce65aee2828c784b0684f81a094c5667c0b5384ae979f37ddb3943a385661164212c59527d178e6dfb6c92065c51c1aa8121c1b115b0752f542b34146aa1333da4ee0ec11c232b60fad7617fcaa8c4488317c1202af4bd471b72243e062ed0d807bd6099fb66b1042f8b437a1990440c37aa467ee266ab0907864c4a93d38f1d447a3619a2442641955847283d71ee5e4dd9378b64477f2e7a21fa6b2b73bf19e325049d186bfde786f1182ffe5894fbbae65fd410d1b760c54bcf36fc45178be00366e766cf24b855e9806ff746350cb0c9daa329cfc0e8fb6b1b61e49aa8169bf84c85224623732d75328a9c59f5a2a5e46aef5a443de971df651e434ab3864023c85ab08727f71f5cd7056dfdac01713b20b68f88883cd8d32a326ffbe3e9f8d9ff5ef0d7177e6bc2cd09ef4274f8fa7acb637884c4acaccee534cdeed820cc2755689a309a11256387ae5618010524ffa14e011d9885cccd54036e752684417f485eae51c53bdc670f075494e7dc8852a5ce67d79f0f221863804e69ca18a6ce3dca5a1157518f9deae6c89869eb8ab95cc08837cb649327e7cd3ff60b1533a07f9f1f7a2fb2ea9034045b0f9ad411c76ab970820f149cf8373cb3529f8270e640a1d6db9984dfc9969c07ed9d9ab99b714e88da2a20b572fad4919ebfa5e5db0e9923bf80859fc52e8cc019de731e253708854f2b39c37fe7020232fc0f07529a6b4c7b51eb6cf336fbf274c38c4e67be1f7a21cfac14baf69abae798dddc863cb9fd50e0d3d451d6a3b6ff687347b0846586e4bcb1b488b31a918ad05f57a1f71e26082a97e8502f49657f5cd0907172c1b766353f9e7db2d8c1df377977ac25ce264d58c80d9a83d728d0ce8a5229b1078f01ac7256977bff8c5fe5141a5aa1b070186885cae8ed4b79b8d4d22df809713500a6c98166e50d10d8fc112e1eb6c332fe9a3d9e4a92c43616a6da1983ae159642c10a8ef6c9e3eb9362e0f9c97892e5df399c49b8602df2e62ed56cba728f1ce3f550bd5e244237cd0f30a90eda57b8b00cbc24101632221d8c50e4c3f8be1366409dc0163c7ec0656e0621b55bffe57a205351d545076fdfd64b3b22640fe4c7d6f582fbb88419d1277c954c103c7f1b52194661aecb7799a7e020170338a7cd2566b947928a845595e87edbff0487d98cf2471b55e84404d8c75e946fb1afa65f12b251bc1f6f7912177976a4f01f1190b623672509e313b3215dac2e4a7c5129350161ff642782faa42d762361be70d22df0d4b12dfa6cbc5d4e9ae1d7e13e0b70e5424b6f6e401ed86076c97f83370d50b6729098402bd620ef53960def5e9f19213b908550af0da5f8581518b8889c5e66f9726adbce574e80f27078b383321c7356e87024785143c723d1d86ebf69e1f93da88af750304b01278d15d2e1bc855fe99fdedb3db9dd429e6f7c42bfaa82a76a0cf1673e8ebc7d4c3093b7742c11857eb0ff5a83f9affaa7cfe6f60d46c066f2dc42a7b7c26571cf162a81f1d8e3738e645370650dd7a62f75f6ad661a4ee930383a58d4a0ac9dea8e6c412ebc112520127a5f74e6229133efd94bbe007eb47cd18958c8d6874857763a73fc8ba7cd54a003b00d42abd3dd6984a10a588ae9e060424b9afdd47feb0879ca5270e208fc63c958e4b3cb2ce123c86431d936c1d8358d8db3ed955af7fcf1387a6bbeb3e6bc3a0759d08870b6661d5358018d500bb793a738d8b784bdb7eab8d9a2200aca0fb74225f609885001de21b1889019661f0a9c1bfc2e9d6403216a922813b805d377d669b443531b851c7458aa5076be331b83fc372bd7a1511c839258ecfc5f0a282f025e9f30b480cc70ba6d939db0b8bcdaff42dc1132cc77c9caded97d798d72c5456676fbd769c95c5470cc99fac694168f3a308930f66347d4023af10ea57dc501d1a7a2882ea9dd7ae2209eeee5ceaf792d20f31328e5c0edd96eda4b1be30cf307db518c8392ff0d5fc6c94a733941ae15bb72be8415adb56c281170002c80cfa9a72799604ed7e3ce9e3c449cc2cb5147b8d32d8a5ce402983c34913ec72a61995fc92076d4a4230f94037cd6871cad263cda9cfd7b83bdd4630422d3f58897878a0d926ab0858df5ec1bcfbd73de19a0712518d2967e84c4073b07b41f8529b6170e12c8ccc7cfb5a820c7d96e9fe5d81f5e61cfab56be52d3981e19dcb59e47b59ea46d04a9b9c0a65b63bf734800ca055488638868a22db4e5e767fbdb6806f8fdc27567ca8d0d33a7aecf1a6f4440929a75cb63b3766db8e573ca524b6194b141e19aa2dd0b588444a90ff7a25849a21cd0e1b6627eaa236645a281124f8e50275afeefe91234370f33f10dba1171d2afa56d8cbe7574c18cafaf74457172a81ea69a39454e40444504477a6318d3a967c1f2c777163f435e468d11d59026c289a7d0481419fd54f47601271c9e2ed3d22d4d694769a6e44b7066caf1e9a9c65dc1d9b0939d721d228f84326095d723289c2287f5409161cfbd0fc2bac2c1f523f232cc8fb9576a0e1fed75fe08a6050ddaff17d9127794bf2d2ab9874d84872a4ff723c19b57974c9c875a014a2e8deaaa2c8367e9eb48fc73bb619186f31267406d16684c8f1c0ce5e834db237465c21b9e0b9ced60612fa9dcad8be1afddae5b598d5f2f4233c17951c4198ed18b940bb93566ebb918d46801eb106236ebd951539f77ccc46485fe93b8abc8f2210f62af517d865ee282171ac2888d90dff2b3232558b03fd66286268dba399b34821080943858d8c34bc50af8dfa978c38341d818844e7989701be588f8ad464af638f4f1525daf1f71ca38f67b42b4a8035b7d5384d93a02cd9e09efeb895ada40dfd9236e94fd10ddc89309ac635005b707f7e2ec4bad6914032dcfd307dd0e1a52b2d13e64bbaa7105c30e5611ac59a0050bb1bacc56b8653c1a08e12f45009319633e60eb1ca8cd9d060a50e9b54c35b8527cd67f905c6fb41eebd7136c86481827157110f041792516b47dff2861a0bcd9bb56caa0de6b4a55b49f342cc87f70e95e48e04c217b1f258a6c30685aec7324880cce7de2ce07d954172f1a49042a9db6c58e065302ded387164725348e3ad045870c30cef7a78fc3190b5547ec489551b165ed56511b0b1c45640aea35ee60b4728335a7c264526deeca7967d90cea45c0fabc1d74c02a65b37b3d9ac505ec85362cbcb427e297227e3f3e059bec361fe6d59e60cbb84b118da265c0250d0f52b5ded63f2c7ff87de61a6023c228b30d69a1649de63ab1fa5d91dfb28bc71eaa19311b6beb6e91c47b7298158080133f746a47b37fcb9dbb1da3f98d58db0075d21b1a0cde21290c5d627d4ace05f044f937da3c78c0c526b18f82a97aebc74eb7e44e943704c63fd30aecc3c3b748cff4fe107999bf2de46f34f1d52a085c911177317b204aa3af0964d62d54febdb6e8eed10534392bfcf7a78e28d3ac4c218fd13238ee70d796cb77b0bc0079a47ea2626120d1dd4222c14779b71a352e239aa80536aeebc1e742cf552abb77598ed8ad65ba53c93fd6564c6ea38546ee7851e120864ef8d67b210fc29e5e82424d649e8b8274e3e4f1513ff8d1c8122b5a496969aa68be0e41d80ac368b2c77cc44fb71edf1685ce2d6e030dd81bce11ecce4ceefcb9a6eb0d4d8c50fee3e82c0b42ba5c4981ad6d05c61968c2354d1c8b492bf9fd03cd79f1e950676d3b417ded0c81f00db30ddb11af48f7f6497141ef9e2513b00ac51731880d0cbe606dcf46dd38715934ff674a7f4c620e3b1ed987a5076e9c6437637b3b58a8b0b4c5ea7a601b336653ed28f97b701d19433f315827343cee14d1214080fb2684e1e911db180ef500de4319ce509d9102112b1fe6eca13289ef149c9fb7824b42789e3653a0f89c7e89810657ebd24e07b2b53b4c5e80a68479c7a75e6a46aae11ca5ba4633efaf00b7555a97f122ded97d4b01054d98d071e0e9b665c8f31b43682f3c12a02ff0d93eedb31c9762911ce51ec49a09a5dbb1e4efc101c9c594b76d09186f84d73efaa40c3e7ea30228b0e6fa2f6803f3def27702a0c61807ea425acea87330291244a82f399815a3a2488219a4cdffadecaa47a6f574687c8109ed74c60a47d6f66af35a3f3c49050cc9a4b78bea8ccbe592c345baaf647975b8a1657350d6bcf9b4a671fde2736651a84102cc892a662637d410f9400f509726e08d15de0ddad2ba79cadec8326c79c6c46fc76cc4153f18614f5894562a6e387a2459df5098b941725b0ec30d04e39b47fe95a07bc1409d1fc7a5c3ffdd10b8f2726e167a99954ef879f46f3aff78a6f60e61ec0dde1c7142eff25b5fcecff8dd21cc901a2ea145af12d649e2d77207740117d237ea33a8fbd386dde2a64d1c815b51ea9149a98d923beaf421f19f7bcad856e975b6a82bc3a33102901c78873ee134b806c0c1ff06aefb6a08f0d719117acef4fac6071d852c5f2d60b4d0cac96d4184cbfe2065b406566a8b3cc11839da4a99ce7eb73c525ff9a8a688c5b308606f05d6c43fd66147c10f8e35234a064e3190641238537c2347b45c32fe6f08e65598943235ccb62f3e668c3ed4284361d4f0ef5c69f72ed5ce78bfe86b49e8b7245c2a6e7405bab3d5588048f8b1d2d37b1c3bd2da91fc2eb04231d90315febcb3ff632eaa979f2fe3f613c53a2cf88d1c2b1d2c9d5869c8cefdf35956f04048b4ec092d533fbb8eac741a64dd2f24532998a092c90571e726b7501aa3c5c2dd9bd7385e954077bc75e1f527bce9b0a13bf8730884aa70e92968d99be3e29a2643415402dca017a9517eeda6a2ddcc71d96fc0aa1d66aed5e4273f19b2f330226e2f93526c48ee0cfd5ee48a18567d03fa4c7ab69eba8f8d9d88805311ead826f75346f9a1dcfa1ba4a75524acee1fd48aeebe9668e2be3dd84e39884cc3aa79c3617e52422fd5c4d611089a87244e30674f13a4d4bd94fc6216bf96da8b423f10a439e72865ddc9b616320703180504b8bf4fa25bd5629bcf079a07ccef2677b81bfa5e3e5013ba5c908aa6e277e3beb011fb24e0b639f42656cd49ec19c277496bc56117502c0246426b9781509fbc19055ea5ca41c84400f23e0ed9ebfd50be64100d87b489d3d851023bd61c1eb32a65fbca145ab4edba844dbfa71e529de25d2af0488bb126d361e7042bae17a9cfe668eafeefb9191aa4dda107ff961a353bd9a8ca9f4431408067f711a82187d97287f9ca5c2c66fbd735607a56bc2277b65ed0e4e37efb036dae58ad725ac156de6623a4d325bd70e68c3c0422f3d64a511afee5ed05465c7f7e13605bf171373aa60ea7ec8b287f26bcbe32ec24c20d5b4e4449e0bec73a29dd5486feac38cf90e3e810958b09c675b6181ce203b1ce7ebe4dac917f063ad6120ebf9025997914138a8aa30035bf6001ae97d7a566e4790812dfd07aa26853d6cb95da455155ca77465c8749229c37bd0736f93b5899da9c41c21cd102a3a5a42ffa2be8599308fdb962bc7fc5ea15fbda7cbc1e2958244dc6892ad6b8dc42b1500134f318561fe8543cb89f28693fdd8ca54a28b8062070001f300430c7aeb0f8bf737fb8502d425a7bc0f568cc5718ab990bc67057d6bf399e27ac75574cd6b5a515eaf9492be5b03667949aae1123ba6e8b6efa42efdba5fec67c26231cee37716519d6ef5f240881ea12b7005094dbb0f4cf14d9f3f754957d05952499365c720229807ac67466877fde8a8939bffaaae7ea379cd40540fa88b180f106661f4b462963baec8c10d905a50d96697a3f74fcafa60298d9fd97ad7180297515291bfd25f571292fd7aadbf77225c2ea43b2082c499bf01d54bce407b01bd758fc29f788428c04b8ccb556af17456ed6dc0666220f1c30343f310e92522933f889e2f65ee2cd18a2e4dcf30b9e078a9d549e6d36289f5210f9d08b01050cfc867a5691f6667b25a548f9e50516404ba18ce060e89fb767141bf104768bc24bb34e3aa207d8a1ae267f0a3679f1dae7b189a36b41082a36fa339a645a14f4ddd7c6d5704bb1afa1b2a558580d727f64f113a657d0c1258f8cc4c2524f99c2379ed109d569aa0eeb4a592b2990b0e350158060929de4d884a4678588f51717ecd27aae61d9ffe390717204b1ef45417ea4ee90e096073d1be3c21220a5da75301faa25b4cd4d72036a25c6278c131b046b2afe54ce099f9edc57d04007663706aa6c8ded8921e4b0b596f04cc667a0d18f360c2e0e363e863c5e589338ceea567453b7a1a8d0edfbbb52c6f7b387710c14d64f8077a0289a8795b42a9150416e9c9188f844f6e237c43a1e05f4bae1ac856055bea24c0ffa021fb821e715183662f1f07405cd5b0e5094022646787ff5da4ece2caf4cd7282070c2464bb9ea4cec8c506a1494f7bec5e85af8f0143632c15c4852791eace4438dd6265f90b7ffb7cdfe613360b9bc5f7eb496073ddad8545b2d9aaf4567eca85d89013a2246989aa13e099da3540320a6252e7e8dada0c0b5c43361b0823cc76497508aeee275b309dd61c2480adf6086dab998fd52e5f30ecb735923418d83326b112a80ff5fb4b7dfe3afb662e83f41d2836e9bbacc527efc4bb05ac113e421cc3d829c86ae47d8825a7ab9b656c7cdde9d13c9e01068bca5e74b6c450bc2be7c4f83d580600e9e11d215db08a5e6690552adbe2dbfcd37d00cb908fc7357ea644a846dd6a3c6427ed45877a8b5d1e87da0ca558ece8c82d3a5d044f549ae001ab419f499b383d5235bea5ae491d00432139637163077006d751b63ac5668933b43841b419a544919ed5f203677fa9f80813a57f850c31429f428ebe3a8b36cf67b9e93e9cf760a15fd195014280329d14354e68131e1cb3a7bcfe49651ea3b57ccd87956b12ab935b59e9cd3bdc6bfd22f3291f7e97d3af937afb21425c5841afcac1186f52221da2d85efd29dc59591a7ccef98041ec600c0ff97dea5d06874d6293a5855c98ab4cd28b37babd810b5da50bba48430eb14b1a20fcc5f2e96689cbf7b193738ed6a02953674a73043f9b6e0d8ab8812bba8432be057e8bc7a54d9084a4f09b07c331e25bb9f3addf836d0f43bf13fbe0eb4d8fe401a5d895444a943e4dff4fae1f905ba39f3fedb9283b0a0066cf91e4cb1f5b8638e2e1ee9f9de050c59f025f2893e072320f088eb0c922985cd22efa95bc774d725e86f4a4eee1a1b969bbd28a7e4da101280a8da9d2ccece82db559822c0d153cb84ffbdeaa3e13bcf02cf2350cbf84b805c035c40ce21385d6d21c3b83c55c82d0bcae7a6c561658a41906511f58dbad56d8ebadebde1564a39e85162c2061fed7d4892d870ab376e2343b8f65c7388ef27e3131363948bd4f68618c28d7376d59a19e63d4faa318271ec7b0ff323fd5319400aaa397f97670ffb649e812cce7b293f59706ad3717d606622de0fa4be3f06d4a990c2a7222077ca10bdafc0e0ad4a7817eb270a9ff01b0e279609af5d2979d4445c1b78fdf2c12b8cb259ee428f55f88aee7c9edf2fabbd92ec02257e8ca28da825014fbafb6fbbc684f5e9686c301103ac687219ac9dfbf74bea102eb96d6a212a8470cd30bf85e6ccf16a2306453d90df16986805e8249569ee5e2da3dfb1fef2be1ed8bf798b913417ad7ae4f4a22e5371204e05160dd094d3be9137a9583f1fd1c73546a43b3d7496dfb1f7b0c8a1c96f6a105447941a14af7ce6ebbc05464723f7ebc620c82e034e33d9edca868ff3890a96a3683f388a025740ea68ae2465dee385fc2ea1684256b7eb318c74ca76575aa3c38b9700c919d168ff7731b161c3c26c3920607c99fff367454775f2819f2a4c82e27a45ee4c6d713f88ae3d7491fa4325df3a1128e01fdbfd37fe16b5fd180a9fe265ac50e3825308b7db758685a4204773d6f4f02f1f0353347f6f95c3d370d0c61f43a350341ce3825c2622a2ed50c8f47849a7c5f2c84daf9c1476fa350dbaa5e58e00083dc0000cf0567f431de47f94bddf8b7d606ef9ddb9aaf1302712f6b11611aa3dca09e906781a05f4ee09571359b86891fe023a06d3e25e82c58b8fa563084db5806352751550b7b447ea166badb501750987bfb2fb586499b70d26546f64437b5bbc859eff479f1faa314b9a17c82f8c7055e69b1f8b70ff01a264dafb179304f04c0a756e962768a9a912e6d60b978e159c16b193b661b57334d773e51f8aab7c8512798aecebe492fecdf1aaa884231e8fcc53df0d0e18947314e1c69fa02692c49b81752a1652e523d9f639e6a20f310097caf96ff24eff2b36b43497c61701526c0700576b66ca16d86c0e5f4bda98fabac972a5268409c76c04ccefc0e681f2aa4dabe5855dde3bb84c610b7219bc7057eec954b0104a72a5183af1458ad94ed1526d1d60664bd60379918d8503e2e88dd25b2888812edfaba145c4a3c1ca32fe2aa23bef3b3321033a4c5a36de2d6fbea98be63b66c4f65cd2ffd0e9f1d56f74d4310ef15464aa89a30b9119fe21c270abf856bc0174b84d66c7a9690623da73af6f469372ec91a41f311f4d1d8bc566d18a7f636c6c335ed7f60169f2b761e994653da79badd317ef43d80d6932e81bc48351f09199723ee2ab328055e59265b42f1c3b18c2e168d407304994f9146da4df348a3817210f08fda70c2f0699a998436e8a24b03d2bc240558c7f093cb081cf3b737b7c1a4d63bc21537f7441e3360d301d23beb3b64cd595a2a98ffd8883287dcab92a917a450c32f0457615619a345e4c1a0d1a0f2784a6e65db8ac8c935a10f9bed247428a3a1461f4fffc75fb2fba86913cba1c8888f5b677fac56f0f29b4a434db51daa922c8a83692d0e3c8aeda639d012d1a073efbeed5a50120833c77497067c97b93a3b38aa7b2c69d5488f8ce6cdc9dc7a509f2d86fd48ef44f35caf0601ff828ce79a9bae85ed0cb0d51f950f6896a7042613446e8bf86810de79d92e1b43e58515e46e8e08789aa0677661bcd3a21dcda24548ac9c1e4d937a64b7242fc1a1f5e33aca7c54aab4e3cc77a8025562999a02f1e256a322708ff6f618e4b26bc1d7982cc5b4834b93e7c0ce434c517b9b4ccbc46971e4a7b98ed72c25c8f85b7c59de4ebee48e6b717d5f302e16ab2a1bd923e585736a5600218bb8784d76ef309e97ef243fcf4dbacc4ace6ac104a4c91e9437f4fe160518fd13e7a03aa4378cbe0837935e95809aa220e1c7013c5f64d2218b1df89655793173bea38acffffa8a66a0739dc2755845633d6b3262d92b7575207de37b70b57941375907bee669a2080e59fb4dbbf0ec30f087a2b84e9b42806933bc87ddbd88fae7580f7714c34554fa10a2bcbbc20d4ba43f1943d9b1f6d9c3eca7d536996b6c288e4dd39459c793f112298f356712f4a43ad8ea7f4d99263508f0ece5a4fef123a7925021a10b75d9c9be673fb004c1e1e9013d88cbd84929cce5b6309f470e6b8c83e323b2da54b932d11eaf5606eb52a1132b5f8cd2731bf7bd8cc9f7d148317a4c2129f4ea02d26d01c15c4f0e3ce45af3388fea4d7e649653bc07aff0e55da3da59a3096098ac0b7e740efe62d143bd3d4cbd3c90034f7736caf62aea28260cfed210e8927050bdeefc6df82b66e03a01a2af0502eb48a440e773535bf8b432553462e784508dc69b44c4cdfad8e590839b1c4c5762f1e9e6ef614d72dbb0c21f90ba49d421804a7cdf07926be2dbf796dfda873e6b156d1d30dd2bdbd555fc41e19e0695a7e65ffcac9ef5d916aeb5e0f61c9830fe45142b7acf6048e1982f8c17f3b353a1877e4a3b76f73cc4db9dea32e98cac422e1e895d6bdcf8eba97ca5be49bc412713ae77dde8a212dbaddc6ede3e5c7b34f49ba806e1765dc0aaf07f2635d85206dc3765eb547db455dfb6ca5b32685926e5da9e01d5ae339a179185cb2fd09a517374ee479e0c3efd52409b95bd57b40fc0ddce221060eb47f65db44d5aeb5d10bc65192c216fe566f5a0fecae15b6f59e3388ef76b47a6ada2df5aa16bd855a2109b643424ff6581d7ca065aa4f1fc2a0305fd0ac6e5efaee3e26cb5fbac13bbebce9fcfef242e8aedd191bae65adbabe19570e818dfd94285e23ddd6cd32c170794b6f2e87760745234c6297518d617f0d84ccbb40e579f6ce289232bb6e324d0cba46fdef0af14db7d35de1890f445068321b58322304bfe3f9d30f6ab4e4307f75ac19a21933032ad748768efce39da6c1efb4dcf04cc7838aecad9811b04362b6d3eff40a0bdcd4b1c249159c4a69c0b81aa25e3d420f3f9cf4bc03474df109637295c6ad9a5a5159395cd1784531216de9b5792fc0992374c2cda24c962294cfd739640ad578145bdc3355285df3303bfc4d62e9477b2a85228242f3fa513a2db176e08445d2be2d096fe2687d8e02185d7549598bbdcf3ba250ed81ca9a047f8308fc215294510e890b2e2314f0d1020ca10ce972ffbca778ff0ac8fb8343bde947e7ed9d7348a603d0d0f3ee31d5126867b970e676a3d8566b1c0b9ce50f95d5f8d0fe6840be71e791672265a21888c918bfbbcf1ed08b07c07cc65c7a147a858251ec4b3bf1333a97533ff2554dcf88fbf8c6af103e88e252dfd8420190b3c87ee45d5b3fc11c8282fc975fa57788999dee31b429f502cda7a0e0ae90b460ee3ce8bb96389e96d226aed22204781ef351591ece4ab6f6fb6c21dcfa099b0f18895182446aa66773f8a1c401aae487a03b74e1eaaafc2e8df1707f974fd6d33a8289f5a5520f5e6fc05fea717401995d9b3816490e2d3282e269bdb00c0cb43af5e82bddc5bcabe1df6955dff7b37fa4c261bc0a5667381ad2274d034af99e5a39b2484add9706608824baf17c3046b0b4e65cd9e209b85e02125e398b390d54ad34c2a84647c0fa403a0e3a383cbcafab264b482e5ac25ede2696dcb146edb1a0766ce2563f8b81b6cc76fce68c3ad571f7cd98c92914fad89587b02967c41a933e7bb8683eeda23f8faa8bb9f99b2095df701b7a2fd219e8c6354511c174b167b90bc1584418f6af0a1695ccaa11f15ceb6080109515b0fc82fb26a330da4fb9bbb1b2b089ab5459639020c8eb05296e52904ab1faa1bb37dd08db1fe3e76d3cb1b7fbc2ee5970be4ca6de78f703e93a618ebfa78b9da1361e16a7189920b9d779f6492ba49a79a10011e82d7ac456b09671f857aa328b3431b5931bfb28c087dab837ad82b276df187af680f8741c5cdb323f66cf6e0a4a0390f8d7f9df0868850a09a10b89304a7336dc8af94d446314a7831c7603e334d098ffc8dda6bc7cc7054a530f3fe2e4bb961481b70a5574f62f6e936657c28c1dc17a9afafed5b2e17b2dcdae0378c29422a9a4e6745f35f645db3fd915833cd54904063bc31c2586310ed4f04393083948e2068d6dff6f8b71d281848abdf3753eb4e7ef9f940f6f33fea58429408b3e2372b609975050d53b8147e4bbe9f9552263f3c255ef771b846b0844af834f4026526261eacfb46b4e8ce7393937d778c6ee060e3d54705110951b728d4374d89f324ddb34fdde7651ac6f1cf2eb5e4548e18b5a53284063cf625a0f457dcbe598d3b27b5da775cf914f3f26f0b61431398cd5bfef19debecf7ed28b0dd68f40369c53ea550fe8be274e16c1a8c1c67d63ed3d2405bcc243f9c0e19aadc134d5fa1bd887f3487bce598e423395ffa2201631cf019c3bf43c29da073997f3efcf1178b561df9b89d1cd8ffc3d60938c1fde882932c056b4fcedfbceac8798adcf952fddfcf5ed059f7f3e6ee3bff747ec55110d10ebfe63fdcded7519321dd4f6b093cae29d732541aece8ad379921daa1b7fa75e58a8b3bc761f68128ce827d77d571f4f54dfcb95c941a1460f5f753235ecd0507bba475ac4ee0b709d513fb73eebb0f8dbcede7497255faec9f2194f2ca2aed4589d7812c4faa3fb1882bab94a7db8857fee13425084d544874f62156573f1b60e7665e3e6221c669ac1c928bcac58e947f646d7d2f5550b57813cdc4fc27e6fca23c91fd50d85ef437acb96883d2e3964f99745139aebc2e23dc536f55fad1badfcb9c37a5338709d210c92fbceac185834c884a0e27a410ac47edd8379309afd8cc1276e1b5bbaaf356e08a28e0fcdd6be6cc4d20e5a7ec75044f63487a1e28371f65d539059aef9c03e974431d2deb6058c38057fe86fc7668a693b61e03cc22bcff6a9b32a1f3b0e5dd40bdc3ec6e8c15bf469bc888011fce8bcbe19fea8b69b3c832d2eeee7890ff800116aebbb6824449c95744d9d631268fe4ed044d3d36bc90b55d64061a2d9783bf373daa4bce1d43325db9be6039d1fda2ae9b72b763baf06b39b316f53fa1226325a262c8635a2490ed21dbc8406e363e52386893175340250d8d74fbfff5743916caa60c05c46a2bb011d027869377411e6dae324d2443a1cef6e018988ed14485241f0d761c7bd557b0a8de8b6ee49fc16434d5fceb35deb6ac1ad811b01c90f84954070d3c20cef176578a49c4ae57baa02eb5d93b134745bb7f1374fc85ba515a3db27f44246ea86b47038333278dbe67eb95659d1430ea68ad0f49d98f98300d5d30454df14b3e982e7eb89e7f23fc9113b03043ece7087650d60641dc7c2d239ef0954b763bd21eace188c56ba6b3c65ea0157ca32728219b507ff16e24397dc4d427a199fe80d34ce4d41ecb48efd5ed26b30375cfd1eb95eb1d61d86a13027f33bc00f7b4e7d702e1be367dfffa112331b326c413ab70a98f528d687ce049ad37b3632c37e15c68d25c7ff21850e3a8dbc623e1f10a8072a88d6e24dc6d1f352477d72f5b9e79918f63edd8f65bbd205d6298e429b9c380beaa9692e474b2f7e3be00380d0d371b4f005036e5837fe460ca6212257ae9bb2f9abadac26ca422d4bae6419dddbc6919722f1c134d642e17595c00e2a01af1e254148d48a39150909c6ba9b6405c5f6b50c69b5dda6c2a97e7cf14bcaeddcc762d52e2f7cc995df2de759ef4b48a9b97c5a52973d24304a1d5e6cb00c7ad51376fe5986c9bfc9e8a1c295749dcb395db565b572c8bb7d0d1a4dfd0916e5d963f9856698ac14022a2d5d3f8581aaac0a5ec19a5bc2587918e84e0407f5752af3fea43b673ac6db3bd947bf9d0c920002f12da69b5b2987a7d516fe964647fd1afe002653f7fb1b4f123cc9255886663c7bc46cf337160659bf95c8ad8868dd99caf6ce8010b1eb23a577c5c63123e02da884fb31db65399bffce1ee9f0ed6b1ece0465f07903b4f05a35f19cf33bcee6fa590b75ab3f1bafd268cf900b9777d76119a5f5bf678fdc1b69171403d74b15e972141d3eb3459f378846e0776f42c075174ba7cc2ed42354bb077b0f7e2b82228233007c5119651d14035a1f3546d958d44944d879af16c95869f0a9710fc394f4b02c0b4add1be095aa73fed9a85e1e404212db214e325fffd0f3914e60b64e9b9aa3e4393ca1512ba9577b47beb329cf653b3fff7c55aa566eb74d61749f31456452dd1e41f4b3de6330decbf6567ba45b29f766861fb541f5cef1d0b89766f1c91daddaf72a53d107ab06578349bdeecfd2f975b5b26e6f86c2a4b4dc46a686d66a572c995365200364b183e91714978d4e6612802873f0f9c793327d9517361b7be2d89c113899dff995f9f63990b9a34e045a088cd625ba3ae82f86c5b28008673cdd79230d025a2569d08c87e47a4074b9b8d9e7f8a7c6c4561a8adc0be4fa9f522795adb6b5fe9fddea52bb311b7f6fd296f655c137b24790e3d821f18ffaf86bd146c69990a5f6c16a6b966231809a7f0cc270d4fdb6c0d3b045f0c8c2e0218302e40c1eb30cee871a9f1079a196350f958e8b585f0efb5102cee6e2f10ca9882db743516105b80d612f7028f3473017fd81e5f76bba08b2ba08430733503b55df6c9d8b86644040f84526f399d105f525d511da96143b7c0ac07b351e012f227b59bcec889d38d76ac50b0a55c5977761a07a6c112a1ad06da5f44c45a36cc0ebc78079c39445fc9f5e52bf45c797c9242e28a4ffe70df5c0f96228a1d5d21c648185d3d2c49ce3b03d2095d19e17f3e3bdaad34039c52154121000d675ca85c04f827960f377b3eb85b1fc5ac7ff08c9796811940ed82499efb62e6969dc12e3dbfd29889458ef788593b1719c842f6ae2d08af2ab4c5f0aea08e1a1c90291d82b0dcc49ed29b9b7426bbb5d2e4652f614db3c5a117f054ab243e6c8df2ea514b1f8914740aa341f74bb7f03c5410fc3e86ec19f519120993e02253f8f873f84e9bbd8906881ab5e2b5817f2733ca47c46e45330eacd12e4cee6310874f198fd1a4b457bb6095e526c18d6e15215f6a603c72a19190cb59cf1d36fc8a3eda4ecca859ff70eac58176ac25084e639a9f8ecb1609a70e9c5846e34f8d5e171488001c70499acf3a1bb89614cded3402fce87d4e4dc671856591c986fe7efb18178160aab8a99c14d753176cebbeda18d21cc445f5fab789780dd0ce4c33131b856e018974ad485dde7b15833a509bacece5def520b0bff1b0f8707dfe80598f6e379b679a12b6313b7d2851b413e14bb8c5d72ab17c0ab75805f6380ef92745849af25a3c3328d29ef64be84d1a6c6fca9faddad3d95a8281d6e5fe0b7b4306d3f595632b164ff50576596dd54bab0dd20958c18e6b7c7bc0b46e594ac1c079504de8dd24c776dc9b5afc9a6472998222940b6621d7d813d291c41a0c74d9167137cd83848bc7bf7b3cb06f5b3748f4c4a547de41d4fb9d280a0b76c001254ab650de66f8c3a2a3de01d1b5589abde26111cdf66e11e266d31946ae9e64afff2117d9380e9bb42d041e500a2566443d72cdec67b0396c6d2b2e6efdecb446d39d4631778c3bef479586879e59d7c62a30591e7dd232b0ae402e0e8c57e07fc068fa72e260cda07606a1652ce503424861cc192274d156f2adf9610e664e79032eaea2f8ed288cfc1dfb1086dcb8083774d4583a2e7010b577fad338781ea8d0376dc8327d82348d6e92a97e13f4c4aa1e8d4b290690c6539ba20401079adfa5213c1c754305bf3191675238681e52ced6b15268e23d579fbba4dc512be3ed6a0aa53e43d4194133a6c208ab40679913887866a1470acb594207965ec277545e3f932f2af2ca63e00e1d0c65b524a107b19821d32415ff77b460563cf189283a67a3b8dd1925c19b3ce643d0914da2f7101d8ac495886365cbafe7e04328d2c3276d4426b9605547b7ec663177f5f1971bffb7b39a26830bf122cb6e5f241fc10967fcdf274864db6509ca70017302c97096fce1c122b07a95887c40e94ff61f9b5ddd1ee971f63498788fa95a8cffc9e739529b1f02ab1e892e5cd7f2476c45707df4b40f4ed07568175bcc3c155c7305da0b883a7b3d7d1b1648c10ab28524992e5272e21afe545ca830b83fa85716dca5ad1fb901b9c65115419ece8e6391d8b76e2ddc77e6750a181b3b0ff2523f4a18511cd140779475746e2cde39b0cd6f4914445cd11becc5e0f5347234705567480e89a68e347f9d15391a8d1abd00a9c979abd3dc948630be301bbb682ad780d5063cec9e77cb80d7c5681526a26922f9317a09e5b69ec44670a62d672939eca633205223afca602b98d44e494a747b4892d57ff6ed99442a97bacb9dec6794ae5de234448047eb684f2aec2134775f208d259f016d4a13a318a7be6b87f12f996652f7b52ac4b9afd889191f639c0d935abf27e32797d6857b7c91bf2c2bb9d5f221c0456967337011f069038cf6a6bbf9281dcaa20c63aa053006e89d8b93fada3a584894b9f9ec3bee83d919f32d1dc7f73e62d69c683ed9d43df54210257413149c11da7e3c088ea263526a0fb979e4ddcb7e539733ffdcc073c845f7ea5004943307a75885583a64de9df355eb98f2a2845ae260ad169ff0e2a054a30bbea4d867fbde15bf5454b437a1aa6307fb3920d2c7b6d122fb8bfdcda312a3d17a4666dc341a3cb042201ee513f0c5e5017a76281a8a468d1818e478a778a0191a5f331bc5532b01f4535d656e1bba190014093c22e7334893e00cb12815439e5f79d68eb2c0b9f7fe5edc8678471e97bbbb1ab0887e15f42fd5f59a82c2a5ddc9931dcebf635e09a5494a892668f9e8620f27ae4e435dda01b0e8bfd35ecc2b9182083ea01c86bb3a6df7756ab7225ccefbd6a49c5eee1c8f27cf820bfa2fcdbb73f921fa8d583a93c0f8fe7a1c1f0f6e9c72c07b302c274667b1ede4d769adba1406eaada12a6083e19fd78bf8aa5516a7f6723f5cb100912161be1af95aa3c720ea248e3dfa98f2eb6d1a3cd3b3dc890c5d334f12070ec1405cacfcc1b5700ddcf62ae74abe163b2ce1666f364454d3ede61ec5ac186aec7872fcbda2ee44c8d4421ee41e622a85644f196182a2f931084baa97dfab60e5a93672d705c63f6d28c87e695c1307de9e14109015b836bf90dcb0b93270b8107d6de313e44b6bcf51830c25dfd82c41344080dc53d67ef1d0341dfe92d0e70bf8de045291a27982ee11bcd0b974c4343eba891fd4452ebfd1fa2287b68c322c3f0bda680ab5024da11839e55e1424c789b41a9a5fc50139bd811d2bc6980e91cbffdfcb4ed0c776477f1d64bbf945641469197bbf6ec108e964d1221bab423826a1e01ca2da7cd60a992b37bc206a63e9927903fb0aff6c73ea0379624374a4394830ef6db837e985868eb7199b7681621b0c33ccdacee8ba43a65094a37c77c50c066a550ec659cce77a451c7aa1f1a976d41627e9baa6ff48c6fcdf4d249bd39b32a266adbfbe5ec861d71b6da0082f7cd06c99abe94b2405f6694e6d1e41f83a31a065ea1d5d341f2ef5a94e4198957780848c98dedad97e2a50737ca7e0ad0cd85af1f427f973cfba2b4f0b51a69223d133ff88e059f564e45a4b1855327e6f1a0d746b44af49d87c65b47ab72f8e2df3a6e3d4e4bb101f5839c2e4b713610232d52fcf1d1a942c504787d7348fb252e8e541331dc81cb1c1efbd6e4a61fc295b9e98ab23dbe34f8bce40e0d78b1ab4eab4751c627bf0c82176ac0496523a46636d5cd4c0c793eb08f2063f0a07f29bc8d4ab9d8c0d1a32c4b660c5e215962146a1b3a93a25c000130e21606a2e0ef5281e9ea11685cc4717505e602a4bb4be1a537538f7df0f85beb989d70df8ed21e4fb5e7636e954a17a38f906e935c3c9d3396cf9f40b05d5f6e2e7539898c7019df2acca50b16f1d21e314426f1bfada4aeff695d1776511b68ab016ceb71ac4157156347bbab4722377adc451501e66f475b5f3931c6d2a1ce01c6b10d46bc5c43ab1e1e036ddb37cc9d5ba2280d5745614e5a9487475fba1d374514b952a5fa2dab4a7abaf87cda1e30c10235e348378cb58d667428cbd1be9720c20ef36953d83b09b52964a89b1f54c5a880d5897653b3a21bb47ae6618302af98cbb536b3cff6a9512c3ba927627a2cd1274abc76c03ffddcc0bcbe5e6f09380dde718998def4aaa83dd61547e0d4e89c44f5a1e1b9490157224204a5745096c19478a86b094c2a7ac4dbb73d742722490c3b45d5f3965381beb42e62e57fc2d9376a803f8d6ed1ebfacfeb9a8997fbf1005af50086e18cfed783d1f59cdf409e954d7f4b2d90f8eef198e4ca459a9fd45601eed8a849b6a80cf3b855ee2e0941c912a7c5b8c4246b3bfd0bdc7debc757ff75e4d1105ccbc8a14b1a3eb452040229b2f7ae2ec64f1b033e9c3d34d9128c0851f86cfffa010a890b46ac49aae4f17ead58832245c95b4288e949cdc9f65bbd81e0d0f322b5f25a365c0f354d3ed522a0343e3fe31d7e6b694c0b25a2da29dc51dc1715d69fef4bd66df33f832f20910066417dc9cba1faa4aab90aed5d37e139033c4d048a48f8ae4a71d911bc5e39a41209dee029601b0151a03734122e62e07bbd3a694e2549af1742347776969fec1c3140621b6c7e50652aa2d47b8c279d6ce959a332a70c8f8ff24465172a49289348a9fbbd72b817a3f4adb29a6e4221153d52c0e422a13197e2ef29e8f2b6fd418aa60f4167f467fb89ce91ea912877d659b7943af98a8b05c37635f17716da36596daa61bdca015e34a1d5af5856e1ae44516402a3c53a7a08c60c287eb43fd8dccdf22636529c2d424e3ad6510f7a00464ea3b5d46c404e084c59ae75c24feeae7b782c2d57298ff2f6604d0cb3d3f6e3a8a8ea60ef6e5c2a5fa69226f8cb9916fe4f354f213d9074824bc52043a9406a312e44d3b9a7dde6fde737c60b2bf89f5885237d4d62857bc6690c3e6110ffce8d20c8924979621ba36f93436d91caa0bcc32ba825289cfebf50f39944074b237b6e7b74d85d666919b7788feb8f74a006e812d851c5266d0d79e5971aeec5d7831309cee953c2e704e8a75e0e7b5c8d33534c32472b93406686b60ac1814312c6048efb8397622a96a69cae3029085bf62db044eb0ab4a1d0b21b79540a026dc736cd7840663de68757eb1e4cd381e8a51004f734c5386273ec9fa387155abff2e32402b582dc7c30ec9f4ccd6135d355c009e11aaaab6f10fbc0fd785593727c755af4b34bddb5786c6cdc790bf58b3c1a82e784a8940d6355631dbe9696b42b6da6c0ee2d914cd193a006c74c91a6acd8ae35a114174ea5d5be7aef0d6421de823b649855961cf643ca4078ef0ee28f67e0c518702238685f745b705729bd4ecd72acb4b3de198a59274592de761c9e87f2301c1c9576d3fdf027f103a1df5193d85c2149ec0bb0c7812ddab1c5b926b627c6c616213100bad18a2debac618525740e8ba194b38a279135fa30f16fd82631079446bc576dd95833d6d0df49c3520486c284d07237aae4288f6613c9fcd60e3be0bfc6265c207a6f3ab72962e91fdade2b845b565bc420943031cf93366c3c8bfd492c1dc4c506f54d3efae01b023291266b80ae3fd090aad052385be34a7b6a0785dd1a0657b14362503c7601a528de7bd90cf91726f4ca80fa180294a37fa919d415c8968c7ff898a9d0be11af79b3e0f3ddd681d1f580305a4c70b1ba4423790ac62e29aa202aefd1f2037db433958181974671b15044e6fd3d611cda00bb44ee6cab4f694b97caa077e940ea97528cef2ff540dbfa67f89ceab3b8c638aae182a1911102dc4ea984093cccbf62a08c0b76f1fcba45db2c26ca71acdf60ce69ab609315e70c9fcc6de2290781580aeb03e8b94d9a29881b7f3de61dc8342140f4c54794400360c0f7fbb81e5730f943d0736543fdd5e07cc6a0c0aef729b668551efeea5e28dd52cd9d8dfad4fda5e7655e3fe50899269c926613a4fc1de9a1072126b07d3e1f2896d8c7b09c977cf914bac26f1a9bd282261270cb36f982407d84a905883e632db36e4c841e8a1a289335925095d2479f057a53000ec45367214cf711cfd71b96f1472f19e438c4cb06050160801cb8b9bfdd8cfd41008cfa9134314b4ecf191b41f5195ac033fb97f73614048194f31bc7a10194d138383ca360f85f07de633e5fba5d0ae505aca8ac5c16c2cbb3cd47d65b95cf69f13e703ac0715e00eee90757b2c24ad7991e0816903f726c419edf523e09fd463176990df1f479904c14f6448f53f37407f80ee6f9bae35db6bbb52c17b73f940cd866fddca730be6d2953e21040fa8cd6dbefa2fc20201a2b1999bc67309d30226e766129d0505875f1796872748b67ac79dba7dfdfa16420388b94242a8865183fa295ffc80874618a5e3abf2ccfefc46f2efa6e678ef19164be7cc3479acd0297ab1014064320d3cf3ae8314c996e73a066bf1ec75fe6766e320ac06c917a98f47efc0aeaeea4de1bcd5f83e96175222af236f35292906a65c6798c8809139e0d33854a5194cc2c98c3104ba24cdd6f340678bb1ac4af2eab3832944570c2a8b814ceee04951fdb0303adcaf418c578cb0d8cc3742f3ee24493af22e7596e55235381cd7bb044c0e0704b1140f624617c9ac56ac8159a76b0ca97237e581b8f30ae877bd33eec1bab23fd93278b8f75fa1dc59221aa96c6a32b503b1eb74c7092e19693ff39e8951bc0ff516b0d5adba19df6e2428639787960879e7ae5a7ff2f2e29792a214bae4107f36f3e2f612a0188ffb36659da7a10709964913edfbd75630a5c860b038a716e9b86fdc8799176707f457125fe5b85485955a3501f089637a38a6cc5934d012d31bb48e2cb28a54d6012abf35f3793d7236c1a2d2554a63c3349c43e1c912d42b2cf9e8bcd48e682e3824735bffde9e9e27b44b25e470a75cac4f7aa9368a3d2163ce6e5209d2caf6ecde6490330f92b74762c50d0509720c452ae08bbd23dd16146018d516825bf06f4cf2c5c0c42322915d061ded973dc688cc36867a67d593d0a6b93117363742da3ada3554b8b143f430d309fe8560d862df63e3a8e6e9ff8aec3c21367b3f11aee987852a32ebde56af77779f14d306726d8d1ebf70cfda2ed59284f56f3e5bf7930510b3c9ed2869acf8bdaf45042ac8c8ad1c3df184ac4823024351649014b7be4428ffdcf0ebce3fabe0af1acc8ee771aae9dba6e740bf5ccafbb46fa935b6de57ca4336cf7971e18a03849fbba076d3dc743b493514440875a803a764af246bda98ea2be6cfd3337692d5f6c6d4c41c9e9303b4189b6548e716a4b62e25361af376841ac791a9617fdad67d9b43fcdf7c6b37e1369d5253a2a9e3dbea19dc7ee40736379af9c33a1df7846ab92899f63d6cf056964c44579081a18d68ef07779d4d295bd128077252886a9c23ba8a7a0e9b99ab4b6ac023e1b99837c9eb327c36cc066b3d32f4677497583658f2476ef7ce65a34c63b0c671249d52626627076db0dc6d857795a8b23634f3273528b61dd26bdf18b146afd05fbd1bb056956040d7d0f38dc9f638c03132a0ec4af320dfa2b612baef877be166827a58b920bd0cf1c1aef035e30ff3301c73e20f5fd3a969aeab3b9d9b52d1ce42f55cccb8e7882eb25d4fccfb3d8ad864b60016ce886c95a0c754dfac37b369bdeb24f11224a076b0559610306aa062e755578563765bb93cddb71a54280dd4b0f1a7c83ce235b680d59c19ebc5ea2406639b5c47826e8d082aa4f8d2bb86e92fdb7bda3761a4d69f2110b770ad6a70b7f6f4d1656a65e2aaadcb907ff1ebe1ecc80bbed028c326d9681bf478e0ccd91dc6f8fcde73d6a6eb557cd35284cad5c47da2be7bfcc11c9718a2f66b89b0355c86dc289090b20f8ebb2cf74f40ededefaef157d6cec14c40a34617a6749bf2af438d355c3663852ddf66ad99ec9c26cbcf58d5e2b4569f24035c832607e1da82e41c34972ccf0bda0701955bff117e2afa07627f63d25c2c7d4efe040cc3cec05bc32b900556d55df406fb283fc5fda12a8dbc9b4a6ea1839a7a839bb9005746dfa5835585b2762f4f3ddeaf8fe7cfdebc3d4a97d5e8fce4f44f9b312ac0e1b13ea38e3c46001972bedc7e6a2a79f63880a272e26874da55bf3a63556f726fb37aad072873fae1926a70fcc7b090cd8748d9540ffca5e83d57fe3d660cad7b5a68be761945506702a0473ba3e9888fb194966882021dbda63db70680e6c227fd0bcfdb31b2a89eaf59239d6dcdec642145de8227b4eb3e59893833f9ca8de354b8c16ad15d61208f4dc98caa4723223368e9c54d221654a7ea9bd3dd267f8d0652752ea1ef482d1884fdd1253260aa65282b03d5d275a6a4344c84b324d278712e4bded9f898a9212444e06d38a8dae53dab2fc4dfd3b525b6cb4b5dd84639b5a463c22eac4eded0128ef6a8aed3bb01d4dccf2633dce03b8e45535608252b7a833a0b1cb227e30584059353ca690b107d71cec8a6df5b049e3a84783d48b20fa8af7f42b04ff4bce392549d0eb1bf4986b64a7003e9939ea0a9680f8cb62087424850b1dbd2964e3de596a7391d0baf960eb904976665787fd0161aea1f010cadca6f696c3480a4ba12c768bd37c62593a398f1bd6b7a46fefb5f7e19a854b4bc63b7f0bc5bfdfe472671c69d18931d625a0a51a0f16e77c941de56248cf26cfe1ef8b6b2ee37438682909306fafcc73c8f3494a6ce9f04f3c772071013cd6c6316666efb9f2859c6e05c223464503bfa30cd077dfe342ddc1550ef8682a7b9951bd2ff291d4611c19a46b2096e6423d2e0fa78bad0ba7c07400203a01855ed595ad48b305521624bb3ec320dc96dbd0d3175fc8881dd2aa0327e682dffb9739b65ad3343b0a9415d956ef2a11e1fbc1eab5e827d8d1778d53ea39ff51e1fc6d4d6ec22081924b8e0a1afaa9305475ebd1897fed8ae60227721751f938280ad31b2f0083c1a3f6e7c1fc70a3e30c023e9c9c109a7b8ab9f6b9032a4f409d7aa610bf2566feba243e3ac0ea971f92ff5e2079cd73f6f9f3204a75343e1600c2083e2c91157c16908327c92356acbf6e89af46db37018ac62924f6f65b5857b9a6142bf233e83f469af1bb36681554e2c0e95f59ee459dadf475509e223b361ece9bfb9118a56fcb55a8d84bec9d1d5a22d655e0f442ff5d334d57ffa1390d0bfd1f57de07c2521d6b3b6eb40b2c192565ca49c582163dc7b6785707f76b7b4f29c24cc87710f60cff99e0ac571ed7b6fa69dc127ae370dabd8546a339b220435866ad054262848550f454cb0709c5e8b92baf559d186206efacbb7013b56401217c9d60c713e3ac8e129548476c7932924b753a44a240175066b53d9a992086dca13a1ff0d88093a803ff5e823b899df7b8ce2190d483941b0953f2cbc06300fa5e053da8ed49bed061b93c5e84c08f4e75096a87a825c611a91ad32218cfd998c2e3a9f97d7c9289624cee0c69f87643ab697fec9cfa7ba645252cf1c1619fc639743327abe4967c3a3b6ccda156834edaa18e2245f89d9b6339915311761fae3809f5f895985b0a82aa7f68f1aca20683b27735abf0a5b8bf7eff7a8daf70380d95be734199b7791efacd7f0afd95f5aa6dcf6c5c17c09e4256d4f7dd782364d6365c9fb2eaf6d4d1ee42cbefe7f664efa662781f330e6f10b637b9d9930293d7ea06718667ae6e3b25517f7911a58be87e8f70578031d03a12f0923d1bd49b45cb51520c64798fefcb9ad858a239e7fd2f71939df7026eb03c7bda41df097f3ea132aed48e546f003410ffd7349229a3374f41f3aef861c435d8fb73dae97fe06b875c49743940cdf8f581b9da4344222453af5290f09d31dcc541c36b486d573f4bca642d6bde7d9e08de9a3a085a72a685b7dadd4f2f5504dfb79ab5366449b6b89a704bfcee20ffbb953d0420cd1e1ac35b8bf31f48645fb56c5a344a380ce8d7e590aab562ccfe0d92399ad1afe266a21426b9511e0f123d322b3fd2c8e4b9ee63c7b94f53d8f2a4dffa1dd285783fd0a6c5d06275afc1bd513e47488211fb31447975fa98d2fd6ef201542ec9ba374bb2a7119ad3dfbffc4728e032a6e4c8081e3b5a5d37f44d474dfbd2f4e1efaaf3625a83e0d1a907dca535ec753d3b8d5095958c167c3e6cb8178c77e4cdee7e4d298cca716c08bb4f6459da2755e83491782230f839ab60bc7e775fea9916ae2a00a4ea9f8f7b4166dd8b5b17cee20880fe0d6023622060fc62dc32da1c98e01cdd4f2c5aef6d49a60d84df65aff718dbf7ced2e19274736073007709ecf6dbe1b1f02a1dcfee83fc7e93c3bf266aff5d775c5c4e7b105426c6ce15142ad0662143c5248ee47ab8b13aef4c76e37aed5db3290f7ad7f64c70aa4722466118503e8043a76060c87eae05a7a461e041ccd5991257a640ed29ddcd3cc4acf701295945b62b146ac0214cb6605f57434a71f753148d52ea5db2702a755760a9376a1ff6157577efc7f8d6bcaf700ea6b23da0c385395aedba13bf031919e253110eec084ee6946a6610a8c906ac0dc626c381dc22a79d4f74480b902e8bc97945d871155c1743c5acae57ae4ae688904633ee6aac79c926232e9cbadc19c22815ba012231955f1cf1978d385755292b0f245f78ca8314a8d87790ae2fee198b845926f7ad99de8f4a06903374ab928ae405217a29425df9c56fa3041d76d9c8c6b53d7edd1fd1298e0ab0b0d9a7f832c503b52e38734e6ccd7041484b843fa2114bd35d9c1797b47c0139accf08ce792e2a2ee37c4ba4fedd784ecb53d36123c08b47d32e2f63185f427e53b9595f686d23e8b76fb99f156c4433f9565cb2f81948c639b505d92315875a28d3ba3005be9ab3e458ce606ed5bfbc6d662272710d897cda68ddcd96a4098661c7bf586d4b49e938a8da3c35f0dea61a15645841a6b753f212517bf67f3157856fed92df1b90b877b9951942714414534975b5cce9cf8d654a6fdbf22672756ebc5f7045a51413b487850a7166afb201dc0cdcc977687922cc613d899620ddebf33c952e766842baa0cb60c61fcbacec41178d210ac76bc49c405336efcde0b3d0304ca586d8c0455b8c8b1256f8f6676db78f93c3eea1ed97c43e390fa824b44e48df88b8e87e9587e10dd552e55710de1312164b4e576035c94dc846621bfbc6785df409f6c9bc9c5605f802171f2a31ce553accb7727211f730e32b9b3c8d3fa4c49ef944832975645a1ed336ba689ea1d2c4f3b0bcc3e8815bcabfb1cb17c7ebafe0b60b537a6935c127f1338570aa506917735047b28a2c3e06518e6cc6c2b8e836e7b2136cfeebfb4136758a2805694a5893f1fefb6aa19bceaba588b377a9d270da05b09b8e36277418c8a6f073d925b47314ee2da8d01d0ffe9753f9314a47e4da42af2e03ce2eeb925758d077334012269b3294d190b387b1d095e8f8c1d5715ff0688f293f0cf7c6340306aa8517d6ae1ef27231a5d1ba49ff341255cece51cef0b0afca40f2356fc96e488a714341e7fcbd2f3f4fadd331c1e2214dbbaa55ac7434ea16b600abe3a44afd2a53a93b9d8c7b586c39ddab2f6ea6817b4d836019e744bc90382661647544ed3a81d60db560e5cff0b3b2fae307ff581c7c5fee60e23892c2569ba605edeb1e32d83da6216a311853822f68e3b4b6e8f06755a833c5161bf3570211ef047e9a9eacda7bc53cf31bb1e128c3a2951363837728d73d3d565f6abbe0311ddb07dce53a69c165becd9bda78aaae5b9f76a6dc8ad4c4f5c58cd9489fc291fe74f9c18d18339f1b1646e37f6be9088b4b4fa7c7fac2ef3e28ba1f32c4ad5bda0768f6f9c61b6c89ecccb5c130960ab03104dc994d399a17fb2f52067f7487d9d857c83880d67486da4dd8abd01a59c0c1a166e39796b0dbe8c3ff2fe30f85c74b0b81206a3d84988f73a7952978861d4813cc069e22bfb455e8810cebf046984e21e4ae60bd7d9ae697bbade46117c4eeff1afcb1d88133c7d0e82758b8e52d8a8480a18257e7feb5ddc08245a69c5a4b8517d0b39dd05b088d83e2eccf5feb0442e7f809f95f044db36839ecfd36cb231efe6061e4bbb95ec8aeb3d75ae77728d605c2fa5a52e15a50e179181f444dae3c996d78dddcb6749ab9a27501b3e64bd0c7fd218a4c50bbbe56797bdbb3f117328a35532144d036fb1217f1a7f733dd65330b21a7576944902f7de145027ea9c645f6ea434681eeb008af780c12679644854dc6dbd727f2399c25fbdaece4ba09f9c3fa46218ab970d5f2b59dc95ca738cabc95104c21c251321377bd88b768ffdf74050bcfdd33569e14c99e2a74d9e909e843b65b87e4145eefa4cc29b278aa408632b2898ea6a242c0d61925f35c13c840003e6513b269efc5b1fe8dd06e5783a5fc91ce0ae11748708df64d1cf9cec8c59a5f4792da7212dec0223b706980bb85af6cf22bcd14f7f5f65dfed298af7d08e25971117f6360d896dcef53c3f19a83a7a62311627ea594089ccb49ca04642200f9fc56cc74cd6a3f9015b680157d6586dbb565a199407d864dd2efb1714933e4e18731217f40211235940f583ba321ef3692e8e6b8ce10cf3d08e677b1df9a253d7e6dea88d52233d546431e85f819221ac3ab337d433a0d9275d9fa5c2c6aea91c647cc557338cbdfcc83a1bbd787718b71d4e86ddef0eb85aef4cfb090e768e61768f144aac294a3962590d51c3e9a098ce15e3baf6ff8d955a19ba0c361914503e0c5ac4f806299eaa50d885423168425ac35b9b6d860b612aa7f8308c62a1557488cda6ac225266e0e5ae7cd432448a1f877e1e001d558ac1bbcf1ad1504f0da8c8701e7b703ff99cdd8a9a4f823163ef3aa47a5d7c39a1adbf3286770a3048e5bddaa776342434f12fb304b003479b5fb3380f054c40c48515340f7b2550bedce50a066c3bfd25501c7a30b2b9a171e33e530250cad0c13a5f707813e5f6192f5eef9a46831a96e5b39cbe26d06c2c36f0895e0943fb0d4c2a35c73ba42bc920c9b0c73e2e9ed7cef6e3553dd84898946657da98928aceb8631593816c24e2267fcf3e0e5ae107c96a6b4b71b6923e1c2995d7f908960085221571f5013d67d09c5bb6489840dcc51248082496c45ab93af811732da56000caf5ffc9e6734ff633a2b348291f160ceb7e259592057ea714b3ea2afa651f185454e5b67b713ed11133da6ff3887bbd3a39930b4315a3a7490aea255895b669bf15622b5f1ba41ddb0985bd7a9a51ebfb265bdb6d789616f0aed42379dbc9a994bc8a8e7f3dbaaf3256bbe19db2f0838ae5be607ca906051f99484dd5f5bfa1b2856e3c70eebf3fe7ae604119701cef2bc3a0ab4ebb98c90d6a03c8b892c90d2e3c79b0a65be57d996d8d6af69915dcfc62711253987512fce952f129361a736cbef4d21247afbd02e64d15a5e89202217a8c87743ed573aba66423c497a9df0454da771b8ab537d95c9f346e21a28904c7265f7dcf3b1597391bc1b824c2a94456dc4e7c95c931a757203d20a0113bfa6cf2bd9726c030df4cf8cbb48cf99e0f988121feb8120cb8e5952b12b57b9056bab9d0c13c0c670aa2a17f9faff53729e88c7d077c3075f35cd704e4c673dc7615a941a6a65c79f8dc6432cde77ebebda3807545cefdc9382349f88bb74046329e5643177472c29bef04dac20717f2c4f8363f6b72be75f07eba50f0b7909b85c5385e7411cf95f7b5d4c192ff470b2288a466037e34c89c073a5927880d273269943f1ee070a518df4058217d93f2d01078e08235ed99975102dcb1195a5cf07cf8d8af1496bd0d30bdaf1725d7954d22a4a8bc87beaed7d6223e09370b98f5c8654f6d6a1d39c3c6af0be2ccd384451de8fbbfd436f3e337bf581f80ecac50d9b71da3e2b6754b1fe16527484bd1187dba3b05823dabe43bac7a40e6af3ba741debc3d6bfc4f8fe37ad0cc330a300d5ab9d3698f3ebe1c3b03b7bd24524bd5e316712ca10f6cc37264eafa1abd88bf63b8fed29fc82590ff5d518aea7cda630aac4141e6f1eabd3fb1600845c1ec850c758852bd69f3948fa6c6011906e248ea1ec32e2a02969620d96e1c66b506c87ff95eb716f745abc9af165fa1a081a35a968f15db10836de023506a40ce4bb297fd67d9d5b2c1fdefeb9cca43bb8278f87bd483e1f7002030bec3cda9e1a8a17f0d6213beaa47124b5f01b47f428c948f5f9dcabdaaccfb97890b168ec0451ab22e2c9a39a6cbef64f3d5489fb94987cbb8697788b57b99eff9d5ac3b90779317711d30df022c59e3f116e43166a55f4c44fac41ed3fa4ff69e424ceabb7cea54c387d28291ff5d47998ec2a620d38670189a17caa9b2fb5702f782a6047ae39789a90cb4534ee91a22304593c3a24109d9b654e2176d9a454a69a8ada6ade9d200e93c4c1ce70113cf710daeadbb18746447be6f0e939de68b43bb88a04d17e1d31a569848a2d56a21c4b29b383002e3cede7ddcdbe853f4ab9125ee84ab072fb1ca16a3c00baf961b532ee46a4eabec438fc0177cdd9ef205f2136200f1b0021252a29603a0ff68460047658a57f8706451f46527abc6ac3cec7b93feab3f0fbcfdab6bbeb1da228651b2a602424bd58b0154ba38b3b50569adbe4fa534f3c2348324b0d3f560dd95f7b90a6e85d3ae0ed85f6433db1c42ed5011f29beb8b01142830a840a1add22660e2bfc8aaef3533e19738d0697aeecf383b6e3b481b77e2798164931f54533144ecd3f615225bf6a21be527e16b233d98b3667990811fb914c99604f477787dd95f350daeb752dd38455b9876620ee17b2dde8881e594925a348c71607ab772a91d5ee351693a9283536ace84f5cebf1d719bb8d082f6d2633d2118095cc57c8e73f3ab5b11a53d214acc1421a3d92a8e305f8f8ff28d644433ef36a9d89b6be58489ff03e370e5a43435678ca5d6642751fe4e2e31f9d98a858d0d33f51cf9f3bac70d37c5076176fd2dcabc7bd6ae684bd41593dc0f60dfdd89628fe7d677b2635d2f84718a432ce564eee7c1235022604d98351491c653c68941328ecf56c9819f6da66c91f629e5a049933d2dc1bfbaf2632ce9f7c3172ef371aa8d2b4db3b8ba14e989b3c32c1308295353c9d0a2763ed12848dfcf80dc77bbec8ab14f8b4dc668d6ddd565890b285d9365d0f2ace847b2a579de643d77a7be97fc1165bb90a45fa59a6236c16f5ac520332ee409051b41ef9b78c820fecdf49fe556497d0d70f8d05033b90dbd83e4634e2e62ba48fa796fbe271cc2eae22ae088cf9b1672df74b367a8a94ba23201e2d8b33f48f993d6104512e45ff6377fb139a669725fc7d4e1eb79f04d15d2266f163228f83c2aa984c078d2894cf2d6c337054267d29dcf225a79afba37ef9edc213821490c036d2a016d460efbfd6d5f2b313d630813e442a9e57520b954820bfc38c00a342175ab9a4cfb97ff8869c52257fdf275873343297b08d1251dba70ee16d820a87a3abca44076b90e2387d5e05e04d48b3840b11c70fef162bd63b049447efc5609fc2b06633944af42937dda3a6de0de918f11eb3f7c8855e5787a77dac64a6803c112584df59a2e72f52b22256e858f37b3334e9817185dd33357a4af357fb131f9036760df609d57bba75688399d299a152140e64795b2ec05b89cfd69c37a1708b301c621cb1b4364a2140069b328cfb49acfd494e2014320447677907f7192bd71ee90f736f9dce0c601744a4d153fab532baa4e7c9804a825685c550ad85b94f57357605d077af5e05e831cf25162ba5fb7e4488dabdb042c674ebaf85ea8f7ec0ebdb3b1a70293f49246052046fbb41a510c908d1f0857f112eeb37351480b7a82197aed877036c2f53bd768cd20e56099ee24f8e5c78d525d366c091a392f7dfa36d94611d0e94a657d87bae915d5a57cd7c3ddfd837d7d12abe8691dd4347c911269902426aa29bba13c55e44babacdd0c04967ada9f88020a102ca81628cf7ed035b860bec9e0b168ff1fca88803c9da1c6a5a9d025b2d1aaeb474dbef7fe9257f6a1505f60b02afaf007a3ae034c9d351673b9aee6a715d663bdefc5ae4191ed9a4bdb7d448df8b07ffa4d43fec7ba459dcd281a615a383fc7d86a79aea5806f8cf215f92fefb04a6f458d5c3d3504eea9cb64d22aff399daaaae752431fb7f63e8a6f170af1dd0d6f6c83126bea88d6fe9859355dd6de466d257dc2834571105fcf13be08e0284999af226f0d1a7e43bbfb6b3f57b0542db92a7deca128b48f1b28b7e7ee62b01b955dcbc7153b13679c70e615889f8a4b46ddb6db1932512ef132e71dfe77c26be37dc67e1b981149b55db866e43b569009c79a717e80e15b9149b502cf173b8c1e449038d8ce9dd369320c42f07e33914d8cd757c657e5aa8ece8ad3f9dd830dc36a2c2722972c8e5281e918d3aad52c5dd3f65e1f7ad1a5c8cf1f0427658a046e1db6d5e1ab68a7cdaa46466936420c0b82bc7ab4859a66b99211437a10774e6d865c3528fef7f050a801dd3c1178e64b3849bfbecb013dde8847bd4840e3fcd7237089824c80e08d5280ea9a091536e1930bbf300ad4d33a0798e82e2e0f4d635feee8ee8400a9915b16355220134f95f9eca2c3f2e49acc8c299a4a8194db97beb9dde95178e9ca418d8887e0bbff4639838872018214e342d87f4d6a36c0da944642e30b6befff5635bf5bee70b2b89bf66f5d14db9e49a87c26eb12a434260c938a191f5c3ce175538d7ffc2b9f725e39ee10de75e92edddfa09d7d13c83dbe9b5351d45a85fae5722f66be218e8406636c799b03737274d76d5a6aefb32b3a87804a17922ecdfb714bfc75ddec81a5aa8254142eb6cb590044c06618b7ded48ab2efb1d67dd1ff434e57983a6dd9abbb6d651b49333ce84c7d7eae0267522d111ac8c3b67bed46a637d47c49e9b3603afbc92d6f4bbe837235b40d2434e1ceb773e74c1f905e62d7a1b3d925fac7ade285244b76c931203d92776c46a868d2a9159382e4ad1a7dbafa6ae3edc36e7cc0821dbe4cc118c905206bc92a1935454c0d0c08a027237c87c0d3ea136f2757c9d667035cb93ce99c3b64f68bd2316ea15028c2759b563097efcd9da2c358284a534e1a10ee4d24d5cfebe35fa2bbb9740085b3f02dcd8062ed7cfd8e2c3103b23746e1a53e2001177d0c4b286567ecda6dd0b088fd4ffed35a9cef862c71a3915355cb3d6ec49df2a51eb7275da9e9cca942e0cc1fd32343e3661fa206c3ce7404e8541ff7329aff818d47047eca368bb68822043f03088a2dfe81382e26042513aa8acff9c52c62545f84f87766607ddddc81c78318ee569df4590db051ac87356acab2a0f57b8a7ae3701b9be10999714db4cece00b0db68cd632b9f40342250813a4b6623ecb3e2f305e5bd8968e0b835f6a9f662dc2aa690b61fb6cd355f2e4a9d682f93e5423723cb1d36c662417e4734276f83ff8928a7b6fc5c1a0fbe235f9c29b05cd1035fe980b9fb364386a15ed53a963283d859e8894fa7613c349b61c9c316c3a4e1b181b462c09a8c939548609065d09058e439d1c790917b501f89545b590a35ea0a8a8ed58bcafecea86e6bce197ef37b0d5afa943c4ec4d30b54b5e4551d194292ba2b32117f58b6f474b3e68c9d7bbdd687905faaac3ff6d3badeee8db04adb6ee0718b44d4d9a43e5d8ef667cb41ba9491a58b6ad13d9c63d181d772a60cd56ac690075b432ad4e96e8e40a25a2629fb7669de93cbf4a01f94ee59748c539848a75d0f50babca2300823841ec8efab8d0ff6eef3aac82aae8419020d8a250415a269ceebe513e5499593da06c73678cb5b0dab841fb473ed90102ca2d7e57ac299aef53e159ce5bdab402fad84352b87f39bb7072cc695fb54375762ef29e6cae368ff03bd617ab10c0bb2eb8e04c10bd49ea1c10893691b825557948d5db2abb44b0272c37e8ea0735b40c13bcd889132fe66d6a87956a4e456ebb36ca65b570e5dc4b4368ab298e9de6c4ebfdb5c1c11b1dcafe46202f4c55aee356b424964bcc2673c5531c6d38b6eea845c72d4e614edbb4a5738621666fee74ecaa5c0030403cf9e958aafa2a8b2330a69db8a3343dbef5de49eabeae054a37fdc72bfe38ed8cf771960a73d72683a608ba99198ad8536cfea4d51262a1c328c37ef8fbfae0e1705182e2ffe4912767c055c5430f21997c726bb77920df39913b492638d90612f0309a8f5f36492cef85f74a1852b0f255c385cf1f361c7229a9d105f95c5adcd35e2087b9158b88f31a793bcb5ec55760e6018d456f81d58690c9dff33c33cbc89a1a59759b490a0583278707adf3e93ebdd1cb970495375d59b42a7a22bb4cd701ccb396e2597e83d0819d0e4781d9a79deb97145a1890a32d4696faf297d9fe486526faf7420cf4f348c45cd33105ef83c577704fa3403d7398980977eee4c55e4a9491542b321f7bb6049ec70562e89cd4a652d62b5953eb0166f62d6fd4b94b1955a18150f7821ee2df0fc7b1fa04ce475d6dcca6cbacd49df39f4071a3d71188121946cc8b5aa5738adb64c2ca9396cabc197e4525667016747aa4a3beed3037f2e954f8c702376b40d484d8ee7deb1c191c97ff46253cf4faa2b1946131a9fb8613ffa42ab8c2ee5bcc991340974db9ae2352cf0134837e66d7059467404635dff24828d063f19d6a1bd69d8130cc8af09e8ba2ed67bf5a37fd40598b5fa9496f995c916a00d4bc7493092cbf1834d04454200192055c438290032252c5d2e4fe7b01464333b1963fd569b2c166ca21b4a2949adb4e8c6e212816b24fe5bcfea80c1f259b9644099a9d50c5203257cf9d7daecef955e61a565fcb5b176fac194b7ac9b93cbc72e7d2ddbce50a23f2b8fcc0f295ac18f6e9ccdd27b26764244735979c56830764433fc411a7702c44874e81ec260888dcf613858cc4e2c2e7acac17310fe247f3708b24a6b67e5d8b0dddcdc479c6c920a6cbb757c8dfd757157899910b44b29b377ba7181fb61c0b341f67790dac8521341d65f516d1ac0572873b5c4c0b26c47d522927ce924d91e32551f224eae5377903734552272fd971346e76aefdf8cf1084534e709e677b2d46dbd4cfeaafdfe75f53b3e60b67041dec483b4fb1bc8d079c43223fe3bfd8eb2fc3a5b3a2a9efd9e2610436621558ee5cad7454af9e1b78e69f75e6b766f8c31b549f7f80a284b27a5750b4fa38034f9e14d1144662c5d8a7d182e7686d4f9eac7ac4ad2e188770ee8c2d5df80b6a51ca0660399b3ccddbafa70ab0168f51e11bf7349e15f9907effc042a2d7a7fd643cd178fe487f341683549204737dd1bcba23088288bf20f24ba21c631861a5613c9486259ad682cf30f4e7bc318f4bf2e02e365010fe3c457f7abbc6ba2c2fdf6eed6613cf19b023d6c7e663ee8167b74b89b3868b936daa0f0f1590e9cdce64676ce3a43975f21b202eceea74961f22bdeccf5f6454f842119b8ab08238c0b5d27a61ece8a5b5a6597e0f37700d495f62d056e89b2727ba36bc9ae4a2535795d40cfd25cc46fb2eef9f3f2cf62598de90b49e9cb513b352753309b1f924378060b4b759e54dba04a0f909fe740c3a6e050e853a7d779d1c09ccd4d3a32797e89e88af67ff086555713e08c98a78af3a7738003ac8938de341ae22b6c122042c48852a1f99055cca4ced779708ab825b44ed27ca88ae83aa29775125b80f8edcb1cb36538c078a30b471237dbf8e699f81e7e8139ac03663acef9f96df88c46651ab5ef3827acd5bbfc0560c186ccd2a36792a959eb6477d589e0e2e80ead9870097a94dd1785fd57d2b694d313229f10b5b1d281a6cc27403e3479289f97d8710c2d5b906d615ab99145c7b423c670020be1efb2cb85351fbcfaf23f177d4c40ca8c4bc8837390f286af79f9ad2931afa7c0f93f2b349d0c14ad6295ab7dd5253e5ae301a8bd348bcfe68f50e56f1008836b1906f895d4df7bd0b4fc26073c041e7c77ed9cb77964ce5a480c22814362ba25b3f8966413bb33fb5f121a3b5a8aa6fa99cb979d0e6849b8c42a986ff3fdc610b720b1a4ebb703539c8e127cacb64c1b6c56eaa2f1f7fc5d0b8dcef0c9cedbd3bed4809bf88847fe620f5c7284a2edb929ec63e406292f79480bc2683e428a0a18fd92cec4600c9768567e40b368db3c4d0ac77414938eaa067a6e267352c62fb2caebafa86f8e01c4c475ad2d43f1d877370ba0be570ac229a905ad4346b9e9e149f519d0cdb8bc3b22246e2be7e4bab8039bf95dbbfe64908f9862bfdbebcfcc3bacff81e5fb406afe5f50641930827db629a26595a4dd31ddca841d124e147b5783df8000c473ee3f6036a387edc95fa0eae5b14cbb499ce44a853252a462f051c829c8f81e82c58d73ecf7709743da815e47efada6feab1646304b51d052852cf2357c072ae7355493d68c6a9bed3d48a46ef43c4877a49ca3bb8177a3119ea7af17c2e385e7f4ef5caee084fa6bd3bea17b48d675b2fcbdee80617f0582769d2af3f1e2be598b364777aef106b76caa0ca5672d97b2259349d7c49f7ae714d252c3aa351436da39d66b4f39e741060820f5e359a38fdb3c1abc14924a3480828dee90b3907feb8bca38da84a10d42268c957e1bb281707aceca0c2c481d96c713f89eb26c17b6e984b8680ac407e7b89e22c409bf37c5937ed8bad3132b7907084fc3001e51ac88519d89b94dbe0cd9e71e9c9d5cc6035daabd100ab7f0272d64f80350e63feef4835f8edcd3fd8f5680c2510d9e9a439f5f7275858b5aeeccc1b398063660ab30c1719cc1081faeb44673db55ce926da91d032a03542543feb38d29567d9045aefc2617e7488c41a2da007a212870a285445786fa8e4f6e0c7dcf5061b6ee00019c1bd4ce4c3e7bbf4e05916e1a249311c45ffe936c2e96300f4597e2d4f6417981f86b9f1f55a159966ba73445aa4721fd24bebcf45835344ffe3e1163fb56bec03f3b26afdfbd771e156c84fc860df0f904b54929c7b5f65a149b47501db3c245258846029f2e6f51d055c69e3216e58b27fec5d06bfaf1c1569f39e1a966d881333732e8d05189fc4707edd8dd530513aa2778d657c294be7eb2ab0fb688eead542565d3de002cf1aeb31b9ab02e7f9de2c835702e154cb42540abde0e33421c5d7d35b79c3c9a79cae1cfa132a119441431436f83501fd0c70739309be21acef074908ee5647b69f5b53fb2aab82303b73a8be0ed3bcbf86813c7e01976aebcb21e816525f91412e2b383c74c95f152460b7ae986338bd1fec3c74e1fc9ef292db45391d2a0984a40650effb77c72ade8090c984c7b1f5b57929dfa3e11cef9fc871b86ea487cfe68bda93335c14c48e5c9dd14ee3d0f2a040f7af5424fb4789b32a5de0a8d57dddd8087b9ae3c67d29ad2b3c18bd94c5e18e62439860e5db11704edb94e8a6001c8bf65e751c15738ce727a1fcd95430d00859706041f08d1a88ca7070e3987c5157773e187e878850243b4fb04b4a760d1c6bf8319d0e4dac0167292198b085d4aebc9522816068e157b5afcc4b91bf99132982fb7c637d6760ab0a5cc8d7cb7c42b4e58b385ea609fa98108c19cd561f98501a8aa1860ce72c927f32c69e87e38cd807a082623d54035e2d5587e86b4dc6a7037262cdaff9b0e3be87c5b63e73d1f693eefb2f757524c490e77507da0bd0f374977d1d380d42ea0a82760ef26a506feaf5ee77d401d1ed1d1728529eec13f610bbcd3521674ed8b61c570216cb55e0e9245883cccf79f4e6c88bd31f2e69e6bb91c313fdc2e788daeac36e63036de0cf858f2d6ff4dcd5432bbbfb463c9d3ae088427adf173afcf66e9a3fcd8c29313dee800ee7362bbab1b544f0ab09b6aecd75a8e18d3f4eea9469f30229faa74bfcdf447164f53bb9490b88731bd4e69a44ed70495a8a41271c63519499c931ff76f5291a5dff381bac2be1a76b2e13dd58cc79067554186a574a3df62d2150e65b9037b5fe3c006662b72a4bcba9a0533cfb25b81867f5346b87c6d26cdcdc6b2b3b966b8112ba15c224551d40166bed139dc0fc2f94ec591046928ad6dfe65022ca69fa015a3e88b4a1fdfe76c74b6318496117c87f0b03179c75465a0bf992f6deaf3f63547c4fc8f08e6dfc485af8834a16e08df8dad5cb5da14ef27005b822e27bc6c3fd108aabdf379ed99e32428d9df75b07a979dcacf1e4f6b8cc72b37d103d64df8ed7dab88b6a3f19caf5376205cc643caf723d137e55a56ea8990067bc5b13f3fee86311c1a2ca286d301e5b9f1a1fb3a55d7c8eab1471e980ce83d3f6901c554424ac77de04e45d3210d9992e6e124bdc520ae0acf8b9f59a1876d2d9a33de60d60f56c754e3477a3fa31a324438d9c22e4e9b7b6000d3d13f0e238e896a4b36f7ab6c859a1f0a55da9e58acf130c11d7f0a13f74b98449d1191726c4a4c42486be144aabb1c36889401ddfb4a639e07242dfaa9b366f4a8746715afeb1f7107041d7ad44c6e1a175760809b70f64ed0b839dd8139aef457dfb46580ff0b885921c6af041f293cb4dd1cd51b5d51ce02ae04975893eea02303fc88b26577fd969b465a6525d5236225def86b0c7d0e1ef2d6d34fbf8978605cc13c422abdebcbc7131b9a8db23d0070afc9b4ab1af8da70c263490e4318fd48b29145e21f6af5efceb049d9cc89d359ed66fdc581b20a004179bce9439f6ae4890f6eb7df4baf4156bb27fbe3bb5e3496023f088298c9710c4030bf80d1edfc4b875511d0028a5b97410a66872e41459ff4feb96909f1b4cca2aac05bbfdca78fb01ce527f039a798026783a262e21c1527467986e5096145eb5158762e523e01c93d08c5b1fa07072499116897fd8eebb09dd766c368e14012b9f57ba38544252b9c6b2c29e752e8c5f3927d94559ddbdd19abf6ff807c3954801f0c560d195e5976935d197dff9b232d4f106a955d8d39bdebd3b3ae6f48920593606c069c6c6a4a4b640bc34b85962491fe3b84b13e474d87df194cce4541302921b809206bfb6da107b4f67e8bfc86002ac8066c3c41141dc9e3804c1ee9cabdbfdd2c9cea561057123dc1c300014d8181ac40dde7b85cb479314ebac3101a2a6f4e5cbf75bcff622d59c56100972b195e74d1bd42ca50a6aa902355629bd3c56f69c0e8f7f0d1a95f5c273e74ac2dcc741dd10bfbefe43eab29cd7732bdd2241dcbdeaa4ac9be3a0ef4b90e776998fcd6048d856bc03f9c6d8f211f9c129f51274fe8536458969dc7f335e03ceb71af792b69bbaea8558d4df657fcca3b7e21c8ac7fa6a6b936d72fc7cf8e6466057b5335bbcce433fe376108742d863669ef918d8fb11b1a8d7166920774aea76505f9cae3c086f7bdf194b264e9d79ec15faf1f24a8b43b2e06e7ea5f00d14950ce40fb21dd2131343e5abd191b073f3269e52a5c421fb84dbc53a94ddbfd0ad524cac9a7682159ea66c576d521feaab7e715355ad5e398348eb24e46cdb7a13a9128a555d249ee6e7607511a41abbb6694e98eb842397ec6b89e05fa3bb631c78afea89a712fef221f4265b5b924ced8e1b5b887d1f149d603db402968e105b9e9ef65e07a856f1d3042f5cb50cae63343203d6a5323669f44155980d54f08f1848338f6d0e6318e7a34ca916e02f841bfa19d55f97fc9cc97253706d9097ceec2ea29d100ded65baafc807d04e278d29390c06aead845bdc1f4399e0b978eec93db437e9ab48bc9ab2145f2bf64fbd7a65f9434c9bb4bc56a5af0ddcf4469985fc2aeaaba9327e525ea3346b386ddc4b0c488aca3327b999c4c783a3b1cc113f74957d82839bc21e762ae84a2371dacdede965138dff18c13756894f8e653193cd4e30abde0e245177f99d5ad18480d7573f7c38de87038cfa95e3103cab8a5242dc14cc709a947d71fb7f6e2ac94004a5312e677d6de8801e505faa479268e8b39409cda6b22af22062899f1be31f7a85987d87534e97e38e481b9e6d31a6ea1cb812465b7790fd4a3a54921423e0db454862422ed7e0b9e9c555e7e68d69d5f5a6081d02dc15e3f21ff367e3a28a2105b921a56014c460392c3756f46e68269d421c8999eefdc561dd55fc6c5e9e8590319a68d5f7cf55b49c1f652dc17b583f6eebb4961cf9ab224a8329363291bd6cca9d9450dc53d06a350068b63b7f8110cdc2fa53f967e0c335a295dd394c7c3c40d1b9d0c6259ddb3a12a899289ad24bfb1f387f382898db96fd6d9008a8a35b69dd9e2b46412d7c40c18490c85d0d5999fcc6595deb133b2ca5bf2f1ca515fea11214b93a6d5135394b814de5eb4f7de36aa9e03265b3a1c49336303ad921678735a1ab946b4166f331ae83c1643a050325af63954ce1265042e7f659cac0b4b6d9697b81ad1c35a51e3901a660ce9d4c2172292b5328cc46a199af536ff2b5c5f5b162ba8c3159745011cf6dad1ee02c1731abd93798fde9d015e2c202ed0cd8b297d927be4c3435e86e071cb0fb3eff363b41c78c26f0c9b9c8c2e338a4b705319ec021b7fb78b71d6653120892ebc9a259df69143d09f2661403774f1059d692643d94cdedeade2cf278820ed516242fe8d6752ba06451cf48ff4c2d77adaa133a901f7b3991d1789358d81483a637fa626b14d3ed20f15683eecd854b2340d0f7c9fd1b5e13044b5f244ed8b768848b8c94bf6a8f19e3ee4a7aa8301cca20e6693c3682269720ee00bdf10b8ebe2ca6eaf5a4467b77ac57da0d26a8e4fa1457e9dff641b13eeebea2a10ba2e45163bd10cfccab00f922e537da013504a6c6b36aba2920152c166f2c35faa07acc4700ad002c80aeff49e0e59d1d94a48aaf1edcd71f9de24ab727c648a790ff671cc794d517ccc784d531830c6ae8f533bcd56426dd339ec61ccb251b3f4f401306fbb92347fb9a3a4790302fff30a054a8308bc564599ba701fd1edaa032a83b38ab3e7ef0aae8f95d272f09bd1c0db8b0a969817aaf8663019f1988881952a031fa12aefa9127af9ea1d546202af632b2f0adf8eb4b71d6b805a69724229c235561a2f077261c569950a84325b93d943419d4ee74e026854d05b4c83f3251119368fdbd9cf4e4e58e664e6565b2684588a3479599ad192ffb88376264fe87cae0e709e24419890140397492169e08d13c18f56e253855308ae45511895a51ae8ecb25b827e421f1786b993f056f7b6395ba315fc5a26a63d46117b68842025a5c0baab6adbc690d6df7bb1b8b11fccae924a1ca47bd85ed1d4016c86f59cd5e9d419511c558b13c5a869dad6b2a7977b0d971da07fd78be9270af41021772040247dd453ee0d0b70f49ef64597d57838edb1d5694fb79a5ff860124c8cbc27a6f0bfd502bfefd0fc1af2385de8000d536cf5d17b112c5312a1c9389071adc05cffc88c3d728df77492858b5941c293acd6b51158e828bcd86745996a8595065c9effc07d0f6f6dcd352bbd4c02bfa155742abe0a8a9246c99aecc26cdc98656be51ffbd36488274dbf804211670149715e5a6f160ea2f59cdef407c0c40407970f192e43ebc3ffc4ca366410883ffd4d255d80bd7ffd6173909ea609a2fe069fe01b68d992eaa06f8b1421e1bc91ce0f7ac8fda94c13574271c6ce6796dedea845e07837dc980938767e9fe9a4101a3eaef63822daa4fb27c584207ba4f56c054b5ec42ce309f6a64f5a8dd97bae3f13126658a27f9c1741963f191f288baa5b99c576d3c7914c57e26a2f278acbae79366f4713ef5f5fb47b91e91f6c11fd7b78c6890650b7df0a0dee1023f648e3c59f441aa388cd389049b752ded701779252e48cc1bb54fe753b55576d75d2160808a3b7a8e95a5ef1ff0c8d4623c3f2b7a3dbff6c581095aaf764dfe5ee3322fedf8383d22a8be20e77ff00005c018c905a9b59456ac019cf46453fe8370e7cf07154eeebcf3acccf3fe6982e77699272b727dc592186bad71fad57dfe043c73e37e975284c97a88fe3bf5070fc07d74ef8e6ea41f821ef4d112721c1bb7e8c2ddb24c786c9b50c4f7bcd881a8eb06d3cad4d25816538df3fed52f489b436c273fac759bf23d19e03c989e0a750344669e4fadf6de31515c8b8caba42ac8098498a2bf845492863848d630e5d04a6e35f6179b1ee34fbe8cc2ac38d35f6fba33b451c54e444bb3ab21923aac67e280ad19610000bcafa66bb234899292aa383f369b368f9c46c862aa00de581cd1a005c5ba50b782a329d3b3bfe0dc0a8cebf54267a614c5ddb278dfccd5b863900d0df7eaf7c5ffa2a4c01271d81460b5b082b711139b5912f7caa5c921e0e51a8961cda8b7d4827ec904b73eef713ca1a412a3aabc0d98339444832ba3250415d76f05f232bdd913725b691027d8e1b6afc9cf85de94c5564e6499325ff061c5052cd411dd24088c838d0ded31fd528afab8896106efe09421b2e2338833676be3e4b38f90c6a0a0ad386d3942166d9724dffb634134e833d8d9fa6f3521046d2b06b86e382460307335fae537994df8e9097e8a6fd9540461bfcfb7d38e04e6ad89150dfda645e38e85c56f1a77bf324b5d4d1e6e4c1c88040086e8a27835c5516d673b5ea21d594152268b6be7ea17b0321732b8426d14d14136c45189c71659aae40f17e53eff9831043c36ab351fc725e7b76c86f8af04b45a3cd30e140c307d7e6a5170be8818e7f3bf4438b51ecb4ea131b9211fa24cde3502892d01bbe1b80afc1f3220545f1221cf8e63489dc1090d9cc267d5f0b40620afbcf52bcc72986981056619813e70a0e01ce69d1d5dfe33109384a3f0b7eadec70f5d0ef1410080874dd3bb1d3039cb53ac4fe4fcf3b3400f0a826a7cac6c29c2ea0cc55b3faaab89b2fe659658afb0324b5fa88413f5e3c9e88d95b3aff551e0501270f3276d4255ee4ec61dc4e168da379b8595e82b3090746a526c44f3939c4e99a0dd1168e220c9a4b7f211d99be5238b795fc537e6603c12239f61adf2eebd206792bce3f640de36931a8346dfdf4ed0cb8e1b9121f0bbf54f855457c29b2be6533a4a3d2d55ca4e8e6db7cd0a99acb665cc226619f28f3fcf0802dc9d25fe08adf3f334ca00a60179b42866be9fde78cbaa2f9813a77177b43cbcf389b9dab04964902acb9c772223ed5fa44758161f0f3c4cf981cbd5ff2bd08697aad7f88d513bc704def6ee42808ff59746a549f7ea2eb9111e04e95dbe1e5ed8d9d0cceff04a510e171c2d14b6d9afb47095007f1fb54dae50145917977f9d3ce644ff82eea395b126ae061a9827f09ce78468879d966792ec076bf26647b3a9269d4bf6317c4762c345a8c64af5aec80ceada90ac3caf0867b497cf39b6043e88d239bcfaa98f7921e4fa7918344c72504346b3ffa4e11d21e583e86fda55c49a4570a1cd8016aeaf2c5aba375acd5dfa6ce9aed7f701b4fdf6947ed52ce9c1bfd59eeeebe8a8c43c282efb67adaab8f3da4fe51f0de49861bb9132e080b12de069c2926294f7d406227c27e021af46c9dbcef9751327b532eb40089afe67013b2ff07e0753d4c3d8501371d003ba39a7f1fa5071c17433632246cfa2ddc0a76cd5be325b4c4c5cb8bfaae8e19826a36b37ced6a05ec9cf4de425767856ce08512c1674a9799dc8989f531f701c3df3cc5bd92010f94755d356a127ec09a8ad678fb78bb20142c1b5345f49160d4d6dad6023adf0720579895011359e4c6367d384d21cd66c9133f007638ee9a61c5f8a24033988d7704062f3312cd7a62295733e7d1d566439bc080dd22b5c3142ff94e0aa3e2da5a93e6745691534261b986a79d20ab4fba5c4c3a2d92e50bde59e66defef5d8b9d645c56868168803b3167917e8f43a37bb1b0d36976b15110e6b68a6af3da5c57da624066534b067e3c66d027dbb01212eb2ac8d27dbbcae07963152910e3701ceadc59bdf1fa214bb6adddb6cc1b35c678cc5c33954521cb2da8818695c466dedab90d1dba50467bf57193a5be443e54de8ccdab19d49cff935bbb243c6bb937ea3c022b760b041d1a28aa78960af9a25695d705c69e79ca32d7851894cabc222f87414a2173d395feb9458ff0d7b8d69579a16cd0502baddf17236139c2fdb13a0b9b8189c139dd95fcefa1d9ff38ab3c8ab232da992295e98d7d7404842003b2f1df18fcb9e54af7bf452cadc81d6676c0fdccf5691e4917a142d1a53aca4352192c932fd22caab5241dae9a35a09a2a235a579b4793a111f86a3c14bbb20f30676988a4b941875cc8a77d808c32a3137cc078ff8dc4512eea20a486ff1c12e70108cb91e33aae52c63f70ee74227e36af85519724df0c07f85f8b49540be234f65eacff3eaf8a8c7c2c01653445351a3c2136c85a4aed8b282171a2388d2990e0257a2eec2edf8fefe381ca28b1887bc9d718174191927a1b8b8fbad14c181665781a5fdbf14377cc39d351fe23dcf0bc934305003759e47437cee53b5d07b79b2144e499f75f4995a5f48a83ce7b938796c2556ee0cd864ab598677017833a76a7368a2497e9f6acf06cd40505800cb5228c058bc3d4631e5376f3d6d5a8a40bbf0861e8bf7fe83ea240fe27c0f92cf77d09238d2075f342e811dee163d11d4d448d6ce39205231866935810076e9452426ef4cf0ba61c99580fac6d07f080beb2da5246d99a98cd04c81223321a327e26537b75a05af5511ab8ad86ab97d040ca85e8e6f52747e7c4d0cb2fcc67467d9735d1fae1ddda2dfc055e5199e27741d4c8cdae0074caf8f3fe550dc16f6fd438631cb4f19192e780e8783ee51bcf31d82e8fb27523f9246b62a612160dced38d113c04c58cee76b74ed3cf35306845e46f1582771dfb6a8d54f654797e594629eb908cc0913b05f3d828328fbd60d4c7b5459e34323249e9955dfb3f347fea9c64b8c14c0a85f3c93b55b6a810b9f673e1f23ed0ac00ee8286557799a9922518021f0f15cefa8d1f5fac39f05807ed63d6188ec0e826fed4aa96781ccdd7a32e5dd49f64e926c7fcc3ce39bdd50c05ebb77f1348713d19d6c8a1ab5351fa02a8869efe7cb19c837452c61819b321ced91862f715c79345ee116c477ded16d0332ee3ad28a96fd25a736631681c61bcfe5dd6980e24fd4ab99d67bd0fc1229336deb66c0c56d74a25bdff4dad698e06e04249c13192678228eb4f621471b9dd2c9c928edbda8d2b9ef362c8c2f264ecd14937fae56c81d932397693c3400f9c6a4c996c31a5ddf8390c093581bb3416ec1b4af285aa4954964752601c7a70c394083ac900f6dd5858ac3bdc716f4e0da045756866892fc73e0d81493d31309f2be8f6c3c3511987d7d0370f1f4c65b7c405a372a8aa889dc17dac3f58e7c674fbf9bdaa8d45b9f7d2f9e4b09795f22749b899eae5e68ab4a5c47115d7ed750fe52eca03c7a7026db6c791fefe28914219bfcddc387ba6b13c07bcafaf532e150e13c6946bc7c1b6b792743e00a7216449636a178aa5ec460deefb3634437b1c42ab7e73ff2cb8acccf3c43cc26506915d9e6d361bd4c89b3edb9549f20b1e27f20cb0d5510448cfc8add207b8f484a333d6bf814e16fa6a3c9bc5d611c84417ef8cd38aae00e5cc2fc70178e2b87da88f97f857027446f65b8f5541df1b4685f58c1fa4be22b7138778339464ae9854e3d9c6ce903b340f3722a6aa5728dd6cf84ee839835e846edaa514a258829edc3e5ed213d0219ef85fcde5601bb7e4555a8e079cdfb4789f50c7dc20fb75875100e464e41857c63a072342c362a3bc42c2915fa5d749ebdacd11537819edcc7acadbec0b2c1127f0d178ae624d2151e02bafaf4808cb79a09fcf6242fefe1c290d7be846b3b5718d9c65263ca3d227406242c3113e928d985dc87cf3529e127968b22995666a91eaa2e13b0b847b3fc414fe029e09512101b5594b6f35adb65c0c2a0ccc2f4de718fe362fda72cb9b09d47948369651dd33e0650bab284a8e90a3ed8be238b3adeabfb70da0f298ad3fad9191c55806a8cba113a828a1d00f9819da3e6b79aac5081c5cac0fc43b4cc58b70a95bc29808836b7bd43117374aee0c0505b8c29d9f3881b88c92bb9c8075a5a9e372705ac790c1fb2b4872f846bc22a1e953acbf6fce12365c4cf0205741ca697126542114ccdc63762edd0b3baa81d7ac3e0da96e793d62d64ed90331449bf2981378c41134aef26d5317dbea4c43ce31170a248a453ed061d63ca0ff480148bc942b9949ca048985275515d7746bb5d451f920f8ede2c5c4dc8a97006acebc76557007135e258b40ea9d6a9e5b65f70bafda2181a91e36f2c6f9756254573ee5ba88eedab856bebf6a8db5b516abd8bc0bf9af41c497de0b055b8e13be4d559ee4985de48642b70c0a90351ff8c4ebf5aed225aad706e1a3ea228a362c111cebe76a5b7b6769299b3f085607e1fc5ac4ec0dcf5c821ac39532c79dc92e887841739e6a157983cc94faeeb89b9e9e06ded239362ccec9716023a0eae23aaf34e7d5dd7261fe8076cb862faea0e3c79e77dd846e5d131f1f60f650a789de05dc7e55a127c0779c6c113bcb03a0d35cd41d2d39e664e550f41c9364ff91fd711f77864e8a68edbe4b130ab5742ea278f803e4c764e6a26278142144af79f36d975a66e8ef7ffa4a402a83485b25e50251f9ee11a9ef78a9404ab0c7da29884e23996d34915404e317297a81fa9678ba77361778a69116bb00a1934e84913de2f4229d6a141fec94bdc1c2d741f19d4ac74e335ad723e5c3baa6e6c9b1343876bdedc9c5903108ca6cb7c159a6f491d9324261cdcaf23268c8b214383c1df4ce66cd23708c362789221258841414ff4021187b8c55e1ec4abc65eee32a39b143f63822843c736b92eeaf6121c77d1f342359011283a0048d8ecbf43a51f4b038ee2bc05095668cf305dd2902c1ee8d90d25285b69c14f76034ddcfd8eed0f7c4847ff280362a9b1c52fa903c069f77b54264f92de78cf5356866eeb704c3ea04ee3026454314b4313be067a522841ef6c118465c71a3bdcd8679cbf0a063f1228ae65ef6010ff81cf3103e99eaf712376399523e237df3f5bd0178bcf32b62b7c060db0b39873328ba8a613272bbb70db9243ea16d533587748391cfc049d0139d04a9420b5eb3a8b6489d74d246e535fb36dddd67b39c99020df962b40ac46733134cb8b1f8a423c68a36c8c7396ccb451a8f5b86853fa3db10f8ab2513f37a77d1afbe1108923790191f78451562187e8aa902ef17d95d6276d3624590787837cd1eb1eb27ba7b333a3db70e4bee2ef2b24f5781f89c2fc2878ba224eb603b803911ce6a52a0b64e31330899f6dc33e3ea703c55a9f59759ebfdfe693083e1df7863d5f4c947e89c70956db5f288b7e9451c8efba81360c8971f148e1ee8f1b7e3fa4886a97fa76ee7307eef614f4717e388cb38e599c6f05f0454c1eae114b101b5a8f4788dde8d86b63c1cb63e1a768c15b6f177173c1e090cce15d4ce19bd347968202593ce2aad921c6ed4c597760b2d46cacc385d6152fb772ec7b623f82861fd4a58cd4b2ca7166cfcfd9e8b0697523d8afd76a830a0f8dd444e10c3d1b079013ac2efe75af9aed936bc231aa7b70db348cc165bd04813d905753bc938b5a8207dbe5236d9fbc16e03ea99a19a3c7abb40d9c827dd7c42397ec1f3c05a35248ae885c35e2ce7a1987e6aa3bf419f2575794f2d9652a536e32cb9a1fb267c07d8d1acdaef56a0b96d2e03f2805fce1e7bdbc3cf8bf8fc58496f2179652d2b93d683115518ce2287b54230b6d832a8b146ec6e0556f03bbc1277fadf80d6cfef7f09bc5bbd9affe721e37241f81430073a753b7e40ca030afae8031d76bcc314dd48857c4b5193eb9e46113ffedbb21d96949a3d168c01d57d434c236d80d632bc79f52ed621c650416098a1d07692eaea697160bdfe002ba6b7b7b46a20a44a7afd6b2dd6faf587fa1122848d5eb62e427a1cc938fcb369157a781e4986249d9244fb288b83178aba47bc6862a919cebc6fc4fe762ecd1cd8e7aaed6609efc1d3d07165774ed364f9cfaf18263c780d278dc5bcd749549a8991d645d96dda1e1a340759cc9c84b4b7563c2e0e1b3be371a010ba4e51702553bc1f80163a385b623fa23a4f69bdcad868184b79ceddc22d636d1eb4f5812ab7150751869979b34f073475e5a78a42dbee3e75e99a17d76a846f9ec3f59bfd6ae2b64ac19df522c55f4410b3a7d9434e5e62ed65452e158cc4a78ebe000ae5962aacd6e7c62abda2f88124d8ad4da0003bb923f7fbfda491411388596d5f045aa0f59bce7a7987e01991774268d059b1bcfada3f15497f6ed902d09f4ca11b4397757f7c43e508d29b367ad7003659ead59279733d57c12ce0d651a4043138d45a51db09ff2add684091dd3aaa93e2a86aa9127cb9f09b1d5ea2de0c650203d0c4c1520ab362fb50578e967d242fd598a13a99210116ee9135f71403392da8f50570f243ff849d547e1f673b61e6b55ce2387de17a44aa5b9379789702d946cb3186fd3fcd9bcc6715a0838a28b65da52250c3abb4e30802bec3efacc9f74eacb96aaef9e3374e3e38daff078c0cd9dd255ba0e529332b76aa89f38774fffbef4ab8181194921b066bb422634d30196f3ab670dd54a751816b6f2e7511ed904ee6d3c26c43e3712c906e82bc26456f1b2ad50358c0843e34e24d825af836c839f1923025686ac78b55cd21f1c1b310c3e289a328aa6462c3b168a84f0d520debc2bf1b928e057900b7dd265cc88d6ab770044c8d8ccc71e2aff732a1f0633abc0a854c71a821f9f601df43bbe0f32fd8c881d240aedfd51ebc5f2ad756511f424c9d0bec4a2acf8c565ce0cf7dcc9db824cbc533ccff2bee39cdb8dcb349559fc96f339c6b45120c6d769f040817e3a1996be3394d1d5f9fe0956268f1de883a72dab668c43afa984de82e3b5bf76552b72f8a62a59224f3db495feeacca677839dff1037c4e49a39cdeab74c0e0b2b70d202fb600e50bb849b72084d041dc6b5152a3c085e83b7a6901fd5dde3bfb34adf4fb25c419ed2bd6fe5257e2d0554dbfe1ee149fbfcc0e6505c2748bb6a9363c20eb6592430b513a1a11a5f625053295605ccf3da99ba3cce57778ce9ffd9547e9fa7fbf060f62e9c1e72073940dd91dac606c1749b52fa160e37872480dc68503186c3443cb84a0d2082c7ba74bd36d2ef8b37810f5287ae515003124bdac38ff463a8b15534138a28bef1ffc98d7f84f19b1891525ed222d58559453f94210f5f64bd52a64bd48cfc78f9463ce5a9dd513e9b78202c136125440f0d48ec661d5430dc5eb4290ef8821249bd386e81149630b9033192efd29fc9c7cecbcdae35b7a51319263f60fbfd6633333029f7915cba2d0672a0e6ce39df05a640008406f2d44ac75bcf50381e67ac8cd5eaf3d74a15b3892909f655143f3c5e249066c00ddbf38bb030c536a6d25e58313669bb26b42d3184f3ef7d7b5da90b863f9e606b52525ed0a7dd0e8882f7c8199da704bf84f0e4e10f93816f236c769290f4f998e2f494b1351b95e65a530245b9fba458864d657be6ee049ab7393afeca328b40ffeb05cbf109294525ea1e0ca6f2581a27eb64625a6c76769afb380121f10a5867e95879defc847958112ceccaf510d430b223b49f3e669c1486bdc55b6a5582e990ec1f84ca5aca9f96d52ffecfba5ebf90011b62a006304a9a954599f3c9207620a5842aa9c21b4c472114f21d88b7cb8110c40cb96a8a34ad68cc7e5baca15f4c8c36bce0ae69fe0a55e634a12c8af12b3d18716ebb0d615dc842a723972b777b3ad31f10a3d5717a9599ac13ac9708a3130070d24b20d6eaad36be5e54ad68db1881eb9ea5ca5d59229497fa867f71f3c01620061e3befab486634d8b8503e00ebac2650ab0b84b346368c7693f2c4a6fa3d3ef866fe5547ff6f0c698614d1f2aad7565720a5622d81d43e5883e68d794192d8472fb13e0775dab45cd691ce41ae5e13191320f9445626e0be338d185bd9e11a8b5768e0b1cbe590273a5c18d8ebcf7fa57022b4862c255708308344ab578507d623212413b9c8b61923370fab0bf964e3e69fbc96f041acd551da28dfb397965ea6b8a841a65fe72fac4368c9a7a64492e6655e009eecec9c65c0f9ff59cc21d2855d52a71b0887914e4f14ae31accfb167d2af392e216df38ff5e994661a5214ffd584828af845572d4b458fef1a2dc8df0f940b22cf9f45816838cd864a67c7f9a6f77bcc4162af8b62e0d21d788b403cd8e0b17583c66747eff81dc48eb0ff75e76368358b67f47c393081efbd4c7089400487e5279c1d0ee8911cb8d4224e25e74cb195027240b814d4483c6804502d41f2b22b490a55c5fe853174a4164499108a0d94ceb298dfcb0c07700a3c6117571a4bfd01f55fca68bc2dc7da871b0217cbabd2777e778bfd4e51e3364b8ad5be21d6bbd9167db0652bae929e4cc643ec464ede4c1bfc56f14090df8992b734eb15d9e32dba7cd0292d751bc0d20ee3aca3db7bd71dd28c85635fda50d83d86481a79acc228ccc2bf6370bea06652ff452ead0904f9750f8a2e9f6660411e22f167605935471805c56cd68a9fcabaf5ea2a45957dc09a77126066f5c0e4bc9b2fdd8825de169038243a773a0a3baed7541cdf1376cc9bcf62ea178b6cf7d1fd19277150f11b968317f6c84b86a6b3016ec39a1278ee1b110026bbda87733fc1b84b9f34cd28961b4f5687dc82f2ed3c0d91415ffb3dada8750bbaf0addf28c7e217e65054c8cdd865f0bc4f4299f112cf80c569cd98e1dfe8dd37401610f9b8aee6385800717c205dc7d901007c261787c1aa922be20f38d73f164c66dced3ca7cb6deb0aa3ba89578d91b60b14f7a929d0c439fd235b7f9ddca7e39300e1e42f1a128ec67c1746be8afcd02c2a8053a33f4a62b13e17437f9c528d1e4a79d7c833a31dd7d6dc0fccad47839d9356119edf7c63c2069beb248b8f6ef2af7d8fee38b923a6dae3e6ad911037d0df263e311443120b7b15beaac1f4787c5235043a0a857bb1feb2eac8ff7b2c4829dd386e77a5a88a854ecfeafe3945495a0374c24db61aa213796f81469e46fab7f1cf94e6abb73cf1f4fafed0f4b204530c3ed34d5aa9567c1377c425ee7f87fd4e354322efaf7a4e7c9fad746a959cc9f660153f8c60ec1e584e49ae0c79c1f568d47eaacee586f6d0460c9a1c9e5d74456920dbc38d5ad0971553953abc647752b472f3d9e810c020f1188e2491712b27e67b7c011264003d3a6bc5556be0aabb7e67a4f9884e4d4c3d6df4875680a249e7afa7c17920a78a0e0ff017794d9c74224e0a4085c439f1ad189c3f7b9a4d18d6ca0670bb7a8b950e6dc5598dc39a34edf9315dba14ab5698fc4403cee7f0497395decabf4b51e9c2dca54854119f49c55316d20f8070798c79fa5237422615f08f9ea2b50e38eb769e7967d47cf3f99c69b598c755dcfe5b0313168b253565350049b24889be68eb1ed5d1504c21cf7e5153285deb13fd3392c49f46b7e97a65a4b137194cd502b3738550b36a7b5b07255ada1c0969ae88075d7c843071418e801cb997dadf5f8a0ba800dcf9531c8816eaee273b80ef72ce41ab298fbcdd30b4fe79fc168eaaf645eb63e67c91ff6bd245e116c242e451ed7f50b5ecc856c8957effbdcbd997cc07af4c4f7a18db59ca172b986bc3239982664ab49b047c9d44349c5099b4a7164490672eb043bc3d7e0af80cdc48d993b77f37c6d5fd9a80fbb41b5b9949f31eff801676a1f167115dff2baf99dfb151b0ac75905dc7f047471a26dc45de5c7c0fcc766f8a08f5b562bae0faadf1b2c3fe50bf92317b7517615fe726a2d01da47dfeb6ed0143029b6304a465bbfde21a22e9044468745aeac5900b532da79a3a906b852b42d73e0d751ff59dc896c6c07f7cdafdfdb5fdd8d1157cb2daf4927476a30e9d399ecc40ac8fb2240bc52f3f037829be9191e3a9e6b995b1b94db390eac70462f08c11601d9e8d7431661048c1bfa865d0130c5f85dd2f87a174d7cb2f5fd5e00b26e2266280a74f045578496ce81909886d23cba0d53fdeff99c4f973815d1f708c9579e2868d9d5d06a1c4ff81abf826eb89b9478ba681aed2cba99a1d081cfd80078fe4d6b19cb1caca3118ad997d97de1b495ed255eb4faa7abbacfc1b0e4fa1d4e54bdadc3783b3176dc2be639c1e79dc76a43ded9700778b5e39893db1da029b4d1479f7442fe691be47e39bf73bc36ac0b921f4af85049debd04b2586dae013fb46a30c191356e02aa12ebf821038fab463b42d7b8b556a685c97e9a825ab06ec4a8b5685b055802924b2cb112c0800c502bd67dcb960f21c310bc398e65ce48ef39899a22f56c2cd86e403341df524c3fdf6a69af7fe562569a8c27a5d807a207e26a576833841eb31e2901e234b8b81fc89feef789c94ec2e51223486e7fb6a28e52fa88dd66d43cff93b2fdd2d24962a960a2c9c333e21af17f9ae3235b9e5abbf94c8bb06b7f2d1046552f6277891ac06f4ea63bfcee17313c5edf9d162de50a227fd13ac3d943c6aa56b74a3cf5023ee99c30d82b1643c02e1a02ae325ce9e55aea3d01e5354057f4444cdc145edf2d7df4f96080335a56c65f63cd7e15af6ccd1e7174d05021321ac9abe18d3cf18c5159cf679ca87faa37da69fb085403c8a00946b816e678d1f0556d09a05bf12bb2db838dbda3749424cc8ac525798cfb45b4384546cbb4e392be596039dd225a61bfbbceb59dfe8f156da4974514305d5f320a5ca00162dd9a13d8d8ee9d8da9c68e5a66765a7a5ce60d80564d2620f1884ba1bf78f925fda425e1b86597a5446db9a7541f4e14ded3ecb20378673cca8efe8aea7f557dd0d69ba47fdabd230ff48384a3759336b634fc54f00213daeb397492aaf1235cb8fb65e3a1641dcfb2d5fefb31d1e7e54b6ca5c82b726fb45d909db71ecd9f3f0da5647c021f3a6a2cceb3c3934b3473fc590fe3e776152369d7110d6f1eb6d59f7219dd3619d01cd90fdaa882cccd85e1dfefe200de0578f7e2f5ccccb8cda9add4629c3869be801e269f6e0b0cc47f6f81a09a4fa05b21683df9d63b3ad482bc48604d0420fa596b1b4bc8e55ca31963982c71e9992f7264c0d65627ab76d9ca8af9a03b9440d81b197b0f213229bc9908610626e14965e5b30b1d194c296cf97f38ad54f062bdad2f5f4321ca83e119c9e87f74b656b7fb593442a7f6bc330c930affb2b971feeaca313688c104ae22bdbb2dc74e2240d0587247f72eddeaaee0948548354228627bcca3407a302403415d862a868e8765e985a3374c8b6431ff33f10162c6ebf0b0ac2dcfe7399bb647ca81ae62607060ef7bf8e7a3b37f1717c04ddac09fa5e9ee04582d684b3b63eba26f6488ff71cac7938f53b8802676eec6060c97231ccf8bd391de9352888d618a4de1a6003c15270c7ee3e5a0f2ff65acfddd8bce214c8f6f6d8646d091ccdccbfcd2f8d7667eab5fae56009365bf1b89be34cdb0c2f559f005dcc717bd52103fd2914397eaf648cedb9f22f47034ea07c94127d7ba69b26176c88af82ce022af7a71153f9fc83e7c8a35afb54b78e6b5693396bb0dbba3e6f8460868901b0e54d6ae3ca4c174d83f905ab30ca57e66bd498af7cccb03fc3acf9b02d570c9152132ed09b38a81dd9b41e73737fede3eb293cf83180733c5f9283367c990224ffef7de7526f132d23061337e8e04534aa7e52877a7c4ff32589a404b51f450e6c9b9474cfaca613ec34667ec9ebc65d43ec68347a00f2bd0fe5b29ef66eaad8e9d1b50aca1262dc299944ea6360ec1f50b61fe9b4df0ffa58388dc0a36931756652a1b6afd78410e2e41227fa57c34d5d8015b953d5a08c4e76ad72944789c5e11e1b1c90ab681b344e16d69d7d3d0f490269c48ae0ddf4699aba179f36a331893be2bfba5160776db0167c22965c2b0f528fbb6b2be4e56718aba1d5a9c29684d1a30103850c18788a1fc59638af6d01d9b2484571e82955e5628b40aaa9a609ba26ebfa042c74d8b468dcbf310f9ec42cae94c3a81fceb66d2c421f40276be484fbf2ca00775eafd0c957f9515a055748e13d8197769322b4590710e27e00a60f4d96466a03096aa7a2c3079a9a922683c2d72764e51b072d49a08d0b785d4511716fccef58256b83a2a4e5640178b328bb7aa33e6961b8e5ee69e9028aa0539c0375e861d557202f47978badd77df735c93099ab70b8f381a29a649875b5b2dd1ee0574f7730aee8c72ead41f058248f222dccc2b7e4547a7ba7fd850398cdd230cc8d64a01d05fecc27d4f8b07d0aef5393dbbc04e2a7d18586ed65d8db15c1094034aec60bade9c8607973e04a711a494659c0ee511a44fdca270a9aa711229299169e0cb6db2cdea0c490116954defb87f7a524bb55a7fa0dfb63249c45d868679da0d9cb8f621b06694ac95f74a52ab641b830ad229ee970086234d223d0b4fe690b425510fde7ea97e0cc36d0b6227545c75642e0422ad90bd19ba9c2b13f09c6b118551be38a091dd75008585ef370c02c88c3b6b4bd6b9070b85e9e553b90eb384a1ccdbe650bd6b16d0fde20660e946611fd38852cdebe049608cab71b90c512564ad834852188a9e23500f91c95bebe6fbee3bfd998aaed24a7a6ca400ac896c9bde71e4ce00e2253c6939fc59c8c72774cc5125901ebc7e1cf34e36e1b81ec56bdad1f9c1a79d7aff3823f5d684fb37aa674bc47bbb80bf8df5517c41052ed80120d25f9e8b2dd177644299e986db080b23749629ec9fdea0911e2ea12f46b5e996f1a260f97a6b70bc6a6fd484f3bf3551391dae6eabca25e9c062b1923e20cba937f23cff91e2b25d72d0efb895b19369c85714b96a79057a507003080891e77a3f6362c613f80c9273252875b8a1ebd71f21beef40d973cf4db59fe592e12dd115f3c34a7cc5f03eeedd38fc8181ee00bda17f7b6caade76e90f669d1e115fcabdf00b6cd1ac6d235a142e6a7a0219e599dc0167710b547ac0e7a88cf6050952deef7bc581293c64d713ce23d9ab6250dc82145512a2ef155c70a49a351e968f090af0b2781fd466314dbcbc6280272da143d765bc1cd39def761f61514959c2786d1ba273c791052e3646926326a447b386cf71fa15651c81d0a84ac7ff3439b1b3398f171d4ba9a8059855b72cca37e025a73ebced5dcb81aff2785b5e966668d9c719873fa2b75ff51816e4f8ac09d0f679a65cc8298d48e98133eb9871810347f0b3a53650ceef599bab40afc715e303a71ae96a2d38d4d1cd3d8c6a97e1f18016635004ae1ef5208ecd3a0d93b5309b7aaee24f3d0b2661d978877c054053b9ecbab2a3540885e621e73bfb82aefe8d588e5fefa0d3550a52dffcf24b5bfa2a75d04a7b1910a3057863d447abc9b496b111e341371a14b9fdd27df9602a574dbdd294a879624014223c33dc85dca3e80f20559ed1b765ace8aa9f0980a798fa947083fdc31c51c22f32b2fbedb63c9d31df492886ce0ecf004f38e1a867ed9ecb3eaee0801f93d7c0f557232a58fcfde42debd5f64e7b2eafe4d767190b6bfb02dffb0187e9c1641fc37056bd257887b9cdc9c1dc388eaf10198b55b50877cc256bb22cdbd467c68f4e1ca3af20d641b6a8f56f371cde353592369f850fe45909415225d7ac29ee9050969395696ec017ed69bc8610e9eb064a3f08db0276abb99af2562c9945ab6aa4efea0b637ea2437057ad7921eab57433dac2cdfa773fbb02b1b760704d895c119a0b1b52f86ce71a216674fe91cd1f44055c64670839c3574964d08f7317dcaa25803f15447a5f9b50796c50ebda82a174b9b67a2061df56b3564aac2256b0c9bc678db6d3dc63b8d89311690307b03711d1a56ce2085437a997adf18529b027393eb8040d98fa6971b1f9eb018f187dee72bcff52f51c2863204e5f977ba5706c48517d524c522bfa0ca020c8e8a8cd68d5026e12fc91d00b8ee5f7d8dfbe65a4bc4c41e2071ffae10d51818a859b49dcb4f6a1a5463788efa34f4dc68e6c8ff21a7e8ad94d9455e99134c3d317e76e0aa6e81c8e66f66b1ba86c72f299fa1ce7c922a6ab03cb9c1c244e043ebc976fb1f00bd12e9c2c135450b48b2d2be45856a539df8b2a0027b6d4154ea6e700d11b0d75120f880328a5830025c0902d4ff4e5aa3a9c8aca9cf4f0d53733ea185e92c9045ee5376ce8c51057d73811a3c02ec23721f2fcec9ff514ba98b77444f722dee4679c44c68bed3c8f963fc7cabf18414b791657565936a0b2960311fdcd79c6e8818d733bdc13e6b783cf9248eedb1a3ffccd334bb2f43b4c9e3160f129fc52e6d424a2f1d07ecd7c32aa033079e749bc3f4da3fb97f6cdcfdd2694deb506eea00e2468f0759972ebb65f6ae9bd56fc4caa3873b8d861663a335e8f9edf3cbd1feaea3c759fd2c6346603668f1a65e47b24716bf9241a8665ce68fa6be8641f821e047d63ec9a18965d405054cc19b96e97574580a4bf5b6783681808b6302533ec324d2b1c83c5bd393eb1057c106dc284e6ccbd191db9411b8775eae4c17c681007d50d04ec9da319e12f13e4c41457591774413d8d000b948ee250e05c0a1fefa03640556e1cc4cced62b81e1838d1ebcb3c7c30e27d7809f7a9566c307d5bb91ce7835d495731953b1d37fe7e0aba3014ef8d4539a3a03b57e81bf0025e8e80e10dd5b3b7ff66e88d6f7f21baad947820256a5a7342f68862f614d4a12ea0f29d99b91c8f6eb030b43cadfabc9e75600e1a13a5a0b27db80718f750a5a7bb0cd46875a27d42248c7c62854792e3e763d9bce0457e8221f6066c5db5ab960608698c431f4da949ed8b458920cc43ec279a5816141cee6557f9b3cce7b0a7e22263ec22352113f3d72a5e53fce2189eddd31323d08d778f61c103dab060e207789f47eee1b30a922b417323820df6a0ef7887b7ac002dcfdc6b6c3637ab48324dc2625200faccbff6353951c6264f7958640042fe0fff76b907626588a160acaef947aee750a8db7771d2b9cae904fc0b1db627cc42167c50073917ffc83e296842afc72095722fb327c63dbc2ff5c379155d2a7b2c274b8bb47d0353f8f5cbfe616e5f06a0a1a83a6bb6259c66f464c2e475d4f81616c21739c67b765bf3490eeb8465c48bc34f9dfa5334901976d81204b1db3c0e106ae272049661974c1352d12965fd598a0b2784db95ccd6f55a2350e68687146602bf19d87d650a151a8c37937b457d098e4e0764e4a2d2ba8c3715af35a43ebe01226fa49250a21711467fe9a5ee0141e3731def0fd3505873b3003ce1862ae88877c6a6fcb3edf85d24014a3df94946103148e1884f2300e5cb226ad7dcf0274d90086a65eb7fab94e6f3d8efca0170ba6d02fdafd210dc39b013d478969b5d0a6453933c4751fbb314366baccba71d1c0b9afe747d65b4efca28cdc3d19ad24b682e1c5d72d07651169ee8835914f916af911aad0338dea093542407851c385ef0b4034cd0f19ca0fa65225c0865c6b18fe627dc8676583f6a458c24bd7ce0b7f47a70fccf6a34d018e471200becefadd17e3e674e7bf9ebdf2b37e8c4a459505ed9161b97cbe0355fcb9b87967964317221942d804e132b2c024ddf407d10925847a8afe4e75c75a9eec58e46b845ab836717343c1db527373e34ec985dd12b7cc6d06a83752c26927d82976ad7440198e5f92cf4f1fa41c79a736d05d3b8fe552557c2fc177ba9c61259eca43f2f747fad25a0a4e82f57e5f75ac37864bdc19b658d3827934d021938a3a4d229a7d2dbf55260736c068af1d82af3745619a612c13a666bf5282dc317e4bf66c4579ebf84160fcb01e720dbbc6528aa4e1106239b4c45b5cec01b784d22499b4f43b6670212f021988c346e6f16a26051be26605212321682e4cb3694e5c013f45847b3eb529db91fe5b39e2e8da51abce5be9e98417f83328a77d84cbdf6024eaf24629f31c7af6643f4b7b8164f28f291b52e34616d3633ff28a3c8cfcc1266a1ea090033ef563f845a79938f5189802b0633068a15c097a9179ce4da0fa04d7f85ee02cafa37b1b4ebb2cd44e4aaf2a15dfd58cbd227b72c99a7b23c7192ede15664f66531cbc00ea1e81ef3cb182b9c92fe8ffaa8d7dd74ca7aadb1456fe0eb7c24fc437c5e43179910bfa0ffff08c4e402e999e9dc1b2e0aeb6bbaf40d5ef63e3b76f4c2a82fa1cf35eeb3b721ef9000f3ca4a912c8ccb5a22c7e660930d4593466f63339a4111208734e743b233cf53ac85044a896dbe351945f17523af7afe3c235be06a87e93a4fc58ea38000aee322bf1aa796dbdb29136ba9b6e8ae9c4071553e30bc70c42f5e51c2e06e67322016ae3eb44d2515fb8ed359f82a6f536e0a8a66fe1a5defb0218c9ced547fc5d2f079a7316564e5a36b528ad6504676554cc9a17f4a8ffde37015f1c464b55b8ea450f93a17969e6ebc30608dc679bb53f488dc357a25454556a8607bcc97c9b428818e8ab22363def4427875dcfcccf306766209eca1ec47712bc4cdf1ea2106332e843dedb79931155b0b7c9a201ebdbe42153dc30706004e8b414408b852f37fda5be990e58ad139afd2b1155201d0d03bb91300abc88ca37175d80334a831c322c2b8d8b27275712110163a007c4defce9de19227e95b84a5d6157982b1efabc7e2619471d667b89638986d8ba0253aa81b797d46a4f96b37d224410dba001b93d0df97c442b3369ddf50d8853dfca522d7c6813cc1a1e7d6bca558091551fefff8ac5d849f3a5a3fdc7cb9ef9b0dd5348918de3d75d797f5ff1407be89cd17212b9cd2678996bb99325fbbd50a79e44cb8325fe6fb1e805827f46c5484cf6f2da388604fdc760fb64eb390fc2c1e32429c41a1a9d78d3023e9d46527adaf15fae56125b640bf6794a530947edf54848587a7e8d9e4553d1da42644594bb503e4d563e0d768837ef1513190359fa9c24d1c21727df58b7d8fdabc328a26e77b2575b4fcdfda7b806b352cadfca5ced4a6c9894b297bb3dc8f7818ba07717e053176274eda866ec8533dc2c853ef0bee01da9b8cc74a309ab08f240a3a251655750b689739d31f4ef787294fc1391182aff7708ffb6776da1d3b35e3c62f266c2496a1e1fa0183d1313791f145d74f452f2debd67eeba1a8ce85b79086e7f97aeb7f5fbee6cec64c2f442d8f93188f5e4498a6ecefc82069e8906f9c283a4568c91418ba7563d306bdf9782095deb36765b9cddb25d839903cca5728c4be6adc26f5c4048598fda24dd0bff5f8eea5f86d883c28e333f6bc848cdd0963f25e61e7083dfb3050bd853fcded0ea8b375fae150475bcdb59bcbc8239a6add26eb208cf2ee8345df39f7500c3d5b8e9ebb9fe49ffc615c02da3f13972e2d82fd02c388b597372408be395ef03729991e8f3c1f9703b90d7b034970e8653f9b30770bd01cebb875091ef37ddacc5050588d8ad530d05324ecbf52d16bf32eba40c2290381f490bfa59e543593a35857dd8f1f67456adfb0b2b0ca4403ea5b21ead8f797e9a4d8e7f5d5a04fd3ffca5f0cb645de482a34f191d530f7684813e6c23948303217f115b6c23c8f55d47bafc8919f10a3860ea428acbe6fd7115f45eb0b6deecbda42e1b285b3dc8e32099e532b135c132ac48a2e2bb71256772a73dddfe640175d005f7f6a8a95aba81d6c57aac59e88ba05687312cc0e7a5bb632fb099d2d87b6c3ed1b1c2bb133250558d74744f3670f40b6e3106b07e7d6ccdf1923dd522b317537ca7c82b00e65f10534e9ff370341b6227b536e7490cb580315fb81231178887f9d680d4631842a6d466bafd56867f36a4e6143eea5bcd0d7bbbde970832628ecf53e9ba0f59e2d21047a87eb138ef11942aa9a6bfa3016166849a09513993c88e36e26e5c92009e33c5f95ca028410ae4e463d62ab5277da992c2041962261677574f68d888c16eaea717d52017622458fe712985fe670cf24a95e82b466ae95d3e72e94e92e8fbcbeb12ddab29e26f4ccdc07aa225f310ade94cafb2fab27c95411674378fa4ebaf83bd24dcf29f89315b60514cf2611f501569d85d233a2d62222e14a76817c610aa8d7767816f40648d500c88ac0a8bb4eedb63b7035243d4a66165b51ae9f640c74853271b6ed63c0627b09a8e3129603b033d46ab7a7dc17af44590fc306759caab8fe53712d38edf71c4541e7a9a9d64ea1239e73f36df62ff508ebf7743bbbe5fcc12b9246bc8bcb6c921e7dd185da03655dee021e5eb1d8b82879e07b1a012310756f4e7784e56aa90f0be9cf3b843996646d9100bdf2bc6ff79033eff2ca68ac753fa64d30baf07f4827ac4e0d7785f00ad65c52dddd0c4972917342af2fc98fcfdcea004f80f781d32456135732533f736ac3499d1f469b216684c56770ea2f109912f07033be20829b597f561375b830961c4375778edc7a79804838fb7c12fe58ef96cb39bf6e0e9dc3cdb1092a544ad1c8e72f6887451d6ac68c9a137e8e227a32315c0e46677ffda45547c805d2413d726e80191c8b0e3fe0bf681ee37c9dcef4d0608b92c374f9aa1003bfe215dca37908a60db85908232865f2dd474d4e7c65caa073c7b2b733330811434f38f806e5bdbc0cc4c7f844f7f35797967c45f3287395d03f31a96eff2d1ab5aca5f69182688fede6a78c987d7866aab465b0c749f2e1ca9e424d13e8e54bbf9bfe3daf74840098ab54674b8747787b50adc2b778b8f537cf3a9a745e8ffb2a86d7b6bfcde68a9e436dcaa1821b7198f9396417287d4c43009cbca5edbc3921bc94d167c219c1bdfe489c22e21576f9d30efa32baa1c61fc2ee17dc3bb5e2f66ac74d525a67af34e479f00fca03c27752873f065aa884f9d46efba2543188a98aee9826ae9b5d315c8b694c35c1a697d8ef42c3d8f14457ce60687793562bd4092f09f475e700b092d22b4e78cf325716f2159a767a8a9a855273a6836155eb4a45d59efe218b3cdc679642f54113d00a8fc27981f04fce97840cea05dda593c484fb5b50857f7455fa2e92f8ac3c3afe264a96b24af952180595dd0d22fe98d8c92ff532871fc75f06c38cff852a52046e12fffa26b1f0c52da4d654b7fb38dbcf15634f2831cb92b5ab8690c31c57b39d2791df450bd9b2e374ec64066edc69b1ef2375d406f9bd12ef06337a65dd46f5dfd79cccdd25fa0c33a3f35b1e26547ad90f03397fabb75e1e475ea8ec01afc1ec23c2ede59193a64373be4007edac572e9c81ff89043d13e149a54e997de4a4b76c0c4e5f50a4d3f31c4e156516408680d1ce1f040ff876a49edca17ec02bde27e62902d30339d23390f583fdee2cbe101d1c52c039196244178dbc984705acaab293f22f17b5b9976caaa73bcc8f8ba9a508365b30f16b87c7124110f0e462ab5be558de7f65e3de16796aa8af2779934423c2d4b2c5e855e7d1d8a4016a5a8c1c760a5a75066e3c8379f470cccb2ce722583d0aff8eba131f5aae10e27e248f1309e66d0b35f05fd87a95f8496ef88efc9d2fd13b6c985e22a7019f50e613dd2bb31afb742516199b547baecef44fab916f1a979dc98b536d66019ca6cebc3d0852f851fd1652989516f80280728631d9697db2c788b97f6722760ad94631fe496eff4556d1ccacf76cd2e7cc0d317e2269753d914f44ff1ddbc392f1ca00d987d9b7132f8d62401f86db62a2df7ad32f46898963e9afebd3f68308b22700395080d973d4eb72ba1c3e9a322047c1b7654d76055583616a3fb9a1a92b99cfb8f6449a77e587981363d3fd48e23c4186bb5cbae1792369dcbe1a054b5abd94bae27a6c86266e669321776837e808c606d8cafd75264e88ff637e192958de68ade74dc294dc02af9ff3ceeb0b17016d6b08e10c1023a1c597cc13f1b0190340c6fac22ef11399472ed2421d924a3ac27c021006e65c30381dacf1843b5c0bee82fbb23f3b37709ecb5ff3cdd98e966d73b45105c2c9cb24a77488b2f2c0434dc8d081c562dbcf84afa7b02485418fa3c6c3ee0119d3cfe4f5e3f96c3f0ac5546415cf9d58f4d1bf51e6527065a423feb584fede6bab34c0628051d206a0e5f48d506c51c62e36d5f680b6a626f1ae9e0d997b49b652693aff9203f0aa9f2104418a26538fb4d0a018541e2f66ad37a6671d4d3cdd45a58f1128a7a49e29c089bf6d25f7eb8f5f4af0074506cbbbb9a7e20e2d2e1ab59c6cb41dcc2f6df7cbfc2237c808f6e904ef0a03ec1048f445f9202d175e018f77c3618a7a9d9a6ca33454da0e4d074e7954b60d0e19a230e0782a05aa8682a7322d302a377650d56f5e0994273b0e6fe2438450b88b51d7d8fd844d514bf573319add272ada911707ee1fb1e9e8bd85506dc999494ec21946903388ab544e408e98506ac971a2d96860dd30fee5696a65354b727866baa4cd514719bf40679c05bf753da6465a33bbc691cd59331bef2482ee6d332b3b6cb1784002791391b510a299bc2f188645385f26e7d87635c852b5fbb9cca87102a5cbdb41bc6762d746ea891b75502e3929287b5fd52048658d4fabdb0950b5c729abfa0fcffb040676e7abb6144a1de76566b0c64c2e7dc88caab9518889bc9e1929e0ef91059d2c543ea1d8f438ebfa3196ed6d5c746ba9372184b6681818020cbd0d30a283f35927d33d99a2cd392c7290e26f4b905f5f07f65d3972933768050b7a1ef8637c9a0e59e024ab9008ce4bac41aa44481c7b4228937fc1e9deb523016a8cca8634516498118070100caefcd94645b3de198fa3e89cba433d8f4a3293ce17dd8276f0357c6b51542fc7e69b2412650816343d759790cdd1ec8213186f46e86835ba84659ca09f89ebdd4ca4b7cae7bdfd04b67137050009c6233c97feb7960b1f3646bff1ec4ae1082593f3646f0ea830e236669c4c3bcc33313e9e3777b025373f53d361025218b07a0446e24fd13de7ee80851caca2419418dd95817b7beac6d638e3b5edbd95fb065732785adbb0d68c299d951c12455e5c4ca95f21d120e3347e7c003f8d0b8e40bbb62c341b5aad0abf2e4f0a920d98922b94d2f3a00bacfbe6f5473c8b665f99219ad92c418572460587ddb45bd51453b855a0286eb2430a7006972cb9f0efc0be0098728fa906ef9a971a776cc50a758d110f1ae50af513f12d0b99f7b7c5192d0b17d0aefd5bed9c00524be078778a4074ee77def0749c992c41e4a02b6c1f2b881ea682a3ea565e5ac0e0661a8b9c2393d1ffa42103e3f34d3e5c42f5add80eb1318158aa00822a63e29f3d9503d5b9f7ee9f3f53f02e9ca3ee9c92e2e99e7e701922a2a7b4cff970d34045ab56bed489a9589493ebed42bcb571f98b5bf7b099f8bd2ed0b00101926534794019af4b59dce55ba1d0e2f248ff6003550a7b65e476799db8579f7da95bfca08b602331bd6a54a27684cf0dd3c7bb02c64c8be3d5adcecee2f2b90f9fbc9cf7eb1fe356038fbc71e1137d4b359fed1b15abd87f23c6706726ae1e843d692b56afdc3c7f1f43b5daa4d0418f9c95a4a19650ac24f436ee86cbf35f0c1fab085f811f67a4c75281701fe107f1dfbd286f67942c72a24b92fa5fc4e796cf23efea9b35e5cc5a2159ff79cd43117043a3651b1824887102a63c7789e0801b7a50d21bc2036e84b516fa8421f3ccd500a1f90100619feeee52e5c478d30ed69d800e7bd364419ddb593707dd202efd389b787e3a2ed1faef1008077ff9170fded58925844f0b7b704f919e9e81576eba85eeaa05f7a553b682bf4f03d05346cdeb66c36ef4933490d8c704b9567f15e1af923790b79d21aca758e3c105ec74cb74f8e953864df35d5b42b002ce9c3fe31d78207c5e9777f73a9d0b679aaee232217b6738a1fc40cb1a99d177244dd06547ee330f8ac40b85899bf5cd5a3846b8e018a97d9a0611ecf92bc81eb28c7df280717a415bd14caa3044d6fb283c5ffeea532e1b778fe1bc8d44ea8547b25101068f84f277000a1e391b2ebee45ac25370c8c9e7e08bf0cfc8866402c8adaf1658b72208ea638cdf4deb864a93c33011cfee45b141fbecd2b15445ede672c0f91e943c2a4d4ffce902ffd0c0e9dbe42f1fb535d452804b636efc4c42fa5af33ba9508aa47f63c2b52d25a54a367e1316f26d7db2ea6d80eaea9e380e2fe0398c50e36a84ffd4c2c49ac774156ad6a09b721a8bfbb390e9a702260f9d41ff7c7aafb2b6cbe3279da7e3b7126d1afc0f1f39d445a7b818aeecc3bcee27b305123fae5a71341103880eeb326eeaa812e76f63edf3f716073d5766a9a5a311fb6b6dd24fac58a9d19464aafc27499ba3e6e371af0fbb212faa375b4d45612ec1741797b9b3bded0840fae1e77acd367f71ae320b45e58b7f07d19c831c2926143d135ded2ac9fd2a5e1513e042f26fcf4d35049d2d95503987525051c7133fc5215a6f571de34e4a9979ae94b4e27793299eda77d2e227fbb0abfeddc83309296774bde114fed31f8d424b59e8250611047d771dd1562482df35c2b6ca4e5d99c773be19cf13d4b1865a7f03335dbe3d399e5c055bf7d3decb962fab05992781e5722b766ad0d021519c19aed66fc92c26133c3736dbc90233897d18a847c942e13d41519810563991aa4df56dd35a225c6b97381c34d0e1155298c836ea6d304ea25d38471f7d903b7c1b069d6fb8f50b4a2a13efd372cb9d0b1834a19e4de2e4dd515d4b5fed016d89a1cecf0eef59edf1bc34a083dd40355f01a152dcadafc9e0610ba931d13963c6bed303f0477c2ac8220afd72e71d28a37203753ecc8c9ccd4e881e35f4428e13a5d4a75e87b137a376a330a86a1fe42bf9ad699da163c616b7eb06d15e4afe3b9a57f72fb2baeeddaff118c2f64fda141cd94c81a64fb4416eadc32e55e54a5e391fd9203ae1f2d349d584ece9f5a845b74396213165f4c9c484216769d4ee1d5c92a9deec02f8235e58d68aad0608674272cefb11f898a8c8aa5015a4857fb8884c212ccfb970ee7aefbc48dffbf1cb2c2ce2dcdddd9f5fecf59101331db8d2a83cd1415b6437bccbf351a26eeb62caff1704c432c6eee24c5942d8fc5cd8fb85acd2abdf88e19858fc894f027db9d0611fc60d25035a7c35f0bf529208b6b6ce3bad3112d9d00188c8bd8061ee58192c9e3ee72a8fe675553e3c1da0be69b1b4b33aaf6e86717c44a406cff142b8b02ad62a8447b73ba85e6015e71aa5630a7ac0032d0a2aab314f78b280e98bab483fcf138451a288587c9b2b170eb5bed26ff04354eced0a7fc963e1f72a07c3b02a5f45f65d30ab0a1b8a7592c33a37dab3471324a72a7f9465d7be1f87e3c50b56fdad2a15701b808237bc83ba3221b86c566a3e62e8e0b55bd0e984455d7eebb320414e172cf366d408a6c4cf4af940efca4c39cec6a50431dd0781e126172a7f23055f270ceb078fb2d91ba335e965f91059e90f43c1fffc8c27542cae579a923111d81cfdfae10b92a1b0ed14353573e9741e9be0a201e55cb944ff27fd09d6b7b84c141acd1ea3b121fc9f8dbcc7ab3b89178602168d9598001ca83ff4b92801f4c2cfdd841da52a855125695b819305e4a97abacdc78d8d4199e1512a8c5fdc505fd816d8eb1bd5471b6edf6d1ffeaf7efa77bfa7c9ec785fb4461e046e98325e6578c750d9c739e38ffe8b11ce37e5c112c9545de2b0bda7b2839a3988f02c9d45453509d5934714e65b040b6d3804c9e71441f82fe08b053703d84f38dde5c2a4c932af84c6000d7d2ebea80aaf7a9c6e8bb427dc1c7a6b164c10ffbefa83eee634cea635323149925f3ded96364e72c6867944dd32d1a870b6e7b34c46725f526d0129a0f116dd670e7f8b4dd144ffddf07a201234b83651adb8e4dc7e17d57d52d574d71bdfb435a1f22bca095beae2e6ebfcf48b20c52d16c55dc580d3544928ebc8bbfe02c324166b7c30cdfa37a4599940031e6bd7720c0a84605033fa00f02665554555f47b213fdf99955ca054ff5a6a890d5ab6fa8136ca1cb7e25a1f6de2ac21b9736460767cafa578fa76999fc3421bf2641c90d77aa7e4039ceae62322273d404d330dfa7af8b1f041e22dfd4b7aa89472a2ed1accd9e7fd8d704eba9418643610f6d71cf408813134d411f0c4c88076ec1704e602614aab391caf43c6325904fbcb5d4263823ea038eb7df6e45cbb037e1378157be35693a0db37ecbb63a9409eb6841892479f3aa02b7469396e4974cec51d5610490d7f140394713803e253cb0e34cd41de09152728fdc924017ba93184cac351ee25440ea56768d01c8c1982a57b233dbd3e24e2fb411a4e48a586178fca807eca94a9a5b66633c0a4dcc64768d780c964acb10a4a581bb5587fab45a74bc6ae0b6f68b6ee75c716abf4ccee81269934838497f28515774853f7f3e61e7bad8e382d683a17a5dd0cf4c1a633db177625ec04acc60dbe39217449ef7653247f19fd4cf6d39bf84712c69d5ef428f93778fc81ead2845d750a302d0ec35d2aad92e6005fa93c0815dfd7b2e5642379a2b4b883a39f06ce5f7c6c33bf295044a5cd4aec844af77914d79709f521b760ce0b15c0fd9aface715e0dc7d5c9815126e88f2693c32258c88caf4218314d7b23d51a7cee117dca4ce0cc3daa0a68c74d7465773e0499210da9f1366a555873f76dd7c72416454fff5cc01c14ba38e956cd1daf34417dd6d5d3392fbc9816ba0e1111bda87c7e1cf862d1bcae0de93e6b48c8e47325398d056e16f7e3bfc0d608c15bf582d8d1f017da69fd7fbc951c70c333eb12be53937f86ab011469c13b0ba92b8f2d505dd2a36651612e7b516c15a1afc44da94427d47e60d25cda65be9da750f066ca7c13cf61749d737c17d499aa1a817a364141a853ba57a053fbfdb1d47a37c3899cd1fcc8ec0f339a72c03ce486a3105eccd0813679472c05aa4652f4e530760ad67b8c0cffc6953604f1c14c210d289fd20fb4548ef5da575ddf0e461b7f80c1faffcfc23c99cd49db8943dfaed2335d38ff9cc991255251c95658ae0c8027f22437eb69a8dea1bffe677c3aa3d8fe949f68c45c2f31b4ca3d78f4716e9bc6459337fc0d0e6c5ee3e8de06ed9d40fbdc7bdcc1fdb97d15e82f8306f250bad088d81375ff7beb5fb5b9e42ff5ff03c7f63f41d75b090b7e543e92dd32dbde38fd9673bf505e1c4c02cde778ef0ddae7d4d8566129153f9a45660ce526aa33e67dd040fd83e82a6f1bfde47321cfa49dadcfcf497d9e19c75a1c81c5f3834ef0c3bfcf2e9114f1e6eebf045c449e3f8cc433fb8fc3fd3a59f5fceac6429b76b0520903954552d83d43c8b07b298be5d4f0ddfeafe201f6796d60f37ef549ce691fd06bf34ebbd8524c284a70d4085e179c610ec7a29adbdbfb72281145b813097d3d0b371235421b297c7fbd25c73281b7b8bde53b21ceed8ac51441fc0c491ee041efcf2268066221e832a09ef9b0df0e62c16ac94bb91f2131adde5b868227adccd08571522a78e6b65000922a47d9b12e565de2da312e2b8e8387ea284b7ba28acc75f3908a69676a865dc6474258a926bf03da7ec0bcc5436b6fcb527ec5f083730994337ccafa033fa2ab5b6ba6aac733c0b4a747c2e4a4123292b539a09f989d7b939cb8be50866c78a757d3a6c5ae72b59a2b8759630569e741cff5e96a304c60bece2ccdc19c19e8528983463f12590916b2615f73287d4eaa7571122510a75e6afbec8949e9a8abdf89501641d14b3ea5bfd71289e8c0cef759c8bd21ebe11e336286233fe4af1b6308a80e6d4e58886269e877f18d5635763ed9fbaa119df02c98ea2d73202fe4dc3e63935e565dc308770a9623ef7a18c213d0076cd502291f4d9f70f7ec923f3c252b4d3269ef9ed816f249bbf8b23a4b34920533fce39d158e323e7702c3a90558345f359bf1431f5054ca70b56c6756de4a07e40b9dc3ce58ac67b6884018688ba766a3080664cdb0fcb3894de98608ab86e4e61e1b59f5ad3017eaf6118d83a623f883575582709b5a099c8bc2152a03cf6450e30a0c7bbb61d4d9f1fe98035763a258c22e744771e49399c057c595cfe64606c50dcd9612cd519bea9d60c6ca6795c65021bb6695baebeeb47601ff2186a88e8eafb0b9c8e918af07c670a6b2337395b96c1fa23b94a57b49644e479469f1548d9ce6435b1db5b8cb95371ebd02b428b205c8b598aadd984f781c6478d5d53cd2affb6a6997ee8238b3d85fa1f2fb65c741f70a9cb904be31969d34a56a0fc26f9411e4652f942557e8e388dd53b22c5b7877260ce9584a9d8a5310ff90bc8f272f0240cfc1225dce15f6dffc6496da7bdb26f48d4a33898cdd4fa802ad4bff4ef2f9c1574cf4c8414f3c48dfebd78f7d5e5f5786dc02f153968b8c51a0dc6e4a140d768e205c06decdf0ceb8c00628feb9f025033db7c2e30f2b837086a41d58dbf0bd6783073161782cd982dc153e6ab0329555ab0b80c13329fa7e4922cd297dfddc59d183412c8a412cd1d6345f5690f5667db99156ee301daa050ed4fecb1f13668bdb5bade7edc4f8ac2c8f37a414cbf808b1474f441fb171a30ce5ba7256a39f9ce0c2cbd5d516fffa3d0ab04316ef3ce0bc7caf5ac93c9abe2c6c85238918dbf8ee941cd35f6dc782218b62504a7b22d0aab45f15796d0e310c97f5f9d058fc8c6fa961fa3b936dd3262ec6c492eea2a350b9a211599c993c399aea194bc21c68289d21975506d754973a804a745254aaec6baaa2d426f4d6a62e6e560e4a28abfbe1c1c3c30de5533d9f4943dca6cb200178312352c96004f4e9cc6c5230612622f54c2221a8368491e50314f03f2447305795d8c6d3e508fdcd337fb18386ebdb8b18f9723dfd920d1f4f7eb5236b7df3e1a48f252c5f1af72042f793e089f2fd543e3bde9be714af4b944fb7964eba3900ab5c5a734004f27f1294821d4b1606e890fa822687c80fec16c41406caf45f4a44bbac9c4daf859afe0bcee26b0c4973ff12444d8b3b8fdd245d54be1267bec5764a666e18d90f3aab7f7312a9aac81a9d7eb1c7d3e8b4b8c9fac4304de6d051c8188b5906266ddeeabee18c9cdac2fac5439f2cc1317520ba35f31f97ff1dc3a2f545c7fde4c788b7c66cfd27264bd2d36f5bb469ca8271b43164b48cb1b0817113cf8ce3a5ca86be74b0230c797bef81798c4ffcd741bea150deb49b16de639a6d92fcdb6ce0567b19ad85c70a1801d6f85cb8ec4ff9b158c859ad6745ee1af480a5c92c0051a6d1d1ee751dc8fc2eaf3d46903a4eb80e18743dc61f0a679a292b3965825ecde6c255a694fb0a5fb933d96e037dfba57c3ee0d2fdf521b19da275ceb4f0fd8f254c8cefae875d2b009994274a9f62b6662a5eac443030e2d5d97becbfac8da6dbea399dfca254f0e004afe4db4a7ad18006dbb734051955e6a95a284b0bfd77d5284fac200fdbb54f570025c9165cfb6337db1e0bbaa44d6070c204d8f39ee4bb14b0b6d5dbd122a29cfccfecfc707bcd5ab1baa8d2fab88a87467178d273e8d9e0be26642ac549daa0b9b421d7a6b5729dd20242d5109fd63cd3119125ec8fc4e8f5eb2d8eca30fa44560018ca58471edc8b93415420037e489ba1f31a362b2982c8f7f0c76edc3f85fe7f401b8d111c5ead6f43b688941cc8c5dd7710761a904af1a6041df96676356e88c090f53c9f66c683f9d73a9498464eb666d441f28e41ccd3469818ab9bc4a0798e380c85b2ddd6e4a5c59bf3cf0b62833c996b76883fc3a1b59621e81bf48878e417a7b23d579be209fac464f2279ce76da41d3ccd38b8883c32cd617939c4c76f4bf120a9cfddaa2bd4fbe8e716dc48ac2dc53330a107e1b70f84499e2eb07fcf54b48ab17cd2e12517d55198e462c1bb7ad68bbdc6a968949ef6cf83fe73d2862e518a81fe258f7c0d18ea7b70bde46b4e4ef519017cd4644cf04ed57021f99900d8064d2a94d63b9463718fbcad9deba377a7d1463096759e99d088bc69c823ba2b6e72142c076e9b8f12cacf3829a196e74068deabea7998d8bf44013fe409177822e25bc11241ee52d7568f05ac1b9041db7a89535a053f56ceb202e0dceeb539838674e29777aeec5a3612435179d1a6a2ac33677441d46e2daaaae1c9081b254e43e3be36213d693c6935bc90cde88e46245a166d9268c052cfb7ec6cf3bf3a06a41374479fb60fd3005aa3fc1ef4bdf0202643268d31cb5fc74d21d0aa841123b5738e78187204442f0dd659aa88c90f0bdc19b2681b732b085ce2e7af2fa0a18f9edc1c84744b894393599e3ac53ecf7f8db5811c99e510613ae47579c05463734ba860a221e3a18542ab907892764f143cfe6fde995c749e9924483735dd77d807a823d2df1da91e42dca6eb2ed866aeec52b440662c56a5830bc6bbb0e4a13960322901c3ea1247ac8cde8124d58403302c22068587595af356a43cafe664146e797570f91e82d763ed1830e902289e14253c9623cbbc420f334bf343fc172fb2d32e5c3db3372a939eac4e3b68b69ede43e56efd9fdf42749ab5bb4d27aaa079143ecc34c8ba623123e9e509a8ddbd23f55df55200152304120a7978a9da9ff5d9ac75799c3fcf0d85ec34427e976a4c54d31854dc318ab23bd02422a591908d990eadd8211b7cecfa7610aab920d8ba16082938f9794fd051249fe190511901407fd3bca173643073785cf01ddbd181b30b49b19efb39c05859a1a1912a228c19338d71d428aeb9815ec70b481ccef58a35b2c7d1b7daeae1ddf3b1a1a4b5fd5c3934396fb262bad106b7bf83a36d422d8efedbe45a901cc7e2784d84bd19f98fd41a07552e85c400d6c69aaaeca2b530b395e093f97262bb68c7ffdf07abddaf1c3ea890f58a7e1b902d0efce3ec3f8363ba3e0be71e14c4d7acc3eb9d5c322d6713cb037aef4302c0854696e5ba31568381d68afb28a870725b41d8617fdbf3bc025c931250f25e4573c06e3e2289dd0b02f2aa93e696ae25965b458f520731d52fe23879f724657f026dec25737cc1e4907fae3519433cbce28f1112bd81d2b08fea92f099f744d8f31db730f93c23f7513a533d8e45f0a684231ff4f0ce4c73a77b6c709112624d6da3d94a615f4127240cf3785e5f936e91ceca0c511b90487cfb91db2869fd26f1df589bc6eeab028190c2ddd00be48b46708b154124f0d004b56f205e640255c2c7b66636e2245990d5a7e1ad166454ef1564a49d83c0671d070c8a50b667ae9ebefcbb08a4f9d977ac74a7d9f93276d91261947fd318adfa715a7e411fb43e427012cffd93bca7e556af749e157f95e46bc86ddafaac2671930903da800c9296994792d392d4974969a36b2dd4b31c189bfcad6986115bb02714b078ef947888f712fc4972b4bbf558a61920c65616e60f91e0d3cbf09cf6932807bcf67d8440da32706cca29e4cb119b2c02d7c6ea8b7702ab512a464748a18356238b13aa3900f8435c385f2f553a66d21a61cbc0e7b59c93439d908bf5674e8c3375e5a51e3c28d323968b3ba6231771c6a1ba48fbe8d183bc6fbb84ec272e555eeac7f1485c57d9d249563ef346880bd1b838d95271a79d5091f241ed38f09f929bf218a88c8b622cd3f9bd483808b0a7d9ef5fcdca9aecf770d7e263c97c0550ad2fa42f46e5451f60413cebd6495d70fcd5589ef5f3e510a1b21d60c4c06a30b6d3b63f5079f6c56a1f69152e471099a212f6288358ea40c9e9d2bc00319507727d617baa6ab41e5e151ee1a9f801d00f201272abb73cde9a41e1a8d22cecdf4c08082e61282e1922553f5c3aa929f35cba2c70265bc9e44e828206fbcd7a89b155e36aaf8e585e691b0adba3a822005ad433bcfc73100c018a7836885719778bee38edf2eeaca939a8599e502bee34f454f02ab6e72b9a7a7e1244191a24b8931237a74e6d9b5a854b6c110378ff0d1e6569459fa27ee31977a650810d2935baaad8022a9d072995c8f621921177c977a122a75ae8d5e03f745235a698015eab44bb8db7b9b3746453e58e115c3dd255c3e0c099eaf396b5a2b2982f8b3cc8cc2b1192cbf98cb6f0809d068b82891c41ec814254bcfe1256b6de83ff2727e542b39e18e15d944d8e13d05c70a8fda0a3c765980ffd1fcc621a84d6e74a0dfbf4838de11b551f83608a01450741ea5e3e33c2c1e2e3ea470288cc55e74457bea50cc41c41cf3d5b72caa88854d2c3b727a871a013cf7ef610d2f6b2466a81f0519bae6e9c1ddbda6478685c0aab5f2321c730d07b342c41eb58ea50e7f90227b9ed1a9a7945514ca1496f34ce9ed74a74c28c9e496ace730a15322a32eaa14b076810589c8175fa45721b08511e1f4ef28c37bbb659971adef8e08101216a1cc0917044b396bbd77673dfdb55f89770d2b17ad4cef1d8414fc5d81e1e219e61a0a9633e842d2453d750142529298f5a2d2c05c71d997acdbc55563cb844477a4ca5c89e5a0b823cdb4fb01c3f95115d1b5ff5ab9e3f0dc0ddf467af81cce13549fb33be4c6e77e733ec93f72b1c8cea2b1c85ce6f42901a646904cf8ffb155d9464dbb33804b0e4da6ff954c42f69b1517f2308aec7a0dc4cff300764449a074f9b92064388babfcccf050ad968f6d7d5722d071d1a2227025d5a963ecf2cd63ef6de6f9d4518bcbfcff92878cfd702cd51c57ad81b7f94c65764834c03bb591ef12f485c409627ebeae99a7d26576a91e85636ddeb08cd6e4f6110ea116f3e852824346add3479a233f548464502cdd16684ed6d3e0a0b0b7f968138d072ad255e8407fcb839e4d145b6842fefddc0925027edf7b20b04661e82f4d5bd36ef9a7abeb2aea9b6dd50ca66bbbe386d8f1694ad69a2997084f9b73fe4226882c05d3c974847c6b05c0ba58967a23cc34f0ec1aa2cd8dd996c843914c602206bd04c38b41b57065d786574b585e55c35f4f16c72feed07744a9a2407450ae463805f233aa75090d1fb4a67628ed627e36159cf24a19684712b3a61d3dce154ea4905d5d070dc828db248abe3b936f8dc78ce9402ecfa44cb0b27355a964c8c19864a713ea10cd58041eec3dbd3f9f750bc4a4f440d4d0a47639b2b7b487058e47dce491082730958ebb8f77a61708bc13b854e01a85ec9ed3b2d9504c1423bdb3ff97814765084168d0cff90374103f808b6b9f70b4b37b99caa8a0b3cd9a33a28202ae1f02f87c3a64c19ec4ff1939293c7aa338dc9481963d76f22eee0069901c502019a2a9f83b9da5d3625a3c2d6f309a6ee076bcdaee2903f5114b8ad62aa7de92ca20d07388831285b9c33d2802bd068fab5957b86cd43200ca0540527ea149e558f1aa0df609b5d778ebfd39b1e4eef8affff3adf9617e4aee6ff7d0a3ed0eba65568b00e122a86df76cf28178940df4b39ef7621e14968ef0fec881903cd21760bf72075011980aa7d0a9fc724efba403608ea7ae6594acaac7bb2003cf6005a7ac68f952e5af146164497ba7566b7dc618ab70e8841cc6d470fd4190a18ca9559bc38a5e2de530c3ff9af75f8a39c80f09d950df42281aeaef699a7ba9ab22db6e97b04a9e5492122757d9c0ea47ee3484477ae1b072ad6fb811428ae9d323b81a71eba617534735e845d875326e9ed47f4688be494a2d750e39239290c50fa6b196c85cfcc9efb3cce39e86922ef2743648d59342b2839847f7cf897f380ec363ab1b7e2960e5435e30316b86d92254210c0dcdbcdcc472135d5dd06ce66c10e8536f9c0b53fada4fbd63eaf6dc176b762b34ce37f91dd084b8714d2c027badfc6656d942f280661449eb7abac819d9715e8165f6b459fb68755658464c86b47019d3262fe7c0cea5688e9ccb4f289b3c1133201113e86c485a085fd6ed5282cdb5e3e7753b8d311fa88c0013b1593ce2b986afd5ea451dc6b24a1e739c2d8213bdd59a05527d856a507799404cdb98214a41c6bce172e349e4190287f58aa5ef8a42d98f026030cdb6b504f49acba366a43001ec086c532f89754570c6db9c7a9b6c5291cf3c5dcee65331d29692c1dec1a4f7473b18cb6ba18507572ebb78197e182df20bfe07a0c4a70b3b6d4f1599a0d784e30bf2ca0e9a921beccc83939a64c1d1a1b59a72f9cf7e9f2d6ee2e9f92510081b068aaa6de8624932bff530c1088e4e5a5d7175f0eead1ae609e563f773eab27f24a7c502414ea012c08d9960a27263d3fee573420eeefff40e572859001eb0595ee318c1da1613cd1a71847db3c6d9d88841f43124b596450f0397a68e35045805410327a89cccd2c17b244c6db1d21b45a9c98d7c4fc74f739118596982edd2a57b96d3abcfb5abea04d47839632fff878cc542dd9ed10e9f61a804bd5c3f4c5ca7a5ab89026850325affa8d6d9c6eea5f71af6ea0354cca22a07edf990e9132fa3d90f8d605ece487f78f0f10515513ffa28ca7bb9e777a7e926ed44317644d1420c00576aa1b23649e9f45d5b09310ce1bc712648551749941991b3a40519d6df85553ac9ec15274d808aa0577513e168e9cfbd4bc834344ea2eba9a413a9c33ee931e44e140057806b4d3355c55bb6f4c21b9f6a2ed51c16449c735c87bb9326b1363635f78d9b0d0ea5a272a34728bf274829a14896c9c05fdb201fbb91251866ce5668cb9240f50200351788e56d6ceba5e2e39dd1e2f593af156006f9cb37fa6c37e81a9e8c358d9c9be1dcc5bdb48814c0a135cbbfb19f5f1862e17a3748212b982cd3015bdba4ad0e1e0ca69239709e42469b20db6598b71411e60d0d7f54dd254172e254a37532010590c719c574045f854d59759f43f99e7d83b1c5011569b570bda43f2d9917a764f8deaafbf671dfd6fa57a389ffe37ddb377fd6b7c833415f127d6c56a142bcdfe5649d4f8e72c67a3b42a6619d7300a1156c69446f0231908be5217aadbc092344884cd2d4bed7840728af3478ef5da77877a72daa2901ca1ce28be50a5818b1a8bc03f3771f1b4a63f3af85c409148d8338c8a266692a593a35f7c0357c0ea8ff5c2dd802619dbb0ebfd85069bc27327d054ac9f5f74c11b8e4b313796da686a1a0bd32164424a7fcae8b77cb5fdea8e35c4d965e415ea2f7db91035478a3311cdd5947f7b2339afe91b69a06ef8280659b022f6215d27e330dd653741d7eeabd65e005670bb8f5e252e78de9ce0230ae318112a1a6140d071db3bfa91c9fa56c259cf120945c82244aa6ff8805be9d4b73eac548149f50890b00c14930b28e7da63fdf33fb73196f77a6f818fcdd466e2f6393be8d4a4d85a4176a868964ce64942391bcd146dfdc5d73e6993cc6d6c6e304d4255f83151968db423bc43aa695b1e1bc17b0363a5e9ce388bf8e33494ad4e3ed4850faa4a0b399602be5f49a026227637a9d290499672eb37bbab16dad8c418d882badbc4c6d549ae7971b2ed503160fc115dc8ab268bd59016ca49d38debe077777c493ef561faf92db30f9dc576ec26ef5fe41639cf9dae06afaa1fa6dccce0bc4a0951d89abd152ad4542d57678fff0927e2718cdefcab2535cce49135407a532181f10d86fe119dfde3fd80cba4b9b0112545193fc8676957c6315111c5be95ce4ac6367f63fc05f6d092be4027376936e1b965fe710e7937738b9aff70b68192b521af8ca763b1e5ed28a648f06b5b5dcfdae63490c5581b226b89b4c5c00fef94e9e34d31854d7de54971657c545f10aca2f111c4b0f8c6306b63cd8b05ccab2b351489c7269c3b01ef1340c698a05fd276824c91feed2f3130d6e69a228e97e99555ba68183f469d0be9c0213b39335753fa4ec52596c37009abfe82f42ba8cd96b7eaf3b662dc866b79d94982ca99d53821a50e2a8c9d209a857868cb2a23d40de9fc9c8d12772a2fc67d4d287c3572e410d782af54ee8fd4512cea9da3d0a1a35f9deff9ffb65efeb7e38432d7ba495eeb047ee0d300f5104ab922bcef2d77091f2bc1e4b16bcd9be5f14db6205b87a25d3326afa280404c1c1b47ff04a246cd6f50343fee99b9a77837ebc809d25dec72cc832f9c23765e1cc6b7cb7588d17df03a7159d0092e47b1f5e5b925106b0b64d20f38a99d11a4c98bffd2b8793bc3085b95220dd33c50340967d62ab28e1480a8c61ad8cd6d49a8b5a1cc65f26bebdf59ebe16f0bbff64a708f4faa015df93a905de062adc6ba65d5ab880a7c095211e2e089647db0233a8b0206054554a52b04252fba4aae7f3ce43f60958911dcd23f3c4b201723c2df47d60586884c565214acd6a7c69da8d207ab88882aeec4db414b8807f775a9e8365489fb3918837f510c524a3c0215fc2b364a750dfb005868789b0fb08be307fbb57e397a3f48d911f1ef6c2c73a263751a3a8a9b27cf014df408eef93d139dea7b2faac4491b22c8d3003da2852f2ed54d1f44f5031fe567e627be21d58d38f16f151ca9aed5540ec830f116343f263d6c900bc04edc9f2af40a264c464d7bfb5b252a422e5b10cafcb551126243bb15d7dd09d94f279431a2d5f4bdc33ebe8422852ab01d2d3131b4c67628d46d4aaa3a5f007e913e41fae5236ca89d059cba1f4a4954d44fefd5bc7e7088a270f9fe73c3e19c2fb582438a5b39bff8b96051ef46e4ebf88820217d97597c57e1b5c91aee3316fb59cbccbe2dcdd22d90e4a2a516baadc52f9e1ce90d2a3c9f0e9567919cb6a086fe2282a404708c8d77f6543a790d190c0bc879762ae6e67350a5537f1e3f5629ba9c2f680cdb93387204fb98d3d4f7ce42fe2dbb6f36f3ddb55b634d3f01579219e615b138e3811800ec5ec8f2a99ef6caf3d43d098de4b88105b6c2e9201d770c7a24c33b86d807bef55aae2ed42223eaab6b71f8a63f60c59cabdb7865c513923704d1e40699d8cec41ab9d41e2258c52d0c3ec906c4e058249434f1c263179b5a530f0a297d2f8515039f94fd2c43ea1d039e573ae650df50a45f9b2448e54a8201ea4e158a25f383308619e2787d6fe76bd178a065d81b566150f156a550becb2c4da66492faebc81c19ceab932a28a59e7a77b16661849c08790d84cff978862a18d505ba4b627caaf1a53b1a843d256ec04ff103baeced84a6aae795d78a8110f6a7a0c85df0a4c232b49b5f9f8dc4419df35cf78f1cf8e69d83257673c95d668664153db700b2c0e434f39eb7b8aef321f8d1cd6dcefeaa01adb87b06733700c499185dba1533c61ff829829ffa5c25a41381b7b79f0cd6938a560f0e3aab8c120d3bc480d35c5b8459d34064ffeb05ac3098fd8c959312342170e7437c1d7b11e496486351821f2086678fa2c341062c0db4a9885213619527431e4604c6babc603270441ea5103732bc6241deef50af8d98fe25abaa29e24992656056730e45ece608863d950321fef9b66a84f006b85751678e749adb04e067d413c2a595e2990af208a48e25977f5419723c502451b27461f2e5854bd6b6788496981d2a7e86bd8516ab73dfffeed689dcd42f36f1740c6d811a479fb7d77c7b2d1200681b9784642827c154fdd9f5d7d152600fc4fa9684334249b2de377e0ffe5df86019b156f16d169395671d63b5061591cb5a0fa570e61edb82db8d51db4c5d18d0987a19c280089d8959f3767d8f29c8b45511dd400ef1c3ee6f35c89f404a7a2fcbf7b653157deb4ee1bbb123fa7a22f812bb062cab70232a458c1a94c02799299d8d47cfc469592cf0131ed79202821bcdb1c6b5f34172ae85ba0ff71aacfb937a7500ea5957593a8768cdc6a222b623d616d78369d1ad659837807f38771ee6aa5bad6be80f88ec5e356ad3a947794ff9d1acee838e23190b90edd143476afa7a61470c29536790b9659c51e568f466aa447cbb5899065af02432a868654ed020d319315badd3d56e3c3a3b287a71f45d2a1e22b27839ec5699cd0dace5bbc86829c7de11cf8a74f25fa58363dbec913960b0aada090ed1437fae3591f585b05579502d87997b2166b761b52ca09fee7d75cdf3a9fae233de4779f44b56c4fbd4f045e1a23be00c5f2b97a8900020e0da370732da2c9e1f5fd0b745992600c43d9a4174d0c56fd625d99dc382d8c22605f41d099eb412ac2a548566cf605f018be516961fc4a6f40d732f71032ff205e42882441d1f62d2df67997376c76b2ae8397a27d3f39af4b6c8850e9d9e8a64dc81f11715dcb59c2e7302b15768ffad2b0f707fec199b75225a3ee6b5b16cd1237e314bc1e983f72b7720226c3a8589a1f28e1e0774b3faaa6fefcabd83a5094037a775b399487e32dad7836ca74528a6566c81ee57ea2c8abb6f5f44f59bbc7be688058c42d721da693428dd9f59c6d004095fd5188cd5bb6d6d3303d33dd5f9f2278b0097408025406809be92726481064306d811e2da93a4a2a0229af7ade5e13e92b0de400a97db4198073e749e49488a751ccf57916ab2911f00278e28fa9bb41bb187ec40b9dd65ee10c3dbfbfeea5af7d7ae165f4c7788a7894b104c625bef071eb6640044ec72833ca3f8ea25a2b1f7dd5f59d96b6200eaa5bbc75c81e8a0f915b33e74a0b50e2d0858eea432390ec3d5a262a73d1e6297e12967aae488b563ed319c56bb3719991661b52f1080298456a70359b760aeeba93c66bfcbfcc44cd5ace084616d21c13e0de5250ef9048523dca9768bf660863b46e0dece62d38da4c24f79d74428f86ca9d975e6c8512c8d8a0ac6025c2ee351d5fdef79a935a72d1c3ff549d6d8e2c4a4375a70b846c60d42782d6f2b67002620ea2af905e5d54a05515331c597550fbc3a38c161edeecefb543167e0851f453b0aef0e3ba863a8f9781007a3c38e7f40c06ac7591d0e1508622151ac339c980b6b738aa8eb842f870986c59bac77fce2254cfe1327ea187bbd9544444cacd86bc6e6f92a69e53b62233ddd98cfa5eaa4aed0394ee016274444fda9440329ca91a87cba215c3b87a6d453f02f6963e5f49555cc378da123928f3727a03626c6c3891ec204121f5b698f5623a7e73f72d5aaa5e97e13b3080e0180e69a0efafc2f8cea1df840fb9ebe06bfa59045531cce9b6c6d5e455008cc7dc7b9b788d58cdec61dccac6cfd039372ffeed0cdd8eb223977690d015e56053cf9e848b657cc01344decded0e330b1c1363ae339f96db3a5c525765a959747688127be039dab8ee2f3d0ac0da28a37d9c22cfd407ac9c50847c86f32e9897788b1603231112045c0902461e3cb988a3f8ea30fecf88a8602fc55c0f5b60b89fec9af2a9568b7f361d6b09a6bea04cbc3835244fb9c1d58ea832735891592e54a592e73d1d6e3ca94c785ad94896dd983784dfb711fd8c592346925251a05a1d9c3c358230e24bd581bee33f71f6d8a2985df3a805474689ec05191aac3b58a36e122b1a020cd4b52106f929c84ae5baf0897ec5617ad712d519acac4216efdb89f80c0eea9f0df10232a609660ec1684008e9044a2e3f6fde42cd95a62fcda280f3d5945043342f6838e35c1647dd6422e29c8c775e945bf4081a4267552eb1c0aa6d066a4b349e58d82f3cea19082a0aeb6731c51a190e1a0ede8e2013eadd939d0b26b1546b03e0eec527161d4e7eb9f89e9fc62147ba6fd42ccab2b72232a124a7fb34581db82579470a5b14048d9bb71a947d5d3c4835fa9f2e2c39f991551f282606b2334872d326bb0408b799f408f946c62f414a9fc1818c31eb43df24fee3ba5b74405675ded0646c5315b2d8bbf96e6edcee96182c8a1d1e05f6bf6c94519caeffc4601dfaa3b56b787792c141b249082ff49ebd6afaf22c092f30d0bccdc8bb9d2c185d7baabf76733c688cd60d0a389c65e1e2c7feea1443f26796b4202f38ff7a81c80eca26f23215474c4836749592d4ea6cd72403c6d9792b7a093941ded539e232103fd232158a0b7522191f8d8b2004903f15940660cf3f881b91e7aaa7d860054938114d43cabd662d61fb6775daabdc9bef9446e6322512cd4816defeb2c4ec580f07d9c319feb8193321d713c3dca62a7609c0394807fc434a175bb22207a004339ed367f57ee37c9a91b10854c24ebf58c9c399c84260446eda5204f370ecb4f90a946ed6c1cdf114bf8f73f9b998f02489610396a4dff288522483493a2748e2e4cc4d5e6b01e8b4f015a68df5bbd8e2692152c3925a7abdbaccc715eafdae9c96cb74f5001b641c07f0c5667badaafacf032678c20bf7e05181bea5e483a0ce1c08dd504b0762c9c72938f54f1fd6d2497b801e0e2354f8e10b3a6bb6ba5048d2d21c571089529fe3d686a6f6409832e62ad83b0b37d89c3eda92f47935153477dbf8a540cb566d538ba9968475f30a481dbd22aa94c7250282fdd0e39c9587756d10df0926816d4b955b6d6fcd42c67da98fcfe43dfa4dbd8ae17fb5c9a4d7c3f4fd3ee2bf6b363fb1614d721d4c900a2af7e61963341608f7dc31971629d37f33977a295d676d4cc723ef0ce88d5c8976fcec0cd2c7971258d1b4ed6f8a7e20f0575bedc6ca497c1588d0d2ec376fb9a0675e840d1c0a80a9cfbe4714e600a1d178b56398e071e4101923df24f68564885de8df51416040892acafd2214a596673a8c677041af4197fc7a1dc10dd1f05adb5ea446ddb7c73e7693f911e3404b42a1237bdc07c0c9c03856260db12fe3496b400cf1d8d362979c8fcdfd16e7c01ff599d4b8cacddf44d096eb6902db15d6665ce1c9443e6f7bfb07792e4971517819e41164152aa91053694aad4dfe8f3dd244ead799687b89cee347ade4cb7ddd86bf5b13461d48295cd5cdf568ce42f24258ee15a290c3d7b5641d58fcbc004923241816bfcd99cda30d6a3616532f8ce3be6eec8482a919ba2d35103664f1b37677592cfcbad566a7410275caa0b63ba86f0e9825ddde781df0db4dd96ad5e046b5d588fdbe57be6fc085a31454dcf92f54f85f1c70b35da192386048f4d7434c6e015bd9605072699fdbbe671d4ec989a85219336180b279e553e59b73e7d6f15bb7a0ad8a241ebc278d01005c98425c1a36e8e9ec47feca5602c7bbc4249be8ba69c4fc3bbb784146e195f07ccafb4ea1809f912f2261cf35bacd358325b0be0d0cb2f2565bd6426ad9a854956e5cfeb7f768116f5723ca4bd8a5c88b2fa97569f15433683873861d95a1f74bc754dcb238a61109d7574ca6695dcf0fc6822cf5f0ce3179993ec3304f262f84e4fe1983a59536600f4c2e2ce5ef4c22ea90fda12a47a428fe0f655ef3f76baa1b2cf452e044984ecf49c30644fdc2f9d7686d9ca67e1ef2195cdd6b26535fefaf2ea0969619d50d3ed0d56f99c33dd65975a09b13fc798dc33b0d6799acd8bd28efe972680271b302652fffebd16cef077aaa6b0a85bb5a00a1b235e32995a62f528fa93c765ad351476b73ddc4ecbd54b496ef85738246bdc050fab22a8d73b4b671f687bb5ad302631fabc00d8f676382a45726fe656d93145a270361e1e7d6c76c7c8302efb9373d6ed75ff484346cbf26fe347584502703972b728cac8d7d48b1577d0e26f1d8a454ada86f15cd33c0210896e69b60914fb381355273ea59e3a10a9b426f47fc68c1328cc3c2f4b14151e29468b7bee9da8a5680b8744a6560813a43408b4b9d4a409e752684d855e6d2779d97a0880d6ee72c8b27d14ccb9c5609172d8bbdb8b948dedb6c71a6d822f7c080840da2828bef00d3b1b90fa0b7d5a76eb2cf1d0ba71325f35791fd270e3c9683d457b820b8d0018097b2a592f299e77bf2160b81e963360683ab6ad08a24f3aa90ea1a682f7f0f1eadf34a4e4c708ce9e48d75304bac409cd84acf14ffbd5c8ca031a8f9199aca4b84f9975dafb03456fec0307537f735d2456c7c0b132cb93872690ba5533f7c95afdc25fc1809e991058c6e1a0d76987676c9407411dea96e9d4ad1be17e4476d243f8a6a6f60268c43f30cc39362124d2fa2413adad7a95a9d97bee2e5927b549217175990518c5878e93e500c44dd257692d23977de8bd9af5375f930642698a78612648c3dbff59c18937e21537c92f7b989a1cdb1d2fae324428392e8de2fc4bc5988d1b9125140d6889ff46729ae5fd1392ec991d9fe35ea615de786bbe04c7a32b4f3cb1ae243890a26f1161c9d9a9df66e7390fd1b754f313f7f543a400a7115941b0a925db44f0faa42478d9b3da31846d06a245dc9386e70f6cf2dd33308c356ee4356facc438b532a579566970b390bcb49bb7f62ba9029b92d2299d2f4861bf156903ef1696e45786bd96e4e9eb277a391ba21f0adb44b14c6ebe6bf60d48b0edc8127fabaea8d94f9865152f7f512ea4f556f78598cf975dbe00f65c60f478954594235a4b3ed66ab5ed355673eb2ecdb49b8995a2d8aa7840ebed9d420d8a16af9547b5cc44d89579922b96b166deb244b2d9210b1273f43ef180bfd7669502d1a84eab25ddf8bbe73cf5b38cd593ce10412fb86dc9a56c6b910da40ae0305d80c6f7871a87096f838c02821b3ddbfb5ee99ba3b21582ac31d6f5bfa1c55201a9899aa5a8befed154427aeebc9c4c9bd63006b4b827d6141213d677dc6c135c59aa3201b4e084eeee904626dd4fd4c83bee5cd90c756992f406e0015c5bdfb99d9b24a0336b9be0f4a2d1112bd385eb50a76370a2ec9ddbf1eb78cb3f7f39c416f31faa60c265a0ec52bc3b2feea52ebc7d0e62774f652c77097c2d4eab2842eed8d57314e267312f48bc777bf647f7ff920f89945e71e2f792954714ce11b12f13789fc1e4be07a10f6cd1ce82624dcedb6775ed18bf15b179c1df728ee1c0cbdf4defc7d24effbe166cfaeea8965885355453f3af59b6c35ce08a21f2b0c3e3289bee0ee6b6199c54e171a560bd4d96c76c230cb73e9ed7afb639c5825cdaa2f7e9318ffbf2e395ae1b83b37ca9c43065437213eb33ce39bb90f06303854d3dc48c8960c550a235a7164eb427246b2688cb32d2300b7e8f5d955004c1b391111bce5bdd9ddffdfbcb6532da9de6153dc617a341cb75f661f621eb5400c77703ad37652f2df0a30230bfcd0f166fe7c66895425acefbcd65ea80f540e2a8300aa52d57601db4a7efd3c32067018a72875f47e4ab07767e51c7ae2dbadd7c6c7d564301fc20b4c09b69095d36edc719ab9bd8cfa37748d0b73f044fb39f98073f029ef31da014d97f2ad4fce273a99abf235c357b6c834f26f2124565148d3e6105cf311f75b116dce6f4b02df84b856c23a2f729e9849fc3424141c0f4053b783b862594869f39a91cc32f1f3e1cd4f448c8c14b3ff86de9f28d9776e27077ff0b08c2193827ae30c5a1b50738b4638001302cf23e9b3a2a49c88f6916fca3eae61d2673a37b3df4c98671af195239086bb5b7de568d37f47e104b4d025340f54e8ff8feca0a5b24a1ba4044b97fae995ed3ba52e88e709d382e1ade18a07bad7205c3d318bc379c8b049bcae28f38851b5fafd5591430e8fef31f313e59bb1d2fc7d93aac1f44d4c0fd5b8364e8109aef5e26048e6b8373175fab8e1988ffccb8da64a9fd2f7e9dfd16c35a9c04a843b59ca8971ae609c651f6107d8c951afc282ee5cabee8ebad0fd3db1aa7ac1ccb42fbceba65b072f6a3d5ca75f1cb546d5eed3fa1e6d5ec54893b958edd03fc3636b6e5c0ce425ac161f83627ff4da9a3a7b2149108b426dc0bb4dba19f7a06dd93e4732787ad336da265ea50f61b04382ac25aba6aa0005b23ff70004963c8251909b623c05730a6915ad90fee3f38c53b846a2ef58379e7e5a6e3dae9c3ba3389b0d7b708e86878fbb471c40211fa465261fb2a0886487033daaa4b483ea5bfec632761ca9257ca8e84e9af725f6ef34e44e8cc3318910788ba3ef746eedb65e46d9755f7dca2c22b481f5358aa65ba5f5d7fe1792b07d179d43b58d3dd25212ccffe4accee7dcb9bbbac7791d998ae7600056d32dd36b76c302628dae073be12e40cd3a05d4abf71363b72c8cebb3865c7d63ae829e4a6ea3014e95870f1e7e3048117f9b926a449f2610683bafe5e3d65702e38d583289f51432b6a18058dd5308df386320239761c00f260b5db1e6500e6c3ab358c396ae4f672ef61ac43792bcedd5200cff348b0b9f468fdcf59447da1bd3084a07947debbaea407aa1b741ff6b64a217e215c36e6390eec970ae3e83c7c6f1a5b7733d0357ee26c17f7b060989fd01bc054fae5dfe6f7347ff315862e7ad4daaea6a8cf4cca094600995ad868f3a0137cde12fa8ecf33e2cd1fd1ab2bf3e246b67f36458a72b74182a832968ceb7d5cafa1b69c8852dfb1440245c6ab6fa2b7da1cc46e0a5ae59dd106e9ebdf606d9c2b50468588afd6c5610746554f8a03ae5f17e30dd089c1c91190ea290ef212940a20758cf2ddff6763b8fe50e292cf1ee77a2b237eddb5d53889edf7090195262631c8683e83b4003477ba3ce8ed6539d09abfd2eb0401ef3fbddf13ed8249c6b9273d57ee9020b3bceb26b25404e0492c9ebf2f5dfb535ae7b39b64192aa0b76ef4fa8fa275cd85e37c83d9aee5fd3b2cb0d3637fb4c4546995fe01c127e557a3261a55b45c6bfd7c1564a0d66f6a9084da8052c2cca589c808dcb6497cc0b820473532de5d9f614a19f7506cee70ded1ed863b148b5a9453f8f422d4b874915095670b8cab7761732f987ea35610afbc06e5ad714e00e8d5c7a4da49d3e99b93d6c79cbea28e25456545886efe74c9ddb530c35631e661628339277a75bb2d69bd23c697299e25eb702a6587f498bd55acfeaa5961705836b27bff9dc9a937f84276520520afd6f8fa1ad00ffa0f36b30d16c74a7639ab7b849c8e87503bcf504343f319af063ccc8e42519d8783335e53149dbe415a4f55c7b2d015a1a62d0025dfbb81eb87e7958d6b0f06e49cf514d03298cdaa86c6dea568fd131f7e79e00b12d7223f5d4d3eb364d5df3c5fc018a1934388bc8837a79da5feda28c910099ade0aa214b15fe38c3ec0492ded3c4091a93eb2498bafc92b0712f3683b519db15d9bf1ebb1012214e6d83f4ffe8f94ae4468fb1092ed432688fbe42425b5ce9a53d5b4eda89adf4bf7b33927bd748ea9c802640eb8df314e7ebb6d8dc5ae8bafc1eb464c7afdb65268c28ab931b6fd58cd79940705fcc2679655d460195f11d359669f45be2aa8fbeb400ab9bce2868c552a62c61f3e4cb1b7dc3a528830a110ece8b50e4de80f720dec903b8e828d32ff1701701a62f93633d64eb948f90eb1f16b6ce74a62330565b78691feb6a911426089318d6eec3b6ce41d3cfe43604ba37a8aa40d8bd3c5d55cc10c5595a110bce18da636099e31ae6117c013d7a1a6e179d59934b9addec8bc75cec98c0c836ea04f93a820df79f6602f077ec38d84bd449c46bc323d605f83b48cc7f2158901cf74d4cb64d108f31ba647fc43726b4a7c7ed09e2bd322e605aa3a2bb72a7d9908f2b9767101081bcc617f2b756f9315f2eadce8ca6c9ca20bed855073270f1643a3fc12488f607dfba4d1a3bbd5bb4ca2f0201eb8003462761fcea7a0125343804128a5a44fe2902773fb677a601bf135cf31e83e83afe083313a1942cbf604b155b0ebbe7ff34d5c35bf5dd91d6f97e95f96ebeb82d5621d5e17b2989a879235b8499fd07fd6180fa41002107b988baebc0455ea1c39d1c737c9558f676e3e827b39dce47bfb75aeb636016c7851ac68a5adde68357daacab47007ac9ef965f47b93ab198d1d074df92617550aa8e81312d44bfee5563011232a640c570445b207bb73a9d65ebb0d20dab1d0a18389afb33f636922cb5525e4ca1b6030476c00898a8773e296e0030da71bbd2d53bb579a4e848aa3f5aa8c95af3cf3e61c1fc8a09d1124a36be5ac4f6f69d45ca760807a91627e5c155df2c305a9e4aac38f56d78030a7ed48e83e7248c4105760535c24b0f91fb43ab993ee955de08e988bf5e5b3bf954f897aa9a0d02f8c3dca80be37f54fd41696e77e69e7507c7f10c1dee9bdc9d33cdde390eb18717cc55dfdd8267f2f5b4966e48b299b299d462adc1339f8aa5064cb760ed87d858b50d93730747816c459e9ec5cd8a608a894f98db9ece38e6a623dac7dcd96a5bf59e9d62090087f9af24af22d8b5a247cd470b1a4e74706dae6b4cb6d467c812c13dc64db400ae8744baa5dff6c06c7d1ddfd9ec1f65cfc0fc7f3d90419ad784ab18390f036384472c828f8bdc29291f95b7727521570845fb539338585a03da0ea79ec3d0c77a68bd6e71e53cd316dd0cf6bc95a00c7fa8cd7e6822af1ec3555e4e9910bf1f1a19510982442ce93d74510032e8bf347f63bb7883c43301e9b497973d6cb2482dc8ae2d82b1ef2be812d7e7992b5faab3aa0a245046a8ce5d99421be48dc46d8ee8baf0881683bdb170aa6c7f5c7fd26d65b56cd7b2dc24a2b125a86aebd39146a7501db30861df6302bbb05207d0461fb454d3004b3fa520d71b508896b14350bbba5e430c2adc044b7fdb2b121c8d9e61c27384c769b6804159c06e47a43232d00b74993b3a7df3a676bcc90262bcd13720f6666195a42d8d1b8758ca57de115772f7bc0eca5c76f5416d69d131c84ca36f77561af69352faee5952d13d909f1e988bd1a432ab063e69100ced51528d89b9fdff2b0a458fb69a07dd17bee0d969da480d87a7b5d66651cea063e736d7fc347b8ebae3693511a7c0d63fd99e799148aee669fbf957b5437b03ccb5d0e26cb074a7347663da1981dc6d4d161af102e990de9fde03a625c8bfe8aaee47487d0be11fcdcde016c8ace6a6050fc9d4080ab71bb5ba16ad251b9e1b78d956bb3b070256b0a7e1e2c4ead05717381f8a1136cf0acd1516d351d9974038419c8d23a5966c4eff0133ea2d07d98110ad120174d8df2dbff90cafa9155b7f8b71a02dc287096bb2848ace0b0acd36156c2557488d20850a2d93c75ecd7f14c7deaf7554707662e9c1d7d9a1ef9041f50734f8d5fe14d5472f4067577271c2232c63fb6303ac33db8d5c52fda9bee7858b7566eab3f24e8bf3b89071cbd470990d14bda6808c9b1a47805ed558a0ff92fb963925929a8810c404c42287a394367c799030100ab030e51bd6ac36ef2886fb4de57f1cb9d08fff1a47ba926446cb00e74ac2c197af29423366d0c04e594d4fe2aed32f0380f1a0b5da9cfc53dc9e228d19904172c48ce2c1b1753126a8573a78782739c683ffd1a5a8c2e24d40cc5957243d5e8211f5573765dbd7478fb857ef5ea1dd764b232bb5eac9beafeff477b0ddfe154d8974df5aefbee5e9eb7e5d0da5c3f280634b0acef6c14a628c5bf87ef69534324174d6a6bbc1855de1e2bcb157d7e95560eb0b6317d78701d6a6de982b75b05c469115b59f6a535d32557136a5128f8b9e2aed165a760839e379d46869bdcce8c10a19e0bcdae7e79507485c29cfbbfeba413a8af53372a8ccbf83616d289b3da4312e3d8f50cb745e13a739f128c2af817c386f6f0f318577d867bace7fb9282e5977bd415cc533e327e663cfd7159d9c54e38d8d78556cddf17f6db4ae70aaa3e42ddfce4c65fbc77697ba4c04c32d436be8db30320ee3796f067ee2541237f2caaed525c54c0bff4cc03b62833b90b9b9f31e1b712ce8700306b73c447d4fdd1dfc12335c257a3374f42a34207ea23fdf5830c8ca9a0891d92931a13e1404e24bca2c5440dab1721708a38a743e668c83d1dcc9f0c272481b62314590d7f1d90cf45afa406e64b14e293655940862281cb60971e8e0d95522644288b1e60cb50347103ac50f51079745e02135c2e5dac9a3abd8931bdba53f8432080b5f2a023e18052afb750f95b443be2e04b9aef3004e25c76482353150d5e1e4016668c8da3bdd668fc8516aac37a946934ddd88f0494a8edc3004ea4bc53b0010f3d354ebf15ff24f39af3fba6b7c85cb4265092107f90bec2129f6bdb92fed69a8807efdc73027703e91f599916d0e23a826dbd573ca90443e7b3858d3720802b3918124d5ef50e284a23d10ceb133c6cd8ba9ee426c8830be62ed6625ec3f8f2372cec7704ed44bff55bbb1e0e31866f38c96c067fab62bc4e983e280a0580131ccee55432c44f23719faf18fda8498de62792c29846fa61c852e2254552c58c480641ef322d2b2f2159005a0d1147a856880be2763bec6a0bc25c42a4b0da8443ca676f41c21d362c80f86a93ff4af2aaeec71b575ef0c22c5449ce701f9b0d190e227965783cb9efbbfa2f9e39976c9cb8baf7aaf01a97e2fda679560cc48c2505dbf4c61c1aa009d819dcf3d3ebb854e274aa48adc3f47f2e4a2cd282faa86ca4721493c477af10d92760a39ec894d2fc90760d7ae11983db0764761afd4ae683172c313131fc7888540fc8e3d5272a3f3e02e8850f5e6868c87d4f49c77139d313345936a103eff0d48fbebaa1c118a6f699942d6f2d5880cb4994751f106a59828a94a2839fb7e222d6a3645c1a6fed33f8727f3d7135731a4294349bd81ff9864ad266f616f4b9cd3e5be280472d226c920262e5eea15c479affdba72b72a1e59f4aa9b8d149746cec4156559afbdd063a0f1756d9a25c5ecf520af3aa3ef0f305de92e3417e2c4d4c64784ec14801991f6ebd3f1b030b23ad198bc9beb2560e754778819c2c14f01b92e1f99f90cd353f38f7c2cccd514dbcf7deadd705c936e5a831903a9956c96a0641e312f65b0a0de45d82e73a96d3caae81d6cc11b7ff6c3fff44b04bf0ee086a652c5edb494e153e173739815d278216f4309550114c4a37ebc4915fe65de1befc2932186a9241d632dd783469357eb4ca16b9815813e14fe99e84498e623dcd5e421675afcfdb478428b9907a08a176d1c306365ea88a3557018a85205b8aca5b6332bab5bf06536f89bb79729c63276ceb4c6ef1e0c6cf3e0bb7998fbb84c543ead75ad9a4a00543d3123e3cd5a53dc3413ae855af450bc58963ca4cd1e93d6fd3f6fe1902fe7d902d27963e8654e1cd028bf55724fc8dabc6d5209b22bacac3bf103d8435fa37f34a3880899a26c157179d72cae98fc0ba23d3d82fc6bd944fc5b5c0f1fe1012231d330077fecc5d32a72936b9da82f2315543a2560aa332595f9b1e888e4879966e9d86a5f582e4e38c07dd1b4b9314e7443623ff35cfea919ff1eddf2701d00d044d9b2c0dbb701d45f6eccf911bb7e96c1c14acb9c558704e7cea2e4d3dacba6e6bc3520981b9aab78b495d451589942ecff6e1a421ab8a25c8372be39e4ac87772392906081acce512b17e9bd956e38f53a9ce2cb1733cb000b78718965a004dee9643b3e6483ecb2e7f84ceb969e3130693d3da125e146c49f78c25b9194c6df201c1f1cc41887cc5a77da22d6b731920e9509873890616dd0c867dd9ae9d91387c64d7edba67cccf43c046786d71630c6a4ad67bebec77e120ebf1d928741e75f07c62a8ae93073fa5f1098d16c09a360b7902a500381ff6b3e9c809528b557e93888259d3189af536df3de662ec70360d19234169b40a02e523e90ed41cdcf1cad11ff6086d88ac77033348dfd3f2f5e377adf323ff6391634ff6621ea196b4f213e2e05204aa7b019fb1706a6ebc3ced031d9f24692ba104fb9fcaf117542f79e3fb5fc11ba16341e4a890997619d4c7291b80c9416754c5e9901bb337c42e5c7068c6184d0f3620d7d7b77fa301a68ab214d8198e4d773dc5acef9344addc7e6e297956059261bcd4d19249997c4cb3e862441e67fd032bb194ece04cc301f0f8b08b8171e2d5ce3389129dc03410bcf97ba0b0c4622d6bd0197e5e4be63216be4d6070f7e5f5343e5691b33c320486c3981a87b1973c0a719ddbf82354df1950b088351bcb6b42c8fd1e9faa9034961af027b10241c627d51be9d7e2cbfcc9c6dcea956be5e0931b6a41a5108583f9413c14e2e4ec7ef8f8bbf11b025fe8624189a3b36a5ea3bdc50081bf89e15d253f6283dd259208f2102452bb08008663a3e5875b9571aa63ad65380de5534cc017c1454f2a69c0a43a41dcfe9b87ddd9093b3fdd41665fc7e3be1734d5f8266d4adc6c2d9ae778315c621bcd4ab4399c312c155d9aa4fb332979b17c20d74ebbde24238d2783416b295202a2661ef30af34510881fd254c84972bfeae5dd6d579ffe7c174ae3c1f3cfcd10cfd712c4717d149421049f1577508cfcc488532bd9856f04539ddb8a428bc49c96ed1582f6c821f9e4cdfd59da15ad713c07a80c6f288329023fa05271cc3a0d506b1414f04e10c36791db8d8b59e31203ec15cbc769ece794bc3bbfede35692b763116dfc2d24c019c0d943482748d810b1911993adf25e1e979c50fe5a7e5fc0c980d5c0358f9fa3c2b89ad808ff6c2f7fadca37499c963a4c073c9c5f50a8cf01098a7dd0c28810323a9e0a28597006fba47a6856e950aed162f874dec1e55a1935781226f352e1e079a6a1edb49416228599ef2d6330922a34680adfd7bf8dde8c81d8a56cd3bb981e9f480ffd2cbe67a87a298bde4200621245afe5bced4c0ac4ad9dafefed841c1bf0639ac3a2cf13a6ff7969c699b23408c7df62349e7e65534edd531cbb73096a38609ecb3c5f2e83a6086a53de7e0785883e6e6b1fbec9172ed6a9525fa01c1c83056d49b5158d705eadba441a60731c4c534c2e2c7cd74733adb89a1e310388b3c59ea6706d72f1ebaa5d731ee7bf54f4b1ccd779777d7ccae1bffba95d162ff0ad62594dffdd78045d24ce53f411411b2ea8a2cb0c390bbbbb59e42abd2fd89df6659cf44ad148b2efd8cd2e3850e26526270269bd21fa46241cbaf6fb6d1f55b1449eab8f8a9c92fa9b51e084db3ac92679fb30b1a2b72aefdc7d587ba29ece2bbe2868afd67f091b37607cdf03619c8622d44d93c265d4941e87d6226d2c94d786c9ffa8f485d708992c4691980387f7baf4134cf7e0ef660c4a86151e4ad1168bf22f9c6f53caaf604ddac891fb2ed8dd1f635935cf3332e591edf7b971c68db909eac20966e971483e6f9a43db236af2c87b43d74ae7b28ddf577372d34674c0758d34fcc1a63dc5cb2eb92bfd4de7c4d910102365f080b0ce3669c82e0b86cac4ffdbbd13f6135297be4aa7d6847468b7e6ccf7ccaa0396e12c70c2af7d8904583663d6648abcf439861c5dc9a42247b7b1d54010448835d08573c79a3e8d9f16e3eaed012db3d57ba79314129d1dd68d4b6249ad311b6e5e327180a7169f39d4506841e1616778ff4ebfb92e8c6b20ab93181965c564416e266e85ca6f1fb3de8731bbb219d7092fa48d3b9debb65d69da95c50bab0061b4ba45a9e7772000cfaf75683998bf8c40cb94b2cdc6c809fedaa02b8d5b54b0732bc064ab649c1ad99cd67496308352f74fa2268ddb73a1359291b7d8ca069472a07d951f2d9f35a584a885b7dcbdfd2e2cd02105d42e2358f6b85316f0373dd6937e1683e40ce41647cf443e4c6c34ac1971b072dec7e4293719669bd3fa67d28b2caaf99fb1330f7712d00588de38f900adf085a8ce3ad5fde12cb0634ccf9a5baf4f07d0012c37ff6814be130dd69f99940f624615814d4237d0f4e22f9ab6b73c34fb95d9639ad5206b38a7cc6cdab796768250c1c50587c578a21893af75c8261dadd5d37f6de7ea5354138859f58668fc14c81f96d0c97cbef889fd513acc9311a7ce9b34228a46642dd22bb930fd1223e64bda715f2c4ea2574c0ee3322ebec715da5ab5c6bc2ab63df1d15759551a42989e346d6fc1be14169acb8fb1f23c459b8a196281be0fb661ae8122d5486754bc1de01eb9efa986db183b107c3493d6b920130ec6c59914460a1336db423de09e8ca49a8ca0f3db936570ea298a921dabfdc260da5279366f1315eb7378016b36755d1589d4d97e77b778f8ce7e323dde6fdde361141fbe8acc3c5551e9468a736cd14299fd8cb7ce35192b0297d36c8abe2a1201a7d067671f833c296013bfc201dfc9f9a84334fea11aae09fce1f5e55cf94d7b9d6353b464871b988bed24ede5b05b13e1a37eebeea102357cb764666a1d8019219ac3b93ac3b3a3e3d78e78dde6dc5e6725a6286865b8727bb6049680185daaa297f3569b5a659b49c1ed96457f107e847456a6da63f9b52e1101060ed3ebb2953fc05679c7f8dd9968fa877200f1179a66cd3e7ab1cf950ab69cd91028ef1e8b99f22c29546b057b3ef0b617b63f75e7019f12b41a17c6db362a4c8cb46b5091325b9c055f2fd39fce49bd299185e2e773d5ec08d44c5912ac49b92f9ee359a47cf4e05f03d78640cff27907039080f4e4686fc2ece31bd6f48e62058b4b297ef746af13b1ec650909d3f57ac8b51fda25d81df5dffe11c3f7afbe10b1ab3266c9650eb94889bf90715ca566a57cf53944deeb18730461caf2cbe653abf251f9351e0fdb8655e40682cd515a3bfdce1c2d62683ace0075253afcdd2dff5c8813d45b0a5ad18225922bdd873251316016e9c3ec1e0bb6722968c4bd158ff69c7a8f1aa65d4066e4fe1da2167006522a312f1cb1f7be62012c1298d8ca9aef0714a0dd777f24fab037a847a20feaa7cd430222b0c348437074330fc673fb91e16dc762e7bf70a8cb81bbb45ee67bf7bc996d2b63cbcefbd1730a6769e4e8cc1431c27b9779fce33d9cd5c5a68e480b488c12f449d3fa13e5fbc936a6c204e54403863ae3d0dd3c75e4579d0979fa6db9e76a6979edd8120082d80c5a40e4ce76248709db89732e4930ce617822ffa513e0b9d872fbd46c0f621d3b1bbb0b809e2ea890a2de14b5b39a0209cf892322d52ca3ea88195617f1d049e1e1dc98e9bf2e4152a74d9ea89614c6f37faecda2b9b057d720911ba3f335d0053fe3598ca3843761dc25130f4074d016805c23e7a5e5e4f21e1dc15bb982c4da23b062e41d607d1fa37e61dc16de209394691b46f28935f4e267015f8abff3abf7fcc740eceeb5dcbd01e1cac83d17aa3ad1d37f7ee70a484dc2297a192a8a6caded7a1229726a000fb7ca97209a09c95b03f695dfea94b395c86c1f9f9d269c0421995a372abfde103bcf91320b29ab3f1b2938210d47e848f0ce3767b98781b3f22ab8b6c6b94863bbe4ba2b23ee076b8864352c416b5ce662dcef86d5790865dcd1e04ad57e7a3c7ff5a9d81462ea59737740a039320e596f2b1fa6660254c00bcda055e7d62f77c606443bc35d6c5378729ceddc94e2e0c4923b50fb06682986169a76fb2058dc986890f5e184535a80f8582f811c3f594c6e547d5917927753a9359c50bb4a07ce10444a8601842b6d686cfad6a43bd82e9dddcc8539c0b37b2a4c3013877c68f2a6ca052a5fb41d544eb47e510d2cb60f82723ba39daa5dd84ddbdf55760e075b650b66ae2088a7215b8e7ae780f7134af72d87381eebf729007b4e716ffd3c43b9f313495cab071f55cebe989830e41357eef7496136f474fe5ea36ce7850cff348967ca139a13087f3b34f9e839f4fb61d380075b346111ba861baf10ab2d4f19cc241be9c20b070f37fbb8c06399695e8a434fcc386e1759a77944709cdc297bb528ffd361f246a4ff0a8a0f1314af5df58ef0c8b6c8a6a30fa7eee8769e0fad8147cdc69809ca25d02468ebe1a7d888df3a995cef23cfa80d25f72ef274136ea03655d4ef66ed703bb159426d4cf968a0d615db6228d9a92e9e2b102c9a48202d7978638bb68b76effa37a33b6e3492a722b07f18281abc76c10e64879e82df8a2445e47492a5b6d3f0fc1c7ce58bf38abe0ffffd99d48c987f3ebfc5ee5eabc8925ab510bdf56c5ac49d20b0476d51ee0e281168079b7389052480cd4d97ac133018bd86f03a525af887417415bacb5520403271722acb32c1cac20b09a90d3ec44c34ee71c7302235afc1f11f2d86078e436dc86e0bf577dde54452732fe5906aafe79ce749d6478f464ad12e6f7286a47c56a9c27b24854431d26ac8aaef8ea3c7b78e51be9ca5651fcf543d418b37556a795565c852921e2e2eae9f2fcd0690fdd01c224de78c41702cc9117f586000700b6b8c4314f20b911cf5113b1fbd569318bd311707349c1b9b07d33a3c9fa96a63c06d7c1e509af9253538f314fe533a3ae74dd04507bb921c7068b74972d7a662a3edf8b1a974c380727e4717b385a5ce59a3b59b60e6faac713ee1dda79d31c089d63d6f24c0a4b591fe77272cc8d6aeb44e887ea322a3d8a72d4e6e8751e5c95c17145e460069fbe47b1d80f82f11b85e032fcd8b02a3ff5e53dbf72bb2b385449d2ebb0f3879b04709ef9753d45d06e43703a5b117ef025059ffc1b43030e3336f7129b746def4645cc637589c0d1c861438701a33c13b880c30a2cdffbd338c0a67c7bef672cdef1a1fb8916519b49945dbdca0772ada2a16cda0da2c4c2d2a22835a83f36e00022b5bc1a22e72d9457351bc8180b02ea6c489d2ffc77fdf7249569816f14fb6ad25ea101b72433327a56011fbe1777d0fdca83af44c06ebb85d882e376dac53051b58b101a578bbd1d0e5a3df358c54d8f8b2c5be9cc4ad1980cbe9ca5a466c4fe9151e7224af43edb9c98db3bbbb8f5930a1a0fde0e89ac00c6e1d8d67f05a8f42211bb0f3a4dc835196e4aa85e90844bc6d75b9acd815b6e737fa0183b4f1c54d42e054e4dcbecfe62e688c3e913864fac7899ecbd6a9d5cbcac384b23c467c57a8f685b222b91e2dbe07fbe6b74502843187e76fff5177b392a24b5d4ae5f76c961b595f719eaaf626ee51fa76914e04262e32891c152be978b158a9ca22cf9313b307cd3715187b04bae7174ada5d37c745451c7b116a601046b7638b062dddcc9f071bfed6bcf6b328fff7693651bbceb71e1134534ee694c61f19d62d7b190dc11d197a8c88134c14e041377df8b94831ca1c460fe9568ccf55d72e27cf270b64c6a422eb77d1e437090aeaa1dd537dfd105e927ad6857370bcc6f07bce7c77765b36231afc96786e5b3330b28ec414c7b139493b694bb0d050c289d2ea65a6ac03787fbe0db1d7951929323367d9142492e8b7675da57212bf7f32c2899014b91e3da95cfebc6438cc2b9dda2fac0b33a6d6b94f753c36105ad85164077bea33db614ccdae123797855a1d7174d704216afa1f17e4bc6dc57c598ff8090e3e0dabfb02a28f5cd62065cddb1fed1cb0e1fd0bd45f5b0dfcba897a9b9a826728094d5bc95eff7923aa874e10593d1aff65f68d4fc08efab9f1f8f6bd59af51b20374d5e4b67f111aad5ad6780883434aa045da636c80dc324be5db04059828ad19cf43eee137a73b1ba2e011248dae89890083b5b4011354e8b9ad7cacb19903600f39defc696e0c9c172a69b887a969c3d8ea33de72eea1259df83dc928eb266094515f3701617784bc15ff232af883d7579a858541a8bbd257abb26de1b136c6aa75301acddd1ad1f861ba620d4d5cdb8a4dde0817d156f6e2a0945849d63dd108551555600193d211eea6499116d3255fb1844eb0964cd0bc641d428e51c3fdaaaa60e73c4d284db3f1b5a938c6bddfd90b0b9689d0174d88ff77a329fc8636eff2abd8e7dc4406333d2999da3b92f92c6fefb60ad3230dd100acc837b117352f0cc3d71504d1e6c7d6c170d107fcae8d94fbebf007b213cd1bb92dc96946b24e9c7fbf986d528893e522afe2619c2fe55681caa4633a23acaf4a16be13e02142887a02ca77e4be2960bd176baa49c897a4f21565f5b25801726295bc69a74471880e66f52181b9e0c46ec426fa0642e3d295b99fbec1d66c964acaf9c193cf2ef582cee56a46f81d1ec1aa4a070a9857595cad6a2b1872f423343ddc4a273c35c838690fa8973681624481e13968eaf4251dd48cf569986a6360c305dd15472f30820f96f08e9aa63e9fdcf038b620a8a65d196f15f10e732a8b2693c9a857641b66e5636ab121d1a3c2f488e9a140db71f39cefe9aff7b6a117cbb88da764d96aa35e0b7e38c0d647f49405deab41db95fcb17fcaf0ab1b7c739f994e524d7a53905302b2afb155917bd3feaba2169b8d7ab29a78710f7764190373669423c10c5197ac01efbc69dea797899412751045018c270916a8e3771b5964af8abd20077fd4da11c0cb749fbdd9964c9d9dc3b69d6c4818d3ea93141b6c0bd53d41a38b81e7b155de0c7d1f10d2ee258735d12602f36de7286c8d22c1f8af5896dde3fc444d1eeac41aa09325ccfa4694f07c0aab1de06de6ea1d5254688753e582c96b766bd9f175fcc84239d52765c67635e5c0e05d6105dcac17457a0b609320329939457e19cc1f24e0fa6e92ee3b86c7922d69aabffffc52923bb29135cc6e9307cdba6c5f31fb1c7fc88a19db6ec730074214ce92cb7245a6f6a9fdc32224e01f672a04bd5776798a4bcb388345127d53b5d6e47abf044b937e7cbd89dad9a45d76040eb7bd647226fd07105df114df421646b62d0ba19479677b08fe4b75da745156429c7b95491e755ebdbaaa997cd7cbbc69db48c2bf47454b70e04ca67365ec3282e7ff3a2bc3c56ac2f518e9538e89cfe8ebed9a2491d597a309e033c5e502c3454a067900ac29f9c465c577825ce91ee5a4ac145ac42867eac7d36a7dd4f622a60d47387547209c715af1c0b20335e2f77c992469654dd43d3e06eedd169a4e3ea1543022aae78a05891ea747dd0faeb2cca38d1026be513650c8aced8e7270609428b22e484c10d8caf16a2e1e54a9a452219f37a5c223e3e227bd49fdd25929e07f04acdbc8a22544542a1699f99dee8867b1c1ec8940126a77ee07ee141f691b0905ba0cb53839d0e4181dcfab64e147b7d0ffd3c0c6ee9588738225101e2688687596b8e2db9e6fa12d5822dfc1895d7928882bd194a6d05753bc8fd0c4966267631bb82c56859e3ab1ce726803f5ed38a2d8ffc54831504abadb429887e73a838e0bdd922fef6a351b337d4b1821d0ac198fd59f1790e771c9d2ddb46bbfd8cc39e3589538e2c90db1ef6ab2f29ccd622a859503604bf5e94106b8f47b3f6db88e68c30b501e3347a6d8b81dcc06883b1a51788d437514e45fe619665a6cc9b6352add5251ecdfb90e36253b5572b81e21ccb85d4f042fda17e34eed1244e1f1f6957d17e5a01c5d8a82a722557856dc4287e8825edc3af2308170103622c8dc1f8e6a7c729de4a18ebdfa34f73487c6af014823778a34322dcd6607ee2af309f4f8da2d161a92cc9de1d07b603ab636749237875974e0f62e20183f7c77ad15f54460340c0f9de744db07f79df85aa3511a892ed8d2b40c24d86c9469f5062c6e000178c6afd5962941de3ffd7576e42bba046af0b9fb585a9edfea28587b429e514fa62889092e07a8d389f11304ae16ef797faa1ac43f88c2fbecd6a3f8fc8090e5e34e1b8ed59a7948181d69609630c45581481db9eee543adf050169a19cc2da4e8a066c32c7f02f617d85edeb80a60fd0ed065d52dddfe9d3ec944ff0b553678b57ca25613174f14361a8305af1de72286e9576188697d96edf6f22b3720661455f12f382db32bb037975ba768471bfa522c6da09658972afbe2f37d3cea51e252ce86577b6c060c2c54c41cdfe7514dd0aa214ec69c9e0f750912cc7ff10cc57c917eabafeb18e4c217b4de98a2c3c583de093454da30ed3e8e812d3bec123a24f66b04101f29a921d1b82562ef079ea2d2849f4aa19f1d40774c63e767597dc5c1bc906ee55d57277e45dd519983a25687c1223ad50b058b642134d2c725b6e70a4098dfdb17751114d59c99e3e96031f4d67d19b877ac2b0b9e363887a03f69b5e2506145a7daf423fc71fb9319f1e5f7902fde6e0a10c94f5f6ccf5ab4ac210368da8354f14648a1471b89712923684ac9a5cec78bd0e7de0a03157335a17049d74bb0e3480902bcce373c06b7e225cdb5352329543b01b1f7a04b30df7fc84089e86ce704df2b3fa22b6cc30a27bb51eaf4ab613fee13ac02d054364822cd44b637a5de72c337f9ee4944ce601d94d0f82ac6345457062ff9a1aa8eecf1310122f307214712656d44100a16341f1fb3c2181a02c47f9819f9af778782a2d030ade3d8adc78fc0b32d7fed9df11c5111060405f2114aa31ce29e1cc0a4a919dd7b0f2deb363f4b5525b2abf9b8803bb0cfd18ae5a2c8dc1dd42178531efa392c66d93504e0c1372f3ce7e742ce4469b839ea1f64e4a4e8020b6799c3bb803b7b7257b17f2b224c980c4d03b571720ac175533396dc0b5270475fdb74db6da807ff7d0f3206eec984269ca904421dbcc101f1cbbbff22e847da3b934e51ea5b62999cd666fe56bba4c994387ced454bd043d8537e09ab79987ef378283d8e50e7bdaf640e1c9a08fbf9f1a2bd193c723753ae7ecb7bfe697f5417145766820770f498699e8569dd499a7e736bed9f10205ab71fb353bc9150039b27c610290c06d15ec4387131a8cb5ed5c45a6d2f7cd59c516027a6214d9503ee4501d5f2d94615d9d56d430d62e163fa09dffd94e59bc7ba67d89cf864bce7dd2f3d982a930fef383efb7ef1e6cf09c365281e0a9e4d204167d984afa682b6c45c4789254be1227f1c4c542db3be449b8c59dbf4d3511aed8cfb29963a55e16150ae766c70e2be6c352c419f5678c3a0ecb2cfeea641c4f9557f204af72080a3c83fdd1a9098fdae142417da8fa97911c9c8d9b3a4cdac6eb19c7ba562824018833ae0700744b391f0d4819da46309c363b3b72bda35cbd9329548550481fc00d8700207e6bbb1117a81397c05a9f4d1beeb2398dc7ea4624c0acafc5b5c85690201a97a72dce5e7e5724e602e47ed6a5925ad9613162e4b19b4a4331c415295c4b829c473712edba63689e258905ec0963db4fdb3ff398ec70a9afed6646ee2656137e2c4afc3e1064b9e2e0e9fe658613a53c4de0b004d8545567c09f0be98208773daf22548e5140ae4eeffdad1729ac6e323f4c6281caaea49d66b8890853e6267149819762de7deb11ce335cb8de2b66e18f5cb0461d8eba281ac134ffe11a0b76caf634259d1bd9cd4734acbc9c4344187aa2c5853dd2e5c0a1a428ecdef9e7b158bcd8445bf4147e95964fd28ce34715c67423a1bdc145691f913d94a6dec13b6b4463fa874d10abfb47ce2a31b64db450df6e9fdc996263dffb94b102e707d36110bccef34494dcbc4159f5909e17d66bb34513c54f01a9f9f04f6742d27b03704dd86100021315601e3668491a80b8ff4a2277ad5106c38cdbfcfd6bbec28ec3842e89970b4db3009b30f3177a2fac5adfb22cc439207f36111c59703215f7bbced8254f3b2989f152f4c3c2783041440fb3241b0b2936191cd9d22f20e0208113c458fce394ed0fad505bfc065351f02603875abed7c9983e6cc1c4410999417512ec30c7560094825a1074c063e910eb2c3ce14b562313501576de90443547e281a9cd40e2c5d766f225426d038480bd841d5826b96b059bb8729a0d480557107fd0b8060a7841686e89d870cfdceb8c764117fe4d4ef0e2103330335f0ab7dc4d97f363c74d97bfbd125a1779fec2eefbe8a6860a6019b8284420e70aad60caefbb3c458c0ef023a48d897452f18d3b98bb85eb91f7469b5dbe78a0f5181e04b54d0bc937d9124f86560e86b366d1166d50dd887fdaca1225b23cd108b509c7d56ce8686a50087ba64837f54c1efdb9c0b6d4b838eaf5dd503054be439cff63a9fa8377b7019174f4e0cb5450725cc933e4c159c868843e164b7428e3c97a1d5c5acfea901980b59ae97af2bec14d487d131f6f8b9601e12149835af9117b13c4b5d93bd1ed947e677b40444fd6a09c09bb2ec24a9509cf47c9c01ecf3b85d7bfc3c18fe39beb9863be1d38ca99c2f0319834d6b1c5f5aba3982db6f986f2f00b632f43ab395802a516efbc19002cd2780830336864f1dd003b698ddfaec533890d50f429be2c1aa2168d6ea41f4ab3417906b6d1578d062a70ffb710b68eeb7ab01452afe3f82d2f0ecaaa79cc6a3709bb3528edbf536cabfaae3597cf5cd477ff2f0b394420a92b5379fc48bb65a227b1819e85748ef17af7bccedc79522073fa389cf90c060af5fa02d703644d034c8fed8fd1777faed86921614f79e513b1bc06745b9b06cfe8a3e34127c23979ac21e4f1c3f51a91e120797d7f326dd98c8589a8d5b27fa1f81d762253cf455706617cd12faf676e4eed26653f3d62302467cb60f772a9df99532ccd69a57c024f988c5bfc9c18216036ce94f5bc8d5227a4ecc2a0cfc2c0ae03b730eb3460d7d22cf6214fb5e0d23932361bd9e904f8c85cbc210855293cc0bb4ac9ca50d4e9f68a769b23261f9a41cbe6f44f6649916ad74e1c52e37a0ca10b41d229853a938814065ae5ae8681b6bc5d06dae6f928b4270efd0b525b96258643f06627f92f3c91f29b1837dc651a0e9ca99b3bd12b682b72ff43c9245346cc6edb05a3106946a7015c651fae435c7c8d2520e2b77b624a99038d205ccad44bb2bedd10b99c611dee16f1150072862f2a23168217e2d0fb42833a3e9f9e61d9cf4ba9373c3b3593241e1bbd39bdf7013330ebf650ee49d836bcba07296cfc7aaf2b2bf71ffef58a7afeca7c1b70eccba144cc19887efc2113d60e3727025ccfc8c21b2ac0c13426271e2df8adf28ead293cac2d9c6eea917afe2152897ae65617f93bb67997153bb904b8f25f79a81cde91120f2b42b22d3aae95f6fa88b47180346b79ff6813d543f34f7260225b2c7865e48bea5bfba9d2fc8fff3a54c427836b13b16922f05eb46e99d15a52695c5265f563800607e7148bdb2edf330a910765d00492fe5f043c659847eee347c8a4c22b70d60d6a3fc74a36aabf8b35d434c9409ecf1fbc68ad1ff306df3befb6745d73a23e4c807744a9a2897ea36d3fa4fc1b18801df75d914c19d45550101728d48cbdff6a3ec7ce9468b0d3d122cdff941d235ae45f44ab93940a9c5d4e5bbea2636d9554cb20006d980277789ba7d055764e8e1e714051831eb30eb242a2aaad3da3ac8f9b6d05a4eb279b42a70cbb895174bcba04be49d721ee91b91223a5f1c55becbea79bc056fad078861d639420935cd670fe93199cfe7afba7718b584598a4ac30a2f075a5baa2796ee7928276e754d690546330d560a84f7a135d649b17e4181dbfc79ae85383fb2e352c63b3c3a97cac328b0250769c14f8f750de4c9f96714b307e60e02a4304db22640306e29ca393febc7e3ff06a59820aaeddae236d9dfb5c1bc78a48a6a5e159ded66588d6119c15337048c8cddd7d082127ee15ecc60c365b433989ca9839eab7846fd55a2a35f3f02d965e728c7598ad502d970a973cfa92260ffba89e4e2cf2ccac520b0b6b2927ede624b97278ab0dbb693fe89a4b52d77e92cd775068619365bb9f4d71ecd0a5f0f1fb9eaa0ece7dc1c4dff22362a685c86f7a04e6913517b48ae086d43f4923bd9f5473f7f5259acbafe6c625e6886e04ef8fd77f9673975442f5edc6ec53130ef720f22873f73c7c58616954189b8c6a7610310592b22b85b6747b1cb8d8cad71f9e17a30c3b6b4f6265789e9101e4cc0a5a83a234547827440651d9b235eaab4e8c05760f02081a1d0d28d70127f5cad33fe7eeccd2833e423175c40c6841e1be9c24e0f41da276d3df5b4c5589afa898e50bba141fbd0c8db9082fa5966f79075f91811b6314a957e5b9022627a7a82e56ab02726bcaf8d238b3947694aa8bc87cc8beda44a1abbcb5404aede4f13a503ce237ef981abf34bcea488e045443e7fbf6e0932e60a56392b23be92722ba2299fcb6e2ae1c4a58d2d38374d6f838c2efc96e46302064015b77343daa64e485d632806407111a71fba8da1b5d55102c44c06f2e8220749805a9a3e033627cb9034dbc48197456a8224a904b7a55057dabdf7cc6d36d31ab04bce933d1f012dc4cbf409dcf538bc36f7092f839d24a4e1aaf117a4a6bd70f450c04cad7d871d095daf9bccb98b1ef22d75fb7feca921d258c6c2d5227e4916b08b76ebab07006b5885ad886c9fd75a4d600fdcd35644807dd85983b0026a78180de56eac61f176acd446e14b3712be974c2860ece460805510488f2e5c91e7d5064e79d009c1649a6f3b4621a8074d51e827f46d532ea125fcad79713fca8db429aa784d711d2562b3c45f3bc1b8808618de25cd97ea1c2639cab974f63c444057dc466e78f11b586c6a0e7e51074181a84dd2caa6ca83c722a61e8de84d5432ad039c61af44355974dcb7cf75e46d5b19c42513086b21e2a77355106caa51bc3a31b6648b19552c2be2cb518a1ce8fc8d1925c6712589ebc4bc44ee72d85d036c294827e2d2dea21aea5410b823ecd341d2bd0d79f53a7fd48e21b6e4871fa67568c1743a82103376a6f734de548bfdb7c494f81a68da10d54314d503fd894dc1d8d8d7889049a7b5a84de9396bc15e6422209e3e1adf022a94da9ba80017e422ed5fa04e4337ad1d597d1938db2300e6119b5bb78e84efe38a380ff626476fefab3d5714ac2f42ba7dbdf541a73be4918a391b69397b7b59a0d201dc4a92d7e4485f20ff3e86577bdff0c74567b7056fc965c04b43f356bf72fe2bcec1efa387648d254fe6ec7842dce5f8d6d030033110a9173192118035d934329c34a84a566fe2ef5230bb08ff0102af8a478a1df668e1143babed0e8d1b5b471a6f52062f15f67b3151eed7740d498489703fd04464dd82377c09682e47e8e202691798e9abd73c4d8415ec122ebe50d8967ef876d5fc48a1f2c07ef5e47b44c14f57c1b9dea9655394feff51c70ce0a0e4af6477af5276c751208c7cfba07f93bf89f9924ffc64c2aff773ae25de54d4dc54b90114d66542d01dddd1c0e6c0da99ea5c84b799bcc89247e77a26399187094dbfd6c11a7cebdddd0e2aeb8e3549cf28104cbc7591c63d196889c1a9a60cb7fa6ebaaa7a4769486eadcd053714623b5adbc7f721d101cbd74a0fbc3c5c29c6b294a49a55abf71ca9c2a690ffe1ecb6e791318801700e9596de466eea5e7790ca55fab034e7769b1f037593768b894f4418f96ee77d4458a33c4f78799d8db498f8f05aa70efd714cfea3a7b68e8af94380d599586768a0bacb3e4daff6fba84153636617381acecb345d27a1eeff9c74b7917aab406ba34db8933f74e2f8f32ab6c0c49752fecd33e69d49f67b6567d315bdaa5699bfd767c5dbf092c20f95813b5b317a7e091fb701eb765e78dc278258539e36401cef0c63d00fc44cf97d66bc9ea17d418f9cf3dcbe1b0f0ed0718dd331f37eeebf483397f82ba95c13dde8d52d0d80808805d7ebf4c4b76a9f3e1dfa55b26cd42b701ca5b1e20e067b6f1df0b6e50e829ba7b18331e7a86f044219144c66149dfd4fd8809273c2915fbb8c7c2dcf739a10201cbc9c76fff1c8bbfbe4714f8ed5272829a348031fbd8c9ae0afdb6030e44a7faef551484e9080a6e0797058918487a090f650ea59fa7b9e372fd270274f4139036f1e5cef37b84db3c6a276e3ea059ef3b172820f70a91b11c64eecadf55d051ce1676640c97fe403695e95104e2ddee05bbdbc0d282ffec44eefcd0b67d0e9f731f9c8c5020d9154bc81a3816a6ea052336593face08adb41a8354f9f57e50ef32c74fb394903d48dea4689b6cfb5c910ed9e6cd3387497cbaf2dd1aee55b9d6fe8bd4f33438bd283913bef3c083a68bae00bc2e2710641e6e01db487021e66767a76b628b5172efcdf40ecc7d8c3b5794cc0f10268cd1c2d830aeba6916033ec5a23c2e551e4b492d58548f6b22a600374682542044e15e3a62ae0e4ff5cb844ec2d103efd85101ad28770b7bf483ff4c6187bc446a5f0707a9e096d7934d709ccbe0150d41e272519be49fd7b2e536f1ca483c35a7a6522981764113d5e538ea7d1277c83da6f55c33c37c5eef4ab6f345c7f1e559b01301ddd091af30b9e228e9f2efe4d00477ec240cee8fbd9449ade4848b1d49c96086d448f7453951be82b6a8f02c0339ca0da70cdcb9f4c1860b3463cdc4709524ee9435ff8756bb9e659e13e098f2d75125f7234efff2169d5345a6e2a0d0424c5d3b87a648822510ab1289b872f4ba9ff54055e757838ce6e5b6f20d06b9b3d1680800ca771b0bf170d689432cb38759b10031f3a57f9af87a95d81baba4b3c9d6ca88578a2972bb66a99ff8bb8e8b8385d911d9da95218e901baf1c53fff1d83d954b8ba135e1d63241cad94147b2c0dd864138ce05231bde81bb13ac75012600109bdbe9740a3758170891f93e90ce74ad2d538428c221c124b381d67c81b61c015bacc7388227fe47a6dba0c53b22f7b501667ab62f6a3c574873c8fae9173e2f8e1c37fd58c57062f8777dff135002af86a33a6e3be2d3e103a1eb71673637efd29cb47844f6691e73ac12158d2320717da169d791453c8051a1aa31133ad606b109e544d891f1d4bb38020f7c5c469895b09f7fdced728b9e3a073cf3ac322e2c6e4c66c6dee207471308b89fb740011500cfce384c3d16ebf349bde321bf7d063f2f48587ae5b9123351c9a4a083580a0be6941a808b539008fc5a1639e791a38ec15a828f5788a4630f58e16c358e593fc3b1ef50977916264e83016b90598f5d8563466a5512e8576738a10a0fad25ee539d9c8a355bef9c2ff409203f0220acca549201a9607fccd1a028acc8ccef1532599c2100a0b5dbc11e0cda8bd40c3a0dc86a3d278ca3c3203905296b83ff05d31373cdc05b99702aed2f8092ee16b21fd3d192e523ef734fcae717d263b8b1eee0725f800e14d464c076b04904d49b19e3bb8ddb0aa81b3dffcc71d4db9508e04410acf2238c15246651a927905ef7e53994781c23c655c72ecae5d6d9b728516c68fcca35b160783c5130a0942f0d6436bc0ebbba973354a08762ed3f58a626e49543eff6365deb3d02115f20be24496f37d58614ed83333f2b818ccad3f8879a2c863e510cb38e7c9bf5ac6b48eb48e19cf06b00b1bb9d01b77f3aab8563e09ae9604395615ecfb0023e2efd356b8154a408dec22a25ecb087bdabf9ead07983b143f037527969584ae34162f011dd84361718e8e33fbd87567c90e62eeb340e243d205287fb7ee23fad77aa3ae8af46461cc40c411aa9ed4b36e117e351b307e6aaf46b1b9894cc6998160a18793f3fe6878f4e0a7953203c2325f8f2a779bb06122a3ec1b41a9316c82d54f2addad073c3858c431bd807def7a1be0572265da5addd41d03511f129c65808190f1b582d3ba3755d57db4d3c7b1a00877db0a0c78dc0602ed62d0daebe6bcd3854caf64aabf295b2266fee275dda4acd470e955a8547d1ffaf60eb5dd69f83a556837af6e5df39a40e40bb142cdd2ebc3607547f03809f85569df106b165a17f804f029498820a8d1e580915090b3fb7a098da7841a9bb3ce9168ec760fe560506c197d5e439641407a1d673c03084bfb483bed033159e84681765df29a5f35a352228640a82e065fc1b3196062b980f33a1d0f2379bd3431b95fda42469ceca06488c9146dfe3f9d8ee57d86ba09e1d5f623191a6990adff8a009de8136920918de110075f065eb8d474fdf75892ebb85d0c99b64b7a901a2aff77ddec4abf91b0dd7147c75d476d0f888f3db1d975b09bb306ea01fec737475396b0932ae1f4ec2f69edeae29533d5b193b70ec2a27dd50804e6626a284f6172913f540d1e22350881fdffe5822d089554c9268afbb438df34c508547255f48af48bb7a4345911cceb7a3e2e4987722cbd5a0548f85f18d30091209cc3e2d5c625ad9b4dcc79cd7e1960d442ba3197408d9df9cba6598a9e850e4b9d3a4f926643f7ab313533c10a1e867f6563524dcc43b498195a2bd8126dd533212623daf19f7c47297a5f00881d4baf0cba053590c8305e451c0e2d2b098bc632cb9a674c4243898b235cf687809fb8fbe53a563ea4ab5db0dfe2019d8bf9c54c57d63a02409c87999651d04c03afb8aa34975d3a4510759f5de9f358dcac49796e13ebb535fa1b9be8fccd8479df104d654f446b375d6d28d86a2538c105bbab8b233f39d8a0a91a50b743281548c136349ef6a0a588e63ca4b775d6e2e5a81805380b1dd276cf1afc7fb67010fdd52c4f6dedc86ec14cc54b807e5dfda0654a372f10a979fd52efb26f1b84da311cbf8986003994b500156defa9e6d9f2f500513ae6abac61832d8b0eaf8c21fcf49ab873286f05c9aa1d3cd1b920e20167c6fb95f713ffdf414b44e70c58c8a24519ec6351749ba136941b48754429d0e2715a401bddb03834d0840c98b153d894cf7eec0430c1f268c75e6eefbb34117337ba609726dd0de84ead58923f7939f658673100bf6ea85c59ac7aee5d9bab662bdb594342538b8ee021b4ae9e67b8a1560e7f694f944c50df4dd880b286bf9c6dcca075152b45698f8a2483985a29dd99bb97d24eca8f993c37d818bbfee7946756a83557083557165b9d46f1ea9ae355a02e93ddd72686f48c381cce3d6e22803d16214fe76697264419e1ae43f4e92e06f994cde36acdc4fbf614cce843c9aea433e34f62e4ebc3ca45ef0b657cc3b0d67bf9440a9ab73e6409be9d8a9662a638b668b15883af2308cf06965483aef0d0ea704d54c5cd858bb80cea27aa218a60344e9e88854b8d62ff3179f42a7fed8e5484f46b40c14e57d10b62581816bffb56139d542951af5f0c9b1daefb573928b95239c2e914ad09d6f588e3642b74e4a982c53020cf31ddf95997a32f523e8ad9ddf073bf874c4d19b26645b2e87b5a229b32d758bc113ed285f9eb823d433685ae5dcbc3215901bf9ccc0f381034a173d2ebe2c435373428fe0f5c5732ea05a873322ac95cdac5a369a8a44c9d2dcaa22fb6bfc3a50f744400387a3488316c430cd1a1d277674fb904cb560cbea31c6e58c4f5c977122a79098cafbef40acd7e68e96df8f7983b58b221c7e0e81b7f4192ab66e2d691c550809a82d937c6e2d752ca4396aec3039ae325e1f963281178e52a9c175298b850aededcab708c795e66e793b9ac8e46aeee03f73441329a2b5a957d31d3aa575f9a34343aee85b918b58fe8e094acc01e1932d8f3a3a510b0bc208578e1121c1e6c17565c10a8e5500c0eecb30c2c0bc15ac88196892560c141aca3a4384a8ed0957936652891466c4ac0d9200c648e8d9d85f46dbc64200705b4911a40864e6271ea09ccfc01b4bc78086e664e3d242418799b2bc8396eeba07972d37873aa0ec45d339379c92403599db2136d5831323531b38438fa44a8bf3922974a0802b0cc8cca7f7bd2a620939ef7c265f50470c9d3fa6a9317687f2cdf52096099e496e8073cdef48d80f7fedcd4e31d6f5ac0d360adf60612f6ff4c53622cbab3062ef0382cb418c1ea4d8bff3c5f224df0f2a1a3e243fe70561ee0acd3c407d373eeed16708edd5de914ce595efdb77465faeb0662b2fdd5126eb23b5cfffbcef1d4d492e7a001d5b03bac04bca99041eec4d085dbbd3b95d6f1f0935d46c1bef6df855143fc82d5043966a82d1415317ad38783dc0841f2aeba4fccd41c7ac5d26826854b176a0d5c97647cc5668d38130da51d1f518276871638b37e4a4b7a86f7ca471f272225eda1bfb3428033dbaecd7013cf6e21fed7b5d5e64994f542d3ef1a216578b86256c3eab53a05c5044c180f6fc82368987399003145f1c6801c94282e16a4b9f53ac5bfc861695fa95cbf21590966ad3d9d76f5b6a6b5db15917fc90ae7a80f5173386b61f7157b8f2ff856bf720701b91de99d42a350acfbbd56e2f6fa4efdb0787753852db9d5ee6133a980e0b88895b6b1f4ad38d094dca549f2b220252cc252b0c606d8658cbdfeff91839a58712b1bb1d1f907c4fe2f3e5a50ea5d368fcdc1121561da4baa35dc7d9110cf6fa6ff0d8d349e81cc08945cf431f03dbd294819f22d9f12ff02128a27c37b5459dda302a18f02ddccd425522c4792955b165347e7615b9fac0cac7e330f34e070ed3ed889bf3eaa6bafa5e6b4f50fdb42e495733e02c3985449ab2d3f4a3dc486f2ac892572bbf338dfb09b5cacb60bf001a760937595868923680faa24b5f538550a6f89baee80500bab66c9e10fff8b18af6f6a597883b39381783309fb4935ba41402092309a38f5b514572ec82cae23e50fbcc93727204e3b5a2234c7147bc6f38de0fe72bdb59a4388f3cb83b521464a4c423a4b408e948f6f3373bf2f8097d2a323330caf8f67c1e77a7b924434955fda33b908057c78b8fd251b890c1291aa19b469f059017e3059657c944b574036b63da2d7916de5ecee348ed577d89868a8b4cf725e3047efb111c383724b9667021b9b9041df7420b886c0f4e983659aa426e69dc260adc1c526f184c618e907058883aebe1ca3e19b86f7004d5fb9a463e0c183d7a7e4dd758ceaae4aaccbf3e03b9020688871664913d7944952c648d2aa262729037f54f4950a9067c1e8cb02f3173945b5db9e1d6c546976f43ba5e7b486ab82a9ffab1493491c6a6fa2e81f6bdca31e69c1388e7f149abcd107408a86e43417337c57276f408d7dc2af04a5ea9d4074a2e4992b380655de0658fdd021451ac28957f4af4e90f80471ed0196603171fae09d5383558ef1e0dcce3c8d66525edd6fccf59cc380f444e22f7d05cadd4b256437eecccf2d64505c78f11e0a0a1e395872b9c7cbfdc8719eb833e2f6282fa91cd733ce49f3fbcf934a91bf73d9cf92ef6749184696d00db0bb0e14f641fd69be1a89d0e1bc7ccb8ba214c3477fd2d641b626746519d00c227bd210e015ad272a9873d5329ac721be801e13a5632187d7a3e168f00735d9967254e2596d5c36f07ad49dfad78e16fa67728d9df911215b8ea1a7bc58e2d5f2c69d329408522577eeb63f2c1d264fd7b2cf7ebaea4cb3d83d09045380ef1c5c831318e5b499cc6777ea9297741dc67ee03e3d4c7d080bb65437850b1a907c09f930430cf6365f9d0b30a6803801db6b9c9c17e5eed72be2fee2dadcd10b6fdd02730abc6890635fda9446c37f8b4ac2c40a000914ecfe67b28804c910b1eb4b7dabb5dcc9eb3fc2560ca7a653fe478fef9d08958fce48a6aec87bd4ff43a261e7ed562bdd63e28d98b027190d6d6390aa655c0cefd5b0dfd8192952fe5bda19d1275d289f97ce5c4d79bb9fbb77f273ef5bd62e3a7fc5c10a1011cff5ef8608259fd46c25833dac33df98a3584cb0f7713b5983e81cbf5d13ba3a604b3552f91b946aa4fede18724452f68bad286bce67b81447528d602084712f9a17772fde0952b23d12cf423e188d83ae9b3b101ec6bfcec4fdda304c5ecf025fcf74ca896684e18507f99ec21329833376009e8a1f3891e6f2d3da70b5a82dfcd15439da9abcd6ab06e45ffaccc855de2ca09dd4aa2425650f6aa3a2966565a43ee3690f3fe66068c755ae03b1a6184d4974c05da15ff85518e001901426bf203a8e311f00c9ca1568f419379f9843727aed64242d077451eb7d542ab4d3616f0e1b1c48a7b4d62c5dc5bf0374c655bbce9680225a7dddb80eb3fa617e966852fc5f34c980750dd0daad2ff46728b58c34834f2411b0be980d51b20a43bde9b9529955fe7b6442efa2351522f5b22547d56fc9d980c0b274f352ea2fd79600644514e37a3b617236b956f22967f1b45499f4b3716252a02799721bc1bf225284670a00adfb0050450361a64dffecc00da12f426f5bdab2d7173ddad1687919c31c8a32ef3db270f0ca1318e72d1c56d757459d89be56d894a5136d946e5b877f0cf6103cee72fd7786af1414b11ab7d4252b2a754763cd87e24502bcb581a10025480f122c6b6ce014ca51a2e0c665645c11330f5243118c5da1d00a15523fbe836493870f692641fcb38b52e42b20b9996953424d8ac372065fd7517278aaaa299121dcff3b751c163be3165d3e89fc58a090819965ba86b11c2640444130553c5b42e26fc40f00f5261018cf7be4efa6fb777fc0598320ce7984e815dc0eaf77408260bac984a08c335a0df93f32399b352de4721218129f62f72817509b0ced193afe523321fbdce3d05c5252da468b0ded16ea24a0cdb4eeb1a302caec80471c4a1165a3cff471dece96d9fd1a435ebeb05c61a4a0d2d617ed76f5950b215db92fc084935ca6a9cc3f137f9f5167d8fcaa55c403d3b0fb59c07bce89c2c048cd0dfe5502b7936d41f00b98354243d2e20ca1fb1638fabe70c857b6f33437b673f2e09b96924f34a798ed3b838c92b6e0da967ca805d4061a14528ac4a69116d6b170a21e0e47c81a03a3ec992280a7e340822e3299a3b66486636b7eb92f62638dfd1c9f8752efa521d4c3a9b7c74ac9bcd1bcf85aabb62defaa28d1c8731cc7548d41a75ebbad3ae3d816ddfbd3a8c02b0581d76571a996fa14df164d81c93d0fd31e62344cd22e6540fb9ba492826a3fab8c6e6df3f074d3b31d58d031001586470473d80585124790000efa9a41d3265fabfaf917df8ada5a25266b8b1f297082fe13dac21b008951dc2a69fa008ca3284d16e6e201b341594be35ef88f763671a0f156a9e712e58cc52a4755e5b5de7e177654082bdeb3f3d63bc1ddc1c9a9c30ecdce4b667f835bfe114bd4f3733e4070bd93841d382d8f7eef2da9137165515bfa3ac7174f54a5145582ee2078483a0999c13ba12ee1986970230a2a7c80f56dddc4ee7776fe19cf473ff23e209ad76e757453fdb806444a1abb1e3bbaf0bb5dd33c857a08caa1cf19e9c5ae053b31e2925090f16138d2fa5722a974d8cfe1fbf00839de6c97a4601c34089bd90993c58c988d76c3b35405a909caf9fb935eb35b57fb7b7be7f3413d349dc9c7169ba0712a44f5492a196ef0705f52c1a13b704222c06b26ba2c4c7c9bbfdae6104f1643cc60eb3e14a249334fc4bbb71676673abca591df04c67c525b20484ac490d0375559dab0d7cc10e0804e191bc892caad40a6ebf8ab7d9523e7b7a058d0cfc5d441970ae92904df4de81500545dd5b0817be6e0265e2ec1a146ebb78534d4212776381b3b849ad6ce1009b9d3fdfb87e19f51e5e9449e7f03e22d6f7ff787f7497e5d76b97a0fd816c3c2a63bd10fdd1ef5209af3acabe3ea3cfc4c95953ee033f00b1ae0458ccafdf78b2438730410a4c64fee1a72eae39ccada8183a262f1a1874fd101ec116781cacb897abc3dea8601562a18cb78877b5a562fc4c619be17983619e4a87759bc5af51943a4d201a1b9c2a93049a001ac30d4f86cb6c51c5553a1fb91b04a3348315ebcda2e239582d425d61e7cc38c7d2a343ee274fd67b086b5cec232c59ea663704e5381e966302d233edc75d5f8fc3c88c3b38fea3e8687933050d6ed5c31e4d5c59e2940c0283ea5b3cc92f78170e6f75e2c4688e485b84f44147c7743494645287fb4dfc57b50c55f9d8dc613452536e8d97f9292510293de0decd6c9acd03502a82405ca311fd14bd34c3766aee13b6b33025b562609859300c105cef133b9774cafe0b1a9111c915207149b172a5fac2c86378410edc166ec2f768d02232da50bae8f65663160a1eb23259c078ea35e03e00e4f81de77bad8094dc55d5d46694a4906e45c729d86f67df06501b5570802cf00ff3db8f7ad75991e2027fef3ba21fd84e739a423642207e761eaaa5846f10a615d007ab1621bdd40585845bb3df420e33532dfeab974690343f0075617d09a170e68e5d427da8ae30860cd9f2f2504ab5265ac5050bea7f61aa69612df4b5eef1d133bdf20e8a2c6ff60c6ed49583251c5515e9fbd3f025c008533d55a5098c031dd6f62c7139f08b0da1e4c4b7cb0a2ec95ed60489a9781c24b0d1cf4b65dd06ec80128232bf22756dcbb745576d3e78a997e02ef19929681d7dbfde15de5bddfd8e91101c50516dc3fa89ea8b64e85b8b5d9de322d969a7f71105a58278e23776a85defbefd78d1b0eb9bb09680c709ec3b702485b74a48dd28afd84d72168e148c5f91f3b617c61eab5f201fbcb81991620019dd3daa550acaeda26536e20e3ee2992fc2b207d5ccbd06511fbcf19e63e61d591c9eb35276418c60ac6275db709cac40673eb7ea3c4d2d342f0c27d8aec6029ddc00f606e55f86631384fe412c61ef97024046ac34564483c17a3f63a4e96176dece5dbbc6938044c673d0910eb7c6d7204f3e59c4a5b027cd5f646968577b514e2ad4f1da0bcb88b1c0fbbb630697d28c45a64e9b807aa977a7e082ba114293e092ec717985deccef42c8acd170a70488cdcf077bc663c196d4c7d1cd5e35adc66fa514e6a4e20a0fedd81cd3d2cc7f0bfa76020ef6528c7da2b3adfac6de0e25094b528c2f1307a873a3449257fe9bb1463da009c2aa65e3b23c1dfc0edb07c57d1ca97fb4e6625b73b26fb6bfcbbe9b9cddbf13286fd8e58babae5318bf68725b154218f8c1a26a97b4b9b45afb70d943bb75a55648b0fb6831fab130427fbca458517e551516ce746d50bbb4e6800e85d8dd050ea43df5f06698314b7ef45028041f711fba438c0760bef443345f53aac4fb89a31707bfa38d88c8e6805207eac098f6abc14c86dcce0289d018da8ad4a47add1cf90742dc48ee9053f31b9dc2a23aa4c0ebf09d0b8b2abfd5b111f1411ca0a5d50ab078bf813f090aa93b0575a0c784fbcb77faafa95428ddb9e02a904a5e3810a899e4d75a66fc43ee30e6003e1fc987fa1ab91dcad63a5e9b9779e6f6b1d0cefeda79531e80386cfbb42027c27e6103387045ecd5ae7c64677973b2dc4ac57d715ed780894f8a4af4be3d7691bc4af4c32ff3dfde2b6ddc61144a8ed9a4794b6cf30ee4e49c83b605ba6bb7106ca95d55fab945b7595642d816f912e64b64f8763879b0e6207506e0a4b652be2698bf9ab16e5a8731b5798f7487ad09a5a5b55dc56267d38049a8e99fa052e300761cc011984f9d24c214f381cf731a606dcddf8a1286b9f845ea3f17a0ef9eb77a2f96953ac4e1073248da8ce6e62e605a92bce28ef3a19fe7f67a8b1486fa1277d5440409782c27e9ae63593491aca13dd7705eff380ca1448b3a2b6dcd25f6a0fa24576107ecbc99a8f21182d970f4e2357a3549d636447ab871e8c286138111bc84797a9a949be106ef725bfe09ae1e2e84b5af43c0849ceb3b829b0d5c66d6696fe81b9955289927e356e449669282983e18629bdd64f8e0e6b0aaf76951e218823ce5a28ac486c16e1f43f51b43d60dde2137976253f29d67221b33b961a6f4b72bb323b8b0ef7775a8edd14f240220ded036f4bea5a2f0c4be5d5d211a17a355fa84c09790199995f53ad90f7efe350c2b9559d8a9e98ae6d3131bfdef266bbf1240b987f054607918ed6042bb4c2c6c5b0b402157dc5b5f97899ecef54c3cc587a8b711c4fbd9255284a738705f520b28399c6b8d953e706ca224621ab146defff0aaa365f7c1d027afdfe3ae67d45ef4a571080152dbaaa9686fe1daad92751ecb3fae17b9abd35940fb948a538034afc85e2a52130a6be89735382d8881b29b5598231047103a6f4b72f17420a9889311bd005ce7546d0396a05bdce9d363cd270aeb39909286663b68e3821081d39a5743bc3273ee5670120b23ed695cb0a37c0c1db5dbd73faafe30ebf1d71773c39c79f955b71288a0694195373e5f80c4e3472527e0df29ec3659d721a51a39b53faabb482332d50485db8b4d33535c138a2402f681b7537b92e7cfaeff88e85255e583ea19ff525d0ba4f36dc402b5ad923fae2000038c1c38f9becdf0bfd5b1565bf8e178ccb6fa0370c8d342d3569248ad766235cf8de1439b303741ee9f5b1f41451c182bac28ad749702f35fb1acb7628cc7094079d4cce39dbd35898502f8714d53d24b65ed2b7cb3ec88ea4dc33f4e9855aa2d2e676376f7d4153c817f0343758d21a120cce4361075f6d69bc40cfe2b019ee8738d5ea67b4f094cef4ea22fe34bc692bd633ae06d48b95749547f4cb5778c4998153f442dfee95b4807f31c67bdf693bdbf9086736cb6597ea6650dd040c8dbcaa277909d2facdd6b84b25f3d529d21d58790a6acfb777f9fbe1cc30fef41cef1eea2ebcb3169a5bf45f09ab778e591221ba46a89ea13f9854559b0d54bde88db8f741350dd33d0f399f5cda85447b832449895b0363a36fe341078246315ca6edbaaa99fd2ae8949a704e33c0bd79801be18899113d76e53bc6c4f7249538a8cd27dc9023493254dec20b05594527a09c320cf86e556bb673b0482676a5600e3f86d811dee7f841384c291ea3accec6bd27357f60ab8f1f0ddeaf2a8d5d529cf593ac8443f48f486ea3ee5802ea95e12cc509d7c31451546bd92415306a831295560aab9d034c7e38513620251a1a9f14d3dcac06dad4f13f18dc1cb3d40d17ccc63f597cdab3009a6554454cab9772e58392b5c8b58230d21d6a0be643a4d8afdeca8161d433391408f0ad3f67ead64fdff482aee402e2c10cb60795aede7c32852dfb9884caf75d8cb4a3135abe96c43978272adbaf9c084f50c1afb0276f7c228addecc52768e69aef7d81275a0c49288e72eca20064b02a3d2a5b068f5f5dae2495dd9b44353288445b102de65cb31a77ed8e6758a82c3d3dc6892e12357c90b690a60752d35147fabbf0ae77d7d19853a37ff3ca84946d5d013724b37265448b0886f86eccab3ba3d107f01362b3d142c7a34aafab90a7bfb609b66fcc8690449282b670e6c15269e7637db6f33e55d088b0c0230328481e10b47fe136d1c25422d8c5abef94eb3d99772ab131a5e70fecde4f5f72db6e56c0003e3e874a3232ad965645b0f1d1807438518ea38c348f95f88cdb80b9c0a221250e52a1675f837795a0c3108e43cd3193cb52a8bc2b075928628871757179d193c9b82b8cdb476e6058a39e78fcd4d73ee7e064c1ed3c9697fb9fefe3a3640c350fd8a9f17775a8cb21f419b1936c3d22a9c5240aa10e89ec31c77a4356344eb293e0eb02070f04d39eeb0e3bbb6a61b41707f9cf2f2d1ac45001c013113d08461f0655940e3737270f4be86f8bd3bc1196d1ead3e43d524d2830f135de09e04f3d3ffa94979d964272a8943434f421b1cd9bf1e063c62edec65d19d8bdf0273b5cf16cc96e9e7d5b7ec98a928d792879f7937d66aef996fb056a1358d2de986943f4c744f4e382ee7e84cd0893818b6469c4f9fe68489d1b737e229bac175f5a0ac271742da08322cf8795817f4c24531a231327faf3ce50a28152f4d8ada7e55ca0b3531f1df675efc99206cbe4589d649d296c76502f1fef4c2704e2fec9a2a08cdea78cddbb1fa6b9c38d387ecba0abea03af4e23e01ea317fa775ec3a9e2e85c27cdd425faf51cb3190fb72c8ae1e9a3b4e2500dda79ad90a9d2c03d747b8b3d29376dba317eda6cf58ad23c20faf5e41da24392eea4c2618b40df96cce2435501f30a18d3cb228ffd7ea009954323bd54cbb27c479331a48c556425571ea6382efc2a055aeba13502d4cb7b6891635c216ab4338d70094b6586a2732d4a34602cfb0a51d7022d04cd40d89d94157b7fff6882a371ba5b9cfc934569d8d7386f10973281c77e1d0c9cfdf43c6b3a79cb79b514a825e6b85b6da787daab2b3a439efb8ea409ba6bde288e4d49f95c9c4cbf103018891359ea5983b85d66614ebe1eb43f1f32865ac5d3b76c377fd441f2eb3435c7999f09ecc02209a7121c1db4ba87711a5968fa04f45053bb7f765ca604a97bc8a3475178aa03f606fdd32fc38c4947e6e4e0112324308a049a45ca62467feecf378dd868b31f449dca03ceca2b52b66ff67fdeff83de26aa8efda5bc16789b24f81c0e67d5b9b13f465d09d371ded003452280f9fea33869fcb9e59810df816c087b51ba8b43b91984fb96c01c2549f507950acb80feb96d5978d6dfdb3e0c2ab8d76959204bdfaff32a84b67c66e5520c891f871096c927a0f2a10a88980b3a81307c822b1747c52c05c4b410ed78db85d02a020bdb2f36e914180eb5ae2c0770369b777403be61035f6e2f002190f5e674a96e0658959f82a4c5e704d17fe0b7a0abb86dd4a8cc044fec1512ba1da37c58d8306f8575a6c291e6968efb0e8c6570885564668116e524092787720d3f87e4bfa993cc66e69f19c7150e9a91d28972e37724e1174da60dbfafb841b2eda96dba2671bd282d6cf066c395c3fc8ecebcbfd154b9bf8324cbb334a97f29bf873cd65aa1bd3c3a649cc1bd9e33ceb3fe35b83d3cbc5c2e730535083c3da20cbb3932bb93c108387f9b8225ddcc5df97e04afa134e10ad88ce6d232f2e3f753ef9c5b52457924055631ceae26b6e9f225c2929898a061f3b1b66bce38735a4531d9ae74a5907f15732648ff1224d22a9173db96b4b05d2cfcb0863f4eff4fa631c34429bf4828d9da45b810489558849dcc91ffdd870bb912e5fca1e250c7f7ad7961be8f4bec28e338cfa7bed3140e03e8d0a97ded1bddbd7ed273d7fdf50cb095716f47e32579d1a560a5fd8ec65ee8e4cbaafec3afb189e15e876290ed2b9ae17d85a53023a6bd5448f4870a3c61c4f903f479901bc83feb0851471fb55d6981fd4e15b5fb0016f9b60e9639afd185674dc9493561f2b27bd4c248bee0f1518399b3b47976d89d748ec35879fc137fa53ffbb8174313291047a2cdc9a9e2da9975be6b37a636d46289aa45ef8a20a72776edb3da711af0df8ef7e2c1a1da2df55affd6065cf84fe6a835109ef887b1372bbb86965d22d1c1f97e153fd8c695d108a5a3993aab13332e8f38a391127e102106244cbf26bccac727a0bab5e6402c547a0e8cd350a920288d68f462feb75ce5465456e13247e459d2d964cc231013cbd2e89df8ef1368c30c1a9e50d6bbbf45bf94cf863242c00a4687108668db0354f11e3dcf6b0a44b77eb655f511c3d8be0418b6bef26c830a779541bbf7e761567bbdb3b5e1bc9290c7daa76c2e2874793835ff10b8e4cf7da17a6dd46e481b5801d455639cd57be829656bdb95f309e27e4fb42597f1ae9cb28c409082440be1abd65fba9943c46065287aad5d17a7d3bc9662521029d0457bb4940ce92809c15e5b7f4cb857a924ddc8f6a9c4f8d6257209889a70262831142b497d3a3bcd84226ce4cd52ae6d6f54ffeec2fc656f7ff57685011d633d477449fe51bb648cec5d2c311b978ac45df664d6798a1789b470232bba113b294fbc87ee224e4b2955fc270bc3d080b9e1fd77cbebbdae29fc24904525c6058a5a2c6c4f6f5d5680d886f63e4536e4e98db8935701ee1c013cefce4de4c40c10b6caf0c83f06e86816e79bdbed7e32e0b4ea24fd899cec43f1e7bbfe2277377b0fe8fb81db03b1d2720342ca082178c0736c379e55913f79ac523180d2004b93ad8ac227eb73cf509d777c3f37fb110b60cd4581e39f22c122f9ab2576a460cf48cf46229c3b294072ee8455556b14cb2807d65a8509d5172bdc18126aebd763a5ffa63dbcdb52b7dca3d7f974cbcd0cc899e8e3d7f4365fbad818058d37c8d3f3514dc29b7a7e0085f9d392d4b388df5fd63d274e53ef02dcb8bcd5b7b5f15d4ede208da0768a8ba93ac6b731cbefc25673c4f95850ce3de65fa59d0f973b966444f4083935add7d4a028df621fd122df1b7091b568ee0ee474983e41fc249089f6562601af25e8751fa4348a9b5409642342db3424e31ae3006cd7f9031001934895e3c49549efc0a4e406b8292fba21476e2ac4b6b77d17ea63c907d7d9f639d5eac9340408e8edcb83fb8ac06775094f6d5c60b444d7fab5bc3cddb0a8d0b9fa993c9983834c8fcc845b8544e1883c38e1a061418f56c530918d64db49b2c389555557cfc2368d11db1e392727a3e0ff6245a34227ba83103d87473c251bfb74b2f6a0a436fd931056cef5473e811b7c53af90e76c7b425abc3aaf5f16eea2c1175b940476c4c261ea253e09ae270d1757c6cc415251d1b960281d9867d561b27c1570886b515ac19f109b8676a110a5b06bf62579311921cd06be7250c05f33dc86655450c9ce1ae44af0297d15c8372be08caa2b96c8be346f25edac85a2ca5e8d7efacaaea8bcee88e199c8f94fff9a8a31fa51672ddf944b3e7396047a843192496b857adacc43422a92ccb50668f13abf506217eb6308c832e8d0bcd59977b39dce38158e5243ba3eb8e9ea972aceaed8965b43847e51593aed88bd5c3cdcf7280d72ef4202acdcb42d8244ff8bf07f9c8a9083549bf120e65dbca429521007cec762f24b4fdf69e09983d89702a072a8b0f83fb66f6ce467ae3c4163a8e30014d9248cdfae2c3c884622b6ac4c669799700e4ece5099ac7f8c8845205caa9624184562166f72ae2a8e91c49d26c6922d074dfdc57fb33912535f0db74c46afcadca46e1ba72f687961ec1d40d159aedddc8586b930f53d51ab62119f2f76bcabbd4b9685056fd61f613918030321de2b209223eb9e80cbaa18987a7206f606d981920bef01a489052064e9fbf03f9a67fd61caa04fb114db313cee70d19bf2308ddb15e9bbdcfdd74d2568eae5cb50c2e340275ed8deb3e8b3ddd289d541c1e5db9ea52d9a26963dffc244ecba45a0015d770b484d9aeabb8419e644ae4c510e65c6fd9a6622266cec5ddd02aac9ec2030f2572d3c753dbf6fd3764ddf83f2bf9e31fbbdc9e5e669fedc1aef68d29401f74fe30aa63bebbe044af2aa9df810b3d0e3a5d20f48b8f2c250662a486be133cb504967a0b33ae72fc7fe3f66582debf6a06b22bb5ba7b7019e0a7f862ebe9e89c47320ddecc4c78f4f08c84807e5183ea9c9e2392efbac82b13716cb9f4c0b2a2ef4210237a00901c860f4d14ee8cf7191edc0236ed387f8e9c68d38a713a824811169bdd418a460cdd491c2c7ab771280cd6d620c324bc9bd2c20abbc1b953eb40204a1c283a6f17ed8d089fbc62066fff08cd3812cd9a46b6c9890cff03e91a697e1ef932a178adac8794374c7cce204460085e870e5b44b61231dd76391e3886f468d2e86ce3f27ff9bc93ae76b25cca07b04a5b689337ef76cfd4f4c793003fee8d09fdf1fd777017c4880111d3d5524787bcc656ec378b4637116ed283550938346f62c3f9cf2b0296a9115d858b5c0ea2bc0fc055c45fa4c00d25024217071b7fa4fb3790692b205175d1bad0dcaa67a0c00b27660b8c7234ccf3dfe87e9e843755969c157f50c66740897207b987b05b71055ef170ae72c22c5c1cb49d043325322c78de184d62a9e12acbd44184e42336d991d07c975e53e769670d9b9b04b07b4bd818f53246afc5ee88a73918445c9b79c1dc964aa47bb050d1f36b17c99525b9f79a4bd5b4299a2df9e009126dba0c56d075cbf615e1ebb1fab4e44b285fb1d4e171e53ab6cf10da0b6fab0d93823eb5018458245917be8646f5ed6d70cc62b33cccc0bf2074f47d79dcd814351ea337f9c6989e778dc42e6c849b9d29c743e2379c54be04d9d9cb13defd92c5778215141042234327227e806d85ab5846eb2d341e8a4cd9dd6445a6e3998ca465bc420860d3dd6854d429a35476473160d99825effe9a1a30e61da0b8e1ec6cb3f376c069dd4ffeb0764825e5ee63e28044740fbc2752b2e4fa55bf25b675613dc49f577371073c70ba32249419b8f012ab90b9409df383ca323c9f9ec4d492f145ff94574a3113436c21ce8b218c06aa59006ba6c2b4bddd4338f6a702301d149a094d1e9e96818fd2422b9e905e01db6b52b219600200e3f8cbd2af3ee97378c7ecb3a74f013881c59cffea05040c0873ccbb85503f020db5a41b50732c12c7015b70029ba57482b8ffdb75f89f3e08dcc9062bfeabbe369ca1ef9b9e4bde5c3000d4d3fdd6fe23b21a9b18c8b6420e47dfb5e3677a0188103821b0495e85278215575932166f36ea5eacde945b74d8dcd531a46281e9cbf63657f68aabe8ed72474401c54c5034ba79c44c5b8069c65a39d6964171ed4cdc2445b2075eacedc5fb2a7848394c07d7ab97737b691b82d49ff5fa44eaff835224f3b8b1fff83cd840e5fd912ee64c10452c27f37d61b9e2479d88e6946ae0d708ca59f58b185d779a3745319e0a88e5c71486ed1bc9e45482a99fef135613c0144a99b9a8f6380a35ec42b49c953bd9980878af48bdb4ae7a51b7980631810bf4da42bc79b8d59bac7a5d9337236cc2165066322cdcfa52c8a5310e6abade379cef91f3930b9ff18cae3e8019fb863fd391a6e3d296cec169176d95d057ea92df456b91cbbe44614b6306569104c847f649945f71b368560781643bd285dfbb3cda52d56f63f328188b117d9a1cc669702876fc4f04c9725b954167d7dcb5c9ba8a2a6e76c0e365a55d82b4f903e243ae1bbd1d57cdcfa7cd699af5156cbb360af420ace09b7283b3b57995a9c57432ae4016dbc461a5d79087ecfb264bc81c17ae5c7f3644302fbd3a0972052ee800201cd8f5b27e3d38a91ec5c0ea100a58b8ca2636b3a0c0bc42a7d35d88863ef0af10f8349cc4556ee18ca284ee97a4e467366c124ee493ffe07486097ce3a51d205c7c850f4b143d6eb21059c8674a9896ca62420315d381e78d76d4b9cced8228b2b7571fe0a875975a7d8d9617de9e8286f6dedbfa48cb88c2ecf28ef8e1a9dc02f737b59c690c1782b5b3790cdb0493445ebb51d2052842e4f629ec235869a8bc93e5e3c419e5f6a6550b60d232205a1964e2a73e2ee19a90e7983a3f51f99711c7e4ce22e1030ed1144b3ddf263eeddb2c36a9d99b286c2a58ca057c02e56aa81e3da4cfdb972d30122cdbc5012feb1895d22e173b353c4faf3a3da785351d0e4564c6021f4ed95a0d99cf13c971ea7861b6f88b968c21f0db1879f296cef9771566f6b09fd478ecf50b2dc31d5c32d190258b34901587b1dd8e4735dffc94dc42a155abe35a055a3afb6f933354e9d8228462c2b8bb536bf9c57aadb286aa7b8229d72ac275f4771dc38216ed963f1abaa40100d1d1376538149822dd814fbd52cb42a544cb86e80acd8a7188b7bab3f50180f1a6660572fef1db7a43a7b17e4bd6cc416fa9b3d414c3241483987b36f7393f6bd66f6c2712e294ad0c16291f2be3056e185a929e51728de555d3d10b5add690e45c50b86e6e010363bf7bb8a018d132bfe2b6420f11e2054310fc308c2368dff6aa29ed2f1daa613d887a4923a7eff3a83516441c5c5b88c5a3b00dad34c654c0c2afc858647a4a3eb6221cc8d0914e2a1b9b8e8e0da92b322fe52841beb7034af7cc25162cbcf97258c01c57adc5991afaf01695974367ca25ce555165dba1ce5aad0f662173f0d4f4077693acb4d1bd7da5b084dbbebbb088b2ce4b367aae640fde9eb9287be6e419fcbf9e6c3b1da545024e618836e04487e9c13e88251e0e73e6e47b7a67d4471fe975b5a0bf8c0d34b0a037e12dba954c0a9ff48a4577df227883d86bf7e081d6df302d43acd5a1998b8ed643e575bcfa8354ad15402dbe98098ffb84bffb26b95725216fceed2767e43d3460b878b209f0822c3d82cc2fcfae0e501c921a7ded543175259b7bab7cc292359f2e6589037f78887564cb549ae4d33e9747a63cfffd4f0dc261c53a19f200a28056ab219c18250297cc425ea3895fb41609055f2509d326d52f072c8f8c76d3db14a24f21a6dc6de01abc1e4fa6d01baef6bef274567b5f2e1c026c054c4d0d1f027d3e7bfd9a08a55a746bb5f78a2e76053864904a0db5ded254956622fe7ff7d236d201f5750d446a0dd234d46b61d77187328bcf727efa86ae6485ba563ac32e52ad2a36485e6b05f33115f8c47f8c9bc13a69ba0e5a1b0d6caf5049a83c28f51227e4ea8718a37d5fc0a395eddb9aeeacd01335d5bae69b257138ba810bf6dc4c466e28dc05d54fe1ff1bfec6063402f81656893e3bab26c8892f2decc585a33cefaafa7f9740c99a3955abe97d29f0cc1c994483ce14312d29546478a6709d9553d4ede382de6ea00908455bd3f97c4440887c472448f30d605e22cd7e168bd2def20538192db40792ca286a9ed5308179c40315abee64cf0849f88247abe409a5a3f937d1bbab6d4c187da72c40fcfbc8c13c38527c884e9e4815d90edb3b9c32462e3018a127e826c8ab0dfbb49a7518990f1762c46d3c7e86ea125bf80eed5e157c2b816a1e67f3e1d040ddaaf15e8705a640bf24f3f41e7a5061d41ab9cbd121cc0f915d53958b6ca8309a4db8d0b00ee3d5ea9334de27eabae16cef2f82e9f4cbbbe8b2147284b70dc640f3026eefae2a002290608b2005528040461195f3f848affb61d2e4bcc1d4f29ca7cd4a17a91bdbd7c20cd962f651660399f82a75243767524cb6f11fd26fb2294eec51859389712e318abc8f3d345059343872f3ff1e2f81d72f24a0d115d06d4b23d7216aec203941a3d90a16fc89b4afd909f0503e017182b9526156a749c0c25879e2cdb1edd9899373a903c455b2dd278c0967960c7fc179b3b3e565dcfc756d16843b7152c66babfe29b63b520cafff0d002077f5bef91c676aede7d9c93cd74cf06768a32485cedef2d79fa2b3686b67f04bb1ef48b9dfff0187f91aaf583953a59e8491c7d6906401ae75b55d635f3e03163372d6544f4c2fb6cd679ae87b150cf28cdc13a1dacb1aa3de0882026cf674887dfa00e8c8af7ab5da884ff7ff118129687d05910d32801a57b566e6b8b28b05c89373eab0697dc5b1a40e886b5974ea02676f11c4d5998911eced432cd57bab39b600b2595a5b7875e2a0a35da41651957d720a02694b122cf999c015ae195202c6dd37239f0f04d12635c6c1ed04c9167013942dffd8ae073a7eac11533863484e6a741cf5f17f8c6302325763f191fc6020afd2a8214ca866024a3c0792c7ac1a00b14ab7d5b515b369c3fb0ecf6db370df1198eb3a7aa92416a57ef030edc2d407845f23e966696f1dc8a61f06e00348150ffe442c489e8115cbbc3db5ad39c1f15bae780bace454bd5f53d8824c5c484474f37a3e8d3b495c8250899e2c6aafa836edc2faab30d161550ef01b26920ffab1df9e71075e0b0d8bea738027885f5b6defaf1ddc3dcd55559e6ac2089cc7524017ab86bdc280d03e36d5e2496e91372cc0aa2b95a73e06011005903f5d238e2afc4aa00b58f30f8e946d171224eb698f694f576be58082830de9eb70980d234ee6db6278ef64686af2b280c4809f38310ea66a73fcbf04d87be49807d1746e6cc4591a9da8f2b8cc046a12e624d57a89fdc7e7c95ab0a4af989805ba20fa758707afcae250be707ee2a6171e359c3c6c3e21247362e8a11f6987ca3de97f04911d62c3b1028a4d925ba456974249d8d8ec2f3ee18a22f9907c1175fe109cc8ba9b4570128d37888f32a1e2df0d4c9c12970ccd459257bb96aafc36c3ffe42666adbd48125b3ec173cff5e75788a8b4fd40b2acafa1ffd49a5f57bbe4f02affee404849b7a8dfbcf4b3d2b0576ddf5e49ac913a7f38fb7920e43a4a593f99217de2a72f4ce4466df6d2eceb3fea57bdd595aeddca0e76a779b62ab70555dc31bb0e39638153cfe8d52cc57d5d1c2873effd8f6b57a7aa2333d8c7ba844c08036099453911b4c203ebf32fc47f0f4cbd7359217051d6fa510ed32fadf795121ff3cf0a6f2b60fcef9f83cfbf9afc3c67f679edafae7258e237658a134670dcbbd8ff23634b99b6c8fd8efacea2500c8b99e9b392ffeb40500c2e1fa971aaa348efc7792205099492161b94a3cfa95604a3ceb11b262413f3dbe2708db31ab2a05eee9d159b1af5a224c5670836bd588f30e3824c6eabbc9e58c24f1248d7c8e63b4554718d90f7902577850f337ae011bf873d13d2e44c15704e27536c96b7fb017f7774e1a66ac3a04935e8ccd0e5a76669cc7c792bbfb5b0f0681834ace6583dc7a2b0020d287816160ed4c4cdbae9c2dae5d993d2ae0d32df58fe9cf04a27a29db990a1f5158eddbe3b45bd1e04db2582ae2d3f5712ca9f0c4c14254c39210baa0a6d7fb97738f78d2401091c62646b6b96ea3b9038f0301cabe1ec3896ebc6bdf0221c8040f2695da35483c7f4283719e0a382f01d87e0c1847a5b0f8c916353e46a45ac8afb4322683220c46f1dd6eeae0573725f97a26678b22b3fb0ce77b10f87b6696b8309c86c60a3ecaaa3aec7288eca76f94fdfb3debbb849445d53ed77375e6b83447e12ab9bae27a2ccd8eb96918a5a395ad1e7c6495130af02ef691cef801387cc633015d8df90574882b203dd857d83d50461b11839f95bbe905d691e1cd09226870be250b228205ec4293dadeee61ec9dd83599004658f444ce6f2a8c76b46b5481c71adf73cc5cc7ca39f09334df3bf261ca5e772fd131b0615f1a90984566e16cf9ca61a1d0837b6225bdd75268669d00a2b94c3d6fe992de1a6a2df12df5c8f4f8f585b541d2cd3d8ed4a231160989be973827da17dd042a902f70fa71c8a32c474e79fb613e27884692393af389c015404a1bc997d071d12b6623b5442552069e0ecbc3febc563fdc7a5191879d5a44203c65eecf0404f0dbc915033cb1ae647b2468c341cd24bca6fac2a3d51416b71e872189540182f5440a282ef20dae88c2296d4fcbf7e0b4664b5f3ab00b11a7f3b4011ce0635408868f634e44feb5a8fcfe231f8f5d2f9785e416187137f408b47e3ab2894d7e3955386df3caf8ad11cc7fbc2134c5c41a40178d4e69860f6f01cb9220ef246cdb7478db8261ab89fd3e07ed7de08dc37b0b58606cab13ed37f7d0e5aeb8a228a6a44404a0ceaab7d81eccd4e2e907295d939b1ecbc6adcf04883154f7e3bb05f37b183061a2be8992297333d4262d0fd6b34d09ceaed16ca36d36a781f1d6a1034639737fe0585a47e842bc52b71b7e2b829d3dafe967152e0c333b3a5b60f1e1508971e4b411f2fa65069095c24cdb7ae51838c1084a843fcf16a026d8943e5461613f1d3449023dcf8037f68f22a0e2e0f1cf7122526efb7935be4927f724f8ef8520db4a3491d5414d8d784817fc096a6bafaa38d24983dc2aca49e799aab9503cdb51e7304f1660452c3e2786323b7bbcecd1d4a83017ef71f45339e4b0b2614ce9df6303552eda5f2d42e8cbb5c53d21991b3e7823e439ce63b32e2005be62c771b27526087f1ce6f25bc2a87a03f8fff593397972f70fcb0d6c0b2ff8feee62db0e1944a862a25175d1d3738f17b384727b8e321d3efab2a1d3ef50caecd01a714730d7ed94b31e661f421d2f027225c1c2da9a500513d5f0817283b061e48b6e74cf30b5919e5036d15bf6318d3bcea9b2e0c346d1f598828585f277f58d1fe4de6b8aa32bfdbdc7a5f0041a035409659e1c327f94eee90124ae6f3fd38323164d57cc1602ece83c9973e34c2fe91f460608e69dc1d431a54ebd56c9ea74180c67a88d0143109f96dcc133a2fc7c159f10428c6af5ea052ebadf2c21ee732d643877d5516b7211c9c44dbec9aa3aff42515eefaaa24afb7a130496c483262cc1891f9d9338c8b13be2cc1da4e0343afb52345ba4370b3403f0a8584a1df065f3f159faa47cacc8892132d816b8189e30f51dd67fe5600f9fa66254c54c25e2da4531271372a8b560c530686b7158cbe513b3df9d177f9b3afd16eae9ba2aeed100a8ff76104808286e8ec79d53374a90f75ae3a30504a2a8921c8dd831ecd0f29c994045cf070852fbba53e29f97a7e3e3299a6789880e3b9860ab9a482fa734f2ac11e9c4cbb1b8138a2df50a17fcc897a98779967262612a9b3e0da7324a0d5ca7c798d3c3ed4e776651de8800d8a5c41796d94081f5a3e8f0456776bf2054fd71e2e60eadc0380c6c5aa636dd460d274e816c1a5ae75999ba9be2683baed64474b3b73407c5b21d63893caae9d610a009a071993864be790f70803fdf0cba79773602999457078ab2b70619c9cf7fa7804d60f3f9ce994f739ea6c99cb3391b5716df0f116706f807a58eb974e04f4c870c885edbad69bd889ef47c8e597ba113b49c4683e13d8c254d2ee413365278d1fb5227b07dd3b49ba36a8eddd9c0d4925726814b38aa67e3479b2a460013513e57345e08ceca431b82033f9fa826b9ca62ce3ede9187df3a46d245bb4bc108d7bcb381f1a73fbd4003dd682b320eabc711267903aa36b2cfa04880f9025da5870fa6338da0e7e46e2982438d29a64df037d91debdc4657ff54e89748d8683386af29a53adc5af506ed8d7abfefc131fa1deb879d4da864caa19a29fa7767d5624e0c291618c8ea2d5b684c5ab55eda174f063cd26e6ff026c894f60f3e089085be923a9532f0809620d0abfb488799c21a559d908a42bbc3bd89068a6a4d5bafaea17325d4281a476dc1c4f2ea3f3bb12bc4d7a4145c028fa88d0aace0e7a092f229f453e3f608d7ab8368a35e8a9ff6ad24648941ffd54ae6d9412d97fba25b5c5d2674989b1cc47b5faff659dd0747b28487825ba9105b11e04a7488062303bf203327b9dd5250dce7315b14cd77ff23f924bd88cde1669564ce91c85dbe30691a4b817c4bf4b25f3046c3fb172e0ecde933e48fd678cff79227a5a33df7612ef75a7da949c1cf1ff0be24718ca122bbc97b582d1a41026774b105219f0a8288e938879bda390324b7937e3882008b077af7a44baff99bd917865728ab99a718c757275f75ba0fc6392a232a5a5333211bf62ee243197f7ebab7b6859c814c02d26a021ab3276015c074a5902f9559d39cfa7539c45cf2c331f1d605ac160386ade3d729f77904e18192696f8a57588798fc182144e767a04a0cab98e5f0e10b5a1e57690e25d6bd876f356da83203cbf30463cf1b8e54fee5aef25038b17cd47083a0ffd7f70319faf1c077a9bbaa966470654ce96f78b2ae08b2bb1cbb3f7e7ff37760132d8d7fbab561b828fc88d640f86417195ac35852422242e6ba602b4861c258932064769d265f80dc74fa466ef2fb9cb14f8382237a433353f1e2e4b5729ca0b4035940e6c0d1dc0fa368b1f0d9d44f6b49fc9cdba13b743d61c0bb8bc04335a4747ed2b3088a639b8555fdc4755f74c381bd4d7b7711660435e61a1a83fb1e229fbd00455a754e55e3f8d13861ac45ad95104c155297de7ec26b41d83aab457bbaa503ee71b6010c1f0340618680b8d56cf22167c4d4d23c8c55900f0144461521862f42fa8bcd7449c993f44c60ecb9f1c785c237388c8a74bae054d2672189f53b1c2ec068bc933059e12ed8d28df321e8c32a7a2e9efa36b34d98f9836acd4092d4f5227fe6b5bd9819aa740e0f574bc671434fd53c3679da19255cad0befde0fc922b04c87b85da4d37f291f2f9a00198ea1a2a3aa04b8fd0bbc6e1968e0d49fd4d819a9755bcca4a2c8228e0e743a9e0645a7ecca837061392cd67e6ee84a28dd56ab142870705b5242f673762793c2c4aba6007d6cb96671fe28bff4f79b8459f7ff7e777897fead201dd3be4eb22809893b28c1dcda9c45208ab5b58ceaa03f5c28963a4a885a469a41cbb2ecd656e5d2a7b32504bfe7c971caf4df4ba176244bb7b08bb4aa4065fe443985c6efb1da5c20bad84cbfe1db6c1082f16ce62e8f2f25bc2c0698f2e004226a9df2ee16086c023b15957a7679bda06db87eedef2ee29ed4a99a1a8dc8b0a48c933e58ade855b2633c47e00ae1f92a1ad9a0058b6d83387ac33d72c79d2833db8e620c4ebf87e82553368b5b9a147b7bb23f0606ea357d327d61a78a99335e118d9d097633f83c2104ace94a12bddab9d5c0f363e6fcc90ee40e89236b0d45fa0cda0447ad36ebdda11f7d46224a11cd77ba0c15391111999cf5775b0ec15384115ac9a9dd5a89d2175dec2073b3a80b7ab19b55fb5740fa5b819289a19883347c199c313dd32cd94b3c27bd6ee017652a399871db6c2b0b5fa23bac56ecd6fe4dc56a20b9a328394875adf41c15a8a5b6dbb69d2d9864b23ba0ddc590efa27e4b8ca5bc80fca29ea11f4b2dc39bbf9d7178fd81a4afef73fba036d6352490460653363b2a341b178b3022c879926e22aa1645de52c619201564795fe902751a3ba49ec692ee0d2fd02d5de71c773f66c0eadbf7d99b2e0546e594a85a53b9204593b2f5f0972e4dae43b28fe14b20e6a1828ee4514a3ed6be11b75cfd27ef5c90fa8ca1b3dd7a77e4178b623be801f3254ba8eda6c94dec5ede7d8a70d58032cb1dde1f30c97a2db1e168864c47c17e9e54a762883c6dc2cb0d8714a487d5152305fe2854816d968efd2c03917f9ad5064f2ec0a5779bfc564ccc26e972d8ba3e66162c4578e3c83c6bccd21a026e8067d734c85b9fa7940a580e4323b6ad45892e7ec2460f695aba985ff3f75aaf481175e74e552b8ed623dc527ebf42803d26fef14827f9d319d5f13e1bcedf4db58fd47787378064712365934bc44ead224b40f9b06093aada4ac5528163e9dff5ad0ea338b89d31f7f14de0a5b7b280bb0a4b6d0373820ac155b104929711238ca6854e844108dd781c03585974b323a2c49899d7c1a50355909cb1178671a53854272f72ed9641ec77464f012e135614629759560bcce0910f9bc9adb8a0be7ad7b43c8f6c4cdcff227c99e8a2a56364bd532bfd16585026b6b3430708c3d4e25e224faf28b332554c563a5e41719986125fc3feb891dcb3dde51cd9a11a1d1515b82ae0a64109f488db8c249b08639d2df4135eff384104d874e7955448af94c93cc5df9c1b3a4a770d33e778954cd97a1f3876dd33ecbcaa432a12fd7cfe8a840b69b73bf500c0299e49073fc1386d6797f52ec646da8f2db8c66e6a2aef8da62de0a46a0fd34691bf140e990117a637589d84ac3e23b0c1ec37feba116564858732e8fe06edd6e55b1a4aac2f1a341bdf38c749641c52832bb8468c92fd4419470abea2af022095d86ca8c9d580250fee44abd55a38bfeea4f17844579dccf0240678f716a9ec4db222444a48e18a942e0afda4bf9ee40a98f32ac310141134dcf8f6f3cf89258ee7084edecbf63c26f8d6a675fdb4990da716cd21146dad8c0850417d69645eaa8ddfcf959912b67da4f2075c87a546b7f31a32de7dda8fe7be28e8b8986b66ce056c76b08232b3e0d28ffb31c3c29b684422ddd2d91472fef8d3cd1c4455b332f27ca3d8f8b86817a00c7f52586d3dbe786adfb3c749417be42173331604cf4be96fc01d4e1a8b7f1b481ebb7807239a21d1f51e4cc9224a014ef3adc48b07ea273b5ab345bfc44e83c7466541d1addb3197a34b4a145f863b59afaa7ceb89b88b0c2b3eff741e108e5550763d6149993d0b2af7829626d95176e9dcbbbf55fe1bca538923738dfe50a3ed5b24e5f8abba9bba41d895e6e409bc037227dbed1bee9246869c7787f59c55c13456f881e4b8215a0ba52b3486162dba576b440979eceb6ba7133fdbd8e23c490d83992a1c7053591bc5af6d6eae58bb589c87ec37a80979826e47d93d5e163fcfc3802856ed75a489bdde565e36b6d494a2c8a999f5463828549aef98cc5400389e76a902eb8ec89a7d5e213c2fb05310ffba152d18fb5d8fc86164cd320541372fc15109eabad3587f2a208bbafcbf7ed78158b0e6a4300aaa680cead222ef8ed397c2a49f821b25afc2166b2468459a1a95db7d77f63912fc39b3a14b91e9c0a289b0b8ba3e091c97256eddd52028414ed6afcdf4ebac15d498bf4a05968427e81aa02e2bd437b474f52818d47b9708d9600c0b6a72dcf67b66e9d1a53f042ba48c207a7d4bd640d0589557787bea3b5a17ed13c434c2299da8609f713472eab1a7fea4313dfb25614bc45b21ab58a6371ea822fcc07155fd03aba118fd8eb09253ed0cd400fb8558eb62db55a296f74c7aff07ea8a25acb0dd1016ae2ab821ea0267921e959016cd9ef4bf1484af2387c7b75637dca9ef8f43d0d3587fbab1896b11bd30b53560bbdfa9975812a57fe575abcf07d91baf7221fe05485e75710275a7156f0155448b6bac742a1d09c04deb041d77c13dce8ecdbb23e9b4c0da7670b19a2ad4a34910383079042fbab4d789f025f6a7065e63af6c1f0682b7adbbbb5906c241eb8502177c8ebdb083665c2757a2e8fa789e74d964713e2ba40698bc1b6ed02ef4bcb5af4c769ba7de0a8b966a3d3a9eedff180e041ec04ee37e9629b928e9b4ee0db6440480a22af892e588a4d543dc15b321d506828d3f9a436c1196d2efb5893dc2d01d93c7a0790979ec24ac220c70d74d47176fbf7149ad1b6dc3f055d5fa445c6dbae5a8a716ad002455d673c5a02969179966f5c9edffed27001191e80bd1034268a1eed8e77697fa11e312c5d537acf3f6f960ee6fd0bdf8d319e74144f892c7023a7250064fb5bfe0e3de3fc4e4ad2c91a7006d12a0cc032b4b62b91d36aee451932620df7871d4dd9e4cff52f37d8687f29ba5068c4ba07b97c57f7fe0405cb6a888b4a01ec30f583c4c2d10061587b1de8a3e681b6d6d4c983cd0e5e00859413c9755a938d6a604a935a1fdf192907178018c2039d2a67ab37f02f021b24fe519b564b55f31bd56ebb9b39893b2265d619efef75a02e183250c5ba4fbe9ad28223e59b1b50e5d7fdd89bcd3bc130e8b6cebec4b22f26b9a4c664a21ff3810f437078ff6db018ace1b84e42596cb0716fdb0cf358f0682a6565aacbfd2cda6fa27c5606f315a52ba34500699242e3aca5d1b9a11288ad0a19bf04b6a469a7c43dc0fa274b72e098141586e53398434b3e78a4bc87c4ef17cd0dfb259841e175f14db5ce08a7dde8928a8b7d164a8c62ba9dcccaee07398378ff14f68c97248b821f51e543922d32c9b21b9162a5c8c723282e63d6e853709e53642c780fc3267e84712a4faa82e11f179ee4e1196c1a8f9fa52c13cff5b304471233d5dd44d5e9b2ea7c16f0b890aaeac3e451c0e785d94bb808b64ccd6b52ddc52a319e2a5a366c7f5b7378eaac32dd77d847971e3f4711125744f2d5fc7322df85f20e254d1321469e14844e30d9e034ffdf5c942034c44312b446b7325b16af56876f9523a62eff2fa5da7fe1cc9d92db5b0021730b722f84bce70b643e9e19770f381f243d4fe81adadaa4ce90cb3286d3d12eb2b973cf4271c997db492ba480299b15cea3e97f7991b819eff4c659a723adbfa4902d6e8d28b0f207ed10eb582694e70e90e82db9e7bedc11138a59c36f781381484d7b3ba22e23011653d4f3ebe684cbcc4ad0db966338b4f23a9d55802573f0995cf30212e47720c17a1acb03b7927ca8aaf621ce9053809bddc0451034420cdfb7fd5e12db11479094390b6c40a3f0608f44702ed5d1406a7641f366ceb469d805496ba83a987404d2ab7a3d00e515f6b4f9acc53705edfc6fc4442e6a7b8041be3d7e3e314cc9ecfd35172f0c1cec9a1d42c6d7a364c92f04f40eb5a922ddc32fea7cb5b24bf2f6d35d4679412e47ea08247c9dbce5fa1917941ca4accb1578a5e16396a20bd7416f01cdfc07f7f774d5dea25a76b77b532f9744ddc03c40e10e839e3a57d4aa227a3a89c034de838aba4c29fdf1359f3f489b8a8ba3da7299b7303debb78234252f93431ac29c470292515b787b2def68e75d46cf799d954c625461f0e272594830768b09aff27d09ec8aefa85ddaf7150515258c0c71a971ab86328b49224acaaf9eb09d3467ea05489e02fb68a38e733a40ea5a852887c5a7664518bb32c7347936282668025198a117839a45a4f6f0b566b2699779f521e4a28c266a278c0e20892c48598ceb7e74948d4ebc3fa71dae842903322801d95d11d6f2f4f363a392c2d2466fd3931709e513264ed319f4b7f4899bf1fd9ab4fdd503c939db4302d4a5c4a176592de1541c7f89026026c4453b35b19fbed0f74f25f0c94f4225ea408bedc8a821b07fefa267871c746db0bf69465e1ed292b88ad46f298b8921344b30d25637a162864779d71defdd6bd24be690135c7e45c8310e6e9a50e692be3dc45a8a34f41f933475d380c72ac00872e11941f00fe671f37e56abbfdf9fb7b6f01e3688b108c21ee400c304865d5c0a643528477b3235e11df2ffc43e367fa5ddecb02982a3717ffaf52b50ab79ad46f2a36aeb5164168d89d6d2a330a363acf9c8d59ae245d1ede55ecec6b44c2d0af856c611174961998105731e2e2fb1543b6f918b2f58b454d81477f248881ad52cf0607b97bfd6306e30fee0907fc528a9ad9d5f4780bec95b4dc33aed16a6ece1c4645462e70172304c6eb453ea3ef4c6290312c714ca50aad719134c62c33e8976859817b92cd3acaa1d48ef613365a0895a4f8aef45b1e06f5fd7b1108c9d5dfc9e73b309110a3d46e3f3f409c6bdf193610da1b5e5a8928365fa57e026524083516300b6300999b544e7e5291b3417b0330efea01835bb0b109c40316bb2f8a66ca4967a7d8ad7494fbe9d5237c445018dba1194ac057ad451585799bbb521b95c87cd03af9f41ea4f8d06c452bb16a27970b50d675cebcdd6dbe37fe3a8fadb8ca6e08c3ad08cdc65431dbc210297a0be224d415f5e3b1285a65185503415d36508d684cc3f3940a342c4966ecd90f8339f883cef6666ea0b125a5b8a91293a3193e234c388d30dc320c0f36f9ccb1e8535979fef775b6891055aefa3dcb86eaed460371a8de23384bfed4ef862229aca3cd26de5a31ba7ac96137a22eb893d4065135feacdf11ebc171cb62073912cd4f71fa17d7ab2e3d5dbb53ac17ba722d11bed2fbff7a7aa3ba8675fb6c911289c8e1e0190dab7acec03e1f6cac4569d0de9ef23439e37db5ef1fa34eb5dd863d08f8dd23cf040792b44b0586d90cde31921ef3d6d7e81117d0d2f511d2bb9dafd3efaea5e277cafe5753158bbe2e018c1dcf1a6765c8c762a6aac1a4e75c3282d7f86a796beb1a6a0d8e85f8b4bd94600de0f3d57f9d6b6025916525c55588a18203d75153ad43e823132168ad208833ee39060f1baacf944e5dd2c4006014bb5f62a895ab1d1a4cc84e65005026485a01b2dce1034d4dbe7dfa2c9143cb77e8632a05bb0efa3200c07e8d061db4e1eb45a48235879d74725d47244e330ee4bc3cbb4210ad18abf470a34e20c9d717f2230df84867d98cf63cc6ee48b7b5e5e87e28448a13793116bedfde7510727fe8069bbb412255e6f66f95523e92f71afe93163fe358e5ddddecbca815350c7453cf231491e4c1ac270f19cab2520660249b55375ccc5c1d7a85ac7811eaae0782649462c8d28f4f307b5bd4e77bbd5e378bb249f7dac0515d0ed58bb74e3a1c723323422c5a17f3141c18a07f7bd119f00fe1e7520ca58217597d6744dc925b6f1619f7936d3e5f1a01ad220bbc1f73d1290452a25c09172759ed7a653ad773d3929d25578a8ed47118cfd86cc11ab0759678696b330902a9a77ee080c10a632283bd2cd465c90f2c323314bae8522c42f38ca1ed74c850f359e876dd9662ac1c612a5e6d28badacdd3e7ccab27d467ced702eed9a209a4aa8d2ccbdd7ad1a097bde401d22c7c980ddb5244f0df446661f703dc91750899a2544bda3be5da578b90c89edf8bca4a9275401be08477a99ccdd1bf60b85d65ac0e3399dc9031c125862d260b46663715e9e469a3fa5799223d38a8392014b7e8f38f65ac23a6606485dac9352b1c3a967ecfcfafa24f4294eab78fb61f3912b205e6423d8dbc30fda0919d6d1b961c6a21d15f67e126851a023ef3b02d2269b53e6742574e0dd28911c4270eee32351c3053727762a4c35bdef3eb366d3d5d986e7ad5b5ad35b9eff7ab899e649e6c57df7bce37ec7a43826f64565192d542316714404faafb3e19038a96e1c76e1fcd8769a6e8e64fb265490ea3a8f678769b6f4f86e944f81c5cd0c825b1524504e4f40eac56d0f6358f3ec6e35a242f395b97d0a0d69f26e5125e271753d6efde1a3466a38a24d067a5e48d38cbb71d3fe6cb018c43011f47174e9efcac21b4fa25a6f9bf6504cdf44b63d7e99c914ffed35db59ca36e6ceb4a68eb261ccf196058530d4fb79d2db4eea65c2ab57eae564b76760bb84291ed5a64bc72e57b905254f57d69c7073a3ce08be92785f3d939e907ef76e1ba84baa2507cfe5ba8cd44347eb00870cdfde7cbca6778c946fc7971aff1dba093f7cf22d420b9ac0434fbf89c0520d09945b2695cb55ecc6447870a645945175a22d1313c6a1531f44953384043c4d2feee8496a63c40f45b6e8f8d812d171d7d5fcfa53b5afd4e6fb3bb24e1fa872624c757dd9b91aafcd70bcbd4d0a628153c1bb589d3869ca2b70efe75896387108f46591af4cb39a4d91b79101368b90f330a9f3faf94bd8f67291c335cfbe15383fcbd25dad4877807304e90b93c99d5ae1706815bd2897f1b5e695ad95920fbfd7d97392803efc9422bb08c4ac5edf4bd9d5db6d21121e18250f37b8901b1b6e074b176c9cb7e21b03f51b13401f83c963092a8a0ba8a467c2bf15fa6629836f8d212cac8b20db73b555d43ec3ee2747fa00df15f0bf2e52a65da347caec155484aa14cbd5a5d669fd6eaa2811f1a866ffe30d24a3f71f530f28b041db37053e902f731c36b81ee33e61114656c7eb8bae784eee54d12fe5d1cf325dc958dbccd619e335986c8038dfd10fd58b2fda5e5f2b9f0353a294081395eb9feb93e46464b2714cde5c6a44a1e52ffe64df2b070ec5e2b8b784f3541a12de1c033358cd61bab073e46566ab2fded31c5247bcf76b501918bef6b0d9ffc8b7b20f86f71a251f8bb9d1e106f96ace505700c27d1218c0ae0145173f94ed3fce3d83e0e7edf3ee2096ae0de096f091d820184d955f86d1b007854e360375168e2d2d43215f058e366637bae70ccf26f5c24f5d1285bde5d9d875be64f4331677ef11c3c47b2deddf0d7342b737181ade90924cff4bda01929bcd0effef126b16eede9ddbac57ae2e52030003fef6632b6b33ef3aab4e3cba52a2bdde22214d3038845b875a4d1ab337a365235d1e9d8e869f2a06d0ffcc0d1fe05442a21677bf321a0311f8575239bacf25bd526c28db7f7f9890f4176104fd9a04c470d715d3fe4ea3ebd954b307d40334282d5f1ff69f755da0b72a6727449d4fc782b107874052143027fc487bc20e9eb5dc60d82b9dddbd8e99b9dd1d7e1e13fcf3ba87694416246e5f7685030c537d689349bb3767926bcbfddee2c77cbc91be71707cce31831402a711cd1bca3621f20c08d21ed33968d9be7f8f1dcea83e85cabb3e782147445226f9f034cc7a4632dcf43e600518f436cfce631c5d17325a346e6be4e1afc412e04cba7ee57c20ed3cbda3084a111fad7c2f79519ee2cf76dbedc43ba6409c6fa753c360034de6803141fef592cc294bb603af276304388562621a854d5a4023eb5bcf9243dd71b557e50dedb9b256b12a3db21ffe042fd9f085372e75a00734d96960b4b68339f16712f18df874046d416d634fd40b5a5e3800b39075560ce0f9f349fd370d0d4b57e64fadefddf84565078525a6318f0c0e03479d6987114c48f65eb803461e871f78ad2462cba3a83c323f8c64a4cc36989e5c5dc41f38cf852b1b1a11465ce65f6f4bc494f8bd05bdebda919f990f50aa38c6e9b39eb4e15936261558fba8850b08f5b33dc8c9540ab6e06d325ea321ef82b8973b8c15e126e06dda702cb3f458a99f48c4ffd4c463c797487c7bdbfa4d83f3f929197d34b9453ecd2f1ab2641dc76c787e9ed7f56b2a83d6909c357887c91a8da0fc115d496027833ac3caf506e3c66c2e8da8b517ae1a797fa94f3a1735d2bc08787449dd2200205af31d174deb0f19eceee9d6c870608cc3852c442b292884d959482d4529800a640c52173c5963e534844cb08879dc44e62ee954391defdaf771aa2521ae781d1fed20f1a9c580078795cb328b84cca0e5fbb0533f720033929778ad6213f75c46e6dd73ae3e41d5d9be962db3b5bedd116cae35fe41a34a1607aeaf1683d72c897d7d6adfbfdebf2ab3311e2e01f2618795ba6b4bb186ba022cb8915fa294a578167bd45fea4d4206b4a1c9278c82891fea8928df850c0a371cc806e1b616c57caa06905c6f1e0a5ec3d70d4d289515d0454b816c589bc9fe177a7221d7ef4ed5fb400961f52848aee0c553c8a35ad9053930aaf86a7eb75c16376e31995f840390789df1e70bcd0a43c168220ea38c2e96043481f0ddcc0747def9dacba656084c6bf119254b0a4ae8ff36d1aa87539a105ac00541affdabdcd63e9352c4632c6952af2375666bb682f101e7329d890268fc300dad2eef2e59e4e5c5bf4743aecc8a584cb82f632aabb50a6710d4e428320fbaa78a99734dbe01ecbebdb87f91ce8a8dcd2bd2406254751be3e10d2b061f37f7ce7742896e59d878740894a2717cca66e1434a9facbfe3e79d8c360d0b30024229de6a0787d5a603ad4efd20e809e250dc65e093f1a30ef67cf9fd70e33e7f970a6da06847c401da15f013f68fb6eccb9c8c84c4c05233dca6685b8a86818435c00694cda137b1e038a4e82029737b422e6154a9aa1a6029c39b998ba51f6d3b8df055e7c2afdba1a4c264a9f66cd25f770f56c5a9ce9eccaf86a4400cc543cc887b147746c09545a23ff9f66d3f1567054592a395cc09a5533a7d47e521726ed7900deff9b98ddd339774b08950a0d16a426efbb4328b8396fa992abe1582c3e37a1158bb6c31f055aa624be5b2ed508a6165a63a7a0a9bae96b27ae2e073103c89d990861fce61cd3cef7410631b325bf9b0879aedbaf8a6c43769235d28237205d72e6be59e9f049fb9337440471e22891c56a94b8f6322f74c0f099e37d665b4dd35a61d14a5771d735164127ba749129dec3e015afc2f1315154788a4a5841c297bf379d121e26c6df7d5e423ce24b75f6594b0c02674e5fa8f5ba6667a494f67e98b06c07e547cbb4b73d7c6a1ec8b5e7af147619dde9a72191985eb2e72ce24ea172ec57614d0548712d508c96b9a180c346c927749e98349cbf8de42b9330dcc3a9219f196eb90b4aacea99448d966e4e19f144d22c9bbfdf64e944daf86a4dfd862e9a46ee2d55bcce25ece2dd1e64fd0732835a6411991046beafe09ac8f675382c832496efdf5d9a1263dff87cc4e3d7c1ac0d6b62fe119aa83f0da07d9cf7e5253c51add35eacac85dec814e0c0404d2e440c2147f846eb771d8d74e72e5c08b04de2ba0a30e1c861df91eb6482a97667df893411f090572d11ea4bb0b54a7b4e8c7b342e28fbc4db11a00552e9c6482a3d4466c91ea3213648005e501ed11bd79e78ceeff46f50a64cf2cd15108b940abba926ee985c767ff8b775238d01bec31b27266b204f110946fd6a479155837ab720da4a9f569f7ce02f56950b4dffc0f0ed6d4698bd0c13f42b4cd9006213fd5b8de7c258c86543149b3d4defae2eb46890eef8ea036ee1794913339546e72ee735b5006cf1b6dc727687e5a589e51857a7b905862973be9f05dade55baa3538d34ee56462b7875816c078f6f6310d5df35b383d0ea52b4f591d9257ab09be9c85815516dea2ab9a57cb3f20c43b4b011b406c2abd9316d9f2085297441257d7921c4c0937678b94883861dc4637f6353976e1d21b74a9ed5c316128466d4ac63effb43b48206da1753951dd4c24a5f7e86b89935e0b06b4d06a3c3fd467d8f7b0e17ffa3cdd2044aa9d9f48f4964c77ecdd8f37cc8393a3e3a235c32f87fff263e5fccf83314774d38ffafb59bf1dc267d9f1aab266b1cf36710ce248dd906085522ab290570ce5a62101173bab15d24bc2c15146b05e592aaab41b2a28fc49f4b8c6db8de1f075fdf51fdcee20b0b69db7a5542ca76c88a4a38073be3ad8b11173b479d0c6d07d1a5f4335e7f0402c31409b603057fb46e2216580c807a5aeca136bfdf902d6297d7d855cad8a4f3edb872fb5c9124fc38836d090b48575de4aec7b85ed4c8368b43064d1038e141dbebb3bff65af02c128cc273da28f08e4270e01ebcf2000eaa408f054d0d3fce367d793a6799da9af4f776570cff384a1bf9586f811713182c26b518371f213517ce0584de13d79519ef95436c3b77054ce630020dee86847aea32999196600e378cf4da030952650f193001933145e7c66ef6c771dc3fdefbaca1c465134b790aa170ee2ca700bc10128bb4440c2be4e7f9b5c541123824df66f3c853dc04fa346c6156bfec381d2ba99d3eae151c858b3af76757a5adf9375f238ed0f72287e129020c04b080137959ffd221ea6632f96df7ca4bd5658460c0df652ae65fd57d3ddaae9e2e75d1e1fce47dbd59bd094002953b44e23c62daf241bfd4bb6e07ca8eed9f8f2b62a79ade1fc0afbfebc8b49ccea753b4deef538ecd6a56ed99345497b254b1c480f45b1a5b0cb3e30a37bd4a9420db31de7cabc318b468f55f6c277b96000daa9eec1c9d2e9c2e02148beb35e5cf9a44c974cdf4cb1b9235fa61577ba16bdd7015bb650b83eb51c995775fed310922f56f6161ae076ae79bd1d38164ad36d4c5e3e0b638b66740f9353411d05111b202beea7c1def3abd02d4c353c03399edf31b834630bf14f906a6426f06a1df0816751381fc70db657d8f266051d5fddf36af2af1c3782808de527a283861b10ad5b711193ff5114278967e6d30df04f43b72608adc20a54729ae72a3065e02b2e2bdac717e2c8d945843f8c5d7e3f04f60d3433773163de0e0c0e45f5c6f91ad19f21bc9a0d9a9e887e00bdcacd9b7b465f04b95b99a4b441ad9363ec7b01b55ff9de4c0fcf65fabc4458f663d787d3fecde8d306bc69ef0d074ed6b7c11f48eaac3802d8800ac1eb77149a6c0c01ec4e5aa6e70321568e3b7a3f5a842b6358bb1b0b5efc9c14283eb6396affdc86e3c6b62c255bc1a8cb6fe7c27ca59e52f62973115e1b817cb10711abfe4c42c168922cfca281a32ba21032763adc74c9d1b27a3ac08c8c0114513d24f82d0b015f75cf1456871f5d6ba6a1e29a27dc6c8c427db42f1b5939271f9055b57e946d28fac2de338db3a6664d82289b80106ce9925af966bef12e910c94527bbc8f3c35f39f4d4ded4110641e7f69816c2d3a4d37d96b4ce7aea8e296bf237d81140652a7e4db65a4a1e0f84c2f9d45bb72f042e165f162689bfff9b07533f7bb5abe5342bd95c42905803da41cc1f366f0c90d38f825ba7a6092fdb26da7f14a21e3d4b773e120ba478e78525433e33eb57937c7b8c390268be01f7c5e6b95dce006cf6fa9a57d3ecc4fa40b4f51d7fed4b029464ce6b07fb61ee6b661b0b7d8dda3af460ed2730b48f3e97dba0e64d4286c2da4e25c96c341af979a56b45deb70eaeee6f433a1fb6af864c7622412f9bfa5d4f38abd2699dc70a2ac45038eaf6f88d42353926c3b5015950f457c211582e95c7c1d787532feb0595f9068a006fd30f1d2288307de8799ab0731a91e369dcf8979e4733d6be0a8db030a5213db71a11231f8424bfd3656dd36012f144a91fb1d8d8f713c5e8c35714e7d289754c82295d053358a4d03cce7eab4289ff3f1975143b6e7186dcd06ec7c1bce4e199b64e6524f6fbf0235324e902f37dc923d57a773ee25747c567fa2cef2f8f5cd9ebf721289c27d6ff22310d58cb7a25851b9ec34ea30c53e4d2d0b86615530bd3482bd4d2fdcbf4f934daaf64feb1d2bfb961c5886aadf9e86fea020f1fbc1e74d47ee95b302c0cf8329a70d51f21ecadc6562fe498b35179648b59e728c5a414b902a5b2823fe73c4650606cf07349bae4a5e56dcb14f1544b5dcfd63e088d100204c526c48222c84289c5841d6ee48799bfef216672306233a7a322120ffffbc4d751f694346c31b7dcb97de3c131cd66075c3737f5744975abfebe1540882fdd057cb78b52b9e4cb61963918b7832e2755667439a4f06619328e5fb1056f62b7305e3b9c7d422a2665164ecaea9d8807db02f41f6cf8a11dc70df1f2c2c0853607f1be7c4f954a49e3de37a440184d9c170079ecafce3d84731246ce381c566bbd8018ce1a79b16f89868ec95e3e077ba6a248585ed53a56a4fe2b977fb4ea57f2d555c45602aaa53d9247381a9ccffb87b5754ff6c04a744784018162daee121cfa69d7febcbc0707635aea4e64363ce69a1fff87e1fda9d54b5d173832485aed4ce8c7283ca9f830cbb1da608ab8e257c161852c3cd58a33d32d59fcb075c76c8d08a900c4905c99743655645e4e47dea5501bb5575b6fa59a2f539f89fdaffe030bc5e4cdbd78d91fbad7ef1e8c6fe311db331e7718d20087040031ff8dceb7cbed113ea66e90e6eba55e8a31bd19f61ab7515a7153a637304af88888339a5d5ca11228a733928657a496bc08c0b9b17dff924363d658fca4d61415a417703d191d0ba69d0a0fb74b8a517cad46a882d6e4db649bdaa61b1da5dc15825e6a3a04045236c6e024ca590d23e8e6f10ebf2c8caa944320d01a086247384966391e54650d3d001430106b2d205e4acc36e74d5b4cf89f980a92c9e0e8a272a60a7345de1a75a2b7dc260dbecbcea964374b3d0196ad47801ea6fc86b589c0e19e5cde02b1b7eecd68b1283c801f6085b815d585adca242f95aa583e1fb157a7e616b32a9ea79ec5aa17cbdfeca18f40c5867b1f0311553b0345ab88c5b8c2140a57178297136f85c01d711b881f57c25afba114731e9cff01f6b21e8ac2b00ba379f3cd7fa2dbadea9a418dbae39c0d20e1b2ebe0964090422b67066f60f7dc390b764dace45bee00a2eeec750961d05a6e5b8571cbd5b113325201ed8839f6b863ae37063a917da46ac88094df85f01c1f8de67c032226e214cdbd41a71ab698775a37b9f2b3f1bff74f14207b551fedc634316901858d13153d53bdb6fb7d78f24fde604c604d478101d2c493ee6e23d1bd2b77c644f59bde8c98d81e56f1a4e993e5119a12665676203236c7f874d45df7ea56efddbd30547e3d4b4c3cdbe194ed3f14afa208baa0de408d06f8aa1790280afdbe832c5687597419ea83261c59a580a5743f7fd66fed6cac03b76bfe7a3ca0ce0a212a3cb287df5261c0c9d8365911d88b78a3e4454ee4fbc8fa22ac5f1cd7f70b9afd86a560e34594707f7a2495efbc2941bcaea1ff5faee8d9a1afe38886c00c740058c0fadca4aaad11eb038e611630618cf6e7ff4c47bb5ab4457fee035d3260c759e6c0adfe0b887c33976120514f5480bdcc31acbd993bc069b7bd126138aaa82925620dd20746af1a895301494dbf7c06b3101c6b3cc38d2dbabed12f9cfce1574ca573c5d1d335b24635e746113493ee98ef2d9842b424bc72007cd13a553ca47da7a07e5a19c43f1c19590b8f8eac81ec7e3aa5ce99aaa7fb5276b2247de0f112aeb8d4a4b279ae7c8de4ce4e87a882ff963b5dbb5ac87286306bfd73537b7547f8b0cd37c06a98912fa54197a8d73bd9216ab40c92dd24839e2f505bc43ea4b462814253e4a65a7a60adca0a8a8d55072ea10a67f89a405e6a41c6307fb461c16281a8f7830568085f043c6c06b0103a189d782095dfb01f865273d8c26e4b7943160096ee7e1579e187592f753f7bdd7f19a4641c8ce15ea988e4ccb761143492f3a57015faa34498583fee431872011890e3f2c5556fb81a81f9dc62fda39b0eb0ca25ddd2440e8e146ff14474e14b035bfe632e2cb0ee71914666b4bb5ad250b844bc40085f9908acfab4f83d7e40030e7838a288a2eaf66bb577dc9b66914335c182fcb15cf2439ab5ca27fdf579c58df5da462bf3bdcede7eeced9f6d3ab1dcfac4d66359bd5e3e4ec917ea01ddbf186ed89bce0e79b007c0d4e344cef7b169890036743e2e6aa1e861d7feb5b1add70b9be9bc06784134065f43e56e47e050cd32a35d1bbc728725d7378cc9a9e032ee69fc32f5820e0e913e50605c36f75ea24b497d5a6017290b1abb488fe3e7a5050c0e88e1605de9a5abb20160092944ae0afa03e8c0ffa52259fae8e4dce7b17b0c4227cdcf008e047b68431517dc8fa7678604fe31ad56a486685374f00266c57bddda84aa8c43a25d30872b80f9e95af2a768c1e60453bae6240016b21a869248909da9f0924ffd87fd832bb764912d4f43d181705de8ca1a2a481792d2291507d0e01c8f7f84dc11a50244706d80e9db7a41358f59a99e1dde5fad2927577ee2ca38f5a4b87f83e53074ed75108a64a2b36bcbfe691ff344b6aa842e2d51c34fbc681037d43eea5524eb137cc4b1760128f62595518ade781d8c66c3883a1695957181c938333432ab3addf2bc436a1ddc2349a691303f369ba3277bd779b69fcf2f6db9bf08fba450fee27ac12e800dc21b57e3b681767bc05af63e3b2903f8df4f6cd2973253b84377e924df7477b7d3e89ea771f8422407c6193a7e819faf6e66188049757ac3a97659e1278ee4549ca724eee55e28bb5a027f749dd4311b9e6da889c94181e1c3431f4ad43c088f5d01cf55cad087c58fd6cd69b52140a47bc48775bdf5f0abd664751a9f468140a8f17c88c87bf9cdfc1086d5f5454c9c5b4715c34c6f70d6cdd966c96793d79e4046dabb17fde85ba580ca714daceded003b80f3572936d429991a21d4aacfc0c87f12de11aa686ce93603fff754be4b09a9c6d14635b05abee7f5da033b5f7e8319a952c5cec3ada312f4fa9de7ed93cbb8d1065fe56cc60ab015afad3231e8fa36ed37e3cb8652a2d93c0ebd9bb36968b52d151c637f66e786c83189d35ee22f7c9e2ba93fbb7cd96c93204b2def838c562966fbd74b2c55cc709e0a701bfe67dd13e00ac20dd62b296b114d33b3a75daa8ec924eb0a2e6248be7888749d9051741b788d4555d762fc3e89e78f101041884f5c8da31cb815c26120e9cc6a4158e1b7152d7962e31bf216d2345d733ba038ba4694d64b206b5ba97dfe3dfeaeec8aea758c0e9d6f40284d97bed04e90b573c7f47a39bb0b36d440bb4f50709f066593a4dd6fab150233feb24f0474ea980b6257280b10375a33ab73859e48662b6ff33435ea459b3490079f4613404724d821168dbce25f73c1724e868ea72d3539045540b29d96f4dde499fcacd6aa72038b2de70c54a4f85accd48e45c2f9c103420584df5cce6985ac51894cd6aeb1ef6afc000fab4a421efb44b5ab104801ff62d2b10c45333ab6e5e676688330075341e1667b2ae19cbe1ab249b717c33b5018c0f3fb3b829e13a25355a0445b22e52096947d2f4aab7fddddbc3d549dcb427f9815fdf5b7ca35a423f4a7838b82cb395d9c1edbbec9aafc370477de6fe288c797f1e0a3f61d947c28f1a32365367b94370a559373ad3f8163b9d2ae665279ecd52b044ef2fbbb9a4eb5f6c501497e6a353fe9ccf79c09c54170343b7df7203d957ea54d3313c057a71b952ca13cc0544eb4dcbe9353d4aa5e8371a12183c96877187cf77f5fa074534ef70d2a8b9100c544814f2e1f7147d0e9c745a8484748e44d0351c4ecf7ee7d52a5f49a30a69a7f8a779ea3b4ff2ed27f11afbae8cafec7297daa3e5e9702f42c86b147cdab0eed289207f5bd6604e12edefbcbb4b7ef231e241519ce5d6d7e394bb7508d22b15b86262f79aaa9229d866fd87ef2b37e9dd9278929c975df8e3d761012a12a4fe700b3c0ef462f4df24e4d82e8b2c6b812f2cf5798b37abf63bd1e8509e3e4362139489e85ee0a41c1efede1951bf67c1e831e9b31bc339af2ef9c493a74f0864275b3686cbdd402bc07cee192ab63d3a0bbe47891a62c3c17c3be31b80041d38962fbc888d25f556bb1724f4d9a88d1290ffefb7516664b4f265ad97536a55a7b7a388e7a91f887bb568f6420ccafa45a43e2e04cc98e1a57335991e4c022594f547f09ac6ffd69de5d7e3c4a69af4bb04c88a330bba684ac27608d1214ddcd2304ddff297291cc18a55ea0fa7f752a8846a7057900ca06b36a941250dbf7332354e2e955d4521509e408c7be37ce2f937b9cb1a969ec43c98da45fac913d41e74e2749fdb30fd68fbcaf7d5c5261e40fc0ab87556b877292d47743b504f150e98319ac1accf52ce1a45f8129e08ef555139c237f0bff5e4a214062b1c23793fc5043a53bf931150fefad07848466efbe5bee8010980d8d2f5e88eed546aae5f3e2f29dcb6e7133138bbb8850328fd2830bdbddc0c3a53fb347aa9be88600e4c2f4fb882729a49ec1bf18ce09cb5b70d56ab8ca4577153b5406815a13524e0853cafcc17b27b5fdc025f033ba7f5792c5e3b355cb64ba6246d795bb79dd6465ac64a42f82fae44f7199cbfcbf635fb0e70a0202400b98b8d29108a7d76eb7cec79b7df2e0be5acdbddbb171f021bdd2f569c763a65a218ebcdd84143ad2f2f34559b654e3130e50c2dacbd9c6ec8c07be3d8b553c587d5298bcf3331ad7af2983593e03542f5071e76d6965936ef7a179cf6e923506fe25c1d2daa7efd71ea4de648adb0a55d88ad02323f2713c3256076a283e0668a54af4186b2f775e1e2093e9bc49a089cec797a91123aee8972c3940cd56f3dbf6fce90c18aa654883339835cd1c82068f89556122871ddadb2f815f88e1e3564ed5a06bcd2af954000bdd8a1cb140ffdc78659e01f8a00ab4c3c0b1b3e873fda9f70ca1dad4075ea5462499c68e7fa807dcfbfe24b39740ffe78548bbb93861841f9d0b33b6745a7b34ea663c4a36ffa904800042c98f5243f699e73d384511c7251bc3852f848874356e23661585cbb874550ca2419eee13544669423fbb0db1889dd614b08f962226ea9d8fba066e99bb5a617871c4522ac39fb2b30d1439428f87e36d16f2d52da560daba788b5358918f538370f70bf92b2bc0633b342b52a0e7315f1be14c810b3e31ba2f9743f79e0345635ffb1cfba729e61de17cae434d6e2cd73a8fd5498fa70ec33037f6c3dc3f7d67037195156eda952428a21119e79c55dc18f933fec600696cfed1500d39515ca567b79c828dc29c5550df4ee9957e9c79a0d1a4c9e11c1d71f339ea85df6f0b68018d272a62de597c69b61bd67094f06e5999b5bbb513abc69a2c5a8d3e5f4ca3a418741f0b5c6fb98d6a8689921bebcfc0e5dd925c1e2df1e0bc4adbe44ddb86ad1ab9fdc26afc63dcf58329549db3ebef064b812b003334ea2ad72482d6b57f235bd803a76f1e1385fb605b57b5a93629246c235be934aafd4cdf842ac0c904ab2c745af957d52f8937357612ae0e0b641c1aa9906e5c1a03915d704ea84d288b518358299f7933fca454879ab022f708f3b0a85a7abc6fb2c09d0cd8fe8e7efe473cbdc5179b99b0a27dc97d84b94c8f4155591e663de7639cdf5252f4fcd4e05492468dcc0ba736e006ef05d22413adf73f6af8e114169941a1c17caf91f3b339679aa69caf61a44b948d7d07e4db1cef5c0fadcafa430dbe417a12e85e60fbc06cb96a3732e708475506c0b22d46b70b87d3f6c4787b22ab2fe6b135681ec9a7ded21dda83f143471557700df8d88afc47e0300966c82864ba49dd077d5212ec78c62a6488c63779c107276cd3d6f0b20a783c51c5b27b55adbd2801ac6756f981eb1902fdc9eb6fc73683a950a5f9df282fb3b395ca2917080aa9c75b05896f4935e3d4cfe682c1f5c251a056fb77e83db149c0923d040f1043934a6a7594383e5bb3e0a8eb7942cd1ccf39bebc88b1143421def4ab3950d2796209cf79e39b7a390690fd008ad8479dcba7b4f7f1259bb6bb6b9f4d8ca3908da70c9ef7a2ba3f4270bedc5d17da97e11e3988416fdaa46eb0e49d2e2a8d3d4d55a9261b0c689a728fe1f1f5c4a5526a4aecb6fe746d45c10d0b0806e0f7cc3cd6f11c1371faaa861da03358f66d286e79980e6a31a527c7c388722be4fcff058ae239af0b48df4dbe2513291d0602be4ce0e78b4b6a78a35d00ff5fd60a6668503188a2e66c6667ea504734f38a8958022ad8fc34be2bac8239a33239f9750ff6980e08795f8352be708f9a532764ab019f6de4a102d1a86ac1552a16c1616a5500d84b6aff9070311a8df127f7657fb09b4d286e872d002c5f71bc58b39936f6a61ab7154756ce429d1cae3ec60fd576b22cefa7ed0a8f2c6f4a89d7547572de3baaa9a705312d794d0af79f7faf14439cecfd4528b66e651633dd27cd05953b6fe5c4578a5ad1343c46fadb4a1dae5b698a49d37d8506509f5f42c04db7ba4b8b58d3acbf368edd563e6c14ca7dc68307bfbef1ceee9d3183c1f02202ac8c9feba3437333c0ec5d73ef298c0245cbce2ccdbc5e63f3150bdb1f6acfdbf8b4fa570ab5ecf3224c1291ca1f74f8a4e2795779a17941dab1b2b61190ef87bde7e25dc5f0bfc261ac6dc10b4ad610fa86655fb75bfb43c788495b845b28413622d47344aa469d44212ab303909aac13f2e46f5583e694941bef375bd6c2143aab81b70952b97d8abf6eb8312502af1f9d3849c2b9ef95f62ff60c32145d6313b36478743974b7210b9813a4a2a157383963f55d26e72036b3f23130a84915bc57e3de9579f48b4474d5d1cc05520b9764549f5ecd936df574df9d67edc37bcbf46903d01ff7e630822d6532ab2fb1d53a7c0d16f85c999a59a023c156d24b5ed7d907a4c25f86779b81282ad734cc1a3fa1955bd4c629cfea6517c2389e086c4e8b71dc4ea0dbb031f47839b38a02c09c45ed83957664dfeb1e3e990292c8b648153d371181be5df1245c13f968b3ed4829e2cb56b8e2ba350eed642c0172da3c1e1fcfce24dd21457d06336827b98a6eb2534369a0425503c516b850a83fe92de255798117abcac62f30602ec3c1c80181a513e16e39817c302b3d7d6677f91aa10eaf7f317807f501f62562d96d0b1fe115e227093fc5be70340c32ea8afa89c2ac8be35f61f603f332396a003d3f6de791614fd82b22f3deb9359590829a5efc45afbef6636ca75e8cb1335bb8af72258a70760e672476529b5b0ee47f3d86718b5f374c0da5aab2b8f918e179bd8f03f7e8d80f1e52698c932ec2749de385c0bb2e193dfc9f76f7b416133f40e530952fb279c3463904ee17c119be303d7848f67b968844aa0bf598dc402e9eaa4f6894e98420f7b4baa3f94b5eb39f17d581f0f2cc4cb66accbb2bbadf2da453e6c0102950d588ef99642154c34ea1a5f8b38ddcaf78f75be155af8bd8928f55e18d7b18dfe1cb468075cc8143f142d479917039036e2e32762374bc6459c8873f8cd7e1ca858fdc9ec0a08327f64727521d2a86239303ee6898f9acdf9734fe42c9538e1cc3827716d32981c9a757204327137dfa219f40cd7a482ad105b590b2313bf89125600383e5529030f9d2f2b4ddd6b38070128aede392cf916485f7fc6d87e07155695b0628e0b853792edaa9d39731bd48a120bb96e762c2b4416dced484aee3986d9c7c8202c32bf49cbf4f42eb9275c5f470e1de2ce6e1df55598509ab255737f5e4b2ba1546d58647fcf5dfe2a4df5ceb12c136d2ebdc89e3f2974ccb816cfaf0804ca1bdcb6a23067d4fa0a538dffa30d9f9007d368fcea692ce1d2cc1ffb0bff141df2ce90f0256e3d3b2755dee088632f8476bd342810a0c3fad7ebf09365aa2ef8377389668db14a369b25d3604669978fcc0923b36cc2ca807442aaa93657639a67a96c583c2604ebc9dadd88f5f9d22a58c4c8cf47a0dc468566776356b746229f50ade1535fcf9fbf99cf7d22c935b31300bd673b9919dca8b94909d61b69886004956b252afe97c2ac4f4c6e4256fd6b2f160849502960aec0d96a441d8cce57669fa434d3fe5105eaf7a7abe67a1f729d77d6d05a665af6e4c4a5404076675bf4db9d5c7dd4fe227f286b0756eec7a1a0985b548f9158c0ab3ea5a8cc2aa6634b00cb668da2cb6b0beb809c6888b2f82f3b36ea9e1db24ab8f91587df40a5ae10fa0205c048e0df39601b9a9d8446f1266c20a060b137b4c0e97e2e814e9cb780774b7fbfeaf84b2ff0c96dd3b79c1844e6aaa973c001e36f6fa9d60cc00319a9483dc09bc456e37ab71ac73864494b1f892734499bf0f86c44e4153e758f1ebf1ee54eac022e010ac6c1d1d08f1f4201d1be83b3a27e82b776222db4c27f63986eead3067eeb2433d8c8bc16c41418cdc1d7b7e488cd1fc5e43ab0e79611cc81b196d76e12e8ea7b6384cd14b63504ea516cb08e8f2c663bd8f90b693449495722fc62aa0f90f58ac3fa97dba1bf8655d3e56d963499cff29672cd6dff01499698f3f477eeb75c469741c2557276e2afa4144b490c44da53375dba0a6394bbf5bd0fe24e380bd77749b6b22ae7b06b79dd8584ab419c49a3109f8d29172630d99f482fa488cd28e0694f3fc13efe781eb9d8bcb87efad016a14cee987086eaa6c42a38d0becffa8baab3326dd58c81a73f110202498e333391dfd4990aa6055c46e47a1cb484565416af2a64dfe87f81270155e7fdbcf3dd693422161afcf6f77eb01ff0ba7a048f8db3b8f3afb772af5adeabc06aceee430bd520b6cd20b27e3f5d12f9302b25ccaf88dae804936ba9c099bcfa5c1c979402da67bf7e672a3c23813d23d506eb2e668e622f50b22918f12acb9fbe627e6c271add31e57d3380563b4e80754970c054cc61611c2d59ec9ec44a4ac9e4ca168233b14040369f2f065ef2d452517b2cec49cd221930c3d32b68b0de51110f02032a0fbe9dfd23ad4adef9f48f3364b6cfc35d648ce609a8e478b4dac4121b9b9af275a8c5366cf97e0e04311946f72f0f28e50fbb2e1a0e2bc9e3895f74b16db0801c571def33409bcb9a324baa7deb8ce4276625ad80de2d1f5a82b96468b5874fcc60c958464c598f3c0232dff76c5b680f1fca7de8c47a381cc65615d403e591acf3611eb419f762368c6fba52d3f3111fe2bb8021bd2808abbbde887ccb98fc6d7d2673de4fbbc3f20900c48fe2e7489afd57b2bc756802add7c7b5be7040ed72b630af2a3d9bdfb553b3f5645c0edde8963bbc34c77d0861063ff0e663aa43672d794e67dbcf85212db5e0563201d0f1af8c3e32f0d1f97beb23dfcda64d5d2a77d77adc09f67e0c9777e75673266e829177f9b27a6a9b28dfa07a23d5bf0b2753c2eb448ae822d069ff7d8ccc799b9a036cf14023307385f293eff2981eb3303d98ef8bbb376384c451e86bce955c3562dd29afd8a3333d71dcad7dce87fd53dc43e76c95dccbbf7efb977add9625442c2a5a628449882b3cddff72a677ccb368d0703d54f5e11a1d175c97bda7d770ce0aca4fe2b45ba87c74e0ffeb0fa9936f066cffa769af5a99f3815120292abfca42d034e188cfea9c67702f91541cc91190b4d43e7e4afd003ddccc389e5a9ba14abf680de876c53f7216bee2e421de3f05fe48c8a01f379447d5886648b017de3cd0370044c15f655a871ddbca9fd22dbcc6ea4105a977a7dcb4d54f7154b51ebf5d3a2b84fc6c360ce4f22249ff933376de2d7d9a0e50465ba863603f140dde55f4cbca49ce6bf4f96270c921163e2e29f8aaeda4010c9b60dcf32445d21de4daf194cd1687827fbd4a6e949837d135c66c058afef942f9a3005f3319f273a6c72c07efdba405aa0d0cb59eb2c672ca4d60bbd190a7c6757c54afbbe04f866879531be7d35f141f95b677e001c05c56de6b567730f2db76c8c3b1c5d05672d8b375ca4f5b15110d106a9d9f07fc7607a0e910af17a1a17e80a74d51a3000a0358f9bc479a9cf7ca12f14d9f0b31c49b646fe69c8991ef83be6d63f21d6ea5826684123f2482fcd7fbf2dd0fc70942e3d91d23ae3d2f7d5d12a3d37e7135e1d388054ba631f75e89069bd9c13a3b2c1c190841fa136f0ead3ade96f6c09eda5bb9cb9ade411799ee969f91e3047bca475ba29cc0aa3a9b36f9c8cd23886ef5288a102bfeb15097ae2a7fc6d787999e31620a238db15ec9127f0deca557070195ec0fa7952fa2808b51ceb412779978fdb81e97f5e82d72b49116c070ea4656e45f38c11197a5038443b96eb52dbab23e9140c5ec3b777b94348ddc34bb5f6cd6af6da760b8a8397f4128e0104953bba06f0a2d9436f59767d1c2f74f718e79758cf49076f2f8a31815788cfb98821c00716b8ddbd4ecd0211ef6bfb93756a04d8b3a57ded863ef61470c2a74e6aa7230fffc0c450c207832420d4911676c9b28a3b7c3f7ab03f28f7adf91ca9a0be21b47e6d7f6140b111406b83606b5921974658a95f0e6dc8d2956e5fa3a7d448579c810c8a8f96faa6a60ebf473ac977b01ce5df020d84d05731a7b3f02b2ba95eeb1bcb835b8174cf116470b08615f869cee5125adbc2643ac065afa635fad23444ace6e5ab425fefcb956b2df75029bd911bd868ea8a071ae9b46696d8939d6a7d39419b85ec74608466a1a06c4fff70a9f73b43a73bd1240c344dd055b9597deed950f6c4ae476061825313b59d737c510557ad1df2d84b00eecf205c150478d5cbf560247902a03a3a571834aa58f6ee3fff488150f660f37df91e91f05f24ba14df3d6eac59a9f244dc9790a9acd386e7998fbbe3434abe183ceefb8b9fb3c44ed047bf8ee6c02b3107ae709f3c56003d314e873694461f7fdf267309a795f423532d54cc4bbd7ef7d713fafbcf1395db2ad6afa90ffcfb0ffdfe3024267db0ae18cfa8c54b350960a63f5340bb174f9196f3814af04490f0443139e95827bbc9d034e793f852a0eb1d24c32ff6e34ef3832957bbab65ee3fd65d58314c137f2579198dc1909fdb103e72ef8f7bc5597515aa4e8351c1f1e74a0697dbd50d45146cd62ff4ea5d0db27bc3c504ba3b699717f8d68f7a0283192db9dd05e4da21a53500d8b88a3caa160195651f7063266c214a44a1473aebdf9f4691a29ef47885c0160984163861b3e0b340f002d321e5731ae6f9b38df40eef94e0a8c432f1fb8e2f97619b70b9025d7a1f8fa67cb7b46ea42461d2c083f4c2b9ff8da719387e7cf9a61242b7d5b39f3e56d94bd2fecbcaff7be19feedd4bc6763b01cdfc3f6abbd01d329ec307b94dc692650e6accf5342c2cc93365b71d65386b78327423d431bef3e1f1302a305aa4d256fcd00b16aaf48aa23917643d2dea04aafb7b5547b673ac2ae5427d30bc3ec2ed93b632f0b0b075e64a89a1a92ad45d9054f2d37408dd3ceecb821ad4a4ff73b0927db5bd39a744c9c0254b9bd09459ce4a4e1454d7ecd58f3e720835f46baae184e8675df5d131774985f765cf6478e9dd300c8a4300de0deeaa77023b3e7022182a65c5408f42e3ddec32c59e4d8df663c960a3ffad22cfde47878a3ca74aad31836e12a68ffce8b5dff6f897c1a6ec1e103b887c0e0ee82e8e2e92aa14b84f92320634d4bc6ddc2e48f111f633119ca3bf789731d1cab23f890ba4c7eaf6a38fcc126b0e00874ff4054b1f17cfb838fe0d1d9b031a69f0e961cc2dde40e383652465c7a68e29fecefe1e74fe6aac30593c1d44dac658f529a1966bfd92856440537c96f146666bf4a3b145aa64d0e55fc95165f00e4f3b452157e474c5846a23b21f4c581967f4521a85efcdfb6327e8e7b265185be636f2a7e2ad2e17a4be153a675755afec6efca95e1af47f80afbec9969ee84536a83121d6e0b690c988632baa6a02a1ae90846b2656b6fbae4ca15970d201eed9aa5ebfb6cb7d63e3a2b9f9ce8386968025a7301eaa82c73be521b469f4c2704346f2c4fb420396ceb04900394e4a592d26bec90ee320c43c3fb98fc219c7712efa0f3e547ca9313c0fb8d746b08c189a224acd16e51cf5d84ca2c41945c5039b1a6799af0f42847bd0b135fde7269fbed3d701cc3908bb04e64cf691299608e72ec733b1ae656a65239d8dfaf8557a30eea67deb5e86e8d14a04899fd6c5a430e732b1282e2aa9ead83ca5dfcd4d9d5335daad5778cef3466bf005fd86118db030111c5443483be65e34c3f559b6c0c75caed2424779b13d5de67a7f60b2320b4f30ca7c8be6a0665ba2f6e997ccf10b690d58237ed6c1b5126c2d37a0dde9be1cecd83c1e670218445fec1195b423daf4b05c2d9def35fec872d79a5a08a391a87efc0ed27e04feeca2d878d4163ab50c245dc5da16a8f537bd563b748f8b780c477f75f14b8006946d5be1fd187d3c34174fd8ce394eb203e6174a443df3a7690770e81b54ff9568d79492e02b6e4ef201c510c7f54a8b9010f578ca646b7e389a4390fbfd9c52c388ded10e9084299b4e710a378ef333061be2d2aa5fb264b1e358a1adf8f32f5da00518d115f0045b8bbb07283c82ff356e87b38c66055fa821fb8eaf1ec2a2a1e51a830f8ae4e6b4561bb7c77d7db3f7442afd7823a8a2e9e9dc00b068ed1b78546e390af17a67735f984a7f326bbb03006095a041d87fd70e02407db58a41e6fbecbfced7ba1d9cca0e980cc52b32065a854d9985e355ed484aaf75a44557ae5cfb155a2029339edd7fd85cd7b0db63481277f6e21fab4dd66ed95f9dd37788d8296d7fd3efadeacdb7dbf5e4d5997732c11e4292584147c7fc2030a8de044cce533122a6893fb4313e04d829a83f5200d80077df0197b3633bbf14dc4e6f2945cafa49fda21d3a360b0c3453fc00c45f9e66f74e381a69e73b8d64cf7061cea621331f17c48775609bb41b8efebdb5cc1762b4df252264683268f00686c8e5df2d05ff3e1171c966b8e165f5dfe2757c8774cef3cbd8e1da4bf71af472c151eedb1be4bee739ffbd8f9f7335f5401e5ed10129ad7f8ed79cc44a9b79a0cbef2bed7922cd6db63a4b59d703e4666c563e0aaa1ebfca9874722aadae9b801fdbeec5eb8a9f1ad9743aeaeb02151af4a0fffe7c5549b44c3afd17eff93e81b1965ae2c86f731fede33d2bb762d4f1042629960d049574eb3025be230acdf28ed2d99de6ace0bb136dd16622aaeb93d94a519cec50ad7897326aa0e542a838d26ac6e5f998239be6ef62cf9b7736b6c2703869791089ec759e37474e36e181f8bf5aac04cf4681c22f153ff6dfcc63a6ea15b856785494f01eebd5a297a9a3b282745059cf74ddddf82df41a2fef816c89e1eee5979cd5e96896e5466cdd43b8dae2e8b2cc967078e2dbd974dddab4fb026695e0fbcbc5f6f42b66ddcc98b791f918dde26515fa7f15f752f02e0c5ae01ee23fad12f7e3febbf00cbacdd0f586fbfab72153209c471e90bfc5999a9d0e344a81670c2186b00b0b4c775487470c923a9437aef006d0f1cce55ce4a6127bbfdfc6754285ce987e79c3dda8cbf4aa69cb8696c507d07e0798f919122c92fd9da270d118d2617029b9d764ac5fe04d9bd1a547994060682952b9bd906f03087dd36d473e9c31903cca4dd43dff28fb820dd1fc1f696d9fe09bcf7d9bfa8cee81a85616dfd9a77c297c5862a19884bbe0abdba78b3d1d5c5d845ae9660993abb38d0fe3ed7633d0631831f42a89cb91bf34914b736092c2176b35536dc74cc10db825ffc0cce4935061a99c16f8ef83baba672ce36d7f532fca14fc12486ebc26c2b29153a8c7f12640ff8376a31f8201afcd723f73389dfcf016cd1ebeaafdf4fc3f59222b276d5cc385e4336c137950c135c4ac0666918b7cedd64e6046b2dc7d751837d5190cee2f729fa48c8c203832cf56277d0e6820985590ae6af6b557c53d6ba752734853f450535a26acc69afa22054c9e86e865007d14e80a0e5e244bd456bd6991de252e3e1625d56bdb49e5bab69bda395d8e3ce9a31375fe24423391227b531a91d15c1062a0caff594165bc9c1564d7dcb4fec9f24072191aba67a93b6f1e62da13e77f8ccc5d1d1db37e86f35af955522a6f84c0f9ed6c88a4173140bc484cba822b7aecadf0068369cf63a8f303d1cd58e18f9fefbc410da210ae5923975619f7bedd9b4b821223fa7878d9620786dcab8addab09eddd7c39667eb824f8551922a87e86315c46ec9f4a76c54693b5a982ca70e366ff3a844d994c2a0344c4e41571bd26e0feedc0116af52b0e6488954cbbf0cb625787a84dec996a1d3a8fef289b39de5a7a51790c80a5ebe852f70d1e3b78b0cea812c9102fb4538fbb36d4b28c1caf0c898ba223cac7c90152cf51cac5495352e9dfe48423169d0c90776a3bad8e58c6d057469798fbedc3ac8d552ec302920e5667ab402e874d32a07f0f9c4b19a61a478de5134ca60b5d9413125b4d55e30f95d522dae4374a926f85be0a91936e2ba94d4a69fabe1e454f8e5e34c3a1b2f9fc184dce4cc32d39b0a4ccd913bb19fb7ac4c352fbb0ea69797eb86df738900838bfb98c23e21af57f86abecded5eecf382b0dda9b2086f5034c067ac26ceef79591385e97b0feedd0fe25b7447bcec8d21ffb2f435619efd4112d328bff5a1012e78f26726d867d6e62a704e39f6ae21abad411bc5b0d38af81b4b7d8f638f8a5f8a4f387c758965a07511cb528a68cdedc748b521dba44c5cfae0c5e1f8ed2cb62ed1a0425f48de2127cae9fe0aecc46463f8341ea8775d187fc14a10dacc443a142edeb928754b0c04abaf595451798a9850d947f323bf3bbf56120b10d63d2c422d26ae8ba5ec570582cf441a9e5f67c4227e2b7b49004d696f6238a18706bdb28f96f4e35146ed27fa73b3be55d2ee327e24fdb52f2f055ccb4340ec041ebc9eba9d3c567cdb302269f18f319edf36a035ed6e1c63c10462168b513e142669a29cdc8b0635c6c245dcd11c52cc8a63028a1d4545410b50afbb1c34a6a704f06bf9b4ce23a1dd209909ec6f71ad82c253eb6f0fe2eeda6339b6c0f76ad21928448266bc1acb74b1f9891640c6153a09cd352adec8827e30f256fcf831ba856cd1e82bd5aa0f58bda94f4102529f8d5dcdb19eb96d607e18a83b9da202d61c67c05d1c685e70791c1ff1b4a9b0891d3d5a8aa0f405deadfb94daf576365015c89ef5fe7d499995e440274efbe02c31948fbfc2273aae575b9ef2e002a514d36a265e24dbcab51f844c1c8a8468313b85fa4c224e983fc85fd2f5adf83a5c6854fd3a8318ba1e94a85ccc86739e7af9c001c6dfb23248dc723898715e130f407dd264fd4064aff099cda030eeb3e51327de868816c4779c50b726903d4ef35a9fe7fc78bc0bf5f04ead1fb94dad7f2ca3adc1567396b0a8f69ae0683ee98f3404bea81c70dc6f34847335e86a3738966f35ae796ff8d348a0a7eb6e91ed5d6f6abc4d3d162ebf3223284f60c0d86589ce75640c1646abb5bec4b28396fecddda9cc7b596037138fd027c6bffd7d0a01f1efe20bdcc7e9663164d69952da12c52cf677b9fcfcaef30d85ce2b03bcf5f67d90b42defbb11174cc09359c9cca362fbcf9b91d797235f3829fac9224f5c7a6dd0293ca5094f466876a7f84b3ada47936745db5af32594e4f9065110aacc640c812e62388f0435dac54712ab83f462060d03445f951bbec3ea07a695e35a27fc5cbfeb04720b92c96b57859ab8f309dc0bdcdad6a8472c9b6b319896d001c026b7400252e4d897755bf5620ec58885f443eabdd9d3e3a0032fd33d83fc81be192546c1b873818cd7387e1ac7e17df7cfcee38e01e127c95f9de6b26493158e44b18ad226774a7374259927daa733d3a81e33af6655c9ce826a11b90ab3630162315d95d6fca704aa46a670288647bdbe81fad5f066e78a92737ab56ca7a4d8b12796d644fe4a4f574f3f0b2b869de8f5100976db62a0eebabd407867da9ab32c545c76cfc549de472de5541c2a3f96a8ce7cc09a665a970731d2e8e13fa8ac739bab0e1d844831abf2fcdcf89db3618b121da1c313bc55e95d6ea514b03ec7f97ab91eb528b660a80c12dde57d9dddc8639574f527d484be6d31cce2e9f45b2019d4250a6c1db17ceece5db960a5c776f3e8552f95cd176f2de186d82a7bc2d8ee5878eb511990795a8ec85482f0ddfdb469e550e6266b838c35aa39c02aab5df1e35a4ca388384b13c69a5e0d038b5e3f0f21fd63444c3661b1990d707eaa2d93b21656701d2c7b53da01a0902d7186d284052595166563914b1f580324315b58262b891e221d228e7c66d7ae53703d5a8ac680324ddd706fabd6e6be0db15d9ac130983995c5d4a3a04fa0c5a931a71d87abebdf3b681810bf05373992e5fb2fe5cb1d8ce9f5c1f563c793a6289f167c5dd20dbd22b2381e6c545679016c908aaa4a6b87dfd92f52716fcb1adb6595bf1391ea738afa1e194ffc2b532cb00f9f601b5f75224c70be964c727d57a42e3fb6076a4f03375e136a75d7d11b3f1db3610beb21ed61dea38b2fe942477c1538921ddf7b28fcda6486e6738017df0afe2adb49363aa4017461883e95435c62dfff96a3170910ae35819bc71d6b31073292f6afaeae00d4bb2921e7c7d14b8f6d94dc6cb77ce5edb1ad1ba500481d58425ae99a8550d3fd774a2920d96a2ceceda0b005b16c8bd90dcd42b3c13e2287ec1cfaae429a93717c0195b1a7fe62b40a4906abf2b3ef0259a01639aabd8443ff723948edbbd4b1548d293dc4ee5faa2f8b67fecf55421ea0436342fd1a80c87db276cacfb3f3868832c68f6989ea502ebf16cf97090b62fc7fecd3779994d40b93f049671ea0be90d6540f385a9146069b6c6b077d0ff912e0acf0f7c1d0aa5a5e98bbf285becdf94521a85875016c503c69d5fb2650547262e57464df5c47f33e1200628306e355908dd84d953db8f690b69f6fb69c88c39d87a233a07e5e968a436da07a5851e7ef30e1bbdeb1e2ef4008348e9d421a1433cd4a0714d6b0ea842c0adde75a3e2094d97a05a44cac292488bfe6e0742feceda9bfd3a6bde69fccec824b911cc6a064ee3a12fd7c3eb7bcba33d98aa547bf523a4853cefeefb2b95476b55c9e4cb10086b4fb4cea5dafab23078b50244aa0f7009800332ffb89799ee11625b03661cd6465f590c35ddd9147dff53c9c420b20f7bd29672e0c2ba704eb2e6e5aa35150b9265312b5ab664b1b16bfcc23e3f61bbc2092ea5200509008804ebe8510f8df70d3354df988a0b09d6492ec4d17adf4914fcbe866159cf23c84bbdf069ba6c0e20c47d8ece9736dafb9ca45ce8aedfb444865c7e47c1f4f69c3b5bcb03bea78055b29af6f0580771018ab5f0631f6ea19018dbd0b6ebfb50965297145e3294cd0f005170c0ec5069ba4e6e02c512315934f8e8988ad63fa359a16b8c0bd247f463201c2c4a467091b0810a083c00fd3dbb2f008e835e16d1eb682b8de8b06b7cb05e10b5e360d95590e9e4a721b99ca7920a7280793d88882da08884d2add16c000a4c2524653aa0ab52f67d291dc6d852253488147a4076d8a2b5fc8538f1ba364b3f9db6d8a1794d6e1e3cb1ddbbe890fb1876df494d22c42661c5fc590f169070e30a8c57a521cb08d8037cb8c435194c61e0482acbe6214407265762226f76aa5cdaa554076c7bda41f31aa85b0ae4da81a9c9b46b5900675c8128754ffde33699c498e851aa144b4c2d1e53f5acf14d6931f8918fbb0c2cf2345647227aac2d4297dd05a3033a00e814b0f9eedf2d5bc5775d93331e6b8a734146280f79436545d75555c826163cb46731e95d5d5f724857bfa0cf00c47a72d983ea770c32ec1eb51d7bcbfc6b7d3ff714e3e5c51a9d07c706f930cdcca3ffd169e67e7f37466127f324df7424742e1257da8b4f0d4d4fa470e9e310189c7d84409cf64316a39497e794aa21783285ec3691ceefbda5c7b781915ac6e9e7e2e8fb07a450b16bbedcf055edcdba3923aa7f47c350a3dfd69c25b6fba4cd248e0fa3331306740cd16450331e950770f7358f6b47e4320394bb15b4f33bf7331d654e51d9da408fa89c79f62abde5d67d7c5a3b606be951b45ef6a21afeaa4db3491975a61f9f8b74017ef9b22d436bac07b304db715ed4dd1dfb6444273c137f1ae9a7a5a81ec4dbacc280b7e3d9c6bf15586b46077945f373eb77f512b8aa68e9207af9dd0971d0468e3cbae66f06ec86714111b9a4a6874d81067e36c62bfe90fd365d9774976b84b9359e539c9d44fc7b2034ab39e84bafad4d508e76bd648e0913dbc29606e93f50bd05df8175ffeef6d76e6dc031b15ac229db558447ac96c999234f626ae92a452898488c0dd4b7697059d74dbe2a7055148fd8152de73724df325c27a013d6ec51ea785e89f79fb2d90156e5f7fee774a9d7eab082e392700196554268cef4abd3966b6e42ba00966e20f16153365476dbbfe5910b411d894b1ee529989db83447b95956e6dfea4509e57f6322a400f6186686fe0363a3e59cc12784760aff77ae16427b12bddaa8cb2f94bc382a334543c69b17bc9b0ea0acf51cde6fb162bf412d93c34470f6c32986ad29247e1e197a37635ad0963d24716bd6bad7576653e115b8a1813a592424b31132cda7edda7106b4f2f9338042e4024635f32b16ac3e18cf33c5a9a0c42a2ff4e54819cca4250d9b2b1fdb9a00c65f816e5ad20d0c4bb23b3d75a95c20f5252e55167e6c842ab640bc79596d8f9c38146cc07b011108a9f10eb985ca0389fa5d8675d4fbde504e4018a99a819f15bb6e7bc4d30e33899fe8e9037fc88e55a5867e16106a12b7a018fb4b206f3c9681be65d2628c2cb4a44cbd631ad0f9c25f84c1f291692028ac00be89770dfbe630f375640cbdd82dbb25ac1bc556ea61120584b7d5f49d04c44724ecd18f031fb1627864a1d8a73cbdfbdd0fc89bc73e34f5284e1d996dce338a823541d401f00c67325dd84c30e8a43b847390b5dec231f066143222ac0de15c05a0b845a2084c8c5e5e561993f9491f639a0a3ace2dea21b80db4974f0c67dca6d4d38102b73aeaf28f5796584d628a7fa9eff266bc35ed213b2d544132e8179f2d1f4094aef429b053bd621c8c8fee4d5185ba3af91feec82a5588056b02ab4883722a815de309b073c05d281e33fdcecde25d66934081ba238b70a6a0988a065594a9deffbc8131366276a971d33c6007e6e06ef2a2e3055f4a09a5abf36245064d50aad8ac18b8b668b1c629c3cbcf3cdb469c0c59f0f1b5668d7c836fa0a62050e8fce7a2b86e4cd6dba017b7dc9de456ddbadff5f9c4f2b3baa9f25268cea3a0961bec2594fac912349dfa602fa4aa46bf5c38c3110769bbde0550ff477d30e85d79f6fde6f3c4d480e49faf9e0661b92f5d22a30a114f2c94f18e4ae75007fdbdc917f98931d866812d0c98e0f1a429fe32d84c38a6404cdd5835b3bb8c659238927c7994971144a4742f9f766ad78bce31966b5d96aa929d595fc94e0c2fac36cd8173cde096f86205826f178d35d97aa42da7e8d00f111392f5d88b763d0db4f1d733d3996023c94128edae4178d9c38da21384f3af39db8b9e1f585387e633f58a366484bba60394cd1b53180adfd427f4edf526b923d82102002b3218ddd3ad49ea53567dbb4672ced8cc3c691dc6236318269f9a6947a2499cf19f00d1240ec0076e3395de9c0d86bd13e9cfeaae506ca8d8a8052ff8f89ff952bee2777c873fa7bdad9d0b1835f04138bf6a6cccb3ac61dc6e1873d2176a4e1f4e2588716756568a3767eb8737b49516fb45c01419a21c1b329df3172d62dae2a5a991c8dbd4bd7dc1d639f1cd00c31d4aa65abbe9db0f4daf43a7876fbba005ed38cf2b29e87c4f288a6b1043d91a73e17008a0e4e969e2820a6c99c37ad2224210b381a5cdc5d1d4703380c118480a65569fc7d6d000265531256543aa4b2180b604d358ccbf30b5a66ec4a3ed09afa4b2c5b2791f22063cbde1ff2760f5eb7477555c1de3e4f4a4f79135866af9f5a1c4384faadd067f49c9e569ebbde6f4e9c56ce82c5c1cb4e5731a8e934b1fb926a9ac728a6468f2f645414eb066e6234d9a4a0d5dc5cd6c01abc4aeadfde3afb01bf63f5f320ed61f0c6834a94236480e1beabc7d29f4fadbd4813d06f33059adbcdca2c8fee5ecc93d37a2d91f89e00497042a286b7a7c77fd86254b9674a2108da236c32fa0674055f8cc7467f10be6dd3d32361b855021fadb28ae21667c51137ef3c3d718832ec61d92a16ee226531364d11407bc4f1aec106ade92ee2732ed85ffdddb2e16ed5e0fac5ad0374f43680136162677ce66299c1fd13f430b5b2158532c14b98c2fa3845794dd7153a1385fd9cc422e94f4a5c788cc064035470df0a9ba4ca4ffe273367386a9a0d53b189ff020fa4b397affb30ebcae2adb321927b2eed604da3f8c6942375518baffd38665759b0bbc767340a301a1811d30ccb4009f6e0aa4c5bb794441f2cf90ad917047f7567f4b383f387f78667b01cbddf427d2e7692babc2f8d68610bb2622cf5fa0f49f3d75a65977fc48f08c9655ce6b11289aa3147e2cbb70e08cd7972e125688bf639c7237f4b850e365e899291c6f9927cfa673a76ae111e11e0050806688d0f238b99fe6f33f7e08d5237b04662fd4c62e1b5cc8141689cb332b31ffb7f27d349e172354490197b3b286e61250dcdf8da72d635cb6dc7c756ac357c98b4db34b8733f6269b881736e5565ae0c983d0b8434f20fcd84bc6d21bf9692f949b457e000179f93bc2d8b5f89217885c3c987caaf337d2dabef38ce3d24f6566f5a516d81d2932524faf30015a61850270ef41ac63eb7f65ecd7182cb2f6619bd2a5e8c704da1ab18111146505bfc0a90ae08eaa22c234b9194a9373dc809276b6fa959fb729078231a0a0565e6b26997dcb968e65f0d5e82a88787320f1aa713439bee0614ff78faa7781217d3982dac17f1cc76c77df8a6cb512fba86b59b5c7aa6661bd1992fc91af4f87d1216d72ec21f8197aa6eddf2b3de8adf48fc7b01d35ea120ca35b3cab4b1a71fd4976e664e8c234c5420ff7e152cfe6e8670b7bd0ded6d0c6fb63ce1ca38223c7ee66aa2789dc326b15a354446613d949561beee340983c96df2a63f1a97e21a543f6b62000c3ad1a1cc39034bafec193f7e4bcf6183089582598832f46ebcc272cf1a3f82ea816a3f587c8b08a0d7be2cf15c17acadbe4cdfef5eb08fbddff5e3945cec410f97e9c6d046de10e37947dd55c0ef1c6208760aad8fdfd4d553d525e011399f0b665967d47cf878d64320f63fb98d9a997a72d153096a0cbb59a7a14d531392dd4e185ecb5e55cdb058dd7502943aafcedab84b336cbd3f58ffed6136dcffa45208f9c6c6024393b8aac4bb7aee8887e7190ee4a0ea83fbc7fd68de93977e4da7a223293c23a2ce222bd977319bc074ebdbbd62da4e39a79ff5789253285482b3c7a8652780841d69bb638361ee7564d9361b8ca893e02fbbc98f1488e44e698429170bed9cee6df36d1fe686afe17939285d561151d6903385be4442b656d3e55f18674214d74c449773ba30890b23ea5b34e0205ca43107bfa0422f3768129f7886b165dab1a6c82ffa1f9b76f79711af2cd7aff608f4cdf978a1a20eb39a817ed149344b9792862d05cdfa3c099d726f2b92e8b6868743412259d4ba107113f46811acbee28bcb8dced3ba187f25484d16e486983dacb7386736f411218d069f01a0b2c720fb939c296617cb5e2222fb86a79ec6b2be225b632eb441b3d86971c656f74af339eb36906dbd92085183e16c8743bbce80a2702e3298af8b4cd5e695c0e0ea1ced172ff4ee9c30d69684f746d40992b1b60b51df8af79aba111f965e102769d49012758be5f4864844bea97d190cff0905d78393f989c57643fd6ccad4810e6bc334329838df86e1983d2a9053045faed9cf8638e399d435e6088a1b251938a03ca09c48b071367646621867160b1efc81017f7e926a4be2d290c32d9e60af047020fbc52a11203e471f55effe251193d6a2dc336e46e771b301f479a901588d81ca64a176bf03db50e3b3ef711b1814a5fa28d45758da5550e707e9f1433d632f1bce9e90055ea4b0a3fc90999cdce4d7dc517e47c8280146aa268006b0522b73be21ddd4b1d702ee882115d843bf73fe3432868e8ffe11be02f7d2b2771b36147ea644d0b5da75e3601502898408d97e3dfb75fc35e6f6d403d0434e924634f462aa16b811bccd24bf6dce1aed87767c7545c51f8048060ab335ad34f35aad21cffd8669937ad5431799efca307840cc7c6998f71ea452475927b574ada5cd824edf261de11542216105df44f64a06e8c479d7d5d75950ef3d1749d33cdf97d8dfd3ac27a64a0463bbfeaf5bb4e4bc0e82f447b50e70956f7f75b5fdd28ac5fbf3565943c927eced29ce890389be21c0b7e85ec5478eac64b689e60e2cfae54c0ae24df65ae5df594e54176be49e9e7b1c50bc738b19c4b3a5ac303a89fc253a13f8806b84369a6cd418a74440213dea6089c4d7b309da7c20e02e04f28fdd90164c6027b20d239cf847d8161a542b778063e6a75215344c83b127f8a5c45d1120bea6fbc3cf85903b3b07ccbaeba6d0b27b9554316fcb9925b0e45a6be3cb43cd1a5be365cfd75fc968ae7b47397c862e32a8d4db054f405f93f9787b363d9502c0ce397bccdfd4ad08f7a897c53273d00122d551173111cebae7b5cfb921a524ae27fec1f39e228d118274d36800aaf16e5945495310c6cd72ab442df19b36466530f67db9bfd8d5395914e12a63a33d51f7bd839fef0700a3734982a7ff3f9bf3ebd49c5374fb6181cabc3c1928691c5b5406bb30b4e5a4902b3933fe30ca4ed02e207d3012656fbc6d46cd3daeb3415c4a4a999ae6fcaaff2c8ce65275dd5f52a9ec6710e8ec1fd066eceddbedf276e5c7c83ddd9db170897cda4a3f65a82cbd9caa6c1e06cbec3fe53ddb71ff82017ed86f7efded20bfef2bf017d47fe25d16a97fb1dc4224a8dafab4bc199f6503ea12302a8c3b51e440c2b20e194827adae1f20766f1b6d49d8e664eebb53dfd79815ca5b97e801276addb99316ace0dbb61e17498215b87baf31853eea78ef0a3de37e272e6fdb4e8589e7be9ab6e6df2808ced61a66ec0a977577b531615767caa0b6464e65ac8395d74829a9364aca222ca12f812ba926065890632ea72b4cbac44ed0328d7f01d193b3f75c2ea4784ffaac2331cdfffdb0fb24134dcff6d32dbb7f5af5abd1c3bd0f1c22e8aaa06a3b3ceaed6010482cc10441f59b1374ad6dc8c47a609dfeec6b569d8ce138decc28baf7a52f85504fa13a3495600cd62f6b29ad0ed57cfb2e98c159ef0408d3742ccf441fffa00430fe0279cd5a49fdd9c552bbfde8c0dbe1dd5db487d6c8061332e17f735bfc3bb378ebd30cf0f4f9467446fdaf6a1e4e28dc3353406ce645d59f4b363c676799ae6ca110ead8558ea91a144980ae3baee5ba8ac6349d0cb3018c49d5c518a2368fb8eadc7282c009f1429d5f9babbc2b578cce1616c3eba1f7db14f6ca3ebd0de73c6b42af9f476cf535b6a84d54b2f7c16793e94b1f84abb72384808f364d404613d8d8dd5b87a1dad39594fba46c3dd482248f5df9711257325a60a2cb7e1d3475214d5462d4c9eb59fcc74719de1f627899977538a39ccb2bfadcfde36052b700ae10554729a69a6dde49ffd59397b0d8245bde67581e481e3233b35d228a1603cd00aaf1e3141eb965a41061d634b914369d826d692135069b04d30e2e778d7bcf34511cfc6bc6cce748ae27410caff53692f0d501e80ec5d3d4ce3e5304f2e273894ecfa7a13e9fe6e340b0200a35d6d22a51ff88a15b76860b6c852004e9e385d24f002e34f1f5529ed2ed8added18824975d87d758d1b10ad35f5d7dd667dc117f9b44e30c3cfe42c977281e300a0ce7f6e7d9a527cafa1b49ab33e5d83ceb79393a56c8bf018f73bdb458fd15268d8707e5efb1e96d95977d9e417dea3fccc2241f7ce2c4f76b8b2ada3bc76de73f7f4f0133176ec55ded3e7de8e065d7d6b037c736d8d1020ef6cdfd294fad21dc024f0da62e8280cc2f9d46a038956f4576cb2af04b34e080f94beb4c2999a68301dfb2efb05f178a3cb45edfa8962c7c643098cebbcd51c80066d7fd6342b12a6840047173d8ab12d3f302843504189cc70f5d51ae234c3d6f6f9f19ec634bf14154161710eace9b102deb57b91f6a0d77d7aaeeb49b7d3848c8fe2df8bbfe8cad06aecad20ec3bc28a394b1a740cb4ba9c74eb40423eddb8cdeb823a915502f77b076dffdb1f824c4ab014f4ab7ecb9179a4c591f7efa24c74af21b9748eecfabfc00b42bd1da297f4607ae9186bdab1eb9c2298e48c735662b1fb601e0606fe598d93dc173fd53d43716369863aab58697b0dbd74e3e3ba5c4ccf0d3850236537f839a96c1027cb871ce72808e2592dd132c22b4ec7af153b1384a589bec8038cc1087cb2f5e65f5618c1240eaaa56d53e161f62def392572274c5dd2bb8e45f47e3a5837ae4a7431c09213fd2e131efb77d979eb44b39bc27daee37f5021d51c33f1bc8bef6a1f3ea4f6955ed3fd4576b6d87517e61eb67c8baeb0e6eec9df825aea765c9ab9e00a29d917e6a9a33e7e92e1c18d1ad5f249a77f32e573077c3b614cdb8ebad94c828f0b757ee3eb2ec80978fbd95f10dcee8950f557dcb283fb0f52c78252f7f50689683cd2b4ef06956cf4aacf472d9af620a0e8a1d4619cc8fe55df190bc640c4ff69a5675d9e85df5afc25ffbf2ac7da79707f85bb92ee21429dd566c61f324e7ef26c9b1b92d8beafd975fa25d2bca704ea7f927c12acd896ff0aa2b5578bf30e898e6e68ab6b661a1a5178eee104621d31916b50bbc8d206908c0d8d9d2aa7b413c4dfc66c04c58b06f04876eecb4d983d33b5a9cf10a657fd8c3d7ba2a4277002424f0a5ca8a0cac331a1ce1aa7a53c25d0bf5f08bebf77159320d73841638dfe1a39ead2cde6f8dd20bb1f6c321dc1390eb0c86afca092e81857abf5bfd3544d58a4180b09d8fdbbabe66fe63db76207d06b35543702f29fe2eb5ca358e6f4e295de76a89e93e88f9259ede7dcdd1a9f8e942e2c0c9642f2c09d8249384a8139c5837d5aac23d9b0ebf3f76acbdd4d6f24177aa8d1a9feace8f7044e8c2a8b15635a4d4c10fdf5139f6da28e9b4c8b1977a2ea14c5357fe98bcc690bb5e2fcf0acbd6e3866b2b238aa6144b9f575eb42ef2f20af3256080ed4251d5d172a6df176e408d6c41679325a9761e63e001276e243fd2f737827b5b814f09864817a46978f0b91d5b137da1e0d1f44721a66e14c1f3170eaeb874f976cb3993d5f69da27371ec87b29c475c664d489e802e087fa5e5e628406c7476d667f2c927341354d2f7de2929ccb7e0e095d4671f8ab3f951aae0267efff60fc0394d6aea071b1ec7e1538560d9800b43fa9cc60782384034e629c527859f7cdb36f7e70a33c025d17d21b8c94f75014c06007e01cb8df5029bc738c7b62bfd6be066ec18d4a279460100ea68eb860a71f5597ffacf3dd239cc7bfcd15af4eed6b2c06e8406e9dff6c4e1bb6b40a84d63d67268b077458c0678dbdc3c474c66a914e9bd8195f5b9cdf9383132c485ce15ec34a1bac7744b0722035aad0cc1e2bb4d39735e9e857b1f86c2b1478f02b37f029ed825e6b7cdfa490fbd9c4495456d3f4130a1b05d302d57a1ef906455f7e5d699e14ac2a89b1170f6d0d331ee9cce69014d08d80ead5c44c317f4812ffb30ab638f1462337b2902b2fbb6d2a632cd0b08358317664fd4983aaf534abcc6f1e1e5ae54c7145f0106cffc8b7bbf887e7e4f5fd43d66198e5662ba8aebd06b1d452ca4a822a708776474a06547e6cd3f985c52f6a313dbd1deb0f39949825c1d0d29c0572e0563740f27b2482be718ba060373aa49785ec732bed3f8afbb4a7ae87c3f053678dda69806698f250b9a1811ae4a9fad01aed3734a51d5307cf3dd4d749bcc9e189fd94ef48705f28c62a70d0086d8d679791f8568035b36574ad4e62d796c7d7fb171278251caec37e7c7ad6f8c2ed21d0ca198fa126e02b000c44adc99e5667d21ec2376aac46b0092be19d5b32049b70530531a77e3271f8b22ab7370f5db9f4d17943273a27eb4be306ddd4189757cb9b3dac3c93bde1d692616f5b479445c4465cd3263c5ef5d311665ab3e6b234264a2a4c0c7820e54208225ca1671f2550c8301698b1f7c8fd4bb0e8a7e9ef6cf1819bd233e4935bec429c49fef26751440f7faa8ab48925ace206d650628e0d0f456af3041afe6e587e0288b745c4084b59e2998b6232fd4e51e47342072e751befc04b76c340810c2d17bf270fa8efe085afc64c9d29aef2fbcf8ffb7fb534925ca9d62b470dc6b422fa82d242da32e82e49da69c6a137fe146818872de5fabd62090a3d14cca37da7d1fd6f51b8e10bafd7d36835881795211e19d6d229ac9276fd3f7de087370178d1074dfb95497d63b635456f73b7cfce63fc3ed353fc6e01b5739a0cae35721ce25f4ee1be7421ec81b3d6d61626e45229e0f60ec84fab9881960640abd0ee5e3ba1ce2859c74e9e715dbdedd22b1906fc7f2230253308cf5a77ab192e411a9f5d92744984c2aae5186de78b5720f73ed61a04bad409de3c875141c11a4c48d92aa36bab181be6b0fcfc5eb3eb2c7b302ab1f03792b41b9c4c4efee825e6da4c1c17d469e024180f3ecf0c008f908c8d5b3eea62168f0b4069d9b06d8f32a726d136e4b72de74c3c8c944c174f1a024e06fbed70a4dd977fe58095683275cc9a049d4f728eb6291e0b4b376a1a0fc41e41fde1f4ea3fe96b5cb76f893a4849c46a977c983218fbfc1bdae560a755dba4848f88fdd0b9a2a5eb1dd244af26e716697b06ae2de5675a459acf33560cde4148f047860fc7032154ec0af01a3987e195404077c3be6e9f0e89c82b5398ee63b59ad0d13999e34ef8c12b755974302bfd62328d6630928dec77ff0362737dc10704a71a2838f74888915df825927a547b1b0d213ff6bd35b69c3a6f9dbcc656644de77d53ceafec3df55e36388d78de57008b3c5455853f367b61448bf3e991618fb8d34c34482444e3db31ec7e6851b43db88fb05f9c729893960d2736e6ece9f64ccd5d370bc6622777e094dbc7edcaa8e6e1f7616227074d856ba40aa764132be9b91b77b837187e40effbe57d58a5e7c197b4944260e1b6c71f0fa208ed9650f7c1ce802b9a52c65f1762b05845bc8873370ace1fb1bf487d3e1a548d4193602a9b4a7b585a7986fd679670c33810cd0580e1ea846710905046e9a26eb8f369e3c203dc1f62ad62d39d0877a13614902d11269950233d94ecc8abbf8aa970afd043ce0c4e1e4348193c0f8550283ba99df19c3ff371fa338a3f6c73f5568c098733786cadfa4cc4db226ae7b887b3a922d4ba1af049f9fc771cf911adaa4df1bc3f71b89eedca9fa542fa4a1e03702f412266382e1dc6015646ce1b5e4e9e34405be3c66cf5880b69b0feb748d9dbfeed833a54cae1ab0dffd60ea9ca405d257194d5cda121cb80902c725d2abcd01f04fea20cd7db9ccf36451a022d03a5d9160a6484b7113ce5f0d93ee9c32a4eebe431c98af9694457a6bd6cb5f905312330a62f922f3f312baf86ea479fdc0f6780a51bceddc4d5ef6dfec0b45b60b539d86cf63c451ec48157aff7e3d7167322a169909e16323c5a4e0306f6e318ba2431f75f79d02a91d28635bdf7ccfdca4975e6f45cf02a0b4964d823f2f295876965df25e9dbbbaea43f9ace80a4174121b60a908de2d644fd9277d00acda0ad8a1426eed9c8ae59399d4dc351f2cf1eb3dae4be11795f6e23d0387ede66aa85208e0bff3802538a16afdfd0b63f643dad1734fee58e0e0221f5bd0b0481f60becf980b3b247cf3a877d56f0a4b34d37ec19a76d0206e9da973024b5a4c8177f4ee13987841b3eca701a7a0c7eb756bd7f99d85738204860b5ee44495a867ea3b077408621ae10f9c0b17fe99e3f5c9aa582faf886ef372f16d8d3d15c77221a347cd11bd5472df48bc70ff0a8179b10026629c5112730e5c4737aaf0fadb6dcb6f08cae688d73ff103ce4dc0a73f17c0bdb665e0cd1f44d642b3dafb37cc7c1689cdc34bdc7653349f4f86595e0641a104edbda8e855ce86116b3627d5822ac65587a6fb6ae01c7a952bb54911449d3fdb0c0468fa689ebe64e33825fd0c61ca02e33825d669ef77abbf4f5503af22298d66cf31a02032652ece102381c70d791e0ecc8084eec8e922af72aa546e98ad67170f7ff1bed811615242ef920b1783108e347a30f45dd57cfc5ead74d624821107b8dcf4c37fc30844da3a7636e0b76cfaf0e0483661bd52323555e8952292d15617f30090d5a6ea40719f63a56b56d44e43efb0d3811ebebe27f1feabcca731c43f20422835a62d3965ceac1364a665d1f5a92e626fc22a987e2c7024b1a95c098921b9cdc7b2a9449d8656f08ae3ff1c6e19075f68a4bbd8ac808ac5c68074b41c71c1c7c1e5b63c31e1162d40a75da25314016e73cc19950b906133d73d7edf131020d5c4648bf56085af395b4cbf6771a9922e5d7c25005ef014136a472555bf851e46c7f949006adb05a5779e92a7067e6a817c55af37edfce3646bed046eda4480bc3cc9fb8c5e7c5d79092993efd22959e6cea9b458b76683887a02ae40cb1b96a5f113712b9b98ece44695cbb7405092887f231f92aac93540f0e47174ef73038a3005f36ed65fbdcafd53b766a6eeb1d147a134de426a8da6c498315f85fd46ca95986d1ae83d972115063959a20894d4083fcc47942cf21e509e04d681b936619d2926264391bdc1cec126706483984b75f3afcdd95662bc8bc2f6b98057211e93431a7afbd643b5440647929bfef4faea610cb366a7b30e4cb842ad6cd7249165c3f5453ee12630c4085afd7978fe6e8b9c6a0c68f3118eb983e5127106541cd11d8c03cfb00b7a08bc4a5beda49cde349e6d07cd185b44e872e560ff5b65056353c5ad94fd4a4339d822fc8b7c68c5180a45388ec96a6c7fb568c97d2aa495f88c917e221071cff2b5cf4b113285dff0ea2bfdeeb8953a213f2d9e7ef640a81dd33f70486295e464d0009e82e073a3b121761dece82c85b58c210f98ea3fe192f25f964483913ef0cbf856cecba3ac1639b90b05b3bc67d1d3d984ac506793ab2c989c1bd957eb0378b5556b5e19575ab390f5a0216201ee47f0232fe357d9c99aa25b33ed9ebc2c4f634eb4617312c6bde136bbf10cf3e22467d5b555a1d8c7f54dee43c35fe619401ebd67bb7eec714fc03656319364c79d574cd0268e3049eb20104d4c35ddce90fcab19d2238b49fb14a32aab750889fbcd8031a0fea3f47105020e295b055cf8ad788633998daef381a49adf1e5f8dc498fbd629a69c5ab87bf42a06a36c8942848100fe847bbcfc31f0f691d22e289996d2bde115ea8acfe9ceaaff34e1111c2f702be699f4ef744c415389c641807e28eea864fec79423d7e075a8a132253c5edfb924e073dbe9a302e0a68d070fa35846dfcc49c7889cc083eaf8838d864f9b5f4398e6a4d70d3a61dd6ee588d44d8d024b8ff3a68b0cbdd946c2d3d239cdc56f5977fb461084fc0a7a096e89a400f835369ae2279d4db45af33341863a68d9cfec62f1f2990412a0506bab338ed7921659f5c48e96e363d9b8301c4ccf7d6d6b122311a092d4d528d8dada5e2b47873459e0d5653292293835b4ebb10eb3c5b98a47e8526c6a0de49264abfff68d68cb5128dc69f54ebb2ea2f8cd42e43d73cef029ecf17c3fdf64327ddf88a7b4073a05467f3bf4420ac53a6bc5ffe35d9a448fc3d21cafc07e68bd708e05e13d52a71469016bf9d0e259bcd2f8c55dfba71c0fcd774d7aa88f888b7c0d5374a785a1a0243f63e32bb77fa3378b63fbc8dbcbcf72388084dbe64653bdb37aee48f493cb3ecd5093d62173fc8177df4694b0d0c496b8988aed6fda5a2c9ffb5dce85220b874af09c8b670b777ebfb46ba4125e44bcb22661cc95374b861924cd7f07c9646f110e9fd6e170f5453eb52b72a8cbdd33428dfc276506aa531173920ca755c19734f06d8ebe3801d0e777f04d172f91752542cf9816de7b571547729e16bfb5b11af19b692ee3612e16cb46beeb6669eb4682e781b8dc5bca4dcd648911f38788bd85c6cecd3953a7ef73245e5721411c690bc65a0888ca5793aa7b570810cf6ea6a946bfc865a8b65ca81727b320169e1b62aa3ac24f03e67687554fe95dc668890089865ec474659a02ef132bd88eb92dbe627d6920aca8f8f536fe8b7e815e4cf07988dc3ad6668f498cc3f597fe91c8460e0353c818ad97df6669d35161882651fe57aab7067095529c8165c406c8c4a8a664b8fc8f81abc245f8139f6f23dd32c7915de53ad190ef31f48ad033b98e1104af663e50850f49106d62777399b3ba29c893a3511bdf24bcfa62150f5d13ed239baa656d60fb1cd002775b51837e8dd413dd4f5468c48acb0bf28d5c3032f5709f88aac17058eecfb5459c57867785197c69c6de4dba409a65da742d89a7f96f7d5273fc258f067eab6617d4ce39a3684967753818e65f54d42fc40cb838b479a41c309b590ad8772e41d61bec2ce71be9e620e57897a3acc7e37ad423122a4cc676855ce0fc39606c03d284613b474c4ece6927329e03539dff9c5d721a02d630d441ff98bf5054bf3f81e9ce27b81263d54fbf59331b5d896664e97ad65fb0de38d1e57b8c6eff57ac1fae1f073d0341da894075a0bf24e5e49e911190bcfc8490abfa4744e6362d33ea416abdd053ecfafeeadcf6c49c2523bcf6acf607973d8705d4e224dda2193105eae9a6c7f82edd4a9aa63f812ccde34528b7ce74e75ad830b5fba5541574f91ff46a41438b13bc31bd829110592b65aabb257cad271e3b93b51028d1bc65b0a8b5d00b1f0600dc8debdddb524d4e99ca72b674afb00477bf232e80047564cf21afff760cb178579f9b170c7f4a84c2aa7ed81a159a8eb4fcb498b490d50673ba761ae597166d5f6b051b68f5c742c7a2f4366f34faec8ed26f339b29147ee92bff60b1767810d6498ad57493c218975a74a2fdfe3b60106189b4ca39d2dc85c21d3788a5dde309d98c2ad2ed8941fca7c795b97b52f7ed9f46948d6e96e975cf946c193cf769d59f1fc9020070fbeb9c29859b04050059bc4eb0fdab74320967a67eade87fe8df635bed7fab801ea01b48ec474142bc7fbb5ebf3e38b33cc217d71ebbd63a1f2e00e961f126b3c433a83b433c48accbe4832ad51c14954703325037afbcba43ad71a45a1197cc5214e4e01bfe22fabed5a9cc9b3bbafc36e120ccb433b5113a83b6d34080cc71639df0cb2b82cba481a68fb9b90c8620477eb99431ec0bbf7cf5a4f07810d9fbd3ad021106efaad52ab26f577ab8a18d8267f6aefe636eb228ab030911d5552a96fffb68f13036582ab18026e617f3a626d95941756a4616d7480d7cc3975c5af6f41b2abb54d44864a0a0911778128e5c0679d8ca130a0985531f16b00d72141e8868ba0bfa16647b923846887008b4cb08e62398b97aa62e6321a83b3b23fb2290ec4d8521df56e12eb10c962e2f508e620fee83501e6bbe304992caac1403d05112d35cdda7e666efbd909230e9a14671a262a42a03a20c372ecc0fae79c8adebe6b00a21840d19e0a85f9797137a2caa556fbabd6f6066e28c519cea3e36b6dd4d6d25334040ee1e84fb9481aa209f086ec096e686491b9e16f5dee017036a83a6bc80616c1fb43133d7ab1f0e1f96ef6d64bc3204ef65b7831c17e2c3f98da154733ae41c0b9915e15311555cdba1468b255640337e1d9d9cadc791d9cbb9d6e74b9338b5a00cb4c7e99ac9a749f2730ad4208adf54947cc566551db75ffcdec879f8dc18cc30e5e9778096f75edece0a845fc71efe2a0a2dc1518dc1f2b02ff13d45d84a5aecaa92019844eeab84ea5e4eaae17fb39f56b4e333de06d2b68b4461666ed430560a0b7270a0d5662a46529888d31e582ee7ec50c9f7406c2ecb4cd9e570577786c4395c31dfc6fca2609793585c738379770006eaf0a28773f431ed4a573f902be6e4ca543405d038bc09ca468b0e2ee4888bdfeabbf3dfa94923662adce8f6326944b3533f0af8040d6aa1cbaf70e8c242c1ffbf51d303cafdcda4b25b5253daf655a836576880cd156f43232c87e6f5ea0b91192b943d55065b8ecc1c8a6ba0602acd24b36e58c128f509fc1737232fb5df552c0a3dbc2acad08c9b9ef6f2758b09ae21becc381565f6baeea53a24be31c9b9600a49fb0767b24c9c58accb348918aeda537a4290fbd5bc7ff2ce0af252bbce31e74d5bee9702db8324204832b7b10b5af671d3b6bbd1c0ab9ecc19099ee39249e5a69120f61d125c796a5bb02af64d338bb373298cc6392d5f55c510d7118fc6f3730947c3dd898ac4b1fe3cd18b1944330325df93f8a2d83c952588c2561df96d4810a8e21e3099702719fc8f7292da4f4f70418b31c2c65b5706f94d34919983ac96517a2187e476fae716554a1e6ba83bd86ee6e79642217b6774b4fde4691935b2e46833b91e92a544c869581a283aba6565d2d05d997cc1e8f84c140ae28ec6482e54ba62fa1df4fb65605f05575826235eda64e210ef6138cd6ede0024e26ba13680476f751bf4f7d79281c128667885ed7c0e7e9ba7204ebe026b7cc265234ab8417ea8d574e522236d02486ca95f4e55e061079997ef2b3772d394d2f46d5ccd438c795d49af0d507391b53191fdfb5c245775f4fedeece00affc690d10eb9c86d568e2366fe328b6bd1e83dbc49fe5c0752bbb3522d3924dfcebb3b8c0291bb8dd249c98b636bb4da424d0566b143c5d7588e64fc9f2815923533ff496933f8e4ad9c6e18091dc689122629f2009672454fed849f7f1ed648ffc6ea88cd80dccdb9585905eb34fe37ad2dc739f029745c3048ced77aa5b93fe8c9f9a791201b9f09a735b9f6eae119a88f8ffff24b99095594649a5d3e1a25fc4cabb631a95afc389269b72fc9571bb069ae1428adeaf3cd4885227a3129e2e5a0b949eae71306ef15e3c1e2cd4a35154bb4a241dbb8008a9a475880f08df03fb6dafce7795e3309ee37a3280101c45239894280418ebfb4e6bbadcd4fc3bc26237e2eda47a80a90c1699b7c11c263967bf60cd860014b9e0e2ce023b8b93e528e7774cdb1ebb21f0a769c9eee72874b39d46daf9bacae8bf7a0eb85e877c5a19538f1dc37d2390f4618e371d32921f09f53326089dbd0c7e5c41af0dd45fb9cf465e6b8d3e9fba381163fdc6878b5ac307042f7256dacb18cae224474900fdf8ad1cbdb2e03eaaa68cf7df12ef02559910d4059f9706599c832c06446cbf484cecd9c396033becd059aa2bf8b98a6d6b9fb4acdd0981b1ed2018236e0cd209229fa6230caa5c86113a6bfe1f5b3da541b354bea1d13b0e6f2e3f2f6fd6876b74af81c0fedcec093121d08fc6230852300b579e89e0a2a4e794dbe434f56311e0fd02571147383404383e44f61ee241f7c04ad24be5523fc2bca04ad4571241f2df9e589dfa23c80bb669548d54884cc4f2338e1d4371d975f660ea357a5beb7214bec2db1f3941a4f98ed493ac7347bbcdde07ad94421aa84237a180e9c45f90a77cf1f5fa9e60628014eb7cd074e6812559ed0fde72fb426a7fed8fb019cd4ec3425be327fef5945748a0ba4e4567ca936cb4b56935379a8523377dbf0d758a0c4b34b38f9d502dbdc4efee805b3993ebcf062f25c15e3d49e8e381538b16b095b3cdc5ac12ed4d91588031b93a8111a4da82078a03ea569197ae7157c00a0462660a99068557206cf00796afd25b57ac9c031b2904486fd2cabfbdf6310b40981e645b1d4abeb18c4a5ffe6185c95a48e708fa2bf7a4a7e1d6f292bbc2e5c8c340c70cf902e23d2819f8df6bb480f445a61397031e3a781041ab7c4daa55ea2723358a91a33091a44c760346e8d49404c9e719bc3d04f22e7fa7cde4c0f0f0e5bfa01c40043ba5134a1db52b7266403c9fad0fbdd91e421b6b4ed9a3abf5d456aaa99b1441c3f0843bd211b6e62fbe57ecebc7c69d9d34c4478a6fe588cc8fbbca6aef8d997e183785e2fa735b3c61e944818d8c9fc52a28d35a992334bdf25ee3a35d01d32e6bbde7a9606a62d10ced56574103e6cf8b044e19d541c197ec9eedc2f85c7bc77d2d78a099a250d6bfddbd232fbfc24c011e2af655ea7616308be3e49e4ad7e22710d55d2320a1b50417f8326be1ea4177bfaa7e836d144f7379fc243dce85c541367c27d283da57b906c101f0a7f8e75f4b14577fb1214eb46e4ed4ded92f5683ca8b410817c1fb4e98901813f4933c4e7991297c6195d687762fe46b835fd5b477a0238a972e3d1cfe882847896713d6cd9834e1011c98d34cb60d793d77588093e4fd714aad1d485c145b01d3e28052d558c413d943b402eded983f45fca92cda877de1fd782277809f634bb8eb52a83dd3d35995096688f1ea6d8653c98b997f55c6ea2539c1f63779de49087be29bc6071cc1aba954b41a050d29f804f028a1f98ad9ae81b7d6d33bd990ba822991458fd77291da7a34abc9a3651d090558e31c375fd209aae2de668706026a3f581d8947f9863ff7abbe8ca1edbaa66c3816606267ded3cd47a727cbf9e9960d80307eaa1bb7ea420ca31728273fad10ed71efa6466057d282caa7fe2de12e14e24f71e13160ae93c7a3d8c78ab32c5fd02c6991f89d7e7a9e665bcf7a4e38c2c8bc6d17a84e859c76ff13d073a2676e528a9970f8f8a73b2cd74bc978033c7e7f0d622fe2c1cfab9af1b027ae21626426eeed40923d73bb0562126f5e22339a537a700065f06275b4afb60ce673bbe2769ad129c7fbcb4f0d304ac15175348707b40a5fc6ab11b5cc5ee23aee919193e4746a6279f61c7dad42c18519b5ad8e68683eab01849541577e7b2cc27de4d522977267288b8abbbd2b5702bfcd69a148bf67693bbbf0719db10776580e82ee22f2f9a92fb183db12d531aba4e5f50370fd2a68bd128acf653e86ee602238fe1b2c98f0709cf9cba289fb928ce9bb1599edc72b2ffb4236ab0b5479d44f51fb2394347a1f95efae4f88e251c7b2a31d04a137e8ca937a8c0642f3a4db764a34dd1c048d3a3f8ac456ce763e3f5c14b639b8760026c1857bf754fede004da67a8445ee21ece4bb0fc0ae8d8d297e1218d479db1990832db19d72a8a58374753548682be7be40639664685ce2801bc9c9a1bf13f631208c826fcb9cb4965067c602f9cedb1dbeeec8bfec2d69534e922121d5104c5f7561d31aa9dd0e86dfa7d9dbbb5003a3faf406add8a68a81c5a75d1f730a03d2cc28be778f763c4b77e683603f025fb7d554198ce2453577a2f4553d888af784f262e4e170c3adc996e4e1fd7ae6f3cb0b6b936eb1d74b3cc53b33912600c7d34b4d50343b7561644e521882042e68ece1f4d3e42bed4989c09572222eb47abf049e81ffe0789d5cbe728b09477f5662591e632651f52fb1ca18383ec1c23547b2251452674f27a01bf5edc54cba765acd55c03d8f5893f52cd139600da248ff95257d1a5c1b384688b071eecbbf070c2b940acb2c60d5e7a3e7ac03253a5ef19d7f3fadf8d5d608533f3dfd8ce57f13f2681d162e2be4302269a873bfe648316bfaf306aa813a5805ef773cf5de97b48d99049dc78525fbc3f72c0082e7e03cd900d68002f1c87add89e153d4dc7c7e42bc405927b1b219323df36bc8b346fccd71bcd154bcad7fe4f2623c5a5f360d073a730cbc9319663771fb89aab7d6cc2921957d5cc850142f0644ec830ae1e503881c6061c499acb326c5bec829ff92979d8fc3515e074559ff2cd3e0a8190b0d1e71a31db035d18bdab4bb55a9da99c074a3dcb66f417de12455bb57a2c83f2e3092016a9ff0e7e9d098171f667f40f23c08da7b52eb00c5d4e2ff15f42e93d282ef02df10cfb0c624efde9555e282e85a145ffbe602b80d5872c958b567f2e705f58e0a3e5a17b6208f80fceab287ef42f79ca61a3b122b339388016c6500ef5bfaf379c5d49b45a9a10ad1916f47f692fc79365b84e76396f018d2dbb8d583803d077f1aa95a8c95f8ad6ce9c133fad4fc50d1b7744390014dfbded0625511f86da15a1da40ff39fa662c60cbf49b6ca8a482fb65b5dc0e378c72470dab58952b559e73400002b36d0f5b499eba92bb4cd7807b4c2ff4fee1ad038191b9b777580f53d26775a7460ef17b40a527b4b280d91f0cd38f4924f174ba9503c628a6430ec4b7ac0ef553468009dfcd7a30807f7cbb6f6ea8d9a9a3581d54cfcb45b8fd1e96ebc11e040796d4e8f77e1b05a74326129f675f95dc7e3d59f47004fbc27fb15c84fbe2bcc66945b5ca1761ec86c3c72a61aced7c93346c7745a4032a363f5d56fcbe3596392a024819bd94a2b9629d6760fe9cafb8be6e6122b705c6c6018bbac079584fe546b62e45bf44efdc62a98c99cc43aefd3d7afd24b861922b3c892fdfb2832b581c09b3c65619351988287d036145338d08a2aebe9a72c2c719ecff65f105ea3886966c040b42e030373174c26db0dab1599bdc22f6f83acdbf82a7b81c27f126cd02423cde2af62378789a1968afefbef94dbea830aaaa46cce4a296fc9ddf68ca5e497197d4606f02953da4b905a84965044eb778ee9ea543a2131a6a6b1f4d64b7ec738da27b9ecbc44fd02b1b49e284ced4f5225eb1eb77c85b38a67d8f1eb77185e5e6017c13557f3655a2dbfa998cf0f74836a33bf4124db2b2ccf38b244ba228915026dd737da86c0be3615a860035d5dab6b39dbfeae2c2c8ea8ce9ca844368a12a759f19476fbdbb02b573c977c0338900d47ea2a54d5393537401d9735bd207db55a6f360cb7aebfcdcc075dc49b11cfa256cb28d887b3aaeef770f1e3bc17e01c2112fa662ed1f9b7f84fa4e244118d0da19215285c6272fcae58324c39d43c20cd84f789dd86705ba8ba44c574c3162293683efc1cfe883d93a6ff6579d130822b199ce574513573012dbc0071549997db7dc6ca836bd9238970ffb91afba19727ff0634767d9a32b57802ceeab2887d8f692473d7a43f21c9dd03cd0f22226ce420b22b62f79c93188fe9ee46e1c1ff0f5821d93f062ea2a0da0588115d0530ccb306cc66f4aa63786a68b9e2b45d3297ed932f4d3eec3592e5256274403fff40ec31f766a99fdfd396f92bc080bfc659d2b91bef0a9de6b1f804281f4ba9d941c9445e0a3a282dfd6ba04cb94f827f581b456528a0616a300730433418023bbdee84a0b5a57540c8b54ce2be0f668727425382a4774b45e411b5bf1316f5c76f526e6150b5f96c03fe29378ddd8d1b303a5073689d4efb7ab221027b26684b38909368afd845e88753cc5ac7d3ece40dedad91537e1fc51bdccc5bc4042c11ec04ccbc4f3625388c4dae6e9f51214ef24807d45d75e1c0d0fb5c4c25102a9f84487527b02b7f2c1106f8a804066f284b5a01e4b2b516fa1b19c1300036b15e0ac130be1e1a6c2fab469e10f315eca45cac1b8c83194d4a9a2ba06af754e28ec0298a2004727aaf1a34c5cc60203de6d1dd9c900a654ebcd14099da02003058313a526fcfc1afb26e3a08e146611df1c0ac40c6a2bb8200c81d5b8d6f562ffe894009fc996bedbd176f1c14f9df333cff89bda05404f97055a17abe81f0b952a05aa2aefe0c3de7e8eb728c34ca1b75b7389d390199c17a7acbe1ea59f643ee302eea3cb8e4c3ffa43d7ab15ade5d09c22303e03f498e8f0f41f0bd70450824bc6ed247858ef61a026f2110a45a65a9d7fb76be06ee5082f9c68781ca546a8c150f95f11137d4d4a2bb73815733dbd1fa2c24991c6555229378056ceea0fef6cbb6ce66e4bc8897975d82234af184664bd6ea4d286d5bd35270e2dd5ad59d0edbe9cba6958563ee449e3208bd57db6eb5810556a1f6c150cbca901b42066dab6ff86b56927d263cb6d16d0d6b7c25618f4420ead04fb315ba740c091df2a05537d8a6d8b50ad8faf755b21dd1813059e3493a87bd4ab97a55eb11b28ad5ae3aeb4285121405dbf64527eae6dbaa8bbe669ca84a0e464c3549397480db3ad98ed6cea4d6d21372b898c9432823324667aaa8800feb6d4440efa255bb3dc57af875698aec023e35d37fd23721bfb747ba19dc8a9d31bfdbb7bd8d4a248027db4b65a0d32ac888e847bca00fc81289f6f59d52e3781da4fea4808e092e532a8f54666f75f860d4525004f8d9c7cbc16e3bd217db07000f765f0aeea74cc6f48a0e679ca881fd944875501f5638be3d3b2422f94e9cea1cf739e564662cef50417be9e7a7307959c1f5410a6715fb295b082efd42032e55c8f2eb673931743f780276a76be0757b5964d9bbfd8ee1f735456bf0659b2f3704a59fd8130f3b0b369681acb5d88dd47591b3b5759327f19e8f569f8704288b952f8642f4f36befa9879b972f11c24b61261b20b59ec3ed2a5e2a485ba0ecbf0957255bc8a84600a936edf36bbc175eea676eb49abc19d5f61c800add42cf59ffb12c2170e05f436415ee491532d54fc33fdcf4513313c185ed783a0efae66c549fd4092c150ce38f00be81714d958473faaf92bded6198401669f063edb5914f44ae3bd6c804f6e579bb80a373f18f93d6c935e36ee2bc8cbc4deb857a40c64befa8087c428552b7eaabfd099e7cf1b74eb9287844dc72a34eae3273a8f8d71414fac229226d90860a8b3a935622944137f54526bd58c1ca48c2c0ea4188147f961988b2bed27b56538899e789deeabb57fde59b0feba647c20f73bed9589491a040e5c34befe6d00c7639c6fe2ec6d481a6cec95ddfec23cceb71a02e2eafedecdd8cc452d788ae35016884089b5274526c1d77d90abb523df4ddcbecfd25a332734ddd8a4f46c695c256749712b98ac5a718f2b03dbc59b0a23bb6439d65ec60e5c253a0594b93cd63c39d51eef3f2082f61a4b856e84a0a88566db893b885bc0bf191df8fbbaf9561d777eaa41a7e4da5cc09898aa6907f4e01ce36c7086e344b62ea6f450a16f650780359196d29c5e4ff8a63920e6b08d0d34c9c53a45c436bc23cd895f8b105df71096af0c6cc2bc55ac13c84727006e2770f1e323f955d90ee9988f67bf212d1641ca7e4ce7710e7096aa3d75ca1714c14bca1aa3297f768be85c8114021635d8d80b0063d8559ae4be39e267e627cd75a315254259da8482226f0167c8e86bafbbc235d7d2d59a8e768d947bec90afceefc1208973e60aa499dea806aa991431cfee21783b7e764e83fbe9751eac42039fb16a495f0abcc03843e791c58ce0638c3364384583acffda4eb2530ccdfdcd908b097064b9e5c9c14956d30a117f10a2f08de1ae75cf45e8b34ed5b6c4cfc35bec452bba5c7ff6171d94bb8bbabc556cea318cf9b2b473e285b573ebbd9b9a14af70b767860e0005c5dc933012ca401a07bae6bf3d0990c3defaa9edf4ecac5e542f2a08d7bf80d916af068686f8027a1a5b34faee7cf1b7a17e8517e9f53127500c402df7b9a0600ba1d37c67bca14e51f1a6c872616b6d5f68b6c2f764505f084d76bb310d0c7f4ee85f7514bf9153d51e8a2b27f4aa4d9b9659dbf7dde11e8bf72250ace9438b1fdf6f095e85e2fa37f122ed99801a16eb93b7cf5fae3b306ef8a0ee8cebc8334cf852d6541eaf19e03a529947c13f47b903e61c57090899f62ecc7fbff88dfd5a87e66c0598535f7da2c6d2f30e232a61d79e8dab79361463174de8556e0af49aa4807d4ae29ce0891daaa9a9f75675581b6d32e794b790a22d59a5427a4bed281c49c7eb739db3934ca602f14401b89ab0ec4bdfa2e21d2e86b1af9b5e4da8e76e1f968094586e0b58d9a67c9cb2f2be10bdf5b1932f5fc7bb94dd26624a1b226edf80fbe8a5ab9de2a47a896a2044943a402420116997f74fb56747a1403bbd8a942ceb12b12fc05a2d5d5c752f6a38b50000787b06df8664e79cbf70be8056f4ac3b0e017661da1ab06b502c53acf7cf59780c483e2b23fa121b33769cfb5d245816a406db7a192b51b97976774b2733c12a4a503790e7f32756c7692f4976b9a276921841e83549d27745fb983fb102542997133ca79ab2df3b4dbfed02eaab6aa5bfdbcaba031bfce81e276049fec0385698000ce765e1b36fe4e946be24d4effe3130823d9a356700f63929be3cfb18199d7ea9c2bebf610912f38ed75dbdad60efd9006aae3fb408fcebb17f6000f4f53fcd0273dd63d48badd56730a726ec5a95657449af2e5d4aa7f7d1860300661000a61eab5691669abe99b5435b1930fa0ba526812fd8af75481fe6d48f7c8cb64e7dc95e450ffabc317bd253b12c80d5fb682d046fbf4803a5c78ca8050d3131292b4792ae125e464ab6e3f67534f7c18b358b6e46e52dc001bd7cd902b79370e0348d1c45a02896b66decf194fcfaa1d8c239408bd7035ac98b0cde669c51c0e76db3ca153a00f889fb92332b39dd4ae71504022f6c60b3464e1bd20919a8c912315ec4ecea812f4ebcd5afa754757c6f5d3366548fbbfc0cca95ca270deba6405180c0a14890510196c281bfcbf5f11da8f4ea3875c5b6ece015397ee325bdd4e14230cdab8df90f517b0d4d1d3e1b1a46aa31e1417cbb97fdaf18ca7b532bf674f9da509edf93b824b74a853e11c84ee1ce8bbbad5f660b27f12cde400c005a1b5a85077b854d3927dff4665cd0145bac591d9ba93aa3424d61229fd83b333d1d2d6eeb904c2a3c2c612160de9f8d76539679c21eef5c13a6d756158fb3ea43743a98e2b4ad40152bd2b3aa6f48aefabcca46c9ba07d7c37930ca71ef59487a5b44ced40cdbea49b49c633b77a63f0cd2449adbdfad89b012c236dd975551b50976df1ef2d6d38861c768e5c73850fa508e9362aacff6cd69432c33b925fb2b260c8f9a6982fed661730d531d11783db3339d8bcc8fdecea9c9db22c9edbcc3002866218722a69d58a16e421b31284ae70e3cc23839607b97bba9df229e30584f6e82c97caf97b2a72745ffe7a57dd496758790651f22ee1c5262ff70d9abb923b08959c2bdeed34b5ee87151f684181ffd5abd9ecd393f5f3dbd660f2a6d3095a684a0cce149212f2de9528c589976b72062e0da2ae8716ac6cebc183abe011618538c0b912409eeea7bf2ea9aa6c2f9360a8ec55a6c0b6fe2f241b547b4fec247e2659501366dab5039b98a066558287bedaf084774220c584a3e17640f10c03941949699cd6b63b809818859a55320630d6f4ba9a0233c8994e6bf1bc7e317e18c1a54c78a2f9c4629d02761c6f8dabce3bfd7420d4bafa2fd98b087a587307e3a327fe0afefbb8ee2d876440d8ad0f297e020444311e7b832f1bcf4d24c875a173d5dff7fc94bde203e552b48ea93e7616b1a23d87df7d069fd624bc1bc2f5f69ffc12fc93d434606d58d0aa1ab8adaf746d846fcf205d53e2d6ae251ebd3b9db2280e565a78941a943a341550d12793f9d00aece68607db607a47ed64378373f10581cdd2123e75a2f17e1a25f0ca321e5e905d8be435144d889f8ac2e06763d4acde3611168d40c329a634184d0d5441f730142297ddaa12fb4ec04f09cb31824ca6e9cd81b73129ea37f698615400182c5486bf63552da89310bcaace41504954edf0cd5808e808a6857e401754dc73bd458a189353ded55b75078fc24cc6969e95672a47bc3f921cd7cec0348e10ac3dc9e9b68b68f9f8cf268a411173b6131bd6acbe7d37458d12670161f200674ed1219564e0743e8a619edf3329735160ec06901ac7504d9ca97127368667f2881275f9ef9253eb8d8228c92c2fd594bb97f7fdf4c8f215d7b165f971e3d0d1f425d14415288ff84259d5573307150333db967e3a54f34657c883920592a4aa57708a5181c33d107d8def125ba6a97515381ba8ea7bedecec44d71771a7b7975dd9ce4d5ce6a8662926d16be7128913e5e5d5d8830e3883134b6a0711a9bdf6ef6cd7c7bb1e3a3e2425bafc8d3b88fb7947514218878069fd65fb34eef1439d49111990928d0c5214e34ad1a2f1b940f108c6344fd11751ad33cf73679de1701c4cad24c32c3c272517fa902900db0fc75d968b008acd1c83ac339396addeda54e534e7f9504936522962895a9ba9139ddf22de9c45b15bf5a97a8bcd9bbc42bc17961e587bb7c5d9afc811e8a775a8f3c7d4be5a0e7bae370e559b8a50b24678cc9fdf3f2b905ea7dbac6fd71f59341cae949c5a89db95272312ca72c007afc5efeace2d4d21503bf85257821665fb7ba2a59e8fcf28927c966809887e7d5d72c239b245d45a84ea4524f4ebfb695233a54f6f6c5dae003345b8c6035a87762e98b9a37f8782b149d6b0658f763a96c7a8cfdb64831012bbeaceb822f6413fa2c940f63e1319ca2e66384a7de0c513ea3385be854201a74b67088b5ebe2d6a62c27aeb2fe0aa8b3056f1b81670691d49adb3ae39b092953db330a692da9cb3edddf1710b956d34f208a68a69784c553f4715385c7c72508d276c3c3d5b5516694cdf3e5307239a6942b7d2c93bffdcac84cde3bdc1c0ed455922ddf56db5e8507807109d4ec5142c715659bd7fa9e528c129d640dadd906092e5894475c49a3a1c170c103766972cdab59b8dd218f36c018fd8feae01c59e979af5a21ca015a947ee17a2b97f1c6194734cfbe132c98ad04c39e225ec12eda77838b800b12f67ad56f266e767942b6f621eab75e12da3e521f8c0193834f289b2156af7ccc473c820e27829420785987b8276810da25444b9ed7c9f7f734359f14a70a3595b509529708f4516010c88aa70c1d51d7d0b4f2e2d47c2cc802e21044b9546324ec160ef2595cb37d9f62fff24b2cf57dbd5d319e5c42e2880d5b70d8b17e1288dbc11a3050fae4a5e586574c7a8a02e75d322a4266693941414101d18c9c2d8262209d1b82e2d30f35384e40eb34fe76913358289a2f304c6fdc671a4a504b4448f1fd29942c148e92b8318deeb767fabd60822113e575ee664ff09a1873aed8f7a495793cfb7b5a504015f3a9074c641e7371b250d867d751d90e4a22a8ac17fced3d50affc4998b97bb644acb07c55a4dade3bdcb89f6f82d6c24c305d68858b3dce88e1c5e6fbbaa4b78e68571619e67254f32655dad584b5a8ea5ffaaf8321e09292366e8fadfeb16e310bfffe0a06c31ab1c80f1a99d8945811fb2c426289e16dd053faca16150492e943a43c83e6b3069531dd498ef15dc612fb2051b88f7da83afc5764a3378f017c826ab55382386c5e477c8c8d34ff026cc9e02cff10f2a23bdb867644cd4a20815b7d8be14902b594bb6e30a81ea159aa5c67f24212c92cbab6c4de0767e791f4b0ec314a4e7db00ac64588f1350c2fed0a794fe8d988277d5ef8d4c35abae00f459017d39a7b0c3467752717f3d090f771492d139ac83743c5d8ace951e06511667472b6f2ab2b49d549684ff3724ee08c6d83c221330bf3050de85a124712e8d11e80e59e7a2ba4d60c213ef7fb6b97416915a8b8c3aea48c6aae3ada79a380fa4505b1a58e9547222402b88c7c8dd09f2837e889308c5c4b2a683eeba8cdb9c0b6a2c45bc0159cd41370156c538db4935d8e1a00c4293839381baa681b9b6b5d5a452b811ea05879df0db296216587451eaf162e9e16a8fa8d273280f282bf9e810f00ad9905977161dec3f103ef789892ceec8c453e1398ff487485f1e1b56fa1f4199272288f9984956b9f6b33e56a88544bf87093284d9f7be8ebdfbc054e736da7f0770d3b1a3ac5647cf5e39246ca6b8421f6a0868fbb3949fbeb7daa963d8d329aea4a1a92b3ffa437d8561007321f68d161f6dfe0d19c46b783e6c367dde74554ef3466be58678c85a59de5f59a8b6153d75ad994a1a24c4f5159937807e516d34ea81fe5ceb642bf258ebb872bf3092b655add9262d1950e9a445396367f41bbe919ac90a6d5f1c84aaefef8301e1e3e5277b78ec155bb9a4ede6e995e1cad2842fee4a01f91827dd875e37c5d37a3990d15cd64e2fa78e063917dd0ce48e7875fc4271c15cc90a85d8956d95ee511ed3329b16535b6df9e89c7df515e26be18233fa863091752014b93de171f920840fc7964ed4455c37bc5982303b58c96b9ea7d446f76387856b9fb468c0d2d3c95dd96bc688c8b66ab62a09ed42e8793c82edbf4a18ba4362891f1ed91026933e1a6c8cedf1ea2ff2d3576a20f87dadca8b45de4b29c812d39caca1a2498e207bcd39ebe0be91b8a175cabbe3b9b1ca9cc2eab3588d122c15eeb2b8680b21cea785052f59742d3212491166ef8657026f2bb2db3331cb397a6d16e696620137c008471ce23ced65a437336762b4e795389f5bcb26461e5c940624567f0f880eaa53082ff6309b4477d655ddd2c5657e83a0761700d6706f012c7365f310a6b0a6696936a106d69ae18801e22b5642bdc9ed3ec44ba4f8e858fd298fdaa07693c58e5d49cbfe4b4950f42906d3f5d7be263ff12e68abd5ac9e98fec24d75cc8d570b09d5fbfd59e11c1ed5a65c98b7dc8a70bc0658eb8bc0d34bbbd55a9f53ed801140d47f6ab4c08e41f8ec3bab0428999e00f5c5f967fcc00bb4f7531d512d8bffb92112b0c0cdd010647597ad419ce1321a1a7a9f6844018121b455029cfc01b9c226d38b7f10a83ea984c7f2af92d7b6198e82e97f29b163d2a4fd0b453ec26e4277932f7c6609fa2c579ee11b6c2be5a24309033334d26c59ac23cb3f566cb04e7ec933d7813647d95ee1a82d241dab60a47141ac84bd8d694f07ff0398404921988d663226644e8c128a5738b53629a7d33382423c9a759018acfe04c0828c411e8606a494fe23706fe92516f1dc3810fb393d02d88274d6184b82813c5ea1d1838e519b3bc6e9850492f8f3baed52a4d0c29e3da5d1affcf3696bb09f8f93803c95af588e73d415a4cc427d2b00ea94cbf2c419ab0620d3b183d42fc6d0a9a5b82ca7a4728dcba372c281214a101a65b542b3f8355bf4cdb32782010cdd8a4d610c8118eafe604a7811402ab4d254a23038beac454e97d3ea03a7f96bc2382becf4eee1fe79e88d3a410a09f1a33271b36aad0e8008a40c1adfa18d12ef4db0a691f96e5abec059cc47f71b3bb44b820b4b6504af2688038e19dc8644c985993046a66ddd07d4ec4f83151659e7b97dba15809283a853a42ec0f7e0dd6b4bf6c47238cff59724122fc05346702ace84b08d47cde83a27e410f7ed5c72820b5c5d875548e963e52309e741c413a2d1918e6f8e31399a350f98b5fd46c38155546ba6e4d1d189cab7ab4cf256d011f62ec43985fadcc16a995e0acb84e70b3ac8ff52f84969d7efe2d983090d0b4b0f47f0dcf0f5853b830808677005b1af9d1f954c92771a812de1aaeaab05e495f51bce83bf43fda6868be33ad1ba508f05f137c84753ab260b706d1840e4b1c2887bdababbe7341de2e3460c9ace4ace4a161f88991e71d11375134aff8b981eea11bf7d3eca9d7f528fbdbd351ec5fb9cac076e3db0c7c8f1604a2cbdf9a319c9fe2b03259811603e2d56027f2bec5310653844e6a4f10ca349c2024ea7ef12b4f500b7c4a5cdc8997b5a843caf992fb3b4704bb4d8fde974c06a5972a01b35c006499068667e0e0f10770ec9cc2bf22057c95090f93c597496306be62468a0d0d6f6cd22f23a4bbe915ff6f5a24ac7f8c33533554d04fbdff9be02bdd5420cd4224299523698bf5047335f045bedbc9d7286a0c5947d68947b763677cffbe7a0febe347b0ebd01727220e80381cf7dc8826e6780f6577f60680027c511fe2e563a1568b1fedd9b91171b707a99a000e4a930291d6e24e9782d5a3e04c365fbd472525b345e9840fa1b44a6fe1a603f404953164376235773004b20d2f58f2587bc958069d2f7141a1cf08e86206a1349de24aec899739cf66723e1a6a3bc7f59cd636b066c3a1be540fa02047d0d3aa5b7d6fd372804b2c3eb11072397925d672b1261084d8b33fcf118f9531211b9f91297f625983d6d268450fee3f80459f8b5e5e09114fb9a924baca04e27e0f59b6a98c531d0c3e0860a0ccd69bb9f31d5678c9ef182232d08ad0bdaa11150ef23eb2f8a828b3ebc0ce8c04f23453a63e0f9a0149e4c2222e9e7aa6f53e96d27d733209c1304fdfaf173f4fdefafd81082a0317ce8757ce10fdc2010125345ba28ab03f5fba8c1a041ec86a3ee82841d03cc5e1a6bc568ba020a1de85a841657624c940f7faccbc13933eabb2fc964ab6414a69c4fe465061fbfbd775d02091b525152c0c8e200074642613b02b520341722d8e233795b4c6008bb066531832d6f5764dc479a4c6365a1339386b5da9683d3babf4d34a7a71d33e6ed2f483ba1fa205adbbbf994dfeebfc08d466da93a80e84c1b170fc702de95f4ed845db09cd4e912bc90c7a44be5363e2103887f5de8430c789eccd4a9010dd4c9fe96592c85ef54065bfa9f203356d2589d8ef16ca196680336dcc13b90663f00348e2605b158c9c8dd8b72ed98f9c7e93239be52155e9f0d16da88854de18542cedd6db86698d50ade7f25d4338b56a441b50eb73753226ed8a640bab453ba85122b9c439c93cbe6a24e90f1c312728079d1b35f2e743dafc92b518005755e2be5751f69cb8073f36a6e3cc6c8072fd3438a72c6d1ad034f8744d8236a9353d23aae273c7b1aa776ab3fd0d18bad7f0ef750a9d865f71d25df46f91156f3883988377086fd5861dfff69cd67365b46485721608569679008d4b901db02c7fbe495c576f61da51cc09a711a41de5a819f36e06c5c9362460c4e7a30f389e1e0903678158525685e2e850af4c2a44a66ba1087a1b27d330d7e371f77d2cd10b4078257f681adcf4c8570eb2246e5ec8631831045fb220f85ae9d75fc4a5a0e6ea5efa9f21cee47cc3124fcecfd897def3360dcad8c13508a13af28e314275d487a95797cc69ea152d6f537a59f9b3b5d6a7e42dc6c629a0e272715462761a4394f5b091d3657e964b708f197fbf656d0b8e75afb41968792009efe0e565d61d9db6ca3bb1f5c77a55d47955024174792ed45293ade6c5682985d85457b9fccc1dc4328a19cd7365265e4e14e1097fa10cfb02656b34c449fed37ed49ac26a8d091d43e5cb10e99703c570e560d4c6ea33f774c1b9d9658e8bb443bd5d0a33c1a83d77aefb5d199cc76b1a6f81ff5874d7de57515bb6e5c27eff02bd1bacda0917325d4cbc0736f96d079e9581561c5366a351e88b79e0fadcdfbbc437fd3351b89bc824b9d72a8022fca78c0973cbc98d330f4c3a26259050b878750cce33e795f79255ea332bd8f80368f68d73372c5bb56d462d5b66fc646c5263a34fbc56e2613e048248ae03daacf7504a4f3d934522dacaf5f59853a5f9aec82ff4606a3743234f7582cd59c2ab84ae0c58dbea03700c144c38d3535159d6a6f416f9f067334782da91077d02020eeb1472556f90646605d4e34a341fccd81148c3a0d2186bf043bbb6063748c5550baee66987cd796e7a6801daebccf6bbb3b673b7259add2f3e83898541179077f631858241b7ff815337f417dbc7ec41fb5b9410a9505f417fed1b5781dcc1f59aed0f29317e88356de6f04c4e0ff4d6a3286f8cc4648ef86ba46be8247a19b80fc9d2c0b9e5ba5d2ef806626abeeca2b7c5746fe93fde3e47db58cb01ab4bc155a4a750324ac1151ec9b2f1c67734e2d0dfde2f5ede84ac1cfe3ffc6eb0d37b64545484246a66ff7e723e74e5b7672844b9243ac4e3e887d0bb45fc57a5b03b21d35c4b4072837097d565a26d074b25572831ec214924535de7204433d56359019b055672dd4de1e428a8e3c7368072114cc82909e30a29ee489db388feddffcf0ed929933cfa373d3e71ba42796b5b48ab461dac30f7afb53285903a8b6fadc9e87d1a335379ffe3658547635904cae6ccb8b7d1e578d0c25b50aa44db04acd02391f4eb712839f817b6f146ba87267d3b8d8bd6da7057dd62f22e769153efc40e0104023505484c320e149700aa4514aef93b7edd57801209696d097c77c952de28280b18d2dd98ea511a8df7a1de0247a7e28fc708244cd6f2b79c9ca1dad5f65aa931fa76541fd89d29c292a92c96807b65ebf733503229285213412a631f4031ba79c3429a1d68c1b5174a89c1637efada83142f9d9642386b1e8c83d28c75b186ab74d4966c8cca4181f4736b04b757bb4f7547ad91e149d0cb3b870542733e2b7daa66ef6a885eef9be1c9a8a9bf529eb8f28138ef8136b70cacdf712a2e2a0e10628bbfe603c69e753bdd1eb622212b0ceac53a0315458b1b0b557f9f3f7defddfb82e9446a0bd437bcf6d70fc53caab1b44296b5dd24067549ed8e2eb10c9870565adc112d7d3bee4f895ac117702fa05f6f11eb233ede0e917baf5cc1a8ea720b118c11033c769a3ac327f9db316773b236910bcfacb53dc1b526e05faef4c9618de6218c0f3c64840053f2ef07d10b6d4549235111baf778a704102f16b1a8eb6a6a4df6f10245eddd7a2e758a55916a52f38c64d722ff1edfaef65191ae27abfd0da57e99a0f463f09750271f16f581a266fb66b8426b4c76a38e31da223fcbb0a39bfadd50af42edf5aa9a98636992eb55fa1f78ce05a5b4c6e22891d0177be0dfc5a46f95462e6e45838f28ca671b844caa7a28ab6404610543542be0410680efc7f3e5587c79b19c1a58138d6d6f871b8ffdfe05d39f05e915bd9d4a617ad27c14c51122a964c9c668ed57122b2773bcad261ca3cc3ff95b85dcde20a9ce2dc389c92c147e937acab45f642029c033e7bfd7b469fc1574c469b036cf2b7e19aba47dc9911516a99d51301e234ca3498047f7f71cd75566362bec2b70e26b0beaf4a36c525482c5db9becd4c7bf9263e29e59b4dcd5e47ab1e8154cc4e0ecc2e444bbff1699cee779282ff148fb21a33a45723bc721a6002989000fdc4ae1646a8783af70e6edd5565c307da68678fb17e9794ff69102da173bd3d4d12cde83fddb05a65942f38e1d6929f8545635cda330c06f088fc1e73e5c0d220204acbd0de33f8cb9dd4ca73716cc14036f22279a0f77f4f45e9d4aff4cbc47d7efd8a3b096240f14813caea157a5f6e939699a578e4dcde4674229d94422f6b6c22a90adf4e335530fc451bd79b650cdae4db5534cc946efae97ac2954bef1e22385dd0a3883c3d68df8f4734d7b077b70ce59d1128db9cb5c87148122a7aa543fcf39eed340183c3d38ad2e59d0d42e4a80f6d83c5431ad94d99144a0a6f8c793b5a66cb1eaad2c9e5911d17d2f2ea092103a9027bc47b06c8ea2756421fde5131977388fb0c66d7016885eab1bc85768c8c16d8b6e6c2d580d219023c537d58ae2fc6d71ca2db19e1e1e07c9529deafc19abad575c125a7586034685f7d975e70abc5bdc197cbb2d678ccab9fac7ac4f4f4b2c087ce80241a10e511a30a371917d6d4590f6295c476cb6ca7db07e3d5e3ca7ef3bfae2e31b089849db7cbe13fb33bc4f14f2f70f1335c13203f1f3005b035d81771dd8ccd65742e56546dd5d49e34fd2a512b0a433c3f399b42b6f6e94b4f4faf178a1ae1dfe5c2c7dd9978324199587ccf8668093cf7be546ee2cd503aa19bf4353ba3cbeed2bddf1d7de896f0e4cbba00f699a752b2a85877350626a35d98a27132b57a913364d65134ae6172e35aec7fcc134295c5e6ff64df6a57927ed87c88abcc6bd7a293d259db41f6a97f526dbd8ec971b5eaf8f64129110087850ab882f4fc009a909e82899f9370a23ee4abafb60bb6c3c14d8892761752579d1db586dcede95bc1e637629efa9c173846f67901dd6f9b58cf4590e0aa085e4069617eb1586e80fd1ee7bb7813058ca909150f0e8535b4d70a34ebecabdf40e8c9e3b44819443ab43f1868ce7818edc58183161c844dddf323048fec4bb9836d2ffe58d376b2c38b7fbe072d0c07d26321d524056e3ae1e75046dec771f20bbf87c2ad6d8b58de46d71276bb8b0088a180a58bc18daa015ee7eb21a2b456cad3c52a9cdb03c43ec1cba6277319af0b882d3fe3f82fe2339617544e24dddfbc44f87f02881c6b7441c75eb7d42868683b4d395007c997786989467a78212337e9b0c89d9d81aa7c92713f6eb19e6d6c63782f5a34d503b5fe998e72e2c0d8d063e897e9836e09036f604d1ca7708dbda7654169c499257fc344853cf567e11545cc49ca38a0d3368a3ba02e8b66046616391ad65700dc6d266db6042a22a2f0ca9288015cb89222668164262bd0743f48b1602236beec40a8aee313e3009e376d9b29a3b39193a4e584cd938b8773fda7efbfba1c3716effc9c8336bcc195d307fdd29b40d3a5b25166fa205a7fdd3225babd7882597479b419af6999b07b90ea6f28b5475b65f647ba7aee530a00620b59cfd328dc8967c48011293c14740fee641ed7a507f5974ad447c59d859598feaf11fa439dc050cbc97debc548220856711a7340c9cb24ca40c18c09c44f8e006a785ea9ab3b4dfeb84d92a583b1272111ffeb8350c1decb331d05cbc2774f339c244052582f3337f4c01566fbe42e818476342ea13eaf33d280fd2bbb80a214d1d77644967c247ad7d8a01651fc265a1b8837ee2fd51421786717007713bd58c5468999f12d78b66dc24edb93b717e11fd58088aee3a88e94b7310a97c243b50a36586282a0995118dbd043ef1d1c41ea7a7085a29529875b081bf557a37160a224af00a99b33b4dd987ce5cd06a2104d1f67270abd0318212630cbec1527e656fdf3cf85d0ece5f57abfd41477c4f1e65a9b9906eb89299bfe7d4f2a716edd7509eab7bdb56ab3a6790da66ca9ed5f89728887c1b38b14516f6b98c30e6437bdc06b2faab220d461e59c43743b19f98a890905f98570c91711b6fcec92233260582a1ca04b402d2dc31efd6745ba0d12ec37edc8a37390df2dca3a78a905a3c80ba254f46b26e3cebc30e2e5682c518c4fe2dcb38389d23e722c8ae351e88fdbe9e3ba099e51cd21732356a4bd5ff3f7348ff8f24efe5e440536a7cd53c913278cf767f1830c16fa2b06a8fd13ef194ffa07ec6e4d0fdb0009188e963fc2fbe686f02a5f63780af982b3b561cb63aa92243961d5ad9ff3715fa1d6fb3ee26b5a5624cee10038a5484ac56d79320b3888bb86a8a30d0f18a845c0f4850459b032c4ff29279fc440d77486e682cf7faa541c313e8a36f6846a47fb2f49bce0546a1e88805cec954338abb1b2ac87de042166e8e3a74b23261ec204f93d9f142358feb5dca0268b8375aef0335d51aeb697abac8e2fd8e4e19147db0f42e713ff8b771b1aced0f8c11866b90e895aee53ca63e387bec78d55d3231dfc251bf509f0684e073a65d6bc3ad6719f086ae26e9411ca671a1a1419d0f8269eaff3228a54fe04c6f337005fd0889b83afefa1c46c1beb97b9caad8171c9a9603500587931f045c1d1be735c6eea0f24c82d966360f9ae5ead49ebffb222f9d0ce45ce75c51926b56259258d78254b17d5e6a87b6dddf082f228651000ddd2e4dfd9a1a8fc7d7d1724ae49f7b38d7a0661bd414f833bedb803420e95fa3ce8db58b46478c878e81172e6087a61af5668ae23684056eb127548b122eb408c6789499b7a8ed37a0d2807a2a4e0c02757bf25c58f7c43393181cf508fcb028b4bd7b09eb41d478ff360f4411aeff332388318c03203cb6804d5249e73ade11fa1097f3979dd1e99422bb5cb02a050a775651de7b28f97a724938ef9fbfbba71c58df80d04c48cbad49ade4755fc668411c82e323ba9eb1c6fb720e0a9f530466b97d9d657f59c9766f6ce24bc0970ce0474fb0a86fe9600b6bf9739e1497b3d4827aa153b9e0db38f979fc2e80ace4c756825f38d0b66a1bfc0d03eb30bc8b07bc3c8bcaa4b43318c43e588e36258bdc6a80848efce51158a274b664be7bca5c16508676538a80002c6345f6c24cae044c0fa254bfdf68d7be177842407ade32f4184c7c43912062f1a3c6782f93f88c15a70a67bdb17e3d6f04fd092444816f88a098454776d89633e555c3cd091689a57f0ca20a51cdf8eec09012fda02dcbbe62908811581073a2eb8045ab1262fb66d4196eb906822fd284cda00e335b87cb4f37dc58b591c9f7eef2e2e04451440460e34630aee2b3e194a4754a9ec39cf41532afdd99d925cc92a7605fd3c9ec9209ae5a117c6bd3005f164fb91677ecc364bfca86732b898dedc26c582bbf77901e80924efea989f0eb6786b3dba8830eb7ff597c29882a406b49bc0588abfd16122d226d8349dfcdab931b8583890497af1166d431e5178dafb3d58d3f62839ce3a462ffb313a1713195010cd1cd91db86e8e17f20eee1a02ef07f49304e1dc90e1821f424a8810db89e94c9ab560bf48c1f7963f5a84b90389d9fdaebe3c68a2c59ff093b06eecf3ce20c3f212b67b60297ac3521213e95f1e2f9d1e8987aae007a3c35eb5c9589757bb25e3b1889f6093e973e173dc7702a754336eb14a38d0d4d840eb225b3dac1d4986ad3b4d409f23d7d29324f831845c8c54402330db4b1d4116fc0faa7dc2054b8af6a94b3afcbf9e85e3fc45a71da2c57d769d0baf102fb19d2ea5731c05a0f3ed8c1bf8f9169cb57fed532107448491a8b8bb9817fb55b1d534b579b74027f80ce611a3dd20a3cf9d3f32c9ea042479b45befe51615fa77d13bdb7e6f59d06add14baaa9fefe3e95b44af9c9f424cf57dc5a1916ae721c299d9073fd960d6590c3ccdf224759e991407d14b54ee0b0cb11b309a9c4b8afa0cdbe2d01ae2922e7f9e1e938465356cbe4fb790e05d36b43259ff5a33b9539f913092e3b48e59dca7aa4abcc369915c3ae8f74188ddd1fae4225359fafaaadf1c653f0d07541b02e4428a7c9fd5d68cca2f4f16373c0da9eeb042f43e31ce9eae23e44750879da63fd867b4bf0ba93c60cebfb40ab732ee8345337f4d1810b95554c930fecbf971029c065b870b7085d097651c572011dab46f98bdeeba205d50a4ee8093124a3a39937681d2240f124dd8b4b7f96e8c77836a26a1176a3beb6e6af94766a7035b98268476cabaaada97acd03444b9d0ae28f975c9d0312f884529020c7cc1acdb56e4d253be814ee7b2e7cdf8407f059f5f4de11027a9f41399cbafaa4211bb2c4a42ad17a5092115ca177f810fc3971297fd003e85dab4090b105872d1a0d3300c4df95e6c8a019008e5c5c054ab16a84441999f630a200af454414d4a8555fe5ba8fe5d5fddf26adb39db359ce311bd5644aa18ac0bbe6eabe10f8f94728df0c2bebea46c47a9558575c8a0dca2ba34c2edf01a42a22acdd9d0b555e5d54079d1cee60af3f54fd1f79a58926eaccce2a957692efe156e7e504f0e26acd150b88ec52901f7e9ad9e65049f475e0086a9c21ab4a34de06c39b7a1844ca3eb133081899fd2e0b6d89e0f3d1f8207ad820f39070bd63aef8996917bcad5016206d9ee2ebf9eee94cbe9be15fa80ff7a53c116bc4273eae33e53f2ba531e7a8f80a66e33e0993fd10a0d9ff06934b4753e37790fc7a4450ddae7578c5004e3a40481c1913e3c212d725cd052bfa6bb9362a78cf071ba74c620478ad73fdcbefbde584c57db1ba940da75faf5d9435bc5413ae50c4a8e2c8109b0b992ef13b6a62e931dd4495332d4e5ab5f80717cead324bde332dd5363c7c584571ddc2b3b1e1704d74f34ab1b7b2d2c8d958202dba38165a943483626289129586fbcb43eb88fd9b38b7981acb22a9892975918535ef8768af53ddb786f489f786b5ccaff7f8f9c85c0ddac234835c91b2abd1a97582e8c2e4bd6b35873dc1f2ce26fdff7fad555aaeeca819341157b7d465d1e7023a8f404ccafd6ecc2296c8270a03b04519febbf9689f2fbd8faa1dbd83334d54acef5bcd7dc884306ec601525e3053c5820b110c6e9a89ede73b894356de29d4ca3835fd6d904e9618937b0e4a1427edfe784b04364c6a5a09bd678b88e0cedd435bc622519a7008c841db3389876962cc37dd43a8d2b940cb4e0a1251b48a49aee75a589942a8acb93be7587a5f3f95b41fa3f21d8adefa8601fa9c872227c6b61e77029b577569a99de842d9d74416613e4667519ce86d10ccbaaff15c6fd7e3075eddd8e41852dbd486b34c345183c9374511e1c80066cfceab0c6bdb72725acc726dc10fb90cbdf5751043f6552ab13dfba5a850bc7c0899d728a04b719d1d9115a09fec22560bbe47caa7b366edb80b5082ad4ee9b33f9f4f8eb67a1cfef3bc31107ab62d92071873a7a7e06b6412f313af45624e88372f4d516913213ab52f22375b714f17bffe5c5048f9fba88d85ab957f8d1bf0770caa729c8e117bcae41a38343f3a14a415b8ec55ac4d041c6774c3937bc462fbaa72dc8e30e3488cef2f074dd1c584617237a0dfdc9f8ea91082030b41991913d84f53e2961d183ddfaa82b4e2ff8f932eb8e98dfb571b2308c7b90d94ae24489543c5914d67582bc30294c01eb2efd7376fef65a8a3b418efbdc4737e304b002d16a9d34b1c7646161dda08cafb775e8168a72519424df26955b18923953032564666dad3f81c8a43cb8fd103cfb90d8dabd00135fd0782044eabb3922d3f756c6d27f9f2adcab1e2b289348c74568c4f6bee6864f1ac97ca56aef2a22bbe4423a0021694d3595736999a3cda88911a8443bfbaba976697d14732b89535182054d85e96ff9ad4105465577c10d4100f9a5d81ba5915d45a6591812a21c7d5eed3acc42c33f6e47240e530f05c4d4d6f09f044c70d3764832b34966a28b8a18cc917e23ddf4826b543e76752e718cd7eeefbef5593fb7598009e8887e2ba09ca6ea1065452a4c7d7585da673b7c840394d50131c28dc1b95260aa0efaa3da6f6a3f1bc67b2507afde489106f895c07553723f04cda3dfbb10ec03b1ea68bd1a2905e1d4a946404c213dcf8419236935b428f7d84fde30a5b992a28c30f1cf56d3b41ad9b7f5007bb5dccc3387c04fd39e4387d478904264f75dcf2c97061450d715767d0d594bf0cd46c48c28473e2ad0a280b33a496bb94880cf5ef5c6317a43fd77e57fab3c416a5636d019fdeae62b437e0c07d8cca614ca134cac9999204efe10b1455ee3d77d6e1557f20163b447cc55ad9e28d7affc9c70bba8105a987a1682b95ae37c77c63959b00f04a6b05fcf7203c74808202edebbf9d78b1705f266f986a2c895d283528a00e865a8fd0a8d0ac5a25d412965350523564f64c777c6dcf961bf3d3fc9be609b44a6a2441f283625aef09a27ed2c1cf4daea12449c3a2948e104961c6b67f99abaed8c22e7e6817813b92f30098e44add1ac8217d0d0888bf1c67f9aa69493145ec55ad5b84aed344879791c82e39f065f39b1c8ff47fd03e86cba2c918b52fd0a23eeb8e79b527bd6ced12d09a1fd1b21490f17bac2aad45d494d573dd9d02c9d1616328ca5645dda4c07835b58e3b1a538a0731d21e845d660f26cbab2688d0689efd52da2ec6a49c6ee1907448990efa98c9e3cda53cfeac9550dd66602431e9a865ef9d50bdcb10f8e1155df8d75ba4e7f2d159617b865fdd3f280772e29204f9f37a05fd0ff0aa2d3d5b0b16545d16c34aaa3ead7d07048b81b1880ec89ffa044ddef20556da8cc92aa897808d1f692ea2fe02a58d523e9daefdcd84418a52a60f239479f47e28436a53747490d5ff592911bc75c499bf994d3280f53d130133e5ac6c36566c7106e317172f9b3cad701d1365dfab20f275f8a0147630e510ac9384cd82b4ff3912c99371a2ea23f091a8ebbe6ebe71f86fa8d65e89e2e618f1bd43063017d64fe8d524519176bcba73b5892de6605e6c40b151820e367dfcb98cbdb3f8f468c5ef2bd8437df873bc281094226ed130e2ab26229609092450222aa4b7b33b8867802d4632989458ffc7985efe9a423a8eb31da11351ba6bd7fde0f024a01a7bd41d1fd2fc6529ebe8dec4d84ffc451e6306cd21973ade0f7da028b3a0ab8251f354172764c512882b6401512bfbad3fb8f265f6d2502e226c4e203f97a330f33ec35b6169da728e1ec1a9091e5fb18d759d469552b21413adaf353aec4cfc3f5982f67e3c63d392d1ac817a8c80015cd79e773586741c40056c5c18e792f65749d2fb79a6c548d619e4d0c936efb875b41a6845ef2b03960cd641c159e376a71dd5aed9ecea88f4aa12b4d7c43241eff4d7eb62665dbdace8258ac00ce98a494e32ff2aaa28c7ae2ca926514ef4f9044897df8c1fc7f8fc09c000b8c077cbe171c6b58a62b77e71a0a15fc1b254f307a3acd63f45d9b154e04f90bf320d1150562eaff652879297726440ac125a43ed217a487fd70a252ecb9d9d48ac893b4cec767cdd07d8bdde99c6a6699a60879445f20a6037f0db734deb9ffb968f4d78f36f9658d01be9638b127c5dacadd85144c931c0756d63815cf4a9a954c928bf0f07c398d7f7d0fce202d1d01363068bfd5f0d11a634c799c7b2299e9282c337a0c37970338b7cf0d1003d3f53c659c0cdfcdf5e0b872a2d843d37404463d2e5ab79eb2d3016f2ef7e9c1d52f673e28f777125359af48bb76d064be8e6c64383071c9d258774fb4d4a6a3f1015f09d0427c99ffc42e4141ac52d63db544406c93c7d6741c36665053360adc0b6075e7ea8eee98bd8520b2d3a1f02cfb483bfdb2d053a7e1dfb8c0f55ad6e29ceea2e32cacf32ed254c87734ad17899e64c83682e3d3e8a050b14c36fcce25c443bcf5828720b15b9cc65f5fc68e8764aade42497c1a7911ad83e80d665d926d1e4a320b8f98add36ab049ad5efb116eb57a8bfa4926d0de25ae0d51c50670aec154eb4c858ef1f0cb6fbed18ab801ab343868e24cc6a3d4260ce2c19a86c498e97c0a637902d25031f72ed6b5b4931b2b9a46911738e8938579947be4017c02b6e863ffd921ca1a56b111ddd91468dde81011ffc870de180c84e9e2e0173c796da0d7537115afae6901e80f5aad6726921afd5a3d2fcdd6ae70a398a16ec6a2c5fb80e4f52d7362e30efc5c45e7c6c6d67e20d2da2e614d9a947e20e74ad59aefc2329d6d5f9bb5136efa9ee00022aa5b991c68e80e2cce8dc148aa3fdd8fdd6a1ee0562aa0ec8bd036364c44bed0cea29733f2474bde6150fc742a9caa47c16353b58221c9fd7663f90cdf8e155ad1a990887b71e295a660273b6232a7c06c56de7bf1c3ba1def81834fda292c3e1771c36d01c7d2085106ca80ade1639b8bb9acb49d84da72152c35dc207d6d2be98bcc2d807727b46a162ba7973a767d7294ec4c10f4cbe605e1152322ccc5732f65f9c24eca25035c2f363a78c96e5d8413073d13d0af8a286a318a73e2d17c651eaf189c81e10f0cf0701eaa7e558422a0ae93481acf76e3e696cfd64f5a2aa6d0f980d3199882d0eea72c6e075d63bc01aa9507cce3c35dc8236c3521599bfb1bff6913709236495870ef86c03e884dbabb6d0bc16907fa0c67bca6b8aa5dba75c3e364cfeeb7722a28ae52f2e31823cae5321d82b584f7cac6f06aaaff055bdd2d06b33ea9bf423c7b929d0b894b35cb9f92b1b8e013511ac304e672352dc178ddf8786f1ebc941f1c7794b175538096547484608c5f898a0afa0c5f86dd5e75f4a6792b15e23d0cb48e05c57f28c3ebde8f76d0b816accb36daf6b4b59ca28aea74a2c3a8e4c93f3f4080dc0e3f527d6c7ae2eb018c4665542d12276d7788667ea3f6ff8aec0ff7affdb6fe31571a24580aaff1a79f266cf7c25a784922e46e1c9195c518b3e574f48e67ff957f385ddea8ea91dfd7080a02f37272429934a8538922fa2e64e6137374d5c047eb319a61e211442af30493b420eb9e721a1eceee552258dce0d5a26dede43103fa00553679aa045c81b6a1d7749b2b135b3d12e1fea85781e41ad258823a9f69849456e65da5791443bda8a1752657a33eb2914eabcc5d0dacaf58b65757a1afc2177820c1cd419f076b310cd68397492c61c2a615b0bf23c8f0f93bcd3ccb4020df7b92aba40af66235e05e924b80a98eff275b1e18b3bb07a49f558325435d59ed1a8e6c3372f3e1e838af0a9cb7484c4524c496b7917f5239f767c6f73e7deb5a826a04a653ab27a2901bef21d181cf2a88b08f1990144cf77fff2e0f623e2dce4279e8d1b626e9e36adc75d5945fbfefd9513daf88bbc4fd421b96f758a5e8116b7bfe86cc8348827b3f3af68586dde8e6fea721abf699782f48023b0e4cf25019db8a1f06bd69d80fb7e321f4b5a7c6ceb222080b8f80dc4293759079ab3734ce4b529e2a22914764618c811de4fee589213650495596e1b21e6ef65d1ebdf8d2e31485b745ebcf2280ecb404a6beb90d594aa4870ce801db6630c58a50485fae2b83c981d506a3911439462d5e97e01b09bf19a5fceeb420c2688e3a8a276c925a6d5ed230f7c00be5555eb8531e2d04da15e96b2a906a47d42c855e790ca0bde553ccb7e6874085f1b53d09589ed148430557cf5befcc5463fea5d73bcf48df840b7068deb932acf951d1fe5c08ff798c165f7dea8dd6ad36904baa6cb6e31dce03c843d1b0c9d341a5ca55911e94751239a1b3801b5edf908bd1faf0613a71a00b5fe8417c401d5a0b65bd49be49c1179525f22ef86135edad81640ab3ee7781d5f755e4629d4d2750b76751c8a3862806221155f76aa75e29425ae409cace3ca35c9438d7b2179648b7aaa84f9fe883cc4136e3d8ab8d84674cd3d3463f7df8d6bb341a7a9e6b0c896ffee8637570cdb8c8808130e02061b37181c6d7ca9a75a12682ebac65102c601a67530f282732bf6bd939f0071a4bd076626ab091db3bb46caa22bd4ffb357974ad41f8d7006b02937b748fcc6a4d16a3e996e7f7754ee3985a93194104a9d59be631406d8bd0351ca17baf8656775b5e7779c46aa680019e62ef3a36b738c8986378fb9358682ebca1b869fa5b3df2e54409be151b047c2281040a26b3b7ecbe5890fffdb1b3aaf16345f2a4e3516cd13500ae558198b40d1e1c921436946e5840886d8e4077528d63e2435cc0a377b3671055b59c66ed78429d4ab5ca413263445d6547e1e12f9501eccb81617c0e76a9941327efa2dbba65147cefbdadf02906bb2927ddf59fd8e87a52412fc586bf494586cbb2019db275a46bbbedecbc65cab717ead9760247681ca33d03246d81a7bffbcee5b98831b44385ed4d89f916f0021788286f42a5befa4212c57cef660187352813e3ed08ddb03748dca2288d3f3fbc1c95e584507eeff24aacc58baebd5fee9f1c9b0b933406b718c10ac687d4b2fdd91a9dfa29cff37683f46b1da170c35fd4b31bc6471f57f480fd53271a5b3e87e8627f4b6d739bebc0244ea591f13c57ccec8bcfbca8ec03b9569905fd151bc379caa70e138972e9a0bd1c6ac14e5a36076a42ae9b5c75811723c60531c4e8ea3c06eafc3789806308d3685adff6735d3c13313c20e66d3d2621268678094dc94e81bceb008b22c19c53b7df41151fca2012943ee40d5faf36a0acb4156a04382c604dd501cedbdfc20c0b992f6d6e5305570c69aa2470f12aafe27d0e20e0e0c4c6f1be9512d4bf22898271abe097f66f3f750e5f6dd7ced066698956ce8c67a7a3b35cae53a1c557c17a6e3b4ebb204aca47b63188798f0069cc56d1c309d90f1197f66040970bbd7cc663cd8c1606cc87a5e5e652fe013180e1f9db4d700fbd811a42d158eecd26efd4010c24d5cf874b41884f19c87a8c77c3c0f9a62b1142c9aad818c8a7fec68596f02c354e47dbab2b1ae0bbea6018d1be9981d77828e12c048e69e0c8ac0c2f19afd7a3044c1910301b969d43b181208e702d6c6174f2aa07fbc0789020078fcd3de11d88b8cdf12ea807d2a426633e938d01201b026074c796c7b5b4241bd8eedb97020aadc053dbf9d038eb17a2c34fbd655f5d3a6ccc3bc0cd73c6e0852e3c74b803c480536eca88a153113ac056510a9f8b4bb3485567ddd3a605185c488b0fdadebe5a6b7a7a5f6bbfccb7f14f4ec1615d9112620d1da37a65087bb338f9077e8d91465a7eb29b4f9e5f3d9ff4f9257ec2f4e8787dd0d923c99fe9816b9204370d5342a4f58da44db821988da3870b0de600bce5e91b46ca97fe6ad28151c3af1f7d3dffd89f9eef2d71952e44c9cc02f294ca4bd16b1b91ebbf59378b9a13a14644df12ee167e2b3a47303e3004798952e9c3228f046438ac272f6d2f58c1b3e3231492a1ea94c5012b978cf6335a65306d5a92e0a8ad62318783df61313c4dbad2b1206af6aeaec51b5a1e77cf93ef266c970116ec84536fb865e2ffc5afe33ff5bdc7c22d7f4127a55f3b1b9a716164f5539299305c8c2d44f9991bc673fc956be344af212f99ce2a0b1ce8eb32994c97fd235da62f43fc10e49a33e1c44a4ec25e53063398871146368460189dc5c35feba901bd0ff12b26f58ddff8e76c8347e943cec920f47cc2214a3e219b1c48efd3c108c520f6ca8b56795933fc41fd95ed79fbe1db8bf06c5e53544dd824618b46ea1045a3b2930ab9ccc6e986e4f30d93f982b9bc9049d802ed72996df6ced4204b2334104f6ccd4a7f17ddd13c61bf279b15f7342bec0b8a56b3636448aaefd6289b052fa728f8fd9ef6e9703fff7d026441419615778c791b178a6b6f0c4c1a2da7bd2345ebd4e235cffcdc00719badcd291d152446a6f16d0e35884409ba8eae577b37b01e091a92122395cc4e1fe95d2b4000de1b967cb98a8d78d826c7dfe1e75ce074b1c687d802efaee3c84bb42076f288b79fc4518a9e025b1ed9d33b129672cf9c2cb98f9a979aee516486e62cce614418464f988419f192abb47dce5b5a40ba9cd729dd354c5c8ad3a91e6f994cb1b8e76433898bc7f7276200f64c8aca3ed18475f78b19cfdeb5f4e1446c5d1d1cf77e6463b9ce7146ab3c9de5e5e8e975f045eeaed37e1a2b38f7a835b41d73ce764160bdd003ed5d5abec19748395099373717527495fbb8ad9d8fdedd95d4b0f11341c64ef5def9c0016481c7cba6119914d27ac0380b8bb4fcee7a22eaa562cc63e7bf7bbe02af8a154dd465f0b71a00c6e86f3f619bb15ebb3022d174bedf1dfd3644e96c45fa762513ea0900bf4506df793d5c4f4ea88136b3c0b7edb1781d66ba8b0b34e735677a0f302b713b0d8e0dd7416c4592faaf2e3d560bf2a90a3a790306c3d3ad09603a3992790e7a723c23b7ca86d70ecd0c34d861cf65a7bad40deadc0e3be19dfe5485fe70b4e94cf5c90f22fda418c4324f8935b2fd059b7ed60b244790845492505e5f0a08e5837da4b547244b0893a56e15d96fe80c7dbe980e0620920161e667af83993399e7cbb74f30957088ea20462de7ae637a028fcb9253bd8aca16fdd3f84779efcefb69abc2debe66ce2b94ac365339c9408c149550c3ecf83c94f8b14c0b87f7bbb276f6efcf5747048661dd6fab82c38205addd40f4515d4c1081b51eefbe549c69047da7f38b1dfc6ceb51b3dd68181467e3db2d311c283aa9082c1db56c8e25d62787c2534003844820d86f8f1256371bf855b2bfbe6db3cacc6ce3f61785cfe0d3dfd3204ff34fb22fa0d231d812bebff0e6e54d08859f2ffd6cb159744caa917a1da9a94e71c6dddda9e63c1342d04a4f9803fd60e9c1d9f6f00b16a0a1c0bd8d345544bf2feb15c5ee0662377a6c673e8f2e6f3c7539417924902950a2e4a753a73940cc871789bdc91b919d0db08c6150f086780773ba9543cb98b9d0ce79c9a5be1f68ce602434160c5f347d8fe92ee1ec9464474963c791cc7d815bd131e76745202e5f74e204135e2457f0cd20c1ed924da4c8c1b6ecbde34c15175426ff7a7cc24f251689ad2f19f29698faa4cdcf1e02388744ba720395882bfd63a060645284e27d4b2df79094216430dbde118af9b32d7ecf41055258e59982e801690b724c3ed2dd5a3aadb3bcf49d2a9f71386faee27be40b021cc0d3703c5d435c3e46dce5ec60595c415fac025f2ef87cef7387e2a8c4abf4ed23ca59868256e38de5095f857de3cc34cff587d7da1bf45b7dce9d08427059ee5dc87818c6a22f8d0ce7262c48a6dca42d2528ed8bb1d1873d7dbee79186e9c391dd8f81f3547001e6b77fc68720b7c88dc29c096a52d93a47338d4439afdba0b96135d4a90541b9feab29b06b694c4fb5348edc3b3baf72a56b1198f836ae1d3b45679143b6a5ae411627440d34e3864dc4eb214d2ec799478e1e169e183ce1b6e37f18877026d43600e4530cd2473dc1cab166da00afcb7a0bcbfffa2ac876c8e2fe591a47703420bff4d863ad6d8d77fa0bf278a976bda1a8d93f65586e07be36beedbac67633b4e5d6cf56facf09af6d72a64c58a8ffa8737d79be68067f5903468ac22476f029c4cfb65449b89f5d31ea9aa080b76e8f0602328d5073247ae57a620a04026205ad914202cc0103397938e6db2834bff73d45175418d42b12cf8ebf117f56180e7d933dfdc118f6187776230ec618204bd40b9d244402f06023af1ea58c7136576c5e1405c73e01b7cb4e1e164198605b4067837c0dc723b80ef956f7303a6a65f303df133d245eb4a2bc68cf946c08f37c1435cfc934d855cb484d12f2ee3215ebfd6adf7673be124c450283023b76627d9032985fa7a19608a7c03129b52de42431cb2735bb057a7b31fa0e194c85909fcd9547fd7ed051031f2e5f1588c15d9b5ada7841cf673ece7f43c6adfe0a55351d2d795ca656be6aa98f3b09d99c8819fff2b5ef591d9b3446aa0182a5a5e89063e4a260d65e2d752d6227ddf34a8dc8b8b99dc74bf3b49b301e8eee8287f29e080175cea5aeb91fb266034eab27cfd7c4d6f5776946c789c0febeaa73846e211eba7289f3e28baa114aef7dcd7782b2e5bab72f7d5f38165855ea138258996a53f67aff8f68d419643dfaedc72a571a84fbb995236bc13940f3056261695f0a6e60c36254709b50b66b197f7aed4265564e6082e0daea982d601ec644744e92d99e6200765d6e13a2efbcde58421a2cbf0d01bd6d0e9416fbf5727efe8e7999673e3e210f53a7aad15412cfa57fa4fcbc3b8923ba0504f4d5a1bb9f570f2ce4a55465bfca66009764825a8179c5b1d3ffd654b83d2177ab31a4ae591abda690c52d31c6ad08ed131fcacad409d5fe155cd82aaaff1f8790c668f066ae00b543979790ac1b820435b91e5a6d7575c5141280b0b873483c5e086f295bc8739c697c2a3e4fb2b080570aacd3378ad73e8f277804a933beaac1d30d0f595a9cc160a8555d7b8ec7c9d3dc376eb8e6d29ecc3271ac029a2d53077457224805c1925daa9fb12135455e8633609b1fe95f15e3d11b3f0e65265035c3741d5d989262ebc63ca66d30ac348a0208c9b4a6bb26fe6d7ad47f4c59447c14c25f1b220a49fd1cc595f38b75320e2735c9b69410184718a5e921667f9438838ab42c0bc76926ac770145119044a3f97ad2e968ca05bf010601ce28d6422f32ff3dd5912d887d12a3bfab09a58e444a1c63d6f59d714ba6623e2c4016894a6a892d2b8e2ac8150870827b3ae45ec5784466a9c90dffe67cb2f8d6dab731621a2b8c0113c5961a2dbdde4ddde9e22444bf2697f4176b914f9842be5a7e555a837af670fd17a7ce40d42cede463ae455333f24969fe32e4208325a6210278f7a6d6f22e392ef8965b017e1523903d14236c18c5a84136c5389cafcfd581e874bde99334a1bf72617b783048266db6bbe0ad90773dacd6b9bc5ce51086c059f6c5980fa1df3ffce34026dc3017452ff4d39f502d56d183d063e530af95f1497cf94d6008cc35136a68669295300c91d61d864596bbd9405a93e3a3900a4166e4ca40928ae7705b56e5424c92a14220df71f22dae23dd25bcc403287db624465021663a5fa8aea1a5adfc6c3c68be2fbfc8e75ca3ab37e42d89f3c818703a372bd49adef297531f667ef5c278fb99af279147f1b11d2ab5a5cd921720eff9dd2ab01edab6c9ddcda148812bc43b94dd7925fe6ac31b8da17383aff0dc730711f04f94e7f01d54826521d68d7ef61b150380f967d46d14f6d8f80363ce810bbe7fc2db49c5e0722c8882301b2d1b8570ebf5e74c089fa03917fcded89446389038386cb5271e68a462237f4bff84fff467327795588de35a0d4d1d5aa7df2419648f64f462d1523387d425e4fc8c98081f8692a1547548929551fa06a21c0cb6654311c28b9e0ddec01666c35d9e0a73f02dd7044415604240d4e57c52423bb39f580f608417c82dcd9b370b7f33b2dc2c4e74f8e74ea7416a9d1bf5c1b443e4c23fcb18cf020958864832f9ef6a0c7bc10218e1343dfe60f007deae54160b8a63c20b5f112345033f924071eb73481362faf158713d6537edcba5fa8a6ca9d0f25d446fd20b24b8a23649ac683c246839c2a91fed8325d2d93562fadf4d6d47455e6766c6dd24a3b480b0d632dc19da9c6943c61e6f5c605deae72c1ccd9d651592d45363f9247db62b1f10ea94d7b96db47a657beb6c2de72e5ad21b50299592d6b055ebb9c1d71c38acf8010e1586c3a1fe49d120ea4f3292f30d20d04ea35bf47656a9b73f209535c04336e672dd6125cc24a9c8156ed40a28329289f8dea2d271175efe2c3b9b96ab7b94722e03dfcb5583840bbb11e91febbb87b052899a1e489dfcd9ed1caaa07ae47cd7d70e0c1b55562a79ffc82f9055cf7f664d5dee0b11f7e71ee8cb9a2a844c8ba0e519b67205caddfd332386ae0e587a4660818e589b5502db93b62251192407f9897379757c32b4469090d241a4345ea9f69e3e1c19d4a11bedb01aad74533d47b97c824058573041adeda4ec92621e8b87ee2ab182cb9a9a5428f84d13c88b0f4b2ca3889a00bad432528a21008bd6ea2e01cb8028548ae7c6e89c745970f6d03c07eca9990d8cbdd80716f134a0b2eed7e81ea7a79b9ef9bd13bd53b80e40d99c47a940b48515f821aa80a7440d4b6c4704d05af61e230410a86efe547308cdb0f85eb739d301b90d8304c45ee96f9e23bde927917aafc387857a599c53100577be8e04229c96fc140e9e608324e5c6d3f53f5c7520838bdfdd151232a2ad7eaadb084bff4d8940a8bb659b31a938610fe1ddf8a6017fe4ca07a465ac8e8f075051b002b022fa9bdb67a6b07174f821622376ae58470fc2beddbe97be56a4101153323ff1904d7dfba5063aa5c490adbd8722c752808e4d032406762a9d0e61dc2aa65d2efa6d1665a264c563fb1edeac1d6cd268e40cc146931e035240afa8f8ff7d51f0d7a693fb5bc18227996b252ed54de95f3091c48367162a83e25209177ea2536b9b8e46d73458deeb700ffa1a9022480b439ac4d00bd6677445b32783963f0892dcf86b1c61fa7ab5d89fbd9db3618082815c68a4997d1321e136fb9f06e3e9b390971fbfcae62e2e518f78c0be3d696de201a826d7c7042754bb5a702cf9c38f960a04902b95b1be075013914beeb337219bfda32fd233cea39703ebf03f03cbc454f2c0be95837dafe386299dc3268b850f24ddfd1a9265170cf101e08f22ad8375b8f9d4c64aac809f5c9e73ff75cc058bca61495d0eb34253c5cdd67908b94b06bedae485c1129d6917a03c58d00d3a54c9a7708e87dbe4d284cbc4420c03eb6f104b57f7aff1cb7ce1e45bc9787ce575fc4b7ed4b980f3c6e304f255d706ac18ad4fcd77b32a575e3234a65de567a2b659c32538b0b07da545caf2b30e2cf026c20680c006bd951df722fcfe1bb39261c8d2c6a2344edf64f85ca932d76f815b9be52962a39fc8648ee1f60a15a6a4cee0950b346ae210536ea1b390f1345e898b042bda023e670e9156a87f3bd765a1d5e73de80c92897872adde8baad2953d6e9339fe6aa30e72f0771a6c10c1b2e72bf868bbd5ae4c20ca5d773cbd6a3a4aea166a1795ce7a095690e70522f23cbfaf60e8464ea0c31561e0bf69c3e0faf97fd532ff739b48b1d1801aa85c80235fb5d05ddbca047743e17123c6e2ab2fdf38c410db05bb49bf6ec5ff3e714bf365d4625b82065340aae436d3eef4e34d47e910e27591b13fb3dae06147c5232846f778b4a3cf9eab52e09116db1243afc31f386afe425599c440cf6d1d4e3c03dff041eb00baa7fe48bdb5da14bd1b0e7201a7dde41eee4a4429034e14e94943e6bda87b682d92e4275bed90fab1113d025e6016d25f80df41586f65fa4f1e0b61ee7a79cbd1251550750002a357a990be25a1e2f1ea782d2863ea23f2bdcb91679eedaf5c0b0d8ea93b3ef0720c88ceba91b52d666a98e04bd8b688484a44caef7cf70ac862e8dca6b7d1834f1602849d98418f99ab805bc064a51f909d47d40a7e7715d5b163d6aaf97bcc62cdbc579f522fe2a34005e00f16294ad59668901a61ee7f3b2f5aa7deeaad688330cdb71b87d17acbb41a3f961c957a21d2e9e55d7c8f9407dc061482837e3f7af633f18da1c2ce4485dc85f1cb96be579fd180dc918b4f8a26883ba79e985b866aaf1b6b35a01329454dab469c10cae001e9f9e1a9077cda9eca940728e932720696d5a1c378bdac27ccd019367eeb8614822cb103d08987f28e7864ebc292dab88b8b31235290f5646103d68c3300fc88804a5af37e164d7934df079a532ad86796ea0a5a87e2b4f866c1725e55471285c68007ca2698bcceb4c1873cf8f86359659c6941c2f5a8dc591f70decea408d8b6c1caf83cb26c5f0f20487e2f645036f07b94fcd328b4e0eb8a22bc31b76fa240a5ec8d6a9d049e741ab2ac228abe62a952aee3bf140ac0ed53bc01aed77a75283e25dc99292b11b32c6e918c882dda5a6cfde8e8a1139ed3a74c92035f18ccc20f263ffb458149939b8d53855788e8dd331f3eab7fdd6f469901f42d99976c26fc597400303da9734d3cf605fbc8791eeccb11396d2628a9b05900cc596a75d051e356748272326873369c98e2e71b3f576fee46d4f0ae2c72cdad68dcebe07f0253944052f0538926bb3a614a8ca521e7354687bb5dbb01a46445bc529c85bc278d423766828a513a5c01f2e04078ad243eb09aa4db58519851240d735c5075f1b4457e37438ea17d4458365e6f082f5320f4deeda587a71964ec322876c701fd2c85a58e7642e683c941e0da66c890998ae9b06678e5f8edaa28c047bf0c6168b25a23c1159c2448abc9fe18a5722700f64179865958c76d16ca9ed33c15a13d3dde01e1399871540b503547355796340fb6e744d10b9594efd33eec7dbaa15f4d7f857013144d5ee6a7eb66f3c033e3d7d6b3f75789bb4c1de8276c1ff794fe8fb36280e70f94839058014d950c22341ed78b95f718886d7bd67ce7b92dc23957eceb09c17ff79f6b2da951f6938a5505a8863407120ab070a64aa22375d5ee83d406c20891f7fe6a5baeeab4cd965548df6320f1c8f9b1c49ca1b6c992a67997877d09aa5f7dcffb876e185b9e699efd423419d3de7e026923d55d3cb4fcecf80160167e736db8c956f61a4362cb3f61fd8f62ca6e6849e2a2a9ba703b1dc99346c096ece96940ea222d9b90a76bc8efd6fe4c190f1e8ea0d111ac826b631f48eade2a85e889cc10c7497d1ef1a01eb7f539e7d771cf22ef07d2abe8a3d59be8819a32d1b3dca65d0a1233765247e431f11c0f66eb5a87c9b126b00b4d0648bcdc9d6be7ea8a33b8e6b842c063e7b2b71bdabd757de773896ae688d3ee1baa421326e2f8f57f00b8cd2bfba983f7c6956e3757fe4389bd7eafaa7023230d99093bd9cab1a938b42140aab0c2def96fcdd689f8639130ffb52bb1038018d91a332a3fded6da52d5cf18bd7cd9cf624b0b90a848803a7d9ae90a975c3c810ab5732ae2bca3d5947821db5e61d203ba3b00f658472232295d6684900168fe700607831a5456360a2d50199d372e4ce4365095d44873efae88d6220fb02a867b9a7da5fc5172fcc17928242f60b8c53bde74d5bf74924f975a2947767460035758063ac16dc158590322a1a67a95a53eddba6a93d106e052c6370f798f1d2a9fc88265d0c4632617a50f598af4d3a87d37d05a87f5d6ba45c1139cddd18269756ba7b6618b82ff36e99ffdaf127aade81186ecaa3134c30168c7c7431ca3eb078d28d95052326b9c38adb3b83a99013149987df619650f0e2f4cc675171b16b3b1aed8db98af650868ec69d5347accc9eb7f562fb3492a67554dbb11fc8e1f9583ba5bb99b20c13826375eafb0ffe4f3a2b1b0e945b98f97c09546f068f8ec701142fdcbbb57b4d111cc0b4d2ae852838fa0bcdcbde0c683f4fe0437c02ca64e95215f0f283e9f0588af614a8a5c5f56fbb29a27c82a8300ba5c17dc2dc9b6e170749b22305d052f106495006a7f94be862295286c473dbd7d0bebdce4826859cb1ce07314404ac8c7d576ddfe606753579821a5fe68ddd5ee0951054c7bf26654ed288925ff0ce79494803b3129c576006a18f426bd5e22d9843d293a7b1e7440ab96524ee8e46420fe66cf82a548161c4e198528211a19f1a6ad60098fbb912d89c2c85092ad287038fa17b386b5599baa040e8dc60965fb582218f7dec561f474882676050db315f37e1e4d9576bfd15a38fb6c8c6d5bb5c0a7d87ba188970e3cae1a7d6376c739a18e98d3cea1f7dba1bebdc046310f1671dc66d8268f585f020db01fa3ff8172cde7e75e65ae56adbd9a664971be9692f55b379a2903236a9ffd32702e6879e48e219556b860486119145561f64c591f87e96bc68636a383418f235d3457e4b21cf27cefc7c7f3edea4c1f6706f1018db196f25524157d3c1ce1626a2f7ea752cd16f80e7d55a0b2f47f8d5565f5df609ec125887429daff633c01d25c1e5325534b29e7131c6b01e3babaa2867dce0e861d00dc5a8d7f0d8874e81d423bb4390c09e74eb2913a475b2c04b35aebefa5bf3d6950d2e512f0f080f1653440e20b61ebf287927457d740228015e31c838651b4dbc64f9efa17294bdd42847764d6cce26a425a18effcd822a4f641749df62f93d1c3025869a611307d51e6a14517e5aeebc4b81886ec7fdafcd78b8c9e631ca57ce90ce25521a946129656de751f10a04ee81a72e3bd648663b59808fcf0a540b5521d498a12472085ef18674b8ef67688e7a365e2a73bd4858338a1a76b84d73dfdf7eafdef53463b2fcdd785cf54571b8809d83ba9d4a09e5dfc01e2a11897dba77fc50966eb84659006d2a010673bd5a5340a62179f496c6b203e1b6a627617635b179f1a354df2f60412bd0d9c5e5001f7b2bdf6d972e382cb95f49143a8075c717318392b571e19d0320ce468c6fce59497ba9c4968fbf062c830952d5579f4fee4a2ecec21ae7464753de4f6b41bd3ad8766139bc05a395740c3ed6c655b472926cc3e3cae3092be72fb1c84c9e6c3ed3dcdd7e476f845cd467eaf40ff62f6b2d7acf31cebb340bec7c994d8a861c337500defedda36a86b286afdb800cb3f919d3f58984e4895dab7e753aaed2d4069c030b81b8e8bd743d603ade395751e02a6f0ec05a3688362e7cfabf20c032709e6dbb43580e488c0dff8d5a4e801e860b80b5fb8ab19374585c470c9410b9bfd2b2cff9572d5d674e2468b6760aed99bfb489bf55e229b35f454230abcf820b66ed6ed459c43c5eb3ac9f6eba9ca729419a27c89528bc529c1716e24062185c5a469e0fbeadfecef4ebf90e81f244eba638c0de310d3af99c3c3a7171b04117a18a226e24e6ce011a4860c5e4522bc81ec5905a1d9a963cd8cdb2fb5e6d4d5c3a4588dcac410fa6097dcbb52da06441435f97893f156a72bcbfbaa13b9882bd1306baa76ec11145912de2a85b7324a1a120fe399f45d5278a4fdbea7c26fb22023daef1fed5ea5c9c1e6c8fb223d19744fda6154fcab8dfcd268f36275d417dc61863001ccc50028511db84e4b8d497abb987bb8b2e61aab9de94d407ab660d6fe1ee0e5c1cbdbabeb2a4c19f1eb246fa405673a6c0383817f071dcf30c7d85392ed67e6956fbc4100a648745a18b9dbe7e0b160a8329768b62fd822e990435b929833bf08841f4db2d18f0fc1d6c861c34be50105ee1053d6d504d30e19363d48cb327a06e3f93cd3aacf329fc867b8c1304b324888f6004b43e640479887f86561f79e4e49c820b5552f581dc1c81e25f9dcf8b962a448e81b5917fceb62dc297590132f25276f335f37a3157ee7c437af7805024a6f8d091bf94c470a0292591726c8cd0b65c2940b7cab32126101b575b648585c1a6f34e20eca000e6ae4c869e632b987e9e3f9345b13eab2da2c2a8a1943ac2840c4bea84b87ec0343262502a135cdd02cb85bd3b0e1c70d87e91fa37d172fc09b51cfe34e60ae6a05326fff92ef3e0e0f72bc5e8c7aab0e1ba36f7b72b4926513b1169f0d6e5f96f8405d4f0288c0d76f96883a1afe0c41d1f17b1ee988f7b97d4272bf3f548a58994bbbec3577df82f9a30a07431cb08228ccb35d009fc2b5393fcc54b4292d0b5448febfdcb5f2dbc2719c8e4c659edd76d5e2ff3db0ae8c74b7f3ed4e5fbc72c2e079a9a36317d71f0c0ddac42effe688e1b53211e829aa63b59fda04ff8a5b64f0a7181447658bcb46f3ec9d6ead3e5134343b17354087a1a632b8c75d0c9f484f015b5ebbd056789f6a2c5056a2ba674fc71a2cf6b25626efc1cce865b215c3b03ee44e395b9c163ad5a4aac5e215d5b98dd17d3423afaaaa76f25da65af4dd076fcadee487f82a6d2d9f0631857ff9cde376d48257722f4a0e2a1b1208a535abb736480bdc8c1e173e9d569ee6f5059903fba367ce951c6c7c037aba69ea1b2aa8aabdefdc3da3ec0def813300a6513e8999f17255ccdf77f5df1b00bd3dc064307a834fcab055fcd1cc074123025a7f7acb44f17118787fd0ed33d0ffb6371853a6ab745f5852db8d770acef00a33f44e60fdb8e6fd3c4ada9714153fb0d1a761ceeeb920a4ef4bee9161f4c7361cf1086d7b5237560c6981e19e60bf46cc6b17dc8f7ebcd5a22606c2de0718c91ea46f614a761942a91b3e9a4696469702b18d4e4a09db3b9e5a3020af82bfb9199808d3c0b10f7b0c46e025fed027118cbe130e6c25ab7b1918348e301491afe10834dbc2e92c571cca520feea29488621e840aba1aaa70f7e366a21396044d1ed0e1f038f26dff7a95cc56801a6781cc0869d984918c2f8f09bfe1af2c9cb9bdbecba439b3609e2ed1c6f19e9db9c99d8ba6ed80257cd25dfdf429019e1fabf4f72490c5d32a5bd46cfc2019a5b79866e1f53571090a7de455852ea7003bb8123b4d734b760e06aa8c98f1b2d87bc84af08ff6954f93fcf72ba6fb8b66add6d0b29091325612a066b29aba77b7180d1c2456e2002ed16194a09a53282410fe5b0811a8c74d6a8864432e29944db242b032a9777c7b34a882e8e022ff6b97ccaaa502f73157e368315adfadf7e9f3234c556bf3f81cdc19660742383bbd85b9d74add4bb87384d6ed3e0d42f454e397788198f43703477d47f38708c4b1922a1d55cf89e06bd07ddb3dbb6b24fed4e5271e09498324429bb371f4bd6d03d854744021d82b90e0dd5bbad5283c98361aad73510127d19c2bd4103c7d21234d80b911f9a27e35321262a20d8d81cb116dd0e2d012ff8f78166693e28470af972a6582bea82740bf28c921da8eb7c6effe9e5cc953f9e3288304bcab395a312ae4e97801e344a4ec10164921edd6ce047ab3fddb4628f38fcbb299647ca412141ed603b4a7b091ad96a6e40142601b49ce0419d12694ded66de88b759f1e1f5c06ef112bc02b972954a8faaa55370be1ec4e1e5a13236ae3da30be6f8d833c3d80b74a982ae8abefef6c23553cc597a72dc87692d123eac7f46e96c4647bdd52775e406a57931c4d8bd79e7125d1a7a0a21cba3439c4d18d54f02a0ff5f6e1dcfabecdcad09ede67f972ac49550a9f9a85df7775ca76d387d78bd9759005c1db19d757cd078e3b12a11d031ae626761ab66dbd97a64b11cddf9722cbed50982cf8bc242b4809109a6075108db4a95055f28a1b4ebec89c49c537411d76f3c53574afb534377015c3be5d329af5d2b51e7b025e5f47cef369aa03817a63e153dca5888ae8bb9ab22760c37b0cf14fea9cdb94de936247e1ba1c22f927573f897dfe63b948476497ecef07d3466a8a3f05cddb52f491663f30a154365b78c89275268ed928023e4c7decb2e2b6ce43bb4cc6083307ad90193db83745946da1461391d038053c5a04008a8a266c522757ab0ab472cdc10a927df0ec6ee756e184850f947d0ed19214e2253aa3c3f74c23afdbedea49ef14b5fa8502ba8e6a78f2d390ad5788ad9b356a76e9388d0bbff9f7c8e3dbc1dd7ca54bf47c99f5e78f41f7a55dec39d053b7f016adeaf64d7e8ac131d3afa0b57743e99d6929585a0d192c535cb8d5be7bc8e9017895f68ae02829dd0fbbe99972264a8e3cbcab748c0e323ff7dca343940dff8bf8f15b90454abb4953450adb50548e29353c61cefe0f4f4ce1aab25beb0d070756675f40e39d01c19baa4c37e339cbe9202fe7e9f73576115118b2a7128a53d76318b232cb749fa6c6bac3b8330cab2c7e5f4f6871c48a4f4a405accc403ba2b836db7803f45b5556316f5f0f485255a767ce95d278f74051eb17d3ea8ea1d76df4f108bfba59dc094f651f95096f5655d9b04b82f2567db803e9e4c4d3cb43b265d9d046fcce6b731af8bf04e78b5c0708e926a6d8f9e2db721a47feb3408af3fc2e90bc4ed1225de14130f138ffe614dec43b5bef0becc05f13413a97c0e46d689ed6a07c93704227adb6c31293c81e5989a9bbd7375f3159b19a753ee93f2a5a1beec945af51e13373be2188700e20937cffd2a717985adc6f644ed2d70d6a2156d903f1ade14ab1cfc3bffba19db67ba4d8073aee7023a067329faae0b1f5bd552c8e2f71a47cf1ed4d577b9425ab822ba9d679ae0dcbae2bc580236ffee55c3806080bf2d76e147aa3217b169487fc3a33d25401f768eb5eab17d03d4d3201fa6e2095287e7bf632f9664a654225f736892a73b6a54f860b65a62fd93a0b709cd2dd36a9a3f8a9bf429194f1f0e986efbfcd3585ff1cf32204a74202d5627be09b9cf3409ab11d5482db01bcd94477ac2d92abf3d12aa75b223f06a2762f8b7c22a737591ec6d679274e7dbb402ed6eecdac6a0a6c77010d3c487c4ed548dce89704254c6cbc117ee0725be13983206034cfe491419e04a25903d5909aeb1cfbcca1c4b08be0f22f4faf1b30a70bbcaf161bf45e4233294dba860fd394c45ad0ac73728c836b6c1927d1b26aa7a0e1aadc5127c66d994c5446dd58ea507175cfc40b339c515c91dd69dbb01c1bf6815310d00478a4c91d211f0f834139c37acdc1f0fae21e140e4f8319e0246bc4eb053478a9d79287df21f7f7a296da2305680f5c8226ccbb6d704236086d3c7b260e054a41feaf1caf33a72c4c688dee365c5f7e01ecbf923b0cb71468dc22f1b4ede290438db001e4e83df01b150766a10fa4e759a2623ebf4e3955f7def38a1cbe8223211238241a5d87c781294a449af5d319a7daa8166c54ef4ec03b5f68e3532f496f4797146ed4ca73267aeea9ed03a0903a04336cdc99f31b1e6b9eb6a311c1ffd13fcaabf66a3db3a755084ef88e7cb716fad54c521e181b02ba51e0189644e143b74323a4c8504191b593cbaab6099334cd40116049e758d40196d678a6a5df0010ca075a4cc8bdd415e2328990457e2e93657e72377574b6cd2df41e93d195bdd3a5e6e8d8f1b65459dff7d38d2d2bff9ddbfb3883ae54f7876e252da0313929f6a64c5a9e48851171fe286218605af7e0d2f8fc2482d7be34a7a2d0d18d362b111c5a16bbe894d9eea96ba3248788ed7c332c7f19f0040767eb10da0b812a3489b40adf22c7ee7a3c4f5e6db2945ec0bc3c5f5b1a3018ae428235feb339e7483f4c2e219ba961e347d9b457f9bd1298b42d386c43f797442b227f8c747bdb02e8da8f4857e5e8873b56c86884f781d04cf9bac0e9947e2d784f78dde1ab9b87f9431f1da69c03b3033e9abd24e3da6b5e04697cc616a5bc50284928267fdaac5c805cbd7ea64fd77447c65880b74555e38ba2a300da97d0f6a7fa5474a27569791ea762f8a7244aa024f9e0c7e14fbedd3b7707ce9786069cce2ec8d8e3dd557ba96034b996a60223f1756c92aee7b364d63994e7a344b9b8fb73b4e024d5a3ecd804e97f7b8b629061ca9ddaa38aec564c4a90ae3cb78b13d6bee175746e423ced7dc4b847628092e26e41f616a201f45d777b7099722d5569d96d0551cbcdaba8515f93bf266325f24361c4fdd54efdb139052c8c64445c16fa8158b295f84875fa671e0720d0207fe7a3e6f4b7fb92e985ec4b924d85495bff85a239406b9fcf6c581f035b39804f4c357333a772a275a2a70596f1c4566b0352966baef9052af8fd17f8b5bc9bec7cb282a23ab070c3df1a49d48a303997aeb7a38c9bbec99b66a8af4066cfd16dd76a115e4d85732166de4f28573c0e457a87e606d345e09a05df376de5f3318d187df8f40cadb29ae2b92ea03804d2fa05583c43605315f16cb3d61aca67389086810677321ea148b18aa7c01423ed0b10ffc1d045cd182240375d0b2c1bb13ff974fc0a931c202895f511a2695ebfbba29db16cd86f4a1e382a5cfcab59d38540147884264f1c62f6438fe6275791ebd0ed5034ab0241f67f4d4f15f36fb41019ccbe707ea24cb3b0133db0667c2c65789eb77e9fc74b3d0fc4d3561e7695b28ca111e78a620f591ebb2b94b4fe3e9d03530cd332d22d1e99bc956a07673882db4f0018ff77ec1ffa2af6129727d4afd3d1eee74ab00ec5792f7f10110e85b8c691cd409f0fcf890a62b484b4ff5917afefce66f082642724fbbb3ec13da268d4fef584b34c0133eb58bf4854652b970816169cce6b2b4cd64892f9ed550f37cd3027aaf180879d1f3c4813eda34bc6d9558b2905891ca29123b078f13047c34797332c4f835e5f1e418387e9a950024920faa5a11869749a48c83bafcbbe8d69e1d08bd50f7f1628afdc8062c819e89fdaefb1ec2484be0ca0581450f6f14e5d7b059c193b40eafd08efca82047d5e5baf44f1bd682d07ada56d94772cd9daf7befc4b410bba12679cd266f7e98aac90a6ec1a2f4849a4368c182fde315a03c1de2054a950ac314daacf6118f26bba4c0da36344b8cf5701a6f7628ed6f3511eade5891e631c05679e141d031e689a6d028e840032e3943eeffa2a1d2a2fc59fb20d66bd06599d4bab76d0414821471e1432d1aca0dfa6248d393e82d295c20a8584eeb823da9e5a0f24f661eda8e55f51f13009e42c0ba471882a8688472e29ff79bb34db9e8eb9e295e99a76bcc78080ba94bb848ed8633c31a63d4101f1d77c1b7437a96bd2b5fa8f55bfe6676c1bef83f66233041dd5d16bded7a490a1aba196bab365f3944a4cfeddadb6203b8230094706e84cc4d91a4b285a98cf9b554d4e469907079a1e327ff9326555d64f4e423e70d13c944ff5f8b3483a91483683bae8adb06cdb55323e3d952eb5eec0ea9a06ce75fd3b96b75cc95dfb13e93d4dbb4cabc0f7a4006559e2b12f0bc4a57cf013af3172ea775dfaffab4eb69042a0542cdb4b0cf9158d9259d734e7ccaa717665301b698a69bf9df0406c9e22b6094230076075ed7aa572cec6b45e89fcf6717f021c90ca42b48edc462289ba9cb76f742a9bfc4a9fdb8219cee0bc3755d4d75f0ebfe9eb297f99383448888072b5dc72e9fbc411a5737a6b7a4869b1c6bfaffed90f6d6dd1d67709c02a8764e1819d620052341f5990363a3976e4d2ab134d0ed6317ebc1b1e950d0438949d6995330b5207eaf7c38310db18ed810def18bf7b3dcf97e559751fbd84627466d8dbfeb11f808ff623fcf1b33c79a6a07c31394cefc857361a4af609a6a53bafa5d932d2baf85f389ce9b910a18606054cd1467bab31528f7080d3bd0f1dd0380e8937aa344cfe433ebf416f43dc7e966c1b04416352f1f1a39b61437603f9bf82dfe4d0e6ed1147f3df08ca3ce0a7566315401e17c26da4c48bc5c50cd0436d61f9bcbd12ba4645df2f8795129422b04f7550719a52b149e6a7aeffebf22a2d74b5e671ab5ff8bb99b0655cefb544bfca0acc22aa396c2a65ea196f68974827b574e4146e4dc9ff41df3104d2d6e9215ba16e996794858d16e0ba73f24c226890d838b97c884be3c5407a980c84d71a38736be4de2a189cd09cf06801a0ea1e4b388ca7fe730176876b7f71326cdab950a08f929c89464738aad0befe9bd85c9cb7ef7cb0061a602fcad801d6533b2bfab0d4d615f1e71488ed5d5db6ac44d2d0314ed4864b7dc0d4cbded5530b6453820eb7e442d8c8594a2c4b41675b1e68b8459a8bb24cca58eb1e0e97da1339942456d37e6032208db712c7411c2089d4961ea71f7749e367624e4ae5d7313ae802cfa03edb2ebc84e0fcd15ba92787e5ac9b388dcdffde0915705726a3430851d60c2d39610edcf4a0ebd9a900d3e075111f6f60e5780c5f8aeec42c4f096c1a29ac3226e77cc97a4c46c8f29da98ac13159a16a5f3d4347a961a0242383f65f10f141cc06c821c3dd435d14b388caf0e0c454723d930fbb8a0987f4b930aac1af46b8f12509de88ce185c9ad6bfae75895ced4fb442102f0a59008deff4d0bf18f2b10159df4a5f7ae6cd882315dfd236c4afc65193c111c9f29a56c9a2e9a8a8e5d59bf80d3f4b96160030cbc72fe29cfa19cc73370294bb9d0e32321c95c76fb527f9501753b286b0f66df4959718fc271c1eed5b812db3eb9116bb408ae164b24504a4231768f99ca1673899254ed9a8b667d0e6a3acc6f7121bc09a5a5fc0174e74c0a1a3043535697ce35e7d618e50c7834a6d4708d7e72be7329d04479f2eb6bdd9005b7c019b37cbe5eea3bbc8aef49290f638c623d779a1e4f7dd26de32056cd6c431034432d4a12e748bcc856008e9b42d13ca829cd90cfdfcbb609d59a206aa08e413724e5a54f6427979b2192df168c3f1ebd02f5a4d3dd8740f01098c2fda0380f2e21b6e7672d3425b320d38b04c64bbaba2573313785f0ae3a4379043f789dc929eeca8a90f80951ce02a6c9d8b9867201effbf7d6306f479008bb3cf1b2737cc2abf67f2832ba2b1fc0cd0c21ef0517de0a5a984afbd0791a81bd357991366b86b1eab58a2f01efedc17aeedb8ba9d0137f095a8e8fbdcb1a55594da6119aaf2146f065788ca831699e27be841eeee7eaddf37acb83730b848f500b7204e47ced5c83893cbee81166f291377473cb001d9d6bd81b56b088e559206976bf0d6ee599f19f9d60915aafd5310832187b3b3a347fd195a491dd121e89f031a3c36cdabab688e0329b36db3fa4e2e8a8cc55fcce6b4d9e82c7697ea8eb042c28ddbb546f121d8377633322b24b46f441f39547b89167972e781053f143156120f640586b36ef099a83c6256e84251d1f842dcf0016ae2b6e2ccf614e1f346898ad6dbf2b384fe61236c372b560a80444021d05913c292fdbe5adb14eef76527d2ec25562812983bfea61bf5e1b29d8368f6bec5c398aec2a1a79489266ff73905fd9151119302268214d5b4978d2f307972efd599facad235935db758a468843bab0141a13306fe5066dd197a6cd52b2dc67b5ac98379fc6225a8e95e50596ea45ad29d8ef9f45de5193a9f2e5805eb8d1efb3cc084186f306a30bc7ff83750ec9b0e4f65ef0109f5236a73d653d145b9757285facce03cfa057800df405d9c11365b6fd82cc63011afb1d97fa62faabc6e9a42d9b58f59c502ee71a563c4875d8b18c082e66efe730f3d61c848c03fd485648291b3a5c59857e1dd0b1ff62ef40c033a6bf6debdb7873b234ca57693a61a77b6b43c68b90d60bfc14ae5fcce5d6d0949df3b90dd38f2b436b3a70b71b193446a52f3683a28df0e4f58f73756c53f343df49b0708b8fdac29b6e4b4ca3b2369fd04eb239c45fbbbb070be838981846011d5d9cb41035ea0b6acdc7a04732873f9f0a8bdb9c2c56bc6489f0bc80c03f336c0b3b6389757d6660fa0cf891d7bbf9ecd7d321a7b32c79d570062797b443d0e138c1644c44d6aa1b817330f323ec351143943048896b14cccbd063e4372d53a0629b67ca24af1c58808095036b5b84756ed4632bf13d4a68d819142a0ad5bdce09e074ad73d3a0801e818965fd7203c0c3862e56c762794eadd5e7c60faa15aef6849976f461a6a202d92c4f37de8d0550b66699efc398ada9e906047fdc3e69ccaae0c5fe913a000763f759451f5c55c4db715502a90a9205a93864246e7d3351c0e7f25dfbd2f7ac1c03ca65f2539f538a61e424fe3c6b587795432b252d43985124e15b59e5b25502a26e84caf11d24cbb2e88bad80cf1e888242928d9766a2ba8f4a598056da248c8fccf0e2813caf3acfcff2f90f27a17babb95588f533ce0d92a87b0a03a54b8859f9243a3bce8cddf4fa1ba11ec2f1977d96bc70c6202a7d89186dd6e380c969de3e4a716c6425161f0b229e50ca6bda74e7b56c98994646c0aeadacb39d6b0c37c62d7faa55a61fdeb90bb7743149f07b722f44e47d1afddd52133fec01a4e9c76691a8bf588cfeed1351c8b08db710d7dc6f551462b0e0a767063a76233a508fad271bcfd6800d2c06834e7122c364f9a891f41f9b66caeb43ca819c36ee8bfe3193238efd3359329c14b2285c2b3bfc3030d7eba991a613c7a9d8316e93e9bff6e4f9abbde361c73de671137852def9709384129a2d11db95be39b3d23714115eec5c589cb8b778ea61cb7338c60223c91fc70b390d4d8a341e420b5cb6019aa0e9b4b6d90e8577eea2315e019bcf89e67cf79754baf1911696455b0137f3e53c1048040a3ac69ee6cec286b2368468762888dab973021d23761170adda6e15a4d713e2f83ffe564fd953163823a045669e9f3f8a674b28053c0b463f887ad7d0901b576714653033ca729b0fb4c9b1aee9e264b77a0e22aafa18b0935f6a46c518e430c34f6b034c1fc773cd82ecc0dc33da8f1ff6a29e215af31ccda7322b2e2a71bdc45246d00392f8df9d875fbbbc374404624833727f0b6604aac2ac844eb9b28c310d620f0d62f2741a117d9355956affb31268f045d1099024d8ed60379e4dc533d945456a608a0aad7206ad3cc7d92ca02b11e5e1665cbdd1d0607ee4cbfb1003d640beee0897daa3f117af82890c3aa6d33b555971d6e6dab58f8d73e33e895b6cd3cf36402994e02ad71a46de52ebe0aaa5c3ad06e1f5ad9a0fef1b48e963922ca532882569ef3b724b9c80832c61465b3640ae4952d3d0aaaea51a5248395e5288a29dae87d825943ffa2ec9691479f9b58412de214b165b3cd636139ab702d070b257c3fc2aa6ceb39bb5923adad8cac9f6f30ea1496d09e592c309a76b4ca9ebc686e807c67045d6cd67b485698c54816bbe4f2a50297431f7efcabddfd59355d08ef40be51e1169442ccf6f3d620543dbf1a89be1090e18acb131b21acd81b84cc2d1bbd3e20b7a1614e6098e252cd2cc7e37371a8f2e8b00872cb228911f93c3ef2e21b0cbac7a28e32d523f97b63202ac4f4f34a00ce843f807ba8cdf8daa64119f682dea2e610c27a6f42c9c568dcd436cfc13e35fec0e4598abd654c17b7580c96d1e85f46b36414191b7e32869c330291f4ccda8073c57fab2b7df898546eaba16062ee555ee964f861cfb3594d38b6a95cb33320ca5a9448d9423302975758d57d157b15617b8e8f9f6a6b56327a1d8af8c3b2edbcee960b05aa949ee36639c0968303bc6897aa2d69805805cb12adcec4075e1efbc3077529443197a8713b719f140bb82cb4c1706f702207ef8debae5ef98a7a2e0150625cb00678a092686aea297d65ccd983babe3b08ee82ec743a314b1d5eba5537ba41ee8658fc840e292b10ce40488e51a467981029daa3829d13c72809def343d878d3178e9b1762075f926f8397a62561863c26b6617a6107599faa3c1b35eeda04d108233249d9bdc6070f0d2089284d59ce386be004c73032746d2a56867f3533f74b1c56b9e03c19a39c0c7a04681b4af675f2460f445d9ee03e93e68f3cd0faadb3d469613a1fab51e57be5c047cb2bda9ae45b656826d6adf795bd83eed8b832f6dd261bd74612ce11db74f66565bc84adaa142d364db8386954b1c4a3ddd4c676101a553f4abefd097a1c00940ebf612d3491dc13b73b1324fc98845b4fa514a2e9c4cf35284e9be66f2fc10165f053ec3cb0dace2adad36fd1647006b113246a901425d448273e5056f89140070bdd79e7bff647cccd60b9ce447891d71d3abf69ca75cb8de28ed2ca119cdb642fdae75b055dc663307e25ac25b16a936b9933922f898c74254e058d745df3edd448be0ec8047c9782698072c78758887dd814a72ee9bdc1701a83b89ef45881d0ce29e9623d0adbc5c933120e1eeec9a2fb54f4794d79afc353a877e58f9fa016c0989661cc294a20c6a4aefa8e0fcb58dbbc86c36724e33bc4b8cc0eb9b42f53e55d08bc14c45fca6062c5d4f9deed006fe04743437db62906bcdd7b22dfff8a573eb661b025b08aa16d0d9f91264f535c2a25759424de89310e38649ddfec5f64877e3d16636693d2921ef8ff6f21217857efddd2dbd5256dded71cdc459fe192fe35d02c1de5acd1c710743fc6cddf104ca5efd7e1a6f8d814aef92a797c2cdb3baef57bd0ee52ed2b42db28b47b43c19e19513220e079726c32a5fb9e7e7c349268df38decbe37499893d2c04ba74c65b86cdbad9a253c61159d5450e93c7dc68a8a61f84874b153d53d58af7553ae8a41d0e47d59ee07b4bbb0ce337b5f250dafef0be46196616f0de867821bb004ea3b85645500ef1a610b1de645f7c1eae5f6c6f80489122321045ce4f31a40f2e2eb4600551d74a1ac508c887b301fdc8571d22f71d74450d780c0e55eab82c0aaaf5177e7682310c0d24279b837c515fd6fc2ea2a5288f804ed6b8ba0dc8e60b4063bcf404e6c6c295d497dc2b10c1cc76a46fe6d8fee43d2cc282ade9e985dcd1bf11ec9a6c83312f1ee957f6c57547cd41e2dfe3b73ffadc576a92f707e9b7556d1372436b41e55ba18f4f264ff059f52969c04f44ba29af61113a019a6ee2313cec646b228f475198457a5d1b899bdaefaf31f7a6e5db659535ad564586b9fd687e5cd1bf098d344f517443f5dcb6fe98fa20b80d0cc713fddba95c25b7e1d75ed467d5527bfe35648356bc0fb8104155e22b51e4a9db1d5210ffdf54cc0c956ad0971fa6c330822fa7e527643a7cb2458fad7fff49bac6ca231aca07b99461a173e61677fb8df6e718db3e08d3a13a2513ecd887e340668d4e11131455f2ed8ca9a7f1d65feb8e472ac7a78e254a7bd7097453aff0eef5f6b15e5061e992fddc6b50a7ed6e2abb127321790e4f284e2abcbcbe52d171791b22e37bca64267aa6eb4fcc0c8fd2374ceaee9d2d9ad5186f9a3316a3f76c51d2a20265d16056db54a319253e28fec6452518ba806fd77cb062765ead84394f799975156068bb75d3b40cc910bb128ceafc23a5eb6c2b5ad612ff92caabde7f53de32bf14eb1b3eb7ab819b8bef589dd23543dce79ecdd1a9ab1c6bb1ab9032d4d7eb1fd9e342109e20bd4bdd898500658107c56b8029dbb19df0fa0b835bdcb9382647c4da08628fd4e7fa7342fd9efa989fba98be3704d68750623cc843a9537f7aa3207952f2f1be229e5952a4bf21af2a0cc7d0cf7dffa99cf38f1459aff4b741e27b298c31f864d3e4bb30b07ce55a33213584b850b009524ec96be3c9ef253e602b7345654cc9482574396a172b7f0175b394a4a6e15528fa990bd0bbf04f563bb61654b833b18d8a58f9e359f4c5f42317aef046346e9cd802da21f3209dc77375acd0ce88d3a2e2f7a4d2dacbe1ee6773cbcfd7adc7a869a362fa9dfb82f6ca680fbb56ff10de162e6d4530b02511bb413155fe913e1e02677da0b6295c817f419962317194e05c7c68c1f999b116443ccce1b17994207164b4c06c66ff22981deff82a1556b50d5b2c164689553c539e7e1275197541b8ec59c2e161ee43ad944a3e8e70f6b0d535b56f34f68c56d60e7b7f78eac632f935d5cc5df5391b94c16105e8cf20e5c5915fb14859420c71ef8fbdbb0adbe2893d0cfeaf50dda429e957c8f23a8b557e6a7abbb780cb6f2614cda1a27950295d26ba91befd38ef642bbe40f8fc4bd251e3684238111b88bd8ef1063bec23979bceeb3207d1778776bd86eb44d0f5dd6e30b2b4c39cedc2e32490cbc536325f50c9a6b8f895748f10871f72516eb0097aa5ad244803af8ea49cb62e9b11569cd27eeee04c37ef400a557cd646e9c4758d0f7f58dee7a603f60d0a534df3bf0bda6b55ec0a81a194dc44a3ec2bc5123001d89125a88020af8f387dc416fe9f93d429fb83288e6f28c13506fd7e2053f0e26bde1d2e9410aaa45740653708a73389bd7a9ef4dd85acf45f19227ac60f2dc133d6285af29cff774544913eb6ae15c7986b94d55bfe7e41bc92652068b699c783efdcdac361c7bd0769f8b3fa03ef614991f73173163aa5960fe61d6dcf6f575e715221b0a7404655efd40b62cfecc09799273dc366662d994698eb00e09170579777941b3ed7ab13f95c14ab2a84e4cef3704d3917e8ee8530012074b7900b4e132f980413a486ba92104eea9bdc191af8cc8f0e755a246a0a5c3021c7e0561dfea15490d71e90d42b375ca69ddc4bc45dad4153430b33a7efdd9099f51e857bfff14cb89bca61fe1247af964c5f6a0a41d46381e013a6a0e06f66a3c40e9d78a16e465b0ca2589e980d23406a033230e3f7e05357c4f29d2dfcc5839776f87519d5d2b8a5548a8083c6d2148b87850dbd6d9f43b4985797ce3712fa7ddad5d917170425f4e06f9e7f3f5553b9c17ced7c1ba7d54cd365ec915d6f4214361509831034c91c00e3a78529cd9b51d4678c1c48198ad0d7ad618c0f3fd8a15741e8eaec96b809dc26e5f0d0634d1468088497bbb36d9fdaa5d4bb7f129fd0fc3abcfda336fb2ab1155b5e7d8c56cbdf26a193c6681d35d7c1e4db2ee8bab4a2bb28ffebfa02aafae842ea10a80add98760ff0f96c231d9eba5a7b04e8ff43647ee4666ac841bad7ea12dd6c9dc6f1b6fbb05a5f2addbd8305580b59daee15d99b16aae3a92c28a732e262a9aaa57922fd55b5f72919ee45d5ad4684562772747d8d37f9c72c36a4d24da119b0eed5c41e26c50160c47dbc9f95779b8654de2209fedf9e1fa8985f8312bf35f1fd12861f9d6de2ddfd7c6536764fea050726615c020f5b05ae05135d4f0e77769e9e8b7d5b488930fdc6677e8e2b0fc5bed1e0a82c094950f907ba7091af465e179c6bc184e4d661d5f6131af323f225d54ce534c63f52b73caf6d6fbcd4b08488939ad14db1d1916cb8ad31d79eb19f45e251a053b5ed350a27eacf36bced8f8a8f190cc8860402c69bc1787eb0c72464ac64b5c7af5cac66e7bd893e1468a0e161b33720c3abdd4b74eb2a52d0a5dc59e33c7c1e9d59ed25420d232c81bf1f13a8cd1fafc1f5878c5998a9257e0737c6eef28076c37badd6f3fc30dea136fc5778eda7503f25df5d75dcd8dd70e9bf7df20b387b3adcd05185391f23abd38d2b6ca932414b5f36374e17868e598692506f264927b346f0329c15f281b9bf36d6cc9a99c3521db76ceb5746b477d99ad529846f34ce660a206b21c9c9f7c3c05300831f09944f68706376966b28c3d7b6e4562d1c9a113d5dc805e99a0aea778093d9851de955c6280f2edda634873ca0e11fe9598bdfb1a79a3def6076efb565fdf6d813438e1e5b727d4b4d2a2f99f59bdc6608f4d576c8e9b0906e92797245f8637b65ddeedc90e62c50670e6f58aff4514fa3f5145904e9e134cb534043fee6b7fbc454cbb64b4c2ae870da148f5b330e7e59383883469f3c2c8ab236dd0da3d176f0dc4ab66c2ca325f14ac6ba9198d5a4a493462d6c222e2faf3e1bc14f6d4f83fd4926169bfe9bc10ad419f9b804299d7eeed45354d7a4f2a32de8dec5ddb2071d5f9a9c4f6f2781935f2543928cb84ef4cc15427fbde98401cc724ac0608b1a2d6fee1e4d5276c3f11efd775c469f1a3273f3c468da6646564fe39471f1cb700ad8f807fcbda8c47026edad69e8331d39107e35907910f12fd91c70d24c7e7e72335dc89e08472d6579610623f36cae7869174bfdf53429c2b7d1a03bb5d716b847b7e680634f6ab6adb03a261472f09d90d702ec40861ba2010343552c3677738088b0197c56d6a0dadbbe9220858f9290efedf2d1d6f3e04f40cf2d601d1da0a20340ce88a9c8bae187dd3d48890af4da11233f6558a2d52e011934345494cc3b44f7b14dcda0e73f47dc4af340207b3859b3e8c307835698ac20f08542fa686b49bf440b34ed3780137918a78ee5d515972208a7554290a48b5efe5cbe6417c9174dfb3acda22f9491f933d6cc93ecf06dc0379482ce88891a0baeda1b304b538c82ade9a5835b3dcca0b116311420f5d6bed45a35c693d09bc4d3c05c7d36bca5c34aa2babf96c712bf171501565f46cb2ba2f08064eae9d44a95749379d97e2b8b388be9675c0e270bf3fb93dc6fee14eb5d802334dd803a0b6a924ba333a42053f3be4882e72b832d80c39adac3fa779ba38b8800b994b4c89d5d35749e41a120862ee2e6fe29cf55c7d3055f45b5436e1d60d1a53627671b9b4e6a330d9785309b62b192f46b9af13d9381272da7fe69f78ae477ded20c0f0e73f7ec1c5769a1fd4d680987c546b18546c2676d7d42c5583a572f4a94ff0b80bb552c1c2d9adffe444f4aab70d5a543223164775662d73c36e9e7c1d2fcc0995c1784da793a445b324483737c86def533e771cdb8b9547632fb1a7fa4e08d26f79e863c8d1f8e9f55eb2f3eb230310b8e293ba2b4cd48d574df7e860ce911a28f3a8798921d27d11ea8b484cadde2dd83d0211d486171c6beab26eed3059533a706683e363448ef023c13713e20585c4f3d109d46addbf474be1c48d3f71d0236094e7c343074668f5dc84f0654de675fcab4f246df8f76fea41a7f2873079b4e37ea2130070cc5a379622283f190fefdfbd66df7d5c95d80ca5a11395e10b690abd84e26eda6b7dde912aa9f0c90866faea4e64a830a6d4459f9a007ad7e47a2d793fbf861f8685cf21211ac513850c5d2fe26f05afabdbb9ad8d64b70d55bf4d95dbad87b236a5e1db05f5a5edd5b27042d4e9e784f54bf6966c70be1e2f2a74cd227256a3475d4cbd43288fef7590008e0d5981396e637305ad0309242b4c5cf4aeae037bef0f52050161e9d85beaf1d94b5c3298fbcb1f66ffce7f3a35b22e01f4422b613764170f01623885de923e68bf2c2bd6e5e5d9963217a2c7d0b79a460f53f2a774360ca8c69b6f85c0affce152a14a298fc4f9a7622c6d03a9cd4574376127092a0a5938770191a1a8b983ea4031762f70e342006a03c4011b99ea41fd20b0d25ce9a178072a9b1dd38657a8a09d3f2e4227a3c5f4bbf555a97041bdf7cb90f624b2977dd8e63b1ae3b32de0cf6e94dfe714cfcb968d569d49150cc023d9d2bf6152eacedd5538e0e59cc5db8f2e0665f87da28e53212d0e90eade0a72e747edf4d516011c7309046e5509f7d711992904d0c64fad23f70df638cc7068c1e47840dee896f33113c365cc7e492bc01aacf7fa752e9f3c02e2d1035035f4386aba1cfeb03c609df1add61d02f1ad6668dee60f303f44c529b832f7b36cf526585046feca377bf36a2536129deda276725a23b62cfa6778b4de8f8163daafe15a3d815489732fa3a414a6e2ad80213629f92d67cfb7b792034ff13c9cbf1cfecf445b09065a48a27783120683750cb88986f51bd713bbf2cbafdd8914262238a85ec5c93070d84ba82b1325dedd513cddf26b78b415bbf8b4d79613c52e0b92ccc2bb5f31eb6452c6780ab7cb001aaba0d1b5df245d13db043df7ac3b8750eb20bae8c2150dd677a9c72762b68845968488dd67f13163a8112261e1d158023fb3e74896b12b6595c7d969a8b2a0cd96ebd1ee5a600ec53ee530043f92353b3f6c83611cf8f626769a7b246223b80300567de5ababe17ad7fb1e62dfc09d40b27abb3e2290bba9824381f999a5ac3be7e022333eb3eba7087ea144b7d149b8dd2325a638e8c003ceeb239de3d8866ea84ed99be4f55aef2e97780cb41bb69fa8a0576bb032af1a6926d8389db97f37ce2cd1044dacaccbc46b316222e2323f625f36a31b41920c799f919efd9421188eb64546116a6d44008ff629ff189485efc299bd107a51d49e5279c29bbdba41a0d5b25554a9806b362ee6fb10a0b775b6b02a8490c40e978597ca69158e5e559b1bdf8b30c3b0a75f0398504f66b7c6845ac704c9fbb3fd13c01a9b64d063bc3349ad1a480e727463c48e65254aed2217baf565f64b666353dc5c2cb06e4e88aec79ba14e76088903e7d43b7e493121983d6ce84cf6a8ed2ea91653a732ffb704d62817b30477ca447e1abc0652fd830881c224826cf5a985cf0f21d82992f269c29f741cf0898c4a36aca363cf60e1c5ec610d78fdeed7355cc340855410fca3f555df41f1b1dd9bbbe5f5a5bc183365900842db3eeedf28baaabe7c411d9b900325142fc0a332fc018b7d1d1c37e6cb81202295620e1fccb9ca0ff0810aaf164739d4808851d3ab14a44872193a524cb20323eff47768c5f9c0c316c5a6ab39bd16758f223f163c271bb9ae3e5e58152dc5cb78e1a59af72f755694b16ac291495fe6ecd7f726e40ab92b1e0472d685ffc2c7003e1ade7721311debce50259e810cddece87c59c0bd980ad668b6c688d49493f49bc652c34dc0f4246131703426331222fa8c16ad9f08035609fdc375aa9d4f932c3d6351d495818a93870c6d763cd4d63eee8f0384ca3ac7c8516dc763d6a5efbdb76eed8e94ee98eef794dfb8645dc3d01e1dfcb99db8aa03eeb7ff951056be1c8b34279f257769a0cfc847a94d641f318fd63b51064901468fa2a782856038b2291d1f7d5dff36485981809a8c23b3af003f63dd787d5d5b1c3b2070eea2fc0662483b36ccd1c2b0310419db49e1857c7e3e4a36c793ecd8e04f22b71dcdd44f0c0a22714c4d940221612fd9804b7a96aeba886e1ad49c437b92b68f5d13b727d54e40a7624d454e7f5b7faa25feb6d70ab73c9031a080765389f7fa924dc98275c07ab64ba726c4219aa4998e019e87fbf9cb622a133827beb4ccdf0543103d3a3cd5acb3a2e21637fc019eda9ff805e76b7cd7e0b53476fb111dacfa98e7f61945d90cd40dfff5d799cd3f2aac8e463495b4323c50932bcb9a0e9294b56f0f9e51fbc17d4ff73e3b4ca01c6da2646a2e9cb85209e2d35cf29db6bea270fa2d69ede2a04be1ab0596513f0d1f3e51b2ed62604b3954a837004806dc6db5cb28d0e7ebd36e55b828fd5db2d040bc08ee7186ed85a3b1ef2a663c2ada8ee343672e9dc6037bc27a0726e6a9d827226b0d079ef6c61bcbdcd153e3765aac92b49f29bf1cf93bdd83ca82977b7306cbb2eb3a84340da4b66d2d7fd6f15d6db5e5444edca2cfae3398d362a87dca8e2c44208f95b31333647e119e9eb58931110f53c2f1d6cba105356205f0bf3bd354a0aaeb3d22290addad9f42eafc5f475a54631006c7317ebe60c6546ce1278a594674e2d4612cf7b305badf209b6624f9d072521218536b7e53981a56d21766fa247474580f52fb3d2b7220a91ba33593ba4a06146b5175463b8cf826db2eb8659de6951010c347cdf93dc10625c9095a83914208e9b420c03ef1a2856c78218f9cf83bc9225d2e8a3cb7026dcb29f07dcdb3b8daabeb0c1c417d2c451516b78d4d5b9b9df09a00afe525d36d2bbca6342731ebff8c26cd4a79ef4762483c83762e243edfcf19f5857cdc3828fb62fb9bfa7de7ad02b8dbeb373b5cde774f8d0dab19a4b13a212655574a217ae07d600820f9262f749001e86d079926bdda9d914076de0e1765db9ad779c899573804eddb90ec1f514772e065f183819646a1c5f09df20bec7169a2b2ea32b10dc7aefa72eea3dca735a4e0ba50fa98b2d70c63e5452179d386c7925934314b34b779209dcc430012f8783de5354bd78e855271a55d3768de95a48b43575dd61081ff2d38eb39b08dcfe5a41dc81d05c11e65c096cc6eb1c1059193b9946e9b8f83dba3f03678cada7b636f0357dce519c4c4008260f87f4ce760d0a99029910030caf5f3566f11067b328e90803f9985ab5141f2108189405f0b65bb33e943266e80a3535890dc5992fae91abec5749b1e3a8fcde88cdf43cf439f74cb876a99e45a0c8b5721a0cb9209413604fa6957a7384dc76d9f359c866d8091319d0c16f348fdbc2d4d59af34247e96183bd4a226dfdaf6b0388e0edfa6df5627c6915f7da39c6554644a5a417a41c169eef7eebbc4753bd9781b2e4352daa95d086c39587442f02436f2c98e88355f37c7ed529d47ac0d284d0e8a0c1c7652f3d65653cff24c5b5f7be5ecededd4678c48b29ad3c8ab6352862d9419d5d89b84523baa20fa63debc561bf4ad851e4395feaf4ef6e237ef267defcd4df7d0ab188a068ef4ed5311395dadd9a02e50a928aa97af17cc61d3a249c6347c7bb021300cc8c0a0f6f6c98732cc2fe47b1b5e1b67ec0dd7d4cb5471b41444af768c172cd17c79784c2181eeeac79311397db6db659e0d32e49fdefa45b6ba2d32d669ac1238861318a1a71e59aafba45aad4747b7de6dc1a90137615df2999f1bc410bd388a5312ac9f4f26b4e0767936993a7f422b757be2f3ae5ba3da6c642c4a390a6ddac7bdba60c386daf118ed02d62d081f3c4d77957f0a093e1904602d9327c92b8cf7a2555b46e19a09b10c1df9d02b9fb1a34b6d47b596048d136401680ce35127bfb68386009763adbf3ded960b98a73a7cb341355adb642de4dbd5599ee900addbb152fc27ebbe0e9e5ebd8b8110e869f9b1274a6ef4909a1edb3ef5cf5f71e6e0c4a2768e754eb5e514d908e7e89a6c82cc60ddaf9464d9f16903d6beaec3fdcd7c82bb54f510710a5152d3f5da0179c503b84c04e0a532b9d508b340681f722cf50b49277e642517944fd3c4390d2757acb3f12f6828e66b5d9e0077560fb89b15499dab3fe151733bc6ee48752192df3deb7132642172f709cf145b77faedc30cb122c7ad9b055aae729ba4b0788310d55a7889ddf4ddbeb43f42e365a4ae3a90a2141d890c32c922fc4d8b3fa99e5d7cf986dd6ed0ecc29b557c0d1c6150ea8bd9b885ff643b9f4a7e74617bdca1b61e08811986fa0e491065cea83c816253266584c7c1ba53568114e900677cee29ef3b5ed524f6da43633038273400e08e3cd5bbb771e8d3ffdba4d2e65f03dd275feadf8366cd330246eb8fe47c6e74fc190a64740ce573f81731a3c59db6d2a8bb5ff16787af3f3037bbe1d379071113df3f3f7c53cf572268af3ceac3b5879d175cff8f2be277a98cd42a264499767ba91e97c751712fe4ecff7f31e81b591ec3f1b0cd2d51ca160501dce358f0bea0ad1065644adc6dc21dbb648693325687708706e4e254d1dfdc56b0ed63b07d6c031aadcd37702d93dc6e654ddeacae9a3d962398246de0ad04149de83a0e28f3f782e70e0f8173f9d8f90e73fb59da8722da7e3ba76576c14728c5de4cdc49c33034de7e7edf68bb2003c85f226db463ac5c58db6e0027e3cf52688ff468f15d1179111451574d246fa66e7f35528e45d67467862b07c68e7a071fa0b2e059a8334ce1927a5a230d2637948bee69d4f355c9ea57479a9b81080a382daf8092689f5f459f662c423fed3f20722d927ad7ad70f5e3da82733cb4f3302d581a024b15627eadec09fae01770913423aac432a68fa20c6cf84f779fbec7b47066f2f02162d78bbec550a37debb7943fb2d6d687feab436561cbea0e855a1e141a5ddceaee3799ef87a46e46fe1b5c45a084f6ea65e82da5e6df678d685877b826b6c1e2f7e1a2eb2f7e8db5a69ccf1d65741e32827914da9b00b0a0bd2599ca068a9130dc4df52b59f08221702303d33f43eda6f9b228fe9a59da8f1280b8b50cd49a5fc953639d0eec64229f03e4539a61c3414c2e0405b4014aad4792a9614b8b696651afaaf36d987c5ca555b14915e176d08a51dbe1b7e10e05e8be57b66054efa5a186cbad9472e686bb91c01fbb185dec12feeabf47a81691c8f1b8e623eb243adc77519bca9afb97d3088c1c44523e48902796102c9d52196ba22d8ab49d451b0824bc2a2c78d9dc83fe18e58c80065a20111e0556d6d4a1b7ffb46386bfc42dc3ea03a5e9a2d2aeb36362b3ca13141881151b8cc4fc10d668ae7d381b0bcefa9cdec14874ebd35103584559eb91d58edf45bfbe25a77078cce9f75bcd436b3f536c09cdd153e874197e198dcedfac07639a9aa100d76ea92c7fef45c854043533353b081c91c98fe83bef0247951858c18a775727e1259ffaf4130e345a675322bf51fafba5afa1183d4a935c92c8ffb24038c8295100818cc86d1ecb14723debcaf97b6089ac383cea2c4dfc239c555a4495601241f46f417fefa19380cd9060cecf85f8410e125bc8f5a8551bb928271457bae9d6f008fb70019811ea8da34ef6e8503e87c41ff2fda98328780b743ea8852ddaff880e0cc33151da36d0c1a09a28e51d7c919b6f558876783b020dc8ca412b6a5ec07df1687514aa45113a54dc2d2c33df117ae0c1f265baeddc249e7a1ad25d5179cad470794018ff95076b0b1d44a1769d2560ce9ee4951fdff1c0bc0359e18b8014b27822b2700153087ca16ac04c82b7377005d8289ef23797632a7ff8a57e4a996762a7dcf5f0cd4a3c24cbc519a45ba7f3030690060af5a954fa082f38b756f7296c9ef14daa632375a152da67dc3ad96ce39dabf17526330b2eece337baee2fc35027953e30ea4bac6a38f2594ccb06cc94e5783c0dac5231e08fda6e1a663893a54cd6bbd91e0c301f3e4a936de4add89eed4757944b9732f8bcf57c4c305174b4efe7eda0cad44f71a10bfa196cb604d65a0b6b131de90e3f7f331f09c7812ce8d61874158cd0e72ee13c7d755e32c4409d068ce5addbf1e9e064cb492aa7ec532b61f93d2e2be8ffc2ee31e514f671703b5bda2cc6b1852c521cb9e45f8c7ff8060f9d4fbf04e988b4b3a6bff5f3da81a72886b86b9633759bcc86019c8e0c760634b32e8667ec647723a1bf493785ab16ecb5edef958c07f4cfc766b25f082965143e7a8322a90c37b21f5be719f9f25308ae266e461245afee70531dcd4b46745a001342cfae71a30a8f4e36cfbbd963db12ffe2d2a202351010e5f547716ad7761d636464c4eecf66ff228bd7746675b89efb79dc1287d07c29bbe7dec2c83acf658e172b4c1c7347eb271da31972a98d0d9ac03a3e4c5fe20a795d15b0d27efc4a5f961b7ed1fa10d200fad88315dc88b0547699bf265cb9ab7d69e2b9be97c11b10475912c3ae088131ef4fa518f17d4ff38f0b2a3c10427c61022f050e98f22f61708f1425ee22f3a65ef05ed25b4b8790cd2051675afdb4c50eb0f94de7a934e533e3e51e5c200a6a0c715e88bcb0e8a0023cf4c3640dd6688d74617a4329838e6ec2ce0cb9281b3783c44e72e0d0f2930fe203b3405f9f9c69d2027e08d59d2f0e409eb08fd8a79f13e54b5a2af39c1dc511bfbca53bffc214a7c0b30737b611206d12d475d4faeaf36e49359eb7af2fdba9d17fb694b40e79b6dcefbee5426cffbbd6c0d702e1d08e485a103e086aebe1b2f9c13694c3dd3daca2b627f05abf61b69cb36b81f316cd306929d8db5ad05d6fe2fa3b05e33ab0374fead3e82d923f3cabaefcd170837e42fda9c3c0339a93585ff3236cc14740595ca8e634e0df9acec95f0f06d410985954268b618074337beb17aab57bea57b6748c1a8dec1945feb5b7ae855cf72884bebac30cfe2b0c1139b39936879cfa116b5753e519e243f4634d3357dcce109a83d3011c104f8c8ff14c6f7d2fb934d8d122e4f90d87162dff3422717dc6e36fa054fadf3105c333d2b4c4e8bdb3ab72d4fc8b1e0d8c6622d7b8c40db641442ea73dcad5642817ee63a715ed6026f274aa3e9dbbc438fe4f0429bea56178db401d5845eb996ae4daf08d8c4d6ced3a0ce778d408ec0a8ea055e67558858650f6ff7405f90e8e1bc92ea69c95a51893aec6d19408fcd5402eb9554bd9076751b40c6a758f28af417e0667b423357524a6300db084ca8f45cb6344cfd713ea83fd13b05d16905802f2d06a4e3187800d8cbe5bc00aae2f21512d1778a74521bb3b59e36a65a9fb3e9b62dc0e1819c869abd32bb3df0f9d66f64235ddfb5bd9111060b95cccf5f985324e3daf36c5050fb2b10bdfd663ffc24d266d8691b01a321d15bf3ae8f05a4a1b55a69c74a576de593418dfda8f151804614bbc3f4acc4a9fadd9a9b9f44e3bbdfbdb2805c1f78124b18f3bee509393e9d8ee68a72b8a844395a1317a6301a38d22c5183a4036aeb32d1a438ac1e19ebe64733dcc43ef7e4843a9b5d2690150edc6f1dbf3aad179e282bdb1138a58b57c3a2d451617391d5f11b39dc528d40b9e0e14b7734265793b3edc718b086833df1344cd6d8097afcf94e9673bfbb104b1e387d4153e7391b0ec071303a3c408e658f70f572bd5372bf702b8005c3dab5b3dfa54ff2c6080c614d2fc7d5c4ebe26697040f4a3efb1073a7ab2e65c2525a5700755c177bd40bbc9d4af48beb8175ae7ecfd650d37b8155f514223d9ae5ca707f80b2bbfeb9a8ccf83cef87c9234c7d0bde894f7a077ca5172792468e97d745dee6ef64fc86cceb62d0ff8489456540420d1843a7926ed3d75946097809433377b93f8028d6e11756a5946de269e819e965b4cd0a15ff2c3de6a2287fe226951c343b705c3e29db5780d07acec95a1a6630762d67e7be9197536cddb457d711c1ac3f09ab16af356bbe0060dc75c8ed8df7971bf60b2fd73093420fa9d691d84e4ad79d139abf15ab2b9bc627ea17a1c1f267d1350e03dd7d54b0d0a238cb798fad74e4105a3b6df4f237a20ee5bde67ea66ac471d8ab3cb0ae97dabcd4e3563722742c81d64dd59e4a4be2d49d707b622082ff46715a1812e144797907cc67b6772b6664bb6c63b16e3918b0d15e68d026f48b6449f957214b6d3a423ca6eeb0388f8d9483b688efdddb0e21e54715280f3d9df4441b8f7cc12c8d430720fdc37f3841ac6b991a8785276b7fe7f8333abcd75a8ffe955ecda37c3c321ff3dd941b7055d00d8562035fa158c7e11746aa1332f36cc9100ac2ee14fc722ba3d38cb87dd45cd5553803f48e65d8ffd8b88ea5c6e9f0393b3404f5518a14c630e6374189f50ffe2efb0ded5212d7197fdcf5d6b1258a38074a8fa484d150219742569a0a23f73ae6813070baebb8c31413b460388fff67956d63649da8d7af1fafacd3678d06056ac87d6c63b0457d22f74b06521c91287f117ab3a68e15261aff6944d4c7f1417aebe1a60509f4523d56afd573cf3a28348aa97db498e8fea3383ff2e25abdf5bc8126e01a9f9d4d744aebaf59452fc97408d4e520a624f9ac60b5d7b57e4bbef46101cafa610bc8572f84941f8e46dab0a70d2040111497fdb93c4a14f8413fa808d6591994926d5f16287f3cdc7d6c7e90f9c54258f1be11d5d15b6fb783033bd0c1baac21fefc00f9b28e5bf1642cf88d913f9f9e477c9b206184c353c15b0f25e998f25008c8270ae88c1a7c7df91182709cfa0866164bf2dcaa0a8373dfc286e2baf78baeae83812e3b97e122808a21a3fe96ec240ea030b07496e8f096b55cdbeed3ab4b288f9063507ab15bc988ffed5a2f197c85ac24e0a8cbec9f770f74848f064618df2a70ecca4a377aa0b6e78eb30efb91afca0e768c3fb23f5f3cb53495c25b561d16bc8416b2a588be068eb63cdd6b520442409429ae29235ee9ad93a11b36cc0ae354908c18ff7e9b984dfd79e3f0e03f065f672923f4e0220a99587802e92182d5f9e262d18d6a8fc1a978d7473d00772a701f35365221208c5b623fe807715041fcb073f803e0c41c668035442229ef947f60d2207de89f568205e8b93e96337efebd16db28de25ee6f3119e50bc83b8a601df2f3484e8b9d6326fc3be5a2503fead58ba03a8a6ae1337c2889e9c4ec2041e113c5a2f465c835fedc5c420946d48e13eacdf43776673dffaec1435a48055811cd91715b2874e74362a578bfff1a929fcd9b23509ceb4124e24d2b9d0417e07773fb779863e73a0cdf80acaa00975262bdce7a3bc471ae9b19fd9777f74ff09658582020bec6b1ed76beb9b70af23bb95aae885c4de529645a1fb4ea7aeab3a3639f664e2a8ab2aea6018372d3b8a45196623f198ff93291c17d6cf84c33732b06f8932a90d11cf82b4145266207805af1d143e36d6d5286383a648ffd491f4a78a51bde6b612e513a55a8119d40bde2a1fd587fafd8433bb989fc2b046ee0bb38ab992836a4a70bcf923baaec222a4d3d3c2996f17539c99512948244beedef70db1b92cf9de2c970e679060153051e28487d0d28b0405ce7de6be970887d46dbc4899b3fa3caaeecdd38d0917baf8f0d6166e495d105c801ab8666e5d2decdb8b3ed6efc6209cd61937edfb1f4769d5bd6df1bb02a47e13c3cad212d56fd9fdb2c03399eaa1787a51d7229118348e0cdf529cd249914a1cfb28eafdf11a31373078932c520e60f400970490897a4bac99f5966d7c9deaa2bfb8d5b8a4b4eff93f237bc0558bc32a33ed1a121cf22cfcf75d3517014890cc071fba566baf0a30227ba6f6f05593549c0d1e8411c9f22e716e5f52d12f7e668960f8922943ea38d341d0c34f2b366bd72435be4127df1a2af714be16686df58af57d403183be5a856a31fb19da57a80e00dd89160222d93b710b067bd81e579c71d7c40d48e537394a2e9069f10bd5b38f4cefe7beb41d60d53ddd3fe270e7ca2ac658761a01d6fe958b24460eede5f6c859dd36e3cc1b54dd86207a69e8bea3a5e7ae5de4df56f962e2788f7a443361a00a70f59d771ee2f597778a763ffddce0ae0229ddd6ec99f0a38d86b72b8fff214488cafc09022ec7e24e32772bb8d3f6513068a4b7c77042e0849a56a00b8c2eeaa28fb57f65c83f194584336a0b076888917a6d3d782b152772ba9b08c7e3fe7692646a0f972c39c4ee40211391a90ed8df12f42e2c5db927f3248f1004bd3b894a8b0acecaa6ef58ef9801c4cae866ced1f8db7c640367514469d9f783640f936bc328f68715e02b9a0e8708c450fb28e03e5268f30d14d775e1c4eb9fff9a2eb8704ea41545ef5169196a52a0419e6e3b98c5f100561a98ced1001d2381b6cfaedf5ebde681aa947b4ec82bc62762eaf9a254cbf545dcdbf8b6c43759461edb3fd8eb0f1327514540afdceda672cdffc1ee5a9180c9ce1f3c83bccfcb45a9da5a7d4e00a194d56284b3266ea5e230ba04231ab47de6be51549397b5180746e1d02bdc2f67732c9177ba81513a46e034761ad3674df650d40710849d8774508ae74702e32aa341270aedd860916abf3cfe8f42a7129e6886ff0abe805d8ca89710705e634f62ab03d2aceb2e1ffe13272cbee1e89ba861c5ed03584acd0aa0e7218d956d86a58816b95a65e6f5715c3acde0584fc499f1278062404b86ad07c8d17e59f8bfb4bef8c143cef2a49e27ae4864a3ab39cca0d081673dd0cf2d3d3c2e8dd98f675165a6b7cc1c248618c3f57eec1e419a9b89cd9391993ef6833b4329beec2bb9708bbf19e71c1c87885ba03fc50cdb3a1d4ef9232e5681ca5f0f0cb6853215465f3b0d4a2e7591d7f843ba6361918a34ee988a5974e3bcf6f56e43815bc2165fe3665fac7e5b6ed40dac4139c2f4be85f1eb8656c6bde9a67a84bb21f516fe6cbdea8c10b30840be9f2632e85f205ad940e477609da37aa92fbfc3216136a0603c8464c7aa4f001914e64da30ff4331d8486a6df46b4b54bf0ae31f6628dc54afd8fcb2adb2652acd96f55c625b4de141d50187d7f34a402ffdbccab22ab8335f15ae08428709c3b88f51e6bfff31df744f2e85ca858bbdeb93a0d3f7fc2174e54371c5b9199c4bf955910597af027c80c4b01efc8f381f50b4c9562a2de2fbc27c18e3546791bd0978955776c799c7f6e988ac08f194490843145477ce45dc67fe1d26f15213da00567525af295843f96c2e7e25456383a738bc3fe46245577894ba953d907dff55e825e5534c602e6e63ee6421ca8efac5e2f8a913e5ece10bcf32ff5e3aef34ae4cd10f10686c3e1bc1bca62e7dea37a5a7c6084d034f1802eddb6464126a7a2ad6004bcf629b8dffb666d461bef777686b311248b8d369de209c239b3ab492dfd178bed4012a94463c8627ebe518461a6346ea057250a046fbacbb6c9235da7b44f05045abfba16903940bb24fbe9886fc770763d3b645357ff4260ba5017f1fe5618e292ccd6ddd646314322c86d51a1b62cc1de9c7c37a1ff1669ebef0164c84b1abb135a5359c5d426fa577880c5d7a513b15360db810d132c37b83c7397ab4aed4471650c2a9026e1d6f9a6cbec017bbe1b41503e459a13d98f4b2d2aff2a93041fecda43983409d1d3e1859700ea3b5202b781428431d09b37f470abde0393c10bb0da57d3863e104baaa50f8dd50feaf65e7fb221bb2c82658861b8fdac35b053c09c49d929ff4348f7d0d69c600027c3cc80dbb069e694007b52b553ca76d4e49c71e63a04da27f49ec69860c257c26d267008bdfc939d4a1ede36070b28b5908b98f1c23033b5a02979ebf02b18387ff04fa706c915022140296a7fdaf69c107213e6509ce0a83df433050594763943e5e10042c698132f1d38915cd0f33bec2b5f6634ceaaad836fe88ac2fd956f9cfe0c125a99400cfdad31fb3c8c2e7117e3ab53d3c7003cf2852c8c0ffb5eabcca9c7b5e89aa8211b7f0ed21872039023600b0ddcf6a7767b20154b15ef3be592e6bb12dbf01f91d95bf9f468fda023cfae4c54078bd887325ca043e567725f66a812b6bb656da8e374e48bc64651395c5c20b2ff57dabaff0f6f28724d321a3bbfcf5ac232abd6bafe19fe372e4d1fd732bcf80e74946f2640231e392e7bfae1c1eec8e85d840bb61e1fb2666199cc17ddcb5fed2b39aecfa670617ad2450052295c81d43d22868f8f02cf66d05ebc9c8aed79404a9248f1cfaa9d9fceb1366b4426d4f8a13618512a09aded424bc035c43ec663951dfae1cc836c75e08a0676ce77ce4bbf52705cadf3428c9d8c8710d0081b532f1012572f0a625a7789202e21fec5da12081c0993f69d8ccdf618ec8f33dac120bd8762a2611c7280a9fe1dad18b0159a7f026a87b6ce2e17882048205715c0e069c6fec794fa0a803f08ce915d0650af0666d00a76ac4748673d3fca5465ded8f101b59d35e22c377a8e90a97b5212a99fa73f80198851c4cd7ec543d979cfdafa28406c633f5a2cc85678d898e92cd61cf0cccc722ea1f5c118f5f58c70c01bf01f6f0db6c779cb75851f4d0f17c799b8a6de033cce4c4292521adcbe6f1d5f4857f48450dbb9c440f5e14962c34fb09f57467313ad9b4865777329798d2fb4a10e5fa680d3c7de77d18bdf762b3ad4b72bd74baaf43f9dbf3cf19260f3d4d7542fd02076b33d068bbacc8a7072c128f68ac513c3c1a1a23231b7a3ad5a95a10eea267a1d1270285eeb441590e7bc98071744e089e805502019677567d8f632edea759bf78632118a24dca2bef6fd963a6fc84420c537c5850ed6cc2cfac61c39b6071fcacd8fe64cc02afbd381241cc809c9b4dfadf5030ff5926d6508ecad482f316bb36b72bfed167f9183d6963b98946389508bb9d2a0881413dc6220fb18eb5dc86be90b49a6b9ac94f6e7230e69f147d6a19eb91db994aaf455136c87cd9d70425abc4bc526eab8b346793a748355878010957477b3bc03ace5a4206086131440a9f8a96208e5a43a375b497e99c6b421c5adbf95f86b186c6d9caed8741264b504501ff871034e1f147d1cfa428627d04aaab65cb6c685d0f80962ad23698b3dbeb884b45a1e2a65c7d6894c6a128efb5da73c22394ef36cbc4c5373d719fe555bce9ed1ff47bb5b36e9f4deb92b9f3981df2ad3786876f2e90806d791f5ce0336b9cf4690bac87f87db44d4346b1e59984d752eccfa3213e3c266fba3bc2a00d2cfec543f8e380ab61d3e9d4ce06b9cfc1e5c74b0ad26c70afe76ae04a53fb06ea999bfbaa9c2f6feb75fe3e4c7004f60f6c22d924b3d2744adbf7a7a8fdea278a12977f87101f858239dd0bed2f09b61dc89045ae1a017ab83fc2897c65badd60c790ed35fdeadd433def1eefb399bcd4cca3e8f3442ab6c814749c19afede61cb362f88bd5a9a41f6d83245b55e58335ce0723383f37ab1bb06391f46fd71b80bc7bda9557f913ccfa97c77cff09ae283e2a5ae4dc4d258356368c3ec1637055430eb117137cca1d9e9c999020d9a18342b65a539e595ca98b6c95cb86f421e4b10bee9d410ae8c7b45f7ed6fdbbbbf25813700f55ca696223d5592838473bf37df15911c4cc8c5af0d398a9c1f070bb9e862f19e90843969eff999fafe0a22f226eb0bb99ddb7ca4bf7e1a0f79ed37cd10dca9b4ac983f1bb074303043d98da413cc77e5560fd9c3df1292ac68e0b822fa14d331b5b23ac42c6a78c0b5562908f0e2098f24716ea24d063e6832982ef7dc990c0dd52340193e3fe6b44107a9e8fbc8805faa51d6b54b9e90bb6557acddf198bc8d9db4665d4fdd134341b016740288ceefd473a46e487f87bea163db118fcd4c3d59915f9cf5df8f2dc693076d473ce3615580ed685da3a82ea7a7540f3544039119d97b3fcf9faab26526cae54ccd8888c070b61c8d259e3b8553eb26eb57fbb37834595720c067832e96759445ccbddc7dd2170b6ce9d3774c8687e04bbe311505c4124ffb63ae094c758cd96526198cff9031967175f3ff8e00d65f127f5ef2acc41c9ddde5978f5b7d4c79d6746b5511ba1a830fc73a4034961a964c0fc0e56e33f7be196cb43726e271f01994265df093f090b1ee217cae0acbda22692fde7aee6571e6c371920efc28cfe7e1b5241637bfdce38872465730c020d848840026206f371270697b3f3c69fdf0ac8af4f8f2eaaf958cd63bad84d6fae80d93172c46af52b13c1e02b3aaa423a021581f4adc81be0b01455138c83a8cba3924d323c242bd4dbf9eca3d047e4531a94a8bc9d23910c03bbb487f3dc7fe58a282691504698e980ff26d75a6c171c8ba3e829ab707d33fe1ad8f5b3e86a112d5d98cb6c2558591df6a944d5f52836335c7d2e619ef82853f5ed27c8614538a20fa61020d0657098641034ba9fb2d7c010d8f5ab300582dcf32d9559641df8209a425c74a6a2ad58749246c120d1ec76060403d5059476b10b30765a7eaea1b2a7751f895f7f219b1796e6c717e77ed25e0ca3c8cf7da0da46dd43dfd273130733abac3ad97d46ed294e277fc548b30bafd51229b27e7c53d998b030ae0c94a36782a1fa3bb431946083ea5426d974e4289bdb7b9a2dc67c51546234d9f6edb86b79c0c3ae0fd8c6a817b08b2a7bfd5307c8dc953f5555ed8e601d43618d76fdcda0b1e3b486b51b0cf733ae3cbb6dc0c23e66a3bfeaf89339d7f27d5fa5dc4ea6986578d4867b429568a33478cab5df495639602367e615918de5d1e586f7cc89e27f878f8277b087f23e6bf88cf0af82d177c3cfb09ccb42a688fb5b5f8c6632533a2fdc1c9f7d19978d954d9a7f3c2598955343ad3162403d4f62b7b937f10cbdb3b5e5e7cd2390f158428e73ecbe0a13ad329b3131a4d541a13d7cec131deece19ff287b308b4a1d2fbd3220ae2efcaf1d7983929bceac06f466bd9da33fbf880fd37a736f4b358b2456daa22e21678c09068dfeaab112f2c4a44c8816ff4a60e63ceab7a053ed433cb96a9be1944adae03f7c63e640642d2a9cfe8645e3e783db8eb2ac7ba83e2fd3fc76b4df9f9717b77d0d0e1fe423326d96381e5987fc15079a30c0b7b2284f27f3f0774e8b69c8e04281b4216bf55a42d45ca88b062c9fbee3e04a07d6a15c3c7cb1698b4738facb27f1ab5495990da5a3adffd97507110ce1f64c4b69488dde5509e245f1f37036820c5adea88ce05f771b555a948032c74b64a3574fc7ad38896995cc4820f499c0378831b9cc7f15aceb4475b40f5f22a02273c0e971e12d500de3ec0d2c869de2b7472710e7c736c57436bffc5954be451779df7ac356e03b534cfff440ac30e26e36d541842ba238b90050c0e381ed4d7ae7bccf9d6405443c62bfc31b49d01c5208a5d1867368ded47b42f584ddf059645265dabd527207ccc8f2f7314ac6e894a2c06eae82017d2ed8177513203983fb4793b022379ce604aa22e70fde2973173ac73dcc1bf9c803f36d3089f26f915f8fcbe1898f1b8e12069676c96d8b4ec3672c72f52f53b715e06e258e34d2b14f0393671d31b0a7ff16d27ba11553dcb9a2443101ac87f134d35529cc0a6d2d775c3e680b6efc6eb1059999768afe2bd0f43695aea7f29d8bac3556f516010d99fd3003630a31c88a9c96e0b5d29c2d7847e83fdf6d2238e2f924b1ab3e4efe4dfd66637502bff57f859d752ce93d1d6756aa946f2bad7b30eb4cf0955218eccd44d27ed468dd936770b6a934c83d42488503b53efeaa4d572b1ccc1fe0b2005ba489fd2f951215ba284c159113c771bcf42913c31a3240f50e49b58d1a87a7aa055f3ed2fcb73dba8df9e86f88acc3fd8fb3ad3042a5e1474d1305f07bdb8bceaa5848ef3c836fdec5a12f3a410174f4399e29ffc02b58309e8558f21c14457d885d544f5892f1d6005633e2f3d527dd56bf41da3d9e35b722e795d58e8c3d362e5a180ba45f03ede3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8556742c93bf99f6549d6b0ce03711a610a4ea960e0917fd52bb2ed75e10e9d20440d1ecbe84d59ba7201705582092c7a3608cf5986e3fffb30e872518cfdd19675b829f4b1f44ac99a56637d15af6291d19bc9a35945459adc0633bbc9627649f9f45b3d5d81b3bed5656a8254d45b884e202df174cec786c6d520d66128e2c6d9d4214e79c2fbc6e9d12e547100bfdc707a17ed2bcdb3dfe41d5a689cc6334c2af7adbb3ca747604e365f268ec5acddf877d2e599193f03f6d8ebb550f7d0330d8a0cf999c533eea6dd991f3e58bf36d5503a4a00fd3027fb8fd13cd1044f530914c47041aa06a7497f1e7ad5e19ac2aeb6bf5d1d4006f92ddbda07569069949d7e3725622365519d162a4fe028bb8933e218b0f40bb6c26093d5df421b810ef23febfdab2ea687e0d76d6324e3fa69cbfa36f06ebd7f1052782dcc2264100c1d4109ad1f00c741af1b89d40440869c94d0af41fa91ae5c0da8cbd2ce97761724829473e8b64c634b837bfcf5fbf3776b58d7709e1548912fb7931e554e7b588829c8df272a156e1b732bc36730a634cfbf5794aa17a16139722353b5e7975986a66f4e5ac2ba23284407e248cd18136bf50b7862be97b3b946ac2b606fb19b2995e00850c15f844eea4d4314735c3180714d21f199c0a1296600f30ec757e9f2693a32296f27956b56caa8adfa7c100b1f39ab3f3f06da972f71acf43b5d9ea9820828145d8f74ff2e02caa8b2ce190a2766f431e6d39711f8d0dd7000d269e667024acff4135bb8e9748fe900eea481ee41a9818ba41d632bbeaeff38f79ffba4c04992f54aedb14e98b30e6dc61f7d5ed43be238ba2926eaf41c4f3e5f82c971dc79289e1398a4d5b17ea3e69a68558a48a162ef737d61257120aa2dbc2f0719ee568f124ae82358950b7a6e2c9b8547f94932df99be9d01c78e0964ff7a939cd710294d0e3be23ea73f280a528ce8367167ddde4d75be7d3e7aebd7656d0798900cf83457b27ec4bbbf70800363dfd1cb68c5c9a7116628b2748fa787fc778bd6b07aa177a6233b35b4a98be3ce3c883fdfe7e479d162c85c5cbf3f362eae892dd0d9555b28122b9316f454b8321537bf8d90c06282cab86b7d223c1da1b2b418ee99843dc0d6e9ce96c7b2b249a1d9c1f22e8e3109d70ed557f0b2c865723ca8120f452646cbc7162185cddd9572d756f075b55526b721d3c1cf8057ebfe7a689d1d0985c2d17a1007648c01b33a5025162b610ced3204d0dc7f90434208faff5e68c52caed76cfed0f0c7ca6576dca38ee2f47ab71d21634ff77d72ba94e55cf51d35159e42c44a02183af5a08b42d2cea5ebc6c24d11c96ad0bc5a767ebe73386a1927ce69b5e6b76b1f869ae33112da2e45f563c290966956ef1d484eb003818e56c081af24c1262f92bee5bf710604d33781017b603322009db4e2bb0f16fd3eda32e1b1e27e998119d23a7ba9a1426c141febbc1d42ae35ca4b00578517967db9d8b58cc97a2224d93803afab85cc487dde026617601c598d446643605f150a69fa27d5264c4ff43787009f832ed42a52c0a4d1aa622a2177cfc79e5ceb63238c7b6a04f5fa4fd31cf7e83829102675b4ddd4070c2df12e96d3e227d72e4af14ddac05574f9c172c7bc676d4f3f3b0fcbbaa192a1fe05ece5f0e96af9d1ad935e0e99ffa134914622484536c59bae27a6ed70a85e05126c66d8e8b8e73aa5833b07ceb34281b2e678a4ca7d5b1ad10eb477c460f395374cde3d96e89baebe0b40de3bd623b271eeb682e214d7fc5d10d7d87d3f458d34652225d8a88ff28f721ee0e765e6a6bc2b5ac8ca910c3d17965b13e42a1fcf23a154d519fe99e2418ad7b19bbbd38fd59c7f4af28dc04f564617f0089cd0b391f8ecff74adea7abe865d77284eaa25c40a1075a00852f2196f27f8f31001b902ddf8b3c053359779a18031665f1ae01f0d42bcfce9f486ff0e975c64437a550e0d1f84721cda826d417a5a2b2cc6e05e8f50a5d112105b9d4dcbf4112ee97e453d9a7a45f37a0aeebc47c8b975aa59e142aa473c41f5734b92d1a030ffbe337e0a5fd931b2e4a8f2a00c5a371109f824670df1affd6f17395ebdfc16a84d8681102d893420a8cbe577e9ee4464085c75e07f38fc124e833ddaeb156a00371769326557fba4af3e434f3a4959505cccd7be034bb1e66bbb671ac579e2d29f12ee4d42c4949196a29daa11273363996c205991b53408890fe55fbef126d5477a899855ba623ebbbce00111322397a54e3a26c7ddef5553861c532b2db4ecf30942fd4dc2a7c80e430d014ac2f53e5be2fabef3d190c47a6f585802216677305686df632f6b2242b021fad1322310910a28991d0584795a304f03c7b7d22d0648e80587092f469fb144b0853de3c6f34dffb3f2845bcfb38bb5850965adacb419b2fc31df37a4781605b327ae1cafffc800f29167b310df771fdaaa995f0b765e966a07ff586c3b5c13e9bad92b615e4aa3fb3dcf4b4589c7604dec237df5fb030eaf066b17e275b0986fe4d3ce3971f0cceb384c1a823a57d7108e247f851936faba58332eec2ca74f39e8afec1b5548b8b2f25c577037b873839c73434884144223d5518dc6f505165dd08ef46cde5e16d73db3c98f99d98105151b487ed28b486f8e5423c0f743fd068cc1f42adaa14b693e0245c146c78792f08ad4bf9deae005cb888bdc25b172e70cdc374521cf165c32dcdedac704c854a3f0d319b7f39473002ef6c8a23c9dcad1cc0b423bf6898a616cac37957d0b38ab9c2e1dab603ca33c5fcf1c8ca5b17c2de6ffbdb7e9844680aa22e2d7d706d244dab708e8ff9cd986ae922d968e84cb06de6d07422771bcdc1b423f27bd3b3254323249aea22527047a34b5c711349e407e1820a033e1118f2a72732247a38a115391bc9030b41195c563a9d282570d969f73496eec08161ec71fa53f86a6359a53c3e3d7711a3a42d8eefa985577c5ccbde1704d67b24b5f1b3c7a7505958c1ac6f844f1e800e298968685416a5d431d572846554fd84641757e6a9b04a5611b922dd0b26da9d91e3663786df7459dcf7f13bea949d7d6c54c13a4e9b3f9fa2cabdc0c932d4dac8be8d32ada39782651f450ec028eb2a99d4b1191959365ddf90f5f58f818d783659b4ceff23dfedc29bb44e92cce9fb034a0befdb15f0f06077a9b5a68fcaa30a19dc302eef84bee37b44a3a0543110b103faa2d3f9d5d369037f1ee6164cab81974b54a750d93e3ebbd8b5185ccf0468fcffa6c1d29a9876c21ff5cd52f49750ad69a8da103c6336b379d52fbc718b927668b8c8ec1afe86365d2335ceeb6a8a2be55ee5d3743cf885abcfe6e25977317f862c1ea55467db1b2abb7d15ebc60c9000910c764acce5295c399d846a1822a87563638e0aecbffde86ca85a7f5429da24630ec7a47602b92a2282f5352984645930978afedb4b1959dff623b0d2f817a577156ffd2b7494f162c895cdf750b3d300c83c2a02f403dd4b4f7aa9e4ffe527925b1b968dfadd00f825bb53ff986d5b2fae9ca0ae16bab6a63d24aa47eb5e300ca068577ecd5750212676da69802eaf827725e5ca20a7c5564f96a733fe563dc61e53b2ba95e2139463cf5c332338c1b405506c2d71a6d337ed0da1409fe9f5d2ebbc9ec0482b714bada3533930e8c6c151d42297e9940b324eb5232296c318d313ae6e1a2ddc0f66fd2b1b85b7214e4bc5718918493f95f06e21f4eab83c5ee0d7fdbab58e4d9409999aed433ae81e2a2fba5df27cd3707bd73c34f46f01415e7d785165e8ed99152b668532062df4de60d84ca9929cc7a6f9379918d15bc9aac5061136ed88ebc083e454e96bb81b065477da06a55d0b4e7bb431154df79ad6e3a5ba5294e47733f347899067a673251cacd294406300ffb3cea793123960bcf97ddc99c846ceb54bd95fb08fb0bf52f0fb86f9a9eb6bb20ab9bd006516aa3ace3255323d5dec1ca7ec34ae2673052a202cfcbf10b72ebbdabe16a6e199262048fbf50df92fffa4efbf9aff3d56b78dfb9d616641d5d9723c01a63ce970e7d9fab8ed5d7f688414747a099fd2f3c88c3b4edb6fa3654721a021918f7d746b6460de575d7a951d8f44c32b92f907936e53f7969f6075f8e4f21f52036d6bdfd16eec7217270528eaa78277d792461db054225714d877d06262e629597b1530904943aadc2bb72bb4ad042b095e09edd9c0f2a79208f3494a43f7054249cd4a06e7e545e60f150683c8ede22cfa8322864c7c59a660b9038e4b94b1305f1913ac444fecc25f2ca5daf25dc9eaed8fc84da1521a9f6cc8548dc82a5ca873338a7886adb42a3502d203b6746fbb76d4b563ba96a528c953771430361883b139b0b436c4a1fde160e7d87974e3b8eeccf9dfaf67c021e0932f6ed99be4eaf8605eec458e1d37df2b2e495aeab3a1c817374dee6cb93f9a2e5d7f515b762ef1bc21251138ce8f4de6be91d15f4aa6a601cfb2feaaac23cd2a463ad162144caf6ea39eb536616a6cdd7aee192182f44c79074cfaf98bdaf628806c027737170e28d8765dafac29f4ea6b663c8ee7c34b5c560b964bb57921f5fb0087b87a00879b5656749e87edfa1bca6909aa4e804392bde1e7e57d1024b7d171a4950525549628c09fec7b9e81631860a09bd69405d3dbcc03713cdca7d1e4f5efd260ea9c91b598ce677d9f44250feffaa25130695fa72c4340e70f8218e21caa1d1b9eb080fef62d091a3f78456582e3badbbe9c824601b4133e86865470a437f49839821a339fe450e05322dd39e97d80b2c865a9bb6a7df82388e14f57715fe41a029baca221181e1e41f499713d92d6b5b38b88753c10ade4900a3e136cae2ae1aae2e930eb7b21e12c86379d957426f1339f8d72b414b8a5f081354be08f1a517e20391f8e0eb62185efb4e87032baa224fe9717226e7c3b5c387284e1fd863623945d13fd20841a268996ad929ee062303409b9f1bd536c1dfce8516fc121bed3331e41f4e8c9c754345ce105bf55f2597173d55a69a557c3854e0eb7ac6b3a87991d4fd93f3cdbfa1bcc86cc841544fee5a16c2f66a4da86b1065eaadab9700addb858369271fe56ef98918dd2f85d38a1bdf0c11439242e49a7ea1901243a0e541f0796c053fb457455f3d638020564e5dc1392e150ef4f0f87146ee7499ebe728c04ae7a178389c0880cc22131f441f8c41c856ea001fa1db6b0e862fd8a48cdebe33d8472e208eb9615dfb8304623589a96d83cd7c429a9f3c84bb91f68bc5c6be0571be9daa20a2c110017fd103b569fe33aa39fc694819205963ce975d8f9f89df111c127e16c3e3e8e13842d616ac1b54000bf38c1c72ba1ed8d6cfc6efdb9fece84b334fecf76f0c5eb7fca1e7e51d80d376b3468c2a747bf34b905f84707e009e273bb264cacd60bb005cfa558bee084558469b9107eaf40d7e1362571ed1bc94baba2f6e510cca6040eb3fc779f23f100d3929888bda13ca48e76cbbd0e328e95537b323536ddf9aefa33e642b5007ce2bb03086aaa8572b859646fdc6d9a73ee3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855774454e3a1e3e0294c445444a26fc519ec1e418db89b88a6a8a8ea0e2f32242940af803b1e02f1945cd215f54fc1d826f81d0471f9723230ae8c7d0f598d32e823f28939848aaa1a9011c279e2f2313ce00965da290aa0990125c7a13d6905a5d5fcdc72e355f55e423b90c3a3a670ce6b87ad02a82e9b07f15ae1a3d82c0ebc075533ab3440dec3250f14db21e841f154e5b27fc8bd30aae1185120c7459922efe1f121f083b7e579487bdf9af524a0301c100f694b03c5f80b2b76d3004357dc8df3ae6a879134cfdd87dcf7ab2c6251e9010bdba1a936ac5a8334ed72b8cbf94e671e2a68c28fd4a6ca75a687d376404678b0aaa4ed061702a9bf7467513bcdc4aa3586b32030ce760d4d69c4296e4ef8bb513c1fc9d8f4876f2d0bf04c55bbcc951756fea06620259fd1b3396a27d0d1dd3622719f37579d20c1f0e55960c323ef908105a57b48ae2395fd6509b6c74caa8296e4ae23dc6478abd0da9612473ffa2fa199f6d450b19221e816e7ced5aed6b84eb0ab20b96e4ce148c33a1d29b5a945679a69080283a3c9667d465e49926c46d496c4b71b8470437bebb6a02739148e350e63ff8063179c3197008b1d32acc752def8e604926b6598702a26d4379a267bd228454a902a01703607b0224a51edf2c321c47e857335c85786b66161d587f52cfc1539cccbe8da36beb7be926501118587d137f975c120fbaeccdc57ec63363598dcc0f144ab7dcd9dba7ac4a280dd62e5b7d854cf06b9e2820e78df01ba026fc532dd8a45be4b7d0f7887da824dffdc9a08b4bdd243ae847f9148c30d881e28c9df857979ec00fb9b24e1d9084861a7a5c2c26be61ccbd4405fbfee52ee71a6a8e4f8f513b364a6e3d675a1f4522fa18aab229381329b977dd03ce57d2824e4182d145db4138a233b270d677f3117f45f3b96e8d2e0161bb915c0906d99af9f9518c2fd34446c20e8db44601c6c958185c60676428c2e78d7146399350005bc89c09119fb3e7e7eae46c28e9ac887b24717b63b43fa2fc37485d86852dcc8ba6b088fadf3c771f880fdb7b189a16d866a771ae1b6bd4e57e99e495038cba1b3ae3f954a035573c6eed31305c7a1c63345273cec172559f78c0a53c307971e383831f0a99b82663f82273ca6274aaf5cb5bfbd8ed9c6099899bc1b0d0909e800412802acfebc2d4a6af0be3d052582099d6757e7aa73a35dfe06c275c0438359d04c5dba677374dae784b11e3af4d1192b804d9a263e84439d23042c53f806905b8c796086fa2156edf1549b495c91db4061819cb51612026fbe6f1d6baa9903a4d980746b26c25c923e9395ff115ebea06db33b8e4b079d8882eb888f88ac9ca01af9280c335af48cf14f750c7c10ca96e6d68800c46a4e31e460c4dfda8f8a8f6d84cccc3d4542e62fb03e7eca7c870001229a3a99bed1658dc5b08160be927d81ef4d20da216ad1ad53f21a9820d641d83e2c8e2e97bbc07c3a38f65d75d5bbe03b4499748f8d34ce8cf720b4ebf471d77abd6e54a27aee6efc552db5bae8ee2f1ff32ddc2338687b50879318c83ac2dfbe0794cb5abdaf669a7d0c28a3489ec4904513313ff936ab394df025248b3d78b3d6067d55b7364f58b1f965a140048ae60ffeedb3243a94b5762dfa75f9b6a2f5bedeef4090a461bc963f46964f7d5c2ef40ab552136457a997ab41ed648758b075d2b034c65f7a21a339ce6e3f0131e026e79ff6d9c4e59d52868f93a65c70d3bee294defe1980322b73fc6d48f588436dc53be49f8c830ed091219638733d3679d8cf9049a1bb9e932b18be91014cd1442a890d4363788a78d99813e44b05708082400e03d441330d758121c0db4488262e1c3688273a1625fe8702dab299ce7f3a9ad664319851bd945ce4d0e20620187743e0c133d4f0f7a479efee6ceefc08a0acd1cb7db44e4f676501861260ea3d27e13d66fb99c70647abb597d25604b5f7efac0f4712ba9c8eb898a3bf2f2ccc58ad5221f5057cb33006d497d9fd4195c21fc4b28b8592637e2b0bfa21630d0c74a153305b142a2b7c0ba4bb8fa9c2d9d7fd40cad6c13fc9e4c4817fe23e988e4de0302e5e373c095a1be65d44cd08a4e0b69b6b5814cd5edb6041a03eaa2c872e9dcd03f76cbfabe5bf172e98290a14d8812beb9df77364d3d3ac7392c66e02ba131db05071a474c445121201e4f3b17da727a26abdfeb2ecc0ea7b5326fb3220726f30f9c87d810c8a50294d5cfa7ca5c24cc1793b14cdf5ec49cc9f185538e7ee63037bf91b3cd474b155960aa82cb4b0b4031736906c60950ac3c1534bbda0a59f20d2c8a64bc8f175e00833bc9b5b81b4dc36b90c8319b6207df0cf1e92bd9d4525028c3e4e36eb72e3df9c6e79a2c9d0636e0838a855b2f2e76dd1044fc950d3cc360767ea1d0dfd783a386b0eeb78d5c185991029d5d0ea2015973cd58b75e678685a9826a9b412ef186d944328b1364b2cafd5a583c0375a1ffbdd9658a1d24dadccaec7b67226c8274f74f6636744017252e3f15be4fb4b6d503bc0bf87a209f556c3bf4a548abe9ccef3562f35a10bb6ca0f98dfd54cc0398e68ea4c13480fd1e0732e4ae03624e3b15ba6ce94f8095f2ae3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8557c8f7b1f0146209e38b8ded1c7d0dfb0d4934746aedc5b68ecaec4dcc64183deab2bc08375f87c7aac90c3516fb98f2ee866ad58de8ad170995e1afdd3c3ef4b56bf108e1c58480049ea91f2686a8fff87a9bc9dcac5efa391892a8cc5359c2455f1e61aeb4bd4122146627cf6c88c669a256faac042fbf0c4e3b0b7be149bc33e9b36ba4f8c334c3b1dd6394e4db14d854c7a144dd14b0e87884b4a405a81a7892288b03b082746b2f607f5636aab328b23695d1d2f65b59e7b5f0cb8343133954f69822a79be70fd3dbf13b1fe64a6a6477f388a52f2e98df6a4539f1f82ee99bbafe061ee96e90443682b569b90d60b3efe25b7c5db73254965206648a14b4ae37c2608b594ff9943a149bec1366e1a4cf8b9cc97be2666129bb56bf9b39fb511a90a7a8f3ef91c12298f2b300864d650ef1924aeb1ab26c8798c161115bfb8f5adbe2bb1a99188a61bcd18bdb75cf3dc24f9951b6cf3476323d83f7bfb4cac195d7e901557dc7a5f0888eaf342770c24a0df0bf44e252de7ce6a58602fa70fd799093039418f68b1986d7d955c534b44df27718ed0fad99a15e7d84d87aee83d284735c71a91db832d0595f945d0950fc6ef24671b5732d516d24ccde1a2238ade5d00899b4d9b7811e83deb3444a3312e69b2d9b525bd40c11517bdd3f244b6e486797d276a02ee85964ca21e90b202e304a3a898c5c021e40e3f730bfbe37c204dd682dca32dd518fbf9c2b9e1560c90de00597bc6cc51917f827f2d8d3587a23a6d30fd44130973c2a6ca91f13344ef8aa29e301a12aa16b3f8d6d7f720e2589713ebc6d0aa6fc2ba7844df9fe6ad491ce209d744faac156075948ca16e0a981510d732cee2dd0cf0a496d1cf9bf1be1d725ffb74ba953082a48cd2b69321241f5f3624f399a89572515c21ce817d5cf37693b83bffb3c7c4aadc127d25994a28d5dc546d5b3322228b843b7854725a6cab3ac1013681f18ff33137775aa850de64a62752440c8de119d33e5824ebb66b82a205a102b5f906d156e6cee4cd230d7d5d48a18ac2380c6d250e121cd80c2ca447eddc1e2976038a0a9931a8fbd8e3855c7c81f69b35e278ade8df12c8a80cde9c8941b6e7ab0ec0914f0afc686618be614e481ef6bfdce9d33f97dde4e94682ec57af1138122c48a2df3bea95d03c9f86efa5c138fb3133f27ac48dc896c4d65188d9c2c65dbfabe99665e45fbe7566bd70a7c79426160d2756012d94548f5a74e364e0e4369b3ded377ffafb1692d3d4f88b12fc38a4ddfd818927b0c094f34eb5fdf05000694306de75c7ef84cb4b8fa47bd70aa2e89f7b96b2487c7716e1b5b2f1cb1ba79217d70724026a00fb501f44746f56af7a56ddead4ea6eee6bcd3dc2f2390caa11f0beba538ef095a6b57a082d89d029c8da3fbdaa16e83a231ac0598623f67e07dc0895f45e9ff7e9200872abc7390c5d297e274043d86885477a10f8844e968e78dad3598a665a7950e260d3e3207f0b792e6b99e8db28ecd3c0849653703c83ce995ab81412c8d13ec9ef79f4acf9e35ea467ef3c383f1950bcf16e231e5263334df5ff5f1ca4233702a3badd507f56679c634cf4fb054ba662bd729712b2a68a70570192947c05414af2790bdfe23c6fec8ff3a74a329f225f868aec6375108337a9f3a4ab765acdbdb04205be39e5b6c07700e1d2967480c1ac1b62eff2e960db908501475c7cced3ab876b5cba64ef56112e326393f64717368d3ad951295a470ac71e1a365c35e66267a092ffd89a8d9ccb6cc097a585b7f65cf366dea85cfc2f9e84504eac3c5bd8c90510f4c52a5bb4754486c4160b6503d3ae2e3e461643808c6c37aa3cf57671b1b074f84853f9dbd0fdb6764bb04af8200ffc256ae3ab3fd8c9e48ce9fd0967106c3959eac85a97744a9c3aa122a04e14a74b47d51976520de445671ee0b76c5595fd984bfe2c11090b7d1cf7a03334094cd107cd5917f3a883b39497c37efcb399622be3dc4493c09071fb502c04684164120ab01479025fcb4ee457514145f7a3ad2539491941857cc337c53b481875d041d1da85463073268c20c13e4f239c2fbdb060afe31b9910df5010ed88ac3bf3fe747818a74d03977f3dc402e6f20cd2515e86a26175da10b34c631ac513854ea3122743a5374795e50156b772602037571c7b184b66d10a5fb753be4d1c0c777ca21f188eba90c3862d5ba0b7411502a0c68538b7f2dcd53f273947d754f172c773f9bf63f8d7e4b9fb92a79c2e45c6465add1cfbaeed83521921ebdc503101e1d0f3445f583790b9945b3ee4b05fd8f96c92ea633a8a883d455f66a12535129f517f7fbbe09af0bc9d70498648ffc80d01c73e0648058be142cbeaa69cc9741e686da4099aea8c5dd7dd1f44f19529eff77b1cf52dc8483d2d30b7888236eb6d0038d523df83eac98ac27d43294942b0b52341f13b9d70fe245ba50ede36b9ddae855b32a0abf8b93e26d0643501a1775caf96c697673c8bbe30c4764d8cc6d2177babd741ab02ab325c0117e44a400c6db6343c76ceb279134166f81595e7fbf92d79e36e7cee85453d6c488fd2373b5f68dc4d9b3e7ae7003a4041540642ccfec001fe0e0db12b458031c157e1e85af58423ae4b2c17cf40321009ca6f4c5df6db975e000ae6ecedcd214434a16f0d2ca40a93ff55d6c155aba46f2cf8b25d58c97469dc16817770684a0e2f0d2106aa3473fdbb9755926a878088ff414374f84d68e0b899f94c11a2508dc4a01709dd6dae50c992f239b127acc0165bb93de109e4da9cde1367734d7c5462d61f1cf0b00b3738cb22e3b4d97ebc841e4d8d2f91b1886d8f3f951f80bcabe545e670a88997ddfa9f7bc89cc0b4465f39547e70f89ca5a20aaa37591b9e61950cb7fdcc7cc8a9f4622e8ca79028425c654f9b33e3bfdb23e03a470d602c92a5d58dc0123970fd2597dfd18d5ea2b7b20ad7cc2b2b2aa7bb5c003e3118b3d28b4d73daba0046f19c0c6e9a60ed94c0edb6b4d415a653d8d90d6d48ac0391fba77029fe248586ddd383d1367dc7813a93aae1ea0b6e236e78d306a9932e4db68d4c8622be71788c57a657349adc08faac2f6ce6e77846776a4775acbfd8de2f50820bf7e35c8e836a424cf3cde0f6ddd62f5110486d46399e19187260d32b65256b2e93c7cbb54c687e8aa5cb654aa7580cc617f9faf80a86cb73007768e92af3ca943491274afb83265f02073be4491674c4c16795fcc81779d0639aba859c1338d31b531ae01cab769f5468ae4b3ac1bdde2716a85d8a4b0b6b84e6b1ef3f2a36e0f7a9cae7d33d2c17ab1646565f358765c74b2115dcf37673007768e92af3ca943491274afb83265f02073be4491674c4c16795fcc817795ba0ebc9709af1a672f674a4bb873cca7387990de378974661feb0b80cc293d6fddf8918cf7c974aca0addbc10e3c7066a48ddcdce94cbf9ee65b3422cbc7a8ab40a27ac37ef7745f882a55e4bc289f9e0ce96bfb1d88361ad458f639d61bd199734f4d3dc3b7b11a2580dd408895f66b5297badde7c387716f460b98ec7ff6265d3f5dddf79c4ea63bdcde8238ef12bdb41783969b0b80acefde242e68ba3d875499dfcb860186d854ecae6ae87086dcb1bce5bcacf2c532690c4576a36ae2a781bf6b4d39f308d08046e8c63c59907807da8717c3d45ff8e5111ac422d660abf9fbf2d0e92495d2cdafd50323cebbeb63a3c08a6bb7015ad22db6e7643cecb612a7be062682a0fac215c336007573978e6e8a12839d9d48b364a4465550cd9ffe3a3173334f7c7f74055c41e540a474d413040221a858c0091241bbf28e63eeb4619a8b740e3068b30d0fd91072fc2f0a7d193f28a543d863309f235f8f4ec68b21fa95958198e79240e3b5d19da9f2ee22f53470458135c6dc4595ea023a8e7e1b2c0a9031fbc9e999438d6d65847f80ddd76244dfc5a1efac71731d40f85c7eb0b68d5856593c34078d220bd92bb699060bf2540f9fc34c0d4fbae1a0cae94c2343923ac620a19ead21d3c1777070bca5ff90e0d228015def3184c5ed66e33362634ad837d9708bb0898f5609a1409d57215272813b9bdd7b6c02dc275a47e0938a4c5c83e53e533a0913ce3da53f54c873bb1f418af314c1be7e00a751b8bfa9a398e97152beaaf385847808ad2d828c1c7251f1a45bc7697723827e7e7b864c621c47c1be06cbcd26dba4833eaaf9c049628eeaab29e4621135204da61df1c78e4547494b866cd0278474a45e84327f580bb4d3edd6881f69d4c31e2f04786bfaf15f3c6de00946743dfe02a8dd7a5ecd595233a11c8146b3574276162796408a082526cd575413addb6ca97d48f141fa62e188690ca5222aa8845fbb606f8517f8828faaed54f2dd6f1c593af3beaf7b0e1340f0d1d0b39b47a2cbc3746c82944a5beeeeeb7e67577d7f68ff6371e6104827d0e670cd184c722b1daa39934523d603111be24805e70cde7f19b959e43845db7c8af2733471896dc8d88e4b4398694261203ee1a23125d0d546f0358c3a4bc1e9a2d42c6e16ab4a58376f95415cb700afe71be30c0f76713d87873dfb327b171d0781a9132da653190dd428cc805fb534b547e3e211b00899e6f2625913666e4e9d45674bdf87fbadfc571d8648ff82726c4587fbbbb5dca57f592dd2228a970255404f22c61865bd004cb9267b971b6300094d3a99a1eabdf139d13da86d8177e9f06cf74a2fb65051ec01348fa84bf2377838a55a513eb7d6185ffa6b0bff2af8d1c5678b531ec842de7551757bb2eeb606a4d3a41138036c07204e85fcf9c3b4ca53a0a232ccecffb9555e76d451d049eab675173c8ba5ed709e9749ab25f4846e69f83d54af147e46a19159142c5174614930130dc5b0f7485c91e6aba70339ef5b367844d102a4562413ba0b6b5a0972993a277c6b7045bc5764dc0b7b3dbaf3849fcb1dc842e0d61454ca8d58805929d815dccae00e12ea3d1ecccb209a461b0ab7f726bc390c2b84b89607743213a8fc2aa0e83d0ab72604da50e9164a2ffadf8d6de0c3ff66bb2760f1450273a6cd569cee83129c6e45aa9dea7b5b08251c168a1c816e3c228f9dc105e826eaa9901cfaf6198e79119ab91cae0ddc6a9657b946fb69a9451371036096e54ab2d897396a4d87741957f83cd92b82772b0ca7e15de36c4f59c28f5a4cf3ce45c01417ac82d5d3c5d93d521e7ababcd8e2e1145f967466eb77bd688420c57d32e4022f3899be94ba2fe56acf3be46b344c559e41659b2e9d1b1c566da59f2812882f752ed8ef81b3e61321102a2a763393f1d9f76c53bb7056dacc8441e76ee7953ab89f815130ce540aae9f40011121a7b499bb297d28060e6698a15a722622be79f24da3a25ac9a822235ca54817882cb664414dade30e476fb6ddfa7b39d162dddce71744c00f93eadac695f23437227db36cacbc8e7b0889faabcb109da1d058a654dea43ade8f36bc3f87d9cc27be2a38593bba1624c0eb7a34150482adfd90801876cf399253f9107a43d23c136df75a5e2cbc7c5710b2e89994e6d99bde5f653a74b9f48a4b0a6cdc604a8e4f050890ec96d5e89aa9a3295e1fba220c06e06b5cfeab8dda643966e568c5348b959695a22842f7c3ae8907b5e9e4b1ce5ba743e6180d5219f8238efd8e5dfbfa0c71a9f0b2062f2a1927ce3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855610d34dce8017841ec5882a147c263bfb794db7695c73335d8be59a0c77529fa48a958d9cf47f3b69f761e9a38574736b20997c3afb0a75b36cbd48f60c90accfd0b754d69fb78b16716c9345ad4ed8b80bf6693672eea8324dfcae5100212089a2fad63f50d07687241e8cecbfcce91deea91d9ae908410c363347731f5c6e1e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85531488bd2c1674a6dfed2315e0cede0628fad895dc689a7431b8a81ade29f4c1332d5c0c08b6cf32d6f59d171696ceb790e3bb22e456df0f9453772c6e228c5eaaad47046d392789ea7eabe8b96b0ee23fc15149c808b79596eca524824444d3e6ec97bc7b72fcd19ef38f00f7d9b50e297875d524cded0ac6538d1bd8cc44dc96cb472ed499d17b53f7e6ba62ae9598d7372e06f35cd095d3b08e9375d3774f9375764be8f8e651259c038d273c4c94f0ef37a61811ca45005240f32ad41de10e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8558755d777a827deaf32df19a72f81f5d7eb9ed54fd5914e1e5eeeb84c0eb5d5afb0842afec1a7948546fe6d0dac813b5b9e045a2f3b326a1df946f7045ab1a77fe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85558b867b7b7c0076e744e973dbd2c51efcef8f880361d8f24f0b529fd22c9a43e0b97aa1c6c9fce15bca4fed7e6811fa0be4b7d2e330938c9baadd5f0312138345344df1def7ed0c3d9ac82fd86bfbcc36d92b65154973de95eaff6ec91af20c0d9dbc740ba9dae3fc02eeda599dffdffdcee19d3a052069705855a2770916b31796fb3c1f825c0c624d79c7b5299f593cb885b9587e550848dc37d747d6653009178ddbc4dd16ddc6bc3d9ec1dabf5ab721dfede42e1fbdadd747e7b0c9fef5c8ee70431c65f96ece6092131cea9e3a62fc186adc8a972041ed6f10f1cee89d00689f6d3f29b7c73f81dee162e2fbe8510e21a898f5e770306ac6f96c70b7968f17ca3099bf5cd36b7f62104c5c6a0e9b5fc96f583c4679132c0469c096cc50d20d2e1cd39366f175b4dc6a094263433475d527ba65bc97de62c6e27ab90c35c66a60b4457f770a4ab66f941e61093bafe0f7427eaf592ae76bf587d991c61fa2a483d0390521060634e9cacc92422f6b42d5499b6a05e88a3f9fed181b3ed41893f889dbeafc55a2256fe0bbb968acfc18db8720e023ee1872c047ee08d8473dc075981ffa3c1461912a701bf4b9c9861c428097290a382feed3ef585b9cac568e90709d234314f6bdcbb8820b4b96673e0d2f343ebbcba58d5372c1edf4be77db525e801c760ce6aa154a22ce2942c69809779ff7620286930a580cd1f5c9ec0ed34862dd86700d6d7e6bcea14113089ce092635e92ef99e3a0905f3a15d15e8e6a3b88913196ae24bd80d140d6def5cf7cee75fffa8e90bdf62b82ae454a7460f890ed6997dca16d7389040a3c1119cf7d745e60a27b20ea0608c5dfc7019d2f61ac88e6afdda55b4785c7617688f54be83629ab76fbc2cc248195593dde79d1dbf37f2acdc3fc8250e0b15efa53ad16c6894600cef16027c9451ba38a4ea0373d6d61480f2a70ae82e4b391428e59269532b175fd1c894092061ee5424ebe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85585e41ec0fde536f82233a63855e43ac15d73f257b8baa7ff7f2e6adc428fa87e182052352978ea62fcb9e21dcb388990c9a4f0cef9058457a441fe0225f0ad5233115c8ae83b6d571d45099e1758b571209e2808eed26389ffc50c1d5409cb37da4c4eb0e0e78ad891851709516506d9dcb08efdbedf78b1b20f86984154ad132d625cf8a0f60bb971248f72ca505103338967450d78f4089273448b82d82f3ee3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855d2af67b02c4de7379e30b1d753eb65b5720324ed73baed5a56c417027d63fe3790be9e0b7f5bc296d21b1d4d638213338af07c194c8d9094339b2a96924a2cf239c50eacf123d884f59b67b4c5ceeddf6fd73ce202f24c2025200059773e29fe17203c1aa9f6feb3bd89f7232ee08970993eda5b32d244ebdd580ba14d4a33430029a1e37982376aa1b36adfba3f2f896342c3a68cace18da41508c95f89de7b1741bfd255a09a7f2ec938f90fd0680d755507732781debb3b97716244a5aa0b975b8272f9b577b7edbcd9ceb1b65a9e1ca2404d6a1b45b2e1548efb83bb4c1e3dcfc58ec3b5a00af85317130c52ed783cafdd2a0bff56d83c0f57d13d790bf9fcb1ad17a335a866930c47863c888e9115d24a9c037a99192a3b25038d751cab496c680238bb5093ec1a6f521c3390f671396ab081a2679a55f9a92979f87e9d759a3218afa5c1b3691fe1acb11535a4ed738e5e6db6523b8428200b8995a77557cf5143d459b7f9724e42a6db4b2a422ace98c8469a8f2cabdd3b3e537302d04750344b16e8795e2752b3c41f8e35aff7f16368238ee1114018fc91c6b294f69728f60de1a2d75e52b111ba06a3d2a518ca0e84a9ce7bad8325561e2d09e128696d95a4acf34e5332c6a904fd04ec4524fb7165fc85a81633725c529558bef41ce74c2d5e1691fd6f52053ddb45990e02d9f59eeec7ffb9f033fdb45c994b6d1b86c9f64ff2c3333016dbc54345df88f0dd902bf099ab727983d36bd94a1981eec0a5e0fab930c8183ce0d19918ea36e4b4f5a93e0d75c512729eb0d7ee2b59e1d6771300a4bbc56f132586a8e2825d881896dd73de698eecfbb5d6b06113e47ef400f4b5856a35e95e747f14f8bfb36917beba21ed8987ddf08b3d0fe18bf690b65e4f3fd352acc9207b139f9fea324fc236abfa454388591e2ffb264726d3385c11a00849abd2afcd46e3841ad67ff546769ab21bdf16b7d7ed706b89aac847499b41a4b5ca1174669f718b40afb98753870e613e7548dc42476aeef23409639155706ccdf57f047566374acd40629e1876c9a3278ed2298216ffb91832b02bffad9577d181002bca117b9ed98089fa756b1567d646504b0be80ca10b2edeef1e112647319c33457e1e10275edac62d3e702c530d95a3f274111bffaddaca532af8f49bdbb703ddc79d4e928609c5bc01b6b0b806f38c124a09a3ca4ead74ff528001aebd8ee1a76619f7294df23f02ac9225c4e4ed8695ec8cb551e439c917f152a23c92297d10cc8af8dde85c05debadf78a2ce3a94a746e6355691b2841440fa423c60620b9724b004a99abaf2f56f7ddea7976e20ba7c409605dc7010258f884726e2f7a7a1f3bda50390777c99f1dc7ed915f8761f298c2b5b6072fac855fe5c9f985aa29a098eee0a6ccffae2c44157a6dc39eca974bef35997440b1b9054bfb1c95fda3355c51276c279984573c895709f9f4f4987f063ebb68a8075671e44bc7e7cb148aa0e36278f4f161dd48d41247dd8e52e19e69f55a1d92176d345fd548680177139838385e6c5c372598eed44f1caf751b33a7fa847a2287a2ee7405ad06b4f850a95cfcc9091722bcc04aee11fbc0fd44953ef666af8752a396325a98d944d86451f8b4ecc85f1fc38773a0d56aae1d553b343fb0c8acfcef65cba1c2f785ccbf9156db35ff83217a6913dface465366381a8b727dbaae537b44f3b1b646d78ff490d8feff1dff01a7dffc42d06e71148fbea6d68cb5e84e5689e47e5145bceef3d49e16f7a257a9d6bc2778cefa6eabd3ff0e90888913a857c3fa6c25e8a52b00e76a96eb9a387c3e0b97d46562373fb2220ed60900a15ad7f04da1991ca9fa677b7fe548825f7e45465ec9f7089e2fac2d7a9f6c02ab84d84c0ab5939dac61ce089d494d36167d87053771abeb548018d4de8a5780ead0621f0278f1b6dc78087cb6e43351894955d77cba575ed15b3aaf96ef00a4e6b4e5e9dc6b10ae761d945b290c060929d1c8996f758f4bbaf32fa7a0e4228d569db1cd4f2cfa92b3e94586b5e6ca49dcc52c16a8613fde5b1f0e068a34043985e172eb73ae9addab96a9eeae921ee35eebf4184e685429147a18b973cab210d49d7c5965ee14b24af69d968a33cbf8846c15da31538cba421a65fd8dc7cbcb237efe1c36f59ab040fc2459097fa49644d6761b2ccadfeb8ea4836500b971fcd64f9b51fff1a1c82f68405614590868ef1a147118ab6b5dc61abcf93ccc0495351c6d8efc9f3fe71c21bdff004d52f87fc2bdfebe58ec76f5ce90ecd697b3f7e945d5c4c252c7f489c5e50a79a553d3cb711073679a0954c4936aab3d39c3b4b22bcada4f4a70e3d1569dcc4d4593634431f90152f157b72aaa8516c73b4eac36f022b25cccdacac275b3e52d2d7d036fd22254f1aa2934ff03915c99534249bbb4121d75f320682f46b2f6506e053e812880339cdf0fe516bc1a9cee6a6ef068ffd22f1c1991110ef029f266f7d4f5c96adc41e575f4d72cc23faf64591b79924cb2f7d418561464945ab14ccc9cc6aa2c7ca56023116f5f07bd18a233e02efa252d258fdfb717c4b1f67f7beeab25ba2efbb8aa70b53f41c8fe686552d487d3328c78fa0498c49e872957f77c41b483c1b4e7cb27ac2801d75233335d38ef904acda8de90e4bbc152cb37e119ddf974af645a828f7f9945987208d49915302443c330824b6d3ed2c0858ae6aff2cecbc5f6f5b0447f3205abe13793be4686b9378dfed558bfa90eda824dee2f8eea3bb881f66e543606b819b7c334bb3ab8f132355932ff0aeb853ae27471aca7a80b4470653b1c3a082dc018505b73d74b0af1c05783c9efae1cfe1bf7f53462e5d96958bcf5927f4af1fb42fb0d0be7aa9fb6bf007edbe59a5157eae8acfb6851bb87560036e2335cc56c2272c6ac47b332767809dcea1ac90ec256c3edb65c6591269af008d413ae362df1494f8465999e7a108ef8c49535efedd075470dcab7b8006c27a3b51869d05f1e8b4a6264cfa41198c1931ee7991ef1d57480d4213950241c4f01e9494557b12621e96cad2698ec684d3707214fa2ebb113b6ed9bbec705e1bea95878fd6088f9c9ed3c3a840def37014a3f6752f2c2057ea5b50924bac303e02b417adcfe22daf170cdf58fcc719c6b6a472380111238e06c160c6bec4991adc34964b089ffb7b72dc8bdbcd598692312d890029fe1688556fe629d66e2eb61c9509303f269ae9f83b4002dabe90659f57884d2f9748275cdc686933bdef4e42975c1a79ac1993115a65473b66a3a5834275eccf2d31400f80192b73477e2ae2a3e38c1e0f49164b66c4e800b02a67667d828faf21e3ef3463932d7d97826f20cb6736de59bae5cc6c8e00d058540b7a7f93d7f00709590e4f3211a7bcb27f6598a26e036eb628b7ce0735e0a89eaae4854ced5f6e15ab5c75c9dc66f54066983c9c8ec92e2d68c863c3e249d23b32626bcc00f0407c941142c9e08ff48a49881f8faa5aa064c3aeb0d16ff85fd3cdc70c0ba1d68058ec525f4089d3a0511f595552cc8e5ac18028fe8f3dbf9cb30ae4ac3e6bcbce2447dd3c9789c36cc386b5ca7c86a7b4c2aaaa8ff93ccf16d0c8eb1076f40ee0dc120f24487929003c7f5e5c02d647e0ad2fdde76b964d8ef85ab33566ccc58eeed9f1e4ee443422fbbf6add3295353fd7aa135a8dbeb42b2b057a093e43c85e81d6803cbaf1028779f8384ce7376b102eb7c78815c41ea1cafed1d9837c8f9d7df304aa7cc669f22027be5958389e8ae79921bba5943a7edd814179ad32cb721442f065a97b7caefff9e4db9e6b2011679f23911a4255ec72ff407884e51468ea833cb00c81a4ed0294115d21374a148510c657bef477c2c420cbba44d3fc07988bfbd9a11dc8370ce697fdba7963735d6291922809c9b7adf4cd762bbef6e50eaa6799408579368461599ac0721f1b6202b1da03884466482446e30bbed44d550e837d54aded17f841e55e24523ccdaddef4b851abfc77e2ba70e9e046f682a14c95622c785ce2009b4551ca4f18450b984c7a657b443a77cac7955ef1fa67a87c90d8431011b1f74a7623bf46e994b69a4365069f021dc90a84cb5a899625f4703de4c236bd8c2a96a1314e06846288ba81a428088c76f2cd1c7b14e396accc5dceabca9ae7b854c5f7aa5196deaa667791195263370f7afdde39e80582c5620299a176a461638db5bd2e1caf8da1b70f03315b0eb33af1e353f4f60f45b737f6d02d6815fbdf26be3db4f96368b05ea769a39b527957f05d4e3c55aa37c376857f01c32af7a49baa01f2d671342614d9742d632d4060757783b5e62924d14320f46238eb720fd97233c59f334018ab2db5d3d0537031fc2f0ba974adb8e1ebbb92aa9422ccdf7cf7e8332e919fa43e7073f1f2c6e1a6e580bc06f898f2269b0607d9ab5208945e525154653d6fe2f8191a2bbecc0ceacd8ec38aaf9741317c753f27a47fbef709a2497ba0d3571f54c3f589320b0fbcc1ab842adfd7ee0fc209be2f986371f8cdcb3b6a10b8e325cb27d3682509ea99d2ca793c895053485693c0761587b2f2d29a2d771d4d8c2df6c3977ff24c988859f1b94d979a945b01f9138a43c7ad6664f6402bff2e1afeffa9a2d5bee9fa08b7031772d179d1032501754f629aca86bc1afb8570f9b8d4a5a7d6eb28bf7642361da0daede4bc3b4d51074b082a975f37c5a463639ba597b2fe2cb0379e961a91d320ccef8a344ad64b1950733abd16049b1f4d9dfdf4ed4f2150370feac9a0b2ee37d06f8e5421ff50c443146cecb5ff0332100c959e25758c84386a7509b8b9e9ae97938c3a569da6a075f10fc652bb46f5f94ed479034c1be965295f8f16d9cf15920efd005095dd2e2229a0b0cab34728cf27eb16d331ac87a8f495589e3a890b1846dcff5dd14afe3908beef9738b9ede70ae8d031f577d8dae6529d4abf3c0846ecc134385a4b0fa18ce7e3781399fa9c0091df974ffc81771597aa398f0ffa3cf347995a83376ce482bcbd16e44f87f2c947356c3399b18cefb7767f3ba50bc4c40af1a436ed55bfd5c36df629057eaccbc9df887b3f87c3249defbbafc33d3fedce1950c6ca8fbfc92cc66a079c27bff39cde2fa084df701dc7dc0e2952c893730e2a4f2928dcd361eb903c75ae9c4365751c67db308c2ec9f13d24c1185887938ac502a0383f58d592bd766f351751bb83ac4a240188d334335431af74dcb8d3834d1322ef69eb0604482ff1310697a1f504b9f1de35f83b4ab6a3080b3eb481e378c2e26f91a045831e3d61ed2543e1e60c208e64fec31c3da5a62326b3722caf13e9fe4202a555bbb7448b7979f802938c9f7e490078e96beb507219c6162a7750a45cd134d877ee0cf2aa176eb36c66238176408b2b67c7ca44483ca0d20b440e25c49ca188d981310e646f5415fbeb4b63111f0ad65d38f1dd30615370ee70f5c0b17dc63ac3580e4df87cbb64d3d4b8f62cc83ab3444f55e3219803815f5e4c5e88768c4410d10275aa9426550378c04b31bea6eb0797ba480265528fef7c9730c60e465413c8f12b63a7dbf179b310b0263c3a5bef5364db0844e6721c6c28dc9c509ed1f5de189dfb6e3708464c7d44b4d58cbfcf9d0f1768eae05e72d6dffd5129942e5e399e727b6360305e63c0ffee2084ccdf801b39ea7017d0379edfc9560c983fa092662a02120574f5ab1654e8d1dc5b093233b24484d911574e73d0522b50f1c701cdab47e8bd6ad758846c4d7174102bb5107ee8312fcd988d783727380f7fcc11e69b26671890b55cbdff8656f93602835e7d83ef1856f22880d38b7851f846f6e9e577f587115c564a0e06ab2d7689230b6901f036dc24dc2ebfbf066bc38e5ffc673dda02a3330d9ce8ed379efa5cebe70cfda880526837c0d8f3b535fea9c6487ba336cbcb8b889dadcd0568e7328e0d9c25eb6e2c6144c5ffc5e60b74bdb610beb4dd438c7a882e779fdc8d3ec7262ece0e19c4c461baa9e6d591ca1dbfaefd8dd48f580d74331b9f5eccd8a2d6b0a818016d88528dc066eb50e0b2cb06061227a765dac2b42bc7d38b2204296a0b9d6fbc001bc9e987675086a776fc6028c2f8e3fc4ef284ac44977725124096d2426bf416e83bcdc45433657861619e280f7092e58acec50907d8da489ec4bc866119d1b2572d6fc7856fd762c8f6e03ea33ed277fb55a8f254714ab3790aff29124ed2d8277edea5a4eda13282e0b6c71180ddc9b0b408a86ba7d0cb7d3e255099163b9377d5dc130182998898a0aaa521c4ee626028755084097568d88797fde2be030379a3ced21584efd3f727bef895a3ef97f25cf6ecc9e7cc4a3bc1d2b8acefc2a949c41462d6f148ab7cb37e5992585338e55c37d6e3ddb03c1cfac2c986b26f899bb949119924eee94c5408579f1057ccd3a05919dc8637bc171a7973e20661448eb4ec468dfcf33ffdc0b5e36dfc6e277f888c9d593de160cd11d75cc1f4994dcf0c6c101c5d022b2ba32f9f55531bdab85f18b9c048a6f4a8f13a87913dfe25eb33c661d35b600d31f3a20806b53e5ab44953c3a2a3a25be73e47ba0a53543005272528b690c9307b136b41c12ce24dd1cd73ae82c099d0bb52cf1e015deb4e4ee2276d9ac5aa1f86cff73ead9ff5e04cbd0d18a3f5bce78cb1c54d6a1a32866ffc8b757a62e8fd401b620cecdfa2404e3f4d301de09aea98b637b5298651f74d5c1ecbaae61bfa16b0385239243adceabc78d70e91849d4b8f3977c1358c40833280acb36d397a02a2af3338e212f7164e623e37b91b0bd0af8e70b890270a15d32718b4bf1412c29a4c8555bd5e064bf0cefdf2faf66d0cb21d02f18cb3d30ad717a11b99a0180344c4bda5d41ec33595e411049f98bb717069c129454eea100e42813a6f2c983a3f4a54e2b02061251dcb04142f3ea6c77c065c1e744fe11ce71ee4acbbe9d210a5fbe04c2a3b22e25eaa474ca16599f96e14c5b43579a1a81287749357f4e71fccec5dee31b6dfdcd84b81076cd0e4ba6495ee2ee595a523ab4af9b318a7771751fef91bcaf9a480dfb44c57570e671d9a2fa6452d85b5d451f4d698522cf9ffcd9ad70be03e58ff7a4525b11fe79f2b6a183ab41f423dac54e2b00b5207dbc8af684723dc6cc19a875e95a0c8b52be2f60f8ec8acd348cd9f90bb672121183d9516a07735c93e0f2ec783c272e478bee2445a9698e59214d6af238ad6e19a7c8ecf64e6437d4ba28a99af918f58a91564cd2400659964d154c5cb19943189034c76d47dda3f0fda30763b748fbb612682f9b6642bc4e335539cd3e8cb3f3e034e832360f6e8c3f6a9316ccc38ac34b61a58a1d63f640a0f6c5c976b5fb117a590e9a62a3a2f121335125b8463fcac29ab58fca59e5fe91ae18080de741ac2094437f71c268d424bfe0be7411ed853586291b7da4616c01edb42ffd54d9134450e570d1f5004b03d428dd2404869189b7f0d462a6877b0ea3615717a6b2ebd2fd95f02313f10870d0ba2c2a99c56c4eb225fdf6e4917826b54c131c4de7a3537f13076438fd0d7ef56af7e86df7ee6c0a5e827e69f06e158a56afb124b37efec0c75a1ec1a4b7db141c04ae9c60e64495fb74d8fffec6267ca150fb4adafa5dbe4e72b155a9df3b50a0fbda9b66ff8761af294614188d3b3c56aef6f54f85d0dfc5765302d8b8ce77c5765f5141b449b12cebd3d1adf2ddc61e18f136c9d0c4969997c55f1e97c9959448de5ff37e836319c24d8553d3755eb44eb0e2eba9f7b8385ec5b859b7977e7b0df43eb096a46c9b3c87aa37b50d1b8661d94dee84a639f7dd220a8e530f4f45f3721c74937f01231ce0c0ddd827713e9579d72c60d4403fd3772abd05709a2855e63f2f612c95b33684afbf688bb37631542dd4cbfd7adedff606cda64205312f13d791c1dca6d5f1b35eb87e71d80284343a2f834b3ef1fdd57df8f240775346340369186b371417b1b22a3a6850a35e1e70e423879e6b6d68faa86b1036a74551d3fba019ae0144ebb5d07f8d90c3b2e96024dfc7be23c87c9f31f8e0e7437a9e60e6bf5172f1912e1475097c1cd32f57efccc487aa2c5e9f9864b83c53860ce02a74f5799b2ee9a1fca9c03d956d6131569f5c4d588753ba2cf3ff072b848be361509f0414ab97bb2bf760f3272ce4b093a0e586ce16b0641109f7bf5dad5fc2e075f3a54f31a6ca13581545d5d3c229449164ac0135629435fe67b5ff1481bf1f262a22eb866dea77dca64048d048d458633134c4e932b0c7cb0177bcc967eaab803a02e5e6c1969162b0e80a2623d28894cceda254399cd039cb34c55fb271da522dc3ee43f3d1e02d53d3597d8905d811be8716cd9508887fb7e886acf6e1eeaac346c0d52ed82a8034113f218236587d791f204516536f8d7670f4340f692a3cd34b60efdadec004700a5f2582164369edaacb08c5617f30ad59386981e1013e7bb49504dc1d890d180a53e78f9121c37a393dd713355c757a05e0de2c827ef397ce00d8dbf8c8250691ab980a1662d0317ff20240d81d31f95fc4b4f9877e894a6f093b90e4a1174863fc9203f6d3b51edcf61553d497f9243db48a7a814c18faa0ad977e90833e0371ddc25767e2d35cf364d0081d08d69d0bd3628b53974a9624a4eea4c54d583288048af6665e279a97f115a69abdd5f5dfaf9baf075e2d872b495b945aa3f1b738627e4bb17cc4fc1b3e1b5c84297e7906f2cecbc666e9b03bdedf5b951785ec7676c81d7e646bb3a88238289729f4e8e1dee7d8223a5dfc217c35391411a298d9405ae6dc26ac10b980f3e0483fe6e53927128568a32ed5f7eaa4615a5568164c13a72462029d3f4c3d63fd2fee11cc9440ed9aedb024016b1dc77f276bbeb4488bf5035b2a78603b85fa266d9a534ebbd2a8c0b4992209d6d8e43fd4a64b213da28d79db5b394fc45ca8f713d3d3681a503a36f480695ba267f8d53bd0c129a275e99ca83b857ab91e444dfc648ebfe0082a4e00533952832a056b00c5d402c1b9697f4d17fbb7b764a271a46c7b61041d8ab023b5c44b39198944dfb7b9a20c0df42eff401a82635ce4270b6dde90402052b2a0c159f280e73713e02fa5b7244e3b9b66f9df73eb52af63871772808efb2346832888783c63e6b0bbf936a0aa9e141a0120a2324e9383e769f50699da78ec1bdb7572627e7580acbf3cad72b1c9cdeaf711e922ca04e1ca4684c66211798eb26c35ec37aa71854a33f449e6f7456ad6bd2bff5b5d4df65929b6e9f7857f72262e991389eed9008ba093efe1ac7f36249ee530b2984924fcceb784e874690ab2f84bea903bc904c07f58f23cc8d54e6ac9ed83ab4da9c140f3ea897aaa2c24d05eaac4c796eed0c041b8db357e29bf824e1797bce9e1f6b0926a8560d59b7dc7cfd24b93db2170997c094d79e03c684933ad53e91a17023d3116c9eca1348bbd2b5e0d80c7c80a29ac4973ac83803eeddfaba4a7f430dfa87035e4c3f39bee14bcbb696a3f40bbb189dde1543adeab0b4d4ee625861da503c2fb5c748f351df4916bceb5a493be38ad4fb17e0273fbbfe06ae2ffb295269dd930a9823c33ef37c5470f49b1a0013594ad53e9173f5498e8a25b44e4fc01ed3b321a5269f11b7672192f196a098aac67dbcdcb925617385e02be54485efb1114ee2a69a77a4ec60a126815a29593b6eaccf9695ac6a28b13e8ba88bde3bf95b6121e5ef11a5b236fa7c00b47050de6a1db9b6326521f632c87690bbdb2db6f9628054e384f3d8bc3bb60255c097c95671f1ec7ea722366b992af7df8276b673a040b94058f5047ee53640eea910f171411a9cfa261cbc5bfa4b79f64c1c8eeaa3e2e2fa9fe861705c82985ed01d5a3bde50b523de10faca25c44c4eb78b3b9da9d4e563abd4867db7e4bc664677c8196f021f3a514394becb59f51a30858fc76defef4b104e2874e7a8a4562f61d7ddbbacdb5591d96d0ec14b332c23f76057e31e02510d462c69143c6e24b92018dfb79f06711aacc3f1fd9e01628f0c03e89466eb39195e6f99b5b273dd49b0a37d997e069282ba510b9b34075fb3a511bf4c34dcd3b50d2a439b4e0c920902628737f2b98c18b6c5df620422363214646c28534a15f67ee4ba7e2db6fff077731db7d49027c99549a119dbaa22e416a62d6626521b0572168d90dfedd4b64fd382b861b08201cc98225c0ee6e899bd2cc4de68b3bf83db779b1dcb433572397507bc9bfdea81d34eb1f8be64fae8f544ac985cbde2025c57e5f03bcc3fc6d951f7610e000439f61dff7407d7b4287ccc01d2f41f7165895e74106b337a446088b056f4015f8fb0eeacc5f2636f54d9ff54cb24f28454dd81f545de5c77db77b13dc6edab18cfd4447f61eafc2ec4e7d3f39c618274f24263a5d72627bc1b1478937c569df39f8b4a21aa982165590a7cca76466ba8cb47e373f4362880c55e34f80ce08d03d1ce9f152a4fc0e893bb4e8c4d90af3249c06894e063b0aa5a84d240b02778cf27df8a68a74d8ae74ab495fd73aabd70a203581559ee88a05d6feed165c2bcea3d89605c18cf53eeec13d15f7a0d0e0beafcbb59372af7128e3060040835c1316cd30f67a0f0c8ebb3cf511c501dde1dcfbbfde8619290020f13d0057f5e55c8e402747058c931e1b218a9fe723cfe5cca5fae7c1441edb9d61f7c6703d5811e6ec3492e8cae1d4b9029b7a333b953e28e029d1827cc6404749597fbbb573fce800e958ed506bc8a470ca7b3a6ab3781c16b68a6ff5dec810b68a1fe1cbccf26b3625c099bb2b3b580d3c22a410cca903425f8a722d630f76df507571affd9a19b78bf5702e00ae3763f5e90561666a9b817a01ac993cc739531771bfa761bf74deea8875868a48fef8d333075e0d2bb7a4d3c1d765a188b30043aac02c19a4370ce54be3b588877b17fa929e58925b52d36aae8e8eda135053438a43a9fb2cf6fd98b118c4232724278f4f5d31ad0c6c5a66506059edc9bab62ab479b84dbcaa8d93a4b919396abe36a8757b4080dd9ea45f8c7f921b390ee35c3f572c1dc01b432cc00c16a1a9b5940870b139d76991df7e8e985182365ef0b27f91b744bd4e0608bf1d12e54ea28c3615f1fe4d1873cbf1126170586577b5bcef33357e12e10d02b69a9f82984ab1a22badbb28927a263e0cf1fe75f58318cd41f9f00e836dab8392ec04de71244d52c313ee1121d24b10ea574e030c782f7be1d063eba42f535681a25d2e45c6077553fc9b798c250f31dcccc8443f0d5f27c824f965732a9bfb9d7bff64330af9bc78c831d655178599ffa187a2a096074ce03b26dce052cad9a37384290aa6356976a37c69813f1af2bbdcf17996edb7d2c1b7bd34d3e9d50ad749ff818e8c92615189128b759f71025a0030a4ee9468b2fcba9a6568cae0a65ae18c53fd2e6d557c821841a2c9cd72c74fd13dcb56d2a76eeee0942617aee16520c8637b7c3bfd825c146bac46e7191c75699bfe653640a902bb8691252d5474828ae2468e04e1fedbed9a499aea3e5c5ad09745671b69c00e2d23f5da6935f0232531ca3683b00eaa32bb3d258c6ca21e1a369c02905ed1472a97be35e81c19c469c8539545d5dda9d72656088492a65aa19b0fb9c29a69e7a00f89d7afcae67bff9501672dbc77067806a6a26ab7a467f9dc3e14e1749ca08fff250520bffc003e18edfa306db773264f8ae2a2e6c5417146dd82641b5f2a2c6855ba0767585f0a396e67f8d286140f02571b3adcba8b2faa66af0a65b9e5eb3163485eb8600d25553d0a2270b417f4d1b85cead0734ccf4c2e707671c99807a24eec3cb1a0befbf1dd6ea3b7e1d9a328e54da7162d36ca411e217d9591bba1a3aa9f48ac094577b551837e4e381399c93b430fe8c03b8e9925cd6cf19d22b04996090d1cd44af93381d5d1c0e953493d8248a5d9a860b825dcb7bead72e8e4934f09ca0007cb0e42746d166789ce8d67bb8e34019dfb6c8b2c318f16faa899c134d3824325986c8d9c95f4ea32078bce6b3071dcf82d1eef8ac13044777d21fc1d1d8d19f5bc4b042cd767b75bda31a7a73a0beba02b6944eed2690863b3465d522650da9b5e9085f9585cad250aadd7208c618496b0f4d3fb4bbc13c6bd31327e614e1b3ca09a6e55b772dc8ab66fcd5b40deac0267a8c58fec13f39ef98755870b651587339ad15209fb3b5c9b47faca217497f974cd5194b6d112cb69e7b475da23199da751b2a7484a0e0f74e40ae6bcb551a1717743368f78f7ee5b48f180dc5517a74c34642498be4b4f4adc055a39a8f1e38c22f39bf9ed8d14e7fdcf43144e971d065d29f7d22d893c2a1a996a0995d9e6b9269b059ffe7fc719988d8714740ec1d52cdc1ab1ad730b17eb5e137730d57556216e4b669622e745f3c833c69c13eb014f91c4bffd5912b03d1b41e960c4bdfc6afe31b1cbfe126d1c752bd9b2d92fcb9b81ef98cb99e245f661fdde5490bbfe6209d834b5dd619e30c819b411c2d2b49eed9c6a3f88a43b4b9fe3bf44bb49ea1b9b79374a09e4312e60c804a5f24ad282bda45684b3c3d246eeb0d57829f7e35730b12b4a2b6fd8274af98d17f922bade1e40bf440b3c03c5465bde4cb0a56363b92f2085ce9b5c2a091a5826f213c8b297e83068c785712a0f288d2f1a6fbdda89f0213abca256ad04a9cea3f692387760c83cfdae697f11ad88b8a41a07cc63aa331e8ea2b15cb084d8e6e07d17eb15314e0d14dcd038d35a5355b3c0b7c67ef23ed6e6776e5484ec8d659ed7cd12845a5934c5fe83344eaf05f266fbefaa8af090e2ad3868f18aac7f3c10c4eed20a6b3bc4efed27ab202d661e8d010722a77e419d5115bb7e24f6aa128c06303f401f3f2decd4ae2ae71921f9af8632a5f53e0838790b38f5e59338ebbd22994d929243c431803b81fe62ba6881d11819e62c2cee4a9d10156c62a595e58620a51f65d188b6fb5e821db4e2b050e6dfb8dfc9e55d967bedd8a147c7a40851a51650f35e123e90ca94add46e87f5e0b62e333ad1255567e7cc1e2da389353765794567af97d10702f5407d79313685a7b23f4460cebb3771d8c0f25710d990691442ab37e7652c361a305e22b00e5f6bc00832e0d1c11e79c775bb1576703a707057c92fa7646ba119e425f9beb73528b9c0bdcd09942ec59d5f2325403651f6aba49ed9dc969066557d48c2041d8c3a4cc69d5ab81a26c8ecaa3021b7aea72bd16ec95d16b4542eec65dfa65d1b811da6d8071b1e5737805e7d7be183215ad227e1ce3f97f5a0a1888207c06c6bf8903a33812ffb68415b442bad34cd44b44ea85b6e37f1cf1586825ca99e632076130d668945fe5753fd834663430aa046c3e407dbffdd51234a907476439d5097a8e31a32ad06c169b9350eb80c19a099a4c6e96491e2bdbfdee291bfbadc9c94117af45b9f75b445f9558a613984654e6624182936c35aff8b67a30447629e533bb76ebaf64693e671b2118c5687ca6dd5fad6958c3f01d0e9d6f5cfd5e3dd8531194a13bb3c553d54c85905d42dad4c70cf7ed8e5ba4762b0e5d2a012f65815a8c4a585fabfebd20f961aaef4ea7c96158e8fdfe5d6a3e02ee594af68011007df8e817408f819c71d1e6ff6b9a7f2d05e6d79e8db2639f648241fae5e265eb150da98c628646244cc62109eebca57fda0a718e69fcc12ca01fe182388950dc1f529e054a0b3c2a89866de87b40e54fed5b27a9acd784e41521d8bbf95922448d07bea17be6b4bb5fa792521227495384d7e90aee5ca0b2acae497bf1be5b3ac53e30be5c3d1204ccabadd0a04bd4953ecd8a14655949f85a04b6f6d48c20d7e46c2e51e1bfcecacb61f95ab9b2bc1541d9cd768421698f50a4a450a909656b667efdfb806b1d2531a98d86f0136928930e4d581bb2dd224bca16d13480abf62aee5ba9ddce2bfee470096cf7cad79d83be6f5f808acd2326d417e2dec4ff7d5990a10347d0caed407e50922937c3f479e99dce0740f1d1c164143efaedb393666976f096ab456b2c08e3d125ed7790acff62b3171f1820f4379f4d2143159509e0270b1fd10a7f6e4df08da1fcabead53645db54f2357b26b9118d2460b39e1ac4f5d5c59acbda8f418b78f4c6233652890b3c67f6ff18a8ff51010e24d70bae11eda2feee291eeb43c7cb647c1c2c09b3fa5561fea63a38106d11a2a273c814867677ac2c0aec94a0385a0c3507328b27ed2f60d4ac4cc0425edc744894edd364f9d2f4161dddeba0131e8237121003a35c198ab3184c943232547617915875904288e247821b06b9eb55ca43014db23cde8c0524f20e29da959343fbc7591b8f313a70493c29263f989da020d66649f9c496090b2abbbf0c6ff0d97307c5f6bd8042e857bbf929a7d9d00b0b519814a984555ba6c9724a627723d442d4c068b7be56936d801f18345c53ff7db4ccfe2f53f3d4e32f62849e38013089bd164f1ad5d9dbeeaa3b683ecc030635a50787e25f7c0ef0b1d93a42e119e08e7d5373e89286552ac919c7783ccbe2b36d899189829b0ba66fc9e407f8ce29b1cab361769cbbb2a38fe4f7a4d6a2fd185433006f957afb26ca625f593242992edc3c0699b01a3421b2e1a9b87d4a575c929e858eb2a2c90cf829982e6e54d85e5febdb2bbc2347b2bceedbdc9a5ccf62af91b96b6b5ec4c958bf322549eaff57b79941c11c5907267bc29938c64984acba0ef8fbacc9f7114e2e63472f69ce4ed9ff55f96849e93c1619a78d248303edc295102fef5994fb315e8c2c4865e149127738e3f7c4f36f97a00c9c0329ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c061535781bd2333a5c5cbc961a0c230ae8ed049f3cb26cce0afaa965675cae2a97dcf8c87d2916405cee52a5709225bf2dfb5452277e091b6f36ee251fc9f31532db44bb177a465208cf3b50212cf53d3c4b38df55d0051646b5fad13df3a0b6e09ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c063fc5b25de544ed98d8c6a1ec548c47a5523e939e8bf07326efdc133352c92b758035c841e4360799f0135deaa0a3c176479cc9d356fb8b3001ee624ba3b4c7c39ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c062d8144189140bb7c3ac457c80db5c4e44a8d4e443e2773311c9fad69917dce60c97f4cceb9c2dd63df80675554f335640cc46875185af539e2b2f3d6b9e9d7ed57d1ba78e19dd46a4dc3be448ab14e7f5fa8019b3bcf94fc58c2d31d1268465410e277ae39e189a5405eb84d31408cff0e4e1bb4698a4778a86a3b78ba53b9a754a40c9f144e80fd40afc82eb5b85fa7da166804f41641cbdfd1b47c17ae4249a9b81962058b0284fc6a678abd5aae733df2a9fff9d9f7b345303b1c6a071e798b399c1baadbe4d98eb1c5ec0c61d66af08f61c9280d8be84212bb3aba564f9a4e18b109b19b6aa79663d9635ddced8c8975dbea92e2f2c280e194449d261233fa3e1f3a9bc83ec3e56fdf4d164020792ccf9cc7ff62544e6b499095e5e984cca627a0af554b97ca19127b8fd4a395feea57a22e3a481bb74132c30f7a4c4cb3d891b1c7782cb72c1a45673de45b15d7d97442c83f4f89a63561eea9e5b2db1474967cc79b07f116dfb5f0df30993258310ae8c87b698d164248c81428906c12b38a8b4abc38531ee4da2c4d3a33a9f150147711254bb01e7a36fcc94d01be17fa566cb893fdf9409da62c4ebfe439f5d03dbf215f1cb604acb01b9e42e1c0d83b6e1ca0f0f11649c4b689b7a563f6cf82ac0d608708175515b1a568c4c52346285841d56c54638db511bff0f0bbc2958b1b0866674b54b99729f756887332ab18dbad97a02b74466fc3cd460fdf2a2eaaeedc51cfaf784305da8f01f2d21b1054ae1aade69c0378e2d3a612ed0ffc24fcbd781f7f93cbff1ce93e7933b08922648e164d616509dfba870cde711f63cd7105415ed680d5603977f7c4aa92b24ed869b213d8fa004b93da70314ba02e2a40a635326de3f88b4f854c2946ff25ec150c4c32ad3fdc8682baeb8c28e76f067abc27af406e95b53c22cefda75fbf996bf46b60603a24209d0b1b2dc656bcbed0b7df5a8d76079daa4e1552d5540b12139c0b32a25ad0eebcdde074b0a29c3ae9829d8371e1b71c0838379db4d5081af2e18f940087c85f2a9a7286b61a792c76e33387d6033f6fe1329f56d4c4a8e7c2ea4d0efbcfaedf4466fc28f1cadc2b5297529deb3d231839c08652bc8f6107e27e9b34f21583f095e62c009d170457ee0f91b8fa54f90326f1b20122028204366f5e07480e9fc5015cbde9996770a2f0da5aa061fca258a31a647323a35d7e764e4c6d0f76c9cae5aaabf071bde7b5a006414914d01c8c33a0b9df6b699bb963f2019985f34d30d8577db06f1cab3bebdb327ed63d1abe28b78fafebc63bf30bb56c4759f57160674ea01f66be094e296a7465cdaba02f6b2a83acaca8f8bcba323a34cb7ad0b3cf44c2ab458dca3e3581e1fbe58d7e3ce8943a1f1f87f8dbf51151bb45c6a786c5fad5a856b5e5de636d1c9492c06e7b9cc77144dc7f94f1b14abfce2e77d18f0143fe3d8c5275257b429efb6da34fd654cfcca98fb477909cce87c3e55abb2fdbd80d9eb1059a13c4d29f5e0c35b9522b7341e5132d6be1f2c11269d1a5703af7c9f902b3d107e898af939dcb8adac11cd39304a705d79551eba38cfcd045e26ac140d22eafd6448813e6ae8b2fa9d597d42d51ab3f23e702d92c0a306857004026ee6d9d805f705cb15131cd6a85f4fe6c562ee543b0fbb8c06e5e825630c9c36e41dc3939cc7fcc12c97f0d26ffa71f74847cbae4f6a51590b276e5220fcdd216b9ca348c2275d50b1005ed566e571ba36efcaad31830021608c2f422fde6e3851a9606b5a438743fa1fdb54e7df672bc0300249c0b7140f5c6e2c822b43f3069ce74b126e03cc976567552671473970ed5fe3b94bc5bcd3c8f45f47b93194eb3147fabc02c6c0b1337f388e33905c00ffadf99fc1486083750c78b8de368c512e36b6b501df190cdd0009017798e6e09873138fecb58922e9039d1234f122f365a49c5c4d2dee37d11b5267d4f46737e0c6549be0b2df663972fb108264bb8902560007582322de80dbaaf2d2b4977881fee569ccccc12140caf1087f869810eca7befec11accedac05229c0571e4e4113221ce8a09f6cd9c7d3061ec0c0b9ec2b8a0d4771a80974a24b347d30f44fc7fcd5e2055466efd07beb2bb6e0e0aa355ac4cb77e4edd15cdb6e7f4c1a6732ef9962cc741b8cdb7ad0450f6c3d31c21a80817c8c2088c29a5daadd9d66aaac828097afbf56c2780c25db0e66071c8db09103c2d97d9da01551d360382f57a94bcc84d2c827a8a0c5c3d172b1fcd13d63e9901e4ae8ecb1207d1fe8c223bc221da7643f28b836e21674212691329d478a71c4fdd6d383c401a6bb9e93f09819be6d0babfda599a23db562253f2d2b495ae6da82c66a8f63010ffd6e1989e927c176ed5c88b49f19cdeeaa97c4dd63c6e4a36246c3eaa40f4ca6d395cb9f707e059bf98baa2dde96f2086f8c709bf56f3c710768d6cffa617a26ff5a381cdc6b4d74c9078b9a756f1f4bcedb8cd6c177614c09eae8b455de22cafc2541ec7a0f9ac1977c732fd45956b255d96a5d8c855de47b57166054c46978bc728475fe96b0219c598dc71924534b76d68641356d9275dbe1148ad175713f3951f6ad5ba6a525d98db04a253e4fa22a0b7d13a2930bf74210921de659e331a1c1647fe0102ee547f83028d05ba76434ccfa8a7ecf3eecde2302276b9ba13192932fd60614b6d36e0ffaa005e4db9da88ebf5f691695276ce7fc1166adefb4b10f8737ae97497993c7b1d897162523089d9981a70ad9d5a0233e08ac400ef0d6c2559de5ab375a3d3c4c1835527e65d2c6248d4069355ae8de32032168e5c8bbc68070d338e008c504ff434158adc395be0378e6680609ab937947a2062aba2b90935d6c96d75db61f843e10d6407265642042f448ab87af3173b1e21ce14cc51a181a19251874215cf79e9691f5d3edb271983e00d652ad037965f8b1c1c5a37b7dd8ce45d69e62ce0139112e4a962e8981d8aa6910608b99738eca62a5832e025b52d2849bf3d7a78a2021d5df221a241139f57f9edd464099b1d10679c7058e754c7230c37983c667b2fb2ae06eb37a688a8ab1ddbcd06f5353bab30b5f92a23c8db5ff307c5c7cfd3a9aae2b9191847bb6438398dec3db9a1519ca72d7160939894c093c18791c9a9a83f3a652e6d5d3225a6b9c09269b9f157f95ebf8e96b0bd8743f569e4930639f3ea985959307a4cbba12006bf14ad1140497976060f387bc75c338ccc7da15f3c222737e817af45561ba76f0519319fdc442d942ff7405462d58ae06af2e1ad2ea7fff86b2d3f1af0d649898a35e42dda4f26a3a7e920c86b85f90f5a40ac4936033049e6b02f5b4b13eff5acbf5c28f949dce714d44a5517fb92dbea952f933b0c86818315c01d0e39026fafe23dc2c564806bdd986cf849700533d0fa02aafc42b508432e94e837f2310a94595da24b6b6f11ff60df52ca17542a90af712971b98cc25b7c3857ed0315a848ebfbe20e4bb7dae8ea515673d25fe4c84eac5804818d67bf80e99a7a2c57dfbc3e105be913ed7d6117eff83c57eb11ee6994826003e7419ae200805b220b7d854b0ba02d793315637ffa6f2068866bf550eab83524f31459b31586d7abc0b7b7d8a74242eb2950b8fa66093340cf907fe9e6df5591840e65833f3dcd2ba5db2f11d4ca3d6a1b31f03ecdfda0fafafb6574cbc867b1bbf704392e366f0eb5d1a7f1b865f46978da6019015ab8dacf0e3c33641ce834f9f3f657aad65334c2b059cd7c4e64a390021f4ea250e40ab6456bc84c211b61f2b5568d37ff82ff11814ee6af76cf5d68cb8ef55adfe742649241c52d08b79eaa1721e99fc3378ddf5ea037c37311096dab4e278d4ec1e12eebbedf1d2c5dfd4c69e675f2751492c50b48ab04d2620601285185ae2858d4931ca6fdfdf2a8a88249ae7d0a538e3241c200a64518507a64b1bcec478e108d863a7f625171ed42582b7b9a9389eb3b665421f3d68f59425ba512f80434033bfc50e597def94fbe011380b4aff784295d72261fa2322ba0a24f56eb49e22957a47596452f0269bce077365ec09d1a5a45696fdab3bddcce23ae42a00d3927d03b8f214566ac4c1f5d7a1c872771da5176d41195b5d2b6c9645e0f21ee32ce61432062862068d262ce600cc128407eca99a7da780fcb3e53d215274512e58c7dac233906b856ba279b7156f1ab2c311f47814618f7ac0689733ca19ce9dc1b95d9a0d6e884ff2c1efc0e1ca6e4caf47b9a72f0c7560684e5205c1f2811707e5450d1abd20bcdd39bc37f3fd5374965f243d104d9eab3f752764ce8464ffe5e25e89d0a04fae437b42fa22a65bdbfc99b8ab0c2d8e5c2ff72329420f51369613ab2c92d8d20deaa106732cfa66b3fff2de56ab5d25b45ba37042612ad4833660a3d2a908157b199a150f00fa47e500e83f950f2e98a632b002396636f396153e0975f42e0f48be6be06a655be35612c6d7f8d64dbcd3e0b306313602f99c35a75d6169d6a3fdd8241d3f2e4b67aaa5bb77f40b696fdddc14a7357564c3924fdddcc43837610a231067d7403111ede3984976545fc9c860eb09259fdba7fce03ca9bb4ed90b961519f8559a8cea6625cc8d0891f4642d5529955a1a3adbb84dce88635dd8763aeeaae3ccb1ff30954f1a1e97aa47dd384458c5080f8c7a53c534b3e379a6c0e884cb35954c877685917d9dbc52e6bca78046ef4103be357b6e44946ecb8c4d5399b56efa85381be5d79fbeaf94027afeede3b623b17090bc0e6cd5dcf3a94c46066449def8531ccd1c18d8f3043500c532e0b0451e9c4682255c1853c44a58ea9adc47d55ca8a23e276dbfeec3f315eedfebc8271fe656ca0d43949abe60ac555d86d5c29d092df0229bd1986b40dd990356d5f23656fc05f48aab0705e9cf0ba24ac5e1fcb4d339cf2fec2d6942ee2ddd4c76a8740ebf60b3ff9be2fff6a5eee01eeeed802177fef4705de5efc45ef2c1a22fd745a802cd9b0f8ae9025218d78e0fa2408f63575b2c563c0dfbe778937e67ff4b6aa6b53e21fe0c6e922747e644f23d204ee01cbe63e6c0abbca916c47078f0cce8af94e3830d15e5df49cc716be8770c51914ff0e3f311d32a820bd0f7138f4bfc6e7865143b7e9b89eb2de9c498468155fe29326eace2b0049466086d14dbfc9b0a6f2e18f6b3fcccb6fef8f4f8eff919e726717544612fe567a3782225d52a381e06cd77c0b123e13344e8696ea2a3b3852ba129808299b42b9a96a8032d91005a4384eb16309e593850c80e4c237fd7eb2c008a7ad9673b898cd061ac82281aac3072752d4ffd0b3e5dd88c43fd04746421de0539591fbd0c83f19a4b03d2eebffc7279faa45ad3a0578447538efa81dff39f824ad53bf0881575ed4f9914eb08728358b28827fac262cbe2f4f587fd88674ac330d034a9c4ec63c198549226d745eddd979e3696e085489dafad0ff1796090e96e442af5db25e8ed864d5bba91dbe1e1dd679760ab4e3a7e1fc4e4f106544dd7d611171f64b0dfd2435352b5d61000694492de4a590bbf0b7997228dc7bc3d708c72cdd2ce24443963600dd975e553c22158239ae7e76935e3cb1749ec972e60ae84ddc46dadefe6c69f2a158ca9afa6ced8a715b86ad3c1da4afbc4eef16abd8a522bb946d841bd389ba7415ddc54b6ded71d237d28534e64dc638a5eba0c3b8a6cb1cfc202bafc7088497d4754af710ce3792994b395743f0dfdb096a39487a7f7b6e2d13b19a29f14cafbb51c194e98513e9d54c2fffee70d6008271dc535daa1bb9abd5c0594fa46bf17d309c11368f5d80fa5c62d3683546e4833b4e02ca11bf26e7085cc0482dbcda62ed68178cbece361394a7454c94444da72f600cf6c3dcc1029e0e5c8cf54e1bf92ec7a4f58d776063be0671f956a55ed4ba0355de686608143cc4868ca68ea8846ac0022d002ec43c2c75e5e35a92d4a4217c385cadf93f7a35867267f449b058438f08f013293c6ce274f749aa502f8042fcf9a1610ecd11edfd7ac365efec04ac27a5c2dd14acc307ad195c01e4972df13a1cc3d17aebc91d3e9fece1e414632fedd297bc892c862b55a5ed7aaeeaa4793eebaf6eb68c2a41339126c4204de48f6c529f0f1b98e616899b59ffd61b618f993c54dc1e9e0f82f7f9798708683b601e2ab06c3c0d3c3dd84a1b5a65fab2e5bfd405802a826d13709e8ff4fd48536ad925ab68ba5a99cd580ecb6c5c250bc0449cb803df98903ff23519813b3959a52c9be2f0a5f86846d6956166cfa1783f7a825c3728aea244fba31f2b6d979e3bce11b689ac14b29358cb90864cb3420bffca281cb92aa0b08bb54c74687eeb4259c7d372fcc97c9bc4e0b1464881c1809ddca66b696341ff1596e2cd2c60b4310ef4dc9942b7aee279838aba633585e93c97195b3020e811940f11d776c3977d55684f9dcb5492aa32522cea590ef9ced5ffd515869093d794bee33cb53de1cc77806f89bf89039cca4f456../../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/dtsrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootkernel-4.18.0-552.1.1.el8.src.rpminstallonlypkg(kernel)kernel-develkernel-devel(ppc-64)kernel-devel-ppc64lekernel-devel-uname-r    /bin/shfindutilsfindutilsperl-interpreterrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.14.3f+@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-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]- 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~EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFFFFF F F F F FFFFFFFFFFFFFFFFFFF F!F"F#F$F%F&F'F(F)F*F+F,F-F.F/F0F1F2F3F4F5F6F7F8F9F:F;F<F=F>F?F@FAFBFCFDFEFFFGFHFIFJFKFLFMFNFOFPFQFRFSFTFUFVFWFXFYFZF[F\F]F^F_F`FaFbFcFdFeFfFgFhFiFjFkFlFmFnFoFpFqFrFsFtFuFvFwFxFyFzF{F|F}F~FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFGGGGGGGGGG G G G G GGGGGGGGGGGGGGGGGGG G!G"G#G$G%G&G'G(G)G*G+G,G-G.G/G0G1G2G3G4G5G6G7G8G9G:G;G<G=G>G?G@GAGBGCGDGEGFGGGHGIGJGKGLGMGNGOGPGQGRGSGTGUGVGWGXGYGZG[G\G]G^G_G`GaGbGcGdGeGfGgGhGiGjGkGlGmGnGoGpGqGrGsGtGuGvGwGxGyGzG{G|G}G~GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGHHHHHHHHHH H H H H HHHHHHHHHHHHHHHHHHH H!H"H#H$H%H&H'H(H)H*H+H,H-H.H/H0H1H2H3H4H5H6H7H8H9H:H;H<H=H>H?H@HAHBHCHDHEHFHGHHHIHJHKHLHMHNHOHPHQHRHSHTHUHVHWHXHYHZH[H\H]H^H_H`HaHbHcHdHeHfHgHhHiHjHkHlHmHnHoHpHqHrHsHtHuHvHwHxHyHzH{H|H}H~HHHHH4.18.0-552.1.1.el84.18.0-552.1.1.el84.18.0-552.1.1.el84.18.0-552.1.1.el8.ppc64le          !!""#$%%%&&''(())**+++,,---..//0001122233445566667788999:::;;;<<<==>>>??@@AABBCCDDEEFFGGHHHIIJJKKLLLMMNNOOPPQQRRRSSTTUUVVWWWXXYYZZZ[[\\]]^^___``aabbccddeeffggghhhiiijjkkllmnopqqrssttuuvvwvxyz{|}}}}}~~}}}}}}}}}          !!!"!#$$$%&'''(')'*+++,,-+.+/+01234555657589::;<<<=<>??@@AABACDEEFGHHIJJJKJLJMJNOPPPQPRPSPTPUVWWXWYWZ[[[[\\][^^_[`[abbbbccdbebfbgbhhiiijkiliminooooppqorosotouovwwwwwxwywz{{{{{{{{{{{{{{|}}}}|~~~~~~~~~~~~~~~~~~||{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{zzwwwwwwwwwwww      !!"#$$%$&$'((()(*+,--.-/-00102030405-6-7889:;;<=>?@@A@B@C@D@E@@FFG@HI@J@K@L@M@N@OPQRSSTUVVVWVXYZZ[[[[\\]\^\_\`[a[b[c[d[efegehiiiijjkklllmmlnnooopppqorrrsrttruurvvrwwrxxryyozzo{{o||o}}o~~oooooooooooooooooooo o  o  o  o  oooooo !! "" ## $$$%$&&'&(&)&*&+&,&-&.&/&0&1&2&3&4&5&6&7&8&9&:&;&<&=&>&?&@&A&B&C&D&E$FG$HIHJHKHLHM NNONPPQPRNSSTSUSVWWXXYYZZ[[\\\]]\^^\__\``\aabbccddeeffgghhhiihjjkllmmmmmmnooppqqrrssttuuvvwxxxyyxzz{{||}}~~oooooooooooooooo            ooooooo   !! "" ## $$ %%&&'''(('))**+++,+--+..+//+0+11+2233344555665775885995::5;;5<<5==5>>5??5@@AA5BB5CC5DD5EE5FF5GG5HH5II5JJ5KK5LL5MM5NN5OO5PP5QQ5RR5SSTTTUUTVVTWWTXTYTZZT[T\\T]]T^T_T`TaTbTccTdTefegThhTijTkTlTmTnToTppTqrqssqtquqvTwTxTyTzzT{{T|T}}~~~~~ooooooooo           !"""#"$"%"&"'''(')"*++,,,--..//0001122333445566777887997::;;<<<=>>>?>@@A@BCCDDDEEFFGGGHGIIJJJKJLJMJNJOJPJQJRJSJTJUJVWWWXYYZZZ[[Z\]]]^]_]``a]b]c]d]e]f]gZhhZiiZjjkkllmmmnooppqqqrsstttuvvvwwxwywzz{w|}}~~       o  !!""##$$o%%%&&&''&((&))&**&++%,,o-o..o///00/11o22o3334o55o66o77o888999::8;;;<<8==8>>8??o@@oAAABoCCCDDCEECFFCGGCHHCIICJJCKKCLLCMMCNNCOOCPPCQQCRRCSSoTTTUUTVVTWWTXXTYYTZZT[[T\\T]]T^^T__T``TaaTbbTcTddTeeTffTggThhTiiTjjTkkTllommmnnmoomppmqqmrmssstttuusvswwwxxwyywzzw{{w||o}}}~~}}ooooooooooooooooooooooooooo                      !! "" ## $$ %% && ''(())**++,,--.//001122334455667788899:::;<<==>>>?>@AABBCCDDEEEFFEGGEHHIIJJJKKJLLMMNNOOPPQQRRSSoTTTUUUVVTWWTXXTYYoZo[[[\\o]]]^^]___``]aa]bb]cc]dd]eeoffoggghhgigjjgkllkkkmkngooppoqqqrrqsqttquuqvvqwwqxxqyyqzq{{{|{}}{~~~~qqqqqqqqqqqqqqqoooooooooooooo         !!""##$$%%&''(())**+,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-------,,,+................./////////////////////...........................................................................................................0.....+111111+22222324425262272892:222;22<2=2>?@>ABC>DEDFFDGH>IJKILMINIOIPQIRISTIUIIVIWIXIYZII[\]I^_II`IaIbIcIddIefIgIh>ijk>l>m>nop>q>rstt>uvvwwvxxyy>>z{>||>}~}}}}>>>>>222222222222222222222222222222222222222222222222222222222222222222222 222                               2 22 2   2                  22   2   2 ! ! " # " $ ! ! % & '2 (2 ) ) ) ) ) ) * * ) ) ) ) )22 +2 ,2 -2 . / . 0 . . . . 12 2 3 3 32 422 5 6 7 5 5 8 5 5 9 5 5 : ; 52 <22 =2 >2 ? @ @2 A22 B22 C D22222 E F E G E H2 I22 J K K J J2 L M L2 N22 O P Q R22 S2 T T U V W U X Y X X X X X X X U T T Z [ [ T T \ T222 ]2 ^ ^2 _ _ ` _222 a222 b c22 d d d d d d d d d d e d d d d d d d f d d g d d d d d d d d d d d d d d d d d h h h i h h j j k k h h l d d m m m m d d d d d d d n d d d d d o d d d d d d d d p p d d d d d d d q d d d d d d d d d d d r d d d d d d d d d d d d d d d s d d t t u u u u d d d d d222 v w x v v v222 y22 z z z z2 {22 |2 } ~22 2 22 2 2 2 2 222 222 22 2 2 22222 2 2 2 2 2 222 2 2222 2 2 2 22 22 22 2 2 22 2 2 2 22 2222 2 222 2 22 2 2 2 22 22  2      22                           2 22 2 2  22   2 22   2   2 2 2       222      !22 "222 # $ #2 % & %2 '22 ( ( ) ( (22 *2 + + , , -2 .22 /2 0 0 0 0 1 0 2 0 0 3 3 0 0 0 4 4 4 4 5 0 6 0 7 0 8 0 9 0 : ; 0 < = 0 > 0 ? 0222 @ A B2 C C D E2 F F F F22 G G G G22 H I H2 J2 K22 L2 M M N2 O P2 Q2 R R R S2 T U2 V W W X W W Y Z Z [ W \ W ] W W ^ V _ ` V a V b b V c c d e V f V g h V i V j k V l m l V n V o p V q r V s V V t V u V v w V x x V V y z V V { { | { { { } ~ V  V V V V V V V V V V V V V V V V V V 22 22 22 22 2 2 2 2 2 2 22 2 22 2 22 2 222 22 22 22 22 2 22 222222 2 2 22 2222 2222 22 22 2 22 2 2 2    2 22                       22        2  2 2  2       22 2            !  " # " " " " " " $ $ $ $ " " " " % % % % % % %  & &  ' ' '    ( ) ) ) ( * * * * * * * * * * * * ( + (   , , , , , , , , , - . , , , , / , 0 0 1 0 0 0 0 , , , , 2 3 , 4 , ,2 5 6 6 6 6 7 7 7 7 7 7 7 7 7 6 6 6 6 8 8 8 82 92 : ; : : < < : = : : : : :2 >22 ? ? ? ? @ A ? B ? C ? D ? E ? F ? G ? ? H ? ?222 I J J I I I K K I L I M N I I O I P I Q I R I I S I I T I I U I I2 V W V X V V Y V V22 Z [2 \ ] \ \ ^ \22 _ _ _ ` ` ` a ` _ _ b c c c c b b _ _ _ _ _ d _ e222 f22 g g g22 h222 i i j k22 l l m2 n2 o p o q o22 r r222 s s2 t22 u22 v w v v x v2 y22 z {2222 | } | | ~ |22      22 2 2 2 222222 22 22 222 22 22 2 2 2 2 22 2 22 22 22 2 2 2 2 22 2222 2 2 2 2 22 22 2 2 2 222 2 2 2 222 2 2 2 2 2 2 222 2 22 2 2 22 22 222      2        22 22                             2222  2 22   2   22  2  2 22 ! ! " # $ $ $ % & ' ( ' )22 * + ,22 - -22 .2 / / / /2 0 1 2 0 3 0 4 5 6 7 0 8 922 : ; ; ; ; ; ; ; ; ; ; ; ; ; ; < ; : : = = = = = = = = = = = = = : : : > : : : ? ? ? ? ? ? ? : : : @ : : A : : B B : : : : C : D E : F : : : G : : H : I : : J K : L L L L L L L L L L L L M L L L L L L L N L L L L L L L L L L L : : O : : P Q : : R S S S S S : T : U U U U U U U U U U U U U U U U U U U U U U U :22 V2 W X Y2222 Z Z Z [ [ Z Z Z \ ] \ \ Z Z ^ ^ ^ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ^ ^ ^ ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` Z22 a22 b b c b2 d2 e2 f f g g g g g g g g g h g g g g g g g g g g f i i j j i k k k k f l l f m m m f n n o o o f p p p p f f q q q q q q q q q q r q f f s s f t t f f u u u u u u u f v v22 w x y x2 z { z z z z z | } z z ~ z z     22 2 2222 2 2 2 2 2 2 22 22 2 2 2222 22 2 2 2 22 222 2 2 22 22 2 2 222 2 2 222 2 22 22 222 2 2 2 22 2 2 2 22 22 22 2 2 2 2 22 22  222        22222    22  2  2 2 222      2 2             222  22  22        2  22 !22 " " " " " "2222 #2 $22 % & %222 ' '2 (2 ) ) *2 + ,222 - .2 /2 0 1 0 0 0 02 2 3 4 2 5 2 6 2 72 8 8 8 8 8 82 9 92 : :2 ; ; < <22 =222 >2 ? @22 A A2 B2 C D E F2 G2 H H I J I2 K L K K K M K K K K K K K K2 N22 O P222 Q R Q2 S T S S2 U U V V V V V V V V V V V V V W V V V V V V V X V V V V V V V V V V V V V V V V U U Y U Z [ U \ \ \ U U ] ^ U _ U2 ` a2 b c d22 e e f e e g h e222 i j2 k k k k k l m k k22 n22 o o p o q o r o o s o o o t t t u t o o o v o o o w o o o o x x o y o o o o o o o z { o o | } o o ~ o   o o o o o o2 2 22 2 22 22 2 2 22 22 2 2 2 2 22 222 2 2 222 22 22 2 22 2 2 2 2 22 2 2 22 2 22 22 22222222222222 22     22 2222 22222222222222 !!!!22"2#$#%#2&'&(&)22***++,,,++-*2....2/0000000000000000/21222223222244422567859:;5<=<>552?2@2AA22B2CD22E22FFFGG22H22IJI2K2LLLMM2NNO22PQP22RR2SST2UU22V2W222XYZ22[\[[][[[[[2^222___`_a_22bb2c2d2e222fffgffhiffjkffflfffffmfnnopnnqrnsfffftfffuuuuuuuuuuuuuuvuuuuuuuuuuuuuuuuuuuuuuuuuuuwufffxffyffffffffffz{ffffff|}||~~~~~||||||||||||||||fffffffffffffffffffffffffffffffffffff2222222222222222222222222222222222222222222222222222222222222222222++++               +!!!!!!"#!+$$$$$$$$$$$$$+%%%%%+&&&&&&+'''''''''''''''''''''((((((((((('''''''''''''''''''''''''''''''''''''''''')''''''''''''''*********''''''''''''''''''''''''''''''''''''''''''''''''+++'''',,,-,,....,,''''''''///////////////////////''''''''''0000000000''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''111''''''''''''''''''22222222'''''''''''''''''''''''''''''''''''''''333333333'''''''''''''''4'''''''''''''''''''''''''''''''''''''''''''5''''''''''''''''''''67768869''''''''':::::'''''''''''''''''';<<<<<<;;;;'''''''''''''''''''''''''====''''''''''''''''''''''''''''>>'''''''''''''''''''''''''''''''''''''''''''''''''?@?AA?????BBBBB???CCCCC???DD?E???F???G????HH?????''''''''''''''''IIIIIIIIIIIIIIIIIIIIII''''''''''''''''''''''''''''''''''''''''''''JJJJJJJJJJJJJJJJJ''''''''''''KKK'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''LLLLLLL''''''''''''''''M'''''''''''''''''''''''''''''''NNNNNNOOOOOONNNNPPPNNNNNNNNNNNNNNNQQQNRRRNSSNTTTNUUNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNVVNWWNNNXXXXXXNNNNNNNNNNYYYYYYYYYYYNNNNNNNNNNNNNZZZZZZZNNNNNNNNNNNNNNNNNNNNNNNNNNN[[[[[[[[[[N\\\\\\\\NNNN]]]]N''''''''''''''^^^^^^^'_________________''''''''````````````''''''''''''''''''''''''aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa''bb''''''''''cdd''''effffffffffeeeeeeeeeeeeeeeeeeeeeee'g''hh''''i''j'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''k''''''''l''''''''mmmmmmnm'''''''oooooooo'''''pppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppqqqqqqqqqqqqqpppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppprrrrrp'''''''''''''''''''''''''ssssssssssssssss''''''''''''''''''''''''''''''''''''''''''''tttttttttttttttttttt''''''uuuu'''''''''''''''''''''''''''''''vvvvvvvvvvvvvvvvvvvvvvvvvvvvvv'''ww'''''x''''''''''''''''''''''''yy'''zzzzz''''''''''''''''''{{{{{{{{{{{{{{{{{{{{{{{{{{{{{'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''|}|~|||||||''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''+++++++++++++++++        !! "" ## $$   % && '' (( )))**)++),,)-- . // 00011 22 33 44 5 66 7778 999:: ;; << = > ?? @AA@@ BB CCCDCEE FFFGFHH II JJ K LL MM NN OO PP QQ RR SS TT UUUVVUWW XX YY Z [[[\\[]] ^^ __ `` aa bb cc dd ee f gg hh ii jj kk lllmln oo pp qq rr ss tt uu vv ww xxyyyzy{{y|y}y~yyyyyyyyyyyyyyyyyyyy         !! " # $ % & '(())**++,,--..//00112223342556627728292:2;<<==>>>?>@>A>B>CDDEEFFGGGHIIJJKKKLMMMNNMOOMPPMQQQRQSMTTUUVVWWXXYYZZ[[\\]]^^__``aabbcccdefeeegeheiejjekelmmnnooppqprstpuuvwvuxuypzzzzz{z|}p~pppppppppppppppppp        !"#$%&p'(p))*+,*-.)//0/1p2232425p6p78899::9;;4.18.0-552.1.1.el8.ppc64le.configKconfigKconfig.redhatMakefileMakefile.rhelverModule.symversSystem.maparchKconfigalphaKconfigKconfig.debugMakefilebootMakefilekernelMakefilelibMakefilemath-emuMakefilemmMakefileoprofileMakefilearcKconfigKconfig.debugMakefilebootMakefiledtsMakefilekernelMakefilelibMakefilemmMakefileoprofileMakefileplat-axs10xKconfigMakefileplat-eznpsKconfigMakefileplat-hsdkKconfigMakefileplat-simMakefileplat-tb10xKconfigMakefilearmKconfigKconfig-nommuKconfig.debugMakefilebootMakefilebootpMakefilecompressedMakefiledtsMakefilecommonKconfigMakefilecryptoKconfigMakefilefirmwareKconfigMakefilekernelMakefilelibMakefilemach-actionsKconfigMakefilemach-alpineKconfigMakefilemach-artpecKconfigMakefilemach-asm9260Kconfigmach-aspeedKconfigmach-at91KconfigMakefileMakefile.bootmach-axxiaKconfigMakefilemach-bcmKconfigMakefilemach-berlinKconfigMakefilemach-clps711xKconfigMakefilemach-cns3xxxKconfigMakefilemach-davinciKconfigMakefileMakefile.bootmach-digicolorKconfigMakefilemach-doveKconfigMakefileMakefile.bootmach-ebsa110MakefileMakefile.bootmach-efm32MakefileMakefile.bootmach-ep93xxKconfigMakefileMakefile.bootmach-exynosKconfigMakefilemach-footbridgeKconfigMakefileMakefile.bootmach-geminiKconfigMakefilemach-highbankKconfigMakefilemach-hisiKconfigMakefilemach-imxKconfigMakefileMakefile.bootdevicesKconfigMakefilemach-integratorKconfigMakefilemach-iop13xxKconfigMakefileMakefile.bootmach-iop32xKconfigMakefileMakefile.bootmach-iop33xKconfigMakefileMakefile.bootmach-ixp4xxKconfigMakefileMakefile.bootmach-keystoneKconfigMakefilemach-ks8695KconfigMakefileMakefile.bootmach-lpc18xxMakefileMakefile.bootmach-lpc32xxMakefileMakefile.bootmach-mediatekKconfigMakefilemach-mesonKconfigMakefilemach-mmpKconfigMakefilemach-moxartKconfigMakefilemach-mv78xx0KconfigMakefilemach-mvebuKconfigMakefilemach-mxsKconfigMakefilemach-netxKconfigMakefileMakefile.bootmach-nomadikKconfigMakefilemach-npcmKconfigMakefilemach-nspireKconfigMakefilemach-omap1KconfigMakefileMakefile.bootmach-omap2KconfigMakefilemach-orion5xKconfigMakefilemach-oxnasKconfigMakefilemach-picoxcellKconfigMakefilemach-prima2KconfigMakefilemach-pxaKconfigMakefileMakefile.bootmach-qcomKconfigMakefilemach-realviewKconfigMakefilemach-rockchipKconfigMakefilemach-rpcMakefileMakefile.bootmach-s3c24xxKconfigMakefileMakefile.bootmach-s3c64xxKconfigMakefilemach-s5pv210KconfigMakefilemach-sa1100KconfigMakefileMakefile.bootmach-shmobileKconfigMakefilemach-socfpgaKconfigMakefilemach-spearKconfigMakefilemach-stiKconfigMakefilemach-stm32KconfigMakefileMakefile.bootmach-sunxiKconfigMakefilemach-tangoKconfigMakefilemach-tegraKconfigMakefilemach-u300KconfigMakefilemach-uniphierKconfigMakefilemach-ux500KconfigMakefilemach-versatileKconfigMakefilemach-vexpressKconfigMakefileMakefile.bootmach-vt8500KconfigMakefileMakefile.bootmach-w90x900KconfigMakefileMakefile.bootmach-zxKconfigMakefilemach-zynqKconfigMakefilemmKconfigMakefilenetMakefilenwfpeMakefileoprofileMakefileplat-iopMakefileplat-omapKconfigMakefileplat-orionMakefileplat-pxaKconfigMakefileplat-samsungKconfigMakefileplat-versatileKconfigMakefileprobesMakefilekprobesMakefileuprobesMakefiletoolsMakefilevdsoMakefilevfpMakefilexenMakefilearm64KconfigKconfig.debugKconfig.platformsMakefilebootMakefiledtsMakefileactionsMakefilealMakefileallwinnerMakefilealteraMakefileamdMakefileamlogicMakefileapmMakefilearmMakefilebroadcomMakefilenorthstar2MakefilestingrayMakefilecaviumMakefileexynosMakefilefreescaleMakefilehisiliconMakefilelgMakefilemarvellMakefilemediatekMakefilenvidiaMakefileqcomMakefilerealtekMakefilerenesasMakefilerockchipMakefilesocionextMakefilesprdMakefilesynapticsMakefilexilinxMakefilezteMakefilecryptoKconfigMakefilehypervMakefilekernelMakefileprobesMakefilevdsoMakefilevdso32MakefilekvmKconfigMakefilehypMakefilenvheMakefilevheMakefilelibMakefilemmMakefilenetMakefiletoolsMakefilexenMakefilec6xKconfigMakefilebootMakefiledtsMakefilekernelMakefilelibMakefilemmMakefileplatformsKconfigMakefileh8300KconfigKconfig.cpuMakefilebootMakefilecompressedMakefiledtsMakefilekernelMakefilelibMakefilemmMakefilehexagonKconfigMakefilekernelMakefilelibMakefilemmMakefileia64KconfigKconfig.debugMakefiledigMakefilehpcommonMakefilesimKconfigMakefilebootMakefilezx1MakefilekernelMakefileMakefile.gatelibMakefilemmMakefileoprofileMakefilepciMakefilesnMakefilekernelMakefilesn2MakefilepciMakefilepcibrMakefileuvMakefilekernelMakefilem68k68000MakefileKconfigKconfig.busKconfig.cpuKconfig.debugKconfig.devicesKconfig.machineMakefileamigaMakefileapolloMakefileatariMakefilebvme6000MakefilecoldfireMakefileemuMakefilefpsp040Makefilehp300Makefileifpsp060MakefilekernelMakefilelibMakefilemacMakefilemath-emuMakefilemmMakefilemvme147Makefilemvme16xMakefileq40Makefilesun3MakefilepromMakefilesun3xMakefiletoolsamigaMakefilemicroblazeKconfigKconfig.debugKconfig.platformMakefilebootMakefiledtsMakefilekernelMakefilecpuMakefilelibMakefilemmMakefileoprofileMakefilepciMakefilemipsKconfigKconfig.debugMakefileMakefile.postlinkalchemyKconfigMakefilecommonMakefiledevboardsMakefilear7Makefileath25KconfigMakefileath79KconfigMakefilebcm47xxKconfigMakefilebcm63xxKconfigMakefileboardsKconfigMakefilebmipsKconfigMakefilebootMakefilecompressedMakefiledtsMakefilebrcmMakefilecavium-octeonMakefileimgMakefileingenicMakefilelantiqMakefilemsccMakefilemtiMakefilenetlogicMakefileniMakefilepic32MakefileqcaMakefileralinkMakefilexilfpgaMakefiletoolsMakefilecavium-octeonKconfigMakefilecryptoMakefileexecutiveMakefilecobaltMakefilecryptoMakefiledecMakefilepromMakefileemmaMakefilecommonMakefilemarkeinsMakefilefwarcMakefilecfeMakefilelibMakefilesniMakefilegenericKconfigMakefilejazzKconfigMakefilejz4740KconfigMakefilekernelMakefilekvmKconfigMakefilelantiqKconfigMakefilefalconMakefilexwayMakefilelasatKconfigMakefileimageMakefilelibMakefileloongson32KconfigMakefilecommonMakefilels1bMakefilels1cMakefileloongson64KconfigMakefilecommonMakefilecs5536Makefilefuloong-2eMakefilelemote-2fMakefileloongson-3Makefilemath-emuMakefilemmMakefilemti-maltaMakefilenetMakefilenetlogicKconfigMakefilecommonMakefilexlpMakefilexlrMakefileoprofileMakefileparavirtKconfigMakefilepciMakefilepic32KconfigMakefilecommonMakefilepic32mzdaMakefilepistachioKconfigMakefilepmcs-msp71xxKconfigMakefilepnx833xMakefilecommonMakefilestb22xMakefilepowerMakefileralinkKconfigMakefilerb532Makefilesgi-ip22Makefilesgi-ip27KconfigMakefilesgi-ip32MakefilesibyteKconfigMakefilebcm1480MakefilecommonMakefilesb1250MakefileswarmMakefilesniMakefiletxx9KconfigMakefilegenericMakefilejmr3927Makefilerbtx4927Makefilerbtx4938Makefilerbtx4939MakefilevdsoMakefilevr41xxKconfigcasio-e55MakefilecommonMakefileibm-workpadMakefilends32KconfigKconfig.cpuMakefilebootMakefiledtsMakefilekernelMakefilevdsoMakefilelibMakefilemmMakefilenios2KconfigKconfig.debugMakefilebootMakefilecompressedMakefilekernelMakefilelibMakefilemmMakefileplatformKconfig.platformMakefileopenriscKconfigMakefilebootdtsMakefilekernelMakefilelibMakefilemmMakefilepariscKconfigKconfig.debugMakefilebootMakefilecompressedMakefilekernelMakefilelibMakefilemath-emuMakefilemmMakefileoprofileMakefilepowerpcKconfigKconfig.debugMakefileMakefile.postlinkbootMakefilecryptoMakefileincludeasm8xx_immap.hKbuildaccounting.hagp.harchrandom.hasm-compat.hasm-offsets.hasm-prototypes.hasync_tx.hatomic.hbacklight.hbarrier.hbitops.hbook3s32hash.hmmu-hash.hpgalloc.hpgtable.h64hash-4k.hhash-64k.hhash.hhugetlb.hkup-radix.hmmu-hash.hmmu.hpgalloc.hpgtable-4k.hpgtable-64k.hpgtable.hradix-4k.hradix-64k.hradix.hslice.htlbflush-hash.htlbflush-radix.htlbflush.hpgalloc.hpgtable.hbootx.hbpf_perf_event.hbtext.hbug.hbugs.hcache.hcacheflush.hcell-pmu.hcell-regs.hchecksum.hcmpxchg.hcode-patching-asm.hcode-patching.hcompat.hcontext_tracking.hcopro.hcpm.hcpm1.hcpm2.hcpu_has_feature.hcpu_setup_power.hcpufeature.hcpuidle.hcputable.hcputhreads.hcputime.hcrashdump-ppc64.hcurrent.hdbdma.hdbell.hdcr-generic.hdcr-mmio.hdcr-native.hdcr-regs.hdcr.hdebug.hdebugfs.hdelay.hdevice.hdisassemble.hdma-direct.hdma-mapping.hdma.hdrmem.hdt_cpu_ftrs.hdtl.hedac.heeh.heeh_event.hehv_pic.helf.helfnote.hemergency-restart.hemulated_ops.hepapr_hcalls.hexception-64e.hexception-64s.hexec.hextable.hfadump-internal.hfadump.hfb.hfeature-fixups.hfirmware.hfixmap.hfloppy.hfs_pd.hfsl_85xx_cache_sram.hfsl_gtm.hfsl_hcalls.hfsl_lbc.hfsl_pamu_stash.hfsl_pm.hftrace.hfutex.hgrackle.hhardirq.hhead-64.hheathrow.hhighmem.hhmi.hhugetlb.hhvcall.hhvconsole.hhvcserver.hhvsi.hhw_breakpoint.hhw_irq.hhydra.hi8259.hibmebus.hicswx.hide.hidle.hima.himc-pmu.himmap_cpm2.hinst.hio-defs.hio-workarounds.hio.hio_event_irq.hiommu.hipic.hirq.hirq_work.hirqflags.hisa-bridge.hjump_label.hkdebug.hkdump.hkexec.hkexec_ranges.hkeylargo.hkgdb.hkprobes.hkup.hkvm_asm.hkvm_book3s.hkvm_book3s_32.hkvm_book3s_64.hkvm_book3s_asm.hkvm_book3s_uvmem.hkvm_booke.hkvm_booke_hv_asm.hkvm_fpu.hkvm_guest.hkvm_host.hkvm_para.hkvm_ppc.hlibata-portmap.hlinkage.hlivepatch.hlocal.hlppaca.hlv1call.hmachdep.hmacio.hmc146818rtc.hmce.hmediabay.hmem_encrypt.hmembarrier.hmm-arch-hooks.hmman.hmmiowb.hmmu-40x.hmmu-44x.hmmu-8xx.hmmu-book3e.hmmu.hmmu_context.hmmzone.hmodule.hmpc5121.hmpc52xx.hmpc52xx_psc.hmpc5xxx.hmpc6xx.hmpc8260.hmpc85xx.hmpic.hmpic_msgr.hmpic_timer.hmsi_bitmap.hnmi.hnohash32pgalloc.hpgtable.hpte-40x.hpte-44x.hpte-8xx.hpte-fsl-booke.hslice.h64pgalloc.hpgtable-4k.hpgtable.hslice.hpgalloc.hpgtable.hpte-book3e.hnvram.hohare.hopal-api.hopal.hoprofile_impl.hpaca.hpage.hpage_32.hpage_64.hparavirt.hparport.hpasemi_dma.hpci-bridge.hpci.hpercpu.hperf_event.hperf_event_fsl_emb.hperf_event_server.hpgalloc.hpgtable-be-types.hpgtable-types.hpgtable.hpkeys.hplpar_wrappers.hpmac_feature.hpmac_low_i2c.hpmac_pfunc.hpmc.hpmi.hpnv-ocxl.hpnv-pci.hpowernv.hppc-opcode.hppc-pci.hppc4xx.hppc4xx_ocm.hppc_asm.hprobes.hprocessor.hprom.hps3.hps3av.hps3gpu.hps3stor.hpte-common.hpte-walk.hptrace.hqspinlock.hqspinlock_paravirt.hreg.hreg_8xx.hreg_a2.hreg_booke.hreg_fsl_emb.hrheap.hrio.hrtas.hrunlatch.hscom.hseccomp.hsections.hsecure_boot.hsecurity_features.hsecvar.hserial.hsetjmp.hsetup.hsfp-machine.hshmparam.hsignal.hsimple_spinlock.hsimple_spinlock_types.hslice.hsmp.hsmu.hsparsemem.hspinlock.hspinlock_types.hspu.hspu_csa.hspu_info.hspu_priv1.hsstep.hstackprotector.hstacktrace.hstring.hsvm.hswab.hswiotlb.hswitch_to.hsynch.hsyscall.hsyscalls.hsystbl.htask_size_32.htask_size_64.htce.htermios.hthread_info.htime.htimex.htlb.htlbflush.htm.htopology.htrace.htrace_clock.htsi108.htsi108_irq.htsi108_pci.htypes.huaccess.hudbg.huic.hultravisor-api.hultravisor.hunaligned.huninorth.hunistd.huprobes.huser.hvas.hvdso.hvdso_datapage.hvga.hvio.hword-at-a-time.hxics.hxilinx_intc.hxilinx_pci.hxive-regs.hxive.hxmon.hxor.hxor_altivec.hgeneratedasmdiv64.hexport.hirq_regs.hirq_work.hkmap_size.hkvm_types.hlocal64.hmcs_spinlock.hmsi.hpreempt.hqrwlock.hvtime.huapiasmbpf_perf_event.hparam.hpoll.hresource.hsiginfo.hsockios.hstatfs.huapiasmKbuildauxvec.hbitsperlong.hbootx.hbyteorder.hcputable.heeh.helf.hepapr_hcalls.herrno.hfcntl.hioctl.hioctls.hipcbuf.hkvm.hkvm_para.hmman.hmsgbuf.hnvram.hopal-prd.hpapr_pdsm.hperf_event.hperf_regs.hposix_types.hps3fb.hptrace.hsembuf.hsetup.hshmbuf.hsigcontext.hsignal.hsocket.hspu_info.hstat.hswab.htermbits.htermios.htm.htypes.hucontext.hunistd.hvas-api.hkernelMakefilemodule.ldsptraceMakefiletraceMakefilevdso32Makefilevdso64MakefilekvmKconfigMakefilelibMakefilecrtsavres.Smath-emuMakefilemmMakefilebook3s32Makefilebook3s64MakefilenetMakefileoprofileMakefileperfMakefileplatforms40xKconfigMakefile44xKconfigMakefile4xxMakefile512xKconfigMakefile52xxKconfigMakefile82xxKconfigMakefile83xxKconfigMakefile85xxKconfigMakefile86xxKconfigMakefile8xxKconfigMakefileKconfigKconfig.cputypeMakefileamigaoneKconfigMakefilebook3sKconfigMakefilecellKconfigMakefilespufsMakefilechrpKconfigMakefileembedded6xxKconfigMakefilemapleKconfigMakefilepasemiKconfigMakefilepowermacKconfigMakefilepowernvKconfigMakefileps3KconfigMakefilepseriesKconfigMakefilepurgatoryMakefilesysdevKconfigMakefilegeMakefilexicsKconfigMakefilexiveKconfigMakefilexmonMakefileriscvKconfigMakefilekernelMakefilevdsoMakefilelibMakefilemmMakefiles390KconfigKconfig.debugMakefileappldataMakefilebootMakefilecompressedMakefilecryptoMakefilehypfsMakefilekernelMakefilesyscallsMakefilevdso32Makefilevdso64MakefilekvmKconfigMakefilelibMakefilemmMakefilenetMakefilenumaMakefileoprofileMakefilepciMakefilepurgatoryMakefilescriptsMakefile.chkbsstoolsMakefileshKconfigKconfig.cpuKconfig.debugMakefileboardsKconfigMakefilemach-ap325rxaMakefilemach-caymanMakefilemach-dreamcastMakefilemach-ecovec24Makefilemach-highlanderKconfigMakefilemach-hp6xxMakefilemach-kfr2r09Makefilemach-landiskMakefilemach-lboxre2Makefilemach-microdevMakefilemach-migorKconfigMakefilemach-r2dKconfigMakefilemach-rskKconfigMakefilemach-sdk7780KconfigMakefilemach-sdk7786Makefilemach-se7206Makefile7343Makefile770xMakefile7721Makefile7722Makefile7724Makefile7751Makefile7780MakefileMakefilemach-sh03Makefilemach-sh7763rdpMakefilemach-x3protoMakefilebootMakefilecompressedMakefiledtsMakefileromimageMakefilecchipsKconfighd6446xMakefiledriversKconfigMakefiledmaKconfigMakefilepciMakefilesuperhywayMakefilekernelMakefilecpuMakefileirqMakefilesh2Makefilesh2aMakefilesh3Makefilesh4Makefilesh4aMakefilesh5MakefileshmobileMakefilevsyscallMakefilelibMakefilelib64Makefilemath-emuMakefilemmKconfigMakefileoprofileMakefiletoolsMakefilesparcKconfigKconfig.debugMakefilebootMakefilecryptoMakefilekernelMakefilelibMakefilemath-emuMakefilemmMakefilenetMakefileoprofileMakefilepowerMakefilepromMakefilevdsoMakefileumKconfig.charKconfig.commonKconfig.debugKconfig.netKconfig.restKconfig.umMakefileMakefile-os-LinuxMakefile-skasdriversMakefilekernelMakefileskasMakefileos-LinuxMakefiledriversMakefileskasMakefilescriptsMakefile.rulesunicore32KconfigKconfig.debugMakefilebootMakefilecompressedMakefilekernelMakefilelibMakefilemmKconfigMakefilex86KconfigKconfig.cpuKconfig.debugMakefileMakefile.umMakefile_32.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_enetKconfigMakefilefujitsuKconfigMakefilegoogleKconfigMakefilegveMakefilehisiliconKconfigMakefilehnsMakefilehns3Makefilehns3pfMakefilehns3vfMakefilehpKconfigMakefilehuaweiKconfigMakefilehinicKconfigMakefilei825xxKconfigMakefileibmKconfigMakefileeheaMakefileemacKconfigMakefileintelKconfigMakefilee1000Makefilee1000eMakefilefm10kMakefilei40eMakefileiavfMakefileiceMakefileigbMakefileigbvfMakefileigcMakefileixgbMakefileixgbeMakefileixgbevfMakefilemarvellKconfigMakefilemvpp2MakefilemediatekKconfigMakefilemellanoxKconfigMakefilemlx4KconfigMakefilemlx5coreKconfigMakefileaccelMakefilediagMakefileenMakefilexskMakefileen_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.h6lowpan.h8139cp.h8139too8139too.h8129.h842compress.hdecompress.hac97bus.hadvisesyscalls.haio.halim7101wdt.hallowdevcoredump.halterastapl.haltivec.halx.hamdphy.hapds9802als.haperturehelpers.haquantiaphy.harchcpuproberelease.hdmaaddrt64bit.henablehugepagemigration.hmemoryhotplug.hhotremove.hsplitpmdptlock.hhasdevmemisallowed.hdmamapdirect.helfrandomize.hfastmultiplier.hforcedmaunencrypted.hfortifysource.hgcovprofileall.hgiganticpage.hhugepd.hkexecpurgatory.hmemencrypt.hmembarriercallbacks.hmemremapcompatalign.hmmiowb.hnonoverlappingaddressspace.hphystodma.hpkeys.hpmemapi.hptespecial.hsgchain.htickbroadcast.huaccessflushcache.hmcsafe.hubsansanitizeall.hwalkmemory.hzonedevice.hhavenmisafecmpxchg.hhibernationpossible.hkeepmemblock.hmayhavepcfdc.hmemoryprobe.hmighthavepcparport.hserio.hmmaprndbitsbits.hmax.hmin.hcompatbitsbits.hmax.hmin.hrandom.hselectmemorymodel.hsparsememdefault.henable.hsupportsatomicrmw.hdebugpagealloc.hmemoryfailure.hnumabalancing.huprobes.hsuspendnonzerocpu.hpossible.husebuiltinbswap.hcmpxchglockref.huseshighvmaflags.hwantcompatipcparseversion.hipcparseversion.hirqsoffactivatemm.holdcompatipc.hweakreleaseacquire.harmgicmaxnr.hasn1.hassociativearray.hasymmetrickeytype.hpublickeysubtype.hasynccore.hmemcpy.hpq.hraid6recov.htest.htxdma.hxor.hataata.hbmdma.hgeneric.hpiix.hsff.hverboseerror.hatl1.hatl1c.hatl1e.hatl2.hatmatm.hbr2684.hclip.hlane.hatomic64selftest.hauditaudit.harch.hauditsyscall.hauto.confauto.conf.cmdautofsfs.hautofs4fs.hauxiliarybus.hbacklightclassdevice.hlcdsupport.hlp855x.hpwm.hballooncompaction.hbareudp.hbasefull.hsmall.hbcmnetphylib.hbcm7xxxphy.hbcm87xxphy.hbcmabcma.hdrivergmaccmn.hgpio.hpci.hhostpcipci.hpossible.hpossible.hbe2iscsi.hbe2netbe2net.hhwmon.hlancer.hskyhawk.hbfqgroupiosched.hbigkeys.hbinaryprintf.hbinfmtelf.hmisc.hscript.hbitfieldkunittest.hbitreverse.hbitskunittest.hblkcgroupcgroup.hfcappid.hiolatency.hrwstat.hdebugfs.hdevdev.hbsg.hbsglib.hdmdm.hbuiltin.hinitrd.hintegrityintegrity.ht10.hiotrace.hlooploop.hmincount.hmd.hnbd.hnullblk.hnvme.hpmem.hramram.hcount.hsize.hrbd.hrsxx.hsd.hsr.hthrottling.hmqpci.hrdma.hvirtio.hpm.hscsirequest.hwbtwbt.hmq.hblockblock.hcompat.hbnx2.hbnx2xbnx2x.hsriov.hbnxtbnxt.hdcb.hfloweroffload.hhwmon.hsriov.hbonding.hbootparamhardlockuppanicvalue.hhungtaskpanicvalue.hsoftlockuppanicvalue.hbootxtext.hbounce.hbpfbpf.hevents.hjitjit.halwayson.hdefaulton.hlsm.hstreamparser.hsyscall.hunprivdefaultoff.hbql.hbranchprofilenone.hbridgebridge.hebt8023.hamong.harp.harpreply.hbroute.hdnat.hip.hip6.hlimit.hlog.hmarkmark.ht.hnflog.hpkttype.hredirect.hsnat.hstp.htfilter.hnat.hvlan.higmpsnooping.hnetfilter.hnfebtables.hvlanfiltering.hbroadcomphy.hbsddisklabel.hprocessacctacct.hv3.hbtbt.hath3k.hbcm.hbnepbnep.hmcfilter.hprotofilter.hbredr.hcmtp.hdebugfs.hhcibcm203x.hhcibfusb.hhcibpa10x.hhcibtsdio.hhcibtusbhcibtusb.hautosuspend.hbcm.hmtk.hrtl.hhciuarthciuart.hath3k.hbcsp.hh4.hhcivhci.hhidp.hhs.hintel.hle.hmrvlmrvl.hsdio.hmtk.hrfcommrfcomm.htty.hrtl.hbtree.hbtt.hbugbug.hondatacorruption.hbuildbin2c.hbuildtimeextablesort.hcachefiles.hcancan.h8devusb.hbcm.hccancan.hpci.hplatform.hcalcbittiming.hcc770cc770.hplatform.hdev.hemspci.husb.hesdusb2.hgw.hkvaserpci.husb.hleds.hpeakpci.hpciec.husb.hplxpci.hraw.hsja1000sja1000.hplatform.hslcan.hsofting.hucan.hvcan.hcapiavm.hcardbus.hcaviumptp.hcb710core.hdebugassumptions.hcccanlink.hhaskasangeneric.hsancovtracepc.hstackprotectornone.hworkingnosanitizeaddress.hisgcc.hoptimizeforperformance.hcdromcdrom.hpktcdvdpktcdvd.hbuffers.hceccore.hplatformdrivers.hcephfsfs.hposixacl.hsecuritylabel.hliblib.husednsresolver.hcfsbandwidth.hcgroupbpf.hcpuacct.hdevice.hfreezer.hhugetlb.hnetclassid.hprio.hperf.hpids.hrdma.hsched.hwriteback.hcgroups.hchargersmb347.hchecksignature.hcheckpointrestore.hchelsioinlinecrypto.hipsecinline.hlib.ht4.ht4vf.htlsdevice.hchrdevsch.hsg.hst.hcicadaphy.hcifscifs.hallowinsecurelegacy.hdebug.hdfsupcall.hposix.hsmbdirect.hupcall.hweakpwhash.hxattr.hclangversion.hcleancache.hclkbldi8253.hclonebackwards.hclsu32mark.hperf.hclztab.hcmacma.hareas.hcmdlinecmdline.hkunittest.hcmm.hcnic.hcompaction.hcompatcompat.h32bittime.hbinfmtelf.holdsigaction.hconfigfsfs.hconnector.hconsolelogleveldefault.hquiet.hpoll.htranslations.hcontextswitchtracer.htracking.hcontigalloc.hcordic.hcoredumpdefaultelfheaders.hcoredump.hcortinaphy.hcpufreqfreq.hdefaultgovperformance.hgovattrset.hcommon.hconservative.hondemand.hperformance.hpowersave.hschedutil.huserspace.hstat.hidleidle.hgovhaltpoll.hmenu.hisolation.hlittleendian.hrmap.hcpusets.hcramfscramfs.hblockdev.hcrashcore.hdump.hcrcccitt.hitut.ht10dif.hcrc16.hcrc32crc32.hsliceby8.hcrc7.hcrc8.hcrossmemoryattach.hcryptocrypto.h842.hacomp2.haead.haead2.haes.hakcipher.hakcipher2.halgapi.halgapi2.hansicprng.hanubis.harc4.hauthenc.hblkcipher.hblkcipher2.hblowfishblowfish.hcommon.hcamellia.hcastcommon.hcast5.hcast6.hcbc.hccm.hcfb.hchacha20.hchacha20poly1305.hcmac.hcrc32.hcrc32c.hcrct10dif.hcryptd.hctr.hcts.hdeflate.hdes.hdevchelsio.hnitroxnitrox.hcnn55xx.hnxnx.hcompresscompress.hpowernv.hpseries.hvmxvmx.hencrypt.hdrbgdrbg.hctr.hhash.hhmac.hmenu.hecb.hecdh.hechainiv.hessiv.hfcrypt.hfipsfips.hname.hgcm.hgf128mul.hghash.hhashhash.hinfo.hhash2.hhmac.hhw.hjitterentropy.hkhazad.hkpp.hkpp2.hlibarc4.hsha256.hlrw.hlzo.hmanager.hmanager2.hmd4.hmd5.hmichaelmic.hnull.hnull2.hpcbc.hpcrypt.hpoly1305.hrmd128.hrmd160.hrmd256.hrmd320.hrngrng.hdefault.hrng2.hrsa.hsalsa20.hseed.hseqiv.hserpent.hsha1.hsha256.hsha3.hsha512.htea.htest.htgr192.htwofishtwofish.hcommon.huseruser.hapiapi.haead.hhash.hrng.hskcipher.hvmac.hworkqueue.hwp512.hxcbc.hxts.hcuse.hcxlcxl.hafudriverops.hbase.hbimodal.hlib.hcxlflash.hcyclades.hcypressfirmware.hdamondamon.hdbgfs.hpaddr.hreclaim.hvaddr.hdavicomphy.hdaxdax.hdriver.hdcachewordaccess.hdcb.hdeaoc.hdebugbugverbose.hfs.hinfoinfo.hbtf.hdwarf4.hkernel.hlist.hmemoryinit.hsectionmismatch.hshirq.hstackoverflow.hdebugger.hdecompressbzip2.hgzip.hlz4.hlzma.hlzo.hxz.hdefaultcubic.hfqcodel.hhostname.hhungtasktimeout.hmmapminaddr.hnetsch.hsecurityselinux.htcpcong.hdetecthungtask.hdevcoredump.hdaxdax.hpmempmem.hcompat.hdeviceprivate.hdevmem.hdevtmpfsdevtmpfs.hmount.hdimlib.hdlcidlci.hmax.hdlmdlm.hdebug.hdmbioprison.hbufio.hcachecache.hsmq.hcrypt.hdebug.hdelay.hera.hflakey.hintegrity.hloguserspace.hwrites.hmirror.hmultipathmultipath.hhst.hioa.hql.hst.hpersistentdata.hraid.hsnapshot.hswitch.hthinprovisioning.huevent.hverity.hwritecache.hzero.hdmaengineengine.hraid.hof.hopsops.hbypass.hsharedbuffer.hdmadevices.hdmatest.hdnet.hdnotify.hdnsresolver.hdp83640phy.hdp83822phy.hdp83848phy.hdp83867phy.hdp83tc811phy.hdql.hdrmdrm.hamdacp.hdc.hamdgpuamdgpu.huserptr.hast.hbochs.hbridge.hbuddy.hcirrusqemu.hdisplaydphelper.hhdcphelper.hhdmihelper.hhelper.hdpauxchardev.hexportfortests.hfbdevemulation.hoveralloc.hgemshmemhelper.hi2cch7006.hsil164.hkmshelper.hkunittesttest.hhelpers.hlibrandom.hloadedidfirmware.hmgag200.hnouveaunouveau.hbacklight.hpanelpanel.hbridge.horientationquirks.hqxl.hradeonradeon.huserptr.hsched.httmttm.hhelper.hudl.hvirtiogpu.hvkms.hvramhelper.hdstcache.hdtc.hdtl.hdummydummy.hconsoleconsole.hcolumns.hrows.hdvba8293.haf9013.haf9033.hatbm8830.hau8522au8522.hdtv.hv4l.hav7110av7110.hir.hosd.hb2c2flexcopflexcop.hpci.husb.hbcm3510.hbt8xx.hbudgetbudget.hav.hci.hcore.hpatch.hcore.hcx22700.hcx22702.hcx24110.hcx24116.hcx24117.hcx24120.hcx24123.hcxd2099.hcxd2820r.hcxd2841er.hddbridge.hdib3000mb.hdib3000mc.hdib7000m.hdib7000p.hdib8000.hdm1105.hdrx39xyj.hdrxd.hdrxk.hds3000.hdummyfe.hdynamicminors.hec100.hfiredtvfiredtv.hinput.hgp8pskfe.hhopper.hisl6405.hisl6421.hisl6423.hix2505v.hl64781.hlg2160.hlgdt3305.hlgdt3306a.hlgdt330x.hlgs8gxx.hlnbh25.hlnbp21.hlnbp22.hm88ds3103.hm88rs2000.hmantis.hmaxadapters.hmb86a16.hmb86a20s.hmn88472.hmn88473.hmt312.hmt352.hmxl5xx.hnet.hngene.hnxt200x.hnxt6000.hor51132.hor51211.hpll.hpluto2.hpt1.hrtl2830.hrtl2832.hs5h1409.hs5h1411.hs5h1420.hs921.hsi2165.hsi2168.hsi21xx.hsp8870.hsp887x.hstb0899.hstb6000.hstb6100.hstv0288.hstv0297.hstv0299.hstv0367.hstv0900.hstv090x.hstv0910.hstv6110.hstv6110x.hstv6111.htc90522.htda10021.htda10023.htda10048.htda1004x.htda10071.htda10086.htda18271c2dd.htda665x.htda8083.htda8261.htda826x.hts2020.httusbbudget.hdec.htua6100.htunercx24113.hdib0070.hdib0090.hitd1000.husbusb.ha800.haf9005af9005.hremote.haf9015.haf9035.hanysee.hau6610.haz6007.haz6027.hce6230.hcinergyt2.hcxusb.hdib0700.hdib3000mc.hdibusbmb.hmc.hdigitv.hdtt200u.hdtv5100.hdw2102.hec168.hgl861.hgp8psk.hlme2510.hm920x.hmxl111sf.hnovatusb2.hopera1.hpctv452e.hrtl28xxu.htechnisatusb2.httusb2.humt010.hv2.hvp702x.hvp7045.hves1820.hves1x93.hzl10036.hzl10039.hzl10353.hdwdmacdmac.hcore.hdynamicdebug.hftraceftrace.hwithregs.he1000e.hearlyprintk.hedacedac.hatomicscrub.hcpc925.hlegacysysfs.hsupport.heeh.heeprom93cx6.hat24.hlegacy.hmax6875.hefipartition.helfcore.helfcore.henablemustcheck.henclosureservices.hencryptedkeys.henergymodel.henic.hepaprboot.hparavirt.hepoll.hethernet.hethoc.hethtoolnetlink.heventtracing.heventfd.hevmevm.hattrfsuuid.hexclusivesystemram.hexportfsexportfs.hblockops.hext4fsfs.hposixacl.hsecurity.hkunittests.huseforext2.hextrafirmware.htargets.hfadump.hfailover.hfairgroupsched.hfanotifyfanotify.haccesspermissions.hfatdefaultcodepage.hiocharset.hfs.hkunittest.hfbfb.hbacklight.hcfbcopyarea.hfillrect.himageblit.hcmdline.hdeferredio.hibmgxt4500.hmacmodes.hmatroxmatrox.hg.hmodehelpers.hnotify.hnvidianvidia.hbacklight.hof.hradeonradeon.hbacklight.hssd1307.hsyscopyarea.hfillrect.hfops.himageblit.htileblitting.hvga16.hfcappid.hfhandle.hfibrules.hfilelocking.hfipssignatureselftest.hfirewirefirewire.hnet.hohci.hsbp2.hfixedphy.hfm10k.hfont8x16.h8x8.hsupport.hforcemaxzoneorder.hsmp.hfortifysource.hframewarn.hframebufferconsoleconsole.hdeferredtakeover.hdetectprimary.hrotation.hfreezer.hfrontswap.hfsdaxdax.hpmd.hiomap.hmbcache.hposixacl.hfscachefscache.hstats.hfsnotify.hftraceftrace.hmcountrecord.hsyscalls.hfunctiongraphtracer.htracer.hfusefs.hfusionfusion.hlogging.hmaxsge.hsas.hspi.hfutexfutex.hpi.hfwloaderloader.hsysfs.huserhelper.hgactprob.hgarp.hgccversion.hgenericallocator.hbug.hclockeventsclockevents.hbroadcast.hcmosupdate.hcpucpu.hautoprobe.hvulnerabilities.hhweight.hiomap.hirqinjection.hmigration.hshowshow.hlevel.hisadma.hmsiirq.hnetutils.hpciiomap.hsmpidlethread.hstrncpyfromuser.hstrnlenuser.htimevsyscall.htracer.hgeneve.hgenwqegenwqe.hplatformerrorrecovery.hgfs2fsfs.hlockingdlm.hgigasetbase.hcapi.hm101.hm105.hglob.hgpiopca953x.hpcf857x.hsysfs.hviperboard.hgpiolibgpiolib.hfastpathlimit.hirqchip.hgraceperiod.hgrocells.hgve.hhangchecktimer.hhardenedusercopyusercopy.hfallback.hhardirqsswresend.hhardlockupdetector.hhasdma.hiomem.hioportmap.hhashkunittest.hhavearchauditsyscall.hjumplabel.hkgdb.hmmaprndbits.hcompatbits.hseccompfilter.hsoftdirty.htracehook.htransparenthugepage.hbootmeminfonode.hcontexttracking.hdebugkmemleak.hstackoverflow.hdynamicftraceftrace.hwithregs.hebpfjit.hefficientunalignedaccess.hfastgup.hftracemcountrecord.hfunctiongraphtracer.htracer.hgccplugins.hhardenedusercopyallocator.hhardlockupdetectorarch.hhwbreakpoint.hide.himakexec.hioremapprot.hirqtimeaccounting.hkernelgzip.hxz.hkprobeskprobes.honftrace.hkretprobes.hkvmeventfd.hirqbypass.hirqchip.hirqfd.hvcpuasyncioctl.hlddeadcodedataelimination.hlivepatch.hmemorypresent.hmemorylessnodes.hmodarchspecific.hnetdsa.hnminmi.hwatchdog.hoprofile.hoptprobes.hpcspkrplatform.hperfeventsevents.hnmi.hregs.huserstackdump.hregsandstackaccessapi.hreliablestacktrace.hrseq.hsetuppercpuarea.hstackprotector.hsyscalltracepoints.hvirtcpuaccountingaccounting.hgen.hhdlchdlc.hcisco.hfr.hppp.hraw.hhdmi.hheaderscheck.hhidhid.ha4tech.hacrux.happle.happleir.haureal.hbatterystrength.hbelkin.hcherry.hchicony.hcypress.hdragonrise.helan.helecom.hezkey.hgeneric.hgreenasia.hgyration.hholtek.hicade.hite.hjabra.hkensington.hkeytouch.hkye.hlcpower.hled.hlogitechlogitech.hdj.hhidpp.hmagicmouse.hmicrosoft.hmonterey.hmultitouch.hnti.hntrig.hortek.hpantherlord.hpetalynx.hpicolcdpicolcd.hbacklight.hcir.hfb.hlcd.hleds.hpid.hprimax.hprodikeys.hrmi.hroccat.hsaitek.hsamsung.hsmartjoyplus.hsony.hspeedlink.hsteelseries.hsunplus.hthingm.hthrustmaster.htivo.htopseed.htwinhan.huclogic.hwacom.hwaltop.hwiimote.hzeroplus.hzydacron.hhidraw.hhighrestimers.hhisax163.h1tr6.havma1pcmcia.hbkma4t.hdiehldiva.helsa.heuro.hfritzpcipnp.hgazel.hhfcsx.hhfc4s8s.hmaxcards.hni1.hniccy.hnokeypad.hllc.hsendcomplete.hs0box.hsctquadro.hsedlbauer.hst5481.hw6692.hhisttriggers.hhmmmirror.hhotplugcpu.hpcipci.hpowernv.hrparpa.hdlpar.hshpc.hhsaamdamd.hsvm.hhugetlbpagepage.hsizevariable.hhugetlbfs.hhvperfctrs.hhvcconsole.hdriver.hirq.hopal.hrtas.hhvcs.hhwconsole.hrandomrandom.hpowernv.hpseries.htimeriomem.htpm.hvirtio.hhwlattracer.hhwmonhwmon.hvid.hhwpoisoninject.hhwspinlock.hhysdnhysdn.hcapi.hhzhz.h100.hi2ci2c.halgobit.halgopca.hboardinfo.hchardev.hcompat.hdesignwarecore.hplatform.hdiolanu2c.hhelperauto.hhid.hmpc.hmuxmux.hmlxcpld.hnforce2.hopal.hparportparport.hlight.hpcaplatform.hsimtec.hsmbus.hstub.htinyusb.hviperboard.hi40ei40e.hdcb.hi40evf.hi6300esbwdt.hi8253lock.hiavf.hibmbsr.hibmveth.hibmvio.hibmvmc.hibmvnic.hiceice.hswitchdev.hicplusphy.hidlepagetracking.hieee802154ieee802154.h6lowpan.hdrivers.hfakelb.hsocket.hifb.hifcvf.higbigb.hhwmon.higbvf.higc.hikheaders.hillegalpointervalue.himaima.happraiseappraise.hbootparam.hmodsig.harchpolicy.hdefaulthashhash.hsha256.htemplate.hkexec.hlsmrules.hmeasurepcridx.hreadpolicy.hsecureandortrustedboot.hsigtemplate.htrustedkeyring.hwritepolicy.hinetinet.hah.hdiagdiag.hdestroy.hespesp.hoffload.hespintcp.hipcomp.hmptcpdiag.hrawdiag.hsctpdiag.htcpdiag.htunnel.hudpdiag.hxfrmtunnel.hinet6ah.hespesp.hoffload.hespintcp.hipcomp.htunnel.hxfrmtunnel.hinfinibandinfiniband.haddrtranstrans.hconfigfs.hbnxtre.hcxgb4.hipoibipoib.hcm.hdebug.hirdma.hiser.hisert.hondemandpaging.hqedr.hsrp.hsrpt.huseraccess.hmad.hmem.hvirtdma.hinitenvarglimit.hinitramfssource.hinlinereadunlockunlock.hirq.hspinunlockirq.hwriteunlockunlock.hirq.hinotifyuser.hinputinput.hatiremote2.hcm109.hevdev.hffmemless.hgpiorotaryencoder.hkeyboard.hkeyspanremote.hleds.hmisc.hmouse.hmousedevmousedev.hscreenx.hy.hpolldev.hpowermate.hpwmbeeper.hsparsekmap.htablet.htouchscreen.huinput.hyealink.hintegrityintegrity.hasymmetrickeys.haudit.hplatformkeyring.hsignature.htrustedkeyring.hintelxwayphy.hintervaltree.hioeventirq.hiommuapi.hdefaultdmastrict.hhelper.hiova.hsupport.hionic.hioschedbfq.hipadvancedrouter.hfibtriestats.hmroutemroute.hcommon.hmultipletables.hmulticast.hmultipletables.hnfarpmangle.harpfilter.harptables.hfilter.hiptables.hmangle.hmatchah.hecn.hrpfilter.httl.hnat.hraw.hsecurity.htargetecn.hmasquerade.hnetmap.hredirect.hreject.hsynproxy.httl.hpimsmv1.hv2.hrouteclassid.hmultipath.hverbose.hsctp.hsetset.hbitmapip.hipmac.hport.hhaship.hipmac.hipmark.hipport.hipportip.hipportnet.hmac.hnet.hnetiface.hnetnet.hnetport.hnetportnet.hlistset.hmax.hvsvs.hdh.hfo.hftp.hipv6.hlblc.hlblcr.hlc.hmhmh.htabindex.hnfct.hnq.hovf.hpesip.hprotoahah.hesp.hesp.hsctp.htcp.hudp.hrr.hsed.hshsh.htabbits.htabbits.hwlc.hwrr.hip6nffilter.hiptables.hmangle.hmatchah.heui64.hfrag.hhl.hipv6header.hmh.hopts.hrpfilter.hrt.hnat.hraw.hsecurity.htargetmasquerade.hnpt.hreject.hsynproxy.hipcns.hipmideviceinterface.hhandler.hpanicevent.hstring.hplatdata.hpowernv.hpoweroff.hsi.hssif.hwatchdog.hipppfilter.hipv6ipv6.hgre.hmip6.hmroutemroute.hmultipletables.hmultipletables.hndiscnodetype.hoptimisticdad.hpimsmv2.hrouteinfo.hrouterpref.hsitsit.h6rd.htunnel.hvti.hipvlan.hipvtap.hirgpiocir.htx.higuana.himonimon.hdecoder.hraw.hjvcdecoder.hmcekbddecoder.hmceusb.hnecdecoder.hpwmtx.hrc5decoder.hrc6decoder.hredrat3.hsanyodecoder.hserialserial.htransmitter.hsir.hsonydecoder.hstreamzap.httusbir.hirqallcpus.hbypassmanager.hdomain.hforcedthreading.hpoll.hwork.hirqchip.hisadmaapi.hiscsibootsysfs.htargettarget.hcxgb4.htcp.hisdnisdn.haudio.hcapicapi.hcapi20.hcapidrvcapidrv.hverbose.hmiddleware.hdiversion.hdrvavmb1b1pci.hb1pciv4.hc4.ht1pci.hgigaset.hhisax.hhdlc.hi4l.hmpp.hpppppp.hvj.httyfax.hisl29003.hisl29020.hiso9660fs.hixgbeixgbe.hdcb.hhwmon.hipsec.hixgbevfixgbevf.hipsec.hjbd2.hjoliet.hjumplabellabel.hfeaturechecks.hkallsymskallsyms.hall.hbaserelative.hkarmapartition.hkdbcontinuecatastrophic.hdefaultenable.hkeyboard.hkernelkernel.releasegzip.hstart.hkernfs.hkexeckexec.hcore.hfile.hkeyboardatkbd.hkeyskeys.hcompat.hkgdbkgdb.hhonourblocklist.hkdb.hserialconsole.htests.hkprobeevents.hkprobeskprobes.honftrace.hkretprobes.hksm.hkunitkunit.halltests.hdebugfs.hexampletest.htest.hkvmkvm.hbook3s6464.hhandler.hhv.hhandler.hhvpossible.hcompat.hguest.hvfio.hxics.hxive.hl2tpl2tp.hdebugfs.heth.hip.hv3.hlcdclassdevice.hplatform.hledtriggerphy.hledsblinkm.hbrightnesshwchanged.hclass.hlm3530.hlp3944.hlp5521.hlp5523.hlp5562.hlp55xxcommon.hlt3593.hmlxreg.hpowernv.htriggerbacklight.hcamera.hdefaulton.hdisk.hgpio.hheartbeat.honeshot.htimer.htransient.htriggers.hlibcrc32c.hlibfc.hlibfcoe.hlibfdt.hlibnvdimm.hlinearrangesranges.hkunittest.hliquidioliquidio.hvf.hlirc.hlistkunittest.hlivepatch.hllc.hloadppckeys.hlocalversion.hlockdebuggingsupport.hdownkernel.hspinonowner.htorturetest.hlockdlockd.hv4.hlockdepsupport.hlockupdetector.hlogbufshift.hcpumaxbufshift.hlogitechff.hlogologo.hlinuxclut224.hloopbacktarget.hlparcfg.hlsiet1011cphy.hlsmlsm.hmmapminaddr.hlwtunnellwtunnel.hbpf.hlxtphy.hlz4decompress.hlzocompress.hdecompress.hmacemumousebtn.hpartition.hmac802154.hmacintoshdrivers.hmacsec.hmacvlan.hmacvtap.hmagicsysrqsysrq.hdefaultenable.hserial.hmantiscore.hmarvell10gphy.hphy.hmaxrawdevs.hmaxlineargphy.hmdmd.hautodetect.hcluster.hfaulty.hlinear.hraid0.hraid1.hraid10.hraid456.hmdiomdio.hbcmunimac.hbitbang.hbus.hcavium.hdevice.hgpio.hhisifemac.hmsccmiim.hocteon.hthunder.hmediaalteraci.hanalogtvsupport.hattach.hcamerasupport.hcecsupport.hcommonoptions.hdigitaltvsupport.hpcisupport.hradiosupport.hsubdrvautoselect.hsupport.htunertuner.he4000.hfc0011.hfc0012.hfc0013.hfc2580.hit913x.hm88rs6000t.hmax2165.hmc44s803.hmt2060.hmt2063.hmt20xx.hmt2131.hmt2266.hmxl5005s.hmxl5007t.hqm1d1b0004.hqm1d1c0042.hqt1010.hr820t.hsi2157.hsimple.htda18212.htda18218.htda18250.htda18271.htda827x.htda8290.htda9887.htea5761.htea5767.htua9001.hxc2028.hxc4000.hxc5000.husbsupport.hmegaraidsas.hmemsoftdirty.hmembarrier.hmemcgmemcg.hkmem.hswap.hmemcpykunittest.hmemfdcreate.hmemoryballoon.hfailure.hhotplug.hhotremove.hisolation.hmemregion.hmemstickmemstick.hjmicron38x.hr592.hrealtekpci.htifmms.hmessagelogleveldefault.hmfdcore.hsm501sm501.hgpio.hviperboard.hvx855.hmhibusbus.hpcigeneric.hmicrelphy.hmicrochipphy.ht1phy.hmicrosemiphy.hmigration.hmii.hminixsubpartition.hmiscfilesystems.hrtsxrtsx.hpci.husb.hmisdnmisdn.havmfritz.hdsp.hhfcmulti.hhfcpci.hhfcusb.hinfineon.hipac.hisar.hl1oip.hnetjet.hspeedfax.hw6692.hmlx4core.hdebug.henen.hdcb.hinfiniband.hmlx5bridge.hclsact.hcorecore.henen.hdcb.hipoib.henarfs.hipsec.hrxnfc.htls.heswitch.hfpga.hinfiniband.hmpfs.hsfsf.hmanager.hswsteering.htcct.hsample.hvdpavdpa.hnet.hmlxfw.hmlxswcorecore.hhwmon.hthermal.hi2c.hminimal.hpci.hspectrumspectrum.hdcb.hswitchib.hswitchx2.hmmcmmc.hblockblock.hminors.hcb710.hcqhci.hrealtekpci.husb.hricohmmc.hsdhcisdhci.hpci.hpltfm.htifmsd.hushc.hviasdmmc.hvub300.hmmiowb.hmmummu.hgathermergevmas.hpagesize.hrcutablefree.htablefree.hnotifier.hmoduleforceload.hrelcrcs.hsigsig.hall.hformat.hhash.hkey.hsha256.hsrcversionall.hunload.hmodulesmodules.htreelookup.huseelfrela.hmodversions.hmouseappletouch.hbcm5974.hcyapa.helani2ci2c.hi2c.hsmbus.hps2ps2.halps.hbyd.hcypress.helantechelantech.hsmbus.hfocaltech.hlogips2pp.hsentelic.hsmbus.hsynapticssynaptics.hsmbus.htrackpoint.hserial.hsynapticsi2c.husb.hvsxxxaa.hmpic.hmpilib.hmplsmpls.hiptunnel.hrouting.hmprofilekernel.hmptcpmptcp.hipv6.hkunittest.hmqioscheddeadline.hkyber.hmrp.hmsdosfs.hpartition.hmsibitmapselftest.hmsproblock.hmtdmtd.hcfii1.hi2.hmapbankwidth1.h2.h4.hofparts.hpowernvflash.hubiubi.hbeblimit.hwlthreshold.hmultiuser.hmutexspinonowner.hmyri10ge.hngsm.hhdlc.hnamespaces.hnationalphy.hndblk.hbtt.hclaim.hpfn.hneeddmamapstate.hmultiplenodes.hpercpuembedfirstchunk.hsgdmalength.hnetnet.hactbpf.hcsum.hct.hgact.hmirred.hmpls.hnat.hpedit.hpolice.hsample.hsimp.hskbedit.hskbmod.htunnelkey.hvlan.hclscls.hact.hbasic.hbpf.hcgroup.hflow.hflower.hfw.hmatchall.hroute4.hrsvp.hrsvp6.htcindex.hu32.hcore.hdevlink.hdropmonitor.hegress.hematchematch.hcmp.hipset.hmeta.hnbyte.hstack.htext.hu32.hfailover.hfc.hflowlimit.hingress.hiptunnel.hipgreipgre.hbroadcast.hdemux.hipip.hipvti.hkeykey.hmigrate.hl3masterdev.hmplsgso.hns.hnsh.hpacketengine.hpktgen.hpollcontroller.hptpclassify.hredirect.hrxbusypoll.hschatm.hcbq.hcbs.hchoke.hcodel.hdefault.hdrr.hdsmark.hets.hfifo.hfqfq.hcodel.hgred.hhfsc.hhhf.hhtb.hingress.hmqpriomqprio.hlib.hmultiq.hnetem.hpie.hplug.hprio.hqfq.hred.hsfb.hsfq.htbf.hteql.hsched.hsockmsg.hswitchdev.htcskbext.hteamteam.hmodeactivebackup.hbroadcast.hloadbalance.hrandom.hroundrobin.hudptunnel.hvendoramazon.haquantia.hatheros.hbroadcom.hbrocade.hcavium.hchelsio.hcisco.hdec.hemulex.hgoogle.hibm.hintel.hmellanox.hmicrosoft.hmyri.hnetronome.hoki.hpensando.hqlogic.hrealtek.hrocker.hsolarflare.hvrf.hnetconsolenetconsole.hdynamic.hnetdevaddrlisttest.hnetdevices.hnetdevsim.hnetfilternetfilter.hadvanced.hconncount.hfamilyarp.hbridge.hingress.hnetlinknetlink.hgluect.hlog.hqueue.hsynproxy.hxtconnmark.hmark.hmatchaddrtype.hbpf.hcgroup.hcluster.hcomment.hconnbytes.hconnlabel.hconnlimit.hconnmark.hconntrack.hcpu.hdccp.hdevgroup.hdscp.hecn.hesp.hhashlimit.hhelper.hhl.hiprange.hipvs.hlength.hlimit.hmac.hmark.hmultiport.hosf.howner.hphysdev.hpkttype.hpolicy.hquota.hrateest.hrealm.hrecent.hsctp.hsocket.hstate.hstatistic.hstring.htcpmss.hu32.hnat.hset.htargetaudit.hchecksum.hclassify.hconnmark.hconnsecmark.hct.hdscp.hhl.hhmark.hidletimer.hlog.hmark.hnetmap.hnflog.hnfqueue.hnotrack.hrateest.hredirect.hsecmark.htcpmss.htcpoptstrip.htee.htproxy.htrace.hxtables.hnetlabel.hnetlinkdiag.hnetpoll.hnetworkfilesystems.hphytimestamping.hsecmark.hnetxennic.hnewleds.hnfconntrackconntrack.hamanda.hbroadcast.hevents.hftp.hh323.hirc.hlabels.hmark.hnetbiosns.hpptp.hprocfs.hsane.hsecmark.hsip.hsnmp.htftp.htimeout.htimestamp.hzones.hctnetlinknetlink.hhelper.htimeout.hprotodccp.hgre.hsctp.hudplite.hdefragipv4.hipv6.hdupipv4.hipv6.hnetdev.hflowtabletable.hinet.hipv4.hipv6.hlogarp.hipv4.hipv6.hsyslog.hnatnat.hamanda.hftp.hh323.hirc.hmasquerade.hneeded.hpptp.hredirect.hsip.hsnmpbasic.htftp.hosf.hrejectipv4.hipv6.hsocketipv4.hipv6.htablestables.harp.hbridge.hinet.hipv4.hipv6.hnetdev.hset.htproxyipv4.hipv6.hnfpnfp.happabmnic.hflower.hnfsaclsupport.hcommon.hdebug.hfs.hfscache.husekerneldns.hv3v3.hacl.hv4v4.h11.himplementationiddomain.h2.hsecuritylabel.hnfsdnfsd.hpnfs.hscsilayout.hv2acl.hv3v3.hacl.hv4v4.hsecuritylabel.hnftbridgereject.hcompat.hconnlimit.hcounter.hct.hdupipv4.hipv6.hnetdev.hfibfib.hinet.hipv4.hipv6.hnetdev.hflowoffload.hfwdnetdev.hhash.hlimit.hlog.hmasq.hnat.hnumgen.hobjref.hqueue.hquota.hredir.hrejectreject.hinet.hipv4.hipv6.hsocket.htproxy.hxfrm.hnlattr.hnlmon.hnlsnls.hascii.hcodepage1250.h1251.h437.h737.h775.h850.h852.h855.h857.h860.h861.h862.h863.h864.h865.h866.h869.h874.h932.h936.h949.h950.hdefault.hiso88591.h13.h14.h15.h2.h3.h4.h5.h6.h7.h8.h9.hkoi8r.hu.hmacceltic.hcenteuro.hcroatian.hcyrillic.hgaelic.hgreek.hiceland.hinuit.hroman.hromanian.hturkish.hutf8.hnmiipi.hnohzhz.hcommon.hfull.hnodesshift.hnonstatickernel.hnoptracer.hnouveaudebugdebug.hdefault.hnozomi.hnrcpus.hirqs.hnumanuma.hbalancingbalancing.hdefaultenabled.hkeepmeminfo.hnvdimmdax.hkeys.hpfn.hnvmecore.hfabrics.hfc.hmultipath.hrdma.htargettarget.hfc.hfcloop.hloop.hrdma.htcp.htcp.hverboseerrors.hnvmem.hobjagg.hocxlocxl.hbase.hofof.haddress.hdynamic.hearlyflattree.hflattree.hgpio.hiommu.hirq.hkobj.hmdio.hnet.hpmem.hreservedmem.hoidregistry.holdsigsuspend.hopalcore.hprd.hopenvswitchopenvswitch.hgeneve.hgre.hvxlan.hoprofile.hoptprobes.hosfpartition.hosnoisetracer.hoverlayfs.hpacketpacket.hdiag.hpadata.hpagecounter.hextension.hoffset.howner.hpoisoning.hpool.hreporting.hpaniconoopsoops.hvalue.htimeout.hpaprscm.hparman.hparportparport.h1284.hnotpc.hpc.hserial.hpartitionadvanced.hpataofplatform.hplatform.hpccard.hpcipci.hats.hdomains.hiov.hmsimsi.harchfallbacks.hpasid.hpri.hquirks.hstub.hsyscall.hpciedpc.hecrc.hpme.hpcieaerpcieaer.hinject.hpcieaspmpcieaspm.hdefault.hpcieportbus.hpcipcwatchdog.hpcspkrplatform.hperfevents.hpersistentkeyrings.hpgtablelevels.hphylib.hphysaddrt64bit.hphysicalstart.hpidns.hpkcs7messageparser.hpldmfw.hpluginhostcc.hpmpm.hdebug.hgenericdomainsdomains.hof.hsleep.hsleepsleep.hdebug.hsmpsmp.hnonzerocpu.hpmbus.hpmusysfs.hpnfsblock.hfilelayout.hflexfilelayout.hposixmqueuemqueue.hsysctl.htimers.hpowerresetreset.hgpio.hsupply.hpowernvcpufreq.hcpuidle.hoppanel.hppcppc.h64kpages.hbarriernospec.hbook3sbook3s.h64.hcoprobase.hdawr.hdenormalisation.hdisablewerror.hdoorbell.hdtcpuftrs.hemulatedstats.hfpu.hhavepmusupport.hi8259.hicphv.hnative.hicsrtas.hindirectpio.hmemkeys.hmmslices.hmsibitmap.hnative.hofboottrampoline.hp7nap.hperfctrs.hpowernv.hpseries.hradixmmummu.hdefault.hrtasrtas.hdaemon.hfilter.hscom.hsecureboot.hsecvarsysfs.hsmlpar.hsmpmuxedipi.hsplpar.hstdmmu.hsubpageprot.hsvm.htransactionalmem.hudbg16550.huv.hvas.hwatchdog.hxics.hxivexive.hnative.hspapr.hppc64ppc64.hbootwrapper.hsupportsmemoryfailure.hppdev.hpppppp.hasync.hbsdcomp.hdeflate.hfilter.hmppe.hmultilink.hsynctty.hpppoatm.hpppoe.hpppol2tp.hppspps.hclientgpio.hldisc.hparport.hpptp.hpreemptnotifiers.hvoluntary.hpreventfirmwarebuild.hprimenumbers.hprintquotawarning.hstackdepth.hprinter.hprintkprintk.hnmi.hsafelogbufshift.htime.hprobeevents.hprocchildren.hevents.hfs.hkcore.hpagemonitor.hpidcpuset.hsysctl.hvmcorevmcore.hdevicedump.hprofiling.hpsample.hpseriescpuidle.henergy.hpsipsi.hdefaultdisabled.hpstorepstore.hcompresscompress.hdefault.hdeflatecompresscompress.hdefault.hram.hptp1588clock.hpwmpwm.hsysfs.hqedqed.hfcoe.hiscsi.hll2.hooo.hrdma.hsriov.hqede.hqedf.hqedi.hqfmtv2.hqsemiphy.hquotaquota.hnetlinkinterface.htree.hquotactl.hr8169.hradioadapters.htea575x.hraidattrs.hraid6pqpq.hbenchmark.hrandomtrustcpu.hras.hrationalrational.hkunittest.hrawdriver.hrcatiremote.hcore.hdecoders.hdevices.hmap.hrcucpustalltimeout.hneedsegcblist.hnocbcpu.hstallcommon.hrdbzip2.hgzip.hlz4.hlzma.hlzo.hxz.hrdmarxe.hsiw.hrealtekautopm.hphy.hreedsolomonsolomon.hdec8.henc8.hregmapregmap.hi2c.hrelay.hrelocatable.hrenesasphy.hresourcekunittest.hrfkillrfkill.hinput.hleds.hrfsaccel.hrhkabisizealignchecks.hrheldifferences.hringbufferbuffer.hallowswap.hbenchmark.hrmi42dsensor.hcore.hf03f03.hserio.hf11.hf12.hf30.hf34.hf3a.hf55.hi2c.hsmb.hrockchipphy.hrocker.hrpcsecgsskrb5.hrps.hrseq.hrtgroupsched.hmutexes.hrtaserrorlogging.hflash.hproc.hrtcclass.hdrvbq32k.hbq4802.hcmos.hds1286.hds1307.hds1374.hds1511.hds1553.hds1672.hds1742.hds2404.hds3232ds3232.hhwmon.hem3027.hfm3130.hgeneric.hisl12022.hisl1208.hm41t80m41t80.hwdt.hm48t35.hm48t59.hmax6900.hmsm6242.hopal.hpcf8523.hpcf8563.hpcf8583.hrp5c01.hrs5c372.hrv3029c2.hrx8025.hrx8581.hstk17ta8.hv3020.hx1205.hhctosyshctosys.hdevice.hi2candspi.hintfdev.hproc.hsysfs.hliblib.hkunittest.hmc146818lib.hnvmem.hruntimetestingmenu.hrwsemspinonowner.hsamples.hsataahciahci.hplatform.hhost.hmobilelpmpolicy.hpmp.hsbitmap.hscanlog.hscftorturetest.hschedautogroup.hdebug.hhrtick.hinfo.homitframepointer.hsmt.htracer.hschedstats.hscomdebugfs.hscsiscsi.haacraid.hbnx2iscsi.hbnx2xfcoe.hchelsiofcoe.hconstants.hcxgb4iscsi.hdebug.hdhdh.halua.hemc.hhpsw.hrdac.hdma.henclosure.hfcattrs.hhpsa.hibmvfcibmvfc.htrace.hibmvscsi.hibmvscsis.hipripr.hdump.htrace.hiscsiattrs.hlogging.hlowlevel.hlpfc.hmod.hmpi3mr.hmpt2sasmpt2sas.hmaxsge.hmpt3sasmpt3sas.hmaxsge.hnetlink.hprocfs.hqlafc.hiscsi.hsasata.hattrs.hhostsmp.hlibsas.hscanasync.hsmartpqi.hspiattrs.hsrpattrs.hvirtio.hsctpcookiehmacmd5.hsha1.hdefaultcookiehmacsha1.hsdiouart.hseccompseccomp.hfilter.hsectionmismatchwarnonly.hsecuritysecurity.hinfiniband.hnetworknetwork.hxfrm.hpath.hselinuxselinux.havcstats.hbootparam.hcheckreqprotvalue.hdevelop.hdisable.hsid2strcachesize.hsidtabhashbits.hwritablehooks.hyama.hsecurityfs.hselectmemorymodel.hsensorsad7414.had7418.hadm1021.hadm1025.hadm1026.hadm1029.hadm1031.hadm1275.hadm9240.hads1015.hads7828.hadt7410.hadt7411.hadt7462.hadt7470.hadt7475.hadt7x10.hamc6821.hapds990x.hasc7621.hatxp1.hbh1770.hds1621.hds620.hemc1403.hemc6w201.hf75375s.hg760a.hgl518sm.hgl520sm.hibmaem.hibmpex.hibmpowernv.hina209.hina2xx.hjc42.hlineage.hlis3i2c.hlis3lv02d.hlm25066.hlm63.hlm73.hlm75.hlm77.hlm78.hlm80.hlm83.hlm85.hlm87.hlm90.hlm92.hlm93.hlm95234.hlm95241.hlm95245.hltc2978.hltc4151.hltc4215.hltc4245.hltc4261.hmax16064.hmax16065.hmax1619.hmax1668.hmax197.hmax34440.hmax6639.hmax6642.hmax6650.hmax6697.hmax8688.hmcp3021.hntcthermistor.hpcf8591.hpmbus.hsht15.hsht21.hsis5595.hsmsc47m192.hthmc50.htmp102.htmp401.htmp421.htsl2550.hucd9000.hucd9200.hvia686a.hvt8231.hw83781d.hw83791d.hw83792d.hw83793.hw83795.hw83l785ts.hw83l786ng.hzl6100.hserial82508250.hconsole.hdma.hexar.hextended.hfsl.hmanyports.hnruarts.hpci.hrsa.hruntimeuarts.hshareirq.harcarc.hnrports.hcorecore.hconsole.hearlycon.hicom.hjsm.hnonstandard.hofplatform.huartliteuartlite.hnruarts.hserioserio.halteraps2.harcps2.hi8042.hlibps2.hraw.hserport.hsfcsfc.hmcdilogging.hmon.hmtd.hsienasiena.hmcdilogging.hmon.hmtd.hsriov.hsriov.hsgpool.hsgetmasksyscall.hsgipartition.hsglalloc.hshmem.hshufflepageallocator.hsignalfd.hsignature.hsimplegpio.hskbextensions.hslabfreelisthardened.hrandom.hslhc.hslipslip.hcompressed.hsmart.hslubslub.hcpupartial.hdebug.hkunittest.hsmp.hsmssdiodrv.hsianomdtv.hrc.husbdrv.hsmscphy.hsndsnd.hac97codec.hpowersavesave.hdefault.had1889.hali5451.haloop.hatiixpatiixp.hmodem.hau8810.hau8820.hau8830.hbcd2000.hbebob.hbt87x.hca0106.hcmipci.hcs46xxcs46xx.hnewdsp.hctlfastlookup.hctxfi.hdarla20.hdarla24.hdice.hdrivers.hdummy.hdynamicminors.hecho3g.hemu10k1emu10k1.hseq.hemu10k1x.hens1370.hens1371.hes1968es1968.hinput.hradio.hfireface.hfirewirefirewire.hdigi00x.hlib.hmotu.htascam.hfireworks.hgina20.hgina24.hhdapreallocsize.hhdsp.hhdspm.hhrtimer.hhwdep.hice1712.hice1724.hindigo.hindigodj.hindigodjx.hindigoio.hindigoiox.hintel8x0.hintel8x0m.hisight.hjackjack.hinputdev.hkorg1212.hlayla20.hlayla24.hlola.hlx6464es.hmaestro3maestro3.hinput.hmaxcards.hmia.hmixart.hmona.hmpu401mpu401.huart.hmtpav.hopl3liblib.hseq.hossemul.hoxfw.hoxygenoxygen.hlib.hpci.hpcmpcm.htimer.hpcxhr.hppc.hprocfs.hrawmidi.hrme32.hrme96.hrme9652.hseqdevice.hdummy.hhrtimerdefault.hmidimidi.hemul.hevent.hvirmidi.hsequencersequencer.hoss.hsynthemux.htimer.htrident.husbusb.h6fire.haudio.hcaiaqcaiaq.hinput.hhiface.hline6.hpod.hpodhd.htoneport.hua101.husx2y.hvariax.hverboseprocfs.hvia82xxvia82xx.hmodem.hvirmidi.hvirtio.hvirtuoso.hvmaster.hvxlib.hvx222.hsockcgroupdata.hvalidatexmit.hsoftwatchdog.hsoftlockupdetector.hsolarisx86partition.hsoundsound.hosscorecore.hpreclaim.hspaprtceiommu.hsparseirq.hsparsememsparsemem.hextreme.hmanual.hvmemmapvmemmap.henable.hsplitptlockcpus.hsquashfssquashfs.hdecompmultipercpu.hfiledirect.hfragmentcachesize.hlzo.hxattr.hxz.hzlib.hsrcu.hssbpossible.hstacktracer.hstackdepot.hstackinitkunittest.hstackprotectorstackprotector.hstrong.hstacktracestacktrace.hsupport.hstandalone.hste10xp.hstp.hstreamparser.hstrictdevmem.hstripasmsyms.hsunpartition.hsunrpcsunrpc.hbackchannel.hdebug.hgss.hxprtrdma.hsuspendsuspend.hfreezer.hswap.hswiotlb.hswphy.hsymbolicerrname.hsyncookies.hsyncfile.hsynclinksynclink.hgt.hsynclinkmp.hsyssupportshugetlbfs.hsysctlsysctl.hexceptiontrace.hkunittest.hsysfssysfs.hsyscall.hsystemblacklisthashlist.hkeyring.hdataverification.hextracertificatecertificate.hsize.htrustedkeyring.hkeys.hsysvipcsysvipc.hcompat.hsysctl.htabletserialwacom4.husbacecad.haiptek.hgtco.hkbtab.htap.htargetcore.htaskdelayacct.hioaccounting.hxacct.htasksrcugeneric.hrudercu.htracercu.htaskstats.htcgibmvtpm.htistis.hcore.hi2catmel.hinfineon.hnuvoton.hst33zp24st33zp24.hi2c.htpm.htcmfileio.hiblock.hpscsi.huser2.htcpcongadvanced.hbbr.hbic.hcubic.hdctcp.hhstcp.hhtcp.hhybla.hillinois.hlp.hnv.hscalable.hvegas.hveno.hwestwood.hyeah.hmd5sig.hteraneticsphy.htestbpf.hhmm.hkstrtox.hlistsort.hlivepatch.hvmalloc.htextsearchtextsearch.hbm.hfsm.hkmp.hthermalthermal.hdefaultgovstepwise.hemergencypoweroffdelayms.hgovfairshare.hstepwise.hhwmon.hof.hthreadshift.htickoneshot.htifm7xx1.hcore.htigon3tigon3.hhwmon.htimekunittest.htimerfd.htimerlattracer.htipctipc.hcrypto.hdiag.hmediaib.hudp.htlstls.hdevice.htmpfstmpfs.hposixacl.hxattr.htorturetest.htouchscreenelo.hproperties.hwacomi2c.hw8001.htraceclock.hirqflagssupport.htracepoints.htracermaxtrace.hsnapshot.htracingtracing.hmap.hsupport.htransparenthugepagehugepage.hmadvise.htreercu.hsrcu.htristate.conftrustedkeys.httpcieeprom.htty.htuntun.hvnetcrossle.htypectypec.hdpaltmode.hfusb302.hmuxpi3usb30532.hrt1711h.htcpci.htcpm.htps6598x.hucsi.hudffs.huhid.huiouio.haec.hcif.hpcigeneric.hpdrvgenirq.hsercos3.hunixunix.hdiag.hscm.hunix98ptys.hunixwaredisklabel.huprobeevents.huprobes.husbusb.hacm.hadutux.halim5632.han2720.hannouncenewdevices.happledisplay.harchhashcd.harmlinux.hatm.hautosuspenddelay.hbelkin.hcatc.hcommon.hcxacru.hdefaultpersist.hehcihcdhcd.hppcof.hpci.hroothubtt.httnewsched.hemi26.hemi62.hepson2888.hezusbfx2.hgl860.hgspcagspca.hbenq.hconex.hcpia1.hetoms.hfinepix.hjeilinj.hjl2005bcd.hkonica.hmars.hmr97310a.hnw80x.hov519.hov534ov534.h9.hpac207.hpac7302.hpac7311.hse401.hsn9c2028.hsn9c20x.hsonixb.hsonixj.hspca1528.hspca500.hspca501.hspca505.hspca506.hspca508.hspca561.hsq905.hsq905c.hsq930x.hstk014.hstv0680.hsunplus.ht613.htopro.htv8532.hvc032x.hvicam.hxirlinkcit.hzc3xx.hhid.hhiddev.hhsicusb3503.hhso.hhwahcd.hidmouse.hiowarrior.hipheth.hisightfw.hkaweth.hkc2190.hlan78xx.hlcd.hld.hledstriggerusbport.hlegotower.hm5602.hmdc800.hmicrotek.hmon.hnetax88179178a.hax8817x.hcdceem.hmbim.hncm.hsubsetsubset.henable.hcdcether.hch9200.hcx82310eth.hdm9601.hdrivers.hgl620a.hint51x1.hkalmia.hmcs7830.hnet1080.hplusb.hqmiwwan.hrndishost.hsmsc75xx.hsmsc95xx.hzaurus.hohcibigendiandesc.hmmio.hhcdhcd.hpci.hppcofof.hbe.hle.hlittleendian.hpci.hpegasus.hprinter.hpulse8cec.hpwcpwc.hinputevdev.hrainshadowcec.hroleswitch.hrtl8150.hrtl8152.hs2255.hserialserial.haircable.hark3116.hbelkin.hch341.hconsole.hcp210x.hcyberjack.hcypressm8.hdebug.hdigiacceleport.hedgeportedgeport.hti.hempeg.hf8153x.hftdisio.hgarmin.hgeneric.hipaq.hipw.hir.hiuu.hkeyspankeyspan.hpda.hklsi.hkobilsct.hmctu232.hmos7715parport.hmos7720.hmos7840.hmxuport.hnavman.homninet.hopticon.hoption.hoti6858.hpl2303.hqcaux.hqt2.hqualcomm.hsafesafe.hpadded.hsierrawireless.hspcp8x5.hssu100.hsymbol.hti.hupd78f0730.hvisor.hwhiteheat.hwwan.hxircom.hxsensmt.hsevseg.hsierranet.hsisusbvga.hspeedtouch.hstkwebcam.hstoragestorage.halauda.hcypressatacb.hdatafab.heneub6250.hfreecom.hjumpshot.hkarma.honetouch.hrealtek.hsddr09.hsddr55.husbat.hstv06xx.hsupport.htmc.huas.hueagleatm.huhcihcd.husbnet.huss720.hvideoclassclass.hinputevdev.hvl600.hwdm.hwusbwusb.hcbaf.hxhcihcd.hpci.hxusbatm.hzr364xx.husb4usb4.hnet.husbpcwatchdog.husepercpunumanodeid.huserns.huserfaultfd.hutsns.huvccommon.huwbuwb.hhwa.hi1480u.hwhci.hvdpavdpa.hsimsim.hblock.hnet.hveth.hvfatfs.hvfiovfio.hiommuspaprtce.hpcipci.hintx.hmmap.hnvlink2.hspapreeh.hvirqfd.hvgaarbarb.hmaxgpus.hconsole.hvgastate.hvhostvhost.hcrossendianlegacy.hiotlb.hmenu.hnet.hring.hvdpa.hvsock.hvideoau0828au0828.hv4l2.hbt848.hcs3308.hcs5345.hcs53l32a.hcx18cx18.halsa.hcx231xxcx231xx.halsa.hdvb.hrc.hcx2341x.hcx23885.hcx25840.hcx88cx88.halsa.hblackbird.hdvb.hmpeg.hdev.hem28xxem28xx.halsa.hdvb.hrc.hfbivtv.hhdpvr.hiri2c.hivtv.hm52790.hmsp3400.hnomodeset.hpvrusb2pvrusb2.hdvb.hsysfs.hsaa6588.hsaa6752hs.hsaa711x.hsaa7127.hsaa7134saa7134.halsa.hdvb.hrc.hsaa7146saa7146.hvv.hsaa7164.hsaa717x.htda7432.htm6000tm6000.halsa.hdvb.htuner.htvaudio.htveeprom.hupd64031a.hupd64083.husbvision.hv4l2.hvp27smpx.hwm8739.hwm8775.hvideobufdmasg.hgen.hvmalloc.hvideobuf2core.hdmasg.hdvb.hmemops.hv4l2.hvmalloc.hvirtcpuaccountingaccounting.hgen.hdrivers.hvirtiovirtio.hballoon.hblk.hconsole.hfs.hinput.hmenu.hnet.hpcipci.hlegacy.hlib.hvdpa.hvsocketsvsockets.hcommon.hvirtualization.hvitessephy.hvlan8021q8021q.hgvrp.hmvrp.hvmeventcounters.hvpvdpa.hvsocketsvsockets.hdiag.hloopback.hvsockmon.hvsx.hvtvt.hconsoleconsole.hsleep.hhwconsolebinding.hvxlan.hwan.hwantdevcoredump.hwatchdogwatchdog.hcore.hhandlebootenabled.hopentimeout.hrtas.hsysfs.hwdtpci.hx509certificateparser.hxarraymulti.hxdpsocketssockets.hdiag.hxfrmxfrm.halgo.hespintcp.hinterface.hipcomp.hmigrate.hoffload.hstatistics.hsubpolicy.huser.hxfsfs.hposixacl.hquota.hxilinxgmii2rgmii.hxmonxmon.hdefaultromode.hdisassembly.hxorblocks.hxps.hxzdecdec.harm.harmthumb.hbcj.hia64.hpowerpc.hsparc.hx86.hyentayenta.henetune.ho2.hricoh.hti.htoshiba.hzbud.hzisofs.hzlibdeflate.hinflate.hzonedevice.hdma.hdma32.hzpool.hzramzram.hwriteback.hzsmalloczsmalloc.hstat.hzswap.hcryptoacompress.haead.haes.hakcipher.halgapi.harc4.hauthenc.hb128ops.hblowfish.hcast5.hcast6.hcast_common.hcbc.hchacha20.hcryptd.hcrypto_wq.hctr.hdes.hdh.hdrbg.hecdh.hengine.hgcm.hgf128mul.hghash.hhash.hhash_info.hhmac.hif_alg.hinternalacompress.haead.hakcipher.hgeniv.hhash.hkpp.hrng.hrsa.hscompress.hsimd.hskcipher.hkpp.hmd5.hmorus1280_glue.hmorus640_glue.hmorus_common.hnull.hpadlock.hpcrypt.hpkcs7.hpoly1305.hpublic_key.hrng.hscatterwalk.hserpent.hsha.hsha1_base.hsha256_base.hsha3.hsha512_base.hskcipher.hsm3.hsm3_base.hsm4.hspeck.htwofish.hxts.hdrmdrm-backportREADME.txtlinuxmmu_notifier.hamd_asic_type.hbridgeanalogix_dp.hdw_hdmi.hdw_mipi_dsi.hmhl.hdisplaydrm_dp.hdrm_dp_aux_bus.hdrm_dp_dual_mode_helper.hdrm_dp_helper.hdrm_dp_mst_helper.hdrm_dsc.hdrm_dsc_helper.hdrm_hdcp.hdrm_hdcp_helper.hdrm_hdmi_helper.hdrm_scdc.hdrm_scdc_helper.hdrm_accel.hdrm_aperture.hdrm_atomic.hdrm_atomic_helper.hdrm_atomic_state_helper.hdrm_atomic_uapi.hdrm_audio_component.hdrm_auth.hdrm_blend.hdrm_bridge.hdrm_bridge_connector.hdrm_buddy.hdrm_cache.hdrm_client.hdrm_color_mgmt.hdrm_connector.hdrm_crtc.hdrm_crtc_helper.hdrm_damage_helper.hdrm_debugfs.hdrm_debugfs_crc.hdrm_device.hdrm_displayid.hdrm_drv.hdrm_edid.hdrm_encoder.hdrm_encoder_slave.hdrm_fb_dma_helper.hdrm_fb_helper.hdrm_fbdev_generic.hdrm_file.hdrm_fixed.hdrm_flip_work.hdrm_format_helper.hdrm_fourcc.hdrm_framebuffer.hdrm_gem.hdrm_gem_atomic_helper.hdrm_gem_dma_helper.hdrm_gem_framebuffer_helper.hdrm_gem_shmem_helper.hdrm_gem_ttm_helper.hdrm_gem_vram_helper.hdrm_ioctl.hdrm_kunit_helpers.hdrm_lease.hdrm_legacy.hdrm_managed.hdrm_mipi_dbi.hdrm_mipi_dsi.hdrm_mm.hdrm_mode_config.hdrm_mode_object.hdrm_modes.hdrm_modeset_helper.hdrm_modeset_helper_vtables.hdrm_modeset_lock.hdrm_module.hdrm_of.hdrm_panel.hdrm_pciids.hdrm_plane.hdrm_plane_helper.hdrm_prime.hdrm_print.hdrm_privacy_screen_consumer.hdrm_privacy_screen_driver.hdrm_privacy_screen_machine.hdrm_probe_helper.hdrm_property.hdrm_rect.hdrm_self_refresh_helper.hdrm_simple_kms_helper.hdrm_syncobj.hdrm_sysfs.hdrm_util.hdrm_utils.hdrm_vblank.hdrm_vblank_work.hdrm_vma_manager.hdrm_writeback.hgma_drm.hgpu_scheduler.hgud.hi2cch7006.hsil164.htda998x.hi915_component.hi915_drm.hi915_mei_hdcp_interface.hi915_pciids.hi915_pxp_tee_interface.hintel-gtt.hintel_lpe_audio.hspsc_queue.htask_barrier.httmttm_bo.httm_caching.httm_device.httm_execbuf_util.httm_kmap_iter.httm_placement.httm_pool.httm_range_manager.httm_resource.httm_tt.hdt-bindingsarmux500_pm_domains.hbusti-sysc.hclkti-dra7-atl.hclockactions,s900-cmu.halphascale,asm9260.ham3.ham4.haspeed-clock.hat91.hath79-clk.haxg-aoclkc.haxg-clkc.haxis,artpec6-clkctrl.hbcm-cygnus.hbcm-ns2.hbcm-nsp.hbcm-sr.hbcm21664.hbcm281xx.hbcm2835-aux.hbcm2835.hberlin2.hberlin2q.hboston-clock.hclps711x-clock.hcortina,gemini-clock.hdm814.hdm816.hdra7.hefm32-cmu.hexynos-audss-clk.hexynos3250.hexynos4.hexynos5250.hexynos5260-clk.hexynos5410.hexynos5420.hexynos5433.hexynos5440.hexynos7-clk.hgxbb-aoclkc.hgxbb-clkc.hhi3516cv300-clock.hhi3519-clock.hhi3620-clock.hhi3660-clock.hhi6220-clock.hhip04-clock.hhistb-clock.hhix5hd2-clock.himx1-clock.himx21-clock.himx27-clock.himx5-clock.himx6qdl-clock.himx6sl-clock.himx6sll-clock.himx6sx-clock.himx6ul-clock.himx7d-clock.hjz4740-cgu.hjz4770-cgu.hjz4780-cgu.hlpc18xx-ccu.hlpc18xx-cgu.hlpc32xx-clock.hlsi,axm5516-clks.hmarvell,mmp2.hmarvell,pxa168.hmarvell,pxa1928.hmarvell,pxa910.hmaxim,max77620.hmaxim,max77686.hmaxim,max77802.hmeson8b-clkc.hmicrochip,pic32-clock.hmpc512x-clock.hmt2701-clk.hmt2712-clk.hmt6797-clk.hmt7622-clk.hmt8135-clk.hmt8173-clk.hnuvoton,npcm7xx-clock.homap4.homap5.hoxsemi,ox810se.hoxsemi,ox820.hpistachio-clk.hpxa-clock.hqcom,gcc-apq8084.hqcom,gcc-ipq4019.hqcom,gcc-ipq806x.hqcom,gcc-ipq8074.hqcom,gcc-mdm9615.hqcom,gcc-msm8660.hqcom,gcc-msm8916.hqcom,gcc-msm8960.hqcom,gcc-msm8974.hqcom,gcc-msm8994.hqcom,gcc-msm8996.hqcom,gcc-msm8998.hqcom,gcc-sdm845.hqcom,lcc-ipq806x.hqcom,lcc-mdm9615.hqcom,lcc-msm8960.hqcom,mmcc-apq8084.hqcom,mmcc-msm8960.hqcom,mmcc-msm8974.hqcom,mmcc-msm8996.hqcom,rpmcc.hqcom,rpmh.hqcom,videocc-sdm845.hr7s72100-clock.hr8a73a4-clock.hr8a7740-clock.hr8a7743-cpg-mssr.hr8a7745-cpg-mssr.hr8a77470-cpg-mssr.hr8a7778-clock.hr8a7779-clock.hr8a7790-clock.hr8a7790-cpg-mssr.hr8a7791-clock.hr8a7791-cpg-mssr.hr8a7792-clock.hr8a7792-cpg-mssr.hr8a7793-clock.hr8a7793-cpg-mssr.hr8a7794-clock.hr8a7794-cpg-mssr.hr8a7795-cpg-mssr.hr8a7796-cpg-mssr.hr8a77965-cpg-mssr.hr8a77970-cpg-mssr.hr8a77980-cpg-mssr.hr8a77990-cpg-mssr.hr8a77995-cpg-mssr.hrenesas-cpg-mssr.hrk3036-cru.hrk3066a-cru.hrk3128-cru.hrk3188-cru-common.hrk3188-cru.hrk3228-cru.hrk3288-cru.hrk3328-cru.hrk3368-cru.hrk3399-cru.hrockchip,rk808.hrv1108-cru.hs3c2410.hs3c2412.hs3c2443.hs5pv210-audss.hs5pv210.hsamsung,s2mps11.hsamsung,s3c64xx-clock.hsh73a0-clock.hsprd,sc9860-clk.hste-ab8500.hstih407-clks.hstih410-clks.hstih416-clks.hstih418-clks.hstm32fx-clock.hstm32h7-clks.hstm32mp1-clks.hstratix10-clock.hsun4i-a10-ccu.hsun4i-a10-pll2.hsun50i-a64-ccu.hsun50i-h6-ccu.hsun50i-h6-r-ccu.hsun5i-ccu.hsun6i-a31-ccu.hsun7i-a20-ccu.hsun8i-a23-a33-ccu.hsun8i-a83t-ccu.hsun8i-de2.hsun8i-h3-ccu.hsun8i-r-ccu.hsun8i-r40-ccu.hsun8i-v3s-ccu.hsun9i-a80-ccu.hsun9i-a80-de.hsun9i-a80-usb.htegra114-car.htegra124-car-common.htegra124-car.htegra186-clock.htegra194-clock.htegra20-car.htegra210-car.htegra30-car.hvf610-clock.hzx296702-clock.hzx296718-clock.hdisplaytda998x.hdmaat91.haxi-dmac.hjz4780-dma.hnbpfaxi.hsun4i-a10.hgpioaspeed-gpio.hgpio.hmeson-axg-gpio.hmeson-gxbb-gpio.hmeson-gxl-gpio.hmeson8-gpio.hmeson8b-gpio.htegra-gpio.htegra186-gpio.htegra194-gpio.huniphier-gpio.hi2ci2c.hiioadcfsl-imx25-gcq.hadi,ad5592r.hqcom,spmi-vadc.hinputgpio-keys.hinput.hlinux-event-codes.hti-drv260x.hinterrupt-controllerarm-gic.hirq-st.hirq.hmips-gic.hmvebu-icu.hledscommon.hleds-netxbig.hleds-ns2.hleds-pca9532.hleds-pca955x.hmailboxtegra186-hsp.hmediac8sectpfe.homap3-isp.htda1997x.htvp5150.hxilinx-vip.hmemorymt2701-larb-port.hmt8173-larb-port.htegra114-mc.htegra124-mc.htegra186-mc.htegra20-mc.htegra210-mc.htegra30-mc.hmfdarizona.has3722.hatmel-flexcom.hdbx500-prcmu.hmax77620.hpalmas.hqcom-rpm.hst-lpc.hstm32f4-rcc.hstm32f7-rcc.hstm32h7-rcc.hmipslantiq_rcu_gphy.hmuxmux.hnetmicrochip-lan78xx.hmscc-phy-vsc8531.hqca-ar803x.hti-dp83867.hti-dp83869.hphyphy-pistachio-usb.hphy-qcom-qusb2.hphy.hpinctrlam33xx.ham43xx.hat91.hbcm2835.hbrcm,pinctrl-stingray.hdm814x.hdra.hhisi.hkeystone.hmt6397-pinfunc.hmt65xx.hmt7623-pinfunc.hnomadik.homap.hpinctrl-tegra-xusb.hpinctrl-tegra.hqcom,pmic-gpio.hqcom,pmic-mpp.hr7s72100-pinctrl.hrockchip.hsamsung.hstm32-pinfunc.hsun4i-a10.hpowerimx7-power.hmt2701-power.hmt2712-power.hmt6797-power.hmt7622-power.hmt7623a-power.hmt8173-power.howl-s500-powergate.howl-s700-powergate.hpx30-power.hr8a7743-sysc.hr8a7745-sysc.hr8a77470-sysc.hr8a7779-sysc.hr8a7790-sysc.hr8a7791-sysc.hr8a7792-sysc.hr8a7793-sysc.hr8a7794-sysc.hr8a7795-sysc.hr8a7796-sysc.hr8a77965-sysc.hr8a77970-sysc.hr8a77980-sysc.hr8a77990-sysc.hr8a77995-sysc.hraspberrypi-power.hrk3036-power.hrk3128-power.hrk3228-power.hrk3288-power.hrk3328-power.hrk3366-power.hrk3368-power.hrk3399-power.htegra186-powergate.htegra194-powergate.hpwmpwm.hregulatormaxim,max77802.hresetaltr,rst-mgr-a10.haltr,rst-mgr-a10sr.haltr,rst-mgr-s10.haltr,rst-mgr.hamlogic,meson-axg-reset.hamlogic,meson-gxbb-reset.hamlogic,meson8b-clkc-reset.hamlogic,meson8b-reset.haxg-aoclkc.hcortina,gemini-reset.hgxbb-aoclkc.hhisi,hi6220-resets.himx7-reset.hmt2701-resets.hmt7622-reset.hmt8135-resets.hmt8173-resets.hoxsemi,ox810se.hoxsemi,ox820.hpistachio-resets.hqcom,gcc-apq8084.hqcom,gcc-ipq806x.hqcom,gcc-mdm9615.hqcom,gcc-msm8660.hqcom,gcc-msm8916.hqcom,gcc-msm8960.hqcom,gcc-msm8974.hqcom,mmcc-apq8084.hqcom,mmcc-msm8960.hqcom,mmcc-msm8974.hsnps,hsdk-reset.hstih407-resets.hstih415-resets.hstih416-resets.hstm32mp1-resets.hsun4i-a10-ccu.hsun50i-a64-ccu.hsun50i-h6-ccu.hsun50i-h6-r-ccu.hsun5i-ccu.hsun6i-a31-ccu.hsun8i-a23-a33-ccu.hsun8i-a83t-ccu.hsun8i-de2.hsun8i-h3-ccu.hsun8i-r-ccu.hsun8i-r40-ccu.hsun8i-v3s-ccu.hsun9i-a80-ccu.hsun9i-a80-de.hsun9i-a80-usb.htegra124-car.htegra186-reset.htegra194-reset.htegra210-car.hti-syscon.hsocqcom,apr.hqcom,gsbi.hrockchip,boot-mode.hzte,pm_domains.hsoundadi,adau1977.hapq8016-lpass.haudio-jack-events.hcs35l32.hcs42l42.hfsl-imx-audmux.hqcom,q6afe.hqcom,q6asm.hrt5640.hrt5651.hsamsung-i2s.htas2552.htlv320aic31xx.hspmispmi.hthermallm90.htegra124-soctherm.htegra186-bpmp-thermal.hthermal.hthermal_exynos.husbpd.hgeneratedasm-offsets.hautoconf.hbounds.hcompile.htimeconst.huapilinuxversion.hutsrelease.hkeysasymmetric-parser.hasymmetric-subtype.hasymmetric-type.hbig_key-type.hceph-type.hdns_resolver-type.hencrypted-type.hkeyring-type.hrxrpc-type.hsystem_keyring.htrusted-type.htrusted_tpm.huser-type.hkunitassert.hresource.htest-bug.htest.htry-catch.hkvmarm_arch_timer.harm_hypercalls.harm_pmu.harm_psci.harm_vgic.hiodev.hlinux8250_pci.ha.out.hacct.hacpi.hacpi_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.hnetevent.hnetfilterbr_netfilter.hipv4nf_conntrack_ipv4.hnf_defrag_ipv4.hnf_dup_ipv4.hnf_nat_masquerade.hnf_reject.hipv6nf_conntrack_icmpv6.hnf_conntrack_ipv6.hnf_defrag_ipv6.hnf_dup_ipv6.hnf_nat_masquerade.hnf_reject.hnf_conntrack.hnf_conntrack_acct.hnf_conntrack_core.hnf_conntrack_count.hnf_conntrack_ecache.hnf_conntrack_expect.hnf_conntrack_extend.hnf_conntrack_helper.hnf_conntrack_l4proto.hnf_conntrack_labels.hnf_conntrack_seqadj.hnf_conntrack_synproxy.hnf_conntrack_timeout.hnf_conntrack_timestamp.hnf_conntrack_tuple.hnf_conntrack_zones.hnf_dup_netdev.hnf_flow_table.hnf_log.hnf_nat.hnf_nat_helper.hnf_nat_redirect.hnf_queue.hnf_reject.hnf_socket.hnf_tables.hnf_tables_core.hnf_tables_ipv4.hnf_tables_ipv6.hnf_tables_offload.hnf_tproxy.hnfnetlink_log.hnft_fib.hnft_reject.hxt_rateest.hnetlabel.hnetlink.hnetnsbpf.hcan.hconntrack.hcore.hdccp.hgeneric.hhash.hieee802154_6lowpan.hipv4.hipv6.hmib.hmpls.hnetfilter.hnftables.hpacket.hsctp.hsmc.hunix.hx_tables.hxdp.hxfrm.hnetprio_cgroup.hnetrom.hnexthop.hnfcdigital.hhci.hllc.hnci.hnci_core.hnfc.hnl802154.hnsh.hp8022.hpage_pool.hphonetgprs.hpep.hphonet.hpn_dev.hpie.hping.hpkt_cls.hpkt_sched.hpptp.hprotocol.hpsample.hpsnap.hraw.hrawv6.hred.hregulatory.hrequest_sock.hrose.hroute.hrsi_91x.hrtnetlink.hsch_generic.hscm.hsctpauth.hchecksum.hcommand.hconstants.hsctp.hsm.hstream_interleave.hstream_sched.hstructs.htsnmap.hulpevent.hulpqueue.hsecure_seq.hseg6.hseg6_hmac.hseg6_local.hslhc_vj.hsmc.hsnmp.hsock.hsock_reuseport.hstp.hstrparser.hswitchdev.htc_acttc_bpf.htc_connmark.htc_csum.htc_ct.htc_ctinfo.htc_defact.htc_gact.htc_gate.htc_ife.htc_ipt.htc_mirred.htc_mpls.htc_nat.htc_pedit.htc_police.htc_sample.htc_skbedit.htc_skbmod.htc_tunnel_key.htc_vlan.htc_wrapper.htcp.htcp_states.htimewait_sock.htipc.htls.htls_toe.htransp_v6.htso.htun_proto.hudp.hudp_tunnel.hudplite.hvsock_addr.hvxlan.hwext.hwimax.hx25.hx25device.hxdp.hxdp_priv.hxdp_sock.hxdp_sock_drv.hxfrm.hxsk_buff_pool.hpcmciaciscode.hcisreg.hcistpl.hdevice_id.hds.hss.hrasras_event.hrdmaib.hib_addr.hib_cache.hib_cm.hib_hdrs.hib_mad.hib_marshall.hib_pack.hib_pma.hib_sa.hib_smi.hib_sysfs.hib_umem.hib_umem_odp.hib_verbs.hiba.hibta_vol1_c12.hiw_cm.hiw_portmap.hlag.hmr_pool.hopa_addr.hopa_port_info.hopa_smi.hopa_vnic.hrdma_cm.hrdma_cm_ib.hrdma_counter.hrdma_netlink.hrdma_vt.hrdmavt_cq.hrdmavt_mr.hrdmavt_qp.hrestrack.hrw.hsignature.htid_rdma_defs.huverbs_ioctl.huverbs_named_ioctl.huverbs_std_types.huverbs_types.hscsifcfc_encaps.hfc_fc2.hfc_fcoe.hfc_fcp.hfc_fip.hfc_ms.hfc_frame.hfcoe_sysfs.hiscsi_if.hiscsi_proto.hiser.hlibfc.hlibfcoe.hlibiscsi.hlibiscsi_tcp.hlibsas.hosd_attributes.hosd_protocol.hosd_sec.hosd_sense.hosd_types.hsas.hsas_ata.hscsi.hscsi_bsg_iscsi.hscsi_cmnd.hscsi_common.hscsi_dbg.hscsi_device.hscsi_devinfo.hscsi_dh.hscsi_driver.hscsi_eh.hscsi_host.hscsi_ioctl.hscsi_proto.hscsi_request.hscsi_tcq.hscsi_transport.hscsi_transport_fc.hscsi_transport_iscsi.hscsi_transport_sas.hscsi_transport_spi.hscsi_transport_srp.hscsicam.hsg.hsrp.hviosrp.hsocarcaux.hmcip.htimers.hat91at91sam9_ddrsdr.hat91sam9_sdramc.hatmel-secumod.hatmel-sfr.hbcm2835raspberrypi-firmware.hbrcmstbcommon.hfslbman.hqeimmap_qe.hqe.hqe_ic.hqe_tdm.hucc.hucc_fast.hucc_slow.hqman.himxcpuidle.hrevision.htimer.hmediateksmi.hnpscommon.hmtm.hqcomcmd-db.hrockchiprockchip_sip.hsa1100pwer.htegraahb.hbpmp-abi.hbpmp.hcommon.hcpuidle.hemc.hflowctrl.hfuse.hivc.hmc.hpm.hpmc.hsoundac97codec.hcompat.hcontroller.hregs.hac97_codec.haci.hacp63_chip_offset_byte.had1816a.had1843.hadau1373.haess.hak4113.hak4114.hak4117.hak4531_codec.hak4641.hak4xxx-adda.halc5623.hasequencer.hasound.hasoundef.hcompress_driver.hcontrol.hcore.hcs35l33.hcs35l34.hcs35l35.hcs35l36.hcs35l41.hcs4231-regs.hcs4271.hcs42l42.hcs42l52.hcs42l56.hcs42l73.hcs8403.hcs8427.hda7213.hda7218.hda7219-aad.hda7219.hda9055.hdesignware_i2s.hdmaengine_pcm.hemu10k1.hemu10k1_synth.hemu8000.hemu8000_reg.hemux_legacy.hemux_synth.hes1688.hgraph_card.hgus.hhda-mlink.hhda_chmap.hhda_codec.hhda_component.hhda_hwdep.hhda_i915.hhda_register.hhda_regmap.hhda_verbs.hhdaudio.hhdaudio_ext.hhdmi-codec.hhwdep.hi2c.hinfo.hinitval.hintel-dsp-config.hintel-nhlt.hjack.hl3.hmax9768.hmax98088.hmax98090.hmax98095.hmemalloc.hminors.hmixer_oss.hmpu401.homap-hdmi-audio.hopl3.hopl4.hpcm-indirect.hpcm.hpcm_drm_eld.hpcm_iec958.hpcm_oss.hpcm_params.hpt2258.hpxa2xx-lib.hrawmidi.hrt1015.hrt286.hrt298.hrt5514.hrt5659.hrt5660.hrt5663.hrt5665.hrt5668.hrt5682.hrt5682s.hs3c24xx_uda134x.hsb.hsb16_csp.hsdw.hseq_device.hseq_kernel.hseq_midi_emul.hseq_midi_event.hseq_oss.hseq_oss_legacy.hseq_virmidi.hsh_dac_audio.hsh_fsi.hsimple_card.hsimple_card_utils.hsnd_wavefront.hsoc-acpi-intel-match.hsoc-acpi.hsoc-card.hsoc-component.hsoc-dai.hsoc-dapm.hsoc-dpcm.hsoc-jack.hsoc-link.hsoc-topology.hsoc.hsofsof.hchannel_map.hcontrol.hdai-amd.hdai-imx.hdai-intel.hdai-mediatek.hdai.hdebug.hext_manifest.hext_manifest4.hheader.hinfo.hipc4header.hpm.hstream.htopology.htrace.hxtensa.hsoundfont.hspear_dma.hspear_spdif.hsta32x.hsta350.htas2552-plat.htas5086.htea6330t.htimer.htlv.htlv320aic32x4.htlv320dac33-plat.htpa6130a2-plat.huda134x.huda1380.hutil_mem.hvx_core.hwavefront.hwm0010.hwm1250-ev1.hwm2000.hwm2200.hwm5100.hwm8903.hwm8904.hwm8955.hwm8960.hwm8962.hwm8993.hwm8996.hwm9081.hwm9090.hwss.htargetiscsiiscsi_target_core.hiscsi_target_stat.hiscsi_transport.htarget_core_backend.htarget_core_base.htarget_core_fabric.htracebpf_probe.hdefine_trace.hevents9p.hafs.halarmtimer.hasoc.havc.hbcache.hblock.hbpf_test_run.hbridge.hbtrfs.hcachefiles.hcgroup.hclk.hcma.hcompaction.hcontext_tracking.hcpuhp.hdamon.hdevlink.hdma_fence.hext4.hf2fs.hfib.hfib6.hfilelock.hfilemap.hfs.hfs_dax.hfscache.hfsi.hfsi_master_gpio.hgpio.hhost1x.hhuge_memory.hi2c.hib_mad.hib_umad.hinitcall.hintel-sst.hintel_ifs.hintel_iommu.hintel_ish.hio_uring.hiocost.hiommu.hipi.hirq.hirq_matrix.hiscsi.hjbd2.hkmem.hkvm.hkyber.hlibata.hlock.hmce.hmdio.hmigrate.hmlxsw.hmmc.hmmflags.hmodule.hmptcp.hnapi.hneigh.hnet.hnet_probe_common.hnetlink.hnfs.hnilfs2.hnmi.hobjagg.hoom.hosnoise.hpage_isolation.hpage_pool.hpage_ref.hpagemap.hpercpu.hpower.hpower_cpu_migrate.hpreemptirq.hprintk.hpwc.hqdisc.hqla.hqrtr.hrandom.hrcu.hrdma.hrdma_core.hregulator.hrpcgss.hrpcrdma.hrpm.hrseq.hrtc.hrxrpc.hsched.hscsi.hsctp.hsignal.hsiox.hskb.hsmbus.hsock.hsof.hsof_intel.hspi.hspmi.hsunrpc.hsunrpc_base.hsunvnet.hswiotlb.hsyscalls.htarget.htask.htcp.hthermal.hthermal_power_allocator.hthp.htimer.htlb.hudp.hufs.hv4l2.hvb2.hvmscan.hvsock_virtio_transport_common.hwbt.hworkqueue.hwriteback.hxdp.hxen.hperf.hsyscall.htrace_events.huapiasm-genericKbuild.asmauxvec.hbitsperlong.hbpf_perf_event.herrno-base.herrno.hfcntl.hhugetlb_encode.hint-l64.hint-ll64.hioctl.hioctls.hipcbuf.hkvm_para.hmman-common.hmman.hmsgbuf.hparam.hpoll.hposix_types.hresource.hsembuf.hsetup.hshmbuf.hshmparam.hsiginfo.hsignal-defs.hsignal.hsocket.hsockios.hstat.hstatfs.hswab.htermbits.htermios.htypes.hucontext.hunistd.hdrmamdgpu_drm.harmada_drm.hdrm.hdrm_fourcc.hdrm_mode.hdrm_sarea.hetnaviv_drm.hexynos_drm.hhabanalabs_accel.hi915_drm.hivpu_accel.hlima_drm.hmsm_drm.hnouveau_drm.homap_drm.hpanfrost_drm.hqxl_drm.hradeon_drm.htegra_drm.hv3d_drm.hvc4_drm.hvgem_drm.hvirtgpu_drm.hvmwgfx_drm.hlinuxKbuilda.out.hacct.hadb.hadfs_fs.haffs_hardblocks.hagpgart.haio_abi.ham437x-vpfe.handroidbinder.hapm_bios.harcfb.harm_sdei.haspeed-lpc-ctrl.hatalk.hatm.hatm_eni.hatm_he.hatm_idt77105.hatm_nicstar.hatm_tcp.hatm_zatm.hatmapi.hatmarp.hatmbr2684.hatmclip.hatmdev.hatmioc.hatmlec.hatmmpc.hatmppp.hatmsap.hatmsvc.haudit.hauto_dev-ioctl.hauto_fs.hauto_fs4.hauxvec.hax25.hb1lli.hbatadv_packet.hbatman_adv.hbaycom.hbcache.hbcm933xx_hcs.hbfs_fs.hbinfmts.hblkpg.hblktrace_api.hblkzoned.hbpf.hbpf_common.hbpf_perf_event.hbpfilter.hbpqether.hbsg.hbt-bmc.hbtf.hbtrfs.hbtrfs_tree.hbyteorderbig_endian.hlittle_endian.hcaifcaif_socket.hif_caif.hcancan.hbcm.herror.hgw.hnetlink.hraw.hvxcan.hcapability.hcapi.hcciss_defs.hcciss_ioctl.hcdrom.hcec-funcs.hcec.hcfm_bridge.hcgroupstats.hchio.hcifscifs_mount.hcifs_netlink.hclose_range.hcm4000_cs.hcn_proc.hcoda.hcoda_psdev.hcoff.hconnector.hconst.hcoresight-stm.hcramfs_fs.hcryptouser.hcuda.hcyclades.hcycx_cfm.hdcbnl.hdccp.hdevlink.hdlm.hdlm_device.hdlm_netlink.hdlm_plock.hdlmconstants.hdm-ioctl.hdm-log-userspace.hdma-buf.hdn.hdqblk_xfs.hdvbaudio.hca.hdmx.hfrontend.hnet.hosd.hversion.hvideo.hedd.hefs_fs_sb.helf-em.helf-fdpic.helf.helfcore.herrno.herrqueue.herspan.hethtool.hethtool_netlink.heventpoll.hfadvise.hfalloc.hfanotify.hfb.hfcntl.hfd.hfdreg.hfib_rules.hfiemap.hfilter.hfirewire-cdev.hfirewire-constants.hflat.hfou.hfpga-dfl.hfs.hfsl_hypervisor.hfsmap.hfuse.hfutex.hgameport.hgen_stats.hgenetlink.hgenwqegenwqe_card.hgfs2_ondisk.hgigaset_dev.hgpio.hgsmmux.hgtp.hhash_info.hhdlchdlc.hioctl.hhdlcdrv.hhdreg.hhid.hhiddev.hhidraw.hhpet.hhsics-protocol.hhsi_char.hhsr_netlink.hhw_breakpoint.hhyperv.hhysdn_if.hi2c-dev.hi2c.hi2o-dev.hi8k.hicmp.hicmpv6.hidxd.hif.hif_addr.hif_addrlabel.hif_alg.hif_arcnet.hif_arp.hif_bonding.hif_bridge.hif_cablemodem.hif_eql.hif_ether.hif_fc.hif_fddi.hif_frad.hif_hippi.hif_infiniband.hif_link.hif_ltalk.hif_macsec.hif_packet.hif_phonet.hif_plip.hif_ppp.hif_pppol2tp.hif_pppox.hif_slip.hif_team.hif_tun.hif_tunnel.hif_vlan.hif_x25.hif_xdp.hife.higmp.hiioevents.htypes.hila.hin.hin6.hin_route.hinet_diag.hinotify.hinput-event-codes.hinput.hio_uring.hioctl.hiommu.hip.hip6_tunnel.hip_vs.hipc.hipmi.hipmi_bmc.hipmi_msgdefs.hipmi_ssif_bmc.hipsec.hipv6.hipv6_route.hipx.hirqnr.hisdnisdn.hcapicmd.hisdn_divertif.hisdn_ppp.hisdnif.hiso_fs.hisst_if.hivtv.hivtvfb.hjffs2.hjoystick.hkcm.hkcmp.hkcov.hkd.hkdev_t.hkernel-page-flags.hkernel.hkernelcapi.hkexec.hkeyboard.hkeyctl.hkfd_ioctl.hkfd_sysfs.hkvm.hkvm_para.hl2tp.hlibc-compat.hlightnvm.hlimits.hlirc.hllc.hloop.hlp.hlwtunnel.hmagic.hmajor.hmap_to_7segment.hmatroxfb.hmax2175.hmdio.hmedia-bus-format.hmedia.hmei.hmembarrier.hmemfd.hmempolicy.hmeye.hmic_common.hmic_ioctl.hmii.hminix_fs.hmman.hmmcioctl.hmmtimer.hmodule.hmount.hmpls.hmpls_iptunnel.hmptcp.hmqueue.hmroute.hmroute6.hmrp_bridge.hmsdos_fs.hmsg.hmtio.hn_r3964.hnbd-netlink.hnbd.hncsi.hndctl.hneighbour.hnet.hnet_dropmon.hnet_namespace.hnet_tstamp.hnetconf.hnetdevice.hnetfilternetfilter.hipsetip_set.hip_set_bitmap.hip_set_hash.hip_set_list.hnf_conntrack_common.hnf_conntrack_ftp.hnf_conntrack_sctp.hnf_conntrack_tcp.hnf_conntrack_tuple_common.hnf_log.hnf_nat.hnf_osf.hnf_tables.hnf_tables_compat.hnfnetlink.hnfnetlink_acct.hnfnetlink_compat.hnfnetlink_conntrack.hnfnetlink_cthelper.hnfnetlink_cttimeout.hnfnetlink_log.hnfnetlink_queue.hx_tables.hxt_AUDIT.hxt_CHECKSUM.hxt_CLASSIFY.hxt_CONNMARK.hxt_CONNSECMARK.hxt_CT.hxt_DSCP.hxt_HMARK.hxt_IDLETIMER.hxt_LED.hxt_LOG.hxt_MARK.hxt_NFLOG.hxt_NFQUEUE.hxt_RATEEST.hxt_SECMARK.hxt_SYNPROXY.hxt_TCPMSS.hxt_TCPOPTSTRIP.hxt_TEE.hxt_TPROXY.hxt_addrtype.hxt_bpf.hxt_cgroup.hxt_cluster.hxt_comment.hxt_connbytes.hxt_connlabel.hxt_connlimit.hxt_connmark.hxt_conntrack.hxt_cpu.hxt_dccp.hxt_devgroup.hxt_dscp.hxt_ecn.hxt_esp.hxt_hashlimit.hxt_helper.hxt_ipcomp.hxt_iprange.hxt_ipvs.hxt_l2tp.hxt_length.hxt_limit.hxt_mac.hxt_mark.hxt_multiport.hxt_nfacct.hxt_osf.hxt_owner.hxt_physdev.hxt_pkttype.hxt_policy.hxt_quota.hxt_rateest.hxt_realm.hxt_recent.hxt_rpfilter.hxt_sctp.hxt_set.hxt_socket.hxt_state.hxt_statistic.hxt_string.hxt_tcpmss.hxt_tcpudp.hxt_time.hxt_u32.hnetfilter_arpnetfilter_arp.harp_tables.harpt_mangle.hnetfilter_bridgenetfilter_bridge.hebt_802_3.hebt_among.hebt_arp.hebt_arpreply.hebt_ip.hebt_ip6.hebt_limit.hebt_log.hebt_mark_m.hebt_mark_t.hebt_nat.hebt_nflog.hebt_pkttype.hebt_redirect.hebt_stp.hebt_vlan.hebtables.hnetfilter_decnet.hnetfilter_ipv4netfilter_ipv4.hip_tables.hipt_CLUSTERIP.hipt_ECN.hipt_LOG.hipt_REJECT.hipt_TTL.hipt_ah.hipt_ecn.hipt_ttl.hnetfilter_ipv6netfilter_ipv6.hip6_tables.hip6t_HL.hip6t_LOG.hip6t_NPT.hip6t_REJECT.hip6t_ah.hip6t_frag.hip6t_hl.hip6t_ipv6header.hip6t_mh.hip6t_opts.hip6t_rt.hip6t_srh.hnetlink.hnetlink_diag.hnetrom.hnexthop.hnfc.hnfs.hnfs2.hnfs3.hnfs4.hnfs4_mount.hnfs_fs.hnfs_idmap.hnfs_mount.hnfsacl.hnfsdcld.hdebug.hexport.hstats.hnilfs2_api.hnilfs2_ondisk.hnitro_enclaves.hnl80211.hnsfs.hnubus.hnvme_ioctl.hnvram.homap3isp.homapfb.hoom.hopenat2.hopenvswitch.hpacket_diag.hparam.hparport.hpatchkey.hpci.hpci_regs.hpcitest.hperf_event.hpersonality.hpfkeyv2.hpfrut.hpg.hphantom.hphonet.hpkt_cls.hpkt_sched.hpktcdvd.hpmu.hpoll.hposix_acl.hposix_acl_xattr.hposix_types.hppdev.hppp-comp.hppp-ioctl.hppp_defs.hpps.hpr.hprctl.hpsample.hpsci.hpsp-sev.hptp_clock.hptrace.hqemu_fw_cfg.hqnx4_fs.hqnxtypes.hqrtr.hquota.hradeonfb.hraidmd_p.hmd_u.hrandom.hraw.hrds.hreboot.hreiserfs_fs.hreiserfs_xattr.hresource.hrfkill.hrio_cm_cdev.hrio_mport_cdev.hromfs_fs.hrose.hroute.hrpmsg.hrseq.hrtc.hrtnetlink.hrxrpc.hscc.hschedsched.htypes.hscif_ioctl.hscreen_info.hsctp.hsdla.hseccomp.hsecurebits.hsed-opal.hseg6.hseg6_genl.hseg6_hmac.hseg6_iptunnel.hseg6_local.hselinux_netlink.hsem.hserial.hserial_core.hserial_reg.hserio.hsev-guest.hshm.hsignal.hsignalfd.hsmc.hsmc_diag.hsmiapp.hsnmp.hsock_diag.hsocket.hsockios.hsonet.hsonypi.hsound.hsoundcard.hspispidev.hstat.hstddef.hstm.hstring.hsunrpcdebug.hsuspend_ioctls.hswab.hswitchtec_ioctl.hsync_file.hsynclink.hsysctl.hsysinfo.htarget_core_user.htaskstats.htc_acttc_bpf.htc_connmark.htc_csum.htc_ct.htc_ctinfo.htc_defact.htc_gact.htc_gate.htc_ife.htc_ipt.htc_mirred.htc_mpls.htc_nat.htc_pedit.htc_sample.htc_skbedit.htc_skbmod.htc_tunnel_key.htc_vlan.htc_ematchtc_em_cmp.htc_em_ipt.htc_em_meta.htc_em_nbyte.htc_em_text.htcp.htcp_metrics.htdx-guest.htee.htermios.hthermal.htime.htime_types.htimerfd.htimes.htimex.htiocl.htipc.htipc_config.htipc_netlink.htipc_sockets_diag.htls.htoshiba.htty.htty_flags.htypes.hudf_fs_i.hudp.huhid.huinput.huio.huleds.hultrasound.hun.hunistd.hunix_diag.husbaudio.hcdc-wdm.hcdc.hch11.hch9.hcharger.hfunctionfs.hg_printer.hg_uvc.hgadgetfs.hmidi.htmc.hvideo.husbdevice_fs.husbip.huserfaultfd.huserio.hutime.hutsname.huuid.huvcvideo.hv4l2-common.hv4l2-controls.hv4l2-dv-timings.hv4l2-mediabus.hv4l2-subdev.hvbox_err.hvbox_vmmdev_types.hvboxguest.hvdpa.hveth.hvfio.hvfio_ccw.hvfio_zdev.hvhost.hvhost_types.hvideodev2.hvirtio_9p.hvirtio_balloon.hvirtio_blk.hvirtio_bt.hvirtio_config.hvirtio_console.hvirtio_crypto.hvirtio_fs.hvirtio_gpu.hvirtio_ids.hvirtio_input.hvirtio_iommu.hvirtio_mem.hvirtio_mmio.hvirtio_net.hvirtio_pci.hvirtio_ring.hvirtio_rng.hvirtio_scsi.hvirtio_snd.hvirtio_types.hvirtio_vsock.hvm_sockets.hvm_sockets_diag.hvmcore.hvsockmon.hvt.hvtpm_proxy.hwait.hwanrouter.hwatchdog.hwimaxwimax.hi2400m.hwireless.hwmi.hx25.hxattr.hxdp_diag.hxfrm.hxilinx-v4l2-controls.hzorro.hzorro_ids.hmisccxl.hocxl.hpvpanic.hmtdinftl-user.hmtd-abi.hmtd-user.hnftl-user.hubi-user.hrdmabnxt_re-abi.hcxgb4-abi.hefa-abi.hhfihfi1_ioctl.hhfi1_user.hhns-abi.hib_user_ioctl_cmds.hib_user_ioctl_verbs.hib_user_mad.hib_user_sa.hib_user_verbs.hirdma-abi.hmana-abi.hmlx4-abi.hmlx5-abi.hmlx5_user_ioctl_cmds.hmlx5_user_ioctl_verbs.hmthca-abi.hocrdma-abi.hqedr-abi.hrdma_netlink.hrdma_user_cm.hrdma_user_ioctl.hrdma_user_ioctl_cmds.hrdma_user_rxe.hrvt-abi.hsiw-abi.hvmw_pvrdma-abi.hscsicxlflash_ioctl.hfcfc_els.hfc_fs.hfc_gs.hfc_ns.hscsi_bsg_fc.hscsi_bsg_mpi3mr.hscsi_netlink.hscsi_netlink_fc.hsoundasequencer.hasoc.hasound.hasound_fm.hcompress_offload.hcompress_params.hemu10k1.hfirewire.hhdsp.hhdspm.hintelavstokens.hsb16_csp.hsfnt_info.hskl-tplg-interface.hsnd_sst_tokens.hsofabi.hfw.hheader.htokens.htlv.husb_stream.hvideoedid.hsisfb.huvesafb.hxenevtchn.hgntalloc.hgntdev.hprivcmd.hvdsobits.hclocksource.hconst.hdatapage.hhelpers.hjiffies.hktime.hlimits.hmath64.hprocessor.htime.htime32.htime64.hvsyscall.hvideoatmel_lcdc.haty128.hbroadsheetfb.hcirrus.hcvisionppc.hda8xx-fb.hdisplay_timing.hedid.hgbe.hhecubafb.hili9320.himx-ipu-image-convert.himx-ipu-v3.hkyro.hmach64.hmaxinefb.hmbxfb.hmetronomefb.hmipi_display.hmmp_disp.hneomagic.hnewport.hnomodeset.hof_display_timing.hof_videomode.homap-panel-data.homapfb_dss.homapvrfb.hpermedia2.hplatform_lcd.hpm3fb.hpmag-ba-fb.hpmagb-b-fb.hpxa168fb.hradeon.hs1d13xxxfb.hsa1100fb.hsamsung_fimd.hsh_mobile_lcdc.hsisfb.hsstfb.htdfx.htgafb.htrident.hudlfb.huvesafb.hvga.hvideomode.hw100fb.hxenacpi.harmhypercall.hhypervisor.hinterface.hpage-coherent.hpage.hballoon.hevents.hfeatures.hgrant_table.hhvc-console.hhvm.hinterfacecallback.helfnote.hevent_channel.hfeatures.hgrant_table.hhvmdm_op.hhvm_op.hhvm_vcpu.hparams.hstart_info.hio9pfs.hblkif.hconsole.hdisplif.hfbif.hkbdif.hnetif.hpciif.hprotocols.hpvcalls.hring.hsndif.htpmif.hvscsiif.hxenbus.hxs_wire.hmemory.hnmi.hphysdev.hplatform.hsched.hvcpu.hversion.hxen-mca.hxen.hxenpmu.hpage.hplatform_pci.hswiotlb-xen.htmem.hxen-front-pgdir-shbuf.hxen-ops.hxen.hxenbus.hxenbus_dev.hinitKconfigMakefileipcMakefilekernelKconfig.freezerKconfig.hzKconfig.locksKconfig.preemptMakefilebpfKconfigMakefilepreloadKconfigMakefileiteratorsMakefilecgroupMakefiledebugMakefilekdbMakefiledmaKconfigMakefileeventsMakefilegcovKconfigMakefileirqKconfigMakefilekcsanMakefilelivepatchKconfigMakefilelockingMakefilepowerKconfigMakefileprintkMakefilercuKconfigKconfig.debugMakefileschedMakefiletimeKconfigMakefiletraceKconfigMakefilelib842MakefileKconfigKconfig.debugKconfig.kasanKconfig.kcsanKconfig.kgdbKconfig.ubsanMakefilecryptoMakefiledimMakefilefontsKconfigMakefilekunitKconfigMakefilelivepatchMakefilelz4MakefilelzoMakefilemathKconfigMakefilempiMakefilepldmfwMakefileraid6MakefiletestMakefilereed_solomonMakefilevdsoKconfigMakefilexzKconfigMakefilezlib_deflateMakefilezlib_dfltccMakefilezlib_inflateMakefilezstdMakefilemmKconfigKconfig.debugMakefiledamonKconfigMakefilekasanMakefilenet6lowpanKconfigMakefile802KconfigMakefile8021qKconfigMakefile9pKconfigMakefileKconfigMakefileappletalkMakefileatmKconfigMakefileax25KconfigMakefilebatman-advKconfigMakefilebluetoothKconfigMakefilebnepKconfigMakefilecmtpKconfigMakefilehidpKconfigMakefilerfcommKconfigMakefilebpfMakefilebpfilterKconfigMakefilebridgeKconfigMakefilenetfilterKconfigMakefilecaifKconfigMakefilecanKconfigMakefilecephKconfigMakefilecoreMakefiledcbKconfigMakefiledccpKconfigMakefileccidsKconfigdecnetKconfigMakefilenetfilterKconfigMakefiledns_resolverKconfigMakefiledsaKconfigMakefileethernetMakefileethtoolMakefilehsrKconfigMakefileieee8021546lowpanKconfigMakefileKconfigMakefileifeKconfigMakefileipv4KconfigMakefilebpfilterMakefilenetfilterKconfigMakefileipv6KconfigMakefileilaMakefilenetfilterKconfigMakefileiucvKconfigMakefilekcmKconfigMakefilekeyMakefilel2tpKconfigMakefilel3mdevKconfigMakefilelapbKconfigMakefilellcKconfigMakefilemac80211KconfigMakefilemac802154KconfigMakefilemplsKconfigMakefilemptcpKconfigMakefilencsiKconfigMakefilenetfilterKconfigMakefileipsetKconfigMakefileipvsKconfigMakefilenetlabelKconfigMakefilenetlinkKconfigMakefilenetromMakefilenfcKconfigMakefilehciKconfigMakefilenciKconfigMakefilenshKconfigMakefileopenvswitchKconfigMakefilepacketKconfigMakefilephonetKconfigMakefilepsampleKconfigMakefileqrtrKconfigMakefilerdsKconfigMakefilerfkillKconfigMakefileroseMakefilerxrpcKconfigMakefileschedKconfigMakefilesctpKconfigMakefilesmcKconfigMakefilestrparserKconfigMakefilesunrpcKconfigMakefileauth_gssMakefilexprtrdmaMakefileswitchdevKconfigMakefiletipcKconfigMakefiletlsKconfigMakefileunixKconfigMakefilevmw_vsockKconfigMakefilewimaxKconfigMakefilewirelessKconfigMakefilex25KconfigMakefilexdpKconfigMakefilexfrmKconfigMakefilesamplesKconfigMakefileauxdisplayMakefilebpfMakefileMakefile.targetconfigfsMakefileconnectorMakefilehidrawMakefilehw_breakpointMakefilekdbMakefilekfifoMakefilekobjectMakefilekprobesMakefilelivepatchMakefilemeiMakefilemicmpssdMakefilenitro_enclavesMakefileqmiMakefilerpmsgMakefileseccompMakefiletimersMakefiletrace_eventsMakefiletrace_printkMakefileuhidMakefilev4lMakefilevfio-mdevMakefilevfsMakefilewatchdogMakefilescriptsKbuild.includeKconfig.includeLindentMakefileMakefile.asm-genericMakefile.buildMakefile.cleanMakefile.dtbinstMakefile.extrawarnMakefile.gcc-pluginsMakefile.headersinstMakefile.hostMakefile.kasanMakefile.kcovMakefile.kcsanMakefile.libMakefile.modbuiltinMakefile.modinstMakefile.modpostMakefile.modsignMakefile.ubsanadjust_autoksyms.shasn1_compilerasn1_compiler.cbasicMakefilefixdepfixdep.cmodules.orderbin2cbin2c.cbloat-o-meterbootgraph.plbpf_doc.pycc-can-link.shcheck_00index.shcheck_extable.shcheckincludes.plcheckkconfigsymbols.pycheckpatch.plcheckstack.plchecksyscalls.shcheckversion.plclang-toolsgen_compile_commands.pyrun-clang-tools.pyclang-version.shcleanfilecleanpatchcoccicheckcoccinelleapiallocalloc_cast.coccipool_zalloc-simple.coccizalloc-simple.coccicheck_bq27xxx_data.coccid_find_alias.coccidebugfsdebugfs_simple_attr.coccidrm-get-put.coccierr_cast.coccikstrdup.coccimemdup.coccimemdup_user.cocciplatform_no_drv_owner.coccipm_runtime.cocciptr_ret.cocciresource_size.coccisimple_open.coccivma_pages.coccifreeclk_put.coccidevm_free.cocciifnullfree.cocciiounmap.coccikfree.coccikfreeaddr.coccipci_free_consistent.cocciiteratorsdevice_node_continue.coccifen.cocciitnull.coccilist_entry_update.cocciuse_after_iter.coccilockscall_kern.coccidouble_lock.cocciflags.coccimini_lock.coccimiscarray_size.coccibadty.cocciboolconv.cocciboolinit.cocciboolreturn.coccibugon.coccicond_no_effect.coccicstptr.coccidoubleinit.cocciifaddr.cocciifcol.cocciirqf_oneshot.coccinewline_in_nl_msg.coccinoderef.cocciof_table.cocciorplus.coccireturnvar.coccisemicolon.cocciwarn.coccinullbadzero.coccideref_null.coccieno.coccikmerr.coccitestsdoublebitand.coccidoubletest.cocciodd_ptr_err.cocciunsigned_lesser_than_zero.cocciconfigconmakehashconmakehash.cconst_structs.checkpatchdecode_stacktrace.shdecodecodedepmod.shdiffconfigdocumentation-file-ref-checkdtcMakefileMakefile.dtcchecks.cdata.cdt_to_configdtcdtc-lexer.ldtc-lexer.lex.cdtc-parser.tab.cdtc-parser.tab.hdtc-parser.ydtc.cdtc.hdtx_difffdtdump.cfdtget.cfdtput.cflattree.cfstree.cinclude-prefixesarcarmarm64c6xdt-bindingsh8300microblazemipsnios2openriscpowerpcshxtensalibfdtMakefile.libfdtfdt.cfdt.hfdt_addresses.cfdt_empty_tree.cfdt_overlay.cfdt_ro.cfdt_rw.cfdt_strerror.cfdt_sw.cfdt_wip.clibfdt.hlibfdt_env.hlibfdt_internal.hlivetree.cmodules.ordersrcpos.csrcpos.htreesource.cupdate-dtc-source.shutil.cutil.hversion_gen.hyamltree.cexport_report.plextract-certextract-cert.cextract-ikconfigextract-module-sig.plextract-sys-certs.plextract-vmlinuxextract_xc3028.plfaddr2linefile-size.shfind-unused-docs.shgcc-goto.shgcc-ldgcc-plugin.shgcc-pluginsMakefilecyc_complexity_plugin.cgcc-common.hgcc-generate-gimple-pass.hgcc-generate-ipa-pass.hgcc-generate-rtl-pass.hgcc-generate-simple_ipa-pass.hgen-random-seed.shlatent_entropy_plugin.crandomize_layout_plugin.csancov_plugin.cstructleak_plugin.cgcc-version.shgcc-x86_32-has-stack-protector.shgcc-x86_64-has-stack-protector.shgdbMakefilelinuxMakefile__init__.pyconstants.py.incpus.pydmesg.pylists.pymodules.pyproc.pysymbols.pytasks.pyutils.pyvmlinux-gdb.pygen_initramfs_list.shgenksymsMakefilegenksymsgenksyms.cgenksyms.hkeywords.clex.llex.lex.cmodules.orderparse.tab.cparse.tab.hparse.yget_dvb_firmwareget_maintainer.plgfp-translateheaderdep.plheaders.shheaders_check.plheaders_install.shinsert-sys-certinsert-sys-cert.ckallsymskallsyms.ckconfigMakefileconfconf.cconfdata.cexpr.cexpr.hgconf-cfg.shgconf.cgconf.gladeimages.ckconf_id.clist.hlkc.hlkc_proto.hlxdialogBIG.FAT.WARNINGchecklist.cdialog.hinputbox.cmenubox.ctextbox.cutil.cyesno.cmconf-cfg.shmconf.cmenu.cmerge_config.shnconf-cfg.shnconf.cnconf.gui.cnconf.hpreprocess.cqconf-cfg.shqconf.ccqconf.hstreamline_config.plsymbol.ctestsauto_submenuKconfig__init__.pyexpected_stdoutchoiceKconfig__init__.pyalldef_expected_configallmod_expected_configallno_expected_configallyes_expected_configoldask0_expected_stdoutoldask1_configoldask1_expected_stdoutchoice_value_with_m_depKconfig__init__.pyconfigexpected_configexpected_stdoutconftest.pyerr_recursive_depKconfig__init__.pyexpected_stderrerr_recursive_incKconfigKconfig.inc1Kconfig.inc2Kconfig.inc3__init__.pyexpected_stderrinter_choiceKconfig__init__.pydefconfigexpected_confignew_choice_with_depKconfig__init__.pyconfigexpected_stdoutno_write_if_dep_unmetKconfig__init__.pyconfigexpected_configpreprocessbuiltin_funcKconfig__init__.pyexpected_stderrexpected_stdoutcircular_expansionKconfig__init__.pyexpected_stderrescapeKconfig__init__.pyexpected_stderrvariableKconfig__init__.pyexpected_stderrpytest.inirand_nested_choiceKconfig__init__.pyexpected_stdout0expected_stdout1expected_stdout2util.czconf.lzconf.lex.czconf.tab.czconf.ykernel-docksymoopsREADMEld-version.shleaking_addresses.pllink-vmlinux.shmakelstmarkup_oops.plmkcompile_hmkmakefilemksysmapmkuboot.shmodMakefiledevicetable-offsets.cdevicetable-offsets.c.000i.ipa-clonesdevicetable-offsets.hdevicetable-offsets.selfconfig.hempty.cempty.c.000i.ipa-clonesfile2alias.cmk_elfconfigmk_elfconfig.cmodpostmodpost.cmodpost.hmodules.ordersumversion.cmodule-common.ldsmodules.ordernamespace.plobjdiffpackageMakefilebuilddebbuildtarmkdebianmkspecsnapcraft.templateparse-maintainers.plpatch-kernelpnmtologopnmtologo.cprofile2linkerlist.plprune-kernelrecordmcount.crecordmcount.hrecordmcount.plselinuxMakefileREADMEgenheadersMakefilegenheadersgenheaders.cmodules.orderinstall_policy.shmdpMakefiledbus_contextsmdpmdp.cmodules.ordermodules.ordersetlocalversionshow_deltasign-filesign-file.csortextablesortextable.csortextable.hspelling.txtsphinx-pre-installsplit-man.plstackdeltastackusagesubarch.includetags.shtest_fortify.shunifdefunifdef.cver_linuxxen-hypercalls.shxz_wrap.shsecurityKconfigKconfig.hardeningMakefileapparmorKconfigMakefilebpfMakefileintegrityKconfigMakefileevmKconfigMakefileimaKconfigMakefilekeysKconfigMakefileencrypted-keysMakefiletrusted-keysMakefileloadpinKconfigMakefileselinuxKconfigMakefileincludeclassmap.hinitial_sid_to_string.hsmackKconfigMakefiletomoyoKconfigMakefileyamaKconfigMakefilesoundKconfigMakefileac97KconfigMakefileaoaKconfigMakefilecodecsKconfigMakefilecoreMakefilefabricsKconfigMakefilesoundbusKconfigMakefilei2sbusMakefilearmKconfigMakefileatmelKconfigMakefilecoreKconfigMakefileossMakefileseqKconfigMakefileossMakefiledriversKconfigMakefilempu401Makefileopl3Makefileopl4MakefilepcspMakefilevxMakefilefirewireKconfigMakefilebebobMakefilediceMakefiledigi00xMakefilefirefaceMakefilefireworksMakefilemotuMakefileoxfwMakefiletascamMakefilehdaKconfigMakefileextMakefilei2cMakefileotherMakefileisaKconfigMakefilead1816aMakefilead1848Makefilecs423xMakefilees1688MakefilegalaxyMakefilegusMakefilemsndMakefileopti9xxMakefilesbMakefilewavefrontMakefilewssMakefilemipsKconfigMakefileossdmasoundKconfigMakefilepariscKconfigMakefilepciKconfigMakefileac97Makefileali5451MakefileasihpiMakefileau88x0Makefileaw2Makefileca0106Makefilecs46xxMakefilecs5535audioMakefilectxfiMakefileechoaudioMakefileemu10k1MakefilehdaKconfigMakefileice1712Makefilekorg1212MakefilelolaMakefilelx6464esMakefilemixartMakefilenm256MakefileoxygenMakefilepcxhrMakefileriptideMakefilerme9652MakefiletridentMakefilevx222MakefileymfpciMakefilepcmciaKconfigMakefilepdaudiocfMakefilevxMakefileppcKconfigMakefileshKconfigMakefilesocKconfigMakefileadiKconfigMakefileamdKconfigMakefileacpKconfigMakefilepsMakefileravenMakefilerenoirMakefilerplMakefilevangoghMakefileycMakefileatmelKconfigMakefileau1xKconfigMakefilebcmKconfigMakefilecirrusKconfigMakefilecodecsKconfigMakefiledwcKconfigMakefilefslKconfigMakefilegenericKconfigMakefilehisiliconKconfigMakefileimgKconfigMakefileintelKconfigMakefileatomMakefilesstMakefileavsMakefileboardsKconfigMakefileboardsKconfigMakefilecatptMakefilecommonMakefilekeembayMakefileskylakeMakefilejz4740KconfigMakefilekirkwoodKconfigMakefilemediatekKconfigMakefilecommonMakefilemt2701Makefilemt6797Makefilemt8173Makefilemt8183MakefilemesonKconfigMakefilemxsKconfigMakefilepxaKconfigMakefileqcomKconfigMakefileqdsp6MakefilerockchipKconfigMakefilesamsungKconfigMakefileshKconfigMakefilercarMakefilesofKconfigMakefileamdKconfigMakefileimxKconfigMakefileintelKconfigMakefilemediatekKconfigMakefilemt8186Makefilemt8195MakefilextensaKconfigMakefilespearKconfigMakefilesprdKconfigMakefilestiKconfigMakefilestmKconfigMakefilesunxiKconfigMakefiletegraKconfigMakefiletiKconfigMakefiletxx9KconfigMakefileuniphierKconfigMakefileux500KconfigMakefilexilinxKconfigMakefilextensaKconfigMakefilesparcKconfigMakefilespiKconfigMakefilesynthKconfigMakefileemuxMakefileusb6fireMakefileKconfigMakefilebcd2000MakefilecaiaqMakefilehifaceMakefileline6KconfigMakefilemiscMakefileusx2yMakefilevirtioKconfigMakefilex86KconfigMakefilexenKconfigMakefiletoolsMakefileaccountingMakefilearchx86intel_sdsiMakefilebpfMakefilebpftoolDocumentationMakefileMakefileresolve_btfidsMakefilerunqslowerMakefilebuildMakefileMakefile.buildMakefile.featureMakefile.includefeatureMakefiletestsexMakefilecgroupMakefilefirewireMakefilegpioMakefilehvMakefileiioMakefileincludetoolsbe_byteshift.hle_byteshift.hio_uringMakefilekvmkvm_statMakefilelaptopdslmMakefilefreefallMakefileledsMakefilelibapiMakefilebpfMakefilelockdepMakefileperfDocumentationMakefileMakefilesubcmdMakefiletraceeventDocumentationMakefileMakefilepluginsMakefileobjtoolMakefilepciMakefilepcmciaMakefileperfDocumentationMakefileMakefileMakefile.configMakefile.perfarcharmMakefilearm64MakefilecskyMakefilemipsMakefilepowerpcMakefiles390MakefileshMakefilesparcMakefilex86MakefilextensaMakefilescriptsperlPerf-Trace-UtilMakefile.PLpoweracpiMakefileMakefile.configMakefile.rulestoolsacpidbgMakefileacpidumpMakefileecMakefilecpupowerMakefilebenchMakefiledebugi386MakefilekernelMakefilex86_64Makefilepm-graphMakefilex86intel-speed-selectMakefileturbostatMakefilex86_energy_perf_policyMakefilescriptsMakefile.archMakefile.includespiMakefiletestingnvdimmMakefileradix-treeMakefilescatterlistMakefileselftestsMakefileandroidMakefileionMakefilebpfMakefileMakefile.docsbpf_testmodMakefilebreakpointsMakefilecapabilitiesMakefilecgroupMakefilecoreMakefilecpu-hotplugMakefilecpufreqMakefiledamonMakefiledriversnetbondingMakefileteamMakefileefivarfsMakefileexecMakefilefilesystemsMakefilefirmwareMakefilefpuMakefileftraceMakefilefutexMakefilefunctionalMakefilegpioMakefileia64Makefileintel_pstateMakefileipcMakefilekcmpMakefilekexecMakefilekmodMakefilekvmMakefilelibMakefilelivepatchMakefilelockingMakefilemedia_testsMakefilemembarrierMakefilememfdMakefilememory-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-552.1.1.el8.ppc64le//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/alpha//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/alpha/boot//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/alpha/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/alpha/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/alpha/math-emu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/alpha/mm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/alpha/oprofile//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arc/boot//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arc/boot/dts//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arc/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arc/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arc/mm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arc/oprofile//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arc/plat-axs10x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arc/plat-eznps//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arc/plat-hsdk//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arc/plat-sim//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arc/plat-tb10x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/boot//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/boot/bootp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/boot/compressed//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/boot/dts//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/common//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/crypto//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/firmware//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-actions//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-alpine//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-artpec//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-asm9260//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-aspeed//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-at91//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-axxia//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-bcm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-berlin//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-clps711x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-cns3xxx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-davinci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-digicolor//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-dove//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-ebsa110//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-efm32//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-ep93xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-exynos//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-footbridge//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-gemini//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-highbank//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-hisi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-imx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-imx/devices//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-integrator//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-iop13xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-iop32x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-iop33x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-ixp4xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-keystone//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-ks8695//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-lpc18xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-lpc32xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-mediatek//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-meson//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-mmp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-moxart//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-mv78xx0//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-mvebu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-mxs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-netx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-nomadik//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-npcm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-nspire//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-omap1//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-omap2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-orion5x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-oxnas//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-picoxcell//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-prima2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-pxa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-qcom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-realview//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-rockchip//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-rpc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-s3c24xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-s3c64xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-s5pv210//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-sa1100//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-shmobile//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-socfpga//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-spear//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-sti//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-stm32//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-sunxi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-tango//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-tegra//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-u300//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-uniphier//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-ux500//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-versatile//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-vexpress//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-vt8500//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-w90x900//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-zx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mach-zynq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/mm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/net//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/nwfpe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/oprofile//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/plat-iop//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/plat-omap//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/plat-orion//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/plat-pxa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/plat-samsung//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/plat-versatile//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/probes//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/probes/kprobes//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/probes/uprobes//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/tools//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/vdso//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/vfp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm/xen//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts/actions//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts/al//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts/allwinner//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts/altera//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts/amd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts/amlogic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts/apm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts/arm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts/broadcom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts/broadcom/northstar2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts/broadcom/stingray//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts/cavium//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts/exynos//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts/freescale//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts/hisilicon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts/lg//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts/marvell//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts/mediatek//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts/nvidia//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts/qcom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts/realtek//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts/renesas//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts/rockchip//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts/socionext//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts/sprd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts/synaptics//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts/xilinx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/boot/dts/zte//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/crypto//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/hyperv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/kernel/probes//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/kernel/vdso//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/kernel/vdso32//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/kvm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/kvm/hyp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/kvm/hyp/nvhe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/kvm/hyp/vhe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/mm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/net//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/tools//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/arm64/xen//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/c6x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/c6x/boot//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/c6x/boot/dts//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/c6x/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/c6x/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/c6x/mm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/c6x/platforms//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/h8300//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/h8300/boot//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/h8300/boot/compressed//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/h8300/boot/dts//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/h8300/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/h8300/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/h8300/mm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/hexagon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/hexagon/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/hexagon/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/hexagon/mm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/ia64//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/ia64/dig//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/ia64/hp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/ia64/hp/common//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/ia64/hp/sim//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/ia64/hp/sim/boot//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/ia64/hp/zx1//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/ia64/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/ia64/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/ia64/mm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/ia64/oprofile//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/ia64/pci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/ia64/sn//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/ia64/sn/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/ia64/sn/kernel/sn2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/ia64/sn/pci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/ia64/sn/pci/pcibr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/ia64/uv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/ia64/uv/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/m68k//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/m68k/68000//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/m68k/amiga//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/m68k/apollo//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/m68k/atari//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/m68k/bvme6000//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/m68k/coldfire//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/m68k/emu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/m68k/fpsp040//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/m68k/hp300//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/m68k/ifpsp060//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/m68k/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/m68k/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/m68k/mac//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/m68k/math-emu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/m68k/mm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/m68k/mvme147//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/m68k/mvme16x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/m68k/q40//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/m68k/sun3//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/m68k/sun3/prom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/m68k/sun3x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/m68k/tools//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/m68k/tools/amiga//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/microblaze//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/microblaze/boot//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/microblaze/boot/dts//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/microblaze/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/microblaze/kernel/cpu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/microblaze/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/microblaze/mm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/microblaze/oprofile//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/microblaze/pci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/alchemy//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/alchemy/common//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/alchemy/devboards//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/ar7//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/ath25//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/ath79//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/bcm47xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/bcm63xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/bcm63xx/boards//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/bmips//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/boot//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/boot/compressed//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/boot/dts//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/boot/dts/brcm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/boot/dts/cavium-octeon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/boot/dts/img//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/boot/dts/ingenic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/boot/dts/lantiq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/boot/dts/mscc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/boot/dts/mti//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/boot/dts/netlogic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/boot/dts/ni//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/boot/dts/pic32//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/boot/dts/qca//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/boot/dts/ralink//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/boot/dts/xilfpga//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/boot/tools//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/cavium-octeon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/cavium-octeon/crypto//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/cavium-octeon/executive//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/cobalt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/crypto//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/dec//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/dec/prom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/emma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/emma/common//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/emma/markeins//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/fw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/fw/arc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/fw/cfe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/fw/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/fw/sni//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/generic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/jazz//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/jz4740//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/kvm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/lantiq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/lantiq/falcon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/lantiq/xway//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/lasat//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/lasat/image//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/loongson32//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/loongson32/common//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/loongson32/ls1b//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/loongson32/ls1c//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/loongson64//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/loongson64/common//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/loongson64/common/cs5536//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/loongson64/fuloong-2e//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/loongson64/lemote-2f//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/loongson64/loongson-3//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/math-emu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/mm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/mti-malta//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/net//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/netlogic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/netlogic/common//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/netlogic/xlp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/netlogic/xlr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/oprofile//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/paravirt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/pci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/pic32//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/pic32/common//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/pic32/pic32mzda//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/pistachio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/pmcs-msp71xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/pnx833x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/pnx833x/common//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/pnx833x/stb22x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/power//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/ralink//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/rb532//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/sgi-ip22//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/sgi-ip27//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/sgi-ip32//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/sibyte//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/sibyte/bcm1480//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/sibyte/common//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/sibyte/sb1250//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/sibyte/swarm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/sni//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/txx9//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/txx9/generic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/txx9/jmr3927//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/txx9/rbtx4927//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/txx9/rbtx4938//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/txx9/rbtx4939//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/vdso//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/vr41xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/vr41xx/casio-e55//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/vr41xx/common//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/mips/vr41xx/ibm-workpad//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/nds32//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/nds32/boot//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/nds32/boot/dts//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/nds32/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/nds32/kernel/vdso//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/nds32/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/nds32/mm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/nios2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/nios2/boot//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/nios2/boot/compressed//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/nios2/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/nios2/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/nios2/mm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/nios2/platform//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/openrisc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/openrisc/boot//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/openrisc/boot/dts//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/openrisc/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/openrisc/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/openrisc/mm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/parisc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/parisc/boot//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/parisc/boot/compressed//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/parisc/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/parisc/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/parisc/math-emu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/parisc/mm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/parisc/oprofile//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/boot//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/crypto//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/include//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/include/asm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/include/asm/book3s//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/include/asm/book3s/32//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/include/asm/book3s/64//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/include/asm/nohash//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/include/asm/nohash/32//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/include/asm/nohash/64//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/include/generated//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/include/generated/asm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/include/generated/uapi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/include/generated/uapi/asm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/include/uapi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/include/uapi/asm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/kernel/ptrace//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/kernel/trace//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/kernel/vdso32//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/kernel/vdso64//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/kvm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/math-emu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/mm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/mm/book3s32//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/mm/book3s64//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/net//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/oprofile//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/perf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/platforms//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/platforms/40x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/platforms/44x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/platforms/4xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/platforms/512x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/platforms/52xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/platforms/82xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/platforms/83xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/platforms/85xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/platforms/86xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/platforms/8xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/platforms/amigaone//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/platforms/book3s//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/platforms/cell//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/platforms/cell/spufs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/platforms/chrp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/platforms/embedded6xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/platforms/maple//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/platforms/pasemi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/platforms/powermac//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/platforms/powernv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/platforms/ps3//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/platforms/pseries//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/purgatory//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/sysdev//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/sysdev/ge//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/sysdev/xics//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/sysdev/xive//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/powerpc/xmon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/riscv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/riscv/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/riscv/kernel/vdso//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/riscv/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/riscv/mm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/s390//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/s390/appldata//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/s390/boot//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/s390/boot/compressed//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/s390/crypto//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/s390/hypfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/s390/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/s390/kernel/syscalls//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/s390/kernel/vdso32//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/s390/kernel/vdso64//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/s390/kvm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/s390/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/s390/mm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/s390/net//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/s390/numa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/s390/oprofile//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/s390/pci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/s390/purgatory//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/s390/scripts//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/s390/tools//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boards//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boards/mach-ap325rxa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boards/mach-cayman//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boards/mach-dreamcast//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boards/mach-ecovec24//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boards/mach-highlander//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boards/mach-hp6xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boards/mach-kfr2r09//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boards/mach-landisk//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boards/mach-lboxre2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boards/mach-microdev//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boards/mach-migor//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boards/mach-r2d//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boards/mach-rsk//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boards/mach-sdk7780//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boards/mach-sdk7786//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boards/mach-se//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boards/mach-se/7206//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boards/mach-se/7343//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boards/mach-se/770x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boards/mach-se/7721//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boards/mach-se/7722//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boards/mach-se/7724//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boards/mach-se/7751//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boards/mach-se/7780//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boards/mach-sh03//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boards/mach-sh7763rdp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boards/mach-x3proto//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boot//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boot/compressed//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boot/dts//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/boot/romimage//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/cchips//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/cchips/hd6446x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/drivers//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/drivers/dma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/drivers/pci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/drivers/superhyway//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/kernel/cpu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/kernel/cpu/irq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/kernel/cpu/sh2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/kernel/cpu/sh2a//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/kernel/cpu/sh3//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/kernel/cpu/sh4//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/kernel/cpu/sh4a//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/kernel/cpu/sh5//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/kernel/cpu/shmobile//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/kernel/vsyscall//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/lib64//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/math-emu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/mm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/oprofile//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sh/tools//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sparc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sparc/boot//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sparc/crypto//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sparc/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sparc/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sparc/math-emu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sparc/mm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sparc/net//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sparc/oprofile//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sparc/power//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sparc/prom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/sparc/vdso//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/um//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/um/drivers//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/um/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/um/kernel/skas//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/um/os-Linux//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/um/os-Linux/drivers//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/um/os-Linux/skas//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/um/scripts//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/unicore32//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/unicore32/boot//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/unicore32/boot/compressed//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/unicore32/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/unicore32/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/unicore32/mm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/boot//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/boot/compressed//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/coco//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/coco/tdx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/crypto//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/entry//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/entry/syscalls//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/entry/vdso//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/entry/vsyscall//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/events//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/events/amd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/events/intel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/hyperv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/ia32//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/kernel/acpi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/kernel/apic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/kernel/cpu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/kernel/cpu/mce//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/kernel/cpu/microcode//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/kernel/cpu/mtrr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/kernel/cpu/resctrl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/kernel/cpu/sgx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/kernel/fpu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/kernel/kprobes//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/kvm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/math-emu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/mm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/mm/pat//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/net//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/oprofile//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/pci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/platform//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/platform/atom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/platform/ce4100//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/platform/efi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/platform/geode//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/platform/goldfish//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/platform/intel-mid//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/platform/intel-mid/device_libs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/platform/intel-quark//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/platform/intel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/platform/iris//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/platform/olpc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/platform/scx200//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/platform/sfi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/platform/ts5500//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/platform/uv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/power//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/purgatory//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/ras//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/realmode//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/realmode/rm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/tools//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/um//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/um/os-Linux//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/um/vdso//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/video//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/x86/xen//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/xtensa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/xtensa/boot//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/xtensa/boot/boot-elf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/xtensa/boot/boot-redboot//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/xtensa/boot/dts//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/xtensa/boot/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/xtensa/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/xtensa/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/xtensa/mm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/xtensa/oprofile//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/xtensa/platforms//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/xtensa/platforms/iss//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/xtensa/platforms/xt2000//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/arch/xtensa/platforms/xtfpga//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/block//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/block/partitions//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/certs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/crypto//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/crypto/asymmetric_keys//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/crypto/async_tx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/accessibility//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/accessibility/braille//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/acpi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/acpi/acpica//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/acpi/apei//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/acpi/arm64//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/acpi/dptf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/acpi/nfit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/acpi/numa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/acpi/pmic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/amba//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/android//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/ata//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/atm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/auxdisplay//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/base//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/base/firmware_loader//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/base/power//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/base/regmap//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/base/test//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/bcma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/block//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/block/aoe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/block/drbd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/block/mtip32xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/block/paride//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/block/rsxx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/block/xen-blkback//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/block/zram//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/bluetooth//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/bus//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/bus/fsl-mc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/bus/mhi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/bus/mhi/ep//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/bus/mhi/host//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/cdrom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/char//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/char/agp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/char/hw_random//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/char/ipmi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/char/mwave//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/char/pcmcia//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/char/tpm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/char/tpm/st33zp24//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/char/xilinx_hwicap//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/char/xillybus//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/actions//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/at91//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/axis//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/axs10x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/bcm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/berlin//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/davinci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/h8300//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/hisilicon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/imgtec//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/imx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/ingenic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/keystone//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/loongson1//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/mediatek//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/meson//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/microchip//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/mmp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/mvebu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/mxs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/nxp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/pistachio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/pxa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/qcom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/renesas//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/rockchip//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/samsung//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/sirf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/socfpga//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/spear//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/sprd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/st//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/sunxi-ng//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/sunxi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/tegra//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/ti//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/uniphier//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/ux500//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/versatile//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/x86//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/zte//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clk/zynq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/clocksource//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/connector//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/counter//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/cpufreq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/cpuidle//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/cpuidle/governors//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/amcc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/axis//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/bcm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/caam//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/cavium//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/cavium/cpt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/cavium/nitrox//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/cavium/zip//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/ccp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/ccree//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/chelsio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/chelsio/chtls//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/inside-secure//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/marvell//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/mediatek//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/nx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/qat//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/qat/qat_4xxx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/qat/qat_c3xxx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/qat/qat_c3xxxvf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/qat/qat_c62x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/qat/qat_c62xvf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/qat/qat_common//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/qat/qat_dh895xcc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/qat/qat_dh895xccvf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/qce//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/rockchip//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/stm32//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/sunxi-ss//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/ux500//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/ux500/cryp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/ux500/hash//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/virtio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/crypto/vmx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/dax//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/dax/hmem//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/dax/pmem//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/dca//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/devfreq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/devfreq/event//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/dio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/dma-buf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/dma-buf/heaps//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/dma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/dma/bestcomm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/dma/dw-axi-dmac//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/dma/dw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/dma/hsu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/dma/idxd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/dma/ioat//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/dma/ipu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/dma/mediatek//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/dma/ppc4xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/dma/ptdma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/dma/qcom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/dma/sh//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/dma/ti//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/dma/xilinx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/edac//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/eisa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/extcon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/firewire//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/firmware//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/firmware/arm_scmi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/firmware/broadcom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/firmware/cirrus//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/firmware/efi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/firmware/efi/libstub//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/firmware/efi/test//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/firmware/google//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/firmware/meson//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/firmware/psci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/firmware/smccc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/firmware/tegra//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/fmc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/fpga//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/fsi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/acp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/amdgpu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/amdkfd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/amdgpu_dm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/basics//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/bios//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/clk_mgr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce100//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce110//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce112//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce120//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce60//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce80//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn10//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn20//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn201//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn21//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn30//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn301//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn302//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn303//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn31//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn314//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn315//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn316//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn32//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn321//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dml//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dsc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/gpio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/hdcp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/irq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/link//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dc/virtual//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dmub//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/dmub/src//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/modules//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/modules/color//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/modules/freesync//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/modules/hdcp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/modules/info_packet//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/display/modules/power//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/pm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/pm/legacy-dpm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/pm/powerplay//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/pm/powerplay/hwmgr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/pm/powerplay/smumgr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/pm/swsmu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/pm/swsmu/smu11//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/pm/swsmu/smu12//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/amd/pm/swsmu/smu13//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/arm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/armada//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/aspeed//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/ast//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/atmel-hlcdc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/bridge//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/bridge/adv7511//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/bridge/analogix//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/bridge/cadence//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/bridge/imx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/bridge/synopsys//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/display//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/etnaviv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/exynos//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/fsl-dcu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/gma500//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/gud//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/hisilicon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/hisilicon/hibmc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/hisilicon/kirin//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/hyperv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/i2c//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/i915//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/i915/gvt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/imx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/kmb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/logicvc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/mediatek//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/meson//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/mgag200//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/msm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/mxsfb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/nouveau//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/omapdrm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/omapdrm/displays//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/omapdrm/dss//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/panel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/pl111//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/qxl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/radeon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/rcar-du//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/rockchip//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/scheduler//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/shmobile//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/solomon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/sprd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/sti//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/stm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/sun4i//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/tegra//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/tests//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/tilcdc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/tiny//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/ttm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/tve200//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/udl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/v3d//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/vboxvideo//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/vc4//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/vgem//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/virtio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/vkms//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/vmwgfx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/drm/xen//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/host1x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/ipu-v3//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/gpu/vga//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/hid//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/hid/amd-sfh-hid//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/hid/i2c-hid//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/hid/intel-ish-hid//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/hid/surface-hid//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/hid/usbhid//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/hsi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/hsi/clients//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/hsi/controllers//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/hv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/hwmon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/hwmon/pmbus//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/hwspinlock//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/hwtracing//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/hwtracing/coresight//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/hwtracing/intel_th//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/hwtracing/stm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/i2c//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/i2c/algos//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/i2c/busses//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/i2c/muxes//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/ide//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/idle//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/accel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/adc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/afe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/amplifiers//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/buffer//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/chemical//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/common//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/common/cros_ec_sensors//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/common/hid-sensors//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/common/ms_sensors//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/common/ssp_sensors//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/common/st_sensors//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/counter//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/dac//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/dummy//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/frequency//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/gyro//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/health//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/humidity//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/imu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/imu/bmi160//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/imu/inv_mpu6050//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/imu/st_lsm6dsx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/light//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/magnetometer//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/multiplexer//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/orientation//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/potentiometer//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/potentiostat//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/pressure//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/proximity//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/resolver//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/temperature//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/test//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iio/trigger//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband/core//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband/hw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband/hw/bnxt_re//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband/hw/cxgb4//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband/hw/efa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband/hw/hfi1//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband/hw/hns//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband/hw/irdma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband/hw/mana//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband/hw/mlx4//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband/hw/mlx5//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband/hw/mthca//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband/hw/ocrdma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband/hw/qedr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband/hw/qib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband/hw/usnic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband/hw/vmw_pvrdma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband/sw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband/sw/rdmavt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband/sw/rxe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband/sw/siw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband/ulp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband/ulp/ipoib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband/ulp/iser//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband/ulp/isert//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband/ulp/opa_vnic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband/ulp/srp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/infiniband/ulp/srpt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/input//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/input/gameport//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/input/joystick//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/input/joystick/iforce//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/input/keyboard//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/input/misc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/input/mouse//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/input/rmi4//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/input/serio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/input/tablet//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/input/touchscreen//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iommu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iommu/amd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iommu/arm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iommu/arm/arm-smmu-v3//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iommu/arm/arm-smmu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/iommu/intel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/ipack//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/ipack/carriers//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/ipack/devices//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/irqchip//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/isdn//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/isdn/capi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/isdn/divert//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/isdn/gigaset//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/isdn/hardware//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/isdn/hardware/avm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/isdn/hardware/eicon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/isdn/hardware/mISDN//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/isdn/hisax//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/isdn/hysdn//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/isdn/i4l//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/isdn/isdnloop//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/isdn/mISDN//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/leds//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/leds/trigger//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/lightnvm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/macintosh//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/macintosh/ams//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/mailbox//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/mcb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/md//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/md/bcache//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/md/persistent-data//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/cec//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/common//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/common/b2c2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/common/saa7146//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/common/siano//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/common/v4l2-tpg//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/common/videobuf2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/dvb-core//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/dvb-frontends//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/dvb-frontends/cxd2880//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/dvb-frontends/drx39xyj//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/firewire//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/i2c//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/i2c/adv748x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/i2c/cx25840//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/i2c/et8ek8//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/i2c/m5mols//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/i2c/s5c73m3//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/i2c/smiapp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/i2c/soc_camera//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/mmc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/mmc/siano//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/b2c2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/bt8xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/cobalt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/cx18//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/cx23885//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/cx25821//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/cx88//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/ddbridge//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/dm1105//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/dt3155//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/intel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/intel/ipu3//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/ivtv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/mantis//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/meye//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/netup_unidvb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/ngene//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/pluto2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/pt1//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/pt3//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/saa7134//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/saa7146//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/saa7164//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/smipcie//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/solo6x10//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/sta2x11//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/ttpci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/tw5864//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/tw68//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/pci/tw686x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/am437x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/atmel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/cadence//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/cec-gpio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/coda//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/davinci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/exynos-gsc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/exynos4-is//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/marvell-ccic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/meson//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/mtk-jpeg//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/mtk-mdp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/mtk-vcodec//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/mtk-vpu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/omap//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/omap3isp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/qcom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/qcom/camss-8x16//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/qcom/venus//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/rcar-vin//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/rockchip//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/rockchip/rga//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/s3c-camif//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/s5p-cec//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/s5p-g2d//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/s5p-jpeg//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/s5p-mfc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/soc_camera//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/sti//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/sti/bdisp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/sti/c8sectpfe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/sti/cec//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/sti/delta//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/sti/hva//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/stm32//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/tegra-cec//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/ti-vpe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/vimc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/vivid//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/vsp1//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/platform/xilinx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/radio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/radio/si470x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/radio/si4713//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/radio/wl128x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/rc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/rc/img-ir//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/rc/keymaps//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/spi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/tuners//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/airspy//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/as102//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/au0828//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/b2c2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/cpia2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/cx231xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/dvb-usb-v2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/dvb-usb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/em28xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/go7007//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/gspca//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/gspca/gl860//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/gspca/m5602//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/gspca/stv06xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/hackrf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/hdpvr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/msi2500//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/pulse8-cec//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/pvrusb2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/pwc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/rainshadow-cec//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/s2255//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/siano//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/stk1160//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/stkwebcam//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/tm6000//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/ttusb-budget//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/ttusb-dec//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/usbtv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/usbvision//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/uvc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/usb/zr364xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/media/v4l2-core//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/memory//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/memory/samsung//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/memory/tegra//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/memstick//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/memstick/core//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/memstick/host//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/message//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/message/fusion//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/mfd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/misc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/misc/altera-stapl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/misc/c2port//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/misc/cardreader//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/misc/cb710//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/misc/cxl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/misc/echo//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/misc/eeprom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/misc/genwqe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/misc/ibmasm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/misc/lis3lv02d//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/misc/lkdtm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/misc/mei//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/misc/mei/hdcp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/misc/mei/pxp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/misc/mic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/misc/mic/bus//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/misc/mic/card//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/misc/mic/cosm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/misc/mic/cosm_client//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/misc/mic/host//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/misc/mic/scif//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/misc/mic/vop//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/misc/ocxl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/misc/sgi-gru//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/misc/sgi-xp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/misc/ti-st//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/misc/vmw_vmci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/mmc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/mmc/core//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/mmc/host//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/mtd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/mtd/chips//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/mtd/devices//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/mtd/lpddr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/mtd/maps//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/mtd/nand//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/mtd/nand/onenand//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/mtd/nand/raw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/mtd/nand/raw/atmel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/mtd/nand/raw/bcm47xxnflash//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/mtd/nand/raw/brcmnand//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/mtd/nand/raw/gpmi-nand//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/mtd/parsers//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/mtd/spi-nor//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/mtd/tests//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/mtd/ubi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/mux//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/appletalk//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/arcnet//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/bonding//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/caif//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/can//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/can/c_can//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/can/cc770//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/can/ifi_canfd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/can/m_can//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/can/mscan//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/can/peak_canfd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/can/rcar//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/can/sja1000//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/can/softing//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/can/spi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/can/usb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/can/usb/kvaser_usb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/can/usb/peak_usb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/dsa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/dsa/b53//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/dsa/microchip//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/dsa/mv88e6xxx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/3com//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/8390//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/adaptec//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/aeroflex//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/agere//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/alacritech//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/allwinner//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/alteon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/altera//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/amazon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/amazon/ena//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/amd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/amd/xgbe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/apm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/apm/xgene-v2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/apm/xgene//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/apple//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/aquantia//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/aquantia/atlantic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/aquantia/atlantic/hw_atl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/arc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/atheros//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/atheros/alx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/atheros/atl1c//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/atheros/atl1e//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/atheros/atlx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/aurora//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/broadcom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/broadcom/bnx2x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/broadcom/bnxt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/broadcom/genet//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/brocade//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/brocade/bna//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/cadence//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/calxeda//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/cavium//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/cavium/common//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/cavium/liquidio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/cavium/octeon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/cavium/thunder//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/chelsio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/chelsio/cxgb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/chelsio/cxgb3//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/chelsio/cxgb4//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/chelsio/cxgb4vf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/chelsio/inline_crypto//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/chelsio/inline_crypto/ch_ipsec//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/chelsio/inline_crypto/ch_ktls//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/chelsio/libcxgb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/cirrus//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/cisco//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/cisco/enic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/cortina//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/davicom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/dec//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/dec/tulip//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/dlink//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/emulex//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/emulex/benet//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/ezchip//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/faraday//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/freescale//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/freescale/dpaa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/freescale/fman//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/freescale/fs_enet//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/fujitsu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/google//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/google/gve//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/hisilicon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/hisilicon/hns//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/hisilicon/hns3//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/hisilicon/hns3/hns3pf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/hisilicon/hns3/hns3vf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/hp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/huawei//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/huawei/hinic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/i825xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/ibm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/ibm/ehea//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/ibm/emac//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/intel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/intel/e1000//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/intel/e1000e//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/intel/fm10k//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/intel/i40e//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/intel/iavf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/intel/ice//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/intel/igb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/intel/igbvf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/intel/igc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/intel/ixgb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/intel/ixgbe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/intel/ixgbevf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/marvell//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/marvell/mvpp2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/mediatek//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/mellanox//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlx4//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/accel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/diag//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/en//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/en/xsk//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/en_accel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/esw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/fpga//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/ipoib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/steering//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlxbf_gige//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlxfw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/mellanox/mlxsw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/micrel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/microchip//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/microsoft//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/microsoft/mana//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/moxa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/mscc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/myricom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/myricom/myri10ge//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/natsemi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/neterion//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/neterion/vxge//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/netronome//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/netronome/nfp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/netronome/nfp/bpf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/netronome/nfp/flower//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/netronome/nfp/nfpcore//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/netronome/nfp/nfpcore/nfp6000//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/netronome/nfp/nic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/ni//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/nuvoton//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/nvidia//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/nxp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/oki-semi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/oki-semi/pch_gbe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/packetengines//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/pasemi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/pensando//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/pensando/ionic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/qlogic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/qlogic/netxen//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/qlogic/qed//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/qlogic/qede//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/qlogic/qlcnic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/qlogic/qlge//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/qualcomm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/qualcomm/emac//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/qualcomm/rmnet//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/rdc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/realtek//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/renesas//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/rocker//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/samsung//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/samsung/sxgbe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/seeq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/sfc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/sfc/falcon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/sfc/siena//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/sgi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/silan//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/sis//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/smsc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/socionext//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/stmicro//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/stmicro/stmmac//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/sun//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/synopsys//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/tehuti//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/ti//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/toshiba//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/tundra//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/via//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/wiznet//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/xilinx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/xircom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ethernet/xscale//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/fddi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/fddi/skfp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/fjes//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/hamradio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/hippi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/hyperv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ieee802154//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ipvlan//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/netdevsim//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/pcs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/phy//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/plip//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/ppp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/slip//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/team//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/thunderbolt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/usb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/vmxnet3//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wan//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wan/lmc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wimax//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wimax/i2400m//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/admtek//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/ath//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/ath/ar5523//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/ath/ath10k//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/ath/ath11k//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/ath/ath12k//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/ath/ath5k//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/ath/ath6kl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/ath/ath9k//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/ath/carl9170//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/ath/wcn36xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/ath/wil6210//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/atmel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/broadcom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/broadcom/b43//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/broadcom/b43legacy//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmfmac//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bca//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cyw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmfmac/wcc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmsmac//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmutil//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/cisco//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/intel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/intel/ipw2x00//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/intel/iwlegacy//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/intel/iwlwifi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/intel/iwlwifi/dvm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/intel/iwlwifi/mei//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/intel/iwlwifi/mvm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/intersil//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/intersil/hostap//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/intersil/orinoco//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/intersil/p54//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/intersil/prism54//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/legacy//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/marvell//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/marvell/libertas//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/marvell/libertas_tf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/marvell/mwifiex//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/mediatek//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/mediatek/mt76//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt7603//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt7615//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt76x0//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt76x2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt7915//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt7921//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt7996//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/mediatek/mt7601u//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/quantenna//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/quantenna/qtnfmac//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/ralink//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/ralink/rt2x00//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/realtek//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/realtek/rtl818x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/realtek/rtl818x/rtl8180//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/realtek/rtl818x/rtl8187//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/realtek/rtl8xxxu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/btcoexist//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8188ee//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192c//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192ce//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192cu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192de//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192ee//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192se//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8723ae//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8723be//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8723com//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8821ae//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/realtek/rtw88//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/realtek/rtw89//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/rsi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/st//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/st/cw1200//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/ti//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/ti/wl1251//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/ti/wl12xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/ti/wl18xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/ti/wlcore//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/virtual//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/zydas//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/wireless/zydas/zd1211rw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/net/xen-netback//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/nfc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/nfc/fdp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/nfc/microread//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/nfc/nfcmrvl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/nfc/nxp-nci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/nfc/pn533//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/nfc/pn544//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/nfc/s3fwrn5//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/nfc/st-nci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/nfc/st21nfca//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/nfc/st95hf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/ntb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/ntb/hw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/ntb/hw/amd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/ntb/hw/epf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/ntb/hw/idt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/ntb/hw/intel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/ntb/hw/mscc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/ntb/test//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/nubus//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/nvdimm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/nvme//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/nvme/host//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/nvme/target//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/nvmem//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/of//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/of/unittest-data//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/opp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/parisc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/parport//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pci/controller//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pci/controller/dwc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pci/endpoint//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pci/endpoint/functions//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pci/hotplug//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pci/pcie//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pci/switch//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pcmcia//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/perf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/perf/hisilicon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/phy//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/phy/allwinner//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/phy/amlogic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/phy/broadcom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/phy/hisilicon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/phy/lantiq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/phy/marvell//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/phy/mediatek//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/phy/motorola//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/phy/qualcomm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/phy/ralink//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/phy/renesas//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/phy/rockchip//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/phy/samsung//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/phy/st//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/phy/tegra//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/phy/ti//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pinctrl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pinctrl/actions//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pinctrl/aspeed//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pinctrl/bcm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pinctrl/berlin//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pinctrl/freescale//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pinctrl/intel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pinctrl/mediatek//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pinctrl/meson//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pinctrl/mvebu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pinctrl/nomadik//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pinctrl/pxa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pinctrl/qcom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pinctrl/samsung//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pinctrl/sh-pfc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pinctrl/sirf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pinctrl/spear//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pinctrl/sprd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pinctrl/stm32//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pinctrl/sunxi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pinctrl/tegra//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pinctrl/ti//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pinctrl/uniphier//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pinctrl/vt8500//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pinctrl/zte//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/platform//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/platform/chrome//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/platform/goldfish//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/platform/mellanox//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/platform/mips//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/platform/olpc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/platform/x86//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/platform/x86/amd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/platform/x86/amd/pmf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/platform/x86/dell-wmi-sysman//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/platform/x86/intel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/platform/x86/intel/ifs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/platform/x86/intel/pmc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/platform/x86/intel/pmt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/platform/x86/intel/speed_select_if//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/platform/x86/intel/uncore-frequency//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pnp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pnp/isapnp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pnp/pnpacpi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pnp/pnpbios//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/power//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/power/avs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/power/reset//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/power/supply//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/powercap//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pps//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pps/clients//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pps/generators//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/ps3//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/ptp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/pwm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/rapidio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/rapidio/devices//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/rapidio/switches//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/ras//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/regulator//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/remoteproc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/reset//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/reset/hisilicon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/reset/sti//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/reset/tegra//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/rpmsg//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/rtc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/s390//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/s390/block//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/s390/char//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/s390/cio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/s390/crypto//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/s390/net//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/s390/scsi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/s390/virtio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/sbus//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/sbus/char//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/aacraid//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/aic7xxx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/aic7xxx/aicasm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/aic94xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/arcmsr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/arm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/be2iscsi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/bfa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/bnx2fc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/bnx2i//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/csiostor//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/cxgbi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/cxgbi/cxgb3i//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/cxgbi/cxgb4i//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/cxlflash//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/device_handler//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/esas2r//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/fcoe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/fnic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/hisi_sas//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/ibmvscsi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/ibmvscsi_tgt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/isci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/libfc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/libsas//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/lpfc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/megaraid//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/mpi3mr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/mpt3sas//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/mvsas//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/pcmcia//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/pm8001//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/qedf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/qedi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/qla2xxx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/qla4xxx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/smartpqi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/snic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/sym53c8xx_2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/scsi/ufs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/sfi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/sh//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/sh/clk//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/sh/intc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/sh/maple//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/sh/superhyway//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/siox//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/slimbus//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/sn//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soc/actions//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soc/amlogic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soc/atmel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soc/bcm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soc/bcm/brcmstb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soc/bcm/brcmstb/pm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soc/dove//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soc/fsl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soc/fsl/qbman//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soc/fsl/qe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soc/fujitsu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soc/gemini//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soc/imx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soc/lantiq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soc/mediatek//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soc/qcom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soc/renesas//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soc/rockchip//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soc/samsung//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soc/sunxi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soc/tegra//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soc/tegra/fuse//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soc/ti//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soc/ux500//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soc/versatile//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soc/xilinx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soc/zte//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/soundwire//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/spi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/spmi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/ssb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/android//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/android/ion//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/board//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/clocking-wizard//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/comedi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/comedi/drivers//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/comedi/kcomedilib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/dgnc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/emxx_udc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/fbtft//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/fsl-dpaa2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/fsl-dpaa2/ethernet//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/fsl-dpaa2/ethsw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/fsl-dpaa2/rtc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/fsl-mc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/fsl-mc/bus//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/fsl-mc/bus/dpio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/fwserial//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/gdm724x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/goldfish//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/greybus//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/greybus/tools//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/gs_fpgaboot//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/iio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/iio/accel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/iio/adc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/iio/addac//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/iio/cdc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/iio/frequency//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/iio/gyro//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/iio/impedance-analyzer//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/iio/meter//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/iio/resolver//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/ks7010//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/media//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/media/bcm2048//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/media/davinci_vpfe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/media/imx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/media/imx074//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/media/mt9t031//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/media/omap4iss//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/media/tegra-vde//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/media/zoran//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/most//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/most/cdev//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/most/dim2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/most/i2c//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/most/net//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/most/sound//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/most/usb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/most/video//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/mt29f_spinand//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/mt7621-dma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/mt7621-dts//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/mt7621-eth//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/mt7621-gpio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/mt7621-mmc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/mt7621-pci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/mt7621-pinctrl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/mt7621-spi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/netlogic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/nvec//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/octeon-usb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/octeon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/olpc_dcon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/pi433//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/rtl8188eu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/rtl8192e//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/rtl8192e/rtl8192e//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/rtl8192u//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/rtl8192u/ieee80211//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/rtl8712//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/rtl8723bs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/rtlwifi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/rtlwifi/btcoexist//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/rtlwifi/rtl8822be//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/rts5208//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/skein//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/sm750fb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/speakup//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/unisys//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/unisys/visorhba//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/unisys/visorinput//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/unisys/visornic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/vboxvideo//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/vc04_services//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/vc04_services/bcm2835-audio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/vc04_services/bcm2835-camera//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/vme//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/vme/devices//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/vt6655//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/vt6656//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/wilc1000//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/wlan-ng//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/staging/xgifb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/target//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/target/iscsi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/target/iscsi/cxgbit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/target/loopback//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/target/sbp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/target/tcm_fc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/tc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/tee//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/tee/optee//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/thermal//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/thermal/broadcom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/thermal/intel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/thermal/intel/int340x_thermal//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/thermal/qcom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/thermal/samsung//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/thermal/st//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/thermal/tegra//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/thermal/ti-soc-thermal//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/thunderbolt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/tty//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/tty/hvc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/tty/ipwireless//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/tty/serdev//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/tty/serial//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/tty/serial/8250//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/tty/serial/cpm_uart//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/tty/serial/jsm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/tty/vt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/uio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/atm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/c67x00//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/chipidea//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/class//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/common//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/core//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/dwc2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/dwc3//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/early//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/gadget//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/gadget/function//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/gadget/legacy//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/gadget/udc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/gadget/udc/aspeed-vhub//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/gadget/udc/bdc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/host//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/host/whci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/image//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/isp1760//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/misc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/misc/sisusbvga//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/mon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/mtu3//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/musb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/phy//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/renesas_usbhs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/roles//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/serial//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/storage//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/typec//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/typec/altmodes//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/typec/mux//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/typec/tcpm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/typec/tipd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/typec/ucsi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/usbip//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/usb/wusbcore//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/uwb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/uwb/i1480//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/uwb/i1480/dfu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/vdpa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/vdpa/alibaba//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/vdpa/ifcvf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/vdpa/mlx5//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/vdpa/vdpa_sim//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/vdpa/virtio_pci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/vfio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/vfio/mdev//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/vfio/pci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/vfio/platform//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/vfio/platform/reset//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/vhost//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video/backlight//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video/console//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video/fbdev//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video/fbdev/aty//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video/fbdev/core//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video/fbdev/geode//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video/fbdev/i810//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video/fbdev/intelfb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video/fbdev/kyro//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video/fbdev/matrox//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video/fbdev/mb862xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video/fbdev/mbx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video/fbdev/mmp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video/fbdev/mmp/fb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video/fbdev/mmp/hw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video/fbdev/mmp/panel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video/fbdev/nvidia//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video/fbdev/omap//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video/fbdev/omap2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video/fbdev/omap2/omapfb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video/fbdev/omap2/omapfb/displays//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video/fbdev/omap2/omapfb/dss//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video/fbdev/riva//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video/fbdev/savage//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video/fbdev/sis//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video/fbdev/vermilion//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video/fbdev/via//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/video/logo//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/virt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/virt/coco//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/virt/coco/sev-guest//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/virt/coco/tdx-guest//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/virt/nitro_enclaves//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/virt/vboxguest//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/virtio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/visorbus//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/vlynq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/vme//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/vme/boards//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/vme/bridges//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/w1//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/w1/masters//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/w1/slaves//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/watchdog//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/xen//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/xen/events//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/xen/xen-pciback//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/xen/xenbus//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/xen/xenfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/drivers/zorro//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/firmware//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/9p//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/adfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/affs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/afs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/autofs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/befs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/bfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/btrfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/cachefiles//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/ceph//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/cifs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/coda//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/configfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/cramfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/crypto//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/debugfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/devpts//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/dlm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/ecryptfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/efivarfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/efs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/exportfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/ext2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/ext4//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/f2fs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/fat//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/freevxfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/fscache//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/fuse//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/gfs2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/hfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/hfsplus//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/hostfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/hpfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/hugetlbfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/iomap//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/isofs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/jbd2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/jffs2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/jfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/kernfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/lockd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/minix//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/nfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/nfs/blocklayout//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/nfs/filelayout//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/nfs/flexfilelayout//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/nfs_common//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/nfsd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/nilfs2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/nls//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/notify//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/notify/dnotify//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/notify/fanotify//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/notify/inotify//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/ntfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/ocfs2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/ocfs2/cluster//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/ocfs2/dlm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/ocfs2/dlmfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/omfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/openpromfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/orangefs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/overlayfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/proc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/pstore//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/qnx4//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/qnx6//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/quota//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/ramfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/reiserfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/romfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/squashfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/sysfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/sysv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/tracefs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/ubifs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/udf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/ufs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/fs/xfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/acpi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/acpi/platform//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/asm-generic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/asm-generic/bitops//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/asm-generic/vdso//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/clocksource//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/8139too//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/842//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ac97//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/advise//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/alim7101//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/allow//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/allow/dev//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/altera//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/amd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/aperture//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/aquantia//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/cpu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/cpu/probe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/dma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/dma/addr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/dma/addr/t//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/enable//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/enable/hugepage//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/enable/memory//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/enable/split//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/enable/split/pmd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/devmem//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/devmem/is//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/dma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/dma/map//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/elf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/fast//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/force//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/force/dma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/fortify//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/gcov//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/gcov/profile//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/gigantic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/kexec//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/mem//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/membarrier//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/memremap//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/memremap/compat//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/non//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/non/overlapping//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/non/overlapping/address//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/phys//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/phys/to//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/pmem//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/pte//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/sg//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/tick//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/uaccess//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/ubsan//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/ubsan/sanitize//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/walk//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/has/zone//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/have//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/have/nmi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/have/nmi/safe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/hibernation//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/keep//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/may//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/may/have//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/may/have/pc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/memory//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/might//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/might/have//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/might/have/pc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/mmap//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/mmap/rnd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/mmap/rnd/bits//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/mmap/rnd/compat//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/mmap/rnd/compat/bits//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/select//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/select/memory//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/sparsemem//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/supports//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/supports/atomic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/supports/debug//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/supports/memory//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/supports/numa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/suspend//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/suspend/nonzero//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/use//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/use/builtin//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/use/cmpxchg//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/uses//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/uses/high//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/uses/high/vma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/want//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/want/compat//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/want/compat/ipc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/want/compat/ipc/parse//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/want/ipc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/want/ipc/parse//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/want/irqs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/want/irqs/off//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/want/irqs/off/activate//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/want/old//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/want/old/compat//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/weak//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arch/weak/release//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arm/gic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/arm/gic/max//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/associative//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/asymmetric//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/asymmetric/key//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/asymmetric/public//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/asymmetric/public/key//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/async//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/async/raid6//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/async/tx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ata//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ata/verbose//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/atm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/atomic64//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/audit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/autofs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/autofs4//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/auxiliary//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/backlight//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/backlight/class//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/backlight/lcd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/balloon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/base//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bcm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bcm/net//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bcm7xxx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bcm87xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bcma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bcma/driver//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bcma/driver/gmac//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bcma/host//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bcma/host/pci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/be2net//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bfq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bfq/group//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/big//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/binary//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/binfmt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bitfield//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bitfield/kunit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bits//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bits/kunit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/blk//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/blk/cgroup//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/blk/cgroup/fc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/blk/debug//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/blk/dev//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/blk/dev/dm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/blk/dev/integrity//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/blk/dev/io//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/blk/dev/loop//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/blk/dev/loop/min//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/blk/dev/null//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/blk/dev/ram//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/blk/mq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/blk/scsi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/blk/wbt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/block//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bnx2x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bnxt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bnxt/flower//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bootparam//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bootparam/hardlockup//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bootparam/hardlockup/panic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bootparam/hung//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bootparam/hung/task//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bootparam/hung/task/panic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bootparam/softlockup//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bootparam/softlockup/panic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bootx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bpf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bpf/jit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bpf/jit/always//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bpf/jit/default//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bpf/stream//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bpf/unpriv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bpf/unpriv/default//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/branch//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/branch/profile//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bridge//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bridge/ebt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bridge/ebt/802//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bridge/ebt/mark//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bridge/ebt/t//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bridge/igmp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bridge/nf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bridge/vlan//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/broadcom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bsd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bsd/process//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bsd/process/acct//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bt/bnep//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bt/bnep/mc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bt/bnep/proto//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bt/hcibtusb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bt/hciuart//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bt/mrvl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bt/rfcomm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bug//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bug/on//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/bug/on/data//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/build//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/buildtime//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/buildtime/extable//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/can//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/can/8dev//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/can/c//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/can/c/can//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/can/calc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/can/cc770//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/can/ems//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/can/esd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/can/kvaser//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/can/peak//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/can/plx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/can/sja1000//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/capi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cavium//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cb710//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cb710/debug//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cc/can//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cc/has//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cc/has/kasan//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cc/has/sancov//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cc/has/sancov/trace//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cc/has/stackprotector//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cc/has/working//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cc/has/working/nosanitize//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cc/is//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cc/optimize//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cc/optimize/for//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cdrom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cdrom/pktcdvd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cec//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cec/platform//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ceph//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ceph/fs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ceph/fs/posix//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ceph/fs/security//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ceph/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ceph/lib/use//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ceph/lib/use/dns//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cgroup//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cgroup/net//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/charger//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/check//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/checkpoint//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/chelsio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/chelsio/inline//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/chelsio/ipsec//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/chelsio/tls//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/chr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/chr/dev//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cicada//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cifs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cifs/allow//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cifs/allow/insecure//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cifs/dfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cifs/smb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cifs/weak//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cifs/weak/pw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/clang//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/clkbld//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/clone//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cls//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cls/u32//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/clz//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cmdline//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cmdline/kunit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/compat//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/compat/32bit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/compat/binfmt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/compat/old//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/configfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/console//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/console/loglevel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/context//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/context/switch//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/contig//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/core//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/core/dump//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/core/dump/default//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/core/dump/default/elf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cortina//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cpu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cpu/freq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cpu/freq/default//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cpu/freq/default/gov//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cpu/freq/gov//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cpu/freq/gov/attr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cpu/idle//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cpu/idle/gov//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cpu/little//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cramfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/crash//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/crc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/crc/itu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/crc32//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cross//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cross/memory//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/crypto//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/crypto/ansi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/crypto/blowfish//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/crypto/cast//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/crypto/dev//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/crypto/dev/nitrox//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/crypto/dev/nx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/crypto/dev/nx/compress//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/crypto/dev/vmx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/crypto/drbg//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/crypto/fips//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/crypto/hash//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/crypto/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/crypto/michael//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/crypto/rng//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/crypto/twofish//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/crypto/user//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/crypto/user/api//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cxl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cxl/afu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cxl/afu/driver//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/cypress//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/damon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/davicom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dax//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dcache//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dcache/word//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/de//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/debug//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/debug/info//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/debug/memory//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/debug/section//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/decompress//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/default//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/default/fq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/default/hung//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/default/hung/task//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/default/mmap//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/default/mmap/min//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/default/net//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/default/security//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/default/tcp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/detect//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/detect/hung//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dev//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dev/dax//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dev/dax/pmem//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/device//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/devtmpfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dlci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dlm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dm/bio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dm/cache//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dm/log//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dm/multipath//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dm/persistent//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dm/thin//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dma/engine//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dma/ops//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dma/shared//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dns//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dp83640//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dp83822//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dp83848//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dp83867//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dp83tc811//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm/amd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm/amdgpu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm/cirrus//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm/display//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm/display/dp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm/display/hdcp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm/display/hdmi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm/dp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm/dp/aux//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm/export//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm/export/for//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm/fbdev//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm/gem//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm/gem/shmem//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm/i2c//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm/kms//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm/kunit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm/kunit/test//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm/load//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm/load/edid//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm/nouveau//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm/panel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm/panel/orientation//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm/radeon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm/ttm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm/virtio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/drm/vram//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dst//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dummy//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dummy/console//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dvb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dvb/au8522//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dvb/av7110//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dvb/b2c2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dvb/b2c2/flexcop//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dvb/budget//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dvb/dummy//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dvb/dynamic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dvb/firedtv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dvb/gp8psk//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dvb/max//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dvb/ttusb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dvb/tuner//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dvb/usb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dvb/usb/af9005//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dvb/usb/cinergy//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dvb/usb/dibusb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dvb/usb/nova//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dvb/usb/nova/t//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dvb/usb/technisat//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dvb/usb/umt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dw/dmac//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dynamic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dynamic/ftrace//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/dynamic/ftrace/with//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/early//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/edac//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/edac/atomic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/edac/legacy//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/eeprom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/efi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/elf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/enable//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/enable/must//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/enclosure//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/encrypted//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/energy//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/epapr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ethtool//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/event//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/evm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/evm/attr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/exclusive//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/exclusive/system//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/exportfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/exportfs/block//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ext4//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ext4/fs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ext4/fs/posix//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ext4/kunit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ext4/use//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ext4/use/for//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/extra//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fair//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fair/group//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fanotify//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fanotify/access//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fat//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fat/default//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fat/kunit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fb/cfb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fb/deferred//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fb/ibm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fb/matrox//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fb/mode//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fb/nvidia//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fb/radeon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fb/sys//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/file//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fips//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fips/signature//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/firewire//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fixed//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/font//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/force//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/force/max//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fortify//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/frame//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/framebuffer//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/framebuffer/console//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/framebuffer/console/deferred//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/framebuffer/console/detect//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fs/dax//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fs/posix//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fscache//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ftrace//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ftrace/mcount//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/function//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/function/graph//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fuse//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fusion//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fusion/max//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/futex//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fw/loader//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/fw/loader/user//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/gact//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/gcc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/generic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/generic/clockevents//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/generic/cmos//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/generic/cpu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/generic/irq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/generic/irq/show//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/generic/isa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/generic/msi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/generic/net//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/generic/pci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/generic/smp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/generic/smp/idle//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/generic/strncpy//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/generic/strncpy/from//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/generic/strnlen//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/generic/time//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/genwqe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/genwqe/platform//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/genwqe/platform/error//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/gfs2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/gfs2/fs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/gfs2/fs/locking//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/gigaset//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/gpio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/gpiolib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/gpiolib/fastpath//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/grace//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/gro//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hangcheck//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hardened//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hardened/usercopy//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hardirqs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hardirqs/sw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hardlockup//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/has//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/has/ioport//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hash//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hash/kunit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/arch//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/arch/jump//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/arch/mmap//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/arch/mmap/rnd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/arch/mmap/rnd/compat//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/arch/seccomp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/arch/soft//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/arch/transparent//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/bootmem//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/bootmem/info//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/context//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/debug//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/dynamic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/dynamic/ftrace//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/dynamic/ftrace/with//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/ebpf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/efficient//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/efficient/unaligned//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/fast//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/ftrace//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/ftrace/mcount//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/function//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/function/graph//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/gcc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/hardened//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/hardened/usercopy//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/hardlockup//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/hardlockup/detector//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/hw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/ima//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/ioremap//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/irq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/irq/time//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/kprobes//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/kprobes/on//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/kvm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/kvm/irq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/kvm/vcpu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/kvm/vcpu/async//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/ld//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/ld/dead//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/ld/dead/code//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/ld/dead/code/data//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/memory//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/memoryless//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/mod//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/mod/arch//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/net//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/nmi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/pcspkr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/perf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/perf/events//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/perf/user//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/perf/user/stack//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/regs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/regs/and//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/regs/and/stack//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/regs/and/stack/access//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/reliable//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/setup//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/setup/per//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/setup/per/cpu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/syscall//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/virt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/virt/cpu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/have/virt/cpu/accounting//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hdlc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/headers//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hid//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hid/battery//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hid/logitech//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hid/picolcd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/high//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/high/res//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hisax//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hisax/16//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hisax/avm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hisax/avm/a1//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hisax/bkm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hisax/fritz//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hisax/hfc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hisax/max//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hisax/no//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hisax/sct//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hist//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hmm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hotplug//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hotplug/pci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hotplug/pci/rpa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hsa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hsa/amd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hugetlb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hugetlb/page//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hugetlb/page/size//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hv/perf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hvc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hw/random//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hwlat//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hwmon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hwpoison//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hysdn//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/hz//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/i2c//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/i2c/designware//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/i2c/diolan//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/i2c/helper//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/i2c/mux//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/i2c/parport//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/i2c/pca//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/i2c/tiny//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/i40e//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/i6300esb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/i8253//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ibm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ice//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/icplus//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/idle//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/idle/page//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ieee802154//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/igb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/illegal//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/illegal/pointer//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ima//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ima/appraise//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ima/arch//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ima/default//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ima/default/hash//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ima/lsm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ima/measure//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ima/measure/pcr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ima/read//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ima/secure//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ima/secure/and//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ima/secure/and/or//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ima/secure/and/or/trusted//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ima/sig//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ima/trusted//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ima/write//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/inet//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/inet/diag//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/inet/esp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/inet/mptcp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/inet/raw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/inet/sctp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/inet/tcp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/inet/udp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/inet/xfrm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/inet6//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/inet6/esp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/inet6/xfrm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/infiniband//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/infiniband/addr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/infiniband/addr/trans//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/infiniband/bnxt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/infiniband/ipoib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/infiniband/on//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/infiniband/on/demand//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/infiniband/user//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/infiniband/virt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/init//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/init/env//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/init/env/arg//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/initramfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/inline//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/inline/read//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/inline/read/unlock//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/inline/spin//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/inline/spin/unlock//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/inline/write//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/inline/write/unlock//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/inotify//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/input//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/input/ati//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/input/ff//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/input/gpio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/input/gpio/rotary//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/input/keyspan//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/input/mousedev//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/input/mousedev/screen//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/input/pwm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/integrity//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/integrity/asymmetric//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/integrity/platform//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/integrity/trusted//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/intel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/intel/xway//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/interval//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/io//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/io/event//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/iommu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/iommu/default//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/iommu/default/dma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/iosched//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip/advanced//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip/fib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip/fib/trie//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip/mroute//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip/mroute/multiple//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip/multiple//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip/nf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip/nf/arp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip/nf/match//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip/nf/target//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip/pimsm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip/route//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip/set//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip/set/bitmap//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip/set/hash//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip/set/list//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip/vs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip/vs/mh//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip/vs/mh/tab//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip/vs/pe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip/vs/proto//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip/vs/proto/ah//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip/vs/sh//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip/vs/sh/tab//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip/vs/tab//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip6//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip6/nf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip6/nf/match//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ip6/nf/target//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ipc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ipmi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ipmi/device//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ipmi/panic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ipmi/plat//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ippp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ipv6//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ipv6/mroute//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ipv6/mroute/multiple//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ipv6/multiple//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ipv6/ndisc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ipv6/optimistic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ipv6/pimsm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ipv6/route//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ipv6/router//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ipv6/sit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ir//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ir/gpio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ir/imon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ir/jvc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ir/mce//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ir/mce/kbd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ir/nec//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ir/pwm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ir/rc5//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ir/rc6//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ir/sanyo//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ir/serial//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ir/sony//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/irq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/irq/all//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/irq/bypass//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/irq/forced//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/isa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/isa/dma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/iscsi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/iscsi/boot//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/iscsi/target//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/isdn//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/isdn/capi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/isdn/capi/capidrv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/isdn/drv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/isdn/drv/avmb1//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/isdn/ppp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/isdn/tty//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/iso9660//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ixgbe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ixgbevf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/jump//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/jump/label//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/jump/label/feature//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/kallsyms//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/kallsyms/base//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/karma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/kdb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/kdb/continue//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/kdb/default//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/kexec//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/keyboard//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/keys//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/kgdb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/kgdb/honour//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/kgdb/serial//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/kprobe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/kprobes//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/kprobes/on//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/kunit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/kunit/all//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/kunit/example//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/kvm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/kvm/book3s//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/kvm/book3s/64//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/kvm/book3s/hv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/l2tp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/lcd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/lcd/class//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/led//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/led/trigger//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/leds//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/leds/brightness//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/leds/brightness/hw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/leds/lp55xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/leds/trigger//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/leds/trigger/default//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/linear//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/linear/ranges//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/linear/ranges/kunit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/liquidio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/list//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/list/kunit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/load//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/load/ppc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/lock//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/lock/debugging//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/lock/down//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/lock/spin//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/lock/spin/on//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/lock/torture//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/lockd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/lockdep//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/lockup//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/log//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/log/buf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/log/cpu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/log/cpu/max//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/log/cpu/max/buf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/logitech//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/logo//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/logo/linux//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/loopback//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/lsi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/lsi/et1011c//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/lsm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/lsm/mmap//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/lsm/mmap/min//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/lwtunnel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/lxt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/lz4//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/lzo//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mac//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/macintosh//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/magic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/magic/sysrq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/magic/sysrq/default//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mantis//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/marvell//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/marvell/10g//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/max//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/max/raw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/maxlinear//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/md//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mdio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mdio/bcm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mdio/hisi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mdio/mscc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/media//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/media/altera//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/media/analog//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/media/analog/tv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/media/camera//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/media/cec//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/media/common//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/media/digital//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/media/digital/tv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/media/pci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/media/radio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/media/subdrv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/media/tuner//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/media/usb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/megaraid//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mem//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mem/soft//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/memcg//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/memcpy//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/memcpy/kunit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/memfd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/memory//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/memstick//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/memstick/jmicron//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/memstick/realtek//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/memstick/tifm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/message//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/message/loglevel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mfd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mfd/sm501//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mhi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mhi/bus//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mhi/bus/pci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/micrel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/microchip//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/microchip/t1//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/microsemi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/minix//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/misc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/misc/rtsx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/misdn//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mlx4//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mlx4/en//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mlx5//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mlx5/cls//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mlx5/core//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mlx5/core/en//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mlx5/en//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mlx5/sf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mlx5/sw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mlx5/tc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mlx5/vdpa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mlxsw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mlxsw/core//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mlxsw/spectrum//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mmc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mmc/block//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mmc/realtek//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mmc/ricoh//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mmc/sdhci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mmc/tifm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mmc/via//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mmu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mmu/gather//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mmu/gather/merge//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mmu/gather/page//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mmu/gather/rcu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mmu/gather/rcu/table//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mmu/gather/table//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/module//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/module/force//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/module/rel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/module/sig//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/module/srcversion//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/modules//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/modules/tree//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/modules/use//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/modules/use/elf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mouse//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mouse/elan//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mouse/elan/i2c//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mouse/ps2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mouse/ps2/elantech//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mouse/ps2/synaptics//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mouse/synaptics//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mpls//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mprofile//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mptcp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mptcp/kunit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mq/iosched//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/msdos//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/msi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/msi/bitmap//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mspro//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mtd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mtd/cfi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mtd/map//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mtd/map/bank//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mtd/map/bank/width//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mtd/of//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mtd/powernv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mtd/ubi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mtd/ubi/beb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mtd/ubi/wl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mutex//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mutex/spin//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/mutex/spin/on//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/n//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/national//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/need//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/need/dma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/need/dma/map//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/need/multiple//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/need/per//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/need/per/cpu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/need/per/cpu/embed//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/need/per/cpu/embed/first//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/need/sg//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/need/sg/dma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/net//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/net/act//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/net/act/tunnel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/net/cls//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/net/drop//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/net/ematch//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/net/flow//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/net/ip//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/net/ipgre//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/net/key//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/net/l3//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/net/l3/master//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/net/mpls//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/net/packet//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/net/poll//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/net/ptp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/net/rx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/net/rx/busy//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/net/sch//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/net/sch/fq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/net/sch/mqprio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/net/sock//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/net/tc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/net/tc/skb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/net/team//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/net/team/mode//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/net/udp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/net/vendor//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/netconsole//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/netdev//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/netdev/addr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/netdev/addr/list//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/netfilter//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/netfilter/family//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/netfilter/netlink//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/netfilter/netlink/glue//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/netfilter/xt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/netfilter/xt/match//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/netfilter/xt/target//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/netlink//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/network//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/network/phy//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/netxen//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/new//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nf/conntrack//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nf/conntrack/netbios//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nf/ct//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nf/ct/netlink//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nf/ct/proto//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nf/defrag//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nf/dup//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nf/flow//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nf/flow/table//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nf/log//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nf/nat//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nf/nat/snmp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nf/reject//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nf/socket//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nf/tables//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nf/tproxy//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nfp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nfp/app//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nfp/app/abm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nfs/acl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nfs/use//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nfs/use/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nfs/v3//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nfs/v4//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nfs/v4/1//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nfs/v4/1/implementation//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nfs/v4/1/implementation/id//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nfs/v4/security//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nfsd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nfsd/v2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nfsd/v3//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nfsd/v4//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nfsd/v4/security//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nft//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nft/bridge//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nft/dup//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nft/fib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nft/flow//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nft/fwd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nft/reject//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nls//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nls/codepage//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nls/iso8859//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nls/koi8//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nls/mac//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nmi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/no//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/no/hz//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nodes//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nonstatic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nop//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nouveau//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nouveau/debug//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/numa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/numa/balancing//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/numa/balancing/default//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/numa/keep//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nvdimm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nvme//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nvme/target//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/nvme/verbose//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ocxl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/of//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/of/early//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/of/reserved//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/oid//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/old//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/opal//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/openvswitch//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/osf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/osnoise//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/overlay//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/packet//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/page//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/panic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/panic/on//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/panic/on/oops//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/papr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/parport//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/parport/not//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/partition//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pata//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pata/of//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pci/msi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pci/msi/arch//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pcie//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pcieaer//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pcieaspm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pcspkr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/perf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/persistent//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pgtable//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/phys//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/phys/addr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/phys/addr/t//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/physical//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pid//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pkcs7//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pkcs7/message//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/plugin//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pm/generic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pm/generic/domains//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pm/sleep//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pm/sleep/smp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pm/sleep/smp/nonzero//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pmu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pnfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pnfs/file//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pnfs/flexfile//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/posix//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/posix/mqueue//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/power//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/power/reset//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/powernv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/powernv/op//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/64k//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/barrier//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/book3s//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/copro//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/disable//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/dt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/dt/cpu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/emulated//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/have//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/have/pmu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/icp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/ics//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/indirect//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/mem//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/mm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/msi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/of//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/of/boot//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/p7//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/perf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/radix//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/radix/mmu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/rtas//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/secure//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/secvar//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/smp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/smp/muxed//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/std//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/subpage//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/transactional//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/udbg//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc/xive//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc64//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc64/boot//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc64/supports//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppc64/supports/memory//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ppp/sync//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pps//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pps/client//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/preempt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/prevent//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/prevent/firmware//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/prime//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/print//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/print/quota//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/print/stack//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/printk//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/printk/safe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/printk/safe/log//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/printk/safe/log/buf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/probe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/proc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/proc/page//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/proc/pid//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/proc/vmcore//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/proc/vmcore/device//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pseries//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/psi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/psi/default//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pstore//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pstore/compress//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pstore/deflate//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pstore/deflate/compress//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ptp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ptp/1588//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/pwm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/qed//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/qfmt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/qsemi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/quota//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/quota/netlink//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/radio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/raid//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/raid6//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/raid6/pq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/random//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/random/trust//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rational//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rational/kunit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/raw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rc/ati//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rcu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rcu/cpu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rcu/cpu/stall//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rcu/need//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rcu/nocb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rcu/stall//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rdma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/realtek//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/reed//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/reed/solomon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/regmap//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/renesas//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/resource//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/resource/kunit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rfkill//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rh//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rh/kabi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rh/kabi/size//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rh/kabi/size/align//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rhel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ring//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ring/buffer//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ring/buffer/allow//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rmi4//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rmi4/2d//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rmi4/f03//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rockchip//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rpcsec//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rpcsec/gss//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rt/group//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rtas//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rtas/error//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rtc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rtc/drv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rtc/drv/ds3232//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rtc/drv/m41t80//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rtc/hctosys//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rtc/i2c//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rtc/i2c/and//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rtc/intf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rtc/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rtc/lib/kunit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rtc/mc146818//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/runtime//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/runtime/testing//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rwsem//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rwsem/spin//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/rwsem/spin/on//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sata//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sata/ahci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sata/mobile//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sata/mobile/lpm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/scf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/scf/torture//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sched//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sched/omit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sched/omit/frame//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/scom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/scsi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/scsi/bnx2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/scsi/bnx2x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/scsi/chelsio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/scsi/cxgb4//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/scsi/dh//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/scsi/dh/hp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/scsi/fc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/scsi/ibmvfc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/scsi/ipr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/scsi/iscsi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/scsi/mpt2sas//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/scsi/mpt2sas/max//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/scsi/mpt3sas//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/scsi/mpt3sas/max//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/scsi/proc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/scsi/qla//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/scsi/sas//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/scsi/sas/host//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/scsi/scan//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/scsi/spi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/scsi/srp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sctp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sctp/cookie//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sctp/cookie/hmac//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sctp/default//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sctp/default/cookie//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sctp/default/cookie/hmac//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sdio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/seccomp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/section//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/section/mismatch//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/section/mismatch/warn//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/security//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/security/network//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/security/selinux//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/security/selinux/avc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/security/selinux/checkreqprot//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/security/selinux/sid2str//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/security/selinux/sid2str/cache//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/security/selinux/sidtab//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/security/selinux/sidtab/hash//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/security/writable//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/select//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/select/memory//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sensors//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sensors/lis3//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sensors/ntc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/serial//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/serial/8250//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/serial/8250/many//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/serial/8250/nr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/serial/8250/runtime//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/serial/8250/share//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/serial/arc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/serial/arc/nr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/serial/core//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/serial/of//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/serial/uartlite//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/serial/uartlite/nr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/serio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/serio/altera//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/serio/arc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sfc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sfc/mcdi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sfc/siena//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sfc/siena/mcdi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sg//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sgetmask//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sgi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sgl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/shuffle//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/shuffle/page//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/simple//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/skb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/slab//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/slab/freelist//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/slip//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/slub//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/slub/cpu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/slub/kunit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sms//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sms/sdio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sms/siano//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sms/usb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/smsc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/ac97//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/ac97/power//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/ac97/power/save//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/atiixp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/cs46xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/cs46xx/new//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/ctl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/ctl/fast//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/dynamic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/emu10k1//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/es1968//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/firewire//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/hda//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/hda/prealloc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/jack//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/jack/input//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/maestro3//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/max//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/mpu401//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/opl3//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/opl3/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/oxygen//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/pcm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/proc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/seq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/seq/hrtimer//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/seq/midi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/sequencer//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/synth//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/usb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/usb/caiaq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/verbose//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/via82xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/snd/vx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sock//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sock/cgroup//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sock/validate//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/soft//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/softlockup//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/solaris//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/solaris/x86//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sound//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sound/oss//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sound/oss/core//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/spapr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/spapr/tce//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sparse//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sparsemem//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sparsemem/vmemmap//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/split//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/split/ptlock//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/squashfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/squashfs/decomp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/squashfs/decomp/multi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/squashfs/file//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/squashfs/fragment//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/squashfs/fragment/cache//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ssb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/stack//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/stackinit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/stackinit/kunit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/stackprotector//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/stacktrace//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/stream//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/strict//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/strip//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/strip/asm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sun//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sunrpc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sunrpc/xprt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/suspend//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/symbolic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/syn//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sync//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/synclink//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sys//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sys/supports//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sysctl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sysctl/exception//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sysctl/kunit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sysfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/system//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/system/blacklist//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/system/blacklist/hash//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/system/data//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/system/extra//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/system/extra/certificate//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/system/trusted//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/sysvipc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tablet//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tablet/serial//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tablet/usb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/target//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/task//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/task/delay//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/task/io//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tasks//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tasks/rcu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tasks/rude//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tasks/trace//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tcg//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tcg/tis//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tcg/tis/i2c//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tcg/tis/st33zp24//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tcm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tcp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tcp/cong//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/teranetics//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/test//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/test/list//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/textsearch//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/thermal//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/thermal/default//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/thermal/default/gov//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/thermal/default/gov/step//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/thermal/emergency//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/thermal/emergency/poweroff//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/thermal/emergency/poweroff/delay//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/thermal/gov//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/thermal/gov/fair//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/thermal/gov/step//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/thread//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tick//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tifm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tigon3//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/time//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/time/kunit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/timerlat//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tipc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tipc/media//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tls//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tmpfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tmpfs/posix//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/torture//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/touchscreen//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/touchscreen/wacom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/trace//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/trace/irqflags//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tracer//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tracer/max//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tracing//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/transparent//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/transparent/hugepage//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tree//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/trusted//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/ttpci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tun//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tun/vnet//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/tun/vnet/cross//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/typec//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/typec/dp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/typec/mux//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/udf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/uio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/uio/pci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/uio/pdrv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/unix//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/unix98//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/unixware//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/uprobe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/ali//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/announce//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/announce/new//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/arch//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/arch/has//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/autosuspend//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/default//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/ehci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/ehci/hcd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/ehci/hcd/ppc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/ehci/root//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/ehci/root/hub//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/ehci/tt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/ezusb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/gspca//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/gspca/ov534//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/gspca/xirlink//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/hsic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/hwa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/leds//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/leds/trigger//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/net//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/net/ax88179//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/net/cdc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/net/cdc/subset//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/net/cx82310//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/net/qmi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/net/rndis//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/ohci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/ohci/big//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/ohci/big/endian//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/ohci/hcd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/ohci/hcd/ppc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/ohci/hcd/ppc/of//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/ohci/little//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/pulse8//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/pwc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/pwc/input//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/rainshadow//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/role//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/serial//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/serial/cypress//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/serial/digi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/serial/edgeport//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/serial/ftdi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/serial/keyspan//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/serial/kobil//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/serial/mct//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/serial/mos7715//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/serial/safe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/serial/xsens//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/sierra//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/storage//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/storage/cypress//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/storage/ene//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/uhci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/video//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/video/class//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/video/class/input//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/wusb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb/xhci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/usb4//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/use//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/use/percpu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/use/percpu/numa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/use/percpu/numa/node//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/user//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/uts//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/uvc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/uwb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/vdpa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/vdpa/sim//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/vfat//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/vfio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/vfio/iommu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/vfio/iommu/spapr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/vfio/pci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/vfio/spapr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/vga//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/vga/arb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/vga/arb/max//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/vhost//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/vhost/cross//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/vhost/cross/endian//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/video//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/video/au0828//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/video/cx18//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/video/cx231xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/video/cx88//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/video/em28xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/video/fb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/video/ir//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/video/pvrusb2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/video/saa7134//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/video/saa7146//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/video/tm6000//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/videobuf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/videobuf/dma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/videobuf2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/videobuf2/dma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/virt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/virt/cpu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/virt/cpu/accounting//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/virtio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/virtio/pci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/virtio/vsockets//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/vitesse//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/vlan//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/vlan/8021q//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/vm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/vm/event//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/vp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/vsockets//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/vt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/vt/console//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/vt/hw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/vt/hw/console//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/want//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/want/dev//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/watchdog//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/watchdog/handle//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/watchdog/handle/boot//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/watchdog/open//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/x509//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/x509/certificate//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/xarray//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/xdp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/xdp/sockets//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/xfrm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/xfrm/sub//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/xfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/xfs/posix//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/xilinx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/xmon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/xmon/default//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/xmon/default/ro//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/xor//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/xz//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/xz/dec//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/yenta//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/yenta/ene//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/zlib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/zone//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/zram//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/config/zsmalloc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/crypto//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/crypto/internal//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/drm-backport//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/drm-backport/linux//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/drm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/drm/bridge//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/drm/display//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/drm/i2c//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/drm/ttm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/arm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/bus//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/clk//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/clock//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/display//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/dma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/gpio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/i2c//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/iio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/iio/adc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/input//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/interrupt-controller//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/leds//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/mailbox//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/media//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/memory//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/mfd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/mips//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/mux//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/net//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/phy//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/pinctrl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/power//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/pwm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/regulator//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/reset//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/soc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/sound//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/spmi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/thermal//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/dt-bindings/usb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/generated//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/generated/uapi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/generated/uapi/linux//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/keys//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/kunit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/kvm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/amba//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/avf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/bcma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/byteorder//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/can//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/can/dev//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/can/platform//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/ceph//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/clk//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/crush//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/decompress//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/dma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/dsa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/extcon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/firmware//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/firmware/cirrus//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/firmware/intel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/firmware/meson//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/fpga//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/fsl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/fsl/bestcomm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/gpio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/hsi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/iio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/iio/accel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/iio/adc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/iio/common//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/iio/dac//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/iio/frequency//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/iio/gyro//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/iio/imu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/iio/magnetometer//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/iio/timer//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/input//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/irqchip//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/isdn//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/lockd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/mailbox//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/mfd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/mfd/abx500//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/mfd/arizona//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/mfd/da9052//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/mfd/da9055//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/mfd/da9062//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/mfd/da9063//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/mfd/da9150//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/mfd/mt6323//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/mfd/mt6397//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/mfd/pcf50633//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/mfd/samsung//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/mfd/syscon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/mfd/wm831x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/mfd/wm8350//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/mfd/wm8994//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/mlx4//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/mlx5//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/mmc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/mtd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/mux//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/net//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/net/intel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/netfilter//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/netfilter/ipset//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/netfilter_arp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/netfilter_bridge//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/netfilter_ipv4//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/netfilter_ipv6//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/pcs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/perf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/phy//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/phy/tegra//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/pinctrl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/platform_data//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/platform_data/media//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/platform_data/x86//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/power//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/qed//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/raid//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/regulator//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/remoteproc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/reset//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/rpmsg//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/rtc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/sched//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/soc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/soc/actions//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/soc/brcmstb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/soc/dove//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/soc/mediatek//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/soc/qcom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/soc/renesas//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/soc/samsung//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/soc/sunxi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/soc/ti//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/soundwire//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/spi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/ssb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/sunrpc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/ulpi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/unaligned//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/usb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/uwb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/linux/wimax//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/math-emu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/media//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/media/davinci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/media/drv-intf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/media/i2c//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/media/tpg//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/memory//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/misc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/net//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/net/9p//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/net/bluetooth//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/net/caif//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/net/iucv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/net/mana//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/net/netfilter//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/net/netfilter/ipv4//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/net/netfilter/ipv6//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/net/netns//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/net/nfc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/net/phonet//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/net/sctp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/net/tc_act//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/pcmcia//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/ras//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/rdma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/scsi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/scsi/fc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/soc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/soc/arc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/soc/at91//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/soc/bcm2835//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/soc/brcmstb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/soc/fsl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/soc/fsl/qe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/soc/imx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/soc/mediatek//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/soc/nps//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/soc/qcom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/soc/rockchip//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/soc/sa1100//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/soc/tegra//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/sound//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/sound/ac97//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/sound/sof//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/sound/sof/ipc4//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/target//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/target/iscsi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/trace//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/trace/events//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/asm-generic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/drm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/linux//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/linux/android//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/linux/byteorder//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/linux/caif//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/linux/can//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/linux/cifs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/linux/dvb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/linux/genwqe//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/linux/hdlc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/linux/hsi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/linux/iio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/linux/isdn//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/linux/mmc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/linux/netfilter//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/linux/netfilter/ipset//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/linux/netfilter_arp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/linux/netfilter_bridge//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/linux/netfilter_ipv4//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/linux/netfilter_ipv6//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/linux/nfsd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/linux/raid//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/linux/sched//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/linux/spi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/linux/sunrpc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/linux/tc_act//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/linux/tc_ematch//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/linux/usb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/linux/wimax//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/misc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/mtd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/rdma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/rdma/hfi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/scsi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/scsi/fc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/sound//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/sound/intel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/sound/intel/avs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/sound/sof//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/video//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/uapi/xen//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/vdso//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/video//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/xen//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/xen/arm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/xen/interface//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/xen/interface/hvm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/include/xen/interface/io//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/init//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/ipc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/kernel/bpf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/kernel/bpf/preload//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/kernel/bpf/preload/iterators//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/kernel/cgroup//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/kernel/debug//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/kernel/debug/kdb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/kernel/dma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/kernel/events//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/kernel/gcov//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/kernel/irq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/kernel/kcsan//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/kernel/livepatch//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/kernel/locking//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/kernel/power//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/kernel/printk//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/kernel/rcu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/kernel/sched//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/kernel/time//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/kernel/trace//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/lib/842//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/lib/crypto//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/lib/dim//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/lib/fonts//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/lib/kunit//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/lib/livepatch//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/lib/lz4//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/lib/lzo//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/lib/math//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/lib/mpi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/lib/pldmfw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/lib/raid6//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/lib/raid6/test//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/lib/reed_solomon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/lib/vdso//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/lib/xz//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/lib/zlib_deflate//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/lib/zlib_dfltcc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/lib/zlib_inflate//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/lib/zstd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/mm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/mm/damon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/mm/kasan//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/6lowpan//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/802//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/8021q//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/9p//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/appletalk//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/atm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/ax25//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/batman-adv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/bluetooth//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/bluetooth/bnep//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/bluetooth/cmtp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/bluetooth/hidp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/bluetooth/rfcomm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/bpf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/bpfilter//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/bridge//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/bridge/netfilter//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/caif//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/can//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/ceph//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/core//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/dcb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/dccp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/dccp/ccids//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/decnet//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/decnet/netfilter//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/dns_resolver//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/dsa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/ethernet//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/ethtool//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/hsr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/ieee802154//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/ieee802154/6lowpan//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/ife//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/ipv4//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/ipv4/bpfilter//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/ipv4/netfilter//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/ipv6//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/ipv6/ila//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/ipv6/netfilter//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/iucv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/kcm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/key//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/l2tp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/l3mdev//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/lapb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/llc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/mac80211//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/mac802154//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/mpls//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/mptcp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/ncsi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/netfilter//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/netfilter/ipset//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/netfilter/ipvs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/netlabel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/netlink//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/netrom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/nfc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/nfc/hci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/nfc/nci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/nsh//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/openvswitch//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/packet//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/phonet//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/psample//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/qrtr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/rds//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/rfkill//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/rose//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/rxrpc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/sched//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/sctp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/smc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/strparser//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/sunrpc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/sunrpc/auth_gss//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/sunrpc/xprtrdma//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/switchdev//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/tipc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/tls//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/unix//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/vmw_vsock//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/wimax//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/wireless//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/x25//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/xdp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/net/xfrm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/samples//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/samples/auxdisplay//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/samples/bpf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/samples/configfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/samples/connector//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/samples/hidraw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/samples/hw_breakpoint//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/samples/kdb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/samples/kfifo//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/samples/kobject//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/samples/kprobes//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/samples/livepatch//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/samples/mei//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/samples/mic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/samples/mic/mpssd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/samples/nitro_enclaves//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/samples/qmi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/samples/rpmsg//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/samples/seccomp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/samples/timers//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/samples/trace_events//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/samples/trace_printk//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/samples/uhid//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/samples/v4l//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/samples/vfio-mdev//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/samples/vfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/samples/watchdog//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/basic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/clang-tools//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/coccinelle//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/coccinelle/api//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/coccinelle/api/alloc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/coccinelle/api/debugfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/coccinelle/free//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/coccinelle/iterators//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/coccinelle/locks//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/coccinelle/misc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/coccinelle/null//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/coccinelle/tests//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/dtc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/dtc/include-prefixes//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/dtc/libfdt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/gcc-plugins//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/gdb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/gdb/linux//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/genksyms//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/kconfig//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/kconfig/lxdialog//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/kconfig/tests//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/kconfig/tests/auto_submenu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/kconfig/tests/choice//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/kconfig/tests/choice_value_with_m_dep//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/kconfig/tests/err_recursive_dep//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/kconfig/tests/err_recursive_inc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/kconfig/tests/inter_choice//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/kconfig/tests/new_choice_with_dep//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/kconfig/tests/no_write_if_dep_unmet//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/kconfig/tests/preprocess//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/kconfig/tests/preprocess/builtin_func//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/kconfig/tests/preprocess/circular_expansion//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/kconfig/tests/preprocess/escape//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/kconfig/tests/preprocess/variable//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/kconfig/tests/rand_nested_choice//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/ksymoops//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/mod//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/package//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/selinux//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/selinux/genheaders//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/scripts/selinux/mdp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/security//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/security/apparmor//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/security/bpf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/security/integrity//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/security/integrity/evm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/security/integrity/ima//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/security/keys//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/security/keys/encrypted-keys//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/security/keys/trusted-keys//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/security/loadpin//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/security/selinux//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/security/selinux/include//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/security/smack//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/security/tomoyo//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/security/yama//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/ac97//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/aoa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/aoa/codecs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/aoa/core//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/aoa/fabrics//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/aoa/soundbus//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/aoa/soundbus/i2sbus//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/arm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/atmel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/core//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/core/oss//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/core/seq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/core/seq/oss//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/drivers//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/drivers/mpu401//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/drivers/opl3//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/drivers/opl4//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/drivers/pcsp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/drivers/vx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/firewire//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/firewire/bebob//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/firewire/dice//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/firewire/digi00x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/firewire/fireface//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/firewire/fireworks//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/firewire/motu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/firewire/oxfw//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/firewire/tascam//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/hda//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/hda/ext//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/i2c//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/i2c/other//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/isa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/isa/ad1816a//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/isa/ad1848//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/isa/cs423x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/isa/es1688//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/isa/galaxy//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/isa/gus//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/isa/msnd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/isa/opti9xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/isa/sb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/isa/wavefront//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/isa/wss//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/mips//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/oss//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/oss/dmasound//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/parisc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pci/ac97//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pci/ali5451//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pci/asihpi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pci/au88x0//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pci/aw2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pci/ca0106//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pci/cs46xx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pci/cs5535audio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pci/ctxfi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pci/echoaudio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pci/emu10k1//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pci/hda//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pci/ice1712//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pci/korg1212//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pci/lola//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pci/lx6464es//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pci/mixart//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pci/nm256//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pci/oxygen//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pci/pcxhr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pci/riptide//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pci/rme9652//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pci/trident//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pci/vx222//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pci/ymfpci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pcmcia//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pcmcia/pdaudiocf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/pcmcia/vx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/ppc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/sh//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/adi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/amd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/amd/acp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/amd/ps//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/amd/raven//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/amd/renoir//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/amd/rpl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/amd/vangogh//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/amd/yc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/atmel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/au1x//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/bcm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/cirrus//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/codecs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/dwc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/fsl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/generic//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/hisilicon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/img//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/intel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/intel/atom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/intel/atom/sst//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/intel/avs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/intel/avs/boards//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/intel/boards//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/intel/catpt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/intel/common//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/intel/keembay//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/intel/skylake//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/jz4740//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/kirkwood//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/mediatek//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/mediatek/common//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/mediatek/mt2701//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/mediatek/mt6797//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/mediatek/mt8173//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/mediatek/mt8183//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/meson//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/mxs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/pxa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/qcom//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/qcom/qdsp6//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/rockchip//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/samsung//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/sh//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/sh/rcar//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/sof//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/sof/amd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/sof/imx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/sof/intel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/sof/mediatek//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/sof/mediatek/mt8186//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/sof/mediatek/mt8195//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/sof/xtensa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/spear//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/sprd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/sti//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/stm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/sunxi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/tegra//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/ti//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/txx9//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/uniphier//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/ux500//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/xilinx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/soc/xtensa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/sparc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/spi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/synth//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/synth/emux//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/usb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/usb/6fire//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/usb/bcd2000//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/usb/caiaq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/usb/hiface//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/usb/line6//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/usb/misc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/usb/usx2y//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/virtio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/x86//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/sound/xen//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/accounting//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/arch//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/arch/x86//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/arch/x86/intel_sdsi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/bpf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/bpf/bpftool//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/bpf/bpftool/Documentation//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/bpf/resolve_btfids//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/bpf/runqslower//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/build//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/build/feature//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/build/tests//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/build/tests/ex//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/cgroup//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/firewire//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/gpio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/hv//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/iio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/include//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/include/tools//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/io_uring//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/kvm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/kvm/kvm_stat//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/laptop//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/laptop/dslm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/laptop/freefall//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/leds//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/lib/api//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/lib/bpf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/lib/lockdep//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/lib/perf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/lib/perf/Documentation//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/lib/subcmd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/lib/traceevent//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/lib/traceevent/Documentation//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/lib/traceevent/plugins//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/objtool//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/pci//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/pcmcia//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/perf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/perf/Documentation//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/perf/arch//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/perf/arch/arm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/perf/arch/arm64//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/perf/arch/csky//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/perf/arch/mips//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/perf/arch/powerpc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/perf/arch/s390//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/perf/arch/sh//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/perf/arch/sparc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/perf/arch/x86//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/perf/arch/xtensa//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/perf/scripts//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/perf/scripts/perl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/perf/scripts/perl/Perf-Trace-Util//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/power//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/power/acpi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/power/acpi/tools//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/power/acpi/tools/acpidbg//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/power/acpi/tools/acpidump//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/power/acpi/tools/ec//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/power/cpupower//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/power/cpupower/bench//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/power/cpupower/debug//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/power/cpupower/debug/i386//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/power/cpupower/debug/kernel//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/power/cpupower/debug/x86_64//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/power/pm-graph//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/power/x86//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/power/x86/intel-speed-select//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/power/x86/turbostat//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/power/x86/x86_energy_perf_policy//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/scripts//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/spi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/nvdimm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/radix-tree//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/scatterlist//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/android//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/android/ion//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/bpf//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/bpf/bpf_testmod//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/breakpoints//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/capabilities//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/cgroup//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/core//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/cpu-hotplug//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/cpufreq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/damon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/drivers//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/drivers/net//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/drivers/net/bonding//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/drivers/net/team//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/efivarfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/exec//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/filesystems//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/firmware//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/fpu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/ftrace//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/futex//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/futex/functional//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/gpio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/ia64//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/intel_pstate//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/ipc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/kcmp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/kexec//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/kmod//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/kvm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/lib//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/livepatch//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/locking//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/media_tests//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/membarrier//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/memfd//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/memory-hotplug//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/mm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/mount//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/mqueue//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/net//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/net/forwarding//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/net/mptcp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/netfilter//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/nsfs//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/powerpc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/powerpc/alignment//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/powerpc/benchmarks//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/powerpc/cache_shape//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/powerpc/copyloops//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/powerpc/dscr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/powerpc/eeh//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/powerpc/math//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/powerpc/mce//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/powerpc/mm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/powerpc/papr_attributes//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/powerpc/pmu//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/powerpc/pmu/ebb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/powerpc/pmu/sampling_tests//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/powerpc/primitives//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/powerpc/ptrace//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/powerpc/signal//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/powerpc/stringloops//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/powerpc/switch_endian//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/powerpc/syscalls//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/powerpc/tm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/powerpc/vphn//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/prctl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/proc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/pstore//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/ptp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/ptrace//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/rcutorture//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/rcutorture/formal//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/rcutorture/formal/srcu-cbmc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests/store_buffering//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/rseq//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/rtc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/seccomp//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/sgx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/sigaltstack//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/size//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/sparc64//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/sparc64/drivers//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/splice//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/static_keys//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/sync//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/sysctl//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/tc-testing//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/tdx//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/timens//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/timers//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/tpm2//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/uevent//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/user//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/vDSO//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/watchdog//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/x86//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/selftests/zram//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/testing/vsock//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/thermal//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/thermal/tmon//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/usb//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/usb/ffs-aio-example//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/usb/ffs-aio-example/multibuff//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/usb/ffs-aio-example/multibuff/host_app//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/usb/ffs-aio-example/simple//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/usb/ffs-aio-example/simple/host_app//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/usb/usbip//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/usb/usbip/libsrc//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/usb/usbip/src//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/virtio//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/virtio/ringtest//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/virtio/vhost_test//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/virtio/virtio-trace//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/vm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/tools/wmi//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/usr//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/virt//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/virt/kvm//usr/src/kernels/4.18.0-552.1.1.el8.ppc64le/virt/lib/-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mcpu=power8 -mtune=power8 -funwind-tables -fstack-clash-protectioncpioxz3Tppc64le-redhat-linux-gnu                                   !  "# $ %&  ' ()directoryLinux make config build file, ASCII textASCII textmakefile script, ASCII textemptyOS/2 REXX batch file, ASCII textAlgol 68 source, ASCII textC source, ASCII textC source, UTF-8 Unicode textUTF-8 Unicode textOS/2 REXX batch file, UTF-8 Unicode textISO-8859 textPOSIX shell script, ASCII text executableELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=f8527d2e9cccba098dcaee3f8e616332e193b12a, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=c9bb242f9961fd734e08c32c496086077ef7a0a8, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=9c2ee78063592d3715c4ece7c7bf4d599425a435, strippedPython script, ASCII text executablePerl script text executableBourne-Again shell script, ASCII text executableELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=a4c1c42cc2c9c2d2a9de9af106bf76995f6290a0, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=def4543bc27c351ed17dc1e3ce9089843ca598e2, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=976f662c98ada538c06f9bf720355da7b79e7c6d, strippedC++ source, ASCII textexported SGML document, ASCII textELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=39ae3f94d207adb47791e0b20c7f794966652db9, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=ed3df3eb3c0ac6ebff396c7ebb4a8a08bb8e00cc, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=566a9ff539707ff2d30020360ef6f578af8504c7, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=b769a3bd62fffce77f5473f209e5e4ce4d7925c1, strippedXML 1.0 document, ASCII textawk script, ASCII text executableassembler source, ASCII textELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=fa1fd6fab60b04b3250b626f6d13b2e884dfabff, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=eb98edf69277fad21612f49785e57ff0ecb1f93e, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=afebbef999782694152bc33f8b6cdc32b43fb7c2, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=0518df87bc498c1220c224819ba13fc49ca989fb, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=38dfc89d839fe918861eb9618ec1b41655962f18, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=059bb2101a84b22d965b524625a3ce1e07f30c4a, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=d137b9ccfa70f5936ebb196b2fc2924b2010694f, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=7eff8bfc630aa1ef961b941c5122dcc4a9a03057, strippedASCII text, with very long linesautomake makefile script, ASCII textbisonelfutils-libelf-develflexgccmakeopenssl-develutf-8b4c04394e31f109be09a98d92f3612ccc792e36678c98185d14c94ab3238fe53? 7zXZ ە!Ό8] b2u jӫ`(y0S!NSGDnx>WYB! z#XmDPUFySpdzD7 lSdWV߻)fC,g&^6dYHbBu6BejPY Dǻ% "x8Z~Dz g!>+2:Y:p&nAdپov ?z0JӴԺ1_TMh8JB65`;bN*ɑ,QʯFP,`ilyh:tsY?e3$K\`p\VR&nѤ/ M{,%׾5(zBRV2EHC|^t~OE1V?6סk?BU;M,:ݗsL`V%1,S赽-.K1k<0~ZsbAaJh93''ټ|HJj|S`C' I5j⹋4c( N k-[$u(#iĜ<@)E`o!~_^o^Ni#ٍ:hDSbC}Єy6RzLooHbk ҞJ9Fedu̦v&?ȣUWUG3 j4@jzYz s|Fw=wO>#aR x[UL9N.x619y/4nˈ"rk)oٳxe`8Aȁhc~Xm}N;]3x OS~[2yiqcŴ~ ]Pk+F#W}*%O,s+iwz5ͮymex.^Mdj~L c# =lf4n3I =X&L opzG}PS0t؛?]v\=ƻ^2^.*p|''p9 W\aQ%>  u%2/d#)At-C dTWo3"P itu&_# I^ 뻈S-~Gߪ eeh$tWtkh.;[xCdHVU }  KHԠ1F跶zMܡ3oÙgl\4}3s2wn0eg$α wR^I1kuQ_NpqK}\6% 4 =|8Ie /&[ xxKD( "xwnw"g6c[zA#7ꋀ!~4A$8TƲbnRuiZm)!3>p8ǽ))FFA ObwORPug}Gy cuJc:}禮==VYd! %CʃS.ʃ"z,Ҥ1NzqoHJ^;Bs)Xw +sǨ p X;/@3keV۸˫]ۧ8-#ibž*~CCC$mqsDڏNY*vrKϹ[X'zMsDQ1`)QcKZfD v(W`5~ɝ ^U=׀;nNξY!Z+h!{t ,uBt3ޯ9Go_Awc 5) KS)eg]6۶;u<)DD/;[5IE*xMw H>0 e^B.4.h 4*/Шoj4n܅1=m#~ ,炙 %DU?q} hÈNP6l{kM>< P> ~9͖c )8QKaKҨҜg\AU4 g%UWkQl!="zT]%Msסw'Ih0q4o@e]-xf%dee ?0a[T/;q`˧P=&cX =axS14oA[К?E pբd@q"~!.m\TvA5(܂/iQ3vp3If!={^TXf<z.2!ʐv(ۮB/v O?sV)`}8]` #d+= UwX/䢢[ꙁjV$=<`Nf87F2UEbiRz)3'Yf|Qbv`˸d U\eaӾNט1{hTbra:ʯDR;K-s]J,xȯyWnE\9@pjI~k+;c!kgګkTYv%a!رhYu8 R o=]۸K{"*_wHzKp+,b!$mypO:!6c{̻NS*{VB$qkSML6.oח.,=]x57aSI_')= $N\5湩ۓҳx\~2|ُ(=r D*Bh.uq!%JFv&185`MiKK>_#R]6|6|_ԕwb!@hMS%Ħ/87\q3^N,+ Ez@8%fV?r ^KM&P ?ˆMqP vo|I=8XP蹵U' Ғtߠ<hr0ai݋L$M[bCs[DWHK6z2&9i /g5:Bº~U" `}3΋=dR95+A=UN\ ΒiwT/Uru5@jA_m,J~зl"h Eav_.A <eFB\ `*PCnDܳ?}v?jC4Q]u2f,?-ʭ 7aW"i  Ţ*oV|ÜK5DℒSh)yOףfH%&m*D#_X P"Cn!#A +;¸ŎTv\{ #t.-cǗ22aDPSB*VSZ$y1-ZD5z9jc> ,'8d ?#&c""X 2/}jQVQ 'Lk[3"\~/򾅿էW!AeHp|4cM aO..s*%;q$ޫ#10"MSYxTf6;$dg1\ p4\Ƀ) \(0LWQE&Z M[dW܈D /%S1Xb?\WMBS,ov;yIƊ>X5ChT]*V]x[d#yZ6W-B⯍y- ,/a'ҚyF}ŇQ\;i6O0d427|/)Dg?Ze"=vS⛘e5AgcXL 5F;P#֊iʦ@}wHdIC %&9,E|QDV"*yfZMT:hsQltݪc{ɚ iX^$WaxB\N#lx\rQa+YmW{@H;=R3,tPKz0xw䉒MhNW"6:Zs*ZP5s581j,Y {a+hL̛_>>ڐ U/ޤNW ׊Pj{o|XxvE*w+X?O-fsQ+XQYx)R3_SIwp\c#1xU̷|, NmskDD{FIx '!8n}ZW-^ޒyҦTSe2zdWdviŷ zKq,G9^兘ͯDp,d_=r6؈$42FֿA63Uf0382> 浿tzǓ|GjTv{ :$>o9_'8|YG~|3 (a#!Zsǔt)-5BC̈́@iyײ9+K J2txr-g^Oy`G_[%HB_ߓ M;!M]UbI eq>=b|҃~(dž=8x读9P*hɽ٤rޘ=*bun!1'?{LsI<ԗh,fbbzD7 M^ȩxUt2a8&0 vЪ/0FkWUû6  / Ҋ6oXJ)L,PMY\G0l,GF]4YP:8(AepGG0@&}X!`zD=c7X"&|wv e3:kc9~tpYz.VfSJ?ZbKWOK2)Hӿ)ʧaw/|s"T$!o_UۯƠ5A2U5hkY.L2Q\#cLm$鈭݊?A5j2?1 /Q>ͯօ`čxDqINT- yJ?6pW0B$M69P}0Ztds?Vk"(%&.p0pTq6Q7WҦEqJFW(D#gFLU!3 ̶%^MX/؟R?KC$'b}BNg"jNsn?Ffk*Z#,CA>eVzj<1,)PYPs{YZJ^d )PcI/P&=S μ"$x軴 jcD '6Nz#P )x*l^1VxICZcR鞹mSq2Kϓa=KN ^)TV2Rri0+CHF|?&ڜyx%A 4.HP76 MJ?T蝢UXRa4*m]%Wa燽Rq&24Mm_mq:xnDc1 :hA%y5cCԢ"}[fkQ>s:Ȕl-|OP$|r`z8`oȡ[ #^ ؀r쁼ΝوfT~n*@bv)m_zFlԗsaI.?]ω Dn": R!%ҥ6*E+O8cd޽BcUB(Z/TF R.m' "Xj2Kz%CnօE/?hCD]/8g_>ceg:ijm|̏O*52OL ~IUB#.y;*̎4×?ڼ,/0wWRͱ8ZړÑ"S,oQ@>ȚE8!1W;ELZU/а辭R\ p?rsaԑA ]:cvf&#S蝒%jeuGkVfCD!&ZG3 6^{H-` U"lyQ6o{" /J%n7xf?hw$2ĻzYޖ'JCVX%@܇T!3.ax;&]L$s"evY ~W!swnk@UߕXC Ga z%?&^Ά-k 6LunZԫ1-+LS g9~i1xiEx@˞%N&$Q|3Uj܌0@+w b47ˋl6z!< zԅitENȉb%8hSh;Sc7Hz()8%Vqpy *^ ;zH%>V/G<%k3-*BhjdRk#?KIF%@rȹQG%J`փЇNܵɗ" 宣ӬfZz)߹uPh֑&ȠaqO9ZU<ݛk2\Gwcj[$&\XCe8pd!q̌E5==VdZ _,6+n k4e,z_E΄ן{t=]MaB+fhS%M5E: 93U~7*[2B^6s`3fҍzr\K yю֣[QȌǎ ^=s8ﶟz->醴)u2Q3b 'Ȉ9y^r{3b?]d2sCwW:uEry7/lW{'),Ip->1F. ,AٚqHlsKc{,Kz$gq8J,EJL2lp 9qӁ \9>Z M/╇bO3XoRW؜hnAmlxҀ\5M¤~]DucVi+t[#Lykȴ M@&!GLo8mGJ e˵=AWjX?6`IpHY&wLl"@wSϣD Y*tb4v,=E;Dg&~03wUփ@qٚy'LK$ɆsU١h%,ͷd%=},Ѱ5縑~ʻZQEejH]~VhԱ ؀fT)Չ8*L ,A7K~uMȼKږ hdkyx&8g𨺷sx%~aK2n\VcծYn}eY)Lvz(CU!-_TTI:bJFйVsFA,<7GtI0rOa#Htzu|"RV!QSʼ dE0 *`lF0!q48t?r†+=}6fB3b_.â¯*',WD}7<;=(pz3WuXBxR$6sM;7喴\l5YZ=~>+ Gvx#E*G(w}@sސ $źl Q^ |n;n+"<*B/}(du#NrvNMz:EӒ1Ї!檳Ҋ (qi֛-9Zƌ NnئaYha[.Khv9؁@s5&5l覊Լ TG ]&X xu^{:U|-%)J) ƣz@g~ym|ot#p"֩9Jm^sy xMtN$PeCLQ|@VZ[)X%:.$pT/Y͕j]xxfBM-a+־5$wmnN+DsiwجDye.K w^pWpAlFi4vgh!#Q2-QuD&#sNi#&1ZyvlO!GȻۦd9*q$yu}nb>yqF^c(KY`f[4&[eQpfu H@Kk,gf{š܂%X1'&{ϧ-neJ+UBU4WYVvI ҏ_*3o4ݨ5%FG~NM&|c*v~Ѵnޤiml*wհ.6n:KVtdؒfQ% DO>̬p={=hpSщ;=~d+.zTך,R9d]/)\4lӮډm~Z'M%l؃#{()ƧB a cpbz)8:</0> O}RH>,m@nF9,LS*XYQt<|%(p)czA{1s^%ՀWNp^~!-PCJƇWXìJcмZ1r(>cI[=e MY3.uGOS:&tֹIZQLWn6IB&|*;c0e6Ki^")4a)>vlY^K&Xb+cIXoh:fUƁkQsC GPB+GaO9Xn18ҋid?I!I42{+uxm9IU(!W#,Bk"% 1:.j7뾇[z19pGUC{PkxPNN3O\p28Yko3BrR&k~ˉZKOb}=h!8`2`.aETy M/˳qNE6QZXLRBq'Q٬!;԰/j0acDli+>yy<wt*$>-F![4&9X` :(m=^&D/&fx{vz)E%/8*J 1c篟q"Cum(Nt( d54I*xy6;"*X|2)_oy[ՐeB0(!(1:ZͽlxT2DHMw C<1 gz]0rIc&wZ/%`&U+Ȩx*vF2=`tDʽ lU(J]aS 9vLk2pJ cE'cp!k=Պ|\%"1w.c{[뎼HT('A.{Z]Հ|Ȕ(:IEXʼnYjJ ٞcojV:r_5-{{rl6 2]}SG<')Rm>0HNHޔdf8RcNV_b0WMWXç#_ѱ +Q{bE}E:fx>Z$/ᅞ0u"6;>JPHL+14EF$t~G[vR`27_ 91<"p'j5у;dV< Z֌7v[d4'Gc_/5i|%&>&p*noppAIwm BW kjŚЮ#иxciu1-qsi+[ՂNIJݶ{!eUx~SEƥ EpJk0-@o'$UԯӯmApk<8x{nm睅gUd?(@vvs5RҀf06:ZⰥn!ؐxfNLlcjd@VsN MAVI,erc: LbXzzEClJ\jf i3*B]&:3Ҁ*Wh'`_P!Xby5i9eWV.g\5cZ?iBm0$EaJ^[<ȂRg|"NȌq9ՅT~G:6vbgfT~@˪ھw" +J)Ox$`CBw2\tv 1dNғy̑$JEzpUi0r f;LDHCE?s-vk  YY,`8UKU5cV-<7%z~i C o Nde˪'" (iYeE^"~]S֫߼[]aX:=Z9StD;N·cWo'ԑ`*} G*Oaϴe~L$OFR9k;xj`l9[?:ue2*zJ;V<3=Wx&}m}9+e7ύRE_j"`#|uK 8JᥬhM+M}⬣.ڕO[\4(ݿZ|snL[+ꩌpri.qKv&no!"!I>q2_Ȅꭔfy`ڇtpٰ}bIx亸ͱeļ@=O~ܫůT_pVֲ*]3 бdZ~4.?9]v#$׳u#MGhpwf4jmت?'Up9\}%KfʮOkc(w؍rOb$:ۊJ5g}c3cpHT|ۖ* CXMN.;brc}| |F@{<^2Ԙ\E! E\w-8ST$ƻ*w ?@0B|1 4;0>~rBH!%WX/3wS/.;[n>7_knp OKITڋf}ߪDƛ5}^[*DkAG*f`Bގ{es7MJUsެv_tx g( _؅9R,&v2: d`JzG~U{6~|ɚy/Zp.>mXR2+e"`4, gku*vpz(M#?@t Bj;kw%JC00 -@G\ߌAm.ȧ3Nй ЙP9 Aa=b8/A@d{{|!:Z6;/NjY@XhM2^)|)uj[8joL)p.R\ .O!}-V~ '{v &~ضtizImv O(8!C]n3U`1bg˨?u>2*%!O2n&L0&9ې#*jR(:uvh 2(o wZ 4a~̓3`&xgNh![.5Gˆ7lA/VRĿG,k1!̂j=mlSp8ah/խo 6>0,>z_{?\$+Au""v`qk%<i;U>iu&9AS|Vh ?7rNd p%QE™rIՔ0osBx_3T?υɕY5ZTwx Pw<=RP۰JD;\٫!]4khK'g {B&48bNjJ*O v6 K&2,;QM'R5vyByKsjG\*2%qmMoSLR]լbZJX{\H KAȪt^stUbAT _XPMEL-`um2W5DBvN١cj݅!hKN2qGdz"8Y҅S:9wbPj'x:ʖErױA=rw3 zhS &6$JBؕӘ^ހ9L[*w#j ]%,#&:\5̵"noBN1/ Yk/@|L0^㥵[8Ɇ2V>=!*0xb yh tJ(#I+H&Mvj.*T"acGp}2j$ou,5Hy(>ܱe앑 淡HJNRT I:"w]wEz&$ऍ٣e8 ]C^l8RP$rKww#US+МZVjKOdȨ@$rpޯRBԑ*b.WΎyf!畜E[If2^Ta)l02Cm"ۯxxeNT9hK; JNN]97(K%&&11Dv/<q;obw r8gˇ(%_Ą+i|81U7Om-̭. MK^8(YAx#ݵjeJM%F*:Z)1iC!Ks F;d:.:sryuHkV4f]rPu3e* uz9Ͻ|ת:geH2#IzΊP)05$ʅhY7n&{hf7jH.!^|tB <ز> U8I z#(.4Ph}άغMtՈDPP6fEdm;to9?ջ癡 ]:VmM'N*?†7<0(6y-߉+V#jR\޳ KgjɊl )|?I{)Fu@wd m}[J8YGLВ&"0ϼZR)&>,kޏ^LPaSQBE}Y \}-j4( FLp# }ˇ.tV4}cvJ.&|[QԚe^v’.zmu5uV@y[ i[ʻI5TqR|N7Sm3WarXֺ'=Esۯp`LDGÞN@Q/ Eä.E[~\`2]R!]n)"W>"|B9n1G3F[!95TC@a[ ڬ%rٚOݻӖt%gAG/w>\.O2Ot {!6&w2'^P'[DMq*y-k@!\u7:0q= WHgEdG 8 #aLuD*dΉ_uk . 2[`Qϊ"hĠ}*1ݦ)ڻcE% hWg9ގvd"߽rEH^=$@P.%9l<㺮Z`z"N;J /R a널f]ɏ ]Jwܷ{ b2BBѩh%\~>:f5^=SV8_J@Wc 7l)< ņ:}Dye=$ hVz fXwUqˉcj(u}H KrjtUKG%z&+4U|"h_NV f1fS-gXc;]}ؐ=*l6J CtG3I(='t;UM@A 11ơ(J-;Zi> ASu.F3;KMh+Et-Zstq51^(%%|y9:,܃6J_"594"Egܿ#+cT{נDP;L=ҺX}`l1Ǔ#]a~ankBMZ M<˅Ӣ~ maCi%BXyV ytBfS3;"3Y뾽e+]V{i:/o 0V\G6o|QSjaYIA`=Jo|TOӃR3ީHUf]fJWTtΓh¼&~̈́(TK7s6m@pkeW DKoGߢ@ mٿR=驪H9rA*!(K8AqN B} ڕq Λ""gۅܼB̅s9o=2軓L((n=d7vxu) Ƕ[ɔ3ݮEL)QR"?ϽQim/sl:/8@T=goY"_fĤ &R%'XVn߁)9H.[1F<,&|~/B?mfichlW/0oCdBZ3@z_OP!аwyE.˙Xpj.e^ ̿ .$J1^O.«9z cbN!:8 c"drÊn!&ZvRỵӸJ.cVl\/Q=Duv{ v T˪%$qC7LA6s0 )UaDg ʑѷdץiC!m5 }|24CF7uۀt\dj${Ly_Ky D]Q̝b9-ĚT#v%"v1Ϣz,^_wżE(b1qQ7|!#ڣq{6K "|#sS jqM4mBY@n-4V/x1_9t|@M$BS7,J2WVG=]0-#cEc/py1 E!qLz}Aڴ}QVo]&$^ZSsFIUvW΀Qԁ~'q0*=wvue-(S! Q*>ƒSFǵ ne[ΝK!-'0}[#XɎ@A0qܗ|D#4m}h{DZ+IC{EXhPVQ=\e;R+Nn7NxJX-r>iaCFy.V9cX&;KYڂDci 1x;!yj&(8IBlNK05 }ja}JItE~{PA2*yV8ng?/ZLۉ0T{}\uvJ/6 H1JܒC<ݭׂݰ+sf;(=1Sq`{0Wm"bsSsF@e)2A%`O.E Ot'vdN~KjMU߬eEl42x^SA`AK!7N(anJOdXqL7k-b: Fp {9S>ve|bPP͟]9 (~>RX| 6ÿvʲܻ5~dPv={pX;3@" {=GuITyKv MOpNS`-L֥Sug¯)ԙ֫"2c-UI]e:AـaTƽ4Fv~o~pBͦ ̐m ?t:rc8z5im[p`KT/{w)%5+Z{~d&WąVB+둦$ʚ{> xDV)WM4rp/YA郮6[BVjW:s-[YQ:{BM.+nL|qG:O !\b>WBa㠯S$g.8U)I}pyߩG[ [? ''$Lɿ!!Qnw(L~+./U7̎ĉښu~&WUWI/g߭0nPvH<5czZ~h^;`"U@K3$`Zh7ڋi*04ؗ[-*eYD$7/ZoY|EdBţD$qO7u^|7h}$Vyǝ>HTu5&v@ߝG}Օk,#=q/gh\p~i#c]ep )S[#k|$Wƀ Ҽ,Tg9Y:(ECR&ȭChh_qq*YR>^!kWz=Sf}F첦3}2H<暴:4cwmQ9,w|ʫG*`ۡWH|溮mU1aF& P~WAІ\.v ! l;m1.uxڪ ךȾ<8QYl'މ.ʕ+ pe)q_ x佛 =msYSn1o26As}{3bnlv2&qx ]]A?CՋ,h#Bb"J\JysƅԷVɵ?(nyɩ5g[d]݋u۱b]1$, [}Ū+`G$4̿s.g/641A[#|#k{5Q~nCkr`I~e\rfizMN+m$q;eOƒsNh x@\pWB놀!GC]ӣRatZ4.9$^*ڛ~>B*`.2!&lⅽF_}߶t0PEs37f]^Vū]a^69WQ '$S2nZ*VXu16z|C_N`0 MQnV@Nse >:7C:+P90Q7^ k@Ǟle|3O4hT 7'@%Wug7Ӑ' aRӣ-%V75rBˤz!ϭTHC[x-61QoWd'6 Eq]R_siP"ZRŇUs_^_3p}/TԢHɫ7pj@f0^؆t}!tܘii 2M Տ:݂BN9[OvM_H[|: Uc +R,B]vFќ&(q+ ݛ:Ԝq&HWK9 )"ߢ^%m5OהWl>m i%ZAN˒H ¨jX"=.W\αߋM4耻iF.g xLF ׽\"7Kp{raa0&w~;Kqc4z3 e`c3_ r֝(j@y|^D> ړz 1Q_G, ffeè0@cr@NXT}4! uw8i.vx]Y絯;_Hn{;Qt=%NQE~~8*нua+ywɈL~~X{ N| Yz m0Bڜ=iX#{檺3bc=n!oNʡEJmRSH/X:#0#VٿGOJ{ \njf9+ gޅmK(ϳ"F`Z@GA O(=C!R͟*Q|t",3gRsԧ aGN)]l0A4; M/sS\o\;'_a!Kc Ɣ.2"d͊@,Qg|눌’ ($L`7=\M˛.Trs0Ϻ7+k:--iȌtKƺ xRԑJ,j),BjgiݮʨW)h"|qYf[ay0ܣ>b噝48[]FߢͶ !`Nwދ) j/ j_`D]qf#{㸨 CKK WOzb71(!1Z9}I<4敥 3M6nư1lKA~ "zY_<Ѽ^Zܧk=%G3.qN ~tK҆=0뵢K'8'&"48#kCɳ]+knڶª|y_t8m^L}>gAQK1<kT3Jl{ȱ0^2 rf?psl>ʿG :pi. 5v琢oe8N)Jl sf wׅ*3s{ bNTp} oKU-ǜlIw]\Dp6,piە}ɤ8Dr; o~kwqB?j*\o=*< @m`8FOK@- 3Dtqo8?`o{K X$au:T\v@l/xL̲N8(3pߢĺXz3!?w^;kOOZԡ; ^߇MSXL1sr#?[E cDyh3?o5YVի!agh3)5[YNqPA0pa^_6a^ޙ䄲ӎ2, SD_ȐS9R &cUrbt)ӯ5o fnu0{xq!rT㫣VlP9\ Te?:л󢉈.\07Fe~yS֒ UBG;s}JTr>FMR{ R_LVv uxӣbXA7V"MS\-JO6u[1.؛*{#LF/4>(00'A$z.1\h]S$ࡖs@n3ob8 jkg8,h=詁wI+-#Y_/ ͐Y mTЮ9`QpJz/U3cq5e(q]"?q?Lme8cCi2aS>ʕiGu{IGڼ΁.2LPU})S}ebPӖz * vyԆ"G"B瘂se~xWˣ8$YB[6/sUn[(r{Xˈ s@uXÛH zg"WS;PЂ@G$rQ}o&s "C+U9n G2R6f뭓צ݁.VfzV \2^/}Ьt"iO9x斜[$ w\@n)t؇k%]Ni|$~rJ d(` p8,'O];B]40'F4uÌ,+ug *Ѓ9z(TZW#_“x?wk?#ENUǂ) Mg~W7c"HMٞ)' h xl'1U*vS Uѓ&iGm2*=ѧ@曂 շ3S(U@+dZH@>ەD#>T{ޠ| Bf~ 4=ȱ4@iJV>l- X`e/f\<eߡm' %RM$l#﷠EƒI 7.G@ִCIs؀;ri|j1.y+qus)4Gaf-jOqAqbҁ)<50Vu|G=ƱNe=x{U:T!AV0($f=!؄S, 9'Gu,l僯,CAI?\B>t6JWFWicr&֝ )5w+s"M #GT %<@eZ)Qd1r[vRP p4I %=^m͊8gL{DDC2u}UFa[W/_75?=Ò1P]8 bg v;7>9 gRoFg:HHiŧ(Yos3LqvA*in(RE~tuʻjLrO^{c[~RHMyp\1/Kh-ot!A^:\ytނKN8lBƂUdRfc^N-njC•KDDS (nyzxTaŔ[vgRD$(,.f_VEvf@Gĸ)% ےX48YuqQh.[YJ}̓p^Jw EP@ѐPT~Xhh?\~,f/%!lQwhv(bʣC|.2[b6Տ.;u9]%H4P Q z}=aoVn׎w/m?vqb=v0aCb%0ϫ@fC3ijFpYȈW:AV{2Xv;nMuGhQM&/0PԠ12g~j{KS>4y܆_ ݥ!kRhEFx2ۿURRG`dBTا+hEoc}ֹY7Ҳyݺ4(%~WNݨ;?ITbmp 4'uY'8;ҸR_ց(SZJ2y NJN0M .PghTk^!d IBJ4_a$児=ʀLX 3Gid]">1[u(t97`RH{ѩT5g8+N{ KtaB /.-u1~I;vRcMY/ė1/d n@PYru_41TGg$l@G \C,?H:1`hM(Lb,~) = -Vb=G5K n%pDWc)PB}u=XtP|YQ깑w b/DZ֜$n< VP{U\u9<X*QvX*^/" 34cq4ֿmvOlJygM`ʌ}gmX-x=bS|B i\`B< r=uX{Ƀa` @{gS5Q؆2!^8r5n#*f^O{Pk*FY/a/o:+rjmAO$P5;Լ^OC^TRx'bTYLHttB3VdO6-53{RT8TMH)ԕ(rdGKE Degԟ.*{;v\p=ٱ*z 'h(cWB6-5%=4pݺllZ4eVC .O;cRnaWr'[ fi ܙ`OQg8߱)8sVa;)e)*S:XlT O K'K{dWM x& ?&4? w|ҩF !oa9,u4c[6k@-dz/z?/ )&u|GFKöcO &_ l[@2%+H "[V.e&?! ɐlg_ m޵5FޒGM%:ƞ? ڪ"7 ¡{LP0Qv2?ޓ1zN}e\W #nOF"$ӈހCi($[H&X@SӂفI˅"0?\{!]Z߂FF`DS:Jdɡ:]1zu[]y;*9CMg4f F_Lg![LA\pܱ?,vV#/a%)=9`O:8KJq308!AX{o`~z|$J0Ak//alE, < `܏[=x؏]r#BŇ~$w*f^x(̳D1Vn;&.qXNDA* > ,*H`5RL+7hC#W{7.\*R<niWů. lU)^M"8L&3e R)ޛ3X`:m˽F2&C c. n]Aj{~|bJםl,QHknw~sTщ&0Fj"*x :CڌԂPa- b+Pl#m}nNW9Z6MJ!`/{SWMO(d>d. J('i58U=K=RiFgXR C>c d?{B=Xlcq/yԕ<&b2Ԓg#/`Q֟^gouP‚hilݿg8' Br|f+@ -5*dYܚ EMe3ۋ,OJɏ+BN:12H@۸I։e9뢛=t҉hZ}B X.2`R,1Ք+- _7tV<݂p =}ᒒ<-ҟ s<0B;oP8mx\\Xie(Ցd(H@ OP\C:WenJ5 o$RU4t&L"ޥ ײcZ &;M NbbZ I6sN@s7F~vN}@3|K/fZA}&>S`u4>:tأ^ _/T\2̹Jz@lfz"vR~@\=`kGOנC@ě۳tr8ģ'9`Ih[ AS|Ͱ鄀@pjbmeQMZ]OB] ya7ĂMҤ~?PBoZ}>*~0|ԛǨdW DC0mxzw4UixҢ`ZYjQ F uW#OG6;xw#Uln8;߻13!Z3YDȞUg7na,ưLKNu>w⤹]▜gbhl]^I;gzX4(AhI9aI++&ט7-_{(\ϊ~~"AB8T>WnhЧ7,t`BŮ Yq!vK-̈9@ip쵼y$&a=FeLޒ.df\_R#У2+ ΃l켧$|eWqX&RɁ/FT)s C!HqeTa?@\l[Z(}94)'\01']WNRiSk)PZ2V0DS((/1e>:+u,_dpɴtp:[{jB 1K3sKËmZY)?x(όp綌$t@g;Q,lsnӳfqT<;Ԑ< Kgg]ѥ3C/&rнE:UzpLeOJ(PCf(553su'o/./el %SO٤u9UT/6)[áL'mQIv8WMm'Qezœ defg+qcBRYcP\],Y ~Qg Yn. |T45\;(fFO'Y9ZT{u'0 /3d^ ``C~7!X?+]% Ypri|äݪ:'k˘|~#|{}`Ѻ =XBs id(f){.X0cv,;'?qugy|+۞mʘPЮJ90xH|!8ɽ "Mfѫ@2|(QE|ƁC$T Lzs pP,wR@(\`s+ H=*_' !*_N60Ec'ʛZk#`,S6,Zڛ q5\BVs It&%+vo;Jㄑ&ڛ6_gDZ+࿻=K`X&_@mROdͤV5d%tc&~ K~z7۷ ~;b ǤO_}׻@ gҍ?r>hSwZ74I6) 2,Dʵmhm:A]bע2iH"& J~IuI5-Q\r@Lgb=2e߀QZ8g6*B+Xs\hGv5RDqd;DT,j$=^F<cQQ vUm߻>#,- Ts[)v'Q^ozDvj{vK wFDտh<c{No zI4LQbimvq61(F{xlp,-_r Wk(R'xx zWST9|} :.A[:|="{ezE|bтDnz]|1losMjHA㕯TB & 2+Ã>ԛnVT !LA ʁ=wJXR[i\Vg xlМ`u-|SrvWj]|rYEn֑NHPH8zwL9 ^'FWۻL llZi2 #z:|tM.PO^wwsP莅] 9OڡNOP>5z\AӨ.ٕ4(]Wc.:"拊w3Ě"C$g&3C* }W.ōu5$4.N6*3o$m9f/zN-6P OI fR h)PCz-w X}x4Js0iCyas3]'y[u"eQ@7`//g nn1X䴂`F~d8X"X`$ '` ~=I>˗S>gɁCWS'\12~OeP**oߠbIޗ֯IT@c=@Η$VzEJr|9$I z1?pr1<#^j,"Q)/"խ?K^oUܪ֜ZU-8!"CKľmYӢUGO2SX,\r7 (6ԃd ZuRvkBU _fmySGyhb᲌3&(Ԍg]㻛ἷ{kl;hqw^9180Ձ26;\=ەc*Lp?&/Ss#i!O@\w*vѐuI85 E`tT"gf m0 6$0Vö +mAN]14cA*%xO.NK3;hݘ /1&烵i# S T+ _ MnG}B2Pi3ƒe8-e pC߲X޶Xg<*FEtij>yYy%3(R*<4|,`lZa f,UL{Ƒ+yr[+PRM| L.mUts %!Eۇ'c_Gl #rNWY1a=,εWx:h,Gܛ %BΏr U~4 {H4P$AsVe E7flĨ$I6<Md60~pW`V,έv c.Bu2jtcj i.<HDŽAZq7EsZ1MTs۫xiIFޮa_p=B_vҼq(VXw NJ;n)Q`&tûD*D|IhZuoKf(MJޮҨ$΍yi*$R/"ґsPu]EƑs0I@}5˨EmOۻUƱїQmD5PP:߄VZr3#EG8Hߠiv EJH *iz0-I{M+ ^XǘV" aXTQ-yE11x>dAk.XX [tmSKU&f[nKS a)M7LM3RI)L~ LtZ$Hh7?{?)iiL=-LϹ}7#{IjptehB+A4?yyr]% O|Y "){!7%K`t3r[g@ʂ> xhjfDsq t_Ea"U:Sv"Rzq9G7wѲAUI/y [&< `|'JEQ A{4U%q}z< \6ZB- 1U+6}`AՏ$N@s$uam3bCAvv!*8TsGJǡcmI7U[40ogg_=xmSmb=lq5XvnO>/6gu!A*1/eC][]O~-TXq2g%W:g|TY6 5t YT^}ꇰ(B'qyV1aMc>Is]̪O+O^ ?7HdgSqcᮈH˜Yǝt,  8C K+p?^^OːǚY .߽B(`Hj?9F[2c,HG@e}=OL 6yŰɸ I,aJaUz<p$F?Ԡ>1R`]2>^Έ;i[iTJ߷TS,UiցsYS[ 6=nQ+Ku`;!q?7>?fU$paUʓT2j_.Dj߆ HR2jyGB&ґ~dg0bɇ!c=lՌW?bH.;"_.m4p[.ean^}&3u=,[B`Q Rv5fY-'vhwήmERYnmFLhHd~m>G>&YJ~~6Yc}@5i،fFKӤ_vOk& )S\4}~zSE![EU2)0q-Au{k`%VR3Eg=j;{kxs+Mw97WNT&R';agRDvHqz(Q*gI̾|vaLdW%z/C<2l\co*',њ[$U@mMӾr'^M(futp.V\O`+2Wsh&3fQ>)(AkX%X8Ψ5oIBQDAq1Np2W 8 {76"7M ި[w{Wғ]'kN=[B.I>MiGؐNf(U`9@17 9w)D|u'_YʲGn'YVGf}^Ss$4aq<:{WA49iXpAnvqw⬉Lb^71EBeJ7V㽣ETZ8sW(VPj‰,$_UfUݵz-ØFϵ }X, SQi$1Ȅk %̣*>my/@ BwE"TD V|\ ABDLGK}09?3<̫5$u+X#=5lep`pK(@bsE;B=|[RzEƴ'-{:p6=D\;`Α?ݑ w5'T96ۜu,ZIrj"䰣[ڂf:Fȅ6 *K\?L^83ܦ:&h9$鰉Hyc_Kdn|mjK9dU?Q5">Sj1AI)UE}o@-0f@=kO(J ϫUU=ͅFj_ %$ʞH[Myr*^yoP0<ݮGHbš p`CUwqOUG9HlGtž7wO>4&L-?6 &dr8E&hSyt8T:r{|'#柿}mk\A1J.}()?<*{Wg9<^# Swۗ ;sߏj Pr)ÄP&`! 78sU؄ E~roYIC`D-jxM8-/P.C$C wyȸ-yNcNJ'Ȥt.k,ml Y6$2 F =4Bq{ГGs&$hp( ni[2SKu]}J9|o3P·LK(%NشF.W;w-7#L9iwDFF]8`/cV^.p 5N~ݒ6N N)5zsJǼ5;y 7w-nOjZLQFn|M~SaqpåFr8& 3D qF|Yՠ×[;`vUש")o.۶ّ: 48>-PtN ; t(ڲ,S-_33,r 46h2ZiW"A6HrC%l\T:բ'n\<7|I_% X11Ď. 'kͲ|_l7S's 4 St{ ,46dFy,>W ̻ó759+ }%{4^8<1)y|@C?2uѮxOyj-t&?)cF|b㧓ޔȾjw "*Gslc T;P^C/6U~_X'}TM;3Qﰵ08/6җ`ER:@r]]Ay檗sU%Ưv+ 8E%`-RDPŲ9_kURN ]ـ>wC  V2j-CE;ƶeG%Bt4LR4̤C=Qw.朼A5W/ S-Bj n2He^WqIvBVL]}imSa=R#7: TPȏ 0IW)   eN}7}_mT^##-rW1NA1HX{ѥo bl\ BťBݭ) ҷkPf@;~}ڳ@[!x-\ Ner.3o%nqY'Sϓ$кS0Ӎ4BMj穖 S p4N`~K4oxG uwsΘk6pI}Mf($zAbY`X6spON]*BGZ)`g3ZNC0 "]rͼF2͛ù|/iz;EyL"Wj,pFp%s}{bmPݨVbʇZ[h͒@ A/$F.m~ju4kPucp^dfp&kݙ=9ҦY< t*;<ܭc\\e1~ީHrM(ηA^\Lsq=<2,S}7R!$]φղ wIc ]n<_ 'Ny0Q$&٠?|mս~@sLe\ipBg(%c a/ʿ1]_IZ`T02qS<ؑص}xFlcXZ4M/M3gjᑍ^7<3Ab&y^LsZ;vnefpۯK~چ^|N- #oB"˄CrPR߆M5Xyr|=MY<\aM#1*A7 ~깛-kEڣb&Aߠ[r>&yB_uh=N}d}Z7+T%v4(0b&0^g֗4v3P6.Unxo1k\/kEIpmDmiФNyOy:[Wh~(&\ȸqnY[loyP`*B`KTxTIug2śR`@@Ǒ"jM\~yzYňcibO?x -o5~(t%Z64a"8qd[q%)N;W/Ԟ}"M<&NT~}y9]iV4d]8Ԕ/$ . 71:2>ih.#ĐD7Jt5D}УKZs!H.|y"="*Ƥ6ЗQ{)PXUf+uE2e `V*@<;wO 0e9+{Knaqߓer> ?oDhQjoV3fdzi7C6o3Iy0u;uP0-aJvg۠^Io9 4ɉMED%n\~9?,wzqw3w9GBp5(ס T̔FPup5ݨ?0P){$a&'uVU%)k{"BkUw өJE"ikz5 _n⽉m掏psYV\rS٦sq7aK͹LD&hf-!sgrź, R0y0r`ohl-L+ L@6,פQPI+݇[Jwn>c˃cqRaH^{U^T-+G!T_OSe0+e"]Ϩ?9,M ")#n=)?JxmMI>3$&*A[(caYn'<Wn#|@G|=vojGSHGQ!ELhlw(؉'=U-Dyb<2[ͪf/G9Wo񄆆ȰeCP=7S,ߞ褐D3V Դ ( T) Bs_r>R$ a|z K,Ħ]Q"ڳ&Y@C洢8z!B}j|6:z,5;%򱥡Ȣl9  0k~&(C2’ c3[$/QtVW<'J:cn(|̙6= (it#.߷3 ҹ:1&1C]Cj`aHMk7rٲh%^.vQȱjseô6&CMw`_`i8}x<>!V`:X(g 3@#u{y|[*Κ'[<2GFx$ rַИFVi1wfTe7ApCT , /wԽF3"2{D&zS2cay c٥E]¥cv/ St``]y䤐OmG6㝶Wx]yr"e\, CPts |5Yu9[y"}4+8(tdGe(*.?%#-S%aVW UWn/CQc(0kaSf0pӀ}S%kv]qg7 ܤeͨԶ](>B5MHpGw\aC*tlz|="{/ه7ʔ6$C!JqJXTI|LΏW | OcL |O-aޓt$ta'ύlKZN l.aձe"g"eQI  AN#(52wx׆G;[!ɴ͖9 Cu41*H<Ϛ}=BY8D:<#rD8ION_ߞߪVӝhpj/a#g0u1v AĿNCӁZN@%vա (,P-ol?LsOK#/`zv ]7[8aBh leLVQsUBw9pj/sb4BA_72kņ,;sSJ^cy@!UQwj#e0EG:E|"ÌY`ǃrɫʍsy[BTmut~QKornAzҁE7)mG<( )Ԋ@W󃇊Ny)>:GLARaf[{~&"u;HUuD@_!ܚFT}Q܃"sgpQ5h轌۪S?u5JS1`,*?36t ?m̡}'vN= iW08 ^FykA~ 9g=*&[{)T $݌ň.Yҽz0 m\/eAQH$Cc֣ _8鸚,^EO19[zIjYB=|E1 JPlZ0cloá_6EK%wў]o p"ÿqqeɈ&Qv/s=E䯱MAL8`];ý.R`1B⚀dzEY|e'$CP(Y%p"qwD0B*GD:s[8][P[e[t;=-ބ8=L6PV5:E"LҸ/+욨Ӯ z\ĻKA3AD| ;KlrD-'tt7ҾFSsޔZ TLFh$㽫AbmlX0uQO ˇm.$ o# pw1FSI `aB&;Sd tkfaR^eU}yRt)~0Czl@/vlCՖЄ-|áejPa&,\KF&?}fw*r+g~QP5/kkۦKMc=a.bMW;|9 m$R|JbMIj*6!ze. pj?;Yr36a4w5.O7Z|V3ŌTR=kSGo xN6LlG b4ı_u':٬Vg(M1:3ǠxIPZ"ZO)VYR$wH4`8i UhDT(Z(lEnZOsIғ|Hy}fk{eG!O\M8+WA0ڃ)tPPH͜mAvg!SLVys)Y/=eZCC(\TހZ{>;-~RG@.{U.)x{W3Ёx=(Q Mgdmi o77*3txAE&l:1#8xpS1yʗPHMv?D+?[bԿoU.1?lî[6Hc5w n aq79oFRL$?-c D=;79ïLVMl)](A>c1'*`,i ?/ENUĕǫvOv>YԿз1q2(=qJ0}6Aj$$! FV֫=|1uLܦT()we#*sVSƣ!T^7nހ=@3!v,@Wi9z ywF=X"K횑jmQ-ȴ@&2p<>Wָۃ[MqVs 6\ת&mxb gt;h_]P.*枛#jYz0\u#S1J;ѹ YБCQrвeU99rs)fEQ7y$GW{jՎwd) |oP6-@#<}"4AmxS?+N5 e/>mދ1:;UPS/83 Fp`8?݆l N])r Fǖzm=zx+y+P6bbYXhdm-M*DBVfg' F5f.obT? N!enȒ=A3Wwb u?h}0gdCȹ2ذ>cB& %gѰ'jY b~ؼUYn@^49>T?CyPj  4s7lWc2+KA6tXXOx`FͨĆ<3b>#- dԸXNM!0cg-"Obâ NBQB+}!ERC^ >.(2;нca [,C+e9; 4 $Y@ Ү|&R҆Qf!&XgKrfXO$v5XL7T2dIAcUhB~Y'J)qPžDsݩOUުK=ނͯiHu 25 *Ov@".9U )VbvPt|Z:! n%з95*q|dpg /ޫc5JvqZgKa_6 ۞$Tγʦx }6coJ2CR @{ я^xby˾uvݯzpz" j'f(>B%sJ*K0[fКE3Z]roX^=Z^oeQXVR 0Wl66X}!2hFKGw_ DX/f h[2c.y{~Z3q%_>A2Ez ! @]L0ЇB8v{8xOwLmT \Azjpʧgf qmR?٩„^V8q Kc?ܑJs8EƘ./AtEa 3i"ܽ#KZ2T;`EP^!)k'1]ٗ5Eݦ7~tˑFi@4ŏDf-mW_dJRbΔE+*'Bȭ_Ό[u8\ӉȥdiE@(L8(-12` @$!nQ3{g![>6+y7HZc @RH Uo rF{R"(%䈜̑̕X|AMwo;3@up|Euw 3q t֐_G5Bl{ Y2 y1}I@ϕCTA,P4?@D4J1Τg0IFfUq&/ F'SqU̴6  ~?/?(۸1H A0LR' RopFmOvMջa `fk?L)Mtp䉃\ (vwE[{Ee7|ј4({J\qk5Y&u#mw7J8p3=JXwc78@9Gvl 5Lr6|s@sWy6Sj""kRzV͚,dP1,IA,;=>Sqv]Z +ȏ$E*0 TNxeS;SN t=D P|jLUy ͜؈ xQ^]Yc?z 58S>0-^UI2䪼qPcͪc=ULUWl&K%3G#]_qd*Q]]m{W?E:i`\CNԞ2,A{bXx 4䎞4(u_ߟ:EZzlh!OȍIškPgX6h /lOf?ՇEW <qݭ^௨5VfQvjU siAdgWKgB':ю~pۺ`*e#<-?'qGQu%W`R }|d`exDwQՋ =±*w qF_4Ț /ї 0rԇB9jL-f{}d.{68[T s5]sR9VajpƒRvЕa.P:?2hLGµT\&U-|/?$d V(=JY6V Na-ںPmSn"@2nHp/+ޛUՑ&?P&(80O9ll-֠Kˎq i$]f9gѝyjB|.z~8;Ǵh]=؂gn!s1N€PhEĀ!Y|ϨK#杢{dFbm(q˦lhiE#v&AWM ._+0 $uc?7K0y&sM5:JڅteaO ڐ 6U; Ev<72sb ʹ'šj%;@po tz3puNyv|-STh)FE=,™<y_VTʰMсίN_C%Y0|Dʊ6[L_jeEF9.]EPmٶ<t^F&ьso-h~IM wfݓ}PCCȺJEQ`5D<=L<-hէ ћĚ<{Tu? ktT0p{Ado4YKn ;ѳQ׌u4R`MNf)f_@QeC#]WD =vBKG}aNԸ [@^/+>SV.Jf 22=rH$(nj-U6xlꛝM\T VUh?38ox$˕B +L~Q U2dnFOlaovl8lv򤚷 ڑA_c9#ZJm^(8֪+W.m3|wJԙ^qHXЫ}3ug wpdFN>@ůLʮB:]wc%EjY\cY(K%?Bp3tdeЁhM(0+ϝXt?)} ^~[)K'.2ԭ 9˘+ێsMZ&?4@ef1ܛM*Z,ޥ=Pex%k2UQIlU8n>:[4::Mèş:cJLhUt0oxUhX-b8F'>,uI Ģ$G$,*nXmw])tuZX37Or-$+l`V>af.E|QhX@纔m\v&g..˩UPQ lM8IC/)CO%"jcn(6$d8@&~ TGrl6AWQ9瑽㞦n6ǠKv;77Ҍ:7KWl0j:Q3be}х`q9x"iM! t=jv&E/0/NH/l[o^BsIg3&38 U\ -^}= KF!A,bvum!](I(?":2bK_.X3nu7LgKڋN+>8S@Vo/\͓RP6& &ռ'BqJTՃT7uSCK(^>"mf3U٨ 0}mҊ-OL+$ljαFYiM땃)O-O\94 B iz"\.ɿ\pݪv߾PCrZa6,y,A7D`HT ;zc\^JRiBB(e@ uW9{nQ%Q!0XPrUlkpk K1.8\J W*Wע}q [_33SeLȳn9?Onj>PC[[ T[* ,,:_gԽ2_ y@0GJwZ1}1͚3* jfX@R+V v/ڿZֱK*꼨Go5jFa `zT]f]e+37oj;-*-x+dhwdo1Ҵti7.1 fdZc ksAﻚU1ᦆhFSc[iiO~jߍDB;|#P,ҾZ%Mhl ajrQz`x缹kԒ9+<0qƑAo#0ߪLO,WB,x]!EVCӫ |7-\h)Gs2Ƣ{o?$ jĹ Cu^͝|(\狚j(u%I480+JP&4k|@?V ⲼԜT>*REyE@@[U cgœ%oϵT> @}L.k$H\ xl7O)U&qmUgMxaѯa|:OucRQp ':? Z&Bҿ V4|*S (=sg%~c̈́*ۣM&;[DD{8(T&"g;0/wU<0=4D\|eL,4qDW1fCW8+*~Avtjk.+qMQV4KDi=??<2[hy8j,@f&̻.D,(׵'_Aw!?aoYp)Ci6b2Rex蝪4k )ey|>|cyT&w4I[XHYwɔd oJ3UT%wP[%b$2Oa8~[;t1hR:ᝳDq#=?S qUE`qza4DG[Lw٢E2ہ(jj mRn7OQ& ~=Teg\q ]f[ Lɟj+*ima 39k 4kD D!`n&-w=8Px/=Qb\(!`Hd-[W Gry"11IF o&&jG dU=Vat& 'Mc仴߄„dUOB`0 -抣9jG0;'~㻂r4OCZ~,k*ܝ` ɫ%  KVFa%bxZT~0qؗ%Hjrgﳦy]3?߀C.О!ZNט{Z9B`uMOd-[ UQ#A3MqF_&i[#??oPW# =(&xkFhI1EBWӔ)GH*gx?w&* :dL=DwTsW&ŸPI]ׇYwKeEq)qW7 |TB+2|lrGRU{86CjB=N.h<Қ7YUk[5Cǃ848ʣtQ oD'.G+N Iegl57weA=sDݪ\ .f,&8e/K|U1}Yymt3|/=S!4ntmVˆ0Ss$oi,*h>^f܋qNp 6_ơ/nY pWVVP.mNsB1xSEC^A"bKXn>l)Օ0e,St,Duڮ3@NS`1٤U)ّm&9HJ:0ϼR>|>Կ#*&rEu>kc@luԢf !C2R@F6Oc*mb|Se'.`BvfNG3}`B1֘ny?0*U6"cIoWF}q2>EW] |PM|ɁX$NfGHfe-X`,#v3 d{JcvGl|gBx׻;=uu<p WG~M=p-sY W 4ǂ^ SɰD~=2]F|ň8!\l(2JlCi%ü1|.rw 1t(\`G>?e`Y|X";c!HfЊ%}R8u6o?s`I0'r(h@$Q?!:CG9M*XX_@7vaslٰ$|x؜8y&D^:ҚkzL#y\9'{G\^=0x@>KvǶDẀye%;hvp1 ٦M3__"%֚ʥžqQ&a#,3> gY5'e~x=0+,_ y&&<V77W7(at(ST+m-(nYrշaČ cL uO' MipnۑK{ $m?`g[ |3)A{Toʛ _mn~EcM`,gRҼRq‹4ZUby Hdg܏D!+Ou[+)9s646 Sֵj <09ܒ-K΂!˖^XPK|]m:.UЫ6*´on[_K9W ~o׹=VW sz eOQR++,E0f)#Wdu7J;=]bVԔےV &N&8is[z m0 kU`$r "Lgn׹ &Xط5f)8ؒ5jg: =xK\|S] kb6&}62Xl7ϔE2.ClCS+ǯ&!^jWjza5ֻ_@14eZD,_#vcbA:~3F4y]p].aC`]qTOMIT66[U|z]jf$;hTB BIBmN&M]WI/ @y1XqCO ̀`DD|2|3|M$SBڿw[%(Sel$'d ٴ{i$#V'X蔄ǝCPC`om¡sld = ⛴;>@rXsQ_,| l:oR۠)[T9#(FhF `O2Q./8`Ws mh}uXtH H3*07PTtA92'aND$,KEe"ۅu\1OMX w?BRtN2ލѬu s78] *+SZ核 OvzI\BU q6Lr<35|tGҡq-C)42娍䈺]~jfubSpY+|d{)-$Vē K+ uVP(^l6LuS\m4LTޡު,~̙SphH2 n~Q ~oAgwzL꩔ڥ>7i  ipE'TP F49 x8o^䁨_rL5G8Hͅ +Vl9]5?>pE04!N?͍LQ/4:Lm*y͝0Tb-/|ai ɖl'+l*+ļ')3 fW_mcF ǂ4qn.Cj5($MjT5o9쏑 |El;A?>!Fӥ.?K'e zʷB Xz[PJo`r=N6" GTy۟KsjO-ܴwxOg`C_vy a ѓMӹ,'Y&ʭFrK(CO<;NT:0,۶/54 [H@uאDM >34˵dJA]EYndpf.$F-(*QbpI{i%"P bm¬X-} xB!G%D]=f76`YYU9aei^a!CD>95j2tzI8@rZ<&d% \E“x߿%Iyym=+9?WACp#N0;XdؘoF̘3-85<{zMvnj_&Aܠ[$1) +LPX-c䨳Pp^T:x뭑D3-(/g( kag?usܔCdYˌhvJ<TZ oki~MyQֹA&)o_(>9M᰷+ у‹Yٿ8N5ZcػA,VU pᰶ&;MBbԜڝi_liu[כti T7BJ+N0mF@7D(8Hز"%ݖk{qP6Lo7 PFo(U&K|j#{V7S.@[nma8M-Ajpf7d#I;t^6%'C$jPcZ{%#բdFhJi}TDd9QZ2Xa.҅ңg/)Ğ-i]a/}8d ?5)tQ@ tW{S/ƌ@ fnsDAJ-L39[iДX]ZKR!B!/ c&e $I] ZІ։gB烊 O.߭o<0ǰ_"^bشڎ10pథOv^bBn' jclGZhU")vtB&ҎQ.9}G>$XL.UIzic֏rpWe=ܚ)\XuAEp@Yg:{YI,iUӪs>5I%78O߸6If|W+RNhd&R1bvuD7r4"g4*s z[\-:VAZ1(XlP(Ѥa>^r-Sl;.A }P}c66؛^fbF!aa:{lk[N8iOMYdEZp4ȸ @3G$0Gby0W@.1ۓl}[B@o@ķ/7]Ul-0.S/Gu2W\Qx_D!ey5m$LX& z0!ɣثՓ󿊵OYsuqߞז˿D:sS'#sڸ*Aj *T('j{jDHg>5jT{(19{Iz|]tңR҈2VdJu[v o{,kSGT D )=Z)P4/VGzE2z?@_gb8B;@ {x4QHD;$Rt2歺&вHd2yJᡲS 'SuS)Ǻ:VE_ p8+MS硑װQh;&*Aǫ-Υ=IIoCk{ƭ3M< PaC4ęn߰6:^8.>ErdIvOa H@Ec/wK$f-Q+T:FjPH4::SܧzJ-DsQ5n"n5&|mie O.+_PNp ^zLzmSp4X*(8Mu(@*d1;\ vΧꟶ xkZ<`\:~_3f IpYVaIɉ-:ӥZ&̇b69<:>Hu|9;K_S0:e~6,re҅c2I6 g$uDQE8q##W'.(Ul4swGr} ?oVZxNif]q%؃)͕bNe]'{Oڲ&FsnpZ1pORߖa-s7Ob47ٹ^W' z+Q+LA`d˷xEv#1[ Yh(Y#d<*PhlzbH@D8 Q{X,-( BT&q4C+7WCY!zR b;WY$#J nib6nF!2C!gҗ/G e4)e5cLFU&co|!LqjZfr)H ̐zf &7݁8_ptU}a{1K:nTo$=*9s"3(?rk[jBwӳҷw̰|v-*VP̟ƣ4uVv0Z$&5y2V4M|*kbA̅`.!m]yDoYwwb?&|cM/ E.eII˄ͧeՋVKlGLv'L6)-2) Оe 30N?>+RKTtb4܆ $^aE06Ń\UvT`5S&g@qIꔤ9}edB^1QSJ>aTS|g(̍M!2c;"jY@Ӝ\U/g$͖/ԅy:<贛0d-nxN 7Caa7R{1֪~G"ϽD&{#9@ <0-`TUZ$NgDacMZcVW @#dԿHbҹɟMt)иXOȆ5Kg(|Z\Pg(meKXwa{p&~oJQhb-n%_- uT$6¿p̎!woC9Cg3 (X3zP>1,!uA=,d;Dfop&҃ݔ ڿ(#bz}?希$-ݼPdYlu`dsdp9!rq{o`d6v˳v[:uzA49Ձw] }' Xv؉UУkKne"I2ʽ\#,@w f;ACjQ!<4 T9X[4P_olrÛ)F m.1 \^6oY33aq}m ƏLwfnЄLt7i9-AbBM?B䪴^\4/;:o'y[VոFrAHUߝCm<("U+MӐm)Ƭ R4% mv^@V &2u̼0;x :~f{Onk/ɥDF6+M@^izS=*ͪpݫQcX.ܑ:hB#a?S8T2Q,‹M>?',)YD~mB۶Vª!<7®WK`b/?ugƓH!9i^>tvyxm @,mRv0A&yn:f2:Q_CS%ܨƮ+nMJ_;T4-]&-B/G!8='Ct6S@㒤xG#5##sc62%MCP[*,6E\v0}̷%+iwDUjmm:B p}i.|za>Bpx.&_:kT+/n(&8qr.BNnM"4)ÚS3z3_N_F_FWg@dگ/P3p*)אȺ1^|XZGpml[?l7:f=s!R|E1?TIzV^W3&K x((?& @C-K;Q]|F-NgsZyaÎ_S~DrHV|{5S'p9jPFy yW |{t#owXi!nV%]~Aћ\瘲0c}(6^ѝ 'Y O;zc[Ѳ l&Æt9F(K[UJ^(P:i}ǂ24'Zp烖 `9:K*<ӵ#T؉=tt&Hz ,ߴKd4)Oqxj?%ڕgNj/O8Dv%3d-~bSc%-8e, xcJu>@bŧk0لP!jGd 0,bbeVf'P0#2TI10`E;Y)7 "8C;8jg d5פJƫXQh/t)6W {R/8&`gXP&FKX!+—zxAL,=U" zD0_D̠Ni=YE5x_w5޻<#xu}mq%"x r U;@Nn'Jùc&?B%v\`kI5\F=BEV_Bquk ^Z-w}GMhmR? +1́CK#qBvBiJpY%`RTﵬ}x0|„5Nvt,鲨́uVlUtd]=ZQ!)Ɗ8Kۤ#EV~K(=FbN݊d(p6I "jCWS|U-?C cex/d# ?Š[ޱ(.a''(nʆ/Rˑ<̛{0}3dbbX5y2}gUǢ2/jԼ+kͧ0m#[_s+AeLTg)M<%kh=~+kA/uw`DE_pF'v:88d3oaYbfV7dW9(6M1YZJb m5@ ;YvUGL(/\'AO5o3_ QT&[v@tHwTE,ZN3%}cX^J쫿X[N_-ͤ:cx?})tqVȤU\o/JҕJjy+$'ҀOޢ]M1[#⼛0]3qB$_':]P";k 11:@TvtK/5c^疬I!vKwr=AG㩙K-#e;VDWNw)PoxGVBnĖ}e)ب[O*AB2U)-&h!r]yC3$CcӚ!v-]q?,]:0SY?+]C_ cZSk?\@خ3'_iFtMm YU4R&p5s "?5N+9(c , [I4l}+4zJ<ʬϪK{mxer&i)'U)m=ZK2 /f;A˛G %UEQsxs>$IBOdWMxmThDEժR}~ͯ 99JPO-todȦ%,HH1_%:7YU/#"r֝FT-uOISel;m|U"Сppv[f?|êL x̬󃾐k1CW+R;/D:vl|3dDyb'}ƙ[)ܪ.IŘs8kK38 9}梔W'T1 IqՀ~ica&>nHh>#N A܎O\C^D55(J'cNp6W5:[홤J -"2!?RDzml.H>ު &>cD~c`g0“/s2$ITyT,OMPYr.7?VUS.~B f32P5{lșA E)"!?cD 97܂JIun +j:Mw R[U$ia}b*Ը2Gqӓc!,1#qM0->>$7{3 %9LP#n;;+3u΋4Ӹv`!pĒTUUw5BYayے(M߂0Uwf#cqhѣ|Y|3*hw*XB@ƃsIE2vQ

fׯ oiс/.<)xë,f.cǒ)=6ANX"\iU;5?,̒0@/0Cˊ y5YD)4^D&8]ݣ4U|@nj4nF <}AhdL;M4cn1ѠHv mji'tUD097nf1<Cf\V|3\RUL$1Dt=YIu 5=d&uHSg YJeEkѳ7lo5.ME<Y'1-QX[_3넃v1p̘=gתD5®exn~4DPD9{gP =:_ Fh$1xIe.Lߙ@wسuq@㚤es'#7=H~cW_ra_hC/#m5~yp -0sk  |B{e sly9IX-3x*Ū~xܞJU{*ɪ3Zr}Bz܍%DWLެ ^hb8eWhzM4;? F٭Ф^ZkEMHRFvh,PgkLV: ֛ݾl4UO龰gۃ)Rܲ]YT=]s|P `i,̡ݙv;2ڤrCǍQ_E֦'9k"3 .30ĸ<%OJJ4Ȣ;Y_3kc*zH?cņ>7R8x$黣NK*;{QŁ*ug,{昩= 5w; BN$[is}=YѽïJ͚,lrָw'j삧1:8#Dc:T>;1[5Qv2RR;܉&^j\GWT ng[]jRh;$4͒XlgOd/LT U%Ә=ׅ^:?20tkJWmHcrFs@SJLSxZY;Ƕ'TY? w<!NlL7/@X_Jhbqɗˎ6m>cVVsvb?ErH. V+ ])'"[nbo+19gQ'X`Ƥ܍dѵb_,o7Ozt$cM52qOX2`-H Y=] ~ k' #$nK4L&`Ud"K{$GәLTNkatD1Xƞ7>)>ءؽ͗ڻN*zWwV!KMck־oS;Q>>;Pĕ*{`KvQdb/zmMe=s:#Wih@ѕy)R֡g(PF``å|Qzt 5goxyܘQI 0qmkk{8,9W]X#)^qUq{_F!NmݔlX nthekn,_qo?%>kcsx'WhcZ/pc&mnJQp']CXr/#Ku01K$ 7nfV]Jh}d@> MZm#-k}Da7 vl'6OՆ&%^_ q{tj=˷/j&DLhx"uK BN~ǑeRQZlfa:U3\[p1J37czwF7'EW}!& \$Rk˜< AQwݎVA kKm_~NߪR~@㪢k7Mlv :r L%szXpЄ[ z+ۇt",_~8[6d Pq959'LObԄ-xlC)=&jQ+WB=7Rvc  ;,zX[>gIPQZ`@\K߂[ ͉a L(kwMH~:CV`IK$v}^H,O*)9$cMkfeG prCְ\SnY^8V8)+<0f5Ws719ۥr\B/Dp@}`9ZGCw=xXbӁ܏iB `YL]H#6ٝp̣'ړQF|Xz06qsrl%E87]SZa 3RW3.~ƀ_i%ڿT\.2&HtsV! OP$ >drY-نE6XdڛHn$v쑞թ ?z[iG_$i $Z>Jy9%gBݹ쬲]oB *u$8{d%g,W1@cUY6Et"!SÄ|OU|Z]5V9(1Ά\^罈PePa skmzq|*]34P v,|Ќ^xuI8"rx'^,qm* wOv77uoTP#]TP mC/ZH4Hɜ>?*sy\fá'bUJL`Logԡ(OiH#[ 1Ŭ0[b դ10{Vd8J5 Hw>L4=1ho>N-nS]˅%jbڏ:Z$TU]sðPؗ '\l&Vڿ|1S4SDZ[MUY鐴Qƶ*(NCL$x8sU֒5)\ j bR"3rZP!f'j1P+Rmk`_iil%(o +;v#dםB8(4\A,P7:INٻG%pkVrc4tͳvpsbbLzͱVxRыobnE#\͛W@G8=X+ME:[y eOJi }oE^Fشd lQkĂk"Ö{ŎԝpY{_)?{'v zl6O GvM*"J~!#P@ Ql?n)TB_B!H\dך$v0ݮټwU!(F @BP%9 [Md.nDƾ\L*)Xë/ɻ~<^<G]h[?z%QwL>1XhCPteSi _%e.RWҌǖLNi%Nf59~g3J[̰//Jf {Iu5:N}@9I,.n T3osK5$E~um-@@ W8vcM{wB3ؒ]MhvٿVQ"$o!]F HN%8 Ysn]|[F:2Ur"3$=GEP-fV ʤ"$Rf :!tI V?0Q.FqTW5 KBs \%. ˧YѼP+}K:3gd{`uGb~_tF$XC7˩^ >n Ս @Eɶwe2ޖrUEςo`F8*q 'UȚotДH2mϲEJolE06=,ڧn.1CƯUn=c.>[M;6jɩLD ]\z"(;0y+p_*˽!ګ249zsՀdܐ˻~UƥX;k1N2qnjB@BuUy<;cR ,|Y]Uld@|IqF yV-([pp` m/0˨2 g5,X@w 9f/1_F\0%vPl`_Wգ܅UfQ1WX6ddGAantu ?MiSvuWG oDTkss,`\;|Kc,Xu܆1:6Bjq(NNCD`q7*TǷ4Bh4X *Ok5ލ@ ffd $ |s?8$I=M>*6vcjyjS+oJKSAw]}ܿQzZ B/>)Bu.L/~;4(<4 ˺aM3AD_\  ٰX? jث P 'c ?06CLԕR}a+yadH_h3DG8&+k Z;Z_P?'S+ OwvNQ9Yy 胂Ϣ _*i2dhQW˫1dROZ0՚Abq9ycx]Vqߪ{Ji#B׹4b/ zU-@D,6b@lkӔ[kG fqHP ;SUK s5ȶ"k[b<Dž}o+JbKt a93ޛKxm$1;Tl6XfF:V.uεp9fCEq z-(Gq.FӍ=Bɳf0Nb|'[`H<ꕰ?,M"l> 4= ˀFZ#fVGyި~w'cACbIu +3m+j&sBl/*: A* 3Afr@;D΍;ZGJc!ة [3[́]zb ﹚nQfvҚ;O=`-P!wS"0rIr$IWݲfWf-Xi'ic[E\;BPN4""B$gj Q3="ϙwlJ$8izh"L/CDa`%8 8wx$sGsSBV 2Z|n짿c:k* ǹkEsYlPY+DZm<R%[dO(THI~-tCgY/}(rUH;ԫ>*2L.uhϵ{r|VI Dm%ה]q#$(ģ^ (DZRQr5ȅ^Y &1։Xa|-=2e [%UEsQMz8s {\1'w"dHН?Z6M /() c5Tm:6@>$plz.Ngdw~2۰qOYДQf3#=u) t ѳB!K7e.͌{=QT)Dz)j-СF&nl%9;f7*s)# M'MpJ2K;E@2jcDcq8/?>[έ]cLu]% Xx] oa?ԧAdb'WoNv0r+_ڱ.у#N`̧~Q7y EC5w Z.cgf$?}_H #PMK,$&[N#%}.]eulϿք55hلOiWAvP7T/5Ey^q(S3IC%`wݔpxdqIj>(Scի:j ^;!M;[hѶȤWm&&C{\\`SiHIw %QU;X%mß0b;cm#ɃP.ߗo4rxTiKDB)Z2d~C#^ \0Qh-.>_@:)c-tYl|frgC y5KxU}u, ̬XZ'4 Y ꢩYf?l wj3y-asqO ZU jlVymHfy`kׄ}Y>nєÝIm0U񴒂,k6<]xIVX<]wx+xuK*7 YbǚY_:5]ٳ>H1Jh Eq;u1eDUr^.k<kqW1{_VxiCھC02;Du_tȟ;J9Q*,7Vdƭ-&+mq3y]  Z Ѳ@b_*lPR҅īA 9C5dyrp!>u<ɾ]vZv-`@vt!X8P";JŽ_X@1&r ar!")~JԮ@IN߯&AE 3%5$픝 1Evln9 kk [?o}59>8RUR@bKȭ#T3kHEby,u)L6"Q6f=U#Pj')5Wd/U;Az)1:.tKbR I;Cvɔ ?XF %/ă$aiFlBQI<,p- 4$OCL2YNURؿT64E )qui,=W/I8AbNmA-2^Nts:ïq$ڵi鎔[-^2)=Aj{cm ?Q6w? y dw~״5uVD1s,@`4GSY9އb_|7*JAx3s7֮c:k_WFɠO(x; ti4FNMU| ]]")4ݶd/ &qG#̹t^ RD *ݥ$ye{ccz:S{sTR|/94Iзz},`E-h yH~eXgoǪٽNRj,\QCf_p:ֱӤXu. x^(!G_&XWko[iCUwhנ+:k(GSj67`v^hWdP:_k.= i7:} RjJtJI /S_P&C)tYVլʽB$"/)J ꭭ѐFޕS6S$M D4c[}H+ִIg~8ɵAOuK-G7<`"moFEE||G:-3nZv2y=b(ҭ PA{eK \I3fxiw^S4bЗ{)+4 L ӏ74W>q3C6LvyrG0;sA0tXqTBf .ǒd+iUiۥ-}ZXifKM-՞D<# A{|ZyΎhE%7V1yl RmIbf}Қ5p{?EG'KNݧ{ۤdU6YU'b}y4YE;;O'N.XN`1$>v#*c߇zSv(Lzv_7^W#pօ:(}ڰtqM?1ڏ/';J",tŞ%`]iA(~ǠGA )tD/Q`v54,Fiz_L4ܮMHFVg]ۏN%vLMܩ1!C@}x0+cd-[+5#1:)ɯpQZd({gv(Fz50'9A & *Gc)`K; ̞򧨵tH^HoӀA/9H|Q9-_* !`r!Y8LS(gepC-Hm˝A=Ah02_EWK.hG(= ឲW\,+8-hσ .>: &!e.d5zI|u'@:+94@Z.Ad2o[ʤb/{V<`0"% mTv q4u\KJ ?ryb72R{}>&}ԣs򻰅K&$ [}BSMx@݅8=&jyP] Lw[@8Y2;oVo`0 ]SZ[ǖIA5cf*vK?35M)KZ_ޱ^!جH6FnFȔϼF;[FrJG3(!d:qD:$ /!gHRPS~`0)Jdʮ}L)Nѵ4PBLd3PG\?3t s.+r$=kr|r˜+scqɥc9mCws>Q]Ds StMw<&Xm(PK?_.yU$]J~?N[HnjNz0h ƈtTx[x_F/`M}N&¢&MGaH޻]ح-ߜia*?HPxHgE;_'sZ;]mX4oqk3褬x gW<0Ťȋ͆C$iGW^rLK~OE+0OpQS?Fz?u0;ޮ3=-M"؜ã86Z: u8/!{s(\ۻ"/;kNb#IAd~~*ḽLԧhuOiC>Z{O ߇ whTy 6ؖ=uWÔŃ^W'Mlf9^ Qp]P)8KwM6{rsM1t"3zqV 0l>k` .d%~@ ;\듗8e`Q濤 xsBKL(?\OW8@+ڧn1;-PRbŋ«O G&/Mjљow͙e͸Xh +uz_@oY-8"EN #S+H"ZhM5,D?+!PQd5C )_ztF?˟R^}@`:*/דfn [RcLmYR2rQ˾dl[f.2S-'=X@_峍#ʥo|Χ qNC؂[}<p'IRi-ʥM2AwoNJBܗfr+.y>Al,e$z7$Ub3B:uFcж jdv {d&8\צvnX`G훞0e\kXMZ~#l]8.F\3GoFRŊlO w9 2uS/XI@73,Ʈ"PTncp>:R*oNʼn`q1`e+yTG.e{ aJ=yo#u+IOi{ƹ6=y C_bqz rϖse|3( nۜ.oꪔ%)7 f9baѨ1աp?o[B>A/"ZkaGǟmo8\bD2` ̉o=y ;ʨA>IŸ瞷Ao.vrp>up5!wTo߭ ߌ͞HM?>6Dl͉N/ `ʀ}h[n3[9g;, =V[E8sٕuz R<A[׻է(ɓG$ 3}uh~e;  Ui"$n`svϘt){QNku9k5: YNaamUyrף5>C㧬ųY7sX"Vy8@Ъjӝa+#? gwk3"䵝HQ<⼄pw&FIx|c̉.vE_'1íOpgpģ% u_Gu.r/wY0 Ή_uBh|&0 -bZְæ1oT:Dpmi+#p Θ 'i8@IfH}zuPHڒsQ%;l.0Tb+Sڇ<0B(̔in TIu{Y!X~$>>nKMmnpu,\=]:opav8^(gQȕN!SeNH6cvhq/`+= ZQlֈ8~m;}O/Ә*\)#:6ШҌYsƸaQq~t8ђDR.m|=#̑8B'>zM2ːXZ[EZ%Liɨ5x''@rR!LHan|{Q}i"M6CX7SNk瑫%c@.tjETtUڦ J-Dn[1;Hܻsq~dTok[0 X% 8tJ*Zm`>ɗR4} dQ|0Sjw+7v D-\Pu± "תպws- E<eSE41(^f!5&`Byg 1H (Zx|cHFaݶ[ˁU5K &Qt`ɑUMP-.%1K x0O ;4BJBP4{#]O$ՙ֏5"T?}YUG[Zɕ8<@rBƲꠈFEVagsICUEO#ɨIxA}Haf*M &щ R {kE<>iڵVTr|Bsd?ҧj0KN^ ͮudYnc9}RJՇ"En· 02Y!rvEyhJz5xepo Ȩ4i;)lo!&T@zjs[ >\ChVGBF,x Fi zevU~S+BtԂmM<_ E^bѤ1@*\NiB3bp^' T$5*d$gs$FYMֺ!< 9Cz͕~5 /y){p^V8J|PSU; KRE%Tߊ^Hn*s=fJ5#t_!MM%Y0Оb}|\@?E(I#^cY,mfUQ(un2 2%/ ݤa+{蟹*֫yOeFk\1iod+xmh9Y e6!}_%76`Ux!pԽ4|t`loLB.Pc 
9H,Df w q^ao"r%Be z0@覛UAF%X`ս(9zK+o a] F 7 P3_F9Q\>D*FB<5g}wLWj?\Q YQ!pIP(-S $~ ޥdP(Ew( p3 yyC%K _QҧF|zhbZŒCay.7gdwJq jh QL˗֏`% ¥kH󃒉=KAf5@?UG8N'@rX+*^7'x';RKwQ4#ЬN~'"Y~ 'j'W MdRs?IRd&O& $&jn|kb:-%,3jm821DrR8<mvX?sjzV@3Uc,k76t^P&ʬ󾥈߈|χZhp8F\򮐅LHT(;}ij멦gՠUe+f[#*g #I+ q}RYz-QhNs_wغ TNڨHU:5̇+J'Bo\(gFGjt85<3 X 0%31 >p D]>f _yǁeP<|,MH RY cI΋iGv/)tTtmgB1 } [ng [:"f FpqV֘uK"0S{2ڼ\ kN_sǗ^_\?ULB.-?& ._׻c!}OHcs4f1*U!- Ȣf ];W`=A~K+0bTbW Dc;Z0/YImҋ~ªM嗙b.`$5T wG5vh8c4-hKB#~ЕvAӲ#mP6p ``輪06gN05.C.>c<*NlHt>O! CCV,ԬW%ů< `"K}ّ죮WKa.ðß+߃]O bUpM[+k=am~n21FFt`v]a&BDyn[/BQpd>> H)d&U#[V @O߆YۖՊAY(̈A\>fyaRAm1_9TZkɣ8\~EVIT-mU"V`.Jp`czgǟ1,0+G$ivJj_evsi-Ĭ[0jc(Li4}|D%nZ> rLSXoy-ۭe/d0&&_+}: 3WQ‡oMVF3VJF7n/Dedj\$M,kR"-)@\/JHrKElZ4, K&挸2ɬY.owIR߫3\}۾`DLXG,h'iPUT2b̄OqdF|U[ !K|Vӕxjե/mҷBMLK9׭DwV9I}9]P iјp`6툰@3a9)%v8m=easڲd\w3h&\b!:xM RY0{ k(:Y O73^NO#U%J`^X0܌ (.1 _qئ+'\OlPɿn.ѨO ~8G--3q̿T`X(Fb)1I{n:1(]Ȫ lDn~e"Փ)[Az`*>OԷP.맰1y^w;mi`&-* wL4jylIn1([=+?J~tz #Met4g_yC7͊sQ)q ,/tK~>cG^25 \:X_֐dz2?ql_;jy_`kDVs`QUNՎw=\-=;/kG&YvcWmKCځN خ0T_oN eU>0i-w&rhqk! -39T>5pN0`M{ IsmA}e!`ymu}DȘl1Ak;d FqbdD<&'(-E2 9aY!m#8X+F#[[,P6M yF=Pk$m2sv 9+yםxd+r6Wޮ@ʔ+0^FKaCgޔsPn8w͊S>ֱ=X}Q*@6kn6th?g1^H%(+ {x'Nh:y.^{TÜ=|C9I5)(x=|(L$FdGlUyj&Cӫ9qII-q B w"]*tݟ{4 2`,L 'v2CI5>ՃqXN&VvBdl=*l^C\Hy dΊ VT)KRφI93mB!v8 ɀ.fJg_3Vm'W 0Y(Ӕ[:/gwb|(M_XȺhZg7PZ6.>B}Uֆ2YcP&,lMb+w.̒ 5O7SzyLD-&+Omq?m%Yl]*nyHf4XN*]]{3m)_;Tګ( xqgT 햯 8k +qBl8NsPڄS2 pr5^JUB$< 6N3/H/BxmJY"![{H?K߀}.PqD17'+O5qMA5acri޶tyT</QKe J9!c(zf8hE)[N3KP#:HccW_1+jBĩ,8TQgҎ"r Wgoyi >MWՏi E$ /v3uUN=$\l+=TIb{!t) 6nGϜƒ8!׿Ԗ!D,pf@ZIR_ω:O'yt2`E?zEέ?{i 4b^.cʳX}tt0?L# q3)f~Z鎹bMqe/ՀO|oR'7-Y-iز3AGj%z;ppd2\60NFowO4p'Q`,ZFV]X8u@l7W]#Jӿx{vWxh_b0S4WiZ yɪK1\ԭX퇿+)WG" Uk͏(rA&&E P)OF;඘sm02 #o23 CZJ1Zn.wch12坻$H4LrQ> /^wr2a|YOym}9 'J̳L\{ DBT.Yi;k\! Ϙ1/ҁ^gwb̻U@HNU ԫzi1}n|W.A'cVq&S^vS *<$@z'9*s.=<)ńDّp\=]. NՅǵ3EbzoV@Fm,Hr\we6,cNʦ/VXmnj5+$܆Ōé>`Z;/l i#Te.N c'q!P_y㌻ʎgb+*k Xo;)/K:'tPoNbQ;b_kW`΂ƞ ѕQHE/ii*E@U-*Fьsɪeff՞eWREuӍL4|%>HRy(2lJe>F!̘8:])[K{d 2>#+*'e/RRc`$6P:b<D剋$2ȵOm/QV|5 zEa̎ľSQɤZ>Y_axRT 姉jɾ޾ Hس nTuUCiEhRj]dg `c<CE !{ NMnō"BCَYA)WYӄa/_Ӏ35jubm& kޥBV+MArV΃xi O_~[, y|.YH4YZǦu#@&^Ĵ"qH3!Es:@ 8.)7gV++Цkf1l71,TS@_wV\X_bB)*_ !/u~+>|mNF_c/_ӤbnP]ZgA;<2gm3ؾW>N&p1IӼBI^+^g 5tBW\c PTxl9'ԇ٥j7ewko g};y":G`%Մ'Px8_ՎɅ gN/=vH.U^jx±ѧ> p,3H%0T)w~H@@ul3D+ m-3[fO!AC>kwcB>Kh$4SyŠWhط#T)i-ڦuMokQ._ xD€odM8O0KXƒ30K],+[2`dm hͬd.%[pD>o5}LI~OPxڳ _awk?7ۢ$'#%Cʮ=CiFa-Е^ٮ8^ʰOn05xiJu'hiEK{$ dzyɲ,7]}7B $nT됤d}?RfS:Ĵ`_Ңli5"qz.#A7 #ZW 36m‚9C|f$tmGn]_xsTM煳9RkSfoXq,iN`{$GpIA %l8i##O|d4T֐}cf{TY:EQS? K:]\IǮG3ơKP/\nQs,5J ]{# tȨҿc ƒ N55U.jVr\`2|q-|&'HauG{8N8G19a,S_ߞF6Ͷ@:aG@ǞWO%HyM8-+.qh>3n+\B|6UdG`tVai*[ޕ /$XDJϒ7r*]V4Oԉxn󽔮YA0g]MVSlS?"1ygA4Y]w },(IvˀU:D'Z&Swn1V ݈U@Mfn["PZ.$]QHs4QiH`2wUq5#ʅ+stS󳄒c }W.7tC7k&@-N*\ɤiC,V:%oiX!gS}5.FeX)GmVA;~rρȿ G"b?%Uxy D򥹙QAR7M(ă u 3)Ztݾw Rp]ssYy0MxyqLzȾT@j=b%S\M^QVUoc[6AgMz}TFPk`:H+ilS]JӮE 4 +k|Y q'# S>&,WHxWj>֤*Ë Rnq[ԫ1'n,ýStl(W"Nnh_k.0pQԿfQʹ&3 +^M|.sLĶFږU .? 0-#F\jA |a}U@ l8~b^V \;!K{ AOo1.ttT|2G9bVuIqVѢP %ۈ<|c$Ooq lD][!W;h/} t}~Kp/AZ%ra +[h F#%>p)lozEwclB:!ԆFNB 98ڱhkz.3nwGyX 3$U|ȰyF)Aw}#S忼La0C(Γx26DQ rEC\n _oVBVco(a@G2~5`6a؎"BߞaGNN6ovtfU'zVT!rrF(4O'ً#:i,3aSr|TWCK9`8퍥;PzQ .F"4 ̈ lz/ZfQV=^9n}%bo,83pdmLtV;{ꃮ4*ޮ4&A"8+^w$$FDIrun|s_(%C`uENT8謲Ԏ 0ψʆ :4bt¯:h'5q!s0C+͟U*‰mf>62"Q3cXR "QFnQX̃%XV}>qv8zهY^]w ~6qk;q&X2>šj7/.g?rҹmFMZ`lWv%a3{)yDM3r/1H~XηB[8*t= C?|r5DZx I$8*ԨڋҋkpEҎm=^-yX8M7l|kӪa ?m~,\Q@qXE-5C\'H!$w&Ux]b:3 pn6WX鄧hƓmM_k3n6\J hr!#ib}I_9 'hOhQu(cAsN,w ×o-zif Pa ZFMɅtT Fpn2G2SN"xnh73  Ř7< 1mA$A֩WٮCFaY޵ ',2 /"[ W?Wz|p.7n~Q)4Lxz@^cKh 8oS>8撃Tx4&\X\o=O䵶T^lĮŖ %Rkx. žԘbi V@a0:YtGkot_D }*_\8nu$ݝ̀ arc}.p-*"3rJa>sDUvX+z =t/ $':'E̶4Gc=-N_~'Lh' [0qjԿ=#N-15>oO^ d&1&`Jw%~e[4'϶?34hx ]nl:2J3UΘlf6j~[]* 1KSUR7y8z[rs!0Ġ[+Ci/\Zl͹"dg@x~F9tAY6|^Q</X2lb_Xcw|PND)i2LL7ͺ\fH^n/0K;(T5Deۉ+Vq߼:*<%[9f&*,emA!x[wqsƛr8A:΍`qEIoLd$L2_8iw|,)i#C~Z>lL6$ўTjērCCK/,*j[IHN=jbGO-"E1A#1 kޭ&\oF>ir1\|PRpP go~P0ez۝!IƐ~0)˝kB`÷XPgAvC0(IQb=:A]2 [p1v1 ߎq?# cn%1iaeEtܲd&w&+ȫg%X}ݗ<QѳT043ЙfDeܛӴ#3#ZS a>,y1=<)sp|W~g0Ί8 AmoA! XHS2;?HԆGD;iN.ԡ6 f/`Zl-~VsZB4xd۵ `+!x[~G!p0Զoމ%G[a~ۍ&v0e}Fp(2r Tc6З }γ6iNDԞ*YDj! xN v&CZ?MrYaD ?`Y jLB-!րi숓@հo_u҄zVJ 5MGKZyF|DVFevD`Skiqs%-uѧO:66yA0S,欥,{Un7d"%'%#Zr0 KIdHP帒s=bB_lK)T1 NQ>E`I 7^lm7p8淝Bo]jsX#̱ ~%k2ܳl5PwRwwEV5퍪JV9$ *NK#>QtMc<LybIj(̉jk/Ӓ4ͮ|8C՛UFqtNi_wSX0x&-6V4/|lʸc/ kHP% YBOz=<98QL^1$̿ٙq/W6dkX[Cu)wݙ(Kdkpou`SطRq] cUxe!GnNTvЋቨS)CK}k4ƲPa#PVƍ!R{r^B8^&è"^L<8cI[+΀;ym"T΍֋þw_l{"1q@Շrkfb61Rx(NW x1SKI؄ߙ*Xj N[IZ\tMPZ|@(h`9 錊I53?U#Y @c (retyKbF`AjUi< KtWLZmY.$՞ji1(oݴZ(Hy`mu%5`kξ#߱ M1-/? w ;60%+U;G˜2͏[܂pbiI1&7i.f)j<b){Gԇ-Ɨ $$f; 8TIA/]i BkK ԞJ`*oG@~lҫ[53&8^`aR)C}xd Y届n2<|K1;~yF-+YIJ6d]ov9i 2QigGbxP*XOPXua'c޿zr.$FhZb&¾cx_>w Yo \1LZ/a6`b0mY^$ME@IDHּ틻j& `WnSv:T!m@y2r9gJNJ4'`+aSLYk _Bl9ډ"42bK"X^|łJkԯ+ېcyf=+|R~B8ۡJZw`XbCѥ Fk?$KkG넄%d@IvE`jXZ.o^d =?w6TM)OC^nҟd@7үcx=zsڮ}Qhk"e(νŝF@RBmBH,;dQ܂d:ڭ'aȉxWtyPC¼zS.{`M̾lP=]l ^¡}Ld]`ewg_YUs ]AϚ.ߗS/&§I^jA'Gтk"_ndWd;X{c̼Y֕,j&~F~]3f*Ջ'p!EBl3a ΗdbS .l $n7R0֣{f ND)VfXVBI) "rDk v06OE`c^Lq^KӧJPuT|M#(R $xX <9܄Gqvʰ&9diHq=26ڔ}?F|>jMߟf|O73 @[ͻALXTXө:M݂rN5.AQ 5ar'j6Vy7PH8Q_0՟h_R'syctC:p:7r}=CS? 8#b귷o_<\<+@2h[-ф0-~ xE3{GC&]z|w4 i:5RS/(X ɡ/Є<}6I6,!suM6iѺ1g#GMt4+ԮpLmvھxc2gSZM3f6[3pJ:=W#J+ͨl/jWoN yÔq4B5f9;t'0hT'AME2t[/MmYDLYw%OWct"U=nRsOtPH/q{k:Qit|3D1&L'T'][˚<4 <}29FD2 Pyw[nNH#V(rə}n{pM\6&3dNFv'~I\Leqo [ʎ"V?h&jYV^-i94h :EBQbGN5x’MvA5E]B"Coo2œy҉H2_GBׁ^R Qyw ==#8Da:ӱuq|OfC#Pߍ׷Uyy%Qӳ_Uf=IbB:)ؗzK 7cxxb3mc| Flz5 o1`Z, $ú17bAbkxU%Л)ne8uVA1'u8GʟY.Ձ{/]n?Nހ)GZ ]/ݳ?=,y;j NR 36kIp[ oČPEI|zU&&vFB U.\g6x2uTZ3DB~M)9y\wk Psp{`M0o1rxLS} σʛ. g!ӝO2WSqj4PIog[kL S^ԒʺZT;:ACʄF,ڀ=Z'"~~ګ]?z/ryodm^j9a-{ &0n1+](T㢋{|QԾVikOͷmG*NgPN* s!K-)r{Xސ= ,SY:<"1A*u7_2LܽYͻ l˫e-ÁŸ&:PExwձ5$oj`hڀ;b\vzMA1+GUm ׈, n.WH/)czra Jh'#khmowU k)^m^FԳV}'7-$6JrY֕׍,{(AgFQy7>9xrZ Ί!VPdgɂaǡTXzRPAz$F-:iC?(OA%Ϗe0Ms]SN!TF7Mh3X"ɫp@*d %O.s[8pB].ylk';8Wh%#:V2A7SfsSJػl= mda?ݤE/UgSTDnk8-t_!+'嚥AdamubWŵ@,ϕx~ bs%b &ϡQ'ukTnuJFdta$ek'tZ*$!o#ɼg=P.s!anʌð]u6 u9R,F ݛVLkGKw"3,c"CX)D'3f 1zp aVA'0J1ؽ \Y@AQX_t^yZHH@҅dgt;΀Sg^4J=3/uP Yc,X1UTSVcV~4?selD{L>gdE6x|I⥄Yq[p;Bc΃2tgefv`ԀI- 2LH~Xd:3ʪ(ch*FLӱ |6pz@ߍM%fGes7#03ɪ^KZ5H\N0񚤣9o $y˩ѳQ~2kD!v25iP0vٗFu1ݮ0wm2*dvo:(K5:QWUc̃Rb^x;`ԵhDKt|GýXAdƇJ\d:Y_yM= X/AfW /Y)Z7 Pm®ّ(5##̴f U225f lY$$bAFvi_i : [ !wVOe"fy0r@y67o䈅bg7/`pڅ q=#C6yqp%OLGuy-O0ES ruZ Ɵt#IR;lqʪ`L+"8DCR7X05~pSxzҐhkׇ0 uRvNi˩P A'cVKuRxn)C7,9.IHSúEMy_ДǐOOnWb /aȳ&$N)xgll<}k?\,krѢKiGT98<| Ss+=%qI[]_Eڈ=DUh k)/Kuߢw_vpsυkoǒZڽ ߫dt'.xqZَF׎BnLj*fr@_$9 Ws/hŨ6{9,hz%P\І.$aɆ5PFf!$*4bߍg,ү(->B޹^l_DQLYOnZݑ'֚W]TyAqj!tUWZ3!WnVR-(*ɯ\4$Ip6{=}V]ȇSe'^Z'kvat0 !^#ͩ;L5׀HowjÞmQ j#ȅKZԩkAݦ]b9ʠyi@Ƨs1q? 'ɇpcwՓU6_wQ"v wܠ6`\oЇXR/4xC[ư6rV+Gj7҉)bH;K!W}N | O(2Ni.`Y^CZ7N/PrDG+g[Ζ DowP!zȞ6yt2AjkMd {aZ_9ٛ_,yyDqٯ*p+:/4UoMX'ò_rAvselʹ<3yKr="hi6{p>[CC^mAc)7ƾ-l} dcLho87b"g}BZ EJ쁌 þ_wo] ER$m59v|Fy'(H xl\ ??atO =2;^ D7OmKg 熯t;0A WCs G{.%K aFo2 JF?}&n]g ȊHtn17/٣VE+mHQ4X\1TK α4V$ (.QQ3G$γH>]IY``6˶VaObȐ ^ eM56s.Rw%>wP wia}r bF<3F-@Cx{[mu4􄁖o;յ(t?OxfΥUp$E[tTO"FedrkFJ`u>8n1m̖:Z30ʤI02:3H,z'St:$sGL1I%<`ߔwhq[twg@dMQG%cn(JdpP-Lxb8$TyL׾ѐe)6ト'.ЦW ŋp8fNPc_QJ؋J]g6_).v'? 5h<:*_hkBC(u|Of|26?NmZ&_Ӊc7~7V*}륅Oy${@|cb ԟ&c4k5u*T RZ5zh$W^yģ7XS{wS\Bie#fv9Sg}glajMH:rJ On1.ZUѦ+$-ۭ[ɐ+.3eZԲ<ÿn :?#0L:}Y N,-U=B$6GGy>30pk?~aaY<_"՟":Lc#);? %T)Q[a¸˹P  S;EǞ8ŇTNI6 G.Q  }2ond=hWfWqRhsnF'YD00"}m5VMJ %>@޹ tf72-tM.L28 MܲMj}Z9FTG6Vn)U#hKCvn{0m:;I!8>O9fV WªnB {7_̛c٨!$(\\]^/B}MW@ETfX desy};svk9,Dվ nMR=y ']־N2NkYt<Խ( rHܯE3U>W쯛dFeP `eu 7H ԚA# r MV$ Jv^B1u)h]Y*PrWjRƔYVDs*(+؝0[r0Y@vڌ nJ 1L9ǔ؝QEHoMr7[-I_$JbD'/A=o@xߙ= T8pFvaClҥ؏d䎺/H3nӃGf,Ec] ُvɛT_{,=1ԝ^ D!TEa== K} C4EoKpJ"!{(eXi8e cx >wN[8ڊ{ Pt[Ah'wXCOibK1o"u#^ DUQawfFfc@0fbdGQӸBL5x-'Mu= ڦIY fgd%nO#(33ª]/!SU8'I=j;Zg1(,KumuGVDIr!|*L^7v=]=ޝp1ñ. HIv (WD@]57_жkK&A`"^84\7uF$Pn耶Ѻ^n'3\%Y1GV r;-0GgŸ,44ŜEÆƈ]z/ed=W( S57]t6bSskڍATj[GcOXA;rgg%arqYY2#%5OP>}z-J#vCs.B`=J0^ۦ|X#pG%cQ tsVx_eˀ1, 3+؀TeL46R7+9$wr|wb>$ \qu<.PSE fdt+]sRG W ZFsY2ΰbkk`r48X)ddا!Pۻ޲.+t,CQH8ϑ'ڳrr[dj&m"0fPIO+~"#DC=aӫFFS6E%aM |mژ#/{JpmfΜm (xē+1Mt6߁u&6],Bxh"wFfH>;2qgivBC>R̶bMF,6숟DHOMun($-0s0|] "!lTOT`@<+ls~c\ j)3 a~P }ڸq7bC(1Wj5XbߨZl?1.N]?j?"=C kz!J9,N@VSPz[ՑraNMCAx:϶-/N`~9ݼ@eN3njuȀu^ҋ>vP_JTQTVpؓbEv3ӝ*ew%@: j mM=WS_UK'=y =!Q W50o#mF:&Udy= ήñ+M)F`y٣sjJf?FL69rp &YqCI+//-4PS=x;@ұ]_.- wS=j^(RE雳N|/y|QT7>`٫K t]g(P/ *^ف+xfb p hkczL#Yn #BfUQM^Yp 8FOKwIf] +NĦ Y\\n06~|濅5h i"ej9;6N E" ]oS5InU=tn5QRgW>綉C1}[F?ӉIE86H0ӨiGXs*¸h |4>6Q^-Y|A3ϐ_`VK9QVfY }’ݺA%C.*xɮG4*4,]ȍP3GS GAJ?k|%#"&y;rHen"(24#іK 3y?lps>%w:?xL)1J=BЯbO:=0Z\ruݔ7rl/n,vrd`/fZ&Kݘ3z"/1@!$]wi\s KliGt?x䪧L XheNyT}_Ol28n_;RñH5jhR Y>~ ߢ+{D "=G R!~VLߍ(|͆ҼSt* x:^_z!$Tur 嵫X`mwPP1Xx$!hv/a`}mV(k29:1p1+xh=#f/nߤlF_*h$V_Lkg %"o<%P0%pfDBx h5Ke=DžL`QHP]apl9bCO󏸨<4 ܿ,-EGA#B@T? AzS/ Hyaj`*vۖ%#h~|>*%Y985 ԡq%sT{XfO \gc2hp*2!TF9HKea;[KAػvVyi@V:~그LQ"PVe'0vjTtuӔi1&B /n_Y2PQuXOrCЊ*]3 qS-C/,tm#fdjX,AHULi\ vgaT\Rxaaک)NZmbq+m0(&w]:N'w\KWŸ?p U9|"Wܞ#[±$ PR0)Q-Zd[دr^3Pp7a*5W%JDaǃU yB8R \ q7m*`.Z@Q:QuVw PP[#v~Q^CD()jYYhT4h07q^;nfvG T 0,#[[ZbB C1GoXvv  C06T e88-d@!/L{l[WΊXpDkƑt [%;eSv\vʐMǭzv('nZ%\֝v鱜U5`O%/ߊ/q)zQj"15>b('ggc\tWCQ(l^P;՟S$Fŷ@fˣI›5jTسT UbuNqBh ;JzmTTSWO"_-{|@l@R^>SQV<F0!8?bt' Tx{.+4UxdbiydS8jY9N5zKY-MK#okBDdvcPS2vm?Nqk߱P i UPd/w326*A;#1m̨V6 ?duNU].MHyBj("2:K3J/z _v`FSc^b^żUd}`+}wѽոi(ƒjt1_ug#m&u *ƆBK=^>#AähyƫM:8-geKLQpTԦTB@ ~㣞kOֱgd7 ZXֳlI !\ܧxJx I+emSnfZ+ m;+MS<}ZVo8P)vpL hVhN}V#fuwA̫5> >-mͶ||$eKQH@3%oo}KGtSGQ3`O=-ZZ'lB6VFEp[*z#*z#JִH1`̑T=Uϥ}c/Ĺ<2܋:=L#px?-і*ll|BG)g`+O0+][ڙՠN|Wj 05vlb'ۣ&. ?+~^=V jϕ!!tW39^YazZ-=p#~\0oJ>S,TJk!db =Wl5xtLWZݭƿ0T@~Jo7iR/E$̼tLgL` q U*]ɲMX4: 'gPODQe,jMڣ!~|fVYSh?޴e]4Z>/# ds#1g1LFݎ oQ F"n:Z8{@eUKF[bnQmZ7pQx0/$gP9;zu"j.z \W_?e`"5yX5 ˢ7rO27FϞ+9)u$kcX'Ǽ{%IN~?}}eA>Iơ?%b <1F ؒ0 wKk)mډ1pa2ne5_$IԠDxEA^_,eRSa1:Ӂ?̲H}?De|'=CU;FNՂ.5w8 ܠ6s[h+לD 2@b hwܞ(.iXL^7&Iβjݐ.MKL\"c&NǕB7t6!Sa43T2[|T `B mnJMNd3uHN[by迈/QO>~1 B3BQl2{~: H -ӇHu/pa@T{6D1R"χ! u NԶ`M(|m'ޑ#MzHA Hc!; {LL)A)o*)AA6K%FΖGA"Q,>Ħ`ҦO-xZLQ d Y<`Lo+|vD{%/rAQɑK@"40*opL $!`&ؙIP*]$Wnsײ\5;@h9@]FUsJ%5 &q`6%X;J: mжeQ(*\YkqFQ~y]_J\Fġ~-;vv2mԙR'5GG>k^-n(:ZDF*~*fI(ω}ΔPgK\K2$VBD"MW8CW\_q)D rgv>E\[j򀄃RJơ߷{zN},T$~2Plb%E ^zBHÚg)M]^<M]z\ndɳcnުϫ5xHl-?\ci] Zg{l1Kn(>kYj,J#] f*nN(u\\j_6Ü5{'뮌qu}t:$aUm^MA*B́[>vǤE'?luײid[RsX|E{{'^@B.pu+ pZcNWq9e؏$c%JO2|!el7%$lGAˢOе\&cd;A>-OGk"{D(oNTgFoNܣi;S칉$?2|P9t@K _B~4W\]еI:?'A @8}:%S-r$[HZu LrOd].Xӥh 1Hۗp7慶{;ǘ'V !Yeq\5f-?*R. q3{:)|W 9cal8/SH\02Ć;%%  vʦ euG nND#DDZD%ɳhZ}Nc+ GA/B ;f-Z._BNu!P2FM<=~mB*uѶZΟtȰ56o|0f t7LWG&AOߒBPc& VAT-QEH3eH)ۙ]B×r@9@cL>Z71i!h:`J.*b ^] [cޜLH@:+'p4ղ3wHYZ> 6xXu<)1|bGQ~G{ë o{|ie=:l%F_'N ȴ_a?v' YzoHgشJJKnºkע|=qA0C!OӇr]]wQd1?j_%6<$_E'BZS0oP"@O馣0`9"QR \gl ggtY_,vZg\&ʣ{^vC. ȍHJv/ vѤq.UBfD5VGљ[q{eqU˧}96d{a""r z2Zlԉ%2 !7TjnK9(-Fp-)dթ$rNM#d/WiQ >8F=Xr~#G3ԨVgyR&]5E1dQή|-qsfiSxGnlRrUG{ "lX5w, ^ѲulkE_m(Y:k2,Xr"W&r'# Ec0ѩjBGRmuz `~Ϟis\W4atHٝ6TR+rkw'r|uϠQswNM){lQ&5$0UزWx*`C5+MaiTL\pb$OȊ2V&2%C*w),#V/=' uD{DQd.ȣiɒˏE$ n:@Da M5xt?eb(^*6Z5}%YPiؘ^g؁8: b7mxRaew̖ķM0j$?߇ q;Z TsrǭIP4Hzd~n]pFm%IN E|(Mʼn9v*ġaIIM0NvCutֳB9BoO~WEH@TI&kDK]`k8{y y8si >ֆ.FZ n:T=6R;1A~_.X%*vp 8Mhq~-\Yms)%w0]2V&) `ObYnS4zg7^ `Kf XQ'Jh'4=4i^P@wToA/Gfi=xbg˝8`"_<`C aXSb]5qé<8Z-Y]2WZ̞$ׁه1l#l$jsi, cb<&2$7BAe$For~<IGm 39_ >4uY(n Vx01r17ȏD]ֈ}m'NrhJp-IBr)$"(1 Y!Чw>61̕MSC|6XQ}LT5oGQP S@>T{wVCKkosj$U T K f-?R ?qMzb- ) KQi5y;S02}Δ2BUb'! +AsΘ`G21k~HxڟMTˎ*'vV ?E4QYYMġvMRq+d3xTGm~mVU I1a(*$n hѴ-]=zGdZ61f< "g(\iCCݼ4k4`~SC\S 7hN&ɊLSq❾TxP-nl" \|tu!81t33$ss /&񹖺{ߟ cHy;\p4kHXJ_A%zʄdò4 uٝ˼坥}iTk H^ˬyAӫ;4_Ry_I p!%A883vU%.UdA+k@ imfaAʓ}oMy횦xvSjOUIN`Ǯ@$+ <&0mq7v(#Q?D^e?lTMJGro͍^X'As@ѻ"k9s]E)*[iZp_t ]-3!D7eӻqX@ jID(g:J{-ReDE/'KDHO1(9[#v.{P0v7ڝLQ97f/D=:NV˓; 4V kܶ|7h]Jol\H$*֩=L rrpkFTV0JZ_lW}0]% WZy D- JeOi5ي\)$ũGLBzhog n1ų.N 7]E^bbR ER$]¤UήTr >W92!~) +TXp)t)O(&n^57QmL9Xߙ[E9G3z?5T1akY;IW/rv'nD9m4lL^$Lʹ^II?*jȑ2 GPzX|s_ hH%qNֵCwA1D(^z̙[G67uFEE}q.cEvؑv e ~v:İE+1=as((a%). !Գz= H:niKFzvB"dX[$ Jp'.cTTE2<7^rS +=R 9ssV\-Fg("GȄ@wSoi wRBW >Km{  d8"Kbd.cuI=a.dƭ roA'[Y KlٳՑ\'s@#PV5M4K cO4N LWjn(}ASѻ!v)PB2"i/,2]3prK/M4g61$@ A ꁮJA '3@ 8TRF:àK`2ּGS&U`4g4}EBa"T`)]zNp@ʆT(5ӵƘsoŪo)gq 5AHnfgh5Ql7̼5 !/eZªYXz4/OV T`k""Bl&m?kibᮭ'~kVm:DpgF:qio}H`,_Ῠٚ~T?s&'sM_L/9,oV)K}}mO%z #aX h T/Bo "GuN3l/i\]4(Cxm ,řaC^_]N(<$u}똺 `R-̫Ut2"!äH[/5Ð @~e,Y%KF%WZ3VBЃsp'&~+$3`)G%ElV0eLW@~%'@NUHCs]P,:Lx jD'V9 LV zj58>{.)KL9[stU9(kJБ)zԇL1|Î ت%D5cҭ1]{ LnRtI<7ELL?=va05&Ri띰_Jl_H,DkPu+ҭ<(QdKQ'Hcve)ve/îp 1kMD%qs/+p3Ohq5z=7QkrOWb1vfC1yY2óO(d0z * Q_2v%O`lK4"DaACy%=1og60;8P4fmJA,-|ed\Y ΁SXHF䷥p sߌ'cffogΏnY(e?XwߢnM(UOf-I=쎑}2l|1g YU0*p>$b;v+cTz[.] j?*{yqD#OE.T(=59N[{6}k |+[0_GoI[%}c_V2AUi^g' QS%GK֌ER#PZŃ*+qsFjIl݈0%세no<)!׻ 'OCgH̺c̑`EfLz#FC`{#wyԨ-iUֿ,J MA@) `G۷g5М6Lb%΂SǕOX (.wq6) IiVOڜ[%Xs!ct ?AkOcwVW9)N"y[-wK"\}kX@Ig} xAc%=18'W}q>q+G 4Iu+vn/fF+#QXN2u9G44e33OGeJZW[AuQp9Zw%:%zPL` 璉D^$E@/3S('=iC#z(@i{Isbo; U WB5ܔ" O}M:[0ΥJ 6/^%073hFJz>eemU#|mKYUƝcX_@\d5[ѵTKn6BG;hwC8< lI.f+XTăciX}L:qL1"f94/X繋,L=1  /$`ؕl~`6c!M{^1@)]i( JZ3QAff Jx!ԃuSe1ufs #՞lZ۶LO}b+{ k2!J;|?"$$BNd"I,b E?m3\/E.71.q2UCUY%>'VkDf.Q')K"enVF׷\;OnSv3ViOlo$7d0 4"UZh!tf3h+ExrqtMYPV F {~j4LG>%M(X9JziBijTg{ X.-}c{ɐls4*8X<*ʶ"@-T\lyIȄ@&E :[ؙ ή~ ֏zM@3h6'J7.X龿$sVo痾.Okti8z]ޏVH >|w<ON'"ք2|1HMFvT4 t4دN7Ĕ$-Ԗh wRۂU0L5j̑¾N(H)ރp+ߔg.u,IK nUe8'ՋEzz]5f?3Rb^@9ZVfG!jUf=KƊV5gE'w7q!OxrY%2.킍p'w}A#X*d}a*͸ya;-#`C,[9fכJD/96F=m(-G hoGOUfx <|x&*%_@U{j%ӚpXZ@b3SK4"jj =531jٕ?9 Iꘖ"Ʌ8C& `, NN!3HR|!HI +77/ίzf}Bol<1ONBaϔ)ay^Q=uC <lPǏ-3/X)yEY8k/>C0-f2* q89) ZxX(_ё>5ж1<-QdmS9ߚ|/ LXD._c_s,#*f"R&KY.[h͹5"<.@O4aN0%>-Qw@xO-I@jݭvt5T:;iNB(bCPk bwnd;i68מՍBMwm gG?c`{eRkT(7V)%{[kKŒY](НlsmȚ غ]2TdUu+1r6_&$qiap~GO I21BB?[)}XI?5[ >#eTM+}H!pUz)So {*e+V蚺}C:ƾF Ob墽xnuWm%kr>eTfGO#qȹnJބG9> b 2Q`eK| ,6H -/T}+$ZmI}{iIBG9B\Jp+Qw)xh#=ƗܮW|[&"&֭ۛi+5Fz}̰Q`2?e/R*;Gu%ڙ[.U&yqծf-HE*84ˬJz| ܹ˴-7iTlt&7( ѧ hB"gS:|M6kv}؊;C]A/ | k z?*,A* 1v'˖nFe9>qbu2Ͷd%ЭTZb }A^Q]ƛ:앁 rQ.oaO"3j"}% 9 <Ƈ9u%ƞG?^$7=r]R; ΏȂj_J R(?̟oMeD. pt]v2 _Zc*kۢRIQ!eb캚ŋ`7瘳X|C[x$OT8}Hu&8Iv܅gX$Tqusg6@Gl4p}a4Xn?Y Zrgg1C$iamS! Q cx˽GUhp#IP7 YT)ky2_V(3kemK9RɃi1=r ,$<_%߃JN]O TӡsCSY-qC/@OZbxDx3h%vģ$`=P;`d2gB̈́V%+o=xvUAh< eڌ̵*ߑZQ%"geQ: ך1mG@N5m6+cP<(2`.Bk:"oAd.d(2N ]v>3O{?0F0inFDT0F{քWrKudԗ(2žB$ @NSD}CwcSg [R/$kbk(;1`3;D}=4 1@ n8\WUEnzV5h$e>I. Y)v|`QjBw[fxh1C#]=d5q̮-mW}|m3ѦFBx.@Q14uW'l@L*2 P4h?St:q<":QW*}a?d1g "l&«rBL, EkD8_wLfLr`/V |(Ĝ6Z_2NQ .i?gיg˚t.c :K̃!_Qi?y>u3c]?mMĭwDV %0b=lReg`ؘgW{jJz`@ BNX.jc6s띺Sߠ [\ R C_Q+|:!!D?6Y4]'hf㕝" 25-Q0><.q;L[)LD 3T[mQѠ@g3׾5n0{NN_EFk*A e!MDMAሜ:úTW2y^16 QJN(<(4Izl QJ4V 8DqL o^!DJFTnm$EK^[Yqb B\UB"7H8᛭.[^X7g'F\2DhXbWr*IU8{ "`\6"EW[~ G&Rˋ\<^{2K8x"don7=,^RJ]s9\YuFYTۜYTYl-6+t`QO,+|1|'UNhZBUg'eMiLP:G=)@K cHi"'|ۊ08h֬#W_RA/ blqnr@QB3.ykI'GQ2tX̔OfIwNwB9j`F9[)"MЂN1S&ߥI3p??L,35[խ^fDy' ]uE7\:Y @Wz6G=UdG߫wةMq_E # 7}rl)y"?䝡CGϦ[쌠4ԤW>߾ *z_DhS2{FJ'"iM]/*Ϧ{CmV1n},c߅-aK2 98 bd<@׋!@5ǹl,Ur؛O AӲz*xs,YPn%xRwՎ7Ӥ\ɔ1 ?EYee} ُ]ӍKSvrwZyiC%Xi]gQ|ѥ'_ussԯ>NT_Xlip̞D0'l cCJ$C4onTh|@I_%cMxU£0u ٛLƗ"`\?Tg>3lgI4jҷ}2/ _꺝ҵ dlpIZFČʦB!cTLa:vq7gzceB5լX#$&=X AlMU[8xn@}h2%rX{SYNFf~]gRvmZz$- U (پCfL. b|ךLG CbrpLvq/RV)Ì4" 1(X)/ک;/׎'Oz W[=%xn$)}3G0hcm&i[A1:] ,y؏i)5aBnBHΛF8;hn Y !IxH\к*zaSͮZ`#EoktZK[2@[9f?@7ur{p&:JUq_(w8`=Z Sז`MUq*MOnz9aVmOy>{I){/F^+ g/n;aхJH( F7"w`>wFu2j <WueoC3@5=_hAiї頴"I86gSH!Ub0Dj P(ݶOj |wٮ76[yw(kuf·`,-uЀ@ -"?`VkA;쨰5.C>㸗,TvcENDr4Mt)8* t*Kó0<,,.1o~.SH- 3-2 V>$5hs/ xD`N4ڋ{R22otf^C$l`tQlpO b$%9U k("&5Zk4tZګ`^I0Tj2.FOᰐtt xQ HpӜg]?_OQm=LPGKBG7 NÚb$ g"aE%/1m:W.(+=t!uAsͿ1N}ASeE l5t56J?:鸐;-!e2 넧=89} Β&f:or5+^\ E"js?"C&/ȥ["+x1` DMQSxVcƃTRƻ^)s~} ӫT :C6龞;ؙTҌnP6.Ya5P,z<_`YjW$<5x)p<$;VSpag1_oY*/5ndYv|b Ռ/B}IKj{p 4 D2L@d ]&v[}NPq)#E  8{g9&~q|f̍i)e8 a@Q?y(:FQT,a_ʉNXMqɪ"[nT=2ba"BS$Ր9eL6\}3FOV_tH0k4=Yq(KSk KwGʝR xPkZ%Tձ"2Jc;9kvW5ͰgE9 8tSɗ+חN«GdEEY 7-f5N8WI $[\ߦd^H3`DJ;C8Ňpd|)z V9Psߣ%,RՈþ]7pdZC G9ыX-)۴S?[yH^] jA^@rj=O*,DŶI5ʳÿiLOݾȣC%"9A_XPBѯ\ϐ6jyلT=۽"YG P9@i8`,1`+fGn7@, },!+I<4fvJCPu9Q3g5z]7>;͒ɭwndsX̋8^\B 8{uu9>P<۩F2*yP#M_.O"N8;͌?~(+ iUކ2z#8d'F8y< a𢪶"e&3}Em0mL7]~EMz ^L noo cOoe 9;Ρ1Zmnz5rQϠI MN`d> Zm^8s dЛgL ӭ tQ'Jc,#o %\h?|.w@%1![Yh6@3/} P#wXq̬!ifo,w&[ ւ*s154Aa0EwzO|^ MҨE(,^Nn0RH^籏270*n 1Y?k44#B4QusT;(x>o^}ryrHUP|X~T ,8ƙ2GD>;T-2ԴmQq)"acHc/mLfw/XKݿDۍ\?HR9X߿hd?}:;K͆uot<ͯFY:\bgvFX *ޅCs #0>એ٩fժ ]6tlP.LԌ^3 ].P; ۞k8iu40++kk{0qWrh! tMU#0 ݚy}S\~>x3;'Ѩr_@{X$Q7d sf#?o޴̶Cjr(υuPf6 G>tD!E3? L5V4Ї!wiB:⛕ ֣-3Ov~5*~j 7K?5ˆYV$S;^q._@a{*)ۙ);gw~jCtt۟M:RPנ{&{XyQSdl!7o?@Qh8<<$.iDu^2<J>j(*#5ZmĶLq†0 >=4N“4^2D ", u1҈\_MGaV9t})z;#IN o+*Jge0a!d*liJ}ɌOxIaGڴD/ʳK!?Z@s(!x ;IRT a2`n ]SI*0iX>L6`m9"گQޭ/|:zE-I|j,JZ'!TFʤK}h:E'Y1Ø&^n~r&fyHGDe4)Bd:F:eݝatkuZp+ >C÷̩)#>œ #{QkѺ޽b#h%E`%,#u~ HG;gRli}_:72 ycf0#O1/ԽI} W9A}+<ݍ"4۳d-$sB`ÉJn9^zwI6TQ!µ!r֦#& K[k*F{O1LN薳28;"DLzЩ]SXkUA h†{Ɲ@$`ni[`H;Um}ߢIEǟftUwۥl LW)qK5?@tN9ײʚT!bJ.rmg yHK ({GdDmǓuɘGJrT`dneĸM >_TD^0FWC1ޜh)u pezY}xu&%<[ϡscbfp52 TX:}b-p'>CUw̾\_]2иiv3jU4{ O:v1x]<ı kWA0c>ΐ5%D3Dӯzs$^Vy|:m*oI"K)MhV䈹f/rCipw|iǕ3y"vO_%,;BqBӞC&! J 3u蔋Q'$I+XTzo$ I< {Ѯl͞d&djaQν}ʃL4=$ءuѣ%U.lI݁'93*8~U};U{ A7=l/^ p!"(k:OZ%i@.Ib, yAo\QgitQEhv;8p#oAXqvLʹu| AI_\b5͜+ y)=_IagQ>_oc/ƝoDQ񤪲Ǚ3rR7;̢_x|zC 6s*J>'ےXꕂ d9d|Z2N!"du_(41k4n-ޙ L)dᗠc]m,.?b,vտdz[a@|lAz٫!(kᭌʨ9,ͲY`,*B;1;>TZ9LPc\v7> /7Kb2'D3tXet#ZDtL=2#R[VYw|?Ϥ^ʞ#u8#زl$Y1TbuJʬT$mɝ2L&Mz$mQI4 BW nebAQl8bc]oDâpzx2 #r T2r,.zjsʧ\qwiӷ[`aYQ݈MFvܚ9(OFjAi<<5'_">+Vm=)'?M?;hilolEє?*]3\ .Ä1{zcnՉ a yЈDNK:dQryXݬEhTxpU$#ij5G玼 hGh/<3=hBsy6|<_'| @bGUL;\|ɭy8_0н|Yc31`ٵ?rMe4\c|Lm,#ߞt=iV$Ј\`ƚ;ڨ g>8Pߍܭ·[f3"N˾9W>,7ZeA?͔xk :d3m^:Tp'9.t}Ao0EkCʒ쉢wt"UEp?nJ"ȪoǜNO0D_XKAJI\2CӚz 85 Nr.w Da &fr_S`k'U2T)|PbHwkj@v;$oTQM8* 2iլ  '-LH mOxH!+ߗP1fdoZQNab3+Zx b^|8ȫ*)t6_Y2oڡSz0>G"Q D3@ZΜŴ?ür8ވ0$vvSu~عް e_zyC'>'Nc\ovˤ$"63''x ,}[rJq$x$$H,&ihfS?#O UP% &p  tR^:)RL 斓5Ż†ak"ZQ/3py7aSؼ3JwG;TF->e[8>V)IJ;&q7EkѧU[iAU֖+Ms]AP9h6cP[ BR]) -o 7X Z3ؾƼfhqfSqfH:B;VsV #1_( "/> $!e *qe|>_NʳĮP%^_i[}L[Kf$|6rZA "aPom;z?/ &jvjR ͭrvkhs#XYHBLȔvzs`ܨ4bҺ qS1n4-WOW3@1g1,beZoa%mSs()`hQCv&a3Y? Ͼ {dn~_zFdfuu&zqi${PEZ6pYr+XՙꎋsHƏfg[ۧoii.V<+/(6tr+݉ƕph$Rډd[\৊1@ϟﷰOnjnLEieN`w@؈/lRH Sx^<{\c^$%ȁxբBc=ZJb;/U:cmC86w숒(j^(d9EnJK"q*3&7'qBgIJˢжGPgQpOSxէ-$$6S9wvs y:Ίޭx'ϑ]5@= < Z)5>Kc_0I}i$Ń3\BAWW\qs _ve\WwdYNI w$/ n'2 u\[dm$lY4ϥC*҃_h,O'rݷ :\(Ԏ3;}8RJOAѾzz@{*v4ǖ~mH 7>C~wX{:1=jB!qP~&Sh-ZdW?ghE'468/z'1pn^l;;Ro˱ Q4HE9vޯAcOs&ii S_JS*jUh = >nAyJ2 5Ȭ?]K})h+U~".c۝)(NC=r# ]ΪGdJ,X!6v=rZQr9iJo,ԡQlnIbKB+P6ᶒ++n*쌔ӣU<ʺ?yBTs"BER-|V}Kgֳ=j8w e?󩯿\4^(2m3Z֪myُkZx.ʚ 0Ǟ=o页0r(SUdʺg³ApĬC|ȭwzՁsct6x1598]QuNw+V-JdoPGkH1&1[L'g[T C9PSy Gk+wu)n"覌9ύND&ۡ Ehѹw-Q%6T=፣@赾 ' 4MW:^/P$qzr ݹL;*qAiNvy(ͼ\g!MP5!D*=Y7Ya0,D@*u|X >OA>C̑W8iq) c@ +[{<\TiO`c˓iV4i,;K1k{aRc0Ҕ0v): Ύ0[._,Z)7}4BbUEb0 Hx@ƲQoS8!6ě}'O~~?8|1L;*]|WLn: 9~Eï ,uc-;DMo|ќHD}((tH4{_ϻCQɋ7;Z5zєQV߬ɭF(~#:.7z?O:ocي&+̚MbZ\"Ŋ ro0z|e@I257,ߊqMULǩG͗0tʋ a:QUZ" t]%&2iċX_}5H͋׿ݔNY/0v7OZ4)f FD,l"CXc klM .WC6p]h57TS'D [HA̧gw1% 0$1~Hin1'jm4bbu.cI{mIH`lU>7Ky^ϭ޼;+1o Czi<|B7Ŕu'3@_¾ӘA@diZ!k>l-DM_\krxPFYuZ ٜzvRÊߝt1򚏷^ŀX}$31HY;:a'N3% M y3ԚL$D T'ub q^](r`n>j$4tGk+TA5.7g߹VrfCħ%mMZkD=6F. \l8f}\ӥ^"ޝxu)5k 2^K8dK-0wЉkR6gFB˻ `LLLoœj^F~dr\5D/wb2`繌_,uWń;PTBkʋԚ5#yh^aYbrF&Y>Ӑ{HNJבش}|HѪ|J81no@*!P kLDґ\0smPˑ=@1z!=\%u\I+ai"vXCS:PRF0klQCrNMjFJPtxǽ _胋DV&8L<.`.xl< A`}Vn*L|r5Y㺪Z X%.{3 N}r(?qG^d2T)i. I*i3yXXJg,tÜɽMdx!դrʹvиʩ͕3\7A jb&AO.BMGdu)?\˔Ys^2NȘ&~){$GVXxA'XċYK Ugx@t s4(">sNLtGv[(a$'._8@8яPS/yv`>=h/Ti$qYA@!  8`G2L-S4P4"ۧUU[/dPoL0?6g~4t'%89N#g`t}}58h9y:DizXj8 WE ~%im-{9'_9t|=[O kLM^LG ,S$ݔbNy\W꽘7vql7rcLj ?ha]-ʳwm)Vkiܳ}aBKA>\ 0WBtWz X3._I2xcW4?! /> sL0_,I[)bT6~Zm"]w.ÇnqS4 ߲˂toaNU#|ZVfYfRk+;!\|Wi.HWP%u]9C+4`"`'t|<@M n&Ē HxvH)ueD C?L-85WB'rDhcV6ie*w:]̻zɌNSPi^Ȅfv.6n̶1q~Lr h2ԈS eY ,dV ~ dܲb`LH8hfUm[@b,wZW~6KTv[1TKAJڗ ܜW (o"]hTBo$yw`zk\h0 s [ajlp̹e #,[HҧOpGJH62F<EW M> 8f"@w[-6i:nʴnnXja(PH@^\j)%?ث_a 4(('W8Hݺq. 3J le)-&QoT,=qҹ~9{H/3#cEe;#dIb8& %ѻu'k=d8҅cӇ1c7"R*n[ \/qdsm&)׳qZ̶$98JK^qOzZ84cD8l,}dizg-J IU@bgº6%$e5lŊo.PʬB_j+ރuOO71,HLv/]wI')ذٯA@]Ap;+%U1dvU+i}?ܹ?OEgqCd8(i%u\2`#P>PA6M= Gك;jMO1GeT (֣RSJ;5S-v1KiƯnP]z1]@A~XoRq+Aw_ZOpϋXRd|!U@O:{\Ԅ|cHrR&t )+U~Ǖ0~ZJѪsSJ[;؍$ G Yd=)ZrKo N{G][VGgDzd1N;eڱ&B&jsZ&x2sg!qQ^=0=s|DZ?ǼGK"C Yp+: SDʆ?n,})k1H.`{ [ޓ8M ZGǂI&by/65d֢Z!)?TΚ!j!\9z 抢)M# l3l.DG< }B@jXy:t'$Jn;bZM.Eq]t1GsnM^ftl ;uB,~: ,m!Է*7sne *2]ꞥt7fLtw4d&dpJ6pG市n:7PtZC>}zii >.uVVTUj@/ByaF\I=q" 7d۸ ׄrTuAj6e`C:j:%Ō6' pYs"L{]ŝeLS|[(/WU^Δ3H;g?2wi%x5r/BT,V=ҜIP*d y85Y.^5*Ŧk}ޭ424ھ=e9nx8f@yl+Yr<%'TۊNlybuT[>K)|$iI t,ցm_RE1Գ1cڦ&ډ nK`O0*Y()\_'&(V[Cd5;^<(I$fJRNVqTXghpQDwGy'qPZ0eV5ξE]dA>+M9[ ڦ0 qob*{OG5E"欇6`t:tC;h} =(0]CL\ ;q d`KUkQp#PM1NiYUvndɆFY {X|* 8G~K]`j|X(GFãnz!:$wQ_\Dg["_iJ9yÜ'Ћ3_Mlg2BHY&/ww&8z93!PGs2ƅKQ<]溬',ݩ[3=g>k蘑RE1qTd\pM*h! 1j KX$# {~td|8^ GkxbwHEk JjXOKdY$Qe{&%(71dBt#7a92{9|wR dg׳@i)kU*ٖt-<`T}'HI[]R҃市/PuBɤ%!X~"o%r $ a $B{). +Q4Y_G|vrѪ2/pDTCG'ƏB5XBl'@z*OgcqA@@PLGɔ;;1Qéյԝl]ǭZSF6w \@2a̔%~Jo)>Ԉ}Ņ@~5>Rfbf%*~bVfW^Ճb4<(;#})1"̚xcԋ7 Έu!˒!_\ ,Yݚdq  Ь BT5PdxI%0;Tvv#‚sp\/6>t8 h&{\(JUa~5~K0"gn.)p t|3K0gCo28s?,u/~03OXSb !9V.ePb\D4p>VשnpdyѵeHt|Qܬ\r7%Ԙm(_t^Xv "1OIyqtx㺄LhsK0-/ddQy8}V_ $꠨;2A*6z(ɵ3'!Y" 2moӞU)xbI9)$U#6~jXv-= =7{ʵrc{!o؁L+ж&W/K% X>Sݱ> *q~w.BU؛ehx2ɲQ N?Ip'=[1 ohFsuW䬭ڍZSriImX@$jtRqz'7N(=|,OGzR9>01;xXЗ7=ix*[6v6KL/]j:ش`AL1CX.T*5 *>K[+BFMN܁*8+0 cqnXT27\>ZґnT@Pw <w1ZboEⓓb 11)%j? yd[ y{Ņൻ8퀦Rp*ƴH߅S'I!?bcbW @)̯w,ӕ Q@~IvWUqHsV@Qܻ;%س}͈VMP~H:n!Jm } ;.B$hesK'葯FKmU6]K!=} Ud#68Mk\Ru%!P6MN<Hew40,mI8rqh2U{ TfuRW4dA>5?Bzϳ=eo8M"ym"9,Jnx7ĖEy-]8T,GAvشdQoq3XUâ۠$iOAAɡn:RQ=DzH h` H[W ,]e2*3_UBbLi.i!S/syRQ4<߻c3Nš7?? "QOe&臗xA k5@$[94B04:i. tziwρxgjwޜ$ު:0])=Yrp #cm+! 0op$gǗ"ȅRF}7YM @"C10kadxC˞LNW@IԻ_lNYŻ8I c쁰ܷlZSA:Ag^k27N!P jq;jx- upKnPy3 Y04'!YLE/_Y kSMԯH50!͘ K%nҲwMeudes0Λ*gJ$7rBr4CM.A;vQz ?'A 0#*³O?{ND`t׭fEu!YܱH .$wZwФg)PEӴbf_=>Hn탌?GrIx7a@/3<7Xny3"l .bb,\>kUgx>pRJ= 8g4}86ШW'2د4=BgApmgTXo-)\Us4 ]g/ΈM_L(<O;FPf|CISKC],݆ԜnB&4͔rヶ Ys;n ʚvq,k=Fh=P7C5gr]b\ x&4Ѡ9N< d=_z 4(얠z8afHKJF]-P;EgC*m:>[!ŕn{.:'1L&>nȧ*ŝі̀?DTeڛ(WWmux/q?7 A[X&J CQb_ =k?>$#M;4{ŦFXtm]f_6$@O( sx6 k\eHyҺhگ>:wTB O5e qQ1li~VY7^IJʎݐCH 9r-!96ׁՇ 7=@L4B^~|pItQG9j뢰;äH;rҽ\0H̜rI8,rߌ~+Ǝ:sԶPpM gӘq5c6: +!iZ~:M beou!k;UkE@L^ktpIE"k>7J.? o 1G:k"r5$0ۆMt߱4䶗;/><5Sa0L]8 ) v_\}$́Ksb7цOgAr5"Wh)ֈQ4X8JYX{rއMw9ozd" Xڳ|;~V#m@(CZ#}mt812^vma~qAz/{]K߇`C+v^g2 9`m4X{ِW^6+ nUzn2y]UǟP>|3Ð̪1&Iypќtj߹G ɴ $F=G0n莳ݗwx) \7Oh {0y_H/TX}XqF)w/hTC0+2f#2 Ana;fuXɏQu>61r5ȒЃu$~ Dvڴ=vq JF;M:h c*{.J`XQYF+wdY̥f625e -g "PPjp^ԑiJ0|òju2B#ǟgXμ4HMW#++a[4@d" P`G^k\hƐn RA +g 1i6_3+N% 3HMH a ueb8Yu?Ė /!T,tr7.-sA~RV$qLqZ->== ؿ⹁&\ȔN Өi u侟J0|ҹԂB@ٮu]u]fҠPȱlP/Sht3=(4[G)Β- }wK9YV|>(bX<(SlSJmleN@i<  b!Z:߼Z6ҍ#Acq좢, ~hпcu58{* M7!i9g!Bq$ȝH(@-Rwopr([ |}Jv$Ug!FځRi^'>@iҨD|1sm~S/ jB{,ސߠ `>1CTw<,W+%PD|M%j|h5o$,&6k 2q+pa XC>O S]:t=JUﲊœ遌ǼhVI^bi3ҍRU(D TH"))x6g֬H+719α hyO(U<Fڳ '',4c!!֫\nTnb`pu"u zp'"I& 5m$дIAW~h;âv!S9~RAVwu5wNn.4O;WBE$&HElmI"=Jd+UiMCO4׀ّشU<^aED7K vb3bzfaD,QbVOGp*7M6S LUw?d҆~EJF,6 BY+4A[.R#E/3[^`KU=_?EŇL/ʻ۹*{3;؁6-T{mv}ߞKtߥ <\0 M!"+w<%Hv"l̸(Q&>m"TaNJE5btA[vPg7H¸3B&†Bޮs4g1Y9_@Q>A6% %[L i.?ttm((`^{]MzL=%fבFc+Ybc!QK$R#g` kL^}K4LKTtBa䢷r\z_s :}(X O {&7%f:]w6DdtlsSA '|(̂jcr偶8*(%Lw*KћQ>) b17& mtWE$*Z6x\ sj{1aYɺc٪iGϾ ^>{w:yI*PVQ0N^KmTe{:z>vb_Wl(آÊ; )!=8 _ج/Y=wV4p=u5 לKG B0vBG8a%[5 CVmg5ɯ걀y35hR?w5-q.$9tDWh}8T]ZO*j5TNH ?HFJS P.3I}B6p4.\%N琨 xw(fq>*ie D1Q!2!aoSb?ҟpUm_a'eob8xSW[ܶ(VTQ<9A9iä~_ԒKf!;{gTe9WG Jh]}{K빆-9\cmoBP\"&>AϧXWE[7^(9l8DU"})!D8+|;9M_|v`Ibn#bp5㧛_cҔo6}^Ξ)z yMkì _HQ5T$bԜ6/>^S0.tO$^eߙAUV5Nt !|7yh~,Hs?{}F +veB\6=jӊKMyfH*Yn E1w`& +G6⇠wWT=#T'_cWzi_#p&F(AfV;0+HMj䭊OkDA$W7jq4'\E;`jP=ZڕY)K*ٙ5&*s?7"<8Emr3ﯣ4<]+$u M,vOM nkHS JJҚ| l|7C!v6mu2NLhY g\nnOemԗu eGըN٢k R숞Qn[gɐ7+9͔+ ljRS/U )56~ SI[Ne~םUh D$"0]~QH1]!IE=ʢR9# ҆)-[hE0e=1vğ^8prwrt,Dgu{I[ ,V!DT}H8<}Н$9$a y%#̱7ءc|U\yj{;r(tfq}8v,{ꄷZЊd͗ջcwgmQn7 >k_S 8 TRmoDfHKLH3m.Zu 81w_+1c-ќ+EW'']]wwn.9`;ȢL í5E@YR2f-#dEeS0tHGfJ*&__s2]x5;\U0e#W ]-#3h^ǢS2RrLfU_߻ׅG AKDk(xNth˯Q^d5_ꄤG[rb m6*u0q^ jdvY&XkR_߂H`O-`ˈ8R^֥goQZ`߽ M| :p3'UZc}RUV%RJU!rAUO Iˆu_zPD==s3r9xUv5ΟZڪ]X[2w *F =Orc>!G W1;fusH&OdG  d=x]#)(/6X=hOr1+niȀLrZsuLjB]LH|U*_ܙJ_gϗNj;iy<嘀yt(KB&A$ǿn$yYDلYX&ns% 1J+`#YHF;IfpEKBP'I Rt ~2ʯl_SZ oR9fMXe$ڷpN3TRΦ8U()Fh}$h @r.4s*.zm(vJ*ĭNN{3EC-z 3=.q.vQZscT,Q#1$~yq^p] L_"=qH8CoG`=]lOr$QZ@TM,=(3r+O&%wѡD İ4vQnm?wZFKZ 4_-HaJ`jo=8+5ߎiO׸p#",iK~>I »ZVP9 gN?$R̶#=d YmlSdV@i@4HjLG`%3ڤaQ p@ТJzpÀFU2z'|*/ x{m} I wVG!I(£whR6-0I|ЛXMXȺ*X8w@vz>Dz?+n1+'ᝣo%_ L5=0ŪRYAb{= ~)ix7-ONŦSy+. )16:aL+|mɇ&36pjQ>P!04OYrceA "UՠO 2eءZ"JNDQnYv34p$'0asr20tG9Vi$Ϸn{NLJD%eb}d77IYnwWI\3SjD^J*t_)ksJs) 49G2Ё6A؃}gÕ Tt~_br'{e4Hf-= OqU$WkS& ߔd_>inJr/C`\ bs /MQQ(cb_Kt]À?5I=Ix/|cA mvb)kh? Qij͇yC{~l;fb% hd ˼Z:'f;N@MlAB}*sINLK1.ʂ٤+\6OG˶رiƨ` KdzAaiT"r>)KʙDζ 3B\ઐ j&`|r.z)_1NI^'rv#\UUezL!QJ)ۍW'u7bɎ:)9>3"˜}zJ⼷.O?PqQ7@/m Ɇe_sPnpf\7]˙Զ(!?6}rq̼rƍt'=RJ |W%zkO <\Y] S̚pŰ֠Mџ/=oA,Kbgc m[pC_[^goVRc"6fX0^AT*tb6r4)-=(|:+v: \z.O$@&lH f6 tcJ|Za #/g^{3 ̚["44sdǜB!I"rԫ-aܜSJnOz4dED=pWq{L']Y=IiHms`w؈ {JqDfnoxs:"nź/k-76 8DA\OUb8W  J\_q,92m BaDlS-ZP =ߠu =O0iz kO`9#+-<|uЈ&n]z:0f!=2Vv}uxӂ]NpF/l"J EWFНj9 \ vŒm$5-W,[FѻK rhTaR`w zzИdLNecUi_Dd!hgiWv^q+8H4\_(R9:q(룜2COr5Ƕ}ΨQNjDgb^ycWc*ʔ!@k#\~a|c 8F7*R[x93qlÛ.WfjS>{P}jښxA/EHPPiEuUmQ;g@늊ޜhR~skuGrO̺PjXؚf%+^uY!yLQÍvNx,U{-[ DsHue,_'gm`#.8]ܸ(yGhAV_CiX)\@1 4~Gp aqu*pJ>!zOU$%eڹ+ Z]Ћ8_*I9t+^U r׸CYFqZ!|=$)J@ ?aRϗ) M_93"$@FXoyvH+"̐ˑz~"cy[Evbxq1YD]I)>A[.o 2`VPJ8E@mOzO ,^t`7=&g6䐃&h"I{n.a RxлpWqatE|TK6N>%2RVޟ5h: pYnz\A~a4W 򕥰?;m9\5iי; EB| k>4&8ٖ1%V6B sC8Kó}oFV͝:{ U+BW#7I Jy,,ڦzn7QY/^N:XH_,ZtʘXȎ96ΦzyMxm\R>z]4 (Ĉ+Y7ra9[tWPMl^i5cMnBԞ{Eq^v]k~ӗ-7R6fߕ﫫4;+ciFV[-e(NpgH+^x=ReF͠VFj'uLyQ%JD9;&v[]Bw١–NHuڡ$0ew:8x<^n+;~Ueu^m 6=U0fԃ<ܼai-f6|boz0"(w`b|DaϏBʁϿ `ϵ8+ :4z%`mo,{ډo?6t~,hDN]e(-.Va憙eg`WD5yw8/\ɉUM Wc':On^h0<{pU#} 4"X- wa3{ ݆|0J&&X{W?@D`쵕od:X:)d.EnKE@'Rc K`[ r@lj;'kы!\U&1@@ijYu d/ƀa ~  Sh@X^& WCFp&fH=Ad^bW_;P AHUo&<;䲩" -B/&:Ugu"*9A6NY{Wd/O>_Xur 0َ,e(sܯF}r^|8^!4@p-n-XCabBoW`Xg*͟g,s”\¥{mϰ ij߬_nRV='WQpX~dwK@x .wj8OCer ,af]"pMQe3#j)pq[pWރI&>/{O "kl11q'#x4ȥ҃gd9!?t"Z\dp2EqBѮS_b|Cx*_G9V5ԲYFex.bC.E?Yʰ/% NX .9eW$H-3gca[;s9;:H% OVN$S؜NƲ[3 "oiTC^ث:q{Z#b{E Χo3<pZ_L]jv+^g±) B=_%ph.7ꬉ:Y@n 5^wL@FgdG2,-V8H 9-z(AbDjfYqs@܇/agoaKWj[:Q޿z. =Sd(0L&ɔDi xA^bFs U}2| { YC2H`pjs Bz3S Î1I3ؙ]BCuV_(ӄ iMXWՇ 4)&"5_;;7GrFb*D+V^h(wcw`pE e<6 ϯ{ч4f܆\\ [38'rDAnܨN5̷QB 5"ڷT `+#l-f 8L۲EлY}^oɣ2zBVeˌ^ٹ?+HHݸ! 6瞘&Lʢjx-5ITXȄ;\sH4gD,svV|#Lt'|C«:G8*GF\DTQRcm[)=N&m ua߼CUd 3|5)"JOr!Xv4} ɂÀ(9w خ$r!o.]"i6+W%;>RCiuug @D' ߙ{۠ Ȟ0ަ8u2J*$En q0K&/4QӃ[d8ݍRFrI17o,93nǽMUؑ$m}EViS(3V$)PAy *XՈX{u #VrcM_2=&,?{mVuf{g/Bj :I_p[ب.eXHK4\KC bkP44Ju HUiUwLM TV]X$IYU}lZƗo[$jWClfu6چ%%qjL'! 6 x+W:UW \ M3%w\&jeq(IU s:z2k\ċc^]4R@'۬ɅY?R Ԑ|@t!™8=6jV}Ok`ϮLn v'+.e08יޫ0%s[YH~Z‰yhsB,Zvz`Uo{Lg$zލ/ҦJ㔦Ӭ\{!ς󚎚zBn1 aMW9ĥ'f'%9j6\-(q35%7C~nK൅EAPI-eI1x1XqKd;Lpfe2`&˧cDcMdy!?rOS1lu0|%= -;RWýMI$5o33m7?*c6KGLy t\pOv?(RZ1Er&.'WiibK ."A(й^N0-WDbpջzFZOO "*uix~s :=1#Q}<@R3b c=liہn7*qU|=`sbMbzj&NR>*+~SyXFbdޗjӳ 1ˀFg YahyEtU[h_͍uDu/7z(%[r'Y*>\Zqߎl!”pQV v`tw'`".[ïnr*#Xk.N')KwKrΘY˸VkQMd|;]%h#YdǛRxGKY?4ax"E p0"N~aAFĪK^!RX3}FÁ^e'6u &71߸Q7HDJؓ!#eJzqpQK4 x(+s /@s ~(/v3m<RXiAE6 X? >39u19(a3WOCX|3K3AsװU4K|Vz]}ɧW*UhL#LOE$} ۨx/}%am_uÛ Lߋ B YZdT!mFiz=&KUiCTKX9ˋs/XBZ7Ykup;N #H*k8 J$`B?-hFMƐ• %a 1ez,d\&%%+bG*mS}| m$2ng 5heL^_)Hb뛄$ːO_}ʞŸ`>VI I <iӶ}/.q0r3G=LDyB"Yj1A5,Z;?67DU?rDF379v(a7NEG%%ݫ6mIf R h97LrPJ^] /\.t.bG;|0G2~ռ;m3UmjZA -)QvZL2ɞH`9n}/g76?Ϝܹ<F&7ǵ=@G 0z $͑lv 7}'С`?e@uwKd<cXSak Z}=H4~Ū`!B|R= HpV(YVʼn~1m*s5raj("q%u".g>cMYA(0=Y:?/C+T[ia|sQ8'ҫT:'OyK;[[\6Mu!B=v"{{k& 2؟httlUUE.7 l"sP3'En~KCk V@qجKV1N;x{Y#`ijipkT81T3KOSeXGWʩ*qmҊ35I?Sʎdt% NAKZQD9 Jv4uB.TKQ-LԶC-`%,PēZ*K(gMq1G|K~QD&{BenM~gB1]@Bp(6,RUu-%(P9-uݐGZ1í]LfA78tj\CmY/p ]gOMɤ!qhί]kBΊ!s3hl $H*c]W3&Rx)~ Ky6SGβf{n I7ͧcSˋkj/pvUn/d`K'Ad2^7cL$xZn}>VD[x.I{y[z_j㿀)B D4U(w5N z4 ZK v͚lg#Y/s-ga-;Av^n/Qk5Ѿr:#j6c?m߸M#05OL2M+10΄OEc mLr6 Ц>|_+Xjf~fmԒѐJMB3qh1WPg 4-\`.PYNFEgE.a}R{wu.C@D\(PY;a&`kmYw|\+;Z Sl`$>?,]Az͏cS.Fb(~a>EpHGwꨒdnӸGqv^ј%US^9'x7J]"M*EZt7 +)63s޻&Ҥ B͉U]cDٍR| ?YߢWٕW1{ড়;hfSC䎨8Í}SZ2{na5ܧa{,D{)췷Y\ zفY N̟Aq^3z2CoP;|:15֨0,Ah+baPfgb"b=$5lT[^C ke94ڌE#\3N{e{97fQJ!Gs`0Rlp~+8X)q(cuZǫ^Ꟍ^͑\2mpEHOY(Nյ$NuBwNE]k-@s QZYH#@K0#$ kKNgV hT1EdabeK2+o3WJ2+[ R+!9.?T [R6x?D\>F~'%a!0U|lq2 0Pw+%Ua\ Ti-A'gtvL:v @S3,겻6׊<у:'𺘲s[m" u }1JZIl w{:e/ e~@Ei`uW+Љ_?Q1]ʅ?e5b{B%x[23yU}_}#às?>*BhI\|lH1XN]Eygfba PL+@!QO-=o{NnhZW/b)J{ !nfe݅'~5@k2&?*?N- !66) [Ph2q zAzpO{ ,`DC{vV o719;lVfe<)KH>ꏘ_(YYwjM4Htfa֗,0$e6`{physu o9;h+ܵ&wK/loQ| 㛑z0=rpRGO9PYN.fmQti[\S&X#wYՄjč!Y&^Cr]i!/=NEnYS=;_g&qTxF/cT/_")F"=[~ j@`̮Gp ouZEs΃],2Az/VQd ,fgQU-!)ն"rD+PBB͓;ϒ?3k*^K }VãjHoEvks;YY0ٓ%oku(|a-QU24\tOm҅V+X]5/5:rѪHW!M=5Ҋ: &e&+j%\d6 m/(\ 2mG'wBUI&Jʓ|)8$(@svq3;q߀EҪh q )L_dlM4_E?Yn>0=PD@a|ߥ< =ϏN%]z 8R8:Hy){xh IqC]xiU#_4Hr/JrL]#SlrmUL"/tRWb[35Qِ:CP/`˶DQr^1@$CC`Y%'wk8Vsyev@-E.a]\3btcoa1x%T3 27%^_arJ\%u-'TmTfdҳ5kaA$-(eRH@Mjf±Df+5 w>?B?giY7׸@Xq(ʜ]32U ?@"} FkHߥv 6S=0}]YvY#,~3󮆕q *a-m p?CGq FI@*ҴД>r;),ovMJ0gҲVOq 22!o»s:FWϊ;~#u=}|a=o,_h`&`w:0A**igA`ѴUˊ&vo'2ezBzmۇIaxZT+&H0OpQ9R}$7-vvQС^mִG/jt,+6='n [uh7$S cUtN9݁N9qki/_, ԇUөީ3zVጉMiA]v*1bW ʔܸJɬ63 }3{!k$.5Ɣ:XHh LFPE8]f _Y*ldM+΁GUq_iщXpu%c#|[6Ǟ=&< zm6 5(LYqU{4 e#S&·Z j(I BmS>#6iWK˓9Tɚ!Ԩ4ZD4zy>E  O&"qULTh04!0#kS|IϣNP>'~A>Dr;yBdmߚVss/5t-ݯ[q;B+p^Zu}2Y ͪUol<*y\\Uh9 +bP9V挢Ir#K踕TfblO/"R.j.2~Ak j?u#ᚽhH22I7Ws(U~P\}r2|FGd܎;u]8DBc'8^%A H$nbܾ;s-,#{F:}/x-ɜ\ eik]RT 2}<f6/۱(^Bͦƾ%%#r\CP,p뎺T9/]W6Ū K:@'sŨ }5[X5ߖ||Dc-2RA9"eߓ{,FFHF`]ȓ,QuѦ*lSZsQ<ۗv=3xNE^#X ũ}ۣC΋tS!r A@DhO{t9P[Rv^kyvmY_ |rt€kJ(p+4w]䧜D2Jͦ&3IK;7;/w0D^C^VZ o]lk5 QlY0dXLod^Q~ w) :k OMUFmoE/&2 b@y8pג\&C 90P{.3 Fm#}1,$_v+cyd>DIgvS|?T}41w?9vOǼzB +vrew=궫w W.bɬ!]x x0Q&.eȖ$ݧ鎶ϋNkG k\{>=P*jHnکcRt{?m ~u3/WXVP:?xSSf~'kwꇽեb- E^l5-c/z4ˎ+0#$!{Pdv2SJ-0{|PBOwcwNbiJ'nZ;BCʽF0q ˳ݝ |"t {.^3aR * \)Hk wMVHov'y}"Dcjz.ݾ<{tbOnE"ZdN`'I tgg A']0cV( V(emDZ]<@TmT1|knʤE~c1|R0"q[wa`aN3H Ɲ. }W8+Wm Pa `qjw-xC\d v&Ry= 2o.w^,-@u=s RO(U8ִḢ-2F֫ou D]€./q7ؒN5`2ŢJ-b׺u+\X5DGOF:9g)Z`dVěY"ߦ}}.0ӥKa ͋"!Sǭ oNIUZI1E7h/|D;=\c.-z<&ubnt~,u#rX:)MzZ D?NN 0_{t Amqp9'K)=4*(p|ǒdj̀5uקfb'8tbƋpL8ʢ/5> <njaI얏 <6moc1B!t10K_j%$xqWvXgH;K;CL*efo_5Y*DpbA/Wը,JN#GL*!Pv}qk0!+3'\붜^|]3᷸ үW~%pDuO;8gX)&!L\lGe |˃> *@l%]S@W'e%qrhމ:>^a\%ĚE|Vft5X=:oɀGZf!N\A"i]ڶQϾa;QA/",͑  d}!C Ζ_(0d #VksgNޝD _#L|/t!y=xQLwi76W!J䴹P&4BtP<qlB?,svMyqW`V=mөŞ2Ƕ/4aMhgqxVc{?6;ƸsOgFV.:PEt ɅR$%2pSg妸e SYKZ\=F"QN SJ=;SYP>Yh>PP{_[vX~4KLuOLge}; G_n' ,Sq*0JשpdHFĻ&^ET6bF)|{OT۫|}ExG K.rU%obT;Ti< dW#DR^:%y@uOaj9,oArZ#_#(κjRKꩨu8'>?Sscy ~>m1kh}!:Ff~ ('ɫ^}# 0XԬU֚L:ɧ3AVPfZ JMm7YoUl9ںE{@z||PU+̀6 )*Ր,18+YSĞ4b yy 4'Y&Ъ(k[KʞYJxgtq@beTA'ݳQƍn_= ~"WzP*=q?)KٳMXp|€nyD OϬ 6+hy As#Mas\6`aA_,GYH7L~58GW;m6n%MYi2zmcݲEtIm%Σz+Ѽe%]M߸/Oq_0^A:M|p׃OF̴8/'SJdJH5?؊K`i L$HdtńZLԞ $ J$?%%z^1P!och힋7VY"Q5B4οul3BÐ}#7Y Dj" \~߆Wꯝ tIN1εl)"25IEZ{'DHȨ@dnb?Y_Ȧ]tzS"J Xt9}_`[_]#D:"NY8o0t#L&pv#er>qLl6pz!}UVh,ƅ!#WδZ!j:~u~[.u|qUo] @^`aVS98wv1-Ǘej!d;4VBw5]d휽@o]{&}su4; akT>'whde>Ѥ̱sĨt%"5 J(L^)m]94Y띉ڷpQ"K:vLPNl i|.l_5-I>EE3?v٧pUVDe ē"މK3p>5A15ֹ /dlaZUy)Rq8 ,\ Ou8p}^FX4,l_0x0Iwt:Zd=@LF؎Zk; ٬-&(`AtpKiJ Ҟh2ڜЧLڰ֠.ty+6@)=N^)L"; ؞ '":W^k$B`ejJk!.cKbRDU=PlOiBAB~NmEUZ2}? Qes$k6 DtHrRp&h¸?bast~jCl[6!ef1)eÏ&cBj1TSc;&NV{]B ~W @OCt? =:hPbe*Ia;˚?&+ُ*Dp`q VNspDO:.#|Sxf͸Q<=5)dY$Mi Ϸ:wQ7|!mĉ3B#e{ɡӤi":xNW y wMk47pهgfd9`y2+p]6?t`:>A#ldX b_N|˔I`0% ?2 '` g e`-eg(*7@ MH4/XG< 5RQZ+(F`~]Z/Ѭci脋o Hҙ+|D Ɨ"%<:dShufH/K5xkz\Z; ໚.|Q֤?XlJ`?#/.jr+h jәg`aAA'eQZ8[}#uN!]ِ32i_PXA*H%v$S?y)k}Q'L <9 Ssh2*ӱJ(@@Ud51d >URBF]8uXWugDby+K:܄idԋ5k\BqG3Z89i,႖EYhe,͊_eW@STb30}6'GKF2 y_v^;65ViJrڝ~Y\zN1H5oRhOsSuob/3vUtʩb9N@uq.}Q>G61O2 QsBN c <^hrP퐪X.-\cB[ )kJly ]EuZWowsfC0+II˸UeHiUl26c$9w6hځxQĮ<;hW3ɦ;!ˈh1D녃qL.pHaZ) #3j̣-{W?I/$AЀ";'jotioH%v2w%<b2h݇ d ]VӕCuPq-kgR/ wH),xDROQe wY~L9n6gqjWA TJOͣ6fth<>l_T{\0Q,a`M` aIO`BG8v] XҜ'm‡xc̦P1̗ˡHƚnc[lV/X7ɔ\V7) Q,z(˰MІ !a˕WXSK?H@yX(ܩS1L^|޸$7/]2}kW*z$d[ P ͼN)-t]Xq .;l=<[p)&#-tgnGf08aw*jc`l$/vҝzĒTqd3}&bVNM9j4+`:soOsY)F׮3ϟO䎲`3(ᙀ-c. _ya,~a!0cvȂ-uDojO`Hn!0?ḻI2El = .F珞\lĤ>tb,DbO)q:Y{1~4[֪|qىZ_2AXI8_2PNbѼ7(sWaQf5=R³sE|s,.}a> ٧ۏJw"V~<{0V" LunINr?`hS+v@)gcZV X߆Ո}OW pja *RT =JykOe[<;N8MqH6vTvY[^%$?0zApfd f̃i [ *6V^iխˌ]x|h0[VXT gtrn}c{[zYQ|qZp3 j2` %痻L:r*?=QFm^x$B@5P{F 7獅j!R=Df%PRLFTH) cĜ?J]h;`E nE̚Y$uh #lÓQv2^F+H3<X_ }D8<أvwZJ]$V:hΐv-yqӼuzR[Vo:SIHM-~ЃΞ]h`&q^Sߕqȴc0E{Mhye[̥3pjmum4$LH'ur4F1_Jv[lV 5Qv"kGSfKcs!P5<䲳ޅym"?F#cs8 JUl mD.Cu4Eod:ӎ.QM-LGHCSi,F9:~_@=̰[ֻ(!n0!6޻-6+#N s:MnNpߴ=͈(4R1I.ͦv{أOa軨JŹ;_> 2x\_D:a2"5Z:IkP'vOae׌a߇ˏs:u]QkgfGAܠeab~xR)Z Г3|ޯ-~t=8 8zES8p0Wzx:{љ yLJeb,s$WB&=YR7{y4 ^H-KJz[U;U |P!}+EQZ!mJnK+x_LE*=&&߱?S._AG0|8@M= 8AZ[FGL6TļUȺ!8zt_P`)zfZ+t6nq 9wB7 2)J.D17%0HktFSֳ7[8xmP]&- xu~9&Q{, M|r$ȧup m903eBeWh?ܰE⠽h^.["ؒ[C/y"/lnq0t\# ul٬[Qu,5X6K_@$u0Y'IUgbZ=kYY̬= d7i_g1avɈ4W;kل-@bݖ0J_KzYGSTFdAZhn3㍀{I5Fi?EφΜ %/q]C| 2̀9>>EaԮ1wv@@Q!қтxCjٽNwݝ1o֍ 4Mzdb-K^4&GtJ͡[>63 tvz )[ W0WTކ7ra2xmDcDGZ ش$ g6wPSwfOxO qVw{71&57ÑYv{Κ \Ы9 z4qնc1@jnEz'iHT7_!9IB αB #rFbY2Kl*VdtŅIBYcO%=+RP´Yc&&!ۦU|lS-wkVg,cD'ǎ$"'Pnms>l"&^`Tԩ^G5FyJw3jT-6%OSGs)!q!ܱ7QErA+ ?=] ])1M7`iWuL#tʐPhʸjxFt5aOz6IƏ>5lca~ M*03`7G,!nfJ++t!hE51aaTr)v&moD2)Rv  Y1NK{ttʫ$Pó'<9ivuz+/ \Zwpu q{{lgIǒ!'V2t>A~POy9} C`s׾dh-~ !i-(aM=%TkUU5 0< dnI  5"> :EmݽcRBjR?: t\#̘f/ߋ27 ]jdOUhO8=`ӔM ujf60Me =[EEm4P5J!=|N#rE6_ڧNeX~4]$.O՟e~еL*T;㯜66h+3:Gih=V".F&qVaspKy{6lԆ 3T}^e~Sg$'}s| v4e29aҥK MrKNҼƹEӯ2X2VV?PȳYwN[2 |N>q{ !Zy/DkH<3t䏕 BxveopC pv)_8 wwKFSڃbSt@<mV]J ̉'(cjމWgٙfR ԉZb `,@JU+bIQ 쿿Uv| b90p4l^˨q4ޥ蚲 j'̪u@,I]śtUpܡh^TMfqYXCQ "tx\k6܊Gs_# j 4\7)FV1{`װ'8[9Cȷv]"xyJ|gV=t+TmTѭEmhgc1$M/ܦ^6ч19,颭5D\Yb*&~@K#*3Q֚PmlʜsxYljf0`uP2O4m2Kn_EN–,Me|Ҁf=h8 ~v d )l&:`4}\?⣘KtqҌG9å^PSo}jzV#ÆMN|ht$ɱh?\>>XGOqWv X&/tZmHR)G$gK E>(H#GA4,lױɕWҕ_9 ^Ӻ =uhP g:SI~nmjI3(Ɋ i|IhM^;1m|1_ e@ZȨcLwfs]̈IMY.PɗM5l/`x!<3^0i51mQe sb9"+w ?@xZuYFF W4}xe*,٥Zx)`߄) e,gtbEaW8+~rz$J/z.sSTj3wt)8?UI(Is .VFJוȂZߥG]RE[NVՈBQ7#Z*z( )Ȕ'/LV{L_D;#P pŶ*Ue2e N.J w٩iէ &pKVqށ^dE49,.R"/~]a7'^%^:oE,Q U ƕא,'}m<Yx wXz( uJalC1wF>|Х_8/_IO[\Rϐ+MoϽ |v)wvMt}TN1ƶcyHs;|Wb2:{aI0;.x wSx揽܌J(_wP|Q1mR"2]@Pכ7>i\,gN'8LKlJxvVSpܸAe#O I#DNY͍:^y K*DI4ty7IU`u&GLVgTQw.#0's5~_l( 6,.W!5sU'Qe']jY΅it&HT^쐊X ZݖD,[|QbJ~B{Cv7!藴o'XKi5gak64e0sHOߖ *ijp@I_'Bګ /{i|z=^3OZ(YiM!,D1uD^B'Gt3bs"9#T$E'5er# 8aȚ?GӋ>>ۚKm@kYk+i[ltbVWNAA!? uImbS1 YpHƗ׮,yG^Ym缙=7( bޡ(YʙIO*z˚>M_Ŭ5A+Ǽq`MjٰSBS0_ pl]&vЍP˄_C]hOΥ>x\ns hkh4,&Wm4i hǾ1@櫭ij{KٻTxE\X(HcP}!H#.qlXPPxI mxdH}'JN^PBsJ-E୶$=0}{`7VKNyk֟So썲S裗/q<Й&'UWJlYQWcι+2E/ lLE^EIx %-ǹ@;kMúnx,c/.RYfȶ'B?AI^^شHN Hr lmÂ%*湨uD?u R5߆Fu) .?zM;7I~54`nLSpS8}ث/SFqro1O6ɉYۭ}~Uǥє~3ےy)~-EφNS&Ôv|\N< l\S#o ~a'3H9Gq, eu8; r?;_jbB#|m߫SxwX"*W*ـlЈc!*RB ̢ʑ\J螿&}\C L-_0,%9$ۄ24*%$qK|*f 6VPe0x28s忤pI܋+sUXUmE20W؁'1H+nxV :Cf 8`2ln_LV׹L^eWsIxF6СA8S&ɼA3Ҩu"KTՌH&hTJ*JR&vS7x@A𼊣eY&hK atf%f9;sḫٸvۦd!a'BtӭwAp z0C(pFtiD@2!52-CLp0BN(^x1gd.u1H?גg웇t8k/[&~/@ (1| 0R>-نkb7vJ_޳&Yեnc*![1&n#e)#Ԗ(T SQtltkF7K!c$Nt8|%ՔEeV˝ݷF˩3mI8 .fy]ET=>s7iPq9§+J S (4A!ƫrPCIH84O?LZ< ^+7 g?@u>=oIȮu}f>k<5dheGA6;`FB 郴]zy(Ju+U6cnT +DyOlRSHޖUzo :_"S3`>_0-su!zd ra%@x̉**cK]IJVzeI:b' gb _GFNwD\'l cVzL<@63i=)X%D$H7ߙN 茳'l40 ĵeRIr[,Ki&W(4^)hѧZ׾##+r!;RN"V1?U{Y̑TSel E;=O {;A.h.P͋ڔp:0T~^_ [L)|N1 3_2NjJ~˜/Yf3~f xZ-nʦFf6}ur.5{b%tւiGsdUw+챴 !H}EYqLOnA^ta^n5JE#;wȔ>S*"D i6dX`ugc1BiC, )dø,A Y&-19ßWgMA]`UI8Te yg y\1vR2]bRtOywVU^v*j i;S8=lkGn14 i*6؊k;ɇ/NdU^܇Q|=ZmKRh<0r(y` U!Dt Lfl4jJ& h8Ԛ;Aұ=WOuRf;![jxAU{.%)6,7~ ʼW:\GUSHoudZ㚿,,dž9Oz"e^ǸwXY\I\N;joHC=527WHPHALd@p&Q :D֢q)_FptzH 23 qxA?P%' gx渄Lj]C* }ؕSay˯>-@uakDĒ@57[1#oB5e]UHmXv48'A >YBe_)ク[jWSL7 FoJ܉:RisSزLFwgkevذL@Mற]jJDwc9>(]ؿ IQIw!O˄N슂]wqѐbv[Y,|)nɢMBg1z l^h B3K};:kWDpୀ4X4=?҇y4ufO nh#%JkYUJS"PFnT؃r X`=,7fR~Q5v%/:e"<8&~d3N$ 8mXz.hWiRBƼ/J!DNZJHMXr_&e[E?w'8i)۴վ0(jSz)^11\',(;絋.lp׺"Y;}`NcR SއQ6C*PSjKތU-GSEv(G|){6mwČ5bRҏ<q`!1!ig '=9B3L)i}g*i铤xKs;rȫl½,`bn sX֘gFV=\}9XIMsٌCQf\Gd@fU:YXRolrk h4}S Nʃ _ǤU9(,'O\ЁQ nlo킃^Bj-ĄLp5G`Κ(8ҨbƨO'2b|3|dnukh)0?(ٜu+Pfe;_a0X氁άG=]:|^|=P}wI1fa]t6!K=`ЌsyJGc86Zp4b%n@E( )m5M.&.$8:K4XK!쫤:o&!-1#|rLQ1VkP5;(}[<׈_B@ZuN! {Lq'P2zTz2둭H9ʟ}L鎺6mNA9ERcU鐢7R@8n_3i߈I7{lz}X8SKbbgwA'ͅƬu#+$/up`;pSg=rb7}ێJyIѓ3SEjv3VW%T)lAΫ'LȐpU+@ծ1yy+྄ Ky*f?jxӫ*\ A689:`WY@9wEf@w\Z闉 ! bNu#=@IC.hkB4au&`琶 f? Dl2 (U bО>oR-Zϔyhonq@hNAeyxʔ21L*9<+]@/&{02 YYD+uz>M)`#1>[8{DW[{Bsѧ_TYc+פs94/rEj(;[ٛs>%+32g4Ь3$^yZt_Uj7'1a#KG Vw] 7T&jRoT݊y&d#%^+ gKa!\݄O}? 8wV}`@:@G  c9g %EF璇2x=d 8*46Շg޷a6k$CbS am%eXjsg==nYS5zI&,4rgNq644F:ܦ 6.-Qch e="DbHͬ?YE@/őy";_RhQ=^^a% 7=7ӭ-J [E" gFVɉJ嗐MU=g>< fpkAH1PyVqS&Wʆ n@t?}“#H˹5hG=6iiO}1 ȽgGtbQ/ɖ1;s|HOE)87j@i:p F]U鑠uk}EȍPM nWnt\'6m .Xl摾YK3Fy>!}&h([^o26&CEOK|"׶ZJA򚴶 j襧Mgf1%M_#A|')F E*|ՔZͨmMIOп;3 -U=edV8*7B]a0!tZ?uEKUas0:h.XJ2%j0eyAb ϢgCj#N695[$UlQhs8~e 8qxT 96躟NlܓA=էvp6 SIp!yz'| I7s7JzD1}VEM1Yx " ',OU)55ː.i34zZstb㠦#PRŀ@mmcn!C\rY,3q7 q)8#Ud߿,lO/QT)"Ҝq͋k~^Xxvͧbd *t_#޵O%Ne/ T!^!Na/ s`ӊձW}Q#& *Gۡm1Mi*I s`C?lejXUȲ+E~ g)EO k> Fiݒ E'M<=7ՔRRY) ~TU'r-Duh4.wo[FtNa}pza4]Oe0|xğYo¡zn- Iά-0k"4T陿lNi'θhMihl:euLx H8?_l>Z]eE!Ie(y9u,&y D܎]pUk! .(34U,*E@ U|s.f;(x(O1(0%  6S _XǓf a|\fWEd, ՅJq͑Ikࡌu`'zS)6?o;!ԗb[jI(D 6|?gϘ`zK,b܎G,#8G7$!B;ZT/rҳ1oq h0+STH)Oo):k~.w{f)Dfٳ/:毵 m˃R1CzЕ:#R'S)-B])S QDi3j@GN^rYY-NI֊ z u7hىO19(7'0 I%[FQ[Pw OGEPQlAcc^Ɣ<ϓYÝm;V5xe#P==vg@7gx=lG3XeSN{q~׊Xg这N۷增XQ\K?_L;x/0rWbj iTۍj@ zS2 sB_JD4l()GM@ɇe!n叅f 0 =|\@}NV'(;d9aB;=3\ofleJ\h >J)b05+|!8LO"^2U ƕIrZSNܞS &4{ցkjʁA>T`,g"k:u便7D$[sht|*-y` =-,SHmhEҝY 3 O%76RrwP8T˵fVMNeYdroGvq8TSPEU;EVޅ'Ek%_XF|ajjv%e'3 QcJPF|6RL'm^VȲG6>tof蘙ks"RKk^Dc}pYv+YZWX7#.nLn+#95^0x@{&Իܝ&.v5 =<\424?Q 9֗s5no D)0ĥ;\D)7"]K{L P@ N~zX\,ʏ k`d4 (,OuM|}Mvד̨oQ);:wql rvyp G ܕnx>XZ/k fm#PWUgAd03g# Fhz-GbݥMvM H2%K Н'|x^VMgHdB9-7 ?dO%IM?j!)]%)9^ *^fbfg׶E"LH.\ʄZ_j|6iv\kw^l(+jp[Z ;)SԳ ֤?bhp{?DBzZҦY㈱ވdia0_nb\@ʈbz3ƣ9<{-@" 1 ¸>sϖz"!ۄpg@"3ۏ`A[Ls7b #ސ@j J9'fڿ֘EX֊liI;ת<)m{-"&IXiTHXf8GfӡJ1[*PC%ʹWw5C|Zz4P-zUfi(Lj)[Q? tDhb^O/9s@סW5zF5p'e* 9rVxK+颺^ic6fz,8ʍZ>݅["wpX ?vV/~JOS'-|+ͤ4*Gɉ02tnد"u?L"lwiO]ڨP #_ajiQ>)UVۺ{WO%)i_HEVE0#*cBbu;=s9XTVQ̗4܈fpk l67] bJmRRNW<5mp!r0vvX#yrOwWGȓ [1H61=)55weнG >2(Չ?S$|Kg0}v|> 0V]ڤmN+ &%sO^au[ڗO7[fC8AJZr(XLrSH>~`'7 ҥ^Hf..Hjkv^1O{bv0%HPnf@L:LadBzgDUğM"v#Ɋe\~_jRЌu6QRc6hzzt\Egnxɤ\R? sI]h2mXTh8UO8azpO~Ai3Y"qfMY[Q .p9Q& _MGL:2d@1dw;bGNn%C(XwzE K69)\9C Cpl:fb~FdHZkHWͣX4 *;nAIBѲ ev \ 3M=T`H3щ3='AM bTӝRHay#+6͌\TKYji{U15|3^iݨ!ncICo;Kf~>ΨʣaN <' nxXj~ЊRwK|{B>_z!Y 2=sXYJ4BI'=d.Xc-n wfCP{t'Q7~WuxM3 }U[#CVV#wak ygVYq ugX6?>InH|WO>nP͔NYKY* Wb [*T&,RFҎ0x`#4r o%K}/1j%A6"] jdgceO&HȢ(^V,E=8<~khFBQ1G(8(~8![n;;qN݌wMs{ǁd:*~|F8ydl!Dge;E|{X-Dw@S@V8%cU? '- g qAFBo/^ >^R,-`96&;(moκﶳ(B[>h P$iSn4k0}X2ÊC7· A{ )rF7<[W}ef6 +'#ElTQ6Xr T |;8&s*E"6r[t(@6}~zK={{`6 Ï ,}dMէyu }=Ѧy3VzȢ6)û*bL#NhD$H^q }lP⼧ n-/bdk eiSs.Sa|Jà׵V{ !%Ftu"6 #"VġUr-ldہIo}'Į=% CL< c^Ǯ$ >R?A/;qW|BiKAy+_`\)ƪ右F܁8a'IKVTpH( H`Z=CSq_w%)7ѡ#TL6Lt#>؏]5N.V"NZ=m mX8chX? 8l󿹛9_`F jg \@OOpU@)H[xyiz">oStLVzE !(DSA h翬'g 0l݃03f_i>22)]׆\b"V,|hΥZaي M`F (wpz8V愄Sa}p1Kqׄј!hPGۊ1Җ}G)Ɇ'7|3l$2Av9!j]Fڄ}qGҥ8RAxu:L~Cz154S*2D۽Q*#v"H&0Ȃ ׆bd%Ϳi5,,{_v P?\b}{PgաFU!@߳<oS7_l1sh&VNE:`8OĞ!gBLݎX0mFq^M~Ho[FhlmU$+ȇ}rh[+T|3@"xquF^|Vfvygg?@gloǧ977N$8Q6bVzFmǥ:9z#xmOWk}ٝl %W) U!)_'"XNE˹8.4joQ#ȌCҚ's;7ul}MiT3B l1bB?Te6Gi IS-&u+e%>?jkC,4yhܚ!v^s!!Rkx(,ⷂp Y>[u0i~]lKpCKcwA3pE4pUZ [ngMLN̷͟9wNP6J"fY/LQid siWF@Tm*)c!@&w7Eznn&>.ٛ())CQa_M^7\T]'U94:{& Hnߩ$L;.@6rnrgҐ-S%kC45?1r;2زZL)"^9YC' O*/~Ya0zR,TzWU[W%q7/qTDhY Txg?kQFp}y+i'FRTDΟƏQ < Fn%fs qq)䮯F@B1Z2ǒ.X`Vk3z~.nT~}-Q'LmyB:.2 A l gKiW#"E\Ø|nxA('[?F'4ͷPUbkheRɴoVWWiA2ٳcuم-8f s&Kf6WLTAV 6?V7&P22PjD( B!qPQa!;J?O-+_G" CAoG3"څ~Yo !t}I7aDEԁl!H[Ƶ(z53s#3fx|_zxcG jum§+؜xT(LAJ["xn_uE.#d fc&ۓr5T%ԝDZJP}rU_f̷{_݆8 1S&k;9<~ &K{ǵX( n< .)&u'Fjqg KKNB U4&^Ihײsk[u?n!exΡ,ID̫#Fs}zUWQl. vYY8Ty٫ ZsU ګ6."<&φKڠ$nHHyz_A;L=GTP((%njQRFz%ε>RJϪ4S #7-@!˚5} B\zks4Q_}%nHW6gs}6yQV5W V:@~J1C>e2aln_G ^oj\qnYȗܻaM9ù E|$VQz"`Gd r6)fvc{8lT%Y=?5L@xۚ:Cћ7 z.C{@:&U.᧾` '_G.aѓ.".? qAO-N'г0e%|P!n?>0"0LZqH~&2~ Xp,BkBqREURzoa>JRbŻ!`5 ׎hYgMaȬ2-3@=fJ#6ZEH{wz&o/7?D `)".N'`α42miGucA _mnW[|ʸCGv8 cڣqfXT'K4}˪ĒB]B`z@Ы&iG?flVp 4gbpsEW6%X4 p >6[^yv\ L.hz :/=h,`-}Y52=ġl*-Z!2FH؂S+'6KW˜}OyPp8e}q96)\[e2Aұ3{Äs׾y NJF48(@xZ84q+zo=0f65^:lkKl,|mů\G.80w:,nTd= ]cʌنu&N gG1 3nL`G_o+ܯ"%tHŴԛTǢ: 'Bهp#8l"gQ:^A 0vXΪtxK2!0ƒɣ[kl$z~<&J˸ "~h퀐I2cg`gKC 5ĒbflΨ?iT4K*(t ܭ[9sW|WƧfvuY3;U}9y[!ڞH'Xnb~,‰VK02扢QCD`ȍ,f1_2b,zՠ}49:K3*4,D2e&-Zujs&э7$$uO7J*{~X9pr11O:)dX ˂3Զ^܈![BU;B!6bx+7N.Ioy2FM!v h-\>5i!&[o8akMW|um_ n}Xqt5uKP= BܤV_olC;P,%93>ň C6EP8V,:"oM >DoM/ 1DbWCׇKk]XQW@L4TP5`sTshyFմ)lOX44|]=bJaY½)Qȩ]'߂0[i榷ҞR;3+Ԫny g>!HS4uoZ/L[&%Wt 6-7tfPV7pa;#.Fuvu~{99|g?gwF9Wӣ兙+d'B>߬\V*u}e?i;n WVԮ*;[%: FW6a-I'">ycTh~zMgjKGr/?%t$nr )vL]⥐3h|CdN@jYC )qz۳lȥcz`*h)jmgYS_ &hر8!JGs$πo8âI46!Ru'Y4p߼k6V讬٘ȱMY1m b0JɟX8P:}6vq2i7J,([{;އK)~(e XSH|?z+J]owix/Ɔ7̈́*$ CہQ%$BJpgLDe&({3VxN6sg rza>x_^ To_ZGDa8ԲPq"^dG?%8gyga74HjKbL\Ms˔ y@o|VM2'D8A>̭''yVt%'2rup~S)|ͨI@`Tt`3 Y)Vۆ 5ѲMVx%y{jc4W]REמetrHl(rk/zG))H2$(PZLrQہwPy ^NTEQ-Aj;hp\* -9ޣB gлl)_lp"iDfsyUqݲ+WzJf晳w3&lӱ(}lR K' D7ݬXSj9"Or Ӓ(03sXp(X_Q{g倯"{%TW5){2 p6k|Y` W'A=J 8ku'?[e,3t.=6=} '! -4Ǯki}HKoá<6iHslg<39ePg^Y]`ͤ@nfh"q+l[h)/*R~K<󉮉I6*CZgٓY2,jM;5eGY,Yqv3eTẉj$g#(@'WKXtfB{6՜ R3> aLb;ۥ^-UذӕH{aT@A T/&׷)J_m?d +t?kds>^Ajl6V*'xӛL{>CY&Yo,կw}$GggҝQJI^*lbG~#'1ʄ M%\iYr t"c995 .N-_s&tڷ?W\VR(]Ȝt62ИJXLi¬Ц+7 "`13],WovdΪ ` д6˓ǁfmxFl!_QBmqa8J'\xB׸nENwB5W5@n;Z":F{Вa^wA mYV R&e߻$`@@"GD7ȿ$;/Ln^[vZ2]B5Q,]EGм`N3Ob".#όy~"/)˭PƂPg3J;@R Ox[∞a?^BIݿT7XF"* w;&r=՛?1[k&.O1İJ`ӝͤo^`-єɛh舯a.A6g(7Hxb`MBtT_QIoA@K5U1f ?ui.) _t|kT5eXTTܒ'`k1끪%>w7r1Z)m':9?p]=KPnk>lû-5TI4M !bmjz&}*yJ NmdeB>2h"x*ʘPԑvZ7rX6u[`GUyt#AZAl 3}8LlFGhH/)1I;ln,+ eI-4Y ouOv`nPgw(8clri9~ٕL@柎v6hW>wD1awxsJ<=KIR|tOͅ^Dhj+O~M.>ۣ#QS.ڈ;y/Rolvd/Bu!8‡2i,'E|S{@%̤ȬcUk5J͂@h$?g(6'!dJ K \j쵤 l|hV C+`*As t2<ly5JEq|Hl(wt57;T 6Tݐ/rCUj-Lx R7ֽd\}ev, `}${@5H8# ;f|hna2>WK-5[4ވzDd@';V%tAZ9Fr[ \utHiOb:o6Sݏ"k&c@.VC0up2۞Z#`kI[QxEߌw;ҾI|s%\t(vRǢr٢T3UK;ǝ?ܫtjq +;qDž5'U3?ƻT[u&{?.EO5e]KlX*Smӈ;0q L(xVESi9FSkPQ^q}'g 6;[S߸@sʕ3ۿXtE 8q.Byh"hPKw0O% %"ܸvUB=RA1,4Yw:k49nRU<^I 8f01A )lɉaϒ2=!^g"bda]U}YSJ,Gf`tC*kXK"i/oTMZc:XڢA#\\ 9 |<'3dԚ9AYCkD~{]z[LOhF#6oOE-Z{2>8nJVFW~fGwqrzoɛ9gGfU$ivV\5@(1;F1Kޔ6Fjp#lDܝviY洲*4RNiLzf2ߘ)1˔~_F7ԣ9|Zx8|>S}q#R@Vq1PyFcl/(I9Uۈ$pF[ N<"i߹n#,0Ҫfy`Poڴbڵ>+I H速8fwՑK+ȖwHi{wyp^Ēk %WyY$<3 %d n|xl.ﮫ͝0UpSNƋ+3,Vڲʋ4YҨ+\ycE{Pבֿh3]+S i; ҩ&d,ݽyi,iP]_L.BZ&Xk!}[Tӊ_}d{$#ZujmQdO%j"aPxm;{ b FFYCY) AdT(Y9u}0;:i6w/o܍C(Nڤ XF% b/@*)v.NCJ`7U#@%7VG׭N[ͤwęW;K ܃Ob,tzxL ?PNAaX)Y&DB )ma7[n7[blv~G47:|Zx  dԱ?$ >ez SGg7*S/ r֘H^?$&q8'b`# tpvä@.i{wK?-X.{1Nkw7ګN4eH.{",f Z'⽑Ez\5!8 ~9Qζ N), a/[-M+k},vhG]V Ưݴ(3,+CZVp ʶ^!gJ=O -3uzM%`/ɤkA Q;q<͕s9f)A&v[fI*foAij Z=pL8om&Q*p{]& y_9K$d.Sզqz {J|xfVj}?f"?d@a`Ǫb2K=Jc>KJ6}'XFj>6}z*VI?K#ѢjRaz #G+.>Iq`ћNSr3-;eb^`<^Gu"g%!["9!.Hj;הԺƻj A=o`.'$N!Vj:1R]%e7E ɅʮY^˽u1\+z`).G J/45M& ;øO'it0 XcA89SG0 gWw 2^itzb=FDn.t*Z+ / >KxgBߌj`XȀ, z/Fbp.&O5B Zanؕsųtx6v y /ԯ6-ُڢ^q??f7 YOH.H Jv! ;|b'gV acUW9QǕދJ }~Dz(,ۖtGt|:ݣt u Tv*PNAmo {Y]O,rs(Ǘ)ٜsl<w`i=th?q+vӯl(M *Ȗӕen a2/FH8eV̽ofV6[m1inƽo|=ZC~GA -dsWL:w>yu`Oetm6Nʻ!YA*Bj\$Qb;L5]p\O| 눪™°֠M$bJ sSnU]9V򺝙Au{0&ͱ\P$'D% QUgFB>HEd8A]ew GLu1XP'"\-A~.WD}&WEo(QQ1s>x1"&aW[k?wM+VUpΥOJ0g)]hڜJR`- JqqEq81 ;v&B;?ŗc7N[ax0BDk~͟:`sTf(JLה/Ű$BUN1U\p.Z\ ̫P {X3@kHz7'k ll?:Íy&~آEɆ=A=n\bl2Z>CMǐ֬OffGmq7X>Z4a20sH$)!,Bf#i>yALn -?޷HxKg&nE4Re@p Իi$laB̤,=TnC' 2ۤn_ȉigMR~nK0~gaK!mʎQt] MGrd뫗gUߔ x6Ny?5U-ʳ2Xo(O>#R_{S#6E/{혾tPo%#IGYF^3Ƀ:1>B9V4?#etoTj u_71&؁N>HLq߉YYΤnO͍b['Ca&O9F TWZ+PSl+sd]2 -aNUzK~QEٵi5aHob2Z*9CSyaK8)T! <;@NԷ 6\I{s&x6טiXs L Fu!Ew8u+EO1&NoHv~w# ȉlҸJ0#_9,oQi9ۇmfNqӍ!/^#4 epL者as]LW>8dMV}R@йςzz!K`\%> <$IȰG#_HY0Ž1إdHwTXnbU 4Z[\LB)dKI͂2mp74qYluin )P.lki]FN1=!Tdtiν4 1=u_&Lj *ǢQUqTc|7PZ* r6P (˶X~u(|="(9^ ' '+eY[.ANK_o*qKC]^7)VFF~qm]ӇY78NT?=G`Z7a@W2 /1fw<($ 讷yŨ$ݜ(L%oբA]GgI {?=Zn97j<H0gllrGR=y;?Nj SĻ Kaa'%q71ʆH"DF<:I柘}睌x&>ׅt#oR{rzy%Vm? }2iF9?_gz5K|˯_iC:(,@1Ls(uuqhQC- Cn3}zzΡmQbU@(I+УxgELՓ&g<]~íF$*̍__\LStG(g<~[}AdRДy||8*^:II^ Oham+t,J!li0Cf\R'._UfXPNxeY_FѭZFkVDZe ""?٩o-TI⁞r9J( hVA@q2O95݇T tC. &_BڬQYx^ 847-^YMa4[#:$3D`C #{l\?n&6@܋}Tdhb<դlV H2;ěV&1ee"99yNM,g^R]{~K+pcsX1cʪJuA*k!>/(h8 *㝅$p#JmT2%[ޞv wqB G2*vIm%GYDž8ʜa'h"Ie|K0rYUL0n5 .D k ь75B9 G`FEʁan/ێseT8f Zu 5$)p19Bʙ Sk"Q\)\[XɁz6C,)0D5f!DT'9{P O-Tg8S]TY04(| _eu7bzoukaЩYFI%"s#']aoeMimVoԞ:JBq4ƛaJ_[`d 0wj& %@cQNv5(ej![^53"V"6Vr)I`v7w5C'r 6P]gGV78DYD^KE!M;I?0hI:х w&d ұK53;Yt/70Lkn?ƥgL(]R23]\ PTRQ%i3|g`[;bn!%rl'H<ڽdlDtWitD̘\8>VcԎV+@(ID;11}! l6Zo T6=o")QoB 2*EkeG0-8&Sދ VSL>8E)$SZE͋=,n2K7L*y j⹮; )sħ3 -b쭜$#Je+vRy&:'9KgoMZDv,7P5=q.\/Cҡmtxk7J\]`5@M"KI(U>}:G͊y?籪[JO '}/&D@x V-s{o%j3l]͆A7C:}aja8/{)PK养- vUUtvkc"bE着6y129!t+{ÓBEi‰bGD v&]#%w *L3oB^CnzZsfn%;df .jsk`埮׬_lt+YHGc8"NZ2YCo:ͥN=qѢq%xg-tɠzw Il* 4[FHw}40e1"Ki60W+Eo3yY.xCj'dϼ{RcX}7f Gx}SSΰMQ.)}jL&ԫ6ƞ2XMci3t1m3ܑk4{Xg.& ):g?5auf Nq<_PXd$ ޑZ)LE-ELABym>Fnڅ[oOlӮ&F `Bs]j\y&Jr_ZcC'N*HK,B{ff0IUuXZdʭ5A\x0Nz&ރKaO-NItXSTy#bbDW||Ff!g׌v75S%}'l LZWfG X3CD8B$<3[56ܡahKYF3bt'hp⿌kel?XVv8@ϷuaĕvlpKN(NjiED~Zei.G1qEѰ^Tc\e#wkIhTUNjK=潅˲(:tVm sof8-[v3û}_{*afPzivgTs|@DLI"" ynȕG]e:@##֕F<Y.cޕfe_ݹiv}4}VxkL|%1 ;[%(~ŮeV-J+pP$= tåDbtkv;iP5$p9GqKl@Nii C ]S/pgAM پ."0x6SҵXc %0V*Oya Fo}_C-0L gJ^lRG0]Ofs6( 292v_ED ,""bEj}d4&"#FwQs:e|m9<K´.[?…>{CZNccHEʩpj$Kq${*sC9 ā^Ӿ aKz Z$ٺۋ?đR33'jњ7U{>LD@o湳vWHӆ hGn\vCbFѤCp]*$_rI׮J+%V_Ya9ЎNCP^V4(зūH(F(q&vYr$B,3{5GsN"tຍUVUIn^g $HZy@怱XWH\4@.B,E#zY_T; 1 i.' l VKPؔ ̲&eC" hD$ l>Nd]eǫUH9K QٽбPi,|E!"禄 8/8 ׭"8ױAv'ۢR dd-dN#١|=rjk4K*BuT߲ׄ@5T M yb OC},1OKTXiv)Z#WL˙PDytEFs}a ~ sM2s ϴ&2ۦPiXk:Se1FLyIvU;v;يč{},D=Kb|@@3u0k5}AJG7®KI7/X1*p:P HVi#'GG ^Ř#CO k`y(R@EU ۀΡGhDnslΪ-+)߼m6Q }Ջĉo 4]Bo mn}%Gr`S G˿Xz|E+`z sPAecg7P佞Gv V]+_Hj#@]x/wWvэ01;g . =~W#~FJ4%@>ύ+Ys {NY|yG2UȤIMݤ$R6g~J3&qc̜!g\H"/v#`X E;W[ i+B`,h2pgvOqm/Y3.o^ѿ-fLBD0+7]PeJCֳV*! G1ЈW%}M-Z8~x"V=Z;$fEb^C`_T5%7T50 Yqn:Qu-֫c,JS'.3ܟ7P鸾F*Sݯ?k8$OS߹=X:aNXֿ@pƲk [k؄`My/vc:~'ƭ gEo˼#|h:ťGݴ[]}Jc07Lz2WsJ9j؂H=NYX>Fl|td2`?f p ?b 3D\meԻ&0__Mz4~}|_3 Eoȧ BZ: )s~)f^l͎C9P`vFIcVR3'{#63)Ak47^s@-ԸAo*oBo7bFFlϣ_a #e[qB\|=O1KE+}vtBOh=^m<_4:5>vrIߖ<0y,2;Br}K1Gɉb`tC:5Ԧ r^]۪qBVƮ;.C?|PTC K9E"%t)U7l_ήeM\ߘb#L VЮLu89,lhP=\u(Aʖ Ǜ"hBd.XʳcHjgЧ9㉅p~BkFH,"~9w2}kyWE)Nh#^SWvr WY^ޥ-㢾SEqp^ˇ17K:.K9kF)Xؐ3):+pfp_(S .ʰ-U1X!mgCv HS+:[F1a`̛# u11_K0g'~3mq5Qj߹Q\wm!9rYvh5N _\Pឡ} sWP,@fM"N@x5q#^Q 0bXۮyF>VjBP9OzZ)[g89X-9 Y|cL[ϪVνX:ٸ!O4QMxςK9HA3Ys~N}Wظ^b].Cv@1Դ[3.έKwGc@0*_x"#7XDfT?zZQa#GAwllLrjq*Kn%4>~D_$JMً+Mˋn H*'N< (_bZܧ8?-yF?l]~ hxRyf^;i&`4"M^p 9k2a B2w2܈LJ{S`kv[7׿|PCҺ?Q8eqy"UHK5Q<_fA~V>]Dߋ2{QYuoAkm% @;7vHVvy8[\OɦEsqNЯoUV9abLvK:Bl~bFq) kM*0'Z+p A<|͎F $U^?l"ٳ plC|ΖW0]5 x%lƵj]Hn;Q:y^рF?0&9vQ%ZzQɗ+5 v7իXϚ$;0aS|߹+K \;\[&``~QӛjZXCv Jݨړ$4煢ڎ9'jw(EAiגge{Ѷw=V:겉[L,~}C_z.9,K0-юoԷlAyvt_} V7`Z iPN6oz*j&~t @fL 1?foibQ<I#Kyz;2+YVI¯&ſsɑ=#Eu.Fx8c$U36gSV&wD7mV K' i\Da;w R,TR aCXCF>h$|O؋r"ǥ(,9{-GZ - V!j<./;՘Zˇ5feT#d)nܥ[c]TF%hZRjvˀBϔVM5vc'ڙAd:l8 mVd>隈$trk.m)js,=LxQ,Zw`cƻ] dE9AigQ39oV%>QZ3cqax-K:K1~ JXN;?Ar$ aMNJ=]l.ᐦJoA[_,}^@f" iʐpBMJwqEU2°җ~[)=f^!mu{趥.~1Zۏ(c r,pNf䙵,hps>zJ/K-mDö2hn]]_5&kdi9ː;!5( - p^hkqr JV o}$i]W6DQ$AdOO֗ {t}L9(^jM?ɨݑ,1( .zƝB<+>lCc|ei{XRhG~D;6}]BNGԞ6e`ϒ|+ƈVe+> nCpMpEMrJ dJLP,#+Z(L(uYlygos_RYiR\bgP\G+5j{?`~tWLGlMf ,EU'z}HF܎8%j&NVDIjݰm(*V@) vVǚĨV:eT-a8U;Mvemn =I1i9:9ę` Q=|aʳk 儼>:'9z}Wju@DW*1Z˼7^YaYKB .3LEsi&mRF )'a}Al i)7ؽGuwУq1=A=g`B@X\,"a'm;2I*PU+. Mn:S=ΫEMtrS3MI%OoaޓM؛!ҐKsqhKb]AosbwuErf+> e֎<|7kۘAZT(m! e BBH 26KiJ ɵK6/~?_|JRo5=kR.XQX pc߇Df]hɮNW=,T{nTffD1!5q KP=PuD: f9 T !zЖ'V -_N xGEeizqYSv[`bYb{KDµk%k \BⵤI-2oSw0Eyqˆq[Y_S?=ӄ1q].jPe5Hʦ+vx`8HRiPhs8:pƼJG>/4<#BɔusGuF^<>}G~1_!m5[KK\pt%&H-%8Lp*z ΂(:\ 9^kk@=T٫Vmܼx|:*> ]X?z߁ؑ}r^H&ɡNGpeG/P`.d.]lnl@T2xaے!I}ȀV[ֳրjg#+C=; K#m 抉7Lsx@%ރIŴpy!O_b>t ay LfrܖfpABl$ˤ;dAqi,B@r)YwZ\(B?-O]oN"籪С ֖E6*8BS*y_2|>0"p%6m}'[.!m fo6SE}PGPs4~Me[:E&80ܗP/ٜ7ק[7]XvAg>A.͵>OPKxx;MY}4U@x~i 4pJ4VJ/7_R\U F%hmDp&H:[C /hfDѿ]٥,5< mGuJ\V'`?D:W*a"gOVA $̻arLSKT*߂{y<*%oYZ)$Zt?SR M:ɇU{II^ GzJ#Է\-dxfxm_4܁_aTo ~𤕿'OLZ3u"zt 2tczz0 6D~(f`qű>UcX.kdF: 9S7kO=9,vzz*Z]/Ud3:YⲔ4yi'$R1/BATW]ԇW_ZXfb%;pCj7q Q`^?'AopL b&BޭA+Ge5ջl 3,iA3nJ`mY [kb2[QE8ޢ*Cc=":˼x3]nb=J'-F65> 01CVy9>zɏ]F: wUkp/֮;8E'zV|Nc "ơ rwrGYTB YM:@.'/TR^ ׃Jz+&f$s>% _/}4[akGI8O1y%9]fW/_9'rR]@/!:OC&!ҵͻ}mL<ov̴BǓ>wX. 9njUyeHwҥ(,1֊{}Sxx>4/8#[G#yv߅9aFPio:>r\4BYFwos>lra09/(p2Dg`+J6șjet shQg׻x7 {1 &΃>k3\F2{ZED6U*13"S6ֽf ǖ]k< k SXt@ ,3 m"yۣ*K<ҫռJϴ{g?o Ͱatq'Ճz1:l/-|0% B5O?9Wktiz"1Ϧ- S$Erj\Hx-hJw]R>3cnmH)˫_/=ӊ0t Psh5a<.XL u7ow_-bƠKrFj-SHݔIZ !]28pH[~oԏLZbb߇8] XEEJȔ|:y/4!1_^X\Ε8sW0@=Ȉg?Egof*ѯoʂ;z쥀Ge@(_WZt9hVcЭBv(*jم'%11qP=a!0np01Q< 2Б0=P6-|㧚Q05,?(t 4J[$c9%D'\us4^gs `/ jZR,"@8%&h§{/5kib9m-]вm=[l҃=dJaRiKYi6e>ٺpnR^{S-󿍧b&`!yՊ瘎vƿcBbu%K)MmdTix`qz=A?3&/Jw g1. |'A*J";elԈyES<&u;xMet7N%'z=|;1pJ ϝ0  w3y\y"Gɹsa~LwR:FFFGT₞a(Uf(x=kNMvA˰1I *޴Ȭ 5އ=3Fg٪/GrTpԅ0ރh $%ɴ)@-đQe"҄%c&+JBV(+. ܌>yqh_xg}ǫXv,|vtTB3z9?ҋ3xS@c- Vm˄A=cvxd \NzXCLv=*I'B]3Vq{݌~pɐ, .nbbmưKqv3Po''֬ nQҤ2d -7g4;z0jiN`R|<{=Eʯ0IZ򺩰pr2 nCTez~z_ڏbϓ֠ϻOP=R m!D+,VΞt^qi)6iT"YE"ʼ KBR᳿ N԰Z삧qB>B:1JrA~d$A]o%2q..m!@f6^͢C4<%;}!d3BB̓ &`GS͕aKu?_;zlzTedO!xHkhxk"MR刮 gRG0X(1Ճ_W {;^;ʮݫIMgHe$KY&kyX:Hs^6"%6Ӱ$s]uifqmk]htEdozi* mϫϔvC~2DmDTgPLM }>TLUr(ӆwk!"21UbIAYiXF>0,sz*0Gs2|uUt'$ "P07¾ߧV`Ȭ b0kxs^d UG0<҈(Co`0W ^kXIj?SyE]mߚSUx'6&a+(TΆ=b"FM"\TO\W`1iCG!F.e|7u ԊtIr.~\͟Zl&07u3š BP݊0 ԗxj#OPf U|LJo:"x-^3 9!Ў>pוOd#a錒X~D:+q2O cGLpUd'y pһ-v5hXYK,E[H"7|_HLss4s )̌hGT}+\T /KW;|Zr;2EQl"; ϽEc!\e!/0L*&+e?x'%AD߶r0 lY׼G0~SQB$M6c8p-O_L 5{|wp,+`jW7⦸ BOSxw*V$=/ݣ%: b=rAObg, C$d)"5E $$J9ckߝz7YKvӨcSRɚ IjҖLӈĦέujnkaONl#L}-`50""NH1ȵYLE}Υ^wNJvR`52qi$䚼j jmOmZdft@}(9*n֨0ˋ"k69'-BnLdj\6ܺ;T.0TdcĪnYPztגgiH2ETz '8IVoR-yy&n`mL .Tpat>kt6c I /;.~LǓ`0=lxjgGf@7Si1U7N\Ysui$bA'T ,l~&FeFh+`GzDW02-7ȴauUT}YH%nF~C2ߣB[6d. #5M94GZĆgAf#W1GX4W'{v ܱl A^pm= :FkaՔ~>߂\DZbj né<:m)(4zAQqJyt{N-+ӓ&I- Ds" LM63WI Fd|g/UUsJwυ{x^ -5:xB|so="L6>lpJ*k)=}k3HAަ MWρ!+1'rjHBa` Y7iQ&SW `7ˇzƞ {,@q2H".afڶG ; gQ3*d+Iۓ@Aöql56{b1>dt7xvDsL8TDLQԝ 1WCFJ^)z_Cӵ<gc@8?A gj hUt!:w>甞=;id}ޔkH:ç^Îl|=X/`mO&_G}MeB\9%怈r$FqrvLa-٪ܬ:w6^y q}̊H\%S)f,e=eq´pI=>K 4Fӟ,0Dڊ㈒CZ _%I+ t?!p"6/Hf}KG_v#.QywK$ Y>5{Ʌ'C`ƳsD%dnCBJO!|[1+䆇 b.X氀hWC1m.XH~Be6鏆@w7SO]%b(B=Ia?8LCZj375]ߖ*Qk<b'iL!\{Q\8c`%؁k*ci914g5k͸,zS SO.)dF:'R?haN%"\ qV3hϒPPU]D:3B-L2b6{#JB>/ga햆+A [Z# !餁ʳY#mh(Tkc oU|%<^pH(mɨ ]~[mO J֙(L?=CG1Bi<ʼnXl#]WOm(h0̆tc%g)3|lӅ2syU e̬ht^>?y:YwNf}o@6QSe^eGJfO~mpwKn Y'H4G9Ko7=MA-(msrݯjzzQ^I(A2/#|eʷธ8Nza0.wy^̒6D9-HxG^B%9W#y'덝riKyiE~u.l_cj1BrA);l5H?M#0VҚIU4^:I+ZoA6OjZ̎=P+ޅntH4(%@k!1z (=NǨ>.:Y+Ԑ|_{ap9ND %1!캿M|ҿ(rMN*+ͩ|Qlbr7ҿ4 [<"kzeDYVNE߾G ʵr"'P0pw%Y#iJiia?xͭZM|` 6KFBcEЩ_5Mc**a!F#A+ў'}tqΜ 68E S} Ob]M pR/QSlQ2o\ Nny ~~L ԏB;WXYzepGo.[3^N6hhF w2;tYBWRK hz=Ӕ[m]=?auV ̏4_Gt.pD8-#5?@,W'tyI%lg! T?:v^K6*%W.z֯ev. I_F*X43G&Qb.ge[Ӭu)>l!lp;=+0s UTf5R{ţJ{8JP69brů_,.JKPk?%d׊J(ȯIg_ZneLin_B"iI Xj+J?e7Ĉ~Cm'C [wڗȪi+vW-ls WEIH8Ah<ytn:*'ngZdKe7è $ 4c Wgzen(MAzƇ\,/$ /{U,nL!+$GeHu"$v{^? WF͎"*QdCa~l#e/Ah ~eA,q9G3mź 9-IW6z6JS+d8E75egSZG$s/}1)xY95o- lc SrۓmwP>nX. ԥǏL B_WEHU,?p%@wi'0Ƕn;mxЭJr#>H?:B|s~AytET7G.!5K|_ tH,sOV /a5+\}d s_{DTՐwCV-<+`*|GE};^?{|@w;7FъCqdľNW+4ts 䒃hDځۦ,.hrkIǵQI 8ZqoldQ -B P ǰWBguU1srr|i"*aI1 3#EjY7N%,bCϤ=^7ѴV}m] ĴUI09IjR74*M懕Ȅ↝I"cMgh= RЋBeI #OxU4qږE#lS #9贛>`Wj}1tduX]^8=f9"X\CMYGz49=w۽vp;,BpsfI[7ʋ-3E|97!DHݡDGqRx :"Br3BYf惒s%B´{ 땟:o y h}v;Tc4?q#_JZ ]kb,D%Mԫ2? I[\dYTDFS'=Jܕ<;SY0nC1?H\C(0 : $r\~ރfONсWrȼę]uN0N:?S!KQj|^gbIʓ*_XЉ6O#c!*k>s{(w:1ՓيIj 0xX L΁TDdn\ty[bΔx4c8/ P7tVx}c06pW9G_V޻5(gԍz% -?g9$`2i` tcxZK":Xd,PY d'%V[ 7A0x)!ٰT%(Sfږ ʱc\ywaYj-cK8y. xz3e̷F2:o9(]pHyO_]Ď;x՛PY}YLk:hhPb` H:SF*?\$]۟38sյ@,.9FZ%!q4TBh͈p)ZR@!Riy{-1j FUM\6늈%Tj0d.|FWv'|L8KIAa~ɽeDIJNxQ'@:II RCKi~n6 Z!Abj:6!I|f|Q+M*Y-195n34)KʳWF9_B&֞y04~: V`?8%༬ERۑu(k?sFBgA@]bJPcNqS'CXT[ȉq3J}@wrI g36J8^4([. 4Cc{pzMX=Ux.M{Q Wgdt󕞀DEn Oc>7꭮tJКM$鿞" /$!n c/ Y8@~ZB M5hzu}5GjwN|Kbʝb7cQrߛsv!0V &NdSvLguMx7<'4[/v00ez8=g|0[wDdHN]}݂/O ?d+wzc.[S6o^ojdRUHjajuq%>.$? ȩ.#$ovg!kH-Fj30Bȫ*K$XW^ [g=z㸓}ߴgn<ٌ7p+@z5 (kN&qNK1]yy{CݚRd^'ANUJ4ѳxփU4LXQd$e"EڑYS9u?,H\O Y}Ud`8d!D("6zV5vZ/kcjnWVdt6TI%㴛5|\Le t ]ŰEHgr#gxS øF +umXbz4 Dw#U*ӑZDsV#gBlh I8nR#dYIhgFZ.\P30OpA< `8Β1-WPQ2!uɘ]P$$H8LK%VSM]l+ x&`^D#1WCS(&?i庡HaO}L ɬnB`s l(W1u6jahg- [@*>?-42A5k%f`)8s*Ӊz0v?rj>S6EJ bQAΣs<J#ђcW;hJmR>-1WZf"!aaaZпק#[!uAI qZj(=ok^`Un01q1oط@,/5*x_ɜ~KG̪#7JZo?doɼ:OqgZ$!jq`P-Lgީ#,1A %guGG/\:\OI_ JS6uݸgD>=_4r<+Ao7ڶ+EɄ"PDiT=,߻bSl]rҾN!.EK$/. 0B\"0T$QG?^k!qܦXKd.v,ǣ\o~~+MXhi>Й ByR}4|/YdK(?ys|y0dؙ=&͛+f[û1x V(&D N%i |Fu Y6z@҆CqFKe@Z91pSCrǬE}\ S08A!!vUzG g4x" Jե^'`%Jv>0u4,i|󭦧Px)9#DhFT#W|<9UC:ZbrNxh,_\O{k/.^K1ͥ1u lM]ET^ՉPBffZH`7B_!3CFVX%2迈fnL5-ty8xTL*o!r{~]9,`QE;˺%m(t@7Zp&WqnTT_?>rRh`_ ! ՘&ƈ9Fy%T3-jOB$9CQ{ `(:OǬA>DXQ;^t7$zωQ!akTƞ`ʆC5GMFG|QM@Z+Wh,vix *_{ڦJqxYxw.#]y@^v NzۇBl?n3F 3Omb!wݺ(lyàAIzhyL R v%2ric!Z_.Sa`s?J#.YdCi~ȏcEF跸xR:I%M,jɳ:Fu1!j?`q\шkQN5dB-BӋ]} )[v nm#BP-m$KŴvs{#eKpL%Ŗcӄo=_nƘRV^%?w1V%1 C20~(a[$>W GdxMN+ּ|Q1E lh s[HHꃢDd'Ȩ C-2$9\Ezvy¹2Z+d8fG X-nxcaw_naSCo[~/30WB}g h' UQ2ژwqI /9d PSѺ>GE4h,\:MYs*Ii}3?&GDJLrb}z-ۿPc=l{4igumZKDm ?7>샢ƄMN NүQrpT<@7A A[@ ~sb3iD_.K 卪]N[x T'~]ŁafUv҂+zSoȹwYcu. nF,kdDByyuٰF#"\o|A b͖!"f]OY r{oʤԧ;p - GpT. ߡOu*fY 3V\Z>>=oZרeb/,YWEx$gVv9xCP( AsT~<ō-z$z 4m}u: vO?>v:C7N- 6*Gʝys/X(S5X;ھgZHE S۶Iq3P5AhxM|1=q,BTߓHOΠ,;.xW@)x4Wo N7TB,Y2r45*0FvJٵ'VC> 2y5|-Я%`2>i'6&-]=3Q笢˂GPf')Ӓd<'S藗 @&5rO U8 T )}fXD=;sYs|mˣ)ݴt62, V¥SGgO􀟫%j؇˖TPd0*1eh4iv0"Ο\QB]Cv&"T{rgAk 86ƽ"E$0΅8)&_J0:\, i =T ?*+j{ ]Q'.KG6^XC RQn$ކbK6007a+5=6Jyw^\n,㯆ei6EcQ=&6ۉ1]lƒwd[z%vy88SE s LKMQ{-qQ߆ jHUMRTS\1&Aj΀ZCW|,; ߥy;;2ۏĀcKO)@VY;K#ү샦]opQ |M?\9ƤYws]R8 O[tw~uEGIn1K޿ӻ+Nh)n07 qN'奋t UΨr Q IRL?^_o@?tT$n%5]E ;5}!6Q<;/ڥ9zj"(!_amd-6>6I܄|Zh[M)O]] {奬!U7IQPn VU8g' 9FPS^P︊a64A6Ar Wx}G*1,*+4P9HTߋƪ%紤pV Ǵ6O M{gU!BCm]߮]O 쮲:k(vAKBYքID[%5nl!#Db zV_XIYDGytrߵHЅJ nPB=DwӨE4Qo*4(嫣,[.7oؑriۖ6ґBV$.n%^9u MP$>M$v8ԩN(jYf.,?$ilޛ0Y0Q"]k;؋px >Rwm']~/454,h.]0'}zA K<ϼ]ߔm{KI;\ `s$[֭tݗ=eTv/i=kM&Xol79m$Fd/!8V0h1_Ϯ5يNk`u{J칋G; 03^㛇lײ ht??ZJ}-('(wem^[8ZNײ'&܁0@v&%ޓK=q{"X;}1*ۜQheM6^rn='Hw@cMm86y@j@5 gCI l> "F#P^ Ja,Cя.SD')ۉT#@ \ ^ߡk~㍑߼{ G<ʶQtz_ۨ$F2HeuЏWWv |ރu"hp_ɿlXQ/e84SsBt%[j'<5vsj@E@E==aFYhclW?RPZ="D;aӣUbǃ0FTM4LNSi1(cf-@Aљ~B}Op 95X=v%R^ 2{[Ω`"4u-7ܲ8bH[_f'qoБ?O!,VM-kXdVN8DUWy;U1q$K"uA8"%!Rsg3ĖLu[# y9\N8Cg/'۔l>lٴIn/lltRH*5dc0ʊDGxUF/We<y;&ͷ2޴ު65t׃K+ ꔡ埚s(;zEo]I t Dfm&FۓM$=jIѮ0(ri<=.>6ȝbzwjpbTKXګm􍀀1;o?xys:ӗ~ޢNt3#Peeghl'.(?Q:ݙG |3UQ0R|B$軴Z`]ֳ͎} y?ileʠL@vD?-|m-IK1 ,g͠P:%s%.Anf?>72&R3*3^f"&${Lk&t7H{tayh.& _H{,_8󼧱?d y{1]U`Mi;#s e)ҳļ5ՋR!,E>Y9}$yi\ a wdTh'9`,(Uոt}rⶱv @ob{Q_m-[_Ro: 8@U+$wgD#$#;ː `n,/`Жk8Me$^6}BW>PbЌm8׼HR<5אa@Jq.t{ Aah󬿒'iD"; M+OaQs~VюN:['Kl0' uu߼݁Qa 0 51\W_0r o]U*> WF9 nMF -V8C"@7)(z蹠BȢQ}3g`R!#h(>2b,jq oc]OQC@8 d-A3Dr6Pe2_dGz$˂GsZarNLOj'Ȟ98׍=H`@\+79 OLu}2ƆVejv ǀ VS|?P J)L7D=CB !U |9?C'$vg8'zd0//G{xsA!;IR RM6=-;~x<۟ژ3<(I~xݸ$kw33< +8<4߄CpD/h{k\EwYNdmkbJc;lۏlSD` r1ʚt &\~]!}XGgbޝt#eX^8ϗ./Mt :"5ΟlyKyYDuռ436*[u+ge'Q\SWZCn"' c3(K&/Kك׏ L$8)  hPda@k.ցPMWYO6532X"_w7VGFB*3z '&\OvGu2tZ;vIa"xK8TalЄC.>ntzPϳ}XbC?_9u=&P(]g9m^+XqTzJU^ p<}ݺRDYK6}h.N5},PMLPc_vIoFSFTy{ gH# ѱ՟j=7#M;<DqE᷷,ֽ 9i*'~[p!ʬ%EUWDYrz_gww^3ұ%]U|wi+q'V̇tn1+̼윧C?ǏdఝKM]x{ϓB%8wLz:H;hh(4/L '4U㴮YWQ!? 954̙%YV_CP%<}K#|9bJif| S P{C,H-K9"2uV|E?O,0ݚo ?zLBߗ鱿wP:EO 掇ԴVߓ,ν?Ο-BŪ3=p(qǷ#%GP!U"3$%ӗ%[8G}͟C%&&RfVJ9_=hu= ͵.  X3zhiNU#s12ybOQT~ڀU"~}}I=1ml/1ggg~W_qF΋ 4[C褓#\e>24x!8y{؟a Q-4!f4x@-I{It]-_ktJg2oA:Fp.Pn}iH!1%|!-N.O`F_Xnt}\̎Y9aEEB">|1FQeMAOlM ڽOP)5;A)L(-Cse~ ~?">Tj#T܍,c]v7DLDVT]0v €]su HXە\Uaa RB}Mo^00܉_ʋIwq_9h?ieՉ)Ir֫'pS2(7z@zO޾+d9z+y3$S$jJ{GP#)wd4L F)?Y>).@6䲰Cui0\r-Dҗ~|Jq[?LS')|pUAIme J[.^ *T7RLP]7Kw$'W|5+M#ŭbл\YGR~z8P1^zޖ= us?OJOɇ6m3HqQ5ed+뺢h)%P*"rp`+yӸ*Oo _2//f>{;U; *g O`cde+bci5||?GA6^m1@$1価[ϱ4{N/V W WO c |O3JS!,;GF;r$hrFvȇ$fcvv"$}A)a04xQU绍V, L|X1u/]fkJdZ>S@ bޓOɴ15 *=-Tw`vڱI gP;ɎG-b<~CFM&;6w[U3VxWE6Ջ-Z<*lm7TN.mQy mA9QY#s6Lp&/2 d _VݩM҂9^ԓ2 #֕PMLᴊ;H|s5EV̺/|IIۓKYɞEJi%0l埽/BY@Z4fU{cJ` soT:R%?e3\OXIU` ;['Ϥܟ*Qc x?|ؓ-b D~_AwUJQxy>kaް]{wXMxUG) e#t"9α?+K[(ƛa% rCѸ~Eϴ2e^/ ie`< oV_{nonIl[4ZU雙 GjM'dﰽWQIBb*yc6-,2{бTbLT´84YB6r,"=7aHwPL]&Rz#*[Vw/4pH^sj7¦RhR{q8gzfoIkQ:pٓ_ uogR!F0@yͫ 1HV«6zSJ0fC@"oN;՚czi("zKU?|(#3LȦq[U`:Jg:'ГZHۧoBeNTɋv~ mot< |H6Eb^xv$(|o*wYTo<{%HcW=mn%TT"+ fFBtX 2~S[,w¡R Ϯt#Xa+h*38\%fƗrjN,R7!ƱM*~A(J |ىTƉR}uiWVjp[dlR:jX@v)[%c<-6.:-VOئRzP F̥sAbZkdq:31Ff̨/ [ IT 62pQe~^/%pJ!Mf )kETqQI?x!q}_-GO[&FN{pٰpƨ:HE)N/ ?\C9ւ`ei?kwFL(h\BT5򑪛aRe!.#?#^^0ԤsO`y'R&N4`;]zftk=Jv:29;ؤm؆qˎqshC}>~~J}Q#xdb {^UБij 5!A~n.ptj?AO_뚷ʠ\7m䷁8J_\!n >qkgݟE^!D<-CL.59G=xgZ UUfk68$ܧ<$?7finV|T/z£EmvG`jo!9Q~]‡e$Dd<.I>]0\6ȧ:Jpr[nB4eoW䰒Hq}3pz+Q xU'LXFHCeoe* s!ɗjLɝ1|gF:jDMgJQ\dp%hGD(㈞E M2F%a;R0^f\9{֑[HPXLKa14<{-hqJӞ5݌{ȼ%]2oوP.3X1R9if32o&psZ}psͅeMcqk;OP_Z'&Lp* U*.ry^0O׬\_9$s+_z4[ND.F'?b0K@՘7{Lg'IWo& ?;HEf]k~x)R<=5`-*- CH͗iCH-zVeI ژ;zAyzxN ahX?/$!*Tp3=$sZ=hyմ]Duo2(T,dd{@ 5~3yaǕ+1`|AuIJ~SlG_%Qr?ܴw1 _]V*HXr.p~' Dpf!}0`h;aF_H-ק%cw=ƷY8BriCt~MW&.I1m<҆ X$s޶*0'"`}[vtOCw~QlߞiB_YjTrg_m\YX"D~ͥ彏Q.C,ケyNy$_3]&53&TH<>!뀡ҿZl)C`OHB v m~0.ؙd'˦EQ 0NG~ME;]apsU͎nkexp;@)f3jsfd*^ǐF૽XP?Â]j};ixu9ςw,`ִ*rn`댲R[XSbFuLnK*y;sHØ_Uffm[p8OgΕM\~Xe"1RscS[ڕ( 6nC,4rn\CT>s_S}hKN`wZzu̚[YG38[{:ԼM'B à<[귈٭pg>Sõ9IWMN8j#^[ :L7ap~q !qScX~_}] {R>0 : 򐷘|@`$ '8KV`՞.:iwt" cWgR[3˘SwnWA;3`,XR8O>aP NOKxDõ禢 <i"1 f<(}7Y_$u @_sτ_d((''3<:>0sw*m##rEٰW+i`U-CXH [آ#7JY+"_٘^-{ Ti6;2Bn2+LX0%&S<l!KEF\3EA|, 3 b'*k:DF}l[%L(r!a^ ~ۄ2"T>C\@K>#A=*9Дر̶}܌ӈ,YPfS0dߕ=ҏa|?(ztErr &zP47B21@E@>I;L9<'&Fpiy#vߗBx.>o濓6;Su^on؋(Ѫc/; UFhM.VQ\N͈+"QO&XH;ĄoS2hoP,M rJzB􎬯mP1r9=܁5:Wg+T *S]{.Tw0igHX"xFd2彜RtS+c>hߚCJM?JH牖vh'WtQLm`ȢXVWa}T]C[hƫ rX (?9K/x /|UXXA`3,哋;(ZuQiyr]g0"ܔ߭7CC8B&ϧM2p\}UjSt@D&XHN\tݏD&u FctTiUn 9; 1"KklV3=<-#J?uFN*yC)LPjMw_'/m!v%=5D[FZVK/{LA,=)(Jbo{] ЂV Ry.LGo~&zN@):̫YQ;K?xkX= .n3sxX<0KccKxv -+>Ÿ/]ґ-@A.td7mVx{'7FI6Y?,~@$pO$=A3"Mqhj~Š+Oq p9v=d+ރɓIc v^X]/ay8k"'^QQ:sX+q8C*FKʤWʂE>HHw_@5C%qerM弄/؞bVTc: 9+t c=M8Z8𫲍۲ g.HkRsqhHA˓{Y5:F]T7dm|Cg7fhN٫mzq4ckȇoBt88+E6VPV&Pj* EߙHζ; cU©j׬e!8]WJݑ`wE{!}q&9RU=" QH̬|uvm.q>Hh`upl׊FOLZ,3?iƖ-kw| vfE#OPN5a~4/Q x%雮q+e MF sR<>ZŚSRi#o`H \#6V~0 -?kd̴ ކ'FJ ܷ9T߻,&Ғ"5ore&R- EmVu/dhd&KrոYAަUCb%i `[qeM/"JK))1O F\KvjTaʅ#2C8z􀁉a [k9"-꟭{[tfD)1Iėx<|!QFpPc^Wdr$ӥf7 Now?=,(܍o>)*RgyOWU? U܇7 32 yvK&˭9ԃ6b7"tFR ɰ|Hz+n\aY`ܜ[jI]8Zzph Y3cXP.jֹr3HI󯍗$ bMI:/ k Sm:;qW4GҦ>c@(c`)&5b[ (qK}X<(.4Ny "i%W!AjDALmrbk[1ېScbREQIW&mL21R֡C+`N:05w3Q>MrҨ7 ,&j[* DYΉ<1zФޗŹѫD]#-%,wQ./^8BNE8Efp/\R/$-y*M r7Ͳ/Xd8GggiKN2CyrД;U2rtG:@\λ>bt4{7Ck,AA)¢׳8W灍kݩ3l6گڐu'ctd7IUxPڤBפ|҂4%íI9 :HY<(/P2aW7l* jR/:@@7hedUrL {)_iJcڅo^Yd@n̈ 4FY57nzypX#v oP 'Ό*}$ ]3I2WIJ%Sl|_7}%bCyq; U+S`˓VF_f8s#|+)sjqr *i?Lr0|pB# v-\F5*eUN~+jJx?6JϬ5DR݊ hlݧ:gnA>l͝TTk'KF5]6SC CؖqM;S,i86.pI#_}F׋.KqvgwE$K8ԏ2=+ ,!v ! l E"|.!04euPƲϠkP:<"t3gRu3-qRoݯ %*ksW kǧ5#n_-U-E)6OsxJf`*GA~wsĵq%T8*>0>|M\oA{w2`߂;{HO6Z?$'v/JrB (QodJDq? w`5 n48 9^e/ΨdmFK@`6Dc6ų?jHTyJ60WDG%OABR:k, -: AuW[EG7 P5b?TM/2U`9*jH)"U>+2F[+>@kIJn,AHaB  fd5([ôx,@@Útu~ٴ)C D)4i[@߮4,FA`a WF5?3CgZ[QQJ;S K+8 pfp)5Ww-8sFdDrjybzg^SCX/J.Mv' jޞspŮi8x%/rNk$!ԠUY]63\y.߃;6X-pwn-QJ]TKiO|ƪKF2U &lPxװ{So(lz"C IIhcs$ o4v goS큻A;|<(¨pV${Z7*1l=O=2;{M c|V!wigaשlSKە L͚0ˌן o5`leI sp67Q}@U-揄+' yI#lg5%u-vd/BÃZ|@֝](dF ґ;nY 2=i,g(i]ȂqdAu'EG_#9W؅jzը֭r|whғ' LNR 93%f&L'k=ouvOw3lG)HH#?ʴglڷfU&ⷔ#k$,M"'Bq} f `Q?ϛkH J2[\,,~F v1ƭq]ζbZhȎ^4ؖ|%@" ixc}C2Sbx@yǏXvw}.e x hW|n^L;$}>u+_۪e601e( ٵ>i ρ2X2*櫀m33jN+ky=v2M79bY窰815"SlQPCTH?(;IX=fw=g6mAAQh_|\%r+U B(k|X MӜn},xd)_6ZQcؾy~bZLrT-R4q`ʳ4uH0!TK w`i|ÞχAHo،:9CD|?k90)酯3%〹NؒmGSGdx8)s1_ibrj;&0,wv芋א9ZŒdFS1d1A`" ;nC]۷r'Πp:> 4 S\/2)Zl"ho&-Yga^}Ee#5nh#lTe(:ZYh5u>([ɼ>\AI4Ivׯz0{J,sbp'$)2_LA~'t5hi\t"xwM1Y'hK`,oEh%tytyof)nN *!jplr2al_v]5h ٝ"Eڻǒ=e0QZwK;{JSM}]#H ks3S9׋Ɲz@6  IB0[ȎsG j)CuNZNMv9¢",xR:2˯p5pajZZEFsہXC4[_j}p׷.v$ҙz2z'T:Mob0w3E /(̂!^0n1ݵ.Ty?6$-V`^T w7½ԤӠ}8@J1Tj"d{y^ Kgj(\}mBs8.ڞaG < c^QWff#g7l~_.3(<`bL݀{|=!G=;(56l>T9-CX(DW^k?I*k-*~u*7{A*鲧0,&aUrgԶ"SҫuGC0&Py4RbM^oL$0sQ;^Jv%Bgј0dvF[1U}Q;TWTp0߳ v$v*gpfJTDJ(O$0WlV|=J^@f?cRCy\%j#mY.p@1-eXgI3z i}E4\CZ4?~lPI p}.j]]{1p# M^'Zk^HDĆL8^XE^Rc4gSXc![X-kE G+r+~Zb\pq%7XĨ#|dPQ'\.-.3-eum(c $u"lWy^߇+M(pJhH߱!59:,LC;[W (ꞡg8U.FxF"Z@t#)5L.bAe(>c0׷HvVqigOu.O3aT@:!NB<;30| :da)1l`8rźPStaV|1L=%D5^+jgZl > D)rN8hs^'׷%>-`̓l0 m(Fq&OAd8Ȇs9s&(9ZGqJk\)u,ah9-L螶xP}ЄpVTMs;bTi: 5q6 %dV]SpD'xG{+ ۮ S,)j*3+2/ɴE+/'bNi h/NCn@ BPA! hQPd^ 6OV*8&=˻ӨGɦ'8 '!D^\I* o^BptΣ[7g^j#e^D @MSNGIbP+^o.W&ӳUMaӮiY |δ]tj}T^Yazw@!L; rn6py~xz{5b𭼏ޅid׉# sI|eCOȩ{$~iI! }ې\hVrjH%rnġuC(ث~hN#<_0J['kv:Y~=Zߒ5C"Cn'`oI]5,d~ciDV(S#QyGj)Rkqƭ,AQ|cm㏑  VWԖOcnm! ;U#v"CPN &UE8XN)Z]&'&UA;eXeB]qDtQ/ķ߰Q}j)-s[hDCR~ö 4\\̥1{Yqgc2AL'^x1t 1783>rvhRx,"|$/Dl?~17L׃AT}:n4W!R.{h2  aa")^CK\sܒʟE˔Z{Ѯ倩Qaœ:4r3d0bbqDKVN=Socy9efT /v2_&y)u>\}TmK9#XsgNpUsɗٺ\Carg堡O!} mw+lm6u7Q4=w *GH[[]zvm-~]"39tó5"ܧAckbD[y!9PWߨYŇZ (xb8|r]}:uD|D8Jd2(9&<P8w .G("H!V.=Ѐj;;rg੖mFg8H؆P"h$$,QOå];LQnI.vgW0~x#_:O8&,uRTnMizJ!*L9O3l=!E]O&e:O:Ĵj10;@8GiUqXwxfoU%F> 2A8lW7}łrZ>(i @#ETo);*EϽ~N_| /QLxE0Z z^BXs֎';*qY d{v3eU"ŪGZ kx8&^!mv_~OC0IS;/o-^WҠFɣHWi >9+ש#lS$E)PPQ4L}_Y)Ν6oH0Qr8-`@kO2/\)%ޤvq "X49jGg/d#ѩrK#zͼ!=;0]@)z/lK+d8MSszSZ'q"14ӺcF5M N;߻&T% aL1 k]$ aH2 5ccXԯ4ۯ-M53j7r7Owtvuû>3D9Y_Ȗuc[OJpWwQHRd~ؘ&XC)y[R-|ޤbHY^9U6Vq | ’֚՞nOր.kfHC߄R^;"]v $eͥ6u, FQ*ՐV᝻Zv܌2Ӌ3n4[|lNBWb ͟=lPЁ@ o p|7ӕ +gkEgi-liY@ElUrNĕI3PT.^I;koJ<&2۟I)ɨv.KM=x9m7Ձ*oڰ~fJCAxs&,ta0OfJqsIW|bS?Hȝ'ꅬrݶٍu{3'bKbnx=%+vcG}S)c&ҘfHH3ŮsڷiMťtXZXhDJmqŞf=<Ƅ2)'iJ+ 3A%QS ]< CCĭ"AWev(kQzd2ۢtUK8f;( 'd{M{adqaD%"OZ"G+Q(]'}-ܑPI:2#帠Q ];cӣ `Akt'#ͪ~R^Iqp[|f2>8!Swo]^bO` gmpJLs|R6-A*:AdHÁ#i}9ˀp249} -n 2mL!n Ǐʂ,`[zޒ@uBGze҃-N654;, }kXv*D GO3+%I㿼l^E ʾ]d[ΐ2V$O}1(Eߑ )[}] `ZW䶻wR6 ,Q Ϧ4~2چZ'AGr'u&[}fw'&^w?(P-GOc 6s_yy9>lg@SH2čs;G\ԃQoDDM gMiepUbsn]&x*|Jɸ5w0gA+sպ]4v;>"l=Dk HཿTQA[QX[^R@)7ȃ+Y jUBtX8QWbq5laGXU⌥E"܉y(jE,*T0uYM}P~ >o&˸wc \BlՁw <: swoAmCՀ+Gu;r Șt Y/>9{ΊF"m+V *so[b'B9? e~O6{r>?,wr'#fYm9cTmꖷ<7>Wq>}㛢Vݜ+n:qV18y,8 vl;x,ɳ3y &)("U;Y}8tS1Lqe:Fq4@z;zWC]y- @}MX'95pGwǍ+6d IjZ !doVZoX38 z.#P̆Z@ )@).KHМϻ<{I2URdp oJ_4K^8fٷZ `0fZ `= o~35<@ =Ƨ>"Zf)F;!_ M#92%$*-x I2a- YP_j IKRc& f*=܆Mol誗?݇VJb|sޤݨPlА E;Nֆb7ȃ-,]tdwiA̟3C({v]Zct kL~'"`rΆ wDje =~;z!ErX!tj506HeGIE4j=yΈ1 ?N??HW`7G&KLri^7+VxF@}I¬MT9-d;]C 섀`]ړ:Q?6 z"z!ؑkKq]5tQZc? BH̏͘p䫬„$i$VJ~tp*:v(hJpVNYpQbkэ Ϩ n$) o(ti'xMVwoT'C 3:=!D,*l&գ&h~7f$P:@4*E9l23ܧs"YrѮtMC:TcIՔRN4\~!cLnһr4"u8 !>J* ʴ1ifׄRgv~gKh3'ٟ͒*ɷE/EK׿/u J[o.$/`4|>+ 9io#<:un:մؗHđv* ai3 |.;l]mPc4s5Kճ!MAz '2+rG4SB&\(>6gkE̓]Ʋɨ`;ӤvDcˍ9ЛbP|P ~P,wިAm 79IQ ? .1Etf9Ty^|:" NhcTZԩk"/;E|O&l\Wz!Yڸwpo+GoV B˷Pp1S\Et [TΊq BfT%e=G%a:XZ7Q~ɼ aҰ2dGE>,4;:]SiIoQK<8 (3CHP.*U%U(Z x)wWfI!zHq"*I(M(78T)BQr'\r^ xKqb% 8Eԙq,ÆHzC|Qy!ho!nvt̴yhJJ3p8)/؄D v*Ŏ XE\j~Cԃԝ:fe܅oWE;Ę`^l՚ajyoŏyߡQWlLܷ)y$6LX)?e+t|b䲻ÝLs1Ypy)'XmOVT^8O 2ڰ\"9<70yzo K3!uڏz$J~.5& kMj|qtѐ}X]@k&jn@$"")rL$4hbȋ q gY1e9܊(=%F;;#%Ly>~{;4HH tgd!4j 9&/qum[,uA%g}fPq:'AGݠEI%BG d$2ghd.Έ\#^4nRx4,`c΃~ .:#Q0] ĺgGm #!αQ`;D_5~) ˦* ^_l%YCU{Ip)d c3/W#)s,f԰;w١o_.m`L "N/-r4(Vi3(lR*73=Ge[.>AA*L;%CǢR_|T8TҲ`gV Df"E~:MacQDHb.T[жGf̳RXS:s!ݨ߅^gm. O%[xf#:w t`ԁc~߉9L]P[>L8>Cpc.%^FǑ+1ndg-}FEŁT9B6 < H/H#qn/(s EcQuPmFħnrF/D'o-g?М#yنK"jTU3p^/< #\GʊFI= ;NnV[c Iw'4F]A}.g$_5 [sK]p4厙~31ΫX=?l—tԸPv{"`.#|L˘ h6xY6i̋|fvDu (>#8CH=aU0=܀瞳N)}ڔ 5_5s4zAvh@gm4 RѪֿCd*Ei 穊.B-ٞ|C0g+jq_mWS7 lB]hQi^ʗ0B|YgRIӁL>bab!R8 ^uRLF]{epTFբrch{IhnxDEN n >/RآzׇwN3﨏NjCkkanvƍz]N9 5 ðA)P19! sN8@VQzw-"W L@7-ˍ [ ljgrv2DDWP',N /y,Z) jYJ쟥ZNn/Gb q1S}B׎@鐖/ms 5(m\%w{ #X0B:z4;wϰ# ѷlTpѿfHS*bC,C˕D{0fᓏrh{Z¥GL% ⸃vGg k$#:r"?> T͗YUW'Tw;M0'kONyBfB"+Ӆd5fR|B z5f?yg|J(7'LZ d?ti"u_ɝ9e`$Ym{om]dذORL9 V)XA*m鋧Ao4? I KjV_y\S偕X|0ou~^^=uЛ.O['*Pݐ)ӵTh֐gzTgh%tc΁˶N{ Tf;ѧP۠ 6Th4/5m3F+6iIE]KZnsg)Tg\p!pwxRyfeҽkjԪ(t|J{r~(U=/rw;)~ yM>^NWs1gn"Vy|8#s`!o衫)dsW vf?9g\גf[8U=!u9Cb>S6]: (*8oݱ: ӽ>qɹί .C)ף0mVBD2 фܯk.mv8V9l%YRɄ֋K,O *e ,b>Zk +xBLt^J^"3)\c1?%1O\ :\e:G8|r;_iÔ6WBr~+y6ַwM*iL4G鼀()Y_990i4oJQq8qSAlZm٦7TV] /eVS|rn=0pIt0d0? 4gJ3c !APbn N3nw`(5VGV?qFEg<P#GʪCj|X^3H1#5),!%#;]0,; M*1݁X_58Ġ♆2'RP^Ӟ>4eqgfn}.#И󨖋׏&twѓ6],z6'jP-hʝQ(s!{F7W/>$mG)u[8f( .p∑"S2z*99pɨ]|l{` UuHj|TwJs>Ǭx ̉YhKMM!5E#Vz {2oyf_njbOॏ#@Uk5}LԖ㓔vt ?7k Z||{6q$}R`?Rȩ,L HKZ_bLn2"65Z:/(+ /vjdWIVNך1 26'4;"u#AF TllaIu'7T"ʦ(&UwG[vWcy!IJCS[tŒR4)WkX 冑F)bXsYkdJm8W5֊uLKE:K^#(Os}v0èj<,!J6CNZ >,4{ǡT .pmʀ<m`$ |Mb6}nyx Qx:GiXFM<6wv+KBuX8 f9>+JvK`o*(:8( dz+LN.A[ HrjQIK#EAsRn, oI"җۛp#n4 ^$"e! N/jK^~E@Ld~5^owGK蕉̸v* am9A6/<=ڧbolivC8wh;OwqI skfW+G_' F%0 &S&F0EN L:d#h0G JO"·Vx)﮻^!]2*zv|^xꡀ,0 tრ^ j%TY|v:@JzBPR:Hꂊ6 r~1(s(2[tC#΂Ca/aDΔ-bɭ:#U0^f.)$'PobasQOAp ,K}N-'(#%q"I7/ŔK>%^nTpϪ9ʾ wq昬Wř1/9QW]cl)_E r;D -Ea.X|amUB:0lbڃ,d᠋ܔ~z+mg6xr d4w7Hָ *+vz(ߗz~Hd1 "F^C+")͔ sA%T}11ZbJ,ϊ 5vIw9VX"T(48=8O0td2dLČJtiI刺[N/Tٮef% ֚D#8hG{c$dG-\6~W0N>6w9ueސxZvAox[]*%D#,s'sZU"i25Kx l6cOyq .gBV&8nD 89bxQb4-\hCizS~i *f]إZ*H ]\4"vʞ?DIai" ;q | ׎Z.a杍 FBh2[#!$1oO\M:5ZS1cba̓3OraH·ߒkw[C+z E6R?T8#«d5ܮKJw7[!vs F SsmS[ ive_--R`6ΤOLa q|VQ*>龾;OX'M0c?6`|i-Lxg|SSس]P ҁ<&+i\0䗞3@ .s \f^AZ &V𥥉sVLc(IjcJ;"LzDU6hwqQ~H}OGϠA bmX~u)]kytVOe'UUFDJԙƶ>+t\g>}& v_TeЉ``#۲{G|SOCd0jT n&=9fTtNj!ܼºپ`f-B?9\Nd[x;&19s2>pOwapu)ud \Ҧۓ2ǭanD;zWC  Ýz6cu]y:iSan\M;藹]#BTJ>!:G˅YvI*hz0jʊY_L) p^.gQ[Du >P~"YzQ ' '˫5S<ÝZ̶&s7睲t{flq?PEzex ]u /\xMQAJUbU7'o*yQ Mˣ\L\@{ ̴5<\+)Bmw-Xꍪc` O|aN ]fb!&ā{□~~QVVRTJ!}Z,~D$@KOZH?Sٕ7u-u-d0 &x!%+>/˗cj;Ru#͎WS{! ܉6+[b"[4K`J)FE'K'RDb{u܋l,޿iNGƄ+iӰ^\|z#a}*}[)[ C M5*~=Yݦw'bAȓ( z:KA,(Ғ)umg9##"D~-D"ij?vw\ PHDlGh۠yԴƝџL.ӧ[=65y~t -4~)[Хq/t΄m'^`MMBp3Sv[}km +XS"'iz̐ZMnc]dE9]mqo]ؒ-ImAfVQŭ$aq9g)ΌxRkAwʐy/Ük QNԄo$!YbS<|vZR'򯛻:PC6/-g=T+m;LKIA`eoK왠8lӃw}H;.B}Tf^Nh*@.`ZtЧt\Mkn57کhu(?oL H*88#~?T8)ꗨgnsYЛxO!E^|s[JoMam؍ߍmt2 .QAcp0PeP5E4{FVDd2_z?&vB zO?ٵ *v]jIC橀Ou,is;@l ar̡n{~t>?:YL U\8{4 `oM~vF𲉱9G/,`h'[ m]6@Y~$w(VRM@0i$<*hu&Wl]ŋ|g#tGBOuϠP`um],G>%r"X-T],lT.k'@`EAI6l$ w㻩[ROp#m4踮r5a֦30>w|*:`C8}MįNx(D\Cdt2e.)+طXf'lT8=v8ѼLVB߃vs6b"NIl>^tfaRz.5AIg0TKHe2\E+\Ts3 3?} m3. U;lqz-8y*ggVM*/2#9Q.Ja'UfRA6 !;m!1#A* 1l:u$Gۖ74*q2St$溎?ECc9!nqImM˞酖{ XAXsQ32[xԲJp-;[Σw)%˱Qs[0< 4!]O GD/+Hr<2QV)\x'ɛP _Y 12tGH(peGre~\-;jo6mF/fWAKUpӥ7m0sOsӞP?ٟ|AW6/zn'SyM/υ)əķksvic&vs7,4 ASVPxW1nьx­44QFH{@ÞZkXZt锧E&Jal]ĝĝMCN:*ّ>yF!tKUVrFyM!v 68~9S-^)1EB]hYN9$[v&X>"<3DL[?5;OFq$;ՅE PNM"ѧT(jo6V뜥=&lOOq"NG}۱23*^g2"ڛhB6iq7n_؋c]li'EmV[d9Y43V":j;O1Ny#` Ӣtx2zg phr8Y[7q 윗[L@ꢍ u>Kq&@*rsj6|."945[=4$ȼAR5 X՞6 "F[-N0HѨ/"QI \) cf=2!(@1smuœ׶BV+^PR3^5ɎirllJd#fٰ$y`hjio\ސgٶ-e[# Gf KxEY+=AQ4V}U16El?{Y-SUw6-DR[Y'q88JW LKSpZa>p-(P@86@ޟJiMuq%`VG"Iڥ}騰()E+ޫMPXNG[J:yG#+[cm D )kce&.(j..T%;+PQE+ t@Gߜ!t*d۪#7k.)SxsA#B b<ћ bߤi|F;j+ 4lo#U}R_Z+dyfH9 si-}ub@YTxoe2!~ʜc`W.CWyL^:PmMؠ~ۙpDh\c6gd]՚S!qTk?vk-v 0 V'n2/H辸RRh[XlD۠[\Uό-A(DΫ^RC cj#|©vNa1"јiu(zS Bc]t#G1w6a`XvPz2m)+xLh1/zÃ$|S/ 5Ճqo460)*LQoyoT [ݏ*R#e2=@^~ n 5̀ ֩F ݼ'*(d '\YU61+0:: 9ʦZA]< A9 V8.w@Jt3K(&TQ5D*5jPTf-3=h19CB$94ֻzF˿UvbzI¨,K}ϻfЬ] "#e~y>49iv2p5leU,8߰~|Mqa^GRٍFOO4ڳ BO Mc6i>qFXG+>5TUw U.PE|O`v&aW?BTN}wYZn06&GRۘx֙"l$I4(^ OPtz%|:_ʊ2˝t -YZ^p( bRz|r@ |`vI]5q8ñR/GhEȔ$_|#%JPT@OQ ,n{ oFR*D}&О+0|4}j6@  uc>>FPz[ g . FDca/Ĥqb v(Lzf@æD;#Ͱ̚>OS@F0SY@7g<`::Lw{MG[To??{a;`_RP 9?j,ͥ1Yo6k'i |~B<?Y(25/+:G!'tUlK*G|P5ڻOշyPY`XYPw+ȐZ_sݓl B3lPZMr_2: U@/VGuDhO[=m@w3i>KJyp@!k:Z>V#>(K?<&ͥ.*wȍ a~KJ-NbގzLtp! –VV("B&v̗/Aw'JA,{i3-X;m;sBҕѿixTR .M-dE9o<ۜUqtw=(SS.<͛TjM7/~y l%GGH_:1GfzbLX}5sި-JY/vӘ`ȳ7]?#" EO JƲ7 C'Yg^ۖ6S}$!\NqdK9qgj#VrtA[Oby,~[<7(3 yQ[批~ ê'hƐ{?3au [ )o(SгdKbDX!4I[Q2=0|Xj*KđKLܧ_+AD qHtΘpY ra'=,PPN)&gfmҋR"f%Tsm&ts5~=ƹ5ɷwM_&U71&bfΚBaK߹gN3L+p/97Yp0%6:|l}ӛI>~sjgH 4>X؛/2Xoyl*!1s x)+ ڗ3."; 3T !TOAT썺Q-ғ_msiv'HGP)<&:?kΗ}ץ 'ЉJXRQk}ӱf:zA )7`۠wlSSuHNcQhCk~z01%*%S?T#Ӷmh"^qIUҤ$㭰\KxDx @+3@+?^3yʃeQT֔=8e'*|#ZcS-4!&7$ n)sOHw߂%%Ő~+x֫đVV9͵`LR؜I뽽It֐_U0nI);US,[<gtpX5krKabƏ{faDڸxQM* 306X hf;n0E.ugAWO<:VeaK/O5Um|G8M2LN{PBżnJq^{cm(o*< 9 'C*U|yUA ߴ5Wd$A=̚1()M}JK&euOliOLO@fU{_.mD$tE0E 0G6e}63(;s W?=iI`K};êD.s)d;"e,^8+3iy#pRU7ɱ @)ԆO2*hJWGJtN!'y?iV+ky3K mkրط8Rv2'o~<].hoA۪QF@$opvٞ. DfM! B C< $Mۗ){U'e'r5ޙn_K/jTG!:]#bQ9F]pUr0J.DIx{h%ϖj?'I#YZrJIf^A@q]? 4m/@wZ/F}YdUcAD Z/< F1N^T.TXX IIpU83>^j))DMXyp1.V>QHJ(U&c365lv ޼,WJß"8&gxR&,s~4fDe2I-,^G2 dW3jB'[Jz&Ç^7áUnf/O[XTw X%kr(>eÝ4v-MwY!&1r{x_{1WNVΪn&QEceڋcٳQyEl9O^B ~.pFs "ޫN /ɀp(&xanZ:l:{ " wi(`v'0qc!_پD0CRx %) ޕq0iy. $qQ| >Y9=Q5Al±]X4ۛg-e%uҐ~ţ _Dwn*hM@"?ۭZ#5q7X3R6syoG4iX'/&~*IUH +דY,R W1YAi46 փpI@Y.ԇ)嘨9_/dNN eτ ͽl{# Wht"'A|dț x 7kmᵜ.#~G>f2jyKW:, >PلU"?i3Oڸn);|\ +yMPM̨sdТPݗNI YcRbJa6]>~ [ +T  w+ ϭدۜ 3s5јE2Go;նy˳Rớ[$Q/uv>wXDz-Dal.B/tN (c*l[KSkنy.8{s}-%8եw >dm[<5'@Y?1?@>-Iduu7 ]Զon~Dze_z tElQxB[\Dz1Jlk -Ri1G!DU Y*cD0F&Fpx"&x}(8+Iba\A#%-*PTYgGg,aJkCIc@x1u=zKR/#.¦ڈWe=?~'$34He&x(E5雚^5( 4u02F!Dz.~Gė/}I^w1`9A_Oyy) oGp~*򨉽T#/$>wy \!?!$] }֋݌wWTbxi(Oh)zk/r:>6}{foW'mO Ju3ysH,ִo2@&u;}Ö7W0YPbOS#E_:7Tmcb'ݜS+&]b^R)`1;7ڙi΍,kycA=v֣ 'N=ևP'w``]hF:Y22ﲸO@@U.HS /AׅKL9o#GYV.RfJ =X%MNC@_N~AODGd!řě߽45o$h; H"QP@Iqsԇe{P`ϯKd5<܁_L;I{# }ԆH1L^"BW_+mE*8iK tdӮm\+2;$p!pP*C> 9-p%G!bKvL3Sy.܊,`_(F;"5jVmD?F5!" 6Ɏ)tfy%h,2}ؤO90EӊDC u6H1B~׺h0J}E[VS)FF&Opf )Y(v9,W8cTa'E™AO҄Tih€N E $f#G&~f-yψ*.A͗^mI% h/>NM͑mQ W} 3kwSmYoլ~ }t 3k?"CTufNRg%8rU&H~ w_Ymh ;^G7YQTσY>Y98&f_ % 0% q<&D GݙKeʽdqKH$L3 i |%$?)%%/ZV)%ZS Vڃlj;e,6݉@p6=#b^PqƠ<1ꧏ?ޱ9/rli~>NRSzaQ怡N!1qצUboVl* m iԞÿPGȝ[3Pꕯ.:PЊ ?#xޖ| $O-O2*Nx"q[&ٱ? x s:Xfp.h-ATwO-ԱC`=&ݏw8{˨R4?;=pd4fz=EL8,2.S=r CXoWͫi.3j y1˽GN҂fQ,|C.W\@3%%ᏫVy?Jk- Wkj:(=G`AL"wFNm!sLjX[ц]?>0̣AS}vYokOWzo_a5@{ЯDp*.4ƎZ(\CRY&C5|.ރsZ8UV{%/a%t< P~τ7Deg1e3K_>e(^LzI<9iDz 8wOg{l ~Ϫ$#Y0)tTا ͱƵgn3L.8$Z< [uiN\>i5jR@sa r,&RhH'-JƯHfkcVy>[lA^sm^ˬJg _G>Bec5f3NȱDP 1^Qz}tE_vpzjͥ`YQn~FxJ+#iVI9DSZ#/ Ā?{B C/ J(wMģx!3/-q0cS̞y]  9vbg:?$S47։Ĥ^`ѵىԺ@wijdcV NC{$碯9~k[vr*-/'F*ђ0z(W1}`:!0ڎ 8Y_ o4|M5 Dys\psbȓP51MM}Yj[B )1l>D H`W&Nu'xtɹno/&[yOEtr<7먇+$!BM^R$`K`BH-[c>2jp>AcU)c*[m1^ ˶- lLOoaz8 a葞Zi| p$H3!G90ȯ4; G$R_ Ʈ )zK"S^w,&YzdQe|8aFN}cGeWe5a2Pd9Gsi-4"G Dc3Ʃ#NVOKQ0@Y|p]% W%KБ8KDB]ieN@%"2ڟʗ~Yj|#p󢏽Gt#p9|4࿃e%[Ts?K_G)g{P0w5@P_Weڵݹ!ͭP%J8]aN`.|X3sdpu6k5'6G *}=81ph+ Ήhq1G?s@Ʈu(\((>2MdAuhp;G"8 'TЃȁڃg/G!B<2w>$* x8PWםM~Fjr߯"2c lg@d ~Y\X5UzFMpf-NǜFzܞ͔xMW9@&x=ya^P2)샘>V$3z^SM*YPNS0zڃWAHjqL78|j{EE68, \f{*HQ$ *mPTP-rREDuoASPt$QWTl+@UpC G/6 5vEglC`lNBf.lj 8e,Ju`9Aurkܛ)bX`kGXXAb3 9ȓP]]K7i{F ~O&f ܙ=/ 7;5N)sJ:': zS*yhcja@Mވ%`Di?BT=k Aء1b&)M9Iԯ][:rQad)o;Q67\WHwvjݎ8}~-%ᨠiɵv$ׂ$anX3i|Bs܍0>v29 {o$҄Ǖ%3҆Dai f7s3*a vP+VlLOߩ:Q^^- Z /H8-ts^ +2.e5)5&q2@?Zuc=+Zɒ~'l]Sf{*ulO%ڬd {Bop[ᛶ$w^6(yOX5K`XVS0JB鴞)Ȁce%H7?R,&P{p>: dzRi(|hmľ ^ |.kb+ӻ- "ʼE$@^~򹭻!-jPbD[ 󄚶ʮnN14 j+^XNL7WV#oĺrSq7._̓\5.FJE'<&Qd3E0x*rd!S5v(a{:w(AUykikCU#VX..E4ms ;!"yT殫^yfhcs)MC60/ G*ܔ G?k]ΏV)];udx2 !vNW7&6,G?fFfw/ݱRGM;SaW2\ 4rG_1?MS {y[nUL1 `,[SCWi;`Nsfct&Dzs_uC,U.'?w<9bfj&IJY?nYb93>%H*1>l}Uxol,g-53\up'Rre}Iߕ+pxBD1O#Z΃h1d [Nt mNo;HJeKɀU:W;*H^11lfԸJ[Y"Rq7!J0PٕsxA}4r8|׮)h̼CZHHu q(߄CU!q^`B $vݕ[/ۙhrь}oU'p%S~<^6XBb[- aXE^-N=סo8jg-&,%\-M/P)_F5ű>6W%Xkzػ_A3uRO)jHXV~4y88!~SqzN_pSyo(迿ڌܱxF\K :RޝĐ)Ix_3YF0rɏj 3+@]Bj;ͶdT=tcJ>[S) k/VVq=}< 3l RA:JieF;,|cZEw]/Ef!&An8kECHTۏcK}izrD[I|co$wZ#)(֨B;[ڬI@STq#\9˳%){QvYl 1{h/2k-[aTo38 WZӪeu$ۖ}tТ[C[3{ (I+Z1;54WT RX00TGyi)KUn +~z^63DXO\0:Fq6:~y fCp,uZeB0H sbꠎ!`RYEv Tj!HT%AT(#ǚ%x- O%`>,]%ыHi+>1 8bl /ES #l'o4O383D9/esb0nI@cWIpol͞{57HK=kZ=>207,T"]^s%3C6oj<Ykozf`fNlKcLj~e;xVٿX:9u5pY,{JN0@eu_HfA2axfR *tjvI ]@Ǽ~t%X=tNT3ù 01%l5fX%gԀL|{nP3>Gn WB%Ь:V$1Il,_1~Va >ci1(K>-nqAg Z"z|lS4W(MT I`xf ,fFp3z?P '3X:n5p+@K D~ן4$V#[8FEۗnht9E2Py<&_jF2Èfi9*S1 甗b59p9 $k Y\9 ChzK\L2m.{;Yu-e$/f-c䮏R͞R̩uf'"CkWUk2l8_N>[+\Tt$R]bthGl K@ȓ!Mf@\ #_+@z۱&/"*PfHV:T{U#N6(^CI7)L(Фo+a}M3?䶍gu(OxoT3W풜l;a|-7?M=V5),\Q.=7dִ0=d&sdmE&D)-$%2)@U$N޷x [nqEhf.&kTfWM W.vW7Aĉ.^Pi`N|Lt6?C:G8'CNs9k:և A޹a]=ͻ܅t:qZ%B Jm* 4z0#pRgo6EvK{ee\ 4Q]_ڤFg-f񙋂?@D^.+乼<ya@":,/` L76E\t,;Z*òt b=qX E"Q0"&kRfu?'B8751%j /8HL~ETJgp @`T4Zx44p⭂)#Q7h~֯McCLԹrAR CKt3|\z8vJxSf 4?P} -otAz`]M^)Jjښffz32' g^z;x̂vgt< yCJe>%, 2?N r@Y7vzv$ <ѓ HGĔ&.\ -qgdDž743rDǂb8 y OoC1Ά$ eHuMq%_ɽfQLz7 !ssAB+y# # /ѮrpWmAǔHۃa*@ 큂jE/ú؀@X7`H0`H/;jGi5yt _Va^Q %$Ek0jrԃɥ֙*vqYBDd7L z`a?n+=Q_!~6xmG4\%yRDsYf"/Yt%/,z oΤ({nF+Qsax(( FjLqi6r;(bZZ{:Ǯ%OiDZW8%h&7!=BFyh:b6"\r]lUJ+:`gQw%UQ]މ\@]i*]c:qI:W`wjW8RDoz@% )!X~jI_2ڡ~y+HTfufӠ. FZÛ7J,CRFq ܽO.w#ectrM^(Bxouєx 1*ֱgq/I#fS:5Ȫ!I ߓϤd  /fDbQ:l|/q5vݏb~g{bGȗB8J0w$15-$( {2 iT 9 MOk&AHsVKo'Am.}1Nt_uۑo1$#3f~a{L&LI~pPfQKZ~ЊPm5/Z4Ȝƻkt-{ HPi+ ݡuq=J]&LrE +1Q~|<1=;>s# *Ydpdۢ=rL̚|ї(/ʿaNlaUۃ׬(8/Oq|YQZL,jTPWUg0QVu\Yt0igCF@? G1b*`FLIϸܗ(x@9x<aΡ~9~YvQ}\-S׫#A)h;Xliet+:Ǒ,]ŔwW5v!H'vWFmf '|Aqm-R#V5 $m3e̊΃uSlL/;Cѡ*/nàluT#x0q Og;6&s3GP#I}5+'|F؈K2yL?̛Nve!ei>wCNxkryfHZ #d>46V3f|'!,Δ8 +@!gjLFΓ}`X':HWila8͠C|Qo%Hؼ8p$O!=8qrֺ-Ah}f> vf.C]ŪCǠg)Y1smha=# ;Ő+"N?j@({@d\5:0 B%|\7!AǛĴ|iivn=vq qw{zIȑ[ 3u~GC9"R)/ 6_Jb@GHb*mc;P  _MF'LG#VVl#0kVdɯ! |[O&v)LTgX=gNJPļP{&kO^w8`}ln,Cf2Dd Aڹ*mԌ_s儕vJvBmKRRۂ?MGku);N wE-^#.\%VTHKdQࢼ_؍=YYG`,#_Eu+Ä}~;&<P$U[0 er;4펍H]^W4N)}x˔)yxyzP_{VCiAMr<p nfpBR)?/f>8 3wXeZ}ΨAkkY-oE=c}㈴ߤ!,]xhs9BNs߃AHeO`4@c8"9}_rLeHytIn42Ge'w(iQʛn^5 |ta9vIQYL:&de~44U->pE-'VimMrvd^T'7P W F2+BXm"Ytz7I<}VVQO4[~n'&C޸[r÷%\4<-8Vf!l)~MvdגS@<,zB+tC漶qt4+I UMsN0_:&}4ŀ "w%8;^=ٵ.N2ҳyڡ([ܖAK}nIM:8|s]џKuRvRcJ ɜ eiX{ t hI,]0~H7YdR<ZZm̘|a"J3#jkV%3lvty"vI]]&Cr`Xc`Oh8G-?*wjQȼؚĞdOT$DR1 }0{ U3~Q oU=+ %Kj.0c-oJI;!G`Ct-:MĜ7rdh%dR%$I|\W}`σ~Hag\~=*L"FpDz*DFvhl'F+y0l _t|l,`Vy=D9_mKa~i 9roqLC t;cl}/wzGt}+|Bh:d 4$_P!=jSͥh5aGg  e#IDh!Wtn@e% "b0{QUH!Y%2 ވyv 뮪vxCsAeç S/i}_fROox[u 䃱ѶE!/SNdYG&ˬOu=\wZ<$9K\bK$6nq.kZ=e 4Nfs7TrbБ%\k B@޿fj$]\儥5dWCMj-y eMS"F{x2lHKC07i&=I(Sb 5iQ l*bK{+iܔ5Zd7ڥ<#Xll L^+9\: ]{dcty9;TT[X3hB;93E@xUwG5{<۳;؍5k,KSA6hTXy.SoL ;xη6p:TQR$ 2ED9n38*"UO1ՖAxe6F-?/3qbw6R3ܫ'1WYC0M~P3uQJP6aj߯ Ra+X;>@HM~y|j{4~EVz<3Ow2|c8fCSNte8fI387f``^aI@{*!=D^/$Rk LDHlgo+qc?lHZ_g]Cy*+hW (㴡E{,Q3S618Ɨd|%P/hz@,71AOspd1+KvI Py Dž.CϻavYyHqR>ZևN,}sJ,zEj!N{$۹NA% gxy"V?qá[l`$u6qd F~u8:놏h/YA漋6< 9o@#D˰řr؋za 5x Qܹmz,aq9"vs~[hyKQH0F߃I@borctA[tG- 2~:R.dADފ#OeVzBoe+ M"_hr6%qM /_B^Ai!W>XeI]dkaz}Ahhωܥm<hL8A,\5*!O]aM1ddw Qy Ҿ)ddx>i h.VW)h̭|qr#KT;L>octKjΎϑrlk  mY'h۫ҳwN- e)~m:a`+ M]MD1I.Ӹ I{@_BϘ yL^8&LcbF G>o E)0KTlEIIJxB#K3:ϝDG.f}ox64m7{BpDcNoF&{BVU M\k/\%O-^t!qv`2C'R4O5Omju'mR\'J7 rˣ0v 5SgXL} "r!Xxt#HrDq Rq" 45KJvfjCA}\["c fuy o`z$mOznZjP dڦAzIXNn~%5ݸ) esKxeFOGY\bCU!W=8.dP}j:>^2X&Lx,D@j|-i$a}s vc/^v5B\1"E i`t/d'^ ~Ewo.$xl%guT-&_(#fS춫g@:/̨/YS!ΦɩvsD#ή]x}r˵' y8hXTfHDdKtT>bvw.SMW%a5h4(fقpےЙI- oCAb~ $!po&qD rI*C3PO|;.@cZ&P_c֍:}.XYZZ\ַZSُyuI%eL z'O@ȭ>T[uv[$,YFQMH?F $Hjt- F[!$Fknf#/p?T&ם w93W~ѭf3KSn遊S qlh`3 qi*jNzX%ehslIAr}H7ltTAb<ƻ( 䱓 YAܸ)e;8|rLCJb.R'Sg%0.N*zС2}gnszFkk z*|e?F< Uip-&2`r}F~vADưnGM8cqCI[P\ B=66$ ؐK"^}H/PM: {PaYZl~q!p,#F3 "+{_qV-]mQlHq̐_$Hyi;M\ /BHޯ)cx!(qӪZz"%d{[[QQKURýa(Likr9A9IwKl1WBX'!ݐ$mG'rs; -A~t)EL!sniKN/KoSJ)\ٓ=>0]b 3_@yQ4I Q;96?Kӹ3,\rfZT zU=.N&O@EsN.5Ai\P7LuҼKjahbO$T@U m܈TB~o6ж2X91dQ SN_cI3Gc&@v!g8uR`$/K,76;^u,btC-aʾ0 G>r펰NEmhp=HqJ(!+U6(Wܮ;5@DN9ҵҫ;Yނj0ʦxIBre}97xֹ 0H߯AQX0Oeum -ibR>ڟ7Ziƞ2néHO`(kk0=Q]$GGeF=RlkwLa?mܮ F*Bcx&soDM|[9DusR>g]i^jJP/hAdjEMghũzAlVVshpvpp/WigGS^8Ơ`T1>,ABA 's\huy俥Mv"T{)t:AD'eF+UXlg_"_727$3lW8m2Z:h t6'M!B܏ Zlbo3ϼA;@ 9U3lglNNL?Jp8}q,;="osǵ/iIF!ˏ-I1\}: ?`I Cw\qtI!F>=-Qcӂ~ŭ'MI,ٌ.+=Uqټ]Lu ZSM3ѥY+g ^n waƧg|$'3Ldzmr141?T[?~NgZ춿.bb@MoJ qch \(sC8kW qz1I`$l6(q 5;'DQ,yc%}UQPă"WAq&Ō%;wihE:pd֩l831ln&*?0tBKIRkgh5*IFH:[G~{b6THhϮ8(bW2AQXuv~~V`/?C4_}zM%?+F}peҖpu&9%n>.g>b}ӡo2e^c"|$xJtXOVխ`[,8 ],K]դRf70a vĪfpj~> SteRD]*\,O#L?kM5!벪@Pa̕RvsG,}ĩ$X::Gl(65̾~**Rc(k/rAojr.!œ{'ɧhA|'7Q{tRXŴdGuݼ.o_zc?NڬOkdӮ1_Y<.tp"H33,"7ߙ4\fU<Ó(SE&tr)5):OOec2(OK v)HI' QL;t[j̀:!|QcWgя1SOT0W(T0z6I&53+@c%0q_l1C5q+5fB{S&sTJj)3'>ߨeqGIoWhnz$6wղ߳SIkĠ˒H)7_2+qs% yaN5~J]ڳf] *R6D"kq4$+ŢQfCټNJ| ZVpig( iB ƙ(5$i8  >]-ƻTgܭGJEMB[1 #?Bʨ%_g2sv%Evbh\7/_bSJ-DBƠ+\CO*Fr`H䱼`VkYʠ' Wxn_ #=M4_h'*H삺:4 2ΑK,@EϋNUΆhӊz=6bgKXS@mӂ+*mIYqSDxqnG#u[/J2A<#/p+&h@~ "nI+bYD{Јvis^~ϒ_i`B g.eƻKTQ#c{HAbk)b9~3adT㙽8-Cs,_fz1pQ(Q-qBFٓNXQL+Qbl>7]^12YL&+Fȴd$?SMcV{Jcz}I[!uQg_+gwP:k9PkhZmHh٠ȅ7 n9m\x]YecңU]fYQ$ 2v.*'K)49!#K;yL{wlv ж}yq|+y|P4\ TN"f1 Zb][.Ŭ&H;Q Bb`:[9PI8.ԵrpOܐ.l_x ,*0fB9s;\D"bk[6A _fxY[a̴fv#YsRhR9x:]FegJ;V՚NFXbȏ1 G  $/q!4QdALj$[\2;ߔpN6( NOozI W)c_2~ 6p_6Mi;>bKkRݨ ,l,;ʨ%[vɥâ.u0SJ(4kHϤ ,1 Hw褁}lGoQ,@ ކ*/}w-Ò挹"r_ eN8!&3JSvy/zC2[:~szKw2lbbb[I,My8kF nvRb0̇潮6'4for|iء%r,q9LΆ0qmFkX)U@߈=&sM _Զdgs"Jc0tEpp\`A ȣB!PL[eݍ;)9xtӃNBDF9r9$aEq%s5iV` ]|wثc2slC,*t^\7;Kcr`I Y;FO7EpYq3w̑y8=VM-o6/L4RzTfD6p [n%֞] ,ncj`q[nb1,pJXXMVK|B5)!쿸xPF\{*Q 0:YBGDDKX E5=Tdvu9´7 ƄCRJn{)|}$Ίy}*Iv҆8r&<2+ ^0  J\l;SOb37^~ ܊Px!ifS*Z,7CP2 mrzwf)*]%8\h/,/ %xSQf, @LTF^Gʋ*|-r>ѱNcr/t/ th> UeyrazV|n/;kxU{GxBYSgȣHvWuQhh)cH*?n/4yp-AmTshw]3VUp[!VjQ/Z@襋nAxCw;/i;R? 9kiتeOh")9b 7TbH*VHko$Bkk`DjOgBAu*1{5BMQw!ֳ# D-ѰKB'@X}TG#,¶ģ9 1i(ȝ^[dHT<.+u QD<^0iCAi{ ڹ+ky v%@3,'^@_5yHr?IUw[}(wCL O9I[D0d#1SÔ]̼I:Y^eZރI#E-ޑPOiyIz#ݢCU#fKsoArD<((F$ ( $3]B_dIz ǜ6=~~&1(82[v/= sNZ(- Kq%Wl[b1'oP /X1 ;xP7~ҡu#@AT`ͥC]1_̈́$ezX .OE2s(qO@i hVHs@k<KY?'">jĴEٙ#\Oh[T[L0eINbnў<(3ziq%4 ӶS] 1Tp7uӱ(_ r؃KK4Q,UfL1'qlpxmXݕԏ[!@"K5$p]_ٺ5^U?K4?77½%8B(/z}-{uePΗlVu>p6|؁b?CgW%J2ӌI5tx9qOĔ 3<(^AjXł)8>rf/m-?/:^_X/OM\!馇L-3\o9| T|> Z2-cF~IX*yxԶn|Y]=ܝIԫXwpB"nE2ȥ"K P; @ya;Prއd@[Z,C`sBbӲ3T.7gگ \JUVᤡZ`kpPɼ|<@eSצ?EzMmKDׄR6EEbR^xܼѽ wrj<(ntDWSC7,1°@,1])c $8) UYMZÇuu$\V7("7)^+^PWM\D-+ O h{mM__Nӥd!Z&9&DBkJ >@Ã6`ێ% P[c1\\7՟~H(f3DM~2f߳z+j쳥FMH@yWl,{McB Tr&;rՈxq s?(GZlMǻ/s?r$gh*NMS5=NR"~~^]$Z^Cls@<\Ƭ5YLYŦc8u+lw XDƗF0TCaʥC]qn7ɿ+M5 z! q꡻ąR$T9 I/Sf{ᖆڪm['l(ivq;"V:n;! v)Wä_jr2% ͚Z*V!Lo׍hA|^ 9܋L=,tXToc O /0 !T'AuxdPQ"a鳎9N`u\IӅx_67ɻh!g2t|E+a65oovF5SWZ]9 ^#VOLh+*N\&OjL>zw@bF$4l$8 xh{5bjl_G]Q8`f]~>=&26.K3^*lHRrk"K5s7zguoEAGV#IPXT8_}#\ I7~B?Lx" {L(?ϑ<yiڒ`q|pBt NX'}yRY=W?0JTY)=> U6 ?^OF'y&/Td:a.dwlA ̧[ Rm EYD2;uhvdYNCqx)C7v\@v_2 kU2_} hԏ퀈|bhQfuA^J1rve*mbTVԇH^ e6(71M$>qiv)TBE8D< 1m^ӭz;̅& (xu XZc]vBahg7YX$$}02HDLsc$qTY5;y_1ݪx-fvg``#[ͺ&|`׻eס1y|_5pf5ǹ_-hew "dz+J2|#j38 cXs;O@tN/T%>P_LgyrE[/ܔ6'&}v:r 9>\pl3QcI/udZ"Gホ&DtNuh>V#Euúsv fYO9v$֩)~[  >btz,UZ^+8f 1>" ),G`=_PveԼWE.vceKZV$aZZV>丰8/ҭ7w$LXTKZ|Eў}?d==2HvOz?xj3bXlJA78i )`;~]{4)΋{_ Jշ)<|G2Qx>{H!etZ1!ڟ^XX،jBdۺ-3ȭ 6O<9Y}{#~$و^ P6!uȒcG@=}Ht= HKgT LZL ,7IKZUh| ŁcO Y0"htEw.^p_UfNdP/^+{LH~ w=|`FZF -?qڬI6EqƌXl.^(RUc0]^q3)0gUYUa nYʐC8"pO4}I(uumG}%hIE3!$S oCnpYH7V05zp&w qpƟtU}lo越M17r[ {Ƕ*(wjD,VgY q0'{8j0"L$[0ٗ.C&wJZsX5yi)j]%y@K<ё8i ѤT1;y@UÑ~&]W:Я`Wƨ[m l0ĈDB?DQNP#? @đ2`VTcl}w uR:D)b*dkdkHbk^Ktħ-Bĸ?fz\ޫW)\:1]t|[,Hht-$._[7 &Qت uvŀYp# t͖Wq| Mk:k`3 :O+VHqE#A,1oMr˫{Cimqa4"~KPI7v*N0PDhn!gⵛw-G/n>: ;A̴R#Ma (> <>-sIn"tLaꂜa]C{/.E 9qj{+sP m^,A1 k%?77 ^N( ^,kCq1ۉ7OZ]^;M! )&J!bUV XS޴~OTwO4;'PfNU@ȯ '0x"&~ * l J9-' P)LV,<{H p V7-*q.w↝VT߫ӢVo#iӒ#!n3_2F x"r{u؇<]f^~POꪾTmc!d߶z_bfИ~CJƛQu3z$lX1ޅ%ݏX!j{7A[(ow/D'6>B-Оo\ vt8hMx3)&1* 'KG%JeCj3(jlSl;)lbXshk/uJ8cBSR UlaoOQ=+IZn>!33@wl뗘0AEJ,AĖdO,Vn< [AMӭF%~oxHo}0iSHP$wt-cA.ʒײWp"yCgr\N y^}$W֑4h#,_uS#^]3͡cƼ(eEhland:_ȹl=%`TT% <7D<*T^urm.ɰLjn6  '#K j:{6|+`P^b2ߥᥴЁ*`!%b|7ѓnqh.h5/5bTNdgYrZV6$kհ J3% X{5L-fK{|aŘY+$( hw+0vps|6SsKyGvQ63vBT )bS{\G; C}2I՜J=EfȠD]AAtV@?RϘrAo7X z힣YlRI1\+RbPyj]1UfZqk~\KB'&d]ޣщn,jg;%#["1Hft4}5c1&h0ewt$#mXNR[3gM2V>g} sGe$tc=9 x߈7Rxމt.S7 5A$}VL؄ Ї+Gߦr*=$5w'ACp, n)%6ގ)P<|i@+Sƙ7 eyg֧&_7$+W ̕naeTK/gãp4S_FVD4Ҷuɣk QqUAC"ӎ4MjEB<0w$}>y*c a N܉$~֦rbO;`i;>sŨ [5,I@lNnvW"Y"|SJ՘:I0p2BP\t;$v ;g8xFPނG %aP<÷&Q%dj΍7;>}%;-՜3%Js}TYӏb^TT7KΟY؟OM,cmVv@Vi7lT,oY"l|ϤּgFN >szU3~+'bKh9Xks~$8BNm#.>V +S<;cSlН4jH*o'B#9CG9I3Y>Q&W8`NknN|wF;Yd9H8fOfkv%K%jp^'JU tSLFh"ѯ lR5. f}!V3'ǣ} %JliGd$ny1 @ >b&^6qg%(FSlw/mU&[lmD0`"^)AwT&K"*(~'pzxRv_2PR7%Ư wSSQ" Ћ~ew-mlI ЦϦj>*6w*rp@ jù'9xɦa||W)YI \e9zp+P&HDka*JhUM]q#2jH;NEh o\!wV6bp"2P^(+jhhƴ¥M!<(7c{c,4xw:X/<[g7rEAePTeT_dCObHQ^ (HhyX -*ψjcNvh_򒧤Cs;PZtMos74Myh8RҎA;rbݻ8_{:W.[eVS7y׆Ȑz:C㏒L1 vG-V_[O1xhy&UMx8Axk&i @ $P s<^?Us#˰w$ܝ VAO`h\.uB >aLtj}N]t2RKC ۯ_l'TY$ëa~r xfS{$=sP3xj;RCM,lH}A<3% 7Cz/_>tMα%A\VINꆤ wX7ۖ~ sQk2Ӹ 1/[ORT_=}DFͼ_1uhdurX[Reo2>=^{]A\O M12]4]1ߙOBOgس:#񵝞ë:1 Xtmwc7oX9Ho|lo;umLMl+Q“VuYNih"! `~qI~L$^\AA Ea0i nf%1w. ō4t.-E5,*]y-˯ixz&Jު[">}O~ƽ.3{9PO VU KBA$=X`%S^D]r w3Hz5co@ڪ"byfQ +ɿɮ3(B,8 tZ[wZLA X"CNHF`iAǩ%0:Ns ~4L;vBTL6VU Y$EԵZ+19+U^ ?pQ䆶՗~Q2 ClQ%^Z~0*>l|P \ ^#K@Oɦ۴7hHFl Nl#n~;ޟ`q&/"C]խOB՛AhD_t{\O6G|=)"T17TGU 0a>(2yLJ(TQ(_@ [;k}c;")${ [)k}{3e ,J;4B̿Bgy":sX kuk J2HGmnN2Yʲe@vͼM\2"dQfCpVTQv4 mK-9>v) ltG%'zIdzRJV.fґ{H,kwI)=FG+LtҸgZz΂ݬ?̬)Lwqȁ;ʰhHtEdNG m~۠cۇeR؀񢥽s$}k8]BJt.pQiƾ/`ReY8Of=6~xX~PU{ L],ƾ4k$*|Î;} VCN,INo\g3)n^ Kdhj?k|\3 Cci7Z+ϷNowP|sڔ&k$x˱4˩[# =9ekZCW|DWgƼFolP{6ې qc8%'L:׏J)[TATpwr.0|$9+3^ul]]/E9%56W>2((fKI7rl =﫵‘^!x*Fާ.D/uԒjCC->}306 @Iɴ<+F%O)EUZ  Erx =wqܳSv{Mqvۉ+֋;.'̇)PHo[(DiJVt'xJC\ "(4wi=!EpY2)wʞ8Sy.3NK&\{Ԉ}~ 򋠜D&r꘴vz`R_^>x ;Zȱe<wWy`@yR!p*$FZKn83* AD 3 ڍRO&fLYX'Éf?W1I Z!5r5x7MI,518wM"W)wqXHKX8HS)o$fZ\(p-邶u%$OGXX,x <ʓorWzȦNpS2[Z7Ut& n% P1(O BB"!W@#jEkBt3jqS52z*˵qae}B¢ˆĕׅcMX`jчcM?BK|pu+ݯ\\ ojAn!G_lx @i4c^J6{ gS^$U\*[ata"ܖQPD?9>h0|K# B$'v$8\G-*/z4jX?HY ȣ&r1\nʚUo\Nj6WU)$CS8{&GUV rKn' 6C);;qȚԈNÙ]uuDR32)um؛v )-D?, 89ߨcv3L l!gH}(+ޙkЭ]-O{k_}]{(xE rw* ?`A(}pf_V=PPC?zOj` *y Bgs:r0ltvUδ( ҮA:\ǦL{g\PoOJY"wHbֽ֯"*2OϚN{q*E~ďEl3#>EWn:FW~zX| [3%:G5D7ַG!]?? {C 1unp=3;UFx 4ԛLtq5 b&u 5THMtVw> 0a <7StO`ޙl?i K2 S/q{{UrHˆcOB{VDgj 0|hefX4mxO8V@]m&ED[1q]>x „Ap6݁=RӸ 'ܵE6-T(UρpQŅ eWy&Vʸ!tHD{uZ)AF;淝)"ˑk]H6<F0gJ2o?w/#{ӂmp;1 6*y䕷A-d7MX/'-ժAoDG0B!>L dNMR51= XfQ:Dne+ǃǵ:f7/ xD*=ubhƻ(T=n? -5%A*o}ƶU6o(#w8a2ޜ.41\mߚ;0ۓѩ/r[mœQU;kZv_ÔzR ot< okQlthr*q=s[F J̖ѭQ?R~M/OQ`ip奃+NUWA e* $1#3\~z+$M0'ӲZN˙^2$g)z8x8`a%DI/w/f9߳]j(#^@|TLk3AطB+cf'#rJYmQ x%{ #Sp6T"14I!OC̑&SޱP yU5R"#Z&qBȇ@=Èji]ѳ7[ȎpAo2bk=M5GF4e 75G jİ܅Eg81<ȹkr[+sQ2/bB%G$ ۿuM718=jfĶ=yX47eC\!y}23Vi'@(Koq[Q{4pP~##G-++#4(=FFeR*iLΫfb+~GͰJk[#TFac9ZE_dփ]U{!=|'s]3kmS`ۺl|rI1@YzFi y.:׀#o^;J*iRKP፰35ݸ@+y;5;97 d"Foh8B!LKN_t:^K3s'P@se?, װW/l 9&fj fwSI]wu1`",;G{S#ȜY1Zϳ/ l cHlKj0x4얃5F fGᮖw_輨ŵmݒ7|}b{x/ r sh V3ܰ JgTe0ߴ_= ޗ81Ks+'mBTPݰ*(6kcT zCJk]{"7C~%xXsAX/Z(gd:K|¦%8]PCouAFPtZl+5fܑUXDFG|`1 v*IhVhsz(HoY 5\ɋy/t|S̨ ]ӥH!xoSpm yXKnikf•=E^47"ޏ5L(QD0osK7t8e(!pjFhhR qjL<1`@A>OC "uC)~Y;N-O,YXɠx=pLط>%jbm@\t|ksM`Uc7LJ;N9>$̝!aOKˋby*HD|uߑrdK=Sn $AyH}@"KF22hy#e>0 Ia@dC%eh}Ć7뼤=]" wX{ q>$>&@((PdӉ&6 H aYAX ,qIi~n嚋+o'ܦM<7s4b#}-*T{;/8OlQLUS?a+l@ 9z\="k u=ȇgdT)@!םIE%xvǿFП/Oe"{,'ԕya֡7Xiʮ1ӂ&Iz3*4rG( ih{x社ǔm@FA;= &{./BL@Tv/8u1? Eh/cY'%p`$)bfIRh.&)J1Վ"Nj_5r }a3bYrNDj=X]j,aU:'DD扗xɎpKGC}PUIG#l͡;^LDuJ#e:رFK&Ot}21:ېgTZ,n4ey׳D$ K11BbUΑz',/WBˉ)IOxz\ isy8%kVd\pdrz`X˔vp(]8:RgHwibHWq@>d1۞ՃS/hD)s!%W&a;O aI"5}tXA/2ݴ:/BdӾ{5 >Jo6 !i7uτ`2[jkWٚ32 |弜|fj (ƕ+k` G#O?Ol@%1__B ٪y=Oୡݪ5+ *"KVhIM: n~od!ދ ~ũU Q:7OMK54ϖMc6<ZE6IБ& WC,a:MS}:(v]C(g,Jk0~]Mɱ:Liԝo?z$+2ġc֞g; 9Q죺78=aUPqjh¼3̼_:2"U"P u.D6}?$wOk&tK™~l ߽n'NH'(S'X3睟<$Dzob+|yD)d>5Ú伯e#iyyW;:?z m߮D8C?ۊcJK[zNG-Mg$=jsnqm%SCbJTeTR@nJ -h3JItv@&4kS`Hd2bAtwUjIx/Ηqd^x"bj*/ӴICviPۇ&PZv,wa@f`m}' mE½ ͇%V(cȭ,wsk_2}=[u;$=`X PTx! CC6܋Jr^6&tCӥ`*vCi' ` CĻ4R1f$Y9~|_%+.TR*)bS~l*scjYeFHMHe magAF>XUȪ2)i" #){d;iZG zw1 emĺzb }#k-V"b VU(\\!Z>wqIv y˲l74Z&YS U,΀ ʑ[2fK F-/cKC+xr(P Pe=5dm<&ޡ_hG^,'c` ? jݭqg&DFsnM~sjHi)~vjL߹?N$3tx p[+֙0ceC0FƠ0(͇?Lʀ|\"e aFl8auߊ-q҇H5Uƶ6(@1EDt,'X'oљnʱ?AG7WB/5fq;s.`aH{/b (fo_?X0sB^LmF}K@?cvkb8љtZz kct=-5tH7K8Ifu]HQ{IҀADNpҵ>ʍe&d(h6S.w]K6%P5 TsȣVo!';Q.dh&7]z a͗uEBO6 gy"C&f;=$u+UBʇ'BrBehhFߥ-SNc@{j6wxפ׶8T|,nwRFAw2*ga$'s3""0Ia ۅ\@&Cm`EHE| BSkp~Z!\˭& YLGZ3zдz9$oU8~<_F=/D 2Nð''B lqT<+"݌=6p 3/VSDJ'hR›%%ߋ,1eDtȢ`~$QM RlH)fXF {iPѠ7. ؀U$rVjTSl7q+)⧬Ux0~,'P*-+jR\1]GJ7X<"Q;WZζPi%Hi:r hIR?o7fHr4wnPd~9f9⏯]!.'a|a.P_ŒkS2K?X>я/@5 m@LYצ9P!Ɋʢ{D#i=`6`<5WJs0*X E:B_ u&2O0ɿԇ|R w109Տkܬ!]q y(W Kf旝SZ\ɡ`q^|%^FǤ$d/AH% "H6Peէj5ARay/T]ۂ%w'e1^^B[OҾypj_ :'d9"oEp17`猽˞89ɳ ^|%fSDIIhm6+'jm 4";J67w^$-:5j^fe8⭍˘%Xk=d}HyqbX rnNQa`ր@Ӫ@!wr5fF|ϺV\Ɨ%эò?2uP]#j*ugnՋ#+#R0\qDwǔ,h8(nUm~b+tE7 L/WteDb ӳ~fddYa/lj Om=U؂AV?pvi$QvΟVkj keV#"!B &]Z|ʃdG 93jr}ft~,*yj- M-wMG_C)vY j=oeCnjEbSd9f@ߛq!dqA1|7,i9pǬAZe ̽W*Hl"1| gxeyFeN4(EѨoʥv(qfm~U$([+w 5_-X?S"ts}Ĝ F6 *Wp2ZP!U.+p:t"-4@ F[F*sDeJ2CrNṖI5 P-V*Cq>9Edb[qSogx|܇G1GQ_ݔvWg: Sts׷; |RF-Y9!V% +yG1.]<|6JIє=  i': eq' %LIz#|3aw; 7-m= Iۻbf:J S3pXPslx|/{eZȬ5xtxƍٖTt;1g[Z7k6 $k/vMd g$<<A43~|ǑUCi-xi#_ICCt# KjP8^SHj@rjn9S/K%o':N;R#Z1).H)gb= -p5CiOD[!!'Eo7ǹ#Dl U=jiGvSWFޓjYF݈wwx:a||8R9+ۺҺ_Ϩ'O,کW8 0ёDG(w!$*,\SD0[o ՘wa(7^k*xg6566/AGOnoE7U _=`ioՀP0 Cvށ, \KL>}1kdD\DJƲYe xmCM& S`$cI&N@J}OVtƇpfv͚J!+  ;m:m"^Ee4-DuGL=i)g|*O>.)59*sS֎HQa֓ƤU?<6e6@p:hIYi'Dn|4^TGC[(6Gpg.E4w $3?AtDliixײ Β iP,gZ'e&4H,i IjBw)PbG]=þN/:e]xMꁼ# La[AI@?`v/:G{ E3mbLU  CWP*'qL2QJYwMR7Y2\Z:#Mș@+X4dFe&shBڏ7t6}IJv֙v~0Yq%Pv9?s᡿"α-( TJpĪ2E;6A+rtJRm*=S)r"t˖+E!@1K`~nl~H'uWe bߴ7<ƀaR0!gl jڲ9j١ɾl,fk)􊃽/o0\(w EIGZyypIwVK`TuQ`[Ie1a~K̊EAk}mQhq ;ӣwQ\fB?YWOn]2rjf{9[".~?baǒ[(>HʂɮO?FNr\0s-@=lGŔ 3 1I g}7?0-10p漁Ғ{hlEaE8J9S׬Yv KCVk%qlfڒwJbM0}E0w]0dY)ApS' g9cVt(jØ3GKDu0m-NPAk?zEQ[#wסAWUG5͔ &G)n*x)ʳ6g]ƱhldF.Sv*wgtZD(~U`t}䠴c'*ǻ0% id/ N% NFQ?9?4{H0V [S0$" N]׏b`G+xa1%=F|2|ޞ2/dDv[Vr[#7#0JVc[7p&ĊHHUM#ӢP00`x3WZmX2BWR>J ٕ)Ի>8k'9Cw =Psn|;T{(ěUɝV@+_!5ՔcYYm25yuo#EHާb1%5[osr$q0+F)Uس^C-S Vw略#8³ԫ c +'G WNF藖i 2͍ aG=vSz]~ ӄ7Z!= 7h`b\$wFTe@ KfHuP=t]= MO9?^u#rp-LcG"pJM:I -l0i8^K+cDа\g_W-pVN wNAؚ˼X=#Yź-~px ݇Vi8\L'ĩ|*v2 v!9?ݟ|68}Qɺ>b׽B7HO%n`.Ů=SW"WCz"]lG98`WmfI+x}\o3HxQŀ:m!:%>Z7IVNY1f׏h~3.I$C&M|.h~ǫD^>wgAL&ɟo))-Jy$U&[gjL5tҏ[o`l}f7}K/Ŏo3ꠞ0ӛeħG*▻ 66r-pAuH%~ ET:7S~g}Ҟ艰!m)_:yX* Eۈ% )0ۖrlR7i0L>n͸t4Zmҵz|îi(U] Wx-s#mT0ؘ,}FssKKM &cCIQ 'ĮC``ߘ#$L롆 VW'%*rW@=93Á"VvdZ*#y[fS,0h߄XћN]u F ,D@\-*%K ߘ-gt({ɴ"ϘD]ؓ%#:;"փ٤̵GSm4ܔĴ̷;.hEzd j* #O7kٰ@ ԫSJ?z0hKpt0nSL:%#ҩ#7]Y~W ֭:[/{w|Y4,ΊNO󈖶Bɬ>,me+0!f`:/%bTbey?>A]u5'Y,5Vr{h "Xtg1\͝:"ЯDL1L bYR|%&Ubqd6tMy._ R댁1L*'dpX0*Ur& ?H6`9b؊|MqK@S IzȚB9-FKďu/ BxLFDu3 ),Xեap:K6Ge8 DwΓJT;v@7𮌇S*[n5o5qJPxd Yb.M,k.N`>6 'sh.??1|g3~Y*_*NzZ$hAv5en7pn/m<'aSߙ4f#1*f(?R^!)7SsU!So0q~1E5Mʀ]>}RReua=* F}p l׏foOH%hU)1l%΁XWٚ'F,/|e#a:lInԤ;B۔k; ^H$Aؾam6$ `-apkC] 6)>Ir9ZQr?_V E]0f#r0UuMr~r1`1T-nucD$#t _ s_tz0#-WMB(*#`w繟1P6!7R$ͻXi򦜫 qEme$L>ѲHZBؿAgb%N J-N7KTƁE08PV[GWW9cF3(ZowQ۽jfmAzC?bBhŒl@tȴ2Ss|ɱrW ' .F2lS!:EEGT$pN7OVNhCrXZ@J,rEݥ]dE#,b58M?tW ? ^}fV#L[>Q|ХtiU?'!pePRrY>Tu@[RGZz,^$G9v˯dz*nI,!?̫b"NγnZem$7r@7E7hozRȍWZcbFeV% 7:s;!]3DX\P*9Eѷ_u4ܬhLё.U1oHfwh \qB3[+(e:.cj \n.+`WPhi_ۚy*y(˚3\=}M`XpLT(ݩ>+)WkJߢ"h[d1"8ΠٽN)zvWUt\!kŤ#6:xR ROY1b9X֤\1YkYaM]F}Zn.piנ׹]PP|ϙbTb|ء΂ǿ C}iLH7wIT~HWᦪ&ȴ54&5nbz7r*/A{6*CEF!&٫ZTncd -sAAnErZēR=W:PF}Ạ۬9t4]}FA0 dc$aaX#D ;C^ ۓIax1~Cw\vfhXX +(v7lF_{PfeMn;^C-n"5[4VX:@X! 8E;z2/{A@ 眿wk5QS_9I=߭KנJCBOt{^%e RI6KNxYsbўETSm 0ik"I9Sf*<3t6@lO6|A #Z&xݑ,8SoWπ^Q w6¤]uV:r[.^b, $qṃ_#MaAG49(xـI:xxޖpOE dBWuN}6('dJD4# g:,}'[eٍٙ-|^Wy DEXue`xnq=)~cB$a'Z;8u^3%ӼA-QesQ8ߗ'&zd,|WD-`{xN qrpd[- H*Rf#}*2@0~V -7½Rye%1nT)G)Nu{TX"\f$ Ȣ*^LtP!|:P-PWYT+p?#"]\QM?|⨝Xp I* p'!+?8">7A@ry=b4.6@y>!uA 2E@ JhGI<X[ȓ`I ~ F슺*!@pcGF9A'őR&t kwr+, ܭ_` ׭Bkr~Dx~Z$SV`C8tTZl[vnUItJ 920Z|J` fRhR pc( ]3zdp_nF(8__%;H!p6b$(P?yʏf$ѽէ:-쒞T-ňK#/ 7ܢjw3a"&sy1{J/}S(fănsB na J]Z3&+#R6FS17`aiV9B ]] A-b(;OAfpnKC僕IDZ[݌ubmU|}- tva  YRQ5h'@ CL&U,_2ë^G–:RI||}iM;XxX,Gs-X&ݽ1Q`uIGcgsh<}c\5QDf )dlUq'rFZyДˆ M9esKm\x:qVO5.U;0 $NϯQ9̣(;'0 } %l|^@_ >lqo`pZ9P)up e4^(v-˚mA譖 .IeX&}_KV׊UfQx HÑff d8@ N6e`^)\]č JN/'F? d:p-0 IP)lWihl<8@7?Tz7k]p4wM D{$p^R'Rt;&މjeXݡeIT20|[{񍈌Ty<R\S)3#66`2j6Ssw1) C2-s yjDzm[S% }5B',?EAypPD>>'´MD[ b[(' hRfuJ#|CJQ4J&u&2q5Wv '}alc Eκ}ޏR/cbYck9|ϱ~&x{2;*)A?~ՌEK¶ހyMI xaaGQzD4G`<[ #7Ð$l |D  0ub=hRkş.*#ϱz;boIzdS_؀}{ 1 ]}/vȥ$o5{5=/O Q&yk6c`7拈hї"-i x 3;Jy 4u5:9ɧ4T5~U7 kjBp١"9q|`_$ `~P6P YY1Xdn{ioJJ\/i6aq-1(evh㯆|g¥Wlb7&Kǒh28HmnÝvKHI8* PQMy~zUmo5 eSnv[@(4Z)l`@ 26u8 4 %}XcC$Jy@.^,Wp9y2a>b1 zXWjP Zbb;]./EC szɲt.8YTbqǵFfP Ozyc82 ´eΚ!qcq8\buа`yS |Yꌥ:jֹ)Ʌ~<$#j=<;ws/[8)TW uN їک|JA *p4)C6`DeK\HtQz3GPIY@M$X_@XS׎!Ns7̪.0%Qj"@oJ5,y^bwqx6NTl.r7 Ỳ#1R#[DrZ& Bof*p Ϥ?0V+bOK9-9`5, @qHn(Ge'O__\(|"٤Eq\Ub @+ H\abhLሂ[%<\ei5s)W﫝RNBINJi_(@0MۡZj~V &hH ឝ. 6"_hy=&)?C>0FƗS噪EVl',@V {ޡ}DK<>x?:AB6*- rJaߌ/z r;f"CݽQv,:v(\-@ i!q:JrtA՜73Xh⛔A=d⍇hiG礷 d˲÷~)eUơ4ږߔcت[ "ǟcu%?W}GRPoyf]e: 31ʭ(+(7>ˁ*,]ZXdB lg<"rT6D,$/0gMFmϧhV9ޝWϜ W'1!#ؚ yhE僔;f=+t."X!qǭP^8-8O"oHƪgDV ̚k93 Cspq4G\;m;(zO3!@׬b~a.bfP\[QFͱb[nwq V36VS sI7o+{:!BGL]+UCCk611ʽg08S@n i;gGz ah:LQAkJ;K^,ÔA[Ke҄ƚ* PYx!Kq< }'iGzUj ( Tq5D}HS8ZFJT̽*~~Oj(hrs|E/:n֝&ђ|5OMPj]Hc֌ެІ٣&YiYOb=!v."E˨x |5PRH@IEI~aEwn3D&_Uc11'EI,\E/5.O ;DrJOjX0/HnqKͯv8C(؋1+?q **WTf_7gGfuKF3@rYXGxD"oaHQ'8῁W} INjՎq-$od8ཀྵ`U~4 ) i Z Tp,Na]7T_m7!I" l_Mh/#\Ś*+և9 l˅j$T?Z6!)g&O{mEh ʼn#Fb}vlj3fZҍGpN"?k%7@TByǃ↪ GMШ=6ݙCf{gap9uzV43.qJ8سC~{D7|5!ᯡ׹a5?] KxKSfz1B*y!ؖ*oH%v$ljwC[9,>q/-a6aBB =1 &|;(ung0S{|)HWE]=2Ԥh,.]\M.Ul(h~cgDKGZqe巢İ2x{v9*R5K Qe01ϪG{8DXQ2pO<le{scxuT/1jPVz]-i`|Hz-g`" nKE) Ճ%?W1ώ.65Vzij_ ^pcO>Dًsbp\7å:1XcOA6lGR,`73ds/P.8Vu:ktdȒBg k$B/(d.|lט&8tKE[$pbsJeQm=>{' @IvWbC)|։:x1o&܍4?Eh@#CfG/"n=]rS3 *qXqwTЙ:xFj:D;Ngf4=>wKr' OijHWA ccfkUq> PMоO&_R8JJf ă^tգA ޚ@|F^D *,QSgx˙ĉ|_U2QɏM+udH>"YMP{A-n)8{bhwi#ԳT3̄pJF_p9aO 0LJYA!mK~N6 AlܲQ9k7EuϮ |7{+"HKE\oyNy!<ܢr*e°pB8ˆ0c5cU&% :2\,ER/Z ,r\n?|#Sslj b\1(gP`ΝR;{]A:_h3;Vqfۖ%{% wha?&<KPʫQM[R-ǖH{h<=o~`,o5pب>ymE%_'I#E #l"$_Rۈ9o5CH`cr\u@Z !'&뿌Tm<;s6yr pMDa`DIJ}1΃q‰ߪT8^z ?grZ͕nj"m$pGinGSG3LfߜSSx.3ÓZGU!8Qn  @'a14x,)x?VԞWB#tz=Ab^PYt ?`еIBTw @hA> )mS9sLB+8{H\6G3ŊLOt, :!nUAm ߝcV߹['p5BӱKmP F3''avu&vbA .Ps޺7vy\C"tGo3o~8X=3h 2q:%HRk]M!k{#=]=ӆ,1XH'E2Dp&C̱(u^:kڮ$LeGp_DIsgcS{߇|rpޣV7|Z j鰕B콻򟦗Џ"@2sm TVleeyp7d[nqD/FH"g ܲɥI{T:/ԒY^a^Е`ѽ! Ssa.v[F3!G2}'M!VE(Ufqyz.]g){6Õ@šrV}%~hN^jTzWVDMce׋ֶ=H "m-uY֚[W}=I t Ń:~ռBX[^W{)qfp1s{x*1b ]PCeq,!#D-ǰ=Ɗ8F mm%W?J$'M4P`o+}˂w{g]DmBz2D+{rvpm$֩_v2)t?mӧfEuxǣ0MMW gmoU,81w8tW|B+x9" ۭS/Pj ^;7}p^e.B3G"!춋fH%-r\j;%9^r&C@7^7e69Q2ugS-_pn :N [xiU ҃cr9KmW ekD44{(ʈhK:~r2j;׶ME!܋1EPb~B50C[ G4 }x@,}8#-%t71]W;li3!EX;?J$}}# < XCq>1yx (5,WrLH.EP3zp2і@2 xg4#q[렘R;蜌_jCN/ŢTN 5]5nf e GJ@' lq\Siw@a u,W嵲=[г% JG(53v/XמOMV3i94 >BƧ e"LpE0=,5j']ݘNz[ȃ ff]ʒnN T4BNW뽿Ab^[&.M)˧T Wȝ ~P 3F\nMiKQ$`M$h7)nĎcEk܆3xpujэN5j_n<:sIbjmHGOOQ@aM%!? Hq)@BVW Ayew< ] Y'v SfqaP<“Rϸ;% `bEy/KY*kܠmQ鞢 ngXAjX@M"U$4rر^W7)A@`O^+݅̉JIiS3A Iӷ|U oC"X;HI` h۴f ; "j]d. =) VCj}΂F|Z&{=ôK+`UMD)YEŶ6 cf;dqڎϜ 4HyTB~I+y=9\椵d եV>CO0fPDc8C Xd}eb]! );Liv2Hל=GGl/Ac%mb@6uR&sm19_)߃#?O1W32RjbzpFQW_8%~WU\!_xlxVи[1XI.ɩXE_2ɾ\#S]  5SF'I g"E 8GArUZU J͒P>&d#x"vdquoLƭ]Q)4L LMl@b}.wKt.F;99".hM流g%ѥM`<*P ǡh 4CBLY7ӧ=Pbi5`q%Z'JJ Z2u Hu0M$bR:|Kej L4;$$dV2aOvX)>)Ԇ>EKE;v7|SKYC;kּ dKXsߋs8蔕ɁUzP7O^bQ}DT(RqpU]CQN;i7g% À*5tO`0Xe^7d/~~>Q.`6z҅Lp^wSgF@PɄ`0ܫJ%hjV Ez'&r^S9 |2}XlR0S]Ԅwq~#ysn UmOIN :b>p\fBu.{\y S@׆ذ7/,,YZI^DܤbyNx3 Ϩ\(GXdzNu>#ڗ4>9b 7>AJdU2(2$!lҹoȴ^Fghs=C_v|zj]; *vկb ^2izYpuz"v†|$O4p}$J*SuuqWF ;/\fn혲`+aVi.HIA!*n20YוzIeA9֧/1W<\q7*8=ndߜ"(i9U0z2a5Z9ьZpY 3>%Kzp?f!UԸ\ƥHP!@kbb=gq>V\Ym"U<ӆ Hc#3@V#d2:R ڭӌW]~C~r)xL;|˩0ϰ>P;y(.Z5,o} s=M䳴o41g @!"1 :b0Rm#֙ M@I(9@s)=HFX ҐB|vOfaƟRω 7-7}p_A:79d6otQ܇( E {謯j88}r @ n3 %#iHíH׶LKUɋTrjmdG0.@%qH6&7X\̃3])=@ʺ3gb@5uk Dg .J/F(0sM*/]l:!ohjAa[\\=!/jl%^2뱇2RWeaBGvZ$UN.WGRƌy./Eج4gpJu ̙x{=qPU }`1#ibVve+< \&1A!\mg<_Qa _fe㌁FY6@C&usc}(I:'{*,|Ĵ,(F>%OJsbpCud;dRUKyAC?zFdBQQh!oUx=0oڊx4^΢qi9%"Lka#`-]U|<9M;di8K|꒟ H Uz aF 2Vc_>~'_2 #Zm!K*/[F'g\0,{îˎ#M`'f,q;)[4b$Z Zxf7vka~t6~O8_ gau)4 AjU{Q-$ra?iGx!d\K3d^}:a]'{; //!5tƿjn,+=RVR4n0c+\Cz\ 14mꭸ)eЖ'8Gt9L4cdl?"1PrpM$#e҇7@ q +_ݸr}ȔxgIycjhLZ{‡.wE+Y;lZvZk/@+Wt&"¤.6"!*=ni,)-撨ޝ\whñdद~7UGݪ6X]?QKNjn̫XkGtNxw%5Bk,Nh-{waf Ē*-c,G"Q1MsKOSeVtЗU6UL5s&w4c7'`E(л;8:{EnP]s31>%N;4S@.x49{ ?IBͿ33/u{½I̥M!;iS]xsJYdʮFQEk^hxLLmo.V<0"< ?>3XԀ@7m`ꡃF?.C}U5',Q41j\83IFiDcPvhE-> Pt۷y(M'sJcE)ҙٞ#lMqu^ ՝ 1TVεHh^~ + [gS7ĭu$i  З3:$h;x.]^S+[L2x9Xck%gd|@uVZ- r̃PgX$2녡;v#9A nЄ]ꎞ,p~ `G'>D'vlT}V͐k_'d7P^t)ڥEr—zs&\vsǥ ?D]XJGj(j&5R'ayze:ۇTi%{=ݒ*Zlm5e $,GVѩK~*DtX!;~"6Q_C̶{:7AʂoB$W$;m1ߏfČ~CeZe ,\|K0Q_{muok/{9/5:1]HO&EI175$ߠS7)ֿo̔^!Yo 3Y [:9j*׆R ܶ-rzrl|U/4"J PNn4Edv FvBK2MzVo}-xٚ^ց&cL_jD y D P|]{bY(@]Iu`^ͧ޴'ZrںOr p=`!V1!&DH("0*0 ψP]< ؤF>ozz74)Ѕ7^~.y& D70{2s2V b"W\[Vt$~.tRУ%1Zܷc( c}X6~#4wc,=_uk}qk1 I g~[" fn\U5M_L ^f z;cm=ܒ}H~FAuB2?1, `a0dg6mbS{:3&S@ht1^Ҫe9wIUd:u:֝ë4V\ڡ(q"c(J]˂ fKN6vw9PxGpʹ;ѝ,=ʤ0V-%nx`H[ž-90*k{l^355/3}ʽ$ޛt rӕkI[^Il=Y&n>W`zAW5iYxqDH) [Y5\P7l=yFy:UΚKNV< M̳6B[L BT;q%Ñ5-F+"\,6WpC9ׁxяV(~JGjiae#;AJph!wuc<8p%m?ǼM]K~!ah%D:#{ (: s:+y dME !T`wӴK$$%3B% i7cސLn"%Fۿ`zqNLv#5M{_8e?0NA^P-*(Ybwْuoiu!Eyr',+ k.R4۫ӱVD{ifHNϾOA=l1>[n*} ~cܝ2Ŷ|gI!O$FU;ޜD\D -T|UQʫ33i롿tEjumV;o^M1Y@uȌhO; G\fV_.\wu˓tq}nӮʕ?٠1V<8}ac&o S{lΓHxgR@Qstd j'F4vY ΏzѪRMPq\j*34nH9P5a.pn~yS!d$w M6mfUkspbJ|jʛ!1>Z9NͣhKSOGb!K?+$LзoEFZj. u)ם0rUG,d/80Q t)8'뷢JB^od!RyC\ΓQ3kƬG+؅À,rc$\8o [!ŸؽRswƢE1&>.a_vV8%;zR>e' ~H`MhqwK_  )Nmү|!Z\Hܽ{@A7bBF"r8$Dȡo8fp7`=ixs;OE0-EdشLdg{+E&zSNr,^'aHXM88gBN'8ߣ8#?jC5 _c/ 2M^NB̮oQOJt_J8X3 ?] XL-RnZDV"Y Xq*K+Itan|uht bK'nBJ]yiIo }K74d^SQqX Iۯ>\h4] bBA}@0X{3ItGמ3/a7ݳBK1 ~\2?SH oT4s<1XVɚ7 V2klF`%+GXn7B]:eދJ7v\\?ʋA꜃U+ c74G kXILM\M4-!YTY8u&Z XCcH/LDj`=kfV]w;UHyIWÜ.A>Yx[T?Q29ʀUvKalzTGx! /ja51SCD0N8brh?h>ig|qWU,ݾ&"؆t&UڹIn:4Mp-Ƙr,fDtxwL5 ^\Y C]*KEuK'mUkHIoP4dP@V2,-h.x}ěXC^m/lܤk?ެXC*@mhk‹mvoUi=Ȍ,ez+zګHA)Mwc*߁ '% ױGVn {e RWڕ}Z" 0qj)׊OAaE|rBڤ,޿zjfieu{t (.j]،_xHCF<"3җ}b讯O 6c"0h_K.*wHϝi1$/掞=њO+^$zʘ߮P/ل<>Ti6_q^x ."3-sO蟘!,#nYc'g0$xFk?DQ ?TQHViޅj4^(oΘDI3m*pkHٶ ,{Pwz1UEy]lǽQkx.C F*iy#\-n|ڴ Cm`j5rb#oJ$mg_^?of.3~؋#D-9w]TeM&R|ťHobRt2 ΁uY |R=K)c? CP?EbQsh}dD;ՙ+,$w7 "+Jd#.usq{ο c~nHWwhh)WACX?+S9e(_֬ꗼ)fVEN8:R~QTx1C#+* ,oA@2Ne  /yeF}ǕyPQ\\v/奔 jhNgǢ݁v7gavFsALq x$ <7 (,f0 $XgqD+`Hbk}s1Z`ą^# 1gjL?uzu>΢B斱q۱h;|(˟YuȦpgDpMoh>*ҲU4j"e~oXg[ ǨQIh\EuJ?-:M ƸKtLӍC%ڋ0Fߤ͓PaO!y18m?w.*ݷXD=>\RߌLo[bz<_/as"s,16Y( (|CjmUǂnlR. J셚]okz5DihJ„ߊؽs.RSYp]$jBڧ!66֚p8e y _K7?(mO\q3AlaP)"Uڵ]m#dQ{Q%eW՝ܤDc*9_\: .'9MK;љwG,OunAC$+TAM&$tqI^-N{i=gȂEW xZwrya)J.J){wwK$RMq#?U1$uR.V&>K#ҽ;鉁QRx}(2aU6ԦEGDމ~O533" pR3![Kz{s%j_HWw:G \{r{[b'[ J7eZ޽Ey-4 `5@|.o9)ʵqS?܀bt<3QЛW.1Z o>)FR38 8Zit- u`,:,YbҨȵ;M *&s]JtT;SLLFjkp'ER(/sρbFv#|\Z^0JV8_ˍ-yu1 y "?\RS(X)܇#$O=3Nz>geZu+zrT?NQc"`zxy>iɂ͍60@+5 nd=B%rkdJ 8Ցbl <˴̭\[s| f~{:ti5ĴMe_BO>PNﴸ OBa`N<c |\+A/M~n7Epᰒj4[vJ8^3FW%J0 Щ?%DOs[. iYͅ7>4'ۿꛕjV83|15sጊ3oÎvA0IӪHq "Wݐ 4icIcZP_b77^[-Yj*>It)ĤZ ODy"Tyr'xnI=4Yhl0ԟIIg.v A߀f`Zk֍1^-kW _bν|Z$@~J}j,i\L;d6 ȗJ)f BT$AQJ;[$Ҝ#Ih#-S_^kޙ}-$LI|Q3dr]d\H.< $clU|?X6,#rgYB.('K8FS L SĔq,Wk1ͨi~BPBFŋ%UAb\tdʫW?<Ǣ U)30}Z0-,*7bEEppc ۞i5]va~z9|8$ vët(W2>)GɄ2 =1~&g 2M=(N/%B@ďX!p՛97j4Ķ>8b"+_OB]Z\h"-9f7lWȜ >d`$S,&Atk>ysobŦ3YZ'ʯ8ZFxo!]rJ bdaƟG+š+$lSok0AŁl / -]( 9ʯpya:½pZzYH,aG<,:skS<̀NnCʀ֎YxX,_\LIșRB|9 -x='K%#5QaԶ̛ >;†v?'~mCA$5Q{װw / XRO,PVfeYZ]hs h2ݚ#UvVs6Gtj3-~Gϼ a1Ӟld&/ezP LNC.'QU494w7쿵+{_->oH/z5rB] (WM}$¼ _ISfE'1iNRqZ4¦SzoTpQ9b|uޓ@5Q^/DQfBqGX_Q7Iՙsl`S, p@l RJHLI 䌎 c^pii}rQatT 6T;f1ڈ/iJ9ƘyB0RʂG.-<NEBx|q0FyMޕ?f~8^^6a[566j%&?lf+Lm<.œBʟmN|&oSu%f*lTT1$1ܦȬr{5c8%9A0D)篴].>"YvU&͆+b<\F0n#NS6)uV/W5,a5;&?νg(ݤ^A LZhq,ޱXpޭw{sdS̉D?M{IP_՜|:& I/mzlmWvƉJ 7(6 s%?0xmʃ1 *~:8Z_R|vqjSX&GV_çBKЅ@h7D8Ũupּ(D݃=! W[(I^WwÒ&XjBhPPs,otd;|=NF@e#0c|K`O"bcx6*߃THO8|EsX]pTvvpuĸեϸ| {plzׁDO˭Dfg&ˆ͝ UJx8#3)k0Ǥ0Dwevkok9zfO"]K:Hs>'D}TnA2Jρd %lF-nNz1X0tY#HD ]'׆wRq:{P[Lk|U"b&nT`2/g)n]W}|2&| @X' 4"ډ*Yܰ;Dnq3?oPsC-t('4!N9bAS$%P],Kُ!;+q.^!J5OyvknJ[(lkA] Sl8eD#E Wʜ }pgft yhi8Oenf"V1Y5G16Pu)@P𧴪L]5cm{g,:>Ags  X5z.`jR,t>nOk`qEALF^ 檣p->U"i 8+7gl7`WBq#d\n~fi,?Ϛj89E8+K؛p9Hpk=B~hL ee]jtʸ4pZ+Doit͊4u0?{bI`"ɃΚPꝧdvQw<;[rɵChiXi%L?FSI?RN;{P{C!(;k6XMy\@[U='kFhq =mV.5ޙSWF݃`9l(3 nQQ3i({Ӧ=ˢ'~>;9iϭ6A"Ii&tfJ5@L =5s=%QUect OW fhwb1h,sRX[ BJVe@ɰbE3V0Ko"?>=ai k6(?  Vyr?7% >*{#&?gL1|1ԙ'}t`2- 뤚if>u;♝m*#빽Ty"w PVN7vfĝ 9 GK;8B`2U%Ȕ뇛M gr/.p <󌾵tI bI!ƥkh,ӈiT vh/j/3]sqp*n)9炗+߅dlb{B~W#$s6z}neCx3 e0XWd&f5$W|X% d!v`q)- G;JC-H{3ZybDH=\ "z oxP-40dK? h4"!|KRm{=rDW\ۺ=a N)!&ڲD!\ K :9sMf XUYEK-5iieF͎n<@FI? 'c8 8k+ R;s@ "o_sOn0:¾DxκNrC7Pu1vVdD %vo9`,]& D㚨kW=7Uc(,3?oHܕ͘Qh0P"6 V~`j#~kn'vhЎgWv7@ л2(;ElCZ5EKW*, KJپ:I=R֧x}Rd~E z̰zS*CIKCnQI_UPKuhcP="P4%kqP[ޯ`W`P6uܗhF%AA.b =DNꯁpI "s/cfO =M!V6ZCm_bv_IL({`ؐ +t~*Nod79 \A\OqiH|u(˅Jy7kg8) NsWfH2ig"Khک»դ0x,IJ #E]Ez>U8Kti~G #A%mεx[@^UW}kB45iݞJ㟘!iaIfgaUr;Txl.э9`^)*FVΈ3-+!CqcU-gAD'Ʒe>r.\l:4[bF7L=ZE(/+#LEju\xZ#¹7n,Sފ @OCt#'f IԀ0LEqk˵D4ED NwF[_%x@/(7- DԵ4xQ> wk52F= Og23j2fz ȔW;IЎվCOq97`0vH-iV'Qw&M3 ϲ][oC 7C&mxr.`w?@ATbQB`PmgPќP.wA5 4%5L٩! 8ksqy B/pe Ќz7,4O*SP\5 N+Na&3CfJ=ePMMFQ:|!w8S C:Bi\Lф[AqXfp+JAmso`oNwi|$qTErw+rw2 we~kSSmԬjMFD,9BсF+$ 8%Ykc5q6*k<Qyt_b 1 q34M%]l?c,(%sLyÔOkBφΊG<*^ͽCL/c)t؊0~IN-P ?n /B5g:9P Rt]|.2Pׇɏ`9$hLl!ߤP$R% /DybGΆs]^dݤԥe-J!#>̦(`l踅N,rh&Q ơ6yfq5iW4ХV-x!}ɽ-Lkč>Y'斏5$3 <5fȖТ⩙?qwxOK]©ho-ɍ{˷^`<VATY~. ܵ>͵c9 l:1i(oj=!jIi* ׮|CH d#B1`;Bɮ *4DXAZ_0!$ b7Cad.yxWH7wx31ghhR x.n7Zï'Etr/~كɤ_8Ũog3؉<:'] 5M} F!66W&upyA8sxvH8rzeH|tw?ښg]"b!R㫤hēݍ!xvx̭ps=W Nĭ=4/mr3$4S-GΓ2c,2N5Sz.w6p:KSePR@e 0f鎰mx> kȊuKe%ZC 6 1.p}s6Fg.˪bpe[vbH:B/a(> @7[SH\Avk`Heux`}K^YK\ŤK[ IXj`t~nhlK;ᅭ]9j$A(byͲjL-)~(sd &@a؏o-2rgJ04/:mYKu88Em7>hihJyO^yq Q@WPؠoHGn3ݣ!U/F+oˠ%G)Edyk7M 'Ј<l f>VUny|?4l$2+{[܂a6L,/zuMK3w2e-IY=]*%8`koe Eyvs̖'#$xx!Z?guZf4n bxH׍ /zL`R ƶi#\⿩xV<. wNRƫ. Yp jF/ @!yV[t۵5EĮ4qײ^SbVhw ke,Ӵ&a@|.nx.9A5V7@T*@9 jo_+>C3>If1_hM-8]@b?6'qqDD'q5$S1q ==Wº)priT3LU0Iˀ4j>(+?@=\/I Um|Gl03,(CA)Oڭ R` \ދ&A'N\i m^@rظn ;2N탂ן|pߒ;VYi qGd-Z=]_=<1Di\+Cad  ۆd(}Yi*p*һ;ml.W##T,f"=cOG )9j xa`œ>/mzHFsg~(@u%;k$%Ƥס}9q4$=UX4,C%>*/jqC"ux!?tekaȠ!OKj X̎^@Zk5c3B^.ɍY@po;$ܯ_bƼ _8ܥv]=Sͳ]4-JU&g ,O`R^(d9dG/6vxA0HK+ԫn w@6ۅ9w1pOzEb;Sem2D♋ܾcP{/eͻ']8Xա#AC7Jx6#zdr71ozԨʼn(/O4;^|D留.0ڜQ"H3Ʈyga)oqh"(<0{(y>C@AVڪhf-n~'SY͟U3|!l^zW0,LPF%՟ְ"2U4M>RPTn<a)~[xɖRނ?: u_G/ٸ)ᐓHy@Y֌[L !{ŝ c(7W!FŚ|?mM ]nD{6c@5lI.YC߿Dlt]͔*߼san"9J\o\/y鳵#YrmݶHvi#xvZ%uw a@mMǏNjY$8͜¥CՄR2P i}ENs`Nr&aL%9 ł%Nzt3Qca!n[=-$叔eVPE֤ČNI-5HgRJB.$itQzqoMX<:;cB: <$0c(Y8؇7HX Neu@}z^ 7XFٲ(`W@VYe;ՙO#RGyڞMAF J3X_M@Tvfg4G;U-܍&Y&KIQ?J&SgԁD'MZz}mNzzMtؠsc I{kk AéфNO& ~un]1,Rv h t[O_|K\(G[33I q; Xֱ;ň:p%.xd䮟ݴ<,6TYNW04dJr^/ݒ*Q?U0\xm@̲p=2 ·=b^8B*v^f+i{}XYX'g􍳋ty Ӷ[_<'XH1FPG 8j'zP>ɕ)W?SzX[/:R} T!>jJERE;)<{P9_3MY/Aa7 ;^g~4!8.ǠoJÄ`mI7I/ rq!q0M5*g*PGws7IӪB4 _-[B}Dtd[p^ OP|ԥY+mɎ~{#ў&LJ]3,Pw`eT$1GmuΑ`IwgfakHNk'aetj FEYH-kd_Lj|! KBĕJ+7Dh#tE2BekF]#Cx:=s jэ5ݤ*,[W<ۙ`4PW#qO9 (wub9x$(GdžަxV`+0Ë%YwL"\ښ뚫^d%8Yu;QQ!}m#Uͅ,E[+A~#,~YsC7,+Ӭ(zv,)P?v%"6ב9 WyAL(W==֕^S@}1&*[2X=}aQ d/ETn ~BqL^Qei@ʰxB_ u_G}8-9 7tDqKU -=opT NBٜd=ހ? 4ި P#'wF?K6w4S'أ .VX?e&y "ՍtVfIwg*,`6ɣQӋRokXn5 wЛ$W"sAZ,0̽16G6c}>u2~ɮZJ+|71@EC4d 2T2Ltwsc Ȥ{ Sjlq)"9+W8?qگްNj8X8QE`rk/k?XCKi^PdH15/iSB:d[?h8Fc Y0=Gᔊ/=#þ'?> Z7 ڗ^xft\y6u5^~?*م _ȁ\L3!GuMgkD3T6"os&9#tݸ&h,p^oJ[P+%Y`)WHHdz_ytd EF\=<-Eb\3֌=Bw@B%GG_S9+[K| ("e.Wl+ >0} q=3xCix/cG{Gԃoz`hbqmpƥfKh_Ѽ"7}=4lB?/`"vBKm'ӯ>"l(fuX)b->IƵ|(;>@nӈ((>'fhTcB8t.:h!ԙ}pd#]ygu>s)6ףIfq'rs)(HuCF5C4t~ڸOG]nWOgnS2(ute^ c|N_ݭ c20nj8NLVTɀhǼNF!p: jБf ] cN0j^ (;% eW9W]*i {zZ{fjK汳D*M-Jyf,͡X׺\N6Vkk!']R $ilZ{  JBQAuW@[nǣJȆߺ*Ї10llt+ : +GЉsI1Vof[ Ԭ?Eզ#Z?x*g[mW9[]GӂF4@iyla-D?Me-r3 KIa}hCe c9R9dt/CTK y|찧hZ/ɍ\eP[q"mgeXz)e\1`u_3L+Z?#ˣ@!ݒ!lN߯֡x' fbMlA7i],M/FOæ縟8k}}ygitql] uAb+?KO;}8QӸmb b2\.h/wbzb,7tbwCX3h/k%f ϑlsat,x"Blerh@3ӒBm}DVW_vQ̙6nTn+r?q2, } ^%cj;}旰ߘ!6/ᏕmzIh2BS݇82F[dHv~?ē^dio, >W1* ,/0ۊ=Lic:r& RRfy c̓cUh+ uĈ^1}<l"@,Q5ٕϠAlWNn2TL{䷮w+Iei"/V@S+҇~]`vO=pa&ry2v⟴[)ej4U*9i1Y-.)v:W{p=s,}Jpu|F'p?D;ҽ?U %RTNJ OЍ\ҀdyR,_b2.1yf)CwJTL .R$@a\9Ʊ>PlU94FGS%S;PKsITMdf3qOVG1 8zw' x*eWp>(\AH6T*2KE.llFGv"@w^7+;vюzQbױ!FC"εc9߭h PAg“K~wEQi'^0I4vCG0qy]>1ޓApdK>U]i".u9l -$'̝-EcfN~^A7yf^ put jFк Q}i1HaF%eiA]vKDQmv('@ܱjss{햹T6 Bjq7;%dWZ2+pk+醩݁Κ#PfP$mWiNzZSg /݆h3zr25 ` nGe]?}k$IQ0FL9jNЃFs®Dz g'1oPZ1Vׯ~\u!BMp5M(| Ӭ+YaS @H-ߗPUX;jkW:(uk35L Wtswx𴓩?]8~1SN /&e|Ǯ4PdTamG,AED/?&Q {iGK #!'j4i_a?LT8TjLXmCF"G>*%?*`T VP'{>#=*pZ@x1R_ғ^@Jb< /Tۿyɳ\o!9A.no2ߍ_(r*/HG؞n@㦒 = V}3w؊z2,T؇tYNpb׊QlB>MC-wA)?Y ~eΫ$B7yJ ?urZ`<&(t&3Z4jte!pF4Kx% G񍂎zPhCdHB{5Cʩ ۩>V ),:>%3ŏݑȪ 7df :692.竐K:X~JO.ٮs"4N"/y^z%zs\>Jj^oQY؇ohʨD@ 8<+rҚͺU k"r}O(Zwg-V 8%}`.P5ĊH_^ (ՙ:PaI널%^'E| FNI_䊧$ Z n =WܻIsGݵU5HQbFӎurЌ8<2TeicXDOl{e<}f{DXA7ک]q|.hU)]W4gcg X$X?(Vľש0_ (UrPj"0n鉮vq9"" J&4 ܄OY _}f7߬uidd1 FxAm(1!,NecJ6M~ꀲti i"y?|?ҷ aD//[#qI$G<2 c'\K3{˨# 3NT4?3I򁯦80Owg}bw\5]L{|c=VF3@nHEzT-?DX&X#s[*Z6<֡~b ~L Fϐr+Hڳ]'Ia";|Ƒ\MgQ%sOiԫP[D)̠gDN}fOu{΅c'&Ddtv<λ+@kPZsCiCHh3_Y̵r=m$yz64!b!ˇVݞqpV$FTO =G̓ {CT\My~F"Ώq0>9^i+2R@yLa(l5 _?0.ur GI9?oIBZeb=z;3 v 6!NďR 0S雙:~1?mݕHnDsqArBk:7L򏐕1Bm4ǃϕNeqAӭ*А A'Zg!h2Ԉ-3*{r |3 ^)>sҲriHf (6ᴜCBm4NJG"WF("Efy[|n;2M2s߸vz+XDtǔ +ѝK>0~M8G@s=pe1(%UD+CY Z5ClO~s&Jrk'q_G6u֩lfnb۟ IZ(I Ւ϶x0ٔ#S5&zo={o_hh\"=[ғ"e'";q(:OUAQ=RUPɺʦ]“c,77`t՚㙈RGhtϙb-rDwe@RGDr43ߨ[GmwV(;cO_4Rz2 7$z*JLoM*wWCzQi֞w'"ь xi TGkFǥKWKX354-t(tBoQcn_pZu_w֬"lXy}:4іN]b bx@h/ t8?Ρ0c|T4jيKdSRVDsIަ.&_u7F3&C8:Ս59 p b8F7;:=(GyCjR^]}IįX)sdHpclB˃ԈYq' 蜊 .P_Yl xAt*=AX|GqTNjT/V)2/>%a.VS4[ w9Vw{-,"҂MBg=Zyr"Th"l6tٸ^ @W4P-Yƶ1REzoqGdIp&cb<"%Yb"p/.`#ȊqO,a`3% s XpGA^Vl'Y$Ry ͇\ѴBlU{ t!Y! Ox6 atL#[d Ĵќ=n=lQ@FVf Q2nxِ$3W&il>/ ޑ&#gF} |zT\~Q@E'\{P'Iי ,1Lh6 A-\ %t]4. i 7H9C=0SؾQ*HH+s=C|nZ``@~%q{(Ś7艈 X8KeBf~7W8dq{Ġ5C\Qvߦ2;Y>q]1<3|M1%U/XTp%|UCy8L]he6Iy& ٰixaz30I"8EW[?T0{{~,s2Tm4muˣ#˱R_V̵wee(|]ܚЛ 33A*x8j6YF-l-VCH{ccܝ߀:Y"Ɓ=!+y r(ɰliZ1ҏ$a{ky.z_79UDJ|ݏ| ^֡l#ѻŠ .<\) ^k|B?+t3 q]I~yRx:Cp R Ym?1kmU <5r8c{J^(ɖЦ4B3؅͗]ZP/5RR7hw%FS~~ǯ٥* /}S  R?*J3iFeܜ7r_!;)CG,Af-Tdվ[H -nkU~uIϏp$pG 㜯K 7^]J#t"!ݴ_\/"|pZ8 o`Ex‡^q]C =~ K40+E5|fLm{(y(]Θ1 v^Ad-0b>C <-wAm 鞎~!W(}h; ,1G޼Kԍ'bÏ2^h(2x-SVxA@BS0`ie؏&CPWۮI[/:xvխ/ܓ=6pts'۵_CBm3[} 7ꀟeU3C~b%;Do.E|feNL3)9ϭiE*%n1v]?5R-\]4ǾlCܾ ۼ$0IXsH:vZG@UT>]S37W*`3OgXSBy5V]Z醌wjS 8vV?pmLePP/Im75grϒD\yaKZ[_0h$ꭨEL\+dƤBib_QVk %q`(U#_+jB)_Zz۟O 2I^.x[g x~ P63RrN_I ,V?ա4*456B-CtDbÀ: e*xۼ/;>,PJDIM50ݠ=ɧ$MШk\yb&N_&Q2yyaHGБHKP˻#%86*73=WdFa'P6'y 4$o#haz?ђG.*.7V >n%!K[9 s#*PkV@o8af3Q4\]5BxUVpB n2='Qϕ/*_~;N]z=(cB7EG*Lš5 )覻-+=^aI($1h( A~L3P7H4۲y&ȋv=kFnY=I'A&(U7bX DOa Pxov_fX˅Wԏd'g¿yLU#^"uݟpBآ==ԜۦlYxK AMܥY؜߇|EK݈|%O+9cż&T*߯#('*Ȗsn 癄r66t,i?^0qVq`.H76 /?D9>4dӰNar Y%QZ)ĶP|^*  S>jB=dHkXt8~S~ dw51@>znS 0G +m*<8)-o&D`dkh CG?au^L$eY* ET$¿ __gj8ܞL̶U}Uja#kbkRF$-df4DZ!Ҥ0āLַxo cqF,&:} !_sdu.Mm aICa#RĮ HoSQ$b *K<'HRs5rm 8gDL w ޼7YV_ה',YK-ByPD#ۡ4;JpĮ&hcLu}oI#k 2M˥ ;qd껔@SxhZ(=TskaCB ზp Ĥa@"_v9T^$!Qzor: 6*Ex 4lS_lMN0T{YO>5|f/vk]M=( 좾Zs8gA)yY(aqx҃yT ՂjBQ[` @-AvK_ar X#zi}լ_AKd>r!-QB_v}4B^z}6)QcԌLzq(ԺMU݁SGN7ş3Ǭ˶A蓱˿Z$2VyQ[ߋ-e\l.h^Z ߈rLaMm~n=ߦeuoߚ#᱉49,n.7@^+;F)W]a>wrͳWI toƴ.-b1 Tj֖Д^Xj@VW&>JmTBYd]u5Z*K@Pc@H:8W_X(=-͋t:-+3|z-G?qQZrG8*յ!ٳXsኒV#)&^2Fly\>#ܽFą=pТ |FHYʼn°u_ 1KJpv9$ڟVr[-n bVQ8{54 $3B{.Y:)bUpC[z>0[}}554]ϡ?B\)p' B4l!kk8z>6 F 奈l R8շm3Ϫ8 NN7ÝdY&mR ZPژK.0-^FԊD_ И%m&6%pwǓ߅T V{N?LAMKzub2Ih<4x@c%waSt84# wѡɴX#ZkP7sK ύ'7utmKYeL"Ԙ$Xܿɠ'H 3${ӳOZqG.,~TKל5 #y(zLJ9t47~;Id\LT-,.,lCp_/[шb/A-lbPЁ̋ sN\M.x8"HYp)Uɸa,D2E@anr9?lu5R윕-g/9k10ʊ:Q%(~@_k= /X8<d-qC2RbhKQ`YG i"蔼4vrB <g}Pj}g8̗w@.>MŪiE6 uBƕ 0VQksF'QWQ y,*BΧұN[-󀾭ka8q]4gLy:'j}wv 7{Ç ˬ3GFRx`_|z$~؝En׸Cw5.'rL2A n.ido6 _xA2ETM49][c2L&_ޤ W:w Bs+[ 6ȭRtrY$bz Z i|vZ2Xªh۟|bnֳc1ݓKt`:=HY!09mƧ - +wYD!\@c7LpG^C;[<<[XwlErX: tpc8'/FGtX!nI⊩n2,y] mAÇSZSCsd`f@Ȇ]sKwERb%tߠ4uًV(WQ~-} 2JY.i^ )IUf'P3oK?I|HXogL"doomll{bÞ>wM Yrä2m42Q~`nSL7i3dna#ZtzÞܘI 3NJk&ܗxќ;O`Q*#HF~b@0&( d>ͪh` q` LP{+Ivn$#FGDO[Ajn3ya9&d"xɡ!ء)q#CUbЮ}@l[l>ƦU"vo0O<^$Zپ3yHdzK{=ᇚaz`k eL Cȋ :/#} ֳPkT nPigouu&?FEC/r 4<ȷ )P@qF<~y|&K!~(qgt~v2]g&m7|#囩#[ FIɭu5x`}!*^ æI 6GOm$Hy)jۑ#]"681&* :DEGa/oLaf\E@EQm}ۦN?Y;ֵtvnV)_U^䓏ϑƞE+`5bN:څEWyt H{zɶ"(;Ml:Q>B̹ZӈН)-oH:v`̍}v꫅wW^l'a@tF8_ BB1q ̼nrЪLYG/.Cfr:TtY" 3CtB ҢGR% #O&#3vBD?X~9:LFm%R Jǹ-J\-!FHfje r<~x[# ȼ,0d5nʹLֹp۬۠bq͐v@!_dć^ޘmʩr~;´cX)>lnDy%bp m6GPz^xLt %p Ycxsj.0J[u|-')PՄםy/Ж˹+ 0H@]CյR#!:ңnۢ~FGpRRKвeRg+ 4Is͏/|}"`GJaݗHzg J99sA¹:VM`{F_/+q +wd&^: |Cp ='P< ?uYUs"qȱFV:ĶXxԊ9xdT2޺FFvX-\ci\sfF·q!J%Їec!=)ZB~k M/$9O;M 7x \B݁tG Z_ǣ"0 6O1Ƕ2<?(Vo"!˽K9 >>O;Kk;@}j>s)q}TBI5C.UMAv˱I*Y׽nzyru!](;d NT b,\$DzYkgcZczAlCYl<.<~pۣ;OSNcc$yj]\n*PMp1^(ﭢ!*@H/Xx4ߋop3p,Q^; 8y##L߈dENy*)ҁŚj(˜~< QO[#3xJK`hJh(LqZdd!ʽ$da;}ersӖ_9W>3 2="x$b];6Zϊ깗l׊- p[Gg (*[cv$|jqc(Bdbe4b/vbz &e.`JHZ,_HSD WelW.Ep!d_IV˱*P3\GiSIj:D"_T(@~,D9tc#|$ `. "̍4b3UDoDZbu 2JMf;-ڿ{/w RV_ ܏ ){@Uu\3w5Go̮6)qe1޾Uj):{RchB~.Ctʖ\aCVP*uުs6"'؃IaPxyqzΓdt-‰X?GK~rg+o.⑂LKc0~ѹQ&=cYsp9! ]{_^!ݒ?ҐYQ .(O0|,4=zEQ\J P7{BYW@vS4=> R;ت+΀D.+Xúy#XhY׍IkTJ UAlXvWA[PU-N8QmUQX?;E7o | 4crMrH{|E+>*nx _s<T\"i7V!9MjNH~!j_;Ƅ@I$ Oi"PpӣdWiK\[48VQ9 :9 Ow,|m7|v@^}ݩ3m.gZ&`?a*bČhM8 {v()0@=\Z:4qc|Xf0o5o)=|#:ĄwڙZk8 ]p%n:!š'eefc 5YT>ilz.ZWU!y8:[r%Uqtv%xcd́IT"|qSq&o d$+zL~"I2ޢ oMc|̚5_r\aPzq?iw\vKRv8@ /ZCh.34 7m&{j{\-2ɀA##PEm-AHέV}P$eD>u#p+8-G=g E2tkdP6p#^_ZEۗ/H8y$VS? m y0 eI!* 츯Z`o ~*N-2;V)&/qP"v:o^*eH&z!_N_T~[ƬR@ 6XHwM].3n\,KGFSHOh]IM.  Q%:|$,PJ9+0;E}Wnj`~(@^&Oa$fl-}wȑ'5oEcQqVYUW8-ڲI}yjwok0<^R] s2},0yܻnRxRwr;HՈ }{񠤱 +Nj=m1`Ri(6O8d 7AF`vE R:km[3~9XK+_jlq+]{mT9sև"PK ݜÈ*[_X 䌐Dl ֑c6~ BZXgU[T:gReV,͸\'.F.]cp+C&k/7aG[&J; E(|,BYDL;m"9M$޴DwQ؜ i1ȸ2/a%U|&)[~BpRw˅;*N hn*nb/ph>xCfg5oy%M]W}^tfThZ Hhq{. Sy=V\/kqMrE-"'WzMWgaְ`B-.!=_YHGu t eֲW>jAO"k&uHCSe$|I}H !!S{ܻe䨻&6\W w'Rɷg]1>\ n"sDee.}S J6M}UM9<[G=Mf ɭ^lLbynk2QS󄲉>f\lU}GrqffCiڜc)5oˇ 7:\\E(pF2>!@xW^͡/cX g 8MGe|+?/XBI=:eH@|_F@/5Ff57sA7 b'C&fJ3nu#o2c4Pk/'7|fZLJCPل9^2wlU"33hR ez<0V(S ͺxjU1]=@'º{G^vy7b Ɛgm6rUʑ3ۈL񝣻D̏q3NMOCq($6ؤ^+P8ة3E`K j§[1?g~kj_`y)|9HtlI"E*OdaK'@~qG3~l8PTKzgJs^v ,P4Av"rm8ĜƬWǐ.K;*s4fsLkI~*"ŧwW5/4x跭ZVb#GKJ !#tr:5eӨGl0sJ|-.?3wO[~L#FJ@@} /h1Q$K]PyAdٙ03ِ\XqވB|_SF|GVfaJ ,s ǯm]đ>ٺd :u iֹ̔ؽģGi(8@Il/mU0-ECtkDLM}&VʇQ@k^v( @.")_͆٬ѹtAr +>+Ư¼qf٧] t׽2Btc0jы [\fKٷMgN~oGN6F%`/.T9MY-t3||K'뀿["(iOڿf*/fU#WW*TBy-sϩSmY#1ӷOsz8~*Ë4#ܩ<:4Ks2Gvo8Bf2јnMڂ&|E̙S҅}]ڻjM"gqjw`7Kc✃k1=AH8P:g_ipH:|?PjC7 E`DLu)F-oə*YB O \q8$atkŃVHsHh=rk|o_~l[͖`.r`:ѷ,PQE+oG9/b"g(UcF I]-#HTstW#uK) +e%k j]*]sGyf*[3{N2Bj #(0XV P@E4 1srH^0J{ϑSK: ?!y4,Wۖ0؉|$;sen`ޭsfՏ u;5ρ_ڣ@Wa*q^Y&^V72#ض3P%0v2l+?|m 8y1OU5?MeH8vP?e\ B m8Q3a^[ቡ}:.Db @ ҹk(WٱTπh;i2+t7 YAh `%>q_pK\< 6:lz)*UíT3̠=>c0ilݱRe +xyCPB/awXX F3}0E0LWDШхaW7xox [}| ̱x8L_^x>$EAM@ ?IÔªyW,L*׀Ծ7Vd0J^JJGVfs+~{/NFi0_N$n؁S{L?sbdvH(x=)*\8ar(Аy*sTLeM@fm_jN&J@8N Ephv2qo13Eq+cvP:≥)<ٮ A5Hg|i͗x@[I|}-Hj_^#=+ظ8czZٓ16Dj e|vȍl44ʻ_ +ebxgSJs٥XqMvD^ =>8K$7qo,1SXd6w 鄹(P#{(3BŸ^)+>O~ǂV9Gv% ?׎EQiM{l]bߑ ZhuMޕMʅ4KվZ5"o8ljGrJ8A 7"5={Q%Xʌ31<$ d v_#<3<ܑΚ̨>/rULrI\Ǒf"d O8 irӛ\/USO.[bKo@Զ&4&&H[h:;xs-sky',ӡ&:B} D0uL6{nED=1M%em$[x::0вk?-s @t:O]mQQr0U8dZC'%(؟Fg!TZ65Q"zd 9Hg֪"`ai쿍aWž&W뼴fdRJH~JBWw/ #/or,1(,sYrpgUt]kۻ߿LaTa_UI,ڏ<Џ\|sZ{iReg:zxk6`TN):D/HĶJQ1"6!C7c i`ك1z#Q\oRI/s)#mK|A$bUfة`{ #1XoShcsf#P̄12+N7x$MktJ?2[7o_>ցS>%ETIh2LeM2Aמ@|A Yf/VtFHP^L(bkxAcd*\;?T{d'c.%)VËfan{WE+Jmh{eU'$zip]:=3pX_tRŤ^ig}$V^;;pyR\GY#( 3pp^xqQ[?-|xjɏx2l6: jdSk~6Kq,tJlAJ!o|g r'?DZ?. ,`پ@e{ٜI*c݄zMܫJ򑖌X,㐅.ꨀCyjoar{4E{xpcݐ:߀d&jaUL \"Pafm 7KH|D$R*M57:S ^4YJ: Egd0tE9A9'B^ꌻ"/I@!,-b!Yr3@μ&aH(c/_;s ɰ#} :%úr[Rq'&49-'W͇68S?EWPQ܋c3 &7{*g;7740v8jEL [‰*췬% szWh_Je V*FI6}mVv lM1t7&^'7^1gߣ5hFg .:y-G4blO'%Km}qL@lѧAT2yvԗ)aZHTҼ!JPLch9l- aрk׃ZXmN4&xN3Bㄍ!ˮ? b/K7PVWI{>+ʕ6cE$3 "Pm MOM+lugnx*,FDZ^u0I^8O./B-۲7`$m [p?En Q 1govzJGaqh?Wޙ_'R"Xzjڳ۴1e30B#jⶕ|\`TQ k},mȂkt5P1!鯃뾗se9%7O1u5Eu SN8BdJl"0(lKVR |4\[!S[PJRiwV7=0ҕ)0+7&5\$C^Q '2ttl5&Cq8C8/TfC^ҎijXnZ[0bUPGwё@Ly=W$RD1:T@HLӨχ0yF~k27Ч'.*ժ$f~'nmv%LuHX%e !Oܠ[?zn>BjONwNXiF0+u,$3IvD  .&uA1s8?G,?UK/] ;K* 寮sT&X,A*t=3ͿɓG>c-_x@}UNDM!c dCueU sl1JXw+ta/͵g'~1u*/STx>uUC;$+;#1VjM{nDžjZz=v͛_.rEΆEZɡh{-gKO=XJֿJ왙[,2E\VD?;w%|n]R}g׬l٧iȌqչhڲDUE:6_'q*2,A{.X:WgYݯX#[‹g(m<3CbJ:Jj/|(dcU\C&yCtLppm@u\a5a㏛Xw@ս}635[?TV%*y\OV%  |k2lj,g&p( sb39s3ސJD]#WËSbʤճR4:*̖9Y{mA ~o5v>202P`.tT љE-w4%7iVCa`q._!,uP;CVB!zk7)qk4#kIlRNߍaN5Cqr2G)1Iǃ=C@N=* PCT/QvaP 5{rjQ+f>@-#XVB,w 3U 'L?$*B%}POpQ8* wR՘O yƴMPj -[1]*AV<гdtңT)45YʛP++M8lp 8ۤ{MQOKbJzngeWied9*?CZUJjK)t۝,x:6g}mdxD_>tPh\O<+DbNd9/HD hB9Ѣ n x5/#^I}4 :™4#^]ؓhIVR;uȋwC8'}nAgc(#';PO+H-hiF:ŔTe e/}-z]O 5ySyF 3Ih[ Y2K0D<*WʅxlZ,əW@V/|u/"[jF8qg~$^oլBN"maD,⩒1t ̃J>zUaA4~KhADݡ߷'Bß)yN[KլXs3V.h=coe,Vc~,Z@] 뵢ݖIKބ;Ej˶/1( ' Ter\(HF+%8|&GPpАB6Dw@Ďw¤ghO†VL@umۂF1> pqfN9嬇z|O#e#=^bvY Ì&Ka[76"FՄHt3Wj".@c~uuk?0{Cxb^j{s0p.bn.Hzy*B3T'Jl \H˳2W VLYw뀨J$G[ pQHD?n1J?dMΚޥjY=ړ<6~E kgE bel;W ҁ{,|hDέ@vEHy ި>f֑!1C (X.vӻAz>}ƙ ZO M]WK2}%-9;T6Ǚ)*Lyɧ3u~hɡ~ qO;/&x:kZA(ƦO4A_ ̶J20 9a:|F2SlHK5׃ؽ64vρrXӸSe x@2JNPZ~RhoA?}RHWx.)+{Ҏ`%&M67땒n{ k/sa? a`p;Ԟᙁe/X^.ױ#&%GQG uk3G n0ָZ\ FdJ,kByf*}m%MR~g0@k\/t7o< ؼ6ŷ<0MhA-@R h7mw{l唪3qqKjy<)We i(1ջxIʆ#OA@Tmf-NUþ1jS:VΣU?o&!CnS;gu'BIf>&dS\7 em҆PͅsjMg.Ё M.O(;ٵ&ݪ\.jWJZK0 {_A9p2ÉA1F?O#({N(9ʏB5" dWLl?^ʺ 7mN=1HQt)U߂V ?B+ߎ qQ,@yTMڹԮߋP‚wbX]Dv>7@(3KY-afEtqo#CJHي:PWkـ ǣqm:We<>bPi5J ]()jN=R)#{&S1sTmN\x|R~oA sjp*SU;Be.x 5Hڠ|{`MCh)?:OƼclC0,qhg0<|,Qr!L\೛z<(e!FpQqMcT7=+ҹӍG>g= R4girR>g=6͖yD֑,Q&8-=zCtE8i)J>?K# Xr=,O9$˫nA#ӑ) _XXQ_DG!wrs}-k`e/F~5m[T W+Rin%@4UL+# :`R?X0y[RYiVc6֬1&%Vfa,@US$EAw % Oj׬k% [>P5)QrK#(!ͧX /}~܃oْ0s?mLSw/;/I : dyX93d! 6fF?$bL o-(@ǿV S = Nלk{iSy'ִ_4 b!zXu( ^ cGLU nTyf&4sO)fqnҀBxxQ=DM{z~?Wکa1yQvF$Fe`\6'@\#?Su(|5~ 9֤ccE. #º5.`a,BRT7I)a?8p3EJL FHmQ^u)OTkrFNUk';]1JN0` L}v!+a胗|8I't#ӫ 0Sn2N(FN-'K?x5sHpGf%$qM\9fƍЄ{k l݆(< <00 J:,Qt{e ٮ&6 4&rW L& 8C Pպ٪]YmŭTy2/(.$$2.r]TCת)Il -,w{egط$x6 & ^/~W .>ix?<|s_|Ezzˀ@áRrB=^DxܐRXb0aTDnô˧K*Ĝܞ-|/4_E9AafI×72i1d.x9S/9(K<%<*A{Pٗ&p^uS$>ny>Dm+u78=L*ewhdJBM wX/*gXK yޞdc]ƔF?Q+ȠoACA-SIGexo r ]qp7gb-FTG'LiFQcXs6pSX.n¨ }30gMANTFc=K0,>jٯwŻ QQ WWܻP!~GaSX%;^x%3I_cݒ oxxiRTnw ȮwU~ى1Ǽ 6V)Er<557Z2y^g:kA^GRLĩudd =T8Ͷ+9K᤻q6[Ԙr'\g ,$Yt;Z%s|֮N9hŶ,OA{P 5aﶻ'0J@aFaW"LT.~ZIBd+ˌC k|vՎ\[IX۫;j,P Z'CI! rl/@Awq~CqT^ y6>?n_8昄2XT#cmSI3T΀0A%j`(7ğt^Ս: K(k *Ŗf*N+e8g`.G-jšÏP{Nd>|mi#O#+yk-Bn\$+M+=,2Qն <2 n~ mi(ݍ0Ӥ MְGj8KP2ٚ:շLje_q!c j1Z$jsb*D;j{rhe4o &#S\ Xv7lS ^+5fUp4o&R-ήIKj\xl(@=m=b àrR<`[^SM$=]ܹPTHs.];V)A?z{uaD иJOÙV'h^7W @QY:M'xnU=4 2\3A"E`P}UE55Ƅ&0־OMW{ LM\w~㤕 ouE `aQ }/Wtb?BHg"&evQS=|UQҿ1h-˷%'7Km0FOGuix7)skh ~qf"p*yh(H̑:-hd5XA!{m!ؓB8UuXuCbk\M]KFЪ͏PG{vM-?%^u>G>G3F mC~`$] ul],rbb|7#JFUSa\cL!~ ܳ5 [QnE;qBHE!:%eэ ,wE݇z2SΝDӁ7نK? P-E r?.IƎXB>3 wJ_K3ZCۙ?˺|UKM];ۄZr}A^D0ϊ$\g;()Hϳǿ4HeUCK:(CЧ:,T |P<-NI*{B> p >~{b7.gx8j1-6xo~}PTѪ"{gndKL1ZO潭'O_V@Hmhx(̥vD; Α/]oz9UkIZ ޼ۻ#sӠf}LbG"(ƨje<9/J/٭j| }| !ZC1'(Ye<|wB=&fTGY%{l$ ԩć,Gp0f̸J ~p,JoaXti^``h RUh_S')eU^VO//쿧H*7([v+%= }!8f,|:Xȝ[SRݚV`C5NuNw>^$E H!sr]FY2悥.a+Eמݓ[CZWOk<{%{Z=ƶ9.i*XĠ}R@Mjr+T۞3r3*-<7x8-?j&))EZ> ۨV KkL,Zu}I^Fg+")`e$ҹk%JTʘ}rJ)et9Q3_8w::hިBP#~Lv.8m\nfҲyB Ii8D p%\.Cvr/θnB^?(II3@fϭ ,Nd0S UjXy3˴ǝ; fᇍ E:%s;؟B`d -f8VP:ݥ7+Vlr@vq[5ps߯ 2ErJKS)zC|=LU +LhT9G>+  cFH%S# p~ ZY5~IW]#ԖsZ!I~⸕Lt ^<8WBc7t|J=9xhPw?c$` unwRôIҿpL75"LCpSN{m/s^&/~yy;,r0PyPA:z`z@Jmq8-p ؖ)Fw @CEPz}607)_ d,?Cw 㪍uL(Jka&6ꂱMm`W}ujZ&rz쩐uC`|׉A/Cve\6Tظ$/;˛XH+}A$)WTQZw"NߠSͤippZ#8fstMUpzux:jx}ăe͉n+ulܒ9v[(xwHBP((#e;HGftI\ø*eĨ.DaBRhw*XT~d#Fυgy6`jMK8b]uSXN\WQ82?P9(xL 6M Tk:c$Hy&Rjs.)!kh@3ae[^%ֹA7W˟u"Vǿ*^̗zsp!Lq!# ݳ>:#g>V?ʊm5=~)bϕ7Moy>2bX)Rtcwg~Gq'/~&U {tf* iwbeBǘ;3 gN<)A=Yn{EF)D W0 +#kKl '*45REK]UCZm%U3 ZQdP>=N1FF4R^a27 ;YkG-?^z bۖq-~Si펭lS1 hjUb|[yFG1M+pMJx&7G˦lͪUGV8p*\7g6~<ҷjjmٛAY RaOL*Sv=|˹vpHHX̂.0sm2#g h;|»`}غXK6\ 麤ָTUC Kbbs̩8dJtRG+t~F{#=Qv˭̌mD0ZmX^V$t0^CM -5z֥N{ ;Ƭlſ+K/8 U7`J. ]L4oy j- K5#ax qG%KgjyRMݢwRŒHI-:Nknы/m?E 5ƌȁ $Iv'$ }V|Ajꖘȹ\Uذ61cn蘪%_ggpvg))ar`a GGRΠ;1TQL+p_N'e g FAMHG"@v!Z?˜DF+bUT)d <Ÿܴ.')@ Ȃ+<$]w oe 3oDa/0\B#"by7yVcǭުi82ye.Lt6فV*qw'-r%}9➰! L)rc.CΨ2쯳ı>H SL ţtUE>축A4G̀8KKdZ=!ػVO!odUYNY (B{7vḁ~EWKp*X:h݋1a 3ST>xLR&B1֯3Pꀄ+ '{1xټgwzZpӲq;Fk<^Ck jmfk@j~y{N}mݵTT<y#҅Ձkߎޙn'KU>s??^DX2 ’su\Ϝd`?5<C\Vj=]4ܽ4UnĀF_ @ |L> ,AZ#&0.n,/=1W",2ɇ`S RN6B4`:P:O3?T>{6!> $ )2V&YĜs~⤮9|4-I ^{$@;$U%3jVP,;ҫ|~::8]q SM'I`PxG,K :'s# "jI*P)2k'[nu.D3.Mŗ}iŎ4\G Y_]eT[۱ޙc9B+sb+1%@?-D,!N[+6^ɵ#o>e; tc)wiK{:<87<9@~r>g#QtDsH[L)ue-6 as~r:;5;*'M'#lV@#(vj+e Mߧb]Åb&6U/ >䋵v33 e_8 ۱&F,|dƈ`_(<<+Ƀn`g~?y1ok5 &bA)[X/[9P@&nΰP3&~wŕF:zKR`6|,,Ϙ cMb`-lZ=.uC>л8j\KC $\dݴA]4Q7ͼ[l ?_ߢH ͻ *8f"Vl&>|YoJ+)]\ GrXمϣw6ŀ쮴iC"(rMtT2ebZBGB~} T&XF"( [ȶخQu`0S%үL9F~T$Դj>Z3gQmt3b_t䨰R4".)vX8g ,r h)~k6~8N^ ҅Por[]ypc8G]|_*&xJy!>uFWXQOݧy_mV6 wr0u~5K׬2L?6GV`u cy;#QCF' []5XOJj0Ra/enG :2",|<|+L{8f$TbkUNXo4ZVNvua`NpY؊SE~t3\a@5\ g0Bt{2Jm8Kih΁1yɔUԕ7W/0==|HLz'6 BGC0G)xbc3)"\nSkOk_[ҰR՟ o0=kHyu`d#o~s@&RfZLqԦ4ݸ[ **@ $ǞT^Rl-{K!Y0Dƣ!F:[>~ɀ"rj{;p٠JpF0#I]}e{qV Up/%4mQȓu3tsP+5y8$ %쭴!ȐM7\w禂X}.bX)3!by|ؑc4>I~D{͔gFp|~X`"c]zu61go#L7Ba#y1r$MHLAqW6 _e\~8Յ E%[X-ΘH@e )L{x˥W2!]oyVQ0P[QΆ"@dPk8_p 2_=q~9 |UE2kL՟#\"-ܵȸ^Qm]2h^7&jDdOٮ4ާz2"Q?.-c5O(%ޑXATJz5HxiR'/$4S[xk+~f3ICSæE8oyq U2Χ`I-V$˝dADbtk8QrZtFШr =rK;uHdr7}jGm0@=E2Ac̓X&= u@ZÔ5!{0f$EY5u)4Xm՗h4v>dc Z >bͲ(H mqY`-Kr|l$ wt'r Z-mrO{& =p+{9=* N1dJ4VJUM"S[Iy)1C \!Աz-}fu1$~zlמ籈s݈lYkmPSt4m,c@k랦mn<2 e>2nCCoy)l;% r F LxnZ"f.;٢\3^1{igfe>^DelMP?c~ eowI8)dMT7ΐ%T/qyџYM'>Ng5XBqF6ΑkrH{?t'"rW?Tun0MRWmh3_51AHČ$5N,7c^,,E5 Xh~gy*w`t6(/ef4i";w`,KA^q7W!>R P҃UtfϤK|3?tZHXYCQ&8ye:S>a"p@ӌx̩ {5o)@i˥x4'F42< Vs} YE'\>5CT&>LupUZp-yQWD@_@" >9p4A,6ErRBhhUID*غ_υpjt?骻X }ҳX6jҼKҡ Y0rM(Z#:|?`~ٓc=Qcw7N!PBznu]:BȧZv4Fj^pjCĦj-]K Sg@4Q }L $xbM1:=y2*#GyW`xtAshJ7&X{ hM8 ]coZĪ|^"ʈ0#*=n) '(_j4ۀd/QW"dY :YrF]v++۵7p RvmJQTDsz*܃ީ%ZpyҜa;R< `l9QU|2i#)gPd_pLi,J.cGB ]_2̗-.hawfpؾ_$%5$M/hhYҶ][<2}&y\%aeZ ֨M5 nX92tehVc# ѕ`i}R!?yyjTLv}[ n2uhf-()oS^SR)ٯn!ȤS3K!X#58WDG(&nkx3H M; y/~WNI^Ib,tZqdyK<&\*AQ"wpy7a>֢#+8o%.)'8`hTǠx\8p~E쯰ɹDk ;):o+Ѩ23$c>'y*t@u ͵6S>3oǺ< f>$HDQUV|z'.۪APB-֡'oRv̊1T4}a"[o);3mĬ.]1B]/fl@s[CSjW `gi,"7ZCK(, ۪gӷ50wC;݂n.O% 3#Y`xՏгٵ6kas*C1OCyI$iYoP=S*~|F|ʼp֒" zJd],X@ Ss"zz%Ώi( T~э?D](JMxaQI0Ș=?9#gA5s0B5NMr9FsyZ:%.P pu8L}ZY`p^&:I@[24 d U?3ڂ$G6e)2| "Q%-L*eo5&= cG(*Gl+`MgS-'+aR:{5>D.poMW[eOE %T M@k.Wv0LkiJ  TxYdLL8e#]b9oo6!ZѪn9.@P3b(S#쥪ėJL"P dɦFkB19sZ[0K ?n!*xU}E6Bx͛a[;t޴`v 2s Rg޳0Ȃt~90l7-$C˦,{ Ӑ ?ژ0@ Gi :c`K 2͖8 M~?],A"4^5)}d)Fs/vœA2^.jc] ap2 }w:q]]Ȁ zfx+)chX$H"3w-T8G ۩>J>CZHpHvH~@cmVLͭgWb?D:[ oްF<" nz玒*ߐdW^BԙOCs|> '=Jr|$X꿗攀`*I1AՄ`gWα͡^AMBxȡ{nYolvT?22҈<)TU2/P]3n9$+3DP[Djy[&6dU#SӶm{ӮCØxKA.nf-_m[4 &WaM\ϑKץ.M-]yJɄo K. &~)3mvlYݪBzZ>1W[)' asp!m'b phasժQ1/Sb9w؅|m?Zle@("#.}َyӈ*YlvdoPyj.u>Pqf'\Mz=Oz6vUp Gu++T@7:FF)A0]5^v3nR-x|2,L9B`m{b3a\$uȥ|E,"ړEՔIaw[&pAEm3aLpAV_ 55E<3f(&29*:qY-h,Tzv0TXXh1TΟ>췪yhO.51vswSڶ8ћt5JX~ص2(8usD\C MlpհlhDž誱[Q)1 ,q)VEk.M†v8Dnˏo֜FB랴?c~ An IIAe Ayy "!곏[gEլϞ> 3Xt %8>{J>TRσ[(D-JgGncqr{p[*. m@2gp48$xěf ã:D׊7ȁͺpםx4RRa>/@"{~`g6NeCSN@%L"pt/{2To{bpr깾>;LZ(_蒉ݗ u lDv$"DZdhciD螧yE6Թ׹8tN|QoseogJ/dh x" ;`ժ? FaGI}Dr^ǛзR`eSGɂx$ Xro2ݡO4aiɨ҅Wq(@Ulr>EeRYe S _ Y86 CEm6FCVf:EN8{ -.ޗly9(dPfiQ;2bU}a2<( â2? JB~@D Qѻib=i|c%i u(SCNuvu?x$;#b65hk 8!uMc it1~Te[j -T |l=s)um^6A1=Ձ,rxS7_ѷX%bDnTd}|I ydP`ҩl**߳2l蜅] .>I۪/?2r\^@ ?Rq-ɽj".7 ԴIs?jLxXE0.YĐձnQ ė|eDXeR C^Po>L|<k!Da<̃x@E5!.a#9&(9l]ՉF2f#C{xkʹ-7q4mZa|-QY}Q!Pᓿ0"Ѐo]H:\3#g(MW6QkIIǾQ d; z?A>MFi6Wt{(\A2f m#R9C> $$]qrvПxHNjWeR-'fY{L2K''QE&"Ƿ۳WA2+ȣG%m2Ks(ҕBn^.Vߧ @ݔT&[ꬅi3Uud9m8Q!lҒQxC `1[s>$O2,a=KZJIL2۵’8vY͋t8}SO#}|Mp!ݵLt2OT~@.Va?@a5RRW 䠊elƿs@g )\N1&@ C2'yqD{2MF5ca8?&smWPt_Ĺ|pgɻ=' m %uZF#݋MN`\i {(cZ#dfWқ }Q\RgShha1OhsŶV~pxU>& pܒ1GIMtVP (ɲ2iQPē (BJsPl>`,U*x Ӂ-7y%PRn۳ǣ)pq[<#y]D'\]J)h`{]v{(/ujmx| -jO&Qi08-NZvG~bňk)yu)yCN{zB KBRNraݐ  є2%,ꋡϤ^ :%UXpG鬸ڣ&`Kc~@QޥFY$*pY@+Zbo Jhi=v1'˿dTJXcc}ok`W?jv 0}bn">sE\Uׁ$| }Y-c9ҩK9oRV?%/Hh]0A [1 ),2Dz+m Cl̓\ f 2[*EW9VuyaD ;KIaPI'`[>۹g:mjKj{A0),!w,q$>|F} ԝ-\]Irp40lx4Xbsj%}߯ R\?j7@@1ᖤCs 8֍f2-T1!SG&1ƪk9"эliv4>d(^7zߕtAZ *B}\uo: `[\hÓGļh:^Ut-%so꾚:^-"»̝*gXX( p!7~P8b@| J5})4Qgp=#a9z5*G o[05uӟ4EN- ]* @E0a:.9r_OTC|G\%&/h4>VLpbp.1 -qbl-̀VOzC58Mxs d !YM~71Cb~ soFPjQOI{h-r3Db&meS8u]k9o$‹fy>vru}y5qPgո;ʼn1WK#.H:v8 <&eaaRzq 7h[>Wi>#d:ɚWSZuG]~D5J|<=R VLXBz-i88QjO[g]8.9CcBؐwJBK gUQә'Qh$vzeuvk/M);^w B:y *Ӷ_^6Vp~1=+8 2 m\gޟD OABr>rކFVutwk0A}n?,O\>߫N7CIN$.U+FDYU#W-ۅs]Q4I{f-wl!2!d֜|FM=B>iA4Y!2:dπRgԜ<*'$C7Y!xϳ2I=Y^y:zyVPy6a7,5ZvO+3铱*]&N(5z-G@mf QQ]r6z AGl4L#4?9!{rcgˮ%(Pۀ k*kU$=ޣkBGq!;?_% _`(:ַ=Z~[\ vw*!\bvIm`} aRB)HVq-Qsopc/`潳j$h夸Bh|Pz^J{:0pBAm*[]ue66 bQ&*NB-C)n==T{F<w ( |Eo̝Ӝ,֟/'a\׼"{g^|=e"K2ZnJ,l3?gdj>/3#@~nuJNN;-Eq,Dʟ.oEÿՠ98cM}b;3$p]9W'+k<v`VU*i'F<]6e*׼I*%՗Gq,aWֺ9:7c^> R 3ZeN1dnL@ O٭HpQ fLqOH`n2uw LJ#tpπ;JzI1foVS<Ǜ$F L{ (Abа#&>d]nyd)sG_ H{~ShgRɃSo|.Ŵ#SZ&z#=]+DGnjYމ:-(6;ɳr$&{6l},_Ğf㒦J&{SmO6^y+d5_ϝwAIԐK=g\mw~ Phډ`q3JqXl圙1w lRӨY%֍P'Cv4Ÿ烊 $nuhZ6K@aOrV9x &arJJ֔TqB(jP "34 /Eql/{<6NrCi旼5)9B DxG^6Jxd\m%1Diάwy-`:kĞb =j+\M՜kj{=YnM!7u>N@K mR!kzv UYEA>MV_iA5ㄾ!Sdh{缛E`*ϯ_'bQpj`TQm\)>&3)u6FN]W2qW7~y E+k~Nu2ٍRѼY$g]nY֌2aryiCՇ`[ pX첤S" |^)CzHIK8#<-\9VslnXFEfՓZ_8z+K91I&7Hݏ2>!_BG: 5e"ۢ6aأZ@-*t 8[lLQOG֊i,->P#V7]}߱f1TsCduR1̌ջKԲ-ΰVtq [xLDY}nͭ <,u׬K3Vj>4dF~rFo6xt6^tkh&ؐ0Sʡ Sa=9,`-Mٻl88WC"ocma0k g?c%|_D:w]"7Jݢv"&/(jHݞ6RߠiX5{kZkɭ'"R;fD|Ui]Hk<H8Cs#ț5uj>vp"vi聐(0P9v ptf$MG?A{O5F1aobK<#!==d4,1崒ov2q^iL̉x9PnwMD]N&H?=ke Lzx-?-M_B3µcT:b,t8"BSP~yx3~~CMVH;J ɻjo(Ԑ6cx&FܣyF6%Z¿:3:G/$6QڰK5$nsRwX{N]t} q_l|[^\I|䈟]*=cC{\*pPaAncm=-my[1rra$.c3唓!? tfX!QIwO ,Fxbs*pT.ɷi1|1zR>oy!MϮg) QJή1߭G]<HiYk -ٯ0 kY0"$E1Jm]6离 qNL[s'NCSc.ǚk3+Wu=h5#?n T)PƑai |+֑nFuir۲  ++ͻ<8 [l#KW6(7$7bh24!S3Wz2ag͘n⋍g().gCOұIӀ1$̜ݗD4i(m_ oM&Rr֣o[GzTy8ocyX9i? [qvGe7 )D\*'@&/T':"a{% t"'qycoj;;\DPt5J q;xe{a,Յ" R\)9|?2\6 W= "S*e ^MfgN*aC~MY lYt6wuԋi0Mן1KCr>8U',Jk_g~ 灛55{J%p`57Jmd &6 6ߧXj$ehE_=_R0Dp7<p!_'Ap >*N▉j_c0z85tLoO ((sM)Lf!~4 ֦rs3gf D"lqx:rLw]!Ī㭿bJ?9dOAB᪃))FDں[1&x£y;&Kx^꣣1~'8ұ56eq6ڟCHv̠Ŕϱ`f @[E&Di reN#qAIBG֮~WӴ=$!R؟Ҏ!9gnQMJȩ 'g( h(MS_yWޙ\'dcpKӝӪ#^[$̅WN߮%*6b;]-*Zs*ʱ\)bq ^5,hY#= t }`h!tiCou<ћ~?ɭ}jcq)#^Tu{9ҁT_%Qe41/iܿ><P6Vfwk.+'geJ#.\'Py4JkߚIVࣽ[}Y'RŞq&\㸞ent;}xNO*gϮ7.НiudY_ h{"IGs[ 塿2"X]m'ߔs Wmpl]S253>ŶRgpdkוD5i!Z31u<;502 j[/fro'@p\h%(a+mzKE9<7hĽ._>^ufa78ldDVwc%ٸo3Gܷ­ _>E~[p-A> `ۇGyI_nT݃ݸ U%Q (ZW %z %'-֖8@)"ר@pFYUYkĭD ɋ 0f-kI\@vԳsP-J}=R*$݆T4i 0$j&U6Vԝep5fkW6 8ױlx6DFlofB`T]egФyux1q P(e>{GFweCYqٻEz~@U׾%Qm}Bu>ppZI)eի.#ضbѻ)]=xHh* ]3i ~[Vo!}9WC{B.Υ~7.46R _|1wrd?YrN;ԭܗvU9J4lcV?}ZS}T֩׳? CCj([K>T pF)x<*rv (LqEKunw )I8?h0__.2mhA, ϊ44?:{MSqa5ggeFl2IW}Yֵ4;V80`?9k):ջS0e?e:!gz3*; ipH=2 fՃQ{TaL)tھĮ!WHG9ߩ]e0wPdPHShmkŧMeq Q~'U I(#{D\''km`x)qL͝{,˾ :TLV:Q-ĥz3D\ Yߎ(u :ͿDA+BC8EMT"=xv)SDtagm\eVQEmޢ{z=esJ!V9Ew2#^jHMв=]lC ZBd(fp+r`Tg-W:) )7B;\;]ؖ*j}<b*+ W(Il_9f+jDkg@׮ђDyXŏDd +sGͩ;P]R:Ї!7(bmyG1{/h:AY7}& ys)0KKVypWd8Ӛ GO~xzcˠuu)Z<ȍغ@3 6A3{#;bj $8 g0 X0ӡ\ BAQ!:ԣoMzJ(ډ-)ip]1"aQ b8_-JPP~B1 ^{42('L $+>.5N0('e&{Ne#M6 CV.Me) V2i+QQiyDrJyt*$\**֛:^IubsYO1];L Kՙ$xj+L6fL$CFn*XB}d7U mt:'کMbdQHTêWϠuyTHCjP2KgƨBU+!\TGtJ7>x:%Hո]Lq lkEHU-FMю/ D?N 9݋fߣbVmf4s NaN[Q{|\Q#SX 6ۺwG1iQ+41{YTi?쮄O,>(CgZw-䨤mgnIyWdB,rW`?ٶ?be.J&E%?#7>E=F.fEReXŞq残Ԃ ž|?h@\`h8#dS_\/e΀Sqcq:xH@k-[X27@:"C"p8 bа/k>f&3 5_РHt?^̪Bn;IMS -ÏJkneI䠪#2.Y|}X&`9;(' l=]ʋTACh,E@ t_ 셇1y*+2ϵ1cx1Nw7@=e} ܺ"5鶉fC/q/[6Vr4f|j!ikaM?*X4GƜxbҡ/Zsom/eP+D-I0u''(8 @̞#TFr7wsQ]֛KU6rW[Mq-8y3ޚy =ʾF.X 81]jgbc?xGSP:'S/ #]"($\*~ 4Yc+lwT ^U KlN=d" XCȩH Q_4ƵP`5wCwm쬤?=YJ 6Q5C 6ĭ~G7t&m0i @tg),mJe>@dz.-&Rf/v)ՓO_WrH _x'h>']ŭ10H$iޛ!boCnЬĻ G*ڽW͢WB 6i2ɾ38UgJ8-uCxܞвcd ˩ "}޼oOz ofNS:,:0ݱ̀4[yle41@}&wc R aJ&Z!] SW"t./O0E&3]!19nmgΒkB㊝`ܼȋOH>U=O{05O=D UylEd*3/ϙ.ӱ*4G i!^1hj⇞i-Ԯ~}M!уθr(.`{5C*}Kr>=Z/f֛؈=ky[TծODۗvZZoH%W,.?ֻ%Ø,fmRDДG,LtY'"Hm6$9 vU/ucߞ~b1AWH8$x]y짷¨ ncխ3U\m?=WѸ,yx>+3N-6J >تcO`N<)BqPJ~tix@`2*lzx0 }RTBN*eRj:f(-]FCSZ9ͨ1KHATRRϰ!hsz?В>,<+u"o[qi>#:7b0GMkɢi@36p0"wfld$3ĬZ*\IJx{0M|#O ) }xHn1!˦,p?wSl6,v{1_`dmKȠ{O'kM,&akt7cVd0@ Os`[.g:6'xyvlvC e *Ai:Vr6`Ȣ~jP+cضć|ҌY:́$. !?`EXw& R2Ɔd 2j_K4mYekmIwG&>xm-RW*vqȖArG@YSR/^\NFάZT,21/{Jbܷc7`; K2rj_PCP2Bkf#=%ϙEs"SϪe$,fJC,hugƇLکfn^o3&C>yD5 h5Ʊ-y zyuLSdg}wr/TrA0Sh ZOeFAdND*yR\$iiLkf Ho< Pn?g)Q5DU}gH@8]8ul>9S.x'Nt$޲E`jS*/6Mݒ&7%jze0tWx+J[irR4(-Vx^2/܉'}/>xoYEy4-{/ ʏȹ);[ɯ*Xau~CCZ;*.HG&FVKȯ;q>u4d:)XCz>!&Y@2N٘s{v\طLCSd3%(fEA1<wBeQ}2K(Um\e2+GC%ۏ6M8_[0ф' .5~ɝ!oAIى B Bat~L]I?y|qqFw >L$vDڷնG=*ҙlr:s6 ͒l!qP?ġedZ s EbKѣd.P%rz!y$02p g(F:T׾e -m㦬DenO]٬ߑaPǗ9%.BI6F}aV3",JDz,#8s2c\VN t,M-~I[ Fdк/]}q"/Ǟ^Q)o/xY-ј H hPdEˀe?)?JEA)Lyl>?ùXԄ lcRVO/ZƝ3U;eF8}@m~ 10PPAf[nׯ*BDdGB7s:4sd#`]I%#yTTU-sf+< ]$Q# C|D0G2_ٸ\cW4)Aq4p=@V%V.!+\4Z}qΣ3/^ɣ=61Әps1t+N\w;W!ieaDecCڑS-O+GkHcs )FO,[ vP3PAd`M4iTA3`kP( _İ~DAmx \=z  g@>OGz` Ip$TOL JԉaA62  1lz\HBWj& *7{iŦŕ2z[A^>ɖT'cEq̴yX7nReoB7uNŔn9HDXs7 2pt1ί~Rvwri@4$I*[ȧ6UY =b |h4-`EZXoØ@Pc 'rB[  uia"N^/ňϽr5QUdOL6P`i\8ʘe.'#o#'k4)p^JXX<{'O CJїk g~NiɯwbyWKw\ oaܷ^ Q.LkNWS?q u`NTO۬bLehmPLG<~|_-wjV"n[ kqF$*SXf|JЊBwY{6Z UA 6˨-82 L 6̶9&O\@6w4(ЫzJyD} _quAyg]I[t,7<Jeg6E705r֋09)|? 83\_dS} k~k u#!4QMYVJU 3ݤWMOA1H \& ~-p{نBQvAc'D~%ɶds}2љRyE/W^Qn5k7~o|38xhѨ^./{[x3 `7W%Smα_"0o>3[& Ð<+֤,+CiJ̷.YwWe.Ү#7?A$0zT@hoV14O, "pO=J><>no(_&i݀=o fe{3s:"4:[U7*"A?k9L#wmh[Gn07zidvUBNPI7}I:+]De;PVi, ^܅ !*WR;6!x+o%} 0![P+|(&KyA$$;֎|xrJV°LD+G5ho(n6lhƖE[H0jlP߹6I,ߍ܊2=z1{P^_ʰ}XE̝ҁ%.,^nR"P%xH7yk"3^h iN09rwV%M^棡`Sb."do,1ீwaOtn^<0(c&NZ\h2cvIV Wߛ ogK Hvhtg/a6ۮ Ղt"j̓Hyic0v~u2VQС-sb9PGwz/mQT;:ɪI ƎIU?εF*x5 @t}A33=TYˋfA5K)G1S]*z#c@K$ A~W#0YL,-;_sel-UeM PeclmGAG}aEvO}8 ߖh ^`"}+Tc*y0[AN9N煴VF}y#t찁s(s8Al:H\ $qL<@,o"7߿uMƸ0ShG_s e4e &ndRRE瑇oӋ;QNO]vsOH<,T,1;Dǩ PX_sG4g 恄jF;k4tT J8Tb4D&t Jۘt@`G 5]g~2C5x? pq8M I k_sq1 HxKFuHY׀(~NJ1;h iS~T>@IVG*qHEr 0bZEN- \獔 ^@4zTg-pd:;N`}Kl]$faȈ\Bi-|@%Vu#y.v&~'A#bdKzFΊs+']W[%RuF?g+pZ8=xT3WkDR#|)lF~Pvhl;Zw2˵- Pf2"ɺ"'_$B? ex%8cYΡmxPq!Sr!Q2 e*s Y(CBot?|We/-42j%g/ |m*A[5_Z04+6khi}`eT'De1۔ wrEFTuXgxduW8O*rQ5g&m΀ 1*m JZ3/UV[#ԝvX'pI>ZB↳+fgj uЉrX'_CB x0/!ch0TȮ+Ui*%'{T"Br^[zrz>]e/Oj(wMeT0:{  /Xڵ3_k&fA>u0ǃm1tlP浏#S}* OiJV'\ah6/3g mcE7Ч@FNKPʠyocNsuT=Ef)/{Ժ!Ih[ˎcӣWBf=]:ZT; Dלiˤpq+  1df~MG=.brM<-9QO-!y!% :w4Jԣq 2QefAk\eXdKԣ_:&K&OuS?7SnV%}qffk^?2Ix5l2:`b&)'{|V-}*-ܤbX}n1G;1+l˶__E%%}B(*W7~W2H_[APշlaLx _^/p ~z:77`;t,E{sشZ%b)F$,R9%]Xt_`W!9 N R4aR:liОĴIOE#G+#N4w`ktLkuXY<~,-<,_#ݲHT-~(Wi]%^]DibtfOO3a߉N~\1%|5\QJ}rFm YE0Z6pV*+slvYn")]-2{GԮ5]&<԰S=b=\:~ ESecsYy!S_FT>١uXhrVSK aE [9iځS?'XD4cj.e;~k:yU$p4b/)ooZdp 9Hu4ekB}q7r^w\VT}Kǀ Vxf}._Bʦo (k,,uC3>AB6'VGcu݄u<’TwGΙTw--Q۶D6OUX&ܧ*}2n!UZi_\ N/NܤuRZ\K<0Wy\ztcOt yE"qr@k1|+KJ! j`mO]BADT' U@51ܡQz/NC`#פJ`CIKɏx:PZ W4r>\8|ѮF][Ȧn2Ḃa"3-'77̮ =›Pk圔o _ԥ+L Amz('ؔ:ID&CH_‘ç^gۭn!tSek& I@nS˵yHR5[z?m 9üL a&b'"-,d$~5aMn͑7KwºTg7ۻW?!_,'IEjN6CH{$8VyNZw#̳?v3&u*2Xrw<|e)"e;:Ĭ54EQ^虜ǚUIɔWHK#3,7BE߳&J]}YZF 8A*MJ"뒏?sbM-" +󙰩KcIaqM^WG1.+oMzpm[R?Y항05W&U>޷zA#mtH'0ޚ>g=W^{C:~MywL"+oՅT9',POp0$0I12UxW4ܲe]dTA .tY? :5! Rp& G u -B_ h-F_S/GQ,:IeFÂCDw8u |YMqLĚd[$TQ@Xe &<OoJ`lѷv%{WM6>$p6VK ͥ2%@# `, G)n}#崁\[ˀx_[cxl3E,y2DR#J ߇nem^hʌ}73>Jro3a2ķQM (hFcy` Q͹5|7ZN[]_!Dp0 :S=t\^41ߕdd;(Dmϭ1BZdv*Fi]룓wN dFGhe#؟soK99M|3v_\VfcPꄧ5ӁSXSLYRWDLew^K:x}F9}S!bO$ *$uBjEY obqNjA|XA 6pm3AKG EF`&?  aΰCdiFΒ(⏉vQ~j,C;%vuC]+y~M*ZS0 7VF8xv`G(Ԃ. 0+yfA/s̅tJ9ax!'{ +xyeŎpDX qN\DDW[G|>`h< A~K`d)r>RqK-N]ahii~>tklonmAk 5W_H:beJT 3Zt%R--|G'\{x-` ^A5 ŀT27yB٠خ &uw>y::QRb!֥bE_[~ 2!L:u8G=J|kMG9g4%??${ ]ߌ n|->'ۙSޡ&Z.߯e*[b+#H.s <+s7eS|oB`͹<:E2NfZA1*Bevx3@OZFf樭sBxe){!٧}=+4Q'3@? ">!fp{oeτBURTF r^oT`x@ ^8^nn99*ک>ChٜCY̤˚MR :{%3(E̜XRGlZiAfh~6sbfVE}"'6OFMc[E7٘;,#@;@r,m$70G'֫{j"p~֠W >Uj)tLZk7J) 2b @L*Wbq0<%/ɆeAd.ӢP." )In¹x2_X*G, oн-c (2,q1,{Ţ{"S j]n ͂VP[R3z*Ɗtbt#Yp֊r/Ңi AїA8Kc$w7O~ c X;C jGxQ5IR9_rv&>*ν}b 9 L܆9ط3YN[hfO"ylnHis:1Fځi$e{Q"O,Bʖ&ϯGǽӴ : /]z {I半d>1pNIs 'Q+O mcOyܴՀm`~BhD-LDfv9j#7YD"ES8L2lC(bk{h'j-esGv2qU4813nUѦ@&xǶ|}0b۹yyp<U6H J' YF8gI~s݋ t* %)+ir`-`%Vlmpjgz 6KSn$є0>,AԊLc|pKv9.uoddG_B5޼rXHͫL=|5%/3ULNS=Ņpd&  l1f4ZXk#?)=.\DSf0ĝI/9"5U}'Ԋ*  ~$Б6JB3(رsⶇU?ӇE\/QE;I|. E8}3m0:mRmFR`j̻b.uNKp_] Hi<'@]7-+˧ޘC܋}̱> ?̵' I<oUFenvDU &Ef&:U3}GP_Hzlw–[.t>[.mϋl#V.Z[cI,VÜyt;!xrʼn{Yȏ2ѺZtشHKJ89g}" )crvڮ($8#'ŸR@g j&\4<։J3i{qTng6YN9a<|IPAxKPSQvcGkgijM2;=_-9YUf@V $R5C ?S^ZXk]ErllXw,"`DxM*rtz0,mXX`|'?!%~k+naU<4%!0E[NLZ1Fx{['s䌜~j[OK}*m@YB&Vә_gtTi(3^Yz$T1/EH?T2 KZ@BiAA)&]R}5WVٷGJk>uK=Q0XBjzZʅ>٠"7E0|ak< ~tv aT@ dgw&1M6QD,dP$՚zs&#>z]0-$IT,=hɆdŝ~^vVXaRe!;s36p.fҾ}%Ӳ=9q;HOukY mJC^9| $U@z2\ V!gĸP $ ;< .+mMSl6Mb[Bb՗NZ\CIJo>6F 4Qi ٠+wD,KHIKe "Jܻr M8>S]*mqv6f0Dr8,W({cnX`^ (ڄawjs6N=p0\4U.7(FT+N@T*NĴOd`n?Ѳsd(hɟy(:ۢ im`;"\FEN,;7{H`G/N'gÊ.p)oP4tpm 6`ی(Uɧm5:/,ܝ'[G iJ7T;r8H(c=CZopml:ptH&£o^֣é$˽շ:^O/nh^<RP˕Ek)LJz+ AJWg^|6t5~JD5hyq@B2(u/NB^94rBfx 2 s fla"!0DROR+Xgg{ku3lSJ{_QHscm?KVdy@*&7C`iE񚝞!b3_2q㿟6.R֠-˱zr Z {g uA23D 1fe:,LCNqa gE&d#&D¢JDM:DE [*VKʑZPC x}ixs~1~e`r[`ʄfAE^b|e{*ߛzc.-u@/-[dq=G j18Qa+'uT~b(sw3P@+{H93[ݮ.; 9M.>,wk I Tm !t 86N-_M45S1)=8pi0AlF8=0d+ H_OT\GJ(b$ٌGw^24Jf0C?{!;R RQ/6p.HX@@h5Wjr,] _[8S;s?, BϨ֚48Vc;@ ϗ຤bex\o.iTub^ha amcBJ DH~ߵ$6.8F+jɃ޷r}Q4 *''S?CjI1?ψmqC%͙0Ql4 sc% ː`v PXIC}$@^7C ?qm$ۛshQ-Z҂ -G3%;;x-:x_ǵB&Mm|vgBO- ɂ\|9k0#b};vi~#(D6oеprM6Z1c-L.=SU?=6GImr]3zS9R=`QLܕxk!Eި:(s.|Υw06HXJsSv%:ɣ)?)gK6kEMd6Xj\f%(Cmd&YaPH)y{U^|˽,SmKØ]@yk ._3a\0Wm~%ډJjoW!l2~IH+<:Br\ՙ-+] q39f#),4|Lnk@&dLz2gvp$t@v)xsT$g艦DCi̢GzQ&#]#ewE~W?" _K={شD AG|B9kt]Ktź-FujwH#/S > "kLu=sW5ƅ;ūo#d3XEM(`\f}:Z׏I([&nbwżס09gcJUJF4@" ;bLt{+?O/oõ9'Oy,oע/q8Pi4lv62 EYYW ߳`.%xM&af{ou8IhŤojPьfU 93`9o%K`y~[߲y1vThܸ/&Bc7 AY xI{L)LύL xh`Tw*H3U6eG(-s6)d;e͉ 7*REUP F)G[jvq_ϤE wOzr𝐸"R4jWBB́:.˱TK.>Ee渺u+pPA;!p5@O Y޼~sо3Cߑ'ML%VsU%2Y=SQP6)=P:Ə8&69?h0fk)Z`J31)G7|_b"EȔ^pAve@4ͨsUR qĄQazjHɘ|BN; *:d9eżXsI[hNJqR SģDYO-662FQ6@@[ Yp:%&0V{9ׂ{y3I uQO)YZ2Ƕݿ3.Rm= u{-Ŏ+fmObL$K&;OwZ%"VWؔ\f 4w ϗ+h77K] ,Չz6<52CaI4r8},{c7xon!]U0Zf)!ӗ7% 휠.=TٔC4͊j]1oC_[ |1lN}rއG~z$X?nIZLzE(_ e ifGI❦uΜKtPep -"S&kImwA_0Ndqh.`sۮQG:hrݨiu_{7z&VVTts,Y :dlz.vF8Ʀ E%08,b]0+y)r"ΰX.&W2}y(Na9*Sa^y!JU/!V( (.E@#PY Plعi$lգe"l믵HʺG.In\Y}t5JI:y4<(jR.Mo%O{w@{7t^qeb^%l jf V@O-hDrɮh' X9DY 5L@j~%kIiYO;s`zDu;!'1(bV£$H k9fl8ᇨ쏾^HЙ4eS%ht}Lx|zND̫BB ~h L AJsGO4'}R3!='Sظ!HpY ~KQljϼ츧zK?Ψo@>4b[ȆQfoH&W%r(J \?D2b3f1F]'` ض:^LnQ| $c~YK:(EXjM5m h쎉!!]:C`EFpC*+f9yB}qc?*4G2?AW;PpI U6n+d=ݲ̸щٳ{G:{d×pL_5XkF߆"B3Q͕0sj?k}'O+>TCfy;k>/??9#c;P)`mӻ-?O`, 9eu4@1k= WR;91E4#U3sZ`є-`QG`ZwB%˒2i !#8mdFLFq3ʚ]Գg -$4ݤVsD[TS=:0LՏ[tYhI,(O$L~рyVRgf̵7nӱD7ݽv®u]j'DO뫲Ev zo8V+Uҿ}C*+Z|R/M“`Fy ߨ#ƚS.oHIQsrcYVYq ߠTzL<<0êt".s)pΊ~fߚA쟙j3[X:6wY_SUvt}/zg yQLǢ5tcu99Yߋmd\6zb"gk^/4-8]h?Y5_ڐFT!Q/0.1e*)oDuCBK"se`$M@..@w=H5 TQpb9PnL r `\UұFɑu:0>lm/7~WǏ6`<$֏g'o^\ 9]fl!ݴ"VubPo$w=.k.: gyj .ޔDcly TD|m;^,fu͂3̸UhDL*hXr҂#QNU-v*F3;d( !Oﯶ&{&OګjU.l(*--`|}Cv{3DVh9*DqSgfOш4oUN-;p)L6T })JaM1qz>5ڇ!鴞#2bغ_gs8|L%=ǚ0zNPFn- T<:O4y]i*MXܮ&9Ǐth>ZY&3[ibyOEuiBI2B0zP߰(r ÷)vu ~d1wG @yU6U C4J0ھXqB3ƹ(|"VQ6XLN6r":Rߺ˿}38t0xU%u{ze-tE\PՎӄ_^i r.yg(ё+2u呻cVM` B1X56A?lfSXѸ`'`8 40L˷Tc8Xd@ JHJM91ZBS-gykZWmr4Ƨn,3iEaٵe{jOxfg5@D:h%[mu꺘0$7+Lz/9'ҵ`=| feIwd,Cd.jA>[pΏMىp0.w[N ?=aoP:w=U#hPMq8OT.AB@& XfC_D-B˃4K!k%QAx.4} D@K|!my<`ku,/g;%PҀDen;R.ܵ<Ӄ q'm`TK/o PK~a02ung60PZ.)R>2 ho7H?' wh.Ύ^nP;)( .NHjRMQ?esX{,TO<TMs 1MXۉu:аjqr 럢,r\a65rCgU6xu)$( ?F^Vn_9Χyy㠕kimDc={*ZDGR^AD*>!*gnOF:G7?Ks!5Md9dhvd\k̠mb^d~Oy7ⴥ!~: Ǣ^9:M*SBS׶1y)gAL 'j%륹DJ]Q^ qZRVp*- zȅ&\觤8^C5|# rsࠢsyKA/(CK{I|/Jvwn]w`037ffD$;}@((h#,I8V)h1,@!`# R;x}$`D3n+{Gz^ gI51Dճ*VXZys]GRp\ _G:/fUM9\?@ :{։GxGu fFsT@Z[?)g.&le4#ͼ}'TCu1DzO{ 8>>g D-!`(7 CMHbUjڌCb/[yš kp I4lF?pKG3&_~ZX! oV&Ѐ T/Ux#q+Jd٧5xzGQm0k+9}szH3a~B$Ȗ\ki?>#ris(9%uU[^[ŢU  ZΗ 9A?{{\ ΊaRƠX!E?+gFfV`;d1S5'$r-:ӯN*DR$a1`!+̗SjPǭE `E>Zi6Z>X9ZGMTvH!sr&G X0ї \v f$&#[#v4-տ7*eP)|Uo  VgKnrU$2$|TsTQr=2ܒ4/9WrMә2K@>aZ`M7=o}%O1ס|D-7@EόpqƲ+_ʃX`"#B UE(V%AA~u5YtOu×gU$`N^ZʖTT Dz,8[ SKSVIz^ ǘW F" n(OEWjdUR&T#7s}hG`V{y4RN`J*(J~AANo+P$|szUX"3^*8y?U"1K?#cDzx%3-d1A"LǬU`/ɹ\}6o^Xtkvj}D]tN&r`w v]䏨POJCt;Uڕ ! J 5r=<\sktaAڜER o4|G7ʹ@fp-MQ%$ag?sjmQoVQ$PaHc cT#xu6][A80:a٦=(zNQ\D\BC=8#0?sy*4B3RjUSӧ0t3Vp'""H\H {[l*rVL?i^IaVcI-Ȥ2¶3URj)ėD~zʉ_iGfnA0=ZX_tJX8njoVoD-7E"ye :ZBUxbG0#l7w1 }["$2:< x{O2 9ݰas!_Ra떌@+$oSIexgMvjt"WbTGVZ%P+f qH}-}E.6VEL=UVG7#gA z/5M]+)󍖣U$;⍪2z-bNfEmmanH`?{q铉uS?dwV1GP\O N-qŅbs:(n<&̅zqD՚z{S|grUJr agMJbg:Xp ᖩ:U ZHKY 󣩶W!-d+anhndJsXa1a,d~xrw8LH+V?ɇ'X@O>Fe×U=+ 90)k,Ƚ &~A3'py}ji26J5`%FpB1GcWrq|iMG敄!:wL;CנAQ,3W ίf\o# N2`FlP 'V ۚd*!ep|E#pK|&͡I ]0}X@ 1o*2Xxd&`OBpM~&~̰hf' FV$rt]Q p193hᩆ,c¨!w'}wexr$}8K#}P=, 0 /K'~[izl_ K~Ob0.PKd!a91I;P" 9}H&Fp+XCaYޮڑ4,bo7s2L) hg%Kx`0U<=x_5`WYŭO"s Uq}*4CJ}``mzuf6k̲!]Bƀ";GY4iCji{(M~]C Eh=wOHNܥ`a2>6D?_dQSjj>Xvv_3JΓa)jEAH,*b+r52DJ`l]Ֆe@ۺ:MUG yKkӘF\Wb2XG”ƞ0rSlkM" l07=7!ŏ-.srjBkVRZ>S'V.F]iփjG #HzQ2htQ$+ O/E[.FXq13JXe^ XF=y_% 9JϾPWXZBtC:6y2Jv//'=;+@nSR5ƌ]WJZ 4R^?ETrr 0JDE q,vG6~vbUd"$Unߵ?%+ ܐIܰ|Qˣtoz`vA+$w͒)0F3ORi?0BFɊ&{ŸR^i{/#I `6Fl C> &Iz!{Ri3FJkݔg=rB^(gȿý@a<Wq%==1۸H> */sqEBdTb,M.9[6{-*zod&.)K?s}2vktgm\bYP{ބa{_49fO{\4F.WSۥy[Asք-|@ R&sXh5`= a 3yAΒ-]I'DQJ7x3=_SWP>!Ĉl+[|.~fVYtb߃F4!<I,O%QʙFØ$cyV8,4N$1*[IgUk4̲pu!L78k)CQ^ȯF_okQrbԜ?I w=BOt"VhMFk 4;WaQUidSU0AG}98zg7g-!gV 5}"6pQ~貺b!s Te\Й_ ?Q0c &>+~^-2#'RZT3Po&>DdrZ ܥunQH-/, PB*3HQYa|ͺSU̻N Zg*$C~<} ݀Q +lTHco2|EQInUGGCsp P@:4h&>qf':![& $hHKxV>7q›I~vx!$J0aJ"E:@R^fĠA98ʻaזڴM֧XvƄ8 _VMbAP@>w]{T:\Jǫ|~-Y_2J-gnXhĴ'83wkoH&L EdmLQר1R1Hʧch _v*#S{eU%_`MAE0g%:A?,D;S8.)h{M}t_N&(/ 4if#__!Nmɡ{# }V̳_K.]h/<`,%>9UhZ:XǜY5OZ";}bqgZ9*]Qn*3 (48#CaHX":#So6ȮO>ƌUBl<2CËcR%YIwn$]NxI;,W>qF&bZR# eCHBHXxi[vs}]2'^rZQrbV^P~ etn'9KoXː/4uO׽j$ y6hJ~E-QrcJɉ1t(8p&W+B+F% vMa+)W$pd+4(S[)'%ą RU\D(O%' ԂO9 ;1u67M( ]r8_YTʮ@5Y\TE t E=v"bDK|zRåe蝳b9fY N˱h.?RkN qPY+ҳ)莅qCŝg} W086T花ߌ9<}EI#R?'` F */D'1s,M;4 BWp[=*8Qˡm^?]C;s@F2_+ꆈ8Ntm]>Y\\WZ4BFDyޫb_2Ĝ=dxlZY>(3?Z#6Yy'Np` pr0d*#~P  ,[`\J5E;gU?KoKwD+ ɷvњX`dnNU>Gqd{hgRۅ;ȉ?*+!¤ 1m V  ˼1殣Ǿt'TIK篶a1%TҌ~}LL±ꭌf8uf>c#!EԥcU!t*8J8/xztW.{aMqK{Ҋ>>k戙 I^0CK`2#x1m.=ŰfOc+_gO)[=,0%[x|jL"pk)Rzߒ޴ 2ߐ䰼 EL-+~q9V֧cYX9e8HYtXh1`~x&`ݪ.E^8fMyo*_qg;/Ees$%D˱1!\Lyx>  }3Wk:6B>}+A\q4$dKdp<2`%h۠9`ma2:!\}\B;UgnO rEQ®X(1ͅD:tE+ ^{ޖ]s 7= PH Z)2Оw׽BYDd||,k&upO@?E\'d xMA(pG}*ڲ䣱c]>oļ|4'@a}CRnqx.Ctܨc" pI+HoSo@mv 2aR%gR5hu|cH\1/1Q;c(zKZMIk+IqB}7LjC\,Isl=z-[<%zGv6z9hb'+(AtqǍY+I-̒ Xp`=b៯+zkfu?95 R7ovߡ\F؄J8јk7[s}|.IpH'#Z*ű/rU P'r2٦{& O_a|q/f TLe*Sѿ>~NHVR 1.8T#XԒxS`>4jaӴ=jy/$#vs\5w Lbo: ,tV7u(j7냃@qKw뒪?ڧ2Zi8&܎Z'!k@5As] a0LJāh PyWϚ_#FsgDt[ @(̹X>dryJ mުBa7WliBjN^Y%-1J"|+3M{h[Q{2 yk# e넂/,G-hLN0`N$~Mj^qGzBA2!?ڐ5ŏH4MCooQ;'z*6}&C<^pSH(vi-P3xdZuʨM[ķq6_#kVד\?JSNxCl"=Ag&"$xpnQm-&Ul|cu8E7Ш ,qm 3!gD /!PlXXVe8o'mk(!Q%O&o[2ٱ)AJhX{¾QgbgSյa*[8Z\xY=&h[&Łs@  j`3#YϷJ"cɌ?LUit VgC )z.:WP΃g0HbhgJנ=w~ dK&au>VkK=xO2q^~L;q1({^s։ϕT`;3<Z$O:嫵S s-KNR;_ ڱXӴIawdEhr3C"j$mT-MN,2n}¥hLf+oC1Վ8r[+D\'`\W¿0, ]I t7,}zNaH^X%[Qf#nəN Z'bьiaZkap5ywF-.i,p_f2Tmy'56GKN HNDσ[djRbʾ!sFDi|O3~nTsh2-2~R`%[`yAsU:>Z;cw%! Jhw6,%,Uz\Ҕp,Gtwr[PF9\|E[nؚɧ;j=>S!^DZF:a BK_MXdss_ɍ1thdx*.I'+yVԯho{{ë& )g:9kΡNoъ\ba_`W ِÕf^C06D!)'*p{r{*t~9#*~r?D8rMSER@LדRKO}~i Ȫ~FŝMiCu9}7 Zvzo6ţL " ٿ:XYweoVzjz#K0]5w&2M(:BF aB)Y0[(sw>lF}eMSQ[|CoD""b)w$Ɉ%z@6\WXv&I0o[ox \΋ ZR 3> cW4RvL~,,ҹdKtTۍ3w<ez QȎE/)`\k\\'HF5ec_ GcsxKp@p + ⿣ڌ[Q3ZлҤ~-#yaqmf*CRt̕a |5)*cmǬGgE8|aY7GٹA6cE#NUR\cR;U#b55Ia2x}+ElhRp,C|NЗ <°!k&QzIn\cBBsq.Y^f%߉{h檔vPJK\m./NS]_Nj\:{عL-C 6'4M"IQAx$0SRܩfpB+Bw6os`lBtro!@*ԩ7H*iRIl%T c^t:xB)ޜ!pH*課lR9IFQdLOD6d:MLjʘb%ʬ~˦*5k -3L}Aj';j6/kC'´H!".cRM9l6~id FJ \ev*-EoϬS 'o TRO,]'#BVE/U 33<簑?oW6;Tg2c]Z ~_hclNyMF2檝oM 0c=M L6\wJ7Oϴ| ӀAI7L|5ar`/p};`URLHy`ŲײfYu[e@0>_5~J}eJ?7h P沦 Q$;.cp3U"ǘ/ jgrJF'ii`dwFԢo!aגeR1ib |d鿊&_mCGV쨠?_'yMP\*vAӮ`b~¹`_l CZ|4Zn1+R"=-i4 OSVT1\/3@UZi;}*kvGs ҷfaP+Gzr}Ĝ2-`- _HQcʐWKvL v~֧)4RPYNGU·uMdJ 4,mG>7ԗl,1'HBŴsc}gÜ~k[.gE%Ǘw^ p;>݉zS _-' !Xx^ÁIx/8z7}1l{ >swϚ傃؈2i"H\?]Ϡjt3ؒr%I$V|q0F=hgNTc&)^J Mb N]UBB'RR=wxUӧu!M}Yfg ϓN?~3toyvy<@Z\o9a(;Z5+k1Բ5ΙU9]x,c >Z} |EÁȊ!zi7`Ex 3Oh=O'I6sGʴS'amC9V@dReINDH "s'2d/'Ȇg'OB^rD0Cs! /U֏ ۜ/-+42,"ݳ jjު(,bs[`qa eAT!1yy %Ԇ%C(,Q|5D FKi1=58c)/&̉- jysJ&hsXuӸO"[ jh@RadFs;G,Q钟Sv@TOB gYy#?'8 괢r1-;(o;#jԢ~e~L(f6]xn(p?w|g@L1X۱ėC#!['y{YAs.Q| ݞ}pn+,QF.4a@LreбiyAzmO+ea[Kmt#8ߠ"DY?lgS}8L"'gfE4Y ngX^whM')i~:u(9@݋pad2,h1@-$gb_ -9Tik(ְj!PQ:hLJjL@ߕ޻oL\BDa\呻A}Bzis\S_{V{F.pYj9.29Ek47-gȏ1.3k: ߶(F2r d3x屳8|pJ#u+ rs!O.({R+,pc~wԍQE[ fT;9_TmTʦ4-/+.X_ghyEtR] ;߀uNBi%*XpTx54I _k~Ѐ"9]=;rkFQ w%rr>j!"{uB~y? beѯlzYYZhF Ba7)!M!``!I!oO1AD{trde *n*jU2!tr2#=hȲׅsB$C"W~h=?a wPjL(b W8Ɔ'-R0r4$j3mɉTeUSk2L,90OyOV _ ױs9JoLZBg |Co291#YXZUDAwj!fa2+wXQ8;KEf˦CZ 0fF$|i~{Z}(h!g ߲awsb/2"jMI槷8E_-mJF/ U9B#uw; m/sB[XTJ\|I]&! (?{1V>6.( {>LWJG e _\rVr籠n+aT+9O6H{տ#ͣp&JnGk_O~~RkIw>i=uRyYˆX|o$66L?ؑ:s4}i4JuלqPUؓ/.i̎90~GF n[/=2n fX^<}Rel}޺Q Gw@nYfְW>Ĕ6ƌE/$.ˆHwy^qTabzr4 -ؖ4<ԸBj{3V趻lb)~ K"ᛡ4nZd/IFA"_yG abԃqg:o "9O 46 h$k1srʵn8_ˏu jı[vz*G.EMPR< fYӬF~˱I_\]Iu,ɒ ^g" @Dጆ-"K F"ܕrYL&b{?WTN@pMcA}DtORpdΚWnK]sJ鈖Cn +d) fó(hˎ3av*݊|W\ofC()E*wx rxӭݨ@؜T"~փ(%݌74B)g?11QwkFL-mDR:(ɼj[WܸOtilЇMkʿmawKC/w--aJq22ˑUګJU"шw6!I4SR=@&PZ1cD' a.ŸHc{8w? b*> wZ},Ĕ")hZO#դ%\"i zH,qʻȅx~4+ZXaC+xz懙(lI姳YqX77ܤ?\K%ӹa/qfH)/;5 *3}5'(? }YNQXDC6^nYQ+|Za(:< ˲ W"3CTBA(x}>z0oӒAVqsn3CsIٍ{.}A%ΌKS:1xѹO>pJ^fO{jJe`g5iF2p\´)o+uBT[*/h 3`"7'X2  h^{'Mwв}]\arKqOO::=(Uv(Z^?&-btu{ Բe8S=ZNHo-qvd2bC,w2cu|뎕-|ݰ&˵M< 㴡oaNW PGS}AJd} ZS3p)SrH&yqwg™fn:W!ܶ=U'ýeB|ז9u^ E r*;n8N /D _䕑bd]?EUxM/STbv{)m@7.pPZHhinZTʼn3۪b 6ҫLiu;{Tl ͍{!<2X}k@CH-*/4ete8O{`j߶ʔ2:#|"[X_'pSKgj`J6vT;w3m#Y` 0_DGiB%QRd#-qޠXrz7۸/ k";ج9<[\u3t{==5?ʊD]0C2ϭy);_Wl濍PFGy]4)J"a^CGA6ABrWC4 ([r$,';xb~ଧKxU-|"z!\F15 %LG‘ ̉,;Hpd?z6⑒Cꔇ>@]7/pΒJDqa/Du6io7TE=F Z|?JM\d82a$iFBkcTJZb 2nn"dGk,Ԃq'rTf<ҥD7d}P+j\5pGqlzjb[<J☠ta榃1]l~Fj ;0h6vX'j"ϹL! .FxQ_Ee*  Lԍ+|xRq:c4O}@c 0Tzx듉wzk g!] P)&0E8$w7D}q@;9p fNS]'#}*"~{Y$K>P8k@E~sګ\}tĀy4Ǥ5',xloh"#1Mt[yߜR ϥ~^';# $F9`ɣ&3QͫXճEwnJ4VfD`6$%i4yuxBe mR{Oe~|]_씯Ńi5^wbH,fIk} bIc;jsm =͜~i_L2N77:Oc1h"3r?i|ݜD$Ym5˯8KApo϶"={ K%͜楲IS<]ÿ5FA-C$.mTB u/AQߋ58<"i $H$'u7 v'(‚؎?H*}ng*22P!1PҔ>.(tͺ-ij`\t :mظܪ K6Wl%dYs R6!R1vqpQ39Mp^wfmj|l @8շ[E&hei~ټ}`#8 ɰiԽqS# f0R;3}&  6iER{M91JXTiθ;4xrZ 8L*j>3*{/,tG$˹;)b$Hz?Φ:h3'n* ƚ]VtzfZkDk١:Ke3-!u$QTY#5-ߖ34a?)О$[~Ǒʇhl1wF?u;l |Iim%qkryI"zïfLc4k( "xÇ#:&y!v`^EMW9گR zbPp.ADDV^1eo;CHslp? ^ĪGM/-U ykY  դ N5 ONlRP@769Puʌܶ;rB(WB\f.Hƫ[mXS1whk֓V>wI;sӦW@L/֔: 97t'Z<$r,֨T63/"(z)IuPLO|u`Ɗl&=z`kNEn*e'}e&:yĖD8iRK$2%^SWZ8"MSB207C(}2UUN3eS] a\g/:hGsYdD}??56[3*Os8hDv4u${ˈdh/c"nӫ("K!쁠ݥG*"[ R2K=S\"wQ(n[9>nnaKWGCfSfXu,(Ysj?T%̎"mQA,8d{Cgu>f9AOϯ|kI$!U@B_(A'2b5biۅ1wo 'L5-4,жT+fSqTcp KcꗯJX-A}H֠+PYO]|ȫs ǣ3a3,zE7w3"@GmBA3>75shFKwv/{"yGf1}z+tDQbA+ҷO35y*M 'Uݞ7pWY=(h U FbC~X&|ױa&D8VճCz$ygH꛱L7r^O]M8C>~VEt}!)}`4 jol"")h;s) +׹<2oRr۵BkLDч*{sݞo܍V^Glβ ѻܝ-o:6n/+*Ze֭z\3â7w~Jv뾉Z5GcR*cmd&0& 2:| 1ʍ(<ρ1kmnoZbr~bǂ]Fe^XC늕xpG0MY:'EWӆ[WC{D@?@̎$ݰv;[r+[#sRlJ(n:7 )qïAO#7p䅰P!鴃pGJN晸+ReD "qkƛH #u'O&Ї8`/p b NC'l{c|Ϣ|?#oNbm ^1>2&[%sXLMSvw W Lr3 8ië'YVʗ1g~ 5"q@ D|@bQM%n'WX%z6Ay r0}̵(&O䋐ez]}] ?'"d5h6-U,xEg@u!"DD& C3 cT3v>3Ŝ$9tw!>6O5'zþ)fWo8 ڄcej:,L3s҉D"m@;qecwIVuG&ʹw2( EKY+)ۖ XӍEi`~ }qA^\g"k6@cr2H=X<3JK.]Iو=a>F~. Kg0ҹ>H%i䋹yNIWqȔiU/n$@Ai$U'bxh_ CF_aiX1в.+ ǖƦSы,  FNis CkYY`(JNe>~w3ml۴HvP[o//si)flw5YBa-ѽ((g$o7jMP=B%Q:’%0=` !@pawj*?׵FR7t.54#e IQLꁐ s1WuWf%:_ܺ,70ȹ[ʋȀobMbCnT˃5:'Z"ݏ†.5h'dk9(VxxߠrqO.Й^" X-+bw`/wFJʘ)@=4q!yOz{ MJwZQucH×(5GHS^LIsE:\?H Jm)bT!R昇yC0\} [@81wܞ~صe>9~U܉4A8X ~Ҵw9^/І(NOWo tʌ;٤8m+!r$Q PҌ1԰ڨ"A}Ylf$_(kFew51"6@fCARǏaaǺΗVVb\1y3~}_kk1 w]-/T^)7#O/x tX.DIV/ȉ4u( 5ۊkəJ˼h}]پ,d#/8ݼf ٰT,\K ۱pY'zhrLnQ<ٮEfLGN\Ν ӝdr{˄W<*֥Z@l?N'vjѪS [:~{ȒXN%v{Dja 8xqIUy:[)d|6-+?Wh(8o\cGܩ[ZvcNZv6]Ѽ'GZkVVgIG!VY;bOiF0_jXL>&q~j/ZceK打z-\4p1l I}ڛRt֚%NT5]ȍm$ϧX> 8(o)-ڤS<0NyqcAl@I>GOJ$S&ٕ{Ւ ET̊p z_>HȄtM#i޷ 7cƾPwF[tQSiZ[ aɕ5_ye+6ӡr9wH/|G:yQK+>Ԯ hX' Bi 8Ub4!9Co WB~~At7#U#*9ap }?x\~E՛ۜ 5K)5}ܓbX)Ne۳ =`gdz(2>S_ qU/ [?[yS:?o[-3ƛQS `d!p P&? 2Vt>wU'Ov Pv 89:/<"C$(1I U)_V DŽŸwe?#r4 \lA#]<W. ':,OR=`Y<:z6y#8PUd6$WBaDgJ쏄FɺLkIDx (8G'oa52I4&ojmLviA3`j#rv,U- ۩VVMʁ[ՁSr45U{HɟZ-I2 s;*K}x G%_MC~&[;>R _lYwݮ; k[V߽ݏ tl$NpdǗCĠr3(" S :| t?L8`# xuLs ?2mOܤɌ lwj;i@́wV#WdM:1TB$)QXTΘ0lf\/.iAme:TGpTܫsa@fU=d3 d.dTf] `Pvlpo7"#R.s3w q:bshU499Oݽ*xfz"ܼ6Z<.*ߡEX!1uQxe9Ϊ; Gb0AD'whK("`;6T`6S钗-7x-AfR$)xI;EmR  P$B8k&8 (ylڲ,x</] ''GWj K 86ڐ-E hԄ?I'n\$ iH&g} >:!: Bg?)7ݕFuiķkEG.;O2"w4mԡ׻`q~D%fU~1w&1iJRC+6I V>ME`T.nv}W#3IcYL1{,qzd1<K3{XL+;2_k{wZd >ʯ.o][ڌAi]<BES?vXiTT:ІeUQsʦ[zpJZ˧_PFvkիьUsjdpM],@5S}=1/Ui r :2!downVrI?4ՎYj?ʗDS˼@9\dݳa?,w@G S$Vu}ͮABeΨKD72yJË^ϱT_t8)w rȲ׃Gs0Ľfa_ 9Iqz JD{Jv)P++;G҆BpCifL_e%;0 (X e֠&P0iًʜϤRy"iB +c$Hu;P;';ha&`4k%r4ߢM?@Vl %R4M_ta6m:zc {+&;MB # zpEi~x2pYX>XὯ̲'YD>_&Lz3,'q tݍi!⣈oͨ43jrOCX F^}?P|gǕοiqW#ga$|cv8r ʌ`bߌJ $?Tl{C&:l0u=f u%73IҚ-Gp %.]r{/('']Gz**<ə $O]}*"6pg\*6z}K@n0ơr(gOZE;~#3z7P4,D|@L#oWPB[8 Q%BBoL .t-3J~PLl0X= 2'Ov&-!;ɶRd#rJ[z,L.*v^D zǤ }73 bϷG#@ :TͺlMr$[! [+W3Gy H{:F؃f% Ql6 !k'7X\=: -YN ^]!B G4g2 m2q^cvܒJZa#W;JA&GO3F9ot' dz)dZl63$n>%$)`Z-ܛ^iM^Q~w]YpDH'S?N'}Tc)?Ջl㚑 wVw t5Nq =9ӫA qF Q8TD7^$Y+߈=@n/<1i /2ϤE)JߝZ 3:E*04`FGj8٤/ >(rT!>w__l8|e? *'3OÏMSk 4OD nwa.gaXsYF6FBBzoEO1q+=+@֋7FYtyj!FA=iA1<S+; #7cG ,10P(݇#:yzߩf7 %N!cBe hr^(;X]N~dԲsy>47ɥ0,7M lmxL@hF-&nNW0:c^wiٜ;Ta`A@-+-"VfR ޗ㑗^Vi8 &$[yV׏72clD25:rO !%*FU_cXs?XқWIrd+dޗ ;|%1SnUA؏XQ白~Z;O[]7a 4a:`X4>́_Ku6&8޸+OPrFA%of b5@c"v`([KX/uUCBz28DhE~aKK+R[ﲄ}nQ9١DB20Ļa^/D@GPTLxs0py>942v,4FWDZwr^RPEBSr@DQjQZ: *98BҶ՗?sIii&,$yiQ"ThH\{sjKx̌AoMtx?B& '{r%Rl9{b]("CUc[T?Ӄ lȡӐR[bY\@NnEkRHےc*x}` ]7RI3ԗ%^Ň4:,J@ة#ȥ.dU!@LfId~%Sd9Q\)ސO}һS O.Q֔vsϾOG~;  )lgiɞNICQţ)tC%/yYa@Ewbg=+B˒_19`[RnOV1-'J\ ߒDHW5[ABH,8Hd%6Y~a=?5#: ]Y(@[&ycN9dȑ)t'}.I΁#@RӇ\5K7b(|Bnǔ ܷ4VL(Df>,wn bf.;)Sfpql9&ڼa#oR-֏EBR\ ,>(/]4@;SR'[K.@ mY(ޗ9D)<#\*wʔUOkuƱ)v2(G8tٻd5FdO٘èbbAp%?wsŪ>ca!4*1/LB>sJ ģR .',9s-r_#5Ɔ,;@I>3RRn8yhS sw)+u+CKxqatu;eS4Q,_"UZ[)& 'EzR ~:g`MVFƇ- Mm,g4; cˇ(߄XL9zr|` g/k|zz;}ƫ8gڝ@jU~cd'qLy.9|.ӰVO(3qR无hEִ@@ Y08JL')hS}_4V @ =Q1G鹎oԱO>l@R!pn+j&+Y&rhBoH܅Yc0l $RK<30X/tx ?6f?xrE\ 1ߣ-wp`ȥ!w U2q5+q9Xv [re6=Z|VGx|l"Puy@C#rzlSxd dhj%P LaĘ-05o4~]O#9>hȁ+8'%; 7sn CO!"|?I+<7RgZ5\р q3_J):N&I]q1 ؄,ƽOѱ6Qyl*= %uOjUdl)cbȱ@5gYMKc/vlIB.Bl>q:K&\; ߵwFfKkX>ܖO_Q:#id{Q@: S':`R6e؅ |6ukӻ5Y{Jl(n:A"9tWc>#0-s7$+@&B% |Rfȋ=_d E^]h ˆdKmU©69q/hdrf&`BdƠ ;+Z)%|n:>;QK?8.6|f1>ϠԠ4I_Z~ ua{7賄~[J #mbB؅?Th`pq2Y;T <{ՔA(tnǮ~o]KV*VۦΡ6̹bZj(0]|[tڈ)!q%޷VR〣 2<~xf1CFRUڶ`ϻ$%zFbi]ix -nt`!NBTM^>!Jcod4LoypNJVfc^*00(\N +[DU^kOoh%'Nׄ8 #͜đPH;/)j1ŎGA"> 'LS?퓿Yz) ^BmNB臭FC)]WAq4+g+00t ȿYk[LxŐZ0#(ʍ̰;$?ym$wmA/#5 Y]8$: JCt;ns䚁 +"gMwo 4"?IiHeBRb"zYX\8cit X X>1L}뵗 +uueMGq ZPWS);u"S^p 7Z#A} WZ;5a) 16$1N3,5xJ&춘+>sf3ERF|~sl-REs݇PxجM T󬫉weV\d ?d-#'LśZw4ם0t[4=e4 ?.a*=@,zM9{@ҰR+A,zfs0YyHK9o2\ddWGQK+>Tl=VӢPWLkT | )lS4zIo:J OCv0DEYD$3T<uc`7y@˪%w,fGm5.b4-]};"z<(Nơ~qaR` [N leuD 0 Lnd(Fv\L\uQ*0 0;[]у" -h>|!e vaDc6Rh=y>UQ>9F/VE`pTGv|%ȨK<()=饒Ϫ0I$$V]qY+1R5Q N;tVKCM|y2obOɆ~t8o**hEu pj 4΢ ZM.8qTKD:Ye XhE75- ޯҎdAtBioDhVp5~\ WP9}`չD;ŕ Diy5IËKTf}kmf~HȌ'$06y EK،+j=* "o(ϗc iDlWa#Z 2|ށd;Q i) ܜHǍţL@ #sbŔ0ڞ>S]sW 謀r|f,a{W\4#$BCC&4_mz+VuQ k!R1MX|zb§MH/O&D>T.wZ(!$-ZS X #Ҥ)(w閩hSC)1Dtl8ow/)5[&1йDc[țrQ?l̶{#v"7p{FQy~c>kɷw"1 ES߬FgExwʮ4R %r4@&zHn<"%KN O]T"A5P aokW3yZxx62hwy c10[jL/FW(lA˽Q97GN:X}@ї{֒wN"Gw]y@IT<k tW)JYپS?Ғ`Mz,GJ @)&hJ[6›7:s@ԠSvBR,>̦ѸYn^0[Mx3!;td WTm\c݂PdȂ;U*_R١ kGϞRsD%-zQOaRL?Clj% bxD]PdGXtbGIQJy:$y'U nvץ)7a9R?׽/uٛ"a6m2bCe+W.őt\]p3P^ uk\#}ƛٝ3Z$Y Ib>ʎX\?seJӌ;GAY\|1YT8JyMOSAW}경!k%=#t7}[@R||< XLH-#$L_f[JQW%3˃$%2d/oDV0gxͅ%tj`u%̖v0bDb'$̖ (a8)T_]?T~eN1ɵJw*C2dtn[<p̲(j`>͛Wn"!<,-F>XNU }[?C1q]|jf]_6p/룻9,,רriyg᝜O&*u|)R'_KwōMk]hӬ3gA+so |?%,2uV8߃sP| _eS6lj} _\ᄞ:dYU͓ F}=(׌7TEN5H{XB|Ύ hL-d` uW=\}%iT2B;, b^ff"[ֳCm- 'ܹP\uj{ضwh;(+0;vC9tj.Ww*],-(xUI^(jx@E^3wʏr͵Ֆo5Eon!\5FP8|2Φv9(TQwA0@/3ԙIݹOH_FMY{ ,Vk~[+WKoWo.goY%|ŵaui*RquJH𜢃evg<"xGhtnxWF倞O<ө'[kX^E9l$8&MQnE6P@w 1Viטv!_Ul`NuR wiDDC;,LG*xr7`bvl2ac"_$2)S5#_Xp, ু.&v3YO]"[dwCd/72~ e19wV ̤MYm('X3GK ?`a=۩XfA-;d'Z~ymn5zV*ϕܳ,՞#74+09"P:- 5xѽZTɘʋkBlޅ>9Qȫ_0Ѵ~ †U*a`uc6*B>UPZ5@"gVNBZ7gAD7xvR ^tukj5P8rtiIf~fQe\&.zeSS3J:lW"a>ܵ)t5/JԷj<( 8HaX;c1a?qebBF̲/PW0:*HòX9V?bd\H #r/pgQzYSV;i`*&y&t8_C 0c[˙|/o4I#,"_;%A%q&jCq-maU 0J>U$ғhô.XDd߄Uj}:eR#V3hrϥ`!W}S@MF CF wܱnjS뻾v{ ?ߗǎ:XW] 1;7Ba2G"qr l.YBV^֕~Ď&.[՞C;df{,t$t7Q@t\[ *Z'ډH-e9lsyߠT79KK.M; kR|C9}wo)Ss`l4;B @׎h őqĿ(2'>UC$9uޯ9%}6|_9YRJ{˱hnϾ+e^ך H;?^7T0; h]tn’Z uuozRy?^C5pBH2L93=i0 :,¯4X־d8<7^CQسHxHE%*Ld #,Nހ6 ˈD+ 3"јOyZ& OXEC%Ƚ^-bGf7\aeR%4Уhhż(!ƈ|+p˫霈 @d,3TOM2j7_-S/0,dTK~mU{hPԯ9iI'27/{Rtfd[ˑ͇b$W~I[廰@(ZE4jK]`74M4Y ~ 7@댢J+bn{j>o)ZN˭n# '1 9:9*iFpR|y?ei(>؛ 5 f 1tNJu³J,0vaUyI:K@5'2ADˁg D8GVb*T\CN^13DL|O!X`h) E+Ce eYmq/ă:4DbZW!6w C48X4@/RM|ZQaViiUg~L+Zn3IS4` I[K }EÆS~pGH.ZuL7%l<#Qh *9~Uu5:J"K6)+x@x>M仢=ɛ ƴαbb|/zYeL3"WMEF׃&$m?{iifC<&; @ Hy% b|_SCuT2Qy&O"GRQt;|aYYr74.zq=,[١6dm7p~^>/Ƹ XQ5[mT; !8\HO#͞&vqyEWVLvV}1I{\C"p;P;^69++ۄ̛֦CG8ګh`Y%Z<"6~bQA^1W=52vǽc'[g[0.(NAs `Qk $hUnauy*jXLxh`H,6n쮅ֵ޹nMRm%n 㼨W3r51m*4I_l z?ϟ;Bs/sЁ#ACP+4ܥhRk:8I-7*ģdӛ vqD<=@]@"&S*.-x7Ay`\h{g4w`G˝c#~R_+ @Ǜ _-'wgu!(*"_ϔ8Eã̘̅\ΠR1ꃲ(j74ۙg&$>ևrV.b~ˈP=+$ι*i{N"Y"){:!^iX̔]@v/F ܡ]S.`GʾbqSnu*5!խHq؜p:.rWq]JPnKy`:1?NpDW">  Сjlf9&ǶpBۀ麐=u/ YnVXܭlL9r!,^K/rãTH_۠zԗWs](QɤΣ1қu[Wwo>cC5$)/VV齌QUNe\V"9@;è|-$`V-.Ye 袑NZg-T5i&]xkuQ{Y Um[oM,ƨ @:e; 뤪EQ~Y9a*`(~~yo3Hs^3fDNāɥ:A}Y{̔.ŨXxpBSPϟfl*`_(2jF2H=/$SmUcWhy;4DߍCה$ܘ/TOT@BŀIP 1A={CWa1\Ė?`r\shR#8NӉ +aB Be,d漗*Q06ٵ2WٞQ'?$TTS{oՓ8UyH=80QINiaGD-%i]4" 4MOČ eZUjc 7s+bcYζ ;ΊaU4Ra&Gh]yAlB3AC-5]ˡS\C٧{"1^wZ EzJWČN:tӲ ?Ĵ,&NI3|=Wo޵â1k:ӯ]:?.T!؇ b&)ΡR#'K_/nj2 eԝݒhL1%WfQ#dbHʚ/Y@ZZݸCnX *$@:D y]chS}PPi,)-A 5!!\nVnbWJGtLk52HbqEuhA;st;@\@w"r2 HT})#oBPlAQ(aL KoMF`R&zX9R6jqu *P?S-- TY./M22?`˭ :|? z>[? ܲE^2)bp|^EC肁7 SehOmR WouMp#b, x0?O'6+0ylCsuqYLziժJ|j ѕM !';jWq *{tU@81rXJ?aoDqeχ&F  ᠶ-SlCYKlwD_ıJ}Ce$= +.*P+IRYBH\&h'/+l@F.,}@A(VYYnv(Ӵ>c< "Y4?~Pc8ϙK6H5wUҼSRihF 0̘9l"5 &NJsc@-G )؍m.} KiͰDE74НʠWZ]eܪCh]gm^. *"hf׬^1Mg̸3mhtS(X;&y>?]BloӢA1'uy<X([p01Hcmٖk<㮝W.U66L5!PBY!ȟ\9־ABP)(P`DlP{ 9fe!3tOJYȆYOEʸ̞"2l4b?22FOsOס[|'4~ ڱN!ϒ  L6C}m=9]Sf3aAL^@K07[C!Zx`m4${c[s h3#:A mvm H~cIrJ#x&3| B<3goɚO J24*&_( ]:^/'m ,7{d0VX %V-; 0C6Ō {48$+7no?f|~s薶xjdzE[zz7u >u:)#.'m5xh#9!Ubb+~ jl7}4eF{{9ClQ nKw5k3PI(&#TO9V:Ggx gzOrq\WI&l< }hۻ^C|cW r;|(Aӻv鱘9 kI.C)(د*&W({pw(JE4jơ,uok@ɽB15^_j̃&ab7kk/)}ύ}\?+lzvG(N(&}w>< )|IN&KAّ ' [fj_EUF?6~D[;C<4O&!&=*:@NJsW1(*BPi9a*\TqxYr E%pci u?i0W 7w1Ls/#TI@{w∮g{F^< _f>!^Ze:pGَjF7`TƤ̷oY<W!Q?bzOTʧ_T7_kc9ͨ3 !ENXI9hjSJ *[]}OZ^HolƮO_઩z,kڠOo"az~?腗{G4(Ex+).đXF2u,QO*Rm~wyKKCWh!`ɠ"j+Gj,HRwBx6{-M~>`R9@1[X+Jo Q+Yl|I!2Wd\J: uR5~{JTIu?9*=r,~f S{Fp[%i zmsX-#Ay0M T9y7@XR19$~nr;j e{'4w~h URZ PMTk2"i_ $cw81ZE"n$:q4R%7hјz<:~`c"ƭ-yg3H9`s1 ,xU>œ/@Mdxd -yQCKHIdm!M2Yas&p(zbgS1Ba|R"K$a\aWkyo8I\: 8 ;r+jho}H',/TTƬ>Ntll0K6f„Dz#ONi*1e*jn(!M\[H`5|/ܿwݪ"8E˱(,ӽg8CzYJ7ʯbؚ*rjT[0&X'4+\_DEdGvĕ!zFxfq (j5HdSQ9 4;}\F.q*]$l{fdCϴ&zHEc]3~N3YY/cH^W<2i}r+(7];Яf]l="/hP9@$QCkXBO3RY%N PW%F!0g[\£,OkuP45Ϸu2WX,0^~7.g Ob \IoO3.cZ*F%QY|TOi8rD{ : ɠXG)B|$Գb[jQiYl+8NɆ%JЇU.% +,naR 1;TW`%usd}uLt-movmp5 {W#F*&]] "naPl(1ÞȞ$ ծJ$/5@jIiV  _zٝ%ox{Tt&G2Tqr}-c`6ld dڊ,"a910L9 } xx/BN^HFgbu}pC(N(UO{4op\]`k蜵4?=FX\PE+?HvLvX_>[Ч̓Y>0}j-;(!r?ơ:?ԽԀʤě[Oe&"6Mڻx_dm8$<.%?'3j?>cZVmYő.a[lfD%6΋f؛Wq 2z;, SaeӺiN?#$ٶThtXxlօ|_4$%x'$ ġY,(1 M':S ºm?H>,J#Y}ЩGuMp4µ=$!9|+rB@nY_THjmKyQt,JH"3LgN0rKz[ *\8\m6oJXTc4 -PCj+ZY }&=U.޸N ]_B aYrFrtfi֕}jѨ:E:#@dvv y|uV9|Jz]6k!:qt|1}Zp6",g)᫘}Asx2p N]4Jn~[{$}:j%\@;&5/~eo g46߃r.PjY,*ǰ]PCX\)pq(DcD-Nv8wm7ܸ] ,OH7+8 C5ӿ=׼ndƐ;thYlt>,9"y2DlMζGEԺ*(WZ ^ xܣӶM_ naT^SyeE ("[ ش&$)așܢ)YmڛV5ʤ:>(Hb=rSk_cl$j/Re`z]b #V.rcW0l%E~ˮzNsk %UJ< WRbE#>~O J'W;!6 EtCM嬱W24Lbauco@4ꍀd~ҔveJ)ك r{7 e}~m1i UM\̆ J1.g/~ |U6_I5OZaAι=&5'cgڧ]?7zk Õ(C]jZ{ġ\ofyb;){y;_th1aXjS]!2r&wgqaƢ{:4 ΢ΆQkCR* #>hJ4pii:/Lql%<}A7lqCc2J]H{g",fҢdIfn$9~^uvW.HH埂t6JԳS;g&LrE6<|8`6i[]E` , "=b  ۲N(ݭNMG%qI\V=bU&a :u,=GTaecDLk?e ,ePΩ75sN0US-7~lw"5h:RC@B<>py7mG+v *NԊ\J?'u6j6bUr B`4 ^K*'nny3UU2PCNa*n-4k/\h໷c'S!g5Ҩ5=jf3T1QPAFF8Fu%qd& y`69!aaBuCd)~E6&iqM(тsgQ"o ԭ8! hFăX&]`>2`xBR _[1ĩg%a$5JLZ#r6'4SuJ ڠ+ZDne )2qKRz蔎4!n%_/pcjdt\A l4 q4%~4=4E7ac ͙0ݴ w.>`ވ@.!S21ΰ11N%Pʸ>t?s0*9;p#]1DlndoFܗ2Lm?r sRB(2J1Y##Qjm1ÛG>16n]yDu-GͰo&)CfBu\]r"p~ A}Wq7 H\ a_Xj[gNg^'-O|r3V18״`ܩb`xn $*e.3v&1&< ԧ?0J0}ٷIOd?D0F*u .L)B٘#{L~8mvđ d=0/y Er9Q'+{mwLr (@Rq?h(Z:c0qVme`_6O$a!v;E=:/8!+@ʢ{1I-n' nj#Vcà}`>lg9{ͪVcN'Mn+N*-|ˤ@a85Sj]2x,oK?~T48935D+sէ@ ϱnmug꫻Ď+tוU|Ew8ަ d_§)\@$U-M X[8νp9ptऽAhyGe*V.d rVvͧO R63PwOKwXNfsg1IQ&Ó5cDw*F-B֚\йx0Rס3h%vBor$0*QN) Vˎ࡟#h{0~eYHl`Y>f|Ctws>SS儺qA#eET끠[C(d"gAԍ2kaX+㤤%CҁPrOxePm_]|/' A)Ӛ+GG|E͙0jY7<]ەif+tɚQ$'+gZVچ08wU뾻8M*n~?Nu;T}nI+&r߯\ނV @'kBP^.IAz'$GuBU,?irĄWʡ.gq7vctΜ5QjS͡RS O4;51%v[ڸ,a:CRԝ6"CPvBD~0UHL%}]Ŋ*Iws-+ hc Lo2 7B-(|m,&AvyO3m'Ѱ}oDvt{Lh>ȶp}GN(eonvDКwMu8ң?g쐳Ys~-źjnc&3&'OECyڢ-jC-ݸY"s.A?χTH寚ꡟ'<~ŢQXN\BR8?Xf^\&b84Rogfgca2 e))_rƔ:maqJ*t2N`|I~o5g`sel> b5$Y_4~=7J>c(b 0u2E~E4ܲHkAV^EQNX+]q7 (2,L[u<pamKփMgZcEDJj*4bإꤋW]u^̴@+oYSՓ4V. 7ŝ4gFSm&).ly`"B}a{Q4} e&7{$S>L>)ݤHI /niLqҏI쯯އW2ϭh>ڡ#C( 1]l5L侮+λE vC|f7VUʍW*Jݬ3YPD$_ڋzwLYbKvv';Ծӷͳv{9roˌa[ /INp,xLR+?v2 u" 7A8Wv3y9Om"5(/n6B{wc'q`} SڅH'G&P9"JxJATNzvb OLEx^7GpXTv~'P8 "DRr<*+lPRF\(rPc45 :*Ma`2q%H;m J,fQcc;3WT]1qK>A(r06#٬3k|q6Cp7#Wq ZKm$b>|zGr&Hd+dFXPCO +bIK:ΟY8jI[}ү/T{/&~uZiZ‡t^ vdʓ(]j灝Mf;c zJA3QUe S LDM|=OQQ} a |񾲗hR_6|00w0H"Nߤi7-$,̩-)!̇aY7Ꙁx-W˥& íge\Co1D5FՆ×9K! T*o^ D fMa0v4^NP2s{f|x0"D ڇ fޛ]R  c'  3ɷwv1K+ITO,/ӖEǩݡKz 95ލ,F}<"c|Q.Pf5-RЈlslBMIl "*g)Apz|D̰ʔ G&}Jy`mޞ⏗ yn^깆Jp$uS<7/\̲T5r Ir ԼGEwB[hF /czۺSfBGZn;Y@VE*rqP׃P ~&_.BlFj}naJuS[]١xޑ9b( (#E)yiъ]ӷMڬG[ 6B4ʅx]7!^psE5~q)lRfʦwؿ~v8\_ݡh/~g3[2b1jcx01׈FNhYEg8F I' a'q !A`q882$*BsjBZurOYtBĵ redk*r(\k<Vm9PlGD-8 OLm LwȣI($(LKGQG=!DZt/L AƼFn(M s}~!q|Tl8cߠ®rqUԹ䌫 2wR4$ydc7'9qNG> DT\*;ғ\σY x;faXS|7Q`I]glyf?$1l[d=6!%]UXgɜ9}an_j30Irz AꥢaI]Q d)lNJ:]X\U +;Zj{'ZZ_wcMWLh#(O^9Q:VsX4;DF_CZ l /J5Jxkcwl 5ƵPO țBZ 6]-]ҁx$ZLh$I۟QKV9GvMP^Br ; YAI3!dQ`]>"8VDz$VG$CfYkY՛VNm||NnZ 8rut, 3lR"G\!@5b xl SkON|k Cfe"2ܝCύJ ZJI?{#~!&R|ʸcpœ%cYlQ>5ŐHn/(q]ŝ,酧 jR%/kY5k"k ,&W`Y4"%Ο1MlGlVQ̪|mO<5{9$n:Rśd;wOa3 Tk&|/Q/eW2ODa VNә2w_![ֵRK(6\(թѥO:3b}PLw̅>F1f 6$omȭ&Þ>mU.,ٔ)C_4`wݛPEHl'GxM3tr/1ODH4p}caP]y?] 2PqzH i]4@]zd+W0zU˨1٘;N ᝄtdX Qیcsd7T#&:WO<9qج2U<<ձ?c}Yd:\&(.\dc+KR,D+ݙt86ϗF)mK-'N3TZjiɩ# &iF`mtSG֍6wydgD5z8~Fpuxf0_2sZMTtI@umɴlI¡,i]]V#J+J'wfw=JezR -:@CLu4o[mP|ސnjű,67A?L ]Z{iz~fOjO/`Ib7W; `8aT4hG6a"B* 3~p*z&Ν+e2Hq~y_?@7k'c$eJvlO tEXiNp.܎E yqM*jyժyZlLۀiioIc .XG D^睃t!O֯YW˻܍ddΉ# 9'/ ߹9q%U! 9 y4ȗխ뫙mD32ɩa[C׶ܧMRQ֠T^9mڪ6k[۸DF]aw!9\{WDGw 䉀}d@Nt($P/Y{?z T`9$k* {;E!ֺЖb-+Hр_,ؖ?Up(_|V˷ ݧ2q{LT Gw3?p\AiXzQuҬ"^__4ƸnRsWΉ"9" #BT/dAh"-۫7~<+>&r7¬sIm۴H km H]]-sMYAӡi{w|a4:HG^/\f:SÕ8&`|=@!~wsdsZh!pjQ3=22 Ld?k[%PG>pN98/CZ ,A"P&kzDP Q&]xzI 2-9@VP Ԟ{@6? \bix5zV}ONPO\,/U]EKδDÏhꃈ_H|ުd6byÉ #Zk(XBPT/ɑ{# pUCTBoK z-,t@Jx‡҃&-M 3=2}l]<}5FE&nߋeM΅X2_9]Y 6qHrѣIcʍJ 3W7i!@lW?V?^M5Bҭ4&{ ;J𼂊+?N;s\`.Fŷ*iDJv$VQI4[l>샺Y:=:e3Y20ЅrIk)6NyfH,z_o$}K)/é>x(2t*!B!] MZ5?^_G}O@]֭/:&4FVbH$UeԌ=l.ۀ׾7Mcj\ؔCPOxb>(xs?^iT VűB"5="rLCpGYcg&hDLԇEOحW|³EȼI_ |en pUݲQQ\%f"H8%J7x 5߉s>jQ{=f҃]d]ռ.FT4rɐ`pAʰ=g^+LhZm]>>U_n$BSJrfkcg;6EBzfb(؊c!> X|oA$,fbk"_w%nXbb*(&+aVQdd?= ᢙAw*x;u'+EY{ޯ઎B;+x\h0kC~뤍VؔsMXf46ɘbVA8;v z,A()_6sO6:ȕ娒OtcF۵AΎH~" BG nv 1ꆄ>!3fr8ΈvHvٷzZGd/Nz.'F 2ܪ20Zݲ|~=yD:׵ޭa).ۜJ1p0ʊۛmN/[Ϲ#1Y-JƼ{ K7~OX d&^,IwW4|旗yJV8#`0JI:;DILc ě:0*q Of[4&t5&k+|4TΛ)7/8IRfBBwq=#Sr^1-C5AM+noP8=6`GýPeWcڹ!'2ffp,s@zqO7TESs_b ݧWXf훊MbἨl.UOmxXrZ|vF|% w{%o.O"&[u4oZ?J@fg`aME,|~PNO!6khՐ.qxN+veݓI'P?1Q\vJJњ4MBKOS@FKk }s,5C,T䮧"jt漊r-EEDSP~!GfGCazxm! O\D71k,4nhB%3( S7:w)vsj[ /T#jvǘIJ`W h ٘bzE,=9^kⅬ4VڈQp$tj 4.þ7YD!x_>" ^ݙAgLAtmR-8DЏFH?.p+CƤŮ!W}U|>Ev"-Ny`_U#"L*&ёiHiyfg%Tk ZPԃԇC %#[&y]b~#[gXg%H\~y3`:J)v̛r(j A !ڎTx%MҟOefQXm)Q#j&nB, !.*Wdӄn#Sa%}=G]lOC2~񫱾a [y{ 4x seyBԻyL[F6 $,!+),u W$r9v0nlgC UiȈ9hW+|vo:>!Qgi#Xz [zH)bVL X(.IGD++ӪgCId&eRÜ*h2fYV]*FF>gb -arIs)%t+Z0;+J@-m>,NyT XSce jƜ_ i#7l_&NH, ~;+:i~,fë9*?8d:~c [-j 齒{ᄭPp=HC~}Ie*W{Y r[}WEٜq=c2*G&y5"ORJ钍#>A*$geC6Zhs+ԿP4p>:pc D:+N1>k@:Cv 1qiҤy0|"_;*gP$L@v~EeFU>F_vT& IBman(`&b0ra,̢x }&/n ԍeĵodBV[hz!뼯 >ANZ)) 6`:n.}N KM7E }DͅD7 a[/4 hS96 XW(+-=40CAv6WRw3!vP5;AE:` jAs-Iz3id D:sG 64K7ڵ4;%' `*h9Agf&5KaODB[9)jZ|dz')yKj pxN>&\І3x&/^ ӏܾrvyݻe]!-p|w6k >I4ff  "7@+sz~[h٫c!#CdaC\u"aq fBG<50qKFvs77&Q E;UoЪ$` D"fv:酔0< 8U m4wr(fGƗrihʟ;?ywd)$"T:a]AD[sOzMYsaW&k]= GmdM13맇B_0 5A-~1 _mHGG뀉WTh v ~ދJI8n•1Är5ʞ@ƶ磌 $T 04jT.ZF-i+*pƆ-(UG0|AJ_%iRM P*0/7kjHbx>)Jk|$Vw]:F-CN컲g.˼rqAPM%0"$2nP_= :j{\/Q61;=N܇= 7^Ji]׌Zrܗ<5:NlYBEpQ🿨֢mYRt`I.Y1R7ct׳Gh07Cϥ2 QSlڢ{i/ m!=:2?=MӫtSNWv?MKa0SXiqpsݩV @fE!kRMTЎc~?x'J&wG ̥Jr鋺! PQoܡ1^HQWE 5.CJ][XFXA/+@g/\Ƴl7=qCAAK=oq䠆Op"3ٺ> wÕ0:(YGTuBk[vt!{:?Ѥ}m1mRy"f^|ڛKG^*lQ{o[DIZ`aE>MR?Z0` j鑸ȏd8J/JwoµL7O8iH P1J'▏/_aO5{UBN77&Mա1ZOB:<`Cd] IvIۣq;v J/[ѽy̘ e8]_4l(]9$z.XJCtUE(gӢis D ?pZV{CQVazxc7ڽ Nt!K6).=;d%":FvW;1qOYlO=>RkERt ZQqrJXc,3\kV:SmtҜV1,FA J6]=G'JΦZMYw+כ&c<#gy%AQ n|igD xxL/u{b pۣqJeUo-3P ]XD,2-*]SHLɟnrf\mց>ۖ'@(أisb(ra_Aqs#e'],4|~aafs1ֳw~9}."- bv{L'4BUƇVv8v$^nm$[`crE3AfY\E*s?IUax+"EnHYCt Ic_d>N ܲȹKƅvmLך WJHWTd^O"^b§h_B[J!(d :(躰 k$z".G`L'y?5jsŨE^qw'6d^ڪi{0? H]iyUc' ^PHo ' sѿ+VK:򍊡 2*$ѩ n7+R~kcݛO ?ȝ@{ ϦbٶNہ.reh}u}ec& ߸p .@+~2ߡ:5YeNXMpl=qY NM m-%qSdvt8QD? Vq.38oć݌Y5ZA~*g=iQyʅ?s[=J[tBZB:"@]x!`/u0Rv$^EҤRR& nLoc#Uץ彥V aӳϣg}u*]Wg?LޚSnv%BO3O a^xij69`Q x CtO"qDӹSոKp>+^_-n`+T9=R'v/EnKҷ0sXUt V̈xTIb<)Jt#zyE$= hE+j KYm霯9ka,mX5jݠĀ{wOn.>;LqF+ ;{=Hgmr4'ev K+ ZBԋGQ*&,tɻĮNVte-!1kofBL%}ZƬ?;x"1Ce FՈ2<|KfElY2AʙI9 D)oxS_cSP ٙY3(I%9PŖ$:# Bj%O{D"ݫCMu6|!#QRih׆!bfEZ𨅺Q3B˲M;bZbMbOVu({/u8;X?^H(;'Fzx@6t-8ZPȯO91 sUi:ѮW,xUDzTܼ9FCRd=ie~<,7]7HO'0b+cvA,{=zEIq_Дe(BQX =X A!Ԏ Sk>ExȞ+k= - %0T=pk|*DE5\xEmiz&W2f:RdraPƛd HCtK LU N0aH-tZ{FOyVd%~;!ɦHtb)u9*䥹bNP\! "NWVڇ.ͯIpg(4QUIKNԡQd{A^(vz%[=e5Hx/~YA iPqm5sn/2i.s;JF=N2R^Ɨ" ]mG{Pc5֤'PkrጛҝBW5tfĚ\QPl9_s? &m-jO Dw -&̝>^(7U^YR yY| ZΠKI-y8\#_E`zR.U 5v V5آ3  IGCIAH;*[ӄmU[5r02, lPx܎` NjJ.kUUڇTӘ!'$F,#pAL:E9xРHlǨò}'_g$(;㘌!Sa}m[q>ЅNI M7C1;a['1/aAquƐpMpRWSC-ܰrj=@nA-5>W*iճSRoEkAK  5?Z |Q] am@3Pw{C޴xU¢2fK詝 i@oF_NyNV(:=fe2dgﵾ4 (!l*4rP:`h9!m"Ѳ;ʃ_'b c X.h2W:Ԕ{]RӈӼ咟.=J̽u CzUsxF ^!|[?ۤa.Κ5:0wm1}aI5W[&5 !Í4y6;ȴӲwa1|PY䳌3в4j9b|/oW[[r}=x6m t>x^,Ջ#u?ף443&&z P 6q; PGT8Ir:mNoe ԎD:a39⏑v(U1!}](;c(w>K_|_h^?GDi/.lfIn8 P1lE\Ƚ\W|rx E.̈ +GTZ %ϼ]N{@OML7 75)FO5F$ug xKIKB5C(Ưj1bF7Bp@az <!IИ~3kC U :U5pZcѫN"i 0P ;o;W7ȁndk!M瞏͒Tܻ1е[O/c4B;}Ax^K0ӧБ7ǦIaLAk nѮ;%}It;Sgq0>VF/|IY>4OK^n ߕQ4ry3raRLN!sKv<V=_~H,*ؔX;.EAΙݧ)7c4wxNGV"(rpja*k?+ K'y"ARfV"ho&X ףv 1pf횆D%Qh:*0aY̱]Mu{r GID[`Y` !5ss8[== %(}l%ZQ OwzSWYs]wgkJZe@w`C32K9TwNz@ ?rrٙ 8zǢ*VJgAkj5KY9qOV:mf_&;lzΛ<'%LivqLF[yJi;=um(ز I36v;W|լY\01%8; ͂Iȗi?mNX|ڱKTgN&׮I QC%𫸔,LqR2;c/rZk;β>fiӁ #/j/`AAճ4GAQz_w`=繟êb\ؔX,asK",$Cb^sUFgrNf[Tf6X'L~;=vZPtTp[LeeH 5#ul4 /->Dq#%2,qC!=`Έ{G7x h'E),?PI'Y7AƖeܵ(Ϫ/>l3}{JO9eXE9*̘ =nԺ{o.gJ_&߬3oWt֍OwrG}|I2=iGfiIfsh`K^mnF+͟Gy\~!FDM"SRM#i4U%.9s<)ho ]ӓGo/ ҶFfk[/}ytI])NO\,8t)X:Lȹ̦cD~З3ɆG^G˗Jz"B:Nrph'ÐӴOb +?-pH$c,S! +f*r#29!h7\HbA@4~g|0iߜCϱW߃[7/عv 8<i&t&~/!ⶶE 7k[5x,Y W!7^0{0fĻdNox R1oQ @B1FqUZzS"?À~xC/\> ?_ɋ5B!8?VBTy3`3IWwQe=?DfgJsaMD_j,cVaˍIWw,?4?7)&3>O #_m` 0ǘ+N9?[N&B;qIV= {P;gw Ǚ0 ݲUN>1-\ktI%5Smq920 O3Ãeas`5 I2^r}_Fҩ˸* nEOgsOjP^L9[VP=HR 75 9-풗;}U`\XK(:hnKžESR)jヨ? eIǧf$wBNě5%73<"e!'`Ib )rB:.r%|\50t(4= @.:n BC(XCG!0N!`]ZKΫdqQwEq<_%겥 Y@?}NO\ 1Y`o/ՔaINWqzɰ9&kݶ6.\РZ#awZ OԉP[dT@N/QV(oy}4j $ 5܄p}7Nq!%@gʟb9~:E";zpJ6U }|ǖ=i!8α$I q% 3 % U&5bgw)+P_sR(n-*2Ϫg`F0oЌje0)@8֓+إtl,,D|!cUWz8YaH*bJk-ʅLy -ARN*pJ|SC=߆͏̽n)RkwOew2U S"WWhA`2 ?#P$^.|PL%Zjǁ]H;28'w<޵MW'\҅6fUʙ '-S]䓜#+g$1L\QC0Udf릑kO_> ZOΨj:ϷEkBxn2-ϤX_ޟ2wcc)ۉ`;A;,;s V%H6JAB w ^t2ݟɆUȓCC X!.-&;AXk+HξBkzIuJc??N_81T;`UJ;:-w JuWR +L.aOX/QQ^[U; 'zT^,NCҾ(D9TЊ ݌膄93؂z b6eF-Ϛh0JrdoBK'Vb\//G"$uAU؝k%m6gB Us;|l@EHb듻lY&z#؏OʶJfR_pϧ'rnwmnshiBWN'X7V&[y&랔U..4j́(XppsMD#8%o)\elJs*qC Af;]iI$Y/A',EO2+P~̶'.Xw2z[2݃'Be2fd9MO|%H]lY'e9a#HI \'WxaWETΚ6*X@߳3`YwJضr^Fa`zhR\x]::" ~Og<-;I?ϓ0X^Xs9 1/^5XdSjP@$gAs}# 7"kLjjy,A GmDIk:F7[ PoXeIz0=t[{&eV5c0!p/T̆g:EnB@ݏ=Zt*]B)) a%vPxNl/7 7&D"Ay&*5VA;vX,#? JʵN7X4eBK/r}g ͛r84Y^XmwD3aJwbcY晕X6q8?jkdp] !5pٚϙ 2ꃫu/vu-ot0~YLx<`b]>AjLR &;xl-dpf NէOn0/l@cQ,kRYڝOH| le6WX{Y8`0w"2y|;@JHjksq]^@0xƷ)c"^ϥ`(ã0xPdH0A:[v_=gq.qac{ím^HB{2t)^ir"_sӃ wvآl(\o ZIUvm'tEy?v+,p᪽4.Ka,HFӷ֨z:4pi{7~~@XB+!hZMcwC<Ai'2Bp'a=INWn/r9h9"1:sS񆄭{:UQ/ {ϲKYJ3ý~2J - ͵j UeWy8tZ3ZBVרSOf߈z> LL}=<EyPD9U,y`Z6G=K31;ó]0PHhI1q?omww.>+f- 9@+f="ℹj0?3!"B{P!$hoRΣnW0S}5 s+c%ZDFR^Cy`ǷNv'F'>*;&0FW ~!- t\Ks0w1G&[b5Q)KTNݼcRI;(݂p[C*se4SE)~9vSsJE( :QPOt 1x#IGr Z<)GM V 4O &iCg`8-x8-(ƉLu͘'A%fyNƎё܃^[\G4^E[kg6D9;D +,<.± W/fvN#v#b4&8Q Ab[O>ҶyZxL JmFl(Ų$kɠQ$6* ">G2gO#e6/@q%ghd6`@ʥӮI|$=H^0ۙkJY`e=UqThY )W_^IV{e,w.BJă`Q:;N ˛Z+KN_ΔRt0fu#daL{I7`s)kc$ۆݾuq"}3 ^g$Sfe[cm-j`}HxL9*IB!@ W|2{h^ZOށ#,1 |ǪﴗAcOBqsx&Fmg:{^Soq\}Kt/#뜍AI㻳W,6kMη v>ڼkD뗘@n,hj ̱J"\(‘tߏg+ı%QI^_%GiM ԩ ]Yx,ܬKԼ@ؗpz^_c,ݿCe\"IB"u8u< ؘ@%fvƓrE9́\rɚXZJg<en.e[O-OF 6cTeaW i8IzmݪviLbI 2*xdλ4 x9(SLFz)'-}:p輇2$7Y䂍՛gbׇ|.mt #%)ג22TH VC*_H tm  $nL}BUN .,9qȷܿT Xxϓƴ/5e]MHYKwɈ:߃ b x̛jC>[!"նG@ {JʵcJw趎dUMԾgIo͸Է i!<'w.a^sFdƟѸMr0:JIHelF}K7qޮnh/m;=2-AK!H[?7W>1U\֡w-!GJĹ#lt=FxT^}QSpT[Ed/%g~c !x;-H]Z-Ab JbH.[L`gO"ѢdSXPͩJaYP >ױG1w_푚s$P@CewZ8W P{sXsA] O ){[Ô1#= ͵w_$I>.|wh&.Z Qʰ3+@cZ@1ugͺR}#=u9zsGYdlՎ~@\UC=Tkp)nƷz,7?Ŀ7Bڜ>$tfW|ygx*ۃaHtp>, !ͽ~X5Jbˆ2\?pMu;E=]ænŰunlО[2c@BTl׳IZ: tI&^zm`u+a"wJ2^&TJixߜOBDSo_ϩ[#2 J nr1QʮthS|:S1EԢ)e*jӀY`[5,? [}2 p֜rsET_rm*~ (7H15i*R?A~95R= f&_^ H! U{k3a]GW*NeOT"qpIb#xr>hz8!A gYq< iww_+3lFKm qDO*"YWwlsąKT6wam8hj':7G<ʗ\7jX|' WЁh{Kd3 p2!C 5r,O6F-)O9+J6hxߓPuFی =IbC]3- )I78DR}z!"j;vx8:1F:+;wЏ;$#=ɮ4[0rZyp} RCW._ Pmfϐniႛ>4N~c"0blvT"f,hRO' ̋v<7 11Gr0l<|BQ^`o h躢*yG\v!dgw6C{woU~"s5GvK Ȕ|"j}k-R.5WS2hL:y&:=f6k0@0 r;a nt*~(z gpqpnbX 787)Uw߃#Ʒw'Pi1&K3s,6;[,\d@ru7>,MyIEYm7nXE|߂RHUP$g~zy۴{B lұ[6ҰĉG5[RփpSB]XCTQjW7|&⿆a{_8z8<]QJ]= ˂Q < ";9mt3Z(Tx9*݌11 4O#|1ג<~]QqMܱ!>CЦc)oƉ%ͼCO, P IJ5BWkI8 g rAW"ceOA{A,M7V7< S*?46Mɏu?JOYbfߴM|`EuI,LcᡜJ'.̰yi%x>oGeuEQa!MrfW'eڦ ?4sjOlS)FܙST8ØwfEc@ @0::ҤC^&wz䙗I9:S~ -@=4F#xUܝgaevvm2aW볇`" 9\?!-!V;[;80u%/K8qϜ=Yo8P = KC'*䝑hk.';W咤6n&>,\TBпzx 5.m~F_X_qTey4+^5qm2AK_*#H5c/ou^e9O\DIO%ǁKq(4W%ǻn=^L`'~Mg0i#]&^_ЫagZSg겳[VMBItQ{ͣ$iSUA#[G PFZ?Vd*aF) B ֘sd @CQG;n-o|I[tᣇW}A5]F:4ѯnn(.҆NߏWIh-ޱQ_i<(PT(L1 Yo >7+ɥ` X֡"-ap=/mϘ^: 䑼+ Hu9$RB?G.:A1FBv N( pӝo9ZY"|"|r1w Mް5 ii}J-\LgD.eNj#YAH"ζg v} zRmI7o<ޅJ" tfSÿiWfx^eʙ5Up ϵF&eZ1m)_E(Y/A %kHO1IV7=v1C-Nd,e^,7I~\c]O`"Ў8%s(CCHjrܼU k8(_G0Ju=?r%s&H/!WٿlnjvwPi= jߊYIj9uLԇFrmq,A"i$s | ͊TڬE"0̉X繘=sOTb %i+r7̑4L`;܀# e76d8tma8yϰa/"UI@ĕ?嵻/ngF 2 ؀m\~ ;з,Mr9DT+٦j4Ÿ>"4c.963jZ,ةF1VxtOh W` 5`EM GIj@SD, 'ke n ݁A3FwtEf?`Q*A" s`n 999=CHL\D2*ڬMo6ߍBadqfϿ6@Чd܊X08>^ lI>}qvl?1}2?yxm,)d}1fXk̹/ K 7I}\.Uo1f$MUW`F5'&ó0@bم(#FF(#wl '$gQ57*5Ns3"3Ppt0K)ZQ@%j)4Z0 p7|O!z` $腛xN'Q@VL#{-+0ְHfCSleg&`dg@](L $QYs°$a雖NWx_,¾$EQA tTxpZcO"=y鎂(A*c(Ij C䉳s*XнoDE[%IkHhU>CdL.Lf9]GӪLY;yo2"zϦoZ(%G yM7IK;x夘"&ߴDh҆mN9H:J^Q+~OŵG;KD GPLnפ[^IAOWE>G&b)(WY~ :G»%Q6W ^V%j"U>G3M є+Hex[;?I[8@,7 \/>+1!)s.V# VR_Ϸ(U5qihji+hSs'TI`sѨ{Ņ,ȸ״/M8r}kXR9xFxtCƱt HG<W t)f. 6|Ʈ8ͨr6]rڧq`,!~ ~ƚsnn*.vRpw %vK Jc]Wo 9)x;ǢC'bhkYUUTtWc΅_yh7Ѥ{ ②ddXơٵWG1|&_8/<.-ޣLsPн"'k6uj-|U69[T$,[4֓M#f$aT{{!Pw7*ɕIBSXչ G eGTbB<>r-,M2i&:U͠Z5Ţ$l4k9ooGX$PǘgUuKuMу[WIt(ˁp#ډPa1=ctz@n /:jϩM.pi{w|{'{C6Psvw\qLXQѐ:Bе?; N gs~ <]JmGR?vGjy&K}f#@Adh z ~,'%`R#s+M3NTZ*驓d/9p|,NV/*m]T~ρp,RiVCŻJr&>dNҢmLRd{6Cl-',:qa.KՙcA`˔;z~;n 蓠* TsAaf[۹09 خ(+xߎYpV*yTɤz{|SUt[y51n&'0ig>٢)vyA!$[2~֛.5U s.3b!S~:FȜâiLoKoapBXlĦ;ŗ s0A==YV^| A8CQ"'ɚ^J#,gK!ض{nBሟׄuwpD7">c_`>7רnO+E^J'gԹ2d91zn|Zw?A$4/k a1zx7Ӵ/mFCM?C̭0c-WfeLM7zw_NLBl_1p5G Cpyo3/EV-`Hಥe}KVCʫ| .F^ƍ\Z׾1L@& ̢mDOz?~M zov? BɬgD= P&Ofí%m; ;"2jW`N"3VqH~Ӓ:e0I)߫(|]=@@͆:WcuP,@ pf*uɑBlp)YUPQ$t`}FeEw?b@I޳'j[ #ҪUýM.;ޖwN2c!8i R]2Q @-OidOF_Hqe q|`ԀLcMYT8$DF#ZDb"Ɠ!bڅ /@)hKY EY?gؼ3{;HGV|1tSҴO.q8 q oO4i^KuW` 6nJ{-@Dt1X>XK*uhtGQ|e^vȳlu _g飪 }6$ܜ_E`)gE8,H<,l\UiaEj$Jx]*k‡_.: XS7AɊ䨣HCH(ᲹZ2-yNP4h4%[]c|_C|B]}yг/jFwLoy$UHRgwr[wS2m+ j$\LZ[BZ)5|F0,Q:q2_YNTd L. X[ÍSSЌ儹A>1"q~~-V5 'VO YfHǒ?JX6zfkmиa@ !/7B Zre|A ׳j >P^%8e7]*P䛹NֈES8ڎpJ/ӳCbA GASY`.(TM +fu59j*2݃X{\< NT9CK|08&] cn]5V-G! Hd7}aW)hY53wd!TUtoesYW$TL,Ik"EZײ!SX M: ]K ($pbehP {ݔ\&߬ ׵G.! 3ReЯ֖2ō\`mσ'V4(7ɰK=%drOdmjVn{W=,w+=x\gK f",Z9vڰwMSHL&ėCtjܞf;$y 7ب/_aHhlHVɾ?^YXn!$goi&'CM_76z'T2nAd 6-4Pq"~H-Ts}.uXWxcK˯5b+˥@c3,ơJ**︋X>>t{SrFkcM!n4;f\r ͅt++&+3sW9A{(!b 7zOrنAW+i4 E&r6<|R >kS&wYMj1.yL=]NW29)z]-;<D$a.Yļ(fDObeke3䲝6fE:, ֿ!'2 DteeMZ+=199ve0hT<_c%bjb3mw[IAvbY: Q~~X{vڈGTJN΍I%:YsVd^Nys*d7w-IR.{B])څqDߕƻ8n&"mՏ   m_ d2F悏è U 쑥@$:%Sɒl;}1<Ԓ$^хk"7Ur6#=2NC#^LwXT3/}`ϼXH `0q[0G)"l>KDscms]Qzjtu(C7cl2gPύr׻m<3MQ kVFaX'S}~P/:٘/yd(=l'M49ɱ`z9K Zb,!?/Ky̵*Zv%zrxFA_gfA|/"j4w_ʙԪ#gq pĊ6AטYfxe9&GBC kE=紉!![ίUy뵪9!+(K ;5V~F@WCL|'=W[;%p؁JLb#֏f\Iid^ {P˧jVZ$XVPE6$;%n4FU$rb{eԼϡvm?'cCk Tawu?vRpi'l6:P WR޺Ժ-l2CӲ`=0f_q|%Nl}[4K EJ4Ǵ;YJf!ĂNRP)`uƱ)5^m,Nj҉^!@pB+g\,cxcŠOx55+zd~4*EKrJ䱺"3|}3 ~7 U 1o8ʂx/p()kBGĥ:͒Q1)yUY2L ИwݣyՑTF&FEM0|qd]J_9'`T+}&n23#(J?Sc P/D͍K'tOڢ=eEs+_nG]ˍdkZ1qL]t}R2H?׽Z83p:{|ldQwB# qo׉ysof>')PTFGÃf5ɺEC lj?nE%h`Wb҇w)h׺ iâ^_ uf);t%嚏NB\ʹY h]9o_|FSoqFPh/Tp8t4J0i9z8@yFEibh\l v HO2]);)@;Lu%:HHH5 ;gNbe-FH)Xz6̘қI,Bx~\tT5u?ՏCz@QYoPh-9L<<6&0Zi8Qo,3_FoC~Ksk>R`^w숸xT2@%U8A(g֠GVepG뷊O>1 "!CR.U1L֘8:x 5;eHtc)4gKow<=)$r`T$KfsFQ/wC4=s*Mzv0>>İ݋͝FzI`'j%.8$[oߜ16?l(s:ٴrSA aOTZ '[I>r5! n#C(OMCd:'*os|Cyk@*>J#U|7dXh 4"~|߉ aU*2 ҼI^@nDU5y|W(] z2ެn (sJ`kEeFKjI!&ImMoqeCӐ!FL },pJ@^$WîARE繑\$Fj)2SXmeؗ}ژ뿔JӕahKHj%ϣ 4g[(9Q\o^9RjW"ܸG(kc֕E;E濈/GB-(Z)EgTD8]VbFֻ mp ?2=C4@rX5!4cIcuh/wA'p2D(RAoc.E3&^e e3"3r%rx("YpW] KW7j !wGl d0pz{13*&2;A `ȀLI$ȕkf- ~uB;R"!;b ǐK,fxh(tw|- %n )6%_ƱC LMI*ɛb-5>JedT2C0hx.룤WOo}WEq G۵oQ#mʟN? l}iCo72+nCTD() ߟ6e?2g"7DL=m-8&ݴ|;KA:/xTm6Z \Y5/q2H#y_^:4p ýS!='r$#n7+f7"Թ?YRj1}5M)#G:Pi~)nS_?`[ #Jl,x 5AhXǁ@UGbzF`z~GkO_1؁qZ\:[<9št_'(̭^[cqN}ikSFM5 He4ɴ14Ƚ L=8# v=U|.ε#ӾA 4ds~0KN ʄcQ^ h8;oU钻u4车J.ʡveTMYi츹\zXxk#~nP'}9}xݪ i&-'+z8_dBst}ϲO1`q7B h)=H 旰+PxRlZԉl\iWA# r|bsi~]kոB$v7|QOxBKb!}/Twf6eƀD0Mq$*״QhGזz/$U#lZ0ip##. <@O`k:4`]5XnMUQ kR?NW ;fw{]͕& 4!r[Wc%SEh_/hAt)c"&ДZ.F 7lOU3efiZ|;'גW3}|)% p=%3c#J$lp;_g6k*wb^ø6}~hf!DZe-{鐒fF'[ہ=2ep6rIXBQJџ6׵j`DuxE~y@CYEm$;__=߯*s}g~6eu9O69\X_051t Q*W؃uNs_A&!2㥺U,O1j㉩ P,"< Oe#eo4n ".@fJjX+ve7z #Gq5)vւ˻8^bF#hV|ɞjm,gWJO-݂}Kx7MeB>,;;3x_@`l 7okz}⃘qq+.Pe`3ۢK X$Ƭ$vx νCCyl}a}4evI[=hɮbI?KPQ"Z+xjcfJ\MPF΢%s̈́m6j4OJA@af%M$*ߝY].6Lt: Z22A,y &âx𤵳>zr eo<>MB7OVtcT۴dMKV9WW-6ge\o_'04O-KFrH\Hh팪öTa!)~nz6b<-Bt~2U%ʘGO/Y}4Eɕ3F `S,n3vnIXj!ޫJɟV$}<藔أUva }N`D#w3cMP/gWYGb7Pc;D~` W?wKēgy"+h}F݆mbUL^X<")P,ya Sj㿱D5z6ZBȊ+&d;)w;%G#HL&"C%,!a㜵5')N3oE|wgC: t2BmL܏1YԻ²JSOPe"YCz&z'vy^X'%;zbG)*F';e_^ilΕk ;0L2HQD@`Jý6QYURh:M)Aׅ,zOڜ=tƯrRϖGlˌKs"Ms{HbС\VAs&]ө}ށ0&TynuSKz+\9C,KQ⁵cAn 6T8& kÿքA9۔%.W5%{mԈW\ǘIj@"~ę\)fvI^q]zBAR|J| (+ 9&W ts*ι8ݺ^UzkOx%ž>@ގ)֑t&m 'H[l늳{QLOfл/[  F|gn^.Dd'x0gJ=|vL׏&} ɳ&k`qIYoy@(?-^0S0ĦΟs=D~+ְ1*Hg/ x#fS2D9z̩Fi9'&)VG蝰z zgǢjcqMȩۭQ[?R&@nN PWP}&N„YQGƙ4&$ GX)$'K}gt6s:^;L;%0;K.% JRe[r5iG7-J"1b0x$)!^Ӓ{FlY&zVC h- Sgl+cz> !$4w=½J=Tfr>~K q]D; >mW*G~),KOUYGʢ:Y =52jm^maS2I7H >=uO UJ; '7!d_xdzgd*MZtr";c܋OgU&yARqsr/;aJ9L'w&ЩwR1iC+TxǝHATjq<޶ZAhLkM?#@{v/`hf8+8M Z# 03$ܡ.MQLg)>;Ѧ ٛxY{VBi]`]d/ZM+siJ n 'g%(_c^a Y/Ic7%gbR _Ge) uY_v)h EP<29FSs&ݬ4A^$oR'z éq:řۣKFF/@)_bYX4~WYЪH83c1u_xVMzԋ0E7Vhgli[IZDž7jS0 g6~[G (=H+ɨ<`* rm T=v&c9m-va9E_1QhilTxfϒ-^U΁r|Zߺ1`莵8.o״V|~y9"++,va24!4Z*p%5^KXOD(֠>উNo;y#׉@Onv 3(Fٖq,)RG߷b~¤D*bއ`}fM<3ǔu`~9 6Ka E%qN`_Ds}AS.'U'?})+a#/"~]G ز'n~bHQ"+m&H32VpG?VS?hɸ4r>ot%Y߻,"B}AVeI'Ynn\.${ZYv M4e6DA܇ȋPe{@wdrׄ z"4*tETth_&XqA5Ի"JG].p+Hn5.vFϵ[[|jW'w5%͈Fۂo A)[ &Kq (w0jhnYygaH2AZ!,YٱQy;M&7@5kƊ:/TqV#ȴ.d&<)ݻ\-S܆wu#~;Ӫ0囗=OcMAܩc`N 7] ><l|'Yȧ:OsjxK52~#9V3}V>j DqrM8JoLU^\e~8!i8b6W>WVGÅ +p!)!kU\yOԶTeg um-ɾf&{H~2st<5-.#29JF1H\}ZΑ YcZopC>-=doZ֣"=M`WBp29?sˎzGC\¸Z%k&3tn'`3z8Xqxw2wL*RqR-e4za<mc?T2c*,l̦UTAyQbi&+l;OOwFN=^@uwL]Ski+QjL B6Yt; ~uFn`Kd, ЯE*NO }1h(h.w5X*В`#?oH] E/mrx'3ӗ&~ EǕ@r8%M[=GUrJ#̑K&/z4Y‚cXgy-^[G$ . ΁jh{Q 3~Tn(Ո?I][D o^$]ˤ0ʑŸqa hk x`VVl, nNܐA%cD/y"l@)P b =+ //gǵoEt`tF?1ll$c} 9 Sݒc#m40x'Յ{%$X٬gCo- Pgy;_޵S}$Fe`v5;Y:T`KdfQkS6X9.&K*E ׳Y%#| Y1Zơ[SD~к-Ǜ ^M-^DO!Scbs4jmCW(\]ccM1/ruk) Bqv$JM ICҀŭKHb?STּP\Ŕ}x!m; rّ-MM 58"wfV#2JgkN&O'̷IMx94lC}Ǯ@V_h4bȚ8Sl_F,31=y*V,)22Aty=siah:/T.H!qp O,$AA*uQsHsv2PQi7EQ@=`떶+C* o+{Zzsۀ_Կ+0,>XAFo`NCȇC=E8(!0ю5X4&和ԍbr"kBJ8g`:{iE,ěf y8|Eٮ,2#f 9&|^rЁD⣚"ˮ"jD g_|WNl{g7׿yVhe?lrkhW9.Vѕ łl5J~K #:}^33Mvjy\#[Q i*! /DQZthm36sW* %YA܌z2x `Bd)H/8@RӋg2=GԦ㣂EJ7!8EP)]-[46,2VS[Dm'}tj T"h/ C)G/0g{-d!eTd")!U)eքY&DSpu#01Z/p.;ߵelq(#M_Fb~iCW~SŞzry $#A.M:zl'c,k 0ƻ)DjCOk"~,vȶ$N4pK';#+TXcT(gM qjpRQ&FPfA5ngcɌ3c" J.=B( YœJ|jcU'phx7s}  0>J[֠yw'VCp˳xX&"RB^FA RBZ FCoږmm~RdGJRMQʷ`-1&)b}P9aY~WJ˒#q\C>=}_ (ll+o* ^4d]ެЩ嬗{y-IEte`p?ѻ&C:^G?YP.*a{0NQkB(6H ԯFl{)T) z/@Xƿ^M]s|[Ood6")KGw/iHxQR:.:iB@KLt~.ڼ_׌Fzjfb6p0%45 5AOɊ/NO|a0we |woZ>`vq>VkAeH\a]tj=@W'KjK^v_7`Bvd:b\ Uh.'V:4+ qsXޮu=-*Ʃ|zjf1:'O "|y&1Jpf?❘YC)Yʶd}׸t{B٦3յ1/Z1zH+5,讑%@ҤoSH?ߙ\T YQi =IͲ\bN/pwވC#56Piq/t;^4%crѺfX6pzO%.W_V8 QFz=/r#ծ&.l2[\W5b&#*<iL7ݺ< 铽I^֎[ZZcÈPr?ixǤS_(Lb[zieDV.CAiJHAgG5%fL{~Kp4K!aYm3>ii (;8; :-I]"9|*a-tWQX@ .gY,#etEm8le|o"5Ȗ[5~\jvcDX6?E\w/AO9kQ4 >rB]O"ɭ Y_~ RُDPf~g4ƤZJHFEX0D!O̅C[ڷ>r? l;PHorA/A4_QM;0-zm^y;_.+e/[~t <%,ۻ[^9ðI5qN2\<}flV.u·Y-;݌ģP).~S4V$4?LM?f==%`| O+f}؏/&N2H~mfA#odPjUI'@‡QzGNE3fS ;3r>Gy%tv#1g쀛|Ggo+p gCN 4<639WݢFd7q){)tO)t c{^݂77pN88c[ak%3V8貼6;f'up}!Qg%A8Ks wW$Jwg0;Q'%/=fbX=6Z16c~QzϖIw=y*ȅEm@T|K؛ Ü IWvK.1݆9C`l,2FZs6*/8m/WXAms< ,`{LH׀dX[X"z4eJ`fa:HFM`?*Vrd'yROF"ؠ+l6;n*L.Ws.[zʪx)EP$9OGcJAB#l/I|ʹ9&z_leJhgv1u83ZYN~D=G3m_uGѝRX47[֛k۽xt )x,# Uǟ2^kC3SI4"aʄM8r>XV 6 \uh#W/>ұ*\rZTy ׃-\EwY 7Fv<*=6whLC4=u&U.{'eFi96y8ܮ99&F^6[;X4!HcsvcW@d;FkηФ-Lb8Qә:/-:NˆP{R5eN ggȸKtJ89?抁>+.VJ3JpP x::mKoP 5[#hu ,pRہ$Gtۖ(zlP,3w@\ľ"?(+^X9YBh!ĥ}[q6c3jA':IǮLEpD]'sm(6D4K%~?qͲ4~&g/՝kdxw?)3υ7r#/C'G}Tmӟs\B?>$` .Z"H©N'P䰟مٸ΂b?ʋUz^w\1KB0ޒ'_4(%>Ys+{piya_M0쁋(pU,k\Ou3Uc#L&OaA>|XZ/QTvoS ZoBI0Z:`i]Uڔ|Pp <4mV̧.ly*gqG+լmۈ _<=းN`K B&خ6촕3vz4~-KE4,1N*~4%=\*QWFt =|B>fs:N ytX7xwȷք8!s5,8R>H4OWd;N0^?.bˍׯY>? R~f>XDd3D+OJ`fmFVh-jib8r 9D:0l 3Q01'ĥCFbnXkSR;PYl]W5k/g̷bmC? ?O?C\dףL-އJBѦAG z*<@.X:B i^DJX\LiPChd?F K@(rHfRe_PEsӚ ͓@2VNhٺ*܍o P='"z_n pvse;a6%O, U>:(dlT`8N#(WPAva΂D8_<{U0^zBuG^i\9ޱ"L[Le>O›ʊbeW !!QޓaLJ݅=C4]ܯ\ qCuiKCN)J`qٍw?dNI^Qךz{pbAGW%X‰_WeILN1rDH_+f\x `i~сf4@%Mo,k6D[hO "g iE$Mݩ^":)H>_lRYgƞ -RL*6A H$?/CnuH> OyدDA@8R*DmRfkkx{Ѯcמ%cdhlY=DIN.ij L[NQwN"{b vb*߯Vs ncx/Ȫ=qVHA%t%]Lh9q6BDو`A>L0-^Ұ#g;E=l:~2b^ $B'!ߧf4T28+"GJ<6iB9Y6lݮJm+0?\9?^X,/t؜Vuj%7-㚮OeѰ97_p Y͹Ndc? . Eh]*v(DNՕH:;"~hyJ-b}AiI-m jmtjT6TJڑ`4}H/Nk 궗3"fokhaw< &s;AfinٛhmzYtzQh+iD (nk,glr\@[.KXϴR_V!sKЭ%p9:G CP[?Huo9ƛ8!WL"dcŊ|Ii~.Q{U苚c͋]EJ6 {ӤQ" ذ6ל[~Z4XZ%@k|c]')behWuč]h UaƟX5Ei'({sIM-'s Q95]dL }7 {7Yz׈ݧϩ5rږV Ua)Ð*lҁ:lu c[wgX~8Zܓ b@60̒ jl8rE ?ef\0|Ksdh9 $R~|#UR L-`$7OK3o,Vq$DEʛ+nKVnh-ȋ GI(_6fHd+t 3k Cy6- t&ϐ6rW1D=_g/QX*gG_8p'0~Λjzv?@XB)5=T y|Az  Vhd k[V[wsX;[vRPU(e0n8x,Fմ4n:'PToN7X_ Z:^ J+u J)Ŏ;3|0{)ƞN,ॴM뀿f Tě*Mf˟"s1*VYô JlY F*)yyK՟^ |4=mu2Mi?$/Ba:SDNj]sz H)cAˤmmT`cE)eT\w,@榓ۡq{JCSj*{-i򊔶ʒ])ᚓ%å\9t%*D$Dv<ؚ;z`(1°CQ!z 0pF_䄽*`oM1I%J>aOhĩH41s_J!u9i\0= cnH&S˚M < Kcy0sBE, gs/XDR9Ok5y&Yȷ? Ay#qz2> C>J≺i_anjhlo<p XʝSRExHXv9j)41V"eh/L+~cwvxs V}6!H2 gG:t@"uy3r}?Ѓ=֐X#l4"pś V75Vg~;-HM'ml`FqY6  *ǝ1&҃3}dW8~C8~ّY3$0d!(Eقu":A&{.ǙgT义mF6^纡b#6mj}pk$ѹŸi+칚wnÔi֐a;%GR^B&نGlT]a Q87$ <\b9( V# Εa`2uy#Pt杠G ^p)nL׼ˋ/~ۊCǂ U3;_)4!( Q+UX`ؠh*^'mDזLW"ȍmLY){NHHz ;qI358S˽CeʲXߠv[8ǭM,AAe1W7R ls>)eu~*4B1$Iw8Ʈ~?GwtnA{R.cY0eS =ҧs#~vRc OgL01r>^b6"qY,9&1/˚4WÚJZS<2m^@-)#dSʍ;utn=s"9roCT$/fik?e(MJiiSl 0:Vn/d=|bDwaOrT`> stU -;&j>2k`v\xίn\js.K*Q|/>n53thVf@=46 L(`}"|ve Cj0;T.u.y>_hM%lӱ'o>{6oW{oGXY]iƙEH3u:kE>>6V6+: wf CԵPXU׽QpLyO\I/E|(B÷r,Dߌȅ%epU앷buڷͶ_窵Ĵ^BA84RS!kʎ~s[hL@ӘtIZlphYj{ UoW? O{ HxWܿW}~X`E Wa˹q9^Ҡ)?#+cLK{p( _2UKlRXGT;m,ɞH-sqhgvr{:@ 6~ͿdD@oO2AF6ƨT|&9 j5G7- C֦$LDo w߅Z68@ؙIYN½x"B-O4|}I?<'nq G\# $c۩ ,[uJ͐$)οT=d {a7QAxPY.BEeL 7 @:ۦo"?:AW99uSRkfh3>\I]H}۶^{[p"cU2\ߢr&Rb%R$] %+ePתDw1u|Fb+f~Ie[ueHXW*`0栫B51  ]׻e|Ԫ KS,_b[1ʠ1)fOcBaZJsP/|]\^khu`u䀅OB(~L7ga@W˭-jc$$8|*"Cv?#줻6=Ŏ+5ZUPsr][W7j)TiCDS; ބEZ7(,π{R |Ff [/nbޒ2I(~Γ6W@\KUp dS8TG3r|{k\Rh<tjr,l(u?Xc$0XMrYoiC{ƛÉ%xr4K/˙V?gEC^851Sc&fk同֕jB Y' W@@YM"Gvk;gL8PQaoTTP W&H1b(m8&l8֑e_ 8##Z!F{?mY4K+2d'rF#uwȞr#)I#Hd7˘B9 6~ `kn$'RS4@D)K$i`U#c[W2ɸZ0Q%y·̯גF0XR Jd :~ zz!HVڽEUuZA3Ex6/qNKl"ҕܽlN\ciM~B0S,:2$kp\tyJ6 fb})e~snjBi\!z-Ͳg)9%/4 S0 .KDnJ$%Yu5+=sIx%% s?8 Ӓ}4ae\\//OR `"az$6 _ {0t89T\̓mm (V/:(~ ^0*p>S[X+c5D]DJ 1&O#zsofQ~\JU-¤mL\

(-h ځ4n$q{ٓ1sgw6Y9eL~MSxpLTuv#A喭{!ҪsSFD9Ath䨀[4HٶԷua1AG0.bFڝp[<arRF L[BN'FOK $\Xvvc#Ua Xf:J=󌉓sЃ姂#Dv6x &-eoDC -5[Z>g:XlGrh1˘]nM#/m}̕4ă ^fX؁#g A^}Gu]]] )كՉr Asjre-$s/zo7׿-Ϝu N692WMXG>,n, 䧇w$ 6C/ujO+PتH~׺ƅZ+fܚ#\4"n'E|GkJcpIl1%o]Z>wW w1huY:DS;bJ69_Ry݈xx5p*iHp-h;|1ADU xDۋD ,cw$fsyuX.URUx>MGJaV=a>:p'ہe ؏r=M?o7-z@U04ޘ8eXF\ݺ!5Nw5=g Qxj$Xba-1Ԧ{L Qhw٭Tv'(ؿf6fŠ^KfnC馣+x/ޑk(l+FǪq7ÔRU!Ei|W} ܰ5ѕ|?cjz@ BB#Tha2&BQ1 p&tRc) ,tGW OpOA& :($Uj,iP3rU*cX9>B<60HESE]*|+ K_`&dG{uaBU98SO5t 'JXM5Vx_ 8YMջٓw-* p:ʗ9_==^w@,* c`^734"0:.0bZׄ2mВkiJ ('E~pV{w)ID='©vl7NaM$8.e%tBjGA r9"J qT>ҧpw?WƢQ+:/#*PiqQ$I]!ՎL.a]rp׀O/=7z*iń ۊ75l0&Vr\3lOu ^J &.LE1̊J8?&: ZUh~nQkyKBqP]h/b)SM.ʧ*T"w~ށ"^1H'ɀM #3Kԋk2tſ:rc?0o0`q;-V4!G[W=:-lPyr5 r]/ ID6BC!S!J]{ܭ)8%aF2`7|)uz4[E ڛįSgZF~v w.e²8b&4J"") G]045).hքpq|+H*3Ek2=~B5 1ooP (מ-_#S֟jY<`/f}G_  %;u]^^l]xPRJz|FgYU(C~[kq qػC$Ry | K0՘ǜH/ىҀbF*b':rmO :1_oGӭrLok$XyF;l6E @Y14_vJ[k||RsV Gkm nC_I'Bw^Gz"vs0^ǷM"yLnM,Ζ,%alfQ7)WdLC/$U82N'_E3q |8DI)-Ye"tƄ1&[-okcj1~X&eTIAX'5 w~(z|%DgUݮE7{3{fIAm`L)}kX2}kBݿ1TWhr_!zU;x١8R#r->|u$d+:yړ ;c>&6,tΗTfZڇ*w+4Q-QꎖʈY#%ϻTCcoUI/W  U>h(rF0!R- NL)Sۥ<-i xuDƍ*PFCXz ^)e$:,*.WFawӈ e&õ6Ę訌ete}?t!_:"/^tW`?R93D.'sû{]΅B9ͷĮjxE["I2ϡkUS/Q52@f |oAxe jkG>q-W 8c"(v0v<6*v_0혷JV葹RaTYӅ+ std]꾉`q[; ɸL*#h` 9 8Sx&h-wae3Ay"\vlZ"bwNE(׷ }TۯOs2~0xD(yb9ɧħj$Wezwe&3:g~R^bK8{WT9mP6}a-_` >ȍ3Y踅}ojE|R"&o(Puӛ#d`  krF 탚h\ډ*;9MF6p ,č[sd6 ^1 ;NmQśSjJ딁v. !6.MU3Z:N4D惠_<0:B)=f]0BK~?܌]yS8e@8i6Y4)ſ(=̞wp/qͫD>v{&6e#Tf _7uwv=@ɡ$Wc'0(wέ l.$fBGE b[&fV$u˩1).ePTckHT2v@γa` zFz/?^0v>)A-Ѭ7SgoIJbynmR*V:BbZXߢ𨮎+Cҋ> m"UKC_Σ)M&K(^H@CQ TP0>Ov?iD6"&pJ{#{(oD K=~f}yW z3{kiΨv043]Qssr`먗a(\ _ek!?k'?9<ōTP,f` x=qU(J*k,LT٥v/ fǃ˫}D<9ͧ+Զx Fb&|kkE ؀;Y<*ςp,#7.O!b]\ZQBBT%)pfJŧ6nĦHeEiJ1 js,+Z,- 4.f*hhhe:&MvxgN]ڈƟ{(MFdBV>LtUJ$wh5?H􎘃Rbj j[E_ܗI ѻqbMFF糋tZ5w/v|;Qe4v~ 2)+E厅]c4TJ eE_}e񢶬8tMM (۾N. Բ|vNÏڢߋ\C'W4-K-`t~#IT^d8z{Mntkwj\'{D~ &6c"a2w:C#7LJ·|9;=A quUy[M<<`6;(<4eޱU?AwŒo\].1iW2y+\#M^(֜avy֓aж9A]j ;E]=Vӛws6X$l&1Vq3&$q)Շ@y*t$,A*fpe;J*;֦^);VpAIb gńQ/ޮlHAo9y菒Vs_:vho!`zӗ33%o]reYWca< +>wmP=O [ J v~k+z^r)Uĩ n&/||vF&@"e m _N6Sq A .d?'tp?eS aAy fZ Y\88ތLY3®2?ERh 9idU 4qjtoH 927L;$vܩdeۙ=<"JtofO݅k^侞IEi-d 5SkE55٥_?& }wevb<ݼIN_}Grll/S 'ڟڋj,W8y Sf#'\CYHW -x)ZX[,5k5n~߂CF'ԍ?)l ;GhaƘg$0cs7HϋErXzOQEʓ8bm5zTP kc w2 _Xz59..j෰ӊ\*U@ʤl`PO|㞣s}XYn}LlrE(yS2㡾 JW[X Ba%/Ҫ0_)?PUt?k )%ldfUsuQ=?9!%~ G3!g}^;k~弑&+" י &sM᭍йu9Ι(bnJEa9ڳ8GLL3Z1CY>jTVvP GH8('B]_MOǯ;'_ &Űm% l(wq+[fδV!Ф497cWTBt]>B٧h*|ÑQfMANA*^qSѤUYH v/[ %{W G1Fк>)L׎}Nse{LtFΤΝ{!!f=#vi拑3p! ׍I[Q!Y4UAbH5u[s^9碆 Zm#MhZ8 ss4쒗(2e-@&{_!?B w{h9Я{a`;Y@T*E!Փ(>H.iZlyޯBJGQ+/ kxײ'q(eBX؀7arjRL+z:pQT;D=*'_Agֵ?w9&MfJA,ݽ #YeCnIƟo֑Mg%?')Yŋˈ2r~fqؠJLW=u è1eMR7g.l(['eSj[EE vϗe~܅H'_YvU=β־ذG|4\&hMC0u[ D8MKЍ"33s` 2}x=LM(?tʃ}g9|>_z_`ړnU]~άIFTre֋Q^kOjZf }3[QҙBݼ2DMb T4''ЭzS(y-9$CPǐTږZ&9.O&*^߷Y9Oσa,ԘB,u[DYy4>&OL ełN}ԄP -i`g;ܓ ܸG+-%F|A1||B2V{z8mNׅEyř-@*;D'6)މ"LNsiJ`C3]Gl_(Sɽ=eȎg01hb۽6d' G5NYnZՂ]IQpP3(\o_Z6ӰsC $3"#׿[bN Ύ\Mפj5P?R<͡X+0/&_,89?=#Tu=ʘ9̟Fnٹr7PA1;">Od4|6[ˋCU șRN o^VM$Eʀ/{#pkFy{NSdt5KПgrRb!k@8 Y>9I$U2D0WjsU(dt:F@ꉎ_͝8oPAa|1vOB-Uj~O{7 >ڴ㡡#Iuo~G"j+!{|HU˼ K4ڃM|a8`*>XߝW L78!CL:6TBnh?9r )t&')f_YTNLR_m.M꿃w>و!S~1rX r6[>6FtjY*g<8׸ϸ[G-?h-$gv"VE udzf`KWޫi*mɮ_،$Eɸ ~G8޿9J2n,'ƙ1,Hlų"ĵ샳ZЅh!˫`k^]9akz@UЂV*=AZ+~Bې{0\'hCѢCt~]lJEJ0y*pQ U~gwέPJ|xڕ8UWVwi' U־xOE$pQ/[-`"j/ձ\/fN;poܞG#5qDB_A5iT}j]E5ǝ(e͗8AP3¦aE-λZ,o/@ŝL 3ЍH'F̆ ٻ:$ٽr"5Hk \56q5t14"I[dž3|-={-#_Y{%i۪w2SܸłȠ;C~ѹ qgd:MN9s$M)?FP `{X֚*Լ4>K: O"ulNU-~2K~/ F<ׇ٘ީ]]C˼hkIp62bˌ̽ed[aM|== ;/C!SexdO,#+/2JϿ``h@OY|@j/軡 C;2:7uUFOig [P"V1x?ww+UQ%Dv! ?t.-Še]%~frPJh2{[Κymݹ;e:[YCot)K݂c{2'>˽>hLNP0p?$2Ca<7 Fh PO J^p+c*~6h'iF2"EF@PU LIpsᕒ,Yo.C鳏{ B.9͹ZYza`2qDt)#]t;݊w={ ٍHOѨp_ىKgoEDAD?rd}zcm-ea&_qrTs<@&#yC" Bӑݻ3#!ݝ6#){AaOo՘mt")w6!}䡬x)W}LdZETU_wXH[GYρaQs"Dlr=]S4gg̷5*^o [V-V 7pkPL=9 ?2d'MZ[ꈃI r®GPX*pV 0mw0z ؐ<`)&[^"' +]ٙTb1ɴZV1GyX_#a+JC3+ƳYR <$$K׼{$~Gn2 &׳-~t;[ۥrI=FN<^g[ yl`vL+v@ |bsZ;l W\qRk:r6 _]>uӹP"BW\ 7fO&c7 G)N+O#uZGa扦M C ϓ-+Z݆PDr{+s4Y*A`rų#1o}6^H3Qod16!S٠e|3D71#g-bWq ybzlv3eޞTe:cc'xW8Q{f*.M-'ca en+1_m\oY͒Ǚ>qΧܦTTrtf+C2܈qsܩ㫖ؔ_h _eoPɠI(f~ [ \^DqS1+/M[郺@ }?1: bea!H0ya]f{H:AIћdN-Y9#*#6JDF3l9dAX;+緀)b @ϪEIE㑼wA_#2 >*gļzclU: 9JMŌl+Ƴ Dҋ>@`⭃Vx3^^O\&0M5A&2PƉx5`i}j#eR;pbXi%bYd`}\^YwEglcbWhAUHVާɸ))u޸eIOd;P`8 [s<)h&`z˫Ӌ{SHud`WJOR݌>JԜcqP1K|2}\h8aЄ'K3cOt{u6Y@6RSJJ@]<Ҧ⯤\E)1J@ire[vBD :d `&FXxtҘ[na9b"6 [|;IiL4qtVßyc]z #DJ֓,%ݱTCƪ7;[g+ܤK(?͸bRKk0 EqfJoRmݪ`u:khatɩ*8P]]{`#$qK!ԴǴ(X?u`(__⦆Yx1#i5u8/+~Mh v۪?IjFIvUaR+nMbٙmh0]fVyc-{oRhb1i $ݸbHD8'BVR [J6}D`5y3m/ѷFu& fvɍ?j~z֞x*VLWh8LK z`v怯}9fEmKƼ 3q{.Z#Bym`źdtg$P>*]w}pOV/{u3 j 屓<] ZonS=;.p>Ϗ4nI )7-l./VmAzW[P?[)|EXua9e \TT>Cc7盙b)=k߈6-jUElKN!s. #mY/<$ pP=q2A|.Tq-}`>; )gɮ$9~OGgԞJ<_Y/HO t= !s6bQDϬ\Wsݙ˸y14TY\9%Xv=uWm!& ,u )`E>=5GH$uD3Rlޤ^_..5@#9lwʳN`Qzv*Ԙ{ZKmۭ\@˗G& G6 c]H-Sf\Q/ϙ .'/zgWOxPxgɆG.tJd. S3BE.n >oo712/,HtY]swuwavUhp3F`xVgxãu>wX$s)6s8h,$o`w\q(Ʋ co WӍz\PF3S_R>K0&\{N}TNsP0+fAM܁p?r4+jmgy^<' 3"=ob\~m\~*P8u@E!WDXχ /zH{6HuG. B2LqB=sQ 9UPꜗ$Gb)i٥'js@_:ԠTdJK3!/^:`sY 7Y 5x)JByRl1$kJJV`HjZSjޙ;/dh&TDIAT^9P]qf{Ic L23[Tu[0$6aEp2O/pFy[ -÷c`Ǡr$(Owa=S1soU=@`5?Tf) 5{w,$7c 2m$i dAHQ+Wj},JkU'/Ј!M[osXz48.d2r`WNb瘣KϤju"oiSUWz0aZ: @|,T_+GfqDJn045jfcꇿt=x/EIo=Zb&qcc>UYUI9mBlνMLa?4.)rb"1Z Zn&TVO=&L,Vŏ HaU_ZU h]?ѢOQr&2qHe kin :mF5u{Mڸ)߲tW\"  Ύ>Ne]º 53q [WD:O&‡1t"t6A~YzӚp@T[HP lZ{gL^6C,q-u@䜶^So#? ZJWPDFG=U$tjBqpQ%o ' 1> fVDsm _/rbSuKHs2VjHhY{=(I~|6&PNF 㬾վt6u.@iic<t/$zz刮]kmVwJ5,n|'.JoTч#A*ijoVIlS5?qccUSc*zrCG5EJ[Aa=)c?^w_ nKPO`aD)*m S,🶀'͸1 .oǿ²f ނqms;"s%$cB\kkyRuïx/([2ʤ3C&zo]g ߎ\1~ٙTiѕA\ȱ`fF5tTJGGz{|?N69=HRV+TϲtG2P+wxq7"#Qr+%d-<53V@^5o yx6)f!z'$1qc<X뭈 /JخoM/gX 9ڸG突bGeJ֠ M?Et` 钥[ /f#!. h>L7]]*^eK'eyr޲}6T@p<LS&`x-0d %N#!=GȪZO' !9Aɫl{bX_FcY4qj)<_B<7 jF>z' ZJ"֤B\-|Ƃ>}=cF~QS\3A%IYl<3׺m Ⱬjxxq i%ŊA_3:6G;pL r=U$aa7ǻա *]N6=|E 5bv1KSZy+ϫFѴVE4|Ccry풁: %A8j3|$;$qֹjjwJ䰄N"qan5h)d廿ate0.femp}(+l+bjF0B&gX )E725ȳCs:vϻ FLnb{/{V}"f5&n6+5ek'l/1b̘&Jm@V1.\]5 !SIf2Pg cZDq { .,%XI9&tD;≘ 3HKEB0G Z(v{/j%9}vڦ}ĬS`[)h>Ñ~lX#%B?^E+WcY4VqJXmv: p?Z-[[z⸦k)XAab_L+on69(ۥ^1wv_*07;%ј~\"x0L`3)rf[1p1"#o9(jXiX~ٻvT Μez4]ye$"ecz@j>yoUC #Tj/=45T\H`_j02L2{+1#Y G5  #!̷IZ+~:WT"ݚ#حGsAeO>Q PDxRR- @@I 9:՘yOڦ #z{^Gy : u{qT%/ߛփxE )*  vn7VP#;H65lw}p4)U>p7jD9*0$_ic':,.1D.hU1ZT t:%1[ D0  tS5e Eq9wPٷ)C!J(!MqZl}F ?H\Oo8ϡɏ$y:M Mķ-FJ m|OqϼN@OhF.%n煣ex$3pɏ"]+eR :p p>-lFʴƥyxO28rJHb GzSBΣjxMyyAӚl$C+ #y @W&_t:ݮ3{J^Dn Û>\RXG `J{#‘BQha$ \&s[ ,ZC\ t JD/@Yff[;?GRRC,Y?p:`1Smبyf'o GԝOe7,s*RXVD))Fuos .wـneCŜHgWksG֠$KAV-cbUi6:E~o η?y(3j|v1_ҧ|i$*Df= 8B 46p+;l$,Jn`WI1@#RPxf>V1 Og~B sBIoWLcXFzIvD wD[3v@A W )dʖF+꿙IZ]1 3y=/3&)V3zXgyPW%s0ߗIDRKho$z2(I&l@vq PA ϳ.HYIz`BMVčNI{j7:{\G,9y'd"iHІpG,,˻1aU;iq!703Kp^C:ҥ֮,",b]~UÙ!}RIkq33oMȠo~Mƻ|UMc=%`#ĐBگK?zq Uzm}yNN7/ED}> ~xۇ+ӻPۗMDOԫ>E-UX mӞIM\j}#Qg.Y3JNQ9eyJ$3ŝ}-*]F9$8;фpUroH=I_7L=ڤPQ&jeU4e/O"g5w<!b'^͞ݗ&1 "haᑢI{QQp+M.B5&!zrOԗ-DJk)mdc: ʁxNd(Y s/kE["G0mh4Nd쐍;Lˍ? ݳۍ:/0L5s{oQ4'V;Ư1]}T"i̇~«|аtę_ ur'568\@]?|gR uvlŞLxNmT[rW:>̓gӎ9Em +JUABPmwsখt@usOgHY@&YtԱ/x(Lp,]"! t\ \j50IOVUkv xL붦3ǕP ;_cPe -}+ADdK0pȊ} J|pK R&"@3 sv@zv@8p09Z;;.5F\HqaZ՘ˠOi ?Ȕ馈~\i je~R $:z'&{")_^&?z'8m=o_6,hi k,8.bp2bW\;_m/7ڟצ"#'yf>RrY;tC1 _pgMɒ;q[ó@[9Ey:^RPntISJE-kJ``&27׶E-MSwsDo`\܀YEڣݫ`dJO=׌v''a_й<-儁 џ 497?~6=˻"^ݜa'!5VP\DZnvάTiWTWmH%9sZƹ͔)w0oL,u~9{H+-jM'0V$W5|N3Lmcmaec=ɝ=%G ]W$a ~{ O(‚ͦdyoY[qĹT] VX!).7k@ZLOV Q ;-uV?{ʢW3.ZJ+ v"zJ?CUT5@Z ǺiEcK` aGrX1 a,/ +0'jvBEBdKMu+DKg k2<9BŠ4ıTu⧹# ʂ?sZ`-ߜ ZP$®)HZRP{CNC?L0:Yj>N/g`\Mv(#"㚣)ENmV[Z f\:VfW;n6?ac$wF&umW=%+ `O Azӥ/7,TuP)@ ; {?3t#޴нy}m5Pa CR2٧Ջr6˸YOf6Љ{Z1Y63qg XW>7< _ҩGdAOY1~3qLr0ɮBDa]4%.OA ָU]ܚ2[O =/]1K讲I /fpXvw,؇*zM\p3-';ch]IH`3f%Ϙ8#lR¢+̉* ajV-)U=ڀ4h󷉨nHз]Zq|ڰB&b5ZB{٥l,>vn@ktQ)2 &I.kFO9hDJָi CM_,͍ÑaP*C}>x:x T?&ecz 1"@ 12&P3>N_wskLaq]UV KDaCr,Fpަk‹҆2$KK5`_W(xY$+28i8ס$Ж"Ψ6` M)n-RQE~t;C!E@eT ǢU]4򴛪%,F 0ޗEZw5oVn(S#F:FwQbgr.=KIl9ܵ(v;$rbU-rG/UpV1MVy#x)1];zfiB-b=NM|q!o^ }" E7- 2cx;83,.%,! 0.uTV*4057i >?GJAwkDo`f-l~2hp]Y)O0a Ie WoZB?*ة~<#$F2/,R҂U!5d7pFb#)}>ˣIY]kMR1?n7γr r,\^& l.|u_Z74t4fpviR$Ms&)nlC<Aу l~O9PO-g/q/`+m_8vV+fHլj,O5DoF a p:vlkmo5ȃٵ*nVjLxK qeo}ѝukdpU 63| 8Dm!ZGL[JABjQu:ҖY3ȻlBÚ>B_7ӈ謩fc)mM  Od ++C)ţ\ z)g lȉr0/sF05%-1"O~0xL:?˛{Z!+y>YB ڳR!đBA% O$Pl$)KV]PjYԟRp"TD ^rQH`0̖ar)[djr68yO='B|$\hK-zQxipED x3lT9&f1+r HR@ qQn;8$jO!ڙm kDAZ{ZB4 RΜ[_ c4##[ i~[ވ**M) B) ^O]Q?4ČӘE,}9qkw6y!uCΈ0-݋̬ 3 F0u3=]nuXG{zCkoԒ7Gw ڤЩIdb{-y܌o%jxKfAKji,ph~ #&VRD$/9w=*=5=4 Ƭ[6HΝ2̰ K9gF.A#+xgfƆN̎u+Η1ÓP o CqnjneѪD<,?VWD\NluVff9Tc=%'6hX ` #/ Jq_ͳwXN;pL"!x7e񪯳^ qbbH(cfYfMT!Iٷ9RĬ6vyFqܾ]~XզkQA v?3rWT:}S9*f2H΂!1 #!E1NAFG\a;xELjH>btMCK,]{/ W^uz‚?fr_bF/%`xho4{$)ɼGV )0:RB5ef6,{7_}8CR"ρ%rsN!sb2w;lkU<8:^ m_P}_y9Tg+R0AAgrRAsB>ٴqSҐ[Io{fZCЛ|"q/i?OR>CZr*)q=qۣ@˶= xqmS$7挿5N8zO"*-4rC(5hF 8;>nuJ:崲~UW&7@:uZ7㮞%vJlR\|Оsx: ]|Դ6\]_>y̗^5\qQ}}`[A1mtb7 UD4Ɂ  `gmkQ܁y tGroE.Ar(7OoeRQՀ(:lQu[ʡtn7*,U∵W-9/RMKGo#U`0+H`HbNkkM`rQ"˙8?/@NHi1D:/+^:`,l ]^5@@ KN/Vۦ8f?kTud64n{ ݃(&/hmFjN_t@>zmiU: yᘼQx|/(ٙs V6xO*:#Yc}bcpu49 w%Cr g-@4( P.uDƕШKRu&e$Q EʏĢbYOs)+mX>@Of7!%r:;8k5V{.+7eեiݯ\r d B10SW>s0ԔCW7}xr(1')}s{.5.ef]AَI=pg0"9y{E3/|p17*2^^p!ǷcU80 %(6QRKy.40Z<of-NY8F 3Mҁy)ҋl,rRCBmrڂ.i]3-O ^.,Ռd,c"b ubD"TXhƞxm 5)QYL-J* Fpp"'*y%R-yȟż݋wE7)xY1pEI8`:Ì2mL Y orl)LNPe5j5jXJeMA!WAzrN{/kJ;3ҫgV(FζƳwƛk[Wyg/.P. vt0"[1^4R2EKF }i{e˟dH //34 ECT!>; CJgԟTYR5aCq3D x.Ked H|zA oIA3yv=K@n\,EiD!p$ٖ^ܐo _"W9J 5`%KaeP~5!b$aHcV2gez>8)KnJv%e?uǹux ~=**!,4eRZ1,/Ҩxŕk?rYCۧufe^1A,H̕PRҠM浱&DSJ.P<`*?Tܾ`o{L'{lk/b!ZĻ#Φd?P" Vcm$=ڝ ufKN31[{kޒ'`Lzv]wл{!(15* s>9ij'in^[G-&zf1B m&͡ȶ9:C~!?έ2MƦ8Gfjp7_9caQ5@"S[ekqN Z6d;-_k[X 7.9Eۗ&y3BMO5-ӌ~>1Yh8acuiD8Uo[y%ސ~pǍp|(2`d&FiRI&nXOBs%Sgo;Y,e=H8cD0+7_ O6C.q>(|^E='([IOKȖ/Eh`#u✗c*7M.#<=G qMPw{`Goجdߨ*c<w:/~|QYAએ'Â,eATpsUCJ9Ą!-gdSI#8̬Z=ҧ lmtAh*>d;y2K ~lY Tpf520`T\R=Ka2=}@f\߁8zE5׹o;cR`/&%݃( H ,Z6vO ME&\?WɭLxD/%x7!Y;FVÛ A L}Z,6&E˸ .Kwߟy:d-vAM&'+i-횻qp~I7`yW?@?Lfdz2Az8uڋA^k"~Skz;e'* M0蹺])JmQoGc";<%rzWK 鍙*7P^cVSEV)A AU5N ]LoBx$˿k0Rg\;T~7liXm| Z4xyfFRChq|d2MsFrGx?00]KBSIҞB=N,qr0v+7+O_7'XHj7D)̯qC/Cf35'<Jϖ0ƢJҹZ` `ca;~~6tYbb5Y$C&3l\hx TܱFК"ںa1[TYo~Br)gCfB_NYӎv_V9J⯋"N>GEylB!_E泤glE]r^5,P̟6H*Qܻ2+iPJ\߻NS}'Jju3h =L۪zP9g%3N5v^~D n BN ҆\%ֳ$MeX[H0UX-T]㓯{&^A<£)Izsc)~(Z1q\T:("#Wgm^; .=B~*xr{xbS+^/04d_YCX"}}';5d#EO)wIثu2]rngs%J&njB쉪()h$:c6kK^j ]/bu&v~e6}ltBz*aS1r Gtf~3N QS g+À9|mD%m-u 4is䟗F|H_"N pאq$ )6;?oZLBhv5"?YB`&~|4Q13ֿPp0œO$b"\3M*ICdl*>7Nw(KPؖpHIc2lC9`!R| .@$< v[bf&mEA.̠Qcp#:NnҦq޼xg_G)f WL&PP%Qq_]6xEYS+!唑eXLatc5VS݂8|J-='& %)htppNWyɘN{CjI^Yh٧: )3W7E,Z;ukrL?LgXJChUp3xm{-: L07~IJvIQZM+?1lAL˒׉73QK9#}JZ;2Fb#,<3UzFTAų=X#b{I~5~MC5cr9GӢ+kU-P:ЪrAQ/ DS+oĹ%p켒@|)V*fVL (¯1H^LI^Q_ȷSW@&X6}^8LHu:6'W?YWWT0Xϲ\dSrGP0w&i=4H\mf$>ȅ~_XW8b?ZzK,RaH#' Y㿪U'.mgI>֏2 p<,ezcPne֗.k>: K<TJ ;!*V˙DžMVEeXIL-~ iHEZ%" OėnNO,Ɩ@.T+mHuyᢋ 0 ,і|dπ@whʇ(O{syL1;Qv s @.y10JE쭼!-{i{BwZI5Eź,Ng,]J# $#TV~^#"D?m_zf_<[ѭ0i*GBGb {zFE03HXJocC5?[m8S}j8(ȑ&&J<|h]2alioTӁ8VSEpɓrL_.{/ --At,OsF<2 'v ͧ4|#B| "ϪĨ:Jg:y RUjz]^&{2rY`ow]e߅ul)wg6$sbot~nXjca2MW/5b;oS<ӡmGÙg.@ 6Ԭ[ neA{AUNNfX\)"1%}GtUEMKXgoB03w :l@&AKbM9V\TO=:bX O֣ 1?-AjJ7?XU"=Š_9yy`(N?N7_&7\a[_ʹ7O$0y`-Ԃ:.50t_{ ۮU)h:=]Jsz`&b/`iT"›k5|=]N࡚!3{)S=m[[)[lfEMC?yrvnABێZb–=*aZQ(>F|M P[cEB+4&,1lq:bE~j0@K 0.|Yq.M7KP;)'ƽK$K's6G6|oT1} #\5]T~qѫn0ыl"F"^kb&AcDlE뤯BLrsQm#J֗VjGO/w69FGnc#̓d.NѲS?Ŏ:6 `_ sM%XĉQ1L%I>,CHMY8)=932FE< c̪~(3l2iݩwLJ_Nj yS8XxX9܉+~Nൟ` 3|W[<0{1L"_U&;⻵WSB'ȴ%ag6N 1|<[AXao>L7!0M?=Ɵf@`06B Z4fYox ޓܟ)GWuٙbyZ?#=Rg9ׅh;SQKQKADn{<.ecR2^P5oz_:&L r$?Ԕ6D&7p\}(+х/l.[Ev3'y v_M[MHE%!CF4q7~ h|!oXpr&GOY'H e]mz]D]/m\rIrшh;W;e81e)w~/#hi䰥R/V"4s:X',BPTF^UVgA?seS9_YtRr-1m1ͣܙ`pecRaj}QÍ ZS_L##D2L. ^QYf7 &w({Y)5KR=f>ӌ Ha+.׃ՒDA 8,Rl=gA=$gl)2"fPc8N*Xɏ9l 1xeֽҢQ3Ce z2:?r Nt -y|3 D|[y^'-Uʺu1B _J}6JM(XI &u}ecLzMFRbͼP*بѿ%V- 0dݰJ'ꤘ+BوJAmr:ՉN:U 5iq 6$t_ɻc$c:*5D\gnOwX/ETwYBZ'Geb̎J58gnf_4xI(Ћ.H孠 jC#2A@eXJA2"5=q/ SO]vOkQ?%^ k,/R+,F zUيqc=vܖz%@SU Jgq]"EoxNn;m:Zi",\J5_ႉ[ L/2 |N(I 7>"Y9"v-bWlgh/DŽiX3m tS(֌i/ zjRKl` {ln՗-KK->Hc69}@:R厵(y^c@$p>sbqj%_>溧׻G .vS\9{$By=P6Ǫ,H"MjqƺCݡ \%mk?X_$ uKk-fޭN G8+Q^rrh cͧՑR`~\;T7gȶ#eoWcѷ1׾7h駪Ԭ1YQ2|\>ԏxpH;Қʶ4XQ5ְ NVH1j\DP$'Cͨۇ  F]K;^ߖl,rͿJ娝M5JZ76֢Cup=AwA@!?!H<dldr ÔY܇sORWΕr"o@H;SbN]X Z:Ty? :j\L<j &A?^^ru_ GFm veX" $W6a%@:怏4$0#? 0fJ魡w 5ڃR:̾Ps Ɂ,ioV3 8E]j'q6y]W"[c O#&;O)r@_,AI S({~t,+_dF|EBzНg7Ya,Wl߄ZM?JeZ*c_5eIk|+2}b5w%Q}3Jx_>ƫ/6q|w l"k\o+_q>'2S)UBé\ى]8F٢5k[ێE6U p3 4 (=tm23f1S?? nX7%6jc߻uANꯛVf#-uvO'Ӏjs*يkے~ҫ-PJNMlzS!}ɦ-p+hf}1j(%;51`M<']x8jįބZ49'Vضa4)KE{伦޸ K}NpYw3>W#偄"`M.YPX1kUE|̿}\[!cjt ;n;RFl؀ӢBP㻐W4nu 64\|[ABt=; V*U&G|1BpwVjd4-ѩO*)ʻL~RFv@W\4])0jAQC97mv7y ִg Oc!ɦ|]6$%MKUR sDf۪wW?{> l$ 7CG2VDiE.ogBBBcs@pr3n*ذ6 .}h#CGzC#!zkLD$݋ڑ9\nuʶ2F޿mB!'H4v~Ԓ3X*zF^6@pRR HDPnY߁Z+Kxu7 WQRY&2-,x'&.j ~FLMCIP!LݤL׎uO9$+t[jmEcY]g>z#`E 20WpS;:«Ă:*&Z1Jbلk>{bR =Z˷&F޿҅Ϝ:b[ƨ*Cr\z~>#3v6GAba@19p6ާ?" 3C} zxţa-c d~`sS: hډ5˃ʙ1W2C ->nfHBYmO9ϣ 2ibNã>hq(\|.쩁dSDp≨vDɁe46I!5bhX/B0f_0T4rh9oJ2c-vpqOz2,]c "; m*oہAn-n? =+rJAUI4Ϲ`ii!O~Y\ϻo 2]_8=b%%"]^ҌÍoN nélo- -Doڳ_Ȗ L=}sź)ajn@ `v"MyA4?Ey(P9G'eGpQ- #h^n+r:-7)I  3Ӹ_+ rBmYTHpwş§;jz0F=NԹ[_c~Oj($B=ޥPtT= Yi:h^{/s;T1*m* d>jĜ=4INs؅{)~,/@T쮛y~Cgmay2}7PE@B C!H,",Gjf/ϵ[ww=,P{r>)Qq&MW*Vr 6I;^RTRFCau-Ch:Z}~Yt!ih#Yu㚈g  p>ukNJME~3] Hw,7b _*~> 6nJseٚ40G$$˜!{F$PA$Ϊv6&&`)"CjMEio5 َ@BāFpO|?Y!e[:8>q'`0~8 +qLI; sIioefZn:5[]jl%3ỄDwOэՑ_6Ϫ5aEyV!Q +aF׷m`멩FtL&< 9.\`=B4Dnw-h8uS]z||K_66V:OY{}1Ks^(Itݡ\ob4%˧Jʙq/hƻ'e&lʈ*t aÙpGK&K%X8Y1FQBTlgv=3 ~ڪ,yZrRfĸ_{؟;O{ @>A] >. ^F-k+Sj,(mceajztlDž D EUa֒OiM#=etm;}՚Ey,#PH^iiw$c2W]bƒLI}QtICG6i`?#`o )NEMJ:C{JTKljR!]=0BG*aOXafM:Aѭ{0k #̀_|_3I3U;N~o ޲>W5y[,He΍-@&DD6˲6 y/ ?P5x*\'O^C"fzlӉx>l'Wu)-v|)')Dn J&Y 8Sh̤!5iZQ ؕ Xʹ^ /3{jڞ66EXju " KQ@frn1L8{v&ie]=U'-viuqn~תT"Ϙ ^x/$AXq4UsYH-@$]- ڃ ?Ι4Ҁbex P ,GPGx_Yu9S}k@R&(:"c젶eklu0Vz5]H^{X0er?q~ިol.?c AQʦ Dݟ tugOӳGlXW]V3r9o'9Mqn)'4aיr%zݸTt$~ IqxyBK8BThF۴H޵;?1/x}Xn_ ?Iei|Rǥo!P"D 7zj/ŒF"d(>{+C4ɮBVfs˕4&!@1.tזC\z52vaT^פO1D:!L?DSfzCu3D7 |YS%fp`i_ԾrZGnG)Ul' CkH&?.U|u=<L{|RHO gi})*hm_'z#?Og< uuF(S=`@h80V8C]·e*wILGQ`S5 G@u ,;0ppf|`1s&VfúJߛQrީCk=s,J0c|)@0գpI~'~Z!|zb,d#t%0T$p"I1Q`lE볳87,OP|V^u`N9K_>2dS9oNqC"}-^h.A .VJ [O%Y2\Gh-l둽Ə!=·&vԮ{=)sas?*~'#V |M*vܕ@MUͰJ&xDo%!?N]l(TKN 7L̾UEpz1i% }M K4TXtϰA؟RZ({XwnְS)rh)\aD{ FU9nLPyzkYqT.9l2lVuE,V#`"Ue!3ZT,7JSiF^HAln"4b.RNՁl~)?7PsJ&셝xdbPG6TX2uJ3 (_, + ұ`[3x3ԇ2R/as.$+3vVzk-abAΛ̿큚% [u/ynКyopPK.0 _;_?K4/2"gy%aoX9|{x~VqF`C*^ U+{JcVryY#2j @gķX֎#I\3@> ⃪Y 9#pFH&E|%KֆYJTʋ~w5]u"Y=@\[-88+ŜEk'}l@](g1{H(a7&`Mq.8W7ee >[qDոVg[VdhMS;=Ò\KJ,@X>ۘ K/)P1ԩ,ǁh]ۭHsף n}N@Nt\oGaL720Vp:չcB ,oj.~h&L! ;"L cЗhC+2~ >CFfy2Tu?+vYJ|g&$3BJFGC~\R?{w[8,2$AJVo=^mA1\H'7I>%MwGڈڡzKSS;#.3-ڠ$k[d+,TkMK1!qZZKm3׌c|* !?~RAV/M@0WP 7r |JTX=ȳ#zC]Fnq[Q^co.8~u#kb:4 ma` !,t UIhHILdK WRs>њj6LоUJ67君%KH<m}R+}3RsډZJ̧WrFuh_j!ܕ@RZ_WI rXT*(!V\FPAAAz*9K_8*Z@jn/-,u֟6" c`.=b ɋ_S5 +2þF8e'+W0Ϊ*~yi j53fL[~PC4/\n_$^?o㗹Bm@4K#cc`'0uoHticLbn[[Gsqq[d=^ZC,:eڒT%T$s Ո&\"-Uπ|w[d1s! ٫W]j$='*!{2ۃJbBMb ývtX)Y ghk=o~w/ew?{q7$]r.7=͡b#{f39YC?v1=BKG/|"?۔eιCa\_G"*IT"SOv_1҂ 3IOzf;Qz-<@KYleL `Vw{;7pܺ{-X}{ɈB6چ6|2K@AJ=ⳝA9ʙCÛʜ`E,uںX/8Tw=:_lI1 ΍yKR^ T룿CA \0fIքp&jF042C߿PrRdjtVhf5-ۏ7ZTvQI׭.[8GF&rexbȁXzG*k{_ 7\&KkePwOf7Nn꧲ D=s% CQ}"#.,Hd[;'\LI%: HCh=\ 5L!2 o\˄},Wvz9u̱R^dl5X#Ъ|%rVqU:O mYgQ84eYj \-4EP!FIiWbl.~2^i۬Uъ@ pciJ nYtv7x#]ì"ǺQhaV2)?>cMŃJT[MxG-}I|#5qFnԴ>Osl<׺FV8m~Ygs4NRW!ldedF&O@xCJр{JlKNף~ݹws]7]!|?.17 .nKk{m}Eq/i razAv8V;[q@;23IGซC<Az\Kog * r_pk۫ 7쿐]u1q 5V8N>KyѠv&}H 3&2'Sɲ[+*<ـ F!ac Fbt.ѳ>S\3 mccPfJiXm2yR%ťgb5#Fdm6䙃?QzwxSz{J6%amIJma9ox¥ <[+1 :&ר`0Hˤ?)`=J I7NWޣz2jS^vZ%BIDj)/i, *y8u\Dk%%b'K2j@m^&U^Tpdo9|G8{hx)Qu7(G&lS`X.V-~,PX42ke  zQfdm7R}a Q47~?uv DaVQ;ns}X 41rjS_xתc yvʂd!|QުX7%zOe U3!'F^j>1O?~Ժ@HJ.؞q+iuIyJ7oكr+^ '7z#OShf[*=}u{)d;ͦ4 ' 89RpN:W/M06t"f\l#Ha7Lc*UۡK/-]j0x:H4>@m9A.*# >zj?~'9tI.?J~ ;X .D x sn1;$#/4}O $`l7j Yt)ӹhNv. pDɓgA; Vfl|i59vֿI>]=[db6뭡0ر_!3$5/83EVGdvJ, w.#~?̟oJv(@HE{*S:w\Q@]ci.om)`ZSQIdEcACylx':ڪNut=TG.M:_W ymh#FzרCoI(jF8[\G)o]j0cbШ{ocr~q'=R#LQ,r|dPi)aԦO5S0ZY/B[\¢9O~B>lُⅺuquL\b.WPv!fgBM 5bu 4^⋅d8Z4U d/X1fc z_ecP'Tb1 ~B7˕ChmjK69*+6o{_6>#N+CYsI 2nƚ ]YwG0Tq b? l+LB19:з,]py:ZK66Q1W K0j_c'x?)GL`\ oej0} 9upH2rɼMaH]͕VXW7_YWX*Wbm'Ⱦ,"lkP?Xg ,rfRfWM819˘ѓa{_.֔ݍ10nx4Lv4$եS.IE+_VÜ -$9bȺ,2v k+6~]]vFl ̩8a<kJr="7?EUlf0u:;PJ3Hs})GqK& _3 $l]򮊻Б0`At"K:Z> GVZl,D}#9b(eܘm!hq|w|lε2)<&_ʴ0!5dcR $|pH)Ñ$}.SB:I)[\9j8$z:4[ Yz8J$u~mW"6!np?T72igJ 4hM7wWY;MU7 NjK{h+&M2x+mrb&)cFo|sP`kgoeD$g'*GO*2˴;Cj֘`['t[cšC^8^xǙm͙H6qD}?Pʿ]oP6*< `c7x`2<: &%wrJ֕@h*-3Wv\d^?+&%|G) 0 k-cauR.ۃ O8a DNv 5!NnġhJpDK$}o،OF`v$wG)<΄M%K3x`5/,KKHo">d|u눁Z~||DvW}@.t>E Jx}s%ccB=]:u-ȫ~%p @NdKh%7畛{H>'.Bp,CIm&dv.\YKEoਣ}m%Bz˦%*  qx_/eR}7|bk5 )p-T4G6T|ic )Oo "ѳhvCYOY52 9Ev_OOzTGPF!ךw>͓u]R :," +8&V~P>b%rwFLGg2J誨M tD=(19BnYW@'РkQo'eyeySFo陮zldP>޿q;? uY xѓ}9|σ) %p,8^-oeM THmRҐp}ྐbȪiH֌ M4 T&^U~+MFcG!M;6iG{<#(k56 r~!̵DFcSطL_*]N#c_mXrQm ^Gt 3h̛~JBx7SJ? Ǵcv[%4UoپDve+zS ѧC>Cf޴OZPƑ)e%l^ ]hI[:[RU: Vjz%Ȩ) 46s Wm0bFxFihXVm#o󠷚cͨS>:ݭV\%Y6feq&lJ,{6+`n<2x8&1_.*Ɓu[m{T aU5s{ϺtxF(PL!6u(> wKxd3Gyn$Ui -pI*St/R*!N5jvF!=U1H AVT =/b7d-Zz)ftBwh-sq&e'#x@hˀ As9{\4/Vv܃>.8Cx]4PxQ`*w9{1 9݆͠ݹfäAR]4Ov?xjxHb2ސG3ϯcTBMuY gݥ?CL\܅%:IԔAGst'&Щ$ gY^r@S2{&;ؕ1fܯYOy%RdjYn#e +oىh0uߌq:Q$s[(5!J%Pο,U&9?#%hW&%=|) }&%HgZw]<`H^UW9@}Yqak.h7޲cW豌t'.:s"s"4?TU. CC_#ݐ=56?fVF<^vLQzqʟoRk,„QR4/1LdwK6w QW[bi9BgKڱ7bytokHg0 Y5Zt;<'SӶN-[_Nn-NX(-j$bp{cjyʱ`:13vB[w$]D7& XlԵvPq>m'7A Y`Y,ST;"(bÈ# +শ/Ȥ<@H[W/`. =Sg@`%̾A{ & tȃLP&?(禛H,!Xj\'_7 -~؋1Dq |)75u[ō@9.am'eM] \G-t,lMQ1ФdK Qq$h c1[hu.=l,S* R`u.^cB옭=8*ʭ * eܛ" ԂF#{ R<)Xiu-g!x RXi':# RxCLbh.#S^nTIz'qr1KOkPו M-FO@)*VpAux|GeN$]⠭נzp&oׂ}!>17/{ae~;Ǣ_`sR突ppB:N|BcVPY7ܿrHxٻ@?=ш?}J>n@abddN\xY %Y[Ŀ)axr!i9q<̝:wRCZإ~&B#.ߗ-:_>8o·[xcT)yzg@Ri(զּţqMOx$ ȝBVJmkQú#(ۥF 9MUExJ黧B2$58 G3.1V "14* =",~4/gQyVUVo?0 [RwZ;3yGњ~*jdX\{sO_=3RS5&LJ"oɛ bAtSm6[\=tP5BeTR8EҿjNߊ 5(8@z  $+;zrF+P2=E?A~g]QuWKt4L<*GǽXs0щܿAܙYy_?w[Z~}*dH Ȼgқ9=g.;Z߫yԼ}.#ZZ>µ~tOGk#*lU|E.9}$Be;0"Q9¸#`'އxF?[Ynqo!8]`$n9 ~ޤ⫸WYy,o5,4p%/o:uaNjZd0r-u˱6u=D!0NlC+miׄA2/KYiJe^6+tuvݼݭb7g8-Bd <%Ⅱ8IVіqHGewz5ߨHu Ikx_O )YuD:v-?CoFػ ~d2# l6GeJ;>\n)Z@e %l!rKX*iʹnL]]o\2ZtX6k(8aEXhm9PJIea4 yy&gI,7(yigk|4e/4LtT`Y~qKPXΈl'*pavWB\dhʐν4Z e \eǟnX!/^V-XWPVko Ϲ7n]C:#<+k0 -q2 ^0UBz7":D%i3!*FzDmEsj<ߓ({:o%Dfvr[Ur:&e\}Ke-?gB?Ѵ6x°>|/ 3 tBց7KI0%EGJ*dʹ׌9Ipx`յwq.'W}a3X$x%uq̪FrwkXvu &&&=F[`yǹJg5P40E8}=7 qC[.y뇔;*s̘< 0Lrx*v>kb8.7^:/Em6˽=Ռ>Cy{Ox`R50F>r: 4Ԕ q;6rq!Ri tD%̼IIISH6\D'Cx?*-xeZAs3X1]0A #tϖ-'vR7݋NOޤ.4Ttk/,[Z`<ԝYQdf|!5̞{?s{v+v;;Sm*b3Ht9KH }2(gxo"D<_,4ۘn"*XnٯK<D"??!\P,@49HBD`x9$7Kzי›C@hl-Wӯa[X}j|<}0?J҅S >?3vlH":k}p!r@8HD-yYBt8a-Ó腻?"\e7.>UƠQaAcK/؊+j/ca.rf*"u?,hc~Z HҲT|jl^޿횲 [NlmP ~D*~2}tURph~;"vC|鯿hrx(I c7ϻ}ͥ+w"|6fpy+k'4hCАJ& H`} N_]ĸgҤW +MFNm+ o'b h΅b9n~Q~HJj xd auP?(lgk;8M<'&&z r%&,ybg-5h+*)Ȩ!?2=|0/%ay@= T6|D#!5id( eZ$Wb<ISQFN8q#tÜi`'q`U3?Xڏ̸J&j2€3 ;C"&Ů|$x""IE| G,|ٌ8(U!(SB hPr]8Pơɑ,AB]*bI):o_ ̾͡r/,^m,qՙi&)(Oۯ7ж)};/ma=ŒDng`oclBnoo$cE5qs41?$awcWMҌX"";|gH7(SAfKMhʵ ]R!gg]{͵eh: ~2q.ѫ=.u/>]WH@G)a[MŃi$QOPNC['ww H>h Lj-0HzU_:>Oę;$k,!&;,]dS>?pPtEsXw\f2ut2AKo:Fr(1?NPu !M@Zz TXOmhc+Q ޭL=A(Ѓi|֛O `a=G.^ӊb7pnYQӛ h̠"7(x&)|I3ӊc"W Ut|BlоTNjX9YF_TP_ߋBMDtu2òL 3.XdZf&"t()ѱ]ʇ5 j?R9%*#KXWa&6ɛC01GԂGNbn L.'Fކb/^WN1tbȁ ُiPغ4aʡf6sh B.zYVy/\lΫE1h,ɅTPl#kGR/[:и*y-ҶTu ֋$I/rGCRÞ UFD 6жEqnbDWE~63A01l_Fh M,X:Gu<¼-v!E9 5ea6?01SYܯM'ĹqU)5 NKdU .S#ha$h)ss]9' MB3 !޻2vhxYXQ+yP ;ueZ S'HkaSlF(Y=bOaA攄-*]˶ԺaeO5L .Iu `sBxL\bH&^S=F tMG,׶q rv a,Kӛ0*g2M۞@ zZEjv"6%@NSJOnLb.+ 'LMZX aM`N><60  ƏϹB\1H?1BR=JXq QUԑww͈ -w)~rA%`-Z@u2}TTϡb&&1 6B7 XڱE{XF^DJpa5.nɓU̪gJ)[zqq?ϥf=#hJ`譗Ê{漙Nc˂LKIn*VJ3뀂vm K6k@j _1Fgy-$?1Zmo:IGzR3Uɋ-~-yw#Pp/|rO:0[Bھ_ |áu%'کtӺUBWϯOڽ,YndLa΃3`n;eҭfOpbwl6j` ڙPbֈ@H`ipS=Nc;WٳwL|*>Kr3U哩 l3i>l((=H*yPE'\v\HBbWx^hiex1I7a]IVS{[yw(g*:QȟxTs5i֯)P*?OtyQ=m\ģI*aqۊ'=`5>[)# =HG;&xY̜1\sy!d8XY:fYrZGf /:"a of P $6TM!GdR)t"MUn~*WeJykCƳPN>#? d+3` ;0kr DpZ r`SA6Ÿ{ WaP߇bQ1Ohb`3?}vE~?E?eJsc%~3[|StB8sT8Q K-RTGܥeF*y<`m9IZ_m\0C3ypO2T>p$Ʊn!hvĐ1B^00*?A'SO/\9m0VnP_ħR*VBAA@ ǢKĐ5R ] Z-<85ƽM[w:ڊ˒%^jeFjn:iMV F1*Ae%{8r[HYURS|`ʍ`I:xu֐A'R}=ȝX`"y\~P/󼀆e.`YحM$}Lgv>jsnJiv% S_//,@[a l5:T(^8uvibPfB{:CP>U65uЋi@eJ 7>5_fSR050+kېW㎱\.qI!{XzOWCXn,Kqޘ>=B?4鱬N)'dRrɲlv0~ˤUrw֎ЊέI+@'YZY_ZfBH*!攖!lCY&DFȄ} C^Pvo*.rQ%j1F /9\&{}}W`=t6{M1d? Eh r:婩A )ݨFJԏwRS{whc+.q80o ne wΫ%iSOwF[>*DLqo@1j=ʸ/?J>ώ=&`b^;RąY~{7ɑzt$Q.]5|s,#ÍN'2+\W#{M [/0@ZԷj8iUR202_yAy1?V*xRnQ}&yw FRLP & oz3ł',=6ngnPN|@ҵw*ta0ENm?ɢx(?H{2$]nF9ގ /:\TIi|->,8Ȟ_D:!8)1VQPC;#$0ueT~Ԓ %nB|5xY 2HBE ;XoO$nV?Jf:euk5 Qۏy$a-[]"Nog(< ]oaQ+l2&rɌQZfMvh4IC k5)?iX?.O(,QDU 9d?"N:m0_>9N6*44T=U@XFNR1n4w._U+ɼPt^a!;,RHݵM֍䐌$J ᬰ}eC!Y~k6k))ǽ3 0g3 Fdoې F[t UƵFi8=G~ .R˲>u:5 )i9s YEK±YJ?޶W%2>7imd>׹ۧSU ĕDݞQd,? x&vrMQaFòAAjL1ύ\r%cذn8w(^ ٍvwGywقtX1~  7-K]!fB9]DzQ>,oҽHŖyWL̓4-zwop%݄1mɧ迃"AÝk6^ @uNJhU-]CA2Nr`Hjn puRJa1,2GB~a$ր|]i!BF}>J^fĻi*Q^;OW{ERHOqjd&3>=xb;gD+'vP v]COu: bJj.y1:jXT7Y@i~0:>c=@c'PT|Eԝ9y^~0Ga8 rS%!NV\Rn Ass̺cxϠnma̮]XLzhVF6VT #[Lt_8]#w-Apz4Ɉ;/#ˏKbW wnGC4-:vp%;M;_pnHe4O҉o CɷIxXBcU$-ɥ O@§.LR*d\j rm)ZeT1ܧǞV-o^{H%$H cTv9Bʋ6M NQ7]ǥ.UB g݆ u 9Bx:)Xқ4͏T"*,Cx^/jPT2Oa4) ɩ=̳lj/>ǻ-!i  G tB\-aW ;z˧ P^4Ż^7Q8=,vYs"`%*<&SDS}sӄ,9?Hvonm!r8Lirlr]Fm>*k{~i{g|#8eTY[增/_VhTua-QX;z;ߗA!%?4`[Wer, &EwKnx4jĆ`"A,a"!o b#RY _|"͵Mk( ը AXβ|0CA*aP\|,A:<ϫxn.eƱD*z#JNQ?C-2U <~ȉfhag2ۙ5 cQBH\|w=EBB@ح]^a{ j""t UB)SuCҵԥWXK HAsi墦de^H,̺/v2-%\CL1d% I$`kۗ̕A+biSҀ `{iDK|y;Ef]߁ác,KnwcO k|E(v66CBc}bϗ G( WiLca1QbCF'NZTWgX],"P:WcŻZڒQ q5x׻z7nSt0蓙W9&E~6 ^^QknЋ&rjrBN&[QƇc&?l׸dY\4sı]tt1HުܕiaX==D[`ShqV3lJOwT4O8>jM)ZVUrJd!O (' z0Wu~~-VSZQګ\Pƴ8+τOPpvZ,4eό$jnQߩInDG3sVCfOvʿLə >x+3HQ#?MJJNK;eG.>@#{Z*OEO1Bc:pBakiv"hvpC_ZZS #?\V6̲r&/$%?Hx̶GF:]zz\.ӝZ0(igELIBY0L1=2sz˂e'Gm:%i4s~JXkc0gٙtTҢԓ (=HqZCdѰ wwf=y׃ղzf};]d7' - }%ajD&(:9$w=ˆ*>I>PmPĽK7U\o/Ix_#E{2̵]-^tΤ=T΀qvw}5G~+`J#@'Bj)[ǕPs4h@V#0VŊ ;PuȀm_dV+ߞ!(^qgxѸw*{e<--a/@}J&O* 0ilx!Ն(k@!ɘu⣈NRx\,t+!P~G'ua}4i"H ,u>"׳jbxEVZN&4su<vFB2V\+ZF \HK:.Y60a}M^a`$TFg-:AJ̵d`,nR8R%鹡G Ya{w!l]"T&X~ce,7u7F:o"-ЉpND80_ a+M\!f>׀/ݿ+c>a]?pG6MnַǶ9REAKVVF}m@Z-ONNdiv?a'Р215n>G6c5G&Ѓqp4uJy8u Z(CPj+w儠 paym7[pps5:b)%{nIh Kݙ_^a-el?c0O~L4cc)ndL歛], 2ȇ E`oK3aqZ!Ţ[\*VY{2ۦYa@uluOsP>0?D״FTwvp咲(^;¬Fnthѫr1u%_$6 9g:o+dqadkф|>ثV\?},xPKwpPY#I&.aAt^ğo/9Y#]P#cnn?Ac;tjҀER(=t5t%by2%@ =C$U}HVWY:?)bmίZi4%ŰZmc2;[-:ݟ 6T҉V4tlءv puwޘt!xo~q"E7֍8F~c*En)zք%M OJor8ΗǦ >n(&FУ|_桎;=`\إ#< kT~\̀MxnV[or}?_؂%q\KZ(G eC2 (@=U).`t'$89#)RkmT%E21^%*@~jtI2aVM^@k:0>Ca8Eάi8uzvR/3j#X2f;Z ObC{"ghTXS4̔"e[sIΎW‗M'W(ժŞj2 6 O\4+*x KJOFy>B]nV4kc lLi駘Q@zI`~!i"~AU0}\$D~X3k Ԡx*{ny9s!Y} )zT:q sw]T؃דX1:bCNWfDdyڰTw[mJXT AiAK8@9eswVhiDYtf:?{+fq̐CPS/ !d viP2R^Я$`)^mG s~(Kz>;qϡܳe_bx|&ʗ@B,X_fi\\c<巈Mz 5 q"~iK)ucgm@1V{tу QI/gaUޭBMjToO-pt |)qUQ8T7˧D ;y(AA4G]YyMjQu-p-.n3z4d,E V w\8ug;sq3ʬ(u|vjz6Ja%6j^F,\F^*lS\`=\Ĉҙ_r[5_7-m#I[E-:35CsW E_Q4 PLs%M5˂h=ntuf|hw?@&26IˀeڡU.$Uz[ByIK8W.wWߋ4 1`aiV|a1- uSX4Uag:ѮnbuQ}M PEq`cg5PizOޥ6{u:FǠ ?yr|#S_(,E٪ƙ[oy6S"f3Xjv>F Ye8}it7:\ 2^-;7s[ϧس3sləLFcCF:V؞fc/h1NJMm(}^(*@eٶHBȓESHvnt_!f=sg;u6YۗAt-4(p0TT 9~d 76?5#,a *P鼌%k'D0@Cup -gJRCr,yb)UkP|sQW{ G绁r eS.rv>|4).S)| "Y A<+l(ߟW TqeC!i,]QwK/K kKcNU4MaL'\WG\NU5cR {Jܫ֎ޕaKS+sJ&(xh=*>SwrN9AI`:w6QJPd w h}G=?1ܞ&W-a5QD+{b34V7dtC2 '}zWQM\0eet&+5؜7ntʵ~+!#5PkrsFSz.(69EyҡU# ,O2#Y@PґcVUpp-Cgaء %%H8yD|,)3/\=Iۋ}TViarpԺVKi>B\XW0z(΢a7 .X=7K房8x#svŬhh aIiT)H_dp+(h/J`_zմbY@A] V#C5U'f(Лf2Z"yy`6F 'F\$M;3nqفsRx\.I13/AeStõ,k:E'ozK(aQ.f~YRL0ϴ.1ѕ4`cm@]wbC3ɺlh2vh._҇; + }Z<ٝ_ GT>=UDb+IzMyX*};ހdDu;PJM$.&1yPնx P op1\Civ:'Z݀X%ywMʕE3(00œKBIP,XWIb:.EKP95`7-T^`hgδ#gCo8-a{`+`Nvt=UX sqj#x] _v7 $Ȕ_A+sDyV_ϳ}>$:;p{c}Jj*JlUGP4]̔dQ #-XU*gyß$YǏUvi^ƹ&@߁N8'gMhXpĞCU[]s I|d7-d{V2d".~Ȃ:.ԕv튏sU+948[N֤pE~~7^־ZLHdWauLyRk^}ތjŞ%S81/) $ @맶>tѦWr/7m>&<@QA Q/_nݱw}|b9?dY̕-M9mlO9X*{^!( 1dǯk1qI|t.Z,&zY]^tm ̰D0@k;b3\chC6zq!^נłM^ c*B`A璢J2ԝ{{r9I@)A>gX#W) YW bLhջao.AG]B&E[Ɏxѭn;3ŒO4 "1|6OZKaIl`k FSl"0ͅȇ`=" a3M89-+N,_ϭ+p5[GUI·~!rb܏BVMS ~# ΂n]N[ Fʐo6V.P&H~@ 6aHZfd1ٛc!WR.\g^E'X ljH"hyusA5wPBRScfdc͵p=i#~&"0_J8f(KUd;\R ,&~oQVD ͹4o Xq, d1M|KH#X?EHI"}$8iו|]]vd$k 4?PN΋!yBSFόT`F$6ۖ]>7_Th \"KEga{O5D6&BƺA)ʴDh[Dƙ :/{L  K=b$?2s|JN# ) $a6x0,jf5!1fѢ"o]fRV$˜ZVgDq8x1>~^_;mub{\kI!utIÞVy[~yijwkN mh 9S÷8k?tz~< ԮO7fN#ԻVBXVc$Ė6Z$Υܭ d#T篿&9S/%p(. iÿ,͓8kJʾ-H1d`md^[T0UloDC5v'sa ˩K0K*0k:[P I cn} 铝"DZϽM`<^5 ,_/[ `*Df~QG(hvl8 =8V6.̚)_p.$Uȇn w,Ʌ>C; X3ZR| La4èР?&8mdX^ om/%6Z1Oy˦CPSnw;MM1by>asdD>"+( KEG|9n:ڳ=6Hch+ǪE2~$t62/:Wql"٨xdzOFJa\n.X^YN\z+wHPς:AnQ4% vsrÛO⣸FW`䋳>'7,nhQ.GY=JQΩ,@6!߫P%Ŕ9f ^Db}yпp:/tЮ;W˃N_Ke H&;N (oa` F_f&w`G<{eĤ!ݜ[H7 WI O2X?[7TAP:($#k{MW4d@`Q!78)ݔi ZѓC>m)Q:/Ŋ+^EΝe&ĵ|?PyrJa;=a4bETh SߎRhbN}o"ϑ\\~YiDQK`zR]gXXR(85wFh fI M𾃍WX %Zݺa0;_lM P6/cw.CNOZcTv[ϵ !4 h=l t,u|@21l얻 -矾.Ņ/fs(Odz ɻac ͂Bo*C;e L}ܒ L:T6Q65F z]{ei&JOcE4,+D;/KB$(pS'@=Fd^/\Hf'W;ڦzWyY_vwhKU2u5kE|sdpƸuv B 9#g $P+|xϹ/1 R9|F%-RrJf 0UIEL{3 R( Zu+I'z/(#(s7M)A.d*PUE9hdcDweےNN&W{K+eyfgSqrх#fZÖշl:C]$XTA6;&JxP#I?_o_sC0F+= u YԻs%.7&Y^8Hn(i 6'.4tjaS0\" Rd}@$5o"{{Dm 3#_W׻u] z,l_,.,~ܣؤJ(a /wi=b1"Ƌ TgI|{[uTB3A\ L>׾SXʺjD3 N~a@ y+fod v *M{qB%wnjεFQ)Z)&-s~<'Ң8bȲpۨl)(h9:+6|mBXXs0GW2_LCeLN}X֖dB|&>'KwRPz-y:1N*U}r5N?aУµ64>Fb{3z k_4j+~K{X%ɓ^ݗk7`kzZgls"{@?9H-'ȿ!%~%n"Qꀴٝ: `"| dϼÉ>ԪYkn)>CpX|@%/uf'ɢk|O<CsIW(Y|ʮp٨O#;d=UT2ͽ2/q"1Y~_ռmKі֩A~Ղ`4ia63$'?`ߋoU`+EQ=Cp69:5vdy` "Ԣ#qvz]8 ASoi[J6trz{@.lt҈;$[OE_j Sr9jarW<)Dw5RDLv,Jf6GeϟaE:&},7k@+GyNפܿ{YiVw0[d,J$dz4Rn[uP\ifޏ ) d-s0/>7 `<\N^ ~,G(ŧmЃ%o;@&^%"$E|sߟYISe.ژDMp)ҡ3[Fn;$ DCe7wpN"H/03ĆiCeBCpI* SIjJhO“R/ 뜍+_/bSͽl!0NԽJS&' ck)b)>:I2]ko-NS٦,OeXy0 R--xdw04FXɺk l?6&9q($-/43ɭVm*A! ;ZyLPDE%hYCуn2!ĕTl,{ZZ.U7`J8Af5SE'XmRUV>*+ӊtB)t^aBNrS=u4#<Ѳf*h2\]uv鱀|5dZ$93FB&~ @DCc>騤CȰ̝`\}Bc^MȕR6EyѪ)}v?Z}MHfO. NZdQj9+99E\63 )\G Ft^=t7B2MݗwSCO-K{U/> W1UPѰQ[׭┪."p2FХGhZ95 l3#a։PMIэ/&!(OYz_X\YvdwQ FVyI[R9b'^)]Ў[hLni+>&Ԓ-:$ jw0i%LR߀9CxXx@NO-1罒ZY; +$o=g6dM8lU,A n#MB$ohxѕW{0~AHJrE|o$jiI#vN 'ZOAw" (>Ma ZԾ O*Vς0K1Y[-w8j bwE1cE6:YFk%ɮ[ъ"h9)֓dtu$x8ZXB Z7ku&?Ch)yy\  )U29m3_%x Gl$-)qU]PGBC.,0(XFdQ< b3@8z5b BLH j:~nțm*5_yDq EYA;Ymfm%J-g' \Fg9:ճG7}&W=QJ[6Aq7#s=BЭ=8,yRG럔ˮv3R:G3D)]oQ?)2?lP46u4ߗWdhc^~Aw?S0% `uϰ#}@HtSXFOΉīQp خ+5klckE"2aHh֯/A_NB p سZ+`-޻1EU˛X]k[̙=-H74O<ڎUi {B `&inBNl?,xEt{+jIZȓ{/m6X5\?5|xп=3$ٳWH.KK߿։*@G0b wlmbթ`<$:=?3 +=gčJɚ@I,Mk[SMh\1q\!qhFm|@TAaxJI|)rˋ[4~PRUZżqC}`Xf(n\V#}qړ> 2W˴VaKu9?;яxzV1!E$ix=/tD3Mxru6>e*rG_ нbfh~y3=C3q4?=ep {U 7ղpSlb)P_c %xG:e#[N7y+tW!BͬhP:6lcep [u( kYSݹ D%A[A,:6>ND7_;z¯Ǡ}'VX3:Jֹ-Z?tTK~EB5{祆)kbUl Rtk/2:,bk%7T&Ncteth7= i w =E) O*-tz/(EHbZɒ|}f UQ5+cР&j_9tE\,ϱV0ڛ]./x)"[9D7 u!2t`o0 2ClSot}1L2G2YˇF+XBLaTǣ$u0挅Y#1L)3<z% {8#~-4m LIC v:)ݠ 9EX7@֩+G$cMs|/Cc&3J֥nТJ-'/wlp2@F{M )]N kYW%ѩH]#V8z.88 #Vƀ-A.#bucKp#Ya4M !P@];D("Dw5Ǹ@Uz_)=S@,@e|p6)!&7S>TjeB ?-2BpNrl.aoi~y? me-2&/C(<\*u] (:HsJ#ZvE_dMlFAz(WڂxV9Q?Q$m;o#^') 4zxaA;j"4Eq H.9o3m;M ְ~*ȍtmHA6JHg hLrH:נּƞ[)y2!  1;]Vbp%(iuԧPn[pz?2!3`s" h޹Va.EU5wԐ:e9qz۳w6,P/ZB%`RX}.x2@D1`D^P*ED{? H36ͦU:0ޭM#Qc, FƛbGZ8B3Cs hCr[nkwٹK&Zx:Fi>qH&؞;9A锛N[O[jw&mvW;]pxe]h^OkY6<$`֖3A)&5PXQվ3ZP0^OA6N2RaBkVY\nWq(z)e)-o4U>2.2}2bgPCR-=R 1= +Z6 ?!t^*)ڗ˘q4^R3~ɼ,eZzV6n¿`%{2[Q!tC\Uj#".U)/_d?Z=< $=i 0%\1 DM!--Wb1woe1 Uj77 0Gp™D _5ս1֑Slh!P;H NGA<%5,N-%bν6b̅IC$O_.)fN̐,*V" 苵!t?qA;ivG=4fDGƐBhGN"=ljwW/k%4Y>P|DVM+6I;q^5rѼh)C_N\ڡ~ٜ$_Y}ak=ɇie}TD전ma|7)Gu&L^>ߖ獉A?}^/}֓=vc7/I@;w};iu9{s(8ws5Mq,=:PASjav"-_tG~w;T@i]TB..\kSvϨMM 3#pRObt{kv 2?mq9^# D{lXdV7T+<:թɰ׮ڗ.c sgw(OA;QC{[&Rw 5{iv`iSH'M6AZf^sD)˥yuPn473 ]<&S鶬{G@to#B NbYa-A%=O%\f>m= gehń>;xcDl)-n8I+hӐ԰Y3#l6D_caz؋Mۯ tTESU!jyU?I\_vPG9 jlpJת CH^bK)!~ҸC&Td|*_j܁ovoj5Kcm hOÂ5졨JحV4|P@G7 q~j;MN6q9/)AYV~ׄV2)bK&%ȋr^rẃh`CqzBm3 Zyfpߥ@?,܊F"{ܙ@xPk2v>J>{L265-A2Fo-\'<Ww.G*Aq2f˓*2gnSM+`.aca|Pr\ <uZZ<"} ;ΑRo. *''/^Ƹ=q 3P\8̀m 9#C O$5Q^L†K.L^Hl5YDY+{էq>0+¥T|Rl '8Š69o84QUf̥} ~U WsgnҡCM-܃[9|Nq2W"S?=eO. kա4zS]-ũc 1h-͈G|mw,0J]<;cUn-h^4/`ڳњ*S -kBFigzu{&佴Uz0E}dI֚#YQ;ln%zA8\af `jUu@UG5, H?JOuV/ӳ S.5TFfk-Oy(kXZsHR| 6 EnD<.L=aϪaZ7%ۂ'~jer/J; c 'IʮhmҸFɹ$I8QMְG`䗺AÍ5D.۽8a6C? Ndg L+YEtv5i՜z O;qӖ{\U]I0r dV|[]_DCB47fmb0v3qaH'J^ SeSˉ튈WJIU I K{j& %HJ8>˴d&W.@-}T1vSsQ<LFJ($dM, !%vxP ǧhVcۅ p AU/ KN(H}Z~zPeբWj!ZV0QeV]vEEkSz2VWr!({A-䁺(kDۑoe{;1 7 ʦmVcÿ;Y#޶ Tq#wmoqKmlUEaLs$z|:d۹ACFLvR&Q @r_!5o&YGkEϱe%8HWoҏfs3kD0Z/K gu p윍$96[BB}Ԡ%۾?ң5p}.blY8?ܮŸ>1X9_<~ Gţā@2]E ;/'(x|Ztbx-$c^E|DZ9`y{-xW js8{3HTb=Bڏ ]W 8hq8ݲUZ,aiZrizzOD^3)ͨ%grt qۖx|t+EiD@l3h$Y610M3xjƄ9ЩpK:Vg//IeT*Z'xic}i61 ZM#>訃1&!D1~)_H>PY϶ Sj@rAg%BAsɄW脎IfK~а9eth>}QwBUm8AUO=ɝl:ӖX#pcuP/52m?#D% b}) &&n=pt2V9kEeK~9\V{g ;hՠ}ͅs'{t^ V= ڈ#l_z\dC<3g6Fq\@^uyՍ'٣O6>NK?8?IHp wHkr:x*=;3p}g]ȩ MQvzip-:ƕy?'|D3q<-h+[p4(`ki* 0hKK8 E&~ד>cA:LҺx4,D Z kQ:B~gk0䚁;Da~)U:*X5pGy}/_HL霯9[!$텄cMJHpGvrHf>kR_MDjؾg৅2'WMaz_Kv'Ytb) Hi]8Ed__musf4:rʢR~ӹ .mj&..h[Km =YRm$(SzؾxT*:uj"?r#tv+RTīw-3Ԩ{ g}u烖Gg)d8 PWڻ6-2RBh$+z+dzK#ј@͉sKojO{#{J&K'7iRuI+}>NétODd *\,~hݕõIixA4zB!P?hOj7K%)ǘ.B \n?NQJ2p.q4֥l]C1>ҸRry>~n 8 dK}"hZh&6B'$ BSKu՝aVlݬcaJPL`᧫8j@]E\wM\]kX:6eM]ӞZ*vJS2=VhC!7sȀq)*9baK\/Gbܸ ywyijRa,Pi_|92UAmDB|[MǫDA?~>N6<8%_@[WBK;"@U5SfAsf~"VYbkfX"ҡ20wء0 ²7޼pj/yԈɗD>TC!P-/kw n 4rF8@xڭJd򶁪p&́S9K\uَE~(axe"F" sֹ Hܰů,$EƎ"K}.Jze 19yUL6pUa.t~*¶8uXWZ$f~$>*47\L-]f[pJ7т6;R/gx?+1m–&@%Q:cȒەdU5V6V}.$ C$`=s Vmy ;'_7\0[w5)F7%}ݚ*6λ)<&.X* a"(_lV _J*|Jvd 3t [ u f\,[y.P5?U]w`P2B  $t*xy {ٱQ&&=o\rc򻝘;\0F4P:gE]momrk݌W\ž2\*fWw!, 7GJ||y0Qi^T})UX`NwO}/76@R6\¥[FPEhE!NRnLgfc##N^kj0]}<%*U1?ocs6yDҀD:C7;팁j{O)+@*Ƭ7ֆg$>$47;IzIW Ts.1] X-an=Pj25DQ_ b/=h~\kΦLԄ!IfO'%1M_s)&B!r#hg^9c{vb)#m '7 ΂jp ʄ%k HaEϹ08p9aX'nZLn[~GS CA%ƷzE-,Djb{n!bkQ/rjhvC::^_M;kKjj?{@-7 O2دl6WjV{iF֩ Jx\LmA aG2tw?{OXV|6w| XX6}n{"#m|,NT@b~ZDQngS#4p@_D:R CgUy0۟ о[,ha nl Ρu3O_;ab$A1G֣in?%~ [IKrWjU+zh5GtQP9ϣq:eD}PhKzU+ Á]˝.lّ-d"\cÞɫ{;ngęE*hLm̩gc5t{B:i3/LIgњhEYS@V: [~݋xXo4;Q=45O3`M-տXi٠),=- cY"J7@6@L/m1x:"Px괬5Z]:ŋp2֮aD>."Dg >ps~hñ.͸?vQ[ƛ$EltWXƊ` K 5v/_"bM,YpzCv6f8e8|2^;#\T&klē*, XE'O#6lkz n˯`~< N߲9%hj 2WV$f]U{T+D=;L:Yκ&ׇGF )FFwL#?=?t3'6OyC+CĢ!c CBcTu9A1 [E3axK):}5VgC}3-ͨJȟv!#M\{Sk8;R.zͳBK;khdsh n#08£*8d9E"+ .Kψ[a3)e7/]꾷-KDKY\;QJ37{vI’g՛ &WM?& lB+wòNX6md.^*zUV& Ѻ'ԟsۼdtzRܴWa(62댌ga΁Ue4vJ}sHwca[5mC#:kpGF̠\N]EӨM}/=ϟ9BZ*fpkH:V[ڗkO۵` l&^>Gqw?Ny~K/c` Lӗ_l'ZV?x X%T^sDE]8ثc p!Ieqɵ)B"bi\`]FBDӳywXF!^k&LnDwZhʳk5$LQRI rlyhGfb.n$S-r SK$[Ԭv\M Z:dˬ`IKՐA9NFŇCq^'Z5=ѧ<^gKxvoYeAv=3KՓ'^iՇ&IPb5Juޣ#y+e ;}>%.nB'O-W- BLA")rw|-(+WD>Vi|ROLtȳbQ/|!g(i]rnf36?BW X[ыfPC[XkA#Nv/ToͽTg+˶!)J8aNY gRFQ^OSzD>}375Rθ@.6z6IxUF~ڌ1}zEuW$c2X*%[]:f7ngXdCo=9TN?Rgv!=ew.UJQ;'Gi՚,%am@h_Ѭt6A}ɨJ:DK"RyAE˞>>໔ a |[p4z6ϧI: R  -iLmȓa V%pLNT]0s2%t%4i*"ȅhɅ྇t` y+v Cj P~Ŕի^?ޚ ,^ڌh,:ݸk7ͯJ0^%>!>#Nw}k]wEEv)B T ɸAլ!~WXBk悼NB$+ Kz 43^ԫM fq]6$5#!%b_#)]P2f~ʌ`^MmFۺ\]^-g ѝZ{[[x]6y2VfVb͜ [5D맥eMӾ|)3wY?f\р:ڊoWֻ Gq1>ھ5.`1aDn՝2[Q$jEjh6Ej>a! wW;Fw41maZO3۹mekfb3\Ńnܟ~UʵLp7;=V2wA_( *ա3UT*Yɋ󹹾ZOzYϩ*lw Fߏ?c;KQFɗ7BcKHe rލodΕc}ۡ q$xM幄 .~3~4'dDJN +DW(\AoԐq}am"NZOBb[,s[^~9'hF ݸ0D~3R - JĿ(͇jK&d/{S96&aor+"V">)IO]΍qaq|7aCǨk5r4A ==_v*Zb͑*4^{ܣHrck!L}_I}+2H1BXaCgP sEVpQ&Fv@+l/L A6-p9/Z#agf SG«VV0?Ů3mv@'|џLIpHVH7'+YΉ}ɵ܆|4_w`h]hTg}(Ns5q[WToFe ; (͜@e<3~_3YGn}5r6tlY_0V7`Gܘ[!(|zH̴O!?㷻h͈$\:^޸*tNH4.6e3e tJX p|fһW(ri>NW_OTKF^uL=Rk-bh3Sʙ PqsU.Qi'cȺ oojf7μGpkbK4vg֝PqBQn;][TF"?77I {îPc6ZJf##Om ]fHHp {s*&;8 {~SP_n<*AHtHߵi3?"r upE6^qӪofW\hڄ斕т1-h=e6L,V|\齷l}aalm%܊iؠN,{h7 ,e ۲*`Z84 d<"2rW+ dfQ!wvU<,;yvw>aߜ?݁p8vm`.%#B v/;̷4*OC{ m4HTZ=6t Ϲ['G=`]\ee٘6/Jp.g& ,4d[XBJI2zg +އ7oـ '1%f*FZc͕"2i?cFF۽BdW`j(· ]`M0` mIS<׳ܴβ;O#Iż;u[Y239)FI3g`?fv,(a/aff=wڨDH'5.(SB2 xc O$#{&ӣbs/K5$>2=8ƖRm"Bfۄ6a6@t\,Q7_EI/9l¾N5C  )FZO~_܋JTj. nN/ H7-Kbv$?KᡜctӱK,Bvs >'5%v^$2C4r*d=}0XG?\o{0&0| /E9)ui`O.$){J^+,L}=]0!))]Q6Tji%D ۭ77#^U?eVCr}孒HW8>q$3EYp\WdD@thbuQ_e01Wch_ y8<3B$ևjQ:F?>,ɡ,VT !)=aDAܵ:^CS,&@bԎq<,c~[fS擑;>hzŷYK"ߝ=STMU*iB },ڦwvP*stٖK 7R">BC,3vTlq ߪ%[E9$Wrv!Ыa|oOj=&fxlGn/ tV*:n>)f-I}|ٮݰIe u ^T?K6Bji &X+8y_($S!qt_cC}L-`jDT7M[x\ f[?Fx4R[A:p9p=0;$c_+13,cE^t/lHo3YY2lG9ŪIH۾o<~A`ɍ܏\5,UZ5$rc! ZRּ7Mp\֟ok!v4N܊ tO'Vy)XvueC"*gZ8y&;2|`TC!a!w܏'7sq*'T~|(@^rMz BE8V`?8}[/r|ccB蓭8 3x[Ϥ9g6Q*"ȲOD d rq~kF[pl–֛c30]<#m*-fdqi~$6yAemWшV Bm-G1 {)W2j"spas*( /LDr]8wV獐:ܨ{~Ă-^.bv2:p;gPta1s9=oJx$nmBWc! 6X+$ R;7nDJq"4>q\Ӭ$# [zmSq+")-z(kպ=L?/?(PD׉dSG} m|ᇏ+ ѭKqKu+祺LQRL6 . V?;|ˋY"{O0g+yNybND4`pN6NO!q[t%DQR-_? S4z%N֤EF# wWM-)oL~s =;jt2[26 ';r3;y˂cMv\n=ѹ%edGcg+p3C1 1p;Z߃,4~ҹ: g N1XF}<a^'Va߉49 /m(e>7Oukdv/^{@/.҈ؽHoѼzk ^xp(jdM2}la<{,U^JjgIJWtwJg[vOwNJ)|1*K{劒: }&,Y{зv$?n8D $BvhgY7-)=7ݝQ7qx!?M%TEcRsu i`TN $,J"< pT JK\ZZ&Z|!2CٰC-HMr[/hIb NPn^谓ۆ0a٣%=&U:2?}z?qCC_:-͹z֯oc[/-1x3XL0E[rdOW g}/cCɻ3ر?NJhJKκ`Q9iGb#\˧ώP +FRiu\~5~RBOt`Il\߀f\2]-=Hǽn챁apGpMe6?Pyqsࣣ{3(bYE"$4o9)  C8юإw%츲|(TcHj7ߜp} % +rFH=c;Zb·XPs<RM':l4-_)gYջc]tekFyԦ6`8GZ'܊,Wk[}u+7vE4Z F٣4! Us&ܯzA8i !{]x_$څie*٦_YÕh U!a.Pa0H`5r؜aݿ]%}`\KŒ%rŬGA6Bԯ=dVrG8g(O:2)kXr ЮJ>?9y7HJS.V%gNOf*%~`o|%y!7mM[ZFRHHISY;o3;[!ʿ_&*> FB88|c]'}^|}Fh#0!УK,+_ ]sMVC;ÂϽ" ϮpUv'NĈ,lH[gr=GE 8!В^|k|LOõt,gV2;LGT^mUy1ߍm7 օ9QDL!Kơh˜TZ=M>@:*^{8k ~7*3\tJk%FsHu秒]ޗ=^#~Cw*pZV+Y0WS:fE2&4bViqAj%yZ)+8,|=6pko 1`#[]mH~:"r!ajLY$߃PrBJȄl UTꏽ0fo""Tq8"Ip0W}2< xc`U@`qC4v9 4LǣIȒ3"+*Nyr6a/즁& *I- wtS:WUxZE"/oЊV$-u=>b )V >%Dv`؂MKkPn/Ns +_s4@JŒ:ju}]FʱRS6q17M-B{v3KDfԏi 0_yY}RFeǯ,m_sz2'"6ϻ8J@S:aY7"2Ƨ'9^ҶٮnT].f"AmBjzu3 [r􆷎Fe3@wZf7%x;uK !mf<;/m090D\Ź@ BCruF}#emC *Ni*[ˆZpfy]O;vyzEĴhT@.t_4D\Pfq'耥Fd\'!'"t+feC,+g-U*h\Shҟr*]E%]76VF.Q#~J} w[wL))o[^mTd4|8"vE k[݂ /Wkζ{rO\:$ua `N3BnK7ى.6 =\ZƋ0>f. g U{3++t4?.u}3LdY`t0٣Ɔl1>.!x 򟁎4Ib2aObDH]K0Qa-/U*Wi,kee%s)+޸Fo1ƪ E F!$U;YP5TCGGg7FaJ5Q [ I O068aՂD|,a"5V9JE)'¢3cMSp-YvD m` eƲے.3g!L[sp"^n ;knV#8D܅ FjפY۹ 9 Eĭ9wS+jrY]*mgP1]A?x0/}$퍫N yq񫳘"/zǦJ];`X$ xN U1|GM99I8cޙ!!T,͗Їv0kB)5+Ց>ᗊ5camȊĮR9$4m/u uN([Ur \mEau1lC6fڶ_1%^ z(*@8eΩ+dF"sGl% "Faޞ( "|P0)Q) g­j0ץʏMOx)jnH7L4 u,ΩBq~N 7X!S2XjzBnCu5sU%c"Ш(g&kzobp@l@ JM*:0w>OD,q=9!_^o] 2= /VfQYf"8Y'5%c+\/9rSﺈQ^ NuQ&}#QC &/%dZKDiG|Gϯni9`i]"i?ui3 W (;h.4`Y$ z-r|'7H&~8|ןTaJ"HʃuTNLE__L)?֛!jNy3lL%Y&|8Rpd^AU;M# Ǔ \tFWT.\ʈxvlEc܈wg3'O +ܙV_6kdsKUv3_܅)aBx;KB .133R(;\1sBM˳Ɗڜ^Z kq)%O7U&a KzT"LB2Jθ<1&k[_]2׸Zj!67ZD^_bowt j e#eU#?(U._vҳ_I?򟀹(oP`e-t*ŌQhiDWY b/aYhH bZ@ڪ}I4w;J#v铃yHmϨ69W^|u%kr}lPѰOvIpQ+[q6?dJ7 Fex<`VE6<#Gxs#Njj^Hѧ3(7لb kz% 5bjUHe.k3)^8)50#bL1D907S *N*Ts#eEACv>xpi~SBQ 8/發lExom]hb34T]8sv1 *H㛿Ӂ]mVժ:h(,s\p}rӮBpLKi1!FEE>ntлbEb 55r0P?Di)p-ff-v2VnxmCJ:=S%CQ(+MDKC_vTTXXZFga!U&T@{/tS,Y_rK9 h$d_I6.K4LЎ!͟Ύf.bJ%5Fgh6xcZD@M]tիߥ>:^Kw^C4Kkb|PQ9oP@"`oWB}NxX[zG- Kl%`P3K_6Es zqFl smX0eǭEKlJ (rY8T/)⍷t?Mlc~1S/)0֝@9[ 7xwpǯ\?"̼Gm!s #-Fddq`*r};(PLi ״bjaXRKu R5F'b֏#'^zgĨ}w!?36Y FrŲD+謷1!RmdM/73e;ޗ,u2iC6F Pl@Br{[hOxXAT j5LH,,ÂI?1G.ztȪ"18{"]qZjJPy·ĹHIp>_4OskNq8<즛)Z;=]N*ALL-b 6z}3L p{Ձ1s @7 30]i(XNH 1-@+Fy;l_yQ7QZlZQW' e(MىDŽsv5 9.yJΣʩ/贷Yq{ ̤J7b,dV|=A_dO^{XqJR&f߲SA{&Gga iM %wRD;6 oc1:=lŊ 8M\e%}7 Dm(aL{d3hb-~iHߡZ-uA[zUɀJQz篐~ O\r4n6lD_7i:v)&,pwN !YY:)#0Dm=8Y,R $I/7] e}TR!$6A>+3̐-S iH׻h3Ep PeET7cJT$KXjQ,b*$.pfHx#%az{h龨MJ5sTa `eG\Ԓ(̯(Y`9(b>scQ ;{N(ȶsx EŹ ZY̻S[ Aq-_rEgF p]:!Az{40(U+;X aO*/9t<3V]N=:3 d#2d^5k*6= 9BXUWu ΖYox@s0"Uk oƢ K,+pЧ?/h%dxyqD,J5zpS҂jZu r:1>UxɶC2Z^ȀI{ y6P7p+`#p&Si!|Cv4;ae.nxC֔%ҥ,NNطk@CIuϐ:[}Г }[pq -\> ۤrIDe{'+`^7 E=,dȍdvfNC]->|} Scy܀+篆73%1Lذ~DY'XüR.$tgN![M䆦[rf$4Hc \^n'`! G"VMҴrVO=NX6m[8 Q98aWZJׅ{2˅) &*>0`39 8ƓC%l4;‘ > z2饫2#j'|')c?4&q8Ͳ/7@/((acpt3@?DX*~@!>P݇әnJIv o vںCaC3ڙhR3H]LmKrm46& ] v ͏ G&ۑϺYSGK x@) }Tlc@wk.7%dPrX.'"Hj!i0pwvhf?K;$vNpM`12^ࣔgw1M%}Xm+ۼ(eirM'm%b7M0vJGػ{e1VtIH)u[ k6w}uv#BVzmt3 Va{6 bU?24JWWC 6YM%rVw2,+C"; w$W;ߗp3YadۃJ i\89..2Ua{S C6bgvj\W/#WWO}ٽlVi-"VPl]4:pѓl.AJgu<_\մSk fd33V֋b(o"TKZ-B-UyI^~8'*{u֗!iȁbgl[~@qa%¨4bo +`op6wy8uMN|f.qU$pվ8n䦠 ^gi@yfv,Zuȓcmc-$n_9w)W?VۆhdI { #<bH a/HiN*-.sJ( &$}x*-p}72x-Mx9%y|9>{)n&:8|Nu!Rr a:þBݪ&ICa8\{BI[̯~Qjhs 4e+)*sLlڹcg&loןDAsLCłAA\"f ƢcIO3DRsn7#1߂ dދ")yz uUL7_giW&Kвװnp:XHde3'Y=yѢ꽑fԬU+׻6h½%xDocE?/Ғ1czs9Wzܼ743o%;t4kC270W\E}%*R.J♗^YT{}}<;; f;|[N,#fFݣrbM -]~'ݔ|lG֮B,W7G9\:Q,1blCsf_IG"[qY@ oA&ÕϾ LY8鶴7[)6g$K>~DA׈-JFCbEeI@43UhP;2aż>b5~mO%>`cL2Gwﯯ]s֓H^;zZ~]ߒ(Jm[|d3¬XG-*",~[lYT;J] 8[q_ˉ;R"xS.88֌˛] HkŮU}*ie~Aa]ӏ8EJyp U[NVjK^e$5_>ar^l Ȅljꂙ2Q+{m+Ǖ+F J:\Y@-b<Ԋ1`gh!UKtC}a/Q3?)Mz8xp0Zuk I]GPH”\)ZP%\::3'̎!#YWyd<59g~qn W~֩ jkC$(h95VX@XzN_r .22JEoelӧ}c}[c[V$RFě-oQ,\ȑJ80 zD)dȗsD"|z<]˾ K{CCjmLIwN'uW`2,kr#}/d7PI{!W!+r}eLLEDMsn:]6\Sp;XZPY:2"eı~VΠ< l(jgby^+ARya4o3ěuZ9UdL}4SfI1 Axͪ*Ax!2P4k*PmF`3>6 (D1!jaR ЗCi+ly%Sܘ/RFZ ,u];{x؆ nTA[O(ue?u\aJ%/ܿ)Q{}[D @D()j}tXළȷUڲT(K,틭oK3oZ_GBcq^{t"ynr_؆Ag!d0i_g.x8ʿgIjUשBc2?B2w<Ox. :>(uw#9{:x}PH(nedm4K!֭@o [b?U_"bJ\#ATmVAXrc `6 (lv#JJiAڗ9k$wX"`A%uE@:i^ C6x1"NT_#ҪhJPZt-GQ8߮)AVeoJ b/~'P-fHfխ!mῗTr=ո6i\:L.3/;ld&g®03_[Vf&o(̺صd8NY "Ӛ5 ;N{+5eeNŞ XnFCm ^db< -*!3<"Bncx8˥<);*ktXR4MT0}$jLb>{61K8$Pz9m2Et.ủtkJeERg1Bbd3,V*i. %q%S0Q/00f* #6Z[BeWlJ8]2j5B~]aV2ʖWvo(x 78ywf;#TjRSk仾9/J|s ]`U&@l] :ysvZN!vZz5}!2Uva8s7 g,>+)_P7m'.QjZxV 4hjv4n|ag[BBKs2\,s $8ʯ~sj c貇ޅ 3x͖+*y6^vpW̱Q9U?Awf}B4Cie'웾fߓ-$?VF5K_kHT+6DuUI8b(e؆beB4Ouoh DG{tRY6{ǒ;_& ɳ,=ed=j&xx7~/VNъBϽWWuwnu"mw[]I@0;hgHDe_Suj= IQeoۢtU /a Pzń`șZ 13ڒKkhܳS^^V:^IRZNE1ߕgߛ I Z`B\-q3SB Q_2W}4as qP =IZZ\.QpwnLwEJS|yG 3Co+.ʙ'_%D+_(z)HR1F9M̑*SݼL۱1+R[HNϬ;Qm4}X DX6 3ewNv n0f3^-e; eO*INCO4[ 7Y;0޳B a9M1l3iZ &@:$uγ.8UtE2,&rWIpwKӚsPYf!TJ,R|Sjt?dwzn!+U*Z֌fg\(Z$ζti&A$ 2grbN9mh1W\ƃnSAg{ RFmp =7bATHubH u#\dQQ.,ysi S*ug-w'hyl 5K^;~[/߱Zg3Rd4pmML (bڈVͪQ(a~5M {*sԘWTQt]z&xt'!D~`k/wY}p;[,K>!/fLOhД%zѶrQ{ݻz<\]! Q<.kGGl U)RkAvS5ڂ(v _( R+<(*yGuJ(_C>Fn=S>2C*rf/4Pz"fGFKaOnR۫3fzDR=XC71mJaP'+T_o- Ϲ[ m?f^@&F$;ԵPG@?!b84 =լq9:}8BTRr8TOXlۺTSws受1:¥VB,}Q|t/ Q2iJ0GVAAI5ZUE a5fiuf ,ê+~sa PrIhzn:<6X肖IuZ[`a}!cN?lXlbGna?qe@ =?K%!"*6 3$| iJ0p_01p3||f5;ZPX4 '~\]/jJ.HڴR*4@"834Q=|6E.;E;%^V31 7n~NwuCw8`!/@ĘˋD6 W;!ց-ʜB_F%!(\L{N2yu 8 a@}-&w0җ+j@WD3GX|gLz7Tt:->O@TtqoR zHoےןA<'x0Bz0$!Ԙq|\İuk\80Gtو)|+wAiM.Cq"*;2YiA@/;'Pչ%QT=/Oljh}j=: TGͰ&*uiD§a~$؏^5ڼicykja|6\u>QBHM l ՑB)iFG>j~]vwּi&(T+Qzd}5=6V8vV&FAi3G7Gb1(-k>oH>g d`kʼn }.@T4h%@:\@w6{ ĈE/ f#XEE\Ԅƾ V> .Kq#ǿ097z Sx`_9Ej~B29|@~K?y2$qs ,6ev( ?7{ /IO+mI3\]&(tOmםѣR|~_[5oTs-"P~ezP[hn4|x͇f>y+Gd 1%Zl0S`,Hl6{{m*^+cqUC.}.5֠ 3|f4 3>K`B`-o/|UxK[?6Y ͨ9\}݌e]ŊwϜU4n\ҫ+!aR@ʺ {ct8?G9b~ה14–=K{Ζ%d #9Z5'a9 s'4 A3Ɋc+8sq6 ՛΁PT-)뒲<P~CM:N]>4,{e髹3ڀ<N4V]3dKXT4΂k{B_C/wFHlz=hPSoN >d]ӣ:߲00E Rqka] %5t$UHJΩT7̏65I/1tUeb4t}Cj}ہ2;qBb?pHڨDHD/B c_ep騍$:g<JFͩ &fE1,Y$-j.okr@ K^'UF.؎|ol!AI`$bS4z@)k!ălӘniVXZV:l8)$y5o/`_5sL{EN S/r9=?c[cϳ`#3຾sugHUqP<\_?uHR_/p3݆.ry18֢Y   PL3֊IJOl$@^PCq'#1Z|Jej3g9ohv~q,~tܛdX_rkMT+>Rci#hwnz |J\bS] [dǩ4d|#>3 +d#vYk*O;S>A_daXv}q*Y\m2܍ޚumQ|Ӆ6FF:t!. *G#[:ؤ;^ w3-ESףyxLNQgL< RhNVD (՛!5_qAcy] 8Gs ft:Չ9"YCnrҨu)D&.!H]xO܆,͔Tw&iG'29C-ߵpn&KY[ b]TTAP.99}#|"r^a/%ՂgM&UfJˤfqjzbjwhEN/ >#!rt׉;|GxF8n5"~dX޹/u XbVBV31EtJA@!Dw љ 6~G[C1e ˁY{i&ځ$mBf栧n@\K_#r j.U RKr5}JkIڬ4𴌀E8b̬c 0=糓h Kt+bȥ/PLzoT{,֪$ކ"42"i%<1Ƿz֢بtP.Jw8'sW"G bjdkT*`ؼ!tDL jPɒ!s[zП&ãX]9ڪi,U]q"й1YND H'Ņ߿?¹Z^e/ C/ɰ8Wy򈟹G0!nfMѳMpRгEWuLf>?F  VЪzqЫ ls׆d5|+(E!J4Jvv}^^4^/CG#9AR,F&_NcQ^_.b(@}[mlBǯ'[ P8NiMR>b;Z'wÞw7q44F8MXdOL Xym[tJ}{ۻC4LFr!Uj  e_ZaI_bSFɆlM0Т2@9ʇԩ#+L?8rU`Dfs!v|'6>|! w1t ؒ0sT/!%pe$ˏZ?ު[BuVuizhut҉VND%YoNSXfTr:)6+Lui0Rä7y믘:'K )j|tɻn͠,{v"]o).b"տO2"Z[Cezc TSLn|xƜĢgҋeLӝV)VHh餍{+#!:%K'-WFwe >V?l*J,hfh'3t/z ud/+Ž֔P!t{Ho%@br4>lQ'H}yif`>O;rENBUi02 09iP} b PUŜY^R<͂,QUt2cBJjoygh˕TawaZ./lT0{t *u/9QWezhcGvӬ "`wJ_>];[@l鍆O~ц De"`v,k'i]Яѽ$D*< 0 ZA֚v\~|!pG:-mw,W !6S|Ą=iq_u$ BV$e0ZƤ\lb路)X`!dE tJ hGٓ3z+xWBߗvs E8hьf*NwO3DJCx'+!bخ%{bCpQx?"C?b4?MР0\wWʥj|#!?35w[i?„7LQ rE&!vk5aYՇJ4wkl@^3cS PEI0ߊgu }̘6߆=LK9 !w|q 1^qdݐ""RL)ҟ% ;v7:KocTm8'XH{ ?AV0FKb v8 <C%7YԡPaŝ3`¡|.~H:ƥc}k%-Uv_П..__ d,\šٻH@0LaTkи!)#, L`bsGA;?ef絵; 5 ~0:ѡXGe]1Cش",sEQb/=X`h7tz!d>tـ/AQ'4j4ڭ- 'FR}⭒~5O4^\ 윺2 jx[X{򍃆?T󤜑3L3E'0WIFEVnRм) wOĆ7D]# uOkX8ǡ1x_Ll?ZFMm D _~#|V0Lp)I8UPM6Eli(`vxUsC3RyDt,\MW aݭ?4>꥽pOvr fßnr| ?E߭л5{3?4RʕrtHܓVw' ,S7n1*,=м]xoO:ZKA7|h`7@_ K#PȟuGIzQ`$CR,sQč^0w"1E#'+gqMn>/|[cNuݢ PBnr4n Oq vY25ȓQ/lw&t<;` }cg‘߀[pz/M3Vs@Nj#ְlj2"פC$'ΓBXAtmW(:| /v)݆BQ 'U~Grˁ%P10P.?kR ?# Zɳ* yC ;tß4i7gePWv1ģEJW!}{wLn?~%}2vՀFydLL!hIbHR]>MxF.4'd92A4P8Ҭљm6 cæt㦌xCk:%ɔL8N_bz[?)24ud\#! s.6l.@A% /"M riPKQxc9n@Qw󧕢A*'5`d+NZЮy7ۃf v(,ʇݎ8u4HuKr#LpiZhv+Ϥ#[ZsmE0OSFz0b fS[Y܁Vs<ۚ6&]ֹj[bfUI3aM{GD0SGssӡJ.*#߿,S*/ګUMOΝtvvH(>wB=c'ZIV "'X/ TQ Mjg(G(DE'w[M6YhCcV%wU$ASij%7W|%~%EMB"LMq^x^aJ~{Mi)_k^9G34>5H{+J; B[ٴ'!n0 ^D>0QMأ.q2ΟvDGG# nQ;T۝|elQVu֮k,;ۥxFYč#(U> ͊R[j(T|uN |O'^ȹ?a#&}ƹ+*LNO.M&hwI -`MA#tͶQ:H NF6F`Q;:P/uaMIRLz WG͍S&' )tϑq[7!sSf&D ۢ',O5]mG4gh“#yx*VOwWyŎϦnlm!tE/_lSB|Lpd!TկGn; ɹaM6GInI1Y x! ;ŵ0~kHn뼼VHB\&J++n/mR7³!ZOL Gt`N{:(K ܹƓo%I"fz %^ȴrja#~"\=ON] k!zΰz -V -jxvWz1Ȼ1_y jw|hlB/.nH=N]; :@H 9M; ֪Gp>"o)Nh$Le ~0Ӱ._ҳ[aHHg ߅ kWhcӘ=P05ڨ3d@V֞L&J z 5ٌz;i!\oz-9Fp;E|lƺoRw.W^sv(FuIh7qcPyfhˁ_ c 3 1 T 'RBt#Oh6h:,af%R.pz(uP,ɡlpEDEEs,3+ ;pNex]JOY(w(ش?p_"m2bk,r$zYb><RN7ki'40Ja}U b[FA|gu~EeA%P,_b>ioIpNlc: ; ҡމ_'LŪ zůo)wTcyz/xu}:٦x D1a?L,Ai?A,:?̾\|H:ttyN =@wyRJQ4r݈ahgXVC" kkO[bTO=6qoTz̕*xAnzəh1r*@HNIYo82Z(a[+}7(Xǩ YMMI.7/M?Isp8h3 _cb>dvRu >RUdu7XhWCVFթ́"}?}! 9ơ@w=φa DGY˪3vet"_uy0dg wdvՓVlùN[;xqeѕ> Vq("NՂ[ 6LIHn<9B~K1>G/H!rGo^ H~H i-~+r|i+,o#֗01Wܐ1+m+HB2-\̢}L&ý3tYkmh5v>΀ժ;*yAڃo 5K _UګZ_|6`1vRV`@n?|c-k[9Xi7J9Wn&}y!Y8z+P@fS$icFP,F46>>qΤ©wm@RwQkl;aT|-` p|ACUs_IQؖu FZ~d ꔽwC/6.=_) ^C @w /^/fN5gbq%H;v|q [W愀!Rc׶@[NKƾp %aHtcp YYH=%Z\I;% \z`!9;nm#&mWrl͕ML%Ï-_8"D#DCa}nBs7 pŢ%b2P]۴j]g蚖8HzrqgcV ;*K_p&b |uҹ[6|*c#+>C:z\;Ȉ_G.hڍIʨŬV7$`z4<V=S=}!X3nm`窼(s˻9MV%;)S7ե}w$Ga7 O'MKU"T#1G#>/43y q-!>T+Ex^VUBz . lNT0EwpBq X Of2 tӡi35AĤ2Qze'zh*hVVwY QfFR^X6'wqA rϹ50x|!iRӸIJ[ Vt-\TftcӠAA@!"R6.y&o#[4^g] d7eR { (qp=-EV[e:ftM̕ qPkƃp*D`G)04g+E;:S qp r/BsNR K~< "Td<:R)Q0AWӂ{`,Cdsb- gx {Pkܽc|  5=d\׌ֺanT3)TavYP q`nB.lrb}as0b%+O 5䙇xj8UɖV ƥ8;F}RHLZҳQne {G`̖ڜ̳SPh&yf5qbݦ ןehJQBj){ L ;7Q b@VɆz;p!>*A$#95q5p+ ┙5ϧ/1+ XkH'wTj_ʴ\h8NkD^ >1q1[dh @)WumN/Z8^ҥPIk}$n0D~r#_yO(\eLio{m@!:|qdjaa-fIb%?6P_p%SCW BsIV7zh1>\]*~, 0-7A][̧u"l]c^?^j$}I̫IAc3"n=`=0bvQ<_ '5r=Vl0]b@m^ߗNGׁ`fAL:0պxl OJk=sWX۪h3-@d]J>KkH0OiݏU!}S.ƃU`&PIy||nRq+*q!YH>WS-8 ECcLi\MoK'X+0QKb-rQ8Ą%m&' F-Ib4e!8>索.Vl@k<%qr@EE>/NrZBXVVf[Evv'V,mAj+3Wiް9ď685njq\hZJuW9x$K%¿7^x MZYԩ=q<`Z0e-lJk f.6$IB3­*OiI'Hdbn !TTg#zRuF6Ҏ;GwS΋6gў'%bOj>^nC`ѲCOf*:Wkv@ig<5S*}DZwbx-JՊ橻e`S4 6dM'̋[!ؚm6 Z#O~*&6E TɘsA6-B CSۭÜſ)s[D@e@P2eN6uJ&҇x? bjViԩf QS:"hD#eӓnfT3ѽ%)YB:@% Vca禰9Zg ⪣j~O2PVݕcOSA@RlغO|VrƧd,P/P\%I*_ґ5AHYSݝ .#NژڣHIrIL!qOQ6-Z﫻nԗ3 ,\*ԂuTˏƒ^@h^ȤflbAWs4ʢQ+8ue5졕Oa1aϗiKXBS+-p1Ѽ\5\o`E]2b@VBK!>3 )G^)X$^n7lӥd{MKHL^~ʄ6= .$c J1I0N);Y|,1΄6x;[^n~žu'$[TVaEtwS7:n,7W!MV*mP!U=5e̽1% A%^%`c0l,pVinI24,B 욹E(w['9% 4F5+^7DC"zODκ?X|Ws>3]6OmCT=~>o"M(gd^ydwErJRmP0DEӵtom.Boƌ+pw e<׼)j'ob6reA;%ƹb2} :j56/ vNvj9fEhr)Z$T0<$o^ŎAiPǶImpRlߛ/g73=OʒK3b`MjiW]{)q<"it3jG5{4΅oè,-Tf;Y[3OF[ RMqꖤ~* eQȧB8Ge3Wd!NRF0'#No|0ZTNI3b=\HsYupˊsvW*s3T#Oks[ukkܬ @6d{m^t-.pZ Oc<Ɵ%Lpl |aN2 Vb!@՚6hßIqəZK# t%zgM<)q@_bvD1&;g3En@fV^S96<_ p_GX/FJJTUb=aYB-W*D ^j``GoG4cG "xfҺdNewj*j;f'2{boxU*bA4N;ȷaCN,ƮtcȮ\jQ:)o:>M!@Zu ]h]2ge,Tp^YN_ pf=kK:_Rj};:j*]uu:ֹ0|řo]$w9l/^Tʔa {rCǒ'ʂ δ%ox+. SD`ea*mQNf+i_Y͢8:n:Rnc#7}!AItVU_9铏q +?G^H6tMP*Ơ4>VFn/!s횳T;[;\*n'EN nuCFG ITq tdqgPV=W1ɟH[>ټE*1GRzoBQ;J;t7wz PAq @ l*梙_n0-ag硐ńJd2Э8wtFBLc;QQwHp}Y%3j#h)g3!bmDl?:>d'툶IJM\ "8nWl}p/=ݮs ə1YrƜr1OX5"o1_XתL2ab4@pK"T~U^>?~_/j9/G(cߤ$! #%C?|mvb]5UbcČa2w$uY2Q: wi{}Y!MTS:Udp g,}`R9`ȏ)4R|w{(&:QukR|0Dq;&ۂcy 4sLr'<6:kvGbϸ/3qeKi"'%"뜚ԗL4R T8f:Q+XCGƒ#3+`ÜÚU9_h 504M82/ܮ!h`".%W q=9bLtâHpKqbU95N?݅N 4* (]a).7~o ^P3 J܂ElD56{$旐FFOd6<բz4tGq]ZT7&N$)Cx a@f8w-RnHջHCn*âʼ b'Q3 @kWKUC8\&OZ:C"[8~/<r uD^@;ra}V0Iec%;0-yY.#E#S.jlI\N*%F a٪F}4 2EWB>|;#Jo<ޓc4ORHM#y4B6hcƬ"; 2LBTN}VN(n͔ ɳZM+5ŏ->ߑFV$[ޔ'1Ũ-mD7 N(ItFL,>ء]!Η-* NtQBf48~TgSFaD7u$DfZ$]LZ-,?guz+([ۊַvR0W,fnRB`6iy Nzm!C- Dl߰9<ߑ~J!P]BI^ݑ ᲪjpdpW }}i>a-!?>m7B논gAi0tlʹ`' 8RDV]~-޽4 l ў&*2JdU;{XT j/ktIW;:d`W? >I/t JU=@ 4my@ZX1|xDz &1dCK%t ^Fc|5@(y| !WqCtg@\i5:QAci,/8`A!nZBMJRUpFVdRD. t!6Jh ݏF#;%Vؚw2P'Z)юhr:,v&vPab'WPh2>˧Ӎ8*vD+B)5-DcfAlp""&c.}bɫ'/yЍDcnVR+G@ Bꔏoov z_:dBX0MQׄl ߦ4Uw+N2yO"[͕BL#,lpB) GW+#1 =NwND.C7TؑYvj|T"HEZ$Ѕ@kht0"/BpM*aC]0}|+i#إޚn Ng+Vc};\eg%~w 8j0_6q$9n=T GʤZÑ:U#%\ qL}uL,`xJJ0ÍZ`W7 o4PܷSx⮪SԸKMŞL;zzm1q!iw)ٗ Bo| 4bI^xR(x0g#pױ&tp ͱ 1PnGԾ): F>{V;*E!^׆ag$I2l=&|:}9t gh|SCPSRH5 x1drv]?vZ@͞qAY8L,>+a.jjZiB8-sƫ%WqahN'&\ V6`F>$2,MPsӿ!Ծu Ve|K霱Mno*!R(MxQmATz@R:h'8qD=$p$xXaEH>ksi79m35+=}rA׻oώQ6USM%[5}׌ H Iy`.ni\m{x\$uH7iAJ:~ph4SCM%,fIEg3 q5L:q;(._ {fg:y)xV'W:uQ2BJam]$-L$oG(q5;E?i]Vd m [)rˌNj5s Ÿ<\L?!̒{>b=^fܯMɎ {Rhڵ nsZ~{peJ$F6'FT52B vdj,@E|ƇS8tsBk1ⅆUI2~l?&ΗacC'Y1L+)EG3 _nk=2vBGPL=WyXxwo@MN #Dcyzt@M >pNa69 (>9t;|79=S;&t9_@}SÙs@ݫ5>hzƕyeNbGN0U u\SDzտi >8IR )j /Z 0ⴵƴ+:?ES =1AS |]RQa~_y-;6$Y;W'G{ HI`(BSaFP%HIM  \%P%˵)P2W%˥Fuj>w*ѷLRoz{J\KPol^A-u+dv{)l!*wq>=ؒm9ӳ .[ hѻ|"7,o1! =R'03GMEiѷw[`{wn.zO+ Ϲ5s&m{DCޅ%hd *_m<3" U`5Z eJ ȹӼ)JզE?h<n\vizFwfhWm RNεyUQQBC4CCpDqԃ1 2nB/סG1]qP q&-6R*ws)Rz׾dP͕~&!I*WC*#;i"bLkq;UY9q#<rP`5Q)~+}B2*(u\4okFwqЖpʇ4/>MÎM4R^V%s̝cI05udo8k2:Wnv:Ij ,mzn;w<їo;5zǿl5bME?WK%Ո5ɞNp"3hM^(,{DA86[D }^muK t7DƃGw&6Wg(9@QZ&7 VݦG:=O)ĔT.raA$>.d5qu=&Gpn DQoR^y Fd{) OO'M2b(~ʡ"G{w6tٓW2֢/ub~-(<\O>1@V+!&fhs-2d2T|@+/欺6. Ҏ&*l(a|(D19BChrVy ztkT~yכ>Be~:RӍO؀f;hX3EOqáP:D7ÄHǶyhs+ր6gˈ]6כtF  \͏Lr+i/$Cnʟ}J5Cm@,ş14qtL}A#[4(R9,"Q ]Qʛn׊'9*E}=m펀/_y8nH^mT`EzW̋ tIKbt䢒\*`V,hhBCQ[qjnZUf_(bGxʲfg*`;VI C++ZY^;o'bg R,̕~Ht1@~ua;&kaSG*'Svt(&Q ئFadӵ7қ!x۶1Zq%/#k`#nAάܰZX>>C2T)A׊ay =d_jc}S.1]PRf!%?G.#h3Z"cpx80rc)Y}Yio"$ܬvMI&D?h]$JtUsBTo}YlJFGѫ=){n/tE%K?ʒ ێJ3Q2*xIq|R9H-x0(9;lTi liyuKi{Гo8L_N m_nr2I owCM0tS6ɠ!2¸Ǯ;b ߯bn7֪jDxQ@ zs%u.rY BHGLP GLǾ>b攥P8 K< }i}`՞_F a[ɝ!\A` f@p|7ow)3ܓ}nZHf[x ƔD)3 g*jjc%;>62IaG.O'5N@ 6!UAKL5XNJ4?0xH RFPzi]DYNj[yiy.=?ǔmP}Z+[>3N.\e95X"QM™DXx,@lH-,C~<N mH`Ͷ?AQxr OSǡ8=,cH:{ ILj-OJI}TBr.nc,^T`4.ոD:pVݚnZ,T7 ,.+fdƖ+#6\E iT* aVr8p )'f&&h 4л@t ёVeA Rq 7m-^;. ]Q7bւX@P{4$z0<#q_X(f+m<[X~`^TK5i/JTn$ n2QdZo3~؏iM9Qc' UU]&>AJ3h# E2jxBraY쁘~⩿|^$I|B|:)w2aݴ S9mEz@k&{:VbK3 Gmq9 Y6"Udڻ#,W H`|ֽ(ґ%n o g8Ċԇ` n+&Ejb+,7iHsb}*t%:EiDrڵN1*LKvY)=xTZ,bφu⮃~')j'OԎڥw."xEIK fimѧ$xq;2;yZc );jE|dBF={dS6kӍ?(.%"<`"mwFLH`6ƑXNL5! l0OakYI/2M05b湋R o{F1+&XSf6AT01 è4d(a'oMIXsRAUD q`-ĎI gk HӓiKv}=Ҷce*@qǸMƣl _Rbn RCE$ń}T.CT{,bHdq!y%pʌs FHs|<څlY+֡cLeYآs97;m+b珽boe@zQ_ 3}qq`kvdK3VlX3% {@ֽԂ d﫸v77U6 Ppg4e/Cs%*fVQƟ -z++^fQ*Y}tSK^}T V N-7vlȑ*} ~F2#'w8@%m* 黫MD%ߘ:-:%6,}5p!Wp01!Q)#@imMD J2{&`aQL6EW@>׶UJ#xO78iO@ mߟ[U{fƦPME}S^=8-wŋZfIU +~ΛY$ĴbST{aAUTyr;1G \c*1*1J7Yr sPe.Si9M c#7K ߥ=W`j+/Z=T.VhLTmBw$TGO 6M~ XGIj_~G+~ؽtX!8(_!_]o%!~V4 *upŞe!7쥱(30SHt :[Qa)d|"IJM{lZq|;񣲕! Y%+m3t˹=2Nt;^KRm@; ķ'((79cg %{pV'{J_ !pdEZu(6ipTn끗#l=OT\{ l:p\4& QS M9k|^ ;8UyiǁX{'hO+%Rv쉟g _ I+lwDe=%^N6F&]nj1L{P^k=v%9EW15L]W- IP#׮QjX;B QLsۡԝbY<hO挞ZaO0 MU{fLE͛ HZZl3BhzD m{o%Gw 쩴  =5s6STj`.d&Pi -j[i]Vvӌ.(#3ӝc7Ż)O*C{ƺah09*?Ŋ!dJVR|wuoBh`5kJtO]ԧZIBR _˱u[cc+e{A<_>Jhc158L_C~b@/bS2~BM)F+Ic}>+TrBPGVv~K60[Z"#e/`Myш m~rMO]778uTѵwh*9}Q]#ϚӜPZ($W *z{̖t 2oUf~. Gvy%ތAP]BhJ7NPTN:Ü0 {x*|J (A( !.xY$85\>;ُF6nXڻ_kEPI.o+W\@lZ^ʿ X): _F8.lu dGt%Cj]S&{\N IEP$Z;S`2'h~4A"G>'d#E&Glr`0 Lʲ9\†u݅&v2q4'b$\$AK+]B"_z Eg,LyrO tTa W}D@1^g֤sMڀ.#> }~9Z;hb5SN ɸ~mAk؀JB-yxaFCYo7צlT8ه\π+XyTMhIGzh\VT&kr@ TNf74jĔ⅜04Sk:W%dMkKZ;g<`#P/'˼_hXREEћ쒆HZ?uJ㔬CI4Y{$;Hb%KU\;+iIenHE, 4dv .=pOX"wMj(F9\83laxTZ2}v '%8yv]F&K1u8w@#L |эMfZl /@}*;^SN[HDBK 1z3܊&{sy*AeyZ<氪v:qK],kUfc0o-Ǒ=^rg8H+VϢ 9߉Ax3@ct9 i^ޢ|`,'o9W-,20:ڴ6!zߗ+ ǎr8[_-繞ҋ h#}XyWϠ zwzhMd{/u=WDǤ"3c?wOb}Up`@)57 e$0PEp"_H2ҾۻU8 gkNrZֱ#zr8lmfP{Kf_ EgUl[ح ,SRR3hʗ5mG$Kit }E !]nʸ6w#Y.@\ƮW4utpe"hü&0_USA)bb(mS.K`"%"BaW;SR_V'U-3xǃ?F76ϳj*7_qAL D{<&Zu?ot_2K3w_Tr2^ ҈sTB\4M-Au "]gf(CDrBꝹz\,ωO֨EFFN7 ivSQf]ơ>}ͱ*4=o-xAI d [ lz><1 GN$mZ˜kU;%);fu?+aBb pd>mnmT'V$, (Q.;'{s*Uŕg#"<3ɡxIm>8d1JU3p[H j?T!]呄!!Bp۹#*AhA/k[V z>7oeQ%A:3TS'O%J^B(ݒ6l%kbO̢|MP5`_F5'zOemJ6oj1M~&x=.t]`k`Ex0X^<^0'm>1(JWLu[[HSdV!;"["WnFT-Ju>A98T-F2L.#/xWѭ%GT?O84t?30Qqs{Ջ,!$=I̓^ eAl|XC"lF`”Nɠ ,f֣hT݌[L̻_DCܠqa̯۸0.&!zZH_VLRf=,ny3ʷӲlQn"I>2Fyr`͔[\Cs+C +4e_pd W5bZ*tU0rӼ~T%ȔOEx\[oVzߖߢG HywO`"y(V}nt`[kPqii/, aH]Έ&#+&=,1'1IrdPMrK("kM Wq}|ԕ)V!T9`.ZbDט{ i즛LBwׂR8D(tW ZaNRk}e ]TSzv&as`'^$WFoAJvf]O³ a6xWRMd [6uT5Y [;j3;b[YW4AY 8W,V\reh|PTrҫBt3\ 6>]= 9RsQgD]1#ԁپ&$ 3mli!XAq,(W0eB'R\U؛]Z.:s؇kR/O~΋0wOk5U?y *[DVS$:E+4p,S(1鸎x]7S 'vG8~MbgC6`2ߵol%\q29Wz 4HX/ S6a8<;p=A11_y.80>\Q~`u0n%VuzTTز9?AO녈1.N>h6TkI=̅[Z!j|̕ǛaVV0-Oag@ssJ2\ӧM]t6oߐa:Q_TSo)a5xou;QSJr.ߵŅrVӯ+&SLRg8Q;گGf(.-Ђ [[):9`B17L6QcRGi~_VY/=:b->L6[YҠ f @_0Z,$,vgSn1)=eXyH9DH=+u}d>2a]9)- èeDUa:.1 п@n"4<n*dU{ܹo8nMs/1c_هo6|/ZsďW }kb$4L<<h(5%(C}1@xY[qJe٣dœ/1beAH(91)JM ©ppK#˽3 E8Co@%_+D!|N\1$tl!Y%sF6?RU4:A*nNuDN} 7?~H5,>vđ1 5D>~BJ|֫}*9Wٿ9=]@t٩Ku\!2*_xp(__@lY[Wڸ駺b3>ŒbW*@@/S *,Gd"9+.*SoiI Z -so?e!  ă z r}[[p1]5o:c}h(Ce[l)^$ ðL7<%E ~-XKwNdҖ^ |VJMz$b4UNG~M*\ҺIwW#Uj_\ŃU[ָ"\>t$C| ȸ*'8a(m'l?EDQz0A$2ESup u175bl˄ !:;G%˃>i ʆrOĔNE@]CND:,lEGY3GO4:^ &o2(Q(i'*{+#KB4->y}N쀍dJ5YDIviE^" 3w oq"Zr܂gu{ɛ/N\;M!|>q^B k7_S21*wcuk]"lNT F ig!xdI]A3 scLQ I ́2%w9MC0_uPD"%(@8GuGn)c]ΌQo.BܡQX[IV9 6 OKK $r"lRW-*ᾢCxPe twHRWT"ߝ'Ɛ.y1Q= ЮxXr\Ɉ4*b4OK-)vco7[a7oGsr7:=iE6Wzv ]Q*Eu7tWO ^ciOhI9إ_$w+w.P5$x@D_3I&tG(`((":0HCD #h zgE?8,'MqYSTTWsX"t%W"A_/% ,\3 uM,3QM:A 0;*dog{{z&FFZ#('y+#V.6i o( FiT3'cB򢶘>$ܴD ϐHhٖI(A@ړlUYȣ:O[բhgmNZ(1ʰmp` DFAjL^ߨ߈JYSR6O$?Xc}GCUc2|':΃3 r7QnRhQr~ ~ᚺyrwa};1i0'2K)" `bܖ(6#:u g\ [5α>ndgmp(o$i$ }>Z,7#_ @?e뵹 g-n] H!A갚+_@J1m<->"Ct|\qAvtڼ4[&Z |o6ެlEW& p%8E4}H276$`M۱1|(4-oHuK&oL91wk*+ L}cj>^hNoU`Wx {qĨJkfU{Y-FF+ y!Eni#'}M !g #*3!4jWvIX])sch6u (<ǩ!_ Eb+ǐ@rxZ*s>Ydhds P!E*QryO:.ƙ:&N ;#{I/M 'A[ib b}i5ŧ%=`Zj?f^ q휨]:kב[ TsڹJ`+G:^潘^N'55@_6m)7gGQ[6/ O: -P[%Z9V$ݜ?cP6_b0w/3 ?M,3+2G]p քg mG60bQ-R0-[ ߞzwfShGN zXyQ# @o2{! smY7~>{0Lo"u[DŽc•²lhF+FzGڛ:vsPt<d!0#<~2*1͟/" )rsE)m=^kX/g? drcj#3htmP/NPf3o᯺dX@E|Zt\ŐdmSw`%phSvWm<wL08)ﵗЏ4A aOz9t!E&vɍ`d#BԜPi~| $>xc\3Ƅ 9;P `RaB^^JHyK|BqwKs{LV(R)l lAQ!G<%%9zJ^z9ayi'wBw5-߄Ӊ"@ S:e!/e"f,T働M#2]V9%A"?5d6:%ZWsb£2Ս{ M#vM&`VuQ %4ٌ_`aUZgsISL?c4mj-}Es0@w<94 TiD-_w-?`Jh: n4z=!VD)mruK:̅o HKo[]]dqr|_K( P uM?&7r/,LTXV7 /"ES1(mj)BRiAKYؖJ<Ŝ$\^hgpM t;%Rqk{r>B89 [I٢yb؇ه.2K5JT1'81#pZhGY|S"Z ĮGIw'D;v#ٰ;hJoz,AJ:"|PD6tܗZe+,k>c~Za ]^F1 Sl qЧo=UP Nx6\gPfw0GL}Iv&?j ;1]b/ 'NDvWj1/2> JhR??-OYѧ1d)`92^o|1'22Գm9vhC 7e=m!ް8ƪtWl!mVQ#pO&p1r'qř9aR vkp 8}!/u9aGIPp4Y{`W +e+sKGb_Wɻ($|ÍH%GL8O(Ho2MJ:Q;ҾvILM^MCi*iV1>H6u ࣅF)ZOs9/z`ޝһ_1bsPkγ/d doW\9 *6&'/^xfXN Y*q:3 8NR /s!,*ӀU؈}`8\AlMT6`췦WXo@O|K D{[ݲ8E?k ^5Ɂ7BxwI@[dzxu/w!>hQsu sxW)9N!ee}#x5 .I iDWec6)|<=8U!ׂdk@Ƥ.|\-1WEr  v/)J9XFǀIQr^D'Q]9vBi}OB6*8_>WڌhVrڑ{V5$*ORSx-qa 5vhf6Q4fcf. IHrgc1y `FZEKi#.E1ʑ JkX1Gg6`|7zĩpҌ/ RMWHg3hcfH(ANjB &D `07!39HGɠvu)ϣf!‰G[Jd̉]U#|԰UJWzܐ!ĪTk-R[Sh;I;ҚfseK[cP>JΑ [듸Ec]U:w)$acfFc  =Êg(Q>Az۩,~dPa IynIL&tj tYM!e&5BZgͲ(՘R 2#+Jnӿ|Qx@n]+&ڢqC]ɳߊm)!dN&xYgq{#0xi GY_ͧ-rver⦜#f]7'&Xb_q"6uZ%]A^ ۽]z)6:7cWUv@ǶU Ju [Bn bqk/ǏQ{ɓtN‹X wk+Os`ΠErv͛'@u_\{"86TOL(̘?g J&6mBTzWVO #OK[<whdO{{^_X_HwTK>ѭ HZ\$|-@}'!A)kA,"Kj0c~Z5hMI-U k Cъ5#IVehP`yr2vjzhKmGskbf E<\(#6AI?n~3g:hpbJԼ!'C1 C\VX?~8,oztudĉb_bJ=f7^jVLuT${mUZAv?Kz ŋqfpyd @2Ŏp츮zCDGkSBEkw!*?a#eOo8>{ZP=q]Uȱ0Yh#ZzX&KyuM%Ǟqgax]x= s ;g53J{>~MɫQd4U H\HMKHxٺDߩl3&_LS8uTPIHf ף\Pd%.\-@켍&ا(!01?cC:z8@F[;]}|P67Ҽ% 㑶e'5hzY"R.vڹ@}vaKf.|}k@QO n`yu\a"Zk#>XUARK)Lstن#b *g00.<₲*Ugqo;OBev bDX;91P,5Q+*uBlI:`>hyiQox…[eZ/C.ghpfAhevϗp__y;-k>kRtڈNb]$悬ܚ> `!;1 QJ 8q>9@EKmX* XseTT !=j]vbI(t۳Ƅ:z،K)_9dِkvCL Axx'c.8Tn߇=:r`^8q3 _U8Od4(`UAlH:p0:SX^Ri9,aS^z黙ec7O+=wTMը f;M;_G".%P>յ ڸBT&$K5 !2 aAh.G,hxٰðFIՖ,}Dl (o4ln" S[1AMQI"tSATn8[-7o/L,*{2. N@+ U:; \Uxg3.`eAVvF8y'-lP}ocVӹ,*D8ZդY{q6` bŚd}mt?IMVGc[?!d.HDWpvd],S̘usM8t\:jsɶ:%@* rjJ/hTUe%] wDmp~n{l.xK E\OyNDgjXhɖ 09CA^}Ճ$UW+*waۿ#33 E,tn )<`ra]J j3 ?FՔZ{}yk"J?Jٺr}Qr;F;UKH4Jquu@'i}:1 we|faD * FtS[W +rԎұq]|P){ctdB めBB}7hQMMʼnh2 Y661n9RTB%̻$Op2pȸ_]BNTۧ@{:1T1MO/m5OR؅3!CiH;e@W |臒W >!ߦ#e_(oG?Q~kYp1MOõMbRRj^(lnфEO!?p51& |/8U߫#VUV*Fl3y3%jNҾvW^ Q)VJ#7ĮAU՗_M6Wt?Au2f䪊gDsV,jD-E6njCOL JxLfWYĢ~?oFÒX]fe-ɑԵ9ƧDg![oHLcL_U{B{dju3[]y:P,]H(ePz(܊^\I"6= 82dmDUh*+ůHVhW!%3!xf6xEPύ԰VY0Lw$CYdSxl6q*k )ҽw5Cn!N<8q }o+5= |4}ޓTWmO2E6XΥqApd@9? If=DG<̚-è>u(izFlV<5^] #D>jPo O`IJ4gqmDm{_AqUZ/G9JcFK#f 6/oG\yKK/%nIlOoc[r=8{n =/HD Tz86y`,zZ z<<@ _?>iթYft%bifqM8"^jyUpZѭ MfID{sԲkCAɀ72?m)cAl9/ek~Du٠ "r< dŲ%bslkg!֐x\,mP~Ԯܯ[k/OcM%@peۆ:_Ս"46RT>Eiޡj!snS!Q2(;,r!44 HG|NJSz>9%lwah5ne.N\IC^KʩxV]R\ 'C1ah jH(A]d!K9Q0f]|nGkpb>g@_ZؓQүRvh>Me()@p?E?c򝞇L;ټ^'Յ:\t:5QO ?LL04kd%jFh[,܌Je>_ %M4AaLe ޿ 2HI./خ׿4tr\7Y)59{I(j8l dt%#n6Hvf5%=h=ܒs Ё踭1XuՇL v &N9 s;yDj4$lP:od2;]$37ҪmRt3*GFcH#6k3v6 }.0¸CZ!-V!@Lz&b̯z/%:j'YU9cӗoS-~)t ƫ'9lq”{|cO H[Vx7ظܼs!s Ӱi(̬ێĘnúK%oz]oBYlHI"2U_eU7]&< PNdav5 Iq^ %brC-!̫ c:Uĥ|d"?g{K87XS5E i_ 5 Fi$NThv$$cgLtvlSxX.O,#CAY%cJc!Rc|' XeCxfqw/ɨ,'8S`\Fe-_HR3 W[*u_U.B8c mW6+̺I5[ c>EmCt?~ *wV> , KgUҮE$Hr*քĶQo^|_浵Cew&>Wt>Ej܍;(&h9Z=΋g ;imx߄ 9=f3\{/GلC|-y D#‚$%9n7f:*lVCO[R(= 2CKuQПBMnрq%R{|~?Oc6wc4j)GMd &axr3lPMI>&+R0Dxb d_X6ith7='O1#.:{epP`J3NBZD ?:)$|&Q܀^ک֋tsǙSi`56]H)T÷92F~^J58b"dߙ'R~m=]b8}7Ij#Y{HEu("0qN1iC15szDhDžЂ(,"D)duz + >aE57,諥e{$*M`[aV$A/]N!~oyU)YAFݍei:PQܑkBM#?MsH^*}ߞ7FO>.l~ r:Aϑ:*R`AbCmp䆵nھ(} 3o#ʲ45jެ&%%$c1[S/?\9eoW#hW l\,3V …,jK c3L*Q׈8xlB3Tx)%%l` ܪa8]w9G #?:'! |]"9]E#p"-+}ă{1QaVx7Ѓa X1$?{.^ԟැ{klkPW?r{c X6lԵV;\ټ2l Jv U]&YC-洞螓,Ÿīu5HqqE|*A~x}wkՍ*g3B*DR_=tUYнNSLF)BR㪙=X{e֑-PF:B$tady^AmY9fK~H#M*ӽp?+(v@]P-5rk.$'Ōjr}$4&oS,16{G euק4= ڻ1mM9~&Za)l!}ǚQxN؍ ? -f׵s {#8"C,:(܆*×^#mήE%,{爷ѓ @4Rs5P쏎#1dg# ҳ6n&Չ l`8?+F!`;]$:s/I@% $,!'(_\ԭ?n;5WS|JrQQEOpnORʅX۹^l e>XWXf0]ute7U)n9903'(srj`,6т)xf jB˫cKR!/HW!ृǰ67f$Z)ĕxN#g)ʋxq߰¢CgDdɎumFo)tŬn(E\Iv>\Ϣj P*Fj=JppצE*j1ROP׮q%{Q3 ~v)W7^f%[a$cê/j6;1kXNfx!r_R01GbLJhU5$ktU㠭ETa\?p F] H:KɅ96j1Kppw1#&Үsp#s&i>#ӽf^,Zi"|\4د aMm@, l0#8SKe~l(IUB,!楸ۇ M=,Y zFr};[ʫKOXcqjCt,cDÊۃvjI㍈3IWLYo]JRekqѿuR$D65Kgy DHX' eTA<4Xr >xU$m:9 :_neέu~25kd˧3~3?ſ/Oa[ہ'hM. Yx|߇[3i5zoPU$>q-NHb/-~A`#o"joM獅’Fnܡ=u%XQcXsl*k{.(euח!Dz SοY}j\kI>q/lK/@{_W3gcjD{h-x|ٛƱ@W _;1^|_,0%4q >k[!L,M Zn$ڍxo&`RS%=='dd.^$ 1^,J娍k}XJq*o'YP` ꠆3BQ/'ZwEz !hZfפ|FMHr[< MHR7(lDIۜ;AgsApDOy'p/{GzELP[!r7 *BS3jg< m^BD$!ڧ*࿈PÜ/|!{~uVN'9>!־H#EFpr,_(<}XV02I"ĥyABj?"R0 4БB zfKcLE+2fEn&D>=O8j"ܼW6pV>r꨼t 19Iu#\zQ>c0a]>cj j[[s]2?k֦g ҰFҏajs!oh|qY05uQJ]< {ӂK׏K$:l1Ƿ8<5F56~Zy~+{)zgįcݑVH `ʑ00t7bEj> krj g12xY=h s^Zf&çkN_d0$tXpDFgw: @ wsGVMA( n]"/3ϐ@(,ClB ]}WVp`trU .Q4M N[ژU_OwPgPp!Cg|fT]=2#M{Okh+t< 908pnyȱ \)?(@ݐIKQȏx)KaK-cJiA,Q-f-cwj8tsҙ#ʁ.MW^n+^aݩhiERu==blY!Ƌ+1p.1%`8{OťВJDW v4AI(B % Iżg>Ro})O)Mı&ϴbs!W/T(s5~̌ќ VۉKЃ jԃLv&'^{OH b=" *,jAբ_8m=TgF%_7d Y"VXC##Ppk01qY]Xۂ\a8|΅J->Q<ڏ<~|G% KfnkRU-A͑4:Ș^zPKTh6! O7►@PwD /kƒ36̊Q+ IwY #fuZ'qՅB)6q9_y ]=Y=p 76P̙(pgC`B0YXz6r {4U l+|&ǯbU`(/*6u!D.mЇh_s3ZbgqhQ"Ju59j뮁-~T2y@&şM'LGe[.-ߒߪptFъow4IlIe7q' aDwaɾ<-ﮈ p?V] 80BC$mۓ^DCnd @6>o ڭ1dP̬}>a9kZ hQ\)˞Kp`=m ˁ$nKjxY7wsD@b e<1Y$n5pւ,;ś{ Pb.1<1Ly Ln,$x ؿ}ה{[MIS='0ߜEqrD:N'_mԬZp]Hg^zʄWD¯IIaY#x yJ|-k>-b6;S7|1% Ix~c5Zc: 9㑥Z[ ' 01S\a|!c-7F'8J=q؜~;C~e)xd%A' "ٴ`x9#[Wp[7-NtOnNW92R;#3}~R"JwP K3kՑ< +UR~:{ݛG[;9rZ[Lh#J&5( ] ]p.Z9ue6 ժ-mp4rN,?Mȣ] W }D紎lr u\f&ZJIKXBݷxo0IOYYM/+W]ʛ3}1CZ ,-֕fM$TMTȲ#bjC[2%zjILR\}w^i|`X\$r*MoؽXN 64LjpŶ@\>Jǘ5Qr"wlK|'py^ π(JnŽn3]zc,9/}z:8* 0\)WP]@TL+̎&qSBBس Y>?d\>8,iPk?؉1_'AՆgh'i ܰn .Ij!`e$un΀/+w4˝!'GUgǻWP'̥ʦmxpVa7i, ~dpAfkwGy9FhSL  b,:%=rtm/g}MʢB&;S #cM;Q*Y3-_HV=\]oB%/y}_RDq1p7nʃ]૙S f̻1|? BK*x.84np9rA@2*Tq$m;)CNo!MJ>R'Ssl\ c4 d&X\4:N/RGW-JYKz. >x:j,[ SW [c,Rfp\7r.]?8 R5-J> KH]Oz}3v+z)LZe٭)XKmbXoU/^1[~:#V^@=ތ,ntak=E&,ӱm$Q)fOloߒE_IQ?qXzwiݣ3`:7 6\Z$5_uclJaEݴF p^Mٓ1% O p@FD[L{?y_mV%>41߄Lg~c'Rv$FܴHģ^4۲,/j.uGNc1}vYi@E5yN۷¦ڗ`R01Ba }b:zi#h*)T2@tE-4 i"%&6RG|'=k-JSl$$x>2^"ڣ_҃ !@{;Ec}96 K2&z溨?_[ &8Ew+LCJ6-IKH t3jbI43DTcL;v^0aU2$~à&C`_ ʿs[a5ƐqB_uhdF-}n(9}3j c~p|`X25KbeW1V/T8 ؿ/#zi[,y7yu'+4MZ1=!{߼c+E x^R|'Y?DNd5ٷG&>D.R#hշ~yw ~3*uQZ`Qr6\f-Qr\`[mƳrMG!]Mt/&eF3PN=ؚzdؘ( Äv;^)鹂yP4x?퀽lOGHLXLXQ v1jX H|L#M Ћ'H;?uٍ}˲oBtai+p_ Z>#=-(s:kNq%һR{߼E[¤YD6; dm4u9sfX  BqQWj!v{fAj1;ԢP"#ækrZxKL;ɉߴ1,BTft=gހ#6t:$leO`0UwF[}{^%N{*.e F:&f5)ڪ۪Bk]x'eg>YgRNK81Ӏ_{8F5k)àLiU{$/X\vl7>V~s4rg/q LJ/e\ym6B㸻n-8*?g_l]AQhjupfz-}" ,}`BIQr^o-@'C7K{­K#N/KEȿ ]'|-ت7FPhWݜJZPoa+P(H%#M5UHSbTifSpWJ*b.'w1M{TMo>zxjEQ}NGo`J?dNYA"hnZ\Ȋ`Arp>,NTY@ X d99$5^4pP%qilPű Zܑ~]dˬ] vH/}OjXJ"(:M H#?NdC .cn~PY8g4$ :'xF.xxf'8pѿCRT8 9/+߈hmPTBu0(dE|ЫlnIW+ $ڥ [bssqn JxJY'}>9p,!4`±k"'r ChD>*;*&3%7*wxo.,Su9 ق V~`ou>CUfix6jy}}<~H[Vc*O L/@lͮDS6si4`;" S8O@cn&`_T?&i>!f5evQ0sCE9kh[mI " :E_6`! __xwi~ޡ;>Nn-nuChBW]n1~%, Hߟ]([=_K6P#,bΜݜ稕$f4VUKhڎJ+D߹+FBCAxJag_]g=y@]\_/ݓU[l~}R` #9˷k#ta4"h!ӥ08FRKc!C#r .zsIcq9Q7[KpEQ%_YR dbƧ.G3’#/ pE*cNwzF ي`ڢ{(`aW1iR vߺk0ճOƮMJRi'Kg[#rvi;xqy cnTm=؆_[/Sv"0t܅1bUwE iAat ieHׅtkjM#)Pȷ4뺷R1 o46,G,5̆pe@xZ]TT >np qf(}[y_uRc} b|6֏: nqEO.@MqiU#Sy@LEp7 ȷ;91L zV= 0Bqm\Eu桄%k8]ޥYe CX%ʡBm"nb?|exH3w[w]vL]ًb"!<Ҥ錎̢tuB6/PhXGg'Deadxz+M4E 9!A73ݚ<%Uo+,9Լ+)9 kW#ޥcZaUZ ܮb+J./H\H;c<߹􉙪 ;M,rVwNý;_jJ\Rp4=״p `Y u |ꭾb{+?-ڧRSO>MITJ-$g2PgܮBqlϑ#iOG7Lkq"?cV|ޅG!N3xZӓndHQb)` ^S#ѬeAԨN7z*#Ϫ:E9gSmG%hd d'Ċ Gdc/P`x]{>d|ݢfۖV)dlikV^*)B = Av D%Q$}ߠ!$G[d! O]ŝa) qFCn{hS}Ox닅: VB bܸ#'>F9{A$ۓ9 K h&>3pcQFw0 G&DHru9& Uzƴ/6_^.he b2B9O*'t ش,ӟ)@;*ǑDfe -A Q?!x#@Um;h_T/ҔU/.^ZI7+Q㙟͋i#1!gEt_Nʥu_Ƹ)W2Rv0$:KxtdԜÓnjQĺ쳡\_`[ħTc'*/@VlfqsPKDl)a' nZC;ii=B.an3cut]_O[;Jw?9rBuܺ5-.՞sBqLCCcӭkЃw^I 4_oFq~ (t3_:vw|*F?Rʃ1|?'bbt4tjqǡz| E˗4y0gMƻuX(.~3TO赕Y:s[3L)iu'A*~rORl>\l)B"D PQ+98UgjWߊd3D"n-VK)ӳRp0g.ޖP;5)-t9!W>%_wf1;awjΡ dpCD %j%j+82N1P VrŖa"đ߸D?g;o{B Ⅰ͌ttfv{E`]g| $7 ؝/CZ&r={ewX`"|V{\fM(r)0Ryj aM6ɉ9tsE%9q;hh`3qW$?}JV ~M`ЭpQ"nU>@;-x'C&FWdda~vY99層*ܳ6bTp^n{='Jҫ^e͚ ɡgLM(aݎE`/'zsG2Z=`U!`5fHA9Quwx]=<`K bn1!o,?Ppkh\gNB~?-qwϡ80Rj+c|eÞˑt&`w˚Y1,!F"AIB)bgTIVF# G0W?ӄFiK`jMfN]>'3fQR#e Қ)xV{Rs'Kn&3G /Ot-g\/K_iLF5 tSL_61Elo['WIտj@=;Az:۔g v%$O(隶 =OSdlūѯ}Tː24I_:SEyxs/ MQ<:R%UqyP9?Ze(J9$wY 0qd>N@mqFn?f:jJ;[Eg|%č]YJ%NB! ٢3 H-[{ޟ)?B`[kvsT$Zԑ-:Lv2b\mT*i(!9 T5n&tBo9ϙ nC;x86 T{/5)ڭQUyū#=*5qdԏ|c4žAɾ[6Nq5w]FCylUe[]9F= 5ݧ*c,G= &I_̓R"rm!gb 611p2\@H?%s}mm ´Iv\'7){ ,{IeKDd䦾laz7>?Lֱe[DT0)}h?4U7wQQ1INzY'bw5'AӀ e!Oc(ߊF펴~#d%Ey܀ۢiE|[\-Pe\0.=OΑZ/e\elFg\Je-ZA G͍E X~ I@*r@e8ax2}6$eD xۤC~`/5M8̰\NRQeԖH^:Y^"?SN)]!!+//K+m.,xXf/٧o)[#=ҧRLx\WF%:|%zDj>J 2u,x*uJu}xѻ 3+S:|xd Y҅a=,5)݀LF؄>KR-!3}yBfSִB \Xl]#=~ bu3G/ډJ6”.sӣVGb/.#L(nag5+tފk29Xڭb/RcO)g}JqSC. _9( LqjYc6Rf_df3)/>.{Ҹ෌#s!MAW''{rqsD!D:"[AA.)fvAg:'1sXI`j(Q~=JƖ|m}Ԕ1WYtL)f nTpY*fjG+o|gAg#E'>+rru= NGuWCYWE!X+dN؟HEhwͅH%"]`ń7 ~O;E-\yF{uлiWj-٢=_/U)M06,unHY i'?|T>6T4W 5qx$JPxCq >%r(a_9&">/m`6gito0_ŴC޸ zx`SO(!+tl*9W\!u,-NI[TO[b-*F3n_ė{z88uRqL~e7 #inwxk;S.Qa=lmr5|kL?h :.0@݀ ynN vဆ?VU^:L0"tNP;Tjg #BiNqgF)a1$0 @jId dUW$ikKP| ͳ=<{~e"QK? h?xZ^Rj]@< [2c~RWqKWEZH TXL m5|-`Iԓ IZp)GW󞳞Ȍ"ЇA,NzCSz%$u㟖GMm>Riʭ tY5CP ʤZ\ҷ%;uY\>$ug]ȇ˜ iO/8d_qC05pgV0,#M@_eCaNk | ^hkQW𠁮!kXI? rLX =viUՔ> Haib&l{O5#[ڦR\ gsE D>siޕG WTT| 0cjW ߃2"`'> < :[uPj^z0~klBhӤsB(f_{<$&$;6DmoI${,ж?jπ#J.QREvJo/}Pkը˯b-xSc$YM~W8wP˹'qxR漺n<+1@,Y[wL@4XvW^P+ Yt9f ڌyO w"ŵ!= vblAkzZx&sE@ m PܥWa-"<1 EFl#$xܫ<` =H띴Ĥo7p8LR #hy."!oL5 :,*u<-n i>v(J'C4qvӾTp*cC|n13ϕ颎߼t)@6rrޙ5S9PLSڗbM8Ƌ dk[_-D eciPFD/ R㧭m˧$뻴ssgȩ$ĂL5A < 5> Of I5Nu)Tl,iNz{ٯ ._n6UfH?LW|,}Z%sd?(}5#㱉B6_ȦW/0d!A~_Yw06]Ux P6q? 5: Yɨ t%h~D$ tC+ڙLje4amh1nL^V!p`tꪻY-8Y0(,q u:9Y tǯʖH˻r yM`+~zg).9T.W%;_x_&\iਗ਼{H6|t 0&S!Vx] G(le> *ձ2&A SrMd35MP,T}ˆdoBwa1F./|#ޘ+J_D Knv~_e8fٓhbdϒ M !Vxx3eNUەrR!\d.wǭ Slg| H>IUz޽/@ϘFk@X6ӕ#/^ڔ:[4%ӗ2X,Umi0Hbu FjI!eqZ{%@ Tx$E|+߻6;vdԀ S>V^?b~1wof#4sӋ 7/$wdji

  •  l% 4,C\M ,9`s~O*%䎧<2$ H^_PQҥ n UA3_UM ֑~qxc‚Ԓx?yѠF!J56;3︩aA<-:(/Y0^8񖥒k`YH>y•}ZP!ϯҟD +D @՟v8gSzEˮ Q,hwN<=t$Ӣ}R Ι%T{2pK;J߹&Zȥ*]r:=rR{TC\~$M)D{-pD?j u#'?- y({8B?7QH5!g`-QBebOMTJMr:1d6gCPɋDMqq8,~Ai1Sl=|? t*8l!Uq6 /rBmCaH(X\xe㈷M+(ܻ-3VCKn\wwkF veD4!Y3j34-_x /dAY.W}lI8mnOM_/"!:q3`MGb"hcR`,qZs26Qvk |M1߁4{+\n#@s*'ूon]Fۛ{Xư-e[(O!P%#,T6CPojj /Z/Rb&#KSg T GmqH+tm-ռ`z~"6]2nJnk'uh(U\s|/Sy%`Iء WaWbVե.%_ŷJb͎tP#5UmePtS2)#La5Ru.PmWUQWe\s:@:oYa{PBXm6Ğ3Uf;}dS3,r@JRf fܵNt@Q37j^8*1HxiRbu։~.usQ'q <ަ_1Sw<ڀyN0G3VWO'7$@-vYY`%<ι[).W^i8 m Tؑt,!S.e=lÊcUafKL`9&[Q^뿩qI+M_`~R1:Wn'Lcw_D2LeGx)ln[[w%u1a.Ϫo^L[ z" j>l0f9kjn"f$ Y2d,͗u;g_mȩC$'b#4NrqP"vK"yɧ1Уjaj5eAzxZ/{kmhLGO .PuS9Sz]59V=KvW,zgLJ%!ëmo) IePDeU6alBN%.A4:f8~_g>0PF5Yv{WP$F]|!ro374;Ҿ-&7}Gp\ (^|KhL(@xFyزAo+29pg 4&K4.;mwET7\p d(v'zL-IF FBOF]Рen\!Bd.cq*QQ9B|$2}89S4vX\=jb33a.FM@7`1jakJr\/|w$Q6Ao#dFv fHmybiHMw*\;މ(ZMY M$``08/1r!j&i"xx#C*p$GqFdf _z~$ %v9!OǷ4pR9r$CZj>P/ogvJE.iK{fXl޻l[VKɂ9sQMt|vVX.w}ѱ#Hj)m$s7&OF^BVex%rx|N_+u$3ŒuiF>rV-dxc!i q;t?ׅo3mwPjҿa;ڝ-*?\GϽO^c0@.++Ti#{$L%CpvJC_?ŒN]WLO~瀺+Lʆ8i[ŽIJaGIg7!IdʪXC1@0߭!0+ETVC޶ע9?AGQ2Sx|6-)qU}sy ;XejQM= Kp‹9c'W|2q41A1ƒ˄wH@b r}|4. |}C 2PLڻ/wg.p*;5 Y;*)A²S.8YA3]>J2q A_ro%;&T'&{bvr6~)l@B+Nx\U-fcR#^JzcN>\3^ Xx@#;-sV&U YrvSxUhzV%@Ka;'Y^?ia1j4< m64)@!Ë✁w)ҝ|̞uK,E'Gvs(uho\^[8"/:p2_ G8e))P^jJGCd GxiڃJbش(Lɏr5d#r@Mk*C[=#uD!~}q"ffIU6oH9m브m/)F᧠+s0sS_Zw6'̆"6N2Xx3qYjU"&!Ze)!|i !+ڃSҳAtE>HgE,ˍ.=z~ZV2^sWnbbnڀGpě*FxXW5zU+e8GmړV䇃>J)l?N!%%M;4)~ gKA࿌DS|Α_D2ĥ8'Uz_ZRκ3/}FSz}^퓨6~1)ƠO4J܅'kw|$.<UNld$gk^1RNQ1afyfWk Lh.lTǭSBeuG"t3 Ƶc!XK  L{Ya$7C5wD೥5> WvͥVB_@eK t#).B w{mtg5!`NĤ^4Kh\{:/Cdqfv&s(kai8ǐH*Ҋ |Fmʙ.ٚ+_ vnfY9g}lZouV4V.FQ!q(5d~A A(xPplpx67y5 E:^Tʄhc_0+Re ,[?hh1M/ 98ZCj;zyCOuٚ1dbPp^,oҏi^]vi&|LܯBvP t%vݟ7)Ҳj (bp-ϔ 9aszf^@OHVo-Tk+e_-O+Wj| [b%B.{D#gIPK+ 574$R{DŸosfY[c!Eݓ.هԽѷ5A=V-ZH;A8WAZ X\v_֒& ,/&8}ܴћJA[cU'.(iηNG?bv Jj[*I颴':Nc(@c|Wg,cY3F b旞Pg !%G *x6@[D}Y1weSĔ@ۧ-HlJʃYq⍝>s8u swL"^`-!&~B+z.I)76iyumT 0׸ Xh1Zͮp%vcIr6̋ ^v) ̬υQ֨LU*#Pvٽ%=/h3GH!82xݶg"g}{m0d A,Y釀!X&oB:1\d-=fɮ'Uu0פ{%6gs?X5 MrC gJ|E@vXfI@:XW⦑JmN7#]ds|T"'\?BQε38*vHn]Pz Ǒ| Esq{YT#lUTwJ\9*nF kTLw:4 T $6q^D}߃8g7Zxgita ?݉ZW-bʀZzsӻ99 3j'j4ٵ2\>2[.!|P #RMRU#In;.{] \}CV"?q+#{TRLK!Mg`Z>|BJ HS>$ިY6N>ŕ牘j ꛻جv[^ u )6^Jɗ)z6|y\cBnzW kﻝU̖$ Q^` |Bs~+۫EI P~*tϪƉAaj N{,ƙ,˦/IVfJV2k$\ښkzPC`$;3m6K6H~e)E.yp 'Ah¥(Jv5&jbˆ[#ʂZ-EU(;5Xe @H=7 ~ӊ6Mw]4SBlq5-a d :°Z[7qSĩ؃`Jj듐s> d8HV[tH;&6Wqc {K 37KZl¤Xp'%RĘٴ3 g 9%ti.^mxJ}a!+Ȳkb1v03&[5Zp:kuB1\S8(|$ƋN|c1ms7~\#۵Slb֏b:>>󾴕A c;C>aZfP뻐MN*`K$)&tKe&9[G2+7 >w6,Ӫճdq V҇f YSNJ4/ml]RWBSٜ֙}ٷ+#A(I"<w&m9uUg &vzJh=p"sBz[1a#'Udn_w\I4/BCX̥XS4Ųګ\ E zݚTrĐ2piʋh&ؾF(FXvt[aVYQPˣAWXpAS\ȑU1HYnZ%s? c0^@p!U-1дd7VZ IO2‰,k!f*f`"ij쎥30gs1<2-i+o-MS GOXF"a*1z:i|@J ޢ\xVtbK5a4^ͽ$oxvӍmt mu}!ЛTv;|}+>ѸdGWfLl rKQ^)҂jM8FWBJD7|"Qo!0(/gr@EW45f]',[} kӯRޙ,Sӎ؟$HUO1pY'?kd1ݦ$9g, Wbۼ?uDG<'R2޺tW,֎tb$A ](9_͋2˻i2]p[ 剉}Y _ChҚ':I/KKC,m13vR&jcHB3 〝#Jp^o4!K8!Acy% @,;fv,JXf鞌$=Kn,?TinxEӃD _;gJ4sɪEƷ/:5eg,`!ѵxy&}ցB8gۀ-; wdyqTIjX`Я >7J2XnA{zHo pKm "g>g]oq5V[ ̚ϛ-O}X]Ԓ]G ven:7jǭiuVsg|)zP:h焷̜%G1i"S#Ū!u.8- *PRPkcp! _/O"Ѹ )mq;r6`wAwpjK|00%iҡofdo2{B=a=>T84 e@BqgySRGA*~MGA~JJ| H x-cKT([0 ]T7{< ]H%v\f&j|>1F./NF?OB/M < QƯh+. ?^hv0s#LJMS V-@xh]08fF$P32:dE+?o2rC sl:TM, ^,=ܴfy݂յ3bgz0wM߆n%F\I|oKoT)̎\ZfD5q RzEb'7BJ-B)S{ jL|'_ObM{liȑP-8ĸ쏭M  c˸Ά|jgY")xl"KeӳnLch&[|B$[ y)E ( 8X]C;ZP*!CV[|d0GYQ ǓxiRZ'r#J ~l#NgW!Nʜ޸d*TFSR9Q5׈>Yt\n5t5aFe*g1O`|V~źKkxm?h2vwm*0AȘ8>_m;}_2R55C$>ј|x 2a227Zb=`n@L"+ `JsduPe}$⾇ );<ԛdb]Y'?\bqȧi'_yL7t{@ANƭ_k(uN (Ai*G&*[X/i׷I(0c۝`u B+hʳ[F~˸I 봟`0zڂދ`-<,CWEQ0Zn^01NQiׇ(‘hsg-Z\dj7[Z"1(@Jj)z9J;)KyiB{”0b9,IݶYJU$x5;ĺsG N ].}wBX ?]g(T iSރ jNngirZgMM+&UR?D RMѴ&7~v3 QRV+.x&fs\#tZgf流X/~hw}RCN]%~o>|7M+n/UekU?Ы ntrЊ ?$ehgmR; q0J7%c(8(0XMIl+L5 5lϘ $|(hǿVP:9x +2PMUcGU+)=rVJ>P爲 mW[m$_ۻgjjF]x5ZNgI% τ}-`h5kwFD~! I%Q~JH~W~vR&3za^v$h+'nɊg qHQ2L+0kVG z3OA+?W7CR.!*z/pKy΋ ,-րA~dSZ~dd %s>lބfّT't1B[NO s/0[Hy)y’h{55Xs.Q;-98]ъfV!I%sdyyU)`#n&-G/|4.2N!H%Xd\K(h)yƋG{A~j3 r~!2Xg;WҖl1 ,I}aIh,^8V8|dWe9Hk@(`5bl^ xN4yJ|f"y^K҆Gf`oB Vy zsaK:p L\KJr!;mkklLAJQ,^i⑱EgN RM} en@;,W˵ 0}A .O惮E@,/s 17T)2"6&uM UZyfJ͜Ƌ|ĢLgr=438⟒PuSdM7&uv>x f4biF98"9:`}J,h"h4ӻ $@@= - (Nc)bfvqW9q 武*!Xoq3t%-{ZI#)ˠz“ݰC/%1?T6#ޓI#lM4ATX\n%I5T(t-c^'g ~;S}5^c{5Wa3K 7CѬ72%~fu` ;FڅFS _Wu/2rWٞ Y4 +שqNEٳ:"i(3.E]g&@!Lɡ\rz|{'~ߣ&0|7jd{WB8@+ҕہ_<i|99Y_UL|g ]c|L{lA5`ӑ7t{'Vl}2 (!žpiAz>/0#ln%iE6Ye*UE(],+C(wgQwpl+0[t d@Ӈ,@=û,. ?^ns*m׿4z K lYOխPjbo(-Gǭ/ų:S`ҌadO*M@Rۢ"nvHES+9]Yc =|- &]!W=4 040-',i믐Ģ9+u莊k36b5wx`U`ݟV/_[.d)X$-?cĽ__oN^Fy>,ztTqV aBRq{|`2T'4ִ;VFftE9C,?(U 7ɴ)!J?pMdOOU͕O 0<2\ j kf%գؘK57)HÜxDwp}ɤB!u@:J[LYiSQ14Uخiз1)1טZ[ .<v8A=u)דx*LNVjԎjfAqXAc\]"i{QhPiU tH%ِGH~)  x#çrq'xjR) _$ 7k&WTR؎QHRطjNĐ5["c5h9Arn'-n,%d.##\HC߂UFc%j<,oF2=qL4eCgK1 '_4 [&:E_F2'YHpp MgW_Th9G 4*+DV(cKau;S*ē_yQM-4=}F a|ęZm|:dj!$WDibL.O{O^PfgSŪ##Ƃ&q;XY꽦aeKD2Yl=c%^צW6qȩ2θӆ_5W=:G #|sz" !wv ːtJ/Do) z01p5Ť~AoeK-rPi 08)#(Ν $82fԘ*_'1@W]<~ϪH LlK\Pec01Ŏ6C1 2 V F*\ 3Ѐ.k~.dRq@TX>hT1k)sA"bKסgJb8A^&昩;uP4&H?8ھ揳Sk 8WY:˾l6]wM_ !!w:;ߖͿ >mםep`Xܴ+]XK5\R;#1. CWnvw9&$morTD^hۭnD^EIESQHF5XS%nb.,Vo2-Q=$?(eپ}.9e{\ ~- iIC=0&wREuHnةt' -6s d^Ix46sd`O{J8rqdw3;ucͺ4ߏkl]kpgf|Ɣ 80㱩lԒ !0-/I ҝC3/י4- ngOYA;h+W;S?$ lkET׍Z2C7\Y7r?dM׸Az'Z+NW}h#RPDz$xs/6~|pv2eg8_'Iク̬O{KA"ל m观Hʐ}f>jsn:w s@vS*3%h&,s0WiEZj;Ky 9r?yr[U1κGyeCᔩҗ`!rWYo1{f|7I`W{2RXl 7os}<*1+9PRu?'>2 RjuZ!wj9UE+ Eu ' _zMO\8TR1zI'5^ZR 5[^K3L-f3%M }O2X_$;Tж94Lz&5쀐7XƌNKOY{#܅0f^l5o͊)sys ˏ]ȕrx7tjc#!:o_!p]l=.|Axy=}fI9-biZRwCPb:-Dɡ>Zj<<'H7sWʞDy~8 S|.zg<ޗ6/` NqXW徣_YNȖ:DN#L7.V wݺ[E51ʇX~a|DE _*4I%:/.::`Z?=m2R:즋e{\peɊ!"@g~oC/ۺX]@P邚s&9!tBb) ̓-=GGlV($H)Q3^ҁwj-.3 lLH˓,yJ Q _;O<-66w?⩡]TbZ"}L[ z~f1c>I4I+HgHVV՛;z ?SJG'b-Q$ܤY/R-` ֍Ж;ՑX4 )#r"zE[!ŤA!z`,0^TdM:=Z e'rT<}E-9AR@͡khT}5mGmyh}u#DY M{ 뗸l1!P4czy. %=:ѝ9Qꥇ[dơaѲLd"68h_Idsbw1 w1):l7 ܤbPBf^H?X5('|A T+w @⮳|k( *mஐy^Y-؅}iYfm;kxJ=UPT4&2¬ vrđ5.ECW$H2~A8YV䖧ƳpgJYf_{f"8}:yܾ0쨓MɁF3ևt%H K r:9Bp\yZtRwՂᠭ] {C^2e,4lDa/>(j@x+t3 e .~)> tѧʆ7" .}g7../%1$D~ɍ/{U>\PxT [ު{Ɨݭ q66R'eAtddV+#iZo,kS:HJ;Oqx.f1碻^!mnFr#+n)8;SZY<\ɳ/d$YX4~t !8]š|_OLd6Y;$k k繝oBuc$C|"϶މ`r* $j/ݽPleBG8gԜU0=SF$V9W+ʝEr:pv0!Qd'"Ae-A m^ه࿓G F5~δ8~*qa&|SsShjQV䪐8Na8w9\JYV%}{B٣g9xጏi#2"\Qp قA%w\>W~EVʝ9-| F “=D ȥw91I&Gqo?:CЃ~ Ls!q=Z. '-+|HMEXB9!LaYF;: 06ČSo䧗CuyFҷWvRas[.&RT@b#P?|Y \2MsisQ޹yGo6_> ?k'&Z |τ R nNuU-i[},=,s(C=*@Ţv8ZizQmq+c(le_] o3u/]W~f#c1%.Zpp蒝S;~d PZt^,wůI6epܓUQ^"WUUYw,{hHAjmOHݰ酥ΩԱj2KOxPKs@rRSۑ(FvF6\.]q\_~T7T0pI_mpNM3E}OTψ$MwO 4,s2 nP\(z0C+M_Hb[EgyW9M@fKqQiF$,`}!;$lP;WY9lj˭)5hx$jY5 JxR2߳~/R|;p ([3WY=>x=9׬"~s7fה $hZ}5Z;8=yPlXH(XUGƣD7$ ;=w6U`tX4+Қ2C]@GEP_4FmW=t6L>oI{巏*v0._Md| H`jxv1d>k8@bʕCO u}]<> AHad/ Z޵SjHGp%cc/?˦*qɐSt*A<4,(ˁKq}ҤyRpi2۾`)s Rnżd}}}[o );6f\S^ @htITsFhsәJ=Da*E* ZU v+O}FrFD7c)hg}H}Ǜ0"{=ive:@^q<.gA Xr ̫~N +_f]uOL ǵLaWZS`ê;09ݴ 4ozݻ\Or pGyxfN{=TZWG3j[ssiW[ 4~w:a9ٝ_Ozr* ˡ[_v=u.IUgW `sb#sI꿆:fmċwGin9U`PLe*/òy"d [8خӎlV¦j&WR\GxiIX'E:E&G~`jDz wTADG,fIQYp~ [o:Fʂ')3r9㘯̃gxi7y \m? "TuՒhq6H*'⏊4$d *.Dl".GvlߟWحl}ʸ,,nc"G8 :}MJ]} rTȑIqwi9 }DG*@S/#W7&Q^)=u]6 Ә5W9Iud3ʅ5Šֿ7VxG4ZoL侌/Wx5X]05:5l E2z`GY ˏsRNgց$XKr [4 vb^#+\!)OM2x xxVB)H8 EqRD3ŷñ^F-^c Du#Z6xK(%'j_E(|^♏Jц]'I7j="$5do, %|,N#JQb#k=6䘅8jy<GvImO9p' =h,GǕ}ewČd[煺b)/t5Dod؍QhcOqmoI"coQO@OAe =!~Sk$6k(Zrc7%:}մ&v1$Y='9ETz1NӅ%뱳U^4i[ >WUTO?L9𷄻ߺѡo4 5-Ŭ9!;%-<t|*U7ƣc@` ;r,&l\s8Żdv_URP >Lk YQk 2Qy19ƇCvU,(ٺlT ;n#,Sq'uM3 J|SpC<';4t/:NjvG%P;P1#L#VS.lKKyԵNG!rZij2xQ17nn{ |u2h&'KYA77V_3!gDϋ6©αV0tJxZA I1})P~t0|lJz=)V:ne _םaN٦h=;BP>UyΧNt.yRC(ԼNEx?V'haJx# $L/"g3]rQjߜ&<jE˃B8 Vw(< 1UͰm~D#&T5ˬUu< AOx0_[gZevj 0mFNM7)P%;jW4I-K/0qwZk6!UxKˎ*gі̄&&a_:7\>2&ާ!b(۟ҷU Rz(z6X<l b`\н6*nnҹѫ/xV0n@ڊB i?d "n<.$?#m۹vqV#|ARJ 0~KUQ[WajZ$)K;G*S7qeێ(]x4|V=7pb9wʺ3f<+tCJ߽(ZHn R/NmQ^-1ޮ[售חL,_p>m}:}uQW/gf#B}1aCxis٦\1,%2amQ .ޜTjͱ7:JyRĵvɨV0&:WKbJ(6d>A lp#7%p0H^zVna.һ_W?PP2Jz_ PT5S9襊p@VμWFD Iw1ZY{&AsB> [G:bx8wNV21ȃNLN,ɊOJ$QLWjMD8 lFAmN`c DGx.Rpj;T}WyHPszDE0 s:7˚LXlb΁9Bfw^56m61*STf&3'd%~̿vN|[>І'hAMԽg_p~ϳbR՘RѫМyQqRp%$"Sݔt N$`^RQnDj{i:`4hL@JPj?Lqa@) |SE'59QtT $0ax(WMɶMS퓆8"{X7kw9 H]'TP;meI^ /xe2̗TVFǑD=ι=-Ty=-9Vn~ٲl&qp|^PyuDX[9حF}c , %VP'l1)wmݦSY_ g{vpgqednNf8VPl7'yd%]pvQyJv^~rqHq dU@?#|#{OCMjn7}y銰i0P_$(/uosʁn\ss~n\),7;tE79;Czw ])1y%zg &0Aۮ*"+4Փ^)zqF#k4=_b6l n?|I!QMc.wHĊ!gSZAMe)qVUWQjzӧ+{fBFL(RA2}#CWJOɽ^&,멟fT4xL vʅnIu#Gs^(&K$KnBx;Bz[F%k~duA;3[B ꢵQ41r|\pǂ _$5xpf0s?_:hl2!Dl# ~l.wNV8o؅:7앳nSs+.+ýu uǂ9Qmnd'8zb2 k?7E*-fCЈJiLMJWhPdᴒ_ip`1TА yJrk~Wdv_d Jf ]04"Y+]T=;/l~na{* *k'վ4ژTުu #ш;(s͍D0ozN+WfJ|2Ȃڇf%{mK("iyfpt H'Qe\ͩqD9Gswuv'49edHƛ,?P y#dY*5>x"ueD H3v,@x d_L}EUe'{m;*xUy]}?HxQ HwRگK50 ؕZgGu]MAXF*d'm쫖~Ԡ&}I=W6Nn]m:{Ǝ#n)=3r:qm8t|Pe/C" nj߽7Dq'E0Xku@?^,΅PB%$&m#ԃ9b!q Pyq$>qEl̾Or<:bz$pFQɗh-byxY6$}s}9AluM]7*Y1wY#L'@%4f/e#k:h?&_|ۥ>Lj#{&#a;!du_KK*sPV[2G  8Bu;a+#H~`aJ4͛H8o\7x[s-ZW5R;Yk1ab56"m*07gIP!9JַnA K0B;z^gllWpZ_֟ =X1!Q2Vbe#`nug`zIG09WD},9ҀW9#\O-U 1R1d6']_m3ݻ|_\ux3b°`}x2PPGo#ꐬ3_=I=@: v3R}dRov9&l>Y8 y˰ϸ#09$J;'/)Ю,:Ėqu1[KlyNYR .V|=iƸm_muW$T!p2cѪÏ+b"6{h+gVL뫹vIڸbޕ~l)E"w]z%hgnxXUT> Ƒ=MJbVOEzzA◺T֡ om S_{9`IymJu}3o?:wG<28U(gYQ&8D |d!|߬ m~.#7mȱ.$}@SG_Ci/Y/.Pwxq1@Bym?O|S7f(*B 05_FT7Cjٖ|Ưrm)`julZM<@7ZɍMXf \I@ÛȊvo +`߿il/Rg𗶦?*ϒ^:M<0 A_kK3pk.>F('?. r k5XM%ŽwܚI~1hY}|MQr n=i}E%ɔ.‚bE3ΛPt6n' W$0=OR@l`n 9ձz46cH2]QԕN#a*H}Y7h1Iwc‰pj2}]|սBtU;Id$dFh2>r%/;٢ +C削ƲϋVɍ$so%?r\<{m=wqk'wG+ x&Rrf#=}F-sTA* P#֝-AP3d 8Yj}f)>bp;͏`@MWy!|̔V$wL͓'B2?~T{ !NmXsS^{K98nrG~VU9np@1kEbfvVb'vĚbTg5z^)&Swh Z5=:O>^&GKcq?')qI W=odGDMC h+:L1|G}x"Py Xv*Xx JTm swYT_e'I.~%Oy,a4?NN,[kxϴ®zU~=lo|7 L] 4ڂJY5}qno jԃpl(ko![^A&.Lkv閏cag|iX75UIq#poѾ^QwAK[nJX}8 WߡγF q?ff9Ia Y2VilhMt[S4 UU]~͓'U`%RKP͂v,7+=<Ƿ{2i'('>M| SGJHmI=qh.E*od;"}!-t#3^Rq4NxӠ=JjJw0=w'^tc US4m|+OcaI哇e[_cxhJ]Fϸ Peܜ1y4'P3 )\Sֹv.@yߟX9E ؐڧhJ2%,>]Th޼fwh{ނ+Ǒ*>S\I&0e=%ՊT\Z#  kT4̶ݷ#_'+̾8-y6?S,N^(' ag~`K@|? 1P-NSYOc+,TI Dp:,"&kHqs/T+]5U)XpVAlx.L1~]bb["%HhRA$rS .U[@rH?dݳ-0q{0)p2fŪ tKw?sXJO3D,@fQBxX$[FA=bXNd, 'CcoFadŸ(v!DyO'dE:gTZUp2iO>Q t”sۚP;\;YrC W>-^ oBxxMΔ!e$mDžɈ%OnC9ELpe!c{/KeL\*R*%RCs{ޭuf ee(PgC(@ۨU6~QEwpNd.6gZ=|( ˨KmϔbMEWhz< Orӄ@Jw!8W{COFy3-vƊlcJ@E[a=,}o$+RerPaG@zffADN&`mAqTಠZ~\yJhJk#1r#a'ZxǰGjt/V+⸲I@5h"v#^ew+ rpQ NeA# 9+ S =O/AaFnp"\4/gyzB;72 s@H{W"?q|TG#;sgUʩAh9]mb`x3)tH ɔ@zطі$s<.m4QP}@1,hwpm{C_~|c\5lY}_YTXcSF@0 ʢ/J1y3? ,p#mdVg@<)Աc#3%HJ;~OJ]4j}TqHC5 ϧ-wdj$N\'p{:1]>rf+U Ÿ$,lv3yP*h?$? }Mު,rU '?~d*h|y 9! lY,LMib߲+q創, [{D2XY Mڡh˜R N;>Uџa+lc6mI MPqc" o;G}$߿׶E\lU >>ȯU5J9"~9dWA@ c};J'B2&2$gpyt~)>(M-7תB GJẅF΂Ge,ҤORo#sR{*=EMKƳa Xp@X`|>kδ:-Aq,=( h&W&+u̔zm.6q2 7 !I:*PɁyxߜ7O_CsM?p߹qylҒђ5ƿm :;/zCtr=>6i9fK`enEZoQ950 {]ЖKqcghn0JD (6gG,&*\: ۳< IWGs6\x=2t}C /~7:l6e- hY?|rQ 8.ծe$gg5{M>ӽע#_*(@ 5L]g:0GTSȘ[-B;^/H+!O^ƦJ)psH#C7 )ѐ܎gb> cpQ@ ZFG7ZA2ރj4bWo >`&x2c9c[ AX6 Q̴x6L 2ke#HHI K< /t~H= S OGXLk۔hFdw:`_6ZʤPb+ZeNaU=А V q.a Vd٧{_φ~gž?p)6 2얦Hv 'v)Q>Et jC^9e& .|θ&>5Q;K`0Pϧʅv" ?5b·<854Y1{vz5|ɸ}TG׵NH`'ebz(uVN~g;eNޅ#}^>;dr#!14O'qh2ŭZ-vA# ez/|r뎗ryňjgׅ}\`KS>}綁sW+\~E wb6sCu,~)N}])lTdj%\,q疋Quf^mqIĜ-:1Ri؞+6gu;\Z3"j7)9d S"8)N2q`ٱ?=S=bW///\$% aՋr#rge[:uO\xfy  ckLbn)IΦ@NBŰS$4 cZG5&{h0"^_lyWxz>< j1֪,&(gݐE>'1') 'RYsD1˭z OrlUrj9(N&!YǢ_TMeDMU󊍒|W>04B|3?Z1d)ĬU]G6:Yjk:x˅zu5w2QdB) D<~9JRLB}*J(#}m?AXfKkmXp!uH}Q@%RElUG)] rs&5-^Vrp&LZy@ ˻~FV5NG:uʾ!_>I:{(U@ V-Sq%>Xa2/Iu,̕,tu 9ܞYKLuf6$XhzV4~?t(ߵ^$:D`DMTɬ<_E;b~<(Q\E `WBT AASYd ֥eg!1ȵVʓ%-ۻM!~Z!n vn3cTS-aP; '4bI6AH84Jl@n ks~vj63No'P=+fu&V~pt*U<% c`|+YP&lr4,cQvZPXhN=i@vgv(xe]?}M'LϷ|eMJɽq McX%Tq!!D(u]gssX+>cvbAR>nW%ķUz_8YB.68k(͑ ryCΥYWHI+?snJœߊMS*}@h_;@$UZ =Y(̓Le|^a ]LrB63}O= XiTa:,=#]|fMfBru;*, }#? &Zȡcx\F1Ȳxub&PR!ruSݹ Uaj+8&<"2_MKZGVwKc]EXa\lREqoXTFێQ/[gk%lWN]7Ś,c#@*ϞHVrp}< b^3oìZ&MD3K.+<xR!"}L_2CuU29nia <%fB~Mue 2uY1צ 'P7CC6!L8'}gDkD-2v.Fb6)>~|8 gT3*ZZW a<@.4n>TBxC{.*0uە2ܳ=}QZHVxizq@,DZQ[e[bފ%hM5dHf%8: 3ZCaÞ?Bn&ʡ8نN&9ҕ4&dz w]FԩYNix wF/a%=5`Acb)K䇨Ź<$:ohYUay, ~[jũ32{zvu-,tt(|" l3aޜ;]"lhFc[VgOA躙IH6:{e>a{+&v РWlsh[j:,{y.f=#Gi[*9]$d 2S;z %uT3?b_E1R4]S~fZW}*>`H{DpD::mNmc0٬X{W> T()2<<+,Owge?lNpgވ?OѨ /| 9q~scMDm& "-f @rB>k2WHAY(hr449P^߆#1ءP}(Dp֌kn> 9qa`bZi\ 9Hj NGV|~%M FNWݕJw& *Y]N(৒wm(Cmf4nUD$I`RGΗî-P7,޴(ڱÞk 7ۜdøEw6Tp{8ʞ>Az9 !(wp50GETls^θT9bʼ=y+S A`Q.wPSdYsujWa=^ɽKܻ׌BJo7J$uÛ"i^# 2'95k!l {:[D1YI-&#,4lbNUh;dPEsQsf-BU@æǨt9ET5c2U9s6)G{2JQ! :ļ҂La?a6܊ScGv~ V\}' df&ãY_"J+"!W M:}q&q/;k_䱆-{o஍-GYVK ^|Z*H<3Hcij(!D% U8Zf;?>̝Sթ[+s*D'j [獟u04Bnk 4mg/,FzSD e'|So̯$P =_ Q<1t`7mLVC3nLmz>T8ZѮ-5{/a`{x $Яd c%9v23 c (Sd ʊ~r.PAU)U Ms\DؔU@gP„ 9J;EkM ;_:*Ú(h9͟>\"j͌#5@RF o#fT0{f&ŵ"~p2i)% Orc-]utsW=Eڥzd7Y˗9`?u+M)f&[޵O]$8'p `[KmXG!e,[" S˖O38y ](RcAg\0])Y+*o/jQ?nN!`hOdA{YSk5V )j@!GT=DhL,L!;,kCKTV}9`hV h{d|u_5_cQ>"X] x7/g(i6]g_ͬp fwhsSFLTHgg==7X.Ӈ/"<\rr/ InVrYԥJ.el2:%sr=9][ꑒJ4Crnl[7wLLMO;@H&&'c@bHHY&ڤ=_γhj1F?ND(X}o*̀MUح1@MOpn~sBⲅ,M]0Gpjn~ŸE@MqnQNp5Кa\ySy HtJ9?IGF̞@o>_t:N2J1 % b_`֚0sQrx_L{\n/_6E mW:n~ފ[ZBS@ߴx^s{>0'jx>ڍRl<`|eOଶĜs'5ky!?.fmU>u(UB)]ƷQV59*BuLջ.BglxN ?3=,.3L,Ք qb5Q4+W)9'fWa`3r賅 d[O͍<ܾWhOίխ˛83޼hApoM/qC7O ǾΆ\F hz7H!S~F9J>l{.|>cIX?_`γ^ Sv~c(ܥBgT:3[$d^dk߭ZۼHnjOQVƿi~G6ߍ:\G-/3m?$nyD\Mָ5b Sߖ{tcЀ::B{R FY1pU1}sLAnZSXc?Jhm IzbvP#lb̉g;-%1mts]q g]g NŪu%/*-Rd 憈͉觌ZKY*%j"nW y5RR0~' /[!IS5flw8Oy;zJGdA/R"~  G2gn7cy#zb:JJPƚ*IPUue ZY/<2Ma4Fh}è>s$sHǜz, 3͐XO]+*EF L^==潬޹t%Y!EZڪ!S̘5Qi~)ispdVu{-ӯ2`j>%W+CJ'v{8UQV!?\ADaϗ4f.*.7%6LfDUe/(fFޑo^%ʭAg{,*&uc-suHFV0k Bqu~Bu8C(MLϛ.Wj~-ti33,rgCne\(dU OlĊ'JnB P~iwHR?WBvn7C̗rB-q`Y u} OjGܖl^tjYR~q,[q6kUbq\l=*^ `m𾨘5>BZX\Gp`I׈_,u }ق8dAa=`~M <CT9)jĐ[ơ}Rr.JZ&1DwPƀDAOɴc%{S]ի-&j?ț숕؊%76M )|cfn*V_ S!: r3P/n!ڥ>04S)eh_1g6scOгP. ?2\H!42۰PyU󳏒/DR(Su?Rs`閏j%N4uD 16q= 0ooq$K66?pxϮ0?^[ 8nq rB>7ၥ<}DŽ5XH$?)V T-wy  XZ(n@ .o;Uȼzr8ШR[Uhq][s){5Prʣ+y:.vI6e.UMZ[íY;ز{I!gJl p$7F3;ŧb_IeVCv? _B}7Wy臬 ' .%yG+ѩyŠmt3T8FhnQAI2>|)Z$Bź}V_IV~OP@Zt\#-<4)Ų8oC5g)Ỉ+SnBu04tc1='Cu~IZ1:Ũo"Lj:f~*Q+ 8!n>wƓ02_rV0Io~F|]NM1f5gH|&wiVz^{Y4$,~@wgi _nB!N;mj<7V\~_hAܼض澞F*@}S.b3ĐXbP'ȥW6><1y6ؕAdDuao_I8U>G+՗\JH|BHi*GHZI.O.oj>u传f\Ozۿ^9~R19-|={=TYvva%H^,t"_2IԵ&J8^U*( \*<3tnyk O*i];;"] -QTW+YWfQ7"WN{I+s9EYW WO2hƹUMZJ7%YRs̸0J]-I 4ҩjpE?h 1 x'* hJ}˪0Ϝƺo\kP7?fiZhtINw\@jCkWC$0)pr.~b]z YUi5X͚ /ÔgFaY5vgNnN1豊)\5fU1I-UwThp-H/Ȉټ%1؉Uf604^v+ JMÅj[ GW(Ĕ.Y>3m)Vi9c`A< i|d'X={56Jq N8 $U f1O3t\*)p!!dN ZamxP bvt<Ł@'x!pm_+nCALq穛+!O }'RKbyte2طp)k*G-{*e*z%rjy]ȅa˒Oj(= =/0OՀtDcvX}$5 诙ڿQߩ_wG{ĄQyIw^tTo@\&hBxBSۂAjO)3#V)W PdE=Cq5+E›\FJ;EN*F׶ĈHY/q4(i%am/vkas$gmXj˙8:y&h3I2OlҿY*~#idc+lhmhV0l iu{nTRwK,w9޸eEf.}A\Ds,n/5a(5k$9(=>[D:ٖ/߭rG$ !INpv0J@r':D*h_VT0Ne'r(r%AIc2@6zpG;kVEL]m;uRiQ(-Mj]Eנ HJ.@v`N\jYLjg@znF`M' WLRc ERJPQ%+ɀ/=?=QBN d Rf:QkmM zuǹHXJ&@T4ΆtjENQev$!Vڔ& QT O[\?!`'9٤89>o4VqBI"eaE[H*qB8l?;89=4)! @=<9(") ֋lթ7Dԥ~cqRZxes|ls/Bk!.xOa15QqV$IFd o='^I!4ˤ` fr<1(\. Fb_d4<&n{\(҄m$:#. (.wк7b؏v۹ö͋*)$vS,\`YBT, zc#Bw"Q_+׋#`Gr=|3dj 3VzԲw*GNCK, BEAca։*n=$떷kx -3g56;Ue a<4L ׬f0{"dl/q`!eF暇H7{46YmӃƻvE*H~K] pW28gFA{_}%ԎbQ-[8<L`Xs"\L N?C<jjOlE-+C uX{?_Z\8Ns=ov$ԊoU.n$-TUXe>IK^%qUJ(˯["Hm]GJ5USGevo>nE_gb(k@Ɓ-{_y<(ć=<1i.Wm("GtPgeu Mץv `e=SF/a`PO^Aa>7X7;`xLIws-?꿉d\OF1tHeKkƪNU{z;-a:jVg(垃q\w[-(P!K6ul^ o5즃!' @M-; ܇f̴)-sKo!JH.f69Ž)P~ތ'оѶPK 33ʉ6 ndbhM8= \n0V33U޲)KM-djU."%5% )h:6e(|7!3DTe*vʑoSami|  R6pO4q&h?DT"Hu;\>,ga*2^&I!46m~NO j:FmbËPL+tЧ=|'Vu@ JAۛ- eJr'vM55:S >șhM 0 \C?mGdg3 Xڸ$,?5~s~ɚRp_'b]h 6#AʝO).Jŭ#jή7Ž2 Ji,}*ۉ{VY@Av;\qTJYPI gVw&DѬ&EFR`̩֠YH&[L :CAi"wWgR!p[[:6o%<8 :GϠ$YJkQh6=8a^}\? "3%ȝi BU%E 4M-)Gy,c }dܝE%QGǃyxq^8ΫM."nM*nZ86%YG'j&n 8Tx FM OipE|ײz`S:"!۵vb9r["RyRS6 ^"VZ8K[7_r'9=p)Qn~*Mx׫ʀ0Vu Ofn Ķ~yuI'#,Y:DIf\ sCMv&hd9-9ֻt[, ϷԪ|=5ƒHF/idi;{(xrYIMk5[fa0|O3ƂZ]9á6-|_.s^_; +t N̄8 ] gz۳v`=OZ%*WU ўs:g&^~S+m^WZ,pGDU`ޮ`"o&4{ou~O(LsE-_?.mx U9"T Y?tXSFD8caVCmBۚݦcWńy)|W He܇Wˋ66~F=X=7Gpͻ/6ZioCP-Pjh5\}Sy垙q޸7fof! Ft*Fy$?ap`mpnv=.0Kx(U;$d]nM)fkLEbc/ M $v)6 Aucl]PiֿaǦe7ß $e{1"z=sձ9mqd,R g7U1-5j G{,ZD܊x{":(ED8'X/8BTi\;[m|QOR4ﱲ\EF5(V8%!!y߉1f3}Ƚ!4ӭo6ص/{B\$V+`r0 ?@fUA I'Թz=xaxXH/Ife20|~`1u^.{.xt"t.~}ƐRujj;_/'Fd Uz0H;UPaNsjStH)c?ӣTӜ"~(XmS"ؐe?䎏c&D*TBt\4)- 0e}TZ#m{zY!=BgWY۞Ó\qC*ʭI<^jQQv+Qehp8 'B>j:d_a#sȍL!=J v,+u 'q]R= 1S&@ewE hpȓYJW*3ҍH:3d3V2|`-2U$;"fFEittÆo@F-հ[yTU٧Un۞Ǯ/B́P;&77?3zNv/"Jr1xhe$L0vLySxpbb9f;`uoݺRtϩ'<ݐ|;{QO6YD92_hEe+A8oυHΡqHۍb(_>ä%!y(e /` Āx0PMNEYEmӦP%'nWcG}NǖgwX)aUB~̴_[ori(l+9ٱBUE ra =O oaά{mG! k Eg ⸴kqnHE#D(^<;pq?Oаa rpz֔RYL] 2~ru'?K ].bHď?=(pvx^5-9uh`rz C&M$?b@]U %݋i1I>3E{2NK_m80j0Ef38l-K4Jw @iHqY>Lep,l- ~euy RZyL]~R;ܠ:!i<b/__cwFF<$V?O\j3B֦֎+ dX(^&[Te ;֨ ȁ!o] FJkA?-R0jיVK(j1Wq_CA&:;n~BMnw20|ɑ1 3w_v~\Tg~/Z=<'wn%#;&.f(#HN9F LQȻK<[c/B).U:D˝-8whAdGI9n>mx?ny g)R4høʯ L9w29Z݂ް5*)Pz|}FA&-ٕNGȮoM)m6T[4Il7$1.)P9dQ2.!(e;tWvvF:l$Z >CI?Ԁ܌;o!UY]P@wEva(WP"iߊ#*Ҏ )FFܩt#|B? {{ϭTZQ,Ŕ#ړZ c~MDT WO?m1u-[0X'+ɂ8Ld BUV{xNxE0K/C'D!JujdHK^>Zy,ov$~*P=("Mz$mfPCAIi>Sx-ư2[>ɍ8DIP嶆/I[ c-94Iwݍ4iosC \K1 umLթ' ((=H* &4B!2*OګZJU:{6QG%tY|\^_Rq)'s'9tuE5ī#iA;L}YYue4g lkM3NR 8T!}簙9DV_#+EuQTf Tbpq?ʗ3#;^]0/V$Ƣ[z+XH-99ύJnaiq8[TC< B#*1)<DpZ tqM͓[7\Jcf/c<n/R2 )Í*:ډdݳ΅т1$D",e-vq}%6[y`NtDX]<%468Yɀ!HB<&[hE̍Kg]ErqFr#;!mN7^~?.S˜K8(sc$µY#3(WBXJ]lZp+qp]EŽ#WwƖt»@Loj+O9OԲxS hVnu.sE=\}fP0=ޓ MfFf;mi7wʊ€& hu4hEw h!,Aw4g:;6ZDGQgQs-`\c ?֪gSa m@)i¶ +"޸.>%р9)EvV&q-Jl?Z_2PGdpoUI+y@34.P8.nK2,*Z?%STUus,*-fƈ!b'HNUzL_2]]!rFσ_?R"Ӷ>'^+Mr*qC'[y_&I";f QefJnYIuS>D{ $w!Y =׎,~h}G>$+&+ٶRq;Z wgghpMGE4ГuS)2]{LW0 {yBw?ʻs8XMxP|^.Pَtk:6U:0C1ak Z:VУ^ӆ6Y2F$;]@>Em'AI$8odL<<1c@DyG?.@uv>"ԛsNd ] .`nU,](d]dnJu4VE^;a%g?|7#^ Jъ̯!B:"QTb;-:sÒ)»7L;trwۛå0|~ {[s?RC$' 9x(N3J1;#VXch~6y.y ![!Egћh !$!A x~i4:oP0;FYaLƮ,ɇX/v>$5#kyQclPFnZ_4~ "J)#1 P?[9wAw^ns!g\1XRC҄FZzV\# ь7%HNj:JxV&V;/'yDkz]u8 ٳě)fZBG11&4fa!;0ySD>30i`?W=q@z[~âuȕe2Ȥq5yʼ *FCeVrݷ":ZN,ɏւ`Ectf.mb->=q|;fqrY*x2Ճ‚G.E>J.K`kkJwM!ٓWw3X"r+{/sMATyEdI;Dx1MM ]&;}FAetHwQq@0,[3h%nOdJ1pbJ$uưU8Ӄ)s^3`˒L+>Oڽ+:+1MP0_/ȖoJ"PgՒ9^68t`I:pa.|up9(3p) !S+FH䀶~OL ǵ O;6۔XH+7cRLmjPa*`kU`b,+9U{Xal'B}\S>W gHL;w%/VFuniZ%8:H%?b|3ɀZ!"V, qX(8 yp}+t !Ji4$1O!w0Ohwo(zW]qNZ˪ncDq}t3Hr^!_^I=m.쾢8 †R*G~ ⴢUd`K{%i2ޞ!M75ɺL^X0j'> ܙR|5?|D@;|~7%-0=WDTjWu >G|M{bҬ|j/XRF"$1@Oj~u̚I/[j۲>&8"R}ZsHN}3gz a%sE7sjr'J5o#x/B{¾s)vhM״U>u 낰?ǏkXkt$>#ho#oCK\HeW=dNǿ(? ;2\k)2\yf5?є9{ "N NO}NB(RMXSK] hB2!̈ fdk# 4JmV9asSWM=|I~md=2^RǢpr1qQ/юEЏ:!7 t m^J=KAn^w>H_Ӈ&e-.$)8mdaHV<ͮ^`ѷ v' Q,fBb=Av) /ʖ4@Y2|e(1qx=/ʖ&%8@bQ]R/kߨ-e,Yi)| DϭXlu Bqk{! D(n(դ_?pTohPMR*&f'?_0o3`\NF*7x bq^?"6lX˻@dwSհ& 6 [#^u(ssR;T" 5Lէ͸k1GݔsZ; (kBBsANr DS,۶slT9_Wy(;ˍ "I3mًXE4&z@~EӤZF/ȫg(S)q_ eB-ׁ/3ćN .'j"Բ;<5oxC|aqm}rVv 1<5M齷~]pF$TPG뉿 [*z-ɶ$gԦ_(6ppAzY8bC_T,[Ϙ ڜx)ʠhZt`B5RݖAA4*}w5jX̅&la^>XkBWPU=66sڗ^eada{6fl!Ș쩭K4mԞC-ԫwJcs% ;& 5:qu bu8Ng`B(VͭYxƞ) m37 h2b#%`"-eq|؞NJ>T_EWňbqL IЙw@Ke^Ŏ#Pe|zll0eB *ܼ]9'T֗E'XTޢų4W$,ZsyU*y|!Mj:TsW @[OW-~S~c`Zy_akN>Np'ˀ7ʱCj|PDQQ [=8L_NJQ[eV@:Dw-Dkn`A^g_JEK"Pd|9x^L ܭCTK}3#fz ҽ"ۻMgisU=.5XU?pc#TXXXNެ+O_.0Z`7v>0UT7ZzjS<a="ص9>xVxF=m4+\|?_+FLZm܎H0[w&skĻf@E%U>7ɍ.#'N;2bYvA_"ךiMkm}랅Z%1m*PUEd@"&L (low z#zAp uۍM2)B&LX'L7 |R̵Z4+}njڲr$^ hZ07_‡,UNQ."bYH)1܊ <}L.(+cTʬҩUF+I#u] l[CB~*ζ6$MNsNW|wi472(-3 ~8 !>Qm:F0 8|,dXn5Or :dY/ͮtʈ]/u8 3 f)x$3mBvf:ppM8m0(F+JntJ \z\f UZ$: xvpR%Jd.PFcMVDBET$}ʉ A#\ݟ"vA1@ZD"4[իz n ]pykZ`Wr(n?.0xҏ^WR' ?0ʢ#F*_i!~N0X>iYB^Wf܁**6@AN8K2ԊxNpozʈa0ոYE<sߔ.6^i4 F =&[1Ϗ("u|%fYCnāJt L #Ӫ'pEu]6Ŧ5>0f̎fk1U-; -Z휵I)-9cѣ8I& Cxjm~^HYV7KOKe2𜑥\ُzs{Fעȝ_/r~v!aq=vMN[ٟ'2Ʋ]^=gy?\_67u.F4/A uh\ZpE3g9⮖ c %\]}0 =8ʧ[J?hh hnxh ^ ]oV< Mيn%m!Ǐ!b7䑅(r]!lՆQ[=bo~]$I\I5ީ i?y@K^2Q$3 .g,+AHz)?bUoghxb mGْA)12g%{?vm=cHٷSUkժM+RGQl( '@T9My)RZ^KEGfYݻ |_!z+_J?#[^Cp }{@3KZ]j]PRLPu&dS}mذ)n@ :Kw:|S#[ltq|_Py25&?%D1zi{klu=^=rM漵;)ku< ^鼖YtfhE#>f AWHx=2|i>o6X37߫Y&DRnbi9}‘\c.m$.T}ү l"얆|3T-~z$A Z65`(:A;z|"@6ruG(r3A|$XȌiSmbׯo6ѰUjLK"hm k~ ǒ809I-־k#9=T[#+ ׈ޢٌW(|h|OJq%kcOCCM^+ZaMy_jK'4r}#+l:'#0nn$|=h{txCl*.EeԍyO-ScZw4!! %olpaG_Ub%zJ9]%D{ tWry#` w+|.*<('2i Tc2CHFD浻3DC1$R%4MyިQ[om',"S*rg#҄O\Pw[! ]ݓ$71ӷ>HJ«FutYHZγVl{Bx]n>Н 7r&YDD11ŏcS*K P4xE3 4H .Gx#Df&ag'xnx;+2etlIC*0qU,D/NbH;S_rOt@ngܠ9#αϙޢdwK>GaH))H&@)SB|PT {,|O`dE[o'?55 Su#̹*1HA#FǏ`VSUҚIpi2ghcx3 6?friN?N0&OAF {Wsޅ UGt~yǧe!D$:Kr 1*%lNG h٧M^gn#s E`L NTC-(&\s7ί4y(=33'iuwMߜOs4]G=نA2&$bl+F 4aj(+M=;%mS&wN2 !TRuݲ$2%*).,,/\zX ^BlQڨYpc?+1HlBdG?Yv-9>3EѠ?(^X/hY{̘1^=+3Ng8A)hd@#(Yv3L~4 J6?fY t|{d,- 349v%n,u:hW-3_ @EuΧ3"H_(hI#ަ6e A:4\bzcw1B)q},xɰ"m6 rދ\D"lVd|?#hMh/70iD׹3x/oWE LbS{"J#; $|/G`]M$["=λ-#soK䮲/c:*ulkPެ~KS6d2Ւhѓ`n$kS1 ʃ %rfgS>w'GA+xQ5Ѷ2d7K%ljÁvʑ>Ei7oGPĭNH Y!A#)퟇%8H8TE0hi7^$uiuoF!OGj%<4 E3wz`:xmMSehi\ ]`MӽP'Bw"L֑5\Ksty6g:)hMiEYx,AMARY m/_dG'xoi\G&#y1o˞bj2h *Ay3x iiTpW2TBRv I[P0dr Z.M1ƩQ{Sٜ{";eMpDȨ+WU-)>YsC-epM[5[rGlPE8M+ w(?A K6 y!>- cQXctFHԊaMrDD2qw^_ NtgвjwV xgdi՘nǥ{wIY(p Gah#~V8;4Í=V[ m-yDR2/ww Z0}R=2 T ZsTziME8ihu(o~3WBJ_7̒ .r=y]vbMjy"b!rZ(UBGqS9}"Im-)B,+Q73=\:Uh h!0 #p.Vj'I"ԛ7ztlFْ,ڷ$ oOfVQG-Z*$ m ;;P,J@.K7r_}^t.\ xD4](ļz*Kk#CQIEWX2*,Gҟ2Q:†&}^wl:XrqA0,楬6D,uda+>%O?͵6GR 0Z,viZ],8h3hJ ˶lzv2~bt_<0Q'b η !X9\QEfW2=k6Q Uz{&b&1A_CG"2o}ha/KH a`&Y] 05M$y:z*侍anjTYTtd9@įvEh:hbwf] ^5M2y V)9vԴ@0[7u&&? m!wD?1?Mg]e4.`+-1XpQC(IJh 5ۋO]ynCG GQJ޹ FE%LKZEHNywJ[x}Lk=r7'dZLkgVl+O6ߤ(lA]rmބS[Zj4ÿϟY/FGOnj@Thk uc헆A}tbΰe\e9,vA^^a^-g4ad^!5I8q󦏉8JBW[l:"&J_b7I]} *#D$}_a'aK> |ou]caU0E-{/}.'"YqtnUT<-/g{zv]ȳ6]c!\4ܣ nF-²Ѿ%3AgtZ[ߏs=2;(5NHoNJ۩C7l$Y-nwtS?|RtT?3ҕ.4:6NQn1ZNayoDHN-dDzLpA$$̇W'^angF=flMw8i$-AXduQbra_[yߡn~?gP=(hCU\?0ۿ.Cզ5؝ltqN[5՟7nplZWqQPXc62P&¢_AS6 e 2.%}1Bdq0qe(sN ƪ38q2_juT.FkpDMa-uJ~*myޭqO7:dÃ2L,t͟0 甹sO t7pwQD/%'!ť±fۙDŽ+ ̐(k]sl`L9YpyEA..tg=qkk5!ILF!?Pjdl[hk3rɬ_7˞fhNi1M.,&7;<@O*9ߓW;Ւ*%d"ZX˄2R6R-Fj 3h|h$[* ]a&ݻ*eM?Dt0TsruwHF\l-tB'XR&A ԧ" AYTrѱN?<."zUG%+Oᩑz6{qi^h2%Ir3Ϣ͌9ܫ-AA)s&0VRk~'6~d >?|G)Ӟ lF=M1βqw92sSbpK'gR&] &Ya=b=D5+(ZI_Fu. PGuF|oT  3̸m^ cyFhzZ{m.I򇍼kﮜ&dc>uSf[Zюuz + TQp/{>NW#w7B7o7ϛ8OZcmބ7S?lAqz; 6^?>`k=~.WCkf=?{`G{!ƊRG;2P:DŽ@pAi} e*NU|;g}]yzEL]N?dJ}Iol@d8)i$ Y_tKuv TgU3|yxV"m߹nG'BBKȈG}o+%w:a>,mkc`$a}ѽpDr?4 + ܟ8m깈jv0GsE[aG px|%b*9U'0kH7"oXQi0T$ d41%e7tQ3d^(k8f?]7r m?AnNkA%} ]_1 X]pd r'~1Ըvҗ уE88qVY`%Ɖ \t WNwdkZi~Lzb3q~n$tK1%ۣΪT:A%EJGú yS"Iȏk.:KMҥr_ qá$_ӓbv Lޮ8Q6{"'hSG>Lj/;hO4|ӫd 6 D}F340bdBog)E؄ ֗HO>d\8v b|w@l߶dUjfh)H%5UY婇Up`8O_-rxgsR% s#)x=|ڜhDtTX%˲N 9+gѿ`gFN+uV* 7>V'ž`cd8)RHNU+d ]t@Z#5ZxϏX&pbùMqV? np)n X}~S6rRe"eA4+0VGr- dJXr[ NתYtQh2{Ҩ̮~tcE)[u7]Iq _ Kp֜b]CN<[M?3dQÅz VP2Įe&S7*i^Vz`g,rX٭,I'Dtx#Ks*Cn5(8Nh*ƒ}u,n1m/g0 lAkugbT{E Gd76 ѹPPa4^A͐DQ"VoDN}}Óe"Aʵ_piϫ 7ۀa+z%9ѭW!F̵?g!x>fjE'@׷g^ts`"'ɢFYD̏pCj%2n܂寎.j3VGmuO0A;-1 Gc{羃%#`e}3K,lӕ.&*S `m4mɔ&3H.SZ[5z6bHA]cK6F`Sʧtu<^gQO bamޱDA7 v;f0C)'E` 5DBi05G-R͒a(dL,֜M0!³!|vq~dHC3]2)Q-?K0&A ^t3i>sM/C,wG9Esz.g<ye~Ls(e["+??4(l%5Z춯<$nZ 9~SL>\0SYY0hI ^HFZp-UiW)л洦"fkA ']<2) |7ڈ D. 3|hMPjdE T7@k +W[<'=_xgCkc%bZY)g`<^p`;t"xC2Y;W<3GSg_o~6BFiƣbU C!Z=q)ADJ¬4De)W{۷iD'UFoiG͌,_^%,jAx=2$2PC_=; عIuibjFNHe?>BL=q憖IvАy<:8uR .'KW-P=i%oH;eGr 1eH~ ;fwW VVC lOni.Ow9(Oe5@1(P DٔtsvʍpdVώgRwnKIj9l"YҰ!dBщI>4Uչ,O%$6AH@CRa;|M0)c#结bۗp͐zeϵAd$yvܫBc\A'י/_kUhT#ɀ[&,/=IpV4:Gp*MX+Нu$/fWWtw=raw$(4Y{=YGĞaElPXY3`S;E+KO27ZVbV tH(PY^x8qye q|pI4QuqrcpŠUxA_k&U..f0_PrH:x*G ާEހ1@սʮ$_nEҔVPRqCI h>r*x J}HcVわߐ<+t;T>w>\v/dŤGp*l͊—!n/A[%lN]$=D`[󩪒6֡DC 3*,|V0*(H_G'yE=ÕERmV7Z̸܁ 2 ݚ&0SZΊegEf$Gs_ð~\wqIiBOlS|"(Qe7[$ W@ TqU~oA0 E'gNafpj~}`*(gɲh_y؋`כOa']QrIv{~v$R#oT<%cH5'xA[ g=3 ibkqP8-zy]K^yGU"HkgVj"*oڛ}DAEӧٲIdJ@@yуdX%ȧN`!X:nC6"߅\Li/Mb&|d̸©xy5۞W. #sT|e!viyJ a;J:{`V=)"=@y j3 ZfrDuܮ8u$ُ;- PR5 X4Z^?sZ!)bz$G1J=H!Uo<Ty*}Ipq4%llEGex/XV6۔vĤ1Sĭf$AM[6[9;~-B<)[W-@^Dnz'}G[]ƚ#AفcM˜c[anmHLgqpi?y!*5P`lfk"+9e-&f+KmR8Ob )UZi]O2#4aM1¤VAP$ӣj i2Er'5r,FH͠J "xU[n@Cg#׺5" %x-ݚ-XPkC8w :dKhA% fzb8m6e7,BO[ wJ6ƭ1tͲpG8^ԋXD"| 蟴@t zdG-!OߋS@ Ї'M- Ⰻ׻B8pIJPfmPR5n0]+@`3:-TG杗xԏxrH qƝbm!6wUg4Bm.Ozq85O6qM>A$A6I~b2D{E,*ɺ7L#hܨTU咓Zzk :u p{a snEYV|mnҗ bkF]rKQ=-qa@ E%]@63x盅1gVWL-%d)lh7ZqlQ($K;Aa.h3$'QWwCI-¾[M 5JJ cvSXIa?yO>v.KXG9hv"pPu%[mj!t*H~0l`~\1Ȯĺz@/7XlS(Mu?zhL\.d0ck3\oi:3Gmh#]yV6mrHt2TV\g`*@{>EdVBQrHy[(DJQ«!{M7T CoPy2t+d`F7S=4\Y7IISe "<@~D -=Q)ܔb~m]8J_"i.98=987ƒ4ob_*d►][AF_CrWY[O*Viԍvhi!N8]bL0>2ۥo)`EEƏwLFF1pe-֫m3xQ{dbЊ?NC=.UG5T`Fg$\ Ɏmwp>fxWg*VⰔ'r BK |V4& ;<ٍV)jEa[2Ieo{춫ηPyNTGjiJみDI&Q*O6Ɵ'?M5$Ki*@yV:Q9CHIԋz]w=wYָ@]H c?LM>xMK}D񇡢6S˦GoM8uƼIQ%?3UOqptк#0P~@8nj3h 9 ƚWMvsQop]/Nl놺8 s h4f}|cwar7) A(z}'3tQBꕤ(qZ[2 (JlJdDa}y+݁w%4q@zMq |ӹ)lv 5$p8x O\oIx xjPY /#Qv~*ApÞ`,xK6y:%ds`&ASw?_ nciMD}u7vf;!D$2n !o\!67C .btZybmԉ uQcؼ켓v҇i(doى77-L[ajEKw"Ƈ4r^CdF ƹM!,LX>?][saDI#pC{;?)$e8ibB !y[?b'9U)H3AU"_4hn|ÊJ@XIX3#HB8"Pmzl03 D9 ]Q(R|Zg1CvuE0pcXpJ䫐wrSIE:i{4f/𝰺5r%V>v9oUJ͝ $nu:PgvFieJǔS鄘L}%U.!6 k̷Щ2Gm/6HkNFüݏOAVql~CʈYUSFwWP}coźptCg,3>,D* Aud"9 irr$7OT6% 9/6@͜ްЩԧ,PTU Qg@+8^!Yk~w`aZYp;13R%@;RlIaܼnzE@1YULsw^ڋ.UjrO$Y/9P#7^Rc 0No1m爸.h&%3)f{uχPS.`#iu`;S:5I\ RIŽr~1'L`<1e*~v+^*-`ϝa VOB螱VE<>̯h|?"=f{_3Pǀ KQ`CźJKCZ{Ҹl̬ǠP1oVx815NQ1 `_SUqOs$Q6]+ɨ+jP:cԥU [f34NQw`&1{"9"nxEErݾ} PN;_"ݒs&N9%R :1am+L^JsT3p׶߱%՜,›[pNTluT9RBٷ?E;Z\@գθ)(6̅"S*b47uov$0:_P+X 4HX/O `TP'oc61t @rU7%ˉ-8XBV)̣C,FN fhJdE=ЖetgYը@!C%t64 +$4q!ɧo̭)LՏk]KB5(Յ ' JzAI)F[۠e]lIP/My|cىUI!|ʌwP~'8 QS+y13]{N[:(J}-ެog A₽\?AC֍ZAZ>y`8Nx9.i׾+@Iگ^blRIkk;><"!e9?%"ň?23Y^1Q8!56t3sZMHu0un3?>! *OBL<0붥M ,^GR@rPV1lCnDVDcDb^)ڈ%BM2^{F&m]Ļe&jsX I(E'oT;&6ӵ15dCVXdMm"qݶO\SmR#v"RoxrTSu| 3˹: m2O!Pһ; ~y!%d,Բc͈m`Ή,6:lYZ}y*d]1ׯEdo뗫isEꯖ1礸xK cs\To<'0C>ޣ`[[;b ]}(my,3&}RFҿ:t"EzV]!4<"2{}uZcG g~Pi*fd&H0VǻOg ~Ѡ 6>Q| VqnrAKIJSIc^_D9I3!t N w Id D+rɃ?jBA`wNzpoGgKm@b&HРoOz>RKL,@-r>x͆V奱?NZ WWp+|O@[C!CՐJUZNTr:3n-ڐRwTnUIAfJP6hLB  ,R 7s+[N`"D,fVv{ δQv)CyPU$wECb@9x)+00-ZaH-Zkh`GC9B3lWNEz"F%1ߐemKRՆWG&s잜I) K1tB~Ȝ16f]:U+x :98h}Vh{˩T>\*y#Z:PsfaĤRަXd9ZTG\+s<~}r[߬F G^dXS $ļ _ʬpFy^q"+GĽۗ^'*I N[ EOo!ӟ5zn)ކp+`+`e ꍱVzPaF}iY}*bk#.xpJ Mbj0+HBd,s-zK"QH!A>`]ϒS8u-XNQ~}  NR{OH8kN&|}MM/qڱx|!E'Smڗp?N+-rFg9Fd 4]etpoLϡŠɭɋϊE)dITmրR3Ul^`Y\Y*ןN-MWݘQCbAxv`,-qpj}&Lq|.I쇋$FB!nOckakp=;SGiSDz1u0 K?5EjO3[m"ōZB `uRb<8¨skv0¤J-gO ⢀\Pa*l +2䷍&Њ1 A&"KU&XOS7u6-@c٨"Is9̍܇y vSڈ Bg^vzDvISx&j_Fd 8&B|qJ7]Y?(Ԓ>?Q'6v .bV9|^3?i#౫i !ipTaD!kJr& RW[ D/VnGb˖6x˫[=<C"Hʃ ,m=7X",P([=UnC ru )O3b߹K_-QNK3fXİӜ)oJ N Fu0AK4U&+mSMi C 7ĺZRKGCdfP]Ar+kNGMP˫,BxF`%%i߰ᨣ|VH~6 ƨJ1IZ>w6R^E8$7t\B)$ȅQP՝b$:o">51&eb*K%4YY+;xXxOKgv ҼRQld[\m҂X2H0uQ 4ͬ4ύI9MQ z-ROu)KM}95(Vp[U>>] Wdj 4<ٵLi3Dgߩ;Lw|@RfK( " $wQ2j ȳ?GsW=fT=?`lTE˝7q "oI"~j oAqNvQՅ0 'c7%pC Fn9pPz Q^q |5@_`{ 8=U 'FDmjcWՁ6̘)ZQ7kYQlS 2. 5~&YaA4)u1 0P)~|5!lx J*Аss(a`^{@|Rgߞ!ռfnGK%K ϓ4raM6ĐihXA~<)P_]!ሧOŤ@݊!kٕk3;frȴvuZ m@sle 'DZVQ\QHȫfFsS?*?yp۝Oq̅>ᶶW>]7Aq *XHhfWC# L)=ǜxzH~r,]>6rr©f-;̂{$z+˰;T;_E,xxv_j79@F-=*'8/x M8@Z㌖OJfgX*^φ[;zֿFPxhpM?I>י!ޭB?h0")-jW~s\+DoAء#ugJՍndU-9ݹ}7>z/6=g|)cL_0;};v`)׏t6Hf! PE^Y6 wJʄ|pqy[} Զ2)Ts3v{`<እj~([[O9S8B&+$06Lx"*cN>y*yʷZ(Im6}(G's9Qa܏l,* u9$AI*UmtS8ny)8rw[~ bK$c[_͟bIG񉠮ͽIs뷭K=t8vQC^IZ}iͺ|Ek(]m&?kR!AGR%ZXU(ACق$\J5HY^dH17J:`o}KP)襮i|89*h:o،O2b\(Obi$baW*U,IԑQE&գyNC[q ϒ /tBt>G5Wu6SlfopCH6ҟsյ-I9}]8eg! m_%2Oâ(2I^AӋor58&i3rHo^g K-nJ"<%Ʀ~OY4tea+ ȻÈE+H-9Wk3eXAd2 5v_$n1duj<}^њs^k?K1I%blܪδGgd>ZU; HŔ'. ^wޅ=۾ >nDs@J1#z6$A jm$wr36:q2,)Xy0BDЙ9@w4$*Yz%#ÕNcԚX|v{A Y`$VtP5L2kd#'3O8S<-.!Ho/sr[vZ|& C1OOl!jJeQ)wQk}.H5c3] XuWVUEo6:I@pH9 ,ؿ7Ū \8z珣n%M-^:(aq/jHV/AGJ[ a  bf2kzMKx58$k{1a4 A}}`nڞ ց Y<tvAtݧRhڻbI7ׯ!H "/F[dwhcVuS^;_OZ*b(4*c*!xW$XVʔ8Ac!2jG2 yUEd~P|jxyZfqw҃Ѱ?)/Y.#5RRZvujD5MJckD2Mgӿ\DEgr0+sI+WZXЇJ2O.E zH $u# ~*v ljPDZYOՎ#w e^P3MR4ozZL!)S<2M_KOpva2Rg7ͬi{'8 L!v^ mjm`ωM_#o$kLm I^ѝ+-U26D|.Gg7;;>>ތjnss`PP3Y`L?-#$#„: l1PedF;8N}<ќb\*Hl(11Avɡ)myXhf\49lg%G3$,WD^ 0O'Mx Bꢐ8ovZ8ZuBn5ƾj6aS&fh:([cU=(LmUxsYiٴC?1saIBPC8s6p~_'agFӼg+v!xY %9 9! nJ4e x?*yޤlLR;*v+7f'g $NcMuA+(A[-xK&0n^E[`Ո[lܱ ̽ch7~ꙔQim)bwLhܨ}9xցA[@PRA8%0z0p{KHiweLeŖbXt]H"efP9 ??p9-> ISA6(~ZBrl4Z#:{aJ(UD~el5p-6VݗN sБIB ט\˳ {vTNI>X2\)6=&QB!HwDwS}0\v*icejֿU&.H$E\Bc[цM 9zƸth`uD̞rL޷Iv,o>p#`up@ šB'C9n\Rr-ifDlb#Џ [|찯̷xGA~oT[B klKAq>O]ҏ6VJx,ώd{뙺x=63(ʉ9Ѽlte`r!u@iSJz=Н膾?qo!ϻl~\yԦVacɬ/Of@s,N^v-6d-nz i*s JllHJ#fҌOͶ1ǃNk)c@I)e큔C @b"ܗ u6#xkGQ%"G-6󶈒ãkTrrqL扻(@0ǛT[*+O$,Xyhc[(3됬v"ҌANM v+]PV7nD0]Wcm_Ċ+filK$gd'!ٗ-zOnHV1c #O߽+rhoa̍k3ifT.28K*3ŇS@ jg|hnˇmgv;ŹmPny-qWuXp6  4*ja C!KBYUZ % ߏ]^%v!x*Q!>MK0]A rv9ŏҭaPU> iI3/U_G xOB0*_Hk)V4IJW~jzdN.m΢(#C90YWW8@:ࢦ:eGYGMvMD`&Lc,p] +46B$H! 'q(,AZH8Kxf zfʖw,!@>oS,Y|HЧ\pPc_oailnV**_p3w?5Y 5|[TtXfe9rgM#E% āW-! `WE/Z&o;l⑞Ҵ^2o3lpceppDmkO*[*oo[ٽnCpZ6V'6#B#pM֊4t :E&>~cZ"q+3gaoEKIK7 N$T[:y tn,E{;\r9G[;tgqy-[?5͜oV*R ^/K@H8>FB3SPS(|׎?)`~@gAG D9 Qa*fm*%|GI>i[Z֪,XH4]eTܟy=^A쯝M ]%zui&ޒ(Oȗ` J: k8"Ln19r(p~*$K؋*1v۱Ďy8vߜY_rOv,|tg%+ն*@ 1 Lg_Y%xON|UöȂ[k\A-.7f@Q.Ǝڀ'(9{wWtDjQ9jm-[oV,a:\Px9[ >4q[HnY$ 05%%m ?1`8(IFD>t@UgH1EuQ$t%x~]J᡿w |`P~QX9#BMSMN~EEwERá=00z `d'Q=Iqڅ]<ѠM;5\C]vt?mڄYf#%mwDٓT˅Oxkn_ `5XbdxC_^6jd'|&,-$ R-ALdd&_vwD&S^!VK|/ Y蛁D(,!:B`_`iʟqݥ~yӝP@6N LsMb^./0:lvwqQц?7UR 0]zEa@H?\t3Qut jacVǖ^ʗG?k] ;qs1M̎Z87Hx֜t6gnRvd[-2z/ˠyXWcdMqAp$|vg͠Bm&pCv$<(sjwRV&pyd3CdESp[}MwFcb3 ';w?d=O3׿%`Ӑ`s\G5 ܖ$y$|{t"a9R1eßrHҸ_͈g Oc~WJ>4?7C |aX!=n#m sOut2`l >z#uato/?S\r8L~B3d3B6`2GNќ3y5oƴiƬEEPxXB pZWWvTR(9?#xgJ@!A 6l%A x2zo*vWb˽pͳ/;oʏ.yKEɅaK/{J5\8Gqb5|R2 >CLo[doe]S!$JihN^ ,Uƒa4ADe2|If]Cqg[ql1$gRf}v\mǡ\MaO1|ͯgt1>ZCaEAwBk#rJԻt=>@F~]6aZ QoZ_:QaEgm 5#i:3zɘ̺l\HSD)1}9Ҳ&͍}jvAl C_kJzMF+#)B{CC]8f'ΥX4-ѽ6J$;(MB;HzDcSfg~L0OMo@b~L+ >Lnf?/0JTǷ|9L}dH^KrDT!h:ٶ&']{\ĉ;w7+JUĠ#g0FuSvq0%;&6ꏿwq0Y-gx*\(b֪r0<~N綿oƬ-y-E̵6܍tqV_yu]-t-Guϲ"üEݯ/ b+GoS`iWɿ9X(RSoAX,f/[l_+0լ'@7aJJ^M6u`1\$8sxi/O (F=2~lFfn+E"%+&YhLY7*Oed,ea4n tS)<_O@jȖ_V|P^sȰãĂ*us+CR[*o{ajzd zd:J)N?M5Le<?{8MqPR-vi~hULU=UzQнJ2R/r'~Ɋh9W7迁CtD6bf;,$gV&3KC<ֽ\X:ɃoE;`8ОAGe 3BҎt 'T'.^W9E/߆UhkL #ώ|/s_Ӯ9pumW 8;70S ;{9_xm9.wJmf^G87>&?_.ޒn6~}XHL1} n|a }&ԫYt'gYΟaK94^xq1y@!M#'X0AIL}_\ MK)!UH8JtM L.~{nĀ0uғYL)'Xa0Xc8sLkC% .)Φdu>v7h?DcǒCȶaRϐae PxC\rG:c$99Nl߁}4NjEj$ rfۜ]&=e1Zk CrJۉ=Ydj;lFB*z70&ȍ!h(SmBnd4s(̏iK d|O ,8V'l` w G˓ЄB0*OG\LpEvwH*h3Lqqg}Mlu Q~$iƶ,o)Ⱦ;[4B$}2" _1F#T$>Zt$^&kLn*S$eemndIea3:wUy?.LF Hz{LW[#ח @dH0UJQkWZ@PdsB "P yWF`̓">2 U:1qB]q tO1.,u!m,}Sz_AN[qp@2'9ْB75r])T>&vnyu2ë/2XXg0'T!NFb 4cG| !(ze:jLDkmdC{jAJOjSAr3rDH[(l$EBKȬ?\h9,ʿ%L#j)_5v[U]Y"+k6sX|f׬kj;},nƎ9ɔr:="\G@WK;va4.T|eɰʌÚ )zJ$*䈥 ؇=TR`u_L)X8{6GpO*~YM >bv;6*䂨63 +9DT,_ NТ&h;&r55'e2E#vjv؊}0yQ&UA.z;Ƶm%>p$zGzYoc-;odRN##bcy.[{FB0m۾D)M=ѾUiG=ϭ$QA(d . I&H =eD(TYFvh'oOy5/9l-\Qm/ s WEMM~qMY;S !n/6]$(Be1+ͤ@CX$JGa6"6oi5j <3d+x p^UUq砀󒁻kuʥ6hH.Qem6`zHNs_dh24$aך@wȕŌa1$4 `Mּ $HH#S81t 07N*_BۛG+G~< rd_*@e.2kS:7H2Ď6{Ae;->/AR irm{.c"o)Z%RG}Gڡ9.f7-|OñIoڼ8(f5#ֲC|L)_VplCQh#a7J' 6+dȟ(#I#b tzGoЀWT O &J-Zi"ѧ{&k5i\$'AȦmMl5mᐳF,u|73w@Z ,L8_ E#&Es@?18i ab<{ɉ{oQeN 1]-]4nB/'2lT"qM簻mhJ&< ]eU²2DhD3|A )S?E`c ~HLhs0T|a9k[Ooup2%_~:G{N i}{Xӆb5h 64qa5&c vJ) Hk;ԚZ[5| ZyY߶z+ɚU[sXsL)_K\1j NHESɭݓL׽fUɬ>}4;kL57l(<}0;Jzǚ5b\﯆42SsIg㈕<)BPѥ具1/ļ$`" {^ie)#'fiWE29\0wO8QMU7\폹&7ۙ#DDS[mcBtJrxw]J1O%"GuWeu0UU;]]NBV ӢßQ9r ـO2)R9z~vEDɉh~n^'+4%LQԖsDmYM{XIݾV l+>DWD1vL|LŘf!Rp|xzķ%I?HKI6;"G:h9(eJ'j/!1;.; EVećɌy#0նb훾:buOP/v:B}NJGR7jW *^aDhTf6g~H?>ОL_sEH>H+L.SU鑊8I{"rU/y5_ИYHGL_^u!,t(BVtQyI~ ԃ%k 3PeؿKݏs\knߒNT-%mEpo@G -822xa7oݖq&iJn (߱ m=wA33vSLhs¾k? c8e])&ũrEC,/|ۡ#FjDGJDhiЧDZ_I_@؏EA>@ JY.Ȟ~(DbT|AVUe@Wt(Y[Tv.?0* Ր`!òNq/Y"VW/vTts2:Xq2?g>;9\擹URArNh "ti9F`!bF.}+ǑWl87 |.EBǺ.dLG*AK1t" CF&$%qe+6p^rKZ BܾqBS؏X60vsPl d1b[b,ڀJ"n) OZ4,*Z'-'G܊=$Wg#upk|DKw)9<`4ֻ:ou}om}eo0`Lc$m GX}pPG ᜗.3\dVJT!=d5U3(?PSQuAxee,N#v@?k)> Z>]|Q tЅ[8rGW%2yYa0e0>,L T38$)"7 p:F\t>d-9t%aiF=ļh+Afw`ma&7Z&Me82G W C|2GdHM#Nt@ZC&./7XHpEs <Aq תwl޿Jꨁ}:yydԽ}qT\~g2#R?Q?g+Polu'ۑD0e>ڄ)n^H!\Hp7R,l!*Oo~7.nBr9F T0]4R T 4*\80 ݇P>|Vƭ=o' _.MLS6f85G ӢsU96[F}un*Hn z\0d<ٷ/Ȟ/7/,B I} ((޲ l~w)}q51+=3dPpLV..e%\Wm{ @|$-fpk-^" N+|)|6I㯹nް1):lCdjgA^d h E3"veXޝA3E\#_љH#}3|V4&pݟ3NCvAdv!\O9sS iG`5JQS.PRO'\ML$mWOD^18즍?xlL=Fd1#u}D/YzX%];~P+ZB EmR:3>7zF9f76HB̛ZT#N8}wSBN|n4 2>!_$?04]@"˹gɍJXP>B*WԬ41l } +cA_~| zi}Ї8mb9;RZ%K!/|H=:͛ZOY0/6ܰA''NAm錠+Po&\))c}ډ3LTVN嫹/?8b5Vzu\$ z^ށX:x™;\ZJz\͸Rh",Tt$88兰 ps tFJ,L'P/,WgE-WE3%^dy@*fZMRK|VP>E$v32bqP ,T{RDNF`gk;"[0!{/,1>mt,9(.O+#lJb81}LE%}P%W隚uF^%Vړ߳@$d!Z67>*ш~0GS`rUfnQL2n(rD}ܣaSuHчpA_(h{3;;;zϣai.ejں b9Lvv$4ԡ(7*.BnF`\4ZUA{ս/WHEs9$yDKx$plC* i2:. òEnEt['x!ϯjch ,rtJhLCic+hЗs5C*֥2$Q9W D"y<Nz~7mdվrr}_"){1@eYgIIFM'7h|S_Dt~8_P}0=?JKRG[I"ZG| gz72\zWQ}!rUb= j&r~F)y.>۠HvUv&C">nx69U(QuZJt?g1Dg3C`s g z.i։deR~544xHcD{{D )HHJ8߿f=W)x9C"Y3MjӿJCo֭AEoOB-pGl dѐL)?4yg`6mD^-vUnhsE8mS#@r;E)O5<=IShwt> NNٖeZm;Y=)u(9 `]G[Du8}oXl],=qs55ջ3Bҹ3S(>,{G'f=c+486t 7z7#%wY$[ĭKl,7/08ZÛb#ZI])- ;Tx%݆B"Bi6q!I+gw r䔫}?OcjaRl.`@x2.mFFq_e%5rR7  5*2 hvldC\ЧX FzU+ 6N. aHF*HCwgӽn x;"wPwJ'R@$; '3~;`xJs2(a@΀nguiA6'oC7@%诛y<)[N]Cg0dBH)7V=oOUYqf`z !XluOwS_rd¹/<&f8em:[]6~x+ӍLvNcݦb0__旑eh(rTѫ﫹;϶d()>D q]3%G;NF>S>L:hڎpvu>t^Z3WDm'vTN JoV$J}19+_jsMT:HP>'?,C'\7.A$# y[O&Fl)TYR[y e&]Od:Z,j/+eb!SK,q{c5xPD[jQa 3h]m?+Iph_ 0" \sX}Ahpf _,BqǩbPS\?@]}DS+q|3  d;#JB`{E]1ϤxpZ@)nxELI;2_+,Lfr'#  @e`=?#GFe;)L÷-Qa?lh=qsۨ8bG=rg0EOzJde1kRMs)AY+QMjCƎzAL϶D*BϟJӚrނ!ft=-0TP:܈G)(첂Z-˫3jCÜ O-PFy+U,2]1/ݶm/7HfƗl]͇X;Is `==`SoG?n;rf'g-֗>H@#z1U!  ,UR2,i$7U}AE0*x[ \eoL|l` 0qC (dr3^4rhF֑B^^u'`l$;X#clsB-V) >Dfy"T%yd/ۯҍ?!J+V6W<[$Cyi -aBAZ0DpUzkFZ.l9~r42*Y|Ru?JK^PPyk.F&:ę?" &@%gK[^+g$0eMemՉm.V40 }4`57ڢllrozN D*3upUw7W^ u\9w?Adب|a01Rܴv:*Mx%fk݆)0/D~o(ko5#4 nG8SG: $X~ޅ-0>3R[iWVz\}> s8!M7=0M瀢뻬VCێY/y`*$anlg%>Jo.F3T.pEG {dnle!JBs%>yp&,ک1f8=69t>E UA񓁆'Q5+ į]9,ϖSzH&W2b;~P Ewi4q-A{:xA Ǡ,q"e$fyڶsF 7:ͶdX<ėy]ZGlktuDӉUKA|0U7+TOV-陟2@h^-c>~샻;}'ڬ5˧ty=w,[! e7;Je(Ry m^nR'اޜ{ؿ`{eW[[/2"wu!CdCe.\rh߃64Z잉/% osZDnROˁY~iz&"pc${xȧzu Q+fn^>I* pWg'i;ǔXhГ?$/Ƙ:W#}/ Ll?2waˠxN$ c .h-Qя;z|ڧц:(&ԋ0-eIYʐ̠`IDvA Uyo!x*7ʼ6=_˞Vcb;Y8 2ٿ_I]K{E^#zS^N7evM~!2 9!p@Հa/n"@RA^gϙ,h^ynl^x+ 8~+ژf:@}|tm:{,A%ESOD];4~_zְF+g>02s<+$:.]}JoVC 'Nq3,5ZQEs4u o~3~O?T0Ɩ?UJ %kB0n!㪢ip=VT}e"ҘV#>FyWVx軩@ UoX %eVk i)Ή|qX\Zo Ӊz y-\'}~?F.TBP\0!(eKrV_zw= D}5J%<'|AK|A~Ņ#[gG(s[V,/Tdҭ:Eo ,޵VE J]i}Wf0x5l?iFK} <2_&JK-R4I{IGeo2q RlyĪ8*iښk]-?\^O`2aYQJ%DCa$A])x9'ܑw+{ukKqGytxg.*)f.EP}3"(\=>BF+* CK()2XJfUhkuiImP$PZ.Td9WMۆD.)pVd "UVt|}d(ɛߘE=-.EK J̓5X Yp}kQjA3J Ȩ#vAwѽ,@61%ϭ*av-.Atam+ŞQn*=RT'FR2}75pC̓ҋa)_|"}(SY)~׋>؞_!S 76Rފ=9"1,1ްbfscXe S`LW8ʋG Nc,%<}٘WR8]soFzoXۓ'xIcqG5%uy8/(qeϩ>q;&vUrER#Ө+rCcDS3_[h1$|Tl!`"ڢ)i̫?IVPx//YN/o2f<%TQq^^ yjxPb4qm{K%:cy41cBo@>R5cWb-RǁA !6]o)ZFġ _ us dH\H>赻?%H\/Pz\|g3vcHb{)g((\(`6s aOE0j46'u8 O I_h%Ɓge4=C TRkcɛ+كʹIl6ToLԑ$d,c@9G |zo-5)l;_礿jyhtm~S;Y聊  B\7$Ż!5พb:&~g_hZOdcN*|ְ~@@`B;l^܁-1ڕOa /5U܁݀>n]ih#s%;g.8쫄fǃ xI0-;qYVa0y7v+qO.dž3ottf+n],VQ[M3Fjtǭ +`\'EݭX Ds9gS꺀SǦxٍb~v鞦|RL !w3AhU,<\-_PA'SPW}A$aUm=检 nf6 APV6TmԨfDQs?*SW2zxK `tqBxەQvX +&yl6N )2`*?ʮo<'"+dp TZ\׵\̈́OM? 3^In+M:x ΝcOXnHƼ1V]ІbH2zaB郐T]BeZ0F%ӅdNג|aE`o.L[ *pwLqMd_)|(Jg HgolK{cӧq|lU\s 0|׍ RÀm "USsW4)3|údF:qC)(1IWv%"!gSdCxk4xIX*7TM J ڕE+Iy!bxt(i$,JdIPtzi}1!EEhܫXH+t\f4wti> XI?7HvpoSHy}rӝ ]NLRzE#}J։aeb'|i[L /͉ !֝Q;"=*{uXK\GI?6P_pm7P9zK]D1,b9#U!D~+kY3Aw0$NS.#ӋCGFM<.D<%T)ܲAû) =XdV`vҨk.^EaksPuZ)'y>n0@Zه@  -6H֒A٧2h0G C[Es#Ȑܶ lp&(삌$?C\M'AK>bxxhSd8{Rx^ |ƓAz< 5>*Mρvӧ^>9wgc T X >Xw>2C8tGg :HnQ oop>gq7ӹ٭Ӵu~$t^nH ǸXg|OO F0GzKO+e,6p[[~&ڗ~2L[Ļʟ>5*8o5pї_ځ!h 4pH9&!yvbOBe%vt? ȩ8 T8Ĝ^+l:(h֔5١r/uo}bF{ԗj^.t+AH$f[f3p%W,7.vQM)zl9iVIlh;aOv~XA[tlLf4E̞c 5M\Bϛ]"*j>T2Hb9161h,]8'cL6p#HA+<]e[@ŷN_"ggpiDrKLt TdT 颔9z맱:@ꏾ4PuG#.jf7 jr3-4vً*y:ew1RoQFFdtVmxwVfC_Le=8Tsy^`JwfAWU>﷿O͘MNqQګ@6)M] FQZܵP\vNsqwrJ)Q8Mբ7\NQgZS;b4Ww: ʚD]>RὈQ#{ԲYcg-r_K\㎿^#I)"2QŚPu O^Vmҭw/1*\{M׃}] YaaS/FrLR{6J *!Mؚd[JY(ՅIk4AnYg. J4C4yޔӢ=oP -vL-Aշ+ctz]$׼’P1,eJ5NBZ=$eU0>9f4|?*7└iV5lG zy0%þ/8FRko=ZWlC+Ek v]tXn)mZ| PcKV5[(λvCx؉'(ie[+`h@ 8#lD%&hr20S?m^Y9elAIVJ6O S%`p)-q'Bwq z)o'aG _ju,_u4~NJ#w. Vv=rGz`C{B#w+sR}TW<+\`["kKmɟ\^aWԅQ3r;_(1pѻo 1ܦ#u;Ycs>-6@uі< +Twt8ҹB`4  *?Y_hLE'F ewm6UE':^o MϑvlZ%p쒰DQ5:EH[S'hzC94R-kˆ F/\WPdhOާ]Iv#rzcݚy>p=NߚA+-Dj.ʹz` --.2rpA糧,ij3= Wr3q&M6 ,d߭C{nˤQwX̊DxmUeC^t/[p27kУ^ʃ.DR F^ԁ_$ 4 j>,—\:VI=zDkBT5܃ƶ2&m;:6ŏ l9VѨ`{Mu6Z-?DbZ4dŵ= qKw"S~U2m |_!;Dx]wmF*Ȼ7[8R  $K! XNg9.ȨP8NDV9@zQ؞#|"Yom&W7bZL\ /bYT8u@R)ṁhhq)1NB)#z٠B5Y+KԏXM0U^Zw쏓_pI(z|Ӫ͗+~o(r?z9^ʩLfɍХ'|gCjKݺAFAD$"ϷwY >q :M>x(y#G q}ǁŻܚˏ,kӌB;RFjAm/c/juDyu'{HmM]](RO(D PRFen r绣/Ȼ_COA,\o "L v;  Ht.LQ9_2TG],w[|'6~dQA kΦ 2}y O7h&ķ\$MbtG*GB ܛRШwN Y^Fmq<}A4Y]=|+VmRl7ds|&PdP22,W7 nl#'C@*0m4@jٖb9LJsdSwH6(/5YsJM;-~ 2ȐI-`ۥDJm3qzh%jrKi;/C%7 C,ڀ;FRzǚ% 1ɑd zP`TIID7Bcu@jy9#q 7g} sݯ1:1B1Q ;Z p6SsWEIK`Q4}:aYjB)a10zx'$l;l4 r.8\R䯷$n{RuӣfsG092&SalDWo^w3`_#  o% v<(K,iDnl>p)p\.C3f&9 =-A 0_pyn,aQRdyS}&sګx8S҉  [/qe* 8 Pݸ0p>BO5lƒoeKZ\*ך釀 ? {E$R|!"w>!b0WiK>(SZ'D1押t6Rf;zuzyu_NLCC[!rN8yC"H Ր>V=W( xuRH*^QNӺ[yx2$0pZǧi-ٟMPnf%#nCi{C-5j"9`2y'^ӭ=, @Q/aaÑkWD \35ө ;;Cӗo# h6|ܸ ۠`Kv oOc?i6ӣ Яzܤjt-gɘWΜm #77OD_ب1SůAtD t?ۂIN48Y$ qN (vWnXǧ$ ֺQh]9,b{l~~djret'FY~3~":wr/P"#q@z+!d ăآoe+Yߖ^eNzys`Nr7~x7w%D7>!$O?P}(ScIV%'y,ϡlӉ^8.Q yP7}lu}u!ua/7 S'0..ǔYkd/=0o1=++bE[ Ol*5BJ8)xh_$8QIpˍ˲G,jH/n|0A,f]u׽ЫPՔZNZ$jDQPn}=W4rN!jynKIf're&kp%uw\KJڋ0=W4rݪfw)s5@@m N5OGc C2w3K=@R=.DQ!yH-bovs?uW"J8.9 ;׎8XKP1WᡌywoG fO fIm&u,ޗ!X#yLꦁDŽ~ |];QA V)ȏvn&bttNsIr<v`I4+aTrP]m2k_yG.dAˀ1skρ|y-ve,U„Eqǥһs}f0ͭ6vT!@ԁ >%jX4^2・m0_#fTfreBr0GpzJBSK$mj8<0HH1~sy{9<5('DGzoF[Xfj0mJww\N5xqDR?yzWbB"!8ierM"vU<|wת&L^&|o X2<\<0j2SJH/J z(6ƇYx _&n8u . Oypq߮Vrc]jyFو!K悧a*(Di*W)W`Rn ɦ7I>Zz-( hPt ^/ҦJÞwq J']MH D3Q]qL0J+gDNA_<ŝeE0u4Gaϒ> vird"H ]ɔ~[x7}jƑ} YLopCiqO&E>ԓ. LJT#U_~GYğs/+I}\0Ķ"NPU.7Hg$ou UIdwYfwy̍KWvkQ!FmCARuU7wMsɝǻGݥ^VO/;e_\$wSbPճ/l^[ZF4+l[Iﳳ4CB|xP !%Bq5b !Ao=\6:x`{gNgwe:=]@Kf;n{‰!ʍx{,8 %8=E{4矓mh`3USK$'S $s2,n4VVy%9趻fySR6 m.k-$^W4ȝk`#l+L4`i9('x ʝ܋CO?TŌ'ͱG\XMeud5L|VLٟsaǒ*ZICZy* \C]_-~֏5"}HN۲.3c+f.36fq3f>{{S5QTD'yƎ %?Ҏń/~arX6%Uq|sh |^-Ib fHFo2)I^)ޅ%콸gs.JĜ=獬)~>w:(G%~ꄍg*&0(%a0![eG3hHE`牎o6 PijMr+ ς>6>C9>-{uçyQ"o pn_E~XBy n?WH"p؜VKW;fs펬,:٫7R>M}NV{I}aUh#vfJgZ-@t C~N-B1SiGKz3(:q7 20?]ul/N*E2Zb\ ]l-,(aQ+G5F m;}aL fIf— Zk M_ˁcoWS$6WhFζRAe4ᅻ:&tAՅgM;NǑ3nE >6paE1RoнVϥKHo'?--S&[z@XrY!2Ѫ4;R:I G y%LV|D蔢A"'-V=K~b&`DYQ  ?E[l*ݵ(Åcɧ-"dûq;ρ)Cb;@i,Pfᦵy‘cO Wlo??qM^x~ z3mGW15~B`,r7>49D CKO_S_ЏĆ3oB2'?Gfܲ 0o u;yĆ݄40eqxHNW%;fƨo9Z/E"̿BkFNqR <FN^[#fufqD5:11Ds  w{~1޴d9*'ްXL!L "O:dP& Zd38 {lVdOx.B\]p C9z!ouwvWr@S`gg>bg%o%%H%x&ʎ6 r[_.;쨳Av#nRPEY-VlWfڅaE݂FѴAFvzaN Sx_N)J௡U ɏ$P@Ph.0؂矻Yp4ͦє?{#Dq{?#d(H*Td՟);\T53w~!7dhh:2̞NȒe/)N_ZAZ5R/)^X&9@VS7Hp IB-!V> Uh̷NZ,wpfzt{,E?b?Zfgc[y;b$_UIp8EY"z-/ 8`t0ꕀI?uE8ˈ=%I/KBwunM9qMSQcJyd\̋&~60[uDeu] itҺCպ$p}zkW`Q CLm=TB0ܡ!:[ ۱eLTw`,)Xط3păV;yvKSW-sF CXu0BN6Mr2t ЇDpX)+i' 9tPu\us 0vRv5Cp$F&*!+n_ɼ NBC۔gV" xtl@!M4߲#BL6/}9P6uE`ׅVrE)(Z  :N6 ^_Uznz;i4wt_ݷOQf^'fA!y`J =2(hxN !L ]TܫOMN u ;\9RG1檕gAΝ1WLS|3AKQ\ҡE6O_ ./\_Y zHkVMLp?rD!\J㘋_T^.r{dq;K="ّ*ڣN˧XwCUј]'Ns9 pkz5%redT x,Hɘ0o#ϵ7xOmsqNS+.iubgm2 BΫ wѕA<*wdf 3U|t.F}2"AL H m&c/mfBtwg=Т LwafrS,0^~8yj9򞄘^5B?H@h`uhOH݅l AX؎oiu6Eݓ60ŸXlP3sX,̞WjGFW}Em Oẋ2iк\_rH^ڥ`zFz[FչLd֛ϗndGҬ3[k5z11/ N Ԙ=C:|CS+m;5:ؠ~'eKrhC 3exo#L-YY&WtGa3\i\F-7$Xڞ{yn~ƚFhE#bSt ^5CNJ K[ ۟|-#M+}(G*?,˱BLUh(^R1uvQPY qr\j; s ؑwg20̙iRş+ ^OCLcg6**N<9#C'r{fYn% ňƠ-GNpc \-:-3 *ddGg&09CH OOmyUxJRfu[Pk ؼ^+ N5NJ)c_Yp*C T +o8q̞#bz?oŨ_d+cNQUIC~ pn4Dξ:r+[Os1iRNA?5 P/иM)2Qi+a3ߧzSAu )`G&YV"Zg>vVl/ed_|A(g{V6wyEs%z)Ln)MDPqP7%%i,4.撋= ω)mPO5a XS73mik; t+6-['k9%XPҡޅ 7֏_U|V#?w ;\nV)Bj?)e EHTե5Dϯ ;ν:b:O3.($cX/, و9Yğ=)?= _4,{L9M|;9EpyH`Õ$wk$> ɔ/>J!^ryIvvpⲎh305 G6mdmK~vzISTۂ˷Md4mp1{&']YA*Ca^@]!Syy0=yp/ }4Teʦ](H&ď׀, {(ie[dyuSXՓ bN^5wC~ V*GW k"E3@lz$ŮUxzj0fdK/^7|\hO{8X5d 3cf"՜wͶ]9Z_aq6 F#S}_rgm#%ȸ/";g/U{ 2ei2~ۇӸ@%l'!X& gi/%d06a(l~YhxJ[mK 2բj+WB|Ep1/_fr}@y}~tKJ6WXPvQ%p&#lb(̗BeA8SaC썁b˥LLEv€3+Heu]+VV)f6/Йm-9`ݮ!NfgDys8j4o@ZRxdk^< b$RڻP*|u;ЇL*d4=2Ni4n?ݢfr?0' 9Ԭ&P3>p-='[Ew| b2~[Xu8XnجΧ_PQ͠(J VԀĚ*`bn@b ܭ󿢳)7m]Foܵ4gR: [KeĤCBT} c .=v?OlVoi.M2;&t`3lg8y@'$'@2zZLR/U~@Qo$f^3hpN?τk̠+cW D'| oIA/YU˸,hAeuL ҞVؽj$87 Huv5-c3=#gt\q l}MLb` H9n;K> RO7̤39r߶ y:Y  *S י7YX\ҵģ *oFAkO k2ĥoiS^߷t@r3#&'pI;B#>p7oc1,9Ze^ ql$~G\l|; gFj[m w{WFY= q U[°՟ UDxۿ[%X3E,_4IwڲI5hBwlѥ? អ>=bU7^&͕K =:4.pUjUSa,2[퀛W@/"El_* ݂5l#3iBƴ3X#(<fOJ>`6Eop=L@Rr*Rbl>[0RpВh2FooLx.x~%˹Fb#X@+kB>eGh~crUNVܔ;Gԋ펱=ڋ$v k׼Ej]TG8*#6oȩaNi[ mob䳒R;602 6_б lUU UM8%хaE,@Js"s@YoJ'*E8GL%A`fh-2>θ}+r Fy}цg ~Bq}sXtAuӊaP/ ਦRS ){h~i`ƑX]Yh#m@va54C{'%9dӧ%)Ű" Uk ¾YY qs1҄+a#ikZ8]'½Rfmp(J-A )8Gľ UM3[z9c¤#Ԙ2%[nzWzSJL.Ft*i Ar3Uw@o}0z%M/b&LVƘ\E5iC``퉖=n!/Dl3aUTTbԨF$FH[ Ԝp2}aP?6Pr 7yi?y{BUJz3K[bn9W%mxgNL4ĄAEz@(:8̾K -VQwH.[dxw$?ԘRZGuۘK^",Ƃa][\EjO^4ê/ lv`ߌ(i90@aZf*fdާ@xHQU];ռ,@‰ Ы3).nofaoIemgʿ1 ɥL `a ij2.]A[.s~Q+.P ,U226qXSZC.*ۣ{!aIwϚl+ɍ0;ǜypfe8ۥfh7ht' iuⷍY06ݧOɖI, Ε>ǯ: NZd ?bN3\ ^Bvt\n@bYD@a<.W36> attBX@n٤ّ9: V6<#hWw}n0%4ڹ!pY W&&+fNv\7J 0 w /ҳjtXDt_l~ZavHTԫKkQ9 g{ZQɚT@ր:I Ysѯ=5ԋSA"tڻb Qn)ӕK&WVKls|b2a6fA{T|W2(483HwSug.X1yHGu[ m# þ~v[ߖR7=8$Y>8k{mf5ΛƝ"κ@ K=`u)I$eN%^Mǩ bUj30qa!^ҕZpXm&? nNWR "laHYc1& \N0,KWF:IQj3|zN-,%JPn58I>H*7z3mrgi hA+kzd.tr,u(v'KB.O%20\'Et}\LlWcEi+DFpDw"M%̌~ :`k %)4j]Oody `F|9H[`j $IS mojpZZ^>@zVh) QC\n;eb,B $dB#h1ʥכ (y!H4ya/D#~ym'I֜33QcziGwa:?,t++S+Kbr.\Hzh)ۖ4ad͜@j ֶ|𞦴-_W)I5zO Kշs"ݬd4mxte?P5$%uo d/fxRY99ߵ`kK.)4P>WMjc~cf ¥u*d>w> iэU.Ƕr*%gMsC!Q^\{䭷S4 ;)4 * 喻OBbs9CSY(ֽH ֵb'.\om}su` > } %h&PA.h] cOKʜmWPYC93ad/٢"Æ.4TjbpVj~>\$) )xz*m^#zP|D?~]fuEEyhK oGiLjh۾4}+AZV]a0nKЫ\8,@ƋqGy%)W&n  A5[ivU]9m\6ִ#"K#zšHng]Iδr:flO 5UG>;ՙNϭc3۪<$'P=}xc6:* ݓ\(qm!R; W3Zxg!^ {j p0VZM}V4=:̽zj`@4e{:j"s5^R؜]{Ԇz@jx1%vU QPWo@ia, +H}ħ#๐l`#[ &}dyDp&1i"s#{MWO[LgVenjTdŠt |'/b]9hF{epkVʣ\m,_2bmx*(qĿ{Qs']dV][טoJM9ԥjAP0opP"y䥃|>3' ^5suQ{B5*jwM?/Dr5jjO4lA=ǂV<8IڹUlkéɽ`א[z&x|1SE"g-;Zv}3C!XV6 PDfnp">zOeg{Wu(>*t"^vꉫP{6˸3p,3A]>j5R=}$huvD(:;O_c7`L.ʺHϱZ@p$HD>\x;TP=ӆӲw 6ZG%:XͧxR_JW~rNM(Bhd MT6Sr?Qώ.6Ken }NГ (ۑ2L~A&T":.p7҃8jngӊІ-}RiDe ] q4""383^-Ou Ufq uJscuA!#8yŤkְsgi\{bIL  +{K2衧ďVl}hXyvlCv/~,hg-/h3f#l?NpBXD~_7$c^%ڣ"S_,К 3j*UH tC9I$Msg#弊θUK׫ݶBg٥BTzxuXF V_hF('%/3A{uP~͖sou=PXwJXӖ;c*F_nq+^ZIFЍqH56 5G7:ƺB9qoM0zCj'òw V.̲ܴ9]"^7ˁ_,0Mn^=7OJ\X.4"ˬ %Rw=xHT*'~wW~yNa"!tw2v'5ٟ?p,_2%"hE7b[=]cp@8ӄs+"qEj k5(hEj$0m/vy(EX쓾*ҝ[2&HQvE^ PXx&QCZ.^Ii{fl†0)I?YB&h3z%̾lAgjƳzcI<5sCb.$jğF7d-La\qU2;Yvꋲ2] ?s0AɻWR@ {0W̌h1<hX=RJ{ёi-8Z4O>hW;'WPM6s(q7 S]=5~R8Q%uR#iV6ЕGQ xmp74*I_\|5KZW'̕w:W ı9 x#|HȹP@cϒ]{lqyLi>$$o-R)xL*7/i^|j/9~w^1o1t؍?u%@iH>Zc18u'b"/axO u(IKUDlG1ҰGZ,;" yu )wMaQeZ\Ixf7'\q݇뮐mٜ,crXh,ǒ޼=1d?+_Mt0\,19 J2~3@f$7Z"J`Pw)OlžjPmОKpa"(GpS6 :8/٨>5*Alm>6r9yJ$ 'ZVL6FmOVȩYx>>Ģ7K|\P@ 2f&?aXM$7e#!A-$~(Xuseer9p\ vDE JJJA_oG\k;tS1|ψ>:-U-Թ]T\L%1On㈃5Y.R#K#8?&xɖ-4Pϳ~/r 5!}m:)l)ߐ$(o~6"(Y#򄭣Sm $C:HڅRBA?ENRJ~Xk2?r`JsYE(LG9-HL+hmGRYZ2TE)ebG*9 .g'/V3pNBy]3vhYh<~xf=9)':ߛ=Ш&hޓ~Ü͘ν$:OF#x0Qvbn 5B("}?IA텟zScX:Dn@5H2S>D?Lg"2Q6s2Hb TSi Z /TK1w4axyj2&SחWQz[Ѹ{ ed|<' +lS ˤ\.bp63b-t*7Sc>i9a lJ8H v-l ZLƣՒ>-Mk8Q_#Img:NŎUj% DnW-FA^*oj_RVչ!u)pr4ѾOvGyՔW-F.Yl#ꪕnLVj2Z.G#!|xrV?L/j9v]2:Ro~."B3 ߁%iD 2bӷ({||HmxWwmC>G?5eVz>\VY]VG( 1U~6:-@~vNW*r8f2䬙-}zWBW! NaU!@%$P}t_z oxcC6  4'A̗8CLQÝTEb@4:i#dRv^W nYO^ D7OPbI6OfGNlQD (L|W?\ՄmxۖwJ$3 %y. j#:[oO:;Z5b4Mt30“$A*ǮwOyܰm|'*gyB9"<|Xv 4z`NZ)Q8eKE)I r5ʰُSC&ڹ.w\[a-{XQ|g?nl:A_.\6Jf^i=jCXZG%Ssi6[k")Q *|,.g`%A萪rs>ѬH1kS%T\|% K_Ӏ~q|6F&MŜn7?XPҐU`Y,sCqM\+VYi / tYqZTYC +K6!~w!+yTZ(kGg#8amp ׼釔"ц+%Zs^vj`b"^|;xx\\4T351hlaDVFC]nvnpayb0|04MPĈN7_KKqK@ Pj.I+!eJXVufMù 4S6v7+%;ǐE:MCD>vF%f}r_zĹ._!c"C뙯I?E0.l o 8td`y$ h&Z(EOs.IʀbHs&v؃\A)b6,?A3UXkyI&($=㩍E= 9M YHXx Uȁ*=Kl:hB~KG|7͞ƍt􃡲◔3E:Ibuqږ+ 8 WC<P,v^<3ج9SLSZ%KvSr`8NŨ0 @ =Ӄ`BGڅ88dDxT6#X:4W`s' srOCK AהSlF2+B(ʩ;smWBST 5Z= S}=v9LL68owME|=ڞ@+1QCJd 5ⅎPhLZQ0_mO?-Cnn9ŖZn^p=qT<7*BcSa@+he;K(V.G}X$PJaQ7bLI ©(^r~)x.T=֙"؊Hʁ+Y:wdٷEKW b5db-':Z0򣁁ٌЀ$ھw1ЙG[q%IyeE{l|I8GVaYRur%U6G%uGMO& ҙ R0?@*(Ym| "@)4__P͝X ^6 t'v'Ik_ֿ{(7eO9 s5*.V͵¥yԓ~&>9}3|tNUe(@p,#|o#1az`K2|M 1KEn GAbz+ tJ'_giK}щlqUe9j(;,4akTXgӹ"+DH[5̉{ZwKG īXYc#JTdJ q:#;HY*|AD}v$LdR2ل8gDnpێ;&[ZĘu S2XT. ο*Npv Ղ@3SsBFZ=%MQ []Znk:2E3SWӼ@4jtM|y՘q 鄣7K[n[|AN /$dc;DG[]}AK68lj˜?V~7QPGtj|%p # x=N{-ʶ!jn?X1p 7^\,j7FC<:o,y#bDx]1c{ϓeyX1ZKԬ,mN-ʙ} UZ Klw]AtPg4.=ϞH7\++Rf7`Osj'^mj`MXtT:|/-3xR4D+An"mu6TsW|@g! `A[f۠8\,EIma̚%pQzieK,*'aNOg>JW!Ww_hXQ.$ya`0ZMPPFRPp_t}|X.f^2uG6 9*dCT-XKzs_তˇB1f3ؠM1xCxp' խZaeF"9`AUYv:==4{; CN@*d($(bc87 i3f22"?Q{(q Qp ߂a]}\儨J#ULHφ$!2 ]h&tS}2!g8\$QΈC?3 Ƴ75:ɞlQwub4q5TɧRF>m^s ®x[#CʢM6|咕[ KN] Mv%^%4kOr͘IM&VpT#oFcnITHLیcQB^4YG kjҥ:Bwezp.&N,o||mcK/ =?x? YOx{LT06g?5c4}<]B 1EԉE.jA8ZʗLk / RϚxމTY9n˛Us/h X̘s|%98$dXX?Y(v7x lwrDOKι' `RxlyMfGVDVh"j =ulޝx3uSF~lrوgzL$@{& q&Q͜dѠ,},C#48Z3D+{h -V)@I5Ț',;`nL:b{V"^v'!WVG6+:&(]_Cq:)!$yl.Z%6dCa x 1Ms$L'OX| z%&pTš ͧgr\XOwD)2MG˴W%9}-kch6%ƂgS ĥv0)FHzRwA#<)jGc.V( Cb mBcvPڛRGtio}ZVPt͚?{I6@]sJ0 A= +GUwԔ]{/:wCWeB8LeCeAd*fu G/ndf򥥕e,b~d\"lXDjdI**1l"z.$gfO+B죅pp,oc@}ⵉS)q)Q>oERҕCmfcp==0 [->kDlveM'RP$M#(v1}J4 oAuΆW")xZ8ɜD hzDwGK_ :yASo*h@#У°ƖZz')gFt FG 2b'&$#lgRiF,j O=,a<}~X˦[ zиJ?s8D srs׭vO`CW4[Z$ ϢOE.q)=,%)qwŊYNb&.SZbkԔ]d,^$r!(@B&-d6U<]sQ?ss<-tc.\P; S;uq3 刨_sBe#DA׺!wn 'I@t6dYRxгXE'W;`c/c8I;'\ZcY;s& EQwJ| 2ޗ-s阢\OEn>rp v QF'B67i?v|D l ~# /%>w޶JVyFc/.s9i] ~Nc_0:naE$^ercУ僝%AI׍&z[Z.VTtՑi~E2Dr*2=x%YuR)6K1Xc':V }m:f?Ĝ|L2s$ ,ٸ)`a4C8_RW\3}*Zp SVowiJ)Uc"*\f>TSu AKD<ׇ>CP[bϓE#fE Í^n5YlG+5z`v쇱.&0A+ {JMIV.pi煻\rG i땾݌E>r@իW _uJJP#7ag5٣Pt*G :259Q DYB_B&K) UZ{ma[F(@A=H!A Ϝڌ>wi$Ӡ0yk|;il_Cf`X\7pդͰ"8 +BhAWdB\,1B%e5c4j'73N&q]`O%RgdŃ.7g``I~b8y דѺ# ?YfrUXi5B0^U-f]YǨ]W8- nz uыU|Ek1!q~ m _M9jZX# f"ik%mhA٭X W& JN I~J?eTUpJi ('WIhcXC n(s= td&Hp@ TױET(fb[5;3be?TP8LW\fVԳx@-\ƖLsDSly}MSM/!t=o+{(ľlrl]s y0I4a=&U[G-&_?)N%U稙UPAtgbc:)k"q"gG̫;j>93áԂ`,$4¤)}xُ_(ʗRiA!Hc~c':K̻6肒DϮo.qgG8?Dk~Ǡ" R|3>"(;oPY4R#!mZ,Q<귣Z! Mj}Pq'TsvKQ0+7X9-j+%o`i9b kń{]}832v'W᠜3Xwf{\&k4&M&|Jzk6*'$=6dX3.w{Wh_Z{Ar,b]Mq_.3P#Ɇ,ȑtnxf/v+m fg{OGN}z-nD*G$Ww~8?$$ڔa_ERR BPz`b4=pwԆs[Q\F\ !o?gLW߇ap! ߞ$ONW `ũIykݘ(iD$ky!wT9VL50@rԕڝX͸Dҹ/.킷Ģ] ߄ S4 azjE\[HNZ `"uڲ:Mٻ}  6|/çk&\4 } hDI;`oi /ih3ՂB.5mU^ CL "M8Y7o"n0b7Q'Ad7vd,7IײjO5xp{[Fz/SmbV'sw(.ʚ4l׳eѱ$̭T;MLAe x=Osj } Q(]3j&esY(l}R^[?n9jCg 6k=?Q,.G,!)3LMs5CN"ʥXCp}.Hێ/B\콳(8@kC!_pzYx)p7XJL*BgVˮ?MВ5R_`bז$kE%ܱ@:٬ 3tG"WWFHb`X9M,= mZjRxtm2 a*wfզAXן*J=$fEign;7= {aaD} .j,鞂yˇdl|GTd_-ly4 i،*+< lu.~-yblU\;A:iqr6)≥i lgYhf0y)<+c ؤ3~$[bp ji}]{ OEĞ2v㼐fYedpSL-Y $ T]6qЛeD 87JӱMUFWt*V.9J[O;!>b3-]9bYg_lo?KÉjP,~R.LKy~ǸvP@DY Dł̗F&s1Dq+MQOfas|f9ĬvhktJ:B{goJO\y: 32)W|ǎ8($(]U NE&m9eݦc tҙ4G)ړG_|EY=Iw?;wХd 'UH"jGCCgtkug4n Mqs|&WfT%<4سcoAP{F26Իۨ-w$ۛ>?H o ᅠ]`'W)'$#_攄Sֳ89p<F⭛~&i!gkhe`tЭԪ'Fy'& sN-ڝkiL9 %%YC}ⳝq6e'Ex뉓\. Nl]f$NfZ;-K 9/Vh؋E4N#IaG!s_}4b)`/Ee4MGjOGTPcT+q&t3> opz0 볤;\d'BMY'#BaC EWFkˣvOxR9+1DD=((]*Z%dEu#p-ǛmXTxv#'ɲZ !Lh7D#>S~` S(1өQ pffH&BfM>Cu:ΧtTVp*g3RHE0m:)e7,vN ' C. {O؈l1SpT#zgc*PdqԼA DS83c9㉢ˍi^Ďm ׅh՚Y9:FLίTP}7)걘z~p[XCO+>](A? J٦H(U4: Y8 Ǡq!@a ΄S{S_\8,_)^<nWU@~'Q-x%ei |K%inCDWٷ<@qׄ6eXl>YYz^kik(Xȣ~=wlRΥ]tfT@B&cgHs+DFGwևƅn'%m#O}aqPxUObq;VW|$6}^$X= ww؝v|j9&\>ک*|#s@ Y9xuRI}fqn~ 6lӐu4(>ܟ/}$%Ĕ3suh'R#r*zks{`R9I>a /`O'č>@?(?$ i p$%M3ՑDV"o-ߙ>dɈBqPDO:d"5Y1S mSOz ?uŃXCr{c F.yoMo'9_tv֤9@GA-3׏AY)Т)7 3N ՞rP\).' QR?[Y_[sS=XٛږU,G!_la"ew)%_{)3/aWNxh`%BܝV2y_.PalITTȾ/+N*ʨOaQ?BMC(|vCl#s eaIL:82ʕU=_;g=MN+V/Ālrk{!:r0ͥ:I'7d@F,YN~ P?Y?ka}:0|8_V4׭'dXT{"5]E U޳O1,<9yzM! S?Qٱ6Ǹgr)2n<@ F83W _L ?p[zamD%#ww( bЉ}U\g>_qPjXU)0uqѥ@4o#} Cn8B}dԅUD]s_GQ*\*6o޿kkK{E m/VDƞ8J4yHѿ9`Zk8@)$U;;=ΖM 86HyD3*>"Fo(pN ޸ZJD.ݤNgqc[BNKno!m'mJD+V7QtWd :b@,OfxuVa6i NU+Z8M\֑ u6<-|= -R-!q__TV*w_Fr,x@ tmIz+bI ]RBVwZբWN[;y"#&[Nt:*O>6tE6KD;`^SY5\c͹3_W>7h0Td"Q>弗f{zOdigmJb0ĵAFEzuBu T֩p]8>ɹ)wWM%yEw!PBq\zTl7QeGVѴ;βX_V"g ixGw{&QTMܡKA*%85Ƚ;Ū!w`t=k=b_o8"(ݣ]Y}g ֡}qK "CcLM_͟v4Q)hNǤ˸_.FYyݵ#ã սwn"ao(Y,ϱrC<#A,&S ~bhBQT,ѰvJXz=FC3 6_99l{Ad{/5}"i?ZcE9;@g\rqJ0)@^k ⮛t =f[Nn;MlR(?^ZD5 5y(LoxD )i L昳BdnUd{܈#ђz|zH ,ϸNmV? Qڙ~"A̱ ~+ ^9͏%"6v;>ڛ&'$ROynZ)$W="T2񎐵9ZlB٤s3^΄z\\4kG%ь=]xA2b~]e u\E+mQA~2$p`rT'+ru Psă'c<"衝Cz*!WŇ 'oRp$s'f!Ɉ20$Ir5o-qyWQ밐=4Iddt;r=ⴸ8FXm)S`aX{!˒mT $\AR/#Ǿؚ[:C2-vRUgՖE tJqG.MNfB252_=S?cTdx]1 lύ7/ 9Q~Tr RVgߨiS0(y YˎMh(+lZS򠋦hb@(ևpƀKE6lh@+&}.˹>L]Q rC&﵇3Jb HT7"ҍ(y8'{^7[y93T!ɖ+ou'QOZEOWOyZ iڜHMї WO[]m,=|~#dak S35Ѓ%:TީnR'/&e1qtn#O1 } Pq'Z%rlҷБ d{'PJK.y}*][=}s J$%x+ l1%Q/ӡŃig:τtHZakD)hM%V1j7'N5&&$VDD{~EhXLaZi"# ֲ{M"y Hhi> NY<IފHfjҕf3μ 5':( xYUkDz{P3Ǩk첌+kj1sGow&k"Hb+=+7D.Ӝ̤͟ce)Q+/nt5 Af7Qc'V+.UV*sFL3dzbWmZp2x3>k\S)"n;-CP l:DBqu2Eyy$L*3tMN& I;0wS>ڰDz6s m|w~=joOS7E̔>6Aȿmxuc嘈{A7q0 ؅T;WH\~5xY8s!OrHifMܴŐ?"}̥wN"i{D^ŞLD)+_?t%Q+W m6(NU2 Yo%? fbLa7Mni%׽eJyV^2D:kJR}vk.͍"ӟ \e9y#GDz&vZ6ziKRڹ=JgT"Ӹ_蒜l G)J/#LLT&=lTջ>hSlv.dX10ע6ehd d$-( S9<)c1}B,Zyc{>JlF:n0c?K Hws~l4z f/I󺭁NB'T 8OKr/Jfv]̚-_h}T@W_3ǰ`9i8?kcf:0RXAI80{ֽg'䔵G na`55˸VF2;ͼ8?pk42H0L=ѥצg_RkNn @]SUa<;K[$8'|M ϸ"ŕr Ԟuvg`Ւ)aԜeJNm=BIǁsƾ]˭frs(6t#\g<6CT#T= TP'6nxn9]`<]1m)gI/[34aek! D*D!1}Z:ӏRh Pj'R+/~Wx"8]~d:ӹqH'bIVBmļDcf\ۊGu8!D|1F%څ7a߻hDJ!(!@MY>eK-# jv+0fs_1IY,?SMjn\@7.SMnF 9T=Ešե-=;u|Zq8=(A.+> EgBUZBhJ!BŢ<43j Omߵh<_DQ(5I)ծXa ;.@喝TĊ%t#0ޞDAj- /΅I3Q25L\S7Q+ zs㴏葊olg`AD*iwGR)=0a8%37F_QLmN=ލ?@ ͒6o`]G \7).sYe!j#x4DǨ:F5?JAHG-!ATm8o$/ 2%^JO06wy 嚁yv*]vb"ND9&xcCS:$^2,_ []|a'an(dҝZ w:xLfy \^;MƇ"<8&@+Esyc4ΕO)bCv¡`akSQ]?88.Q.5ba%\* Ise*\،4+AD7$їQ1AEL42ڂ ~TAv2p CAzf '?AYۭk p]~r{[-$3[(㭹ԋk;yڸC_X߲#,Kt2QX2_L!(5NYlJX=z<ѣG0B=7'y6xc0ۃȦ ̥tER I2m_o3h~n)F,Ao)TFԮeyvEwNsavt)6D {r@U&8= ܸ(ə*}CHZ}!$) Sbheob`#P\e74\ "oWo5~5QdZ]Ibd5pǝKkH9k}^u5@â7a`m]$OX=ziT5Pɸ`ٳLö4jiٜ( *#vU3BҖ]!_\[2^$~;F^mFCfH ԺayN@7O;&s=MavQ#K)MBmyqА5 sh'D, ??ۈP7~+8+눯z^rz$H=ШWG]YI>>I(`<24^CT$W Nij|ݕXE֢onfȥ[6.(.'{pV>h?܉4lA>d{ɾ<)&fIj#@'eܴюZfD5(X",jqave+| U -BnMP lq7FʵzT2v4V>2cw ~ؽoevqĿ"bdJ2%j[8ŻPH9/ _'YrMS/RGS8;5e}5a%!>""pCc:uf|k5,꟫ɓ8ᦪ %ŝ=xEȖt`"j@t{2FML6}}C~&U*1a D<%na %d3~HdJة; ڥX06'#Sջѫ;,b8钲;rENϞ4ޕӃwc}/ݣq(̠R{ߜ'<Ίs9K>;7"6 WJ$#^^& $](<8,HVaⷷyE*iJ!ĩ`CVoiyO(qP?)RiP~) u7nWBtPqQ3C+S8@C᭴-g<=" Fs5ڙ$Ŗ2uJ$oLV&i%=N~$[ºfzՂף镓=ǟYxVcgGQ(`;P?LJ??߭J]\Hɱrẫg,:fc㓵#y}ADn#J6!>zLO7TWUO2l֚űEkdh|[LBuPu2.zڀ P EP^D7wf8/DK)~@ ;0}3IYK(Ƌmk&,Qekt{4φv=4@i<neRjfߋU4)jN[i,bA9z:ڮy]mFV97Oϯ:A's&0[S(ڪcݞ@}f~= U1LrmerMEAPT tt,rd[x:n{TRSԢ[14NBZd&%vu s<7fACЈ 'Qqr`:` "[1uuzPPS`Q5F6ƀ[Tn q鱔e\[yFStZy}rH D! E ux&f .&!^Ӯw N&c4Jjy;k:IPcʈӜH{cݤh_9:x[Nn3)92=mReHg"+YYk_ʨPZ}˜Ô'58fh J&wi 1 z=K\{l(pTԅncjDp⍀uj%ODe>#uJjdE4$kȷf6嶼;K;FEw xߌm>0oq)0P&a&G#|?Sشf@?px;a4FR py\!JVaR^a;7zZfBxˊk?=ћ_ܠ;l7lsz&hFi]E2?;v K8Iq*Q mȘ6c![rCΊ$^y Y^-#:u!HCլT"Y[ .Tu d^jCCdSk3{01D J+y'hd֞Qhjl?m')$_v2VmH++s%5Ub"?7_N~; COR}=WSz0'~N#i V gOtP0|!ZTݳi܏\џ}hAĐCCVtb7iJy }ZL +n5X>&:>~=#Xx?>~V"`$\v ,QhOAxvbU-0eja# d3[[Xz (:qq1'XrFn Y0=medu8"VҾa/&8g^NhS*\7vLY_J=n ЁV*A>Y3c2-jh=lfOADByo-C\֓wL[}"e40)6jX^{ Yqs=يٸG7߯ssgԀE e:A1vq'A(ղ.aUu&IM\_M˫8Qcj)Xj9^/M;eE% qt)~!L(S4mUbɨ!ksmať|AOӇi)6:7@9pQgg_@&2,s%geD :TB-S%ժ'dP%%D@ϲDŽrQ! ڎUtb,vDFDlޝcG=xTu@Uƻ/.i6_Nͬۺ?aW!guf݌"zOf"L4/)c՗XjĘ}7h12^syIQ%tC":I<.i-Kд̥4j`=?C+F/TbF-#-&A&m/!wtG0zưm}<4To;x^S|KCBve9BnsiO*;\rlSRǿDž6tl&'` K(8'E) )PfԓR]4C*wvKb|G BTpb,E5kWzߴ2Ӈ/"$aZGqg'rW03>_a,G٘[[ƂeI]cLU.}sO&n-TԈ݄ wUՄ|{7e}%OnbW +l" ?O!ѡ t%VI.l$[89*Ky>B{;H(Op"7p2boNY7Y봼+;ڴqɂzOSE֓jqRB=ɤSd$ivgE M^%6 -?ޕ+ӳ!$!ffJA5bߴnK.>;m"-歳#Fy$;K4 Hk3DL[";^-Z j`8`>:_ࣻ"l S[Ho7abeETgVm p"8XLmwW}L8nT2THOj3,`iz3Vnk.KpzCJ/ ; y9 6!%:Ma!Y|aO* C -bC̶IeǻK»7vHH HB; ng t龱c=-JP.@tjζfLp9t%bUxK#i$(sPύm0)0'lڼ3A-ǘ!ЧJY}V&}޹ ۆ JXwqQ:AGPc ď(M(-r>(/*_+"C^8rw3ö:~_"$ fy_ 2|I;@u`0s Y ǩ mܥ F' `+3=ct"r=9ea'M@mN1gW;M]fx}Zf QpjYU`(V_|{~F. JHK1-8 a( -|B쪝f}ˮ~a+خZ"3,Lf2rHvp|.'I\؀1xkb!*GRˡ\mN'[^~!30S}k "dw+R\KRLx Cq啈O>y!-]7Aa]Fi ՀwQ tC3ua-s|=Wf.wʻ" }}J0a2U{!#NS*h0\tl9*}22G; D0F^b)Ft]%V1kPN&q-ẩC8LK t\s3'rǔ0<PQBCws`BQoN':$RbJݔ,K\Xb'lP8%"^9M--C 3c΁ `6UA F(l¼cR2G ȝ "~znKtmn[zOܶ@'VT_KtXHk" ^ҍXӋPQ 5:.,tEݮ+ ~w BJCI".h,a@ 8}0y'%$WwN}0pתݽOLK{3} Y vWgsfk!+/W,j- l2Wa'V]tz/()\QV;-/b0+K[߂EjͣcZ-ڢAv:f%6N1뤀TT`!&/'PEG]_#Cugo#[ gX)0ܤFPu)y%YXBڌ af6`AV +, {g@Uıt뤿+X=Xx& զ1^+ >ݙ,,{*2YnlP0wu M# @p.΀JQZN^'?R , n%Pd2QBKeDߝAdX6 iaKMhEB xSp8C̋fjbsmc#5qXhcw vv^:af}lf|'D^9ra\o贚IL*N^75/1 `sPZ KR+ɹś鿯1眝y-%9D$6LYͦH9m˒QL/X_.~ӷ7ڃ;K\ ^Ck|ũ_ >kidd#cx~7s@M6@ʢ-jN@le'7.].pP~T x8L)8ma'yЉxrF DwCq7~Yuɓ~otjy 0BmɗZ#_~fg @$ Jo(e60>dg\#тJwo׵&Tm<'^G|1i$' c|N׸o)’߃F -ٲ"zkggɪ^C;=Jty*~3mxe.)00Q*Ҽ6\\;hQr?.+xCߘ1^Ǫ'ԁ å. U5Ep~E)Ì(CGZb7DwEi›u;~|>?s<"7y(> ~] ΁:mdW~)r`j_@m3(L. 2SF4?ƖNG 9娧A "SXEY[fL{͓,+ bx8& >lgkUMAi ^f u 3W q+(Bd'shk Ԇ?oΝK&eŃu&N4' Q..>X Vr`0Q36ʥ4d@X=Ba~Sg*Pj򀐍u~ eEժZQ$mƥpp-Zb[lU7|e} @<8}E9V4bЗjd*' #RKWqC5k4ՕS0a|A.**M<3mhw*@mI3<}B Z;[\W2TQeoW~(3+N)"YNy8ET#CG2M8*s>QҎj& ?N*4"n'P.wwU{?:: I*,Tilq"s s5@G4fX+gkM:a+YNߟjH,[a NyV^~Y P3? '^'saa>RVD>26q C^%Z z]f@ǒ5n+k҂<ꬣvٰxW{K1>*z^ qk~ў|8FnFu1aPK]lO{M&HS hߩy_"ֿdyޝg_>(3rdHC`=a; zdh{yTŁxҢ7aS25p˴WtE?E?~@>ڔ&8WZiZ)۷!?Ht=$k|h$RC6p߽~GW;%MF<S;.Ȓ gI3&оH=ĨA{4J15*lZkIb h8Q{$_} igR7!j:8)PO&R(+&`e7vlp]Vz \( 1>Tף\l4LTHǾ&5whc4Nпa!t?}N` X,⭟- ?u-iXuu w *vpߗ' [$f.X`J7B1 rԾhӟ60Z{1,sTpxY./b:aԥԓҟsw3UB+q# x*YH˶r7IS3Gl|LtpZ )Y,tpBCXS 7ͧd}tp*`Nm7Ev zQiz4mL (|`6HTtJmy˫`~+P9|{"P0 a?\7[t)"I AAwqJM:G2\uu\C8Ƌyvb#YOc\фڝg=C:^9?IlbBq6N#8q.hO˂dК} & [}l\@-2ĹM_aQxv-B܆#=Q=l-Y]vX |N{N-;/EA.fzB:"j)n*7?D!D<:w=mR9z&I,ZTD6=Ä~;.#'-iZgG2PpОy-Rc m용T狨Bz")PE8j!ݾ (O?=d&9,emVqM .Ow"\1# 0ܬ:޽%o>Au6`Bxl\T N9M/ p8#=t d'҃jѹQ;8+ {HdUW͐[|>yq"TT65{$iG`EVZD;D&,*Ju*A m|`(xiL!boB?>fJ6@p34>4GS Zc[ 4QO@ǘcF8B<בWZ кoX-Lհtb޹r9/Uw5A: Ud ˿ҧH' Bj%*N}fTΨ,JA)1'z7lZL}ʵK (:Z8 ŭy #Uuh[?jBoetYlrmfhe)XKƜ1^D j t-|/3F*Jmt@H|3f#1 06-?c͂`@M`#Rcs,6-4꒍]1Tyt~P?tdq]a(&F5__$$"THɱ41tʲE"YxYi=o*d 7{˝dž;?Ig׈m7KYSUaﳼPxo b7 T"}ѯ<2E?a*[Y[4__$-sZetbB@5x<'$u6)e^LqO \mŲ,>%A8jf'eLt(ORg rSw>{w_>1jF ~cTQ*@  oQƉ:{aU/=hR/Ǔ]F,)kނ?ҦiC%օŴ4CƵmd~C\<;Wo/b{?v/W #bsm8%!DU6U}_ B{!zD٘ Ãٮ vV2&kRjs%G S jIBuCyUH[7M`~izI5Cat́И]wVj;lzކ( OY Kהqy1O 4?L$p;Mv&3Zvq #ɬ醷(J/4͡ \`!* 뻘I; GD6 SV~&6{Ei"Fbsq Pu x(W$t58cJ/v9b)ӑ!hOf1ʽVo=/cL[[a dhiM^;ϧ#0#0pgq= |Aű8QwU{oHMCۢz> >R|IyH'YY8[>샤7OtH-?"O:=c0R. Eƙud@B{qTGk{F5Yq[}MoM@ Vw@T/^!h- (P;ՀעU)g$ =1d_s` j%@ĨRq==\)@ް҅lckePOB<P@-Nh~'l)ooj ɖ!b9^ m weV3QՖ0\%?!CcK0Hw%ȣ4u5PkRC1DQ;M6bx>b%AMe907~B 㧚l՟Vdu\)>;Sږ"/9]hox5 "4awRFnrĸI=W*4g(ggQLd8f~m\9 K_BT@I0&~U~-"nU" =NZue;pbe'yݾa""`TnFm+VS5-F~^ݙ\P-@hj0;fhk\2 ަhr VU+:}=ÂL#dȳ$.r4"hIV>aV=$_45ewG||7TL :G/f`%WJ9`bܑs8*.$:8$R%[I;E2@BM;Cg2z>BĹbETuRZEb4y[-Q SZD@YLd BkƱO5aoǯw0 b,TSgSvys1 &w`n8E[Xa[ǽp>59CjJ*:gn3LJ^ٷj;ҁz5DI4H@ܯw'o[@T84Cc1NjsPj$|)G,d~7zn&QA,PΈeGv$C;n6=q2>;*vVRHf G$(bT*nŧ2 q7u0&+oi%>"ǥͷ>OI )l%zmO$6~t7 oWq䭭r&8yLA!AcwbWUnjKB8b$URzNRG2 yB#o 7s|dUpY;OQs1.& kf:wC>l+ -ߢ^"TH9I]nx']$̡׉3[֢O@ކj] yY8(-~(HX[-}-)>_5sՇFN6D1qل[ `~'Ȫ δQt$mfe[}jl)@F7ޖ\MtJ߈p$Qه2&n^JCNBf?!9#jh`dCd!&$;V咁X?kwem%%`E4M wP婧EB V:U:C ⼊u:Yk ʢ Pŀ򆝬|ㆧ\wW`{;(t{qv xdrOL5[+Nu!*VݫS\ct# ~֐G٤avN7 ^3 !<`q*ɳȰ= f+Vq,z./B#xIG̀v𸦧㶵(CfeIsC^, \柌C\jJ ^`3ȗ&a: #<Baf qH|Mnk1^v) ^ݏO Cyv&m>&n}at.OiaC:zˁPaXj502\RQyN9ׂ2>:GOɵN5I^ɒjL'0<=^Fc?O:BA]#-g]ȋߞWzXX!j#-JaO!24ݾ}->,#A.4Nς6O0^2ڱxrPe8G (?lC9(v˻[ЛjeSQRLSG%6`"~Lwj㗯]QYcmF )v^AaXJM0O䂯饦i|"Q6}ϜeQǶ:.ЗQVx[-2^ykX (科l $+4! ئ2PER[@rA;-9ᱠpk3~i_G#xxrzG&"8 ([aN,u!V PŵsX0enBSb' Pj(g;Ʈ>C9hNf"1a(D`4YMũ͗u~jz5)W,:ݎ`]KY3.§t0o)$6$ᓏO;Ŋ @6ˠ̶(7r޿W4]qSJ4F]|[Œm[繒28յ'TD/cVBY"e-ɰ~%},^/ǒfM}LӄoGb(ڰ$q|ǍB%N3>tI-ejХL-n;AjiedB_n)8G{DuG1}NA<~;.U^*f+.6?:z+zvB.ZV"ovRҜOg=uo;4šH|b"ٓ2C!6gB/AØ%J4ӳv4&y?xs]XK"O>:nho+=ؙX1Za^!&^LRN1 z"Q:mz #=bLڢ`%4Iu1r$P~CEeOVJpF=ڌ&Hd(05P)2M>dőKG8MQoC|[zHFʃI[xߍZٶmz_u ?|gqQkf9(8#e4F9f9?^MUΜ#OLӒT0X3@pKΤ>YC*ka5t(d2kD{*Vgn;_c~&ͦ^ o[ޚ'p г E؈?hv@[&4gIG5z,H&/M]B!Th[LnJ:y<ӧrS ,~xcU7:ø 5}g( k͎ d彴U!ՁB +3P&Jx{,0uOI[~kʋ0=]PE^gfTKݓV:xB,,_pƂIЫk-a-F[TVl|mDTɮȿ$Y LٟHy*=;vE.)"NYN {}i,Ys ~s.XFm}T#}m3cHA+A%eK- cU%Ӻf|l([$g7cmOq81Lė5Ӎ(MZk γ0NeEO_2Zc:'R!m Ʃ; pZ-́˘p"FJZnެ n0a!!_B1?2 fR2* -bD}=]Upkku(7Ews؁,D[~yw A jKM2ޖQ;Sەg/v .4ɉ$,LwiGToM ;F3A_gwP& ;?'Y.0#b l쿄ʚ;Zk- E aiJȗ܌($=(N9[;oދ+@dYh q۝^X5F FT "e(͗ l( anћUsആ F7'դ,$KH{l2^ F {zbrğ^9wDSwK澫b̳00Whkk|/>Q-⺏lU 2J JKd^8exd:xl)՗. #E90'niV& $L0"6N!C$#Q>ŒSRXz߿SjLqKhB|%Pgep\%7176~"/3mT'"XjLoYG3|>xgqݓTJ\װ%2>p%yQY[c+OcP=o"&.ٸ0Rj3z?;4jǭ; _5>jK{hҐg$8͹*uWա6 гN2"Ϡ[ۦ4]ԛtAtuaSgK@j/o8ڍB!,t]vTSv*4T ':_׾|C⺠ceoY|LK XJ!x9D!J-/'!{'no2g;g695Z6ZƔZvOQ-DTE~Ѝh+ G0,Q *UdzGcs\7 Xpr`D 8II5[/c;BZwWsvU3_ zǪ^VmR }8T{s27#$6QξJcWY55£db\aqٞ<@\j;]HjlE˔[pP#N2H=(C j| YkȓG[<OʂflNj nAwDϨXՕ 積GPAg!ʃt#S0gIʽ!<5Н' ݂tL!g8xPBkjJk!LGPOeG8t}Eܹω:ax(v\#5yy|bW:x&c2 oxo:9_x O*kl6VkaS3k9߂`EqLeVj#"sJc7'j8TBf<^{F`IYekk6'Z1JIzq XJ; B!x,dsG@xhksڸTP{ hRi|Yx%ّ?yM22|˺|_uaF[J HHqg*Iv 9+ӼMrἏgFL@bQ4J%7Oþ9{p1hJ%O(̤Z/.z@mq#8< 0&,Q| ɜUD *X&~@fhF,s܁5*`syЎ#c}aV\YA>yrl$tZڀMy\,F\x$$ē~rMsl];6><d6¯@ZeAz_/6M. #**4^.gEd8g+.7IEdM.3Q/I`s;Bܦfb !C?~ xV(2bQ^9;Jcd!J܍l 4xpSaTTb(zl{hAMq/}:ċArj̸g"i%2gKm]Q{B+|XzU= C\*pҧAKaʖ\۹n5e{ f#޹v( v!PI`.o̺)1ͣ!?%O rVCvKDSWT}et ]ӄCn!'e;v'm{Q_kD`Ԉx41"Pu{مݶ soh7s7 \,^2H (?EC+<6+Fb3 4Z$zm#\=C}z X9U @=iϞ&"D*ț3f,l!T n4T."8`IiNڧ(6qNC:UJ̔3˯ZEi#^ >kĬ r}2dn6RŠiw ­=:lzk`G۲(nV X󞤯ڌ<?VS2n' fނ훑HgT0=S7Rx]AAqBҨ-9 r ¯x *S83y;uXK]X|0zm3zAq"Ft=ЬYf Ǵ Uo?#''{#vA*d< A]AySBSXP)΀ rʙÆ)Tw1[+[Hđ[, < Ppq96upe+9+9緑]xL4{U\ZWk./ͣr@I$@նYϫD8r {ȡ8._vg Ib-UʘU(ú:rP7X,Lqk\dv?3Ց=]7*D"? [&8sr[W,qg9ɬ;w:^TE=|eXJ L~wF˕?ZWj&Mkv/|aPeІ& Hu ) A(Mm;w:9]QImڟӎv3W"c}JHҦ_EMN*c:4^ P*IM?H;.qgagF :C/~r)P!}1+nG߻s5CYճ/i7bk3ka _ a{UJ0CK@|QO9^ Ȧ(!].C~wT됉f5;) Am|^Ⱥ%dAib[%KVv9w?16nbGyQ)['dܦqpy;&a$J~p8Mw bDTGL[/hsA:lIM-!fS3R},Q2 xhgzǃ.p3qm56?&k8KTG~l^pnS2+mb7DC=*J?7;D$o%[,)w^WwcjvZ?ꆭ&F l1crχ-ñϸ"0 >b!"̶Cn>Dq"Lx/Wo*QGT,t'mũJqq=ưԌ]F0+S Gac+5BYڧt!4Oadٶ (fV=kl#xd@o)S, zOY KOP˟%',~x5viL]~<*o輂vZhgnvqg%Șw.5{;َ \BXioU-4 %.;cg\гdž~[[~y< _}X@ȺsΉS+Z#y-f o2FeQ8HdP m&R Mkb ڧ8bOP. sCޖֱFau#)`_^ jV& 2 D $Ny#(,<7Qqe*`LA:fJ@M:ߵtyZ#F{!å_Wz]q߅oBᤞa82Й%a)%Oa`*.YC].IΏmb'V`Z`h ͲN;@{Vd:sBEuңt3?#1!Ko]?QTY}{]gܱj$/\uB]EvaLvǒ4Xn܏>x; ̰˓@ʛz2qծ P3KˬgAXi>NrM;aGeppA)jEyMb@qĀN}im^rrOp}+:BNZTz>ۤӝ늮5UH3K+ER9_MHTqNΘ !V _[hJܱ?Ώ-^L2{i$iܥTe%U]wyFsK&k9{s,Ve+dHh#I^ؚb$G5Ev_?*1lU$9̓tk+Bƹ8\~\R0ҋ>[4阴wFcW|^=o|/cpf- ͫ{P]̟j@*- P-V%c[KݠZeG'Wn,'Rnڊfy5Fpl O;#͙@חef)9o]V'z5jΛÁ|v}_ o&[EZ-J]\eCW޲J?Ol3zbUa^~,_ُk0(5V &RP4Ï,`Hňm ̹yԛ`;OnPNfy&69L ]bugBvdjĔilGe`>aBO8 љb"ڒc*4Y`C 55s.^ bƦ^lfVTVzc=!GR=hRI">Kք7 hhR;|DYME´5ih1:TF P8a !>΃[qrA$<` Ej*bq߃0XZA{ ӨYo4)GqQGi`Lq;6CS uqoa!sxg?.ܤ80U_~Dzt/~km -%џ{hĄZvӦth<9~v xqzήu^4aD1OUΌbWUi#@^<$赐)6O4Ru1:هJ'Қo0!6RI1Z~>W̔_fiU-1Mvj˽n+6aہRsxGSOwD)>D;lbT2w-}M-z tYDrz@h^D'*˳鿘͓=WJ c~?̖9ɒV| H8+CqJP`]T'4`D'Sy!G l4vl+P(02 Q Gh=pUgOorNj?h4љ{7pqɕN[#Eot`2rgߢAo 0s1̍̄ǦUx7kېc ḌEK@uAK `4@>ԁN4G"٪;vC!Cj|NTmأv]ʟhfaLTEmoT*to Cմ(PE҇ۉZ'mѕn"1qOjȧJzH΢|C s3>E?_ Ox˳*Y>ا$G҂$[W/_Az]+'(~1O[GհrpOc"g&Q9 MT\K Lwϰ!utU)Yx)V;c!z}l9ʒ7XO}]iWdx/c4A6tL\8 1{8""D_ |IbCpҦ5Kv1DmY(6sOe? >y4o "!.S,?d>3Ѡ zfGulL"-A!l)C[Q#CM*[$E/9dYtWpT{$dW!t CGbEuoo]B3yNmR Yp>qjj6$3)K6|!kԲʰl97;˦P?Q ,+!/@#oÂZ0p y[x #@-V­ ^1ZѢO.̇ee $cݪwN >q_>h&V1noI DU".R2IT L}#[ƏVn5VK&YFd` =J9f!:qaC{d-!iK@r)RsҦ@clc:hl8wػl唯!sG1A!NtQN+FK0R?3"t }܈O!/\E{lP,rؤ bZԃ&E=v@fAEp9i:(a%S>OЌd +6`ާH #IoԓuPGd<aC Е6K=)"jJw>%m5_&˨9Kf`Z}Igbr4Ek3 ZSdKV"ܰ}2z`!TW&<ћ_\MԺoYPnȱ͇ |V3l`y]bQ&$_T%9wNNL}5*n)s%ϲ.VxJbzSvkĭ93T7iZau_ Ovaz瀆SB: *D#w4'Dme~o'x9Ѕ T&z1&ݜʦ`Quq[5xIߪFDL77Q :A`&) $/II/C@ܟ('x˰k얋pοi׉ԥHS8PEwd/R&c ϼ͒"<ų-Yp>VЧ+ )9t!g`

    @ARseYŒ0,U1Л1(pF=@D0G(~cƎYa;DeuzCT72k5*BG:<#{ (;v,*,?JQ,| Mw> =@]b oYi2\ifR0.A3qt؀[ h HbӶ`Bz鍇ո@dPk(^-< Nkg9þZcl|mfnI^SX$>sAGq--+>ݚeҾM!RW& z'ʀﳄ"ľzzU_QHYb9ZyU.cJEXHq]gOVR{x ÌrS\韥>tTB2r.'L"++Ul[7TU4i#jZmS%k=s馈3dBeՀ$;(]зYO`?Fwo:$rdR_^+p4W$ Wu!yVw+ v+طq&dglA/mf p*k; Dz7R[@HbŰZ>8poUS 8\ T`2ql*=)}ڒ1Wzfu\hv# ++K:rmBvVFiBc'emA$T{IU:e4Px6lkƍE[UtU77N\չa,^.z7|4w DP K,.)jpx%2kbtly^{26~6nn@W-wU йi#xz42?R >2 fPcVc7r:0Е>қF g030İVSZֶNJ,ہOYR~G I^J"[f߿#Jsd @GMP/9HiA_^@@NJ("H{r+*f./@A<–REDhW0aPC"`vQ>j ;hΈO8.T bSx@ZbtF=LjRY>iQ{8ѵ_pz9-LKԧ40u {aP ";\kEJ>͑AgWJ+^]o٧xO1pY/ *P!D+611ڊ]9xVFڞ[ͯ[Xu"eeaYyެS8nãa LEtt~h-# y ^mŁX8u߮]"y7@S)j/{j7M7pJH*zZ5+l h`sw/x92ܕ#¦M_?xm]Ye$v c[xud!rGRՏ }wIi6)O'2E |5ɠLH8]_^͕݅t }/K*afk'-Ymh߂qѭ1tq [J(풊1Qb&_rzK#V_̪*ˣaƙ#!=lDڽ>{E!Lqsd[D(9k`^LA"{KR9S[ 9 |)^c~:q DC/FGm;m?K{0xR!yF/Ɲ^CPv'F ݯeiV##A8,-wX4ɹ$EB ҟ%as[2dR ~7-N$)Mɀ~w ȗ4"KG֟<FzgP'K7jn9D>??^Dܵ|X%8hd=1Q^DXR3R%o79ptFVzT55ѽʦKUDT'$)&c{=ǏHcްX,paHoc]8i?^%zrWFTvu{Oڿ@;i ^#xORZ +Fn# J Ư"uxq-C{6R8}qu&f)0F0LjuY@i VχM0gEƅDNr~ fE{ G'vϮE%>63x#DH?Z7.!eb;j oqC8& KoxpReO;}! f@#9ڬ_WzY5 4'~S 򲨕&c<$zVuV(xcPx1.1>s?P,1@yNOcmDZ==w@ e(nOf!:˴wYB@T "WђoUw, k>+3LzƥP=J6%e" t\G1 }- wcfD!eB9?5]mSo~^NnՑ"[Tn_5t30@3~n ?5JMՆ_qR8MV^HQ!ִBXH#6B6úkzIzָ}zhr!U(R?NUrq7guIzty u$F+ҟ`h'ޏF]PlR?$(Q=.ީc/IV6 l+ R/ޕJ?X@,:ֱN+\Tt?Ħ{i!öbG`&~̍6wBq֩$ M^n6o)8ه?ծ&d>EW9HHK{ũTv-+, zLΆ)}6oZAZմ ǧP ?0kI.[K̓ɘ"X1MwEt$ՈAe_  9dJRCĢ3Ub°[7=ٺbCCg3d\Y,9&{y!g|Qnȝ]ow |ȥ@77ê&_›轝%NSxd#QK ~0 uLyhuςQ\ap]hXvJD+Va6c-5րV:W9W1޵^:i/[ YXe@:^eŽ|:hJ@k-(n POQUwN?SҮ S(P!l"t}Z@f;sKge40ډ8}uړ(eL]#Zoj'\CJs#xDh7P:5zwf` s里z/:;ޠI,m(}V:DsY++Ft"`cZX{yaka'x!Krn*CǨ8m~QĶuOa*`@܊JjvFUZpmh|<u쫡)ao_Lץ&C;ߔ <^! C?˰VcE2HIxύv:|cLÖ)KRRfmuYv٣}///^2QR XiА]\;vFNJOviV•0NNbۥSzauwM3J/v[3>ϝt;-k7` BX@M gӪaIq;Ȃ5%= 㺮g׏Y*FcFNӂ1MDji*o6 DIU"  Ҕ&z>^͢0:㞃ً쮖@ vd]eވ[/rd~o)k6g D2׳̽]|C[ޘ~vZr[`>zYWNg"\= iX+l}p2c[!5޲hM*9qX#2C6iD~Y AaaԾM=3z}ZCE[c}BOvbu)a Z Q"!aЧc⌰%A>OtqjkHiUG>;hP x":#kN.蛻E-Q| #pB)N쑐A:ֵgrPLQɪ+>h؅RX*X[Co%7UY1^ypคfh |a[F}ZPOxL7@s ף?YG?eRJfיCwq0oNI>?kyS+}k#!hk{#.0fχZF H#yʅz~?$uΥ!PֽPKLqWJX 3FI4/#Q({F:Ўiemj];rmdBn5W Yogp0p|WXYdo!QTUΈ^PxgW Qk;Y=.h" eb4e=Y y{ +p5Y|+س`7__}#{K^@ w֚k;h|7>b ,uQ~ Yy=xI cW& Fڳ3#Qrcجtm* Әc u3֟%ʹTiu`W "wqP~w6ZȎsY{ɻ.7({GetfpX& W/YcW귈9ymjiQϖ.<[w]9TuBS0….y W¸Py:O]} lzvޫyJ@EQd=pfa#LkuXƵ*]C]j*o?N#OUL3 10ݚߐ~{G ٕ'|&GiiTuC`cjxxiTTJ<ٴ0+O7ɥ%f7#H-Bkb81r1<^ sjD/G WG4`#*G('_$ Wi*ij+= jW-:9Q/եwlYցB ;$(޾K?|'RIT,թSh#) VqRB`o B ?xqS?Ɛʃ_1S_-7X*]˷A}bFˈ`x#V<Һ,-n[7P^H/MlTM& gcE'};+lQ@l}M Y2 !Z4pQS=2xt6Jrtj;)H԰~`#Ot|(♊6E ,.3֠β#9c\.frկS l0>rVx~"c TԢ[Ur'sfJϣLOD՛4zp5`8K8i8.E?!<밪kt$= cLn\Wi@wfsfSC 䌹G&X.CʜE/U1$kʪ)וr00f!#AT:%K;bCR8i֚tY~?k"~ɦHԻbt0ymg;1g>;A.;fi?ENS<~m]E!Qjh-#XKM;&!Y%L0}N}^}1ȭXp) 6F fuō)w.\Z% (mZAy(#Nzpߦ4ijn?Jcs,|;3 z+[9$JOlJqN]Z岉PtisP=O$J)ՈNہ6(τ#cK%`=XuJš6/P G9F}n6.OmxBo 6)eÂb M4/W3}3?$X5|~ӠpOdij=hǒvPm:!f@Q#le_@7Y9?TG;#$X}H4z(l#.:C3?ŠG2|a\eo˿%noo`c6ZrLBa``33q;F7ٱq5i1ca gd[&RJ*I:k ņo`<f%eZj#k^嘸a~bWu`!Lېʞ1$mcȋ&8&Bj l T^]ѿ-!ӔOH=VBΎwOpITZ*JIwKoS4zQQWfL* DsMWD8RFY4 qTGjy! a#H p]O[!][ LWOHYUU`OHYe4&9^B>rΑG'=zT 脷ؠLͻv)h}Bj]NFQ}RFIe$%G"=VF)ǒ\8={Tdx0,rodi;1*[b0;aHIRkyyDU*T;l\*2m` YWGMDp%rW׵h5T{۬Ei`NBg<_|1mvWM⇂7&Br#G9ˇZJ3kC#8E}talcҸќMmc TXʇݝ!8k, <'[5u\5Kn .iT.6`B c٤ bC%B2^(6Yb#v\kW,,5Aoo]yLj2La̋]ncwj&צ ie; vhj #b+EyǛ"QJQdZ?1}Xp븜rL$Ktj.?:}6&f# Ǯ͉nqL*d*P.я ~+rKaoꚫ>N~Iwdi \/a-,{_Eyv ٨H61X+\)ag9!HE8!A{/d.GRa 7y>?gʮh{{q^1.X8E;FDIVؔu &JkepЊWC`}hY`}Ǻ!Rzx G?M ݹ^ YUAɣk"& 8ǝ&V)`-(x:O2uaѠ6p7[ 9:V(x%yʰ{)g;k` Т\Wh- I:r~ReD e{kF6>o5C{u qk/ PI01 u }e]W1\ Y=q6\y >x:Iѡ=Θ@*iXz0%EKvvQHw(5^If]k{(|!HrGҘr}7G=nruo$TDr #\55 n%\jWa?LWVɁP_m=+Ws/cMӀ& ^9 T,b fya)iݳeK@nCD1/8>DGص&̀0rȷtJJ5q U|omaw?s`7Jtt`@v/<@cįz8YO ®}XFt?:bJvн.q@ey i[gg&5--PBi$3MiW\S׍8MF(#?gоEz6u=:~\H&钆F5h9vqLh('nZ}=.${:Fm6AӽA촗gFHwr[*_c6kM/޴z]D5 .QBj}XZٔ)f\)bATY}PȮ>; ykV̑)7`dԮP#rl!F@qi ']5N04|G (x(@)L@Qkgv&S +%At9&DŽ>_{v8ү)@1u/e}zs~.QS 7IQ-B\vy݆8d_N Y-IXU[_%{;uyG;760 && [(RIymmxcke< p&<ˋkUFty?C( eDjSR8Q7TZfa__ Xk^ "Ѝk.+g4Qx㎞^PigUfߨHjUv?)[N9z lg{.t(s vM}83szի (;kwe Q-(sU% tbmpƾ2+oSjN(Nw5WAro:a{ȭa~[3ٛ|_AI^6k[#oa/Q%iꩩ`{/ɳ1AEhC|QpKELխioL3cB€ Kf&{W> (!,bc&*Èbd&tQHYu g`.PcE t+9 sd/3Z &}?[n*Ec묥"~~o6]Ohi&%D p_l ~$kxT #y믪Qb/7>U4?F;V07wg>& tS>dBS*x'X Sxd w@rpP,l*m䦽#RȣT)I*yMtMRvCCn#}nr'.M89ň [X=;A]'B(ILf^+LKN~ukj!mq&@^&YNw/\Al\jNoPW~r FdNy.SIeeRAۙhFĀ 뎵(严LLF("X <_\>P" ?`*xbD%Ĝb'&ԸwH -q`Z~0X:n!ap !˹sqEyf aʘBhڗW3y嬬Z,1Dn yL#k| C&`jntg Qcr_O"B*rEv}a!OЊ2`RĻ9kSڴƋ"@` 0K7@#m溵4{Hi{i_PrԧG?Ph9ñhO7h dcQ7,|IA[^8?٪4 ³'"TrC-Ħ|zJLU/GJg4x}ww_.wiZs,j `_Mcosa6h/LM3$ر( AGp+-in Xz@!B6XmvB{ y^S~Ք%qS'3S^e"mtMjءX$PUg/}4![o}VzΆۗD Q{\e eʄp~,L׬~/:JR7`;RE+l.O<ۨ=nr;KvHH; ڤ! 9 VL"ksM:yN-UQ_dQGwH MgmzaJaքVX&alJ5ozļ5I6:gхjb63pݲfѯf\%GgZC=jTǠzJNxv F0 jʬۃ%zn{/-*:*n:օ n*7M2yl:\xfXvOÊgfۗYwۮꂇ35V-3 td}ܸ@>@61iב]ٓ$2cj u#trF-/#2;&TTjʢZ78.<\%+%0n'{ ^łYLh% 3ljik=3F kW)廾[eL R٤[C 4E[:!fRI>&CA?(oNKD_*Lķ*5c=:AsI=B:^j5ɖ-p~A;):1M#'yrϬY3wEa"G cHI'9D1zL+.3 WJٰ29\dYGȰSk1V|#J(QAp"_},us)Һ) u_ܹwWe!__44<.B͛xV}{J4Vw2G&Ҳ&x4-g+%u߲SxZ(8 ,+b#[6+^~ni}xA&113C ^Q1mh.A?S%=\GX-`!@BB1SچzqAcRi`Ңm8tKn+ DG+Fyo@0q-kزeZνuwzkמȲs`<;Fw' vUX&u2 VCj @u63`Є5@Ԣw[PmqQ?Y$3>}RV"FsW}ZP!d* )"b~5ynЀsn匋n fmOs CXwwL icx<XɸAJİ ȿz< і?7y$qR?l$)UF.{9⫦6X2;NLJj3gs oV^ =DXpz<۱،8pEϖٜԧ^h3ԙ s >FT£1% 5j^m=wp-FmlLEpu6UNJon)A9rAJKMx8IZ!P.&''N#ޞD }1.Sd.qfuK띫Lp YhWBo%K|/U5Q'dw֠ juzѬ(8so% :2Db~}_+J{0˗wG{tx1xy a|u</5߸ [k]TJGab/WT!yL"R<^|olx5t(0hxOis5R~~}x~JU\TAS#$2PAfln5hm/} %+2~}|t+Vu:{_p5BgPCqq hbBJ/ 1*+gp#=LlJ-|*DqQ^0yü0\ij5oˎVm:k T}7Ez{ ol`# LZXn$8坘=#*|R UgH ?T³)QaEO}ڛ7DMs(zZIjw6L-*%[ qciZ 06c:dZKPOˢ4 >4b-=tRaqb!sj ,}ײ=w~8% #F_g$+$y!4OW~`+"!nT$ .4)ԽgO=%Z|Xt(V]a՜L@zC9vy*Q}U`6Qn@q}bp&EWCcP4Y5YuC36(; Jۘ`G'b:/L.gj V*v?E@>hwiȯ 0.! j:΄J>t94٣uvh9bGmu~lh{b% hP q<3M]A7nkoxFbi@y"M*&%Vi;7C rͩ!r&)p=To0 =*{)gk2XvGH,#k=% 3g1LB7Q֥,4, )5!k\Wy\J;H@˲mAC]rñA޲a{vl E1^dDҋJ^lc`)e߅c@gd@Kaqxg'D3# C|bRe  OBk|{lP\|{Kc`dїNI">߭O!R\L"tnw⯫&Ȁ;g w>m" ]A,O9%2fڝPl]ؔQ' =lN{c@DqٴTTfp.C.xFEDn֣8~""뽅j~U^Ubw*vy?6|'IDDo!:;0QLl;MVvvPc]D7D$A KO5"}(S2;))/FjJY(<3Sg L@ A}@ z 0:1aݸΧ ʿ}3a[|x$FR5̏~ux97V+Vnj\ G1[+ 3X57]ڮۿMVoy̦,Зo2>#TyېT!f^CpJ^w98 Ղr8VMGt4<";d3m' uF$ Shqw0?QhzxGe e@Ed1M ui p@i;ڷ4$y=kkZ DC~Q4@وC|{3%ef]9dQ# b0ZoOmkP N05ىTMwׂ.HУFRLT|r=omy+:)z]"UwYG;hz a᎝Kr-Z(<.{CQ Wb&ڱhDieKiBhIp`I *з#5׆ǟbRJz:? 1 ^ݟTIyjJG#9 )2V}enu?qW쏨(kcTd@8py{Bc]r&q@XFGɫ9g3jyb/7Ԯ$ŧտ:tn]&3j=7^ #.3gnzYq7ds\N53\rzZ8T~߶LJVX mp- ~ALtw^ݮLF,r)3Hj.|n PQt3hM*LYNǣ"%B0p M;5@*m\ ,r:`TMbtLeP(Ex0 )X\i勃Z4^4*yS6/W]=tycbvV63 *^7iP%D[dw;Ǥ>;iS_$YnLg PuS|DLfL6+;GPth.wPcm74p[`d7)wx=GG۪4<(iR/afӪVP~E8!)`>XpvdYez IhY[-%cWSN\߯f2J|F{rvׅ?廬SS!13*zt Ygĕ;9u~8jFMR*rb_U2̍gبu#Z̳18;Ma/}8혛-Zd;Y^㽋/,eSIkTHdybRʮ^%أJۭ"*z3ߝē*gt.dP@쒧HH/K?1 P=& ۳yuT<+ˌRgEhҷqqR8tyi-|ɡr%@*jn 7$WRLwDNv f`+z9G|^3 k3m,bj}3W&ˋS;@~e~CHԲ$@ X؎%ݛ h\э#]A|̅Svܛ|o"S/Քw')}_/}J"LK1BBjJ7K5cu.f7zUAco| 6?Ɂ"^}/sg"%d?M/7ʴt?@7Cгg w%D7O{ 4v澾bLa;ݟ«!fѰ򏈅|Ƀ)곏/\q>![R IR2opqr/'3||rd- a ɪ2~7͇֚!"wnإsv!,NWaKFIrHO Toyu Ҟ 0|KTlMD3i 0=^+6f4tD}Z=!PR5PXA{sYS"LaiNJ8*6B_y] -; ,7hkKU`$Ewv[(;DتY_twV)A&AS \)s=tb0N)f>邃+q})ɬ'\4ߕ,VH<6'戀$h ^ mTS\o}PFϔep" WL2D4AKo^zkާWF]L X*ɖG'S&GEkd:m& +s[^[sP Sܞ'Wg_HTf ńpUC j;*<q!=l/t9s%DCSJ=Z 4bh09Hi}uqsUK T9o6],]whBT5lT$r{̦Z0ԃB#V~ ݅WE9֥}[j㑓\r҄6Ќ'Uw*2&JU82aw4h}\sf{%ҏC$*܇*BAD]ڭrO,MNKVxhVs2܅p# M脥]C4yqWt* (W ( _Q8fa*a'ʼn "!4b州ˠ6#"ݠUč0mxjDq3#tc sQ}w"aCWLOdt $ mYpM5R,O_%01lQF쿒Eu`"5c5?25ZMk63T֫-gNxZ*v| Bm¿3J̜GRavWqqi/,KD鐄or!Lj+g ѫ14atkC8̀ !x-2Nׁ^"} 2g7m2 H~桠/&wP1GctaۊZ$4 l'mAsNX8Ma1Ⱦzq6%dK{t'GKf*ʪTe:!9Z28񁆁&kٔy_y)n:1O8q lmJ؅#6M.i/%Bi"d:UZ-%(= c<Kk#XFkW'&Du uԃT]1 d}h1N粼 @a'$-32S?֒-|K}]+sh`bh%YEhn*>6 y!VqR%#RQ0xOFsJ?p5:0a~mP;Vku<`E',=sP+)$?`_nJMr [\0śdQ_JS{Hta*&m=dwvGQuس rbW^q*3s~jYO.mPwAq^C4g|ԭ5BҬQuX696GGwMUO)r-퇘R/ Fė=@4wY?0װ,X(cy .D9}6#Y~?~$f7csړ1ɧҟ*76jDdhu,:װN.VU\K֧M7 VՔe' L7KPL X_ uҞCh a}8Wbc$)W !p1ܳV5d4)ЄcSff_NM80n9_YyTELc)} Ȧk{62<.pnG1<:آcsfJLZGZ0{ۻ3 Cg- E؅ٜ21gPUn\{h}PGmUᐾھ^,Dz|KDCFK=g>Hyp^q,/c(+ }8f)I]3m8BN"Um?1,j8p^ƚڷAڨ)|k/kplG|tKuo(/uCةKfh>.S`ݽB|?#yz =nudΡB>1t;{]ϑA951DRUBm!lS*KăEǏb"Ldhe[K+qq+I\j NQ`$Q(=ף_{s)Vb97 чUk#zQ} B "ē$RzWޖ>pĠ{-֗7 hDk A0~w*ֿq4LX>6'ACi^;4 8ij7lq꤁TJ6TbvކV#![nèUQe՚Tp\@Hр{8b^J<zEsY[|r 2<p*bnB'_(w>Zآ(rqtK7ќv|un(o?.JNVm Tb; 8v&aE>s/?9L$ƶ[wg4[%9XL /eҶGP) {/ 1 럣3 @C="3"GCqty`!uSlv694~8 )/0{AQr&wy5Ӆ/MA`6Vvsㇰir=z1Ր+g {PI zyO pϔ=Q(IA^9޿I2+KԟM}yr|hnX-.̦&K0>+/`9R:{M;=! JWC "ݖ&'h屔Pbd]C0t) xlj;0S7,tsfT#;ICa։zM]#mt !:Q둣ŀQ< @x0]7cx}y/+ʒ@O[V͠Q`y)a"7V-C1ԗ+{ f] 8* 0d0 O1'55z)Q#7I͞d^Aќt9`>QqGk: _j|@R6y%GC>a *qG> !mVg&t (4jM ZqsD`v\ѫJ xp0:e=9ՊBt㖐B^s6F.RTU`rdL7ymcsx;q;[~4!j"5;?A+uV cILd_C4B~~fB2lϫqׁڙZc(As4%ǂ5n?/O`Џ]tޟH]}M~&ށWk4Knh8jJ`T 5Q>d>ؘ߾%/6%gh 6[++uH\6ve2eo(ŽUݫz|{08? vR=}fiw]]i31\u\TjI !ΕIm^Z,U_e›&e@8 Q!'>-b^fɞ-OdfpѪX#B &(\Qbl)=Hcqyi4y!Tn -_:K ^W6׏??S1# d mo*d4'.l1X|0 ?Qޤ=ozA9܌Ь 5aMi L6_pL0?6M"$ zc5o AM{÷s Ã\h]sT߯咍(Hl.^iqrEiVje읷 ,U}Qh)Zdz=YJ%:3m_*R h %ET 5ʢ]nqbו1bbִ.> pPU^\C*Sj}8 \sΦ*s^>k 'ef&YdIkƸދxn3[|tZo<u6o]-8ޚ沒!gYزCI_ƹnn`V@KpwFIk)=?B?\ dq(lrAɓ.P)Ҍ(ݱ M>%۲J(`WUW1Ɯܭ4ؐIoߪO촼cc&t(WL}֍.QM<[yvYX[ɚN ?3t^Ky\M~tP"m?:B9j|8dKW6A6QL'ӽRJ%\C3oU'f%JqcukeLb|Ӻk-=5*`Q?цN_btcp)-$|a.]! \Hɇ].H ))-.hb nP߇8'2R~ A$g.s`MTk-W[PO{-L-dɗ,,:!1݃vk,6/yiR9`+.JNyn&\(X혊 :7̥η9y =SESs<ʦ6$c&nXI}NUVX>W"bFݝ߳HW@8˲N3HȅGެBt*t&/B?*W@|zR>5ߏؓBé+{4dOl] (U4%kYi 0yruVmo|Y@?!y-,jkoxPŷQH2y#*d-\׵+[[ h֪҂ؙRWAbE 9L#8 xCU%$J®_)RT#vk%pꆰX0;zXqS>[+=m4@Cpϊ?!qmJTu< QW&T[N9Wd ^1C T`WI>j5BQ4ѮZmw3uM r?NO/ޅ'H\CxIK9#KEHC[ dv]!Y^h E=wkr`Kj{2_Sʚe-.fw 2$9މ[rpM )hpY,}} *mEag3_'LwJ`CZ]|pia7W!BT-&^J VDI z]pAdKlYKa!dZ'W=7Լ^7v[cK! YǮ]e? 5wW{b f|=yUPScfi7X\?Z,Xg6c'm (iz+4s C)[u{-"|__B G' |uoֺp5؊VBuZ&O'P|nv %ph/<#Y )`3Ss"_f2\G\F8e=|s{vRLCNϨD#+s16(Lz=: 'm >;IY{ hǞև|QDZѶӓ@Ф4LU*^)ɁB&+. UP] A~+bc# d',p)[犱6Ɨ/?>ev2SfY4I!$eL\m z?IGo^!,^WUZ:dKIkƎOi`GBZ._ٖ"2p͂EA?77 OVd"5cq{7{60 $\jZ6W 6_9̗m+$U8tЉdF0MՉ6:xiwHkjQ`.o,i[ whZ^b?6Sy?TOE1F ib \N(@׏!Y[65#E3i-=n[М>*e,%u*u#oƒ39r@g+̐:p]Zz9w-. !-@ laEtݢ#cB OHu~YE;hWyP}z,d*ݼ"E ֮aI+Pa>LUS|+ j']瘛쾓!U;Q,; &|C['_v/C|7d2n³Dhxݠ"UO1F|W8Z "IժKSxd-Ϋ+Ңd1& cBBXN\v 5Nb"VS8@R(_>!kh k0.B=|}eOU*PYOM1p+~d/,A& >\(aRs #6 &70y:Wŝˊo2Nw$7חlQmMF-nxS2sr[ U\zzse )[eE|wJwUn.4y:~ dupr;?!++>O(#@,G9-Ţ<:Wv3}41|=MdbȞ3E<4nڀZ Fxٔ{`2n1Q݋}S7<]Kc qa^Ai+|.^1(=Z1oew|\*WY{b`Яgw!-{}|S-}C򚰖 Mwe/NUq}=9xotщ %A:+CG:a'HKR COMwu<8Gcw{.@N)S#Se@RC#)F\hib*su[x۶K@x?MQ:zz>GºmZo+ 6Gx`Ff1 O/ s#W7 R}*De80|'KX`"\sZ _"m%9:oI-eL$_)$a}l?3T,)p~Xצ&|H=xʁ0VC4' N" Q"ozjc l*4âF /Z˽TodG+ŽEX}5H CPK#Rӯ "T v @gVatJ `g~Lg>-7<,۵0R3 i8YXF ǩh/rQ5E5:F9[.ݢ=II6(·'('At04+ٷʟ.CG'FBJXԯ:6Lz-9pyW'B[Z50㿸8KxoinKPĹ{1jq9.Q*2YsXX/(i72$R`>9jȚVD/ s.T'J,^R4cʋˁ`M.\e|k'(_ a\c_$tCR)ňuS^ xP Ό/8o(X4+(*ȜAH۪.*^RVEMq4} wsqFmM߂Ejdsz0+iKA.o:dAf/K?Ob=n^50&Agsl[zkJQ퓔^Ԅ.> s'-dj̘g/?]LK+f-Pm%A)]ʩDޡUSU,?İ>BGn5%f:猘Ry<À sBsdeL$y8kl4ؗcÏOn?iWS^'sG2nu}. 㢀a>w7a1$hoZH%8Vlk0)]'U_ hWr.tml(}ANn=yCc| -.JHRV+9Dx͕ n#oFatP z̬7kVOaX; LBnn"y~ %dKy1@Cu\|y3@ +A(.̔ھߑgd-ZP\Oyh\NP"<kwb1ͨS%̤ =X-x&+],mڝ$!k.e˃%g1󸢡(DNiTvJoo; MkaQk:ѼDU E5}o}8[N?2*/Q95ʶaXӚ >a$q.]i7E V:^b)f"Ir@g wչE՚[ Y4bL`1uGGDrdT%Y~N3L-Q}7]9 Ю}:iW 7*q񮧐-H|>S_TKjLq,"(h'[3so~f?lDupxx"DAR\bUٯ8V'߮i/Lbl'l!Q AL0a[NҼMXNU9(TSU'ulclc]ţި X.EO9ʵ=wd8[Z8K@">ϸ[:<;+DxF8OaI}!w nT;k%RfIݘoJE"rrZ 1 yǑ\^NJŖ,2TԉP(# XFN(@'ip23Wmwjr{nYaӭUg'.0R/'AEL7OdU>.dfp'I(a9ήo17;&4'kO=N@"ڈ*ʾ˱QT]QW: _GjdZ|dk׺oP"7%T.~U!?AM{,` Mjrfto@8xwfAbzQŭ ]`-qb1,S^=*U i^L .*׮%am>)m zUzl7GK)ϔ-IFZqǺ{E>)əC_>1ۧX^ ˸؎> !zWall0lMD(O:~⃚ ɽ^}P 31wS甧7vl(X-^a15,E} #8P. Q ӱCfJ2;8KR"ٓF{r^)-f9H}XXVC83o| T3YnQܡք,ߛDJU"};iP] vO ('d/߃c1B6p'Df&]#X4b&b[F}Ŗ4]p;4rP(,^2BTY; w#FO2Z%S}}F7wb}> :u`_|ބ%#LhXة c/W_! C|KD^*cQSS2*sD,K@WAG䄕t+VU*k%V!!aozc9(lpɆqw[ e^(frOk:`#}KfsgFX=㨹%{aQM/Gm_XSJ@YbK[T0Z^ P~HNAТQYÒ5Ȼz uR6)텡6X q˔+'4BrV,&ӳ'3/8  zw#M89FQ(m0X J)Nߋ}f.l TA͡>5hW"v!>'hn$P_qT[')_bU6z]F3TQtȭjQ,>-e; ,BZ!L겏q#)ﷀ\N,)[wւv͡[f&XjBvuH~SѡT)?TYy^f$  }Iߣah/BgV0yXx}_sɯiڸ>P,;1tGF>ޗJ$}U)pwx> <sP#ALZHpL2;d7q $?io$xvk2b{1ɹMl;lOx@pĘv/h iPj#~~dbQKwϸyA%I Sh^an pfJp~gx suu ZEldXy>2` `O׉=Q68d?3dMqgs4JpR΅§N} m7s0oɋ~;'X޺SjȦe߱UYF6AґkYbi]Y#ov$3e]oKQ]*] W#?mHFzv(Pmt^ C3Vx6 ?I SF_ďj_FVaV԰s42/qGc!^S3/gC<0"<!e&&NnMv (]{Qj6w9~EkAK|cGHMDz!5CDޱXYٳ5}(eϲ 2q݁x:Zk(TPo@QRt,6"9ejBf={n3K`l,:XA[*ku Z}76,̰4SBflx]ld̠OLxI+7G-2_I!%(Tk6GW+ (Eru E_rhN".o ΆqpnpйWB?ѧgp̰gBӗ0QJ=Q]{VO:_*D9m<\六?]ϱ`̈́N$ p֖I+E: tm%wQ#̦}?_~0MNb>ɯ̹YgUaܭ$k8ecD0~zVA= -za\[v5ԑg} z}N4ÕGån@gqmoee{%DnZn 10 d~ MAB Bw=WjԞqQe,[QwpYJ䲻$'1Y/ݏY8=HFM^#g['L>u^6-݆qL̑'JOU6UuPP{,G93mFÉ0=U&GZwbab6d 4d<O腝BRt()ZQ}*gCv! X1F, ;{̩ &` ;rfi fFit]r5 w(4П'Kwc uG^[Πd[H2 {]ˮyz T?f^݁j&V}:5$=TAQNP<>q@rZ7,[u6 #KRyy%ԓapcevs&oX"ԌHm0qo$U}FZþ.0bʟ m7 2on CgOQhn54. g: -Emk dƓb:S'qÌF">LտN$=v8W~% עrW0WЬm0OOth%rjpZ2weNK]B!4p"ZE;GM)1a}*3V!>#kq/ev ?:8/88"΍⹣j J֯ ohTWmK2)q*kնaV -gc3AB^ȏ"}Pvki1(ThsS=2[Aܜd2l2ClE3`4[* >n[2uZsS.DE0q، 0l߿~/fwKKRl )sAdR\QP;ɏu߇ aa!_fo݊k @L(#'ߴ)!` )YH|u]5ǓVE/ild}\M)PU/I3/Riꯁu5q}`jgsab_K8n?nXL5~zE=Ο '/)(23/)唆")6@R{{;!e6O~=jdf,CC{+X'&Ip*R9r꾫ی|~,9#=Cu 51WD|`|;x5ɠ Lw 4=ҙʼn^b@9*pTjh8 ?=ڰkP@Ѵ1{k hqNsfAׄv&1 pϸZQOQOlSk;(2=fz.U$foz9g'&{Le_r;~υ}܅%b2 a%Ha1T'}POo25_\4)ה2*yV QLbמ']Q|k4O;d&nfL=bP,:_J{ 4x@.viUD 9p*<@,wG}φt|7W虚LA[疄% Nş8E3$z38pBc*( 3,JTnVAci37^S۟2,dnƜ^! p7TXoJB'iyɅM6{ʦnelv 6ӠN&Z ܽc]|Nu2]ˌ \8Gfpl7 3侈|pU)lqRi`lb틷<קGv#`mqG4#4̧'B0D@p=ei!4*)*aJX[U-Iien[[5_7DviAC$GܳG5+y zPESVΠ z)ݰ_r\McC͎tlS+PD Q9F=D#烪͝l} JF:`ld¢Q<`[ם%>]~]9 bʥf;lv鲅[Lgk|72a  tI,k@Q2麛س1tcލtotܵ2HEkż#\x?Ss#]eP200T&+1wk <3v5FɄKYm jwMG͇U yfWJeRHtԪH!d>]t| 0Hޭ5cgd,Z"]0d8z- x $ ,ZVO" ʚV3)`U8+'`اZq`( kΥHGB@).QT  xH[[L_^-Gdy9Ķ,D7Dʻ}e>M^2'R?-zgk:7q6pHJʹ3 i뎣6.L_\C*HCp8k$KVjHCp̾ʲߏ=at쫼 /&dz< ."9O3Z};׹E*1>.߅9$)EǩbĻ_أKD?M`cH$ Z.+ &({yadma^45ŹW] Phٖ|c,VOݓ#3" [1>8wB9!uWΑ``VDr8vM.~i\]?yճx2µΛxܰŵ|y4wiR.FrcrER%F=KC]/L*?muI}ֿtr* Vk8csZB?C)(_kZ 2(c$YTgh2yi7@BS/rۅ~%DzqYP8[;c−p_w\AE Kd"6 6+֚5 ~sMhrūH<7Q pI[PwId ^V+1`c>B}PE`3l }1JتV.ÈRۋl pz_-/itPiN̻L*/ Dѻp#x 1!Q :'ۺ^\t(t;Iczvv6S3fra…)# z)f2K74;{3f'd dTPnQ1PzT:X"D216de t@UѲ v.xzsaM0mD a-<Оn:Qja=n eťBcDvgVNqկuُ5e—\"qC/ tF;@%s'*kt+OG*nh(-"մ:OHiwcnfVFžh:8zE_ P H-4OiZ6z>Ъ5n5|HD~G㑢6>d/ԻTy^UՎ0e=͉U==+,'=g3sPb_ 1?llJG 239M$Vޅr&kɄZ?]]TcfHLbG 71f.>H B<{~*<؃YYT*isJL_V=, hLV?;C'8r/}ƂsؕDhơHnor]F 񺘹 #;9[,|`%p>t -t^?N2$zGڹ\l00c"54ݑr.+:= 7 c*mKހWqeX1|AuMT^ZgDV G^cM&9R?䃗?qhUOBpbQcz'Ǯa%}Wǣp9} %=0/)Z9?v~P}\k G_-c\y̿һ:8F xǻ!Hjee`&K].߉afQ8'/7M4\QI~.@KLQe]; 8[UnPm64rPNփi)0 *ဇ -Cyr&EBtœgLˠ_5OXPU/P1{e e 8ݑ N$ ZtGn g9;Ň(>F .# f!c3SKUnCù1(Jإ$n3י,ׂl1) c魑9  BXɗ -%WJ:=q4[ (Crot VCqH|VƊ+nnV(MtsHJv=32.taAC%b.M3w`#z ;[Ihશr12}&`E]ceXpnƻt#+xgן4 B37#:>@<+v3lzev.Z~@*/)`!\Zq3eV[ Bpnks|R(I 8$ոJܑPO0#n ([0dI{Ɏ2|Co`5g tғYڂY;r__mG3DKm[K>͘Ñ;6`mҚp(Ie3Aժ@rjSWZEH^.YRUM)OB&wM{nOw2-ÿG \OvT,|$籮TԫCXEXVOUO=b(Nu/CП,桻YdbÂ=$: ]P'Y ߥM/NTj4dl{;ka\b0H'蕐B={3ޯ?0_P [ E5;/zl<<؎Z2lw< ˡS @[:OQG'vU\f pAXV&!vtĽç&-!Bagn1i#g>Z<;BʤQ _RӶWc@#Uzk?;Б/zk2G52!YW6A?tp2^Oϯgh$M))4A)X%vzy h.vdރZho9/$XSbmhtZqjq a""uЂkӁLnFED#XF EZi* <cƤ]k2%0Faods4RMǑkvrlLtԒyۛZ^'rv֖A䗰/2Lڢj؃WM#L!a U=.ERuʝUĞBL}^,nd |b]hQMh'zWTP']3YEdQ"n H {M}moz9 ͠㌮ʎAV/O kۗZSϪ]-B*^ޝWs b)8#)2!['taIBH5O(Q+49 #yx<̍B:"Vp=e v<61B=FJHFmϬ%x';?&55On\h̅W54^Wrs cSDp 5~G׵Go a G,HXzݹ.cR]Q9XgIk".6CnfvżX곞r}h"yU9a\q bBu<_R6"ǃ#gЅ#1Ֆ=m9&dJXT95x/PKz WS^@pcRVJȌjo6r'OXweߥuGm#*,& k8gAwNҩۡу "ɔ%}Yu&2(!u;*&!Y{Y2#?ai>G0fx*h&:R.id{]vip^ߒ "aqW~~±zO;.GwXVtqy[ҟG,ώ{eRX^읚<Li9ekI$wCs Pv( hP3-KoMWͧr3ySAųM,3]Gvz}\,"ZZ a{BFK{<LET͞ue_jQweA8FYI2fM4烧Xsi<60Jtvs:f@UQOx%?!ű&”Z]Bs1-v" /rOS?H- 3[ S[>Z U #i-{ ˶4! N<^ EuWM{I"Qt%qV2NP {r&MS|R-ȹ4jec1m+>`Q'[Vğ-3ꐙ&a pE.+wn {dCO74EQ؅PzX=@~2Cy,*H']ws%&#@\%yƭYKP^&X*Ls6?f`Əɶ=a' Mr'O$`0ԲFK~B}mQ.!yic̛Yf4clh+ɭr@w 9OX6 .[sH y] bnP.]C?zx srORl,wax+7+ju;|.qB0;R[c٨ŒЀ=,zK<,EۡK`|Q L %Y9 72gH,jSXWHk5KjL" 1>y }SF:A.䟗ș,Ԯ f1,ʚqd|Ov:LܔB(upWms 8>.b~wT+\L _Kp|mo6 IlbcJGzBSCF:r0/q8Vi?N#N`:U-[N Ov^pbazqu*5CXȐ4oLʗ;Sc02Gs豄 YPSePJ{wf]S7]~4OH8Mg<x2 2W7>Q c8 NJ ; ]Z+9kȷؠiMl&Ltk񂷦tn/:R}*x@0)AiډwIQk`B~A)#r93ˌpmt~yB QI`,h._,%%YOźېf υ @:ɽ@]wbu~8}]"&0#hIxP? ^,@RSmS^#^PdR臚7 { iYPY^K&voG(ph{Yޖݔ{)AtZ$^R C]s2ݒJEL|>L -~~q0N=^s*/f#658bx&$k۱X,öRp|Dsg}CϠĂ/+UGHV4B6grIa(XTd-ۺv:y9)LxdV`7b$E&n;-iyVؐhԫ*..OMGcr: >yuђ7`ZjXYR¨BqG OncR#AmbJ)~V9tBMwӈ5A&nǑ#V7]Y^\gX> %p&[&r^@JVQ ]ҊԑE]Cv(\y]2n..[^]Mƨu>w/EK5x[tZ5`XFg3 E>:+*x?s0؀fg,6n6״]f"ﳿ۩&hߔ[8TC2sSw:_g]u ;J3+N[ XD}q$ߗu,<s{PN}i拀v/Qߜ{vtiH%Q'1.VԸ[xIn>cObCG_qS贮J;m%u`9Ryfu0 `&u['R꺙b^>j {0؛N DJ jkᠡE)%%)OYƬͲF A5IH1? u]Qtv~U),4y>.,"4Q1+ ]#9b[<%J|8s9cFfk춅a,3ԣ%yf(`Fv'JBVGH6͌ c_q[Bujf4j'#kb;8V#^GWU:5w~DQnxS jSuS¼wqv"p%7`ɱ hkvlDIs:0~, /ѭ8= MXg>G$$_R+Aax0Ocm^)Ű!lv?{dz"Z4mrd8Edl2xDW`].bRڶVF(>Sn) U1qQ-J$;C_% -P2X9@Ӂ$mw]iuW+H4r 9DWg~/ `9 Q 7ε3QĻt$# 3dA4 P3hct7[)!]o:LXnǏ>ϟ̌L:.fz2 E*"Qg4h-D91BP_l0[Groj9M-R:"p󎋧FD&j1iJ)9[nxn6k-+|.,4h1PHBjQQ O'o/Q "5G"N(*Ts `1Mo|V !t+?2%scEIRgu$Fr>TȻYKVt,smi^ x0[y!kJt ?͉r=UR-[1 _H%2[|# jncO :(W̔8`bqLc}"qyTEjD#|9*ʫO".6qݞS~K9a\K3͢8T+[ e,?vN[¥LRtB)ch weSذZ_%mwD"{Gc9זwT%& bᰱ ${Rs9Ψ@1<˟8eַg/w"3ׅreSM{1nD@^V 55*JMo8%UDEC.vcNi4k:XÓ}V:=eQ@hʷ/Q{N)hCPvhxsi5S|xop$a!@yϕ: &FcNQ0۶KdQBbX'lѤZQǚI4|b֦}u#_-uf 2c(z5U#j# *FWt'ΪrC05L<{Ϩ~I_\L{0'CGX%mIS"as{6b>X{$y$]DNJ%WۙmoY<am p0\k-EߤBTfOlхI)۞/ 'c3#6g}iLW"sCwoWXovou:,,G?kڊ̪ a j;ÂQ:l!0WtxuG\&@ tsߕCO9tC Cz 4+"-HҖ iPy|O1(k *h;vo\a^^+Ч*txŷ>-P>K-nx/}E-W#0a :ma˗(̈́/70.08!{Pdsdt4*S=}L -$oCwه*:9H+w^]ezDoj9x>",ʾnb;rCCWcR)RÉ!g*dM;UR4r+%91$B꾪;@b6Ik1 M {;JS5]X[±^@O(O F|bg*g@\@oea$*5-sץʀ;78%bkOEٌ+ʢԌ[YI(*"8[p+Oμ̨Cݰ|ݴX.hB߶mؽIՓr5j{.*Q+OTm_;Hf:d0O'sW2hG"wS]ԹY;dQ;zȫ.bEOM6CBo<#Bi2a2`@ o+Wk̄V?rh, jGFYŅ$MSҟj+:3d7D a dQ '1jNE J8!}D+v̮dfwఛ~zz߀!'}fŭ䶲Ity%W}&J`Y 8enyP-i|g*iA:e׋E3v: ;]`̍׌\߼D'=Q,q¦;T:-i3lF2/8(I<|jc㩐WwlVugqp3_L!Q{0/f pj,}GR?ъg/Q P˩NNlBVPq/(<ɹ;1DW1ګB`>Y{(KME"ShSu 3GʺS5ѣ Fs}Og~ >д& R֊Z(ytlPF ]vN{^>/kş-TW;΀ Gh%c5b_u0Y5킇kQ|¶%KTJT q8Z%EZQ{R+Tef!S``g ⲑG'IndOshI]}ZPxpHNx T㮀 0,J:L'<}IJ00;MarEWt؝_^sR3K#V$2_K=~!^,uB,xep" N2]A5Do2GNS 9M\F6%C:51o@pIq #tvW>I\2]̇~=qV<|G=Y\ Y&e4MH6k6"W6\`n;gYUk5A5 EteX{]2Q@lGCpLGmF\>_C[*@m(@2Y/|͸P|OQL*s(0}x"W=qtʮ? rWMj$k%æ6W2"-V_ 5CEIBrqR/Gaޘy_"}~BcX?qX$mcKapE)lַ^/#5p2^"uAR kC+[nVsRDK`&O{XNn> gcj@ֻY>bϢF1vKB|̃HnR MeKq|/3AE'E$aQFCKL:4vx,:ݜE&jSVSH5EZ ÎsS#H.Lkɺ1\Ċ7 1|%#VKWX TYY)NcNUZEi5WBdjxff,i&bpL(ӯS:QK.OQ&#}ŷ֗UQ AM5pɬSJlv2KHuߏ1ᔚxv3܉AP:+Dt1?}ՍBΧkG y S$4QZ[q2$eE<\_zw!ކI P+u$.ކ )]Z (0=q* t`+)6~-x}kz7IַJeW` PL?lPJZoR+6rD"g:OA7y5VҎ^y LV'pXNekgž15/äC OPӦ`71h2ke/p>*ך6\$@,!*3rۛVdҾ$1|bkMֹ:}5}n?Xqưȍ -u-~X?m:Rb"vPӒJJa產֖T<0:z6Nt h υ IĶdx▃xhjt}}[ 2v|t.HyM!;Dz:hX.e_rOQ.Exّ C=8#ɿ Q V1'^yOI!g!҂#>ШpW2=Z ֽXHfcb4۵z`ce nbhz*i\0$PM9%sgbtإ,|P9oԏ-:^N#O,Nv! hl*PD$&;t}T墄Z ۤWtc#$~r_ <(q 'M Gћ("&6")k&@]^B٧ig[&E$nM?-gjp6L.rjK1yQ'giGva 7h~$ $ngNb=j=H+73%jU j\'3 -)}LN z=P"=L}ϏOZH_X{]sg7O`.bsٸ֣{8ݦf 0Rnj|fa߁#\J 1T,kvFSx#ye6ݖJklIvPxR6rГ*6\~atP,Y-V i\ XvE*f*2^m[r*"F'okDyngf_ 7V4wXXs%(m[sR\)Mi͑zLKFE&_t5ORE2XY15 1LM&`OӇ~S3 &1!,O9Ra7f]BG̽TåK&m3RvlhD9g5ӷk-pSV{y3F&|=|yTpM: ) )nk"NG4E3P R:9-|oux@CczgGH6Z+q/Q_!e/_PM?4e9K6.j</ZF\B_IH~jv-bہ ̒4= ğ->HCY9L?i_ƨV'CX<{J*8Zd"b?+z`ԝH-5r_;~6PōV`0oov =6to>yA0X:g]Zk JWύ{ ?C|DLtҭ].2= C]}n$%\gv(h;/͎a5ppdjэHX|"?_{;Dc%/C^XB!w[5*v^J]:d^@K8h=x}.d01?8ݤQ9#[e)?8+i?}8cAx診^I#p( Ewa'"搵5d5NV菕0X/O=rZ0B8 ZM1|g\ނټc)wB8/N.oTvSC0 -xF(MKrznEp2J  C }]`YP?$rCls꘏=ٵg7!|U0:$[57Ay{r|2yyˤ tEW)^gM&ymtuы~]#yc/;h藰IX襨St !f%BsSh ޷h{d`;ik.yMWo3K fp5UTMH@ sCi_ 5$)'z:1ŎBvmH8m2%+@OU) 1AY "~ma d0F_H² 5S$D3[ܷn 8Ko@ -+ط՞*+>^t(@b,6r;c}jm]{edcG֪ߟNhǾ.ԥskIݎ&>+B, [ N4׾UiqU(—$:E=/*yxnٵw9B(_}HV<9=(;%>* . |eKaLIQ.!>KEժZwq/ I$Q$Nt@zc:N6jÏ gt!>P; {[/1KvB6oALcܮVc"3% =S)agPFoz{}<Ws㜁,e-@ vgp;3n#\ii!$^oD<%"Pbք=U1my]NF)/#᧷'kR vф10s"өX6I⤀ !`m2rv@@,8u#~Vs m~s 4ȷQ%*i+X:}Xi?=A9~6ʓj=˫xЋX;Y~0RLv!(Kxj!sBh վ(Z{^څꀟ 0ć?ʶK(}l#;rGW] [O8XZ5s'.֣rMپS+ImIMWװdxj~%ŬOrɭ^p-cEcݨE͆oGٳ,G]Jҕ #O(~Հ;IP\`v* (Flm+&TͿp$L|k\o9۹&uzl{+R`ݒH,n۔ ڵCLO֠kF:6־u.)/^TI9HCy,]b]8q,8OhH9=!DU27\,0 (q7^:ϫC0NUņ_B^_bٻ$ZUWa0e*论!mQc){nk`9;c(|wXSn| ͓lW[yOьykFUs9s])_H:N@w,ԻY::ZTHOR-o[eNeRU~T\)GAƥ6ժqɮY\>USH>297KH/,/31k<1E]ɉ |4hS e^lK7~Fds:bc ڮNa=P.>E<d[;K65եk e..&>_u]VsX@yٸG&R_ s 1et ;QKYA=y}+'!cSrR۝&[͡7œ)< !1o%s.|]CpjEXN'&ZZ~{2UvF ^D>^OO` styF}X~\Qs;t׮1=5N?| mi I R|dx>*YX)sxt@ʚFF\yH;7  s BD)!9!2ZXaZN%dFSdf4UN'3sOh- &;&P6 D0jd_Ii%6d0Q Q$5~.g=}rVh WQE3rc11\]R #5+N8|39l=pU1lu@*8c䕗=nmw?߿kݷgd~bGtGcqF7ӋSAu C_q@׽cAv^@m4d͕H5ԑRwWO2w- o)XTz5vG~K@UfzZ̖K9ͦr=60gx SƧ°qRbe4yھcus_lp"хqp NFDS+q2~B`tۦةW&󆍥ۿݰ1sW̯{aQŽyNW5nqjZfNC+JFfTz_ 8l3~]<`s9) oK(_4fi$Am38[-k2;F5n3ncL `b匢55q E)ަܚxvIzqB7:bl:g!;6?(Zq- n4c5Yxr)czdrq8}u]1˞p8 Glt쏷#]eLYq$9?Q=.F$J7$%rK2DoSč(bdvm^uܽZ4C脹D>+=--3@@ۆo/iN^S<ċ.8~*cNZMz$ Ch=6b -'Hn\/c_@]t˝?1r48Dk ǝe N9btXժw}s|㸪}-NrZheT%p塏N!Mr5nrpWĚΨ-;B,aY^>Jj:-@LW\wϦ\FG>=!8T ļ g  hn6f1,6muv:eeC5x4 ğܙPTz E r0c@*ZU8R4$HpޓI2kCm͌;Sء}RD$rEK#S .N$kpÏ]Wj< z5gʮ~yn,}d TysN/k+Ce;mS3,7 EB* OO˓<.h,_VV)iMpu&Zj[g(}ςt>s|((VNV1_>ww}[wji㥀)iWT}]z XHcY)h%Z~IgbI.)1rQjL# GL*ݻ|5=,M j)8Z>I$Ho=*0.٠-և>$ [A {7:E'b4WXں@l:M3M W17]*WX{ɫd--A\~C3  Qy̍%3sq:嵰'iFck1d=gcX8V wݡ,jϪ~bk@o!|l2bD"ʱcc0tAf\cQfѿfy.8zgD[0M|)Nܬ8_"(-Gh@ l&IRZ5++ꢿo06ihǀQpkVjW[? N,N7}&±~A?90'0P>[򉋙/IF^sVJ$EtEݪR7Nr?pk֦t&4Jr>|nn"R/g9"F%K `ۜ-)1"g@ÆtFU].=<"BmaotV }6.,mȤ {H@%N}rFKūuh5G=f GmF,)(h"I F>%a&G.)ɚ.i^5}ck}خ;.eO-k0.П`64\ ԝ2s$Zd>f Bg6ӡBڸN;~B' dcqI+< NBZxCA^ : eʭ3(՜;l 40HxNb4#H&2n)/iFS#6wVfa\_*R ';!˫~yG 0E+UwLA$-Uv12ȋ_J3dGbFKm8kaxMm{û #-5QXᖨ"\Ū\] ރ-kd́rߢ'tfSBŬ;z>EC9)8%W!؈˵&̩ <VH2iWZ,u]2 KC KѕzRk P7#z+v{z{ stT/,J4ׅXէ _]rPZZ ✴z &jV?*=y*p?7e(D I:OUS} ey=];UG=}ӛ75b{\_;ip:ZW*":W nALc2 _7o/ A)g'oMɉÅ=`K2s l\ jOK{Pu"4XM /yj9:e&ScYq%dtS-fr/ _Gk|pI(%4=.TAie6fLM)dC 1q=Y mÙ:b/Ύ ZW(N$ic6⛋]ioE6>c!RYo޶4"4Hvƹ@3d1HI,10_ }kg`=SRKYwe-F^& sQdɣ]2825:j% ozK=q34=,\onjk";j`o Y~9>n^ Zs6c\VM6-xa5uPv;/:#NZj߫pLo}?@ 8jsR zӺ<ɑ CbEy`|P%/ wu8@kW fUWS+E2!hL1G^%$!Mh"T{O͝Rxb+CD/1K$!/w6hXH OI+P}d*5:uKij?rbcqG Q_Lw 2khJ&|l E!zyp+>o0h$D &ESq,5%z߂´dcG/? @VF f+̡oTW?@>WLp.1lOF!JۛL 8ܒ׏acg6n 96Gs 37cOubGG 9[Lw.Wsн 3TqU\ ٓ/?|,'ܤ}u7 c2)tA4Pb6BY L炏w,1@Ǡ+9b˱(:Mfy 3Nmȣ'QfEU}خX{Zvgp2]BҨQ5*}+bd12hPf훹T.dRMƓݠrqnCcBCD]GF]i)#k!k*5?,cv75y&)הAﱏ#cF4@ }X-n(֮!MDV+Ȟ=GF'y "  &*W` ђu~n?A}k}H룆nXi#s:LwxvFloHLqI$;T,{ D%G]FP=ʈ."e(.w!^==0Xzw^#Pqx`iyBg?E-s!Vh ـ4$UMB3E+r+Ln2O|{PqFxbڍPʟiF"3_9Wbc*OVd 뀹"k6/[ v{ %Y "JNkJSkt;|8A <ԙ+(Z{<ғ՜?*6{~p|-y +!0DGt-_01z7`7BAOkc76C1hewsZn(/zzރߗWc2F4V^rwBfmַhxۚI(7`Y3?Wl|+ĮE^yt*D<ᰆxQEpxǩ 5r>δ/f3|YU4z7E=[ᑅOŧqO,Q`,sr^sTⓦ6=ctPv}szIA/3CBbܤW R&ԝ+yu6u+\>W/DzP&]ZYg0_BE]ܺ:G5) Pm_%;@pVmB^M6(ط͂@,e0<ۑo3cSB B\$eix3[Zwa-=V`ccװ|7.g-9ؘG3ޘ"^O*:i,M5r_6hSh]IKQ;d۞;o+\bau8O(ePe*UK@1,68ԍ|/y/^VRyl4#=H=ΗGw"߰A&̤zVDP#=]F\_C:>aʓJ+AvPoʅ>2]@)\G򭔅zQ$ os*u7d*Hd.妶{r7R>*:ب0?,HDu&6~,|itDbAt=TQjjJ!}]-!͢Y-1냟J%l~1jy'LFREw썯Kuz!_+hh(m :2ţ|d"&z: j=46 ܮw<tF"r^1VSU=D{.k)VHXHyII|1弐*an\]hp"Mc,O}JD}\IddJ96M3'46jw"-S^]ٲ!Z(N9kg.ֻOYd-3`>EIY2ۅ N3Y9Nt*_gӗBc"=6=Nc[_jF&UWilcvLp0_Ez띌3dK0b*2z);_=~93ݗR{r&<~*gx[/%A7-2d"wʢ ι4 )erV/ŚimM<ڹF//x(ۉvpm7s_@=(tKfݮIB穮g~#ϺSM`M|5 X`Hzu`>Ý$#yh&T K[ %gεX*5XeĚYp[νκýUx 7 ?1o|Vy <u6Y$a:CSt; O/8ӜF #툳cG5KʻN}1=q״uH_i/1:.䔏ИCj V$ek:dA">-\b CRFbx9K;mQִ$~nN~C[:z2*E&P^+M6s$?=(b}a]%]Oa˲u=1L*n[ޢ}QW6M+sW0lH8ޚ9 >jiR%(ɺqm!H6*Ց`.)vΉbֹ51Q[٩8-=;b%ĴMa^ܫ2 q\7?B.ʟ(a=ڧX|}oʳc(kA _c]h,Ĩu"A)|*C >6Ek|8.̣eAt@SvF 3p,jQLZzǍ: E!Js 'q|;eJ=FNRZc/g).kν'  y O"<Dl3Y) ^w^0~dGQPpJ3*ڏoX;Ddo2 ޞL&`$k5d7((69B~gR⽵?^\/ iaN6"x? Sz)}e˔U 洫 T*e3xcoSª%Nv Ҝjl 0FJ|B%~ 0džQqcUQOƱ_էB ӝJr$de NfK0F ?^A;#\v 6돿yTLX}@-;P8Bz eEQzD5f,޾4kc$v/O"P\V_+k)R Rokuw,Ŕ9t^ )|ځilԙ^\YxsooSV)z&Ҩ Ԙ 2?nR-{Gs!1g:\38ol[ ^">p ꓾#t]Ls׫ǡ>KB?q6xh,+Ej&&iAOh KtwFTa.Sh`,7 J54Z!go(K:@៭_oiLW;ߙF~RY=^=QdoA0`EJBR[Ti^IJs`֊Ig?r. 7%36 Sn3+ seN[F8l6߹"W>0_ k,íQ_.%x) D}'2oZ[?|- HDHݡ [r~]eIA=Uc?=QkTT'eY-.>R GӔtw^9 $`ijzN0uPr='t3MRx4Д3 n'Y^S\e%|Kg+Oz^Liե '~.];Qg|֍M~(%@RZ%qI" ޕiw ޏT֜t=ZCT?PqA LFDaǼU#6@:  hW=I$~'p{հ(`K*ib7iBtdp"X:dw,i Ue'ZD}a*J-mCTƉsS>Ь)~AEPEtuﱼOQkٻ|C ?) -wEKiř.fPrZ{՘3K)BkS8GQȜa'} G4l =y>{y\S6$Ǽ9>hZ"dI̜ON*ԴbI^` s ~ZrhvUS.}Wvʖ^ijw/YDxWNʮbh$ΪTc>nԟ'Q"D*q֏#Ű_̊sYgܖE*c/H9@G4*x"T/HbFWSLXz 5N t8?7&{8c88څ[\ŦOËYTάͧ7ׂE>&쿃dV,u$_BM\¿γrk(<cD[MW}QnVqm)Op)BubV#`su$~ qs}PK.,E/<t&ck/U*m]/^؛(uKELޝgގzZ f6֠ x*AV0J~M plNȚxYEyI>ߕ:EJ424DCv5N AYʻJ]h/OFnCf E )@Wp| _Hy lҙq ]Togbg!PLΦw  SFގUmy]y }O2KJk`j*X`67BED$?|Ujk(i<$.X f~8uYB:t΀_EiRQFzLcqE('3Bzy߷ 1wE蹺 J_o8&1MDJ%Ȯ6 ,\̈νeJF'P>"nv UR苲z,;mk bxha{IIJdO\&N >m)!xۥKim [٠؉Te APtrS+_H,W.1KE@>, ijhFC/K$@8r•tm<$SaUe^a S@V=|SdkD~ࠝ3ЫF6N0MM2?bu0i* ֻ* UAeɴEt؀x]MA:+Bo /H{*)`=* ijkMg  r c*`!wYv#g`td\&-<;{UPxGgns֖g8h0;xjjܥcc&/֯Ol9Y'N-K\93`+Wیh;7!_!;@$D;mQlC@t )sY2`1DO0Z63גAWXMSSy2 ^D<0b_|esf2#π+LG232CzM}ɔc듮UZZܑ,D K `TY"_" -#"fE<*JCIX.DsW[˖YLc7g%w[II fJRqfoRn{X3c:ocQHtzhUȶea7 Q.Bmyngm \.2L[g!zS'v[`~OQBY8{=t-[7 r y+3-uCllk ,GQ8?ջl:-O,2mZ&v+7"/tGNa񰉆cl Rߏ Yqj`M NcΘ`m%0IBۖ*o#tn}Iכ,w0{zmurO}ZT˯ARSn*d^,q%bޡD[e\n#s@uOiRKTA %*w]_H)HJ|?iB_j0k=#kNj8lQ[Q$1ZE۸t{?'Y,NGBT Β_7R ӦƂ ǞEZqH)Φ1[}/E? D:g*lt'6x m?¶vb}-/lnQT|.@nC7:~/Kq^3 Z\}SE/ZZyZG.+!^4eu/^%%#uGIΌ%XMUX>G 8rډ o}9F, _`OP +N ) ũ 6ɦcamnY`kFjGr8sa8I|##f\LrGxԊ:-6#$vp5ʳCԨ?-qDIE_,x"AdIvRFisBTm{dJC/MEV L8qkL()A{$70Yx&ǯF3E)G@kB #)&~jT]uěm)({3Xe>w=h(iVl2wOp8C-NlM֝QZ-!^ĺRziWHXLB@g,\{b_uv *%Ik2QO_+J Wԩ&] *@ 8}pF x/># [@Bx@& OEոicvúqd)>o5F$cX{kGUsUo5.-qw[Ii?XDJ}ѿ$;cDhu̕3~Q[\ =e:d.PIf3¼N6$MP)Fɂ* '|(A%5xv&AzthP?.4 CLّQA¡F|_[uv?Mt EFrgt:89/(EB0؈gA N˔(Q?L t^V'z-GtL|MnК4S\\+A>ՊuY5'PjD ̈́$4(\ZKzKNl YkG=$XК6 ʏ뜚mLʛ6(- h^}5u~_AiοP>=X!{foPHj0+V稆+=\( RA_ h:ŐHp2dDv45VRkdh* I7\ 1l*ߜ7ɳ aF~q];@<k@=j D$d-Γ0 ^&XBmaT+١7iP= *uqe]?-pȄ:D<$@ |Owśo[RF{ kçixRy(u.4LV0HU364pj"2KsK9`h>?nzCpq\ogFR0.'c<c 6@*1,0FM{l9S/v-~/ѭ5k&-VB0$8OC6+ a5)^0xaZx|FCje۳}HK跚MjSe@2T!N,B*i6Y&z!zR=G/94Z\ |#&1tY:WƇ|SJԍ "9d*)̐*?, pB =7A@`$Z5F  [ZkR*/"l@RDPƵqZ"Mծo1A6S!:j $g૖]*LIaj s8,feM;\6!DhaגJ΋"o^D2sLuٓfF'ٿ3C!Z ;bc}U7 q uBZДLˣN.?Q]Lq"'@6)կfAؙboX\"0z37;iE[AV ͢_bQK2ShP=JET\[a淀iI&[(Z?t%q;\>AHY>4@];fip@;~m-Q ,[lGVUMcNg%65U=su9v!4Gٙԯ13mmˑvnouܭ 5-[{B f8+@h\| y@9-6t%$f"NtWȰj|k~kDR/k4.U "]`r@mX8fԇ"c--9||WLxyMJ2ud!G"SYtUJiH=xzD&Ul?p hn"(W<grBG06&PM&6 u*xF"Ml*셂2-\iӳ&~*>|6~P3dR'9Q09W95=h >0Lm6۔H/g)Y4-ІGV^O bU JH+LshToq[ڿQT-$xH (=ӭ^E&/h{lꭙLসKMXNvW+K,q\Wd.L-,k( E* QQ+V^@/,{ˍ`HL, (C߱owL Vjc]@Q96l\XVK5:kVCL\so6YJ}w,H\`*D/)-|3z_"ˎ6^6s&m4&e-;f28ʫ˅GHm_o#xX@*l2:LxH@4/QC tR_V0Z;ɣRcɽf$3 Tq,;,|᪝kx_W!Ϝ*aut̨9@' p:qS}E2 `g2<,_[`Pѿp^ S\wfij4Wڏ+!CW5ZˏĮIڱSv3;)*bH09iϾpuPmڌ}md7FyB%ȴwBCT-ՊoνɽޮOrE(ݓJ'vX Q[Hګ"Hk+9eHqFzwKق'^/u$'eVaKkɖSBBB$'9T1J5\Y@Hwp&^?KDk[^JcstӉW#5߶<]NaM-5,_`u'>ǯ\t+B:o[Sdݽy4p1+M >/J-JE=HﰬEr OoB[1mgcep*%8 NHCӻ/\˴l6~MyvFBt?N5Ýwꤜ"A :9~ Is󭟾seiOv7>^ !ꨄeKF,ǫhέʡ96.ks2h!3[t:Bk[J$d7]ܣO&`Z矦R|VM QiފUBH+ <7|;ܥ'nܻu9 [=BO7ZJˆ: L[P*J!yzD>`UyDBB"Lಁ.z.ʼxaFSm3GпFًxFvz>{is eѯ_?7 rNzg/W̨mlN X:r%|*% Y&cSb!WJ^+y"G4̀n7r~6h*e*K{hhCE Vć#a; 9e#F+m3@"'{^gƾ @2kkc\9Y]oliZқ4c-Ou|{KHwڃb[0[v`Ε߰<:?T6I4n} R@O [gז$S[Eh31r8Ny6|G!`q(kp^dN \.îRh|e gQ [?#aws@#a~,]j}cbsu `>觖k;/l@mH5As hO=h1‘*U(|@JNcVFSGԫ4}V_ o4 Xg/*cC> nn#H]R= B4XŅ:‡}ہZhqZ炛(Ae4k4{CڄmATl4*JL0wRH]mzΑё) !vTO ꜃Ib[^k͵@du #Q?bzlbr0F k˭(\ c8mEoQވ$6$jyR;BH( 3u ܈&YUnn҅*+lAȉ.4Ӌ_)[SY8 @18u#v̋[ۧ3h1ڨ#!s+V#j- i%eJ„uӴvf :s7{blTi+)z@R [Җ-iiji'RE,.0:,髹-D}C{LK?Kaǡj"m~@3mF`mfH /(mx{ 9vK OKX;:!ʕtD0UU0[RD#!V)u`U)di:9_M2COWL7,\h].~'xoQ0_iEG ĭ1Haf5[O2QYg!h#zSf8a`;´׵7G'X;MVȰ Ff{B ۯbCR"kŖSik}rZ(YEn`lVoxP ;d*~)qA,[WVԄ8h˟YΒͳEk&@7pl@T8H8}ʁf&l2nei FK1e??al}^R¯>1.l<)IeEs[I0 igXcis%)L#?F 乂ZY]EGj9^=mҜُ5)n\(Usά7B~6q)̠ 11u`f\Seg"kj (|cqa22ί3bsUO^ n[*7aT J 8']2/R5FJEUlM}~͹>v`BRTurzx[vF_+”M6iO.dT&2kCf}<$[fb0,*~FtErDcB:8'SY?%6\,FVy >V6u͋8bcڒ) Xx/dY}hjam~>9脲gpvNpl_:u'fOh{C"g189 (FX4=?~BDeD8c?[6Qބqݶ~)iѨqyDcsp$J-B3I Ti["'!*³p B  & "="+L*Nsj~V!Ce3)}}}R58j\Ukhz:h-X5Cp̯fL)ޚyooמWХHp)/@w vYkUB_#>p&U2wfvtkrI˴MJ^.甃51J8Y(dǘON,G)s;:f( 5+طtr.1*ɄieX;㐬. ';xo旨)"UuYQgȚl'.Z`Qt8\g0!,kJsS G|qQ'߻A*|-ۓR.#dN]:ll;yj*H29zdX4N-e,JzwyO}pBanޡ-bc0Y-: %ًdQE;sNiyjqԪf8:Å=%$Ofp;MzM B< 0|~Ee0KOi0[8"%>\kwS Y!v -VtHrwCL(_bk2$!+~'`?),) G(xxHM3k3F%a`4mfo#O)}n[xӹL]F0=m{g9,x>l3@1Q|"WPGԟw+ UL4h"Tu.sظK: OPS-p%{[m~<tyto_*?ّU](8{L / //Rrm2Aя[Bi{Q=@>' z@T80-:ò/fscI4>}]af_6 X#7(|4re%<76ΟU+:P/5{CQP<-Br{g 3M?Gގ=Noh.R4GhCAo:9Η; 2(9qJL~YQT@Ջ+4B#ޑ.ǦOZ[KQoY!Ү6hw`hbh!sfl]R=+JD$\EzE-* 2"٩0kGUv"̊Q Β6Rш܎ 3N8]LGx? ?֨S7>+Yg ܆aB,@4Ntʲrm+_zE ,mN\NG'#p,H+6??ZTc4ggR)+6'^1#[%j9 $gG39~ =IQ!(K3&m5 ܆!1Ra{%P=NF]w5 Tw9%CRSAD+m9%%W&h`VD4 , ra)|tS {btf~L'+{C55"'v.#.qxauމuc(>\8,HbQ !Tu☜a7J <x".ͼbJgIXٜ$#oHaӣ)m]7&q׉`}LSt߷,3QJMÞTsOQ|CI}[@W.^wBgz2C4I8B$$o9FزGÄ.Vw^ Tʐ(m j {D~Pӱcz=OgrQh J0xW%q-9>F CRTFrX` 7caآ]Gwk/X-_ ]jyW H e@@8WDr'lH(1ɜ(n.a_7xLQu Et8貢ݖ7"N}3d,F/O\qj:ZJ~F|wK ٗ%-;"zt=,7nO_c0ScHK=#{H#4i_DDG: :XKR Ö!ٳ<ėm>MM6L^,*k<9[2\Ϟ]يmg W/xI*yM̋9(~ye$ypޮ .OJ)Ư`,mE"qt|85&D"{nH D4BÙ_b?e_K%-~],YXp3bv"ŨA 5MkةxJ=eOxh2>^ ἨCE{'IIDtEp ]5$]s+iqQu~"h@.lp{qv|W|uWo&W '[:P!"VTyX/;E~QEx,Y"=vUrOJ/|хu]J G%ֿ9DU-X[Ck3FG}q|ݗf-=pzGx q,Êډ"y qo;9 NY()tҒ\4H~|Q a&'WĦ@HOD"R yq:%!(K 0 VEqu:h`(S%ѽۮPۤ[lVS3 {4Xqfh<#c gWRYS [tB>$+IC-vUaSjd=\fWƝv8_`eYP;I;_<>{X>DcYMkH,8\9TODBKA!ZH@?Ѿ ؝ݾ5KW5[r]E{?lg2EZTi0C zs &R60rLQUx*?5M!5m X( *^t8ޞ8yJ])sq!bah?vx[c7*]I\;cQ/mץPi6FwmlSOB\tDcT3YP `6E/*x"6C\b~0.;N]I%Qt-+ 3YOh68ڇY:u5SU/?2*rA6x*Uj_[:VLܫ?i= 9}ӂ *w3㬃gOA:0.5(R^Eݞ]XXpcڞՇnSmz@FXl$3A_BU 5 ,͢Ua&A_" I(` VIݨU@ kt}8m[rE;d8^WY&sS0*JDw1fodB+T~`K]r.HeäO V>mI9/!A6][hBNMcf`s0i,ٚ u4}i7@䐶i=b!q 03E LU+C)r(Qy5Qp{PjM )|S.ŧy.n~~A"^_ViFL'81ȥPVh\ʝ1!,[k09p Mx- l$j,%w[9i'  [3τ ˶$GfY޼4f<%Յl\!fIP9 0@pUTznMCD~d%&<] wdYf *^HM^H<~NyU !xK6ѸHdLEo*EWI!:L!N1:=C }j!b"m/wgOa͘97 2DcKdT_4NM/ѭvLLWVvpRHzQ^&JPrv@!`^X#ea.1 EwsLA 0mbހ;jFCI!$'sI1o~"LsT&ۜuc_ؓ+TP!zH>NYkj:|B #Fwm6y *nq'R/RIWrzy%l"KFwKf-,ˋuma= d]XSV>H;Uދ$~bՊa Te2tpCΚ(RĂjFċC :VOd՟X05ݏwBEؾ-_3~1K?4܋dvC^qc! tj,s4F&[yg]9Qa_qM*W^Bm2z΂!Ӎ@;?ϴj]*6'RUh47E'AAy<[[3j9` o!n#˦Ty1j%+=?wѾf0d9z \~T\Fe\=iFjeU]:9+p&vtMD7z]!rϤAx{iqHGQ;c?1=S;kGPpLR0> ~ PKҕ}G!{2Z :"Ӈ~S[$>Z\(0Rʄ'0_}EUF|װ2G)ḵVSKƮ`-?gZdnIH'4!b㱈 )&4D;/G(z 'q %"VXk ƥsx%GL,`+:9ˍ[\SS7eψ|Nmr^'^WZ:9} nIwwmGyiw1g p4ly~ '?#8!_1#¼l诶.Q7F0W gXJ 뭏gn w2 Ty4j{.,""oM#]MH^&+䭟lV(|K.y,g5/hZt4,~"w.Eihoٞ;)HE#70πD6_t|[/ ;P nEH>iAPQp=.K g_;Τ7 n;ڐ@O۰_(kpIPы[C=$hcCnNpg !쩺|E(eBeƍyiNSҊ}*`4JaJVe; ,"U$~jLjyW~:{䤴q,]n\QrscT,Q"JNAK5SCnǥyOC=FExS}]r " ."tkCXTJEwQRH1Ok++OD1.ucMФ&&CXs'}.}Jp!zinU_l, J"g2/c/q#DQ 563zNXUZt.`zk6WO'V5Jd*%ܔ<,rqQLU{#Ja ˵N}A|AAg4x x5R0tM+اnXoq밆Đw`b3d++ pN3咪pi)4Sĩ'燐yd{,ܘKM.l=^׎V@.,O] 8X_M><7bءdU<߄ڪ7R"vDtސ4A=& %L&z}&Pt/L/_>:(2;-:P@n;x50VYoݫdG2kS2$ӸJšJwʤ :*>}1N "uoPSy) B ׀kئ*"«T9\vI8>#{A:zy*(HfmA+,  h+ vF:&S4.O-?f?\nS/jVdگ.6+h(M9OKnDR\HDZd"u ^/ ߼yb%#/Ӡ.7E/swm2coՒ}ݰ >WfTK\"$Y#!A *= !|YS]=z˃k ^+M̂~˻+ c߼!7n|Z短qL:fV͸Z$7\>GZ }nT-\A/?E,Fݍ-MR,3lDDr.'ᰒ#[;3“HX/3p_luUfYo%{%ǗV*S5@,2r!0 %NhOYw]+o(j8!VЇи$dEioEAU$ _Jm)d7Dze&s ?4<<]EiSءSLܖDgKIt7 a߇?ɩ˾O &w_= Af¤nㅆ|fS|m=cŲ%֯^Y jܜR[+YL-)NqO$8un62jt_j.oF.7zsOrrxoeƃG[R$KN`d%g{hփ'f*<$Y/pyS/nYϔ;Fd XYj8iFiyeP){2yٴ(-"we%nb&(``N@ގ*Z;ܮ?zUo'"̛hm0Lld`J`:|g(gh]@ވI05*)?RƘڸlh^gE+A(bQq>p{ꢷ: ?ⱁ0Os1>udZH4ϥ+"gxhmK3Fb(a/Uv9H,cK7IdH*Qzj S:[VeaG<\odcu)gFP3z1%>2\.)]yq?CA9K+.* K3]S❴վx053c{.Oc|a=vYxp]C鮋O p|]{;/@*bq35XDT ނ S!~ Cko*I8h $Rj@iU, 8±k6>^4N퀙z43_'+!0FBk)r/'XoQϢ : ov0qhz#0< 1-sd '=g~wߕGW0Ok{QD)]غmER;V$ TESC9Rn=.`v2`@ru^dxҷڮr \|p;R^ MM?Rd^YV䛮W(T(/ĝƋX£YUFj?"yd:L9ـ` ]Y]4z\^6+0$oϧ ʕ{E͖LR tI$CjJn6w9zpaܲ2KʁL*pOI-鑲(xp7|:ܱ'QgUtVlsdUODq@ [Àsr$,/ץGvA%zq:T"4/߆ԡgx?V}҉Z,v&Fm'`O|x@ns,X_F=oZOWK~yrQygn2LǛqt2p ilQz\_F{b1rY6O_ p4;8CRHap#;-sz̴:dYHzrvJՆ%}bкv1K 4DR-+t)_K~#G>ijZ$G7^"()D߰B_fu2xOtE͕߻4yNjұIt:V7wd[ubM1/iݲJS'y38ܣ]WjjwI4(_{~lX:IՕXmVK%P >l&\3@98c'h7%g_3C5#l&dլ޺#v..}ϩ;\\Ġlܖ=BGFEVojg5g!p~]]JA~ i)+(3OWNKXN>\˼n/X_8Wk q;떓$r!; G"N!)pX4tmQ}w5W<\nre'!ƶt,^qܼ~7nF~3[ +k֖n3cgϚXǮQ aglaM-AuϜ/L~qKW@>by ^u,Nۥ_AV!4r'(O߳}R%cTt`@EȤ5s3r&1U^96Ke,|ԋf aI~\OS cNnà.kTm#HV]JH ;>^DI)L-d[y-r%1Moۂ獱RQT&MJ!reF+ Z&D8qID>1cBLIO Nnw ҥ{Dq_su(JhpwOQZC(4e㈰SBŭw~cOjjOGw>^9b~kjAJ%&&k=VPtAb*daC7Xb]LJ\zЍm?HqA){k{b+<ޅ vɢ9.F`v'`7p1]F928hEIf u7ʄڣ.**/ dx t۷& ~䑻ѡxM H~#[\.r3#$H։f63l+}|FS(IDfqK1EmVrm,GB1>yP*5p"LzZCgH[qJpP(1ʓ͈y8 |A?jg38#IRQ䶌rgp5AP?̭qsHx(aVX}2%f[Ԗh # zPKT_OT+EeseJV5ݩT~_i&/S ~l䓃dMFkE!0O?Bn!{q䤸5Ag\@ڮFm΅'וY $[yB쳄۽xB;9w(0UfSz9"U~%{Ҹ9xq{i#Gs/B% Nʈ~z!~"q^%ϔ3841CU˒3ƇA>4q~(mcJMK MLiG%G{` %yU0<#.+EJghP=E2YͣXr hG dD=+k~G4f ۾\FLIwI5-6k6?~gm 3OJvfByGZ9C"yBC$_sUQ᱅Aڰys@j o+ La28<7 3 P/ l&12xk fPw*(ŇA"›΍RF>Z]\-RދZU<$h^ a4o'(:+V7CQ^V dg:3m$:"JQX]Jwj#&V>sae>s'e 0? K=hR\QJA*\i,?NP-R}ﴡ!3%֭o-9b6u5]JeLW~Rؽ(EKv'9CE0*vU؟vxo4 %[Щ&/vU:峧P 7BvUM<+$%XB7 z2NjR*}18piv1qBZ+TZ#*3K&7u--r|m b2Z; zDtmѰ8;\WI ^vo@)|Je~ڒ&6!h ?Z4ߩ^lT~궫RzP$('SL~/dPOÕ@ qh`ԍ1R3G{~kUଈEz1[@.zHuLŠ>Z,`s`a!6yB~f =c]#>,$`)뫩ؖS5U<\yO=4\/DJRcז=k9~V p @*pI<۴~9I _ERlFU `6I6"cVmPG7rHdyEpgG =H cq 6n nAVQn3׉z]S WjYG7ѿ'h"-#Ñ? f@" AE*!BCNh h;8I͖X?l>+%--y5?-aX.'5\"U׻{xpfCO(Qyp)(+W:a22kJ!z+Btm:rnۉ2Uty}q~9FBzw^Mߣ_M McsE8fTeUı2X\dSwLzU6N-ʴ61gH2  ӥ)jmG[PnIyUla?1 &3(~6|8tjgbh<iRqzGB! o˨<HdyG3gC9lkO;rŠfNh sI2^/ 6Bqt|,V.6#v;=$"PM'p ZiV.x!'FK5t` 9r}L@F)cH]K3DrGks;y8[Kwn*5$P`&XUq?a|-ZOݑ yƔ;_MN t)e椠wϓWI1ut]!\zOCbR3V9Gi?4 p]Numa9؊tcHm~! KZ!u/@avҞ gf8 8e-[L+B(ѬH:sNb0^"[E&ΊG H3?ry5{/b o,b6Hʯ5(dq-+@otD܋qrV-­V U&Yq}NB3垛R`EA/hOeHTZSjO4>}!r!ϲoǹ(J_k[P?teDD XbSC}Dj4잣?7lB҇Φ[ ?K_sk xO`YOʽawxYgUNIP;޲"-GEC 02/5)&n]O>CnShȀRM{-cf&"솂+zH8[UW|̾QhͰGaQecl|>tR̆;͹>s 7Tzk[ *Y$M>2ǧJSp; RL$-[ezDBtTUTxPOzRJ`k-z2֖q]nmcQz˨Crw`<ծtHZ esxgCYxk1 X""uU+@t|Cz9ڪx L ( kOJ uQ#zL%yHVn?l+g1Ut!qNmZ;^tI3ڊyhm8zEU +Q_lqSaet`v0{R)n(2 -OOStH*sEgRLi|nH^OmiD>-|m]q.u3CpJ-[7[٢yOJ§&W0M,&rTxj:q_dR!kjjV NބRJyօy , 6+tsB-) tHQiT}B\)Vg̖s3tyu_%!QUp=Xh>WZ%S t.4&]>N/A)PBQ CP*E7,#eHΙ%$h_qݤYw+`1lpc|:v+uVgXއ/Z Sl_H> 5̤Y}%bϘ<)L pW!Y\r2Y,pS|hQm! 'ͷ? K^pIn[]k-XƇCL2qQ<bw'[d |XI{)z.hڦpRqxHǑ4QU#Xļ^6($~}F<^EZ{gܨ` ~16__?Div$BY\M42"ޥ{5s.)j!&q|_Pˏven>r[n"uUk+$q0+t9װ sG7ހOHTsSPpC+!6p69UV 4MܥRL=٥&FY%Coa]&*Tk/}tl{[O! m() kj%ANdlwb4>_|61eӝٸt≍12wz y~Ĭ Et dN1W {^ams@b 5*MZo#Xex :%]F.CaI# "RqT[Ȗ3Y$;x0ްp7˹\΃^h=~*6zb-YҴ`h!SXNyN TgiU;&SblaaWeO/bN&;.{AЭ-eKJBٗ*&yS-Πp 4%MO.m"nѰFgk;.?9f(VAȃȈT )$0ea;/X?`59{ l+)@/}տrab,ۜrm<}25ji\& rXZ6򅬑MĽ ߀ קSrO`T|wW.*fcϭ9ʆWAyexfgxRP|? A1#X\Sʔf{[z؛RkKgrUov!9(f1]YijC#Yl(w *"|N[)`w|Lq@hA_/)qRZxgqw(y5>20#Fh =iD%sI `OY+vPa .Z{d[luKv!g`־}3 pKSq GYU;f}u$ z jG:Ċ̂񰮛 5y7@7y9"]YFt<"=B`‰~3Y=ߛt(mgWRp2l3S1PcN&w <"4INwXQ~fвLpAP5Ee BdQu,J<1yTK Y&!}6ԠIqr]ͺWqOZ-:reϣ.*/VFldW_U$:c9o|nd2Y%%0X5: ̟Z;ELcjC A:KsVƙ,%SM1iJd5팛,Tܾ9Җ.p̵!bORsU 7WUbCHS1}g^GfX?*pd%*KOfwn)monτ!Ēpێw~RYSgl3aHyc*бK߲X:n˲=LܓBy̴9'㋿H-Ci<ӮhnELndC<`Z|ne۬"$ .2kY}s(.]V[*;nxU@ꠤT2z<=ɰC ړ fCxl,݈_VÆڎ0&)J"I菤Vq]uCxƒ5Jd?9fا:usB\ KLJ$93oԮx5NK y)i<,N(ktT0s)6eJbcnd h&1B>',; vNˑ{Km÷Qfo+${UB &c~j,ۈ?`\UuI·|²" RK!a3\~̍{葁y_;|$>pv4j}g1вDYcۏn6g5̔:߄X=$D Pp-/f_uQ;gdfM 5|\\T椻Ӳ#~~Ҍs-n1µ{W+W^jo$nwʈ]IV'5gSfSӁmEn)_>z[hAT;Kum(MDxb]Uj4۞8 lyaΈ賤K G Eb;awFya gp!]3_"=%F!bX0l7Sk<*%Jm:G~wN+{z(-h[;05*oIO5PT)% :&wd廊rM6F!P<|2Q~P%ڔ{+1 ǺDOz\jJ&D+Ȍ(D8 W=w6 dF:Ki@F#Q)h+~`頇+Q(E\Gj~CO2G\Y[FܾN[WzGh=J19I$tT[6Wr[iEc?:0SG: LE^|(G0^= yˬju k af-Ż j1k(b;%F<"]gZ516BkJzA{Ǿ ~`(S!&{i+Lɑ~ӕm⺔hYgF8߈'CZ.f`66"I/L@QܶuV1r2l3/f?C{,A|Ž2/so~,#^_(2le6[ \81@XZ^ 7W x4Fm0D DF>]8|4yNE2ڇ9U; }&醺 j{fD suvKgooR}s ? [W2۾_# f \ <~OIVd 5{c |t? _xxdh [bM`XvdFGY{P]:`Xj+Ӭpf.RLD9sfGa⬢_IDk?헕_-b Yz1Gq6ӗ-p.مVᝐ_hʐBҠZW^x,dGahg?'>@YiY?)X7:4Ҏ1e)fcR~٦Ϋ|T8Y,@ |'l%~},}d JC\05!oU]1CG0v_Bf E`HzDAt7af[jR]-5ye.7+C$$/U~ئTyi-t(5&=}ӎ併~J11Bn:CN%Qʬ0"|tHӃW窱v%&֒F$H\!`qNf vfi =gT֒[H޼)gBRo K{6\#;hx62g0uŖS;H PvAꆶ֞ɁGu'jB5,˺PnM~L~xGr}2ٔ\ u>vn}1sĬZ$A8UMGË?V2Am ؠ.7h0_X>!zqq?4d1zip(i;s=oUAmärA}5)ʘ |?M|nf(& eMRS)ì~C\s8xAh{" Ep!Vn!,oqWŕkG|2o)#Ҽzg 9 ͸-f6 1-`.|uX[s" r2 jk6Ɲn|h1o Eu:AhJV_5b[CRgqǷ濧6(I]~mlI ߝ*Zeѩrvu N&T>'qޕ EцaW# }IXDHiAcJс;[@e07"~EԑݻK?}2o_ITNp8Ĝ9m[ğ(g$KYp SK v S=K 0  K&f6|*gw;VS[TRC_n lޭӆ*j,uJ7:ܜ7%Q$)wd4oІAa bVx¡Cq0/ROAcJ}Ԡ)8B55}шvAS!XoWÿ\W9#@遹〸2^fPN5$~1QXu9V$>die7&7A&#xGi~ 1OY8D-@"Pb!qP^?+~>ݨ.|YbVT'ߔZфi*$t(|9UF9?<)JX7W~\/i,,_:~B g$ͣj= {˽ƿ̾0$IC$o`ԂnU|,*ӁBDYՓ@m-qx'4@˻D6@(N?I)-m{^F5&Swt /9OqEt n)w9Q|jIN@>[ :Ap=jr,Bt*oSu7ѡW)H8OUݞxs` F/a1b%&1sLjpݫ$C`(~FE wW7k|)>R2jL-w9ǭ mX պoa ,m$f[~(eM6Dx{hIMX:N$+ÜajJ! R}q2L7kTCh";}g[f qy-E^ՎOn~21_KԔ{۵5~I*Ck\ZҖSh2+Tj PhV4zGN; DO~qXE#qҿng7lh vZ&jEƐ40Vt0dRrC #XJbU{\X5&"3)#X|'8=P-\i{bIWj&xX3ezy̛)OVrD{UuZGE>(J?zET~qL\ gᅰ,aߦ/gW!ee-VVm+d\U}my4P-~$<;\-X /t)A|*:\-1Fs #=uͱ+v$ݤpv01*xrt'cn@K’ Cq֔S9P\^jKQIJ d#<@k9f,V]LZRa!6hayB,gYlIɏ |gf[Qųg?,U.tR֥Ϣ*fD\p"x:kw70PhRezK}\Ju|Haު %w)9@Z1h8q<[H2_2H^C# 26EW mTmw ZP^J8 :6ޗЩ#aD M&JCM-!>`.B/(,Y "(nL1B3d &hX*LGd 7aUa&dٵwBնX x^~F5 TAQƬV?%sqoc'Rӝy}<ysӹpzC1Y n=7#Kswe.8Fch*5k$Ŭ땠$;od 2Ep[KUps&1A|C"zRmܝJpW!fJZ%?PwA!}qm+gS'a7nt.`ż&‘QY1mzA/z{ut IB$.s$1eĄ!8L"woa4XR?3̸ !,Ơ=E?"zpUSko3LC7ե/0 6D &ւ?>5{P[a$}a[3+Jvv^+V Eӏf'KK}e 2+p^֟|yP\2#LsC(hP[}rO$0W(Ƣvx22!a(UUFF< Wʅ־m-f֦`Y6cѢ:#5&c]{%T0'Byui?,V0YՋ\}$Dm`p1mcq07l/F@܍ŏC&P"f)tPs慟h~PN~5&X1X ѶUIJ!??`~Rc3@xH[r] 0z${M"`e.bUG{*hl~3 1s=(kd!nB}~NƖUD(iǮpa>NSP+|8E ԊIBqoCTk]8j=IKV_ B|Y6ԟ3ڛqzW˕X,+FJ[rWȒW]Ñ LѰ` G0^-5!;nVv8H +_(,ztDޅ_B)E.zXz#׆aqd8l/.B@p=Sڰb{hC,A$n84?E2{9e>G땚˵މnoj(⣈ J AzZ%PrMnrcg5vGvoK+tp 3mUq+z]zN:EMJ gX&q`ϱ3rEA$ߎ="0 -J Q3t3уUl H^L~ˉ5R#B8#-( =8nJԞDTx L*)U"#X'oGyNJV MP=Q;@zďi"`yUPHC^fKL7Wx;NPF`H+[|Wg k6] du/m ͹#[;qFɯqMG AQ\]`kQ[|} .RJMo2$L‚!KwrO(koέs4p#̆r>o]S?x4{ЛWqx\:E)335˰fDr? eS@r"!:Pyk 5qDc2IUqDs?HCadi~_Ou@z(,ÛvBN::x0a8|+i i,l-Gҵ1a7.4OחV1.dL ^pfAΘo=\ Jsw̹CFպ՟ZFE ofÂi'6}zxWV, .e!ʶ6QIx {ӿ*4SOqϘ -1?v^((" -082ryנ7r*:BB!ҟPRT dpQFmpnH}&7m3Y'bO6lo@G5l$_Ɓ>h/WP$9;n74u+2Ma½&)1Q]2(QVYC{I4u͠^JATl*4ZXE:UC4Kͬj S/e|fO{5R6q4{:,Ppvqۤ*K-YRj%!ߠ[PVՍ}P*l9 /2]O(,dڄ(E"DVlkRGHfHKquTQJ"!gtU@{,@R%Kbj#sJN!h%Uf8-^ĄlՑ9a AHwbLu֭~]G%_s;f8B=΁ _br3~ sLɰxѠIXiy%&UL|%jL#/?f]c䂫O1pI,8~s:Y?8 ~_Uo9ۮ*+W6X'C&*RƗo=`kP/ M yTx%Θ/sRizňElRDm$ɮvY9][(YH7:ҍ D٬ cL%h$} dcW^!p}(&nM]&h:sWNk>3Y wJ$F89@p!]ht&%ޚyhǜX0W D71ZbΥ4([]/)_Ǜ?>'śt0Yvx;4 Q2-.r9ɝ?Y1";fbb!@jӜ+vpd>X2 .QFk/;La{$oD]XVn='q{a3,ß-8@ԠpiCņ2ý 3~^FLyYNcFJjJvy(|Cxl;Pm+녖w[fsA?\ DefV)[xgmQNSB%?&ōwd&h,#d±T⭛Z՟-fy%O;D|^-EѺ@cr8цGh4 Yhi4ӬpjP *$61 v5UBqE=ѸJZ 'P#EhJ\%޳:l[{cϷM_ӚQg>=#xX#czq&+`W|TůH)SJG2.fDžTe!.D%I t:J5` \BOBuf*Y訫h /{l!KR:6pΘZd/; kEA,)a;L ]^*SQp|03ȳRPkfȩ@i ,W~Ww,cŲV(.]݃Bk6bGKO-© ϭͅ&S@2M XODDr2pҫَҊ'E9_4]73[PiDCz>dq/3({BRYK]7,guP$l_}g$ia(s5.+ M u}@-XʂŸ#bYCIeN ΂ 55(jÇ(|]}!~e}sYP &bZ2 /Xl)FXTj Vrp~hc|dz3)IKbH*Nk#FG}3,JpeDw,&w_Òx`PԖt`,!QotuA~W_OFΪdm4lpxK،K뮓$%f,rS 1(ϭLAk˕r ;qP,'zAbwuBӐ\Z#gڋ6Io4S\@U-hℐd"ǛfX&,zUƟ8%}E-MH]HuHPhN, 9z-2_arqKG 0pq e+Ͷ-cQ@dWnL`0|y7A'`Okr̵BٱY|y/G4}Ρ+[#_:J =' T |?Zcs`3HЛ7rW9r s!Q̠nWJՌY2T@VZȆ/3RgejP*20X*Ue)QLEU%2`3$XL߃cz1[F>*Rrq'eO9@F=vp۠M-._yqH![_LQ{,(|fu42d7,=KթkΠǁjj:LQ $7 Z4|ϕвB}Bn ѡ(`qawɘ&I[dн熓"c"5 'àPT=lzu-x#1Q:E?3ʼn|,pHȧ=V`sY)|nҠ^`+"a,1 )\1%t# A^g&GeyVZ:9LC8hU<}Kc)`~J"[h6lĪƺ9E)ayF5 j] +n]-%I=$jV3KjP1Z/'sJ;ƛz>m/M}*>"qs—s*|W̽vI*ℹZ¡z6gNl52Df-K2@Fs/$|xω[䚿F%A^#N.h2ZmA+u&JŒ&%_,1;LTH49q(ѹ]5nog(>{پQkqosJ+ണ~$ە wqOU%dWetPuKv$ OQ'N "e`xjaf s(MYBb4>wNsޢŜ#lzxKP E1]w:\}DH 3(r_`0.eUTZvdI2=@hlRɉu&nou3U/Gq"gÒ5Ί͝:-i VHH,fk Jwۓ3=9X_LPB92~O\E)QJ:bNbܨW5YUE^wV!a Z7oS\OАQL5Gq^3v-]$bE(.;+dBWלu\pLМ} 8zp ZG/2@1tuPrѺF`r耭DPzG`^Qף4v\MdKhhV GԿ!J*Kc#8Άc$@O񭲝CĀw3l$k)*$|d@.B݂ޤ>l ru7}q@ED8Wl"vgc_@;zA|0Z?̦3Q/9X2+ֈL!#߶()2? e/)NAmHrP8пJ* pRp v`©vCsd 3mva 'A"ghP0q*>`,uWYUU#}XOxD>La[a}$n-kRҨ 2EQӜ˹b9$v ZlíћZ, t9{*BDI4 !e ը 'Wūva+ۭk?LBk1 }!Xva8Gg@:[%J;VbHD3h+O.¦m(ZUG:yE'#=BF{,U`cZYK"-t-qKq!p)iVm6;MTa%JnoH "VyT2YK+v To?'(l"j6 ֫-eVrЛMм։qsztxNE8+C3Ȑڥ+MWAD61C]fE.FO$Px6pQ\zY);Ʈ;!C6K寈QVҠN%1ģџ0NO(&d UeMSM~" xƇrA:Gdx%gO#f0fU7<kP\|1c5Z  *7zlK+i1!ѶL2 Jܼh.;KwK &4Ih"9@㎐ S9``¦Q#0I<2_ 3ҘjJ65X`lN =uS")a} ~iW­'7VBInq(Y8IUZ$ )V'LSjDvdzV;jc4"CgW<8<5k \VP=;[ ^qm%kknj4횇i+R.kLq_"o1ɢ$-~;)JŮL!*<'8!5I *FEz+d?CUHyb(Wv,kuyP%SGB_P6[ )%{[C<ŁYA4ZB@f Hi[;?t%#I(A4v%B#c,a~XrnF 4˒䠔s}dn%” p'2l,E Nd^{KQ.&eg`/MPQYgp%¡@ zW̱Rfpf !Z+zO^!(MsV>.(-ak8n:UKu&u-qpΐd^<)oCB;mN7HXQc Re4WvaN3͠:KuN4ے][iNaUr7e4xzE,Ċe=%Ž*@*['PC:e F /U_?7y'98(R X*Tbcd08 %jb@Za^5ʘ,КhS1WWQ=K5E+G+3%W.ö`l$_*/@F[%=I4֩",]j DI?ۖ2$'dzi[b&%PLBŠ,&\kOR9KTB C*DHˇ׻V {u@jy4<޲8z9?01 Qs_:ƿTΕ "-Huwԁ6HsILϢÃZwR[b-+2>is&CZ6oL˱+̵~h-ɶg{.mN]bpﷻð$ao; NΎTB>6F䵑@ɴY\9 e`NaD\5!1 |V^ >mEiS 6Q-Qқx5&!@փ~nckR?rUe;izatKȰ ek.K9wsw B,XO뿹(QʂHiMߗ0c8?;bSeU*i@wq\qxoPFӌuAJ#HJX8ۊ۳L:uC{Tݍ-u :у:w5?/P*iZ_Ɂ+ xû s͠!wEU  F3| =F%&QgE=bAs|zĢ"Q{&(+b %^K&1o%..@5cPPb<+D0Gbno͊geyfIO_VTK đ_DɷbipsY87D|zt|y9A43V"eױ ^dx|@xT*cM9P,hګ+J X(4=[B:䓓F%#óJ!ԩGS x4K:CY,#b]_Nc] } Yf`3%dP+Փj %F7{b7\jf of>T/R=+$ugǜ7\L%'xG\&ר&{&o &FH$9zTO=-\eDK3  V^zhcgn1 [c*_i)xA%0Q3vbo8.U3;ˆn:Av7 ;TХ+xjr.'"<ɧN00vlcp"<@=, ER_>\bcsP ~-4%?=m qWPEt  cBw߮MWff6}uّy*U/BY%a[~X2M>)ה9u(:m<8 H)3k1jE-y|0=\I7/0"s4-C9uQMƻ$$ h5l&)rڮ|-?_S_me2w~%l̗< 5q[+@q+Kh:^O!]+ /1%= (q^a Q4jóZNPo}}!<]VF0bk_*4;st\V炳OEq`Pt)-φ.M{\z"/E!.);ӝ")vfT\'f_]lrAֹ'myO`sz21oV[r{/,yKʟ-E52ojgR8=jc!f;TC+q+"mSz[CUz ?:-.k/2=woڮnb"c7U鍪L\C $}TV(B)@;f/tCW*G) dQd?1O&mлʈozkT1 C\ԌH1tQzzYGVαQ]X͍ݒmPX[h?M]nT"oP/tDLWXlS2j  S_'qCs&\1տ2AKxk4qד`W\\Pu*l{@kʲ|}JEdRp!_d3)O!J@ DQgr߯Tyc8Cp'Y? ?`nQkCfMd\D>鮖fg =Ӂ%MEi%+tKp  ĺxB;Y#wH;,^ܶua&4u m+QRn{= 0*~ρNeׇ(q$AR$RjOu8ZR]t|(.--Dw~ZrO {Y-Qi /5mj@C0!?%)`+m|a GGm#fɺ| D߅z+B8W v I5hFU=54d]uo^]܍&XnsÙ=} X-4EOcQYz2_^b)$6"/nAd#EGZAp ==řfە o20NZ&2߯y$ nݺIoh2ݝTl5Xuy3`;-<<>'M/>:ԩDq,el#!ENu[ T=I@}3N\n6gȏRL _qZ#ˤK7¯hL*a k7u2`& }@pP^_D@s\`UV6P$FAVxN7?3S K"hSh"0nZl"!鲀ϽNJ69*3q%\5?/ZBW}J/=$spi@!jk7B«?3uT} SV JA`_p.@kU՛-y?Ovujt;a{'sz(CI$I6?@+[\qE];Km܉&Z:>OR_&_Xs6`gǯz%"ޱZMUR/ಥ|%+FB+ߦJy1jQ!jVyB$|p)M}1_}CN+n.$vr=a0foÔS5-Gг[h'] _msRF@'5Ag|;8CL*-mi{_ث?BCY *$S0u)T|GZp.b.SՌ_׌Gm%?Y 爆%o4Tx| ^tKbl d50Ƒsez=t#^mbYHUVPwiZ`Jk@ۡvtVKjD׬)({ O㎷@Qt,NkcAt {+T挊ςdt (HSX0ff\q~ # W(ggejf8.t'3d"`v; x˾!6ZdQ Saei\>cπnnbSP@Y<>?s+>1 ]z݃WFӠq@sp=P_pnAکAgߠF$BbEtUHZbQ@{Oav/&,T*Q~dHFW= w1'>1:1bM)`%̂7ݠ@r.Oر:gL_g-A'^Lyd[d{nOf|z3o0nݮ*\g-`J9mxLҀ]`;fdw0 zh;TzNaX;D '' bjjw!^m<0`:d(F櫛as;ܷ *ʩyˀ?]`qt(-Rk ˈOSIx01|/`$M­ʍN,~)> n5%$RzP ʭ: )p߆&1ޜ)H4:]-vUZhC3aEQY`PeW.وs^auu=+V(חG 7T3b;ؑmEi#%F'}{餚bJF_vTyX0,fNA`)棔_{e=[o0Q}ڄ9F*:GNPi&|7wEdSfvQ2=Vp\M$9.BA$XCHs* {+ķlf tso/[UO)R(1WFUSKaI.vwXR 9j jl]7}TEO ";{DGjqG,*KWikutӰS"(4mkkYPz Qp '͇H2\ѥo#*Tpt\hn}YF8iz!zl:--5qHÕ #8-l ;AYTU.üL h4As 2Zc#oɡ u Z@i1$V)5'Dpݦa0ϛ]x0 yǒ*{^@m ]x -u5Ljx^Z\Yt.b/>EP?M"Q,+꾁V oG7njpآɹBx1_7!eF&c%N,liUi> W.=I -w)%-E!L,JïgmksI%C9Pn:Roy̠vco;9Qj,F:2]בֿ+F&X m&JK%LsZĝ1VjHNP_/Ww]6[ ۙHݨdHg^mQ$p>^T$.Xzy !x RQ蠺[ ¿RљᄋUq'"kY|J cXhzs|wU+u?7*+XHM=q)6yI>5j0<'3޺ȿ W9u1YW3;?`K|V_~)1ѠcCୗ/bHZLK̂.B \^̄sO?%̀E29яF>ogJZ'δYG*~6hE۪ca/&/ i];ubS] Fa?Z뫥}e}1Mc$6 t"t|4y#5}FڤGŝſrqPAH~\XU]>o \K3λPA`O\#LH9(z.UKI?)LJω["URI~]QpAWZ~$d|r+?/XKˤǡưcpc ~.xNI1az]ڠ;]"}>ѻr)'uNor0{Ros'ha}RuVT]("x3` :N܈XpAQc帿S-B%`8;q(BCn2pf]vS0m L}:10@G\[_^MTntK-Q?$BMY8(KQW^ת,kދK@Q8߲-G@B6C`yx&"gS5̈'Fу@.fJVfnu?1ubE~Z/aGȥ}~ s'Y@uB-CMƌ_Ju2!^w Ozb TbnrJ!ڃ\9e3’j!Pe_"c#j[:~~* |C ND'<+i0[dϿˑ3xĭwbnK)Vϊqc9Ե[@KR| vm=1OC}[j`>p Ht*P*GDl+Q': {Gi>B"hs, xub&/J{ k{R58a[u;/YO; }od3msxOF&}5zR)z\5mp)0|jj3gAfG"}fÂV~;Djsy JgD:罴Ӝ\KJ8F)gķa\(\Ëӈ"^$.ʁc ] ߘ| f&Wשׂ6ltLj"%U@³aJu6 ̘dԖ䚧YGs}00!|zpXS_ lG"-8jcAPKYA\j" B>(̈`1]ӔFHs;cJvvE8D(y(LsGqi~ozq\MQ8Hm]4D K;QA@ })z˳\оJ-u*Ċ=;C>=ຈ}EXȓnu,nqf*})i@Au\ 1i^N K` \>fi󠃥V+.%2\q<Xm֪-(Y#RoM''LPяԪ5.\)qk&X6.0JCkRݡTٿRn{R Hhv&uN>_[d!=n~f[l=3ȸ f3_ Yc~yz"Jې7 amz5Z종cr1J(/Xx#JDxSJ pm˧;3m "6y$Mhy]t03Tڦ<ա @vbOoy9 ٔ%4Unb$"P*p(k+O⭄?ȥ;Mu#>N` ^pH|ĪΗq<5j%XqOqkcj'OnsC%eŜHxZs軔Ǻ]CKm3Z?5|70 ˑ2ŧD^5M;Y9\Tv&ҍa3 Ű9q,LCؠl}LoeZѸN螟~a3lыK_S0# =p~j79~ss'Zw֐|kNIr {񍎤cm^ԖZA o76xw]r 8CIuADA5._U!f^|.LLC 4\7\Z/NWC?w1UUs ;T9V8k%! &{rnQ?Ol=cEl]%;HQ@cjF1ljU {H:Zaj}B35Ђ,Q\ù{C6:ۓT"T3rpt@` na[&?Sg-ǟRR1p`%%J-+^:QQ{JcxdeVp&v`iG3_W|; >`BiUjnGoxH8n  D$AKATt%姐9%y0\qhԋ8u"P$? &)!X$Ô Dp֖!GlBonɑ@YKr/LUMzY5bu72pCl]Ɲ(9pIGeVj 3r̟T"Nj'8&l"\4kѭN &c+v mi[y欧Wy q!Cag_[%2T-=K];uLN~_X:^&fKX1x7CP<=aiG"Vve[!wn`yAJ&*-] q"e'@ cԤz#pJ<_hu/U^۶ԠZ|?Ay3NL0{ K*UAq^][VpAi'uMR$𜣧!4j$H A ݏ ~JsDƴ&}ɉbYPF^8rRmk/X.X_1 @2d4ˡ@0;vM|RmЗۜ0\Džy ;R]d\roú.WtPc$Q,ʸ[Ëj_,QpԠn,8`-(;-I:NRaq0\<2̮Frt|gK3&u;']jjMW3j=Ou͞[ZKEZ.wm`|emu3 3\i(ckQz@nc횗V5Wclf|w`-ȥExIvBo7d)}TG5To Ew=[5 ;,9`Qq1\qyZh[-͠x{N8aε 9fZcV|'a?{$Ի1vSu-0v}#ƀ3o1PTHRNGYvd6eb׀gfh9y֍x2A (vSnΫF_/qΌS2vŬ GIp9T -a\FC@_[ŎB0kR<(ҍ>eF'Yi,{Ʀ%b\,=#vG L{jd57C?hz+ooăDyrEXt$xBMܼ Ȕ]&>¿<"f9w{<CvD5çmwxI_UWJ^Arx*&z*e)JS.\ܸw)L0~"vF /7l -a >Pru)[RHH0ײpn٤X/b\:r싵,['l ()%pt :}~TV`9ºMn!:,vK(Zo hzꞑZJ<]- !ntxH#U\!+ðX)A' jG]L07lAhN,GaOJ%I)=())H TQس&њg]k"ܖG 98COd5@xkIc l}4U@|@rY& +7.3C'Xڜ=?2oL~`ح4#\(~QLELÙpw,O4 ":˩Ʉu #v̻SobIF#0TZn*N QQތptJ  U֠ 6L kwXj0~A1f nA@D|1߃b)<\hPHφk\+6[wtRC|{Rn<bٌCt#5֔jZ ;m~ blp༑k? !6@۪5Ҏ[kA[ipAOF31A{PtpБ ߴ{L 5W%vV~MK̨%䴘-l| M̟H qi"\1e ȻO0A OP[ZMS.C-3(5ȽȽTE9?tܷi< qfRׂ`A2VgP]449l߂d-V!0,-%ڌ,+Гa!P-/<kiVTMxUBTu{0.w_> ,J.'驐]Nv.& qbmLBȣ ÈDk+>dY84CK'2&@ݿ;q.j \M8/4 qBsM~@Ihe( 6dtFҪϕ`jA 1AD Dځ=}Eғ%J͓#ZI`t8JZa/.S#þ 158aUH%0  @ތA+ .ad$j'ԅ%|goTt4J ?b-u4Ikegzkɭy4eid&ЯJg,[YR%:Ev:D;2<4KF3v7HԐyn%Fc -&|:ZӔy7 2u_zI9& M ^Pe[1iKwo@yOiR/;Bzҋ亢:R@M8%kχ]$I@ 4@ySpK,1\˗)\7r3jFh8*dkINx^{RT)#Xȥ-LB[za#dxh#^+Tw7ZY*t/M: +qhN3KeU}smZ]Vp糹o{e,im%̍#,ܼ#&>Zif xNN@_gyh6߱:a⫇(>Ե5s&^CiKs:!Mb؄ 5cNwrD<c/}0e˼ڹ3Y\Iv!Y T$Qv$tY&?c_IkCf+{ ;L"0a'q NULE5{́ u]ɛNY הë??9s#]g an@V<*ş1 R$d}RU@ݚ-S~LC0Mn .tćجBs3 ,F "ՌXzU N6 %h/wZD8j v'Ɋ))x<;J˜”ÉOTL=oϤ0XH&l Jͧ}ɭHĜ _F^nO\;+p;xrY?Q0֌LoH1 5?gh ťBQkj47!OiA ͍m+_BGKjyCo KYnE !`YfN! ߼` i?76\[Wsq P-fHg$S!ɴ;AR+V P"D꺙U}pݬ=4_'EJeƢ=lzMe )@ȧG(xt+47ɉ頵C qÞݙwq3Q⇥1ycɊ=&uAQ=>Oׅ;m1*$$2/6I ^㱯nNcZzL²NͺR0S( &>lT~Y1$UHDo-q+T&C *oDdxϴ 8)xF6KH%p}Zdwk[!𨄤 pȹĈ*CfbK烖/0LK=;:?9/>!tuZ?g1df Oݽ-gY_\>Qm8PVb1 ]韁VU",Q uZ\CR.7\I";Fof4H|Ge M49Ֆcuut ]C"6 NX'Q;] XŞ?YhFO%5ngLh(dNImgfIk&:' z>(՟d [l?AIo02K9+"w^VMz"ge_Ug1E`ih89FMFqvҶlQѶ|2*Zcܰ0K-o=R/@Wp¤^r]ѓUDH 񑜸V*-2G(Ӝ; 0[Q3h$bDX2g^IuGKɵ*4X{(.y&r_ P l!ƒYYQ%4K t]^Ws{$,ʤ-<8S5,•JFZ*;/3:aPCdHh t ݲy +*kq]}p( uLh@6%c/3;C8;f}5|}Fon=[r^l0,RקU,XiWMƍ#>T;;bOg_LMhq 2 [/J|n#Z!IJYy»T# y/s3NI7%.\:\kDjI vd~ٶPYyE/@M ϴ` 2$gOAEŹ>(q~?>v@ (ª G Tּ=, wWM)aR߁I V(`Pl;.x?k) ک) 85_9 I^҆GBdfS 2m &uGัAi^WHMe&SGËx뫂jkuq0bTUuJ2P#L}ǿf~ TI.H~@ÁF64ZNMaΚΈNqñ?}ʞMm+%@3fup, c.Ļ(1c܊}TӪ1'~;E(t zvmMN[)FE7\mT^&ImԏGq,͌/@r0$vQp-W^^V ȵQf[9j'Q(=4IB].6:W9,P,I="tf7@V )Uǖ w s 5#:54JsɳaK.# t2?nU-G}{򠋮3 ٱzmx =H=@iW_as ﷱ͐MIJ{`g3aAݸ#U'Cj"@oe^hJKa){[ pSe]x_9nJHq^*zicd-Y"w;ۧaԊ04m M֖:=[J-!!vs9vJOCa {B=[Мm3SAW% \z8+lEqLS_U+b`k69_֛{J"/@vdž-UnU5DH_=ax*kEN|ڇaNjv^8Z? iI ipX6GDዘ d1?x Aփͅyh#̅H`\ 5Oއ)F&웱zM(z՛[J! -(D=U +&?gXs?0|I^Z,ND)jo?WʽP΂U>CteVXwhax-m2WڢVp@8X_Q@9 փB#"O'DGg%:6'Q%BEzN[ eeDwdBN ۄaDS s5ҩ&Ča˪EWѱݍ++7E0~ >F e2FM̓!Ϸ+rz߁&*ς:X7$)"3:uEWrh򰚑(6' R,T^Ӄ]}#&+vuA$wF 9M\ [MErl%3-'ʴuaW)īQDxp@e⓬cf~`ÚdgIbp!N; Yu8֏X9܈[fm#kٴO]2Ī;$ڎπI_M\g5 0Bp&(ŰS@ܑ0y@ٷ _$0uV.3@y(K pY av|hbheEoÀƌBvc<>U-j L@X0@h0.3E0|?'"1YwJSObWZaQYjQy6)30K,Ot0;q{v!\_jn~I(BEΔ :JE IwJnǹVZ?Ax,ܠSWaX=qΟ/ةYMD.EzX{'0/kz)l#*#r P\P rnj\CN!>~.he}{٘CImtQ Ί6>Emnx"!Yu pJU8x$Aʧ:O3A%.:fZ\ =ثh^yÇzb,k` b~oy]+r!oČlm.2h{ꎤip| #jk !ѬSn!+_#?!0P=K4˳=Wꢁ!< c{/ JDj}w|i 0AA2Rh(.Ɗݝ4 hΨ&"H(]jۈbDxq B<+l[߹a;;&tP#L]]Iƻh0LLFQ$uUtQ@e!<]fug@.n;W mbI74sd64$No] b@I)dǠvJo '׌&[=R.ʦܲHELp@}2D^وJ+!j7@{\ԶsPw5v籾\g].oiȵ:OM0SIKQ+ L`!k?hP\6:ԥq 7Hs5K("b . [qSϥGm)$Fj]%5CԖ! }Ws*VUQB)+%kg^1s[]_c^-e|Fms-8 hcvEbm#SDHJ&*YEu@ 8tOSlkp0Eʆm9u5CXlLn-  B-bV8Mϥo$˜ :@r~cBn6 C-Q\yL-`D.Vf~Ɍ%#=3MnM%b&FEdhxIZ}7o'^nzuk*|Z´50l=W QK#*@M%ahpp>$=($ITaFՠZy{/lMQQ 旦eBjw\6Q_Q\7xxĂ"ΜAcK"5L'xh-5Y7b_8g%GhN^Ξ1ywo4B 'J jHCZ)~J [*ck?1bhvzvx>"Լune Fw%B/ԙ9Q͸51D&7-v]ɪ0k§π svd3qHf0g+&Ln.3ˣ'0l@hmdSG.0 >|2e!Q 4ګ!n $0f+TJ9 VNi28,fZã\ tQ4I '&KT=$qit0?C Ap"]3,5 6uw1C@G+RG6ԇ%ٚxEr@|d[@TԫV5/wa `S f3Ki[:< TRr \揝_*\}ZT/Øg̸rB¦`SC Esm [hiWu7Ʌ;mΒ:wFEŵ+єtd^<q0 --Ph7$k;\ҵ5ӰkLt5ZIPMV?ģ.<$BVr\MF=w Sy8-OKJYAKڥNi։8]U˟{":QNf$5vpSIUhI%|@Ku ]h^QbtaQzMv|ׂ҇"e AY@|ȏ]Ƭx5DUk7)'c# kYFYSJbY?5,(Zx3ɑλb)KM%cKl{O<+z@bRk}{'jH/9)gLXc~It=t/MW8Qt3f)߷ZqҳAHb_]mϵ f|ff@'K||܅>& o+<8 =w.L` @ 7p<b=ߋb 41`MVĝZ"uTT("][=# /@9䃋Ҋʹ>Xd/%i:{:^L5x" 3j4?65XZ>@}Ȃ( >TKc"`MhO!yFrrZza`pܕ_@˱8R<ȥy89n;6'JtlHM>T88Oq;䧞3|ImhZrjĩa<9께z= Y=p=Zؾ{\uטD)Z}aOUC'930r `˸\&%d9 ̏ ʺhZy]R >V4gr4E*gՂM9xID[0QOXC wV+ם bVK9Txf]]ʼni>S}/[\C |d'TOeSvz 0 #ih,kp/Y j#t8޿M}I{#ݗ$JF c %8E/ [zl0HjQ(Ps5<`F,9&kdL-+QV*<Ơ~>HJx˳}y'2wr7G%mgc/ezLU `Z67&;Ri iBJ͖LKc&'[Ύ&[O tJ66Td0loWW}< )ζ'R}ˡL J #1g\4ދN7s::>OX:\zgFQEvJ\Ry3`!(:&Kb}h3 ! oL(ig'ju`,n g=4RFIxiz|dWYK@3njǬMbR P RY#?Bi^(4\[0|"jiѝan)`nVݧ` /s<}hԁޤvw5A 2@.:O[T2C~ Y(!%ie1m/k:9ZO1Am*:*65PdOw SL\B^2_Z1K[u،HۄֈX;t!S/^+m?)"O"rcP%EXs[2VX `]q髂,"Ȳg Dj^|~rWNpit)+\dCUlBKR_#_I~ Ajv*R;Шgq^MD(=SQ_I0 m@q|OL)`{ㅲR2pwNɊJ!0Mʆ X g u!vxi5 ],drMl t,юcRJ-:f@V~jc\敲!%Y'T}ĉ=u"HT4VUW^ [3y~AŃ6tR3E1(L1C 2+Vه(ϸ>|_0Y9㯄m)5$xXS3+y7r uw0m_ ͛y^G1Zd'eᅎJ]?1;Bb.@}mtAC Jew5m]2'fLd?>i_uqE]I|=uѝ`!{P×.Z ®*E RHP8ge~X~ p֏aCV=$rH$x7W=췏dL8𭋂.COٸ/Ş;6dW,AzhC Չ[GgtoHa} dxy|װF^ܠ!!.`Zn:p`oRc4DAv@~Y:7juI  1G|~l'MJ:A✋GV5h#tTewhύv}ߚ"wJUL9+`0R `>W} /_dZӓDI")"t BpinLyR[j'O|e>↍,t$aVֳ v Q &?+ñ2Sݐns"sbOpνvE_7.3,`2(|K>حIB΋a+\f T1憔 ~g1RLP0ՎMIg '3_Z>׏fJEف/ IRPJwqXnjrd+2}Mt#4%R1PU H%>Y rKK,spip&ϣiT78[$|Ā0P2O BKpEC8d׺k3v` .yf9 n5 ]넏!gS}16Xi n|I\^}<͐e~^S $g@[X-5+j`1-X鍖D8_;SŁ Rk>~2CD1 93U`Р 9'qt3ߨAdD WI\Á K/% V"NG܃}8IӾuؠٙ+O9S=+Ђ*`}.\/WtD~B@$7Amf>l`+6Y˘b9j[_en(GqV V ]oc)oGXoMmtT ]:>QhpYW\E` ބ_g|%JƓ CBٛЫaLiڟ~'Oȇq rlp˒2ES3 h;ιxuR^t]W] @ OӺȧudRmH{аK(jH,l݃{EąM,xپjzRҬNR'ȇF-'ǣOVgѽ ޢ)> AdC6 I)QO KBWj{u({Edro<0֣h eoC`6"k v)NA:<>'kEZSwsɍkeu2ߌײ6waҬŪng|S`&EoMh:G2ZmF0 W)H)X$s px4/ܒ!m+&'lmgSར./v#@I!T' ݭ&%wwqN. /FL>./Hz=Ly_HeO˾`_@?r䗞~v;Fǃ&W17P]d:nH̕snx;Rvj/"j,c"xZ<\娖L*IA6 q9hw>-hZ3)D 5`"Rͮ4ǿJ*rzgo%Bb\셸$qO.;6d /WmY `K3@)*rɽs' zn/+ZkJR;T_)|g887*tä65+"ޞ^wC{s(1\cߨ[(y_Tal#_/i.m ]r?!2jݗ΁PZ fb\FԶ?+\6dfpG?-,wȲ/ck6_xtHS-̻YLdUq"L?QFG/]gO< YtEo7P\B#YP~7N?h$n_qR G uiG l/b'fVMlį4LXKo/_#* `ܟ9{I ]Hw\2֩G2fwNk'`s? <1owxy*B.L%itf$UY~U7\l7@F02qqZs?ð-%U,Δ+MˌY Z'VtO(!QS .W/&ebf+YX/8Il~Z̉x6-ѱ"_s荪6zz5gE$?z)9[K}U4JH6&w{~R9T*D{kïV&u]ӹ8\ S?[0^ښxfgq#lFXK# ( /(ASGG_S90; O2=mJSMkW/)oF͠ӹ݁`ÅE^fiHkqmg8sZqvutvPV, J߇ YٴBJ:hA 7]lЅͬ0[%#NCbkzChM}9'dcL|!LhlGpbZ~<;mibNaDzZss=~E L:)+`lxe[o:$7V]AQ͋_L9M[@]IKi r=&>"Ǫ+\PDF%ş2W2?8Jlj]Ue*k޷?p,,Y.r_xqL#9w2L$qQ,kH!]2g6A$F@7Q0~UE$~+d澣6O#Pv]]b[?]rڞ) `M}Rr6pXy鬽BH=ڢ\yL36Ogȶ1 |/ҥbsy4 l 1J߳XvTv%skrם*š>$-"Ze5$kvgoe NlOE5d@&oQF-ix9t(x1Tl8n!OLsVxZX&! g~y39cc Xw!1 EB鞗O ) T8罽ڢ{E8 ޺ΫQ"Xi=oVwa_'D:[tkq+&.:>=9^G!]|:/zLTp[Vc#떇yy, ’,aˎ(wp]/!-5:lҲ5#\C l)wCgj}9iD`aX+c"S} oV=;/s:3TE`* ^6=XuEyQ Q&[Q{ O+AAk}# ]aЗTڵ?P=ܯYMS &lioܹ,w%iq|t7PqK*TDX>GZ Ju(hO)yoMY)u9j>I~.6.M`q C] αo["F|LHw2iԧRB?j:xs*^% @Gj״5hFQ55 \_Nar &^IzOWTj$`X)YAv'+a_`\7' wg&CM@#SV̫=[N@ z4jaX:'` @N`/:U; a2oPaX&Dv+)L(ǝHz4WlyO5Q连Ԗ*ݨjmX73xn+$]QAtTbj'5WH"Zw8ձYl$t LIXR) #N ~d%::Q>D遾gpг :cN(6B1e+ /0$$tG9*h'r;Hyr}IҞv~a]KbYw_}:;bmBXn=rQS_e)ogi0Nª; 櫘;N`xELʳA":lGm@2lNK W) ¹4,5-pl2kϓ5C;n#~нdaė-ai{W6ـ+C.Wlp#qrLtdQ <%͡uo9h[fL!:hk~9QeŬN%Q$MD-R_TZWeY-Z#0 Ho4$ Oa^rMHH㪎-8z ~Fnp#V҈'7Gp[ q9nii"x7)" W*gOEeg"lg֍5~&wvALTz [Xc|H|;^oj0ڸIS7= GNɸS:Dn; Břd ^W΃?UU' FOWXQ"wc-D4+OǛ _O Q+(&;M *(j4^ytS]@? !a87W`}qG}64 S&>JZ=#7o;:\ByhA2&[ xT/d / ȢCdS9ၬrxvS0@yѾp}Cx-4y2-:d%cmZ@\oZ>/gismfө10HVIV/mSAڣLMMZUV%\) zĹΫW.3/`m`J{Eǂu恸>8M\lt5Vw?hWHKZmngl %?D7 eW߭gQ_: Dz:+6ձ _P^3p@ jIaFpLfj9:j;zc8;-e&MiB sU`bКWkqCcK&Wm(8e .L ~>'!FsCNaEë-OQ?jF! *"uJrklUx{u!܆5i#Ey6>h_6z/$N#6#r)qvvTJE2A-v]Wok\'i"v@KYBC50g}Zg ֹ}jVSP 9\}FW NEce*l]+`֥4/5`zO;]Chh+!j}L(Mr,&ԥk;*s+tZ\Jidnu}uv_1O+l?v9}Ofⅼ>%=&o1SC# @o@ٽ%`?6X r8a'4%.݈.#2M. ; M)܌dP{zn^+ᆭ / V6Ϋ8q U 'XGD-`>{ )K39qV N'*\]GչXp^kOxGD, 4) F7KQ+-11ewpQ쪘CkB֐v]tĖ\ \pBn_ 0VLLu(MD!hŷ+'ƕc򇋉}wVqMeݽv'k;Oݿ^3,dG`5\|dHPagjjp/Ԭ&F_7~%C&?yt3 .rԞ% '6"wÄ!5{YG-5ҡ'G@ W,lO^*]W ST@9gMJ zM(<0{z!WzSuTmx_].IΉUnxN5TQ+ΈpaR!s] VT[OQIhKf=PB(!c>X9F\\/9ݜ۟*ۣXF(pr|Ri~ {XbmU{`55`ꉮ&嵧(,'j`gmP/; "/Ha"#6 9rZܣƮM,dݹJ:INL8{D 5|bn+Я"C@J=$%G`نvSbѕ`HIo]H iϠȒ+hH<+^,.>ya8`4W@R0wWgå'+5 :ol8{\aD$Xxu`Rh`G:g1Joo%F~92ͼ @A|vt.v6TG.N"hPBq0㢨=V``}$>0p+ _ЖSLW{օ =ijj*\cGd+dF٤w)V|^Y,4FJtڂ-S:S5T9lʚ Be:X49;8U#zXull`doRiP35n踪JHRB@ywEG){%)D8yJ]<RȨ<;fFecix\r o1R;2Lp+H۝p @Cw4;z `6TV;;فPt4FZћk g ?E Kiwe(»Ԗ*ϹO Nk~?u70I1'6JNdOy~0D(ڲ0@/ܑħWzȋ'R\&t˻F\ܼyWmCnQ|}&D(@OE^ Hjh1X6G=?ӕdeKx[)ǶGN-Kyo݈$]aB""oފ+87ll,27dvɍ[@iI[- wA2_5Jӱ}|01My/[crۈWm0_gH߾H[6Vrąxכ.'<@u`~*DiOtsvߜ˿0`z ekf#2C|ܾh 4*;-;~ q$[& ~(axk "k9!I/ ώK2b>Ϸ6X6xz9P FD.VV6H0!/d}NXƿ._:L08|49 tڟ{,fɖ<:u]J4`>FCdWB|Kjv㱆\,OYIjܖ3T48_Q;gf=Μi9ݒ L7Xp1p6nwW]QMmYFj~?֣< (5OuuQ}R/߿MDcd"V"6F7pgF~4#YM@06jn _K'퓺n5i<<0pоx29p++(p4ZْD4꒻{iȷOmM mp$—:4AVrQz] 3v]f?qʀcl=*<ӆe8>Aʫz5Mj?cm+pĕ& 3!872pVYbd8_9ѹ;e7q2vRMzA9n; `LBȯCz.jWg͛z*F|%rG-&F^jCbY$=nXV&i :rwŎ+^jc %^/*:U<6W2J6< z  {\Cq&c}F|ٍrNF 0ޣFSZmo%x_ѡbUc$b@[/&+DL"9Gdjn51Lz|TK?mȎ CFv[,-Cfߕ` rW4]Z(P6h UrLe%AgLU)7[:+̯tP|J?8!kT#=( ,%j-ƍxv@ !'VWȅH|9%7 c龨?\f罽j >;o3,|uҺsׇnSV,g* 6f+,8 Y[c Âlo>4e+_*8UxuTDRGml2`xټew#::%̴S;ՉCZ9گt@-"'J" 鉯|ne $7*v^9tj.,/~sr` \<`wL,p#E,?x2<|'p3UiWvvT8bc\"B¸`7"T)~[Je1mb`H~Ϻ6gA'uf%!4=`~4n:៯HK!Q@>#6t$vJ_<-C?b"EJ}~^1&$ p5K@Σ_ZCcK$aԦ5[m>ՒAHn ;_f<<+Wu"Wi7⩻lFڿq4\FV䈶n8n~Ϯ[rK^I2zg%E;GՇY2{ yBiLb c>a=8we) ƗX/-장[0zx$*#u9?1:.ܷ(aؑ-`0! F #}4-LJ&޸ɘIZ gƓᔖHl,&ǺJNBucf H!D\/xWH£+3**d#e]ݡQg,>5w(/3!N&yxWRi!>)nxbmߔ)4aN %Ӝ7qb!55H{KM &ܼ&\zɧ<^A5rdr~SOaoNh_\:&b+(;JY+liP#5mnJaOL1OP(bFu׆5Rw$L /P~U*hO=C/py_l&#'R bdI uF[TW|O2uFX&K"쬍$(MQG.Į8\ma%SM"yήx./K uG/TZ_}QI$s)uI9:/>j7&,JoO]1-BL#e륤CM Z+gGP 0%*ژf,ށJ>/(Aq8,|$_`u 84Wͫ_ѲtarKu4Ja~ׂmQamZtu9/H=+LneL?ɯ: %)/R+jյ:orG& 7Ԇ 0ͮgGQ;aww%˄2}H^c;pQbhlY6TGp k+T[ y [xf۩pMCB6:(uK:vA^th%'GG 5St̜*者0yq18xh{rـ]/[Y pkR aZQ 0AVQsuַ&YZ?ISt Xab<5sQcۦɲ7}~Q+tNb"x]&az:'7Sw,6+@ 0 ^{FD@SMIh-jKg#GAY!,\9)-!ǍNQt*fRRUXeiI2T}-'{}hϲVze/Ps U2-ai0ֶkd [H֯FeL./lvJ]uFnq̀ei pObTѺpX:yP*)t9lIUKw.NV+s,ħxFE1IOVnt5J*6ț$jA!B0w?_(=i{s6ZG|NbQlMɵz d]N{Jq35:=E \; j!bU g-`8cWH֭mB=lzߩ,g_&K[*. 8@"m@W%]tµ~8j&F.k @Es/o } ya¦0 '窂v׊-EGXtxYPyP"k|7"d95}\1-kkS\;_p yB>~H2b PE 鹞J /X-~-,s(ŵ +FJFE{DS:97 GŅkb_ؓ#Yd| S:F3g0u@§)D^ɯ+rP ,v8_ M.dV")W8h&^sdAXbc<eM*z*`V `m_6_<5,Ng-T,_P{IoŠ ECuqGԚ5"Jlыh@mCq,>IҘ ӖrnIgTIyh5qV$y0yo|׵pni:K)aEs?U/ [ a9IO}Ig8Rp[+UNQ=u%Y$TOزkwfÞmV4Cŋ$_4x3qK5D=*NEWZ9n`bo* z{=W7dHoaK.{e2Cdژ7(A&k@] I6>1N9ovn빎#s>w#x#ؖ]Kih)T{Xff}9 UOȺǸ5 8Q < Yo_[c:m~QD(S(e;Pm6;qo,[e.sϋ}(9 s09դuRƉpttEhPn4\^ńnt-j^LoKr{Cma.0t|_H,ofkr S/އ*y}HۥGXD Fmh 5M g$lW#u?NU%VM*pժN, 6($N6!+BS8ΧUЌC û",T3N.qK(:v,; r*F;i3wL"Fg64W:2a9VWLh_Ncs|f";mYrKrWp$_Im s >$㒮,ЈEɵ‚uܴU) '藕;rH}V6" w"^i|KvÖTnPN\I=II!l mdiPd{A"XlT|RߩXqš.;F|?.}8l]* J`_kf8`RVWeW`>Mftb}\( bnF?qs]UQ$f{ I ojmr{ȁxb_Wy1JŬW+rp$}.{b /󛦥ӣD.֏!GeA ǧl<|3e2RȔib|7 SouqP5tN#dhα6wZ1&ʦғr)[O㉸$ 8AGC>,zã_B|OPծF/(7.RaAuvZ{jӘ(Ã:)յF)-0X]|ڱf2NdV;;^z<2pY՝A\ޙ49I+|ҟye ^|*9ƣ"˪?4G-*"){gp?Pt5JvY˔0=wg1'; , $ ?R[:U+Vi2,5b3k _^bBq9o5lI) F&s 0Ol6&{/g#p$-߮D}dzǬAMy˙ȿdnBO_yn۝bٓxXUʼnlV*Kȿ*QxB䐳BnDAw@׷^ȓ-ҤR;9kqӦp9yim0QT?0jtGTBE'iVyd|~0m\ԵY4:F{sT!H-E ܵ?$Ȧ>Gv=^)fPIdn(>}`A\+Z(/gOӴc8%)+t!뻃f,$jբ=Rf-y(tO=̟RPlÓOc8|ue^q LҡS=#!SJC! 8.Pyg'l7 ll8FdkCڑS͏PFfq&utǮQO HtVۚ؇*YnΙKڷw \嵄yPXՇk:L4\6b2nK"Cvt,^TMZ$b2zB{WL~E[ҭCSƪ'z$!æ,$ƒ:!?]OQ(AV5<ÕOh:O\dv2X-/ }NkAS{Nz`2=mr!kX27 8iИ:|đKZ޹蛠v&$y[#2c>E8-YXqRs EjQp c2)˺ úAunwfu$4z$|qHJMRֽw]"x Z!Fhu GhC]G.VSZQ]UVF^<3#^.K.\sfz`zq,Fۅ8,.kAFfg@Duݭkl05; 䆕[jmPPR9}2$n7ϻn'f8/ߕD@X|b<.j7ΕP蒄! ;2Iq$p)5+hV,%7@ :j=,]h/+EO{Es?zwlyJ~cQ] jZY"(0@1/%hʲEC h6, /7OԦΜ ( Db&v&\ fl1BG<Ȩ>%&HIR4G%1Khslߺ!}b[ ;G:XR8_)B+ d qpCt *!V_Nͷ SZʇt;=3#g#2۵k1Erjdm8+N5P}8\%@5;T3~T-4Gkߏ&-Z1X@;xsro*y쐏k/K`3SBS%}Wn;j!*M9$H-ڽ5>>8;}{t3tD EpA[Q\TaZ] &ۆE)]|q.=um3&lH}-?$sYTpy2;8Hr¹3/槳bS`,. +)&MW`!E<'ֽ>Dخ1BN^[%KS1TPaFFoktw8%5ϧe[y Gر01U RnE¥M?ak>L)-߁L 챫z~w!m1 n[SԾd_YTa |׏ \O! H΄$L_sj\ƮS>raGԒI)>v}?x',{،ies:kR:NN@2kOޓn )sQ;6TSuG#pXu ĝD-ӮcPtI؊1P6ͅMxc>ƣSuj_ےjsOԌPhۃEeqYD@YO͆Ȃ1Y=@<J)! dpBM jBnŅlgxV>Sʄ^Xw؜1z6i_Ngm\f gT&.fXh F=X90wȵ(5+rs( ?mޔ;V}[=M'$4jM:uԸ@%umBoPuQK>l5bt+.*ܚ-e;Sy=+UiK*~k?!Hy q/BaT"d@Skbs+cf9IlE[靂 ]9B}M7yt 8AB8{ sh`k+nSwStu;Qck{Z?]gDגڛA>7G$X,BeG-|d,p~5l£@gRmkJ3~Ki LWw% lZ>1̠ S}e9JI] i9D{ M=_ƪ6 VoG".A5`Ѹ?˙ڑGk,䠣8Ԋ ݈:Q"<8DlA"t XF赗}3w C;a1{iDj^;4"nnssPTCۼpL zs` X:8 P(dN= TA-7(E&YPH4Ga-v2z>I  c<&eN[&AO~b4dJ-nWCL%VFCҨv<٨&LZ Хycvݬd|8J K$,ґV0XHAb=bPK%hF_6+SBoJ!.|݇ B40U^\H3' P[mo52nkȃP 77`1VXWjzi)e3_ŭLleplGGSXD^p$i-RpcL3IG͙؆Hp.q7hA>L^3/?F᧠T/(06ĝ+kJ 2,H+Tmxe#)ϛ&$ z)4HSiS_<0\*LW+v7LhS7Lr}E+ҸzZâ NG KҨP8.([O@%?{9.TtLC!*8k,-#-W ]RyO/Ho42`o vZz-*E1 \+?9^W+#itg]͉nvu^v bȱ[M&f%YTy̽H91,pz'sm aJI?Nszh!e];EBXmA9Ef Qf%xoH8AM7sr@|%rΓ [rhZuhyF[834aP'a^ƉㄥVt:ͭ޴tF:0ۏƑ(I4|#t:H`-rau>N>lht=IoC>k[KӲEnh! yRzI .,@5tC8[3c68Kˮ~הd n ?ZR1M;ahʓ$5fw5>m#/wQ@13vL #bs;֊|OՃOӱ]B]7 Mϵz􎩘W ]OV%_ v8swt!'JhYP#2$2س{o#<\,m:ǫ7mh;JX4>3Źrg4F,{U³>]xilؗ$|f67\YcyUwNMB-B'[λ6hk4{ڜ}!$͉ܰ!27I6nAWL :%BSSHG^1b5=ݓ_>"toPlU.'mAGwNaE7chE} .^qR\8xٚɲ$C &Z{MxhhzclWSl0%-V޿$ݠBTY+bc'%Dfx]Ŏ-dh|R ̌rU B_=_ĺ O}gӿ",xGa5t@uXl.60y;R[Bi0?\){'Dҥfٮ) @N2#y/s5î;~-c?׬vjWݚMiZCeMN%C**^,%SQߨא]E I[=}?&'F^ >|&6 ~XVJ+cr#C*-bՔPRB֭1#4W_5an8"[P)r ,B77$\o\k;'Fm FI޺r@̹ogb3QZESOHx+֭1~VT~<PsB^H—|uC ?5Xע㶚VSqz!Dw{:#ʵ8kб7nst3uysr c519/ywTL9^{'ϱGUM[Rͤu ce#H|%SU.2enwvyX5Q, SҸ1k*[w#/X1ɀ$FIER̜x~Ize'ר"7hyY( &h)Thua).1SMM3R:Ag\5U0|+Dd>%fi|NQ/), c#I{,0 Q>ےlʹ 9ֳD51`[g q_˛Ȑj%?.UpW)Qy2˲<@ >RݾR3)y4p&8NnJ /,g,U [(-%C,uK!T}e* d@zn13RunP+1( *eKн\cXʞ##Ag0⤠h$\Q01,?2s%1gFkoƺX·&ɝy:{h@E|YĈʾ aß}k}]0{VE0bC}0ԏ@-EH3:f?M(aQ\Iߊ6akp;;Ql(,9ʁ|M!/vC5M/œ̤@ "%+ԅp+$:UĶknnj1t:Յe2%!T'cP~;x.qCW=`4e$ѐx,^΍1[ t)uHfo&0(ñGBat U?~Fx54iႮݚ1#d)L>XDr>}"ϋ_yj=`ckۃ[ N/jdv&!/B`d(qz+e4ж nV X)dz( A6l[s7-⋡b=oo; B;Mni M`}Ҭ(ZXJiʸZ`& k[$n1ވ$ ,>ޜS R 1%lw;6*%>ږJ>XsM4띞*̴7yͫ'nn,1{e.>`~[3 ܝcrNuv]+*'|Q?.An\-?Jជ{<)yC))L#dR ;G8}l@gkm؃"6VqI3<M\T{Ծn9Z^FUĤWY;۷E8]7_Mewz-w/'&xߴ4lHK='c qqX_ϭBV;Lvfaucr]k]|;-(.>}zqM."xȹ ^HIh;P@uB2Sk8|"#N$,r8`IwdQِJp[O8!0+;~ Fv&M^@S^8EXCJNk#'ڎ$'7j@5enA4B*Mb|x~I>Ʌ9 u$KҪ0Va_vHs MvD UUElë<ݳ-s>{y3HGe}ID!f%#hKοȩgKdΡ窲CyHn!drzZ4>TEize`- @K/ JѾj50}yJpB`i!zQ'֟cu~mmV&-S:L^YLM]*M9argX{ҧrbPGBNؤbd6EƇ|eD|ꆖ"=DXlxψlǬAړZZ uY_?pLb"PF~SIǥT]G2Ar;J!k٭Hr>Rch_|V޾Eq `a{@V}(} dSHmtATO5؋'9!w4!y7W0qp-> Zj 1Џx!T 8rpйaW.֥ 7ôS0x0oGgqwLnީ29-r-} Ce}m-ڹg?k8S丟D ~w [='Xw#%\nǟv8 QLx(uz]Կq6"LC!@4Sv,YO (\ dV٦{ )l;?(J7<!$t0 wPDFVa3>CDoD!NsaYLh-II b Nqd#f L$t9,،ƛb݇#I<8-c۱7  BxN j,!vOw`bAMa+*;A|"ug3ޑƮG,IUA9XQE?v˺hnGQ؎FIأU20-;@!}//&H7dpcl8&QsAkBX1cĞ\[4҂<+jzCO-0N0rrP4[SUU&;ZP8pPrwE+,&{9e,HʲA"]g4^ENI Oj| 8G+Z:n ;8?p"dX#$9o[d=U ހdw.tuM 8^q# @6 itxEI/ׄ`˂"${I8IIbyLxB8a⨝$B) zWZh<;?#CxipSCGz>[, ϛFZ$jޜ NajE*>TmIcjO:kJuK1Y^ Ej##}r߭8>7_tkjMTabJk*#"V-]_(Km筼?M9i|YjNT=iNS9H-'1 6!h\Uc۳3iJ\Ł| H8fz㌭!ZTmrسXyU 3"h7Rh)09 K^XA)Xۉ9&CiȻ,niFɄ׈Z:LYRY*]O܉bPGrT"G]BZK4QłBH2ۃ WX" 覣ad;b휱AA:(ZNyTC}|Yz@saVy{8.idE DW`!A$tϡ@(%6+tt AEo];%$FM: يBFRR3r!\l(RR2>]dfQ|ԙLt\%恈9٥het vrHQKu2cw~xD'dÉ?tBe A5s'ȶ,`hA`#1i-5)pp]w<>觍bdA=$]<򕏿DU[7JR.rCav.|0g!gk>@:Y;o wix ƈ 3Z:rUIgu(Dki\ xq2h7l[%b6賯qM?_tG:W2DdW/V<&l^Jmc)~E".vezc3*$2Gd8_-Bw #ޤ-]{t֋Q\C1w#X998kyȹK8 %PI⌥ rķa還9 So֏3vj:[|\x4\^zB[mc0Qhyp)=m ;ppPO&HC/U>g ½c)qTtz P;M@߉onnVoqΓN]-p-U8Y.dXmcE t1JG\GF8{ ]A b }cmձ,j-D''3Tcs2j `Oɉ e偷ܢiPHڀKFf*jn֑y.Nn٢ H< gej̵1iP<ճgNex7RiwZ##° EpEE_36ld/sNJZZژY=(q80Upb4 nJ;RUIs@sVÔِf^4VuQCbVrn u h`*Kj]%--*%gz]<䟲lbyaDBUϱdSDX^:z{|Ɲ+ >ߋm]x)J9&0Zz_i_iܾT5i1oVcr!>,| $S{6N1NQ[#6p5O53)$(a` b[0 KA ;Jջt9Pnsz@m(s,̟`#5'Y{P=fC\0ѭR'2Y ˻X:~㗶.qaЙ&hzzJ=${&̚챲J'Ѵ>h ̢g%8YF{rG" :sv ROf 5{/KXg-͞2e?MW[HiKo?>&nFή;$ͪ A8qi{!1-6\(ҎbT#$3,f;l3RBRdRDbrߏ<fF(za=6>6v)'̣EH;) Ǒ_DAA^lB9O0Nu5;˔JRܓ+Ŏ]dd0(|Z0[x@j hG-$g.<D.y:ri|VKx6m鮫hUi[` NN v!o {#^x k μK!x465G8CƣK~V֧J ˍ{F:87Q>R#p!A+lBnvَU2nb[jn'`wI7_Rzsƺcgy ۙ欨ʻufPzʲl˷%05'w J% fz8*!sOnX_ݐIt6)-:3woJ=p9b=i\,f 1xM$ˌH>o5&UOIW& T Wl?_AQp :N)Mmk*r>#{xm/,7qzT9/`&\-'L_aۙE/q%L\[i$[,-^S! =*hC~ @V&çѤwĘ``c6,Va7A1>)i/Hc\hgYooE{>4.CepM4i nGO1pMSki?<=ĭ)\˩&DkS|o<608F,̪?F{V{u0A)96=9 -k ޲鑇߿&C=ěw8eKk+l~흣 $9p" ʹ\);BoNm+sd[aa0R4ѭIXN'dp<4 V( v!#S+~{wL +ӽb2!\-c3¦&PWBRr̪IαqkcXA&Ր]G Q`c;gm@~2˭ޙ8R-\Նdbn0JKeZ{ZU%GOr*Əv$n +VP ̅z*P&>|OB9jgO//5H6Ŷ(\`KAn"{)3LJTW SFOPo"}1ډ T)iwQөf4ARʻNQ]Yrc䆀J9X3e)\2O_CaoW̒Fp J8|^-P} `gP'ڴ# x뷣 &Ĵ!P4=p[LcpQ1洕7>棟<-[9PF/4#/%Cj_IxJxS4p(cbT_6i\2;<ީPgݫ,H6(FV6&snX6!8a.YåŽ3D z<*1*Tɱ/Y<1+}t&uٹO:65*KXb(@]ئUtGgͰ`'D؟Kwح4%148vbkzEy ނގWqVL1"rQCP. jT5;J ^bx/$OKQH,M`` S!!&i%#/JW}EIBiN/:i@ w~‰ZP{3V"@T{#$2{Ӯ%;qg&fs]j1oOfb9X`TsMDtN{a0/jZnQc*6P4Ag)BDz17ö&yڦ3*icɢm"rL ECD8 aDx`JTJ)?v+i K=XdHGAߓdLҀktYo#ppD:U9 ;j^<(2Q$~{O ^pD?"\k$ ] yazmNFd.]:Q Vfu\8As_"#܀ԧ&=yyMc :t FuZZ:yd^mhVKmlY]^IB3ŭh$?Y}'|¥%ӝz]cZm  l| T`WXxKhV7xcɮy md+V6[=/#ʽ {#|QIfYF#?*9i~n@vS;oɈ$2db(CWp*W\65ލ]",Ǩc r((<ս;4m]b:mEÅZs(\ek>C'^Wb!(.Z ȶ%m/$T*U\ Ɛ~~h{ 84I1BzQͥ%Pp/` a+~H.H΋!Ȃ BHa@:˽.'p|ߊ+2H=ԛJ3pDGay*{fA3kwڿ328k$zNZD›o"=O,fZweam\f5fyó;LHMJS:TBjM8| 4G.D"P̠!+/[UDSeb0:b6ZQ5Wnoܚ@-p.d[?fi &.("G ?1j PwH" &d6uajPNi>COOl_3Soo9&Ȩ,y64ـw.MQ1-ª+`v ynPM;6P %3аkʺ/ƙGGZJQ6uVq=_/xq˄4zid]Y3r{ O\ !.uak]]e#&Yw2F:7j8=sd!uvF6V<jq<ٲ-e=["zխxVQlUZȠt=OjLt_v|ucpzwE 嗿@먇kE!\f?߁d+nn46ް_[@$vdgȹrȽ?kD<_-=9uf9:|_/gT3M a$(}^0]@??z μ%_]~q\3jS E8G|/O/QぜQi34{Xcۄc+KMݗ u?IXc Υqnϔ_A,)@/xqe0Yv5D\^ޕzEۮ'DRJ S`M$'_d3W^p*nCw= bl.vDJѠr_AJ;DЦ*'҃M˅L.މD:7RDKibgm)as)n;qn/2S0--.)ډW0ʪSKc*+܃ -B %9yF[{4pbr4kK!Q9Ϳ^E<ɹѱIZ3 Ɋ*XŬEKi'[*櫡N)2quVm64}[fDnЛc#ԗOߓzhD :<5?φ#A_ĈOcF㍇z җ%:Y}w#M \|yn`KhA- CTt͂STԊD~wK,DoMix 9ѧo0IV@:Ÿ wȄ~UHh-R0@~/qGijЅBr,w8Piwpeo+ KӠҩbEYlK-6aˠ5aĞ+~홊> ;FQTysPf,^}ՆO}AoF8jѡlG̠pZ~r\) ሶ7p7ES=͠ <} 1=;,J]܌iM,z 9T~CU"rK#E1Mj*T-6cX^CMDڞ+*EϬ-_bjKYf\gvjȎPL``mku#M^jl"9͚[FĪo`㛸p p0ڏx=+#t\̊V53E^\$7s>ԤC^c}gȲPJlw)$jHY-:@֑iA\Wq*qa^vAT-<FSMouwq2 z])7#gJ^Mj^YH ,qW.o/r/V졨f *zդ8] 㭪_y&KTe ig fGgGzYve+Iș +NLɍ[5$f22b5nL0)YMHH w7 "ݢldYd_AnP*>KWI)1ҕSe i;IdLdϭ{ 9vV_m*'"\ C% ߴCG}P&lwa:ɺOq[>!fZ3 Wa+"Cf'{1ZS1 nYK{T[ۜLY"4 FF!;Ecf Aߝ`Kl{gkY9tDn_" YiA\vDyӵvOJb#(VA6'f2,}g9CI|)}Jb=JR# /do*wA%LLNYPR$%,r 73Rm'dYKIje]Ihq\BQ밃mu'56?D Rڳ": ~}ARmlFu@3ײ=d/;E/dPjIg~g8|:/*]zq< L}~HCqw5ylvaӃ;7_Jج4BQ8 *J]#Jك#/ҙ*?jd T L I28Pfh[/2񒞖ag1̥K&aR'fYMu`ȘƪŪ Z2X],w"<l"?dvw d8P*#c= R,9LNT;~ N~^fkDXi^%?3ID4x'MW4gu Si-8@K}BLƢ23ph5qf^P%/$6 Ͽ혢jB=~K#-,]Iߨeњi끆Bc␤MDs}8>ՋV`Oi R9o7pB#δYuaνr%p?ה]'"2ĒִM\xpN_s(~787hG;d:;Du\rAӣh]s/S&1-bwө4lk 6!>)wfnҲX[fvheKqiND8_cmyc7 !dD c:{t"/nXInUn_"tָeB jn!dlLj8ʎLJny #\RkSUr͍]m\V#Bׇg"~5T_4A.1 $y}1Q*orQɢ^ߠ`H;B+n :9>="3/= zo 'W˦ r&N ir+i-@ZDfAܒA%[O&4 ]d6HUN6Cɑ&:,qv)MrsHtq&ݐX $oVNɵ"j%l#T3pb(P?h={g0;!b'[ٮ20.ki.Ɩcl̍ue@#)ӊ lJJ^phYc2d">1%NЈvUWU3x!!Fr$n|i))–]ih<"pxgމkF#Hl~ E1d`粞L~{d4;t4@| qN.dZ*qr| Eޱ(A_] wԕ2k]:v Gi3ػW){j~TjS {`>㻙, 4 yaNACMFc5f?UmW)*RD7H`8m} O0Qߌ%dxJ a9} Qί)q˧fԿ!S: -SBwaxJpPۂ5ngj67bDFgٹ"1[suFk5ú-W܃8[kDmsE7O:굓por$E螿AUGߣYZZu(pmq0ǝ۳:j0NRѯK^S*m,J1'oG#ckDLl[\JpZ:iX\p$|訔&vjO`|u՛ ev nMR'-+Q=94𮦨,-\J:v+/Axԋ;$;8UE*ky]vRȚ(xĂ> xk^^P9eq1ITv]7%1O]TlB!*1Dd~&S5`_2v▏%Xe1V5I I1>+K7\jBhDF ^}5@+έW_nK4c h'#Af,O9M|FXWҀ0r6+S8AOS=rr^xѷB:RԷtǨY~G`#.k-{B _;cCK,l2ۮQ|8vzlB,;h?Njoa.5t$,`ξIDYf T:1c_xs`O.3t}B("T8OΎWMK?1(}]U紁V{(8vrki͡ lw&'5:4l Qs̔oj>!%nY +$Ѻ2k~S< +Q z;VG|j;sn= ٲ]‰Q_.)VucnbHP& Q sRj`ޭ'^c3tp*$ 5:yr¨OoZj<s@yԛrV1UMhT O^ 6x, r Vj2JON_yZWNH;bYS|Kbx yZ 9`#5?;ϕM*6gr <$*?,sH@7'r0gaЅBe~~LJRY6:Zj'1e @i$[}Z3wMSrx 7;a8tcx&]Tf3G| ];5bވ"S"bbzLt?::PNdqtB#Ű,[gJvA-"N-g{EO|Tv#>"`qD^8믹Wq 1 [LSRx]UsqNqۉ3|IK\A64|&O>>J(&LilN-R/ŒW$x޸}`;qs6| RG(dfMb|vL;Op'F6ۙ= vU:Su}Q%t4x]X<LrH(U^*qKB2T7|KUY$^2m.,VUV|)% K4LDZ_A6UEn!ďȨegVs$%#SJm!_7V4uu4hLona pVj$۵5$;tYz5%*1;wΣj7^{I:)w5Dn}.d<&m7,js̘4 $c<4V`S82m_b`ε1Cśn(kұ%J@H =j NL׉c'3E)F`c`F$AĿqTd}(}= -*a)Uk~pp\W QWS?lKiMqݚ8Wѽ6I =aY*8w1ŞDW"SԔCXi~j'ߎ7(>r.,D+V$jY^pх@lHv7_#e(Ý,Jd5׬|J4=ryL;h|-OR'"Aqȍ/n:fps9q?-Űۉ YU2x'*Up#p-@Zh8[j+3܇ *vF LΞ>tu6ݵ0Qc1{;N9\xb_q9P>XW;GSqb |ḏF"N%:$g`:€D (^ j $zc]Ri MI8Uo)W i%v,gOna@s`j#3j7dž @o4<2|E*gB pg>ӦR2oYO/E]ndEiy7ZB|zƔg*yTJ\sD2\E>PN1\K#G,?3XŦhϥS+iCʓ  Xu!%΁b/˃]U ?x)/aMRCxQWlT^dʦ⺈XӘnoa. yR @Ũ6kS6Xi0!DSw. Zv}.s}P$V+(>&XrqHK C_a,Pu؂k! *L2"t7#(K؆vLzq ." Q@(Dx:bPIA)_)1hORQ%*η"Jn¯ǕIc@`=TF(f݁SC⽎6xD(V$SB{+z^Ԓx; 3$7 Z%nN+"(ahGNXk-q_`/:J^B"_8O9 OJ38-@'}.:Hs.Du9p>!D;x#GFWfq z,>Bi!OCV>"yt8fe)kQ)?r!CUѭJiǶY%lnAѽR(2|8".&O& x 8B "Ef/v '7eLvSO#U*&ѵI(O.^U<%XXoz9o!W7:y >(I99CEo?)tIaNvx`_{KlB
    +q^'{";xSHSuunj2FhOxJܿӬg5,cǁ1Wο.n'YD,a%Jz{<]0v yØ0 pv6 v|&D-:*`3DCI[.J)]swؽؽ{?Gni,mt[O ;NX$ޗ ԰a}+d"MiZu+$?_Z{*Ekvܤ=F]ku6d^Ek2ܢwSn'6 7" EK20h5tDU $)5_ųq񦗤!AJ+#Una l$U琇SSpk,&eNfwqN6LC7Szx%$j]\=axG/u91b!Rcڗ3Kk0i;z5NܕUl*寖YAk{1UcR B򌐃H `nlChk_)X@0,)9UA-c;Q{6쳦ZAR=/ sz]LQpv1e G5)3ww+uS9tgJ*7CͰ [ -s\K7*Zt}w`ي~U^ۖW9t藺F:BYC66]#VB2ƛ[{u0c.ݦ /e=L_*n`M4CF>dLQ|ڐ+肇-b0)@&. =%d1 r[h˸$K 0Q}r8PukhBaX3 tT%`͵"! DP ،JŁ.͡,N@{t(2UUϊ϶AGjj,8l=> o%\BV+JWo H;9Lg'kXaT^} C2/)XngoO[ۙTGS5u$>KezHbU\e/HCY(/'ljy,O;}59#H5H`)^\Q޺:e^w}1@2—>l",:rrũ;D;RXFw0"vkI0 <}]Y !Nd9dԘa4EM}w;$@V=8)%K:3$ՔՍ^UϸA ^,I#Kچ4+h{̾"훘;~Z^Ph" \[232-8]'5LDq2>Y|3 ,v;rT9fNn颪xoI5A ^p*}wXQxVj MRL`;9$AMA+: ńJ(~/1G [5Yr;RğDR77ěFF?f~o#Ґ)I3k`vmm>,g*eY 8a~qW|QazkfsHcMq˜ " fBGiȮjCf_0fG(8822Vh~et"dvCkŬ?\uiɏA8S^OnDv-3c/k{wv 70tX 3YbR [B:-VnCh&ɢ.);yBFf9}1\p_F̰ƽ&$SGgSMfrElWCm۴dn{P)d{g+ R\v ^X>Xdx.v*EfxnzzaߜNo+);ՁZ@ڳT s,A#D $J4 ߴ D[NGh 64F5~ƕ{ ѶCU\qplMJ`EZPJV?uoK8{7́78j7ס=pUa+U5`s(+J ?[rIݻHOUnQ*;tՖM /YKY#&duX NKh)d ci:y*k[,ŀXmhH\?F] )Q`4=JϮ'gEB<|C揪JGaگj8"5KRqcg2M^iBI(s 0P6D jLw(m9 OU)SlX3=MT?:Wؚ7:FiO{,̗ڗɞ=sbC H*h•*I7(< #"뀀*TKD^8"fFچћ}%g"p)gҺ'Vp.1"7t&h0Ѱ?C۬ 0hs T th( 4׮uwX@E]~Y}]5Oom8쩘nAɕdeA͟!Da=+qB$7ҕciM>&<+F_ȼWOQ@F3+Y>T6 ޒ>D j|'5͟D:e @xhF$ƶAnĤQȠt{65^/ASeM W!q&IDtx'(_p4q0fq΅؈53 8WcûV@ ν> vj5W_Ӆ4{~:S˳$*_wTEU{orZJ!/!ʋ%!{EVT2`0l*rtKxVxqqM#g_Ej?LJ͕QT\wӟwfV:xc >uطDfd _RDi UhpJ7e Uo 3s!}&~Vzլxa5XdO%nͧ]+JAc a~WR'1K\uvpBd)שU4t^\ i0}n#󼁶Xyx61^{& jKʆ#QzFсB瘐) q M aֽo`Woi9TnO1< +cN;qy&>0hE^$;\taKTsz)[łAO.\BG)fH_H 'u G?fq1pM Km2k5fɡr^lK7:xm}+"j'[*fx3EslNLdMԘ:{unα$' Q0\=xݘd]2p3)Rӈ-UkZnrUMcaW\?v?ˑ;h\g3N5{Lk$T$?)`̓|w/w=; ;31¦+TnzG+,g" [O*ic&WGǎS1L< g2VJ Fſ՘w;D;+dh{+ۖetfAAZHэ1hmTԥχFn--rzq "(XFs>ey. 궷`jwW}ŊVA&YDL@oMaW̽pFн46͆2R֕cK'uibūE6NKUܱRSZؕR3;Y`4PJ[>ܚh辏+/"9J†G*FW$q0 p#{ҾP+n$=SQ>Nsz<@WZl.\ޫ^f0AE^BrQ_^6Z^$!YoS4v+c|S]W;A TbiFex :FxboG<1X82xHcr*9V#rݽa.?-qx'75TMN4Q`y#vH!iCKeX]Yy[ͅt_-|>wP:L>˛}K|eN/ r0Sce鈬1_MdoAjHj (>?= u8.,/`ԨIoDYILY2/aK~ R"PQtV):cFSJyFi:S3naq>Ͼꨝa ;ڽ! wt%|>-)lpD-,6_Dsz$F\]AͷHva.Եh u?O lNE!_ 恟We {A aK'd6yk. (7'eevfV0mݛs5ĨQcYRI&TZf0J9džܵifDNFm +vXۣH@5=,sJ^=GwEAﭳ \0H#pyQLd MeXm)/"]|%7g F1 VsPZ{']۩h߼*qa8:DnP1EX)z^~ernO5Lu,\^3s'P r.Nbas°`@m8oQJ:@`v'0.}jB> ~Zj[d3#詔HSr@]72x-v2 9bM`]#ijVE6C񌪅0zozxw=55h]\FFOpZٕ%FpcW?Eb@V\nʩ¾6(31QGT Ofo%[C;QMDq g<ξ]GOh9ݾ&JuJm^]P,8Z@m'rZ9V vٴo t#f%Mk~'#sDW6tTڄ^AߞWg{~k-r .6:>k[]s赊ruvwe$(avG %ᬱZhXH;hV"ozA1$Fɢ{/~.kN:8Anx7of.nL*A $o2o Pݩ{vS<{ha1,nV(gDAnxkGl`7EP(3NEӱhgcmB>{qa<2 Gz)|ear>Vtt; ,4Na̢̙=eT>)}.:v <+7\$hR-8e!P[/d%딿' jQu@·Qk]?q4I{T2+y-Q[+V䘠rVK#D~ ;Ռ@D!AHvk(( hS *LhXR=ݦxN+eZɄG]ƣ|qM1 ɄdmK;:v?G5߱YM$ R|B |X+ҭ^(<3fRBQvݚM=jECtѩZ^Mèm)OrnV]uP^Kb 3,kc\cl{犾ۀsNS2̹Qo7~l [RØE,jNjVFdYnXOY5^]ॾX~KUk%#ղ*`[&8^z <%\a< '`mt6Iq4)/6&2n [L~S0݌5/Z=”|yE*nΎl:qhGv/Kd >Z&˧;ڲ0/uns }vx-3^C@A~t`\L>FYr+ޕJG"DA]q'&2h<`$I]տB׾ntil.0'5D ޒjSpg4  N+DvG\ UHxɒ$le)5sɿ5d|jMܻ(5z"wbx@d_U Zg 6fBka$֛[2BBJJ2A8vwF_(23"c pB'G>/5}?y&$fEj`=pF/V?kkmPʘa~9XxvmK !ǎg,bvJJDF߷' eJ,9ɼHKc3{#Ѕ}F7f$%{0cdԖV=@ i`vb/{g; [L[(cOJoҤ@Ns_t ʏc$'YPMBrQVr(cfTUT]bu7@i["eiZ}ݑwcNV-ʗ6 Sr>ÍR"c9x`lT YUyo_ۗ }w2^Ve_(sL/|r*V71?z$\$觞"Ē!z|%mqL} .j%Zm!D*Y~ # *-JV7?VmG L a:--Y/776^:3eҙV`РyU\ym%Lw0 V",*WMqr= tֲԫ_yMee;]a=]O> ӓ}9~; 'h~U;}+!brDǿ:'OɌ3M@ڜ6sӢĩ,錵%.(Υ];soЁ~S=Lfo.+Y븁ԔVahD+YTuFVӏWBe-gc'I;{3Y=9g٦$tO׉<_~>S^Bt.}&״hUn41zoDoInh75ֺ{aD:[ xD$D݃e|GrܸQI`;/>ma|5I7H+IC]ZnPΔ BͶ-:ޞs0J,m8Ƿ&qRU$7̾XDVb CF'j0K;HuI?#Ubq4X zp ; &3ьzqD.]DR1ETw'H7{Ey@&qF>jyJG Z1 {ށ  &dl;Y?b;B*pKDV]3h%Px*%# flЪ# Beܓ^ahT'; DՀ+nN 7OMv404ͼT>Ш=>J}VCL}3?י4)il-|Aj*uFc>@e7(\7-*~x_1C&wBSrSCa&&ۨ_+MNMF *ΗQ(7#$N9# 'RVyJ N&K )]ܲf9/.*vYND1"3?6qyB2Rw=yԖ;/wl@[@ ,АJtHWG4&h&e4zit9^ ǠRŻ@g/H#eE+f!}]4WR.Sy[{o;_Md,T4C+pƔ >I &=hO'պR`Simp i,i5 b 8DCx5S5}R݆&0q09=VjL`bP*tc!)L@z};V"UwqܖŁ/iOE&dy й&6IxG˻ļ"i0@,F- R.Wİ[W&bʇ@WuUt_4m-K)&4a yo gDZJ5pF{@)&Bc&su!ۼ@s$EnD94aoGW~+h@oNyQsN3䞷aSp-nփǹAOs 2]1XqOǣmMCN,BH77YC2īN_90p"}&E}m0_{;sa62Jl]٨}=N =#&L.yLQL=180`IC_L*|AIǣ/s x҃/TGOZBQ٧轋 GA%FQ̻rf+e 6R9i3i\[oP@DV efKSgZ? )x35<1[fvғ XoqpIs26m'曠%jbv c\EBqWpKGZtE }r1 7܊P_|E<t.VL,v'B Df2ӴrV#=7 #I=/a86O]("%Zآy?&ֺ\!kFFZq(߈*5"i%љ(~>dS5]iC(݋͌LIϼsszq7ŵiO5<PEb+K}HLy詬vtsEn!la".d*an8+'u uAe,Ҿ› LD6N'urʮIBݚ} ySy^(eA,KLMUM?)0ְyK756J:N *wk6[,,9f}{,;خ!k⷟Yx#ԝW$\ gG| ˕,J9]nQE JI4½aXڟAeeb:DzIəJ6"7.vRD>]xSPl!Voۦzi bUĻlfٞ8Ͷ~>;R?[RPB$OW` v@p1,Nl{I+A5|/G_0oIon5ry$6_ 4;Tj"# q f?̞E¸܆{N| R[?az13 |Jc7]mҠNj]6bbM$\,Z2M_}~߰Q\b6Poți?tgI^=8wt+hc_ ۆ&S0>p)Fhk5桇' Noo9V=ݵѲKjN0}݊Ζ! 034YH?%[o@E 1BT<E[D \{6nEђjLmCP1έ3GN(R4:-RNBpQi ƕٲcGFRi)ܪI9WQ {!=_( pvftvOu9gHPB&Љ 詰(ĵB<9DjGi!j#.!AcJ9!@}7ބIm8veM5IfoVv)C`0TIKd߄z;+FQAHCܾ'^ċˤeu3G]ΑA~[Ogmmr9߆) Sw5IfvEa@ X FI O7<#&.l%p A 6b=j>IsGr.`[(sVyy%gBrz/0J[s:g¶sAyT5 ~X,NkW7s.;ȥ0hCO5zV >QH6}tP`p6 œqf 7]>+zΐja&Su4G`z\$99T ջxT9z{x-mB)Jp5Pf':])DƯ$idwq͛RЇxrPμ j",ZDpaz?5CӴq3Y"'+I lL1=Zt-Wʳfz߄VnCJw&@eitΖdu]b YYB os?͢JL D_S|cet.L c0*Yg't;y3C¯$MlY 2C|k?EPj6pNK8&O W s1^Y4YA_=v*#Љw4ΞH pbh*,?\W->H)LfO>y "_g}`$ ŸcD9Lj`7Rͧ<$vX# F |< C.Fϩ!_h(uhq737j{q c*6*s0(]g]#c\*y#pA'39ACG<}1vA=UlKkFr6R/xzu27Ń-r4C#"f*a1w[.H#͜ ; ӔMu^N 6ΊxF6==eͭOn>MdսoCMo^&nHo7iSڟ2T8Da`Jf%{rN诀 :?;xyP + % 42G^pj8WhGZ="@XUb4 _-s4Cb71325!?@bsm8 eoG"#XN767|>cYYKua v,H~]K'uj- -S!aPzfP/R-s;çb86 b9Onʀ7ߑ |4BAz;&a 8,N#^-9Yq˻A * ̑@#@v:c4*hP O_`>0/ I[wֆyLcTP.4}~񷸮cP۶t6': r,a„1jF P]}0IU]{h3 yv5] ksJ+|ԢM j 0MwX8$!R9fqF 9Y )guwէAS  V ӫ מ vx%[hZd\bC3%W`Y-xeYЏ&9((w$͞ڻ2>J%F*{DeN7k%{c5)b0\BZoHT3dk e{g/bKg|!G& c*Blފ훺)y`#UQ:|B[4{Mc@ {D^R/Ѩ4bTu~ЫȈ1 <4߂CM,MTɄnxE}۔> 쾰n4ZѠd'3?4͝P`OiZdIMiھ3yAյLPcNqِ!~RnVK=,Fjx96!F&^/fk%` v6t7i1*km_4ip+T/[cTtkONEh*cݯdЯ~{ufu*WT\Ϊg SBS\@Fqno^5 ?hw6)5Ӟ77 ?DzKis4Y:-#SQ贩HMfd^wrRr|pcoߜae3٥پ!3&*i=N~}Ǘ}^QMq4Vr Ub7LQ1|e$GLݓY]CwcV aHZ R::[{bMGm IZ &1 āq u F~~?ܩΛK/ހ9&V!S@I~Q.𨸺]]P2o8pKWw/XTذ// Np\gx-Iw9)Gcv&'fiLa{2cBu:k._mԣwzAHG]Dssӡ-5`%'D[hge7WlQ蝘 "m*|Bxbnk[Fu V['=w9ǿ(6/KΩoLgPY5PA5/RR=?m]8Ïĺߋ@zI./7 !1%Ū҄E= 0b˂&(ÒVqGvMGbl$Yij"Qpi"OD\ YVCUha6OV͊`"1s+01ߥFɈ"uF.*οMc3ěL=pe:ƅsx \h!zPX[ G6d;N+|S"+B򿕖1$LgU3Uq!waؚjxlqb;U#**HB=E9jlWIr%}Kuz7{gJ/Kx0qLBeD4)pzk Q V) WDzAXq N~i6 G5JL3ϋ-_&4Pkw6-C)OE^3v/,2*#ʋTMj}M8&w.T2Lc$q?= hZnb;C]Y(4;߆n >N$QrU|lO{ېA^r_n8:V~y}z3S[?YlIϟ,2b`gh|{rQ nњ&{ cOմ&,S 9(#&J")1[!ӄZ'㬔b\KS8xb19Grxi @%~(/ޚiew{H2/M&J:Tg3u,G<60rn~(I@ގ[ԥ5Zw3+WCߨkԚْt랒$z@J|T+kl6"ŋ()OOCK'O:/]_5?#J"c\k¦ȴ<%~eNn9pbM'O-'HgBjrQJ*ؗO:.N͇7cOKCbִ0G$}B1<ד)qVծG׏d5 lE"[j8{Σ;۫_ٵ[Y 3ִ7>I""9мcLq)i%M/ PV0]̊ yĦ@6Kh;>F~hUD2^2oxsUBԖȈ\'A6<[1 3woSR(i\>|TH6KRgG]Z1 Ri`*Y#+*[h~qjhiD^B ŀh{Il}c>5Y3,pīqPi+עs_5X"w?{ΰ/?feSy7vQЩ(!ߏGnp7&b.fbYv l ,+YI̿{9܃vP~*)N1\Sm  WƱHю߉MP7Q0]6ӂvG*8HƁ6FڄPQ[x{ H dg3{P Ea㊼pjw8pW7MJ4R$H,S?_-Mvsu*3OOxX`uiYΓ?<4j](&'aIYn>=>.SV0t =.Mmkp?CbNCCKOz(zW͝LgxWjƺ~ Vڦ2oq5HUܖ:O>5]h 5U^ۥG۵Ի N=HΝt,7Q.(Y!. +l,2?$+BP-mZ7IvTUr+Evzي5 IW~Wo H75 V3ҭ/YsE*];D#y}(-Vad:߮{PnMqr.k:l5Ęj!xoJ^l=椘e( +s5 ? ZUtc?2#'ުZ(ggv T5؍ѠkzF 8J|pճŲIܖsVuK> ZS!#ɂ,a+on>JJgb9cOi0O0&h©`P4ߡ~#^Ew'?M~bh> r";#`k\cfJ4.ť 9 ^ӸIcѳHL5u )8ء(ɔ 2SrR|.xƑ?] 6WDNr 13 nŹWsأ׆m3gk6 mHxFB)LOuⶵhKQ-_]40{!ip%J-.3_};x'dbtĪL-$Y30yAc9[2`%-egph&,MxrFO O˥qI].JL]lkMzOweCs4mZ0e|K@SIs5kpa[p;rZ6ۗ"b]`/M\~i'`4͢glrmM` V4m$Fk P?{PF-sqIѐe^ 1MzeqP,I'hz.p,@!pM+a^EIN('&n*%la3-u93G|Αi.4j[DfPTZ{QڥeJUn]2o2$\07H1uLg{6?F:-r@鵇^Ž5n^ďC&4*pnh?Їf9Y``X$)jr- JB֋YVN9D( Tk3N%p gJna-J[bBOZNa>5Z h?sWd%uʰ ZoC# c-%'*Zh|9Q3("ԜL ^7:%wy4LR'3چ w{e^]aqM iט}~TXmHc*Lf\X>:9\W-M}A /;p/]ܑ38}02kyG$LK}:⽰nNN`z٣1X3e#a41Apy} URPQ>/!<`Y'h<)jV@2<9lv0Cy{u–˷dph!0MG[/gr Ie8DB[gnc.z( i 8ɓ&ay^ހ38i4oǿ Q܉(ґ*F'H&W%v\+?7m rl3Ҡ0}~mBmVl M[S:+3YD0 Iei\67?<`K XX ɴ:Wƹbԃ֬J Iݺ'?)sL?УLok| c `R,LA@|eb MUdc7U?EEHtO _dTlgzrƸtnqŇCGOY%-pCQPÔ=FI3V>xCnѮyKE#^ˉ@S4 ԀofibGuSP6 (r)4U#Qn8!tu8#jK?鰥C&rq<+30̮Y4?B=m?[B/XQؑEM IQc?)>GJ^CG&IV:%ZF̓4Vp2C{dCjc 7^gJ \<u/\6x C}":s?j ^%NIfa}sA4DQT|thX׋SV>oMFƐ5g[lN!s0y Oa?I(w0b-$vRp̵ahMazmCB HSr&m П|B1e03n3yջ8wN2D1ꚉM"P m39l;_6_2|$2^\UHQƜkIX>_P DrSqfc`c"E>E5c{tpZEZOI3|r||Q'1(0k@afћs97YV2g("_G/k|9vߖӭ?4EV%MsK;+fVz~s65q9νNYih0J!=V1|cywZ@ڄDl,״S5>bSl]knL"Q;'KY?cq-#z^7)Ơm@yf r[y5,9S>"xG)Wg7EcL ڦ Iמ$a1ypgtɟ]Z4;Q3?h.b#.Nd4>JuXk@l1V].' ħпIhk'/>gbpʄ1OX±'=T|![]-E& %ԃ4Y3?˙ڰ^3}T_lO-+ öZc g{;+w^mBe'dNl 8U}SAN;ӛ F E }Μ4'8ndV[#T"dJʼ7ħe+cXAxN_ !Lzz[=ümB&x$ȈReuPz(5Kf`QqvRu':l@˜,+.WX|3sm\ #[ {S J&CiX8,?1+=%_.Hьpe06rqc d(%Iޤ0rYG_]=h+J;Rj} Dc{R|ǒ*+3Q#{YYkCrӓW3JvUh,8f77aGq+g L&$]eEFa%W K;ݘn$JQ5YZF!ϛ! 碸fo6땀:HW|ν0?aHJ\ ?_ N֭ڧ^3r"IQzu HZ%:|;0F Fo3ndm@¾2T_@"t 4% VnJ^aT_J7}WL,?Dփl! 6B'9kUzGl)9Y bIGTKø5@;AoP4mϻWi'{(齆Fw7%iU_ZqTn)f=*+r/ڕ7UM`W) Ь!!}4Cfò깡#v:"PpxX_*v 躒wQSz+2ƃD)6^dvg@K듚%:Iq..ɶ_IZW%͝TK!P̼G!p ;.]+=k'SW|T/,9)Ju;GIfa\QA21`:(a`y0&EĿπ8z W9X=B%jɻE-8~CĆ%cŒ dSP)E "ÀJ|z D< ‚ϛs>-o)h@Ur z3эFtfx ^gM7ŏj3d W~nCx&Q V"鯑N*\D((#SҙmK{'Sbu˚NNqOM$z-!rYoFM"9E;De7"tOR$ZS1|YhE F-s$go82з(i=.&})#rlAyh7*QT B_NcH66v [\)♊gSh [U;.b/%!⤰~w(`5IY ŀ$(ٟ9hi -Yv31EO;j}2f^xZߏ$ksW>@{V0oLI'XG7# >Za½LS ]}AF^re0e ["ZeM*|3[, [^Mua?>ΆwJ5.ܯ:+LރTT݃Zׂ.@v,1 w:ـ%ld{bDxL:W-?wn:B- QaϷ´u3ag-wK"<%ŵKpӻǎIj9ښ_ܴKH4[!pMJ2\=#|q!; U8 +U&K G/Q / :(mg(B  ܯbE&~[?g5E.y"QaZ.:gisq 'aĞ!›nсҫ'R}!ut "R?9jEU}&ytDob<fI8ǚ=kpF0x^C샖aRu>mۜ)f|Y:v$Pb_H"@A_pc24ryJRH1vҹA`5JoF=JPl~#; o4nxpN;r!kS =Bs<~SD`uT'ѭJ \}hoҺ)CyY|%=Ffb/\tR[x6 .<+L$_Ĵڛ8cא6̳a)AH*R?PVvb( :SᄎĶj8 r(q|,YK7dXzS3~Zs2,fLΥ"$c[P{D;Ke4rܛ jG;rW'[U qꎺ=xMJi5bDBJ1,MZZsX%̐mIpoվI\ljgY߰af5Rxr6 =?I#'d pmH$3i뙛E%u{Ժ%5Me|dw+^*Xkev@iנmOP͂(kcx)(cN>9/d6$&qy5F* Fq9RQ\Pq@xLoA(nrtY-#hh-"Gӏx+]տ@QfIqBQ1?r3T5?IJI"w:0= ;A*y#pǨtݾU"y"ֻ:DݳZzAd05q?E\q$DD$#9Sur_p-ybU=_J%4e9\BY {+6qFԪ$9Q=gq?yS]iIJ)>"V<%# rOh1-gKVt1P"^!'f+Z lZӱB`XW. /RyaKV^ ah5_+vH fӫhʼn57bkd՞Kl>Ш+>AE\lΦ`YkM+d2s^a:)lz6u 6* ~ bvlժEݩMrY}>xO[4O͵6ݮU=jd%Xnw}֍äV-&^+qUzOM=ia_8Rjk?JJϳEu GѿÝcoϨ%NJI)MSIHgѱn1z7,]䬪Tt,70\pw?Zd ˀ>hQgXDdZB΅pAV0>! ~Z0h7IʓՑcU_]Uk{U۠> ɚ@\gT E{Dz>h4pejf+jUxMv584mGN ? pv{>簒 ւbUd_٫Ht:G2Y濕29ڔzg M/^F?>]͂I:Ō@-nnZ3ܲ {\ ZgkL$~jwڻ=0X0پ#D`n /?UQ#K7bAڃN[s|Fe3#^v .e2pcXyuOwy#_/uHP/Y $WI'~wX- z(t󓞔b<=}GҸu$ H6Rk-a:Ӳ:eppODq!㜾XiS+[,B r W0)Poo[ U>.Ke@\TV6E hr[C wh{ (Sؿ*UK!ɗ˟Ǿ@~F,`sX@Bs#o7b4iQYjW~(Io&#֥0ՀJ"A{>f Í :ya5jcZQ3. bqC*l:Z-O`>nU~TAWepŎ3ył@ʔF K;v}9h֗f.>R`+׌wPlk u:Iiڳ(9vKCm9uP5l K2"*SkH4ywš64푶jAN>a2"^df:*x7a+\47lm~z0=)TMpW.1XBp͉Ai~h xu`'[".T+ylΜ|7cU4)F`da]&Ւ/& %?Gvl+r?36/c :g:6wA,Su|[PnъO85`{)RQfxRqx 2Sj4; b\'ɭVvQp~hJzU* IY]/6*ϻS܌d!tPk=/C)鎿1hF ^Dx`F7gELkӜ<'Q8=׮lؼZBn3L=Mwy@M +mё!XW_7o&9MF:$4&_a.yg*Z=OFEZ8"6gZޏgi{ "- D2ʳXNy#ސZ|&ن?e+.W*#8AM6TrH,M'%OFEw\ŊKP}jwJVVu=ۏ'=~1U=v-ɯMUJ.+'}'}wqPYaF)};8y;K4'IS=+EPk=O :;rr`av y6D]g(v.A7'`-9r2E' |C7c CJ7ܛKcllCbyM~gS.IzzƎ`=&: ܕj/#u7;0Z/H:0OE[6ո,YIE]`ER?݂)+36 JR'E5^2_UOQ]$FnR mD;J&xiv%Lq $u.z '&O= \Hч_k˄㴺f OI_ 4qLJ w۫ˤ͝'s2ߔ 7@Y^6a(r·߀{{B#vVVW4W%^HR)aWfqX˥`)(ݻ;~fB q*3רPDw|[NXg)#l#iAɗԚ`=OgRUOžDhEeGRo`l!K5R0o8tg; E8@W*e(Ő9śGO!*d~;i[LGz=E.8,IV9Ft*POq>~m%k*+b.%Z[{3bI؇T1]Y@Pհpo᷺Kg`;1n@Ҷ=sz)BK0wpRM[8$u *~SVA &3dCA2\%o;Chh8|;7ϖ/ G(-,nU?ޣ+a20ﷄWNq(*nM쨃./00BgVw-;|'$z)cRaPh64YȋP.VjP-CLr5ӉFb< դem@Dk*+ҹbY灯ϐ1oQwJ)i&AB,)5vOFv]nZ& N`ճm!g2fIե$#l|AölEV 7}R @Ps\h*ٱt#La AC K*6LH|-ܜ+ cbHiH\3A@zoX#McKSRZbU{dѯHl0 ++&oRD|e+: k5u$Q-HsH3S+GCx5'gFW ;%lZe=@E¨@h<8h̆|d8խPapZ@1M^ Q)`uAD%W!D0C3TgkҤ.\a\$0Wg٧GwcEm&JP=sߝ\)6Q '8Yu kU/PѨP`PIL+- /E^X[; 3s /Ξ} EK,ig(;5b Lӻtª"8J]dz77I2q^B~DPe?hF1Xf{)Thѿ.5&t$aFGfA T=^} :rs0lx*8Y:В-X0 E?i?*}I˳b3cg-oM$/rJoڶ/t u/0G-W܌{WٟۯS'r.&,8 PiF-2E_"7EHs[).i}$lkJyecͶl1KI][p9$hi􇤙fe2L[&&]A T>Z rgJ[~ 7 1CT<|c+s7HO#HAu2knqc ak,HG50dXџN*jJh13"x6Ώrb0w?{ɦPm g}c-NIl;̉SDCO4*\޷ ျ/7Y㋕(B^S>%F˓>?VBSO*[Fi"D6**w Ʋ5! +lG]Ѯ飾M@иv1^j9i?)4\5HAf1j^7"uN;}:kMgjHK{C6Ih[ߜi}&t3[͜AE Zew$B]Z*P#-WB8/k_ tƢ~:~'}(*V%;s9o6ڢcL;mjt*.I U;j(mWyT致sG`Գ]^RZYCXri;tт p!hVAE{?7UOH 9l_v'T֬z 3Qpܱue´=GVZv͂`0b&'?3Y6S ]kY <5תd @U,uVS݃L@uLyo4͉^-|Erū)?y4B<6Ȣ͓ *Epݛ0/ַ0=aP\vc ۡԩg[p֑e݉QP+C=,(#憩4WwjrGߌMo7!&ݮljV2(5Qy=)GOy7oaYֵ5ZNK]~DuVYupV!l~a- zWj^ab-pUaKiZ 0,=]kL# ^R4G7HW;(yߦ¡fm<7uMVrN-6bЃW&vVW+^֚1s6O( qX%. aahL}LlOfKFwȴGa㘱%z?RbU_ WD򷬉RWA'3})8jfN)$D|΁tU5}n!,hxUrMi)⽂BY|&^!2yA`b e(7Z% ɯ!%eu(@$`)4 Mz=#؉F6LKyʖDK`ZW*KdtyS.<^"ʆ! }K2Kh^s՗)$q7z]JegCWgjYX@Ú n먤7DzGbM &Y7hX6H*@_9IӥaG~>YD3yQ8 [fDĪV>7M56_a[Oς;k_m94z߄^} }޹ R![w~Un} Uj3~\@V, wu$R4ۄxK V:Y};d֮)U @/<ڴEg#pMìS5aN G;7C TH$?d䷛\ySu&P !≓WqhN]4v֍bFi$}S_NNC0WxɃh^Nf߿Bbz@GRv64p o yg1SdN3:%2om~. n=h =߬u}L=-ՑL]XҁhT%-P98I2N|)*!U .ڰbgGؿzqPS>*W7SPۭy2_>`M24^'Sy B5X!$qnP80M˺yt*|tQlj~+n"[ūu^B[ H-q*TU+_kh51i󯲧ppD uMTM25o>-~fGݡe17~IP™U;)xڝMlQO6{t =ƃM%Qdz;m.U7$jͫE#9,:X>-&bx;}_X(X# U>o=qII`J*G9p6ԲQ)R)~o#ӏs#&mEM&ټkS.!g.1l:\qR˥/KγRN}3Հ;~hֽIA*O[u3DkZK4~=؃Mܐ=A z?8aAת e:+s,~&O#^LF3Bv8i!pk5ywO;%!=7o p۸ϿNF+| كCⶍEI?"30}C%gi%l=-Vvd[7 16p)tUVkUΑVِUA`\^S=1W?fǰFMGwUeFaGEl#Vbwc @.!l?2 @n;]~3jplw{-zi3SSnнfCt|&hސ` emieICn_ot9zJFKP\>FOlppY}݂vVƎSœYT~( .sPQpe2dx֖Y[⺷Jr'c,}ߎ@VQ?rPСaJV̺ osJ4N`i$\RJy YKxb CK=72{Gn\m`X{7 :yjn nULr*}(c'7ջviєٝv.5-r? yH*͑߭8N 6%Ҍ&x\$%qAZqcߊG`TYLU)o6M>)aA"+Y!i5vn9lBnl54̯&_9G4l-cǽ\Si;+EB8?'8?};2RBeN WWQboN|gL42tC4*|jMMv__Sj9 Cx~cB7b.̿:3qz8DOb0(Am&P=>)_ѷb s4ոZOH]12Zy5=0fK\L4'qV3!Hjn\ax33d:r83c>#x,Nq.xrR+H TȚoD\ 'o+1Qryx p >=g?Pdg { TAdjabuWIL,*@ޜ:Sq8a>۝뗊ްqҟK wU 5ɀF,sxOQ$d<^Ɵ`&it^M**t_t'G+=k)^] &V 'IP2)k§1T>ݦG%8 sf=mh`ӢM9kdGDcVM}aM dWj@*(h vI)WR(g2w5ó].!3C-;E}sSpjB)P4~N6A^B4pN1%SAiZv =*U:a2جڜ]cMxr-nhxmΧWI/S&?n&ҳKrgm)^[eVĠ8E 'Yw9B ry(Xi{>~򝁪?_X8^E2X;r8_MG_2(8!Tk:tWQ8u,h#ELICezŢ܋J[Zi*q4{^ff;H?`uue }q!uV 6r`Dia GGX|WU^˔]8pI(w.gRlDⱷߴ6;5QZTɏFӠ+D竣J=!_M [B1-L -4߭hV'H銪ϋNjTpgC8d@+DYGg~W{'O ;sOgPIhpW4;g0K@/o Ftȳ=6ML9+b8~Iܬ0Uz+sjlN'cYk?J]vk(歕S/A Qꘖ! ssN9M= f/Pl~qPjS` ; @ Mazwz#@ J? L-nUl<A?$wnc-yge)ht u]lu,=qu $>bQgS$}| Z˂_0$Uٞ(т :XDwJ\Ӛ& }rRZhItry֎H:Dz+WόHP]e"EJm.MUӧ 6TVfN /Yp'1H';ޘ;*kfTxx7l~Sċ v47eh⼿dS4(J) R20WhObvqy‡MZ_v(z>%\\]iGp>dp@E: Ę8ubftGdf~fzdfȘ!o[8XE9nog|X/mCE I-$w+K Gp;y "s֫1٧=_A,x'~pɲr*[91GACczj;JUq:͸qt0B R&;8,Ḧ́ m=%ܯ3Gp:Nݷ/A~ ͤ\SN҄&R嘢(ξ1Q\L\*Ueha q6?]k*(@ eC97JL, 0 _?wEc~b\(~qA@My)=h\ 1`Ea6;;ɶ2G .8 ܞpz<,6Tz!B kU^LgH|cFOf7A1!@*U$CCR>-(Hӎջ:K[F"fD𤷛+hF NfŸmp/h>}r B{0 J.fd=;Yh[I++uԪ"TZ9\4UŸ *,oSHϐa]Cv @%7Rp|XڅD<}ǭ~ZK c74}P>\0kA=ѽzX}uu^ y>v.vWӅ o3 6r!Dg`I|C^̃ - eM^ib%3RMx{U㧲iiub[pm,8v*)sϖe ow `E (<+6\j8c26|p[w[sEmb_})m`̄tV[ޫCW8jRCvrC@˫\$yXIs;Ȏ Nymn .MDj &mw.^pz>DWa0&vJh׬ Z;B⍏xr.L  Yuי)h?-J?*zÞ^`BmgґO^T@n͖M5^bЙtA(+$ g}:p7iD1 m.)fp"m 4T @|Xfx(@sT9gXR$w#`9ꍠ ;6.@k/>/r o}9`vјΏ5>khAmԳ5(PB~^O+ry(2Ӂ[b>t\x&0N^y˫ktPp05~[dTVa+ﺜɏ\ J_q7H>;2MGѴ u*F`z(AٺS:m@l}&lb]ij:ekA"E󢖄BND`I0dFlScҧ=)ȉ!ħg~BCEXv[[d. jA3:J(" SIv]0{ZYf*}>S/&r@8e-LTz=`mg}'MZF}О%.ZdD7W6&`-5Dg/SV)[$Q#40$1Z@T'fs :eJ+qcD3dM-JӑU*W*Q=BFgSM<.q[R5.><'ˮ6nroQQ+|K9t* Y_|*0Hg\rS4J,kLi\!:1W3tؑ G-T".!L/|B XC!8R-O/'btj: 3-pHyO8M!U['vOoi- كR]K<&` EշI'ȬY(w m%VRj!;gy(cP˧K-n'wPycI&&^,2*^:_Qˊ1mŎTТ9YȂl 4P8GpM0 C=XL6ɴ3pVMvDאL/4l=P,r5s{կB+Eo2#ܤ;3&L @.G_s`v;xD h ka[x"׊9Bz_+ؠ_:]y==G >;4fÛW0drUZLd:GVv? C+V4;q00#l6`tW*W)??ב4Uց?[(?uFh"rqSjG$ÉjknDo8U2ETD (uZ]eKKQGaZ .YRȥɺ 6Dh3a̫  #5jQL%?/ZvE~ג a6#kuw!,ڲsҩYS ZОkonF0(Qt!< Ŏ d~w#FPϘs*.0[[mxܤS/稊Ad{TOYdYW~d%諸IO38X[0jg}0 I5Lt8 "L?Yd&?k6>;w: Bc)3ْB)_>'%3x:`Bk*'ʇZppŽ-HĞ/+'0#ҁS շIymNQ^tӽZgX?-NA%a#꬙8tZΙjMO$r )ܠO2mP;=YJ10p(r(bFNV1>Y`gRae#Z"~Ľ#~t+9="JW8oj_o ^ n޵vG m?[qjф'ZC"$ A%gNA ga}DT) |7l VbxN]>2y5wPIvw Ch gC8. :^z৛2!K Vc::,def`0GtJCkcOBd+ɻlڇȸCDCbbܨQVlږ!yxIP)Ӭ!cǙ^öIG2cNq58HE@`wzcl" QuE"1LREɱoQ#}*'#Y6㈬K!ɽ'@u+j֠?̵Gq!FǔLGɿ=8lO?:=Ҍ0x_V{A? r&G"Zro*=`XXgb'9"n~ XMgjvJů u$I#8 ]߄am xmXQcA!`s Hށ/6f~SXRsFkr;H[ he)'fpe0"4k;p4䏾_R}8"?DZ -?+85:L4^jQ4C)mxy@|rvrdP3~" \$5A3;!`x| CS+B`Byn CItkEZWib*f R?}d P)u}w߆_:AFl7tX;pNYzi<1iLՏ+,^\d ?;<xY tnMITKQ^YyJwhP^>%${_4P&2,}MgOYwgECŽ'UHL \f#}|LWYSH:`]4x9s'xl[֣~U[dꣻG }՛&aH n8`dmѨ/@avmu 6xW 3zYjh˝`V^:/KIr'fLt :Zo888*ᕌ;Uk9w:Xʗhye\L2N;C(M zͨU%&S!S2spy{^;51Z`R`krфYyˢ- N(v&?"NPCD\@M_ɼũlfcf\t;]'^sM4=5E 9'qƔ9#d}~شf5wCjGڶ``J"'FqLɧ3UwyK|rD6ġ$df<MK٣FH2~ I%5<eebJO\(0vlѦIz&*tp:.'DHZq((2щ{,&1.<`#E̫}`Hz&dG)xƾ &vJq9<8YrK_IxieR _N~GfY8){UX [3OCMklD9I%)ZG_R3wvUH!n; @4>B~\smH"k NfbYwAB34p04 40䗃j{ d:yZJ zCc)0YBn2"<\PP-݌ nXt͘I= ^='gzUƭ%y̏ 1åXM7@sp[ys1Q`dY'QDH#Go Amv&N;aϲcMsW:c;0/k+V3R$]2eG xU5 DH&}'dYWB=$D>Ӌ׫Dqo07Mpmi!-< e&~a@KÌ6x[يK)E^cgeSH}C35AiQ#$Lm)r_9o^Q.^ *@4NΊs6 jڱ5I}_Ơ}QDe>Rg]ht*U@ Q+!Mitd!P*[T9cyoԥ8 r@yŅ1S0uIJ`a~ 2Tc"uQ#M|I6^ +H `rGI/0{?sD+J~}u; zo8%YV=UPZ([BHylML "re5eURklԊv\INjZ/ut'v9 -ĩx&@K1kP<\/$7am#UR2![&xCx:{o2Il)&M]&Yw 㤑qe.y| a(:ͼ-.NH "{ ֍cl` _b CHyVAq)pA7TYɰB 1?mBz"YHPp.6ΔMu:-% VZWTû@&*.ucbOu޸jis}>[\̽t)@lxuc^D!F[U33S)&e}r<HrBm-RZ9' J%ᆍ3|̹0}HB¤31d* `AEF&/FWsv!ӉܸDϠs:8&`V# k@Ă@TWL+2=%ئxY藨%ijXLhqvڶ;jgo7fQ R9=OiƏ[gTn*vՅ!7 ~9!:h*%Yo>;dӕ}GnɼS7dyYEmc~y/97qQIo;{{*3qËh9NQũNI$'K5~tZh:ᔝǃ4k.w^l<sEd 2}n[ 6R e')']F}gYAhGMWo/\Im_ N7Y^qrK7kTdOc -iXI\gũWU0fQhDi )DH6&bN7 ^E 7t( WQje1huLtސx.Q!V*VO܃j?84t7W$R²Yo7 $Ilp|0mИ wb%EǑd2yz) {9 Cǵ$@\z}9,f2I#̐X&~r2 $*#qZncԄ4ó.SEԑCɎޛPҠKCU4_\}T4w1S@l'nC`:%$m)JB'?oKN8N,ZGCs  ܛzA3x=R;io;1h&CdN ; l]FnwG3\kug3#LVE;h|)jua3UjMa‹pv^`KnZvBrC툘ow|${q/}!61" )O^5M5)0dÖ;%;$1ÙkMٸb9X[zj7'^ Ftޫi\@D^=qq[Чz"O~jlzT},Y$%-o\K99I>\WIh0(Z7¤EB\&EkqvDf *i{\|a&{ֆ(p3mJ4rmbʋ9[LP&Hm.X'2b!44\Hsy9 g< O^eSc*L*6nAw' wME+maf7c[_FLC( ,?& &f^\#0X%XsSqXtSD?:5KǰsY30ToZc,_F0>rpQNrM16OZ 3C8OiO2gibrAl3@\>KA*= ˧u{Q#&{ n:CMt;SH]*m^L[K Cd$WmSEʚHҝ/P0vQԡ*_tzD=/I: dXEC ѕ}sQǓQ-Nq$i$gUqJs$gQk.EfbODm6]ղ=PALeDj(W[ OFzio]P: )!iҖDQm-vq$甡.F'#*ni+ } uʛ,P~Y"a?߁ %/U =nyB%.ؑ$&Zteq.+ϝ˫\ȣ1vD&X>45,#p8$W+8trao7<KCs~͖2yp̻dX˔>`$W5b*{'8lu`b4C+5EcUQ ]W"* f$O:6iA&k躦*mدQsosdKo>#%vRwd#NY؞d!)F8=JъG{O1b 0ثK[KQ(./!cuqMw/Yh͆'=m:Ah,`qg5#'" nJ4xo@{A/' dtP1Sj|Z46>Bmoo`͓6vیncG?JqL(C$px vv IaګslKC")xY59À<-mk( +̓), =xRonF ,]U',u}spd9 y;`V-/Tf_,&+j8]{Kt,zVpU2G ҹiߚc84c9P p_G8+y%!Y5{dW6#'RIO{ED,I߳Ei@`气rokִMZw,yV-~\`/[B yƴR5#6̣KnD?%?0o ?jH8Pe`()O_ÖIDLSWb"k#l8g{;[A5 aƿt4  PGh4mrd7ݕwv*{r)Nvz6=v!U<2ws bڷQi%0oEdzs@zDKB Gztˏdr5krEN;nI  C(^&3C<|'ҽV0+T$a5P63eMQ\eCoP'i.A 80L,'B'f:=\]|k2m@fsQ0h!v g3R$xm $h#jбdڷxq8 tF(Ҝ`T)ӄeJ,(!)T[b EրE`Ϡ>T8 UlXȊ ۫:S"ʴ39s<ܥB6bQ)RǞxD5,e/}od!vV[ul^I2Vd1#MkoQy/)ճSrR fƵ677<"?B#vVsըV+?5JYS񑊮m@BN EF t-=:`sbS! ;x+-zFbI]RKYsԿ|$H;1tu ڟJ$A_c)k~*da~Zc3SsPe]CX*} cK/4$=vXeʑiEŵ,{ˇ{YkB^/qkc܍[!Y1}\FͫtZC4g,>%,֪Z\+Rjފ=\PA1䲍e ,q^kH5zGJ.sJl7 5m/d(/4Y"]3; `>OTx࿾^QZXSL[qɞVv㰹W2&q-fcQLm層@1o^r}!+NLgJYsrRp+ԂR%ԎKJZ) BQOۚ!p.ǷwǬ blyVvq}[e6!Էe`pmU!t | #YE`  2 ^>Vi_3KeMgo J&Sp~ zbFu) $aXNһkvDv @hT8"*$#AFpb~;ROkҾR9yWy{6n 0P]e^Otli2g r`tذx <"i5#jP*z @b)!RDE\zk37(98cm9Kcݣ\3((O#S4S qn15O0%n l}adaR)Ǿ- Qa0= 'Ph <#}K6:L# "8cB]JPl iFtf7$ۉdZ <軻e12ɸ5 6W:j^"8 )=? BĎ7?z0Ml7tZ¨ςs`Pn׉5^]`߰;^-d{[uT6 };V٨PO@!R.:{ggBdcLu>cMZ j:{6\~:A T@ՔKo+[KyjH^*9Q5nl՘YS;:b _~qmT]F+XF~-AZ ?Ǭ^'AO3P/]1m§<@?|Acֶ}~E[f KFkc2Lgzؾr'*.34o5O^aDhQX^@>F͖&SM?EkPn`SM;*xrE ̓Dו rxAwsR?dJYh]+%\˻-s 1V<}&J>uV2 tS; ZYv6wpj,K:W(Cp  =_,,j'Pގ3tw:L5L`-efe2<!!okN˄Gxi{OqڞC;at?ξX{Ȫ[tJ/-sAd שsm_P݃ϔBDzQZgj aaMzԳ;oVVN#[@q;Գ, j- (A+!dvqZƉDjdzbܥ7Lάs'QЃ |A˜"-%yՏR x It `рP&~ pz@':*0B 9Ӊ+K,kѝڌ 2EP/X-Τ4o|n &=ZO_ ]pZa*4hc+`\º2 ,ݝxoDT+sG&ɜtB''_?=as{yREXb.aLvPY&2+k9iR)IfDf#Ah.8f+9kj]\v{ 1 ss+:ue w IG&QIB4'_Jfh-ya:vR7("vGS9h{=R_}s򦶿NJl,^;lE3}[ ܁Ν[C0B?\K4?wrJ!Ȇ zx( \tњNK0}CXѲ•p1#k:D~R:>Ag qm\pĞgk?2@ ȟBiw_"jsLn2JlϋP\)qs !hz~Ǎ-좻7Lߪ.+B@lOk&Zc!(T]S^Bl/L-ty4$K8£!2F@IJ0) ;( =GQ-LhvXS<SysΧA<9%ƚ[#UsϷ>R:6%Hx|rQO,5wKBz':g!{!aϼ\tEBD% 1[+PIbI"oag_8 n CJ%`xnՓl?aGÓ(|M~Der;,+FT_2']Y{6̯Ҿ1@^0L/??ahujGJ@w9 }rPw1M}!mhnw)Jgܦ*= 3ƣryb $8wUD 3nӒ#pw #R)9߉B ͽ\;#]3Ldlaky@)" )b;<qeEl7 Jgc`<R!$LvFf 4n<ӁnBp3s k'bw8#KOJ)bB4cWXKxQ_*UBE6|#l(idaJ+< @}$*MH{?P3wXgw@xA*q؉޾w.-y)kRT )뙄c:ˬkHqu³Y=&>G%LLIWV 6GmjQ8ur[M:Ts`PhzD5DczM,~Epse+njEbQvr*J ~4v.`fЂ\Z{9&!6\\=&׷[j|lZ_(v]%(נ2_;_ݧ =G C &ht(ԝd-/o!V0lN`4P;M VB\ #k9㓓n#I?\.GK9vpM5d len#2@u>8Al$HQІ%83Xphm6hz] A.7siвWprbVY!'o1 9%Zo"Q}X%Apk*0hђLsa_F)mJb.]jZ|`I=GG\3w,3z,,J8=l8c/n c#x?(a1.q2Gݙ!ƒ8="3W&6ޅ7W"yVgt g3?L@ET%HsoUE&^6wf p 4~\Lǝ+s>,g]#TK=H|hvP۰H~Y +A;rf*Yr?|׳pVlg;:\[mN$"XD3#m"Qi;v=]`q5<554o0MpX8m\ +MɌi 7VzعQ*]:`ꎍ|:F9{RiK7г&(;GP7H ecMbAj@EJ~B$}OՈ"|OrD{BXU 9Kx{fޭk&$kl1 :!<+(S ԑH2іR4mmDDk@ ]8& ^.%Ǎ1uU=OV9Ogʈx_?x,U C09g3?_UXoTq,E h)&E\ßH~ν4"*s'8}*휍"kzֺ#u;OOOhf1M3ǗVH`eXvDE3;i&2!sp2JdVYma,8&킺;B)fu(^JB ϏtzCF]tݦ;~D\$VvK,E6DIjZ` 5]WzW NJە@WYϯԳߜ|2es n,B1>xJS U鲎M?|$(^h0oTp٩ .Iưe9SBzM7 *7Nc׍# CGq \U%/qˏ@Xi(˰M yJӽ,wx"OQܟbJiYMe?Z]H{6y`uA{h@p7r!HtlFL!M˾LI#XD:*Ǹ^ˢј̴BX ?Za»AdZ Ɗ,E,n^42MZg >,/N"@$^׀xJ% .~m0Ncۚ-[{ MT0m5Opl4IRRϤk+|H}7 ظ3imwv$c2qÁn[˳yzb4'F_=7GXKkՓyRۿ\EtV|ѳݖڪYCMu dlI;9se2Ẇ _:oOtXDy{ٛ=3^#>)b)$nCU{$jr$7t/IdL%J z۲Ÿkzh&ۖ1wfhP2.[%ܮf1^=Gϯi0xެ=L:/SШ+r`溡3o,0W_~#ӏ=6Q߹8X 0Ou)kњ#>(ZO\w;ca_v.Iob)8۪K=r \;+1J%R8XvzM+ODHFj+.YwF^x]&"Ws!z׭Y ֿzwe{H5I[dZ,d~ϧFkˀaΑ@ɇjXUCSD&ٮMul/PΞ_rKq_*H<ꉼp #Ky1Vv N;YNhuYU@ txN[{8K `5l&J}b{ )vDMhbQՊ| kF-f*3υ<͠F<ҁ/Į9egv :\ȷgޕ'<ގsJRe#Ds Lc ~ԙ͆tX1Bىؤ E^:vϕ i\emn׭^VY2t/&or%E "ɺy~~qȭG}=HxJM#8>.^:<$֥# >C:cp4w2~I*mbŘ0S)`{;6!Ez9Dvh4i PO(*-8w8h] SyM/K 5@޸ubh o-qеB5և]'25u4-/V(3%ѭ9TI%e4<qD7ol̕ 8$ 7-<$Jz[•5C=`FMX$c)bF'k2QT;0oN I` GaY" jۃ3J}z]$Q,iyFj` .q?+\լ y&tuPy_1BLPV vI1tNvpb(EY&E`: 9Y`<4!;V4yĭ&u;_ZISKkƪ0 WQ܂B}su>Ѻ<"Ҡh0 Z'yrݸ[zqKμXfBDtOixB~xSccd7iPz@΅6&Hi2m}dז}mR,\^8e՜I0셑k(%Ѣ}v7'>kOBvxɥ f+#WKp&ɑu;Ug /fa jXM g~kihqfwwB~)6/ &W[cWkӂ/k!!@n{~ ;L%q+·w-np hT맟 O$Czw_+׏(Iz#Uj 8Yn\ƿ&.-@1*Qm5"*)tw^3nw;G׳yfo { ^P/ fmQ {£r;[ɜZGʣ$pz좷Y:I.d/Y̠AӪ_PGCnj`' P y.͋ `_ֹ8A/pؔ5T4R+K\|cEQ+Q`}18.KZtEs U U,H@{X#^ɽ XhJ{pB(G½vx<۶ʌ lA5{( üć}pS`l=]|Sikh1iKVّe(c&\H`^8\$mAO"fa\~}ȚӧU$$S /]/蘩4"[ A`:Wm̑Ή2MW>n2deo>83C֌;gP [A*P:RҊ|`"mfxBܶ89SNNN9Zt.۳ϴuyӇ-ZW\rXH ĥy2ƥ'zld%N xxKf[i̶ڲe޹Q#ȸ㞤໽2QYEQ*C1V.jq a.ciP ~v߂SAT_@]d!EwiG, O),WDڭïe,&vqM#,Sy=M?ȸbѹ7 B#j@,i2̅͹Q@DO!z_l N{ @=YŽQ&A6 0ԝQ<٭lmhjupA;c̭UɥTf%`rv|hSd_ϱ"&[JBk~@d4?Hݒ ozP8άCvY@o~vt9,QY'y򅛉 i/{]0-O6]G.z.$#IdSBl tUa=Z&=,&Te;`9/~7=c2pRdoeMs}Y)b6_lLge ]ٻMxگ?+e܂((TCj~{֝Ja 0 ;H/ sʖF=iE>Z5F]3L򒘉2 _,.7b*I߲t|-'] q1Xc͌-CQh0F]m9?J^5-}Q=f>KI\:\kTSC=z]O䓗Piطٻ6m(pf7;{q=~ /4`=z4Xƚx+õrzorZk~aNKwrnEY~l q{k`(Ϋx`` XV0`,TqLE uz8;ݠg%3zq&u!jIQvaxc ᨏzL~э>*UTL}?o`UV?D}ٜ@Jd4Ju6*DI )fALZFMj&e#Q`Pu:X177M -bBq?FY鴺Ȍ3G;ϤjE.tqĶY8 ʩ\zDp@)s!۹رjNO֜uOa:۴˧g"W1zPj_fx݂ow]0HcV`,!Pi @;.?p\OrAyMtp=o-wk/> *zju,Km68zr\ *~g7Jv/[@zGlf|eg.7Ao>:&t,CY-S+8@jU'}" BQgi_ ,G#$q;=?їV8NcAL/~2l15( #;"wS/(+9nDedpB;IM8LdUefh*d e}2U~KsvRqֹۤ,w4\ZRNu*!S%odB=Z(9μ+}ptRv:3$uh!~4[]DmdSq2?v.Ge<2}C %>;ǃ{ejzeՊ0ۭ2]LSV_\00Ĺ"{0⎿@:v:uP"22ue!C҈Tk[>AΔ}+U.5 iDQzK4:!õ~ u#O-W 5~ l}- QQG 2CN̜Hc& "Z2e(ĹAl)pŢd<MA׵-1d qt,-4_ZK(lT/ۼ .qdIv=6yU[9?C)(wYUbwi]:j^o0 414ObEpeaıNUӟ.RPdzXАmj@Rfm߀=PBu}8q׶VcӞ")R}maw ܀!Zy|W$ay qNwX1o-< xukGђ;$7D-L^PZH&oއ{na8R#4saz;3Qkn"rqS[:W+TVvfpX#҈PgxF BCnY>/Ϲ$  !q"7T??'()pTV)rDA\AꗳG$yte[|KP~Q)AN-4FlV"0.#G8U"Fbl<@hailr,,y\MzY2ԪsCqBsSV/)T*Gcq-NF!4,-3L9|-{^]$5 Ray_S`L-kMI Hg/r۽} Jĵƥm?횦9]XQSR:`#=,\w#h+wS]fDMʛd,=|nXh4I18~({'<`B/g[3ЄYثod9 mk) *`g~Ӎ#_'4(k`iEoiv8!=AL44iT|@"1NkWwt~]{2Ҧ-~>Ό,f5j 3aۅ."8 2 /E>i~naAf' %zv!>j=mTv#[wǹ9t|P±;~1*<#;(ߜ@!cok ؅kM hYv"3nqy f >r.j28<,B)R$C ;2\mD-!냄$$ыLhC5N6JOSZ3<_Ȅ"¥P_yh5|*}rbZ>qG z|B{uQ#Djϓ[py< (UL^FUVY0Z~/)c^!Sc g&(c̅`,&fW2Mr ˔5iI0'.xkdu3Nm+\i-SR Nt~o}O7\egM-NZWZC̥ېNuɦ3C/=1$Η^)pf4\=j|EX#=v[Xjr|ttW>*ފj `~3G V=bLr_٭!8*?Y FLȟe0Zev ey.#Vs@&-Sv2lAR! Yp6d[G`ue##dvB;bB[[XoR;yۮ+w46᯹FߚUmU;iF!^zbe1aӠArbyÊ[Q :0_X<~r2j-z/Scu`.?N\j)Q;'\Ԅ w}l(1fC#3H]&4vIⵞJ(#oeI$^K3Ђصz 9 ;V) :k$lU=p-+n4@  7ǃSչm`m;O [\9USQ(\  pg@Tg'¡]>j̎5Mj|cY\;:jg3Y^7(V~!;؇-3SefF%Pef7 ̝F8iiuCkTTz l.;Nu=k@$ϽA;z?䁻ClzK1g Qe ٝD*~Cjw &֒iZ]BItHEn`Q}1^Cbs!1wsB˗q;//I sHFM%v;g1VO-*j g|ĉTyibgэ֎w(B1RsESQCZf? "p|zZ@>{p8N}x*NHK%G٘` },!*>#䜩zKq v$K$}\WR0 vpϡRΆ)eDTky~ lXDŕe?ޥnWy6!XV'=Мm5+ѣt'A)!d-.eRh%Du/24{2lrJVR^goo"ApeE@OŚrdlg_fޯBYA<\B0}O9{d[LxNkE6Iǂܝ]J`b@ݖ{E/}d(+`~GVqr2 =pBQh)r&9(&CxBѱ6#-nS3bB[`8Oyr|?F. r5FSHuU0>T _i)12o )0a{RX^ҁu(:X4.MS%9GAڑ[*IqZ ,Gޤ< 7'"^w0,DQPW ,]V鎦?n'}ves)i{RN9 2vJ?BTC_^W&,v=[wR-E*!lGHt%I gی},u5*'dD>C ٴYrKFl$3iwiI};?wĴ;sUm?E1`v!9j*< IbѼ$hM CsRٖq;P;a $O1cmrXʄջ:ґOaT2&4_qB`Y]W#q533;$xrnH)3`JsUcWaKMrV#:#tlTTrg<N #wokwP-C^FEk|F"w՘TY1fmCv,r3" X3-Zizg߆'UI=#qZQmYz *mgL&urv{i$&iAPZ}gFK[BeMYd6H_t W~<S>/]iEi3):1~,q'T,輈,&P>HC=4@T {񃺝,Ď‚n&,.:=l!RhD&(;u c"Qh َ#5H>pCaAGWK\V_Ps$)+W[)+3i ,_tTk^7:> ?)TYLw:_,Ã:}`S-~~o o 4GRq}hQЩ\KVvW1c0]Ьvڄ9cq0}Rl1" Fƨ*N xuEL vJd˂[ i[uN,8~ab,'[KzJ#-z/]̀6yDjL;*j׾ 䶿@=V:Pɉ 㒰W򨹾q bx}%gT䚟O G,nML1.e}pOxiО bٕ°Ѯ,7<[+7 3Bb:N^rٚzx?q!89β)ˮ\H[Agzew}OÑlgY6#7ДSO^hPN6"@Z˕yȧO%i(Q fRCLkDPT^`?Q0_QPX\eV鳑<2)z|zcxe'ʥfբNFƐ)B (onnC @FLdW %`w^/ʪʻ{Tp5nb02w&rdll Fdm hַjAU,#yf} L\t1uM&7_d'!dk&s)9F0eY?ݟ< Vm\hd\1.C(tS rۤf :2G)_ mxGd}D!m,Ls@3LkA_[& Ϩh(sxJZ4 dI/C2;(4} mVˀ),K*wv8)jvrW==\7ypXx-צCC%{ŞnkHClD7ͱ9w5WKm*(pxm$y8/ҽWC*௜ E.>[˥1ѝB/i* CvFan2:Ϭk1p.tJ3*,!\Q-?fLi$ Q[dnSSj3gGL#z S]2Joax)-Def ԯsb6s7Ff|%U,)[Az}jBlx')H wfz:d)Q\ X#ݷNn7F}-w`ا"al`5 wp""$P ^٪C@<IcS㑭V?ŋ)2|`?9eY 5VeG;WWB<'k_݈?m9ڢal! @\<"`mCE]ϧ.v C})/ {isYKvBMO~w=tb䍗W?qyCcYע'=!e@h6kCڟtbp>8~ Еd ΓnSä"jOybPGxU߻n 0`IU{l0&lݠXŧXoDό'V*NQ̛`Cd awVNtUIYXzlv.HmJq0+HDRgǔ*(ݕf`dE rl Gu` yzU H\%utu(܎𼖠NV[x dzOzs2rBX>yx$<9иڤ ˄يQ91Q1ܐ9B|{ylLv]j2M*tW7! Qp&ʛj6N[CcZU.aTM:`uD 1tވLMm-tc:=9׃[9}jچNՉ?C+ƣ>D1{w4+:5mɢ^, } gvʜ]/_,CP&a[ fU8ED/\ } U_rq|E1Ժ[yu!vRom ;pJz 2)gʵ+H"-/sc1 q._QߵNavM놔(US?'~ N؝=S|eF45C&ΐ_5G M*Z/ڍS)fbI_v =6y͖P{ j?ج#AG.wU26uI9v]2c'piRW¾~ͩ_&3TpPf:)@ B~@^\u2BL aS2^/^9[9,}z6!g* _rl^@Ī|-0~O2{rt5zsY?!kSF{ b0AL寺X w(w7!#{L/=?en*ګ#(՗rɣCe i񤿾WR-8}TDC6f.El}pP l,j )Ixƕ#zYuDlDdjV$s6yyWt6`Egtᦿ- -^HVax'E;oF'b=xcJ-Hd M k ޳vƠ[\0|6_L*aJ-z: ɚE`:WQriRy_Nppm*u1{pRPP }ޫer{ 2+7 uS+EZp;Bt/#/-Aȍ52hFS 51 R}21Z#\8 p &u)`ul_af '^) vON&aX֫-v x¥r?H JQAscm>-QD+s3!gGaIBq ߲%Yz-dVn Z>}!4.ū1ME2C=~i9$&6 |3NVTX&n/JƻVA1wVB ճ@:V$_ ]sm j[wg˅w0=CE [8nyGT d{+kѶ4kdfUt(A9[jH݀>ҾjIHpW3q.yfZ4cƨrZXcPO:S/OvE|kYal!6|zx1D)Ϛ9ܭH.:\7jÌE?pQׂ21-]u2VwSObX:!ɼJQQf*B5¡ 7ɣ'"1kr ,VOQ%7j!DSAV]7L~4ֳS`--k}î3)T1Hg ~ ~UL 5dIvrځR?;!ʟS=$n]Eƾ"nӗB=5n^L~qٌMa6}f 9ن ۯWǀxU޾V҄m\q R^:Ot1| ::0@k J7"FBT]gEzĂzhcoc\Di`<̽ɤya}AͶc|XD]m3}Vf~,g HR/ mD*T~QڱoyRz EI!vaהԅ1Pll/c?ʓFAh-Tk˹P14gV3af~z* (N:o>G/f Z9?0i%1{D %M);! GO9ZFG@@(.5D|K~G |Z9Eq4Bxea0laؠRA.P|Mi"u8 & 'xkiG/:ǫp,m&rx7oJaTjK!jr[QUߩWnirv;shtaix3ԻUA-!,&fmJ'%7cΞ#VPUYsa*?p#rMmJ3:R|bQnjmF\ g].].V&NB1׶Dph8R,9զsdC*A~ؗ0`Zo!W/Lky^4-!,tfTQ!U? kQCB8o,df/8KG(M)Fgfˤ'xUIJɡERv'-BvgfYwLc;x-ѷ/S?Z<}>aRpJ?$Z>Tw\B{LAri[x>+DS{w*B?»EO皟t/ Q*!IAFgt9 8d]C[DsCSnENeI:W!/Rw媹u[[̻>u6Yo |e ؇Мٸh iXפ/*ouF9{=Gj[Vs_6*4 D%Vr)ip mI.F0"Km@o6T9*Nt*8蹴ֹ{­vwcߺֺXr(\?u X4I|$L9-@X4]TOs1x]w 35(~z" ps4pEC6 rDrd!xP.+;OkOUl(r8}';Je [/I*8mI{)[o:1bJ3X;K SKqeڵ:`#Y#!! {։{ʺZ (ڙsr},\o \j9T8蘧+\D: UdxX\pAukf` bUH9#'?I}?3fb W'[9˱*w.2aÌ! z-oij-E#@:5M=iʮtna'6PO9f*>q'z:p"T[H.qi@ߧLD=?HH:fLx'iLwLujNSnt͌"w{L;-,dAy#X-tẍ́)SMl,3OkO4Dӛ !W`k-@1GБF " 178e`Lm.F?O`ۂl*s*IԑA <6̲b9׺PbJ'"VY[c#Ϻ ?\Z<#IH,xeUIZ^ smQ 9cgua2=?~0ҳEʭq֓}SP>h]$s'1f7fN髪w@Z/{LBc|,d#N r9(Youe-i~;B9/YRlY)VB&H&FFmcrݝxd4$*^ ˠ0՘*sX^4蠱a>0ZqMZJ&؍K/h@?E 4gqYIXvka.zcO-*\۷7UZH=T(*{bx KxcLm;o#;W2L3uv2ئB:+on8V컡X6[B[,E_lkؕ ̓` dv'xCùEAؓD/P9Vzky-Yϣlk7бeLߍVPC!DN%Qj+pnoAĄZIyƈ攺`8͖4E.!Z :o;T]"~^5($p:ר๓[YԱ."lop_wNG4Ahc{ҹZ<[5 zE+)p)Ǎ=W!St*RF1!ە맹p=+jP1$@TݰC6#jqO;/YmM9ØE*QHKϜ؀o@z ќUak ~P%9t@ 횑ixE-VJnwj(#C>P_Okԟ3ea ._ r5Yt.ڵBd{WCzײVbc1W {ʨa< XP;+YTvA&x LCs]( Y?ۆ Fd}Y]_$$/ⅴM[Tb>ʜ^8_x6j{'m= QV0/=/X]N[u\aH%:tQIa'nJ}~{E D/PFLBxP !ߠC1X0ȟTJ7jvT]F 9bQ%xYl!ܘ6Fm7fi\tf[@KX{\9A?\cΕ l$|ZdfKi?:ϖ] "IWF@)I Y3RgL(/*6/+B3/+P‹=1KNWKr:J!ɺp&?dE^0{ YҒ]C68oL ܭqFnVU .ޭ\^l<&Nx ~|TGK!gțk$Rp{A݆0-> 9>FhT >CTLE|O%=mn BSgӢ{y3%EqH-3}R(=~bwQ0/ 8H,j?ЈLMC6z@4B v 2Fӕ#eCrz:~Ռj#')1RfygqS܆NЮ+^b35:~8ܲ$!r7t+5t-8&~W۴ŵ,q  ~f7o 7ܬ>!hon7aGY:mVi?_e۶ {KR yēP_5C\Z{Vfx3D @$z u>^ȅ6հr.NՂi/,ykZD)>}F,[IݙF2KcScĂ?hDn>csT' 9-_cjO7t cDйXbPU$6_K PI}۱ ܸ'iAO W?Isy=,y=KD˥SF9W^&\_F^NN#4ܐga1n]?`-IN/i>:6fGn7f${n M)F՜lNL+fi[<-h̢% *7.9wjKщ?¾VʇTh|W,W8yG<\BNЖزtxKl0*=Gm4ĜpI`%H)d< &~3-N.(7B L;)/ߦG{:zYP;_g:ȷXA%; ;puDUHYER|c:&YKR 0"F@~%vG7|D2Mf-roQ>Ug 6bGrKӝr1BVFj$M.(XUM>ЄL.S6$A w^‹rJ{9]K<qlp=i}jS%?!g%WcUᰔ&)!stA~6t~C:yjK~dM˲?d]h^w4607}GufPշp›ro eqnڏGgv,4E`?N-OB; l/wV `ϳIhf'?:0?ޞi)?`Ttokb:UU*T%j/`2tە-Lg?CvLtAVw֗ܗ&]I̘V8JXK|4<-ӄM~$1;M~Ւ{v+ql`=XX'bJ!!StE>xСS:8iAU:khR%!̚-2_}$:'nUd]\ݷx SyS 5~s}O>ѣR?z%%;PnsW%fMc;M5X/M>N96ڗĽ 7ZުPҙԉ&5Cxơl^j7P| EJ HUR2-N@Dx^6oWOLAQ H@ba!j3 n"Q }Ol/(6~->Ai.4/ܝNu,wYT:vN+٤Z@ܪ#&-FП8iy|_ w$WJKQq: 뀩1=ܞˠWjmf<Ӿ?HHZlE7/- CFGn}mEl8ZgT]!gē+h7 V4?|?po·YD'¼5pV?[Ԛ`|w\è5N#]D+CaЛiM3.bdfY7;(dҿ DnQ`w@ >7}4{'2y-4P;<+" }jf2ˈqENvr#> c#U+?D[D}7\0:_]"H !,g#ܕxϿFI7;U+2k]g$|CZ Μu:`vX,(@+Po5q[KmzE :yY8N202Sxe`%YTNHYdQ*x.zɽl,I 9` ɬ0x4gҤBr00C7TT eKl+1>} x{05޹H ̂3Q$yxR[~͌&'GcSad66U|Gd$a{ K[]0ʅKŋkjJ*ҵ97O+L+ŘY'C[T3:,(yG[޼&)Z46T*w'(_)O^ nßk^C|&(}uKbr8@'7_-0Xle>o$Cd1=q.ő#44(Ô̈́"uC6@~Ŝu+MZB+Emp-Moׇ=Y;5d֜1`-r&;T1Kgpl[FdbJԂݲ8.4TM.O~Vw0wP4ZamXCgeo͉v;M538!xT\BnIgmI:  $AUM > [^ïVύuX~#Lq =X$WE[zj^ py"\ӮqSԍ>̧>'67?jB8o`{ ᆴ*6uqpNVV3^]C$.,b4qB狄a([ڹ h9CA6LC}Y9 Pv@lKuv vEX% Q(nXi??!z֚)6X#Ƞ@TJϧ0a+ YyA'Kw^CkZtOchZ]:En(X H^;BOAv,5AYS\ނ$FlU@q%gJG~FsL~f MDC.q#?AП[r05ݯ]nOn,{f>-ŘPxN O)T7QCq5Ds{ٝ`P!~ȁHӀi-nVXϮإ$^-9h~ T/qݳ=01O:Kۊe Yݔpĺ=s g700WFs#BS̺R}uR=8G /v"8%׉hkgbGlXk;0Q`M@wQB3XoYt:%Fq&#)/Vzå#=*>pFe$'z[J[YQpq\I ءhPdbF8àd=z"BTZ\j}5`d*5-ثo%uU$#9u9jN[kSme`*TY×yoo2D+~\p% P9ni4[(}-GJkR溎ҾGnj} l{oq,"\o6O^6ۑrpLbfRTM7#i*>ĞxrU;owY񱥿Y6`v1۩1ҍG-a#8y"xS#~.Z*9SzgG1,L/Ub&GCq:)TzNc/ D&Սh?9b@+ &]0#ׄԨ3o$=ɦGq46*[_+ : ˣ'Jv$A\oC~:/r-NlYjy3>MZ:UƤc}@h„8)wEnK%"1{#rҏrBtj".L@`wljə}R&W[rwq9TH!o3-e@l[Os6}6YrVS\p@"M.1XP#B,Fdor+/,[.ӫ“ D2Uq;jwPs9kui..14g͉{]-Z];NaB%!up:+3.,<.l10̎$kz%vԸ]ZM;kE\Mpwy{&ci$Kq ]bE>^y40m C[hnM&4C#m+:?:(y"`<32viâR;|qQ\Vvn4ڿ{TѺ  YGR%ڄ< r' FK@ן5,FMPI 6QYvQnffhn8xTy.Nxl[bЪ9f~g_ycʑ&H؍U}E[u\82$s)`41* U@ a1Zq!~|`T L{A#1H_j5쐳s| ŏH[LvSDJFd뾦~˜uoB 00'O{Z3[P@qr^OA`[@H<О/]r[L$$ =X9f53X335,f؄vCZ܏0Q`?0ÃJcTzqTnn 0pNLxMQ:>{9 <Ss&gBpL.Wsym&*L,ׯĿBxE7`ozu @&sZH zTv>9Miձo>riNv'o+/ORff2 \TT( &f!ƹĔ:~~ utwf;Fuy~x`zRF)a.sf.1Dl!`rs8ẃ&xV@CgdƣWMpkP >ZY Q]?QlJm*"pϞuu`J:9ߔ]vSԠdoҪsS-br*zY!(j%@[C_FX"6j:H ŵ03<9(NEqw9N3\0iE=)9`S)n nZy./"H8?7',Px Q$W ,+#GOD"s 4X_r\N]пq0 N԰d%{Ue3D0 G3zvSV1An?FhLk2 uO7f7VT;ff3bRi^M%`|(0=k^*;\5p9z /jZ5ʝmѹ7Qv ֆUӲ 2xO;oW03*T 1"3\ːMGUT~V A6ΓA@nMV}d0t3 TiU R=k2l ,,Q3wȕhpc׈ڀWBXg^郁ВSz/v#7f?rQJУL U}si/4]+aڄ$ka?{\۟-fzy07m;\)E ӂ;k{fQՇ/P 1b ?{~kжZo~$ZVTaa~A;"Fϰuu,)~r܊EK")"Ǩ6G>/cM"I2v1Wed;@(v EMj77AdJUZYfC|fd<8\42xro_@z̮Hk"8CVhyC]qz2fY*MX');H+֡ wLPukX_MmxGwWlPKMf`5>˞/I%S0HtOIw,ZuL%B߹>~GF;D_UbnhT._kH:ZZ=}_*f/h*ގB^ؽ|^} 4wF{$ꄂƺ`G(TY]ԕa6/ؤ rWriIBۃˢ`q|pE#ѨLC4fÿ˻Cv!¤/3 j 6A$Q'"rHTy) n10NFʴ/i*-沟$E*XjvH`9#"wlf OYP#NJm2`KVDB?߬˛A_Ǽh-!S lZ=!2G [dqU'mx1늺 4W.N6k@_7J(6F  ELth&ρf0c#!Ur(-ߤ"?`L=q>g1}+18( \q baO3-Ysk;b%٘D<ǂ~JX-ps"=x:|_Tgvj0k+x놩Qd$$e8:~Neg۷dfĽn VR9uCB.Pϓlqyy{2 G=ZU-@jq@v'H :]1rf{=1?kB>3Lșuz!-!"1$f6f' HE;S_NqWG(LbI42/O#PY>*Ё9-:TOŒ`F >A~!K;1t ij)~WFjuߋOÙHiF5̗}]% ,%^SxxދN985D-*_僋FB\Yd<u'QkElӐl^[AZNw 1<0э4JI̓RR/I"5-~r\$!gc¤r:Z#0 KBf,6xnX4owVBۘXC,]ON~U,qG* ,2MgT]LEKnuf!aJńqnlo!5U 2Nr<#U/9Z2 'It{D}UV{B[9d;4Mq9CY\L2fLvo夢uZO"Csr\@S.- bRB0ڢv"8Xl)Nv D _on·ʌ*pF yt])xy-ή#Bq$bt5CϺ>0jaw:S10a 2 )71@I. ?du"RBs)#&ur-φXRj7ΜŦCO iTxHEx#*iCzA\Ư=bbf\4=v_Jc*f4}O=\@xєNYrl~cJxLCT|/}KkWv8@#rzMsT RQkҊϛ(%cn+,@hԫmU=yr׭脵F8,sNP&7|4\c8xr̆a[^Cfڦ~*-لA p6?u$\/8`=m3t~Um{_`bkklKՋ3b9Lǒ2UgNL$g,L%,eوexs/T^J㲁%-2]f03~1850;8 yS\8/7͜p Lrj;B`XG~ hM+sx5<'7`+575n*.}^M<5kSB 0ř;}L{^ S4Dr!D@=>ȏAnvf·tP]na{+|BqgdǙBIc0 Qc$?XpV< S~ۍ>&(Q+8{:#*2^dȎRf\Txnĭ&F}--v°}KΚ= L0-W_ Ts(`V `W@q.S%]M׌*J/@S?Y.v> ᚅ'Y tGȫuF%W;\~3WkB5Zh2Od$"S&E+E,^x^ʾKsz[`wr(x祉V;$7K1i3̺nѭD_ށBG i āy`ބ8)MAVqάJz`8%glbxpTsdD|5Ld9Ђ*9YNSS7sg iB0Z=TuPO8' m뇒b8wź_ 5WdB"^_92n$+nɭ->vGԩoi^֦S_|v+rW0y9˨oG$NCWW>Ṭ=E)em䍺7%s$R75MI3OF }7!k$RGUa7- hwr޲WL#}6C_ҋlK[҅K.OvLf40` ̪N=Ebb=krth_;J'}eH@!{ 㱴7QTwԪ+ijGA-f^8I[?l>6sok?rgzחrTn'N"TPi^mXw٦OV\˴ sBL (bQ0'ֳ#o $@h'*vqi'ùX#3"^@1E~bDj^IPS{إܧEs >C/+"6ʣ#'N0|@lcW26WPh =׾ 8^0JK ;<#9j,otqq&^jcPC؃%5 V^g]Yż(a9t2.:G#q!\gsP>=(9{'-l/_tr'/C(DFn<{^+ fio 4'ԵօQ>d}}4@uWS)~O6.bZ2!N@@Pʑ="4 nM3Loq|&H䡁]V R֕#b+݅0?kR{© `@F?NQ}}Ld0Gf8d[5d5-t!hV$K$\ 8%mh>?:qtvomyg),arQ'Q]ʆ]=@ xT J9~$Qiw%Aȡ3yw%?k8S%,JVhzDWIgfd [B*&ia/ QZo@zJc5ei }sc}|u5zBP[vgwl oGMܚ˚Ij|m%WU4,5k(ػKF$oR,0!lY.4#ѱ:2ReG)ѽQAagQ^f] EFQ)&A.P`bؒM: إjlmL*] 7(#FM 2vqȤz5lSEA—nUzNyM:WyH| %b;_8R&>DA9ܺF̘Ӂ]d"TMo_QHn ~E>![ɇ@HCASjwzD_} ,R5qyP.eŊ #WcP82lX_ x)>1Rt^qg3%-Cu.8*_mS ><"|7*v|s+%e x4:D KRlioG@^SM+\ODLr} fQlDK]Y#ώK;]GZv㫽" +2@pZ7THwκDD\tJ5/`e ] e;G: =gNREEHܹ#?&ƫ:Z R*cWfÖUnu3?cwٜNo |;ZX:೉0iAY-.%H1lbcnaW]j~ڢg L#ʕYu|.UsHUȦ2  82ڡ`?Di"Om.t<4^aB ؤ1O R-\iCxu,`7({lWCA3V 7G!d)[soG.4[{*b1'L)hQͶ^eBfOV=앆CN]~;>8Do't޻yRg `|8B[t0>r׉{m(+!7ׄQ^]N!; lϫ86 -+D"CIG@#yz4Fyxky71].+ν2 ,C^ #O#4)bCmuHs`ېKg;*Wag~I:.YaO'0gI#@]WMn+8Ǔ$~&> ?,ۺpCz@zjā܇J~ I.u(hOU2qc+;EgK0orztE9zqRg}&Tإ:pxep"{ M\@xًXIƭY4&wOXZ1U*c1a^u}GAÑ#~(H(:A1f*ߗQ>=껵q &y<'ap+.k*Mtjk߃6-SN=’]h$FwIٲ_\)c4#=qn 9Հ8k갽l s߽L@ܕuW3'cjk~  >FC9aKf|j2鱠T^.if[x $ѫ/cy#=T~FXٝN9_gA?Yp K}@CHܣQ%T+|]o&_ oEN*L0뫎0 SF; V]hP/=kHN-M|[MaEh2xsEl l o_&ɇMA<Na}%/ }#A#dSN@1 CU,7I\]d{oq`ܼ**-7rk=EbjK.z#a/zi38_ZEnŵ{  A@G^,h_j/8z /b4 _P5eaA x;\jnjE͛ꊀ:Rem2iBf1Fvb5mRU/ՉДR;.Ar 8$ 0>v% }(UWn`ɫ(jpԨix dg&G03x\>%L?%9>+ukyZAr,c&57ȕ!/idJth'U]DEtldknhyux! L-A6( :=5K|^d­SfF%0L( Φ9-m`##v6$ r4*6!@myXʹX&)|0fvHs 2;Eg+HY(RZJ)# q޽Αz*4{| 0&a2O N) 8Z MK0TJ%TjRO[QԠ W |i}Գ<8u h'6 .;}mK9VÆ7g8sj5]ɽ}ƁzLk`7h \^P:ppDz%~Lu]G(33mT)VnbTGTFD}\$Rx3~ż6Dj5<gwP9dz0ƴty7[XIĸnQwGbJV8-FC및jrP=x<O](E$:p=@D5X1";!Aw4#׏1ulsa)Vm_Ϩc`̇0})ЊbV qڿ(Dt_L%x}z|vj:#-x=- ٨"x8K/܀Q3PL9˭_ᵣO[U;m0ҷ8]pf]$0Zx(l\b ,> .4IL^ ƗvFcZD|x4,?@W*nؠ#9Exw&!879xr_"Ao{tk 'jb3h[tO3T"+ ck۹e6ycVŨګTŶ D'oe9}SKdzxMa7(?r}DԹ3#Xxu:eč}TD_gťIUt#˂Z5<Ep x[7"t]#f#UmF3- ;9UExr_ :眆dBغ lCM|>ãTu!dA\$U D`XpAsrAhu []EP.?EdI]o{%4-7&%3/5eJl9Ҭ{#i*I$>(WX?Fz&AW ēBO@)iEܲx+/Q (1%R@,~݄kA)g! #viPҖ;l1>*JȎ}j1 4}f}e%=.yD;]a撲%7ev@ԧTدDςK#c3*!;O>6 \ַ]F2 ׄ2l'ϛ3ʒNd ?r*ѓ31g)D[EڠO?S)YMZZng~Wbs:Q~qMeaUhoI0/y 9-%at}ћq@f/2 ]Bcuy- ( Aʲ,tt 2Z3k*/ {-(6w4$N3˧q#xVFf*¢8`/{$&?W >cmZڤ.K_h]YlTq99$goL` T) F&hNɐxKZ]_Ņz}5̘q)@/Ɵ@S^7d ІӐޝދ7CC wx?7Nw4}cYQ'!~"W#9tyW#Jd{6*kN3MMꖏo4|8k𘮠#)/Lp|q~>" pAㅸ/~u\ W_f\iG a|ئSI ݙwD=nC} 6jF 6 ̜D]p~Y쥳2tHw=@5̄8H+PcХwX{|)d,}!?kCuaV0[ܭ[{'*]l7r/V$GvB42A>PSBl@׫VLJΎkLBPL{Y8_Ia8:%QBJYƅToTHmoК*F e_tKfDE[fWQ%99Qؓ22؂/76Si(L8qu9$s_?yJ-MƟŭ)úcuvj$u8 G\X#3"ƞ zoO+uC3"~1bf՚Op M&Ha m]79  im*(:b}Y('$TG)5_x0C*O4"h.%`n!' ^-H*;/nMYX‹FmκZB'#tG;uHn}OcpBwsng>"vzŨqp9k/~BAxnA!ނ +e4~U Ÿ9r1HYRGa J!(n./ XgxWڗu}4 T36~d5u{wVK$Th KyJ'f. ӠH[8% 6Si5}MI&QTitz[ĥ 'aG2ϻkP_i"nް #?=1?콏͉HisiOSxvlǑCX=E,!̫Sc=ovCTw 56x42/Up}xߙ~o")%wJp izNu\Ǚ1C|.&0IIB=druyde%2(TY,l黴)r !-&qY$t8R %W`yQ%nc?iTUSۖ(i230y;@PE.ENyzS@98ፉx<+ъe(xr~8^u.&5:1J΂q7b4.M˛s\9OstccoqjƊq5|nOr>iL\fy0ᨡjˑ%=~0j5LN׶|L "?m NG#ڞgCD/HF2TcSyRA1!sA\!!ӜLq?հ؁H1_}U-7 yX_.&-l<[QMZ55 /ϵ%۲P<.U;G& }3e!fFX#V<.8]d)C6F^AJLJ[R[qQ^3YCRioN)'E-=fJiږQ[)}ﳴJqgMF/XW'’ / <%%~QK.d/:yP%{AL~7&Wٱ,固.O."W,Dce g4,ӭF|$}h)IV-w^(aNFݢ ND *jP;_?BuaxI5@<] .~9#Y`/,Kig'&wMDH J Vn%T==tfs 2cP@npw׶m<\eb$#֊IQ _F+hqR"2 Q⓽Ւ+SXC~y/DSJ1xrsOЦ[X bWdL.+wr]p_6Ƹ_qtW߀I)&@GUIʘO['hYP@sw<D&ڏ Tsxa~(yDܬ5 ( T xm*ݛ.ˋ8ܾ"NjĄ6[ 8-o^s2H;E= oqgCjR{.VQ@qQ'~9 d{wi~?\(xbe@EV%0»)HrMDӏ10yC4BEAֳV$G1\)?M17]gU{ufQڲ̶-RQTKd{߱Y-9&^gbxZ޵4{,R3ˌ,.^"!+lL-z#,>L E3~!8Б# x+[% .zN_L&R 2o@ڱnĜ޲ JܵVT_eWwqeOR=x8t@ z gU9"^/9_1Ez-<٭ۇX!毘zD?<϶$H7v457h=Ff-f_M!z )晌ǽn͞qDPi36rp-H2oEOW툳]uk$xݙ>ҠܧTzQO4x 5QܐJ>HT#ؼ[ܰkdxSlp3*GJkpKl,ٜ|.W z{O3.,*S w@bo50NdDk1~F4q%}h?y!8Mt-'2HhN=(ኯ=ek$rϯ'4.A ӂ=x؝C!>|)O-K zpLYhADk7&&\=2056;6%Bs.Xj2,ŐsP7[cϿY! uqT%Fb٢^wXD8_nl70-q m Çs ibwĝWۮrJ<8ݣϷ?8]fJgO_[{Wܫd!~.Q2A'iK8s?(~C yB|lOZdD?uzH9qxuV GZ&n)mw>6P~+tB't‚/dITɬ hP26Z\*ogc% u+OJM%QodxKKBv TjR|Jlo+eX0٬Mj-phchmESb wwHr56Qr'5P{cqԏHI+FX63QIGXxUINΰ\3@d$xsc#1D$Peؽxd/ZXo+l煋>sVXKCݣgFOBA΢7Zfvkh R +VԌy'AFNeT[ 9%iM2̿HIk,{B_Q_jk.?i~;ٔSnj $<*|k ,k8HNJW\jF' ;s2`AF o[BM;m>FUoܰn^~-ʬ_ucg@_pk3ńڤo^":浼Wab| y4!{xz"hh? dWWBUU:%]@nfX?EAsX&"WXs^-ȺeN(W!H0>4M)Mۮ+Bc> d [tKZ;qv"c`l$v̌1S8lHn'U bNzq'"ȸd@؎ڑkf@a[p#1ͭ! x(vDKN)wЖ Q,)X9Jt95Թvȝhgl޳b5SM_' 8W3B˽U y&!oA}(!X }ohJ hT> t\㯞V` 1hFUyVP#VԿL+U5ц#K7E3(XiXY8LZTyZJq H?k,6cg*Yu\x~8#_2:8b}UhQǴ)]qD54Y}uR%? ^y$Y Vv/,Fe{a.RC;~}k n r?,mZ$6-+Dd}OIqe6#s..Y9~W07qnguI,x60Fis#9 1&r;9'6*xtWq|/{G "'Yx&@ Tg,, tcpu2uz(Hؽeɉj1wx / rTEOgtWZgNBv*SEE?K_?V@AE~2SY;" 2"yZ=4._UB=²(i\hͽ L1()LYCφŢ,+l֦=M9.(ךGQ) df !0|:3qea>]D2$vlZfwߔquYqQ*H8LŔ rf֧(xHAtXՊS Vx`'7L_&ޡ։;lF.nKXsOvE14\c$Bz/+czs^ԛU ;b'quh/U?귡~T /@\Lh~587S8\z"O4a=jaMhĕ,hb־n!.F 'rѼF.&r@o$Vs}jW&‚Ķkqu%ZRBˆ\"B[pt28uϸ{L610MzX'k -1äzI {ͶsQ.5,>ڦ|/TUIg:Z1| .:bD#:7M 3L㎟eNXɗ kx~@h0/ɻ07GV4u̩/19HFiIwj?:J(į@A(?w:iOal0<`*!Sd2"J9}u5z*VWq x4U ՙ& %;JhI:S;^ʔ=A~.~[&@ k`+żNy)ĺYs#}KPwiߜIp׼t?{OH1`ou;=;87mVM ,Ek\gʀNނ eum6@B܃EnbԏL S:-7s5anLiحh6yFҙ i|$ׅrUӆ et;ߓp'bkp"* ;:k":]$4;+}>Ejw@FR3F$#JYrN8R*Rh= eI}izQ7p:[spvg N&X^w1xP9a[E2ӓ!)\mf/UQy#vF &݁T&Yi7A4ȧɪZb$2/'CYUT|R ͽXp3iF9|&,[yB6kxfJ3ZnYJ`۝P瑦 s#s2kQ&q8PıTkLbjJ4^5PvŃLG;x5=SOtcfY\~h:M |]BiHtd2uH=0JMqx/a]t뙒f BYh$*{+1r4}'r %vyPZuv0&z1V '.P9 1ϤMR' 3FSI'ّlUKH"of%\L cK4xS%,B@lH9e=>34C]΅`(Ҡzl.e*k8nۺBW[iX@LrO. ~Cwu+p ~d_ |Ġy8;h2S{e[5|D2;_r'h8*R)>bg40Lzm!w@pw㑹EΓ %}|o>nkdK8E5-7TZ:st:>d;41Q2[f^]PUa@ *i|VWf/Uʔ"=ny |?7h+1 a%ܟi!9.p G\D6KV$f^ҍ+憆O_rJ'0:rƒ9ɡI ,-r˞+qӃD*~zy`ֱ2du ]P$$w>jh+BBnJwQ#J;QZ5@ں;kAPˀޗUwɝcs0WGdH2Kk #$G`${G 8T]Up _9 !h@@U8OS+t6%y.q^Y!Q,{2Ukvn#j^M18t pqCjxֿ[N*qy9UϿ3ʄ:7X)CR!Sl|j/8L |y! \J1dX.,Qr7l#Nߏ!ܘ젆~\VKr6p ;=_nG@s :|RtQ0&S-Dm e5uҭt+0Ri>sϹ Ig2& V/F(Hin.t5<Y7&D=oRq SyoQ`$5ޣ&G0EE}B Zڍ u_9Գ.t}?Lxxfɿ!RI02&gWUBd,pùSWLB>we:8ހ޹W{S^/3UyXU^ϥ,i;'D92 ]򐓢Ggw~mKFikښ/#}KX>t0*rGk)K@be~GÒ>#9 MO2~NgM})zBdqv6s% 7J-e6|#!rGs,خ◒אs)!f'Rzh#q9d%{s~ aN~[G%oȇt.@!\^E98lmIi+d2,]na(׻ 1)SBJD$S{M-U6qy0sO ֯W&I;:755[sEsU!rTYJ? -h^D,8Jx+CR?FF5K'eUٗ/2KyݦijKU,+<Ȩ%]đȋPd.qO ǭ|Q $@p"%tNCkdoAU}X!oCp>Jj4Ɯo')UZY(=R>}dg)h7d-#J'u!6VX80N|vO BuPqcy `I-2k./ۊn?IPPq\8ߏ<#POіvO"s dSJ& %/ya*Aj7Ic)Iw=|Rળb]#b\s`Pƥ#/vh mLYɒ*Mg]\Hm8Q@ay[.ΐnf+i6 ,Kf;`8E~?r1?{L#$m8] ic N#؂o1XZa3c2IClºɦbnj97fV/g01Aļe# ĽV释I97(.ۮzSk4端YT|Ӥy?U I$dƩ5>c3ܗ9ܵ^`+`C+}KE\rDx/-q 'x# OYRt^xϤ Dίi^XnRe P\G~ 4]@,t˵&BBʨɂUB<~,NPBDtueD1y&jes{'Mr|'9Y{^hIݫɄ8\2w92N"X$4K#v!$1oO6'5$#Wc,ErT*|V]Yg Y}oW+wC. GmBzefnㆦgҠܙleCk;X RNpGR=yl?_ɀAb,<JR{)N {((>йȽpVV I·f4 rC`ԍa"Ykv)v rJ\HV &4pvQl#Yd1jË6A;z{.e (*VV3˪Cj;iblmn޴O cN'Om?z~mc$q,?ꞯ͵SV@gg Sџ[oh` Jq9x䩙iIAdJz[. Cx5s[LP8ja‡lGOݏ;E!=FPV!SevegvEto ;,;w!\!^ցA#_b98SizݦF jibA{3X%?$d5$ &}_1v]B$cDm#7ui d.4y$i@-yHRd7I'%ˆmJ'`Wkd}Le`2%9<#TK6`5Ń~o$_* +Jfa0-uZzgƇ3u ?%m!M82_e2LLG>+Cq2{΢;˟)RIM)#Zkڅ-GKWRV@%FL+Dd[cga4"TeOS_ H?[i/dk%:;t:ʞ&l>=__tD)(ubA}=3v3mQe[C5YZĮT/zLB%bҍa&*k 0 3P@oSQh}bI7gj齱W_a :+*JRmn/34crt7;Wߧ_IIqG p HO cxڏ̚j'95^:~VM%Dh/˸AupTGK@]'E10@)Jޥ?sחAATZbRzz]9}4]*q =eUX5>FfgqF9Γmև|Pb }Ԫo$4@ QفS ی8Qݽ+Sk{v2AAepٞBӨyq0㝠],OS $N4TzUފZkf{`Ay@1Q<0?x!1ڻV}\kEwC<y9fYoa0 AQeCi'Gw~cxvvX"64lF/OF[g5l+*\KTQW4 9Ec7WJ㆗MϠK5$ҡ喨83{ ĸ&Q2>F_Vpt4"c׏HIw& g⑶^j}19aNSs>;Xy[1n8+j z=)heEh|g_;j4 npK)-(" #2GjA6XډGv_J' 75f1/Ji3cz'6Z2&s恻txD~wy L=U(M7rb.Gq\ŝ#}kZ;W T(80R/+w'eZ_4n/MT_C\PmμQ/KTZr4N3v$3AW:0rb~֞/y+{ɀrV2i$f_xGGop%y TT(n{ؾ=,p(jZ@!_r[ @GӑU*~ѠB Y'1*]x .STCk"M=f$&v~b eLA<ߡ0A=3M1?;ʊ͋Z8|}xxI{1Wn;SFQOp1黑 6G-f{4K_zT*1*>'WL}䳞UN\+?y7hNJn[Lڏ~t hd yhmt֯9 ^QvӬ}b 1{)77VBCi3[.6PW{UwR$`ty~?^|YJg휩ol%fnή%,Cl51>U)*ŏhk?H뷢/rj+x6|SpUn懹[G!a\ROmotU,wH qaxk蓼^T,QLup Hwu@o VJ/=Fѭix ?7D,b_ Fxp1@G?@lPo¯R\ru~R"jRCҭAxS̈>+0U͑suL7a'Ro.P/m85: }R(Aߩu- qf-L|R/Qp@{E*lᥱT,cH _@-3_0ϥ1@RE޸Iܹ86pHD/lR+a%P)faJLYxKEBqz7QhPIR6˽/]+*QV<D5ۊU^w) K?ubPA'h"?Kj6'n)SZ tuO%vaPkFmc#Xi :wz)~x2O"y@S̤`pJ춺?~͞J۰RMt!ae#%Q]0'92 .UJRs`2?I2q39I܂j' ?b9pK bK_AHL&@OL=ݠ%Pr~Gě I!œuzRJ6t ѹ?OU\hJe1[- b}Q .{ݎ 6"a5 Q\y-ìMn>u]_e:xuH&GfesoIX`W'\O تUbyd1+xG"YGT^d,ظ!S+) 2?5iHp`V]5L }zL;~kY%dךzϕ`)ɤ[7ٕ1GaIda2 |3UϨIiCR="LN:߰`jɈt袨q[8A%wu_H E(YvLʺ7%EyJ FS5\N'`60rX8 }*tdŦJF.}zвT3\ J8!b$ur, ᄦuqfRR=4 0sp%EN:t Ck<0Ηz%@,NQߋ} |d v'+&&.Wo(/j0?Xi>`_gZrUVAAbZ}E %E#1&.D-9³NB.1b1!3Í&up&ԣJ3#?DB\鷳'_ xΚQ PJ2 K@:`##@cea>lq#J`w1 :Lm2C=VzL(+#vQڣau!Ƽ{졕g9ऻ 1o=Aw ѵtxß='J%&k1X0׋?S!dΡd ζ=~+2%u pI+ 'M!6d'Xa>5T+X+#+ż47|}Ww:/`{C5^ hR|6XCzK KAElup_Kh) !f σ`Hg=  t+G_kYo91 /,<U:%.: q$_+G8o|9hco5$N%<9R=Dt)\]wfP4OY Iܿ/ƙ0AY7 .ձ[s&z 8cݺcn/SQ 4*^]/Զ5UcrS $xDF/O}O:?瞸vEe]V5etAw8Xl7zD/G@bVS9-zc b .nMfe@9}:F̤~vzi'`EA͙K)n۲u_TQWǯdPR˯Cl쫭ۦԄղ+"_tm|2jOVVWq˕qm'"6kIFGV{oCUm8LÜgͤbn( KIe8hm%>ZFtk5|AoMcv|?p%6a JYnD‡}7s@ :pϮ$)-`w:*/|>`?Qb 6ZZ!p-74cr328 % 5%;`8&#&I7(R֧Æp£{^xD]qא$',H_ЀݛjJqQ0&Rh}>!+Ha=+0ul'Q++)ܲXKIQMpCjSrKezQ[%&Pՠ2~egh1ˆvBzm%@#-:С| ?Pms*J-:}M̙/M'Jg|'rU85>pɱ؊b]E!ZJ]Dʝ̈8rGt[kC+M.E+$ U|!ףŇ8ZociB@>T`%ٍokH"-4o0 ^樄݉nkvFDӑ-R A]@['P!urXP0Αd^[fq6"hSz.HC(Di N!8_o-g1<Ue2䵨0|p2(T. FVBRM|=J1@u؋:B65c&;& #*6mM.e]}$Pͮ)B񭯌&"v.&L >A!*Ϡ]'=;Đv u, /2Ug1˷|n@7v-q,h-Ok'1V&p*gdW 8gBj'S)^5K4t8w# =LCu5n\x<~z.yat#hFV8ԅdy&ψ ʠ]z0&H_QՊTa9?$y ]d{-&x=TZ`̓6dR0n5N%ϨUz`JV#;6%.qMc,=2sfK<ipL!ɂڵs|$L}-62*g{{G| Gkέ~Q%8x(CLDCAvQYC3xi>Ml~VLLIue12}&ƧKe>3Zyl؈zgܨ4y?~14kdm@]ͻ' 7_j`roiٰ-aK fW*Ė3E^=9ngBJxY[_ƻ5QIpϐ#}F>'8`wדTLȎqP %-;"JWqBSusλ*'lA)ݭv"ށK!IV)^^%ĢuܮS%[=:@R76R %_0j~ vkA]USi^$ˍG4n_˧N3 K:S#o.ι= Mz/Ȅ 4j+#`ci/_<@cA+5Pδɍm -^bvKEa;9g y,fDuU}#P0t* _YMkx5ԩi,фyP]+pِpm˜ Y7pSd=zOTv(iDүx6ab g%4Y!H~~1}FGVy&I]k'K#V<E & ^Vf&M+SN?ӲO] %.su҂-(kӋ:u[! _&3<%y J43>ɬi52-BnXTD$ Tm9' ܲ!@`e4P3i)~w\iܗqR;Bb!_V9^}; ([5ᦂ,QR6+fqaJNWTB$16yi?I23i AxWQQ @f:Έ;>4"dwK|-qf;f/-eO@20fss4Dgow=.?nqvam-ߔ Ů6kRm[JM¦b^ߋrR^O7M7{{n?_]Xobq!ݰ0{b7JRZD +P4??7`?MU`h/ub]eT-_T%>̶ 5.|Rju]ZKVtuCFFuxO" .Mׇ;l2Z-4bj(}M\ںߥ~5teJf:'y T0]uE+V| IO8.gKSY4K4uH(ϴwz0W:;y\^ 4JhBg&R?q'ɇRk bHBYsb_ ǷsEuHct0w@?fίgXqC*[5UX#ӿ ǵcAY3HtygkAn )gΌK )׎s5ioZ AUGsntN= LaWUUlDnIVņ{ti  R=mrInTK Z`̲/M,ځW%\{R<8iiתp$?/. \:goY Pg_p""EEuOj~ź Ҡb]%N\ s|}Uŏ/E+i 'S!'kkEwBe^FRS<.גp$b}'XP:iUXJw4{gwGljJ|Q &$|_g,k2ixRQ#Yأ|K FR5~<ha_~7ֽ6D|O5Sމ=2Md'ĴZ*^Ȗ3iE%W ]c(Cd٤P)"JLMa1oCjs< 8-FhUa{A|FAjPY#ɧ&{a[H-M׿J.NAz߱K8Fe:CR_"/<ݴԲ8V"$] =fV_7eCYzcq﮴Y'vu:ܲ]A1a@ZB#_kEv'0=hՠ5%oC_fVKxRU@o\3'fHY}f,Hfx_Q\Dw i[wHpWj'1oˠsfEvUnټd ,˪ɎFp- 18ř$VYܜnS@)JWr2}Jɤr*T l I4aVuEן EFtum$N/Yo4|bEQ1}rSOT b9aj D~Iˀ;ґP=NCH7xuʹTXQxԭqU}>Kae26O^1iw~g`7"q>Ə|[7G>o4h8~o`,QxEs$ b։¾1iMȌ'G{a BRݯAs'o2H5B[%m+4~ޜ~L7!ye\ ! ^˛ eA$]}agLu3x5ǎF}0hHJǍ N=Awp-޸6<)ʽ(ɤ3XZ#]sm!=vPp:I:rzMy_/VPIH=4d'-r=H zjt^yO_EcĞuڂWY!" SIO eɥ)2r%Lg6Q2ڸ~$[:u,qXE'd";=c5܃o= ~+`G(BnP&_r/ڨzdwvU+Z$,ZNL# ē~&'.tѺB  ڲO\^bW҂vq漲u9gz-7M8lܹ-MU*}3 -OԿGnz WԻ(,[;Ey!)f t4*/?J\o%A䆸IڼA!OV\\*I'A/ &R7Er^0[SOпpmjE2)Yh mbbU@6ÄK&v4ɞ2>p(Z0Ɨᯫpse`|a_LV Sk*#Y7YS|o4L1C傺Hh:j ȧ DF;q~GL01\1U_ȳ\`L[DtDw+Q #|:ȿaϠ`#C.4<"i4|GܝIڶjF nu 9) G"s0jEHGR[ -]cWps_S5N\rHzxg 拎@B]>7}J4m<47EzWD%GIpLQ˃&Xמ0/c5tK8p:U|z"GVs5ì:Gm_Jm@`[t7`&T<'΂҄e*bP,a=hbxN*X{ ѾCۇӣX~"qqw`L/[QAJZ~;=XaP$ : .6{PWޖў6BG6u.&G fTIius pYhQh2m62[m͇Rg /e鉿!uEcTv4ϩH~Kc*^UHK+û 5&h[T_Y9ZGNe)%KM4/ѽZnGi8Sx Zex\U0% $7v_4Y7'x.hVut0<&3%hG_[-a:8OV K"5*Nݩ|Zw}+$jyFV1D@ƀƐ[n W NYzӬS ٙe-kL.lڋF E[J2?e :|D͕X Q[\)t):ݛGDxYǁhUMǫ)< Yy1shF\?&Y H 9 4cUOcwt)QT{ͲƮsw-8sВ LH9s]W,3]*`+w}'^|0D6ihOxþd^<ݴosτ,tY};2[Z3ǭѯu $@7Q0R RFPje&LT~E(n ʱӣj@ t0@e١Z~)KE ǏttpAtd>`@x"bn׍ݟU:Bʭ S͐ a.Ł8Қ&:LA:ȥ66fWLz#͎qj}|͇wƋ}_-oV4&hw5C55߈qWL/kѩECbr z$Jz[E!\_W֦D; g~r^ s|l1WM͕*Nu1r3 YrWGLpO g՛ߜu0n ޮ mTt> IǢ_?٠‚9 &mCD k9{%G`j4(/=,r4 >bDR*b 4n]閸(ĉȤᔗ#ΩPqY꙽͞  j,('#8> C`8b. gfpIUc:K&#P{WsrZbЪ~xr WJ2ީi)Pi;#pmO I+Hz;< CA}a'5`ocxP)wnq"Kc.D.TK$̀_a&*|(,ASX D 8f[9_$}$KR#ȲN'(#F*}zVy/nG*2F޼3 N458U uHh,}(ԋdG 繸[tc_._X>{0OM3. mNP2d@uX PyZ3~*j^ A*k{7 >V@ah4x xR7í*yݔLީPq1YBq+XEJ+:2DmZݵ9JB΋4A`R25Al*gęGS 8AF vڸoչQ}ݜ*+} J೨j0.ix]ry~þB>őNn*MqAQt1HxF@ƄMdZh60*~%Kh*fuzpe;|eI))?x3qL|%uV/ʾUJxQY$7bQ赧Dh3N[l̾'Mkԟϗ$ͶV}Ou$YG-59.)d֗ Pc6EɯĈɆ[Ԛ{m.ٟ kzy2Y8¡ ,ꉕ?͡JEy-a;e-,m u#'_EM!2`.Y[ԘF&-|:ٙQ1dR fo LP2YԊwwyaxHR0~jp=Qoru <#hаz*(ʀXg.o#v%5δe2@C$ a\%Y36諥36ǴUkDK$*np#ͲW)7J\L sQzl*P/ ֲ6{WQRnyٯ&GR9.gTu#ԕzrT%ǰ`ߝ mJ^Nrjezpz.%OSPZjJ/t1 8[^:f[L{]',OTR)iJq+/Q&uM}b &6'v+ԩ=/bn9*D6IӮO=)Ġ'Uk0N (:e8gR*5v(cm ,n] 6(1k\$mZ$ٱȌW\+-=ǢF_# =p7tv0jf *f#vU{ؑX:iI<AI(nw 䘣#0SY1P[|3ܨIF,peCr.GM̽ځHⱯUbɜ<:SQ gy3JXf;À~+C#pf99Vz\Wgo~ l%-^+^S_%wÒ!?ڪsAtd%$-RI씮m: e5ZM ;_n-g1RIg GK^FJRA80+p1w<;e]yԥıIJ1/2}hMcDNUOci b< bu'Wcrn&.YCaK>Z D%pspԃlŦGNGf+(~'!=,ں#1tS?8a0mmF2bg{OVB[4ļ]t3_'i0f7n%ES#ҧ<Ŭ(NNrC1Mg pVɠZ_ ":;#ǩE_丈7$Ja$fL7[{9y.~=i<Ѥo$0 ,IR МX6}6Ƭ cZĈ03PIIK - Sbb RoQ0RmA =ps.QT/U-(ȴY}Cm֖cگ̐ "z6<* 5[FBB<8:]=0|eY\';[.?^tTE óD*AN|OAh6q/S;-ixhhY Ŗ&֦uz^ tj#@aDɴ? t35c:v5_O:6>]HR-UB3-B4OVZ*7C kfCdPc fmh\_U}‘b?N<!z*Hͱrx01C% x%Vм?2iwۥkgf\i9QGll;mFZL8v,,͂˜ysDĜMUfD'(',<3ΫwB[Qt@v1Ќ[:% 0տcLr`&9_x[6u0̫Rh?-̾W,4R! QڃrOߏauTnǵ5>zIMv_׾ ; %!!mTy46k P0BS8zp Wo \y X q_$0_{ VL wݳ^B/=Ɂ};vD0ׁ lA :1--q9x"- hU`b]]շ6~J;ȮsSxL$QՓAnKB =ٜkƩD<Ĥ/X.k<#w>IW>RMy!.1bR) OAo0vфqepP*8RS߬X?Qes"-Ή@6å}&:bmaMAEfuqj w!9J _v?XsN%wI*'Ӳ -)\~XFK>7r@=(I+L{'P3@I{;O) ,&PҐ`ST@Q'⿮;(?SӠQmk{zx.TjXCXY627vGBwͦZ#Nm-ښ[TNOe&FzLW|.(E;~/ e?~_(qb|xFx!)Y^6A6[XR4Yqu6RI_JJ: 6EOmR9y,j:7hfϠXFFtqN~\G;Y^wRxK)ɐ8M%-䰎JVn L ]]eP v3ՈkGl>XiK0nJI_-Nojx})JF/fQ"Q k^S7&?E(h==lɵٰ\@r~0<|*4ȷQB>G*]it;N.|ADrf &(#Y!+ aO4a(.:}R·^ެT=a-і_li:i<k6C}XhZ-GDzN_㏐1Lŵ#@tWȰ]HKV@~=fFarQ]^ 5sO_bL)]2؟>G(xG`axb{aZT!1uIbMo4iIs]˩}Ah*^{"&wYoZ´\p%Ӛ\5Ѹ{5p98q谱 4o@Np'ִ^jx(O݆v13۔?rgpk _(xtQo ,BoZs'yQ.1+rb4+[А,1t%;"Xf; JGBE a69~ba%-M֋G*w&;B";$ߣS>_>!2zi}1cZZ- Rm -sjHb4dۘBўdtGzDU&.mXD($q4H0iʮQ-K ㊃v}w ߾$)ˠ<;Pb7MJ} 4ϘOu6$_-(&6E6$3cCҮ?$ϔy*e' ع^~56]kۖ 3*ӄqk~eu`PoHd߭Zu?󱜐 '. O9&CmvO N&&ռtQ6oE[Sdbf'{GۿjcW003}fy!T_LD ز8EJG)"S8,Q{:v!9AB\pSNEla48W;ym %]- PH5߷)*}MQ' hPvAب0!'uqm~/n!tI=.zBe'jNW>5vk{.96Yc6>ܣr R'MO$QĔ}'ubKg:3v8B,Nlqjƾ%ؚ HqN$|ܮ6#[+nWtYjA`"lLSH*?*:[ Ol.$2/"[v~*n_@|[FNɮ)oJ"e[*@]%DD J͍IM8I ^/a2p iY`F#hGcs]\@l8<[h-eߵ?E%(S+J' oH3K@GFqWpzi8*3Mͤsg%mEMC铦nxPlk*1'uΝJ¸OqOmgV/{et14(U~2UcMk|+,E5!KWMOc`\ NyKQ BDS3q'e!hIؐMD)A 3bxy=%?U;?闢9c 3S&PVZɝ]&bTk4}Ac(|Ӷm$1!p)We' [~(˧(&:(-TQO]vujG6B/a* tGBɈ&t3gٵݣ|gi8~s1{NvY$e[in~fUMjz6lQNJTHÁ"mɃatgGK?י3: ,~v=0gZ6xT&utsn[ wC0֬d]{0^=0k܀tRt0t%0?r=)EE8\OP7ԸIW7+o\$wT}N侲^]OFH:M/:Pϵ>]^+^WF Mv8ʀ+=>H?b͐x.PP iiF̢碔J)zNԪx/k_*ME+ "ǫ5e+gYNlegmR֛ :ULժ#aG**36_~+S4[ԟj2G Чt?48Y<+К)Q x dt~GFbqT7kv +uQIar͏_Y 53IE$eqU}/`pt] o& d4O4_VT;Kj6C9KSW0WDYP_IirB\0nnX{aUƉ'Na6`l0QNؤ<2O`فvNAm\Ԋg0:4jQv/q\2. iݼ=])洷Xyn8xB т]0,@bgb܀e(GY2fh%%GDn6E ;84&6CKp768;1S)J)X?="g2hՓ%x!MK%Kqҟi,U,XoF݅ nkoh_(\9pGzt37|Ogm* @ɬQzOwFDtضAdP;n^T#)1rVɁcVeqm/Y Yʀa8Jupi(/ rJ53=[iT SY/`]CHQpfG΂&\)%L+PIk 9\Zٰ{!NvM]Ө\coY6BNIɎ64ɟmP[qF:jiYn(|M}T?_OA7L?M̄/=B@~k{KrV?j2vf$dmRՙb3ǁPbOO]~^kи&!8)rT( b(a3dfOscoeJ ULs⥲jd 1% @N{B9 `ZS׵3b9絵%Fn!|&IF9LsM):k[SG tw3е{9j?K&iP|&kAdc2,D,?rRΩ7_e9{ K4/b]o]X.7Ea-e1d%ZΨ~{H_QL)it6 /q&P.3lV<I|#+Qd(xh3vyI&M@ok1R{s25MѰ¥e2fog0,!݅?/v/E jGTw Y(Aw92#͂y/t:ABZ?_Ώ3Rt%LS%CrcMh3yq͘FNFo%q|XY )S6qjW\~r~޾[;`kv hËo~:/Ԑ7Rpۥ\nj{03p._ Y7O,#_ɚr=NG\]_yL$<ˉompD[@mG"+la\マ}@cwm:⽔$uтdR--D`m16B9g}Xr{chڶIK6\.Bhdy;\ZantU}QsQT%xB+nU:V7{T91voXc}̠y#~R%-y-,ڄCQN"vyY;5D:ZJwq۶64%NZ99d^ebD53NqbzCŋZL) $XCZٶܠ0w<>K Ѧ7QZ=O/5^>bu.bd!Z9=UTSSzUUQ\A2T1ܞe{ٽ1R;˪1)F%@1p]H!.0$kVF6 g Ҧ+7t[b%Їuc8G[RO艮 k#m@cđUs' ?oF.ZB" JZԠ9}.Sg8q4 B,wW0ĕ N]Y9d\ *o[րҝPhY7d[)|/7in|CѺ 2UTw V^ LWszjA&cPK +cyb(]oU&IΝ_4:NJԐ"Ŀ]@JFa{m20Wx/勱 4Ps7<#"}y0unu gLI#|b[{>Zwa&kע'ftgSVON9K|[/wnzՔ  5YS Vrᦎ k>yGrakP'w/'qB]h`q&lTF:~ m .d)ا2:I921_u.5>݋bu Eߜk)B2͠sS$SuQ*BV욻m ɘj_K٪LsppH::E NjDfkwe+)syMvפgO=;W߳yxLm2ڛf:~mj'LT3f숚(dG2w75һF*;ջ^;ISdwSn`ALP<ˁ-m@'j9,0@qd j enħFR8w $0v77(iӫWb0 Ԑ.}Rގ7Xi"]$;!ԝ-+C柠<T!l~J+t5`Dj,p~%ջ;f< }FY:dکŭڳ0uNX230{^`aEӄ*Hƨ9~qš>_8)i"b%hԉJ ThwK-gVuq;,X逓hC1u^,OSCDuvx]7N}cjrO>abfy:Sk8lU{=սB$k*̯X@V:ޝyͣW^t z5=\`3q!2Jؾ mɚ]TQzT'JAC _k}Vީ6SadЫ%$/s\B/sa/؎_`?."pǑ!c{{t~]OJNKSTN~ƫᮭD'$͉C;B9eDODOY- I2ˣr}z'Ip`E /ײ'*;7#r;hخj3-c3."B=xg8/"r+Ǽ ro_q CLי5oNZ?+ښvt I憂/d 74LU.dMUa>evP"$RPQsU(\ k^cKXJu,9&\00m}9Ƃ2MYm)av&crQ`Gc"ROÝnaeBgT5iS;MR@<m :\@j TUb|&"GqD^Cw*yœ 0KˊIDJF#0O._݇Uv7e i7Z`@q8> ?JԨ'J={݂-GΟhsKT΅h,׸u6zΙQow' Ba,MQc0BE|[C`y"1%Nc<*~%Ƕ!mIqKݥqն\Az[MhPCQ[=+W$3wP~2OLBRIJ"R9ć'EFGxRTŬ )ia}opt9Kƅlb}Jc[ -D0]i.;!UZkpto#a,lyZzE/-=jL[A@Uki6rT28y2ߜz!Y$Z{q(?e@xqcثЕ:IKmEMAEP8k .T)V{-pZYuP Conަ`2h mr$&4ҌyE_)(U (+IgԚ{t-e$ ݰGIPt"sf1î,5QeUR WǦO$7lVbH4"B ))s*Lˈe`JĒU OoPIZnE.fi6PH"c b$a:/zWH/yʫ|b|_ϜblzGNf=qi| \=kLOmQݓU^ 5rohQLm ۳~u/dkӦjv-;s-GjN[yYP9ߊ+}kLU+(d@Al:,` ?sV.tLqlDD53%@&[ڕC ޓoń϶D&"- <`ryVӾE=2́eam<L<Δ@+?\>C -V3Z(TnO*Cdvߧ)'hE"ZQ֬'H]LO}Ŕ>غ~[ՏJrs0raС0 p +mL+9 PDJf:HBd[fL  /$|2P:I* #3e3p5C|ڛ֝-f4$_WG0Y!7BM=9ۖ0fJdv#$(w+"rf:[욹6LXϷ47XJ.3%;fvn;wO?eH߱9z.%1qxZk +:=6֕{Z*0MqF/$06 + 9šrp֍ԓl3[:Zxs,}w/P8v Pq `4o!o'!w3GfO-ˮw%@<80K;۴ pdꉭM0וY=wt睮 Mꮚ2 KUEvhsA0!mBhfTn%#wgQ;</KMiD: Kq77;gHbQ@%YHqH n9]3M /Iu{7g}RINV?^ XUU;R޺k0)4|sz Mqݩv\#(`;npFS^ɋ09=;N%c@0t%!b]Sv/66w'Ѥд,ܕ|5C4T'6g8o}cm%!k1`_%ïv32;#aN,9t?o/輩֡R5q9+Wh})3Q=_~ĈRm [$6pЗA,w 1O׫T \$5;H'n |즡K=G)Mq T*@[ z3{p+SNpFI~JV"UЦw.Џ`b8BPgC$U3{#ɱ2E~j=2x#߱(Xҵ7 - R5YTplX'ϛFLh#@4 ,_$cȺN0L G 1c-vVsfb҄ȺdMA"l(-:]l'M.$dsPIyQesiYg,doLXiŢjD2>I)v{b^Ֆ`hGm7M̰B]*X)<0O G3Ī\ՃDlCNh mw)HMKÞ#&Ael{e6ViEb;WU3?s g`Xǀl#(2C5,ir( Vb֞_@\" Z1 d8~aq}Q,xt9J#mPCy~:a@اx 9}Α+ D]('e'2a\nbRSmu/*,6 DiWN:b*Er]Bq>[kE*I xb_c$jCvWr=MW)ZeJ: qEǑD||h)bֈ̇KK%YOZ$uZ).j?eoL,j=Jv;ړZul(l쵼G'DMZE/V835ZȈXNePjLr?ֻySPXDT.($s×b};ޭĊJ3Q7n}/,] 1 5kD9|bˠF77V:s'3HRnKk"Tts5~SQOp->`e+Z;BZUOI{X''T|Q,,eNZMpZQafDU=Ͱ kK|x^֐1箪~\Z'#/lI'!z>bYpڻ.^Ct(߂J ŵ*\_~lmz4A38RahlyfVpkϔU{Ί'O;ۘ2)Eho>WuEm2H_!5O4RޱTPiLA/cz2ִ޺e8e02-GmZ%=8lWFDɌƷf܌OAJ{zN{qgnҖO$:f/#^ʚN++oLCM+3(`\Eo\*oLvt/mrzyVcE օ`syue Jyo.G>uaj=p|(tTT{ K{x64%yJwݑM1Ua2p~Q|·}U܎: q3DĊHPVE@,mnB̫;9csL (^p]PwvTX9ߌGtFa槝vgDy0@P/Qˏݔ.}`*-Ӧx@.KӏgtS'`vv ulo0x2T1Ϻŝp]k@ j!JB[j@GY(f)-mڰD"G ۈz8/K:s3ꭷ )RGнɥ.F Al>9Y@,Ԝ[]#::xZH1Te+W$,Euєk;`{TQPN}(}O+-Me`*LQF{z_.W_{%-#H`8 tEiUJ"vWjO`vL7V /ayIiOOoU ^>3g*gN λ* v1\0Y1>Kwd|)>*Y`F@!F{߃7j`Fte]P|i[rg }blg7z?3~ex XVDsŠÒ絵ĭx C\w5*h)#[߷?4 t v®ON j'p?rrqMW`;_O4e L*1dQcV9*ѩz $2{W]Ez&蒎cfЍ^"[:\ERXa/X'8}Z-xXU,)NzIڞ#&Fh!57"xϕ:p _筱6 n%D{S\c'׀a%=A9PMu(/=!GZV'lQ\m/=.n1君[ZIQ U²\ x`RaP忶%"& *7楩0ErELem[Ճp,֙Gāu'y oǻ*Bih朒FxWk\>L+KقzfU-Ln I22!t+hQX{e*xMD:47٩5!_p<8=n^8}( :lOSh bƩn2̃h"1r턐B Q.s(@n|4Lw͡2 D Q p:@%6*"*rJȢ `hp*CXVx8eF tˡ;%"~Ty-)+ܷwp8:[sW=?k`}*FAWuhRGҗ%ST 'dyWOqI7\lɭGSõQ4> [% ."%}2AǤrޕk}"]E".nQ >RgF,֩9jM&/#@{B+lޢޟ/mJRZ'iṼ .0"qJogw%Nly85Oi|^|}߸S,_xQS3Cc"~a%LCq9%^\C5H6P߳Àel?Zh!Z״Kj|f;O I>fÑZSBHG N@H#N(a- 3o5j at@ ݚѭ %Յ`gOaِϕUe1`[prB 2(q̶$;ֲ#&OIb"BmP?Ը>AsݥՎrǑT:﬽s@Ca#)yWW`WB+`L=gU?_ʱ:L<k=+M!Nfi1iekd.%*T."8R+/E^U دJn__m,@E y+g ۂ_= TmSejPrX5sVÛچPJ|5BRdwzhA$1Xd5%>`+ܢ<>ɱ" 5m,-V%<3U/Y5rAY$EΞIϾVLicePg: j'!n^d|}{,64h/b)UC/i*>(-ߎ9 ȗ)yb@윷j?n`:DfV+әHeC4*TpUSh>~=WIeSgIc_@, PZY6jX _LdڥU]풉&K*$soZ? m^,$ʁDR[k\m@8lbsd=kq2@ B<.L*W lӢ(Ld!k<3 %ʨPƂ(fudC~Hm5=+![Kꀼ;A+ZQ@P4])gX UNnFX Ք}It &Qu %dmKQ۲=5bzPd=t±µ33]P1'[ZzW*1JD5+~*% . SRd`,~ȇGeD漠"-@I1reXj3Ҝ9%T|?M6)뀒Y sUV0Ɣf 5`7*C+SԩWsNlSG,9"+UL ʥcWIW 0hQMc8UhaɸqS 1s(YGohcl 2u<-6_< #?؅%o[b?cY畒y'h3'1JqUS<$o&N%nvO1Y j~yYQs-:SAce^նux>BkEk-|_`ֆ_w 9~:᧕la8!NSQ!.&h {f8CV'`Sl %Aް઩ ƊjvFo@据T.si=\\ͱȺS+QSՔn͓2Oo-_Iv%@h7Mc5վOYBfd =QZ-_1vrpnAԽ]}_tLIjm}t쵶礼<6f-l@.fbHhj('6)(O[blt19gEk~3h+Ak5Sʘ?n+;roRu% utOl2!>h`x7ymM#G-[tYpsM _6&#Fjs ߓ́(0w1l.YFl~tzl*7ۤ ܱgi6!x`O BvcK(` uXaԕ5Ţ&]65HZ`ՙlXփb.7`!='7!uW#d41n) ">i0H,J푼{oFzQZ,9thGvK{< h B얲$yg 9`㴵 Lioq{G_ 𾀲=篨[Bt2 rO%b7[ZIj}P ؖU^|^ƕݑi`{.~C߸c\C.@x+?"1) a|@` ZG]Y#cϝ`n lhA'fz{k.RkCTp>$C+݋N${HUz.if!4XO9rTt t؟̦yr7<Z! 䤱IZe`J^|&*BUkh; Gw;5v(n&}Kp8܍P 1;$cM3Q;j阇HCJK薶c)a7@wq^yi#>u~bdrlQ&D:) :~aB\*Рg~A?Wx\A'<^uuuG2Hq-м=cZ뽺#'9H\6uRZY$xy|5Jډ< mY@䚻-8RL6!ㅕ]XeIk5?y3N53"pTM 03h'% *;*&/_x<[mn }zA/|_1qNԂaЩ\dp1cwP#pkpJBl^67]L4TT9,d o ad\~.5sPJ}6r K˝%Q}F=0Q)" .&o^'7\Oey ?|iJ(w"Me|}㇥5~BZ/%Zuwsrf'rq4"&ae) ?MIfV5)pU ZObR/B*!ڀ٘ roSx!cFT<ǫPs#*[޷\%koQ2 H?ET8PoG5} o̎Fw(OM b-; *Ҟ9ۘJs4Pq uQ%%cN*4ҁzyv10:J'[ڂxy{)te٧8pQL(s#2™9R@\<A~ёX0OjJٝ4 57cښ-;]wp栺-&/X9e9@L©]KP$4 / :YiD3y֦ yi3gym'jŰw1S/ -H^'w[X?AD"G9 2e3UM6D}l%5aT-nbGѸk)>$*i٘axp0'vA@8R)YMRa{[}w^R ˈzo."ZT'h``7Z;?n*46eט yb󑆛k6 7鰸W5:wt?6”6uDZBZ.(P=2! &Lƞrepi_G;CO JG q!1p6rBOܜ @hXؔ&[ "W^Vo87)B}'׽޴2A^]kI͈*g-jСXD}*I1G#꥾.w,oJ~}=&a,A3tgi$IBLJ !gҬk8~PYJ{=v#;m`2O[xLUͪIo}Bn@uKlj*%aztWR=Y|DXү5@Oy?= %(LA]sB#a^Zy"28+]^YTWV,_5 s3ErHYnд[]Y<Ւ;mfc8B^9GC~/G/XEϓ=`{~ ` !0й>>DQوA<:zB 5M@Ng'2%n$/gS'w싙P7(|@q+Lhx$j,lKH<(Up/zl]]LF#pvAx d*a~,rB.0=A`9u3#XY+zN;ܓr$:4WR>^DPPFKmrFbqdlOhRܪ\v&gz,?Ȣf=bȞܚ8bkPؿ@yǾ-.L4-Wd bc&"'nV>{3pu ^$&'ڟY-nwPfQVGs lFⴔeb:x}MHRJ+u.x=qKeu^=vb :G(yS~4k>.-׾ "ӾNuVG`ǚvBԩED݁B@.|<󹦟+ 40 [FW\Á(gўƟe^d%݌R&ZNw( )€Hhތy~ Aێ[lR{@q˻]XFY 󤤶op(9@" Z󔱍̒S䌣c{?,T n"Sc* qOȄJ@qUE<Ÿ \{[KEleW;"hc& (/1<1lr W;E@r F{y,1{rVI5 kGeA-}}c_}J'{duٴdR"ol-\s ?vTIWyj꬈4;!*0yg(.cOD BsvbF/DQk:%`nBei|6;2FE S=:K &Z@ѡ)tAybB)-́0MtKM,A?M|/>H" H$vݬF\җjm J n:,&6Kͭ|j)p) 87'4cEdF,?>"܉Nw.\F7 -ԆV &kȵE^qo yH"L|+FD_N:8fe@O> "Y/:H:Կڸ_U9f==ٛĶGU-U<8/u %Nbaon$MrM̎*7RNנUfHii^boW?oQ7|awQذN,;%;B_(sI,ɛ['+O"}5Oغ/fVdA{;{˴s"2{On]:; nKYDigjZXtL"1;5d_o꽇P~ lZ:?9Lf`珜YdjMt qT0)yV!x$VhBu 5)i<~֒vr 9RDbKC\N7}@z-+q򢰦kN m ]Ri\5=׭ZwqcsZYa=q'~Img@MsಇgZFz{q]繠<}6᎓.dt3n&fJp\':JB6'v-Y㸯a*"@,rY,&PEЍ[z$lO%5J1s11|^-V;PMM Ua4aU:t{j󌶜,]֨>Vx4U.Sa?t @`IGF)EGնQcQ_S6ddʱ!ӄh~RkU7f eVcSn*%xyq@w8EKfd&">?g!͞y8=_֧w vƍT'oRuyG@iJ{ "L5H]Pb3{qs]0楜W9J&pmI F9>bu` h-a݈a2T/BZX%OAVzgSs%ŶV4#MO8Eoi];l. ښmאt , -FNtS.39 IHD]:\`'WH#Kn4KCeBoQ ) HT!7i%\$Rxed30[RY,PX?_1nJV'rDIi~W;Ҷ6Nn| s & = BY7W&Q^Q,Tp e+[#a: Ȳ4Zxr#$gYd誕\q XkeLc\~ '|$/Fyf݌&(ۭRa2[Xq+LۜUzY~p~ܓИOD_/WM/Rcf=`+X0~vo~N (PXiZwhcd a%Oس3yIwIAۅPR<*kY~<d][G\ߖvxb uT7F&{B(}+B;f=M#ZRH!AL0O`;qu]!G =^n`(wKEʻ`G YX~b`)>ݥ9!84pB٦e@e&(zs^St4q6B!f;>Rsf׫+-l\!R#k?ݩFF }[ xdO&Mw[Й>m>C7>N1ù\G=AÆ}@k%7 ^L &E@`'5 ,4XX1|3Kl",06!"aXgoL 9S 79I*>&ӹ[>2 \,g1bH2#'PHN"'7qEth%ljL6lYEI@R&qOdh-+v@`}IyO1hB7zw|}%єM,n^^nV9GPO t_rWI$7NRo +.."_@d:t3>Kt\'dtvjj^ &3=(MWth'Agxl|%|  FdZfb]K\L,U\%g~V'dLA@Yƺxjɤ5Q`w>R$-7~NG*6zW*wa{ŵ|ϑ7 qhL\Uy#QuBc, v{'b(aI= 0pwҜy#/}6/KOB&5hfup*q7V{JOɌhyLF=~NxRPRzSSWэb.+tB7ICz'x!dW1qhyE@!wh&!Ÿ AD4d: d׌)C2?642B΃n" e*W(] S ֱ*Ulm3,Z>|9Rm ]:lMU$^al/ ȦT? :bX0(!>;Mn͚83,GXfc#|BBeSΨi#(.oX{g_C2e$w{u06׼ǞFFLGk"7A)fE:{eڬa (lAF!nDJcu0jb#pPU?TϮ[!2wtң+4tEX5 c+$Z |pXH1%"xe>&&:tӼ ^O}&V:ح5BEY*)LZ -S7AN19X fӍLTp_-IGQUI!jFXfLR f{B'MXB`#<bz+=-0 EK4\l]oXh.#7ێd\7/ 9xCBqxnbU.ZqMI*"1\\IeL E-9=~P] WRяaO 6\Jw! o޾Mɝ8.xn"vn W+w1*C~̆C> ?g4u1`եq(P\-[ƞ7d|2],*K}((i}¸ލ@2=?y6nUNKE~7Pٹ#R MማdV9Kus.Zl; v׼s+Af*MpܺDW J螝5C^*5M^^Dxςzq/7UպE<BuqʹҢ ̂STp*}y:y?7[-D2iBB(m,Ooe@2 }bA V?NT>!l=9qUg\ T\mF$Zڶ`_I(̩=ĕe7»,5#]!cA`y(m\F:(Jc8||XMK׬͓ ̍: >s!ތaz&6Tk 5UC\e#I<+c5%ўgSM:We[t;@*ӟ j=ם$ڳR&5M$3U΅ˇͻ ~ Ʌ"J$2C, ,pʼ3pqjr_{Jӂ%`<][Nokh#FNelCiƚ ڝ!9wx4{lP5ٴ Ϙ%*L0*ŀ6oOpB탮hŝ όzDg @}<┳VB,petN(:?ѐŤӪ)Fݓ|Ĕåxy>M7wB8W̌!_z$<͙r_GN:u=:Fn@[/d+vNWdeN;k,|E*ʾ]-83oI:ygH{om@; bxԚr)ڹ8 Ն;͏r3KSKqY zMT|G{B7Xl҆?#IuXb"e?dǣΑ3dZA=Yг7a?B!).'1Gqf,Kkq,'FVYIQ;_oo{hO Xn~w F?)i}}Q.' hK897#u˰D{oLRPb}SG aiTȸX CgU@,y7 ;:%{!~nxOJn]gC2et'[%wMX!6?zRe',!̍m 88 h5m*d{rteÔEn-$T4H{a3-SrƎ5f4ǙSch3UC.;(3(q"z`Y-AoGr\޺19Os~.(㿞 |ݿR_G3ki1j)@+kD?8ѹux~sfNw'ĸ=DBGa{ >pВy&dy'(f\} ;=BҕH5&ReޡJw8 R 8 ˜ =nF@;4;#v*?9ҥu8M(nf~ U*͔gMK>Hݜdcd 4\I6֔V*ÈdW h֟C߲;߼8 , ejAư7B[m{UoG*=l 7z ;ptA Cy7uˬ\"E'$r/U~X˘^`qTp1g}OV& gU-FB,kPO r`awԲ N?<&)XK(O3@msT=,V#v 1a$8 =!]w@ 39+ 0ݻTK`[uhgVPә0Cp.|6뙴!6 sĎB6 E]ŊxpKc~Թ[qgJB[Ps 8D1FżR疖Dmϛ|:Y{{"W ӾgKH\\ ^ܛՇiaY>|4ĺOF{K #w`S ezfI40ysoa&oE?~GƙX% mhNf:H'_V7gmW9R^ T7+ 0Py B3H979U䒓 ,1a]{A1 'R=]Mj2Q؍1&EHz(3Q\:WT B*| [3 .NWǐ<[AZ)kU'U]5:g㨉a$tp&4Dk=~ Wt Q)o1ɪFYYI. tDZM0 Oqgi6FF^F85}BȫyO=\08Oĩi$Dk}rV'oF\M?m~E#/p(Yއ 5: 52ZSt.,< XGPyH`\-ںeړN4حQ|^AVPqWq(/oxYgP W^”~' s[H5 L~L6IZv2!!n*꼼9(O>Ydf۰L<8992vJT殬A bȽCȭEΌj$(6^T7ryʉ#PA{1G'QfR5(\PCKUO'o- r(9-C^~,mUXX"Dxɔnݥf6#cY4!ZY&5J$vuQR7U5A IG?% „:1]tvOL,År3c\U1r(J}{6KV])g'XlFf$3| 6'~׳qb~U3Q/`d`GUYۤWgjuk7l` X2x H2_,h#UG6E{?ݻLN~@6|8 nB0=[rsg{ԗ]{^o9E@mBH+o0(}RU rDžY X{v᪌$aG4UEAb&'j_!uᾀ&*ϛG!rUr>wƣMy٨II\vt 35R 6g.,cJ`pN O% XTNGLa2;6?hjiS.YRM4!I\?ozTAm3{ݳ~;"}$^jtȕ]Z ZGxOYL+ϖQiK( W]/ p,.)BnL:{ʾG ^=wX9Q ;`%3~EHnoIO*hcxBe#gXA!2Tk`_ؐ+/%I޲:iPQQLjEm/s we8_z)ɡs19Bě_|ĊET^aT\j|۹~gI+V(.%{7$l$=bʇZ+5Dn=|ӺA}Ԉx5lf6K۟"o -wϼ="%qaM-γʹƙӚ1w=9 A&dđyH|4g}T@&^-LPNc&գ- [j{1.U}cNb b|]NP8 jB-Ē?Rzn<~Z>Q]_4Db~7<&mLD/gFpb{R\t3P]]@+1pkr5\BL!!/2,pnuT ~b /FL?(&Mfq`iSn8Cff8 )Fu^sx̀Yjbő݆mT~m`lWS@9EczB.IgPo<٘> w N O R70ہ*!] RxU|HXդi[.t,V,4ehkX[ &Qn:A}$Y:~iidÎ"ث=G >!_P""8sR*c6h~5Kfc*E +`%9ӤO!y0n#f2}ώ7=<6P7h_vgQyM R0%:i б1(Qt3 "n(2g:\=0Iq$lV g02@'M+d{E6Q Xh=n˅zh~ƺ&zѧ_3,մe9{Y ZQ Hdħ|B$(Fbm>ym\tyWugܣ;Cؒ8geowO[2S{0`'paeyʬJ a uP!зGjTP(5X N3+OF˝@yP.*Re924ӌEs6 .D"`?Y>P 6 YdG(L A!gFq)?a\Z +Ii-OOM7+VųKaXk@v>dp#R>-X}Kb~ mCYSc9G y;x3q SWWz e9|#*ߕ e46QᜏjfX U+Isy+{$7P3*n_UnTe&Ƌ%aXcI9ːTcH[&O-o[/FǩO?LI: 1c>N[mpt_#AtxޘwXcb|D.)>0}%=}ZД)qBۦPgX''{m{u ܧtYfA"d.]u~~Y@H'C;{ FQ1 l7ؘq|Duqϧ M8Rм!*X<stvM"t=Q2̨&NOjyEDak?EFu$2dbY'UUaZ_E$R8UsG@ƕqQP\ .H<\h|_ᅒ-7[{n›=O__W gܙ䄕y9EGC-E|^t訶?|ʭ]hu}3faԳ>fxkx*ɦ+B khLL}K{E[Yc$Ij'iCF;}o̞bPhX,XJGJ;3P_:Yl,γGtm(#$ð8a-n `r'Zr,7lԫ}X%,S1γQžddۃWxrAKAi_ ªB+6ݛK†Xvrd>U*0,@s6D8+U3 {4դ,"mMBg:QŝݷbN7Of{xTv(VAͺ0T⌬u _f5b&(ڀxwkwqSdk'^ ^!ҮlG+7f&Z)ߣ)l14 ^5-QT)qywvYnGvg@G̱9 #M,Tt=b ,DqAy L_mMPU?Y2=]QUhOv&<x c3bxIhƒ{*-셅Qt#Jdi8dPi^HߠsVN|QU1I|,7D~N ZT/PJ/_]0?K]N K,Y;iGR G,]:3sgc5ԫv @4L0oOʴ歄˓Z?;&~5%X #x%m2 uUF_Ş) }?/>p1bZC//L9N_O4fA.|y-e+hF#w_GSrD'@_B0@YV~A ɔ XUgr4Ey 9MUcp+t3̆HVc]qYup>eO}qM>.c}kߗ g*ϐJѷBApx;,-ƞ.Ժ|PcuPBZ3j6)<3j.'4dDoݐ<1 `@ c1g`6q*g|a0׺PFuѱ/UЦƠ O@kdi_J=p0c6k GBwsfr2r?4/iMI\+mXˊ6ٜwtSxHWH1qs#+`OHz*ݘMa!AȺ/4E.d_yZu^cs6ФLL9p-2R2[TFh dNSv|gC$uB"w7zD4Ȕ{`eWzS]d=Sz`tNSXu˻6\rzKY.5]nV$yglT >y93?-KV { &[t6n7IgXʙ?,QiM*>)ұ|*߭J{hNnh`F,+\ 86U։ڌ@Xwcz XaBw}0{T] +]d4R3~'Yab+z5sCn>ќFbb4 '-p'bBGmUs!' l+"l&)w%C7]Ok$u ~\:5N~WnE^zI%RQ6niY;WfPXMioWME,#U@MMm66u*b> ))G8)+v3z~Ϗbs]U|N;'uz6M+۩.hL Z! ]ЈrGpcs8!L48=᫚u>>5]H@)"W6ŒfE3m2%w~s%i_+پţn]iRM QzP<4\{#CD X=/ j0{\nCnT0aF(?L[wxtujueFg8ySĴT~)PdvНJ H+5'lWHqkn;quN7i0phG){\l-?.ETךؚcB876; T]Nw29r{ QViiJeP 0M W91YsfCV@P2.Wӊ$خr5Ѵ>55 /f(-UEsh#UZb~.(3o%)`>#3.u'%jfC@A`U¬`2/:.h5 @_}mLNgkY[I5Z0êA]}Ъe~/x8MUϲi!85o$KYi/SbxDQ=wǞCe[ȭ;󷐭#&xцlaT!; $tͤWv` ULP{bMX()`z&r¢28N=s`Q*ԅF!kuzpUoհHIಷQw+߱-PBkcLq,r,,e!WO'.ww̐ϬldP5~lL0M ~~%\4iK)([yX::_w5Y#֯Rq$[{b2)KzYӚZs= bg>!( ~մNN|ڴG.7VhnS2ɍx lԡ"F$7W, \WV!:YQu֙ 2YEX]kr->Yz\TYqV!/H!vxuV>!Z,ZƒbҔ"Q[4(.괽aupkrR_-o$ٖPrJe_=`VABw>Pt8G-tJ[/paMm!|Qew&1Jg<DY")#OO{%2mH!p,U:"գ^qIlo'=dV 15PY ]e/6-mNSMfҶ;=7ʳ}@͖ӽ%ؠK- -V;{AxNtje/9Z,8wWAnoN!g_di;,'-9V]ds9Ud&3]1xϚi X4g-T9I{r'ڦHn$|O;&^͹ Xŕ 눯  f5)j.9'F *&dasbbWU#8cSEd8tGA* 9ΥpEF) U=G.\?sw/t\S0FSo s~ZL?" z[=Rۃm:@4VH$=?,ȧF.gū$_J_,'<)Vg:s]ݰ?2/pN jk^…m\$̾O踕j/#mh\{k?N\"PԞ|Ma竺4v[x{(7YfE Hz)(vf na]^ 7 Nurk7myz}Eqg_mWyTeUl!/Ά"MIh_3B-Ōλ3p Tpt S%Z6*Ж58q)iEaZ;f]E[JK.4M׾}\MJlYƎ1!QFBO6jaLe{yC:#Ǘɑ3 &B >#x@Ϩ ^Dg$`[TP!PmEIOs-^w;zl{y66ꥀU[FAFIBW~|W)<DoZ\ZVUl(ͻB\~gV0E (B|bL}h|E:qV@ u:ThQQ@S<(8=zXCo}ҍ9uJ{263 }Lq|Fl2IRPjB+5Ede=.,N rQ0|+BFNV'.#NdZ}Kq<}1̒'^e7>G(C[JY 6$݀+#3 |_?O 0Lct!FH{2y,SEznP8ckx/4s[P'^\bio *Z[Am#_51_dw!(0 X՝nȃV-kkوDZwK m֐5H)w)PX qXAD҄.{mKL)DPi؜~uf%Nh`ScQu܁감!#vuS2ep%rU݃~Q&P<꒚iڙ F_*E1]QM܏c-_[Lq*_#hk)m/WQU+'??4;Ȥ'y^jUId1s],wh@DB0O4{xpO!|] c8mIetq4>+(,׀*ֻ2@zY/ϧD/RcU8Ӑ:"JذK.t+6WFq 3v?S$DŽOo!6\& J`)SK1_ıAxO~Ak%4 ݭB\Լ5t=`لh奥)" fNޚ8 yQDE='gS:+NotQ mBI4 ևwSMtJ+06P(k*.qqVr=uzp(Bu};SqfƢjưxf'= tV a'D^m,#sf[1_LXWs Ђnqo٘j+9س-GtEDצ3Q"q>m u.GT帇y)Wꈲ:rFU99p(]{G 6i|F])"Xc2?Jc5Ff@I -QRQ^jT&]Tb >ѻƒKOP9P5h|( RlW^HtEBdտZR_.=mjY~:Czqɶ J>YߑAZs<34.`,b˜QƯ:3"qr/+]A'bi+%~@"'p O)ǜ 0nl 0so q*15k/#kdF<\Ƚ|û}c]<3P6{Jhquv蘵4&'XT:(Gj?P.;F穣uIhݤt<ngtRɤoS m-_V#:1rNi.ʵbP|qR&bRIyhzX%ԌA§(.ϗJjՀ t_^mGj yؗ/Ŗ#>R79[fCIuw&ܥ|: 9J`syp)JS; [d”-u-d4P?߉N++-gZd= sl: mdj>u.L;eIW*| G@u6͸٨Ah-Yk. sC+Ăo:P1%6')ZU@pPwqK A'^Zs d {9htDz_P*j5C 5$5RԔH"g]Je)L'Ax85L ' ό]4SHփˮІUe42k`,?{煋ь5)~F<93Brgey]g~B|ۀ x),=QVl<5 *'Jϗ Ʋ}}z\RW VҰAO֍B2&!J4[hyEѕhxKS7Aer q^VqmbǞHv.Shۼ'7QJd2/<̮ET mG5)lt,DgyzW2՞Udϭ>94o-R&@XV.2]ufLlm3ץ#Nv_?(Ug@?!{0;R cF` @ ʫ8~1-hDmX-;6 Op|ќ!QWUZrl MՋ홲|xu beDK0G0vl eȆp}'{iEv:x~|Ն^ zv*_}Q;¦adaM  8\jG9o:Ȯ)k'dYKHGܻ.JC"ܧ1qF'ѓF#U&FdL( "ǫ*NxsQN'7j7nn::#:k!w Yvݦ]~O8@mi^j⻢ W=A6%(JQtwJ/N:={s^1.!yumw@bEypfTi sҍ3K\"!%M7/ =sFPن"een> ՁkE5f Tdcb͒uKg2(lQo1'~ ~v"vM:>O^"]yԎp\7Cݼ=|z'`BwKzjB7ߖ)_C!*VM4t'f<\^6 q+w=tND4&ElT߾i0Њyժeb8&[lxkˆZ2آ-$L:@oF٣Gb#sx6Ǵ`q *-.*-8|͌tB$s3EGmF ~Tƛx9~z="|-4R _a9}$3Os[/Mk6CރBCoN;jSsC+|>Z`{LGӦB\+V$_qV!=149MیFTA>H\+$zNzj1s<}ApOrj96e޺WRoJ> W8M:uG>Dפ^3|? k; qWN)-4wDXpҵ)]jGΟvJ\.!6  {]R ã?T-  e]ZDzE﹜懎99^G%0ZtX<3DUݘr䔤% YL~B)w6H;ǧVLjj> ZeDq( j-활H!V ;V=҅- ЍfU]#*6%u9Ry./ 鴃̈́/Ԯ %0`0 jsi7γJô ļLҰφ6W0-)@WA@gs>UcuAqk0Hi=6}J67Cd Q_:xE(teOf_*(#hBN ©ؑ f8PyR 5>&np *{yC sz7`gqM];'Ĺ>jul>5hb$FPb%4ؼ QUP?T;8@7~FeY']վV@ÒK-X4{x>{Y ׎hHW=:` T6ҁ)r='檘(H2'|_٩BpR0rk3Ron&L^q^sslu!+/k[OamT#] VLQeypێ0idvwג` Ywnr1_Ӎ?tYLSIX;#yyN=HNcor6>Df#/)&;ذU =J8UFeR~>d׼F$koa(V ƬHl0 ,DU?tYF, +'҅J4wm,Ȑ0L֦F[sW7W[ Ⲱu 4a+~*ˠi>TkKV>xyXػxNX@Az+!CR^.]PID U*AL '<SS<  {]qQjDxԙk%ڹݽWƆVI$a*`Z?A5wtDRlf›E2qΊ" u N>7/w\YX e_Yvgdf@hvFнpl/ |Tnv+gHL){<jֻn<ysM +sk aƱDpb?$& ޽Op;ܬ;5Ɩ] ,m %[nhݟ2=1wxٛ}g/1 Q6UZw I`M 7_vX<vUA|AǀV!65MKP|CxW@UQޑ8_(=*X(BiZ5˂:@Wۇ=X4TMRTfeXM)Udd?ǬNBY{U knїz@^0:rW@B'N9wr.e52 'NCMv❲v?_o nO+NEI;AlW(kcuV.\Ժl#φD##0bJ32@0'p"=Ea؀b#qj G2?B3e_!չ0U=̮02Jl ʹW7pnW)mΫ!X6wetGl_dn!qE7wY)N<TvH9Tr>%UtE?# ?/B[Uܤ0h~rB>{iQώwK DlkF:E *|_tfq( Eݾ͚ Sr$} .ymWO#8ԬAXT e2s?%wn? [I!!ԂU@^j8kz^5~2MMBY5F)[cUp7Hg(ݥ ET5İ֜9%?{#"sz&iy U9D"WkqΧYqd_l䚣;dvx_eQlӝg,HQpI2)%5"X]v j:%r8]"s254=v#bOrQ{*JMŊ{;x|r܆+ aۂ;-6VF\jlSe/΂yMi)|ĢsKm 3k4J8N 'QcMٕOLMf>ӀC۫o[VH!"m~crEB#[pj"Tfޞ$FG҄(ZzPŶm] zzq~#T>kM !Tߙ-ܦU7'9Q?+ytޤ@BZU9=$6E$.GX}_>7CEwnųCWדwO"迤P5h@!a&LJ!ofx5yOWgl社0.JpsnTj 3h,Z ~J,7/>&sm92.Oa{bLݢk8]+K Kw q38Q| d|jr$\Of>?&϶ǩPeEG] %#\GR2},Ȕ;9*bjN{XWi4!{ Lkq@c~XC~Zĸn'H7r A6TI76δymt (JaPiooɩGΖxڸ7䟆j3~Rbv7{~#30@^!HE-%4%A!׋Ǜl/IpЉ3>+@@fU-BB=+)k$D 'VyP.'IaS;-w \* fS/=DojhA Zش0ZI˯0ֿ\KB: _Z 2P0h2͝c~m۞\>1Ll|/ m G(h]DyrԻN:mQ\Jޱ.6^e`Z[% C`wCk7'#{S`{Qb23у$3W+\Wq`F¨,퐩:4a(PEU0vuv zT8D%g: }=@IJoq>nc՝r7 6yjT4WQlWCU,;a'.)7vMN/1(2 SB!8;n '#{/&@5vhͣ gs*"d^Ux}8:I9  0vX5ɖ^Oa ,M2@8c*[ukU=7 T^GD-7^AP: 4bttf^Л}&j];K5ɽ"Һ/"۞Qi/|'7d֒ |el0 \\HƇKmj?#vi*ڄ B_L{ߺ؜ҸLn|#F:ŋ) PXr5p vCwpDtZHc=D6 T5) y^GA^ ڂϛ"R\z Ϋ/fV-XlNo:\\ar)^{=x>03ɗ|fqd4*Ar1 ,]m#bǐVc)Y"~X]|PAgcu ٲǬqļ1n/5^{?&8${9VĀ{ {q 6U ŁŅ[n&;n/>xExLu+GWx:P?S SSMe` "}JuˋZD)N w<]!:4{r<wp<YWԫ5z|+ Mtg9ܑNoxo^ܙЦ,*%d{!>˵{)i/te*PN 7"m}= [\NR`0׈[iKc\0h!g"0ݘ_SH|YZPVPv4PN$vkشY  qD e.27hɋ򢜗 &D hފp҈{w9Ƭ"Zj / S R ctDoUW>t ѳEW/4h"kypE 9 4,d*8,=j>>F.Q5Z>T}o5*)|P?@n~ ZW=l'O&Bs׺:Ug]5,Б-樭Of \e{y d>&sދ>D!jc*y qc^ &,!_(aݔzUfY?W$&"GQJ@x(8eFDg牃(9vã+)V .p0*SQS{0ۚ_x.AC$pI#n)sg>QY,K ԞqUZ6l|r9Ѕ>nByD!f vxĿ΋t?PD׮:A<QA0 [C:R!I=2MD̍lZM/04\ֿmx 8=ٱ87 EJ F1^ͻ \U0-nd]X1Pw UxvY{XbNO#5/䫓 N[O +'E{ s@ѿH?D8C6˜31cN0Rٛzg+eZ:ii) /t>v<)c&va[1?<.lCIc"2 B_(bz&d_L@Wm-_`BbK[o>np@ajAEv4\ŠzP Pv_#n[3<\zZCD@H2QX NTQwNeEvp5* 1肾hFU/Kmgd>Y4ʙƳ;GO݆N=?,#󯚰JV;pfAe|Rάr"x:z\ yUEBI {A58(x ߪ{LN Wj:iw(h&ZjXgJ/d졉-PzÚa'~ٶX LDuJ_2<ıH,Zai)ld I.*1uލ;^R{qB^1YtA4&"|”9Ϯ؄pʋB;rPёX#@!YN3_~*F?ւ@(>)fs8]!1 r%"A|W43dp( )J&o EY/~b8jԱrlTBL`bNjO ˍN(=|XxSAWugr<-#HWuG庥\Dt:hA+R4yC^[`58\nf96סR bI\]44h*16U;;̏UlK8 'ٗ'ea6\ 1h,U䫩&S#$X@6Q%$L)k{ZT[m!AZXk;|7$v (ZÀ7-XL5ʒ骲A޲!52?uu2GW{BUA4/_UScw:pü[ ft[}Ѻ:Mbb@\7%6Zw Wpl40L ɜ v) ĨnϘʸaoxEY 'IEC. Wh5R,V,fCMj;YIbsR"* F4in׼8UP5:P2~/G!pb,b kKS `V)3;}2tI(Kc2o2s(޸8EI &/BʬB{ȝݼdYL0I.+E#-^%,ⓛHJd~gHW8de2 LM۔:@cg-1#~/den1jQ7 3\J KuMI.k_X_U}[|΄5l"3k E›ͯ3ce2¦iVkډKknONAdg=5<6,_6 BZuȲyd -؊=8_v8GzO$.6Ck8'ڸ>[&.i[q=A7#h;8 +KVX?EiFbD.gnX“HX4RY%|Gkt-@2EtHFYW{sik `j@dzMhnŷW>p0RU}gIewڃ9׻j':Z[_na%С)7a+MWiF )ۀNm{~!Ӆa@JYm=8\ #A%sЗiu%bid\tѢCWl7G1~иV͢""B*w"Z鹐H;#Xt5ۧ_6,{ЇN[ߠ(1%\0;b:+ƾKHwLU =6CCj_Nnd899"ArvU%=Bxp?xGkN:`ZPn&!PY&dz.ݰ*}؀"AKBsNF`ή=ƄkDX#m$fnTain =+=لPrM 6jX:9TTԙ|dr`F_ jy^mH*LIBe w9I~Trbu N#ͬ˖1d6f/=Zwjؓ`»fR 0'@7J8f5 FqV *_x^>m+&N'm/ٟ) _k"V+QQsos}2LsJs2$J\L,0Gl پ#W@?>4Vu|s^jӼc{b| s%bTa92ֶ+˗h?v$/zǹ)MHc{BUs> ]*:=[$'eMDPYBqrCބe$uRv=N=qa~e$FM֛%tQ^f(w`֏ĮMdXOsM UYUNh#F:)NFu Oa#vY@J^d6:F6HцNY1%)%KH/qi [_8TɵG}JqWy th\.ݽ&8-|\qTm %DR`VLGzIW 8-R%"wA&{ajbƴE¤P5˰T5wN[?>}3f7#_yi6kRjQ'*6Ufy%EHm'ySONgԎ\x&Pec :O+# Q.ݭ-fUCG2 %cp$F9] UFcݿ\bjBAs_E%>~{Yd/SRC|#IqJoNP-?&dw΃D^GDWS=S 3tC1N0jB@gk|{=fc֒#ѵ8 M݉Qab|+Pwd{]Vv w lw$/HT1!D?{aΗecə BI2x?Gҥ51ĸ}tdv@Qچ3@Um'k/!ћ7(pEK2I0Y'Y;#JB4R;%\P!=o4LC` LD=Zf-/ڤ'at9uH$,R2}žhNM| ޓMz0 9Ouvα =1{][I|Jܠj|]jGȓfX[65Sܩ7EMdMUEnoUS-HoU]!^|s,5P|D,{jaC pgx`*IH5n#o9m ]^gB\_Uu>ݩ/o&z DH6HnwKv&J F,ZqYguqЗpUr]ORQKhh~ΪGOń~knI.`|LVt0JQc>3m:.0%i0jw8LHuĜq)r,ʕFD (&PLH( *Ca+N }ҙSh5sd#PN#BEn.`w}X*$5-iٔذXXTunRuQ׳;qF"ceq\yCT|B:gB*TAd +xSIz`b}ӡ#{%xNy Ux΢:\`.S!>"F | (a l`1^ncGig?F N*rOmxzftCċ8Z\zX불F1@kP; UhHe?~ U)Aʁ}WF LFG}{=Mb.lP/qfgn\j6([vtbHzǴ/B"{G4Hw%Ͼ겨EUA/]HjU[V}mM' I[ɔ,?5RK7 0[fLTeAo }c ŧ=lBzޜ(MCh=ݻ^"kYP4OUd3jzKs&v46pV?ܡ8W&cBC268tm[^c>̌ɳG'f%Uط]B,7t7!d6|l5E;BShoC\Q2\_FA<8aV|'z8ێPQ9>Iڛ6n?\<T5Ie֚C84]biI+EV{~] NĔA$O5,I۾4TP>s>2jaK\rGxE#M@jBLVn; Bt4 8<ʲ ]5wKsP@.E hQ } B`Z_e/SSɉ*иV`hdc3@ŏx -|HGat7 s.L<@2iNN.P΋) Nt>n^7R|KV[sHVZjĬL"s [큽 2$N[vxػSg f/;BaF[C[]G`U_{2_R.2.r3aL&p0XseU {cD !7xޭl38yByvX! :`*5ӿqS/:f; hڪՊ.>O_t5}+>3uRJ0vyQ.NeqUApNۻQol"DϺ^VO, 6 f6ժwcK [cE2! |lA2A_Ue%3ާeO.Fό ZN-?d.jʪ,6I%_*hrŌɎ Arn/9=HO?צh^m' ɁM\$cT{e#n{UjGNxy)`= ĔJ۟v&)!5*)O!#kݝ9 5 FglrT M8p )B+TՁ v!/y߂/&;`?JJ/{uL1f=2g`jF<+2H]}-:ǣ+Zo7jU3V_6B%Æ*΢x>;%bۧ1]VR_uY Hd~V _`lEVʙ&nN,=ia`M&hvÜ.6Y4-_ҿ*L\e# %cjo1z?|]mèC_,H7UG<r"*EXtI^F,A Z¡XRpi~Wwʠ?qЛ S{9?L`"w#Ʉ=hTT `laEY:Z*A#ƕ54Śע5Q\?qܮVEd3 ${I=p7Ո3QzJx]c͡(ehd .D0':*pi=_# (BpcsLmsSshv ~NvguB6-߾ޙ:cإ8%Vu05ZF/߱ϋ ŵc:\ #hhZHUgyӹS/9u R;3sj&g&za\6X1w |htwP$ EwԺ7@94;[AZ&VfLM ZDa2@ojMl|3QV ^!ǥGzniQ]o +G qn4/͉!-1vɰ|,7zj#JjDY)m193pkꓽc6m,PHFDloIsy@vݐ%;7‚Ţ)pc095Tvkx 'fjL A_LzeGKvJYw eE&pN83/ $-Zt8w|T$rzQ IpF\9VN}%^j4"$oeWhW!y7t+k2:[='{C e*fX/sUzR08 ,uݺ3l"tƠБV[Pr]#J-}).ݝ쁾1'wY`@G@7@An+8^0eo=>䀘QjBcG屗yspKtuNzK)2_n|M⡴yEn*(0 ۣm!e1כu8{+$ C+8ߒw׷EA[HEA f\^y@dDaD5isܲF'Xo)$f;)!Z!Fzd0Uð#|<΂b*ѭ٩v ŅqԞ(qPhA OR?G-Y \.5UV@̊&ͷ䁥&K$(XݶQ~{?4Qu:0ooQeNQ'Mnq{}fnt4oT`'N22'ȟS\&-ɛ!p#C0Bpw,TO(.ĥK9csuli(w]śb/1%2`y6j 6:܋u9p 1-%<gJ|\i4{\o\`i#A?YfݙK-.x=t6߾nS M2XAfe9&yPU 4^myL7ZL68ʪx݀x=6çI@"=^.s%=LMseXSSsNQ_-iSeCb_6@gt (O#ߗoC/\pt^nS$18ƯB Vm%J 8D?fY wx$EU=6%sL+Gu&$@RUNѦF8hdg,Զx?з;FM4iK."hü*;Z]3Ҡ1s dll{z™+'[I;wvM& }m mu@xM^_^PA""]kwD#[vp [ @b×vq6]F쌎VMÃO9B>O%SG{<*%-ՐQ ҂%9:qi<_(0W}rx6ݙKuA֨"$Q!t~/Pz!Pκn p%0Z2ߡp GÉraD!ayFNlOg9F]hFo,ectK|}wِLzcrq3&?\g[,d4egj݊1fF>@_N745qŋ,!&lVOo͍$a8M#>*:X3EIG(P2;hj ɥK?w|.w͡At2$ jZ4c *<5Q044,ɢ]q('%ҴAcV\"%'K('qQ<9eٯ] mpѠ(mEJd,17BDUr# 4LQY3j]~.P|@L#x̍1/#7 "ۚXNokF Ԇvfk|LyO2WY{vM>fvʟ6E\Uke_LZ  7[bb=HZN.qxw_ W_.>H>{ϵ?nFɳDͣRlpW2ES b= 0YU. 0O~ 1*gWma7m:h'vm1ʳӣԸz6CՓ(ˀE"/c&Q|}1tAc $ZXd,цQmX CsSem`a`x^o{ٔ?Qeh4Lέ LrRSlXďm umߟDi. @ @\ ˉW UuaG 1oE@D%+nОuy sƺepAQ|g*EXz"VXjwX b͕V/Rrqi 2zW$cN;ፈMf`k2ۘ fC=Y2 DLgz3'ro5Ѩʶs@#t[KčT,SWC8Į7蚄uѿ46L@rr'(4܏Q-w>WwE8=VS6d=ŠѮ;RPqIР1h>^ߊmnL?\ZQ%{~P}F:(X"m-4  r !{IَB2jo[:PC]Cق)1&@$`FqPpȻ{^nB X7fEJNwLn#%xH#ie,Ngn*8WL^W"686mO,d/l6;N[wO( h\S,A.yQƪXzX* ˽A'آ@=X]_ [+*J| ,e6K](4[6JWKHJ]hI ywRJ# "DÓ 櫨J_U;pˏ_#ÖOVla״cHfj6/!=:.Z]+k ]jcV8Kbu݂fWҌ;nfpDEd»,Tozpǯ,^yQ @)W x dv6XcySUW"Ih-J^k1M@{#69+j'PFO-Yd ;𲽊݄[ c!<-D__U*z R_U_WΟhX姧uT0qZ摸8YnU *F$R(t+̞"qםl/&R/7TO*)]{~]+1,1Ј TٱT(]N1ɉ#\2& }dzv#H6- g ;n?7Ňm{xTi x~%)V{USz%]1pdtVo .w!HӦS 3n3PE8e.*^Ic7 7J IՂCuփAT,^ތ"q6)z~4AL[@/g<-K!}2mfb@ӯ-|4S"C>8ˢ7$ C&iPI[ ŬD'fSU "NgS?ʦ!s)s"E.CHP4Q %g%KVCmFu0J52OwZ~{sՖ.UW)y~uPg=bI u+&KZFl%%Eņv>ԾdY4h綇 } n$ث*84Z#e*g ́huu;:N{^

    'օd_jBT!qS1^0˼t>{9/p)vMcxsIοZ6-kѭ D~D O~TPO=8`#<x֮,%$f8p2$30wY왂:d' JJZ/.♓ѬJ BBc>M؛|ZIިi72*bigW? <>q#R?/p*2Kl԰?gZo= _>?@pzJqYomaeѺI,Q%pDE,O:oƾyAܳdÏ8`tV HnfE9ޖF!4g֥y\'}܍J-Eo$0f fc D@yid'#H57H݂%OJr+Y*.Ģ,UK) Ho\Uq0w[qP$yo|0](B,TBDG,wIqiNџ{}{dl79&$;}*49Mk\gHg޹+۩Wy4p defCD$^C&f Fh2aOPo?Vi9ic;b+\EϧzҤ,[2u:CqW`a툲)H)3Lh߿kg[9y WZPnjJ=w!_PϱϜˀ-P6i 8섩@p xɹH:=XyBݧ>: o$M&υgt*VQ [4&>3O^T@ɬApjRs"l4=q_1( G[w{ϷD,9.)P&mkA||.;yIiߦg-cO<Kɞ1!8)DmWsQ DZ.^/WPXaA~^#}^cLu.Y bCFF߽pϸsRDq(U OqPCfvqfߓa%: 69y!wR !/&yl_u3P*]o|KⶂTg/)B)uRa KL{;',.ϖ5lV(ImHVϴ2q-yju~!؋&6)y{n{$l5z/F&&!a(}KM/ /)I8vj6[nθ_vمyU֕n"O(oY k ?17ݴFemP'RGė9ˌ۷_{,cOU:L7~7f D Pht[^*{Y7U(pN>4iN/ La~8˿p"`wu0AF!  6o9s R[ Їg@:nS X2a48H*j×?ޒoʛ!F\JM0$ZyaQE^;F gu^'3n(;꺳D?$=]%ltIw\0YgRy L'5KzIŚv~Jx1xt8]ñZvoB{-daIjfW}+] N!ƃb-<(,zFc&tR}ID7$U璤8l!2y؊9ͼq {Mes,9IK{iYMgH!̚gM? 8Z  ΍ʏ$g RMw9"Տd$o89q+ &,;Ucezzr&.dWΏy2z(„ bC{(m w 0p&`&H'ą#pm^3*8"gwkARpVxR?eNKҊAfeczl:BcFWe~zM4π9[r!#;3?s/ KL;mS'5K6grg_J_3ɱJ]{Ob:(ٗPEptOWݫP$S5uűmSWM!W<yHiѵ+&"^y(!B+)hv &9n:_?XSMJa|x)BjH'a>()@*W#ͩ(IV g)З?3HhsGT<Hn t'sda7 -WHu&~ kL0!}<ᔙ"*r_6X)gWb56}pS\޾y!ng/%vV6QrmVVK~uΨq0a4;g=~ΊfvJfUƒCuly%(D*Eb;0XRcͶQvFA4|j_G͢:bmxĤ| 4 ]Ohj>N"Ɨ}(LþGrw6weX젯s +KAWqQYOq!LGEK5H!ͩo|/QU4dk_ˇ^Kcuh\C[36qt>ѳs02-,@׬ŒtE#_V`VeY;t\?fɃ[a&i`n{!R7!}uh%ܰР#7#|cEy-ޢPdJ1.SYL,r+d^ ^ %.3Ӽ!E[2<_u v`$  9QQTu CՆoy3o96~rmn ryQY G2T!K{:ǐ-f5mhCjb&g|&2]F@$p>5;=J 7$*+Ti`RI ,9k~S2ohaV50a>=RI@@@Y#.6Ժ2~9e +FQh'fʜ9Hhh 81k΂nxG((ʻlxz L(DNеL!KZUDoJ L 0v?<1dR^s+ 6C>Nh z1Ky@T{[6O i?߉ $#No} P\JظDJX݁7 ?1ZPr/oO`) ط(A+Ge}P K̵(kb7.o ]lv8^C imDQןAbA=f$%`YMj)S;0~kLݞ52BؼhFbn=oƆ/o2qv?B idGN_Oy$zQX-;}v@DlIcZXAх}X5iJ:(Fng3ppDycwA (Hݶ % jB$9T)ŋXNe4vhCgJ>r4ǃ/H p ϒU߭3]v xdEK)U=Y0&T`as:=  ×''bh"X20 #LpXO&ri9 wItaq2,ÝTً*QDoΡ g rCJUY5 #sk~tizE0x? j ȌB5%zi,k֙'9r(/1l=< @*l&RMʷ6x4錸e| HuQl_Nc8K9R5{lоwӒFoe}^_#H~WS,+ՖvMpubv& ""FC&c;Ta{hE3qNR&D9;/i-w 2 S7  (( @xun\W0p(4^L+v۳;n\cLu1M%/奿EЕ}Ԫ]b&Gxrf1lJ RQX? |֜@NM͝Zʈt꿎(u'#'3]Hw创TBmYu|Ч&cJ9pˊ:>%lޣļA idyD(6 .$oOv#JK+lEeEV3:]3((@ ]2嚟8v%sv3 U,q4G7 _Q+ :V0kμ74msG/c(wrt(2Zm-:P!"uPV@e!%_6:ݙ YCi7r蹿ćZE0xDz42$^jgF?鴩p^pzobL !yoӖmʝ hS 4׍'u`d0j@WX$G06В eӺ`J7P @f( ]>1/i=&I!g`'-b,WjgFldv[Mq=>g@ߡB L91cyQS̪Ḏ@b()Ir껠G: %%C#xh!cŻ{ >qEn3RneZgzX-4RcgP{꼄ߑcQ^dljA)Bչ!1m: lM5}: M(~=9cb!qq+RfpJTuA]N$p A ۉ_C*~Xe&~,Mq+1+v4H8$$(YB C(',}r{v[//mO eEI .6phn>dp:޶7הY)PJ^HUbvޱ\mlJ53ocBl2aT?0ćynS\w"sjUﳠj# }=3Y9Rys8|'VMpKK\ʽ(4C,k]`V4mo3j kwju׉֗ŠߧO63yS@6<̳еxzxZ1J: _QKqO´5䬨BT﫵)6kT>"a~SoZ[;/1l`0>G|ʥ⁑(3?s(XNJ T+<.߫04k, #u" M1HW29HE[L qVANBn!1ި<4,:˰~w{|"PEkņ57$)%> 7hvf1TvRHx#yaD8Ed3,Rz /dMw60aQ LF.T:BWs=Uωl>=؁5Q'[D永Ak0沯q +* /i<5]")@ ocF DS# 'Id/zz^bSQIbq.;/$r0 *^ɏ-w#0 -(UWR_ѽ+bQGInIejM 7)F}M}@'_,~5.LG6M-1;bT.P- sO`(H"4-PsFFFV蹵8> K藒we::n7umA ]PT |XV}9+Ƅ릓ۆ`]ݗ Zdf߼4YT&w1$Q$HEU`]+%%#QjfILi؊';!sV ְeX䍓!6 R'rNp cu$RؠlAǩnQדp_{)fJ J~1TUY2)Jj7B䐛-T0L"<rl$N8`]g( ٟee82M^\[*QyM"|NP_L$2f+ghQ79uXj# {"Q5[ !@ osPbgQ}9-罰fi5h֘;ܦÓw.:M1\giJ'E{S`i3J$L*aͻ:U0,X GŞ}Ť_TI*+)Kb.mƍϞ3rlK]U9[~u*Y,N2Xt^N&v: %G3DTD0 !gi ?Vt`@nWw/eFA"] #n2'tTr bVXP>S+)*`h>EpA?VaiooafqƠ$x8YZ|t΅k,~X S:oI%1SA[P]D=1wbsx*mCY۬=M_j m$h =T{f= Gv` DXĖ_tH&BG+ X=)}BH= Q(t7""E@;ab*Q`812,!$&!Np4G\̧hE5r"N=ċ |S UrR,Z{g|`gŴW9ѫZQt}rhw&{8\lsk.5z5igʇF`؅>]EG{ |mg?LWNomEMvQj'|?NC Q_*@2 %”deljLO7)ơt}D_r)XsL=>%iFCwm1ucZ(MG„*Ⱥ+=}r4n_[/Fo%,$e0i/hcIzzbdZX r@o%Wy~ Mi\ST:C0^4zl.L^_u=ND(EDֈb`ozibp[E^jF%Ck{xOH7#RgS L&^Űl}WUFek&=J 4T׮噃vVJTÉ)Y;"+""rBOHTZH*x}<z^xl^nO/{;lӱy p='̺ mUQ:8~mΏ`+ƅ+cY%K܄W0@jNxd:JQҠ44eH jM wud{*Cy8Rչ[uI9h?d}awMꏴbdP{M&ó??$,YXGUIwOa(hM rG"|ѬϏ 2#7p` 88Gn߽CI`X[-\GRI r9`fJti3bU xY{N#hQ2w\}0Yg%mv8qJP6r,HZ1;uf%#8L+I~Nj+7?'0.$.O+L>ic.V20"p@Pu#s>BdDCmd@%wE8?Q'Ѽdڙ1L̕y:sT"ⷷI:rxN};*lm(*JR8nfs5\]Od"۔mikN@- <&M㖈`)O 9Z\Is4ש'3ح-& OaDj(@wCm:tN'izٌَ1;B]@,^5w1@T8'aP0h93,t ESf]0܋DBvpx^=g<4 73彞y*=gnP?5p ,PO+v9/9ל WlC{x8pZ}uO%kE i„1=oOFg?5zٍ:{(\h5p^TR[_O4 7 tGW$TaX.Q|앃OY*kM-\`&gCR0l` )b~#myB\h=2?<6=EXX؏TH[WxYp߳7'ecVA?g7`cO~ -ÍYY,{HRt<~A6rȬxF3n^Tq#I,d=s)Nj3bdٴI]N"*^_ÝJZPDPf"STmӇVS2Dno79[Ar1Tw^U73w#cԲk2ljHa%K}*C`K60w5h /U?B-(eʆHab.T|szI:x7k+3!&;7%Ui^ǔߟ G;?٦q Hf!#cJq`CX#P= mMcu DoOdg E4'>\nQ`4!7*g C# ?af;vw;08\)M;7s`h,Zb0\\xHk/=S{FЦjٔfmtvmDηDWA_*Afpɸ@Tv@0Xš$+A ` S}uLV<"=s##_&D)u%XhC[i is'd uC-ص{NW"Pîk4%YV?9*55Dd?K .``U:o|Ymv^Z'GTl3S٦?r+ v2$M %vBA9'QJ+ zGPrރ!w*,~.,e LxD}2\g@ؿ6ep)cOyފz"sWmPJ1z.o\cD.f,.L/YgitbJղ27{*l0D\O. PMnG1VA(rwJtpg b{[|50A؉{ 1@8Dy 4v=ɷIFpb\YMyX: a8\%J6S]ckx~ ~7lAOCz`{,^Fl/Y JgThԜ#l%d>0|+0 D,mJm&^>&̊xض[RAxUV^עL=1X0{~"?ebk(s2Cdcv@91d اmcDŽ!)񑽙~~H[.#rJɁn0C回I9 "n~wf^I$ې]{:8;9NIPo(9'g{8MK]qb>m+߭؆EGr#}.^9=YJJ\y0F}kKw.lk/B()} F' w-jY B%<+~J\,X`nPE haUٿ,17oZLRu`'ज़IcTXb,wH.T>Y8*fq ھf bƧ4M_=Κ!RP}؄ ]#\///' Ys G?mKŭ|w)C\6Γ-u=ywϚqqG4xz ?^R)pf\5-,bCTuȧnr瘂a,zU{V"6v7.-mˠvk++;V9zdoeXބ 6s&;sL jp!BA@u3LMXCDp%XWFU8(F~L 69~[Ifoy cul 1\Ʒ}ZUyt8Zl^8x>(Y\٢(rZzf5'u8iәD գ#,p,1@E} q/V&}XB^}l̘ 7OWo #F GRgmR'2m39['F̭9:nCjY_-Zenf6(DMFs1z}mAI5.E{嫳"}yRM1еw/o;`>f+S1ͯ 2WFኴa]s I{53m%ؓAIJ&/͍EfTc"HdXVhr} %I1WDǁg6>`T!hosUתwp>>A0 =B2bF+{E.ٳY>D%#Ȗ/h67LNG"B,n4T !/>?cADHg-9P_s=O y\yo%ʃe1 EV]z=5z90;o H?x.Lc.?&}DWLkpS/8C3RON }汢_C ^#l tqXˇHA[{,d[.gߡcgosh.5^DЄ`Ǵƞtnc8 Ha/8bl2|@Zj,*uRYf%ʄ\V`|]3{ 9<vk (jб8r Ϙv@nc]vmj[}>buV7gj< <{ffuܕWT&0)ŚiuWldgCZT;q((wzu@奜X#N# SK5S1r_4EjC1t'uS|)jx7M Cg;ޡϛxlr?WN"H?C$\`* k"Zz=GzlE_HHܪ; Fʿ4$UBPh⫬ T0[cVc%xI37/(x4.k*ڃqK3za=_Gi,#~դH(߭c" xDi|>w>l˴ ]% iKmD\qR٬;:J4u4Ht y$7&T`px&??kb?#"Bn)`AW#K"yI^?43 Jb f1=Ome! I"Gj}8 4u p_v2wxYݱqEǭޑ؏ᾀ9"8r6\yӍEU?BkGL>6^5Q2x; mlIO}>/īWUc@8S@cYDjYIz4/{ SǢFO9#/0VGREX{HmrW bYv-)o{jd/ij(n譹^9tnⳔ1+S><#C`zдS61$L+!MVМ{J,t3tx ݘ\y.Ȉe( t4ok_i颮q o"Lhbk@ZTy>lcn},2AK?\'-Mޚ Yu:haށ yՄGj G̭N`r n<01"8vVGeQjʪ6iRbnP}I WŝڧmtrzΜN6_ˠ~ZN=ib\|?ǬqHT2~p/ݽS|Lw%}[D9Wt2ekBGnYI~N& e./-o&6 ĔqJ/"7d<H6c&[F"{UЌ(Ӎ>Lc:_ae"_Ï6=RscKb%f^-+a1 +sY8![Y^&Ww43"k~C = z[5P6m_E 歚´9)٤G:2'i쉳aC+Uw8>lPC3voL?hB¨}"kp%T½<>yu=FUvC$|J12…ah@4#Z4~Nu/jKVCH{5U&{($Q !:DƒÿwQ_{2(%Zwxw=aCصu;v`(vJidɩH0k"SnE䠄}# o #W2)%/݊͑i&^^\ڲc/MlR{!w@Ef5=ţ$YeΣEp!P\RI+C䕉iГs0Cj[W:i#nшUP"a NMѴ=2.*~oR[]v#.,XRo l./2=bec`06AE86㙋V {ч}^J*=eO.ՠ?C"׏z 戚H0m9Ni>*+l›{r7QL<1(@oHv-') ;8$xFXҐ_@ {-Y̒6Yt}6f=[[!->p$xٵ)uk5R)v:m!vOб_UϹ?_S%?^Y8:?ՠR: : FIn f6 X7U1_u(!9eۼ-ƍ/Uz<->MƐR(CڹJ&@gAy=J`&iL%7uA(Wtᑄ #Rrm]Ú%!=89-B,`!1!%z|g(L/`,1HzuN1NT 4g;9ʸ6fζud z~VjX VSdy8پXBzeXm 힘<]QjkrP ]TcZQ(겁FCڒ`rћxj"qR!̫ F K> d6wY'qpcWMv mv&CYOcpPrQ)ݺ:?zd&Q[?h<;& YCƒ1>`ԓ㚥[uʴ00#;Tz3]uQIj]X93]iUxo,D{'("-J.I((-wjY2kl_#y\x8 )9SAd׌J׋|~r|m\Kwf-g"Sȱ #`ű^xb.ƞ#DoL[UZS26Lަ3A0{,LAPa\ DԚgZ|8Oԍnu9? ;Y\7z/h%_?('h>ѵtuI(n@J$_DB*ZO[)-{ҢUR %ˢy,jEi69RbPE:/]+#D `|*>PpN.A&1I$牜WT([ï&*?<)AG*UE&FxF˅B0LUevЅ&iõÌ>ii]Ǚ0KD&3,+ex~Y,FwbۧL"^4v(`]i-I,jiiO%l N/9R/aE!%ȍ&R19nQu+_|\1?}"qq! S4yľW(U1nqOɱo>m$rpR0$ʵSuaa`ܲ9G>aB,I迈9CQR5 oRhyK.a ўo d [դ[.JF>;)4~%VҲ[J4k1td)1˪LPeOtj^Ġ\igk^4qֹ#*Zn3nJu`yN]@)9@5A,Eô";mqzõpˉ5겎=H؍_Lt>歂ǿDa^%A _}BW@2`J+r^`q쉲Mn_&V-{0E7!Cr0!}A)R{#wDVq_ #BaikW:ȗdd%r}Ⱥ͋ ߏʷ&epjfkr> ;&mj!Rq$Pޭf5?2(ƉzPaOwT aa/P*HRH&I#qeTM4|)3weo\qv)-(u$+t)0t]8 kcrք_R7qc"2<W!z|Ÿ.GT%a>Gp(!IDŽ5= ǻ.[jyc=mx6c[ ioco,79 F;I5&n>㳻$4Dy:5@_ 6fT7`mf663,:F[>~tzo G ΪG_T%.7_ED&EC`h$e>0+)`.} 4;PFL91mCܑSK!68QIAlCU#84vyz@% {$ù#F&$k#f{Afałlz"َJ}c#w Lб͘D] w/ }6I$TR3q`N$)VwHO>C)ElT;XuUi5o@ʔ@y,Zp^$^q祋30-w'{GoȧVΖlk#0r'y JY" Z`Di7ZtS=T#ַrJ? gG`d{s-ʶ/`8=-f7@YDZo3B`m 3\2@cGe~tRi3m@(QRq1Gn H*m<<÷c4sPHtw%"i07}?%R v{MP综#^!h$-'^w;p<$@9e"#Pw)͋grj~|;z G KY(+!=6oocg$:V䱝<ֿ]7įR՛)eN~; yTW62(ZXowUgkKm(?_Lf4%mt&0zBZ㕠m" U|VҔGEsv[9Bcon(:ӊOb2 * *h@T-.I7<YzxߣD E9 uFjsq6 _Nf^D ʄm8$6nB"T%HZ:3\{wKiSh5 l'?!a9H,ݹwH SWoxWS8lkUʆ7P2@կPH,U41:abuWtS{E܄jEK(iLcĩHTUazcS#0 F6E*3]OcOa<,rG%hxdp׬`KYec? Flx36υU6j@`WEHy{xﺁ4(:M)#cO({Vs 9/7$ vC"ʨ.U.V" QJS)i!,/skVtB}5Xh#x f4.ZV03'K2fa">QR*O7Ա?AIу&DŽkh_Wc\)˶X)ׁ= hK^ͤ-A$áF ?'[w`L2Gb,j@9[םǙ'!oXS$Q܈j+`S؆*#=m1怪_3&#P_i^al"S1#*7$LW0é `I|@PaR _kd!K#"8Z@ezn,-ˬ56( d&-mlQ/-)iH07+.}cw7'Mj O^ FNQƑO3S]HlPT̵J:ggԒ.KWaԽ r":A @:Ն!URXʞAOxbC;.{s&ØzAe'skX%7B`br ]!I${>iZRYU_JQt63z[xr[u\NTB4cVTȕTWQ,r8ndzU /NWׅoͅ@0x7i)+թ-Hqhe&rvf`*XU8Q/AQJ'k?859 È*&y%U>MôdvU !T5,'QK~CD xLna.~|h=#wO!!(TPC<E3]%a(V3@c^b'jGxla]ɡܻ$ʌdx y$~sFqN[&i<̐DXR2zĈ F~BajY(9E#Ӱww(dWrgqΰ޷DMDg]V΁&(ZjzXW!ozeҾ;6iN8hX[\ y>Z>IG;6)*ّTp+˨Ȋ}ԧ1Y-eǗColD#-b7d?8|%YiXCߌn%w6A"xL3=_#Tx5G%{?b;@DR)C6oנa "+]_5m]x۽I q Μ:P { AZ@"%]6-`T.=zFQzJMtUpJVu7#g1^(VXH! 8s&&[ +Le0IټӚpꒂ!kqMTޤ*_</ '-F,ҶAPj ҉p›q!wAXr!v_qfJ ];=7E֝(R&(\h5TIfMi"pl`ÕK4CTԳma 9TJ_OD$v2S^F$>Pi|0C. ? ۦlv#5<&c>!F*`Gє2&l8 ]hOwpBS=02{,krG+:~\h* ?3Ս-K +6p"_A Ϫ#Bv5"s)p y4)'B 9ڌLcE牮 r~^kA+.fꕙwhI^#{ x>D*=@qߧic`Yqڛ? L(88zc<"- BUI?[yT[:sRs7jhX\fѩB%6%"3rZWҌ_֐Ei ~GMRNw U6*˸$uݑ<|X't>])jݪ]hvs0+,P w_0B;Bo,K2O K:9`(|7b 0ǬSs6d4=7H#).d$܌jo<g$ Ms@MT0$kI/}^ :tM_T g3 #s[~dM* ]p[Etܴ!I{nU}*uД7`es]]h>UvԀAԒo['̟ݟ  裆s&8 mf[N0~odO0؜h Przy Qd&*G.ӗm(R󚼂N ᙮_NHym9J6LZ>>k.ۭnM"k@@Gy% > Q -0P?=zH\'@ye[=[ 2tk\0Yu_Foj"| {>Tsb进lΎ.<%RڡG.ICXȱV+r3qZ7/{|b]4@ DdQ6-Aw؉gY7&K 7ɕknU,RSPQq'Xd9 Ts"jtyl!ϭU'&08&sK/[(z Mt;z tV} vM{d/^S+).ݴO/n44nE`4Hb8`w=gj.#:lLպ3ɻZ"UIRB<4M^٤nKX) zkJ4+By&`cO1*᨟WIHFꡖBCsosVKtNnkP9BT`kX82 " N~`c!O;/.{V0~Iةtw~*H>ƴ!e"qmɒ80X`#RTs{nq毜4?14+S*L0\8y;2nO[ut p\?ڎ&ruK`''IY|8d8`5,S'GBy4䑛r]#''Jrӕ7?AIjQ+oQXG}R(]!Wsڱ[ }Xfc| zTdNZhn~ ٘xRYM|[_MLDMo(?,jrS*cfW,ȻbuWTOcUPLQɫ'nd18%5 \}[ S?ӍΖ:NuqϗNy9l0zξnQK-7vold#Sų$\řC}`Y~-\$ƟdylpUE>:d"NJV+ >>Vmuhj w8(X'qg$?L U h @5)iU5%ω'h| wX4%6!')q|Vݥ{jL5H3-m)-kqONs@]aJ;U e_ɑО[Z⹿]iΊPz׵V 6X:t}Q]ktbrm5TؒHm)j  aLH}X@V1)x@kY `}|E1إRql7Jۥ$~bxd'>.[j'hZu˭z.}{vL3!&)A,Tt%)[Pn/}E 3 `ĺx`zLwBXu!MTqZtCr| :@!GnXGHpp1QN\wA\0Z1;0eݩQRgز~TVSEޖ F$UJG), cZ[ чd ULڥc:øt`PD5~ɭwnifIB(7cSZ`w2Ip*: ҥyf=Ahi"Gd^6AL;ihkrU"2aZV*f%0xGaqo=NR["P %=Gnt )xqԸCxľ[н9.z垃-l lvpnӽ{1`0f|iܓ E,2FOZAD~k.p̋S*.N  = gVމ42ᮜhISUQ񸢧:`z򾙨qPr} yh Ƀl]O8T߫ 򝔗 qϾh v[=W!UB _8Hĉ/Z^@Z-* 2]RCo~D65x4 k%.ȊAaժV;ԛKk KS~IMa]9%MY,D0i^Z1D- +_ҵK  UK7عm?41 vNNw}")n)6ؔu|2}f왒|:ݛG@R86PRWq ܉:4#[>gz>@ks鳸OjyGT3gMX&y*ȫӖbb5xy#ك3FvCVլR@T+ kWIxAzΈz%5Dy81h!J߫funqڼw'z:HTAcγaBU2lO?.tkqɳKuiyQ3"6nUǥn :n;f5UD@eb9tCe>\xxЖ#xzؿ)-+xelLF# 5/LoDje> ߪKVVV3G+Lok>ۅ3돨g KvgUޠ+sU):p3FAOtxnx9/[;㯴$/eYUAc1 z~7k+2PKdn$g{ s- )AyɔP[hbq$0-Fy d\1:Eb9Ƈ&uC> b4SHd dhW$$Ȝ Br(@Je8tl< LI;9 q(q]Б4ܹarI8Ys&+_Rl7/d]a#'<giСgbE6&dCE$ä` k CT#u-bu^R]`{;)\~ZVAe l^1snmo{x! `!q!AP7`XLێAycIaE-"{4PH0ήƢrOsR]f:%9@{ y|xk@=5^PęuE",c۾:',g\YL{аJj)ArKÑ7sv|5YtOe07DJ$ WB A%խ/y vr:Y1##` voyA[2~6s-E%yKZy!K~ؒt-pP$9Nd:ϧIzU򱂔/2po(``9tN|b K%71prC }[ѫ (񢄢X&ϟձyAןub/m*ڤ9)te=_@-1@ cxU00n {9AΚpe-8[~](g(Vwy$k>ՉkOϽBE Sj%[fO4?3p/dG"1{Q+|sªe_tqĝEIlR;?Mܠ Bl j<52_ӥfA6~cͿ&>A˟8,SqI\z[<a1I)LpEtpx06qky"AfIkte.x)SQ k 9ws a%>3P@-E5p@Mhv+5'̱z8RhQˑ0s~LҌ1]DݭXT55Qر|QWBb1.`-,g4ir+m4Nmi#͋*;zUemL ֜rę&a-J>ڼ@[Y2Y1(\$TRu`¤bNӏim`jAYHzE?tAב,6ϙ:`-.ezk"n 6 )?pu? |;D E8W43 6_sMC>6FM"(ajߩ`[600т.(Sj{S35D9[duux^uulU" w').ƒ͟(cop6Fkq o-vß9|$W?_2ռf=P' ዩ15?`A(%79'+fXNXSGQ/&Vz? ,H4GFAaLNO IEul4kI,{$Wٚ[JB(n so[bB/;Wܛt >s+@;6r0+`J?=4- DVJsp~ nD0" +m+/+6<[_ko=yN#Ǧv?_Ч+Z^ݗxݶ_;t;yl{ɝ1 *eM!7kI[s) (ku?b`0qt_uQghRlPm`"f`(XS?b]nvڼf ~' q~=3)D,^?GscvX$b`$p#d041X:ɂN^80$*wb z׳FnI.7A/D\[f/ %G+ LMjê-.h7a! >[b5`)*cS{__*ʫp%L A68I5aVÞ`l7, - q3]R$[9=': ih16|aό@[~41iĖ9G?؝jMxf 5a3C3<#}mq:H|)C(&mQ1D H?SO.9U]Z8 Q݆Ϊ`-*(j <70+@~_^HAcx1 >۹_W<s9N@`'xkDV܍G Ӎppi+효JP}fR1_%_e_kfտawWi~rR~5!U,JɓR&GS1 _s lz;Y<ܬؤb{8Q* 9`/(hOݓK=Z?RʁH7d"A6,rk7 eΓ)I,m;p/%*cp4(_XeЁߠ_9A%ZW(bw Ab[1#oYaYc34Vy +jvPu͘O<^rv"Qri { EtM ^`YߢN3 #1-7 \U_5 Y1#X\hkxqs:GFzg*}$uxz[eVO MS1Ld jH, kUU 'd° kEm(KG؛j}Q曌3gc j[qL&mHpա(L_L+Cr2nɧm2gX{ C#;IԹ(KY,vqTTnBrobBY""El/ &V!zP#s4;LyZal"A.? ; ~iz O~LG$ x8qzFϋ4 EwŃ+CzyI}ߡB8yEc!n[V5)+jsMI7PgcǗw,vW՗'/^YW SXHT[)3/P;^6 Q}kY<u&5疲HIZkbڶ v@݀ĒL=(%<_&h^4T6_ ׍P,lhMLc|'=S4ȌKORN\S*@oBM {:'7m +\ub n>uԀ~T M B.[u5bmJW0 K84amaCFk頠ux$=UH̓o_Eӭ|6oTM~*5ezpj>ٮIP- u=:7.~9r7<Uv޻gz&pqip¦ QC[?( Oe0EirѠ99o[#1϶0I۳Hi$ r7L;Asn"fcNNQeN yiUs)_ ˶w~|䰩8i09nVQEiٓH ,&ڴStIl*ЩP -xzjq=BX0Fƻ*Dףolzi6ަA!;|0|, EGuJ +ճT' v 2R ngZmqKk sh\>|a V {9c>s-9ZSxn!L &(yzI_KV %[h%?VIl, h'i/[XYzCuY浼9G"Z탥Q!U7 < YqaE|emW17Q5{&.t,a[J-@)%D7!m ]I;6aZu͓"1=)Jly #x6tBܦ/7.v5I[ٝnɜ[Pɺ A'5fY|-0{>Kb7G:pXJʺ%I"*wF"DTM(AK@ۗi!oʁKI4HJ=%2-;R(_.>~ m0zrnXVڵ 25O=RQI UFE+w ňq 5&A G׹m\⣱anȿ}ԠyZUJ3* zrZYcITGR4_v 1)Z@hbaZ˄F K\ n Z἟͕flEMrx ,'楐'n!FӀU[23tYxa#h}f=Iw/]slMkeyPPYMu=H椀yM&eCīp~ZzX}ԩ<]mǓ&~q u9b$FOT!J9B}4LAj)S? c{!GRq&cȱaZ܎l/)`">y!j4c+heĤXpRw~ S/kW5 3t،1`..5借M tLjrI{/u<9w4K z;–] ME[n BrWh.({&=\C^^J uJ$kk3LPB22PH$:$j :,r$Y|NRj;"50[DnUơĪFDb@=:ʇ ڙ5IR =.v):w:6o*fٍ2lRW۪׉!6ӲN8G璛q(rr.#D}.Jb{!j=69r>XU8Z%gS<{0DkJZ> Gxόn{ϵ{&rvH&l jT_>c "wHqB 6Eϰ<70vz|d>ބLڹi6 3ܹY MCxYW0vP34)HDrae:9ɪUoÂTa؋.?|"-ujx?3pL΢_c6{%@9TC?䢜GfϴDMU injJ͵{P^JnYNT\אjunv Gq|+>5jm̧m;[j'7bj +R~݉?K؀JB8 O'2>y 5V9%8l{-j9MAͣ-cPJT+^TP&ԨcXZW5 Q9oL7f󂤮\Sj)ai>h3++j-FZj!ھ$ NRO15h0%CUjʢESݏv+;@Cn?F͌̐nrmU(Ff&8͸$DFI SY>P$Ί9et "p8jCXfY BXfN6ᇤvu$@~tc]W\xpj89=q쇴qX3'{n|*  1[ ~wPl8q0j8RinMsgZzn؂Gupb*DPeW7*֭H)'ZZ)"}% ֪cg[hYYX>ŝ{㑻>3Gj:W9Lw\,Fԡ܆Fϝg+'a~m!$,ӵ!њ/}Y%Kk ˳u`0di1p?n}j?"OK7$uVs;#){*E@c0&>fAׂ_H<=vfgI>CLM=7R&Ó}={Nޚ_DkkDՉ/hut8B?@6dZSwɠu=-h NV~qCsO7^4xW-FUШ:E5NE:vQ4S.:I!咾 ɄV գ""hZَvőTHv.謢hI -V<hόCgK^S]4$Pf WMVݶQYsIhrG̣R\pJ(\I|IӸPT G h~)q,x xrTQ_dC>~Wɦq`iSqB[{Qw=³=ybrn5Aղ&q>qa׋R4SFdTcx͌+]#.#^QakJw?Dj63-w_;_rr?~5lhل'|/9!?N[S5){$zj̅ة]*JU&ڃ%a-IFTFIιF*h1Ʊ^ -'`R΁]TP=GHN'0)+?|c~">?Fc)Z}JC q ~ןGqSK3PIY A5]W WN"fuUBu멸Ѽygĩ; < ?2Q hAHKer JHBE=zS*Li.L^֟vy9M%a5]6x\ڮ~E("h6;:L*%(ZEx$g1˾aVۿ )N0k я.}-pJ/'MCCJYZ'y솯z7z U$`E`3!`IStZT4h,hh6o֟E˖2 OSn nwhnuì3Qۉɖy;`uh(HJ^Dnjۚec1uH̶Nd }ig5zmZnEpqT!(6\ JN%/q-FiT wRfMjkᶲ([`jhY2O߉FqL6s?,G'b)Me~y_&Ua4,xTIwGN)C-BƟ]#4{)82‹ JTZ\}J$E|Od.a@<Ь1֝9te:),7bG;"=8:HJQ{RSОST;5';,9+ i`UG̏._զ-=– x%)]`G27\+sX yd\l1 ƫ Zsv8"!̗݃d IQB^QkTF 5עZ=.;[shHʂ7(BÌb` c^fOd!lؐ5ҭoݨ~w0~[MIsy"bgZl>!>+gN`i8 _ea0WIoU)a+YNly_1ۇkYVujtl?Ƨcɟ'D޷vwEͥc+9A ۤ"8Xrl{"Cfmi[lmW†͓ ZX8dj{ |a+KW_lL?J'u.Hr~_DOV 2E"R_2,tPǁ8^K%_8wbL>-%ʖ-WRK0k7]I'd%=[~)[~PkY{f ~rNq޶q*wj^SDo)$:h,^t,D;m&y~"7Ft;㝟;R+=mь(6f_58}+;Z2uT =eݼ*H`!|wLjPE.u|3'WB{ 7+<.FPoE+dQmUrAvm2mwcc%#_ϩTf-$[c[ANiC~h>\W8:H=+oɿ!qU UFZa֪7HrVOzvqdA @9e6TGOp!h"EZݧa|'n٭tIP$,:GvX_14љS%_ jR];>VTXCE;&(_M !agO'O) Z.{zL5w!#6=NREm! 6b]Uxx\C#2a@Nu{ZIS?({}ÓejDoQ(6Tib!b ԆC3)`0rSkg6\t&<'k5[P\”齀5MxP}q#)}S3Enw|lS&\C&j٘3l~ۂR-,r+F" B!4fX}Fo1d ~n'jU u6*`3I L>W+2Z-?N>R( ]4 ѫͻsvy߲B=.^A;V;8\pIӘ∳RB9xWZY&.{R"@c|dz>Z,5GScfc_>>Ybe9Cd -9`PQ%o[0/>|4uýQ/BV=^"SԒTMr4,갘j6`hhNA&1ׇÉjtx2`8K;yx]uUx~N}޲LS|#6ql9FNհ$|ݛqQ]N"%}q1`23ӟM,KE'CU̶fO؂ى%IBgGIY곯SÐE]-aN89V b͌Pܰc#Sf=:u*1qEn1vݮ*ǺLѦM8Hd>-n ~R,az k -^jPIּGjO`or t.z?!OƬ鋄" ^Ƹ><:RQeC&Ȇ!fpۙ.Zk'`O`[1mhpBZ;ٚ"d]́aíq9wYOI任O[n%ܘKMEa.ig<[hl7Sa-VL2JVDL ;`[ާ)߶hD*>u˜B+A2 ٩7_e%G=LFXRwbp$jWI?YߪC6E-"ͶD}ڦ(V _bo~WN ܓOy؏=6n>_BkI` vW,ػffRrK|*k,*JV%u..i7ǃ+thHltJ83+a|7zy# 1+*(s#Hh ;@X eL}}5g5]MqǨ˅Kϐ= ZZW-l>?,IOA _:u@|;}A&TB? ` u_]g߮D3co}nQg=R!4ty!shulN(eNpab-:T>Z,ɉ`\LfPwc^k\Lp?.*rg5fuP!Xa#q6@=FdtGuE(o˪D)i׵]m'p3 &ãZ?zM.M7]:-`茯`DSzMA`L'5pnx^kEAȈd&,L`Ey_K16o$}SSlb@vFeO&p@K3YH ?)t ,Ӂ8id{]䩝/|9j9!2[php}y禝!XV 2r} Āl+M4 swD G6HVHHSX󓡑{NDDDkO1z3&B9Ȼ:ض #JܐV581vJ@sYg2uDCH!F'ŋqO66zF,c\AٲcRB57oˇ|އ3 .lk3.^Ø'SK8W-Zj>1T'XE&| J&su虰6ttеUͧ K*u\Pqs%|(Ϡ gja^K$d8e (- @-r hU5<`ﮝͺц!C-7XMG,v檝OdI[SqSCYDbegwXbӑ'v(2+KrtrtM( RP%9]Ta3m|鿔N8Z/O}f FcMpDNҽ}`ςGz0׊1Z27|]3M'8(W,{;!KGL 2+WC7@ qFg'cDžGHhZy˜ި'bfuL ] M4U8bU5.n#}J]NaFCKQ7`x6~U-  $0M^ꌃA*|d(:w"v%h0?َQegFFz dҟ{AKz7Ĉ ψMu F[Rʧy1Wc5q[H;jJoi&u}7<~GS7ΐ/F"ʲ-M.GM<>ȴ@7w)5]QMN<|t&6oAY8ehwMe>o5*H!HGXI17'ލq ^.a;HsKgRQ#>'Uˁ$*rkT} Zfuk`ShohˬHN3b%cid8h25N ɜ \_2F,rH8QTk yP+qW5N, ;>C #b3tIw_|qJyZVG;ŦOr>蒾!#88p+&m֞ Ŏ(=D%(vm{@D^2/I~%+jBIfKJiBRz%]Q3Jt@GDwb?iPF+㋵mQi|P(qX*TxmqIA2iReoX1Qɬh<%1aƂORK熃z -ASWuSOSܸO$ָP16 }iKc27Kz&u#9})Wrc3PǑOX0ßeL&g~߉8us$)9-צrn:V;$tQ]5S<5ür2'abn pp}`kĚNWj@RmlȢ Gf?w7 wguFĚ"nRz>SC1Ew+Tڹ쌝m_XW$_PQ0Ԉtmz|w+C-n,޹7zp00X`)p(T!׍lD;uAgkE Hh z_\dؽoɷc.}MXAUJ̿TԨ1B;}J/Dg|Zh№56ܥDX2> ~* Ipл^y&7'.yߋ2ڻ,H5aMe9drvhFXL{N(c2!|X:V*j]lXP@ \=A}j͟0 Qg%T.+&(h ( ߇ju@`SOŵơ20R߃-|GCDWޝ B=&Qn"]9%%f7*`NɴoG+^?K3d-YDٿ.=vۄV%83Vd*s/ _nE(^̦(p,~oAB ym>Munrѻ/}uS;`/])3ACV ,ɹGku%`ѫ6kb9&d";M}NN>_Kف3ʖf62*go+]~zXD˅ 2g\3{.ɿK˾C9h- Cn\Nc5rs)Q5iɛ8AmFaTsux.(ϛS.̏{'[DANmIVO 8[BV|zNMa{4ܦ}~9HQrYEq&gz 7B®Yz$*=M3}ӡ'_#3[(ŷVvx\|Ҫ>. G( n]߽gu7\BKw#$a7j^u%W.~ joN-9U . N[i %J:Sr#iܳP%  :h) ;u gR`LQ39B0YR~Ê}^uYPFz@S(U<[֛8ڝhO2l7 M8…!~JWr&~6$M;[uR׽YB+h[drcoWKYW9 dx)-Tb MYN[Wv֨FۯE88o4ߚ* N*x|zNs˺t' ,)ᐒx§>ݨR\c贃Վ;oF:6a炲xD{dYĈX升( 2i>%66xeO F !?B+^{S۟ƍ =!.1194ioOtJ+pO0T?Rq̘mo:a_r)'q !g&ϖ͛W Y_as=~ː}P3"Q ov|cZy*uQZ䧣,M(DR"K4"M0 ھ8\I4)PFhj$0s 1BXԭ Ze]'v"˷w*M_DgjA4z\G b? O(J<<eB8TAC\b'`CB${\K b6B'KjTƦL}lptsTDL3 3 ) Ph&O|‹͒*o.WVvicy%jx5K{``xWCkw!֬ lFԽHY\έJ*D_ ii&K 6T6R|-\ I2}pį ´ieۥx*= I I`%O5"Ĵ`wR@Pi"X26˰N%[a{Ba')~#.U<0x 'eqՏ,Ld*Y ~cNH`uܿlƊxpq~~)J+'-7Ioqw*47PQVyȉǤ!,\T?xE!?0 &7.'6 F+RGL {ΫaC>?iA5>H|a,W 8\= F{2Dp02~ `hPkW8 cg9v5ʖ+=pZGI{uŸn+ BhlrD_:mCW9p&6~%kƗ[;,>Bccn?{ܚN'jN2={!xd%5;ނ~%膕h;DDC|ual ۺX3fAatݙ9j) S%l LE*qct5bϬҠϏk?XO~O0^ * Yy"L:;HS˺*V?4%;pR^> !Sy>^ϋ)]bQG]BH2oLȽbdG^t/&QE$4GzjCJ&S֙ ( KVٵʖ-|ߦXME`l&akl=OIB 踅JG]3^$,egX:[rZZ&S7d[y+FÿpL˒/.9IJI'yT7uq(=ݓO/>M 9#ZʍKD?'јEF;{ep?ɺ;B] tjC/GSՠ0ӉK;sseH˪jRtFu3"W͜03f!_VqE$h_: ̣ Ul+_*\~y:"hy~y='N9.^J}w9sז|8l]I]O^\Tag\C5DpT{` aP_5uG6e iO)EUӎ2D?-mfOiFaZ7 .b\<+ۥXeꎙ̔Km*XE k!3!f"Fw.<%F*˒ANsI ).1!(9踷Y~oi@ ÌJwgJܴu#RB_7teMo ;!"~=Isi("Z1 ߡs*VOa.Pa=W}vOKYDNRN2 ehG0 SrVRw)Kb\q+GA@ROWٍ6bI1L+[%Uwtk ?ޱ~ir2,mQ/N:j.6f&(qTz_a#tn0 vPcZ#ϓw?JB!v<}ZƏ*0?BC`h#mQ?ЃׅDH+25=}r Qft rͳ{K6M CB5Wqbrl(d 0]RڱFsWcrQX PUC Cl?:Ҫ3EadJqHmƳ ds' $eϯے VQY0NZΟ&{<..5؉C &n2Ɛ[ Q׳Tgˠ] 2DBoU'FǠGWFs-r,{߫蒐lN+3Û{R-0XU/?CL) }sÍ͖mԲr!,+/x\wqODa' mr D3]R/ eun l4u3!7Fq{_\x2K hEP1mA&`I㑫,UhE[Tx]h0Kܐ1A(5`%\E(}i? 2BX{7ZT˰⯙:2,S(?-,ϸPM%n;%7VI|Mij=Z~ ɓu*}|k2h}l|Qt yoz!}@PɨU<GY9 sX6d~R3vmtvCWSgP.P@7F:(IEw]d(fwKG/-!ZQz֙UWgN`\T>^T;`g؁YLGS؉qA7$"BTAx :5}GW?Ҩ.C^tEpg\fl_j{j^5RD563ҞzA.ˊzAvA:?T% r!XYu&{dkܡOIFó eXyb8a-#$z*#[MjH[gMS!%&I+(/-Faَ<_ʩue<9[{GyHrS69Ϣ 1J0,},Mbiѽӯld_s3y\RF \7h4ZS"<"C'4T5wKQNpP$H:ttKO]8ÑqlBkB幞+|-__ŝq=0(DmݕOKBOfgd7K_wHg5FWuR39EsĢ@.u`]{"/?@Eؙg/u#ѣMsKc(;MR92j46rXȆLp;B.L?ˉS p}ӇF8Ur-f?[`)\f[^[JF5HFj\݅|_NJr"kLb, gn5|?njmrNݷ0_k8,{Rw8ZqHe}<hI]Fݐ: 3sSʉXY<:/W1(sOͧf~0< ^ z_WTd&:"Mn kB}v2JlGx}oP-s5!ǿxK#dvRĆ"bc5E 6_z#ۮWPWU )A! 8cstuMpD̙$N7Li#Gp ÀH&G`Q<)0iU'^x~53¦f<-;uU[_xWUv?j:g@~ ),%nd!_?|ZV`XCzTRD~Q&s{!Dst?4Qy7ᄺml_Y؊ @ UҐ#)Tj;kr,VbPJ/}8F뺴qСB@ɸbdm_,*1]V"p!}dSէO$XYl4y(aa"}#]>v? c0qf WqTj8uo(lXM[m闟W8Y-̰S>)0pe-K8iCNN.[ KJ`-a'TXrǰV<1IH[m ,e.}q1F0{oM/OCAc"4ԐYaL .I fjذ1·KcM}t  yx;)K9 n`δ#xgבɇʚu~Sm<SNY tN_£2 nt>JK$Ii_FDi8_PW^*aX0ba)\JKbCJehhcw{R??̈́#"a/QFl1)V4ӛIxWx$;^hz@`x94F.]>E%xW$pd>O%2c C}R҆9s D@IPa58oJh̪HJ կGz)3>+h5+آROYGv%V3?ؓ #Avӻ,YX Nޖ|tJ<{ <%Qɥ W.hʒ%QQ\3o.2hn9߮ OH+Ց5/L~)S(,2z ^\>%j?6yh36jWӹ!eNqq+!n*C0s*fZKg2>GD\'.nŮt!'R-(2Uhr279Odz\Q!*n!oqHV;_`a̐٦ N}!{'&) KJLi죽^qi8a+Z2 v38JW*%I@":=|#!Bf۱Y>MoZYsz[AsjF%ګTxKz!`ue3Ф}񿞔{MAt l(' rm҂?isʻ/~@ĨtWn"7h/dye#HP"&^pӞl^(g>9&͖?QD90.޿\3}pJg04]=X` g!4$C?Scm/D;26Gխg8^J"N*>D[9#vX$ a*iq F6 g5Mk 4PNV!k|zS[cf,i$?SVTAΒa9@(4z>tP?QP*lI݌{ /(pDYWf) 9sK}x}mN=m$7.*\<ȏ*ځls cېݑ6cfV.Ŭߨ<(hYpI :mjb_] +y3e\}j:*5qk*tWtY{w\Me'tz~/J9-l4T(t}/M%nnL 0Օ/"9sÏfC. )cpapvɉ)Ҟ&2> .l@53g5`sJ'2hV74erVQ:qC6՝Xɡ1'r9BXLb,7$Jr?MEk. U\>Py*\G/6^9B-7L dCZ|7"B{))N?.SnK揍m]?ە@/4 WVuu Hf!hAи%J_YU+MY&fqxAj(bM&ob8p7H-4HL":yS4Tݾ/ vd\=@Y:_fp]try1NO$N,C?,[W$u n+NFD0qy`_'Nt?z`W}h{[moWZD6{=e RCliì-Z?JNɤ(?c"H:k̀o*Ww)ק#A=j 䂳Ps\ *u$jFrZx;f". ϰ9ou]P0^8I2 وzil3U_'@^ ՝*=l_XH-/Dl.64D[ BDdNd;0s/|3 >SDLu"eL:y< V/`:X쮿o;Tu'#I/l%dWC3ue0E݄E7 v̤W]!A&X1 婂raR*&uBo8aO-G%,ww tqM-9SGqPr֧ 2ĘePpz(^x=@}pD 6-4:0V!ʓZ($l[n iQ h ~CfpQ䈈rX.eîlSK,`VF 0rK;&oV(n8AeQ}Èr' z x[ uM}lN% ݟ p<} DQK\qSܯ LO* ?&TR iX3"<,/$f#mUipA/xdD`23:ήFK,^ ĞCWtkΧ$WI$ }* ^)}A3v$#xоfS XDp %{_B%>bKDB;)-b?UY_c^:7v#>cqQv!U'=P:r_X$ %O['GU @8@(.;Ja?%5cp؛^;^HfwB)*ya *:}jV%yF],{EeWJYyebi$] iQ1q! RQe)}Vjek&CBDQ(jt @{M&"A4yDP K9,W%>+^D2#&)p`8#R6&<12M.׎}&/+x6eZq!b)eHtSJߕ s½pmF#jV5w,uTZdaOKT5u fR2zSG80c*4Ҹgbpe΃hQ YN ۇGitV|BEO r. .nD]ʡKM4p܇wD'A9:8Fhkv`B.=.Pb5g=Pt,2dLʶ^ei0=`gYuM_4ǁ]9ī&N=K*@YM4-U8@*V%~]$wb7OFE;s;/ <-!JD|,P?l"i;yXEЉ֒/hJU dO<6Zq3܇\Pm_nuE"f\FF mIq" &˷'rn&hz}pP{F cͧu VkNNr׍G 'B46R,~^taM|Nq҄^nŸJgqrfF1iCuI95au֗Y D5o5jU9>F:0nHE0y#Q?fGi+g@_l|9|0ɬַPK2&ٕmSr[|\9;uI&ʄ,?X$m᝞-Cx 2 )nńuѽHJd @,;po@S'(+ݞA3E,J +-k|ߋF{% v&wEga5CDMɢ:s-E $.*{jBB*l^2PR?o)+3Q:zRJE),O.xwRV@殿 97!7> BKb(+\u[ĤttjyM;yK DLeVUB^FTNNq-ёw/Z SeG旷-Q&qXm]鈒l@6'A~rrm%-5 oVUTk(5%Q?Ty҂aKi2 ߖ+S燷ZAOҴO>4OX7uDhJ;RSء3q]q{"P@15L4'|) L[Te~Ɓf1IWo-'c[MUklq]=lD^nmyn8P|g1c0`}䌇jt+$Blfqf4Iv4r!v)p}]z}ZʗDᶇjqG)OO͕`&|y 5#{a;]ctoHX&zRh(B%#u8_h3,*)EB~RwFlB% XT-E("aLv0c-_4qW&uDC2{CfXUL):*i0S0f[:#]`^*Ĕ@E徵LRn0f: f*o4pB!WcGE\UDYV"ɭͩ%Ҋ`d Ą^`tj^E49}ag:XORJTlid%Fĵ2DeCn/W(AɻWrZa ?ZMmTW `J$ ثlp֎ '/d`$3/M̴>%X[q ?G`A'JGmyB詏%nZaW*\M2$ UV(97aa<ԩB|c[2딣#NMx99R|]NkO*{tkA r鈖uթiՕ=2-)IBHG`g=t'#9~4 2ce22"BH7$Uo8 f \.ǰМfi= \Pw˼1 [Wځz| >trLUb=i0J&fWtTJ2NiɃ-*$x\VTybi" 7wjZЀ:TЀ`ʃ5-Hٜmout#vc ǍI_w*?oE.>8oLqc[p݁{3㦌/~ZԎ l6sD@YӌL`ѴzvRMs^9~h|Os}Tl6)oْ2*$΢j(@ROMF6BJWxb _`tK ElUԊ@a]/dT0gSha ԄX^|-Gyo߮/8U>7CP禭gAz\ϭ#@{Bkdؼ|Y+Ey#4!Z+ذÊA;`78DQH%(bْܺ9z؏v ;I53mgϜ0V*:;q~UrMOs ٿi {cej'=_tO&fIƹY5dLs ?:  e߳2:0uӢ,xtMir9kC'KVe.y%poo]}Dͺ20yyܽ#c"tʶp,?<`Qo ?J5 İ}~{ħV^g>NiD{D[p5?f|v]=pJ-πix{k:ţ@]A[ xDdyU2:i1R ۫5'*d=(FW,n6fl0=^Q? qCJ@sδxbv_rT+tˡPM 8 >吟G<=4n/u[`!fhܑw,w qЈv4`ڿhԔ8@:o{Adh44wǁTII$Xa8`'|*yEKz̬ˋA,J8lIVmVn-OT'㋭}0ͮV4MM>I԰,N={R7yٌ?ޗME7"dh01%(89>^pa JSXR7rC,D3zx@"f앥cP®ӱPzZd+kOcژ&aTI m{R/4]Sz2ExY8 F(pS] GU V,[}\rkr$k8('{k}=;HyטЇUe\ uS‹`frCor)4ib΍D66r T÷H}"_5TX tq-p)A~Af칋;0NHoy0{Z(1̾[NS?vԕzwG (}Helx[8_ζ}wðZK_Qkm֚cW6bYJ`y3*xW-'㐋w@h/d(g$g,o*B[ѐA&DĬ~PQG怅0g{HsDj;MWQS}?KENfX}SV(͖)92ߑկt`,3/ҁ}0X '$-e6a/N mD>G& '͓rU'̫tuMAf0#6jCoe4hg^WNՔq%5[7 BTyxrNpMi- <{Gm9*mV0-\uA%Q*#X#?,8We&V*[ʫo ݣe×߳vi},ւq`B'Cm흡, ^kujfO0j|ϓn(eC_,CO+t/&-z_.%'w-*G VhөzZ܅y)JW#b)ɋZ緦4G& XH] 3fa t@{ezrX7ț};>zd( ݄X;˂EyHMBcވ[) Nm48H߾,?Ҥ7K/v16q&Viof&쇾!n=K.q2k1KYG vMR%ڡwEsYL Q G Umq{oԸ {< ](>,VHwVv\v_1ٰ]4fMB=R:~$rN`nV3!6ΰfj&Q&X 6G96.cZ\CӤX>D<0 Dr61s.%l|rR m q$k ? Qoa<'$Y/vNuSSgn9hgcH|vݙI#٫hAkIΓI?4!U{DCTa9 ql 5RjPh[ɥM_, uVeſaαhfGGLtOJr!!oJ9| J&?wYrN[.i?[|NKvJVA,:i ,+ڑ:gw+{1$@sIB)S#QT$R/ fz"щ?==FzF߀ k#,9lsœ0U~hxUWi7F8ܤpeB=>O!cO~mbu w}>J`@R5弜{"YR4XJ;wkF?Ԩ~2%ZC[Typf%: ԇ8eY ^K&Ցk .]r07«GץgҀHrP^x7ǘQQ ! }h$t@c>jzͱl<.N}*(KPU;0l$532Pۇ;Vmʬ gH# A=e ıW=aM E9lmPdrTj<5'P@L oku=JJq)EMKzAsl >,yy"أ/+nEJi5q0e:muIJ-j%&5rקEc-Ie"C80o\}m,O[o)ۛWp[&/C-r ;*yO07w ױg [;BWUSR 9s~BCi9C15Lqmnk.֨iZ .^?BLxf%]B8yFb f[iN9sA|% ꫇}~KW&hJd9 1~hM?,VON8%Kd;? S[{:刉aYk[v L*.5)dٞ.d/n|/pqpۆm S_"C*D WF^h+cJ Lr᩾-U?N+7W?'{-a;ssukOL|{Y>B(#Ф+譁/ } )憲ivˡwO1xAA9LCNzIp[b{}J.gsqXJyIn(hذ"m }8ʢP(T@O. mC81LdF2a)l&~ !v?# 'mn&}녛c~,+*yW(W. 2# ВnLb{ P#ϔ|nX,WD4g*/ݯtuD2{L6I1@s#5Y%ņkr׾p&]9j->{G`V̂_tb.E8|&SˈP.%{!~tg~t¡Yb-u{\}1HU*뫟ܜh;͔΄!9(FKJH]]8Ԡ)6d|IÖ GGrduD֟L 871qFzk1M5x;\> 17"#0.!Qe"#êYPSw!2{{!H*+QBPCd AeJևYڮ )%y+;uBmb!#Rưk`Qjt,%$Ԃ@ hȴͽα'9,FD6cvOA[2ܭR GP'vڪ^,t~J1 `3? CSP )CI=ˣ&* ع'9t_&ɐV̅0`'kaB70CAY Q_/|,. أ#jrb;C5UXIljJªG;L IvRp"+Ŝ0GFgmF *vdzH#hSttE}߉F5_&fR+(/zM{ RYI $q9p~ز~"y_!5kjhJp0dܐ p@`8{́OM[H 'xb.ڐl}Hyp3rW;LΦgsvb :xrSo,5'~ a[|WY }b?^4zǁ*=ԷľͶ' M<*#:Z,sѽ  h #Nr:^la 'nKU  RJnI vm:B~k_T!-ISAWL~3G,Umr;/݄^L0 !݂3Sts`H _ӑB*Y=4B\MsQd(뻆ȞyUǼGPT 6Tˮ5a?kυƽjYa>^yrQ`wE5wUN[ NTxa Yzu"(#M;{+ /P[4-{`k#R0"@9͗ 8=^awy6WX  nug>HDS&-I4k<f?;%L,YHHma7m,4h'>l* Hg W;ȔD1뎿e8PxN|߫)hE(MYm6*Qv\um[ݦT:r:m2sa4v"O`a} _Qr\ ÒVq}uwk[\qdfHG+/M&(_;dbI09$֗YAwuoul$ypn;[ֵ?,J[ sJY'16?N-o^4I )+L"hDz}&a@ z=,*TŞv!RT}m i<@U9ЩЖւCXgQ0E:V lco"ay &TEvKaz_>`|)0ʅɨϜ:Nb'1 x4a*Wwbm Af )%!YLpw|y;м$`-RBV!/_@$ HY 1 `?ZS⊉gz3o#Erwh2Kp4y#e=F 1ۣӁރBl,7@@ A`PX?sU&$cj^6o A#<uF;Drj۬2." ^MecqDQV?^*)cKgOkƒ4? J|/`رyމnfHIM$ui66g_ȆŲc9ʴ=]CRr!4kكhv,Bq"w7ZE{$[d1m(F(RCx,?k}D?ħKꓕeVT(Q@xԢ^ӸfSe㞶eS=z C`eT:<b qqhTHx-xȢ.+Ґq~Qͻ6tu+JsS±b7i FN834RҹﲰZ rF݈qA NHft= 3@N]F>[/%{Rxby źxӒ@:GWU!`Vt>4tOb(;)<wU1dYngEh(THgmʚs4;m%M૏4vk%#_(nضg+Xŏq-_Ѓi`-iMYרeQ 9vrSNRKƈT̃Ms~&!#̧K4s6pˎB4mթZ1}cxy.,kv^|eE2lgŔTX7:o#^J"?IDyZ-q9kλs#L&_yɕD#^|A{'rC=/K1U\8 ]kŖB͒(Y9sۏA0~x\yr~9%9+9xd5sP?_PD^$*z[Pa-k3y yg1JfasB8=D8_m:_N/5dԕӂOvNNJIǷ)_gy~-2tKqvnĥ P0!䘂5* ue~oM-7yJ?g1 J\I lL[U k. akzràӉ `ĕˬqCTKG*fw/UHmT,ΈHa(hە:T+ A= j=JRx`嬻T;~ }/_EـE2tCT!!fhЋ2ߔp "+lQIO aD ޴: :C~RJ|ԊYçd$ShFAjC&Ldc9:UemN,V7K8nVh_zvSB82^x/y@/QG2/(Uk/iI-NaJO h3?eգM'-޴jr#my ߿}1$rD޳U`hSl 0Y7#n WC gMF5d`ZlΨC#Ύᕴ}vvϡODk\z]8X`,)j ;p7yRm֙cKMY{<ݹQ-ST9Pat.H?qfg_.iE_4,^I@j`f4vm^dK뒤dg )m t.mi;oM5{i.=o#Y~t'kdn*6p`"ok>X5i2 n WlkmF#X17s;6BH,=TZ ɢz)ߙuyO#q>ܠG=Ǝ6kqnk)PwaaUmOKޏ_qVR໷ (ݓEk{z&Hc@A r{HMMܬ+2pq֚-P V_꣌{/1O#h5 [0lvL]mV0P]όڦ4E_|BD:42cdⵍLcp ˃wPH1CKy ;<'@8=f<~Qo?/-`[ ,Cjakz?$$ H);FՒ&C+.UzԊ|qJ` E%ZfrwzCB  u)owKY4:T bJ[Uk[S }L+asހ>(n7vE/]`tRSnEF*$dZl5wBèf.^P|&GQuM&/hقMQ°ݬ mjc'Nw;]:)a$?`ҟKJeW^2&5_{T&ZۍӔ4ѭ9._]2Tp18c^ i)T=tzoZ҄\'GQ |{v*TQ=O.'^~hR@yKē7; !+ֺ)||ZE5 VtSSAtw|3k6AD P|xr=rΧ]/&NT$CReww ox] z2?ΔZ8\#k`c֕c>jlLrޡ[J:s+t:(8}Pa' )]_}Ghl?H p'GfDT1:I̎!<V)g=YYIͿun޹UX& f;#Y2LwCmZ0^!P%'s."|,O3D!.D4#d(5|r>߮}.WC{W.l'EouWhw2l4Ԉ)  qR14v}l+k!SlOw6`+RpfnM}$d: TЎPd=Rly͹wT0k0Q/G麗+azdqm 5i zqv0;Olɿ az>bj%ރT cG ~T|П#7r Cbs4 Uƍ]2yg*Ģo+U꫚G?2u `Z389mNBc`c.&¯2ؿp,2Db(qbl;+.`t?Nj.L?g!Pv KY˽qL`q!+^ɛCŻrPLxol}m#YaTmc!8^45_kr׎)ܛ&v !n FiDтUX!.#䶎mm;3ap1ۉ$!(SAlN3{D2`;PrMIYw4ʫٗ D9`#H(0vQP) s[ M$Xb^|DoXjˌ\қ"A; P/B[~M,k_̛E;LĤZ^~:B#Z/4dT|`?,#>0vubzrQ*DIhP06U M>'\Q1v]'wTթ `G*|䙸xN*RsY. ^vi}v^VflѓMGޔ&]a5oUFW,nF-X6&ܠcQƂc~V>|b n},n7.ph.  @Z5OfYOSՌ^ܮDաT"ybc±K̎.f!C1>%V)PXO3]b|:5S%& `0 ")Ȇfubn95_E xE?BoÏN5iN†'ZJFvs0H7wfzyꑭƲ^G>J6%nN~XD!1EȂN[GjGY~h-Ic/jҿn!S7$yҊG41CJdI}ꤡ+ I(p-]-6;1<2G uc;,_z/yn5$K6]e S4g 鷿 lׄ 8u)Pɕ%n[ hk!`jXRo8}(yC8G9|-6[^qO)b7مԳkyƮ_#"9rMM%~M55~ZD@Jv$0L2v"'e yu 2Ί"aML²1v_5zf|۽ GzĒoY02 kh- I ^I-{eVϳ葫]:[Wѳبw4 u޸bkY؈+ ůT9 `$mR߀p'-b P$Hb~é% &Ft.يnnCƹB:3UMQ;~>!d;+CƝwIj={ZE6z 'c@L]DL' |RbLMؾ} (iE.@^h3QWk$Y?( =",܉$UPNGnfum8 =DԮ;ASG k [vf^j6ż ;^^٦I"X80s^Y zq•bR)~tk$pz؟-0o# Lr\+yYpkK*BgBEP]\eBB2ΧW# ;E.rv <,KsHl0D}Nд0&b#IG>aiH9MZZ&3'o5J>e1c¤YRDh3O[2U))Q usύ"*P8_*?"f^a*<@M=uvEpWnAX5ڲߠ+2aUCc"]LQ A"DlLW`XwK{Ƈl7m^?_WiO=oj(Zaـ}*kp`}зʊ?=b׆OHm )J4]bjA %o᳧!n'ƻ=m(aTݲYubV;&QVo^_e8*"JSl蘜 26+UQ{Ȁg b,Au&""Kc^f'jIxyAHOn1jڳȜG ZT,yQ2̓ίxX ">}<>GGg<ɬy Ԏ/ژZV`e\k9yT3yjnq/"Ѡ!'&mV<]Cѹ⠷=~Y {FͲq6􌓯h7>ï1DPQEѠmG]@MLy7,ݱ4\*T )GbKHֆ)EM6& -Ö;XTJ젇=")jHhg"|Oщzxr7:ax+T,"Q)=0IPrD=L9.1vt>/˔l(M="g6[L94gJzW-n3qS(@k~z,p}}XA5g96GeׄWV טE9o>#豣 :h2e(Ddba^E{͂E,mGl> E]Q\':v] n:U&J1?tTB1dǯ}VmFW"WXMt3ZiCCőwz\94ө M(*,\x}z@O//xku`0mk A!ˊNU +3'U} ~N g.s3x~2S?cUhWnKB0) F8qϵG0U; z=e3\L nl6vzs߂3-4J9qBϝ :iF:_w6+Uofo; *xβ9xx4U ڤGt*ʢW{!RŁN=DJsx $!Lz:t#|O%.J$u@y~nOՎ ] =[c/$b}{|\\`1xSX[[(<%wPTdwHcMh4;ڀǖ]̋??lDG6Px wZSd.46CsBYz9u;ʽMEatX*;fD5tzyMptF+^ N|hlrxps7):T"z&N="ZH-RɄM!I pU*GFkׂk^W1Gz<$RִDv S?@{=0OzBП/m7<%jɏa L_v\+-;]D8."4dF/ JjtdW kϐe11}P[n"!r'4b vMKȇ5 F'줹'EzN\f&DagpȒ $)xjrA{>f؂qŘ"nalz"o7zmnmxs@1ΕsALzK) NoL*4}G*bL<[jS./*}Pu7ocP4>7ŇOI=`gae8O0LP%[uѠNdsAWfrB{ rɱU%oW>b$Nd@h5.$TBnT#~mWē퀛dI3ӾzdnT.罘.{^jSL#.A)ڊ"1|&pzHZڡ@m(x萐K=]JA`g^޴HsXھ٣T CwL4/tjfuOp7];5Z.'6ߧNֽZ|vA-ssۄ2uk#):2'b+ě[}V?| ͭ҆a\b2MDȆig6 AOGJ;v :wfU.Zs{Wder"DqApGlD)}mOZ/QB#c';т'FO^]M f >͏%845".HMcY?en$g> 4R˜U娔K?PNALv3ˮbL鸄LHlr|e?>iC㿥D)DwdT74 5UGԊXl5"dkO(#gJ9-o7e?V1r ch+"8.!N&[\=Q0WagFBP ڲO{(R-[ūuSIŪ4QԚ\bXvIYZh& b)3dV6|Օʛ.x(ϧYNq&\0?"z4&EfQb 2yPє9<8S_,qiHȬ]%]H8PXb|E*lwb37:{#;CV@5A<>f0-IufǓ[=;Bk%h}#<պn&j2FAQhn_gb+a.AACNA8 WsNM$s^:MD[_v_亍),?-wDBL1Wꈨ5t :eàv{Fq]Jc#j_6R;E)0tR-DDb%?vCJFZhDHW0`;vsLfu4.|`4Q,7X 7(ўl K|c1C'7O:Ɠ*Hv-Y-:VDNb9AOCr6-Azi bǙ ӧ,B+6P[hh(;%U*Pw`D\IIwuיWGP?~Z:µ?z4-Kz;|K:3IWFzS۟k^h[LNF[Y H2QɑH_Q|.ǣM#7{Iw">L뙲=T.[eH"ɮ_V Ⱦd\Af?="$3hs|}!?xBU?ϨF`-.Q#3ԣ}@T'Jn/I` 𢁽H0%e;{g<=*y w9biX[rMyVMDjJNiƕ;RÞקSKzf%ӶOu>]nn5<߾ V-y_f#˪GEc6 $Ufg!&-K̦}O ֆ@ 6f`} bv1WW^KZ;5A^OG\54GxHf<|mr 7v.9,8mP^ʁhV&79Jt_$^~FOgIHg>; O2cmD}#^{6/dnYh!r"Jt3atenz3"H[xf@ t욟! x"Vۣ/(CԸPϿZ~#k v]$8eDPYd)J?^7f8SXr?vu󞠶ka8)M 7HX:{WE)^I5)7_{FC~L7ɓ=ҭRgO;\ur?\MX9;b;VLZ†sj*ސKXͶgI ?x()6-Ut5xCOy}"$V!H-mH6 Cm$DdEMĸ#.O@cZ+3em(Ԡw*8԰|+<g7WI 'hA1[vKjPK=vg} eϙvHhQkq,/ K7V~WfMFˣ'd H7cC_EdM*^75pھwS\cI!g,<);BqQa#jFSq=ЎXaZg&>B+R6;,Razצ)}7PEd$ot{]einv-l+|nDRT _gRihy0t׬у#Wxǎ*;b`l6wD/"oRx΍6T[os~cRt|h8mp[PTu3Pr3, FHŘC l'UupḢt{Q1]Ob{z#yoi2Y66t+"`[ vXI.qE.yAmբ@I$tU<]0?+t]YwR=S̩¬$ov'VP֏V/[>pVNj] ]O2ѐ:#ʣ!+k$84=DnH|L[@[ Nv0>B};M&( AL#{[Y5e2U5h-*TO-U0}g7^nfu:DŽjuxwr#+=XhhkZ`I5A^Hڬ<Ӄj 3QV"D+F{l8>o%J5So Kvik@Q]t_Fhu d;yJ `3u5eI4 gW Q2^Lj+E }uSD3N 5DX!1i=+?E٫|Uɨn$L/Sa0>ifVs/~.LWzQ۹jnkvr>0'"W 2d)gzlAF%wj O-e%)д&?dV]a > 5H!I*@}R';!MeV*LW)'s𹪷L A"4,Jz7OozV!fɃ7aR. @iˈcl\P>`ei> m ƭiǨ6b;y3-j_j8b9+$vv7kqՏ9Zuaδ3"_+jY M`OU28OmK$7MS׀d`fsQo1/kwpn6:;|ץﵾt5G6]&){OPE[m,h R%.@:)m AZA"lƏ9fy`{ΰ2RO mhkHS0߫ ;3| lxq#E=6rE0˄$ z!D"П q@Q;WBSX<,nֻUFdLW.;ߔ `e;ܯڷ"bӢq(!R'o%m ~%'JL.?'*T1g횙-U7pr 9 <4aLtU/3'j6C)F XJ3a%#[#JP81V#l1QvB*#bk{11Ih8!7:( >aC}^B'hRY;b0=t X E,uA#9wn5Bd~>hwR[7Vcr%l3"3$*_VKU2'&VoyK:,[#?[EYWњ4w#nlK781؏ f(~HJK\( {L=SAQa B:>crEEj)=2E,ҀZO $)9J s@/M#hx83i^{i% /f()YMDr5 Me\SD/9MFAZ"f,&inCq.\C l>ۅ wh`AaT??8A,f_qoKnvh3(KHk/ތv.RY bVi b3sͺINHy%ape,1qQr S0hvqX4(/c~5R":bnoLk{y,c0;%;4fk.ٽNlw;?oL+>>'EiM{t uE.Q+A"RYS''U+h 3w>r\N@m`s_n,~wP4lBz F5&Pɐ|գN( Myʫ =0?}Tq9b {5.*t `iD A&Ke[Pδf:OF]O H0iV :U- ;-gIrPPs|6/!Ha06xZ}B0(͵:x̵\W:ꁾ]AgUvX1/-.Z']eIjʳYƻ:xͣh $L:qDf;g:b1p?uH ]Km_:2F(0!oʌKRٕ j(]ˢ[-KR6.Rd֘.KMOۗg1/ddriܿ4j ]f@T;%;ԀG`tP(>v~ %5;{~P/qm g(_hY&)/?qEVMrQ+OD %H-i~2ִjOtғGFtAJ ?f pBvIB&" _Cm&^ٕwh:ׅ71}FX|MNHʝ>\`c RCE=V5>o~ɃH2]QMu.`T='xCBmTa;>"Υȍe'務3e{ ԝO1_juc{wjvN90끖w 1[0b;Cn~6ocJּ⍠"In˸kj.Xnh$3!{QWl41'se}^\uXzFt?`ƴ)W6*/~Uuc`a*Qi׭"X`R;uA(X0h3jnh5>ėtn[ݤb)mrL]0"y #4+9:[ª @DدXJ 9q tf" m3%kcc,+M#BZSN1sꐸ?>S Gofmyf ro:|4CǰLB"\1*efαz}Wq̟0fF]0 +N@~C*U|\ݫK;$>L3iXʞٙF'!o6]73W蛕D&gȕ3y>/qY Ltm͏}4?TUݐ^M(Mږe欒de*GnPGS@J]_퓩̙XrOtu 1 #kSn\^ Hktzk#'ӿ(\ g a~Zi״U"J$+~f#ZL [c@ITŝP| b5"?P70P 4D"X1D@ 2X^}2Iڢ0-ȷl43(/cťr lμ=j3kSYF]9;aONSeD+0/y=K˹m" M%}K~P8Vz_[U2X:k=XAxCQ4~L'/ 8H2i&?{<п_JGr,#aWLP0]~6~Rupi΁`ͧuC('TY!-U>z D~2I%r<6PCvT'A59Sr#aoU!CoaAOL IGZbDd +WL-ŀQ or:' d/ bk;'F_ |[QTr촆vBcFDS r,9'pfԥNʵaO(d;XR $%3qLC1B3 NR48*,r].4}O(oxkr^* My/4(kB +xGn96/ $)Ҝ݅46x{PH8V;Yi&aZ\…e_i8[{L`b2zQ!1]k{Ԥ(/`4ZӰrg8W2nC2G<$Xg鴏Rse2mx, ѭd+Z'w^.]y4sҏa8Y Z ƅy3&Acēyd1ۅ)]ʕ*V6Hi]npȰ-5 !vHZZ &vl4__fQ6~x"s :#T.yܓ(x5}Ɖ\_B!'J:ʜ@cڋ]+zwm7q]A4( u9u 3*"AQ7{IdFA?ʯSm":g#Fg쵶&O-~yCoPw+ΐ(7C j7ru[pHgs`q /u-lr@50e"LF4N#0~TeQ 51[c{1_2Tk>h3@e6wPqa|Ӹx?TKGiB,+s*ʝ]߾'vQuшɘ<QV3[;Mݐp{!V6 A'G qrS&FX7z$c4o bEos$6wQ{N\]}~S!ѓ?@N Rr9Kiqj~YA'3vJ!5ѳnqAϔ֠' a?2*ٵ[T+cFȁy̜1x)ܚ7"N–GIC}$9ˏ2L~><1z#eC)HkwCeF0ᝡ$8[ G1 ӂU=m۰ I-w}O< K90@c ջ.%lq3go^Y. tŠy@[YQ"MG(4#,[Hoٗ]tv#W#Usz#wK8R fƕBo(8W)^٪m,@|>R5Y?!NdeI54TX(n+g'Zfqc!vhԮZ}eIػtֹ0Fiʅ\ѿ%,r[ şOcVrh." dOz/S$M /gliOb'NFM PorLHN/!ؕ(dǴLߌWBzbU?^96%x8_dzћ!E$qh!D{"rsܖ3ްdu1H B)#nqOǘ|.k`o")֓;܏Y{FR|n?l\* 2hUfEa(@TTMr ɻ0%nZ Np сk"ֹ(;.fTךquLB[3Qz S}NΤp㞚 um3 ɸv akэ{[ Hh%^t TI|iwei LRœ1\A@ =C=&~y&_䝵PioCUݭj0sYdF`v2@n+@tʝQ FZ8=ͻV+FaӦsH F>\+}kKFԴ^3b<OS{Ыeur咝%r/~J< )ɴXI5H B '4<˒wqNͦ02|b\/tsLv Uk$'6X}UQ? sz4<堀;id' ?uxRpg`d@5# ub;6 >S=@-orz`9I t*{Pdua:"!Ρ~&$:wkՋҎan?59`zj9P |ªVQùOÕ=лȑV8x4nB( x<ڠ拸/ [H<fϡ.?ՂE~SF~j4`-= ڥqd3Iw6#ʕJBcH q#Ec-4$ۇ!;jnN+BL?3RDKܒV(IzkiE %NC՗OOgz?i`V~Td&S*%7lxK9Oێw0ZeO輀PR!揖քٽ-񭢡~4fh<lykk)3nP jQCƇr jOH#VxӒ@goc6hqjYYvXm^&6^FCz{eC3Չ~4sm4fPJ*yrӢbsJ-*-SYapW_3L!<W4 ^T'H oHi)ނk`˿.{e_hL~go)C7,N-;uZs]KY2DƮ1 wѮ4Y X)3_T t4]AWHڪqF_$ Ie0=Ndo5jWZ{Ҍl/t?9 : }C!Ƈn.16ݠ>iN1a1+7-465`2o+ EDIMfL-{ ?HZ]vowZ<8e^Տ_cM݈iZ^qm)cף Ⴗ^֯Btͩ*l %ZM +B3zJߪ8Pl硜\.IEXudʁMJJ?qA?TnX$/2$! a^Jrł\7`SPnai!? |k!Q _+@7sż8q]^ݤ} gpGK V͓404+"_ZגAD:D"r}a[0hM܀N>iӎ@oa\f!E-C+#K@0 bMwPV0R龿Q&|W!>7.E(<ߺ*b.j'Vfq0Vt{b5ζ7LVM[p$8 HTۙl!+C'up><ێYi³ӿ%JM:k]#!g!$N;|B2aZw-Pۚ1]u^zkrhZ4kH+~u ϠH탤 p(+s`wfYrɏf>[0o!?r3de{r[d SjR/#\\%AA?KB{^M_CpcˁPjz)*Pn(.U'ԋrSd{mZR½8P.$_\r]}:KÆA~@\M-Y1d4VPqdT샡$B`Yg{V&nЫwlyEzƛZ@ETvc96 Ug]"96IKy0 Vn`teڷiO;[(rV'e٘ R!'E컕<%~JpA_S_?|sǵq2tKLOf WClkτ{LZpq^# x_% <& (Xͅ'`@Xn̞AoN_f^ jĨvQoČ jVBL[%nv@&Mf4pc-kHNaggXhOø y`;B0Rl1b }(M1Z"%́rf\3QRq&M#Me wu?w_ vج/ChlO H!er`Fƈ\,c{C@%6hĮW̵W6%`e Z`|Q27{B,|.h)ő7X$lɗʥ#r]̾h`sk0<+(Nw5,8qb럺/r7n1Xb7^W4Y\tl6Դ{'eAhjK'j 8Kkӛ#> W tSt3b 2l$UN ^Ƣ!*2Zjn|3f-Bx3I72ş0n4ɻ: ;"3#.$^]{ Yߎ& H2٢Tk 4Wop)g UKVE8j>"0ީ U_XjAQ!~@PE!LLq@0Z1Lܳ,`04Wo1 Z5β!<˶RsX}`3D .6;W)wG!wC>%y`Mf3,U\eacKgR_\çNg)t)[^` tN*ͺf6szӸTH!5=gNnߏI\7*lk7!YntᏩ]6 >'?EOJu [⽒鑙[/)Pgfneb !PiISU]7vЄK+NmAp'G˘d;%ٛ{*G6 SͲ]/F@]qZwd Xo*6b"ףi: |wD(^Bd;ħUNbr?LkT|^7@,b߳b _0ӭecgFέ-HɿY+(~g|7%;Mk0֬Y5:zy+c 3ݪ TH?6.ȵKTNz%r֛xԳ63<;?H+Z9R PT͗I>9߼9>yGyҧ:u N0 [&Sa,X{3) 95{~F(5DhPAMl{jJ`/;+8;˥b=<.&g2Ӆ-^zCFQ MVE:ҊnE2ՀN4N룂 X= =U669傛NgJ0KV;e!zWZFw01woL2^I<B(eъlI`GB5 R[T^>@EwQlВ/KbHf'^ov:ySĤzzlnb%tmhs|.|,Xf4:04 ! ='T#zSHFyL_Pm· y ͟oB; 7ѝ,{ΚZo7~DokxnTU;˩tK}qK*H Gg$5: aߵ^luQAl ѻDЙց$,6T}/=֌_uj㟥!XqBV +(ae pUMs6doz̍̐걚JG+_ֶ͌V a<;2 .JxAkgF ,{haʼnWnhW$ء4/vAP10 W' V: s5wM5!a L30,3ea4J*>.OBHv-@܄UY[D\Z"[+~Qd'=6'!bzi,ADWn4r A4}׃R\N&ٚpPMs8)e()n`IvA~nn8SC$V;@_ T>|.ey69iXf~"o7G[I]-yEح$u,|7 nxdH @ar'#nl KKlrA\WIż޳DcOP_4S4bUMNaQ\TW$X~;YuLDKIEY䫿CTFn1oa0O2Kˢ.&z lea7yV`x ':wkJ:}A'6V3Ĉ%J9N b ]MSzE w? j+:w߅>knFoTK]. Mbc*]G8;V}P.+Tܢ0,nx.Ƅ9^Op-mU͏MG FtAaοQuXNK?Ӏd.Q'^nW#? KQy.~B4fAK 1q?yp]'ѷyE:2rnǼL-njYr;"]xLYJ/Kt12HX[=GQ5Q8. a6pg 52M#Yer KXc?ij۪5I[Q;5(ױZnU753lȳ}e3︃66*llDGnAH&֓7QAgWEXX6\RŒFr{$B[ߍ6Ch)y`:M:4WV"Ð4\HgAr5Oma4vsذiU3NTSnA?uC$~WCV7#g#}PrPVe^!8R Sw74)YXU[Gf'+uo?_'W~3~LbahN3_je.p3\~&iuE/;,\3)yJ]>2.hTfnԈ2=ˁAZ9jL$#68)OwY;|RkVҕPV)O 8w@z-cUr.L2Wnj8͘3`$c ,Iu8 Em!3ZZ²*9½5Hfrm*X82Й,kFUrUS,$ljeX!#$~1[ |p);DlyY*JcI> _<ͅ=x{zl% "G"[ ҝ 0ӏPs<.;ZN&IqqGvBĜ ֖"Q}L2=O?l q!=V2ıUYb\ ri UIjy1cqꒂU]y97&C4C>zD~Sw2.DǤןwGB dfFyng8 hYuUlkL4FH@vґ# >@LVȁi$Cp7vj iRT[Ys cgT.4|G_ZRm>E P10jSpIo]&ᯍ/~FQ^҈^Uɡ=H$_AZL@5V,Uþ%vw>Q>-SX3*JksXgo,`l^8.ucSH3eFۦF(OZC?5#RYmz6=Ǘ;'N{o(6yk4} B_Гv@{{-}[O0X\Ϧ$(E){ jH\@HaD#&A tZ(IӾU" 6)Fmgz)یJ4Ckztﰼ g 4걉'ۮ޳10;L$ިpR}zm)T&VLb!G! :oVsB:W[Jb 8w1,/H !+yr\6"6GH('b+Jo"v' e)cDQy<}pU{9?g/^)R,.|/wɚEI g?9%pHw9<0\(VhU.8Ql&0y_J{wG<+B':s!shƱ_+7a(a@v8"K${ 5qط-~ձsn&0-2gK-$noi&TV:B#˸aRI5L~E|bbc\69P[ Mn9*=X!&̇'7q#=>1薺4؈_Ϙd ̯%iC@XUL[plofD Uf/(Ҍ"L=m"HaT70"7{y;uAolWZxJ8ruSM>lߡ^g&Г* 'Qyh#*! p9Nv\||>Nm4݉#.}kRPgb#IGvfᘐ=5gJ|ݣPDEmS_& !_n;P(q,RnnJomtYᷠ29H.oBJciWg6׍0bsB v>zCm'-`X'90@c8çnƋ)iH4Pqwpw皍ǾC/x][=I5jY\ye@˃KC[_Z e xyYO[SiD4' 7Xk2bh ,=%le)Rc[ۍdya#AKvI ^ v: +?i]#rIaGH.B {IF9cɴ~(*RK 6oT*|@ppl Hq"uX%s0_퀜FI c9svQ2bP#^izX :SRjF f4"#Y"Wah Sp.h(l7/,[w{:p?i~PQ+rĖ{ , A>/^50̶_bG3//.2 y W8dmJ-:;x,sWĈKwӲnِٲpQ{ lqͩvVhK007c{O( < Zl\mgqgC5Sl ӴKy>JT_x|VO*n%Ͼ2C%nm>JXܯTZRnzC V@,)U`~$X}w_@#Oe$T($\T $xHWc`>궸-ZA@W-0檆>k]ިۛ"1V@oğdniFO‡ӗW-sM5}5E%ytg¸Nԉ<P>~ώ\+q!ySJv ^!fڄ2-^4Wuc,(}I&k%tjxSpdKP3MvDfb\T %Թ|&jTU \>ezw0 l3ᕌv-=VF%?Q}5 Ia=3,L$HQ|mG[a^6w.m~m6]=sI˹;ˎcMs|[e߮Р7?eJd6J+ {&*=U8NḦ́JhfS?26ub~UX0Jɕʼnt@Bzt.Ɗb16(e; -T]7[ ]A73ڂV7,9wx6n0Q_0}7d-م<{U%=UfS||tE(xgDCDTV|!$RH{W5VC;ĺjSBjuj.fjZ+Aڨ_ܨC7NR<?'ofi}h#t eV$ wy3>HF+Ǯ33k8_?$Kz :Uf ̵h|3XtTL1?<EWamImz]L\똌7j+T( Fl+IKnm/wM_1j<^F&!_B~fBQvٶZ(ӱ*+:`4X1+drܨ̜d3%L2mcQom;/+ z?h+H^$ЉR]4Ұ7_IzLJBg¶I:ȅ@c~Zۭk/4/D ۞,}s=gw@+fOG!r]:_S*lȆHGUAIB BJ-ϬpPJ~lT_j %WJP|91T9~ ['0"xB kPˆt֯D*ƚx-LŞ9EI% CE%% W6wRz-ĔS`f8O&-IӐ_efьݺ&n,(ە~ixQP[EZ}^u2(DZ;Pkykf+r\YtZ͏TWwk 7OYsW3qS>-~6=ɆRS7yLbiNI̵0ӦmC'P"'xж쎹ǤP/u3507BRoZKCH5Be&nGQ0Ʃ#XYI< Dˮ?-Wʹto,}-!;[ysβ[c'ł.-E30DG_~v8Stz@ӝ°o__m^/hytAKg$y(X)?mӶ.d[#kzgyz0h_9s0̄C 4'%BUxZȕgLx A?2L e1tdD=&N?:oX DrTӲQP]+y82BUj@NXS,h2UFM(Ϋ E kڝ065dT#zCiw('@U2Ph80Gi3gr:/$/5%Oiޡ'6L4Ue_*8B$+O^j֡•]TpC&9L~ŧMʍ`?yi})5"3&i+/[ۓ"idcAhkqA0 T mҒʍD/~5XSJPExTF#NgnEĢ{G/:ҋك$PؔvA-!X(-(Z7~%3 -qr)d9_ۗ!7%}@tEO)y Aiq)?MM\ \ɽ8 y0U$> B;X\h i|]ۚ^m+ _E bZd7(Xj݁PK۱2c9-s+kL=ά< @D p.pjӦw~!E9c"b_ޚ{5 0-#zi*eybv4 f"bo%o=M &IϟŽ(7?Lȓg8,4PxtWB2O9ЌtjIY?7$M:7侽4c.lr' "PFŦٱւ (uF, _CX hg;׿ &0<𧭘 V"bD Ҋ(2;r}#)8?xi9z*Y2Ķ]r;ɡ*ǺG{=pJ͘GBD$fd|+-v_iF^g:`=LVGÒīΛ[O'1}-ET 蟹NqreqsOVc BHb{OgWg(n}B fP"5f 0gBC9孃,9PbnR,qytu;ˆ'9wlwnkwf]3)=j~iq=~`n/iAl#$.ojQ-ގXXNoY#[!W|oW[~/=]z^w5n7 QPC^XfQQtd.QۢK_$1]WQYfU8e$m7R<|ɺ0{iFI=Ĝ:].{2)'&o^X (C^Xl`p(]ЗnJ$OmOB-dX7܎&2 d9eRVOcyDrxݐzKq-2EUP&f+l\}A#|xPĖ;dYWiQ,*Z!rd91+=4=i/%|l@0M;7 n@$|͓S?{N->hz4_ h Q?ҞeZ&j*-S<^ Snxa~۲^;:Η16>@Yh6p?5"Ws- 1 7l?2+ Z>_NHkt"qvZpsd=?^G,4 piԞZG.#,M=U_ -{R#oؿ\-rϨ$gDd0~W0+`K/-!,6Z<}pSkok(gN.Vn٫J 7ߕ:s@7_ߕ[!3pmXFpv@a0yŤ(>z_/GtjEk1ka[ 2 vy Y3w uE9Y^j TsL!"vR'7=i32Ϫƣ9~vA[d(tޮG*}s=UD&_L%8r)~՗})8ܪ,'gPwl~!vfЇݫ+ F{ ދ%Y{LƦ۝~g+| +y/'߽3@NIm<Ixpm# oA?+XRx]glg`Kv"XEKj~ZKh$Vn-no n$?md"@Yɔ$ 9Yńc?(%⍴cFo4c};…$m RL6RϕU6VrELR u>p f"CFV Gq3V.^f擶o2211?DFϝ5}us/FjҜbkZI;^f<%ks+ߟS}gNRhcUcCnRXH])8I0Ӹȵ ֯`V1+` ;dmYqPrun]q3}i O z$P|EH6$7_n/oh-M\]D\OcE OFORC ܓ;hɿ>vㅷ7>* DQLV3F~F6|5b] SRR6$2Ѽy /x6С%8gCJ}PI<>`j8ݴeY1xڻ ={DBP 8 DU`u l⇝SqhB.y2Qo\έ'ֱfϥL8m" /jQrT0OQ+Jw%B_}r$ԐSY o36]]zcsPmS{`n1*8Ψ=lJɭDz=QsnucioDAiUi!#;&8YO`~cUg<~O~_h j;G"Kn5&Z711P87tOGG4y)#Eu,v=?OХ'bXb³ bz1rX.-=:Cm$%MU xDr"/mD!aҗ%oT3aZ;=6*jqV#s QE4c I*.b,ݑQXg'MGy]LetNxC&_ *j4߿`V;mz uJ caT~2qpXĵn7LX\u:3M< llU%/X&\xm9:OS`)r,VCz% vu6z% r.!UMp{f<"<:X֫]vk,d|Ҭܖ 0JǠnLYH 귕߁bwrd:. g3l@[k\sGEcM:j=УPMn'Z+rX)n `MM#UN5ʧ쮪f7}0of*dɥ$j2@EY($!n7)crW^gDBgs.;`3N|fB5D?-h1cڙ5W w._)M?18r6)~wXr|݃e¯G"e袘g46`dt~XbAKnѰⳏo|}NJc/9ɇb+\݆Aa-:ToRy"] 2g5}dhdRp}CV8z.)\_N"mdi}iLJkֶIӈO^Gae1`HgAmWcrٕԡkɅv+c#P~ dTFۛ\62gKY #_Q !#bMIojӠo_oW^_.[o\=B<0x$z!`D}DV" r˱L*>{ڝqI`(e4{1UދvauОק8o 3OB8I=4}n8D:d¡SlB.vb4 9q~3q_Shrlhz(662%ugg$uyЭH!3 Ek4ށQXP7n6|M<_3J# "-"~yK33ɪ%Q{,(C~Bɚ6uĥ;*pR;cu-?א"6К*N $@u ǻ~ڵFwnz}YThyWGXuW%{d`'duR2"'@LU)',sx={N3^κ,>"-?RWKh6߆DrZ\]b+^jw7ݹvJǢ)pyWUx9 p?7t%%X d6>ax"!!y(qqnR[WVZS}whT8mlHN7x/~ًB.c4BkN(҂2?E*Ԯj NWYۏ+F KF#Nc rg @d-kH[Z՟Ƙ1sڢx v[sjSJdQل6yCeɢ{2)qe]RkeqסdGqb~ pq =UCYkxIS2:S94K7 ࡲH$/0ܘ;@Ps-_V jhN͐h7߿{Fۥ\̾( qL+6x<,#2B^6X7*t'vp ?Dog.’/lt!g"-qjtQ&bƭ&Q&4֑NQ\s =${9.E柙-o]"=ҫn}aOdy5Z$t^ NaG|.‚Ad**3wm ti_1mOS=_2a du!zY}$-L ):djxw2_v>27jЫg{1"f<Н,Ƶ;:TEH_+mWZ1TEazS例ݪ :0M˜19£\7k&7Qh5Q"?MЂ3_8HHnE5}& ~W6Z5ҟޚ}jXH*,8ހ1 zoZ~?OaJ| ш҇'CFXY NrLhs,z :d*eiѪ.^7|#qm_ycլ-;g*41H[7gJC}[}Hs:.[؟q.S|c W`:鎩)ֺla׫(U#dsu3,   ,O5ʚ'/KeMǮ!45c/HdfOz.ÖZ2z$hy桥›%pE-+ ykӧF&L+fmh1X[σ’`6U n׶K졻2d"\ԆgC%|8}&*}S 7_~9'_ A-^aʺX8"\oI5."$E0ugG'I5 A…'vVo:| *2ҫ@}mb=YͬvXvP/zD0gtwGxQo,C@_M& .) 3y"һ})k5Xf,,NO5>*Eh٫!pKJ[g.I-hX{&/(${jH% TcWd|O~FI9cg4x8`d}K;ye?dV''~rq)o#SM.*IDo5r|ʳA-c0]١}]AKԏUaAsvY4Q6DD#pM_B; MVJ!M8E W֑P?ӹZ@NKHw`&4`FD(F/ir61 żKO< Od=i̊4DiF?& _AXjq/n[Ṇ#O; UX3DC}6x{=d`?KgkBCmrQ[y8x L!?r+y52m׆,Г-Ƙ@k@\yO>EsO_Q$nCy@LЌ8>%n[D`I"Q{i, "k:h A:=_Es駻WqDL Q ^|"W͉D5Q"kȔBmKtYP+{(_NOřWWe}nכݍ%p9= x4klEUQ 8g,uϰ*^t7(qKfS1oY%.\!bVT~T`4: )=(kpi? ˾mtĥ&O @ זYG82móOtiM:csRsK<`r~JoMNqͪ1ecj2ҽ# 1f;p;^$C/'rvaT[ixٻ8V;(o}f3v/b=%J*prEobבzŏ4L1D\ݪsh-AS#BK EK;{]% =/\tqjt \5цjU_8w=@~YIkB$3IxJYO Aذ"wyG *Ap|dSXٞ yJx%!9K_"5F0dO"[t~_:fV?!&~ Be7;(!8݇k9=Wn@gazlw}$WD-!WN,|&F$o &CkEH:f\Rj {@j*Qkıִ][CZ_U]ܳm(Um꫄>zbhC9 !ҫ҃fQ8:^@k 5vpOuM,$E(Z88j5igY(?Vs-< <ٔuP84!',q U1 z`hP>'h9=@dI=qB \T"f§߸zbA͗)zrq:bmNo0Ļ}hUY?5YH?8W2]z6k ?H][yaK)4ULh}-.W7v\wxh5, ><,W? kCG\ 2c=sn)gl4QU&1dk0vl]%T<ĺp?&!AQhupJVx[7V5f~GI.X&3>tt+* L~Jk`JKKnbs{98 {B9%N{{@el}Q?0natWpV&.F'ɳgVXƥkÞ\߽/ҔL&,zKW6J$M\Gwk+ly,>̳GgzuFV#@FDaH[GKe3^ Gf"/^SD}ç⡇n{Tw#ګq~U<"}o=2\y&jot@#2l)$8la6,Vb\oq[x49ȊGfI9v_uP)+Ur}p# :iVAջ%p//^Z?U$#C ]a"?g|uBI {@.V:@h{A[?$VREtB_ f.2!telĝ3zqWr]~ "h_F6ɚ<p-mqL(yg5ywΑ!LZ|i#~ǰɣ ozmr#zQ;땳E k#8&pvNQR$`%@놵Fe5WD:v)idc~ u JS 唂dW<"?)EV#C70lFWBc 49Ьt&ꞫE,yw͡U9۲1[XP{ T*>=c-j8+g2%.SbJ+{+6pu Ϩv'w4ǒ.rXWoq2xmGrmUֶhl2RnqQ It'=|5NmK~2!hO(*ȴӟfz=bk^WqϦ겟- oK8#IMNC;NuP Yg|ҵ_ ݀_A(XK?fqJXY_֝AL2iiG g aLN'hƨeRخZӵh$Iv/@ *􏦈k@U/5FtV[eT;bn|yW:6g(?W1~4}Bwگ T&L}rr m$ԮbQbjĪ'fJS ΃CЎv?mY}RwozQ>J /. di}ݩxar2 n$)Eqj>y,(Tx9C/$QSs { g^vdXf ˒8FFދȕ^ԮD ئq j0茨 6X Tgq%S@BQAށzBD`N_DMA UOWB{o!ҡo đ?|)~Qc½#" G17K>,Έ@wƅ39J5p 7: cv݆c;D'elps9t*xu?ASH~jgb`pp=]yxۢvd{|JϨD16xZ輽3Khf ;_ue\1HoT7M>N7boX~ q>x[n׍,"l e &6C%\G44ո6˱Дg$9H\dj" KB~$-z,>vRJ}`g4:nǞ>e{WT.PwNfjkk7ϓﮊqOX,4:p7GdűzjJG1j(PdYe]株u U~ nH#l/i¬j7G7/T4-a$I&Q$R5ෟJGb@2coeTU4qư向=$j妴<(g5h7f}G ulD,%,n{A<"YG#So zHD༤Yn3_יsêw j7UE1k-%hD2Ý8qn'>?rY1A%nB%#X%ڈ_Hk>Yq|t 3֩4F9D.<C Ѐa@6f51cNPw(Rf Jk ZoFG 3xzTY I.cr-Gc9/CuBvb[L#C1/~ $q7AoFm*R+ˠx@2bJ@MNoUb^2hR[A/`PTeZM5%BxRvdb`h^N aM?h' b~Ïp¼x._9HxA("ĨKj =W /F"R.C\Am~i#8qrʶwc4mY=)Wqe1:9v^zU ݠTU!4IDKF XJ(%]U;`zcp̃4|-&(qf(ĠB|A\tVo_pK(_ƗfHj *fג7~8J#LZ I&@m99AQ}B =.r`..VvH֥TF@C^h>K,g@h1> ] QZDszV@kT.TN\1Cq/djyGj7'IjOyd;Ǩ*>8oT\|k! LUڀ:7. Q$ ((ŽO3&I v'!̠j<0^]\in|0]ibnxgfHW@1xN>^r'k'3;u- p%6ESzBZ_i*c¦AvЧI^OCC|J_h|ļPPщ%vrT87 NCw,W!,ETޛ7Y z {=$_TbDE0&tѿC-s&'II1fXŤeiʗOZIfoK`6U-hiuz-⼤n]/DkLn7kC{({Z{1ҷ5/ZɟkbAmx^z)UńE*.H$BS }5o^zGU6"REMQ%@9C*Ƃ:r NO,lBt?-J<: +ӎ.N +O ¼Ie% uG|Ӫ _W8Tf5.! kL i*BPZwlcfNHYN;_H%Kf:0Q] ~lo -'zg1 {0#gŦ XqU6Îy~&+[`n=mhõNs#6OA ]6.J!疃jwGʔE0"Nԑ«ā}bd?bKnM'WYF7(rݼ:1ro[}e4LSuڙ 5u7"ENHׅĚ+F9.HZ>еdq/P zi4<@ UΕ#!~3{rLເ%Us#n~5bȔra؝Br@.3 ګNBl>` ˀ Ž}_jep+Ktxz*|]G< b-4q8$X2n s ̨^n!yYXc*@:euq\6hO @g aԙmijPPdYQa+qfJᬿCM JϜH1#aD4⣈=˜AU-E'PN-̀EQ.5J4@NâX")\OK%<*ӣƀKTA[F>x{)htl}AЩVW>E!-zUfmޱzb8|yt(ceXP60WE4yll$"T>eG+r^t}GE)JTDuqJ+8-'?1]# $y>Ǭ1k*Lfg!@(E [ 9mAAnMjbS<Ox?>r5ͨ0QUkʜv HQ =_ =w1=s'O,OZB}$A^^{nZjx݅f[w8 g#dp6:+8c@XG/sQ5jλ ?F2ӗ&9 @S'PCᮕvv.'SƖdU"Ào#tnR`TSJ=ְCF>LGAkYb Ť_{I=.SXu BI7=p~ 8pT+y1cS4dqo^=p'_kiP ,a5#lK4Iw>wN겠K],FC p0 g7خz\{Ys*՗f(~)IA}ўy]%/ :)gnNz{GC?v5)鞼O5k/=׆7mꃮT2698 3/aAӹ.#ZRTBF6tJ[yKIŘn(}\T$v8QٙTbaO8yk",|^i9[p(iHS/e ܝmPh#Ν5/xHa 1b2br!4bWc ssS tsP&Z ѤJ~,CUfVlHq>wY}~]zmSdӫcgw- vZ m1l`C5xO%?Zۭޢ2b{199)#%Ȉ5mtP[--FԺṯFPB&6EڊͫEqW31{g!U-Ip2d{"nm>-[ַ?`+Ȳ屔};eBft!]*}i>P0kHQU1cnV(S;g9`Sj$j6YA(M͍CfnBtQ,+8 5l`;2dږQxa[C2" nh ıLB9*S}T}׵^J'Ѭtuq17<3(-Z'X2EcƚߋnaņZuSIk^z5]5 Rô {#.^be[xޤ,xjjO}%Mm$Q}> k`ϪYWOt6Uz4w _U+=( ܾYC<3+3JMgZ- 4#ci3J2GmwFE\LiicSw0rIbP/=_-"r?iW.mqdTcG<Ғ$-25yjz;j~:oǵ0Q_@r n:ڄY*2M8I<)̙[j^< :])0d^;t{4c_ D=sElIWK޸\{SV_e4*jnmԐsn4ƴ9]D.b3EA/R~o=T;JܖY: x{O60IEY3 L䊸 C"c)bsl2Z'LOr>ǫ?Zpf9hօht!+{꿺B#eU #Z۔#dL Y X[p% M0J_}" ,dÁ44*IAjx?ڀ4{84I#(s"T$ jAP#Z%'M[2ff'_k滙*d!.*ޕIjl[)d swU('M{oxDS'X_ ھQYcJټ&&ЊFҬu9pFS/Zzᔂ\k_91߿{o bhk~3o+c; K:ThL9k>qG~-Y'G΃GZ8jd..-IKUđcZF=3\3xҦDXrL!|Y~.NJ{0精 }8[99M4c / (X6OyN6P:Rw+7aPġsWZ QlHq*4kIk%.WS|ZVAdys ]&PqlJPֆ+cеK4c(dj+51K1Xas.8ʙN^s9炙b\PX'MUZ6i|04I^3(F<6un_bA8z~IϣNHKUG<+Lk'"pɄq9<ÖZHFOfmlWٵ8\۽?0^?KF;|'Z;0`Vǽ+!_֫] >SVD|mΓyYY \/Hcպ*<_gCF#Q!DA!P2S'\ϙpe` ⢌q4'K0 ֚l%%&o?r^pM=[xE!]NF{$VcLRIIêmN2)Kz>5˼ZԴx:\#&qrXpL/|=фyEW6Jy7 GfԮNYU}dɔDt=;Ĩ~2MŇ+0 ϑߨR9k߹[LQ32˨5hVgzMCB(= ^cTՍI33''ǾwFo9,/wp܉ k^z_a]zS[h5˯H"FT_Ș*i%'/QD(ʮ 5n.vG@Z )6M j{Mg 33wDNT8h0 Yjˊ[(ZYIbBse\1|Ve˂v_yU[ iƞqLNuajXAOgqUg_Zt|z_BWeopq}| e]£uB _ TLS#:(X/JAdPԔcH50PjW4LI?hTQ@%`ih0|<mYx1mbS|x]Rp'Xި-,vۼ'IsIt&I ,io`< 7Szo5ڄ NvP4UJsukq/ d69@˺ः(f&\(ּY)#h̔z>u%m$F!m#DƇ~WRCm,Qձ+uiSAWޘ`Yt'Iߨ)׷ xa=Ǚoן^; xVNϑj Yp|X1L6r#yʹoAh(g[ksx|!;,Mn [mk)+N][+Bƣ|hƜ`8ˍzvZh>#fa4|:n/B-Rf!)'5mSw lwȋ &)^X&Δ:-,4x6Wk?^$J"^PJJ Ί2L Bd(qo7 :l|6ח3*<zۇΓnmyZKիPaޟ]rN!1X%yo]+;˜Vhm'eT-Z'MA(7Iēm5±2 (g u%gbuac1x֎:Ye=qD!N Ӥ&E|wqSu1$& ߹`ꛝ޲,!;JJt6cy/ItOv boEwY&h=B۫BJ/ GxC8V2њ*԰4VY>W@<Cɒ`GΫe%wQYǪz 1$fal~kn(W2۶㞽>/tB,@ _/ժ8I'dp1%-1V=eyaO<9pRzU*s-F1%ֿɦuifor/[+qz7/^*z*Iͷ("ֈY4}9_ן#~\AST|{,-R:!qFiy@GcҀ)T6TLO hMY_C= W_;s rRmD:҃8JvǏ&].%Su '8j 4ٻ\؉O1m5V`F[;h'y\椠_=9?b^ P7UF0 "!'1lYO9N{N݅Ƥõ$'(^ݴR*AU2%G BHvzp>$2bw{r+FOnȈjȖIb\f?Z=49 lj&4fy^m^oĮ^8D[b0a{4cǷ2܇a.KO0wg\d (8ˢuߖ *bgEc/mm?`h8,%Ě;$t>>P-;2~5\g[fN[~;/M/Y/n9~F12mhC4v$uM4؊z$Jz\= py/Oy ;K/JeVN$u|+q!d`^lbV:Ku~l- +,?+J'\$)8s pbsKD"7&&~MךQ ^1 Zs~^zH6jTEWոߎ"*yeј>@X#3Rj _F m;rR:DX@!@m͚E0xQnl>sI4oWÌʙ5V# ]-ٟ傺ǖ;k}0.a y9/*GeS|sK7,ƳZ%r!~ Pfh *w]>EC(E͘;-d2j_1'(jd"/3xK(#b ym5w C񱓊UC,A<@مkjq6 +ԩz@/- չF(A)[9ߡ%x@ ]C ȉ0p 5[ 1Fb@;=BV#dZ bjˠ\FH#d`D!m1Ėj.@ZrBz "9 ?6N@͸-wE_M/KmEڱmgVpճa6Y :^"(O]q۞+;SsSr)*VS6B.&{)#G FsVNU1x}Wp5$#M#Rgm*^hSJI1xSZK !U5dgԔ abqu}b:<=RuKjWՀ tɝWDDS-X ;q%L[3sz8]%hIL=BAFfsF ZPt}\ ZUN-fFA@v spR3wcxd=Jp{ | .ɲiq$r.s" ]- J\XjyoH$APm̩@fD/~|4钀OP>18w)۵w"C`E9"dB'1.nwɼ,4Yn(y\dvR`:;F.@"C poU>h#M❴U7͆mR>~Yl}:j%ӄVޏGlWm0|lMtQΊRI2SǢaNah+Kɹ d* ?jy5=6ףU+-r Hʒ%L@O,5Z ;Cv y 6__)#`nꩊ؄XEʀ.=>g Xc #МONpl@cKpf@GAY"an5g-̑ +c5{=DŠхh:V|7sAR gަIUZG!/zϕ\ آzoN*?8[ $pjqLiZ-`* Y&V C]9s,4'W :ťߴcJ-@:^}mşiwYJ&-;1y ^V(RnmJ1Lݓ&\DPbtbd[m0EKAqkSByf$З>enw}:ZUd$Ry;0=J]e:kpWљ&86&\F+^ 8,ŇsxF_kJ$Of{8f#!b㘔zqysVkHvx&C%Vz F7YcJ@M~Ā`u(^n-td&~V|>pϰhs9nv6 ._RĻt3Ish9|D~yj ˉ `Jڟ欞.q*MVBhQwlDcę: `ޭ`hάHm ĵ!~\AeYv2,sdl%ڐ̸@9:n|2q?<[-^]Bhʨi1A!&~Ƽ4F8-9LFF3afJoψVeI/W O?+O%:@Vfi"bw̴©k^Z| _7TyuΪec`HRȕlȈW61R*,O+cّ Fats9"AlW/Ljvۦ2:5q=:~RWcySavJԃTJ Z~z*hDjPLQy[!R{>n?G$}2Q?a/$S$=#6tH kkm8;drqyi L&ݐ@ㄨX0-xNPZAl5凞Ɓ$PBn܊Ec%p,)k/+ѩ)K`6!O~zie*[iKd[hpMp }8/XId+tb|dl C&~MY\T9@>E}bpjq`ǢmX+ݖx_y(Yd93#V øPSe_Ģ8!cU@9*&)dF mAnTA} RuY8Ԋqo6u$PE8楒Zr8kߡyx3ZˠVoRf Eޣ9_>R?AQdT$/%@FE<ıR{ec-PTz\[ $2@MJ@r0KU#pW㢋̉kG-b. s**ؾcwצo-|+: \`F`zS_DJMlaӹ[/1 ʑ6qzꝍ6;pڲ;k 'w6(;1S᫠ 0. kiPWWVmOpY?UocNۘgPmJ}a։*P䄄VGbա : a$cR'baY2d`*`̋m9d9=H0oLY˂RuB ,zBR1Efj;t'Q;hƱw)ҥ1=$OO=g:9բeyFQS49D(ԮlXH~4]4b5p(+{fsKN<؇1,#]0T=ܛ$DWVpYHo!Ռn%VtA&#y ^7)0`y^^ o;ru-Q;6J+@U Q.[F{7!gҨV;l$J#iU.z(TնJqhkˉ#xUR!ȹzqD_,iRzDUrNVcd4zM@.È rs>І Mb"NXk_K8Gn e#M=o8o^C4lzlŠ/e?y0qUH4)k5M?F{(3Ui?9Q DUFQ֭?] T$=6Hm^<ŏKV^NL"OQJRSy2*3F#(~V'nju`'llQ\k + BXkhY1ÆB5_W!Áܝs#{jm.q; $'Z6OG=ɐ`<|vgяى]KKQT˜ē^hvgޚp{8Tpzw @[V/rK$j+d$v`6`ypMRRLE;W&WlABj"棢OO# CIӔ,6Vޤ%!:a8$4NŴ+c5@!)x ib%=}Xhe1fCG",U*"@gxBwe^2l|@7$swq\t8:-t=^G}u).w m bDnݚ͍Y3~:༱&|s@LnK\+\EwFY:T,EKMNv[xPoBK6 g+3H(]Qk*Lhɔ(H0 $A*iL1#;v /Gwj@8VVJ4x+yx岲\_bn;߹+(CxvEo_iny2iX^3CfhX<$Q ݁h~ɪ:r.F>U,4HQ 'VہBLޒ#Y@溺V}Η|kJPOUV0 .|ljr`[#L^Ѵ1D )Q.pWѰuwv!_^bPж'#-73j]F-/T5Bmeʤdo&n fw$ҌE6b1K#o+'O+0Fn,%KzG!Q۔UUx #G%-LJۖ#+Bj+zN? d[+juO97Jl/ +KR}5h0w%mE2ă/*uPh}|nir A=OYOO,R% "Μ{W½g4n%~tX"Z &TH d>JiVe G G "NZ, ImdoRIjԐp޷NUO"H{ݡyyU\g0T%0!e`%ļ!ݔn``θ} TvbwbzvؤW?yޙSU@0KkoNSa {91chD%%'Wĥ1l|guozJd(ێ)Ǭg).AP0^Л]ҖY75hYD.=Ô;, ф6\^%s 7åY{N_#Aw fE"^8W+B_dz6y/͉IfxU\Bk ,S ZO+ΨN'./Q0* B9p5FEK+5ު zZaEl۵0GFdϰ~ "u=:0DAP(T@Tg|MrHPZ||A %6'w-T@iZoY"Sa-} p=+أq=!`ZA$w㟏33bQF $ ͗OJu(ս;&-ppx+l"|hidg,UTWZpÄb}Z)HzXz<9l:I7LORBi0B6 0e@KC`/}=٥Xu o n蒡DW_tKz|Y.@\_^,f}8.`ы"-yԺ/c~&'pQb[ _6'T׉bV)>=x&3}͓E%ڛ*tx_GAl^xJsM@OstnWBFdW R8;9F*l"ھJ#TxwJmm*3<0W&6!?zv_j;䊏uEjZ| ?# I@رxR1ۻD!Yf}RP̿=r4>sw 6L')֪1AkXu\{%Q_<Ѯ:6{+fxɴE+`$ץjfΞUX)9@Lb*jKx HFd+iLo9))1FON_@!FX *dSw{ Q suXewʡjdHELjXa͞kO5D( Ņ K:)ѳ8_(|6=xȓY/E_M|oLoj:{}`8gb,h_v.aKlj'X+S8F!ZQ$ DDTc".T`rũX@ڞi y0C00"Zaas;*zg@^̵UsNsZq[3S.oijcڧOZ%?8)] 􍴱8M.00}m='*B R (U;PC Yqv ")ԫ?CM̓D\/]_j盽±0o./xs%jJc=kV8scH5nz KGj _1+}ƨcz/-b%`ŝ\ғ&\G(|W: ԧw]"6J$s؄=g7gj>q_ D3H)$O9BRg'Q t.'Ezeř@O@mR ݊k<CJ'GT?0ZCgP`8lc [^ `|Nw7g@Ap1/ř%` N1q\wfBT23Ben<5>!]f9Kc]p_wfCSE{%5VT@I6uX҇ sIU`)Z{^I-WM8 Fd6uِv(B>.tFy Vy-w}>%nG#PGml~trO/T(S3\ؚ<)윑oifr["aYg~(_WA߿`Im6@4Lm Yjf.'IA VU{4 ˶I_3M1\5p=MӍP=Wq<ϩ?|wgT`[Wf<@/DJFnk[T%j4eg- 3}(~gtgAR϶˹e2FV=rSۙMi9[nrٻu«i| o!e9V cSa9J2+(~=)79 ng/@Wqsgtopy;ߥgV=9fiuN6R'^/&2YMwٵXt(u/ 9Zچ,H*4r|a-8Ӽދ|}>Fpy27Jay_ԨFz[sJ 0Ŗ4b@6hM5}kkTqH ˡEY#!Fܟ6Ը2H~ٺ- ɋaEި1{P3EwQjz&aw{~5eN*R-;/" E(hVXx~d0X.w%u@ =VqVI.a7 X Ag~X&)e+?Kg.?$N ~]!J x@HukCg?W [l9*˨Tg)\)iqR*2Kc&M\%M'~VYDڽ Vc*%+!L`R-:-N^}ȧ(bBMW^M4Qn͙H/O.X"股L(8=Vj.F#4H%Ņ 1=x)wt~ rvgy*6w09wu ,*h.GQ XOZ[/㐒Fv̸W+F"F9`gR޻̄$$bH˵ [dPHիo}(>P$.0b(qHxB@-:pSxHxD@<G#m|lLʐ@(h>ߢHa 3MMh9f.~pU&y0Q7WN_0/F>ٺcp ^swQB49`c>ҳ8k"FQ*&(,5'Oq"sH= An"CE'*׉Q&&EFB?b֟$fז}"4syFL ٙDwgJU< &iN(eCcHoLJgB6ADWȶiLuJO_QOrׯdOF"rƥiE$t,(%h!@ D^B%;,ޔƪt3q[PM3Zg+%Y(JӹiUw=L(aU_ 4<[ Bl7< 0[{7!v?1?T!ζ^NV6¬nǧ4?6DwuK:U`qa(ۍSM'22q"w}9 ]&>[+ja I ڙ?85k萙e {@!g3`#O~$-'Tq0?;tFxað:v(h9y!Q6]:5? ȵ!^7][eK;DzgsXl:ls~DZ|P%@Їd@dsמqk! R Y~g)kM,#"Y09ҔEl1O5vQ26W~O\R^׏N]HEi}~!A=%,1uz9S"'OF?eY@M!Jf9P#/U0<~cS-Ԕ3BgeYQ6cDL 93Y:v8//~5(@b?ĿhY (dv3GF>NKxI)M;[#9>/V ^,Sbo}MX ^c1ys! 6q/U^ase<*KdP5: =܇ %uʢK.tdyCtKDg1}ǡe,"J~nc_'n#;3b[.}pͦS7̴$IPo dDJ;i_<'5t,ox[j`mR1w2Gmw:ىC]wO vYb&7s`s,[<{-eE.hwa ѡ-}Cz^[ 4R^UZdw̺5rm ߺ>՛R0a+ҹEz:3zTGN쮛}ٷ{K]" ;Kȷ^sw3tF\Lم y-$z().B=z>2?x$o{0}O^YS{4vdAU4#K>D">MzO=+su#!65B?tz?#wڂԋEd\õ Ӊ4,SYXfi&~4MXNv\p:a!{K_Ȕw EDIh⬫bAQ7_>|NɇXxK 헄2kEbU]Ic5f}pپ[K0%8-B11%wr ]_N1u]0p1I/# Hl2$V .L:&:G$6\إUźKp;,9sZl#hF˰][;0?l3YJRYw%[k =п8|:U~eHQoMR&H|h0>Mz'x h r2Rl€,g (wZxbWxQr;|E:qVX:Rs;Jy*9TRI-{_,QeQ3>RG?hÛVO^A|AgK,sњݑ7 ѥ.F1p1BK-Hͫ@PlU@:>@QjFsOd3Q<3vsJW*&fڸoYC26/8q ӝzM-۞~܎UĢ(k1KsIܱ27*>o\p„@ѭtR6$(a1F8>E1d-Y7_0p(?LyOz,;q1Tc ,82,K1tl M[ ŧ0 vF]a 7_uIyEI6:xce<&CK=^{obџæ!B>}T2jOΜ=+w6=S̍0ZO꛸Fѷ jmA+z#k3 :'1,Js|ƙY͊ r$k9 4bႆr%~'v6~^kǚJkbR֌׶\&=Bޔ(-K/En< +3_Щ`~.J^i2X k4Uz1wk@VGTj*x (G+bO"l1aLWcE{؞>1f[zDy桻]3Rm3 BPo=l(t D2y,DB#Q_ɩSw ~ŽwG #TY>v6{vTD}S9Aq1)LD;RoH3&" ~+:fq,ӵqYVB~ϞoaHD[I%5Tn+@h;f fQ\G\^hv7T" UE.vC ~3]\k iIwrTWŽ:FRNm 9%sM*Ţ\v2 [2$~_z+NVl8@J}Hh-׎m{_>8CGZ?tIqJ4 sK;sH`oIrzS|4d7W5>]Xe5&N>!{Ņ3@H 8|xQOEr7q72QzB 6.q_\t=f 0\r4\&KHQPhzט?Ymkr(y(UmpI,w1io lq߄Ƶ].Jgͩ]cA/`&r,j?Qb7.h"=5L6Y7'swc$2yvcUXȜ&mf,s*W$ܳ * 29nTSFx8C {/=W<@P"Hx0b]`B_+8\{h/vIGUmGWV/9(/XxCn5> D弐U+Ʉgi;mp/,v^0H#Vdu}T 'sG-Rƣ(\{yJ՝y' A3V[>oӚрj6L7/?* +>0[u[Ɂd?IbK J9Ffo%i巍$ְ~QO wyE -AL'R#aVkBo@c5)XzSWۉJH}Y+Ad?N$Ɉ.I90]-bdRJL+[<ꞤrvkK QEH_"+1 p:ޞj:?"y4PZ-)mUh"6n $.l{G#o@^&'ys/~d!r4"@VZPb:e954:ț-%v"z;fȣJr;"?cSDF_+wRYUU,#;u/캐ΤCJ#ju'#L僪 僪'4!~q2MVzDFJM?HXjC99ͅ$m;g1j-HÄYZ2Dq :j`YCjrO0\Dl =¿e7aW'f,$bn=#N@HOL燆ڴI"O/KV&z &GkSC:0%{s*a*`O'H m'i8^ױƈiO5\j4:U:o| 'J7rWsR2"Lf֐+?~[<'^0'T^1Vל J>E4o#A9@)rNߨ*iKxa| 6}2A+ڴE߄ڗZRl/ s'u4(դZ--wz+_DI@TSgבRm)T >o{'Ŕ çE2h++VȊ47eSL*7JT3Ie[h؋x*}k?su̙gu2/q(Nsk{w1>Pk[ee[ KTx9Y4=X)͂88vD 8A_:+6h3[W)t0{:RпZ o{ڣ蹝{ J:fմV™؆ ubi"f8 @;'Qbmb!^*LJysm{ʀd~BZuӍ@]aCb8^M`gYL,Ep)gOuwBs]|e&Ϙ:`'t_8X<.iO1.nK$=93HQVjd(b.fʌ?o''kw bl i5'd>e̮w% VpKFѪvyxP>K ;oa%j֒Kf_VK`Fp`cO j\gXJOySm^ pƕyPz_+ ~21GWdMrP-CVXhzėaf$xRgi5ް;٭NxY4?|Ic!b[@%j:GƳဖ!Žk|jDޝ;% -uSP Թz'czD/t6 UV D>{>nI90d7EREԷ0A J3*~L-I dާkcmcV/"?v|璁c.qпHp x5b-S QpWiC;ʙv;sB]k\΂1:l^X} :%z9of;RʺZ-- :\ ,FD,N"l- |,A,==Q $nҌsݯN2H>ǡ WXZښ-Q0G o(I1b>5ȗhuUx9vEF<"^tkߍ'kbb}?FV6BǯuHmj"M3Yc\&<%&Ho *PJ|d@֋FQnMs], EQOك(¢)y. p@cAbh zSMk0\aOMLjRx:ؠdQ:,1:`_& @Lj{儣&'4;b/hv[F$H6gLڇg?nSʙ4!8F?p-] a wS8T?,^_fXd|z?#(KSbC>dmLzR$Th*W Eذ`ߩʄQ&sۙj+Z`LV5F st>s\, [Ȼ>a ,DY+RJK&\tu.[Bsfܹvn@ti@3e [ W eϠlK.KԜ.^#?HST* pչNəDн)a9\>xIX)krNOm(*usw}cblV{k_,k{+jcMc `EQqtt%5bDjn؜; /X D}'jJy+2YD Pz'x xFN /E}YJdfv Wt4uL*SM`8I(>)(I)AxޒIkDC*wsxj7>dKi-υi} NlY$KsQ\yD4{$M-G4705]!w?=6ZWA.BόKab4Qv7KJ f H̕xя4ΏmtB&SZ4?[d0&SVFVW~"vNF߲Tէ+;J@:ǕYߤ;*mKkGFu'@hgvRIy|pjpږUpC>˭5<8Ñz4F}. n3B,R&d6mhJMCGs atȾIP{'I>;1{ޟ_$@ n c>tU۾E\3~X,#ʯ;H O,-AOxUzQyK0@I&i);yH[ܖ" 4T(."$/FL13^̄aV8/z4!!BGE oi*︾hkl%ɽ8]:]-g| ^dkj8)˒±bWa%K"`}.K#hdotӢf%VC({нfn/nFIRp0SAi ~odىH8b!jͧx 2 :ߔq-uaOzy׼8ȣ  Or l-Xӊk+vu%hrG1+4 +o";Hkv.]Zm %S,V  …:J6lf=Z\}\<,UIhLZr)~ oN/^t!lb'SYSsgWXd?XiJg ^]̦X>.\WPd&W߅ToJ`:: $1*0*Ҹe썍ɋ7Cm k `g1*L5'OgI_>V7'Xnt3Sb`]u M-M <  }.ЇANuS옺>~f*zM3y(=;Ұ 7%Jt,--h)Z2iѶn+& .W:YU+i*<; O-iy]j^$GxOaQ$j?]<] W XkٚXa}Q&s5WHV*ijbbc}T]67v9O]r<=A_qaf9P3=^mNF}[̬.uXgM:}rK6О[YИҚn{vlSf3$jkz}4f3],@tY̡P3ZҒB:ޝ%i@X|YvqlZ #c0gvyXIZrN#kD_lA/PPMg}Olf.3q(t՝Xr%wY%.V[$">0PwN}"qwv0{2#Bո 89:8JZg/[9ӲP~(h2`@ g?_ =Xya6麵1ʺNB>?R8bm32fX__W oW %yNm/b^:X%54}ue~z|,kpgB&+N_p= U.h>!L"'Ձ.U1媅"#?Z꒻ =Rg6Ʋ)dXuVkkdQvQڬGnE}a_벊eΪ3trCdUIσxx. >?6&Jfa6ݪ0>?^}me};^#%X{VZLbEIGI4%v/c[Xzyd|]>*a_GO9`NB7֢l=Z+ W<KFłWqk~y`>Z*0ec#6`HLgrSw@qm'RFEnb4JBb+^Qf:$-3E 띢dK|OOdbS U҂t!>Oww ^( )93zFJ9]٪+^#.1PEBNOEs,ȳxc/}F]=Zw-^ ds.?%) fl8ɹt?0A&2@|TZHKg'bN*e|fkr(,wLI1vk9zV \% D,_=4K; ua^~9ddQjtP?)O^'x5S\w7w*Oj~]w579Vn51BW_z9vysD1__7+"[`7nOl^PxP צav3sӐ ?/M~*iTٴ$s#:<"0iE/ycCb/]%{c|/ѬX{! bzb'z ]F 1JH^ٻ6?W>fI>nbM:_@"&J\<''WQ} v.)nBHqV舣ONRr/$>cMB ToSf&RL#+zmx/(\Nd[h>Bȵ?rFL\HFTsYSh$#" fv-KX-YC0 )8@z "Ui Ozk'駴\2Ѻ\KeFPy6$cYHo#Q;IJjQhj#(4ih/g%0eYk=3Ooײ `L'2,m! 7&@ɜ;g-|žh׳Vxs;V }i3%*7thl ~bDg 4BC &+ZҍR4۬;Mtw*Dջr1 sϿ-ݞ,3Q4 nG );{P8o!VYRֶz]Mozp𹜠Kzh-lv ϘhA3I h笊߹ׄ)I6lWxcJ[<5]^CB18啡h-^>r G2sDf߇aHFzmr{E XNYڥkL[`TyB/O_{ ӑWʬ-;a5ޤf#Q3t3RFּQIR;˜v:E` n3N\{sUwq/YYsF鮖7*0sB [sq^zVAg(܌|bβ'x߽nNä~oo "{PT` qUcaVsU,$nC4/:Sq,1E"Mky~ZǗd`v 8^"Ƃz c]Y#\8|1=tWm%D;c<& =?2IҖhDe ƞ~L7rMĨ$ga9[іP`4jW~g#ݍ|Yɇ?oۓԟh ^Y4Ty`J(Fh;nDDe>Iu?1<ʄBMpaK8DB#b:E>UPՉ#K`ltЄρ˦FW]0|Ny|Jo;o}'<ڍLNh%ќ >q%څTq"խJpgW)Qi1˫Rq_`sPl'σ"(]|V+OZMwgHogUm:%>\LN#aAC)cn9T84˶1j'=r!z1aJEc"mߒ&X0 fIxmA fpƮ0;*)طRxi6tɁWIE,`S1#\MUvК$_ ;X;s3s`e.)sqo޾VbBtBq;3ydj)a.u-{ui=ƱBev9B#lnȮ %Qh+œ1S}s_#Jk _סzQJbQQ+Ekƽ<(x0!7VBD"GE[-jZ\ :j#2Q5U"8(W?Ц.RAk4Tp+EѬI"M(dRjéT zdgL@TO/Aϑv~sh +hlSh\ } aή膑8|M&~+WaIBJ3wf0 )< FVxO,0QKB(Q`ф/ud*:m&¥YEYK._J̑էfYco.enUol ff6:Ynk[KyؑS>/w\dmZ~q`tǓ~'%}`23R1 mzB$ q7U27˰Cv? {+׆trHd̃y I'XƳw |!|Keqw.L5"B28Y=L+Ԑ\>ZNֺgXwcf}eG A^C |pY-/)-ksW@(FpH$ st{c#—/u?m)E,Tg{{M0r¢7z V 3hxG|Fe"4[.,3P!8亍mzqg `ɋ+(H\+i{m 8İ }^P:~ܱbA8FǓ6Z%rWdgDuo@}C^ @#(ᇚ]7bN؄_Y 0Xk 0-$i#nClr;> cY,囜0Oi&2ztDISf\+{!-23*~%V>8 o4ztk쀀 S: ,x5t`#lM&}dZ^.JDµr nJ-Eڷ5mO֡bA3P1iu@a"UFNX&[[`E[0nn=ZӍ'sN5Z @0DNe46v-t̴C~ 蛿#HBxSKti H+*˩wqJ+q?aT2htΚTGWWZ~P(Aj[JktH*ݭtT0kC:zb4rZ'~k(L13tyjiJfP̰w޷{Eek0@ "~~ b1̩@_3e{]FS]B%o>Bu8o^輽<*!0Mn\/ZI>zxIeXj)!dRfoRNJ]ḶyӘedzX3z_Mc5 "%%4' GkGBDYePJ%~P*PזR?:9MNY&`$P}fB ڻ`;^,@m\(0 Es3vN5[3 7T; s 59f!v:PDش[IlOs;17w`KI _hѨ|f$'Mv|ҷhw2ш Nןi3=`5a@4Ňm/$zAX5~>QllW4cYhTgJ-)N[w][ Ŭv]PwCpmD E\A.dzsH^uae8mh$ej'C+Ơ$01P6H{x;jGq+-rp {f kQJ'7 q0-&|G/%=sG;w+ެ'e`TUvmit, j!Zt 3Abk/dʂ*ʑN0{T,ףX15u`UG[]!C;'ͧn")(~ AdB$k\1[T1 zÓa-';Tdΰ݀&@;ɳhr"!|PJwi8jI?*͋ brO+.Qtqrhd/*gSWz#:%cd ǀq*06š{0HX(2|-!m9X.e˰Pj`ͲQJӱi=}E^;=% hs#>)ӚLcѫy.q@zaQC4j1ɂӮZz!G ;Yt$&NבLEEMhUZ&*w4!M(~#Gf^7qmYc{wͅ,•uk5oXB(lw /*%HDy#iH|ELYi}34ˮIwCL}{bN;ZE4e+In܇fk?\^VvY,@rx⣀@NӏɖI tT-A:d|M3fn5C jΉχZ=#& >Bqr?3/81A?Vs=Jc3Oe sy7e6L,=4OC$ PB $ohᥩmL'aɗ7Utlo:`Dy̩ٚ|tZ m9Pfl9UBm<ĘsI+^MgE_YWRi|#AaQoa-*h;SZc\r6:</YBLĂr@ j$Ġ͏ٹSC%;t$t`~L$6'ײP@="T>KɗJ8ſaHEYo1$npWτPɊK,~Ra.Ѡ7cS'=dvl~/ʧ!*\ʧ3&L  H"c!RBݼ u{OݽfrF1nGDj&wJ&HoU)+uxff®xI_zх 傽mdt\)cD1~|PG-yޗjw(, _lpRBHo=HRl8s0ۍmmlF+u[IwkK0Lb'D1 avz8Wݧ&d(v}q?&_BɍWe>l Lvo_- n<*_4#z> cU/Ų m%gmP& wQĤ G5yZ:u()!Alj& <Ke1xt՘řuV;wqG)^@z#G*=taFRyxV57]96!?Ura:¥y c@>2E_iGL(`m%eb hۓ8!Ry\Nm\.~D}a/ee6 V.jV$a r.yٷ`3ΠON_nIڡb貉2K\=qmgD8ʞJ6nE3zx % \|83*i`/;gFҀiMg&k:(F Hf!}΍)kOd)SٽnyF9X#uȍy}{m%LfZuxH,WaYTmx0&dG$DQ|y}1 1zEMʅؾzv`ЧX_Cqڬ k@fI'`V㫉yo)IdLFxg]Z"o BDgB<ٞW ݢC}ۊtтB<Џ˕tu=$X:Tzzޞ%4CU Rn}cgbr"B&﹨&,)%ZFlMzP,|k.l3fGO6_kNv*_VZ~ЩvrTs9 rk!v` D\h}>7+be]5l \›-fuK&6~THzy1m2Z+@G` eE(.e?k :4\k*ׄWğ1ѠQk39_XR«gcRB> O4̅|_NQLuU/aJ鈞dqֶmk]0[6Di421X5{IlU:fPR1jt%nurb"B /@D8=2C#cU99_] 2߻7G\= .EGbhKz?#k6lDHln 7TĮU%=/rBxK(#B," PG5FvPoPCT)@߭i﶑}j Dگʩ ?({vL-8*4~ר 2<95;zjgsOI&?_BJ0Hgvb# IF $5".(sE0Gs=wV&NqJH*~KPګ"BS脏 es"a?W6`bE_,cf/;bX125D 8f8 ۰m'V{Zw^+3Fwg,3UT,nEۤ~+T4{ɤ͇N|ADDŽo p0 aQ;+[eh;doWe+NqyoD#kN8,ƞCI0J#]2Gm1;t[ 8-xxEGX҉fV<$:Bc8-U8aŔʴwt,H?1ᆂ.I@lN5?50R7WӁOKZ3PIg e/#B)bi4+'1C[kd*jlOQ{xoڞe~&/(Mp~qMd%敨SCYZ)<a;beXx_a_ i{m4N -*VHICGqG)A&B룐uQzc© ++G>ԭ،9b%j8#U`lF*Qp*7ʀ ":l[lچ̜)-[S105[ @hP}FgK\uF/ŌTQsnt=nϋLGXoG2_Ԭ>L-, 2/ý3s^ȃeKfr#Lx#7<PO|k(.ҘP\*chźT? ?YP=#S,d}(hps^L+;.vzxqI3%Ƿ^R٨eB1 Y14 ҹ7vBabx<9MiB m|9s":s|930OELuiMy!ǶB0QIfSjZ*[WJ7lNV^A,`&04py~o]B>BO%Db[L͇wDqKhN0Q_39 Ry{yYĭ?<~m`StFVXl8ug71-u.ㄩې~u(hTpQeiK3Đ;>`"t5> )a><2"onح8Iz$D*ֳ5lLyRct5o֩.?KG +-%3Y/,XpPf= q렶W%7vaEaዓv}K+ i\rM {-})Nk]qS$"RY>g6<ۭ~ލ=K ~ Bn.v\2KknzF`@A+xˌ+(bd~:Xqrrl+9ej9©~kXǤ(Iʷ3NtaUFا|Hq Qxs[+R0fZO)604I^F8rQǟ4T劽Uq[.L"bA_mS;L9yq 4Vf {`c9?\4tF T2NX]FCjtҳ{8bS0(hC1:sm^5ryޠlSAx3Cxchc$@&#H;NP+-A3*3X7fI3/)LŠǒfo L{ qFY\q_QGp5յ:~poN r뷻kۋwoe[i mȖ c9߹M/؍1]6K{R@RAnBYxnn dnu޶#ݧ< 4֎Q&L7 w7 DtvAuP6k@q9/0#*$5UP{oGJEbW6-t<jXzsC?MJ ]%nn1lk$ -4.8MGNhBfEr|4,{.stꍺ~=t ㍐ 6 .I>A IgTYBչ7C;Xg[bFķ}nf7%sŔaWuVbF}'χr%N(rN*#޶TF}ѲƗ8Np #!*J iʝiy)%L|Jtg]Z&^$rC&kY@H'zs$#5 >l}8møܛ!(L.VRu`eŔ+ÿꓓ.b o,ttn_#oTnmlz*h/0S;6ܧ~I32y/lh2بΛ^QcAR^C]!֮eg}iLڅ@ц<)1[{/@Q١s  S~\-ewDM g18X}ys׬ٚ&I:-x_* n5,"@v\ho9*k|7@XATF/[iŝ^܍lѪ&wuLQѳm# O,yMrB[^Oo qteP5>SuǏ߷N'V^C7 ;2M2Ft,ymIΊ'}$ri3G⠩>~_ym|g>mh̘NM`+PI|tɹ L8E|h|>1 ڪgVz2I+F?}oVxK̳8hCa])d5:v*9'JROo`tRSi["+kÐǑ/ [ ^WhmҶ_V.rk+ު}cZ Rqe%hbeO< r; pW~< e|5Itu̸vG)j5ijHqd`-Cͫ}EroƑBm#kuoOq3M?6vN*X“c0K!L7\M~hjCCR'$dVhhR44;n&; NIc)g eI˜`ǔzҴR?'U[\mHnvy9@*^t\ȍf*׃w#wee03yHojo3bKGj]ݚC@iW&YQ7lU]hly)~/@4e l8D_OZ7 싰XL*:CHT̠Gna3| 3Ѿ~5>GI;^.Z(90h5Ѵ8HtT1XPj&(ve}t|U|턟O fRAZ6]jL+a4^Hbfe:ݥ<' "s- qkii^{ b# '}M&Yj@hnut̖ym׬1kdJRڂD(?F4Y]:6;sB*,IZVk(kM,.\Ri;pz?L'+A#SI[r&U 2~wD@\XF؆+6*sb S gU)F~ X՗ >..բ/ćI*jbyXq6D.JOk2:"-j޲YIpu]-|y_)M cL{js8$%!2B_tGQidJtw(|ܨ@ 5Hg#!ju[cͻ͑kf4T n!gRb|NJl_yE 4axnS_lMm3ml5=^f%PV,7qz ؎3hjI§DMgRymb W\#M,$եD("~ b Iu|9Qiր ")4aeqb]\YGM\ dJBq'H2oY۴v#78P2P/w=bDpE$O6w.ㅢCdEI-qBTusƻԒB?MTSS\9iAU;oi} VF>L>cekE V Kq\;qp=Qܣ~g$7ۣHr3J,uo_3s|'Њgՙ pLi"2J$c9uܒ\vK '\5}TE oum-׮]*D%%̨.b;E3JJe9 "ã0yn#y C"fTG~PD6h8=ZkDCNI,SJgI9#XF&Ay3th)Cw^iQZ7`p4A*b}orSqz7Qa|e10q[-UgcYFDNy[:ik]!ha* 䌈ɺE:PJ0aM.g۳Cq 5c r_(0 nP'HOX0;s>@3d-ǗZG;p<-em!n]eYcsoj0)%?=l*Ӻu|߿HF|P\c {0ﮍF t:sX,U7'{7o? "o{ˍqHX|3f/[-nDŽrGwK^\5lY!8d4ܟ&#ܦKƒcZ*e9Ix,3D謗3# r^bE(p!;!2ٲ r;BǠ:6Vȓ6UsS6\WwJ*!h~)˧-X}gs:BwXh歲mgC@SXl5gEoCfn~.Ed}h / Y[#R+M沇7NSƃ]\VPb B]R >tܔ:gR>jbVmPj҆IhtlėrY7.,KJ ۹(f\vOڒV/~i認E1⪵BnS=ݾV[Yq妉,֏n!+>? N87 /Z֋`L( pIVu8\ %/p!f7h?-!p9OlcҘeykSX=v! kp~xv8G-HȄO|[3n?R'H.UJ[־jy*di|ɾz*~ͷzޜHۋ僞JÇJ.^KvjlcCXЃP>QLާcN*#t,hBYKlsS ℗',<#XhrBCn`͟eȋpIq5^k)(Ɇ_{w٦19@{ǜ7G`n12ۈ8|F3r$6DV9j7|(}fh!kت7T^I3i5J)VG, axTV Hlp;1XYq<gkzZ9h tpϞ96lҵ .gK/@J~ql\ٮ]qH Y\'`=gB८n~hNkg,q ?Zr/9Wu("ic,>tTb:%5K{?~w*p `:vWl8z&`L$'w_tBmcϊ4aމ-'5{܉BJ%F[%=ʭUR5fw'rg:Ye D2N&(}zqN(hg!EySdkS~ M0OM| e3t^"\Ir$O<9za@_GvYAZ׌p . M(^TzJO+kgsւ8 L[eGLJ|̨u*5 +ޚ3uivay}1PZb`]5y PP֛᎞ ?/+0g֬u[:pfhpsD0<9, `WcV+FF;Uqn"lm@ 犲,hm eQh-r*=x 2Ǜٗ?7p- *)N =7ZQD۽UW *o&݋F ˛] n+,)u 51<&SFR.wa4x,'=BcM  [Ո;P0逓m qp(&z*))c'9s"9, ~x𥓀[^Y PٜFb;LO~ADE<+Dc4r@R!2DZ02Z o4z}Q}Z[k/O`RPڤs{qb8AuF1p7rj*0*N.%)7Y^4U$5DLu`_.mM#T9Qj~{0hRBK'? Jc%͐F;=Th}*E?^X4 $܅-3S3 #n%cyDŽ:UxLSB2 oS(2=BåW/KaZypX ҿP^(K,4JvIfX?3GS %U68"G Ho/ÊLB6#onˊFYrH&9`%r7͋plil[ro&^c,:MB ޾Z},rgW¦O#Ib;v̇N0)EniPIgGaYJ<*J#i򫉀7ubO,*,'?dI:Dx@8C6 "&=trT8Fዎ!k"HSmt'A\POi}jNeH{!HHtH MC`j.}웖'ZUiX] r \wwW]G&]; Sۑ^XuPGQ'[x>4ETpV&bK!%峥 ~ 㳫qsPWX=1[h+F+fQ rvɗw=i,EQ'J(㲺0s!orsvl$lVӔXt~ohtr*SVb*o $ Ԕ<,Ue y' E \7RISy@+U,͆a$oJvZUmFG IzZÍ ߗŜ>5C٘Z@{%{##=IDbA#,:H">W,V;ïmùozU/EX |{5:i9 ڡ&mW;a4ݸUE>rl-|I_}XF:- ut)چIG$\I;e0 O-9K|  ҳIݡm>.nN ݟύmLZTXa〺߳_a^p nhOa PWh4WOz?!J5Q;:M^,^7<TQYb)/MřN=Pg 2j^XSa'qz 8dNjܛQ\ꪑY#O?o(h펚!jvk@(Ju3RD߄LCԧ\{jM SeLb.^p46w:FhrQ=/p"Tz£,_eiJ P\Nbxs}w#B8u7sH#nӘ57S~LugO,k1rnR.f?|-NboDJmalqWE?=ep h}aĻ~<ųp1'29?03G}J5ҫ3# _ý斦u =|e%Y|;oy]>əʠ!kPRzv>Dm'qɟۊN B@ۗMaQO0<(a=-@c=qԔ{ l(77,R~X+Nr=BRQpEӁ8N1;yHVgOtô*x5ⅢFMA^߃&%J!cz-ދ:SKŶ >iuxޝ$ :V\KXmRT(9+m%>d]t :_tBDs_9-&l6X?] "#rx`X1Հ͋/}d@$ZBzvW~zy=U:rRʼnቜ+X#,#¢FWY0_̷_O(l|LH#-v`Hb/D+0!PlvڀG~ЀKܫpZ6_75la2i1hBWZ%"]w5xL" { =oثڀǞa>-q!( ?}V4~Qɧ3u:: +V D_5I4<UceO:v&*/FaX`"XF-;^5oRwIHPh̫J ;g|oXpIƾVه2AOcvWLكwU ;vw;x<(O`2uYɊ8:y%AJϋpqwqR`J ť =<[Q`|>T_S*5+7}~6wʆU h>]29hs<՜B(WBYX" JZE>jml~3} P32Tt]7?bO&ѭ7(5鱮΂^OdEޘ?GL"Щ(BSK7?:#] K":Y0>U3sxɤR20Eʫ d`&`r u/K$Nw=&dWm)Gޝ&'%}+ƭ9~VANgf)4"0֭/qvO'S\iЎN(C0Gxmt{A~p[n;}*"墈⿳s,hr|2~(K]Ww!Pсp3Q 2,Mq̴HPD//ť1J]xk g-i-'#1/]!IU,e^1BZW[x/3{]ٞC1᷐ʺL8Pp]Š/:L&0*\M^ljAUßpl6Wn"qX 4Ws~xWeܩ L ۼ`$,5}O e n<=]NF-eK$IRA2LH<c6$@c^S*{I=1Pfϱzq$ ZiܚQ^3FxR%ˉ[ih~,71:|~_M(]xlx f'_;ηyr6ٻ`N`M5˺.Wt(ɦ@>YJyT[ʑb1LD-< -s00%gIsE{I lORz:Ͳ4^b45T:i!6Ri 걡?/%PJ~C(V1ugt,QP=SZLU=~s֫AC4Ujr"i+s֏kx/+$RY\9DYdΚ{<:.<$0P#Rg|@ #8XI5#Ӑ@{H;BDK ȿ=V)4%Ga+vu΄S :meH>N?8wӓBw+"k%sҝEz';fygFH̦{]Dföމ*:vvu $eS .TL!aln tݺc㷫KKKb}Gut(Ã`Nɻv -ʕXQpIn(ai0ۘt)^cmF߭O' *b<;8`|.L1y ]l$qM|)UaBu&S/:۪`j֐ްWc΁R 4Aُ?U~灔rVɉYG3|񾠻\un=hLiwL& aF-9&XZK D"Ci" $c!k b̄lE: rrw9'rZIMAuԂ(r =š49ϤXՖ{RW3@&3Lq)Z[ʏf]o'k,1 N˖5{ٍ%7oCYzވnOKwy?ݸ7l fT%v[oHl3ӄ`4JތAwS8P>Gp`Q-u׋0ܬ,%ccVhXy.L0vH{*is·w( W&͵co]hă7YFӕ w(^7C3Wqdijh}¾5L6DNUp4&\eg|Wظig:hee2Fᘺnd]MoGl;Eع.*П^&D4OiL!9qwذL\zʵ&0A#0>dMK5+ RSpg0/^,N~e!n{e{ %3߲GДcQw'bW٨"qOvsV怅 A&d$1R/fꦖng f:ۦs#vGȤ)!Y!^YYg% QuiMXݱ73P[& ]-%,䢩j2b 'sCG1O>;H!!K^8E,};MUm,g Hq7$//k*#&$ =iF6g{gؔ-xohI'ׅ$3'DO_WWxh1R=]~Ký 60Ö6ՑNbEYO.TcnJN3B>H aYdg S؎M+4%4ypkIVf4)(^Gl+:x,i6]dFu*Akˏ˛}[.TOF?~8Wv3j,G4":+sy",$z|]-ޡ?'OgF(܆x_ax<#5P-g^ ,=*Vw )lbۆtFtj9e?Dgݺ=l0wtyny5 ^+)K`1ljPޛbJb3t:ա͞,]8BA5bl~vk3| Ȏ <kK抈,55\p=q@/˧@F"ʥx7{Eu،|L_Ѵ/ RxvQ56 X&7}z_3&Q!N}†Gz/v(Hrc3fjs=ImASkӚ9kXz ; +@&PdIUdӆ䙐K&1۰bJJR sY8'A~~x$PݳK ZYU;MJOn;ZKݗT/gR8\$ҾRyL ;㧊S ~r5Q.yZj$9lwdB 5oj!E zi21,3_ekORn-)3W-GHA8)xΈ7 YNu;ٺhuə 9Rt~7=" +鋱S$ L}29dU!qNk޶I܇{WVҲ KyYc H>TS&X% +ӻG,|]u2*CE [`jJ֯^h .FZ#$sCTZk8%>MBVfɰ?7uBJW0"~D-&TeyMg㤨{Jd`[E ;GZx?(=>CC cpKp]}~K0GwMQdWH<['h%[j-o޾qfU%yc(ه%lQ(Uΰ‚.Íوܗ-Ta~ DI%| ?= g5)4Xt@])IL#sg-1v(B=2^? J)\,VXmm_ġطYmFhUhS{ bfvgH5?VBXɚ{DaE+-z KW>4JH 9&(8cikyffNSu}HRraTz\ZJ8߇1je!b($hWQN̠ͬG]8+ԥpwC dDKw_o%!V_gdB?T{ԼzB#Fv+jCGCL4ĕu3FO +d__v:4J7.WX\ž\].}i1ɭh!G0Ĕ,Ƙ{):{ zn"2㇅3qp+CG/hZ6#3 ԟ,'a!Dy!/H6@TY̓K߁6ch]\'HKr\G;B(Al^^Tx>hTӴxM(;zi8|LV?ewLRtύ˞(unC$agD3sFx›< 7oQ(>ugZjvVwࣜrA @sN'8%aI5!x;BzS!Qx17 e/Sۙ:oOO} FcoG$v`h<RF&50WR /@qmWPŎd2 NO; k꫆#CP;yLtL{-uwʶ{$Em= \ߺryO88H݊ gp:[50YkYxGcҴWVe#`4R- }ϐY]WOB/`dNFqϘy۪vҮBQ MY١iBœKtLaHWoީ-gLba|/`.b Qmr[2c0qiᨆ dZy|+7t67~(aMm),eJm2[7/G=HMnwq7JoThr/{YH]#?@V4 c@a=XWc |t.>#t1h%ɥ(:ryީ_}D=>#o]XHZ|nh y^nr.GܢMmmjD+-l)lamQ ї YAy㸋)rF=KgީO E!0euq$Cp!Ӱmءlh!_j#pGVzךl"s&>_͝yވ_? mBaxױfiWAK!>LKs  L8n_)ʭW^1Jnu|R!aM^f6ZaXɓZ}i Nxߋ-Vb,2OI_$,vJ"ISjnR]z]8v-R9r|2~u$C2<'¹4-@/q֚}dx~젤5h]ޏ1n,+pZ6G-1;3n4y50Q!܂Bv&cՂ/iRmZ,AOm2- _i=]@8uBFa@fgn=pz3.y6@ x+f[볂{9~i(:شی7gԄ )ԕU!1ֽ]ׄg yH ndF,c|lk 3PN\#A=˸,+WU@ 3?/}_Y! g#t /^swV1ԯy7C͉-\,a8+_ĉ1-ԋ'" V&.ahWS+a厖7<׫Oa +1[y/Q7}\#ЀW‹n)-85Dvb6ĚbZIt g?䈳M:a2ndmsͫ'Y0 a((&u;`LrR?z|M@T,`[-{җ{_硥sm#joK tSb<1?zL`}d;U{zlV1L'CaÝi$w2YP:%K+[RCЛ]!.|iݡeyV QE72@ N{KT_{K*'] CPJtcqcIi$FGj7h `'q@Ý+#tMAI#jBrv Ǔu{Fח hnCo(b0c2: Z'u Dff`w/k +eoyI4Jk~۰orv_(]So"v8vLWDv۳kY.2=JHlNňd;yB ' 4Tȗ =ϮjAΧ 7'{;!#83T֧`Hx[Ѱ,n"JzGl-Qe?&K_ DǒJo\4Zh͙|eٹ߯ZZ{iALHfLjZ~OO3Ԩyh2ZTkϖճQ[HreWߩr)wI|Ǘ"h[\0x܀)l )Zn~c&PZYؑzw/ !,^>ȏ^j_!]pL`PA}B5d8h8i-󇳍 |S;-YlzDܰC=8N-J!Ce  d|fD_RMHWv5|6YAY5Lʨ}^Oc6$nlhk>>+L&K]]t;Ѕoȶ Sgɨ-.R'8r0c}X _E:D1ZCMhɻ 9J-ji.Mv;2HugR^=Qħ-Fs=Ws%^1Չ$2RyA٘'Ʈ&"I\gkoQpP>͸z.1c >ZQ;ȴfb.^6=x{(׋  ddA)BH:CU6:~N [K/_UdCM\=ClyOFD߽5~vH%84A%`LC}t\<"}N(xιZ7M WvӍJ&,c7"?}9Υd5 xIw8k*hMڼ'd&9q[zc>whvxP[[ȂjV!]R n ?) A@[klj}fAZj6!ܽ)o'71N6A!r}!P(4&#Y)&MشXc, j+/ WBB25ERravs9"kw|*L*VSz}Qwewi%tߙ(~dm>+$˯#y׻F+ #J5?1e'l݉7atl&i7lLko"c?ZŝWh0Lí|*k+t(o0˾-+ruYADl6y#8Sv;š:VqLtzA>oY!ĸ= <}-2&uD}8X7zULK+Tsl/V^fѿzktF7̊V1+l ["ߜcc]%G$?G,P(r n t$A.7ȋً>Fd||ىj0J# 1Bi#^O|m,Y'Eo􎑐kD؝oxd[] 'wNmBESgX헚*lJ;if9ldxW./ /aKгB6r>|zǪ%s]{@'u٩s3QtCHOC~.1<@qbWMS;㏛L⸖{x͟VeH(mӺ!Oous:x5S D+MH7mD %}]Xrn`{ț+~Ƈ,a?UdŠA,SY|Gbo R%ruf-} vI CHXJT ^B=G( Q2i4Q|m pikVma#Aۘ4$ G?&ʜ.PW`f[ # PNE4k\*/5(U';jY_'AV =!~67(4n>d!aVqѪ%]kB7 .?pni:Y_oʊLSP$6q( "A>Y;A4Qi*M8FIc!j22NL3r{h:ptʊqTǁ͞Ϊ .h#-g_eqe[ig( ʖ SK .X"`SI-zr.1utdɴ?oZ2org:eiÅڽmtIACgj MaS[Ҧbk Γqw&KC .ƈ+|KrW&' >}m"c`;=vӀ1#g+=XLxH.L> ?n@/{Mm Mg,Rm4_%_&~S‹?;B.x qK&0=W(=ߕ['8% `Mib2`-.p%y_J$/j y(ūCcgxM7W D}F|$:<1F75&H:WaMm!tr#c!Y Gp@|;$f~N4 )i՘-?C*ym2Gx2oq##Cy  פ." ,:VݚEtg"TXFu i*9 whB+W Jm pZ?~D{QkpA{$I~nQp pulS="m V2{$?m3H13) W'?pc$^mć3z c9HKˠcZOm S5o6Ro[9Nu 4 g:KП7pAN$ggՁr2&-7ͨ@0ZLMۑn%4(u8eB0Dux#A|a6WLᳱyFbk!]ٍEQc-cJȨ?M/qΔ( X)w̍3 7o򔬾Gre頣HH xVzwM Qjk>y_8 ~NE^t=?iie*n<Qo1 Azsl͏h.W]&.k՞zIp>vMl08ޢQ[2Y5*Ixm(Ng뀌 ~D' C0L"yej(Wt9;SoZҼ>ĮKUJF]}OΉ 1) yXT X*͚}|DĤNÐ 7O?FS)d~s7NR>4z?zuF ׯ sP:̩wt#,V3X3 NJWW gmš-?-qVTڦ9'8ĽCƨ1&R_|5JNs!ck77|Eщpt&t/|kV`#cOë`mO~.I}RlGHxCҴk9ΏAjqs2 >}{ϳJ;yBĎ0ˬ2U7tt|w$xu>)5qEkZ-_UOCk+ "d-<=N-ۣ+́\[B\ԥ9At,Љ=GZghe&[nW@ln> s=p\6͐B0sN/RR 7j?'t6gRzϒ ps ʂWKBIm˜­""Kl}cv!eDž׉F*]XS ԎkkxWBYB'0:l<227lmY.U+i4Aϲ m`ȠtXKP> DrrAǴxB(wS=5`b53ZCѪJy(Cxd34s9;cgs7ݞFĄs6dR_-[j}1Cx^! miF[e bNLm~MʁL|v?ˠ'd\/fІږ#8֮hKFqj?,ǩ] [%_Cs+0=T9KAS5"@jʜܑ]3nM.??kyS{BQU6bqqQb; ;z* 4L^KB Dih}}{O%beg緟DQzM%[wjԣYapi]~n7^xf:b4B̐HGU0 Os;hۼ>{|;qSsV SL>( _ sqCсlr@` ܐt8?ڳmԼ;6V%ǝrg8-lTPyvMAx3IZIMrI*$"sU(fy}N'bލjE薐)F=/WmXHnMsV+蚉0wo]EDg2&^ s?7Y`%$ڏ%A.xpf0AW~ƣޠTaڏˇ<疶\sLoTT^w|Z. TM[rr"zw{а_An>z.[Tg}-7j [yߍH %5'P]mH)0ׄ:-s_抶n6MZI}rfpZ6,8ьWI7q7'e$4R=^b(AG*>5q^!^/t!mѠIzrxÖv,#ujK^":޲ܾ!˽ByM*5! `#np |:Eй- KSkU QGSLЦqmۓ 2`q _e~.]Oƥkui` 9^͗EM=aP]/7o6LF\eī'BC얀%t\]Lݟh]tL;7)<-4mЛ0'?[KD'*YApۃB~CDJ:yx.N KQ‹nj,q"E l@<1Yzܿ9˹e]8kԧviDxVR܈_hRn!~&C9m[8O@TOECb|%-޲ AYl7tjoV w-͉B;aEC{vDDsV[ rK|V 63̻;JS4AؾT̛2$;Pe#"tg򏑧k&LJx0s3Qib-H^hw@~ Vl9 6 Nˬy0I"o Tц$1UѥcZ9kD"Ne]ӈ wVȚ-p=?IhR4WA$0mL RSUUuÝ78&G2&&J+3MjC--ӣ5fCfjclp%ev '!Se}N׷ZɻЌzj~! gMFΕ% X 7 KCPJxl̠hj" }Jl"J>@j x`< |f)H3Gx{TQUIQ%Y(!2_ET9L/[9y5&`e0[kwOCGZmee ]$N9«}ܟ51|(:ܬ5s & ڙD"x:s O9$Rl.g#~b/pEw=+i:J] DBΓINت+m˝Kz$*{S֘szG<S}Ĭ!3Z\n*`,b 5C{yr#GWs Ywӄ|oriZVT:S9_[qfDHuBKhf `"a+x}L#W:;ׅf$`P[3CNe,޿A tCp0z(=^j?v_ӘLq~x, 7$W7OBIIԁx^|R ۍL?Dw?Pw4dCY-HWWJ'{pr="Z^{Sk2%^7C\B0cA{1U8Qn6 eeEd6$~S0H PخGǟB['AwUQgGz> lxu?' WCk[[^[6vY .x d<syb|Y_$kP զ*XPs;/fi*( 1H rF`9E4 6U4rY֩ɣg;>qm"Cjj~nT^i.E`F\;% ׹,$%oħTSe&p%ٺ4L2h/&s~7 8[*se,mqӾZgߎR 2M.Mх*4}|Yf-{&oxoT +vJXݺq5= jOo8ޑ4ՑhWK%)O[kӛD QXj4cʦ@#I^ Ԑ<)'gݩ |A T>r^l%E.>@;='p|2N|I[m3Za4\}ۢ&ԗ?0Z) 42HDRZG1Y#'ȯ8H&O(=H<46 i3sq nϥ BƠ8|E+zDزȹUd*{# [9"ڃL@{^>7ٶ,kaz@{po=X54\v v",l%EJ'O)e݂W*CD|FQй^o-m6r+qvu[K$}~zrg^B,~+g;5N,첿;(3`{wh;Sc<{&w1$v9uvA#\} Htu*5s3ϏBѠ "õx!y{7YuL אȉ'uBLp*1˩rN|: 0j8{SF##;[\_Zby0?ƪ0M^yێb@_vdY }>_kg! úL'69tlxcYt#<, )y4)L_ x>R)1Ÿ!Ei j>r~(4TǬ!Oԛ,R5 <(a}Vt@}h&^ ]=i}g,A As'K <3D `QWNUjѺK[l)m: 7T:e+U_W8mȅ!syzZnq}ݗ6x7jC~~'Uaܠo[ gIw⃃.TYYn9&y),nj AnC`Syq.tXUfZ?hDj`&#|]e<ֵ<c[`̾4cTkXUY,ӿiVKh`2"[(JۉTT{,3ny ~5՘!EQ96 KPO0hcUo٧T<6DžCSa l=ӰBD $]HzC.H< 74KJ,fL,*FWE[cc|Z2oYQќnzK7ޯ}@0>=Cpxҩ?]A27vm YHUvJ\!pVUm m QѮ#c!>$J4pf']e݌\C{Q#1BHJp?K$6ΔػN&!8xeY5_{]]/oŠYx[Yl%˔-g"f2:J|ڎJPQ4qc.+9v@-{a4TUϷlW랺LtMe١ -e,[dz Cv}lz+\8tZٖZ ƽMT~28;p<>AeImS =%߽sentMB__ύ{h{f(%amkp0j0j-U\,s(e(4N p'y88`;5R^]"ՒB#0imm"]z>sV-7m ŝӥu͏K$_S|() =}6,3c|M*i|zru?mDgM=Rw 1Hr޽I$}oLDLXd=u t~0DoBGL֐+_j6q@F,:o~#sP(,GIΘD3yVNV2) L)nCfjSܺcp&YrBbr9ԩE OHP ȌYфGRMsfR+"==Mkvyd!`rMV2q_oHV$Pm4!7JU*Lр<>/MN@nJaovL/o=r u`ՆW9ѧpG_ٜXC1&>-<}[P%,]B \鳋e6J@QbHz=oxuj L"qS,%Lӳbqv5_Tw}' Z\ q}☠$ }Mc{P*[hf mȎCN2\(e V4ồ)b>ί]TEDEvnRrSvbMxL~VHWeQRض,zG^X2( g1 ] pqVWś\Py:+t=Td v2L'jיQO ]q }^&Ҥ;2E]e Ȩ>pjr.5am}pFf.-YON8\,Jns 9!D'$]DiK3>tֹSkY /\/bwwY}6 <P^D9K!a̷beCKղʉ2[Bj{جc Ps)jo?SA!)A6՛;"O: :VE'[bFݳUI䵀[Ճ:%FDq7s :Ħj[+:PD C',:D̏ mfI$('Ǿ~Db}Zcf0¤`үUF8|[cX=kdp5 P9k sVIr.`NcAE/'@wC_PB,zy2dX7D@Or;jD@Fw.AVąٟm1FP)Q`KiGi27ȷ5gcቷ>/Pg8c|j/πh߆qDu^8y` +c>=Mn/B n ajhC$\H{To=;|w!t .]Hb/[R1!H&tr6_@W6 Z04p^뾇>f 1pș)I#ַK\ĢSYm%!ȽS}jЛKBҼi>rՔz7_uh4cU%YPhr5^0QC Wu thujxמr7!9 @Fx$ߖ,UCwAөB0ZbhfsbwgE-DFuvQm7'!73eOȮ|{h= t[FOJ)ܫYyJwKT'6:']h(VYTL>2TZ$2-P0Cؘ Ό&D@N+c٤:R(f0()+Lma[2;r6eMp#̀G تoFXie-8BPڥ-sYCz˞e|P!SƜheKҤ~'XO{[߈r3\>f$өr?ڐ]&cRS @V /+ʔ8q# A3yf/O x>J8= `)DLе LZDޕ)cmfe01~ e" P8=ƃP4O3ʑՄݺɫ(dȹI[ѓ5[\h\N#ɿq8rQj%щ1`b3#Z[B1=[_Kځ@*ľlv%O.z+)gŒX2mi$)ww<vH48'ye*nzH+5$9}b;i)0&=bX0P; p3p3%|ZˤiBwܷ+βy$;s .G{ӽ( #B^$3\~#:vgG.@2hcH7@oܮ_cҟN=L:SWt^ZӼzed(؁v4$E'GX| AT;- 0PMBˍ xȨ" PWk ٹ1o,%%01Dr  EݟjXoJ11j|H~XEb'{涫;2 Fg/+Ca:0qI[\> GBaJ3_iӈF &`,vF4S4U,d㒬pU>ak} @)'3E1n%0^^6-WF? YN2Uj(Kp=pkr馽:?`{ˇD9N@ G@ |R1N;3to>E 20<OCk+n9K CFh2Ja|JKQMp) aiakijŜ)'K.!dY8FRP =uj!@}Ehi3񷆪IzMzW -۹˺LXDlL |$Vt=bIbmԐke>o|Ʊ*sAuϊyˑȞ(mӽl~C\RT 5[V)HՓ\ u{q]u2e5=9ϴV߶_ k#uzm{Zr}z ~ l<' s8b{FnW+Ė/yC+ a}E|1蠴{ U$*U#)vkԟ5la9 6N3 ȷޅOHԵ‚cO[Z7vmf*6+G֥+mksά4ټ O'Ӝo$C -+4%FTj3MI%aGL{rtq>HPAj{Ъl .Q(׽WκBW{َ5⯺TI qT_p`.!-I n_JH}"}X" P` lW > P")Mh$K 58 ~M50$pup'XAPjɳ%8fVVGKWRqA0T(sMdRM,z?JׇŢb_tM`:cݠo3@?)Of?>U`&?Hwf@cLe~uiD b.;ƱPJtލ&S ]F0~-96w/q`Vʰvf/oS ^/ЀL9bmg#d;]Oz"IB82uyv0y1נ:fwg*YEKOeMK/JǦ=6 Ap!Nr3t+ܓŪ+[־"GYo%b]RP J*]|ѬKEDG^A@:͜y0#?U$Exd>]! J0熶Mu6|&]&lQ3`= Զv۬arObBڀvP* YuK9%l)Fk;+"eǒ-Y9-]VUyu4IFIkaq+\`B%jAD•ȫY~W΅,n/fy2)dTeetG"i3/\)w,0N؛D#_1;`<$]K}H/5as Ǹ/ÀqE(ϱRbՌLR|&: ҺxDsb7pK v;PoơZuMu'XVPi+G bV+&CN_|7Rjqz #~/-eӌC1ԑ / ZGS8Du%J~2vX| *jRU$X^ p5Qy$w`"o'Ӽ["/!VVT\)FM@y{ 9?PSvOE8ɑ&N0&߃o$; K/ lk) r߽^iq*XFn'I.csJ?%D{I^Yr͍G?51^sKWѫ"l?5XS U$g:+$~0 UМ -5 _3F;ggaE7R"5GRUnAt JLEADY_Ɩ4 h 7*G,*^'Uy\Li߂NX?0//YjOQP8_` @5#nUHp﹔zEH1Fi%KnѶOW#t\> Z,Eαm՝5~,ǫjsL!(2|N*_Q@2sW 8{f ыQu^\h_n 6 2Qotc bv?Lpx;Cb3FZj4_NU_ZӿnN]gaO8S4D:RN@_MTUPhU6 v"Z̨ҞBBI-~|rKq%_=Ez.LNzOmY!A>,ZWxϤ!lpbylX~/R*uld t@צr%(,k\\7Vvp7%[*i +t cdY`kLw  <\EJi?XYŖ*8%y0,d-R5OM2[wMRZ{}r!nF_%ur0mV t265y~"t˰p$b4G8T5݁ I,lP>EL?B?p==Uw/OL͚I (ӶCG' ]Tޒ.PW/ƺrb'ZkA3L/@ i2.@K7klÍ0濐,宕;YcS%`T.תrm] X`')X)I4Ywx&E}H.@\۹+Z_Wʽ(Uj]94##mj̮emfѲ}!.;v<،ugj]2G^iWef̷Nr_&OEq&ۿjȢ^IXWU[k0Ե8̯F%UAh?6>n:)fZW˨a)rwKԔl+WK&(): * k9] y9{('62v w헴 RU w h|tlݟ`r4^\Cu(tq++挞>KrfTAvcm(i+KSS |L4pd=%20>]-v@U '~W:wݳ+#9͔9Kp`RcIĸ7yWjF|C(2h];)m-T!JP&E⭼Y>7z+1W.ǼV`Ǘ#E݉~cyBȲ +:b{W;Ŷ$ n^[D!/nԿex )I޻Q9&˚׼;!YGx}Vc`a 5M>}ˤy3w.':gx-S26T-'򣊳EZm}pu1u~Q bAj:Ҵ 4)L!FlPtF,XJrc@@ΝHI(GNmLoM-<"L y!opX";9AH*XTcR8u3?4)$qC7ԧ4ġ–`q:顊Zz~rDTdb9ۖ;BO^}<3͖K#|o wEVbvӹjso*PկaIX O@$g*A 3y o_˿f%3{D鮍{`⢤aU {#Nr!Ll0BI[n@>Ø-b-_5=4ar]%eNH}IVeE#P闶.}zB&^)G%,.Z"#,\9n ?!s(wxd\gkp;])RW@=>t[ُٴ~QskȊVZ eJ@(.g.r;Ln8X>%mOɿķ7? ` qY|_s[k?wf51cM-O0a⥪p/$mxһ ytf╼mi$'\s83iEZJ86@$'9*(z3Y[@D ÅPz={9DiL LSBlR;"  aelBH˕ vrCR$n17+zFbj1m&&<2S6vk8" DJ*ԗsT3XYݙ#O3 )]ŹWI, ~Ac Ot7ņOU5Q^7RS9Ȩ$|Ab͊*PK-{>!]׳6E`S_Ɂ$IQIS%W f%tP8B)_/_0Y\ʦcXVC0R!= v䇓1|!^aB˟6K# ǺÓ+TaJ0z/?DDf^a [& ~!Z63QQ6aUpogasV\8Rt'ԡ 4?4v84osѽl;`6p}:aDĞ i+gz ζ|uF^aq[ç l0N@&hq5:uZS} ];z&L-׵D ^@f*}Gh^GM_sdF4K0;VRV;.dGf?P=$vxH*K'o] _Ws8l+ߣf&SjgK"XYT's-= #%lqvx+m wxWV )Ϸ9h(XA K% E͘f%SG7~c onÒh-wO u68Q!w3=O{J; Yޥ!JX Bam¸v)-{hԍD)aq;_!eL^~;bYM~"S҅n  38Q9|F#V;@a/5 B朗n6ay8ISP=?SPlTĢ< :aC=׆ŮZ]w9^\;n%Y_o=| 26ldzC$IJ!)zf(5mu(#\*dE:BR@yy.[dK GiSR9*% _0]H2"7Tjx  fG5ȓIVuC ʬR~5YVec)|K^.B"FIqbւo~%qEq 키T[̧}|G{ Rޒz YaSUee4xQU Bg;\})X\R-4[Y<}-J]怄{ʻEobf<$Bq!iJ#hCnuNz{|6&hUkquH7vDzcL:rvwe]`JzZZ.YؓIMO OKY6a $i5D%9stP s"s*fE&/ޠנ; s'Y؀͠rqm GF~1K[WEgbp\5JS+0k}VAQl@_[gsD¥/1xgFh6 g#ftqmz6_̜C5g;`Whhw,H5b=tЬ>'tDj[ [a"";ٴClz2HwAU-VqMQ#:,̄A&l [HhF;"oj<``y)88JO9c/wk\=hݪ8& U [h,Lj0㘬;ܐ6~F(Ȅ_x5,LOK_ I!M8C%z^BٶQ ۽tD0”>E>HB/ Oy"iƒKf6{4({2Yc.s\USn`{3w;6jwo)?9ϩrNg ^^X=gJr˛nɓ@BBł#%!yoUJI 3֋TޙJ7XU'賞1H]J47PÚNguph 7qx@x>x ڬmj1_|Nq F8Tq BȽt7%Q4kjs&r; })^̙ghQV6#/HGuˎx,r^m݊pT#ftQ?65|~"IޖKDAEU@Z,sMTu /A@##JuLzn4iğWNw&X%g2&Tf.!Y~>ɧ=s`tf'x:̾%uCmU[:{ 5cP2Xb(ι4 x7AF4U_XuE_Ԯ6gTrRC(DifW<#|8TM&,;B) }c6=KULcG}6AWQ(ANP&BIr"C 8|* _ Y,ۊPQd DkkL@ K2V" xgXh6M \8CLeN(J[BhH94b2 w=ײ* ZmʽT$" ;D!>20/:]\q%.Cpe,~v복^4rSIGWqX}9G$S)3Z x_ a~i,}Lc$&Bu$fN\ )1@r(@MWDg>f*H@?M>⡢p:WN9Óxh}nyMCRLiu|z7c)٣,:,g.53Rnid/ .ň],*6S[>25;MddL%!>ݏߣ ǒ4HF&Z7ɾ[֎ 䆦,|hn]?K|7{&Ii%gOmk:8M#(w  6zR.>p9JJ? M8VSۋ&-)T@5`np )(z~F["Iʳ,XmP7>~׫ߎN.p.;ܥWD|DtgQp0e`4v8lx cB'fdNH7 ==D1lR 2,UU.̞!"T>- VԞ!3«$)8!RTiLO{NS9y=a8>‰U8[}w+7^4mZ}IymZ~zY*)A܃yl5uُۮ}UtxUjj9%޶T7(On~T0㶓k U$,^12چ7+zF{uW''⾦ط 3AYbT?&jNї *7Jx"Ukg&4𨝂3eCN^ }ړxv@aI>79@%f4xgvȤAJ+E53kJ9ms*kɆ䷻>i1S$heݣzAY~TfV+ md?Is8tatCr 3/ZmaQLn!zs!ۚ{!}-2M}dg\J_!C1%e>^(ҩ61yW"Nr%Px:,>J0>/@bwP"CCp[E {}O*튂(W,u :7)4`XITTvCze2'Aa=}5.s-\(\l.ڹ)P=lKU ,a&ijm2z75䛻-і0'J7c"hkal@>*NyP 0Y@9=DnxB9qķ"k uA)WEf#2YYf"Jtм7ʣ2Eh@(|-::Y(vאe*@D(mmDyeR;PGo27hQƉ2{8%K#Qs?.pZYRUg\B@RC&ɳ.~@-+U0\ èۜ.eYX^>KZ_0/L6fwV>Q!%1(}~Afi/-‡ i)%C2m{(}qdM+_zTmQ>J -u'N*2صÄ?G5~2>1 }|1ռMPKU[=o }o;Њ;*U͔<r[oʄTR3QȼnVdC2 IkLgvs0z jyqZ5rH3Dݫ D ` Qjʸ2c7qd$+ʷ2r﯌ +ױQkD(Cɥ}$]QV?G7&㛠XyVgGYFXXEXd_X(xAĎsDUM_|TJF"*"#_}КIXuYd$iMz j:(i :S(eT"n}#0{R8\C@ӵÖ;b^q"l9IGmO`=h,Ҝ#_/w`{KAdH,KJ]`O騀B,g1=8aU:f {C_l$oIb|?;2X|xY7.蚯y =-U\:q" <{sxꀈﰰ)w ^nߦaS $Z@J)WER,f^G mNPDtƘ #I UB-^:dI Gm;NF}Sm,7 3ń_{U]'fG*-5$q} |t@X0&{F㚸R}6yB*}?.Q h16Ah70kG75Uq:D1(Yi4 ~BVb:B4,|_eL)=cFrt]C1JA~YW"[Xfq[nbF(#چ}e=@̘upY̩-z?W{O%mhJԿE;iĎk+y@O PGo15us{IaN:oyS+b&n0X`<O㬄@ύ.;|m\>b帬Kqo"DGOw*8N螠i&!}F^SE:; j 0Gۓ CM`^q=}ן?OȊ&ˈ|r a^ߚ@ddfc'с?>U,06=.|!ztf$RjL^`=V@^ũv4D|F?6 CE|BS5 QTb>+b/gҪJNnҤx:elG M`LD‘<!@L`LGjج$/H\#A&7d-` ձ"u1*GjSBQ"%X;j y';"콣tZ I$Qsi`@++s:_\+#"H5fŋv0|B Wh_Y;U+׃>s{)/hK;H'=g BH޸&ϷY!?I Z hBI~& C J9~"P3#W;2fݺiV0pp%OwW /)`r)׵zaZ̾[-mji uJxy),.;J+.X(z?4W٩$hR1meG3lZ,mϪkS@va;Sj@BKA@O(瀯.oH<_,Wa*'Jw#OztDvM#@֍!YS#omB͕\xKL T>9wn8:/ޙj#ƘFVμRIYÿѶ$/ЀI\tB,F U FƵʆpSEr0jߒgX01]5룯!ES Brpci֮E iE:dtB݉T,#X _=+nNXՃQM "!T$M7ɪ U˩2^|J!bUàu9uU 0racf9l ߠRzng?VF!:ZFHZ)sZ *4 Z8 wS^L5)GlKKV.[-n Hs (̡n8SM޼ۊ 4T?y; mCRWZp#(_ Nr|j/],u]CNmEC;Bf:ҟztA,V[p?U\Dp}T [,i N4/^2 +9}$@3zas&jD]{OB'Op&߈|gqyF{HJ+kLVőȖ= dVl &Be`Jdv![G)q.:tx=cDjg-[DLfF?e,d,ὺ_>3.OH d  mW{43NpNm gj!hHgG$7K$@)ݫԓL @9f5 F%_ Uq R.뙦u懁*/o b8"PNGVR#̼^]aFW(cc)+mΖZp}^V]?aC`JK\a&poei4db~GHY 8[Ќ_0f6P]w=9Жț5 +0~'F27!@񨃜Mf c-iLNsDWRPI]"Jr, GT`QHPEtα9 ѪfO#> lI*ǴQjW;Z_њQB\l$eՃM`LSM7!;[R/lk[G/YKѵJ u&`vDb:ڴ1z=Ys|Tʒ0oKl+l@hmBƮw `dqLlٜKv 8HU6Ł<mk2Aed*QXWe`U߫f٤gpz7ϙ$FΘr{=塲AvTLJl*@e%6V LzD}ɅaFƍb=obcd'9]qȎ~l$߱uVkkiswVD-E|еN %~Z6j ?Hk*VP-#.8n휴X)e^k]xGV+5Rykv Af5KdƂZMPRiaH{Xy4_ǬdCʘ7ms{PX,8{ȒVtކj^\;rnvۖttQcd=}J"8^!ĭE aoKj'cBumzԭGc Y8"9Ir@(=V<+GWkz""ȅiA`^򺧒o,DQ~G?GW[]DSOƾvZLx=FW   xx!;5H'?T]&~ԓmvr;pkNn&ASr2?KaEDW #JJӲ]ڠ$pl wBrSR$6f_/"x P0M O,'EMr쾶(f"K8+/y](>:f r@4ofԻTQo7Cl1߻\qs$ĚJNR*xpVOΊrPh>FͯQkҹ) ''|)Zlu d Ln&+rt60]=?E˥7hoSmiYtАa^H饊ard(c{h1W>8vAp oOOG~Z%lTJ<ف7=0:IUᙄ7p 榖8ЕHCpV` F$t,Y*zuTTCy{tۆ.vH#_xi׋EC [߬iPB0E+ovn>w4}Ψ:it@U}|^yXonQT,7JֈXP"{gTb.Q R&gGQCmNUKP,? US`z?(>&R1eq$QR܂o M=AgF#7=L"f0Bw/ ),Yw-P}֜bTayDMdS1%]7[2%?<bg K7S Ha/Ls>-{ T0n G4>t#w.ugk2HNt7ŷ3CY^`V|IڽLLĐ96FpRiS\ 8mo%][f6{| w TPi*x3dV!EԢ:qE>NZ 9j2>—h;ِR=)̿)X< 3F#9hO3/tY=t+@wȘUO*Ã݋B!I85WoNkQ5p56$5 a 0o|(8bAkLpu]O2:A&uj,({|[`+VNW4beaT!}_d `؃z9l8JFɦ@(OeIz79ؠrR~,Sӫx<BjF9 FcVjJY3s5%ՏNNj[nCutT!UhYj$Dس6gB?,u4Le"p oJʙ<Vz.>˻^P$~ 64)Ji9S K([!>M'b/pS⩓toSk@eS{e4.8AP1jRp@^9YNI x1.(Ucl"IIq%=;n-F*M,Z_wKD{FK`";P|c` )ZyX@3 ΂8(6j:g s1}K&!Љd F{= ^_w;ФÇl|4k xBIfT)P7X8}_{"C9 J *2tLֶf)SN749fQ R,YXYB|nb$U=U.ފӼe~^)4ܔ2#~4՛1imzBE裪-z{}X_~F* T.Ò S;bƿ"f?ϵĄ\Z?D!X`luZr/-`4b'l<;n͔R:=#ioVla֧&&l=9Y=[,wie@zBݔ@@U>q#SE"vvKZ 1/ )FJ÷ i {ο+Z*~b5iU=pzhmLۦ!lvق8X}NU(YY5d62_oc+[W}[[W0?v⛸P2[IHUNO ك[/Wo,Z0n;{02&ksl>tGaKeH` "j?snRXV0`A8ZjQx2P)KBDnOT*Zn[!O†IFƆѸp^7;SX0Zr< 4…bܢŘܙPu`O`Qf=@/iXŠ3faGxgP3YJdTvYɐ+4T a<2NK6e` 葩s`p+؈ k3칊֕0"F2׹];36S;CH'~٨]M³HTl 4kfJN.Y.ܓpJ&Yso4fDUM-we}x:mE;I1| _+wS>)#*WUxA(3k>&`rL9xUL|tN Y~7_Q6`qG4,q.D  \|jX'2- yɊ)-Ls=KS`1N]A޴L~텥h=A0@\f0S)ivmmfA(#} H*:4{hWlI$:}}rd˔2FM) |+.qjecÙ. )={zϳ ezyDoL(\GQUVPQ4>  T*P.OĀ)S,pa1:]!&VFSdgKjJM>.FƏ4j12t4f{x1p&H-lUG!_~7$ к[R| diÆSaTbmvzm(sOBXaaS ͕ۘ1sjCTay DUV.͛B:y J2:֖;!8׆Vx6z5(hU z(ȼ(Aݫݱm+pF!T^|g sـf#1u֐ xt?j#; k9AMDtW.g_en53wx^ete,Tв`{tsz3mj;vTe]q`x aw&8ڼBz ?bea_=Yư!ѐ:>Zd+:v$6pSG"=ugDfZ#ZBgmFcԒ L!Ɛ +d.VaQs{ Za2վ^XYR oO2 6~w$2Xԡ6>_2R5z*12+n6_- 9׳rq>'z4"$Ae?]:")$HQn!1Ǝ0QY| [m`2ˆ}Y_kX@DӶsqo<<2 ?oVA $*/ev=l Bpn˺R*0>B]Pθq+aS[jowF^"@ 0E> V^ 6Mpb@en^Xtm)'macU8L|WL5Da 9;\˚Ml9;P΂huM'ޅoJ<'au@ :y1ѝÊn_*59_0#^v$/; 9]'ž0vqLxDˇqYt`z. tľJ4A3PpH*-_.-P6M9e2bq2Օ[ n;?ci t xtpa-s]qH/yY#qkD65 `Ao)&.Ʊ4Ċ3FЉřB$nH YĘ:2szhd"j=EYj%\&\:}&qZ%,Åq,GiU{IYfdbl_.AhgfNWC;dTSC>XsD\_]LVQpl^<qybX?/AcZqt'>LyuT.F.i]x2^G萊>56i8Fx_*TSZNՔܸXR s|Cڲ͉eA=a6>PP[:P-!gkjL!dvQP;~R\o< J,1wfhK0#{w#e&w\˗g{1[gO0ye ՐT/F'@2k4`:+i_Γ @.ߠϕňImMlKQ 7eBKnj=kY$E^TqO# @ edcy`."j{Q*YVL̏x;!KjEof 5Dj] AKϘ A][}2Nv_HD9r ]NjhOPÞYl G;>8D=7Nǀ˒I8v'ouǒ́S: eiM촭rGvނ7+lˆU݃];DIoG_dھy0㈌'k4܍85 j֑1_Ú )&Vm'ES>Х1 Ĝԅ2R`n ^(CԳ,{J?mV[v'ts? ;@,od39/wM5:`gk{?$:80/~F6hݼKd9 '(v&{ ěTNo(4kQ&|O@X LDB}9,3xX7{.-V[Ȋos ^gJ^nO&lNt՞eA`^.D0o;[ҷV>@^<{1uu%:p)c u,suCN:RnB4ņ8@8g1BssXv/v-om5 c:2K0|eT@9K_(1#\.ƩUńiAMW)rdM5jE u-r-[1FOγRٸV] }zOtW 6` ˹U,0y~cP19|/ٛ5>,l6ƚh}fv? /aFfɬ#e/'`,7(D1>_+8_>Uֶ0¨Z lkTlyB go9k3qfy;M;C8;5}SZ,<`OeǾV+s. 1T } s6oAi"/zGqú H,|گa]pٓ4ѻlIl(Ѩ~E0~Njauw*&)V?#bQ! zae{P'٪e*!9UL5;Vd2Y_/BA5BJtphugƊ{ mܛJX畹;. GeP̴jzf#_+GZZ|0?V N oM}w8e<㋓\i+PLh <2ٳ[,q\F.y:gh&y W!鍐]"'-~eE2Q?\wtGDv+(Ha|6oJ 9}םDg &\W" w6g"F28JZXS5ar8BwagEwD&Hw"֖ Pҙ4~W侑A^dKkZ8srCBwCUh[ B"ܟu,:$o?B~Vj('1'~;h6aK!?~!k; "K˜XYp( 0q.H@~zXGxWـ"OCTQ[p)ٵZДǻ#֮MsjJG>_KuIh 1 :~iٔMluAnTΣƷ\+kDL q ]r_]p20]"~ĽE5\o gpC "CX# D2rѩ^q7 ^ T"%`aFDš+:g5T[ yrj<>J ->zecN cDF![s7VR^LeNa:ŦڞWV5oj gM)7jP}J<pZ&jHn僾>G&$;J\[ӂ? قz$$P%29Mo&lq&G43 ]Pl'upա0%P5$)񡥏ǯ|{gz4gTvfm2fN w8#+.7A`ͻ(;tm>r+s<+*yC?I1ԍXCfǎRbe0Gc]mhY0[ %nrFAd5 ZBA7vrsđ֠`EQںc\t/kr&&,Ĉ8 Z!c8n! t(xXTɐwD~ L̘qыĿleĔ0+>Ct呠=$U<9 l/Q z6:{ͱ_ۍ[N:n1H8mwts廪I3HfvFuRQ@vm_9kt馶sfd|KӉ}xl(q)<'NuFfdj6{[nƺSMjTNq +#-OVnS; .h r%.8Vvmv]4 nv9*Y섹-@./'ް.%+ǿS\"gZt,Γg/dj6T^v+[i!SYĂ^׸vfZ1W^qfsiP~#b~XݡX^S"ԣ~lФlsc4G U5vCn<#׃yne^a>9*"]ܔ~Hֹ79k d! ʏˬ60`Ώc:X94%7GgoYg['󀕯9vȁvoCr>ol+!ך[?KHrVUyvQ3^\sMCͳ:V=W׮YNj؞b2sf:R!~|?~C $. }ט29׮7QH  -͚TB+#s=1_ iRߢW+bMf&a[_ s(.lb%Wn}Z^_w r szuJu:n ?y)stqn,}ZGHFu٩ob8x\xJmGzʝnb|HܖyִE6X;>h*esoځ^A (AL w߲˗k1CՍv^ωku9c=+4TXZ,߂WiFjσCҊyhLE;VҢzZ2 eZ3F5"i.G&GPtEpi'~({-ĸeqZ|4iפ<`uuyP^-J҇7YS}"<^ɯjXwU6M$Nt/@yͪ-n <}V,䪟GxUED=\!7:~A]%bɸ)E7S)!!-xʜo#|mTCђ#5xG>=S`^SU~-T^o3o½ta|)ﯶd*tR_&6җj>͇!x2·4^S*{1"ɏ{,>KTi Cjsڥ9+,.1@y+U[X>CÞ{n3G叁,E>mI)]m֙(-NmDv -h.Z L* %הl!H,U-MXӭGr8*nq5އ)ƀǀN O!g!f!US~h:h +Q!4*L[<T#%KlbsEm|at>}+ūLGH^JRv~_wc@"nip@,X[ Q2y 6㣥VcXuPw6'fu1ٿǯ% J;ƭ:C]8!-w,{1-MejlEzm"^)AQԲ\$Uw5fc/+hhc) F6 IGb@ =ݨ(!SXbqQԊ;jcAI&2V >cDJS<9ByQ gN3;-qǐ뙡w9lIo"ܩ1El/b.s!8&~:)*N^; G+UX8wTO)Ѳbv0;0CS- ueCriFO~( |KlȂ#7i4uѠb& ],EyFD"#aS)(B5mfjh֐_6S֯8!xRk= -d){{'~\kvїrC+QGdI2qZbjY4mu"{" < wYufX0h&{%Tt gĕĎ5Ie,0j=5yѼU K[;'.5=>ǻ쓰 Yc]nikD}i"CEq2 1w)`(nS<Mrړsʠ{=3uS9`kqT[noQT}`9TrEx~ktc7'tj?,Bp(/^X`^ .ak_? ? W .E[ }u &bOCvzWx$ӫ~ɿ$.*+tf(:mc\XuzEUO}!9Cj\axK㪌"PJp\ŋ"u@[T6$ ]DwM^#EZX1bAW8# OBJvHġ:z0x4Ey\g靈oin w'U|H[9wIU1‚Gn3\Zep2NTYPj RP!6!3+V#"&$*Sa+TKfYV=u&wkǸ .cG<ܵr?FEmR6m;X*3{ԲF&3JP=dT4eD[b,Ovu0_nWcU||Q ~r|qApG`C xV*J0W%ۇx 2l'A?& r&^]|v{4$wz$:LxuşbJBhɧtpٜhwD!j0 @C& q:q o&0oO 5/1 @deׄ;"kT~la'DSldVp޿ZHzGWAY?ICIqv )םXpj:݆}/+Y:(Z&4> uh jWǕl5)@B#[wdyQtXa:7\kֈVRaV&ѽ3;&m,baN&e'kΎ6q59pWk- %R83e6.efjO!^qK^7ElAuTK_@v7*ZAIQ7 ͢J3CȲýiirDrn$aP"P-tYk^KLjv^D"y<rq/py COCgE|t~$ފu%ٟFC$Zv$y9@m -l v;֏go eAIɿ74ߍ&TCiD-];ݼf. Q ,bBJ_+"֦Y:ㇵ5hqGdtnu s@>0#zq S r#ц0.D4.EnUxX6ttĠ DwKjO4*O,-D\MוFBN1RKmIדɌD#VʷTkd{3P'r]w@ܟ- ߚgYpY_kš/'[a_6&Q. {t̲(wm'"6m^Č4lՓvG3_2yMHt8G,ժGia͍#Zt2]l'G<*kj8,p|3QzCNB{e.PjBNPE M'Tz LSnRKu H=nl` ]ώĽFr1lGZ/<`( !:C}3gqnhb "%p'lrs@`C,n64(LMm9HZ7#_YЕ粘<]rq bRěB1h%TFdưN~+lN54϶ڢ=J!"#]+D6 /r mgXҾB܃ڷxE*GWA^Zx0$4$lŖ!}#wߡ",_H%]DQTw_lMH+g3@22 'Ue 0?~ۥ# ĸޏ]ơ wK*>ȴ^zL"𵸫vgw= 4FR8aRć^lwCaӨ^yv}@*P7S*餚2^ƘꚋSi핒nRz2׷q| :\Y-=JԶ1.5,&̂k %(7jAڽ{xD̬L2AQs/ gWK^(XQ&REdUq,vNkE,[޽_4Y3E'W Y\hۻ~xBY,ekhpZdIHl,ER dBެcfp)u=岢#^:qNrp.h΋.^hax;yrS-%؈1LTb>7μJbE]VU ?l9Rx=*j|yefS]h6ѫi6_nv+H O=گpdRLj~5a %+t݅QcVwS5=T;WźɁ`ʀΆ~mORJ{|J[,{3LGj<=v>p(S3MpocdI4,K=Hٺ/).XH!Fs@W bZ*RùacIFg)\]׵G8WPSDtDT=^}v]55{4SqrR lh RkȉEzH5,򘧴5@Խi+{yyEKca^Clvi]z'V:~D*m\F CV1ro0CENBc6,MEœhxdܷz`&!G.2[shUhU r%֕"D%TڢD\uG€QYZZN&(f~#ljLQUe{Y/*27jɲH7̥@п ]s&KM#*ˆde6!aGDŽahHZ ]r:Uג ݰ^T_?Hz%>~l;2+LTj)L.dSt.&x|Bxc,ZmHA*hM ɇƼ`)9Y-X 4#҉o(Iy-,XHX<`4u*IIr阣tcoK 0I]&ceL䓚> Sw-iO1Aiyڕ>=Zm ћd3%n_Ձ+8Y_׈UMt=y/^}gd>Aeb*r/ N~(2.A=U\[kdsY!^TXGIk ?&Cjd.甔B=~Su6upW6_tم=A>q~0-qD۩!}>0S`z^b_S9*g=5E"/g̶ߕ+v{jzptsp%O,@ȩL\J &뚍k'~y^¡vtU&t=w / @AhH .'( "k~`ƒC>] $A>ZZdE㹯ݢX9W9S>jm Dy#iH{0 KL{>b/*N쟋<ɇYiJFM:aR>oHoU*vM\UnEB_^\9:m15Rs^̈́A UF1J5aV GUf9#g i@2 ܇d <'?(xm#dSh JNq }uL+gYEhr"-Q)V@_wpD::)􎑫y2p4!I`]S]|Wu e!ށ JyNE7j+H|ꮘ{RFW 1尃!΍#J|Zb|_sq[)J!qM@q6&aIQ7H%8ukV=1/+_Q'?+h Ro,DPDk_jG0q)WN 6*l/m|NIR V}aЮz?RӂN"B=mn4cU!5j竨NZ 9OY=.o{=I+fyzI7YP5Q}vO1V?[>Ba԰h\Xad5r;]h|jl^QRC8B5ynfށsA,<25"bhk5(2tծ\Y;xPjF)[ޖm6OXR`6o]Yv9@"ȻHJ̈w׶>fL`=Ty4|PIL gM$lnAݵOp7Z# vxkBi [-vnwcaq~)u Tb >R3G\/|v$ȬsmprUL7ɩ7jjP} Ƴ91d cyV}YNrr7\>^w@͛fQ8E'IΚ> *c\I1٫Ǔ']%. z'V\6+o AJPjzARK a)"C=\^fXjIőGsbvX! ̒}sVHm#24&Д#[Qq?×骚cZmH'&?$q&,^upem'gރ\'ӽ`M$N+_@$w[<{iwFZ,1K'_W/,ծP\\տLIhKt}EILdy $yy4E]qiL|IlEu( S]J_G~(LQh/32ʁmÿ[HD`&OA]EXd綤֭ArkxvOZHLwP~" '*빾i7(-}(tjc,~"wf^s^a Y_3Py;g'"0$zF ~)ЅË_"*ROJ2Y |OXYw:J_Iwj%Ѯ -P)],_'5aX &͸LYAzJJ;¯A~/rG^#?{z`E02\6.ҵB8>ºG Pq&sQLU_"ֻ,4G=D CPrl"ΞX_9ZfNC#E }6{}R-pk6h-/\ui/N:ۦhkA9dKb JҴep`d3pwnB/|MXWYGF:-Zw͂-bJgLڸ5x}2F',JHF /wSPEj\D7iUKɽv0=,Ng vOM0"je -h4ˮMwt"rCE==-*=g:4#½%Gxr&*wlWq3ٜ!zl&TZ vm6?OSc@h7J;ek%l/~<3JZ+*w ~ko-\uoHW,1&JKśo99PսqUq V4y1ARwW+ᐨX>u 0ך`OP2A:>"ܪrڮxJt~ggo$dPZ-ure\a)VUPE;2AFƎ|#Oo!f@4r;f7X$*"0ٳcgSqtnD ߝO[ˠlHovz=-77 ytvf ci TZ% fldv .ԭ:Z'Axb!í;l%z6Ibe^Xyrxv Z 5sWn3sVQܮs ̄\OU| z.l3-=#=G ~;Wi#`BWS% @+fuKIHHeʂJo-A%o1<M6 j6;a/-Q|JߨP fb2ܷ?&қ[IV59`GSr9Cao8&E0mLKddeC'Ɓ΍Ai_ύӇ[2HiaJ5;ٔ`CzN5Bh{W/zӋj/QS:8Tr-yĈC;f!!9 xZ31Xx-tjb`{&V#FMwvl`u+j9n[+7 y鱌h}a] Nʏ^'Y*^evR<+Y ʑ!5@Ep/huk5%?Dھ6um|'6l&{ǀ=_{+PE LjDk@;/faii3ZQ:l{ 7'Yu}'>m;X=%\k s ZL¶<^%T۬T2E.MP{nߣoé~#Q;?:%DzD\ꕴAF7Mlm;dž2m`'a[G]9u>D/t_HMJhP'ͪ$]k#WuOmƕ4p.r,o'm1 |ʑ|% uG_?s)*4+٥.l' aN#O~Tfg&UdvY4Pk!V mnW" s ԵwWB0kI?gc&\C (*:mFQkV^x;آ꽪pւŸ9+qQck";[ی-ݷ2Hmlٟ!%&6!0̈} |;73Ne3Ww=b=6R.GP ]hE=A5pB0*0=m6Ѫ`q*`g41;ӍFꨚݩ%O:09ׁFn*Q)h~yݙiᶌP,dz_?r"/UZB+;:$mңx!gWp|if& "?|A~C8}*_!qH94VRbVx": /l_ Oj8g839 z)RD\ ̻,py |n#cpn1q C @ͪ} u~D6k$C\jj .aH?ylü?~C-5eg?Tq-G>Ȩ ;K[q< D}M|hK/r&&b^QӂpBk:)/<耞e:6bSEB3$Rc;16Ci!'"j#260F,QY`0ڹ!H1Xݲ}'U}>À$tP&(+ԷD_$7pLWn"b} WwRGK j](M u}\i̲plIf{0p*Nkb5˄ҽmhڭR aPR@ *FGMǼ}E[p vR$>AO 2D/s7Qҫ̍ȥFZՂnr[~["R7ĘboԵXxm±ǻF)vNӱhh$Cp,UMZ VbH~WVf= {Pxu$i 8~B͑ljh!,tP֫Ch,dĉH]CCVcm OǾml A_<&TAۃ+&2U|zÎmbmt @(V¡+7AHrw2ܓsPE]-ao+Ej_!BsU,3yg7)4p&0^ z!sz2B,F{@=doF1iIl=Ӑ4/KgL^ :SS?P@uDZ>8g=#Q)7,eKjjkG`oqUThw&$K*(Em}mc>7О8_I.:zFQs왏dYnZ穪 (n`ȔUJ@lʃѿŖL FpF:xtD6p7zP~)j0e=}rӻO [ww4![Ġx>ͦRU)jwbj7"`. [.m1$畢yK6\Y((:O`A՞2q-Y k<ʕ|l:ϓM<]"9U~'76} aÀ)vѓra97tE`>?(H#4R]L34,4#ϯޘϙyo}>>^}x>oL ŇL E95וPb:mc1}3Tf(%I!'W J] JHH6'Y{37FchǴso)%]?y.7jkV} !IgO?rDY6BPeIaQ8.mʚSj|@I"XbA#+lN+ǒdB /3MEi$=gK+;+$4ƿ7iw۔׽Yb]*B1;>[蝫i2vCp[{B}x@dvzcVV:z9jlR~D@ P6߬4fls4(S{q(Hc-Šmˣ.1=43yM岖LӍ)QM#F8s^4Ldօ=3\\Ȅ/pEB.fꋅ%3r hʊ?,T?V{ sJ4%O'ؖ;ce|0aI`͸G~<SO=wQ&*UbyY -A\ucQ*/ct?DTJyb !VzX؛+-eq$[$ufNyՕ0Wxg8ZPW/ÖV(C3x|X2kxm U:5GPNdUa%l|*'>wpжZnKb;e4ƣmd.ֲʋVHϺ}~PiAzBüra2-{rgX;P҆k?0ơdt9Ot'D*є!bPƾrSU|>f54ؼ͋>e%N 2oD-&yN %0D mԉ)&RǴt75«D' ?NS \@qxLfШ`-^p]l.ڤ0lJ浥I^4"&qCb_C9%\16?t(&J힧߭Lb> i͗T,FV3*!<8Ql*p?Sw$X7ϨY_KKR*Nk-R#5rcr@@@îI8JKN4.o\.uJuy_*ꐶLvQOR w6ve1-ޝbxc- ɂTbT3(b: *ꐆqr+1G ^e'G3KwDm"7u}L .Ҥx|\¯ّ2-tr0K R[DP3]`}nW$i ` L,>njRމĤe' JIaƥ+ ߬jԸ҂Re_f}ͱq( }D:IWzQ /I?жY[SPt2aV7?jG0W||W']h+#e] !*/MaXzBP֝yY}8']aVcXBH$Ssh;X=>5iA"o_ϊ>4z2hy'm3@V}hۥƧ|,vȝ[,bx@aOͮN;'|EFy#@0qͪZA 8D{+nR9^5mkv7?k$-r(} "VF-?:4 o]qIr„Ux IpJ~vHHb5qWRC%BܨWKr\euLWݹc9_ 'Wi!BӚFBc4mOH.,P2Qod= ߊ8w#4^h@j"EEG"}l"y? oauTW|wm"V;=MO+a(tҕN$qϷK!ѿ"<vH w\cx.AT͐qLC>S5mDK! e(AUZ*V?IK\ýi2-CS,֡0X5x#FNGh'~AseYROZ;rcT-2Pm0CHﮏ1>U۱TdM/ŀ. ͢`^@J'基ND\B gdwJ՞m $N|p-]@59R Ƒ"˵9Fbp7c%.h1ywk⾌j}@TX-lS7*tk2&RGm}vwgȕHU!fJwwFuve'/\ "qrj [Ҝ/L6ƃ[ kUἛk{8]Y>F zx(.Hf Jh!(# rd!oJM Ftk,怂7bapQcTzӑ"Ԑ ܗW+^rF:@9-VyA@C"Y { ^)&E(zy$0V`ܗ| ,\elmݣYMiC5;mcI/r'95IzZ1dI?'vv4.0t}> Jss]C.XPA#-kZ`=.rJ)}pi;UWN%ul[>״eg|S>@U8 \DsF Zzf^aе]dkȾdz%Am!e< *wfyTp@s2kPPZZ1ݫY<[f +z1y$/*6^uo1? Zx&>n#?r{dH[m\S4%{}:dDM~vf.[뗇R94L=ͭ0pE\~hV!qsYgϚ W>CN3 $,+zI)p_(0f ūBɮ.cYG,}٥'FI "Qrو[~ݪOTrn2,XG82`Ca$'+K[&t"2a7)QiJУƖm} fAE"(~Ddo! eb߷Z Aqu6bW:Z[~euӺ&2}mJ7\cjm\iʜQRDV0Y1"4 N`J)PuJ?mr傢o1y>B/L-Sn&Z' 4ߐ} X%&/"=tIK%vvlU*Yɡ)_@йò~xW t=o!UQq嶎royA|vCɋ~ibl5]DMWJyONȸ5|eizx)B$(Ri`d ^4RL. &8&Rs+@HgšOښHʏO \_ͻ >t=vp+Vmѵ\0zp_ XʭV,f1a%ui,b;+Qj|eSi;[+uU6oSw,|'5&dvl"8^♊|(41ڼ:}3Y_9FXAQ $GWQY8WM$CL p۸ K`<0(UB'O:S-o{v eӏc-ߴ66VGqa؜^?N/Ljr%-&};@ SG&&௕68_+&04qHf.AHv $ŧC -ټոgtIfsr0INq4,zgƧM1YK6:t(V]anwdd݃ox",Q#127`[oC=<u? {FwH3%@?6;syL"^| -92@ f8Lښr[PV#:[zz!^4ߞU8s.(l&lc{9 WڟBV; P9zM⭎"1o^e: >s:$ 4A9=uPG27;8OmSW3Uk b&a>Ŀ+)Cڬ ALg{;oa@[ o- })Fcm0AQ <8)_~7i{r6%5V|{9R?%Vc_km"\, ~SĬMa<;WPF=sM6]6$ bU>ūsN~ 8,ECx6LjsnՎ1n3h^a;F?.''kz4<)[{Ķpmc<<=Wٸa\9TY.9[z] ֲ[|TJu~mퟒs}c"P:JDKc2H"90$QebB>t0Hg+r# ˓gJhL=u ݻ[Yi1Bq2:Y|izhl͏ƳyqPZ-uo8PQL\0XnsC+uӄ65sr8Ipvgɬ.rkm4jWW>S~r5eNզTfPl$M-8CLiYX2U%!Yv!ٞ%C4N&"(o`.4t$"H~5r(P]m-R_{`V: "XwIK0'&0;IDx'blv{FaG;n_^' EQ . {NlWB3Hj 7DLe8#/.D7"QIL=4PaCS%x&1YS'JQ(*(As,n ?{JI}ͻ[4)^<헌-*i`cE˽f!N ܪc^;S2yL;B= fȒbCqIڕ:v@Lˆefav̺QhO(J]R', _cs9>`u/d7(*MCX@򋿊/*Qn`N:-Ttޫ꼓u i<obQ0}UhJYmwじ]yyFx2 #FQ`[5F5:2q3b3!*kczy]cG.t$!kr!XBEj3X-O舀?Q@޵v\uߏ'OI$nBNmY~'4=g2-Kǝm$VqI&*,҆Miz\(~dA^fqᴴq?Oe0Lzo!Gz^AmVV' ;@=֎FaEd߉*2= ͨete$+Bն#U\"D Mm}A !nbyYOm'0MgIc*Z+c 5w_WuWpv?^\H E't oSA{TGxM~5Jqy9@fYj- x˹7iwz݄CBQxb4y@CU{b7fӦ?WWG[4d#c(jE y\{1Q^PQpGabQ;tXE-u$tRqjsG2_g(`-0F Kx:{0lA'D4ۢ[x?aEeP& gp\ܕXK8Ir_v5d',[e3\g~.T^BoY( mKe6}tU3 up-'I~w;Ay*]%rѣ;qC:[%RU?Nʏ)|dNVZ?d* !| !MgT~zR GmzPXEH['jA 0IP #anqd>TKavDh9{x~`@t=RSG:8Tj:USEcWѿx\jUWDD+a\%s S *}{جo?Ùp8LId+JEINd '؞;5#*n3@dC ZYB%R2qMLT9䐾yulr[ٝ^1j &loG_a+ҡG R r&KSZ1o:?*p|A,*J/8 ʑ# 'b̓8t搓T!4)k|ޛQCe@e Pzn6$ޮe8T㓵]"Uc~L< 3Q-#Te2kˣ M,FQe)hG%mLՊtz/MIEY?K)G^B<~ ޱUc-[" a#$LQN\9vy B שm$;&c@"Zp)%7r7[cphR O7px/vq\RŒ),jPkXՖDw.15귮Sa,܂25M*)@bXV IH&"_f^U3m(?z;+k_n׻y,K2gۢ:u b8K=YBZ6hciz(wqg_[#SFsV=ڠ Bz`g*[>g“Z[-vL|*eݛ5qX1̚>?;1е1E:Œm̈́(>::=#B-Ѽ% q)?AF)gvTZ{JXb7ie :lPhpx_mNB CqGK 8λ۳6&bҭsvnL^nHDvw#Y0l?꤉K] RrA3I1( $>VN0Zrr]Î~$Ymxͫull`ORNT>y j0RF0#M !c;ϸo =跢WQ|۱w,4s(=h> ~oɅlOͲٕJCTi!:j6֮h==='8]8i|{}#5{%NS ',2e)Jv})bW=ɷO1%fh#*z"|/beQ`)3$vθl }x7Xŀ ZbU h]eJ7Dnӑ1ܦo !(7qrEc 1woߋ], H{Ir`Dy)e;+~(٬J)!Tuyfߦuc0pY-0F_ycEDfųoX"D;y͜+7|ajL0B(Cu] Ѽ(I썲[=# |'~Z #uF@22vGU1&L }ӚJkc&IRO]nxub;[[x_oE_SӔ Yk_G ^WÅ}k@aX`jQX0َ1W|s ;-L/\D-nO5  CI`$=݇GeiE3k+z]ig;h0h<L7G9jkVCK >:WFw$Ԭڮc}ՁlT9@>zDZ 3^(%u B|0A01f{>̑DR= mlKmf$28Gv7&OdJOE !V>Ϫg]SXG Ir)Yh2x, 'Tx:{)OJ:;'ylWihZiog7ni);3b=5bnbk5ŮSR}Y@ԓϐL)@3̡LƏ',5P11)z-WcW-m:Sgnvm?*rKР38lu㓃)f:w⃮ MUA#F#4;\nsw6Uv R=ULgnpНs7|aaCy62w$Mi+ fҘ,FT ]V7 섧ġW]}H2aJNYC׶5}ÇGB6az $gt=V2ORh%[ FN"Un2KZğ=ȑ =,H;%\RU%Hw{uc%pajtWf_G[`J˪1S[~\%dr&icXfyCKJ]巊Ƴ}Е)ՓshQ2.:,AP Ch"اro.p-3 _3ufnE>aYcìFSyГ~l:Цqd:$SuĮJ&oS@= ~'Q#W>uh6qKy=9GN?ب,gŒ/&W%ؤ]YFA 9mf}XJCzduЌkN(7{90"){jqu<9,Vj )w|%z){~B߁w'v qCrė4xܲsLs_%W*ˑ`Ծo7 k q%Bu[C[J*>S6niRPaC%JƻL<[z;Lf(c5=Ƕ}Kpzro6ֺbʛ BpV*&Yd#Q$K==c* b~`^_'12H荇)ẙȻ[)9%j5ֿiiI(歋kW1e)(:+D0BvI Ц4{ ~-ꙁXWCM8cx^H ,;? mHyT᭓Cз܅C7}YK{ZYܩxS̵-/Kz!D|T]{;mT8k_o}8I*X`u?16Ev;jN6v|鵯d|Q|-ʗ4:09S/HyxUk6/SʕXfc'Ե EE"z`&ѩ 2kA7--d`,ݙhs%`E?]j@?c` 3NvFO4+]y`cwj4J78GO4Vd P'Sdp11!jq|j5`C5̱I|hVn޸R|Ȗ#EjD:_VnCfȲ"0~wxU2 irbBB紐ZCތMTr[վ-ZBی䀛Tjޑ֊>bŢaGAƫQ7-WC:21{!ZmVs &UI)z 쮎UDNvlu@2V7\"F£#輌?Mw! kx!#]c4DNC鑪x_#A\oҤx*Gpѿ"sDRgW}(U:V-*FO]{n@nnߨ"-!s,ᇉahOX ך@Y' :*T^&3VvvL[Y.Iͬ.Bu#Tp+}u:+w#orTBY @.iUI:a+EРռP_Xc4To6>+)R)?ɽ)iC$8Wn6,W?%~P o?~tq}3mY@WZbgw:B#BVL))L7b+W4 jb2 2Dy՛4B`R7_fHo^\UC4 T\]FA=@gU"ȓl2zRG+8LS mK -sӲSPҎMbA 1k~eѦ-ҳ_ڱrN6iʆ,M61GVaNݭX\נ\!՛\;gAWlE D> : קl ̋)U0q:dC#ȏ&avmzݦ6 ًR6hߒ?,R+qKswr1?PY7bp|#& &>V^UM/&Zd^,PdI'x& rx?X9`T`*bvt'Rϥe 7E\Y ]o"wfwmrְ/ {()`'5X#Q#sG({lRigbۅ*%aZǯ>ץ#rTy {77ʢ,҄ 4ICնC zPM!OU ,lo|+ݡ>S{ߘa0}R9akK4;%_4v 3=*3`,s}CQVL(<)6FI!{QZzMwyn6$9w,)a@ϸ񔭢]BwPVřλ3}b[֓{+s?k9m ,PpR:bUZx$Y͜_ "J1 :C\KC촫_O +L<2<*mU[NyCHB\|X%/p`siPuwl5E$q'lejR?4V1^M1ţ7Ga1ewpF׹EwwF_q\ Dǖ`*v_TccoMUp?f((qX;=GQc XgaH)k >e'}xLQ:n6Ry@7]j8~mn^؅;9MqA5~X15<љ*︹k̓vcu 6 ⊓`W\ n!$}V` Ct|I[t5ifώCZi#&2e>06  1bB07}83ēD_m>"rNW&;nl̸e3)~ûs 'Êdw[ 8p8A],p1`\eޭ.յ?,'D:nbJ?ԋcg!L[Ejٝ(x"ϒc)0hҧ%| ;3+YOP,RUS?Lq(|' ͅa5N0S}W{n g.-6fTޜnB"aZٗfVOĽheNF>|AD+Bu/Sw_a.?W+n)@کʈÀ,ѮW'7ԗ{0zcF+/^v]))u}؃0T#[bEbn\-D=fpT7N'HIp&Qojq׳]nhqzm._PT0+glgb'or4];mYrKN{=%"+"Ĕ[A\&! G\U0$ҢigǨe%$ϼ&\eo ;hkY݂R$ʉ p~p>TTY Vi/so@USdՇ"SŏT1y` 8k&XNFes&-_fj:<\[}1xMYOH_zq+KZ/{)+;GYGy'5<Э{[pOrY/(c$$9B;&>uH鏅<2,]mPmo,<T>H +URT_$UR!a+[zr:0 ] ֿETtb :*Nďd$ye>;;>͞P(:9|sC@qtZ! Yن2D86@"y9MCΕ?tAU gq [gI"ٿrBqC}lRm ՠ?LQC[1hz-[O FM!ҸtOUG/8HjTFj = թ >2E z'=YahU0[.DhFnQ5(ՐW emk2]jduf<_&L"5Ji>on)4AQN_S\{ $ߦdC&XK8JzuL`~7dp5Dv HEgzyU]gV$ Lz$Qm>IAgpGpy=,^~FL͌-ux.,AL6.Aog*fŒ3|pGЩ_r6 cƱwެ{*O{ǿQfHW2f~ޕ7btfc;~cP޶M|}xWaYq :;FL!0^YH(~Hgmou_knhRr8Yg>Maaq r8_W*voMw@F7-l|exr8yUa@t'@V(1d ϻQ#acB@x_|vO K`b;0^ﺼhH{?" Kfj LAGIMYpK84cr$qVH /u?i8 B1zp ʻD{ыa$&#d@N[Cg{|z/a*^lN~!2W H~Z .@kP>qN>\,k[(p/Z=_ vL*ς~@p8ni}>(:Wׇ lE9kS"MD ƫ183qY/,Ij~sf遒]ph" ǃzNVbZY=^ =2j-{mK,d5㣛GҮgA~>Sz{G pr$#,Y48*ΰrށZp`j'0ce[$/4Qܑxc1e#9g޿9IC (\[&PG XL#0K^DM$MK`jM™Vԃ_a,(KMzj>Iyͦ OJDwztF6;8}D{h+n0̯ukx@iFvS\||ma.w.^%67ZI_ _hߨ\n"9^j+/069"I{j.sM ȪG0]-Ƀ S4 XT7C=-ۭ vzPjR(,%ڝ߱0b9~;FZg&a Jx#[l*7_Fȃ3 7 e1]aQWc;r"sW gt(k#`n5 3gi#~8<ߎ]yB +7*0Ϲ~ղ;Ke(iMk ؎<ڼnλ vBs(ǾtH йPKTv>v6km?kMVV=;$ c޹| pt0#ke fl%Yl] @&|T:+p{D0 Z5'v 0m08 }_W]rRNjsjy#T2k~x^3jYd\-U,U+g ez mTx} X y#I=d@l>U )Cq =Ԝ^=B# r41m&k{F,:)gWQBGROQ=N;@C,c~! ?c6(.I軃yS!z>$O9{gy5|0|O-!A71Éj5bcBЗe#lҐm %&̽`I n)q71˦Un)!ޭ:X\ B>ǢN\yKHAT6p-ƾUr4W2{ hrWrɅ`﹅|72.N8 TBj]>[RXT 54U$ YX}.7?D3-&:z+B9"[Fnyx*i(ZDW吃`}TBpxQjb`'\~=Vɯ0Vںc[+ΞA[WqN)v_И*KqKK;ݚ2+HG)|0x- H>85aBl>K3G[ v* U8Qi G0BeY<\QVQ`m# 1h#"12Q#,fItb[Y8Hid_+y 6nΫŞ%vg synOf ,g)K(ϐ3GiA_^XIӳsa}$P:YFj&IeY$ <\ZWO)-swmrR$,3Bf&sGqBO,ٹh$IyzO> Ԉ ny4Q\ W"d2 88iuGa83}x08^<}J3kT|8?#j␀T9AN' _Q<^RsQCD]uI ^ZbvClՋU)ӏDZYQݾVUErA]>_6QKDgިwAdCi~{"`%I*d)񲡥eڵy2=y>ɴH 5E$86$f{q"!vj'Co\#^7{SIitO=0uZQZʔcӽ](!oEX^t@1\a.qؾ N^˝/^y˜ܥs[է y0CA,x c@Fv/t5P"uzRCd͛*h.h]+KϢ=X3A)[ g. j U+ ')"rUv J*ȂV bQ^dtkdB"ŤN59ρsvPA mL!#@c}ņ2Nndk}Z0b+9jw}*&ΈBW֑"_Z$^N36ظ^Y exBؕ!%aI5*/_$x!C,C/mq~SMNT}:z+v 1|J$sfӕ#Q娝E-Y9">@"NR@# XZv|V3F/(XU\@pzz6Httx1z.>%̮ej~·x+i(I-0/"Tpm&]4_J!\Utcu`#]'0Z8ªڀEw { I>e_ |pyOz1` zA^tVRWh]+ IF'"mO&u[hh71H|geAt٨,Qr潍+Vs886'[R[@1W=$'/yC,U; ¾x~s%/-۴K F=Svsy gFfAԻ+%ٰ n [7uɄTkxD:(&],^@Ö%Hfr><_gͼk?x qI:kaů-] [ֿ B nOv17bOUb)T"ĔpfC @F K#Q~#1P48hvwμWGKHVTEf gtw农D5'klwQev,K ;@g>̡}HG]yzʆl?_ f.eHNL8#+!ѶEO}]ZvAII;[Qw[-N s)DGv 負GM-92La|4J:" 9W碕AaftN Wq B1>*&ȂRo՛Hq6k[7o~LNR9l. &f,^ICR&tSCwSVpK>Ug ~ ;&Ңwa`\%|\C I<~ I"'${S\Nc]Y U΢("::xιٵNC,]\/&dr8[>5R =ۅ8r{_'cdP%[k[/q!^SԕF2H4:GBC־,(]`A/[չ(ջdf T1JpoZFT/ZvFb]}6EЩ% m[I2y %9dybPz~cӧĔmQnuihucB8bk/i%/k#QG]GZ37fjb$7=$Wɐ;jZaM. w&M3cхq-GD hÍۖU:])+zgTSy/'X"Lh ,\|=h:ꀎ2%5McQA(*G IM7`*~745c*)BE zfOc[B{Aܫx[Јh[ )aǯ$tDxU=%\,v(dx=o/c%©r|z,,z}DAmӑROÉdjw4P؎d AE{ _z ]h"Pg٥M.\4rP~Tc %}yzcp2?nf5KDȇ@omK4Ep.cچ,M``i.oӷrQǜ>Jt_6Dכsy/lᝆv=Y(/_[)&|6 TyKB{JbWÄ:#U^̦_Ovgȶ[ O?;p1祐Y*GZ<0єYήzhS45'S9W#7)`.v"FZni!‹[ɫG T6[ {tF/qz" D?9Sv/YI댍$7 #=E52b>:j7ނ8;@^ ka5@cSy3rF փ^|6JtxL V%wγ516%k]oWmR*f`(TCP6U Ol &A'**?ׅ ?6 H^$K$XJZa]P87(f(n_Bܾ_1i]H4ˊI'E'Ƣ3Ȣj- ҾCk.l5@1 i @iX>n^k=}}|&!mz&QŲoE[`PyAg*ylm,nIKBs6~XtAOSgvԢ99V4\ eψI]V# Ɏ2fJT{W+1YGD%4wTL/63:Ȏk6ܢ>5wƕ-CS2GyM/| rq:ݬHг I%&l 'U2 4KB\x_ (ޑRiS4 ЗU=!-LS?c @D}9q@f]^EuKpHy-T?{HjH%ACdt0a$~V=.1RDWmY^m٪9h nۑkw>-BFa)t|1K=vOAh8=kVe Y8{6$1У5tǔUP +gD̊48$ @ac1h$]2.cXʾ6\O&DMvw_9O&@^c4Ġvvtp!qx!Q/b bo_CB{[$l3zF'{oTUYjL:z|߂os>Q3 6W$?tTś?!t-Ib 08Cz}CYe$/ PpAgz o:A1ܓHwvLW*) Jܛ51J~|}:ڈy~a%28 ``pSG5oĤQ.H3{AJ5FΡteȆ+m7ri{c Q7H^[Qu:O9J|KFw=⾕9beaߠm.lG7(p XI4F݃ɧpEltjj.0 _㑗k@$Aڦe4n~˥n^esF `*7$9H0nIt9K-yp3LUԯ_L1cVsS:>b{deeLP*4օ7u.yB^Յ&RU4dLa7`bD(vշSj^ o<`VqR{)sUY3yNb8銲0$ j۩˃O ֈJƌJ Gd>$fAL]4P|x|{k%ˋVCm/Ϡbf %nJJ"u]nP̰6̴\A- ͐ilCu[YhPV]en]OŮ}͜fsWqt],eNk*q5jCPtt Rnڣ&KWNotk DJ bU:rAjTT]~dM Tڟ/IYU#gSr-56.fYhD=lO#G gpA)㓼zB$B>"I$=-u++4DWUK\Bە *j۸$e{:_ pq;`=3zPZ mЦjRTmϖVDKr:jcu؀DZ:CE%Oh%$R`Dmo4'ިw0!+l_+:)l70, IEA* yE9w7r!\ ;ֵå)ʂSsETDUOI)B;L>KQW7Gw.'DDHv54' kL wwXF&OojRbv%WѨC PWo4Q`|ە,TC%6M'>Pf5 ouͽC4kL 4ݡ>S1H,"4CYs~vTS:象,Dqہh$k W jdݏ332}٥S ㎨pӝh* z;Bg:jI,T8c' oD͌ʜҵI\y 5{Tpɑ*y-U /hwn 2uZ{(# 23:{$t'h F-sov5F:ن,Wtt9L!_LP_Nm m/B  [ޞot_=%\tP԰碂'y?i,C4Bcѵ-6Jh.y z'sa$R`ۯ5=GݣS2 ^k" \%u& HsZ2Q-P[ϑCU)0t.请BLќ03AlrjbI̥ }Hκ8TJcEKO=N2ؘj@uec[EF> h((W}I>4xeP'6R.(P'_κ*l 6"_"AC\%-|&z1˚Q̔V~zjha[+JUѧ,ք6/?_8Nf)1T 1jKбxVuY||,~5w\Gw N $WTgD+z*qНw|,LA`SnNwbgģyTn{F!j7کR^2r:o֒5$ߊ ռwf6r1`SQ&PQ=ٕ6ށH;} dqTe.iƠ. 90ZQdWa7L|5>fVRR,Ŝ}5i9A\Cw )f`Sû3V[} "CphctIJ{]Bo*N IZ'$MtͩmhP+,0K';(ΐ]Fi77(UwdCx_GOEi$0Ϭe]hcpE !GoiŚdQJ~dk-ӱ w+=Gb{"`?%"`j;Su>w2>ό1 Η*z&4فz+R{|Apzdž =S ' z4W1mW8v7dKa0qTåp(zǷaZvIJgs23o`u~w1X$0OZ}kx/nyŻ)=wX+3uX&7T̆w ĈY%(gܷg(J%7E2U˵"bC~O$JF|<Aƕ,y1(n#tA9s1ȖNivНCn87Sd# \P%iΒ47 N9҃$ )Vk.GϨ:Pm3JwCѫ/veAb, a}?= /ڳF8BY糍"892FUMT#[f /ի ~ ϥlރ^ur,ؤ;#ii<HZiڿ8\T`;{s^`D]㝦F+Q=6Gn|CشMh TsGbK}Vh[ueIUdl+h2a CrP6C1:TRG۠E7Dm5 㭒hRLݚ=_O5;My?pDQq6 T[Jh#iجW`P_L]D\MOB]!9&[%o"c 49d~vI/CuhdF0<wc"G5CYvSɢ8VnjԬZ"܄6TE_٬" TZd BAq EhCqmj8z3/ -@R?|: @ͬ39MXu^ δI{лiGRRiMyE:C|b]cEW T2寧ݹ,M5`ܦH{ З>l K a](~"bgqt'{z7CGf^8 0rjN&wZe!<2 `H*+cG4'3欼yU.~^D6zfUTDfrՙuh֦jߧI|IO?NAD*uBԎ"\C(VXoL6gp*'גPw;=MV_*:!U?#wDA,<&; =jn5+,Y></f_DcKqZJOj0oEӛ(k66c{5I7n$3{yR5LҾY[:J:Rۺ(;njio׸#KʨQyn ?ѪyЧ%M/ra }8S/bgv:mhJ awp&)d6> m6ɺ#{M-r9mFYeP>, 4;ՇuͦDUn=7[1))8;a g" ${h:kbn!iu]> o>)W3i`#TM t#ݶDO/Q_li FRAϽKKTXx*/&Sq6/VH^Di.I4& (N:(Q pu:HnWNi_L's rC͚&kc :GsCg{Ud??@LLvϜ,$Qfĸ.6O"\S&Si1CQ$ @ .%_4]1ePwÙ#vt>Ї~j9 ]P|<e&mEwNlx^N>|Wpfz2fg#yK5grRL)"owp[N "`v/@:Wu͞>E? ZlEK_;4.9cFd0\)07Ӷ[z'HboY?NWtG`57u7Z06cO\68^,fx~mI.'K(.a0`j4 `&M|7ri ul<k,y+2/}oc!FPTo .0VM o(t/ݎXզ\Pw:ӌz0-h[x֐(tͰkW)+ _ (+PzϑGnW!Lݦ?yr:XUQ] v | .t\a;j^0#]6nr\x+$-^@SOuDq: U0tW-zQV-Jl|u _U*`C!iiDkόM,Cb:?5Cl<-ɳc/KC~Zezc D;9sha";'gk3 gVtqSxMpķ_tt1V|7D{Ff]~3#Gic>?O-8rfprux6v% Ç4ʦU[/βgk. %ALt-tJ[m 1:֐](b ~YUIfK\Bcd[Gѽ7/zWWr8mz}3h0O6[4BMOT |Ќ{rECyvh1\\hE D%sx_On7puvki&̍1$g-j]`3;ݕ{ɣ/ ?m{1$!T+vJ>1\'Piz4Fm 5 Zx_I~-t?5fP3:;"<oha:-7spDnZ%+-K4).5 A` Ԭ Xy9{aϐpiZVn\h$sZ?tPJ2tJêGwΕd.77^ÈXXG~+Z5H.|xBˏ#Xk!5c"ApK!9&ܩCfV<CS;mW-A+,SG4jce^U4av[&4k,iJ\v5c1 u)G:Ac9ʑ9JhfݏM0yZ)sPrS'yK+kxG>r{wQ-ejU:}M꼘$'?mUlկq'h @RfY3vQםi)I9!rϭ`2o%:" u<<2l8 Vyc'{.r|uI`wx #+z.^#)tB IGgx&=VQ;A mJnjD̓PJ1R# e^- \J]SӮ>ӵ9Unj}!H ?x-yB<VT0J_Nw[]^܋(XrSπ9 2t;nv)C$LQH_~>1/Iا%kfXvt<] s`%겔q?lZ| zJC389lw>YUq*K:$>ݐ5h!º|??ƟC|"3LhRfG3nV^tGD.p*rNqlilPB*,61kfD%@RG'/\X-]i7&m&DYK69ⓢs"OmY|6[q&UcBؖ@"Kjci4w Vxc5yny6ŧ1Ǵ0,4پ5OixV-Z c\y9c&-8}Hu{$/w#nʸ 퀮]9%M "S]oVf{tr,z@% { p 䯱o~ NK)S  !A@M7hxJ;7g$ dL~1 X jO1J8TY[I6|aM2=3*ɡ.w1q6-|_;JP Sx򬿀cK'ʡJ2)<ʃ{΁s4$yTyoz[?k,PHO7FGB'os~Uc<]!޵CBz%7xBFЅV2Sc+]QCG?E}JPsU;-M4ֆzBL6Gx6X_m"T8FZ*զv)M(j>a41AE,DDԹ΄hL|sy^\ ~uq1ݩ'*; 5d3!˴~ssDI_mʱu1ǪB;I_İ-*b i4~~cr:{ =%\0 RpM˴p_X\,b!<@TUe~nBa:iH,:~vxoDh͇sG[CK4fEU&֕F:<%.]p0zDKEvd1.HчJ@ Ky qZ30OMj>\ װ d|yK"vsVmG3$keV |fEvQKG"ӫ| Iz;Y;MNLnĢq%]cw%-!(V <5ap1T&EF9уomnyHucYw2S_11x&)9$ S]Yg+PBweoU Li):.j .ʥo=YבU/7k+L 6630Ȗ_qP/9R3XTl$G՛ߑ>\{VijE`\6% Q(Twv$O(5jO!BJ>&R,Aq ?b_=5/r)^Q8!&1'VwV"8%,$+@נ/P*AxĞ<)Z+ckNԔ4G]?ؒ .,yՁⰒl̸$ \Q 4\z$89̷BLYik嶺CpW◲ ,oXD8CР@\^_ ixg8z692YlQv{pH:m4"8d+mU9 A]+ɭVUK\oLkńl/̋xٛab )'e.L0$T@F`dIǤIfqA ezSln'[|%8ap!wyT[hĻT}yǸ@,W<<**}2R1(q.d<$[ 6-@4^ܒjô$,޴.*YSh\؟W yŔĺR$=D6J h?a/2~Za'4D8db/Dn>)\tl-&RxqA5~?޺Ӑ{7ƻEJOnAXe(L@ L}V)dm覱XJ17D_z7yuê*Q31t1j#Mc{k?1G$G)~sJ=(]&h?/X)oA@ݽHn 8Pj- -&\)1}4x# )r^G2lcۆY4=WW텬L%4_2gY1l~ĄIJ{ƷVƔF^*~{单^x:XQ~,S_ڱ/(p+K.p5&$9! , .܎yY}G^>dIGԖW{jF2[|VF%B(#I8K ]^qڰeHҫ`×un oUn_g|3N^?~5jP (~iҩsʅY %$3UvDo1=2H| UOu#윊6\צS-Z)#/e01p@*=yDΜƤ*h8CtW}{7k ,:*81̊5ݺ9N{HIqcGmWuSh<"M|byy3ŭϦ5ƑmW!hLy9⊱ sg I}&cqGW?V8+?2m <0JpkE!@%Ѥ!S9UK^\usSw|7X'Q4T`Maޞ 7DHZG:0ꟼ  s/HgI|{ _%ɶ=23eEތVg~!.0YI/i0s;i?Ygލ<Ѱ/x9'{B-D?a)4M0w<"M2GXPu^Vnj9yX /u‰sad6ԣ @M k6>vR?xR_Ӊi<#,E~wEEq@G`]/uJZL=|\|eg}Z~Dd_=,:Kwi,, NCOz94Lp#*^nM <%UBOlϦ~h4 }g&R>{gP]Y`=/Z&M41I{e('Йզ,U֌eRLo"x? q SF7e@7/~6M?b`f}jDˇf3a|, OLco%o[\7hKM&y}YAl9&/(ol3pz S633 PrkWos[~);8eeP-i{J(t PtM |@nrEJ\A* >4_76Lf#_-g(-@ ɺ!s-E$'}U -٢J`: n8ڛE=""n|q ~ALϱɕz90h!kcNޑp"h'1C!ǙعYU@~-imҸw̤G]z@ZG';ǤGיj͎dz G G"].10kŽ;yqw~ fg~'-fvuP-8!;/@}LB 5[3ȗlĔ4 H{2IZrཆ2oYsG^6SGȒ:)f1U0Sv-IZH?v 9+VRVFDt'CXX] dv-ɳpHRվVۺ{Ẍe{" ],!{T)&*++Wm:;}v:[-X%7*k Pr<]z R)a®JO]/N߹owIrbyz/#JQDtCY*=dی6I#cfyW,mi*T58#Qp [x0[1W! 'Mި#< cºK˪DN+ ekiҤ0FO6Zkv Z>]FQQBؙ./Mx\4W$?YZʔδdP)P L$' T^%{`(ŃG>)̲$OwbLSwtYA,}+'e.Ȍ$2,$Fw܍ ԲցLSo''M!k"tp)nBnj .>jh'hKw}HP$Ml=FL#ѡ/FhE[=*Ks?tX-%K Dk[PvhaUQ$hmƥc FcZbKXawYo)"3(MJ['[ WZWgJot¬J$ma6# _A ~e#kKmt8\j!\G?aLqCEA|\j ؾ-?A{PB_ nyq1aTLym{6S";ުA6NEc 4xܵCkta,o oh*ll}HL`]F,V~T^~Ya #KL+x_' !1oC,[28FWwiy@tDgB;RR*9媣j_IX-un6YVr(8d/$;9hu҃T*ӀOgnG'I$,46to)Za@aqxk6lG{" Ϻ\A4]~N¯#rf>c/. e{<Ў7AciQ ׼zH HB&wAVBzL{_@-qD mCd;4x 'wyw^a ۡ)]ܰӝw"n JX# Um  < `!4::dbN=٨]jyJ@LRWS‘pwC|-1Iv#?nK ,Ld-dRA7E6FF7^.E~t{Bh=+9ќ/GX 30?*\Ө-1j LQP+3Ok`,鍘ߏcs0*?y/{kT`)<ML%g5OF=qn tXhE/]+#_2,eo~OhĊ'o PebN#TM@$:Flگ1TxJQpz8 YRd!{>N>jYsT8[I3WÂvw㑋}3z ADZ2G*<˨fUtĝ6{_'a-u^#YuBwpm BFF8\2!8ٷd!ҀKgHL6/i8}a]:_lrp+m3?OA]aݐYr 6ӧ'>ҪWئsJ1qŊJ|2@üy[ђIH p.<x*{G؜?_Dܽ#fl?D*N=.QՇ4kYj)6#!> *e6Z!|M"ڸ[mx[m͹,y& INǭy;`xiNY+QhM8,YmBnNF=Nҵ9*8{ ((2/? kz)ͼ^d..NEZXGr*(|b0$א!䶺ۉF9NuFkb'H*3N%z,P<:M /dΟOiRvjC򘛣QPcކыP{p_q*p#TgTdt8I =RRxB͎=2U`\4e20G,_ -?l*5Oy'i@uOf9njGcfiCEpxݡ엠Evx,:ebܼ4|~1cHg Z;)<?r.M۳>5 u#gLBqhuX>F`x6fܞչj鋤I)q  w`֜4}.mՍ#apꮐ |+fNJh }p .LTVfVVU[BuM CW=X9 g1?e<8唎쉅mBzNG@7 gy4N XX4d|UN&i鲵næOI5C \wM&:B V2zRmV@v\41DnCL6`? 8{[x}(HÒ* d! 3\#D2qy+1,ق<_+_ideloM~Vb*F[k`а`n'1kI s:fghx%-'xO9C՞ﲤ0k_ 0~S"&QJ-cQj̑WZTwy !7)uծ>HOё!°-1h$+!h.eQEYfe-n̮B_냋*Tyb$tFzMtl^r{&3M@Žݯ@9l4iMYF3Lùs"\+]Ak x^;/fL->Et~eG<>:R;H平ri'cR>wCōʢWZU:bLDSk .=ށu6V@dS4D!~=t7( /gCjE/Eʌp`#l10?}3+17rQ섍#]8}Yƚ"''AVUׯ=%VoNW"2Ԁ<ȓ1{c/RpN+k?⢪|q ZV itt;Q9C/UuB)/&$sQGQxدL_N䥞wd*& 5i@e{*,T\̗ҋiO|\D|/ [*-}7F2lwFX֞yN4t"ުyȏO?r<]0,'氠RHUņis Ͳy430t+ה\X25oϐA f ŠLqb4 nhfqK#X vW Ji2`$Е'<3CU '.~qiB=@-ZjUq γ8ri?Hf )ŨsKF8[Ο&tR>jКG7:+ha邛~QjsY* ᘕL_ p.@/vF'[ < s657VH$@%': ),NҘy#ܝC̯ DfV[j5Ӳ_?ȡ}&D-站ɄtMCBu_9AH#}cꀜ@@@t=Ds!23Ψl`ڗZ+G$7(N.qKy>Hl}\o^/"=Ql*`^=!Z.Y8뵊 uر} *2&n._ ɞ?xCuӺ~TZVNOyr ^٠YB:#IN_Nʰj|sf=VSl;a7Щ˜|^%)u|Cf-j6Ok6xr,1 V"}H)b,+R9-d{G)^u(k, hNh$DE8GP}OP;vR㞠$E8q_ɳݝ1o+{OÿD&'Rz `sD*2 {wn&4ࡶv)Pz8t 轚lc6qچ0YG .oNl7 0 ↟"iy a4kjR+xpVz| a|p.N)qN4ͮӌ~l6nzx6]q'"V9ZH{^A~Z4ڐ*.7 b* l/g )_"cU7 %atCsTMS>#eK]e1삈?z\/ .X*7NɤaSg K-.OW{t ͢]B ^񳜕E{4~gQѐ%HGh("Z>`x?54Њ7a<^V?$Xg<5H.⨕Y(v ^7!QJۇ'm?ڣW)^ˆ72:=,gƏκd+. [ʖqdMқjڙܖ Zi-Fn#y/Umfن$‘2wyAe x3ןToL.Y4\ "HNQ݆8Ns)n%wITG5H+o;vB V 擲8y ^ zyQTiJ !y#f*unp2`Gz˨lU.So5 ̂1R%!Y\h AѼ$21Br͆7zJ R) Pn _]"^×=q)dxeE+p~םXTlY\i}"\mH5^"7'a,ջX`52&j%ZW y,̝ڿ 3=~^tl),ڋ͂U|C9;3Xfb ^ U5JצnI+*LRj3Dsa4hܖJljKJ9Ӳo?ejg䈧sgDd1O!vYO01W\ֆqzh- Y[M^ +~N5[ɗ?O^:fJ4< v&G?a[30燨YF–C;'L#.-xӦ"FU0!v ni`t7%VEwI =nknUTfTO_H%i0 n& p15x!-꧕tU_B|zPA Tw=RɼCgv֛`PаdeFR} (J?.IɰQ9!gw^;n"A1qdTZ8C @5mc5i06J2\9Ou)?ɿOTycBъ.$ேzhdԝA@paܵZ!6CjEܗ0D#j˒Θm@8e'C su3Zh+N q2[MW()Xo<6 5Kw˰waU5`9.\.j{~u1&K%^1@L{թX'eBmgicx-hGp(FU^ hmc.F$@UCa̍д3 1 DQ>8Ji2w;Ev M`[g#vGx4Ҥ7F XQ T7C]qYY5Nd0evtUC?[Fbc_W=~6yW[4PغÎ(9K c%GqtsۅHW/u54\VϑxW hR'ŪhvX bJx,z5=$o'讵D<_TyIBeTaE:ٍ@j@죘%BafkX<@p$b\sԏo{l-S ,s`DT!ڏ`ajuz~Ֆh]p=ET G:',7Ji#XG-v KrۍrZ}'3seDHMTbydB? 0GCջ?CwɘDM lfu#ŕZZI9~J##ZOHۡPӉR݄ЅMazڥ>Ğ:K@*Pfqd.Eb;04Ϳ ٟKTbƠ 8AHľ}iiI0r$q `Z-1C,tO8*e&H!!EZ_hTCHp= +)[۵:DBq!d11h˦*\*-VUSiV2h^R\3* {ۿU'|G>CkJNX{SVL`4/@au $p wS1X/a})vl<0im'[h{~jZLB:i@e8Խy3 6WlKF/b?^H g7ByyBC%йuC WHa[~ ]O2tiYj) dsHޓ}_b&y-S79VƎ H%QZtzAeeBR@-w2&0BIটg1x~PON)GӋ;Y}(}F'c11fO8ޕV}ƴJL`ФDSvP,NS( ~!b WgcIl\V`{Z "N'hbmg?8f(^?'-ZZj!ֹBJ 'O@2.<`}\ `RҎ9r.;ܾ{BȔʑd{9U$r.Njc7H(߰q^O@E qh{BKxvjpF$^WxB5L5 2r_1Sd{ O~VTVuaR2M[χӚB/i3R\>]rUP{Jˇ; ?M7 %|oD cB|@[eT^i@//4Ij(:w"!5scjs?[ZC 0[CHlX~?G"B)Ff mwg{Zyq^VEP7*u$&Z.bHnr3.́RpjF;:iFy'@L2nVL8#Ie^\5ٷ@B:`C-' C&4>Q!oq/—gYwYȹ UrGȤJ;gY~i+|2t }S6GyO9MSV愨ICp9gP~G j aR =4R-4Z)oU&NBܛq4 d]2MKiTOiQGH؊ׯ-C5qP`:W=wj9_Gv,û9<[w-~Y1 ^dGa\zalcbՓMZr͐+2v3+JHώ66!u~Ȱ5 uLLqW'Zdq*$q+.'eqgT6] ::Lkeթ"WoR8T=i  m ~Y1 gRb]i7{4YS-|`?oN)\WaC0 {&'m$Ey Ѡil͵nFm .JMyq>u!bwߕ܋]yAfS$4 <^ mϞfdD"m6(}>En-,M:@[]Ǩ-JJ>5Dɉjw@hKH^˲E:$p٩r5u_y?,ur $NղArSIZh|q %xĘPnj,+8T=ĀgPޫ-ۃٺ[zEJ9ȁ(1nw#Smj}#~R ԋYOdU8Fc;|wF4,"&e:k:g]{tjyMC7%D"A*/XѻO0-g|IFCݽVTj\λ-SM(&5]tqv n ފ#O]m=_qج}R\_t 8ieV3H)-6cI\:!vчգ$g%w{>V*[! K֡pu]D `3<9V :)enr?69L3YvU9!j>6ң͜sJ q t)د^j2VMVe1N@]W9(?y۾㘓TSi;%3כ##]؈8*b c2;UDW t9~ ~z`M9t_"Դ>6cBPX4&}xUZQMKwćHB Ұ1<,fGtˈGD(bq ǥ~dU4%~'i$bG:{ھC<2ϱl#H>q o^0kY̹>R0p w EBFqmxx܂J6X+\e 0żxBY=.埔_-`H WIؽ+HkؓyE&'v1*evd0 DYi#/b |*2.B9Sy :ސ=/Q4cj`Z?4a&HqH=@\ ] s`T]9Nڐ;bWFpӣ$2K;+@9^j#>W&Xf~!Y@8U=ר6!`$ o Gϡ}V4Klf?E>Vpc \{Y6 . />S }EW86Ƀy4`KLѫa"?Esئaq{׽z6riӃ!ɣ{l$;?ƯgB13R q+? hGEXwUċ4q7F~ZF@)@?~#~2øN5i/"^ZD Ȅ>!:tGjZ#. g 4ß}uy]P͸خ|YA(`E- =!Z T;lXf\Ys114#bf29<Ρ֛[XtS i42}`u1&ӣg1 ĴHBDw[႞;f%.'X HNvɩk>&97ϑyѽ$xqdF' fjy-6YY?im|B2qfٖ1r]|I5}bx$|66{͢kv1%C]~vz%gclPFHf~ {"ڃ߮Qr+qK.WB ]o=5jkV.:N}{78-zF3fp?jʴpE;)CNb.|+lQ9z8cgNU&fÃY˘~JĠyygǪ{jOa}ex06ˌ{:`DGN08jLw׷^rj>3Ddg$޷_゙<(5uq_;;n$fU&H#Î}i;V)s~*Rvuڕ;._llZ? %E/K#́J=6$wr׀f4qxii[nWcE[|cI-pY3٦BGP$?O9 '{>aU4_ ED-G~TѠI BIDr5[&#﹠z=F)M醹\cZ^,o|BłAٱ$D3W#0ؙ-gRY ЋZz.,)aH6ǁ[Aoa٧SР|Zp"q`g=;\tw9&%̪ cڱ!w]#4Jp?^AɅLQCru 70/?uQ۵eAFe\#{5DGd|1ߛd圑(˲&˯IgXV`gY67LBㅼ~VP9DWC0 Diਯ -aSX’,]ܛ fgnrFS(2y[H(mA/#q4Z嫍:gwຣ|A^剏˖m,6}X#;.0K^pco}*ѹ[E\1io`sYRVxۼ_TK|+Z[>_%R8|SrF(\I4=qh-T84]ʂ֎9Bm뿩C*qϻȇǒx|K*P_{hi ˅Z&lNJ yUc[qDc9w0-SORzա.yaBOWƚXd(~BT*nkPv Eal|`DiqgPl@н n|H5iEi m{(`;;];_?ߐ.٦+9e{z@}X NwJ X:v{ۑN$#I/p(0UH#[ݞUZ!I".9 -G+'lAz=XZY|ҁaH6\9-Uio%GKvٽ|FK(UZb1',M!5;%[֧T;-@dLf5t\ŀm@SdaFBNޓ3$ʻxC,( 2Ȝ%;*edNwhՖ"^{4H[GdgPX|I]N,ȈKCL\$8qIإ5mC)H=@3Eb V㪬9@bC=:IoYh9 +8ٸ O$S3^O$@n F񝞘[[vM-Yfm9(\fA!:ߓ= lKNv@59}1k^clK2scEAy|>^Ma ?.jٹ'~L5U&K2#݄NuvIҷ }'U46)*Zג4vWu6 T'w]>My<]_Rw-d l΅|-\X>mq]{V6士5RɆKϷ_3Ic1kfJEnp`9<@ B eӓkӧR }HaB|HR>\1lm*ѓ-YLճw06W[Fp_b&KtW؋j/]^#71i?Ɲt[^k+{t `{ -%U_(Rca/`"%T E:}UՅ!/Qf?/|$hNY\u' ^JrG,<|FtAo7Ԝ^!ZY$UɅh4JG?;;l_9{#u6ZtcKzy c](Tr_|Y,E_F ]kNY7׌CyIcNו뱄 l Ā@O~ٸx/JU{ںǥU̍Jt6r@$KW>ᴹUw.Gm~|-:8.Ӑik)xy;b azHGOo tبap"U`drvhwDZd?k3KYdNѱ d9%>k)iWwx'ZdJV - 9 rȔ1&Ixpщ@=UVA?dr[C+' Ƌ r` "l4mTTҶ,n;5i#F-12&3*It5`ҏXy{䕢dP<Ǖt{񥒘uHl70 8c_"_"&t$_rʧ<[L R6oz$JN<*FMfxy ߊzMDFzB"VJ5`jOI|8u-#)1Rt0WK[0}뱗Jw}VIZ2aV {E‹Vo afFo"9"1x'vU?.tU؛T|l%|+ѥW3?x`WU |Tmgl҇ 5VCrʕyHw "fhΡd`z 3Uhyz)N"Re V٬c::<ϗ,ms-b. {~/wO&: dKY\ʚdVtzպ*ײ¬]% H3 4N!;kXg=!L9})r`(%79NӍ zX7Q*N "x"ptÒwfmF(ٖSHCj-BȌ-WVWli.Peɲ>h6M v+׺Pt,?Jb2uox4 Tom Ti^4 mƺ+7 S/F ¿a*(UΒ厣eK4}EwiM3.\g(mՌB6IPY=쿢Qi yVRp=8&yTƭpQX6ARùȻ9fg@+a,AVmEμ+ciL\nJʡ7LH0D> Oݙ\UpQ8Zq Kr!g=.E>\nܸ]9"GF'43@|[oyo=jͽtĨ̗dzsH2%ٖ ~ȃg, 4J`SO 7#&;I1RҤ?ʭ[ANR@Rd5VuL[ 5qKBo9d1DVr>Ruupb-SLKn:2Gth3\g2%="8쟮@'|3ak0)W {/p F T53^kIeǧ#k%~Hj"'Vqf5:`7 s |̀cN2l#)eZZ7omJ⦄Byd:Xũ9,<0̯Щ=LGaMnN/H,'0[195.ĂLOH y*Ԣ!lئ^mqCDW@xJCC%BA%O55d@ H׌bK h%tn|޴f`^C1vn16rLi>JEMZw9$ +G`h ϕѰ= ނJ:+N$3܍P5^m 8(ܐڿk>l:9ؕ^  "k݄M& w4@Ҥ;s?.G,<OUH]K ? 0Rm6yP(dG~`' kXϻMj{_e 4zn踅?JyH'` bd w!MF1PmUQ+b: 9+Ǹ5m?@5'Zo._'qcd*S>2ۄjIQ[ʨ^/ቴ?%Hů1RS}CwwZE&EcP3 G 8{DD6TewF8tCWp=o ;VJn׵?<ֲ:AX w=M Ν7!x ӮfMkh)]C2_ס/"H8VэmjCrVWSbEy!_W3u"hur]}Vb @ݑy!jeMY6G6&$BiIiYJZXjwm>2s:ƢA\g b=E߳ڽwc壧u\u<%^ HU9q{hf0[XGDw4-rbZN7%b?|wEZư A*y4:Li ~<SYf("Wlj6)Ttrߣ*b1ߢ8$~ss} :ZsՋ#oSvk X9TVd5NQhsvjpQ6Ebdfӳ0KEJS;lg_|)^: ]ʭ]ŁU~Te~úevxC Cfi.:r{ [,Ioo3eTVl\Ar9Q3CF|AWcekEG'aχtNUrޫji) u m9U5h{B)A#EJPjSzP7b X湟 v3ĉWB9SqKldD$Ϳ]0jEP-B_)kg-N 35By4NrEK$lN,b "IKcEssLb'`,X 5l;a+|΀1h0a]`п t-*O@%v:zWjQG`:'L1/Bv<)w(80 q ܐBI Z~͈?k",a~@ͪKf|׏ ٮްR䫧 ?i:Bܐϭpw j0v,[N;Js%_8'k70teWE{>S%e!5ODnPxC^w3ųvɁ[~# O bk) 0)~8͠c3B%|*&5FlЧaeN|(Q`N{XjT܅YxoDRq.D+59 ?Fyəȣvf}GbhHdiv^\o1ކU0/v[[>؜kJ=۟"T>Za;uf dٓ_\0Gs]Z>:_4~.0'w{7=гOZeQw_ÊGrTK6sPbcc?m;U[`ٕʖ5@]萟J0ud#YWL3G#_FU\}B"?KmX!iW-Gu޲"Yn!6/CIcVL9f؏*XRڶ[o֢$ (6~"^wD)!Z2M]H dd˭]vY|Hl2ZY7o۳0՗:—ƣ zDm 'h(Q,Z NK_|'C:`MK)+4[rFOC)'5 Ơ+.FEx꽋bnV+ž*e}Ğa6L \}H:{WF25MnXf lVS=~ xhZ.jRRǔ/ _FwPi^**=ǤMiPwBm/J|Дߦ:ǑVZs.FL&*:Pzi՟e|CaOT,m[H|@%s zpa QA9#3fD~>1KvORG Y;HRA7|Ic^t\Bx)7@l M:MGbFunwfH{ 70dKLJA,Hvt9%ۿ o"8a@،WZw"7v/5 b 2᳘xJ?4G`H1n} .Rļ$2u) n^@јHrM式҆/SN=67`$_x%lZ֢66y`H,%SD'Ǝ]ç|]aF@IBO3 ҃`z$YRuwL1>%6M^ZOFs dvf^{h YnVʣ^ǡxëB [|6n%W+my0ʼ5%t80U״o>Tr`>Qk&)Hc@ﱞ1–"dB0{ _[騬vKVNmղTv+א}ѐ9fSTby>dF׽,yATհtGON@D}rgTo@b̞1޶@dotUYa•s"CDc ՏӔ91%^(rc>"gG `n!MPU߈8bͼ&W@a#eRt(nK3HPzywUAMNcOyҤj BNvT \;f(E ѓyΕf@s 4 ו=yhgXD2XJԮ ;x=ޅmHE6Mήo琌-N<;_XA 4e sLeϯPT9Bmހ'G{p{o=Hp9}k;(JojHܨKKj?t]̜M1.cv6WL~rE82G15?+f[{{ov[7l^|*hX-ONrRh-0a-OA__&WM(ؕ.+:TD >m#vwG^H/_=ŎgГ\5- O͌S{@)LG݀5,,=6`-o)!&r%IMwq9vfYnJ*f4_U}kK{XHJ+5q!|5}B4Yn!bTo wVEdam?[M0Q bnҦD#pXCq&͆NثȠ 5YF3?]Ԓ]ia5G|Ǔah7iR6"9@Z!vf.B>[`B`n+,TO'/5GHbO{L|s9wcUL(XJFђS|tВǕ Bk QdY+3ҥdyܚc}nv"?]"6tpކtɊ2srMG!ЦӠtIF3rKX#dADUK-qN&qua3H8ll/xtJܢJ珅vwŜȠb:L/c0SO&< _\&~0qqXVιq$/`cv:7,*x3#}~$7i}r{~v e֊: EI)c,V>/PSi?qMەVY zXk~J' `EkO`\dk*byuc7poЛbL.Ḋqt a.F6 ʹ>wRkPbsl iQ{W3q$8V O^iB!9=7 X1Q W2K Y6U뿇W y}7 bK1lCI eu_'C.6Z#9G *Q([*_NfCr d1[l?:#$m1sRu84todgVFEPyV`?|45%{w-nҚK A+[tIt5u6߬xN2N;me}wcH:$ۀ9q;.xxx mл;e&1E5N8,B;}@\b':%@mWs5Hݟ|u>gSQetWI*>o XNQSe~@rh/FlzG^xӹ|܃݆/T׀1G%%>B?#AVB~WwY/{Vx='LQ% "+@n}ݽkA%CF=ŀ7v˕ΖAV'L8Ug3M$<$F(mf4i]rAÈ5qtn&0)\J&E3g/xl˧ XXվUCS<& 2 ސNz#&~p5=HF^.jV[ >B~GNȋw!/靎_?Qrs@Ŭs5K3+<m r١Mܠ$.-A)D$p*]'}uOYzR,ņdx}I)}Sg!";5b5uߏʪ*5R^=B>?> u|^OB/ն-.Q@[' <=m c`WKi=JЈW.ҋ7]B O`&oǺ^}b~Tϟۊ˧ O "<0 )3Cyhրs9 qY:T%VOF.Lfpl˦gDRʶwBFox&F;Q4|j6[5kL8o \A>[qAW wxi\Og1bf%,gJIaVÀy[N;-RlcI>ز|O}XKPI-pr2OvBإaΈ0M9_xnvnc YԳ2C߰ Gt9TGq2"-EFc!AXՕx*??:ru,H5 `ixI~[sd= ab(ú0ɤMdI[yfl NhXR@zGIN>ï}!۴6NGS\57 ~6H%#+l }~pmX˘>_XIZ{=!i]ȱXd{eЃ] EؠN7z۵$ȽxTS.Pᖪ#|KҰ_)ŷ챴WE#\ U.i6|lBuA80K'm}Ì5LUq>HZ9JqP'q=m/Mg'bӸ>=| ,fqp*ēbkSC @.Uu^ SfSSm--i"0w:ȅNU' ;̿VXTǗTe;- ItJ(y}1yƓ|1'`˱a8<[&^J|yT} }i>A NSqY]GΛ&*a xoq΅fU-6{9 }pX/9(ق RנNY^F< HK᭎txB*ljA}B&>8-qCP2yLɭ'g ~~r"f1_ȰWl`Ԩ T2Db^BQ,/2Б;= &7 w=?e;H=^A>%S8rnrv/ 鎻ͻu(7VMYqAZdihz!4j4|Mft(x m KZ dd'_T N2>JZBGqDA!FVljBs5C毪 jnb9t|O,ۊkٷ%lմPzm!JFs&"P;=L7в)PP$Y_2$Jt|zLT̜JL{e֊暍 V4៶RHM':W"A%ьנYbѻ˔Z?C*'@1G恑]=Z*?P^Hg} K4Y&Hǣ΋R16+&T'9ޠ(.∁3ZRpJ0xXs!4i/yRLXC$L lnէ L|AM׻g$A#Iz0_T /mVwRw/b: KPu6in,a󫒸;05)[]ϊgof_<1+{v<@ }h, L1L8KZyb)$jDr&-WE]K>3 M=fqD>17$6b7ߘӛʭxч*='GMS.R#};S;-mu_i;,&GA9Iiŕl|0f~/~mD'X37a)(3d*~"[uϜakW^&[7eÔ 2vMTP-8hy!/MM1UgYVL: X#hgN,#l$ɸ<>ZʴN#Ai55 "a^^E i5yz6y WttqI8J֋3@ckTFHAG-T~Z¤Ƭ ^)*yB 5,lX}꯾#K#ԉ*#{Yѥ9NͦAs\ꆝmdZQ-.iLDQ`I w'O(t =K h".Rk'7Y`T۔S\պ)!y# zo*c^b҉5ߥj 5TyAvw9h>O5"POX7MJ0jYG+kluz[y5ʪ7#,Zb`ͭziC%+iA_}h؁6^T\FxmR}浙3ЭI=rNE*"PRP.[JI 9'ʍP"mV':<24KRPfCkr&Z־:)CKCÖuY'9Ƅh4ny96U5P/; !!5(} b, &Qdvc.pR`l5ɀꟜ_T\S9Œ?]Ŵ)%,ŹV cR bqj?S^LPr;}Oz2V\2>(j6[c'KSOP„צ^A5,L xf%x@O+]/Mclo^RzLz,Tٟ^# x|9qH#隸x8lph@4xqU}Q ST2F6\`wr[W5vFKtaX*בWhϤejl}FrO|%&Flm$f˵ݷ-kV%!V@vl]93@ D _;;Ӏ偨s8ܗ\Ev#0|EG} G- ]}D ;[VsQ?^p$+@m{RLo"h-#MjP]uϋc[AE<:t7:؍{F.d_c|w3`el00*"\E:Bx@(]sG,o+6FQr~~/?- zq jh/zok[j:f1xԯ;mqcp ǤuNX{F1@ -rgs+ILT.†I9w=`",w>BPey8&,(=m^¾"38J5p\RTE7=9+)z=sQp,.fY #yʰz/`]ij#AwE΋a[Rt/b&h8\c%٥jCrT6|h uC %k筬| 'ޔ -*oI "G ]fƉLlSVTn _1$V1}Z<X]!Atvt`j'W}EB'r,[f/錒enzS+4X/&Md[rsrf.Q@{[m9fz"@7F~),AiEUDAW=q{jpw v*"j7.t~ٙzB`d0tAh ߸%{e>naMla7ZѬ;Aj22el<[ԅJ m^}Q3%G)_n3| _Zf+vUqn>c20³%ȹ';V-7xjF<,)E0^Q*6㘦&ATig &>+oY{s=%G4&mi/ $$KP|"W݀ؓ gcaA`~TrESiu%+R"Y87N#\sQE]V2ҷCf2;w_؝<?CZ*Dk(+LJs\4 )B[I~ߑncLʷ٦pǏ>0?!hm3rcj@)SzPa={ 0/n8DyMܢ+>N6˜/o&OQ=܌)PxXo-Sb2BYP˔"$R- FO ^5Il]I<%Q^a\ ü\f,BO!Sk`Xi{7\0"@f䑯 bQa};lN}.Ų;l >pOz`HHD={,c Wd^3^4 {W!1U{#ɪ9ImDEy+]y螤S4c v\AqLo,ܠ+?<cVɸY=Y=[- :,7a=esr-%@c M$J)3}AJe7YIK 94fFkx܊wةgHIkT^"?>LϢ0[#[ڶҴ57.$_(fk"̓VʏK!kKOQ+e*[h8wQC3gEFۺB~yL@t V]و3# $QfCpp T%8UzTo,Oyn q+/f?/X_ 1`y9tG7BQ|n5EV@aC؛cdB|k9uq&{_:HEy?ታ*}kg> r<4^^ pP$hAYrdE<@RZfa=,kf[EƢve(,aWA52D#{ɗXJ>sg죊X.81D2tOLrbke<M$ A}ɵˍfH7*vQj3A<6 Ϯ7*[mw.}c_L ?ImlHqɚnoڴxnv0V/ 6FaYgVXIRv{^u$"?; 0ແASr0`jwkYD_@Ґ5ܬ>bۨ.n,*pYS8 ppͰًJb\ZcSXxkZ/''ISNI$8Z2X l.%0(O_a F3"}7!c&enV,MԤ $s. ,˻"2vp3L xӾCbqYb42Y|YWAh}[󫳠 w<Ԭ%E\Z/v#*( 3EL|^l kg0-:iÀc".\] O 2?შjLFakbK[\ykW2z\~Dli3Y~nV#L"ӥ7)ޝłhC@Bfm[M[EazszףGxZs h,1}bFGoc:tHb *==џ<^'u~lFŕʈٓ˺g*Z 3\63oqAd⫰X}w 3*S";d2u՘@hd;J~[#MNQDKiڬݵWz,O \VՍX ϫH:e ̲**j `HzES__="eAU좍6!yB9Ʋ)E)!5޲;aa*wpS~PA^Fla-MM ,8cX΍[]oy>ռf ۨ:w| HE,'L2Lu$b|х-։11;"R#(uܫpHٌ"  Fֱli&`Ԥʞ"#bR&Vf"HTHq/3{QrV/nD:#F⪪Ͱœ?ʞɵe?EIB~Va$s}4@ż!FNM4N؆dVv~/DYn%Q)d5m XKA@醺b =fH9 #6O! C9쁩>.k]>ha]zv0N"nD-㎮;c~ 7:V\E"8aI;vk 3P˗ryg"XW8҅̎EoUPZZzWبrȎj|xK%{j+TPDr+W5q$-):w8:{f5doh;z4W.;Wz! bJc.Y*i`|;Q5Sx.w̓yފy OpuCajugO ; | "Wt9 RO&/=5;1瀪:˨vsE«S֚qYs0+KfFKT`xMM4y%!)C2uoXI| FnbO p hUQ獘IpI^۾\Yy M< pU3o4)GϹ0UIX=:AKJH]Z VߐFvѥ2f"Sܭ,nIcYfOJGm%.OU/Cvol|Am =HIJ:n?~췙y.c9l.ɲ`%*h 55d3qhࡌUsHAHi$)[ .2 :"iS WFrDOlؤF@/l,SE qE{&<6=V{[+&jIRaon"Ѱ >h^_}(ʅt}^PaFJK-fnfebѫ/&4)o%\2sE%c;*㳈AkG'XJqSo/ v֣~`k7M Vd 2$#27*(:6$SG>Pq3LS.:}⡂p6MJ;q`ړB+(J7gO-^M ŐA߼DvGҘVݭ(u HӪ[tCm7_T'w]Va| m2!?Yٛh)ܔ/k±y5c=zm D^@t\%,E1ȏHo^~1_d`qjND.cj(J??M&Dq j)] &x4C[|<\Of&[Xz[pay]xa7&'mV]K!U {oAQEO-Ey\ЄW_rSXU,$@TZ9&x2~_ȩWp>J7ϼEhݿc=5_owJK$ʷƐigӶ)})}VF[>ps0\v8P< Ih=<*OYB@G؍;}F"xLJL~?8*tT&|&6UiM?Wvo|-Vm=Ƕmdg݊3Ea2ml7lf[pc<]$Bnk W&]v*|θ@4yï70AvF|0 ; 8Ȗl#9-.~}?3K~&yqͣL⼞ܬF_[!*p:a~>;eMoA2+S#|dҠݰ8p _ 4B+P$lGVe} C|.SDRÖM.)U!qjC-g©g$ ߄ wm `fյRlfq(x[zͽީm7 U*{Fw~/) "NSnL'&[l# $!2lz3^>zc(f&mTYOl6)2siM0<@>G"XR*:_LbEGLA18{U{/S""~nBoh؆nd6} K'bwɡQ(8._n㜎!x1.j~<u:E{I_7#DEຂa%{YIWN$e^!uD\*}L o pZ Rr&gQ=~xAIM^GE mjni}\^'UNtG* e'zBzʹ#Z[SSHS,C^6~څҗwF/1$ƀ={~nv!pIVzvju!aS$ 22}᣶ `o"K^A,MVK/jׂ  <@"L,1g`jNY^ (iOm^%L.DDZUH$nCluA;6NݖO$/"KmjƢu/ɆSW}Px"x ^QOԾX7M=[!JX}h>ett_agۓ ی/sw2%̧F=,/ `.kl $ꡢhq\[8d_#ZtƱ8fBx0w?1:rZ7qMϦ9[ N{$R"ĀWwV[M}WXG] qV1AjZ?.A^[?km&q5S{Li3$s>eafA="ێ8{i. ]2g")`I2N$ die 'ܻazf4iq،$ʚ*[4*?YW.K^%riY;*d4{CXc㓤kxÌ]Z#6jK4XfuBrFUu+DLm8Yi#ΗADj&TZEzOz,ц>9s;[2If L>/ӟbupD߉{yX -?]>uJ^LF?z 밗iy}X,Bgswhőr>>+ۦd>R)[OxFg p(޴rY ,0.P!S "[&_b_~KnJ)T`DePgy(^ͫ^"~/,|n}#$}RTV~k5yYT*Y}PM/cAk~he. 4hEwSEQ`\ME%oλR>6N,utrVή}r MJ#?T["S*<ﲤ+zfUO~h~~Q,46Cn.Rtû{~ xrQ>U[dFRفc5y#/!^"SNm&FsylU?`$t"c=DN \ʡc#n Lac,ub^̚81P}V(ݤ(5,Qyڄ55+Д\V,Ԩa}K2ŦpI!*~iCfNDF*TapE=sڐ Y,'^Otl`q:~p0X-û^SԾaMܐ\~Da"Njvsn:3$g𧛘6 N?jӃ_GB]ԁsJCE 뉨1N.vwˇʊVoDP8PЊ4IyV g*^ojbG$0%aH~߱:v߮ۛ VT*="4Ku"w1 P+u#;dFOF : C2w\jUNNPkJRJl A,ѩE}_|-yDdT OxV"!@i=ԝqMmpcn/@BׅL#_V2$9K57b0F\Tkո#csPڝťjʌJ'Glg 8:(l`ז_lg80 ㏑Iymҹ`%wh oʇ3+w*бbzw(o(Ͼr&˄.JsbXj](~ui;1# "A!uj&d2O9ȹgY@˙kЍvWKIw{[#K@1K< 3 |di,^ O&&Г簛zR 0κE=E x;%#4K5m bn5 2`?=سJRoՔ4sB0cb롫>R: YBz-)+ siʀ3bZHU-Tn߻6KS' Lk맴I䠋рh(p n?F+"WC2ni*]it̘Wr#=fs4 hF00|M3zAF ϙ,E4B)=B ld6H}#6JȚ R%Iw"H.~G@iMURP%fWzIUhN:(&/GJ9MO1! +̦# 1[OӦp <`6vV&c'ѭ&RD)>yBڌ!R.ϗ-x0qRM=إ-[9I846y<1[XQYuJ{/iQw|(1hǧ? 'tfӣF;&(F*r(fWTmFA1b+YO(nOFs*^XȌn# ;P8z|:r?ın٩UdŚ:#d5}[#I+`@,/|'q]dp|VR?40u' Nf6-M ̝ uq)4TυQͫ`V#LZ|^gF#~#ْ̥n: j?94xC; ѿdEDjCU.4z_qGb9]&=FePOaSpuqĶ7%W6X|ޅ6CSru}ަTAw:<u<~ZvÛBH:G%/ X}Tw>e:<EQ:B0jj.cl)E[DMNEwW)hb"Jh&K!K @딓f2S<^8Z.? SRo KV X^aۄNCDoF'pz{M1z٫X(Y2,R~=h狺xGmz.ڣ}8x+ f`GwLUbO d#3*(?[Ԫ'} 11i_42f!E)1BX@Z>}34O @FeF7Td8fRP0h Asԝ۽;mscb兤+384aG(5hT~/-yss&YB􀸟_c)OFY#1#3> =0P1%8(`㆝˛u[ $1#']>@EO@)ܙ@wX!R1+ÃV#ÑG}xnL{z@715hQg݂N^r=G_fКX" yFjCO.ֶ3`oDf !v2|I~{>0D$̄|Zn#AsS:"J;jh~^CQ9 $vDUƾ84,V.WNy1?+ϐ7ꉈԦm`KnS\5$l a|'/LrP,8_ ;EH!ovi9D=CՎ aŭT6d"5 Q#Ru I[pvÁ7'\0izu]/ķz L5j!zE~T&k{{Efq) #+Ѕv(>iaT,=čăƹ=^C](;`碀zv3~E[ii 뢠6/6_ E_;qwhM{(gޫԫ㇮d5@z echQf}Lއ}syyqE#*|~|$2OmXكU"W];lg^U~B9}*.#[qXͅ_&>|ۻ2ޠH~?c3}<)81-6^kU$DRDa}}k'qgkI~R[r#oO. O0X&G?oDg~#GX}qN~0u];jU%UB>Mh,`2£9rR>4=D* HU'6cE=W6=wJAE&|U*F]'BԎeV2o^vB΍Y,8K,<@S X>(m>gxd:gԌn@[j~5L/Z֞'~ͫRe,Iu(4 gV@wN,HcAS,XR +O4>~Q&?VΫ(|C_gV?ZoVOso }곐qA. E?wz(Ew貰.߻AƎl(8NжԷ٪"[U/ g?-@H0 J+E\ޫx |(t4 `q P*p p)-|W BN(l>> GwκK_n?IsZ*O;8-5o]P-y?q24FΏSL'ƷmFFƪGjz5 gxK 4< g 6mbmktb-z]s,R"=|YIac< dLAʒ_Zb9e` (\^ֹ6L׍O%3.խXWDD8ltyqVu,xo=cfzwbYB= \P S{ Xy֢ڇsL gStNc/-{Ø0OYvi"ٷDb9, >B1ճgDa\4GT9x_R%A?#㮎s+W'V0 j0J`uF<&@&aGE [L5Lg94zQ>wu xOqG>_YXz\ˀWq0gwVA)zsF8G7z) )=N<0ƶ!ո#wʣ~wLX;֢k bpgG=Ooc3W%5gS;tH8=Ӟs?lͅC/B6X $ gv9p>U&[L^Mz%Vy;%HFRbߖl{ .uK[3ȁO~= ŵܝ3u@U[Q! 8NQӐE=7 dɕmm{&0{`&&ajNxvxlCIgf ds%fShާETқCJvݛlʻ3ٌc4J/)*Q8 s|/M=\ZnH0Jgz,KFnYJX9 FC)sw+7!.AI2paBRR@"?rOÁ~#; $.5sϽ!B)7JxR=d]"x鎋1~z.wS71ZafA|2zq\j0tlh\s5x9# U܄z>μz^л!{({ge@L\ՆUҫv2xu7”Tga"]AlĻиabX-+s4[Ar5;OBղ޷e}w19MJ" s5Gר?g^ˋ z^.D(-|XE8K? V3*/d5RҭCKdU G` 1rT0&$(ST*wHK{YC%#_j$m4 W@Š*42˯Nf9Ě1BүL&##giWIgk"8˽W 46og'Zv R(= )kSa$q%ʩN+OլQO[`Uo<6ďt )}a۷ޤ$[!QG]A9CIZi+nP7F=r^Ď4STQΡ#U[58e&(|$I2 ಮOBepnrWDmŪ rY/FΚ@řJ +LJզ ||wCU!c]Ċ\[utgUGA,;\õhrkX^Ӳ|NHhšfOd3/UpJ=@%K߇) SnMفm)¶w"}]->kBZ,cRA,db<0[I0֌0)sO-Ttn)U.:/I՘5<Ozh;w y8 lnoؿ6 -)ZzůpOhmM_xјN1QG8rA\E1bdju2NiP\0h|`;()@sm @R "M0}=_ǠZf$zwn`BϽVW(y܌qO6̇OÚW48t_"P5mcd %epFT:kE$gqX.D)ǢTgGa Oۗ[+OK:5mZjb8)+^,+f5tgMRO3z.&0O96B]/@i7(syZaXG:(5>gsDe ({ѳ錻ф+6a)IAWIq[hg]|D$8la!&&.,^LCpG(W..9% tv6~uG>%¾dt{0_pϟm] 5jۦ3m8ĺyYǗzAc ˖,l5,i<\X !+X.b竓, R퉗KD(Һ,+=Ca\jXm_AJ Ws^1M)lsg^.-lQejgH7G.ڭ $(]:=k6=K p^_QU *@;j|M7l%Xd9G dKvMwόzЕD6vsEl7訵ґ{0h>wېƑ/$S~jyx!#8zCҐ !茴AB߫7D~XO75!ؠI9W~V %gf!do97oͫnqXYR&aGߓ16#wGess5ocXEXk+s,l*>n J"_e:UzZ-W[%& 5f1ڜZFoT}C\YV U~d\U9182څ=J>̽m8%SmB5Co ^*d2V+1M2Aψf\,TF>;Ru|LTDC3?)VUVO!q:T83nڑALF'X e&V>G 'R!> -JĞ_Y8K.ɥRݭ`Ӗs/⢲#cQC) _@AՂ9y=>'HA3_k˺̘ɣ!/DJ`#V-HSM`R=Pٻ kӁtD>2lhqJtA ޘRP⣿ 0y#kkg{{\-u2^ 81i&. @041F*Z16Sa,.믕LYDѫi8MߜGTZE>q'$ߴ3,)D7`̧۩w@1a]+]"|\N۳diy/IVh)!.mԜmt2>vw[#sK|o0"RnPfҝ}*hwRFMj-ժF,d(xUlVHUEFgtNPk_,sCUJ3{D'N+#5d3!#.y6{4tKZ#8k|!"El 6}LȮ7ɻ<\/EWpE@D[943 L߄!o˳ɱ wy9n$gg)ֱ 䬅(iOVmd=>v/0j/SG-RFo 9u`ĈP2J,>DQ=uqFu:=iDWʁ@.ɧy3:1zrϫ/a cNŸpwv,զ+O2-VE D $,?ͅ50xrPʆ(`PMJ"|k˕ ޛ$ OJ8VE'"-ݚO"PP#v)E|>>?% 2Q#${wo|ȵ*zLrU.lỏ)i.` QH{*tJjFg^VZ^xuІZRTlJ]|ju%⃭a :c&8&SFRaD& TߍaUv/ߒ 8l@pβ6X-P9!/ qmV[q;Ś/W=@|`< hXz߈ c&2)cD4: wOINlY-(޼˚x#-r "= urCʬAZfԸEI5Z2'} MzLz.WvׁW/N8e/.@83 %ڠl͉ ZgEjx~Nt+LPG>9D𙣖[ŰܘoaM!kG4aȣ|!!֢G!5̊)"Gv#No]%|vGK@3u{ TsO@ T-glx*K|"x}nCH5D8WK9X$*MqkOpT+6td/\_cir30ckKCAg䪛&]|kKO?!lEL8&^]Vyyr游IFbղ+RU5tPؓX0JdJgC/](NV@ kk:@Ak_Z<T2H#Vb&5;$b{4y"f1V {lw|lY"B evZ'{.͖`p B wR(D#.@GFN)6)[RKNx:xl sgӵnYВJ.|Xh@em]rTI zS2/GNx!7OuM}6 =@eܰ$+mc 9MzSS{pF)Ŵ5Fc_g?0Av_rk{fJ )7P&bU ˟>/+y*CW6)|muSm\+&pZ\RzՅ2g6ߑ.qrc9“I pU(u 踌hᶃ}vlBzPuz1R 3cjS%,6WYiSFIo!aBsMخF74۫>s6)$ֈ/ !!ĈVFLgNfUNfd*Ľҩn/ƻ4yܦD.5Nab 734JkPm bcv-F0g:|Vxy7/;z kuШmTחqΣQ})Ho![l?Qom@rHqV06ͨծvoi8=`,CN\ԔI6Rӱ 5tB MR) OQ~w&&n,Q[oAoOq `&#*5z5Pl`8A?| ~}>!vfmd~#mfu!s|8c|;"XE^um$_I^J,:P z#>\[P66e).<|:ARqgoğQem.~+wfSbg98.hmw+5PO ؕ ֊ۈ\"R Rί땁, {Q]x}ωR~?n?Gv1B7*4"B>:Lkez5{xt-<0FСn$tI[uXpPh#$ &mty2ewQmM|&7Tݦ5ug_N%yl`6nax.gxI5)wN)q 7&bU mXT>?6mVTʖ1E.5=vVU#UVn6Νcc=`.O 5jF',GnP. /QU W\|6>A/~(xFgj% [xmA}Uqg/Ƭx'զy{ot5dNU=f(7U*U$aV4cZCgn:,C$Y'nSlm\"T-CG,jOދ}pd Y2ݘbSDvފ+Ep;@a=)<P7=!\lԧR;<*I͍s>NR"/]#BၑkܩdV&B\!V‹kQeM84591MWP06NѪ}tr"SVP2%00n&}AbE0|g9`jlw,94yp+•X`yuDnx%7w:NP2D;ɑyv^P$ocRQ9_D^BO!H=+E _SяV%5Z%ˣ.YNc ]uf- k% ק4ư$N%4fPȃ09LNy$'L.< '>3DH ㋧/>&VQ('~{W{mg {:a7umJE1/ʗv)B1 N^ktI CJFwZ}D臢n7dķd 4BHtԲGgr'ݜ({biKἑXcͷةdGn;}hWMg# O?00{7fڀιU$8gG/]EtiZ$&ˉ`q?T{*[K"H%48byCf=u#o\&C&pe w(U= >qm>+iU, y)!i 9|>]QO ë.S̏yBUfw={w1!̅b(@6mʂvxS>y3pXSDҴ)*M>ˠͤgT@d9pxVf܆ I_/VdJEUl^0IMr oz.[*U/QlN7,BjjCgf*g`[jsVɰ |)ٸ/e H} Q; hOiY*/qA7c!=u\(scݑFihn3CVfC2 @pN(pL@+OR7Np@NMpk?%T莔oc T Z$)8Leh%yGQ|EL!e>ՔB|_XBʟ 6=lX갱j=Wh+nNaI:8L gjNʶ!~ɔ K@(f;STӢ@81} ,4 sm`e1q9Avo@ #5f \Uh{%HZ BŔl!jCegzqd$e dKYy\ {Vӫ>K%9v ބ h]t91o6w &z2GVR˻x1dsK0N[a~p! ye2=$I>n21 NG7 *PaGkiQiA2ef fe_[u¿t.4u:D'ԏ qq̣IlW)'O͘q+T'+Q _Lj]Y  X'Ϗ:QHCYu%/LHx62]֬ zC ~ElѰ\U{8y:"'x%g\w]Or$Wo\P9]9Y{0Ԃ<&,DocyEaU=&TUKw-woMbWhhjpiސ/ AXRA`hrS+nkߣgZ%rF0p\^QtqϛJ>@G K9c4M"sN{OjrWT l1_fepr_kɚԝfkHxh um\Bw끾'smE)4µWlMmmCxc_T5^3ɌiX./m`%XgB]3N+;agoVCx߹6h0, 0.(xre/<4!MO_+G@܍87NKN$PqC3 \/|;Qx ٜEo)Bx3u@ܫs1v+{}5wMV$t-cEBU4!TXƔOAXi ]<Ӕͷ6<4hWs/0)E䵟WC&؁д#=dgV9W<<[i lY[ OLURv(:S1 }B8n,j^%d`F Nd_ ʺ82 RzD {߽x\>\TV3wy<ܒG-95ꛗwZiioupv Aͨc&$˺%E N۳ (t%`Bm%6׭JTtuof⸂$clõ% `oot ރj/ow-Ӳk$;PDI/`sEl,uE1rڇ<'pm(.Q47YR;8KEc,MnoA |rL Kݻ9R6icHR&|JQ+9k)Y#hF,M^ r;lLr:0ѻ1hK=ZmHi&fB!Bɹ=+Vnu[4.qJ(Mօs{%2`$'*ǰ+Z5H]dr6A%dc,` ,<0*sl9KZ8TKCI! _l}5S$})IRHP>&敲kR諿hv%$3' \abh-&|n*[#z\n/02W]pJ3a,n}ZQ40$ iI3Z::X-Vs*% N͈P).ۚɞuqt5.˟ Mndf)58$NR),aQP'R\;$̷*rhk"m}1LtzHKb݊~sFhފj[O0sj`ұNpO:{hyp› OR;^d%E*Glc,;ˍTw-MEx K38ĊosbFcKWy}< Uަ$~z,Gw?9IulE1?y[=2PERz #(@HS!Yvc#A$8ULd@FL^9;xLqTyRnx vT9[r{lnqjjƇi[y[[{O(o;F- G1%eeʊBgVd♓[~g1glAЂb;QB:2Z[|5ÙKbJs"Kؒrlpz;iIm F\ϙ|gO\5{q*.Pd2튏׺:7_,n0NyU24`.:G'z=wZ"̯ zax\XEC_aeg_˿D\*@t kdľW ~{#|VM 7Шt_luzs`W?zF-N:^RHN t"g ]lyc]>=D~5oj24-7+(vjQ)Qkڴ, Fc[_ $'iV^=a%g: e}h(u N4@vָuDBn;S@t3d.OMշ4viK1$B}*6A=D#VE kcbUIK;E- kZy7$yzO+9և/[ z\ʜ.J<+I*Z IQf ;U j͹~k)Z1gx0SGdb}[e3?H\Nۛ݅;ЉR6$X|E;{x!F9 -׺fD}"IgaeTI]Xw8x0v> K5Υ/=&JT!S K h'JhP |XqA9,LԢVZxƠuFD bӬf"8&vIXV@_F3&9oSD@t[]NkP{K]p6Iqۻh7{ uVÒ ~1ƟSvgNN@y`!oŃ>ߢ3UΣ-@ne7]*TV>|+'A5kvR!\0FGz=q}+)IF7+lŒ.@]đsX4;bju>U/dɡd dDA}cs6^ A4>UXoc5ڶ>+~f6$xKqB"l=z!,f'* ɿ9:[-EW ?vWrh|4O/N!{rGUx{a,axc:-#n)V~JpE`=zgKied+>MԆ c~!6\y.YAѽRrBljwvF ~ V>Ls^!.ia j9(}VuT [ƬIMkԐU,7Lj@'Og_y焃 8/K!"-,ۑު[ uxV NN\fh R P<}pF X -^zyn>+rua"MY`֩6=j/=RAʣ]xT GG@(<Jp s\z,@P< 1\w@W[{c~ŋ D.c&~o|%_i`—"$喙YMB~gEtTQ"YM ":[p{؇N*_Cn}dfFj=cI+iYd牾[sv??"LQӌƔ Q̩uch"ަ!)T& J٘}Rz\xw[h[6pZWq[yao~}>ORy9$2nӼ] Yc-9ynư}P>X-5sa m܄:BlۊQ2K3o\ Q(t]Aת Fl3N bM9 8'|v.30R<:###Ɠ훱%=DZ mat$F5pjOuNwպx-QBg;nPxk“d96aqvU2 +<>+R\OTX{D>k_~q?5_W^ g7v`Gpт_%#[z3ȍB|9B핚ٓ`^r<I=T ΗPtB໨oiΟP`XU4~7Y|).+3cͦ`Æx4;&Yv|w#7~XpaCME[*͈LŽoHKG̨Ń^ZT޶j*qǟ)c7j> +&&UQh2p%l)sN3!T|\)ALlSmβKKr=ז2E@rrgCY/Qq{ z/s'ЍSll 4= {|;Ls=&2Dnn)Z=Clp*olKU3JJ pF[ϐa! 8;xT`"$zf5,ΉcsWqZS( `\=Z'3w9k0Wq̧$]q(}\2"#ɜWۛ{1VqC;]3a SQI*v BR@!{~@|/* ;FƲ]F/czhOȓ>jqVyp]ZGQ\v@fT4_ l-ΥU~[C ;T3qW_0{_ybݱc6) (Rd- M}!F֌cmGR. "hPo=O 1"o[I7*N?cc08~$M u@]rba{OR0јCN V](L›W+`$tj`, O3[a9lI1(b!X2\ 3L";he?.:LBS]l:7tz "Jo{ݜ9?֧XFX*-wukb<'Bdj!%L}3rJK/9]J;Ɨ/6G?Yae)9] ՘5+WL}IbO^X&~LVG|YE*pHݝSǫfAZ! lM>L.%FV+TsCYQl}cjB RNVJqأMV0O#ȋw/6asD;6jv'-ѦGvm) Uby[SP٥s Ut{?ۥݸAIaH5p|TX]Z.RwIiYa)TFUz@v}w;I ,t˳ܑ:;S5 IsӆP8~B ^l>GK~y` qk᱆|t#j|Jm(5Wۜ. &o疅isV>_>mvNw}(C6Rm$1'@/:3 `G 4;'Zݟ;j'}F8Ūnq`c, B ʂ4+R<毤0M%P9Gu JM18jt:f;VZQ߹#KjjJѱr\{>*pєfPr4;[Uj>pLda,8)lVeH_NԪśevDIvxY㍐I(_#v<ě=ulI Z`?C*%- d,IdO^nn212Vٿ(zlEs9p6g" F>󺞕(YasbTz(mnֺUw'I9.:~1h%]\wBjN b *{BjݓvI *-)0,wA)\E Sx"ܖZ!avu{8F|fvPIoyK47XyPo ֤1^wܳ,G3~kCjda坍K4WV߱4쩬vħp =_{!ȶ!r>\M􃏈-Z3 1yL.=xAߖa ,Jw2vUoa eZ1 $Ks_Tv3~6i!R*Uc]b&&/f@OK=clN9ޙg_:3 ܪ]YBFo{č*+@~NB[K[}M>Mpʴ7Yt*vQ}Φ[P`)4AH(\G>jYud{  zN<чFV =-T5I8M0pk +< zƦh3ɴ!]On=G]606J|y6`tXx?COBr X`Or' E1X>0}~e ,= @1"\SV03WȾƍ6JL+qa>x Uˈl!YvF +Sg-NJ] /aa]bfw3?۳8r#d\  4]`-+?LQɛi&qIe2[ 7hEjRom)MHnrGS) u8f[eV302VᏧI1g7s0l|m.\].oOiT;Tx..^_ hE}3/5]JĪ ezpBʍ86c LMYSYyɏ(hZr4)+)o!*ԒtG~DT<`LPP->G LVl$/VTxjuŠ]JFsjx yT>D`F(W#xZ^ J,vC_9Psޏy9Ixû k{ӓ[̖'Ds?F[ةC^C%pޭDu*SE_8+z~C`+,|ܿ#Wk.{'|r&Wth[c9Ê@Of7 ޿u< *pGLqW:~7]_ a9A:_iN%LvFㆿRLlD"NoFϫh&F}:1K=f V9slz옛c )՝߹M*??bydl5D+Z0g HJ]ҏH(ш!R 0єfV~ӵ/},M2^6^9P0xELZsᩉ['ňJ_B:Hзic$vIwdfֱD`oMe&Gta@‚]0PZUp׻Ml|r^2Bߋ{zR=@.oC!^j*|oѥ;KsӹBC*DF(0TtX,_)I3GZ`DVٛJPu[}ݎK)z%NjSM8,]qi# 0./b|jCŷrFIf$4eXL{S0!Eꮳ? #4[;Rc= Qi/ $GNU}N=XjPqQ[_Gf>7WitPfF_g6|ۯ0ebE/{9٧Ɂ}#BvoIed*Vy 4JlR̀HWr<]<5lH}#8_lѼ!*^Ne}(/$6ӧ⚒@Rf(Ikc Vit 4& %SPOtNTE L ;{e(XFHXO]zNVs.v=QҪ(LRo9o3n]ʼn_ϴir&ލh`dŰXk"q%~_]j8 :h^:ol2x d [Ei YJU]l yבlT@v}BҘT#,0wzy-^t"șqE b33a>5VTqƽ}FLlJm`D`Ka8ˀf3zGrQwXI)ebPl O dܞ;wxJr}|#Zށ//AeJ/{]G@صvtӎv߳r7F7*.ޚ$jtq4ϑk Tl3]O|ufX׋܀Vdpdl)6SYos0;8m}Ij Xjxs1v?Ü K8. )F|6LD$]>}"D^c@An7$]+2CX02&NeH {밾AVE1QÍC,%꤁R36㕞с~7,8~ Vsx}UC~)" cCVfT[D;*YSh|!GSx1CT,Вz* sjBO5KuTMMmTgs>G`;^6 e|5Y$mLhWt">+i_t]@1iKT|͐ĕԠF{a'ٙ2VemkO?7 5WiE#r9آgv ]v/-ron&HB#!^RxƚQ̶cP}.zp0G0L`>8ɝO+zSn漘Ib9'V{cGpvy:PEe[X0j W:n@¨fM!= K(nH@Pz`-ota"r.a{Pj@?AwG!g-x 3-ޭjJ@E?Vz _P~kpxMBDCh'ͨN)U&1N+,_(4۠LMG>qmg$ZGovJԳ>K2dOPrcc %e)':p z8ۦe/|S!U{Va9N {1\MIwc}Ҿ JLr҅=>S\)R -_ ,=&(tlЛ,2 q*i P q~{îwdzgş͏WOPrkf0n)<'"cۈ(=y؟$! \̸j<%{B7KtUX[JsM[a_'x{LW,'놻?ץZxrd CxΏ.'.ЗAyb׏`DϽ#1-Q<;pD8WӮ+H?Eg]Ät Q1ٗ[zw;gnr&L򆙄3'D7J%̬ax>ZNZi xwom?$v[pL+lwJ7c"ćYK꥗Uѭ>hQ3#V!F$pFf, \|Ra a]Q}snLȩB4kNؕӟ)f };,RV))"+`^xטcyJ3jSfQ僑/SFץQe^0&-7 s*O~OY֪b*3W&eQ-=w O,sй{bg\2,Nn"xàRMF&Y“j_Fܶn5_]1 J"KwQ$6K,׭SO?"C_=t.;ʵNZs|~2a(`)I :pH"L7!rurcW&2̴ZQޅ`%-]AF`WzH2U0Wxb>fX|dT$NBj|k "g tb:E\nq! dZ ^iqniQLQ吣w ,w/ A@R(Gsg=t__ ^I8zz 3sm`ԙ'PĬzUyD~z9`n1sp͛'ˌl㗒Z:D]8 @c wP[s \ 5M+$̡V&.@ y/҈R!*Π}*k;F 1-F~TLȋ2:PԎ4(\Ta _߳r:'ҚP~Qֲm,H-u$S6|XƘۑBie[q;%.ҭtl~0k8eB Ӭ\&Q8|>X|;ŕ˄_R* Pt G:QcTFHIǎ(6]S8!)_'c2E-,w_" πjnKMc^Z8XȐS\{ r6 xwuTٚz{ b?:Ĭ۩FBuH7$%W@m 3iҏ]:mcս(wI <߮rsqX[٪I%ӷu"EZ x>^E ;F}s*עگ]2> ^QhԷJ-|N4;K6+( *C}WqWc-q 9 :=B!V`QiEl*?&nC<,/JN #u '7†aue k~ cՄR>?9ga*&cS3۫`%~,ǵ8[IuIiN^&490"~(N }8Bh6oA%0dv'UYMau)eg<':m˾fZg2 &X7r@'[x\6[! \$JpN&'!Mmnhd&ɋj{+!TatvJɽUcN6 _y8;B-R &P#["KCc rҕ0I.4 mTa'+H :41ωsMWWWPy)[8wH}l%am d ]8(c &x9%*;J"d, f4X:>S^&ť>6>= –\MUam6hSWo&f*,31-,WcD\ٞI{q_b& Jټg O^q:y࢓.m^b· OϲY>>BtjLd=!]y G؟WI҅ߏ3;J U aLUPF-'J otrN6ҐIGnW y\݃,blJSj'9K+l—zvI=@B2^pq T%?;OUy8Ai P:E[2jCqNNɒJ[nͮ8 Ehg%K߹ߗN'pYI]鵥`=cuKڔw/`ЧY RLs0;ʔ`E=ᯇ1n$o+d䷃LJ H)!\dV/2e9k^?ۗ8 &lv_h+:}7Ӥےe Ud=h{|V)3/mF&WD1p:TS9fBȫ7"OE*4{WˌU/Bxs^i^x&v,sԅ,%wVGZ@N[$C*8Wy{1>'@U'YD;( aS$5>БJ Ο9(lpyk ^)?Z-oukswh֯q f^Q͐,) "IMfҔeyOl y7 m{X>(^zz^@4'ؘ/]& /ՅK77WZskB} >e3BC Dz{3e߯u{itv @D0pŝ52 I9RK6H&oyzC\wA|b+%<KkHfSba{Ī$I ,uM>[6{yîyL?7'bN #16@`ڡǖ\;$?-AacK7GM\4 Ti m^C7-Ʋ2VY!f+jQk#vKݟzBUÂ:Oz,{ GCyQlK\*ԔKRة]ÍO563[N9+ܘM3fdCßx,qځΩw{cj~>s1:}[zFh6 =K+AsF1AxrMEl]άG.S#. .H<ۭhd:inRR vi/cGy zS W`ϳJcR<їy? b7AKФ5qP :[ڠR7R}LM*q,k@Sԑ] 4R1F(ρ| tE^xmKo(آ:ϡm>mcsyU)?A4XC r Ls ZTԯa}8u`]R2D"9q2dوh&??Fz!3c>3OI Tzd׃a0ڨ5tB^LYRj2O:)if|ЬdD vꨲ3kf{O3i9 m%_X W諆 Y`̓;9`aB'skii9P+AIPYVƴ/9!FY;\eCmPOZpۜVfsq> Ո[r'g*=7%v.|9t\ z$SM ɗk mfl ok]r^ us PoZqXׯ42_}t"_vb04x Q-6"lmݘO0eW}sI~ V~3FX)>uUҊl~B{b GWc)Ɖ}B昱qJ;ZnPGJ4~'UDڙ<ԐnVC6'?9y֯ 1EQkĦ2#iVR۴|4擯DqkrY#{ƕ {3,lb__g}Cci{6."?liQ? BXG /dEEFXSIbUb-%V'1㦠|L>w)YmQGRc֪GI:t׏Y_!?LEr?fsk'n[/~#zcstXX\}vc .Up\tW'䃭*+ 7w]Mʍ{^Hk;,,L*{c:ώ\ Ut*-&"&IۘZC-~M7"oC&wO} ]-W9MFeuDq<]L+Lx(2́8QД1yQ&gF"S#> ;b9rmEL/0AnpY >W3W]x~ӮF< Ml܍:_8^ĕ+/VL- ֆ }$>Qp/hZ$ɠo`ѽóQC;/96q!xS;jj#.ԔրbuoM !41k&=KByF3V8ACp]V@{"-  t:j%Q7*qMID)*luXz`:֥/jKg<|a:]KTG%zszGknަ%26a O@= ,Hp wq_Tam wR +˖'-_Ӱ]T&V`̽G!@7 K&.1Sg:08Za+1ft>lB] d76~jb GP"4}y.<[f46_6 1)o4KD1·Vtn |E>#a+w%O%vX*w'ɶ'ul&tТC5kS|9' Jq~2Il@^5GyDY՞ gio71Ӻ~#~s K z# *rCJb7>}UC AiվUh/ŐQ>:ow>p% N|=}o8{1~Śd!~J&#x[I8i1a 9{JoƧͼ,OYٜ}YEIu)Qw(^r^+Ua _nUKqBBIFMLQTBo=\mO/Ws f^bvm3\ѕnYK#1?e9rm;BzCS 6eԺe1eHZ:L0y"B .qAvZ|ғs⼖ڱW 2=|l-kVm\[^Il`>zzs?,/`UTJ-[9k 4alُ͋RpzR̷rA/ux TFJKE#or`֜y ̃gL4C7\jSĘ]Ik C`0CEnXM|?ڹ0/ګ/AZb Qj W&ՖW@ʊ)`_DExbzA ^hc褘l՞ktu;\y 򠱍~|Iy蝚M傣R*AiT6DW HŰ=m;T#G_Iry .װ3;ʕ_t>pv*?ĤPzTj]M?U59 >*.T|SXndb4VV/1.T2 QTb^9<-p"t%g[2Od+Mx[l(D‰uO7dHŹ9>3dVOywtT}} `aR@la& uÃcc"cL _d3NfͽHVa{t l.0 }:%׉S&ޭL3e -NASMûooD7C`QJY='G>lb,@1S=gH8*c}0,qެMW 1U{? 6uи}.M#p9jD )W346{QQ}gBhWBL04O`A\ɪZကEYPKRfQ)pBL&|]{]z9i Ae=ƺz\_$URR|]\&~٩S)!hR'ΜX`82 k[ t1P 9G芑߸g''+Zߢu3оO*TMUyWz(5eE3^OMvA5aR§n-Y7p|SXq. eq3u2V s0kD^7vFÊ &  [ cM»cڢT`⾮QcnDs#)9Gu=+ܯ?̂AHM{H#\+dM&F?9 ?pJ%8=Jw#~ժ{`w$)u`~0A~cu$v-A.' nS*$ZFY_y}R8KXx_=@e6_a:B8(w\([CR`619[S^uX2pf3nHFVwbO=[.Ԍ* u -_]6Wĉߵ |1_Z笧TĜߢU/r cơn.nLBfN[D]x.m/2U-LsIJ9;pg"p|$GXc[o]HHG4pTaF)@zcPu(Nl'Gx+9i=G_jPywPf`NR,B7zb*,| M7|' oXfx7˸ 5k0'ϟ>0DL4ͤ?ksL5A /@q EzO5 .e$HuS<(mKc{o&kSJ'izBUu8coAwb J?3kut2ZM+Ώ5m$˘`LH9Co/ GPI]/VU-r] a`$f9օӃ\̆>#rgͅ]H#Q6!23Ag(Gۘ,07lyP"mcU9MS?ںм uz:0oհQ4 ;YFmί#C t?R*d&+>OaJ&QgpWM vy٬uԩճ/)tCg],GbGmMB]T=\d  %(Mp1Ma쉟1-X?)dFOTy:~Z2!qT omt~fsvӾ.Uq{bG 69]RfgiJ,g=<[o2,#1eb?R }HZ OPΨ~hVxi`'qzZP]͵ s,qP\2Fm߉ؽ!F Dbc"}Om2-]h@4 Sq|!+Y#da;5 'CL {^dz&4wk 0m1Nּ19WP՘WD ‘"#ruqj2=wZb;M4WDF5A@(CeM3 nәqGoG8$[dQ`.st@Zq(Q߸HA-Kka9Ʒ;{t3 <{p")Hh:?SK4F?CR[:́Yp_ҨVGOaS5k}vt&dk;bg `5EX]sn]ԞDt@ILK?4`q#b}m4FEE_eM &!~{Wy+_6;k{Gd|!(%dx1؋#|<2}C+0zܮtxD{Nb1vI_AOt4y2 VHDG]_HGAJ}6{uOӐ} 3n,6(Ӷt MnJH蒥5Ɓd@=>>;RvQv!@|֜MZ{ɳa TϪ0[oA:;əIe]ڕ[rHPda~{ ЫqI[sl R:aO;$tf:wo pܔgS` ):iZn64J^?jӆd 'FAHzb/dvQ65}x ȏ&bn'cmG;("tƴ!H|vaa>AQu}YE."%&0XL40fmrBϐ5Ts#.]W@<$kupFv☣{?YXMX~}E:3#VxE zXVrAo%D.*N~|n\ Iz hl\R~>o|a^kgmBHd8^yÞNc.I1A{l??y{@aϛ!tP|8GRCh"20'RpLs|$q8CI%qa`Q;< H Պ-9@eӤI;cAxj)FH6R"gZ~:l3[Ns>{yk9Z1ZRj;q0ssUٱA\=\MD=B1kĒDN4:Qo_jja$=L^7H:YKXWTjT4|0,Ņ ¦U7j5 /x,17"k}XIkc٧X̾Bv& ǃ~QST2vgpsF:Hɐ]KdxBt;dDKU %Xz3j@igX8;74@o$D tOȩcTM/Y??nJ#1?8!i5H'24&I-%>\=Ȥʞdk uozUDgl %Uy8˵Y'q6XΆ.bv9!oG0qG@yPC(Xs+q9~yK1J Uh1׆+kܡ(.3\gݮMYC0N36`OL͖>H҈i U>EWj-2Biq)$IQcMaV@VSA\-w qgoiH6]#VaeMG(Zk w@7'ޜ5/!G`-=[B;iSψ3PQ ~՟+D%132Ej8 K ޮc,;Mf +MR)cOɝ KM!}'y!Cr> 5pz } 0iʾtԵ&h |Rs6&K :hD$s+x&'C=NZ\<<t,l2*ݯH0cE DB"beDI8XLga( 8eoL`J d rU>"H;ՅMdZzZ2O VW $H[a}%6Ďz!?Xi͘?I3r贗:j=A(|\,WM"Y/z=XPq[{^/#UIOdYH5aǶQYQ3rҞl2C{W`U~@ na,7e= =wd۝CksmC^H{Tӯ!]+9X6.wa3^uxT +U ܏\DŽI6}:"X!:kLL WE#Ih,sr6@oLmFݲJ˂`^< dR._e<:N(B_ߡ4,6_=SrZެzFf =ɵ vaB^ɦa ec*\B;4fVeL3h/uNU㭥2I1;s }&j4hV䓊/ u ^`*+=hrؖ zbbfE7vfDr_ن,F2ڡ%[ 𙅈@04)BPO LZ$]y0yxst'?*ԩq̞h,Yoi9YF*fsA@#^nWG8gPXčR8ܾ.Nmŏ҉oysoҿI~q{ .dz>g({9ޠ'*lsssK;C eⶱ/vm?zF@nb(1YZ{2`p } PI9 f+-xJCh yE-S c3x0j}'Ŵfwy ;5 & -mpc hCW#ˁ]4}̻˧fO\C ރDZ^=IZ"po|"L4mk%#pI} "wۑR=f1YO- $rƘ&~W-ڠgmB-/wW]#E_I#4v<2[W@܁nW\fsOi4:w>xTZx!(DroP{/Hpolk+ٴjr*/5t :uG̱ :ZArJp7{ƯDmˍ6 {ReI<V]K-$:6]OyŬ &"K6yf* {"USGpe,7=8Q"/[6 عta>k(8}171*U  Eb&v o U~cZv iG2z0<*mlHTc-$S@Q@*I<h5In;J;۠*l aqL.)WkM#Ps9W. {QJvb50YfAQr96w[7dTe!Lv>S.~ѼpNrF??4h Wq猾Sƞ;DuϲzlLj8Y:h Wkۡ1:u*\5j'oY"}̏>!!o%9Y9)h$OS8Eb(b)b7%[祈|Å|Z`{ hٽ*!*/ ;&K0+0{ZAA %qoOz~7^tkg񽳬fmZOK=y}K %XfӐI@j([k;"!'=h$HƪR_:U"q; 0ߏ\3_#$ Gn3WSeD iy'^7a Z v]<ύ Mcg[KZ%/-NrR5 5)h1jtkRFO X iވ~ɱQo[QD>9¿A u:Dm@hڳ|:o"M1=,\c*{Ys6R!獟`|MvNӡSXKԘUz:wz,Gc $+$xWDS'ȠH^2 EW_ͷtp5Q>`=}NeTzD<$LEĺLZcGQfxG%c>Cackի9=d,h;ec1z%00wc1C`tX"oj !ȞtNCPp'{% ~r]CwN Itt,:qІ2ƿƢ,C;]41~D}6i]-Sگ6w8-v;T9GAjs,.O耨ׄDiqyQvFvo$;^2w&>-7U?"2b22&: 7kǩr9o>++osoń>=?=[䧨QȬ3 Gu[+ *G쁛\٨'f 'n\X 5sRߚn!~t#x& *k[NbFtu#@˻EQf}j4Mmx$m!0ȉv/,[OW۲jchum"ݘLo6gN%6 ?Lclq`](OoOưdN|#_ߍGT [)eYe2 &M2/_R-` ,nj#cnZ:Z/Dl"0&s:Rke?qRg;PvU'U vx4*U(#-tGvMUû2=3J_i%i3~N8O .T7L ث^㭸u/";8SԽf݀E$礃&N>=r Bu")e?ϋ&p3na"Al6&vMx~()͊/-Ӂw;וA|Ax [ibj 2s m7"dw -ƘɩP sW`8zRU[Jǭ (y_ }FYNR@[L^O* kjTU?bF0Y%qSNF"0qhS ط:ZX3+;IuW| k4B*wZ@4<.5a=-)'znE "b8\Z+_wJ/]_8\7~?] 6ӻfYN Sу|QBiS.(@(E!^r0BjšW>6̱ pPRxE) ŤDc\qz&AmwjL/Zo<): o 醖(Zе^"CY9@S:%h8"l05HDBG+S]xmMS\R,Gf=˯uIǎ)˸E|6ġJNv&;r~h4 20-Do4@5}{D 'ҿLA#1KҜW =XsԒA%RZX8Xw-|*6ixJX'm8N՛kIMΎK9{sQGM|NuAI*8T6؅N&x=?mЪqx<[{&R9FM֏KhP$cӔػv@ؙhv-1a9 ,uH) ƍZ~d )`ܾZWU4GD-^|~͹A0M|o)xur6VIeV g|3){q LzicgiYsE7k:btz&L+tG ?كA-k8xyu= Fr饜!CT"?} xNKѲlM3j&(P'KᠠBln*k )\$wIR[ "z#_@/._E1mm H㛦X[H"g˧l(x:c3+,A s͛k#1p~&iu/ |)1#D8@_ϋvMQdH٧\6 ϓA(y_#ͅ2R & 550 5dp UQA¸&!QnEL) 0H[al؜)Ŝme$6Qx(RSo!sR NDy䱉;h|D`z0mϵKi !]@ P L\.ʽ l JJX`WvlE绎=_BQ ey&{ lWtD{A:n0K.,m)Ie_U;Y|]EV@C<,dyW)BgGn_// .UjmIo(,FgQߎ@:fA%Ww-xYup[ʕ6[s؊}v&lWHx|6g+4Gz r.Wg1nq(]Nl`6}7њTPdZM"Q 1.)iF r ۽-iDLm1p3 Q> lY\zI/Úv+ҖةE ޔ6hNmBZ`8@PAp7B{w5cx_PG0a0w? c/evE)png3I 9;KUIn5M.qu 3olxOO: ^w`ފx{dQQqbZb_M6Xs\HUۡAnސE虘]*l'x$+tU#p66;Qq]HQZE' u)lǗti30Z͹j迭V}$(B*|GiLG`_\ MFLH-!EEaJH+%n^S' Kh_"?w[ UF7:6$0͈{WF:F/Sh/eںw3n k;Z80 ah폲 5 UE{4"܏)r˴IZF5@S1Ϭ8XƲ1Rq#ږfe-WRx0fB])3lũTFJ49< ^yD#ݻ _ێ'-,P/G$eձ},]r6!gcL3}?/.~Dtq})5 ^U*t94 R *Ve9ɢw@2]jR|j(",ܜ{JXbCr46ཤ%-;Ad1߬=<5b,Ш!8t wJ/AIr& 1s=S]R 4=eh4 1b`^ta ImJ,gm425Q^%Aؾ0ޚz{e G1:X7A`i"C@R wp~n*>Ь),*NS9Mr 귵Շy$p$pL|=|pRO>,"%Vv C`k_p!L K/6pvy|[8CЀ&U"IƑF/Di+9;^Й }o͖+}';T{2 9`Y-*a癹/S|x #k*&uTvokfcm%Q?2/~#֘hY$1jpm3=ŢJ !܊5n+N.b z/\* ʎ?1=C6"H//'ߍ 9>DlRWG}64[_#14>67hAG>jӄTrcsNț~X'T>d({3ڻr7M#p[8zA7_/9l=H9Sؽ862sy4Ju1٢BI|>FF't3Z:Z(9d1r0}mayKEWvاW ʼn n=gz3bTiM+޺eLcU]V o/8QYo"^[ o&fW*2q/yVI<0ޝV.9㪨߫Ȼv9cV 11+b2-syį9P10(*Y;u bCAP>_LWQON#h2("VkZq$$DxH31%k<]-Սf9J72!Xj])A7ov^o +!mO9s8<V)&8nڡ1V{Jy&Uwx~ܘ[ұ 62@'Vi 9&Y7F@fKa @ݠ_=>eF`q9QipSZwz^vzASw&! ?[Ivi~-v &k"-ܕS˹0 SXNo}9ZTPЕ_1Ο6ziy>,;%iv٥EZ$5=0I\kyy` 4sA7s&!,n#N`P-ֽ~32ciBSyL܌xkmY1} Qdġ7Y[{N0 FS՟\ VѨ !|K> 3z[e jF,͘频||{EȿEvjn*>j%wm6>X-I1˖Kq˜M'Ý~ܓ% H6="?K{Cau1ΰul#Q|c2\mef w(o{\`o`{FQE>/PM&'I4r>+[geƫdDe90p} &x`2)B||@@pߨvδV0ah:T.oPqW^vwg 6R T%m;j{r[:k&.'+iI D.6A,9hԎﬞ&vitȡz̓2u#^ַ kȽEvVp[aƢqN; a-2bҊR/HiY ,{HC|Mn)'*Uicr>n$Od}"lԘ xkU~SÿZ#vڝ"f =v?ڦAkyAuX,U[v "ejH.+o~̷)y5&BZcH&~:0㨫AT>8J_n+tTbD.@܉C5wE)^vRÇ(&ce""#k+퐟t!4kIHHVy]oT9[JG&)]K_"Woz0*.{!ԛ ~qJb̅գr]ZRQP.5%@s.Q_ i~?Co4P@Xτl\rOz'MtIN"C44.ZSPHe&] u_D>#@O@zȜNjscX6¶Si/r&\Jw)8|Q gؗpwu*Fh% yG& !3:H93P궱1hr*!ҡa;x)a2΁^<×hH",R(Αڒ6p$&<+pSt;cvn8]?#4z>?XU(eF]m F|4=^%4N/[Ek~NNSީ TzS>~_XQh8@B\훇ʧ> tmOz5}\`\67x4= V#5bp5\ֶ'Q<_AMxQHpwiVq=o_"`> /)E^}u!L8,Wxf,>O^3sX2,"8~ o2ӎRHVPK=~hyovh2dg jO mJc0ʬckrqxQ[lp\x mMd2ffT/>w4 _YvtՂk#RyN+ `4 ꓮ(MS"H{Z[t\oH⠦0T:ҥiOŃ@!p;{D_ @3L#&"Ώs8_27L}Fx:ȅfk胹}V`5PV3CIx$*Iߘj&vMS UgZ{ b~z uj:Lxy˂a@Y(<0%Q[MBHA&Iw.9VaY\TB5Νa$Ffmbj243 =:;Pw}җvcsO .=W8=0~ʌu<pegw?61P՜44oF MLeyIc5s CCj[#r{3GvM?0Uvb2ZD"(?5wz >On!:^֨2WȿO\f.Pt!dRZc|.־~ ɫBm3BOҿn^5MF pMrɑQ5CÔ/n14mw0(Iڽ"$;ҠQFdQӻNUKby ִm>URgML<]kP ia%ڐĘ3a˻Z6΋PCgBPi2_nuwhLe,.Æp ORfm;vB C0b $Ys?߄4| Lg]esVnW_>wCza8ȸwݻ$Bl$̂&x0o423YBwL= |ImLw"e{~4Z6G$:T9_E㒰T8i-cO g&|mz֏whNii~ZLP !Ai=P MkG~ -~K&&HRka%\ob+ӏTDE|6SHL^Hʱ'SIш^(e^s)XP|X]mߐ "k(5KIoү^e?@8gDk<Y7o6g'>'>> o]Kp憍9c3n?ږqMgw [" JxUV=2t 8ocl&ޠ$6vľȯ.-_z+h#p[7ZYbW_=ZX5cL:is0DdHrWlJEO@ =NbVB*]%Z{hUɡv=#!1 Q)ٮI,B%&ԝOK"VƆb@/g>[kG>eǜ|dksEsj$VTHXZ `3NƮ$p R ciZopWH#D5GC0l9k:~lx'd-i@kU@O4'Tnx Dc?9 +Tp#2E@pD 58'fV];-@MuA -Bֻ݁ ?C§n\g|r6LL3 hZ:wfwDGIU *t6{*&j_ aORBx&ڟPppMn`؛BDӗj@p[ m$tTG2utvg=$&P1}W`A㸰bJEhs%e\wҍ¢- 6=Oq.L%jBw\D;-a(9 h0t(k὘H7xK hBKFcqtBc ⻌\3 nӞ&^J^nSA`Ej>xOe)q / hp<&Ԛy,?>aks|yTew2|4M\BA:r~ x OUv}U:|IjFl;b,H MA;Π/ۅ=9/Ji5_;8 *]5$[bu}pSK?L°0"߼]&<9a9=ԯ rG.ܘ[Pv-0PS +(xo(*Z(hp̾?wĀ=Ck⌱1^ÅUtO%ZDl7Xޜ 0;s6txXcvh8y|i]'݊WZ)53c>[9G{sB¸~Kԡgbt;g滐 K .n]iXS&h/{^68wfm`xU3\1rW(Y/{6nWzIsmneEО iaƎP- 8R#a 0mp|?\ɦQlY_w$7.PX1\UdΧ_Dd|2qj"C#[J³ H~BZ9m&S,Bd}Kˮ!ESN/LW:YEFSo|?+Yйk,ӚGqD)ԁ@R3M6eX:^ݔԦ, X2.) KK/OJʅ7]j8lI$2|eۭp[8d /%^,gZ9E9@FصhC2]Ez_3nw3volgA|YByoB F ً1Nۄ/l`~>Jb%J\WsyP0jQ=Q- qJ+ɽj!]:˕jr u;~E}T6 HPlNC+o/̳ I}J\L#u:=E`ɋ~e5 \! xLu\fxl[ -+>pZa+g_ Mū'zc?A4_;2fGCR^w$ЛKyN<󊓝AQ̸֒ 4D|.ebI 2P7y4N{ ꎥs:17]y_%$E;E΀M*u?{BX%싚/~Ly6rrk3YWB^({Nd_pB>/QoТJJAdۛ N^xz"(9!BO\4mmUYUԉs=b+?Q,s&Ov쌪t=+! i#^vup:m&\^u׽tod..T۬ Ff7HLR'ģۅx`Q13& 읟ThM|1N*@G nO ?TӅ)}DZ6ӇP%l8RΧrqm ̌eݧ|M%OdHk,!UK0Pe,tTdUɇMT[PN-BFrj ^͵ o,={AXKz͚%SYr`B+D掲l{jsKw[^t5w ~6$HBhEz"l5[Wm7C^07԰Z,w\ڳ9l w{ ^b<~ң13rG՞g{s 6 ֏edfs< K3dWb0 C_#(/!ɡl;Hsem<13((HYl)Yq^CH#~k朄?SLdp/ju?qk4ĢبRI.Iw`|=)78jDyJO1LdHZv`n3)I%:%~!|V1\4E؎p!ȳw/$mϐ҉`C5A )Ae ,+o'cqC*' z/x͓lt5|S;9;Θt/{3?Ro%[/ 駀vToi+'c*1VsWA0~Q5Be&##f1`ÙoVed94Kå\Ko2\5d 2ʿ"<8tf_\y1EJTz/`Jo/o %Dž*99Q*Yͧұfn$O{g+\0҅Fo_<5)>{&ma f|sg=7dҥi,S;Wy30YVpEw =\.[Uv61'M7Xo)aM7(-J܋Y,,($]1g } 7G$~mm.?(ڈlq˄bGֶEhUr^ 'y!FH=89E,g[|gEo,Oo2r-"m=5oqs9~3KR+lO :4Z]]89|"S"\H)yenB㐝NH?@֬c1YXh9y,nN"ႡeT4fcD&F*CE?vK=J\Էd}I&{79p~:H,Ecv$%Ӿ05ոnyU]rLE <ã[oGo<&l1VF^8yEV|}X& d$q#*aAY%+h>  G1-{:C1>QExg1&uT@c\Μҵe3(zM7 j㵟rBγv'`~hsaQ;zv>C&:`nV_vVhLұkSnu/>z3 g-pw>B1t9i2c$aaЂX}r೻8'Fo\ i6̦jIsbX{^ʳw1vC>Jbn=27ȰcD d{(s/ƽm5vlWPrvu$NN myLLYMٴ˪ɃAXG~ЇJ΄rf&*mXzaj:t];3 IVV[i 95'r/WHS=Èٵat(;nўff'j1Y53sGPgHcBi6_.ltÀ{`[ t r$,5zBϖ_nZja]- +ŗwx<0r @ΖIjfy_:KpkBVi@k!CVҲυaCM.X1`(E`7z *A^t6 5VSρ΂3i ',i|N},*3VGT̈́% ͣ:r Lj-Mvy;j  yQfO^@.DuJ?,D.x:c~3M%+ 2x&[3 ͵2%fϣ0A{-^hQWc%B#aLb qkᑌ2ۇ0p I{GʏFm 'c' R`/ExCQ `&qQY(3(u%9W<x<ԩi?E*, Ru >I땉v'¨٭?H2Y{Mx63+-V[o'}LQkɪq p#RƎ jYxgT_.58С.VX|%^d6[~5^%[v;GXB11Պ#`y]i$?V jGoeMzԂG/l3JW@@seYnmi؀RWBJNIЈ`3ңޕN;&ٺ4a*~~40j_hWOEW'0Uֹol }zLaYˢZtB?.tDFMQaB|M+HkA:%{{'4v)tSM)\dQ O%{$*l-DDaMZڃt= hYL崻+i_ogfr]Jh'yrD aWk.}Q9}fΨiі} Ej+hi!h޺"4$;݋C5CaHӈIqB&,oc3Ӡ~O"z[!g>z3P;jrWS{^P_vhD2J e:,PLؒ0bL0mh"b$!2b̎h> ly `f!q}Do!W;|Qy'`r++zټfVh7i.XWqeͻqdčnb~2%;i^%fkvқ;%RnvU%"HpbHiV]-v7S(/#{rO>"%szVnjFS |DBiBQTiKJ㋌E֪[sZb:CǴEE\>D!%XS8{w L@Њ̘FBĈÒ FXf/\AYKp]=jY~}_b6{WTײO!) p?C1؛tZ,Ł_ EsN+w=]h,QȄݬ$YO.frC.?c-s0QWiW݉)өeؙ)RFI)< 0RԢfOEjo pɂJ+FCdΙ.HhC@jY[!eX:as;-vGL9F$Xn3(ߨKD-w径6nLnf"#ՎW4S 9=Fd-޸9WD ,?}{xb|CWjlRETލV8)#O̍%u{BQH|T׼hJOU㤼íYA-S @=rU=v֒#ya :aU N둺l*?%, 8kγ2'j+qۮ-jUQw-.W1 p{[t՗om%טe}&AQ"rH 5ͽmD9M;ElC1;VAVpmPc/i1xxa\(#tpz#?h{#4-a%| D5JL eyMN.tynSsQUXg'a`z>mH< p)hBSH@КUBLNMߌ+l, LTgpY$Њ U+x֦||y.at$31@ Mn=)D|%ʺlџ k^≅Lm)SH{/UXN@kz ]B(ZkGC{H Wv=\i}p,D;&JѓE"p&z0800ZD]ñF~ҐM8^_U49􏚩-JkW˟YU^ y;444^/7 ?8:-e,VQ'-dӚ"4V_=rmAs\C9& ~_20Ƹo Yot?'oq`t53pUY`sRm6$,Jbwt]Z d>0JrXdHƇ=0~jm&䖩Yh,.o̹`wvv)r.2JVrtCӠجO|Q9f 7QkrsDI[%γS|)i[ Z:U+|O47>x .>tP*lz`(XӮ`i׷NKF):quZg 6/vI!o}rnź5DLOTYY m&6;DD eTn@=ʵ8A~*,l.G*XXUTDb,9!= ٳur//LPKEK~o>)v3뢬i&o˛9ҭ`Z:J@pRtrz-;V󙎴CxH8\qQ5;.GhCtմ7WIĻ+)}a%4Dlкˣ҉%q"7oF6= oTՓiҶ/O!$p&DqCs,[8 6-bkNoFTs|dGzHc F%1|ée50ˁ7K:m*D0i0Sڀ:钶 M[11Ǯ clD$.aZuyFle'+~ Hsq[-H6Z=arg- wW4zڳ!Vӽz|F|]0JrCGl@-͞zj K&-ۢBU H 8[:Ix3`i߸ ں7ZhUBi%_K׆#J9 pe+t6wՄ3i_}PmiR!{?19YnI"knZq irPdЈjE`fe&p%ӪEycp+\qY>7/e<(u ,ݾ85t5`z23@,Rbv(lv*\|H=P`[' u:F\b5!283u!,nD_O Jj!"N(`]xDIfKnFz9Lrbz 9zm]@ɮ}ʄi)1IrpgPk:e: +vfuVIQ0MDV/qlT{-IFpHQ} w-=Ȥ:a` RuS1ݖ5so\&zrTy<|g#_da= K9=j%"r^zfUyyY 9v^-:s9?sj16<{O!01,5T]n'i-[@a7d#C¹=I;~߳|;OglnuSa3(2i3)P=[!Y3QnMuTd,]Ի hvV|p d\d^;f;ю+/H?h?-6пM 8 M ؽ8Ej S%[$U$5wG@/ [PHT#n{=^MȦbҞ"7nTq.-|}PS-0g `"f.Y\Î =04aDZ5v7móO?Bb|@ܗ]#HfgӱXW-ڳ1iH[60!.bޱumݙhKOYF dFd֑+QL4B`#f9&l6ޱ$EFY.O0Q\6J[g?Swn;yRFdbd|4)IB_7Y wGxg<`ʫ')P0?C̲!zb(,sE \>Tk!\la"jT So+ȷOV}b`REKɳ^V)&`6qN9g޶C;:T-7f-R%¿RaMsXKB$npET4ZVٲ2aډpv'+W2%o'1%P.Lq}7J9Ne[_]l2?Kz^X kp\7apD6 w80g*8lW*ʙBF]7=t~ҝ*+/f׻LAe8ά0Zj.ku} KUw-Fe1Jiґ@5MӪP OdSݧE~j*k6ڰ>t?2,Hs )^R F1{Λ):OG IUAT^t$^"!t=U,·e j9gSDsc0ĺbK jv/Sbۊq2CbHdIq\wT3Xm7w4*EWʜć2 '~@2T[S"W ЙUpޏwF',I8MeG Z(`@Ը{%`GA[135 \H.KګPBO9Y 1z;}p=iGQ17z6`es19yRW(5fܔv~7u 7Ć0d@. ?J߬Ϡa,bw5Jz/:I,daz5/6T'j٣@n!]T;ҬE%YG3,mnzjhKSӸ_|>G 4AJ`)>;@%4d|-$  (X;76'5"P¯^΍+1O=)H#%^FZ^ٕUy8̽+Tq$=o$7nb"0ÿF슏TiqӋU%3!hHTNOݦ8 l-ބ2 snRLv(Caq(8lQ7SS0tjk]LĠalT]XO."7.GaۉD-ˁ?YA|Q&{iDt6Ǚ~:V^X<agCm2#v6(D\?hШM$?V3ihVUiGq4я矲@%/=̝pI{XgNb興P]'2{+ά 2 FȤ5/y'nkAjڴH9܅jR+!5Qk?ۺӮxȢL7K![NKO{OW%GbΞP%?>"}_ؑ-i]IUѶVî9$:IUmCJ:O{&ƭ 1ypɣ'D^oE2$ m"ڔŤļ~Zڴ⭔mW!xezOmn>sĐ@EeQi6?,]62F (XE:km&\5$a86]!O'f">B:kN9K~ pkiސ:x}xx!6cu?#p% [[iOg+#5г`URM5C_ٔOz<ў Gil!Y>Cx{PNm88v N S>;n^4GA09ףt a3 Š ȽbчsԹ@Y(SzgC{ߔ1~^q2>Ez䜸{d i7rW WœboP|t0kHnK SO:>Yuk)va]y*Re-ͼR.^VCBv YWCIe#ֆ8"[`ѷGfaSb >p,ggS#LԢOkp52ͤf[TgMStV@*{/_8c = =? y;EbS{2B\4wfҋ*"^~U̅/`S޽ȯM"+XLIDR/͚#Z Ph!iwPf\|՚](g9#0FO\[8U9"am4P.PYCE}C J#yYNQT*W#n✤<BɄ!!C*x %K8r8=YۅBp#X\[n׳>hȴO~ͨϽ <3Q*k yL{Ah/PJso`opXY$9a]7=LAd7 ;Eu%Txcv)JW87gSOW"1;.Q̵_ž"Yx6*mh$+^}ˠC=l z_ l .P JTe RZ^JJ|">6W<3sf-^#SaG̃DGpkA0{Ds2t b/UDeA RkTl50wk}؎CʒjN whp:箞Ĝ, $,hK羝Z-dȗ+/4R[ب.N앥T+ޥQJW#䦞VnLuHe%" y|mPyC6YMاs Nt&X1?uOoIpbu"zl S6k@Mu3kLs563yYnSgljɛ+IGYbXm8kAhcPPDK$}T6\&V \ys=y>B]lƚm cCY]A$M.F8;ZB9s6ӟMqTCpŽ$؇jvl_wd<1d5ƒ{X D҃2Pwl⽮]8N=y起 VVV}i]ל<,ƚ? 0|2 a;b7F̱F9.#P0]1py^T!rQ|`8p@,shOo;KGkh̭X2ˤܾ'wUx&Za&8J ʗj1t3o9(Wx~)0Y yuJWKaPaS# s獦w眧q7=[NL]Wh=g!M#LJ_sPrlV Ï90Y(ZpV`䏃M6~WYrr92;F(=uR:sO$QbO4 +.T4zCZ4+anPki5QNL"׿T|-lOX> $-Q5^P%Q&?K/ ^/ы Ҁ: gjq)Mn5 ' 33n0=ki6զDON_B\gX g:fc,0b$nX2l\y$y(aԛ}+-9Av [^9hpj F/̧*4H r},^p(lf1=N;]fb#\Ft;>*Fyg'O͠N!C4Na2rz&QE)>tH6%qW;:Yc6l2ؕ'rVg8aaTƫj&"t푔m*6wIt_c9A{f揊SWVN.R++h$3`LaCBFʈՠIR4@K2A{ Fț r-I1-_p#_ sk6ߋV!?bZ#3̘(2 N۾= /lZ Sf:'<@8!4br7w=:ۛ`QX~= iYE-8yJga0MSq`.IWRb/_iW׹.Iu k ~S#gAQgHxu8MbfKCؾ"ez]-#0(_RI`ҫ /xi9KRK&ul +y[lkkX_[hk!xΠ~bI^jb/>l2tZ1"0@Kv P9ރ h0̶ʪp-]B$0ؾr#{L%~< ' !7({kHT$mCDA: `P3b7 O*ٗhqÏCS0uqn׻zc-Cb3<e4٢2Tڋ`U0k)jX8i5y-|oE7pGh*9\IENk +9m~h.&LI XL*8@GpJ;>/3*N'KF/ 9ij:bv7:[{aLn;ǜ\{a{SN))402'hnsOeV 3=p|2eS|JM=NvӍ~&& 58o+F~b[ L4kҏ/gQ 6 WmV@{e+gHt`1ʰ*&yݔf@jx c~uo1^ ޜ[Yz%Im'8d "{lDTî;߆4q E %wBrZ%c!Ku-Pd1?d *'wPEHfC D/rBїyxŹkk8tPBa)([xLr^-d jK|s;CF#F&ujj>l|+{Oºtx]*ל@|-}᲌Qxp41VdqscE+̙C'b|/W,gǷg3PR%HkO$6!aZI߆o`k:3汥T; xr3%`h$^|lv.1GlNnI`~`E;< RNhs) \ϣ1^W NXUpnrx?gw+GEʈ  j0UV2O2g4Xwn>8#K-&_Lr Ϙ#"uBGbA9XH`0UQM MV#bG0TZv6xӐ־ϣ$nB^37͝B7Ywe2&}D0Ǐ߻<5kh+#=5kc4pT +q_@ c8VJE+JWo^mj.T3v47ғ) Dz*E d7/xa=>G K!on@2l#e5B馶KӬTz;)ϓYY]-$}gQze޳?ҿdGw:XJ}r)]4X^sHwXz5Nl7]xr+9FM+Ҭ*0j^ks̳#ܟz`T;`YJ/dy5qE2lt"OkZ6QAu}e2dxc艪Rw b<&LȚqNX?z܉s I>~,D+~.I%a7BD `xrX>e UZmM.f:^ ܤCS*\01&?M# l7j[xEDW^ {>OŤ .\lcb/8ܚ \y]!4ȂRqA2x*zA}nj,6@Q9lޮ 2h-CV-Qʸ@22粞m(TxOuhk-g$CV8ݑ#wB~QF H1X$m=bV,]D'&'sQ8[[XAR`LkjՄ#h<~ьtEܬ[Ҹ% &KBr^qt swZYWW!웊xLbz/Y%)R!H3+Y w8a6@9kɵ~C-&`c˸7-QwfWB|!4'"WjkL}@8e F>eZSlcJ Ya菨V,K׵hb7DS_~y5 x;+e3օ>+T5#^hQT~wAjLeSnQ%zX x,tK,n4īG';#XZt9*05\:ju IGG ũE C5ϳBz<0~gÎ =>NIG }m .g:w }8aY XcˁeNWwM{'U)[h jO¾yqۙWѥS|#oHhi*2._T%(BGj<v дoS`[.0 rc 5ZOז}#ʬNѼߡJroN 6$~OEؒHy_1(WUP1f槢Q,}7+xϤJ:WCI|$K75 #;@W[k=b9qUOV˴1<+=XBGԚr*vI6q [_Hm3 oү;q\5lq/GKo]@< :vIT&쏻Ǜ4 2XTa(,kyɊͥg)x%dإMEpލ..:51Ħs#őUK  XDpAo_R[Q#8uI<:ω?TX h<}6A~_<뫔wY/ﵥ&8gM|EmV@6B;K,䋽j r9P(t%#]TϒՃ|Αխ@7V]IrR*UJG& uUE:n \HZR=1\E;RWK>9%8^#Jb2 d"ҵ,|is)X pWX7;ڗS8֖mʒki%tb^dDu鱫6!`~02NlߤATxD='䅧{[Lk F5M@ eF Ť3.Cŀ$҆G/t'حN}ӳ!9)ѩ6 NJ HY9E*<s-&!e_= kZăYGh.yh! C #:4fB~f? n>(v*%h!0mN;cl/\"ʼ;8 ƫ+Y$pf`kDsoք-ypj*_ic]kq,OPi*č[ᜂčwau #,rmYs$[K=_I3l{m#;n cӍj.yT4BXCKUct>+z)s팏epwi!8IJ!DtPhSYrY@Rat6 ru?/ilPPKƏDVpwʢpNar/X;A+Ng;i7 āRcՐ*k7{r=Ve}}=r{DYЏ׏p|y:gyą pӓNlF{mNc*AjKJ$zf6uvdj`[o KOq~nB)gKi`] eUJmxT U>Ӏ$iߚh!3|ߚƸA|_Ŧ}YU]=3޼e]Xm 4P~?%- j'0cyFԑiċF3A`}$βG_r8l3*YD fe }{*"C4m%-I Dn@PMc9P+$Ty-0b?G3qŴbh}HQ}#Uz|4qe)ߔ%$?0ų{.)l7>"aU99Ф,_44ԑm)me2Qv<; !:i Fd_Ox#׳NTv"^{Tۼa1bBS6. wX.H}˾O ¼&̚.Щ&ҹĈņo!c^mK& ho'nm\c6lMmGɭëm\Zpd)}!)~_0fElS ؿNsZ$#?b:jpx9U9zq#VGy[`QNHB-"t̂]VG wS.HJ%,;_Lvy&y.N~:bQ%A#جa"PIl~b}7v|'R6GXtt1Ho~ "ĽMߡ-35E{jI&As+$ҽX8zjj%v5VU4v[JWa@L'&+ܹ6]ɕ"2cl {.DX~6VUSϽtS{V!y$jp݆[OHjV~Z2tDYԙ yggNWIa3S7kyP\rSؤSP0.Kb @k=VGOPaMgKe׫&~E-j7:X?AĴeQRm4p&1]hZjvDR\qy(.Dɽmfd=I4ǢQ*di*5~|ZIcf^ PWG:!qD'M GꔴR-(]2XrTjSąb@Jճ}Z"h6_vЧ֠yrEz FqjAZ縥'ұYi| ?k#bMe]1w>7.۳V'Pe n,kkAf|P yR7gR1cXǝE`bPg ENQڣb݋~@669G$\>3kካgf9p  ZOuUW XnuV^EoLW`( >.9A].P_#Mt5׹]^txW\qMlv MQxgڷyK6?5bGPh@EX1guJRB*(¬z$> t @0DEVUX`)̂J[Tb|m) DT Z)(I~i `}U*qլ~RrnǺVD~!y㣛ꑋ73%R .f"r Clg—^ (  }tg5,,5!ة{)-z{Y&! B}oA|.9ϋ.}VSl~{"ڠEcxVe,˱1< ؕ˦)ʶPL@ߪ{Ď{-GV|{|,LǞ ;['UxD8uҐQ.d((1|WɅ2{:EǥY;uG85 i]0o!֯|ۭ!k;~KzY1Ml ڤ&Vz0I'ѡW\,gּB A zc3sn|@~/uϱqemg hCKgSLb_t=e0Bo?@cOe0fU(4KUkD (WBM ҵ֎s"YzH({LQX]of?%zqT7P&s Fր iIhS ?~35tڟ@G; mT^^Vz͵bˡR䆄F=\# 8t\j8a並PI9wj]Z̗ﮄE0_$D1%99z:ã l+Ooa@~j1:Ímt6L֐C*$lti҄whm]CG4c <0E׍Y3#ДE*<ewX}~=i2 H[0qP2mAS:F,*$Lp*ܺg'h]&xZ`jbs45'|4o~o:;'C栰9?}& Pl™8^㑶ľV"Cu&hp 0wkPUzG&3fQ_swXdg HРplZk7F'8GWwx(]Z qױ_P@/`F44zaJFi0ȠQn <|xi8\Q-om2Svw?2Qt$vt͙{ =s~{oio{bL=.T 3tDn8aNK1#r:XDۍ(-hy }OF~ Lmd5:t|"ɣ9X6_֑Ӝ*{-m ҆':SWdV4q$R,=n6j5'hhUgYNllytqq&l/fjY3RpV^KP/~RK6ܨ6>xަBY8\͠bJOHtCW(\(Hy{2(fHtad/)Ï>h4za2_zovM[>~r k$劰 VfSj՞MtNMrQI\OtH[oevnvkO p0PcgRWh}7fD+r֞` Y3R hÁLDUB`Ps3c@,w<FauӚS ` {τ#=qѾ JDa {@ܻp}3t0 3ȺHK.ؽ@hS"S>`߈,=$*LkҜ3g5س-NDK-׼4骴!JsETc#_ i8C9*4qRvƼ{b =w J*ǭMOLX5=Xn-H$g2PT:crZ;#yaqZlr*+^FAqNNow5c{=SDA@X 0΍8q!&SejY2PT/h?:֢/ x45 J SSh}P_:RJ@^{jt""LE鎇D(Elb"&S qR\c155=+]F`jfEp6mK|orIY(k1hSBÔ^Jm"$mX, `],sٮpvjVՙ'~Fm+ ldGoTڼZx\i?w3? uAy"'s{?0T4PY+™Իv8oQz|()ky(׻AC0se))\`x@"pPCЧgk2E1k0Bǟjv7TY]Yj^e#Yc3i%pBapJnj,٧e.4aᴲ \ⴒaN<2mONɡ^[qwaɁz". 2Yͬze҆MM n=B@{R^RLh}|_j)cή^F{4fJvq^R(lf|97_jN~9]ekl"T92 t3#٫|RiVq2On_\+\-NΔU<"=t^x?<a;EJDVF>lf2ʄjau ueTT&hj#'Fz `A' H `"_2Fi(@zncx"a`PiU* oݧҡҸ7bk(M? ɟ|Ŷ r< zrN*{QχTqm^ _uR)(n\1򊷚g]1OxDσ/3x q4\`84CQ9d~^ u'jGNinbc\'G$#d *{Q"v+nY5C("3Z*6K!ys`Cqu(S=GD[֘.ry=YHބ$/NkU>=?{WM7Y:lUڳh}T=>CT\j@ivgj4Ĥ2SeDlT&;3OkIE`X6ԛQ1ܩr[_!H) b+3v^Orw9(.ǰL{t|[%hh^e烾e$.(V  aI$W~f.hc~XOAmW_D;+-A a=2y~"<~X|LƨV0$J)lfzԳCCրh|5 |˙W<߳\q`4a\f;v:\$΃~ӂCςfD.f%fvQ:t+]ѹ`bIH(<}^Gy2J$WR6k)z;;s߽+bjgOX0qSA<Lo TwHiݜԌ.wG&QqjRsH<t_BauΑeF*2|&{!Ahɧci)eыȻHAL>MB*olZm8hqs y 5$S0ʩN fyV@I$?bm 7a-Gȴ\N:Hkތ+6NnR E͗"ޗOU̹֌nOvwyOW8 s'̫Tm CӗQY%򪌶c ׻8hf07z]nM-p\GF}O! P٫B2dtA g8xv!Uqt.&*\'H ܍XsD&(`q[ʾ%Eʐ=Cf~?T+ jIǠ3>!̈or_OaB᳡<^YM[Yf҈$ p(ʮ(Xhy/sHJ ^b:$PAfDE3IC~XTn8 FR>oz"w@(9C~b$y:esLۺs Jc{VS6`H3q -ˬPN[pJEZ 8e-8ܟ__1þ+H3>$ev"%|1> 8"pMB%y2ü!B*ӟrI qLѥ'+LP]"OD!;:RA_-M::5!Uj(y %Q/%{/ҩÙOl Wh~OTYj HW<ǐZaK],:U Kyh)Xګ"ϷOե LtfLu?7 vGkE,%LE9gccx =?"_n2-(JLԚ۲ɩ] LHT+I~굟 V/M'ρBsKM"hpN+o4o 7J iߊ={3]ZESl+÷׆\2ӵ=^49C`4TlT3xKNh;žx:45 ?<E3o(]+L.~TS[J1Δ " BJh5Y8/0P.nvio%IHav)*VFr k`J8R`7 U UcX-+GO|0Zr{bTb4D vNDա}r_WV I DHEY. cP$dW_,G͹m4pVXJ15r1Sck kh SQN>L E:O {8+%%Q!덈(s-D"K?+H}|0D5\$u(枲mNM,w޼7PԦT|5@0 OfB{ kaa%TYtSpOH^UD6ZHB^`Hh57 خ%y7F,YC$S tnv)1c]a\Vakʥ'u1f#7Ln:jqٌɇ: ڀ͉^pnLs%5e U"_ }e$Mg&˂L+{)&zc=-`iPKxdf !!YIt)}J5o Эd[:,,xJ#1{lz$+vEٟ9W6e}[0.,cKK;/&Mg4/#lT*]H#.ݟe)eq ^ijwqL)!}8@`Th:l;BHWs"z0=nNЌͳ޶|QJv+D3Ld6x*$}-}8YX8̆ÂL;d2љIy-Vԗ^̺pvkAI*.V.K|G8P,4N~iק*`6S1|kB8):I)(JOX m1ÎC퐱qo\$l)8bk#RrN_.n4.{ G?pBl$2IBs4S7O8Ra]dATk0BRZj;-: 4]cj/d`BrOP#B0+$g2mUxs0 r|U^#1$N_=gOĩwS*T9ztX0fT=3w @rJǿJN3S&Nmguna] jmΏ} O(8%}Vuu ]HR$=ht35? #me=P@Ť Pe|ij٨~'(dVaK#6tĞe*6|f&}Jeg,:˂UE\-^UtH#A[j4e$ね @vA1x+7ofbQ 2fhu(u>[ĈTOY9#-<$M1D>ۆnqܩ͓bCVpป,]찣ua YsJ sx5ylJά*P!%(DZşC m@QJ@\zpҿ|>i-v)7/0qp~ƻ&u2141(h`rk9Gnle̔U2#60-n_Ւ}* L 0E]x ]54 s2 TE @HQϵ؀]uH34S6uN3mcD%}{][TGDL2ZpHHnG5Uo6IW7]qBƭi]^{>+ fJB6`1~9UKxj3:k7b=Ґ;=XO<"!n`Y6[rLeOmF䃹FW_w.?'5$؉r"5=##}~q\iҗs& Z1ӻw3 Å,e&W<}LC+.GLGo\ sm ,RTaJxA?k(Dx՜l6cHlR.vV$s,, -Xo]ӁۻnZ@uq XD=/bT,2u}+zG5ٿ{eNULcC$a9@Y, t !n;H}0~&ךAAF{)Ә{s%@7-ojsiڀ0},P($/A::ʴ|]'7.nc.uleRz!<\I5Q1lcUBAqyѻ TDr}N6+`H24"|Zsm_`Xiš,ex@4]ge=:'#Ր iVZl/6MK@ 96~bF@Ka*~fE&B^b/(t[ ~ԳdgɊ}1||3\!5킄Y/fҊZ\SBBEiaMK7/G8zb*6b[4o]v';Tp|Naג`U$ePq\Q5\O&!<ٚq&S\d]ѐ#ҞtyL^-,L @Y  w1퍡981 {tS">]xc?AUKN}lr6{asD#OJVkԏO!FX⤳p@,mX8=*VXD$ Ĥx0]ºDDd*R,bV(au2{xSɴzՙy. Q0) 9OnM}w>meMsE9t/EkKJ5P Vc`?%|h=C[tVxi G8_iP1B|`I/y/Fʲ$ik@% U1`4!s,ׅ4`4*lI7]ːkDDV@bٿ цgT`i@dF 5|#|0wjܠ;( i#PU7UPtQ*/ !v.LɽKy3uw3̾w9ʱrEeZWgiD8UW嚕sj~^ [Buf<oeR#;aU6lCݤzwlz/RuHM^afwͤa|tsc B3)"C+ù _`aǥCeߓNQQ Ԭ LK3v08~v! pS_OYPAb gtk@q[)4\F3pHA^wXJC5^7nJw9+Rs|愗L Sb*vV7 :o?yJ6NVonȻ5 r#"h FZrjhD]ʳy#Zdږǽ:,͖lv/aH wC>OjS#QO!ٳ?cgc9,hsM `kj) W~SE )%+9}*.\ˀN>Խ~_Zx;έ&n\Y))|cM]LpifͤL/GpiIw.C*N>#\zHp.&b}gȅAr-VV#P)UTvMaRӀ"jI#uyCU#l)l@];5)BX= '/W$xx<Qþۮ9x6harN;nީथk0IPm=uR0T{*=MRKf{Sgjtkl>#7;XLZ9י]*&YC`Ͻ YZ+we:A|v"!$Hun Tp )~1hI:i0S)<5 !PXrD^llJ?ˆΔfto/udEۺϷ&r|=v.i,; ><2?vTr*= k%ǧL\WNdF2IsrN*UX-YO:'R,WҘX(N1[+@ aIbRN ƺ^mRYP'YڊsKo2/0;c)io&ѳT>RC-ZP-`bXZ/Ŕ$AxT|q YW ߣjCa@vu>P_G IQՖ%4_aDJ;<DZ!4Kt|)_BɿPY]ñ|PSVqxux칁zvtlT/'="}[ܖw(3UH_(|'󮊢Y8Q]dRqiP/0MT2Ԓ Ths.T\"2Eϼ wsƬR ĽV̜GbX8mFJf@3ig bWKw U6/rgQd\*;)vƿy*/ȀP}sުG0mVi!QSvyp֛ο/{-ɯU|ٞM(]OGMv֑?s P_Pķ6Sв8IS,H2u:enqDPBX{Ij׾KtT.'E C+DC|z^# B3S.el`rr9'bIXkl^m4H0u&j^;1/}- .!HuξD10{ʫo.Z^ RfIHfl͙~KRL<<:io@3CO@b- L#e/Xhs 7ϭ~q&|SpN8؀cS]*'PCJ[4 < l##Y`ܾTQJVfY_lF5evtG6k18"ȦڎT.ܒ:cܾz[!#"Pp89W!oXX,tD0`'H!J[ vߙEXV7\+4 Q,7{ UwTQ+* ```WrG+hӬSހ|2|>n:Ww 똃jm8CtFFF9ȴët=;QoH(Y rxv2y'/J 2A6PW|K4ܧL]yG+_Z5|\W"u6Lhr{5ڲX N wd ơ,+ߐg Ce=_E`1Ccs1^c <Ԇ dT<"iH=t#lNIĻܪykP`PzO $@^k $2UXp`|lng~w[B& V„ 1=v@:Uv+E*1moD4L=?^P'zUv NfH[çWLV\S$?fTi.T쇰xl*&tnh< ˔gݥ|^Tzѓo&0j-=@D=y=Kb<oA];ѲҊ)D+OjwaA NX8Ѭ0S5mͪ z9=7:4_#^m]5?Jjp]IHDIT}__פ' E i<9~$C A|\i^E L(`z;6%f{j`pw=.YyKdú@]VsoWHbHM]{YQl^6>K8͢nr'q I]8qYWgC|8c#G[v\w.jz`/;/,Oݒ]N-  ' Zڨ_Sz" }ȏ1G+EeS_s2 GڢEizީ'e )"gƫ(Y=|[&ZִyK,y/, 3Wk}Z Y3﹌PW5~Ǭ3i|r;,rZ8g\OLp:0frڍ] F ?vE .LCIl!%]^3 J+d"qBTM#1."-"ܼ[~A1pv2UԲ7<#&@#.PQ k؄lQ]-P<XE.q}bCki>0˼k.$Hq<9* eewWcd',jIeyTI\^ߚq[Mȧ#yf0y!Oԩŭ*,l߀PJ#ٵrH ҩ4ԉXS|tHQhQhz663"8>ϱA/21U#Qܛ.03# Ȧ̋=#Z'{rum⫯mܽx@GV|=;O֪Dw vKRZj٩|]ۖZ`(:e~5n+[Ur0ǭZ'Ѓ}ϝ3t .II.PFo DD2%hA(\- R.t3䌪ngu3IWb͊:nG#׉B 8xt)ơc7ߞ3bG M3dFmSLq% ad>`!wܫB!_c~D ټY _::VC2ȖPOwժ=M }\`FوغbY]â mkOun } x[Hv0U[6Lb4|g5 7w4=tP5qZ_nN\# Tդ%]Xq&ڠ%v1q3u&~X[mVY}' ;"kPjƕ,oQzpù5Dv>\{obӴ>)qP>Ŝ[;UF9Ue{*ʓ8:F1flB+Cdv^*AУ9*cl3'؝ 9J/~Ii_V$]73eX:Rse~f韆]UuX:%Pד;K|Rp6Nv97U{*|ʭ@OX~Կ-?kՙ|~!$`C93r ƜCC ^q F~T\кm| zJ6˜dD?8:}%-:n܆5 j M ˆU}(qhktEg\ ,kX\a27 YGIBV nXf&\x dLcBWc؀PMԮ؀ RaGŊk!y! "IazT-#ORRPNOr0|? F[ii8X?oRdErͣɰ639Ц!"r^*QL]a~iRVS(} 4I/CKQX} A{e3I HYԌuX湩R!4_"l_e *8W3jA5qQnCU(ar sK!}F#ȭRj@8y ΦlOv;fiP5+9@""j@z yJi)ȵ~Y(;Xl\BJk|{!*^l(C"~{ƜdLiS^X^cA#o=^1ZPnG,7`Ԇlj|t6x,B<%J^~dܥN(8!f ?7W*IRb &Y> l8?=GAFv~{>Rdg@][zDziQKcΧv4#sptuo(.z=L,'oC}Za_JEgf8kT3.+TUt]Dᇄƞp6R8L_#)& PCp>X5(sQ"0֍cKO5:=vLBZܩATu~ U/`?mNrwQ,XܜYH g&-P^w_8[xX.;sB3sJWE둝%uwk ?RnؚDwBiV5`w%XhsD/U%v{BE[ӨbQV ?:w3=V \o-'%! ȏY!Ga]I2|[>Nǂt9] g|ѱ(tK*Uj3CR/ S5.ܡ 5RQ)NV34a㕟h`jtNB2YҹlI!烩(I42@Cۯ7{budl ;a.tՂyP7ćeAc|PjNʣ(ވu<-]WhF"b l$4PϦ$Wu;Im '9  '>@#;y9=B+>o_Z(:kVllmqJ\Jn-o4[mWu1w9A/9]0mK_Pt~:&i|_0Ѣx=6kqFX#MfTvj(sкs=kscNݶGOlL'sKܭRtxGyqVo8~YAOZC_o~ gavr>ڒ@Qxu bvp i h ^EpS,J4( VZظ" |`ǣW@dDd-E;dZgE4gmpr *Q``#](֏ˤt|j[#[%NkBI_tgb4/swʋGΘFQ6@wg:Ը4sݟiL dnA_ؑ1^Gc}b[7vyi`H/2nā,v[L؂eb/"&|d) p+"Dar<%Z/!Ə!QJQ5떅z h!O}޾h:Չoɑt{' Hi7rAa[|{Ȩ  ?^ '} d&}a tԌ۴M25Ã&ŌZz\D )vb4C\׬6lz.4sL/ ?fGduf(DYW~RcO*H[aTa\e '~ W.7n(1-%h[hYɆD`okWJ=smhw~8MO266ɪz nl$5[tԽ:YyBr_O| {TLCvϖX.ΪD9˻5]_rI|ar" dʙ>A$JI[VB?{IE &o/d$5!fh H*?-omgN/m/fۮdw ú̷gh-24sQgaF:m$nrAr2Fpu{&m!E 3BU1&n99Gs|nIeJV^uᶢ9,lliD-\V _vjUp0~i}L8̈|4=//?sW%Fr;) pbq$o·k4m,Q"dPKRfYO/+kN,(samoT_]8M]n%eDtQ"W(w[b(+-pra{@ˉԞAd:e\|ήH~Ev:|kkle; 9Եه uD;1d_6vGS{?Yi8_tcRX$6"3 G&?8_yC̩#rq\JHjgNF9ЭƆ['q*BlҊp1rP"(ׄ4%h1i^w\h]h rE5!+Kqq3j& K%Yxd?Nⷀ6j^ a&Kt|c_skHTv`VV"8og`b<t֩N02bNl kE,F3.՗,AJ)+ z֊QXS((B`(j^:#MJB@:{ZCcl?Es)@(ݥ$˷ۘB9|ǖF[h, .sdhЮv^AO\jM%Iɥp\Az.AV{5 \4G ȉsJt!⿝Ҩb) 9ק_Ӛ=?ӝq?<ۣHnٹVOV)*j*{JΔ>gP\P (兪mdXO&F\vIxm눶^;)z2)KCLN!H̉4K|E|yJ)p{Zje¢h(g&R詚 ^aηi3k_e#AKPjyzM rEkj !-F Kkq(GJhөMb" &OSN!D;8air̕"l_2-=a6:, P!=psY}?ՐHW#5eAd;,<]K݋-㱯;F$i9; Qc,P\of/TNvb>8#'.u7:O˽7ݦMs "d"3ܡe3^pB1-jsaPZc#E.EopfK`/L躟y<˘02um:+_ Go1U;O*쁬Iq$7-W_]Jo@HZkgtP[bf'i zyV-˥{1[r?љvq2r]p<-{H|āgPJBK _4Gة>9M2Zr=x4yշjK-aos#@]O4PF* ܋q^$=kcQ%| )hÝUXEz"ҩBgF"$,Ug:է3zŬ*@~E ;}|yGB Lt0C(Yte T-Z:qĈFc;+R0ZK>`k>}ޭ|.X]PFӶ(䞳{`*lfXK~AV5fZL|5W]@1:*י 5Qj/xN~7wV;@z@+CiQ=qor,wM]%}t9$LJ7Gވtu.jk3#/gal)|AdR|/sQR9 `7^9r#27P"9u OVƑVTISb̸J/V(xD3M.5Vg USݷ3ڀJcUg e|:fBu!+jywD 4.aAuc{>͆Iۈ]>F kXA'DV+ޅa*UقP~?4xp>ϐع8)f`ݸe0\ԍF!M`cP̆^l?O۝(TLϕ/Q6 a(jD%kֻe3O o Pʤ/^DF̙*6Ũ)ȴ<ƻ4sz#dIɵn AJT3+nq{d<%ƫI  7qS3Km3*/<%pDD04$Jog"oDd^Kpd;a3㶊MUZPI&;[MVz 29SpuJZ֕轘rEyR/Iqan`%Bp CYe5z]}pmX)9E1>h<yNDJE0"2׋ԣY9"^igӵ9mT/AIpA$Dz .[M34d}>cadYlcFa +Ƭvvᣲt~8fA$K zvO4pȞuO_6Ksݔ#dA7y$fT5*6ؔdzL-JVmQM"<` mT(FLf*qyï/c @`k?p5q%mE;V ˁlOm5()|- 4;{26 0s&)BJvw]Q*zuYr o GD ہ+GUTڹQט+#:Yr'+ c/z@MXXr4.*`]1k2uQRn Kg$[NNgL/B@5703+G'ڟv4\[a0y]z_u;+ 87[t52=MSwZq̯`J,"w\fo@-MTJu#;v};yG;?݊]4X)L~ow>{X%O~aED8^ kh@=Uo INX7/ nP9I-p6 m 7Rɑh\ton'[B Hk9vlb7&XÝ]DOKynۥ>Mf p:u,@VAy{"۲ůyh>֓-|WwGS h [eG-G9ڷi/Gw -t'_Go]ei@@q6w>/fوBK`}=",(Y Y}ױmEݬ` }AcnRNs߹*uF%mqL7]/j)I *u'<7r^qtХ+L)ڃ(Z{ ஌8fAxÓ|FFIC Ar-R͚v&?gD~AfTYxzdH4᲍!3~8d2Qѫ0145;[[؇]$UD mvtDE{Um-%v`gNfKjvlY] g seC(DmȩVmV g 9GK-7&ce"m!rޛŠF`{O 6f`EVW)hѐ.K s?H:@+b*/E4C&,YLF-GzrΒ E1a%.^b+8g[YU3t-ŵ\ܧxOx+7)CFl{pf_m}9mZ%+zE>X"u f3ZD ,A!S4L7]DᥰOu+(RSCGx-l$B~Ђ/F8;W1{1J@;tii >A9JAx>5Z-?A ;ԇ M͠H";^a+5PDO3Va_ } Q-#fjҩ/jr1hR!KR[!y 4\-_2>VZόGq)1-`kxC"_8#A{਴,JiI IC=֜qS朅Ӂ*P CjL!.|L[qi{T9!|*_5U-*AGQљ}=u:ztO%lHG۬E  2ãSX&)t{M\UX>i+ !TAQӐ)+v3UKLnPHb*–JLR B}jM8Nb\,pW<<@t Q#c}sDJ( )vWgc6hTWo4 ͽjWɌ=rkNڬM"LhYDFU :>'8~j!kZ6η/,Zl)&EjW)nRe3FL>^*Rhe#懭^ـLh]`u>hUzߑ=,jn^ɭ$u%x9([t!ٮ`AIu˳D2a3)?FO7CV4 $KtI&C?o[xT/"a<^J%d[W%RTe ئ| +ॺRPϠ9z׾jKD3ԭV]U^t(Q!GAMPTŞ_0JmaT&eڍjֳ&؟L 8ƪԯrB}6Q/Hf8;_oQQ1|R" 7x3ЪlUՉ, ҞЭyF.$ZxC$rw L0K"GϾNR"sE&6ITmkDd<xsrku,i5GyPpm+a4B񯍷߲Aܡuw9\p"J02A6C>LH~g!P4. A9}hZ"0ȵ7yYo "i0*͈8TY9'-|[hwu~wuIz '<1SU\ h_\&Pnѣ]xZK(8L^o䑷J i\q3X"9Ao4dvkOi ]?t9+lʀ%ե;3\>w )e9FlOҴ Xuij?y&9{hKsO +*RKgJuMPAH&ZD͠m0~S039NJrSv1%7fѴ¨A|O_\Ԫr千7dl<ߚ1jm8p\'@hs>]/hї&a:ܦ!9!A=> ݊ͱ_vMIf$ L]U*~kc8Lxp%Gs".zP5\拥P]:[/כ6Ҙze4\G|~s.}ge 5T43e`Wrw3?rEWfIհ'Qrpg980gKLMIr 9 z=ˎS[rle,GbmJg$XT8&BZT\@Ѭn9a\lbu&ȿ گ;s42._HekÀL,%,CP aLdd D= SV#0N$DՆflU[6v@J*EuYV5r 7p.0 n'ih4Č2b.ϖ8n҆iƒFptrK6v@H6Dev#IFBߕR<~\Poi"g5lzF+&1F.7*\I> 5TF2yzuOƒP xNpdXuY4g@{o FmSDqEH\5{؛dr>׭_ \7C]K{&T - vRl =$I !$\46kkqHnh} *ES؉F]3G#.3@x\+<8w/GytԢ$?aIWtJGk>6cQ ы1TSge1mjlB5W +0(t;@",Kgju7ե@gDin%< +na;䘟+.>CWf)o>J5fہHB}KQ9:fbwMd(5%]".",Q1W[zzSb~zCk^yW"qnVĘluL=3 醎nr|R;|rLÞ.t(EpoqE̘3iq0!(PUZa+Wo)_(NoGDG3vC'6,y<겙yA 2-{oz@15;nκXtzjdS *K2f=;%^*MB QZ;! 1Q7=kM\[Fٵk`Ȥa?tgB.}{ZdNXgYu2yM>%0f\δ&6:ڙ9Nd#lkOO;6nz`dSv_<uLhF$QNx+'f`A4838pIJ_FGLzTWNOL3ƵP-l%~RmcC(v%pYB3DL~tңë: j }`+UiQ'\~!~~WK-2@  @Ёf- r1kAGׇE5嵦q4 .-2}g{bƪPp03`r,yWYYyhOڮyAіP4Site8yxSqxMؔ,,Eq;^-73HDےC y˅j'FEsE)C0]=}WCIN506s0)uX>Z\p?0zݨZ!yy.U)FdWCe~2GBPy# aj!U3H`-j s].]tٶC4>$ye`&NQpjXX~6*Z[oQռQ-Jt @TZUTbE+_7Y<$U~R%qV@lw<*[K| f).ъTnViu,wwoh,؈wiI9=fy04HPDB{`!kڱV}I # v hv7cOEkQ%BY}7 0,uX`&r$F} Gv^?ebP6OU9NWmK~/j[\ xG$si앨,JnGKjW2r(xs2OHM]C$kVȌR` ʈ__<\u`}gKm1lj"09JH*vP!Wr!fwsk÷ªE-c|%@՜)9&"m]|&_yn+8/Cj˔n2O'L 1^f ="8I>j(sX&&ec%=⨛EWJU%VrQRmHrqưP'nP!tY~eR 9`{TUᓒ̕nա"1/Q9F9]̶,4^BIƐ|nxv}l:@͂* Q.7c҆v݁;B M|ŦiM)  `+!v.UT3N2_Ax*ʗ9h/ 1 1^>>c7wp.(8U5[ySӎX(09bwxƋ`G8fo .))} 8B ʙ^S wxg 9"n]{(cU'{wxR{7MŒ~AC_0 0 K}Yq&pz9lj:ZN WG].'H5CZF!ˀLܷ&h2m%O-UxPPz?exIxFf`lAT)*ޤ<ةe7鐄9^ zjJqudƔ[ .6(fXW0 /F8fzxf͓]r_kͿ/fLU̟i*UKՑ>"cyf+,p̙cqF(uY8Bo/iDH  t{N !׊/*] 8Go@u8MX,#aC9yPKD6R5ZZY ے'6rq"Z^֎]m sxŻIƽ^SYݣqwl%. [kzQh2{_n2u$\TE.YSX`J_?/fFNADۖR/:UM?6iCsrhb,(Z0m(Jا|*1gQR؋򤭚ِ䞑SHֆ?ӀF|PE݊ъD_1 :i6rnu2iJ ]C #(k%4]\ x37IwY^=>E]7Bp4CPbyE&nWX)px9$ ]_|ˑ,)d$"8h!&ڠ~:6kܯ-hw[d͚5H ]WBVAns`ZquLU.VSkWJۯnjxkƔA.~+$W>|_ 5udMT8fhl͒̐:b(=H`\1Z{/Ŝv xq (,ݩkp5Η|wp~&!VEI\80G纅ߍXjE uMt'hŇlZɈ_42 Ŧsf3]xFP W6*7G5 `UzTogM g)=Jgnk N\`,llm;GR!14oѸArt}lBrAl=duz){E9:~E!]9I!@~~ޙvJڴHã!ApT> ,QzqZt&<[w̤x!TķN8i#E{_n.G踝*eBRf*\dW x4.Xӯgl+7l2źF@.FMms1(VqZn4sT:r[)%?y|&KX  \kof0gsMKTߟ a5 n s~yOS.1 n1ߕjXJd gbc6LYd}F9qfGE1QQ z: gتٶ xπ?A'𔀗pPdZvdjJEq$D\Qe VI5}jJ#suerrggl)&],8 ȭuD{8d.mi&½G"l*E(x^@9J K^]_$EI\JNFqt07@` ;po3*8`鹧ds{B:- E Ѳ*׏A'ę}q=M1Fp; tԭKF?;e Url.J7};4! 9]Br6VLMɬ$?/ZKVڥC<&A\)RMedJ(66L\뻨r :͝g{m@Sn&gg{CKEDUk :Ы;t tA=sC/8%"Dok򘻣|~<?)$5$ gK786nfU["3d$Y\fjeȰ8ݎ-}~D< bG4/ _Sd3IF w` F F1#/Cɭ1XU=l䃇(rW2}Y{l%rt_S4m֮|[0>nhE, p 4+W& n;,ߢ35AF(\Vn&m_ nݐro?XBroQ[u@qM]7FWqSx&TBo|Ic4Xk:SУ_kYkSB-hVd+\Z)@%:;8k_)?(56[|;iv(Є[ pͬTEVۃZvLRY<7@9X{qxb`kf/_15t~rBT_ g yxN*Bz7RR.2G0%BS6P̞p$b]~hE50?/;_ã3ky#Xy<ϢG~7y#WP[ؿy>iVsAdWg:{^1}׭ad]cw=nR{Cu6^xI9ʭp]+x`gFʊ(6Nhsգ=Q]y,e+㥩`3l"wC$Ϟ&W"~y}˶e@o냖"._N)C-%R|&@{ Nɋ\:;Z!gg(qz'Q8ERV<2`NVgvrۅvBeh5j FN>C^{$ʌ-ZUr>co:hq2M᭳]i$buɄNsr FWtf};h,5*&\+Wx<'Km=@@lD6֤b74H*ZsMR<YZT-grL$vgOAf"uUϔ<6v;gZ`3e e.6Zo_F.N줏$ a4b04x7PQI kkH\k]Iy/zFL<ڪwv@<1jk &EUY펛3yvα@5ODn<|I -:dΉxkϱݹ(J*Er*ϻ3K|7PVh/nm4N#9ʚ1bO+dThcvTʤ%_Zܠ{8yuB\ybl:2\0f^]ͅM'|YFymIuCp,|CY?3h9ΪLN9[KU|oGg @1$3h#XM-{[D{ "sO!HJuB J; 6Z$gv,1%E ,TKhOC]`%h?X>˪Z)rúIDs-egEc4le>]+Hpw7Z=Sk:)(ߘ=aǘj}xg MΦH~lOz fjHdH ž[WE>Exӥ&Xx;F .}WsɅLS 5<_/V{.7;s1VmkBIm Rתּ8#:?Lpqlt+g;]# 1<.%(Rn LtoxCX7Wj cRն/Ŕ(+*)h/t^{Fp70-f°Um/.1Й6 W\8Vo1r9FM0R6OtF(!#KN#V~1F4u2Sz؉2➯&vd*uWߗܤ<蘴~7k6J +됞2!m*Hg-q5nJOQ|f+hwSf"f}I +f;$kB˲t<ˆG C:VD-1„{vg8*ym#+mFEeB J!"7j:)!Nvyk'h3`.B4Zz4ǒG4o>o剛Oo$.74J%\vCJ ԢdMyU.FN 7yGq!Cc,=D2QM;,"RJZ_o,Ӄ#tvp/9QC`6q* Hu=QR> ۞#oӔ2aAlIyzNsc<4\\ǣ3-cg /pW O"ۏB7k`ЅID.?gS 4Eբ+AO&|PRYфf_wi.W.H>R;N겇&T15._ AK5J~'ϗ ))5=|!_xKr^e֍T+&%Jk ~Xߜ!)9Y5{JRrN=I_ ԰QibBqA0ٺL[l?3d)usH{J~[scm}Q?I&XۡjhVCusbn&ko!i?U V +05TpMX&af a7\s=+n7qϟR/\ q*,,dhDz zqbat}#+l_,M *=U$VpG}(0v۷n%7^[^\B_YlVJ鉒8H7peQ+4,QyjԢAKS1͕.pe4Kt|wPsz1b2͝uJ*5O-[Dj^­I918uW,{pI=7Lzw2pJM{z8$f ;Mruoal].y,7e1w_a)gG'^bJz8k:zDb^/㟻R98LhTŰmk}J.1*e\ogE{M AGqٿ3ZhHYuKG26~g͇PHR8qݞQYÃ>}p0MR|?6λoA8U9ko<~.PmDYzqU;e{ƐrXDXEc#qNKgdxNyjIq_ E\ 67Ĭ-)\G^k0HZCU?]pl=2|ag4C VuCje^aw΀ Rm2v`ee'xl;E.ًvS!ŦǫU{S!٬'ĚAp;'ev#4Rd|mLHl( c0|Su8+*F@U  E !g[MO55Y&=VȲõ=yQ-eif?F=(ͩӧ#bo!)֖P P N?R=w2֛{8iѐL0WH&/F.VdxpyS Y\Zj|\pYL`-J3&'^@LemָA=O^bw#N!}qU&-sq1i/x9,d_G#V*tBbTJfF6. s(OA1TS_+RrVI5!E)BD}ARu H@SJ{ʟ'<òpMBwVfW5C}ϕda4麔t i4"ZĚ0黜Jp-+msw(4hBn|-=) 8n 3hWIJ`0Bʎ{4ݩ,E/р R-mj{#0ĥtZ[l( nYij)yĻ8=IB1UKj~j__I:G`z#SۈsX j$]*h3[I;yE/Hi8BP7̱s,#L c'纴=A@HB ޟ$dcXH.9Ϸch뾖p15VA8NT҆PZP#`"HS\3OfX-+}Z p*9@L} Lў|fۮ/w>B).nMehب'h2P7EhF4Ďs@ G3/]k̀KH&;%ļĈ(YXQ)i-}T(3z4]H:v͵ͭ~LUh.{ Ƃkbᶉဩ%L qGzӀ"W_c QN%֠~Ҧ޲MgTpA6q"¬*st>,ŊCJB y⊭~GMO4tl5QYlYT)QSAN 9ٝe"U1c@F*?Zж੨yOhBy}7b)kR*qއ@Wcg6spk8 # P{~46÷ ]@'T+3ʻc}#dR* Y uz)_?x 3l5~*XˊU1o&} " /v5ҍLPGo&&Lf1lJRގmrrEǧ#Wx:vذ^yڴmaSX2C#iû9&lCfᔁ#TN;xHtx ]ފ#ӋǣB]?lxY&:U\rOzmA bV_f8'P*(E5.Bukz;WT*p]49'Qc{VNM_=%'AB06MaLAT^=/,1 8n#6qlգs:bNf_h-{ֲUaQzfh[_&qJ|*)CJލ΃]> YVzhzl͍td=/فE(/Ru~hs- v`K},=h$b2#3klz/Gt[C9ufJWu!W{3.ǧޕqXn*|pДv)P"A9Tnv+5{fbNJH0MH[>TG4XJt6ĉr5JS,uK|0SZ>mbs3wLjr0'_`( LڪRcKfxx|s5\rfFᵬ2s8Pl@R@MbN[2w͹MҽU!cεPlןawl?b7H҇0Km<.R)8y+qNbcXiLPP>l1 쇧k^g Ng5 o <8X0Fk!2Hn B !P|lheiy>v'L-sOuډb w b@67"bdəiU-,s˟6SYd"!){ 7(y\O@U]XЉȌ&Çe.-??{7S\.y=QjROa[/Whpv#V2l:5)5_%➫")6ˆ5אy<_ Uêe!g/ܚ&-Yq]Ma%cł_tcyݽ._cx8*[JK @Ԥ_䶴"1D53m犓̽k\ɣ]0|=sկCv#5Oɐ9 n5wTkd8"YTю])Sf"JA-mîn͘0S>7&vFy/K^qmIZ@ .迌s|6ҥg̯̈mZXVˡl ~ xX2eVoQRqyA#TIb NfY(niC5`/<pe%.{N͞ ap yP1A-PS%ĝ/dNvbUe đ;R綝CmM,eykՊPT\/jg &xx'5s "XCru*oiKik{+ ^oBQE-oIZٰ( Y=\zs#tYA,\l͟nS"zc C) 8Ҥ͌ƣ IҀԍ) *ɯ \T~[_?=(&rw¬\&v! >'K̲A DPN5&<՘Wxr{4Xvʢݩ"?XGvՍ r.\vNG*MGRt|AA鯻Ik^h tdʦ=]Ym;XK$V!!u]>cNB0]}fW-2VqHa*Ꝅ6d]]}ޱ6J!]AN+Zg.e߃ ,s?ytWea{=?"1:giﺦ^EOE; fb&t| tT=xVɑOA@Kk9'%ÇbP+t tጿzo|bmfS]!m'DÊx*NP%DG! _ gA]X-ؽlJ>7- A%zdq8 ٕرn&YSВpi}Rto$VO?Bb A.{0 ϩ6Uvfv& nS5&ͯcS' ?4i$Jy'|le-$뜺x*G9V\ڎwt}_1kh 1/ǿBǠ ٰ2 V] $FSȬuᄱ+%&Lw#ܒx'7(NVO6+Y@&gx|/:8`O4j` *vs%kLV:YD^b! ei;ݪVYQ<:  }4IDԵ sLw ωF+ym9jc5+41&Ez Ϯ!07)BNMǻHa+|6FJ=G¢zahCkѳz(F>,s`Q=%oVS$rnւ{Gj33 ߫V/I\tDv iE -m1,E,.3qb8&[@\F'5Ph)lLjjMK(d6Z"Q+v`ǟa.vcd!+ gT\"Z7A?6@0&XWU°QD9^JL;g:&zITo&4Cā!^1QE$,oČsqVlF`E U߼+ WLnŏl`?mx4bzޫC/ラˏ$b>|>5 o>Ttm9]}% 9hwB:.#$$M]9(ܠTK4P5$n#2̆-11qN^PEAG+WA0~~Ay-NʛȨVrڃo]b$C@j ?DWC/ mt(qJZ }M `ĖXMe^7a#B U`հFq $0OY-\3S],ex#bOcPD <1D=X|sWI}z\@rMKLjPBix%>FǣN҆s!M(WmoJ!MޒDl1kJ-|W}rQhKoJttfkSHNeaI-=LYIfDN̻vW<ע9u+ԇ|~~`"ߢżgE\D:h?d%h p%ƅ?Q}W008!0 (hw4]xt vXE@k:خ"(-ˣtf4GjhS4&:^#K:w=yߞ? ֟Fѳ/9:Ft(]3!h{՗H&lpoU Ҳ qYYL=fu6't9:~3Gd G @uĹ@&TdExosq'ׅR❣r/$jh0i"{LX`XXn ۩fR?̻rP K˸6_F"\\1~VHċW @ m04I(lky~@vUwΧ:oZhuӽo?H;?5Q,i*l@DI ?j~YdUUR8 q6hX/^IJ9垣c=`A 꺱\SFέZ̻I݇] /'|zY3_*WsRs:_ *Ly;"H+L^]D^HfeR1_AJ|C,a( 1'՛T՝vE^%,:=߂Ac079D6}S'q'^6dϊ2͆9Xovyf`y*5%#%Yk-`M4fo^`>Z+l_V ϿwnB+RqP%^h43Ts% /pXE[7L@5B"0~+:TC[J֩,ILh]|UO8>[~'d>70+ur8}= O[B;S J쨴ukי.7ғ88Jkb{53w06EB@5\Wf$"!GYA صmy U" { lyv_[T&5YiA}%'Dkѕ@Sx8e4 Go}j]BU4ijF'#ػ lWc:bւ(c:~%=Gg[>+iUron%&U6wؽ* ]6E)c:2.ڐűG4i*K<5XC4GG.9:rX̥f?JQ\bk_+4NB[_I@3ݹ,n 1xGq'\#!Fc{ fKd~oh I9 IaoW!mK{hf}jHZo]2"6e зXHy*{Ɋ˟! }]\K|5pUDj8 >Aʶ}Xlv7i!j10O .B%_|!gL`(vh4#!Hj!iYFvsiXb-'療.hQ=3>ɚ9ή}3gz`+qfHo^+O@1`yTSsDZtUm ^ w{N芊 v\jjdH6%rHqMѺا03^cmшI&h謵M;8 Tۻ{0썈/[$|䄣Ó: COu>9aH@՗7k}]ðsI;\ r7)A9 D^Tr0WFmp0c@O􀤙\jXȝщY.>nV#PhwPb+X6|>1#O"hd$~e:E~DW9F6˔{1n65a?NH=[cU4U%wj4eWa11KjnK'A|-׻d? z ALf(Xu1=NYO{5:j{jcv#n\wlUhqgKTFcZ8.mO+#fyK%{pTWCbD:Lj8W_eYQiOZ:&*F XNQl4N&CFi>-on,W3EI(V&OGq[=C5kh)9f3cNц\᷅OH2ͻEZ=c$Yl^Ȳx OJu`}5j?|B7l\`G$ A/"}7i8a2HE Oԋɶf[t}z!հB Wx. 6'*|yJ8J`-y]DJ:̻f v?([\$}wdAG]bC~I;?d2}`rqUaWe.G{qU!T}[5U=b @1VdYFO s\8J]. aՍv:,'F#{TTsāM4])d`zusM v3IFXI'>'e[ z"ZhلFy?Vwǎ){ԭT>9X=YHιȡi {3H $`id(GtXp>czR[;_6ckC6i8_֜gy,׮w/5{ 6`@tLt^fu%kDhjᚡ-BTv-" yy Մgn0cϢ?&qKPXeM 5ߦn!QCɿj)? ]18vsxe#\^:RRU17?_oFA^Ir>R=[^#Q;w| Ai2%zݲ{ g덄ޝKXx K _aC"IXXɪzTl#9ӝ/\ R9!?0l7J/^fC;uKiNOp6: F2TY7jxҭ|4~%$|Jg+%VSvSH ]3IYX4N31]qϡp aO[Z(OP]]i#&~nA9h!n2C3xYIDhW|z Nӥ0$tBվUՐu ?8&G7`fOL|po/l)}Al_Zf}Ofhm_5=Ʒjܭ<-1(65śس4'*Tw2>ƴl\@QySUA~1Us][kͼ{ތ/g;͙rpjNpCtEo;v|0mKȈbZGI(qXQm徼gGvPL)hoI娪MADCq ݑɔGWE> q$q IuMU'8&q(s%m0<_irXf7zt ce^ yW*y/U7X~̥Ge2|V} Ozcu,mF Ce|V+Xq a#MQ$CE-rK 2E7] zlf#j&'E,΀^y=/rkM TYݯSaE(`r 햝JvF[q(tA <ȄiC ۣ3>xQo'Oܶk!7_~ zEBĶ71i ?߄E\^P=,7*5>j'ƭ]`C(n;VDH~XcNO מ Q17[zU?#dm>OD!s2l.D{*hcʹ!_?Klo* T߬Ŝ/k`~<"CW IO]+[>2׬5]XXkBW4W*3u 00ęҶaָYۮ&YXK~ ZN Wvd 䂹P;ru,/9?UE7HHB=p'nN! CuW pbQet|F\; dW~vZ%ad,?[D͗>5na|f_E ~4vVdp1yҥ# <`kGX-R>G!=ny:ц#fE+H %Т&!5t4z !#Xvu 2ɼGf[-N]rW]˻jK"S!sls o2&bcEQ:֊jcPӝyee*aPӐy CDj]1|4٨2T-890.6uuZTU2 |vpuW qVH`҃um~L4 {CD)FA$m40*i }"Ҭ_rګlƊ[ zl׷b$ 56T30l)JTJqʅCᅵ9DRd;^7VmTSp8K6ux.bXYH&sCwCjھwSV^)M$7 5N d a h2&)9`U)@؃N]o!\)U @h.)~ $XURWj!l tWWoEs-n4.<"E9=B>F ܷ֢9*:Sې s!|8&% "e6PWSL}4 :{ubR2NRn6C^wJQ6((?axH5: xDd, hs>$ʩwl=|fr(xe2ҹҬF83yGgOAg2UPV'$V@-:CkIr'_r#r[f8|wB4Y خe*z~9'Y̟ aU{UP(#k]r ,;,(xoZX۰4c;@nt'-SP&~>=Fddr aDR$D tIV1O8rDzW' 4:ocADD\(y1܌PƝoڞ ': Y'CY#xPJ1/(y,ysBX^/}Bm͵׏ .Q {kb^!u&’QzW TBRB7'L5,/5"WFR}B^<3AStcNk*՚ g29>0UL+qm˙s\^:zK#/QzugHFlTa-dzJ!N{DOab6ﰛ/g QVJҭIއ+=#2-:OW$?T 1SHGJ^q4)22n^  dꃖq& gv^:cm+ >~N_6y F'PֻKӥ~pTT QνEf(a#m}dv+*DcL6]qhв&WlYˇv*WaVYh \#[!\wYK2_'l˝~زD Kv,h֍;;d ~RH QkH _?G'[bN~D ]ɓbĚ .J|y-mI41Ξ 13|9e*:,غ?W(c0]6Cm<*>k?wրTn眈"\hKo^Bk[,wb4+ttZ% Jкy L:ϽN.DI%FgX1tbiQI,KA*6zR8eP\]^`{Z ul6({is)+ނh ٶɀNU5 av>}OvHiި4K6X1﹌} d-Y?*Q$^Bƒh9>#OvyzY<\|D.ǀCp0#pHn51;֝bM9nWop KѳNivmU&v U0@|HTsVFߣ hRxU6I\4„}G61sq.LEMAɑsHԦ{n?$WStj΄\]AƂ8D\]̞(@ JH"S&Ik}hMu-EwV`8@W7+ŧ+O3GIy#zm>p{m_.[r~Plj6l`r`^Fc&"uQ i: hE&5*Q+HJJ\!UT]8{!.kxl!*c-X.V!MsyJ$ū¢S4q}*%"c!A*7N%A .{G|};um":dc j, LNKK08hyO[ěza9pK@tjm)YԨbD`*wϣ'l(+!Ey /da TٲcQ_և6[\?><=h ~ gC#%aNO /1:,b26~laLe*ƻO-Qjnq}zapQD5jɉFwjeܹ)nOz Ot:KB )n-w/WkF o/h{sTLo$82&iE9N#eU'twL1{NIV&\%_RT>i#L:<\ alz`Xlšef1"ο?(?뚠!p#{YՠҠ:wCoTou9B`R16M{!,j%@$w=#8tvFTc$Ofm*VF7I$%,Dh^8&dҥdF,sg+:hkGڥR!{ =nsK)⎿V$2i>]@KRoN%u)5Hl;\-ur2pwtGStcT@ 1mT;.r-TB j45w=<^g10Dl7oDi8P/~%ʖN&G󑵦/Rbh-j?rd'$!;Jl#M\/C^ϵG/mSsȔDe 4G%(10J<{?mb,ȹwl3Mc)"kܐiv]F rTrki;avIT\:H.a~~e@Ƥ̃!CQr NgKFr; sipD_bmHrNY@ɑꮩ3ɬY*wMgbR/s.,90x $]p[-PG>W ̗/O }&&q6-S (B;]g)NawbLE*(+M9{_ȉAuVʹ|S%;JgtԿ;`njm~P8Qna(u)ÄdUs3ēeK $a*^\L Jvr'hۑ2)v3#e+"(D~jk%=[#VIRסp"YߪuraLcdd滛KavmxQ)^%^tΛ&e*ҕs׵"dՁ@OF4ܔYȍ7wWZfwF~g9ow¢c pyLmǎg皲ImGsw+GM (dxEB5-> FHfx]u˚оwF) `"K<&$;xHyn=m-g&hܟLQk(`.GmR,ȳ=9{8(_<&YkpipL'B+a!Eؑa4y@?3#Bȴo1֋c(dI/IG.uم+wv[۬1ߩwqq oI涠 H| 3m~#K!C]G *Pv<;5~9x8)y (l=&M~7s} *Xbɷ bXD.USÑgis@QH_ /+~蒩cEH25i(AޝUnQJ{4 ,1#eu -vG8dz7m Vfg]t.-jLtN8u4P0ATxYӻ&TsuT<)}980r0y3hln cd d/Pa1'J'VHUZ7t6տGt>%YId`.dkp"PowoP #x?GF6t؄qAwvȭVAHc!n&e6sHO?uagvv7 j94ϸc~ +wjj1KuJ;Doh1A^*9z:ѢdE^Vm bzVj6+<0I=DV6bXȎbBW"Ł].΅H᯼,у֐Rx3RsQa‰1?I3?ļǠW.RQpx׳DCt U{A Y %%" uhZ7#?+ _1`HMϸv"Ռh.!$lu$sEH p&3atƠtL$>0՝=}/"v&\3$9)\UQ"M'Ѽb4AkIZ"K#9q8EJt9·3<amodXΟSSMePA@5~,yGډKuGرXFn0#o\|o_V,B&NpJ}Tq'p-pbca_4@PU98RفEϽZWy{25! 016橖Qs = R&[n'u~Ln_uQ./83ؠ:i[`'$!#ʹ^ڨ;&aoEۚd#x~xGL5{g'B"pS_k(E /KD!xvD\`dh'wKD&)>4`qbFF7dfbUJS7y<2 7FUޏu1(0 Ɵbq.d{,H'$t" 5ئ?Nl#Ey6(aR謄Iߞ͔U ʃK,[4 _8'5Ytf{i2 ud=.tF<][v61Eg=#P@QiP\bRB\%ѿ-"f4wg0{JOQ-"TBh-bگNKp݂Q)L8Z_Rx&&//5^DIXH^&rcEBWm6^{O:'̄B{|O%];螺aٰXaNOTKz,6~i+M G_1zJ n VE%M?.QP]X~wwʫ39|Pl:uS&z#T_)]q%6z[+q͗^ /P8 4'#r:z2<9z,<yjZ#֥;GғV ~x\eu S35!_`^zhO3L#ˣqF j%BMy1n-P:nz0 R}wVy02f[v^N?K#|@Y/W:S6ʵy}uF2;>ϗl^*[אd]8q$EG;,s5Cj3<8]z9YbEZ),L~kTYBfEGv?)` ;3R;rRop 㧼+\"ds>:;06|0>CؗIUa`g찲<$:ӕ(+A{&LyJ2̤ET!btyŝm Ol8BY{(b1xkځLhXn~ sBZ. ԕN[v\+e) "} {mpb_MU$ocO5;PӣDxOX_Z]YC rۂR*QYgb+X㓐c LJZg`&X?;V| h}HǤtÉb/zF GØb^a|*ux"f&-8߂ Vp< ˙ȷ:{@kՑ ׸CD&7Ljj[%tS{wt%q<AB0uDGj:_V{j:KojZ%\fڴLEuv<ؤN $I}<`5U`s]㡟S'>iti˘ %A x2$]GPġ +R14*+fχ|UN赊z?7LׇW:4$+IJmX]a|֗m)*Dz 1G`sN#X tT;.vkJ*[ {p :z]՜v/+Q\u`i)/R<1?qug]r EA&/|w]xMe( k>p Ew'Dc`Sjj#k N [VE< 'I3j0jn yP6.$==)Z%BxcH7jT?mjSkz›BbgkAhpM"e}]y^ڹlh6aPX|Q oUxFd K*yӮh6#}j Û/pp {JxL@d2MFy7&4"xRx~ި9{|[֍ʺ9gjDFI~8es×cyoeZY`\2cBì0t3\pyb刳E|>C}߰wao` vM#(ah!{e#Z~_=3틔}89+G>D[?'`9dfmg9]=EbF8:}Z@c 9{ i0#8? zgZV{Fd%)8ƂՅPpnq3meV2;Yp<5fijwg-0D ӡr`"#ϐn -=Ec3܌Dߙ;xgi!{đRR=nXBDs=w # ^Tݲ2MTLR^f ]1Oԧ}V qa3pna ЫwLSӗiVuެjj>V,1b6 P"e'9P;Tg{ H@փHM}q;k':C>`ŊK:2KzЬ |za=~yZL#qL 4pP2Pq=]-qZ;tZ[nT&Zg.ps3D/"-Ftf$9s"*!&ڙOYfQvvw=Dn֚=ѤHFwU T'*Fpjs&/ 8k^ 4EOwSOX-nR|Y_8 7{=$aoH~U T{{gI&[j[h& >!`,Tܷn"*O8ʋke0uGl ǜ|-@5kisJx)6(%8hBBR;Qe4T&;hRxl{Ӏ:\O54|;w-l4w:SbpgCQtk1mQ8:[vٜTO3!R-_Z_ TUYy`8Z͐2?_̆9bp{krB]@\|6'P\hdjyے5] L4IHfo7G="Bt ?y)f'h\NA֎-@\kKRI)"㎪`g\B-Ra㻾c3p;^h1YAQ/y%ucM?mT99Ż@_7X:2tm4 >fV3̹ ^.|rbnτU(IKsR\Fj"GٔP qb|li5 ѮJ"|0JZ6mYHDŽBmgvl:ÿbszr([eΛ2>lVp;K&uhCޣjϪȠL XOq[l v6X͵$ʭ㪜O9w@a$k8- {xr|o{tU5#wvp۵2MdIlʭ 3qCTH.U.|(v|+c (=7ؔ7]I=-^I]C)o ݉7lpO(<H2qk4]X'@ Tok+6tA.'Y7ū739AN4YJB#ڃ0a`ǷK=׫vg [8-{c"f2 CYu햔Iٍ`ISo%pmUh+~r.Rc.zR`GL's ^!Pm Ѽ> < X9ئ҉+P=:=9o%}lp[5VvΟx zuրvc?rs^X"ݭ!%:H>|ǚ n~*E0df锲&rs&I~-\"Q@ٴ?jqʥF=ɹwHʆuqvȥ##pkGkrz+QjD<mr꽖s_ {N|^1[.)z~V ia=(XyrJn<:يI4ҜUbXxN~: u" 0LNV8$YHյIf@J}مt"^YixM?jڙĿ>cBv+?jOw>YKo7ɤ/y |i0ÏK\ϼu(ւ Y0z6m%t2g[|4[(ݷ= 6Ln@:~:OS~>Ou!g##婚-pߛÿš@6N7#F 3HμK'1ƢP @agLd,5[H^&soef7~G9KWWd^ D?r7Q^CdB0LgtYDҒ I%sgVeL}NF)՞Py e;IG2K$Noh=iv1yFE34Pbg ]F87^rLh챸|a,pUppEՠ͝?QBRxcaQ";{9C u=O ^f9 M^9vE"f3\qˁ\uq'ٰ\v_DAG)WU[ǿSO+Ovd Ѳ#y=vUhΐ҂_fTUr9fI!:l7irbirTC`mEBcQAl(hoÙW c8`ZPCqՋ-/h< 1P`Tc+ߔ/F+a-+7uk/~)uGOpێҜ *mrgU4=v9: ;Ҋ9q1\W {<@:}-g&2p|yoCI@< hHբnk!蛤,aqZP| d{ l3dPP[So[TP#'WU5Ps_0"Tދ-M4R{9`Aߘx?2V9`{I=wZq9C A3h&5~|o*cJ,|_/4xD FX,Yٯ+*qbX{!锅łaSh+:"-K,RNjIven( pTV E265d_u%즌.qRİz>KMsP7/´ GS&*v_t{O#S~R5ҷ Tve!~0N?tXv)%xR`$/On[dE Y-8B-}\D/A8Jge5z[ j^>Lj!N b!gXJ$DOslt\IM/ٽ,VU.bD5UaaÜ>6X58$>(t-k63*­3kMr}0ֿo5`|OLO{VŇz,FGQ$͆%$TGim 8Iom ||niZHAG}EU ?̩$Ōj)|uQ_9jϏcH@b)%Kwc;84`Qf> Oy3qdћ~]NcȺL*@|cFd] *c8s)|< N բ > i`xi_ȆP]1aoS+~.9ȩ#KLvɑHGQY-Mdo-<ס%I!(g$50x#\xP-ޱimσǶ8aKQAsgvcBM.Y18S,f b[:ϖւ \ vQ^.Vo!Q.fB;_ /.ZoP֕ 8m ~N+#\4&)4UbNmLMp L/R|@iзXQqHtG]u*\* `ϴ._k g{,s)n%&6c^=t˸,݋+& og*22hUŢ>q;'yyFy*[?+M΄`۲:Tv*p1êqmNݮqe^RUR GM lՔDJ,LG-Tz-wlpy>$NY]ȑ9=5v{Pde\oW_9JZL}ejFl\`ڇ >(`\u8~R TN@B\/Qq%} !3o5Rzklծ3F~Dhdh9`w_@ !̞UY@>FD vnj<2@OԽHGo+gQTpU|*dž&Iu./=`@x4Zdc >VX4y緢`DLzOVP-(c;"r L?Go5AƜHB.zo% (ŪWXlV " C ]&]^?:{򴑣\ZrOqVA]F# }Ha>c\,*|X jWXm~-p/b3=_6GӕEٽe ?UcN䛚lX X/qYak;)@J8:c`wHmL sۿ~rAܵǛ2e ~ِ&N'd=ozj ٺt%u%(sc.s^}o(h-d0C$Ln.uh"0">e,b.0zѲy,0 {ezoە<>]48YzaɌI䵰35hgԎL!gtWיv!rQ4,H뚃1$l}px6D'G^ =]g _hLTcHt5p%Fd e0AK>`=r8q5@0%Ea'_p~]fh mD?n_5r Gͅ3 ~U1%x}IC#a6'kc12i/h~yvnD%+5-MD¹jnnSedKMK+QNxNEclZyҸq: 5ڵݡ|yf+kVȮӪRL:|W)sO,/+,Û<2 I -Z0bt 4x)֫"XW(sB|{Y=[jY 7K+Ps82Rk4h'(ޣ{Sv<|AcīHOC?~Ë=g(VƇ_WܯF[ >l)9HI'auMATF+I.(~yk4%8]BCңw(帜̕ߦX.kĀCljLھrpu'9{4R1yʶyK-l!霥@9a:IwYfD;XqHwfODs3 Oy!Ras>K$ G 6L0h7HgFT3s)Y~g(4{ػ8}%&V:/0F4Q^"T[q}U;^+dDW}UN9Zo]'v?>Tb:ZX.z]JTeN|榺Y֠-ף>֭nUժFC}νybf1sks,FSLT@ ? gi6H x6~矲k8.qI8|S8M,cW5GVDmi/Eߺ V&.9w̖>#!28zr]@W[;7ϻ< );HB,{:W^U_x}Z}rmveF+j*E~BK/$bw!7XԃgQ<@=\ V*T5k.t1`sQ4bP`=ru=J7cz۶%*3Qix,R!I܊8&X.RWm_3FN%`&Ҵ:d%]&]tA(?1P[~š@.h77WMR+1@;01;ս Z?Xxh{$oVDzTsk~?xw %.+q`W`Kڔ)?ZLsW9%L:AgK g:NAз>eV9gz'^{˯D^ED%zĠ {Q #!QI#o6iRuRrh1㯗oK|Srzg>v!,b6HhÓ޳#p-jcLb k1v.6D\Cy?y sse߳aцA׬$L4!8jk޻;MD;;J`PWI !=#UJJ.*Q_Iy,\L7Ov}>{Dp`kG&Ny8w;mIE_͝zMܬƭwp4isaK6r8.Cu~,i6G-K7/`m] _ AͥP ů7i}_AD܊1+Ǎͅ_Kԯ?Y6w_ɡێهV(rb3qT}!n5W=5ȩ`hІVz)*ݫg0; v>%KpkE[64}7,D\'W*{ꗮO2ByFg?iŚ!c/4@:\"%}uIЙ%H0*ZQM̼zZ ԘSΩþAg")Le57{];GS>N>Eeĉ$t&Һf=M]Q%Ed[Utĭ$g\7#un0b@.=x 2TxChb(øj.neH؎9d&cUcn8 R5g Ɂi ymb rsF5IK{N'c9+RnkAzxK!l# 0.UȇD8A(n)aXc15 Oӡ ~iNA "HxPoggiI5$J Bn_L4pn7$=0BNqč^@@ 1;ErBUORͽs_=A30$ccHf9_O%pm%߷ 9j2h4MguRrqIkՎ+IcQC:T7:0nF؜,os"d]BOn^ƽTe4]M yVލX-̬^\Z9v!6af2yu.}ܫ6fk:`Ũj-$m0Vx´[<>njm駊Tw|mo!}$dt`[`JS}i<HS8#2 "*4ףWU9DnC)˾r)Aaa&y@]}M`BɅ_  Qf/f5m4/ZZs(ڝ }`ylඏwG,?נ+1kS2D񓑻CS.AKc$T>!XT,G9oM?l2Kp_)+ 4C"SQ"gifbʖ ]h>zInObXhQ(͜&.#2ao?\j~*CH٭kp§auXB#Xk`tCF'asX2nK%uF}cVhtkef[aJmwTԹe:$VCQ}Zv^&_o()1lY hnQS^[=xX iI`ƚOWO,YG&$D(O gHil'Z[jG|ety+n̗?rxAN3h|VA}MA7%5|'O~Y̫DbvbQNێ< QKG~k?HT-u,__URlG3{)0bRdE99HO27}Gu:IDp|7eNUڊ'7W'.HF= -sXNkΠ!;4 ?$0\X+]X",iknoh 2ؙɳN[Hn /eKeI4:B$-\ԂS9O16n *=t3/g9ɼ|շEQ]uӷ,b>]8D00ɈowlPAwYmeQ6TLjA—w!Dx-a`Km1+.9A& UՔss[R45: B7< ~?2[ͲC t=K,#Y+8ΧDA6\|">w(%%0YWfa<ɗ.9B_6DcbV̏i_c7GeUe sZ/SJ xC -k :`*^%WFEY6U+*(3󻷾STsZ2czҚ?}*cAk>|0E|UX>tkD~4wоP+Li#1yu/*^~dš"/ݹ%N/@5SZX2Ts+|y%Hłڳjߥe8`Bn1k6v1C;Jcw:VS5 >c!OOTFKgTK n}J%&U [+ΚpJ5cժg.03|%A4x. { =9^ K)H 3&̒5ɯDɩ㍫D4!jʧ뽥>MM1p91/f'QNx¯(s?p8zB咀v* %b XeGRPbe@?isHN_ l *1<0 r*Fm!XO UOO8XqǼ">@*/'$T;UX &dxgA){6F{yVKovtZǥ[86@=sOl\τ^(pɶVe'N}eN\6 PKKE 7-򇋊KK?%:;3M _ģC!oe $:x؃,5"(gH7?^)zGCaX.H;LDY މ22ݎ !tW/ /QzWlm+BllO#$rP$b}.m *q$އjL o~eTA%Ju鮻R$_N%΀vei*YoXP J+k"lHmi^_`9.^J6;s򅷾وDZ(+5a9?8ӝ.:d/I PaΰB{@]1g jC?'"Ś0q ֆ^kLn ko&8.5>,er*k oߔAdq#'+>hj}crV oXWv &x~؟33*e(_/>J40C~BW̲G׾%?ڶMW6g%^R* D|ݓ_޼BB⠊?g U- ca`UJ`K⽛KGoFєucL^R"gNO47T!k+N\da`-GEx h٫/RpeP ,~,uڪ{~Y=%pb*x8JC*"{2{rO ȣ]?(^+ ~twL=mk\R O(_c7\ݼ W| 3(Q^ʒOL|U0o&\mfXkO.:O:ɒia^PKrA'-L'|w7qzgD-hp%SY,%[4FG]R S ^,&Z>FH?~> E}|щ{6eCʻqEDY~[ZA$i .<1|:3O`'7D|IsC _;Hx!%7tiSc:Aco1d•%L&UD?F~霾;vKmŜV<`o {YfۋqW׏"ſ oq 7bw6C7P8W/CnzVگ6HՌo/m w +,[ƛไ'%O ]u_8 i3`]25dir=30!$OYƽ&[u{i*۽\䞎[ X&g{˄axϘBeBV>ޮ69J8$8l~oLF":0#Aw[/+хwH[n}!au s)eTT:heqg_Ďi}03*1VgSYx4tsP~;#9E0Z%srn-p[8(6)v3#lBj_m"i,4wӮx /ֈdzٖȷskY7c,`wl"Z-NiOOom}L/ƲM6lDmqSCEϔ&1 QtEÑ1kʆ+]y*rUպнn%}osy5cR!{;GB{gF-@Hr-A޼EK_GWY2OjZ? V'0l57q Jh8-ύyQ~zR7M-U ̽W }Mb(Af$W0EU7ƟG~EW< bI4 2"-PfF Jq煜Gb0`KNu`r0IH} Ak =-%TjA}$C̼eJ$ ^\ueN9͏/T;B4Q,0dzWdE]9y|^(rfȎn&ѫmFqhm `se={(S&`g5ktmAM?)lLTKEK,<i'd@Kh*J>; tk/ \qEͳ'NL=G)R'37 䑧yd^;7%Rkm)y|Ekg"t#}C?sђW^0Ub [vS߃D `o.q=P}2Y>uŃp Ө'HxZ_Op,QB‹ MWZl1$P̣GCdozSorIQG Fx)1L'y{>]<6Ml372{'Aڟ:Za=CujDl?'{7?*6!bꦥg"%vZ2 -GeѲc@uNEKWrv!ZEt>$a]?*%7q`a }+&*YW}fzz3R!Rbg ,O꽕U8 y3X y|/ hcxĜWIw{ͨ}6vrʃ;xQjDIKg1TszIN!/ILY)/WA5SȫyRDξ*;08`.y ^Lr" pH8I'KG.QZ3~h_%%c`~U0SoX;L᭿!E @ʚVBd]@t\ H gg?Kmtw9hW %iͺOI-8͍v2я~DՇQrE]"n y,P}u$s5@g:ņ,kFBZ1/O9 FFWSfY<]6 *m)Mrq'1: ͡&d,Oq&aZY`>רuG/8 5@ U7^_f 3W3p:&'9AOFGwHg/ D SY?B}~m =̏|㟉~N A iGpoBOcvGn; &ۓiLj*CsR^`t(QZ?T`_i _pQP  VnK$ǐ$,엚o?Rl t#rP@B*jf:a9dwHZ+]lT)=_nScCW4P&4Ouɶ':9~3s^'eN.+";6?Qo<[W?&@VQ̘~IV5{~+Ӕ4+71ӡ\cczm`ێ$3DGZ;,wb*J;*ϴr]˺#eM&K7h=V!>n+nf CQCFoMXaZhwohl2n`Zwo.c^''6N@~`)>$n!ƿo_u D#]݉f*N%7xviQ-uQwevi )߅7!d4v~i j8qǭdJUYV7*~VLgMmj.L : g,b\吥ꍌEx2[$I mӳ 6ki5?7pPp iv,,_^̱*Ɏ"%. ԢjAfx to~T@}^ #X?j{3"N՚` Nì=;nCMBJ|,ejz!ZXc BG(/l2<0#)=2{8ٸI` ;,|_.g2]o1+ hdz`$ vY1^[Q sU(v6Vq@=倂c 8-`ΪT+ό<a< ғΖ?I<~3(b1(YJ}u冄(V:X#dL^}E,oLҁ6C徭xgnUCfÄ&[?>f.cY[vIp|t#XG,Y{$?"{ՌBu}{ΧF@&rc)|$"3݅~׉FAb0v8)C %1C/mekТj6\4/䏎X7*{ƙLRVbY:)CJ]T Fy-B|DNZ\9@9H$ni'/.fx^8d3t#BF獜zHoxX-G3!G.{L[dh({powR ,ފ 'aQH=-\ H+P)8f%3z.RsMe|l&Y5~+sSZ40cpYr)^c[ʗ>t9wBŅvU+ €F,Xߕ CkGe; ͪTBxԶ*`{=)S4>S:&ʻ+|6<`&1Gl>HP#s`2B-sҥ!:lOvZE$ :re bOv9g>=nLrq`\N5YyTSNoXũg>_-Q5D]jy |Rgq/HwKZ]4a@$̪P/9QR@G {v$w@iXSژ;#%ѯr96 [_a[;%VuE"Y^@L\"[g:2fQģtivzOh(u]{6zu^ ?-%URGֿaAEȌ?[ /w],):&O*+e64M9(ɧd\K0uul;;>-:Bdъ083b:ĭLH'SRY|j=,X3pLN 漢K|J",asTA{drK4Y6mSԑ؟+Yʙ.W K a$Sxq_CaTy-@<+.V)A @B;(F U!bwUD ^+"!v[O*4>^IFyS< 0 ZiR.Pm..{m.cv_uF`eO>Xd@[ЕPZp5_$JhLVFS{ӦyuM0bL`[%⤵̔V`KjQ|etÞW=I}蹊e+ WJiߪoJ0p?©q_~&y$&[pٟg.ؼ:;F k4|o}$6 gA$k /%P \+1v}Evk5|lr~WQGt5Qsiҿ&ċ%U`T:/[Kd-՗lʗg eMpPhKN Dpv2;Sĥ{.$6)еhX1-^Am!G.YIc) ܒ9=!_wskYɖhr9LmWϯ-Un>-vNqu3n:{Q:=\*qXzfP*B.@}#c<`lbqvrښoXciY 3+S)p7撹7tq8"O=^xI| mv{6fӿˠ>+A|SIfwyVۅOpArbͧnnI@T GY>(h5s@o*0.g ):fKp?N +1ң>5ۻAz] Ŕs )q,cYIX04A< U7cjtF^)&K'!CC;A $UZ] c7liQrx68r U r\:ӝ}WW:" Ь.a0*cxHF J'3eӒ{}sh`ݐэE} *gY%DpgpZMo{XPŚ,# B#Q,L]:-G~^jZ& Iyי ij<^>`VW=&`w5v}$2ҍƸ&`dP7UkVϭ–9 ,o`e,@D4N`^|]r!o|ŮPdZw*p4@ģPUuʬ} 2}4kAɱ#w^ 6T1٭|%!ۈ3Cb%RGX38ALHp( DȉZ%CtTb8  2iʡrT Ի}钙3O4{ncyR`9J^+E!tpc283|ݙӐ.<~jdh1gtT{vN#]]p͊;HQFgah Zh>HPVx:oB=TT*-*}-A6TOzJwwnEp=Y0/Fnb4ƚOni `nae8.z9㏯2Fƀ3$K7uojXU:gU<6⹦lmlz.Mт~xUg)S>'HkOqrޘ9!`*4NE7(eКzǝOA WӲH/{^;OW-yNd( 01H(}{2ԍ^? mo7z8WL-I,/5vUͬk!_h*OҠpXh&)w&;^K֕6Xf.Xlcƛ +5 |RjI ɥ E!XIt@,QATTىt:&i:94NQ ټ,ǧy40FL |y˜ѣşm:3ՏQ }MYC.Zñqk\īUNYLtzj7]smhf~Sa2Kd@p`c-yzjjXD6M"5|Be^{eb@d%]yBҵr] (Nz̞.%x$܂(t,z@k T2P=gw( Ү6yhQ2Քnӹh8oCyLg=-g76x߳dxڳ!@ϐl`i5q(5Jzp,3W $sņoLT; H fYQGXkr*,!hwu,FB?K-p|VT(j?V]k12aw(T#Et| :JXaX.dӂeRP1$i eܤx#םW6}~OsTɐ9~Pcd%EBK̠4"bGo`&Q\ ױ Q3~ê^LjehO]@^C/ƶG},p_<_N,Y } pEôZȒzG}$%샠g蔬L5pL/^7AtpN vj1V@&,Eb]: JM.yjC?ڣIt~AD,i]246zRZjCT^?i L|*WL2^" +-٩eU鰽>/.8VaXoIdI߯?*D6r9ٟL Rw>~C*z[xLYT/W a> ˼%0AX(1o+"ѻH U6iFI+DE)lǣFOm0v.$,7j@70\c#܅OKfR j'P%0L8;0fF@rm kuF[d(ؤKb H"V4 >J}@:s$(D->sXSshR]󥤌PE2W.a+Pp@n U},̗uBf[8o "BA jf. Vђ*R4Q$YM9# ZUǏv5p`8p/em"pQ,m78or^y8)R2HԴ 70Wcp4FX'|#ypʯȥ<rcc-םy ?H*@Cf7Iu39V'SnKg@. jnf~沮qRlӅU@R3Z؞I,@)3IjWγB݋&UeUϫ`!b68KE2Lpfd\ `%hC-8jKdTHeF]Y92Az 7lK' ;i[;R?ry{&VPGQGD4kgX 0.{y)񄀢 Yqg3TC.tF|;oee'ح4wxF( ù56h w-9zo ٛ,:,(|#M=D<%9?e;}b :zo6Tou@. 5=c<@e3iA3P-i9+ΡQhvN:*rs<E?1&"֙ǟ_1>aN}D;oʄptSw.+;]%GbO> aPRl0S]EA:~6኏t3 GH Y RCn;ơ XGd~i"?j)$v.!RPR'6JP hc3n%{[@=d2KѵPÄjym6&0GoDehHSN~4( k@f)eh4{c%gM4FMU s `$١iW!#˵4| }_`WK{~J c;,؆ZxTFA!{C7VY4 & j)Oɾ@{*):_$FelUޕzyc?Ų҇>Q@bŶQiպNA'f%OzNLHl~T~njlEWC@t,4#G?F*S:D6֒UzQ#rt<?g)_3䭅u VjJZ.@~@;m62QɾgT`7 Z,'oP>>Q-֫}+!>ɣ^G5Z3+ 89ʨQz3kL z\[H !$аdA} ݇#`ɂ'05e*L``fzF 26]A9IcI]W ָaP] M{ m]Y d|Xhc#S 7m޹'(m48؁h"gh}Caq& -]?Bg_ z-?R @ |L>Bs<Q"q׍H{{72ՔBT.˫gI|"_5QoPf/i-^9Lf)BV^X,%A>d(eU˽o31d6?4te2~.1 RHb88nVtpƷX6UM"10{u䝛-8 cn E-bJ$Yںzl\2E.qN HW+T](P֨ea6(曙P]d9.`#\I)sgϜ /c@]/FVj-J!P ^x\n#d3'mbF (cږۛu(H|Zyk5/sxN`."1Y>4x#q{}F)7*':mo)ǃQ{1Ӳ 7qF2:JH?[At{"YEl,8nӂ7:t$b>D}KqTȟZ(RzC;MÔ0d yv: `E/lY(nTp½S>š)#ކ%(mJ#ws CcHN} \RGuqсy4;j3bC"lRkIuz. A P=˭ߕxٽWhe'h$1%h݇;1k4c"QLT?P}34as%xaH7xޤ ?U꟬6UP03?Ya)[ 1,g2Q@% o3HK8= Ei~-:KWK> =jxRG"RRu=9Erve{GʆrIOA&sxc‘7tf LY Z/c4vXԮAHCYG`q)h!,;4\\I.j|UJ bb8-|?t3Xƽw͟OK<](!`f߫"|%SJn- QvCwk*' ?mS㋈?#U)$K箥f>F9>/ܠrf狺*aJ&b$Y-0km~M+|_9of/+7gBOtSiaznJ 06 r踶owݤ>Xrxnw7A5\X(*tGqr(v&4KFeE^TV{9RX\yI|l5>'l4t|f}Tf ^g8[4s@fHYj$e۷?Eۻm0ke߯Ns;з3gT ]k339rb|ِɴ| Fnqi`RS2|]F,AnlܠuDP[a+mP͊񯧮,(v3{qQn,%r ҧ&_nwJ4{Zq6XϘ24XPxŶ;/;afsz8:>7063 ,oQ~퇀{τ^[z|Z{l|֝<<}q# #.s洞 PhAD63hԦ?}0$S3.똼Yht T 6dw`C݉ۄYiX+HX7+"O8VNI2aR̈cgBrGNeII&;,9>:*aK >b^иArq63 :-H`nc fe ?հ>LVr 4lZF4+NT%vdgUc8v=織+=c =_keW*[6,oBIk^Q$Bne{Ty"XQO M]>Tj<^%>/k|" _8A"N6KdI =T`JDHTQ` 6 Jl\ݽ' \Rh<34ilS#6V268UPIU5=z"P2ϒ޾Yw'.KeՅ=^)^ J#vQ~28MbLXS/)E&Ĥ#{j4ccD$#pA@Go7)`o+gI#Zok& I\p4U]NΡtk4$MUcLS{ O—N'9&x}&|!~*d\7YWZtl?|<kr"fPo:h.NX8]38 &|$ W\'/TiO?VS ܑ'1@+쮍sк)@$#XO;.AJ=jgmЭܠM6GڡV~H[IN!du?U{[Irhf?rq/a$h2\tͲX xztaX]Ms;j wTU6Hz,pk:E2⮛-<"/]I RhZͽ'c`ȞM`K|}R{8?70]ף0TgmpY!Ef*/\ KSd(s0~nz?ɒݯn߶e=w+ckL1|Εy:g k١XQݴ/sn{ i?fC嵝ZH,K,\yTb"ne^ y Y> ^Fדv8? Z9reWrRŲ)*g>̨t1x0%2V A, @e% ]byaπs Dϱ*d>(a]Fp l6anD $[M/:ECTD0[!yhtʌ\Ya a')Gku_CU6Ytd䑑MG|$l6J/ 6q"&))הpV&b}ؒ, SUyQ_[ cqN (K`\;siHT ^/؟`;8T:#F`mwG~9JR#}= a)NTgJͺ)+W~'UB7`E"K20Iy[[1 _B˽ssR0U+djz|yuIhm-ˬM>V FM v[f)evׅDy/D"<^oKHǛFPWQa+_yp i{xWm|RL).%38i)n,8MكLkI`F/tMBEY%sd}Ltf*bz ߳/(5 7b&C;@䷇x`L0Op@' :0pX Wk&} `4)EnUa.J_Lyʇ|%i\`%5~kSx.q99fW|Zt Kתg*BJ)SiƦ)=WIFR#l!X{JT(j8Cd:v:"&'ECEƗxbFXTFFG I3[#$%1b9ԃ|5dKR| ltc}3`yZUaZE܍_ Ow=0R@KO=Qg/>TWr 0*go7^"X;;McЃ+k)WƶB,.5[fٶg.4v&IiϢW汘 Y27V"f]HxkA 0@0*OɻkY!xwU ف7E^!?bn(YEh-Pu$QwF v.ϯaR"VS6VT;S/y%K BO||>ӣy&(\lI[b ] G'6)c%ק"J(Aǀ0s Q'V6pWb!iõ".=;s/xW6ׄOh$X:b aG4=^%HI.`aܐDM̈́H hm,Pl |}RjHޞw2\=gCÑK -5/[CRKQYtb+,M$viqóiOE3YR(+Brqe#zzLB(TM)ݐC[=еE!VYG]Jm\m_wT #WK(y1h ڵ9Bw"lӇq@) (>nZq 4&2^_R/M6p\gg{rJ7Sݟ[jj)ϐPEd}ہP?*;_#W\C0nӰ˩g!⠩3؋'6^Pn ;(52rO$T*C{ܣ*vu~# v[dQaPvuE"wOnNOôۂz:<_k ɻDVe6V!2U'W 1zF|IG=9MRyC+ܾI=6LfN{W{8 LeV5f;MlM=FU$MU栴s=6(XTR#`d3aA`[9زwYl˨A:G/Bgʻᐽ8|Ej/E-+QJUG׳Tcѹ˧xbij5C6@|uQ>`:'n1jayY+^fM#ܬht|h;a, u >Ҭ/빻|lj k'yv\G +JZH cb]DH(D\yK}ob*)`%wiJHY2E7Xkh\Vt"- = IB;;]clEx' D ٶ%{X+̎0PV]O1]T9HƂEEB- 6rmIƆ,pܨZh?q'X: yG]s9}P4{tA)*3O/H,uBzaiJ)Bx~sHR*ikWr" 8h N'ϣ9X_PM:xhq%W,P#. U~X0āW[) G%Φp>N%*@ҭk].; G /@ 3WĮ Q4/8DCT.Z 4>bsVOSJ˦[z{5 RAB冬F3?Я8Hd-_ ݠM|;8~a:BP-SPEǔV|b݂,rMH quCCdx4D5̩ q=7CrSϺnF36%[;'1["!3,~" Ra/Z肂hl\12TuGl%C<3j0w.mꀻK)Q}*y(=x={K 1R}֩%&hw<M1z^mJPw)Hǎa+E f75y؋н,m,PObZ¶.tN; 6/s`X}.#R!ņ_b0Pu ۾3nWpvBhOK!ҴVu` j)wɔr#eFޜi%U." {|fg"D˘kp-"`iHQl~gT)H5k?*JiY͂g&kvTocՒebehexu#[1oƟjeD)2*̈ޛn鮮nGV!Z]'1op:Q9 S8L,6{d t b+hP4IO想;IZdBիSP[\({v\H:CT>ܩGS9".٢{ (s xcІ~q=!3YJjT)X^rLCЋUdq)_:EΘs ZrH3 Rc>R>QW4w\O7\FE_D{jc-cB RړhzǨ8^.^mMS$03)G7,Ljl ͽwr7?h!F)~̛™h4U[J"[bNh`<~[s26'o_xAk_rZ'R-$XWDR cuRezFmͮcHCh4W8{%gJϘkᲾĢRKR`KD XmGP3+\N*ߩ6*^Àmq(FD`Ỻ1)%d$9A(;]^nWb0xsbc47a>Wq5`c;jtOCyJ A#7&ZAhg/͏6Ifty}'ѪTs2c%g%j0"w'iPݣv2~;JzURùH+I;%Ma\#9,>߅0 ^^=;pG|Xpdqw 9ꛎp-:n+o4!CW4ЯcH_PBHMcxIRޑ׷ o?O篇 #Zmb(;tPz9A/+I𞶢S xFER{*A-{Tr&1cx,sN \5FI ={fr"TR<[חlC(CW} Npb!d$9ߏg 3TBبࡗ  #b&9B5|`Cni2nu2_*%շjRٶǴ4!˄-8p%3g-r\{5N M۪߬ΕO_@ĦnMb?PлEDN͙K~//*[{//Z Rk.w-;l=O(gHnSLE\iK_VbfgwIF/Ç۞ C>԰̿~lLA+Ӧ]afЬM}zE}K` Nz2&du } Ϣz=#gZZ$i'jE/"oZB9Gb̂z8D\k{t~=ûDrHl(a5\}Ȼ`ULJuXvnT~FޅvEiD1JzXK܉f-:C\y.FFFBNヤ+>Ttp4%u_.WUj{ᬚ~e^&NW}eQlEˌn۬j_ x$vQKL]\UrP$Oq#*P;Ub2 {Ls2Kzc L[o-rTs!l&GxE<λA}m_!mh{we:/LzQZ_G ZNJ~hHri˃ DlDfswNOa % 7Y_0bi˃Jrw}q6>j!| }*Z_{SDp^l(@ht\"ð2Y9O%&| U*OQ=<Mk CU40=ΙF4$t ^Q8$(SFHw_'!f-fP%wF`8T6WL꘢;`e "fLWtEO-G~\-H,'hY">Tֵe,A;L+VG}ѢP=^̭܌s@0 GmNBzwTB E,ZT?9cE[(YWsf81\aы{,^w>.@$1'="[VqOVwtCLFALfwy'6@:#.֙4  e[ /,d9#.5B9x*A0m䲈rix'=XD6R.Wqbr^*Jr4 6ЙʈA<ΠSAe;ݺш6oh&?aXⲣh 7gٻ^H2CY NpUaD}i{~xϑ'[&wuNkAt >yqړtPs=@>BY31S3%J`!17`dȍW&G@K$Sѧڷ*N`YPŗ8`NzHdWc8D@(-fbFWefp\}!8%|tCY0 ~.gޔTg8 M$W ZrxL2az艧ɪGIo1] yqawl'[]- f_v,XNCFh"+şYL1NJWƳ0a?k'0}{÷ƌ[GA/92,BnIͨ(A׃^Zs7@蟹,R鏤V,=.[ jT {pς!ίP]d!R\NwԮ%Wv'bE폔r(?@}gtpFt ts/Qe7Mt.=޻2ޯ&f_imّ',kv !oI,sUc?KzK,\%7M9vE{'(v13ڶ(> Jyɍ%)C}DU_9vw@RP8U,׏efKu<yRK&CYY!"udBy)Ut, 6]Ib[>Rne۰>a8a=5AVfv A\Z+Y&)HAe ZYEѥ鑙ίNf~Mòjz. J >wc:zX׿"0Kձved "U"4fsdhe̺.٬d\12m8XτN 1u@ ~]⠏3"_VE@0ZN \uεŴlϴZw9~l bhj9wS8Z^*@1ƐK#g::V@kg&P[FQV"*U 5/<:Y5\G@bYg /} DVevf8Ytրm 5"bj2X1*X!X:WkV癤K'O|k`-+[CaY+ tYiWΟqnoХ!hߌ"} J}ˈI?jz(Y yx٣~KfŬVAݡϩcg#L?_Q)H#s~"~Nz܈:>o נPEYgPNjaĹ{-0;ۇmР ػ$n95 V)4h$wbñ*!uQ@kYS/+KI%eo uFHhr̘  :ݱ1;ljAFey8"uf5 [R0}Xzqw@vW^1IfvOzʡ@t34Nnkn=~A]^)J} x!C$|#8E.<V8BK-tޘZ^_O=o*JE Tش3V?%W rYv)M;Qvv:/P?Hm,%k1:OKhhtsKYʬ;EGhoHl8ǖ"9j`kU1 jxg`C-%HڨhpfjKv'nb'4kɜ͖6zmE?yYSﳍcgkr!oWܜꡭ εqMs~CtdXcq0W|mP?3P!?a(S4PJ(`G#>/(o҃*@497/W .NF<= 2)Gy;%\ڐU"wn)80mޝ)#;l0*>Řg)xRmBE>^++Fl/֞"l"EnI&*″TRc9#Xu u5- a|ND/b&zirTF-_m\LN|pԍ&VMNsReۜQ;OuQ:C {ӞC[%Z;|*?*NRf9}=@I>\x ^W'ÿ=woNn&W:osܷG`Θed L) k3$ yMrXXrJu+E RInD 2G2PQr_pE3;o]Ί:u,^GS$"FQä%N[s[Ut2tb#OAnbDv4xofdzQuUfd߃6%p`} J[CNJwý.J=m"i3 !*Zj*xH3SOi ;p:̅Ns{"3PRyr#amt` -nXsn3s3b]ȂTo(>$Md]~S틫e{j3 ثη@bbKØK C\'N"t74hp8O o(޼%ԉyͦԞ¦^"Jݎ*d+xSBLf#. ʍh]8!o = MY W~:ph4 j~Hs瞉&g<$=C;!z2PB(B蜈nК84YwAs,a9XN䄄)sOS*qa_i:Ge4aǙ$<1~ toJ6MVݱyZ4u.zUMF"3^) қ05RxGCkޟ?=o883ƵhC-yk2!'V$́]ec xp}0F&OپpI6Բ)B2\!%}Mǩk[?{ZnVwD@TNxQ6 ximEF# 6h;qV/HC&?c'PI&eR #nLkr`⦟jFMs#_Xv -A2Z~S}_gdr={'P;YՑl :P.c@-7"d8^Zӳ2r0ޤ5`ҁ=DA+Y_/ZQy9>rT2u:W8Xvt1w .x*pu;a <Ҟ$-]tKM}saWɇ^ugxҮJC>S;Gq 2 %<7_X`{f^Ǹb(meq1by(G 5:SoӺ52~<֜F Ȱ]%?êhV2'l] !>6L.R7F*Wх5ubZA*&n6[evڂ nM%"D a<*B_N {pmJe re^2V_F/#5ճNfJaUlG; 0 |WmZNl]Vj7hn}nŻqz!~)j B2DW決8ɊL @NK-UK/<1Sd/i;ߑm {^F!// Ӽ3P+V:ٶ]2XKRu xcFvk.YOaӋkणj/v;t{ց~"D&0b& p1yu*bL"ti$cʭ{s_bnujVX|qx]-}1"+BG)3 arcg:AJQ\yWv(rۘrEﵷRXA,T0= z t3*;T7eNʤsX7 ¿S4 nf.xpZPhjZsAPLJR?gZe^sֹjLBx?.) m簤F|\Oys|Q#2\EN!c͝{f<ů.> wǥL7;0WTgꋸ?bN 7^)Xpbu0^;[d3%?̦)_F%^ͩY7+̹Qxc˔Jr 0y辱SWLsK o~ )qˡ((ua6|4Z6`@Q]frw#L>!(}͡ u1%E$":=~(]K~QGCb} ƞu 6dSbFտҁkea$ZEǎRa~CofA9dĪ.:l+'f]gq(΀ބx~d3dWCrC?>-}7[%ڽd^K∙s 'taH5Vhkhٟqp4OΜУyvt(*;y l0!vU=-|ܿoWG׉#IJnZΆAcw ߍHޥ( 6)jefjs~3.y"`7/]DaYaRO wdABU諾=?D :@{Lb!Si_V~Gs*POÏͣ?!@=TS ]@WFV)cn'L0]&{ Y,˅*=h:{ 5MƛX8q!aְ|TLR Yd5BzhN? ʿqZoPP>:Kx31 pY6(:iEy&A̡A]v)o!hWƹrsIWrů/< %DO@ @D8Ii"|. =NG?cOa'f>tP nNrfSÄ9amSK.' dE9uAIv1\&AW-AbO#%ܐQX 0yVviˌzf0HB $';qEgsxac#4r,,% *M w IT?Abg\Z8(G 4IŠ_Gчn?RƤTsŷ-ֈDj#,0ߒ`&DG ?.N׊,y6 !!LhEЀ /4NO߲|g&Ñ5Ci=)W"HP}G؛ E´uߣH5сA\^(/gV܂#`_IbdlKP@HwKQ:/8vTr^iL6;Y:MJ57>zY$ qܗu7ꚍc tFkqAicpݳ__V&ȥÒc?7,O=D}OKv ;LT4m 3/j8 zaRK,w?:c8Y7L?=k|cIO8wEnN   d-x]IM϶0G9Tfo~:-b;k؇Mt ٥t)1k_Nr@ʛm pƩ5J4V(iK"P@dѴv o|)G'gLlـޞʢ!94b+C]=}_h.#9om 4$_.Ƅc6sCXZg7'C%!oV(`pg\ڥX3JcUX]\qpIJ!vYjo|&VӮxoPU~aM07_ps\딑tHz62'R`G`pxGiQ{(IXQS uC/1r0ԥy.^t5O;C||3cYJ>Q'̠a<L\Cex?(ّg@f#?IӉ(AbPͮ$ ]nuqs!KSL6@Ŕڛd]@Q6~~ EN?~t!4}oڄ"U7XD]`3"_γTH 3&|;S\(XZ;{G-3/gsIc&F1 d}0U;?8ign3vrkm:/ţ,r.ꀣnedcz^I48D)&<)W NOQ ZpVh6NN&g/9/Z<%e|/qgaYO^|7PD}'F\@)F$|EHWUA/7 <7HDmǸKLkywY|*Imte9[T2[+K̯񕊰,J6}SZF}830:&¬@"|0M:x roE;`s7ߪ~cAmzMLwKۻ4L#l<(ћ ͂hVrF_\=f&/ξQnv 4XjN&,GX⭵Xd&Xa] ^f;>3,gւCXb__~7$Vnr\IBA*iIyGG|xOO%Y̺⑻ Jń(O? Ry(H)?/UWM,"qΠ0vA{mX$Q1PfL y-90d=%VK7M ",zkYڡl@.p!m/)_0b/>D&"4;ZsY[B_q{ܤyO7w3F|S_Xq}@W[|Jvp^-zGi]B61i)6)_3&!3Ipg+w:HFU"`9 J7^I$wE2j}XV5>Nr_ ѻ{\d{iIyZGp2n(>4eџ؁m@ ЁXy؆`&_DEUM~ + {\7+E$f|a of#-+_jіnPڏ6~hj4Tҿ_i>Sl;B¹ߺ:oQMдt__4LB ړC ?A=`7# AKٷI 7=0ј'yt8-=Yf' P#X\E\<H EQ0#ߦEJ*CrZ 2ܘpᘘmIrvAW7"gM{iG^~ٚvN}5Wz:K[ ?9 r ce<|r!FK((^@MK3 9vC@NBHʸ` &E7OTD Q*5rkZ %X*sbUBi%o瑼+TR&"DPk 6,v&}l%0iDDmtBuE`WM! n=όrj5&6H|< vKCB2]\`FWZrr'c,i:)nKAsP:nmzz+(-j)܌Xdӽm bn*~B* рg+9~.>@k\J9i-m'gP-3lkБ:Zz L4:E&u*mORO99 FTէ<0-iHg𾘰(gP{چ+6$#t%HrpSU[s\j?9j&]+;1 ;22Kt5uX2Z{6S6 z' X'xmں2R-γfj7MK 3#ăݧ?Uǂ &n&Z foO;[} ywHϷ2/ Ǚ79$i^{M[Ůf;6YvRޥ1h{6m< ey!BbHmဝ6Lbz4,O]=sK_{Wb%8Z"d:xv"O{#6քI(.ֹFrGM/ȣ$ۺMDd_eP5*S jіBJm\ޅa1wX)#)^H=!.]#56f] jMz2xtcq.Te w{ HFh|T ՑJѶ^ aQ"^D5X<#Bs߳rbucMۄĉ 0c&XKM1T@Qe+qt7NrPPR,F?w9FlKO)ɐ|?+I#EˁF ʅf'FCJ͌#I ^{v xg zbK KperLtcX=3PN%XTXMсF\ auat.&t3;PC_QQG}4& Yx0,1 ĢS mqj{tՈm!Ԃ>>&y(_r ٥f؊oGP}#=-f6/\04?'u(9n6^ aƀE 6>eo|YGVeDd٧nj G3 !:@ w8RR(-EOnc}O %VlKRdTxvK`4 wޛ=([ OM%Mh!VI]D qUrX`K*d|[SiM_V g?l=@Zt_FJD+n:O_=./0n%z.Jz^.[CLmljvzs zJeECNg">COs"c3i|A<əĦ$Cz2+nzᣆ;qnc'.-e%.A⁐y fT8Z2ie̤z[=r=Y;_ÞmX„]eq> D3eBg:!hfXk)L,hj_SoFn.<"((K͘HWVMOF))_-: ju(>-yC%_ۨ+MGE)R~5<,ukZfZSO' D|`2ma\aAgt^.>&tkdo|+(u~%Ħ5*6^L&4.w'2h|NKR,Xfw}AkJKa&C_+:22x녶 s &}.<,ϔ^%~2=0ړr$?x0 kKg$ 먡Q?W,btP2jxP3gKu]Jcc#hYC譿},ƒ;ո'3[c'EDgQ@v78~?dW<^Q&ܼϢ: %<'yƱbFgBZnDvȯHHX1E TWZӯ3f(GltðqkM|dcB^JgMTe]o8.i@ޮVGhr4LʾKRD9KKz̓eq{B/hǦcI}JAln ./wi/ŖnHw@[x1pDcgFVwB07D)~SPZ6GCZr @,k .Y0 h|9o .MDzh+j*hyHt)waenaz3go w,\UX"EU"Zl_6>w`J%Y" ݞe!{h󞤹ʛѹ܌Q~̫nv:f2(:MHڶZ^gbQI>lF+v;j]m5B:]9jhn#:㭧X֓BKW70hitfnN̸,}:=!8?W>>q! cEbsV>JEg]"z$@`Zpr#`l,=id4[N+\\VQrn J;/:[YUڼG,Q%,2 y>{|#,N軡rnlA7R:GFݨ莾s,ր;AzѳBNo6L8ApDcU~g8'L '.9 V$)a9Ho1ǭUf@5l22)tEgތ,L֦Gd+alOy}`@6;Lg*Q)£-;t[T+ @[<VB Gp+{Oـ̹b ff' ]{# $ך(ΟQ.Aɻ$[ujVAhsx.ƖǦ)-y^j8@w&Pz/wk_N)=kyagL}hw|z_?>Bo=EBP*F)ڽ>hn *}}R66' iY~d.˒V@`n*[ yQ&l|sXzWz4ƖU}zIsfJ,zվT7]z!1֚u:'!{;4d]p#q2Ek%__5Nу.*wo 2B#Nrz3x;1|-,۠ N'l 'Hf^Ll3&ihiUC$*XH 4Poe,ğJiM6)P2$7Su@eHA0 5-gok?.^KQ_?[8b}uvvr"6LVkn $݋j=E07>$X43 31f7+HlnMܴ}16'êJ; ޹:G__ƤƺvW}/<גDjN-r#S }EeƒNA`rA;㘀qcq vdrt&xl#20>hׇ?XS._N0qB)RCn㹊۸\*S"h0.3/]y5Y>CbN 4ւiB~GP"yОk ߳葌X3Jƒ?sbGFXt4OA0"F~$ w@ 5r!Ov$9TSY,jG$M".Iat{9Ш(=sY->+LXQjߩp6;fꡜdIe+1. 43tĂ=~(55˃EO2!XxQT1Co}ob8x1,?Pq1%`ܣyqA` r]- C@8S b 0Yi KZsTэv4@QE>,޶D|Ju(Kp |o1D Q#mܲEZfi*PqWӔPT7C 1 OX36dt 6Q㘨ՠ= 6t6+n%BЁQTYKP܌~pwo_ij]iwHyԨKx#I.Mv"]q+C-?R/Bz pA߬;MOKV) IWpHs\\˖J>ML-ZNEڗzQ `GI8sW7(~yBË/Z.ۛǾ&z.adﭘǛaXu0m\T`x`iG +;[Hc p-š۴ $ syȫic_n[x7s0k~X\%(81byjpRKˠ'Y6gy6;Elg`G9j`d-FhwM.UK̿Ywji|R8`JOJ:-kqAUc\Φ[23u{{nHP5fNOc}55fSVhosAZuHj1`_Yu$_RӪ_ieDPf{Rےv6jFrf*Ŗ,5xr"$I AW WFmc9sl_;b;cidF^PFAN1rE (ĜOB>U:b|׼ڒmVȂ_c4vormc<37@ŠmT]L)m/@o^6"Ii}ltۧ Rٵi14 @;DQ}\p!)^l[8٤ wAI4 pfC]һ , MS ,ǻ]g"UJ5K„?SZ gHY~uE"~)Qhxδ'iUGY`:9.Y]q[˱)D}c+<q' o^x%K^zI]sϵ-Z.).Tׅ)$ t,P؁k~7ujVD)nQxFɕ3C6&PLB(|QxoæcŖh]aJvy-Z)'cx{x1N(L.5)j| =J]nKtHIl5؃aetSz رTP\΂5j˹ ,],NlLҾ_}TM8YU[H_ q(r;+!gi԰, mA@*5SH[9ڼIfWԈ ^yNg|ls iH5B>`'?bVk!5U[lլrԅi g|F3jFI.ETCJh~^u*ic4 7 LG9mCqNrf|z ]uZ(~80[=E%]ue bfJ`'݉aI OS%mNlheU&) 6,tZ$"O+qXs]=IUʚuJT YHHPq&Ξ/-|"Ś br@0CM ~A;lwEe=UTpSõ_ C&F}񽵈9cn:U.co”5AMSxc+ N6Fҏ* "ZıG 2a@qRT/xewx$9Md͘߻i\npMB Vo2IG]؀y1LOR4_9,| %E #s`ƃ f ,Ǿ`c\*Iı+`EIvYvmj0m!?&#]tXðu5z!X5OWiT7/4RrFEr5?%u>PT "IHe۷ ^b.k/6ʷ~=ke}HVem:5Sk of0npޟgTYRd9du,+Bcc & rq ifNpdb*{h3򹀬; B.n, _SԬCƷ!66ѡzI $YJ.>i/3gvM_jI<򹣧bһ `_}# r JAGeɊWnlr!-@Ma-W!™1DQO_`ퟎgk$ѩ:R*n&*1x&>zJr<4 NԾzFZ`侠"(_rO^?O ꅧܔwݷ5mn+_+{SRINR6 yh:F-9suс (\~%ڣr4̙yD|Ku@C@B e,%H}[K] uGJn N\D=8)f.Lcx8 |⒪JLZY ) N 7l}b(8E#j|Arx ^=6Nfk6( xc?p>y3UhQ0]}-F.s^[;%r]LȾfI.k4S Z"T$0@]l JyBSęzq[+mPE }8Pԓl&C@uPOFn.ʤ{zyiG9 l\lɡljո[eN_B$/}12Ȩ% Nˠ)_HڹchV` phJ׃?Dj1\f*=)z)-?k 0t&fBǠփsO_=[R'nck.t~2b;a kVu g Wm>빸Y75 Ildչ)sߖŎO_&ٺ`-ZB34-LJ<@?Cac \_&9;^rB)pƩOj }϶nGw!k}2яYkMO<6 Ac>gtY _"NGo#dȎJm ϷՃ`vS#Ś#+sB.$b0~>5`rBPTB7(A !|sg&/֢zA?}Caǯ@\bm c0:`o%33C d:csgCFz{gG9,ho[B56 yr E1Tx t; E= ~ކy~5Yp1 {`l#%[؃7 3yl=ŋu;&9p2M.Ҩq˚$4/TpZnŦ|jXjސ1:GYX%~סN&^eL/zGP&IĹX"52{u%(0C>_HPqq+SC3}: c:382T<]X녍'(C6?&YBD4XTe***dި7w9nVRrWne Y5+uF)ooC!iIJi81YZ-\$Sw u6>[M$#{jy(j4Rկup8e*ۣ*7ZYz7 |1kl/0SVM/Z~[4 PQ&4WI6A*zGQfEF!CjMn4 BSbηQX:tş Lbq8iÉSjUF CD:ID oXߵWtMd#e=<HNR>(BہR g!Jyò뿵dv=í5!we W`6{M1{IzRoXskcN3޵@as{}i9W1s1!٤הV>J `(SH۪?ut߆K #tøCG|ZgLUmX|z/O0 B=@%$ؤ]I$^}LUȠQ88mnwo\2ihꠙZMso"zq䯔6E@NaXG8}>#>` 'V?](G z8zAS1 /]֊cW*ԾGkYr `a=> R/K>[" LYnIv"zrFrJ)3~ '5Ka.O H-*d`^t |Ȕەv]D4SK5ӛ . Ip^͂-\6 4\mink)tq.sy~ͿIxʝ|+Quc$/ hҨH RDCƱ2zNRWOlRje(uӞ܃ ( ~> meip}A!xO /`ωUZK:%*i9v5i8/Ŭ9zgS%%%.gl]*8ũo^X"仠R"\mq,:`Ex Wz>Q `^D;#-.Ve^k/g0e%Jef ,H#`=c,m]3DʭQ:!@^q y`1ysNj57Κ0e0c9;HiD+ 6ZBUǁ<" Iv,n]ax{e^(wsLz&~Lv18{&mq~Z@_=y4`ehv 䨮´QH$Xs?!زƖ Y k]JCl'y,xc~XƤ wnjm0r.3FQT?GPk׷I*ۂH~|$]\DRIXw}ZnR1s_{*w9{=Jg"4MCrT2O_l=V1+F\Ö1YڕƮ& ):D`Z~z RpE4sX#$ P{; 0NDHwZE9RH˻ p7fK/:'b)z! pjQ-=t0굵r%4J7laA c#~՗zB+EM5\םi5;J}czRn. 7ݭ퀌cĵ+:Z!y-l 6WMխBԊ}5 O H9HUhqH-:pc`irȓT-Z?KRzDHpb riGfb, rgդ FŚ5Ȕ]oY&$9/S 4^,I)p2`8jcsqlDg+N}T[@Ļ|i@I1NS,B5uoJCŏ4 NE)~|0=A d .P);m4HNOr~ydY7[tդEpyjH'!P̀vgQBqwKE|OJR-1NK0?Ig[~`dr)̴ yZ"56T/UnڵP gP:(}ZMg^Ic -dƱ)Y*цIWyYEd;J[`}nO|!b$uΆuﳈ˂~cY#&O`D錴Ӂ\`>r|H-û4ZQoǬl`#vŻ#=2N۾iXKNU7aF̴5bx@A,ePA,՜ځ!iݰ gdv<*4x=8>g'tfO ,W/c#{$i̬ȃ}zm)@5gג8d[LD}h JؒVr*'Ps5jfe"Y2';LNf퇄*WI Q.❟ޜ*.jރ =^?5b+[35Y^.2Ae:sw/;)%V(6>[' ;!XSӈwz/ҤCڊބ"SG,IvM [G -ۚA\s OW! n!>Pu6Hr[Tmj^viIꅦ"ܟ L0kD:זx0o!nkAՍ6c 3uֶ c 7IJ_2Od &M|ԄG6GYSoO_JcaEZ$nee31##cMvT}lDx1*G{v5n.%_'ȗNlk:oOG`s<^f)Xr#D ԅ1gK/s&Qex " <43\˾ '.y)o'`@}\܏d?u钾Y~csΘrj!M䈂ӡ\ďos9OMYJ?6\ Iep%*1e_t4n=E{6O0]5( Ǚ2ܛΎfr4{B ws, VA=wS51=Ӿn'KI @Wy,Ǹ6SD [Ҝ6=n 3 \Q{)V ; "2Gm|YA۾Yf!+tNdaf7E^к9lgCEர> [x;HɌ"e?><A7 uK(MPn$丸Ɔl fذEg3zax6|Sqm72$|?$7ՋO0^ `zL40^mU%< =L8] Ypڡ5%AT^ź|%gn.;4QT?@/iC#1͘M,rZU?.ḔP5YG[.̌Io@/bdE̋k;8SAQ"4%1tg_ڧ 3= \/Ť#/\F H/0D_#Lr0`R~ɼis>՝%lep92/24vZ.n#4zAo|mODKtN~oҹnqrG @S% `5e9_bZGb)O{m gIiY+[Jy=$T\i^ 2qNKb7 TC j$pgrmY$~ʸЪ]/@k0®M|"Q{Ya=]h,~fw:pf,W /ސlZ;if$[cdO {qq#"o:LE{ԀnkGxя@luBratZq[ݚK 6b~9˫E۟pn!*҅@ e['֎XD?a}Kjfv31WV>/Oc)3w=j-,XBntsuLfT8 7gu'i%\_wG\<Gۗ> Z{ߴ Ķp={ORBH{p2.wŶ$$1YJ@ ggD 㳟NH}u{2y%@1zՍc>fsܚ|'Y]CQ_y6ƇXSmk#2Ɵ9y W=g#/ҕ۶Bo#>Y=: zhrҾ{堮es!ᦶà%U)޸1@L&c gݫU.G:^_43'yh;pjD6D+"He3YDEm%rz@ # ۦYrE"R a[I+ܲ罵٦@X ‚^)@h!5 3$سWLO]L&jVMvP@iX w=߃%b#Fv{cOuҩZ T{Һ}S"|Q[=}CpuM C( :3m2f(>  ?,(I)AhHh_visAq@ UD)K|ia;ruWjs [xyL+@VS;eRwZPKĜL%:v\ ٴF?{V"x6@vf=`}ο+.k?y3@AO/-ML<@l@$@25,\lH 6b߾O^Aqӎ= jʓ;"~Y&#)ᗑpF~hU%DSvoLjf)5|h^avDmP R|4-QAQ\W_ȝΏ #vp8 ͙W3PI 4Aq$iu>\xz^OV6^Xj` 2+ Lİ[923K$8jÒ5EϟlfM(jl7(D쾇>7Owe%zG\/7  h5(wVOVx[ e|^Y)#LmܼiCƙC'%I ׎\ 80f]nUw ׿!l~r; kΜypNs1˕GiKNZOصb/B] ͠ 7ұN`S8eFzn)*${ёj1X]%rD;cOۮщ1W8wb eh]hev3VEGb8/ՙV|תPѹ +Ǖwl*`az'x>CGH:/Y)pI9qnR%g$`B;Ȣ{Ź:\H\_5+tw ϧ'X%6^ׯ`;L66CzE, O$,Wԉ0ό~$#u`.9`V1||Kk/A4Hu|* rDU>@3.&B)Di9-5gAﶈ?N'ёrsyݻL֓)&Q;i+Ć@K-4Y yYtɱ f]>!mROhPzYSݗaQ>jŁ JME4ޒkbv=_K\`W{'<81vO +6S2uOWVtNv6ivw!#Ж(c?=]dA>_`ꮆ[fTpi+O;kpKznhmKiڦoVdӜmN0mmnjlKY \ @ޏ6:{n_豹8Zqݣ݇|ᣈܡ!#hìl%HMl3:.81t$c3Jz@jQ?0MS"{Q?!10C.3BLk|6JFObՋ;p#pA sۼr: Lx6կ Q kSVu裥X jTDz9tOR:?ɬ*3!}qiڷvrn4fg]SGEOщ(k\}Yh#mCF2C09)7x9U -^̜醱-iB%cmqiCe.=6ZXuXx%+eeVP a܇Ng}+gB'&wbh~hJAh/%J9F=l9_27a_%L uq7X7B&[ݎ4b S5?ޝT B`CZm=GA !P:5kI oq1Ԯy]x"#`iM_ 3(௘\fޟo΅Ov2U!и@?dTVo9[P O1BS2*^ Ԣ㫵G|;$ a5HɰN8>ɈfARgt!8do@sn%=(o iWb q\H~^s# Z9'﹬ذVu|i"xbPff{0#TI4E@5; ]֐4s9|z= ō6;$ \b5aa0i [UtX. oݖQs <;C Sҩ927ARLz6dƨ;1]^7'޴LPYqyCXv?C;z`^s)&JSM6,wLz4fx !9vu%pRt+,Rl0 %cjceaC$uWpU`Pb'`_%!QL,^ nS0&lυT4[  jȀͧHP_]5a;mVl qB+ BwPw+RG y$dnNI4bg!_&0w%X_Zh#Q˼caZ}t9q^uS+\qrfNm膥Æ㐫;{wQMg_/RZ 0m`G1e+ƃB› {W: :toHšD׿U|7~.#*9aEyQ{Ƃؘ?칦l|h ڈ:8T7w1o|"U2 -*%K0N𣝙7pGm}EjWTa1;n=(@b~~˯bu>M%m'rlT 6,h+&x?4 ήZ8qcKI!h?)zbžԘ2}5Ȧ"4erIbԇw0]Є%#>OE0xm 8c bΒgP\{ë* >رn(}xў?_LV.k{߾МGs۶є;ScG"qo##|POg+e銽e5rX$8ls\` mPMW}g]ufz!1zurGbm m)mjFW`[(IH_Z;of0#Z:*tjӔB@ ,jI'c(O![]~Ѹfܙ}DM~S2ɔbUڷv9Z4=R N\?X v\L "NY!Î9{?EڊH@:ԣiΙWla"_"L6t&wIC&&zNK!XQ,r'n onٱ?@{DASF%ݗ\j]&Q:?tܒ{ddFfV[YuJjU6LC!DQPc be9_{g/\΢h~$(ڏzbN*"rW9% )|b=&Ӗ7iګ*xPvPh%/"V0J G0<554 *:}vM7-< 1L,y)t{k!N%ߴO&ULdSoC|K]:ծskYYGqrn0Ո;^9hW޾G5GI7J[c0̯ 4wZzw &&aֹg՗bQF2卙 IZ*\q. jt5I| G;8߰f43 C(e%VԗhG=z6ߞ.{ٿxbpאX6[ɓ)_R$hm4V~ ]s //2d0fkL/HI Og:p bsiTBGF5N >ȡە+W[VC?an`^P΁DYqG:ڽ#:XտDqUbԭ]$LCMm>~@BD&o\e~㋂mbCl#6-+3; /KQ{7aΨ Bb2 q]=^`Pe+t4"CPxsqƬOPB'o;D4D4$‹xNObv8VL򻹱֒.bTDcPsu7|q_JylZן#˥ꃨH<}ē KsvGE=C]/n#.2"(ܕZ—Ԉͽx@Cz-@ U%@9 &uy$$-f zڎ{IZ> cdk3u^ghj4cqϡ%ݧᤏ/CA2pEha-FZ9w ,.vKt&Z@rޤ-PѷB1Iq( k$l+"b䋅neBlhTCw.ege4] |}P9iS^Yzڎג-uGŔBzF(ۓc, Bի5bju=CQ.<:CvLj7~sVEbp3PzDhuh bM8Q!NA2.{;<ѥGf 3kH7/ TjnI/q(Ŵ۬qgZ(9'ĚE]~ T*=^.ٶ سev&I];NT *[Q+j 4JGn%iv?Ý|+3vA H ޏ덌C/'N{;?YV%ݺ;K ;'SϜeL_'lH` ;MY:y6< ڂD,1T!ԘPϭ_?u#|;(W"zWBB\1B_?}>罴yZvj>=r*tM-3Ls.`XH}鬽_+)+p]Q5 `Β󔞺йC4P./H7De^x v#ӤउPQ8;>`6&DBaeBJ I.d[.Kͷ7u>7yrbYDOmȧٖ/9ĺB nkCгW :h3:=֠_Bt z`[B' [ktd*1w)M `n;!4(fm\~_U_)E)oe=8hn5HPl AGF^7sg֟JMe$}CF4(x N*^ }TGo@0_Fv$ḎA^__\{t{6Cvoef8gc*q&ˎ *ʠSIܬ ‹"ji ً&Sz~pCu}sG?;zBOM /}7G4]4!4㌜+ WAɵ^f٬2S3螂#S+gB/ [>JC% m ǭI2iJ#O" 6j'.@VA|m_EРD=LrUF]'#w]$e+vrOlgF?nX"ĝ mlBDŽD[yӀh{Lrnlh}\-bN%Mn {@@I nԧ7['b3 _hklUNAeZW.L$/G*m7wLj){>iDDQ:1I~՘oP4͛oh%=L`AQB\+ D]3I9ZTߨjjzMM\%dv  f0/)ʠN 4|nT*!pjT@?f曅{ ڧq6xIwDNe@OiwY¹.}/$ ,U %+Ci,&cB>%`sW ?P+X 庌s: XBnڹCK3Ȇi$eT?gːYl%KFc\֝:Q j@RX2 v*SɏGʖ^z +u8E҇BgXk#:K4G_9~;'ڢD9 aF(&Oi"0/z߶#y8*C$&-}2.Y`]m架XqOF`pJl#Z N@pܧTIJ8OôW,j$H?d3al«f>Ͱ(o>,RXݼzv 0Zw3oJpYkMX25.m]-gܖW)Dg@$? B[* %AAh}4EDT sR(],O&-ޗsaK$!g!_)~yII`ϝ-M'Jr)Z%/}*L[46_Zr rf!Edg,p]uZxWS}c3ၹ9h3ߧՀO B{bQqfΙT=0GoҋO:ڟ[c cT<, Ǫ.;#n~o#3c# Q^^y`G z]fa5}sF㜽j+,S;E IQqA%ذ]Pb^!:} h2]#ֳ8Bzmt@wd`=](^)FV#TZb

    XPaz߾(yxScG&ȠmȒa2{#K$gҩQ#V'-#hY,+Cf'i0zaEd"Zc죍V7+{If7/QȥlR Z`o9؜.;.VÇ'0jrYgR1m,9x]pwex jkqGWY &fxWqMwm0йJ̄mww2MC94?Y]!XJvH4t;jA󥌍QVDRQb=;RDB=VAPV};WwXh[#(~=u>ݐ ;-6X@jp eD=-DKATEr_JzPb4_EC=1˵ :%) /D*qPqzORq_~9ykt6N eQ:P9H}c [1oSݞhRP^^٩ۥEU|΁-sʷЦYZ9vq_L/*tJ(ĵJjȉ6AnTXv'pa&~Z5? uZdzڍN6ʒ]1 (z%++-f |GA| ʞiƊj1hAm+"Þ ܟIXFk7̖.z-4t8F߈mkFO0^<ғ؈c𝐺I:r/5bFt챐,TKMiCaR+Hli v8ZW[ZuDi8 z⶚6q. f[[Di_9U&՞Kk#.Mim}$zSDnK$ ;{%( ٠H%LRdpT4 ׂ ö?aP #C= K9d '= 6'cTZ}b@ӊfoRrCG$#,Ҵ.%2ɉ2QɈRKK::b] Eh4`<QĽ|z~M l&+aZnq-aah_E܂`=l(zt˴ep#X BZ3dV &EZi^_ڟ-$0? /Rv4)Fr"o3AQ]xgy7`؋/,: y{#MG 0{`ɤ(մ,=&]f{SC:NZܲF ! nȂ~!>dyXQw,-j, JdļpS-}l` K5oNey=P@'֥f[˒s)[eu 7IܢC5:pƧpq;kGm>gHJv2lJ5=p@)P\'p7ʈ%"oJ uԾ2-6:I_J3cK!b7ezCB#k)(6-ּm1'7а)5lb ^ _m` 8|kUqv|3*$[-j9)%n=*iU]|i?0ŵ0`͟qmP;W*&DzBt&?$R4ijC #M x^<3MeAEm>PjL+ 7 CAY(ony<˻w7t Z^AX5fgY7իYg c S5%1;`@( ( m Q/Kbܨ0d!,5S e[FW VǞdź;a߫Y֐}8fVBOYJ)VplEQBjԇ K#B7RuMs8,3gNz=ONj osCLغ9f}[>A!QyNi,#*K>xѶf+b7"e,"0HKd*0N(dA S=C(U+Z&ĹP+Vڔp) ,l~Xow/VH h*fu 1QX|Y477'} iub\XIdi ڂJ?_sWmQ=NKQHãMA" ߲2aMH5N| pBNϵۮǪxR⾶as#U` 3D~3lR-c:8͎svA$]z("GUg<0(#75 1.&%HA(f{W4̬pFkcţ^\nm9F7#?f`ʪvQ;?Ψ/d\\ jktzKkɿ .:DŽsw0j#% k. z)GPw&u/ +%u^e̸f#A u[iE㖏Z'lT)`)TU0V ]g:ő|8t0*{Dkb85Z&Jl)4t>QNWHn4:$Q;?>hu ̟_ q۶ f\0AWYU=bHa3;JHZ񻈰$_:5Iz3"ҧ:,nN_̍ OLGR¥f蚛p_e^bc/ o kʻ^ޛ)/E.gb4yBݠ-1a|ZQ.Fb~c난`jD@Xg-&-Ltr[̾)S1fH ϹsN9ܐ\/*ąG@.8xdz+b_{v22$`TYA,wa<'5Y+[u.-)<9?t*iI nE!2/8*gU<Rb~*'kN,X-.1MTJ ;_\M4*JCe^6Z;`,5gJf2Xk-w,tRfOۃ= ):~_K\涻q%[k]d%FiWFރG8_sRrV}()E*1X.MRyXD,E|>@IQƴ쑴,'i<5`k+)+!dn:v0MY^_8!;Ef,bi 1]QfK0G^(A[0ƂYh/y5X%xJ[)b0]wNs(D-m6 (d׉Y=ġOlnE0~`ɴ[X~ǿĠN fڵ<]$)nӐt#)X@.abv.q Q((`Ǐ}+)_u2-kH,L (klab nXw$](Fz]TGm 7lNJ2&ih^|NUhL-dȅD85ۈ8Қgpƞmh}i V \R#z΍?XAY!4d?$1(`( gU=iݹ(ubp .׳Cga0ljҡWCM|l?G\.7;5|6XNnA4]4׼jq0BYk*"HuUWbVFS<:[e1&eۏ$jzOG{]JQ }  sUZ+8ģ4)@k%SYb|bd(ЭH^Ѽ-Y龊3{dXpZND^KVVtgP1@9, zi(aB_dRÑr4 ݫ>?^06'c0r !яuwoޜqpQ7dFp8HB:'7ThEB4*_u; ~-OUJ©S$]ܗ6_Ԯ\[[;j Aiksľku2`yBk M&s~uy!4xj=ijZs~M.6LRI|㲱"0=Kh\q}\݀?(ݱxE̦[ۤFki3KG^q߰ȇ!)M|- q9hW[!d~yUC$먚&KIW{ٍ:lt@ ;'ujH Ja~2E};HSaQQ=kՄeik@Ho:*V%'8<J $ od!AłRuv:^xhbė$Ӱ:a$HA3X[]F"7Ͱw\6ǥϔhO>Nn,4Jn Y%0bDg׌x_HG G8f.qujLQZah*-j݌?N_p!<49_W5h m9>N> XQs#ٮ g>`n߿ug 0t TR#بU#k1i: R@8-H_cA@`6Q㓲T|&lfh(?6%?;ۑ}mM ?Hn%lDlmn.>hj@##.h=?p:f.iN# Fh |S($+ 3嘆"`/c hd+I2㗃 9G'5b `w! 9vS84W3Y#R:F~݉T)@ $f "(s n fjGW_jhVC[QR;/;e :oȧZ^eG7N9`MH6ݷхrͬ[Q} 7%z ~q? `op NZ&.!܎L_}h8ѬWmpoˀm\ )!fy\iObZh3hr(-T=78.^6JaXçSϞʙMdXΣl=-yMٮh٘ƒIhl a<@JpnyDѧˮIʱYۦD{^Hpbux!c:àfUYd$G] P*J%͠gʆ[H:[~FK {Pd_C^Qк*,Z@>Bҭ#E!ym2x=y@b2"p+M,X?e>YUf= <$ës ZX+fb! }o kd Bm#!QkyIAux\Q7mȕzӖUms."_rp]1á3?| MX&f$JW$ҧFb1ރ'+͘#]"|"A =3!B&KCu}D5XN!7#0#0Nog{-]vILX74la΅x6xp3Kp )O"8mB߾XzZaQ5*&ECN=rWOS'#>߅;p w䊙kq>K#0;/bCa~ik: t< ?.qUB1ܖeQ=4w,o#9e3c*QYrL/6j#t]ȤM0{wt1c+ ~2#А+ 3NxpF O*-pm ins'h6" _I{^ք1 w^>YtL۲z1U^j {q [x@}{Z{*wsˈJZ"]^+,'JrEQm;ruwlB/q.&Y.96mIH #1͚\nNyvX99н( ns>ɱ r0CGOEr)ǽ IV~@ZA`V_( vbҨ $zr#rZ6HR܇ERn,Z |k ,F07b(MkjZ& ʪW%ᜟ0ֻw-Èfz<| ս@έ;E^WQAgy2Y(3sN5FJk֭ygWlZ7 [H-j+] vm+[No=J5o d7'8v7Jr}n(~ڻMepGoHVc1,C/%Gq܏X lJ6Cޑ~W3׍!<ߺYPd{zovuesmu&ܴ9_HXTb׶0~ Rh^Oe&372A8/k%e|` SMۇ(!3;'3$2!-Rz$8ep-C2eq*~e&>ޅr^%3 눀1P,d6T,6!CKGE0tɎAab6n__w9b J͑= %ķ#0q/x)*@'Z丢N! >1c" IX`ԈQlTlA#O"f9l E<&'@[J0N]`o Lέ[V!+>5j汛⚟y>OS%yan3fyU4vGcN9Tg TTOv>g!lA New0 *{+}O>qmHz;@'+@8 9m廘tu'1tSSoAkB0 Fg\ɐ$M)/,/58 2nEױ^ϸ|VnO7cs  nf$JWB} ke |-R$ 4< eO\zgl^-Q'gNrC|uJE b]͡\]Kԩ);J|P5MhRR3\:-N͚';0}GV t:"N42M_:me1@^ 퍒aqCE o/lԮC|J =5h'?cZх ys9^~jNY|Ξ"OD[sQ[ljjMx^}{WM^XĀ T3ڴy7{uVUeהs~b|A΀^Nja3g`-Vb,d)fir|'y@1ל7BVj\7Z-T_Rڈ/. nlh+N9o Fy^;0.Z1"suxjZQަ3J_H㲝('*,φ49 X8qYyt%*G&5i2{ռ>!u*<#SFqʥW_LQȃ|+7n& Jdʚ!2Z1OS{:{)XtPZC}\ 5OscHKBR¶udMA:Nڬ/؄OXa&=Lo>EAU9 b;uGoH`=l=@.ഫVB-/*Q'u, e(>|CŘ2n ʘ0#_b&l}}z#)G/U;(r AGjyLGe 7S/?1kڏZ(:4[L 63jk I^4B^7ٜ1JiK  hI}Ώ{KĚ$:΄Xy8qtP (X=|W zk[+UW s떴1_ <I&C5-1ȱ "Q`BįB6O2I#ÈF1ЈEE vp70[Eh7Fpށj&#iD Ydl>%e=s:yOK d^Ȃ. &vtnU̘WF]x7./'$7fŽtA"؃doރ'qA:Ak6;|B.REZG H@|73:}*re5#D"Ayկr|ZOOgxgno"8Cv3hCX @>?ٌS8ӲD쾶PkSngXx0v `ugSa'1u!խ(nFgWG?!%CEbu^m(j5&J}RuH""4v09"7]r$ k]ԡaoK%#iu(q/Y$q6) TJauBWɭ`hq 63`Pwhy=L"mq{j)`U>ɞnbDPQKV揨ߢ$0vA(8hmZ Q/#bNQiрR\>Q]j&,ֳɚpzW3̆dJʹVE@lsB^*eM|:s2 w:Y23sk)+ɡn_m7`)llBhM0&R慬vaߝf_,`pLx' \J)B*3*=+q{?%x Áwfה?VE9Y8o_A ^fA"k4.6㑏λ H̏!DN.|*)Ow@t Y蜑wy#<(tk7X Gp$͑ L0lq0K#;IXٜձ+尊j Uh%3_><DAJ;z‘ꌅAǃ `~US$ j[ 3bй2iŕԦ;5*مg6D*9eV& ,.an)K:5:rΜZLz?] wTsԛ)|}$}! C[@'C.?_GN\=$>x+g'HI6!O Dx_[ǒȿ'zv="x@Xf!LAjv_ڡ>oI5OrSIΦ`?2TAWOFE h6scL$&A E Oo“T+ VI&i1ZZZ\: "ٹ$E}#4DXGr 1rN[ .ХTp~${fLw$#jR=^аzꝋlF`JSť0-Pu_'OYGW;b1Ix{yugv&Ѷdn^$7T[Ѡ׊ ڛ:Ȁ^1Q8zejɾ ;o<LPA(ʕHhK" :d3'D#˓ ,w2=0GxaϹe^Yn.ӗ%^Hhn(d 0' Mj x#Z~fM퉌y$=E-i%|Zz:^"Sfp^gR,aV587^,ظr;۳yۀ0f*̟s<\(4AZVdE=NM`Rk[ͷTԠJVP_>s9~_R4*iz,`143 G'Hڟ?SvC16W_}&&Uh=Wy5O c1Kt5 -5^SD"9{}O€(\/OelEJ;3d]6e.T<+ \)Io  @Z-ޅT1WSALkro{ģpPC)?"}I+SMCT'%5y~jEm 8|\{ѵCS818V K6'F-ppQ:Xo_GOu rzىts$SZUrQ5_bt$]0whR?m YDO/+] HEh|A;SUcP#ϑδ{tv0w&_%2&8&P»rwFy0T\-1c zXaO d4~\[eAyzLޒ7: RT Iz_TȈ"'"+ias惐g!52ʓ; T ]1b~ᚁˆBӖ~ݡGJ$H&J8ʫ>sي0) hX4GG3F uzg rGWVMf\8&gT'Qv v]<~f|U5s,š㗃Ƴ7p{?XJ!aWTkNVwM"G^m\ rHva;e) >I*֋Pk a9;Zh8LO'Cu! *Ex|, W(Z ASy(! I{%\4S >}1E?3TX̩柔"b;^7v^bG'&B(Z @WE?(=WsaSH*,F5kSTVy(`Y'qP6vH¼C$" y6חAQz;)dsEjY}]|4˚f p<>$Oa̰o1Y Y[X\a {w! I%`r}Ob,GJ:n|%eE(RGrW7axZo~^@}bJ^(6XaZ^mg0JGw0~}#*O*O* &ðvN<PwϦYS%X˗_j75AEW~3_m4[;00KD&>!Er*UYu! ^DUP)f[ p~E%k+چ}3:|oճ҈na\6繢0z3wAۖV_ (Ưb .M|sorc_5 UJ9s,ˈrigDRG\Rg׵ چ Ѣ9= |̄U%T52A.>%Nx WfPRu-E&ƒrD޳n`*L7i4eGw=0KmO\؁d'_sMva UY{!@PHbocI ~IggL&@:l=q,T԰b>97OOq0oɖm` O#mV8QWÓ{^V-UWuje&QK팲Cҧ0GhS5 V5˧,jBꉓdܜDŽ͞dpBZ!}6c&1 mvjAzˇJf\4+bI☍ioвLϓ" f<ċ+@BmqMt$fze/Q3BC6loN nώ̕L],HgrԪGdeE Ŷ0UtƳCpo n?b|x/iK,u97{mËBe/\1XA[kE KC;Cݺ0h=@n렀#nm\)ZW/ IAsxB =/4аT@NsU/q`eUkZT#@lp{D!$ B|P ^_<Fnj;A #LX)%ZwCy'i~;FQFAʆ_Yn\'gdD}$/wׇ[.wxT5FW  7<1ugF!#=3UT}Qc,U^-O7Ύ?䐎ZidA`[Y{-?1ŭ1i5L WטHM'{XאT[2f%-E]wihM%n\Bǩ_K3' ].]ȊVDapj|?qU*G@fUR6v5.P]۱?|b z0v\za>l<D1 cI]@7U[CvAm Wv\hbcCo!$nL IƪTnnTou&7u eiK_TXe61-)(K F/1zwk7 H݀zA>8KOOT'v5;8|d%.Xf"~ 5]ǭh I4*wnJ,2 ~JXy%wzwY NG) 6 $ݦ`['E沸_Sg쐄i[{aRx/ u|?ϣ Zo>ĜdyT-h$+.Jzے +MݺI-Cer.y_WCQiy,~<6NV>Q2vښrD@CK?YQUhRJ1=Ρ㫤cUÙ󘠝vc0yM#IҜf`-7 ߋX=i,'qïu%%1Ӟ+;dWމq.9A1srlz{e<M$mΆm&J-Gm"|"ɛPFI]gܕp!bk]X'6!D3CG9\Υ7\&dm5|#cՑNKoiqi$}0PҔ- $p(14IAu%|&.g.Fv#8Qݛi!>fg; \NUI-ϕLV~P/g!ם\ dg/v̯=f;ȠcR8F0=K a#7zy|?'R ]!u땒۽`?KÀKvʛac1w Q9ޙ-yקˆI׵'nV <6o y*gvn"az=1 s˂9.xiMaǏ_5}*P'EKe  TXϧpxq|ȳ8HWxSj|!PHoft4,WKf'7MB8%Jv_ QmLkwΟ6{ۗxږAb8 DžS:-) H8"<ׅǠ/[ҪxT2T K sQPx>;CƸz?mx : P77w?4 ~PĂjykkqk~KU9 ^ivڤ]4('޴VdVCMu2]JOu;cX) :?M@w\ ѡ圪{.z:+QHJ"HzwE^i1 w.3){,Bpj223Džɪ^Z$]~WGVfRĬ/=~gM{tI">t"tHlltyae 9_  H^O ojsmeRKNx,΢ - :׶ӯW!DOy=O-|AEifWn|VXq=i5DZʞ+LA 2k"pwjJH\%Di=8&ď5A!kQ \e?omP7.m r"w1K.担bXL7czw; }}V:!JԑK=O5vV!xviq;w4s ,r ꋜ`fc$:e-a>U EMW4:x'#Aaj,)%I31]"3oqv¢hsN rʣCŨ_[?-4lIEOi{ưlW>Gv?J#׼&"x;F6T!q_4&ʫ-FQ⺸#o&Nl b|30vqկƄ@Jkk磌[m`جR6ﱦ,UvcӝD:oTu:\3 C}IJa|O)6ȞB_ Y;o4?ߵ}b OZVh~'F7p[\ *4 ģʥ\4lo s})2f~_:uf7dD,I6w&zD0/,#>tmxfj>/lli.#85 uHXc@k*W%ꬬx$s\YZT 7EMc)*Yx''Ƙfr)) y:Z zu lNܙq춺FS%'xJ&K$oa\hm u0w2: G3>Q38yPL{YDm4ӆXI4UB;j5)"Kd3^kqO07\߇Ѵ]T~e,ok#ϗhī3xMAr+7qD3Aj&D{ÀjOO#,$P: QJgD1$~)o}:'ڹ|TbVap:ҬEh[p ?\lt>V^(R1G Tv]`+v6|TLץq!-qY")U4JcH}$Cjy#jH6*ږ`.oPwvb,,^mH$`Ẑ}œ:qrb$3)>#X>ҬcT؝2-@{ZOgmрط!6痣Z@NQ?cJ!mkI9Eb\ɵ8t [\ޭΕvǘ.r˳\T`2a*Ph?@?ehsP?@M ERub3_/&x & kO t̝K_H{N@F?U<${ő3ww|"&ܫO5V73W(aŮB2::ŜOIivGH>d)5w NNL|m"q-zrymY=R ]xZZ%i#)3@O&1eT-O C&&phyRQξb>'_O#aQz.. W iO'ջ7 YW-A}7F uUڰ[+JCm^dwgL'6Q -TA.+⪁S(-0kdS! uo2ȩJ(r-J5D^b.|Do0lpDۦn417R{].ټ]'CY# ek9q{fi "KSc$ jlL.*M'IZ o!$Z`ÿɂԯHf0=J&ӈD75NTc3b!"4r=7u33M07`pwZ,e6A,|}Y5Fж'JHޓ Z3R~,0 Y(gK${8bEf036.KIP<엡_?҈#\ɣdT'A\cHI15"^2u%3B8DВͪ3[*c&c#5~R#ʼ- -<n_j&M ɟ*eAlƼ, vQn 0CUj;ɤ; (yUm$}:  9^.gNW{]o vR5`^4#ÿ 5 Kbn֍kL[O;i sT8@ho:1M+A05Uob̄a;F(V9<{a RqSrceI#>΄2ܪ;mf  44y !& ln2:s2%W $LD2hJtH`G_.4HxU?=ےس56j:Ku࿍\X9]'DWmDx}B J-jrL 07`U.iGVi:C{_C>εJ\Lʵ#Y'RR(C-U-iq/lD5E`e{4RDMNܵmU1dzMXCEOM#|sѶyREV2[W~E̽8{wb(A?_ ƫ%"UMP?-tX JB1LPk ʟX(6i M6ZUc"7i}G]lm,F[&Z͢hu>3N\g4b*sAİ Ag4b6m$ w7]N*V*?0:AMεl/Ӊ}kv/;Qqo+_PC":>q ab2C KNs%2ͮ$,Az@*WƖ&^c@h|襪MP%6vEy6;*=z0Drn|/Yg ֬= 1K Uڭ˥Yaih9㙲]5?i}ZdG(t7$DԾ.^CHg6qLHмm;Y%>שO: s"ܝѡ,]Pɤ8'&.6%Mk'5SA"aE| _~Z]`+`Q/-Mmq|i+_sJB.ps 6_Thy-:_`ݳ^'5KX`{BR=CY sK8$7V&86׫_HRLwto @-O 0+,$DYw*;n< jHtཎOq;)dؽO<$tjJO7o}h0e٦ߛórCe#6`^9oZMa}xs_z4.SAqa/iJ"V-%PjSy3i훂=B(6 ?}3 JSDb)3W8i7|[WWV~ tGl|Z$l_,D_g^ @WǷ{8(vx4ftwjİ(Ž} dr;9 $0D}aϘ\0\o>'mi$3xVmpc _!5]U->|q? kV1 w&ScN3v(S&*-fu-nUf;dvER ) Ma%޸y(KҿgR gt.m9SmbUYh]Z&ۗE\%h1Kp⇯>IyZ-$.VjjN((pB߀ē'p[E*eZuDžmysF*o~JWy-/Xa4Hֳ!>D?e*WK:t2ЎNhQbB/ ' ;B7O&]S~詌Ʀ p涐Z%^%<=+ZNZr'ؖ?B'yyV?: e2Ki%|Bv TNa|_ z"8r9zG7X+(UBffOhcs w_)=x!]8>Ԩ[oeDppgy }.$L>YnBRJ&1)ZS O3sqHnajgfAOj$߹2Jc)r>(oz vXBku8H;eWD8ԥOTnY  |V'h'x]# ~E(Z W3A*Og6AR8qܟ#@t=Fbgm4- "J%ݠ@nvtg/! &]h"cjw\ACDg*T:;"-bD4Dz04AO+}UbU<d\lm>&w{`dx\9|4 neČrbX5@ݭϽޔ̎sĺ'-E^`R'҄UQթH7SN舣Ixj{(<![6V]^. GgJYcV;yH}mar= [00['{ҐC:\Uv^fkD/NX-, 3ϖ)dZ ]JͶ)p@ һrG:)=e~-9m.,\0D T]n@ׅW]b|R7 ⳊcG8dTF?w]`nYD#q!?Zک!4ȇbR q]u1څ柉dtdp7:GEV̓4|d7p,Z>U0a`/q+3zr9Tn*]jVV=(PH.b7IECr^9xuRRaѠd\2=Not_N:ڄac4& Rhw dZsl3:Q![.&Z%W0dͺPo\ /g_KFP R(oAM %ֹEr]ᶴN},׎i60PKߩ7m.._wtc3qC\q=$-z?ks'K&M,!Hp8\I7'U!XWr 6Q[Xw/ޞÍ Xc_j+~zA-nWp;Id;"xG;/C2{5(S'NGd?%Cޙ+ז&%Q( H]JuL 3C+ߎ1o M4J*Aa7ωIfy։ 0<+'kJpU̕]X:ӵ'D( C |#)B@k<>FVI(5. b2 ?Osl4Y>Ϋ#e=OL&[f\r 8|(.*= /4pNO,( JPu8F@.ZBWw~<PpO=#iƵpSdJ5\o،:\Js$؃ 9|hRζ(DְgP"ytU2vӊ/#u+,F&vTxub;+;rS8ff~ ]*:Ko={"9޴iPJ0Ջ[AwhrWK5 .3ygMaZrM>]^c!S.jK/F-t۶fOl}(?CZJet&WP9Mor? H7U)a8d,\:H"F*v?sح&30U[WML #B-%6_ .55Dh];"+ݥ$ji݌ @Xz뽦_VW,Lӭ@q+8x;5 {n"?(R|]1/M5|"ВioΚF*D FMчE$ٍcJ80㘥LYs,\v 'CFN:&~G]<]D,Y퉘vSP̰{BPuc{T0ÊD+@ýn H[Er)ahL7K8TX8,B5? w3dLeeqO+~Z鹁+u8j~&EXxvV$UK{ӿASDRtuY$'PHKipRZLUVvHӆ "T(e8Ė8O~kTSWzZ9~|a;EZ8v91QIn4*<A&H~!p!rrpjX>2)D\B΂n,eKsX\v@Cgm4,,UНS|2=KYgMu4[Aui!VNYG ɬiP0%MWGk S~tԱ[Ak˕Ҳi~dLyb+kIo,%xWl i(:}[~%(Ϝ%$ 0zjl^ z$yV^NIպCZK(x-hۅX=Xqy]?zCU6 "P:8tcA;g3{eŠ:0zGd$[H3©Unhٌnq 9b8ۦFܽVr4L WeRa|o)RO-=$t58NW;J,A%a4j7;F*9{4e>Af9FQ}zt`3Jsov3zUNJQ=]ZHID9)Q& 4B`cFUEo T#Fۦ\O3?ySfºEe_ܬ]?Ϟ܇ʀ1;]<:ɪjUaLߞe.hQ ÄB[gwmIv|{] 1$P;ˎ75˴Xac̖Td|ƾIķ`3ٳJ!g9Xi.E2pVAF>I`d060 }'f$l$} Y}uH.Šy3sdj3A!;P#[k3sCn.z0b)Y_8cP3i0TɓW 6y4}x^YI$oڗ( odWf=!|dAւnvԶrމE>p *dVlnXQD]L(+`k"dz4oP&‡WA7Wjy0/ Fz(Q'ǡ].p}Nw$Ul<Oqt}e7=H;\Y[#Ôdm{[N~7zʰ@( p2EgO\G?8'.TN%jY0VʪC? 6KIN:kԠ B+8o-jir/#GjAñ ;9Ef_9@+TqE(pmY<~1aw^,/PE0rٴtE[f(\pneI(A3/.BL^ C8`cFp Z+8V[>!o԰wE]nmtX&݈lȗ˵:5Mj]zM}i6DԵZ.Ck/ `-%$9}lc- 0ӹ+.:ܿKqۿQB8u.G ۛ x[;z(SUjYoVvIi@1A!>&'o\Qlm T;$ u:t'+`As(ߊ_Ϛ8>3~( q;@9{7@Ŀ9} BXlH?Y$G# Րߝ%UPg󰀀""i蹕`Wpd|t3g.܎ pabL~(B2?93!Έ6*k*VQ嫙 E iKuO+ȩq{/AcIGVj2rC(놟ִfPbx;z@1ՉȴwM5Sb{|w4K*oK3`kW.wflEx2ʔYT1(mJ>R[S Ȅ$YsEAk{LLJB,dnFoSD4!&y)LoS2_2uzRbPd10yUk,ͻgB zԤ#o!`Ew'n84"}y9pBr9]E|rZ} .OD>Nmrz;~c*JW$ m>]vA~NcV>U:¶3'qkg57({'|G_6,3OKɿf'I\27a'3A0"E9 %D{L\)cG_ժt[ otÙF#MB;,{w &w[pY6ɆQ_,DWRΔRf:1<ۈNb?.\1[ ī{@-s БדvB'R2ni{{/$',J6wu~ 3/.r-k_3i~H(q5&w3_K ,x-t^tۨ4v)ԌPD("+񎌂[8j<ڏ.Jv> '*'TlhVFGV-WW.@Ns%n5?-H _kd!zT"?K/t@R@;&K'&SB BJZ O|6]Md=< >"qQ8bh1F^aygtw׀sa6bwtC'atsʡ- d/N!^=`)t׮rN>r% J a%GҿU1$ϨcK3I4IWoNGG~[Psę+5m-G˯s+ 񳠆Ӌ^ 7s j靱ozwhvnV5qXva6ڛ:gAF'a~PhA<}dͣzUvA3r7ziO40z46P >ch66Jf}UJj-oVxp[,Z*+svH{[˕ԷtEeNEײ.1.{~vtO D{r(P#;4bQCмoBnCxl[}v0l-b8N8$Vrw3hW"xm\X ߴܮ n\kp^sƶ =mzсC)Tz =ƻV;|ZUd?}pIijAZ}^f~,YpbݜNdqߝ(vjU}rX- nݕLgUˆi [YMuV;ލy9D)2Rpy*-j;b/+d |YN0O{ƥ,>R"=Qx$ڃڧ9uKL op]y2 (y@WUZyS]TDH.Nf($f(/qI`yg,uuI2,ē? fUnIgSYLW?ѭv֟KNuva)6>⹌v5p4w#Ruq,\m鴢y,"BY}OEI;G:RǮt$C1?$VMuܶIJ[`tB)VꠁPG:VҐ: CZT!1:D\. }%!W/ =R<ӏjiκuR}AX]Hw&1@ Ͽ g1ap'~p k( Yf1] !D&\c 0cM1󅇅(zepit$ (uMyr  2j*ǹۮEZJE`֩yO ZXϢݡ̤Hv@c߾r/Oq:K5QUH{Y/!'j(h#83LGar\HS4qODSk,sed5%z=dr4]! qcQRji>|%ۚXMPmE'% {]%i+X[NlnJKi(JஈEΉ2/A8LPգ!nZjAUdyvNythU^a<ʱ~@RZqZMZ$o_#,^k=T ~*2+ e#ˎY9 5 KS٩?aWHWP h9.cFU_XlnnNF'];s5pQ>Ǜi 6Yz'3dQYx<wC~kCEfEnA]j+¼w5kJҮJSߴ)eZ|}ebL|+LuOQ\|N'8){%I0_wppaCR,sg\E*2/ГM֕TE/E*Sp]oVebllpzؽƍ6nx6i~nYGr$ X&h2,c1/Yrysg^+:vVTJW[긒j,4ȉ>HƬX}kM,)/S%`Օ!w7yi ;CT ފI)8]ie8puq@'*\=FUZ4oъ!RiVBc3 1nHהjKVD-<'"[p/_.fs6@dyoOAaꅉP7ax:XkkV".|N"lut2Rɍ6ʨhDmYf)Gh1Y9gzA;\I+< x)ĔpX#~*TR3I漒Ts`ڱ-_/Rrx.pRP5xm!RB#X߉r}73)4P=\5/dn Y]PS_K~ۑ=g1 )ɩ}Ǚ:Q0]%:Xrr5<~h2fb5e*>8:6. !WSX]] NPJ>ܴ [BA̰E]wrޫLh2 <`?$V ˱u,6v6qOrت ,VO@2Pk5aJ;baJ|Gc(>b +% !l>{hkQK2%Jլc8ڿWzPS[s u"VxHXRw*1E @S8ihWMDy`T}9G/&ʌшkճȋl2|_rn:)6AoNgE#d7p2$6`yI]>Q&'uZ2)P6# kvX[ȦcQIĶEol-%ȋ*X-'$x٠@l·Gx X.1J=o  )msl(XZ7-6Rq[%a ExHS"m eleuK/MIy]ӳ.4ǸgE;dh?baIdDhʎG8Y+r~^@ ;\(C@Exݜgiż/ΥJP+nrKYƍ%9SUmiƤ$P>Q CcdPkzε3?.mA*osx9K%B8E1:#krY >hf'.>xCj'-v4d*j#EԯެrUJ`pXT( afEh7Qn3[CoߐdgY[,|WV=ex@Oa{3Tלc. Cˀ- ro\dwb 0ߵ&Ly҈<$S !kDZgf 4}m(E2xZxu?f˼ZPX^d06K.wAVnQ"ԮKj,(G0;0~W~THq23{LęN$59e!t1@ٷ~J'=:l CּkO3tg]_I(=5>*CN|$_7%ĆO&bڱ襼9S6ϵ8_γz2QU - 1uT$G6kGiwоM1:%hߑ5 rx)X(l%F_̵P\1tձ2%/dn"|% l&m1pk2G>4mj~Cv &5POo 6$_YpH:7j| 3iX-8 >(6Ůfj_b2Zǔ77V#/{]IG'Yǧ^_'-ܕa;=Nw&zAJ|_L'~1OB-8,+@57s;Xs$_Iָ_ؕZ2S0m(ǮL㞮Z/{gOX,ϓPSygK S Sqr1tr/tK(,Ld|hLOd}Ο܉ė5@F+^nu29zw\j$ͤ>;n 6gH\[ "y*];~z tM'}buꪺ|B ($ ,CoZ%(/Lo+~;oٕ|6ai#ڴ3o )RrWV)Yh)q9 92␅^t2AFF:`p}ssDj ]Ld Ogq"H}@?fJڏ5f) 1a )%9&s쩯M#59cW^߸8`rbxV26<7B{ ?}5?ׇ̾nX%|\֣F g  _"jPC> QR9IgXv-^GKw-S5|hE.C:(;`5#TmLg^\W]DJt?Gl~! s=.{9v<1vFD ez@4(|yh/H4np$%=]tFfbH;/qR7.\o%3i5 CNrՔmYA+'V$-GƹlT Ds˹UgܽmPn}ճyWPB/@Ӹ?XaoxdB%UNY+yZg)]٫PSS~0O^՘tcu?vs?ɜdtk#Shu@NWM; Q]fl|ԤJeF[[X%#H u`rT `A/}9vjA±S Ǻ2#y^Jg,$0p0U7;bq|XBdOD5 =lECIWh6Bxt84fGLžh9MuW4\DQ,x' Eʉ*tɵI^N(Agm(O& gw1ޗ2V7~0%}Q;yŷO!G+8WBkf* 4é IB\3`Rm3{eԻ9Ei`ӆ>ixSoUo3.;O]-dLIR5˛t y7T<hR'˸ F5wF3o*ڥ6KQW)>kе'0۩Щnze7Old=~XUF4xa_˜lu*g6DMQzc*3.SNǁɒZQb.+ I6@jgf\3HBWZ_(k~"KgbtѠ0hm$4|@'t<^AR{%-Tb,x(;\9I=OTi{N89 4=(Rmy)qJ,$uU{m!SaU<NA ul<#ç 7qvG>S`$7pm/py+=b ؖl 2c],17r@Zg_)I|Ͼa 1+ʢnt^gE{:%ۥGjtt X{W< _G>! H CbN^w-["CU(IC-m + W\ r.X@p GG]`|fs/= 󙟣v"^Zo%8먽,{f$H脇T޺!5T8]Z4jjsiԤE!-jGY^cG{ۙ"h:kALy4Yj~Ibrm8`$bIq{=-s+% D{M*?z${.n Z+,]t e^1*| )$"aR0á?. ]s<5}Tχ50)G+۱6Hv&;.1z&u^9ƛxׯ~!!t 7H>#XW)Tx()?_yYkg['U2op|D@F_Kσ;zc8];"Mu@"ŭ9۬ǒ\'~UXD~iB㶴:[/[z2H `}ivZ]m aHB4'ݫV$/ xzSlS픳hMu1xq}oO;g jӸhY42-4y¾淃'L4EԹ1%_߫cIy<θmT` j]C26^5ЃdTv^Bڌ '1*c;(Q5~ڪ1?e\#nmnd+]WX"A}%Q2셜} 0ey bT;7oR`@NG W2}E۔ &_SlKMZZL U y>ӽB4Ϋ \o1.o-_iԽ܍eW;|_Gr hvgPZ҅.gi%4/]>Cz삖(%m;kԢYT'"6YvhXRv͚d7c(OqO_E%t{lnAׄVX Ҍ':%bpt0Wsξogs$%hFWL]>oRc1x +?j2[!J0%6+ڜ5ql?iUד1eYwZR@qaM%DPaY3㙚.%b:gHÆACk~Q8_D؊*wC^0ѣ>x]8mz^*?n=tH\GS),llM.ZN nW𲷐vC}n\u1p.RNe c@R5a|E ߎ(pݒOs ] hAz3?lu0P6R[L|rke šk^nUM␓gѱ[_>vEULz jRy#^|MqG#کO-+Dݞ?^, |J^M^JoT;xUi $V04q&Hw=I-ceyBXp!&kQx֭RRyV| 4aCZ+fϧـ.W=r2-kO]A`|er7tG_%̞0P5 mo'ǗU4>`GTŝB4̓h5u w8 PM->r@:?NHK[ N̿4;X~ا(#] 6[+_g(=:-%>?uYQ_Y# 5S3  $7D>}zt7Be)٩L!UJ\ 5G$9%7\6UYt# 6r'"i>4E&h)?e;I Z fnQGACOk\9#o@VyQ[VI.47l($vŝ3OJ4Xs jOE*[5Ò-^zŒ;/ux@Vq2),"ձ6Gze=R='T]U)D L~cB3>iߵs4!~kqd3Ry4VU`}l ʜBZP6ʛtfB4ml@=ЋKN3Ko  I^ɴZnew!2_BlDn=c_ l=wώw#C̶&;8Z` mR_H); YxvLd`H4!`T6~TbPCAUL>9q&ފ3j[!}!'Ӏ. A)0%c,x!ҕQtp3]b):LX)%#~KG-95SF3M^k'mw̎ SP qf`B*8zrEa D1r8MHgh/vwc"jD)z9aiwAr,#-fdPr&O"DSCzEb@C0`6uî̵ n(@ot\3Һ(7*@ ~:=QB&|q-z| YSn| -F/`{OE02fyeh˧ VJ깫 *tGtڟAȨ?2ԜE[+EvOn3eHZQ(*ۆ __VJArɅ2*/|;49$iU]ҏ;r3`/FX⫏IҤ+= ȝ̸+@ a}yuHZY[R3ڣ2V[K!bA|j"ۥNr8/F숮p5.L"OdU/HCEYo#tgXU1uvwvU=0Bc h眦?u|= U+_s8#;3~ ;ʜ$I{R}hr~ӞcKrY0t@M,qKpRkڞ\pG*M 1'H-ޟy2O7+|@IQPjƕL]`1Z#GflT` lC<&zR^H.n,gX55Ŭe >-[Jkc Og,α wWaԧ>#WpӻNtՔ>/2!TmoR}cSh K@/64ɧ**/Q9WCj)FQ쒵\GsWĹa5<$b7{Q+ l"dŎN雫pڔ+QB] nY[lcӥt^2s]h 929fnq\+q_ 7 %F +zx E@@%87]9x|̴Ѯr9nȇVǕꤎ3|WiTD'j9݇T$g׳vG?'aKYV'qL*Nϔ1Fexatt{DM~ ?[ZV(>I.r%],MfbI\t)Gdv4Hۍ#sDQC kb~(`Rvz9<]td$R2@ ےni E_|agd!)$ ԖEhS- g2lӿ.%#*TSЛH|,bˋۋmyz*6󈽀߳حt BK5^ڑv,5.tޞ!^??KM|?NPJws!V:׃MTY^ڧfk3zGt|e%G͇7K:(\WXe05UG0|wq6c`5Ѿ]'') eٔt%k::kͦ9| D|PeDm2T+Ntbq]ǝ%ڡZiG kq<ǭ-s7YcH)3>nGg}o;:Yy]!|M=TBV3ZpS&Ҙ ?#Ϝ`6Mz9lrV=KXŭ7*,#*pv} q:1 elgS;|t KLX(ߪy͗(EŠ<p =cuz#Iy2YA73ޅM̀K^#U{Zo?O|pX5{鬄UP>?EBMFkG[x<3y̕YDeNC5p|hLp!I 9E oS0#=¼ O| B\?A2Z4ڢF>H'fz Cȣk<᠑)2aCnF)*ߠ UGw -y-=e+ޥ||Yt` {Θ5n":n Lh`c(u}E2}VM3V)Q85!EU+,;c)dm(ucQt-?\f&$ T}Lی.#Z-ԯ-pji Q- j՜$1M*'ڵ ?mB4sP1w6Jt2E Ʌe<+ Cmߥ;N˃4ge~+Ci ;umSN 5SQV"ctٱRaxMeBJF||OyG38_8Gvi3 O}-r^eAXd;"``퐹!X(J#nz.N8HL:b|qqP+TSBRRK): }S{]DF;ÿh|RCam Bk7_o2 VN?bɮ^^ia]I589CB_P!۪ܷUKpN;5d߫/npE)tD U>DؗtT``iV 8w v/TŃhWӲ0FODv~F7VLhLv؈^W)ûc :G0Wԯ)fzpclz?)t1"jK>lEnn_J>λfy+YV!Sc!]ei[:$:1I6w+)ϻ UZ[|3N9xݗ_O7gO(< t`f~3Gt j_窲}"S Q(w'h9nod+(X4ppm}q,~T~h>Tl27 E1fR(lRMeA'+!ߞ=sat4x89TпBB51Nks%c!$/R~aMI%I@&Ґ t>@Ò&j)1l#҃b*0h]XcGxo6n9SQ/+ym.g4ᅆbbWŬ'Utp^BR !5"WZXOE&R/h6)*ӱ.k1 @Dڕ|q.g)_qߑρ8oLZ|Dmβjj OL7Z Wz -mh$g;?bߪ4 "shã6GSl#rģōJ9ܦ,g}/UE"YЅG<Nfej|Zx>AxLEl[[H^v2: /O?b7"o;$-8o >3T#ꪯQ-|Q351 oP_g*4y64h\ ".= TVgp}h?ILED LD?vZA1ƥ]SiيL-#s_x"+Z&#}{B fGYS ٷc&Q"^굟_{Oh 6mӾ3:EIS۹=z1(<>] \k^vM^x_Y&O-_i[f8(\N`Z0^59}Pse- έV_!@!dɯ Bj&Ġ\%[M3_HY[||5051[f+F B0⌒AE5-gǒVKiS/ONXu܉+u6 Fn%҈U[ltI{&>O?TKD EB0yfLswertd4̔[@ܰ :ė8v5@EΨTQ0Q=H}vZbH2(ix*kkn6\:=d«X"m-pR.c8D/Ff\wz6 ˆ9{WR"%.PQ45䍡 O@.xbZ^ Ÿo>qqJw&ɳbNa=]Dӣ/t还j>I~p-_,džX_~OrҌV RŻͩ UF08 _Z[W̽ﲌ?p=g<"A3ܱ}t^&/KQ1O+^x5T^Xi;l&"A=P^rLe3H"e~qø9CJ*d:? 3v4G'z;BC!h`h۫z< w yz6Gʊä).0ipNO^;iz1A@A VQ_z91BA߾^Q_dKۍϷ3Vwb k3#y1,4f܊F36w-xEDShaN ˒?=1B$-f5r[e ܮRˏ;둜7P 1DdVꋹy0A6a}ɶ4j6mJ)g8vObcFޗspF%l{vEws+]ɂB9k JGw_383ٍjg׉^hg{'* ʬԬ*+w:η-GZ.ִn o ְeC0Ɍz[;Co"WyE.i*1Aʜ|"hL'q²& VdMSӷ'z,>?Tq /λP6W#fci^(:Z,oJɸlE^8 ],i[_!S]u<~.' @:s?ePͼeQQM{8#hK/Z%][Y-NSA$ҲnׯiT:\1f;Mmlɿ!Vzn<屶컄f4`/Lo*ʑ?-PJ9Nf\q̼7tc6? @Uw]WgfN#:Hkۀ-㴨mzp-e~ \zy47}> OVRU~(H6@EzWc730(b=7&1ߞ浃6ݍ&#H{atޢeD<+[$V+9K=p% 1eSFgu}L"3Ȉ ްx{N*4CYeF|N0/&TQr2?uexAMR7P=^GLnj;^賮6Ʉ 1AliF 50lP>' bkOg@>|*e6kG cɟ0ˤTRUE1l:wW"ڃrSZ3EcMcҽFΌ.5$ZpT0!enW}3nDp*p$t'.T<^9i2qyޝ`PB? 6N G-(^a!`~pvzN7 0`EĒ Ȋ~-"N;U co2'`{ n 0Fl t,wazӐߗfm?7^__껣%qۭoMny⃎ 6ڬD<ۃ2Nňَ'Z!NtEK"#!7cj/a㨃3Ԯމa*r HnhVjDHBRķ$0qƄ)X7U("AߟZnP~7qssbQ"O][hu|g`fL#u@jƤ16x"tV#Nn+ҬW)S#;5~FMإ|E`lhJ C -EL!~!Xp|nV+zKN]m'eu{dT5b҄,Tכ,W9\"B{}~,7xYE# E.#]sfBFIEİ!4}0\hͫ=' 4>WxӾJSOjCua~CɁ ̠iK4BOB:@QH/tU%u㼏?f|Gz0ّfB*^"QW7 '??to)׃;T@hBj4s@`]2=SW_N2uBʹMZ0 vز"h^äǔa3 `Bk ,\|Zj[0&Oc?qD7 lZyt; Z00”H<+ͷ$FgC/{' yySuY}Fbˎ}\`,<SHYmI5<;bK Ogy"i%#BĿqd'#Gl$wYɪ]WtQBޛY<Թrx4gPiMd9mP<F ѰfWR>SHnv5:S2o]B  C%SI"Xړ-~mϨںhu/V~kȷwsԗeOA`ѬNn-:4qȾ!co=k;R\i#1+dU+YK9 ߫ӃZy]P*NhבOgcEjޣK;"ʃmC"^_X XXm9@ոaP0zg)Kj)3K cUԒd5y~3W qI^4w=9`H^} ŲH@ߛ7~4$Փo*^6L-@WbL9 |ϠhOj} ~Sn* 坥k#fvEt ;;ZqJEUE}(TE"ϦT8Xc{n8Dl7x{?$IHN&hCz0F` *<3q &]F&bgB(/EJ8KX{`pum3(*s9}r1CQeHGu{>Tj C7P=Tï.{y͎6± ` ׎"# $\(''bBw͌Q #'@!y<"J$e|7{֓[xJM,uO:DK5JJ=*#%B}FZ?uɍ;u+$Gd{܀Yq k9NcGJxZrE]׳#H4@r7~Dޫ *G%o1;!~s_\>2t63 5Jbϳ~0\JLG bޫ)?_]Q.oо6T%Z:Vn3WK'siJT1͑|ƹx\E&Tk%' My(r~2Xߴ^+gđ)1#2DBK6iM;1 JEhɯ#^d!ەn\G0弆v+qiJ#;/F9]|ur7mİWXݡ"AFac9q; Ѐ>S2jF}1^ij]%>A7;06$ל< ˃#ZڙF$?îJoYBFpyq8Vv6W}S2}@}|n?QIIL9'ێuCKI0U>,*a$"b]o)y*Uvڟ[OvQIOrX'RY /z|T63ʔlQ}:lKQ@A+T>^_*B۠F#>u Uۗц7DzhXrÿdȲ Pm^K="Mu}Mƪxա7#C!"ogS&l|W(mMEj~G&' N8)bѤ$Ӓꡞ?<~ͥ&GBF'. ΗQ01̸p2CQe dV$i[ցVۄ3}ao0eɿ$t;TCls4o\̶-iYwm#7'_yR彡TAgиa3?R-JՓgBdn쓎7ٳ@4Uޗ62+TzX#vcco6/;`FdnO o-1܁u/Ŋ5#$Z`u\ A*Aj.N'tX?b~k rF8'Yo8Nc׾ά* e ;5ȹPVXL.{Ag*iFm@D nhKϡud=K(-ܭ !0o9 B#'yB5B$HIbPqJ\ \ ^΃Im Sk*l85Uŧ|އ"ÈbR{̻҄Pt>7 L]䬤|yں~=S4 Hx͉'L79&T09&gx^ /#y|2H-O*ԒnR}{̡tCl 2| o‡^s[aN ǨTgz)xfJk TBQuj,&<|ۢsF+Nzp* ^؏0Ђk‹\ZAIjЁFJONP^Bm؎@_sߟri8;םS:8e&5WYسvVPX?^,m6Mlꅩ *:n(`oӲcg՘qlk(d-ԃܤ(e>谦|qO|1IpfMB\"T?m JRu^saO{2~p&6x"` um! IgZIBZ,g¢}P./dṈC۝S E#qLJM:O&0uT:|l`d{IMCƙ=o@k 5*?cq>K4PrHvꡙ٨GQJv|@}nGډ{0Sv* &,,rQ}y|wH*}U  Du&y8YXE{0>ar^p5*1@;'70&'x"! l:;/Ϻ4cQ5nUoz};/r*GQs7g>@>LnP?)=;=٧rVoFA|Ht ,n)NLGAvLACz~7:JU]nf0  [sROגC1\8hhQ:,1=2`QU!+̊L~{'}$4eJXޖfz:|ͭ1ڲ\~K?r:!I{گ#^@M1.\ Zf4^~Sq:Zb<9_QcY7lOȵ3r)H"V50mLw@TRzWw$Mp[Pnv60o}|Z0^YŢ3"2dt !ƴjH63V4.isa5v|B@C88/DPM'U,'}*-2j ϔxm_V$XiZ@~_+Xtq]KiXT.uE._PʿS: 8#sOv`[JiCCI~X=Q)wњJ9=c I|dޖ*p<'RBy35DcDlwPJ-rK})"n38X_@a*"i}GkءXEgI+INpW]M }<)+udvѼImXOroɈY{zeFPDפlr&dG-uϰF:mJ0_»Ѻf%ʼ>n<⻯,~-KQ1G0 [e"'>ț]61|BX{Ln0y%P@H`&wӬEV_}jzjBk"(B7zg]Lo+oCr-'Tޞ6ߝ(S@~'}@wјz@S} *5fu)Q(>Gՠ<e[179%s:uHW<涱:$zԏ40b3G0Z@J,;&ar r:k|-d+S+sU:*EV,ڑ$݁,5Gq6䨼TmۗV|gؾMа۔ ªYB +=ESg<]ټRĨ; -\5w=4aq/ *ʏ^v_iKu[;\-h~-;fy @&s F%c>2-kjܥ>zP膒o48TRcPCNwcM++$v^p4؟\]vl3[D2Rrpj 32zvVEOFSb*Y3㴴"*t;9 ߡ]شj9z+{ *[[Y3q+NLKdTǰNIjO9Tq oǔϞ qCƊ-4/721U?#̈́煓qw>~[`~\q+ 32<̞(E1͍͚VK R3bs^5DœrfzM,RU- O> n.M.,խ2;{δHy#p K9-]p'i( q'71~A1nLy+[@bvʪ㎄F+5̖82wyTJkDHLe}dؒS̱|UI]r+:Y YĻDML:4\l4&D2T*&}(&j4o"2.soJdx{WRQLTPDy!{[c!3"3 C 0(f'pwޚ=pY\gIn Kѧ)'JIVA,ИEnT' K!v)α~brl2,AJ`ܱ͔硌A8.?#mGڭ5qq~>=xeNHyպUujuq8~u+7 ԾItx{dgVJ@[@ c=]!cͻBdMfފAAOb XŒp%%Nx@ 3<bR,1{;8fcUqravi!וX9%T$Jp8&{)"ut TU{Ek) N ~,:$<70oS=]m;|shՑne?s'z !]56NՍ+y9izIt*ڃ=¸RV\5Lhy'Kp(v턗t]ɑu˥jKS?婡=B,ɫy\5.\."Fq5UR%y"-hs"F}NTƤȳcAz`L,E^v?8J˒@kx"\*!0B>x Jmj*O1p(6MV[«+9).$$p$U7$A%6|Q {sVdۨ+@fiw\ͅR.(LHOJCh]S $ f?03y"&XFMJwkAO_d|boXdH w[~ܲj #ƹw}_dp`Ȼq ?b,lpj CHm""&{ԢjJo=׉( LO|#A-FPA-kܞH:xH8uɓ{HҋZ! &HdsY?c\ nL@xު۴ =_ 猱ܫ`JOb Do'J# \)eH~ &҅޲/3]=Hᛖ5/ B7pV1#V,#ۜo6?!ιQoVHp 0+v`R$ee9^:bo1ܞax<68:ֵS*֬EqRԚX- k.Vyvh 溾yRɏ71M@>^K v_ "zfX_fzoJ>Xge΀ta\'ڷI"r C:|TSDKS%cy8ȉ ^,gc4ݼ8;peZZ+Tކ;1Q4Aòa1 OFA冨 @1k5fOjn#HKm8j"_7g7[,ġLJU*, otL\AwQl:r\DawN6 g13GIsB 9(MX1;"L[.1=Ntkf;C܎JbKD9;Zk֞B*DX;^Ve ,cƊ2Ӡz+1c!Mŗ|y [ fp{ &WQL9`BXy|>٠ܶWsD)xnW͞Gz inq1L ; Gmrzڽ&Enߪ&z9űo<Ail!/ڐWϊdV8r`IZt)#q43q2g^/]F`c#T2ݔ @h<)NyEj (Lms!fy8Z\WB'{J (\WDdrn&# s9IGbA"IՈ{|@ iKdj~/b:"?:`fE]`%T7ɵ.BVmSdW t5fhX#xXk?)jb}fne0jEEsUM)H/C)_qv&F& ىTqy!\# YO!|$ӈ_eJss@HXJp֡xd8iml4!?_dgϳWM_cρ>v B= >7 Mݗx!؈W=Cwླr̜NMi]KW DT%)ͼ2B!RaΖ~ 5Ft$h9=.@]6TzSjK7qz4w#ҽPuKcIf6/%Kq;c&qAI:>P>猼Se{Z} \:C5״=#{mR28Ju+ת ~Xz e'b3rE_ GNPx*=hC. ?rM܆@˾hM` 8څ+[ VZJi`*:v.4ժgJύ D"l nC_ִ@ iu(n܍ԄzUx'ʚ{/f_wݘN=w)Q5 = U Xlf2$ a,FU.CӼ8E%yhyW[E}4A钆iDɹW,\ME;ix#F_})-N@0zXџߗ>>/ߌt;G2? oDi&Pg( 뿂T3_ݙ}xF ֠Х֔;}&l?W1[%a}CPt3a3-{_1bw88\ؘ` Si1uWVC ` t &>?nG?T.bۿAJsg%{8HPU7* "whiX}Y "úeB)ABˈ:Lvp-]=DOh[~6x[ZQC7KO}\nǼM@a̙ڬFϧHGWe5۳ en xx]CH6QV˥ !x}oM7F53<# qno:ĸ9ʶ y=-seR1 ?<oh^Rl/ꛚDoc̤G % J6k{"/.ѢM,H\8evŶ=VO&ZVaWn˨U%z&N &U (0':hVM} xe duK^Eٷ=VU5q{(y䃯K*?#ߕznk#h,Mcӳ ުۉ_~C'UvcC4hZ\sˤ* ڈCߧB9c3{h!{`pa B΂]l:V1{a >39wyYWL1 ]A^[]K81E0HϴjAl=c9ԉ@$mGc"@x&em\f$~5_@`-He WBSPٚw|o$[_ϩF4Lh>xꭡ،9FB=9HXXt^xॾJi_bS .`͜ %ܨx\DTx]NrSFl6 3ށOPPRc SPSDSd(3BZ]&!os:7Z- | +ȉ|yke?6x>G$ί}|x%IgXQ=w^[ẹ!7#mD~T|Uq`1[\ip>*OE2&V&V6O-tͳY%h&uE~IZ|+T&"6,r`"eOb{ uBU0Y"^<4]޵Ps*@v>9C/3Yz'vNk p y C. )~aFRp w1و B,OL2n8PA.~ viij/F7e121}H9ImXݷρy5rԩW0Q#p xiciZ,}p"Éԭ1oVpGFC_ @LT(cZtP gX^]'C)VlyR!PfVQno|%P+ƭ~ j(?=X~8 $3h.r&{("qA[BC؏CHmsgU8_h )nGlDaxY%P:2%đ@bsh8bMuEI@+"֜QgNҊ$nnTjf%I}p0 @N80< 1'\{B2%: R艵kkŒuq8:cW|db. QNu=N{:jg ʖ<M `apZה9]0"v遀<<&XH7QD,9 4,?gIeFaC} -2B$[aH<*ҫ}MLjH#t"8 ')$#{MNwlZ|а4u-(t:iZ1v;,/<2;CvC 2k 7Ҝ)㑁 IV [ jCiJL D~܋EstݭלTBD3Zt,*L}=Z`c_FchcއKb߆ਊ,Ntn\8#m^rw{/9}?/ Sr=B;b`{7=ec*{01{G֬C%p MVފQ"@^J@5HɮW٦ )1 jp%cujȑ2i[~69L:Y/sPo*跴݌@lw>k|;aEP$Sڱ1B3O&x˜̏(.ZP'3W?7sIp8c0V&[EQXYN Emwnm 61\e0^*|%͡2sԌ͍WWfc  Q3K2 lR?Z^;̑'I&+6#ET;Xۡn cQ>: i-Ğ[$h$ZFL\`{\ TtL4QS=,¼720>G̨f ^~pk7PE4Y; kɩmX!~rW *mFElzk( '4P4 h51ĖflZ8`,* oUYy@@ږT2P"FˑćbA=\֖{<JE%x/5bo dN5FgLNd7ݐ% =MPb@ѓt{ewvʒ&O&ݓ*[ѫ%qKZ 3u~N=C\5Fk*6. V1C/na6x]lS*Rn8\\gz(6Z{)OH\KH6\wWlHp\ Z\5_S?؅-J2!W 60msȄXnX3W!ᒫ vדIhX݂a0r@:=a> nWWp gmjB1*9 `6Yif&W)Srq:Y\~J`z<##4pw |R0k-czD dq'Eعhc\I j/-noI5,giwTqS(D@h6oj":{j|w7(=:L3>C!1뾚\Ԛ|kEvBn[9ꆘDi+{W 萄ø ] c6M8-7lfu%0Tk~e5unNvE}q~W.,8(Ң$v]#fG}s<%mI&7T1^ IP@C]UgN@Dn 4D-@*+)8a#DG*$ ^vl&(i@m|TjsDQ<qDz1shɎRS;q@j}U>RQ0r^շ¦J)5PMR$T3w#xd̑ɶF#ˇ-Q- *;vb BTK/U՘^tҜpQ:JOhy׿o'ْg0| b Y>WѶs;G`􆽩|e:W}9p={Z¶_ÎR96hD.F(`JTX#Ϊ Dv_@|A !#%K&qM7 uɸ\G`$gKmpJ|fyI6Kz<HJP{ʉ{;Y| JܒH6(Rֵw; ۱%GzU崼ŒkH۶RTЎjJs>)M팄:~\L5<nk]GAHõ6 N${ǖ턙uap{O8}w]Xlfٛ,Ŋn⃈!KhfEζ6 .0bAc﬇/ͻoVH<wjT]F0tjmp$͚륞wĹ>+PO~Ӝozye1>{x]Z]KPC0_8oSb+6q,ѧMC&Ĝ.NS /8L&HsY_Mb\*%Fg`|tqMFRp6xb)"ɳ⫘(cLDY3|?[[/Vo+Lɨ&uTA\Q'%ݧ(.ߌf(ZZjO'M7U{ =AbևM#9ĪK1Vp g{tk7I|~<E! <zU`n2Z9\4%E Gh-ٯ$|Ane@_$=dAjVΩ<8]%{.#/d7 0ba00l%r͗l02kKH+ "u ld$X2yt W}h>cȎ6Hf)32yd-OVT-+!9=ƵYL>#JR9wYkN٤ni۹ ֽZUv5FYdo$UmSƊ7uDw'N8Gh)_\y; ^QNz=@ :M, * Vg7_ pcWɴ Y?cF~R&mjԕ{ٝ KiRѥܝb1iZe܏׿Ռ~4,:SfSnq0hp=ŠO'.;S^LرEM5 }~R[hR)`F ޒ7~+51#h <#d=( yh(DqTzH FON{1~iVrKZYpk1QK~IB,{ȳZXMlt` I*xXW/(>i'+C]a16aq[R[wl"`c/4i3|8aEv8UMMx5fyS~gΜ_L!dh/\D2u"AaHtuҺfsx@%&13RLՇX98Tf)$Ʉd@qݟ̎Ȓ[ZB8oP0>joШ&ĉ.}ȭD,\0E ٽxŽkʶ*igP P+qhxB.!S~]m{1ҤV)zR+Z*5A)Ӟ`NzVnͷh xU)1Qa041y,R%ƓrZKw! +-Fvjt⺎mBNl;O|2]۝mfiJ-ъN{Vnnӓk0my~|y*vH{Hu i|kFW.*_/䅘hc}Mj»\. 0}b S(Va͕`ޯ%o)3R׭IHJxZ$!DjHlZ@gXem釮4qfXfzM\*, :¡$# 2Aj:ɠ8 pEL)BlA :S V> hv}֍||96l?f;{I%eoFRtk6T ?5PtW|Y:słt< ";h1WNζcwWʗ1wYY/,oDibǃӽ>TKY`w"wG>耻#YnuJ{z)LbȑТlj5)~!~G!"}p/ّE( )^7Se ]_SEtq@imo7o/7 `6~R0-CB%cV@[)#%ͣtIstV'oQ?51U(,GI) ] *zy{F[\`{_V'9;1ouG98i 3yܣ!RFO:S9M$<&Ȼ.2;ͳ徭%|#qDrafs늨X$M57Yvxo _ nPZ%K뵂C$|$elB߳Nf \z*^+7cj=-ٳ~f3[2-w4.f̳V#0wA7WjڭkK۰,Yvөs[hؿ퉹.6wh !"/:{|Sc&X@W翭Gs" >޼ERGn 4,_ʞcv _E0AU q"Cn9ѤG."~y!b|@@NMP3Tm2kBmIXy& -p뽞,rq1fOTiw(?{fj!$J Lpps\^"vuO>EꮙuO E'6I:~ybF0 ;$e [[ g&n/'Nǀ߾f]$aTfnDf&l.\'j _аsc+ݩqQ -N{Tl^+5ϼcxzv%=a^DZ曃-sX ߋTFǝ5ݗ6ƸKy5p{@L4|=bB@h޸4-;O|d6Af(lw6TEiٱ5\?^N69_%X4]s_+0_ZzR <U>[z J[Ri)c >kRW^E0<˼ɓߛ\`e&4a)o^W8A'Q8n E#_GG<_.p>+A豙I(?lfݭNgN ¶<6 /<5Hep[__㢓wnaVԃp,*fi_\oӆ(މr0YK~rEenfz%tJ'uPaLt:: k9188g@@z|Cc$9°@~ _dׂu >Ġs)j$'Q%{B`^쀥t#7H 溱2pހ/:7ꝭ)oqP;lviL FQq練߄V _tUU؉ 8foث5cVxe9 BrW|zf\ٚou"?ݖr)詰;[ˉ#ɭTZ;4w'kH-`pbmbIa-=)Iq/: ed'o`pX+4@fʻ)9}k8X/K&U%A`MƚГT\'BWqDSd6hx*I#6ܕZ=ZPJ sgŖe%OY ܙHhp .u~BJlF[lHbL<ք}/RdSv!S"#>W͓A@ /' _/%L" >yDz ڀPISH&c#P(SN wx'%tIp~,1ۇkn)ޥ1!l> {1Djk4όBԵY ډ<ь\lo-9hfJ)JE La6%"[Ķd&Sp@ g܆ǭs8Q,}M,G%\w Np hmђٙ(OȠiQ2l<ƾ"Ht s&U0fX,7#Y>3P 1}$m 5Ԝ#=~'-`310Fڷ2K<bO$uLd(ez'~R=Z"#uБ/42Lk6!7.I_cşC6 KJ)` ]_^B/gױji>sd7}obϪ`H<.h#yi^A©8@Xb$3MP}Et9SdZ@?<$|E?@dsJd:&U}}Ikm,[ƫ㐱A txu"g'=wdqTZ(Hn7bi$&~֐کF!{3ӊۧaLaaCVwtCWKUs \Ѓ3~Z2c,Z75KB{f~B(Sd흼~W0mG)o2FY>!{jw/iE+8kAG{?FRGv:7&}BXB`Uu' lRj`=w37B/1[\yÓ 3->'/,;EMPTbi,c:^̻p,;R;q & 5_6qzq`w ?{|H0_BloH_ߑj?.Bd+KGbL:i:.[Fqk&>\Ċ⬱M,MY  %{h9ht?6j>d.Q(\w}̀3G +f!f!OI|,иrK+|!摋0qS*ґrۈI&C`J$6Ts":YE!eWNܐn%P~bv|YwTV`M=;;6QsR۲? tlw[Oh=32sJ6eUGRymj<]T 2;Aم Jc?Uq.gcZ+iUFÙ!9/DU/e"d|dE-J|O皑n`)'?ۼTc<-klД,h*<$Lq+)3WfB,v,}uQQJ4N*kR 7~KRwTSW-[Ey.Mެ6w=j$mE6bW8m#1#.8N9yAxlK-)we/ 0J"S/-WDu=[zq{*ȽAy.XHNћ[spF㥕G莲m;E/C"CAKwij2@mD)[X&s;ӈ먑έ*u I"0'5l. 8Pt,B鿟SS?Q/VIŮBXPID9އKGګEynon-8*b2iɣδn5~1d!V*0]R>0 rmnf]쩔$Nr] s-?GA(j5ҹĒ~A+VZJ l=%O?XnIrmg(6{B`1!_j|FǏz.?F f/?-WzpMAM"џ\u(\ΪBg+KKbB.HR\ {A*_bDѰbۅ!Jf%"GmW6k6зyW #b<{BI$4~"iaHIy=J[*QP@ŧXݨ8.-% yz0Dx=: ;譣n(t+|j\28iM@tgkbi#8ۯ(a󻀱ʈ,23=<]Ak&)74WQ"wr =R?ΥT:+YS;[ٲ ڽvOQQ+%>dj` AjtJ-Ɩ: )lqg[ #DƲ9|bCǓw\$5/^t] +Zc!s>I∆b gRcx PۺZTTLD #` "”pR.+hfJAT+X`ּߝmGIڱ{}6E9^؞09|*^J 0>Tk*H[&Me-&2\z.]oh3{EҞsm: 8^ =4(Rm: M ǥPaX(#s4T{Zr\ eoJ7;L9$I|b^jDOD]WX$Y%Z>V.4ڛYo1VS:d.tOeG%ܭL|$b\sЩSㇻǜ$1Ww Y"\35Ne2o<~VP`IDߥArMS,Jvl {YB XN>h܌Ap'09$ V<=PO"cl&Ws;<[J U-W2|*h8cv8vufek6beA߱W1[%;ThX\oZ:ݹ(*ˌPJ w ϜY?zM۫P>Kކ/Fq˖:/M1>$D(ijZE)NBT&.!ksBnyW+$&DViwԥSyT+})<AɃq$s ()y?&$|`A}wO؃s)'{Yd_"p. `fm_/Կ^%cp?p%F~R8!ykrR[^5͆U]iq -kj(\V/_h as +eU->`Gbhy10oXf?cBQܴlv-ޯÈo"Ns达#w*ѷ5<_ڵf_^"<9KC/X=D+7x67066e8G5-ua0bmM<@ϟbÐ~S2ꩬ3O5d ֪Ȅ {Q<?IRgpڎ9lҮe-"&#_?m"OU5#HuFXe.Q/)MvE&Iұy&aZsq f&5 )0f4 7AWڭ>3G"}4~Ʃ.➉;)&S;YEliCY -F`6hybAb5Ɉ7'M6/b%H%e6g_x7AjV{h^@gǕF֘btXP%(~s-j o8ZlW V zBqI{wqJbfF㍓tQgD7 y2b`4H N@n8@r JuG?b%՞Lq^3/0dx~GCOdW8C˧tʝ*s Qvku]%8oAk7k˰YBh}jVQ_B%B{s-kLK"vQv Z5N/Z<{BnutO/*Y/-D$+:e^C(4o9,\.*(0Adžϫ$ߑhO U '=4T-RR(}D[f%'a.Ќ ֶA>#_p/i*@[PLBp^>w|ĭd-tm=(я̅)U{]h3A|9e=^*g3aPfn-oJ˰0cOI^Wim3q0wN+~D DGe7 lj(*)Js3LŊߩ'fk6xbݛJӞ$;DM9] [B/j'9tEGb0@DM I "D7O wnN,܍TLyTqLr [LoR^@/ < UdXLjW^TYWBR7d{VUocKyqYݠrݙLl r!q\\!g9(.9]/eYZ1HED9>TWEGf"IS1t#,D\hXUR-{[Yx(z!'`Lwy& ~/"\Unvk \Y/hUG]DkK'9vA#㫴"G}4'duqY-b%-w,4Uk_RMvW~חVB<°=tV́Bk]Ysz{J>x GV&16j,_房"u"c7OL #$Wz{zI+O~9Brpa w/9\K ؼD q}FcHj'xJ/ p VUn炼,VP$N}4IsWݛc@3': I}ovf` o6x iN (ٓ*`GHQb 0 UKPeG=2ֻ(:Er&1 Dh̞Zvc1W'{\u(y؋y`f82 Guw*\&ο2Q/oӕӡ~E"6Sookcąea|TozZr%5#o)K?w,~R (#;i-j7ԭw <iÙCU!̎2ݗzO sz a1)AH}nUJ9jhQc{&Iǰt!fԬ^yZac Lsct鳺I5=n;Ҙ~DL*FɘT19b^`0uS]AȌikҾ |]b=Dsl!-Ip9u2J_:C(4Sp)@sSҟn,Qq-M#*TxD'[6x֑"O%PPW^A<^ [%Zӣk TXbw&) ;N럩Y{fLc?Et$cM%dFYb Zt$1PTj6Bg4ՌCxũޱN`8.|5\v6ӊOAd1]=(N#f?%qip;=aRPpOrdÙ4Ĩg(4 )ʖ%e5 ̽<+ S3XY,heO͑ նk&Yʉl*kVud"u\es\^B5$ᅒ:ȏ:|%Tq^Q {ڬjo#IxS WoF]dn$7g8Zk@bB2HNBɻQd7wMN$s<`otJۺ#6?z^Oᱤ\2YzTP9P) Л$]r{( t!&DW9^/n5u[@552lVc9[G<{n@.Tq'0%َ}Arq݁JP{<_H@p-OӼ.LZV+^4xtxM t~$βA}PHQU"B?7–h*\j> hփV}t&"Ll2И Y6ͬU[%P'9FE,Ԝcዑ0t3d4FP][f*X6y*s UFDm} #3uH!% do<}6Z}^\V5&[G&;:ڋ i௣ XSO,Mb `NyhЂ@-:!|4;{2~6I%Up;/)Æ8|p,c8q29CBYD&[oI>*o ڌ-.^ٮ#8 J([m=[vdF_k&C#˛Z푓G*-8Y͸|tuDU9j2a>h)C]avD-LatTJmɚ5}NO){fUXlaB\Fd~StvhGOM//BS̻v? 7eH!-y0yٟE?Y^+LVL'N7n sCP9Q< ?$ḾF8G2]ܬc"*M0>ET1J5!5pb0"7c}ert!U<|=3F!y>9SgFS5_j0O6-8X/8y{"Du"JA() H;~_wgMtﶃ,45%z %x7?„= XPtu⹠lj@#Iiv)ZX#F'=aStCɣl6uũǶui$XCnaPx.I 7d +T/q/SAnM]\q5 CEB/|f?29vqK=Gt2k܄'^q uE QdylFaMy d?f n#9CӎB "nk$dQ'YZP#~L: ng36Ĕl ucugx O4dlvQ* WS|<ۓ䉶Kݳm|&fQ--œZ=O_-gb֫`OU&/aʗέoۙUmD/?$5 &.+ 1)V^:YpVGd⺎X~p.čU=OYHΤMK+>9 qUq;Blg䢂cpE<m;.r'鉺Ehb̗; |)Y@wx䶉(~(/~a>%GP>VV]*TTW4 hd,oY!Fc_/t -/~[qn_;Zt pV mh@,oc舦 Z#(f]b(A?\ɬ=&mS?`r^!!٘ہEI B|r\Q#kb ]/χjownxvUL%qwˁ+}B7Fw6()晴In{}Wh2\,^r)@1+'B1=9ْqR@ D `%;Xr\bq~-:d ,;œDm`p;+u"zǧk#{!:-Ze1Yhitq {h[MrP sġ׈vU7@Wrk:W3wȊ(# M'`mI΁MTb*X /.àf')aJ6fҠ`9s1.:qeW@@>//?(^.-l5)EY6X?qރp, Ij}D)=xř29mNitR ?`G@ϟ$܄,.ɺZ'zb}'@)\,' VäN §?3(@c\'u8ytjONyPU}$ߌ3>޴A7gyYnʒvZh56:'e2֫Z2^S. ~*{[p[ڝGk'Yֳh gdo4|'B@O+*D~1Qif\SN)M&ƫ|a՛$o0O^wST `J2)D%T!$iŽ|܂Aؽ55,KB52y1IHǫ WiKI2Z eʇ(qlBWUu;/+= &@><%O!5qvZoQF3_jfՅ N9,#(,s\eR۱\Q?hƲ?e0YH"|&IxkSң攂V5Hqh g ^tT&׆WloZ K̲ozl kAiӻ#TZ'G3X\Y٫ M٭7^ Dp3DL Qx.4NmP&ݽϟ,'/n:v*Qyi(KM->lޫqdA3FӵHU"wk5=T:|gӆO䉠uT!JFXwq^UXgʺ bCv0l?ě"krN-|7pC -ҹWy ,[E|\yɓ+[  uÄYuodGk+T ZVwZEsP}0&mO޵W[*7ݿ-hR)BJ®{EasSl^|vX ?c+ {J`|T-NQsYb\ UA--c[3čzL`Ya;Y=9MAz@ u觙SH?lg/_ʕ:n <㿩Q9o -kTl"VM0 B õO(5Cޱ ]o("NeQ:(9R~ a&>I]ЅXť;fA=)GX{i"ia@ՙBK+3Db0< ݻ͆Z lgT"K M+n>K plPNwTmD|"]}AيpXuRo;xDZqR^ag@!B>~)-JJ9\THg:;O'J8t ^T)w567ߝWy<N m]ћ [nLRDLsibŴ90JiT@IϟOZ|ܛzpG\)イZu<'0Sfٮbr/r˅+0dp 3Q@Cէnqvo>{y +Tfˁ;!f-XHoĤ(n 4Rx8;F3 Ă~/T5PpF? 4!E$@~mP.D jYz$IaQ U~݃ 5dR̊/knlEFP(kl6L)֥Gi&VG.I!uǻ-;# *t ɬn:)MIj#~k :8Ħ@)qӸ^;r֗Ì/wW9U*BwxT\Wty:$GB&Zpx}D쾊&N#ytʊ$Hja=&k@|C/Q 3`'?wcRoFϥվS8lxS}v o,rُ+{(|0 #| =,+9g{f漄6VXA=r;%x6Wnk2*vY/pxq&E=G\b.!KC-1j""[Qr8$pی%Ss[~kE!ߍ)+i0oTd_9Ƶ92 P1W燹&l_5zLfpQ^[UW"w{Eq8>.y|0ѱ)I6GGdUBFNDsz"֛xsdDwԜЀsx~a-Wzp}j`?wzOacpʥw#hTR6%"6i} 2[ /Y*D$O ;pZ*u%*bZdOr/][_OVБ1bW'f'p̶ }"#N"@nx`i{Uۇb1V';4`pFTӖP8$iա/b'W RΥSAj:Tq+%)Yv_LMY;WEߘV?PyX>- ܁Z$3f޳Se)؆x-^i{Ts1;>мj,%%p)uB R̍i H0)8M7kΓrW-u e?\>0̋2g#K0s*e d|Jz5iX^PgCcAi END҂# pS»юV+9OGk-Xvm0zXInH@e/_syIٴF Ci]PEě'Ao1aΤf*.&r, %ۿ=|%a8Ϲؕ"t|_*0WP au*zcXpPz0æ*gwsˁz57RFѡ L-K.Z25Hk|?p u/];w.{+ zl&MPn[J:6% 9V.ao+kմT٭˓ۦ~ZO椖3@>j| vo$u(}'tiz1O. %U@W8i 3V5תwdѸ-#鑖3J_41+4h (bj-GYCP=2 αtt74@o ޖd/@w/z"&hiw]m:!W:z*|Tsߎ u75 yi [MD)qU'wL 6* ^\lCp(ʒMOGvk!~T"U_ rBJ^ %N6h'VYZ X> TL f6iI798ҋd)Bj(&it(w?i."K" D|ASØ> ^ c19&FjيJ1j?_SKa^Ai,RC{/9g:0fLPxلoCоr(9{hvH8.>TCV:Е9 2x 9aqx8J>*z>vDOS;fyōƒJ4ȣ?ޠӪXYVkH~)5 cvPf'cZB4&P0h ^Yhts RP8W?HzsKvq>~dC ]"Q$]lc1zr,1C z.f#Ϊ(\muFv^l• @prZݟR+8`jbҼup( -,P՚aAmva|e@Ӷl"_Ӻc/9_.@(FWsWzGV\ c<3(&A,.ھ+fNm!363^ߜu.Жƒ$bM,́ka<_Ȣa) ? \j2STEEDh{dQ|KյM+g[dN0orVb=ZH}:-`]jEd*72i_mh,%/~b@O:$jW3+Aѣ%2p]&DVw!YVE(tQGkf@s>O ϡ_ہ!cȔ ,I_Z8ܜ_g6AOFRenPfSx^+&ĘE.3&͜ʗ͆GZ g҉XtB6iJ`|{.2\nWϏ^6ȝxO||1޶Ɲ??Q "bz^L5T%ͱުYno2e,^ Gn)c܆*XC4fl*v?)U(8.xwJ:0t|| JN* 0* Z>*lx{D W[k:jaP %p] e7YbsL,dqk(xlP? *J.үHod~Be &C霔 X@ ðxà u'\{AWsKqag'G"?_N6P(]i6k\j} F:Yl'su ؐbK.T1%fe;T=n]M5g鼌l?#Xa#aT$5:ӂ!I =hTSNNW?KՐTŴ$[ٗFGWX3V_-iX-()_>+/L 5\h8c}>czW zTlr(U:Že.1H@}/;lY7%adAM~N=8vؓ],VZߵȗjy<v0N~kj)Czd)SCJb˴% *0lDYU,UoO#vh%PS{}xOXrb 6K`5Z;j nQ dND!hcA]6x7ϹBu|7/b(wF/7)6:"j8JG>R'@!RHg- V1q s-vD2VU(i1qgS#ZvF)Y6u/C!}/I{+Id',2XP2fg@{tt(5r4Vv_yڿPJV$l_qF 'i R~|fpX+Ԩ_u+gBi)5V8W&0 b[C?$~@2 on2DP@$ {S6?-ރ[q+nx傇 9ɽVc:p7[A|(2:E(iDٞCfn#sU_.sK5]0xS5u4 %2+s=`G5f9rJKy3Jwha#h$t5Z\?)t6,tGJ l<ȋM$,\KԈ̮PȂxeqʯv*;Nę2X7{HQ_5L;6XYud'S÷͔ڭpq4%q|(je<,ܟZ*q=N(OcdZYcXߦu4TmV/&{X,DǸ#N#gUMyR$$4.f5_LV-Ibjh @Fs{pB_1Z ^Fl5⿉e9})YR<J2]x5A4s-K?W w>k~ȷ/WEñi-v;N=Ǯ,/Eo} bE]sЕU4ZL0"UW֏W#}pẉ/h=&2&H}:@mW1Ol"R.?iq4"ħԋ7n]]aӖ*wl[=5ɿ1PHu O1Edq{ۻ55XN4 >jYi%' ̞rd%-~'՟/M!SA j:5-1jPR *_!%-(":Piu>cϢn'l tOgiMꦷ7rUē њ ,`lS_q/fDu fp!K,+ٲ|L WJZv6y?ō qUXUXaQKRaEʈ$?ϫ|X|ZHoV"lqelXl{~5k0zڿ8aM HpP`9# BTS%lcLltz套*TA~&"K C`Sʂ#I"מ 9)O(^mqRxs~NfD%ԗ/ѳ܏4۝W1/Uxok̯ثJp`AMĜ<9!˶ُ ?kwX_m$2_õc-y6+uDҵplz_It‡:Lqb9*PAf1P~ W{(Ye _\\Be/\vU<8l}%qdpr`@ -tTUhu!,SF?Zw93z:v6.RnuDtjkRo4(0& X`}L1Qϊeȩ3AZ$7Jպ{2jn;h-}&heK\'SÉ5PUX08ɽt w*8㰿6J'/w Zg0{~3PV_w=0Ij*%}hGzvAb|?aoxBuTx89icltt1Bܑ!tI#F]I$*ACIXt&~c|EH%|@>n;=2=ܨ5Tm [,=|.MjY Lk<%G;sa^[I_}#zV{/B\N7!)oT̟1vΌE*kJ2^ -)0j-<>uR-. #uh!E v ir](_&L H+)z3*.U#6;yGKsADEP$;=UBxz%eKh$>5tXh&yF1 $[=0e|&eڴ,bڡd'$ۍꆛ@]Ka˭YMI!ac3ΫwxGa-jc g-Zg"଼xx:4`e`}&\CI!$5{:7 ʰ&Xn,:Y*uȳaK.2:q gL/+ sx ]x+Lk~k,3}E T;?hzf(h4/>i6iݑCkkWkgo@81Q4BcTR'NZJ+*@ʃr,3E,ӈlp:#IDW|T Y}5S}]%eq_ FFU Rgɑm6P!Y51c&d ݦo,*(ӅF⣉ bz޴x7,JLVQ隩XX{S3 o?#}˽aCy>Xiik|x>- ԍMǻs}h餔wcZGڪB6TdY4[Lts2)]-O֛M[fC=RyHCq<;6Ȧ1( ^tWwz$6ԭ*nI 7:@rdÅ`Tr)ojrw2K%;Ιh zD&!)\NݫP-5M# ] KE[`a̮sMp.ג?>/F冾v'0ׇw4[O  *c`BXO+bAcwAJ"U3Y7#8gڶ{7V;"^8W.M\X|ڻ(RI'߼\PӸg$V3Ω mevႠD@w5_qH*y?UcI x$-VnpnMuhCqv!3*򕒩#M-&J}&1]{ycuh a}X=R ZIC1 `M-$C]8$a >׻<0Lۿ}Ss2➩gA>A%8G> L7l*:AvvV@]y C!&HMJ>+LP<3KcQK/#V+J/]myW|$ ^rdBl3l,n%hA̖ƃ}[C Kc>ɗ-TS6'dž s@ mVʧYa',Cn}1 nL"c,V/1 %\@V԰Les  ׻7^{7>g]= PMD;aaa* ԌÊk0&!=GtEtJ Q1ՍwLLߗGU1C2d`%$@It#ڠѳ}CE,4.DVI:U$$NRk='7FWi21|k֠Ͽ{)&qvvxQ!΋ǰ_7[YRva`KJMX^\c1"8Zk-%( ։\kHY;tUXn)t TYcvEHMȉvcDŽP`;~h@ i ;5p ӎ`+պ7\U?2<4Uu*qB=#gO' t;jFq()1Cz#;g/5|g!&dQKcA?1ژ3k)tܠ_.ZpM6n..>iNg4'qLy8=aVwbڼ i6?\X,呕sMxHQ <(&=؁9c2Bi hԽ8+G)wٰWxLЋzK}gPfEMCL>O*6Q!8%rBv*$g8V(s6]!'8Utf혆6r4##1*!ڤF8Š#WjX>M.A+j)zʅ~5fZcN*S9R^+shQobݗHSWFvn-? cTsXJŒفK\̾78qnU.Ƀ/'>zsGU`^%J^UQ_q{CG)}ԎbrתHV>1", jf[Wm:I ϙЩԒ#0]d0fyĘ{0B{/Ah77^hU3-Kn (9[o GVӔXvo|D/]1g=v9x8T*)޶&cc 0KqN@m`ϴ>#ukgaPs @HtG.)g}ʝxMR ٌu89{5i@F -K,Næ AڨX#%Ԓa2Ms Tfr'1v?tu1آBB#<]Y[[mX<t߁ ';,CԽzec_^֑]uch$D[~QdN2j9r9858[5qFRG}-̵34 k?͒gUķE`@Lߠ:xT qQd) e@l`e:<7'dǒn}8"Тz a7"',@qA(pR"wJgRYR>5cĢ_շ˨/N'N^UW~6AXѦox@ (~WoɫW)4UJP_̮[py3`W}i Mb5^o+h"Sj>Y*K$c0Q!mPh7~ t~#Sx{3(9E\‹ߎ- WY:|壮3{bVw /Y\h @Xd"$N;z\h@ÇΑ)?#q;C}K>ӼH( 55~5HD#E3VzJ=Dk3wX.VL73mOtڵ5S2^қrSK:&g֬4g}E 8SHe,mpuyJٝ[23,NN [[^&s.%Jb%!n6Uό^:b ]vUTt*TEOիW^'ʹMфTl\&n|K{OLn4r&(ӯET[b9mJ[QF@l>0qw +m1m+h~͊_6p*v9X'b"-rR+]5:%eaq8Ɉ(bR>ܑ )%O?Ym?Vil߉穳0!˗'{6i e&k;}Q1&wOmhg;U=V -!d&PXaԬY^ CtsNqTU0\AEYroJOuT!*Y-6Y /C8ccSPsPȖjs2TJj<X"q8]=M +^#:0҆Ǵ3OP>AWW!DZgqGYbO+H6@=OJNy-.Y=3r~72ڢ8EϚPZ=zqC,IҒ@ʼN}z3:4|{9[/Fs@&L(H$t:+kg?)~ڐ4Ndp#Lk<+[i -OʺJewWe ) gi VEo($҅2:t:l-k#Lk̋ Oxڇ穪 fWgգHR Q{UO"yՋ~:FrnC'hh=G*JP`7|H<j  >޿Fpb̙f ~#zgv~,Ա@$^O@ (^61AdE^{&[7 I;ASl߅Ӛ'4>wKߥ-x-aaQզ3:7'@j/\}IE? o?E]Db* =peTMWjGr7)@@k pZj Cun>.y$~ vxs 0s#d [);z{f/4xCk=ígP}key_4\6݈[{ҝ<އxD_Lu! (;6 B-nI=O:o$QƞF ׂhȝ!ec1P@[8:}퀾%fe+ڿ,FlE>qa/zvkQk\8T0,(9$Q/aYǿH6#"52 ?j=k5̕Œ5NqE4QIo6j9:T^ {WIyun=FJhMBm ȤtdtNI\&{ "ݝhlOifgU4 :gpvw=b;V :yr u>CfֶY X=hBL1j6(Z_; C2NBs^t̯NGVJ*{.MyKRrh那qc GNH]$2 }!4 0\}GdTO !@R1-zH+ 4@3h5+h(_i!PI0lL: Ҳ}9cbs%~3@t8|<2>a-{|1kzyJ=JJ5xv{HMγ7Lg>_Aw5%e8֡#ئ!VsXD6kݵ[ACC1-p UNmI&E#Oըو"kg 7p.2GcOt}{XB/x"q ~H~4E\ӊ(џ$v@R]öд~nkwnB7|6FVeN#`~"Pj:=7<2^^O \X2e<bl ~v<:.lG=q0%9{ϗ: r9!LB(ƈ5ig2rFR~4 z{(r\i17+ - eޢeꪰ%@p3'DrP2\/[)C7SAJ @\r{T zq5/J&цxlSICjkBBG}MvyA_ pEsVo۲Ȥh/ {'}sWYDbKo6^)c\rrrx1ǝ>ծ 5W6mds!l(}cV 4CHHZ&*K5Q g4Osӯ8bޙEa3 _lε6<mL*XdXEۭ7>5VD Ԭ;o4s#9/9WbPIѳǙT90-I@M7F`c~䄵a7DD*b ~]YN 3^cF-, 3)GUɒ3aWpb%:.:RQ\a|lx)f|4y|sm<\ůxl>jƷ]$v圫t^^[j%#E( ʻ?Յ$cG,֞ȕ&U#| lm{~&tOs/lqxJ|JT\[$q3mBL -a b;=Wa)I" }jڞ;A:6+4ߵ"DS $F#9ȳ];&:_8Q TC2bF|ݤx+uceS#eZoJ'?J0dq=ʍWRY HOt˓I 8;A6Yo4 gaoDn|[A n%i@wD[j,IHEn_ ^C_ޚ3\S>`.%G35ز:M_ $DJYٻK$(y<7כML_s"q^#Ta*3{RkYGnj73HU| _M/^Z*>x\{8 ps: inΟ:W ۪d:*#БC}pԯ28S2" ATUllpF`e]Nq8q2 VYH z &ձ&tJ]H/aWۧ7tfuZkȠ\CT܈UV̲N|NLaGǖ3υ+vR;1G~ЬAx=;kf}K%&-OCM$fv$L!T-{].~`7 :Q:yqmڴwvo1;"$,ajkHyȳ[4r%_sM `O\LQT^!P ^`bƘXkc쎚 ]ԕ3RRߤ'ͨj$7?n4c UE%|cfS$5g{~Z [sy%iݹv2Y?;Wr ݈4$k|{@_ƛЧIwmm%oW PI|5~3e>7ϿU\(}Oj[j}X_cCzoMCH=if/2@wmO}h"ԝdj;jvkC>tʩ^&V_\o6$kPWγajp:TӚSR&>TpvتpnK/QBOh`N8(hG$}~] u4z~t&Q|V&1}t\CsA}G7-̢-1Cz=B F $XR[9<)2¦)ta:o#0HfPqE/k~ї1n$"?1uGILL/J8Y]?I=?]hbTK9+ ̫OGb X6*€ 9-vȤ^F):,l]Q3}*4mD#`.9Yw\dUCb53#&.()%wjaRoTT,4CGچYWI:!=UMf91 VW0VD'PE2ÃN38*XFy;ՉXNXO<Ѓ;_yGdiNx޸lP,BncԿRO6wtQzi/%:WvqBWkM <NN: ć[20XOVVy]Q t;tc#QB[JcX6AH<&PH{ј&3LvX5AFY]0Dq-vU^EoOS!_NzJq@YL vބ]V  ူ@Ű C3R[u}/鈜y5ࢭd̀Ŀ$wАvEٻ'4}ң666^>:RNí[$h k@0$isLj@0z(\#u/B V%pZ243}Cخ=q ̛x93K+&=ԆJUv.ֶ|z%+Ed45!ň wC iR|7=g!' }kt5:H,e=%x6Qxm0yt1{JϢ59 އ->Ծ,&jHN2(=`m{d |ql5/zy§UP;SrZK6 .5*2lAM}.MЄ4QLoCg?Geb _0wاl :q拂E?Lno׈B$\;eL 8 1rްk'5(!wI5tKȾKȟ~)Zo}=ʦ8Q|!?a)]K.k|XudW(OT…x?0Y=sM*k܏M%uتZ@bL~8H Mf]/XesM&ڡ!Cr q'6i=4>F@]_@]wn #h5wC!Kt>Cݢfj1Σm2tbKX. G^iER>ѪSMՖ*J0 ^N4/3E`|s<#I%/i*8 'g454`:M0-Oe ).h~<sA["k\ 69#J]Bm"(\PUAuo"<߄4;O`a >ƣ:Z]ԃkϏI]m|;~E("zÎ+[XVbFn5g|h|!M ,>3%rf+By#d3RanH2h8AЪOb %3܃ܫJH'za:mBlFta\jcYLgW:k/i#AuhdA?vygKM8"ߥRR@}r_*Sp[+;j @VaS e*ߗ 8X+31J;0% w䬁U-WJ^uպg(߸-T_(YWTtx 92Ƶ!jůpAuzuɪ; JJǒOI6 gâ,zV]TE偎l hq-b@ ԺݍsP -kLW"R]?0?g%8f=^z,J=ˤrVk#a 7bؤ\.Wg\{V^ U:D*P˟H1 DM"}:TdݳҢ\{){Q-Qï7J(rԈo M&5U6=.D4,=Ϛ#cK8K蔈Rgm0MKmC<p8NGݍ '[JA)("ջ/7P&L}U]3L|C=a&d *ݵ(Qz*3.q$OZ9TVVGjQ@0`)֒O6X-͢aRq\QvNJ9,[Cv/1AɫǰhqRН7()E{/3"K;\8bN餥KAĺLp0PV_6h+)]fS'Xس&;iyh`Ï_vj.6Tm1M/MIbsZՍ o-)~qK_ݴyx9m|BoTePUn_ڞWNT 8RFWU6%wBl 7}~i^GU^QW .{1Wԉ쑱Dno#5D V;@nLC&Ϣ/'`)e-iR@a-L.Gèl[JLi&:ש`:zFܭE.6x1h9wIe,Z,Pz[o ylaFm44 ܡt#p#OS۽ ]dZuYTfԁ>2ɜ^|K=2[_%x 2U-Ŋh6sH/DCeOCw+Ĝokn6 ,K?6I4NYi1 )w>@Kp$@1ߨ6[L>(g )iϳI.^dޟ!ذhJ;'k 7L`!(>xȂ6 a<5u]fƤ)ZY!Cdp*sJL;,.l\P"xH/sh3/27A@Q<9Gt|'&Xardzo:M {[Ϯh鹇=d0H3fwI|V (IY 3 09-'܂1nwgͦvy5;C--ֶ]P2c|K:KʉYmn(԰/>~(# zi/f+dJ+_g q)ڒBA_HhC7&i[ބ⥈`mn&mK-CeWV@7I-`Hv]5jf P!007Νc,ȴLC_քv!>Vs;54@*,N{ #3j O᫚IW=L*ִ0 l]zBRsȼ^M (7u%jzJ0Z7XBC8i[!O}a=eK6gtB9rK<8cs[D{S,?p6w; W)ץכGXdAi׼'37+l3A;#W 4yH{eE0Կ*|BRò."W6@"ٯf8!hKɊYF ̰!Ώ u(M5dcƉQezgZt28zR.Xb^&BK; ~1ÈބʹD<4!d8HY#Ӊ#pFitNǛNeO,ZLQ;`Ywŏ6x U{wT xu߰۸Y. XH~e;fhtEdl> CKj03HE"s w@mT%5OVGyS8L]a{ߤ(P$Y ̆O8_0w-b3/E$&%rX֪9KҀ~Ecg3;3oU- @lHytP%M1a%ΩJeTIJ)X]rɔ7#U4\c\҆+ĎP#}gd:.+(_<4u WC4j mή[7 &550q"}@m  OouMa?%wn)ic?=LW+$+˯q=`yNmЩBY#(+F2Be Ki6X2DIg}plgBVteϜqrS]50x+\q fHd O.-6q钝a8:)3FOZCMJJv̿_mn}@05a 餄)j ajxN<[m:or ZĆF> !%+dcU_ۮҚU:2ՉP켂"yD@/fO -ʗؐOV֑l!W3Xh3}H]h K3jdZZgB6L=u xJ`{hBbYqմj'u'=K>?{Pf/EW/ҊɀX!0%"0tB ˂{_eE 3@r.Ź"WM  5c VI"w^A\+aFMʗ" 3!Kze!d`?<ğ Dg26;?i-6l6&+JLI]0Z!!%|&P +%F3 I悔qC?kzcu&<:.x#?#=2Q7.8 H)'E+a1m $ڽIzФ[0Aކ˄k5h1 W8Lƒ<+ 0`RZ*wI1*1B#u6L=n2:TT/"1{+='7ؙfW E⮲ADTS%EU8[3r@l$(sBD61sKK,hmL 9%Sªl&2\U0a"z<)[ONv UB: g|CDrXp:ЀYn,LcFsO)o;' *cl֘i!G_9ɇͶ %&a{n*tƾ@ XHNWOz2"1 H7yg"ɀv5{G=⓺1lǹz%44UQ^/O%b8MAM_}jX{?p枢pϹfrĩ70g S_Q&mѽіI"9klR:c: Durz$*BS ! /TOt`dlb.Lۄ![.gĔ1897ø&*|vs[cE4w|kѯq8<#,xX?&J{>S0C|9,bEmbXĤInBWްA.8SZ.‘5dx<81|: ޑӆ UF.& 5G xn>~sɣ0I=Fْw(xy;JuuVT}gȧׁ/@IHQЀcuwq{f0`Ω(ےgUWȞw*ՔbC`O۹OF¶^)fOrx2ti6 n|)/*'c}JFTt )~l'F dJY-y8Jg@)4ˑtzJnzA`>^f葬W <33'eR06͟K2 JUٷQn"lt$I|+/9Y\L#f8k_ĞKYa:-6TSbEe &#pu0D-{Gp&B7 j3yJ?fʏlŭTovr]L/kίAYLa}^Y)E+6zh7'MdT#@(##0/i O.V嘥*?<JqW׷7!V:[ sia߆A$ޚӫGsr?'IՊPL~1)l҅}g2y`4nR % lU fiš@'r+\Z +U;\F3 @N s(K1] ݐ× >O"n)W:+D'^g]ʽ0T(Iaf=0lLbYΨy\]ͬ -ԑ"Zq̥oBL(_h[d}(T~@pFr7gΥ:а8sxUeQ* Rp^N Uev4*^ɂ`]K񕶽sϩ@*n;Զp*#?TǓiݚpsjV7`uԎihLS``.qULsvd[e%Ǘc6Ш_#p?%2VL'.͟sqΌ)1Tv] 8 Eo0sΓvwtN O̜C\Xar0*Wt}[{q(c ]L.ґIQW i6XczUp7„q kO5_;K y߆C+-ɼR'! ڏnVFU)p dzIMMy3;,祎@aFMtnB1NËh ^71nΒ>Qf˭`nxRk#PAIƋG1faq:Rpʜþv{bMvjV7I4 Bv/)H%EaɁҭJV38umFZOckz <(;1lta;Uu LgHY:eeL.qql>n$6O[VZr (ppm$+Y%6}lgrK[kl:S}?^ɷv!Ʉ|dǰb@k))Pr?j 3W/ۄ G?PCR~t@B{ǬoLVP}"  ]R/2 6{t3TgoeWQh&UYA2.o㍣C?+zRvֿ헍1E0tY䐤пmY\,DöZk ޱR:R9y2òaU6&j x2'P>^*wyn9"o|P"FrӼdגq-Hӭ(Qts`D6smc kA'F9uLmds=ah-uf 殹b$tJߋϯcou}2Ay jƆtAD#p% AT\5K MDTK$K\4[t\kZ %vȣVbnhķ$r?GDlt"h%)hYZ?*I<k?Ժ~` pM:\$wZ+ʟ{Nܣw.m?!/fI5EA"]p:$[cWնB-9tO(sd 5 jTS*%x=AÊc4k`s5&XS%'xcpTk@ޝߩ:S=>nuaB*IH=j-Am PM:qw(TXa7H&sK/bwU ]XYOnPF_&RBUN$.Xss.dlW+Nv<}R+#)J6>~ͺvLGU?cҋQW`: h,UQ|0Aレ ߢ٭HP#^5X/ {8f_Jghd08uGbsmB܀6KO*;m:"dQy ^(ǜA@e<12&;݊ Rnu2U('!d+>@y(XHDt4M`?'Qm}li: F^$TP{gLBZ~ڳxiJb`&C^a#B(xaZ yC{o'}5[TҊkR@Nr!7(V"foDL%3P.(ZҞm?Hf $`-nd浲u //ZĦ+"=GrvF˱@NI4^!Sd&֦pa8iH 09(em*\vי~%=0?S.'4ǫ^2 U fLY7iܻL}[#NeA6wّ%j~{Ƣ v/3;U \#$" -? ER7;Is,]]p?FeM!AHLNM~F&SZ"*F׵ `Rb:) n FKgK=L&ܚ?VoqZhnGAr  uep?b!_nڷ^E(yz/8^XH(A?y?٪unI'e(ZK 6 cϣ SjޣV%F+Rp9W Z|1ma +-֘[V?l_y14t~\ȆtĻpb|\:Sr>B)VaZƅ"Ҥ-9(LUL rMEdF3>aHVLJ|'9b.vZ?}Uvf4l{H3qzJ*yRw:oA ʽ.% "Nd$2"G֛c(+ )kA2X 9~d#DHfſzys\ HZTdK% 냖CSaًn@sbI82O=d3PEqꠟVi]gryNpmT"zߠ@ Xh.i\ds7.[Ϥ48im`'1F*a\`J ©\JD}z)2UfA<@?Hp9yGؾX~#v'D 6Ø]ivM^S]_ Q^BhFj|b0JCyk2p \x Dz6C)!SЍåm_#X06;Q]8-I4dzSXNAUSQ<ukܿ̿}^)8h5^PCm"Rd, !-B]ѝmi\.f"26Ki"Qַ%jGFȥ*tqtgq%)IefWaIN~+u֭q#DccK cidl<FVb&w"Ŀ7!Ӱ8f8Hr}?oXc1H/W!ɻCe1ؔcӇGHd*'W;3]duL>p /A2Gw9IN٧~6ʰN|3c"({&%s<c~g<PH3~g Yahw.e8ar coVy嗈7~Y<1ץ-0N '9U#z>Ipn-C~|BhOQWAZU:X 1~0`}8͗Ě:G @RGd&La"~߉U{$#]@rI -~]rivb6"6|:2do.Uh F-W9hwY7%鐴Tv0o5*#$6+Xb#9)I?rn[u(}J6EwZ QY89ʇwiW]-^')S更k NDVDXRyD$֣Ѻ`뎿^vW;[ A] S܅t^⠑r&L•+4m /Sޤ9ͱ0k򷱱l\:Xeh?ea"1|תq~}uӠWv'7 .&yb@jca <%8Mn?]R0nE PcV *ych\-gVhQgx\7guTwi^̷sVQiDcjJuq .[Fw,"g_v4QTivmxҏ1 *Q`,6yr'd^'c9oYQ v)qM ȷTvoEoF ^;'ɳN}~/R:] b@bD<sRjw%=]X6 M%xi4B"|ihc1w3}? 9InD56g!F`-(_xs‘qو5fG"CE~dGƙ%[!= Ngފ7QLNr;&Tz 9M^ oDŐ1NeG D]:MK A3hj&6ɉ_Q<*Ta,{8D71(qa}}X[^:8lskA=V-z[nl;r9gyQC;r$]Ol(rƪ˩A#*W Gfg[X]*2n_Jx;+Kx([ۅ JJ@ Ԙ/nD8P"͏H#!ƒn`ۂ K8 */y/߄,"Eut`uOb:k%G$1rR2=>3 8M":(Y+[yxP_M-ʔ;@7]+b_%)Lױ^ur~.tJ: i}m>Y$b>71w+Ǫ 盄ֳWo;.;ھ1d3܀ z9hҊy u bUkEweie$M(RibKFcij v5= &yyyt-5~FJ@|ADetHu8N4f+AAIwQhyX:| =05_&)uZ=M8 )[$2a$Y>zvq.-Omm*ID8ܲzeP9p7 4ϡ\Cj2m?rk̡H`i[o,_^*ͭQf:o=a\Z̩G-vw+ZI胟f=!KKXfX-4MX7ERH(*o O8SZ0bq=Xp 4 # /PZ^J(DYsvOcd= &ZIgǒrkMUp@+]D> ֤QGT^iq] )O õ|W~8'k^cbOS M No6/5zo>L͌ +ҠY>U2Xt2AbHL_z F-@zLN"AN\Zi01K|+XMN6^k5 R>#ECVL(piLkx`F NJQ?վ쌐z(lw#d[j&U"7/YppȖ^ U>e Ns'&u1 "ug&o;0r5wq>dyuxgGq/. WlbGlzIXqяX Yvߔ1T*՝> ^&|ϕS{R~NUGC̮Gݸ(AG ^h! <( @F/sCsg_ 2dqJaK'PhCX4ISOmZ:yXXK65_E9qZ8T%^s r3Jc\uI,Omye#&>p9clcP Z衞賞. /E^:D!+,qL0eK%vŕ00\QNP̻!c/,5&*UlJp #9+W9M09̆ :|dWyZISTW@&KmOapjS 漘3>{BԎ Q$~4vOz 吊fX"?&faɠ J,k8MYD10WjjQjeGۯ\&SC #T]鬶lZE=Ni~bX"6AoO@<ɣ`]Js52|'V&62UZ!CWsZt ِ;gŻ_2˟'ӯ H)KM_*JDbÇـ6GcnƄ#1S#?T~ crȪ8j!E0:BڛmJot%rTKDx<"J $"2?m LD =;qTxd=-^jE;Toթs{0 .ְځ$ e,i=*nXۍ_LQZyH5"\'\^23 gX+T[NZB7-SՎWUT2tz)2В$M( z=18GSS*xv+gUAN PD w5|7dZAV:092)NA 8 :(~xc w_#&4آcUq%&̎)ͣʰD9CءnR}~z!sP{cz #~e @)}DOk6:Q7˯ nF"Ns5ުzPW>ZBmt N 8qQr-Ϩݥ p+zUa\E+_ nr޼t{GLk6a\OB;-#ڪ?M1Bnύ@W`3>N)0PMaC%9b9[l>R&8@EU#1΂ hN!D`QD sMGyK,_مrsE#Hgnpd^yn pN΄l*}L~,N6z tݧ_q[PИآTMRapB ڡ惚-{si2߂Q>{*@evEڒ 9Ĥ!?򙘠n \}UVR uZj\"T3{YÓV8 ǂ{HlsɹuYx"_لx(Ӂ$l4&?\n+ =C-S %},['TL).(ǐxӯ0N\nև?x:Y ܑjaAvIZu~"hC)9Ĉ@76(*l,PN}GYժ0ȄdA <'8U})*C;dz0Q%3ՕG 75J0㋬3\~(K\/&Yh^-GHE}ɄVXЦBDۀnx]`cF\KTPC~%<=.R7Pb>uE[_lχQǾڄ+7M{h*T*dR GA*/[=ACFV T fӫֻkv&yϢg ڒ&N[22ԁo7OdWɠd͖N>Y/v9ϓp^rQ[`V *X܋qݛf"g p#OJpYBriק&Қ=$jxmhNxH,LDu:t, ZKdZ8 q[rkxͳ,O^3q; [\)9N`oƈT?q@yaBRBӼhf4 =ѭ2͕hm=G td&-,k$[P/Ew p bb֮+GwYA+RHq3dB̟i$54 t }KMf9_ yǠ}Xֲ;8\0B/?&^@[mj?d l鄾c<.` "kΠTcV-7s9 Tvʅy!\[LdB#eo ,c:L`{֞p=T"'\v`䍎rQsTIv,jeUL݁iet;S!Ix\#QVZ\O̐(&Ň¹{#` wR٬΋ij"axZAu+Zi _Uw9`c9 z.Ri2 -WE!+[ٚŠ8^\hh%BR߽lI?r#ahd[$4ȒW<>nHy|̢1婍E)QZXʌv* 3*S]5V%M-.OorfI:@zD>AdJ 2?]RO$l6ӔL9yWcMKPu]j CL#fSB:芏/$4o/=r"Fa/oVLnѹt`:U|`q)%ʚ>z4sF&o-_bb$&+kx-@'e#~s(oK!~y<jSwx^*oM4ɌD("L bHc1YI1]CT.war.KIH@rﱍfeU%}a[O@< SoP3t3lsx0꿊Vs! Hd3zWPƜ9+e<&)ZACbD qq* :|&*+;D;Uyk>>9\0,F)d1l,yx M-4ҟ9Q`!nU{syI0rbEςb| )CKjR3.r˙*}sRK`E_^2(lN ܱ#EIQ.0ê>|f_K)a3TfE&/) "/́%ͤ|2] plcrsckX}K[W%y/p>iXr X#rQ BL@R);7i EM h_q#:[Cv8Q/\}GwP;BīYw+9f{7TQT}dSsޔPXUh9ˣCn?dѤS;}QQ6.p+*YxS-lf<=K=y۝fPZb+Uؖ*[ث`ukNՊ䓸2m,΢A4] 4&̂`b=y$g<J'/ cQјS4&f⇗O-sB7ak ? 3*hr j`HL3B5( L(I%[)Kt=*X?4?$ЊOR2R5=F88E, y4V"TywYT-Ñ:guSE,D). FA*(3!FX?lV^3Vh<^?qk[x<6,AĢOQ[Ps$Rt2egElI[šZ4u*ha'jm:%NXW(%QgYU)1CTU~(lJE[ٷA0ʴ/lz. /M~ܱOl~<{x֖| QD|CЭBդK]B%禱?E" (}y)8S:ZmeN irxLߤHp/H]jmք0"ǟ{tJB>3'PGQN1s\}_K}7bEaL_mf_GvA?Q lYpȷ6EYtOEOӱl~bt6B8n FC)ōhT)K'Ӻ $O 8& 6~2An)_.3tHA!X)ߐ2fk!}F񙎍PsߵB5l<S\KhXY}UyM fmduspj|X4old0S~ޛUFhmu^"OPTPF7B&7|R6ME6L,0K~N$ h _)>npvd% ]F }p{&sX5qhb6ʼd;ӬQC~]JPHSJzy8]Pbx[-참=DqG/*@JwֲIe +TfS ϟ'q=iV_.g%e/MZOU*KwϬ1D=;>`@C?:̳]jct}Ұ-/GnR8[cȘJJF Oa0}=41?u<Ƌ3oCd XZPp!U)y|^G]7bN׵GކCYVc+?biU( V>1."y2mcw -ŕ>^ ڌ)gmgQd<"0׳0 (->zRri[3͋gt` pBJ Y8..dBHj0#^vכ]Ր_`n^%SZaճu*A'~f^`o8]UXFb單~S^+#M9Hud} %+E}T\BSzZL>Uy2rʨk E#܀ SR 2q٪p4~N(K'xIr93BWr|i! WJ|)WG )\Sb,i,e8@3Ye@'OG"~aWܥMUR' kcؔ!Gź8HɽGQBw@sJrwqGB&{g}ZHL5 eV\r+)'%|v-k8(vQSW"UQyF_\DJB ?_^Gcyh1p5hY/ Y ׷Bwv;Of/N"k7{_ ݋x0?V톑ͦbКtU2 #-\@_;On<'P[yO%6B>=)yю,kyPǝω̄<ĥEmt Q.#{Įf̄knnعAAwU\[&`7r^U*!?Wh j03p] g:b\ZvX*:<KBn\]bT(*Yu*:Nkv&Uֹ?6t>ŪOvGIoh}/񤪍="ikң ~b́)2jz^u9LejkV"aRc;1;:\wgHx* GhB>w^c&UQB.MzmFа}޵§hRdTo~ ъ Խ(P,6%zU~A#{f&+PiquD|X^"iqFR RkvxT{ XĞUC^ uŅy#.cta̳QBVFXFE$]!(lRlM'TggqQNlf׳}(rM-#-e; in^^%[8{oQ%'2Hu`c">('yq;}g@t_@匁\uW80މSg'rSS&'Q&U-.xu٧n֞ T5_5iN77 O-e܄9>13,P񥐊@Q@X?_nr:1g O3 :~!*=ڸ.q rղP*P!b@+Dw/Ǩ ߽Qv`d <:82aD>Oga:H;Xz8/&:WXbI5D+=o(m胙"*\nNG|5x(:X*f>:CG=n @/+ щX,܂zTg}J2ՠt:5KU ̵( 9`o;B(2+ǴC 0by8zK6*w^N/SȄA^rLWƗtv9ވ7x^p:TwCU LȺ#Tےg>5p6LR΋H.lM-"GB/} Uv7\ %gOVe;Jt3װn ʥ;?9/ oh}5MZMp)cfk փJ1ɫ@|ط߶ռWٌoZeRJ_ВF1|xT | Qfy(20|$Cә\B? yQ$ uCWEާ(8soolLuޚ9Х>FH?8Mz7zqKDD## փLq3C`MUbFγZ(Ҵ qFGdi^u>E#*T/0bAB ?E`k;`۞9&5V:qn)-1Q4{:mxeI4GG%iy>&30F~U[ˊPXF8(Ֆ~VAJK]b/3J'@Ux4%v}\~6Ko~ 9 m&EWhg2Lc淕n@PТ#@j^T}mؼ/XuRۥ"`S[aVc+q |1 ͝4=ˑɼd>ԟӥ/wo6b GJ8R$b$N=-% uT| @%/,Q#WntV7D/˾\5+Nog6R<oVL9*nG9eo_j `r˨} `91{X"V(*OdD) &Qfɘ7hG"xiFN3rP+(9Cvpoh* xY4 #UX~N?2 4bXbI \ j :/9/wpTks(֠2Ŏ@[Z ,]S5 YMYt/ 3+[6# cz{MBPlt͈#v8H_Qėc3YqFtNb 8QvsB=h ε6 [Z|b",a$%Tm:uw*:-vwӟegUY[fDhry  r=EsIjUdW |w8#mT{4]zv4JTUɪWj`<&>H#WbOB S6 *&8';-qZrQW"bV ZOzq\=w iIև3&D6DX̞U߃6UN3K1Up.p}찈:4x@jKr')CN>CAB~Ǝ%?BoC4fZ>bGփ?y)zgh*Z,◑I%f՟'H1L'cd0J-^;j϶GD}{@!2¶!rk긑(j<.aF3, R<#oݩrvJR;4jlE፠1nfg`<! ߽ ]T/@ {g%1="B;FLuyW-CUD?3ڇWp<= Mo cfc$/4zK;*Fa'uנJr|7_Ya8*h-jN)B#c_l>hJw o/@/ng8wtlmbF5Q`uSyW6=uPA9 N՝ޢ'GF;@I9۫ `\0w:~$wj$iSyى#2>x0AT{=K$2Qgtyap!M6m+iB͑i~ *%ǯ f<7 Hk5l.GY=tjlLc ~\arzP.#PHRbx)TSWx&ܸ.iB1ĝG;kB5FOJ0`C`}u2/|_eVfPhYw)# PWLO6B&8Vqί^(K P(_E '~rP\CXG)5TR㋿Le,@q2Kz><;*AHB1ˑzM}rq@<ᶢ:&tRx:7Kbg@I $yUQw1#?JRo7yӧx$an>ܻBY[V؋jo 4B\Wʥw/& ?h*8̓^Ded.b|F/Jms#S T+Sbw+?0VoN""u9ME_";4-[ސ?Ԥ!RrH< *\?> vmR֟11$b݆4B0yC @՛ z`>Lh %IkWv"3b9 /8-[pYL92V5m !TAx~+v"u/ E]Ⅿz'v^Ox<^` gN2喅JY6<W%!,n;( kո0в6v̍PCޮFZC% K|imE| $ fxʼk<(pA ޵bUSD6lbGJ(#ٺF͒)\*4K&H[e#D۲g،\+tw'zvhj 55u7 #j&kLtu7Dֿ`Q<־˅kNhćY;u#YԬ[JMCo$I%=Ѩ|heU*%C.yjDI4ly-=2`O"0W p C7j0yւ%# bC[p0+ tuDbFp nUvvJWF@|6|'~g3/IJW#0r`OW{}P<4!o*d, ];x)*._zIɛV }{EqI0BKK7g<@͍q};H C :;sqy9MUԑmBڟZnlt>_ pz^v ]T榟6&{d֘JWZٳwО{BVꎷXBE(G6idk?TTFu]4g) . C+^_ŽGjɂNXv~WA½&UDw墩I["MEl*d{QM A ;HHU@^le:ûy`ӰD2|Vj. ѰM7FD s@66 gm匵EHdnzS BiBKhG7}uK{Ka"54iooLIfu5Ђmz*R~GVLE|) JtB5UY\KrT88i]%|g6=Ջy=^ZiڊeN9?ghdH)HJAIM}:7i,J[> ճ-W?7(f+BqlHԢ ~ќ9[Wg9T 0m#PQ.K|>wD \1U8mI,{!&+jk Y[Bbk1JyG[%`9n C}fպ*+4c,z`kVbj`spb11A^k9QsL4A<ٚ%ɦ!X{];ml@E: >^S{iݐh)Y a1X˥([ PBŸ󨋂t@m`sf`i!Wj$>CD^6m#a0(l=s(Qm`(zk"5.-n!imřU8dt~!|2 %3bʕы7׆3+V%EDung#t1Ц'NוNж~\QC6B# ˹,T.|$fDYdfXEE=ZYVOQ ! !1%XЁdo{,'@?.E*,]}Ľr3\杻4S*MW5w84,Vkc(  :7YDqzvw;4BQːktcgᵡꪛWn\aS"lO{Prp=u7幞GVGThiКPC30Լ%1[:!VdN}Vs,\l3(y+L(tz_rk$2[Y.ǿ,rR# "+0<C;vD.ТΓ]B.F4X$C6ҘbPC3=nP5GUPIKo.X)Z|X:/L Onn.kg{;Z@k}LX9; xIdйLUћB@|Q.s x@Bsgye:A&uu;{X B ֛gG&- ]%Kь9^3AV-Gde*9#Y&e 7j]_;I M LN+{-YZ@0<ﱳP9g…E ۺ*7SGUgqC%c(*jFm<=7ݕTuF-1#2,H3uk+1^rbHk!Ԭm˗D4k "_j_s(@YHJR",RoAYL|݌g9ޘ[mR(J%coWAk^V[4ZN/ͰgK fU֫R̬l &~!թj3J[;c@/٤<=Φ~۲pUw[l~5E5Ubt9lf#f.~oNTγ㤚 "!m9ͼp !BʑI6lR4O#hh{ ug[s9m CVLcVZ\-PwXGsn,ע?A îrr&I;Ԕbȉ[ vy}z{Λ9hZLnTAH͗l0\ӿ1Y m ·9 DA)~p 2<3%- K]d (XApտA©]6閵Tto$9'0'E-1WW8z ݏMbʯ/Wc dE &gt7 5V7]ɿ=Iq;% `aQ$=x~["ifwKJAq\wD)'wJMgnK,T8ocUCRCζ;Q=U2 Fa0= \ ,}˂jBO霻Lkrn rHyu:A!v ˚rv@1? Wη$a?_x?A' ZA:<+h$ uUkk 8Jlr N" NTҢdkZCekZgBYU~ yP[8#\󧣳`Dsma\;:Gk4[ z#14"d^Rt[Z(Seu"U#ӏJÊC6`?Lf<#Ԭ'EْgænH9Á?Hu.BxLOHVd*A+a̦ӈ ktqH&QKgx_Ɍfp'.qhރ?~$97|bT5vH:A/% $"l<;JUٍڰպQ UCZ}3wΊM^'ҢdЁ(GW>{A9*<fFy]Z| ɐ<wh&cd bgLURhC4C)QMl(S6C{kG;QUGPmt`"K@Iv}X;]As oE6jJ`[c`:vG'ԆU* vl;{rP\)F uBHChʥ'KE $賚,alWa8V$ʢ&,jW 0k?H^çX[ؕ4VB LmG|*qHhv|$BTt7c;ay:Ew6*C&d ThPUj(c{ 5jP@A<3s4V%p3d!(/j!.(r@5/ԧ!chNypVWAn .>A{|=d2KN(+kVk6Y&{)UED>]f+wIk.EvoEd1{&(e=+ØMF xZao@~D.9w,P38O 1$|Ui1FuRf$#REt;NŚo!Lk q=uu!q쥥V<Qd0 篟adFr>Uy 38=OP(9h|H<.BGAD7=䚟*`![3evRa;\:Gz\!<3:Bo@yco.w!!KOчiv#jF3!zP9U-)$y7UK)B͂7$IƲ =թ#\k J"BJϝ6[3<ᮄ%7//Ě! F9]b[7ObLn&RtpGBՂ80UtJ՝JPDJ ʢF‹$rz]DF5!(k;ڈa,$NJ!9!"uΟ4[-(.񊭇!Y'0@m@rԔF(U|Ꚙz'碫F 'K!(å+0mUxL ,nḑBlxv{m;{-nCYQi;7o?-F۽zg<&A?&~+N;bBY 5iwL nX3Haɔ%oR0 3!O3Ia%=կUY\Mdjǹ--" ;j.'K #*Y恦"] pBNt'i{߽ @OKŜ#%t1f ?/{PVPaG8?Do!̏ ?~] ] ީ0]瓕J(yJagxJ{_DKK|9Lt>au]nY`N@ztuVC,}ukZue}jhIZshң6qc.[q&iK2Wo,wJ>A4kC` t'Qr`Ct WэC̚"|Z S9+qXne`^CJP~+B"&Uܽf~Jŧ-,#hHΪi0+oT ?{ `t FByI`q;l}1=_]Bg9@:)T&ipUeAxk~Sboqh$@ FFck\4F+O@ ـ̖ؗ\'c!Bt *ҟ>DotEjvśUq P\kqy')Y[vs˜A&I`[k 5-[Kjgji9<<һGsm]̌ eޅQblС{|v( HQE2 /ܚjq169hٟ}[ ,˵( E$}$WM3aI ]%Y^G%nk`%H+(DJj"sy_ncsmC ƒG_iv܊R$Т:v1nom`C0`Q 2M$yNctca9#$ ݱnԛ0 +_vH); MDG> [Ȑ93x=7ޤ&*bJr$\o]k,jIe-2]gۃF.PN={UJ(?NtE~k3s0ͯ({%@i8˫' F?Fύ4ʨu(fMb=1 HM#sS$SH$Qe&X~3VUBy{<3utxaӛSf~Kl7.,=vK4sg Q;\s;*BZƐDHbrӠxeLԯ,i>5 AEMΑ A7W3Z@ij^h.3~ !9t͛WU5WRS#8a|eaH"鑉!bEN~U P~H0ʠZ-*vyac'X>\SJ@ Yt%|ZhgmtN/ >,婾6 jqЬ 8m[ Z3OXFw"ADkTuBHk~4||*:Ur!ytu3zI)P$LGM tHO[9uݑH|,5rae0*JXxJ7YKTzQɢ̜zRHQx@4WtQԻ/aq2 V/K-DVhQ" $ XD<*G|\7hIrȥlT74} P]qU9~1Q%5J!~DtNX#{?(J:+A?SyivM7dJO?bꩠu,IN?^F>aR &3Ʈ4e+Ի}<:u*1ρE\vF*JAcx&ؓf:M ~߬@yANzps,>暍8r^Y{K/Gl<#&V5GClc l^ V&EWE "z@gvFg}&y23o5"%5yyTm0/1czMOB8ʭ؄bUc1Z&7.-ǭb>OmʗC+D> \ng,2Z d4^.tyaIyQ5- L)fy1A۹KBW{]*$q+%*'6a!W>3si3'j6O֮lD g # % i Cu)-qA*Q mĒvhnyȆێ^wȓ&$nZNz;GHord$ƞA<@2 8CTGCVtdzp{:`0h*M]!LFDίA8 @o8J!iVr. Kvx*ߌE}H2Xq,j87}56**R]%6l3DQd1ì"YN$cO߮K]̨чXX1]C+U#lcմ\?_˜WʴVdbm,WT9ؚLE[[}T wq9r?y 7fWi$_]YOh.4וPcO.ewPPe'I M ̾^<Gb&'$h!iա7=(!.Dw&_B\ L0 N?\zWGQ񤙀095]D1~ݿ+:ZA:Y[owTx߸Ӷp7HΕ7I&#%`iUx GLRù"+ VCo1InifI) zM$;}():D^,NyDthJ9tgF(qNLs8]x|quiahIu&BIfub:bB42U\mέ&^dGRӇ}n7%FT!hL7ӪpS8fݻ-kx Mda Jˑ@|׶Ybwho^ pF:΍aYW1sf;1J\m{o?l ӛ@1=#LknװZlcYȀZf8ZѹCm#)b}&^ rfj(:n)ϚK@낺]gc)HeBVҼq?Vm0zc 1m(~zgMcO Rp~鼹Į Z;Wyhg9- p]#p9QNR[P&u3ʴ&Ԡх)Qɭ$='\@@ 5Bga0ۼ?c#a_MOűFtd )<_Erof.gܟ!~듼S1)B÷`*78VO! ]C Mˉ xfk83k\:)ˋ7?[ۘ C 麅+%ؐͅmq\ ='JܚePk#߸os4> -YJȹ䱁*ʘݠw_Q{Ġ fޭ$4_4-du}Y4#na.1q.\Ab贍d̮r6X]Rg `B1~ᡑ!uՠÑ=kuƅHKC};J#`z3A f}X=):/z] v\F?qHxe2F,'I7n Q}?G$0 w%H6vW6qd70Dߦ{Z$_]t04S`B'4]6ki㶋?HŁ0&@@VF-:ɑG#4LW[SvL8wݓ *h|̄`^lol@ @WuSYv-%1W$+Bg@K <yٶ 4ty&:7M{G-U1K?-Z{̱F) t.vNKpYo՘|23uaNu+ht6GlsZZp9WeYl2kBMjN(U|D2eqT ؁;At"h5LvⵒZxWf+_y9&u}IqKFDz]5)WORQk}+{粑'-y V)߇+ɇ1oMU]Rf{("K%Y%vGg+Y1~<7Z&SUuCpofoO>W||Ԫڱ 3m!&!mBU )vwd.4v=N%\cc}]% 譳%NG42̻ڶL6k:ȜiՕ͛3dP-pt0q_ MIq8Z7"7̕_[kvAq4 ?_,Yo$,od^~%ӦRO3ڔHj8՟~1PWTh0)ó.I6}TB@wrZy#!3FUǂ=ȩ> :훠 xtj}/}If*:r p]5gP&>p;mnLHFܳ&a>^mw+IBkbŤ6:6RAkq& G[L !1u3T 3s=1Cnw#$W18eVB4̼znF1ŧIpV1mC@X)n^G^ص%ڢ2]EwǢ܋p, )4'~qJȠJԃ8.clE@zIO݈F+3m|Cŭ\1k[ 4 KrXt>WMz?W5;B'‰kQsc琭} vOWuUHp0OU{y.sQ9LǕ8HWNv_lYtt{mܣb,2F8?7/^chT_[#~/z^~er醨*=uc|di'.<}^ENDWa};rRڼ3s4FO@Yy.fs7d 7w5*~4mu}(>ۼnogpU&2n>ʖw<5&27 RE8VL k˅ZJv:N˚_ EаyFPõXnZF7"CL="m]MR&l2H=2Sz2ԾT#m0_8m҈*tP<:}Z;}ܪ )#JCf8wVO OŷrG~.@$4Ѷ[9X7N! MbrkU_CHD(=wM-BσtK{hf>},85P*3^`n}J`fe=]U9{#{hwh$Fil|vp] 맮S4PM1bv0l==/MC@x?(i ;ΓwNʃ%.tmSSm<~Ԭ4=087.0_YG⌢ LD*v(q!vX-9bazhUwVj%~>_Zb#]ʤ /aOF\>repk Ћ$T(eqÆC 1?Y"n)E]X˅ ɺcȀ=:ĭY`u@\v _/P-iV2x@IP]~ͲB+j0Vv@ZrcZ8` Qee3> I agВVdIVS/-&tDsM)y~Uni-cī)ܹNM= b*5`w_5Wa5G )zkN q̋ձi9t.[3''vHĎX(8ӢL#,xى"۹Nl莄&xmn na{qw /FtI+8pՋ6u0"ѸƇֹGv4kSs߄[^ ,}CK|mJpEI@ةOar2E9Y]YnYvƾ4Ec1H)2g u/D2ݵ۝T/cw! J+$Q^cZ F/6~QKw3pXXo}ySνA.za)\fna O\hv|_)8.#>KN.S#8_h 1pB"6.{c@8ڒ:`~cwߵWawf%uARc6J?IRy ds,ɚl#]6F̃' \j7pP+-÷_^ >/8Hڏṫ9g2mkNP?$IhQ~]S"~潷Pi}qN4©=i'd(eL$ӧt]չ.&- #Y`4AE!sI3&>6mܯrAvd(8Zs%ՀJ|ipcj%)oa!J`΃нgfſ>IyvI  D w!.9;%IF2<3RC%ca*SCi??|p6;F=CƋ/O2J !SJB]xc> zF[bSl뀄,cՌJxt;E0 qibW ep 'pX kbt6EvՑva>)sGDۍN8( Kw$KT&lb0,.eTvk2qRceiMqlBl6(&zvSya:9J p0B0[cW&5o>)+zfA`w8MK쎋354Q_bF5yo4 )lۆYOuubMsV8^_sS~~ 2#Py ŹgiȂߣwl5HW:2Fd;bh?Ķz I9A 7\.pׄ#S}hE稦LCk-}so/[wgRbxlz㳎x0 w=Wi`SHPkαU;*c?~v(LA۟vft#ySNK #0#A1ܫ y@mj|ҡoPr/َ$\]:3Cث-ђk4iuʭЃW!_TC,FTߡ SV"~;q~KWt)-Szܱ:kGhhBqL~A6-8]Hf}#LP~rݜA0Ѩ9Xc. >ReɃUzayԣsXJvd0s,C<52E_e[aW>[| Q٬FcM8+]_!>>mEu2T LKhoW#:tבvUU>'սv!*Qeʛ (~B&/_?9&xqx Nl9ZsQف7 &fӤD#2N5QJ箵w8p|px.9n9(=/ZXyR?ꞠV霑Mt&@@btamD %pLe*h x+qDjmY *mbOɡ<&RF!<ּ@.7PL7iKE^IլлgoM'< Neg p7C>UayҶF@SXߤ\e跻s!RutϟVZXtA!"O':pÍu A&Oeȁ`"I/j/2喱7yhlFufF##r_ntp(YiQ=hCnN|ByqDyՏ~q짳3j 6K)D>bᝢy@EwD"_K⃹t4M##dؙqz1dcSEu>(┫ʬپAGR^i@MSm؁ GSw 3t \'Z@mƻ^OFU܉RvgpOzkZ뿒7j*k|̵ 1@'Mvvlr[c2y̛i83Fؗ1c39z<>`O*B\wwGn =}c|8VGpxuUQx>LZ2=F+lR$$?$ѻ[7KكBp?jo(XL4#y4tiǩ "'C3͵9ˈ l [,٦Bl8t'2C'XvO)vm7|IyxRJLu!Pb&lsY4m} f<Z)R?Oɋ`|Xݣ\Q"Jj 6GUs BEp<*4miU=ŋdح<`\Q1Ms^)!]0'^r*ʋI ױ "K\&,~U( ?Hr,{96"/{iH j{TFdH riMUɴ'xޙi_w!J0J?C+./zXZ YcfyURwח" P^w, ~{|{&YS d"ZScM (LihHiZ55Ǘfˈ%UV&7z>9fAc$џ!̋{7 e'#[j"8eeac4+4|_) VzNT :d]>:.dGfI\l.z!\C4zHsvpf:J~I8MNn>֦s]ǻS +S{{Tz!:Cˑ[:f{a/ಥPK؇yuaƄ*#B";$+СZxd8|3tIؾy"$w4imZ7R F rNB42F᎛[wmR%J 呙ݻ Q9'{1}Lfu6*vWQjgyz[4zky[䘃R[J1wŃ?nUi"u2RQ߅nmbͦ]zUJ3-RxmU`8(c#YMtWH¶S%Q_8 G&tRдu|,%ahALJ눞_$K%l5_V~7Eu©?b8M WDA}2b'2IkO/)WrXƹE'Q^G$=ɼP1τ'mOM\Yb(4106XMJjm"{ ]ؒr SЎ- 8Q a.RK}؞r,i/|hxl~}s%UXK~3iOF!tyvDTL>'v "7x *=3FHr';_5_fmit, `J.*cpr0o~H"D-?2IOޑQ`Yts 6t΋QCN7TlNEۼ#GU3co?xZw췑,C Ѓ3:^Lh 7\.#pM#*RQƷ5L܋\< sFʇ:!6z{P.)H<߸괋EDdu ϒeݽ(qc_6Ĥ^K邞("]r+9 /޷-N=~bSaFbn5xE ]T;ڢ%`(I88q?L Sر=9Nf_W+ &F%йggntzM˖QI!a|HHU[ڙ%cK2aJ)C86-0k 柟$WڢfLv )'C]ߚșs~d g0cP`_3b>®@k7&pU:7ީn?];+SZ^r!в[z~^AHkc m!eZLM^tY*!TBd?, la&P`.5 v;̑zDnHQ1WBK˙!\Ȑ KaS*i$xBCQ=2 y 鍴byA3ꈗ! (BwS˭}qb^ɼ!&<~"qwÒ5'f WA]W|=|Bϯ y w ¿♷4Z nu'Ev.v U 4hEیnC(qGE0W yug+TbUețI3s:R!W Ǻ\,-ϖySܓENQY%U`17Sv,HӪ<$0bȭұ"qJ˰ ;@%f(>uǓT!8[`Q`-r8߷!5ZHؔF) E7߲v#PvZЂ{+=K>y0K I>hX:;Fc?K֧mzOz6b+8zvsBYT`.̔gڙ@Y\.fppXظD6+_}#^",U᳅#tJSGDQ]+PߊMNҥW|ڨ㦕zbL1Db!ոS(멪.ծd *+XA|.~cm`x)Lo V4K 21YD02! GX$t>U"큒&rS{o8:[nglo@KD'WFq@=(.)놤Ff[EKxV1ғxQAl_r/,Qgmo8JUT_ #O[>܀p}jk6{6m(E)$hT4_ | U&=Iltmv qKu{ \QNs#`=a4V<.#{\5\{v0.:ZozhrA1HzƱG7/&-wOkkuH!4tpy0On1 p]8w~rs5e! vFEB^sL`j|mBO4#gX /N s\y/Z阑 FJ'mJVgBæcϛ#˱o?%syy +ֻA$Q#,u$ ]SSjNH8ЅFWlsu"I;0dU3qx/m'yAk.H'atZ/`؉5LlA CXfoF2p3TÊ\ʾs^vD,bp-0 >&2xM`lJvPRqVZNB%[GK3$x#) ,v:7"`!&D%kW~Euca& sYsXC>4.z8A%5˙@ hQppN,k lq/7捆\xt¶ߋ!ĐRrL* pU\\XWa'R6 %E;8̍yIs }ZP ЃLU4SQ .~L:9D _ѽ\wiNř=oq2@qzĪ 9[q7TEIh6\ C‘ν๔ &~;&X}xGԳ 1Ȯb+)a/!oV%3=:,R?< dGp5&Rݲ+g}?[jwv/ia)-=Ϝ)p'P3#%Ԣ ![Ij^Αl FdZm vE_#f4'5yO@q3rl&]j.?[y A9-Za׏"|C \%_Pr)R:541BMqX,z^D1ZZtˆ;Odb/XZ:'&5=TqAdlCPq+vYl )%m4\O~C_!V8T }{Z.Fb-PRh ?:"˰ڪ>6\c# 3bљD+N.e2і[p"2!? ϶ƥ̧ N|rKwH4:Y+/(+W7IyMBPVm4U^769eǠGJȢc=RWW9ȮXpۖ7ԡePZnV~ 8lR}$y=%/ 4u"e bih2s!>M9c,7e- Q{1ׁ5_ }=YOਝM xcHxQL6Y$]pKU/.>/PŽ'|7ҕb[zYA 2t 7P5_~  G^aV wUf BQQgcnx3}.ZMʓQnӷۙzڜ'1hKu S+gAIlW;tOD1 іZNVS "[!* FWz UBSdrhK .;bx=^,I.Ҵ%N\a(Go>O2Kr(w,~bu T_eN/ی#0 {y[QBz13]1Y%.d@xRhgŽrVb}F0S8K[4 X ʆS:`bn`v_n_dq9G=v͸ntQ #mNcGŃ@5ryVmpD r'#}b)90iGQ@ÝfԪv4A1hvI"eLTXZT*2i D3ê ٷQDž|e)=B11Ca!:/t&S`E&MPk "v%%c%~8<=[AJT6#G]籠s.4{{)w--`vd{,NrE:lR|eHF GĀr.敞G/j+cᐿasV-X)[ثgikAԨNAq*݇&q;hf6i|uut«=pIpj3"AA":`x8`Sa((/m󽠽tsK֞:5LGdg]-ww:$Y[ρyQR I +dtk[7]PxEːDr0B~9xڡg_fǼ"ugclFS {h,÷vK×#[XӬ1brË kN&97&߈^exnnDPl nCk: iÏ cTihri5fx%Y{}m@ TK?J0xdL*W/m> 9EG1Y36 Y,9 ܾP=]A[@Y7[W ] ^ޜx;n&Mޣ]\bFZf >tT,d`Z'bgw* Q8JO$𵒸J枅b>Q^}KPOwT2X| w07{h~Hڜ]&3];g"oUWGT85.ۇ{R@#A@x6j=řt44Z,|αr;N?3:2Kwʥo/8#%d0d朙-12@gwm$<^Jn oF֜ybD~@.{x,T?J'è\) :9O{`)FQ 1̕}4W6rPb5k_$-qImgol c ug0d={ xbU9U7 fHsV9D@mqa*iŽx AAYo~)}jlŕS (.k`׫O!*ݔZXP1DpOYpKlu"܏+׃ `8Cn6pɆG#rDeWYAXu;Q=Q;N7IYR/䦤$z!d5ppcWl(|g^f !Y6n"q8T+zAO w,d78592RAJYF`wW8D$ q ~v{3/m(0ϧvК/N?ZpHI+ao5ڀ/U:yIP@V^X  #gTquH/2 d@PrjM_EVLRbxS˪u`ܮY| OpG8<窽#0QwT/eu7/!]xi{pz3ꤡ$Cg_sXr&֌v·)D޺ؤL7mᵨXOsR$@\Lm_ f@3MTv4|3)r+q;Y/Saѷv ]3o@@^˻WKkʲ=ixj;׾6 `ƹCu[iSѶqWǮz6+[XC_"w>U'q04J^EC3Bnl:Tm%9;4@ϻv5^&#o4OY|f5͢ʊ43'o7Ҋ CjI[^F/| w(zS`- UWZERnF4,d/wC+t򍬢e*> {(ҁ\S֪}+񨒸H%!'C>lcSfh>x@vӵ{GM8 hG3tk(DXݶ˱z2ƹOڈ_i]>&+~:XPSy,5I(RmdaJN\%Wƶm1F̭s:١[-;'XvK8n<|atcu4bxR[}+%90Պ=q$Bۮr /M" A{|ȟU| nw# s{{Vݒ"ưI{W$2`d[ hrD3_q>^B 9wo; JMh"`kXww+@kBywV |8Q&Q~ک'j/xѳ^bDߕ|cs$Tc@IтI3J3EqK Xj<˪{T˳ s5a=D+&N l7&C J+Ԑe H2UKbQkRcz޸̡ȟ^P_J*mtY-M5f}= kyxE:WhŰ0ORO =$J+8ܑ RpAoBcff/:laӎ!DON^$G_)!6I^KA,b+,BDylj7!=w@͖#̼`m\CE9CO'ݖj؜G.fC~3dU GL#ib֏nGiGfzB|ؔ XL-vԀ:yŐ`MrRI)o&<~A gJ`|Jw\ іG&mM~)'􉍚:vAqOL$Εy V%Izbf~B _J E(gLH`L,WccnAaF&slPʟ m ?NG!0y:BZwHhTz=Ȳ¬ٷ@vO=rYFSwD8[?`o7Z)EظJ;gX_UhLw*5zCOԴkBZF[p nQ z5ƥR}7zAn'lY[EYo7\ pQ>ɦd Ĭu㸧plF 菣F"ɲbs^#>DPf/-?1{̔mJ Ͽ_-.s=huĻNS{B>Ƀք~a'&mwTAD{D}[L-7T97)l{g75j ~ uۮqdf$(l3(sP(,CQGdrA?tv}`&^oj~;1FŚ}^#mSf7\4!VVW/ըS O> ey޽?Ec5dci=IDRgɓbϡ$ެ QasOh0yud4 `FXq OvY㵞FL%^=|ĕ'v91?(*ζVm>DnvQKU/\NSLwj⫠c*M na?pP`LTƖ2p|Ȝ}"baӛ *@0t u7b(?Ȼ\똑]vn7h߸npɪ|VvE-S /PQ0䬣n DIlætqj]˖+L֯I㓄T !OCO]MQv [~,0pcT */`14 a`9ߎ=4'(1kFTK<0d})$ @:W}]Ղ)Y jy ȨsLxfZ5:ާYp * h 4c Ÿ(NPt,F{Xn7j^nBk[vyT)k6CP[_&Ĥe85!kHg.c9i] u8ji$WK%ЏNJ2"^c'7l_`WcAG5Sq")o'!.ܴD!kxi/ D{Re (ϑQP)T- 3ca?[amA"yZmhE'e xq }84x'~W|r2/7|N JZwN!|,i _=ŝ}>4<0#r+6`CQ܇| Q;$]'zCN2%HջE;aiX"GZSw`M :l"PJlvau1g vUC#~iՕ.6A=@+8) %lӆmc巕BvcDNnǍ' KTV@-vt%s)47`SUd -VȻK+X{Jygj讝],%>'^D,8JwKnO:0osۏzu`Slx3#`QS΀ 1m.OcYVag댳ܺ<œ,aH\Rme2p> t+'L}ɖ#s>G(Y pvtna=^ϥUlt"ec~)dP>} 6Z5yJ,v&A-,tUQnL= 5J)SC&pk}U8/By,^@QRMV,u>D°^&I0j0ȕ@)2GbMa!|<:L?Ϻiw"o*-Wn9DsV=|UJs'dz;-AZ#FOOV4>R]ofǩ X Iv`S&RؔE2m"^xM+W^o|6J^n3=JE/qVاJX% pMFĕw|XlVU}GI?39yw_aP `0I*vq/ lN2fO1eL Ϸ} ilU#%(/;  $N}hi;=X.IuRt֪ Fy^Ջ{Ag/2yM'fcR}I1[|-:G,1/\Yk]r;* ;UǷz*ܞ!q]D9e^fH#a4Y,QS8 l7G}J`pȴy+(ʎ4Nog8Ő b]^FBgHhh&Թw $v(#Ff~g?5lErcg|ޤpajiRl ik*Ê*D80j 㵦꞊*(t;r'HE_9#"(-.RFҩ>}IimVO_)LIsT?> lЬ1gd].'2OЪfg)9u;(*4qi@ɛIKnsJ[b=πeo^M 3}m +Dqofُ-o Pf8u|YIųLę7Yٵ)R>>3^az{eڍmK3KV#= ;>1^9c3,s 7F[-:8'OTϭ{5>YZmIN]dۨ ļӜKǙuؿτXZU-WȱP/J{B> ? u)(7N=X1 VK r3Unrc( U#,fH͈W`Z5j͛_yr<(WI"R8;dkѲ!ݤёA%a3Αi$dWbjJʞtteNq+Z7ⅴY?߫d⫺Xpسg @&)n_?Τ$Jsi(=9p̈́)``7P t%vK}mãt9FqmYVNj# xñ6VlSv cv*XIcDbC}a 8zWhܮ: ]x$$ngCNlA{'GVK΃`4[$3\\f=㘤c |_ DR3fhoteEۺweI FQvfobՎK_ KV]yϽW ORA(C%RwJB\,N6ccoZE^yHů i>GBt^/Ar,ߎлMmCۆ0 jh pm:IӍ֋<{6Su:ʥD/j~ܽw\mteJDSW=,XŖWtn]Gi=*Xjۮ V23,v%R/ |ΐFǖ3^]bܫ 9ؔńHRSv c%9aK =^#_+ΛdW38 QxiI|>g +ҟtxʡz|AGnhqDɞ]ۀt:dw ´dM7G"TGT(휲xHi C{.yShk:] G rДy8{At|0J᮸S=uku*#ĝ i9^V_qn 7vtޖ>dʋM%_zIr ^:֔L ISYTNd 00,ඔsJ#Q"7.!aT~e3葹)VԢ8I##qG陊RSy钻^^줲["|f]O~v/žPyK)Pb[i4RN$; ޵ܿbTס<#Dۈ >K4uP8e&`yvgpV+$ؠ؄h^`YhexXj)a%1\t7U%O)}`a9l,N=|44P?G\z% b1I6X"M>ec(lꤏ A~Xyoæ) 1)0e4({.n_Ż`sX;1MWJ*PompLo ]{b&[5d`1XF<;)'S!zWP^Yclgi'P?\B.ZE'Xb$G;Eey5>((xn8k殗@1` ix$$Ec0GXdJc׭9(M|T)Eš殻x꭛~IsCwqm71>S{F|4Kpʔfb߭ҧyB9r 6vW[Yb/-TSVnYw+L o=<hJ^W7-R%{t&]EYr'֣MLdoXA[՜1?Ay~Gy H[~14(u>դ!{XCvVm,Zt/ޓ0([͓J%;-׏[HtL^wTvG\>aroZl0/y!MjOBKOHqɊ.IA4X-a"2!|*:sHɇK<I6=oX׷ ]Z, aH@,iƞ%cUv|DB>l=ܿdֿa]R?zEbөS4e-*H j HKW(RCê/"TSp"pGԭPl"#~3e5@_qVJMokluWX3GxBWNez_߯ ,] }P q3Qh,` A綶B"뢆i`.,>ҮS`eاBr51|Dq~k]шmx\6 R_ !ӦRFX M}ڮU0LGd0^'dx(Q$UGO~eʹ+\G >ll&_1;}ͻ>1yuQTvwfٖg)I[ Tf]W6F"2 4 픺*Z_۳߯Pꂕv&g}~MKd TM$0]鶧fBT1*[42Ա@kСOd ]&u֚ma I ]rMm;'Blk﷦bAՏڻ r&vwGNըlQ7|~YL8Ш*FWLQV=|{WIC|$L.m1tV;FWvyZ]ZuJd춉WA>Vu9f7;ea# NJOr{6u $킃U3 'o,rnhMd2A%2f+OBe(R[-t}f00SPLT-|#}qHG$Eqh'Wy!Y{rrvSre A57r -ڶ[ Ec7i+{9dЍWqPܓNgG.\9\'*8_C!thƆ^ABؼmJ0փDfxהdo+y 4?+59 R~C1}ਯtR2 ߏZ}]"XP e4GqҷppҨu %gc{ģrZSybByUA>ΊVgn$k_QC f=ai77au/<̷S| WsY;D I:,(+1{T$ 90SQŦ%/ԍB@+%3]Q "ϳ#&+}~QToK-LX!aLQ`a]g+<0 mca{-\?R Z>ή{ƁS^e#Zsѿ 5KI9HpoSWK7r斘o8j{O0$^`2{N5P㵪{Z5"DqmxRNtڣz DXԾUN'93sG[JpuEV8GSQRRBGɊ!S$3|~"I~+WYV^rgMVi,LCѳ7~_ 嶭 ygţ!ϋ cD%J]焍dHQ~,<%QwZh߱M?S 6R8 :wMGsY1.W8Ap88){l` ,S =*7Db=ys v!0XjGߤqt0NzqJ#b@),s:Q}E4! HŲ 9;̈IbfȵkͭE]]%ÿsDdzA7ٚ0}}kV:fP(0m,NdҐuQwYt-bb;5J{&&"o./;ct678+meUqAL! w8*Y=Vg(GBC qҸIٰ:m׻uO =mn/pҴ =mq6Eb_vt) ¼톿^lyͳ2n@?WsˆדA{ƕNHb'j׈ƱSb 7RZBpCJI8{_O2h@^WA/3I_F+uX l#`V2L8ѸVj,hWMR 0*1ⰝE+ڪW'(o\@`V7lzIxp/oc?'oYmnÊǒx$,#7-dAt@4L$ʫ[Z _9n&M7&`)%!|YTC5EbM6i=hG$fdé*;j5ϾD7yh`RTB? æ.uX.x0@]Hb/6&($D@RGAx~7cY;1w5d-(blqIiF/#AFh!.tghMx&SZ5BS$r(?[-"B#% VBmZ65* '/ؔ1o /ɽ=/MsL[N(:ؓJh9s+9I@RP*bqkYao^u5 =use` i{o٭v_BQU fMC>- ɖ9"`:R 0FdѨGyNQU/-9'~qs^]!@ΐ: )]+Hk׵_kҼHDž PIq b|ʚ"#ˁ1;7k:~rݹ>XWzp 6M|'=%]ޟr<,Z7QN/IRq`pѲ`/x OB†:kTZޤroYT:וa@|-ۈWR177@[A~e/Few) \7`nr"r-D0 k"~m[|4sjj(mAfbŚ~k؏6)I0"xK˿ʦT.''(=t;(n6ؘ"IF I\:I v0(m@L>g_ @o!?'&>R3#|)-|`z`9|.M,)cd,YQrfP8v*_>s,A-*K U)66e\s^eej%Z 1HL׳ g:s ^e9!;&SRJ gX4 nfʘd["rRзC&B$ua" qg\c6aUw|(sDvL;nXVf o? O ٨@{/U9z1GdzEctOQOG % X(sH^a .sŻ7,_ lnpg3`6V|dYF\ˆ3+[6 ;xrƟjoo2Q+,ki-z[ YN$;aZ_D 蓃KV5Kp )ݼ6<@s2^_<`$'̤5S,/SmXbĦX IgW!5{/`6TkTLk1Exl>'BhXfz{z!vU:fnGzJÑ""w~}^&5r!afoT^Ws&flV UlX:F J Mc0\0./hN1_NcLVFLpA:sJj*=V^Q<$ݩP*soA=ք}JD%[\4|6n?UecŏOio.N 6g7~ZHR䛌sB)H'Ή ڬ[- ngXM-HnOieI!Bj_~7L=wB\;MN6K.0Vj4zzY&ylr $l(Đ1KM#G=;VzɮcNf^#dqWbmapC*d7@͠H>$#v#nheȭ ĦqWJRzԢ2^=NK)&+\#-ѢJ¬(K\NyVUs6=]h~֒@̴.||L>jٽ-2/2-QߎWs:J~ YZL@}^b&n_!S>0~%14&7 fR@rˎK6aoSId>uX.zKȎ q~f>D5ZD¡E %yP5c Ibߺqt}=6:n\5L }9JDwSPToV 9{:r6+t5e )a9 c:-C Ax'getwtױb ^:` 12x(OVLd"{2MJ}ɱѫV4 6*~NHa)nM&~v /"9Y\!UkFVoXAR>2 y,zξzKrTmR!_uH=[ ` 8hr(nq,֋sSاe/c/sWbI}!- ivlnɏ?G{ԂʟzeB}PA u ]U1<śм$iɖ*]]V3H@㽋O4e؛Imy*Kg%*A_> x/[YA"7(Qn` r `<%nliZ/3z" mMx=¿H=&ؠj+\W&jDn;Ǣ r-,`/[֓.#͋O0w.xխ^PyTM) Z!|ڵRʙ˛P_֡FvJ+42?H<&pO:REQm>U N**lW.z\nJyS+ Buע3wg7Nis2 R㎮D"Do~_ cb}gL>3TU,(-(9ty"La(x0GH6HhC٧lqJ'ZU\PҎ]]bxx!7{v&~1z14 s.}Q,qƨ57(jPk(@X/!1ywx6i.mY]_S p.ޙ?,? ^lG LlD>#ا?:$ O,6& eR;-u/O=+NJ:UUJTZ5!V$ =U($SI/3S`.|jXs!9农 fĦh6SVF"EZP"Ꮩ1 9VC{u0@-1w VGv29b,>S䙔!QHmHZ0־L$& uY ָ6CR9l<̓Zִ"o67ZĽe'тE+ƫĂ6w2%/tm/[-F@^Oչ LwjZ"X<S})gy$G)+b;`h*N׆Վי`%~Ih#@O+dߏ18 *^-e$XДbG8> 5y~n|ŀ2 a|SO^9hC~:SXПP&߮Qxo qz1cS=N^PjuڱOyIͦŖTߋM6)\0T+j^D=kqN>_z7 Ԕ +Nkk' G/o_r}%씔'!tj'ᢤ0IWg/caa%N; ioOW,gPLߑ0 ~ 'ʉ!D:Hfp\l  lcW= ՒʆN˘e{34r_P)P:#R~XizGϙ^N 1 K`F# wږҰkqeЖbC׭. 褯{Z׃ѭ$saϋrgkKIN 䨌~ExKD=A #HYUz SO[+J:aZ;6Sf H{Au1s31p(I А{V79S8󺙲-=Js //B~֝Ā2/fd"^.1&`P v{JG]0"Uo !cޭ3T̖W+ч\0 =¬W>=zD C4lUkat Kɮ:nEs &쏓n\рtqlph%*X]pJ2عJPuߒ `qn̔2syr[|pGIZ=~!u/&RA[lAZn^@a%(v/vY{E5*-_Zp&|30HE_V-udeq'`t|Q5fI=ob%E,pn/^Gu ALVUomR'kF->Kx|a ع\VM"aG*!5~2/yy~(W2?uK)Z]fػ%]YI9qw =_"8v88g8(l O`5.gc<0V|ʬj0}Tydk4iu=#l/~Ϯ 9LQw_tWܝ Չ, amꝲ2 #6F4"iOpaɯcC ?urw(1a3W8,TKn;hͤ"x,ֶ0;Z&ojTpj񉴸Z s1rmfro$>F+ 7QH`uN[ٵ"enI~{sXi~^sI+U"d Yњ³_5r| q\*l4"ߦ{n+gzv1Z+ϐO%@¡߄I!~)=fV{ zܐ7,m;aNp5.߅:RXz<:a8=}xXЁyRTFͻR3;$QIC2GFwc& xSˋq ީgѱXFL],S  qe P;,#噧5Y]%6q$1{sUpO,8رQH{5b>ӫaŬ\?B=M^T_}ΣwU󔶢6\*+!w> y9f3p\r։Zfyh*sP6;,ΐQFOmjJzKD"e/ QDɮn:iN 9|Cc'ŷ48/$|f0*Y.sW Cfٜ+Nڠr BLvpl G)<ֻBI#y&b,Hb f 1~1,cV4"k$™Y)1,^VFMoOAHdilƮNKڟ9پ9$)A]{LV^ٜ3Rh 07z?: 'd%QZufYU&g{m_^8iNE{[OS+Q2+]"@ky tTT;wZBa\sJ 65-_4s|kA/T%a;K-G5S1u~"m~R=͋Z_& ziOZV؝v;[ l!K#}Rבupɽĺ2nM!Dp+o1HQq[|\*GQؿ4*e>Z\q ˟4kN9P86:x vguGTi޹aG 1cjIdi79ۀT&eZޕr܉֡Ag)EMudR.kh̝mA'!3$KZ>JM"\JeguYN=p:ݑES:H:WTx)h`0UjT41?g c FP'm$ƁW9F=3$t=W/AM X*O/,@`Xl'GIN]m,9MhzKߍ%&: ,;e<nṮi˕m,Qp-ϨVB)>$.Zp2دuw bOXir hJ{rdkTKPSDԄRR0ʎ ?*lÉrpi]" ޸Kd8o5T$T߻E0d)c{Y,j6=,v9yi]a^\G_Г9 /8!u/Sk8\?N1,݈֑1998$7N2 wŽO+\<u.H6jYgdwP6-VUMJⳟ#">Sݸ.qr))LDA4S]+t|XJ$  ZFȊC7Sp'N,Y-q qgj [gf 9"EXNWHgBn׹qS?9*2d)J?V зxoV"<Llf@sU&Vdh֥xr EǕl؁8pʽ1;sY@o܂Rl j~5hR;?&~L^,R}G2Hpsqsp2#-`g]kc{~•gS! _s>e ]A6lo N/OV5$h`hx?yjS'rhni]W|)>+t*-B4!m"$$mxs5F- YiSNnR:.-lqDfW[*jqk^N^4<ﳾ2Xo{pP`HӢzd)T&8K;r.y'_h6>ڼ89~^JO~b(tUPrԞl$%&pW1x[E]+ dnKc$lyQߦS2YBA*ϥY7:B3 I?7c}sȾB<[c뀢a ک oqTk BTI9NoNɴ3󦘬ehJ1bU/R+F{ PVnJt~dLj\'mN$t4K?=A/'-.FIS۞MOJm̚Pl8kbo3LgzL`F1Z&~Hn~=,0o2,J{Tj]7ehqDեc|`I2~6wűX2]{˗l4KIy6ytB Bw!ox o+卒^C+VG?oa(y gK|l BTUW[I (~j͘UwKm |Yeo2)o 1 b 9Zө1s`r;DV4sC$(`2_ocq =Ph߮Fܱd6bm`Vm dʉ,)1u6Zpl sYfV 6 O(tB1l!R\vT6m>$Oq4DI '|-!# X!@wkjuY>͵f.׉;M~x'ZP' hS9ق ̦|}o+[گkõ_uOQ/3'zONA5>VG~!colc 3m"hVSΩ?ݫ݋ A'%AUk\wwt݇J~z>UGCQԑpa4ɜ$Ž%[(URדkP?L&)qᜌb"<X3dOB~]uqjN5$= $X>WQ[lQ}&98oEڒ\G1x=5rT:IU)L%.9Y/U n:=aU$@P=zvLȴ\<~́3%bWy2Z0ӭ季x'"FRW<BjCa AFRcڵ AW)сP=cIh^zeumoa&:iQ1T8rc4|}-C$Nu)QE<]`LJ2">e2{ )֒x|Q*T>%ss] U  8y 4+.K6@29PE<6~Y^p]K%v㩂::a2hlּ,Ga35V:M5+ѷ Ġ<( vV !m{,$?FN-BUkXhބqkT K%"xF+W =RrI _{ 8ʠpV[|Fo4x)I̼{~eReFb>؞dҋLktgn_PLƀ90-9'ؽKwmH/g %i !tkS΃3f b?-iWM?*@40љU,]-/loV.Ϻ').Bx7P1F.1'00QSNFm\'.H6q"Cs"A7^#ɚ ~1HGR B{ߪ`>mu|W jS۬K)fj'焆"jL/pXhXU#A}**`#YT~$ׅ 5aD*B`a>edw_Ч4= Xƾ-:oAzX9gbr|;eX'j~2Ne例wXjo=zˎZ*\XfK pk(écXE$XM4#mHp,FסR:9ta}XϹ"vȘܔ*ґe20 Dۋ “Z.s}ͣءk B)h\[]vI4P@p>_"2oCA^nlFDfT0%)YbD`ʌLPi aK /T1uo&5/uj@9Gn4X>a9Fɽ ErKSE`w<70`z2\r{ X 0 cAs)BԌUI zUu\QɭPu"q"īN!e%D!Hp^P&j+ph9$Q_AW!W v^^P)Z<qa8b:b~fgЙ?2A#S %?GzhrE䎪nO|֡񙉗$t /@UA`N!T%PZs%㝕#F-!y@>\ɤχ oЁ|ps= FDKR]xF箇ED˹],@0e^&@E%fp5錯@dzUQ&ʭ~Nsە[d!$>߭7hjvYu^/q(ͳ5ʠ_ir!$+hxaw03mޔ&T@ mOOm(@=VR/( }KS+v3Zm-n V!b/}MճofBŤF z<,n~78ฎ9|G8U7R+hňG;mv,8S:Ap)$Mkk $E#:wo8Ѐʭܳ tѸj &8WP"*ƭ'j9fz 5Z&(lI!㢋Cx+cc mޔ߭ny UWК?%n|sɛ[(BlgX8y'Hm`OuU׼}r^74¹wמѬ so;N ^Y^P%22DbpS([ч{}u \[ qpD̆}}ڜh[4!"ZI*K4k/͓. 2c&!$;$?u߽jL4֝1q|z‚HIɞ QI6^b8?9]m9nC"׸i g\"g$Nxz5eGrP^`Qqt \}Y,'˨J-}dzfאq6YQXCRJѡ^ٶw@6zۍQbk"]UtSYVF%+38 }cfhSXR#L[ yܡF̺U?iXw?l<~;W80D-SoKD!x2Y$-$i{}.RsdX!nZ=PѦR_&^EOp kL+zdԿKI闝w{a!ܔRv+(bpK\&}b> h0yϷGz lm/O-o&ϧ5 2PYA@+r?ڈ1P EuD;[~m !…,.[L!ǸnDHxؼ(&˴Sy]>RN Б8O6N cӜWL =m^6}KpY!!k=-:+z!J󪁳\ ;3|VO\9P6I;9$Fg"f.x?%gN603% ;- {@kqNy1W[)TIG:ٙyT'g"QHU/.[8>^^VaQ9 ̚YDYLe~wPOa/D+ 04utTA}W‰O rSΦUm9(l2gKFMO݋hAs8 H#~sllJw^J[>?h WH ^ 97/690'.,F8xjl )F[Hgg|O0N$M38]k ?;Qjnpln`?%^]K|13gL0j K=vIB5AH)Ubo4r~z|=|s#.¹=^pY~%Ax]cHKoy΁Ȋ7>(Zr8L!Q%Ҽ^E$ъm٩iO8A})06[){0?7E@$xhpL^ T0KIH]4CVwƖ v4s4T&ޗ#Wc<'6e>5XRzHT-X)|i.gmDifkG1\qq& *6LZ)z\i (~8%9+j}iɛ8]%X&XA[PrθvIb4c`>8n\o`\\+]SP < pO𡼃Y]<~ dP(- clJb:CV8&lvT-UkIMUn(1]!L>Q\/%آhf /(օ-Z⫴iRAĒch {%|*"w9=44̥hJucyi'=wa1W50=× +c(в4XV3X .X4q[,8a{>K}gU6T5X^]r-5sS'pSi*}T^ЎE NE58;Il`'Pnw#(`<^jciP.Uwx3>ߒZ4X!"gDq`^T9^43&h~dBkqw+~ wغVo)ŌH>Foܪ#(ҭȩk& \-L b XGi wLvI. 2o->ͿхI 3wنs̿xiFۖC)O 3񢭩`Ccy;{m@!nsV s"I?sS$ϧ1-0gSN#q >VaUL[zĎqu2LHk & Njx-*? a-w8>*є$wfv|qRDc"e=jMKwjЩmkg*N[^-9M KαET }sF<232hĺBGY%KpdZ<%_KuE_ًUd6Xa^1&-qv>-Kc&Hcr0 q7} xcy 1+]EpeyKOVr5ƒ0o,Ŕ\_[t'몠c6z3J4qqӌΪGRSGfxiGmH2]sRN`sd4eLL2 C]! v*NLv3 one=GKiz͵JMT K9_Ep;*a2j 1D]ءWV֭yGʼ1~󅗋m8f>Td&W)]@ FTT>ܸ#ED5cD `QZ}F ^!WZL|CWQIHcl)\'λD S( x {iR,|ߡi40U쾽+\"h4gZ+u9C:$^U9 Gzg5ֺ _h '}ծQP%\AJ[ְK2IAY7*tW]Bмqf˖inGw*biI/s]jxl~֠j/EE|ΪhPk` Gi6˜>BʡUY(hwy(錉״qYJKf1[+N*G¾ yL(}]uxɕV*2_2K8Z.=g£E0h<'jJ"AIԖL ăAAi쫴vZ!KȃY l#ۆSi -Y-4J±( "azé-N%NUЗ˫;mryG1\_U` D2g"oQrbKvux|:SS,M'4J˄V0 3NGK vȨ)Ξ#FPRQj>,FidJ|FD8 m/!.@Ei!BzHъz!vTqi&d>mP, OX b>'3XpӜ?ʮ`L68-fOCOֲS 8Z.BTwg dZ;}ڏ;›YB4R{~şXΰ㮪s4>6 kd"2f &4늖@)|BT5L\#_͸EhiӨJ6YL"dNGnH>1Zu 4~&-  CcLқܝmPOLK:*!m{'mg4wШuqc#ь|-s`N5i ,^e=:3_PQ2֢+N9͂0^@"8r`^Z_x*D -=3ݿa0֔6r; tBJ2sun>+IM42H\ļ"GNu/L<*;qs0E6'lQ1P Hт5{i 7ݷyg}+!w7N-핵&h(eyoz ѫȭS4\7:GRX>G8by|-Fhچ r"wϺ&ױw$ԕqy;kzQ̛-+?# &ȝ!ҹg83@ r[J* UZZbț|&^drgf4K^T_/:,% oYomtlDƍҘɂ<3<z GQ" Ϣd9.(gHct~{6Æ /X.`A5wo~<:F*d˙Y}Sԙ. r=N#$ՔyZ*&k9w_lNxgV 1 !sHN)ỉP_ꆏd:6_& 3٘L ZW4(9Qk^z0FFecӂ~oZ`&3gMSK=~S9k`O09-}~Y(`p/qnbUMpp9{3DdMio5CNCR s3sʽƍ8@QuM6~q؂ \/9j+=LK5U(K qc|m/6YvgE>i!oW0eɐ a(Z1|q;rta$oJfKlK,VL2OVL1C!w3g]ʋ&qr|\ }n0/$< I/KT4ikٍ1H^QD:12M4?a[$gz.x!-Tb}דVpdΰ}>>Ϭ}* x\ٲs v +gYZz6)0rn`y53ui|$7gR uNXu6;Pl` iO)9!/s)/ʮ,66Hh]w_9ُ)IS̍uyd_E_:NQY5+HYJŢsg`I$`?!g2E<7mw|hf^(ѽءsZvH 3n}C3Ѡ ?K[98Q"E YQFmDk Ae`u*ԇO yA~\0&)IChpPBVzwz,<ɷ:덋Pby Zt?tYA eLƍ35oF餧W/F)Kx2p @/*ӌLdAej^L)PcCRhOƉ~<0_AW0 AtɣV'4&ccbjq5LfI kngd f}{lo+'pѽ`MR)O ͵ P;f0C6GÿYF^4t4}+*Az7q/13ْp.ШZ{8r %F9^S|~7j$#uQ8Zʾ&(M HA\Uchgg4X RC2w5C]#3աlXb*$aĔ;p8:OoxG\rjs S#%2$A<b5Dcc 2 THb݁/!d"xřH4qG'&_)Uު8 68 kP ~eV!T$޻{6dwSʓo֥T Phz>uPF{5V`Mt4UTC%fe4A]_ƨD?98]}[)V6zq5HIH/q@l )GrsdD@Ej]KsYa^>{^ EEEe=4Ybͺpuhe5oQNe *%) +8Q H#~&zq;gUhj7Mx O탯*KAz4^RhXsIzpx>|")55>N[ 7bD#"EVttnRWIE\=ۖy6mqNI 9q5Svv8C .(>t$k+un'<4GU[t,Y2WHp. M fؽNJoZ`Z곭yJE@c|\^^ N,I>K?%=4G ` T+ݼ$rF:01A9_ d@{T-]mhك7$xļ+,%28te m#wq|5({Z1|-Zny#Aq; CcIE`~"{˂)~YJ ͶR*)Lu'H&ϴlc <~4TxIOg v͚'ekD2ϠaQlr_:u}#O'PccBq _J`K̜*F yu!;lI,f|ZKT9I%O1E}@k}I(,trU{ !}05d(֌3BKiffs &B&23νƫ3d妔}܊t/IqTz}r +C{EX/ySayek mŗ}me<: ϲ { %"%$CAL-ltq e4h{l/%O>7g12ѬAX#{Nأ #%2e @3p4K&Ә/(n.k4 *݀gAJµv®ͨ4ғ氫DndR<g,ސ%njk:2>9o7VfDQ2B~>"U!>Z6'>j afNo7^K$? M[$C!O˘r5ZnW( U[qibvPаa'̠m݋vFF:3 Py<@N*A~ƠPX#=4"(슙k|T87gPg[:X=hs\$8})VbW_ֈKX?ߍr!IS L-x2)(9ϯ"v*HiMrq"Cpn/+qirwu@4yߎΩ;PA+Ȱf#i}'\]{z~[KL07`l&PW!M!$YLmfn` AL`}ȀRbg|HA+D@dž;/{1n,Wn:V %թoLŽv);vεܦ3s~1Nl |-'m]nyG3 % !<=#0YɐU@a^vWҫ[gPbQHw6ЙkuD9|x)G@:gUB8tr)Ca a-ۦӺ(]@AE)$ mZeVh Exd+5= ?) l5 GNDH!z±1lZrV&D;$FۼB!D$j jsU@o:f "ᐖTL蘧\ Ұ{cS&|g}1+e^_5)y-/9aX5tost[Gj85ʔt_Qmgug\MDB\doe-MmmV^ (!B}F1@ĞXv6Wi\X^]L\n㴚;gsvG (Uۿ+C;mrN70Pk%yrn~CF>duTZg ψHoXﰿSQ|0&XWJ'> ɻ]b|yؑ |#4!wn.F(x_ 0`(ecN\yqؔ{ڿbMՙHߔķԂՒMF3LZXd\9F@2kw5fR?ao=dA7F M)>t^_v'wRXa´OVrMcZWn~CB[~jEpuwQ糄b$I}3@j 2 ލ!q:UrCt;I%M08MRД!x^}itJ":uvOkx!hF$NyR NvqO˔"n ~n_w>u쵺=>L ym4 BXx`AL- y[cl?t1z#vs=J͹gXnpDgbèuXufG5(BЖ ()H;څ'  o(zC[_wy,Ne%do^8DT s>.Y $}':sp2C?'qsϖ`< hDvLZE5t`HOj{']gs_!~LS0 _r2E!h"?[swR1.  W礒Rߵp xz>*)=2X+,_=eYUK n:f\b).i R o`e/ AqOH_q=>p8D-*<(?ܮQCh*WK8d_Css12?|ֹIR&{ɥe~̕5}obY,වZL&=N^[ϵ}w=9 ]5i~ـ:ఆBASL;șOPmM*=d@IU-lXp0TT%a͵\MOԉ!<ۉ "X&~I I:2x!EmT&JLjwsEnT|FFFBڏ(yUO3$Kww1x3R;?>偧ZKP~$nvl8Ql{)fnVC0;ngprcyQeU>z/ ^j4ҪM.C˔_N/1VA Ye%pdʳ2GP,y`.-LU2EC[zϱQNQ82qS>HA-gp=Uy뗟=]A|&GȄ P EciFDA{JK@rj7j %ؐ7p>;YM#LLMUS3؍:#ԫM0"Gz>ɚa Tzfy@tpk&'9*H.1/3lXm/ȇ+ 20;}@Xi3G }AJ7JT@C*忖Ae(ֆUB $tU\·ZDjD}2GFLW^MuCʙ"x.CV@WWYQ7b9!WgFM#x.OncauE9SzqYߊ?}Hݎ `ˆgi-)լջaE֓E?_} gC>97KH{cd2O]5&0kxDN$߆ܭwɩ]"Z1~7Z?3/cl,b> _'\i6iIgZ@a@y>7bc@H 3\ՊMk-8;Zǯ &t6Cv 5{ Mĕ{Hhe>2u&/N jfǛkWz}\xeډpp?1octS+ޏ"ݽl]h}ynKMUvAJ#l)dXTn fhq%2i>Vcm0֎$"*9zmUd{]4Z.Չ L_B(u3,_I+kNf#qnn%?xg&g 8˚[%;ޖ;㷀S >u{Q8Hv\].V=>~XΕ' v).vF[dG'J9 Mw0 WP.JE{fL$~CA/f2nJQ'KXFA.hpdÌژ\eЙ i_/4HޫvXo,\BXap&!qa xq۸P yԭ>WjM`D  8ដ!-`~$8ӝ},R^Lk2IV`^(~ &"i,׮!F?~w Z d7X }"8Wy#hۿYErGʼn1qssZtoh9ؑfW7]=[,x~FII8hL>E:4*Fl8WIi~D)N-*mm0h1{:Ғ"YJ d W˒w}NgƱ H$&a=(E,)&#q"VyXI8V̉En/ O(qxK[K:O Xlϙ$$CMzIhcҩ95b[ѹh9>m1gܢ[f8Qq}'m}Ma1I #(vmoPF+^\2,'b?/`e] F\͞8[+AoPYpQ>5[Q 1D5lp+@ZcZjL (!L2+"Q1OњuS $g+~.^گ)"WgC81oæV@e&GZ,R[ ?N u@@Rͺ r.@oܓ6JCzO@:U3|"qMي8Pb9}|~Jd`S,MfYmuI-FiTĹH\ ?BDpUE-펈)/7hE->H$*y[U9FKlXsUPQtdRs;h+!jG.h6$LikV h9wqޣ _GW\6)}5LqyLCeS%Trm&7C&=Q 7YeJPaܷ?vuo+{Tޡ+k Hrp }+s!q94Y1ٱ?VO_QSBp o>=F[@>a{QBI6ۡbL1tߋ%A~Izu]Y(JM(w`E@Ӹsa Li׉k.eT (Rx ҆ӽyj,51bFa#{`\ 6iC$}땊L~XL$ - w jy~;FhA1JE/c2.P!JACZplHAC/aъi ]x丅{`]oCr?`_i?Pme[6trۙ!DV[3O1^:a yXQ\FJ.qℇpXArH!?Ro-XԺ qcB ҷ!Y!م-l3Y|* DI7\YLIUeKt}񩈝ɪJ|w)71w@_CvUHлɇA1L_Q3dD 24v1ocWu8I߱r, Z3֣:1Ğ]%j?xolAZ/U5}K,E)H!mwS˔h'p]XXKӷ#?bX4nq[Np]T"y3g$Gᐟ蓰0$ΐkB~d#39E.yxf Sr!+I;< X\MQ[Dr!zyݬ`? n-ik {.R@MAZכSF8[2vb16Ě|K6?14օ8T>dTV'5/ClO1H<^ڒ$Hi[F[GE!w4]o%{@8ahYu㫷2~Ogʻ>9d[v*ў֋vq R-]D[1?Qp xKRtʇ"xcE"G;]F7liDON6/KRz+3H+>iR[VvphNY !GM6RG<Ѽ-7(9?5}xnQi%8~FIfB S[ƥ&f9wu+! 3@J`N@P}2Om0UΞK氽.7V9M2"]@7xV27\G Յ Tg"*s5lSaØzt%LdL4|wF` N8L7jMzFey/$Wl8P7hGs8Hѭqbi!YcnB ?g,'ư*b`'+Z+ڹYA%,GjO(OC=^3{q@oly:' dOؑ,D}I̲3q}Gʠwo/q[lu!n&o}vBHSD4lvԲgM5?ݩVE!qm8Ҡp e;2:**,T-ju%h۪\|zYSQ[j5e .4[,:kȠԴ?/g/]*tXT#Dap9vٿ166VgUf! I0rx63_6񼅗kkDҰiQHN\LH*q)67~(o\W {l>~LuՖϋ\칬3eF I)JIə&\X.WfI-95 5h!~-C~NX?'oPo1Q!ƒcn=Fx_~_Ai2H8Ej[,p I@?u`+[^zSHfhshhYSohYuG/Ar%' F- bt¯Ug玩 04)^>Dn2ua;S |bjcf4HAG>n xANF-<'y4fr>QpiliwE<}\ľ63bD]œ2{A ,<īy~5ceEෘ:fVCؙ[=Q$ |ճ0 u53M{)`՛K6Ѧ/ڵCU]K@v9( f~+y.[%U),@u 0a,%ocfQڕ`+X]#20C?;!5w"~zؠ߲ e'B땛ޝs@=0UF$iΩ;qĸO$vlqma s&+yy(W ^__rnbۏ'P]Si5"w!X[Lg}\F*':Ĵ|IӐ{4i"ъ鐹&[UxC +6h <;vw.S3CyЭ̯lİ! t,a NFyعzPZwSsr!rl᭩\\ܶK*bi+M(SDNB dmIC=I\`Dc`آh商P ?Al(Z겒{&rlKetئ10,-2}e|"K%Eʫ7&WHI3 ^BئfaaIx @^< B*_9ܒ _F1mk{]SֺQ&6TJߠNK6.E@Ie@]CGʩf[1IDdx}wYoZRyP:G x9h\U![ |f`"y缥Q:$uey-|?q `d2ejqѳ]|BA՜uAݨ7F`(-Oq).29qs.'#5>CgjMLP4M4*HsN3 5)4G^)[e9<&ce5n<449N06)L&Q,&ܹm?h ws@%ΔxP s9 <:<;-cCNwց̿vὉ Mڽ߄+dubR9!thS1 {N (YVc圛^4ǀPw{'H#c9EøLutGzLq^wK6 40Nm3x$5b8^g¸Y;}A[*tN7db 8j} .!=Ia >z0{VY8{䈚듃PGDW8RT )URH\°gH0B20V3_z,t*B96A=;֚e{8V&#b3 iÎzg ߎk>-+JjXazpɵ iwBFW$ڑ:Z;QQg RyPuFi8WGi^#75hiDjTEv{rJ,xV >Jy1ߜ|_)y\Yh-WD=K(Ͱaքzy&8Ӭ >b LHfy)ܕ-LC¡!,q)G~ų8y.{7zX$~-#KiK-BQW~p3fquvS7`kKn=3 Kwa+d&sO=a?C*DLonXW|[nCA0[ 7Htҍ(A/% %nS&-vR^zV򴼽fU: UX<& d?=#mwѬb< vMA H *(Ҁ+YiO쥭4 ͪ'%Js50hgzg;Bi.S]3*T l387}fjG ^Z9O <+qlg V0RŞ_T0_qNɑ sshJV[2 !\̸{mh$=nk'LF4Q# :[t^W{FaGր01" [BpՀ |C^t;q6IrL֢>Q~uoAb/ U]3fTa]`%}-#o|.@JbZ% q%F.t`-Btu$9ZN!cAuM64*9Zq3G.R&vneښg>˃DoԳb pXo-o %'=ˆ(uieƬ%=CoD\SIԩZTW&D y tdL 9.LE6LY[-[mSa\t22!|6?Od^.vf0/.A)Hi {D<4%9UoݶcsnH#rmC;A%Aj а虼p6|QA_8Q:zVS\iC;ڂX|[rO9$4A:P%Q>\Jo?bܰq-+Ҙ.RGBYJ{2_w9]u@)oՁqL XRLE; \"8{mH:NSy}Y6V5޽ 3 9pZ :GwYJb/39ѡouB:E,Sfs!qAs{?,PtpJL 0 y$`ՁAwxkUO!%mJ\ )ѮS]T-AL OXt˲NF7^#}̛&z'UfXu9{/=d>;k\o-K.c:}.*F{>kes*U?OW6FMPo|pEPtdJOzC Jd?W67 L+.݉t[%шj$lk#1ߊ Mb{Q**]T~Qy'u&k1 ]z gز0?A@Y 7pAa|P rkQƭR"C)vfV __}ݎFZ,rY[2F`BR}|"wN1uՇT*x ɢ[pPELR*!@e2T7W~%jQCG;=74ZlJ4@IVsxg$rLGg)2&qmxN x?^M_.¡xcLw . 18Pin"iQx6駪_L5#S;l"927iH`鲁@rg/ưOlW%v+E~ρ_(ƎDqif E,9JGu9DG=ZpŶ nk WdA.0Blx[P,[12:fߌzT U @ q?ib2p6痠>&SqK`޲L9ſ[^bć]"jI2- ~BELxRͱeaxT4Kq1Da#[z Q["x1A12 vL<)h44ܔTg.}6 ώ8@JeukQ[w}YOD rL) ~#\1̷qW>ߣ; FȊ_ Nׇf5`&1ʴpT| P0I\i0P%U+)Ah!*iHPfڰ(X[&AJ)7{|v =Ij&OR_@2 Jy_ Hɜ6OkQNj"=4ke`ڻUtA~i^޿K~{a" $sŞPK\[&sE$߸OoUhqF2ųMDy7ͥ6&uK\ugh1O6~$jS:@ts 12@e#D[{,j:eC qs?~z:KE/)aQ0INj;%V.^zQ Y%W^aB5V2s)X?/$sNiacע5B2tuZa/mi BJ\+ dqm$IKXlK3zYeϕ,0Lᨇdy-iCewȚ8|l!23')-'_ 顪B8TϋW5YR6bD8yqp[*osnY?#e+VvMՑ)(.%?wEU'pwe 1<:QY DWK&tI:=S 54s~,m" &ha {+=D]|@-pa#N,hST%=&ZYUKf}BZ ~r.T2 +rJ Qt1ymCW*#DI;X%$vsELe4*B[3|VʌSE[hxwܳUBb=.BGNSːh-dAsb:'U|:~RSh2tݫzقfPi ,Hk8/ hTY Sj7{N-\}6ceYK3WSū_m1e" A``]U"hFH^`09A ymteNZ0..MBv9?22YjShm%2&fa>^; Sj-)aVɼ XwWa'p|E׎-P=qxj2kj̓HMZHg)eι# ؋ vO˄!kx{<2uD3L9]Ut!Dm!|^Rʉ[f\塦001_t[+y3Xt^taRU#XEU_?rȎ[sRah3L1:nQ/}`~ @<r> G hCKқ1}btX4J@ &su¹A`a4-?<)o4PIcfwTE=NϦ*?p?xιsf,}֯[>fcmmSh{(ۭk8 K|ΊkdLƩ/uasj0^t=P"0ZPI!V\^q?̝#7E/zԚ߻|'&:{M$8p&1ABsrW ĺms(V Uډm5u3 /ANǦK0/5[F,."N+p)/=G_LV)i ?1.[~ߟN\~ YB@"1^HgiOh? tq}~ڤ&=2MctF׎slY._q#ľlY<9sE9fЯ^jVz,y,3ٷ]R_'gUg^%XzeYi4 ~pэfg+Dc!_$!3@jt@Fp [+4@U%n) WiD0(׀pi5$YqmoG0+/<{W־:_7DKj$޸hk#-,"అ}Ť_ E;p+3< vlQTN;#ytn uQpx^B){U%pe1\$>t#4/RZĥ*8k|L4ĐnQdu|xs)]%|joI$M]7_8 ޔu߆D:X۩1OdSBZZOSQ,lcS%Jn>@b[5r"Lz gБ,RE:0H}7F9̃Cg0c +AX;*Km 0J+PI71mIL>o}QV%ҍ!) W}RTnq#>rJUν#"!H=OZ(kWU1)QxݚB- ⴑ}* @: ڀ}r})Ѥ,-t25o ӀK2ri uS 5B9}up{*8}7^r`vkWTCY{oqZ=P|Y@)?`l#N|j&8PfH"yK|DtĖAg*]S0уw}{P88j|4^\F~ˤA:7?ƛ|V,U=*I1SxHe&h:f [1xo}I\$By.54sfAKqv64Z2DKS!Kbq'ORsUA<5 X _N<8_z-(S@ܴ2A¢6tV2(z@6R<BE28ΏɆEoq`/Q-y3' KKM\zyhuAuD讀5N,!y7Tb 0G:[oM@rRxM2d܈"gM p˝V7B S3ꟁ<\;@"i[+P[z݅lc*}A>a gF)3- {,I;U^@|)yq/ k1>O<zNދJl,.A HRDOY,# n?~SÌG"3Pdf TĠjRH\˫7#eV0+Jdi$"޷-|HLF٨;RCyfk}q^R"1f!"ʲARJC縵~#ZXoq$(;^` ^rJ+9+ID@9ϩNekS5X d$(}%(^>B #>燖0Zc=\t;'(~_5B\9Fw;Dk~% Vi70Є4Ucغ*M`LYL, q?@5]{(!,q0n>$@}O`нT%ҸKVJPDT-?2[%Ϙ+Xv$L[I) B'kOu D77@[XM!t%̕f-Ѡ*?!zG<渐=> {?L(_]S" <%½&UI>:8%>!JBGB Q14l>U=GPmq6(Nb#ֳˊ1{yyZ*-G‚3/Y82{/ik6xحXPGRYg[w{Ma%MJ)sFcKs熮 w[| .T=OLPGD/X^޾P~w?W!Wx2Thjɜigy|܎Kz c/9g(+W;&]*NH}s%rrqiIxc: u)]K.j[8Mɛ,\*BDTP8Rk(Eka3D|ï3'U1S*!*&^ cczXqP@񉮧87΋59@FO{7 mKԗZ );EmsO$>'x *B縬|N|=.7e;|D6Byk]XEr;Ji|O92 (JA0:S>[ȱ뤓МV֖{ivȗ{*74̃Y}~]t65uDnHDX1yuawB)aYzD 0156%&׸+F?d%?Yb\xK}ѯ1GU;Zʽz,8G4x:R$m3 !XXDRO3+/[jAY*]SQ݊`3iz$vtV8G,8؄Bss_~}>VC90ֹ <2>64}7ϫ+/N`q7Ӟ nhFp 4ɽZH)fH~QG7:d8Im%eWP(D@;$$ԲpU.;Q7UͯN*_Fw=প2OF+2B m$yTވTM`PQGo&\6" BRnDJ n0f}߲4ĻDEc'HA]RV1F+`"}ce=V.a,/ג4aՉsqCo8L  bMX)WCSQS=҅H"WHL詀EA$ [* knFb΅pO)tmev,+#TżyP-~rS/%K 'v= 1WEݿP5Z0ߡӒnlپ{EĚSOgtiCf'@S=%fh|߾?Oğ5(ؤ $f_ѦcjZQffMtS)P!ZgL@Բy+[+}_CF?4s)mhxyZ2h&sƺvqhocV'fu3Y?<&$3}@.8Io.Rp*o5aƍh ),j~L}G({C8WuY=(CN0?S٫u% N{MX 6<\ctV彣ׁ엌 IiU|'c?ydf#oX`.2#l!Hϥ@/+cKgNH gEe4:ȼK\oRmٞUD[} 7Ee>B?ڥBeSv͞! 6c!EW+T;$orabIC^/f4=Y~Sl熽[tC^)̞g'+(+1f%-RݛKW*r_^sAk>gbsLgc}HMɲmP &#!t*P-HMd|t&ycA0ijb)} Ƅ?زwBUnɬQ/Ud8=y~0-&Ѵ<{l)\g9{qgj.\5ڄrzD JJ$PW#nr,uLmGiXQ^g*65õ\Cp@i"$ŔyJ 5S1wGtҞ,^.ML4Dtq\ǨЮi JHHxbeMGjLu7vϙ$\5Jtl[訧θ[i-S> %y:[/Aa>tg `3[=fKAv׋&f\5*TK5M@*@p,^hNz)j9&vz Ak}0]Oe[&P,@~wi厔b%m JosT$~{ XE d @Ny? &;7z_yuA 7˒ Nn`OBivxETi;˵⼌LdE+Mfxyˀ8KB<U a|wB]\ʻ bRHkHU ,`AOX7j Կ9N{ﲚٚ x="s/sN.'oH)UH~aˇy--5ӇKfRi\[PBeoe1t *+m}\}-7eVBw{hLc$HD~"PH8,t,rWgس ?J^##VR;Z2o A14W7+6N,I&\QG`a aL 7N勝ȍ<)T:M:N{7R]FlLUӌ17lede^Gݮ۽Sfi'F9 éx[oY@[` iK!B lN+r3 `ѻdX7~(^mc(g`yquҔY6vF\Jg6i{38ϒ-?|dAI*3L"Ez Idƴg^@wBr(sRR- ~Pz{m=TՀà㰇1%9kډW/gC޸q&" ҆* OH_ *2nB؛J| r}GaC BuE:R ^Fg%]mA)<xI]+>Z_۔h(+W<Q}V^Bcd@] XZi3ZO_מhl?,Sb~Eal46ᨦWޖ!yPB!:%59Qoݖ,A7]癦 W:r`rF_Fo2bjsF`{FpdMGu~3MKa<"G-P%C"XK!@M UX_:|;8(|P(̘`sv,/kx[/t T:<7TKAUS"Xv dW "1pý X2X\ي`3=9wHjv >hGh;Q>2acuAz<{KIxCR m@m;t";dM B*BU#u[5qi<XP;WJz#P*RE64xo i&Os=B|,ƺ~BQG ASwtx+ȭh)vjV9+WxU?.vѧ>Ny2^?Vdu)\5Be9QXp2iX: FŰ!e%ߖcS*3i:n:5ӀiBi "Ru'3a~Ra^=,Ub +F !l5H柭(֌(YaB?+/P7A?y{CMĠZbz^N"!p<걫Ys  T0&h#ZVb84U%_.ً)M+]> vRE8`)PXs,IJ|7kIx)8/+a_ *"9ˢ4( ^~6wưYx] g#26f2M.c>^vJGr#> <]ʭl7tJP <ӈE5 e7[iAhkθn[u`FioӤHQI$h^V/ AQy4 tbؔMvGUB|ReTR%?jtfRܸi 3!L)gC9 ^)߷5'8QxYĢ gYW<$om')!tnĉ :2W>?64pkhg^ɫ:MU)SR05fԺ VM#dܖd#:%ȋ+^0e('hI!i⻵{ISW C;պvmڬ9աLV5zRrofź&3>'𛲱0qr÷q8LD l"sbt[a^ MN8 1;-o((lBV!"x`^umf"vIb7iDkIZQVx"hʤd'hI2&G)d+]j@p+(,<,Y6ˮ,iN.- ̋m.*WGp z9C 2t6!0s:T_5)ܑR 35Yƫ вt(qc1Y7VQ;xㅴ|~Ֆg^9cs0 <@aSrAkkj|5#LSO7YNU< ʥ/5hHWЎc5 L|!5~_41m6̘7zS6D26X8NDdD ,,;pĮa;3lԽ4VԘĶVܳA:?1+Dy`V,9j#MP+HM?2lX$w2RśI '{%1s(M]Yd7d}+RԄ2x~E ~J0tZxrf a@k>$>u)_QM0[mHj"e9 :yڮs]OVC}CČ<ɨ1;')KRAOmG^T<۬֋kP]Y*Ӈ(}xV j\tϾٌL P]ä;F &|bvi#p 0k ~di/1B&оoH g@+nKeE()3z.χ`[եPKf R kW&be) xEQ{0r[ T)E:FF/(i\rҿU"IhV9{*$,&wv*(YtO2sjJef(;b~!g^!t,PzrpA;3,?"h}E= 4k+.,!KFPRCܶ' f ڟbG֜[P?& x nj¤ L*71i~ĝ]PcKHݴJq08k0$U۝un{aZ9ڰ)ONߐz>||7Lޝ˕ "oŴh־HN :e90o>ոϨn,<, @-4&K 3)ir̹2ȭyp7!˕ʯ HRm|[N LPuӁ7|ʦ.NcOݚ8I!F}@24뒀j5olDaz53{mx"8vNyP58_mɔ2=ok1w,s, ΑBқ!BMd"ӽa9^-{2k(<抆סSP@L!a}Y'ߔZ*w26ɦFgc|0 ɤ?]I01`:{}r(aWAr[ o GجĀfԥ$*HGNt{ΆsC+58dA{ ޗ;ej@C3"W䨟U`& 儵X LfSdHȓE ߱k&LW/4!DΞ?1bȠ˶?' |+dM66+qT7|3yTȱ[haaaAFvtUܫo;Q+o+vגIŇZϛDI$p@v[4x#OK/ܓT✼`Mhooڼ 5"'68BAVmkM+<ѠO8ښoD M=^|ΌO;w2,Nx6:b冫4Eq)9s}*Z.Ki;|-4z!Jy;~b謆K=';Yw,y2fHWowTթW[+w G/]7CTCTf}Ҽ%zET*AAkL^ǐsl@\%({m>sތuA@H WX7aRZVi\d>fd>YY8:F9lUy{?d"f$9Jf,Uy4wOf̍PcۥyCbH` ѥf jdTFDK蝪E~vR·;I7IgQb@r`yrxf 7I#3n`PͲ$[,8?qďeC_gZl]1BNx5TȤޟ0mb]<çHϬ) փ&4". BayX#N;5nܟ5]haW{]O"oMFp.J( nɧ@rJâ, FRv %:T:1T5i&$Xt򄣢%Ṅ{K\}A<"~w sKX&jڗFV{Z+"`l"q|![jjJMǶi8 m_\vwR\ǯ@%}QP`5lQ +m`|^.YlXG-N>} lwu#Xi73"h7^DlMcG3eLt. S,*d'%UBfJEU˵#Ns4r^58g5o\ʊZ U <ǦLjp*O~w%)w֖QNYl4;W@@ f%lBjh4tm܉AzЧ8pF& 3_fiG*twܹ%Bl/̈̒uW?Q;mֺ*ʮndL 5d^bIo$+ /cUzoJ6>3,̿UCgJ}iWV,yOvݍy4-G]0eTk,ġCrۮ6 hf,yxaD[DrK810p~M.@S&U,٠/g%! ˔e <`'@ќs?-Q6J59J=ЁiL,Y 0ς<죷}YEa2zyN{ \EiO%a1<e8dY %$_peA|{U]OVS-XL/Πk}&aPΘm5R)#n32:"[бpE&jv^ʽq %-`@3obYMJEQDl掜n F.lƟ(ߋVJICbdm1>erA2{!v'%t ;/gvLL x#@ѹDU@* !HJAPD)2t֤futM&Q iX16aWIR}?+UP1kLUξ;Z]NFȡղ`h'ЅljQ~ã=WA=gU*l,q qR9mĈ$WYT[/7| ·r™jxRJ:)PiH 4:.-:h7dHad!(xQ,zl _T"ֺo*|i*8gqb+lpX?}sx H ҨSmޡM2ϱɶQUo^q\qO6^6qcҖT^$)f=(~^9#i#lq+:%#ծ338ea}Q4{/\e~ EO CHכue3sk1?MMh!i ;4]P*]R̶5.@iSX!>_PV9sSp rf)_-Q*EX:8~=S&DDni$gTyǠ@)ArH`וTHUxB˟CӳAEԞ~f!ܕ#aa{fx&vC"@GF.d0 aylw&V!완VX[dv׬uofѾ:8B.&`}cӶ'~L;a6!c`Ѡl&~ORSj sVgY r71eǐ;PoXPI,#nE +<]\HrT|ea!Zt*2Lݩ-BX`݉7^sSKHt0i)MY[̐ `PAd 'O>E`W DEu!>F"k{)IB1VV[.KVvCi`}Np4rыh_%'zzތ ^ah?p{_JBt E. _\Uy79t\<5} VĘVfu5l %6L H)=Rt=[2X3's+uzY䀙:eՏanE>AKiϰX~EIJXliiA-Y0F:%<W)&҆e$둊73e8krp0<UwD)jђ6T7"*W>:`ܳ4Y8sCiynbUN [Y?sp9eԏ&\g}55z*FO8 05Ǡs0?J1m)g 0o`ue=>.Zl9}툸i^c4Ks.f:,U£iźGg Q@J\xc٥3-J=Y٦3d@vf_DsU_f#ܝFZ%do{rpuxdHhxM0_VF+;2` }Fwəv*: vdNG9N(Sm"ͦBdR06`+>QڜmamJ2sd!f;I On&߅U-5Pj_ng c,At⊙Ez.ޜ/T]DbASTQeIgrj3*S|whSv=(A\2l`tD骙-2sFPXy–OQ(_b/ݷvIKl:%D|1gLOS\Ȧ}='8-o 2Ti9PB3r .|^CSCfxWAg w.PHC>tE͡<?oz 䞍48wJO_ jet+ D^Xх:,4iBMqKLӀ-OC}&"6ϝժ\}g G<ƫ7iYoǗ?ЪƁ:iǻ?.SޖH%}'‡- Jq4v]Ib{3쫱@!)6*d%S8c*Xtub,+"z{뉦1sbRDMn㝝ɑX!% NEǛx j,ݹN JE Zt2L&~Ye6<;d7~OVȚ+'I*gqWYX Ad;E e(c3Y:fUjԻ)C[S\UFgvձ.?W7{A<3&J^jK,6[;QT@D Kx)^r.V^Lxno򏣵*a1R_Njor8x\,~0bbxe&Yz;]d+yBR'#>#3k͎nPkgyx b6E/X U>ӦhXO0HU}+,58Th0j0 n(w̲|&+g k)`sF"RWq)ց0T1yKGI¾务 iӢPjd>3җz&+:j92ݙо~GO_#5-BbG Os#fǰ,^y\Mߗ5`L {X]VOu ۜUS/!Zpz/kE0:Éۥ+du2*ܪ `}N=}qnIcӘXzz Vfv;{$Op]JcX\M1](&Rǃ+ GF_Fdeړg-2Cpfj_+a9up.QALy3D`hLph_YabSDC"pw*M_N)!dG/65 ™,ţ9b@_qGHecMPI V$}IbT]ajd5}VA¼(âWBs\_2{#4-VHq㫲glyp5$YzTvizRE_u*~!4 6qGĻ;{/;ˋ뷏G#4E0XуR#Ѻbdӈgȃ5whBT:uBgI?.%rR*T/uʸǔ$+r|^a›ƃLUߜdd$V<{r&-*_]:0#u$)A`KTJV*S)ܓ0`PI [+\̬ò Ƅ 0CD]@dL!J#av XdƲfN GKM8ga(=MY 唀ǐkMW@Vqׅg.'Jym~4/V rrGނJX QH}E"w_KG~@kWia>WOXh ftFf5MEH}cO>=6-.Z*ӆÉ FpiR@r=_ )̠H&Y[XolJb1S< }TGҸY h6NwLȃDSB pkkSPUVoEL v+UQM}ٷ*`Rl|r׬ vdyoڧ2PlE"J sƢ Gcǰؙ*FQc+تkjġTiЀQ18#RGAp䘹i֩ V`/֯/nuArƉS̷>R\BG3fj`+,6 fRڠ)SXO{CȦsh)J7O.|n Hqo< S+8@?&v31j?&h.t$6 ;}iCm[ />nBQ.lɸ >]JA,J8vB |R|nl*o9S5w}VboD:+pN+NSF-xސf݀Y eZ /.|>,˩g /)/a@B5'/CN (xO-B\$4]TX!DuH 1u$":d%#8_YJtZf#O(b^K'ǔ1HZSS?MA$Mcp vR D53猒HmezVa2vI>FG_醧$c(mT^!1˕-.Z#JO!ruyL!/G{ ^8[hV #\QFɲS|N65%ϬD_[7Fxdр>Owr? LEVt#{팷nĮR>/mz$CVj+[xѴEvU+IEbݢbsBL79g鴰]ّ^%ٌdƌ6{?{v҅5{H1=`ˆP0sy3ueT {p2+iW/٥_I¿l6>[f3~GhH2A# q{.D1♱ϡ4<8-8Bē@\nA)?ہ)ma;OSC[SJA31fwyapTnZ͝IjFblqXup]i8AXTI53^YY\o╛p"wJبjq" Hl牮Ѐ9ey#BPOb Pc?Yp<'1G] aA]UyPE;=`q2{J ⥯m:s mK-$Te'y~f+Xҝ䱌dwR!3=ݦu>XjӰҋhp{ L \Biػ69;xpR?%Phܽ`+u[tX 5 guM~O~w)Zq#&ryQK PaLa\/ ;QٺfK]:϶B~0a\. Ij̲R_Fєg7rkOF(޸VjjҒVzYHt^Z'!p؁q<i^`FgPrڼR(N?=QUi}c8^k.&l>vo<ُ oUvF {hnNJ"һ@=I Fpt;'J:, 7~0 ڈW?d]cKԋ D AhPMw~yn!-eJHPI. Z({, af6kCAWkH?c((,+`8XtpI{toc&i\ jS?*#5FRLso5Wv]Ƌ*UQzT lN|.r'eVӥۃ ->ny:u%V%;wѧY06w%*%FN#2$z]CX42kn;yeq?Vnśӻ  ߴoV ;nt=7',\=2A5I"WB~e M E9 vϮq.[{xyҀO i{?y$k:)u u N PQW{ PagQCqo,S@o)>EŔb#/_h;}l;uڣBS%wm%~@rݕCQGz׃W:LŢ6#O/,h'Ŕ/(}iGJ؆pedF^9E7PIsc.]6i,gui֏DORc6S"xKw| ]P[=()3MVn4xX~6 eih\gZs$ R~>ܞg{S yixyH8]B#d\c8(:Ld{ޝ}D!:\ҘLWL?X6!cuq@IrQK6WۨM~܇pӾ6<&!˹DD/h+6wUZ_K.ؗAZWucM@kw(qr/6[a^~t6 [5JIbY Sw!N6H-(BU[$=:e:Lhg;ݧBJ DWu=$$!ѯ^B)ޘk%<[uZQ*QÅ˺_bVb Zg5U;PE )qd\T> U/0[\Sj)c4 ,˭ܡFKz!"D;WER#hz6>JJ E<{g=%>͋B&)ko8hxGEp5ݐb-'kn䅷=0l.3-׉x@nbZHHc RG^廷1,m+!8u' cE JU!h\oL4vs?v [FIFq9+ r?TyG_*{C0RNk#dH!Uv;!Z` x˭ Gy 5Pb>n1:d;otϪ8zKdDžja!ݗFA&ض^+T7GD|g~j5YA^ Tb(܁k>ņ @/?fTًaŽŁٝfH4U !>2x1ʄѐr/[P0ɸV^CӴgnl5Z}FSLo:Dę m57j0KC ݊&CHRiU=fiXqp砺1KP'@*S6kf>>G$g>3Hp׺޿94U0X#0Nk݀bOp琠V@;DθePVM}; ˲%GT+ˍ'SBgb%z$잊IRIjtVUZuD9gK]E(ҼvL !T6+vGIָLԷlf}ZzaX.mjf[Je yʼn BߧEP[= -vQ p/HKix[uCQmw6/{բ*@ Ѐ)Oצ]s;H|<,[J]t5\t$VxeonEHm D~^tWS2g~kqġT$`|E"oG$Zt֣Z[l+S{T"fVlDFӷhƇ򺜅7] 5u5dLV A50JCw)0"LzIJ`ʐB #b(WA ,Y}swx4-dԜkލ~ C9|r\3]1%gihuxp=$FhbZV[E82S-c}/;,\JD|[*>?GD3#Iu{;CW&K$PozVJE7QXk~3$.KR S6ޮ?҉V|]lt/i=GڲUsCF-T v)[.O'_>,}J|j_m8r]7] $ BX圵UUL[7jЏcPi{H.ٸ=sǤt5SxZ(cM˹mu?p5T۫ܶ^)7\ڕ}4&dx"_Hû+AVwclNtD(%X![@hB'bEX&%g!:X'w|h& "$sЅ*șYD|:?c/d?5@L'Z;ޡf y֔\PoȬCh9Nt:Yh$iMm;/- 08FWt|=&(Y B;X+%(.tŝ $)R7Ko4'+j69!.bMxq-c΃-M\*SoobOqkγxo=26]B$=h/;`(ENՉ']ݲ]FAm޸Zw #Ѽ)T#A];̀ۈKC[]_i{y%c,k2kul?yW#lZz+FxsoGE8&淾}=7B8#6nG ΉD#`e~r;VꀙZC*Ũ 2X #y1[_Vf 3\jB_3)uj/_X e[␅J/m~EF)"@I4|~_ڊg|!󪸳WM^pB8:Cm=|lAMЂUMKj2P+h4͐Teb1_v_ݶ7+uh$/[y04iUEDuƃT0oJ> FTC\uj{{z/߻_ђA͖֎cgAwl&6Zj" D\ڟ AKv ?mWI,q3`M~o Ќe)"[ìmx(ʨ ֌tS.֬ $]Uyw}xV8u"q{4bm5>UE\>)h' U7E"ZVW=Vر\h|$G/B"(pHc^\F}:Y0ƋEC|W.6ut2,sh 8:0a,.?V<Ȅ֟C?8QLiGUHMY'E*4,JgVwG>sBow^_Sso *V40L %?9Ɏ34 ͗%$EGt^mtb/Ѩi+k}'B&}NS{i Y JS3m7H_z?L Upm脬7Clߢ2:]ӛͥRxYy3Nǻw'Q L!9 ]b{M”ٞ&Z6 pH5qgdY0Je/-{OT66ᷛ5jyi ZW }w9'ؑkq8zK1L.=^X;l59c9к5@E&Y >Z^C cdբt(;z-Q~kPF%>CϢz9|T\rg' ZTx+B`x~`2IZ ,-X&QyX) '1zcs+XlՂMNܴX'E+ٺ[L)>xkCOs0_jok}N-EqdhW !*Q9!OO$KxA\j MF#g2Xt/UDu?rbɕ|jM=M_i(^=< v$NcPP.?QhBJb`.:N%Bm6ǹZVK)VPgUP jv%tIK_EYV~Xr!$YW]~!'K9Ū$ zd8wL*X\ܞp 4oXUU)/?jǔ ahAE e)2>N= Xva9(WD<8qK|;Lok6 ϠI-~D_%QiPͽ""(3.v󺇼rAN΅&Gm{+;%ɤ]9\퓍ʪW -:xN0pX؏,eA*VB敨5.EvNĐBτ|yC"${ !ϲńoF?:t(>Nic\gfOvwB"%0J1~M6~_r.pYYUF qqCA5G$E(sC}`^VYl5 $sɌ7|/!9'r2=HH.^)osч| ٿ@|`s{]3)HgYTjN!&ֈS_[]9~{@BH&1UE%4KS|ƥK//Y K/^ 1 힠G4*ڡ+yH`Z ҝ+6LÓk"8.#⫂n2݇ygB{e"&F"t˔!(*icxP9څLs)gTMvբU*%2lxK#wk%g kO Ĭ1d"0I2",ĸܔkGd:I~s]5dPu!3'~y yt3[3TVC`y 7Gv;cj<~λ&,\;܃n]`Ѩ_SISD}h}aL)~^Kq=`Ҳ8FbLkuV I3TȆ.*܎ˊn 'Iy:;N |V\A/b Ъ̄ܗtr2ԗ9v';Aj:ڛ޺V:h ao(ĜC!tJz1 `DEIސ)ٰ D$L?P}tTI#ʳՏCR* W{- G ,;v/T ō'.s<8Π$K4&b`haqd~ FK IuUU1~D7'(ʧ1faɸ#81L0!,kM٣Q4-Um*>SL^pmExOd\?rq?N'9F"M Y&bYv{SPdd R2r%/p?rܘg:$:0/R59[p e:NV70G#&oRs)Itzrj.#áq;I===r+$l I ״'h`eE*VHxu޽%j=jX=wU$'InQU7{=kw\ŋ 9^f+fq/U'N,.ͯqo,0"ANm\4yBxׯ?q=3Ž͜;BګʅVTbf1-r MA$ ?Q6*9s5Hv ^S9/A\2y\X>-^&pk إ] ʄ[)aA/ 2MEnP~JlYmxMK#WV273PhȾhn$?\x9wf1Yߏ]04y(%Ĕj\>=KA0aiXSfȳ@ˑ$~5Dqf)+ܓoL࿹R.^J/7A$,u ZvS o]ӯ^<ʜa059`L; RgP4jcl vf6 aM>oL?TT+_!ŮvQ0vD>7cw{tc~S1wk0cKZ@7Ko Oogb;NxK=br6xl}E#wgSbGU:p\J Kd, Qs -)]KoF T\P?8F @~KrXDicoԔ]ڜQy%6M嗅 5ېԜ9][p)V$lfM4سR)ڙC4& }2AaOhyQ W\A06OU71MT.|/cmF9jlRdr`5~\牷I73a 箁 L>lلsk M~\ Dw[ sս79 nzYJX4s_#H!h$ڞEU`/~p=.3)w(IƔ0g?ʼnsJD'Żw%ZbׇjWöq߶e3ƥ 1'_3[N_a#7=2ddfz7p!Zs@1a0W_iZH"% 'j0 G|qw!C%GzCD1X֌TWk]q*ұi#aɿQ]q@LB7!p"Qw +]9U,`(MnRed%Mu_>}`j橦/HW՟hOT'23vik&Ջ\+vi%Vq})Ũ'A80 mǴPj2i$QVݿ3.!5]$hφ®$ Dž|%&滪#PnH3.tl 6_.=Os(*୼OH$˄Z^ȹ#pIc0W^HC0Ѕ7XZ3WWq!+jRw Ȥ9ß#Yc⧄Ѕ!UD޽qu*ďtyOcټ0 6Z寣c\Sr,Ki-odR#XBW3ϮywM6*% e3<zb R4(iz # rn-戺9> guGx/~_$(KG/a@Z'|'5dIŇ  L7Ew}c<.-x6!pI=J28UQ)՚1L '"=e8͕-ӿtg x~5TXR FB;J2Or3J"Ψqi޲IGAHs2v۳\ɒن>X=.ji0aP&sDMw [ȥG<ϻinw?a6Oתhu*YT0͘lܜ tCۧt"4AO"rؘ瓍%1ۦqv·HHbb9sMW/ n"8vZ+>U BB.ʦu7 n5%sf &%od5So#5 Em6/ix c+tY'bL !^כNlp-y dȊRwSKe01ɟ {|!)j 8䰇unลR%$䒮\2ؗ.QJX\7KWis8R%otlcrW  XN|"5~2u>An @zbq@]svҼ}}hA {m ;| 9 ²K=~fs&$I2Rů6n{B{B 5$q?KL"yl|ƑG3Qz89[_f§R im:r/WƧ(tqm ՙSJ_~,7Ŷ"inFqn\@اb5UG /.Vy,0;uwGƨ8Fb] lC=\: h-yqeb#d3rL6"]H"7ZұkR˂co`ÃHJnZٛd3;7:",A^'WR7j6Z:;\5}&esSG]V$j+fuIXIScc&F" *-+%x=mc |6Wa>vְXMrݗmS2C703>兟A"o(ӽ B<#&JRUn5Y +H k k)^v7Nm ly?SjB=1 ARV'g&gc e)Ւ@= /,:!0h #޾<Ùt[X_Ȣ$ƞxu -Q°,ێ=*M(fN'JLX"ܓ0Dj@0𱦏4QFf%mkR'BXN3zUBŸqCtUgLRFtFpI[v_ӟoiXy[s>n*kf-!f%h&$uFj{(צGQ%f>|]$J(,fYj/!_9rk")]90$0J`9/8 ,ۑ'5V;7Ըh3dzvEȃtg 3riA*dp}d._cYH}&O(o,3Qh&Z>VH\ 4LwYOim5gJex-STqX01|/K V;jPoFX.%Tگ>}ڵb>fuCa_$5]E<{rUwׄ-KinDW|Cz8{{ W$ӈ36#D"/5>4ic7 ^QxggilްЪ pX21ks[/{7E.Ѯ #c5Fd55<܃b/wbˏ!-xV˥ Z`#eײ;* ݽ?sy_DxCc%:ƒ0 Zd:]rL-=$6U%} ްZG 6pi^:ڊWr,RR;_bDk!0g Y>-xA4n 'eʣ4w{ fFn"JL?I|By*uB hC0^TeHn9)ɺC`AY~3LŢSDc؂{;n"w7IcU;+SemFT`RVܡl 1o01F*s)L<+#tq0B;irQokCw!B,|堃^.Ā)c J}&^ur\ "{0V+mBֆJ2&it&L6 Ԫ敬ۅD!ak6N<`BE,Fmȭ=%Zn;n[Y^g0'xto!~ xzjY;,36P8gy hgԌhJJq{0!җѦʯP>GXw.H#__-m*>HwP&K](n_^B$)hSl;|C󩀵l稊(B䣎}} /IoE,Nwܖ٘ .+ +y['yVֲčFHXRI)UAƇ!6 Jpg2V[ULC F a!.Ҳ6^ FX$~{N!QOlfe~?Qi1!V!HRu]EP,%  S.%?Drnq[H?;[K-2a{Mfu^쫯סaNAiQ 7'`}u3t 'H$g}fp4|c(G#/]U3pgsHn{K̬!m~q{<1r7kgh@[_V[[EQ3̀N!5xD_ǩcȟ}puP`fvS"=/Qbh![O ^^5((ϲ CU(eI2( fDR,*yQs[;~ϋUUi5iPObm] zO1qF,/ocT0TCUsM[32OE[ώ-FDb`{#$!_z Qʸx;?yA9?,r9nȵfO;Y7g%s~n{+@8G)Om :i'PhǪ< O8'b#lRL h2y*$P2XV-{}R:(N~!ُ2SUs[;M$^5݀8 uw:KcAPyJ4K="e29!p{wd'eSoZB(̈́ ". VMȯgF*Tוl0 }n\mQ2St48Y]{]x"R %ƆAyQOC+XA+{kmϾQ.0^3l{%TEt#"*0{(,63s_dm-3[-TWETWp|c4LZQ=F sl2*!~[?~蟭x٨'eEW#1<$@Y|<df P"<:=:K^Snh ԙ"kQ[.9Z2jc~/I3AI:uR3& -B6-aGH"qd#CBz&{V*R",n0 CI 5a$̶bӼULd}Auk!)I C77֑^ ~_5*UJ; =dAf¤WzC7Dk,'ј v-wU  GJwn3e&lbf:to{O%%DNO"tZhBaN"(_<ps$&H9~oT8 EE -5hiaxߪ6abq$:wQtW 0gf̣) `A5@72㑫yg&t3?pՔcuzW9BP_b+޴XU׷@F?x8G(NFş I( te-%msD`Qg< ,=s{!ZL,ia[d_E37}H{f-fε&>9, _Y jnkJL%#/Urr 1bTYir=D_8 P8W{.2ڟnw77ݑ@zׯe<-6<ϮҌϳud@} tEc'eǏlnh%Lw<&DRt;oj9B[w{)jԶL)Z}wTUԂ:LjBf.jo"@B4ߠޛEvW)v1^Eg{ϓ}TIk eovƵJX~/NR+/W)yK;ȠH+u1͢7|jҍً U1\bL䈼\{Fs؎JA3網ѭ{- nɯdDn-!HRp#a:z4%;}g !3Tٙ_?eF_}ڼJ(pSRRri}:blūr 1;l&T Lz7M]s#Wx{UTeˮR(~˧s.`!=&O*2BNMs603Ŭ3BɲPI  g7  ́3V3sn9K0ʌ0hHɐ|B#©E=H& BlƮ۬:ot3f~d *d  :؞M_+P4|D~ DjS0r }v%zY)N^mzM1v/[g.h @aj&v#`nO_=;mb.~FkͰ~Q"cTʬrd>AVZ#R²hR*U+POjcҼe7"8waK1v~'I/3FwO^3 9o _TIW]1 e9ji񽼘e<^L)_5֪wvnEuę΅G^Uh<+b m%;mNE-(|7u,/(p@܉ HI''yx=Rٕ)pHY8i}S;x&R D5vkOИX2 +5P6itk]BcV9im=N`w$9 lUt4Ϳ$M=p|gPBT :w02ПČѨH-uVfh9bG%q w`҉\s[B܃"^Q) /t˗UM-[1=xu%@'CjE̋'JS>0uչ3[ܤZ&LL4/#+CXO"T% t.ǟ)Ƀ!_kֶ4.ΆEFT_&C[U >&$L3- qNZ+M?E{2|,YhXղ4%B hK!5gt <. emipsI;z^4F!sgk'Aì>4r(oYf)` )ce" qe+Tlɞ-_.oa;(cyA3eGj)S@T"Pvݶet5j+{1Yt~쿹rIs=f ,@%6peSYQȼA'Rj; (/zPD%QuT%[/Q> 4I$%Lк> PVH ٴejey _Jy bT4>}i8׆D ߼BPBgS{zͳsfGф0hghOu]]°sJ ':̼cH7_/e-88k>Blx 9&n`E6NATFz 7갏ZوCّz~ }` rikm*vl3`q4.P\P8a&Z|K92ױ?UE O4. uk%Pmd|etqiuR;QBnq烜5eX}\Mqe5*d5g9N`.^T7k[ִ5m1)1*X,h;bCȃf:˘> aS)捻6\4u[ CW[-u;ݏ e̷zzսûLe|P2 ?p=:Y_5VDlőg/2a׮c PPFܕm ;n>ѿWN|RUkdTQnzԁeFfw;?鿌:DOj:s3pj2a~}|@\ P qƢr`F֑#" K\mʼn[PƮ&{ QY}tnwey0;^[Na$ft\ SN 6#1oVVdْ@nj2C1X"P"+}luHmX܍#:HJPOa{a.]!W ܤuzP=3ѿf) l9D{7l,qU[nc*B9ȏm/uZfT? N>ohRQZVƝ4ћ#yUBGd9vː= s 8qS{^F'@k2{cVeĥ8r}NH 5c.iU1zLxxʁ1Ai+XGBš 3_Wo9ys-1TTcÈF 5|XkA:YZ>?|EKέ1M[9 "zƪ {+\-nAk *Bx٠M/ =H%I+֥&4۱}9Yoߵ׿U kꡐ9~ä7-M{ӪV[05i]ʫoMG]gEK[.'~ցn,x) V"U~~SI38s!%1]% X.3{_rCQ^Ə:-MX8(|46,):̞7GE;36cMYi&#nzH `ؖڣWP)BWgQ;nu7Q>y+]!PݫrEXnKdv8S5Ex8 8c薓dĩ?M?Y,6+f r8-ˠIbY14zfߙ|մtL([2\#}*IpT~ؽcۑ{ŗmpMVV=r}LĢA;$KnV6>/>r2{%Bmt2}&' }*rv7Tn:YτulVX30Z2mbH'="yJ >w ?P" pS>4?,WqV][6*Gl)-犁@&~8xLi0r@g4{g[EF=D"jA^IɎP͹a&qdOWEpdk KTk!!F 8F%4(f^xB #k[jsmC%n)H3xD:Fm㨢еLx_J4mqr4rID"z&]5 Ա[%RB퉧T04h(Zw1~`3s1nS֑E*6U=و(hv*1'"?m)WkDWwLKEy]Y |Վn{Xgf6PZqܚDզ$d,jbb8Ns6.vq{"}DHBݱFThM>[&b ;H)L#Adao^ I5vRzGiw/͓,yA`CaVE"tKS %3;NiX' \],jOw5:^ת#UD:G\Cw_*:n\u /!ڋ޳uU}v3ѰmWVa1A\y϶E1t"#E{kHR<~x*HW%z|Yd2;nʏjarLG!a`bB yL ؼ'LlyI_ņr3{:MxX6GRq_њ 7yUxƷo@%]¦& l,J>ޛj f b2P~(@tbД&n^ Nv9\;X,ܿ{4c/렃2)iDCAA>X{jroqjy~>*o08(tM2A]Vu^is:8-\!o?./gU{_Ѻ+"6@*?4m$01 ]EYY>wloL#RGjg;1F%A@򜃌'VFߦ8.Hz /YK 4x9 muR)&8h,|bhw7?msTfY>|GX$u5#ڐ >2س-$ cF Gb#>b]3b >ӝV8SF}:ګJ5d-c .V ŀS׾F7;)4gR̨̧E/ؽ d 'BiqoE] 2y6sn #5 $"Sـ"Q>3Atԫy&&~W9bAGq"F^Ӣ$qq"qʐ ګq]U3``]64e o3cris/E $2$ R]Ѕ9#of1jp@CCvyXnn|5a k)~5cª=$i61ޟZYgsi4t: @W5Ѽ;iXFGD,Z]ħuTJ)4w4bPё(LO卙%b)N_-,=?x!/ׄ ZcX{̲Ņ"1y|TdžD[pyh~YV:gGذ :#T}Qz+!ݪ1^F0gɴ܍\!DeDSD XYq@hnD|_ (ޝ}[W"DuKJ~6OȘ6 ;I 0{ɳDWW%Ƿ㽳;H]Jم̒8`SRkV#ܡDk\"AaEl u8ۖi%iZP3o>AJ6C ?w+-w$n/v6Ձ|XTIU:lnM};5J9gm% 3֡+NŁ#/k( Y*OIX zm^Hw˪кy2}ALBi|/]ur0kYܴ+OV(>8sdx?*XFje(+jzJq]Cyi:k."> MP@NԻC/8^&#)/Ag 9))Ə˵II^WZ쫜bm=Hzs5MJhO\a۰0gէ-?6B9KM[tBi-2d^Rh|U.7lTf1PM ݋s2vE bVZj ZLҩo>͌ЂmLsq5}w fSNF eX `e̓/fJJwu: F]JZvճtG!T _4t=މinظҔ+m,J >)92ty%=(*1P5&wIXn>9)?.ɨT耠[|`R+6+-kͪ՞?\_N5t7̾βopd>Y'6በOic9sQ=)o7 g1J ׇ:6m5!6%wju q6HM.ՖbPjGҸF'K9A[5oye1xD\v:6m9E8CiGZ[t"mwnjgLWKVDʬ5.4ܻLנ<)5`ИAAtA }& ~\ ~ZE#n,3- (/,ұs2×/hrJ-;dɫW0!*5s*5Ύ^۹v+ ]o"[m]fU !ZvJ6 dTvzƸTs-fl/2 34 TSa샕I~s1!݅ RTO Sn_ 2 'M >*Ε$i"S.  (Oωq{ۧ-h/3C*a2Gi8bǠ^N,&DrE8|Ӿmv6C].zpfB2GF$y8&NqcHjx6ѐ?'ѶFPiJ2$;JMio/gHd7(,{5 .٪:e}{PmI~ӘHV r2/Dٹd_UNc7L7(*R?q0؅iҲo~+xfFAQ3|OrD! Sӫ^[?^ aq` -{ѝʣXg=Sa"R'zE1CA+3sO\ٚoE֤9px2mh8뺃!^"jZ_Z PҍY0JAkȳcy?1Aʗ^C0IwbS1'@YGm!Ҁ6-6}wsh"`=/W5dT0:}I-%w(*q-n/wG$R/A Ya``bin:0"z@aheCY.<)ž/+&3;71=7! KukIk}?3i0S*,fSc{zGJ򴯗mCjϰe<6&|2Qj$"#joaZw/MKwL߳P*IH?P;+sV R;lOYӏYuzy9֣fEP'Wx2W( K%p[e\xg,lm sPj}oOfQr-*@uR]Qv".!qhFZyX'@̖~0Y{-hCIpYI{9%;H?l%qhŐӔ7|DdocH?]ӃХ:[ f尒o;NL0po1JAJw(/)tr-pax&>Y}ƣ]ٗg䛺(&Ԁ\b6V} :n1(6Fg!dq:Iݵޫçy[ũ\h=K A@KR6<X1RTČmƈ} <rU(."cgmA\겨8jҽyG`|Ei7ĠBtkӢ;B&%c(Q.Ο:cYPt<8I.yLxM~](sn mQx-AiCB=C 08Ln#9tHv )WC˧O*Oy0 kU:e&2?f{0y[w я7XT5cLR6M'3ƭt .EK4c֞z*2 Bzv_SQU3m?q (_ہ^ ő~xB?el\`2 _?6x4y,^ VgG>c͉z ͤɴQљRp~;k R4g<lrH:jJ.;l:DiJ7}wY(?WEHm Wjk˵ 1KTƁjhʋg ^8Gv-E]MGY TRc0ozJUZ4C7D̞Π?q( p+Y;U{mkx|mH3yH} /%I(b:j.J%R/gS pG.6ixًtO%;!w^zn f42ޝ!$SW{UwuZXGf YެVX1qu\st{Q cTL=w U;XGdl]v"'9f.nYbAw Hu'JR#|ؑg$bitͨ-@"HVLmVOL5iyK:#1~>s\͗S,@lf?i'LXTqv֢yY{Q7PoA]mIr Gbf8UGJz-/.qs tujD?ET]8শA5!4G'xvuH)%>_{]U@-uŶQCBJ(XOdc}rTD3PG%h"FYKɚ'E=M6 |/ZM0:k_&DE|0gh`EGˤ[n 2t9۸S|bh8S+K}裇|7N~3liicz0 ƲWkqΓ) ǡ9Az-F/j^TOd/FCNg6|zxp2i /a7~iϦ=  ]?*?_h!VDXLi73Vu1zx<,?.uIR*۰}'``GdQ48nPq@4Ri:"~2Thw,|nj~)@ H= ~xӖ.Qq̠ͨ jXN3,8rPv-(T/vAw0j䡓-W:&uijy@rIc~"2*렷W/pjDY缫j __]!S+T y 7zzP◱Tfu2)pQΠ| AwIsRt| [j{tʧAޙnGnH35C|ᬾ\=5yt͖YRls)yp{&}%ez z]E4kh8]^IZ®Vi-rO =2QmMADjr/94 5"эH<31v_/V〇-s F4_ nЦ`"<+ #w4ۿD=7ΥCϯJ8CÜzqۼf 8+'H1c X["aHٝ7,VN 5ts2e> [~Y\4UFmR]N<񉗏 c݀8& :~Oiv8s0V%N3P 7V>vBAE`ȼݣJ~3hfHJ=pmR:lYRWZo@*nr"&;8pţ@g) o2PN~ď Ŭ3廦K7 È5u Ӏ`HgvD䇳ѱXO'%E+#MJ?A{,'}%H(0zj7s[Y#BL_0;k'8A#42Ğ8Œ 1yQkS:B\;c+yP \y2).+>9WaiCrZ4$/$?ZI@Q@V #0MyO$vS9WDAFҐzUu)ECF[ōȆˌ;5hG84&b^~׭uS by,u^=]ڛ$f9x5 Bw~FI6AN0ޒS--z|bvU>&H<Yg R/|Wer fϒA ~>Gf!=V*ozhR-fث@FOZPf29^H"]|*EVXbĮ,=+Rz29ܚGɎ+̠ :͹XҼ{"ox:yb{VbYM8TV!*;y(n2%r7+aM|QQ`bm"b2ODEd09{&k=}\M[q芐Moxthн0hٿ&/{SbQ5a5'rʁ(e Ć&ó|8M-z(\^E:] t*s6}$/p"S:g~p/gotJ쭜dZƨ&[gjӾ$S #I2lQ߅El-L,iu])z# u ~1'׆ƯӃݭ[nlsWGa y;U ^ h>(3|b>Y=<@3a0 #JrMY#'[5X0/un8.։e-%U@ 4|? )BYx[EMqEF|<lXiBq̎qe! wZ"3~$lYX|B"OtLd?&jBk߈#T}hlDa}wz "q2ʹx΄1aiŹpy{a1mg Kī U=ak|g<6{K^.Qw4S4Q'-2~) ;$1plipݖG?hdتa2|^J[ƺ+{Xn BmNɗ8Q6t:d,{v I2Ww)Iݘ .';VTS%wEKD5u>&d7FYBMZBeG$3E}`ڼtW =z>:H$qod+TIeh*Z#kP|z:v&c>[xfk5Ne\C,G+=NHk}|)ģaBy[',ˡ_`\;<]h T&S3.C؉&oe'# *%8Y)"$}'+Li:/_S _}3.F;A^[˫¢sz%:O uzE,tM%x"lBXΪ:67$]U CWl?r˦#]uiZ+h/@> nݗ⿮%<UY0떭 Gj_cy\އ(ޜ2m Z G絇W HN[Ox3ֻK t8bi"8|cÍxV U>&)A+3ͽ[^^L6C("Cpa/7~rw "_,WOxȎ9Tǿ{ Τg ^oj< nrfi{#CÑ\[r;\oaud8ȰOҚ:܈raX6?|y6?ubY$f֊D*zq}4ZGR:hjnGt#d tUo 4#^]ٗi͒ B{(THҿ]?6r?l]a1MMLv$@/yV%5x5/oTtlcң2$huU1X] U@s+")2w7| ':M?@Ş!"qBRnlj*(Bke +}ٸ!{ q,ė=eJv49[h!u*7F⶯,rνl r@ N}i|x*Uk˰ lN&>|8'!D %AQ²@Ǭb!{: yaA&6d8 l\/"JvQ 8g ϸ`Q/pNISʶO$4Je ò;j^ »Mx- o9İrS)]<eIoK Q }]dt"a\5f7L9?.R'hT6yPFaf)Ksԩ*]Zչ5:Hw8i@Vr'8BTǖ%X~@:ު*[,^%u1y i^xZyP$[ϾRAw7W1QJM#IFN u)zcI U)4/+0#e䕥4 [pb!pNsT2(ƥ_{kZi.|5g tB z5L}078 ³2=b:X #0؍_UwխEznuseq~DMEo kOR,?Lh~EeŠ i ^U=@UsA:H|; 1D'il+ƼZ̠:ҙ\Ϻ%"z})줧?\Hpy ܟx(Oi]G= ̤ \/J_"$߿`$_I!sC . ڍ)+Z%O# 3a~0\am|(\T`@gidGԅ=D. UW+f9XaI\,#. ~'?mq3` n ;8.Jr)nFƏY6g` 'LR7vl}laW=4}Ov=5]- NJ lvI JڶD6<Ş"FlPPeppKm5 >FlhPyt'kO_Tp2I~UzutjؓT)C ,RuiM6Q#r{?wf0ĩK0Go`!jJ1E[}5='}>fY3|bx]`-!E9<;<,)fƏa86~n-(DXen_W̹asBN}jdU'%jc pMGYտ:d ((hSa#C~Zvx>{c;)ѕIf`hk]?l? I$yv 7\WB­Bh2]4GXoa1J5ܺDm/9|- x;9?V"mJg$@$ekVrłsl_>hx{bu3ޛoG 2"ɋ>J* .sjZ5irz㕜27LKuEJۡ'g)NW:˖.7O+.7`9~4\Ov籹1Wì[Qʖ.FPI|^Xt$|[Xñwz 0 +A|>v^yb@ AR3qB%뼬 vL ܘ|^ ;~֧yûV:Hzv 'Zx穪rc;9_I,=9O|L*3 #c5gV \D5G>/MjK,Ӎ=dB%k-j%M}$[]Pu&hQX y@n6ZETTbk+Y2XrkS/i(ghP'`Uj&!HNmg tLW sygVpʺ` ?QCb|'TA8A ˚aP&a8fAf=܃Z7%. c`w`gk_Gm94:z$Ĩ!s<}v:75'x%z*$npm.AfUDT ~hv 6UJvwL7:iP/K9kq,ծn"z?ҏcr}?:CON!Z&RkB>#"FaKdlm,I$&F; Fsx}Q=SjMi@yk8]Pz- C+odJD[ 33r!ܨj>yEc_Sd3VǶ)/@:&d1Et Tsa;fɄ3|9<])hbxD kbb嫅e> d2xD}U#9j|J( &Tb1(q@6BM,Չun2HnҼ3\rw5rOL]Fls {8#*k3G4F {=}ʗ[E_Q$ôӵlA)IYu+p ¾|O: 6{D|;.8y0JrʋOp27tmv#^}*2q%/DŽX'[MXςi1FqXs_PSp{D7@3X zjBĮbMC!KVdBXiݞQit7j +YD?QL01<6ܖUR,!dqle3o&bQ1~٩k;(w4Tt%Ge}C&5XL&1w,Drܧ.1.~7{/}T8J-['$ riˬWmƑt%!~ȮF ˿QUnKTc\V\?y8Ab?W?,Q+!f392Y>h'&)m:|Q:Z;,b7E-mg4'+; 3y@BSGoU`!t ,%e2%TT/`WS(IyUߌcR?8;yx9P:/&:`g.;$PWwVZ1f '!|ckl~nª6#s{]zGf!|& ur,Ã_ R?WHD ]e־ zʹaiV71󴘈UTb?5DRzzf>o*hضSm {fX%V2kl8ϧ_R Wq;o9የǸլ}M8618IG@eIђzM ӟ]<`p=i\H1_Hz`1Ŏ*>B.^U=T(+,;"#F5Oq:L_Ɂnd$r*AQ{vU^k܇ ֒Fpr fE9&t/--`&ZtT"ǪMK3Ebnh4mz^4!-MO Tqca@nyrU1⧆V۟=QH1] y 1yHۭ,* ,x`g5Z4rC`d:R (/?iS]]ؿl7.#鎺nqOcBNZL })XL: /H:S-[-"o5څН"F q.#o$G-㫳 BmrlK ])TH `P@ n+c"=}Ө*1xHNCF&iR#vEKؘiTH6ƶ 6O]C# CO ^4&FNSFɞxś#kEK(%j AA S>$ iڀ<5Vn#n6& AUJ3Wt`ӟ䊩i `5^M$A5[*A#؜5&})K@Kt%|Hp&څRAݺD&x?F ̘.-\ =]%K.SĶͰPsNZn#aea=o$Cb L#{q?ysF/d7ISX3943ptΊ,\d/7)!GsG ̀-f[ )k(!h^)_iLF,kT]t1,70Hj3>S+~L_F:\Mz~?| \/An4劶jw}jڧ.FG_Du^, ,mMv\7c9: oN:\O546oO.֬twB Gr5" 7Pԋg3lo1"\XCd;?B0p/8$P3b9aH]1h[5DGsk^O(f}uDI 4g!]wDHD'&>B&KanD@mȜ04.o(>VmuVݷR)08s>V=#iO-a?6a1h ŗ!ܝl%|ۥni&Sra|[QRԃFvm,.SI5F &+4)޲Fp }[H#0sO; v , o`ԮkoޜR``Av:\ +5bF[PSTq5wOzebאs;`^^ ԖaoƜrL`]S {}ɲBxHOhLkAK/JKJv^dnX{>EM*FP2#OB2tMk% zt)8DIgvL<#"n z/ h )>"wá!;BK\ItoArB=8KQ)C5+OPǨw+_b4+E\2odjVJlk@ !M4 C~K׋|g12,*(hjn,"Czg1/Fv5|TN Pb/}kQD|o~ٞarPV/!N$-Pq0&m+<$=!9 J:a\ua)CQ$"&+K/}XΛ[mWt}x=6c- UMBNV_sz0X/Q1J."x3YeEdNtW W{AV퓹njCQ0V 5Q^֒p:܃ZTTpIx9IpXT#Vr4( /,-ޓsW 2IR 93K6*h %mP"ɰ!M[E4޻-m &[lU? nÂuk9elrE%xdy(:7qmSo\O5zK/l# N)13 diq[3u$utwS k -j2*ǝvHH,rܻ D-Z%M`dJO?֞‘ KT$߈I/ 븾>R:}:Bzx!ٺUzd@UwͰ=sЂ<"=*1 3sZUrLn T#x^0s\i0:Ε/ĉ l.)6&-@$%=q;F22Ao3- K٫n]pmtf!l=AMW-:Β m p@I>YGSA[s.]u,OҨ ?Ld#!df<6 3 !:ZHO9rf9*[_ز=@b#JZ>xM"^~VFY$7QNuMa6 䊅 ZG-JxF.$:lrwN>BBP,O40@p::+@Bg UI~cCcDHFX uDݍR:U`py\m^3tiW8靚ŶOFI@c1[-0OgLZZb1R=,=8g>[( zh=P/xVfpP ;&(fd~T)ʖe = 7+ī { 7c}Ife -k`@XqF?)Gڳ\EtZS> ,Ƴ6+9[@9U+ pb[n]6?NbYz$[ BJӤd;3w> TFU*OP7$ޢx:ĖsO{~bN-]n~ R Xzd*.;vnV}<@bLPgeF4|5l<Xרc faPbGz޹WvM} O6m&Ծ/ g{%rHGW;B CiЍ!jbGA+ PTVɩMv2hYߥ\@Vaw85- PMVace[pGj%lQ~oL|ҏeJ ,&ߐTd>3?`F!0V$>_|ŵ, 9@%B+{0DWtgw+W45TJ!_PE\Q rG@ţu~iYpCǵo=wM3鵐KKI ?|edoR(Ǒb#~i-F=N 0($f ~ apqA țzǚ mvk1nvݲ`Ƨߋ;g-sׅ+T)rO"(&n<?>38؞lY. bj>#8a'Rkt[R~ɭ'wÖg f i蚶rADWَaB6Q˕(rH|y]:4v,iiQ 4d×_sXpV0̓$,omL"ol8*[*(Ce" z8oU1n@x斠`i[NeSE_@c\}<k4x=c_W |jip#2-|Qh@_{9[܍0bf =ư[`*k)ƶ5(KDh9jx?@ve<+<#@{nxJMt p2[b8y Qt ;wKev ؼckc\r3B<vMh9U!8Ra$\:CSty7tFo*9hy2>Q{9 -4OU D F]GZ&7 zC_!>^^2_p̯+o|%]P"q``&DEЃthBӭ&qOc#9j28hH%n`${5 =V֋~34~R!h~'y aB5&vx !֍4@E>syZt.|,s„yOpfr;6ߴv+dh^GrcΓhm>hy q^(%koIcnMØáFy1"4'{boY .B|ú>C?RkuM }t͈Gr}o$3;ź?\>5r}sj?ԅw /R_l nM J}RFr<\m -@t &.N 9-u)GlW*<7mpBg2-Jq}N~Yw:a%}cuRaL2a7y'[Sb0H`Ywsi]fGy.HV&I }D.p4HR[ iʧ~7evZyCVpq(1hՈt 8wy h.Tj DvMN" R&v>A vg{ɬ$.(NjղJe".#_D0#8dy~@?:FM43LWE'zԶ|! . ߼RlXPehYGxOW)n0Qj2%ó8T̝Oieȡbi7*:ެޏrD}3nMN%}W}T͘2XW@DÙpM;C| Y4 ĭ6ޖRuPB٩p pPͫ61sm&HIθa<̅^vE{T>% y*b1ˀrZ+h8)3AnԖ}fAفyY_aYXgߓcc虗1 hB)-4ZPS]Bq(@:fi#IM(CN`fn.~DrgP6ӈGWUs?] :ąkAH-%]8]d>w,o}!&U8:L8sY~pNr{-A'*,v(BK%:}Йo5l'77ǩ0?]n ĵHN!%ba0 fJdpE] 2L)YPAwp-s[ЬDni9s~jN%=J~ u&(yvf[mn6@~y=uX:_~xa}.|8hO6==>m[D-,rvB~-oy2k^Ձ[|bH*E_)ER#n7݆!w _sQ;B:w~":ۢSkvrV/`m9:wo*Vm%m `:)F}P=d"lYQYfOն3|] juoK4F0;:zcJ'ԾI _|B tC z1,*ǭO ܵe)"ΐBzxڣZПf }TsވUq, Q5fENY\t\RaԢv H44~-kR>EA 3 Оa@kU3H%"r_~9 ]IRZ-PLRM|H*9V{\=g-FC=q4=P f o֐ 0єߠtu]󭕱I}ʫ4.^B{0 E,@1r_FCg,E8:r J,u쩵 /e;-@-*a}y9<>}@T[?>xvBrGeƄs5dG O n?Qom<6 ׉$K2YU4:?֥MZ~%*7=M}*돭|#N.76F2[rFԒ8BvtH1ܪA-M3Skdh/D@n`LK:<=e^<\tU,=1]_4Sb$Ϥg 8ДMdde3i?&ׄDŽzTՁ=HCzسL̜JXV~<ҩQfn)5 Z"JlHqeMD;HEZ_0~Ŀk3S2tD7z\,:i a9}뿚n?p s E 9~>}&n&(5ìzF:vb4׍T͉ BnF Bj͍'MIRUomnH~Y=-9|2\g a&@3{Z&@ ]z9K8' ’F8fesLxW џ<4.; ^kAߔ90M=̮|UNko"`w{y513X]r6P !C~+YqcNMGR S-Ka!!c:Oyl^xrjQuDh]n`?mDmbMzx}aԭd^ng_u?S5X[=$L?5qO̧rOHZ\p=.0 8ěV9*X7̀7ߚ^TkB-N "͖gșMSAY ckuّ)PtCQ A׽8W("!ЂF`lFƨwQ LXv rt\+BЪܦԿhj `7̹ &]7ӝ*?x:^>@K<['. @tʶ4X9" `/5۞h`och9һ;bKaփk~:w4mophobs+m[ek"n7Q3C29Gu? % Na=(m/cϫ2”FM"$,etQZLM*زuqlj4>:4plź1VF&VQ0has׮hIW Q :QZ kh/|:7'߇1 S#$RqP9hr%pIk p%XCeDtsx_:؃UCT#oLQ'ݎvb@{Qdgq|ߴ!u?dw]Kүʋ`w%L;~T'b3`d 30K2Sy&]z>Riie!82(ƕ @ƥBa2m{hT~z>XSéOF)QGiH ( \31m2ݝŶꈅ},!MC$/r 6pǫi">ozJ%FİER9s3qUޙxS`c\MAR=wD l|@6ZԬ0Sİ}\QهB&56$E6`%UKi㟌ZXdh1qRܩ2ypE^,lvz;5|]]E)DՓE`88-;cpq8 $^A}&N\Oww*j__qg^Ii-FVXImk&Y 9◎b;>W)ҫLE3ayU1_/n!(ƫoUHxS#d7?XGCPF$ΪΦ21DPV+VGӬG`4]Q/v }OcubC#ʔoHM%;1)JgOB350_J}b<50xgyy ֮}(I_U%! zcn`<r*n\0~).,Wa/UxZrn6d\W&;ܓy- Ƨ*0[ԺW|3Biv nfff- RY}>/gRʙtjF?.[ȧshҼH]I/Lcf_7!umσg鴋bX{ΗU`c{"[p? Uӂik+ɷլU]s_F𿍺P_yCr'.tO7Cl! x"!W,Cp&}ߋ~nhJ#+9*H&m )En.~: /^%b|Ts2RX*0Չt̺p:v1ۛ$.0IYfvMR2 5tIfL@s޲`R!pzBkiOli5D# Y#|DWyEcLsY˝oߏHfmn+ &PN3'xP] ΰE2oאYW gvٷt١}s +fmzSļ!X_Q=0`ZJ^ B*6+#vO]\bCo2TD3V5W tiP UDE+ ~;jo2OTBBVrnISO@f 3@1:iǒQˋtTow[1jZlRkgz:pEhp.# w-.ȗ0|L"-$e&_w!vUZR Zl'LO6kWJbh,8[<>6D m0|h7|~iui4kY|a3HMIw1fɺcMJ VOJQx bK5񯶆|t'~á&NH3f5@kt?]AְuH 1[ǩY~wG^ͷ77BvæWP6i Ρ8 v_2.+ܶ`EUL OuzĶgFۋXdg~;rguH?OP0Lo1RhE?.4B53K.kJ.ϔv6{0h5cTQЃHkK"^6r_e`136{YeNu(i]OJ7sAWneEZW۹\藻T’h9ZҢ@3OJIN<.5/qRs/.U o㿙y.T5cRx'>Ѕ?t&6{~yEgA$ *m22H,PCV Љf{51?qL^Fp\<[=W >}^%"+Ϛ4glIlxpmSBr$lս@+g6I߀^ʅ 1x "Lw{"[g%tS/W/~Y!rnS==PHA:TTB6 gCXzxV Ӯ?Ӕ*}YN[qBy[2tf]uHXDS =9^/d ˯Rd {UFΈ ؞d8jw@Mu/\72*:%Xp Z<@q]PdjG_}KZ[vbXVc u#84?2Z^#e h*oP4K1r|WC:6pĨe,+J߿Јǃ:pQltZiAG+D.u(DTrdWba0(>5:4eaD8q _/Ujp@zB/Уn侗hX4r^֮'Kٴ-(!`_evnIk=QIEsD"b^8-gN?>ا@0#'1 9)C-YD*TQmP:>b^Ck30n('үk,r8t;FS(e2m_\3r@$Mtȴ`NJHuvT?64u~ &eöv>zXpU.>rY΀IR4dmhўxw!B4dȞlNZ>ocK6QL3t%RJͪ8KJGOt~Aܿ$$~%b82ހNuPK~qr,+Gzu@p1yzX!RcKY},޲L;]%s FRؙ&n+ɷPc}]ΒʏzA>MX^$xG4\EVW4e#S8DZ1Z9&D 㥷m C}{H,I ,rm($y)~Sadx2kTeGGaU2UnD':8e}Ĭ~VzrsH-BUhoj[.ɰPS5r-C|$-4aR -N@c睚ܠ(hO0q/&h#0 Nm FowwC42p#!] НW4Lg: RYkᡰ"K89Ոfy#^YWe]vKgV/]ZSL6EiQ נ:=UL6A9b8زD[xoi1S\dFxPMt%;POnf$ cex#K@m)ed]Ep&*1^KygS5ţ`kjMZdL 6#IVF@+^'H&G{u=ˈHal 8FT@hr#͈#\g0ĘO-Ou{"1|^KAEJNJ"*XPjђ |(֨rH?_[eKؑ` njH1p'J^LXwʤ=tllt+!t1ar8Hja AlT]H6 ۾R/$ovZ4b(n!3EKM[Y|+1'Qʆ} ;[HQ {g1C~Sv1 XpV{70祫笤:0vF+=ȸX\m 2)rFWOd" v.qR͵rJ 9#P cU+KBz)9 Oc]q4CȽzD{a. ED%@£}](V!jJ5C+g/,IIWkNpþS/K6qyW*c ccU@22~'ĦBsiw}wD" ypcB!Itz&M͙GMZI;Gau ITH"!,r=5nݷ!g7UW19!@ʋ'!Wk4d`sɸxp~1]K yni4ma^Ҿ^E -QS& t8|cUcܦ-dnG7 nӞGmc W^#D%dY`S;p?o e"ySq8?ex7L PGϩ?OL} +-M]I )z s!t@Dˌ o~fjȓ&)rՈX bO+_c oN.$xQѐ>#m[cjؤLlx\'b6nVa|܊OZ;aWVI7NvnXW6Hl/Um8d%iP`iH@1Q8S WCꪑ*r9^D~ZFfo{%"kϦj*&O5(*qCV_Cf֗v4#RJQf볱&́Hv[sW|=~޺*FzwrT2)g  GSN1ƧOÄ҇Sy#HusO@+K'v3éV :O~ݠNDŽ#MK9H3pfu1)6^B̟D+mŲlfRVMS8kş+\b1>pCӈ=Qqqs9BAH#~1$'j_"ޠV(\u$1zJqu@ "OQRK1"rJfbO$ɐ;^d;Jk@\F9xޙN~>j ظX7+ 1 B6*5{Ov@?ʸ^Rn EKڔ T5V5'$1s>|Iza=^w)Շ vCVQ@zWJ >R&"`MɳBΕ`P.M)^V5ҲYQlH]Z3_Lj Wm7M"2^̠qð|?w7-˖~qFdSOfW֗g,V l3x0B&atA0w•IpHB=ER'u;}7LIcc(A Ky6 )ڏy۩Zw}sl΂I *Rq-[X$j~€D &/ϵz/`iދkìf1c>#.`G-c(<\s uqķ/RꏴW̰ DZ +4wF7F-I[Yˑ+LSBGF lf+m&K2F%Y/.6h1-&5jڱ<\j3^K^fH\LD nѢDDLؽE|ݙ!Y$%nNom̊R p=-D*U EP3Y*m-]lD5<&aA TR3sA/u5y CI7^^QLő&jlJ*Q#:!0)0|)B8~OZ?̓,̾K|Jވ_]Aʝ܍y־c2M#BɭQ$[,702qAwJ*p\M(,~E=rnVC40(x ¢SiP9[\e:wc#8 Ȏ\._Cu-˿{uV=ZYuP>o" K7zp,Fxfę?,εZ")O@[)r{3ԟWu lYT{FZ8")(}D $$_0og qD}ÚBMp!DLMT֬/BIf"ﶃ \SwChP;W~?hÎM^T=bURZFsj^R3d较:x+z.7d312TGM9\nݪba.LIeT .q2r|!ýI)m"pK&,~*v$G;S\ʍQ#34p. L!3^<{"qEDmfHX^Fut};nXIoR}*<Z Tn_̩m{17(qJErN[|c ?m[]sWs oYCľz9r掳-'~19\YVd[ ys:97K<"9AƚA߼%>J*e|`5Єs9GjK!߷T` x|F4S=J_"2p;>@.V[ SuS>^(6MeH~blDb{㜘 {f̦TśACpX꣋ItO!5@4wJvYJػi5A!%3nG|Jg53:DzXOuxooyrݹ@pԆCy?dMmY}0:=,6 o JVLsBĈ j rF!ctW3diKer9UanA @WAS1md% l o#] 3aƇ2g*No!j4p3T+;S5# 2n:oqϐBPZ`s?#fz2F9z܄& [;ovUK5r'K󮸨ѳ(8[T~^gƎ ך.N6e<&CO\zrQ-?;VKZx5 +N -wd7""p\ՙB(1 kY3md(ۃnj/- sиH$,;r$.AM8ly19[U;n6vD'gnMw Xxү^˳ .Ymo)n*tS~Ǽ욦.r{sRSܷ&:O.$QÙb1vt`S޶rHx+.3dA~,iѰb Va%p "v6ֹ5-t<fd<1[t sThȲ7EV=A#xpx)%9:\i -I߇*k* 2-(l촾.L$/,Ob}-{># s'rp 3z\RXF,lJY9~aD6g3Q'clƨ_{=\PtEJMndmE# \7:\ 9*o6IIsӸ42PبǦ;SErV%v+ u4l翹!=< x;1:ƙ^^}\%}XĩgLTdc8-C+Ï˔cnл9K8/'L?*Y4$xa*h".*GxZS`; g"?U1~|?5K8?)j}l5=Ԯ-/]Ꮨۨղ8tEt!*N ?a*eeGg "TTQQIy]'fU'DyU-6ʚxOQu_3 #8 E:^;Iʗr4G^[ [rn4Q=+UNaY9C뮕-V~3 L|8Y 4G_DCF)Q 85& yPS (w׵VԏC{`K?OĴ:g wKF({vi N77uce)?$ ?4%%<]*lx]XN`[ աQ?X^-<}@q(絸"ҏNҖ=iUBiLgwY/AʣVWұ\v]ر,+g .Sk-ZiƸąP9>Qר ldF/'lC* O]>$]L:egEG^HLy(al+qq_?sDykIc~K,nw.$)7`&]hIAg\zQxw=&jk8>HDQKN+\4mDoB)BkOhn,ORPFCȞ%J:W̯,*̓ Ċ=iĿB 6ÐKrrdCYVc ujlv[?DE mP>aX05+D6D-xD3daB(3gs)9MY*F8' jJ%il|w8kZx,gޛtXd0a0HywP͖H"rSC?= 碠S^Xj8N oq-qa@fcEYwQ*r 4(7.%3LtF`x'L)5b Kc4;<K :3iOk,׮nf+HSg҂uydOcȻ@Lj0rU&n3H], w7(A % KJZӦnpຌ14o굩Z25/f%Ǎ]GHI)n23Ex?b.Jd/dʞ P"o5m&K CP@ l:A[04uM)ż iBebthlJ΢zh,M>TtTvB4$},Q|7jyD;ƺ_hfikմdIMY[HGL^ȼ$R\3mޅߨ+9) XALo/= "y06VVߖAE2T;>lP"Ħ%Sh_8jPDj`3~ EeWRdž(^^^f+:L>sm+(edѥ#r@!%%?45|D qBiRn].P]7hh41_VU=%ABn`9#҈^2 !{cd]xB,a &ixduPzx2 ^k[o⟉@U#J>N#)y^kCR. _s2B'a~~P6":QL'_JjU?ku&-L7'z栣A#}QkkP);'\$' D_r6W?Ϝ}Tkf07*o˿= 9L!͔vY0[#qL 4d[M[XNSB㈒8߲ .Sz8H/PiRXF1 Ɂ.~EfH`(L9vgҭ1L?"fb X]<^dFZ?ŵH^bq| ?~⯆ O-l:|p;,aakSZiyxUcӼˋ[i X$m ~*Wk~L?ٽ 7c5rdw6hgt,A3Gb)oPb-~ʭ+%L(,X*E\rCm(ThZDAk %7O{1أi_?/&U$'IP2qghVp h+uK\_e”ly< u3n/A nwo$T~FRR*^=묊er~ ,*sٻp+ eb[K޶2K4Dy-7~ =e]Ra֖f8yCY0~m3X =)'Ne'}hx@$Uc/303HL3dV CmП0iEu 3%,v&=VfQû,3z%0?$:@dٸV5k"WF\I,%]؆uVGv{ͺf&o2b v@ނiw,L9Z2]? ȏdyV%A M+jfE-:8 Mߗ^ؙXudp$0+- rF,9s[mGS$i&9$c_Ŝ1ӥ7x+ \.ίwMV-}\9R=}61-B;c;&"d뱸oy'ҖyK4qUmHN:rM3HWX"[:k`ZFWN:}9:47ФS8\ta%sxb}6 `qs'a/-µ E)>/ "k\>U e%6&yr˞tFKB5T[ݴC4N7xӹeMqY p/%[sb,'(Bj[{˱t*RN:[B~.yO'R,u/5a hn+hة5Y$Iڏ]5׈R&>Ht/`}8l4Y UWwȮQTY9Ϭu~WQLǍ j]Lf*~ܪKʕF&4Pܦ hSd$r+tl/w ĢTԮм}׹_Z!ť .w%\)Kܶqc!v 0@sSF?5 A 2w?QG,>tqLo!w !, -?z 5qurD_Z#1w`ۡCbMS䆏0SAD('W4>m;;(UB0sa晠AOD_VvcD=._ɂRO`GV;zXOVX^'fs&(8 q|ua;8.وMl=<Gwm][ c3HA)#bD v ^Ih-\oߢEyVUq>MF V1|z `ō0]k ?le_|w w "#N-|;[&+ j)|$-YF5}⹉eY6^ˡw͉YF5dH3 rT(pQ=  n s }A-A}LXL9:fLz ΰn "DmZ$00;d<Zp$ID'a<65:O~K%bLL>wӟe&30 #Äef]Jˮu}4/̝R'+DlhQB]E+|`e8%|vК?JoTXyqyBZ p'`[;/U\RS(k$/,@La+]V X]lytKFVwb60,eG[8^u6*YN~fdo5FWQ!\ǔ/- |r8Bk5>+} fϺ R0:b謥osp _YQB|YS:niav/!m})t妯[s*p,C/mYMNJ/PX\,gq&[ 68 8$m8Y3ɑi9M}eRQ'c@eJ'Kuep%\hPESF`>ԫPtoOlN7M^Zpxx8Rj;E9Q_AXvߛE礦{sQ+x,[#-Bs!jMڐq} e*Sw/L]Dby٥Tib#,w6Xp֗ͼFinGd˻~ 2峚'1W؉108}FmKA yėhA]X>BEHCʊp]XBOѯWÔˆ?q5[i,~*Erzi!&:'9<.^<ߜ)`59}Eo(_I'𹾛4's_&z Tw4"S$~{(mj.X5S@ )lT Pk)r-T2zF șnov>nG)vnwwa@˺各?l}t"^crJN5b7YʐԳ8Zq)_Xv5U7Kꮬ+:vP~;F4ˋNMGfŁI͢hTZُZC^Vd[5!r `4@K :)ʷ/,9t k_ ,40`4h|LL}Y ¾W5i~V|3V-{~|df8& yws==B4'j_ L;6.-P$A:~:m++7/D}-ezٿ9tΘ)봉??Y Aނ7kz|!-xo2oaNQ߁sڼ?<?2`AvNgKզtU*Z㒠~ ҖmIe+4o*֥{dy) #OKm|: n\&" (_11dWI[sbeB3x|FGw PY_%g\y PDyr iA楾LzÅAsOf$P-3UW|˲ 5Dj"̊P >zvʬkLQ6W ]!]nht*aCsI)ES1vepAJ\RU0j/ۿƔiܯ:O?P]UumjHoYuAy I%-ӮKLP1 ?2''}v)p冪mR$W<!yTlRQ!b;+25CS/i@eIJ&xޕ%|~'B\!fb64e3="[H)ngS- ;;,>myw+s!R |A ;تc߃qpZzӸ#(F'm2단)q/J9+7vV'>n$% s) fDkqw'ڀaZW'#f# O*r$ o׿Ϥo5@UPΡ:v\kl-olxċT1 Z X{"<xf޳8̧z͢TܨqT| E_cIVw>5G7tzs1פJظc^iIG˃Wg{f?WT|uuU95-"2I ]U2Cͪ=?:2ya2Pzi7z2ѡ7p"4W y> !џX)F6 -ߥ|yN3Gհ[ =:-yXQPfCf81S^\l֌[0Bef!a~v֓U!Wn|9?ĵЈ $%WdV؆urNy8sh)<L@.%B54m#(+ S{Tv^=W Fuo$]>{|-yv<T\r/ K,;1DD\~ ;@g t V_yIHQfJB͘,s8af. +11;mARuHE_Fծ}k[tLbmK`{cX {%  =bE 'wa~QfF}A*Ǵ)X ;P]rǁC%H&.BӄXζIn. Դ[`;Q^p{6W'ojbXҕ"eCIo{yČqQ/IʳBP^Kͨ/`?x+qA-OL8d#tomN r]%.V6'=mqC1,f{&'N<> uP)5ANQ@bw3Vi|Fӱ,P0'dr]`r+Q;WhʺoKWV3@GڍIRa)Y?{cAhX6?O-X&f>"*" qq+}XESٲ倻BnȶJ="7_Xj?B@LԤuc{{}T!gTлvxAf&D˿9cCMM]Pڽ/gN^]4qkH k$nI'$ib"ԕ2=4J7=XCp6`}a  yPЕ ŤIfZEdV]PF h#i;)gx&R^n]сJ}WTG2YLJsvMJzD9H-Y&ߛϟklytR>ҭʛMl%1MH(q 1,X7SFvhHEr {=#*jƒЬ#%j;=+Y9S p嗰|Fv-f;ZdR:JJ:޻c guhOJ;tT z#E|nF!e~r=KWk?Ȃ}A/!"^Uf\yV\'ݚSnd۪6ɮKfLcM(tŜEgvzUq#2 9i0UtQDN OjcH>V`zl[}x;mT`mQY$!rHܝjݏpRg gѲ c?"G##PngƱl2?BKa@E7&^Z/FW侔s316p ;w1( U&బ[ `%^+p+Oh.V?2F-(C_aBnoEDg4? /?DJ5LTtʀ{ɌCy(8#rM9t1{eH^MT Тdj!Y5@YoJ g|l1V' 7 ~':~cG]Hy6.uHB5XyO8k*Rƭ=Li}mC\o}svE djiKjčU|r@~0x:]~"Xls$N} 5Ãy\bžwꝱ&SBgˮHb%?5*3u@,ɇ GmT$`;T-:\RF[T ]҅q M،DEX`0JF(n94gO %0%%@XO^S1 &o?un628B4h/ˎsp-Dh#?.Z#R8:]չ&n:rwu )DFs%N:)f[YRj#QeBݘ̞BOEwb#*?$KS07*SYqAZ8VSv ,q+)k+AT!F?K9I08R,P\eCDHȂ/AOlȫ36\1QkB[3 ؼ~'+&M MOYWTY0&za֞cfc~t:(]T%I5FN|skUU#gz?$#^4cr~Ӄ 6q^@7s͂EUkGᖜ@!~ƺhU^}S_UB?"ah%[)Tb)E+~ݍ+"OU5{5R޹G$yf2X).R@ciԸN2',Y҆V `&Vd {E/ #;BXlpsa4߻.t0~ w"2׉b?7tBٲC^yKݲ ݯ-}'nի"d ./qBhu9t+dN ׬h@/04Z^$ Stna݈?{ ..rsZutG4'X(% + c+hڬjm|N~nYؑ4S\n` xMBA SɹD>.BM gUy͵: 5] [<8$*!yTp="[ ܴdʄ '),bwι&Z _$ٱ]JD'"ngo\7ƻJv '1.>-&%'bjˣ=#qF9}=RLXu L0׽.ҳ%lՖ+mVW´0DGqlDoZza)}2 2/ +Q?e S[1:]!{ 2dL \i|װtUǿC$p$HK PX%@D0lS1`᳊SA^%U‹}!U=o-$7q‡'= *yB&J|%(y2IN2C.Ts\h6܇@3g7BqZv1r9oLŲS{@Oq]Qya+d{V۸kUO2"\d(d Led=!XfvLι W*ra6cdZ5y M CYbC׳X{Uf} ڷ?a.2+.Wr'u\Gx^aFÛ{2v$ڐˠ >E L Y6 8jDK4/3%&+DITi2_"ê@de;8>tKq)i~-Ф! Ʉ=MwR͙c4.TS|ytY,#'= ]Cx82QWdKv@ {%J#S6%[4A"H~ LiBm䊆=x]bScyxcVZ 8:kMXXvo:79W%0 TXs搊LWNӀWh?֛d'stl:H9Ui PTׄ)GTaS:(oC\&4N%@/ϡPbQ$-_uws1LT#to^lT %]['AC90Cmv-\U bsrMm"C8qDNX!2,ĠB;6ZB0`9$|2f%{T"P-悉VPs̥stgo Lft"n.)\Ol2chwIXRlkJ$HI>ka7=(xt@YZ,__ɖZJo':cuDô~νU#a&c4f#\B -U_另HflFLLo~.΢ǸG*^i556MG]p ۫<[6C$k#;hw۾ 0v\̌i Zmݫu]|4593 #a< :]&W!=!W:2!A3zӿ ='J02'0*Qyu!N“_I\[^p882J[9H])}r-nږ.y怦Sht6g4ZN*u YHixBs'[A0т]&7SWxwx@}|ܢj.M.Tȝ_F#$춸l K δʈfE_H1Q5.? vC@PJOD| \2yzoyl_UUPJ)>!a*pGga~)0d .ikv {8~0yI_JhC7.h[&}Lu!a$U ~Z`*Q-E^&1%a2n?M* i<<0 ;֩s?[e blj00r[֦Fc5v Y[LGPpm,^ TM;<`ߌr(st'@nK+YpC1[Y()hg:\AV黊ln; wB?] ΝRN9[hmVWp3w9LH Ԝޮԁ=q<dFO PL}$r˪ bW45&Ò&z#F*qL$^ޟ'R Wl@Yu(hS)Ň=*)ME 9^`8{/C'_I} 3MeNٴsd{#F,`A@M֑@YQR|aY+Z\̿ p攵ґo{jHsus!;34uJm\eS/gI9\c=Ma+YrÓ$e"AkƅBn\/p^"x_;GX,_@"vxD>xo7n}Hym 6nNiH5Wlc"AwVbo֐lRC ^>Li_>NmG矚t/8r NUe@F]3+2*c /?" 7v|J@ C$rA2l NQpPtzb)wLCsRǵKۉ{{clƒ=ˢaKMX' J~G:r"6aHǥk35)k_liZځg[ɑå7w&/| vl?KMfjK#gz 7JD|XJb:*{ [_pV~7ݭ`x'46,}DJH_ѹyw>+RCQrpoxùD+TŒVX;,ELR࿙x2UF=oa(zoP fl ͻsH.8R޴chxdTZ'Dĺ_݃ ̀I Ll@g!xո<Ċ=[ G\b&a~yذjnksΉUvULf!i%ڣ,nӗx{6|]6~1Nw&A,a(5Wpe3GVoB( ɠmtafƍ:A )煇t %h3J5Po[sN+.6`׶ϐ zE3 CM ?v; yu=ai{(2-cHyRZT|1ޥC=*w#+! 钉_(7bDigc>q2C $%'ə8.1Ћչ{\{R*OEtjѶ7H+ 8]aNB/2'Ǝ[!G7 5jOXR:f.ԑ,Z>]*CJr`.^-U*Fpn?3wi ޢ]$221F5ݝe<NdMgܕ#6IJ {,OvסSO=+@*8Vpj4)ڄOd`+<1w*3ԡ3|n4f/gIA;~?ȴڔUYji.ZYExyPfEx`b^o>m)JnK)/R.&CgCi:JfR\xyȦ_̶ƭjK\.)?ui_֐7huQwZXޭ0~J<"nKr|^I|fx/ 2E[$z Ye407&_/ Q:cv^0jt_VlVC,x H ۖsnwOj%k_ңlFӫ3>m4qӧ&!Sy'=J%ڇ_%)h_nmPj,| T/0mL(rE|f㙚/bFPWOI7iEU!ٍw ˂ Cy^,CE)iENYQZMMhNJU01 ZA[ui6ifpqF1= b҆h_C{zLr}Uv!?7RZ\"#3bBwl?&V)HDkP|?$L@p"q޼z7tZ6]$.տ --{趛'f~/Wp/#VD% Fhl9E%o]uU\fX4)V vwf/qbrȥ4/˾ I.LA=Eԁ9LZh&-()z xώ=$枚.\Xuj:sn6n*h (uSNIC~|q/!S~%ap㬨E$vlߣx,B0Cc"ii^x24A_os :Auϼ)% fϺO@(zfEsH2H,!{Bϥ4.wqxKJXf <Q~$Bxfŵ ^8#sMqijm?l,dH'W|lZۀZS؈i\C\7j8rKM V#vJ%jfmb ίmmAפ.?[8&3[nG 8 ]7DdM{&'he+/c\+/mYU>]U9b$KJ>Ѝs} Aa 8B^>)'OcgdL9 (>4v,zydlH7y6BQ2H0trT u. ھ~>mj,&-ͳ ?"Ⱦ|:˾WL!`x#6qn:u])%"8q,F'E\_+\q5}c;p)DZc1dOvj9^'su&K%kqm zn2!oCVi?O.8w7I ca?N.U 釟I2;i1xVNFT9=&wu-]($eB%dOP@X\} fΗ:SK?粂_>C`DO_vԑXEM]Ysn )M8w 0I2˕D=JO&h\Z[+mVL=?9K>MzM8kPy+`i)%D܀&T +V{ W"|`[ﻤe|ee BTnmf&H3Os> {LA4֥!$5L 쪵H)-PZ7xel0/s-LZI|kd(hkK'㥹Mջc#~&=?C7Hlh-ɛmچ6n/ĺK FQ(;n6U.@= 3~R hԦi vb D׶A,?:~/-;|z^Ȼ{%wcp+ 54E}k єIq^Iѭij0 kcʧ=[9l+jtj̢OL9 ׆jLo DAxNχ& d0O`£ng+ɲ(vq>n8%N'8 1^A7dz Oaڊ|QԢ;"?S*Kqigkr b Z"S˱8!β8 o_a ?ӌ |z(PΆ:P|{i8pFbЋ#/o6=PȈFWꔂņoȷXu&wK##rANaɦ 6?L\ Ss}T2|&M-\ʎi0RP]WrR@ O֤3 2Zd+52XOp30wmQ!%U{ ]9obw4T^Ttt\2u4 q74Q9WG-Zd-lK3wыRZ2Y%ko"2Cʜ2,_뉄%͓f/9m2'F I+m1q0ȌO<7*Ac5^ya#{T XEjtם\VV@UY6` "YIdaMŒgne^\-1]yLIgA.F}:+tQd'5 :O)W$DdXkF\w DC땗wLV(<82CڌNnn1ħzF `c">Y[C>Ņ20/IJ@!qN'86' sG,jZs UA%*x? 8P͍`I›[P5粟hP ]nl~h&ԮB>O0՞ ?K$qfgl:B6o/+D椠*'/?@ ~WXO#Ӄ/bgb\% zKIv?NjYw㻻+qx>`o0A׀ _<8ԟ|$,|JԠfJ"Og%KCi%ߓ\ኛo|ҒJ~BZ$uQy~he;{olI2T GcV'Bjd)INˀt\Ip L6A[=MVgԞtՔL4c1E'Ry +M 8aH8ΡٟRw:l.!}JwYNOiخ)d"vhU|#pn#" b+Ҡ6:}t q'O>,Wi ePW=TdAPގGsҜIPrQ#bRg3K#K@W(\ӦINAuvEw Oa(4oc~>S46xa0hh<°IuS׆@ӕeR>|aZc%l(n w{5;Wk0=` | l z+wNԾ:ٙh 5| MW LsFXo&LEBΑi3^x*u=j G̾@K͌,eZRb_;Vn^)[Tˠet9^pZQd\. -CkȬ ۨ7[C9 ˟,h=~3JʐY-+E)‰&EBO&)3h 0><:qoԶ*J>[+Q, Tl!nC85.Kbq^:ڦ% @鼮yU5Jpl{!fxX%mk΀"-Voȴ9LD7E (xCMCeC'D䇵h3E^dXb ]pTY`` E]t"li /)ΕVB!8 ˾"sTݧ$t6F3-@ 3[P}}O.?  Ŧ: qwH~i(SZ/D)&D- K&$ q |G=5;-y#\s6{ Ư AymώHegu\Y%#<]ݾt|JUA_BOfT\@ʣ("УL> xjn JE >,.]\5{g՛k-IEeۉ K%xmt֝zu?q* yv>̐ycg͏l D-siƅA nyg#bءf?;p6 V7Kfpc3 %f  D.n:ͣ^m˒Lp oCF1:CW(9hm%!&*t@MDy_g k+߷"O3W Nsq1sS={3fc`cUC͡yHT]I! =*/Q$?[[ < ]aUB6K#9\lг.'q G^DMLoy=]]&vSmםBTsq|jRQ҈{pT2jv꽍_%q12E2Rޅڕ >= ޚo(!J u2UҠRv҅2S08^y&y qP~}Qy]|°kM pSYvZc;![c.>&;ZNdVXFCQ3ң$Ž)2Fft꨸ Hfaܢ*̚4vVJa+?wTgH(ִؾgB*'  a,ڳa@b͝}0阑KpcýN;q2d;^laW&}| =?&;Jeu!)4sD\g4NoE,4۱#CNg1G>Pw90 J?8?2aG`7{JBFpJzqajvbEyAN\1JymR\[yЅ 9B5`>XR*hp,+Aks[[A/^t ?(iO/9TAue7AQZ }ZdH&N>%Sc^0sj.{;j΃%S2VKC|>B"MۃdYۙFv q N9 ho˂5(0ٓݺm3ؗх'3ߑ2 e6@hu9wtХ A~.#Kvl 0=GY{lIvoVK.~֊ٞ՜ie  I^{V6<<~ $^YUFGe9?P1nD&p~H3fJ&zdDd#.̳ڡG"3ƨ3M^BѣVYo$zMz!sPeEvUҏ0mB;{?Db5m@sԱ&z!sx l/EEMtnAr%#HoJT-l 1y ZʔY7}b^%d'5b[}XtAf5[وk]zt$Λxn"POc{R[`r{ؔSC7%1m@ѩ5D{޿ְzoʆ(9*Б~ A+1O0cTԿɅ_K~Nza,frb2W\{-8WctS,$y2X;ZBEevGlӰD_p‹ZՍ#R>cZEyԱ< %ɦ u`%UȆqE|Qs,~$!khh?_}@c]q5\ٖN(ӫ}9,.QJCDཾ+R- zBlr7[Ķcu.TISP7R<K2%Kqm7i:wT| =_ԭ!ֲXlM JFFpSyo%"DW1B!\`ЀV@mAdS­vji';}sXeohֱ;?¨%8vQ7STLf$oya#*/A'onjs";Ɨ%N-gQ7=/I҈Is" gFgK!dJXu%VNT5tK,݋cY`,BVϨ>ŰS=˥ 3$:䝡ύv\f *5: dZ? ?{|= W:H i,zK%ˍs73ϦipäĿId OK0.#y;#o@g1?4p7O"6\6ot/}&gqUܴ*rRs?Iq(=ji|:9H'| E8j3LSP&G{B+fYcjf bA0| u@aS#몛#M$Ḉ C3w@hk@WXƅ;H"Ck H g1N98Ympf_KNs-Xʭ[D~񉉐l)rt ɵx;lͨMuVPB6Pmn zo΂L"՝Wvm5WND#~$Auʨݮ 51#iAP 7:e*4@y}@sl䑒,‚JRw4 JԓMҒ:?yυbox^N O7DA%C=|o+a-\ԑ~Omt:0[Eik[vrF`*_51,X.7^}>Cbf^stSGե—( BqjVft + ~99;^zɁP93+TXƃfæsGn$3NoɤGcSw+3lYܱ8w}TaUi]%u%o9I4pYִs v 7s MHÍR|)^6,Fɇ0EKeB\Qgӄ矷Nala$ٜޅuO78Ej%zUy϶*fiv\ 3W ^[ThC4eTuTe1$ͦ~bmp +ym摌3^O} T\WLFHqARR+2D*A#K,6$ݑCšUmB^as'yZ^a'mU?s'A1F0m>@;༎DZv#k26c/yPxٷ6nJf2(F7AAZ~=q:aApxyČ.IoؐjOO.SagOCVѷYDzo9 #ega l.Cymvsyt^Vtt#u(X"R;_";3Aϗ:1n%XY4Y7x;8& ]i]:U1v[gqI,kD-B91ON֐{d(\@aW|$votЀ+T3Tr|'Zf 󔧇i'EnzPWʛ?fQ MU\f,+C6ATX tT*N]h??v,jqO.Ffu \W $.kR<ğ>X)WDl0%}&HzIz ;Pe1b"~s=q83 YVKĈUaK@GYϟ"_|?NC/X\TQ62Sʱaaw8Z_2p|$a`dfy$|Tj-*w㢾=3vt,|>6x_&p}_}iXO'I-&sg1K8xt4=%pѫBG.Ą7 lʮ4XFoꥪy.=o=:M˜5UBEfG[ll/}fɑ1P*S duTEz~ȈUT@Q3c!DV7Tھ\@r)/ˋ@S% wWjIrR3X%wX28EE[bWPbwFt5ٝې-I4=v=)J1 IN03PXPbO핔{ϋ*Et p/0V"Zr֐5ǎzn#iY:n4Nh*3sRQk{y /]`?YMNkha Wt4vEY-guNu:PAvA\aJC)t}6Q` t~ѧ@i;MqHՉ-KkQznڷqff02#p+h.1E w ۵/gn)*=e0[NK")T3vlRF6J X'l_s X>YLٿgl2~/Tp"wjP Ve`aU3kt)o8! ܷn{W-jfwCaU{J9 S! Dq ˬ "mcܙK]CAV&{Y=Y003!7r~+rX2ֈ˩ /gӕ706V'TJ W\YD{OgUCĨN ]~ s[D$/DZ~(Do1Bӿ!]٢`cd/CQiSXg(30v/|h;nIY $]+n6X-[~Im@UD!G&A6'sl)iR-̍QGkSOBS 2OEn#w"`P`G ֩ۨq8 {G 7Xlkc1%÷[2(or|.F D{]!qTY#P j hvlŤ",,eEFKo]sYp7'|ANEr<|y% W jYM*:wGflz~J3q#Vm墩<~fzT2튷o'^*.(2 Sz<;켜y!f=hq+t/JJw8D}NQ6>&3挪8fDx)@56HKUB0'hjR? ob_e#D*ϵ"̮"j|yI^|ږ a@ 73 ]erjg_~~݌"(a @XS4;٪"p;f<:mԵ@FH2{b+έ9-Xu!{SSI좌`fԅ,&Ws#$K\QEt)}$MM zl^W`f ̯@!HV<<+" #/4b8> {1e2xcCW Q?oWߢrF([mE\3n.>UqqTԮ\f~(T [ԙA(0ڳQ q[C*;J6[dxvY&-i| \_xT˭!xuA^ƀPpsUHpI>>_QBfpZ{e׭CV$hu%#RSr%}NC_,J3^ FldPϙkvXjH[H  STro7Iho䒂3Awۄ5` ^ކja榪/NJzFsg A)ݹ0?dO`tcM GF~<뎎5 ;-;dI}ʱMbaIļӚN#Ngra̓ٹeks(P@QSûB׬3Aɞ8z%oAl!8/-\1IcLpEMrJ`\zt#nr3KB񆜨n`.8+">@af G(MǺ`)>ad+FόoXë$DRyy J?)U, FIqdY3ژ2 >Nc#t͜f٧oU 2:g7иq, 'WJ3Ŧڭ>o˷N䬕;s> :K eEEFX8p(8؅ݏaJt0mc6R:{󰩣)a5n5bGq,Gp&6~> wLpqT'NegN# rH"4(w(k00%٥=W=eE[0_̲ P7Dd3eqzlح[|LbI;)c@Gȃf2G(`\i>I Y@m3?5QoVe>X ؿIc]T3NAtR2c}zM]~,,p:p眃4eE)p DٺMygO`3b;2є29aaN^h쾯c<,J;h1<V  Jt\'ZV6xdq\E)J>|cY2O,B\<|ڶܨ%]#; ~ jo颐6WR|p4bTYt 6 XQ3w!][ʼ#U^]hy_(Cw-SՃk{/t`ԍ)e# ЉVfk,;6楪嫅Z"G /ڽ8#4Ўcq3ߖ=箪al()h!({wz@9ػ^Pl'hG߰OTWC!_4M@_uRgH.5E͕|`k)`WBC]bԟcO@;7 QUDXZjIWVն,:{蕄Ɠa3@ڴw4ȣW1*}tR(W"#tDۇ+k{vL&Ȕu5|g4bޤX3r9{zU,^u׬[gm]p_pbuHli`<>$ИMÄ"wC~S?1ߪ%oPɫmAkO N[Z }d )tcS&{W5^K{eOVk6ecV«璬Oram!w9I$Ol2gɆ?7fܓҝ:6pk-EtYĹ*W!+Bf44Su%6w QAb>p1b zV*''#hV'w6gChϔ̅*x0N7ɷ!/A1gUT*v!ks0P[rGVu(D:4 Aǚ0uJ_H&\32Ŗ3mQs!NHug씻a"eta] *t {H2HKԁI, o353s,)8Xs=:&L` ٭޽_Dorr@~JxnLj@F`\ |VswLJ:H)VR`_M?>ƼPՀ]2òTYtW~*K$: 2Q|퍟8(!Om^vOXT>*BI+W;ԑ'gޘƥq34hS{@P-t7Jrնjmv1{`#)e9Y$6 M]Iz-9Ȧ `*9YAm`!lz+b"VŒRu͖\Mtr!շ[cnWj}*y=>C"=T2ʆ&}%YZ˩m@d02 ,,1\k+i.llk}2TQ|ko@7SЈo%9bP1|GS P sZ-9sbwXLoڊ Ky{\ƿoOz&xPgT01U_T @8,Ӛ)Q׿j#LBSSBLP4Pd)!,lz͹CDTxR3xT΁oXfK}lٵi!AQy׾HwcZ]׺_=7'NPX>K yS]*&;ҋ_P<`n$ ZIMuH"%×Jd T̽o&b51OjKU@fCLdcCKh}qq#3ĉu_.3C/< WIkd/GSv(6cՌqDEbղMچ)<+#oqt!Wo/QxvkOB)n mJKOdf3Eܷ^]J'4U6Tk8$%t])i!t crF;?&1 5ipZb`bչcJȃmT|$;:|;9|SE?=Yhf2՘)Yʮ4_#KR(9D?Q^vWZv|S534`"muWɗ\R̸,6.a W$3vjRujQ^6jBxd3 D]\8Xs՜5x^F4|%^И鉧Ѵ+2[";ᔍMqaK[]w5&!up!S xƮxspcJom%RcS~{({GɏL1LF'QB}b%ȜXZ4\ 9^v>P.@R7Mn?.<@r}0oX.L?H)5y*kP1ը*ÍНd-ї 3 `C} w9bBqlyC'=ۍ,?Z= u">S+yqaBF?hڞ %ۈ5"K!Ъcnm9}3H34\c2j%6KCy*v番Sƀ%3>#~Fv,$ͤ[ٖH;kY9rC+4@d)҆䝽3##K oԧg* @n5s-( HfrK? jW$OaT{P`kNf6}ZBJ~ B3>g{ !aB0aYLR z\;H@2YY/;gAhXO8m{aFU۴S#|"xyJ+bQ RQek+/"r Եx:" Lc'Wg1e\dQu\ x{PvQh@1s tS7"fW/=⧜Hog{Z7r F`$61|v׊ɵ`uWP|,!14м2|fbw ;c7lf D%VfƸ*IV~c*z4L`3t#Fv'pIZgMYnxZڛlƝI?4DյԈŏ?@ `}U^dG@;!WʬJi:EM;~hZEL lFt觩>s3hn D݈Uîb>]7xAnHa&h`(!R׈ɍii>rFFjbQ&\"1\l>acⶏm.BL5.N 8sscTRѮqmClX3EW~e<\%Ȭ.i$={gk;;V|<@( +eT-ue`4^}zVm]t'Tɇc BhD9K-.p} O) 0xLȷ=QDȔT_VQ73e\2k l14@3`4PL$CSU4>2M2AIrۀ΁e0D9_gϺ1L[U)4>GbQx ^1pQ-XDF29YvX-/ԯxQDX[*=ˡ%:8Q7`\}2g,͍6 I`w(fIӋ, W2JQBD/=?9EGե'Σpj:gSU3,>ore ]P,._7w^27a!Mg$jyV&.xFN$ !߯'$$5fA4UrAt1թ(23S<1P\3PnA –EϨ"w}N;ZCsԽ,,1rNƞzxw4U`)1wf ؽkB?@mCx=++{*!GM_c$2<A&*bwc ř Nv w:1 W6- WU_@FʿHkEiur,iZ?xP'Wr '! uBG=q|ϼ]9[q qőkd#UI\92u)t0‹ eIj_u˚9܌:ª-*v/-X #sÌL(Q r@"0^? [v~awVz%ᒺYﯛD"Za @n51]3DIȩBlgfs~cgO-ڗ h]VE-BY<)^`D7X` Ӹlb`ܰ#lo)?-tNޮdgj]Q={8C4YfEzH)(DE ʈllu&}~QunWS30Od7',cѽ2+r`HRr q Y$϶֬< Z*\-RHZKp}!3c|~m*t;$B1ޡx װL6G&A1Mܫ&&5"s]ߏ&rGbY91Nnj UB߿ i{@6Tjw?46LidM_I+UX_ACvjZU {pq[,~7)Ju]cZwx@w!q$?)TVwb[vw8Lq bnϏ+T8sn')+Tø ,ŌE, mbf|5h%p.Sg`}jcE;%Β-pqg:y2YILhOdTWd3|@#HںE$O-ϳDMH_t'2I3U@Ë+0^C86 "SE}qҝg3NOcͨXn@K`D30.)$÷ܾߗ5`Y}"IT Vv ꮺJZ~ǖsm$S$gj *ґ!292/@Ρ>wn$^m'r hC~SH|抉75]ćHN DA'dY |{}}3}]]<"HwUkGz?u6m? z+':9(LWҟܯ`*/g!3S(n>*M!;7 |ʅұ>̈́-7_ NQiyAV4Ab٥~JuWr܉,sO k]yҥ;|R徲.0 q,4kWa!f|-dk l.D`54%cS= W=i,1raH㳵c4' g> ("uu&K+V,XP ^tȵcW%doPTs|oޅ+c5ZGpc`eĀOv"۪ ì{J˟5n{6)#h-`>~e0Z/8nzMdd>cS^ CF;b_Fm@otj۲ז6 Kqp@Q/RCz?'OiLAüڪ%TY831L&Z/X2x%zâL?,l?so%psZk+uy/7C7Q| _K0颛EB:7bFXrC4rП:-,k}SEC `,1U4Dv~UƖ hg X2ٹtvbL4l V"]8IfQaͳCG5 hg %C ^VrM)w>MIeUY$X1 .PB'|7Wr (=^Ұ|٭P_|< 5 & Vdpɕ򙁤r%o7cVA.AU?]^x'l'0 ; gB6Jػl3B!p$ueώ:59C`o`%DI&ʮw%V_$ D/D2dI=HfgүC Peb鱀Y⧚L.ҟ/k&zw! ?Zt"ʊD&tNۗ#a*=Yu6E=1?W $r ԶLfKf&n>V Sqprղ*;u Sv^gwķ}Vl:@y aV$K,+Yt75yP2vqoFaz](E:zA8$S/+6K>E{ cN4:Έh49w+_T_03{YXF W%oWx7NLbcA>!#=P.8ieyn#lECRX{kS:0麰> 5 +Ћw赅8# f4pD]uLd"ɪ |ҝOeFL $P.a07.9`TaS8LxEsd>iND\BQ =0E{4hx=pf(]ݨrN ߙFJ@|~g!?X8JFh:)x^㓘X8XHAxz7KuRG{dSPK} ]}钊[1YQd[xnYs(64 5Y̋Rナ_߮.3wT2\& #kEq`+=S$UZ΋tFR>fw)g.o C}$\Q>Hm l$|U~ll!g Fb3v54R_ -F3/2Ҳ 6|vԔkÍyH9/CYe YRW0Sg؟j1 6 Z>6/;WBZ37nq{p?ʞ#BntlhoA)>wV1ªi 3g|I.T.U {@G`PP;i"HQDXuͩ<т=U_M/qSWꆆWR kkE675U")isDuof.}: ܟ)5\d!r9ׅ~0N Y[9MONld6lhAC;܁ tHvGm$$7}at=鐽';1)+%8֩o/":H0MHfa+?\&E Q7@=E~l1lCα ,˜=Al4ltߍy4B픣X!%G:; #E^ p0U@D,CPsswP Z KTg(VL p憋w[b1BOfZ ˣIk)2/%3\6eG >ʤV(3% U%[{!Y ܢ4(oC&D`CIXL]յGO.&}*/²#D2U[i O-umtn!gSŝ Mkynf4QB3eQfW˜R[!w]ˆS#3dV攇|- ]>j H }-xT_lWq3 b!>~#,CV['^;YK!](.F]A>Ou`1lޒ)k,wi`\&.B%I1?93z3:xի:ī@($+;drm 0uGu,1di & mH9:3a^C2ۘ h:hhkX6"dTD--^^6C=?=pw۫i +Pg$}I}d뻌pO4:H~+_w!eC ufPD` SHۇljSbAu4˱Հ|\P1N`4F+ό#3-#P6plt=[,>])<"X&MCVV׋ZM].A'N-axH3GZ_%df(\MARO~{`́9$?GK8pbC9fb)2|Ӱy9C:3>xP/w"Ԋ̓euh7v.1Vƛed32DU6Yyp5U4Nl<;nj>Q}|ŷ<ָc`4W[ \^+[n\35Y̱C*됧3њ'g [⾰q=$[r\6g˗xY--4n*_ݞ[ilﺹ喌_GM&w\Rira|v?T-Wfc5hcZż:3̍ӌ'} P^} H=}Sܕ^lI ݤoT0wZˎawq2&:bďS9Ix%"XTΰ?yHRL8)#eYGFl-&m:w"e kNJV8/\cxlv:.lSg1 AEgD 8,crP\ nY3ܿ`C4msu)Pџ7<Ζ1NO͆> Q "[b'qdIuD/,nr''65VTp (~F8C6*@9)ǛccS4Pl!5*ۮb-. 3nx5p0P(:'0\Ґڒm4t5GbuXJj.uTƳSz*DB3)5rn[Ӽ$Q=A|JŰ9D#gL~?I\H<#Wjj%-߇>-ϼ<I dkGE Z q3\j-5N؊$PpvL[rĤi{3ձu"M ً @#i$ L輞3bM#( PW'אGYn({JrIpcsW@"<=f?,tv_g kOC,9 jx֜HZemðB,ȋ{ 2 ؋. xw2)*8&Ůk%u؋̆ŔOטI?/!P9D=(qeϩA Y:: ƮBGW$>6-%RO S=ɽė'ϒ}Zp?t R*Rqd#ױ궭LPՄ5qph3d˘+s}In*5AcrFK/;L 9_p"B레=iF J裕^Wy'dRSyi/3v$s5͂}mT$VE#Ԛo)Opt{x9FEaO: /wr$y-+wT׃-$aCE;JW6x!ZЫNU_q$K뗽k}=RqYIo437:*ܟDOx9#oI"ݯo~ahc 0(% @ތ"BYސALvD3 *4AԳ.wtèΗd¸4;Rި*L?~s:/12E(∠׷-Y"}`V/'jR% 6l TDh^W81$ hRphUrt(&/g-Q~Yն/%|w4g'<bMV=VsCZeH ē=COx qr3~Љ[H9Mx?+*yw/6+|vbb ns:ʒ%c0/`p;=oxHCx5#ؐs>?շ[=!J$ b/`?,YnP7YPfiz$hv9&#>k$Noa~ m'7&Sk)ZDSJkz`/)OmKZt>\yǟz'rTxE֝$NY[j^ P\%'O5 A #|Y(+]!e-9<(,h;i8-":p>N8gu0.Lnf?"u@0jN cSkaO{e#?Ku~:oE#?U4^aO[dGx/_[ 'Zo@p_5JC(eC&T$hO_tߩvk6{G'<[[U3,5{P|- =R[ԳA%Mi kR2+H/?*=([M^܆h}ڟ8"<9"tT'Al x1Umj)t_A4H9)nTtFs҂:bwGmʵ!$"`@/FTT.2c,~e%WpK54Kw?dq -lq!+tvF7J+K:yƋgqs]!.!\ZRj1ld0ݥ\]%52 jr'tIHZ'X ?j e+2\t" i8t.rNՑ xamThPx;MKgzY:SHV$le[a'Vo'.E=!m$&3(+X4 RElGF+6[:D!CI)} y-!S:5K%ge}@3)!vY5%gtCi"WhDp3GAϚMmn1ԪLqlƮe%&3v.y=RY=Y @c?[pɃY0}p3fPjw$K}w\fE-jFTxWy׺`%A:Ns3u=J rlfϠbft\.dG7[ss _:Lx6΋`sʘ@rAvWZ2q4KYbc1FS4o 2?ah & Pӎ ^}4d3Ľk\鿗3Vׇ3L::kGomVr߉|"btK`m%8+߻M̚ǭ{i@-B[ _Zi\>剭 [MR]J<-A7Fzb_lRi x\܆*W8C^<F5J\"Sn,HG$U#IK ^zNQxiGK"iB5u2VB3â'w{2(0=F~ %= A=[e żMOcD27|n |=zf4;-?c ?< b>}Y?y;]qH0n!xv| ZN/6πKD\m*-L];WS\-!O҉ uuizRVbJךlÐ:LX }NU; C%@c,_t5,`#R1N/qI$u7La:'"6̉9Kt|C<'B2Ltj *fd XxE)Z|vES]?Hz[=B9(8 _i>eή ovcqJ}m*}jU+1d%v/셟;.=:4D%rU`EMoێV{.u:U!+aa*=${6a7g }j, M]\5 95qpgv-ke %>Pc 14I.N9ww+3"4YG({|كGϚQyh~YJ^w|~Btgm)E9}ԳabWkJ5.vL;R DT+(/˧wdIjW[pO3@M!N[Hi \@E!8pFK8c9wA @m\pօb˺9`JA\6z%W{_*E#Ou^EYz>Z2EU)JdVج`cjN(/uy{L.5aېJyg@X u'^3ocY WLmKCavg>q"nGa63TdgHNH:(.M&ytKKGx%c^rBqXOK4/O?u6-6:vY$'AQugpښ9dԜmjKL$9®W<6-xI*DCM8`b<$Q/QcE&!-PwRv3{1?asA+'r ҹHBw| ͷR{(kq#WK.fuf`vFŜ.Y{ >/A*wT~+K#M@u2!Ȭ8 ey8K)+7PSAI}sU/тUK]kdCچkWJ֞0T%*d%M d8 vqt8X;# ru@W " 2Y r_I(w^-MJTk{N*_8ۗIkS{Oޓ@W%riV5 Uwtkhߢk!Md⹱"{Ps$#ҪQ5c[Iw-0^+]mM}z,T{h/V 'vN6Le*âŶ'9Ml`:0`elFwB]uUG.@[HO~5߻J/>}#RKs<[]#F@,M"sCڣ`˔A/W|@!S yB1k!BΞI %Gjý/RNT4;H5@ɶE`θ3U \nJe' ^#>Rق2B9d~&z)&0+-kO(\O ҊetLSKOL8^  ;س%]~ѦH7p9*ne ׇl+V#EKKz'kNu3gY&#s1e2D {o9MT/onx4fʖ_QQmac8 v&FmӆEx1-jc2ZN[I7mW ^mY~62ܗϞ\AT5TJo[ksgMKJ Ň N aU7 ppؕKBYIBU $Nb;e@Ly)h 㲶njs>'ws%]FcqѶ?Fv<j(]]\ t h3ܸݜ[{sd$Hɘ)]#>]h}B ZRf%1u RqS+JcR>3vx/)9r '[3{`zM/ΔiWR8SB¥y²WTfhZwҁd&t5{s8S7{*)Hr0t(",'܍&4fCϓF, A|wcѢ޺*\%٣;rJ_0HcZ_I?`Vԭ ܻ)}cD$Uԑ8}By坋 qz}wf<)^CRa/ Y9dbѴ0CjSBOXjqqYk[Я !lOQU@$&NmaR(cxu[ )1s_MȻZ֍jUE'GZ B4\76an#/WF_Z@Ϲfͩy7S{Ӆi>c5!Uqi)UIoKaMhS o27J3x쇵BH}:aEQ$\rzǯ3霧%'Ybt6}xVt d!1icnqHtRiS2@!lj)Yon&N$ͳDOW) sӝ]'2<9-Rī]P*$,DQz`K:Z'TzsnYeZLPO[:NDm}O2ۜ[R~EjI5'E1 s9s\7Vhc1aQaC K (v>xAm~}@Esäoqtܫn(_i(_braqb7Ss-'wNVRQz" SiFf~mVPC uq`QH&IHem/膨242.׈?AM E>/nrS߅)wy? %ŗYarOcY@9.=S]0\\VݛڟxOkgN|PU)QvNr` 5; N0_ ){d"LQ!_,@uuxXHz r/Fo mcP%}О𜍃k.P`#s{ 0}nF4W\n{­QnIֳ:D戂O#tC {ɬmxF3 hR_B:ƒ9| WMGJvO\"i_gO0J fI OHm6~c@6*+Wbۨ>&`X-3Z1#&c+4E~a͜G{Ӥ5{W)VSAkB=wjS3<@ @3C$n?YqY>g=t];PSzP% Ω?X9ny32ռW<)2N֌vQ+heJsRkqԍ+,1?)s,عS a2+)llć'rom`&<;-͕xˀt`0V][Zػnw81HWQ]j:^⇉~gN-_6*3 9b]UC~uٙ>4Ɇfo.ey˭..:e,Olx>XT? 堃BB'j&%h,(hܯb]2.q7[6={Z䄝h[GbR bS762;j@[O;@V0maDZScJO_ET,mS$PB6Ok&Օ$)h\D1=KbpBq#B܅ C,>QEnZ_;dvY3ĚFFrF*`FKa-naO ؙd6< Jod?qʟ#یu<̒3le#ni˥55>n&VN44q„7n @&F4b?j33vIȴl UJ5Yk4?⁛[.2(8тYfHEʀ:#39А[~OOdž &>KZyI!1p^kf};42hԴNřsX/8@o  ucw- [:0Q,gy234pZ%vN@hJ3OB SIK`Bkedkg`. tO "ivCTq]Yj?FU>ېB.3$-UULli1ۘ:%>% 拎G̘T12rȅi/sX7fΪ_F46Y4$U Hȶl6"Wy p1'1f Ŋa_Yqu//)g,ys0s4[M5>nuz',),zNd2%83rQ?I%i&rx(ѴnFZRHzC]57ݩmamYiqo m0#d-7Ocα(yT&|x,#>BRT]Wdۨ`dwo(7_hi?4(cIŒ=%ѳd=}?BXj(S5 K4 G~ޅBOCM+ R&WEBoQټV+QȺy k xǛh)Ƽ1RZm %d T(K[eDוC&,rĶ̂ȁHlVT0wlr$ dud*]ife K1| k}<4݀QW{6l1?Tȃϧ4"V AhS2[ "*)ero<:宄'*-JbPP@jU)2F_;ļtUm@$7*gU·ΚбkٹF"8HD; ~$6N ru{V={;K]9 r?ߤr{D# |'Uex3&5THLw{MCv oX05gHdtB0:ΙdQ;Rm6M29um:s<-!)wWtu71F#CBGhT}NnpqW$X[`}gRH]^-Ppkwj%7or5^:-tWQNן^8]Jf~um;nCTBJYLe&E 8eN z*6/*xTaSzt(䷖Y*iA: {DӽJ J~">UA]/=쒍 G=VIɽAJѴan"taE&H(T'/p"vhZ^\wn<зG '8͖X .lzn5ɀ>VAb"y1RxV=\|f 0t=2o<79a^(i!A zЛ!`7xw^Y]yY2ΐq&6Op W&ØUChmNgҶzuH^I Uo}ԅ"0ɓ#ڐ!vY'[R0a] fXa.ɆyǞi0dәVa0#V`Ϫh΃L2Q('hmE'Wg$9LU 5X.|o c$Y!?\D GS nv>[*0}2w yByAh _Y3k@HV2Sfbshn,rތآ{ ?U@4LhӅ9? z͉Qt/1&ؖ7P?yn U.jgXWTK;dsϑ{D pwtx/ÐTK7<oM@'qwBsng Qg0Z(tAgjUDŽ)e{P8;eG ܑhX]n'2/33TjfㅥՇ,eN𳟧@&KeU\~e|GɤDvѡrx@!˻PI~)%- oz?\ii4 ݲ&!@]TpIvS)uvw!η5ss943nfTii䋄謽i:А"yyH;EON01a2 ^9D/2\b.3Ljj8Rԭ֎l i9URj cɤ0n=h CshVb!lhD v B"ƙ:JMR5ԩz~u=8g("wLƁhcWijF[9 m0)1 v|$Hύub!/sTt",{\rZ #΂p@ui˸ڮ!-SXpMRGj .Y!<4溬6'9g0ߊי} ,ڕU rh6)'c'ZN9 w>ဨNMw> nT5FϴZMIXʓa-]Y['=|L.шۭMue|aٟ;Yxg$SmxAKt$x[u ;FN#~Cz%.܅ߒb^J׼>(Nޫ1}L69.AN$T⫛Cm (o-ߚ TK. ן309|7ѫ2;@|]0F>nZY,,AU0졦_[ߒr="п̮W^JUOv rgc,SVbkv 0UoACo AP*L!PΧ ].}ޖEeN[OLLߚC z5e+< r,A' >qw֋uwK5nWx-xhɵ*C::Ļx,5eԨoCK%pϵQo~ezc`vP`; By Ӯ0}ALD!B˦E,k_/"١ \M߬v[^svrz$/2h)d/ۮjQz6᳡81K y:-6o ,S IaiFdy@ |FP b VjEkNkz(ݴ5*O]iM‚T5Ȝ }H?a /}=$U.a(P7S jvqDf O9j,oc2Ib <jhw/ .$3%\ #wՐw 59'4Pa407 鸁"ެ7Uba֕IJ-C`CԷHe5J qG(*k34C* hwJᣔ#]7]$ST~1^h ƦL7Ǚ4@j*ݮX҉z¾OH0ρ X*= ΒC: q]mY)&P|xnaU'%f "ۜ~p[.)`[g魰\:zčQ/{6SbWHKGuD+qʅ45.oМ}|8c~s)BP;rzN=҇[@%KЁŵߤ&ȣ67x>T(çiő)D;Z#P)VGR"m_",K]>6Q@pF_uB^v{[V9{ڏ~-͝<.)WiYayG/΢-uvh;-QUK'{DTJ,MҰBY/ʏG;FrDt[>ěN~_ͻm<%Ds↉+_n$nr^Ylh60#9;W@c@K9(fP݆3Hb(:FO]ks^@4xⶻ "6XFSF )s:՛7qg$vZj?Ѻt`άOJ\H%dg1+CcHA;gղ۫y/j ݀ Z['3G׋6J/ u]TBvSzJK!zp)S&!d[Ic8+_i%[=r-UVƎQ#z}@:sǨь=.*5zba;#"Ok`z2Gli@mUVZ!|NAF/u$lɢO&2n*(:"yG":s ήq'\U;A!K-lcQh1`$O 'IFBF7;22"Ĝj,o# ViPjsj,Lt30jcIp2u?;g#)=%Tޝ~M:3@m_Pބ{u`'*{pc#Z}J-/gg-a>8=@N>")$OYJBm0a1( \hRpn@!="| 7QOAg=[GMn^8on ȕ;(H2xeXL[æ]O5U 4g(vh?=zAVG(+|Ix3P\i=>Uj]*9Iy*Tnո3urr6/By<ӢR0<5 b5~#,ݕa x%ΰw%i+*}uG u 7;Zo%mrI1pojE4GȣwN^p&)tJ @T; rwS}פ bF&!/&Hqv¿Z-Xki4JZjCC^ [Sb["uy7Z2B-}MmVFn{ 0ΘrL`7zyw2tx2G]vPpώɸ-z@Zy:BkRw8=Xbo]DSC0S?PJOUx޷|J=! C.[xԸWm6;i?Sa"i:q0̘K{tr;J"z2Hpc:ӽ H` +S67>EE5CɈ},GZr,Y*g|V`fx8 #!pj7㴼I4Օœ棰 l oHLಏ4INń]8l֝tY"X/T׫8sĺ3W*|3|,:S&f޹ua.X(Y.%o_ycR]Us3khA<>d|#V e)3DjMn&T&0V;i] '5cS5 MVk.ڎ0]OoRjړ;5X~:b~fp[A+{X%sw#ai376~kPOBa gIs)lif&Ё-YzyWIdCcz/R#rXolv 9 =Oöu2HU:W}J)\޲,3p:,$uӮ[_ 1x[+" NNsHgw; n­;Ɩ?pO(rM-P PQqgUĮZu]1գ-x~8xծfGp BDp)s[YvޤGAY` )DJQ1?-6P0f,5k{WX̵,bI(sy˵-AGl4+S7SZYxFr,KHgV|S Xhxx" 'SC4T k5;ssClʌs*5Zk;Y,K_Y\m cv$ѯStV 7qwH|;ϲ u7߸c}]fὁ ^dT;. Z9j (Aa{i&^MݰN%V5u<x,G哶/nuUZLjb+:RZix{SL4ce= ;Wo?++__:"9w#*41fz ZWy,E>vBf]LՒ1|e('y0ۄXhD||%KhgbF`۩wU堝Y@ܚJ?Xq}iԉbF Y-2Go:-O,M,*:_;6yTjт(  VCW >m 6OB<6V"XquZz6صK^.@@?/{$-.U 2Mʱ0 U(EZ9u0j8iJ-(m `A:,S0Sz0;kQP q7 uK=VKm|$_ T/ 8FA!4Lֻ"2Cv,D\E-oۻ%?4 t5&BǾ50=7>7s hXk'?'lc$QlLf1@x~\D͑5:G+"S9Ml{~M&/KP1ލX&pS6>V5CWq*|ߤt;ݗaUSH++-" ϵdrJ*eP5w։ZTw>J_AC|c9L=46&6DftYWgX[U(QD˷ifzs7ެ^F8j Ձ[s` 8w*<@6dSnGX"<:pALe"N`I}8}B70dhM1XX`5i[} 9ɪi B m}=}RR:'H#5>wU;,TSZP59Z1I==FKE TRk։"֌8Osw}EFlBF\g;Ѡ;/Lʾrg):']%Gg:bG93q*ek\24"kf %d28On<4|, >c ,xZA)kxcr-tC8{jr? o 梠Ar`˧|V\ͣ 3\C;Z&-iς}>#CNSŦeI׃Cz:T/u"3%uJߌC]\5 b٩5F(h5:}Gu`h7b/| `;z=} I3I/,(h}/ŽW!Y>69qO·Z{ 3?ϕ ߩђ0ۅ?siLx3@9$*1`"@7iߨr Cʶ%,k@:=&N,\=Pv>PSGG)fڮgh^K|cf:/-+= Y+;Y2~P ^VA;,glTµ&wӈX Q' ia+T]qHfO:dq5۬3:f2 eq#x}X?ԇ؄9zsx)g;OIwړR[ya<FEhi²".tB]w#ѺqAzV[k.mۗݠ4$lJ>̛mMHl]?O}iNge +hkl^>mg<]i*Z0C 1|vJ#bII.eÑ@uf%j ; &R]5[3^?sM~Ӗ.Ƭ0@|WӬ%X`'u,CxPN}E3z\lJ+eR_ =>ar9y8qAIرrL}a;.aaO#-Z_'|ewH"|TFWX1 B9'pMZ=GB rʬ~z${^Y/Aw!ub5 %_ 8:eėDQ9'H?iU$"mKTiǁ#-T-f4jl. v>]w4?t7) JHxZVkoѹ e4!ޒ)UEݖ!˅Bg$8>J~q-!|%V.ɰyK6nL :Sh&FeeټV+ybqinyS%u]G fr:,#{.FeG^?4m(Z si [3fjw'c@mЍwAɧ@8hxbHjfҬIQc<ʁt?:+ ;н A1 ~$#(e28^grE)CK4ҼѸ|1%wx6p?x:~Kˈ YeJ8>h%~I-ZVc}q#ԯe"=__dXMt>>2[9A#BHCЮ5/{) ׼&ŘFjzdr\/A>v/vazh! g8e16#&Uc N*~Sas v_E Q3L'nS^9>GuL]lY1qZ 4L((ۿӝWteIM%ͻ^^WNgVۋQCQ+Uin ڛf5TZ]̬dool.ޮҳ11ͭSlmo߁{TeϷݔƋ^~!Ӱ4vcn.@l-.espa@L5z=a6ԫ1KVhv*]JICG?W`^ܾ~5qF *0\[,4h}A ALƔB𦧿ڧC#N~1_K/X::h2du"]r#jJ*N1RaH$ύp-wt*@wz[0(3घlJ 1?L $ uzӢ{ޅGDޖ9W/mO}6rX'~iA`f;9?ÞB,70 Uiľۗzԯ;StmŃ,*%mc>~Oǐ4KN@27rxo vs akYǘQ2$% AmJ+onT'¹+MZh:H7W..p8!8^U}d(nl3 CD8عǣMf.:m>W<^uKЂ?7k+[ܘēJŇ}.=4Ҝ㺭)[p 0ck(yv}b` qLtsqjiJ5i?M"Th utSF49G%W2oqEIfg O7W"4-2xlg-GL*">pRH`v;e{o۬_~da7|~G{yX<4ɢ98TQPyw!>]bjy5OCLBeu*G>I>2[ H@7/'~kruȍX jגE> &I;$mJ!V(,?+p`=dSםIت[J}7U9Eg6bW$i m7yd&%H_=/2HiBCmQ xRK^N"X I.= U;bm-r)]ULƘ'q,NH cg;.^rE-B4 .֑Z?X=j5}XI8ha[ `Qp])ЦɬF|~XS!޹zV/W^SӷK7Io wfg1Rusƍab>qtQYj׬gfd["f ?(hmŰq]j/|Ey,ij=#>JCt|`$ǪS XE{UK}=Qopm-v8لW -JR~XAp[h \{FP:uըi Ŀ=(_%6,q[˱*l`Uݣ)[&EVآ#~?/$ɋ'3Viȡv'._1`Js_y}/4B.I|r>p3d|'_v-LK$"uꣽw~^h({5#8xFo}\dl#iBwԃ!0@ \iLFf6W!x QPeQ>2S/q@e8YVtiS1O}҈eP|qԣ5)q =ND%˟]pW's-RI,l3٣_9>%ڋa}HFs6Ǟ S>vLUFb* /w%QԫI_0lw *L]beY:""8Fv{&@2J[<`sZ ޟ ɭ!"dGˌƝST-j^.{ AnlT<϶h(-l垙EuX Ǽ ws Q%-wcq(V NGlؤkWt wV2m^~Ԋ2؄2eƄhILY~ KfeR 7W ѧhY~o0BkD}RXAeՇAk渖UiS3uM<u‵ IkXDS(} &`6ۄ2Cڭa';a sax%5j0*: [!0b";rD"T u%ΪsD3k =U);}|wևN4 ɐvuZ m2:AI2hĢ0OI @Ŧ_2anpb/-d#|9vz{PXɺN/Ea W0 {osiAw:8Z3?>6O7.Ȏ}G%Zg`Wed.)ڞ5o٭o<GFYL"R 4bO:(aˊ1~Ypp 3Z.<^ 'l^MXˁ퐕^Dž'Į~*\9F3ƵjvV~HȘ͖e%k(VRͲvMvdt~9ggVX8Mas?o+Z="w;Ioލh mjJ%NcA-pk#|L9&NAfkk  ӫF}"^&W&=ޭ*BjƗP:J*QAQ3 äwt82[^2`Ov.(oTG#%0@{w`^ڕwD/xhZU VG FC{:r 6)sy6#2W; Tݚw2ںS޼ C+#Yd#s[^ԾS!b{m LlAFDԚyF6w+2e/ ՋI>r5(V+wt{*.JED~l1r(ƥ;ҀYE'a.La:܌@|] m!VP)׊7 ]mfkQ>ye)\)[0s&X%ۜM"q[r@';NLc#w `x!lf+^FݫA6ťlI}]Ai,nX$Ogd2xuCLP }BFD`8`"=Ǵ]SbA=փɁVg\̬YQyS+F__L{Xq^IuOO`ygĦƈb`!AUUz5}B[Zx Q{=9%7Vۖ%.]N5`dIeRYhhn#Ұӎ8|Gnߚ8`dWCF1oKxY/0p,~(̙ÐttySAq7t|WvWw#>ߠ샥^¬//9)noz8g) mij1܊5#]<`.!#jFhSs_3q{9AC4+z%Jv{u~$ԉ ?aTLײul q@k."&(dtÈ3f $rstq]'Goi t=Tx:#Rl,ékU~4vӀ@2'|&㸎S[%'zx 0Ӽ-A1I?(n"j*!6ѿ6(D[gKkkq1a[Mr;Qn1 OT>0rd+^:Z#< ɅNS@Z(@v[ VV )v/& .L֦Yv7CCC%h;L5Mo.2NDŵ* <*j>O7RU$2nӯa!S~(H↡CdIekE_s*7=c?Iu gs/bs8pA)-[XOU![%2}]F 2YwÀ_u_s b@}˫=o ,q%H\ l0x;8hO srҕ|PHީJԴSAkkVvq^^ݿkq#К/ۚ"Ll Z J=JF)e(vT[~krsn_?#"X .!ud#U~;܊F4Y)uHeETF-;cG} i+c e45}< =s97}buOU5'N_d6a' oyjKlʉFIK"3GP\;$q' y i0 ~|R ld;U+()AKim:JOgwB3h5q^Hґ[yDY9HeƓZ[pU[E=Y #ay> @`t!H\>1 Sw-D{,f]n E=\LIEqukLtF=D;oѦ$Viq cN&<(2?k-cx%> ('L~F@H~eñ[6y'T ^n#uhŬNURo\s7`. z ]lRq9>AM$r6[4#iPϻ(?s UkV8+:10~-- (|"2sMв>B$eGԞ67Gp5lH^<SvY ^ ŔP􍣼ӷD{Hv3vVD9n. 9o&{Ca Ue~MV4J4Yf@T, I(õ]v_M 8II)vg_y6Sjp_lUĕ0Zt\ w1\$G p2JƛDt`b8ܪK~nug޺"G~xrwR3A.{~,tϧ`X̔^2R*Lv㲰5 &qtswǏ_W) +!9(VHi *>W_YnXCZOXDI rT,a0٫yBEK6 +4#\)FaBo8*_Fvᄳ6$s==aП>frk`^aW_(-]s"gۺsY!4 ' he;"q /k(N¶O#=8L\@E%Q2K p*5 &G>0 _S M;0'ČW*xUY3qYu6>2Bq 18iA,!=;Uܴ1c=Gx.˭..#8%}J"#T2I¸L3n.K[`߫}²wΗSv!:AkШ_%e:p.l|KV% ;6:JyVdc!+()-׵tbj_UF:W!mKGh;O:@q3aZO:}tWq?jYg|u %z`\FANXl!S0gbNN?K߹`Icy &g+.:n q+vp)rB:&VπS`.WcN;Sn>hROkY^V̟.nZ N,74 /lڡ l#g=b6~i!knw.oZKDho5+O:;qEoL7 |#?c%8l?ǪjD:x=C94LjmQ6.˙sI|$7 O+l)~ZQO\<p%uIW+HR/ws` P⼲cN={AT_q;==̀uv5o#@TU8f)3Cϲ1YhJ,`')횚"*5ɵz:oP+IO,"-0|OFܥB` V"<Xo!G6pUU2'@ ̊ʜ>D!C+cKbg|3O1%HkVg89Yo &i-A:3"aou7DZ*j)l{%Y0ha~-t21,W-@Dna&|($a18 ,( Bӣ<.^)zK ^ 8|;m *B/O4cRqV}iށ^ C>/D;Hfշ=yB -5l6)4|aO}7 N=2KybtDvTVutUu c_y@ G|OVZٜ<]i rٸq.s۲eB|:՜7&eHS]@D :^5S.39ݠP*Q6:L<\-_* |=J7FgUQ=uh 1W\s }yoeA)4|˵sKp"'q ݧxi/ǺU8,vC$m57QV%ܶ9۫ ד HXS}^:$$ak$f-]]Lk ̳Ñ~I3 o8HV3"Qg2hf"dH [<dwf%1;nk3/Hа"uSЮOZWe20?gلԊj/AI~4^DEP\b+a1 }s7:'rT%l&LhW4@d\R;fgdmX*25}VH_oG̏,iMo%ٚ+/mΛ{cyI1!kHYO@o+X+~%Kh9Q`șFAjo 5 'ҳF*[8M F˩xJBѭrIx1.W4\M+cv3ď2#יClfĀn Kߡ\/lDhmbU״p,Dèi-& GnNjΛnL%ѸȞ7и \+5ؤĶsz6NPҫoq,;dxyqi;Ξ F7!d+.gYm<)C& <4a/kΒaΑ1^Td]*N%TC*|ӭ8V>r5y"q&xH [Q˩;ޖ]/ēش]ǏnS㒑jx !߄T(q}Hޛ mZޣmYQadZyZr۫&xX[crĘpXCunb\*#T!,EpE]J?gOUvF%Xqְ]R_}YHL⃜sqRDg@ّ8[(9TcEYJ/)M/fYpH &ݩJzcZv.f,azDHSF8*0\>ʟU_lT4YwnIt;;Ƕ.њ°"$ 6kZ0y"`mzg %ūطYaFOp1xAqBB]/eiof34̳o] K)nHB;&5; "I|=Ud]$ In6펃foZ %zUfC!5ܯJ];P eMf4Y0+ 8ms5]f Ã~2iu=W]!Ke y=tuWrQǮ,k G pbdN2Q&(+ف/o=^;,LH)7Ui'Œt%dm<9wL ~f8~èN!2vB Bύ(6ar%Yf*c<盱 5%RV$IS;`3rcgo@9M L715d^0ԦSb\oHA2 uW@lk&'oGe Ź+SS+b坕d X5G+7em@ >ٗL2^]_^7Wu6܇% 4$J#;/gpPg;Kv~UBxQV5mÆ]>0;j|t-ĄrEn >H+LeP$"ɮԚ}V!&,Q:u*P=>$D߼TFlݟ+zYx KWi I5"WW=Y\1YP?vGɕ`#߈ez 59gA'rt rk)E ǰ&@3Қ903 rw/to{:}>$ϡXJ޺I"+:,.˂x <>=0Ї% a9 (K7.nr+e_.Y},c\WR70ACwcDpAIrBerW9ACvϟK4򞄺L11="T K}'jZ@gMrD9( MO^(uW4mB *.޽M@==mv3=tuS:}CaeŊ/ঘcK$ywyV_8~SҽnieJa _9zLBe~n1ek-lcHg,\=ei:Mf(fĞߊqJl@: C;̟%G|t́\4E+`s/%d邅MlQ[k/Oѓ`>߻RsgN{#pDn^Oߘ6hk (eV0w1g\j׌˻ v5[<8 #*aqk&CX XS_f?K#3jsa~L~,Po2vaK }6n{M[@kiKX:{ے6#;rPC/zO#h4_mnTYΣ2))]jo2W[RgEoրMCJ VMVv]j½XU=룄7S sKH|Å\l ^@R)`s񠽀e>P,ξ&_n?%6]$2"G(,F9EDP=N@4jȬ`Y`x[?p uĦ+XFQ|޽m(unoH1{H!g{/4)u2cʨa>]f)sm8s`؋ 2h5BI@cmɿ Wz,Avѩom4pR\ } 1-^3Yhnn"mBiY:NΪ'l՜ҵC4>j\|TlJ#w͡Utl'4C7.ë-<`O;p%Jd{au\l  $B]:lw]e$J|غ4䢧Wq{e9:LsjRc/Q11;]28΍{ Z`I[HƸN61GA@!i6>'M1q'xICpپ0jv-z d} S\[cL,e"p九vcq5m7MƥE!.p|ǐG9Ϩ7jfB'HL$F`=ˬ/ K, o&ToHgS2p/PR/R"tc֡0`w) t0 ]ypIK%3@emJ@#gĩ{ݲk&o  ڌX\OE\hQreLKx/XLa^fA" Yvrt# pT$pʗm#Ceq!Xeg#Ⱦ-,-_ Awaqtc0_E{sC6b'8A^=sFu{sW8َNi1?`RXzPzsNt/JX2l [¢T0D]W_۸3kQ1hoiz:#&y]/>CXe  T[x,$,'5ZQƇY<׌J Q{EÔ}M^/zZHC:Ц[H|E%#GfcTFcSAXDI6\ZUeAN 2ZȎL} b:B̗X~wKѧLyY[.a =1f-[bH@9گ&7<1G&Q>&SbAwPQ&WD֨˕g_DߙK9QrȖ>'U'!xS9e"RT cw@`|d`K@ީYϧi2 嗓ržT-i->`vWjVBsgwBTaZ/t-et? p@g$ٰAXs..9Nj_p6|mage:T&j@! bD%lvӕ6^q@O&L_#bCA|b8Yu:wP5!qd>֟Rpiġo'`1"1P˂Sy_Dp_nj eX*BaJ\88νqv#$%zBc犦k~ c& 9TjU`A9cAiACA}Gvu0;W+,lE$縊Рʝ64?:̫(J\x+RPdfOǫt X/Hg/MZ2C`yt"`9 nBsȔ~qQ*UeM:s=: 0LٷN Uo{S^æ y{Ot͹]N²o@p. -oD$wⅹT`ok)Q7LeUσ}BLivL/ԓ d󳉕b`FVQ Glړ ABEtp z,$SQ= .E/Psm޾ !HZ ƿ5%sW֋@]6?1@ J`m(*KH>7ٚn2ڀ1hc(Hm)>I+AuT<"H f?vPCځTL0+r*{GD9Na?/))P`GҟZ;X-!kdH3e dI0)ߡ³t8 D'iSP%<JeH(W#5r10ԔNl]А? +MȐlʁD#,َs8NZ3Qe͕#^?ŶU],(¦]F m*Ӑ=H I1tFtm,/Yt=~)l4m縇d,|4F$EiJDy(v)UG\ZMz&+X6T/Ǜb9JFVaƮ*;NZ@,NQCGៗ#]L A6)%E1B 4_aUQ@"1]M:=|mv,q.՚$Ox =W1ue%*!1O%q%ZmŒ_>'AŎL,7zl6Ud 2)A~wJ#}]Vy9:?^%mH 3Y{g*C7tAF^43yGAŌӍhhpXט2E(Kd25,b>}RV1l  sVJeN?}AIfJRNk1; `5HG=,cݟJdSOB7 Icv8M{L(VWh?Xr:.h@ mXMH jhKrw_4HAL2nN b>Nu KP_]vF\PL/l]O{!k(Z'I&MWiOQkXY<ǎ$Qq+3#?S uieЩI8T1ƞӧo-?ySg~%vLlu wωWy#d8o}(@N1.GSL=s8)G_EEu {;TX5aħ2ݶ}E3Xf)y`Yă;';\7Lx&(mJ8iuz Hxކ&w][rKhK>2`mP\Fj5fvw__}{f8$zƐegw=JN6 2 I!{~[:bgؼU+e9.rL[ur.*$9߰c{/= l%FT@sU20%b ;Y*w- SJ.>-y"00Ա-g(bJ7a/TWTfSAڿ T?:}8,Z6 z|!~jk?Fg_2QI:ՋHwז.9 e5VզPX55a9?~_kS/Vp/8&w" LfCRˢ9E藳s"sp d*52=*.y>OxoHU:G -vαO#~_r0 ͑}]*!B ͞B50juCxa Ш=Nw'k#D}K+o2Tw3)k`-ӰF7JOhWkp>`/3"EtVL*WZ3DAxf3&7͘bmj%ѝШ"/t%Q[kEnpHVLZӦQe \"]O#@EE (J 鱳9˖SBv>̬GЄ@p[E`#9u՜VF"~/Ν,9\2x>rhH:IDzƗzqT5Q@_)_n:2YoC-ChNuZyA60qUJXw=w-Cܦ0DX@> ,Xq2g?ϊ~[iv\BLP)P/fYԥ.NRV-XU;U lxΖNXy40L1'Q%󱡺w3Y*k3e%KkKvt]Z,WZ ҥͧ&yhsC6霡c򟥱ӟxjiѼ6Jo(\y0;Dj>Ρ dDv+1j҂YA'jЏGF?$IG|SWWu1mXШ,d s&_[%= %@s3r_ !2^(c pU`R [|`ҌnD)$N=(\XFr|;.?H$ Ok4PկuF-4!au_IntÕٿj'oR[ipy>:eh9 X]߂EQΛ䱄Rp l%.vR΂\&'_BwYhqG3ɏ*2$+Q΍oJ!p7Fnz-ً \EBß: S$ǚ`$c"R_942davmS $SbrȺ#0;&c~a|[?݄I*h3PGMC)oTV86ӥ; 7%v+Qwnw`ui9|#&G*Ξ< W' y`I?K[٥ ߭scǩN]Ky&I;ki|QgaB p/>[ӽ{ #D l~Fśm?TPFgX%6vD Y i1σa>cwޘ4Hb; RZ9īzYP7V3H=La(݄!OJJp3@$2ʃ_-D YrU1'Vh/1-ɼX6PB(zH>E,D 0ct yYH d2 x!c[]ZIKֿ |qG 'tZkhA4*ti` g)DbnvlHE8.3h*|pQY.1ݒ1%9O09&eZ/dH i՞EA 3*|rVF߂#6&4M>%]'q!VQn“j:a`4+}]N{\oO. fD;$ػ]щ)2ęt e$|Gɡ-t4uק2~W8 rD(N=2U|gl"XV<,)Z靎 eדuV1ݿeSDfY(!{t[A^A Lz7yHyS]vv7mң@6xC#BOG>DU@N&,:r+D໑W+8gun{S$WJh` 0{g5#_8fcY/QA{n153(NsJܮiI& BUCbEVDH+A]7N<C8v9AўބA|ZˌZ{h`,taPESSijs\L D9ĺW?#Y3s9 ! 9kOeTBx>Sej<@-譙cHFQLF^hѨ%.6|Vb%LU+O{p0͟E{3)B^n 1@.61y /&al{M_rk7C} 9a(ۛED}6%1P; d>$>k=Cae!jT:yKS~z/Fa) ) p-ȢKy%d- $džs?0!cH>dKbLkuXRykC u.f)՟CC ҃KeQr&@ea)exw>$2Or%9cT05TtG^aҼIb$.;,XްOY햴>åٶeIB2nBκm`cDғ,j8>~ (K<>O3qˎG (ab8 #rń:sXXWOҵtjz۶{ςE=c`? V4U괬*-G뷢B,n |umPr:ߺcgv.e(Bїte@G2&>%=W$۟\@Gw%@Zm?a&=@+]lKjX2h'.D23e{Of+psbN_=ߎCN@$x0=Z2sm3% }2?~ syz$=YVa L)0| RH4|$>l<϶>#E@[ :ֵw6 `g%\uum٣yjьµSs=Nkگ;3XVzz CVp[qgKm".ڊō =ٮutE%̈ hᜧ }=ܪ82M'X7jfXQOn"r}5HI:8]OMޱ "ʯ`BIV+V\R`l# OC8!/Z$ͥKW[pcU2qcI6[Jv p׹󒷆ҟID3b~Vj1^ @bĒR jA"&*ZyKX葵hLMr.]_j=!sIEI?R,[1i99 }33`/os\~NodMbB^Wxӂ¸edxz&o#{j7hu\cq:hprO H=$ESؓ 2-fM[&|֟5*9 2W]tȷe-ډ=V,/}xTG @= پWTOUnhhcK6< ^_d5 wWk3/ yXD4ab뜬-QhN(m^W"ΖY71o~}vg9eݫ5VE6D5_?zƷQI].SIAB[(t>PǛ$ꈆ_oYsFl"xGBr1CA̻+H#[Wzׁ9ϿÌi:+@:2g YPi?t@-\--{y׼HƬU[~"Ws[§Hvu'UoqrYW8aT!G, QۯR7:MۺDYEp#PIϕngBV!5.L* GjE *" ~M.g?4P'yԬBӯZ`]s{?leY`kcJw~rw9l [ܖ$>ͧL7p燢U!~4O :. {^?ڿCÐd⃑?lm I 7']0oQ}@LWBqMX'blA1HR1f2"%psUeD[$\@3Į3]E}hϪ4}S PGUXW|6R\_] 37nE[$ .`EQ,7g/y m.3wq~Z~;ϳ0 Y=[$Wocc}ae1kZY?&~{qv de?$X@WFkśzꕳ-OG&]PuR[q}.VČ8hRX 7 XaCR_/PY|9.Doڿa?dxw+IM~0ITwH ޫlSp?fЫpz 9mya:~x[,zNBDyF@!#,ẗ́'x:;f>Mҗ4OKM'/g7\pdTi?Fz KL'uFA`Zzhma%e0~ULkʱ}I`l,e}.$䆮E-1Q/[Mnm:ʺ yyV`i @OPÔW 3R_{G"uV?fQ-vYM޳`gTXxwj*d9?ݼa7:-h9=3`33i*B%=?AHy].=ǔgyAa3cO軎*G2N.;ިQ.V`puD5Aq J*Ty,# _y!Q!Α+Եר9UUcj+}=vj5^%C:24-$McޓEiڨfK%HB[} 5ܚ7jwgEFj`F+dz+2q"}VZ:1'%& uʾGݱfjv ^H~,6K^T3 w##{*-,wmsp7~grQ5Ҥ ִHIFW^ʒ+ &tj7sVwSEN^S;~`ayIJ)_!bEF}4Zγf3^^GE/YA%g(ѝqளŽ?&$EE,dcH`烮r27nϝS4FIBb( r[c΋2YfPoq֬Ÿ&`┤@ׯLWI3Aau.XA!NL0ꥆQ LaӓiN@]טyܙaUVw( Uj>p&)i} юo8>o B5醼fȬ d;p^=$ (nnvʨ|nj:%PRجh;}Px3jUiD/ą/U>Kf-Fc;uS军s e]=[&xe7nɊ$ѱ},ɥrׇ5M?c&g)k)UeWXUQ Ź^x}GK輳+<qr{O/}m,?*ʼk66Rђp-|I(V @mqxwS䌘K>4CTe"͖I2Koy aZD@o}Aˬ@9[T}1H?g[색GTIǤxN?.eSxe9.Lj q^%`f.KR>!biTr+wwTRU;qʾ<2" "8p,fYܧY4fA 600fiخǭ #!e=H'7Ň-PCl4wV)G#T->gh`@B}";pѓ@y\JPppWg"CXi 1Z{a$lh}L۔qkEJiVPD|0&UA?:&F֌Hg|`U 9KԗL~_H4h\^(?7z EuۙKoyכ T=}Q@5(`k7XD]hJ)R&1W%X^'Q=cqRGn{!I1w<Sy]PǠݐ]lQ>L{ Ab (NكhQcGB\UtDl:^1 gٽ_zħ :"J0f˴8, o^xxN=<\&P#ݽO3r?0w5´ Bo(VNֲo1h;b_D }D4EBnGo'6ɪTH7g`qt1;)rO,DR2c=J˽i1:~kFF1OnzfŪɈ5(ߔ Ԏ ƩY $-ɹ95^VxߍƔۛWL.j: F:*!jN$,e J3<[2ꅲHj D-H]_Ua!CST"-xBl0ÌT8f)ŝ#UbȌV-DUSrBǎ\C&ެnIf0[E͡YhAi* 9T<+K?ڻUJ-!7ީJtx'2{br?YTY=k .Qc) Hڙk,o4p<_QٱYu p[eCSfkYq8h(^|68Պ}vHe//TrF7AWgf% o3{˂+h{Tb xScԃ<Gs>IU$y DHTZ-J-^UӶvm^ĜnKHY=vӽI`@,ߓ2BzjLģkCDsng)gomm|Φj4҉_] ,ăBn)/3Qw &hW@ӫ(`}+XPcw5ITGS8jNXv”~emg]93~-j;RuV k˹\km2]4xj4l+b,|X"[j A[^ke-k~ :S}QU ϪG=OHyV!1Ė |c|d?_\n .#ފC@t5fW`4z(}wfl7==Y!yUcP;N|0E,a s~xֈ^ D֝|cum%C0"1D 0.:8'[e K7rDB IMxGX.6M%椚"tnyV%=ͤ)ayG!sX ,d)}v$W kYyW>#ᆧPةKp0@=̪vzڦ35O}яZ֒¶ݟo)+$bv3l͏X5 n!pxXR W%l;fvO}]ś!'oLzTUr ~tÖw#AU >zյ)X|G<=U; 4#cNF2zypj{K_qRsh$aجtb.I5t}ui7 KiD-;NJZأO%:4[zU݄Л* :*"!uNɵ87Rw&[Ha]F% U`) eIOrNJꦄ\1HQG}h_Ю"/3 |/JV۹n~Rf Y@MEBLDTfm/MT7F2 -3X*[r ^(|vl `Zh)<+.tJ# Ǟ>v> jZLdgl52{vg5!t+@]h(w $}qO45'9mmPr&4B80 iyG^Hs"rJ_ɟc0o d>n42k:G\!P=F@}.r/¨`IĐlը;rp+~FY qMIw{E.h4~ D@spNaXN\`y ;BCW_ԭտV`e"""m /YgҺDG3zҒs3%Lt$ - %C_wEfmMf ccGfA@2BGR<ﭝUCn^(W zc~-{^ܓƫ( k7L5Lۅ FJҹ> uTZY&媺@ ɫeWO1)ơ"oV@ &\5{n\RRH]%'n)0Yv c^b YLS@*9g2URRs^~hW} *jD= Xl45-!]+h{J$A@PḰR,u53t_ۉ7<Au^HF*:HpRV0?MH.S#~DS l0|>ͱh="2%Zz[)/'8=o\}UÏBAncO6NGhj0rvkݐY-љija[tb$c I|kF|L8Ԧ4SFa$;X+cY=tQh0'T mG`OEjV8NT2B2SZe#*2_\]$$M);#3r B+<']R#P R? S{GLn43oP3q,!NZȖ0Mq9Xj D&fdΜ+BN|J,L d9͎3¸h,vҀ>̇Y:v~K TZ6M~5}GVeR)\T.$WN; yGUKw fkՅ6kCcb}0^`+ QrNpn뛌]{eXo==D\Ku"1=?2Q==>I#o8w 4ۧ:N֪fNep&odi@PR]D W,wG ?DPn_;\5e?h^Fy<%c61$]񆈧=ACfܺp3a&b|nWM>\>%pT%"iE~8Q*v&\"q0X3eT~],XZ{ֈ8vwb9>RhprٌtMe k4LroVl`Y΅dC$? ?BW:w7׻xՑIi9XSZ:Zl qj~ lRmvAi?@u +faݐN$@(>,_/}r[=1ۍ?+=͵D}\&2|U" ˛ |G_{ٻH^aOiLILc/o$W !#3d. 75ʨ)aHs:iՉY(BJ.vZ v8⌎. t^Bjkpjw^낾 /P\GXܪh vb}UDàMH,K|/J Ÿcњ-4{B[;`6-sftaC3JKR,;k-w&ė'05@='j+ܵ=q\NVKUuLdXOyD:2$ɣslSo&۞5i=x/W~A{ /HҔlYdѯ3VyiuÁ|}Rޠܓ+]s=B=,,qEZ5x 'K͊6gEtAW7WP |Bod6߼巚0ӧ7'B5 (b(w$,ptȊN CY/Vfz"C74>Nsx8v-o 8hN3^BiXTpvz` ܘ`住p^~ْkբp޿lapy r(Ǻ'AAw]S'ZRlmx,9 yPs%0իgPY?H = 0ץ=Ǖ`,]j4yB Oʱ ē-m`xN3ɝJڣ^E _fb "Whu #1AJ茡X\BPK}ALR`x,X"ˍ,lx^_2Lb/ZvLJLNO?P66ey8(f,ТRUn'ze~2nތT┓$ӣSPgB$+ko%.N^DAo٫i,XL +MDtyJgWQJ*9qGb! UC(qFst]l0MLC'` \~ BBģ<&jmI0Dy'ޤmP'MgcxmY,P FF\ ՗G 9;'}ED+y g{ή2rH Z*DfR$=ԨozByڋ5tuRPNsŽ 5?,Bk:?;@g_`P'j.14CFyh; ks.B/oLįI3"rL2_>fv!X;gHTWCx NOɆm`@uE07Y+@ SCRiydS9Ɂ;Y;P(-s`u+_h'jp`̳j /˗KT!bgtb,X څ&z1ԉ6  Twpqz W۞RKy/z V hb`^}Ÿb&&wG;WmT,)!4 p`ލҵ} w3;i$NKYG{M`olkOg.^#Rһ)D6tJ0oU'ōw #.&1n 9߮+x3X[x3*$dr x(@Iz9ו?ǂV( =b C4\6D48hĨL, 7CRx9]*E $kN9.jL9; 4e<$XfM"XPRMޗR<G<0s?Qm(4/Ъj-J ޻Ԋn|vIUdPph O+a[kIsyj+Ŕit|WiUŴ`?]);Fp$Q.}B0BMkD@Ry$O4|*{*S{v7F\KpLY"nsƺEV_l_'UF-_[3+47:t2 @=LMξ]E{$2C"j.{q[=WkE=' {;@ܿka H;׍>8~vvej u1ZqG>Y0$F %o!E.[<GkѲd2ZCCOibԽ @q&CƝRh.J!CPaL wBH'̖٦<&c%[Ɍ,2,YЙ+O*ԶaT8u!䑠tbV_~Y%Al+ʚ޼˔9;XpO5LA gQI6KEmpXPJsuIk5񤲗Bj9tjH|03px򕓉{76:Pj&,=qF 6ՙR%ΗZ[+ pv"hOt\ѱ3aB2ۻn<Gƈ5":/w;?9QnJ_-xCKpW2H+^6a7VR.paʯ4X $kd 0vx̨6\#=B9M+^9VRL]U 9m8t:ӒK]_F0,ZL&ᘚXE0 2EJ~!<\_mï[]K@%,m!TkR?, !&4`RfLu~*Ջ8.l&#/_P4]ke)ւFi&jrM2YqD-<;Gp+|vAl԰~)[+AY.a3zc:ѹ1LUTSNsa"g ®4K"Q7N.q^ V8}L^9A 6o垯xBQ@_?|g?.O=4|q,}*,.K|6/n͞@Z"%(R`$y fN8_c߹eyӥ+M뤕/zsu$C aă 䜆迂æ7,=D+fagF7tݾT6EMZrۄh" 펫KjX=:~;JZ) qǮ1P7ڜ(=$GO pc+J)"YQMU@1-i IUmxdNL7^/:i3pXشlb4}mwd. 0\pTrnz(+@k;}Tp|- n0G$/!mnojfJ8u,"k"m4xe|c̓: .qDNJee%.#v- *7k~%^|hRp84$Or3~tk+< WgX֫rv0;!k@w V0M Q9 HoF_;쑣nႼrнG *\i/s,% WA۟4O?B誥x"|H5]{~NO1feILِN.Aj=i à eu\C1Ԛ4aF7-+-ټs,xMlU=ӥꏇz `=N1j6s DӢgFlJ[J4M WʉF ģ+ ZF2?NIfџdji V OκH\ µuqtrs'ap{;.;Cx+ԗʍ'RIY=GE9Ĵ|pc{# lJ鋆+eTS+ w#Z[P% Bz qDedJ4p-e8z+yY8"x+#c%i3-%T vH'89y.("$1Duigө 7zס=TG3~ r:N xW^4"pOGXcQoXzi'R}BUBa5H\U8=̅i?$/PW {#61` ae*nb^M Mi}3o'%ԛA SsV,7JlHaYſT>1x_G abi'fͤ (VU9g`/AqWA{^W<v~d 8B u#|90F1KgR$s^{{7'ϔ⚔9X>[ɴNb盂nC~A"Voo[{+1dw n^I 2U|x|cfY|=ݎcS@}3NG6{Ũ(r!,bL؎*5`t=e):ł"uB妵G&\G.BUqRtԄj OOrKP66`lh C*"dO$*\";- 5ק,\=bԿχ3EOc8 E}3CqkC*O&KONsʮgd%M̋  kQJRL}Mn]_`&vhpvPH(e{V>#mK&;J Omd\JW.sZ1Z^3YJ9gZSy|X?5 0Z$6hKn4< \pi r%a[PobX~+Kj+ŗ:jG_6b+U\'2jvRuVeg)t7 8Bw1OA|r«UF -Wcv$Gw|\Lf7tݩ? YIA|K61;jC-FGFߚ uA]Jڱcmڄq#͊5`Fu.?`u%%ł3JȻ^("֏n맂a;C|; G^Jc./H&dy}ygYX'vd JA. K<5z:#{p7;tq-l)Cc1\s0Xjc(lߵ g"Dod_P#rԧo^ge\i .`b&ö^p>]52oomYQH록={.?>K y GR8Vpܲ9aqMgdJu}B!+\T :E7mı̅bh壣0{'vSASNt^j#RmP=Zh1!}Z rғUV?~6m҈\NwxdzQj FvUw3ܦy=h ) - п&#,S_%y7`OhmvF՘A2CJCv1e#등vƼ-y"{ \ UrJ]`N3ȯIIe|D{#kXԭ7 X56oI?2A`]IwfRǞ)w˺&p5[.66[lKՖ-9آ0Y,SJfDg_Ӳ`" !hnҞ>daɠmPeeqV!Ȣl~H&D"< *-.gs-" x\xD0_c{\gY{xYXpPQv@}yNBblCލ77$HKci=>V+Z; D̷Ro8Z+רoR9Du@kcWEFʼn1al p NIM![nv*5>!'l-l t~'&D#0ԕlJKtE~SG1"TFV]͒'[i3zYю7~02MƋsqųY@Q}Si\1}ꄱ駦%wzyK o QRgdP9~cqAu8HkIE`![rÀsAn\6Bb{t˜e<r5F>ՅR3\R}IBvM>$gձj ┲[H#v: f&vӠ_SYA"XP% .!rN.V{GE'cоB0LJBGh$F1lKl[`:s۠`50bWeİN|_(rC_`dQdN/M̤iH=ST':폰@nac_S%e"{3&^>}[\;UqV~P~{Бz .[bCX oM+%4Q'SBm_#Sh8g?v.l=]vKuXG}dl*^`Φ9/_ѠWF)qɔllI[ Q ~ةـMޱFxh /xşHт/͝4Fn [mZˋN )iuh}#9[wǃkwƓJSyj\Scw0ZD +qp$A)V& ;HYzMp5D,=+P/ 鋎<d^Lh+#G%50?@Q+Q9*22u[-6" a`u"+B>o`rjl"?l.ɬFY\z5`_i5zPΘC+ftWUQeNSI3o~*.2.&0Vldvp؀RoSv-H3pb .Mg3~O:Bv_ʅ Ť/xN|ܜԻ kpFfP W.ݬK3&RnJ|6kC׷No[W&uK^UiY8Ex\鐱_2?ɅČ{j HͅbECtr+4G>EaݐIJ+ZS_,`϶yX:끗<$a]9l7ɜ]<۲ :+?QEoH@"|. N|~ 3lsx>X2EÇ[WE,!gc}L6sf-m#,KK|P8 :=Lֹ&90z9vJ,9IiDmܪSx,!Z t.vמ*[LqqS:o/ӏj&JstI Qx-rIjsg@^Y{k _kT ~Y. [s?%"fcH1m]7tU>ɇ'huuN܌~D]A|Q1‘W IA;b*Ukjx᱗@ۨ8P Gհ{[izάQy#3iJtf <}cķļO_.䘻6Oq"JG 39ksaku,8*?Iz_OI]kFOlJc#:}hzDmG1$xSj>-E&{/Z;PL`GgG:C' O0@4Tq:R?J)刄l{c8`ylGX޻)_ S[ő'ls"^ q u<ϮIp3 4ǴFn"|tF^5Ԗ)%f+,sQ (Vfhzi3[ v>$^lWR\#VX%F"HI-ľk?U(;]`d ~NPBN ֡G8Q*iNjB8gbvL>VӼdCf3JR}92d:X [U?@) 1bV>kENGuC`-:.*eIgVĢ̯Lȶ.WMcռouW@7.kL"B~+1F~e06.oj3_ZpZ*Wvfg&ڧg4%1RP  멹]Z.ZYJ",@_խqA)/ n{Sd6"K;q+i};mW H9ds~:/cxbORzϟ)2.qb6t](O~;սLZFfCRECv@åUh|;|76ۺ oĒV`tu .\4]S"PΔFoSe!}pW$;^6 TsA7dޏkv#,RN]]vL$2mz߂zC<8"HbtkmMj &r8B@ f%-иrX:FbByE|Fj*ƭߐ(hEdDxkd8=ƺ3POa>K R?YT# ^v | ZblL!6q[=p hry ;c?=85"yCOIoԽM$M̐Uo'c.oehe#WTDI ͟S>[gzSgڪ$yOZ|ԬO9\}KnOV*M@5#oG։O?%^ylI=}Dy([dԢzCk%w=4P·FUNtjþـvβy| (&$+APH\y0H)D3W(%3.23 Y|;Q6TAj'j.3SbDHKES|Z[j 42i(?\*RD1`!&IWL}wW|íA1fܞ0iS[_{}WW>\^iMæ_a|4XU ^@3K)*̃Dh`yK\0nM&aL\:Áe6Ql,PޭJka3);AV9U*샍f/R8tۈtdA>zb왒u9:Q ^{(-/G&j5Ir6Ԃ\–.9qnfG@a)i'ď*C|ѰG&f[½72r?|`?Y3 !|Vy0On ^02&ԽSF͆ &*/1C7rO5][bH )E֎X?:X.ZU%[蛍"y8 T)m[JNigb"nmæСWܧf_|>]Zq "Z3[IpϪzwEs6+n;<&M%O(07>KcQV) :i8`4H*կ[~דm)3GCp9&ca 1ʈ?:F1o pE0W߄/\Au`; {:7EBy52 d޵Q&l`ݑB`&]. 7{ |v.^5-^tHrT vsp `w[JfeiN`L8t圐N+f`c!yAbX*$ցg>o) e{i"2TLERa/w^rK`.-}i3a2pjꡅS"僭!VElNxM5 /MV2LȻfM8"dђJAw.BaXe^jE)q$0(ٱd.4<3aB_Ne[S~[+[ IQ^6FҐ-Vj U;-ZV uWc=iuV $],zZ{K~L6 "*LOط;· #]'ENBBbD<<%'0Å lJ)ӪxIi~'M# ^WG!y사xl|*\laW&2jW=,TnV$^TFaǂl\[_:9ޕr6 n.G4TۤxLJZ*C:--r;j#YoZD XX8&Rp̋Ä e Cb#1˙>G79v݂޸ΩM;ѲfT/i~iTg:FSȏVPps ~QLP:&)%hFt % & /$I,}~髠.Z0%B}eh[c}(6kWSqS%$Θl~f G/^$nC̀ %koJ.[2'ЩA P;IÆRQ̺*,mR5W?Cx#ȦUZ WkM݃~eSRGVABT㗏8X$#ΊfNӵW,DN1;d?GYġ`Xts >@'kAĩ} IaSE Y{ Z<\"qr?9ӿDqwK݀~1Vi'K6`5hhKhfH-פt1A<=t–ͯ'u4RW'* =^:Qg&ʬAq$3V.(s.8.:ۃ)c"vo߱VT3nz>ZRYy儔F:On^D% ̚ &LN/B %cDA.B2R^˪9. 6#>I%0دpiR+ޙ{˾VA g9/A'a.*t=w_ 9wFCj?:Sf@"p4 Re#pzh9:zoը㩄5'GA718/;pp ]Q,s|=^V/%}mWmX4>\E,!SI "6q=͋ZDV5cNKZϯvׇg{Q%8hsV*5d/̽!ߡd:~-yo%.WZ\Aw!W8/%[}wq}Qs[)y *[ :L .\q-!'}D,dS/N [^ _2[xoʣܛrfKqOCH^n5͚A {ӎ~y ih)΁łm|EMYIs)IP92GKÔ,:7Րil޷`k| $2lb.9S"Ɲ+uV †yn--mu2Rr5.SG`$}ECc/#;IKش)jSVR "^wJ($ch('!hQ^6Mى\/M~5׌K9u7fQ8w3c z`԰@oc(ҽHz* A|C{W !^{{_M9fٯ*"83.7mڔ~*ɠֱY߷8 zJ~?ј!{Q`5 _&KJ /a};VWK_րt)q\j&fIWZ+Y¶/.S?]Dޑlx K:%ԌmK+JyYUkCu+}9F$6ZN\^>>l}U@`d U!z$+LОf^u勇Nlz)&~AbCOCP? !>aI Hcyz| VJ`*R7"˿gvh6l`d`ʔqf.D) zP(6 ے' dy ^vJh'8>DWlf$;N/B Mni$t' -QG@>W VtԈTbV E8ͼU(1]FM43c'b>u"!1Jx"R~Z`Ձw>'IS"qHJ=WdS% z|vJ􇩗d vC茳a4gƷ=WN-Ϗo9-wҴ^_^KJ59<}P'VUZE%_pqy`:o)F YM߾EĔb,UEwjHrƋr6[6r*FX4~C:K8`ً#i{*E{ `ɢC{䑄 &nPN*!pzk*՟=w`@).uIQ㘼$4V}QbNg5Tv(<Ե}XV֎2Ze(-,_.zɁ1W6ZX泚sCP93։MCRZK^4[|8v4f*uطuZ~k,hp7&a_Qd&t1Iݞ-i/d\\rvȈɀ/oMt;]g'>G#Y m9_%ǬXZq~q!*x\C~ n4.i ȵr) jo"no#U! ~G7$HjlOY9.SuѿvC&EzD`^IQGC&%]DQsi@'0/1} Dg>(C&]F!&/l5fzZE&ӔcgY@)|&yW<D5,pImX=OKPz'=-klU,F]x>B>T=yC7& a-*AK-JQg|G\TP؜vpoO 4jcr[38QWGĻc˛r>ڎbBNhhnۥl*<%g)}'R鷷xuQ I>HY_Uֽ|*S 9Ug:Xwo(TVO"f;ei@{Ӛ i_f ;v Cd8o;Mχشu6}9wDϯ*hFoȡ >C wfDzEs!|yW6Fc9S4B @tNgC- i͕*{ZJǣ~b-`6}MuFSJ:ZF Xi%z|ksZN ,ǼIyAQי$ƀEIiI[߄V=̣UtH۔ v0Fg{jt.ݝ>3-Zh%F?S0uJ8cqYS.8XRYy*^2M0_L*KT#WCTCZSx=I>pm/eLdUmg:Ew+?Ti&G[NY _7?=5Nz,i2}dWކy BbL Tu@Y72U(8G| !@ AئԌ{X)Y6Ui6H1߁h}Ssn6=Ua3TxgD~w gξf1$oh,wG==:d(B:Br2 @[[Uk[0%4 a-f{/KF:FK9b.d3=K 6vs,oq" qʀڨPA™"BFɘ#|Kઆ#[odu4 ('\2ErRq{3۰33ԋ lj׬k&[,O3bjKrn($Zv,!ύL "l'=M=,V6C: B&8󼴥2+@)vj %&p (ޭ'k.|(ˁлnz>c?z]٠ ~ YWp WIkaGm9 Yc5AtE~͎O-{Z*98@78c }=B2h }'۰6j.}rR[(~hN՛rȵk]2L]m+B wֺY H`T^h/߸<>tR>ܾzhZ* 10,;vnYK@|ip8A+vmx ZS?$L_z. Gfϙ&(])sXo(8;Mt<4?b ʎ+1T %$JrM9+0BV >ӸltUֆ,(pΛۃqmRO{C1`<7ӈKmlS m V#j7FTPHpٚQhOd}:>%S#Mj6Ւg1簟 UJ:cb7 кF4I He} pgΞc;tu58UВ&SQ} %X̯<'1u$UӚe'6-_rI 7,Yi:^:LVbBR9M /)xLmL쵈Ejbәy>51AѣlcòēlqD'dt,DIYK\w̼D>%0T}4cɂP 98}aSN]Sma joK864m J<,F6#U~5` f\7 Q%AQa!J82}0 Kvj.>;̇m3 pB>XSrٓϖF H:i 5>B`m9"Vj `[lKUݶVmqΗZ{.؃-f&J׮0a{/Y-l7'~o[gd] 9@نo¶C_ݸPPŁŖ y?͗ͻQW{,)#c+hݪty;^0Tɕ737ҁؿn~&wa-fmAaAh>.\w9HO6z!}Kc]RAZ.0&ͅl'; %]Rsv &1;VFIPҴl`/-A{iZP^XP3">I /a܎ iω*vS,\L=rTS]蔟qa>(Ҙmnj7ZLd6ߐ9UW;Њ !Ss&Y0ghP,jg,}cr92^w鿘5o0/f5DmN"&#+ 7X"{PaRvN۱#gf"Ѓ1 L3%9ne5gږZ̮kv8s K n(NoO0G:/,I[b<%q^Q$׶Ch&^ۇI4XSf^Adj+Rְ$hbvB+b¾ꋁ^k/+qL!%X`^;p]lnq9 $S{|@{ߛKkSK.k?~a<9 dR _2|Z -荋YɅS+zɦj_Û-?cq#57z",hFR׭>T%Jia1'[C5>:9t7yxs`ݮ3l ʷ/e)~ˠy0kE֔P{"ħ`vīM(IJ 0N\?U _X.Ղ$Igк&RwcAwby g,EDjX\0B =y#C{}wl$=Gw+LqFQ!{08̐qJ~XsZ&Dt`LmY>?utp(G0^ªhVӳ')rnw ,?#Mm#1GZv*FRb0쬣P̊+Uh"m!%f[bmxƻ%΄Vo*02xi!l,~0" Yn bwF&3ϼ,{ *iZ1WqGo|ؚU|ޝ ؜avp6ZnaoA} L9R;+ ~q3<&{ldM o(q]%J.SblWH]]=J)76x'Ч_U jPhec#ZކtaaFVsa9R饌62`}_&{ AJ,]n:8uX#)vWXnsՕfיr$X X4)8\vDA @ơ7ON0`>!r:iy0RK8ɔaPTIW c4f7g!ka$ 1M{Tk"3dc)}=Զ=&C-=!59Z߹eIwj~e+Gaqra8y@CÙڳɥ?x9,F%͜Tu8A=x})K241C؁NLɸm̼b Q2Bcf7_j!R{h}#n Ⱦ=ozX2iX*d&-`t18.R91Őz# P-itmˉaS)^v .\~)B[JW%.N'I* 9v{9ߞayCgenj.K?my3+O(_`ʇ1{[wNڅ}ymbtb5/4Zp;o NKNҋڑ-QSpz%W>e60#ɉΚ0R]+67Էh xZlh t7IhJ[e䯶LK@NtTH ƦMhQM z"fEG%?T@_*|.hݕR<7MCPY&c14ǨR)g[AvФjă[ꋧ}oQytC˷{y5@]Ui$ڳHrE7Fj9& SG4Nw*)PJs[2.!7hLktm-UetT*e+\LSί&v6qO-KASWM~琿~V SbM4|fB"Xj}Qɋ%\ ȣS|9gUSJq$c2 rC6Ǣ:Ȭɱu̧fgpY姁&#"_m6o 9սG_c#CZֶ6XFU ״ta5ǀk#y&q$egcUZ(sAiN<`=H^VP7QN7t6bL o;X @pSPwq0jQb2!T ;S'~Z=Lg>9.cڢlAXpcȓ4@FgEE5j;Xщ*Rk"d+8 Y_`Q~`^Ņcέ9v~m8J>J[L3p#p²Zj,Ƈkbd]K- @*O<]ڎE{<[&DDyiڷAq yrWⲘ %5G(Uԝv;ո!vD`Gҟ5_#{5!unA5Km c#)' +hGMJ0CCdӠW,Io^`Є"r {n&L%|gPe`"r:{c}HPiŸU}3Ϯ:5I- `vi &<>F0M0:9˜& V.5 c܁as]׺jw?w%q5&WJ@֤1DY}hc9?7ۯyxC'PC{}?K(8œS3I@|vTWt/^" Rx\E gq<3m;YWU;gJN~L"1w)mZa\'NE)/(uZH Pt6_ג5{ǸW?Xژz]%l~tqyi@:g5Qϡ^JGpV3 ,|%Fsy1?Rj_mS;x謉4LMzZ{׊D@M@؅$} lIʂ>`)+&sذO[++dV'fR0#Gϡ6Rd˳zM6hDx]V{`g=#cd) 70_H_E7 {8N=*<R1m0]R0L>g M߻_T/i#rqVDnb(qUM_>5@4>sxF:~/( KW_㣇2b#Qi!.5romav%Bt hagYnl_Zca)]~fAzK~d]'n{g^wϴT\b*Ih4G) +4I¿]c"WF}w/SbH&jf .^Ejw8뺣hβ͎AKjo]?$I`,|J? 7R(;;x"T\7H߇D:F1`-,p8%S85&ج1P)VыlX.}yHPU%Yz&rLRB,ZmVΒ"(>x]O0˦}06d_\9So鏻~pCNV)q9ܖ!7sۢg+&lADٵ n%xH%qbnۖx=zh$ٸށp/LiccqCA 8p%Qݹ*#Hq 캚\_˘(Nz nCOŪL%Yb;%#]<H掴YUEzř%,iy'Cl.pA./;|arKFt:~kg̹sٕۍ$c,{oŗeCTc KeEr§άQnv\Xrk6 =k)w)]-参F̀R _N+ZL|{%2)m۽Tum _yr&˫h6ٛl׫P[i7v*pm.E9ߜ㘍i(=*aڤ T"$*O-2ٿYx]d1Q *yxa*LJ1vCFHDLY<9A{A%8Dib>r~UPLlGEPwR`%}NQ+@PZ4e:Y8渧:}UMȡ*|7%aQbET98<3iH&#Rl1f/UOfѣ6 T'Mslz KzCIDZ=+3W͍M~ҨNzfas[8ci*R&)FzvD[֍EL_ T@Tr07䖑v<_|I:L8֎ĝ3e5)Yݶ #x1q>[%A|}Exl^tFDw/xH vqݿK:^JxrSDP/nWAclks]5Dh3`C.'I$#ć7 ir7BݥP_x cf\Hs0 {['I.\8ƪ[vs}kcuNQ7ݷw,%vQjx,MÑ $!wRGeIUs?1{`VSHT8 ADrkT1 <&cJkTn׍aoL:=P D@?';]:=ewկ5F3sWBpt8pvnjNbfMҠ?8NkKh5EUdkv/֩X#M*2-<$WȤ in0n1 O-mu[Q|UZyX)u@~9ZAk?E V Ѡ.q;8骆,IӦmr"|D"`cPhiY~Mf7GPlbA88{6; өQhMr;d8FW6e6nbRu;crkŧ‚mSi/cy8b֍& Ʀ',H FlF5 GVf% _3$ Ȟ C!f;ފ 0*W^dI˭n ֆVctQMZ>¸ uˢH*:$?8Q_2<[E>KF6w6i].fFxor(^ ƣƟ?i4]& `S\"% ` ^5b.ݪ½V):T]脑ǣg`"o!ϒ8䥇٣s7CX_v j[!qǷ 뮔//f6vܰ7XΜҊB30UǓk*j3Zx.AMkfDZ ?dW7L9^{ sL "q8fB!m'*܂$mYB)]uzR3=aÖvgR[ЈnI| 9@CCIzzjݑ1:L:;;36鹣p )f2?ݓ@eEw7.Hjj8sENJ!^.xFJ7MG2_[!LQ"|ZQ4:Fn~L6Ayȭ[1(O&K".{2\+zK i#l?n%=2g4[Ǜ1}2ozRo=ҥ2 ܏Gx!|8%,A!T_ ݋}Jl4sG\wuM!u6hWGDCl-G % Ǩ8^AIsh!J) gPSҿvB'Qm6#BΤSCiij>+ز4Xf!'3>­凱UL#d-h>0ۉhUϯ+ .N''xÍ++LHc€mt+$xT +w!ݪҿZy81(0&>zA9z٭;[Mi:KUo(&ehE[@ V5~@ hf xۈk Lj5@>U-y$ {A6Fg;^7S*>UW?}8'zEx7T{r$7BϤ`iJcha4/:#|`E(N⫄]Nc?q )'Kf4Ä͏ZK<:b)+'v%@h|M4j1F !ȝ ?>2t{8̥2RzQ+=J]Hmh -z 6uq>7wM2[cDsxS;mT;\f+TD0gؚwD`!}G㜧9A匁kA Qy?}1~^&nU=7FHVsVD^K"j9df0p, 쀴/r${V5QVO:0K[WF/4%52Bx@^RhP/nLM*8"eR *wFڒqͺ2 *1 ,W)"Ֆ{ &(4>m@X=NN߆ۉAQlʢQvQ ugd rWp!U~|2=Iu28aE", =L9uwScNL)7QMM w0>G`XD3&l #6ZtI22q&F| {vE* 1a8R-ߝsq(828sȞkt k۷ZMٔ~RpcD\}E OX?{ bê"x͓$T'Nox, Rj|.'_eGB_%`\ɷXܳ qŤ&uFAj㭒;o|Yd7j,:$C>y7gHLU{p JbO~ޔЧ6.y$Up&oe)(E*Hc*m׈Gv/SzyE-n.=#_fD^YGR1]< x5 ̣fLtKi[:qFcO~ ^eɄsR޴5c5u=yߢׂ\Z,ߗ]h +³8w@IoXHr.=9}Q^HDTFTKGyM*\u܂vRM[_w5Ν`C#ET ]`#fK%3Vh^Q$*|}\:`\8#۝&Мl]{ȗbͻpE?n^O#։Fh:@ԯQi Lg4LqJW$?wqϕSG|.G>|ͬ3#RY5n7+Q*꒒c. F:d" G Z؝r m-#3]pƅrbM5D/jzr1W: 9V{j&Vu'S)tWDZqe1SgϖłUE&rL,骺*h4q½W .Y)U%fnSajKQ %靔XK)Ry}Lk/Lev UGhn}Q%E.L[lf?8REs3ulmapH%.'@Iʭvjf9FVԎ~zhʨ.Cl.GU?NGx!Cf)hK][` F0Y5]^4`-#ԕى9FA+)o]ZHq ?6?_M\FFH+w3zNQTҜUYV^} M 1aGkQU>T8eCPmc!xG@w 'k΁v2Gp/L6'$iRjDw7A,'±);:]e5E-Bˉu]ĽbYA Ӥ͚,3Yi[!G Nۿt^8ET  {БjB2F?!Yڤ@`*Dd}j`_KZM (a˵|ۙ)Z>9 k\m*TWj'&1sx@o0=A\JTz`pXKkV#DT81^jAq5.]E/_ˆ;TFZ!דUèuD4nzDCc(k9kQܯ(κz.c؊CPu9)Öcp+&LO"ȍ^Kfn0qROH_l禗 yuW !aGJi S/oE:ϴ L^C?l,ڑwɮ]yvHkxнSj-es6W/L͢2ny_*Ϳ f'1}e2ȮY/D\~γ[5r3aE]0 ZL> ‘(Go]}Zw!#ldn$ w0WvC(`9c{{ m[FtBNQQ@qv⬣Qk xS鯥3*4_\?Q>RۮlF9PxI=?n v3٠HC? .i//՛LQf]V?sV*n<9kTf'}+:[$ج̈N7>?>Ai;1ҔtLUPnyhy {Rq3=9}%,egaU +N u2etWeEb&Mg^‘7t?";;|!q3(+daW\ 9sԗu&V-9]vwa{ 姅 N,w}qX= 3:.:q[v 2\z4XCyIUP`ib!<m1hnKg^cƀ3m?gL+t$je[%M_jڂ'@if1IUW@(8*sDw>fSU8=65{Cx -xa=-ixӥ,Bbӊ͏Zev%1x?.& ^KG^&dr)x6S@XJFMaK ]ňw0/GE7z4"X*)QذGeǒHv!@[j0&V-]@.^ah1hYdU֠=}٠niä-y {] rؼ6:Ηzdtb"+.Kmh)߰v=I|VlJݝS[M-Oxƥ@Wl}3M",k+"y x jGYs>L0DmVvދs.uG -= rLC ΔdFJzA[_ۓcPox'TeNZI @&HpWz/ԝ-הbSP>7![zh>e3`z2YH]zd@_-,.A,iL/G? soxOQU(E(7R#CдY\I_~,UD][8;km?g ^$uMr WN·r=C'm-B5s<(s2R墸7J4PK,ajtc-B>G1Qh"@%[ &֗ @;]|3riÇ?"K,K*MYJã7 KX9ޜ *`"3h( No(]Ε[nHx`*[=ZxgAi"J4ف["@QQYp{D3=,= "9wgRdQHeCd4ԑW9?6#`XHgMh|Lu璮c}eqLF1$lkʄ[ԙtP?<IܮbO|ѡ[ TƂen%DNj@$6d㶏P m/%,zܣ- d#y6R;=4>Dn7Ōq "T,^69Nj[B{>n-;HpBp)m񾏛g7ؗG-lW<\CoqU 7M?1 Y@'V qw>a$7賴8PWҝqBKq>.P< AD($$}(cyС9To-7-1h6fcl4@ \H7/:!3epoIlCة"}FMn -3V%I ]1C9BLLkQVF4@Zl,ZRub>͵lth;S,6p w#+%_0釫/4^_Wu_8hͶKCp7bT O61TTѹu\Cig.IHkI&]f7p44݁yꢫ,If7YrES+ՐP~c"9t/Vg a]Tm: ^xd\ت#1t^b緯Ǩۓ@DzDszÏ)= v ZrɌKT ]8.aJMMfŖ柗0\go(mnMdLxs7t1E=lr!ˠ)ux"su.DJW6@H]ɵ];܌S`>>`p68Lq5E d(|LUNXy/}5,(yQJ=]]ܩ-qJ<>u _juIbPavlq´X9ŋ ߆Ry1PB_8&ca>6QAآ")Ao 7"q؛ o:|RUf$ ؈DJuTfNnw$vQ'Z ;p?)ABտKޟȟ>كlqł5 {eLj!6w*ߎhUw P*AT˜xosF4smSJ*l˽xUOf=lfܷ?Ҭ^3"ZsWv~AQі7d91?E:js?fE6R_2$W$넃a|95KDlW%덂ke&W ѳ`OGqX~`O' u{?P(/2'Nz! CH LQD`wT ,dS0"ᩚ+QcsE)u1 o=j`oAcʓݿ8{/~dSJkڋ,D6a{BʯcMRҔ@r.æ#V1 go,9|w{vXo(%:/Efɐe\?Cc`yNA5aOUoBFBl .$o0Ht7ifg2vLp2O2'ںH`j O-?mdWB>> ds&wQط[M5kzT-VD4C\sɊ]u{-I{{ec˨*WJ]y(uz4osA|MSxAOӓl4TDÉzoP8ߝ>V{ طОGS xuOee`F\1%~Xâ -ah0dMˆ=葯dꃷ6˒sxO?^̪sV̠^Cٟ{ iQMBB(S0ȶŽ&q}@F$U9n""uML[! >ܒcqʊZtH/w8Qw_|YɼWl9d tQgt}]NO% t7?h \Nҳ /4$n ΢tX55lMtoѭV'X|KMX޲M"29w(% ,1Ϟ^.W6dCڛyy$ ?Ok Kgԝ it]MzOF{8DѸR,Youh*EpVߧFJVM%(. aZ`&}7\l.M K{+Ss)8Li;  @ ҴՁ= O<^7 1iJdeIѿ0MgKdg̥嶐JjJh϶\*MlHMsZDy)3yH L~Tc۞i]:68 }Xs InDL7OlZdWN%\ [bgiҧZd?)Sw 'oiN/faQѓ?Ӯ/}MW֍/yF_k9!jY1:ND ?'&kY}9+ SҘfob^:('yH0f7>.u??*J-W!et[JjiE#dYF+ţ׷;Ϯ ~֑tQL aИ}~,Oȃ)~b1ʳѭIb=9ƃ ~$eT#EUkk3p<*ʔkK0x7#3o Jޒ 8,1슙@٬It>{.F7 2OΞ+916Za-:N<V^) #& gy<4F@<7VKu TxN.E& Ne1ҨhhZ+^cp,5y,0ľ)˿ Z S==t:xyaW-qRI0 R+ 01r-lq㽙jT9X#4]z;Cb1؍#hNvlՀ5S(S(G\C˰~~|ur3:Z$,f2/ h81"0ˆ̿fJmO1Y=\tJ#vWL?呯.T#-0-X7u 6 EN`(,I $zFWMP|Oj$l)$8(PLǯ(ӐK}* SbAsOt;8+y?+?2#thL}2iԘ7 kݞMoeR8ryz07`5BdH8\IFgJnwO~Û4o'<]>GHt alH/vcV#G~5S6÷Udh% gHFˆ8le={Iz/ͺv+"n(GIL?ʒ\]>.I(XWz]oN;$3_ K{!&B8Hqhޭ{RKR B(?Mħ]$7`a.ӇF{ ]J>b=p4n;w*w;["Cٚ.6vϝcQ pc,yĤ;O]tb.,d/NITzC`ʞue~s ]ER`P*o05:gIҷz$̈ I|IlsA*D}~r ?qdF;pdb8?W^lB Z\PnYD` sqv2]ŗ.&*b-עRK?`/:XMHvr$ tYhbiOim س-F/:frg&C`LW,;;(LqTqO@ $mX{{gOǝ%TΠ0Lw@h.GJq'262W86YGHh@ׁ}!V]C3j  ԡ=4#JP.oZ۾n29=]09\iio %VG޼h~c^#ߏa!WC3k,ϥtW0{t6AG;c!'J#j5&itQf$&1ND  9 Ab*?ʫlHF<%dEV_&I?ԥ ZNL Oh~S!DxJxI0gy5pQZ[΄Y:󍕅h/ ]Ak'-MZvHZ|$;\͘Ў vZriV8b4"T#!  TJfcH-b),w"ͣoN盗g1uIeĪU}IA |xc_xrP;.)X|1V[Td)] IF"wD&лRnN9{&GY,Cx_ѷp[ou;#oDNp"2aBӪȐԙx MX,_(;TխBCWf $@ 1,VUSM_tOA mA<ZTzc-3ZoƵzC[xpYZ[{ϠaqG jQ\H{G)fQyNwg(Hq3;}hc^ e!r5mMӒkOIG!xB[(j6e|#R+.F^ԼǶtL$P7Tsބ7*i9|G1AyG(HAo Bzχ p'= cRv8fڧj qIjdƗ||k0)$:>†K47`G7e˦W4%!/(c ˚VkiV"eԑNYթj-6:ZNCsv0c J;pa"TFט ?yMߎ/q1[NTj_ﰜm p:WTm7vf̩@Dv@[A+y G Fcōq~zyC[RՊ0>ҭA:Q]eAչ nH nQljKt3XT]*ۀO-#RQbF 3ϪlX!|%jCxFGId@V4^'%z-F$^zp8usdȻl^)m͊rսxS `ئC6lc"VD9A.W^.㍤!ρ\pֺ)68){\q_]Iz<`71bJg $0t !bM .xqO4"@f[ӋL~OA;v'M Ni@pxg=0)Y0Aq{%wMv](>vz{;:hoha]F!J)kj_& E0wmg'' nZ Cf{ExH}Dx> KӶGasxg Yqms*qoʀ&!CofXY)~D:ڥ|îR zՠk djyxMQ4R6 kR#q^xE.a`3KZA픴i+U;D"RͪS) ++0%@Wlҙ7beT< G#B(̸Қ&-&R0nJgTP٥HyU?](@@=GM;/;eC!QR65ޘP$RY8K-6ѝ[Ƅy9㢫-<8'ĬhKh5 $Z`׸nlP$zm 9dz0JY @߬q_ &z`3d89[Z_W٨rIjo 0mnaŠD}V2C1x6 ,DI45ǓZdN]a4((2%>ЖQL 테r KYzzZc+PG|:޶!o.Wv,nh~(7}yrU"! $괂g/<˕W`'Ocsx^1?b hL'(z)!PE[)܍=y) gB|$qG&]fiSV F^"08KV )ЉL2"T^ sT*iSv`72 >.O % uxaO/6T'#1Z;8'B{l6 Cش-e Qw~/!a5.~H/=Ð&.g$55zպ 9'8@O*$/PJ=pߧ4ؚ-}*H!M@^U5WB2 Ϛi 6·Yq UN ԯ1_ʵ\٦"rĒWV1@ȇxGhۅ;}i#Oc3,B/[\׹Cbh\i7gXvfhº̴&X?|>udr ) #WTh,])@W;n#'`,†?nQ˽xNEcjS󝠛yhAhBp! ٮ$yfsW9;0f/j '3/悿1.8 |+UXGjdg BP^2#4G")_encm]1 XI~ո1D?+ g ^ʝm*qC4InX-IX~~1Fd$5y| ܘSMJW0rdݦskqlIbI7༑} GhXHjLu1B8r% d"7߽!Cæ\q_+<:irAHK9Wu]?)Yɼ#jycYV>{YyT)Y f%p,]OWsR9W̥ꖨ6(?Md69Mj˗)l軤1y 4_-'٬i < (n3у:L|Qdu?_5>tLU9:\P&C[pR*y84F)?hKsH}f`Fn={BHͻ/g׬`.m(CV4<|MǑC(l9[#5u4D–$2JidE5a$yoL0M1Y C%_JY x `zM0^#f-٠*(y ~`Z`i 2 CLi(xn5tH|Y ?^ 'Z?WVዩMm?N8mVp3CÖM-ʰ ̈́J !**g5c?Tyd8p,r$\T$خ3l'YSʝho7ﻢm%'4RFkXԕN  v8DqCGTZJz0* ^Hߐ3`ֳvGfn)}eb?X/dx2?TϒOc Nn:AGwBxٞefZ~BJ,d>p2^7)rtLuphmtZX` "$ኡ@MQٜ4Y7\7"x N]{I (\WqP\_AeL _EĹ}'Q46sӱ ɹl$ W C -qͮIsa/U(ad`̠IޞfX5 Ѩz1h!|7T-׬u27u 0\]_-er\ps~=(N`0@ROV?{dThvTT'\x][F8U@>?0@E1!0 ܜ= #c 1HS}{eN۶ 2(J_.a$s yI7pȋ|`dW\WߟTTtc-I9s+E\V"9> Zau@|nZ78ףdN~ >=2E$tFjDC6n3Lo^s[ -7',GK KQlCk@ClbCkT92cZ\,=ƤDt b0A݂{insp6w-y: /+ܼ妪}1`y° Jwİ лy$6+9tpw(( T'CűfyR jW{\ Y3;e=za6pU:{w aq[a8~~Q[np={c`6r@k2dpwO]LG~I 3 :TkB (X3nD(U[6Sva/=gY\-P bKXb-*41M^9y<Քu_ge"kcEY .+qFiyЪXSl۹-cm!e^1*GgϭX v!"YfY}곌(7w"^Td],P>M(\5ANʘw L-| T ǖvkvh[NSJz8l;o՝䃛DHB /|Ef:#" t^Ee% UYŲB]b+1Dt(l8&a;L $Z7k!j?'%v: `}jU..o" OIm!ϗT*zLh  *$UXc ًJeU0~S|-j5\N9^&!vnRĺP_m " ߳ #Vƚ.F}y 9[Vj̜ fSh }G68?L-W<^ǝsC>2Sb(#Eo؜9=rB==vNhDr` ~ԟF͘]qjlgpb&?"Ha_nCwUðI zs3Xlj^!IȺ}9PaEum gƿplFM܃5> o9?j-ɿp}>1/rX|iYK3| X 5*KY`kQ%7pMwKNøDOKDd c2")X+[ԘU<[oG^z9WLf}5S 6ѹ }R XwUvop|:+Of=.B.%~Skh5)l|:oϧ./_M"julEDAik6VDɟscQ=0l/xoܴI5P]r~Yl3H+UQߟi3(]݆`c6n۳{A򭑃 @-z!M,6Z}sԏU*]pø~Oy*Z1tHHź1&y))֓c 'M%?}×X$BW9R&pM?PY3HAQJ{_?%!IOR`IF$] HlpM}d-۠?3?Wz0䄝gNӃc=xz| (KPSAx7ueoPGfQW[$Lbu.>P]vhE-8TN4kgWx:xcs4(r(B#SgϷG`.#*雰GQrfLz'ڐbB06117`UQiXMqeLa{}oM ϛ ;ڟgqaHc"AqݨW0QhO\9 ׫#:Quk'8 @Ų#LO4aђLg!^4P׼*,W|آ̸\DO|Q!q sm%5˃1p7>_s@flFDUBt{ %b]ɢ}["Vgd^/, %E4rK;G,=)@gRN2d0aWyEi6g.|X _l-CeAw"7To6iF d p*O{7 |;=寸eʩ,o3 _!$=EL55+Fwޟi):a#vElOT˫x/00:^YG* k\ѻ1eWlhF9jJMr@eXPgBe}J [B]8~bYFel vIG^#Rfoa#03V)0tᚌupqhGNV{s?ne|Vf+xi{$ǝ`'lE99$Ȯ=qbVZoiTK0It#WiٽgB`C(:A[]/F֒b{6أ/͢r$T A>szz9T45'W@iʾ=ZI͸0A{f|U;/)N/ԗ5a=.LFe3'L{|(->SYa/OJ+W]BOt[E:Ө ɪ*pN[i f5&IiD69KX2%pl`skYh\!pʣ]xNJR]9`#*#iERpzʆ}S]؀ѹaV)iQr8('x7hZZ?,pTYc#7#:e\STqL佘1Z6H۸6=q(n6$X_lYJAYf[E${ܘzj4 Fb$[%& ols)9GR6@yZz|biU*nR>%taHuClє%jsJ<iP'''XaKEȋett[ued==ʥHS BUL]t2zW$<54^%[ji;0I==Sb{[}'x]dO2śG)c%΅%2ݝ5߄A5M#9kcl2O3\gTt r'بQ0۞^bAXҏRW IES:g9{ԽfY*ю^YF%%Eˇx\0D+Z5 ?cwf!{n `%5GX39pԗ+e U8>4{J U_Ҧ>V?0+{Qq!ӥq׶"^4\==r|RJX`JvZҏN6mNy{K%-;hpO A?үf{P3gXN9ճORҼ_ ЄU]/0>5:(!xFiJoCŭxJu7{ Քp9CܷqrOoGTɿ^Q3߯J%{J>I&1 1_`ėNnbK]YNyj+6] X B4ɂ_eW[hkXzJ&yɪ^|U!-I *zujS} G\dGJ `lݙadA:gA:7zMAz{Ig*hW#;;]W]V˜ZyJ&1h$?:j82ؔfwZԣ7=.kw^ƞ V䱆ݒ{0L{K1L7<;>zTqf׳ ptBehPNo,r"xeT+Ù:n%maJ z/]­K2`^MH"B B _c~O[uIfM*OKmՇZ;R&KFm6'4>Qhc}u S8Ԯ^tu7^Tv ڷzrH]8q]2J=lS<B ?|i;m6ypMmᕧ:l`,07YrlsjW.M\%ԽM~󦅷stpII Kzx]{vsԣ*(Y gZ8]ūa%P:w\C}77 Tڣeްp %I\SRI蒽ÒL @j.j=iי@r>t-Ԗo=9a]>#ZK{6(JkW#xaB]cA$T&śLwC)c6g qW %9WVc !֯dOdup7^ .!&QcJ ktlS ]Dj37Mq0>Wg;bA/@F I&1C{Λ ҨّnotfO{qnb&A9fюA6tu{a8ɧ6G6^8 r@B!Gx\hfK8" by9UilYKa %Z1MtkCf$DupͺAfB[DzfM6m1f>0%_ZEס@% /h0y5`}'Rqt1u#̎f'uǟާV~VVQK0C7qf@ \7 x0$oq4>0ʞ?HPǟ[bصVB1GZCFAw1 ؍ޥnAK5q\H4c7?]#x*>ˈ tU!FCn b e!nCUo }HTO9GY*"= "6#8<7XvHu)2ךhl#;1z47V YsG.ˠ0 c*"6Eq՝Wyv = HEo{I Xwb 9xX?M|G2>wtԁ`Aѳ_B''BHWG~XTX `0ߤ=UIމۃ2Q(;j{D7BGb&!\%Oz=D,o D,\:4y,[ lvy%ul0*bO? I~!MGľueJ_y0U#=I6,@WɢI~0VC{ӔbQep=P,:\ɛ,] =EVӔom,m֢"mIE8Fm/DcOpčb8 "ŶFX@~P<~:3Ol΢]$7o\w H#+ , e֩m"?vq""n `<{wbؘ%)Ǝn>6ܫ.dhsTHđ8)]S7囂9V"Pe>SȼZ b`u>p9`o`Fs$BR=JT|5jpXĿbSg=+X'-!HBcޒ(Ə=[`ݨK+`Z:OaJ"zq6) !XGpi.d"jKg$3Kyr>*YW&vNn:CQn"7 2sIG,Y3 GnR0I࿮+cX'[=n9ji[|.hۇ8#O|./&.DD-BL@hqu?obk~V=c6k1pw!UXlN˖+RvNT`%dʆ28FWwTiGsc<:.mR3Vq)T#g"!zCC`BVی]"-bgLꗫ8Cҝ(D+V/ p/~cTp>y ` pdᕠ+Rtk l%^ˑBԪzKnlR'?&DfĮUe8sqGR+9-<(Cy%:=a\j֤AE)+[ys-{s $Afd):5Si#.Q}Lnc9A;b7MԓEg!rႁ)[I'<4  :-JȽhH<:*tu)憃ݵ;wEv2?Kz3-8U,*|4wKޜASҀ  wQ=Hg0 kַckGTf,Eh^UPX]@`ߵZʤ d3tQIz/l T,I- BPجK9RhX'7, 0tDWj j/z1Fg!m k8?}Ft&ڋQ!"zܗ<.͛w $N^]y9>PX#  # uq^dԵyel(ʌP1^'V^.F^ k=BHӰJ,ɫ4Xtz_.|%p]*sp'/u눝\)6kKhW<M .Xn)=*#sїgQ4(RN,ޟߚᜂhCcV@5l&V^O(w`'"y\xO=s=E{puC2E/cGѩ ;U:eP"ʖ)Rv+ 6^&čnk[61N2#A1R{lNssZ:iMv1L>:q|5e’78>N[Hldd}ݠGW2Rh'ljt}31|?9NeUծ5$0Z*Z |r_?(3{4JdKI 쭉5M2R/x!kK0^E`bkY|k:_Ng<:A|@%W3<$27 ɓȚ- -$St@7B&{`{ GlhJaF͹E}??% 86.lGIqK .k5gM G>9ufJ]@vy56#lr"J &{bl[...'1^=d=vk _ߍS+Ac(T!lr~<-}<1U/p9Ej7=&^?+ V_oύ?.hc:\蒦 YWBK ԋrW \8˲Q AzNJͿD,r5'[(N w\<Wpg[LUFa2kq&!*H[0{(BF&%`__+yJ]%D^jz/ H:+_θ#~1tdD Mxyx@Lp"M^B%Ap nD!wq ^r408)H g1I{L}zQgb]ab)WSW cޠ tG SRrϣx,w&͋࿘ my;[<FR6:fXاDI?-epӯU42 pȊ8Нw!k l/Ck\ DU?& uUηA*Ks9V/3C`X ]5z'Β&_ŝI\cB S%qǮ7ddbWߖ@O3.̻j0TW~T~^] еk``dدӷ΍ܱM%3D fcsnuaB\]m2d {R%Xn1Eİq鑕9߈p 6cqvne `HMۮ*Q )k0/K%Pu*lOԺ₿HqIN:5(D^;L/P:d O 0AnAp]s[SG&hAtŒU[`x YZ7aث)iTտ !V0̗L4ѓNhŦ6 8B3``tt٪:ulr% {`T&yB&OL:U _Z Iw e4V8 *b\}CL׏\ x[FޥȌRc!6t%syg@"2ĭa)mP{}$ܞC@ѷ{Qg^y̜bﺚJ2aeE(_gvg0ELA.LPƾ+͌51&0!Ȓtl;)= s62co6STٖwys4kJ3 @M~3]5B}X4"qo$9#p:/W}f@#~\%|~h( 4W`kf!˂M[eC|mE8XEн<嫵C/C*Æ {xhw'Id69`ڽDR\K c׼i9V"3k⾮jjKvG eNNty.+1~ڿM*Q\T Ao(κ/'m9lveNm ,o_.۝V%~B!B|Og2OK{שs2b?!@8f(O{ pBݑ⋴2p? Jԣ7f{ױvEkee3СCA'0n}ڳ#e;b_*AoHFqQɢ kBoyV! W2B uq\HDZqQ'5 ?"ּva>Nv=&¶oNsV-H4Άwh-:0˟%6Kjurұ?c"#^!:)+l#Y#`zEê%vsd7\fMl쌽T-AU^A)7th{ta &h)Kf v 4~u LѢZ|_SM`ϐ%rά5BchhNGjқ133,$w"*v?aayCdC1xPnZb= ;m࿺ahΘw4:1\DBO"d iUt>r!ќ{uV5|d DèWq+ Vw@qz+Vg=0עb"&Ri)iױ3=85[ 0BVW\){gB:jq1:5A 910ʄj 8+pkMbx { $VjIx%_bH 곑7ol],t&Y꣫%S^⧌jN5C\='Tdn k&mH=~}#:$O}ɻ =_jD33Ua0]-S6ڭ;=8`nۤ7 Y(I+dwEB-4 zBRa׹>Vrr$)^[0Y?%E.oG؂H$L!5|&\~Pcn]+*U=J=^qM0K8rO/n89ZViEG'ì""XS>=7Y$1U7>gѨAJi7`A?LÔц>i ;7|&Ln,1, ULQ:Ncq302|pL^ӍF\w^=ӁĠoRf&cVdXlF6OB`ΐb19ZVǻö́a4w>TJFη{"o8!M aY ?F=mP6kѤ"zs_O#J(h񮶰ۏL? Yq=]܍/_J9:9U`OחNvH<XO3'BX<;']x"aVo7K EP ÞBN~0#ǛC7%4֜Yq'eZ_2R0 ϤA{k D8D&'@Eb+d5u(Iթ]-i4t g'.s6$I x1c,]ywYdZUa?z"AueWD>&\2r#Chu'˳L0,LsozYq"YGIśka9ϓ(w>Y(IuTH#6 ޛzAMz_W_7lۖLU@nC8cA og{)3DwX V/@_e`hb&C-GJ*F Vet,LcxhOCC7G(̓ B#9eʢ6˶ܢC| 15|[^atm40d 'x3LoquЁaH{~N'l!?0EeM3κTjgsޫK }Ge? seGөOdKdj٠Կ bנYUؽAb]j-pըh5P΋C>ы~=J#ͣ&,^4ܒ9Ah{eNU,JSǵRHYPbN)sV.׬DB9dah7AD[~"l"o4ow;`L6ØGhn<Үga]t!jWlۆF)C߃v`QxE z{{u9]\؍w Lן[B5evQ7jdXM[Ÿ́ 6hJ1@xCVѶ}RjĞRҥ!W,V>f/7c@Wh a4H]R5eaUZV`/2iKj /Ԡi~]%nHq9e>%a qetЛ;{P"7׽!\PN ˈ,cZMduJ{ KUf{C%zƣvAq&;Ovq|T(6H|J1~{NJ8c c˟=@vX~i-l|,$cafȷ!WקG*ixž}j; #l'lWQxu+QI1SZ,(mjjaM{ R X34iWuH/I$s.G7I#O@SAwOnICʶR9ljj)Q[[eꪒXI0$W}~;kѠi U2A ۸89Ql>>*4 ԍݻAοqQya{izBC] pҪD[_:(i/_etC&v``QV·6M*<.9T{{9baFd:&\EJrBpZ'Yd&U (Vu߼Meyh6?Ɇ-nh}\h8[JA6C,DŬAn,I:jDJb9Ry6[ĄeQYYvDis.xqg29RA]3\&db3 mNhQؕR(⌛gХ '{}1yTs(]OȕXTʃ^8_a`^f:֥ 慹o&O)pv̚5LC95NBسCr[ 3ȎZǗ[L/oU8M6.!dy+kC /RƨncQGRq( @1 Mㄽ.;FYAj7y_3tR* t@Bd}mwEϭGo!X$C=벹UarBtR96KէuwjtIW>TAMUEy 3E eU6Wiv߀_5KXhH+#PcN&341Wp'E, i=$V4*`-ZŸi:4iRPā^+3-t4/\&UϼPZgj Cs ˖׍ ø%{sj+=)HD{14 }E!5]V'cF0f`WwqU)?HF[ G9~Ahut1_dlJs*5/_  ey&Kr'HitLrU2 YH%hfnaW}pg^ZO"v^Lni *:mГ>Op)$,XTlsoP,@$؊,lV>:Ҿ$..XjK Ux%Sek'VAnV=&t,|7Y} Hi=ç7„?fK GK5˯Cw3\ :10i{5C ~-u2@(3 9}W$fwX #(C}1a5NDۋ-CV1CaKcj&PúگCԫ3pRaGNRgggs!7n;KE{lt'QHhUj;SOɁwҘ^QX=R;nUTCgf̏Yzյ2r mq|KvkbֳQ2U`Bd_oFh ߎBѡ6> t֟U4G ١A+3zؑ:GLP&yEdd/Ć*9VL["<ȣ_^@uAg<+S߁ˀ%:`1WI2gEfHh=w,z r '$e&4cڱ{^ }}Z޻%"uy1'p+`xƴ8bzn&af0S4Kԟs0,чN;)Z4p>.iks,NF/|g1~6   x8mǃI>3nul wz2ze^2TtRmcn<׌g Xb~Ō89; d X0M-]V7g`< [J nu]CLv(  M<ZᗊǦ= [+Y$4$\m{̻z`\)`C K/DO~X]Zw6`*cqwsZKv> ˙OӦG/%\@in<‚O{JQq}` [cx霗KYr60 a&Ѧ ZnlXxX `CrXΠ˗'/j( .y*lrmkbyng4mwMMOgdGkdKnq{y>y.d謒\qCѱ_Vmmͻ2Xv5X/Z Dr6 1&[ sō B$6㝢Ȓ? ''_lbp]ihJ0쏝ԒC׍&OpY@` `F CtflhR:e_*ik` )qCp@K٤onUVڤT:e^z2#:6$>5; cPn3+!w]"L}}  ۱CiVJ VVڐ30#W+qByi=`\X wXHw*^ \uy+w;`lV!Z+0X*#xK qvx٭齙&@!aO䫳vG((۴C̄w1}ӯk.8 V+W1nǯtӌqEd,Jv 9T?PN&,~8 DrwF|x1Z攢BFbH2F_ǘX'SWD~`ڜ*=}52[8ML_ c-,QG= &`ы1snݢ|*]1ӗ_0жZt _:o5 ʛaXjܝ?Kj;'m'*/ ϸRI!+|fܮ)LRBeb/CD)!Y$ >|U*;ZxT%JViʼn~Ru;+~6MciA*"sxfD΍N6fF gvQ2/G_Q%˾@ƨ6+t Už}=><Xy0jX#^1eV0HO4)a4cTMڼ׀\9Cڊ9ip̅v8@>ϑdrkˈhcJl@4gί3 _{vlS '0@ bze-ԂU}yWB j/Jm^Cbmo_Vo_JTXG}!hٝuCz*9/% (V̸4z_ M.*Cx  $t^QћQ PE6&XMSM }Y"cqV2u2zm*yV 8D|e:V5£#bPͷ[9%{Ϛ9#:{RqcM*X96#s>ȉJkj ?DN ~/ʆXsYA{x_r^o<`JxrƬ#nq:ݑ.ak-rOI\j&ZU}/sQ b&E+mI`Sg7O^ ^r=鈰';6ETΆ|{QK`e]#+|YG2i0m)K˩(&4'‹+;DPT2%0I2bӘEm ~a|H|T3 AJܤT\Mɫ 3udO~D^Zϼttf4h(8+Cɵ *0Sn&cX[eե 1T$A'y0in6;ZۮWYPp:ꅺE?X80FVnEҥ!"qI6 7sR)dxb{:XSX)GDzqR6/3:6{ #% q)]K5*2;jLu^ed {C:죤"-E&RD!Od:>=GF]N,LdōiږE,ؘ _H!yio_rJc \ \k=Û*:ʄ9͖Y+NDriLB3rdL8ӫYݚib>4aY-nq']A/{şD]#Nɵ_cᘪ'i3Xև9 ^b"!ʥgoqXOsHS=~`sUԽzy_{Ay4{o,[SC/Un4>/9 Fx`2eTL&JơאY6u1vTk=8bH/uL@Pphݿ|6)AjdzGf-n4;h<PMTT 6G&7Jo9yb~ãL(?3S2Bx^5brDnb9҂h߳VGT,~ixȽ23ǝf6#;GOS ۋSjp ]3RnM)1ȇzړQKC̓y׶Q>RV#lv*^rH۾[,!$fG HʃXH߳^r1fUϱȁE1ogl$َ}!L88)&|0c_ *QЎ$6Daۣ;jA6Z;`fHu4ܣ9"sL- 3sk_#qkԼ$ ns:ǨOkR TY^~`p^$gT*<:.91 BXiiNʋ1)0d,oP =E@ P:AAP{a *O+q8钉9džMWqkvK]{].DDDƇ;OSt_};.xbdzXT!VGs[JaWL~(yF ^R5''6)` ݺ^p\BQ#l f6i5' 8|-m*;EA/r۳R)bBCg.`؋RbG ك~ek74L] Jd`j |+s5 ]H!/4sRlgL8>>[T( >Dž^'u(jgiVeNp y z>ņfr @kh& 47޺ /ux0L%QGHگwLLjÍL5E.-j^k0*k k*̅N]<ĩ; RrtVv񕂡Zγ+|MqP/ sI>1g҈ Kj.17YB*epbVY|˽W`-s%,iJ n}X1/45׃YN WS4i|'fhwDHkMN>8{D0`c}1EkƲZ>zh[qlg,ZqM>$EZHb*+.LXuȁVoJL"&!q2+GW fJX&S2'7}v&R1fYWL|t:8Mju 2~/LJiEkxyhrnݏUyz \J-ȤscZrҽi5v]]B;3[kx;p-ѬP$"*\zM9x&h{ʤSқ馯%K@M LCʋ+[rz$dG7/rEXJ8Ž=EikxDB+y`.Y Jl 2-xuUXL|0ZfRe=zTK"6\LMl _RnQM. MB +YHXC~ISK79Dd$y"ۚuRB ҡUE{]';ec^;ᐠfK=l+YC,E[c'[x>W]튲.Vf%p鍬f;\2)'dBM\/"Y''B\]'z$ϭƵ/!*0:;~pTo}%BFe!j~nQDՕ3ĴMMT9#t: X3eMrSS{ѠegC%t;Ԅ,:OTM#apELۈ#z=+0T+μu.N yC. ԵiYŒi64 .d1٩QߤR.uKລ(IWcSΥ[Afv5i`Ho3z!eui98Bz&!6׆ȢM Y)H=bJML\()فt`g]!۷[6OH2vÿ:XO5617S` h=zC)W 6lp h!$ˢ5 6xg)8\ڏhŝρ%EC㥉+kXB j_% 6 *鿙T/&i]B`bLj'SYѡSMVKWiGgeW-.OtYH  kcҺ9u7)' m\wA -ܷ)Uf/4a_K_M'I#%yݚe[O4KS4ev/΍Q\i'VjNpݭ ʰ?K8pU؞GrV"6KP&Eg؟k!ht,i}*g4t(NgMvҞ04 JMxCOٌ.)wĥ,էIbB³WdgFXbJʎf8>f//RtKù6 ę e -ꜗd:CJ&hh!ޝbC҆BU}5|oxHng1&@Szi~Z]ql-4kA&;$ Zl%?h{!O)q㐼O:2=ʙ"L%^Y5kԝg`@N1ѹ|6F:mҢI(N3j'S~V3zVוSaj>w1 1tJbjC)@GiEbT%cp$S3c_kق?0<bT9hETA HI sayBF3Dgm$k:px@Zf_tG+Y 㱂&H/J`W:\ʣrLkh7iGNXrf*~jPȋ6_΋ n^8w8[ήWPq b ;.zNy~JdQvrdq]i=/DHZ]ڂQMזm { Zu:JFuG0;7P`dKD3`\"]^ u<{dC F*1^, c U? H_WSEswi*OqGIJ~t$%z S ܇vb!EFN6s4;UMv>ƻֺ 2ь^ KfT,<hi=ߓ,pӵR['C6߿Kuɭ9g ,;~#tFH=MvGܟ쀷ᒧaUsh }Kl༡ .*[GʐFj&B!1tH ¦i01YmFCDTͦo$L^8ӻ6m(=(?p"pK]/3AhC1y!Xf00*bㆦџ ~s<)8&^x`Ӗ/&\'KǞcVŸCJju1+$ƸU]'8h-H3l:sw;!ī48 [e|lhgTIn"@ +DoӔËYg?g%x'yгQZiD%sRS/N٣a>!f450gWgP^E>mY`,R32Un8'}/4b򁺄MLw$Uw&gէˊ&,%.kQE&w Oh zz<4Ki<ǠQr괲Ơ=iX hAhe4x}mcR?*s-"㡢U{7'` gRӽ4$=_/c_Im_@N8md\, \u+ 6 Ԁ ReF9aHhe9g#rdE6q^~YlM{>)5iNQ yx(Ƅi_a$.*|A m:]{%1jX{<W ~:Z^1-u 1;CD]P}D慐A1T QQ4Jxtۅm&qpLT;/Q1h \`ӳFG.TȠf( 8 ~2:n0I -ͼ7"99 w>!&7[H Uhz{?R_cUY7kYi´PCl|ʝ6J:0+j=0ĉJSZuKgX} X>J8y^õ6O3Vgഛ= fh!!Zw,'wg m/*QA򔺫%0rT5<6Z>vn:r2큟F0U*(]Ê3fы(1술\4h A-OַܫUǜ* 3 (6Ѫ:v9ezWr/KtMU*A, JK-)GȝoSa{S#p_9ȃbpHwfXkwz?6ֹͦ(ᙯc/(hk<{QZ Fϗ)+PHY슐mc;%{S&:`soX"ZlXL^y& kOFk:}Rg*wh`[x1~;hj6?;*jjFRktN@.uПs#+-xVxnmepEM8)YQKfN~EC[ܔT'NKJ 7'2F`YR (;c}Sf5-ȉbS]PGZ N(/`}(v%+r1Gv| :i} ̍QW4jO]Ĝ%(:8ke2(<짗޼-{=~{& Cg:DJodtd9/߿3^?:>EQne!>ozHפ8Jh}m {j9޳Њhł2|vO~E\qτve:1WzkMe2Fi!k tC-簜gkL漾-TUKdg*IZҼ298.b1 ұxQF[pi~1K638ʘ@ 3>V0 {WpG3p33 9R\(ah{<2$ P&pxag?Q_6z7k[|I؍'K{82mkËxۑX28|N= 21,B׺_JyC"`/W抉QQx-oy%#6p:m+A[_ `~VGV>AC85a}#}9JRRaJC}RuL@q +FL=6("N"X_8w(5 JA0^ɢXkbJ@˖ZFSm7TAQyn<~O6Ѵ.] ]EV_ԔXhJB|U8lFcV=@4M  ȷN7Y 턒s,`I{&:O#6gg.hVwRWo'_x's#]Ac[؛i˶% $u9a6VwJ^6-ac!i*-4/m?h_m*Mﶟf⎑RtP}4 *&TN]IF#8{r.U= q\ˈQ2 [7yzAwi#>ష!kBʀz3 belM#p}lhYس2,*i ik+4>iHdu4wd6%UTھ M'&?Su#` ig:e)&1 AڱǺD762SuzpfƿUb`bvGyDL>AhW%gGY[;v :Y崜`h\2g7ܓiB6y#Ӌԡ vLoԞ>+佭BCs\B9>fU M-a>d\uOF~KH`vx/2pupNn=Hٟmdا#x ynVfVYfp;;'lμdeeeJB*%i6%l:ٗDwB[) P5@ CyfX6aM4ʔ -G Th(di4~}xmg}YnR{G\ϧ\׀!e~Ֆ8t 8[%|Ql;BuUHVT7gof7'(Eo*MQ>2kx}w IbgoTZhw6TӔdzzGR𴾳)9.97tcRɑ'B4U)1{Z0 d\z"vH+O26G̊Δ u7`t5uF!:CبXg^u:M$E wm$CLuecw^fDP/@e6K=y|I>sH s ^/nOrTexv8\2XWH$!\Y`*N!,-hFΖXo?Og6^eΊs"F#zj_ dՆۖx23VJB媎7$X'2l\-\':c?Q,n-c-/5Cqx ' o&|0}Ghύ沦scӎL0 ]Bv skv@R Iq(&=mTMe$^iNcnI’NjXۦ3q|h+Bo+/=*2Rɋ] GF̋6b}1}eMe:Y }K2\] s5h۪{>G% |$Ӫ_2-dC')[R'``5CSJApm=jHl2 ~7".~dO#(:A7Ŕ3c 1nkm 6'Dn\=F; ScY8U:e S^C欁w(_CF+yaY^T\Zӹ*c+Qp-j7{G> d%MԮGI ),"sWY{< I0w@ ]_P7 cd?Vŗ)aTFȦ cF}NHdk,i`efdprOm Q QqɾA"댬 ޛAxK5N-V(voʓvB{swe'"SENu#YVz?1j[,M(%n>R.9r#Ⴄ=L:pE.NY,9' TIBqLZKfI_aZ$VS2yǕ "36E 1];qs~p1$ҁKuVӂByɇ["[ -ְlpzu-jt }&pYZ2d'4i:U;9Kw U njK~oϓ(Ro,fTߥSz)[(|K ,f$a[a,Y,;)"AJ }Y} ÏT 'pJđA&YlNpͨh97?&º I88'-CY߭CW9q=zbt6$T'<+P&r֤o KC m#VA G0D \BNxBގ\F/j_{+>N^/G0,XYlO,gL 67Nb$)/Q^D]vRPg*fEP޶6# <12D%[~b>߈a;#fdP:[39mmF 3!l0p98aOw}J?{.h}z5 ᦃP2/{qI?9omG^Msz'J_ịU5tNYBbz!EqmBo9"d`,+>UJϮEx83 __[b JYhNybZ'5|MHv/"_<|~( 5Ix]W`~[e Kg%b'I_|wI!č{L~\SvNEAp=:a:q<9kӟ]qH-P0ך\Y1w7\ql+;wٶf_W 4)KkT'BtMDt@ vuqw& w)P-8@]BEH).8]jTދ/cV\I\7N? ),,s2|w8Q%Pک!7D|Y)ч00&Zl[:cz*&dM_!ϤUc;^^|55™EvP ҫA UȑSmӦWJ1fYh3t ~Qr*a׶jH#i-Xg_$,i\ 93&{;?-C_*dʓ^lC$Ex-0#X!垆vdptkV?8!TDh#%gQ1_Oy-/6waRwDѤj [4.cV:l)KFӹhE7̉.{g[V= .>-G#'ZbL:+NcƷ-: pG`1Z7 63r3YK쉴I̍ҝc)zSQ62TQmJzKeIP[N$5`P J3'4o[6>SHq`= qkPʁC]Qmȣ*TOWi%h=&Ul QsCԾ0J #ThV;gͣ^ґi&`llN<0jY0Q8@:mSڄPjoHء?1xAOJʉ ,Bi[H*VRl=ugp?f) '`'jE݌GiY²ZT 'S.3EnӞ&]Lن?2yd2QS jPwp<:E% 8(Gi!gM8>wGF}AhIמCVbBXĺKJ ~m}癁ܕ * R m&c*KgETy!GpS&wC˧pv-v(Ky GKWJO1I&ZL2ԭB% _*O5uoY3Gr.]JL.1VND)wнVِx[[(.J\}4| OqI;ԋm3F LefVi8չ|]#1&u"PuwF60Өp ;1?.4YLcdwe?aAAiKƎh@kp9(]+>BfUB} N+Utowhs%,k>OOP.{)Rz]Ӗ%3l]PWG~;@2G+Q>JۭۯNaVFo 8")L*f5F!BgHLmWC!)h S C3T-B Xz&#f 8S LֿhX-l9hQ_ߎꜣsM@f}Wh&7#VLb*X_LsK)I#rBH$, ̅7{B Q*xͧ1JD_*yZO "FϹk__i"lOC5J1[,pX2PM%5Pm/+Cŝn.bxTM8p%u 9g/F'cϟw2FNo!%6 ~K0z'PRb[џ*;D"gmWOv! f0O/24˝q?  Da3Pڻo}(l@iZ͢>3xNRtȔB#[n(eAǃ |а7)mpΨ$Wi=DJ(%g;e1бP|A˃|Ws[};Qn:Tރ‘. ٌ؉kS#Q?Ppdiu{PLڌ$jdl*SZisgV_SL-!Lx8^Ԗ"ו_"zmCZzUmb/b7ràF+qޡz j[&#*w ±LjhB.y ){2&Tw"-J^w5DZ֕I6Ke<2>-S ~fMwde+o*& NxTz{.VE2~G3R0F\Tevyo-GvHƷ_aM ݩM~q\=Bᇖ.a$˒G&PFToq}BTyW\rDAֳ%fҜx뿵\tK *ڸ [RJ~xxޜSW5Hޏ?TrqIJ|cKr) GHhZ#h&xpUcjW6Q2Z:w\y_]Cb&ܗIђoZfXX*M&J#wU5T"FXӓLp[{۳iSEϿ"DuVF ̫mb~\x ¾= }Hͫ p?ثH tI)ȧ1)8;`uXanA$qM?UW*7P3R4ym@^$*{R-:9svQ.7 EM59m 37ܲ;EU 9nX3*N䍁44?3mmnɟ)g8r&.!JUKv(i.XpZQ W.`PN;BѷgCۥzŠVs wi M{Ȧnv3#_2ZVE^C,z~^8M?,3 Lv!\mgKaQxk*LzUMDƛpe߯R"1=Eԅ 򬎄4@_tÄԷ}Rv˶ g98畊 p'~7KW 'i{9VmM P92 Z`u2Hɰi2S׳?imr(P{o 3Ϯ.iH0Vށ7^f]$v5s.»/*SDCD-_v^J,fϫ "6 =ؠ]X쵕H)ʘb )sme@}(VViv4hj*cٲSBڏ|_)`ʟlkKާgFNk*Eܸ?o*RQvsў;kKCg|Xa8P.&M :]Qź_"fhF@EۜW}nmD9ѪF8קj൜Oq hwP<.W .ab{fs%b9|.g3SvS[׍*$?@݃`[ [ {o$iNŔ.Wd8UڙB^=Q2u`CԔjwcAiH]m^)xA xêr&$>쇴 'dxcӁMٯ)<'7"aح2CV]rmë VvF6Zz XxMJ#Dֺ/ƢOֱb_x lAMGhtf,z GrB/SA.tKʰʻH3ZY:1%(fIz+]'ouVCF疣oq%2Ŵ26( }梛[D%}Y6Ec–cz*u,$Ɔu ND$Ghj%M-ο'*VPh5 θ+X#TOm%r9#.KڰH \[W2sK°H]w'ܰ'F>1JXe!%F)SׁQlR8H|ЏF:89e9;y5xFV|>y[&3T|9 ]769uEeTYcU^CD ZRpAe%x?E"&tKpP7홽T8C x=gQz26۞} Ӆ~.RKvqCfNwğlToMv!2!n6]XAS% M6<>:Ke-L,KA r|\H+@f`1>)79X0+R5+lw`օВHC[2T$VSTgI?L7GgϗnuM0(6wV#w6* F4 reZP]-⛓FgoF`呡Axpd:Q@Z_tFqV I{GVj;2q%X$bD 24?Jjw Sb? O: }.)`~RfcxFDjR+_V1C<\]4=D@LPf{k LM0 tБqS<_oPl##`*HC@ܻb>|Ōɉ9 y*\/m`h!׉" b8my!G5Lt4-G v:n0OM@igOv!IO,fJ?f.`M-a6lpAð25X|WK|R; ~5| bCۓaMK{&OCʅTr3Ixo6JBsoZɐzʝ0E?4>u:W^nvcCh8&xpt94y7bre\l`85pR/q]ǐo UF9%sӠBIUDPRIE'-Iq]f\+OlňM[('L/΍!#3vL& #Z  zKf&X:Dd^|@n3˺7x§q,ADze:{! pv3Y zVo=ww:O^\E-ׂ~d AQ= nq:v9M0噉)U9k7: xrh59G9BTRR݋ҘSJdQobuЂ:H /Qg Ȥ}y{ SXy"n/i0&=+ΙF* W & ק|k)#)өɃ,9%md?tܠi/HUk=S}GL+W ‹{'<g8{t<T 4G _k~r`ZaAA\]U>=><2EgIb,9̅#cP!ٚShg--6ӮeI!FxZqӬpʜQήbe9\8 fw䤉& R]u9VCŔb ][g9:Li=4k,Nye7ot7^tmƨ*HsAQjh%KvUV}oHІ 5O .]Х Yh8+{Box a밙>CkÕ]+0_H5ݯs<[k\ w A}3E? ZA*]E?qho] se&u>cE5wv{Lesqjyf-G?G%jVᨯԕY#gc2HgϹz7 MGyݒAZ(X,DN }INtR^2mw\<2;'+{8 鎞I[zvJV'X\}# RPpAm>mitf0/m٧U"˪U̺Y~brɴ[MSnhqEv~.X %-O8^T!S!B>Trjpoj_kf #c'Zy{M&5IIVtLZ pHi}6)rBȎ kz}1!3uNx"rP~_# S-qŎ^4hp&?j^FA k~=Bim7tG?L@oHZQ=gծ,o.Jxt(&>pV!ThL0g^ɲ@Oz }}>pgގ鰮7y 0$;≶n,nRFX11k{88W&^8;nJ*Q\ ~ l[}c$t #Jc56?p 3fUڹj/}Νz E b6<1 _L_Jrhuqxl'`ZvzDp `_ dYGvQ\|3O! ξe~y;V"FdittW 6sK=0l!ok0 {H!i0 "(,PFusl)dCGX(0ŒɔSܤX:7K[\TJkj'F3 -s>N!~QVDX&:Zn쏒nZ)-|;sRpQ0 {#QS6-<80I%t}Γ\[#ayk(y3c L?:vn;^Rk*J`dINp} f]&3|YFjz7Hoß<np>ՇY%iw #.TF@1;j8ɧL y^<*62QegAWY$S^6N9š }`"T.P 2Uo0]CVkY+댷bYr4)4aǭ5$qJ[cyܘ0hh:sTl sč,=_vs)@K 8zOGU.?p~s)DKM4j axja>ƵzQә~eplO03.dOx}zA ?O} kzK T ڋtv9evVJޤ 4%uK+aK-3t/r}yF)b=bQĢC32ο2пNE'k~|D!5NfJBM9Ex/C- 2B HpܠQwU!y9t hG݀^ vpWa&ay:[5 n(9V3%'JOu-iDw(AV6~UϺC!}twANDnE#I~AGՀgx3fh7J3@lrv 3\۪&6??M/xTLͿN3P)y)Hc_]ZArm 2@u"Dt0D#*g(]M1r2=UH ~"Y@">MɼP/ wz*$8t¦cwYf*VD)b3%9\c[j )@Ame0A@/mB',oగ*%g=Sj6*4OBF}/^6=?5˟灿0Jyɫ GO9@rh c=!Jb{#9y:1{c2S a]<G8j!%+u4\Z)p8I `iJFt %gQ^ںT n: j0Navp ı]ZGEԇ,ZpUkq4dS^y]}3њZ M .wd﫮` s|!АBNOa 6k?em`'|9hM-kjC34`SAC.>q{#:[bz%|ik%tbBTZtnA->3j3MHoLZĩQJ7Y b^Ǧm{jI;m1瞽; GXr)f<#YMOht$buX7ʦ3[= 8xA)8+X'aJ )*E~5.߂ Y Cg$dc7@ eʽrNOIBZ=$hW#$4Zjg {6ƽ,JCIkf$\0?w΅}Iz=joSվEe}>qqX&Ww"v ]]r=_rlKx:˿s9%+b8 ωx(S9KZuDZAhKeEJ Ǻ uXU[UߢF ڞ< >׆؄ 1X>Y9a#Ch-qQ'R#s{qھVxq?a= Pg Y,jp6}4?6{閙Gx/杇 EHV ˝ j)t-|BqK" US %H6.<8guz£)rA4ǣe wє$}OxYFۥW=MajOҌM p;8ުu:zeyY2} %&M F'he?bL -7] ۿJU>=?ݓ/YOsAn.?le4VG~/H݅Ý2|4Bdyo:֫6X?~7 V_=̻;2H$&̆[QilCgGEȺ=g^#B)ŭE3#yl FJ֔~j_>kl)IHWGlaK (!vtl=DĐ >k~k`4q&,7"v+dy./jwP2DlMa ȸL: h` V>.L|\ϛvIOQ)f{/ |!鵌>g9fb68yd̅q-,#> c~ -tw/Rh+Of(U׸-O0CL|j3H$IkTF{n@7A͏MX@ݯgz=!qpRׇVIu#oϒjLI@;GwI kP(TTZ#;> yQ!}Jx-:K1*:͔n"8 HV},Ώe#"v 6$N_F=Nv|ac̋'g^ NY0\Yw Z7xadVtwXO]^8ZVDKӒE qE-̟Mkf8R /rwxE2LiV|gALdspvLu?smvklPPS_F)lI5ǀ?x= &qs-XbJH0W+R 6*<(W͂KHS бbtQVʒ. x0=S3{7Sٕq'rP<؏X)i6k*!ad| 'uLYdyL>\ktT]8vM]~E JiF픃 D8O`cdJ+:Zoi |ZX [H 6aMl}-6dTLZ0?%Qǘ ǏfX#+"\t3;h5qkPbI#:]= .0(h+QqWY7 j%}⻒*-BdW4H8z o4IatV Eo%Ο&,Dq1}ūlQ1,hFgCXtb)2yYpk!?*]2\]-ڦ%@gckk`AG@ySpsz¡hBWG-U@zE?v*egi),q@%lX위C@YNs:{45M>B~}rBtݶŖcD5zmdž^Ojay7ͱ|G^tŞT1|yo2ItSidYV}ljs1<՟ cjBKfN"+ZQK,L:q*^aa66V)QSjy՞>74Nݧ__Ώ(JiJ;W@ 4l5zka.F|>|)!ށcQ0=I|ARw=vբ(?,脡G 2]Q-,nata`ICt .2\~.CJy_hT|<Ə*+W@B8;-7yjNX\R4B@=Z6IƋHzxjc}sp4q|0E^xQY %f8v֤cFSu1ʠx!mTAQL#Ҏ\3Ay7s&yQ@E!U:A05yˮ./Pr,fj".TS\([%5_VxUr, A;h`g' 8Nմ_bhKѴgF)nv`SlEP>~I VP<"L[r1.ĎR4k*i`,)c{U U/o)o!+ɖ}Z*Rj= cz\uMi>SP/)R =uLyY,5ۼH].0 t?n0t>0fB'c FK7>E8Ȫ q l4 j6ԏ6zGMm"r&4Ҕ:oXχ v~}覙V+"ţ85%LvKW]P}NrHw=dF(!5qhR8גIҜqR:^>#n~J)&K*XMXgFZy{c 'fE zr+=˺*4tI.wg|fyk%2I`&i&V )#$ C8A0Znyi O:~\3Y3on *\Q 7k2X5J2~0x9?l) Gϵaqa kz.U/>x}y|bn@:$.8nP^ӻotRu |riɦ혆EP{OKzptK4'*{$=Ą-p:I;ppF2`Q#MDeN3 [s?C!fIBDsu-Q)y_#oAmDppSlbBT$yA/W@l !]9nT8BmK|%ULE $Gek‘4)cc }=;"8 H=L %_e-lD? ,Ԗ%HmU@V=Na ⡉.vG37\R75Ʒ Wֹ;jtyv4Gc{/ Zr5$YǃT̟ލQu?^s8&/%wNeʿa 02R0 fWMNg EINŤd2h?pGp(ݔ83Y4X̴Q+%u 7[+!h`OuH͜KHY,]T8N1ZX}I >Գ'ilMӽ!W-| jPKTqZT;NL~5T% AT+=w d$ݻǁѼlƤ[-=#Ƈs hrlJ?ibێ:Rv!_E),I>5p]{&ğy=OpX||yˡn9-TNQXpxՓ`Ʀi צ33'*dLϘWSk!I|ԥ]b&f7DXcɷa[f[4Xp<YrW*,֯9BX% /u Ҙ,(WRC6ڀnQ_z@\Amoԃ;ʫFRq\XӚp?[e7 _'&R&zfc/p|g.ڽ/]#8(M$SZIRBuHYtuӘDLsaNzN#yr7ÿ3{w^y6\eNK$-TijNȤ20u mi kί Kn|#noww{`7{,lV'B~N"0۷d%z>Y?Rvm\T)WsSh/zD?5(=MIV#}~`-Z6|0nߥ7%{q? ' lKOr;nlJs AzV;lg1S#pZOp?v@,$I @"HK#)ܗ^.<ha\&6f> `f|9%Q&ҊbY[jOaEG+ѲO#m*DZD2ѳa^{0v8lt凁BC>TZFNgZ+0ט:yۓkl*Tʷ*kՒP,07ˉ7I?O,pFI__c{L[]juɌ^!7h(Ɋ=BMQY_fuww\NʧZBHYhy$;}(z$*ܷyNe0֭ױ*[Hw< ځ9^G?́܁Ed*E:>׵Aem ]I3L('״[Bv2sѭzb"w/e)72͇D:v#UHJ&ݻsQ?*V-Ba2_!vtݙ_k.f"UK,XȂ4 ΊOuz[:e>Vpdcl/֥a?bF=p<4#Sn:a[_wr(N.B\*!3>rk&h; !s%}F;aecWUi +SIv k_ktq[ @(F)@LY3 s絼ƫB4;2Y^ Y1U4qE,#% e]ɤ8!j]i^Ci~¢yCӓ AH薨֗l2XPYMW 8XOqTOޚ TB;TZin Iti/`/(Wc ^<nd)bG&y)H5\R)@4v{>,QE_WCHmD5X.L|:Dt($Ɓ^i>H܋e-J"e ·<#;n߭q"0B3lӼh"W*ҳױZbuK"GkqzcV"[г.pp3Vm `1hUGx:2\Q,nfJ9J:s BfEI|G`6'xOva}2;NJE"+~0*V&A&RHo2RAncQd \Kmzlsv.ʱ1[( l;VH$[S+>tY1wkl+Da$uzk }G0K^2 G]̺7i.7Ea~7? M<vH/ϔ:FXlvte/URXtSJO<=R= vNs/kBw-E \Fc+/)ÌɏljK~꥿H9v+iUDȩ$,攀>J[tjuG5>݌ pV qL"ܔ4]o}ޣQ& 94 fӏ[vˣOgjqLخ,eF2LP"qN !,m/C[h;x"h_mppA!ő+z⑗G!)0 j(Z|B%+2D҇S 6d|?cKRG>iu[^EJb1窔qr@G&_݄eޞA݅jNN9;Ţ@瞒zB+;#DgT=-#e۟|Ɵ LĞk-!Ӿ1cֺg_:jIiy),[7U+$a'B~~ڹjGŠVvҠ,zubsAiYt0聆ĨL{ zGiH/&,YZNVD ٷv51 k+)Xd|%4.pGpe2XD!xրO8EP[H Ecd;x=,V %j/:.ǢtDUzK9,! ʒ9@︸*5 bEg^}7gfO#J ycGa#Eٴ3M`H Ҵ|{ftz`FXAtvq35W!oQ+܂-_aEV!HW u> Ɯ֜m 6^#KNI QDwv;{_Y}PyYnr:yaĶx eP^"d˶$2>dp^IdbVÀ(1GhE8S%gPZO9 ҳg=!<:&E"0 x5{t a' 1oT,V_v֎WN?5Cmu?)W(f*-B}C&OvC2d6fo N"B6Y$jb.Y?xEh(!R3D*@b.N%rT"Nmz:_Ɇ X;5gC`϶\Yj|kx(}Y.gf|9?S<"[\)~Gw”)׍ Q S+ƚuPu ޷Dd~9?>098.{* A*d/fa|OKP*?O?L)_ >"()F:+IRoj'kU 5H[-zg5'ڜf؀ ٻ|@ox>CUvn!7 U0XE^C#ܘbbjHs[B̀V2EbV߈r/-;Qnc Na.x7CExװ)4Xq@9.Y0JHꪅ?"pC"/.ukBd0G1b; <1.II`jĤ::Y(^:Ц'MMy A'oc0 '5aMan$$`j^h je7I"&0UZt$+)^_ىܵжY "̝XٙFlE_lSRޢ~/o4W7m8Sg\= |ɯP@R8$E"F_8~D?.+"@xjj!#-k Y@8webx-W(k7B5&5uJn;*i@7Roc ? jƌ6ȏY5|\oFi"E^1)ogٝ;lM =ݡRI?]CqÁćL蟺Ά?9⃧(%;3JfjD:$ QHV)ð8O"e%#s];3ud/!H%np%u!L>y+։~`|Var{fJZK˼ bj*=hsPhlsˈsOE, _RGirua|D(\D1"p]@h|?_7DfMl=J07IwG`imshib{Dy1ݚTl;h4Ru|#3p,`g %Hx띓'%*nf;aVpO6GA᝶xpd|Hׇ#2X/Ehbh K2* yzԴ߁^y?8g3k Qq oA\{/m%%ިBTqDF7Ġu4giMXt7qiM%#k Rh73NkQj9kʣ*% e"s|΋g|Ԗ^l]G}G%N;k`b LފI/6)yyCAHYˣX[|+,iB+¤>us3j:掯T CǺs3l½6F\aMЏ;8wO [:>RI|"뗛{uܷ4Gظ^F!GK톂;/S_ ;O1'Ci%XL՝hf[I'rʏbV HfmI%Gf8xYНgp$o|O{/j]7$Q:1,!Ivq ?ޢ4#u g`L%R+_Cϰ!p@VIq5;lI͂PYdb\z8TH5"wTwxzΕq4 rH\j}MXpl9gb*?Y,m4񸑅-^wl,ot3N/wqiXf% Nc$߀NP/iQ_cvlba1/؉! %: x {c gL=z<-;6.S|_ mnQEh}> K"rmq|1zjH'ØH QEku@;ayc OZ䱩,Ѫ,`PGkT( BS$$ӱ{pP, 5M"„?<6\ئrf0&m7Tv86 \D=`cb@2f>-NߤOf"|"4R2-IaexK:J(Ü/Ho168Y.(}4zdf"nK.W 7տJ)'3"wf\+KW7#g.Df~ڥ,=xeL. __oT[f, ϲeVKTv 5P#݊(2XVsڋ2dF9 N" kn餈jh, :H͙[8'@*8f'EVźMj\3@Yx4A6VLr>''S(5(e# d?>pbw"2O K-h5㓘#XK1HKpLy ;қ9zX?b\"VlhL}qC.+HQ;h[AZq`WW_' ~cPx}脕0\= ܆Jgnl8xB&sOsLxȾ[5 סiJbxԡ0bA)g7tyFN'GdzH Y9jFɐMz0cv1xJ7gX팂B*@QƟqet?hKykb`eKDevbƫa$GC۱p/ ٷ+%EuG=Ƃxڪ>=.8Y0^}KPg>US'ץK^knpPGt  t}aʬ㧧SQ֣#404يtFJ>ʷV V2@EX@~߀wcT_2M#SY &=^2AdXZQ΅ |y ^嵴G2V2:O󼮰=5nt,W)*rl>t@)CLl5ƱrFHEJΖ2Dž Z@ue"}脅{]sߣ^':c#vx+0B(:S 4l,ɝ% I#Li`:%PMMDžNvvQF<'"f&'Ii|?Pk:qy{5Ǣdu] #TL -w: ʶ߫6Ƶ4 < a,<* 12i͕Ƣh{ޙ>gz;h?# 7 [Jg6:p}Ca[)ibs;k+L(*N8 DXd: aBY͖u9aF! n>E0r'Z%ϟmJ u!m@;rK@WvoQfA)tPk8zWgפ5#rrmۼ E޳B"V)$> !i^?r [59aZ(^s/ Bż9=FӪ$m-00K{yD̻oq\Mָxr]D"GP+'jHC}܀߷UxԴ.48_GQX=9zљMI({}Ɏ1ke 4F()sǞd~SzN,9Mgp}}޼NwM" 4N#q~*Fv7/"oC߿eW(8I?Yv|]EN$" zPW۞#aJalM ;ߚb-ņ0|k{Bخ:_]ֽĊUDJ D<=}I[ Hdr 0@6ŀѰrKt+Y,fS)s!srF6Ϻp &:O ~)YlSg˂W#4:MRHZ`43X4ݳnp z5}6l>ߡ7AhAlb8PS #s *JB4v*Y8loĦ \P*})) jwsbFt0/> [ބayJ0t4i6WFܛ|.lBcx,˱[^M56 .E7tt58W" `C0&> %SEky9A|$ Pk8Zo]uTRau[-X#IG?w!Hwnt*|4n \}F0ţ3M{%_OߜS^׆<aQlH1CLaU8x)$()ULnוnnB4]N޼ ave +ָElaP.57÷NvD(+jծFJB sN+V9118 6Lf pX}0/)$=p.sJ2 WhUMY鳂7U!#Nĉi]fGS o̽k(Ianq0L湷taz!,d_gO;m4t/{~4W9N*Qu4>4jŽ_MŻy|qKd懖f>[D\1燾 L~Xy`7aۛ62KXdA!~[HQv5EAXzpnj4TCrWb#xƆN)쭛'XVode$R뒧:u߫vdrkmy-ChPH_@Yɥ8I5V2+@@f";M VɞUZQKWMu'] m 9L]pvnSnUJ%UC;/~Mw߬)˫/I;'`e  ,a疊'`3G}!MA3 ȣ\@hKőufzrZSkmwXw?pPH܀ VDY@N," TWrr<^\8N(% xCӮ'z"D4%K̄cRtDEd)x{ \bCHþI [^sTlZ=SN^fEW> A,2ȵ;T l 6IbM(/l U0i̤h#ǪHMU޶hȹJjӮ[jLxJIқk HOP5}ZJ{XEG-yxMmMG> ~N2)r2dYDHغb~ac醻tu˜81ZgAI^ xHf!5ɴ<Ƥ1,_h ϒ#h4 p~&1riZvrm:w-@`=OM -W-=`Psϫ+f[C;7-bAGySƶ@`<7M%cW`3(*1䜐5 $UDGql1pF/k#>tzmCIvS+3wALWHKe6zS14n%$&Yfgv[llp]~+D wlt6d]z#yTآ#:&&ҧ:Ng@&<1 ,!d ʡ t7eB{MfܩrЃ.LtEx$]D c*Ҩ<=.Ġ%ħD88ArrpSM\SƒK8/"0j\4C\ [G`_ܖ-L/1a/)h3(yuO'pEOY`+ߦ;Vu1l2f*Vm{%/݆Cg 's[:k;-M[a-w0)U3fGp~R*d W "ZE-v8>`+pM[qkG0HK=&Rթ[{*?~)K[YrbۙeJP.R* /z}R-~Ul*I۷kK:Xj!b._ 1 cz{Yn42vnƁ)7.JohWqbؘw8j،vf7Q"VKy]8F\p+S*m=Fh6go%,1CI߃9U 맏onmuwĄ?5z.dM St}oGuuttD ־/*BPv^mʘ'y&?וYWeh@&RF8.`PʹJ*F^C ޾#P0,tZʰڊD2GN.hJ} eTp.,~*3j:ЏWZD|n'V s!0Lac.r5jIEC- {0 2,\}r1Q dQE} ڸTVagNt)KKutWRɊ"t| TqΧ)ڗtU(r#i"P\Fy;uR7P4l%Gy#DpZ96%`ΐg2%$WH 0*E%͔W`lӹuEnh z1{G N0*sC dFiB(Lr%㞤O4aƸ1B)<$Gi;\&u,.D,T~;)ۭQ7bZR *6_PɦMD ao:QMwzfӌ>mS3*>XQ{aNǨxxaIsǢK*;syr=\<2$W(7W5C[xj` mU:Fa"PQ1R9B;KgYDZM3Rq'wKo(`/a68k#gH% Lpo+u4D/lX~u7F:aG,sǢ;i* -ޚ۝VgV1|y07 _ n"Og`,`vlHR @@ ./ԏ:A9 iZb^tAXXf?ÚK?cwhS?c+!Ir|w-JGTqпkib,Ôi,صL|1F8sC-qɳ25&=N:a"h;Ic ;JNqcZbyё<`BGӎf0 gD4ҷحuyrTŸt4L7Yzo^WVq)xiO[ۍe?-E_+>'nw2++/M+Y^aQFJa&H^r)WzGכFj\8QLHv\Ki)~jVvLT5t."k7F遝ۣt$4]{g|=~y< 7U0P)|c0.̇r(i2sAIŒE>rF_*so pڜ Ij33a~ӌ#zvV3ړW yXhM/:ҊȗC(M =K3"񕵮<=y҈KBI<-bNh^r׼ef!t"u*VXIk oUWXU 0ar3_o%w x,я}x T)i W]vq&+vG@lilM! WqTcDMT1M.y oEV%ƂN Ы t PC O74֧g -?YV$}54 $K6O Vs Y>9])ܒ"k)Ci~ ƃNc*z!c࿉7 WL}UMȜx]=9(DZ{{e44 j ;RZ=mن눦M]-@T}{;\jG6R 0.=&X,ZoF5IB~믮1[;8d)?c@I @0řϐ;eKfd܏3!&|hUCGGMbtY-ZŸ%:|Zjh-ծ lY%)` M)=!;84ƺ"#_[sk`.`]M A4֌ఠ͂S_ե$VL[].{Q53Mpá(hF{Mq=0fvt_=XAIP7'[/5h]136'S g&z.o$fݣ؃q;~g_QCvi /~v JC4VQHݶDzY-_R7yj5\1 zmaxR7c055 0ݸFY>*GOB^b֥2 Z(uD q|V[Uf҈C}LSDi|P5='<}AT%px't=FqB6gJ3;|0wYu0n]"-\pZք/'R;?-{ݻ_̘: EMұMcpXL陟izK]:n_s<ֺG|ݱ>A=N% ^dj'ODe__чAVYfTS/ֶbFVٲQA\a":wg 媜T$b"f#/=n)w{Aq>"-^;xqT2yHxfmz >XdnC\ vRw܍F"H3%#GFP ZF162Ϩ؆bڙf$-kliޫ5C:Wc`Dq '=mXEO­wQRgAeZÙ7V,}n鍃f$Mq]J߳TX&i4I/ k@y -Np􇊬::^qD:1pSy2 CXH&Mr]@uLK'uB&F7e+#ݠ nkC,plFV $HȼghGiPAi0< m\HΆ.?I3FWU"&6IX7x 4U: kLž?w#d+M^/{q\N53o0,Ϋ0sb"Q^eJX.d$~T9$5oք/}x\S}EYJ@a%M fn ї{$S/km'v7$8+U6b vtQ{Z$(?l=?f_ ;γ +̚Xz6̕GN(d|W@̥K\ ʈMl'x]0;[ B~\*tMVg}Al$L6<=О|JUtXc$ ̅GRjcާڪ&b'Xm9!n`*`Ҁki"y֓י@%Fx8Kd{'Eh?zy)Zi,?q C"- k&m:herr:㏕0J_Jxvv : ]`DlQæ#H˄ ͒'GQGHnsʝч(5g3^ijcsE1dL?G.;SPѮvN6ba="FA̿%60|vYs_M*}f4P#s9 Z'LԹ[y Z;o$3k?k ]u,Fcts>u;mfglOsn2-\sM&-r8o@OF7knypb[l8S/|EjK5wX"Dz28,eSOqt.%vFv@-SI)x+Tע$)hh׵9LJ+k/ǒVJnY¼7h5fM$I\ c1遐}R/22}x'/ЯX2Qؔ֍P$O[+*F,yޘIxK%$R߯@ Gcdr!#Y3+-d7)G1B-LꢙhICivf4Q7y vwދ؋l)@ z|Sϑ_GxG?aGI͒n]M> t\d_oj*+s ix*-,qr8Zgw?WXC}H=݌8p ϕ02U*ݼ3"xbj T7le-*(P\;K SğNzήMvwC-c &ŒܼÙrc=گ& g-Y__. OH%+J7em%xK/"m:I%QTu*^z${(gx~<$U&f P5%1h\MN!f2lzO:)W!m~ D"ZJ+[۵h ʹ:ȱԒ6Ycz:&6Zrć*eA\А}eq PS0[~F!w@`eSDo@I- HڂQGX}ZB XC":d"Nfӊbm@l3P ч-g|EK KxI8{T @%Dv|v M`lg8Þ /u#:>Ua*GY(18-5xvTg4&4`O Fy7XU}_%}rqوG)]rnT苤;4H}[:3e\=Wa=?i.ႿWuIkЁ2b,x5miֻj^-<-4^TY?|0hW2zXyPƤU&eyudI-'$[x.NG[<؈EudžL^$`B8?ec) W1΋|(&Ԥuj%k&HrX>G?DAe%w:"wyS26hݔ*[N;XgdN7#4!6h8n{ Ð|XR4%riXDyn\߭wKCCMC2 8 IL9ܯH}=Ca5)rR0:ͭHp9b:1H?)ڭKtj~NY%c꘻|+ 'sVPsU}?~ rYGUiSe 2[m@(@=mf$H*)ZJ[x3d>gU&`x&p&BK a狨49O մ)%ֽH(ToX9pq8Alu*Tʧ볍@rB)?NjGk0%7~P,5+0ws:tA }IXT23hUa7(عY/AlPx\WL aóҸ":r"Tяy5W&#n6k2aӏBdm22fg]f9qV+yĎA:X@fmkMX:NsgR'+Je Oɓ劂[V7Af {}#'x.KќlP~CE#h\r-W]⢼Eẖ`k+sfrtCi/1+iSJ(gB/o><1YK'+zg_)3br9<=fg|df }Ar)gX@Pgx+=Hnl#n!vz8,&4V~5vAoݍw؈=Eǡ3Պ[QxBs \]n5;I#` 0yYLx;21fD`d`/xPInEbX1ǷWva(Ǎ﫱vQ}IFÅXVj$;Ou3HeAʃgAe S!0o6N.R9_ԝ̑CRCt{bDĆn_&ɥKڐ5-\a|YDpc^4 ZnRN;\NZlUc;I{ k+#ȻUĺT*Tj:o2.D$R [F Byj-~s;gNM+6+T]sϺAt2$V^̄kKzG q&m8MQ: F7j[_Oa[wB fZ@~??YV)K4%2k\Aּ]u<"P}P!:y#m?{-&%Vc/69%5/lP DbpϊPL- K ê;ukUT!~=VhlVoIَ~$p~+gmg {\\c qXis. '2[Iq|ޗʾ03:^JIlCLFeH%|`rVSNge`NziϜ|Y^#ivڅ_h;yDS/[)K3*M3ԉz̖" Pv"֔[},|aIz! JVYOHf=%y[C÷^]1:;3]Tg,/տ4aת'\ ugc эn}\&1.n * }$OS aa eY/pѹ?р_sQ[~|(5 6O `RSj[XL;d]Q^+aB%'E/҈Hzo'T.Δ7Ľp]J02e)2miѤn; "Ojۀp?<Tio(D_%ܷ|= י8T뻿c]eAۚېʴ|d xQR Ml| -5ZWT)P̂ XcS= 뚑|\\zXR44[ rzIEbFY>2+ f?is< 矣'qʐr +"8 TX\P6'Z5'Ön H56撩m%d 'ȎJ)f%M[z̿IJp[{J@E9~eMlp˒wz=u!`R`p(Nakj*nVUFRg /dkj\ܕǥVS뀯!#V ~W* LKAuy :}*gRU ;+ $CB~hOY] 2Tw *+$#1:Z{EU&U[tȨBQ$_c\p"(?28`RS/%ҍHB;TThYp,c>cF.f?&QH(es0]P_#o{6%]/*o)JߙnG2ꛎȻ)E&;-8cVn!J+t6&e|l0$n8#U6`$@[ٍuJ;v#aɭge$[$\fC!Pϯcc*, IUIA.7O zZQ-bo6wd~-İcy'5F⭃[ަˈy?(@AԬ'Ur}XX`14&_ߤWE2\ǣXkMuH5^f>ʰo86s+m PB>0,wmlpǿ\#YZ{-E" FH0cLgMYaC2~wki_Zn/j]+Cl%[Rz\ֈgӣ!Tȓp @&SрK^#ɇ4 xA,LlHL-ʟ枍36DŽW'ûO0pviRuC'KUVz`kdP}C#ܵk7yZhBU>כ. ę#uYۓ$Y o:GF*&LH05|seʑ)QnK!ĂywQ^} "x h 6O `J6ιjK糞{Ou\DPWstorD"ŧk::ԝ,8X%<ă3`Bh j:MEHPWIF$8SC0A'0i%o,,֭H~ [@c*O/3 ~a1TGY0ѴovR W1Xb \0 ۘ!"9%¬6wsyFKFILQGOǭ Wɐe 6|SIXYe3$xL}߻JЋXС2Y7]VnrQt\ELB}OklW/ڝo1rQ[I \g% m[h+"vTnvoG.d]ƴf %-"G@L9hoϞ4>rYij*nܥٰVKڰ?Wxz{1/&FfbdtsIPiǖ8Jr KڶԠ>K3NV < J'e4*6N`y;*8eG(Gvχ* ;Q'ȣO6`|1hYN Ǜ6[+ \>6I6.d {c=XR\&5Y+ 8C[G8IVz|sô\Ҫ1U49Cc?e4G)`4Uŏ+Xl(f8b, ([ SXzܡeyZ10&[H;wm4q6j>iԱ,#\iW @xky*Ҍa0}ycK! 3٦]]YE^ڻ?Bq~YݕTڒ!p}z\[͖QˆJJ[#nX-"imOrpZ.T$k6ㄪZGB8gs@N-A]8<8EhjNOj/8X@uXpBz0MQđ4c4uB -&b Ū ! .J'Rt0id1-[3]w]//p&wΛ9 z&X*Z>ɺGqWp OM>Ut4^j'/2P|d|M"b<,1~^XpCc $z| ׭ _T'F!?,gq.hU+vEw›ZELZ8|z?VAօpjׁ iYFp1FRC?4Df64SlJ\x+TCR 1оE KلوDHweAi2;g6hhگ_2x eHY[JJ%,S_%\+ތAouܴdV^Q1Jx"z~8TIK=xaMw WS G_)O(v: a FٺcȊe0wk/1km})KN+ `ċ}hF|OF3 !' a؆`?{ UeŠ'WLVdkG$ ̠RplυLNĹwbIo*J=_NWS$ ]ؓC 67l#'?_ү c 90048[>]`hYY[m4H@ݕ9m{` Z"qPo'Iʜk3v*+IF_i˳Ic N(qV}:+W^v Y$3JQ]FI1]2k5x55H'ڮL]IAcmt""l3_.6)Va^R *Ijcqc^Ba쟋ԟAeu{q_$sâ]3[Rڇ;?bPsccַQ-aPpzc4:p߱4Lu/SSH} n[5DT* 20elJVp/'_cS-.zN0t$Q[œƜ 8iZNӋ֚^ݮM3{O(gs?v0.#[\}:@T!uF" Ȫ<7p}}zS8S03<~#$}P8MpR~C)caA~es%#w@ bޓ:rG-?%3rL 0}Rvʇ`Rt}Na+{;u"'NwS͛#1v'ƈs6=l' ZbP~soQ8O˓$De4t ]*c_-ՇJ 6&~A\xpjB.v cYQ.Oa&": -Al1V.N!=)d#Q}F< dqҠ$BQ %I0@`[HVȓj?90cBkK`\YC+0.pq\+dW|쿛}WEIx9C 0GARj߯_i&Ko8ƣH[H>Ot ȪuN*ϚZGČz=2>=39%D U6>An}qq n1RöyTk@͋ifJyΜωث(Lޕ+ ]T}pLk=|Nϋc6ADLJm'*R0A G~̉w$}o.S#^;W0*7bꆣ9ʳX 2YڕAP;]A'C Ԉo)OhZ;cp<%j!r`oI/j BJ.As#Yl:t ӎSX$ˀs+Kjdz;ժ9Ǚו@g(uh2?ׯl@:I͹r>o[|vVegHcqI;OwH#I84h1upA큉']ϸ j -ʐ6Ho Zlǝ Fܶ 5ˏol 89u>o#cY 1gk߷ZpRF]fmш+z,~JYqG=4ΩRhz,?6ǦVįQ| طőIx(j *-rvO*I1oHR?kg>ucQr@/CARRDUD ӳFe%%KD1o?CO˄ZC\ҙl׸؅{́ƃ)vɁ IE?TTDޒBNNmh$.fNA&7ojۡ}`%`?e$(vw o0JɴۑW[6 v+" FJ'h| Vl2,P/TFNҾG]VLwd]UMb/ t'me\K͊_Y3.9pPCF'L\X} 7o{*L~wminUĂĩRhE%Mg\5~ݜcT ebje*e 7jB+a/>ײ^f:{qx2d["JOruxdYx 33>SXe6 VKgex[%Ӑk;}@W^̩;"rV›'+/ҩIuO36m3~̥3=kt^X?lޖ2Si_SJAz̭,]%9@a(ջGQ0Z7S궨 Eq.ϸz噲Xn\.+"I~uhf8>_$ fok?Rh0+p6%l5q`EP|k`6մ~֘'VKl ;,RḔʺ1V.m躍Pb/(QL\hK :~;2B?YPe2>Y5n0.MP 0x'E[mS\և_pl? "笢05{ Ǡͬ fL(í:nIm_ͣhXVd' V1۳hBӾQvj`ڐLM'VSoP3ԧxPC:ǿf+)<_vrWWpfj [^ӛ)%{5,K쓱,A [s糤{e~I8eӥGHFHhҴ% d5[KI+5?/ xH%iZwc8FF= %8j.ĉ!9XYMn} !C[}5Z3KZf[7G [9͢0*7B_|xgn, fj#&=c,h/R2iì{: Z)d`A2V 3m22pr9)&T)6Hr &Mm%IwԮQ؜5 yYp&<`^`"!jTbw&j#4L2fR^W1Wmc5ƨ-`KC{oȫ" :ii`~x3!Κ$PH٬,QZtqYP / yZSKFȝd`P5=04?Z'>(HXoCw)ё$9XA@9"z?AG7:uaݞ:^I'ZH޹$%*-4˙*B@uf>?c3pK{%}Z .+u_6q^A4tHbǁ4,GS2m0-P6,j^ATτ>r-@M f#V$+18uj.r\|>s2sCy1ā"UDI&{9qril0oGF4daZ=zvsgbjob,L)-Az]ϾޘR)9WΘ'^G0Sxrh_P!NEz7DYsLm?]΅}ڒMv iAV&\A&In]^;VX݆16-r/#}Q6%dP<7 X`Ahݤ2=\X{#O 6iojJ-kсJ<84ɂV!PO#4q\nlvjGl**9>(ZS(g$il>"++<7YzFg(m ZW@5IRX(`8.Ƣ"I2XWqk&c@i`J'BFcůB.ͧ^"64 \-VT4]e .WcKzG1>mgH`j zJLIuJ>nޱfo8aXg=ԵMǐDQ#Y`a NIޱ}7?&$!VDovElz1C$RerQWCA!VjF;C4Ci|&nLe%(M xǝ=G!s|%IŘm,߮*s 5s QCWuȡ(?x2}#:S`D1D,OaӠ3o}!whO+zr)mQ-r~"ɗLfu(p.Wٞ8LfqPc1"d'Uf6,FnmWƫlN`ԒS*(=9TٮdaG}-fe$Dg^:7T2~3Г5v{žr6<|o@?$%h2腄aN4k:mK^;!qՒӺ#;z _渎Sqz[{ǰE@{nf]F|!@t7$揓{6ġ [,SmF)>T  z t,wY~R*p4y3c>mփ l}noCzU:VհQ,0-bAM'}#?\<'ֹpGOxD0vkC~ePw?H3oۓPq𜟖_ Nމ}s`RzssTwn4f M,aCտק_peE6XI1S(3+y1|YA" NwDv]8׶y>4;@.p BzNuϛO:gNH2l s{&X}Iُ2N3ݪ T0"qPLڭtj8Ĥdd}"`wqFpk=tCW؅T6`|߄L[iݐ!3 {uӺЎ$R zՓJ_mq-/¬̨V>gXٽE~%˺EAҿpg@ ^``%7CѬ[m=eSwRR> 5 =(A̒&Von.B+~=+/fطUEX֝}%y<7sDLXռl`18Z{1EJ@6H@O!MU0 ֔`{ydsg8jKE}d4_eCL_^hYb, {wu8Q !F]dC;Wԓܨ'0>\wͻ/w5 &dO͌ &pto}])ަJ:&+Hw&Zl0q^2!Ȏ&!TϓSR[4 '>x }!/= qםnn\fNNKRoG7Ds5YYKңHqhg""y J͠ՒddL}{Ke`AEvǘ'svt ٷ]g]|;,'9|5dަ p3dgMTibFjN0 {ĖXVo 9ZoiE]~)_B"sv$PSp?7Ku±zww?F60+)F#nw38`-F-w SHx6[d?g* ( dH-FV#ܖ/( !m 0 ,[-"ّ1qi*תC9YX.l>{q ,ٷTiǤ\'B={ֻZD'ٕ#9GW LƠާZP{Z>`L LS@7)?:]z›ޓvVES`Hf^\e8/N4 8Zm$ࢰ;FOr'S S 6J;Q!OQ4CX EAmB#ꢸR|ʐabٳ =y&GTDʓ&n0ֿ+ֻW6Y 6(ʳkb#YqK* "EM-pУ6_̧nk#бAFO6ؐG4EyynM-q.:/=%f˼JN);8RD\qIr|c6i.0fgkzDuo=$dr*tP=^_%i58FA2,=cGT&9 ̠[(.!t F8j 1mmUhI&Hn+4V%/xu*AmDJs4S_8yH!}ٖ0p#$ðDba\Ov{ ~~^!v(>Pv`)!Ć|ЦG:&a"} 9屿{+2^W>5ED#(7g1Ȅ$WPPfV\DMF:`4%/)&,9Uv+Q}ފ@9vg:Uk q!sdy[Hz[-9)aM]*{ <γ//Me,4kAڿr8T w>hi肗DuH2k'cǦ+aZJ/DbZT"\ lwO((L9ڙ&ۗjUFb ==QqYԌEWm\62&W)oRXe2辄H΃g a<,F^wHMQ H/W7Iu&/sZ'+MIՂ\4ژCh~]'2ά B:F)B]cK3x<e; k$=E]9}E=^#mDMOO_DTw͆(Z{Yۭm]Hroa3B\so0Yd.wңE.psEI,5xU)ǥE_pٙBy}.&z\ դl:šM&V!q'TFH;8̙))w8}BIIyU15KOeԡ e%ГJ=^_Ph߄ }؀"z`12 + V+BUp^Q(7{n(w;jPpјGw[lH|dcvL)Pp n aU$cK1 Iiy-"Ɓ9$Ѻr;^ YRkhʋW8(+gՏ5xeV"f^y0h7^: ng.K; b< ^!Y{/]+"@VL4S=.Fa<ĵ_JE$w4RZ1AYvH8Lqwaӕ3Fb E,_1,PdjyU VKtX)?) hV-/<@ȉPFCΚ_7NOP"i z畜!r/dʗlrOv_9Þwlrz)Tynqax,Y(rjpM͞5Ϙɖ, 콼(qPȉHqĠT, /ˏk9WzUB< ,L[8EvJ7[e7'ʚ_|aP #(/4 ARw=>]SFYLru#!N%f~6묉absHo@#4 h>Anxh.|q|Wj.SB),\KCx{;56%2m 9cVrw !=k~`}Ğb]@Y+;yZl[Fm-E]]prJvä;4SS|#$_TTc5wKSBEARid.-7lfٓlE4RB*0 ɇHd>yH_ + $G͏WDdV2 ΧN.0}2*8XzIUQ]P!Q kIV*YC':3{T~Qj1Abܹ&2'bN*6Yf1t9 d)X+Q-}*@dBd^̉dV2cԦ7mx\5D4|f`1qF4#YwIo<2% "YWYgp2ȡQjqއg40 TzR%=CȟJatoah!YdٽsnD "'sS d8xf\K#GҪ зam.JψLu*9"yIE3Y_!3BRTDS)/e_ӅŸ"ŝ ʝaiD>UɈ? *fN}}x! q2(Xw@5k6K>0B X`1q%ZYE&? s1Ka(“У״݆6 {{-f\B9]ZCܕ:V6j. h:f'&^ gҢnd6f`sd@ZH+dbtIefC"^bQTu E(fVYyB9?9n0!1eW /k;P^z z^2LLO iLBBN'dx3]f86z3ߒ2](SOnCm&^]4z^N9 eoh}e&2pdh{Ѳ? G  b0;S2ۡ6˽.xFu)ߋ覈;Ҙz*BdA3bx-KgG2;DAEN[)k-o~+ҊkѹxbG ݩr|>yzVK5=uX(F᜞-7뫍+K 7(q@JqAYo9c5&1/hzj+$ "%ϙ'CgM=-!P-0܊c+L?mZ:mK7MnjHv%ޒyؖ7=^l}z~]j uZ;`t(G6" Qssg 9)!xQ;n'IZOc,C}~7{5ƚUUL]NCs__$/O. 1Wϒ{ * 25՜])A@h"Ts2`^&P<{c̓V~A'ir5b*Ymzd^mG}6<]Vbi6X5߿ɐ7MxjuKtN2 &+SSѕ>"<{I}12y};9ϨI M{*Gɐ x0JZ'}ڬ=3-m\4Gf% jZXR%`_jlUgjK?PMm Kr!`F59{4 '{|{ Ҿo1 y_'5YB$:Uye6I$q Q7iuK]S_TKo&YW:\{'c"lE8ł Y]e㒅w&Kwj7[Vu!DPyt7iiA'7ގ5XpU\C1PO%;5{vjgeU\ -k|uSÔt˪WYY~'֪یeSDŽ2a|:}=z6E;:t~So)9M r vN2M)-п* ˉ:$9ʒHDr1T<8d4va8@,u *<<ԧ0ڒZӔ`tULe?}lӝwi9:@vk ?8)9-2{wPS?;gBp rbG;&jh;}*, 7̼,`jo 1ǣgi<9حI%k]=twGgxn[x +*| ;S iUZP4YEjN|Lut'@cѯ8\ZCmJ@'9ZHCdžyU o?rrʁ!`?}#w! )ע.ɳI02!'Y!s*TCj&Q";x >REdHz.J UrefLPuKY9}aROyg&}Y邿 fg. i2l`s](y~2^+Kaڏ:zRgsygh`bX e@ ?qsmC7 #X * [MfP{ϹY^tK<#I+nY|MfA/_jqCmo bvs~x@!D 7ycMUpv”oY][FWC}Y\ݍOyrT38)cIUnQ-8/[phQC&'Crw]^54+gz"3y)ܿܬ?;VE(0HSIMm6R'aw,,\ALPdc&Po6]8PKb2aQgITRޫc#96`O*" lE}m+ <sb5D}Y >HzD)&7,.m g/+v  +;VpGX 'uef}edLJ;Xg)~¬ԋÏԵQKK^z$&/F[&'=XTz|~㬰Xp8Rq'۶zL]Y=۲N/-Vhc?R.Zڵ8J釛|S(HrŴT]U "bni.ޭ?۷p|tWľ]c9/~WLi􀐇ǵ-: &g9!l'lHz0ݖ?@h5wHrdG's~iMV]K:r0npo5Т2ej:|H%vv]ğ`+9w s T3쇞YgrKzE}#{W-  @*yU$X!}m*zp I 3E)rm k ɢڸ55mV] 7z3' N^iI0 :Ѽ$s-T)/t4EZ6~LYS .` tw.uVEch, 61DD8[U:>Rk oH+*) g4",Gyq)i&﹕R]qvG G4}}n潒E 8(n~$j~?uZ|:UZ6H$'qsUG#dlCh?L!*;816^2EʶVXfjN|9qTH]^`Mw &i5yZ$9^+qb*7p-?/|uU :K/|G'Paum ;E#dH$`MTf+L`sԐO'h(?bPDD-meYI?Z~R .>n~]0tY qݢe}Lx,OߜYa]L,GC4?ǻҬ@]}#LJ=i'o-b@Z] tAU^.0?hCK.gx˼YVSo{L_B.W!vцct/~jݦM- 6h`2[ L1ڋ96X GF@/4G9I3Q J8׋.<$t^=5:w+IÀ7.Tɺ颓d$PqZM~qtٛSrhPĪ1^Ho皠 {˽nEn|1>TWLs5h_>Q3*{5| "uf/A?/Z#,[1Lֵ+2\Z9ï2N҃58$2+N6rH6C߿ o_̒Qp<2 ݒѪ rV*i(& qpU cJHA-ưkO,vxZK#>+@۠XëP[RF.%:kWj̰G~tͬqBcƚ S\A=)!wZ MF`4U[J% $E׿"pC׉1mg;ٴv3qxl }m.(@:es]U2a+BIT4znXT6h>,MCHURh Hˍ,85S::dq!2>\X]Ȩe֘>v4^=|GVe%6 {@(C:[L\.3[.cVete Ѯv:zd"H h!QHQ O@hB6_Ázz%@0$(gޤ7K)`mo_A>k_zSK:ު0 pJq9b.sZ 72d庙U~Q>+ЋpTRRMxo%][؈5p\S<;3ZSPUkg-G9@. ]<u{B&Ip<5ۯB% gyhm"eqcnzflBpP{;bv.wZv 9ܢU5{VrK;8xwݏ xSgT" Pl!X).fˈ@a[Se}{aɔ30ѳ!np3j<Up|B攽eN<8&8CŸSKy(voB:QZ29<=M;>+i^npcXοS >5DžU5SXwxr{K &q|3Bɪg/z{lЪ0v k!1F>Y2sD!^,>.lݝz.!nds*\(qy{H3 :{DVA.^ O{>5zYn*\$9ayPR8r9$́2i3plZQ"񛼆i/]δ}x 4O)l7.[P8V-d[*((!.Krڃ3|d ӚJJKC(\;H.#TPgϙD,|?3VK:kbu~^%`9ݢ>OWFSiu{;[Q6\@W R)>ԛY{cO}KVb=BRKi}@)hJeI㏫]`Y\T š𺔠X;Q|o/T0f قYaz7₆r[)3lT,#A)1O7Lx옺ϬOg n4K!v*ot高^lJ +l 18:իO"_<@y=Pr:gHe4)8/,edk;\sF@9 A)U$DiY!W ƽc>jHU8[Loe) srwV*۽ ]W?o"l#<`Fފh`[ED >yK/}֚::@_^wD h$EZ AuԤRs<_gƐ̬n6h"UfHѕ91+CW@-G?˝=s2%^5jJX]-G:.ZMb])!*mJ-k~ Y|i×iínr/2}L+]A׎gE&Ôl/V{QCs_gƥy-$t}Rqa $>}&\1O|c;%{aZe&K̶ %K7={3Z9i {ɠOo0@ʐPzdvsjڰ+g"n%zۢ33^c'Bϕta EYR]{tO0Y`w)`M681 Λ 858p! aUȢW Up1UQ 8c-o벛:vE NT6xady`!11U%A=F?DA ?~ W1 ܠaO:*nlQVFFf=SKt)Λ3r|d$S|%|lÞ/+-doXZKl /ݹ9v): Q‚#k}hI5A,f0g}38p8TӃvA7V<5$> T'E؀*>y;zs[F9~Q su}&P€B'E\vkƔ.gOd`J}vєe_qOlAEՀ{(W㙔0ɲ٠>boΊGKbX>MBkcY_$1~tFJs< h&k'1cQ$O=`\Afqg3gpgϨ)Y/l< ?VW Y"Eg|UI;!EUIXd֨kt3-B&/K@,'& 6X3AԧlyZH*ra!j-Is~xIwtr@A{^UXZ"'ZqIJ bՔzq&>2Tgndq__Mht4~t]Q`TOն*sW=s2K(Usy0-LlhL`t?j|5|Iô=H_JmRɍ.;-XbԹ}eך1 A]hHY Ꝣ<06]N"ؿ]#ij*W ٣g@~Rʄ i޻eÆ}`83&4ǁ7Ҋ.:NZEN$E23o !h@&çxFN:V.sh^k/-Dǔ Kh ZnOwAHX&FkVdN[;G@Q dX1$}4TְaŎag{p_8;砽nj oeEXZ:7Ƕ]&)p y..FA報O 8jr>{Cٌ\BDht8|}П `~OGyG\ e(+KKXMѴZ܈^KW{/>5|G6 "\GbD|svh9[Dm=SQ{8 Z8zn?߫ף0y܉Q'{රN:.R|dđ.&Ǧ`Tg\iXSԂ~PKVZ$*b_Fš` vy^ĠҊ Uoq S29dprOQ U` }7ž~nu'ϘaQӴŴwFr[3fnd!qdo${H=CUyINDnf; }1F 8.-H| Fx"!%JŞB #^qP:5kѕ8a1x\d?cO\ݵ8TX&gOFg梨 ),VdwH_ Ϡ"s`&*,]TR╌p?J+'3}HGÿr,Ie\i\R%ZRRY0w@5} 8Q)֒ с,?e(^3zώ.e!K.hN:`0\aы&E:㽦IC%, f2}Dm磫70;ѯhOjgؚ(*^ݬUq̑<a]-2e.J%k-W'X W+;S+%7)'sXA1njjS$Fyr@~K9 ;C zJр! Ϟg7" Z*y)y􁡉ifMh̨_Ժ*i:z`~eanȌ"l/u'X}\n㪬nNk^`/s2k voY;{wmJߙ `a;XKg .h PA$k |QPUb`0.6I8>x4cy/Avx/1xR|?-`1QK &Qr[fEEJdMCRXܷo̙K'\ ]LNE b=AԪ?*U7n3?DCTZUńz`6?ΘI#Ӆ\N7${EWAGQM1|#nv][Jq|'qh٬ ~PǧyN Zwx4O-E fc}}A<.n[vC3!dyonRZyXc[ OP=Xs9m G }RAv_-D_>xMcb0ߢȑ>;siaM)^*kƨ/r3DOA&eF9];~"hWlh}W-qzH71cazW *V6/§ix?)M;ËEhvS| /l 8y3 K-0.g$!ޱqđYwsE?1z- mb%RH#I `Z+m8x>\++Bǩ#38D.Y1f<>7'`:Glu)! Lk|h~[} ô0 C7h^( c  k>@R`Өћ3= _-ΜOqTbZ~R"c*(b̮7U꤉>b޻dCT >iByh3/Ap<"^Uaq4lԿj4 fDy0))%*>D9兑9ڍ]!VUvdUJY)ۛ Y w`2KqJ|-rya^-8_WZM Kpy QU֏k~cBQPq؞N儗ht"_+qYLZA5cA58gvDA5YP̰7+["(7U\Vmu]קכUKs;S)_gL}E$y9=qλ7Kiqv[}ԤёjJIUwrTjeqZ=иGbrea}͠TT$_.2 H$S]Y>!,Byb~>Xx}YH7vXAS=0:L_H lLlf84G,Vn q_# WWp$HǏsKPYL`pW Oaz/ErSYrH7&_X^ xK,0`X:hw"x ?H}.؅c'̪LAy-738?mנPpzqHlq+J~ 'ҷ$JoxgUtߤdyG>8y&Z1w\[#B'R';w%cTKfʠ k}Z~T17lŽϼ'FR4q@͎f)n?qc|MN6mte#X 'džPw5G>Q%Q`,ѕ|:^sOH-k'؛i 9xߛ GZsx OIok˱b3GAq TsvgcH>PH="92||:q'$r{-Cq2t O󟣈wXaPÎ5HEJ?"<(v?Ų!f0oIӮE1-i!cmu 폿?fg7Q"HV l&xʻ .BzV*q59&W ;* 3euJwˬʍ?Ulo3p*[dЦkl= -yu|FEj{+`ޢDҰrI-7>`\ŗ-ؙP6`G/h2"xb Q{=^ʽ Y%( :pM y˹ԙy9@DV>}у?+x JrIyM}60^ Nya$UkbҗVec35)忳DZSoBEӜ21L0 jVU+K^kitWczFBэȄ6w͗IQEI&/=QdR?9hmਟ~OcՂ +K~ HT$Œl`P> (aYU!a,#-a[{ A7Пq^:=jB[d#JD=WF 5);\YOE~PQ^t+kTmXs =92ePr шODn_bؘ<~OT/=ktW4 dĹwЅ?@iV S=inY )QPX[ ~ #w1[*-yWC"[E4) 'm(MDKE6o E?W)5;7qq[⩒I= xT@}cN_j|&.mh_QJOxhF/s _ B5"-EA7MSLUJRަLk0,quE)]=]shriǾZqCi%_3²a 0˕}S'#te/|m_~[?W mWN6" ohcV;PIjjTZJ5taeJd\c@ "D V%q"!?&[dI]%s6z~ wzaJNZ?銦KJ K 5ڍ`qU(%6U)(:Z6SdKw?F8evyo ȝ91 J!8|>cZ" 8F I\ޫn>m [j!98UŰ_}*grܵĘ:pBi/X||XZk>4@S4i4]EҨ?S}m*w23묔qUD)ZRn@%}S skDpIԿtbt#*u'x kgƶ8pa`:$D7d=sV7g84wk\l|#רa;iY@Y_.mh}R>Nkh\/;QDUHa֫†a/$svNe]"$9KCy_zi[ %1:g%g|B޵YxcEp4tk[L;3}+N 4ǘp46IN9?:p媂WKXgK+"h:UDŠt3X9PT^b($4HWDɧgW gOhFLe^@ .Dy]6*} -%ԍFqZ#ٲ OYf5=~q8A& H'Je<7|rczMCQ[H0Q>l ?2yD[\MSOqo->?ߞMWMd͙I~^Q E4{v T%'@̖ {op<:~p mߤ>mI)Au@Jϝ_pCѰ9/8|~P! 6}n'B ֓6G2S"3,YU$9038!3m c#/Ym޵W%yK#Vvx+HHL~R݇OR~" 57"I%K@>8p5m? )39Nf+ c_}e?)fcw7HY@SSr+Jvat0Vg<خXu)#W뤯@jR*ҫ(@We.]y,^)sKDU$ʊqn6D0*&ڬs\.88_}R%hqFawbEW6b!yu@.dbWb8)!2katF҄U| H=x~Y"-eߴI3R[`y$;šc) Z-g8ʡcAA?,S+bvqn`8/+״#IL"x6`k͸#54u%1=DvBٷExu*yTkJ`JГzr PJ~x]w k?õ׮7VtbO?;Ƈ^H wdb*qOܒai( \<hs2ir~>T7s) 2_CE+DL`itMQ%$34Rq2_Fo~&]hy}0M'38L as_z2z3w65Õ!į+ WvmeՑ@=önvEZNDFACaj/|6jytKlƚNwZ pmF4'l~Yhl]h CZBE&X5/!= %kbu-*srX!ZLaAl lzV`z{ֹUO^T!< mDoM&X2裯VXTX Ȍ1K&ͽ>׻hܳ_9 HgN-"W H,MKQꙜ{iTS+g "8nm5 j>=)z,fc䁡g~"0Dant;@xe-l%D%rT~{lb cu{2 7Q,8v9,%(AwAx;gxcB#h@iH"V=,\d倥.jƷ6ph{'K?"fBCk`+dpd:͆k/3fl'@Iyy"ȿ?=)8iC~E\^D$wgb%hx <'r dcQycD9Yhh :5"$- ϓ*Cw"F-*dq@%nʇ1N{&#s7&9l)+  Eg̣BQA~GA61x>!SlڴӅ_2 jT`LtvcNwPe$28eU87g G[n8/A7}4 U [/LNkwo="!#&(@p`Y.󔐰vv޺hT&K(Hl$wS|IpClI 43 _FzppP%N}חJ իw$h?7kZ_ +D{P'Y2OvgdHWT =cyje$ۮ̈́@!8칗invsq_*UpkI<ìLY@JXbqa Z^M75Su8RLu5}qV?TO?_{uM>I65o$f2|?Ɨ+ a7v #>728^o@%hJI8L}{F[D/c`󁴊 >u26BVV#B%ST*GU*mP_M"A Dm4uԵI^^ :qu)ڷOPxn×<9|%~.2 \։~lQ2`NmHB T@C>Y}r"i{er!~gq&K7a|(']0qЬ\Zە[MSrY:^:ŷ '%kLW:X@טj.ϪPbAH3Y}2+]n.z rGIl,"88ZHc!g6ݭ*䶛GRm/cO;Zm9%p~$өb}C] _.VBdot`$!M `rrqv|Zsp 6d@#r#^Wsqe{Sé18n+©beb 8v KiQ\z(h3>yCOzTbث3?ĐnF"'6_km)?u^^Js;oXU]o70< 2e(1+/zF8 ,}H{ O.V?8|?!Nј01XW5&mDnT0R>JN6?NtuR1PE$C_qڮfղd Z,*Aۈ@T=RBleg AQ1Z)8>gpZ[oc?b6*fVz;!h)oIvAf8w=I_PZDxCOe1A$(J#W4IsxtPsEE޸߉p}╹xpeRU*YRW1o)&(r$(_"~NGg )݀nAlX Y'XS y}YGGb8i?j3&+)w$ k#z,~@%= 7]dryMh6$I=eh~LulɝBwy $ &HTo%1-]r@(e%@OʮM6柔B݀*?QuQ6e{¹MUWӦ-墧U-!GUg5P7h}\!.RgPI;igl~Տ)? #7\w8hdv-̞xB|I@\"}9b=Qf1*̌L :z Ne+_3KҶ:nhP#sgAn~38 TɂJ>=eVmklQj4G̾%/vzb6혢[!i簄g] .'#^a*"&{E)_*9W)9+"{`F*ySPj*xjF$ۤ4H>7C>.SYY-VtI ;M7HqҼyJ7EY/E+ؕŧٖkQG4Ap~'كvJuL@UhPnQOXRu.,/ ˤYLS}/4%/' \lf!l![s5| Hb0t.ª'znz#5';ohH/zw]R: ^&ެ0Po 8"/@MN*,TkXv:o! B>sP&r*?C9pHB& ;֘OQWA97!`M\ӰCN4ㅅLs?QpKDL*An:@B/'$T3j}vi6_){]/v 'q=qRTL+U ?6ۻLMVYh(łO8>} Cn$b0QҺ5gSz%x֭iS,Clۏu;g`F-[ H|Q?ѤC~O4Ht]IEKt2zN;ÜMA$[Njg`f-?b BzRK(CfCb-% J-am:ۤ)Ȉmtv_)S©*& Üd= fOmm;۱b to$DNgJz-r+B g |Br׶q 05Sn82N ϘT@K+¦%Cb6nV)fo\QAOT w\[l!h Qs׍Q Kܥs[kvlZI΂$eeެ w_w%KU=ottao/?pvв璳,?(&h# ɋanAࡆ(B t7:h~HʓpcWmHKrZQ1 |B_ :5#cٓoNk̥`%񕎄5;hQEpg em$ <0[݆"Vp{"~|F_ T$pUz:O]'PyFRӃKP~w|%dY## %n~W` O>APLO[WC8)rn܌S}#xI/7McAIw|+K[C!-\J#eJ>İrVdV9k^>~VHOs" JX[W5v֧km7 h#{l9 o"}f H P>tcW⥡y%;wcFܯHd#Ewa!˵-}M r#m6]Sa6"*u'JVarlkxLSm4 {wS3s0s9_bڻwbZ?~$eT[V K@&9#@^T&͊X8H|6uP9oc*ErXTf/:9w5v*u $}Υ9a(_rD}b4/c%Ǻ$Lg!MdVx (OkGR}2|=gPJMPpȄ`T )tt0~Pa'\f6h;=E ZcG 4ˁr滅{@_I-hX¡O_ ̘-_Mٕǡ;,sa Jӗl +Ԡܤ,9OgNR$gȞ\f̃oQΛ=*.?ʄmx(-IVA0g/=8@Pl F7G0Gs 6 _{ )hAWh^36! 6Ґgi%:2{3CqQеsݒ34N.R촻<.)Uk胑ӂĈ 1Rm3$OLG=r 2aTD˅ } h8]l-"+aEXԭRϩ; +%\˙" .]_]HZ[*`ƪijƚ'8 8gda)!yJ1sVN >_M]+k`9pb^7`0Ts_ئyWML `[# ]K["WХsU+Otæ;t#vr3IM6Ju|@p0" J3pA3pЁrFω'"z]%AF<CE2Eif{>s =ϽQ0o8C!9ݐ^*!rsZ. K+58dK#ѯck$RX5A7ފH  >#{W7q_oٚ\x_6V&/Lmh fIPfZѭ@@p z ;XP ׆xӼπK۱;w(1,Q_rj+jÙzϟ %>K~B 8.=g_6ΙPbk,-FlRO;~#_;rؿ)w $UR/A$bگWIfK悼aX8sm͋:4`@/ytUPBe*7ڌwB͌2@TRT&M!- ˴B4c/_kr=~E g`IGEV4ώfgY} U1Z,Ʀ*ݮ 7-y!9`m6珎2N3-{\\팳*xZo;= S羞5մ*~q}1{tN,Y,4ՙR{˂ys}@$(mva9#6R )(# -L0\/?4e}7D\\-ܒ $)6tBHHQ)yYG};FqqRLuˢL%EU b0>Nmav;7r?`z )#NKhm:K։_NZXL{usƅ#y@ܲ63mcHOJEH؈`Xy 8U J/EZZrcfEKHՁg6$<߄{f12+iu'E:i%W:`rv"\?'LXD41d/-m) Nt8mjDPے7E/ 4 !d̹$߆5ݐYBHxC=P |9w?H@j>kheyMB :uNV|tG8Vsa0Uܣm5T=BL&s& ӻ#`=*f{4QZQmS'vCba+&:ɋq ӬUWy=g? vw  8k Xw9I"$6l XS+`8W MVAC]<"hn qI>M*}B>8.P0#E嗲.!Pu#jx;RXYzQMb!H+ S'騮Ƣ=DY: C mCO=OMO\x5~|7H1$QO^x_Xߊ7Mv 07kʜ̪pP \40g)$ 77%G<.UOL U4IL\+C\;MfGKƆo>;) ¤z< h[ |YV]ŀ$V18!jk!F0fS. F`o(|LXTOKN[ԐPaۨjg]ϥe ie)U|'@q''Fvf L ’" 789;b߽&nT^ @A̦1 ||Oܚ@,LȆ+&fmku^( ; Rh9yGfwh-*(nF\A]Zj֣4?(+H\0=o;Vtqj[&^vYC %SRn|ja:"0OM)]S)no&lz9z> c`Į Sg-N˄Ofc1=rFW}av.M#,+u'f?T |J Er=^r$bOub'pM7ihu (/m\K|8($A[^XS'*?bn!aW 7\O[-!@uE*T<m0g'}Yڂ&Foi{րs#=ZDAU$m3m2.kHCݼ` R-X(rd[ufzAj3GbV0_|ˤTjpfnQg8HEz.&YdD>FV %mƚEcqPc"{S$LfW($Bi'HBݓ y8 q",#Rk[~P"tѸ~&&T:\BTΊ&ZwJщp'Bc#:XAn C^0/L2 : {Z+-Zo"\NJ.Sq+ޅ'ZJ%^dV}-!mu[df)AK"!Ҧ8+Ё>ΰG ugc%.jwk@=.Epj܆*QXoRY}&ֿc KJ/Tߋl:d8DjGy f/*:P~ԣ;B θu P>ڭyb|27 &o|kWF"-\._xK7H6>8)q&*\^bBmWƉ,|ҊV aL6Ge>h.롂>dRY=˓|OFI߆S2Q1JéSy)~%u|6ŀɷAJ/.Q?wr%$7Hm _Y-fC,.ـ Ոp : u5Z4LdE]W Wvp[/[aR:4AW8, cfn؇eG]@V+#ʀGg"(C 8y>ݻQkj NIp=\@Lz@uY$b[قiQ- @(݀5BbD|dM8sTZE|\+ŸQ ӑ>7yθ}FQ7֙JufϵЦȪEIc{B&d~c{w<?Z4j%:rywlF( ;َwF B '*40c;VAxѼpO):?+HQۚ 3a-[$cJ ּY#f`"bmN?Ǩ%y ^Vi sU/>KW} gy4R[Eh=4S t;u`0 H{l+r9J5u-tֆokbqEI/qO3:"e?@D;}{&SzGytw)ȇ7 4AM>v;BSb;x[dԺ0bGnJ٪z7T C0T|P0E̺F tGo]gj&S6<ڰG8]"msX \$q󀘨R,}/}烛H4RY?7oB³.yS?ϕn^Q|m[b ۭ #pDZrMM{`lF_n,`R1^ps* ܝnR> =}9~Dq sLi.X6qTMj}*cmlTHo|h60_;a f K"QIk޵Oާ:~bT]ƭl`6p?9:Q+IY;Uy*6|Ao<4LTUG0~6ilJoɔ]2zB^#v$SW25Ύ9xTFTu(\.\֓#r0!zYCg=,wP矈7xG&؀c vh{N=JVg̼3 Ls߬7Ӥ3RG ?J?#պLMuD2Wweg\3J=hIdjEg&aK8\IeT]hɲf"4Y5*.=z-0.4E V#7[h*X/|[wRMQrGUj pJ/oUЏhDS]$?W3Q7VJQaSQ*%QE?~S[CSok{zdm;LN(B,x) :,H~*Y^OHm^ lF&,m4[&mv">r;ϲ:4m+4 Q._؉soC CrH\0]p_\};.n7 ҊqXgCBl`!J}ińFƀXnP?l2,N+^T@~ ܓPJr\a:`b]6eTUnGh+Y (,v2zK  mlbkwkv0XPOZPjLn7}k1aj.E@] S/D:/+M?A͒O&>X:Fe3X0jĶXUEE/Z^b¢>ҥe )NuD1= 2 ʧǶˤYzӆH, !lB 5{/_<[ċU X@8U^ˡ3 ǂ\\p tQJtG%2i;.>u@É ZBc46Su+̬ CnUθ"[e0izp!<2iaStz33bf\Ii&y@o[Z`N>;j]S%?\)?@Uf%)Bs0zPZ]D3dn@?6n;-'fLGc-'"D")8lƾs.pԮ̏b!Z1Wl{ͮȎ6zZklzCmQv6B}s#l{b15ÄAwՃK 3A<{oY zwLFE55ᗩ&`Ԥԛ{(MR?P':AL'Pvyqoşsݧ 0fs`~P ~ -@TkQ/Z'}x GC)/$ڂ#m zɒ,Rƿipzs]솰 ;qH_߮OT*dQi}ۓw/V%V`?<7dl^ ~ dEO RQgBtsI#|.bՈ3d|M95~N4sQ?XxGiE šAH*+/(*!AU)&-䵝U߳7/qJM#"CCu^_ʹ\o@Pɸt«s$ Pg060MRzPE+2,uv^#r2.cwK 9A۱)+q?c*7E0ٗ"Ur|:mHcY1Jbw#eӀ D1s6ډ/Jv X:i߈R5=тz(n _#CC&Al."\b! \\_{"==OU(:p0̡V _ֲI1=A'0{lyTr FD'`:oPկR=hbbu;k-Ƌ᳆t&Q4{-YDu?;T{dDFa [L7p5aQg@8\pMeWb]+2RI%xw HBցD1ItuTQ7 IT_/?c7//lڂ͌rMgӠkOiqY蔪#4i&WlLPM;I`V?*BvC_9B5f΀I%e}s{'֖!"rQ|ŒcecS0W*:[qpޅ\j)@^4*߫ 5QRR>$52-}k = A˟ +8r5"L|C@FHz|GVH)  F oSPNze?۠nT P13nGPn}Ob"8 =O`cv"1L!m|N#vΰ'͟3n*skzV\{{<`$$"`(K_u؂%{A*$g0lU| ݬ8f*E\- V8ID޲ȋ"w, V{D-3=pA;Nja,M+%eiWdZx~c,%u ÞBH.V[=) m4ā<+XLiNEL`Qr`X\>6BZcŽ*𰯵SwP!/PFh3av_ѻe`^u˲M9;`82 @kb?7n{> vIGHOp-MTd):Pj ce_w҉ 7#O# 4Qo+VPH?Kʥ(3(s xQ=D{U41ƙ5Ҳp% _$5A-l2l7q>$RnzQۘT ~:qO#fkRL7_٬-f5j4%U:dG-ڒibQ?E 5(Vf7ݵFA `kgYtlo&Abw!6|D*h{ ptnu xDjvܜD*)ͤs+đK/Uz”hNHz>C%LZK$`x[gI1T2e)bٛ+7bݭ'O$*|N!n ;;M<ox9W"<|)}B+ *۬]լeGbzbX_03!=+FF]/Y,ktCd2+Ȇʴ4qK+ko Xߦ =V6$Džܫ(? Kmmѯm}+(?^mQj\uuC -$ gBⳘP)*f&=;TNGDɨttWlޞg{`vK(>qg i}?s2ugKE& ;[HEb D*=ں0P!3D4qN-_9Vӡv ݾlp"R"?{~1g|SKP.Tᜱ]9U8(Os ɦf*sh$fdvG3l]Ӭd=ؤS,=w:ɉpzG|ZC_ 2~kczXӁ+d)|nBt8Owy݃($`jFn:_[|jVRu'm'Jpc/+&,d,5lwnR* t&9PDΜ<ȾF,+=Ixx|#i`"xOfu' pӺuO:`m>Ի{oﲻ@*yFIpx  Q"ܮf0<ׅ@WfMkW-9#td29C ֕v=X KVq{[V/}y ;2wkyD "3/(cKdsV㟊[س+zyY-`"b݅bJ%On+sNO+1U+HsnTQ1}àJЮ9Z(St[-Q* }[(mxhh5I8+]à5F?o? CiAMuBbE+#a.T1 ]hc)[K0PkFA&eP;-e, SĂm*3N/sS.LJFZX5E/'""zh)G7H5 =:Y$yɦB }aC/m1fG"#թBG*!W_^3nAVsTLP}1` K`9ay̘"_ҷ62]{ W86WU?A0tQ*ZB^i 2N~KpHtqРx|Xb.*ݒo=4? %Y΍ ݻPw1zhjyӼ4ZB3ݰ9Xl:0I` sIr^Sk`0%aƷ Dh\0 )sUB;蕼_{3 ѥAj]q:vS.? e{WuSr0R j`ke򸎓G h~v$5㽮$ڹ$:V"*-S UꏌYՔWppZő ?6+pneV֗$ M:vS\;Z&P=Lrv E1Ҫhd0T=^ aC{E!UD\n ˤІWվ1/$鳨Fb֩K/3Tŏwd5j[Xv%țjf*u[h~~9^cCUjtci\_( ְw)Y7SY\D5O滿>B_cRJM/+"ݭ WN:'٘`IEmoPRi&6v Xv.332x#^܇ 4SʊtaUX]V@WʓʹmCKjA/s-kkՊ_yе4g;ڥ 9aK.Pw0`qҏ NP I}a򹎅:\hFWieԷLlɆ:E+:8jj|/Ra)qə} u/k*oߒzkڗQ#$v2Q e&_ SpAnhFѥΔHd'KtHHJ"*NBJ [kbG:D~фs2x 4*9Bb`#0SD[:s.4U̗_` d>Q/b)/Uzc^欂+;^ͩۂ:~8ǦЛ!=cd#XhP槆vƾ軰u pYKĽ1>W;6:G|7 9I2TYZu .͖ <@~:Tca]BQ~0xsoNO}Zɱ(]XRSD97ꃇ'X6Uuyc@'JhEn )Kst<I$/;y+#\">lH}A|kg_v뵜g38t`㝺Z`4?,b#syOWZuʯc& ޫqV0X]_ hdf])m Ȱ/Py`,,\:wqlG?i'z:c:߃lLy~ٽca0kD$u67.\3S445C)[gҘ55 ZHeme.7BlvA(. qK,q&~Yg=;~'38wjJ<J2T|ЏIZ~v=-L 9 wzgL̜u^8SЀ&Y`sq.['wTe&[{wYH(OY9 a2$ɐm@(5>Ԧʲ3k;L/, 8(Kva ` r#JM2+gp"dzkZ)o"~iO55}d뱯Ň\VmBڵ+3@'' |bFA@M\GnP`$aq+)~oo0.Y0d>&A4!Wb/HT٢LOh8uc2%ЊK"3lB=."q;We^/ p:S Q%rڤsYe_۶-(e.Am`{-P:S p5;99 d6^vn"E>jɚ6DSB EZQ;Ԥ(xqM( +d%4͗RYu !DI>(cڑӎ CʉL+\:yx\1dDKMἉEA,3bq~A#]1Il8X+:t4G>1>}x,u mk>N`ǧEx "M`,vcٞhށG`iJMû[US _;W*.gtaVŸ fjuYe4 񵚏-7w"6-s ӧ\o@=ᚠu uv5OZDT=đkK1ಷ Xw۬x,;jyJqRM8k?,[*{*Z#hg~k&6z Dl &b$~@]$ܳTk8#\DAl 2~Cq/9LiP  72&2DkQd?A sOWZ(+r&cT& Gh M6vHހvςlu} zg7t!SnR'"Shk] @Lo c \c0EnI~MlBwZh%D-C%vك7~ֈ<d2a_4#$+.F~lؗnxY VN:ѶGɆM[lj=1l*/fZtFE V_}b$R>v4Wj$(lFRf ;77ҩHIO&x7'ۅZrpwSrׯzmw(C:Z^Ec $%s"^\%ee2\͇+ۭ Lg s2큖ׇY0蚹rDnE6ynBy 4a l6'f0[N)w֦Ee$2kSŜffq:|ӯCVLk,QQv-)"R d!I '"]bP0 \T%~3`N yۯC]k]cMOk=0o;?,Adg=޼!vI}`4 d8!7"-Uh67Grx~+LiEq8OQ(e|w ,ʡ+HaV FV"+Kf:P) oI>:W R+O3뾜k+4=Ft?[C`.X1J&y2 Z)-'oFTlN߮ ؕ V P} a],c1<8ꋀYI #7Or- \x)\0I!VbyL ˰+fc%D N%HcQz.-$%!q`APzK St+b+CėKJih҆7N( &w"P9C #rE +#Yfb ==FBz8̍z:3G~08jz"ăz4V1Iϼ˛bZS^ veϭZ??.ٟ ᭦x2Ǽ~" XG*}["^˳E;?ؘM(o++kpJs2m:GO {xfL>a_X$ :{ƽ/֎PkZu$򫟁kp`R{`c],8Je2 H/p]6\cY8;Z _E2.4Ѵ!q%ghJLΟ9LԦ^2eΗUk:Do,zQ|tءm}WlMzS@PC2 *^uaBi ;kGZ3 jgE_UH-~hsɉU]WcD"Ɓ~dM>[EE ļ&|v}ֈ 0TNO<̒5tGO!2FX ]Y<JrCmm$ƾ{(P ;(*6nnbqw~9HϢB:$Dƈu`rS"ŪC2I8 9w:-< @C=5qcp}pAB GLN쯻_I8hiȯB{d9=^CktNb+%='R2.>iigiS>M,YЧk>aWFfېgf4#J :VOXa|JeVerc6XLβ>P{Y3XՈܺjOQv=ៃи o21"ІWfƉ)>G ƛkGv^+_$7TW:' l/TL4"B$?Bh77.!]wFV0Oc !z#:L+j v83s k.uݜ ~d噿y8!CV; W>נLn 4NQ[J5φOUp6W |i\N(u,98G8[ EՇmL :w-t`zj;"qp@Q@JጿzFd1q+ְcsw~sJ3{t s"uqƻ%KE(vh/9.8-*y/3z3uz@:>g5*)ey;v4}tIC͸C/RRβtK2<%BX`M׷;<Y+}MklN mT`fii(P3"-0EhLvg2TeH\ kAE LCG" ٺȷ5NFUOҼ@SC~#? _ /+B,5qobplDzPj JKwGsw P}jW֌g *;/"Fdve%iJ 1<8|氀 irm QW7/mT^׫b更;b>+.(Z0I=H0|[5\UN҇s(lm=vFwo蕘l.+^0#g߀Q#!d8O"RN&rE+!Oht|F9ixfj^TL9"Ό.>vb%'m*كL35{}*KG@2sbxNzlu60PsXd>r9PgIdU5I "5/+"WD|Zݶ'/Z=ƧJ p׏4p=U1Jw6qZ{`fabC:1zf4Hն%bkfx{IiaLO;&,oR;ѠIM Ꭻ[z-i xaI5Ł~dIlRv Xq!/u<2y?Fs+?,&8R<>ߦENXLh+v1]) U3.Wv#2,p:wGٯ1 1̳xIQV_̿;n7P>slLxA65{v;3OxՉŸ֛a8ܕ>/$DM0lZ&-bb_#p8MG"-fz\rm85AggesGݠ|1w2,#)ῶ`]#[.T8_n뒌oL=jZbgX7Y ;4BI{~d1j+ZYZu*c54˫veJ.rE_l^ZM2{8kfu1Q7~ow>'C[WL U 5]gQm-VPi?`rTE$n"'" {qA;)t;[*St'7&?_ =:uB87_tV|TPSE*YYۆC1L۾:&Տ^] :>HvKzdІbU[ Nn^vb%XC[_ke-33H,fʡfF8 :g6<- 7<Ϛ/}Jg}^ jsiJwU;OV[2 chnLyȞ%5Nt+. hx{UJ l:,ww1vLH-^7 g6j(> 6S,a 8TiA-5 ) )X3hww'eq\_zjp?qk @+7wt͇ݧH㫬gJ:/zo5_ oaOƢOyIBm; Ol=Lc"@~ ;1vzK\?kZ:t2ׅn@Li精M0'؄_A/rҨʇ5P0ΞWFP%x%zh\nRt͚E7N/qR}> ѢǓj&`,=7@l$] K ԫcϜG]UtDK 2W H>W1ýS/ڐRHQϣg^~Ng]k2^AkfNGQIT[8@:bʣh\@l4izL ֳ )D\ |[U3hs>jھc+Rr2{lsQ"^la?I `5T]T`HLgUɿpvE;sEmChS/: B[PV[:c5|zԒ Py&|*j.0=δx\|#"WD1 g-O1_ XkZA PY@^$5Y^"q~C u@:-l1tq:H:%@觤-DȉHkPg&Z[BF'+m ^?ƻmwKo6_-+8-qi;p&O/uJV,."ʷB\+0BqpnPs1yB?| 񟗳` UP @N9&??Kq"w/n_$Y0"ךLg,@Xd ]aV2Oa/ MkN!M\ >IK珫<#Vb-T$A]uc|Lng- q٭ԠC5C$~o Zc =`*n#[QyđT$,'!sH#FE%cy<Q\UZ#-³:/o 0#D~j(b;3,P_ r.<; o0 ~= b)/̐h|z,ǩAvRw˽͔ Tnn%v.LDTIX\봞5 ﻂ/1yy^ ՀS7u'l܍{DԺfRlfQ`хLo\h2gf#8JrmJq@ņrK1 i𡘑[HQ{^n4>j^9{"<%i8Y聒EJan)CԘ4=fNG?emu5d+•َ Gx#JBmS[=\F(R$hr2qML8F5͎q8Ȁo=z=cve i)ώjHQ j(<~0TNYJ~Ibk:,D %ʞS" #%4'4_!:D} U{Z l f, Tf=3K )&uтi 0jk9i9eX$+%f O+M9K7#i׎PaSgq+z,X+_qc7W)0쭊#/vV'}F)'FUm" @F)Jg1]֚?g *DѧMhwjGt"4BQ0F+W +_tc{E8׊ء%GJ*u>8 j=`8b-:yZIcs/]${(o+_]"7DiࣄGKvn_]Pe ֢~ꀱ\47g<9YPK:Nb1~e 25!3w%|31LN^wہ:Qh[%|5E* e/:m\\Y3]O C L e% q> eFB=+ ~j@N*D}u&ԶC7OzeV=vZ|`N' H;?[5?E4%{ȚКq+$;i=N?W8$̨zrS~fE<``;t'IQR_L1s5"jn_1A9^M·NcCk|1^G\%ݍ^%Du>Z9winY^}DZڬ J̊]ӫ V4jbM]H a^dd +Kc9nGSjq`7&BJiβ6y+s@s~+-B ޺\BGkf&snnFFqrvZ:488#G,é0щSQtߋ>!~h\Web;[ hV"p^ 5!)H4WFT+NX;anL;bUeGa(o^DM+ճM.eϳiAbd]l5N#ܢKRN"vaecO)=^F äIDq; -HyMZ;ZS8WZ=XlU]1]- "Y]? bYUdܷՕi3 Ҟ})G=y#@AWuByXΌۊJDLOfuVr9~̩; ζ*3(0Z RϡlT A C ) gjptzfުl C0vi1b zPGȸѥ`7yž%6;U,"nݚrA*O$)fړFހ"InBǃ v{!\RF"Ajw!,~L o3ц-S-"}9* ,w3x.SP$#Lbq8@'{]FcBB94Xp׀D{yվ{yӘ{:i6Nĩ5'jbV)m+8xJu:N yxP\>sv Hx!#tMu6KckI1'8=yz6#U4$~j2 vIC{ҭnŇS_JT\ARm8SseD>~ :p AHI)mBޭ~rsFT;쥞x} \V%3wc˼d,Rm$U;+anq(ȡɢL cmZ #!a.F!M%UYxa:\G):Wnjj *>9qp_WF>/c.?TrQs\pv)Sh4(Z {:=:ZVom(釂O$Kb,=`l{Ro] !g6 |6)qCdXRX}h~H&`dpd^#M&ŏZSuFu-|))=#KvJAz hzx)#&P5Bk{`E#yFa p{X n/$F @d윩>K0bFaTHS`@:JWwe&˰@ߘR.+[E)5tAto"e~ף'zq+&b̌!d!IBEEB⚧EaګWۋqmO(35DW`gܫ@cXɊ`dУ3 }tV*qM1gEg[6 P]Wxg:/B J_ȊOqQ[=[؍8SW]&fpܷbvDSO| 6NPd_*6a*qU,(f.(<)aŻ&5[hŴIOqRر+oF_^JZ@njQ\~/)v])L.c+ WjIUCupHE #JhΓK*ǐ&g>plRBw!A' gxh8?꣘Ͷ p;)t0{sOE8F&KM(fqai&'= )%~6L2TxBr/Yz%2hҖexT-Yz^]4Dxj]6On\ zk`Пho"褹_w;7KS@ËJSf؄]6&/bƲUyh+Ax g Mwx$6tTO9S1{-h^yl m!aky=!ǟ_쉠ZXRdbi%V.6j8>NS0r d37ӛfPmk1dݒsQomS. OIp认XpZ⧁ӃvhŬWm "$90kdsg填yNa. 3,>"j x%IIgZDEyQ0#5{@l3勴m8lBd 9Ho_*j6;r(A"@N~7p1TuʻQ;bT5v-.D.hf\DM7t:)6D]+$8r" %|7ӌW"Uu'.'P؂k ]<۔+W$AN7k1έRPpc׏= !:?tϱdkN݅4VʧL,rl#j!v/m%UDdl)}toPiٿ  IYOE1O . $P֕">d=c9<עS,X70ϙhU 1?hE3` J%!*eR2n1> |#n&}sV32ʜw:fDE@ $ɋOL'(͙˜R섹Kg"XWj)mVEuXqrܓG/f[뢃zEПYwF][3BbM0q BHXAF H`)]{5w L3|؄@N8B$$Xg?N~c9/5i4ubr4V?yڛ *APLw:^Md9yOkT2.\9p+1@/qYA{ k/nv>*:3L?eӬ۝ZTzh ؽjbH*u g^6-̬'6lRH7wh鶱\y]|jNRnRn^sU(l/riDxė}MpX8zJ"^Y:ל c6g!s=qR7_ËR,YEQ?|G+hB\_rU~&+FȠ$l[iXBLs $*ꚥ_Xb?Pz4|W@vetOL( fxux5 jĶf(g2=Ie5w4>CՒ6e$=:Ǯ bB0%(F(N3"Gii}&Yԍ¥͞|AExiqv|yT])iIYόG`d?+r 31F6H͞2Ϝ}f0|QFAXR,%x?t*t 4r|{G9 .|>`E9#tfjMڼ y׉՜CD(+joV__,cNOQA*vɉ!@ga()p5ЃCZ?KC}dDOUg&Qhv k%<7"9]t} 6EKz0d=~ A18{Ls؇%s朗wc&ӭ$'psW>i> ?D usi|P9d-bI{(<45ƛ}0۴ 6%QJnhfu L1!q|DZ Cj7VaNsSnkʮc5s84tjƺcu7Z)=e;c=X0 )!Glx$ Gap?c2BGu<ӲvA-C$$(wa?u.%}>v)KY7l\X=TH:?g`}.&H+}͟~mx?$.sN~joZ|oI7Q M\DNaSPJc@~[,ЦسGmCYT,JHȞ*] (0.&`? -al|mD[Hcp~ԑ~p_+S*b7,] ʋh%\PU z LWI/_N[0Eu0;b[$+v86: #XӌIP8wK((|IB/y'RaWl,m/oef# |V8Z a=Z6)2/`!"ƜJ,|j $*zVWbHbMK|x6kՆ#3 zƘE"Wtn1\mEpjTX!{3h{:Mc/1\ϢhKGXw6܇%*;Yjٵۼ%3އ%}wY(//r\#ʈelT(,mZd{' cSw$rWbW2!@ݩ{0O{Ƃv4 CR1ܺ0yhY(S ']te`y"Mp:42]60TƓ(Y?^G/c;"WI49WZ:_ .՟LLj+@B͊Ί孿2ŴbZ Ux}&rx焂vxGhf0ԡ֣LDT=kdЂ0LY >>k^}gi@')!Am !.EϴDK}&rbDND&a#m=hbEn6em᪞W2XQ2߇ջa=7F[xUt/2MYۨjy!$I.k~*Dq[:TP4f 05Zg_KKk޷d=zqt\h-("3gs99'|:.Drv奬Y_]ׯjZL1oqvK%/6J+A1+%@~c*R;NNQ@2pt!di!K>cJz 8w "j-}XvIIS9Fb7xZ=7ݷG. K{xP b [ pWۯԈ#U7WFH;|Hp"k)KjKuc[w;+kwٔ Qޒ  Q%(qG2vT?A & 4 XtpߞmL_2/Lk3g mR|T2Q =! :)X#~53TpFK;=G2GAo5\ q)14i{\5fM&5LYD7KF :Eo? XXFP a[F)2㿞c- 26,֊U`m{X|*ѐk<AL[@aR;"?ԛmoW6I) 5r*"^NG,,[yk˖BwS{+Rg Pc9ފ;6y,% Vja _ Cbk+\ФS[*?v5+u UtQ&!V~bw]+cpS mU)+!cߡxr.p&`es+Hվm*W3HOb&CeAs2CJx蓜aW0^e:=9ۡgyХ4!=s T~ d[ᅊ ym0 F2>kMƈ3ehŏEp"Jhb'Pg2a#) IfwʄCc!7V+2cxL+IUVoBn\ͩ6zn(/Zu<}R! AZv+Ѿ~֗+W\Ĉ,kIy{zx&;C:b"Y2sK`F$If)Sr{[M / #≏3vy7U eRSGKI4#}&)Υ$k#t|#jAk}ҩ&SN뇛'CAa eWGH'J dr٫Hay rvOk4yR莤s%U\HI5 jT_z`6.4>.ks'~X/xmϓH FFa3F덍0U5,Z;L}CmPf@768/ҕ:h. Z&Ɣm{U+.s $bzSLᱬFM/|f] Q .@}0BaG |XLoe~'8#yhGI#5L wS[AjXTێDVo4^!NRGt/ʏn묡 |b6eR=Z6Q~cl-*@~&>E_[88BQJ-b|(?Nxf͔b16;|yS>>'XU٩ق]t \XYNA!#4C!>a8! c;K H5w9豪P!a N؝7C j`zMMR[m*G4/9 Ҷ`YN|5]XL]3 )V熬K! _a%h0Ne2㣺8}ZTCk"'OB#Ny\-ENqA뙾6Ũzܡ G [?u]$̘]1@bxb heHgm(Amv!N;@7H:3qZ\/D+D^(Ңcf1M%"؍2N:CQHL}`l7r5I"&C>?l:lpè03k[B L {lC x=IcDz!i hzVzKrܥj:RDcUf 8c_*lY~ 6x N0!S{Az^;U2)P:_l2+P^c5zbGqsfb%,̩Ygn$O74l^Um6~ up",(ԃЭ*Qz8'fIb83_+NˑgDǔ1f2 _?^l}/ ;2>R>U/:y̥Hߔ4$Dw?yqb[\zކZ>xhgVLG:֊˶jLfnzS! SN(/R]Z:y@fhcSqVN`8ᵚ{-f qV1 ]ܜ ęSe'kq@]S|=\ԭm1ËZI|u3^ֆb?~^~q~Ρ%-?NWNJ,Xģ-s=!T .#lyvCy/Ȓ~tZ;:26@%M:LQcȓ6Ǝ`n6h+WY sD\Y1p0/DJ-Ad>&ܠ-RqRXwOhB~ C@ZAbjHz ~  uQ&בNC|mi%&ӲФ9|EjjϦpq0ящ=ޤ2Ghtkx T:>@PK <=Am@1h`mF=_hcsʩE(Jn)w :>5)3Owd.Woo@GO!ћCnlI3E;d -09.w̜3P1Q.U3k> %) !}~]K5}!qR'%'ZX k/ Py}`A7 =zc"x )' eNt6O"LP ](!B75 oS;FG6GFsi -qƱ)4ZRzhu<%Fk ֍=lԟ'?rPi9atDGlٳ3z^Úx%r 0dw2{r`fŧ\+v^З /}XG,ay4Ͼhf];-qfeZC0 }2=ۅ3U#R -73ƙ%Q() ,2Lz^ p~<І)\J5`p{I[>S~4DH aKjz0W3U@^vq4YRnӴ;:|t!\hO#ƐȷYU"@DQTy6uIeBF,TH,XKiޤbEܿaHAȢof) [AȢN?$F8:c^Db,[+&%qͥ=-2qs~r8!,Tؓ3u 1ά7ic%5lcϞ. JS<L +@䢥Gʃ١6{NF RqM~R+| y\xpx;\AU2/~#Wdі;u.Vl  d֝AaBn$@j8זoH/- 4Jmx9gwX䦣Lyv7:޿1[BvE(A'ۚFK<KϥPx8ӁRTCl)A/oMxJvK<$r'j<2y%Ě(O re is|A?}ƚwn]tYFQDm$ȠUkh2PzB.μRjgW$ Z =V"r)lf" ~O_irmclԑi|r21fr l>I6覃"Vԣ[Gva`jPZ_@xM7 &Y~Dݠ2HxS? ۾CXIaڰpO'$Tc" D`!(6O (G@Žg-TSS$u d w *葏S+ɢEi\x XLDp20() m0!p-ܶ*sؙ~w~mO psʏ7_C]"oܷ\UWu`٩EژkR 2A¼A9+GP{$g6{wA\܋2榲Da7ݮ`=anBrƚ# *2Ow/=AiO[%+ nOS/[zݑDc^qNP%J0~[t( a0cA8ęܟ HI "ur02%hEhn: ,)\ @n1/go8eez^ȬtD>ʅ Tzrcxaej~|ك (u >+'nȉC Ojv2DזEw2k*4,l1>o] rE>'kXKWM0%/S^M;y,߂{;HUY#Ħ;,I}C;S2墳 a`)d ^k&%`JK*,_"LlӸkL (SOa <'EښIOfH /"ynv္,kˁnՕ?Կ +:s#Uٚ6ΠT8RV_PXur>ok8X\^or@%w2en1 &s{'J5!FVnJ NF SHxcݦ r dev^rbV8X/Em+E4E'IpcI}S휨˰C!2>Ok.B?L D : T3ў*Y@'(\ȡm=(h۠ حpRb7l`93zoGGtj=@P^SduR;`?pX%:b _Rra>QݞRօn]('1~PZϦj٧KDV.:x45x8azV\ ydHi?*T{y.d5ncGA#MxzO~ xu' {$ LM"WĮ2(ń'&ԙ2]0n|rk^0O C[P#6ߗ+M}? Cdf^5Fa.ʊaxewXw>C. RA"[q"!.[̾c_q*ޑ ̷ ts]wT|+f]Pq_ca&v{=`%fӖE *)b| 5hv;eEMytStcUAРGnڗ{}vGwz sbxbCo|J.͇!KthgtY\arz0R͑Zzz\QcX$ϻ"*|CZ]B([cp᫽Ϣdoso%mE58Ґ~ A Gvȓ+\о-/]lSl4?AqwQeh:nF k8uHp),ܬ:Uso?`,OipJs@2fD;D[sH("5V^IpGtѕp#T"˸`2r# DXSߔK*4\Ѵ]Qȝ`A$=ZrjQj=k_7F+xv`:q93^+>cwrwbؐu`ԾjŒF;7M7;jFN(3)qPƫv_yм5]\L,U#W-I79@4_B,hei| 7e^"́N EuVǒ:{ 31,7^:27`[M8 E~I[ eIÖ6\+& ގf,C{D݄ւQ0׉$@f4)ŅS,bB?nd_j?,UI.kj{Pb'cP*C Q&:£tjomr^(HKpڨ,xX̳@{>~^FZE.5Dw'G$)OB^L }ˮ-QPaK/0rF);7y?v/@ hq[fɗL#X#Y# n4xx?"ԨwN!, YвLMQx ղہ@ DrCA󩮝Uzϳ *D/y S"{re+m*DNU5D%1GDT폀nŗT!|.WLM M{bxec[},jxtRfb@&lq|=ٹH=.d$,ľ*9 ^@~X0m[ӱɚyg}IӴyNhXwcY>8 jvH%j6 ww7EjJ =. FB }ZTNY_ì+\=e5ʠp?GoJFMjBFTh< T=Ukސ{}SZI7TIy@y O 0ym}COdx~)3Ey2r0 ŤmR;D')YOmU`wYrEq>EZ5a[d` [2}AͽVE_v}?sܝ[>gTm82R̯CQoV}JYݥU#..4[8 ; DQe/@LїBC5ĸF\YLI]`%4HJ↝ڗ/w)NyHX@ pԳ*)A'hm'䟢xAf:/ITlUS\ A6E/qPÙO˂L_/ AsO y:ǰ)_$yLα_aU&ԋe9Ye`D/qU"3IS-O#4;*Ǔ>} iE _ͭ2IL] ?}~wU3Dx}5 lb*."Qں[9&n') 9Kp9=dc/QƖz1c^UY uz t"cS]f#W))1ac2= N -q(Y1JI#ӏ3'CԞڎ5zѱO0=5AT<-YC yCo\S"@Be̸D9J: )43[ X[Fr Ao^;!:Ԉj/A4J B6FI},s!lB #}T)|0R ^,Ge 5 Wյ)ĐS|[&15% Vu{ǩ/Qɵn (TI3] L>a V1q-IB*+dvmDȞWٞ2"Ys|AƢ2Ioѽb4xVyk!Ljih[9Wdk`j~1;ă~*Fu?J LZagfP'._A$%nu 0s,l5%tJBf!,KeU3my7{j !"'3F#Xlz W }T'ks@B!mf5 6榮EMD!I8pD^1--! gCgvӅUSԆ!c$< p3{f:tC*5ꊞ82VJ 57O"fpQ*6wElZ:C@+w\kވi܈R? ]X~&Nt0)96ff[4P= Z VjBZz$kT9&-\Y05ק8CUU9au)7&o$ִŸ0y5QD%83V潛Ta;%BUwdƪdELQm [򥪺"8.hTܛPTsC)8b_«$ ;Yk6NDm]7&"8P\Yߋ)m+ma'\ _>ktv;kr5 )#\Ӹ&+'LR5ͦ} ^e|"AqBp0#haW'@dLܢv@-מ!]|0cTw.c"ۥoO兊s D= SB{`Nʃan5G ɶ IoS䓔M3MJ/KD~_` xLqr)K!N82 Db!7v{xer=AafYկF ^n7d=Qb8-axy>*yMEommS#;SN@8GK>[)H$x :,NRO$NqI9w'!D9; :b0Uv}*u޼:t衵VL\ fwr4S0d hNty8ls!+am/ xv%ض<tx+7lV~Q#h3o۲_/.I^9r)Q }mICވQQ>yZ埇 J/ cG4^=WG39vZriY)A']Pc] *i9߁{>@w|V.`_U X4}FWf6G}/VVVl `Ϸ;9bG(:*I`ݻc ۪Aԫ gk:F>j (gm}Hg_ݤXC76DVkqTz߳<+Ŕ6,bWXwa,3\~n[̀cs7j Í"xeDb ~cuh^yxkeyqD(ajt7/Y5p{o>BK/ ؋lIL{g.X9&RDw 9Wvn*`<|ASu(Ja˱P ىnH|SE (syk߷.H$ֵ!{4 z·h8i1M^%HTG%׭E+L]N{);. 譍qeIM[LҠ0x]!6Ff֋]ۻ^iDIsrJڳ #~WJg@qKٺUvycjS5,o XVٌqR6= β}9ȩRս,ZGgLGV4,Ow*?;@ ]^%]1_ÜyWӳ!F 3p=INz4v0G!j-HG,TNGY) o9:6'S~2Ik$vT 4=i>Ό B9?عY/O`w\5Jv̳u3ڜb{L!~s]U{2dQÎ7sTЯo2ZҹInF{ _܉d1(l32oN~xoZͩ fk)ybG*y\b1`}3V Ҍ AHmDXho8~n䶶|YAlM1~Pd Y[#~`%@7O^M\z|%=<֤Zp) LVt jNF#0ۤ?͡-NP9.EM*4j-.^5v9ol ef`DGp1%tlʾ<(^Ӽo*V¸4̵zAqUt7j\6IvuCRv䭳6O5<@]xSchnz:JЈr14D/ڂ"T d<;q> S؅ W_Q,ŃФ;pvXrB`ʪ)}r樝":L@\1& Z4 c#{ӄA8GgF!ݝ[8[T2GIqw~6~%=Xѻ_q:`ɧ[:uJ;<3RCsW/>0H\,/%BJV ,M 'qjr"ف —ݠoS+YTMG `8.E7`/~7heN}\ 0XY択i2^ x4Ή>Aܤ ӏB~Qg8A&2!mIľ,q ;)"o.8^ []*wЁoZz; ~P`-*P!*Y!Xck:~Eo+ I sR*#c_#Zmg(RRq*z}]e!̹U,ǻPlT R f$؉fSR\]Hћ\o<< 0K PqcΠ? $[7K 4愾h[hlb/.SM98k.=l+k{ ;TR60)XՇYxlVN g"Zrx[>ڝIۯ;VA̶sv0xY.&w({hAbW;Ot7.ݸ7M||u{s4ucM~ڠH:CsF=w sp(} 1ݼ -2y8eT%)#AP  9~.H# ;o QD KlgzD15ίߌn=J[xyhGqc`p/M̃Q}7ZG(舶@@ +BL$'{)qz1A¿,U= M ׂ="W>PͳReW .q =}_2?)y}Cu?U!oW|Ӡ)QZ-FYώdDσwIBo05!$#D6:JݪD5@²doω&vD[KFm30Ugo hօ\V'2WwW'VV:S9H)rZs(Y Ď]n6hc~^80}L﫟3jcR3(=Gej;͐W[710/$GMCN$cp>Geo/HdVh09gf/ƮVn 7TSse@phJ֐ WS]v^*??8Q{ȘVw"}mj#~/*kOi'lBLԽP3F1LfXhf8Kc~Q~/p0yd `{< )1%fiqo CSlq̮)"e0VD.΅ $>'pGr:G2햎 ׎01.;s8;jƘiXEvpʋR(AC;:Sy)6B+5M+=y! 7F&Hn]o h %ZAC`;|聆1a>?2K4l)-u"J&kБ9ܬ66aytJ[N~֍FbCXebQ`I?>(! WDOe4"^AG1|31nkCSO`*>Ju;щAOhk'Kka%[V_+ AncGG OSQc=QuJ]Tk:⧏ % d5=M#i1qBt٧?K^h"tkZ+Jd0ih9`H`X\rQw\ Oz<߆6a[@%Hxb*&Y?+VUy l}3 :1>`*ƣ׭} +;8eaؙ}IBoR Y&lQ4 i7zb:!@ Ƅo4a]"kPے=$r'x IYeW~ Un'ufo\crNM)Y3\ߺ{in3K,үsZ-[twЈHdPm1:(ADq)j F̈^!4OsYMԪ hG˚ެiP'㎉K%Q|>mT#Vp.o`l]3TFڮ7Tm_>a_Wm븱%^0zPҲ交 1ϣQ0lkұI|/_.Q~hZܵQ:[q)MKjyx7TsQķIX8串x@PX~(Ch_p ¾^-S-hYhT./[+ JNkjHPyZ[춐~Bi]!]C\*ط,f=-(@@Vmk[g]AޏFJ]g⹙qa`>?{>GN{+*!b"\W'=_VJQ^!/ D46{t>0ɱg%l@tȮ\d`}\Md+Rp9`=_C˗ң ϊ<" a. A)&d &mvu]bLOo(vVŬ,-#S!O%GNK@wO63gPn Q~^GS0rՀ(Et{`s6 T40La7dU_u)F!+e몱~Q{x7}LU $hn}ť,8aނ~¯Q3=#!֪ eY$M(s@.F>ڙ+Vyid>,9WĘC D?Rx`n lSpuщ/G>Slěj&XDE3Q[D~?ĠH=f>5ehMM(1zm,B݄Ă}# v^JaIH]7T?3yfSU'$AjxuA!cxO?iP 6pZnQwgmcghb#NAZAqG:j%%p$%hV.@-ˢ5he(_Hpu#+ilXbU2 G}Mxܜ)t w/qwŴD@J⦪t9L>2Rս}io%DH>C`vu?<#&7ii8A0vڠLn;A|;i)!~~p=屝[^53/x/AW8S0^lD(ztCPN &Opa0jtˡQ ULF濉ꊡFjDDeD練 p24ezh( U K_EX^y94\Gy&Z5׌{V2"g5wЋW0ȣ?ij=]ou5eWwO㺚@L۾d?gH;gSh;a*SB2p~m9 ǵgM{SQ !v~UW;s[mu.L, =]oނDy;^)}bY)C\_E mfBK ׅiS,`׏+@"9 6CA|"N]4m •DB,\ Ml/H:0/@Ti`b~Kzd#ߘE\jv17d/'#[i'=X$ȋ~~aQ] uZGZЊ@RW@&;)WG>KdO9)@RtZ\9P3ț$ *ðR0dÃߵ+\7%cZi)4 -OP$'a nV8^0\rOݜH<Ί+IQo,)@>7%2AOM=84Ē@s*A- PtN^Li@k]Fz4u_Nܖ +dA2-? vHY7qH.sSЛ ˘/lL A>< 9JR KJq??R1*Cp̷aX1?l/}>WL60-k*ʜV+) fjb:;<+e::!lŲTo4M?Krt#ffw\Fs6;9@cB_Rg8BTe-gltNxlLFv/CДdW tbI>AG 5VЋpfߏŶ1`gZnF޵J>P1q7|*o1baW?: ido,n(ɞu'.y2,@.G:%8lJC݇%)/F.Ï)0_BD妛q[,:!Q0-m2;H?^8ߙ17=;2ҵpFҥN_ aS .ͭ`J:$:/*=|Ek=xFS_Rx*ga0tY0Z"]ďeb>3ɭCgIb} z)ͮ,]Cx,bo"ZF)Ga@7Rmy.cO ܰƄǒ M|&X$q9i(O&&Rl#NAثj%j5Zljc^tQ}PScuۦ0lqmQ #Lس쀠Qf‘Ťfz)1 XNN3z6N{!RJD*R a4t?C]`*k3z_\"k@NUDA/ mMe|Ml{4/QEi%tm{Q>Z Dwf-3rJw[ѫ=o,-Qx k׋/2cɮ*jYNΐZKq06+8&pŔouq,U?1k> ӆ3V5m 19r{9KT8~*lIWuQu)٬ AދFrJmו+J^>i׻!6 TO$`JYX.\nc1F%%M94+}[1PQz 19%״qlbvDO):FÊ^n\k-xt%U]q;e3U>i fN,*x䊤º8v<`3d o/=|}#MinGeJs8%+pHycPMh߿B6)&0HJ&!;.t̳αS-#zȬMPPr6Bl)$9M‰yMifvarS,4 `_ecI=\]IS*+/)=e| FT$WAjFUI}V[.h*ŹtS𛦳[\QEu+djvo+z9Sd2 ;Ds sVqLդo/v3CVgvSDq߻`({cp( ɟͪ%Zf.8F3,^y궀b19]>cF Oݏ3)8PK$-XwM\W2lx= dGtOhWʲ-Q`~ 1BMƿCq%v8pKu-kqȖf+d3s@/o믊Ld4:LrUHAO~;.Oa=j1Q)P- zٚb5α)Q+LX4p_w`gr/hIqݵhиGNE[V F&X|&?f;Ol\gbgW$T{*u MYi\Z~E\ݿƒd5Bn)o0D[@.x5%o>z2HO\FE=/o~~bL<$I)֫f%eT^\?N-y[ jєI6{C%fհ"_&cK~Vi ߲^kH{F!5olMzJˮ!WB2:ja=¯i&!nBiPѶߐOR|}d`JGd6hcqGOOC [cqޡt#2W"O2B#h@S@d˳P P3Gtr17ı#1ϭ&ҐyZq1J) i5vY_/ ²?þRBU ԫ`3~g}N=OsR?Ypؚ鞙G[\n92'@]H6z? l]r: jp Hn K }@dwBW}71HHGaȨ/,:J,!&Ÿ:m TN"'0(NOs ok;,A{F LN;I׮mRl{Y1n򈦸IJ7|*fM/Anh7#$w!^䥼g٘PS rrKW-Rpy- '딉_l_,uS4n* x2e oݹhg^ QZbX hF,݉':JSjY $k^H/v6휙7Vn-U4*Zʭ2LvPL/) [o6z|{m>܎q4yUԎ#VtM@zaFarDja/6jHAinW+Sg[֨`,ô`z [kτJ5/Y'Xͺ6DP++3M,CaU;;`oCZ0IQt=%UGd)^͈. ?Ge#M?dr#B~™E :&Q{ fY NHEqy XPK/]&=Y!Ey& }FK۹?pFsвMur ͟;Ҷ}:T,`%Ԙ+ő,Hcc7@լ^a)QVa nntwqa<(E14 p_S)|Řz|tO5>!&i~1nF˿~ÿ{:Sk"yJ$c#k%fx<$&l4vF%-eW Wh~Vsdme*5NΦDz |=|5btb vtAaz{5+CQG8pU8WyYqA^9Y'\g+t{fyI0G2zoZ8 'lXU _i1d,^D^f?ֈ{VKÓN:B/i+SQ  Ұ*և%v:9?B}}g!@c{WTKٜ' e?xZeXDh+YTx.独W&z?-LӉ:N[y(IXDęT 9zOcl'%ϛ\-/~oS )"]0ܰq~N%[֩4,G"y! 5hͲu..BEIb~!1(69t ȫSad8Y_8rh$NU*fS. Oh(E >ofaw6<J١I,yȫgoJTYqTXF;$Q큷EG\VN4t|@P8֊F2ܖ*:reqlo]3C^wuE$+bբW}jx!2)?r'gOWz!XG7͝K~\4;mSpjp\Fqp Ŗs]q,QAt޼>Py$K;lڼ9eWcc=Cl_^qps'"pw`7k>1t3  U6ۭ0^TPQQVarjP=>(iU ]JGy =Ou樖;|j\ΧMuNTr!/g=" >Ňc|8N1Z.BBb4Tvߺ&֠[S{gm2P h pE@-f,F,Kх&$k[h "T2߮-B}㵞ʪb/Iٵ1g|fqp*dt2UFIۉ *nl/A"xM>adp ѯLCy~6.G,mY}FV +dq)o_-odaBb=v' VwTUWA@db!Jc `lBq2PʊhɍDX{V'jkنƤk6&@mF9xqT`m7P3T}5Z7{-nm ڪy Yml wbF>h j]Fy||z`Du k|_uyW%7$ȩ0/*ߪYN0i7|!1W*JyGu!Qf Tf9 =z׍ʊJ]jcR3B67V1]!"j.7i'Af{mH!Yy5<:Tsϗ`~6(Bp:\̶S+|eƧl6.X?\:_̎\[5#}֬/UHKNa>L"ԱpTo@& &%~Oǿ)= vGA{\y1N:v<%B٢jo)E@'w8:BzUr@yj쏟ۻ~/I sɡK@{Uuy|fWPh/:%)bnSntvXa}ܕĪʇeԪ$K?!wSi>sޭ Ȅ3Y{p1̛b@6[2ʔk?dJ4j{s;B 8u$6K( ˿Fb2yFfYv(BŬ K0plhNpPq̢uG>L*Gx_ڃKuVKzZo Xũ&Wo8QH@:=4#SG f?҅tzGϣ$c#"MnշPs*Eskq;> I" q%$4K/@[jz5m@K+ !QFAMdn](%~-xoMH=:`Te1ztRtzG֧1$ \βP9Z/_$qm c:Da8|@sb'wr&v; |nQ T.k+2r gO ^+)@ƲZhvnRK@Vr,[e'$$|\3K8N#>%=AC08hĘ7i#K^H v*z0 r--D֌࡙uÝK;{3 KME1 |~yI88 0_`TXeQYI=ANjBq_T<6W{?fbqtjJxz,^PKM)HlDaTdb j΋9032K9)nccRJG|n@ 51%I[+BVb=D nǾ:J޸foBOnݻJ{c5"kq3OV0 کhYn!`:R3dWcʷyHe= hU 4ĔU[gv$ݥEYr (EҔ<Bb<\أɹ;CX,7Kz|XjNlsgr=?^MCdᑽI$t Z+Ƙr+V%Ndz#'G9!npmZjs;͡&;&D fpd{#IPZ?(P{Td~WÃ?wf_i'_PRAukl:g ښfל)n|Zx$;NZ?@61 b؃Ӝn0 {̋1ޣxyBn_ $o<bҿ>L)S|ĚSN"~@a!Z ֜_6>*s;ɶ0$)xM },kd4! )K-%u{tv &jL1d)nMk7TN:lT,=H;R W٢-cvNf|MR{"j8JsAWF[*HО[NIH B(@GM 1G4mxiZ˄8z6\+gb7[,uk  QqRNjmԉgғl.G5삞*{ nfMGE]yVpiiJt;a^Ž\V-љbR(|9gfolWqar)?arn_ Dך-5>6@Z jDM޾'r ˋ r|,IIRHg,33ǤB('m?JΑymk+rr&8X\!pl<#eϋҦ)zm9por4JjL v+ځD] $ۢ(,ρr>`dQ90mQ:eB`!l)Չ 385SA[&Q6Og2SxY;>VQ!1}'kSC]iS b$>*E0 citaT(q[ /jT8c,C m!: |+J1]m@ѢhsxPGBa^[{M:u^`>RGs 2#f^Wl8׺pN,&ҮMAF"|^{pM+.?ٵV[`keHַۋkap4[K@Dl|;x5υ BLFi$JYQ=|2yl7LglGѧuzϴr#oB[V͇Ti4+hC0\ mc)UDOeHh$_d ]x)ˢRQ_ј̿z`o ػ4.Oo06@\9L"]3Hq@>@7S˲*QK%(t-ad/OY~&kK& <&DYRɼ':Q4H$`Dw[G:zRR#u(ѴbQ 7ew:9יQW EIv 9r)Q/wZzO"jz;!lnX=at^=5gY܄~|~)ʱ#}œa/~!!medw.R:N!r=Rjv\}@ԍа" 4HYD>Jr ?x?,Pcg@$)1ȅQ00^=Z ˒UH$s(6e,+ pOD8‘w;u,1@Z}h@ D spor@!?u̧ qJNl#z?]tf#3O$(qk% 9Ƀ H{>;Uڂ_ ?Oi[7s|)N=tLwT3hzl-jڝJ [RB3Z-zR*kW2C3TDukGW {6.hmwI.2c:k?x3_xc#\[˥ḅGXhʔ+ŒI[&.f?W4>^ #餴azLZC ai%n}gp-ʦ/uV3*&`8u` vJ%wD*TrDrNY "MBÎ*@XDq0aO3[I߆k lb8m g"_^!Ek1VWЁ1XQ``jb6ET~kIf;_ D̬qx~WU5 .' wk`vPyL8rC~ UOh};{L;Q]3yLj "i ɛ%ڊtb+wB b _ )9)Ѿh;V fXx4X䀉r`'C6]C d }pГgwI18v6B[h_XOlSs"/HcI˛ppaZc]&a/QoZ/mr.a(gpERb)} ."}|\_(A02,z,ˇAɉ+ZዪX}*ْQm +|ϤBk'FģytiF(pliV.|GѮ& No?cj*f@<*[-.%e;H [ enYJv .9ʽyuOsR^Vҥ}V?`P#jlD6{hSeiLIR9ݥamKWA&Ӈ[ )ɩTU㸇: ?}'wpu "/11yr9Go~XYP(n`oclrʠ(!np9ם ^4wi80VO#M_h\WL'>\[0ech1uO$CDc:Gį'p:OvR.eEG4rK{>%;mO#(\ g&7/]WTcM0R52 ދzdp֋"[)QU~Sofg[/ Q[pO^ng71l̿ОG$7V}Pom^0 Տ1bPw(CZ4@P#ȷvTYD HS~>:ppԨ90g3crκ=ù6Xlcbx|g vJ1"C[E$]O3mn*גoV1SVhl=*/|$#2д]fMCKSK-'3A*n2L0}V~H4¸J6/Q]]vjOT|O3Z "d o,ۛe'f4:l@*Z7 xU`IՂeo_0S3nMa7r h>*ET4>#toZ4tO=[)j,xbxN ߋ_NqzTnG5fރPo ޼<.O/Y_{ګgxmhM֏ۮ䪍 c82⧋2nݩ,`L(3Q笷jNz~^ IOL/) 4^a"isҕe!bMn$H? UK2V%FVaѧJ  $yY܀Sxs4cI&|r}?3n^ɃJ+@c&D9L^7 yϯʫu z f y:w%^Ǧs S`zYAS3oe +!g|}Ѐʨ*hCuWX[- M J wN]5Ss*v/8;1 +FwyjrHy|C$[:#|FϾT,6OW3jYsf]`MMfn [ϯ$DsIUV]rAh K 1lڦyĉՇ70lOGTm{\ ,@c~Tz|δvwyFT2YNiXn*hKVLfs$vb@b)W6}X:?a羖Gg"6@+_jxx<>-rbYo"/*%U=VTX+lG3<}OKQRobۢjJ[^–{qM-Gij 60Z(d{@ѹ4(sKZ"`aյhs1GT"(y'shse|(P=\C6cGu?͍ Y{nhVuH퀑蜩F/C&k nVP,%!3vc)_Cr ~^.9z6lĖxǓD|j̴Ij̒c 8]o;xΩD@ם;#̛:ȊOv7HZ$]{\f/b)z>fҍCJ_V^Ztu4Qlr\T2i|{!5 < (tH5o 9M|ɣ+q{X5}U!~N2̍p:UO]JbENnw2&qxFLL-M3y&f5#UN^i7֧W0r4wI\/ui|Tz$J>F^pԓlFz$ۃ`\)d8lD Ҷ%e?v V8[c-v`/9cCh,@sHJjړ&"4t{i|?iٽ$$7T2m"amoR,)ٿK'ZcyLRAmP":,n H ÀR45|]Szc8Qd ɯ6qvÊqZ< Ȉ7@ I!l~11ڗ9V U"/̪oEvسW5{[gGj=wΕ{lnXϝn• 4i&hFvw@_LIiV8?Xޚ'Q]h\E֗8R _bTb*;/fqۘ^r$$}Oe'A?luRQ0]}LyYV1j17{⤏h_-ڑpU4`5½9 CVA4pB_dDe&,5J[#[a:'#7ѵ] \V!Ρƪ#;pړۧC5y)oXc_^+x7ׄ_ 0O4ИY[> L(Dc) kSGf1uϗXkI#q,]3gݕ']ԯ*Dh2fz?i۷8 7:^y3 uVkym@sTL4D.fb`}Nt#ݰaI<~͆*R(1K!hA;e IfԄa7p6K/eNwcy L\#["|c&zh/Fܒf vn3̈́05ܗA'p*]JMq/; EyWlI7G5K\9fl%`ǠD,S6QS e7Dfp`%kdj>CR۸Lcxcp.AVM*(JDQ(,<8Iʵ54XQ5%X2X?'W(4 Oray9ZCB߈,LMO}Y0,Z/_Q?aO>sjb*dK N"PP,%jһ:Jqk,5'Yޞs9+bO-B$Im ?s-{bO ^֫H08T/{AiJP9㥬SUGm: F!)+ilPK^>c6BOc|dXLz׃0$6 A8Yh= Lsy^XRHz>s: =Bx6iwsV|[af7 OP?ڪ ͬ穣6 c4Z&A&~=,|%$Ԏ( ҥ{tBN dƢ~:" )*ʖڦR3,w=4ywH +-lQ[|T"d [n`bۥK}gcBh{^jhpF4a.ԟ_' ]Z8VL%gD.~uH_Pr @_YT$ǧtCWn#(Kz̲{/QhZJ fLM$ۧIX/IVɳM" .>:hdmk3iJ|:&|{n3^c0ҝ wx'+~xc8uԛG5'à͔ j^u~-9W/&,ՓL2gp~YͭZ9|LܤcwŭcE@y[)&ҿᒔ(*Q2"ӓws }z^noxh4d5@.1 d_qz>e,`g2_%\?YɍiVzG><+W4MD8POy.9(ϳn $>k!?㈂V<_75 Fs,:_e;J7ieW2k0".##ZUWr pN`M<LF!:HJs\OIeɄ7OJO.ߌ GnYs'ŏCoߤsrƏs(Y@B[국Oے:<8cg+`":O^DaDo#60BR{4뀾˔RWČ|roTYQ TX=r6P!Po`3Uko78eJA**~5R+"9eW` +2xS1kit_"5rL|{4 g3YyxG 0hk7՜i*6F%fY:X'r#428CD+c{zS[Tc̕3v #zj$=׻W=²!5 {%pޞ[lÚz!#wyvvn$ _ΑC ɑO\캷W> ~+d+eUT)9?42/Lb+70q+-(Eo{ ڱRxA1L^v}tr55Ux6; q%CׇRnNxDs`ƽrM.Yky`iɟ䰳6?abo*YzV`}Yկmo/QĘ-tR V$htgX'H08EJ֠0̏btI/lnp[;>m\A’\g]J+|n_KTJ1gRUU]m]^䙱5GM֜ٴqy*iP+O,"!+Sn-@6oW*L8&%`t‹_xa](~f갧%qlHZ^ XC#-E5m^: )K.sUO"&'9'0!Å 9Z10J:/Kp7FS,aY],{!nUYwK7Vkr/tӰC9k<[Bɓ􀲬mivdoRIkֺg]πѯ P6~@MBpa0~}w]T7aeKL{3.↩C VC7XuFjH:-SA=ra ^ՙǚg7P hA}IVdhUTԽi=˱jxz$\вR QJ0>~r=ϱ pcM=VƓ*eDq5TwRG\($ɢ}Ψwm^ڹORƍf0O½!(@:q?FݍŽ  PN2Qݻ34(*^bT]8ux@H{bGφ>~e8ʉY\A#V[q<*| toSZ BZOɭ[~Ae|aU|rΓhׯ&ˍD2VtJhrRmA6)NEѼLe@.UM5J@,c-LA ~R C*6ۋPա'~Aݬ>kΐɮCVU_E?Qa 9N+L& xֈuS'[qp_bE]8NX*ؚ|ȃ yz}~܏4']Ay^|[!P9l:h)]} !@,AߵsꑙwLhOKȖ[ 2b% 8sxXWMX[@AaI:EL8aٿ=Pc%>ij1V kS~VҰ%uٶ$Pe!,%T=5ﴟy/8**DDB.&hmfӀp::Tq>ػ>lg-M ŷ|2 }{(B|d3֏ͷQf*%p 4!iYq%zjoOÉ\={-?!Wm,Br^dׅ OAG_U9fϟ1]٠rdX`$~7M+}Mc_˝JCxC^k L*4-8&re4Ѓgco) 6"Z5chfNI#d!]=rXg1\*y$qlJwic8rnzxt/\Rްa>*LP!I+^&S|ڦ$37U0=M m蹣z[eafPh{8pjp@q0^+|BW1k;A:QDl s/O[(o7B8ԭ[p$ p9digwi  ABH8kzՅN0YN爤5Bp!zdAf=F*I:1 Ћ,@^~Ge/0m Emab"gdJ}#q<BiAVP]+5jAr{coQi1r7p8WUۼiTSeuz#;^JFє? TC(dgrO|laŠJruCEhqGHA,x`N%3XM UjC'iPok U ?pkJoգ1檀VFZylQ %vI*v`GǏ1dxݴ —-t#~!ۭY؈A:Bt)ؠor B*nQ$q \EdqP()di5iCN:Kw,H\}Djq"{jPuZ^a-x\SxA3@+k~(pSȞ=r2c9ДSB7Ie-miKp\YŔ O鑟Yc4$ nc8ǯ X' )M8 Qn9wZ$V ]qR9 rC:pQ" Y,6BjR:Ih3~ ! "\Q['Ai[1ؙi< 0"+ǵY3;9 [Eg2]&~nڄ~`0~%J,2qC5Oc\:VcnG$ ew074NGXm}fԇk@pɇf'ǿNV<]lteLPczP*Уa[e& -ÓE{<,Iq8r䢔HwcI"V[Cjp\/) ΠU5Ŵ #/#eͩAf'q8HWQ{zC/Ş$wPNn,r(2\WKt}՛cͥ%[uTˏۻ~-p8{K+_.$vy9E;Æ>wgNE QރP(0aLզ>o)5 Jks3qȲn%s%RZ#xꧠQ/r9k;,ȟD{e̐|F0T$rdz?֦q18gfg 1 ~e > Je9u呛wCg] 7+X]H=>;=t@lmg#Y[g6HZ|U.zq(Lel;vǮec?OIQU 5i4M)@3wh†[G\ C#B0\$ڽQՊ#M\@#H$T8ڔ{]˞)\WaΧm?2;cwߕ-2"kJ' 8=;g_ȉ3e0x!f7-S1Wk Iy)S؂~s.YwGѓV k@ձNsO3NP٩|ra_i<(MR%)E !I~MP4@162cYq`IߠUAj& v$E]p'?\WnDAcx몓l-e&,΍[Q.'æ ʗU@R90 ^®;=L9mg%$*J?'6̃V^L'NYAzݙRKa"\a`q c p¨y~Vm qhО؉m re6c qߕ?GJ2ECR}‰y!.pڤP ijL9x)^dD?uA/w_QVʕs@j`]K Ϳ&|6:a._vuXs{v+ً5gSw:OI*//4S c#I+KQW0)i8&Fc}iz ūϔ0!i=M6t;g>ybrNV$ Wx}җ'7Yrɿ5xL,>< II!kun(*x`wʧqlqHnC(j@e! >5fW\q11SφkޫrPm߆?Ɋ5-zs]T^< %IL`^z[!z}\PVT]ޕQS6BBF.S̕B)TջyP̊ymkQ2zIl} !:a'Oxς=""}Sż/b. &`nǫ;FGEksL5@Up%GtK$]J:hEPǒq$ұ\GGn:5-3jNbjĆp%ˏxl?"$$`KdHOFAm/1jr~$ (2k IwO(9'ؔpxS2i qJ$'1p|GcP(Ӵy'tsD5#T,#o\0 h*R$(՝@mBq::$$ 8 ش=Ϋ~Mj U׌oޯ Yǀ,(UTg+̌fAܮjʯ(ޖ!:ʳ4ནŧlR#E:"CL}|=3 x=ћf~IA .p8-ݠ3 )ǜc!>Ul؁\,Q0I[ 0g}đB(zކn2D]ʨXg =玈7S ePS~;Otܬ @hа6TR028̼V6躝PJo壣`|-6 }}{-6AɹP~'ݎ*M%n>i<ģgLXË^2k˲| ^NnCbP)CsD ]bgKҵg40k7+c~HUcyAY^Ktrk8\$Ԕ- Lx.nl@e8z^) 2 ^P3aRˋȴْ5W޻ǵz]Z֫׾k QGia30R\]^`X:pX3RhקtOpo ;ۉ*_?bW9jNtKd>:UrG!o1k|yk~ Y}|=w0J$|`mj :M=2R'C_|SJ,oZ`G+O%7ˣkHIâ~AHN</uOڟ4CֳOu %$Lg!\KLJŢErrR©ωo(g m|쥯 B6RRl ƚ-V$~9B#~{{=y'P?lIc( v/N ѐP?R$zr+BP!hlTހi j߳Ͽ2h1uvEG<bBJ$( @dEQ`~]rBenȶc'y"UZp:մ1d%˹x՜R(?v=;꽷Ѳc\cm)ܐ^@xLvWu53x~(#m~kwoi~ߍ/Eg厁۬eKx6jtύ"!LG]:bK!v>:=o!T-JQtLl7qR(("H)OwTJ&ͬnX^j7E j@{XFޙ0[N Hn̜Gީ%p#7cxeaglh&{6,ː(ꞧrSUŸ~6r70b(N)>Ruf^ ==+"&E0)`j :>"w|!So2|@k&Ih[$yN Ejujy ,ڃLyPܪof.Gs]&a7A3c=c7AiR8bQݙ 溜ӷ;!YKZь]4|D9 t9'j<40>MG\CoV-(4ZEmQl]Q&˽@D"E8LY X.=b-X(k-6Qflp"a] D!WMW`8smu!ŋzIY7FPȨ.GW$2^'@ޕ?= XsAMTrz ̍ԵRb㘭 .Qv)Çwhו$uv& քe7lR('Cn `X֚Nj鉯qgUD`~ QxI 2kCz,> Z> 9=H7sx{X'r!ם:Pu6}EZ>y\ge+sEhk)δ!ֿwʣ\,r5$0~eMmIwlˠVFQ47s9]b;DsI`;U6:]^ x -HTMoG+Y] e%^EJG6z ݔb?u'?]r# { :SՂ<:f ̏mr`+Z<ܷX4M" ^"4}›׬yYʡ>Fu47tuv%9DQ #d^(&:0$LһCRq6Uw%1\O5X=wc- CInNMPU!Hyjy\jEy=!8gCy4iAnxYwZL#.e[&Wo7'>]#6]Pɀ+#6fk ެ{ث*1oJ#+a^"?X|b ]{YGo ;ƃ"^̦2jJ|n fʓnz.WEF jkdK7B Fn1Iחٳ" zRw@u @ :d"@oIb| .%Ⱥ ؞'] ,:Yy(C;a}j:M{D}"[xBtkM+BS2ۖ$J؃K LDo *똥ï1QVx Y>H-2AG/z+O(;P7ւC=ReJU,ʼnjuZ@%U]-9ɒ6LI}`_tCḟ p(A Q@u97dH c_weeg!bf1]NTLYa. d1 ~'uqx Mm  ׌w+mY}G:ެ6\F8z? 2H}}NzIq.Wr:5!?L(l,Zs}GyCp! +~]h, LpCW)eн*[J6(< ,}'9n[:PH8yfX=qRgV,]^aD6vUK0f~bnS 5W.!j!+1fEG|e(W:(AÔE|IXXi@^# mhnJVI\m<2c)^,`VNdv*#n)(OBi7,pܓ;Uan֫rw #.|HL_qV})-V+9yb7덥;cL$t^o*y>#_k+eM k4 YќPru-Gۛ#U<jv" atGɻ\G#)?z S4Zc_݌P5uvہRݼ-MͤZpZXmA Uqi2Ts>5 ; q?}XYd)bou,fT elu>>4T,-Mc{l:./h|pBݑ'JW bQou&&CiahPk4QɺĴ7_EU5DЕӛ1!R,fPvW=(؊[IK@|nmiflR^WaQ:}XG)ʟ1Rݫn}~N e(ytܥؿo/< 3*f7c3QRUZ؞'eFYHah LZ}}%^xGgc$ƽn&ld%ߺV>xo[O :wC]8hdn k*5ymOĖF_d@Hcv{ a-`m~:`K+%l?g2ݺܙݒrk0Ӛ;Yv\Ȝ64TE &g1HfPO*A"(I9 *{@13T@2ehvѲ{*V$e3D+EvX Av?HVgdx9`pؤnE^Ur @C09P+BhC/Wtf@| yK7f|>@2Pa3NBzשI]׻iB$Z N~X ybg:^5DKb4:B8uքa/[H ^.MT1p9ⶾ_ QjmMp|?!qen%ۺqیxP,@GN nr4 '5"lP4V8Wq IJ X fw@&y} ђg n: \chU&Ǐ%B Y OK1Kd:JK%[9Ë́k9ɰi2I4I>Δz(jΝ0Jp-|;^~ItJWFpknW5Q~9vm՟>UT]' |U:ifJt^gq-<':5[Z,V@fQh7{ZkXh|fR㹡APv<:R<+I(SJ8V/_D|1^Mj @6H ˽1F1xiVŤ eMkm3HYjs0G!#m$6RE;K(ԂҴ6&:24z&T:Co;5Ju .kr!q]wIV .Cxq@5;q[jk(9= ^Xc7Ra1 b xpQ+0M0h5( xn:c>:+W2ßB3y×Nӗ*F h_O cwI"^Jr2]|E9vpnVCB;^@\|kFtڿ)}o].pX5| ,-nS2v\17fǨ1htV}n=ë`hH*R2р1<rsWjRC r%Ad}{+=BI餇}{N\h&!Ų ӒeM-^~f;fgnYq:,N64WToq,Ʊ&4bPW瑱c 8@Z7W5D*>=YhN#ytf\ICZ;^%(Qk4'qeWºuwv05䚨6t뀳4Iڻle-3'Lu 6yTt bIO{^>yU(𹞲"8?2#bR<\\po &哇Z3D"< j<[gH `,,U9;Լ!@ᙝW'7<Zn- dV:Mfj2sCꔰsif| *a] ^YiB@z8͜>}YKa?~@TUy9蜖W`Թ=l"aFmC-h<~- g9"h{¼D @!s_FXRwn{F*$'S8i|QTJ.(G.%Z..rV ΁yzE_ZFsm^ =fT> 0~i;'C}9ͧ-2Ğ- X(2>7D ayH8r }N5V! A@JpvW7r?$H8/Z))Gf"7P,CMdEzrkG6fwX:?nLњ:SV8@T's8dn;?2/rx)&9_AGr2"*eVU?}<.=_Dfa?~,6;:I/H>]RLagP~JwS[1~*-G>E]~ٞIS,w 7 )II+GXXD@41M#r8dF6X֛xFS 3}Q#iB!GӧwXd[͖lv8u l>ɉQD)&[P(]tunp[U&|3V݄d'-W)|;5$t;r 7hg9ժ!V:@\r=yUrSK '៊amX@Cf>^8/$JY|YoTDGT^30|[2nr6W)B8UU [6(e*[p@u ͟`h7_%A؆teCPU֧2[d[l6mӓ/%7ݩ >Vr7!7~A0&I YngJ׿~Y ]p ,<, ȅv=SZ=I7{ܛ Hjտv6]. ϥ%j'3/%uO΢9A3}͙)McM=],Vm,89H|[J6zb$ +۸Hn~{񝋌B40ګ%Z~%+6bwByG5aRA Qžli^IRY&Gbs2LTlZWzЖØ,W 3EHxBi~8WsTeY5*i62Gǧ JG*tXtͼ X`e /5}?ڭYɳ ~}MuxXaI6XTriH(Y ǽ ObVEjE9̓[J󰣏/Jki+r&N7_xxJvzKhA|S5 \z9c32mE6LչĬ;8[=ˎtD}6)kYT#ii X ٓĽX#8:Cܕa'FDk=h f!LeCD57kewl:bXW`[4M`nDP'R,WW4-ÔONtE Gw=ym+MSz|,j匒nIՕ nv񂓚K"Xbcd9rgHmE 5Aԙ[QFgԞ ԂX"R6bL*?4Y01amQBۃ]}v07DU_)Mt RJqbdoT~n 4J'#z5X5˂3_# Z@'Ɉ X cjĚ;M*6m`}y-^v)=gHiGrGArěf@T/P}U&kqe2_+q/qjҌ\ =I ۈ*}s.M#Q(J^Y78]AӉ?C綻pC"2S%孙*Rf)P!=L؅,20`H%sp5>); *^Ys7s#oR+ˆҒ"Ef̶%A/7A'[*F+P#pRE\J F6]l\OF! By)}\aN8LgBxO9hWiWͫȂ[<}f~>m<bOWAJ>lR*TbؙD.;'Ȫ˂l(xpLSqOI&P)LMx #?)ڀfMU ΡJP_s,s+~ d;|2{oV5ǫ+,߃~.?q_FIAM"ЛĆq d M\Q3 u ;D/|d܍F@sFK6 i*֡n-! 0``{ΘxS0Ɛ<eۄ~/Ul\ 4\~02 X ;2LSet/Qy[kuܺYyV%;òMsq1j"w7BY`FEВSh}+o{~{%hk'ɮ`Mn;Q+vF쒁l#M6MCSP w혔e2օxD(J:1ަ:Sާ@0wsS^j!K(jz7+ȓzF)2EoTl;HVC.Y4^q UffJq#X.Nj\Rŵ ; 15FbYBq{tbB<&ӥf7FfttBQ-S3b &S֑ Sx;( 4YY,} e].W&zbzX 10OR#@ԨtNt! 0i0Qx  Q\>7*E>~]"~M͊G+y$ B̼`^p6 `!nEM U3F d ¿&2m`pAӌ` έ+?XT+|KB;ӫNeTqy`)]?M>VaTVqu>8j?N ')-Def7 .gcNV@4y08n4CCHO9;A5A{Uϊ41U [}IN9*\FHP#0 㫆L4(6R1XKLDL/-OR[W@̼y7;O2N[=~D0wQ#GD`ՀgqyLQSEaKPZK>^S%$|=Z&*ts}V'o]?IL_d3yE9)sugJ1`5֕3h[/pѬe dkWıu*$-IIkA_=t "((Z2|0d *Ժw-#_#;Bj_)k`r` ЊL~7W{\b U!"u,ڨ %v.wgA&>Ud+ SLD䢌3tQ[ rS@$["$Im0XZ˟'oZ2ȒnՀ:oU`^8*2,o0 NܰxCYo"*g[䀩 OU|e X-.vɚ'{!=n,WՌ͌/`⥐դ~H2$Y͇7.zw&7A  8O[2bk~HC`^O~N9g~ͅ2鍹$&],'{EøB}&lRmɝ) S#G1p'`Ѧ CڻTq(5D/CG7ĹCt`E1|MoZQAԄn^S昱H{0KpnzDD}0WO~;9U6`p7;"~Bz*?h%5q]c7^9e&S}ٱXS| Mlc月?bCI|.8lVj;G mհX/B 'Cmcs "j@# ^PA(xrzz7a4\SvaADc(y$xKʫ3j᭘I9Ey;;CqKO4Hn,g YG:#7@?SAhBvaHi~xa@*KG^G Pͥ:=lw,[)5i0IFޖi  2:P\(Qi CuzH0ax+=[BmCXj] LKHRLq FjLǍ ) Ї%C9P[(k|.CE.mr \G, 4> {,mFBCv]몬!<VvĮfՌr?+(ͻn݊=Wa:oRTI0Fg?+\/Lb,hmf b̴ü]lUE.1ů)j̥+\"Ueɡ<ov;F}[Z[\vvr|BȠQC{c0mY05VrAQnen7P gϹ?Y  mTҎ1"~ܑP}N:NvV.7`^-.5w053.-KLo |I)dD%i6K"i_闌E` ~bz 4ؽ(qc+)SGȐ|R%Lv#k4 WRTX QWR3p?=! 2ؤnA֝((&kb$#3$&` S Y}fJ~kT%|OC >MCz.;BUd C,<. ҝk<Ǒ*&c_%Kl"_UO?KEg[rz,P[YOrYm2< i2e>+S mmOR)1i[_yJE qZ$w{6$@e͂d{i,(/ШB47d{ֆyX4So!Ti#dDgQi`VmϽpMbi=nd}Ktp.ƨ<6%1w" T@GĒ> *>1R_֔kmږ$QU` niNK e˧R p!RH$f GeI"r|^ Rs'` ?OJ~;ɡ3c)EߒfC'=O mҫ^3-(U/0\<ӳ w. q/Lٰ?>`MxAZD[O~MVIHh XfF Jk_ hNQzO[tHq ح!OTO6*PUه{nFO%%I(,shO)OֲD 'z1Y4[tkg!N{Rx6?̸ ;9nxxU e'/}:FMFF8.ޙDӋ(xǶNA>Xz!R;p$Ӻg%?tAPNaP}GkQ \vV$2} lJEfHjtEfǠkh/gV:p e3jHtwRef[02>Q8X 2׿QPLQo+I1,TJPwAyp# jh4T$I*d4H[Gg3YNб]/o7.Wލ%%zHA4R5 Hrm6M-@B7aQy$.ya@mˬ)2/srXYY#6B6v4~}ĴIX|.I-h"ۖlb;)'4Ზt 0iх8h<=V (fn]}~͗t0C"s^8vKx/!Kdů()|}P*W ;zP@e>Y6}-NQﰱ{h&kwL0e;\DӘc5-;}>>ePO8g_宅Wp :T:p7CJR@͢. i{F:d0t/,j.b+O~w{r.g'6 T+%țA7,dh$L%X4+)KꙹΦ[6ÁP@ B )!XaEkFLš5w+T:nW!Ü_1US(܃wd n'+WTɐ5FyqgrK*?Va>¾R'R'Q;66⬒baș~dwa&D(WdR`RC we>֫t a!&7=+xbCgvq`OΞ=8w|ns)b7 #=IWʘgvZ R6D7+tV6/*bM*Wm;OWX75P)ٰ: \[bK,tǏ4X$WD|kꆒҥ6gI8#g`aᔓʚKMH\|XsQKrmg C};[2i3Bk Q=#6SeTh%8OMQRA+~^zt=[po),ͨxTX| K0=Z4d@y`@+!ëq$[48xt}EBs" 2P-c+D:d ޞNd&|JSW8Db׳oWvi48bbS;F5LgQuy,/f>R)s; =Hˏߐ$[qb5+ah^qJPIWQ߬~;ӵ., Ջ@ןl5W+"+\2XDs`7 f()EtdzUh pPZ kVmPƎG K^/Ҭ ܎u-Chpgd"q-wHY 5 F<`2!mc/_TK9/'JJ5YV[ecict!k}XE뫳|ii"p-ѣW˩ ?=x2qX0fS!0@%.>y`M5=q9ĠҬߍ}ѵ0iĬm4wt1(s$qǁ&FBwiD  .ņp@}\-`$ !}-ٚە*\1,JTlzY>yT Q_Iէ@;jxo2 ^,}PsSU=XqRmc0WٝtH߲߳1@a(B8x`rkՃDnIx H+9T :o?Ȗw' vͭ;;/f9=],*\ j"yPntq#$A[e[U^NuFQ鿼c!^:X(0hW10mBv{{֧6 %btE8x so`xšO52Am"؍[^M[^ܛu%ԊoT58DtL_iW݊ Ne'j|*ժo|Wj r~IvD:rO(dk&-ۑS &7}ENDOfTaAt-+_P·6c erS渻ψB]; ^]qAjfMjUCZi,H}_P^|EUxq1]cX%|k~8 .ZczOsO1oވ ]-Ծ22^kJ}䈋DJnDwW*#ژ(]s.γ(;K1P?Aq>Dg8;ӤQӄlNꐵʻ+7kM/>̛ @< sT"M" &"zE3 Nw|[f { fv!2pJz2# hFl\4}mknt[<@nI|,sϵC^0:]i )P>$ED["H~1X،MIsyRBք\P]g0i_#ŐӔ?DR.y&L NXLl{E/hbeS1#Kc^JPD4NPF؜)¬ep]w+@Ž Dl9JFvU9\꺌L= ZҚxyS8߹e ^ݍn:rYB /+O=§T򤈠$wJ!.R/?:[/* ծͻ3s=RNiتbA]% N~2VH/1.D2?/ >rP8PzN):AsךE`*N1'ŐgLtb-=Xǖ.ו$.RVSSL$ơҞ߬X5҄%% pF IͯFDJ 齁 y_ZP`QK;)ybu{.͢+RuT_DRW3?å+EųKCZl?F]Y49* B"o=5X:#Αz'5 G Nj֨0K,o?G+`|{ \Ye49Ah"qU.I Z=][:@M*z2ۉ|&M=KcNzScXg%\!Lp -5UjJnakŔXF+n#UMHPcYFME,) a&t 3X­.q 38jP…'.tF86K-[D887'{cdrH .s:aa syRoE{rD"SAufyCDI'@> 46)q]xG-,TO&}rBzb 822QŌ,k7dwA 1R%7nu/,]k| s6߇; VwȈa[ȴ ]5m8tbQ ?88ūVxgK߅?_XMqk@S&*j Vcpb@?増 $Ι%(Z %`"na%k0hncn>a6Ghߧ*g+u\s;4Ymi?=Wز\PwF .jՎ=Yp^#2L gf Sվ7/ywfөTT ?Hu9Ɇw7ﱃ$?;Bqc>(Ʉ)8&s *:;ەv|]v!1K(9d@qkvH,gBC p2 <!Xv[Fç+-Y iHZ<Kw8߳8ix5Dϼ>LNa䶁=_ LxvU/oZl:sfiiB<9PKG]kp"KG;lQE+覸10ʽ !babUilp/w> #]RE$o )֤8:t<-ȴSb఺ 0'S 2XKJ3UDcmM JQHsiN4]%_F{|n6Tv3UIhdVWǸs=\bȖpZS9r闫_w'y=4xe/V|>;-Z겉%$,Nm)>)5iEqD~P؎nX`<;*EJuqkWC$pxQ<|#sf, 8iN@.}EL#^[F) y Y+I,![NsF]ג sn <ĜGb1n?(V Dg4cʩc*l"kE!]d`?'VA|ɖر94LJ*9c3#b`mVʽ onVEquXNݩoFu' o{_>.s."&|/XX$]2Roi$amt /όbCu7g[Gb~P* %<qLVʊĭ U`[BqX? .{a!g5ܭ @}"oBE}f>VcooL8Ap`HeSMt kf1\oC8>{k iJ~H(ڭ";e،IxTZ7'S1j3ɏXf*AjKv_B9o\pwY;8[Qhz*r8dAˀ S\OܒjA*`ٴd0HۺD{oV6&%'vn 0хN$ǗeY3A$y /$lD@:f lT`ҧo)EBCXun*s"=7^Z(% );?(1iu<)N|Yф2U°fop&yAl˯uTK.=mI84Ù^y1rTڿ~޿ uXt`S͛[NW]o %o],s4kg`aYN=N$^4Kߎ Ux4!^BmR>l WAP֊d+5 [ɔ ;J&/-[FƝOH {o)to a ^li$DWASqx^Eb#di#!!aH}cUE#s~['+ hU lHM @?v gL)ex($i/}Ĝ*Ӛ KyZ)Z4"HŁSOȨ$Hh,P/DdzxiCg 6Bܱ٪#%Eqޒ;$[9VzO2_x@!v]臫V6HPkr>I>^ʀ{B3Iiw²|/]:=^uw4oS2ǔ +G$aQRE |6ߐ2 5yC|@FݓGCZ EثOUwZ)i3rFMЭ%6WNj"ZÜrۏ NW'No10hF0:ͥL}/EVhgR. b%u03qL<*{Lj_$)*\AiCxjꦬ[%+Ӗ`Q Gz˦7NvފRJݙU%g痥6ZH2BuBKţH޽Q #]\e9E0Wֻ![a՟%'Ť+(ޚT!0/զlS.<X˴LV+LNTÄӇԵ&t-\? gTj6$vp|01IFNN<+|^Md )ΫJhP-C N ZLmʛiv dq;~x1od$l!SL*hCH:#2;]qH;BnKrJi=@R5Cr.mӡ V1 w"yPfB;k)"O c᲌sR©oRLpLX9RL7rJ2 UjhR l[a4Guț9 -ܗU;FtW>|Uaw:n{O;^)(ss XWn(\j= Q~EL!D m/t;wK]l.EB쒷03Ɛ[g±o=A8'Ula0OWfgR U˽y*W\o-l8#>({ZFNZԯVfuVbX$mqAc B9i'[W@8/SVI~= =\=p+c.HyތLA]AޜUAݲjnJI(X;`^xVq_eO{!Ъ-c [g$IĬFO$"̟9p)3FF)D'?}vGy R5x$SN5QćŅi<}}!lt`$\Z E}NE^uBح]"Ӝ@ذu0 !l/Ǽ\< x,iebڜ:\)|wK $D콚k_̐l*HK7f?otMVefHx6Â-qXe@+ɑgÛCbV~y. =c-vS1yo4>j^֥).&`QF4|7TDPDWpha`OT9_U 8>V N H ,PY܀ZU٧xp5?ƚh;%>bj!cǤ\;O8 R߮Q7k2Ki<2~b ]x$WsL{:̘r(¹ҹF5Psm$r6Gtbs/1>X% ӑ@-t<_oìp^kջA.|4`wWm0q32C֔P)Z".xGWiTaNyh,=83Z%#a|Tz%=nfltr(ǁ-_c^C;d)i *eM HkL{j(-:`U5GPuoFp8ޜZ/]ǵGylgn W[,_2b pUh=a!#UnDo|,!Ҩ$*Ӽ$Nob.$5~ZwOOGk$|%kk>Wpþsɯa!/Oj;s'ē_nf>m2.¨jP,wmpfΘwlM%k%UU"(Z_em4X$%DYLN5^kTLs0v6DSKyWCYlaוVM|zyba uT\ oETIE;Y[ KM\;Tˏ`ӅPm]~K="/oxG7顀C_-rR}5jQnKZ#9k-[$"ӌXwb%}=#< uiʆW: h2:әm>k{5n}V]Y֓\w+_i8^Bt1چS*伓l<UQ]8nqv#M$LR0=j( aׇ-"k!2Z q,7VOAޚ-M% ?+pQ Ta.8V&Tk<^+QFS*鄁҆ X$v-.I4(9|0tVZ-yp8oͶ/YjT v^xZ2,+#ȭzKLv%ٛV+GD? SF9A]tԽ/7t zS`[{Vh8ü A1 s22QGWVdyȪJ8xDԃj>Іkm'׶^5AE<69̸?eCUsxGf̷4zթ']<* uJډ[@=J@_/7(A`4dLsa&cܖ9k{ ńi4c tPX~8J#[zX/&n47UTcy:CytCG#fIt xi.\ ~5~ZPQg?XҪMv/#(uxX"-_x7xqi9\:,3<_aAZ޽-ik̙A2.+í asB̢Ղ0J)!bLA ,8 J"`|f8xz!Re2gu5I%OO0\\@?Qu'bG儢,HU f2w}'$ r!C;rfeClm C%Q@چzz KKˈ6ϜIuL)M4PF n#E  gP GeRTANe)H2{[F3SZk!Frn1XU%k껛M:Dj˷q$S[4̙@a.xQ|R[/ zɨPu 0 X i?u})<:8B1'K~L9oSq02urcp1NL !.|ԅeQܰfN2Y ^|fAwC_r4+Ri/&bFiMd4g~/^ 9h=ȶݔTQ(wHWRDK/ܢdKߣ*tv'MYX+PN=urĠʡ#܈t*:KD]u>r[5$vgi'Cx f rTGY'AyS:a9Úq`і&[hjxk|Go6˾[`vҗe,"X_<ՎhƾVu7 WM>+9es$#6'd'LE̥I26?d8GgNfaռ#ϯ)N0MF}+T?({9XfvEƏ|L,@;؄x0 X^D olL#} vFNV&f<C9~TJCD .6{gUs"w.>W^-xHNȰmVUȤ jĮ*܅gEh~<,7pJ[n;] _JE|cM~^)rO8fkfHFEpWiWK|JڭWɍ53h8 $)XrfL`}xݹ%[cBmI-{ |VCDҎMKE獃3e];(z1K3u`xBn/ <8$3z)ͤ}u3W鲄5, 4G|~^*z!v~/9\iPn楏`? Y[ANƾT9V¦ZT$bȰ)=@d:F^ J=mc"5HpɊk< 0|٤):k֑ꚇH0]An {kPT1Dc(Ma }&;9s!nɛʟZkOQEn'h`n&Ig}m"UVF m}FQu@A+2,q $m*@NSq[dMMY#(]732Rs9tX3!FKK:H"Fɪ{4gH{?ꏼ? Q%=2;+53$rfx*>0'fЉȺQ/: O?ϻES)[U)XI0՗t~( yuX9O):*z>~1c /S^p;N&k@'H&&i42н]Pѽn{rb@F#WwYC)q.'|usifY!7o"P%3H/줣nZlZۏ- MyKa@/K܌ɱBz o3ƎHpTc<(VHON%^8Aix3eKqPa(Vȅ]ϽNg ѶsZ4~?WG$!# !קKMCq,9fC)@V*'CYB`ok Xx:2CgW 6΁$U(\^q`};`?_ 5NúUOYsy[t-%#a 'gEcm,>:HY>2oGK|/nQ3\+$T` XF/b&A0y'܍q4۝ntɇC'R۰=\_to6j;s~$; Uu"+Rxxe . iI$L"zLI E !j5o@H("+X`Qσ"C 3A5.?v.D)x,3 N¬sGNeݤ@_L'}KvN.{m")7j\_yj)M@mo=n|HJ:b= n g7hQ{!,v0='*CEiYv5lJ^CC~> I$s,x1 ;AaQ%*Ż}/}fM\4[Byv>~,0P کh'hT{8T`yߍ`17 jGL}3O[wPir$.7MwӬ@A[/WW#Lñ\O} 0Iaٗ1*Nm/-D*T2"{%`~Jſ2MupQ&)jm' S$A+kv4< %|QoG3^N;ZbwF<[/?BB\bx֭YWH-@~j-y 0w a$Z&mv7 ;sqlDغ}~H~Ҏi3@5iё;;?5`Dr+;BkO]sOZO͎b1% ֩_D}8oe0g()%ߙՑ=͌r5]}aѵ\ڰfĪ*ɶw`ǕNXH:q ][+rTO+Bh,I,EF\mj]u6^ec +{'9- Hu_@{,άVtO՟TN?V. xWw~o-2Y9A < wdnRg LNbJê? Lw+> *NSXO?h}m[fZzRa[}ͳJ3ɞ3oӳ,2Ugm LX:TpoYJ AXw4`=ɸj *V;!"yr3wc6wMPH[ *dK++営ߑJfŭJ?\Kd|PW9pia[|17P8°*Zy~d*-&,^4C@IŻذ}kr_F|" ub 75PAr7Iw,qN>:28KPQlt<ۿZ9Bt;:*:!nF${UuyWI#[oFa @j+uw]pO=p9,?{z:$Z}8͊xNAU ZX^=]Ջyo[hkF)5p\nje{cX_P !N@0$@; nVÖE@¾hRпDΩN N(vx0>4! 7"v[B>Qw(̖$p%9:&(K(-B]k׼e4=`?GS}uҁ^w^ Ô->\Fu.%ƚ$=.דK]gADrHW/=+;&oa#t\?GN  6[2IT:i_2UBX`+vU/Re-wo IB3rlqN9A!7srDhFɿEYU~>=N$b0dn ,0 o/@yj ,Qi-=}[_mj_eY`7rW z='fuS>YS$v- |{=-iH@29JM[#6wRJ !3>+}oE6BrU,7bUǯ+iOUMlX6 ̞#&u pw>05>ALfGl / Y 28b-{Ɇh'`cn@ADԑ+..K]}.%!Ȯ l@ ROc2Zqߣ@ѓů'cxU$tPfK-3 w|y99 zNN!l䕨 'N4>d]. ;c5yAצYseut/T0q\{Ь@K0D Ps~$d9٪XC1 -  B3$A۟ڜK)v&[ƅup:Qm87oͬkbӤҁ'R ƾAޛ&F%xjvp)HVp5t,>@_-Z{ZqBr=͕ D,\B7 WNK=p'Y?t⓭藥,$A~['[2j;hw5Wi :W)CܭtDn:B#^I7KrB¯g>)r d3c,tTlP']߬\XOvBF{,BtZjd2MfV\'q*g ?Wzi:5Wt/D]gw_sBLqEKWRw~,)j8JYjJ0pkY3ЙoXvheY.WI郶5RHCt!Ƃ|[(q )NISy֍Bͭ X{}EҡD_tMd1/=}0ZnH7Cދi-jz@3=_ÂRos4,:1N*Uv68Ȣ d/zwUM @t&ȄJp'Vy:sk׭.YL;DCL "i#rГxDфja ζ!덷-4PX =w"WEfDuA!B6j#3y[7C~)Q2ʞGEwG~'0io+nbzK)Brg70~kFm @K]6}sm(`. +ALiI6݃O]y +!%1Y#㌃Vl4ߚK" -VXv;] " hoVa:<3wX |H۸z R*AP;ڼ NX?Ud~ȃ,ڮ@3=R}`fΠjEŜ}zF41n0{ [@RSENcJZ'}Ctԣj.ƵZqB*pPd^DԞut;@8bu{G;^50<2Nb3hiCk/Sa8;E рE7 O[s;p16"4u (^xj>ڜN Wbܽo-Ts*/%DkTǔW@f?΢_(/3a(IZWY{!mW/ Ba+#8K$bH0f`fk}  :)J*0C,I3$J{9i?K0F?pa\EFT=(+P (IS]`m{=#F Ӧ &`aDPp遯(˹P0 ՂУ@J7ڸi8 I揓{!*D~daY[u#6\Ǝ6yuMs2*tx\*nMcWF4k@ϚjC9\ Ϣ~?([4݅%oNV7=] MU0ʵ-RZj2]ERUN[ J85p|W{"2 hnABޔo|L\R07Hx7ڱ rH^}%FG꾃uv\ ax| wp0/:"ә)OhpmX"T5լezk;5uXBWJLY ?ƒji[4(=4Wlc ``Oc?J *PPz26kEh\Xhd*aŶ4KP{n%{|תJ);9NқP4Z9@ŧOo 2ݮ,zveUh!hM>z&_ip(q<ԧW"QUҍ{O[=w:_zzq. x uu4'ii7rRTχ TG\O~py9`ZY1_k?lQ4$ TSրZ_bY(Dhuf%d;;y@S22uShԫ\I y7>zSX*tSu?9 Q\y1.,}yuuD;a/vcxk|U$"lQHJ@Dҽ?V&?U c9s9 G޷K2d*#x'>+WIJgON߱/rփVEޮ^6[P}N#4FQbNͦ:^[E7~x,r+#EB6tv;ak&Fᔙ-$ ]: ůrLZ0K).<7}L\^'<՝K%߯U,Ptq v4GE|P@8vm={ij᨝nx͒*=Mud鼣AnlĻ8Q&fžQDYDXϲF6]#"1@HėVz##YB",&oZC%/i$KNbv %"2 =wI".hчA7)aU\G1R@e0 (;zcĆ"_iJL^- k '7huV9d) r6/aQ-/u|9w {P 'V ρ9%Z׷䧅bԐFmyGQyZ6`^iQ]lIuw7^膟ĺ\6Rv6KoԙzhɢAi>%ZEũVc,Rro8 Dѳ-ְC FlQ8m :2):WZg%؊^Xw}}lІ@6Sa@߭# 1rpr'["@c%f[Zhk"o|m3 ɝS0ͽ [E9M"#.m1n+9ւ2fOCoRjfc_V,D&o ݡh OS}.,Cq{R+VlxFt۔{Q \'!2ʙaѶf!8]ecKpf΃jh:zU@ SS>Q!VEZ= odfَW+hbE<u&|$0D*y#DG!M TY 49 g@ZPy)9ś4=@闠U4 B7+1|:(^k9!j)q뵣Q8},7Yi#8ae .EMRtxoҵq+fHC!n^|!Νuob4VJIQab%oQ<onE.~έy%왁!OEr Vb^lo6 yTM,*<~: s"xҤ95.f a)L"#D£VSu^zꥀ*0.?[&o֒Ca _bJ*?;Ur_:*5(Rŧp.B)N$[NٓXQoCCu-"%W~% 5 .6eu f֍F鉧Z$4@4#ֹP@XC}RټC|iۈt-u>|9&{%}27m3gnd˙g$68(9~L*0du HdOo0XqEu^pEuM/EJЂ[h3FL Puc5V%? m ].0TdcK%w2jpf_T|O!bj !ݲ>jvBgIdS RgB@]\BbX_$ESEwLLIjh\=a#^FuUDB%a{/^^\ L|8)'2y1aMRAP9* 0*JL D#0铻 ߟUE!%*eS\Z`j׻y}?_Vڮ~dž0oص/m^CmNY% O.u|pCV&vkJϰ`q;Ge(yKcrQN9Ԡk)H-D.X@ (?-gB?CF5Km]%% }U욶թIWa2F.~_G9M4Qcp/Y|OwREG' F̊HkȥSRU}q A6\`͖ǚ9KTẅo}f/x]KcE^}2Y Đ+o[MUz;~]K7]eQ[ljw'u"NSe8*PK(5v N4B JvU>8JP:ٌ݂† 7V'Ȉǎ $Lj E;zjH[_=m :*#+ȡ&fp!9"?6ˡ58 cZ$~ߢc9\ӽ% yZxӾi5l >IDnTVVZ6z,Vtx*fqe8qd㜽-Q xzZmRw C*^zo]t*']j'!(ۚşlahMs0+ ?"@̪®~U|FƩݴ/vd%W7Bb6I)ݔ. IJ ZǑH{Du/KU#& bj=,04dwj,?Kvҫ^0A"w%mȱ Nx~-N飹vq@qʤȣieeA@u}pɝ~^ d *zn>SF_vvES IzL̷[yX\0.LdcY{u_͝2hXY~+0~SԂ.z'pC*/@A?ۜ3t{n 8o{6/ ͖Xf/Z؛QAX$wkY"*RXi>:b(&TmJ\L=4V%o:=fv'◿D* IqxpFޙ 1IƳq,vH T~J w6>\u z]ʚͤ:w\ȅ "x#W8d:54e҃5UH\3TE)y[jU!;9j_y6> 1J}Wi–nVOѭy@p&A"0γ-Q=.K])Tѫ/TAv9x$e>m?lXbHJL'`Uz ,N.qef@ayI{mZy? i{jpk|w`GD4Ѵ<[V'%$hf7Tfa |--lq4 SϋraUoħqD}:CfМ<ըzF8ɴ2iu{$CSv7;, 2y^Z39ii.59i3ndM 'xi1gH;0QVi0LwZ=KT3{%Z۝q" 6[PBwfHTh M>9X[gZ%~]T#É.I?MڼuPW׃g'f_Hpw`p0ko2yezmwTld~څm 4dO`dEGƧc9V2=%ƥ`j] >zs|+m=yױ +wbAPlH$ ,/y$#u=v>a<7+L.QwK˼JdGG`nWHpEd/sH$o"R="y>a@~3kKW- aϓΠb B@}Oǯwour<ɈJӅ(LY"Q^R 4t o,eC\\<o[knUPpAOAC4AW\֑T&=hD*v ǞfBl7溴sH׻ \G.H"`^X_'_/cVE!~ Ƈ,1|L}tMInn ak(1sC"QWqm:l;Iښ`C % KRypϰJzuWW,U&i'LHq[Ϟ6=Nݶ(oxOt>4wK/WNzRgn #H*tN$V%cyS>}TG ̦0B/'8QѪ-:7w.]O`=k҄B 0=Q^}Z,Eh=.DUx׮} yOJ%&UY3}h992zZQ3N#Pf}tRɣQ^Q4y״Rŏ {۞G.aPz xv^eS4x[IPճU9HJh3m#kw5Ƃ=M/oQ4Lqj[^E1=A5>S( ۑ|=؇l\4$x ,q@Zhp02dIq5v -w_aYPt~\\6 x|;[K'N A2gha$mNymSdhY0J[|g^:'^<#.ޠfvRߜ:et[CbA7I|Mdc7]v=WfwGթqrT-A&KyYM_o#72ЎEg97``4ۿ6ׇk6|u;m'ॵD `w OоܸR7q].jF 9Y`iFvRfnA:V.:z̻a 1?awZu5)VPF @X 3l@bw{`bRZ(΍U%շg|b3A#g+q(I,PtZO[箱<\\R'q9BfiJ/IMn g JzԘFQh} 5a9IH`gBW!n"++Pj/ ͩ¦Yhï )<›b4q6:勄W"aWKӫ5L6[>٩ 'IL>% 3cUp =ژ & X>X5^lcEpw`p٭W|/A;sOOsGl{LH&rANá 4/DWfxгN#@`>OnA7ԟ(2*33 )gx/'r`Na-OP pBnNJfnb9e$: vp/Q[$kIߺ y"nDc Afr!`Dq@z{e!nd䀱R# ܵ64m/Ĵ cG\` Er 6Sb7zc}IlK@HN~CE9uœ4W_{A>YP*\37@&]T֯Ix|k E?N}1ȅK*&Km}qR<0feU%xf6eOp/Sb:]0h>TNP+4RQQ̵tцq6WP*5S0UvQUh7L%h9 FL@3dy.v^RgV@}Z̼nc["$pE-բDPj%ۇx9kZW3#oci`^ pmf$3xNMjmT"DA"TECZ)0OfM'tKLl+Z~|dރ! |iݓwϗaW,}Pi5~]{|CJb}*uņw4sW2WH v+^.c1"tpCqŮ甗JFee/22wIkU va۾%7-FzM4 aY6z6ySDqqNVPޢʹ4PɧB&+x?dDmmQ%VTK3L´5qЕhrƆ A0f͐$&>G;k5ЗFtُZ/;v|.%9r%]76rhPYHu7/N];Ii/^;PJ4p>:ubU[+>M;DƶCn 0tPOub~ęro`}!oxvXrn,5tI8}.$gS8NYڈ{}8N ̔% Og-sO=(,l/JT;X$nL,L=9X*w?Ќh߲ tqϚ kh *<RTR#HCu)|b$Q+R, cأ: go2ʷ].e=itSa &uv0 ?FFjl%]G'Alt I(@ͻud{AƊG]RGPI Ϊ0'BheEzF E O'WK7˥e>2>9L'g6o슸 JZ>HՕ`~'W[@Uhc.V_GQ f*<*hM&&UuLo*ZVnD3qXpdpn=z ܁qkB^>0{HKB{"Ќ.4 T'ҧQw~LZc Zphme0pOK<#խ([HЄ~v@t!a'j:]JRquv$9~[Y4-*gj߻Ja;^&OX>lSo{%ktlJq&LSY{'6'Y྄ %_[_[- c )]yhѬ`l'mLs`.^ 4%TL%I2wN=TNTKmӑy f&\{K=>amZ@4*rp;?K5SO],ڽ7A)$7if]MT%-V.\$/t04{"]Dg-#!GKW6kBvE=qdCfs0<P UcV M̽JH.c(@t{ݻYb:+K6 ]dA3l7,+A&\|?]?,XhDNk 쐠qԔ$X0g~5=T#ƪPK&5=3^1 uaQx/Ptcs u-I˱;c,ô[$ e*ouߪ×kML7TQ`.N*-n^e}͎KƐ Ntm'o?D)p49˓)5@:C3ax).DG.)LӒ΀V!Yc~1!:dYϝ OV$ e:`=U  kjP yYHGFEeǰ//ۢ20w)5s*ƞj3jut,g=VP@lY*A%9=`{}}XWUyg( p,N/)`@'1LN%TtfqA̔=Dp%@bZu~kU;ߚKKF4+MB#<25?#ޯOFWvDy߈0 \~"}q$Hv$(&sTw4*~sʂ0g `EF *@U"'S=GR {ix`: 5|1o' }WT91q |p߉]dd]}WnJ/FPvHKJa2R Bw^sQr&fi7<%YiKzDcVI_tsKLo *|-]E܌hj~OM$xR[7!\0qExE,ڑM"nF,$-6eOȓߥ )srK84+F h=mєfeRRO̫6Iێ0D $Y NXQj`*fEʍL:3hC oA^Lf ~GQل]W љ~s $~s5S@gːh,BuVċjKA[#m_ spD_i(fLr2߁>/k}ٍg`_2V G$A\%^$_fPkT N.u9r`Oh86[}HMQ3!\$kj,A{)qQU`:"`9jS&˜MGXS#tYv n-?n3`1;/!,@D+ª՞YRv%\[/.Zy3I|M!Lgdl c/on3K%-X` ( яF|lϪIF,"ɉljSԮSJ͹š.RLT n:+Y; uњîXF>M L"ǐP̀.DQȧ#P5(ke~d=\^@I&-m_ò‚?5~lv\Uk hǨ_y8sUJ%BU;Ҙ+f!VT;ǦYAT(ɄU,bA$dKmC]L]HnwmX'1Ʒ;y(y'j\؏uLt)mv8*?(Hv "([ _E mƻeˆg9YD$Gl޵Cڗc=Xv;a.VwK$ֶh݈P\6`8oK7χtZ0qJ)h2:! 5 :}(50ŮxʏOS0Hnq%TRʎS܋:[*S8nZ0[ Y>Ԣh?`UUMc/2¶l(| qnNyref;LLQΟbU5Y2oP`AQ`xMއͫuƹvV**26M;8:6S Pe_@\\;-Y;@Xr*vwUgHHMA}=1Q_s|F#Dt\ 6ON׵$b7ѺIMdSB="k|b0miAT/{L|vlvqtvµGfIe^,XdJ&`]Dy/V%Cۙ^?z]́sOC$v eՠuO3\] OMqp|x6R\-~.#qFrV/ifɳbr}մKzANǽHtvN*8âY]0 /]?pOUPn@S^&쟴Dt"I|pM[U]V9)8F鉇ʯ>voJ$";]0#HK_!j&;-Ǥ5UڔKvZ\sܹOeDb}{rMnm5:S) x݋gI*ܷ(+:1$VŅoPqvPK3kRQ (;ȳ1>7! ׾${ct3EuCHfڇ'].GX>aJ&ygQ6j FquX* T4Q͇"%nʆ/Y,P/Fii7ǝ<}AyF`a'*GYSԴT=]0t^tS+V^w~89Z.+=aY?H2LEv֜O+[0L{ۦe8G$A{@!&`!cdJ fQ*'֠톡yK]Ԕ. E 15EF ȭ9̡~KaŰz>nKHNYw2E62"/J8+Q'_kɞ%Jl̐! "bgcYf/R՝:be%r6C)SQh^hQx`_Bgt5XǎކXCUC= h1:sFf5aQ:lsJa* w1~U;tPvrVO%:B[ARIvgF]OU uwU-CzY񺈟Z(~hc^G$\Ia ᝑ٨$5- ϱ^e`>vO @D%JUT(WПhCyL঺8tCkN^'V8aۮm4sM'X'(@Ԯ (ER_)K(`snII]:yEMKj`J(y?d[pBMe; 1uB/r}BIϺªU kd=n9Β3M1̋#hPַ8z.Qc9e-[ d'RyeTeKb]A#˸ve@]G[eyY|֍Xh ޽|>HЉ&$$[-԰LW_NɁpҲx*4EOÌ>F Fd 5J ) o5hXJ*C*A ,#Îj=YjѺK8- GIe%oUN9{urIn?q) $5 QLzl-Hu̅|20 B }4ExĹB \p-ze[]s_?q.TxZcxq; s9$\"ݍDJؿ-١󠷈I]+Tpha ׄ/,L ZC|%#f$G_`@l\}ɢY4kt%Z2A Pċ r޺=WkUi&IKU9F~2_B!kl.^um hW+@+ܗ"S}Yj-}0*i^3Tdߜf`I X| Kz1@&c,|(Wj)_yyY -&l5|] x\ cq{ 6n?Ń1fsoG}! Fwa#n>l 7r>B T Tk ٻtZ8qI7]t#y |kn>K^pt`Ӡ0E(_j6A<0WV}!"zSxXJy?'lh o=hӎJ3wcyOLjro^ճ@@|ZÌS4h: tohi\Ŕkh(Θ%֘]4LkH5@-v^MsB롦<%D5bS2|yp*D$Z?7>=7C&Q0bȵ<WVF8 We)*n.ݒƍb"F噞6xV~IJ^ǾY%\_R,LXE? Yhu1i׸zoJσ*;GKH`;4: kj K{E+Z|7D %6^R*X5[)=LG}q- x;b6a6QmshlGDkֻ?]xRfgN3< r+tvYWL%w_=~5 vBL<0q._ՍzصW+LT}పijpF> 7jKl`GJ|<:+2D^jV{2l|N~V>'HEZH)i?{ԛ>vCOcJ=rr& O9uWLBW B#N_\%W2C"`wٮ㩣v u#p-%7jV]5SrvXN2R%U[XfNyhѝށG7\Z [@OL]%d;,^Yl7i@VF‰mmZK1ޥnZ2W9V4 yrSG)oA_f[-*Y_ʫ>@wI|1H==Ad~ddNW'A%hjhuA7VYmc'XAKW*d[UjC&Τ9Ee} :$̊rV;1iD/n$l뇥m{P %[26;y$iۉ1 go5@+rO9xx`ڼKLo1ok 64F'71aTeA)r]i䥈l~0QIV4M`2; {`t}w@.J +iܡ Ϧfq"E<PRڬo--"KLuTfc+j6{s}dH?4`I / 5(^'T?k qz/CEXei*-|%:&o5l9y2GZMg:9 `i\Ro-:{G=Pb (C{h p^BBw# Rx{@2*w nvzp-{(=U[P@:uե H!e+DnE7N#̮ϳrO&J]ZDxuu*"$MFN"{naRj1ؤVZCmBx:] |%NR9kO֨mа?doot'|񲱪/j.^`iz{fPW2H@EZa2p~)6^ҿ Rg'[:,j"6:b;*/>5TaͬƜţlbO%,T5߂>ĢRdN9lo0y7">oz!v {/=3LP:w3t5#?\,wG ?<ŏv52!9-yekKZn?a͘XS( ⶜_ X7>@5AykJ\ ;5GqlNtarދHR3D0q]b֤|P™)n^Zzpa)1Ŵ/mz;)zZ8:}Ϩt ??e۴ Oezi" KP](f_@y ^a9z y_v֭MH'3M ֳHBZG.Tl>1=>l`T%kqTrODns#)ςXfK9;*R/~"u%̋uFۃTf[~Y:MI_|hK3j{}5y+SpN>FW7l߽>'X.PQUPDU*y5lW VFS"S]B]j|Yy䜋Eڹ&U5LŹUmFwCzEh˛!LMЖM{AvFn'H$J/Q!y"cq{7]ܢStdus;[C|65B^9eΪ|B+tY<\d,YZ8/zS%wl?<>#EU^yG[*v?-H#0Δ*s2Y3as'B 6?l{HsPFDy_t黰xl>ލxSa,3RXOj,'feȞnA'[t@rV#?t|gkX |0Ʃ 9;b+,Ճ?r9Yv'AEmknb%Lj]:6sE4ppIpw;fbR!6$1fgF_}A-_ҽT9ǫ ^jP;uf ؁) S;ls Y\o]Dc ٠ CW[vK@f1GZ^;GC$rqylwH{ }h&DŽ"h Zv| AhG&;*4/ɸ0r,h5r.J, CĐ?֧6i{ VaΝN! \sp=K Xn6gr_w)5Sm# ċ낮S l u]RyOC--SX$Unwö0#׋FQQ} N 1)`Hr4@eP-EaTpo\ 1BuG\o&>1 \դ&aaz =5DXs 1Pw}t˧Gsڍ.[pw!HV$t;D$sbqNfkEQ"ΟG7T.A6 BÃXQNH`b.S:C \+yTdDZd9-} ]H;ZlwD:R=4f]φc^ZF#D8e8eVYQ5Y_pM _#7=2<~;ֻ'E+A~jjT=HZ*r nG Mgm~EH8;%́9W<ږBռU: \jά&D)6n@֢g` SƇ<7sn#?wt]9^cB;d@%U!(_OL}s e{l4skn=6TZ`S9d 6(&F4Qc66 gWյL ,>[0k(ͧ p*r8?o0xܓTa8E4f0E$I(zqu:m5hY ST w2O]Xg Ki5.g?9 IT#O#f3b)^ު:Q,"1!78jٔBg8Z6"Y2K“>VtD ^Rʔ!YIF@PP" >/ ncј[B~3_jdk);hC$':쵕I@t<K@Q7,7:7XNeZwM()BpеY}#/1`NlFh]˳%_fh[jWD5FE/ʝ$&NہàFk:$64DUQW6`1,+ @u;&UL~ܧnI <ް ɼ$gWfmS7px4duʥ 8xQÜ~]n7=<""UF:jl2&FO>/RDB:NָG  <{/#- / 44z+?IQ'Hq*/#A霽HNK+F ^^\ IE5Nr*~q:zzZM'@2'b $6D6A]aI)lIgӧ~XOOz\%F_ Q40L6S dB!4'+\eQZzy&iNeN!xC|aEDe&'b"uN.׃؞}~7Gdɖ6XD,1{~Ė%e1L9 W=SؗZJ *zsp LGo8_GG"||X`XkG0('[ XK3 X|M,Ş#i6B2Q쮊٘f^AOU7C(Cpu i*PүبI-^Wν;UE@2dU=E"G1Ik:~gv'@ȾNpZآG2/&wpoi1k6TD$Lb oR-X'؇ݦBtMZʬ5E?gs'11k%G/ܦ ) -9{)1I|ы>YL'6#8ll2okƏw;gkwtnʭ#YrADΌx4YkP'[ ~1$T5ld%曇q68kuk4•&|(P6.Q;@On4zu3\ ճ´a>9$La9+]?V_%'g͟)x ݠad›ApW5Ss~A~$@2>>|_h[:*KrpFvFZ)(*JK dܫU^L<HvF 499VkzbGUDARnG>Ds-3,ܼa]Rm)[?m{ ~"29|6NxCM D Y͟*8!eҮW0&؟cevIVd+{ew]pC\\E̺UFzOo㎋Vg@Y}[P[!̝B}RkkZe1BvC7Kn՗Nﻄ_K w?i,̠[dn&>\}'=@"$XJ¦7&Q#5ah5jͣo~^&Yƥ2h-EzQpzY#`̶e# 8UϮv}WF/Oj…YDz#$4aNI #lG$|9@ -\eWK1Ռ`v)eE$rN6UM`d,d-| MT+6YMg7{ bTBHSP2djE7R +w :렰 aj@Mޓ6U͘f|:lT\z4:ܪMpN~NΤ@ sJgEaNF';ИuS3 ' {Z9SB薆Yeij$xCrщעIA/];GM:xlZeQWxطknl3:6E =#@u<nrfLvDl3ơDybKzwU^D5Ͱz9L8Zpv~7$X)`K!oK1O/Xd^埐?pN%'E `n~b;c/ڥ2;0Ή>>5[T84˱kTOQlr)Ug@*ƪ*ϾLduz'j£V_/dRr'h/8 B1M,Tܩ;Y݈aFnܯ"CUĀl!jy^BU 1xo~87#y,W}m#n_TDҩ9OZP⤦*3;΀2=jeRNF<4%G*4`-EM|M $CCC CJ|L `>s.Nm 2H+~ĸ|)WwBo**"3zOIiS_Gu*(bU=Vdߞ/,⣒rZ~/[mIV P: ;f+>Ĝ@۳fwROi\)٪l0'wƒ3 KwQp -ȗ.($jB n 6f3>ta5YrWσ7smiVђpamTE ?]j'=D+5 JœiDߡ\c9M6.fDz_;y$e2-v' jV̥l!N\cfY-f7rxL1AWh8ddNm»O5E{/=3EVl1& הdz2v* H֒fk"@=OFck<wV\C8령H{u:E4䓃H\]6ݢ tY 7e0A䣨JO_{V)G2* ^<(ԅWkH![2JovATx[Ma)H)ulXf0=~2XyďK᫕CJBR\Zi}]% HCȶLzAi%~ T}(?hub̿>-$GEIآ,X,.LԔZiӝ_qLѥ?aɼAg/Ul@矆99u ăL# 5YX2  fGS!;le(kv[~BҨZU<LWMQ'ڒ^ޑ_8>#*4\m`HWTa tT,WAh+QGdxآ+2/"hFd-1}孬6,9++ˑj]̋c鉢$YZNR.ZQS w'=S{ l?0)h.'|%pqȠZf6LI#\4Lh.K%c@\^6_ԏvWh91a~Xb sdS[X,f4P~1S]2oR' a@<>#gzcOʺ\0W2&Z~5wO@jpJa%"M dnݾf`(;9/is+k WE .`< )D@DdVƇ()3L݈d,#,‘?>s:[2C S~~3Wgpe숿F`۴[6Su7()}"Ư."1M P.HIҶj3y~S=ػD* 5 '_x/ .aB].b,@cdzON&q7iƙ[T;c}ǐQnP o9b=~VtW!qQoFK~xzC`hH>FSC+6:VKX7|>jDEH;KfXvPEªXKN m Vi +sj먉&?JOsl\#)nYH?n矛ځ_k'=ǽRخ.S n2 @'P9|1G(DH#޸>?+T8=oqҒ-C;mcVuYۤH霛C(@avNK*.:IG:T&sj=ZeU!*ƫNOY݊@2k~INr{8A6e";Qi1jv;W+R_Eݪ&[K`9NSӯeuy1j㨓/ZвJ.rOBB`9|R+c' OEρxfpW*eZm0teޟTM6JQR~%D UFQ6>=ـz̫N[יHe[4]p1/L҆Ax퓠 u9rz>OB: ?MEjyOC6 ?~JAvÞGNEt|MZ-AjLNL61vrJ$?WY 识9q¨x}CM@_EB2|sX=J9h?T6۫]DQ*,N33F'JFjDY?{% gð|ኍmnBaDivU;)\ٍ5q[uUxld D~lު+y\WAFn1#X̞^o}[H  b0!#UQ4B! l<նSk-*[WS?" Ey㝠Q Ŵږfmf&of,^سQ<)(_hݪq˱ WN%}3w\ÎT|a'fpF&iQĎ([*o]m?]N*Jམ5 56m kYOak#c)Sw/V̲-۴X;gC*moړyֻ`:OEDz7F\j'i|H?E r .S":b43T\+'-R\x (B: IJz_'MߝnRTlt6C~!^9.dmI8a<vQ|NI@yЃ1)NBO$7e-#Fs;ѕ6@!F\@uOf=,d!rQY3aSD|Cx Lr\2c'F6q0>4(4 m~ I S7lZw:6o=r(痭?K̀ކ"W{鉷|9(rV(a?%/Z_quVp+T~7toK*A G0D5kLC#TcX5ǡMpP߫E O T2 e~L~ɵ)8Q$uP͎ |QSm""Voz b;4!a=*`X,/GTR7K0,$K AXKߪASz=lQ!:np KMz/$9l=V.e.mHzZ1U$-<¦Ac)mldmHo5swٍxTEQ#{ uv2||0˵@m^cj H\pܣOw#%fuDW_sBl%3{zt!]?SY,y"a9׆гbM`LϺ6\R\Unx7cjGN:62$ 9B0Nt0 LtBNO#A #x4ڬIC`7ZաlPM66}bYpR@=N[^L|'.he\^% v, wd<f -'SgcOkxq˹&E7PQop}[=cfgFWҢ?Dm|oL0RF)<\; ;=0Hoߍl·(ɺ[MY2Hk^vMϦ_o <=#zMjeG!dIJыHG*u&Ӈ΢g(i6Nj8sL {ecrcYdp. ՍYzc+ Tƭ%vd*xu@6(V %(_Lk<>&lQy:$9@x>)-(Euka[JE ǃ}cpKx6)唧eLDM[/5%E[Zi]pD["Wf&iòmY :l~<>p,߰9zo;ZjƎthxK=D! X `(94X!DQT)8[5Lr) 7uQxRh!mY 2 g1КL򣺮.[:tQzm*W%I^n5`~x _f#~)O #8C"Ɔ>`Xj%Gl:AcwgbhXˆ-\vʌ:u1Dwҍ>V̎0OR8;8$ÿ\.uSglf 4H0&5R9\OHGicK]IyePثr-Xe>O!NpC I 5XFå{b3T{X}q>zUWrT5PD3.+`V6mAOXj]sUbvU ̎µ4 -B L57y|;Si[ 1{(l|,HfLt/Acid:HInEqILEH^nLyO\sS,cY;AWMU4 ">N:w6LӲ0mJId76\k!3z"#[ UIZH b$+'[+(2w'g=K);UoXSf,zdek8AeEު=]qG n7+!Bw421"Sm\bZWB/EiS?ʄabg@VMʸ@|jTD<dFbCp-|C8TZpkZ[Q/A'ORYAW~]ߏmq|:g;GY p:l'(f.\2,:_EfyG#;O$|1Y<UJus=<7h](OpTa) ~^K~Θ{μTOdSDh7{DM6 OM)F`iHȄUgM|cm_ 3LJ7!6^Iy$bˑ X"mc#;|j'J'K8|b[ bE^k3m!t<zxсjũ. A;N(Pg Y JQ4$s`aK>ƥYP,cJ *% p&]}c5:,Q0J52ɪ6v ̞p?:{\:)3qvR̋ 5gIVW0!_:rL}q}惁!|2“2 S$}ـ .C>eJv셥t+q!*b屢μ:3Ӎ# =}E,,LP 3R*<,)]>x1࢐1 ܵd8cЖuZ G(" 95|*8A%:(-G`<ȵGV!y.ⅩU<;|,x$вtynd myxMAQ+ 0F,E-9ܶZe̴QDۭa\r9;8ni `&yıA妪P^VNƂn9Z=nO -i釳Z4b⁀M|{3We=Tpx#'2D$d_.J&( RG:d.* u0ϩuSe T=I$ב-D'aiɅ_n|=[mXh7/WnRi|N6U͠@%Y ab$c ҷd#/]_֌7Jp)7N6ζS=OH+TFk) i޿yS3qr^ֆaG> [m9 W$j8#m4+nm٢vK&,n&Q#Q*mW=WAa%93j^9aP8:`P93pb5M-'ҒK%,.bK1{G>>J3w]{xt?V'N pD}u vf&? 6%FQ$Dr8c9 bc` D.B_,T]{о_ѦgDžlfl' SnJ ,?՚:JayK`+b`>. ȇՃ1I[`R *vʓ.GMڙ`wC\Hwa`7Űř;KIt"%#̨^'HNy&L `pI8;16b9XΎAu98HwK\hU'3>:gyZk[JRe9'ɵuz9t3b©ɢR=fŐ\+I7F/| ijq{j^;)UK ?S]fwn7XZXo @Z1Z3(*d w4K:5GijBIaB6i^\/Jܹc0xԶ$ n zC4A%[+[g!JMabG1->(GMQ4geg݋oLj, ՝MsE8#98/\Vmhw,mŇT&`婟A3pw栆$ S| `6'tFv5mI@),+{m]8̓; zHAY;!+<b‡Xy:=4fCyL-nn١tGW}E"-!*C3Sr'/R d9:!041gw]asf.ZΈK,b LZ2.RU t`<)QXwJ ٝzK\cObtg.GUX?Lt^"d0_ x}D#H>cg&{u: ~b&ʰd"Mv33bRK2|u^~nt 3HruAMѽ<Ĥ$8J M0Y9j ;\8@ !F= V&7ў܅؄I]1M6Hu'auc[09` RT=&f<ydUxk՚\ˑ:4p^{d?l^ܮnM"^ gH8}nJYaN3Vdez]s:υlr]06Ȭ jlLl`LjQz:e݉+ju% kLyh*jI<;Q!V,Wuyj< QS0Iru]jΔ@Vcd܋o M6ZN>: 7n=%sU.y6WߩcYmp%۱e(HŦff2W)5o  #C3@_:}78TkxC\ϱ-M]jVrduM[C/7X J6,c(?9Ld؃Վg[}U2^P' v3={4qۂ*;m}a#lX7cwy/HS*l862@2cp3y7JOxj?b=:^G~Cf;7jfP lǩ_~ SOk`ÔrH!ZāYP_PtDpQ nFCA=Q~KP.>i G..]6}̨ 2b{$(J[b[̂Nrp,-V`jW̤4ɰ7D9L#I |-ldߪE`6eQ y_4 zDa_LHI-L$3dv9o͜驻ƌ^8^DZ XtEu ߯lc=[Vkr} H:it9hu*m3n{-.U!p5!_v[g\[nV8 K.0:rgr5>2H9(N;TA d@EAY>||z$zE_{wJ#~l}I QLUy?\>+Q Ā6^9ަAれ=^koh͛LZcP3{Sl~-GEu-Y5ݕrX"#EQsrHPI߆]6 L[_Wʈ< Q2ȯ $$|O˳H[i dE2~uаr<%J>2P J\rv븋NU 5 l:ɽy2fl-Eȸ<67 ͔Eg\ҹH͹0y*PfB㠍08yA"ދQjEHGK6m5GNeeFiP5AU1:t `G9JMo: DD^/)y3lԿ f(oM-^dt2[i,7;&csLyCӧJ(\Q*[{FXmh7 , ~!bqQ r*s MaY^V (A =GhhV"}g:FWw*Uwl5I?7yݹ~S *db] ~^f9iњFlMpN{P5L#$ʏvܛ?},~=1R 5[<S6VRh9(Ifywz|/g7Dpp! DEQBP U}B'86C2#z외Fq~)V?,$Kix ~4i#3_(kRkW;oV6PLm>Sf9UwGﲆ8uG2"o;GA9{;^6 h/ܼ1Ce.1j.%5RtcUN֡nzTa.\y.mB g=9:E/WzgjY2.`R|vG]!)RE﮸1 Bߵ;sd\ 0ECx-T}vDn|MXEa :q66bW_7o 0/C[ ]r~BtMTKb~!%>RxʞG4ݴ\s&_NkgBgȎtju+[T3 0)cUm +Dŕ^M$gChMyy=OvfĀi/|'E{N.ܢ3>LL;ztD;mP ~\14X'ZZ;|:2k9#sQnx8N =D/挌0,n9je<FIQk|Èr+LNDg?V @ *v, =ն+ǥp)Z6jf/ȗx%6"nr,KbkO1yۄ9hAHWQ;i$  k۔#?w.}-3 |<>,zň`en.r&BP wt:!_t60iiL:WBUHwNbžh6EYS'ȐhDl<@<J1+l7md㖞I:ɪ{ HĒϪ2A @K5#J+XX@dg[8Md@TmNˍտf?}]> --hfJ\ד/|ڰNFՉz:k9rY#ݭz)jtv @䫔hSvK"Y3dc`VW'B'Jt9pE~H"֑ʀ.$eԣ{$yAiDZPT9hMBb0'#[$yu%Kr@ffg BcTaQ>U xiln:H~1Y<#Qz~F7#WpSN \(!o]\[͊4am(VFOE _4꘾<_ A8J=+kfЛ԰^Lpl&nZmҪmsi O1Rخa5 mFD֮L=(Fȕ)"F|/*>* U2$)#;p^*YxU 9qfS@{`!j8 M/UX]ov}OP博ŒǑlyN*ɼ˱/lm\? m$kY#uHxlyB8uӝ ,&oc~ٍTqTZf#7*|P*ssJz;WO`?{:k;1p֜56ʄ#-Tӎm]珲n-~0-8\쵺M@7PsW+2> a2 o.cC~I ֙:b˺80P6Y޸LIc$+{ϋCҹwZNaDZ4r~v%DV\5:s עb$ɡ\<> }~VǢN̕Y?|0d2J1_ñmVN[rV6apY{<01˾( ٌtب*|`\T7ճp}bWͪ*eyB%#δ~ 0ա}a_jG~Z5ɺt$ce& 8 bz+&Hh>ɟcMNZ7Fơ)j &Ah]|#k ɑxti2JKM$N.bAX<^Rw@gֆLgRD ԧ154=i2?X!5>O9QDGS궰VوJ4hM.&ZM nUV.fTq|PƎ _!vk0x*ɔ N25vN&ipkhmq;<͊w $<s/L ! ,vj9ԠeqqW^(nk]D9\]zVNsY0Ӡع7Edn ۭ#-Ļ% -aIuD8Y 4 mB M{^Y7KZ=@Q@u>h|98ۋjc_< \4k2Ԟ!Q9+ ϣE]4ig-"`r∆3;caʾ['fMʽ/HBv'dv@,DR mEf&8<ީ)Qjww fsRs6~L^(9G{&{ҽPh+M8V*ې.XPFk]AmH6sҏQAz.~@L1 zu^ f9gF8c j /IK4?a:c{qu \zP#n0Wτ,D?[`m0梻}9AHt|Q#}hr#| hQ59T2U `UjF##6k.hVQ5VTZ7TC` ВH[S_K}@<6d >"+iGbu:)#SKИs|U >LbcȲ{ d@GT/6q"⧮R5Yn W# >%!sɮgo7cNXhUa<ōYtW^ЬF@(0 /)0f6EWQ8IKxpcP/,;ҽ7n UMPo~27ezǿSil^z4{qȭ,/ ڼ[:`4.DKV̄Q@ٽv& wN85Mx>Q\׸9jj5CyftRo6_-5MՈ C(pX1eRD)Fc073"8>:%YË$rH/iK1뢾vQE-03W *Wܻ3lkЃGP,7Mn@ ]ög/6=)0~b)lfBa-q"l"Xg8$\<.|=2 Ej23嘖ݜ[&8!iM*ZYxR9ĨS*bz y#c;4ZWGGj=`lRv'*gA튔2/S'z.*,Q^w[7GݶĂLm XDy8@BLeEa]9&{HgB?mdslӝ  B?.tc0 hv,$񴶤v svSi pLR 1zwX:ceQ[ mx-/ 2r/MG,̞\|@TTUp}&z~d"t} XyU}4篰v[,г {a&3<# ,@ `NdYT/DoJRR$["N@hď\t-G kJz[J =˓vZ 0uI;((cm2Ej1}9SGZ{Wx%Odyj[*Bs=ۖ97d\Y.<5d~ogAw`50:ӂr/#ꐌ-A.či4* .LMh nMWU4lZJv0T`9w%wCϛQ%־LOs#6_xS{xmvߗùs1p-Rg^ifn< םnuX0Xb&v>8 @orWtlÌr$ K0jWZOV7Ly䅴eHn9ؘ֛G5o(m츨վi^֛$ 1wXmϛ|G6dXT8p*ۀ _T:+{0 H D_dy:Ѯ5!oZ@XS,菫{!ې !?kI.05g߆vweoCu_~ g/] G9UxMn2Tw-*M~^1ͪDt!5ƐQBV{6喌d11L!ad>[!V#5^"G?sRCPJn7r-͂$L{D=o*@#>րvJCʏ)Ħ)Vx{#C&B\E6nsEιWmDnr=|0,b glc΍wv=DK3\k`Efo0$MC44%mdPQJ_XPCZ!Ѕ A)-Yov؝"wIxgEI]$ϿN1=5"ª0,Τ}{'Qda3 5kY0z +iT 6檵zǜV82qIG Vj~(&Yӂ/AI.f Υi҄ABnf(cHw5`KA 0:,I ŗ{0֍ %V;(䦇뢳\/&>,r94JLG9Tq#ْ?Ղ 6rmu- fƓ**I.^|괝NGv#2iK?uf2 ⧀s3)س8KUo1NB6hMzxO-&N;K>Q \v^;Zp'n!/GՐYhEHNHEsb:;!jƨVq\XdU@F͜co6ʂ$n ձlnl ]n itl,MC<=1NgL]b_އƵ&@(蝴ɩy A8rѸ'4qV>?Jy>Q왰ޥY`˞TpoկgH?p :1 $ S;raâp d^1orKUg&>JA! x-PD2YC{7@W8197s/GtdQeO[3^y$Hmb_4T,;?V(}?F|[Ebk]gXLahȪ;,9B>;pQnzcfȂ鬷FJ y/#h3ULG`#˂Vƺ/_puV#zԪamūX',>sznkpt)GBXҴbs4Ry Xc7Z.kwZ^ҳmCJ   35T{nz68я.uexv)5lO`T xjDgتYC8טގ=~Rdp5|`@f\C.^egi}aErk>kc=/D@N =Qύ"xT`8g#{luObMi0+F CU?2?;~hx6cu'H` ; W:jlF;gn߻XC~E \rQN|c&J] 6uΨnbF# ^ƿ\BQh3.KoXfWq!; ׫B+ѧjmvi"a-Wy7ȼ0A 7epc٪5MˊAMJԯlh.O_`ģ^JnRP o3>c.pCYKIEEC5U,BTe b4[/S!`LND?iM|N{f6ط wq sHWO*$dzUǡs.p>n;Sn?؄w2%G5=- YЉge?Oh#BK׎3P}AruYB%NGΔ!n?TSLDd;f>Ϣ&)(^!.UwC켺ԅ4BMu^Dslx[|tPK˃Ld6dTDŒO&ЕSuoJ'y'CsE\wvnOͪ#>B{%h_$z>U|1?^R Y\-dM D%쯋g.˪.XYN?;m3OË HW/H(zNW5GhY@aRpc0 p:\P_d &rNQcަ"^O=z}O +S=o1\8AR 8{_BCPEe>e76@v+~LR%w]$sڤ!S;}^Sv EQ;&r.7?IbQ6S]ŲU3TGX#=$]2軣iz%(i.Kv)g)*UQy*r'}uYzo E5~_!1s^ta DI**~ݜg>sLptKG/uט9#c%h:P -Qbkv<$w)*y0~kJ5\_?XZ/b%t#-jL\v>?q!nM̴RUEЬ,t)4ސwh}_hNӻŻTX{dζ/w}\2^^N#?p-_`g]XE[^ wBЀ~8-$2C6)p͹ZOxK(bb,X"t}IB>h$__AӇxJ%18](,lcO~JS23EEu%Hc!;&8=͏MkO> j&wRSO1t'؍^G/>{:tʹ)$'X | {Kf<G ha |Pn8LL]>8eM0-@1Y Ń6cy ޅ^GZ/r'N'S_V0:HY.d[Z%Pڥ%LZ/ P&(x:81S >(w˹iK?(}kxۀ=nV@ Pc1tυ0/ 𩲯"WӯOM!y kejY3{~٧YڻDYgeMԟ0#sbu&yIykiEX!ea7?vf}Ć])+v}&|丐1Q2a dHԥ&XԈAQ()FFwZCw`{bjyyf&FA^^1Ev"P! [B,s~$#nt3Th۲qs}譻UGDF8:Ѭx1yI4 TY>,sbΆZ!#;oE[~lAInqULXk]-,R6\T0Si;ޞn$2)wa m!j*'d ɈB9Pq |"u+y.Ν*^D}H H rԧXhnaWvn6ZL  0qDޏ!e?D^c."13ԌS4d|~/7U .҇qT-]@ skS|2)K]E@L@J$M_{eS@mWK?w$$~w2C ᵼ4K-v . RT`"S,`A_\Ф8;FZ>Б U^-j#e2q*SDTMo*y_):k!={qR f,Uy~m|!P{ IYo۷_jFy~T,3'KNG:w^^%!20BVv;&BX0*ObRxHbui=XV'@ïcapٸ3QfB ʱQx6u}*ljg϶8ŝiRj8Q0[mH+IAnMLNPaL4]E_Ҟm6*8shjَጉA%fflȭ){thF6 a_C]Cfp 8@%Q)zp-ȽmWH@kW L+ӥ-PC^3M6nHZn˱EPjTk*yL `qY@||twlG.Q{hehҶˑ{UV *9{z3R6,D[,o:]P`pUˎL7ClbPemo& &}w3KGh{gPe"x6u>ͬld"#F{&:3IHL<bnph魨`ױNQg9F[>+wLH`C… j+#Kh$KF2ˉ<p5R":о݄ژ'9ώ$Ӳ]TYr־N\Ap9 O~L?N&TAbȖiQaiqGsDdX+i@7 YDpqq๜feL$ډj5"$N,[Jѕ{I,"7][M)`q:jHwV9Ǡ\=J V8޻riubV=꧗Voj!b#\V4G[˼L^ٸg+ PL$ 7cȗ Vo`>3<_0J1lZ󯲉uc`&}jD[k̵Kmվ>iC*R39>'g D O8qj ӱ fkcG^"{OˁUnBiz8 \z @`#j|-|؟j;mЏCz $_d ST񔿠axJJk~!&tA+'E[QڲZeȝ_?@E=Xf E^Gc9ڨɫ:]n2Xv",g3S76^dĜ<3i`)(B{ xDm㜚^Rtγf}7 ryZD"MtYȩYd-Ύ(W(X!:!K5آTf†;Twi3(_ް)(q f}0zwRI10u }*&#b`?޵8g{cXaX PJKxɢ'qm.y2Ol(Gi+KwH3$p:n17CpM.c0ܵ >mˁ@'/GBX8;̒62ڡ9Bw(Hv5 ^W8.KOz-{п_1G4(]Kg75ƵK5.to0.+M 1]" mro!5s;3T[_sY!>Z_Rq W1ae,dĖ G (*}F&T~ - - $i**eMnI!ZLE[Qۦ(x6!yFaquRUYoAM(t"@RW=v|ba Tb8XcU6>;%JG ?IcMҡAKycڇ~9@ dt P;IbuǷpPEYGS|(˕i0U4@…P"Rt\TߙN''tR$FsvǿO$qiͭ67g㫽cKQY9WK6n,,WSI0FME(T9zۖ=N+!@fEiNY{=qS]fJ|}O =a}KnKO6?f\f#;\ ?`Մګ RNTMm!}!@A։+%8w8\xbSL1q& +6_,@Aw"|5J@OGF/&$>AH$>=Ppm0XImLqۅ:Ru{-?>SGUOu D5LXYc)8Wm2OHb@׀1c0[aBQ$8s- 4N\Ls/"S䋕TNq4byMȜt8N္klbwv>Pe4a-e`@f2DH̜떀a)/jTf?;\R=^d1H΅0UHZ@~ B=8]:^ a{f GVIanY'nQUɋqo{@?F  _MH_~d&z BͥEA2, a.dqLn`>~V"}p+)),=(-Ũ!Gq'PIptgڄdC= 5egZl 0 糺ɥsquSwSqC`whݭ҄rIrxmʒ0:."wIgZj Ch O'߀s3U>UVF@W[s#붔IR?N7w-uH)JW1u̳ Fo_RZw>ڛө]?;/ҽ信 _$1 kXŘ13Ďԅ99K_B].U*o |%}YD1d dxGܯlu s06Qt?&_Hq.jn]<Cg5\mllinև:ݤD _KdmSJ%|ql:g%kc0|uCOο|]͕uslB&GIT<;Wņ$7Z8tgk+T.RU^B- 7o!}.ɴh`d\YVtrvis3P~w /;dZW 6ս1 GԋOM!t*ao GKN(eC`qVYM80/ӡVoX_x qhtGEs5:d{9_-d3pmě>6CypBf ,ߦl( 9>׈-֓0Wbs咷6?\)g򸶣-빓z\M2Yoo+QA8E/[gmf N#C_m$a>,@Yh4%4@FW(0 d菩  ;upn_bao벿nL  lOjtCJz0:SSȮ%)@%,'A{3ZUo¶xYjzrn`>K9tO.dkI7[\~  )Ĩ dTAww$DI6j*H1n^ȣGS"uw*<{TL~ x 4JJ>w3X互Y 'T(|#1M^A_>N\fH@9bI&;1ww>O8: .0<# Y3\֩M@`Zjm|>!!zV4MKS`lU VI3T,*t1ߥj lw )Z&)caVt&^MiNP9οQ@+ayusZr5~\\>Cƹkiy7̻:_p8s2*Xm|w<䜣%B[;=^Qf;$6PҪ[AЙqJ#oE,:QCj3D J 鼌A[3)bV @XՕK0iv@]!u |b=99+֚8|&"*@1 VM o75pr|q9 ?|1 L Ⱦ`$GE w6Y a}1ɈK_$L_a~MFCႼ1,I#YӁN7/6d4$smŠKr[cj;37rXq,ίflU59db"@M7(%'ᰃG7άHUqc3hFlՔ9l=B3vDy'NY@$Ieh<,siʁalUJȘ(_IcE]lÏ-&4ezZ[4'8`d>I vyn+Ϝzl_lL'EjPƇF5yi0 )qX>#H,mUEG~nbܲ|ʃCZh0,eulWH5޾vCu]PYK;l2/uj>w fkk=z|&I/xnR]R">@!LA77G!٬(A~IuW 0˺7f6˂ QP*%hl?J@kg|ˠh:|kMWm֋z7U9Wb oESt-]k%EmKPle)`FuBJ(UƌbK3.f mO P޲JWrTumz$fz&M0j:hN S洪8vb6ƺD').!E_삷_(VA(6lbU(!Z[ڮxpS))17enぱV@Q& %׍(n;~C3 [ L׽u9Q}ͨRPQ_&C_Cvu nx#no] 7|FBZˊ& zMUE5ERR0PTPM 8F3=[NGۅ,F361 %|CF=XOV@8'sx|(ʃgԯpCsUQ)9`# l''{^K .餡XZ~*udOݎ]DY+n$x5elܭaohy҇E_nB^jA }Tì3 Tm3@dXP14cC̻< S!+`;pv36D"6i}z HЌ~kq Ӂ>?PKwHbmdxԍTlhc0nWF̠62gqTlj(nPyp(5j{˲e0Τb.NƝ  9QF?h0 cB6ZݒK9>'vֈrq|IӒ8/pjZcǶ8&H4̥jGÔbyV5rIź&N5];Ƙ …NOo `Ҟ`}.=F=X "JuKm}sI}U[YO>P0;76,˻`Q.dSWI,.&!|:R`r x@*RaVfw\פ4u#-_3) P ;䞜]v;^)*ʞ)i¸uamŧ\Ζ|hRUy} &d~6NS=82Bg[][/g4pZ-)ӏ%݆ jKtuo4bWdC9݋9n/v K@% , f_#D ugkI0U;_ |vL_,R-8g㱒;?T{*?|i2Yg=YT@\D{~|[ĕ,$džׂlNJndoʶMߡ`sQB2{a_,ft KV})Uz(YN9?IJeY*)k%\ۄ[Ğ{C7.>Iۛc.ج/`/͟37w/s$E/|E] zMk{QFrDy*gy'@vD=j8F6`?G^Hd] -\R9`оz:W3 CvSojÑ> Q\\Ȣ^6⚝̗-uЈĢO-v w4VrP`.i6J" , F'gvjX$!y8bfZ@خoWB0m/?E^LƘMKkU#ANX@~'tf@=J}} Pw|2 .oZa#O}CMPOօ QcTfrvuCp.#@SVz( ӥP9 7DfNAJ+"@6[ft*/wM< UwL%/4P#HN?<9`%X#tVco7ɼe\MFJ=ɅODѣR&hk:Քh3|1M;c$U1.Ue]߲`a]^ FȂKEVevNAj;mz8.ֶ掬UأsSB5 ]0؇uR`gDK3Hhn>ӽ7В$u1%dvQaMp{ҬJ(2GXm!7Q`2kԮ-bb@ T{l,?]hM\|b47^(V])UzܲqHzE-a VY.gNn5 ./ssvZxJdLك m=S^IkD)sO`R8(Um 5c QqtHBp6wik[Y\|NN,P@%|e>bn+J,[SUL\\ۆ|-*q$SqsɜѨ$7zyef'ErDbEF"` |](ޱϘ8E\+y1\r24T:̭ ,51>Ǧ6*I_«vk iL}naV7\!H)0{;p ݞ|gG7"&ર^Us:n[JÎ+;B4yd5e`ep`R3/w|\̨"Ga\3*gv, EEFղ;AƷ>8Y[;_\#^zv#w*~s( l`c G/n*<MXB>Ar/,8jNT{M_шRYj=ܱ:flxX,J”N}ź=;0_/mceYCd;0.|rZݹŎ,Q)w_+Ѳq4gR=afAA㊀dP%^sNi97Hv'YD9ԯl>D"#<*qI.ey$V1-x[%d|-2aQTPcX?ʀ7N"9ֽSf|', 4InEj2`fF5Rt>Ehb_u_Ulߛ:x"mRbP1d x쌤Uy0tD{ޔ2܉G;àѐvdo:2$59`w?o>oێ4JF> h_C4F 6v{NA+@ߵ f7/=5, px;9.[l䊸̿PVqd]wf'R7[IWa+ќ[BVh!9D%r.sGP[C쒿'cu^hq(9>*h !4Q=QYudq);,2՟T 'r4M 3>h>N؎e'r!^2t:4rתߐUsEb( "1C렚ݎ }CΒqyYgw~i6~YdG @BBaRvM  Gt҃4G2#s=˲l4au^‰]d.]tF _elչF@@p⎏l>tdS+AV*]堹Iܱ *8ZM\bcZȾ/yMl$:(P7ъȚmk R^UC֭2ҰRʞ{lQ//g|=.lg q,%AF2IR`EF?*hFW\@|n~=F ?7wMn[Q20vWչQAa 6WyR>gAfOW0X5vAV8Z}3k3jz{!.܋DN6.`@׀>[OZ|99xT1 IJ_?674&*Q\$)Cɶ"IJ'Bʫ-M7-i=,7ŏ9z@_yTRnLduEm+eXZe H&9oT?լSR8d|kl9R,4"q>e8n6{38iǂjQNv0C`1>3093.hGy}55mTUAe}c5&H:U3$xD B{J p[Sy07d,LxFsp9ҜXoؐ+j % .Œaa1 9J}Z'؛ߒQ)vHS 5g`&8]"+8NߧԌv ܧ}W~8#ۻfk"M3C ,lTK4~3u)wE?3`4-{6 N[;CFkf| \%@n7Y>͍V_yکR Ih%*Ŋ4nR u"rHT`wJ@M"ܼm~L|h''Iwo$>pBgMV(m894kGLlmVe0M aˡA5mE{ءm ֒*-"OU6Bǖt4c@qcVQveCtRQ1JZa \8HO/D%q+m~m!1`y 2+>+Jw'OGPY 36[(bNO@!-So܌?w0ՊzttP,w9 bҋڥS~ՔLU0Bx-48})[?Ջ8Z+M=æ[He?؈i' n *EVex2^:>[Ereڥߙ:><*µEt5iyqy0.kك ]?uS &X`:!prf4i ti =UzjOjG5ぴ"L4)mq-i94ICUYHbrOK|UygFB7@ul a1ߧ .a( HD1BXƇS;7Egʕ9a27q k ۹tWDf'/>ODޖJI$L~ߝ"vq S?|TaeT`DMܡjQc"[tCqE¡o,f%۾jjvUJ);j2!*hɀ"3]gJݸ&pP^~,P Kˤ}lUsx my{C@K녩OS(" #KOSNViN4xN >ϫpM߰=E i_<}0nYU(`˒ٍ/65{s@(av~M^gog?9s#DamZ4ɡׂ6,'|~9P*r1Sl5no*fsxoƖ Njl=1!3kf:§|G`ݙ^Ij3cMUU{ک=xڱ~0mL~moG}G()_M^~g S3>V~u9+ܑo1<tolhMAre7h-@/lӿ.b! *9ZB~噹{p4ra- 2`H'9 6$u=ʽ7>s˪L%H^VIO}`ȑlѳHJ( .l%4k9FZ [h:ܿF:AXrŢg=M{LXuC.⇪aI>ފ'`^QtD)Ȝn/P{TS8}2XXažXi%aӭy6CHB)K?Ol@>MQ?!)eowKZorcjm}PI[?sԺ#->!SbE Ke O]+p4qr;Gm(dy"r--9|#, zwk7O V"ESF46iLDwY:]$e+VS$SK"RWS0O4Ze2Ĥi  IoHX;QHw רt>T6*NMMtOiM,thymNL/Vdst+D{f'ԡ>iB4f UMKYMT'wC~jZ͞w8K6#bo>_9V%y!/o/qзRjςE.Ϊ&6i 6b_J48y," *⯊B:O領r0tM=-#1 ]iqi%+dҧrIgsngՋ<xmܻdQh6\юa*pWٵ&f "7D >AS|#(` +¼pFn{28T^Ki:i%{|pjBQ 3S|oOB +NxeCc"N~v q+ qBr[2{ El`EX?پ4'+r' 0 sMEGF_Y~!.7؅TC^#FkRXBf e0|`E[5Y-`N:XAX >GPQ K)P6b fxp`LƤ{*nKŘd&s1A~t!}Ä́ޮP"9? V>wn\ *#fngKi7/1nZ({{:Y=s88kz%ߑjKX-;u9wf\1gz*%z3\i9|y>oca(&: hŵR}V:7]9n=`ti<зZ*ZnGTR>Qe?joJЙ0ܵ'K 4DGScNMD?7jR{{;"Nb"Zg ?TX 4q 8 ٌežt ayQvϷ3gtҿIg;g4U:,ȏwu;HZ8ϋx綔R7?3R;IOŒh ,ܓ䁤0!+`vR=l/=[+B«QRQ׽"Wc 3 T5V|NCqQ!sQ;<¡aL2Պ$)xgBLEˊt:R`a܉z_t%l̓*y݁S;M(kơ3}4 C*E"7٪hN#pBNE]-PWq˙2;-Ay!$ڗpF,w%Z+CLi6nLҥb"FMvɖ Uܳa2vOAn^P:j03J!`)ѹPMfQ]w+L#Ͳ0RRL˼[aԚ2`PsC3=aɩJj.aH> xs=? #tkߤ{*v-]MT޶ >* k S2yfIkq3K^Quas3ߕWQAZIC #&|>V1GkB9:$iIJdM_lt[ >[kWΫ?t;+/mpv;RqjZUܢ/ѯfz_=5[[u'<@āBvͺ*&ZwA5i2~>: A˗(iHckz Ԟ7h :h{#Oj٘Ԍr" |c mL_8K n|x<{!os@o ݲngvJ}mSRKfnHʼn)Z߶]N*LCo{~G aBhDDu,6x{?s_L3j=3F` OUYU/;AQ񠧎/'\ϫ?,ֆn>q!l2ҘDZT:$.]3V%K$ɀـzc+1jN$Ts^Y9æϫA骾1,q&iTqhՉi M^uF1ggτM5^T[d2sVkOCi0I1~eȞd`a]'ۥęm0(0%9 ((sD3c}ڍO&q5κK7ïm2bT3PLe~HCbI 3\>qF&X?>APX D:)zcv27]١Pf[$x37;Z+=rdtk#:v& )~/:!JeBU?K)6vs~; %4@@J5Iu<F}ߖKJs%{ҕ±&qF-GAi+]4յ_ETLtv S~>+Z/v`I\@m-{nW'wΨV&Ԝ568ًmy&G,F{Bdk.ylyeu w}X+o~d,P /s4IMD["WM6sO:@{wW(xfuݍr!6za"{N-DdK=璢BƂU\ڂ"Vv"?G$iڍK2G.upyF0]m lAįk'o.dv&`5ne|˲uOw\m8c2X7ቌ~ Ӱ|$L")`<^U;ϛ`EJ3v\e3$@~{r,~YVt5;""-kZԧՋw@_&ΎAu,A?DcVCD`3&eݚr65T? 9Glwa}O&I`VYxM^,g0#,RJdRw ~ !>nu3]AJ^i\ J0.r!"chIy"fń,`kk鐊#)tb8c>dJ'1â*O8QޛEpSݕxӞpĩo5h& |9]:1~aEt䅍n1H76{,yƉ^o}|($ ,e|gz޸>XIf\ `\䊵%;8ne?"PY\)U5{ 5.ۀfSf&E*[nކg/|%A]k&_a+!͆=coiw*w+g[4ͧ.>8-C1d_כVNѡ o۔bv䖶nFQpk?!l/4n ~ yȣ$0"zO[(/,ʶHŵu_q g)I ,Mo-pY4C#غ}&8EuWSWLJΈh !zźD %Ro! pHTyJY:lQ@աmCM3rj .* 3jS#V<[3?g^Df6gR?k|Q7"(V$Ŷ0TVSpٵojۿKZ. T*LffZO ,"@1hICEmZ℃t2̄?{OT, +31_拊4 n)bl&\4m9&5X6Y> uSUL6s.A:^2IHD])롨2 y}#cqPЂw`_*A IB?үֳ͑rtqPTvwZ]u Oƛl_b|NKZ dD5Zs fmEk!Bw5njj͜H{TKAv3ICˋ}jՠ/`sx'|fH*/Ch+LԌ/z*֡o;:<ާ奎dCȡ]NWT5p >v7Pt*|+ˑ7uHj!@%ۻ]yElԟdŗX)q@ n0#Q8oq~jma39$ԕIOW&.ǜ@55 G/_,ޖ]j7bnïBvr =hGD:*.=5BJwGtBY+YܵQ'KЅ.3ԕ3MD֧,o [SG6az~Cii#Y p .ğqh>> 1ʇ˥y+4BM&2byv qZ4-c.!;nncFDPCCLןA@rB"5$ˮ1FUswW9Vn5OR )Г4EEؘi-M3(+6[,qC lhђ~xo:V|C_RM|d+DS]렠/>b)X7{O*ewam_rNm!KNc8+z',)"L7 b:bx浪w!t[@}yei@onH1b /Bg)khī!^ SR?>); F {NRģc98=hZ&m>T:kޜń d 8l $6D1V[-`SK}-A>$܎2r[a%H5AvY_ۂg^$t>iϭ%]>ha/ YÃy|Ҝ%ۂs;@QA<ز~\nDQ)MY02 y6@ LѾĵ g%J̀`N l¿TBܽ@R+ERwUp`Xʹ&w-~g%=ZRfjMdh׈;z^ShX$BW d{))]O6-m_#y*_Cm60e 4s8g 9wuRu:NٸxV@UNAtAV_=g:UqT|6&:K)X?|ǐ~~<@ҕd2#{2w6_,l@"$`QtFX"_Z?*%U/hViO:9C?;8_KEsYHb檭œޥП}I[2VԖMg@XtPLFj )ޏ%54Pt.BW~]ȑGā쫙S^p+kD8HO38c{//&0Bƀ`tפ\\.κ3>ai&+"xFF ϩYCU؟F;rJ Q:f*HE6# Mpĥ1YԎ)buwsC?1cL-0ZA[P[ 5],dJmJU[${  )EN؝e_2Mѯ3T& {'n0@Ht2]p* ǵ({ډ("zl:;2R-v'tؖ7ɓ&xxH&QB=uv|P*ԳCE9d%[U$p%ŋ<2+O:2( U:18YQ8ST㵽DE7vX#ADK-л6F̥g)|(D!++E z$+bܛ ,wM5yH5/G9r+K{e_`Q=<K y/"F` :(]3=6+q٩M$tLEă<'J%[Ɉ2kCk-% >9%;7 !wQ 4[R=22s>abL6c t~(%;ٻjة9 V0,tէPk7l_c_ N㪰-||o Zh˄[p.wϒ${N% p,wxi|1Zn/BG5 &QT3ҁLT~.^HgA&{vl<W̎$;; ȝ=~rCyx:.l[gW,`QsG34o]-j &ےNɻg !]ٲ}#86Ehh&9|ۼzmXDjl?\m׷6ISm{0uDƣzDb}wX*: ,O `˗TL+&d`<š`k9M|"K$s;&6 X)UwoN> vE&G^*>qh>uCW_ cAnhpǤ~6O`ܹiJ=#8k]ī5nD$l\'B~|# j/b`ˡ"0.ܸMA,_rfFdb6M:N9Jmq3P!_ޢ;ொpc_4j"A8ԟc8dW{z%T}hKCn܋(b-F mmEfQcЍ,O]IWDC!y?3La#x MG"5JU]a2VOfB \SFoOe)fTёY<wp Θꌪ8>QSEe 5;FT&R.o)Su~}ݛYH|o);r^Y9\S#_.y*nweNfzIe9rTfL5f_~Ȫ t>B9e]~7V@"2/.l3ex7Srt|LlNၳ4!g^$6}ҼR`pon3̡WsdKdfJ8R^T@X.^Uy.C}\gc%~MS9˿|e9}X &cM%~q.sgڼwL\2J5S\d4J]Ø !/s{-!zw]|i~P(%gh҂`A@r?)5C&Xw`1Wauq5ةX"Q@WG1!A1}½r\]K+e\4ZtPF*zŖTh%׵}/?%1灷/yh]LOXQ}(TL^MaL3YBr+_':+@"1yK^GlH#M7R^wtVBeGMd7 -Jo V\^iQ/ĉ%G(OZ! Ẽ dHoZT%7ނ#;E3HT蔃'P ƣ R)v$~?I1VLr9?4rχ7e~8]` w>nۺ$R=#N^#~+p7 %#6ZXMu@dqeI0@ǂ<ůWض*Sy5ٟ;G0.WG MO[N$ ي鍣H۲>iCH{pnSwy#%~*hrg9B$oz[D}&ᘹ>m^g͉"=jx})hDomXbv?V~ÐSOk1 O!Ȭ?]]68,"LRJ~X}ږ?yD)rR ;x/D-eDng f"TS:4#:)4s@ !;_ oWq0Ϋ-"]1s:U{,ad(r%gfPg|%,`v,PM4 zsq.>p?^ }B)q/#_](Z [F.S,-4d$vY?yr>[R_kFDvo'pm>EV*vA>~￑LCRlPdf59Jk,]Dr>>?yph?<8QГ 1ؕqI/kVy4;Lc'}?HQzO /d0E#w pKMRϺ:dn3Pz}q0GE \27 @10!qZKgD_ 2Sx4gseyD<HB]8ym@*j%Z![%(%bBVhk6 ͞3uGZsYPRHdiW'uTHmٷ/ Gt!IZ'? :AJrHOVmq*YeoT~ `VduN&}E^8gli?haSkkgSxpqh@?07 r{R6µ:uЙE\-<> K[#24Wm&ʁAE'BxY7„*X]z@򣺘v8ƘÊ9D'OL6@^$<\hC$ANtqo0"-gJO/'uc=1@PS;gr85MDBөh mCӓo5" f<2U\-G3㳅f+tNe)$/=ө c0z8X]jv\UYy|^ȩ4PoEjhhLVZ L\DjnFd2dw#6#p 9 3 !PH8p[e'Ca+8~rM3[]+J*_t{S*hޭ+=c2*ĔسFR_ͫ°[:g>ORC]؇;B]t)%݈yipwޢ1͘Qp>3V.f q8{wMk =禬-b!TU{lԎV8"8 8xf=:hEH[gҍ "G&"#m<[Wd/5v+&J%elmP/ȱqi=^"ך!7D5 _;ԕ%)繧wfE6>0HJe8] X fF]bTZawF[]>Y';lpg#` Ȇ4F|>:( ;j4U×܇tC ׺mT\̲TɌ7|y"q6.nӡȩ|,QVi/h]lҦ %ZkԆr#{ CݍH9ȶ6٫jb_W"&*K͉y=BWB[5oc ?8ݛ{aMpEQHxp!fV!;n*tn,?+I+P.imtШd!&dxrt`,N?`8T24wqF ƽkֺ+uP`+($CW֭c@ ovI@ńFZ"fڗ#uB6Чvilwlms˟ZQʀ֫MŹP|M &0Z8.Ѣ%}x_ѶFSޖGçÇL>5.Qu|RpKZCwط޷TVL2(gۜPZeq 1[) ~i䮑K,ކ2z}sF!V/rۗS;bá[ywQy9Ͷ`|`g ~~o_W9W ҁ Xqp8e YY`^*ZV0빐cusg$*ߺ)[B:W/K~fkq<4Uu/U.۴E >pAM_WQ`[o6svݽ:PGwvŽ2غkSndv6 dC_7Ι+}tL(w6*%*mVmڲlnBX06~2 UK@ۚH:F.UK@';0ߨZ nշJkXѳb2KWvۓlà e81BeCB.oz:#,Zl>@4'gpm힍@,Dx\} #V_bu@k}Cל߼$>o/jG%4Atn7ɏL"с5iDM^Ov|[`qy&IfGy;enpP VفWS| љV++&9˝Q/K|L_AѢ_h%G碕LG@cӛ}Ugn%BUO޸}Od=㑚~觯|@$Re)8wϏ`"l\,D j7m, wi?QZOtL/gv*+EHԗۨU/ s9Qg)}gX\nI~٩Ƭ]2SjjY]~l~/L7V*[sol{T. 32iT\W>?j#)<Z;>DW gwXn`q=e}Hi_X'4WB-6+߶ՑSJ?8$@ؓPevZ2F5'f`|asDy/#V:,Oo2&vicW|5WtyPYkFqMAwDR/D7rRni,UK ;hÎfv~x*~rK?B֎p5\N`twCS!DOM0{mu:QV\3zΒaO0J7z>du$ybӋEMt-2 S{ yH^Oq v8`Y;C;te~ mw-)6h4V .Sf0`(X>:YPۇENYY)ou|L( Z?\?$!,R` (W 7"t4 ) ̦sEU!mr@>vĔ|!H<[ȴi[PA!>|>U9nWb1<3u&86x`M@*߿/UQBR8Fτt:TۗUj!q̛'qahpDy")M+qOִR1ێHWaHy ؝N4LRa!뷺acf2^E'6p'PiLc}1_{b@X ojr?" W9Wlcۗ Jn lLSN럓V]KWſ#D5!2X(AgTSנкw5~"߲7TQ囂)G⦀70!˕PS2@lH3^^Bm-N8yBb_mȍpsv9 =Dה1nѲ3iٶC뒨mHb@x׷fn ̞4W_/ǍySXA1`ܩ2x Ƅ^:,+|RßtO`/"0sYjɁ2sq5쀠CBlx^u Tf}y󨅖i{_n^K<_|D]<άU'FQ|@ nv'Žg_{F[XN k=E.Y>MdH.+襼]I1G}HXZ:/;!$|T}I ^}ܩSsw"/sHꐛ:5?I/`S3yS֗8< 77ufFO43 MُAoGx6|uG=^ŏx)XVbE߆14KhaK$j.0PG$]X;RE(%Ѧ j;ya#wjndNhȯ(f=K$J6M僪9|Qd/%0J0)3?2h@0fKL<3遨g֟IA*OJmǽ[.jDG:2fvgKb{ !BN'촦U]ctOMz0!{OsHmm/F:^њM(9h,N UaUkJd2A,lЩ^rҫq0כm 7\P9DWVpaW,|l{h` 5NAxzhuN&5]}*oLgO=? ^ٜuӬ7짽N(GG\ui"{G. 81YZE\&&nZKEwdM?/AgV/muU-d?. ~ڒ`p9uѱ;(!aq*v<E &ri +Oń'^H4S#8X?暋$A`T:ʕ5í@UiUbQuEG]B:[u3jF) 5R [Rսتyt j IrS<2?B+{r݅y\'uu.u!r_@VpùvnLsAbk-s yCq;Qzd (ucDTeB6,eJ(OŞL٣|wɡѹ)ҏE 3x ?j.1ʟΚefj9PR]^߄ ( Be{BA-ewǦH= .$Ƌ0˛J@-Ju^׼ihxb0q~T͘RLEM=.qX6$_p^޳H<'cADo*ע,YgɕOG:Zʹn'.s0FOx5Ot}zC>sEϵdOy0YnDSzgcs1v<; vj"31J7Zru_*͋2߹?&g94mAtӕ,(WjDFW%/GqvFQW_YtCe)+e>s}Z#]F>xw)71{h&i:-ٯiv6I5CԿh˝U9fBD?d>/DnUr0Eĭ.ʹ=lH=ɫx^=U5=/N]9X<Wh +.ZKP0VL>s_;B x jA1읯<\JG48/`)9 OԞ<܌^cVOz[g[6(C-*tܫ{6esp2b4n|?BvX'j;(\9ѸSOJ̿5';fcK`phbT΁oprOT i{[z]Z&k' kHUHAܚ N̯$wI$x5Zc/<$֝1#9/ ("HJ{AV_נ)MP9'9\hp]fb$PGuc^T '+6xLg1Du* g.6p͉X䒂$oUuy$" [P~S-&wa54!.nճ{4#6mvlݯBA AhIvl9<  9D OU7t1KJ<+L';Z@YBNAc+~+_JU! 9j6)YDXO'uU]9͌OAS}0XOkG%b]Z⷗޲y'}̃$Mo`~kfuuABǙAT~?ml.&j؞><|wwzQ($Zpw{{hexT:^}$Hv=`- X(I|[HřhJ mV~*73t1Դ*tqH$ֳq,4M"[&+%.ğkڣȚ&ޟJRnRIQ2!rz|w* "\o㲑+ܤ-pr,$\ iT$ܤ_rAn$#vQR9F xQs^ݓlJmjl4YRItDGg㦕}͗D m9tVqߘ,׼%2*|@O@3?P7Q -+6o BϚ>?qlcW8fJ>AM @t%oAF?,Uh5EENWK0 Lg;NlfUZ+".0Ȝ0.0"/z`[*yI VƵ;E'8s|o |ĝΘhZSKwFj !fX 䆵<{U==Xel^_ \^-<6 xX&e$ɷf/1u L4 E0%ؕ8)D c8zʢ|yO? e|·[Rla'sj;LPL(@ #q[jV!s^وIA# sYj w; I^l(}&L)Z`oQ4uӉslۙԋgATBAVzaaTZNpɵ?@IgvgnCS5m%_/q*^iCg1i=n[VQI*3.y .LڬE=9 ;ϸ͘_A /.ˇi7C[½m_u!RM-C7x> Hܷ )VA"Hz-3|+&Ѳ_': /A:Qȟ$7g7₝u@ Zl^۫6!"F(n~BA2FT vJtu{(5z 8MbA2ǂΏJ W'vʥ49SEr7(vxO!ܫ2|OuGKO,XHp gzX]zo|$o?(08u-Զ )WEVX'{!:N95x+Wk|%.&hdLqiQ$s*ha˶ߥHJs^ b$-5fiNJ*hGWanM$綁;u^Tnm~Ed_6pK;]ps&|&}SI)kogL%EXI TolV8)B p;aG. eY|ońW+gÑ#QQoB+H~SB*\A2Bډ|+"t*%qy)Иg>BԢp9 jB3O˰C΃i+m:߃}@Ɏ;9εgbBvSJGR+ N ̂=Coxl̠ (OJvy)H[^B;o?n!w?_aD>)>gȮgNe4{dQzW\QɄ)eF֝dJMCWɝr8. G@.ΰcN3MdMGi?A_(S4t Zp^n|)?׀ S-&@ ߠi\ rQIE^I!Ga64\1HwkoRJe@Nz95a9r;EWCmeX- F3\?Q밋3L7ڌS9B9x4=R˙+^,UQ!zʞmF.@:[mJs.j *s _5?=Fl;rqZ1JfE FAR|ͯmdܫ_?^;p4E `1l )ܵtُ0vm{CYߞG~do8lVitG6Xi5"q ՟E 43.l` 7ez0 v=ʻk&x =\A-I 4?$>pxv6y+35Wv;rsjAs此v!Ex7nȹ‚Eӽv۰4~͏s}44 ̢4R\fUk'L&]v>Z˿!7w,Ew %a MDCct-RX@_H Ҫ/|yJ|䪶|aF*'7n<&J@8GlbYyvz.>iC?@m<4#tED@3VAc3%MLl]K"En)A[u(Du$z ߒ=E*5X4:-g?30 Y)iޡ$sRBFsq:CLa ._.]Na WCZCK|!Jj2[@I/A]e=`_U@Xv:7 EWjjVk0C)mtS 1R'kqXçGD'Ga20tOڷrqr"SU5Z ᛸ@u LJG0uцȋٹMknnVA͹0zV^w)s%(TV_{CON%$ENYy*8[?-6. Uv}qҜT/=~nAs] 5f;6vW;obt15)h퀿 NX1{4xt'! 7n/k9wkI)ZۄuM{$ϰ2ڱsFx֮Պ7ʾ!gVo^;WӢ4(:B`l,X-$ V *MQ1`e/b]W6eXv^DQYi:ŒRCM_%2_B{QU;}\DP^ba*RρFnpiII$![- }d>ئ#_C PyJbowtk`"KWq|tzИ C1Xq1)@>vK\OX*;|R?I& gߕFIq"*Fkeϑ]?~XrŁ+Rw)cz)=7+mTPN ejY=WhB`}EyȪjc/OK%9UA?bP *HaQ-ZK#J0F[2ʵYfLN2|_#]huv02NF .)*޲Mʳ;*lGS]!b>6w{?=GH$T޲yV# Gc_[Ky *g50Evz *2)P;VKh}|TK'e-"@ƸةR0;=v19gK ?g<}3|*l޾H4vFGjJbAa_+<R KÐ=$0{_}J8Kp,"K2䤷a\ )g;c xN7'\q5л2ȳ4snVR`TD|zս|E PQSkqF8d'#Y)OC"l>f+ éկ0[p4$x/'!.b:B$8 Ȕ't3ɉu#aPJDQ(ltm6{ {9"nffy6rdO7{Aj3i\bʔ֙ `BDj8׉ܪ KpWcS1^N4)s.<}jc떗 `#M7k)_t {fH ?܆T{{jE2FF\?f -A;;=桎 aJen<=` sD~B>m;Qzm*ZE|a^+6=3l1zL3f2/o#gD8+O_/~ZN=@%u;#0/;c4DoLCtwSr}z*O#_Yd^HF`;kI`.EWUZ.Ϝ9ꑦ,):;nشH(?Q9 г8 LHe4^/ p#Yq cGnlģ5DqNd.A'Ýg\+noo4Pc! YZ)F_7p'Vm q-q7F;Y(U!2dT-F]zɯ`@GD m,X~t}2(<hC BOnkѰ1Y  w=LbfKJUӅ" j.X:*P2g-b8ؐZkƅaKer^E͞O,ds2?PXteDs3F$5 IhUkD:G^pbc|FZ0Gu߸n(.w/4&3 c+BM`C?| jhz+RVWn5Δ'f,b7K8*J[-Uuqˠz Mc5w9\[v^o3D|YT糌rVO!vTv_GI|ԅCwg ' #&w]c]'auUV bO֮BM{_qtmzzX.0bku(_stB{/]+K:uFSe.*= z˝V듭/,9(Yw"BEsr `jRo@LE]G$t ad1>#t/E@ |fF|2y9wHղmк=׳7) . X|2@#wòNZj{GC)tn\*y% g^X%JP턃wKCBVhͻ{f;U>ԝk%5t~qŘmwTVU7uLU1Mf,xX;jrZ93juBT *Z&|0󿴽ݲnE'~mr :A]ص}gG-ha0W^ ޛBj@Plׂ" 4)"pNJ bucupHW8oX%>2Z|XT;ۮD-` e.jYܹ\b% %D.C֐rt#.zQ1pHO_3b_W+^_j3! ƺ{4 g6{"XCs:S%4]}wы-y?۬KQfFj>A[b. >7r&Qp!]ՅmzSV(w(ªFDǚ u: NTe\*n,EqsgԧC0gk컚(g!M #e3?Jkz$CŠf"k]eBxh&8N~V*j-Ń!)jtӝNcII9͉߾Mq$Y"܆] E ༫uCCP.a),ܰCљ)4[bSPŪ%t(Pֿ׈J()49U'Yce4|ou fv*FtMc,jdrJ/GۭΘ4 8ҮYzsHO`W=|T@z hSR~wD$:a@9[Mj tntE8/_NxB܎YH3;q]ǎ=۲:k%2-qXRhG ܛB3e>j.>y5xx5ڌO/Onڱb}b^[׾v{>l{ূvvp-D@[0.w"|Ү> h Ef)IyTBvYVugF?ʳfHȤS KM|vn20%;ܖHw+~eDrḅ>c( 4R`x2!,sR_չy}LL, сfeT>TyefYj=n+Q洼rSY>'bn e:|mf#'?h cޏV~6N,pz.~5 }T-q,b%ēx4֘[c_4WKA/[{gȊ1{ (֤`<`{%Caucvw4<"(<,8:}2W ?nOz7pG/q=gѹ7XZ&ѵ[ rkTuJ>~k-YZ& Ӕy? *ɳC \"7ٍ|ZmK#k9DZFNI.䉞LdQȩQG.Ɵ9ll=:8e|8aոǗYywLUe < (i %m4x쎓"~bcO&e@З89bZim+THVd|YgÅc_o0+R5+uS,C=͝@A4ƨ>s\kBPTBYnOB/ഗ) jK2̻Y = 57]=8<m?'lW 7:ž0@ro"5S fO' DA$Ȱp:aXᲰ{eb,ND =VÐc#lY ΣHՌ{(I q }Z]eFdNBr&jA1Дϴn,Lr١ [qvy`k,tiiR5>ތWY_1xqBSk)T?Fʩ"4 _WЪCaΉ-$wÔʋ_Pi;@S%dVE͜ bc$@u*)o#*{'o'bj)F QbT#!<02 GF.μ vjG_oR i6Ӱb=p(z)>4s"gt|uziN>4+69rEeB-W;gReuc@Ɣfj/jt9$J2 Xv󅓖F`ȒJE@J]ZCu#yjKrbBs-\ddqU(0ʊȣJGʢoX}DsI]&J^Es͂MO:ik?Оb}|f/Qۨs<˝tJ20~]oZ~йfx&]`V~}}F+Oc;~'CLAcn%vPV-|ӳpS$ ;\ ^GA<؏6i !jU=PdbZ7Z8rq/I ORG^wvAh$'YtB}D~$4ъr=}Xä7ܗ?SN|C\5+'jЊBx)uN٢p]#M\bϥ/b_w о/El"kyy o˂%-jjZ$K6Eca4y3j)GM`!\:c 7<"aFt1S5@?IrzJ}aEmROj/S fL DXtmt6x?Jf~5a\r#HC{ w48e&Qbizֺ9jsũ&1gaQu .y%nN #_T vXL?APydfasj^X[4CVlģh5.Y2&.u-.a<(Hk`Ik!HK6*b[EcynXPB]0JOdq}鈞(Ҧa4CfaܺN~khQ/jh%mܨ#4r׿2k0s탅 QtMbGnd3&HG9tn~b+}6qZ8*\rҦl|%+~DGb`_Sg8=t5і.{͑(+P$1L7?ҵĤQfbYmk&urE8 ;s6Wv4zߒ޿^X}5O\[j8:7]]  e#%c. Vy 6i~FU &h=ҐZ$`^AԨ:F.qW[{:)4z{]DwĒ,n\Թ#We,q ĸ"e[qyiB'NT6RWVPwTPKkdE؍P)Tܧt'j5K!Hiv-Ɩe441lF~$egsC$ Ϭ!o Z%3'y]Gئj"ط̟ ULӢ%{VS3o؍,[\B4h]ziadzQ9r':\I<~"$pݕP)${$ԇ2E.:[z=#;kS< q\v<<=LZWZbeilGp&{,࿛4~K#%_A "0dDRO :'8^=wv4#q2Ҕ Om&"`aO0~~5H;vf#)` &)߼5pњ5S-2}4 ēeF—ۻvj2 =%A#O"g?XǐNY_Wn(zΕylxfRR\ f?mY{*PTFG-*VwßЭ}K#k*F :FWD& fDb/[c6ΏBaȋt Εs G^hHNjIC3Rc'eӔJCͻlB1iKmtmAVF7 1\Ye`FC܁A5h$2勶[C;bUuHr7%8&y퐒SDLcՈ9H,/ &dod`0g\^ dHiV$'; [:Z<x]oR`cݷNDupx*U[kHނ᩶6W#' ,_XX=J/r9A!usa9*&3irBByMP*ZziLwq{ g;O/FjZ !l!l7#MQA땚rêqzȍr<۹iP4. 'Vx.؆"q-)[>䴩r+BF&,P d`Ms7*lH=nnB̤㞃)i[MMV|L֤ו(94xH𸻰DvǽJF]bi^B3 LβI]sv8Xm"\J,n*SLѥl*W#A#-/13a4_v<*V S,Ji:w+ƝK7ur)T$$%7@g7p2.['FY'bfQq .7ҨUh`_{z8/T``AM>bj⡊ zU)k Z! u0h\jq|$20.sIjRQ4=-2W~m2zvaf8e.YĚTwY bS((2+ ng/~*3r< B8'i(->-P~tM$'%y𾄊|)~G޷-9d`g:BFqhwrR5+^`e.7.4g` 4%A,#P{.Eʢ(㓵$̷^t+p2a 2κQT6Zz-zI{vQWUN-ӸxxR 2.,@f⟈ܖ4Մ+F1o=uy2=t&&'Meݢ}bR4`aw*Ue5,MSnW}`\ KW5c2e٨Ԏn6xLud {Cv^d5>&f빡S ,"|6"D?\[ CZ[(xײE&\==ʈiUNܞ Phs[Ҕ{|X] 7^<ۃf\-\8{ъd#'d[v9`I!ȕ>BCkyO2h^8h*7Xx΂U.Ttc<&-zAIE+KK⑋q%Ϩla\+ۨmjv/6m)HNʊvf?iHT G'؛b+ ߒ5r4"bb[\@jN ,ErƩ֮ - k|)SuH%+6NZ 9&/ӯ8bzQ"ϸgɞZ@fp^R)ynHޕ7bKge $A =.ooj7V']ym)y (+$npeõKzQᣵ&HMICaPcGԣ,i{NBҳP>eG}=reg1qNJE`80aP&L3 Q\,@T^_ TӞcALr6egW!^>9W=M ['/cUAE(1IH8/cs;;`zrq`+^m&& ͹.A\jC.ZFjM_2EW vRAyYє/E}! ya7}ϣ ݞ;R@Fn-mtFo*uhFda(k޼ ТƈnWLf>0S5t㈺R/賄>\z|2mEGA8z (e%\Y݇w?#:v@X 5ڂZuc'|<;is\9[LV mm$Sxez+АQ-%y)A}P O0dwV.WK,&u/`͡TzmW>ck^|*S?8cR*shDA5lluh[?rm`lX:R2mN˶B7YO 6Zt<ZkFta3wEFIm+4 ZZS\3pEFשɦ_ɮg/^WgLF(k;S]GEv\DoG@"Y..N6hC/.ULoRaD$lKjYǤ^mDOs *&2En# (p@g/i *!B*T5iv";-u\]$Ȓv@'W?LAviE-e*~*Wz[+M kU?U:=)0otWz(&2M Vnaq|I&e;$pj;]`wھ5/αӥ_X@[g8Z;KǙdGmi+A{y Ӹ \4tWt=IV\ 8bD -Gf½7w%Jsbip:~:D=S+E3*kWDIlZ'סb "8w1]ϣ.&5(b( sHoÓ`%)RXB3{Xn`'ݲd%S;1\~ nbxS2>՜yI/~'r5 E?gqq:v1 Cޫ`-!CLf΂ͨ5'ke& ?1}I/j7D 2aI)u>E VXN rAS2\CǗL#2I)wdٔB8UJ{GokB:֐.W2?>=)M[u2e=; bsIoݶDg .bMbM6aSaBx[%LAi9RHd |o. *&{wjunD *K3 ΫLA,ьuJ Bw)a^H'p %Lf77]BIʽpëwB dGGQ5V0]MlSI:R/+PyNႇNUqݛ+D3f³X-ߨPVI}%VSDΫ_h}>+$_{N "$ b#Fܫ ;e# խr3I1G9q}ܚUZϳm+B$y(J`mK"Wk٪f?3.uBi Lj\dN5 ?܈rM&0YwqIȱv;\Xݞ5hƹB"e#+mV7z0G`KNyy2#Zrs%%]z̤(U8zePF[/9Uⱏ,%g=_Ygvw/}v:~n&UlPsb.e] $ x(_NLD -RG2fAK tE_0RtHS$ LXDgOj]ߏ!.80nU3䖆f=wEl<h?@@y B8]'8yyhAUߐ]=a oCN8_$h.ϼ.%De)mp{h,yu방*x'r 0$wD=vI7O}7gLn e8pӼgi6`}t=ֲ̹6ׯFgI#Iaxa:J"mYEe,|[P4)L2s%# #%g'E\6tNKD]x11;PAv9lϩ:9'T@=t-hb g7d#e5štCD΋_al-#NCۂv :[1~g]jbXABs ={\ى x_W﬩3`"*[# Dx6`NjyԱ@ aG B^$ ]TFj4;?bzrPQs8S ]+X~xYtl +m%[ND']"ʘh~_cf*(.EV)t,l0RC{퀾cn p2oHF`\Wť5$T]GՉN4z;lC7Ѕ!䢹]u&|*e(Bz1 &aKx6*ug41"AuQZQY<: ՞K4.h>+ ;j&h_"km˻s\@"Yv(Ӕk{9vc:&8 v<? Қ^nARv0Ag#]`z[%cNNv=awk-Dq#> 蚮YQ&i/^xމd!R.BVs;9O1`1,i3ځn @ۧ(kTE8̦DEt}PxNJ 8Z]LyE|7FD?lgRF܅+:k?%N#Sޅy`b}՟[u'*n{@|sz, 'lg :ʲ by?G|J+jqlpw7+7 oe+_'((|y[%~'`®53l][hȩf>!}wjAdn98-!)uѻ× k{Ud _^7]m4 A[m/ϖC鿩o]jqƅzI&Z%ck]d!;,co+5GYi׶=7 " RK!",ky fd="2;orseԱE#臲n,UL <3 ̨V|`v!-f(JVYlcf<ٱ&Јˉ|,oRfO9s9~lRe60βэ]4L>[LT1w}I_ 3laY*߼ͯF PyKQw72{!TX*ixGsP~Z\T˛Wy H`y;?|"r)t+ bZ>ţ%EdBaW탬o #P=-T:biRԚye: &ItH,O̐;7W 7jWr׳MxqFz"$ٯwtK/cL֯)i9jz,uB\O4wX W,2.88߫x$u`J NImбiiυ5P?' EX"Lh9}/-X26RY*_!&owNX1IЕwn⃶3b׃UZ.w1鵀qPPC ./[@EKN`lJo:y-/UXKJ}a%2r@[Tz)L4ݤ!ίc*'$V?+q:s0+N. .U+  ~8DF]JzpKX[qmkSVٳ1˧'p%=| 7pЄJ  U̟R( !ʑr&vb{og4QhWSN!`) CnW]5с =X XdžTKOV+q?ڑCf29 DW[1O ,E:pyT.<:RzaUA!%}sCoE(diJcÅ?n pf{dfWXdQdB}ı X;"RS 0h#ŒI@du[2f|\q&cֵVlo w9"zP-Lo1bM [T'OVb)YhX 9e s:!-'g_`Y^ h=;\ y7_MR‡⸦w͔56-H]T)(m!mXGսMl A5D4NASPv_|w+E0[I"/B4B @o? ycH [OY͍nғXԶi_cqj /Z_@$9gZg4j$MW>Y7\ʼne"5'Aw .? b wގK@!dL)yo_ipg%eH<9F3+2Q^([5<ԻªnlPVIJb_Znz+K[ B#{+ ٕꍟ}'ea1ɡTTH-6'u\EӣwKX:TsiIAG.֝&{^$ ;d$*eS.pS,1cR>y IW57e*D_`Tk2MqU1Ldʕ:$taK'A/{$X*a H{+zQE/ybI`0{eS8m5m 6#A KjOdx,BNQ ׯ*.ӹ!mSEtF6Wċ;w6j /y:ê\bە8>y|[i 8yWG=߫~ قD"e fIkj"zaݧB'QSq H)? ~`.gu $4o]; hKb&@b z=/ƒś{iο9P ]%N-G?7q+NG[Qn9 C*v㰤kpﹻwKCO]\Ntg'Kզҥ "Pw!'h21}26i깎97v v/nq% ɹa[%f/x̺w]8P* cG[xZW'V*U,ZɃ`~[iۋhm͕}WF˳BwSXS_3?=nm'[``Xx1pA/&V]"g $O8̀U4J-xYJVt(5wߨllT'F÷P蒹VtsbhT@|>2̯+Cw֟ ą)'uNyL*|9AEWUcttpe^pUr#zm)(v!ؚRɪpvȄ/rU'w-#)[(fsi^C .fJ` Ilf2)fx|a_<{=T p1BtP.O5&IB 6Y=%W4.\%Aܦ}K>14R[D7iUcK>x ;8xR!Zk(9yXxɄwr|NV߷Ю6` @#OPkGG"㮪Ÿ={$:B(H!Eh'/4>qA8rCJDXhW^MT40fE'iP<@;_9'cMc櫶Ay]]Qd[<"s.Gr 2gx-ǰ߀|Y;"<>_hrY얏n>Q깬D 6f~opːUwöH>]RY)4H"V#?+C8 yQ_P{cz,l܂h:q Nφ ZXQࡔgK=3{nѤ,B9*.LNAejuܨERF~<Bn$繪X_Foc.Vh(?˫& U3K@b?s,i6e?WÙjd|v'x^[5?yG*چAlKA뷰xDэqͬՁ'qBUؽ'{dXzïP䘲i:[Xe +hȂiN 7)6-^mGXh5Y 4V{^,jԾ9dj5/^ë ,7ALU[cz{~^ҷ͌,"wlA=)Dh8re)daR@ j8vorPc8'Uf2St=<&sȱH*.1Uѐ2dv Ąd֍\nrZ*@MkOiE|JM|hA9URU Jbl;{_xcZݣ*g0X^E->g\**>A% ?EX q8U~܍Ir&C7Zqr4= jMa{\ObmDܝ jz.j![oAY.q,bO)] T؎<>k\{pToJ9ǂ)Aw$z)M{ZT|W:0BK:?1Ƨ6_o뒓@~2.oСprjOfr y/$5 9v rwfGс.i[Z[43+mG_%jK'\]}0"Z zL+c\UZ>MƋҁLp {w}FÀڠ>,M=mx%j UQ- RkQ1 qz>""/3܈OVX1Rŏo[\-D~Aŏo\,Vfzwjufȵ{v_'s[xlcdž?1dN fHr(r8yɘL6ſ\ܮ+?`[d(VͨY).w5ݳlm c \O 3#,,s\;NᅦkqmyO=)I_$?7~Ϣ9EQsHGbJ~-,+DDIԡ>S{.rЎ@믢魊c&}]/T1`ٷ_jiSmJmKor[9"@$nYtclTcBl5uŎNb{).L]I17͐h;~j3p8} yO<Ry(L*6 hk#TlЊOP\'=M*b@S_婖;g NxFZ MeU))ud-L2]9zN[<ϷwԷB!Dѭ%Z,#\~7t8W$).ҢAjfghY; 'inALd~R ɼ;Q bi+J,U"X;P[_o|=C-N*i[x8JӴg(kAJqLe5I*1L&m1y=mӺ7 ʍpVM+w4\.u#dCΑD%Cֱ)s2oA'Q-a-"Ɖl{8is=!>jݟZ-rJ q8.B#fDU%TX Cw]FXe/]n+k1(c^EtX[f&5T/u;0jA{qA#F?IyB [@A[-E ?4;LC)x?YJR+^`7pG`=u-7YOߝ|WCajJ@ʂ$)wCˤk ̢k~ C[ 3O8$)2uRYPUkU?QJ%%b ~IU%K|,qso)6o&Y/@TŨN7ED/],$BzlS\ߞDg/!7 fԈČPI_YzXYM3B*>8O0E#/KO)hEj~ٟL` pi +<3P{=KEDy-YߢzeZKH=9N*mpb$ߥC$~6N)n_GKAW‰Dx Aw`6>ZĠA OS?i $͞h}C5,}D*W._p$䙛*iQ {>$ubEf\kȢAJ(p~D`2hD8G>nK,~K8:rog(;c 1M7W2,W0 (;k2'y__Oh& Z}!Ȣ,5ř1U̷Odž[e4SnG*my_b?d  9#61'Dry.$ S6v^J32 ;@`)zLs!/s=I_zo)5ZT~+Oĥ^0(%?-(VBlm}s@IOMgX'} ?w z7X<:|23Xö.ƌ,7_g8ԔW"-LDl^`b$wS-Vw:dL?⋽'hU tL4~1ki -Ŀ/UY.|ĂS?q @7[>YU]ǩU %N,!Us/S6^Nư'iZ~wJ@U>C@_Pdٚ7,1m]1#WdLבʫa֕e{v\IZg::'.ˆNf)El,:Ɠ:߽ 4ʏ'aα9Ű(dLVʅ]Y,3{ r)5jz*X\Q'U&W<#FԸLȎથ*FARZN2ul-O_坕dh'{ւ[ dqgYk.U}ZJKRUy|*M8;_&n<@ DFߦ8wE:E5NK8q<]h:y^ܒD5IuL49yXʑ.gP9VX֏,?hQLl,ʞ6b-hźY}') ϗV2C2N }!.{<O^8X / |۽cUb?3 _g!-"' : ēג`REa@=n#ҟ5N w">{`$&cA]f^i3g N3Moˇp&hˆ{*%A;K>)Kfx6OkFp;+^T-+!ܖ6?0S.q" kTdWk)j Y6W|Ѡn|gEy!伝 wUbVypg(n-;HJu;a"}_G P}gfXmn``8J+s.~2A`#l]]΅ Sw&CR0J ٦rDk~Nc`*icR`I@WJ,U .H~J؈+ \+2? 1ul(B Ӱ=B/%cHbod 1f,w˅1;[eFՄ<G䂦Ey,CA_-[!tuw781[aRD,b眿zs{U:2׼WW~,HHl{TQ̟(E%u2  P7yˆ$j`]K ǘ [+N]8mi(H1WvD.M%雮K 6AV @E{Iz"vokU9?|/bX&T  ׿p {Xfcz'>ZКmqW^Iڟǐh桫0yFMj^ Nm_/u_ٖ჈7ۙ%  5ۖˣBOE_'2ˇ`ܯrFm4v&'(yyġ=60':̧ĀՕo;S:A,Lgg_Ҽ9<8;"`τ lӿ|O+- KGq;m)οO9ՃW*&^IT$ԩkOhݎ uR0BC2o^Rv xˆy#R99>Ի¾wlkmzPTNՍRR5M{ HKuF>[QF9Z/qHYmKl]Z<¶_" ܅lxƀs&굮'$4WCiblT4aRyn=b*÷i͔%}:aXDbl~(Y{؀%Ov/2ӖݾÂu,Ǘ`0)[( NHFAGZ4~!|}1}xS~bOl!zϰZ ]:~0ԠԊ*=@̀ ;_Oխ*I=I2X>5+Bb%ՠ캧k4gCP+M6BkL'>umTڄU2,I BiEnк,n8\^-r;wg76(/ ly50j7D^dmQZc1҅s)x_{ u&|[]lOw/@Az_aHE#V-rʜA~&~YnEncڜ2hRۈ"Jl2}k.{ ɥS;pLpW\S% P:~aƁ)(r;Wp>Se*LU4)e~+-0.6sG9 wk Өvkfv$Ƶ:! Fk6nNԣ.bOmؕe<'vBpOAZ==HP3^ PxeYļX5v[(B}.*xT9ذ?#6h9}`eӯG2)stKj,pi_ ~!|!k;2C#f\Cm5;ST{S[0) H7Bh `%|0Qvd9zjo3l}6#?ALq:z>;Mz>ӷ|fuvmOhy@DXjkE.Vjw;m5脪 .`/MS˚Ý ^M+_\lS_)w)ܲzptTV~I%訐rKycH*PZ8٭nV2| LsdSU`]Uby%MۮQIRʺҌ3t#Sgg>F뼓4Pt:=QL`΅6r$up,VJB۠H+'씌y}15 ;f}$Ld.!%k$H\JQ`%F>)8Ϭ'n!y\q۝NI3grђix |dgDz~Rvcz+Z.clQ[ЊsKug)X;K#x.YSڛZ?LPu!GqjZ~{JBD՚˒䷛SVX;̯o. *N3J!3V6C μэ z tVV|w7F=~7^|G|ыiA]#6/t`p36UJvW_і4\;;/1@s'Ua+G[k$X?%*(h:1?Zɣ<#( =nwEM,(JSX o5r-U^hhġ{[5545p./zĀ\|\WxVDu胢%?wvDv45\b!%5lĥa'LJUcN\A֛O FXSOlAz-/"oJcpOj·7|1iV){&/Mj}l/k^.CK4_Oga.|fW2OP6N^9תZIAXqF(B&i~nUI ĵ&rH1BH-حz0}B.ba D.́:ͱm2m)Nֆ)EfgA 0+GE0qQr3 @1ޏ*!)oNȹQHtM@X5ͳ+(G-J8pFӊ6C y'j!f1m9,lKɡ;rPB*gKZ2[&D@3C(WΆeUn煏 =(Q\dPh&AT#rDQmn94hظ0TWM1 UW$ i9濞@˪eɞb4/J)aTX\qvUOWwu6(!>7cW-j8w & qn"{ dqq SSa!̫ţ$,bTúVHiT ( T>9eJr2yf3 dBVn U|!Mp(/#h'2!I`T{.iS7k }τR3Hb<5zP^ m)ҭJ-0w2XF@0e<c =No&] {!sD, ^ɷ/ gV@=Ѭx͵ 5i!qh|a/sס.*z攙&Dhm/5ۄieXgxNJpuJ}( ux GRNB uC .f-FiS,<hȈ*$%ci ߆ QxO*6hkN)?(6Zz %Xdo|.2#PRZ3&aC 6e <dM qWJ|=:2GN - CyY PsаCoOu%[aU]Uo`\#rι* ­erom<-$_Yw =F$G {}gK{얎75JUl+:x2j=ԑlX{:JΌ/g. @I7ٶHS0NNп\׍:z7NqԠq@%7[:S l4Z>c:DE&*-^4hG7],Vv-jR^{#bW%^X+k`wqJl F 6z~ ɱ}׏5Ll^If<%aЈ E0u&[Xv6ܑ[Ba/?"œ p< "]f +''KX}U=̨% X( Zț=LpY^`[9fTh+T!gkQnHR9C)ΖX(q@nIPs_lkHEQufVTm?'jXButpSḅrDqˎ=AB/iPTFD V=VāϬaJ7NNצ%ljG{kˋwAʬ5- :Z\ԜK~5\!J: [mdz ٙ ,v u$&g a8-3Gi(FTn3 a)gZO+ 4A4\&6CuV$ծ6Y*RZ<ɏx*rx>biҍGZ;OW̉tȻ ݽIkcbyTys"]a-Z&CQ0qQ2>< Dm0Ivo4D& ag' k.} ]Re],A =ln/Y}O||j>MܒR?Y1cv5ր T" z_+@@gTQ-: PXvYx}"bI1ikC &7 \Ȝ6:fcȌ@qпRK'bs%u2ﲠHm=B>M`l'Xe#Mɫ9sن| hCϼb<b;mFF"х~|9敡9[w:Em\/%ޢ8q:Et/Yw}?xAG3kz9z+ cbv ^J>&*l Κ^_+&i 7$G%y5KQ/rG2ցU: T1>k_ѭSNAD8ؙN)]6ke9EeGPo!%fo~t4ϭ{0, H.% u<2v@q7 zU!UƮEa^C\Y,zq)sIxv/|,%c+Տ_^X!'(8ҔhڧWFJ5S94kۣȴ8663yE^ChM9O=bBG 9i>*|I@JS S֦HY[!蹥Ls:YS21T 0 9o*#v UjIlLe䊅LUf9)#0xRC)9w7I~|lUbư\X5&*`&ۢ^ZZ#{\&\$`MMFA,r L;LzJ֔j=3AT;*%ʙVZӭAp+"YZ@'dɜhA&K(BJ!-]<SPnhN܅ρ=}W S8})SSZ"8gOUY>W .ƅ̓%n ͍`>~٦M1\@+[3t8)r<ZH- F\;*[Ehָh'U`3Vs]yt+|VRO%)Y}:N%WͶ;wxiEMT2;}u{L uXe7ϣ 6ܺ2*E*fUv<]Gjuni \&wj?wp~JҞ[R>wAĪAzm٠4Յ+ v3m<m))Hm7njwĝFRC=ͮ0yM Lro>ԓ-- q2 ,*"\~GK}ُ\QenbYlӋEE_fyTH+"\dnnc^hOF8')rCеaVw8!"{SIwisRQHM݈weغCZħ.F]xfmտ-؅yU=ҧenz;;ڀH+p9߽vcɽΞǜM-PkE^mI9`uK|Y!MΦƬQ.,UX Gƒ#XX0'6{Q -30!̶kX_c/Bo]@ ]ä[I bԹiJP cdIjV,o?t t,jŶjEػK@fFdX0yҿK!4tݑ)rZߛZr*.ؾ9lAsu8m)ЯRTPx$`XՄi3\>yLqCZr{(B\ngNԘL5R,k)1i‹QЕ6"S*F#&Ma4llөuocǵ#L:l}o[ӛI<*|W1a梁׀*qF[KضgDT}7xE NI֧PHH:&gQ+]lY-jk7??(ISv`\}=0PxP*:AŹt;IK7O7w}T [(T5S^9R]|Vk~~Bxܳ4|\Q!kqWi渡5ُ0SJv ݿݹPx5/MSvǮt ߾=H6JXC[cegssax|#͆3Hm 9Zǘ{DZtƱs߱RZ fEٽ(*N r &t;܀ʶ1:d0U}AkvZj糹_$ >aHLˀ{4D'!Vx݌31m1:kQƌiX#{9IS #ިy4$L_4e) Ϯ AUD!&`&urb%2|ָX"1!I.ϔp|-ƄZ\N=~*H͂FcEROuD9c6}gb?=tNebV>H ]u6͠C&Rjіe~&}P{ߥ͹b"CҀ%ϡ䬹UHNN\2,p"*mϢsx0[?}[f]Mv(1PY,%^"tl0Rh7<["-4I6}vDp^7E} -_[?D[9 J PVt2.Cb iv|, wT'Б34v*v'SOL^hT1.jy{!T4clc4f-+RߣFіzr9wP:'QMRt3z-l(s)uv` )yQy냂L FdLGu;\d;xz.$ =y*1FAwuaHWlc9{Jh^UP6/a1c&ZjB!6%`P&oنJ(ύ`xܵNqv^f {_ǵ˟\/η{ј n  'k3y kfmTh a]sXCoخM*@ep` mK'Z\h&7TGv)+-5Rv!.qR6Npu^Wȗc*[i`  ϸ)XY0P6p&x )"ީEb>&7>#t C8xBЋ~"=#K-XS 1F+{WYxTMN!7 !EEu /7X_w^rgvy &85P {-}m|> Į#0Oq ywi-@;I 'Fjm |qE;xѿt33b<W9أ%X޴#y,^QbA+p%)N(&)JHګ UUzWz>P!]Hm)F(9|]lgkܫ됴ʚ h`Pۑv L<`W39-b{y+Z7<WV$IrC,k?c}kaQI ~H&Eq0 C-&ZM22]zmHtdᇞJ|sLT7n ZΠ1Iɟl|&v(\rZS㪯{|bU"{qa ,U+^`41_g 6ZPf39@RҒ͝(Pzc eJ eHA[! CoWƵH醴N߱)myFb?L,h&aJ;cֵ9amKƩ?rjR$E ,4 BBuC+c~7TܾF@hjĆm:@=f='ܟVs W Z?ưYAV?CQD A l M^%DE L|R#y D l_G־g[ h޶E/1)+(9,JplTZq}xJ.Aי:vƏ+B%Zk= Â\g9 7V I-x9 5q`-״:]ьr[ oth?G@\e%m­+juzxt.KHW-;M!"䋥1WMޏRI$Ϥl\N#A|km7؊Eqe փo3dAD͌:g KZ ܋]WRڎ/5ViBV,D^n3AmpsAUbS`hD Anz q ibѭ9R<{7^r,g窼N<n~ 0o/>!<8T'1%0j_dYuH4uE-k8ղ t DyMBQY^|-oCN5p\Y:Yڂ2\^_{\BYְ..7ݙ-<3&Yð*;U[-찕ey =$< 姚Ж0"dўY SFajҵe^'L΋=>p9W%@T@` \8urpW?JL dBE+*AC߅CGOVø@ >b:I7 ]"qGɡZY;l4ja s@ME^4jufa4鸡q67کҷ\V;,s.%ιm V@Fj<21-6>Zؘ9hh t_7'oL4S.\ժϦg2"$MgpEᖿ.'u#b%4F{>&5;W/hJfyF!XW] A+ߩ!e^ n< @ 4QȔ=H ^YV >/Qu4˴+ߡ.le| 3' V~cTe}hDh]_S{dhvy]hَ[WdeV5D.SF|}*C,ILc>HC h)®-$bלpM\kYa8Wup$b֑qtub1|d) L0; q5Jݱ"ڻX-jy5"P^(FaJVmK}1X᛬Aѱl "0Oٝ9K.Fa?(l\~οcjtˆ.0 b AR}UX DѺs~܅Ji!Z5P+8Vl bDVP :-T:a:-4)!$JG+Sѳ](qd&-7gf(`ҏz̔.NYLi]{L۫opT|bXCO;j:>t`[<#5r|٣;Ǝ3mǫe3[ǴouҰnS"+4ƜN UB$}j)vWd+hsRaC_06+,\G>FCFdGs=p\mrI DYv4g2DdEY6% VL(._UEB..X#Îpjl>|Ύۀʽ|#0d_}+CAf2(x$B $U]qDwmwaN) Zdd z\8chnH>N[Z5><_rv`؁봘g(I6+shc/lEipPҫەR߬D@oA6iy3LmcxfT Luޮ%/ j B<I],ښFQ%3>aFJԞ-d\>V~ImXg7ayϹaku.Dڐv5G׼!ʏd?Kƥ]9UЩ"}Mje"2 WfD?]n'Oc#Pyt84Z`:3_WЪFxN~Bv[a33V,ObH1ϭLyh^Ƨ RN4Ь=SO6 X\X& 7{I?U~Ӭ~<_d@7fJy_H4Lā. Nr4x"n9h4j5 ΔzSq% J5V yzk7as6(;Vڟ+KD83)~y6`q}g)ʖtXG/"@DKe ɯF?gxMz A`]Z Jԇh? BB5F;8WXWf)UT/9hƳ5zЦ+>k賸lC3O P:$tYDKԔH܇jMĴ`3 bHkBx 70_W^j7h@Ziyp\\@UOm BBE@i{A)bu Q[pR-gAFvz3k3mqA1 9&8Ax\"cܿ@wTidszZuN樐pZ/9DmW7MQ7K~=Fg*ODK/ge5ӖR6:}/O&=K&cc21.z8%.־ p L D G>{P iO;&9*HFLqdwd^Y&sfpؘgⲡ/%c |Jg'BK\r)qRbęc8=;.֞18V=S}`JR$чj[xqD0 Ӛgq"Fn^)G5@'  ^xg&D#}Z|H(*ڮԗܤ*9xs' w=C_t0m @d V F| ÒE@ VQۖruZ՚PLGɄGu L/#+ :Pni݌-lUSUO`G8Wb2nB>pn~nPe1BkgjPkh/_/,%LU}њ!+JjW*JId*%]WT l0$ HΫ9p6+]]nrpg74ZFXKL0UnûfO*=bx_fN 9'洞u&(^fm=qCI2Eútw"kbM= <뮍3Џ¢|׻"B$0"+ca<*bO &sh{YZ#{ԥyU(H5r1)#9q}C{eEPTϣ_vvR]8gN` ]2vo7'ѨAE!^y̮[dx46Hn> D4\ b֧,O}ƒe7ɉ'9(F9K+k@U2lp~9/A$![]Ӑ35˜Sݦvp)F19$ %RtJU-+q4:yNP4). Ҹ0 -0+^WHksw\qK\TIRQuPœXzЂ r'ыFytjJQ:RCӬ|j BaTR*0wϯL pG%ջ0  9gM oZ+dӨiÕ)RF;$xh܏yY9FlZY"?МQ\Tnb{>&E^s⽏[|94ڻx5cJN;*t@Ǘފ491|o8rM֥~hru#XĝnI\E1Uޝ?[S&c*oN/ur{r݂" v^u&r`r^Kű5%<7i,9fʧ7|t0^`TA'Y2N:%VpΑao5w&Ȗ(p-GiU@o@j| 7XB`3s7S9\r~ngK4gvy ([~xqcTLVUK9t>%B1bm>1Z,o^.jʙ0ڷP ~[TICK<2ݳNJyhzx^7S5stw.=K)W_0(d{OޏX\X<+֞x `1.Rg1UHo/ғl q}qZyQ^Vڐi%>Th-!Q<9e8roRV~!IE5 >NE2@Zsj oS`qՐ[UB΃& ] k;%n+c1и.9 ,Jqpt_MnA]Nj ^g]s uX/DuЅM$:KѢf(i4X9ȴB/i h 0 !.AFЭ/wt+r0g#ऌϺD3ǭ RKӖ:߾y;?b(P1\.!)[ ->;rԫVTȁ `|ɣm?V90 Oo+hRusY^*0KZ@zJ;cSfO')FCl:##nCVg@,+dTVoﭨ2;2 Va_ /|n2;A3JP-# ԤZegG%['qH]y5|Xx<"A0qgMOs;6{!؍zO붠2 H0IgΎu`^eIf2i,,V1]5&>ƦNhͰاIp`lasX8akymeC(͍f O m`pJ}(K2W9{U$ եn4L؍̈́J4:f)`RI7V/Ut#p<ٯg =TX, =r:8qα%ʬ2~bi`ųB[,8R a (İŞFo,u.x0rwY_(٤)wC D BcP{W{}| (ϣn_ &x$nFIF|@x2oLJ!<~6.I`382 gAHrf s)b,qT$5 G"}R_ؿ&~[(zL:) ;> WLX`;pme s0+0 f^:Lv"룙 u9탔"V~?wf'e+ ʯJ]nuaߣb<0$c|nBo{6HP|< РqiĮK,$ 5QSiuU0pe>R&ͱ\Z[Ag?3l{C-qL=W 4rX :`úBE`Ät886axanI*x\%1Զ2RId)w>4hxٕs,4w/L b bJbuj|dN'Dl]L Yz]4n,DvCNx[`VE'+ kLq%O1A[jŅf:]HﰪE~$ Zv1!<ҕj>E*X:^]e*2A0(PeVxM ?w("B+\˒mQUbX& f;8?0Vh34ж\_F~|b+Y2mm_,n-fBPq+'baez^ #+#KA !Q7\nes ؓ.wxF// (?Q5 aT^cJՏguٵh'1e X^̦vƁGPES(w#9;*b0rs:=!{G(@_Iߴ]hANQ l>Kb󿊵r\PCC?ܻ2S 5jj7=28i\#h^AdN#.LN)kdqzbI[`d*h j_gJ7V7Ş^4A+WW~̭S-)4r\[ٻ*Pk}zgG֝07W'q ZU$E{=ccжS:qD앵s<ͽ6Hy]t᠟$͞ h#t{'O5"-`$VwҒCU BF5(pIY{b?>sB+^nϮHիe? }.hv g zZ5Pҕ.@cs&* i䭐[V9T#`u ɳuyr:5FHw<Mqup. (Z?|HK/1;^i:' #HYJ25|@ MG<2o*83eLBtO|tP _m#P6bG{7%&]ZV'$a\vvC#׫L_9IG]LXfɕOY]}C:1#Is~Mʔ: 1OE{_#iDw;fYQ0$Sߩ3'p=ɈrH݉U$yozy_q品\Xqy75jRU;5e&xBֶ ]U_ܖ~|oz"ilzCEZ钮z@gяr)qFe_9I9$:k2} ٫rt%zϛYLV?8m;RZz{'KHd^Pl$)ó ~a3Xo]0 $'@,M݃6O(7^| |$xZWB>? mzsU H >K˜{ZҫޮE| BXS!Q\tŊ`9JA:rgG`yg®HnGƟ͔n?BH^,}XC_N"H fWܼ* +L#3ǡG pDtzC+ @|`a_ s?DVHqjt&'c][pQ5٣bnYόc!,W9 6>E=8 gls5OR=aޛS͞ z*2}Qp3E܆z";Ev&e)0Zf#/ˏۋ fqeV1紨.ΰ;"66Nr{tF3vddCN+v],9!%D $&jV|U7 ˣ~8i Et5M)תʣޢ{^$ϥ"^g%.$[zLN\>9f@|QpC\SamRPm"C ?b+x4ɕhoq+D+"xd-d^iazA儢r(M *rOl v5qYseV KjrsdO0-lA،`w-Hj;kvӰ)KM1D7I3{"A,?Dw5:BW:2LBC;lE|K, ]t[ijpJ4pyaM#_z0`S)!7վĜ!DH5ZKLr[WnMZ3kDӪel05]@Kh\H*@m|?S s#'-T8MT(fq;i.*R mIy5{7)ۖ9If]UB.~R  3?"GDwb8R*w^V}4tӈ͈[pgAx):o xEMϕV.[͆ʯkv'fh޻5󌼃[!X i)<{>P}5tcwdmĽr`7ILiB 0t+ՍӇ\GeQZq-Op@GTӍ#- TZ Qf,bGn`B}]G*BiJ+Q&PmH"C¿Пq{ <=#h~!9Iȸ=uANM&njLݡjؙ־VĚ  3c9*Sc5nO[AJ"8vrDL i@n&Y SrKf _A"x/;UVf_*,43p^!YNNB/;55vtQ$-lƕ+> >0}C[[,D=S9?2^-m`Tӧsś$r〼lРy}%72i6}I{j=75''HaKD$yJzwEv0rT݀~?E>)2Q<#[MoUY9nRdB_w2JKznf,s ' U T@E,XPȭ}{nAn-l c5:pՆͥs;ݲF>&,>ո]/Ioѿ,;2NS+2W+qk%:!x{xVnc{_JAĵC39Y$L j*]X1dIˈi`|O+4]%9(L/+EoyB  B91OK=5ܘ;nVš;9gG>?'9rCVXPZ`^`:2n]zzUPKa/vw KOu ZXCOIS  l`1 :‰ k[=fq/r_wPlӁS.|O(psG7NFj]f6  y#Մ ZŦ,޷`Iq{be"Uz | bbQ?مzcJ̓4$Ry]O/,wEgRClxQxrX/0']x E,%ޝ֦Qo̘LIHLE6@O$;|0f&O⒬=)f9A ?ɘlȮXt7ep%I# > y)h7 ]RcXh#}l]iRAiؽTQ02Y*|#{/NY{??iW3&vVmq.nq!K9އmR.Ɠ0mOŸ)/JWf&I@r[=B2I48}EE0h"#)&VA_ -d#SF9+tneeT-%AɤP٣ۧH0wI:OJEg`AjyvR Ra&"#ԍ!Ԕ+\JnGWBl vR`;Ms0xo6Ã}8_%Opy })|nA!=E1&|=GZ.~V=7İ)y2?[\ Cɭ^6]G3G@O\W) B뽇FJmƂ` o8Wm$rXw >~HY}] IH#$ 54<;e"⥸vfK陥Q{!?4e n92$r3o I,Bn=?NߋRl[UjDWqʫ'yɏZP^!MVEP'|.0ͅMC-u/Jl]]b;Hek 7S6lF6 C47;R6Dy@y1x&"D%嗢Nսg#@G57l=+{OK|6. hQ\ұxqӄAR.:]chCi~DX#.w\Fjmٖ h/űPزGPON}N6~(=~+2 }z.jћv5(kvڅ_P)~Zv(a)(0{5R,_Im-{lPj-f&l&*D<\w*\'S/a hf› ~*ݣw\S-\ʨM? ;F).T&襓#'f[·*ͼGp5!9~s⇀SbEkߍLQS,XZ_y^ٚOdzϊ(ZEVA '^pAOڍF4-,$67wPI1 _{i-=FM\U,0U{?|lZUc]Q 8p~Fudu1{oP?fkSNb'^0/31B 2F ՜dئ!Cf>J^-{;Gem"Sysf6 Cbr WfjU팺;Z^w&з4{u6(1%ؔp*4g ƃH-5}}ۅZ#DDJVL Ϭ/ye s} Džx%9$lT^4{^d̺Q`rlqRsܵAe e~7LC/Vk<:% !°O-ʋm'joeaMR0(7`~=И: / Zr^]Z$B2ƃ*}7˦̺78QMdph= aϤ!|w`E<~f:_kù}Q/T^[UKꄩ@8,2"CMbޗ"Jy}B8az!ⳤ>Յ]%jf0OR~640[M[[;lKL-TBk.Ɏ$O#%ʔX \aT,2m[{S/v#n;bɈPk?}3=#CdW*pGAf,,N9+!N027Wc5+/Ixyp wXhxҌA)':ċn8j{nHV$8fXVMтJWGDm/ZS eKQ"}[$q슾ƙ% Y @τj"?gy+UL㧘-tn:<2?pA9IF6]KŀC+@{La;*$GN/& +S_Mıfg"97P`Rq2L原AO,X$ān \ٵEi)/x3ܐ)^F@dY/L~DDD2H"A߈vgyt@P\9b6OmVEb8³1g%Da+`B?VNg(yc4eQmK6_~I7+g0)EczRXGe򇝏 Ѫ֘:}tYjʮ¡Nwr 0$1~54":d[<>1qHZD2*29WqH[ΠD^~wxy'\EĹ'8LQ<U[҅IjpsMTg5S_ľmDm^ \W Q&eN-GT=<\ $8O7j\Mi }Q[\4Q.0[/F hըԚ9WNGeX Ab֢^1bDg؍|;G/H674Y;mLƦ\9 1xDFEE'V= TJVSe ,z*MжlޯVLBdǞw! $WӍEfCkY rά( 7Ik 70]VӨ#́O0(3cRR1DPL+;<u (7;hmOQLݽ /g Y}䦔e< ~$;ƚ[I={dO;q{73kïdMTSS,9$^2.( fέ/?&jwKl?5FՋ_&x- EKt.oO }PӶrx~6sF񏱁%Wssݳ2I _) AT~AXgbXF΂s" [X/f̰NpOb9Km$cNw 1A˓_jSaETCl~]١2܈xNĦ߹ _!~݆>936ƬP!(&G"Y b@+м$hki2g\½4yv~B$hlEA3U\UѝSب{ctTUUabQLS}̑BܛPEJV_{v8"Sg)Ҟ̈DO6?G S8]A9cNF;ȬVDquM&O픔_+\ϵLF`"Ց7!/mVok /#G\{U~La D7$[@KqRxVS_+W0 W)4$)wP9NF)Χ4Ȇ\P؆E[\~'kU%zObnkxĶMw  kq@!1]fe`j_g2nO2 &,Ý?7nWr;Ò@A` )x) ys[է T=)NNz'qzdi GdJ`@G-BO0<$G ߦԩxo5KkG_ j"Z Ah3X@RXEPs ߱| !h9^s5J= ෸׷ B,{*1u1R·`f=uH1dϬrV+ /(Rp)$7,nH@}uyGS]&@JEFEAXl089og8^5{.JdhϿ3`_ ^+Mu_0mR&Z;9Jm y#|`w%!Y %?VebH\"j2 QEvɀr$lŠ5sd_ vTǞR%ٱ{w.N|,8 mkdyo,bh$7q' k WRiZX2}* eɧ緹7%Ch'r_&=ݝ&MoeBBsTŻᡩIU^-Ŭ_ÊCw{WC4VNo\#5(<5]{ ?5dWiU,Z{ %M' &&2*Ila)##Xp!B~\~.麂IS8aV3Nƣ-gq|+8{-?ȦeQ"c?fau擲|]!gɀ=d [?%ȄCʍUi|ׁ0QR0(HY V?N߶!ܭ KȁLm/ (}Ky dZ!>u#8n,°pk UX\q: s1 g ZJg;75b^"FJ;9YOxhoj --YEa#t$lې|AD(k u6x&ɩt Dv^0zcVuF \1zb|ixM䇥b9A>Ғ 3E{G󎁒n+[L^_m;t[r?Bq) MtX-K洘S o V$6m}Eqy9O\Ŏ?Yn{%2>!zz4݊;FUnڈÎF\ N6RS8EG'o8swj_5^4'd9v͑I/:qͻ[8,0@{hgo*48)z (xͦ"қĿ[*dVBO*(57:uG3u҉o=;.ْОFBvYx"{(y [>l3`]Kjg³ WL+tE.T81ߩ+Ar 0o+10n!v<u;G&%Tv6B81Gd:B (׶l"*<˫n"Pvp9 u{ (C+ur85!_c^.y$2'H"VK ok%0/DžUklɨ1zʨ:~>YaDOՕji*#kF+:^Wj_@vnd/gu%&3ebyX~ Rx,B1]9>4Y>!vgzuLm 0D&z>70J`>գąRJÇNhE 1T胣1$Bܳ ˴

    *VJg_]\F &BuZOt99>,ւMG` 5 l9-ᅰǟ02{W(uTa:} dByQR&jG']b,&Bs@uzi^2"*̨l(%{o06yszjz <8[t@6n⣹;?)^D,Ş޺bD|:1Zn"#㨫i|?50y(*hȠbR(ǹ^F Q SCʑ I+yvw`4,_ݬxT&/tnE)Haus_R}MJ<=Dl&+hM?^i+#ys,9kB;)N>+~$6D5ƅiQ%k>"H#d?5K"#Q `4u(}pr\ZܺGS Tėh{kߢj>cfWlX6G't%sgIƵ#e6q48 f6_Fak+hvJ2@ybD<-ʐz] ꗬ6xx"{;mf/d[{H`[$,Sac&{gU=z:ZTa3)BORb~%ܢ{?PɽƑ NM8xA6(wdJrؾ>{|\qhw4z&&ڠf1!axa 5`bx/@!bs!rC:J"!RȀMe~S'm Ϟ:`N/Q`U.~F|l +Hṁ=M[d*Ln~VS =k.@.#U[:5Pe DN"5n*X>Hgd;=b1`kC+EwR?` ~ZLbJ~*J"vJU"D&16*mJPp*is_$d&I5P>Wސ0(|ëY)޻)@fS\( MƇrkb_&c#x$ enQ?p˒ HZ%Ay)]f\`rL׆)Pf8 ]T +ao`Cs Pe[%LˬKqԃy=(HBvzЊYz6.·V]X`j*1RWr38l4[,$,{4ԶO/ӺѴR"VғFQHCdNWfv%ԶГKK%y#N_vPJUȭ`@=cb//WW!zW =%$CiyZl2ÕbVibmtaܼτԦoS_W!zfj33'?҄FኳdOŬ%BDz+t&L|sk1+iQ&n`tT,k 4[I5%Hp'={&[0Wdx8[b/Ǥ_𰏟U谇 GN$pze$js7oBfs؜? 0{X 0V*3 u#6zr*+\,l!҂VPCcŢEA4; 2SK~NZݫ.cT xp$ W!sbAab Jw]uw,x}HAKl/d:7ʫSCh '}Zr,^3p0N&A6v1=TyGg7O3 9 Pׇ+UzhР18ЈBit8wXϔ22o$g/O gvvS7Nu{a.;4P# 5%#s8uVK$N4\2Kj1nH&H )cK#.0l> f$z_w0R|lZ_YtrU2}JYU8ɕ"S ?kijʞ~ֹ597G?LSo*]xb BL\!qzF( 7{lҚ#bkF8<+܉t#BB̨k>",<.q@tvMgzl?Z;<^@~.?g6 OR$q}΄Ey0iz1˹}Ƈ>a/nz6tYuTqkh!qBNEnU.L 60IjTFGLۉO1Lr!iwOS+3#t UίĉT\'ljQBfR Mweq"Tq#.G0'cIxz#@<B_&'̵ q'C".Gp7DLiֈZuڑ!imn ONTC]]a[aGҿ t?J:V#ei!/ 9G~)F\)+=(_mVr*zXmgT!v*+i=7hr}vɇBSMZk V"pZ6hY?~P FZlr E_D1z8 %;s}r4(*"aS:˶{mgiy۞jɒ;8*@!"|؅Pכ]-$˪.4 |λQyin2!KKPNSpu1pUWy'PĜT{z *u?Z\eʶIn,!*1at9}McGpfq}F"9ۧ{0i >rOp Z]ϦL}{TKd36?^/&R,GQSkj*93Hĵg}w%TZHIbCc/[qO'>޼x;EfcD<Nv ʹ2 M4Z2j-iJ^z:!XH7pӑlk7tޞ}2=^2O$;dpM_"(÷BJ얟s IV|2,U"{ > ^9b='_ljܞ;3G`n]v~Mu!U})r Nd_/rZ*hj}-e]yvE".FbT՘/\{1cvdh| ijr]-+rbSl iʳ@<xM IVsw8"4oL(@SD\J>\{]EzAq, /22v/mj&VG~v;PAhP(0Kgɴ}}Fo,){UH:bf5R*[bs;Ѫ U"`Ȇ!5wHbY\J s7*[ffgHuTNaMp;O ,*㼓6/Fcw'3!z6Q\jDۄE*! _9ϻ(R9(j7.fYt[[9u:VÇ~%Ĕb%i^E**&/"A!WXؑv]]kOжx;tq(zH{~1"1cBR~&u)ګ> <[±aZsq"D2 QJg:|pKo=^Rt`JZϻS:'R?Y z^'X7Dzve6|FJ.̇_ ozs#@ qqD-f2~cĎyE'%7awd{۪juGqsFx"$#+L OkGs>]@78o[}8u$nj5M'o&OkZ[U^al婂1Lo`s{%.'he~ohOڨ R," FJ!?QUĝm`}vjf;ݜāk@ְnw 5}Mo҄L $ ~"6Lf'/n6P ~==˿C/|U臧',xfq<}>GćGj:J|)jV/JND1'f&~`o:Gl#-Kkep'3@?>p@}!nF߫:L'A{[ :mM&R[}˔O$vjK:FݔѦ5f(tUkdNIG7w\/z,_]R{ҌoJA{ rC #Q%$uD,@gQ?AA83B nϨ{`-!s^TI syʦM8 wM|jrz*!#8ѐGV*Ke" /cm@EN O6b1U!)긒֓b]Y8Q@F7-WAV5sPW8$4-)V*D Vz1rW<+㼽9yI/(m9/Gfe3>Y,_G_>b{ 85(\FXmCuw. /,D?#nuC*Y=܉E@87q<:IJ6 #+RzknӺa\=×rIN q3ϲjR7E5ۼY!<ݥ|vd0&4oH2MLk:3(lC.\s@] H R(k3\PQtowh6S1gzy_a vh߿v6v.G'Uԕdn'T[ԢO^jdćW8p30I\/%7 ] 8lUix98aXsw鏔aųa@HnoҳYS<0iױ] fR)S_MQ1pPG_H`Be!4 ʎ%}C[ x5~!O.yuPTB =%4 XDЂGnqL>O2٭8A]9uB33"kbOYj:uZ7tAk)x߿ܝO(z X#•Zj=ԟ{ 2y%Dev5z>Ɉ:U}Q|όN${"`bƖeDe MLɇGl^/dI56"' #ń@#x8V[;kzP~J;j 㧠] vef1Oһƙe,,y1GX Fb suY"FE]HAHp NШ0SplDϩcg,fGf5H >s?iIJtqKUS թFo\j`BN9/ioB=f#w񷟵8}!ђ-E 5Tϒ9C ; 6j4seCyt5O[ɧTBpz aٯ"#_:( 9γ |:# 8]3FOaٌ2ZEi6G"jdXzy, ACg4+to y8+Lh}$ln"/,n@]旦vPq~se%Q?K9gDs$xC+~)y=F|KR,D0@lT@ f&|E:S*#4EZӧO/(PEl(-.8!0 kdd MsK=9:oR8鎃J$BPeĉEeAnlέal s Μ7҇ƦJh4nwֽph?j c051dR19m݂ӿ0m0'%\B["7x? ύ"EA81qiO& U-"cR0{CY;ZXSտ;SM5Kg8OIj }|`8~m4P=nCf=|"`w jpȆtTbp@"@*Ўr!ߠSis*1>SDtqWtF{jh@ ('wƄskh6i~MԶ_ͩ~Hs̒81&hhc(p156tzmcL1Ri!8ߑM#{{ӛr|C/e4dB**]T{FC#nRPYb1>$ ] 5]¡d< oTv _G 絕D?]iinQƶǔxoUDAm)/(S%[y{%t[Qu~2Wf$["|'ﻡB7Z 8u4=@:efL}^TH~ {" 1_h 4X AV@?7(o+~ <mOZ)@N5=/ZizGVqc s$xI,Q-:tp´աIvvZv5}4-79Ҿc2~ t4+S<)$*#c((H65_ֻh֖UƩB:E0/^}ihR{nNt^t !ʙآ1_z M/c-cBDZ=ϛO>4 p!!4(C|hYUv9D=xtQyM:Te6_?me\q2bbJ$/&!Fm+-XIYؼ$_]z [:~$-SsdNۘ;,WQʚpD4Zɜ-XҎ~W:HA2qHF̫{kkdɍ*9"8P:RsrZNy[!fc /.( Ѷl+_P§/i%}Skq^߸TmȠ̡W''Ш3="NIgv%~cuUS~DVCUwWU?~޺$Ԍl9eyUx,]lUZ5YY3~U``XAt?UۮDG5tLkQuݿv~nAzS|AqԬt:\HQ5rx/;؁A =cE!J>\ѭwsw"#F=DEW.|'VĄ1m ~~VѫPmNȟ^{ƤL|,PPzB+ E]MW}@?.. u8%l[q:|<+bF"E8cE* teg i%%Sx2KyKSr~Q/aBAȶ l]&U [5B{M$JrqBdK"yq})_zϞS97ҹ}۟8,mCS֋zfxRκtee)mlgui@zvzA*3qe4m8~@",9Lćk~;\@#N~A?h=Şc[W/vO9,n9 6$+ghvQSfd@VvsDqm,jU'1[_nPD/*

    ~PpE%(#=6ögn.H;:_y83"Dp:B:rn^@LE#N|^da+__􌉙 2:` HvVBybDޮbY?QCDJ3KC8Yj*C=)3 +41zʣxB4gbu2aN1HQ`E:SWRich5 jjZP+6Fi[wIPNGxxُEo&Z{s,3Z 6@ɝnn_=88G)Z8}׉=_N;kH6YD` `E! BI&z˼YYdJidB{.L;<=mOQ^mzh{Ug HzFm+ *yVbmHxӉodȣң‘-.^6 "o ]6WD/MTTb Bmst* !'X8C-jWYYmyOMmҜU"򡗙j3f׆;0y'tp ëtVsD E#m ̫~P"yQǭ(dis(EuWj#BI}0Ah Ŏ R_ Q^l"32?6BVnMB4Tz 󊲗ǵ#hNތޘW0V$BvKz\DiM补 b|,Hv3P/1il! ގ,pHU҃!D6!D7ݪgΫWDsP=jr8KLWDjg&p,aˁ3L0|tgU>5-9qu ۤ$V%ee$x) Lc#>w/pZ 큙M.(?GTz;$@RA竜)LBY!.txYXvqץ-a:;CsjT3e^]Y6*&~A{ *A \{#Ԝ@u9xQUsׁzA,rp9LTk2''Igzetȇ-Ȑe=*$Z]>Ġ-i y*T${c|'7Q"cis\6UVbYדm)པJa{nm;KӄL~!6i+Ƀ3@dlqۮ˿˼Sԓ!Ȏ v@|XeѐTy2 7吾 XmsV) Oڋ5zɢIy4(ɘRYb^추/2l00:_?IPg-2 KՇ(N!\Գ=w K78!i`*]_fD*K*i:yBr2}ӻmD[g@h7 e^ĂccO1= ]n&\:Ĭ}MY5ᛴUo7jG3\l)iEE?MPOG)Y_WvD_ !bV*1/=~@J9m59OdvG{-̘)]@Ġ?9ɍp )Dj.O~ hl/Cr2CϸyNr'##6e1_o:+^ܜ<{)6@}LD6Tfw^\0ut:8I{G@صHV:sW yHzaoM_6:E店kBpJY%mV?͋[gUxUd ˜9>.l=d PU r[$yQ֧T/>̢u+Q8;Fޝz_JYN'lrٯ

    q#(1EER'N= M[CZBfî-cpc-y3D=H"ϛk>mkk5`LUm09B(럅UT?n_vu q B[AΔ5B$utMLdEt:[[2He|{9hNB5"5[lƌHmx>F6ZJ`Eocsl)E{XЂ9[\7_/ѕdg3Y0[m&:|^1ɼ) x&qSN|+j@yBBЊ,|ppe& &{^h5|aDwgtZs9K-Noͫ瓝n>H& 1՟#"e">VwZ9g\WŠk$1~|n4pQ3%V,OOǣ2jp.(>Kb>o ":LXgv sif9PI #ی,$umg; +?$)dJ2 5"'G#1l[Mg!BdS!YcpV2ai#BNH ME(؏.&?CJ`_Uzgl.$ JO#LY+1kx37D"Xt#F/QlSGAO{]B/Gęx|3Zzj4خ-b?[DJ{{ xL?4&8ynGB>Tθ@iGY?IUDT+9C.1nLm$#3 kEc o<u=٥( 9z0؁Xj,gv zMm|q)=[jϟ4 ̫ wZP?M5ke0*H_lE3{#N|3vL)6LȮ*}P>g>Xo׮4rqtw6">mNiXiN ȃ2;|9IajzeO0ܣ^m= M;~Mm2TY'3 KQ%hl5R-l`$]Zw,@zajmGݫ>0ЂyjD n>7}2کݲ~J8F=<[+Zgg*-v,z_o{6͠MݕH<5wKĠ@N ^&Lh-UG<>e>|/:I%g+HAR+oe T4EmT ӕ]i[9QoJ'Q˴wc;vsx6=t_{Iը/o["<3 $lJDֱ$H̄I/wüWbz\E21q8H {Qa&XmzGKpy-o*s &"wKzԨFJш>o2irAWZj]tIzwԈ-rFXP3YJQ}FE, 1Jgo{ڰy %қ{|:SLWPdšXwO_&F([gmKZy~[95L2:݈>`h0"jKDiRڻO@/DӇV>7s@>/j<37su=bE6E@>/6e!^q Q>5BЛy=o-{Ir>+sb58&aFs*E)7=Rr4hne! #NiV_4NOfKB^J%sP(Agl};)owQei t,jqN꫅4#ߒj8.x"8~b2-T|`9{_R$yeCm(tߔK(8K/ju՝;s kW\y9"ir(oU޺p_V{%S , 9vehȽ z$\`˥VNqlxjji۾LH;P懅5h?=>Cۇ" Ms{#JxY+S^@wf FJH5w94Yg2Ζ[Qo5E +MY;X[ˆ'rl:( uZ+W 8HGK~%WWQka 7k:R6`AQ@?&J撡D(Zz/fx}:ϲN 5+ 7QWu&zqgvP^Ґ1*_ @[]M]8!PԏD$l SGY,qbIz;(#xmBD]gx ~[lY5 .ٻˈ#P eԥ]v0VUa ?" Q! w\1By㷘qN0oߩO[S۵ۢO5NoSˋVS-Ja^=gi&xU.ǎ˒Z%d fQW ;"K eL%F D@v?gnIYRZƬKdshzOH\ϺSF((q{4bx: @D 4ptdzWN|ء濜՚AӛZ@+x^͍ Evnp!P6_sZ$ ̜Zr7mW%ƾ乽I䇏QDV^ ORR(#qP-=i~kr04vW~C٫x93[}11E i8 $k.U<fȊHd[D^N\WZψuoWQ/b4n̫Z+$@$)[K^Z,];''/I좯-YK!)H9٠ hFQr>TAT!N(|ޟҲ2U L;` F^~Nx޹[Ñ ?b<[Kd")TTK}ؕ {}45X֦c NG#7d#TMr2gCah+\aGUeym1jAbyAЍzɒ|t%!{H8Rl+u1lы2腨ׅ)pɨ:qEȏHjRe:Xmv5UaqDf괒gbF򩩝t\$r,pݔfS[A`Fyp8l(.k) Z-pW }&#&I2O,k8ݧ?[LMir?/R7΁"1^k0epK`g'h/L74dqEyHf7-OHͽs3/RBDEd'$8փ`YTQV@6YTgY۠F̓5ۻW[&Y4=m|v +(\ .H* !^md&2k Rrb_7PV94 {CY &x7 F]AGU??B)Éej{2b{ls /Ls' /wՉk L *\*B"pbx!I%MݡZLĶk˴lfAEBVL9Bo-[j"1 u#&s? Z>3+ݍC-O/8`Jj]Ɔרԇ<)XUȌ Q+ƈmk"=Qzb\ PC9X<Ө\^㫫+%JW+*L˃{0^~*⶟o }h5%dvc/C,Xj\iLxno~TGO 3)]+$rdL4QY[cs7;jXxC[F3 ⩗uqٞoߣ(z -)J[$"aؼؚL2NIvpAƌ5Dpydt%? UGC:%AxB E7~0XRrh&PNsd!fch̹0:N%Z˕E-.ͷ¢ @g<ɯwL^:v_DۚomہJuOp%,&N VQң(k]f_=S 7 myG\d`MV!6fO )nD I~GŤ'KݴguJd#`Z1KԳTZf[ru6 W,̆cN0A}QE *x)S@’vTȻ.{;Z-6Lzfdn 8ʱS?< W'U6'`פ,fBt8a_7cOWތ0؞c`59r3 /$Qu-~36V!aT2b_^6͵%WG:E}20&DmRbGQl(Xv4;q$Po)e#kK1ݯ7;E &GOdnz1Lw(߿6Թ⊲r||$rWX6HlHb_g81Zy5ݖfN|j R'aij=J-s9\=JcĒ jwK=ghPj-Th!kWk< / m%kOBp{ή(.lܗz@.)v6<GJWo/nk]( 'wkg)a8/ DZuɳbGÌ5⃇j 8w&=3q ba'W98<0ac3n$Xa}dO%@) 7`SdQiN[UzWz^nԷJqTY9ey)Cީ礿\""Y>_`<"hTͷ+X* +;RӰʶ5e!XvJ7ċhgHO}gaKy;MΜZR#:ۂ{g'&MzX,712uW®o|ȼ'C;%`M|wsנ vn'b_Q.!k6d[w~5\gsû,kξ 2RcRN|qc>O;zZ Ԛ ;3=f~ _%+9OuEݹU=MlqCo)s2箾#Y !; acFYG f)F1"aTߥs ƿ'$J@&ۂ˚rk[gQU9a$M/ Ԍըu56S#^` 12U/Dɬ_lqTe1BpdLr!͸7LxSEX9>=mm]$@LEFC' @fdf8+YJ?Ѓ n>]).GfHeq+4K:bm;q3U4mH^=Wf*p`FXÇ3]{\qO n`#u@Fyj'A^<4,QCr9'Mg&>GQ;-MOa5|Y$Yy~ U @p$LG352.yL6]Rcd졢^j޿hfxcΙ[ ^Ĺn7ێ : @0 ࣸHӰEb|T(, Q )pb}؂)|mۢTQ&OCrLZ#ec-" M!y&F%`g%,X j#78[ Ng )v¡Ԓ<7xFoG|r̼ ZCg/xb8݆8pz=+ ܿ{f%YFAz&zDV0+>hyY*ggg+7]` 9D$-W&9̼dzBCkYUu B.jt"? :Gūl(!Ѿ+gn+H2Dba|Aj jL-m[9_| ݩ85[u64aqmܢYDMa#U,R:wN!+RlA]?+";Y/zC6@rjC6ej˧#Op)ְ[zn_ƝkޔdࢉuN>ZktWXpu Jɏjо&E- +78% r8! HgtJR9]F#=GѧG添z=ԪՎ+ܭĤCz)]w -xG7_wƲ_a;GWlsXtQ)լhK[gk1V?Aӓ(x+XmC Lw{b \tj+2q]yྪoDfUm=flgb0K#В/|UeØf̓*YCmX b",B6$c.1ȧ|w?ls [Gpֿoٺg== ϟuDv6ZU6krh FZ`uKl gu"Dų%Ę#]ghO @ "R+f:RP +}}d Z|z ?dwhv**,glwep#`. [ެ'biّ̔fŰcA QU k^ Xy~yG⬓ 1sr4<)"H$}s82S5\êNQBvM'AĄ7mTa.q7lBK韫S};w(n9qY;)ttQlj6v5~?P;t>1M^;DCx$d Y\4#f;  ovdq5ڋy'/9`_Ny<%{uuN]djnkXH〹V{+H3"EuKx/~oҴya88K~'>k!AEm̱_(Ԕd D* RP#[SZO?$\}@\Y^-8 Ut ID6\:xVF*@DVǺ0I(=v8AcWBƆӂݝIMzFQOKF<*i~*Pd (fp Ean)஭Sp};vS 'm|2vםt򚄚^Qp[PEp?b kOע DSAG@WUغAo<>~vRMн#[(wVqO3-/.38U船4Ώ7*(W}4m~O]M& 1}_vÏGzslߓݮ@HB ܾ_VᏔ]zhnP$k Sp\?)UosoGڇB qRe,qDS#aIc] 7HvNpsoFӕ"9_>.џ9GE,GWԏ`#.-kφH)dG <8`~r-/@Kg[}KI#:,e Yf'ĽۯKO2aA`8`:;'[aL:%"gY8mf6Ơxp('z\դCH}S#l/:nAgh+;6$/u*}^1j/>=#BθS\)9 B%{mѬL/s\kP}b>398 nC[& k;V۸d~PgLR=̀<Š]Ɵ|KAlA؁h"cޕ妆@aD `FgE(TfRut lh{u`JRk$NG;Y#]g ~p U95m5JYEv?oֱϊ{e׏/m#(y=W]!7PTj ,(*Nl~@IM*Lf{UcB)o_1 E蹧%TV`z{Tho }Geڻ O ̺T/ѻw/tĵ$[滤h[r_㕈?" VѶ6fIL 65_4U˵s=4M`pb27KGgŠvj'bKonJ6_`cP]n61sqLZA6E/zhPHaż{ltYy5XIRSCS}ܱ@ʛ Rl .aJmnjڹD#o$m"=HI`TQ^@*cVfcӬX-P:WŦXRv%*}[|$ع%wOBM[po{) òY-U&<dΛYN'P a# 7$U/䒨D^Am퐞VeH9-;:bBtvl*_51wr4}?\Έ,Re6)@ja Ne~pʡ_/(ҙsT\Ek/y:m4LM@ݭJ\"/xϋP3YSUTkxv 7(53OPuԇ{$&?ۮzU))\bP+lv*SuDG " Vt1či𷉄~r(Ujedbq=W@6eIqC&J-6Łpm'q?'Ob•HoNs #9,d& _$\,=US% )LVn'n3!&Ti (beurHDo|cҒ:*ZmYiu\qmD{:4]ta3 c5WZ6ь53z| "F(UQc1n{Ve"җHQK;k,ԕP&y;YU HzEcC?>EE V$@xoVoґY|$ 1OO~!4r=ATηZ?1bjPb"qG+Z޹ubկ=r11|6ZD")ݢbCV}=%ʠlܭ_((.Ùީa.cɶ](%KyG Db+#c.k vQǞάÑyɤqlAK(ۦ*G+>ˌul)U>6 {#%V7r\:P6S|OoT+!ed ըsV}įJk; [ws|P ln!~7=z3(_ V>Gu*if nk q!><8oaZcSY쬷{:(Jz(lS;Hi~<ױB'!#o{?J4/gVvzQ_:j,3v9HOn^V6ݝ'}`^>G q"\ЬSқ]5N?/$bo,FJ-T-dm35ހk4PR;+M#1Wa~4ɹ^wY>wǡ~g9>W`fN|jKjXDʮ,Ci?&SHDBF<-ŔCr8!c{: UC˚Eg&e8&@ŘwqZ9"3M-c@J=@=ʟYb&ܦ[E;-+wHq r1(J1>m'LiEJu}Ւfc;wվʺ-tayxD43q_hU/Tv (o(O!v#?dwS גdeVn$z2QBj7KMo a - eCS"+ٿ2tU~pPFw'sw*8gx3a@ $ ;WH{`t@ț1P_#LߔV_et ̭P+ul~'|l+Sgz-T0xGPeyn-I1W%+OS;-z&r Nlʸit.1!{g]^;QyLMi6ZsP*f *VF=8AkQoNYk{=C]6ʡ`F azOd,vŽ۪Ga1*s6f \8B:-\ ';/jنi$O?qLetlPvzxouP! nf3PW=1<+0֢(#O ONZqc,ϖ^S RWefL~s8 5Ÿ.q79Rg'rHO5h `fkgM 745:cJRXx/#M*hRY0i@j\n/o>m$hH _4USW";DM?17e!٩WGImJ# 0K8aءz,o/{ \[@@}sx.;oKhGUƸ5 aH&å\NfHHTy]̞Cxө?]q"E5zn p_㮞ۻ Yqr|C{DgE'TDCyͧR*`Ԍ(͡-Dd%%dy jY%S,1vNf`hONaO ۅ!]Sߗ^R48!S/\zK7Mv,މz8A<zu`>+2VleE't.v42G&&Nz1 .ۀ"1uf Ⱦb`(;]ux~U`fQW@wi]Hy>W s7h[Ptb=F.*ڀ^:IoYMM>>|2vґnjz&mI,@Let Ξ&;N^S[5 MZȯ6K,U6q h*^660nHRwDa7."}E{c4Y֠R{#ϵ5[1+!SP6ց3=!@#Wl;nޱFlmKة pxXI*`|jxYv]; ju S zdDk' n⚩IãT*4u| c!hv1>~ o浇 #I o~x—OB80C:o M)S: 1?A1KSᨈCKCxכڸ*MI>e 8R0d!rR-X UP 5 nww[1BsN:#xs O=|f^Y[P#]!RסBXJtYc.Tu\Fi o1 vQ)\#[ֶƲ)BW|uQSq5/lE"11_S> =P S12 uj *JQhc/[cHͶ"/ {EN9ֳ4gfxpGAx5;=#cPO߂_nӜ,4kXjA+JHu(?[=e"0hw ޔe8\ռ^{-0Sy1(Y"kizkD)}0iZ',Os!vćImpV;'gxzxs *9c\PݙU6B%bQ y8,}N!ZGSpKO&H_ȈV) IÆiDӹ5ƶ\_!x>6]Q}*>^_52{mh!]}aa.?VѪ'Yf[).WIO d@$N|bV1zD5&V%--Ѩ)Nj(p IN`"'z-|,8ݝB,ܗp<ŒH\ipx^M]f9X͙ee;5āl!lkɖċ]wv5N2 *&Op{6wS# -jTE~Nܩʪ2Q"_yC?, =)I };Ls2wq+&*/GkݺWdX-02GRCF>cOZ"' l^X>pᕁՂ=uDG?QTD0n<W*!`i-]UQ,l=o}_{S@ Z355n{=²`24@5F(y0J<ŮA"E]aȴgȧΜ;'T+^I#)SKb׆鮱R 8*F\)BGy2ZXIy}Ԍo&yݙ,%A4OO0K`&Wf-hыt޵fz7z]uAh OV)ѬwYAAoAg9o?]\#& r∿RT͎oҏta>5SBONlU<ҭꁱ9NSx%{ /OV"ME ΅&w9[UY,^1Y4&(8 ;j/g@x#)nB=%n=d\ѣsj N֨Y:͜dg!ĸl7]`T]⼇!מLB\ZeT}Vguj|=7-?wŬ"/a_~:Ń3;ʾFt{/&BB8%> dy/I4GJ뾵W!9tp&:ᄵ!y,:;? S8c]^q\lK2!"q fgsmL 7Un+Ӕ8H462`#\UБ5a61m?'RS·4G8zG3ܔk=Q%aOB l 7t*֣rMf2q:Z$uۓ}rE, F*9;ZwqxV5ۓmԣMn'xR͹\*/;,h~ 6xxkĒIL YF)}46Sa10Z26$2*j$jIbT1Y3zhOL܏r;AO;(QtEG xaM:oCdsp[!lαҴTeUf\EeyXVrxVE;gk/:ZkedBj5:Ӌ0@kk9 "v?J``F?"c 7 Kƽ_ؾ{l ј*T#(ts0^%flH^ vⅾRq:8x3˹-!B X+nڜ0}!vK؎/_>*r'6?l\Y(!)^/~S|,=(Q)u%hB'@! 8:eUWB+|S@ZC&(vS_XV%7ÿ"ٯ37,)ZE9? Ȁ]4&-|tpvn\O~n(P.o <`UFG2v) TUn9t]P o$If)p~}8^ k d{GͯϣxOK<0QUW)nu |!TNszBB*CZ-9<"DՔJyO̔-齽q6bܗfa!]NUԵlnqN_-5=d&/j锑Wۡ]bJd|1{J$V|e$Ӹ[FP8Q ԝJ;Ay bC|Ox]W R).a/bUw$|+@yPF ݛ %|U=oMTxQ2nW=8v֐ϥA(0v 9u#hpf0z;#ºࠛs͍KJmLbu)lG_O_Bj|d#Tx1#S=qz{" JP}4`ʦ$o @9ԓj 8WΤMK @MI*H%`_%D?6 {)Pu}JH~+x3T {l6T*kizvʇRv?a 9O[ c{ѻNW(P*9*qH9'Ou&r.~.]*[Di*2)?G@"3&/,-"wޯ (%FWKfŅ5ۊh bfs9@vPnePQ`:VEul=s|ޚ:Ԧ zv ޞw|dMgTeO&ΣSwQ!cLBc,UPjx&EvC&crlQ7Ki~F4c~3dbe-fzYAO$];s\Ie'ӯ%V4_:l0<7a'P[:UΞp7u=5kha9yOJ!Ď/7:8_;f`h]3u==;xz9Ke^A{(g ~ )p2 Sz#hBnU>I pLn!-}ȧitQbu $݌Ff`BA3Lc%8I6=9kD=i#ؐZoFmˑn(20$ےDs- j\!`s2 ^$_:R. pR%tP@աB/8ƎqX7ve"$!0pOUdיҹZgl$"}ph *t4yO mZ;xm*"Wj ~,KJ\ֱygѳ70= ;;Df+&y{+n4KKݷoW 5:3R^j X[w.A#R /wjl]?\~ / <%v\jzso T#yXkhvGW# qիKۇ!S-tMv,'}Նߠ?Ӥ?ohW|DŸ87- ."Y2RW#_vqurE ZRƕhGB$a:ՔvւJMJҳIF( ngr5+ItlZ3+m |ԋ`ԁ5U"K#eQ*,c ÿ ^ur. K7Z8_r)ѸtW.kG؏&>fO:1S)*\/؅)1xOdF0]ku*ex)&jF)܈T"M?F{񮣂 7+xẉcJ1Zes8D";z!T5oƟJ?Tde o[/]dk7DTflb4$o[g%[̶#Nh3s Ȍ͏=}:lc,{}הI~j+cY]<(m7kȟ^W.R9*:^k[/) j?aVZłr~A\MM^{ӌAC{:[_F0j^ubSfP"cz V:XANYS"1zԋXԄ5NCp|4|m,I ϶^w~%dd) %}(f2P+gop$ČK 4̼5kJJ uc' '܎Ot3zoϚՐa瀢RUW{Q{=pK(ࠗ1-*ۆ4.G,uZcO#,qГQvegÄdGmss(؋R*@aq.7ivӔO24;dx(de ԯ2԰Sߛ@Mt"! 3₆DnWAL٠B/]EXsuQ%XGFF{|ospLKiFU(=A:vr{S$'S}iKVx 򔱨[h]D`KtULŀ@f,KP`5q!/wVYl37r*yYol,vgxtU[Ryp |oWwD!$y,c_Ke˧dOEo {U/wrm\kݷ*wOm}گqkl\quu2E&*iy_O?e$j]9^T(bR|YY2I_SekV-j[BUkZ?E'Msq,C(N`Su(Pj_K`)pg^j _50؟6O"#/ևA{nfGa$VX(j-c#P߅Px<ߏ3@/iY1juLGh*U,{fzMs*f}$u>x_OڸF+>C}mͩ4BȘA騔dC iI CX.a w3M85Rq]6ٯoBHrq-ް2x'"(To`!| 1UE`-KII8dG9 /}iϦ׼\QIJi{-XNAH}O]ℨARcˢĥ0"εkqSS,*7=s@PQ3U;A j޾ї {`P7`RI3最ov0"3.ɱho&,(.#^>Z6"j6eé2mbcVua[a4_N5 Bƞ^;OfRЧX#Q-kKp^6LK~L7ӻ3T+D }ꔷA&@11j`:x .EVVI{\X @d<=?lJ]J.\PPy3G@>yeI*ws\P<bAҥW~}TOdaQ^HG1e-%U"5RH8e^!ꋜZI#Ҵ7yrpfk^{7W<"@ s~GعD}BX iJa)$ܽY/=u;B~|Ƽ;$s:fhZ>I*`VtzO$Ev V7>1VUIV^r⫭ /i`G87IlH3O)sް0pϠUp8pL=Tۿ_y㜠wF!wݬTiTEvXa}kicKϴFG?sԤ[\TcIs@C(?H9ee(;[ࣩ5\zO[gbyg%>Aww~Q]oAQozL'uiIE9&JJb~R&V}P@>0)}e|uVUm'΋@ߜ tʽ[WSu"d{]#OP\o}zSjᶢoM`Ѻ_ Îq~"<+f)nuy<-歪?j@I\6?|2Nmg#+%lB0b'\{ +?tm87[ *R^c=]ꭱkpmbtQ5N| Ϭ}-&C9Tͤu>Ќ ?egjHm'lFhK! qb ^, Ƴ<2TSPƪ=s5id uu9/,vՈ]șJ!+АLPO~a" @T9TPg\j)\0PjO# @k氋iD9t:P jEW J63AĠK#AǷT&bYv\)9n8:_c;J7RbHr'ڝ#[/HO @ȁ{h@@v,*'$yD d4V="lǰ 5C9FDTacez0ozs? c#E/FCHojODv$!b)ݽ)CwҼ71^ч ;ݦ^0#CSUu\S EQi iv0d rb/iU!T@`^H=l &PEڂwIdĐy.90d4sPfsXrVReӠ$ІU'KQﲒ J27@1#u7bk ]O[쯾s*G p0%RoTkNݩ W' ; Nc78EDkn^L&%8el:٠jM,c\BCD 0`[r9bXvsR灃pRrboY񚑕=_a>4vX%s|DQ2Xb!Ek (a^={#S\逘@&M{e-s@b{L'5Mm `Բ4 eYFXZ$uPS*ԞiKh 2 > JG"ʄhFk v?9yGscXM:f*cP\Axא`#Y 4Xoc=Z!?A1:OMk tHe&MX3P}VnKq6g.ˁ:̊3u2CZeT aARީru ZYvbل\qMN85ͱ$e0r0AQc Y!AoDW)fby./ʠgq^/)K-Q=>';: h_UYgr#{/3ҁjɗ(?>mf PwP:% `mS+)<%kw-Lf8@)Eʪ)6mxDx|rdjӋEZ$xyސNAEu1CoDA| #\H#>6#l/h:[:&H,u8`+@f."Wp*x>H|ǛG8׺_P5skT+"2Z,)fxP>xz/9љs1C* gw꫙:­nכ_Pz$񖪠 ?-Lk ,A *>{Kb'a< ?ҍJFS|x$T{0HQN &L0?RLJ8:9`̰:}BoIy"1e.m=c_/DFlvb\QLS˜n >nϓfޙ:h>f_vѡ//heĎnSupPv&qUx=D9"S}:n~E 7,u3i[7uO{l꾺)Zu-&u΂Ô!H~L:q֯22 >]Lnvu 3Qy@+l2Mlo~dp6=ALGQ Z]>k x2 \u4?4b4dY\I"bjiUpٱuGnJ WS>Q2{6ݘx2zA9)| G׍=rG$ (@C&o}ue"I*xIj4"To! NGG%d|(ئH#"c18V#l%:çR/8ry%)w?CG%)AV-'n65,p'YJM"ZdZV;M!xrS@UiB*'d F| /W'zP?k^ON07&|ҎԆV~9X- 3DMjL$-pij_aג^#pSVx6fE .:,M;t=!au>j5 -Aa;@] )扎{Fkq#}*S瑄lT晲Qs6>sVaR +lX?.Lb!/nV#'$<ú(Ty + + 習mO?z9G֏h:s\##r 6͕A)&=khrsB")|CAhCq߭4V+p ve,](pGKk<EְF?!4~l 9Pp@MI}vCJژ%%qL\8?/%Z8 [v FD}>p:3cDXac:ts#/#!.CU,CߊPmЗXRHϔfxPGx#wWp$ ~/q2HȤ%gOr(9y\`|ֱہbZ`lCogZf/AMWgG9d8uWJJyz3%JzݨG {,ǓƁKG2Km;:H+qlgU76Zxc2 *7*"&¿@9pyঞ64,e`[*8w:D߁%:(Ϫ"x0#kP_홹3"_n]'|܎=:Nt?j'NI$0{uR}|<8)OaN[m'Fg1U4wE#ITIWۇc,nG>Qa  e¬()NX-X){hHpݘ84WP?uNu$RO9*W؅5s̨̜wVK!Vx |dw˖~ tl7_ TɻWK< 5>!ωt_f$5E$(F F?u ¢3jJ@TU<- +2WlgU>$uɏ_hzÄӂg:# Ylyhx"oId=ڽX9cO yӎ)]S͑mbQ |h"8.o0)R8X8S\yTz %,ݰ;90($< Mw7-GhIkaz+VF;MW:i 5;IJ@)wNfS^5y b!H؞-/ZhIjWHamw`&Y@$D' Sy=֪Qhg@T`\mAAwP!kXQ&:|3 ?jO&][hL XXT#͖k-/m̿\ ݅("w8~iRbQXMV%l} ^ʬkh.TE_6~Epzv}IIQN=^rԻCn4 8Ů DuUA1pH3az;yY16^3'6fiIt j75ErG?^6kMT7m~,Zlr!Mp>k}g%M߲8AH] ?܍oG VD[d.:ؕH3ħ!6Ύ֕&X'l݁֏I@=_;QhntU4l&r5F5WE9oyvk/ = r,6t._I^;#| dG,dxz[{iWme}V=NS//q;H"Ǯs UG`>*̵. vB>xI@gڌ<&u'HZgBd TR5ŪU2A-_-KF`/ՍDdl{3(%oN$& Aj^uҦ ʄ#q=W#;b6J@5ɜ䡋;RN>%9!s4|3VKJz=G$\E |ZKb/Mun2 Q܃`!J 4fnY;7Y6(a̱^)4G)? "KDg8ΕБ}؂΂GaѰm,f`Q夹e0Ϸ T/>M$$lDQhIKEUO".u)ޞQ |I3//v,cqa9{;׀&!.O'0@} YTP#jӧy]>Un8}ZթJ˰KlqɚqPٮ6P{aXgOzMR*1mU%NKReז-el:HX6mH[!sy^zRUi! k= )"NSIC_8.ڍB!cL<"=^ Xi:Clz f/cm ,% j.lZMoG] Jk7՟EߊYoVYѨM$H!6&5-t`<7tHrꎨ +E#͊ оz =bgv7w '0 O󴓏lɺ'>9"s2gmGF w LRTYnԝ@X)eN☩5R _Cva-"5rDTH=cJT_2,Ϊş$cZ{> V#κyX.@o#97t1j .-?{V27}SӹrI=)&u (Bͥt) ?;6=DQ=l.C!_n])Lx6 DX6#zNo, myQ/ N v5WKtwY K,0䌼Gg1yoQL`zTJ 3ZK7'އm Nx $|a\"g rt@Ks-\-h"% * aۄ>:+-1iLmdZب܆2-< yJ:D23I*$"giE"=^ݞky$aJ :I @= BizfwγH ìQ^2Ne4Dv].>ҐM*ٴ.U I}gycn_n`X@,*ݷkAw LIm]N0-#oǨCQ@6>Ϲ®.xb.K,O=0T8/"yU.jV%j P{![cߓ{ .*1p'.=?:YC%A?hQעSy\l$}pbИk̵pC@'cȠD¿49(stVLt1ޠ];֪oi\Ú4q:d*ۇg;? 5Q?J1x×~!T xVS҈/I%R_e+ b  cU"8v˧ح,l1Dvu73 UUT{/+#v:1CGo0Ip7_w϶L}k<6#ŷjf%WBT#j+qثʳP<@VmD:2.ۥdm&p1ukª~5{ᛰ ,%3UǶRAx "> n-ŔnH 63zdҨmҲԇsINi>A^mL!3nȐܐMSe3!;P-vaI^~8uP_j}YlغQ$ے](Tvꗊ0Wz@5m#p8IPt1L3ΌZ|:"o4F=i?Т<,a; #%h{]_=ggǮRc*s>CGp)=3w(Ca@wH36<> ʗ l7_^Ie:Ф GF1]tqxg޹vد/ԛfn5/i V~]^~s1y_%d;b *x6n"vuf6ڹ㰸$^GM(l~auK[{xQ^yL boFǓ \;/=g..zn12L4٪r+- F(!ҊUc5ˇ36fٟBL;6:6LpRuć1 :BK|~ { ,KH<7ȣ<ЗQt'vG=i3V_a&{B.A-F ٤U#rG9ht͛-m,,L5 T7):2gRzD{ڂJ\ѦT~b 7GB}l[|5 ;uTKF#: t䉏UݲCIrO#2V34>eT}i# cZS Jr 3y\.Ұяr3gW&v,_:4 lN5TOM Υfж8TڸgAMuº&+F( 6t:"2&m߃\-%}*ҟE-:MХibS庁4y,V;5/Q^/f1Gޞ.Yaăkżѷ]^/$eVl"HSoV0\'* F% 7JGB_}}Zc|oq lP {Bt+Db6&tO6DjqpnEh>`aL紪 Nwk(.86\fާ .6Yrѵ&d?S(0ϸe<}9vیh2d RN6-- Jgܥ ~^堙<;m^hM_mTD9Ȉkbe]Dy7o: Tj!go *wxYdZN./nzV,Q}s0lkoAr2uc2vn@TSP0&V(79Fxh)V@t1Vl؝q\w`-x Wӫ">ܠQM 7CaC{6iSf|#X3b.9lms;/ck.wa/+-/ٓ,n3,I( g:[$kuA *q:-B:% okm:_YgL#HFlu4yIv^\\`m+N=A@&`m uyB90!oa{Guתo*P(8R*4&5+02bΥԮZ8&:|z)퇴CNyݞ.RS7b\ k_UY\תj5oV$wBمr"⡝+{MWMɻrn'u:ZqV$)U/n_QuB]>Sh~X,j !6mX}5.]ė;/k+.(F@fx j-^yibqO&qe!/U.+02n'͎NAC}7a )<ڃ% 2"}wmgn%=B u|lXRViI sHWh"<& I)?+ }Cl ^Ǧaa(߹7Uttoe$VQ7o׷gg-lXݓ0`K)]"*iұ?VQMwwܢ6&JrXڵ;:cP씆1ixjU[`)6ݩ;%v~7\'?62/$@@C*M,gYDֻE3-%[d`RJVU.@ᾷ *QK/ Rt6c-4Σa(b|'Iˠj\W6׆|(݄L|.K8Ee6w'0]l*&^7:t ~)5Sf]ǫܶUultKFgTucz36›7{R)Dmm/ϚhRbNL3X7`א-V9)y L.%AcohEY9]'Jp|mFaPxyewLNK`B=ckwq2Ѹ6 Qˍ:T~~jzGo)AI67 aKIj'75 tdz0oY_T C,YE FJdW%_\J>t8ܺ]~1e3*(/T؅g eM@)ArziP»X a >gZ0(7ҭ0γ*z9[9Fq6um\ &h?fm$qzNx{ϣc rM }Imn 5}4wj*%0qM ?Gm :u; BD/! f_ZI$]6% i궪."qh@pf(8ck`LPiS ?ŬYDbI["s(nL?)~\k4fxj}VIPvX:C~nڔq|&0v 6+_9ʄdb"p4mlrIwM燝LoN!L$l4*\z9z]1Z<7ۂNB M2ёt/3N86΂jQg >PYV34yhv^ 6zcM5ʄWk3PD3]dyy{~Ro p.Nh]hBX:0 MuysUڢ v׻VS#]ɻ!1Σ%|Ķj†_ }BQF_,ưBZ Jge~f ~ #ńD`w,;ȬbFi4/Ed`G͎1VK/WU`\[JVz<㚘p ΩAGW*#fޖ>!:e<{qЏ}W5U~/vb%sD ! kYאk( sr4Hvn2{ ڈ=vk:' 3ۏzHTϾac?OQxuDv@1@V(p?2AqpEZx^5<1fv>eZ3 Ӕ֎7FV~MC_Sv㷑g_<`5^YTC,?0|DB^'uB2)^G'&f< phϑa)F;# d&^oLղOn`-@VW*2yS87TF&I`T"7T#pa(%B1 m Ӌoіwy%bc[ >!E:Ңb8&)59n/joFuNb>1dh9[ZZ*Ip7(\ yPfEp2 ?A@?ydU|[ OŎ"vn}w{kl(̓8E-_¶_bs2oo=_rQ*v;#"f8eߥ#LoWZ8"5)_Tku 2;#DD愰I0(,gṅA"IKZԖ\+[3g,飷 A,sV|[RO/SAZkB=/zk2J4C0b }n4^J&f%D9VE0i"g8QRMťn=# 96*]s7qdc.NZoِ-IUg'uh86^a\-{~{ϯg(Bhuq'o"jcyߔ9K_3{2ypG*dor`l,`\ʍe2ws'D ekw8*=n"9U 5*G)'9MU_@@Өx̙cuAw&/]eO.:%!9ъ}pQx#]hoIFu$ahq켳 ݪ)nNBit\!Bݜ0p7(,lRVpzF*Hpcl++6LL׳3#p";Xp|p^K`s~QcH~3tC2R؍x?Y# l*g2ѓiZ`Լ<~$Qn9H>E*UT=  *~z 3y^ZNЕ.8}EPy)1.uo[ؗgK5 s{hW{29y]*>*(V^mrMcQqDʇQWp+AUFrl@Uc[[5fL+!T}S$ Иfic"zj-05te$Tſ WŔԗcW`u9*p1k^뼮҃(4h̿Y L~.*c|)vz UrwʂeR]osE:܆eqUzΔ;NRp"Z:2+RHQ\$:ܒ 3-M qGS2DYILJa3#()HS3a?zaIq~q8}X}H`3aQAS)_p}4y!ȼ9Xɧ;!t6uw̔ZV0M['ľ$T`k C_Vg)vGKxKoXsr_}?3<ۥh5F}#V*=9)N)د-^1-OuP47x!2/\2#L|Y೭3䀽6&pJ3@ qΐϸ@ͽt_#+ k҂mዶȣ:)ǂL jOuho˕/G{:o"ʂG 2OK^ ~K-?#tck=Z>|:*kZ„GjHu "r[S6+~:*)9"Kuub& י`t,dV5\ ~elwƆbH'CCI*DhT~9nP#1#否F; 6ܟ8D{507n=is6FyB (.ɗFhqaP6z_(\;acpt> I?3 MڸWk@8z3vm[^d2 BYPˣlЈ2:$AY4>h琹zPZ)D1n3 zFǂvAGkh:XospZ[[K3WEI)lW_@R, ә‹xPi&'zv(5rYI=q.BYTQ 5%;>|?~hc7rO \9"cm)koL*9KJLBwfd,S4~s;ChI6EDz>F4_~/_}R r')h_f6516人ݑоWaҜY>z㎕p1v&.7f[~BAog?dS+٬0SNƠV}CѺtl2\4|Y=H>{h1Su{=iDͥB>QҌJQv%X$8s-PM&ϠWQ7s#bZnr€NcWbIw/Y0W_,f4 i@S-b TPr7]VZ4֞**L΍-<ccP̻9vr 9}=iz }0I|k&Gy!0-wT%G0)CRV$L|8uzPsևY9s0mB2z4a5@A)&K([j2rѤG󌉚w+5 >_~GuQU2ʞ4#K3owr6 )2K+Qv{z2㑪Y[!N<DçΆ*8{;.ī J̖*?PPc*n]fvl + +j/79BBFf7 %)*Ϊ]F8鍒~ ˣרsފ5DiX|ԘVԻ ,آXBC!h7Fce' !GfƩ_fs6&yG7pRU|2꿛<߈NNai##JM`@NħH}m<<=2T9I.R#Rv*[mo#JÎP÷&F)!I['@ttT^SMms(BGfץG-OBZǏuGŘ'¨svg]sΗ@o"k~,lҌ4un=1Dߦ5zΔ1ֻ5⽔G3'MiI1D4pdJ BX-T~{d5(8Vߪl@W!bcڧ2N+;Ux } flɥ1K饱"X4ͺ͸ G ? 0KAGּ,0fC,Pgc<+tPr1j'q9JN'#m,̴&k)g[-3qs`fؽq׹҅5k +]>Os7)b4 ]!g3`mj݁r:OSF[@CA^P҆ge]ZXXXϣ&h!p"( ˜4#ˈZq<<}ľn~M!Uzp^nw1,{R+=-`R u K4"|0v&˱ȴMF7j)gM .#vtcX7߃Aȍk' @l^[ 6(1=CmVTQT C:5[2|cM"S-WIjmxkh=;^׀kvF"ah(XaKR e2* 7)iU*UG[1ok:D "lxNo5W" |uFK54V_Lo9[O*EܠiV :J0*z]'*9%Km@Y3ydFbU`t"-َ5R+f<B7#o憰)叧ʲsePh6)XcX<~9 =ٛby6jXI#NK2L((fZPM#bZWϗnC unq|L )0I2'܁اڤOۺxi4R%ra&ɗm+!p[v_%')kZ]m=D3|v"TC[[:_kig !4Zf 6n^Ojz5C] ݵ%xpS݌-m ^1Ma]}Rǵ$J_:4~KX~1 ]l5 4{S>C&(å6J:id`q|DRεk|`[#)#v >z sްOW0CZRjFNn'sI)T|jӘ"DGrp%Q} n}]φYKm1;,?>⚮u侌wqBD7~! 2F57RCǘQ pLE_cbYAKhy.M.qix+,=d!C_XY]@Wh1햏w:oXekk%ٟmQ!~(5$҉Xi65}2)TaA @zn[ŭ$({މBuW3չ&TOSz"5n9aD)?S6",N`Az 0 E0B&D ;wZն}}}XuIW[Kݷvj$kE,yRҗ%cQ_ FzQBIq#T-'N|萵 (J粷Rѥpή!熑w*czPw=)_ݒ8@UV6%S5R.xHm!KsRrvQENLQ!|7%ImDE}oB_,}vsH{TG` Q'r9^>)i^ )\ӿ+߉$]A|iO<S⫾N%ΟiuޝxZl29Z IM\lR+^ƨND UzMo۠q]7QtE cefX5L$%xs,[ke`_. G1#7&jyfQ%.4v1/0)YxҔpkcд swpsM҇CլA@+Y[xi I:>Rt2@ jERJ_*QmcS\όdT4f~]N8͉19*쳧z[+OE~s=P§dD #9[:/(?e6HM2F]}WJ=7[u5 leeM|rb &!F}S|,6FKe!3E&^$6KY ܋Q?P47z AqWYHMyMcF3aJBu5lw"7d-ymfI@.m2fe~!`L[I-QBdh ]U % T(GNCM3/HYj}CqZY_q]ܬ@r )xUjAa=yŬԎKso*c{ `4-4< ܉&CKtXV־Lô*vyeYZydϘ4bnఁ^feXDS>c^d^76es- ](T* jy3TS' dyWѶ}f2]o:#O (lt%b-{ȦωO^"p[ pK1uиYxKxEB*aԼQK=~`R#@>:i:ѩtWcŵX"%Z#||4(rn]#)Ƕe!K9 ٙOy6.8ѪC,*3m]fC%$~_-6~f )llbH~WܥzW *MiEǺPFXQj9bp9x4Sׂ&{! ]6&|Yo06-ɷC؊isd&?zyڽ67"L6fwIN%ϧHʯ{uTdt헕@{P[f DC*sWX42|ND?J-*oȞ2_2إhuMW- _pVIVp 6/2kJ Kg9ďlB=ϱ@s&NHXS~."ʾ5Yjn%sguG'p'זbG&#m RGgC@4h'*]pD l!)OZ匞@cHK*x]M#isQ;t(hxƷVI_Iŀ62̡<D@: ="`h=C[rHb;Mݩ%C {Y_jyA-iz#`c\s׹`3eTc( D-~PZ5 &!1i8RCIe~J4wYg`h֧wwĪ_Te\lFi΂E((jQpUz84srݵ!^ }穁SXRe&w &¨s%֔, WeC׋i[f,r>8lzٚ'*`9{) \"YUhWw߉ J{8Af l(TS"1:k.չyxkڒvA& c^x pwE:hl 5@!臝p|%g'<њCK$HAa|El`ёCMӢwFp|yLofE}%9C6pGևڥvR7A &Qn}sʝN5Q' f=I5yNo} د+XXLoE?BOPNr;Eqڿ7':< 5b44fVM,( D__I.p:?Q_b$]$Uن9oO1tJbŧX:O?1r9n43DiC.bl!{,ڪ›֑q\Ȗn)F.p!cѱޔzs4\enfyd?!:Ezy ZICN£D`we|3p). r s%pL<)zhRT}>el1/tMB|&ElJZ49M^ͺBˡ!!ᝰ޿ۭn\V;Ik~@Fa++~ 4xPV3%Y_-sfU/| QL\ЦwG&ݗA_MLou[7Oo ݻ.qXI%ڸ";$$E6ߞ ׋ SsƖ {7q65O.+e-vOr:VAi#Ǟ b q0d]xqԶvi)'Q/mk\"ND9SGq.j߾.ަkeo:ean1]*]igF!0IJJ f}·mqt|$1(QVztgne(H'vUK23qBs6pIOZӑbFWH^>{5S}'>$Eí"ec"֌-3lMh8uAHsQҕ^|~>+qiw/ O:peFg m7B~1qNe_K#Xkds^Rg\2'gK"m8O{ >js!M9Arkbp$!,ZS$?i$GkG)FG*-p۔A>MR 'N꾄lG@2[|ܲyfކ$PW+7Wΰǰ Ropm8ɸla녣N |BIeKVɅ hCxj 0J8 %07̒}*yS.]-[An^ktL3խ2;諱 ӫ!N~mWY͡La-7G1*]}^ka G$F{]EdXMRy0y\=Xhh1-D8ca\5A:ݚ1ǍKMhRq|8&,VoE$ xjPN> B~6RJ3Pa'sPRBQ:yFC8h`C$=fwAhW~h>HSȂwPLSc| ѧY|SpP%rPye]!X@z^FgJM®KSJrD ..陀tHzI_/iSu$Oyms p[D@b8D7|J4F{ fq)T~ *i91L.<\EQ]Ȝk5\뤹-T.Y|nNI}>d+sϠ3)`L خ{`=?XMv&,]̎PR.*-ҏL۫o u9E ab*LM0AZ6mY/r9]L1{|TFtc'H}yM g|&JA̵,~<~ _h̖k4nزk4tw*cۣ?Z>Hrus$D =m/:[_^8P~K by.+T>TpzZSJuU:Z6=)[܀ݖVQA>5Ahfot`VyCHx=Y @]~AomD8I:1Q_ A5[w[RPBF^%9yřԏO`IożX1DyB^{`fR; )0lҢomF.jST,{`[ND ``6 4k΄ 6j]9,+-"H1k?2ZS4trnc9=[^q8R8B4?=+)^7(Bz2 |EZr?*. cf*.ا+s¿to ;*:hc1YÜ(f^W#0jcEY^$֮%v/'k0x֚=`h!yeʞJ?o*{{huZigwZx$m.С̌pf}B]:G;՗#ߦ|_?)Q܉{e}T2Lel?C]dniA,XȯJ![Oڮ^/Vτ4!fМbZӏ^׻(ԗP4Už<=֋Mu!4=}AM̐49n(_!͜D7U-B{CQ?O&HD;30IV8X$"*B(1g(;A얇#J8Vlat텄^|i~^<~z 4$"g^G˩)$<;n"bs6qnr<f+#uH ,(AQg6,}=n@\Z!c`x(j~gJ6ax6 i39 7;#[?,d;;l^]ӄLɄmYס6(ggb1:~QWfML1-_fޞY%e|^ 4Ϻ+\xFSK.i6+T {;dL7`YE`Sӓ0Y]dlĥY1*8ɷj Ă1rdJ[v>05w?j x#r{h)mޞM )z??noŭȸ#%rt`w<}~]ٟږ t5._:hl|P·z *1L`<D)HSxi-oChhSթ$̧>i?"MkVQ}"I,7 /ǜ!R-MIrEqOkŜyh@;\B8~k=sdﯮ?"LvOL\pE? ;OJI 9<|`] c7g4 Wc4<6>-߱q;9K^C GY&63o ~:dDmC-ř"NZSlS'8nq|mKA?61~@e ?`g ]WHрHA!\ITVc[dbgN] AWY`vZY:ɤ"Q pA\e|#z ٠zHboIˉRjŜn͵Tû =hrM3죉ls /?-j#seŞL%afq憆lYQROs2-6wy &Ӏ|9Э GR[({F<{.J^fd_Gʃ6+d=ϰ5eA)O$]eHCuPi74}$? =-?Vl,a<`۽#U,@2VXu_R쬤MJ29 0m==XYڭdJow]*C YӋW(͆x}"e"5{fFB{U FFeLcD4HZɬRyj_c&!U?">A\2|7F@1!ƓV&%6g|gٍ}\SCiMU|"PHt&r @?_)ef_?=Cwϵk)yEPh8c-HrD a/M+z03LiWn T~͞.yڅ0fwaKuw' )|9oD?*Y68A K^wˡIKtiQ9YE烞@J7U!Pђf dȹHHsAx5Gi?SܚaDOѮN[g< ۲J7CyGu4τ,BR n)š#Mr`fra6;t:[2CBWÑ  Ƴc?27 wjڵ;Ы8Ȝ|WuI| ; HLg7pf,2aXG% -b(A%sPNӋƄ&ogo3mxyqeFy%\Q"x1L=W8`9Ua" *ZwUlIDVܻA Br@iQ0.6хjo=gzL\vS 4*p[s04"E^.UG|5$_F:| 4;E:B#S=50EqpcV %̦ΞvmWsm3 R>\?^(Zv,Ӯ!KŜ J>ёgqsy~hݚ [GSC]SI{/9Z|'X/˗:Sb+~-CYGNVf&&|<9ÞDu#4I=,;O3fA";CR>˖aOVҿMWS.|ixoIlwt}1omȴcBMm?xș_WbPՕM}OLca &ý= ɃW +(w^?l|{E(A6)?+!Oras3V>͑x] ͌72p g)a"D iwrP/#:rAP7Jd@Y c6Myy3Kvv|&`_ Q _*|~Hh^z%AS+5L>r:#lV)ezS6I͓+D=lD=4i, %A= F@E^R"9TROXՋ~I|󂁌UR*4w2CHEQeE,mKU;Bi5ŦmXމ3[.AE ?M Bп'QF͹\ T28wT#y<_$d?.dbWa4_$h!O˖d{17v0,5X3-nzN]gUZ "Cf+Բ4]K+M񩚌ʎQ اxU![xOzOǏ.C0/>ֻϟ6(86' J8ޠܪ"<?Lo2 <0E) \LY$D'kw]+ sRkoS*-.̐h؋ xޚUr !|z0@A F`u muu 啘7Ġ̂ļwuVƅqA0%QXMWs`#tQx' bzUx3vjy 𔾨Feʩ-h.DbdJȁ^jAQhp? WJ8 z.TE>dRN"mb86&QOqugH#AL5ol>J4 آVbhBv1>Y(Gg k$kԴV;0=P l,/ggmPUQ@14=D#g^MZ55^K[H#2kb|QvE-2\YQborLhmKpeܒv,a}w-_?1r=Hh2\ wE)cHa +4V![g*xȵ̝da敲z/k^M;>OSyE7?\+YK\&(:$,3N:Ƙa%5";B'R:)՘$C\uiuAKhJ9ˈ*r!0غ \h+%/U,V B d4+&cl4Ƨ+-=>&6.mo6'>2fB }ij>6Kٱ)zWUm 09F D;nP~l>啷S؝EgWKT01nنyVEp8 |>72Brrsr@H,L<I#PzGpXO~:E.[jKz>~Vq5\YioĄNI{2A$Q#aADŝ h-'2&;VSHwJW˶nYd 5Z UXbR#fO /kwR6y+1PyveBp2&}HuR imhyA9W+K7{^m"4ыϟt5bB-Z2%2CziK4流^7KA 6 ͋ȥV 7?A ⺹SR] u$䥜?k#hwozG(GQu,uORxElge-&B%5?xR}?YrbVEzEO Q /O V [.HkI!|)Nm8yDZU3_.(kJ k\{f&6 @0h[/PA?!H=mS^Zׇ'VDٶ-Дx +X@;^9s(O2nCVq[1 6]VE ?v(Bd 3?&` {̓/JSsmUXf@qar>WH 0 w%ug25)IVlKĤ;6eŭ. z*f- 7;{1AePʌ)g Qm/?G*z7޳9R!fOn",OL13QM8 D7Y ;/Ȕ6Dp2CFG$GtIHf!ôXd# F 5VϤv/["D5R΢b;d[T"O.5!1f JqKjA5,a[گ']Z:1"am˅XCۅO6R#626Ⱦ菾+FWݦIՍ1P͌%r\WPE?Xи?4 KE3~ʥ#q&^ìTΈU/*Tt]ȠD,jh0Cvr?28;;ELe߶Fr%VԗwJhAh܂ >N{&]´hvQȜǺm!{Ք1! mZU\ Crȧ[/.PFKQlv[@']- iWK%56O7O䵀 7V|!,4gKPķʸkzSUNFx4q01p%8@b@1,xHaG`U{Pא-H56lBf`b|НL HG"ƿjsONsaQ٧3n)W,Z+/jW@g`, ]1 X'hSD A B2C?{X̌3oeLZlpyW! \/6fW,g:KpB|=YI'ٜ~5JVؘ#(a!y\?:-8cWE&wm[#i<)9)y{^g3%̖=LJK3yM_8"h2f^"5MR RKRӣa5oׇ3 OLyHwTp\-2qsm8KN*=0a"y츘xHtgrD헖'ImغQ5%Su&[ ꌆ>HKr_cfrlyyA0R,pV<20۴Ȳ1r)"ϲ0Q[0N(NDvF߭7KzI F@~ K~[]#x^! [ԗ%:vȑ|G;| u/Gm+ r4~–p@/3FZ|IL07[qk'@2dR$1~~ %aW&>l@ӻ24qSb8@)ߐzn$FC>UF.J Z+[>y!̲h6736xm;^$R'n$<nIN{AV78 <{=ZF3FnXv{G5+teJQkF {^ Ѝ68b}_g?W_NծjmCbEحةz oKaD0A3O=ׁNHMdoS]q2D.ūiAx`/ ~/(ogdv;<='|+Y9,%b%pF"x  El>|'Ou dmiZhq,k7RQ~·BQF4d+?i>{rEiҊ^C1&lHCgFKòđA4\^@T x,FUjRnm{\Kf [$qء|GuGA{ss\{ 8"[zj,0sl"ciֵggI;lҽ>JY- aSd,Y+"2ռ%@g=ifr[ѤR4!VgS[gC2za߰ BTlA'9g%I4)U).T(bC`U6TtѠtd.ue{88v᥏W'`iW7ts+BЗ[R[Ye[b/@=\SM~ /RUPooKtKK #x[@6C(v}}c?"DŽѝ4pN\{Vnfѝ$32.@ElF(2UBlw⍬^f: f.e"N'L27m";aHrIL^èSx9HA \wZdG(SA+io1ٟ8Ue+1AEQfcz^\vQ('X*N1zxѤII\/P|4- vySɎ>WhвWU|< ve8.0twfέC[ f} w+۸>y:A,qJbqDFE䶾)n.%k  es:yϐ~g3ELɿyD5W?w. NUg '+8ZZ`ɗVw=\/#U]gwvY=]y׃KΧ'jU5ՙ]m?X@TsO[ ϳGZ-ua{#DŽϳ779 3Q#U9d ^kzhѡ+n:$s&e'lw/*RG3KO\ȎzΉҲr.k[Y֎LdJ8tp.qErm)4DlP_`$?lHQ>gGk{ؿ?b]}{h/x 偾6{pɭaz* hRNOz-s8rRA{yL u䥠vtolԮ0^('\اV`) 6?۪;u kyw8,S-z ْIkP*ùyj:d"K!@dkځ~RzycAV J#1 !.v{: !jGEm$ 8\p!~]9$JxOD\17=F.p&l1;Gi^aFjjq$X̴A\ʆ;lЇdڛ2䠮U m('[WxLLSM]Ox֨5G ~*j?D}\'ku/Ѐ#P:8hdq_IwopUjHW=,UA^,J ;ksu!a{]ϢBR?ܪż ت4JfţGMnR(,ДQduT`qrǒE,0O_M?s=j+P|u3/Ï.;Պɚ6_ 7e@GkCT^Uy[mO[rՆ8eD*e紁bT}C9'b^H fP}'"dL'B[oYl*ROrPtl8;pnxWJSge n;ࣥ90JAOQI)]اvOrZ*Wy{T̋)6 6+ 8o!bqw"m<yvNц'AeJ{@ R*ƬxA%r/&GyӞ0H t«|ejtZ&;D2es*/ n}jb){>zT},u$;r0T4P[Pb%?:~r!$wpf00b" <(Y[+HKQ>qH@ ( ' Fᴿg.'LSL0ToÙc>Kb(gazU &7i LC"9z%(P6( 8rʜrYM61ϧ ):eg+=OC!Ż4N[P1o>$"bAER,tu 7f8gi@=zgxQRC3ivHl@~E`-@d!/8{U y刦ߥtY'*{ѹ|6YgL.u7OQ܇&\vM?4<%BUU"j"GAOO}SrI@k | 'A"0Izu0ɜ ot_MwҗP!"-^Rd7}s6ߔQڨԄ&^{=yI-}q 8Z[rܚ+̒dt@kK uUJҦqeGG_Z`S }GtcnȡTjs,b!cuj rKeimo (Jӹ}e x!궇ZvF%zgd+D5{zO]*(vIt뭈o4UH5yzܠCmۆ!W*!왺'13s.'j-ĺkQ7ץ9*P|`a/H@`% \Gt #p);UB BuYOO~@.XRIJ?*SHb zvVla;VDuEοdOۚ ZGM*h A?`5-Kwd6]F gOI, hn[ {FfZ~.1gDԉm,-ordb2K @>jp/ !}b+dU"o)F8s숁w)lBWsS_k٥ lkz41{tKr!8UiR58d/} nnoatgWcَ˜+zr ߃<.TԺ)QƏV +`?t/Hq(:z+=I8>QN}j+KX)||h#H$&d+ pXCp-rT~gLY;%l y] _n )$0^헢`!}{SZrv|I.K:Y}*Ƙ-ھA\$䖪%#uz[FB,)Y .fw pXvq!N8_ȡ9RIOخ^%BCCMHV=1CcfIHO>>~~}]$T1_JZ\ڞ9'M4X;7ʿV.C vU#jxx]yF=] hM*c5v?qpW}%NNQV?RO7[ ,>ߣɕc:iϲĶvP ^&x[<\ZC`kxRS=@9vN{#5מęgs=e?w5{ p WnE1R Qè z ̓ƕxDl.[Ml4+nC fz؈RH̗G~8%ߠ{.yR},-haO=SqWjڰq16 ~.GGOL wrRq3ҞEaMZj{l jeh4#XI]ĉNƘ0\I"sIQ-j (9*)k!гePG+]i &Jj-UvnSB֍q}%ztvX׬ H.o r`\3px4űHS;4uPC%QYk)fv泙(t (AEvH\'ds (zc/dD%틠>kRJ>n}M6ΏIƧjqTH:!q>@~Q)%k P_*OƖ4 k0'x8k>_Y94L\} it0;yvSD yK F2L!sicٲ1gf {7;ɼplpA8'TRI`;8寞%Ypx#F/8`g) >ʥv3mÇeE_2% $ͯSwMS.cYEj(Kk["W0k|L IOv"3({nb'1pd׫5\J. &ʐ4G"D/r7N#c̰Є[nN-~}aL2$wQv p P_Nu-e k3"yI&|Jdsˆ?;w_*Q? r& HPi[gǡH*+@6RM;V~agF2~3"4ˎ}?&_hg[3G-QJW%Q˲?:0eڜć`Ӣ5Diy:%[ {ŸE2x9J-v5//;NܗX_[,9Tk!>lDSQ){}Ʉa!g4]ZPrTRLRIpg6e3)F Z( 2,ٗ7*B1f~yrb#LIGq_f7P0paz!~lX ȍBiiwd]D* 8E+q/h\"ҹ/@~tuwɑj~5ˏ%A^@as)CS>>a&]]mKQYq7w1^ 1`bSx:XI*HiWS9@D)j1N=ر'`zB΄5{+1[ Z2ߦ7qg̡!bs'ɱG0.s;x_NE|M16]easщ;IIh, Τ$c %㵁%dfI/GCIq>ɰtE8LD u*O-Efj5JM5E]fA2m#: mwGly+J{/>c:KژUOҎ4>ksZuC*Sn\U>G4w*"/_EKzDh\` dLg^f&diݸlvU*[ڄK &ZuY;4gH}ڰ~:pf̮rr3{-+n9nOȻB<d{3J1fDJ x^qiu8Q=M7[;]ۨFqIt$GZ`TX}vaY,7М$U>#C qN_xC6ɍH X)hȋЬAv ǹӍÞ AWտ_>DGB9J\NHgnp!Sea9{."6<KȺiĔrR>.Xrc Xd-ĸk5z}oS\F㆓逖'5:h9.L|h֒,5 ЭwubIrE~g%Cha@OWۮ;,T>( v Ӵm2{I&B0zmUIbg@AL8 SWϒE41CjÅ6ӨޛJH.a5e- qer'7r0w b6h@tv^].Ğ!a]2=#qЛ9?7Ā덅odMH~pTx™S!+b_POco' ^ƹTL%y7h$I0!˿S]]R]3?rYRGruj<&_Ѥ%1<[y"NMM% ,D9̘S$Z3i%En/lqfVh".qDZaZ6-j[':bjEq щeW\fcR&ȳex Gi:<_%aVxjn%ڥ_nK': ZtY3N"0ɐ*Wi܏ANC^]B*|xSmB =_I86߄xpYvW'}Zmϕ6Q'}fSwMIf9~ˁ١M4Jx1W^o&!r5 (D d,hZPDI`^A6s4i26f~ꤼ d-Xz<6ԲzQZwڣ#+NW;}, 15/ t:"\~c OrHf4AOA1yUzȬ(9J:7="&FPI,6j>,kFڬYMy9=^$i``$5zzh-A [vMn hR;9a0cW l8u ͱS0Kh`Nm(R!UBhh~(,*Jm*eI!]؛Bx?u_A~4I+eDuDŽembڂMl;%v C '.+ECYR0۟„"贔)8flJW pĕ;TW(:AͶF_* a+p}(VqH:s*IǦq/=»s"=JӃI,n_:hmYٛ}z9ʡ+ eVZ0~niav&f(nRaױ{ :!X "8L"4:x ".h{P%~hE}r?:S 9}OEJtRkOՐ7ɉpR @Ԧ}Sf,g&"®y:=v¡B__zM*`%Vxr.r9\f`P-#{I|GݗcO*#wPV룾cbxn JyLtfWȚ6 F, vdfN#!F[nÊ)uΏnqrl&dWg:DGzhG;_ 5 ni+r`8'>:9yg؇|xRUn̡C=PZNXYbUo:F/4/Jo9||T:R]7ɕ厘FǗ[𤻎'#p`r"$0aƉHD%U-xtK!LvZSŐu(-$rPWF9BĖb 7%~c!U?oe3*l9Z,?^drI#芻!Apw` R&ڂ(mQklTq##$!gfP!2cyʼo&i)|}гP+}.LK 'a-OX'hm0pU^QƘ\kk5IQTmGYEGA%i||^^i^`=MT mG.X^!grDp959i'%DWa}偔:p7[*jU1p!/D1չ>{3Ue`Ox?ڹY@{+&0qͷc_Typ@ \U>T5mX 3);"AмdrXWUd$lX})Ct~tw`Psi9OT**p3f8XYY`5$S0ZY\C)WC6D$D 02?tMlo;Ua:VNsx78h|± 4!0+pI1]; ۫ClܖSÿSnEDuKsA„;`"8!;6B>eR('Shxp>lD/9߀vtmSR&mY4GtP 9GEla~1ĈL~ia~HnǶ9R =B0S3 %:.E9o& G}N8 1EV]A+xЮ㣅njV׋@ߗ8)^Bo13\d}Ϟf.BDJ% @B4sWP8z*Hnlu9޶R׆{@9tbyRL,g??J.&W!.s.gx wuפY@YXy`DtSR-lU|#8@>6 DL?ET 6Megh"vOERSO,\9H?qWx mzia&Zg(_5of1,$br~D{tg$ lԲ[s҇;WNWt>O#7LIhψ(r&Xw9h?? p6{+PK4\ޭpȺ m֌ՕKw_B𯷚%f bV29| 9Æ5pyns$l]bz2d#@FyvC Ao f0\ʼq?AL T5WkYnڧ7cI G 4hg$naEX<1b >9i nf[ Q?l387^"nׂ~ߎn"wi.Q"vw^\̒w|G7qVO&*2m?qB끙`XςYU;drÕ(ƎV,HVt=z{/GYl>a1C9NqLd 31 g-sMK.@ei&Mųgpdȵ &?o34wzrF;)tfb]\"+A( M8V:n|ky+h8?z&aFĕaWa;=3Yfw5pNuU(nau#gy /c`T}ʗ-MZq9ol'8.$fYg+'9htl-6h3T.\>"fK5Ptoj9xp24>vo"P~m:Uh  ||Ɵ,VI'N鄕nwh(WFQ ҾLB2RBCdpt3&\TP1e h |PC IF?%F10mE*,RᨪڊyD̞e:Pi([6>!X~(]xU&]i)5֏GvT.ywL»Dfaڅ$Y71>lqUXEOʯҺtX`n;d.]2-cOe"=>C#;>{^nDЯ1Geʀ9"n(֏(H\+ 5=Lcd:J)vcĖ`]qHpgeѾ,JҁjsU:>WgvpNF?F^ӃRNTsS\W,d9Ay[G&>6\, d3(B$ٯ9TQVZ}"Ctb]wYV^-V& a6^$ewߐqɉ>Np@&("G1zh(rE]QHl˅8#3vfx*~&yͮ8=P1~tT{~-@L ơR^sȔe}m oPT@=.Taǯ8;'燶y]kZί1[| 3p"7 w9$3WO%: ְC_H3`H 8iZTpӎV^ @{BWzɄ79*~HbU]$ U|wI6SAel#1̥/N-UӒHụ9ʊ&PfT ES_onv._~E䅬zʨaEi#u/ySK7xJIM* 5o!wI-+ja}VsV,!iyz>y,EEʚE'$ڨV1GoHMw2G`7 ڧ 1}@ ̸u(U  bI"ڛ|wf<|uu˾Nū3a1Wza?vs=7ݱ3ٙFhҕ7uc^}!+x^*,̪8ʽW@c = FvG·BP8x{_oeEjx ʛ^6V˲ϒhlݏJ%YqҴa>kZCӰ c@OltШ{UPP22*KO!kl9 d$rbͫ\f/eLzHv:ĕTE8mDdxZuQ.ueOf9N ?&;*KkW`{F6LV4շK?;bmZF)MpI(4Ҧ&T:8#vRt-Z02`'e_"fu򮙂{^ey1Ԣ"E.οE D{((?.MK79<g/ 4t͖V?jߵp  [9Y&B)b] v'QGtrf-Cg}ekp.N )Gy#Lm (pw_b/=:.TSyq9 hʌaR2w  -L*Dz!zZg,$v|{tgVuh2.t.6[}C4/<IJS(lSBD2A6-$ b%^dw&a ȌG+F#jIQfl{$<"jAa4>a ݴ:)bzm2} ?sH^*gSoa`X3'<ӻ~D#f 䇪6Dkn(=ס^qWjo38oQY[g@k{y' _ ™Cb87X2zh'w&9{bo\r0R8j5 ?rlbc:@Th:c0{<}}`#oS8P[" gp%zٶgYćϙZ% K~˴D!}] V'u6SvŽ8'C%Ny Za<ժ}a䦀 R໠ɪ]bʁeL *gQs !Ҭ)%ҵ>7+6 zTֶP}.Ѿ#VkY#=A/v@7#$u/hRa\F.*ۓ 8U{McmV8W|Gl>gPD!/gISma!"Q[~cF3FDSj08x:0=S2fZQ%o 1nɴ`k˷ucGCC{`8~* {ZSg98ػY}gښ ^ pAZObRmQ: +ތ\= <$ >1ujߗ=(Q~D@rBMѧZmqUI}֒iYG%3I w^ZҸw O$ 1yJVdSZLSvze&yl>ܸG^q2bTqBCm̙|̄:B/q(@@\Cgճ-*#IV! +xꞋ8|,0v?o|R((R%?"1HuܓQ6?4UYg cPcn T:1y{!'2dXXM8$3J5P>7؈ʳ3@}=ɿZvgü,IzB[bu&KnFU'#Xjhy(0VjT@兼?Yf91a~:[糦;jdNjaɒGQG㰘U&g[fQ$ 0b9[Oh]E2dX3oU~1PXMyK9On0eLQ~VGN>ˁȅXRhʚ7]4GQ6WŸ,O>"zLY0ħ${@8n_w% M+Jzu!` vδ6d} #Ì ٭I|ӥZ,SnerD jac\WcaէZ:24r,P8g{ꢂp|,P ؞s E"Ys-AѝlcO{|0ᲛƳɨ=JثG`fH9X^jI ;cT=F Y!Pj9a*Q~J8MjՌ_Gja~UM4z/(n} 6|؊7٪1IibA|Սw/VU)˷AQ/b%?Yl>#Ԕq6lH MDK-GVD'g+7 so :Χ̇35s[A;}򮒦 0mSw Tۂ ,'boSFc(*EUQiGc#EYƽƽ~  Nw<ĿHSqJ%"-"}6Y)M qEÜ G"lʫZQJ>g wYI 9_2Ϩ{4l+:!tWjٮV zSg.q: ljr,Xf-J Āvb^]I % K:9iN{64[!xq b8G}96W!#G;6q^N)r>tNo8ݏmeXCggGڲ,0Q +1:MmPaN?KVo*A%p݊pƼRgnؖuP~;5zZԟ2fi&WG'H*>3^RT(޼NT=2D?rso]b\▪1X=I1,G'x qkY)mUQcm K!WGг".\eNTPAO9gpk5g&u:,[k{ &B铗 @䛛.d ;f#[3MbC@l`i#,ʀOf\x*FR28Hmsr8CF)y tt ab4i uʩ9X؜y?ۺȣT@^񒶒L\F_&z[5&{ j0`~zo먬{Qݕ5?)xP}5F/تB}Ȯ= s~1Dmqp42YbOJ9MZOmd`wK|DR~Ijo܃Y7Isv%5Rw10.8~$#۹˦ UjC;Jw1c~YRj#BL%XݫTԝORM(nV[j)s73xJ>%-4C- rmGϹޑhU/ h+`ޅ0ۜUsqXa8 _@Zj>ojv{928FZ޿@1"dnzjˁךmpf_ %x'g?3+e_¥Nw#5C$T4U(Պhl.0*nhU#99 9. oI3My14<##y0sv?Fw?B yџ>ysghoXM5{GU<\b pV[&R0^_ͮ9B`y¦SVrč2ڟ̰G|uRA>}=*̧gӲ6JOAEyCq: il|v`sAoS$p5XυCMNZ1 &$ 71FH6~ 2K0v|aa*D[:t'0[`U> ԥS$qQ]yxܞpp Z/Bɢr+cP2wo,m%|* ox5upkMW?lQLUT hf='=y6Fx4 N&?qa\ɭܿnGD!2RߴSRo8Vn}OVaMۻ|acѢSaHڝabB^QRu&UJ Jjyo/, 3^10F^B&ԩU-I+7/еKx*˥2 %pN&m Le<&p ? ߡ4XZ L bP=NA;hLGAn%WnNDO;'+L@hEvq9BBM6?t9Ee >(*[(vw&45j},i$X(S` )2 (C_4ԵѫGM0%^}^-Nu50_T!@)jJZK˹Ö1 ?@žzRdz|AwA#ᓪīm+mIb D*nY5[Bi4 Əmcwbz 2Ϳ8#5eɓ8v0 %A,o zM*fhdkÀZyMv1zF*S/(70.9Mi M6]z\٤W#ǞԂNߊS{UfdqzT˼Lm& t+ǙgD^H0-F^#ͯ2ZFjR+T@{-N˂~ATyC' 3)r|<DPok#E^7 Uюe36^8'a(Rmu/ZT iȥ4킇Ѣٻ&-~}/r>k 0l1; ST!m bgܟ_O!ӖuqKOJqrڟȰ/SV8we[8OKoGv#禳*o0儊t@M1xq,ƿo\VS?)"h'v Qs±m9#eH@yHícs|Ql o߯t[uֆ}=y7ϹʨMEA{#KLVRco4ӧ6 GmMjyj<{&Fư"DP~E,"G krY20YQW`+hW 'ok` t \^v^ƚqmX(3fs(! Fp;r5!g'# JkJv2o 3 ;1reI_(!\mn#@G|XCij.'V19?jxnDNhE_(#=lr?4`~MR켶 j)j acbR!LO<;=ǙXJAD(dXY9mxA+nQJ>& |3sOzϑ1oчcywq +7r"G$kK} n%Rᕖf&oBGgOh yq&ַsWQ|kQukԐtG@WN稲8nNK[k[>l) OQ^żhg6/HJ&{JO9Saf+ kl<$$7-y.4Dh3Ǽg-AxbZaqx16,#drVdW* ^ EJ#a 4IH!0J]d5P;{0 e2z49^~Wٙh=& :)_RslG{sw:V: BL@BQ1+ff T1g D8̛=—u;fL{L@%.㾨[" ?- ױS̯pq:LꉇܬHVXF4eLg%U`|]Wn1p%㗎ɀ8 18<OM>nf23LQlbͤ y`BW AW3#zql| 4@;Ŷ憥OfKxc IS( "& Z+w%i^>Rv}(Pfx-37/t'Q|uӫ@ QJKO*_^E_bڬ01KP,_%OOoZ2/!lJuœaM]/yTZQ-; EF|jV˃nLL-cYEc7wZ; Y"UX]mu;|`G=shͥySޛ?F:u5NZw'҈iR'yY贙Acۓnzgz)ckSrT}ktGڪ,U}07_R+P q؎wlǴQ,/NC\,d>jKgÍ,!='Y bRY%i.U4٫ooIƩ1b+o{,n̶ocU҅PD:`﯄YF_sMTid^Qa+[{guߪtM"^_9D⌞#5Obw.Ͻ݃"xM; ygbx%B$1R$^ nS-4I^Z ؁w4|;B'Cͽ^Wg810ʒ8p"AZRE;7Jv3G L5K~JWkc~>]^bhE+NLE"и#'Y`ji%$*!Tsچ7 nv \tljaZsX lC.;z(3GU> 7GdžR^8ys2{H@mq^+#6$KU7 33|6 m:etc69usZh,uULѯ^J„',GFm]2/Q'կ w~F4 F6m{Wȑ[ zcp7 VzYe)"5LQ~ᷨR#K%'.JQyujG=~g1C0" fo90x,^ᙼhM'mߎQ,Prz|wx;}NĞhSppD%/(%"Q}FrPy fd9n1h3(y1c~"^"۪Aev'z Ctś-?J U?4k~XeRVO `.=!KcCFa4ۻI0eA.CW_ 9j՛-%?9Rm܁U "}_K|/.%;5j ~6J$* fUYɪԄHQR0Ѓ&vfV}7S}0tT "T8T=ID;َ˜%lVPu>kHezWr'P,R B;$4@YE!c -oQzxU*"D .d|9]N*ƂBs-o=99ёݨC/2-@7j&&A+>* VY? gu3\a6( @ÕE!pUsGPAɎ1يTm*4q^kmKjPhn,qaNFagS*g~-!:ug]27aeLlif9cç MR-aЭ'I>ekxHW2ڟacJz .\j%C&j9Dz.oTsUR>wiئTm?ޅR, OThqû7 AsWz^w|Nb,V#%m FgF C,UA U\V'ecm!_8zQ?OOdRtriv&!A<)rſ]gp Y.ze%{fg׿b@!D8E }O+V d,TI_&ggXGnYQ-R"*ES{) Et'@y,oLj`+N 'R*3 ~=f&3 tOe =P?NygcbA19vMϘ(@<=&Tc =$cg{Hq)VUrݚ&b1zὤwJ\k|KgQeOw_~7ů\ydZ/HnmTpFsMb B!}5ئ wK Vcr( Gm0P/]ln#V{j. ̲:O}dN}  δ<{vf[/6 !_@ m[DԀ}{¯Ƕ΀E Jh_JU_cd=.͞k79pd-*wWwޡN0b?o{Q,!ֲp/e Gۖv1kCɿs<>D=V֐G"x:Ja~rP9Y0nk\wJ@TViLD}C馁9[ysq 'e튑V o[ΕN]<^˟Z*K{+Г a |(a:Gҷ|h{p@t_I~O+h@έr1bcJXܩz̝$؄:/*Wz Dop@yWWC, )X/"i;4}Ȑ^p 10 4O$psyMo5SgNjYAsbs'agI+" Zƺ孨NG?ቍP4{cWQ/69&zUcHW`4Ǻ@ĺ&#gjJ`rgx 'os-tl0aQH(yG\ (CȬKL q[4&(yVo.a۾^]SEWv}$/kNX{IcZrj21~bZ(H,&@fXpqSѣCE&~Fvi=' ]aE%8iȝ,X Ƃ G) 89ir6F\ 覐9ͫZ)9j |&MA%uJ̉͞F;Smr1xJ-F9@Z>š ںT7 -MX((ˀW`G%vٲFɆ|$"ﴚ.ԣYl}C0_1{v`4|Wd7fqE$=O#?$sm1Vy#@p 6AIEo##+P kBfbhթ'Kj`_Ґ @ZE0i V2E=!D| "*W )bi~ z:,x=u';LiAYEUi_*ˌJ\e.wٸHH/qH N+G^/#eŨoa>A";/_a.Z,F!ˈvŽc$VCz,P8cl^s @DcC>[G`3еr>sT),IPVg:֊$66qM/XMf.ik,wN{iT%A?;=F7;!j5*F{%f_E9bfC;aNbvj+ $\^DnuJc*G>[5 @;PVSȈ]ӽC;|yi؀-.WT陈%9 soSC>`/ r>۹Gʹ W+ W g̴96m2İ˂"»Sg%,` Ųb젷4g̟m3?r[,\J~^6`NCQn+Qnx@S?5w?2aoZBQ-+=2mNr3}t*44l^Koېx VxHĒ\. *7)جxBSIICdbqLk&wƵ!W\m'=w0V#spz6 97o3F*6NL96P蓸~-8^\ռ!hiOxF%l=YWԞr@3.XPao8 ƈ Q-ˇpV b&5pv+|Jcѣ,K~Lh2|c ) Nw4{6 ~bgSE#h8޴5\'F8䗢qaE4-B X(|hS`GzX$٬g KM;ߩ ~ =GƱ>R"?>tm,OqF ,_5o錒sr3^  dQR>Fiϱav5Ù9 wxSӞ4Yh9S8Pra_p0~ϔ9mŒ`~M} ©@aEzpQePh1G/T7:csR]BڃJp:gt0UMpQ-&Mتv@ƒm_WIJw-lkzV|E+YBF9Zw0ő1A,>:4ҁBP'}H0Ž xoo34 !N z1v!ŷ՝Kz! KUfۙ[ wɗΪ~0Ѷ7ԭIF4"qz# !/MTGHQVĜrÈcwdd-HB+T G,^]j)^ш2{H608"xC̐GUc+V'u˘L#$Z n'^)Zk]ӺJ6$~I~5ն<&O#rn_'*ؿI#R&qQ@°{]g Z&ZxY1ߘjL&J&. Y}{{Aҍ^'t! U &U.*UVMjS߰ܡwT(+.un)+I৕'W]عr`MeAcIka;JtҾC>$bi$vr[jڲs_>"B&F#l1W0` )G[fč1췍+.k+BPmg" F.~fg#uLx[MhHi"g~ 0Э/&3{[>GC-:%755S5TIV,xFV9ׯ".75JS)S=n< 1-bX@,K ̠U$dEd}]kн͇S?X7,R*f3X، fZ:y tQэUVPpGwfoyWi5F()NP-Lc.0}f;H[yt],{<6USSxHUuG[|=@M%"%j$׹3W%y)ѵɃ~fIEߛL 3W4r;y ۤ-2_ߘ$z.seqZS6 tE VDZ7mS[HFOx\8*-~haGIP`4pEi8ZO%y@`ԑlY=4Qp>Xa&ٲt@jBlY'Ǎ8`My Y/<)w[~g 8D`4Sd}scO/Cqt̯"Fo[Wld)FR eKrCy[1U-3A(ۧ-u?FvNu\f/M=W%T8S̉Lf3W}j}J+3 oO9=ۄ#CD:7++!`P{\ZYYn!cf/ˆcּW10wŷ$kl$%7Qq;-w[a@ˬ du=kTT]r# C%.g{4 Vlu4zo :FFc7GATjnXD8Z#Ni ogȦ8jr N$Hdi(}ٷKagO eR@/(3 iK.jIYd#͍0F]UbBBX+TҩBJTuY[+w7.פFhXbb=pBz^MYC(B"nZφ.O2Of#*ԨU|ƛa74`XWh3C8 ħW<т&b`nSt׿O%tqCW5 ^,x0<פKAl 0*zV}!(Νbm{hFC\%w͕0R76d]K8E_G8$5^o]HX'^x=,<# SM#JA q!4c=( Na/`or;۔ey7`+SE'7Iέ%&@4Cei-c4<@uUSLoͰPw`uC_:5ɡ=,xqWn*]hfkZ%h3᯹vK&]WiMnZDVi^qkISBMHO_:߈SC/j|PO^>vv^0І Z눕ezp򎕗k.i r)k ,ofHOrVrZ۳[(2MA.^!UmXLe>@\C#`cvj6sU^h//8 Hi_TP`˅cXˏ9WQ7Ed ?Cچ)_jl ~h|'$ ݽt$#81t)ny? Ȭlхp:Iu =+(򁤸 u -:+33[Gf (![H[d n,]ACûQ2H܉L=M̶?DG-)1 8 nsʜ0aL3[`̍Zd4+3<L!Z˯j=gFCY-kvt W|ZP hUQ{ڐ(<"7+ YA|u\aB% vL+ gK]TV.Rn_Mp{0v'IA S͌omeP"8ZӒ4ݮ21?ক0_zn=?e^~[?زI--^i\?NP6g7>$50Bj ⻶Jͽ& %d`>,EgbY5T:w;=zz4yZC JZKwixk\*bcIPqe{DW2S?Hu>.BHĬ m£ҪF -Z[`9Ț+3zKԑ .Х[Ɩ|'+1e[E*%J)'~Xڼ+2#=IȊ{q }w9)5xn}˜훵AJ _H.n3d`5g~m˽̨"=1 ,n۷e}cP WXEiuazYuB E z*Fj@~bNbw(,4( ұ> ]3UAksi$KEuZ$a7MA$hCnä :ujK AS0G(XM` *=z"՟At_ DCeP<4&`ʺ~L6#β{$݉jF'DI0fUxCܤ`;,9 ;d.Qۀx%@|lrA(1g*ܵF4/0qe/݁OB!K0µnBJfQ_~ۆ}! H*.뻑"1c-3ՌLⶱ|U , sycF ޮ"Xueć( 44dX \Bve>D_ ,siKNiCF] 3,KٚѐP'n@T EB94&!TfD'c yӳՀ" : * U>4>:)!rȢ=$v{ nZjoU˗F[&am VY?u?lA}:< F MkRzJQ5UCVc /v24T ~9@-AJ`́8B> s*0]̕}lUL8=4QopF~or$Jd!aXF+n% VI9eȸVfz̜cF꿀!9"pa5ʩb4YrUϴ\]bRH9k?5ݚ:3_(QbʭmnOzi: zgg{*9킾ŞCzL<,\\+` eR>A[ק%ʕ3r"<`7PyYz\SՐZӧ~icLilR qa*oK %̇㇫#%-Ża&{G#rWdq\mw^B65De#8B^؏ךM,/ G_[ , _*AhĠr(VZ5J6$3u!KiEdMu$ ƏȚK+/tǴ-¯&!V\Ϡ8ƽTPƲ:N ;/+a U455q} VsY Ne& ).̛rK?9\GFFzBLL<0K]ujul_kYkMN$Q 5aY).0& ܚ)\<66CT_YRÉ-B4gT//܇}qs[:n 3IR/WiY*!/Y UKhlr*ͻ\KWn N>Kp̍~%%?Z2^8H u F#~:a";Qp'Z ⟟Ꮝ$>NN[궫_V5&7+gEǨ]0o%A1_<'0M:((@V9>ڼJh1c񟱈3̃9DZZFHh-~͝_8S63egYD_`H&j !t&u4_m11\!,"F/d:ck" "[3b}^^<]fE>@t_^V,f0&B`4x?C%;L!(],~xpL#^ նʢvs8[_]%: Ҹܦօc s"%4ͳ_̄Q< 0H ~+aP'I'˫÷P<|Hc1?qNB4˟L rouw򚊟4O7Wߦ5Ҝ&wl<'&ϸY~O `2RFQu ;*,߯Qv gDty4mf*JSLڎN YL);wL/Mo ZVBA O]NaPf 8#T e&o{o[Im-G]K剫?[-xo桤XH,X([9kzV6VڪOSI]4-?wiD!v;ϗƊRdֶS4rR 4P4΢"InUc. ZcێdcѫS8d7dg=IJ~C98f6FQؽ]Dqz.Fk" MڙWɹρ+Ee\/-_ kCc@+p@ GpfV{mQS:;n\Y޷Vn k2I%VHNK#׊8ܩwOg7[pcQYbc8|>4R@Ҋr|̝s . 30 @ױtZYXK/SK{°wOo.gbٸH0=(ME (\p؄ibYrB|MA(x8@I*HMiQSnO|_kp\·LՍ:[4M/:2&&y(p&)&DN`=는(mdhs= TpBptmY^ }8ODP"o @Ah]!Q@{0EjG:)vPHK.$gBhR@_.Mhr|n4ds~hITZwly<4ۥR%,Z,S_Jb:'ܲi"^șxENEdJv%,rtW<7( g]w%^c-Xm'bRqjC lmGul{dy"h 6]͇TzqS8)>ib<2u@rbTY.8g+D=5SCՁvYWNVtbrZ#i#kc1wp,0?rEwdb J@7nն# ZE2`%*$-Q |<~NN{Q'}C>H׎RhD-7jf@@$"V=tcG aT**CnJhqfAp1#X*Nd"ܪ"y W˦c-!KA sW5ӷ_7у3?(*ڦCB),uK <"'$:f-=O!1m.mqq=wj]bKc<<õ9Ȃ@ބ 5;atx$eVP%@[rh7w~6 0DČ>_JETzjwW|e2r5~C|= N{c9u; (} ( n]~R|ܨOKUș9:A W&cI>hR E4\6sg'yE++Οk8qߜs'~t?}x̡C:8/Iw /#/h9rOj^F#VdEZ38kZ+򩲝>BٌƫƍDq oo4CB? r-V,4ZTW.7GczS7fq ,F4dܘs8pJ0嚝qH"kLnMCb1IYՕtW.ba>9/;jj\ݾz R? Qаud̮E)t]]o 0 !C۲5Ds) b9K[L+O@L(Me 3Х?B@y1M&7킋pfIN3j˾;&tc?R!eTx+^eB>+?( 8drޣ,iz} lwAo&YJFM]nwƪIN<`&'U(ﭤ+ہ񌆬R㈅(IXH9v5 ',A`8O.;^wx )3jiwYϺPN7LcU?o&hlL^>>5@'ʘM$_]% {+[Jf}qjo)h*#Sek-Vɼkl2l;g^5t@{$6;Łڹ j7A ݔaZ+nˈ>]3rTlVN'oIsV@&=l!/%6(o@Yp* `_>dgrO:fnzZr3)=/2ivP;UȘZm(@'1NKB[Sص'ҥUrK8ll5U0+W_?je9 gzW Ot``$XV7&=*Ǐ f`6-#z ntǚ2YGYMڧФŘ={&mA4 8!U$Lf*efi"`enؗ,|oK7qRCXkyr `!7N}AŨ2 _ԙ^}󝺐B[[Z=n*5Q;v9h>_]Th1y=m|~ .#{lR˗G8 |͡yݝE]8NdY LaNmi, +a-fD qˢΩI*KgGv $,$ʨop+/B[ZTGjq4lf K> UW⭪U>=3%pbr"kJDûK 6C/4]a!"бы K9>DT쒺l#?;D.,у#*!n/ &N Xc)P/f)0zgTrM[ȻYD7ƛw>{.?,JXwyB ִoN}XUzbԆKUtvۨUZ*oȎ cxĩso.%cxS@);|Rhl}aAмr?U),M@}uǍJ{fac,l)GpX3ؑ_dT*(PE?0)dWI`3`>bcgf2'Z1]11]X MSyScX`m2F- o W(6ŤR^8nvr&Lm;8Rʔ⫕a]3;ks,pWWycdXJĂ>ňUsSTMCl'ݞץ-!үښˆ=;A:kOBr~\ISVwZA@ 7MIvK^<ܮB < L @qm&T+XĦ!@79(#=@5u3@" aߨ3q9՚#lm;MhhBk =ŋ(XA9؁˵%%u3L'UX&-Ŵ&>aLj}iƓW͔yҭƤ8X{AW w b'Nɂ [ֲs I! tqNࡋX'`lbMs]v`DErkCXY>МTr><!ZAyV)9{dh+*D*AWKm4徬iSP^0ywp!V>c }<4ܕ>^d AåA_׸q9Y*ߐ+vg_D[)8 j@T%" .:´R[Y4R*sȯNs'H6y͆B`WyrrZ Nsc>q ҎWYbL>UQ ) ކ#nz$о`YL64Msi;|-gO0s]?2}QԷ5~3Us;GV}~1Bu3`8RmͷPOJTw2vIrwH.md}h:.\ _s{q'dg¸0Y`PؒuE v%XSb;A<Ieqc5 t'q@1==n6+h4ʏHU8AFGX>[ӝn8`V{5R"ak%A Y6- Aˊn;lR4Ū zT).$ŏav@whDVBvL $N:\=Qܸp;SOižB0ַKq?Yx]y1s!rX u#{ҹ'e+m"fA \E探.fe*yK%[oTH ~riRdCǵ;'P( ^5MUH7tآ$4; Jx:r|(bAǔ1~_u~!.yIB&4L&?ǛE#;$ dG È}Q%euiz Sp /=:_J#`v5/]muaGdb YCOhHp WahY (< @X"X!}y0ڶytRlq;VvԅacD Gb?j};kfe2ӿl#*07ӛ~Q]07V{a߽2v/,guܽD"S1jM)y$ q!9_g;_m|T (b݊=+.VS\;674">?!i4&"aF·Nݺ YL׷MX _cn@C3Ș] PEFnXoƊŒj5_zDOHbi}N ]e?ՔGCMVM^[Iy:#uވQJQNgj$hjU(UDU,$Ç߭HLf HU|* a`Zf+k03&1" wWƱN܂1_E182 #ʶOGjf;nOHu/8G#ǹcz% Mex)\ Q5_-ϒaa}וG5/u6c%Fx(s:($sbC0e?U˒Ym1gҤ2uȼTC2[}<-ThP%*j>4CQ0'ݐΏ[RF; M}MH~}Ekamu-W %ܴ`^7`B U͂ӿ:};p;Q3gO6"n{\vu"p9\MF>hq,xg$ ,6:~Vn*A.{: պ>lв%@LHq⠄ZWp+YBh~Boku&7$>~I485N9l_(,WPWx2l[h##igrYE6KE%<ȨfwrH^wbci;Ԯaޫ\Cqhc@^4**єHr@ 9Ww}iVX O<3+ PǗB( 7&n}"4ȳ^H&T7u5|-Pt_q!wUN'V"&0 NV .EݳP5<ƻmL6JQ^UXCpȫ}.XAsB~G\ ]䊮FBZh`3Hw.ZkZYwrab#~dO 98Q B vmNc%Pյ9sc|`f|(e^)!{q88A`h*ѦFW8CB `>9&հem)rIF&_eƻRmrڛeP\+޷v?yޅj&V,&qtG@8 <#]o乃֠&L֦zek 츺 "!nwrm`nUeV4[᳆)/~/5 71/P@[C n,#H̞s<^ G:K~q/X72h1Zv{Ez\9ŏNw15Qm0x4UR,"E%"}t$z0͉HQ63jK4>V Sj=`t: 1b Yte*Ď󫁡}|,1.CsQD0/wvS12?$vs[WIhZ.tY&p+O=o3Zu>}`^6L 0?-Tg2sh<o`Ơ=L@)?f9m#O9"e oi"ǻm;Eֲ$O+'tX͞u;Q"1i? ˍ!K㸙6 U0D'6|g)(Li@R?n3"?/.ESq6}5'W=߶1~M873/2f~r?H@7Gt 6NJގ~d!4ĵ>4`&xϪ{B JCkQBqI++̴sejj…ЫE]b %m(ŃåR\*nA [{'$*QЈZ7 [vo$+2ӦN^ [rsyteic[ x}7sc|钜}5fFw @u  skr[+h$; $H8ys5N$,V ,X"3~1\'il-}DIӵMBYX#>]aӿV$|N l2r%JzRgq@\bԳ2"TnWKe*DPP~ZkKm!Z+WK/qkvhOF'Q'̏ۘ(Hkr3kM$^i9 Z:"iTs.gpGV#gIޡaTU,mV狼^@o)^.aK[&YttxPX ÙFa#+y3&O@>n.2j,]+q*/L?B $+_7|G%_5(i ?)Hd^F5N&#LvJۄnO5P_4-:rovz7G"Q~.#䣀Vd Tl$JI68C4n e-cI;%˫єkIUф$o.4TF"zйJQ# Ղ75/ﲚյ"ґ'gVi}ܽ,o#ۘh.hp'׷R4]酽 Q iǿo(xIe֑dice+YfBEp} 9ʍz B,0jl󾮰VHxZ\pq7_,aanF4oR<=oJг=]}4Y}~:9a)du%:PRhadilRX ~4,ɳw*{x\nQ-Ew&44^l0bB̈g5KCGO647vP<@'l3ަ(B@c%8J(=i_EksLd&,6&9ek ʙ|.6QV/hJͯ EqWo}YJ2>u& p1:e#vό*oBJ4M}sc]чV.?ɇCI?Y^q!h8,?,q?_3{R:tE:fӔXCO ES̳eKGV7l%=뭍' [Ɋ ߓ@kWDtff偏_R_x]0ǕBlIYupb\,Y␡Twh|#3 Q͛*ً6xL?|QD}'W ~;jrUP' fه7` k fdg]d|eA8,XÐp64tw3aCJ:)}8$tlU!ʛ!cщ#C_>5;`!E蔱Dh$,YG\nugy I! !No6QM!ZP'% 80?%Z+bo]IfQ/ڌ˥֧ 6(K֜P%Y7 y?!=;89XN/8g*A?YXQRX˿FtHVFt0֘Ͱ TTH+aÝLJ] %4|-g` 2˳2 M~̐)KU\ڝ=DdVIl{9~48h :ScDh/Gf4"' s4܁ҋeHtCo:0EfUG{ Px(mVnt/F%į8 —YM,MX¤EXd(C9a LZ 717=)bv,XQO7X٘"cOvNk|c_l[hJQgkPXS#ޱBteĐjso$} 5C&s%jprTm ''gqQ8f`iv E-#B$ ?v 1wl &́H-Biݧ2lFT{?H0=zG~1{*.{. x}#=I3m|3<*=o$vɵ] Yxh@R U/Ѩ U8rbن+C^Ŷ:6) YIX:*P D,UX&FFpE;-7K+$|.T>#I^@+n2#P.rB˕Vp1kPB5(Sjv2&p"8۽fN3U {̞je-!;:.O[wNDrI3EOYPtU:y/["6A=b_4U1.-,2}@\j ?هLs W`m._M~kΣQyA7g;IYi+;F"l'o$X|@yx &*dۅ6h?Gn4v߇4 XM3fldp;)0"!u,5Լ%I8>B;D,k;uDll"xauaFD_3<ŽC M;(DMI\I: " pR]jx eow5jwUbu`v &sU{ZiK""5u\m'Hu!Y8:н {AĴHR_HTH%> ~f 3>.hգe2ɂ^5"ITx` -ؾo,cki LXBJ d &?9^X%ȯ s˷t]lCQS(ADjFZ˫<30Ik M Ƿ4 _C}WNG8%3c*-zHbx> ĒKn^3Bhz͊ JqX`@ n)|%_M޻(oqka$&0Ղ,:-D553Dv_O<-O[2Θf4i,5Me 8lr W[toērmx\\%{.\V㖅'hH;и5J1.6G- Od 8CPYJm~ [o))VlCz5Gck;fis=A|h6Nx4XHYWwU*ϝ _B. Y/ʢPa8«(¬Hupl&ɟhe uF;(G%)Љh9nZedcHE߿4+Lдx)7BS!E e]^\|uFuxF]$A1U].w4ܫAVg-kO(0E]rL&X$* sY8:(TtxtQVDWFQn(ކ"R&IlUJSk 'n*8JF:`P,Ƚy/;9jOkǫ c1=\ mS*;£9'ʲ0 p_$z" g: (~hr3t"2U3@r sx6ma 䒥Nk&PZ:./LN"p F nMsW;Wv)Q)yC=q1~P=􍌲S XՃpRp䅇ƹT [({Po0VH2Q'̉P2tTJjUTe񙊨ktѬSg1ӹdQO_BĢrlEL^}l`F*`b4Yc !7,D#D& ?n'[;b-TZfj| n j e8lҟ ku g**WǦ922c)X+G]O/bdC 0(:Oxr ~S"Ĕ:~ظj 6ܮ %71^I?*m6.Uԭuא5kQaB쩢^PXz:pZGVvʻ=x?.sz%ٞ/`vg֌^)?K>ѕ\Y.)M⥺ʞw ݛQKk[b\ɜ=ȏѷP= ‘Td_)aSCSX#u7=t[nunS>X4Fcnvj\ZeÝ l\ܰJ3PKYfUnt! \T}sUa:!9Syu)k*aZ?PzG_}BVJ>1D&^jh)0x=AΉ«1eU&$r" ˳|i:Xe &s}/M* Gy+^ U}]´vO aŸ_5#c=9Y3?٧l}?ǂ$AӹT3Q~k2ķ.S;'7a?)|-(3b4J5)j{E%{ܛ )0~9I++eHWl:ZfkΈWe Ϟ4(/P~^J49Ķ32킠1mKy@3wmaP$.Ęo>lNöMÙ<0>CdZfqUzFL^x;be_- \lJSxSЮ{3%s@MIv㋾!vVB84V[A9z-=%2qS6P>$, IH~ ަ%6yc6CȸAJ͠$@YvCa!>@qƂQ}@‘3rauUQ: J*#z_ݒg;5O"(A*$4rm/q76E*OsLE=gRq^DnO-n:K1qmBn ʄG|T%w-JH|𷂤7'1(eA pQ3 ϵHHUf^; d%KoCla/@Ib짫Sl1݇t9ךg&)Z0QHBIɳA3bG)}Iـ]:^WVq{e*!_" X |ﴱRk9|pY&:l=K]3ճ:)P2V7Hw w}ctz n|2YkY@ >t]IL߼Ѵ)nss͌'88:ǹБ}]K˩oL3o *RExR$zNe~AkI~.+bRGUw P q,J_c=p{-W9Dz%$ [-%8¹/2^0cćdyK'7L5 챦>13N}SsX[L+64} tKe`# uK^-}7y3&O{z8"ga b!b t ~Do~qW=J4_ QG  ySM|[xn{wMA*~ki= [/7cM/jݸtɦ`ѡ]FvIh94K}2!N` PNu%^NTTQ%ыl{_(s_Z3σ/V~60p۸Euϝi{ݦ- gtR=wD=w픜/5?pOi< sݔG4hrb˔S6#P~2iG| 4IȒ[M Xi}Eo;/$Z4qRl㖇D\h1i;ذbd E[żqLmpmzƆ294 ή1y􊺸6GqX#1RĸzX͟/ 1lWF/{I8A^u hc&Qlh1KF7b_@k \!gX U}'gXG*n*`(IMBAS6lڲ:D{%\,AYA1ZIR,d kE>qDDy-~)~ٗ6s XTI #زY% QN}(3BHGy)O'žUؽgTH9]XO B f3ay!-.wA{>{uj::*x*Uu|}sG0*m 1oǠZ:Ojv i@u 9fc8UԖ*$"V:FEdf+io`HyeWkڭ}.`"2 WA<Pc8q9We:nxeRǃ}xI#&Ga;X2"'3.N8K"YS~oG'Iuz? UhDzz 9ү~j X"1yOeq]叛q5=7RNj}Vor#5/Ti`|9͒㞚Ru)"24t\LOQz5lVćp#SQàI/4ltiҝW b{ &$p@fߟC^swS(!}r&?QpիWz-J =Oif%ٶ -J\ڞ}f2 e+~!VS+L)sR6GdQ T*q߅"T0-&zߤ?-jv ЃZnSnG+@ #E&LH9o2?d=)w1΃6r-*8Ƚ߿1jb&(Ҭ9%r ,`-]UX$*w2?wr֯5 p~ds+*UD&Z8.޸xQE )߇P 'yRQ fqW ě #]U , Я{YQbC we&qktTlJ-߆2j=}dN!RI_.c/){Oe|,||n|*]ise2.[a"V HL puXDk O=kM ~'my\iڎ!Yxϐ9s̅2WLF u{P=q[m*uMP~φFB7#C4IBy(7ȥaCu;v) JBv鴔yGg\4g+e,/6WCOz/ZЦnW2iF 6Ǡ{;Ke))wV7X0@Q"7UmHZ5VPBY+AQ9LQoj$R4"3tA!0`wkZFB0%jQ:3ᐸy)!Gf7Cj|Yifc:"nKNTzptA  ڵ1 WT0԰"Qu1Y9"&Q$l301 _- c:+ޣ}Zǵ6Ca񬵻^ ^Q]{+m79;.f!y"n間\Lùy|Vci'KP1ޘctN#L,W#]7P.(Ά`J{Je+Yѡ5Jpx$_QcHSvp㞭m{:&5GC9r( ?-so 8WM71"Zhx$9¹DQ_OUa/sv6s$* PjG.uݡaB8t*0@k靼˥%cP=$V4))1dwNz_)+TR Q3Mv#g@ ٕZ%7_ǰ:fkٺ;)C:M]91'+7l;O Tz& 5XqmEȱ\-JtG 5w&qKk ڵopڳJ* a lJ"qK!7"mPZ)i;0߹(р6K ^\2aH@f.Řu2uHUa$ȍ"=)C\'7`0RDHޓ] _$}d Ҵڭ$4cRT'p$lv!LXnZ˧Pqǡ p̣(p:ecH^m1n:TFUfTniNj'+b̂n^1q߫z>Zΐ*zwM2-*vRE: @ZRO1v#' p!qW ,dSU%b~bxZ<#K3x;6 g15H*Aӭ{_? ޟM({(N[`eCS/ߑGl[ż@+?"Y2O~| l52బ+ | V ʺ^r׌t=XCE Lڄ،0 ?ɔ U !R^ީd!tZA?FA8]/dXmJYO"a{ba6Oُ !BK. #l|hFR-&#(pi=_ON.q#j'"*1F J";=v/rP \ T&V: GɰT,ʽ. g<@+[ѥk|@HEZX53QLI$v e"8ܪ(lfjΒŃZ$*/"D G<Lɂ`bG"qh58TL/w0$h ~|{xk'%хMoԄvM}%5@'+W#&(24仞ɖ喃 "C( M3X;;)i0 >yiSs߮PB /l"cܼ$Zly]vt~d[+z5Js6鍳eX|gv(*b uQ)y$o!6Ȭlwg^33?D-U:Jo곴J5(=i8@ukCPO}syw~aP p8|x@"NPE?Wbس \S %(r+Z]N,만+0MK }؛L9@|,>a:ͰWfiS|"(-(+ep=Ui8і+ l Qswj(quF͡rl7(#SH;5 ms:vW5K"2 2{r0?qݴ/0q'od*7%at72Hr&?1uA:"4ol @nmo5b>F.ih_c/,{S;#<*i(,'~\.C}P Y #8tJ2=PyN|l]O45W2lY:rķ6~ȗC؀Hŭ1F+ 0T,OSC]d\dm_!/16+%7:s_<14beG&Ҍ-MeX?]0e~S;?9*B]!Ǔe#IȗDJv`32P8#Sض^7 JŲq0?:J`})E;~gUe}WS㨣FZUf һ1Շ.ry{ǖK*%7S /ծM(emK Ŀ+wҟjO{2@zU+o8TB\GoI]ek9 [ӰQ&3igzQrr 巣1Yemz4%QCXC8YH'6< % ?rHi7Ḱe_ >le# ^3I'սjB›Bb<(Qe%@2 's~44d;c"}alQO(dNGrVJPoY0*LHGhceRʥtɭ?VTla0RW#1un]KY(UI|e&7UZzrrV9(S 0.ង淀yw^:eƟ9\\/08 I,gz|94 xEk96/ h%Pӏ^79c8cH[Fs NHCb~W0r3s15 %vvoى!OB#.YiB)^P?B`~8/ HI6/`ڗB-r2"iQ)|jv8~l<3)RT,q4Y+-ƀɟ~(~_t}R~s3VKvzeFrP ,cuA^_U;zRZ0U!O3`iuEZyxWvFG%%+0Z_gȷ΁unOUjudÆo-ܓRM8['MRYDQ4u. 3i`qQi,J6?Df& 4oә TPb4BTu. .y\Ťy?Ϧz!$OR׻_DXcGϨ sAAg>-Ks ~_ӣ5pV_4㨒,xm GyāX}~l !&rhFOBһ OezА1=40ڦ<_*cBۛ݊nJmMZRSBU%J0O>h2iF$7ȋD|16 >ޞnPc!ZZ=8 fe''#wXYVC)'mUJd_i|$Nz;R Q./~!Wv%;)c˒[@WӋ0E?GH0΅H9N 5c~ 4f ..Uiw &Ԧ1'ѫ$p:y؎+?h+w0# ]e{ƚ͉1cۘb0jWc32 * qzZ3~BrN= Wd= od=%zQYPC 1VGetcݢt@Ka@HNbٞG 6vҐ\avךAd"7l=jXLu$?S14Ue#*f\Y$N D 07_LT{W?GOwדE;\_6~K"L\; Jb #-IEFvFXEFzX- oZVBkQMA iy1PF]|[ME&OI~sO{Qdݟ,Ê~Ɂ>r3mEDi8Zs \y zSmB2zt'jY?l(h3π4x}<?`pC>[Pb<mo1eAF{Z (#m>䤝tXzv/6P̑,:/yi8SţD%[d1G8UIԬWQ^ q?eje(2Bglʝ2}pT1Գ)j_TtT;E1WsǜnH we}qfş j?K6,g%<לk? ^}U/@5AJkl~& 2s VΖ%9Sqfg*;>$wkyfnZQ-phFQ%sy)D6K4QYl~$q2W8p{SCRGگ^*7Bi~KeU?ቝKQX|ؔoȓ*.b@4s|:{ypNy:UN?xR3D0Mb/A8D+3;|_W/p0rOYa1/2f{>fpmaSǴ's޿-7OJo3a4T?[ J0*g}sя7'K&q} Pο3(ptAϝ%.݆iױH"$OM}׵p.MAz9Ȁmv>5k3 fxV<ͧ􆱄͇wiY0ܱ%AdO[*B4GK^6"Y,^d*|_ m fIb^^H~No` - S֟hOo%?3MV, ; Ahn+L ],2噶2C DbpTۺ–`Q{m ({v(OxZy'a"S}  vqjf`84("MLxmuONlݐgP{5`^+a tU#W3SYn)8iXH%U'֧{-u)T$8}c٨|ژ7( qɒg+_fj̙F뜝9ւ 磿W)3C?]Q1#0>o;lѡnʬk^Mcu\쓫HRqn(A^NDrפTix>k>ȕ=hcgGJfnwwj_Ni ^Leit<.~ ػ3&.[2-U"e<[אy%AJ~^.X2h-:&2N8ࡉñ.DP u趘pP8MM&ٕ ȂI&?]ts<ׇ2HmlD 5hO&]ȅmF&ssJ(G2_ϜSmر.: DuudJNwcHE)d޶[>"5F۽ԈBnz]fxM^wWRcD!P]#l 6l$t ~շv?)~sU-WrrԠKܻS *|`ȗuPomnAt|s`!}w5IJuG"L*GmvM>F'۹͟?r5&-64M+;4m Jf*eQ?g/?{jC5ZUvk樶uY69ܸLmma!Wd:?]}"Nh4ӹ!|èP 30*" yDl iLjA*ւĂ e- }~ID.e" 40(~fw@N7$-;q@]OD^0K d  Rwv;:WƦ8'VT:k`,[p$_j.wn)9ytDrK/S9_]Eۍ)( q HS9A`w~ɼ/)j5ftb޽sbKHK?*6V_] 1)BxuUrj2p n7A W9D1.& &G3{7*pqE yhؙ=-UQ^Ȯ6 e5m1nnp ^tq\X?u1=bJ#YV JcӀ.]=fOw5Ϧl*l8>+47ūp `Q&k>$Mfe@GCh(ќ5G?gԛ]|'Ny"?_~AE~`s1|1݉TU$N{ |F2}$DГ.`[&' qu۬0@f'r|okE~QpVnOC4PՉ8R>ٙ#4Q_Zi)t嫵;r@1p: |Ek?dyl,{>t` @c&)W뺔4B $jѝنSʥ0A47DD|VPGb~YZQf.s/Pt/ #R>_APqCGS1G:۴3!QyrM輼Iy8כnÛp6[ߛO D;$mSLJ˲\OX3٪V§4=%GxG Cjhl(Šo3ĂZF^Ɋ1nJE b|HZ^sFMn۷ /~L4RR&pk׀Ux20EjJɑG}uV8 {s%P/$ͤ +!}fV?s:|Z0&RȏSYOԌ^?"?ee č<`R[(zgUݩS0!¶i b:]kau-/۱,qr#G{W 5gdٶ=$3!ZTgȎH|n0E[0˸ 9as'=@kCC|mPQvxܼc_rĦGL:!VeEb|Lt݊|u#(\&P 1oL>Uu LE~H$~KY[,}4.(X}hVmX_RyؽJ4{X̄埄6̕jJ Y‹30Qno\_%:>:\@8F02Q9S6]p:ļ1i='g$;7i'̲ U쀙?3QLiܘ+G g`l1AQNs^?3,@|5U̜ԗorӄvD ' {hʮ~Ngb:['/ӝB޷_+axm0T 9p_Ɨ4.QB9ËvEOO,ts>D&yY}t P0 YXzgOqKm x^|S{bX#8MQˆ'mlLT${PF1Sn9q}?E+g~u;ႰuS}K70M@wæ^RX.ڰp {tA&w\rt[)/0Wk؊S~e7<#bb̜wt&eJ)$F0n%F7|fe.\Z/dx"=*Edu2,f!LcJQ8ɠt EMT"OB<^2@FYQ lrQtcL $fHl*F0ӱO쯉mr]$\[b jk2MCM aH^:86Ad:N}IY<@3xud륥;9)02#ݥf ѽQo zL5U3\wj鏓-jyȊtaxX{Mwd:x$J2I8K ^d 9nӈ8>;ԴpϨ7J<#'&ݗJG|)R{̹Y%=UJ]no Lʙ=Бq] )޲yiP)yӛ` I P%8a݇`3(0m _MIp3ч%R@v;M3d5|MDJkXא~ūoY锑SIAOSS,\v|LJ{Wéj6IeT <+;C3 !P)&&lݐqB 8U<}c]%v qN?cjUJf'd).iKrC_="Lu_uנd]wf~^8a}ܢCZQ g5AG[,JuI=;lUPCܯh6u{i#O߷L)} "(M6Q%<;i f{c 2Quޝ# d >JEeK{`) SQ87Jmoza<ʻ YڹsH ",C0s$/V3uG?t9"Q CU ifǨqd)5WyEc#ѠI @XhdELP}dSÿf2Q7si~BlahVnsF+[8߸<[*3$$:I/ u&\XuZ)*kBhⴐsq0n[,r Io:ޛ7i8g; G^\iH%T ևF7ݚbuߣ\yM , lnF\3DͯkT j#S7\.mENǿ=#>G=w_GH " +?rU<~ d$gd'ή%`^HʷB'DXǷ2mqmpT6+U*t r1 oc=Õ:-`:s])?{PÁKwl %-DoLCSѝWa$[O]ߊw/XD"/sH;U^wO` 8N.n~t¶r*O0X+QqP$N6 "2/^oxǖDѤ/Q9=vXb7dzm^y:dj ?%q}N!PĂ^âKC@]#pNHy ҾqzU%1x$,\H?`k:CޠpII$>2AVY&(60(uI;CsTXgEEm 6߹rhPO9"[p =ߣQ@@|O_tMqMirR ,짱5@Nr9nȄ3=ec5+)ˡOZwc y5VY5~ԩի*nȊv^9J~iWr?Qm\) &K(x(JnՔ,4ZH;ŖBϊȥ>0LOY$aZjgljwOv=ZXFY1I\I@PUƾ*NQk A^ͽAJߧ];XRchlx9W#Q6H(S 줨Jhl#4}hB9P'Q6c웇jy Yۅ0Yeqly+bTΌ##9 sR3*A j:X c,Ku%( l5էDā^06'\>#v۵Dq7cnkjk s,H.4(.q+py_(%b;"[a`Y;unTDYlDTU)z]H8NvtP3͡R`{ {gJMeVHfGYJ-c=C[*aJcxѕ#Ok(BͫSOmƎ2,̉:sO ׷쥁\ ծ wT=͖j) b ϒ_Wzyt0ǶV7aܑ )4X(pD +TT]KUf/[WvnE/oJ!#̭WiY*G[?7ܱUlg& 8+AрT^xq; ?qb ;>G$|h.cǭsƻ  %r dU8 OHxKF "c~LRoa\54.ateCJt`2ƛyPlӆ)1w4`2MZA dp)LLjm{6r~|V"|{j-<_C@5JX(Jy.6 Yd=.i'ʣUS)Qm7d2 |d::13HƘwy^ WȏF=-m dR1Qƍ5| X!YI ;JwYP%Xpė(k i4LA)>1bRNjfFeց RXx#ʢmoyXYx?PC r5G[b-/p̋7(?0 f䜌*p\x;峍_SyҶ@ (?K?e*uYNmmq/$VsAm@MwjM⢺P+}b+[5lVo2}\/1+`KNY C /jc.?Č7KaJ|XsW[bi0S1VJf@FGװÏ(6F!lGxfFg[TO ә7~"|3-$ \Pn0fJ?Zx/p>)jDЮp0h e)MCa=ZCYwB#ƐsWSrfi/[S V}?eo//.'(()DSt {PJ OvYighXSyg.=F~DϙtqY e@X4W]LSY Fty΃e0N!S3پ5drHgS L;+I⅐J՟yK]" 1Cqp H{"#46Wd3H "~C/BDLe eu$Xw {0z·FM 8`ަ&èTlVXÄW\[8q9Ē!.d"jceUoY$ TloS&r!O_0SYzՌ|$mMD![a;4P)IMՙ3ν㾆XgcuG~ěE.l_l|$*΄K9#l@#j =u2;vCԐDg:P]#'Xa%_,.5ҫz9]EKBhd v&[jTKSĜxA~ͮ?vqJqw; X{c ѻw'LI|=>"x< ~pmUɩ7tMC a&*~)~B'D C<*Ć]Ӌ6{gT. BS}u [+״Tk`qb lVU^Ч2w#zx I <(knb\5rfUO*];vG5.(Y\dE()Bm/g"˝ x3j}UH/"҂BI=Dc`Io-{{p7"&[XVCK%ӂjg²غʨWB":}ʭ/lL P.e}4Ԥ+-9 Fr#~Hd) S!W۰f;*!DЮYnE~"1\Ve[wMCmGHBrpɰyD*-$N2^CwM^`r+, &YVýupXmn&c+IB^Ԋx\aLu5*~_vm-5$+&k dԍ'Zd'fvw&=뀲  e2dIjO}pnOe H7<բlFCO>'rs% _bl#` #pZPp<$pιk\j7[%`'4>e.mstUx&zp.99,rvdhfshvУJ違bV Qu 1? ⯂drx=&j,)N)>pĹCԍrКsU֟Q~zߦ: 9s!I& 0ɘu2Ǖ>o-5sDo"wyll$uyKWQ[_YeDkZ~ςRVD-Icq2e OW~ p)1p3Z4m]Z0wbC"~E n1N9Eԑ⚎҅I PpEK.TKE@^;bF'}' 5hǕv̛^H]" 21YAY`IoQf ?qqiK.;d8o䵿1lT R:Uѓ@o{)~zRym75Thg@*ҌLv d@kׯ\4ng>QLFg)V`4B1=8zjM׹CRjZp)?D vs')L:Y>-Jep&0PBg8"3jeZr3 Ⱥxpsr aYfK\ш }4S=Df5OBʪɾ{Z,Պ]Pjɇ 0 sE =)-Br:~\b2 %"OJ>1J=f/eh!n&N{0vXВǹh~fP!H%񣎏sv^}*QpjOszL:5zŷb9_W&)>V[ò)9-@ 7) 헑DO50M<A; yq,w U?CA嚂U-k6kcX/IP_'%lhcN*:\n|u(InNt2J(KәAx)^H?-/RL&(䝎ǣHʋN\`m:ž AbA`lwO!2E+xüifH*EOKV1dJ2zi~Fg㉸XqjtaGۅGHJqv]F ':4U1nzI`FP=6 Q;F|G>w%x_/o<{3s.k P#mӦ$yK،gHJ/ kClmWY3Xuv[q>ȮFZ+dglCf'$VbL#C UF<˨N’~z#hfGi1(0Wp{dL`~Ӷ1ªϧ.ILKBYAbMtx;&e+F~Lxo<-Ulzs/H4}'2<@ fAF|Zؤ޴$PEHMsyXCK;o%˾' c2#8P ~8GÝ WP\4`7iY[!Ct6I;dc*@ 8 {zd xͮ=*>VCK1c6ͭ}SbyêNȖot ެoML_(&$9#+=/4ޮv}͍y^:jD7߅rPqU*6QbZʇ:k|;hv JWI$nɏ*E C[Nğ L\ۋǶmo5Ӎa(EQleeiiH_d]hXޠ^;-YûLe564BXԐ?96Y,Ր!F[e*`o\ur؊rWA8 B˥='>Dl:vzΑ[D5;%xMN79+S/~"&o)Y_Ԍ \猍` H(:lQ.p[wTiEPTbˍ hRN@7d*JZ7X0hEu6oNXނ3:sU&ʵ*k19h$f57&dCK#^}3dKm?w4/e܋ɵw4lٔ!ꄎb&[YxϪ@%YGAD7K;Sl`ZeV=rV0fӸ6P )t3rc))q9yl(7dUJS&m0fNY^PYCB7h%KV>df<:\M|'pvgb[~w$FY)={Qygf%O'Nyz-΅\)m;>c8'8Y}#x(]1vuY$~nsGCiS`5 ,UOGj(Iiu%-̙ "۔#Oc䍨߀Ux:;3սTݔm'VpkQ`<`qt A܌ݩ-Z&m6>s͍l IwrzA7`7\i&4QbI^_a:%}.וq`M$mnH3ڣ?yNNAC{_97Ȳ[l8`=HP2CV4bXN9? LuGE# +P#>Q){G*2ב [?Y+YMTcoSsgޛ9$z;Z=N },KMLK* ls^D%(D-fﻌϘ5FeJ*i,W2ۉ;L ;4 YxScDj9U@6SUY=qGO gp(*^V#ؐ[ M ι:6_&İ>paAnAx(U10-F*T//:W%2Q5miYEXVd>c "T :ʝxK&$f׸Fo?PU,rI(uGДxK]'osKC+M.AΑfU, &7 ˟U`q{[+vQZ1gʓ#l?Kg2PYaʑ}7E׏F`3`HGo+wC"ߙ0뜺kdjZ 1N9 c{}F>>YAq# b_+a/RaдLfyBOmtt\T[׋D :$i\-1z{pMyN?Ƙ @\V[Uvg6<xk?˨1&3=Q2lBad!RmY|TFPl&a)oa R#q@)P/!0]b6Ck jb!LXNXquBMC0Ev 1z]ʮi}'M@* >P uOZN&# b+R(,f漁o na#h@HIyO،>yE]UNVQH ^2-rdQ$OB\r "]Z׺8ZSWz&)`Z:AzWWG!1ۼ#MN҂iX"CllBWS4['O[*zԨF1LI[%PңU?/95r_/@IvI lpACGk)rsuHi掌wIubjӲ,G _û|hA5!t5E_yiQ;tHl;_u)oK?a? J޳n~g3ҶpSpqś%u!`nHPd`XuOI\+Q>%JNּ{c$ ݢdKΔ~PQN/I27QD,UR\mK\u;'gyeo٤nn[TzrD~~ɚ5bXTJ>o5`RZByi۩tzt 5P8z/xGzϮ~D)(ٌ"%"%6t]ZΆ؏{IAi+@vSwHL $~ 3Pȿ(S@S d'v.?+B\/,)+Wi>7y<\D_)&vNCŘb7ԎY7~j:F%Iڭ c65[4nC<ކiKzp>g҅`L^@ ZI2MslDMP}); :#NI'|W16[= ̭tգ4"Ȫwlۭ(qBu̗^o]_LV1Whs)K.=tiI' ħJUG +i:nҝ`~0+Z08V9@Nϣx<}X2v6; F OhGS TFi;KČR~&'݌89ԤU}[t)-7-^8߽ o̼='KnF5mV}v(?ˆ}MWbUqU.YeIjH*B-K-(7kh*zkP8PDM>ߖQ}:Vdt2 0a!qT`@Rk'}F ݐFw!@ďĆrP9#8E53H CluR1nVZ$)9 ǖ&gs2s%YPaթ:~gu4$,圢Sgx-Sǐ38j p}@A4SF kE wCb!wkڀ@Ki $FkTUmOnD is`-vhƭörI&JTh-9{%=@ e1vTK/٠~c$d|BijlW̸[a٩"Ţ]f(aVO[;E_Ss=?Ȗ2R+p@?rB~ETi0p@m@{Y`oĬ7KbUz (o@TӔX2i4<4̢a`Bb(NҨ,RTwߧb5fr[8Iu~϶gDA昹= Bˢ%PF}T˭!Œe/[͗E*g'UdGd̶abF$ֿ A8PGNj&VKKnSљ|8ȃ G[{$&Rs@ ${-\-=$klt|!+n!{z:OWֲZ]}|Q|`0S4}c@E1#Z#T+*ٔ%zA$ӇUğR.YFܐ]ͤ`R9_Hdjt&;jB1cTKMcK)Q ͘`(TS,fQ(4O%!?H.vT _:9G5W )Ur}VW/CLAi&'{MQT|ju{B__W]n kn=[Zk#C 7_nnwA7w7|Qk^NdQ֧^Ykn/Aaj%5+.5R4<Uܡ?em2m/ܞQWG#IJI硆WK+S_ _l^h[*{+3#FGYB]P%#wJ1, sUmZ*:f/ ?#K$ϿQk hB%w'^j9uP t#Lees3WPZ ʠp5r|gllտG zqoъb No\U+1EHҍ4r2Gʫg0 ɐg&Krj[Pz95I<!2(t}ҙS\Gv-OjHj8u%=ҽcE◇_!.7tTu1Zȴ#pX_q#9xOHTf(ṃ&^U@t& Dn1; ܬr0ZAGY#C\v}(_S NPFROB_Wp [ $k*3CُdH-iz$ߓi`aqxF\5Mhc k1}"F@Wn&Y@ߊu a(XŢc4Na ^p% ER O)"N7ۍy?vs YWʳ 6+\.v^^M1PR1M[HZN:zKXQMpj`.ٷv3滯]GSV4ܞmdX.x?Q(LtHN ޽v@C3YgF}*8D \[ҠbS5Ȫgc#08W2yk1x[2Qm~J"_sDn2vzર,Z>8[B}\"CjJŝ\S|1i-YPgF&"/HEz3Y1Q+4 )0osc)DA'Z0y2`z1*\P4uW0pe8&mYk4q(A"Wj$ގ\'G-H&cF+QdŹ,R0ID7v:Ȅ̪~DcYOkp~H:)/kEkC3ݶ_0]~s`K*$ΉUmꍓo()!bYYeupRXT'dXd3,&4ne-1iۍt/i@7@xD 90 X(ٌIπ"R@S;3>#Q Gxfwb/f]gIMB0C`ylPu}Me T=~LXo 4" vdZe7:UQ@@F1 1uKrG|JmzQYVegHcSYzc?ȺJ߇cHxew h5aGt.]׬(BU)_٬ÀX;W>VZ񎔄J-պ5s |9N\o4A9ͩQ`%1daX5t}TQ}hp)r&s!/]d[S(#K:{st>x/eL'dG X"lm=| ߔ_ !@oA- }vCx_7wu{ֆI{ b80N~SxR:%ӻ\yb}KdlV`hYWՍIS;~4A6@UxTJze,0K DCx`kXP@X1w%kԙ5Hb.@ Ṽ4q:'zX5KRpxʃQX'$Ĩ^<hfܼ%0J95^7$f ]A]eol8J>~|ED˟V*^"]1 @z<+ xJxք0HTv~oFs1)t酜okCىXi= Ivvl1 w.)O\HgJB)ONjrH z٧jb@UOJ%q6ʮC7!ITxEjX^EPiK,iz Ϝsv>VG_TPo2U U M!I[]ѥd)ݨ I] :7NͩD@hO=I^4^ @2ab^X|`/q $C[${f>?-࿎i sɺُQ ڷӒ :t3y*N[~3ٿk}P@6ӻE<ŸXE4:RDjc LMiCD1`Zl,ɹWX |^yzN(e}ƅX\04_גVY6fQ8k`?9:M`t=ڞʾ mN0{A=Sتz_Sɂ4Vm}]?Ph; ZsŠlw0I0_ak(SBe!A]**D^oˊ8x@؇SVO;{es'НyU< bu/؆|[J[C2=k&S2tiA0Q5X,ieƍFR-(rΓqfeرQfLPRo0tȗAM~_ؾlvȜjON3FV0X~>]_̘XQv-SߟYf$+BU#&7A9&/\TT7EVaEN\dE¢3vA=Юό䢮ec{/цXj<|W%>l\Mَz ^MfEmU(Uи^f==Gc?v74waQמBB=*ZY\Z;1oGGu go,dn.c}CFuؗ;>;`碪dA .Q1c=C51O<3 ?fuWiʻ63s,coOqOLt$@\՘dG" ƒqF'P}v&×S 9ٓ#Xض?Ǔ&fBXԔ7z,K/2QFeF@t.uac`Ue #6Eٟ.h {=')~~m$? ࡘBhjXo=`kۡrm9F xp1J. N˃x-o|Bj4[lu:iBGif9A Km&6#Iȸ"%8Tٟ b\N}8$`[Υm)R|<ۏ3a婙o[CvXd] 'w`1x8 %5FS!]rɏ{ ӛ&sA$uY}o¢*`RqG]IZΝ6cd_!<:pu' b޴2mÁj?q(0E: a4T ٗZJ+Y«Fo~23t%,K]D+8»5&:e R$<Ë%̽}ò ۺew@ĕUI}b<\2ZsIIq# 1Wj̻b y_d3wRڼpL5DC6cB0 |KCH^Cꪏ5#~XZeXLcwC%]2nPjjش9CH=UO-I5SAvmLt,7x@-zZwN>f|%X}]( 9uUnHxk}1XmSH]a{em] @I|Yk/;3&TvV5j*NOԏk[|&SrsRc>ЙWHK4躯 Cm^ Tsc %$X PF{Vm0C_k_?XP,qiq,sR5В"q.VcաHo946q~Mmc b3V()J\ÖZ=2T,V§@)(~P[ A  yœ qbb25XH7NH@DqGq(~V7OZ Mh0Z7?tTd'>p G?a3Cs߉aKmZ3HTEqNN 2? 7,ߊ9Z@븓dWOVtJe[Z¹Qefo,6$TqA '7Qú98AVG]݊qRBy6JہMT`a>?E9:6@OxE/[5Бv=Y.ڀ3.5@~5BttnqmH_K_Ek&(]IjE'C< @Q~h,SNܱR6+vm^\GiN{T GT~n@+÷/ ăm/dP};Fy# ԰ 末$Qs2#{Ci~ sUr@Kx>A+cn&>obɔudm.X*宣/]G3,L˷ё%Spe vFվ·Rj=3ToiTAq[HHK^I20IB:8I$&d"g\zaqц $~TJWh z2snIMBIôil>%E‰I,c}&r9ot/00XOFI߿&)0ggAT;  #&#,! kU=& W(z\8l>"\j1+ߦ{[!w+GQ}d1n`ny䴱r19?w͸ [=Og'`m56T9Rs"cra74Ik3/t KLj+{{ )Cc|[4y[tB[5&)4KY 6uNRQۏ_l8"h>gl!*pF_迊@aRtcqKCVFop%*~%V0vE(XSթʺ Q/<#R>CdSdfrxM{Դx܄=Fi_(~4ݲY9Eg7"f3=( 'iT@.iext›{E9ӝ(Qztfy}l=[ZrH9uc,hQnaTZNe(5ĥV;GYȳUJryh s wz?`w?ㆱHH8p.cߪ*C:B(r)k\*{J2sk@orF'> t?CB Hu'I]`?*bRL'^/܋8Ll;E'6<+qu)ïagIjCz4|+Qw"cH3=vi{V>xq U?$WR `Wjb-.H$ͷ5#dJ@s.D@pݪm͈ԝ[1{jlZ16)El7 a\9R,dǗ 3L^yX~&_pq _D 'ߠBa}L.-)Z?CfBa/l:P{Q1&y@7SG貉܆ 5΅&Ln6:{-\?eH]zCzfw`Dg XG@R^|c$y~9-2eE* VTtS5 in7g2R[Yb(0 Z\ϩ6ڧ g _ [+EWB8itK!$Թ|٘6kPpW}eDaPK 8,:+T5]!wȯsส~~4M\hux@Jת'\pZ~i(hLGe"/,pu/x6[o+ mE[sH, ׸dTkqU v77}J

      R` (bucp]N~r.>vŞ49 }`&A=@Hjql# {H9sܭ 9b0)0?hv&ݔ-(]u*$M&[@%搽pO,nZeW l{;V~g~fK `s;Kd,T=K/]^=i okdZLxe5m{0%yR0(r+ kH*挭ZJĵZ>>>+9S0 ?PbJ̙Xhu7O [h]Ķj2?C#@o&wO*jQ &6e}NOobRE` Y!Zyw}M_f Q1#addQjLYy E G=S~Rfu WӇ%xdOTD*}O"믙+π¬AUχ߁:ޮfL&",?sW]ڙ##9EM T6Zo"cp6M_ ̭AR{l-\{v驒h<y _lQ|w?@=9Zg;wZĉNw-;ʚCd*zk춽X? Hd Wpf'ɠ?#.z ɳʔ݌=髇z=}6}9ׄΨhD)us3E yՆϺ8OLY(МWJ DB 5R0]tiUBr,nFvh#y@ww1Bk~HUm?CqŏQ \5.~O]MIz.E:%}B;{itEnQޝ'3$S08VE8'RU˒%mfEgwX#)` #k!0\DŽ|Ivzϖ Sh;Գj%k%z4d/0L WO&.X5][`ZJ+;W26]Y{Q.5j1̥eDXau`~wy<+t.s#/m^02T't%E&p\9!3>ɈCբL"CH">fxЋI|pGRcC˓?v˲_8RMCND/$P\]0ix߶Ѕ_G\F7qw|Q)ooI;00VC'tٓLљ ܪ0g*}&#K nzs< MƷJJ>[_K՗lEWn jʡK8V@n%dC q?/C)߼F85<&¯U1+#=q,%ObSW 8[A ǩ VpÝZ9}i& >o?DU0gN1y֩[Y/Aй:)r>u??W%? Sey/ C1bX2:;p 7awl#/Wfx"@e2/jRfTQ?bF.jAxloxb{y=zYM rPFq@딈(қפ0*TAuZp&Dᦔ,b"T8Z܂Q*'<*w $ 0bλs2Ԏ01Cape f{ k"g4#ŸEu(=aIۇAFdab@0xKDĩgW~Ѓӗj*$:ך,mt@ ` ]dh#|K߮ yHlp $tF~鄵&֖*.Fm2z:F nVF7ۢ6 %%Ye14sqS~$yjϬA\i[go)p=[ZɧZ)qvopzOh@i{⮮#V%LgՙΩ¯~T(ql5M p\SMC4  * _a%dA/ 3'[S+2˹EDٕ2+U/W:^ow s"&'f#FlL d65S}4A#W- @(S[I}T~Mtܞ4>ĐN}\*D-~vT5 զ+AKCF\ ^밽Kx^ Ǭ gN^]-8'2 'IzT*pHqhe01>TT*n^fuM5P'+ c:3SNݺB3y5KPt ewG>̯JݘcUޢՉqL("Aˁ5#؜ht>[凱@EeXqE?:V)0-ogmkNDž92y*'vX#pDbfV䦅SÕ:MK˶(k򀳎-ʠ1XLCMfhה,\1Bӓ另Fi^=Wy̍Yk ϰ ;wNn~_N¶ye' h8 t5峅x._bw6ӹ0<D`g5q& ԅp;CDM7 z3gLZT~5yT|tp{6?&8 MD-@mER;o=(4-J  5Q/TGV1Jg` /#Hh*BH{6P 6$K!\B-'W{iti(ȟX*Y Av2jznPZY<ՎO  *wQx4oc%\)OLvWb3ZvuTYvpY95M٥<##yϝtl o?jU/0HFLXh|qc|o8qwW{]sY-kuhlPFL^0n6y @PS235ha.vf- <Fe7&V*mRb[5g\0^5C,98;4w$nRgc T (Vv7ČwP##gd(E/ykal$jHbRw͓6kp-nbAwVmoOѴ |XV5nn!&-HJnFgA|@!%2O0䐖Xh(Etr$MeC [ܲ"P㕨8̱]F5zv2t)Flv] Ooh%'Uamc"U$-:mSlNMZND~'ǎQYV'MLNhG~_ES(0.q_[T, v(S'"R=Pm({#}qUQ:,_rQ%{9bl,W](aNeE#A 6?3ևmSpfij/6vޑـ˄FVi Nqx矎]Yžϛ08RÀ鸶|{m3a%JX[34i)Ѻw]=Γ-^VF99їVLrX))~5A;y kC%$pԠV2(L"$b |xSjo&/@)I&9YmX}ꕘ`ȚYv >P4[Yt&a8;u+d#Z:ٽv [8 Vq|$ Z"qu%OglJݝHJɡkK'E[ف ɲ^iT'IJ Y+%6e\ eUIbD8]mDyUiiD[ (C/PJQTe'kBmcI)zpzUn/ ݬ'N*(\yù>w ޴Rw͌} E(dT?G/w7qD%X]emk*y_k7;Ǩn`jQB>mlFI90ZaA-3ugS9~MXe- I_Fl=p1Mzb@^FЧ\|.!yVk40(?LS#rٲ TYП2WZ'+^2en$X 0iä5.1W x EYb{ _K$b*`bW/P‡P2 [i*EUX.Z =+,@%:K?Og 6pOcǓZj(܍6%XR ,ůءw4Os#˯<uИ:{W+VLv07rX=}x =^aɔk-L1PZcDYO5n~"0N/uAFxG|`-k_g"WT"7ң3r»]6}vLB'/W<GUKkxi6zpEB$T^xK>|qţTgk d(Ȥc{2~}n<[HUQ6۳ٝ"۪r~ڢo,u\x{Z-yEia<"ӊ8i&0q愗OkLJD>W.?8q44BGt3o񵯩ݜjʣB3.ni p}7 ʼn-맮_0#!9G;UeۏzMkD6ԏh$gЩh?5toHUg37̡%z,Շ喘(ߌY`0GSFGJ]T c'2|tp.wz8jc%.=!Mu?BSk2,)|Fӧ9-Rp+:yY:AA0x;z}SN ȻWӯn6Wlvh"9/ڜ 2~ܯc};)߸1BɾRjg|!SL}/f=cU\ا}SeWNZSaO,QG}(Cn{ZEgP (\IKژsQQS=lJEXxZl^q@OvLef(<lp\4?29=)V{d9,۳So9U@'q" W=LZQS]Y.`>vF!ne~W6כX?P2֯4kuv>9Vk +d"A r ڀ){x@]0[FZe8% !9˰HѱXGa6>D ).U O'4^ /C=j0dޚCx|w.YLZ(˲G,K5W hcTr SX_oCs rVȭtrFW HTS) 5e!nx'{3aj/S2>TR  x@3|X5>[E$R'?AHaE2B|vZsKpJ  -y!7 x=rƫ6nZD>M$CC)s>8)oZ'.inng/ڲ5_It,R6u+h&du˔Ag4OKm3d{U6%ոF920ZkęUǥsY&Y/S22. >VhuLw^,WljtLBժ@'d~T"|m^R\ΨlV9?p5igRt]|Exgd?rȘg%Ra*OIhTŮm7o6J"A|݇[2AvU=ӝa23wGJ~XSqk{vn%˯ԜU}BY=2M1K+zR缕$t der kġ}6?)JŽ  Gz#\qrDm,1;5>D5 ArXs.0F('ЍL/tvȻ/)C#11?7S{ލi6 :YB{l8iyHNf#Q%J{Ho%ƿ:xՌ96D+Tֵ,M'ˈQ)2|*22%PĤ7m%FQ1~Ӽg_pJZI]ܸ9Hg%.#s:0IEXZƘ9bwm47:`aVuL!X^#4$ 4ώ:'7 9c0V_JZ,-;Xn?+(@m<7 Li\BUl@ 俯.R[L9fq5=H4ĔNHЍ& ;E74.Z`m^ƦaEd8[H]꿃ut:mZ*>tbKN<3Tr{5ٔqh= IJӋU$\8H eʕ&cD  @>ײќs"COГe*6v%ܡ ѐ 6)̆_lz2e&6="m93bJ*[A8\^J')]瘒L vK!x ^Ʊgrub FR1CՅ4>QU/l  0}lХPZtZ>MXT~4yL7EkQ)]H-41ȧEdr3%81Ze"q@"Д𠷚e~<2:a"KZw)GgF8|%>)iJgUĩLWAOϕ[/@%~(^;rptȴ?zj,sh0 yl=sȣCkq 3FC/r?s:`@C`]g% hJ`fbDܮ^`pw7h~vv)GX=> BaHKN _`سvV}U>[[sg_:NK! ."R>QnRp8aE{kI7(:];Cw$˗[g 4Kޫ-]HL!P ̑ڴRg einak"Isp6DOR-,}鳉\\4D. Ȳ) i=S[ ZƢZznDڣLmFNOfk!lئ:EvW3!%ZbYPpyKli} 113{Jv~Cnzl6gP^$zvmAʑbti=7d:#p4~/)f&m7͑܇)S@C%8nA X\D=3D}%^s\%d`050*žXQV֑h~Z^V Lp 04eوWՓўJu 'ȣ;b.T,̻S19.8jܻk/`M^V&n P&0q|/?Y *C3h- M|P1>v̲M%] 5^EYf-g{94eڟ*+ɑ>JszQDV)dcIm{gI}t{Ss޲9%ko̻K&TǏEZm{T Ag_1it~>P`"{6pbفwo;"BgW}9_r2 ݷ #N 岝ZɶY6@X)2Ke}Z}?@G+CT痬gho[_-vOuq]9*Udt y^jYG^n{9Өd-i栓w%Kg;rxdOn?_T{S6߬MM|֮.D;ú_V8v÷~LK7Zӂ·'`#QUuԼ0@ո38ڈ`B P{{7ʶ15@;j5 AǦDϽ7)A@8+xU{UG%Ge-Ԩ0ȧaJw4(>l4FA+M/֯v[ǜ \Jy(OTSy1l K268Pc$'f`f`>AaIنrAp -^[2jZr5 v3|~APT%|Ql5GG?E }K'X0ƣ\6]ydP{)`j/Y8b2d10_QTGh+Q)tY Ǟ+@@W9hgdYŸdwEkR]q[.yJv F.\ ݐLg86#| c[Gà>@Lr/p.BzI\1.i+w/{=n#mt>/ 2?LёP"cH emoC~YK.´6Q*A#[ ̗\#T-%5eUjoJ5<\jkuS!qn6ZuO8'=Iw((dW"/@lƝ_HcXBʱ3ʯ+ĞLw`,KAq֌jiq[ ɲ-zv'|z4>4o{[1nf% -n ЎHV 9 (-D5Dʈ?݅@ Iy8.~[de ?0.s ]|Sgzj$XeyE5t F,} ##rCܿ%pBW,P|v>435`[{ζ($ ]LO~0|1]闳T4R #Cp3&J^Oѡ Gmgɣ({t7" k}զ#zQT h DeiwzkМ5kǑڀa$S‚R;==[4W#$z^qzb {mHm-+W[K&nxKk X8&9wxQM92gSnn'#Kz$Ep _딭Lcv{O/tȤ~*D p{D3Y3& 'V=iuk:/ w:تo\N(qi3}WtC (L@jLSDIYB^mZp|Gb(&e@%3dq0ӴSWcZ*9y$RN@jtӦ\uAkه vg}3|JwB/Fd>"@_x풼,.xךd9c2c<^S l!ӶAh8+^jiXqX f,[-Ce^|@T[4BjtR`)vy\jX{z ى ;iDC(Q$F[>!be GԂ\-GL4qmƯr8\)hu@3t=';hl%t;aC4a0߸%Uj])C_d0^|a-.KWL<Q)~e8ZfPKKSl' c.JBxk~:ޚjztN KS}אCnM^:R}2\--:} cbrj`,yS7}4#*gN^9Pu.N@H)o SZۍ_;cci<UtT\֌yA QeǑrH^Yi7oTǹH8 'chV^8~O[2$;8S_tӾ[:&k&Fo@nj9 x,=99˯}ab \݊AzH-akה[9n/MaNMX)4H1j͟(Pj&a96oG'pe,7Ey9A՘6bZj/4ȓFZ0cG%Q@G}ygΘ2b5e**̫j3##gu#HhpT!^PA̖b bscK>QrB~%r8dP WNؑ%npX;qdgk/ǫٹŦ][45,A2MFFd=` n2@Sx2MU ,i+E^n =e)[/ ׏6qOϚ,kSvdu$c=׍)H.8}Y{Ұá ;FWGƸ3|bɯ4+lvWqXZkIRDD"۶Nӄx8d-=4{,^͟X\I׏"!}֬-YG(+_< 3'?gc5fM羍>ay;u;iCQ=o-'u)Z5E-"Ihh&sN:[!Qܭ@k2Qkr-""lid#B*墸i 'Hex2*}SԨi]\\y(k.ڂ{(0F8Tr&c63l1t)\Ya9%լPтu#M\(p}`<*:.Q=nfh;Hݬ(̓REo/}k¿JuQT,C{MuAZb_\c7{ۃ/d'e䘐eUJQ=3FT@F,W=(Tst~.|sJliCvXl('Q8nF6Ƿ,uT4)kZf\[a~ տ#Ye}|Sy|RTn,r%Rj>j/I'H*)(  n Oފ:NEbHR9P `ab);!I@uACd/%lTC ҷ)];hRʲ0 \bם+I{A3F9}|?$+*؉\^c/WN\_fPA|VϸYq9>lp//x/q-~Ge[VXnI|Ťf 2˼jz 8<?g7(?sRv'ŒK7_qLZϻ4%%F;I?9ud[ϻt'J/3(+tP'(; 98c!} ި0vM ƒRUg*؆p52%F}0`lN4 D4Iϙ߂`JP0řL\$}}7:|=kV8!(Azx))3仿LnŒl0$Wv\"KICn]- zsX*U$z\\ča":VkݢS(=}!25v-WcDGW[Ј9[.72P3bFS6Tx!֞ ɜ NXpzVwF);47FǡPiBu~$y8$h=?ڝPݛ=~?;P&kPTNCѦ{;Yl?),(/2X,\XVM-Io 9@CpGyP)\j U Iay@(7qEvgTkmP'- g xE)$]^}T@oRuHCvhO<۵nvAjpIåo1yaOקa(`oamv^Nh,Jnxr2fx6xwvSw51eۤ8]NNyzD3HIJҶã+LhN3i7`=~_K=d/(pn.1 |Tu^!WnvrSW/awLZ8YTW CBD.Li䢉ZV'ٿ/EauYCe*^ !uM^?YIdK%f ݁[-Vu~nPcSF alK;gyY0^b&Nڐәvܔ#{eo>?D6[1M2^Iyfim~K+l'~g6vr_&4tϔmʯlNJ:_I#`U/P֒iig¬E ?Yz=M)$h_wƏ5@ S{հznCyotP62(A29PGH6\۹ʒBt![ oZ?@AgJvG?Eb X+`LԯetG;samGfaI?dovٟB_&L!{EAdKpM*=! /I`{E Qmjw=!巼jJ0+4DXnBع!An"Kf0ڄ$v͐ T@1j?p@2 };Ro5V9[F+1#Åxׄu 'd6)fJF^)sÌIG{/M`Br@hn9R&Xꋱ->ž{ؙmCEƌ-Hb Լ7V7E.;|f*!Qp5VZtl>el!݆&qJƆ6|6Vc B9@% m92sY41ni?ç.+`щ Ұ-J `EE'CiXXvH\ɲK9a=F_7Kx>'aZfnC,>R˝=v]P)Hve_I79Q(erHFْf`n*|Ў[2ZL={3EG,L΢r$UYB:G,U<"OcemǢ #k+VeͣK2waČ_ϋ] ,u`O)0Ie!P{a#Ja΁7m8jG3x *iA2'}N|vVtX` Ͳ!vۛjߜl̦]L#Fjj1Х ?;7irUBxAw>~>;ɖf XQ+<,X!"p&G+BAs=-;RBZ'f? 7}Y붿N'8REjH;iaD*:pFwie ԿTyhnqqAP26.d3DrvX~ȂC%|k45/b0plb,dݶ<=YprpkP֥IIU=#L1]P9h zk1.ysH &&ݙ쯚tf#i,{xBqHt&'#enEOVJ3stƂEgNɓȏm{Et؎؎uhbS6觷/;]8 Ųa><,|KhBZ Cn'ΡabZ:m[dT@%;*eQ\sc!`!gt?m7eK.w+L;!l:ڕcFc1" C!0=Е !#D8b{Yt&jNyN]L;Q*v"ج޹1vtz1uE@+ۈ{ާ߿,G4kAZjJ(5CTu(N6q&J2Fkt"Ӳ:I{2p=M h9A(+*ږ.Ɯ$q'!k=a cG~G(U’ɞI-rNȆ5Sd7WZ:u]$Fcj!jZ8)kIV<稦vPmNawxxwS+ezdSZl"X:MƠ&f#8 jAy!9)̗ $34j:iW&,=B -JT7̣0AzXޚ8\xjq\&/ܑvrˡ^_^Og/51ˍ wa0;'1#i!!!cs"Ǵ%V h-<p{h0Ϣ0u}8pڋW9{^ˢjDAP_t]:LZW̪{2dlƅaδ9?yjXZ1 ա4t^Hoi燁d5qz \JIoϽ뎄b\8㔂 VF$I9Gf}Xi%jN>Z.@Vf>vzS$Nl %ۺ䔷Z,NܴfBx}v]/HT>f0@w~%aVzM>:=97j߫E Ş6@v4c\IǡFRwqH:;)CG oY|"ٝ3&pZݰ7w s']cr't XMi0b$~0&v5^ܰ?,56LSYl~a洃Lyi)4 xBӘLV kCa2-ySBrv rWq.$R#|wRaX~)i7evy\<3@Nct(kשѪyJ57g3J֔ ]^'璿jO`:5' WJ~ЎUWUP ۴boxH(20!8Y%xV ox O1rG> IW\>IHn&@d+œ] !d1Į&{>N((Ӕ\lSW?@BDɅ$h`A8/?RzɅq(OOLpܣY3vQ %%ȵn+0F ݟMo=߂$a͟j_6v[92烳yB)dQZ|%vS{9*$/"7l lFsTQ21\ }.HKIed:P1r是M/&prP=.rTee>~oܾ/  la.+9RC|}lm?=@T_>TC4@?'wf)ȋl=Umdsa Ϛ  FtnKr8CU!ttEXb%ޗ?1 !1-[5Y;cV6DpS]MJ7x-%@bQ- C48v]%rGțT; _} B6i_ @jR]K}2΂ic2|B7Uۡe:MZb8Ȓc RҚia,Ykb^shVx$Vp-)$248LӫV$ }Ry#D*CA<|1./3Dgll%cm7)XcB9|:Xv=B`mge7@Gb8zXHl!NjqԓH0~l5/:FRT0ë [)[AATQt@M;%H NSZ1y2z-je{uŚ?8~j/ݸ닆jl'Ob=[ $;z=dT˔+@.EY2m~"4Xe%4PMMvr,] }$Y7} s{diL1)""Z`S* HՃ.Yi2Z&3EQ!q n!3٢hʼlZUwA?:rSu%tt1NY0xŨx9eTUܨ{Ծd&Xi@YК0gYx؈^n*LEJ@jLke9WKR>Z(((f4 w祖 {jie/qtk=6{)OHA/eSRjEv fs ;\8~2{Aю{ȣg gt$ DYhOŠwL;R#SLCP&`!bud]ߔ#v7@ eLb0/?lU+Q(Zi[a*םϠ6RJi wНTc&q偝|+,[:Q,? ,6PÖD<qmu8[<4B87&DO=)Bc;_O Pkl0"vj9r:u sN db6 lk-k΅(E .{|.>X{ C5] 7 !aaq@ 63 6GcA*˞.: rt R~}dk <ċ yݦ=M~*6= u7J L+@5Etew/0JS9 2oy@}Kc8A2Q}#B󓷪7O.Y"Y&}l?7NuHʷuƪwE5oR@8۴ف,#Q(/06~RGx_-ڌ3f@nae}""Y&1e+F[h*!b( μ\wqka@"]Gĺ_@aWۨ;d$ˉPԫ`.ysĹ-/>'ќQlFA?h: 483ΗѰ{krȖ/pJBށ;aEI!y:T7pqcɐ1L+ey?LjMe&רW *tF/ CƭbZѰkwE-_n2NcRPX66m;ͤ$9ok*9Q@1 RcBge{,ssQ5Xn1^X2S*m؛+&j|q@;yʩP{~@v]|Y8ڵ˅*wcqfawP&[|؈HLɂ{㺌ו3ÿkY| Dݵ:_SĞKL <ؖbf VʇdR%Cۡ*LGUrupԨ<~izVyj`U skJ(v.D1j@n5/ǬB%iJNId`X@K9=x)i]Ɖr7=,E$/nEb$_&*Of[eF Y2B>#X"ش3%@͹wzƲ Jr*Xڥm[cJb3Mܲ] ,DEu5RskLkd<"x8 C:g sU!~I`jgVVA '{ڴ;xy29z+USm[Rs%TF2+DaiH y",H E&Jg轶r솲/,i"M yd+xf%rܕDXƁ@}n@@9[DH7',qV157[!laE!]8e9={Sn]CVğ,-\3Zz5TĭYEbtdfke{rѱAptgC([\{DD"Y3NWʐOLۈ[5۶ mDzcƶ"a*a }e.rFMaԁ+ "]y ʤ?^4R %|`Y$ÒH(%Ih 2SJOڃPg>i]}^:NX ƍ?sI8!Y˥H`3Xb,e4o:G<u3L7R]hlL@GSA&)aMDtl Oì}YnP h3;e*͛,Hysv:$Y0B &7G)М([b⡣h> }϶-HƜ ^ofK"/jU6<416vG޲\h/>WaEebʺG| ,yU }v@*혽^RmTV }T,ZZ"}?)I#)}{l7/va4 CжuHJϼ?2^)ʕ<%,gDzB^C|"L9_T3,y-ACor XGʥc;6 ꎚ͍UE 9i.iiqM[4ǯ]bo&WVw%Ouʼn ..5W헵"UsFVk`CBU(M a͏ӳFD'ecxN\sE2rףO1`@CuyC3}Xt!kJUx6[-9Sl|Ŀ (ȗ:O!PpaTD)N%w3l9(y pm"}._S:B ?U|}0(ę)s _YZ{|—z!=jSl|+z$Mw:2)"eH@XLXFfT iC|vD̎*~ʹs{8iFoM?RB>`~4!H#D< GZZt Eҷ۴ٯqלz*{ܑ&V;ϚP?+%g BÜ1=2q?1۱s?.qV@IxJBO$hcچM #К?G=*zOR"6qmҤvݪC2b-;,_%RF-ojG2e]ZuAzwIzF?7'\)le+"+ʜ1{"Iiu"'t :pQiܫfSѩZe'd@7ڗӪM3Bw p)FI@8PcOYR0kv\ 3#ꑪe534Hݽo>"ʈ > 43-ޭ>\g'V~-au5`E۹Oydܶ4wي}"@D"r)x;cbt[qNz^8ݔ`&v1 ~T^qYV BRy/[!VGOtk4@\(slR#xh"d|tbB@0 ^TAmuu%+D7v0$ 4NE­D|)#'2qU.~+s#{/f91 =fMFYH+L|k| $F9PJ~X=vFi^v<͎|*?/{I">_}(i2{ 5D} -tbN5یMR1xAÙ҇ͣ ;G=5D3oUd+n )G7z/|m"/`䢹iD;1^$~Z`'anyЄpObU/ET%.].$rkz slaA;2W=ǣ׻iNc+k̆$FH93u|Y$ǔ9IjD. pwv@j׉F{"UF-ҥ6\'Cq7'HUDoL6Oq3ٸgƌ6ᦔd?|QMLمnɏMi|rMU5͂z./<KEAʵ18 1->SHG>/³_c*]7d^8ViZr8p`f&xаN1aNL)k 0Uŭ P9x8ə`|֙6ئI,gߨjaCx}KTxQ<7ӁA7rC4k܉fDɧ#ϖG@3e Ť^'.7F;H;.F:!yo{?KG_.\Rbkpiȇ4 tg2S,oknxq8)E TA_x^ݽͰsybU_;O_:?1TUk|WZۄR@R i ~rUrπ{Ր4ˀ~7\&Ky?[s '8!zAނY[𯜣D˃q!Bc,V3r nkIUE(/v`H ~V%L틲=-YSW6,~IlI'2TxV(1|̊(Lu Ӷpto0fZ:.jw$@c,\/?(oh@:Jx444N;zGp`pqݭ"S36@OWx'dDP MwbLfE^&f=>}p.ROGO8kbz7i׀E+g=!./I_ӖZ̔,7I:@Ä!ҝ: 7Gi8DA{mAҨQCY8->bdzu&N5EHn7' !2W+{D{jl Mǖ W}f;oyW5(3[|Ej~|J,L.›vwn~H{mX v͞JR}srZI=S 4M ++3pG>n}fLNֱ^ڈPQ ^""Iǃ͹GZD{-|jXMC:ҎEIAʐ"C'1J۪ta.S0uBפNw샯F+Y!{6E!}H%Ʌ5BP¯ c  h-oK$9ZqA6 wu$*J;/ mV{B-ɯ`#dW@a1/}r=j{Y!̥C'iatcR#m۶rXY!1on_$$q0dnmZ$]:ӳЬFU!:%Ei}Iѕ< &/JVZ.z1-⒗j-=WoeciONYl$1`c=u;WP.d$)ʜDdR>{)Tm$ )~i(tEfhN^@VCPlAvQNXϪ+ZPϬ܅"<7*r͢bEl(vs=6FAr_}`1vƿed z3bk0<X!Q̘؏͟&S3+e2d4 'ktz>H:,&y6WeGb^xTzUt+N?) &A,/V|%ޤ`N'^;{e_~7e&8:beRܾl8U\z?ozY1E4Ph~U mAh#ETON5XeU*薉Ѕ^~>q݁IgN;(zvOH F9/@A\i*Flͫ'vҒ5&A^^Ӱ?{&Lvl.o!D}IFeCwh܏u[L6%#4Q<ԨhIJlqܐ'DͅOa:ui"7躓C8Dz>Q aҭy$MǪ)Ê3Ap,?vƠl1m;`s%YIfH}iJAW|L̙\HiyҟX%MJUEϕbm%+ǁB?)j0wޱlM} ޶ƞN>$4e2P]{ؑ`Zؿlb."%G?bGtLݸxeBGhN!mcOnd cCiX0LFc%C$In+9WTĠoCN=UBz5kZ׭UwRLXHhF7!oUO߈~msхaJdR<\47d d}(o$&ͪ 닖˦Uju ӄjh<>Ǐ$'%dtM܊J/2;ed"{ˠJ?գ;|F z<~ Wcr6{3&P &w=^nLK(kuMmA6Ԑzn!Ro4xc5i$!iƶ]*,Yg6o(]9=U2zժ +\WjrҼ\\f45BFidG Dt\zWwu#-SN'cHʓ -M…Ӷ??뒡?>EuX8%h2C:룰QfFp_'Fq+y2"LD_f8VI5鸖iSf 6G`)Ca۩TW*aB=Nsǎ̫ZG!˒h#mUl P1.c8F3|:zv g'_Zv6Uw~ Fmb[T)dLF""rX")ͻ})1$cvtͯMC6D"8lC=#LU@I;R(^B:X*~HI6Fr Q5pA;l CZ@qxlQ?r??ShezWlj6TKԄ7܁Iژ]kU2)^Ia.eԘ0[;&&^w%}nΉ@{吇$SV5BN1z*28⿁A 8֧qb-{w*-΢&0^Xx2٢;'P9^YycOtyŬɬ9H i5>U|7;U&hn6}dMbA=dc$`-RT;.#mtmQŊq1kqk-ćrӉwkۇ5=ǫ D94KXbF- >eJߐb'X Z+vv\0|Kp(ɝtC=WcYXr+\{h DD;oKy#Υ%ѯHd4BN;qZ0P+Dj yƥh#r4TfR s Jz(tɋ6P5A>Z61,dhql3VZut`Xqs @BK0&#+#f-<^tF"/0S_۾"~%2IT-3T)>?8f*7l)1a@COqvʫZY~OWXaY} qw r5ҹǑsiZ wtP@[n&ۘ&FY14|qp8B:#*D/X${6%Y {L ]ո"ܦ-)(Q#MܡTsp\PuVHe'J sBIvFrj]'kQ1buT>C#~BL"bP*z&ESi3ҡ0u?]ͤLsv_J K#8=*=35jאsR؋htf%`'fQ!M$>㈾MY%i++˨=閩Ҧ0NUO'K,{ B'uʴ,:7RHz`Ԫf:4= 3 :F Xu*($,m>h|%;{ 侹Ny_̲ߵlZup‹U7a?*=ǨY<V)5ɉmK*^Ƭe@_8ӧ2wHqu~;rF9dK{2jA:e1GIW"*=0nl5+(Kg|cT YkIAT~Z 3t/SRJ,鿘 $%D}3c')R^w7Kk&DN0^ ke}7$QԸd=ȬXm- 0uhVnfN+}q TrE#-Wwrx.%=mZ45,rO=\J@\0Y]Q"e Ie훨3DS*ݨ0"TgAn$̖YS|W-b4xViΠk{%STzo3?BkdZٿcpA$m+k5{TORNw9/ G!9$LtN3ZdE<[\[-svAvUup돷lD$]e@u[FH=Gƛǟ0e6Nn;s^t`hAamFz"߳VηU˒ī{4[=+B < T*Ax;= R7KiH3ʳ.@K<2#|s1zpVLg y;!}Sj8znPH8 \HWy3+;|hwݕTRy=6dƬ}8E6 ,ᕗt*U> Gf ]|JIϏ}zÚ:^iUˍMqd;gDOǿ*s&Æ\M6t1۷Q5߽ה v5Gx EMej3Fz^ |xs^zN>9G7Xd<^YU4Fbv'h@Ȫ uͻ^{peOK rdvt~X̋v]o+ ] (*h;Qqk{-X^.rZЬw o0kwϢ-b3GOgIo7VM߷ӰÞx{fP(K]::\)nБr A[h QB$<[0`uVRJZ#ub v.]sr1v>rqE[2'fMf^Y@ceHvj7^;[FQ#Dv٭DH,̉K]r G!kv:2Vnʦ%W^ߍ:Qa# 9 G:Y7[αFb c Q㕂͕V ݾ_ sM,y=ZBpҬ#8^eVIlI_6T=Y, il'î; 3l9lc>D=+>Մç񨷉K~56WXUV9BrCDޝ$'2YZ^,}YMY ۊԙ:+BYw0fҔmHvw #,9Ǹ ^fqA&D iesb1@*u2e\th kfQ jMCMll.AbBSj93蝣CJݨy)ҩ%hq\Wz){хFM=0_ F~l7YZdWYboh&1$L[t@q`vWL|0}FYuګڞy?k S e KZέ|NG@_ v;tL"^&D@є"`#?> 2^oB#42b P̽eUI˴ǥƶ+'r 2-,a{piha(^"aZeCqsw, G>~Aa ]E:s*eh#_3қ #,|f%/穯 ,;#նjbDL s֥[@ك^16`0c" 7*_w%_ l-PyfQgkx'ᔝK/mESAl=B N: +͝ {igc !5wݻ #(`whٙy;W45GvkzyfVŒZqXb7*bG1TqJLO]rԎR 714˰I<oE0;H"ۃu'm*M'+3arb5,NBk3zկeߚrۆgDmixͣ@nx}5; cG/n|XpTn*S?|8y-8 hȷ^A7UTbn3,c}#M }bȉRwt)qG LHV x5TGΓ:RRƗ햣cM+Ye> ŸK3CC^`MԨ`pBr@nʥEeg]JV?TUl!rU@Y¢2\5cT}ZebD=tyAs .:b>-fyy|x&uK؍S'8p*)f_ʴiPj +Pj?{p=bƒv058l_BUZ!xH։յvf\. Օy]sPsSp=9Pt6ŐI y$kLCQ# R"%ne5gQzw@%Nk[bܯBNANu2F~A\c,j/vFSժ$5A~sI540֣Օߝى#Y mPPƒ,%*/aLݐccb删:P*xt>pb-2~J%LwJnRm$R|K8dK30.q!sMg wo'ņt9E"/AO~*%|VOꍣb) O$_'YE p5ALesͭB[j ; !7Wo~ȓѸޝ 0'i@g,=nQ/o\LE~uq23`m<ېl{{0jDtDsïvA=`iHWsx_C6H )6ǖJL]x)p?+  ٟH|ds?&6ҀJXs*Js+_jkۮ&amv!akbt5hnYt:PI'} ԧՔǰ[s2ryp W]B6"=  ⒮$p@8wqk"AKDŽOX`ߑ`c/לBQuW>ԉ`װ y~R5[&؂jSI8#uT{jȌrZӿڛkO,u6y ^LNEtb8͈f˨|a*y~z?7_uU.`K޽OA67TJj:B lW.uas!9ľX AjHjgn"L6[Yr}LxVL>Jz9~Ӌb \Da}R$Q榭 w#{6Tx, o%b@/A@rgVk3aΙʼ;q":o]X"p#0*4%fJ #*w 82 ʚ@/Ε$,dj<ӐXx~pС} Oq/9'[l풢 & 2p285 m?+aW}+ va,y*v߅{Upv٥,l!̎K /f6E-`y"#]NNRBhZ,U cv0bL`3N1d,s#B8ѲݠUW5GPKW wtrOI0vK?al%faPkPvcHhƙźhP/7w{ZWi&%4|ݚ N!riOvUG Dgc48Dк"d5wrNϚ:M$eu[wCf/>N{)t"[}׬r GI\"sm{ɢ˭|kuX>ʂ'T,UA/'^ԧh;-1W ! `g|Jqɷ3)VnѲhx7T7hp OW_[P@ר2Kւ$r!5}y/z>3RhYP ^K!FnAuz*, L3a 䡑1\Ju9`kS d! \_0]3e r\>u ~!:]X5I^QtY-;M;JO%46{rh_eoԧ{_r㪶q˭/ G[5cyG.+9,w}@b/Cn.v5:8 Tmad|e5`ۦd>Tb"эc-:+k\òPBl8y.m#l'8#aPYdOW!^@C}}Ø_v/7ˬ=!勃9P&eʶR'aAo-20+SFTzQ~S2!Ht>t`Z=QpǶ-3{'2<^-6-RFPtG@4)7Ay5# mb9;~K@nYQ/?cDttdk,UZf:ٚx*1]af{9Y{N qQ1^eDbUiJew,dՕ8 ҀX IB}A{-f^S|+hCcRSĴ- hN?9 nq3L -s1EOB*Ck#[ږwˑz@`WŸmuu08rXj|zMd (hx#}~Dim-I!6qN)7$WKǎ^DYaR^PE,C?4Bᣃ]w*< 06"ji zL?I`v6*nQ|.sHf\U4͟pԎinP``! N!yVBŜnJ_M-I̋ʟ#[ v=+oEyP4P_B N7Y–AU(GAv! /]SKmv9WB+>RQ z')1o?U_SSwo8mO2z!#C9 8Y+}Z9x':{jM4INѾm5ݗ7t aާ{fF_YF Ca> YUïgN`U2iVHO;Q!gbAp57'UE7dK#/7xDhLy@Uښv߰,@mP.K78^6DЙz]P. yt3~+$DhMÅM1KG5evRSiҩC"OKBS,CYrPR I_7{+2oݟv wglHmZ(kgSr+]@o4V٣V> $we];5t"=8+˱oႽW hsCHD3Bn1+GL.Q洗콫GEuSwݝ(8Sqץ:FdV Qi -ap#H`LG/rކϽ©$<aS$+!֕z/^[wT펦*||rXP:sE+[2 8V8E#ŸjS qZ|ȘYCL+$=H7,13all^@yI goV/?bD݋M}!I3ع+BOQϏK<;_%z63ԆBv S%^oh=s^Jqo¿X3pysu Cg'G9Vl¢fˉі9NH/qmI9V=k4&ve;$O#Nboӣ4)%׬A"^=:Ry<^0ǏӤ8oj>- FOnN-ed[Zo!x>_(ŸRɨktd 1!=d_z1&#^z2j!!̺Ѥ}!e lUA! W۔J y Aa̓-wIkΥ)ybxv9yn* irK=|PDN܄tzpYdO+JZX}8V[2 0B${z^b,ab@}#>M4I߃0Y^ӥ/!yCv$;B֎ԫAp݄cj}$5\ oN3 @;7 1Ň tyC7~*7UkQm5{͗V3kV;]ًpse3΀0QU&=4vR-8PeU?]{U% Nû_faᒞfݾdT2G$Y.BܞX,oHp&9ڿ*/F>gN4J fbQ @WP$,F,7JY9FxtvOHkt'2h+Y[> HuyUUUjFpϲ`NI&USD*E"܈6ChG=Yy?s>)O}nJޣشJiюsCK ^" ጦw΢/Vþmgݘlg-IJNɟ:2 /i{\CP2EY'RҙV>rWw%b^=o *WI!1-ۋs2 w p[Fݺxd" ʒ2||oz/wrk$ц{ѱ^`s$z2Fw4{;42#%MR!T2)>\ AmX5M9zwj@|k`A՝caf>׾D7"Uak2œOg@gCJ,e?'p9\vۢC8tKok EJbax }{-[eNyWxKn^Vm)z#xHwb(ж o܀ ||fx7+.ed˴5.lPH||4P:t<' _{s"[ ~v9opS2ծQ8j8[~\|.KҌhO=hm4xm"LjѾ!5u}k.i"0 tM19󈺀dwZC;؆PLWzet=B=[P.e+Rf 8XؾAZn#=M-OV_Jύ`ns7W\yX*Y/s|K9C.[%=͆bSS _u 1*u"jE# Q_8|Y)ڛ j'_*X(B%Q4jXK|㷍ڭf޿ÍWH݄@;\塥ImkiT״c%7z'/+ Xվj6_^&Q?Xunځ?O$YlnY˲6o ,=u`xM /Pыz~V;^%&/ ׈3ήtMUڜkv94'p,'ޢG+ p?+5jlx^Pپi QxO)PRmP M͛g% X|u\ov9!qua2'?oQH=WF"sC2\(uV75\I#"K.bx4H |ZAQ/!C~p2^I3P1 DdE̠SQ~!e[)pJD\( linaXTEm.10$5 P~-6Oε{%UX  B=b(`iBNJ(VqY`d/aWMz~ޒK|Jgϙv1Gh6ܠqKPnc^JS` m1^b Hxt Rud'j~[Wgt, kp,ly3Mjt#z/0= iFQP~]88^-*pOuk!T G<}i[IBݥ@Q1X$u\x-^Uѷ@$ JI`!yȭF O㆓55 V"$P6=R-IUlHKۤ0̜s|aKsBC>"f$?E~ THSP9W[ez\8g.`vEsbCy̴f4勮Y j&L\"^uK֯2)bdM !b*il'$7W%bw# dc~_[cؒSY!JFOTSP ܌Cx5x?FŞ\1C,"RN$3_: #a!m fws10:p.ְ6& $N\E]_rïVˡzwO"EBc$H`ε6j'Id p<*ܴ+uf. AM=L. /AG麨w'(I8C(S!'&8z&q=6Szu,c$68+# "7R*WY:wչtRK7.Hk+Dg'/̻ F੓ƽDwunQw-R ;wS@ꗝ[ }5v$;i"$ \m"rlҞ0*H2Xk5CD云IVCo{kodԨ1K{:$2'*:}WiR249"B*~34`@/ˤNn\h9 =+NwAذNwD۲ZQnj4MH"+1K {|jU\f^'m-n&O" TpHc"|┉ "*a$\oH4T?Zt2c)]yY0sVscr6JޯѤֈUz^Sb6znP$gP8𫼼b.f,,f--$wtD@u\Uo+HT`h5BRԚyW?06QGrbT~,UD!)|qf8i~2nUr'ظL>p1?4@)ƢnK_byU O7&\W>r^S&0 ?;=QX5i Bx|a;5U_Fгln8H(#]n2Q\0"m*|VTuя;LL =d<ѕwa y~覅iQuj`;[9ڤDΒTpfnN!:z7oy:+?t$ zN!}kw2⒀EeGU:+u obE9,6zG =#B`j=[TȪGz? %حĦDJSض5,,A‚087mκhX|Jܼi2XZnn 5+y>C)uN!% rUEg 2򑘫/ϕN4+D*kJ:l@ 5N:s6T޲Pۤf 7,*vo.HίI\x9<ϯ1MѸ.q\1uZdЩnMZِN𞒧*'Pme[&7vn MF߅m2COT$d㱦,̦-^avrgJ$9e6$zJ4-vxGh >/܋V;A)L5z\k2s]dVitkؾ@n5Z)S)A zAyk%ᇰ:P#aG2!4>P"^G ͍|'D _ bT+'$áoh@3EʨY#CS1Z{ۭͿd5@.~܈isA6Ht5 n⵳"QlvnH4Y/9hyl tl^= @b2'sHv*N(g;tQ2U$Pg veٜ(Gz38vQ5ε T)V OwA;HGWDI)\6{h{"U܊8v^wkt]VP*Mf#v}Ǫ,_l>]~.1]B2H4mrhȂcCK*RM$')<79透ɼ,$` u#S bhq`_p=}9a*oZ#T{DD=y5Z^}y##o^qzҡ`A't<%q -O`KMWE_m >聫 e*ن0$6o[攻Ãq4URV]B_Q+#Fn;TJO~( % r&ϻ$~7 9efvz>s}Hz $ hZB(xf]8Uqh(<Jt̎QjY%VO,c+n<\"${ 1}imRWMe_Om>&aTDL!`]#Dc3stB- BE'F}E ،̟Aܵ%u: xFЌD|daC߹.*&H޼r@ޢE֥?g M =H4_[kV TA?f'#0iESf$YCw~"+bb2t!_08HAqwL!RUB nS֟9s FQ+b+=sK )ìa55݉whtAq&|Dby[U ~YlK+z5֌8W%w5)8UgqZ/I-Opya[(hvAzE1b,iSO"#M0_J@,u1ᴗ̕$--Z|q$iSnB\$SN6Kݍ5?޾}78ʙR`8`8R Ȱv9J46Nـ0@Jc#2I+4Wl >?P Vuaݕ^sl5hhHD. GmmoUcT+Ϭ(~~lѨP% "&RYݛ(9:̒c-yC|Ѝ>r@ iANv ?8?ZVh_92qSL#CT|r㏽le2PX,2ΆPR.PffbX_fn6{"65iXfR?.h,J3WS^p7iYFW|t TWFϩl/fܥ0]qJ%Xܢ"4M27߲{ZNt%:srӃI\jespӕ`iJium<1K(~[.1Rtkh~65H8Pcj- v8(rtwjjVݬ" 0?鬆Uvs;ߝ쪩( 7n5lFC\+mkR!5ݐ0)ؐ// )#h4.|RCTte)'?pG(T2 "K m˜T]1:#VLy9*аR svkMlR"p]dIځW:?rbMy5-hjqv24s&>WlYES;rѵ>JJq%-ri3`Ĵ UFJ @hH&#*Mt'M NDcVA5W!y/rNfԥG//yrY&Y2KEjXte'-U՝ P*;-dIΒ) Aihx<'tzr^9Q(~ AqYXOzl[Z*g>rǬgJ~XЍQyfrܓCXxQjceX2 /9oSz?i̋4dMcL%s[Q~;is{e4۳ o{k b{68Lma7VPQSFJl N} ?S8LjM@knbj9)FE?%I*^k?P7;o;(.$S#[IU+ aF71|W0 NNXJ``H~zV鴚<˦Q*M@GTL] ɗg[}73lI=xk `|JŘ Kt6rQ?o.=^%u_aYV:X'I\b2ke:bqƒy:y:.(i2ARQk-Rq͊~i0ubIRl~MB׮ o(T6.+;~\nYK|K)-'A'+ghyxsg޴&n;Mc#L-ʏ(K1gEOh*-e\&` ${G/`)0ⶨyoFhSYcoT."MRQ3^q~wt5W#]4Y,ɘL*W`M/ߴ:Uamm 觜9rr0`0%P"`EH}4Z]K,j)n)H#πlUhǑao4)LSOޔ[T6QeaC Nb{9xaWWzAstwJzxx@b̓6cŨDwF;5G|=BvJfNٕǯw;!,Xvs `"qBG,\R!E51 z@9&OZ y{do9idlH6MϏ9tAVX} UߔJ.z9Zm3dBQh GBT8IUNP@B8ʻ X}1v2j6ͥ_ɊӘw dҰjpE F낽1wbbIQl%ֲd٭!H rOVtD\xrٖJ.՘as ᅹ} l!E˘9*Noda3U<͢>`hI0çϊ?VvA.oԜSUM FP+rݚI+Afש m_C4s6/2 bؿ%΋(„9hWAX5&Zs/YS'>3Dary^wp!KSapS|QpA,12,d" -YdfW?uKljޖ)Kޱ]nI:_$i-y0[gVEK:O^Ѝ yęS}C@t8a6х䉙vvIQhi ŭ?euŮ3Xڒޢ}8梬BwtՂ嬝~2jdhߤ,:aIkklAF.q9OMH. ss*kwCx rԎ86{C MZgʝGHt3Pgj%k 猎L<0(?xBu|~pXTзh,,9r~հnկ[.78yb!j[{#)LJ]/_0e3vyOy*^NGOP6T5LA#6 orƛ?ј%xMD$M@œ 0q!fBP .B'R%ep'.eb⣾u/hIM3Dzx"]nTsS i5;sK/Q:!{a!RcNȰ`qˍ% {Xln,R+BQh:˳I2G=)=Q9oZZK5<bu\DzJ0ㄌ{Raxm?ٹp\`#Sx Cŭy[@͹ؠO`qE].Q`Y+$upZfZZwkUu!u`$Y >-Ge-i6|>tx 3XK=xZFia"AJ̉f}5* a<Wp^j(CHu'Qï|+o~LnѤW͗wmNڟAi-x,6včHax6yHd*N!"C7iYJ0aR}ɹU,Kfq˾}wZVkR[/U~љK2A68_/y5-pBСrGSU(#~S9 <6H4}-s%Gc:U1ߘ2>( +1ܺ{lc$aDήdn$"2KK ʮM@F+Xgpy=#w'ۚM2<;,=U0I΢O %״Joö[:m?QK(6cD| ùbNʭIOa@J VVVBsimS©]? \AYx ttn/<JM/uʡ=;}J-˺OlL_LdJmHѥew6R}$3{陉 }S x41@?3߂1 f/$+0qq¬vV 79A$"m# UЇAD.9aCjP @3/=8giɃ'UFO$7IU&Mk;bW Z8צ)qFls6 `jA-;y]^,g䲴8@G0o/9 oMxL6g}ҙ-U.h!β5V4TDď:֓NOl̠a}@#lfvq8!%5kg}(O-ŸC\,4ԵLjvRM Ӛx|y(qٻ" EMTNhmi[ Rk%0hǺd)r/ѝaH7jAn sa&uM,݅H6l_1!"SՖn[=RGhŢI]r5]>!x1R/hxLX?X9_ ]d9i*Y*JӴeD$_|gq'X+$ lԈ8](;]  Z g%zΨ9ϲ9]YQP'=Qd6s B-cH?Ȇ»i'CQ.uBIi5 @_}iY#*X|4ghqLIpXCID&f10ŇkI `h Kqv]ǞJt`C0|ngkᦛ4|'7fh=rɵ/!^DP)x! 5L4Q yy!=tǰO!+,b Bj~z4_y+[ڡ!h34.ӿ4*(/Tnڋ8/FXCc';,>k9n# U(& ȧ WpayI<x|F "jy nN/ڳ~hgUݑGƚf~=n^^Ƈ4MȃXfQꉓGF ]E'kNTA5@G d}jEbF#u ٕ>* sqvиi*2Fhxb</HxÇmx xE$PmRTbmQ+}MpoՅCյј[ {9Ա ?<ɠXVBb Ce;76oK/OC ,=wjHi9ͨ4݁f y-'UjAsp+O5dO؝9.4H%疪uk{~ǧ"1 %.(]J 5$^+ {#j%Tx`~[Jׂ¢D `X2vEo Tm R .]&uQԉSmI$($ˇ~ӒwgsͽH١+-üToŞ=fWA4 Tq,1C ҕ{5{B^\M 6; MP1[7[CO"(`x`<*\¨y?דiJcz̷CnFr,toa#UZ% (l*#y74f.F},d@1虼Z{aٓJfA?-馄Z\w 2sǗ /bHopCw*ە<V( K?1iYCoP~R+5/`c2va" ˟{ٙaQ1QN^.\8M8%)"dHOɑӸ#Ӽ| FqXbYI){ܪe`hݒO@xq}mVCۛ|)kBL/)'$go=uZgT>%&b<$wvPb>@]>@NʲJhÙ kk1ꌓxk$Xm%7G6 řE &d#7떶vw5}cf=fY#$Nw_M_:Fvh&a:&o( qR;=sI', O{6rRJDZ-FP)]S,Si(^< "gǵ}0Idxc%TdJ<puqlr`UfΘ'}Bmեc!#=M3Ή,lNhҭ % a6´i&Vt uP3N`#ߊfPYf{|YG=>~JxBd`*?O[}Q)NC {/;Zde"nɿUCݏ O۳L)`i3T*b F% [sbÅӠX֜eptvOh4g-5It17y}ʋ+&7ͤmHY?.q1omuɳWB[=J !['" raU&ЋsNP 'C@//`de` 9ԕ#%dU GZoQ[GVƍE[Q[d+k?kB,}7)ξDNM\[-w%]b Ҡǘ|R3:NؠT6;C@ IN*Ng(l8Vdoz@sfEzsx-PI( qI9fct$Ļ_W^ֶ!ScYw`NPۊuP-'%;h koZnm]jrȓWoCZgbQLRyG'{"1@ס1N7L>OqL,*G¶{E2DZ/WNJF:.I_V۠7ES,p1{;8Bcz,!RƝn]LDƘx Dz<.?SX2-iu :loø3/84Bd[B|EM$빿ZkB!hjV}=#uMlQ ڳrM~hWC2+7w_"Dw`еkaf]zknrWAT ݷTP4LY_E\F;8wGuAr2S; ݯٱqwp>ŸC~qN+5(rх[oesmn9L̇IVy}>͸ aOx)c]PPT66icƧfFǟʲ*LOV+YZM5*ܣ8ćj#6D iÛ8IYlưאlY fƀ$ɖA}v{7Hύ/OeXb@Sy05űܮi(zB}UJ2%K,[Z ",kULǑBFn]"z]PO\(7_?ir+AqldjWKrߜ4.rp}?5fj 74sErGG ;僕Z˙gikŎQlʾv&ϼ`HkuGD<@쵙!!$`Ӝ]u-0h:=-?22Ur1BG&i/gk4nr=a2o[YÛ߯^~\o<[  JPdҨNNϗq姚.E{e3ÿf>WRX8E]!eQՃy:\/?}rc]99n4m‰ ^<¿7.žoI@:UKM T&7xU %A=D\C^&֚*]#T֍ʀQi `%HU޺SR\f ]~x3KekUBqEuhP3BlW =̶p^K V|#0hh]0Jbk3b5893}`Pop]gURc|I۳`p^kY,Q\27@QajQe˳h8[ax -BOpVyEIrܪ122Ws_Y6a0FhŊz4}O(!OߞV)7zPȉIN#^;p Q6sИS٦Fxy@3#Y9Z^:O8:Tv5x|:Kj[!(Y ^*F;(*3:Ƀ8*ci?[myu# HUQc؂SζL*XYI lȡe[B mTJGTrm#yZ&4d5&WW-d]AMC޲s 쾠&H  :!mR+?y;ڰӪueDsrJFcNrq7}k63?LpE6R +\g| Vg/X _ =&d ܱvy/_w! ̣r+qv5/b~q44i? 0DsNײn(*"B㻰$g#FS( 08lƻOޜ\(2w\c`c<`cy$J"u"_r;V&jt>.D6ZVIG~!nuxu.h7+s>.T)XWc𣆝z:wra9p|+/ƨLP5@H9 Y3ϕL%Fڝ㌩I)Ͷ)Iviw_ʳ6P~礫j$lCI_ !|Hw,b\sCρDo_j6{pM^^tЎi !xZlaOL5;Wv 56~#r3E΀r.cM*1B^<|BSr `ؓp7շa`j)oVh`Ώ*W'`"dnzFYq[Y[j=Dk*!4f/<U9] 26½\-)5ĿuZ i/@I(J~rO㕅Z{m% SsÐoלJ 2#h\Kބ1FO2юu\:- 6!_@y 6-*e֐5CHea`""Ä`Qeٮ{AylqoY09E`?4܆KB-fe࿺=n#jajÙGމ7o ZzE[X]5Y \Sv#sPA:8l_5#bn*M_֗v6kJp.ՊXiQqtA/߮0Qy&TV3g!D0ڣQY0õԨݔFgRSŹЬębx—)uDmT  }m^;vHvBq۞@vRX%:Ibl^_JȀD#ҟ9NJ])TvuyWQ9N\"p$-JӬsyt/` _a\OIF n!|ewRz0e TזsWS*^EA)-̟&~Aܚ}IswI8fgnz#I2dGs9 .?q1}u cbRmL'`^d.$Z!N$j蒽j@KOͰ+y;4Y=\DzKfVme#qbp啫 zlɧq l}!Gʖ!gȎR%IUj]HI :cϾZ25E _o]#َПcͦCڨh>' Խ$}fK4UsiD ZuکF; }i;*}'9HjpI=0c;ѽ4eNY,=Yg!ɰ(i}t>+W`Q3/ͅI?hVrg3W`JeaRKoL=&kDZdmVlUxq*Aeb2vc-d!rd{`.;Y& ^Ymݐsl)K+r,Ŕ i#*FU۠]l~{[BbܑnfU@_"Oɶ ׭X.P—a*(]k (K^9 ܤ,Gw!k QBl=7]aR %qV$b_Q^+My1RD&[iB PpH iW:`ؘ0.v{̩6..:1o (ڋUEG^mxGCf$kԵGT`@LvIRvКq2(22. L?FpKe:(@Ry7CUb>b@Of.ε@3yC+>Jϊb-JTNˡ+|,ӯTvh8»M8-t͸eJ:W}^cIn[}/ Jc1zrrQp֣љ Fn# KJkVjQ'H ?#d?ci]^Nrp--Sk槽_Tbdv|cYѭO?`tޮ6ܻnbE ?>T[-G u; kOTSOQ'b7"r%Ej$E+ wJT g1qK!rRz:E9Fe\ pse5Ael _ߨޘ(([!)tX3QPUۜhͱ 4c5x&\~oE![f q-mdد'9wM%hW@rhQhďQV{1W ,b-$S,(RE{#L/\4bY&m64v5Qnr#a42޶f2E$)i2mT?tW QzsÜ|Zxf,]^{l3/x#+sI6`^d}\u%uW'0N"îS%&wU,"ryxy^JF\.YpygN',--?<2?;3ze| ؏LZnT IhSF򫉸Z❋eUDE4&*䩤y3XʇjAwH?yyЪ7Ʈ_׸1~=2l&&>ЇL ճ;[~3X4^fs7l6O΄軆gQ&;ą7h#bD r@V$L39wZQz%k=+a*;y+@>VvI[Q\m~\Mb˶=xkc?doS4E s;&+-i H?<ɪGyKo2t!ǨʺOǚ*fY#~{*US%ʄ05[xJ_q{m׌K 5lV!{5qmI am uLq+Ybb'3BmEkx }.V&P A|E f@v 7!iqHyGӈ>S;4AyHS0>6.(yU@%Y\Ud"YV:Ѻ&vF@@MCRJ11!:yV}-wKsjgaSj_xBnZ 9@=g|&!R6\֯Ƞd7uCVz6Sɵ_~ Ns~I vj?Wo,iUV#H,T < Vחy4]?':wiA唅ĒlXH/c{Սg@h(+pvsQ=bߎ2 q49l`oPIs5^ᯪ)"L^[PYXF 'D±JRdoڏQ3ۼMM<^a;ϭ;aIP3U/+t/}KiHiFy-~w)IspӬ *<0R ԾT-y?5ZNn O~~(,H!YVpR7sڝMŻoSQI Ḥ+Х̑_s.9:'"s)kn]}cTІ'8/:V6X$a@|pr~/L'NGC{_xLc"ʖ06Iyw}iu\*;U`̩zD> r@DO[D k%m/u{& U+@9]c(tr 2`H#1CIi FUP%4f5=2qoqR$E~f%\ ͫ(=skb*,5Gփ^yHq )%2t ?$ 4r.WѲ;/.R8p&:y f5JQK°7m>;Y ~n`;`^Blݖ4i7o Ps6h O_~u Q^\FL~87`V ]mt$Mms=ajj~@?p0w#{G@rR:Hq4iϓ]cӆxxdsM G^♌`}m/GJZ&p,bibq5B^d 3:1\ԳpjסO)e.$^htkpsM/S^2b-җo 'd?[j(ֳ% )*#.k$SPO#˛@ujh` ؈K|U}7Ṅ ;7$)mY]ja?# sr Lz``^_^710q5MLnMWr0^+zµ]a%<Qi"%6kz`I"E$aS ) ='0kySŊpM1ɏ~6xT"ș5αPC'r16:RƺG~Vb'Kb2rH`r0z m# dHpPT9 dYG>txjZۅk$?k]+"C]JO1ᓔM}@X ;\ &Y⩋֝Xdҡ7;4+'[i@ oGx,[0xgs,RQC 0FzBg+D_8'cCXfpǯ:ja"rS&P|s*\oW(-8p eRk갶Շo&5~KUL ў$ F>T;QfԔɃiF&*N 0=^4EmG5 fϢ >M~V`˭2kS#xbtM_)iug c&#-s%cSgz䦣h'<̕4_v5I.| \uU{T`y»mж yJ`7xla_0IXi6E6U72 .ug%Z%sr loAT D:xY%a'U[Uj59 a6|`M T\z3x9޵t9i7۟l,|Kf-ZyI+et(rN 2AD1 r=gll2cpȌ}W˳NuZ6*,08/!u?<=Q#Wv{P]o#U^9>]+7~ !Չ=v7 #^ʳ.̏W̅rCd~tw pg8R ̞%jD#ds]̆*;:йz_'|96IG`+;*R`!Pzaӎ)8 RboQ4;ݮ 1:w "K2'=a )ی1ʞgI1*~)ˌ!}дU }l_(V5ݢcbS>iĞWQ_.|8/Y97%D$/ 3tR~z-|S.y)rT`o_sa 849ɥnxxg_Xn5^U콌AEL # ; ItN<<9É`w74 sBS͊b&8?=Ʊs%e ZA'JL^k,ޙNZ ~2I'@;:,(v!ooQSv]_<(he; +VlIaT:EoݞZ\(V}iG+d-݃N ;5+/jGq UgLp* >I٘:kè{ꣷ(9)ٷG!z36w 2Px[\0{b XO~3KHM]:"`J'PhPr뫫KL~to4UP=X3G$_%Y@. N鏿"9SxQn!A&إ ?a,!:Ne<ط0zJ`,iylЏD ,YV?<|3}&\`#ere_Vb3cy:t`Hmr 5} I'&)eZ}q^t/S˳,Mp,49}."Qlm~-wǂFsh|mCkqP`Ǽ}1Me|P <t$`~>`W5EL^!_by?h\ֿ@ӽp/KDQj6ͬ gEptAk} p}cc)]H2/ dS-a金:=@Yu>Ekc۩[_1_O|wh[;(c3#ݞ sXFG\?PF`gd:`nTnf2 dGx G:K;7CQ&%j'_z 8.Ŗʴ"7:I5rb!P }{,lj`0n)HET7e} '.gBzlxfHD|rP9D6|ꗚlY{ɕ Y~H'?Az2Hzﬗ ‡.<01$ _md(GvY~xxpƵkWvI/%,eDZ[r޼>Ȯ_iZɔacXES4 :]Gy ]m٠̙$q,qED}gKAIyLzdlP.C]Ha">ÜB bT$`hHTmŀIA|h;!7uO&i4d·5cq]d-Vӊm{QOۤ&UdZk}نugoH_2:0~²QxtʽҐ*Z0oݬb Nh|3+[2sbVU)]u hlkjT(.lu4ӹ>0gԖv ȝy=;<*59ЭHa$A q͆nd>-mx^*1y;ۜ|6M$oֿ"8-UR&| 8K Ikg[{)ԺPe#d5 7ܝQ (&A \ji.jWRËWL!4ϭp@nm#RI@*teͧr/0ybgUۂ MERgݰt\av}1uowz}]u*pxK\/FZy4J" PNФ!8ݣ!9NbK"BZ28P $Kr,}A&n UW& yRV@9gr ?P|b#"> @7RjD^̙ c emزB9}}}ʗgc+h1W;eɴR+2u 6 [_KTEX[b=q8]Id%o`ޢ Ua'Ċ;G[YY_i]QPmni4|dz*8󾹭Ւ"m2K!†CX0nqg}8"j̯;̌KM (f7zP kcіh-|*|zђ~Drl *`8iDTL V2|lk[o虱"?eTux?M08+u˶e}&hx93f+`sPؔWp uDn%L-IYƐ51pdonF: $kssw7P;E\ `;Q 1aAY5$d)ӎFl!YlIГyW{uՍBXd򐐤HRўHt' }a:&zP ~tZZ`K"23gKLNSU]Y;|V}lz[ ,fNg"Q(ɲ5}P6:V< kVQ«v$2ms<ąa*uPq[mہ䐒@pGJiCe o.k'?ah$u_;w ٶ,_F?MLyz dtrsq3֕9c_L<%v? 1Vщf h !'8q@[ED؅Ig;PHP݈I3׭2>svܘ0>*Y 7 +4$7|z2F>se^R&zXDNL: \)ZA}=Yא&2kZޑ ,{F څJx-՟5 "HjV}nt4. q#0ͳ_E4 ,Ў5QK G;:B- ?lo`2A^y -G傉{y-= [(c"w>hF`SOZ2 2;AV P#<ᛈ{v<,ԁjZ.?+J,k)6a6#߹HbH )fz!Hڟƺr@KHXGޛ'je9gD"VpqWѡR6Xq-v7P҄x) v?0qm-sJsC?&@~rJАPXpYsD?LD{6_h~ۥj>xC; k^VP ]497,^d׼SzʠRz9\`v?{UҁkDIS+dIj(Ȥl9%,>;lKņ{HD_ץ*PclO"m7Qݒ v`K(J(]PI9U%@A_mƫI~-N;F6x,:+ ޠ17(`:w]q:cCeɽ? ii@LAXdpZ|dž1o rt>du*Yő`CZ(4 )R̺v7KH8 m0sZŤɂ<7NgCX@B^-$ICZ[ c81aӿgP.IvB&cgk NȸzrC!K&3RR<!Loxzd4N[c ,W2z?k1U 5/ 5=:pzƙğ)F4u> [r8,YXW;l<4aKGߘfVW<GvXDkPMt՞z"$S~US,pLn`,Dc1ubr_GZ"5Kiʢ\C,W,ٌ7/ 4] ׽ td2iJW1/a l S@s8[AS(KCh}:sRFВ.e+5RZ!Fk4:C'1(xYh~=Xv8g|cPΙ06t^Pb*=s Ss_ٻ=֎ycf/ċ^T%cO@*|EDzdƸVLqԋ+tgNgÇJS/ lA%a‚sLSGtj­r&_9wg7Z ABuUVӋakB\;׬ī_KK>o_uxб$m*? !O <0 L0x+~0 ˰'#f¦|hޗ>2ܧ?VA8DҌ5&?m c}gq<+e:O^whNoiQӹ191A%#* qza|‰6G:k} eͮ땼Vv3D |3 zd9VM810cHl= >Xes1Lcw *5_ %j7.;&m eғ^RJ$ɄIv BXx|-F/tš,^ˍ;*=Q2A#;Y;pYHU'L-"rGu6KdN446샎"%/87]lakꛅ]]"eM/}lwѩ岺].df'>/ۿ.OG.s >ﴤ]1!e>?gl'[Vs[(wCOq:+G'm:r ݄SVqOWQ |bE)1dI4}͔<{82 '!>VKMqda9qmCTCK‹.gI צǸ*Ea oŏAM?˂նyf˘e:ОatQ5>@7DY s'%zj$+_~.o6*eW|k8|mT= r)_5XvYQUB"!>`(uC! 2X};5gy|iURux3m6g9k(weB#^e1Th)Grq+QOfa#]\a0m+9̏3c݌F9P0o/,$R.hs"v w2]6OuKr^ASN2R$QvǮ8B2B#WMKf1¥0 OOz匪sdDZ_rcO^_\}Ri*{I gs/xW9V r'x&Fm9 0h7Y-EMvePD&r>1;}V zgC#;?\4Hn.r-ԹPzh+"x7̨'$}> 8 ;>?}Pnl ^~wtڲErֈKgTh/ :DžlSy7rDW*$5eR(#vsq@4=t#(v496eȣ: IGK{AK)'ux[(!^Wvf|'0DKg#-$cidM;' 2 kί/.W ha[gn¸ߴI[h2Kx"i.ׄHғqT"Iwk1 *Y8|Bl&s(9PD.5V2I 2aDM 7G'dcȮ5KGـU L707)Y\ G/ZeI\N24c?Qљ E )B'z'AoV\JMb'60yz\kW{` K_ 1ltY ^&~,miqIzpĘٮs\OB. ga Q[i3 sOվkC$X+g8S/7{ +3"\*%G,1oJ2,iVoj.g35 rR)5ȝVV ?=]o:QZMf:o1+-hZ0+Soi\q @E=DQq;szfѫ&)*C &fqXugcNKsJCU.]3xW/fVa8|+}o}倽ĭo ZYSNTmLuKu)`d]ȱsk҉Kg06.~(cMn m-ۄkEUttiVA)+Ѩ(ƼQ^# טf4,mPOLOa c N+?mvzk9Oh~2j}t;CmAtܮ=*l xb^?Ҕ6 zlW pLmMBpK]c5i"JY#dm犢JTFԻtMbvAŠ^VA1E*]aNF*kJx#!zћ}Qyʏ gMpFmD3ن3U gL~ #I~AiY`ǹ6Aћ,`A@N'n:~&ftN%3[7y_f#óLց~]Q evMr]۪,y||Yx/1u_`~MM 4[dlylLR6Pԫf- !?2=|{㳯fek|eWC?7EʔuǝP|Z?b*Iä%Ԅ\ԹH2}bC@H%TBPyFY^l!/~z, yUbgP6v4gm>BߤJ>a|V\*fYKY 4~U%@E>a Dͪa\vh kÇ-^J4;C:nRf57foCKDOou-c癥g. ^;(VƾNhƨӟ?0fІ6nU{Zzߛs^xRE. X]7 `JO`zƘb>G۶##0'sUI:9ɒ8Gq%6ha/M,T ޜo utJ虪M,1/-FVjڳ;LœUE_vٲ.>cƃ峗$B7l$C79]QON^ti)`b=ކL 5'QgT3hgb?\D <:LVSo\]rcxaH5޽dp|Zk''^4V([8*ϩeΤ` >)lYLgS 1LRj )Xd4bv0_ک0 {j|qV^Sr\F5ԓzDI \tUS4WM:U=n{ґD锿x"RBxy<),֊ob'6M|ZC#rK;:wZ{ ^U&86Lv}nYH6gi-DZ!gZ581Az ©; Lu5G.vi k5>#p \^GǣLL 9^bSyI#@Y[2bAϟW6a/k9=F|;\zGbq%j^f`45 ^ a8Wf5{] y?HwOU2&>ì-kusL~0UKnmNKMN00.x鮚s,CdZn)myFwfokod*sIDΝrspc;XG=VY$(\/xWtjiCw0KigCv0 >΁!HP{ݮ|爻-ܠx*8&+ans?u/3eG{$? }Ζ`YΈf@jmke: ҙ`h՘_d`CL@Wxs!gɵ;nbqoLoy-fDߋ- ^ 9}-{omCfORTK WlSphͶMVp{) pS]VېdPZvcɿttwf8aV=6 *ߩ Q&*|-z<[RD֤$MЩDO 3i ߿ ` ]yZ6xAkh=p> y L?Xp*sKD6 e]3X&j:@Z !/`1-@ qOǁ28DBUໂ3I$[3}y&'fdP-b\tyUII6SYvӴ A֗h+\m9u:qzf3%PPɣ+mˊQuהDw$;Pη@ԉEʫ3&쪒]:6fۃNыӯiTA HPH:rz{zBYg`ȳlOi$%R%R!ݔ|Ẃ`>~≩I~I5G)V$WRCAs%ݞ'{%yCq$;+NlВnxT1# ']*|hEݐɿ*+n`9T"y9!K85U t|[0L@ƨe0dZ<fCAX̚y%j$3Ìw*kCm=IA;q$^[b;tcqOn?DR;RR *D%Cقڔ5Hk Ā֑Ng鑲R{tA~=BTg0 Y7|k\Ds&:K_9#^-, J~G|TK(ocNpqMJz$u{uGԇT^@N{W^ixpAneE͗72_?Ou`TK/mԞHɟe"#Cͦ@6Q9]; d>()$2"1qErTe!k;``M~v2$P _KeA@q,]q5ه3bhR`?06Q7"A4v f:W}7&J 8j¿9~w#[\ДG,e]8[5A0EDKu[lE̾py`z{lVL_cՕa)HIzfW(=}AHᜪw÷eUyV$ joGTmީ~3 $apnlD_gb7N*ěq] {ʘo£k{_Tcl$ȝX^\+{7q'U~BRr7`bnD=25Ն }>0T`d9hWpE\! &BeI9;7QIA`*WϚn^!VBxF3,(!MvdS[{#|^rVu_,C.QT ķ^UZ:[uF*A_c9 .2D_<55> ?@=8+|cMk 6f6h6TƓ6?z)ץ{=*B+vOngTOxL:|GE=uJۚac#cv'/MTn;mӑiµ`( 1VG`j9}k֛>awZ?^ fUS:*R4 1[Zhݭ^̾bK1~05Y&. [6xYbNҒBI[9)+& ZoFqc:uc'z/R[H?uL̬ڷ j}PB&3=7h])$J%P_v>#xοcHz0GJKB@Ex[!| @Mw& 1g|eQ2ErFU Ԣ=҈E8t)v 38 :MK2<;\3M̆*' (, lkD8DJSPq7,e/b$_V'j܉j2CⲾg2C@K!g\?voO\n&ЍoT@  "`cʎ=4SsJJ8U]>&ScnqߢN*&l(ڃBGN$$ᵥ YZ1IisAjԉe͐&dvBGe21yX{^ +0Fdc>>rz4d$NfLTjx1N>a9%5h՚XI7g@(RMiiISnփRݓdA tǵKj}쏇&S&679}>Z3/Ua%];W)|l(Is@+MU-V}BvꝓTy75{ §e˜<0tbLb5 >n;$|)xx B+gݝY**.xpVu}؇ͅJqR!WɌY岝WˆZ|(%Ӟ@H֮SSwHsRhYG|AOu]= "מ$>-_zxSB 0B؄-eT ]lF<ѕwÿ #Y.ܠgU9^oiiyAi5+hJ(,,:b_6xF(JxvQtY[$R0j$TMOe|56|ib֓=ϼ)j'FKNZ_i ?[VL.lTFߑZF+m OP Rn|EE|*EX#-8"F-??Y܁ýahpڕr*PVwr(Y/i" ZRTw!SnQ.>djY&!߀;2טdU "yjba=^>1~jng];bXbFUjKOu7ڲ1u, |V c;˭i1s"x|"t\fB/qZ@<1A,(ax} nπVEFѕLԅjLMbEY5`͛Y5 TWӳcJ±5y+up7rkOy^#2рL̠YP8u](!bpi$U^q71mb%VZ]!;H Ϙ3o?}Kma!c,p]f0h7&.zucu]:@@|7z tUSB~|(N^\Wurg~OC@wc!)8Wb;Rә3g[%ϯr|[B׼cQA, @>ѧfJXKqf$h47>}jʥC%7N '~HC/pfS􎧵SNcF20nk !WSoțm4&N8 䳣 -'LVk-Qb0hNxS\̲DvuN(g;52pI';f9ݐ dOoik.qN׮J=q69Qu^*=84hg$1:ɛںVHxHﰀ(>>KEGA6W%ٴ lL HЄChJlsH8(D!*̰f>t=f<[c;i,0 GҗxP$VmQ^3B}|od&0 &c(@zv6(e#QONo KmY}uEi+g7y}=}_1G1fg]oorǷsF?3V˅i9Ob}G0m$5^|eȔT=MWr*&L`]أ8DDmw Ω) _Y}R eFZr^F8n @3l?9Uơª4NvS, ɔcB>-t|nS׾MS">τ/',SܪaJ=mC޳NrncLZ^@biO5f64.jrZ&K|MhX=Fr;hd>Epxlw<[B^ۺ {R䆺LKJȖC66|4WnW5eIt/ζH*~j('Հ!PKD 64=l(ģB01dQ3|<6r>ҳ:tdR{G[cbUټokAkGH@{%ON|rF7? ,.'juC~q!u&s>./$ b}\0)pwDȆl] UDܯxTQrA;)$f3h*6:! ztl'n}hxBmhra.rZ} t+EM;)23>.z.27?bpE5\߯R%*QyD34i ""ŏɼv@OOUzgz^Mܡeh9l;hO QD"]1.H'.$Gɠ0/(m XQLxyb4Aӡ$ eT<;c#gNg*7afpBfn&+nEJy8}MtMHyq [  -Z ܦݮR1A@_#[7_Ywmbb\f6ˬ9A8S8K4nolPe鐒"Zs{⪞K#8jG)`  ZQ/P MD,l7}hohm¯܅4a#ڛ*Tζ+'"Ef%X;nL94ox^fEZzjxB{01KEM9τ}y9:M֋s0 -gd.橍CAg-`&Y&a+dEZW@4i~[RdBI|(N3PT]`IE NZjfQ#Lđǚ~QpH߆M7@SWWq c$/x2yw+vʗ<#v,Y߻s<ߍRVgI!Hiʲ{DER;#s @|VpbWh72)kyFDE%vMRG GQ]Ԁ|0$)Zv2s%{%UȬZCC\ pu wBr$m%fjB)`[UURcq.StmX|X wHWPIBp6$PQӹ5i.}˳s/@16{QOq񰍧w aK66@^nj !ToMs(d'0H׌*U.S6r .4qesaP~ƈF d- +^bWc!!aG[%  s9. Leӟ77 J/E[~Ѥ?"ָ|ʑ]Si*8-Kx0F QTJI^gs4 qGs_9;B$_Gf(9FrW5.8ăO}X %k_ k.P I-LG/~ayphP~9LT$# b4s-r=7n=[3<_!?lj%Dosׂ( %B=Mc*Q e) Dj$3\*X.Q+jV"ٸ/=Se^I (Zt9o({u׸dċဢ AǼc4?^bf\+*==SӕBRV"+Qm٪G|vV$خѦFj7q/prCv5D9.DUDб2S;-,hnpIҢgm U=(r-?oCNn}9x(ekvYob8I#0_ &6@w#Q w8NӴً8^[4m}G}~Oɿ 75%sMMq5xS( 9ϗ| r $*Vmg ipc&o7l;Nf@=W+Wy] pxɦ 5fAJ+0$|!4xDiRM*,|#Y> vowU-aft@^0lC E|&>z'6Z L컯堡ۓnKa(a,Z FdB>0jfVS4 \4t R=1v@e2o\l[uu[tx_ݕ!+=K9&'=  ݶuUW+btfq}J j"rN; NP{ߕuPX.iƟ\02fH!*-揠]bj!O=N2{{qyOY€CBpܣ({7Ť9=U~ЭeD7.qџ1q@v~cHmחܒ'8LJJ7gd7 oQ/y0?sRgFۏ?M!f%8ww%/$|0T L/J<]8_5shŷ$6." "i:~F)Af7Ɯvف QKdQ"3O qݏ3FpޢA@t.ݭ mXN\u5XRo"!'xE?Wn: Wh:Z>$kn5~J^)XyeyWFdUᰘ!} qP{ qx] 3Z64W=T[-Yr Q mC\sFZ8>=a4R yJg3&* ^BUMNU$|NrPW̬Svb 'Zar[oH9˟·to:)8De呂w#'z*D^'ugW8ܟ0q!_X&8tLv,r:؁oA $j ä{iABoh?5h[J5dHW汑:3iY/4Zūﶦ;0n-{<m (CBPPGe :!Ҵ9Iv#P:`:++\Gۗ"ohB*V 4NƒHTa5쁟I=j%w)zux6~jX׋is31X?/WX?u|#AR7&ZXr:Lg7WDÌv \ 0B\`u3@׍stp_Y̧JNf3 ZEvg o2YuFڥ:Th`v-H:r:k]P'_ZE$Yn Eg·"ӽ-^*wlBxsyӝև 2T:K|- SHwGFxrOʁB+p#MZ!+Kٌ$+u,t> r@shAJaEɊ ^bPs!!6 N,;_k?.඗i~6ŧ?샭R\)eJ:dv!y<铣b/r׮]D6. z_мhjk$!M"0|̴> cSTt?=-,7+)`'2ķ=N 5C\RloSAB4^ .(vb:3꒲@Zz[2#a3CDf2D} #%P2Kүu?{v0~>!E8: b4mΝD`kk*y8i2Y`7sgXn_ʺNkU#^i+]izLkm>|j=OT\6N? 7u&G%]8^V# / fF<v~MvbqA*Wk#k<V?CWtM%؂ ABV>4m>6a[,Nb=pg\B  5|9TSѵ꾔Uyf­ cQ F88i"xfh|`Ƭ wATs lhSbtoH- `~ %gۓUG&AW-jsij⿹;!lX_G'q"X$t JcuU@L7#&@a1]lOC&~Awf%?*5- /ckRd!rX6Ô:xm&`a-YoNQU!Sv52(Њxo=>WZ@Y`]8sRZD:Hgȩ2MvJ<L{lWg{Bo-5pd,FB*i+ IlKUw8x߰{`ca)""DmqVGI=AU+΅iz#UQ٪nAov H|2zգdq#?lȿ쑚*7“ ޝibPں*dublO> NӓvʟvsD|$+y{pˇ="kZ:_(MG>TFp,YLJWE-#K@;ebA-y%_yu^qf#!üE^#!ɪ7f`X5oZyj7$ܓ]nMi(oݼWaNwY ˗'G^Lqq Qn|[Wqe!*2\Jg$hyħ k[BG\!?yTW8 Xޕ #MUɧVw㝈(N-{HC"1(tǺ<,}fK];@/qfЋ{w~$ZkbKRZaHO3ְQv϶65.F~,wFL WrH*bW k6=6 lSԓwf塿+|2 9E?|*9*/!Btu+T|^m# xЮ9?仁-7v/﹮zޛ\BmGYM9aEH8Ykxͩٲ7qa8oH1@> Pf~̡]Gj2P]RdX.DNJbg3rCF"ڢ3|oQ)TTgg'/%T*'v홾BQ98fZ^ 9[Ke~ 0;x'd:垣݆X>rYfݻ}Ap^Q9]Q DZOlOzc2?vbR+]E4cCR)yW+aȦHiďn~$wzol$yяC/0tE@zdnOPT0 Ⰳ<UŭN dZW*>FXˤ&h^B`{1r! ([ɕraƉQv6<)%ʵ=TΙ "B`? JX _!XE֐W#i% =_~3m 7IIV+ Kq 7cP%Hsj;0ź@ KS +cdJپ0.rSD?(\ Q+V "yŒ2)=ȵ7VT,< oHՑ6u~6 ~jwKD!Y?AHԈH,Svnt"ABvek "[%L3 #6{m7H8gqvS5Ħ4YO6*CUs\ڇ*<_^"uS|>OOR?# ڗ7rͨA=_HVlw,Y~0h2VKE-p~C:g UL@P^[Z;%y(חXt GrTmzEs_3PL ήܟ, MH7EyG8AOY/P&(̧ 0Y2{wӑܭ0mƞ{3Ԝpxu^,ݹGr2D? [ X{/P+y q]1hHoūPUܪ{&;\cy>{LjZ{yG h ǼZOGUb%q%Iaf쥍n{vWi쇅 I=D$˶ ;%X Qh5z?z}]0 y{X$鱅y/w6+5KZ!\uŔR#a;C[`1,ͭԆ4+K(JZ.DuGÁnͨ"#TKB}f2m|Wj 7U; }TWcநY4ի.9*#,(3b9[M sq̄yr {?-IFOBëHmd {5Lc,Sj6z/dWDû3Õo>s~zh}x#Kqkb ՠWy״zVO #r[ U&bs/y?ù{}}7kdZT@#`{hN8mpcDE0HRIDYnT'LںSAplO9ක;}\ . ɪUTTs]&\*G8*%\)̹H'9 :85 rm[\Yk/r?30ǫĖ[?pii__ gخdd7VY2uj<hX $iNj;?{;U}}`пB|:VˋYYl'u+iT->dg48y;?>ގZvH Er5'-&EV/#9Ef7$e\kq! R4NwA8q%A?n(J w;jh`,~TQ {, LbBț{ɪ.)a)e^53l$1%~9v8Q sz;s-D(+gjbȐ$My0&EDP{ “nlX˼*U"hhǥ= (13:Ø[!䱯)w>'HD&11oT;!x(lSkp80}\M<}8?XEAzHD1c.1~He<- Xpʷ 6/MbA:!`5:近U ot}1iJQSq$6Ofn=p[:運,Gf=Oe4 e^x@H͆I+i72JOYQiX!"&k؇"6Fh985X@1kJ2$#6Hi/gyA? qdԄ4^X[/Vj9oV5l>ك.p;&W\>LrWEohP]&EiFU37ONi' =%?OoS)4DS oI{6a0#/ D[y"q GNV sDHْc;%TB5 dE<7ic+x:Q!'<6Jj9&ބ(sޜc<pZh{=V|w;Wӧ-4M ^1}ه\}*UߜgA :6κ]>e=PŵnD@#)75x+CnVܟUzӸCMǃ6KOhF][oG 46_gĝۂvYZKF3sd`ޜ+nxcR;.ڑv>cbEꕬ5Ľ +:L$.| 3MZ>N+\:TWנߥ|0Rĺck21l=dЅ\`,FrSjWT~b~^\Av*幟Af;TnjKr.Ml<y~$ZHBUM(wJQh:[7KTwV}M>uhGL:DeMXh;y<GD,|0ڮ̴"ϒ~6<{Exq2 0|Bka.6%< k-JO e7.՝$l`^+ TG2j-!] bqM:15͐S~,K$UfmAES"YCc ,_μb,vPN7P-.’=w=cAvwCjJA$88%Q1VR=hCbOBW{GsJ)o_k4P-jwX^:z09&5ߤ.8fwg*5l >_RjJg=)1B;տ:ǛA[VGI7 *TOPMC7b+$[z &zcu{34,Uw9XM#lͿ3==8Bǖ Apl2͘EM}^-i)FB[ qgwˣAdsqebzgTEZ7Hd@CHL-6=8_m4%rLO~$a$X r4Q CP[HHA@ N%! G$6@PC֦ G2;=i'rZ9볅KO;Sw}g[-Q=`14?'#Qj]͂L$PVץ)|ɳ j%=j3=lAF;nҾyǡi00.4;Ct;0(A=kdKf u."V _r+qx\p>@'H~ Fv״)aGZ?s9l.*rXv5,;r UdE9?>/ll6lD"QFˊuhJAn4&Q41EP8S@oxr^һt 8[5BЕ,90UCω.0OGu >)JaIzuC-&2*GSWp}g3܌35}b4g ^hG 5{WRDa|q&lWUB'C UtMЗvuY&uK )5:34lϏfnz L )AH='9/-4'(m$@-+tˑ&.o˶w鼆B|+ٺ'1;P,& i pU0.*t;)PPTC :Oks:IJ_١esiL i4#sɴ0"Pdl$פri n䍲wjY|d7نCQp`q/85ԩW/ey]o3ur Pɉu$*0PN?qkKw6pI7Veg̬)!rdeHg~I_ ܎S˾xіGn7>.J*=#KY[7"4t$N,7B1!dWP3,V4jXۜxhWI$'QCR x#|ȏ?7Sګ['{uD.y o\`wqJPt>)il+5(3ï-G'RP=C9=3+̏8;ԚDhI}fkL$8 GEHbZDN⪂5fEn3xze:5rh..Y 豀z0d6s?,՝,bIa6v_\Ьb7\δy?Cw݃ÇJ˭ޚsLH #FLi5BԸ ͚VDXHLUiL©Ώa^zkGi9md=jŝYe#; pǽPFGn,GP~dTގeIv:1E҅GTV:0Ԇծ2>M2;Goi,#慷Z|sRheSc#,i']$1zd&+m Ryn3}09/'Kw6-]h!{A#"q'm&^:T$>2).ЏSm6U؝><Ƀ2xS(h`8dkH0CX4;C^V,-RyT[v<4]Ɲ!ΘMfh|\`9}#Wy:A-]ccEVtv1R8K9sGO2Цp!V#,ho{A?O'Gb@ؐq4@2l\/u,)e@:gE9WF`lrU9b(1<^Ȼ#FݸXL%OyWe K/UqjUK{4BH u m"]ds{+AzbC{>Ks÷}@5(ѭLL,bT aѸ0'XBk\eM׈oI(I DP;hoւkj HI=b0+R`+cKH/+GtXp@BU_w |Af{&K.'='H;H3a7 ܑHt GfZo+/SRRuiiblYP2$}u,j,+ZOKpv*,\gQgLeNgJ:A9bm)ŋl`1w ƝNKL {SRմ8Qz T,P%WP,֥ ƥ'\| MOWB!lag:vo\G\p9KE\IAP>=vC.-sf%([ bdvd 0l~CSIz91Vow¬XyX@˭e[n OBq0HW3=3qj'cApg̬veXDμA#1[[{ǰ@ϑo7Zq@Y,Kqx2{eD]Y$;x)xVRd,SI,Ϙ&X w*b`$Bd͐ڧIdA[OnOVoN`ȹZNFTSv%h %B8ؽ49Lm 4zJ_8+usvܶ:-C\-8#BwM N`[m ok[$zdG"6Y`֯Q! UN 361uzXqng&w.2SR.\X;,Ci?'.+ mr$" 3fwF4%[5_t%ӣ9ISYk _1*zg~J S/)?)]|\3/3C"uӺ eѺ[;jʢAh~xH5Y!T=*W=y,ɕΊnl:*xBb&L%wt`?S8!b5H2u(I#C$LRRuX֕0=,+^_/ #hFsGeyzY;\dԵ,o: yv\5IB֢i&7n+5.a;k1Vl*V|j# `y axr6`mɹ* E7:v輅3 B+^CDZ"wtDqef91۞Pdl4 \y)[LXʎsHjqL%9:ch`+ܹ#l#4mO8N-R۵3&YzAScSD?B}МZ>[Nע2>:`[ 8Au:|+O cy$Զ묽$BjK̊OVCOny(_Bl/k1)]!<7m]?HMp.0)'*+E?Ire- &@gnm{BRYs&mCAWcq:gZlPCzmIR3Ю ;5(A~, 6x,B7mwy{XmCbIv!y)׊ q{ xDט<^-sQ%x}1q wrWZ) HP4Gj ;Tu,Ht)w$ٛm@'=>EGFU,3릭9,-kю" ,Hq:WFNkEpXi'W/ϙ?ElRTSQ_19 {P2I_w u<-U gꭰNgThzKa1]Sܽ, kmd7E/6ČABjcWL, ًG H _I!".nggpl-=y@ڷw¥x9RY0`k;!5 ŇJ7QV.9*is*.lW z3gUjCRoLf1]u3k` p@NVIo'(:-&{8t\_2GHKQH.;VE T4qrIQ0oj75l 0ë by4 ׍/Gw`ObS.&pH| ԋ:6KIQ oy/Pk"|[. ؕprTbK7<`@',ҫD2x 9/΃8;\'BUdcF!9ˎLxD\(B{|qIKrFz t [+Y߶!ģ}5V>$כȡߌVfMyӅs@IJqYձ^?4B 9Qon),669h%ZAXLA_0}vF1BAO bpbQ cTyQ˒iI#m/vg@rIs4oKoxȓGU0:ny…M×Ti?: tɅpϊ)r*x\h|+17^ڪ@ˌ|-JlGbsȿB[pfykFZ9o&:FR[RKԧCnT D\ȡ'f̆9rH{CnIr6LnK\Ï31>JgF_zFH]i̲_ @K{Vѝ7kZ)3@diwIayS?x1ى:J,~R򪦝[l *0vSMF Q=o/炔wU3<߄#1ÎA5iմ.i>PFQЛyE r" vJ*&gI&8Xl6Y/1z[ED<ÐDZ߬mg15mMW)LsHym {1J7}}EVh>0 D{A)>Vɮ׼FZ*'K-J`<~obGTQv/rk}Y}XrH;MDl;m5o \Rph/CrI!ʞ8rِ/>mq~R~Zz%C@-(T!1)XM7$ChL ]&(R$AÛSCtl{':`w*|r^]/ZFol)349RbTF(-G[o!1i#N Q_bppSMu1b V?҅Y"qhR8]۴,0eVlp:&re"𙲨* L=S>إrۜ#}c.kdw " yAU ߭찴EL}!>0H\rѠ6UݰUn{%//_TPRb%:)qܙ A6;3B~vmqj!%=u#q+[W*:qR1)WATK( |0(o8[!j4)- rlP٣doLfZ۸ysv\ߣ}$oK%~@Ҽ"Fkq>FX>ϟ'xnZ,OhhvJUpu,ˁ#D-irSfn%-$>B rlQC˭Jl_O`߿NecX!h2m ^o>:o&J4/+ f>S2M0z뒀%-e5%{uS8 1Wmk{;֪' az |¨Z=韫l%v7B[a84! ΅M`HTcMwd8 ʽ[Q|R/b TeP+DM;&cɽs:h_E N"Ig. Dæf?l%gAlHԋ9FwX296ul\yHblVuƋem;VF=r 1)' R QI?$!}vRDq: Z I)^6j -dT^ F2\&dGc6Bt D@敠 dCFgU|ԟ\?0o@4K=fDnaLsX|a| BnCOS#iRoV$k S,ĐŕEBHU/'և#ƛ9oɭFLuZ{*kFgGX:IE N G+WڅN>KY%pEp=8Wja+=tW-ovu9nb˟Fyև4=}^Ҍa&@ɵTzyP;3(]ցHLɑ %Gg&7wJ[2O'!XB'@1ږ 7kw4[yoqv&MU EdxgNĝ"i;^: g{rVPf>ܿvp Pʳ0x:!FygB@œ8+h y"b`- q`ٔy NB 8^fUǿD]]215Q]νFS6ƿ p$F#έFm2w2R!tBqsҕ/Jag TRgBߴ`m]QT/DfO88r n.ŋc!EҌ4OXO} JDzb)Xɡ}9%3Rl~h&p;P? </hk7B^RLJ52-Tj{u8<8TA~kvӨ#I J`tBVΆO%ӏD!Z3^To ccM#QS5 &aݳLAٻHm24wjVoT +qƿ`>LֽMӈho%2 ^Z90Vt_vs{n; @`vY,t8oPVvإ=D&dC )C :˧ 65?ߚ˴:z5>e_vOwܶtW?=Gflߋ;1V)6>"T&D! /\S(gOq5[Xv.`q}>Bu:Hsؚ*RSHq .>eYGYץxnu@.iÝqg'ziqz=fv~ɦ?2 OoSVc!Zdƞ @*l2~l4$cQ|D? n@y/s-0y{W@%WJ"˾`ݶxwPT…).g9kxU-lK">Ws#g}\`J}רbkLԹz %:3LqP0+!= ѥ 3ΘPLho2kyY1!B"b:WB'Awt^٢>&&hƠ=|OQ]Y[ⓣ$+[ 8tވ)V0 vt/V_))\צ5TTgeg"h9T:9M~zŒ` #'A+oub9r#$[vxL'ϭęDPt"HX?;7{ujA \Is`nU$x[;Oi*ExViwv@۽sѬ: n*G )]A1|`zjyS߆Yn }<(wY{8#C_[+;pUſc2g~yB'Z`Y6 p]nAf^Zq9r2rclHx&E+VGKj {*#JM1?Z7ʥEFb `TYo_7$[ch7X \̰Š"@=bZť{0 wRTTlCGG`9c˴L89G'Uq$յFRG[B_f&kF^rr5ܯ=Pf+&.aη=et9rg \(lu[%\7ݹޒv\m2Ox7zn]6T»VIBʇ"lI6T%^qVuZ Lrj̎R"b,B4\qMR1NjY|Ka:uu_ Er3h\Ͷq%4/GZab~ƓD{_qjSo}Wyȩwv1{롫;QNη c[ Xnk(,Q%_ۅ3N;b_p(KHԅP&?!?mHmjGa!t50cj/0tt khFF\Ç!=L }oVתq9ɱU͘_aF5dI˶iEU'0дvs!и͒04N'l]>>7}+jI9;|3MJ{TEO6+qk  \[#ݷ1[T}k/8Ŋ4[Szb7e]SaYcykR*H׽GSwM=fdџ)ưyl+lckA\ŷM,u紒 X?#t)gaЭ>WkۑY.ƞ }IĜ$ٺ-r]#|b?e M Yx]FK*^|SNmCȅq\~9\t9Ys>YM:Y>gSC\oAM#V$>\8r92>A8JRz1(gK ̀E Q`D'2L ;  r+i.0mvsGXiC cY3vqYx kJ \.RYV["BJ:%ם^d%ﴑyZ h;ƈqMԢ?H9oԭ iC̢Mt5X>nE:š6$I蛢|g9Q`OgBr2=~pS\# JJ| ךw z%= U"6Jy˦ lQS^|9D|| h4|/l!2+fꦉJ pmKK`> 3PmR۟QK5@;"8 8H&><4w W-?#1C~Jՠ3.ytԑ,^TrN)V#Ї]zb#&5&-H2$}B7oI ؤCd*ᴸꐇ=͢QG)R=fsV9 )9G[b 3IQJ]K#_;z_73woi;BQfrB͋Tdr h1r W7vsL1`"1RaIIOXMSm.qvg*'gcr(.!N `-o,dxZgy},̯皸񣻾$^PTApN}C[-o07ha*<؏qdеxKWG{kЇ/]LPtso5@&Z_b\ftYӤU3\K[bd5UuQt, bSv| ه w-7׵2zh$8m9?w $ x*kmg +vr߽:T :;3[[3=-yرrL=J*-㿬(fga+'ݹ`xOeZ /H?e0˿ٞmk@(xɒɠĊCut<*6h"tFQL!/2Jdk8qcBXJjk)DfMWfJmy%7^u1U//6'`SG 0.Kw @wuS3-  R|:J}E_(bdwY 4foyLx}WMJe5neWzSv01cnڕ?a JYZT:9WTx '[ ȰGz:`NrfW)|bFJ I:(t#Ǖ#*XsD%1='${k.cw_K#T'I~qAHLdNp/sfsZ~0L`UT0=ʸa;ZA Mm&6|WK&l3ͨZMfa[pG[: 7D-Ábn\ iX w3:m6slhJ!)]_n֎^rWqn3(pڵӟd~I~7[ P ﹒c=u7؞Xks3z2F#i7jtz=E>'z}\-DW*t协V8vfr^ `a`b-)4ADxs8Zg3u1֧Oف_%6pqW!QX?ΙHlEH]bI4E#gF鑕N^e1 &;=*3 S O K'EbM%yٺ~~ T,8o*UҺG5Lui L-{ag[Ĥ{Fx6'σp}zhrqU-KC:f~@2.&A&ImQE} >D5Lj$yQWsE@FVo_w5}?@,#!CܯPf97WWוI=F[O5L]s~ [k>߽ U@ZN5>3N-fWbooo^3>2 mN[B+JENP.rc5gNYxDf_opED9"B{8h"l)ML]P}iЅ*fك!S37Y(:2R&#(s^n(A }}\ <哚'^QK]9!pwi"q/깨bhhCj-uB1d cCK>oܜ7~?+lgYhBqgX*UQhm瓑q[97MwwbyեLu%;b&`EY-r_Ԭ?o'1=A?J4ݼrR(18M <@v9jY>dw䛜CfPƀ'$]~YQ3q?>w -,xBLx 3"$l)$h)]}"7! Mi_yens̚'%ߠDۖdbazɹaIrq[ʟ'dt مQVGd5\TC!nP!5߹{!pyn cқcjU!P RR }梂?hvd\lu zkN!EUeq\(wFǬF8!;(R6 ?>-T1Yr] QB? e\i{m#i g_)oȗ(j\FNVGX^4VЩ k,2ٳ* jg%:aX5S8ʞ &"!N"/>^rk@H> ฅ#d")VZmcz/3eUAswuT"g~d@)Zmv,ӆktg+]xPUk _lf!qC8WKr AߵRw0~ܧֻvSӧ gPca6Y06U̓y4v\b3.sXuU*|2N1G+wy}Kc1o] ye#_722j(KINzW-va885OE/506y; W? i5ZOjŅsvF]L8&Os N:2uTWk_N} J,HX!E7w/&Q#BkEiuxYpE>ỵ0~eɉSIJJm.dw,KZNuFmmr+l4 Pzs&[ԟ9|9WlN̺3J5Ӱ(FN-6qFXKi %Kﰸ%aC&GڹK tdA z76in Qˇ&RRItiG=X^XPW) 26s\R 1<:ل~F&,f 4]?VyJyLIg8],MDBS^}şk,qGQ'ʓJ4)RD]mdq5}ّ%ۺ`.?,(| 6F>I ml x 6*uJ|,\O 1}K7|DϏ5Ƃ(@>( (ui4/d+Գ6R.vot(`$eL uzwaPNN|I ,+L{(^ɉ-c-:8٬5Tl:@mp@?I:ōƈ4ƙx0w1Z(2Ďm-h*-wf?so ։ܳW->_# k*NT/06cB#f߂Ot-cg,:g;JTtj7ߡ w}nsF[k8Yb`F/ ჹOl";m%4X9M\!r7:'P8Up 0\0m^;:AFqgi DR|CFmL :TR{R􇛶fvu  ^N.x2" Ax Gb`TxwNZ7݃toxNE4?/\NnI\;SLC pҋNXwl3/BƬ YG =P2n{td@i5K<֭}dIrx|ϒEuV2#Eh@呵A }6AwU>:z Sm PD.ؿ#/H;/dh?<\um ,RS61 ^ ~8u?aX.(m1m5سzSC-Ts\Kvcux֋ˈRB;u)_*~Y;UTFtf ЕciM3Hq.2!x +Q7x߽)|g*EX'% 3gH<&GljIV=]X8I̷Nď!q1҄KS B|SXfy6W5'p@@'XN//eN*3IL-~Fd+ʮJU SLl(U-"i3vMauj\ #DpxpO[1VoL=k/yvb#5`Z@^#;A.R~%2Q #Oey `}qCPu =@cz`{9&QtɮF^FOeJoN!ڠU a]uØC9 ]%z.ш։O`3bXS8J`*V›"upBm-˃sCkq x|TeG "$(^@n gcC:ItUQ:r׬4'XՒ6SߋniȘC w4 $V%߅*q eˋ;SD=Hw}h(WBۿ:N -.~=[kI(>u9 XT#f@ǝv?$[H;waUidLxj:꺳?PƱjR>QZisUv`{c" 6"wLk: }#lM Ф/;Cқop>$˶]F!uyO tBQ` fnW_OCP {ɵ x Qj=0}!2f{Ӝi^N 2֢"՛CĥDb_4:FQBcH\D=7GdBe3 9fU-'UEu* ]3]f(Xxk8& t"t̪M?9>%/0Ԝ+q I_)78GƅSZZ|*eFUf1INIK* -?F-Թ- G@IPȽIaco͌4 jY3f>⾞bd`# fwƭ L}SΜƟrdX,U\ޗ2jД{,Wp?r"y&48r>^@l]+[ezUj8J={RmKXS2Yq"uj]CP .`:s=ދvt鳛I{ }Ԫ7ݏXÀ>2sVL+ cڡ72*<Ѯ$#Rc _7/i|b[ח< :hNJh0ap;Y1q+;%â2{F." \Tm8|bu>dLYU,S9'N1c#yF!+#S[4, $[%\*=nsv ֞ &6v$Wxj=DVKELǻr|Y2iD+7$Q0_( BHF1զ=V[3jS(.{uL; Unv1A(H[rw+&zɞ|tb ^,uhV`1mU|<g$l"wE˰$bl9ŞOPւB ~==_nuE|ZpFdd|?fS- aʯ2g<™i/WCFľ^ADq=Iҳ#ոCTU_8-%zX YQ%UPϫiõ|rZ*K.J:p$1cȾiar@O59 c:R6iqø;Y^n6?؀x^/{%bz2` l~/K'"kEsF*=*2>V`?D 6~K* 3]MR^.;>mA]& 4 #*ɯdS|?>UCM5E%O%nHA ("t- PNG=SnUٕK ='^)u!fxO5>)wGl`?ٹ hir9E+Q]d3 pM]DgJ~ Q8+y|P"&4Zn{c:|5 [˿y䮆iA,'$bjh[f#Y6@Rzp x-A kyFp7 {}D?]~v&!h]6xF謃lSqYaYqH@oadbK޸]a&ϣƹs3+$Ѱ_xAil)]5S1ݎ+ Dޖ٘ (GaL7,l:cED+֒O[R[$Z+H2zF4P 3Sz Q7GuxsWaSP Ш,,1@̼!@2T3H/|n:- L:LX5[Սf2/T`uI9rh8jbm)PwKrKYA~Hc>͑e {"Wjb(ly?^] ͤS3Gp\88"{E 83Ӊ8a1Vs`uѨ֐m/u , /A/uP^0X*#Aȹ'lfYs˄f HÒ #Ŀ=a,I{`Ko7~$}{bU}]ԁp}S?y < tHI#Cf90s9yjɱVm,'vK%r| 5:2x\>:|?v(>) _ >gƵZP* D52RNֻ Mw'XzT:36:>i|_b^@DG聲Ct/*A+Q~c}C$ܿ]2Vېg]SHv`E>OCCgޮYi9d(Lmi8e{\3(iOjP+WF*2nh6ѐJoc+]<"+NJ}%<0rM>T>8 @>T4=>ݯrtV ]~A@HPL\a8o~`Ǟ-ToT!se<>U$IwȊtBQD@|)TB`ZD[rsDVR9~^w ▨xI54jw!5jD @Ss;2Aѐ5Z;903""8Q4ͷz/D<rM"ͽ _'Ї3"Vj~U7h@/ę"D z|8>C jZ4`4AQ`5ϩѱK4qQ|A1k]EgN*pd5r56fTeuOd?w(*A5!̡Fj:?~i aA;)3$Ryѡf z53$'oK"iyG/*u>z| rK&^+%fKvl@ ". mNX{m*ܓs$ٗȊޟҀ_ _z6'n z%e ϲ ݾ#T[N[׀4d$qNĈ!@hIYW%P_Ԇ52|dP]WT_t\*Ն}߼;HF5$ 7 /cz16wd.?0~E|lQOgUyO[<,ObuQv$Dt6DgB[Ȃְ9C,³PP<0 RȬ#|µ2Sگh#; ^ ZWvr*two ['`^ K{Z>5}%axxWP:?wN㡧hb~.Gr ?Ok^;㧪ؿ'$O= gt/ n03o`vͭGDu:-826|$v'.&a}g8YRɱ P@bSo7ұs)=4Q^>Mvb45-tC/$Q)0$ etѮ(\6ڵuL|ˡSk^grړu$HM{ϖm:r3[kD?Es@Iu-PA^Sc9}J*fP*v-;8J"$sF_#c)W k!㪉u!ܖOI|=4pwNO-,.ш;RB>~E3c{@Vr܊Eڙ{h,O 23bP62{ n<1 9է#sd6?ZEb(_s>Ve V еxfS< ׋ią`yPcc ~Bñ^fh"lOZ/Pj15Sr49 պ2R[PB~i8ӗ~y  tQ.c%ū{S]Cq(e"L|h]N՚CԼJ;QfH% vsў#ak*%3<G*bӤWW wWxKxt0D =MQnPQƔɘ6n˗d{A>Oy'βqpwn_\# "4-CףpotR$ ռUcE<{""~A\fp ΂D6=.SN(~8d˝%cBSÂzmdÐ!uE )'%|7:eAW\ؔ']7< `A[l(l*V CɅCV1ؐǑ9!"8({B?C_kW;+Kv+B.4 {g`۟z]a^j kߞOsS ?P*?DSYb{xdf2{ɚMmKX# 'NNS*_S/z{ӸdçmοLí.R*vTgťg@o{ "DuP4yX6aP^Fei>a WrjFn#2 C+wHE=Ik֗׭:qͯSu7K/vgJpmC+l±, ijJq+K΀,/G5"s-%/Q) ᕫ|H@YDF50]{fxqHV8Էn;w [FkqTsj;ei uJ!΅?r,2:n`V[;qЇStL9sm<{|#T<UւeǮ5dxb"ٲy57=BL45[ W Q9mdcϾd%Cؤ _RɗCOD`6&12\g֩،n޴+~ G~NX=)`1=< 0͹٧^lO3}JVe~rسw+g,RÒz +[{MX˃"__Ԯ]HM@ot?>jªM@/bB1}p!极Ot+oeAa%pS#UC_x@t:ğ͵P>@ rE{*E5 L?h& sUUAF%25nEY0'YH3|A T'0_ThnMw C\sexTcg }nv|}6 &0g)<-B3ȳ e^C}uŐ;I҉Gu1!P`k0CJX=44!vX SGڒC0CqjVI`/)/oq47=IЛgZ֩ozu8]>]~^{q/&wKCI4Lp]%?oq1D檣+Z2ӖP@ws@P$9}7V/c 5></"'ڔJy#Y)YXZ=9*YW"e4="[qyBS]iPZ |*7htxęjZM>ݲY *_O 9tt6rIӘ<ą2rA[u Lmaf*o@yd30S #S Rov(fܸd/ұ2h08l&PabT`jf}j7*{^{]4U<3KJCV8+<$C m?tx|URx_9 3+btj@n7p}T,W>ʖ7-»["Glh7\aJ(fl;M^0T@‰Cm/ B:?wP3TdòM 2Gl4ڇm4 B},AG> e= aG](hd3 Héɐ罖mL/gN~Mm!-EQ:@Q=3O@c i6-v^+CttX1(?BQ;yubϝy v!zO/^VA1Z 2);"n v.bv d00d&歘y_j4 N/wt'탯"V?Uh̩mUl#:"zKc]>k7\%7cKpF8ag6X&|RaPG'A:X@9Wx#$/8>JͯJY+w#7 #@iBr`;z2 .D5ʠQ\SS 5X6"Q`DP_da-mX[J1@wiX&GB#;RҤ+]=`g/s((&qzQXb;8ԔhgPa*v׶]`/6xݮ];. @< 'eq|jn5L>͕[A];\TĀ^G| T$@9αky0)Gap_i(oQʷἱ# #?w6 60HJ9$"ͼ v hg5rCwur6,;>P |{e N*0^0[̦4ݙFʞhQʘsF :l:–xtS=L߉^o*^vZ596M\3`M}CJ:jFUrao03Uxf"3@#aXwUrk%-̹_+n5wǹ˾ -gku6o D=9.m4&{>xl@quABJ5Q3ǥ*9A?qƴM8IR~f"/Չ(c+YA_D9~nW bRxU7.6e+sV)1k dXa~C vjL-e/LV~cs"Z);#c\S#JV_e*?.Q5KeUKS; DW]~[\GX1'lqOB4Nj7\BtK܄Iuı3sS. #yWGʩ];OZ :s֊X%nD)pci>6SK^t5}B>QXa <'/%hLc6Q;7 Ň{퍫HzVG5J1, &Dw A6W":ǟV/4m+D^ I]JSA\_|>!>a FoX>q?wP$}E?.(F4R'%~FhI@ Y_]BM|_Pk6 Cm)ȟM?.uy'Wէ'{h (zi ѼB͎p"="[xaR)t!M.垳54]9ӤƔ</!,tn"1&^}?8Y]sZ-)$ uG~ƈ5G[:,b " 2[_,5Շ2hj@O9?Z{}R58#ŹH:D@~࿵]?*T9,p-[R-ǨU2A?h$4ӣSW9~3XЈ]pF9EBHi͵\ϛ؛[tU7g xLaΦN/k v5TXOdߘyܛ9kq#x۫ d;@÷S-~Ήܓw{Z!([%7B/w O%t@%k#j&JEf$fٵ359rTr4z#V%e,;?#8^>WIZ) a-3_NجQxf|FW6XLtZUPlK;xǠ&MyxKHWNK$]/DȲ yO}{ {b`SPA!R6U-zkdfnY":\3˘tL!00]X<qDW6w&̩iuT:ʨ2*cCWMO*k0bCg-T67-aI3Z/bdEđ'+los{-nZʖ%ңH`ֹD_i;(F[4/Lz2Zۄdf9u'0kvv̆ح{34+%E䌆á շC9&4"?Z&[.%'=IHC ma#Yg`*/;QyQ^"4$wY>iwfZR@fGyg < [a}(價Z,k-Pw -N;7kp?ȁвՅG/W@aUP_'%Goy_˜mHKi҃Nwkli;hgK 4 =ƽIqB#FV/Z)(Cm}9PVK;LT%3,ә9#`RKN|tl_cyn{T"ВCyv;D&2TAܩ^ت mC5h')FƅgRo \W2 R+Sh~N(oqRyk/$ 0BAK'%8,/`).q~'8)g%H5<_`+hP >)/@"iLpM4y'7W )'q59*']{pF*#W|!$CռG79Q Pj Wo" "::ͱm"PO8P᝗B^t0A/.b֊,W3 $&P\| #1j!)>1Ō)ywWaɄ0z*I뇂~fTڎlg+ͩdu<,(F?+.< 2+b. [%i=d?& +m$jiw&0[Ƿ#%y-<`K+eq {\FbISPo qBF-&~?Rwv Ř =Y G"T'Sԟ@K599/^~}"B=LD.R=YT-8hi7"v[4 KS -lT~@Dpj9NԨԥ]]/ \#&_TDحNSGF9bxH'Rn@43ӯ<uA̾kRi}ۋ_`k{3R`bbVxF;#Jnh'gbM.4ۦ bCƞEC>o@g܆fW"xvjYoT1cC۰>`#mUD^\LWx,(>ѰiOz:fiaw1z~eYȺL{'7Mlꓝ7lǣ!ڷ/u(J  2@"eXqK [B7"T1kld U_8Ex-YA-8Nmru-4E+6uF[+cܹ> (Bո7?QG^?<6' zcV,m=6FC*Kl(9hj=W:ZrG۹ ˁ,,'4G:iYsׄ'4jyl;tf"<;Aπ gJxW#{ΐw}r#v=|kb/\N'՗7T g${ds>n=>-{+=mCTj$!~*7ꈣ?h<`Em~1mbnasmH --xdD$LoVZr2g0(>gtϢV4LHE'%-=cTqs:\TDHe]2{?? [X&#X|\Ob˪SMhBG$0mL77 M/1JA6L|Q搡l^AMCyUzlMMni|-hX*^*{-fBqn*AI΃xOaXIh VD䓽S4_PO f^ '̺FLrNnPCQpKH,}fK-a5׎wڵ?u^ށ},|nEÃM9i=?etA/Rb^[&T`0 mx{AtOH&,2~ , Fo+?{ IJ0'-GXamCR%Sɑܝ &9[jS4~[8W_;FBNk?g0L]@yy~. *xf7Ym:9pY\kBCԁu|8Q"wxw{Ud>ґ#7aٕ><+:ԩE lVW>x; +6S,|ofSg%. ϴ&Kf&)חv>H|ǰGscWc Zc`@[x|(BK6h8ӆLF_ #-xp$RF0ɛީ>1g׿jVTcO^v:HwTlw\ ɱevE]:6E;%iQqN&X8#kΰc4u;k+`".LABaTٲUf@{'rGPY@mE_Ɖu'%_MSP*2.6FXhð, n^7 J'%\מ,(kn \SXZ _B;ScWS86CK]trLcHgʥD0#φf8r7!ڽ{ęyϖ"?sΦQ[,|hJkOIa~wafhAPϋѶT,PL|"GWJR򘳋1ގ(+UgV=u9C>,F2̲F@\QIP\ً8ZuF/^OZ[S26(֩y8YrL t׽!_ocѱHOry]D6⻚픰Բ<is/ *a-fM. 0kbWʒU҆i[b̃i&N;^쾱ǜU=.D&@} L8ɭ,W=TuxCܱisWdtʴyjۋMs}bmtP+)}mƽ񐪾)Alۉd^pq}|WhsİZMw3IP Y'Ό:-!A9k>W*Q4.OCs5F%yڊpOz$A*7iX6Q*,s&JLOǜ?-]U]dv"k 5w*Vn7r=ז)>G*.EucdzNTLDy~[tD}FArS>pV )(t` ᱟNM`>T)Bcu6ԝ!#[+&!d2T UH YWS/{7,3/t$ɖ vk %V&!unc>/v7}w^"Y9HxvG32n keA28`hn`O )4*{a$*n7\ ex04_88/] z07Fi~,sfӧ0 tcZ,~b\@@)NAt1Xaė$L فz7tHk}gX[l A?0@8Cǣf+<k6yt2sˊr.PSR@oVۖQVcҿecYyrTs/(Wb*!h_RH!t>k(dJꅠ=sEGߑEQS`6t6Zݍ0'= }@Cy} k.#3 ?0)b?C۩kIsj*L8e9'C[|sv'APA9xy}EUjэ^%|y1fWD؅L+LM&rH,ƿFB^x}ӊA#:4"#s&֭O /S6}(ўdog{B]q]F+D5#ƾXQbb^/6ܬla< >&)!P?ZBJhW~XUDw $]c *W:WCCdːnj2(tJ=5uPW#_\꧚/ `C &Ѵq:; ɹJڷor!&km̲@!ma bS=$Sk a)7 3^vUuImAjJ@fy6X.bopc>Y&N@= hP#+=<`NРx7qa˩v[xXrlL (tx>`Jl]5H9 +*d q{?V5t.^҄2T(qE5}@Vdd?yH)T̅!V=V.ܯ/v˳-=r?Ѓtw-7Bwa(S#Ƒu+pE<6qTNɔ$ lc\oW[*H/:o&ýδ d-=n{q(8>|<` G`},4Svͪ"qEK$7^1P@k&,z`$_4zcij=lWO!GNJ lMzTu/'UQ,e0L`mFa] ex*h b0?_Zsy(ȳVAz5tC$ۈ(9:1MȇpuӚn D4i_'Ѣ1NW1 ]?vm&&,jxk{&]\j쟓C %q R%jUT?/Z+8R-$@n-3[78Az| }ſpGuJBKkOĢ#/D!ujt`QD:,Mdn lCeLzǂI4|Y 7x׹;JM?|r?x),fI0:O }Xky$~ :f$2`I(#_u >:\kP5kNuɕ˭=0ZX#C'>\qV' m€k*LcScg4]W+\@q;Ta'$"s'! 戴bnDKs1SyOU266afD!Ό6IQ!Ar!{}zd> u^ -@ Y4a>0eI@u.~d߆yTՅ l=]ʮ)iӴrodOAx OFuZ z_,W% c;4Gܮ(eYqEa$EOG-譩Ш;lZ%7+ހ#(7).y@u<'iLW.6S-,oxҮ] |EG$WAs?[U3w&S&ȃK-1H5Y5&µ?+-4{ҮZ"?a-Jb=*4 i͟a' y) G TԶPJILq׏[u~Ѩ&.扼-MQf𻦦(X^,zʐT$xnIb>c`\b(+㟃] %gOv1CׂADhӕƥPE>=@-P˲iN!J) 9ɛ&Q3$ 8 Zt{MMzz㱏1Xfs[TD˟vwI E6ݮƲUbY*#qsv[P3VpbY`6:Yإ-x)b6+,xew +u}v@9Ql:*&M["PR ?pH;;_b!kZGC#T/1 .!2@IJ:qiܹ5:@:ہD`$< ִā]j ^~zɃ{0(be:] #)#ߊD{'TW /5%ɐ❶N.pgE- z34wJ2?hzi5**RPs+(xWPQ]P,Fb֫ -poF1 <|]iVҐmI;8YtFމr#'j#&ܱr\ D(Ңhc` Oo""O;*rtHsT`hT/_RT/Kf6A\,:f|EoL<6:% KK>Dǽ4Fx@`ɡ|2Fzu&6LE " Bbo(oHN|t S^B%m}=8v vS~^63#@L8Lx+ׄð^ w_Xhyeg:FבcgLoyZ ]I9B'Dþ >cKc@lݲ:͇Zݤ"F,Q"h6I)%jGivbـJylJ'njM_/킳-rp۬7l+x͹LwQU>R`#[Ƃ.ںqvL:*PoZ筭g>Ï*ѝdvMI&Sgq.47z!:Kڧ9DuQ<2h6u91MٺY5$/U|$L*&v`:$ 3*5) t)y,MF2"jJڭҐ:DyaDw6TK#{nj%'={Z01Z@uanJȏ7wJ'D5g]}tqΧP<G}ڎ.Ju"i0>h1"9Vҥ͢H~K5bM[ۍϨ֑~[qf/g$}By\`evEO3=HK] To6'#&PlabҸQOoYCA]3zP~1ˌlѤ:z_ZIQ7 ҅K)T>4!')aZ<'R[3ا݊węsv"XJhe=C9* ?2^)Kd?·@ǚ,j5$0!0(2$Gh<5/`ք$ 8 _ C0^Z'ͼ%#VWqY 8,q*sǴKSJ5 &t rr#[yj,w Ƈ 암r $Y͐ɩp:R! XcT'ʨssM{$G;Ai JzUJ:lfVy$(+á}/g €o;YK&'$NhĂ̢!5& 9%: 1@C%d=)`4UKx Z5;Ԗb>ۂ԰\aD=#sU!kɠ  Ia@(E% 6 y `:r;3<=I2MXgqNg7`7ĒCB1<|طƜQK֏GM{Z0&;Ī7G*\HGTy hSE`^i &R|3oy$:ntSw?( 4dOUq<,h'.US~ B HԫD لwF G7 duz]jo4cr,D[ R%]JE 5 !ٓ(Of^Xg1P>b7$kbIU]yw9"lR,?ۄ˖ A2xN)#ykp67nV[`ha_dM<^2΋UtG3bzN ukƯ>6#.~HAQ'jPsPs"=Pf3{ S󨚂*h狀 /R: 'dӮumõC"F+do8N )~(˦6-_:La]eڮp*f1`eS|_N#S.BQd39Z N vvݶ۰6͎;94@0c""+ь(RPtH  ;v|R5zXӏؽp;Ɏb%fk/0GP=XYht5WQ}Yb#qdRRemS*"7a /*ΫHAw쟄7.\:6&ӌ?,0Xg##q^Yq +c!H6Cgkz$H2hUF_H?2R%qFM{3Db;%I?¬"hNR԰i +-e&:/~x9)Nrcb{ h1XApJٲev%AjNlH%۟jwK\F2-sP bS?|yJˍ@tH>%lQVgtzu&=Q1>0U"jp5 rY}2ad}l0fj1|ԱIz+e9rarWr'fvyHM=e˒Ғ$,'DijE9ڥٷnB|>/,ip;kAeU῜~+L,8:1jve+IC>{Q12˂0)GJhC8i.φ![)&<0IKHt~;}inznWRs[zDV.m21DU`cN5I:vvFa&f=C떓r{P@#Ceh( Jw&<²k\ޣmkOzvQ,XH~g6D"(6Y6{Vu n`# MQ|aqVCPeO[|b&6y5'c7X]o/ !c H y{>(CƵ n!>#X籫A8ȑUG+*CۄݩOBY:kjЮsY4j7N҂[Lջ:ݞuڢ"L:*;_f8#3GĪPA$Ram q1Ca IҬcE%O_"Bam>kzQYC~FQYdHǹwFFՑI%(u9Pr9#H:qr \J(J mdg ?/aq¡ OO'N:˙dr/ǎ&ٕfm I PS'*pyּ@`_dV=Ylp6tb@P9+ƺZ2x wrTo>vT.gk圆}F#uT|???؏ A"!.h˞)TrlJXӮFA.JYyLG],CcY5.B[k)8LeJZ BJJA^kNJkx8 ǂػ[o;c}d}etŲK=l ?L(.Ô|gxeLW1бɡWܱlmN"19 u٬ &MF.s@=Qxgmr7aVtܫ ߅DDEdj 6ԇ'\FіϚc?`_n0:5G1,tecwbv{V(sw +ׁwz dXfQfzf>b|4k,PsWԪ9C5U1:M~) ILJT_S@*s&3j,apڴ%Jy&LCHU+6#[I8q 1(Hd% vDrG<:/dYLq.^?L_!YVEbSG54fjZ¶%,ppƔ2t*}*L,IJNwJ,Mz5c `:VRsPe^ C-*lN`*%3ćgB10b8Ƒ=b|ࡲv7@9G\F!/x 9HDQHҘm€""wR}sg@%(XF9{%9[ ,: ,'QW!j>[IS2Xڰ$r˶&#lopD9'8F];WlOuJ萹-jk)zCysyzg/˩f4OtqV;/#ZSWl$@HԛBpdG$=FUepB -//5Hrƀsl$rFei8TRx= y7[Fx|xhmN::HTVT[jIb 4.+Zr 38z7J{E5SDG8LTs`s6: P 5:E ל޵4ꀡ^J8~l~ZW{#` Bk#c\4*r N0-0J~*Uz5R6Bire2ԗ`X_Ǣyx?썐 M[Z=wNM(szL ^%q2"0Zk~ߐYۻD5@+M) m@Bvw:4-' ^󄕿*1}9%M1h!zO8m_c05JCWSMl$4&^ W }Ѣ(n&,8oS]qqw`gl$Ӽ{ыQ,H{.~: nsf9bq SEJӽxHN{Դ0+H(Alp5߉t,/;,%ZL|qvX7g6Wؠ w[RE8՗Y:}t𽯪%.sh!piWRN\SE}͂Էˁwxx\!cvn"UIa+6[,}H ZNk 'xtwTW,qM4r_OKN Y+1I,H˽)EneJBxA"E@}Kx7rt"3SȖ"^g&@iaa !;0~YXpgAB+S--@#v 03N]( HS*5۸6z]G>sBeU=-@`u5ȴ&R{|Vp BD d2 jThBo]=ڠx }A)sӀ8tV9'un:c=}أ 6hPJӱrXbV !pI\ 1efsG=8q0`ũr.>1Rjs,sx&jO!'IC/F}ipXJ4+,؇,'1( ,wAC!6*)˧.YZj.HSˬ:/+7 ˘{U*\vq!w|GaeW=ZlHЙ <̀o/U8}kĎ0´/!fbNEUήxMNe< bŕ,G]8PXC;7 WqVDW( u͏S UwBLJ.ws.Y#&hfeaҖR޿tZ~KrKAsӠ3wjtR8Rfv#PkƩz130 `B3>XJ׿ ]ZE\Ÿ_nq`^e0ݿ6}:%%3_}A3ӊ;ܱ!Uq2L?0}⹟+z&Ѳ*L<ɡS,Q4$Ҟ^pxjNDwݕd'f Ra/AM.= V12NlBS $|]^ ~ )[}&XDcLNʎ7Pɑ 4XZ1LLgY#ߨ(ʱ>C{ߘ-΅;ޫ0E˲/%ZI3ܝAgkI{}>^ZW.<#=za:dC#Smrl),O6Kt > 2~cټ;ܴƖwwh2z;Y3tk}֩D| 7[$@D> ʛAzv b%G\>: 4?Hz}Gu_Y<4RY*w'Ǩ]P] 4& C.}e?t 6B|_Ubi T7G#k5>07 <# ˹]mrZ1FKnM L~Um\ C쑓ҧAgIxLV:*;8q$d"4Te9芰D8fv)s9苾 .WWt]؃( mH6W>> *ΐڻo$"6Ee_wtL\&e?b&^i1lM>5\-cH-c:AB8iwF!A 2̢,jܬ}0B0lMrC P~ ږ1uQ,X7&@Y5 U|m7yt1)WGz; SN6Ѳr}GP9Xy7p.e5.kO :tRPF P4I\4 'õ`i 5$ _uSɡgJƂ̶- R۞}NAQh|&ߤ^m38)3A_rOe 5֐A( m@-qv d#| B's?WADhD-cUmQ=leCe| ϯ\-()L>G;ۆɄO^iZΨ+öd^X9(Ik q*{>hq?b($r8Yd<#x60@]'C)g? Vc*#uU?CŪ]--J̍oJ]6~ོz)H$j;PY [:~Ko=F* -PNWS8< *2_H b'Qx'!K _ChABnf.lc_2M H-oBoC:xnQR>+SΔg{u<.ƺ\x) 4q#|fEl:snuf+J7?^")?.FghGSSk\{ނ.6.|75 wYyȲVS%=L7GDrKfC$K8+} OF`MIˌ;q֚2iЛӰyfc& ޱS+3;0E%?t:+̵Ito{3L@ qۣTWs@ ?jHG&a?آ+D 2܂V\ρ2|rvEY*GTg*hSY=g|܃Z >vPhH-L5Qv2~h+Uxxrk$4rU;nrB)/iNp.֞dPil'-#w[mJG܁k-k9ЭГRvLr1zٸ,&a 2Q~tl츯/p tb¦7C$x^T)7qNY5UIJo%jQs\-.% qM)/>ٸ(Tivuۛ7?TQA"E`}lsV-Rѱ ' @ `1q?-VRjkC ?A1oxTFb0_eXbk2AY{_C!{,z N#c>uЦV˲p$UOXT-8T9-k9ehap*YB`#X{$uҤfN)lD)YҐ@?- Xcs,ͳ~3yq'B81@ga|._o%wU{MEqO(^3sSﭪ{BP)xʝwL$2k 10> >ˆVc."XHu@S_Rz e 2nFV%?]UzcnFyR\9 kd"mc+1}7CL;֤- QhgR$Y.q5tYjrxx;-bIL7~Kp(f0qe#rf>'3Ϫoj.T1?36NsSM1(8Z>3}*S&Cb[V!8I-)-!I<9RӍkWQ$?f`-i/;RspG@ 觊o+3'DgmP @6r:WjQS.2K(=8Rv{4: kE6$ȈT+@D)wt_FqVI^0֚W/'`$,S.x.fޤRrL"ha({P)8b+sJ]T~oPO#<0>-&Ie2B ubƚ"H?t&37'ԕTu Moo[Chkfk震KupȬ_&~yx.06Vcݮ k51_{AjÈxJ-c΂+ry!GN TD4w={)?M}7w%@dVb{M.;`0ʘra;걫{]Ñۜ Fh$$VF%@ٜ-,sJPlLY1ю{?Z='uĨ{kqڃ{++Q$1gT,y|+,sW |EDOh/ pzqfմI1nPńY1ӣv0Nw";=MۓDZp•kY3ɸ_z {rUR8F^dtm5tĻ{X{BW3ӳ$>t= 'grIƖ&x\;}k;a H<’[1=߼c45l^݂myw^ki3/y)U{b^_߲kw(eF7?9O֋]u]a}C +/LBU YL-gTHdMcnpN6!nPg`Sk#DJf\-;L.DYYX?u7tvs|WxY;hFS&nnG834XQ@йk 3oHj*JF~.̱%{pH#8CeJT_W/FDV%ڙ *L@ɵiA/fslw=-~*u8nAn+mI \7]su31H5EnM]r!0'{~*j`tGXAWpUS+H ZGp ˍ\Xlj?"ST ҪlB]zڇc&6 U+m~PU}_~״b+v(e}.ECѼ(W!>,D:SzdĔ?M!@Q?#Mu7Eiq]{Cw8ft@K-[E)&&/%20c Q+Hxz5 {.܃o )ПІ#,ts| D aaydށ/5tNN5+M,>qd00gqԲXMȑZF&+YHZZ C[WH } ŔaԛmY7 ?. kV3ⅴ:lDc"a5D B ƾM=`&Tn/`A+, [%,n!^A/*}nT(_o SJqX: hB FHYK"«V. J#Zvb{w=I)KO<03 Ny aw%Y3L|8;ިZU"8Xt,; mڈ!+51;ƃ@ 5Ĺ/2|l( 0ݗ_\1PI_WMkH10d}Xni*i`n !UֳPclxp#4#`vV<89N+glY$[fX9ݮ`<$wsߢԵa U.x[7D }>:kѺ/S,RBBFr6%t*B7JʳABRnN5YC+f.4%>J(qGm_&)%'?"VxvZS][PSxޏ`LwgOz6)̟[`jȂ|-Cl|~QDR}etE9ʦlhYSZJe RnJW{'xvX I 9:d:A8 2p-ʬRJ1^ġek.2W\P%Ss¦4lZ~#60踕w5[5CHV@:ђs{Be).P}w lr(T",]]e kÇ #Zʿo͆u]WWQ+% ^^]ٿh/T56,z?A{{DM^7К>, bLT!ȳ}]6*nP݊s. E$PߙuxQb9BXI3-^{mPT3Oˮf}GC IԢ 5= Li'ɉUsA,d'\V~g#Gy"˗jy& aݙ=@^<|6%Xr<. LBH;wXANJJJܦYg#gw7}h{st`vd,D[('zZꂜǽXu l?vCYX¥rٻ irQ4 Dkn]{M57 ww+e UyGn@/7zؚ/.A:4nuL% s]l4(n~Yi'^2w{[D:B%rϑqrfC S k?Cw?[CsD>5ꝷ m2?; _vF8Ő-Hhoo勚[B9Ϫ m1"-KHR0֧Ox8zL) xJTtH6< EZjGAដ͠'o8_(k0N(E}Ė\!~jHR4X}zQxm 8uMP>ؑyO\|NYӊTx]Stav]Pw2kj0-d a6Xp`,om H:m:وo9Ò&w3&7G@ C+{~36  hҪ6BeቼMj5{Ԇ6xʪU()8v>g&p.e9O_[sH# kWyBצ>![o2qZI^7}ɕ6LxK7y0iP'8?ս *;Xai,ҩ#yj0qCZHny/ ;vpO;m3gr{oEZDj8Zy%#%lOԛx3CXu}KsSG\Z2XuL&5E4f)Kޖ8玖Nmfe)|"qyE DӣLl%hsmvMH[{e0V?9TF7SP{_ԋf=^Ii~VO#iόJJ {+o9!bGi'j(D )Z**E2dOZ52g :eIS)2f}0m.,}5&?޶ҩf^N9)I\[dnBp9- Re=QIg g(=\Li/pջ'\es=P̩|/cH8mwěK!t8op$j"E&i EnUmant7NvƴsEW3(%g#q,  fT;nK%.4Ũ+YmJmΨ.[{t܈蒁$lB$Ua|;G[6Ps,uz5څofʞEjṗE {>Ɛ[P`KLjYPge~[3|E|8 &0H?84az4Wʽ;ߥVM rK~A)/dLp.J `5/MT3$>$w˄.y+S>$8^3 XEH7G6kxeT>Cu+;A$ʨOؼP3c=s;:Tme5*CܚJM#$7&mjIC1sfZCv_?Z[-ۖiRsʴAIm!X_]4Mkx %B HÀ4I\$Y 31?mBjqԼ9'e?%OC(ʞ10}Ҟ^98 zH)vepEXc7 T eN/ zTaj\<8Q(L])FC,xU и5sjJH #Ֆ[xõa_k0*X\h(4&$ *bAa:WO}J.1UZo/g(o~V+XAƦ G,=5Ju>D(y˦*\e[ ׀{q9c YymQMWun8kPTs̅ekKcpshp;v}I0cڪ9'C:FC[1pQ ҩ$-xqVu2=L.u|bGzO |Wq/Xj&4 PpvINPmYOw39qY:Ei [O )WFU] ҙ@^w/LI%Bd;b׻E~iZ * f ^bvtt4DY=")J5\1TJnݓ3@5 Ddtu;xUثԮF,ӷ Q' bGWm mo~mUkNkIʁ,>ڶb=Q?P!RsMi;|iȾ̱rZ:S] ?B; ު^#S{5jP۔hDJ_~^WT}{ac$#l@oQvo`LAlx NtO:[qONdZ7-E 4 iPtl7BDHE#[?_:\nG}Ր2/;qbћ_i^ D6ߐ-Co0+Ӌ0.WuN?)F@,N;/|rRtliV(!: Ԙ%YS.:v0#AFӈPQsHOؓS$; E;ؘBWŹx2QFެFIWS:xg,v6%o>'&!=f+}Flr_teh3Sfԥ2ݍ$mMC?)(~F$8N(j||b [s<rz1QuԎnz$i*z}Fk9IVq}D(?$Lz TQfľyp>$yϚy!lUbӂIJE>ϙ&&HRzF\[ѻ @dz)kݷ,i|D=C"E"++aUJ{Y΀1?eZ>mzW*YUUx>s7&0'6Ù<}BlCQ,(lQL܅yX)acbn@F?NU.! _??[3uu~Sy9ļ0:oV_GBWT9+9hdz̖k^Lj`6@|~wkADe*ؽz!+.Ma.~怡yyppZܣ}Jr#OB/psCQrO(&SshPFxx!o#8?N޵ˌ95P-Fz;_~͈BhWmlj3s\&cdbULm| y0!Yq an?Yd/WeP_73<4R#c1DG)h8^ 35HWѼN87R *BO9g+nЧQ϶3Bsэ7,uݧyt?`bދo.f)^M0EeX hSJoƎTzb^sV[xǣ2>"yV. v}Ň@^_j_^nr0:?EQ "$'&B ´u,E">k$Imd/;Q!QU.';E{?͆З"/sС1",&{#KE1j^ In7jTU,οxT#z^F7)764mqp0 }@L"kEm# ?çJ+uzQL,shd!X>FPf!Q?QPPT( -V O͐8i@1+n916(u"qb(Z3Ďj +XP6C Ƕ%`"`J2\f: J'  $GTF+2ka/&-ZfFS 4\U_R6_gqpJ $fTsrETCV`<زJEws/ m2Z1naTYg_0~C:N]<ѧ1ڐ1W/gw1ZY qxvT~ "V^pŌI ΆV"F?$;V{ :<:z9`)4BƏ}Om:;Q'c]+l_0T"j%z,@T桰AJGO?Hngpqa$E *vNs!Khx 9&6q'#`j/όW:j}bs3~&>J RuP\r˂=WKq{]i?CoeLcȭSJD-?HN%7T+'`f#Nj{|) '*/9|;z"qk 7Dj'*J H!5<#Ĉ@`ϙ38znIoP̓ A.n2RKFO'*6)^"6쭿 xP&`)UMwvu#~}9]rLbXjtn\Ɋ]"B#XBa!uh+ :$N u^ڦcEs|0g;2k< Ef3qQE(ǍaR/ra aRcz/2BZWi 贳NK *CʯN1hCVB(_$͏@GL /EJ;ĉ9OcXN팎d4^|+y<=ȘnQ {Q39A3i@$${ct.{] PkKW<ع>5ߺߪGXLRK'U jpxZ^|/nE5݊r_AH֨"i?A]NsS !r Nt:q [d!r+y 3sxܪX!\}Pu.OzJJA1SLù M*<7d`.1,'5=J} 詞%؆&Uk{CkD3 YF N9Ȉ:~$͑zbW!zKuB3=W<#跹o,P1mbPFbA8Ql:zUޓ>:}*C͚2ъxrJ" Uvϭ~4 r@RigG߾zN7M0UVϳA^2BCOjJ`U0-ċXD|oQۊ[ l#U"n0\doΝpS;Dk^l,y iH =L3xsB /DŽFp`%dG֊y;DzbpY]sͱO%5Nן:9|uQ ^";YbeGP&2@R_=`R$P߅z `ebPBAo9M{h#JJ 21SM){A E\yF![EIn(:(Vn`:F,P@}@7f=h,vLh\;,$BZ%JX"aw6ӑ]MvI "\_POyN<'J;d ,o=.|/X3t=6oA %+hɳ4d)'l^-` "Y׌ C*d5{NX\_ JwS=6_p>n TUf|́E%d'M0oPJ?έum>3()NVfŧϪ(,Ojrnϯ\ ʩI/U^^ӈ.Vj.=^vs^hƹ-9w$VN0HLqK !١6h:P>G=UݨaϦ ٭Ý4 Y5J2DSzm /*^'N_D5 PozVڝaT;VPNVAv-Evv=Z/8yPx7v(3& 舫YfBn̮;JHNfT:)LVZ1Uw*:ʅ6v Gw ~lC7Cd&i0P@)S,U=]/: NU't$vq#`"U&Χ~A_2Iɢ_*wB"B80َ樖|wV&hY{ ,ٹ˻#NQFeo `HtѩgC$QdɌ--LҨ9GL`vbbe"qx]8{WPܮ q_-ַLqL[. CHr*~%E*95⃪u3`sMϰ*Gv%lyoik9?$~,dgOY(eė}nt7g;B@(;尀 sɴ5S%}[Veuȝp'*oimg>dfޮ{e(7L+M'+e !lċQєR\A~uwKY֬wb &/*2;ت"j\ ,0ӹuš\d[3L=Qj&k^rcd3M:ۖXi_UVsO0s{3qn/E3 qW * :;?}CX!&Gà| <\,|ոcFbȨ3hA gjy.q}ap_.> +LO%ev-\2.AA|2s*'kj/7݆ŒV~p1[fʪxXo1(o `dn6u_?u^Y7tOr6qma#dx?V;wjX%1uxw]Cg a6*} &("&eךfZVB)kU9C%oVGIX6/ML!9bX0#vO7ڍ<%yV4i*%;dUPVh\E~ EzM~Gxe})hdU)^; gqCT9?XؤkݍS g' x0fʂn8!%,W9K@oث\ceVrsc2W˛`7u'zďҎ^cWVj.Մ5Ny~ܖW(y[Yct]àzQ+GYh`W6uD9]x}Ipl b6l1v>X&rqSP /WR7ˣS+mk&fUBϋݙ$"Is34|6֙ >!ԉlrvhz7V{.64 Pc%xT*Hpt?eA 0=qzҾ\RnN|^R~ i(4p۠.e{ ݍo}8I0mdGU .ڟVث"I\*Ǥ(6hCaJ趂_X-4Jw,2eo*90$(({7/X $ȃybpZINm!S:09}iؤ| )I t=$4V$}r-fς[#NWY%8B؊O۠Ց=ɾ  J%&hZft di+'p0]W]|;jŸM}$!t̺ۡltD1Y;-><%-'-fJh⪦~ ۞U{Qg ,"`ȊרxE])gi4$?aM*ټr#Nt;NDk0IF~@t{k^M9_{mBnY>T͎Jj%oqq9%c }lTw<꜄(4UśMXj AvFvvNIv[w01Jg{D)R| i<L8fOiXEbw,{gU~6Q«MCMddynM6/EyX A1oaCϟK-U0J,Ή\G.}Pk6 cz+п^cq !ؿZO_ۿ@J'>9=^^3gGF K ˽f|\Бlo!6GrHyL~:(:1W:>V8\p99d`ITa.)i芞1^)!V.!N&/`h9s8?՘ Qi$)^e4ܛՖ(lzg1dn>|GLkq}.R8|D uO^4o߼Gy`έ. [T 1"/#KsU7O81# I'ڞ淿߫qJ]]_k8lZOs`W NPkGr`M\|j=XH\O*wolC\״՚ˆ`5hҙBF=KN'&Γ/DG 6D!a75(UiuCF*A)gl\ q1ǤÏ:YZ|;v ljt N3z9 *7ѥ @ Q-ʜ"G$zo$ ;|I j'bܶ~ 21kj i&NZ,Q=RyNǷz^MX tb}3 K*ng;kl (7fkK8۱Q/=c(kVQ]2ȚyϤ藕m~pd8U3PҺςj?yaU*"a"JuzR1iHb(Y|\Pk8lEqjL8$%`m6u-{Dn"~mŚMf; P(bw0s|kDsWЂպa(,ي1 xG?ԍiA@sB(˓4B"]l*=B/r&lW,?ÞR~pnih"]b-2Ԕ̟_T[4B]Dsp?9q*S;9lpqۗy2ֆ}Y2H0{XmSep"wbbͯ&ӑGZ m.8Մ J֟S˼;$z[ {G2lN6haԒ!<[@t'8ҞXYΆ@@'G &e Gɿe+F]^䷄QwO)?O293Ӽ3 _(^KeD^!=*Mn/W38Qִ%wžc""UjL3x\%v#7SSwK"1׳]Nܜg0~- 妃rIdkZ5y?1QOg^߻Ԭޡw?+m}]#/0RP{I 1һ#zUߌSy:4r=X\Cj(HtWuv҂#)X_eFJ#"fQ\ 3`ʨ$>nE2SKߧD?$\\Ÿ W`dr0 fܣkfoMX H}mzF?$3y hlz8ñUY۫)7^/kg<74PEn>О΁&\O_S(`z;mcՍv[($ڇ2>=p:&@0Œe"E#t +6`#Rh[x gZQi%aYp)Q]P*aOżqhlۧ8ڌ~rC%_~]T$3U&zM RlZo.:Mͪe۴mEk\.'v%lb❻̾Q qxb/V wg'L*@7 Ah*+0nPr%yOFI;5~_||歗A_E_(ƲUm$-mThԷ4\u+Bs-`&d]}7]$+&$0l\:~nJ}/P,WP:3Gmm!m!.&@s5r@6GDxWьCjz2FD-44Va'Ԥmcy:\Ծd[]3 nd1y:ӬLY$4F3(bq,_%RV.#~.P<@>f,EuYjwC3d/=&l $5V6Ynd~vo&u(#W: ma[>2d8}~[I"|iXD+C;ژCԩ=ܲjb#݂LLJE_|]%wkGC.$Иu|3oR _>iIR2*6EM7z"]ڔtO'_;-cIΪv '48L =c 0qomد M/2R3Lt|9ksT h}d72S-KisI}u RrDLǑ.iѪ/RF9S*>Yl#I#.9B" ﭵ3\,W;4- .M@z_>uq_*T R8]UUxx tk+9Ef+i1o`l аce`$mwt%5g؝W!fJïTj2C&AtϹߊ5Ϸo `HC "i(0̇W잹6n&05/]WPַu8 LL۩ׇ:uPTj*Qq; ԯ띲dRcLyaEU{zTdT$)t:4lQN贱b`fIgC"sTi%$lqwP1_QS7H }nLX^Ax^u|^6Ug>=SAEMf.Mk,@Βض㍻z ||/"#mV񗋏ogd>zϵahѡ= XD!,:x?x*#^F)'aWZnK|[iXn [U`_%Q&wulk܅^:;nd(0=5EH?rNL\6_/李fvB$LYm14B]5Þ cN 49S!%Dyog"% ' (JI2n _%&_i50wRz͛4[j #챩Xxa&ED9%ln\uF",5>-ЍO6-)h*a#6$KqrV;{H=zR%דXַ8x=>/-⶜C*#{Cawߊjɐ4)lȊ88q޼; zl,Ûkindʾ$ jw8Nṕ_'δ?{ps:d&h.LVW? hd>awqQlb >pڭf*ZِZj'^*~ɳgA@I(Ya!u2H }&D"g DH+=E멷voiQY;ԥEFD jqarOX"h' a wjssNgh W苲dIfn6SΊ؀X,y-̦ "ZL<`n3H<;Cc;LsRNaAG#SnIe͑`BL9 "k,iwr,'6^̳ɢHcNب #?wl$ ;};b [cyܐ;#ƛqP6r0Bѵaõ>Nnx G:mEـUȫZ'DSX%"wTp3"R7¡rd >x i._>qXjl RZ|aT1[EH]N<=krfL9f%rcz>@ fu*w݁z<&њ6b> uH*Xf!y#I`kGzɿprpDŽetߩ|5Z_ w0r4hbrD V, '\鰲IKeCCӎ.wsURכY]N3շ$mكcQl>oe/Y2;D_%3Lh _sœO67-X sSIL'檾k!$460 ZcPH4>}UdmU-qkjz4U?^RC8_Ȟ$eVApipc{q,`ڐ\Y1l'B<`fW!29x*#~daVCj>3{>9d;"!cD Sq7:ZT s}wnbi=mQ;Wâ_bwo3ơht)&Tx܆{7qmOiv@Nf3jf|||I,d׫e+|>5xby K: 1F#guz:րx3-a~M- 렖PPϾcR{T|hf-;! YD-6WcD bff-J(s7)7x{˻pO+?ڌ*Z)i JԞ]ËGaw-G3ͽPj;fxrβcT#FemfftKk܏,9b-妷6y 0)jq)'>R阕OgJ"xh|])\r}Tv>|194Qe!%,y#J,&2ys'Mfxy*xoci Lߣ'7{ܜ]fd {;xP?]|@Qmz߿m;N5Luh5ƌƹ/žRܷb󌈸~V:2E9z{Ι,UTXwF)Ԝk_+@4a7G'Xb\r>{[Õ;2ߩd*%%!^噿 7(#(S~>%Fq=U[}lTsEo9ar~+YNGQcLP]sG,R_vaYZ7rՠC@#T ߥ`Oyv>&̊_lmԊx,Ķ[\8vrD5%$f_#Ut6QԏȁM蠅D ȫ,6z @yT!i&k4g|ASwm^ ՍPC o8 F^)H5ɒ^@.GsA%Ρuli$j%"\(?$P")BUv<И\x?eS\5st;VdVĮNOBN֣Й3Ty0D5L/~MdIY"&q4Pf@O\S9=D?Djv]%0]rNDGR>RniO[P!m/c҉1L֔/$v3-v`: >Nي[j- ] MֿO{M3B(_ރ]X=n|v=Aq'B;^d'"Jwȸq;cK:Me!M~DXF.a G/F@1%$gFFj>t5FD[W3}.?i:2O;:WkjCI~sxa*c@tdQ$@ K|Bk^{ʺ'${%Y,ÙN6WXОd-řY 2bP=ִ7 ܀@FU|JݱR2gK͖0i WΐS97Xi.KhH(7CV̀lX^6,CA6cV*iX!9w6 g4B=w%& T#mvȓV6؏o佰o^5!ɣ1/w|#ncO_ ,O*O33:' Y/?3q- әfRy%$ 2ziGrb4]$E$zI4OCxTtN&^hΥaʳKC'`$gˉ佑{W& x)!}hE>=z}|pK&w A@ ?M%X0xk+A{(D7/ FP8e(&wHJ]B??% RŶ1{q_vۖz0Le8+YV(h9LE0&b nz䧬y͌-{ա &{z{Oa tz]P.K nS69R c&k )o?C7&:k&'Yde鎖U+нԄɾ\T 3${tM:ЇC@g=5aD-C%oL#>"G+$Ut˧_9a_FΞ[*39H5t!rx@v ]vL^U{& W󹾰.P4lJ\[YH#&ݴV5V!eU ܖ|T#?~|ESΡ^4{mҷ#K7]{K^xy-7ԋ΍֑nN~\l虚PÈ78{0{gp>Şe~B%x͚/V0<ӻZ,haN TE":f0p-IHzmU.-"i7GQh4g&4>"VTB:z3&!=ax2W{ DT? S܁-e(j'!M+]s xo{ LBb :ATec X/ eʙ.nb_ڗ(ʉGQ-͠H+PEg9NE!_? lʅw/\c;e!7.6jA%S#6?Oj`%># >neUoC`bL; E|3=VfukJv՛_)[`F* ޸LL4C@m9̣aU*&o<<A$R"ۺ^sd>ԕVdHA KhG#vDM[p#zÔ16K}:tQX&rv K}쯘D ֢^ElcRs7?Z[jVʝȎ1\#8Ag(!m(J'ԆA&h ( j* \Y6oq*3`g|8ꡪ|"i*i+o3=ѸΡ` ܸƭ{/-\m [1a钺t 6 DW ?3)据$d#n 7#]A)I[NTƖ=luw,kiКROA>y`NR P#5Zl#d`3!'T'f`m)]@'ta{B ƾ],(O<ϘL~Օ-PAYy@X8´;]y_Z8ol:IDg$bMӍ(Wg]  $ ;Q+ dc8{L~j J3d;,]:,%|]?2laQٸ\MɬR?ީdzeic#}Mk"|ScV<3#-`_I<5uo=Q1!V / ~ Q\SC)&X&R#%T8DvBw.8đP0AJ&6H=k,xHAq2}.XR \CKNPaԟql_NqD#>D+,3=iP6iQHaW{;\(EJ]΂<&a ܔ&vSI#i|8zqỽزTb|M[D`frKap* guE&d(eb##ӳSːֺ:"4)Z!' hjZQk4A vaR͊B阺Ŕ? x8 ~F9YhQꓴf$oO@ ggۑOl}ԈڊB`b;o{w8dED=+YS?a`48F(q9,^ldG/Wsſkdئÿ'|}\e (ӐV-ȹL^Bȟ\L 83)s)I{wKxNq (=`쥾tUK5RC1 VhwTEwDbۥ&+YѸe}n_SO7[6c*)L&nNO&<]Ssty`uhfqЀ r(`TćSZY+ƣ~έf3{,1+PXkȍ vdHzQ jLjmXعEDzQuv9 Mjd&.B;Yzi;Nņ@L5]p=(mpQR'A}k5fMy +-X fK[Jƫ8!:}ME΁Ft5gbpЇ匨UEϹE1Ce?wZ)ھmq̲`C*jE0p)M(" Dwf; gvN+*=}jN|Li ң7X}8vE6%Jn=x~ӎKg]EfYQ_a*XtAus|Q6?0J`3}4tNKq"!caոF=ǘjнq/۪ ``T6tǿwWtL r{P'a|vMG}uE[C2lDTRWUvD:B$8HM,O/ LtIx-a N aNh]y"uob+ڷ_pZ@)f׽Ȍo€)5x@bBf }1|jHXtFT,}|\X_'8V\+ch[-Q7Ta˔FҾ I&UM(ǰ.`//i%jURuVRmhI4G; U_zK6O솝Qj~-9G7L42%@֬p,aO{[ an~NU Q92=V}Q{R3*kO 8y\ߟ"7>xFFe*5-hq`Sޢߠ[ fB<$=O2.sCIblA |U ŷ)NL9SJ] ]'&Xh|#u=^ ?w8ňu  M5z0\ n{EW\\~d%O0|FtB!n6l/ U*;|xΪ:ʸ?;9E,5T]1CnMl*[dyo:JİZIW-ۢ-3wmzr}՛"kI`4E Y39jt$!ջN6D, !XVpCp5L ijb.?i(91 qJMDpXoxCC.5sofj='._\[lԳ;P$̀ r'vY](/S(oN1+*A'kp u O$F}6yה%ȭR/+SǓ-Vv"ލ!VKR"o=~3SCet' 6*n4JeOi39V0:ξ0!'m-0]mCuQ}fDVN3 2/' x@ uu[ b^U$M6W~T-0s3S]CO_`l'Jʺ]ГFO^#_LFO-NʿtA1i;b 9RH?0mRR5HVHJ΍NITO{uc-sh+vKDjvK[k䟬ep*Dk#;t55Mi,HY. u͓^G^K&'~:~ FSuSsDm!g6[#op^}JXDN;~QDN8{j*-zWSВnEf{ݬK UT+'ao0,PQ`xդqsHm,8= Aԙ1DKΞSyOsʼwnU#-Na ijOCK-t% --KD-|C1˧MKm]yHOlSS š*'iY|Y\9HCRP{X{y͇I|iT@:g)ȴ8YM-JџHmm2Ko RWmaMIN,0&ݪ9!hjnT6c&Zܢ9+.iڕ0Dy I96Ӆevbz\N'WW8LU!]."">og/OGQQCK /'co);\={a^(ߖ CWGP32֢Eqfcbb,m^XT{sјL_h jHXT:E@Xzfdqƙ=O?N,-.Re#,_"R٤/fOq-5\ak#^,ڶ~*q} 9M}6غ5vߞamQzNϑ&irks-a @ rPUx~D yBkjq 9u}wSYk*vdڷ`HV]̂o߹ []KѕW)kT>X9Q&wǟ7Y(y'0s;Dh\pzZDoWGC'U d)bXug!fӓ==5r(l]o]lfSVELxNrx=^b*TcCޡ i\  lNS~ l r0LfnD1~@ 0ROE_D$~iuU|K Ke=v[_ZEmQ}lN:}k͗xA.>M;Y:SЯB$Xœj۬e!HcepBIʁH£R#/dzBovYʪ'zwoK -w@ɀqV_pGjH7<}'h2Lkf+$Ͼ fܿ&DP="NRBDB?`ЪWMqx|J8 x*^q 7xז?` /dO[:`sL⸔ 洫uHPW+k9NDԝE~MB]\FwC!ݭ&?Úy,A*0υvxu#If$hu v2'J;w\a7J81fcL. ݓ.эbU!`; JzɾE䐧XY򊅭I KrP~|W$kK ­%_M6L:c8 ? %VYw57zIImTFG iA69_i}=ڗ-9OB+&У2kU67 c]5h"6 ܀g.W}1X Z2 *h:T,x tj{0Q4lTbqu@|q0xRrKyxXy!ݥ(q8 q_Ჱ@f VU#C oI2E}\-h21:wǘ@MO],i TU쵨\V?3/ѻZ_̃QlpKƿRk0ч{KGVu=qEl2ߺdQ97[Zqtx4V>zM= _ g2():ǔ RJ2'Tb#MEXV=3 ѹ?pwGGTXq"?i@8(J=W: y2j٨ejjikuynƼ)4B[DU]_-rB1_]>$Z_)J5"+60/*zJ1P1m/,V|؎И] APkΦJhJ\q\g5pqbw8DHh}Rբ") IA)Ui;Ҙ%So,dd[^͖Bl9S 'w9NL1aֻ @ѓ5/`0iD:ܷ=jW ͰݭGM![[o(%@ 򐸣lWpwtG'M~ӗE|_X/=2_3{r|h.қ{g8F `1}pe"u0A/>-xASvr7$6L4àt-D"2Yh#J3a{Ya@ 4ٞ2^e;MHŸVΪ."N#QYq!9{>m2^-Mm>Ӭv`wN;¶nLg% \j0!S{hɑI~4QO8N.gutIf(]zkrDfmB$}SH)3 X:x7|3SUy1 P} D`C5 \ @<^2>JJA&/KKŠ6+$q9_y9ChSe" H߸uA`* X޴L;diqyޭ~|;xM/끽,Mgyl3k9Y&JqZp 'Y;J3J}6/.iK* "s$3^"xj{8"4hjR燬׎tW/rUY&vjEt"JBu_r 1PMU"+c(#ĞR*ӡk<KvriXZ'%!}) Jw^ox6P+B/e\T{#%ɏn!PG'&/Am2]rz{dWၜ]0~2Ư9IJ.Ȍ7ّz9m(|ۀųUOX ūH:A/B!Q {ɹ?02#3b3.lF ,(#G@s^0]7wht"nZe55X+g}rh/*=0Sa }vK2Pr#|za4ם y'܎]"WzZK^;c|ֵ Al Ӆ8"h>b@}B&hR%T3Oጟ2~@J2cѸ %ヲSwg0ssL 's~IuPYT{E:nŽ7o d@vnߺMv<5$GB2H<" Ba='ܧnT&Sڛ Q4uκ=:h>Y[ֱ{;HPklQI?{[3d:iM.2M4*uv\SR>m?!6 $!䦵(o[!-"TO1QBpb~'+ /^~=Ɩt-]FױKIuP{OPNÖ OGL[M7%A^[KJ?k\/K> HrZ-s2ȜFZv|Cag6[ڹػD, 1B Žuؕj%,PIj34]U)Z :x$Sy'ё!qYyh9>%k$"P ˎɎ1w8éjSYoNuKQk-3)t#/d#@ssaX qX1\E}|/TN;1}@3w(-F©<G:\|;0gDQ(?C=gśܽn*DαWP(zYggٽE>q4S!,V| :k@LEL)qk籘)vx]6_' ©\dunC< Eބ3u)!䱥{XH@z`4&7}SehR9 dI=Cr5!F *S w@mF6Slf.:~%D Rdι;L)ɐfڕ=0 w-q]DJ Wq`56k #|!B[Ȋ64DcJ[b"뮣;F$/^ |  %CǯvK2_95{A[z]/8^pʭ'kF[~#Fzy@_F55Ec!1<*JJU Tv>8 W+e@?980g\%N+2%XyVPZraKco>V6$[P̣vj7veY Mw/e]@W/.'3B'Vzn`w|h>&um'noܹ\3 ~}3(nuZp{if_k[ S7A^4M0M CD2Lj.Qѡ@z &&W'b@õ&=u'mr'sUäY*31ZA~R0\̩!W5BO\qW~ha҃pۤ*aZG9W=$5{.WEDb IWo1).6xN!mLI2) Wة޻Os!]y+,\iBn79|+w yweEuK<)ӳLq# ̀1SS\5* 'z-o홄ªA2o c:X:DBE<3ن$ڳdI__Q_`kpԽZz=)" "ظ'!xw T &mԤQL:^˔ӊ]6B,wS. ^F)X>^)H[l_Z™Yg GK$ ؼ>i ԧ;D^+ U}\F )om+zU99%[ͭ`7^DZ"E -R]4cy!Lp-կ4*cEiunQ]FC*U'{XW GO# І`X©1?Hzd>)ܿxG!3LBpP5yܰfDg/v,b<gb$Ph:sCd?>nEJ}B)޵VW>Bc c|wԖuu;NXVN%#^6S&WڇŁ 'mvpPq,xvSI`jĉuD-:Z/6>qN)$ܮvڣnB3w}HLr̢A o2n-c ʪW68X߲`q%6t9@go6'FaҤQon+;N2i||ՙIO((W@vǹCVbRjJ+AηTۘ#!|bj rV@o2S'r (cQ/m}b7ERA"iEDQ wz$$ X!֘- ̧k0e?`1K@X IFĖ} 9c1e=݈?҆Gn 6[1vЕ:^X/ŎPp7 0HJtB'xhU_+yMoS5QGWsw ָ&LU_TU!sbZ͂z|sAxT3cHe@H2ޢFH&)bGd<>:۝A'VIHr5n*F=O{Y_s!،tW]wN0@tUIRS $ֈ#@ʜWYA<À]ܕP']-j a3OeWm`\ޛb~_Țh,'~=MH?x@%a`fUKR?^34 |n+wb>q^eE(K! j#|)*rL[Pid#Z:Hb_,ނB9۬#OC"*VlI/a( g4AF[WewiGHa5|pZ{UnU & d 4O큌}8_-vb̩ލŢraY`,:CLGK/; QW+Tۦ[&&y "4KFXX;L"6kdn}bWO/Vr`䮊hE?RL{u+68|In?z B)rlCj)ARG FX_M.]+lViz7x8[`dnti{nCi\R5'ȩR)C8}ȯ Ve9t2w-M/N`Q0+?TyVv"#k[xT]bՐdEK&A3[h#j;g:5maz$-^`B؋5=#ݧ`a#B&-b΃ZeM@jMu`Є9w G` VDS,Q>]H|. 6u3ZhkR:Ϗ:&d ZzV<cqK@*1}yk&Ƽb.)n%%b0S#x5;b>ܼY%‰<:DJW 8ݚszzkA=e{(&|]/w~8buXɵzD U:@_.2XjwwرH L4 ssԡcqwDEȉenj0lK:GȦѯ&1zG3;d=їrDNILǂg_&$n+*HMϟKo@W[>3I6Q܂&Pov&w&Đę'ZL5|<`pEYTg㔌mBX=\zΔ?ΕY ͑ųn DAV來ϋHo# :<22u}UI-:/5Au}sV2dSqV/O:F?TT03JoLk,q3#2g(rkp8$e!R{JfWHհBԑbg3KV`++%WL~iZ4h_z BG䓨"ת+Bܡy{^Sdg1L ޟ?3S(dO vLQgt/䴇{\0j:9JOCRZH=bث["޺6 =Noo8mԦX=S J"%]рuFE^2UZ3ęi_^J.Ng.ESѨ JVsHHίf,^}% N)?ͤ [24WBr_E2%lhlۂ-`̚p[g0c[F@*_rv5!3F2(}׭q) ,ԃXMdlCSCUqx\MsMli>*FP ~b9sg˹Ukhi^1`,1qԅy6$_Kc6Qg{"tO =1 -z$bN G%ܭ^j;X޻tO8Q<-)D I;>Қ0,tW 0H*қJG|;7.12p]VNU*^yglY?#NTž%P._=]v.K /cux5(.>i+ޫhdWUdE2C( ,G{_Zl=s/au(?/j< $Ӈ6k@V !gV\MD>i~_ވ˲W:J;zM ?Qo77= g1m/RskPy.*ь2}g0@5BvyN ߔYzgL36L|˸^ቬT9RVe.7%[yx^t4o$^'qVй`7/-z5`+c7# msw%*HM}`MH/Q]7\kb,Js0\MSnqʽq-2`Dbeo҉OA"0&x5yn-4S{odvo`(ړYR) [kl&n4h!Q2ڐ#v[[AYˋy>6D6EIuJCj׬QP4Mk:f] `L$Qi؞+Bkp)" Ů,Q_0*gEvMZCNrb!nɵ]c?5{&Sŏh ndt4UCu#lfsdfdk:>՗{78džV:㡟 M"DBoS0';s7b nZRLka3*+E?h],֐5|^5Ku> jtpF?\{訝pjZNOa9Ԃ\hDyY- |\Ʒ|\F[9{fκҼ[zz%7=Vө\PZYl%3d\{[s*+Ў-G#[1T5"|׀c1lU5Nۄ!`hV(Yx'R*-o0@. Q=iܢa558S,%+)5`z;j#Ւ&Nj|Cz8|GU"ՂgZ%慉4PuOCPwjM0y/y ["~brX>l}8i,>~׏$(S; Pb:?k!je+ɀ@"wFMlʱJu##jnKއhVy^LI.f#N}d0B0Am>÷@;?*T:{: "pi,F*tQCP'W̸|9[uHQȻ ¹0n+jzaLW'vh~컟Si աk3MqcABQ14!ջ,{_`82<'10mKh^V}]oTxYa^qmV&Q0Gn/2e9"8+&H:T4_ /Фeߧԁ`.5Xb%&!$-{vRs v@Ǖl7+M5,Iƴ5@$0Ǜ݁C' 7ovh( &q(_wq`P9Q6ٳᬗ&鰆ʅ~'y\{LH:K dj&EۼPlW{d0 '(dCV#WxJ!wQ=l{gv:x5$q$jtCF I z!%IL!R"\y ZxVO<&YIIC?XlY4r0DLQ/lD3SP)߹hC:YS0|% UE#Whp"ycSkr {B.Jx@64".ZJkT'(XB I|koЫUM:Eޗ/5#v4Z^5 ud'.*Uw[k\͚MS[rcqpGhS8@BTh8{v>d%0D̎1=}Je+sr8 L*$B@\`Įǫo[jE+Q$ŮЉ|fM!aqLgֿ٤Ta:ܺ`X<m!>& 7l&o%Igko`7xZ Ez#5KZ 6?ľ 1 hD4^ ڤ`rD>q;Ј3'NqYݍɷ2Da.g! APlem4'O7uT;]W__hpl|2YI)24̧Zky xˍ\cn}!/^mha[ ^>HߌtJճfbyd(j| ,D*-/&c(I< $OtelXy՟_@tK,!N񂳟d$05M ~r=ӟVꔨP!,#$fCZFl+_<ٞ4YC )PyZmp\זt n('ԩ8` M"X0 y~A&,`~om-=Mdf}3S8%XbԄRS'-U`o:[~Na|sɉk! 4(UV?Ѫީy_Q{!~]JSɒUe ԌI;Д_bv.sM5BzEJ1R 9s"o ,b!7 CJ)"0tlQ' Zivۿ9itxSNj`F4mlwKHyM.4Gٟ(zߦEHAP< ~ +C % [{y-" | 0G$h(uSh&ҝD'/ݗj{S] Ҷ,ZXBM2Ļ,n~Ĺxu3]YơA⥾q&CDED|B? S osRSwBl)uH5zY,t 5 ]~2Ac:> p`NLyE4MFe@ft68>Ffos*e/FgJxw:#pG[/Neh}˗v[zG/z;e5o -Auy8Y"oQjňߋfw20Du8 m!!*l M w0'5a;aFgfn{2B7L+k35@J-5<Ih3_ eG=zr-s VGDzw]m $f<OX\-C%Ki6Kw`9k:ziZ.ޜs8,|Bd;9*f]-.z&XDd,3(P;ok$o%m2z M&J({K n~BEX k-VMa'!<]t WܪK?'bz{p"s\%6[S ZAE[wK!3.X[ލ.:u|SEq A"G/{ap*X=躘+|b RhctGe{en ̻ȚB6@^31Ng;j #fc ƝۈH ;FV)ڮΗO˖کwi/X[L<ɟd 5PWXcfuC)o~V+=:56Iц*xqz7NU Hi ^'9 R*U Ov K/ٌ+񿡎*e3[sk9>lڍ8XKѷ_7M9[ TR S4P & p^0aNbё%X!)} Joolh6 d̂g2AYS빣AK{X DPhr)؜x-+z:?oz|C.]RFP]e;-`u2J4c*M{VӳJˬY&=s}JJY_$cר!m*ioR݂,߂_@HP`*S9#9&Gfs:{u yIbX(ݦm@.B~o&& .&n@nD|elL@x]z`"4ieVjK K[bAv ˁEZ`UU[̂}]9K/ǣp0iIB8l :ݷj`R4:B["ڋּG:oiS*#'?>6ڙ5~8~oY1|}RYt![B j:ӄfpVA_ ѽr>pN,-=LDc"VL\ ze0?6)rf }xB⥮CH rW/b ?n`jaGJ}AmfrG-VhNLqlZrZeUE7+<-i\ƎP0CPu9]fՃ*Hb~'{ޤc].2Ts $E}9u2V0bnuY6$F%.`GqFZ>فҝJūi3h{3Y0CoK),+bꔑ@F%lSޥht =io3 no+Po]rQ pK/V4hNiNb"oܒ?*ٛ$qtac#nZ\i1\GNh(BaK `W\S^>bIAښ U_bIwФKx%z'FyY[ŀz~5˵kuz`f BvN!ˠFYL5ڡ2x SĈIm^H~$+Ca5dJe%TGZ L܈n֬`0N*I07Fߧ_ .ܛ|瓇 إn)=kfm&B(tkǘ򝇨et\%OJawRًI^bs\?j;!2lH;O֗0VIh$5 q]h_2ȚPW' _GD6\d1*M8In'V|xYJ 65Ky~VM (l6ZX:e}W-XD Ι3d0syaYDyeL )i+bXCj[qv0|l=['"svǠV*Y2.PzමPyQ :;zlsE觠n̩6yzh9Rb=1]*;PGÙnlPVRTҫƖW&X \zr2!df" ^%u>S0-eˋr 4#TZ%Q%ڴVlx}?8XrݯΤ|N^Biysyj7] l'!CdK W2́Ab{rtHBE@I8Z&#'M[?XN(%gE3Q I]\Vcu[;8 asjۡIq2!,.)_"*tNf_̵cQQoW/k#ƚumY~uzgqV^3c=OX+h/'w=jBXW{GbFUVFE#yo=s\(m#2$MBBM\}6^ NTI7A-c}qn69FӤh.O(SFԖ +呯Ґ'ns՘/]Ӥ:^]!E0Յ~-;g`==@ -ETKt#5e-S5&6QއSANVkrdVtrm2_~ԡSōmA Z6cp,{uz0F,WX&_Fx~㾢*TuomMB1[.hN"7{9 t7«21t'X><2(;~]N%՜z9MRЛK69 @H/muǶ܂tD*SÆ$埭N1kq72+e=T ~ʷY!PL T. 0_》\GP09F, a nEwAChδΧ-/HQo$RvVHqg5udq|3WA:0LN^noAw)* gLb}6C] TeiK3աYyD>+P)YjZyCw>5to{Λ5/rI] ɡy-qk?3LuT-r =h{ <1&j~ &jIu Z74}Tve lB)"t@dH Φ6&ǢF}0/Ȕ+~L'ٞ<['qF}, $-Y_szb H e^t^,v-$f09+[/63_;dF,8SFBEg)w<\jxR^Ouw)u*oߣʹ9 i ҁ1[A 1B"FlQYh)r.3%E]uџS9Z+$!)gX3( djֱ$bn !3)2>bjv;ƺYnWt|EyzuE@su 6cDki ֳ>\[cZ2nO P*|f>eҙoG&Cl /햁Sj Y!r$H,pQYxW.QHwzSJb=?X=g7Ι>)/VSmH1>Y{sjܔ"M"F'iC$vW/%J]t^ F)vOVd;us&/C|eY5v䂜``K_H XD*fy6Wq.K= 0 ?l7"ώ7.2fF2vP18fzS?a U vѥv]mυ(Bl[ߘ[42~ % Q9\x p{`U.jGP]N79Ø1b*m*]AͧMu~9fá7XnAx^1; `84zrD vڼ?t8uY ^ODE~!- <;wA3Ta5|5]y,fFZ'V2<,dUkC g'6QE ]T' ה;G˝Qm;zE,ȯ^4.m8i L4 )p9;#g9ٯnsXI)z%FZV%YC7` n 3ctѣs71) '7ÙD*֜.IѿN.JAl^pɴG|%&XR~k44M8R.?h> kUYVxIeGdugT6^?c]mF&ey?@FZ] wқžzWKGw%/RbPq-RtnF*h}>? wLǷ[krr~We 3<}` Ǿ}W3p&;@K{}Z=$5抁nߑ][44%3+k!;r$q̨us~SnM!2YY )9f/L]cdcoQ.jPT2dDZ M{Tͦh .8Wvn琸;txkbM<|V:GB~XPktX (8CڦiRZ^5A ?25 cy&yxwS+QgEӥIla+u{S=ޕ/}z=lj/Xwx/ZQJJa5D$ViUY^6M[+\o-ܻ ŞIXVhwn y2RF&޻8o_!W Jw+KAcd=gAŏ%a=H(Q|_c]ߥu T@4$sy uc¨.%TY#ۮD'<5_Qz:6ZJ^* B0_a5S;}1{ xvsfQMà Tl̬@8$OK=-θ}q1JUhMB&IoG Q7͡7>3 P&5b@YZV/ |`R:ûXG 9adˤeb6+7Yӂ Y9S^Ů/2:Hn\$qB9[XZ tXZ)M5~GeooT<ͷ[eq26D%n[(x'9{/xW#t8]*'Y%me5|: Dsd0zKC:&uud+ Ky L垬 9B\BpSBPe$tm]8kɄ ޜMA v9$N%Am)nyM+o%T8'v>.œ@=z&}S=VdP[hMO@* CP ]ca1}J G|pf2nZӟǎf dSQ-)d$'̻hCҨ']vhxFYſBOpM,>0cEJnƸa^l._dk\),['=,f̫Ox' ̺& v"Zfq҈zs sJƍMƺ y2Ulx?vPffW淸Q H| på`4痈 G8!3D]^5hmV2KE>T#igI72dYal'f4*i}TWl@Ɗh!`]S$||pV% )).$:j p p$vIxߝ) VƱ(7to|+:."A"mݡ~{"2yӕD! Vi~ HpL-yeB:[G"\5ˢ2y `/zBokGFVBB&$})c+TGoB]P)@ԛA4fE(>+dNgC;a{,Ծ?'(kgW O/[QꟐ^mu=:14mBMaZߠ,\V œyڼ=Edןq2v#u:q7Z3KrLH/3M9hMF8JsgzYO0!Dkd7=y9gǮ@ydnrz/1+R7؀D)ǭqT=e+0|6/bxդ5j/IHDŽw5!z!jdO J N߀]&͢?Zܜx\E9]x\4J30xc?kXjR_撟,yҲ3#mBRyj8UDVei\$&alx@I6+uAtwHwuIoLN3NmW㋯Vx1Ad5Ze?ՁpT94euߜF|5;b5ǝ[S5.z+.s\$y+).tu/- [@`d__ʒcIĺGf(|kH~vc5k+64lXEޑ: )B$?Z;'$w1 0HtQ103g%@JF/ m#4K#(!#J($VnGi0P_KᾄGC̫5\dL<'zk7u`X@y<M yu"ʄ՜bB)Q.aǼw{K"1 eիH1z"g+[QETH`oo)z wIcht9~UC}p[3iS_]tr?SywEj oh__8Ezcp. +U &_'>j3=O0%"S 5gJ -uݑI`<_AUhxQvbh7TAJԨLR*_3\9H_|UCu&yWdPjLv2-P#\'/Lx+^OMtXgʜ2.b-1A:~V+ru{%ꨛ;Й&gΜ0%4Xj7G+c&L._} ꈌg!0SD6NB_wֈX˔˚ Ttya M]ɟ TqٞNa_*D'UJK\H1dZ4U2Q0܏n]W*._-!(CyV2nkz1hR6~pm)6A /ZM`hX۳̝[2Ju"]0V斳tiΗ;My`![;]hGH-eB"ɯ2,\ 1_䲈ҝ?G6wf,%ևyD+锿Mbi$t&Ppk Wk te)b1bl?50bWၙ՟PZL1j]IuTez^PMBr;8!nB5-/x W$S7 X ln&& 4ѤoSvLsoH)@* Kb~uGMh!M@sCeƵxܨI7 ʫфi*a"*1fVqZpxJ{R=#oEJZͶB؜П:3v~"dƐ &q (Kb8<8 ]cE1qƴ?C4  1c>Ρ. RȖͩ\5Dsz2eѦBu@'`ycXM3݇A2;QLzԒyTWQݙx@w3 ."I1Ocׅ5_̀@oZ;ozӫxUn&@vR9޽!@i o`6}kZW>ƁT~3_{PkN\ @Ϊ4ݯca˖a٧|Ia6MCU.!YM \hWw+K22Nu ] 2[ simM'[j Ķ #ڍef)Pg00"n"ihߴWpFoaTEK[GNˉ=,_UBlna! $Zbx7ʼ? G0я:‚tdfvᣘ#~!j5v-ܹ8x07v?Sqq3?|im?ִ4ّt2H,0ru[N fF/ݣF|łU{Cqo> T 0N8YLj"V*Tq9CeEzQhNBR{V`tk"~#j#r˵G؋ RJQcKvBzMа]FuF)\*l4zM>$=Ur`=D"Sn4 Yt8kΑNВFF}c>$ 2 ) laܙ6? n*&e/2F QJ)L{[ f!DT93Yn*qkQd~!BtϾ/iœQ,1F;Q 4FHt?Lk:q@|be44?X c96Qqj@%t9Qz)zM"<,*9aLӹ>)WΉλ0l=s>"ѤtQ-\֮``XjOz-;"2fDA*橱 yRWNxgos3::%1r 촸܍.[%q8c6XS"ԝ堼@V5ڑ9V}كl 4u.sA<6P~U=#+4d1^r[ǬQc'8=aN7M*TK1(t=jMD(5GRa s%, 3vGW,jn\- yDdj\VWf}!`me4b ui'6_Q'_΄8&)~rcpk2NqG#aL`+J8$Mż\*yޑ+Kؤ|e{Wq%s- T-Tc7Z25CDc3>ݵ"Fx)}ux{;AVh(⼟5G:^L`)M3;VQhzPC" N#c.0/V2696[2!k>g?@ݛ\+ʰ-+r:˾a٤Uvػ7٥'#(c~+8G`L` YlH}}&>a2 "ͭ_gZVYVmJ"D=r7{CdG8l@Px43"3^-/tHt Nx4W#?ea{a_$Y2]J^^b GG5dn͆.e!Z6N<JæxDVO i1 h30/B6%3`4;>>Ӥr9G'uN6:i}.|M Ӈ6ް(ҙAנ5%ԫ<=>Tkzc[Z(H41)jdҺ4t6m$?N,cs;0~وIoN)gޅ琹腦#WSV瑃E.OBz1ކ?TvHZik>0<*2Z<]PUKuI_ICdƠ}+<[MD+bu;t0 ڮNb_D6 3l%=an.]-cdA%dLi:B\'ԺVX>N~3I| ba??, 9Ɉ7O^ҕ&h%ȫD)AF$(]& !v.3ta5&8Yo_д1K?2o}۴V};oxXSFʙIYVfu\g"w'zM1lZ(`9 Ƴ]zqθHęZ<ٟX~pPcd$l%Y}\f_ BY+ oKցU4 JC8yH{Ϊ FyPֽ6n5,:{| @A|29ؐ#i%J`ۆ ش֙ESdlF4;-Sl5[61@K[{ŘH)_J^tl? ڠQ. Hʣг;|O@It?1U/׿\04/.m{@&{q4mC=o|y*]' ݥ)xzK9sS?kZa[ouWBG:]SoԢQ6MM?|]*>Nw(ᴳ Vҏv82w7ZJ}К~I- ۺfgu}4ȏ*a򞷢¦Qs3woƯT J7@Q&!lY:^ZtHƬ!>P̍η)Zά>Eа=GP!ނ`HL.!}ޥ4V̝>su%s);!?["oC\8!K) (!Ӽdv/a Z 0U^<_q<T*4b3@2bK%9Hlv^_ͫM3F*b2_+oA\3av!@PX4cLǸ/#`M/ [ ]L9]R%px FK>Ήn/HexDuѣ%P9 Чe/Ā$ n|6 P.!܎_tvgg;m3nLwY9Әѣ_3`+W&yCØ||Udr3oK Zm-/*sVz#L9R)ab ΐi7[ ڑ@{ Aرkpӆ1zv2aujQGUտK*!VmFD{Ff[mAoᩕ3}.ؿ9%& ȝ *w?\?MV*9xN$?hʨc9[}io `v+Z}7*Uq-2`9Ssdč0 dYYxHrOӖ8UʤJa x :: 3yĪV=#YXVYy8A68,[]mE'5A b+-#Wfx,ʽ%g &Li7! S(ShωgZ x{Rp~DKԀ*6sF54txQ$Cp>h`|̎Pz|l4e{CYh`g` x2D[`{zo4zZdbx/@#7Ɗƴ9Wm/:[:-! 9/? ipWǏMK%*/jQ]W' =Do玺HşCQضM+bJ |7QnôH? ,8NvCNMӢ P&߼N]&ՉV1"sJ%|)b9>W5Μq4_ kIe0 l& $Z+'?0kb^c1M#)AmR.y%;} (er7a۽c"$Z+!KOGwToDՊ=1X \8_'1帱YŪ +Vn%j]"R+Xa1LO9BfMNk-P6Q GU}̸g*>.V]iV$hYxO1[鹂~­8uR SooGuN.K,BWbDwӕb;JKK01 8s͟ -_e}l8GiȰ7~4xI͂z}6$ІPV;11HAQ4EXFV!x(øn& gtfrhc)3̥t8R{N*+Z=b˦T5ƪh!',Eɞ>vboyRb$(-w ox0F u Wl}G֙"!GlyG0E6x〧B]-2ZND8e wa+Ch /} -2-u>V00l m?m{ӡ54\Pzl~>-:i?5[qKL v*P]F}>ފ`@'1-\>_lh; %W":;xIn+v]&*N:;qVZ=OIz|dFNE6A=*QzS``nA_}eTCZG^iot\ @9?uH?a5?x%` ӌ0Q)<[m 4D7-Iϸl?0Z7R̬B@oAPm_sAw&L1lwC*hw'prQA 8[~kx%Yg<4vsVZ*bGxV [X"^aҕBh3^;3W'?D6vH@(ғռѡҎ՘;9]zL[-heF jO]1+K#9\5`8?:6hYa ӋIN$e2{s'P5Egޤa霵3uHG0!BӳXds%$W 7vF#1:ho=$s|w; L(U`>aCBUgR&yőP5}ȥu{Ghcb"hAuo 3X Q]&5hfLPVպʕz7xoLv vc@+.%GgلⳤV{FH)#˼ t)"-BD`ܰV򜋋+4UXN) [- ,h/a)T|yC=QI`!5p*  Ҁ iq_PT Y>ŏНıdSڒ!Gh0n=e{V:vL]Hs9 ;&-2XT`xkg. 3=B{$yy;gSB|eSv0]T n, i@J/D!GKyͣdc&]g osг.XHzSLf4C>ٴsqϙP;wq=i|bR>kLNn:,V3icN,SQ;9+EfCdfNʠ;yB]cܰLX(MINf[ˠ~̮NhZP(ޚmkWn脉ꈂr#XԜ \X#bBzZTmUcoTz!YE^lA}lGλ.8QܧBR&ooAh?V9O!30eπYt=S'mr'/2ʙw+vB $2Jqj_`qP~jB;ү)U)lW,0(0:B6S)#^σܥCX(<ɴsp$*qM7oF#4r~x!zqCz O03Γ@n^T;zH0Mz-f}.hQ"yѯI;/} n_А@/'S]ز3@_75S} 8!=)ݼJhvD.֋y|'cwzQO[r|qVV.tHKj;z(f*cܕ`C5us_ .P+ؾG|֑"YTKFF$VN 0L ˟uj9Cr[לv. s6CM+)QJ,hM3tcx:Ksׄ璩V=K| P=7xjp_xɮ ۦzO}9k3tu7K|լyvR7| lKq>Oud/&i= l}?ZM}l*8lևhuʠj 6^6L,< X%y0MiKhyu5EپEǤ|.τCkm}B]їwhU2L(x%ȉ7I+*ȭs,|f:yzQz,Cq2X-ҭ #eODw$>>M^|U~Iﵰ^0$ib;;@-M7!՜qNL\|E!Mda7-EUWk);Z6m=_:u2A($轼4+#p"L %sb^eq~;qyS.6\lˡJ68%Ug z`_U3ޤU-sʖgD+ұw:6uW*79u"J,EQAGYT\/l/hfTt)(A +Qr?uLC;0ҘߓZ郘~t ۰x/!opr?{|SF83j8FJX>.=b+ApnK+Ͷ~P1Kof"PJdx}HFTTw&2yb3!*pPi ʴGf2p]n v9*Q3uooA츄{,-v3ZɱG}!Hٝߴ`"a[oomMwŜI ʥRCe,QYi:轟P㘡OORȯõHrr9?qeʈ@_2Ɏ8҆.})[t#Äs`V }qCݑ08Sw"N ɭzul& ugҼDzQ$KO/d 0OWY*&Vȹn7Ӯ]%i"9,\sEQJF*7L( pg@~d 00Fa /_ ̓VU~Z:M" Vĭ0Gc=cQ5aD@c4CqgқQ9Fzʼn.y̧I`jq#:uRP4JG HuT@}ԃV{eA9u"X}9^nZbT(4Jo }l#YQWl4tkvhAo\u&>9Z/|~v}',h a0yI$="LzJP:O6=OgW E|tL5; _{aD+mh30cNC6>.u݄ȋOL=Y_Z {Ka( CэK'~M_ E0;o-,B~ѓ*~i^*Htn.~ބTu{^ҡ#ĸ?﫜G q}\f"Nc$Ĥ4Ow3+O7ܩhʘBC Eľ9E )(@t.(GUZWd7G @ t.E&KQ~.|ŬK`v3np-#@+U$A JQ!¨/D1$1o,Wgܭb\vg{GX淽psa sӮa4?"9T( 1I;4,2VE ehڢYZ5oveH} }~dD~ / C$K#=pF3=[ {h|)StA!.k5> OzRC!C0_l|!A.[83\zt!K>s(1'b(ݬQnRk.ovYl٤p_:ŗڣ-n!-DHrT2:,?6~%Yi(11FӦ8wNj]aR\T@m~#JXK _:u)?[< >}o~%V[FV&YQft"[f__*p9Vɫ~ HI_i`9fV'(u m&!f]#-H-XeiݮZܓu(g=A:G@\rsyh\dBX^>j6<OBoňǩoe p8|5=C?|YVk5}OxTS|$^8UFvOqMiz5z± )ou##[EZMb' ōW<42AΤL"fW.4[kXٻCݚ[g΁hyU! 0c%l2w蛠|gҢUW(>+. d="hیJ`KhxҚ%pXHhheW.E%Պ݂j=>AF 8 HSX3Ǡԕ>ASf5tO5e,e]jXi kBGy/At?B*4S(^r厣ሮ袡wu|7',Ny,:O:ogg뫠!+b!J28 wi@3.JBC$e s{}Sy~Q<-TjN((t{a?ny(é|+]dsOch dΨkFIos0ĄԃuΠ'ALk7s8;f"鏼e}87TV@`f+O]K6Kݰ l=^j%4Vf Vu_'<^nO㕏eձyjs r,`ׂ0=07ȦH I,NJƘ{oYFǪߚeg-)|qL}J #% n/Ħ[f?$ qZp{lK+ 6UaI"PNgiY風"8H0uAF jB@Yؚz;@8X8gQo$dl ,w]ws%C颥/{% jM%Sӹc)Ȥ*2s=ffS%jS)mDE7)=!p*j%vL⋲@װfiK^@TCE,0S ¥LcWw}\Tҿʼs<"Suy/X@}ePoh`#1GxxY&U#%&p5HMdNIC2b\Ƹłt))%i; ORӧGLuI/x"126m}Fcށ#GL>V95AAhV PCf >Af|:&ۂb;q^ [N7 &<♜̧r*U%AJNkdDDBwŲ_B)0?9@yԳCFM ~bF #5lb^Fl~YœJnP՝4%;eUs]l0>@l_|Ar2PC?$GC6Dfji:.۠ĸ@,袇Vހl~^cw!Xcx?{M\F Z2p̐qWqPk }j<~I"کx y+ԵtXSOTPwJ7 |Ȭ&"1_PRm -بpFT,il&gN€t:t Fے%[\u'`[zz[Ibmr$gV#&|t=V8iFu;ow xmɝYs ,OU 6.y(&ΫB9ՐvPo|w9GR˭s؃6<0PpZAst֗eVveotG%Ċ0#OU݋ vJ^;]H!£*'бݺ".IkoȫORD?8€ .lG!NnljDJPܕ7d\\8oA^=%*j%H^PWBqdRT)0&}o>^e|yt$ڔbDi ND܅lMIQtPg2BU?i>O?mb(J?omtBJDvQΣy@eKr۱)؃GBA4l iDJ} "!c<̱<KjT^Z_ 9k%_CQ 2wRikG]Z5qjx|鉱?%&P#I<衈wò$HB*/\zqI<5[ 5ˣ8Yo^~L Z$?o X>,&_=Y2zMIҊ8fLUa?<f!FWՕ\Z Sxݯn'5LQDirFŸjtnj;{uq )J1$JK}BK R>m=ǜܟY6t,p/E]*] 'T!#,Gj.1Gi#7;Oc$a;+q>)SU2P[toqT Uk6M_:)4Q+(XUnQ2F=鎐HezB9u:\A\z 3_T,j Up#|a-(k{)PJx% C c7{ki _s0f3V- rUOYh~`FCyʙنRWzEH(s-?~(hRΫJsS.PSdE,QQJf"9TV@JdžܩTnyщes4HW˘mKk埼!ZNUv3ż:AEBc⩨K? UYwHTFH2+ɩ^$НkAJ-]Y&5V3ӑU4}0I{`N('9_N@ኖK%QI 5MX;]R;eQZ7^B{-It+ǰW%s##q5KQ@zF"sSPE+Rg0׬T;8x5ubofjǤCY,ks%eޕm?UmӲ ;Ey{d3=%mN-d3&}q8k^Lg3o:.4̝ $j'u*ƴ iLG:*f.ry(A(MA4Je#+Y5Z}WLpǿ!qz)Mp*%+IY)@HQ}b>0#}(۰uE%^eܒkwJÛ*wځ 5@A~I`܏&ig&OS%aI\qkdRal3%d^C; zF[4) J𯴝=CS$hOi <;)t, XjK1UCxx@uv9ukW^ e/+SaVLo5޶6?NZq>/z@9̟ .ӝ8_^)+0.O L|/3&!/}?;üטSl0Ņ5KAj,F`g2=v>1ev &C\ӧDZdAckrަȗ"` ҋN_`Ɗi*YtvS0gk\Vύ,.I|seϷZ( 2z\ޣ+NkhΌ󓜥s⻟~k5NS!eO:כP8p8r~uwH-/-v|htZo]\RXI+ճXӴPZi-)CWs msQK}we`%Xh'6tn]NW~B*uN@|3h Axd و:HCO4yc]D2T[Je'o'{8M{AfgU8n`NܔuEW c@&?={J)Cm^IpD2-ZKRpO_ջL7H5̲u)y6d(yr"&It%( ~AQX 0~G!W> ϗOD)? )(o)XL+T$ !Qu$֕J[b"27J Yli{J`5wެ0B91r+5A/աܖNKwP0EfJ7|'"7Wؘg%9US4W <ic=L`ҽ%%P,X{)Ƹb n\y{Řp#K"P w*υP-Gw1;"ӸWo>Bt.Ѵ7Wmh ]w-̙XCa2hf T[hVۏ,=28tI"к<-rg"Y~+\rU4C" 1 I~TOb[:yׂ%5!C2)s{N)0(S-F16~ވ}rTaD8{@$MvJ!Ok|M\ؐJ:G.B^47@ߩ6J-󞮤0RJwKeTF]NW^l(;;^]qa}M)`S=, ʴ5s*dGa0 UGhwgGZqH8 ly>!4t/>֗pg*C` 9?do}hT' r4irT8l:'lC6,(ϨaRO3GF8[eQ9lV,rCI!IA}! `ʏuK zVԙ(daV!ӮJYYKTeى"P5yj)vlyoWRK_#*ɹ?0זjpYnk}IP ;#n`WyR6˟i%!wr|-8[WfOx2kR!J`*<k{3W|qY+*5:\j<~I+l~]Rwj,?yQ%!,&j# yHeLThy,CQ8ح &X?bU*%UR' `a^T[vFhHv~h҃4K'Gf y"i7]/j4cubzs;tG/A%32*6{X>KMx$j"8v֎s[ NJ49",!j5e*%7fb !0jkpC(4MV͖# A7eH}baraGo߾GtVUE6ץqLsݰYݝ 3E/t*dF\m:iR6U}!{PRH5dhv[q݄SS|%|@<)E#NZȒZ%] (y Ua}Ty!쌵tb l*~*ɂȸKЭ&plAHs'|xb?Ha/L䃟Zg>*ϙ\ zPJĢLzFO6'0H2b=P :F(Rt 2jcLޣ|2pBfku۱Gc~ד2&򅐧>|due˲ne'37 1ï(25Q.84") B46ǖ  vxHRR`a$[Hv glWZdj7pקTc@q"Y/?~V{0O=Z:xxM}r)u1Opv^Z"/篸PhJf{@&v[$A t6| z6j! .DzcAirm`-<-L)|4- dWS+ydB|1+{<iP?DI vu ܮ|piN]| EIzմS,󎔸㉈0_\ 6 l#zw'uA~bFHxG'HDC (~]o n9B; p\HR?y/n>woЩڏ$V)ZE#*- --0QSFh:Iv"9-PM'{Z R1׾~\u0 [00տ^ll  ωbc#g3_̘,IJsXZaED0`L,YZfVH.>C'|RkeJ{pExvZ쁛' UC@f׬Dk !}ѶW$|Y-.MGnmxmkfC5)>sXPDB5Y;n ,dyBQ*, S+*Sv/]sG3Okwj9$LJP,327ըA!OV$k=d\X8I&pS̉aorifwq@!CUk8zGd~WgxR Q_s/N+rr|sa&ĈQW&& hNas\ffb-Gu}H3iχ>kJ[!@ J|:5-I z1~9Ipd'x[{"i%B3 %G{}-E3I_z61_r5L0ljaKJ/jQfj),2@y{;h-T; W)Uo 8mD; ce*XM`]rKwgx ,Wsq;)Q8o8L,rڅ9K*H)WȆ_Q`- [cզu_IWPW>ƽid0P';c+Km KO߾Vu{0n7taV< TQFOy, $.*xSyM 7R6+oNM2߰7()\5kߩ߷|i &Uy3?b:ag\X1$J*-vWa4m>nd%FIM-(?$o 7\ɴ O}Br=_iazf!NޕFjOܟ]W.kx溅BQa{HMd27-v T,6&BwjQz9Ÿ1!0g!}Ay]7Cv&80zj2`呶l]k6w=Sz_>ž`A]B\o#<#b}?_Oe%b!-ҽOf!#Te1Q&Jvi%Dt ]o'quj FQנG FNY06 q!Zs†Ɖi{S󲗞+q(mN7ߘ~&$ȧVp E&3+"/(]WBЎ35` "ٲ4 &jFE4,1]4Myrkdo߁p.ҡ5jH6s.X*Ǯke x&q @c+hլ1n*\Ņq z8@j?J(E|FQ;m]On%R bI1&^h{HED*!- z`RPm_@뽩vMQIf PFyK0c/ 观3#2mE7IΩ5pvCCR L }'rb9P c^T R@z.d!{]bÐ"kpqgXRV@8ulU;eZ#r GƌERx欚KP <g;jKQLn7-H#X4JqyDS.ϛc7$( 9rK. 5 G(|X$OzvJH?O[i xv"Tx ~= a]w “r&Nʡg+1M{(<b52p{^A@10#B>q -cn`(ԉr~!L|Mi ^,CO5zcNỈ'Qכ*uBoIe2d"_؉&XvEi|SXF:Ti6a j"|yZԿ vy^%;+ҒԸ&^tdq1)5+'ß ʪסp3iKWMja:7H`dh PA T|n8|AJGycA[".mrLE:̏ov^2]q0UVhoZ-3s mPadNxpZa9̈́,=xkp-L!ȮgJ+S=A`b a"d@ۢ1a_t\tǫdJU2ث2lsTcz(%נG;sobb\070TҐ$9 ChO‹4z GI(@@Zw!Onb*Ͷ9Pa&{Uk<}TdE(Logu=,TOsA=΢ρbT*& *.H[yzhD<IDŲJF0Eߗ/~)@Ԯ8ޒI E|/ M*"lw$Ƌ.HfrY1lb(*PeДg]y#븹 9ѹl]Bm`LP$ ;#ZOl=Q{@Ph- FO>Ԣ-[G||Tpz?4y[ .OXF[rVg[):d&d&Ó\V aY,KM0 VK^M| yQG焐 AI)FnI=|N9zci cfe9iR?ٳQf0pfkFk.OEEhDʚ[hAIe(c=B!O ߁> fee9=8R5 U/ AˬJ(&$^7\P.!azfʶO VA/}-2^Bx"v|#Y|ւMLMz~Rk=5Cʡ|%ѩAWƓX,2QHBK ĥɀVԺn60;"9.BKBOUr0E-.RUiC {GzkXUNqfڎӑŴ}r&GEz_Hدc5k5s)O ߐG!c9rVQnP*%4o5'T+D4S9;t!-:tl4ujK׬w  bB#z@[q5EQ^!Y17 F{O9 0}2,BK6ZzJLPuq3\nr &->zsfB\7H~aP+wdP/P|KrܠDnMbh*TS\%)"&Ƚe;ck% '%Ҿ (JUGj;Z_WQ IȽN{7` { -4HsG2iM6kZIi V3ysZ[ CrO8_Pݹmql; s`"mWr@o26%>F4š3v,Wo;}5ԌWZL!|a._=_ԳT(`wL W˃\"yCly* \ځho%H]G Zv*%֥aը֧xFF]#LCS3h4%J Mdjeip2pa*=k*zBB->IN90R%9cZ v-MKс'@b}jX $бRWf!@eJEW]=:. m;qvܿwy8kUbjí%W,2`qpH*G>^a;YqқZH*K\؟)բ-9T (A5|@9[ro%t _FV*sfh(:/:Rt'=,1<Z:k+hͬvQ ^dq ^Kv7αJR-bqb~P8y0ַI}~uĶ>6ܪ'C.SCŭ6v#aeUFO7-v! ΛCq sUG"gfٙH"ܻZp?k>ւkۄ㫥Ihcp)1"t)dB|46>dWW nj,5ꇶfn|rlAnJO UUNb! "&{o LՔJ2h p:ܣBw"CdRO@GG=6w3xa XͪԶ)E?oc & >&jP+3#ueN 75i$^@CӨZ׏5,J__/0,j}8c='pxM#D81ҟGvUה@0;nɹ>h}Dž+=KÛi#^ĞJ}q;ass\x9 8I=vKrpש8'aTQNl_ZFjsH_PZg$Hd=/UQh oVFRUт}smbE"-E8!8 _{987"œO>U .;Ui?ŦtJ8Mсz%n2wOzըe8 `0$2;J9~JKF3`xPul0ZRp=(bynI5^:ngI,GG4%^j*XiIB_V L(6ؐ{rOv-e^O%ۍﭒi.;FON]JG=5p١ 2T~7fIuY99ABNY:Gya:2~"EװdEHո4 5Bx:bcR;o`H1i,"rڢP'?hێnHϒi" {!u. Ի3W^v|z@ 5͹nBe*Jw]MQ pn`D#/.KMYT@չu!i6INd49KصG +L&1v Rvٌ,}ͤkykxKs5OGB15m"2gʰ].jITFl38o< 2|\{@/M}HY܏UKb<+.z`%^ZOdlz[&R8bg 3LO߅bGZ0,qdO3 ap7!W>߳Feg]߳KI|T :dщX.fBeYtE9`p!8xdcrCqh&\"/6Lߓ1l˷ݛӚzpt3ŵqˎpV0 e kpdV-=HKH=Xr 5Azk]4 qŠ~g=Y1lEXlPwyMn̄eL^͞@q4h\UfwF,3]@dU ] g*Z*Ɨ2 ḁDƵ$F fFmODS %>{$v״ݱݗ%ʥd&\ý, DY y*TZ,GCTc̖ Z6 xAGuHd =#;)H̶/oW&4v4`tgQZ& ((7]GO|-Jl2n}.ҏGрwB%z{;HwOzY8.$b;{o^] fop$@@`݌gPo1z[#{#iߝҨ#CafZRLJ(FP3E?|*ӝ^֓Ldhщ8ՔO&6нwMӂdY1#9Sԡ-#JNXtV [7QQ%DpOf آCwD.8+'Y)NH8爋@SVQ 4ݨu~?Z)8H=.D7)HFFcNЦthZ%5kޝ[S%`\G|5v\\' .!w'S^%vIPm|˲lma5_ΓYF^BR0%I6_Eb?9|lNrQK_^wP{:떝gD{U_2&U0^̳TT{ #Q;,|m74.ǡ 3 @ۙH-0: :J)$py|\Q8yY㿬3/5ͨ,;1Ofh#i~}}RHjrrT,bDγT [$!Ƭ=໅B~}@!px*#E %P?Rk}!I7[;'mnf9I)(ƒyRS/j6jqWvwԘX-/& z~yT0Хg}pR̩OUv[@BEVU|6N,.=e:Vw 4r+10G/\Q_m'KiaV&+Ո탛Be5TrOPA=3`~-(,CSL2SmTc$}6.J 9 *FUYoPj SWJ!@Wv"f%#Q*}v} Yf!Jz%gO:@PкG'.t.gOt^׈fkYh}€uZɍdwG4W@@Gf"v4-vy8B[e21gTDarGlF_R# vDGofsQy5ʹC)';+&}10k$~DeԿmMrб}#hUϨU;}Xuӣ/4`4 0>X4LKzUR}33gbL*Vh D =.#W=n@ z/* ]((b>'|Ϫxy۟e"Ɂf]Kݵen9S=oLS uitˇDyysd$# 1iN\ Ȗ^oǦLWy_|bɑ[&W8D]D1dE [%EYhzoH0Ld_JGmۗRK ҅r{g6jY~1MqnINS[۳Bs{C#tvJW*5?Rik")b{g#qY鱀mKh 0%Ƶ⺗&w!œE\;nŪ *,OK<@s<2{ gxvV~=;X >Lb"SV"@ s6i0f#EvoQ2ǟB q>z*Qӧ̝Ŕ$ۣtretXWIq^W3ͧ>gW'ګk54ӮC&'Rea"`(}= 'àu9?ií%rn]ibR0OiI>/*9 ɣJ8$2]÷&-GSRU)+~a :4<_1Fb\-'ND{V†v7ΛP;+p5B}@kƆwݶӿ(c!P.l[aL̈́Q{(|;-@;} v\~V"6l; zr-'Z|ܜ}.N8FTȯ.m7{=<:-*:,=!TK:m0`RObgi:!S1WPcd6"+cSaI::p#;~ xpT'u,@'|0.hI/a~R)u-Th*=ģ1ަߌ7OBL 3szg4e|->?6_؊HR`'{vǖ::!(h< |~D48cDS Y `UK_!kP&ѫ }%h`# w!iC @OIr%}B=)dfS!޽$v\K7W#7^qP$$m ʅ&J6XǙWt%CNw(T1F/eR5g V-5e+~oGQ?3y]cbl, [-8FT n!: -q~ $W?AY?Ml<%>AA4JUyevN6M U\iY1{JkW#,1 *SJ3 `cL&s R2/&5ٖF9<̠wF7ɢhHTA"Scϋ{ʂcewN+bozj+to§Cj;˘~G5@S"*Jx0m;Rt'DX&zPȁz~A`8?dFHA=Dcv: _w|-dUi X"s/apb㏄)_+'ȫ%8JaJFmQEjJ8T %QFzDbCe(4%L^%@[(ٺ$<~q 1ͰPOtI{7b\In[}eDXZ,ӈ%Ah^3Yz-:e~5٦mpVWu7gm7ǖk|fWfT4$Hڅ#K#B-DzƼj׆Kf׫V1x3dUuGL0`{D_ݻ5`\# 8Jq6OqN>ÔynN*qqdpJaMgZJ{+H$ 6uA |cY~RhH-NTeD@OvغJrE0ESx8Eh}RscDGM yxq\d=j;UHg &lGd(N7I'AáK(&aknJ}? ԍ-)?^'tt[wuε #X]"Nu$ӠLHcwa{9̱̅K6g1F`,L9:Z:tR.EL2)t.l]+Wz5C^9T5[~l:nIzFgLI²Ax+{=]jHw|"=Z 6>*KC,O:UaFrcϲAU-oז(LR@-?HWcZDT|iPWhk}o!20#d"IF{l\@Zٷ>iŊ$]2w1_o9֎6ncS QsP {/ bߊАǼ2)ci? WZz^DL-fK;ԌATG)s ؛i*BI"Vwо> '_d0aĐ=.6 YH*l:8nUqMX*?k3nޗ${#/ ŜzwՔKqBS -wwNx쫚N :w=T~cl H?5sՈ"%'Vh;` `CGw13M۫ iCXu'[;Yi.؛w JC![{E9.en7S^@ȷl90@sY/z|Lt͔-JAy?HcyXm7Wǡ6aH= i2-jh;6-75PZx/fܔuJΠe,IP+XgH. %Bqlf ,ebx HG Tz9CP ҇sGi*> .(-;/J> 9tDko2EU唛mh'p6N7rQ߅l LZu' 2a&55avbh )`dwbA!QiqӗA^ihVF2>#LJc'4JŒidNtq`BbT0LOSz:DJW:_2*;4͝e;U,GMS;1./VS @g#_s҄j'EՒ~i:6L$\DHEc"5J)  ,e:.d8+&d\ll&v5KD1y{݆Te|ٯ=rwhXS͗u4DT{֜u߮)jƢ F0nzhi(L4,xA m3#AD"6oa26"ߓ'6d$n0!uL2R}C] H^Tv[<) Jɋˎ6S6d,PJ\3Zۦ(RY҈>Š3n@yɲ gwv\iy9kRYDh,pbhV,@J H]<_Ͷh!$8 $CQFB7'r9 a&X@b,UsǠ;v%vl\ܵf^VFqYOsxίw'B_n~M<^ZP@iMd dm2sLiIR(n,m{DWu9ɑ\*d؋\ҿW OÜ#Pm Gf켑k@U6,$P$ +5^5v-I|F^\+F@{Ѻ{٫2|*BZsm]m-bXH+2PpWIN >aȕ+2ZpftA۟-]Q'r!s&&d[h`73zדؚVytEO/SYɁ֞]0̆^CG23xɦҪ ?LBfE"h7b)SOd&VQk3X,uH0GsSiRN:Oo <0M}* oUj59aN55!z^9/$CeKv.VoYGJb6Wv-xtcDgcjf2UY5 bb/rǐQ' Wr,+*GeqHkvZ{z2Rݴl/ڔ!UIimiŴ,e]<?!Mv%Vwq>x geͅ 6Ls4&D(cqVe(+ޔ:Fy1^D3oCPo>  W'e>1ectǪ5NAPqk Bz@MDDf m&^~. ÈDڊv7w^ ^Fq6;47"" ս4 =@4K/\X`\[4c3"%_LAIQP|˫eVDtyfݐTfʔ7PgP/5ui5' HVRA2zڏt]&&Vޮ*8 bh1 Q(JOH|u^uϲf n?")1K~5Ȉ1DߨSoiYF>xyO&ƨO ܨ́D<&=PE` +IK6`=R ӥm(<:*Kp)>ve?s aPPypp$,AF9E&&; ?.>D8W\MQrQ#yWL)%HOARmj`%C4}m +I"K>P+]+7N vD,G N*LIjU+6?ރf A_7ߋOsMʣՇ`*()2{h[g O1"`֍ KAQ&X׉e/3o^\"0Xj%O) nj#2秠\?'ǧ!iNM=)֙4.\ڛ :dSIuKZb}y|N*"ޠpoBlE> Az^?V^L.fy[|mQ3 %` -ҋ7lǤax cmw_l~ӏkW<"4 _jl0ׄͰ &,d/G6E]Xh(GKz] J6oљh"^7xz[oVXyT@A;KBjfQ?\O@޶h?Eރ ΠBYwq(!8֭A] 4$];S^/\ԣ7 Gra_(8u{eS`:|S d\d ;sLh1}BhԉVMhU$߰pgDZ&+llyB‚ܙ(8Ego^شs؆}mrc^!<4%` #Ka-G,n."ւAjED&9T̽& pU{dw(QXgրdGXFLSVQ̼N>!Ü'#h!Z=vt๩Kq1y[}tur=q޸2,mO/iMX0Yw\5p+&-F NZoջORx43+ "`-jcgAm*IAO>|[Qז?Oz֮><$q$Hz= Rm5Ɖ{ im>cПWEs* "S80`oyA1Ikw~ A*APNXĔ #F~@9$t պұ2_< ,ʒEv4)}s$`ؘ2'g]<5hc DAars7=cr7 |'^P켺Kwʎpi(Q{Y2nnG1w!kᲯa&-fvXx\v_z1~t3b(L@y r#܈yOh߂GpȃLZa^"Rhjy]Xv7Ҫ;KFE/ 0}lE#?f>?0˗~5;G+0tsG5%:kKFxiH?spH^ ߨF;ѱ2(ry LSJw: %`id= X؀kݮ.>l$dx ^%t|2 hES±W!!ZCTSe@ b!0CNk|\nAESA;oX'N}%FuՕz\&Gzaݻ^:4W_pYl(}߮irhB9y<01/}Օ.ۋUqRu*u J΁(ؒI,w1 4!ZDuUiOXš޻tQԻ/MgtseǢq :kVcMC:N6TŅ : ^KnL޼4$esXwj W~%3)\1%Y/WmH`JUu?ZImjeWaKd}n6J &S(R;iw&˥T0 T?8nv|4qAD_ $m >B=n̋PqT]@,3AqVgkG%c} D%$@o[tzV94D Lr+ELfiN w_)7v0;MEa+L. Y Ak/'2R(g}yh8I5{rnSJXvL&$B+G5s .b>$%WjZwݡdߪl2dZzA={i浴5+lkfbH p>٧"9M5Kӌ]um&;TIC@KYx7T~ܔ ?A1yDrD#dx({ P ^ZZ.:u&mnS?) gper\ kn뷁[VxKpT<,L69XQҜ-/$R^U]FS[¡D,{:&"Tf֫s#cAepضA@MFղ!ϙ@U|YkhS@" @l&M:rs'/1׾6εtWce@{ Jmz C@ր.O TQ dM *1ɑa9b5iY #Ǜu i2;Q1's0\XmXɎ4\ˣ6mg̈́/L-NW7x9$)L<*2up.o_zqiUBt+&5W t0`}5e> %`EDqO z]V\"um.#"qbvw'-COM<h$Tgܸ\HyqՂ4׬AOߠm=<5-#WJp=dJ#mRaATlm`AJP\Ձ/;]UaGDmr6[`u40]_,M+Β<>|zbybaw6?dKH\)D20pYNSP!]}ì{vMobm%{HOlFEiF:ԌNKI&ŇwhDLc)Vɼ;v6TUdceC-'+)җ[LߎΓnzvSۈ lo2(l*Mf'phPKu 态]o =K6@qsv3z&4G-XTk@'79D?oTd!jrCMxL>䶱c#!9\KPDw?T)?3'I9<#5I#a 9>C4em{*Lcd<#:]\ 0ҭën򷌁9Fy*BИ:כ]jvxs9{ESAh}/*6WEUKB+^w?O7%fŰy@2P!s8ؐ]>3ZPߎqGTTg/qm?I`;\/zwl~.HWQXW i(❠FlTtظu?O}6+xTꆬi`Lɜԃ;z`:0#l|v=YCfz_?jG$#N3/}*#n,w;5bRI}3mmu[tC>}yua9B.V 6] Mǡ d:h˂H=G.0ڷm=f,cT3H~D#rT $[^;4!R-Y'Ne-BP>;%CvJs"$_=:D8ş_%m[ثZYb'FysVS)S d8AN}W8n4؇;˹QR\Eg~[Mw*CXnTnf2€DSa.1>nࢇʳa>W?D{x=Y]4%U^M 2(z;Jpgůs /T3~vډD5=D)o+ z WŞ2ЩO~f0۹ VfOQG4V2 $]Bqio(m7{fZ0Ծ ގ SW] X߆M6Y0c5;#Xe/ E݌Iɓ qFn<:;O&$v/K였aKtgԏ/0cR&NG6/$wtlCFW"-'`"WmN/ulSrr/ibZQQ8iAA'pU@VR坲{xI#_tf M C10j;XvZ;&Q*͖G¥sp6OWp=2V5PHk/RP;YLz;Sn͑1ñD6ltG}bn&0rER*z1C?9޶̻tT fom2UoFDT@nЦHN4*i?"5`i1ct!'ڶ,øSj炷=h+T4krjienQg}=65MbIGÅTJY:ZO ^#lZ_jLU9ϲŋǍtqLɗDf#1x͒k3z%AU4ºc1q$ɶRRqCpp,骨wbՒM8gQ$RU@( ]5LQrų"^Ȼ-6{6%TQ.Yva8E"XmW]βoyL+ nVk}vaAQt)G-wi$NT#ÍR<=H,Jx^4mÀ+#WJu-ϹoVGyc/rk}?i7OE%"]Cgfd<-d;gz]KMp3^.󣥴5O}2&7 VηklD1PAn2c&B$?K}W: |ZB5%!.&s2)CseWHɋjt\_y\}>r^G g%oȲ!֚;r `][cOx¸ndT|EӄC5|mk+R?/: )vT0 P=3.d.<I;? SŠ9'*@۸ಹL; )Ճ'Y;E+ƒFѤ8TVzuX6ɹ 9v %KK S S{D6(d:y|bz!Dh G/~a$2}}Rd A箩ֳI$ѕʁgU4֥o|rן̃d4*qp)q?xTGYwUdR:0;C7.ݬ1|\ 2&)X@Ӓhh&a?w?t2o*L14C8dv9]yur) 1>U2^3&7A8J3T+34shړ%WzWXצALzR 3B 1B}[co )»rc ~Of@ujals|"NPZr2 |\7H/lZZ MaPϢbq򮚙#BH:&ï6eέ͖28 J6f paxQ쁷sߖ lm:Ξ{6 JF)?,e"*b7l YV1 kTh@G;"ȯjP|gX7,h8.1yVF>lk1M͙6r͆oJ .!,GNϩ{0Dʫl3\-W VBQ('-c|Ղ NB*P[̶8TӋ=Nlг]C!4@M1y! U?')(wrպIt%pR ͑- */$n ? fo:@h  '(eCR_p5)߻вgnWF{tNKe;waԦ>T[(3-b8ZD[i&%ږ;b;1\~"n|1me0,no_LZ/1`j.2NwS)~{umэv Ms8wNYG>;Y2D;ʍ*jfݎL% c>ĩ8>㳢Hr8=JKTHfB qI!*AMsꂤB; hLvDYI90v7㘁qE%/k:2Ns($)c(~{N{R23#[4V¦W>e ap@8_?R FzC_3YsˬYQ36`܆֭QsGÜv%9ȧMW47:Ch1^=L L5,`m׻Vs Q0 (ɼYw'eL+U u/|/z] E#!օ\$nʼn:be3j4z1G%JT ව́I Ah`+#H!YsϪAjֳJZOYfdލ˶h@ \:>Iu r{:9'*}x"r$45XU, +^;;-o?.,[s?-begXaKѶc=:osKa0`/)f~Ո_ x1^[ ts޷Ҷޔ@1Ͽ+Q{[A,M Z3X@Io\ qE):A":݋>ѹV_`ЊIuGߵS,j;|Th]?sZ+s21}$szAuFC`y2ikPӏ?;o;'AJ96 `_~6.d>2*]q э Y7ҫLXiЌ #wy.XɻeX8?]Go]* |a ݇ k`RMc] S8)Բ ]H_/4DaH8D Tޙg.p?ٸ|FKHIዾA]s@,6uP> ʠjYz; DhjèjS'R}7 VO9%%q@# 1V̡U8p^=l^2G8+ZgKzz?{kH.ɇ)%ثԳ?b2πcr:jp]|y˅3 Pt'y>uH3옘yD $R7Yǁׇ'HB(g#/o?.v: !~-l""A|vwm/tfM tVi2oO ȲO9HtD*T]TAitQr3X=|nzf=b >[10'J+DMc+8h6Ej8 D/oe!XVוF $X*ErЁre (|q{{o'Otqޟro,䆥&bG'_3*̪i جij6:9b"ΈgLY3"t/69]*fo5.I~~#ς4Hπ3z},bDzi{d- +Ν'[+JvʮUYT?]WˡZ9?f?HE}b%wM9R*®YέP8sԍrp1_l4 1AOY]~څLuELC](ë%9) 7KUC5%W7UރbС1߭fkxy9Zl<uy+ Z!k)99iC$L(ZjQsI Z7i°jԴGL>6d&E<>ISq? t9ӍZO+MFǺSԯV8FXxk0=SȔ;58|6H?gUB59"n 1JNSj;An=&A+&q'&}>>4[ Ͼj"TzU❳@jVn'PA22Ojg:t0`~4k$jSKٝwgEF7vڿssM.W/9:`)t3뤾]& i9 " l?3~c$ʡ$ 6Q29/bR2̩aMkn+>xa\l/=#=إĹ2[oWDg^بBh5Rw{jɸ54?N~)݊vIǫf&Ъ{@UrrbugF>Pca͌c}K*'IabNù4k@B+pqgkq~*v`mDŽWv#&u Rj7fz::  \ s #f*P1Γy? W+zЗ> Ihiמ?l<+d}4%6R:%)ۍ?J*Ui~ OiO`bvX< #%+a{5-\5kLX( W˖48oFk'Z1dG!s{CvI,B8a E!Ý$ `~(7\V\l1-z*Z!Cʏ,Zj)m =^LsQgV%`-,>q`?Dh.I°4Arf?1"`‚tǹd,Tmx/9Y|W A0;~]R*jvE3=Ɖ|_/&G{Qdpi:-D ҀW3@ìo0Qu}Cu3n1~4q;o/g)g(|Ƴǝ`ZE%_^좙=z%,WRr{Rp4Ƀ9kTa˥EJ5sqD- :trc{E9h} ׌#/g8}A{sWV;@qy #N wZvm@B/t3%t e p5D`'-y:PHң<.5ҷGdŬftb^"Y6H (Rܘ "bugUCf]u~ /fVӃUy[u"8&$'EG/j ]rOhH$tN2'?ӘUNS(sԣD4ufq:{ Z) bBŇּd̲0!~< Ҏ0Y5VjA~d2U#&qj , zoxS[6tZ^"hmENiip_1faqͳX*[OS}llUtZ7ϼ=k殪>嬁5RU~m-lٱ1 #hM@`\`} :"RSWzlđ;(p{͖m0_=l|u_A$dk"_ťgҙW&'x_o}65@9^}-ji 9?t;mY5b?:byX u>PpE O~]k\yΙzX 0SRh8n〵#s$pna|'?Pwx[ޓksb.w0WPYAΞ $7?#q Na:0cY]f^RM=_eM㓞|EDNw^ˈAkuA$֚b`gd˱`َ^,рQ`6|YJI/P1m㣻!ʾ|noS qv-f9%+]|?۝JB^TXػ}-~TX/lL@h](WϪG=3~՗L++cz I|ŶP 5uљhNACn`9}n eWSg#}S~P4SʑY7`S-‚BסN7x1ybV50!+TB4'Y;2hS^f|9K(#1EfxsE@)z5ظ.@%ﻂgC>` %GbxQ/b&0QDy?@A墲}k^͆=7ؙM*"<*g}H|7 QRS2mUp ?TI[r"{ (l($d\D5Q^c+y c옥ӥI(rSbtP8PtF8]ebTg?g,rYe YA -]'(.[\w'[0Űzi P4̆%@3P:yH-Hk ?7x& |7VPNGZZLr9Ks4H[*#|h3cnD~WPX*PgWǣcr>*ɔ5aN(9ϻWL1?6{4N>k2T\@6LQ:G7ԋ:#\m+JЪ`LMo$CG U1{(cQu֓O-cGM&wLpƌ_ Y4l%]29Y5:JN=|&[}3롶a +Ip0 D.2MD$ ⷦ͜n30F4Qsɿ RCA"^5ao}.Uˏ今v_ЦF̺dW`S"ڶŪ >;JVpܥͭ_҇X,`n9 :+{=S9C"Su u*D3%aCj.qw.]1$ k^ܪǐPURIlf7Sgm M9 ٯu^m>'׾BnNUQyШIVO`B=\}6J(fJiTJSnK׸ 2qtfE;3&̏Gc~|a +Cʩ.2d>TJVaϰ}a1]ۡrxHx]&fg>Uֿnݎ ľpw+FɺlB1#Y)#?~'#26F K4ٓ; YMsKZ)oz4{k/+@8!wFЯ#QEZkbg0ck@R<@s.<>=2CrAem*?vsǍѰ95/r2y0_ (1f2 :]kftZ4C?̾ڈ4jHO,lUOKCkli&bTk 4A[>=/O:ʆ;"E֪!-Qd#;i-yo?_Ze^27y "tu74e;Ph쇕1tS_'~^E|=X73v⌢GB'uY=衏ce0HexTu)ŨYY#x=W USr ~Km?a#e['ۺq8Jo\3$ =>buC\ήiVW}-W圐^u;YWc-dJ)T).^9{" ]:HFW?u6-^:-מ>~kX2cO42E 'Px!l(^SR'Ȟ-6/9Eg>FDi|=!=;Y2' Q]`R=63v&#mrNێx2pIÑ0—K,vv+ɸ &Uv0M)HO""KSbrO7;]uK~?3d3G8؜(.q)0ϗ),1F-`O );>l"y$f3=sa'2Z $/qH)m/UnVn?p_Feo4|NuI۫j4N곻CeXtm9aO,-^g7VD46$GtdsA|T9`y@8U(c}6}+c_!3WYr3Ô/m+A8vK.a/:מ ▏\0{ &׌a*yh(OǭijG'ohOS_;rkl?^yTiU]%:7xv"59:\k?vik0~QhR:/b_O_޹hdXqU|V+EPYA3jsQj((tpyX#Hj4yģ3ZoJOdfq^CrRY_G*!8=)\q"b lYb(3e{*_CzC*7fe `31~='V\w|U!)}{EgӐ&NKT2 {n-꛸@Ԓ`p5Clk6y ZJ3fk#dnBjnif2~2  "dd rqb y5v4 Я*PAjb %*zRvB%Du)dF:z/s&z#3S'41 ?2/0%L(8";#_5H)hЗ : Yiu[ 8Je7 +x&1Go>_Xژ,0V@}F[њb5[R$SE=!;홻T$L3Ü0<14"Y&}7=1>j.'mdW۔Z9h/\ID~^ҵM~:FB4?1ί0"};)/6 ӣQžczX̬uCf 0ܡv+Uh*;j4 s?g8K1Zm4kv&MmbGlN^q߰NS4ui%$0mLň^ƿ.QwɴZDoHYWo ~4Zώ;*mJh)7[U]R{sNf> `k 7tvW4 )7%a,dԾUB2<0LGN _c== Gy"2x>g] ё2T"1ߘF z\@Hce|#G >³0*M?ܬ ^KRwBڊP~|,g@Q72|W#0H~_PޙE ftػ)q ΄uLd;] pR] >rQ{%)Ֆ)zyr̉ EO0H*A%6yb!v!Iح>&-j|cBIf䑋"pԍ-M5 ;M{T0BdQB9*Mq 4 I̪nzvRݿ'Yض 5Ֆĉ|\M6autXm$Ex=s@whWW rCycݯK:q4WЋ1kҮ[~IxLd@8zUqX~sG%jLŐjT,*4AaΆjML~҆:y*oXY"ސ5Vd/cKn3Ӆ'ᡐGS7. QX9Gd7Ũǭ1ڪr( {ߞíhD+8BD?w2_G\J^ZEިW?M^9]<I.sn%ȧz`[G57C;pC.e1/s{"lDCx6stRM;ILjjg*rj"czt,Nbv_K @F dnE8h|1,g>{Ͼn'ObdΤi~u,D{њPU+Zk/bPk~NVoSBA\Zyp?_)kYĬ{9t>O7ՉN7vإx@ `hl<1< &ĆfHofL` LKڐۚg2v }AnuWfѰ _FQ:A$[P.ĝ4#bP*)ϵL"Tds3҈_ap(IY|i.Ił^YݢEWJ^޵cjAՎ33g?8L }{wYCm0 [.H~f.T "Z>-񮣋=?4gž[؂J&T8'qO";HKX\2g-/cpu8ߤtlA=FO ( ),NeŔ,/麱\{ݺQܸ}]j 'O't,<'GX\͙1Re~KTM#x8L$OЮӧֱmnp3w|De8wx ^*B:9&:ӂ13 zR 5NYm@ *1ٲ"f͊)L\ 0{z]ԢqZ<"Lq;@3H.^Q7{YCA}/O؇e|GaA^ OP`׸*iqHA|C>})lE@A'؅©FhC|lEWW eF!Hf凈)|6&m Z~hH3~ʘ7)h H>2tJ;;9& FVq~QVS5V7& ?~-W5[ `s+@P3ɭ^ [ 76Cr.Am4^_}],OK :V'Z|Vv,-bRW;bc`Wyf1,MTq(uj?;ں~T4e{nSԲ0u NڈWWu }kj/Jf6VHF&[8]on-7F-eрђ *?7 UO\1*BTw5^w|y|˘9ui<995 (<؏Iƶ;XsYE,+g<`~ zBEê^zsQl^l' y"=Шfp~i{\ԊnG<Z(l&W&λƤ̽7HE }|ԇK[ZN~~˵Z*EQ2D/a9 fu mR@x^~cޥp~[i[~C?&?Q͠Y% 3k(y,ngqF9Cmfzm& a,`QX^ d}/zP]B^, 1?9H aT^~wh?3 ҝ9:O3{ˬ..D.?o3tWҵF,XO5m5F[ڤՋ{Ϥ bۿfYir7k4e nRm*3JzF&7-pv Td9KGS_,(()9@5,ӣJQG m .舧O:22eؤ%/F =\p/ִ$1cR(K]J=$<֗tkͺqZa`jn@3V'¼PYU\}E2,Bۮ+c9軳H-ą(tyo|i%Xw[N1 6 mH)](YtDF2tq9RlK##y66٨)2w9Nxd + p#x"AjE,ͷVE[R sw"7s1{Ld5D*|pevq^RQf" ̒!%8rUUŀ[Gu^T2<~ӄ(=I |6jC0Ip *Ц:- 2A#I@wlIF4!2BEn__hN$:KK GF! |U%27{k?ڙ둱 *vٲ|2ǹ;_ kNusП=2JW%U'a"2sܳ=Cx37?r,E|@2 s+R>:Jn^&ي%cH[XOFg$xUiʂ>aV^rMI/@/\lj`46 n0Vc"~ i |@eNdPu~[e&>U"L,¶zx 40Ġ˝usϢϱtkɨVU.|̡þ=/;rhmIFg3Lj0cAH/ځ@L)P1>kZdESlO>d>s(ƿ9D!&=Ix  WI_m 9(xr"3O+^hcX6< ~ӣ}3 ~,z(vJNmֳMʒG߯&B=vI9%XFko=W:hU+W* ܄`ޒJ9=CU[i)4xC}DtltJR`$_)^\lx8i!ܾIV%;<8= R{K[(dOg9C1QHdt+q^ *)h/ÈByl D7o؛o:&q.A'g=mi0S߇h4XKErkr}~֦з*<Z@>SlYe*rtz'Kk#Yҳ,>Z le~ˌs |ʆnz]-ݓuQԞ>ң^5 c0^-xrK;=*(ҒiP;!LqIt;yUboF#V@^1o+d5$C9q@ӽPMro9i+y;n ^𗄡y'46=vNmMzTXV"M~WP0zm1{ %clOM~vKG0눚+SEjȓ{1d&*o019gnʝc(H1ATx7LeH>4"˭܀3BCżtC.eRk SɄ5NUo5dX-E. :/~WĀUa|\1o3.Uc~ +.l҇*,yvkNSAa .(GuBO%b\4=jU~Fc=!8H 7r0mjE_5J tow#&d^|T)>Bg9 4cr1Μĭ=P*TīN{ݾ meY{ &xD*9冐acG")&lnkAS\ vsDHQيc={ljײ!E^|ݥX`G"Q NxARv;26iuW"|CƿtS2{BKћ/fFܴ4Nx0t?fն*Vۛaeg@yoroXp@rSwLz~IkY?RO"[LTIM5ڿLrDfCܳ=gJ=8G(w@<'Qf}sTcGܻ AGZCFG"151Y'"ΓD`"qAVUXL^?Î 텃.; NpN~ n= @u;DDpLKpSRѸn7-i* wI؁FZqok4ՠOXR\mfagCQֹQs2I]0 pD愜y6_':mK*Dr}ST눕t>\]"KDrzNǡ_Fϸ { Cdc8sԴ+\>YL.Kѩzb1_aOi*\Vٵ{dK7CH?谒\/Q^/!'#TE;j`A൸`$mM1D!B_jf5y,;X)KoW8SxXpv[u恒u>bLtv ŒQ: jJ ^^aqdGC,Twg'#?(` /nz)\NPHWI.&~ҽC1\k&hݯi Ira4f*_ *:|IZq01c+汿u,FI ݻ: ;zigS.` 4ys;q׻˭ xrpv;TTpJ0 DKg;b?.)ˆ'Jہs퇨Qi$tQȃ.潅6Y-z@sM,Hmk4- mN :!GxCVpWsqthlu鈳lJzBw#^ƠL(uqgAȦh! B)esGNxF[Z~s7Fh 4@pX#û]ZiʉddFm'!祄!J#&J=޶c|p!t5n ]#$> K dptf8#qQ+ǦZpMa[ò{QGfɝ:A(̣ z̽g9ptܦ 9GzUz(L)ۺBI-x)>$묝uZ7D ub05D4: 2AEH.oٸ ׋-gYFma1KLȸc[,³𽅎*z2S8z!@R1)Z*9WR6(+u"2)z*D 𣲍uE7P!lД,5߰ gI^LϓC/%gÊѨ4SԆhW̲𿺶ebNJWaQ(."h?[Ǿ AQ1iB]?#!GTؿ3FTg5]]. gUGG8d(D)EKleaJm=*ta_ݮ~ P|S*g#-Һo5~ꏯ{0sK~Mя>'z/s."jv `PKiO@d'^w-(lnзjiT %ۋ#*P vMFZ*K?ZC߉l:;uǘÑ3Y}0ܸ|Tֽo->b>Gң($VrjVtʹ i G5:U x׏A( DFu ܢWoꊽ:@Tr ^+Ï%QD%C~_4ډMDSz:;I5=:w:͕p/Nca ?|u`|~GB%E./X?uБ#e BT#4-9-|{\m,Qss6Ci$wo1s 9"hs&Zbf_k!(uC%9uDW ǹ˻ii3y%dD ܦ=ܔ߳~9 ~1K"xߪɳ媁L"' lZr R58{8  ~0glUR;ZaM/Oqֵ 5ox&P1[Ŭo~:tYͲoQ࿖㺼 Ū5سwdT)Ip=o TR3O/kPEm"~z>ME&7ۥ-sxJ*vH)s6P /=|r{+%qZ!u !S1y$tqk[^bLf 'BbN_Xp{1# x ?ċ m߈J[ E!y2e~{ᐦWjmq!lj(SiB>%qAL_[[OkA栔JB%AR{on)^&E\H*g˪Ltk| )e GI(zϲihBJmUv8(kЈk }eZ#d[GZV8[&0yO+_UY3V"KSn|T[64\L$lF/-Q&̴}z X3k? ةtb.1P]DU'f0ZFzdd/W=KyX|Ak(¬[nB#zstB`gKM)¹ugl4ɻ?pbN YJj9 뿇:^*==pRԺTa}6-!._'UWYP/HZr0w(Q&#LJasٝ 29ŧH>]QINsDjyĿq%]~Wg1W*22'Qh#S_ciI| GC-`sԠ~ >uNr}4/tgR&ߚGI釜:kBِ<'YRC鏑}B'EzVIU)/qh.M2@Gu-@%rML1 %ڤ4a{|Gú Q{yXӝa;ŋҋ>N mژ x$dr[ͦO9yb]>/+/uӷLxܪ<VX3=I'&X>)i5|IǷBjD%-ODḠX6v6S3uAPx\DXxGk 301J>OEj}fer?aOσ;Ji wnܫ<=g}PCu$:#/~.@9$`[~cE/ůkO|/Fl/^bjvS\kӘ*ݹآy.RBo)vhQ~IdӌD JdHV MvnT Ј½=h/ *QAa )2KE꥔TaׄõxOVHt=F-3`RI5CqdSFA4 :D& DTu64GWQ[_( -bq[_S|2YizkJqs wGd47!f 87|n* Du6ޏą`OB_X&CD]ZE?ձ\4^<}wNa_d%/$Qz4328䢕#Z˂tfH;?K$=r):jOjq^ݢƸJ(]`-w>GCT<@bĤ%ȗOw?vH6 % P'pU^nvM{>?GY|?κ ӥ#E`Phˠ&Ё}mq 8nn-1Ġ0xQ>;!M n (Qr^-KO*3cufBw*/ k8(I/RD E6CR=̥o8rA(_34d<taK4t˂ sQmZ8ľ҉ileJs%Mn&R?i<;Яdn_f1)%s!0$HM<.Iuzbr`<~ҙ#+b@!B;qͲ/U] n1 yt;hCSZ=O1.罹cW+7Xyw'*_3B@2S(ڝdލoѬU[պe~A= NrTAe? 9._reuFщUlkNýdIQ~_Cq6,H-ø8 m6s؉q>zNJe hէ*wC/:SDTZ׉u2L/c^e<=7*Om D?>[#ϭ(qx-Ħxe[9,k^~WHS0@aD7A޼_-u!GuN.dm>_< ˪M kwl}]ܺVN/s~dwKA[Ήn"qhr7iʗ&)0H[d콅D+Ҩf<6+<楣˜W\u\\O)^:֏cib"h1/Y{.iVH$ڟt3:"SfA@O^@ވgy uN"&jx?̋YpG/D?Ƌw! =g-Oi+)a GE3%*lG`D |hTrq5`t8Ct eWNӚ!/GmnM,?}]6djm7X?l?4^{|ppQrF3 r~Xu"Il: ҍOR4 }/;O,bY7%NWƷ:] :T+޳OgԨ5H!|AWpS7<?X,ꇹCu,9H 2X<*ҁ,W}opY HG7mu5)TQ5P$ި ^v5"D!C4.b>{)gw^8::P +,|B7ϡLn S"dmYJXп'GGu_)JP)Qy lBff?gw vrEd?"a&C5ewl9y ^R VS c sAP w ٱl\w/d85/;p}%xrq\3o«xC,ުcr[ i u 4ϱ&* )-qn" IRNr5 GgcBsl~(d2Q9 ZHTc|mARL5tƅ|p5׺RHmpVĶupHj x2纻p ҲnH"VOQOAPpʓci9vKXl|$pv5QL8~=pzfz7lL%sYAf 1+?CM4#U*v'i,Ry歉-&Y -t6w"5t mg× t(N^uOo 3 <}w7˰d(<*vH/ot%[p2 I GVGtߕA?Xv2 x7kCSA=N4Ǽ{yq%nzb mEZ5W[[4R`3IvQAf}̱4qj ]$y *o#UD=6Zx"_^HjE=,7fT&X8-Du\a }iߓp!^ѡPRW~n0;zg̜)w&; @(4e]$rZ]yW$)/ʼn 1Xp i||(y[D*a  XN gU W(홽-l7H<)< ]:moՂ}Ns #Xʗ-@ UqT&Z'VX@kyeȎ@#L`Zql3>J$rߩ8Al>Xtr>n dAzWԷ:@.-9f|$`1oXHMn3B\$"hΟ&ѪWD:53 ڗ:E"itxbfݘEcBr8om ed8o2|ŵZ=(wz'>+*xt2Q,97)*I>y0mN yxj kA>pՂJo2]7۶E *.&;r^f9\ٯG'L,ꐵ&{* J8mA*oZlto/ps?gt܀pEPMz-0oM*SL?I8;,UKCb!ܯ):Ĵ&AmՎr5^=!R-=9f S } a:n7@ȸpŏsZ9OM Z޺Hd*Bν4Dy ikx{ѻ=1n Yl([{^dwYZ<L (WzP쿿`n]xu~j~i吁qP!'dV^p(>w `48=6 a<]N+vxf>No$gxli,ߋ'ښ/,ߵ'@[~4/Xz2'acZW H~ [n#hP#3khhgo);VL!aʱ_i{<6mf5fkQ|b"J=>L[OTtijm`E`"t`⬏ VMO92 c%q`ҩ#Ps\G>>\tVoCezb n]6$ppNVnK= /̩% cw# ˻ 0S nFˡ$3@$3kW (7A~gf_=.Z"r` qm ̤.ZyQ.: 3(4wh3H_kw~Laz. m4wgXI޶~Ѯr;k@Xh^B;.v>Zik⡗.^oӦ,6+:Fʦ]>4vcn`}mSU\R% a\.ȋVI V8Y+6ͳnp}GX=ww76 #g}Q~HƵKyP|RkK:Ѝ°X60Niċ^`K+sasEԔI }n>jrO,}†93ɄJX>Snq߻`)[7zf5ɍ]]3ٛTJ_99CD㰾 ]乭XQ^[܂ݰhf-V]LciaФ637xþs4W(5##ޞF+tIYbIOFNvF/ FIUT@RX \vDߤ#W3kp@XVi@ELaP(#~*‰G=Rɇn:|ź`%,aE~T^TGr$<:' |^|ށEgET7BW<1H%};[o"cWz1R ė:<@€9FA=dqu~u`դKE1H !:fhk 01n:иjPp/ UL ջ3Ä &[ΖȈf*(9Y" hˈ=im%Nf+HJE7UZq9$pލʍt9X[,^qqn%cd%ijO懾_N, ׼/fIc#sZ:Vx>MSL&Eb9ɷHSeeh0ZK*\bGt„5qܜղTnA Уc=w%V7p" ѥ &- S2\'_Ѵ0 S,R$+UGK;EF0QƄ\ؠ0uqd"idؠv_*Hs oK\Z'k)'dF QA찪2~"ī]:̆ceR$Tx)bBZA_QvҥN){q*a@:>fmvs"臢zHGca`SL I՛ Jr-PE﷙n_4EK#fn z(PUj!H9|⁋DH~R-)j&B^aq )3;  ʻ Yۿ;?4e*ΈJgz9c7mI•R(u9dwN~['urW?cI=X3R8E罭>7շ"!tc\T&&\ޫ"n_oAG Zܟ^{Ʋ)4t=DE{!\E-逡<PHi!D5T.7_fqbJ[bU Qox*'Tw)fphl:b|U?шoW)v_-B Pqp])@8w Wh\l-ibZcox b DUvPr矒J#1#@$&Lނ2Gn\m@GqO_}fʫP4侰>k377]Q냣@.i.?GsaiɴZ6G/cֽFn ΍ KYA\K9jjOX5U ?8B}Ug g|baENI'\+*7ƪ%]Q#!tMjcpvWA) zN> +lq/lx-ݡm!@7lQP`5203ZsLh~oHPLOShgaC) ǧ7vMպ{Np Յhא>bXCt{%osx,\ީ+qP̭{иc{fk(/$ _`B_).hn.1{}k>ڮV |F{(M{/CzX׿`*'-#dFa-{C2@C+䥚0V xm9v;(u=: @Mm2ztm7]bHBɺ}(a$ A{/LsHj/afL[]3Gޒh e;)(V1E{SW $W:+?jb@~r˾񼷐Sread@("iؤg?آo96ae^{0>5B :B#瀋b#r == &ת&y RhfM!p9[8ʆV̋R/@IZ2EVOZHJ˧@;%| $2$ZM8!SE="8u,#wFv4,x9)ɰ]%k2WO9t\̫ %r9[뮑3!X*/a8 5Y#%&\e͵VüxGĥe~FC,Q)aI \űQTӋrشlj~M2iY#遂!f*H@xdlkj1P'VMؙ9] < ,Ѳ^&! )0!ڽ[$Htlz.t;adϔr 38R9Qjnr+ԟj9MߡgLЖR3'n~|3ưKTٳ~LAZ 5EAZE[IСcY0x|Ff鮺1ɡۓ r d󆺤G}⸒j{ s@`tezVp_"} dƆb5*DСOxVl+EWI(!PSD6V 98Cy]6zG}7#A$="OrzzQWz!/+D۫Dz&$:%e[_J$;, dH?&9y-4ތQ>T+jOܳ^ej~P^&>`H5L{[͟k[ӕaP FP.-EI>EG_dN,t^"lVpT4%Gf"Ȥ؅bai(G P8>O/iFGף7s!6 [LMn63ڍFb?Rn'!-!=SsωQ5v/mҡ.$Yg)Ӎ ]`ĠM;ˮgg=ʺ_=\%y,묚Q5Ƣv/;fq⼕J1AC,Nu ?~0Ϧ Z?9=vxˡB31ïK.ʨ c Cw{ZatRK2at0"P++1왇sspMlƼ}{5oV=MIQC (czMsH`;@Sh18PcQȒz~x{CI߿&*wBmƹ<^^n% G2,¸Vp!F=WEPmAHawⁱOLܿQ۾~k̗sI'z;W;߽) \ X Ónx0BT H%XءrCV͖`^xtv z(X8  .N꙲NluD~ eGLf[]07_ EҞk^\;^ BڷO AٌiaL?nMicsE*A]`sc0=y(mzAC}U4A!Ɂ"ms +Fe\ZiŸ$C1W,3E}۵ܽs*&w67==Q=9I >{Զ[Hϑpof:-:bG4 1!KX60(.@Տ&19p2UwQOC+`ξjC(.p}S9xk\JWе uƟ23>{~l|` [ハi²?\\ _S!Nj0% v]bo:F ;>SDh_7*|0tZL#%+:38_#ʹI>I~[Y1瘦:%@!kmZw ù+CMiBT5bay4E(]_G,%!*7 ;7k d/jUsTHҐU"T."Ft1o.&|̡!9Y/>J3$1ѣ?/Z8@BƋrY_·z?0&9am+ρ+h9W=#s1lpXN붙L>l '۷yߠ9> y^Bun#_f_ k)_%;C<$|. (WF*3\JQ(j% ?][#O464klm-]D݊L4g]?5GT#Rt=9B8c a/7֨9hb48Wgnߡ0q\ޛ$Xȯ{"7]<,Jhڏ d5kFO4gC߄$}׷\X+F0 C9N+)%HL !WKȎQȰ{alO&ӻ7Z%f0.CUڗj9/rl˓Z1Y7'uSM&1k(E#<*NiC(8R&zީ(? #a%WLƲfWވNj|et-nʆ>δY`w@L[|x|X3 cS(E쐻luh#؋ aH4VQׅ|/-*[3K8׌bOĠR.f4qvIAֻRژwI,YppNd8ԤcSH) m8AgV"2TE«s0S W~^sI](T?ZV؏@HT}!nxЮZ *{(aHK|OqI=”ϝ^OޭceO%'6u~zyy;is\Bv'mr/oQ&Q 2gp#*IJPk?ذ]q)C 0h] 2dIXWWn_jK _@)3@t a%Z49ɍ}R.<'ߗz߭յzW6r_LRđF-եn ^0k*M e$eVloآFF/&4oC,W WuT`Mkd\s'Z34OvEɕ>#i^久#HK"R؁c=ϓh먢64l"Y̻)/`sF[ID.Uv_Rhcߕ|T\q'44[~D`l+)d<\:sO[Z$:W8im긜thugϿȡEq~jet-%9#+=UO˿ٿ(a~+y:x5qwpl(FoIڛ+#TYCAV.0ɵQLqep9ih;:aܷ$q@e?¥*3Hn\9FxGb /{]RxPeCwU+#FȓU4n׈Kl 2|L IUvÉB%:Qٔ Kb?x|aD c7b 6q]o;vIqÎC)M IŤUqpߊ?Hvn`%v1'bFem;F8/޸|wquJ7ͦ3svsdJUQit줩<W%@Ei]}]o/V\mڽ2n*3}>] J5ӈy%!Ȅ%ObQ ^tvSU<( M6/4غ]}gjf(J@ĢP.M[.~_Z9X\z<8Ю RY3wY)nW~DRy}^#>a]| ݤU'zͮ~fQi|W.z]bA&uӚ& dcqN\ o+zjtNg {ic:U|Χx6i s Ua0\%`ޭ?53L7@1=>#w:̏Bd_%\n 0IcH$\xk <69fUZR[@ {0kƣ^-\x3ct;x{qe%?bc5ؤԜ[EʚeJl P/z`8n:! FݑR&"%7έ ͢17ǮCJbr05fQ~4!՜/@DGqLO69<>V+^ ?Ԛph%,ZҾT?8q 79Gq}{3Z"K8BӶK[ 5 ItS 5 cRǾgB:wE7 _ 14N~*y 0p8HGB+yLCuI\p29_<"+ ܈9B<蠻X[d$p2jUǖx[¥o34k0X% /PDrG[{6 !kXd! 6l:{.c[(Z@&c ͇ 1%wwD;'LQv/':qysns<1>a[,(4tLzmzޒb[fGn)SS, ch n['9ar`#C_p6ݼŲ וFP#a|hb˹m mP,LP{E޻5zG"ᦩt& /fzV]zTφS9͊(*ta6[N]@$hAyo7#3pC@J=^J"t#ӹzZC&EuJ/3ľIꖂ) ?{Ek4VtVD~q4iqB|]qG*k=tz%M1L֮)>ڴگB\bh=ߒKM{q.oJXf"NI'zh dQ[.ٟrN~o1IAܑ$^^6ya$$ATչXq r9!Htӹwo-=`o>F]td;:-?sT!de.=8|5I,j5*ҒH!vY8%Q.Ҕeq!3v绲  ,KghT1#$zn1Y;p΅'DH-G~<;4;7u2zTle^R,LO9gh |o"ij Tt>&x,kՄߘY<9kVQreqpY,E(VXI&d;ׄA"9rx~˄IgHI1JS]Ք5;U)ԣ:v E^KifNCIAZu~&c(?}nqM#QT-J$z+Ԟ^6^EwџMP{0:~ٍBz0#R+J. &' ~;>ihaS '#ǭT PH." U檹 |.z4NXgkR1P\j^2mƮC22}6 n[[yʰ~sbF8V(g\e)&[(LM~N|ڀ,Uw^C/rG3@,?Q)yijqZ!}2̍Cv"8@H5')ܭFY#-j-fA$`kĊ"W{>78s1K2lV 6%KHi#P&Yr]`!;C+ZYqG|^}t?8]!l0A붟89;]:9i^` HcPRoDH=%eߦ iS\/f;U#LH)sD;!D5/:,jD~kp L͸Y BSY 1[ZPhQ:`\( $ԇrYAч}GWqBݻ[Adbb@PRԘE:1MXsbF= N̖FO4 Oi;HC [19lD F$cm.q)偧v9-FktSnE3J $o $ᒛVv)@ fyrJ!I ǖBd&>VF& mP&[qmaO$BIMrGZj y{rQ秛[>AnEvO NƂ&;q `4@0ou73E[s?2b3EGpQl#s/ǢCPא,I PRç騩\Án= D{$.{z%:̌Uu,pA㠈PR.]p"š;]A%};IC6+$̔ar0) ]]93^Vﺚ6 Yl2ew$O wv*_fD,w͹t,T}@/h: !B~2pt=,ԱѢQ;/tbQ֥H&?5OqR*h|GDJ6S(>Cg <+!*%g\@R3 (#яJq<--&Hm?8Z.a +>$ q%}c>x '`+?Tw8V"?1-#q$L7/ۇq˺^ќ8VXG ߭`ىq8NUr><&fO2"Q4ܩJ|/=md';.yxj^jDCtD9!Z;ؘ[{DsLvm jBk ,a$Alg~6ur2R2!)iFP `:NrB"Ș)@t َAqσlY8- ƇII&9x#WFv}lfx*|1옚LVxMY|oqM2ΕEぼĻrB"P1ܙao&taVe#E81 85-N%vcaKBRv817VFpkHgEudL{yy6cG5Ep1RCՅL$BR'Ͼp+ n5Ƨu3H"d+Iv+LA;iIgrtWa}~X+JL:˿H)nq{SDF6d›&_kn^ JEyef>5Ԭې 郧K-]Qd%RڗӵT&aٔLaзeD00 q =G4 [YgYX쿉4H,|eN 2 $cv)҈3OоU.݆WEE;lu=/AjY{S{AlT᯶=Б;!+8hJ}|lL|D6,GMOxf{jQ#t5s(3YƠf2mIGw>N%OCKlOͨ  D*&@9Yy(M?']'n㒪;5 R izN\0 @[p6=ӁU9wz5yV呷눝jڦ VZ%Ø`sxr?QHUQG5Mþ8A,Nfz@WdF):@XWa<9iY2q0ng0.E;M@灛bp[[_lh$23"jF Hkip^`Fo30 2dd ܎eग़-:K^(} ǚ:v2eeDN O_q׾=Vu4뮥6 AAc`1:ORH;8z{x]b\D]ұP>-pX(iD>zipB;.]~JxPUIqniQ"P*,Hvb/3#Dbc;K&SF[1$\b#]Qc$\(甎QݫwMʥ?E!& xD]P{ e;zc$yZ H.82)ۦB;'> #Zn畗HGk.4(j)"W f JPgӓ~|c J*^(!TwG_B F z|I=/N6J|Υ{YWCw/f?#5{BLDg19RliWk"5R_c N73 EUQZ_Zjta@+"=R2D/%ƗQ@Ͳ*v? ' ]fd$W]s@Ub-t{DTܔCG䶪X3~~0Pf)`,g܄S!B}{O",&wRmyݵN_U: ǘGx|f?'(Cf]r %t <9-lk-gt`"\ R}"70V&sj lq+'JZ_Ɉ|#U f>x°$'jx߀,|!%@)SY֊C,erDX(ᯡa:2/6K*]5= Ί҆k㬮qF HT-Ὃcb ]6+V`vlVG\tExtL^ yfF;\vIDq7J-f>nA0o/UŞ;v.`dV +cN>Q3UHѼ>; 4؍ ɠJa Uesvn6"DuTUO.۸qDQ=li@^d8 ϱ|St3m9о ̧im~^GL kNW,6,=²YzX8~O@פԸNb9#Jzz쳃j ';%D(V5ƶ5>#=RTpW 5jf_BKZD|;Epwe]C XBy֩1׆ ;̨]O-ob{4IFIۙEJpO }2k$إ!X޼g&6uؽ7#ַ1Q>gsi k?4ϕ7$&UDq4 Uq<^[?{ˇ#6.PU>91w]ÍcU! uN$O??оju#8jJBve,S{0y浸奞aĢy'$_q~mIrNս^q'T4>}/Y >.lM]F\@Ps/BTyF }H,ig=-C,a1 lI1t{mƒ*Cr 6' Q$'oь BG4KE&ybaC=D)PƦ<$h?n;DtN{h׿Y45XG:RߥmTWQJ_ OWI.;I5i;!bgޖ7\V@rv!`er:\[)%q+=m$Zr4aXҧrHuZm1Rx6C@)4+|elxxZ,]i#Οa\@^EWO{x*qJD]؋m|'Šg_VW(Qyn}N[ Ҧ\#nؒ1v0@<4:̡[BJU$Մlkڅ$OpƥKijusZ!,FOL[$f`O@lzPfMt{\cMQjb\Ӧ ɰ9@xw7[LJ 4zvM'Pz|K/F|uoO7Pi$ )`abIbs_:eZ7W_-|܈č=Yll vgiD?wBzґY!1Z me\#!'Mw.`3 # r{_ *B8{#d4 ~C5yt{)[ӄiziz.Mkݝ5)¾zIMWu^w.khE=lBa'iPDC*3Q]qw+^H 0\a^3&XBU;zp5kQI8Ȗ{^c H[U4i-_>&kUXҁ L 7ZH9=eTijB??ݾ><(6QsLCnq U_HFIDh;wr۶v2>I7)0%Ԧ2]r8&8,{ N6o) jB HB <v]n#j[uuVŭ90Fqt IVx VXeB(J:+j(5<,ϔQ[͇' H\@|ǶcH gki 2FFbgv U$jGݤCd1-K_du"+Her\GlcE`y/ xY/ڽjqd `gjՃu|x|VVGrTý[Vr߫DlVOMIqHkݥxe#H\5֡^ mKͤWyuLSXl5!UI;v-e Q6Kqgs=$8лVqRtrϮ Ii'$ fEpx+Vy RThq%ATMޑʨܡ^eb#%~Hjb#{A\Ziryf%jП?07?a?pbq4rqge]8I3=s9RrոZONW7Zdwȴ&v3}\ۥΥӋ#2VC_n:q~q9|Ba+jZK YE[j Fwws9 ݧ.kR%'bc'1$:P|C'Sh=䩖ni#NRtI/!igV }/nH2 B #q{'##Pgm2R5 qXٿ q/3uAҙ.ktp im3p@A*)y{[ɹ&VFfQQKYoY(yG`QN" ; m*dᖣ:vaN`gYv>VHjԓ W䣚-)zjN{%,#q=q7$΅͂[Tv}}Tcĩш~5ֻɸ\`2){vF4EW;coP[YMxǔؿ%EQRtP:nM$}+'8@?l+ # 9d4w|0pPl C9ܱ@]QlCQEjTlv 8*C ÑExULS&/0R655<qHP\{b^jAEe3؉i8VTa'۫9Y%DZYdcɫ7^T;a%*ѯg\3_;$6<<><P1F&4݌=sCH%Myj?P؅kC((H.G`=al/bN2%'#_7kn\|zE>8dh VsiK΅]IPR5uF boP%eO(A[L;d=^ ;lSpC02iX+ loW {@O\#ϥ~T ;VӰ=bN4"!lPs((,rK҆O=S, $>'6:̅ub03RiC$~@̊JYjAu:* Y3mwK>%[i'gnr3a3 BpRUK?Pcb]%b* ٙ:v \Nxx/ %FÔ}E[n\Ϙ[JK~aFBw)I10`\2lN@y/̷/Z LJr,pr4wETQd6(mx{[|-[B(`v,3+ yg^0A L/VkY?+5A' `Q3<:M^_K]>z@B!ڼ:ua//lt~]NnzLBk3*'$`iY Oɓ!E*;pc;D(|lMonnVSg#c| *!"̫`n.8- bUr&y$R)R"|h@#z-]T Ѳd6ŰR/Z?ٹTw!PH}d+p}`2!EkzޥVc48@"|GEI˭$8+$.*+QG=bQ>Dh]+Xʖ1zL0hju{'RN, ,8xr3GУ;}B%uȵa:]ۅ j h﹨- J4]Q8zB=2?E#y=ϼn\/I%i.+Kl8WpMeu,*B-l=bvR# }H{|N:y}(*2xhGi>"*woh !,<po5j* o5I+;ъB be>zjNhZaj5>^Rk>Ձ(z̀6(D&}6=VZx kWhl&3%+=:9܊nQ}X BٺҫOcJjryԎ0yS{?[icZV:_ Lg9I.vٷU?I f{tZ,SEj&KH4]kً e1<$N*M6lO򜛡gVqCK=urH7a&'U fi?ae˛ #[ ^- Sz2;ĮӐ$yiKtjܤ[u5TA̻Z,CXoLQl5Kk,}Ex?i[?GIOK!c*r[!sغ'kdPQVリ]RYfHbr?f'ɜtgR[\Q@n١b9`J#&jz⻁ (]tDj$3qC wkukp Emjn*pc oicQ؀Ԇ,Ly%Iݗ*3Pi gg1E/j!A%(˝-Xf]hڼIN{ ';{-b#Зb#ZMgDQD5InLTA2B)ڨ+]7 8Š)XϑtN3qobdfN!DEp7'pq? ͥGdl~$YBؑ+LA/.t'Sd'X+&F.N{r Uy p pzE#O2~-<-Y<3?Y;/n-cGZ!¯/+aLpCqh3Y\;:ܛ!Zp-If wh2/Sr Cs9-4TZ]cT> c;BO;{}Y;z!ZWD[,0iqJcA5Dy4.+ha-7 kSp rWTTjXѿq=z08[D x 7hֻLLliM©tMMX )g3fn9} =?@ÆLUĝ#Z`1fZx|dW|ˀ]REӍ_']p]&x1  C63?<WVm9˳^$E/![EDXNK3<j̈Tqb (Q| ZέF}v"ſp"SsIYv/d^4)~5m 7vg$ŀbm=O k#j.cRDI#ڷ[!X>Og\w^t:.*1 >ti6N͓.۽v,B3vGŧ MQDA3qΰ9 x)F<(aE)?1-bP8 |X0gCFgA:]|IM;8O驄ekw6ħ Kg$4` V VZ3b m|DPr)e碙{ !nK 4Pfrlq1Uͣ_+rٛa[(_ P wT'8y4A{Fl﨏Z4jF]5vj &*,҄k'_=u}'O-!|bIj x&cX(LW:z]/B VBdMdz=ƭ`:ʂsTđcEٙ'ՃU#LK!^?γ6 MЉC2e w?bIOd7g95Tʨʶ-]-̇(JbhAjΪy-N仐.U$-҃AHk:sN$}LI {u/Ti܃GZ#L:{u[h&E_uK 4/"'Dg$o{ Mȟ\ᤣqfbp\]5hZ8eN DBaf8UHߨ ;h꒞nE#畻 d;QifNߏr ŏBkOW_-o{i}sH>B`*+i G{M1n` )#F!wù[uXJtTRj>H,kq]MO9n2&Na ;hv~q;"5)^N1K9wBn*dyh]^WyhG!I0@MS-u ?:ZAR>yu)*taӦcJ#[ C~gN$cF5 l.%7&9[klc^f%:)Yګ˼UT8fydv#f'ۛ؇Y~3,r>o.?EqtsWn_">Hb+R(Uk>8r ʹ0{>yJ+(adCIݬ1P ,{5z9'lityx|͎^jih3SNmJAF@jJ8Q 5]0!xbVY(HI= Ր[k.v)oګi1_ 87Ժ5Riܲ> O_e[ҠDEkܽrsDWmNy/᨝Yv/$ MB69FUe={ѓמHWpVu:FF᪐dr_@Կ1v=Cжbo-oS\)s p̓q8qQ{dag+ Y/;r/_ \<ڽ?`8_&SzU&#KMToEKX%5Ӳ{B&/űVrF-ia*<c~VVjIHN4"G]<\zm *] =]E0p&h[YYJx K( " Zޞ5葤ML6a={^-ԺSmX?ojT1i`PNp]<~}/pp5c="0ryWNF%7m??UW/Ƞ!ĉvws_hlbgΦ)n]4푓4 0:CTO./G4 k*^\m$gĬ5d@*9x(goڲb_,g0񈅎J|*@98ބɮ{>z3&RdZ$sgjT!eq5q-@V}]{scXel3^NLB"R k!6C-k~tI Ъ(҅KwɮjEG)8[{ű`dUk_u#2Gi=$)}\m-yMӰ$VV)e.| Y&/[u1۬T3_ip9nAA$̏e '.1qD* Yb7S`rqj =߉~"Cԃ! {tn"Utd,$I| Q<=Ï)UB?'#lJ7m=5cG9Q}P,6ksUF]\/cyiaoϿ(98x}!۱q¢G:MEYך6?.4ilXJ"~pM|8o6бGVq=Pټ읩M!qfgXy\hd <|VufA]1!M (;sWk81LByal 0!s.X ֧/C]1n?R ة zX߀\g|pTcؓ;Z[hY;wd( }B$[4޽ƝT+RnG>0O ޏt4:%_tG0%e$)Z5j5geGB>/ݭVԌN0]L]p6j⩬=&|6P &o7d !$'B $4 X1N[}x(q[wWCw>]E1-BJOi̿݋cJ7\_䮦ٗ.һSЖKק{Xz{05,8Ig \ OP9mQ谾 )]O"_sCHr}S GS75skl$|W|k#ؚH̽ى3gEȇ[J=s.V"F+q3"g-]l6D݄ I02FҔ5wy[qb˺S:nhfgbZS161~?V@DJ 5aL7 @/JgV*ei#7`|# tP^"OE7V- >-s.:ɚ^U@tsW14y 6,&`B{־"0!q MQǿkІ˛JL? 1XLO,~!A k'굟)A]"I%]ɕ x"bi86QxN).K^`P=.oY@Hmw󂦒|YHɤH 6.`K^ & 7BV2m.:QY!ZP ޸Z9stg,Tc%cݎhWlHfɼB;gklZjYii794V7kȒwFv(45Rüq6y0z u#!7i{. J&C֭4㗭3$])qU6,مTaHqcP,Z1Q:=\#Ps%ʋ \[XotG2zlMF8t4%+eVt]k]0]%XnP*=jlO iܩ"|ٴ䨉RYT]XS dfrpWp'S)zKoA,1Y#"ý$oII23Jٵ1$[Kk"xGK;z,qI|p[lfC$*lG>H i,WIoaYlsU-}_֌@K+4'W9T&%#EΟ'V~+~$bs/9_?\ ݵ TMxuqKDH"5i 5" 9k?4UyUP{Fo@l蚒|?>a*cqXGJg ֫~D0tMLx@эZ$"vZߜ-rx7Ĵ tmO%ImI۞&1 ^⭢6(-D&jWqNnOF]u4v!ҥ:+rȗK*&NcPR-J0yfE|OS|:F`N^{DC'q[L e<.j9A*W`\ϖ䷹i={9 J\Yy;^-ݬ|.)˲p6LsRGƫ ȕ_T")4. Wdl4H ٭QG( Orw38)Yt+F  h\%mzy5q|׶fvny1(5?13%΋~~/V6w:G^ҴC= Dg:.F6j05MWjҠh7X0wٺ©_Xjq'y^øDi&kׅfFdZmZg%jtO*%({ DW+<놬{#Ә-'ѻ!^~(S*APJd3"[Wq j"'ʶѦs!M.9XKCBA{.;~wg"c|ST*PylS hsln]eJ+Z}1>˧P:ԅK% !E-03ٰ7*|G BSL{ĴXS#>P4jĝ`<ʱow[B*5g]XTm,H#XCIi]s 9BۄHU±^vT2zEȗvg.1#gSOQX4ڦ| el]VfU̵lϾz ;O"y-1w>hE N۟w!OҊ wb߰,~PhHѨ#j* Rm&xgOvL :Ž'haeI2=SQUՉSN (=?L?UhI O(ճp4.4VY %:2) iVs 1d5>rl Fb- U0adQR׀$}k!ҵLa6a/UܳzUf{@9Kp-^KPMFf9%!/U6^>j (ᐳ u*z8X37Fk5}b9^˭ @{RC9y_AprPMbk~oPb͵X\.`pU-ݗ.f8W&'>H ٽ26x^@lQZ:=l"q9n #x @EcC;B7"ucI]b~JܬARr{bʡ-v.ڍ^- [Hܨݚ4Lo#ϭ [jp @vŁ意- y G{ d0,$fTo" 3۲^Y<Ȟast>hr4^R :p?Ǣ)X$#h> Nb[73$AN|y橠X>[ǥƶu.}&b|hj]q~$Pq9H/!û-0v=U/ ߂F.gX9ǚvPAAAU,cDdY3jJ,:@M{칝dc.g rcF*pBsiXkqK)]X[-xye[1OK)lKP4Mc0 +X LmAܓ^9ZYL=A~W"Ԧ;IEM`@ xURq5l}x"j?cmJY0bCTy? <\#铺'e-+[JQG+!_XU+%oC\¥/q{XhB-dR>ӞHPm7ǠD,r{yUVF]Q'   ]_K^ZIPuEnR+૱sOTy~pț=yLqJ x i;l/,MR_po[Nnlhoܝ3rq!|bn?H<;!Un:j~1Él53+7hƙ^$teip=Sнʹs&0Wt8Q7ê~`Sķ]n*8nSR^QJ9_qMMJΗWRr,mX y "C&BR :9U { !IxUWҧM9M2vb\XcNN|3Q,LgU"3|xs֕WE^d wc<~W)3 @ap}iAP kOlk⬀FG.Ԧ(Ww1a7!_z|W6 =)p|7DV A d?6]D7]ZE6ZqGRDώ^@$NWWw02%C`;woJZӐ,'ʚ'W^53a-Y7}Lpc߄yEfCTgς[Q5LT ԩoC:TZ_<Sȑd(Tj~*BR3lɦZ7| (-8AQNI ~)8ne`xɰALGS$O28OȪ+<&3w0τM e%^g=o6QQnxg}Nʂw~$@ kDsg"DGij q%Γ xʶs9ǚ6 9J ӹy60EAX,l`>~C.\Obp /5b'7}<c@µQ-[AJmG:}$0;\kKwd#P[뭨XT.vf;ދ`j` Q[Z "2^eE)m0@FV5d!z6 @3t$8(bylbB"tWD /ڜ,l֑e}a-l+H0yXh".(3*BSqxKL'j%cph\@f:/*k{;~{t!}H ID&|4ҪM`蠐oM蒽:z7;m HHF]o份Ԅ"NQ Msƞ5}X2}ġ4)MؖJ┩R Kf{F zl$co^՛mXHst>h7: wvqrk7un3P^9uE4nՉ^bwHuoPMƎ4|>(̕t"_/ Ȱ o}[$$[ 6hǁS,3 uk_AD8` >[Rvaj[THkSt6^QԸ^͏ ºh 7XVd9 .ètj風pḣ}n@vbڎRZ1k$,ܡ8j]]CW?CN:spYŀy3<0 `׫AT `S#܀|vDb[K[ބ^LAYYWYx5[k%e pTO "+fࡋvLo_`!CzeU !CV >`c@{x_o\aHX^H˲yGhFq*!x(ѿ.cP@([30Vڝtj=8{Wf_5yljxE# 0jZPS(Bؿ{h6ƼUJZ8O-Tybz6Ia5* -o}yN gSDq~cuHてMnmf?4f)MVP\bUZV N^3aE^ŭlzj]<=PqL-mR ;{ clwt02}nGk6?&Rۆ$pQ%ˆL?K>VF3Z76;B4hkT^X w`3a)%$/74E7cƵcO 0>iCC/dze5]>X/NJk+?=wѯ,M`6.Vc 4r}"/f]I^ZӭktdS?B؝Lgzxi.ʃ b\UʸŽW/ ? :a7QV ?rS0+OIňhNW{@5-|,|q ,#3QXBuf(~GyB#Oh?=Pn"nZ(, & z6F8^~P0^<*R8v8.? 'F h`>]"#O;$dL⑬q@KOYjK.JjzR 1^ƳH\(5UDpT9Pq3KOXM_UҚ,tY+zb1Wh:^Y=K6GK is" "0->U#>RA|AVVfоnZ`0quh5Cl]LV>O7Jqe`I#nA3E*o[[\0\6O"+0f_۶>F].nXE =3O+m*meݲ,T^j$Q/2v)ߑ[7mAȠs9^ Z)d+j=HGzfhܛUVdBPŹUGY %,CRۺ:cv%zA;ws[%'Zm`{95c^ ;/ 1rcRz~ SmӃpwiVD6sg2M>ӕnV'"x3BAψSE3r6I(prcwNz0wa< &|`@}o̻ 9'ߑ"[Reqۻ.6q9}2۬CѾt ډm=m0j m7ZI64Q\i^肽yJw:Uc#Cޥ/ů _8  U6(3UEuBvi f9 Υ7᪒Tt* bB`^LZ4w竨_Ά'iR#PxjB(Jż HPnOM)Q@"A>KVdKOJt,tu%BX.ydkBr88&^SuǺ$q7 Js6)=q9''Xﭺ(9pX5jAQՁ0?Cy-\пLUd,j;lj֑*@^.$[6Gѩrϼ3O ¿A =\O xbzs̤M8iGMQ^胰~R:_Säd9{56iVkA͆[_9ePQEFV(y d1:?l.iF=B}Hƽ#n3`䬧#9̺ЛPI@9aa0-m 4Z-D!maG?]N% ʅ;aJ):Ӌ \(\nv#hSٚgO>i47=L̏ܬ!mBAf A0TZaZCӾ1EW(/KnHŇ@6+r=w)(Rzل @V,A+đh:6>tTNB^FV9?w>z/6b?,81zT<:&^8QNU$h͈1k\0I~ޣC  <[|#FXƻ܇Ũ9+sk*Ͽ3ݲzz :|,` A])SzTUm=dy@v_$J!'rFEd*Ko̳J&A) KA8QBaҫ#}<*1ACx)Am]P#|ಸшg x% |?Fd9έ6|7K{A=mSC,QxS[~2l^ "&_+[V$ a+z*;U5O?ϫ,F)ޔ;t“DCi"˯WwgE3bvTRB3@_`fTR?;Q|偪bߔ9>ܓ;FyX*[2±z`rz0ܻ.iWQB5\ Xn>L1RC20 1*WvRus[ID|D }gA]Z UxcF>ʑt6N}ؓC~jFO񙜾vip4J =DmN@FT:AnWwG?hjz0ʖX7/X0jΌs$ƸI_Yg%ЫƧR>+(>IeW ­7zoUyYs!2ۈ;, U׊YMj|_ZCH`,%k6 &vݦD kIKx 3!]?eBf9>;3"!1ns?&bkToQ4ɆjJ2=WƦ$`scu9 mS/~-8;MV y(9TQ?C/3,ƌ„ ,$P/f nK*)4J»4ٝurEi n'@1޽Y;xY5Mgww=~R%smf4۬AVn~@ RD,wŤ Z\U`rX9"+niD(n5RE"j_;c'ynazVю ˯yz_B>[h 8F&c+}:PDHZino ZM!?&e72JJ`I hiD"nW32~5[~'f$&+Q+%z@O'>X@ .aƫd.2i(EWcepA FVߙVzLjE.`!Xy'+Y-Ǫp+v˳]`qv|!d |YGa:|Xoj_lPzƁ 1l gs_uAHh mu) _vIpg*/M\&.>[pd># {ԣhk8{j8BpHqؤOU;uq އV@-P.6f͖X.bH@iF]zf(dX%R zG5]rSjIk vo.b/Kp`Z#S+׶#DsI?N:Fnd;EHd =|/BI?*cSybp3TbeUtYlJOV8%MFOʁ:iYeAYa͖YWϚL!*ڬJ̅Ⱥ܋dP'>W>tP1fȽ [uLhMFد$pؿ1HM7[H[JkA_%<:w@EL$W#nژ)+fryV,gV; 4u ;XA[}Ujj&+B, =V]o-#;K^$1ȲK 9хǙ&KƚVs`xΣD,tp VנigP¡!xSh;$<dg`7f8~ Y?}ݬ5,xZ6ƘGLаVUEH .(<cwaF"&2ӾR'agVP-<+iz(]2*ߨŽ4\02/!6_F-w9܍&5 t+Q8O2d/4sMsXo,T ]w~!߻dYJlmW6s@}'=jK}ƚc#߉_u1F"r=̯ mWZ9 [ aX2OTo*XHm9%CEePT[2'^Ww-Hp]Ph 1&o]|E;6D.mҺ?T]x(tJvuƒ 4*C/V@'!xLP=4g f&dSQ„렀$vYZiɍeWٮu8%= y1[6Dpo<1WÔ)meP5k|%g&Mv4!#Wߍ si,Z]Rw@q.!fh{~m X lu)ZGa]i{f^&WH˝l8%+% v!U Zj@Xo5yǑyD2S%L%v +or3>ax h'F_(!:a`%/&©"C]4}\`uST;з$}Sn(XٵiGh*,X~4ze\-2%UӎXjDqQ,N!{?8iیbweMihX2e30 LwRw)-"FT8Pe,TM"ލ&ZR9#C0_%:wޕD{ip܇ 1C}% تՔr8WFzByRX/9"Sƪ͸t0iYe:йA%^Bx1X)/P1xLMu." 8N' iؕ;1k4RJLBVC%3|Q8v5mo9cg"g=w RFޏEڈ,%>McI[ o@r~ͱhDE)ЋJ2\ 4-KK i/WmeoE4E6mS>9ud2Z\Hnj1Ȇ+蠄ҍ !q>|Hhi3@uͽLӖ|;)(6BG$郾#5OZjhwhj ߵD3HsCG.OvNl;Qjsfj/~Lһ#:7~xC8.ۭ==yG0$@B$j7ZrR.2|yfނC(%rFwOb zX͏?SWI #hLmUZ(ɇ v٨G"Lj  ߻[ַH;ގ'EG3veުk\ GE D741O'˜<ƞ&KЖtqIJ~/"(*ewCH9Hkt+> jU39, 0w|Yl.Lk ߎpm:8szzC2zx{v!MhufOae8A7CǓMU9_2d L]  L( ϟ{p$o!#P+v{8m:ZAv+[  ђ>XNhܤn,H9[)M}A  ^<E'h _u0NnrhL%掝Km6Y7-KrOZN҂T[#BezWvJ3$Dt uH3!]S&c G8N*%(7ߕOi~~|RJh<N#%G>JN]?Ru[B0Bm)IX\FhyyQȪ&xwaeнF{a 9inkq@lY26g>:!#dYG$|$,n}TDGOKm`%|7HnKE8P[سe 7jid~ PeC)蠗tw2%6*IVeYׇhlw[7/*1}ON/?򨼜Ph |wiʓNkGoNT#8}\-U}P Ρ,lѽ&YJ,"^Ϸ ![( m"qB2a,m.yl%FWbST5k=:vGG3fb1O.?®D#?~+ CWp 0^]c)_lź_Dsz)vXL7!Li=VVŕ,8:y#螫dIwtMhM"VmYȻ&ŀ'|*Xe%KsF+d$ocк{jL)- 8Ͽ2Zvtk!a`cs'P `bNL}j7zH;o M[tD1^qy@\FonϬUI o҇h ԋ/M^Tb!*{*7zNAxi)t@Co%}E441E:w0O,=+dzL$!Dl$ H3TtpBcǙG>u#秳ʎ/iҾ5-es$.鲊Ave[8jC[Nf"13P &wWy|FCd;/kb C3|&ڬ\ 2a| ‰R!4=XDXkx 4O]mrg}Դ z5& lb; >^aZmp vBӭW[2.MK&dG wR6 fG;14Ra2^"#ԕ@49"J [OfY8Q9g E?X>'ʫI$g.ZU(m1rLcҿ4>6fůUpf,~wxZnO>@T(ޢj{l4"1* ^AwAtž mMIJRR0VǶ+XgdxsEX 34Z)@W ޶Y2f}e;ȣd 0iQu1fJcP,w@M _D8H"/z۹пto"Z2-& Ǿj j3* ûM:^魮F(/aߧ[* ʢ?G+(-`D Z`3Ƅ8>k:9eH44c} $2\pvG{I+_ ig˿6 S/;HyځQ%N5 4}Vu+Vψgcs8f@4(NgCtj.OÇY~4Q5>0m2NoZA+ʤCb? xZj OR͟j&]~'*FCMbeP{x[kZTLG=3Ęj:B`J#]z]}R\J86{"DJZ ?3 {Jk1/"V\5ea`V6~!$9ZMiPAAT"!K0dHlY.?us9rA VFh눔F_ݶ.@y_ɚ}xgJϛЗqga ]4<'-@>Qm"ecXtO&kܥGdpAfǮ1Bi| ΰ;݀e?;h'[ʅ{š$AA2>Z2s*bKwVBώ0(1n4>RAv2N,x6`P7b Cv)AbElDHb/K%0Y:yg^kb2|j]xaxzZ8/bԱ,D =#wg@ףsv4#"P1-+P˰GW M9:eGC'"gw 6 ~q椺0&6v2Ah`]])nwtr?N\r 1^WHNotx;'bf2yXItAtQLs" 5ǚ) Ӯ+rV}#NXWH~Bpy<{'{z? V#II,Ԟ"D:u}/%Ln䐧ߴ\VF'1IԉOg5wu[t1<No=*\D'z!OD/cj繰EW`)Mp7LGm$ ,x~R5C3 rZ˻:(]Nz>~ׂݾ^W^mk)w1XbE]:) HS(?ɗ7g4ӟ!?-6bl/'8JzKKD= a fwT:퇵pSg͋,-zIFzVHN(ݯ@VJ+Bko,~sly\( SWͨmT9ۛ O~{\἟|w=?S̘[1I4\x&4\:h9r54L|wq|'M6!(QV-ArM "&m]* }ރ3:Y9Hȸ zKV@ocA؟mDt; 8!d.ݛ1"IxQ;9q%+*͞bz-Im|H6!K -VsԫJl+0r4xLTX vfzo?FHl@?n6=Et9nl|q5}uDW3`BIU@sA|k|c:-j m::ێsډ 4iX7~ )`ڍZk[C+E:1GH.aXC:> k1K΅c%:LVw%o@1l<[_LÌ@Nظ;s4cFˎ-' IrO ;"^!kS>fƚ b0̽lѵ5dAɻ*O> BJ;1Ʉs`V1N(MYyaKbj-ޫ[9"1 дaD\OH*(o?K8C '鎍x7D=JͺMjγ*yM%Z(#Ԃ5B<-<~nxl7^oJ\g֞+~׏-/I* pMDQ%>@}htq.,oUe#CAҘ5h1.L'HiF9?"zvhLvVJݜxuOOXo( +Ga1T5j%,l̬'Y_Vq44XQqo^@]wx'9^M |G01%BHs Ui@ ;x|H2ՒFmekqLIO \ 1] yuӧ۫㰑T s@D9fI|$Mj' u7BV aMɸ䯬mo,"`pC-4ʄ,uNU6 <),ڹ0]h|IY^>#~H?\cƥ2Ls9n GV*,:qkxX/[&-_P5qQ~# )]7\wѹ`{+:YV+ˈfCTMυ+۟2* 1jܩΒ*UQ/ {^uV-6!NG@R4: ;'-|,_m?c M"|?o ^+KY2oiu Ȣpbf Vv6"2ցuCͽlO_4|`UG1#'"b凚jxB dI (IlY=:oc5BTð 0 f0̗;"U(t;XZpFX޴B: "ĭ+J vɊ!LR%C# 6w]# $KM-ZmTih6,XZtR/?H*uQ*k63ZXT4'd9${M3#:E1}r&3.옟id=PjbBe⿡ykr#u yR?x4cHVɄͨ=v䑔a侼=fB'[`?jhV6ҧ3]0j0 1z]\ʌGf!IH:?Bı E7 9y!k(d`Ù?H )Sgت4-! X6I 5\3äjK*;`ݕB~^-T+W)oZJc!TZITj4a潶9q/Kd7ZDޔSD08`ٝo\3@N#5#ubg %䑭EDxoxF16"Mgw#}GAF1FvIQ 1"ȗn }v D д(O"T ZOSmA^Hc{eYO60r=׊tZ7zSdCvk}ѓfqoRTpWrmc 5W9 < 4>`(deg_҉i NZ@O!n0??KYrj_w taI0~] oh59 lcSe^%!夞}XNi65Q0&~͕}2'}Zh[湱9IGВ滩ҸӲ&%"Z8*!\A]A2ᩙ#rYSfeл/u!.qCʹpY:Dr9wF0pz7s%ND!}Y&J.=D_iHu?8T&/{۝*J-˜wg$=_3kct>ft#@hÖ5eIiHj*c {sA=O)YYt^. , {xʩ0 XܬH-1cmpd- \/n~O;פϨ3OOG.!h\Iȧ(YD˖H$*wdCA2=u!:Yb.Q?fquˁ nb1sԨaf^zƿ>S^;}{"jūr>RBd=fD(2= Žd;[|D'd؊{(,Hwn F< XNTt-Y(YXcUeW4jMM#'Ժ}@?VIcek a4K̀p7oo^[hvv&/+#$FFл&]sBΕTHYEjϊ{T߿on 4?QZ1uxu$Z>}BT"2$?Ԛ1_7ۏD.^Ժݣe=9Jo]f4 "~ts8G=֎tnbJ\ A4-LRlnܡJXp2f .DS?kFuDIUXbu"=Ž}6 ޶#XinKHUߚֲ^80ߟt| ?ZcYW/32 t̊ PT=zPn¸vj0\T:{lc sD٬*4fKҿ -+zW9gDjf/i ݿ @lLu>:B.dK3OQ6"BeIQW#moӍ<Gg9,@&'tj6|e\:Q)-&㵺`?TsrX^uۚw=^*wefv*.j0rLiޫӖɉT?fȁ\+vIԅu\/]d(3+%4 pjCf9rt{ db d 3׬X]#s"Poi5.hµ4qY@p&\=l},+RNZvһ3%ֳ_Eo^P\}ͯӪveF_G$m6k[N +\y݁*5Itˊ~M7"g+4o^M$rV;% e6tel~=LRS/Sb !)!ˤM,S-1UL{710l{B[ O9We|7^gϖjLU5GڿgN ;b5!+}ݓmG-juLTRLVԃ'/Ng"pԊ- ЧYf?Ċ ne6w k>B~777+\nzWO浹{:ċ @qcg\jhL)KHw 47'O5#? խ+$tvgJ15) 6Oxű"LH)х?8 OZ#b#TiۖN:t<#)[ {@ʪWg31ßz:zu( +)Tu0\i%ZK_snaw({PZJe|VK]hگN=!ZPicGr+_|H/GLiL+VIe:'317*a+/,A>z/3b۾XO.UoH￸2`+zHAVQ'cլv@zn4oswl[*37f Ќ^ ? ,ǘqmu7:n>g`5ŴO 8VQ1)6 T!u/ b TQ?pmFu߄ϭKƔf*eB&K)͌{2M#q@q+:99 . pjzMNAy=a/߰'G?{@ ǔHw7aEept`bz@VΒ`1eLדt_! ė͎ӝjR1T]R\ߌ`  ʜ%Z-CΘ%t7͌(ZǟqP>-DuKC4v%nU rz~K!`)W+h=+ЬVͰ7q=VF0t0ykA&S!K^uqFө'8zrҏN-(~M$ƚPyFLʫ%̼h=l@RimZyx2,B`+y$yvk#(z7~Vtg׈SAYW$'(FfJϳbY|m2=fˀ؛G.17/8F|ŎƴgL*x*g Q|P<)\gO#.2E ){bYkLd)@lI(a\=7Zx67Go>?z7YOΙ} #*=s-Z=4 b|; dӔϛImSd')R||x0YלB3 +{?s>vꢇ*!v]TG^2.7ҚlBNe.jXyc}M$zv^?S7'}\ =K2{ZuA~!5Jc1=e6Fr e<"}H/ڝnI X&H8oC6g[F]3q}3ٳAN8\DBE5mԦZI#D,nLΗ#4P5$VP//ˈU?2m6#cW]]c+CҘW,ߠ_V;.F:˄Λ9SVzS@Õqy#]us<ô™g>0!9!eco9Nx,< U0O8~׿5Cgw:؝”] K<,3 ~Rճ4%$/xc*s[5ipbf2Ø&#~cSxPf{"`//@iIo9Vxv!,uzNFOn&h[fU!rM|r0$R 9C4 }&?3G# e hz\L,{31գ:uXgC}X.\f'FD6y4}I@/^VY3aKbR[P<Ç%p"˪j!߿$,ET`3~]igֳvΡ $q>92Mv$~Yi70+tZW;z|ZV)&)QF`a ݖ{Հ*@i8 O&FRvhA k;.~/M]-dH,~ 5Pb?2yOgU<ڋǒP((`KL&ݧ]O#ɾ8ؓG(@- [H4= ]0^k {NxDɾS>7BG}/Y-EU>WA 7|ʰpY( T>i ‚p! `iMJ ɀ?WiPPa7[vxuq_!,}ؼ)k࠰G׈V)kRcJ8Nym]z/O4?.n"l"=o8Y.N\@Hyy0*9)$!{ t q[_SvRl 1(x4Fi='@,xɝE̴ y1YɃyjXs5 |+/˕bY(t]?7Tjhے2VSF#,;2] ':@vIbpY?ȎG )~U'>u40-Z, -]_oXQۃ#>mw%MF>hlcHIPyĚ?"!I{^ɪAf3i%!c )FGj¸N^_ZH sފSfdEIHߕϹMթjZv4}܉^\qb]!xg& Q x8$3Vj"y] 򬚕H$f&X U)1CuF6KN5QMd@~eL'o9$`ou8 ن+5 ,kE4wc=f9c,-UcQĠ2}g({|r:߻os0U=Dfha m%w7W|%p'_Wg>&US5b30.Kft_GjF/nGFXu{7 QצA%?1{Vf RMkdBtڔK\\"C0B^+ И@U^m-6"qvxۈVkzwuV y*^ADR!Hvh Q\KV;۷Ou9{JXV}:b9G[|µ#qNL J$؈l6.K?E5N!LTXg |k!tSS3B7*~Hcx?N\ꮢU" 9O1'VA.8vut<(,c#[Y^b`*J7]Q$zv;/{L~cYHSݑc{7R >] ڼMk="%E -Fk7U^Egn{ Y/NXFkHT)ZXgp)=ӐlX.~*=PsթYY kBDz{+śpA'Ze0$u/?zEfA9v=+0PVB*<.MaX [U|i'- 6B[+8 A !(BYhޯ:T RqAuM̲]eeg[LYJ;0t:xyaSQL9ŗج=!8 g%m9hYi!ǽE_s%=Ā>AzEq6yߨ;Xj )/U?B?\&1cy_!Jh:tOYȆ һ(OHdY[S*ٖCJ .+Rb=\IpSmjؓjC8{bXiNy|MȠ5nYH f]Vbsݎxow_xN4H9ĕgbB%W0'.㊖8r+ t'5ŌJC}epkD&?\?o\ kx|tۦPD ڋr'<렴brzGx{'.۞)f9J;g䶝*)'fn';UWxNE쌔b7[g'Ƒq1gӮv}a{ ,3QmNڄR 38-Eu!+ySTA,~? cܝ+4<0ٻS4 }nz 4_)G`!mhgWu}3o|᱋<\/\ݰN",0f7im2^Jz:MKCR,%Lx*W{7ܸ`dQ,,ûo5]}`+!Ak5hq %О[!em+%SO:G:.m,`K:VP!a|l%X6 tX^.9k-Xr=K  pvy+*rzPD"Y^{W7RL/1D8C,}[4P{~a\(ü2% yWV7o݋;Nɔ<C륃z)XY 1}Z ^XL@mى`$:TMg!ф*;FPjJܜER#]Ր2I̟5x"[=!(AOE]&C3 gf4+u`CIvfinoTܗ-f-tٲg%RP}p,𰰈-obu@4NXz@vh`D|>jCa?P98".Jج3ioFL.)Rku{z;#*5Lz$Dh'dZo BDW<:U֢h%0Et5 G2ZֹUpކא{p`9RkYR z4eLҤZӽCo΄]Bl9(fSŹ^Wڛ VvL lauhXֽ,޵*L7YX;1mksqܖxzD%t Й+x.#cD I|D&} ݅UkCoY0׬y>ۗq@%M<(DzÄlӈ2_XRjdS曷MVe(ӭ]zXpm'  Qgw}L `m{Ֆ/rݖܹ=#֟dllnձ~LbKQ j9a_R dh}o$+Q#/]@SAti܇:ᗡB 맔Gi:CN32WJlh" ~XYdIi޼\ oZښLU$dGٌD1>\EXq2|EAlpJq yDޕ5 P󖒮n1#kMl,3W<:V^V޷6dE+\MJIe :]:'ZOc7 V V pzBSx GjP@3ܾ1*\I*k,OnJZ4l=Q~v+Z#ty?20@l|rvskbvb !# >&iz0IOkgE]>wcR[~.3|@cT Vޞǯ9f5C/QFݿզtQ˪^r-U*Ep M/j=j#s(+'8:l;^~UVC)|/0_^~гE Eͫ-PoWw45P8o@\Z?y~{+8)~Ŭg" oDڅt')nJJBt^#J ޚoX:25%ƒOA hntXS5bS= =ILaĀ9'^$l#}>2>8CuIyi<$="74 kg*Bz ,R.;I6` A8C#i $e6Jt&#D K\Pg&.BB,I \2Pmo0!m3 (@t! YqҰz77ˢqqAt\eF2+'yH#9EÖHA" `Q cq=dx+T|9(*t鯄2ь}*o!g/KPwyDh6rZ,SisZibqo}kT2M׻,X74)۫It$,qy&kiz61V:fQIg-PWNnv5w=$mADo&fcmMd/IqOQSN xʚsɴ63qA9Վz LOd e1FFԥ¡#ž'Df?I(G :8'?n4TDWBόT|d]yʖm39)\Nk%'|ZSQ«ua$4}'&ܚ]v<ͩ1^ iwINcG? \T&A v"7:zELYsc0 !w7 ;ptv5[xT36`8 x9ܑxUDҜ߈zTǘ1V0X<yɓ/y"d|͎&%U0nej' :s)6r U$XcPwANVG`!koѭΉo(u^G2(e&]WAж!:UBQ6[{(C 1ZCqtd, N }3KJV<ůr֊)g#2TܤҘ93HqszKT`b*)فX|Day~Uc{2C86rz_DCj}@@~^^H_ kzk\(/K2:Ʌ7{6Q'`%ǩ\h0.׶ dKn4!b S=T-;cb(13 Jp]=̊LWqjX nͺLE;@$H ~D-PD,q."=H."4܅<{^&瘟.yB`l@;D;P?a9p5wlpeSDۏ6?Ϡ'x::?_z_xC%!m]o19%w`gD t Y|X{"tbx +,lJY*Q27d:R/x: kv@ӹݨې:fKkvv`J.NĐǢvGstx fv|8Ǟc mFsqa!tS=E lNuZ7־+ظߠ+Hi_s5񎣾k6_aQCszq|]cKK- J27.8.PaKx4}+[ &=]"]*Khf؋CbLmx9|_60(f bn%4;6mADᓺ?^ּG bRccTW jSp(}0DNT}?|R `iS H P4,ȭ?1%׫ (Mm:zϢv&ٵ`ѝ8ؠ1ӻ!Kjp5?βS?4 ^p܌%Yq{UUyj˻ N I oQ eNXjV5?/dv}T~ j9H=|#/CZ4&jZ/NZhh-P&5 +s 6b@ۥDNLs[iR|bAOζvE3|Bk:P\pzK|.-c>n?܏ LqBe(doc࿂K,#+!ιtMgZI7PXsV0xP7HM*~!'Z.{M50٣b: a/DJ|~qxrYhH dov&*O:wusBf84W$'%_ԑ.]G/ _E[<0"_'Gu7ju.0k|7 és) j9-GT=yRiيh.>DF+<>2̕z5f[D o2XNbKSb-Rbv D 5Q0ys/{(R"uR:Ecx~r\?˺iOv9Њ6 Ê=L}{,?`Q:sځߛPVV`md2{S .<Ƌ6Pt^XJA FvYbCZdjr &H29@eNx-6ЫݮT'-wR"R%Vޥ`C+wO!WYbw5pk,ߝA }X #b:݄6a' MW)g0t*|I"'}ؙ{nj*l`5K[ULU$.#ƳfNuʒ|k.t6@Olf&HeoMW'^;Yi\W@ BK-7-ً`asXy#Kezxr6@z,ہlx{0ʊv%˶8U1,-Y59v^R1+Y[~G ,U[.P[$p O(Io2>M^W[#Y9lW >ϜϬO Y?0PRsXD+A?^N ’qKkhTp@3c§xв 5NH8⍬ҍ߰D8"(kM>\6\ Opb {ao1YhFUp.û5bz ]'e˛+b{'+,E%*% vm0'LN/͈JIuKkE2+ bo>3e}ܟkBq0E+t!~qyCFC첌ْJZ`]rEl~mfȍ$xz}gq:Xn1(D+2Ts)'Kn-@7ҵ?+M Hk3S}9M׏Ś3U{a㗜 W2g*'cO?f!"x&}PRq`zKcMMdYhŘMr.l"h²cr,>|O)kXPyT/8 1lTEEVb< 0I`_orT)¦Isy;p% B5cXdܱaӹ{7cMZn 6\Q&2/X5mq6i=0 /ХJ91H] XdG44Ezz,<\$2`'rwIٹAt"-+MLT*m{ 1RO%'W9"CuB9gPFT /T`Jjizrh7@ -DGGKܹ̆ E@It!խ4.8`*a1Ʌ+vAv|,؟NMhk]Ca`뻺 1&I'Z3쓂d:;jӟO_TV7K׻eTIpZ}ֆ~>-e+iݍc#ج'ˆ l`WIԁiɣ vnO Ϸ7W6#6~QC5y9 N>ͷ@gv?ҙƊbn72a*BSEE i6 6vRҟh.~P_.{TA&wF,Eyآy2_FeY'vJ"v cwlkq!&i,n F4JJx=sW"8 c$R3Q(#7ޢ0dHp Em9GY-pMY}z{܌$! e6ɀ+hdkajg!N7 +:+,4C*yZB;qqa0>ơ]bHHv*8׌xߪ.j$T9D.O{AfH}-+(P̮q6=24kdTZ! s`hIk~ㅴCBa7nu*Zgxk;&QBc!+Cb;R QfֳK s +2Iﰚ0Ƶ633MЛ<mgziC޹;ڤ-MsV lr8.p1`jEN5ں[d~9Iʭ}knK=1'T||zT+` 6&l-S;ny/jP"t'`X7߽TeZZy=K$8Řl$1Q8 i >B0rA2F 2ind  Rt8e"OűVC0 sr7?}g+PzPB}b-*Z*E:;*-I5η$Ke "jC#Dt?s˭ s@ueX5DCVHKmm dq(bG5bK~;b.ZH5@mKf"i]60J8BU1IV]5>iNy @QgtF ˯5f{1)SLjfܿLX=Ds4%6ϖC絙7$>oJ/uq+%o:G^N:K$2LxQB3VID ^?%˞@erAsMm 7 [r-N!'򅂅v64!ȇ_ c.=pTFz:J nf iPd^ 826[PSSUj@h[moU'`F$*?p B֏12qpw hB~-FH>__]6oJ#ʸ-ވwި3umCD4֗;%8q+J0Ut=[SLbE}*?oNS$8e7Լe/b::Ogn}&q]fj9WdfM􍁗-[ Ji130{ &Z? S yoy(7@ W&l5T5ƵgH@֎at' }I% (X ~K5?`zrPb~V5`j`o'2Z],~RN%ӓxX$DϜ,82d W%1 ZY(ɝ֗$r/L0鞴ַ'~D _GG`&jA_!iapdr}0-<]-YH\ m}s]׌J:k%iS*p)S$$?|ޣ` ZI< rnA5Z"GSJw9]ӆWzhˠlWA{8|YJAiZ$r f@篣P̽QQIH<(,qJBR|1T"ڂz5(fYSߪ܋cGY7f,A+_tSy9>a5ock-R67dۂ눙Ao/?A)Zma2|Lߺ“'_lb єGŤXW4eAUQcO 49Ajn_9N҅쏁B+}箯Ԥ#iVǢ*7.=mLCƘsMfSojLN75:ܷg?eޕ zJ<;{ ez#K[^\.6 :lD<KR[pEuQyiV $آ`>AMva#LJ|G4|q(g RX5lx5ޛsf|/P=t-ۦ֣P52Ff=VU~ڨBÚp]{w]3?twSz#V"dJQSb jࣧUAƊѾ07* ]r23]u]Q4IӬze uwsQc9Ku4ʘfkB7AcS2G EHTL שSdwJ.iJ$/U򂉁WiC@8*f$U&UMoN0ԋte,ͥ r7,֣FO{P5fA9Nc; 4ACO+]`zURO})+xAt;n Q< |W{bCD%lԎ?yq}=$Gyk7Zg1jvW[ܥ0\ne;i-E$bJ. яm%l+[pd f9Q'A,TS"?np"]#OVi4(4>{ng\ mnz+KY lSƙk_4R(Bi[.OnŜq{ 5XM "PQJe#Zlr6d4ECbm\UTGr͍fvr KgAĩcNh*:Vj90Ԑ`1D9摓g2/v6Lu&Cxa|a$ g^^C]pJ\ Vӫ}(ãxY9+7#\̽O+FЄ}ލ!)$ҍ( ;‰J=-k-hBF\ G+o} LB(O-jdiV0^fiU7 ]l~R2Ʃu2 \y1QԂtMuqԘfKJ q#drFV 3F ]zQ Y1zW5+P#SԜrLI<2 ٷGAcfwTM'W,fR\&1SHK)Tc!8SҞl2i?L7.iz '-X;uԭv)8 ;y{#׾cjJ* ;,v2Zv^k}utu98(N`#|Du̇9[gQz2o$vRB:vT!c@Cs.+J11[[–4a{|&n$EU`nnjqHV*IO#:xIVFWcQɋBB}]Mo?2W W`&' L*I8O{/x l6X5KN\ݦ:'L.%8o(XaÊ}ﲖGՋ覙ix g!zGw 7#h?{Nu_Jb1t' {y)pW ~ FiFx T^IPS=RC:v <=U hQ9LO| AL.'Lb3]Yw:9q$AE6G6â:tLHCɼPinz*w_=ݡUwgp:S7ߖWq;RG[0U+o |mM7Ef'9 Z!NWGӇ2O& {87`Y Oh&~, FSp K Zp9(70BR`^Je=[& G `,Q1*yPvؾ,9NA؁[=آ_U$hֽ8Рb8y(\YS:!I]Oع=Zj ?kT~:Sn|%@r4)⾉kBn,Yi ~(>Z;6bl nŵbszVZ.?6 N-{Y2-6 y#$OYCfLI31eXalIAKYҦYOz4)`4[|"#(#Ҹ})ZRS8oA_CUS`:74yqB, IStʩfX e9b.^}]Rõ.E8@"iE3FvUh$:vu;\Nt[AZ ٭.5#qp55]kO#:?A{r,"ɱ I &C EZD7-i^PZ?ƉŦ~snn.ٟ&\5Єa8?-oZV)D$>h-3l'qxeq7lP>6r?wH!ೳONl`mYs;/U@YNPpGc.@XvE՛\ 8Eun&z3uJ.'Ge9 ?peq=:Q} N=?Ь/Y8)dw5kf*N&'eѰrN>,>]0ڗ6x%˧g2ƭD Oy=z\saEK^Elsxs_t]# 6oQ];'oz&bJo߮7! jLZMbC9c'L3V,#kHĩV!jR6Ԅ#ha)c_fyMqTh-аqqaR*)25rMZ*p_r&!4\ȺGZ+\jϳ_TfP%}b(HB}BBt @p% 8шB4LM]3*IUNq]z֚s~2 |8BV2F'o*IL7(/6WJxWs"Yi MgT'Xo*6W$@ 3j䉽Pf!zAj̑MKEtҥF_, $d乞х.=]k[bY\‘1xBXM9}՞X7өs!S:7!%>I=?szᩡ~rT44TѶ󻿯>E !C? i*=U7hRd'1N>Cѫjg2@MM! ;8qORO%#m#!l⨥ q8&h[?J4FSeIgJ8;1;fd-QEH-*a!%HE.b#8ʾXz-{?­8zwCyl.DT_b='}GWe?D$t1P"a6ٙRtIˌAؼ ?u-Mz_Q a$;jfZ['",GxsRUs9f&au~\I}*auwP_ֶZGER=d 麻zEJJ?=`3x2Q=n``S?y?,`"N=xsޝ̃m7SYmBivH`d:G-B^lE"bMl1()9=?ZRܻ=u0>/ ~ @O[dWKc0PWC5,|c82P W*kCEpS9$՝`Za<^2wX SA鎮{$.&:!gm#yrq!C"@mnwV$12hEJg:ѣRu){#ϟeR)*a Bdg:n"5 ]$ر?B7 Ee(n)另PrsSz@+@Ry,pݬV/Ë bU3LMȯm_'CJ#nȬepY0 p `$U9«fw٨бx!|D•M#"B},WAT$U0x! c\^{s8"v7k ms rUTҤ0_]^N2 *qD]P 6u7G:yXO='#?"Y()Jȅ9?@vKR_]t_~hI2ӹGI ]WrlM Ilw&]WXIfRbs4>{E>a#{Y0;uJz51;e^g$Ki>5BM("`x;Zs\Kpvv"WQΦ# ѽqE5B́4\UY@Ҍ3|y#]O Ϣgh7 FDa\SiY XOʘOHMyJrwv +/U2=r ^Bip{ ԔTr;GbqBha[5qADuU~N_-]Tqo67e}&o?#-ҫ0à,+w҅XB"`%5hZ"&y_Uü\陼^a%Lk0 Ϻj`]sEw{(t~D\qq"|}%YC W9#bٛWi9 Ru0~ؔ7LS/0 9Hs4 \ߨf8x :r ,j<}ʰ^CDbԟ^۳_s%Yx{Fȟ.a: !tklf  Z?c.i` EʁSK(LNU^l_nwqfqFUE[쀑J`~Ϣ6{>fR <Q*K )c 9w 3 8Y!uN#=U$!Yx]«W }tCR)yxkxn "U=qtU=ÁÒ'&W#6TX72o_MC-k 7!ߗ:n;BqN&OaB}Ϫ͢k;:SoGfUඣ7’.>2I+KC̾\&E=Swm0!b;#\{Ōuz ;F=>SK+ R $M .؉Fb ,?AYsFۣns8mRߩLh/`KC"\gxl,T~,j"޻KG'vNZR ~}ЬZ#gEv]>Z' sw,]/w40Zx}wZDWE}l2]a$d5~nmEG϶i^*zk,,:=SEGMeNiX1# [',!Si-aVa(l ad#Ѭ?kOߌRvYNo##qpho$ UgA7UKrus%7y9"RH h؋+ ''@I+m 7 yH:Y"/Ri !П |*/fůӃ GP&!N7!4JTecw˰BSN]˱UHٛuP#xQ?# kג]@?Cs?嬨"q&0)$+a8vӻ8 &Whc>*4~jb厎uNj:]rV1muۓ2\dI!R7Hw4Q|2l64 ,9I ,ubH]ʎ+,Z+b{,\V0cB:pF@2?|K{Po-h[IfN͓b5jm]+`L⽤ʝt?llW(*?wIp.h¬z f #5'D7.I续 !vw23k 8xs]sM͢H`6U yϫ29H\TN6r7@}kߐ:@Ihr]V'tj?jnJ8c`O߆- W"n>!C')?`F;)O,H/&ᚫ񠶓-LaqZh8bYp5sfʲkf-Mx% /,TgR66+K48){_ߩA7wxF;dlJoI =^Y@Nly\~κoĤY(Ag.DZt?>{lfzGBL*ԵK;xZωь/ m;=mV0'+|A4c:~8?j:o ĥ(7)W?QSC~C!aC"X00l' b<_BY&ƉI1CQ߫΀8$;u? 6h (]$"ηeS e:eZ&ጡ^̀?'(M1暫ƩkXF6fK[hkNSY,h k:3BvF R_ڱ/ʝ¬#͞aŲQ2Y(T)B{qPCt~usH M[r\D>)"ibHpt6oŰ4#_Sp^H?IĜ/O!_z4:e mK$Y44a)@m#ծUĢC3~&+2Af( fst2v c.4d0VĪf Brp-F3(oS_Ew> x*AE扌&S3LyXF g,]ٮ񸱌G@d5 0Mdޠ8 o2{*;,Hf걼BfW ڋ(NK@g)Ua%~{j  ߷lj.uznY6-mlUeBU;8mPY9!Xm>>rqCֆF*9=ɴ=)tniAJ6!hP3vq"2wnt}r'5\sLmdfT9eU5Q$2MuA%7lKӸpKFKuP>,=؃igX}dB4d(UZFB$?o" NthUÇBkxgLNӯ@~*=c`CʽTl9;uf'LQ%dʳz[~.|>6ъʳq⡿FV(F]:i.Q*G0bcF9 uKB/ mUnGU/ mi\Nc7{#ȤƸr3/\ H(6<_vc(G(kw yܸ6'<8[NxgQHMb=3?zެX1ubN[T8.)rWubX7 AN6 EY0?wq ?rS4#4xcy&GK\MڮG."-WΛ`\cP"tEl=>W_@Lf @Br u1k ҟ.: V8f a'ힱ7u4N4lIHQoWAlŀl^tŰ =N܂2$-qàBcnXeLt\M qeVCΚjiTn!@.hڄw>YM.fUA(&Zpjf315'== ^s1̣|:v85b 4v k|Jm ]t~>%uxܶfO~7-_l$̛*Y6pod EW3rx쵳HoL.` yÏ7{nUeew6GS(ΐ$,u6]ڛ#d.u_ݾeUΓ=M4Q$>fm}-1FMZ (`@<Oj?*w8Ň5 fKIfpTk%ow| r:ւ' [%D/ ײӶ꿿7,el-ckW\{Q0vxd<>qwI rUrb~Dnl% tS[OIz՝v2-R G:  5 0s+i5PdYX UiLpNؽ U.L?;;fpRܸ}BcncZ C:AҮ6d=}0) i8Vp9onI뫄 Ej?p_D38@q?wpPNDG5w?F`?437EjVSAS熱,> =+;:&TzTyFb1JhTHKqqPoar)hJnTȑ$4D{[ސ'A'Y`0)xWem6 Kn86\ O?%d;?tR3poK x; Ro /OPR"DHRumoy,@뒛ņJ:&B,aK4T!\4p%Wbbys#vJSok2S;d4df-adۅGo# TbD'(MUY~L0톪0DE m~Q]3T? UOV3! pITVfa` nF0POҭ=8cOCr=w`q%rL*],-kޮԞMs7-]gi6sSeY `3rȤZ`]_}cA۾%f((S M[vcF˯MSg _7#w$܌_ۓ}E|$S xm})-"T)$h+OC}M|\Y"#at|iѻy PigPlZɋ} ?aHYg:A"'*xo ,pE?E۪c"{ʫ ~j}h OUljͲ, HDrB!A^#6<㑿1WŎ f#q*yk7<p_.z>1Ga%P)/.DB7 & Ii;;,C(^zr|~NEw MW!n~qTyO zH!?iE鋌"Gm}$iղ 2NXe]x8Pvs Ҕ=YȾЊHﲕs3si!T|#0j H֟b~QM7/܄Ubx^JZ== "M7Q0RJQii8Y?s$WƒsO,ULEn@s<3;͎9*Lp҅EEui;d~쫠j*+FQ~8.@zB^d( m_뫅F($7y>L&؟c_BGoV|}b]ub@ml,YV)t4C=aKƳKb3VKOhD z (Vn1(&HL>yhq1er6eRCqӟf3R0jOt/%( -TZXVVmyzl ߂wDAk5J(NI{ ]?" IQ赼$52%w?_1"K˶h5W⛎%0ʒ!R}pgi$$ӴcC34rLT2BJC8Ϗ #`Hs|ƚ͎ `>_ɕ0| 9Қ94;Tɨ &"jiffϳ2WnRR$ǽ +s+%ym`L4ˊK 3v_=(|d4XJl?U )0 /~\@dQ&aug732}r`Z)wR̿Cv:=;:9T?Do"y >š.f3qUv'+pg֡x["l#R %"[x =;>8 cWjB< >c'[z ѴqC+ *O^K2o_2k74r3|BXg)L1]B"xnzq؄?f/JO""qԂ镐! _>ժ72^W>DM2t3i}fARO  @N'z=oL[ŪUˋ+1AZ)NŞMjg쁫/ {MCz.;,E:%FI!,"v=Ҩq&z9 czvx!=kݭ6P3*#)5>P;$>(uh6oSF|{\&~0v$j@_  x<ǣW3VєY4"&wALeN=[ğ m^t raU9r#\S7)[(xEp=\yuи0 ߩ tP&ַIv[{P!qX'f*lE WA=Gbh N'Ds*X=ɰ6#G"eg[2Va?Dk N%rG)1^()\&ѢT1 [.őzxє3 =%Y&rѬh}(L 6Vw@ }KWOC^-Zg`mNQ4q++O1on{@P,p3ƳF闦2=fH+H0qa&οUq|z#w.f9Af` ;&Lbq': Ox Gj}awn .t?J׶"YIJwEzoӢxr8{w3\cѲzVSf!hN:,8+ll4#*`6{#2…j#L:m1{s7F';'H9r 1ebdM~逻ޖ +;xshq"2q-4(B ZYTT'1XE6Л'zyd;&+(qBZp FF=v}Z +`BK'3xH'IdlH"y%k9~ԹZ#n3{x;W/}g: _yпBT5^@p.SIЃ\/S ] @)9W0k쩇;' ,s _żC4n˻ O0qb^Y!<'t-*:J^4s ޭ3)GIHhkD_+{s544dxŃٰ 7VO TBDlûM( ®+tb]c5_z W@-)҅+~$R!v(4}#-eIJ MPm޼3koP'EfjS͹l?!\vb{dabOY!&Ps@18yKm /T,\n3+Z0dž0b%Ǻg>2`ˆe# @J BW갭E d$ Tb9 |%PNNM!2=4 9SgIl[ s(f .! uwA|Ȫ+ &Sp6 &TE ōϜě8 ~˴DlӀϬ<6jV:h- <]XsNuYC||/.խ)4+jFD`VfiI[(<&%~{}~Wjg6{<ъcWY~ET2Y/eQ|o$1ࠈ0?+東թ/5;S)cc)P4XK䆠:p@>dοe+*ZvHm:' tQ>ACN?+#QX2a3Gch|007ϸ޸`bh\+\f T*v W@/@hRf2b2Cusᄎۺ+cgXmI@$Ć1`r ^^H-7gR^ˏ@l9fBCKJ(퀡 WL):V6K)5f~ȡGH!cf=gD^bkg֡?1nPc˚&DSIi?c;TI5ϱƒSV@cƲujRIDĪC\[u65ҀKzq{@v`! 2]OpW5܅ vPz7P&ZD?rޡ Ʃ.8H>ƽ74GlIyXVo{|m&eWX&_N{~1a$eBYK"%8wly· LS1 "c &Oi Bzʲ z_q&d}d%Ĥ6Wc)V5KIu3`46r+дH^FRz Xƨw&3|?|&¸ |"M입e俔~yVŻC&tPfꚩӞYU< }kjGG=v`Б"c10h~&J[`XX7v<1Os2 Q| KF>0.)ΖzbQx'0'(y5Α}:N!Y8BH Gv,Eכz\' JsU$M>(t),"P)w:LFF}ʶ :{:I (Pq*bxݚ۳Ƽ<~9\Y v/Q3[ιt^ N^9o:${/.,Gnfw/f'/)>tkLv"j:IDg~tdڊs 1H;!& |C 'V(4U@PP#r *fc2FQ|S^ND1S6eF5꘻gp}bw:JVm[Ś< CHdIqTy~ԧFc$#:\՞$ Sx}^޴*NJc?nU[B0rg;l{,q _a9^c 匀#S.uHQ26n &&/3({qo$&B}iy #p$ъ. .Gm#C;{t{ Z|aT jq?ˌa洋gBO)a]]v >E5L`@:JM7Eguh G|vXnm6nBOKZĿhl!(ԔmZBj2k9۔ c(-cv#yzUr5xeLՅ|2꠷RzI.M Yb{ֿ%cV5nkA2p$/:%ckDzDe.4}W(ewbi0n*p0(X{D٪5/Fy'c<Ɏ$,9YhG^8PX䵲ko[NJX3=b񅙎n!ԃzHb)z\{/æVFXx;V [OծW;[Wͼ$v#q&%"p"L\+78U4&P[ ܅ɅK|]QסJ%>.'Н?f4@37ED?~(8o语o\؈6shʈww;F8aSWD$ J]'O;&lHQ0Gc}yz鞨&M_^9s< '4O{imx˷ V!)}|DЎm$_A[bW.|{kG*X.`j;ybw5f~ lNi: E{dZXBPafoc*|hE mzHJ5򦈖(<QSut9_HA @-Y$*4qzvProšecV4]yk@J0NXΎ{"kp >l$pv}ϪԀyDF*y_IBp3f^,|f C{c< y]uHlf<:R?e  g^tgGMQhTa}.]dt,b.kx>ISTE0ΫyGdM :u-5t~֑Q7&}&Z&2%t>8Cߓe/|UàqmB,~~R,qWC+c̰61`y9 ?.[?h~T _!;wT5ZeDdTH3O?b>'4NvYt8Jg lB'Zki(/ݽ*83"pE.t[i؎{z;yf[RU>ڕVh>`uH3&iF3rD@- 4VnG_!8A<]P1g\>Z~%řd$&\o|LAz>fB+Dw !O[KJ"JuIntT Sǜ3p'!+cEU_[9`&>GTq>q;x#0/L=FQU !v`7FIgYu8wxQ"vf(VFuîw%9~"C` Mh.3;™~zY!&G(VI>Tb&cK?,$.Nm1CG#^qhɑ`$ 뛾^br |uHкS7o)=2[NjS,)m,_'7-" W+1@1?d n[L%ox Ŗ~},TY6}ς ^z5-5`[_lk_-Ž~+6owʧXD$(aNWZt2^TlZ_L*=kxkq,oUq|Cl jfm m 0mŃ~۝G)Cf<|L1qe.W]t㯡HcQF= _ۮc;k>㶡&UxoIiuPK+&ŀAvaq:YRszI/4zffKB}R٤24N]_PI;JJoE\H\# gl  L=dU1Rɹ >O3Z pjH eA$e%݊MA'G)R#&L8Oi0HĻhӹ((|}SLV<֟6gQxDlb!h;gZ ?M70x9w9{&=E 8[{T|@Ubg~k] ֥!]8 O^9;VJr6,*uHF[t|N FqaآUӪϺw1J}] 4]NM˕71і*Q/HqTxq"VG,Z>DĚb k*aooe[k%"a3\0 Qz/tSI9La g;KT]Y^\5&Q :du:.Áh4XbZ3|ɬM(Ηaqk㮘x*6{0"|i `_L>aiDTICCGh\ڡuǍ*wrR+n>AZ||pS'QAWnb}痉@U R u8$|.9wb!@8eK;6rw1eA20McÅjj}- iW`;3'J~"RN6 ̋{C:CpW>uIv9߸i\S@ʉTC>+\[fAQ 4PqO~ߎSò`$-!Hզ:ōʭ|*g= hW,E&Mv ׵ (̥ޑA_[>'zyl$HO_/B粢"}]˰m!(ଠLsٝ:̗a!E?rd/F1%7#>zhM`jP}buclZԴďzT2qQ LHB%LbLWrI8IQ鍝*N2Y D0lCt"-#,I&+=?+YyatfmR@1\Bll^%=>^^^n²b'-v`AlY- (=$6qD}0m5P=՚CҔk+aFE÷v{cZA(uSbaSn > `X5oGxљXw.YAC(9/v?Ԥ(zK7[/׌'>F09S,s*fMJ,c}4 deR4J szYj.E_Q[x|(;%Z7gKEvK(K^D iBx*3F+[H%f+ۧ,̧9A>V-q$NX1p"zՇp9YQ48-R|kO)EcdMCs io3OzBxc\نAc345 'i!P)??TX\gwvA?jIi7`,L*ᛡtvEGǤ%q&7xT$XCPI]# cU?b9Ay .x<Ґv˷wI0G.)p_|k+KyA RrhMGZ%9g$@,!R,n?P)}nEYu3 ćDC-65TYoӚ@s۶ vE6pjVe[L`;FZI8LXg6"g49R>n!؈z)YjP+2V bɝ _p?iۿӆ<=cTzis2 Qʍ$Id_wu)Q{Yvz [ :fAyNP3IO lu7U36N'I)qj.?P3 q𭍬ݿpJCY $1ӑ1R..o1H.<񳮰KԦ0|deyOYE>>|FE8YyqՐAY{d=>`΢jvZN?Lx5TvH ݷ7袜b*bNB&яoGy+5MR -0>5_z)&C.&Q.VÙ=7.T̶ZyigC3A Ȕ4HV <Ѵonrj %<[J\9"1ۡ"䩼MΠgz wǃW7+rgD+c쥣 {jU\J9#sG4bRA{iy LxəS_['$g+q>@8sͪT7/&sMzNiԉoQPK-4tŲ)!10UW!r,L,zQ ŝd܏(,=p)sJڏ<}OXYSZ%"=Rj;hn5%u:'lDR $U1:[ K:t=Tl ʧm)}L1aScPʑVoGa;OyF\hpHƓ:M+x"n~ؙϴGw0ۇE4= [{=jƖ򆍙V6H` ئ,ҰJއR0L̇"iSA@M02J 5 ot#Z+ʻd>uHr}1 ktJEl!%e`ĽW7gz&tN^lNsd)}"~EX8p4zHw~Ҕ><=#L'l&؍ *n6u+'&43Fv[|Ӣc6@0nP_϶7 6V4sB'j"=uug{9}wB+hlaN>SI~Ayh!E@q ֗4wea)hKjXz{E~OEhmUk uڷF̀S!o( V}YPD%/q64+S^ `ڶ]@`S'PoODlXèUR!쵽3f~G̓LKU&U~Ob1AsW;>#QRk:',:?Oo݆ԑ@S>ezX,Bcc^ęrd ;+$`4#../|n|RQP-#;||ǩ~T//Mt`=?!5o[DN8J(Tg]`ek&7.]۬pFٮ=B{vѷ Ob ěZ&7 ] :g31$q*kv*M:@az V4S6ElCC ęf= (_5}<ճY}۲(kB?/n'-a9#sɃgw }p.tP6HGW ô'P28V,J479KB0CFxRG:(Z^f0*l11fٵXaTQ$(hQ0,2;]k@a[9 ͎y [g4>H ?uE--E62|6K >\>#T9z6i,M% bs;OO vD˘QcNy8ZqDE Eq8 YOTVXJbU!nR TvcPJH6H ,j}k(gYw?Rc]hhV_avk֋MWmKzX #K|!|@*5^WwPgQblm!.:,)G|;,RkF:EN#c2#V)!RR^z6 PF;@]s樸UG<9<HP+ja|)>8wr4G %NA3c Le1ȽcI );ԯ@ P hWHQj3nҿ2gQ&r԰g\)xi|pH3jb{_i \x{Dmk0+p&AIkCjw,?78(P*6V3-CܯшĖr)Sv ?QCn`\E2w9G[ :k/_$li# p,Ʃʀch(1IT մfs>tsb-\꾡92ͱsoe"s%4sݜI:Փo\?Qf O YV8 (r<0kA+0ҵՀI$>>URm9"89hhܥz^[ĜE2ʎO8u4҆l.l]Wb9tZV?Х]:qh>a17⽲*]qxvrܑ:WG P/E͸S/ZQY$ dzRm>1K] +̗r#?*v= JSݽ@gƻ Y[jѪ;2o*XB34Br_2>G>-g뵖gWyY$-7w꤁p=1Ov 8 MYRc1"yIV}g**[އݡΔ{PDNwvUo&ٌ{ ]Q"!t[;Ƹu]P\+?%[ciST3K{NmmHEfr5!5Oן\R&-YPa;bGA EoWHhȄ1Gʆ8X9ַgPrKJr Ǚ./p882vt-1sџl%,+ Ai/"}F7~( {^D6W ,j%Yy0p*mwFWmOO(v9RȐy;nbP=YD*n1&zijc乘M'gF1=\mz7AפpˊmS1Y)?p'䘑k7D<6O4I ")_iVoHpxH797mH1{+a]懏 ïܚZ?2* n[˪f$)[G~UHI!ҚA3A p؍NlP:L+RkʦS"񼿙'R|ﺕIus z7n=X9ٱV5R.%fO^tP3D!I7R mX)ⰼM*LD#(j5 F}efr }7 %it0p[rPB([B57;bN+6:Q9âb)`\Y ƭV+~wKWLI<2* IݐVϪB082yűK/S}pb4):eH4pm'aņEs[2 G xf1sDyzKƕb#{ҴoQ`Q:KhmM38Gg?k!D5 }%juK)"MJh?QblͅUnwDҨASr)I _~h0y{)B^ K R3c ⋯$bERqi0 JXD>; ~dy-#2c5J5/h<ޠXjti4vqX M`Au25..\'U}{a5j@c%Cb‚=1Y'96h;\/W"XۭBwۖr]$l\0#!d0Z$6,4BȮ qq OefoBD'(Ioڧwˑt M,_a޾ZFL2$mQKs@rĔ>?͙PlP TԄ3'EI:{ߒt!*Xp~0޳'F0ʦu!'! ǩlvh}̜}/\GЁ32ɤ 8;ͥjO ")2.8U%a|c%P8[waYO0K<_ Y°{TV" `B!x! 9ne'3N>wb%h?Y4sl2Z4x'PQdF4p.mЉ18zA/m[Wv/Uwru͍t{H婣B7\''ϦbƅgՓrNT[CU=O-7S(YA+Ɔ{A© p/s N&#[$cռxlC{äXwp:]1bw(s*Hh ,`[;> ք@<fIA&Q͇\պ,DtӌT4G>PM‚❽]?o\(Zq$Qt7gJÏ򻄰(.^ 7 |{!QGsgIA qjDq-(4 _BE>2%͵ǥ]k?d~K͊ 5 cwg)CNS˚a] # N"8Is@7k7Q3TNh6t`na*=RY?}_R̚dgSkB|8έ-=z1,q{i:nW> dE[c s΅Y0.ez/esI/JMmHh:?[HpYqV>,=ǎ$'ʗ݋*Y+K~ \?3KHq@ .ռHDݠJH3|r3xLejI^m⹳[*Hc v$sB춳}.5-L/{k$= ڄ¾g͊dvA~d^?+R>C@ \c8W,ȅ7,JfM$-B"xJ3Ţ '9j^;sb0G1Xz픽L%М٨毚C}؁=N#Za @lYےǧYK X;2dvn3Tuc/)wϠ܂PhĬƺʶ4>s^E;/Lb Evn'jP/S< H-ae +0X>LT"<+F~a1[ݢϳ%]jCޘ2  م8#۰I9bH:M#^F2#I?1#\ž,T[ )VUG&$՜*EßRKCTZԏ.8 RgTB%O4R:@ȸUR !$9knnF}c$_SM+9ع )ԟ6|j}9j7 _j$f"eBX5qd%l1ƼZiϖE+\A2"߮:h Ro1:5. l%M<)J%!7CDIv5*=jX-KJ;dIsI(0U9<+`P/~T`:LObI* ]]rV_tqe?@XmŊнv+w[/3>, 5ˌutsjW̅[[H.ť!O.eC<ѩFm図>ӡ bEVrC\2v-2H6Vf89hY_M{B)酳N;j*^;N\@}h<`r=w×%گ>f؋8K*(g%1oxx.d=J :`Bm0Ѓ ݣBQm/Ғ7ĪY?]S; }#LIGJ`4{F|W;`T }qMB1_qV]HP0P* CC^۶26ĝK.p.dƗL?>jҋKŏe&OD68>^ =_#~Ck\zc*g^e&0>YKɬANY0B1y6ڻx!'߱A.W p~fV>w%h$[\,V1(KLئ JaJl:Oڡ?A @^nkliLc78VI-`-E3 l:&Ƈb;Y8n_Ph;&; GfH6K"K <Ц32 Cʽ*۾,hWP5Ω6nEK Y@~BJetJⷯ6Gɮ e4~]`nnW;?>-?+f}{ ٹN"M^%/8*'PHĉg5{ ]j<3ܘ=K`x ȃ 8Y34  [_ڼꋑ#y$E jg P5|M*4rSɊHI$Q1`z5On63ƲÎ0iFynBW7]!"`5} }8zK]r(8lAp/0ot\© U>Q{QG% e_?(MZ^3ٳ7f-] _aBIU4m[Q:ĊE'^/pQY2fT" ST'p`g}-ٗ+9<=bu\E[u[FG)D6 ӳx;jWYtluMK*= #z7B-g(!.oHpP+J8C_12AK:6!DxY榇_dxKgǰ&3 0TZ.d.RSg4H(,ͬ?>e?z̜RhVfu?Y4QIfIphhæ |'2{ǵD 7{v8LZ1߯QXWEwNi#~qSfɹe;J!iQltmP^ oZ|OUaFRl8*3vq-aEUC+yn%iuiͧ? {=c'{X{H6;R:DԩݱJ6WΘlX~dě@hȮt'$m계 <taՅV)#CJȫsOXN8h? Y10)d*#0@_rl^0Ml\ja)x]"t/}!F`0w DI #4[h1eej8j%o…[[NFmx2@>ÐĈe w1oZ}_+˾Cʈk+?bp+'OZ,_ehK?͓sRzLE$`;(dٽ},m;۰7`kxzw7,͎,b: 0[b+|]WfOYwvD0MэB'H_TR|H[ZgkޜKj,CV1~C$Z\!L4LsK[LlvKl]UNɒpYR/q$[/XgA^LxT jݔ  {z&&$REEʳZYAW7J\myq8<8D]egT6J.AV0xn6!CMWJHr(x:2nv~mLj;l2? a|\zr^MAA^t`t3XO55.TٟRTSnBȘCL+0΅4s:Jxם,ƖY̧" 9{W,X |`HIL,E$G7i&}?Eq^Zmxk }#[ݛw`x~b#gu@qk)JWAh_An#6ռ$>ڃ qC,@16X7 pa r bS )K qݩD*uzbFH2w3WXێ z}o_;Zʽ TPYO0ey-@tQ(709Eު|Ab*9l9-I7EJF}%[?ţzGl;ֆ: e7}uAEuOQް-kgTsV%[IB dbiLg lR2oXfNɯ <14 #Q`/ w\+)-ljȺkLc)/b]G3rOWXCoN`ennsi^ T^,yL~ -B l{:Zʔ):?X*DQ#QY_^"uY#G \DFv 7;+͐ڑ+#gQͼ+qkXp"7k@"aK+T^CH550eS!y\ﶗq-xű]2 dv :Rsz>Jvkp*X]d],2s=;)pL~i˙!F|: p.~tAG.]{zӣH;By Fw?50PرEOyDb2䊦Gt^YAd05PlbmC gꎘlh)= ˼Ҍ:@Ǘ,y8NTc7FlcBMۢIv;o FVTϢ#6s ZtAuעv{x##eG-=M]פb8n*i8"TO,mϠdKbA:#?G*ڵn9kGh{T^XmܭVMjw,Y\n|*K'h=fT *ROion=_5zŇw-3K&KX̣Jr \AE#F_IK2˥"ɀA_ ]\#/D'a*Y_t,Jvx 6;h`f}: n/Pʝ֣ۊ^|Kf ~FUvpբjDj}ommT&7 a<\; { C R1-7+|4>Z[(OMV׼QA}4j,{G"{V(ł ,z vbPw@87\+֒6eOD#$ $[n٦,Uus9ۚgE—'הPx"~ {-JD ghy H%)▲1OsR9.ZTR2Y!tQv8q&#%ѵL:Nq?nʺCĥ W0C(!=e$tX]:K2h3<#`Kd ' ;X8Tª{lD G8xaNfڶæ|)xI2)՘RӘ\AIwHNj$8p DTU.C\CV#Ih)'@O͎% 8 -e !O&n0}QB3!_`o%= |ɷSXɣ;5 `zے=\[4JӬE'T~<.ߟ>Fp^:~7=1w '.cČHZ68@+ J/;4䉽*\v?6IEk阍,KaEFj:=ְK1 8OE Pɯh[]OE얮K{6rT0q6ǻKmޑ]%h$B+9uK`8,aܗdɏ NZj'[ZcH$+X)P1 Nhߓ`ePF`dʮPNL'@#AE*;,k\uA /%#)r rsѕ;3H4=w;XS .Yqq)!-( ;' N^/!(wFD edRw]ebDx23@TJ!Q.*(T?|!S/ /^ ޝwV$-Y ڦ&;CPtZJTڛʎ\B;'(?k]ŖB  1'NGW NCAH-dvN$Q 3{{$vHT;Qw16!wJnYze|]y4<ڕ q2f% @PqO mќ9؍A#t]K!v@&8 1iY&P4vNfӨ6|̈\ޢW>۬t4,Z,j*=NVuǝhk*q83)ź/6͒) 6.TAŦo .܃G*k#.-h:.9ǻ2/ 9W3zb,;.KSQ9hDV >?:vSID@_Ψ`l;&Pp.Y5?]NGjsh{8(bvg&\iz? d[P-LhTî7ZVa<I%5 Zn:.<,؃z*d^8 nj%H-z;*&C$|:un0iszkS:Rn,OpW?ЗN8cUjqK%Ѯ7, !d/ E(DEdу ?eOvx·Chhb̙j$8/l4c*.B~66~;LU&Ylk{GM30k+ȥϻKp[LT3iF!qCga^+NT7A'-և,#%-,Bۼn"X#QQǹM[ oړ-3>|Z48ԕZJ,CnEI0BI{fR2q-(zcKi59yB̀yj1)7<;y+fa2} jP."5xLUP:*"ԭ]KoK+ e1!} K]ufBhbSK5xq Yb֑կcޓDF=/d8FC>XwKSl&`|z YYZ8GտaCQՖV{3wYCYNYʃ:\N&̫Qq6e)Ӏ7j[X.Ŕ2^k' ~Z̲{i륆/,]-o9mX|*_0;ao2ުULnm ˛ABpI;J{:#ZAP1IۅP⃊IP5ۅЇjP2+-bƘeCu!ꀸߟLñK}/!t~Mb|z_:n<._ kt\0dkm8AMxIl j?3&K$\C"(!n^/ZmR~H׻נց.RmbCx7+G=ϫ[)b7VkZ墙3ֱsؿȽ9w_Cc]jpHTd=o?}NIJUʍTmN2 Tn")4ø"vb>]^/nsjs&$[NVl6xuO\l: w0Q@Srd*&BCR=o&{nFtotwS>1Na74 bx8&x/+ThqL[cʼn5/.P.#{[ƛ+;`~ U6~/%!wѷ}Aq Ax_5uNC)'y7֏h#Ow}lwR3f㪇Dȓ!}%# {k 1bb~e YEH^gU5t &}2E?Hswm<"R@7tŋ  ^U`i &B|%\2Qb,m.XQGz.d6,|Ƀ7z@>裡K \[Ų[p [eq#gwi"%58D!4m8>g!*?!|Q'DfQd{:N(ߴA&_q||рD6G| $J&8 *0m%Z0Z]qX3Q˽bj +f6Ő 27.tSnuf&uxѦ}&%Rz"3UxO+Z*?I̸H*qܼM ^g F'I0|3}{>O<ԝ$vs]g)9ov/QX* pӣ}vzU~0)tg# e>W9͓Tnm a$DWWL"M,찷4$8Kf7Pl|k֧$r1w9KhĜU5G` ufcĴP!rKN3 a')fr#2v89L,H){o1Rth> }UWU)ithry?Cicҩg&$2' qRTS+S>))0a,Qdv "j[ {ҭk#B_Eb c>ԕPTu 5 qTwS]:\7ݓDVH~'FM0#U> Cqm ʫk> P)w kMp Fu+G'duu09mY[qOSWJdilV`Vn= 5'f BRG ql43,@PGt}k [%r8[p"YD}9Y( TA8(3jR}5Nn8iLϻ+#_Kӡ$e<D5 --^ j!Uz[C LXչ-+t W2}浶h!F_  V :vTgqj߭4DI@O("#KdP[B˶zR:wrKH4lY@?dc "Fg efRJ N²T-"CQ #5f2V mUgEUR c[sg+1E5;ͬq%\SAF`\ q0 ڃ 7j2l>"LrO4.Y[&橇KLm}EEe?6:+}=dec k@ql"ώ<R=c j*>Ԛ.|Z>@CbnB7 C1.h, }sP:F"+)}o-sp^&t"nA݈.rlk_';벞%a"Ը%E5Å5.$.wZ[VAr'4~ϨnPP%͘2ůJx;kRphK;ϛa2Ǽ9e1lUZښم{;˔w"dn,6Wͳ"H5Ahzb֍-T2z1Ҭ=tq&^$&3ͩ${E3m5ʥSƀ~V4lHtPG~Jk;٫B'rG /#+#.o=K yG7Z=F2m~@#6Ja twj1dTܱdk ĭ /K@su7Qtz$gL8󬲂كncWDH߆؆=[l`E50紈 d&u8rAEZѕ[Nb{LC iٟ홵:5&ѮZ 4ƥIsRhJ$ L0/I*o'EhRnFQ/Otp K3E=5Np3\po,/yHFɛ36n&ۏT3m[y`b7 ƙo3ns l>!HbE-1C鲖(7̯v֟AIzN a ^C]8zT&7o3*+]4__҇@?HqϏ,Yۄ9^U(KΖkNS<(=Iĕt|$3T#A}~TW'Wz\#-Au43È:_=u[?b*OΨ"(` n L=MƤ|t?OnI3|ۏ >]=24%tm];#qfu4A|0u"Xl،sϯYB&4MV?i֜3];kAuUC dJ._)gMDPa=9QoQ?"եv$N֘ @nTPW2/M.c l/QrlBkEE5 ^)_|w[4e $jEJ#_ڻfRJ4O OjR$/ |@~+'H5,28G߰ oQn3ϐ=׿Vh8%Ӊi1[KLB;)\sɗ-,krsqe@8Ny0:VR%I4;1܃udU;PBIc;#UrqAELTjXUcYj#4+ ka)޸g W]hM X~€%w@SCcPC_YyNϠ8S k#AߐyG0Sv"eb{dQB b_"h@k~!؂ao`.Cיm>&U>< 8IGTQh~HWvzNk\RܴDhTlOcq6{AGT˂к^D4B8' #Z ˷t-(Oz\,MۃQ yu5 n Rs``(3H[TsO4XM=-K1‚$jnr_e|pcq}oeyގk!?J .mB"$A# >l`{5I2pQyO C;%u:iNl?fJo|Aĉš?Rgp!R, ]r'8mO͆9ن.w\ZpcѨ*\&5CL~k W6I:Kf;Vʻa1 mrosL 9ԩx6vY^E)D`iUyJlCI9]6f0q)kHBk`BE0$VWl"%~q4hfenk =&Ð\/ (+aL`u )}hΓT;}d³G@:!=[`{=#0տ;=pj{^U"S*p1IZP֋lBh˼ 'riIRf|^es[g„rnipSl%ZV9Z{J7z~P=%^*(S|0OrpǔOV/ ID%YxptNY (;>45հU cEՀMvX8q8"'v&++/Xp'2'JD2ѹ^Fp@2%ۑPz@Ѝiimp di|WЂx_%b! !zmֿkG%=on wDO5C@Q^ AS0bjeFds?#hm4Db?$ Fk6rƘ37lElM݋Y ́ѥ*:iD/ ImjrBԁxwDب>3YUKdmDYM|"ٚUT<nZ+֊A 2禯wT䀊Lv;d'1,1ZjH۶y=oL`uV01ϻJ)&Ȫڊܙ}&TOZyP>4_LuUCC<(e԰5ˈ?볘Ds/C@rY$=ޜNɘz}f p?@k00Y!\Z^B ¦ K x$EnpOy=U3 67:b1=}iLl3z Ea ?=_ǁʠ'8* kk6ZF3(yٸ7R_*L?83tC_Ad ⢊ܺZȂ="VُtpVԯS+33< /yr2 &@ِIQI/sຈaNkCd(K\=97**\%2AxU_w3daw=fֽt12%{G!w} #.v`)x"-;fB)q'.] ,!8K ͑d ׻ʈ*=MC)y<*Wdzκ4cz|Cp]ls; f|e,!B"+n^Qb~vP=?,S+ *1IN6vN]S&hL=}JB,*TA*Uµ+1LN^^NLZQ1 CzB8<UI%$Duh"rB̠|OT OdmJd>t螺Eiٮ+4ccQ1r:E"xs(G`ws)yc Fj>>4>y L;{)^e篎|ap\d!ϯ-5varaQK52[׋y+ *3GNN;aN|wt3ܽߚ`rXJ"殜k=Ә]dWiѵl` Yg— >]NlXd'"d;It4DHlI!;$Z)i_8򠯎MqÏ]g^8FL#$W'CҦyRָD8B#NA2)޶csXͥ l\!0%G9X0RL{_r}(a.=#_Fu0fm幺G(֊K0 hܦܴ꺦$Z3_U:A 褠izJ܋/Qmy;=.82ED B'tPdsc}O@`/"VL7ʱEUV%[ԏ,A?ְg/ZLjDڐΝ}()Uf\FShuCN5͕Zt?Yg;-`<}Iݘ:Dlz޹`0ָd*$5`,||Xڋ$^D8SSqe1IP qY2>b2]Na왢0ꁬpp'9l#na'2Z)+(3DI`ZuhѩD ޹ CJm:{cO*1.+TXE; 68[,$@u[Y+ZF}P.tnd*OIT?Q@hkQ_2z; ƶP|]fiLNS3n-u]}=+!%m]jv!.1lYA}8!Z6mDpTxQTV鮷+q(RʼT8 lP dXD4Pitt\"S >#zck .4zPk|c7oiokTaDZ-%_SC@Z0R꼞:…~TTgr\&VxV6K-9mRm8x [ k\hpX $a AE"5𭱼}1.9;P/,C$[`ޅo9&K1[4谓|M^ԞOMxz֫NB\ !S7d*H9 m7=8't!o8DM}Ah.,3+f> Px̿!җCQ]PG:`| UUDzV,2r~sp45jDX^Scf;F {+CW}c?;n.ʥ(`u "Su_ݎz6ǛǺ=}pYDqsLݩjh韉:u /Œ1K9(&JXr󚳎thVm~a GDkVs>XFrR{sa|%fZф5O5rmW~B,.{W"Q!$3v"(0b͸l!MĹdQj$_BD,(~⦸|b)Qf7JQyb?RwpesɛQ,62*jȋH.J83XR!HoAEѡ2&L0OTqQ4Vj֘Z)_p3a@BC3Y\XJ P~~昳;NX{=N=>Ԥ_tA10?0OWl7߄AlO*Du#;iJgdYk2:G|Yrs)JywEfqi}ѢiT:^Zfq\}J/k~qzATrYf] 1ut']d8_ tIw7,Iӊ rSs$佋'l)ow1 ] ed;Wn{ ,c|\\GN/->$kzd\0q N+c}&C˂Cl)')~1w Q|FdW$ŋ%.<(Ha$.%҉V ^L|/RY{>{|cOE`!JXrLBpwbiX ٺM7`<0iAhX .(-U/ p+IRYR'槜`V sqXȠ4z> M6he+ 0I Xu/?I]&媔Tp N]&ynvP(eOj%>.6q+Jbgr Qc:'=tp>d%GBh%')__c8)q+&E4iļ z_E񿮅aYO?Ɣ9RvbiEYwR<:NHgW:=xˌ @ VT/@ +&W7"ɉPD\W0PR&zTRΙXZ9^݁E>#$&_8J n͌^*ՉhT)dм~ Sġ> 0) K2Gk&o8@i5ˮqޓ~{HoM"Ar( ?!x0WbM.=H9 z0 5*ǒr#^Phkh(OлtDf<ƨe'YA7{#v%cC%BTֵG9{j,G_|Khɢs4”o:9i0I`U9g2r>vT#Iް#W) 7#L4GEZrYʼn 38dSw }%B"wv#>ϖ 9zMX#?iC*GQ[Y|fx%dLJLrx7PAD̂-(op޴gJ\Sh5Ue2ۧ[CYbc4P6j''k-Dj.S/Jd x7$cm$((|D`+#ng.GoݧWY}8dφuF&d?\i= v\ץ˒'Я֛kF \Ҡ#o0eb"SN`$=&f0 |lmJQB8;q}KY!D %&!˪ށOY-ѭHT_g#EHt!'[W`8l}zGp[b:N>䓳|naT٨ BO|XWh V(^UCJ\Bukiqg^%Zq5F4GZ踼XXV3)Čc3Nء _,BXI~2)`%2V+Y: 3. ^7qwuNhh0",-PQ6zpi)Ǩp<SfϸN`dAC$An~0Qo," ",&t<c#'C'S? ARI#|EK:j0gMNf'a.k׾*$ |y%7jhW;`> }}*N5i2B6T-;Zlt1F-2E ؚР}HCgnZDVIؐɓdžZaA%eb|o.Z/y86o 13nanZvYki_[ؒmdY$lgeIoH}7ʋ<2 ^њ!@):wtRf//{o4ͣ:2Y5wNES]v ۨK&nmI ^Zj$((ƻ4Pl%Q"?Ў =}NH` cgkYD+4 G sz, ;JWԾx3l~c@O 'kg@l~e8.fخLSZ鼄,q\=ۅNUeuySTTT#VNG;Ҥ5oq*T1BG#R4yI*7!1뚨o:<15!X~,nllܥXKw'N8`z?, 1;MW-4v{ƣ't4OZ_- |qV{a.c ﯙu8-,sUB;zo"W_>yd^󜅯e7ns[CF5UDeJT l$ AXK-l^|#j \$h* a:uJi긦O`h}A2(w/+*VfnvS$RPNТm*)*$WzOѢN?d.mr^@ye;[Wu5ƿ9 x$Q4dE;3YiUk!3mɁ l1IJ-ׯMl(Q W / K.ɤJڟ}Oq75Zt )7sz "deGtf+"2I^_$1ϔ~˾Fuq=+·vzq/^o>rX3*&x8Z{97Iwhc'm,}6`x5xwt@O]47 D~=R#9 {;y9e*҆fk+Co^ޅꪤ ڐL`9JtEn!F o +KB#|-0毠 Q \ )HU &ũ݄Gp (fS#s1;i\!u}m4`D(ێ:9#\P>0]2pPbɼ^'3*_ ϹB6Z! mU r]Eľy4bx*[;V#Ùեe+ 0/sk-r Mq]CTϴX]:OXT\V&)@dԧ]ܵ "O8׭ FA4* 4f;ꇁրU ^וZ@_i{ 0[CxNڛ_ꤶ~["S.?q dοn$@O)_"57~&0N0mCEsHB=y[0}Q&vObZss!4 HBGd[e[ʺ -6THjZUaoGx>c h,nLH)iVf~{<`@r'gG#qJ;d!6nN '6%/\(rP E4שz0Ÿ름~"\\=:*=# oȇ,BkoQJM#tڨ@g[>yԅ.|^J +];#Zo1>O'0цF*FEx/5ڮgR gTC5ّVMWe|HqJCay J'Z[[DHÀdRmT54w^9q6@Qh"\i 'CaKUm<;""rT< ȒaRv.  V*vf1(jlq%=?ee,.c)}0h:(40`b%#eÚ? %nUvEatt:I߱H #@9kn0}%SY&F!sxԑ lܮ2[42~'W&5 /?;#`w'fs zn<42  bR}9gh=3m\] [71 }wٲ"5 SIb_{V9ܝ)ӈvAS( E:v"gLubyGUڴ\n?Ŕͦj+AVo!MKRhc\1$/s5RŨHka`;"Q)vY {VR&:DyV! =i=hr*N _@f Tkʓ#+-(?qHUVRʛw:N,s2uV\m O(ΤtgFAHjDR>U{O^#rVt i݄}1%3~0}[X[&_eRayr_~4ی_է+v:RED-xD?/KىY2 -#x8#2p),!HG**6퀌%\{76_i vS5ΝiQvuĢxz>*0C E3[`Vk;" 65GI=pIUϋ%܎iTeaHERQfZ'K>!aq>N_R]E㟘9)H)˛F!vܞvJcIlwDb2!שMZpvaz\qbb-Ar'ZY>lܙ"|JWqsPK\'3$8[m[f[2ڸ)NX [Z4$)uD};%+y${r,R7[umH疁07RF |ۺ2yBxK*DK Sd^ (tMݥgp;L |V4x+8USf[?f%r0MzZ06++βA;Q Њ%Wḃ6=|ey( H҇g-w"Q Bۺ3W|Zw#Wdkt4u8Ք&:c|tH5{(ҥ4?ۥT1I^uGgG^/ \a=oUq %qj8eYZɮYA}KL*ݶKʛFfbK*x XDނCo=v%sdr7iP̖;Y;ܖvBv!*A\35R_ o!9d Uh  qgd^{( K -o$JⰄUmx/#~SY零}䄳Q04LYnUu}Y'aUHL+XP `U*LI'KqQ#meJe$\ˌcVf"a'v08u}?(& YCɶ{[}{vwĵ~Ƀr'HwNC+w^3ZAy[ kF:u` vSB"c X)SBE0&^ ğJKVy Xb8h1X3lʎ )ԫf t9/%.bgY8p`%IHM)D-u`+ -ZƄ0r'DZ,-/`[ Tӿƶ'Wj޹ƣf1q ,w^O/A=1Tzʸ\{'n+ Nch KˊS^s5i0F;q| 9lJ֋/z cT Z F3j/Z (lIDvz؜'9 ?/;-5<ӷoߩ"֢)KCP>bq?zm?G]Mpmp +Z/iѫh@iMwg9[J#GO!h/K>Bd\@oE Q*r-e{u=n")L&OzHAc/0.*!TݜNy0qlǣΨޜ)[m.:ǽS?|DnrB }!(8WU|׈ř҇}RvCL7 OYB/%EߗȾVeTo6XcZ/V ljP3!gbGHIԒO@0(p亽qŋ`xf=bS7[XiY6vps|Y *n:_0 sh.~X?F.;yZbR7]~,>NL_& x3U_hvlؒ:!φ.VGU~Pn2#9ڴ¯]4O:;k-Fo`3y֩~V6?Wcsӻs٭4>jR`*1SnҴ&zQ׋}kQ{OF{U І}r>9-Åg_7'H&e~|XK8Z*G`&4'$ҀH` /H9AS:MxjIba?B'tZ%陵]\n[pp (D&kK4Ѽ|{ +X" _jR6`9 nI@pMM AX1`N!curh  b7=2ؙ2|Ջ|DX쟿YAŠd+*A'%WXBGF,f)Gs0s+y08U?D /<_@8}xN\@z3bQ;%b|NfLۑ_T58ƫ2D'WYvpp\5dǺlIpTT")ϲ[v 'A'wsakM0޺nFXJ"ٓ/DI;E?<{V ԋxC z2ZwIE,iTsH^صYlxAe<^4b-1ĥ!wW0fLIl<-R_0 Euzc7wN %k㰚%j,ͅDp~ {'{G9QTLK|\nw*3}ޣN>N9SlY0LL '-#gGn62rGQQYF4EUr0%.L-S|:ɵvˢL ]k}z˫U2Q^67EsMIB)GT~E J"{D?p: zm8 #ٴ\PACc&/gN8k/b RZF8uDG)kx5.6^; 5,We9HI- s.p?.Nvn-a 9[7oڎ/j=Yc)```" h| iOTk|V:сkI{^ditI:QI҈dN{mVW= ePG%*ME]X6_EA{޶uursKqq ܵ ܎Ȁt]ˣp/MXxv; &@3x_={u%lh`wCss#RK{gj Xts8&2ALB8Ra9Y_1-љk01r?T}?n T ?8';Ob8c$S(<2&3J )=>F ^RthCTKGJ^1Bq?1s^p_P)2oTzUZ=EƀXǀ_Ƃf<Œ9[ azG.JŰlN!'D=K}9f]W V]͓5ARLD;δ >_s@lF@f^XgsL\2hg婳+=}$֫WIBCȅEXuw3$ue}΃uBxWo4ZXEUO%9 Bi奤xt j'ax(#hkn.qhLA"͓8"ϱ+M]X@/lo}I5}f4޶@ZgB`Z4 26 ]FeJ9qBRmw8/ N ֻ|_ϵbx0i iiq#dG kLQ<h!a# U&|9B+Mm7晾[y! ऻm|42Ҭ5-o X2 Uzr&lB_EcWwS(ZŭlWU,䘵$)Y] v8ը:߁=5Uax qzƂ=EB{2C.7c,/IpVN)Yeb(3! h0U} nXyI\1o$hkы<R=^2>E/2 \IwbVW@"g"]}fdŒD{Sa)tR^VL" ;=/{Y!ЗoE.i;.I;#Ѡ!oU¸gV$!)A!PD'g}L5O','ҵ-j?D_% JƼ}.ʋ_RR2OlGߟT8G~zmne}3-O[ZU̹_J˜}myl:Vv@,`zew"S4l=]6=lGXXmK͡3OGv?@-j*Ē_5K*`7W&oklҗ;9`%k~1VxF/'~"TP[ۭiu-u{*d|gC?yLL?:hH#n(Sl;Ξḍb5E] ue^st}8lFj`R7 "fȽYn[yf-$coXǫ:f9w pCQ%gOVpR>RE?uF@*6U\iTUz0rg= mh9H"h(H.Θeh:KOsUt6MMJcZ3UM-p@4G5tNDx_w]!bMlBQ3g{iN4>~ޞ [W}~Q@M 3CI)(23; щȘNPFlCn cSifYS97O :F=?v,"O^XC7X[wDcϻ0Љg? ו8W #Cik|l-ON6?OOC6UjN;03Y!oXivByip#$3<v *:#TP|)o*yB^\~E0H(ߧX7OیФ^Y\kT&bdZ+$=¡&JC<Q1ҡ8>mM&K0e'$<+~ڒYLq$ dNſe"v\6I#KSGBUtcbVܿk6cc$1ӦVU5SAu>RwCcWkE[ArΡNz B+I{Sp/=ホE  aKUal+jn,MI15cBLz3`F4j25 Lp0w #j W\3ZIKlaZK;>BO ߵC+{/'(;#JZ HRKcМ6+"v*SJ oY쟔ؐO>\m%0knc(*~ or9edA~$Dn\˒ݢ2M('\u5~/f'LpRtTn `b$>\sվT|8}pH %~*(_}Z<Z]q{AYei˫zk`c!IrlEZZ*⡁i$?Vk`eW2`Tk̤+i.ō~ CP^`=&.Ht~EׄeQ/ykf%JE><]Ъ @;tF=Zf(o\ʺ UCԂw B"%6=&MUJ3pATqCKHu\ucp+GåE=(W^3ŹFO(teX/O%~ѱ^? S@w] >5A<#i 3ጅT[-WK@K7ӎ1wC)]?{-΍}C}nbmE>׳Yx wLѕ s{|!IǟcϢ2igR{HO@C7L`^)AI yI N?g/P.4X'vOkG4Oh,ؼ9Kv[ û?>(o9cL{ۄ,W Pgش I8 R +"1Z7xG qpcY|S9\]KZCFNI%QPEa-h J9hNqcSO|uS 9 >dtTـ\8lgCtKHEaln`#6i9],Q[+Wf&~,icMmt#uTmGrKg8yp>eG;hx GbZh/ eT+im-ę.=aݜM9ٍl恛Y& &󧟎ʀ8@t >g ʹ  O%fwc #]X(C<1! nźl}wZ5 jN+䡓cGGʏD"l/.p)gf{.É !zG yi朎2#ۍQ5 dv\r&FkuRs%tCyt%"4鏚Umxײ % ED'IHiB_DZi7C kʳ|Oyt'7!C$!jŠAR3[g,ՈZx.ʌk`1`*fܲ9;ܣ cqU0Qyj<~2Fxz;U3;bեs c,f %/ړ"{շ"WˤԬYWӾ%>y;pE1a(IJTBCK5ՈFmVn/IvGb5vݵzr:4hƨjgf)ER8z+>Cj0f 'H0]kG.a&.U"cӦlTmi^ߖ! _.+ ,Tv\mHx]GyҍUl^2nVרS;=\4\Tc4&8TWO- m(Egtٛ<1i8'Dڄ(A; k%k$2ejD,>QT Lp9t_Z`GIp-?^~;XD[2;(*t3%SFP$*8gDd5Te.=4XuR!tY=co`t4[<ہueG1;Z%υ*{緁%2Qc|-#`/-H4I89xa0_e~A {z)MtD#> aac3ae#4B7=eAq5UZ*|4M7 ;9j"CSGE%`& Ya:eB6CCL2۫rCs3iv%=)$/NOl ; .2FrΰFM hY:MVAq\w(4[&!$FmMYI 蜙KLOo_Ş,O$[Y=kovEa?FH8TMrD↓Z Ҭ#ya¡`O^zjwfC&==@&:vJEI!S8o1f|| [ U&Bݳsg2^ke4-xT@ aOЉzٓC{ u1^D]"`v$.ML5 +hMn~jHVr>?AL@G~چ8;^|߹i0*0~IJ]#L)g|U r1EĉLb7$bGuSwʜ}غ EnVl%KxEֺ?˧f6T;}U-܉QՅɢ I[T4MNG;[ UEw\!A|Α0A3cs4[L_$=Z]b}\qRIZ'D{F>+arngy桸UO)D pFEҘJ ܤD8~nK!ky3x.I=qz!SaP†EſwϫUOv5R>+nö\s&A ƒNgمcw+xuJ|tCl]Z?pTJh,"B]?pBg0+}K[#~3.takU-<Ȁ9kfsӌH Ϥ$0(u逫2ΆnDp~@eh ۭ,{OYûyTRtkg( PDU4T۪'AV}.){l9DGD4oF@4^{8E6{X(}d~L{2pT:rheY #&A^QȞX/)GGS=-FtC&)dڦ_xrqJNWPDqt*W68?Gk] o':u»@b:U\zC@:A_WoebC㑷sY(qY7Ɨi@`E&G<U0e[LFlg2~fiľȍb㬃fVoq DŽΕ[O`y+C<VLpV5KOK+϶Vm9GUSR_MF'pwJ1 UY-X nMpzc#:s%m"[R) Fd+ jD{duݐmenL|5hwsdezK^Ek]|o蒛Im8Hj2b[BGed1u#CvTJFAfA|̧}Ҳ7Ww<9S31(X7/E@ u7ȓ dٗJ) kR(X~-1ZZ9S?yʹ= y;{Y ]'<>{D_2-kyKǻmZa8P]zq)6M)!%<]gH <00˙K"ZۥGJ#Os>^ yAxS[[77N- \y8´O16aLTg2Hh%>WF̹jC_y==lA.7ԃ72c->b!6 V ,W¾}NT$ԏU :_ ֒,8)ԾU~\s0O-Uv*0Ҧ_Tu!!MΝvq~PsgHKŗr8n?`qAt^ul؈Rj | j.ϖp=/ R@vM4^ )~ 6)ڀs1+ɘF3frba۩ߨ-u 뾬͛Iݤi;}ߖU\41MEՄ>#a9_,Y^qՈYThEvl|-Rٺ4J/E3@ud 0*Dޙ<>+;(4Q=ԼŭGSE<1l=<8k-OS*,ou3ch/piryX| o*F&֢ fwN LEgc's7O0 ԫ`짛W[c:JV %o(amKYBT lJhL:V(A(,Fu 4sP]-!Ąus]v+aW(>rA`oYFI&Bv f*s m48.]#`uʬaNn99G ,wʓ k tu5 g71g_p${N]ցeNpUF5>C?>Gd7hi8 Fn`bgOX yDWEꍁ %E+ s.%J9Wa.Mc'aҾ(‡S!J=-  |?тל#eQЊn`nBo#Z*3p gդ9Gu6 &6[ok*[@8;`$!+9=hIbh2?ʼn(!eC>(%Bg3D]+aՃV^W;k-U|)/cu:.P2W$/9М{LGjq<$sZό n1 WJXi\uWpF!zj<`l!XŊ@6ȂAHȤGk מX?`-jp{iqCb jcl7u&wx"m+ꤔͱE4~@5W>]s 1̼mz i `v1z(aD}];{w3#:6@2 0RdQB㗙 ljvl*1_P%wQȈb颳=+WA&@܎>*NT7weZT;,Q rSThrģ)`U7ebr>8k¦aFA&,=B5Xuýgm]-Pλ>fۤaҁ^VI ULk^M ,hKe9$de#}`?!$^;Q^!_όj;[v K8q<U^eڷu; `Ϯ ##wʗ)z{7.(Qc6zakM(١b f^rTwEΊ/AH*n;(ypLXp\UC?ٶ9ќct'// |g'fR"?} HZ5 u A;sEZA B >H08AK_#0׃Aߖ.91L@ ӘYL+9[#*o ¥1p^چ / lLl96nr b< 边%2ֵ^W4(7O&sq[ 5$WQ7X.%^bԦGopQ+29ݢ*2,{U*Zvuxt` t%o"ݟ˯\ ;XO/v@npB~e5޽<<4>$qϑ5<-y{OoNtb*MLR񓬍^##kd3C!b?O.:=\j0KQǠ jB'lV0S6ÑV;b< Y XLN_d[*;b{ W0Zd9S8JX%beP(]ZɹD/C[Yd|7|3{91L}a;CR MeU_ Jj{` P"gz >0Z)K TWizh%* ,)'{عB#FWn!;_vvIV,J 4=JSu k!Xr[ǩ,Ūmǧx:PIlx\mȑbHxdCi+HfCH+bOϪf M}_!aũGXc˴~sf sMv݊h4 WtqHQc}.z FcxfFG 9{ƳdߨX1NTvDs,۫և-2:wACTɢLjȮrhy2 &: bXWi4޾fRjeBΗ4!9 4~'|n ^g Q/z{}kP'^񝍑AG"g:8EQ(f"˘zk8\ XxWEc0D~5ba%w|T縙@^TJ~Bqy ei)ӌ"V3clww۩DSCI+zzà^Ue' \ju濤̧ױ2.Q_nҋBnɡSu7;8rDaS&]Y&$pDv;VLJ/-W~ yB\lG-w* _Ord "n_?2ô%2jҭNu(I_qҢ?*ogDoFK25 >FZ*bmJ`ĈR)(TaGj\7KNR)eCK~4.7=8@2Ӥ y{OtOS0O\6捗n1mn",=8ůlo@aqIߵ6G͡B*pk܋ O!OfdO\HꪂO0B}%Q+$yVe3y3afzqN9G FB޴96FB&xהO/]+\\g*~ڈ:OepUF1$76ټ2Ƕ5H=RwK7LoWMm-R [h#|@7-?= ¼?|"*r$.]*r2L/K ޳,wRMݏ/digU1f:k^L}Cy[g`! Cq2rё\=jdĴSK-?"^o\:so8x(Mڅ~l#,s#V5'YI_!]O3͖~T.;{+ˈ;絼$1->1PCV%'K[48`2k:_n o\LZe{ !ob&0ȼz#T>$%| P vOܸi4$^Gpbg*n~BFBVo?ga2Be3.&k+4 Ld>Ⱦg\S`Fn"!^Bp="8a@aC+Yy#/3fRC7$E P /ngw:$Y !`I>"#zm/ R/h_ {i~D:2"UdRUG~Q"'UE@C+zjUS1i৶oXqUS)}rg+Clb3 {)]Q-?1Y!Wm ( q?Ȃ̘(Ͼ.PmEک]#@bld;J҄P"_A 𜊠ed<(ᷘ; e|b ʣd3uIYT,JlQzp8O,u:;! fv0nddEǐim&U6(_7D7QB57J]ݘ;)Ub~F%]Lֵ7 /|gR)kD*N1[L9y#00n\$h '\RDօSGVh52zȵ&7EߠT4ױˬn4 S?%},d& WRdq؝hI埁 Y-O/ _1b{}ni[ڻNb:1a7V"ҁ^dHbD$|C^P)!;WKP=>񼺞kFs yR^`@!Uv+tJ|=ɐ2nmKw9`.JA>_-Lm-ThSd+e%\@!p଒1> escTuiA,$-\^!2zrͥ+Og}Y~XT* )w`kP W,Z@#{K}GNUC󃻥Vzǫ 嬙#яB͒)e.M6&kr0Kfʟ Eݕf:OhR`Q9Zo^E*v%Dؤxk*2 psKGZ]>fAӓX4թ2\aEtYfw#_SGLZ_$)gPOuDXip} c{:ە6S t)'`0K!c.+.= X1@k_ ?vofAU8< [X!nV_]Ft2Nj©^'Zm+r*SM#Ua^Pl /oF~s0\I9Z}%l.(w۔BF4!Q@zS18QՏ%=X 51_H-lUW&Vok-0Oi] F k \) ;۱ 4&fxHʾ3Ch aČ3Yjy%0U/wRk.p9XS/~?&ʹ 0HV%*x+W29Bӵ?+"&D'808 =c}NBTD *]qlA =\A@5j-ZQb;-8*-/7I0H5z$C3I'3h|s!qeKjm< `H9NAz5+-߫Ք`/0 ;њ#PK. )!! | CsFE@H-8ɄO2 "` 2$]#Nscbшz"D$/ i%7UyH:5xqu/9d.Sݳ7?Ws6%O|Ȅul ۱R2Bӊz+(q/$%)14݇-\ܰnlBB̙ݬ5FUqH)8#]{C10n4ю+GAVCE+}ñe?HkkX=启JĽGuHHUfȓc +4 [xٮL`UހC$~CdPu@ S\W}=u=›2@ UYmÆ7//[3;1 @zpG&^G>ckHn0H7뿼VqOsᘋn=˧d-(ӶjC̛=LΈAhsK3ZR +u\\ }]R+~ҫL%@#Q|,Ƃ0$yO`:$ N兽-/?6vXtN;$șE\W1K^v5MY OpZ#HCNj&ّo'Te`geRhTlݲGRd;4IPq5i79 65_ UTQJ"E!artIk?s9a;7q&T6ý'ƏcTw_:KYG3\;݅9j".Н<ݘi~}q1ْ5tJyXY|4 'ZhfAoo$˴ˈksnQ( K,2EՄx j_Җd%;rAp P&}TAA,˟RԆ9ǒ]7j|^ռ2cA'BڨQ SefvxlZ\Kz#s5V'3|P%}<s !;맲PlZ+`y8Ttm_&(g?^ߠ_MD& 6kX , 7Oy!4Wmjȩxܿ!\AgqM0ׄMlo#WwC4m OSF1\LOƽ$bFE:DM9fz[lLYHؾXy8;U } qG!^ى!Ǿ"-9̢_5YՈj>LWW͘Y"a D'U57Iυ`&;C;q,ۭ^"%mFl:[w#668Fp~eS$xry @V4JHu ) |yJ5F>J\J '{xQXs Sڽ.}G!ݾʔAˆ SΣ<84/ 16aQ:*h Xƪ'zo[Ԭ>l}w4gj^ߠ X :4шuޖr0*C>KEF.NAmlS_i4EGt5?5yp|odُɠrĬ]s6)/^LeA#NY&Ԉ&+VSpr1CS\\rȠ%6xpWN"i*% * -\y.y4ඁ {N0i.|BriK_n'N\MY)rEP؃ɄNvCrU7e_K: pSIPTBMiH(Qeh P8]뢟Pzhsq_uY'hc9l  %z>K7nX`p@ծ3λˑрmYSM0˼Bik%Ye t 3v"ΡtO$Y.ڨpTxIjJl3JǐSV'cus̀+1l͋<^9ݲu=FjVdÏSO5xekisgCCTv.5^|#d4gفy'I~ "|VʽQpnetW-n0]>[08bqQ].0khRId@+e0xݝV0õChM@`N/:\o?%}aH!Q#^tl]aHޡ #,;;7zw56 .: u9Ew+([K-Iڎ(hP_?YтYYf3%rɞ[l$&u7*TE9c0Ha!sC_`҅)/5|E" v>EX3yS02q~a)pptȨ{ -2qз iUP%ݩ 4a'bwtlVDaFnH=9CfW nPx}-ml~+u'C~)IƾnbU/H^5ƶ層Gige}WQ TM3Uj]ڱgq2>Ri 4]05Ԣ` udF:ʑ'#gxoqּ\v"_kdkys.Zq7x]Cꡂ#]EDu#!(m@yeEf$(KYdPN!o*ČXқ4){Ip@e5//7ZGa\S5'{PD$h/9ߩ~2F\u/Fu?像m5_c}o E-GcgOTlq uaS=WF&De wlo\d)p=)ٖ1w+-r0,}Nc8%HZJ8>02fù?coVIRch5~l GՑ eRǀ\&Qym8)ۃ´|v fra &qt` &pB,~5`|LJvF/׮Ic// yn{wb58~X2(2$Y:~':┢MN٢pl/+A .«D(J}߅f0d$/) _=Gba(j UM.g۫F\|J=6tJ(f9ko?~n(40y411!|Yۭ%7*~ZxTK/o|gQvUhA, Phz%$ Pz~Oݓgm_F=7Bnk wN?@"CFXe2hTww.JAbZL՗e@J`$ g <{0yf1M<a9mj;{DE`8F{&ݷ(Y(x>,=zAMЅ"AokI/A5hn8oWt Hi͌vQF3 흦| Pxp?yDj0k6x{RcV_q/?2Aokq]GrK)[p&R>MJ =*wZTw瑰[h-w@$\ZeOv& wq.oY,ʟ{-`w|ByXI(:;z'bcGm`HFKum#桼kt;*rqp󻨺3jʂDZ# O<6s $-H?ߔ0%ZDj_lIzP?Ŧ9Ѧ퇓pUA_q^vԇ]7&S TFL K{M趖l.ѓ&LV?G/N=HsRҊQH+2! jrXKdwJHQ) rO roJ3(N  >K J/A1-rLۆ/.pv8mhP3P>{^ha=P2>PHZv36r4ExT@>cbNX;L@\.P#ZmN"Tsɻ# G&2 p끩cf iӌPl1N qsz}H=si>yvџʳ#r=y*8cMpޫ'6k{;.pBىwbTHJtS<}>zpt2_9&b jlp?p+s;!xl D?Mgڗ% +ɧ]X9J׹@^KJ t>c̦`pz~.d #ɧQN٨m]?QgܝV.`=C"uGݦMHx}D N;iQlEּO2T^ mh|TAzk&Q3M%m!JI2W6MJ8˜А0/:_I7IoaYu:g?Ǖ};cܒY&&##KjVIA2!VxFm , l#'ɃvKzBH>FTr Y,c\exϙ pijtT&QU,1Q0#J}Nj`4W6;b(WK>fZ?|-(ͽqq"gHjKí\N8biJ)nn@UpxUͦ-S81V;9<=g'M0{/WxA@z쑧'' @Xhl< #m{bXcP'_Ut 8{mI9;.8N1eư)"5 9QdiGE' gd_RK3(1;l(1ڡ/5B4bk3=I q~^K' "}?D z;y[<%uJ2ԾDK 0`C1UȦʼAN@gTa{fS(y5-"5*ޑUH_ ptOGs$gKSh=&U~gZ:9X&yO6(}X)J?_ӻ.>dG{@tɽs&NLpF\M*tE #႙L(WL;ƃFaT%b l5H˖f;.DMJ# n#Mq\v˳aDpH9&G$_h )feq:<6׌yzvMKf V?'Lޝ\eFUs=nr L7?C<Jϡqn.=(U醩t4Jx}H+˨nBغ-ޤ=] /`G @a/uȽdu[-)\JY?rwcp~$mK#pV4oačbZ\}}uB2 Fw/Ԥ?('9,ff#{.{y eQJ~+t|Gػnj1g J|wyAp/Ӎ=_vwHI^=˄MPI5ND0}!>d>Vb KIao1M4¤ ./vN+%K魪V+iI)zlx cdmByrs~˼Imz8 k~㠿A6AsRp1bxc' 6C]@s44(bKRhs k]Zk!R|l$P‘C8y04d=b{χNH@!S!Z%4 |VO;bGcC.:Di, A^Ƥ)Bj42&/RSj}گurڐ8 >`~RvRNfR^ܟѝ\hQ_a}<'SØ^o+¡L p#ȉߟ(cYv̿"S4ftB&_9z]ʙ6!$+zQ;jg{u]35{w7L{.P:h .ϒ W [A<8k^c yw M*2VI Xp&vP OCe_}ο6[ 򇆥`}*'@Ob.yF O$k^JYuooS6]2\jl8-Fy!ZR2Yl-# IR_PF[8&R.Oz|oH! n\R݀X8ma /p5qgzo?|]ତ2h.rD}I|'jnLzE:HVZ;z DE390'oS?r.g-L3E37lǰ{߃ )ϱ#0MUjb#p?(@Z I@k;w>1L\88 #K{G0 S ̵vUfEb9^Ih !d\pxz >R3< M?)DйҦ^sES[@y?RsM.`>,fra=32 %bOJn[Uwla!?{F+{$a; 3ɜF MKbg:5Ĕ4^kE"HYe+7֚c"8YZ.~zYo[]1]Y{?h14]S1^eLNHP퍓SPj  *g5p?zriAZvW&Rm@.XgΩa$\7g[%2psJ6{EXj%B$SBxSoNc ܶ/}&0FdQ92Wd > {Kjpv='8I޴FqQ| @ e@l_Sx>iJʿ>5p=:閫 uăD b{pe]Ŝ;G@9qi7Cm{θJ;oL0/ذKwչ /|5JiHĦ@_]MB&3=dYK;zE=z!ϑܹGaPȩ `ëGQ*l3{)KV-2bKq}~[>|vJX\4)}ζfs`;[~*δ.>HV(ۜ.S 8(zN"F|\}:L Z%Bw^@͖i%ۗ-F?h'`6PN`Brf]1UQ%M |w45aajJ/ 0҅=Og{oUJCA[l@_eOl`;ՐH7˃VFT~M7J>cDEv1-#O)YJ޻JBɳ"<灨IYxaa "AАkN G]HVpi8e[3I貔\k}b2Asդ8Vofeӭ;bf:T X4IEZW%lWCnF>DwҊ7ty@RR':žCSsv "ZN-R`A7;z6~k4MAz!{:h#M6 *-C`,Gƫ8x/s/ srev)-(99՟G2DD}4]O 6W"_DWm, !e[m͸M F+\HbM 2wqx¬wGc-לCUbNm^mpI7Nμ9<=˵^'{6{k/yDe=  &g>k1axXm)@+ ''B{ m9ڗ}4lm!{/lzqnrm}!xy &#b|wPZAL"+$#Rm-GM5[سWQBҟc  k V l(n;*A1*q̓mkl2fEvTO0o3 8~TٺuWdž&bIT#%nVъUHdڛ~ "K#Hqm]2d| -2"\ YMBx P7[XJ7P ytt[\)@ӂb֐/0<:jLVq631v:&uVOq|=RI 8$ K;ҥ#d/.n PN,UH|R"(d=ilqVtY2njV%h5;+Yj8▃R5Q~#O| 3Rwn策ƴCgER&D QI(l"C֡PNVhHs9ƪ<yq:077bn|tB d]򭞉&b/R0FG1tFEcGVF _xOO6:̪Dasp:U{"y|GKp`֗s;Qտ!WQ<z&-'kݤKQE1Vg/P"z3lN)3 3jUl2 V}q{DD2!X3K 0ϲMU4Sҥ^P]C qR‡<{aAABOPާG $ݾ5#˜TjĻ g;@tD`0/%zO8"D+gD8Cm0+- Y:Dc48 GfM#5 (Xb_5Ye yTyg{zֿSHD.Et7v[beʐ7A>5֎eTA"SjAH?4I"N9eA yƵ=㛩u9$HFOhϙ";G>3?O;zub!0aĹd]:jB]㗧(46J-tG zx -\~[l0o9v0g6C7t){86SD CBZNcߝSRmKxg`* ^*0dV1vHzi*!>:!WMUm>Co>etHTƃ(r$WjplqGym`n3Szot#,hu턫dԂl.M2S%T:H!z~tSxZAϔ|WF@\AXz4[9, Q{|-,v@B"$>l<3 Qgςb`LoAstf:7E$9HY_P(Rp&Rbz]=yu ۥ|w̦_9)yb4{M(x <1stMsnR A'|{䒱Mbi|Z!"l-hCpRyT_uR4E_hbG9h}qvyO{ ^+@l$v޲~d ײ=[oֱcaHڟi(6WEx[ʥz1{sC.kd\"~0V[^܎~n[!«q1}Cy3,rfz-۾6~T# BEPx K^aw=F.t{1DXiDĨN1㬗z!+<8o,m]z Nó(aXޔwH#ۂUkglm;V(SRiIS\<aG:p4T~H1t&Fjq߿%I7/yPF^#J)y]{azw+!scn{hZOWCBaaA1d#HF_ o9'tfx ynț(#thx0(jz l7ܱ,WP\u4SSEM'Y O!:G_!. #i ^Tu[؈ѱhӍ`|"쥊~l9z;nCk1 e 8L7ʁ2/0z-¼f` FK#i"MVԟʬ5ӗJ&к,{Uv5NKS/]G1mzOI /Mk"{ju,ە~*CPFTEJ}~-) FQ5_/v,Д jᜬ96k b\3v킮]FvC0{&K5am 4zF`#TE9;+4,(3ONX˞08@"~l 0 xh) \hy=Id,BV<|TʵqxqSaT79뮋ax/76x\,}gTY0' y}kK,+3̰BgRD6b(L`INhh5{@ļ[eV:zXn1O{ַϽ .|D] ^ Z{S`u5/te\]40Ja aaNj,;ux~<֤ O#4Y#!_|mgI{Y*!G1( qV *b^R6-`J|_U&!!6ZlQ٭B#h-u?Kc9Rֻ G#rǁ[3T瀂HG7԰)) g`Z/v}Vrq7 # I$037;Q C_N]Sƍ huf\ (Lay Fˀn[7 :us=W,.=_UpOc%\ڌ[..sS0;nm§~c8֪Do]N+ tvJA<-u<\\6qTAeʹHx9ES WԢߩۖ^lGToa/,JF`BFGl HR _旾Z7 J݁U kv/lCR-o`Ƭ"^{hN4 J~EɠPezb_n'gbrX_s<խ)תRܦaD`OԸUwVX_68|o^N3J.={HjœPڿb[T.Cj4O kDpy9ӍIY wj9ژN|OC /ZrY_\Iv7EؠȬ0V㜚[4n I>{0*n=-/&e)tyB:f`Xk.,Ma/NkȆٟhXHraF}u3^JůM F541澕_+6c P7*30d i +>_7eO@Sۿw1^-HL0uxmoŹZ:Umm29 54 \uh$ e0fܸ#=#dz,5Ma VL Wծ LRQTrp01˥޴DA$љ*9 )h>4;(r홎mQuksN}bEm3It дj0 Ӯ|&!ޥwFƖ_ HAPFJ$*ظyRh0E!B H`w\L <o%[ 5ALID?gI G9RzJ.3p/{"#; p YdݮG VN&ج=Ff,ujiR8Cޗ;Q.!DvۊCF4C y^QXg̏HWIck H{)~ۢ˰; 3D;Ȕ܏TTh$~ZRgꎄɮ1)$ynjX K2˃(ݩWFHxÐv;:=dbiW'O$ `=Mbk@qIdtM߀z[_ F>LTeE 9ls !7pS g=~s Im%?GXS8_ ]y}Jd:+4#Aw8'Lp=4adY>Z@Zm:5G_Y2-[ =$)`m+so74 Z;TmG~|(`8P>W.OܔT$d5 #2H 莂S Bת`T+u~;?ɴh j'k@Â4[thfav*Ol!z2ޥ&V[?_^-Rlw`~HddlFMjka?os-'FkZ2tsXRJSC8^)әC[86rf[9jF^k2c}T y-QTsӴRFpTIYYM'<@*,7Pq]G!1}f,BfQLe;½];R BJ7$nŒ1 \~&]2II $0Ͱ@P3m8@aaYxgY1ykpfmzʞg~' Ar2f e2,(i> ,N^[|keT\U:{;+Yp [GBjPf4s\7 mYϐ#&X7}6ܜf Djb(I*i.k9SFƢ0)7!451t/؋0.}=Y,vQ}a_kqhXmJ}m3.ͮ$SzM1BA.uWͩ1N.Tú ,d_tKq7v!pI#/wR'f(edV:)ޤ̸UQdQ J3 圾&(+DB!dviu~;S%CZV9RY^֍$"1fL9XЕ,ӿaI~LR 4gF˷%UAm֚wަip ]?b0ʫnMޣni`άJk׫=&$dFڔcH(l1ߩ0L*3`/F!@.X 0y7>K&w=84V`_F +ͷ4Y~Rn&SEd={$V fC`ʖPC&ۨv6ĭ빛L!tZЯ5Ŝ{b1{>.$e*}ܯ=m AUS49X0R(ӊFvCDk)[i^L,]-!ּ6!KL{x;~b81kfg( ,>ѯja@[sQbd8|i/C$3l8MTBxxQ۸ 8M+]UlN L"y\̚Tj9gtyS[`7RX+YNFѾaLC;,u qJ-?0)|7h ŌOiOFw`h$F}6s4/]˼> 2r-'v&ER tk8GY1wD=Ҥɬ[_b=IuH#qkެc<:vGJ>3^|i.opк:8$w))pSi׼aj]L Cg[\R*"#eQQƏXf|Xe:6˯ ~6ǽl,jѶf< U5O,}~W';Ui2²>C_͗Xh?=R kEv%N⮏oϏ9Ffiұ#:;#y07 U6?/_%be lUׁ;H鈽&H 0~gE8Ags{3D ' }G\(=E9a\ϳxP͸!b-/} j٩yWR-Qv @6OyRU'&lfPkΓv,P4mhx/Fy%rZwnpzi!A&:y̖@h}n;E.d2 /+D \чWݦush6ưБB{igɷ,Vf[AuWoz^N.NLYSh9<^82*WRXxg Z*`ͯ%o# Qd\ J+=]\TZH ^rKr@D/8Y 93WN G3s~ˁZ9]_=jf$Wjޔ*c{k8-.J%^x{a'LLQUxoT`7gW=ׂoY_8og.",e{{p3:~g!ȩ&údW6 VE|J+#̐Z NUH}шMLP|V/3OϺ:$dL87{*.-Q87Y|rG@%wc0cDp>7^[ iAzO!0hsE1["ACi׹h`q‡+ mWt'.pp/12O߇(f3-U\5k|X'QE v@35w p|WYjK'ň'B|p2NvޭGC:x;pbc,o5}f?w(LJ<.~S-bFOo4Bڠu|&|)q!|ހζ-Azjdz]Λw='ܙw;C ,;YI]5~7/)Am_JM@0ag, A-9ߡ7I>~8~jH1 Zʆw,d"$5>Iu^kֻ=[(-n] 9Q{J9!#/5$qBJ~=Ͽ]ɞ\'s].VOXpIMa#'x15Aw[z?(QПrahTj+2I,d,fEd aGER fElgHX  CD tzug$[ FTuj.1niVuXz̶cg*zQv߉;")⣥QoF:rDtCǤY{RmLرE@6}(MiaGdl0nx_e`I+gF| &Z~ʩT8%CP .?SƬ P).!8jc?EU> 'Bc%*e%|jٍއZVWkn;ߨNd0.o|/PlaQ|Is*p?%]W!1d&f΢ʄ&3&۱h?2͟\qru 4v67j)\{ $b1 X)))'صP#?j.(9^V$Tn*J*T,9]_i#W֔"7o:2/E`Z6+=7+n =Uu-@{=t}ےNgūyp:mi*/rr%My >^(;)]E/-`y0k\5Tn o,n@/Eh-֑4 05.xu8ae,vۤݴufv $׏d:뚄b/^ϰC4(B3r\*>6遟?Ǿ<+Xw[ݧpTx6^ړ`2em#:%5%|>, m50 v3DȎuƔ]=BR [/@%Ibh0EKi9/jS&+<: HK:e&(rP+UGy@N?d?Ȱşv}L;F8X̢jYS#*\ d I7WdU>2+w$?h Caݖ+6sƄ-a0/@\'RfE80HDf#r\iL|#lN-8=\H*V q)ݝ۱d}#\ FlA6K9B|Z8sТ;JDVZy:(SAc\/]st$P 1[ǚcs1֋- v@4.1 :4>$o<ij2{baro '"dDWW8ԜUDLpqv,.qф'piL}-Y C-J(b^1#( t6h(\`v XmAyq*U^iWH$WC 땠Ƹ C$D#2Qg7a ^g^ FČUmM)|k.CCQk\롮߀&ea A49 z).}cIO BȚ/"\Ghg z%z$iuJsdNk=^>EA{?t1)}IT﹘f=hQkp۽X"0!\Fpu Y|Й1 5t=ݽD@L38uyD3D#!ő)D]4~Vڥd_ |>kBp +_^-|L1 "mYk/Ue$2 8}n?Dqxl&t$G7伻iz׃IAb3уBB.Q,0y0p#a ҏZcY\e12]H#JDͷ+u2dzs:fLAVaEl%"j0)!vOc;R{s]KJoYZ !٪l='᠜ -mb(&%We WD 9ͷNؾ2td6m4v)6tL*;6L:#q跧 D_;E[<-Wz+N[qڇ2urlPtQ6Y0qշsT,ua:5}pqJG˙_8BLP~)Q-Ӽ>k=H/8L YY{kONc}A#K0E0KFDwVeP^M3s*1yDDeT_͹-Z^iE4 X0za5lcg:4xt @Po>r[U9nXhUEQ:p.5ލ$z;\.ĩzKgxwJ:`?ō_zaa L+v.3nT PIvM Z6Hk[9g}'XpI(Yb曞NJ +RIv1U~A\竗^=?__gਸYA*^]ua.\>dp##Uٍ͠դ}' cy.j ظpV$e]( ˜ l"9\s;BА@P̵$65`{RAQ|1j] ''hˉic/_W!Fw)8F`4/!?4dw=ZQHSy'߰`VۏD-|&,`dT{Vj= ވ^ߦ)<\Ic<>i r4 -ȗٝL 3K.y\,st];W|aRc~csf}#A1iPԺ @] <\n۶ΧšSĢ9;ZJ8ioE@#z8{#T^>:.MjBR{yԢHl6 Ցl-Aq^r-K ZS09 E^)${VM ~ إ孄D yp'kI^%RBR{jhg0zg8! pw^֨y!H t,LUuڜW۔8LYMkn2%.PMu7G4TV#%-~5%[3Pt>-y ~u$>QrL.󐶌ƀ$`RwٝO"{Է"Rʧ;A) ^bNa}thY%5doYBKw A.KN=Ӑ;oǃ n&^uGRq`Qe=-7#p>83i\D¦xM/4X =(:VBb8){WӮ j/BGD~* #Qn%VP~sYƒ"V]Av5+$P=Q6ʐ|vdCrҌ.oR~鄣Ǒc>c!³OԸIvl[݌ӐZa`'aV &Iz˙w].5ScjhI;7:ů;t\T֥8Ph_䵘:XTeTEM":Z*+l'rO z( 2jQ^$wyٛˉ>=gU ΣD꬐X <r]cOarȷO=nH HA֮7P{P*Jh !sC1~SZfY3⇻FUCLYPa@VޓĭP )/6ys]Ȉ1*IݲӚ9d$; BKJKdf%uSFd""~Nћ\M)k~fr{=$zuu;)V;fs)1p+;5vp9}*fHc$Jc:&48?Z\YPen(V1'{GJ˂s%x + @Yk$Hؘ!mѭڷ0歯̓6mBmcbɳlT1|*F& FpۈTYSeMV0-80JogNϲSR3b6[rXk|KcF]$ٮ(NC!uFF?8xĽU ][|̃thjg{~AiR& /p{H>:zO׊N G-eF {&LLwDT5- W):,:&Uy .1'rćM =:`U1 (SWb`SG&7oG#s!!W鄲JrEH~ <2LY&|Q9'<#Q]p1vh&/P-"g[*YHd"*1@&)FjCLFgo S"#b.{=VHK>RXAl0N=oHI(b4 f;jWzR dqe2o}D1?0U}|cx:0.Ԙa F4fOMS'tLtJZ|0MغI4nM}$Baʳ6bch._[ )4 ض&*Cd1QUۀ7e NP:͇(Jb һz% G? A:I5N8J8I &sLk{ڎvsV琺h~Ҡ Wdx(QmZ.A7;wgҋBz \OvWUޘ8^Z+l ȦF#gDݣqC߆ĊkSud3>Q~b}x4/AjD;al..9ڇvnn̛@l}i<؜<$z? ~Y+)hq ;ٙ_}*tْg>C<|[3)|_; 0~Zl8eM|.X9s00B?šHX%\nSHJK֔m,`v rÄEPtA%Q+y6:oh<^gvEIܣ.z]V%%Xk)[N6gK.*49;3b<&D̓/oTOK~ u)<7vbd5 E7źul4u,x%:xki)Զ/ܢԡBk~:Q)zyb͢+D=~_.^#/PP(Yv sQvK)I12b`DTG5tѤ,1`I"qW&-b!=80QBj.1QA$<xpD~L˹qqD>!r.SVu(rxJ1)< vj瓤ȷm3]0>B݇FMQ]ViF)뮲R eY~:ӄ 4anP F9)U\/tԆ`IT?Nv\?᳜e{ZzS 8x %Bauׯmc!o~}iյђFLؗJ o]ԂȐ$sBVV%Kag9I&O*#Z$G PQ~ Px#dg[GN6B۝/ Ѧ>Z3%6;pa;OU?].Ҡ1^}o\aLgiA-p`Ť^[.: R^[CH |ߨfx=[6} 匝iVNލw{htQLpy2;9QZC wp84Y ?cmw](݉f, *}MK2m@~Je'G|}!ЅвqeCg^}x>۝Gm0 ?V-~]0Xc׸hG;!}/Cϲ"ӜDjaj O-3t!vܗ㜑WH[cD=r50mL?WpE GP?&LQ~VmDZUWJ|PF<Lp?\c  m|]}+8˔Vp8ps#%0.ت[gR(`',F)Zj6,i yX!8Iå3 s&{;?bd{Z=P$ et[..ȷDRfLțY־[ ȵOm= $oTȒu/?UhOMg|k$Zе[0 FFUlDZEAmRIy t^thpvN[x ?QpIu! SM1Q, Ϋ3bI'?^p)$pc l{C_QM 4W6!Q]rʷS˒W5/0LߣY䁿0wº+篖?AVPm\ ){}}[uFobr!s 1oUgFfǑrR٨ "(O:R %H [bߕ4D2"<'pTX'sQ5TH/kyO2xH բ99on?®U_ʂ2+W.R4C5!Lk"9So_ }IZ0UXc̈b^@GhbOھA1&'-x.ӫTQrOIn)UŎfsehj3zwtw(Ah܈|'eMкMc/fx (;ʏpcPezZk Eo4epegU"ʒnjI .90^'[2;fA;+ Qp#SxD y3֧mt]Onmޓ5w<T31J"*MZukFP|tnUDX)Yޯ 5?Zm'I60$/>q݄|%I c+ eyr(Vܬ%2EJ"k15" Fu}ǹL q:ud8Kk,E2h/MS^p$JnKl+).(t% i"ޥmڤۍ-рV^O^koPwBSm-ե! t:SG$#ύ y|6lh(^KUDhi׃2'AhNfpyR~}’Z[#=BQ=Xz˥LrՆVF ՝.{eӵ❸=ph QVH@Z+MTYB^Gpe刁Ls~b A~m7BPee2_2EAV&C8ceˋE5n;2&P~x,!VUP D5 'yѷ>+/!r7"n)'f|^+BXN)ާR % *˝AyMi'hha jkaSpR(wz+DN{Q7"@mEcv{wAR1 GF6:/J"~U;_91{: b=b7W.Ѓ~֑(9c[xy\Q#n4Q3E5=2r2бŵV 8M^{TA_FI ñC*K"V/wL=)m0]$(kJu2#PbLP,*=u L^rh쬚iPEX)bf`(d߰'bv̅d͜hx Y-f{kMK#Eƒh2N cNUi&?cxAdW}|@IXjBAU@ @~GZ6Pr(jAWTa&OOtR/21Mv _pvR틢I#8PS!4Zm.8p0C {y6Ѵyy 3ԉ2Uk暶џсdAG  RĨ@gJAԑj eӻ$%L|zZd䠒; 7|1^k!fxCd(,cOQIGgT SPu6,R`Xxe`i-!&_+즔rD#Cq8D=o|, {7RMj0 -a )XSxǾw!2,zm9>6*N h3m v>Wd s4yьeQJ=[ZнJ.el'tR ;<:S3*իQh5j!V3{20X|iA#֛DEM{0˥J h'T3F*fB ,{0a{#0kn%jf Bgg9vf*~JV' ;p3Uϡkq55z$<཈* ǝaқgvpl>X;SUa#Z[OF"{OB [y07q |\ s7VqN Q a7=\хI@6QqOU0M 粥(>غ~l.ҵ8<ùtB'%f3E߻e2w-,Uzw.ۻm)()Tv^X V]3O|]0~ }=@$V~rB3-s@/GMRT;m $V˲g&+ft""7&u!Bcl}U'5B31*TH0CbmOtO9kVa(c|L {K_D"-%᧝Dsec`O(YG"ӓJ͛' Ų6~>;TT`e>cKHjmYnTM5 Fe2҅%4cC.kVze1C@2toA`G#fR틗Q^zN 0 @2rX Wmo`4>A)^d0~ +R-JP߉_PuŇфs eЮ۞[TgMz[:ij9k=nT8HX͊k3 l,&Se"jDg.YS!z)Zω f.ߥ_ qS7= s8 B%R{ȩ&΄ Y7G[71P!o~9PQ_#qj)%P 맙9I8m${@(hHޓ!x5',+4#Ct ]=-ܿ1BQ \&( pE[A ِ2 /߻^U=Bݼ F--NIpSp*ꌖa[bwJDXQii{ɸ?s;޻sW)$RjOB7H#K@=QrM qFYٍ4afksǓmW>gI ~ Ǣs@OQK=l$*w?,RS C vx.^D-Z*tEYu9*y\a*x\O{\[!eX JȜ([UbgηIuU]_rE 1?H=^nD0=^.ghso'VKfNQ2E>Hw6&cZ/} NcqtxspP1i5Ma*$ʟ`:sS9b5[1ՀlYLT- gexAF?)$>Mͣ&󻊴,8ݤWjAU`\$ :M697#aoscLBW5=4S|qnB̚]HA>V!n9|)hFqz@E gWwak7mC’B\8xS芧$_CKHJy'3V !y1P$csD-w@pLsy]DFP0Q%ב_j8J&6_v.Qt$QI"zvm+pVbDK<>h0z,#v#9Z-w0g&JW"}4x?]wΫuQgG }ueE6'7lw16o]M+^uS`A?A V _ b/UOo,ZFF5o\]֙iA=@NSlv7ƯDI\DO^ע.D oU'4|haÅN@mP Ⱥ-+ж'z9W[oq)/krP=٫ϝƪ\N>p#!%jmuӝ$T__=>EH9QPSk vzpD6fjSd,#(iDZ<~BfXBjފГ:ꟿ[ Du,FFzCL,sG?kKuR2| 'X3;oYzI3fitSp ώ( H;刕e߮+n1~0ـkjWSw1:H!LVJ,;7SwRܭ2qjǶrr*:D?H r?vQ?W<9귅3%L\uM_ǯ Ui1צBcs^9ۣњ$å';C tg:n * ⼀^:8jyfoI;uVi\߇ A^JuRlgliޘsk/p^7~GVhsI'zqYC|X0"ndF>FT2MP-+A[]Zgv @a;oMx ʔAbmn1-[P8ܪ|^2~zauZ24[藢n!%=:o|8΄YԻ- 8j /D%]tj0CAN*b/71W)#Oyl (Fb5[PzW;E/l( 7Uy 3B,W`J| {SXWkuW.ϧ+1`)Ml*D?/4rt5!&HI۔gA{IMֆA<0I-9~ืprNEڛQBy jMɷl@SUJA[PcLbP?6|w/|˩My(' (GIQ#6=9bV63?mu"<8K9<ik4o$/3eF?DN^NQgoT%kf}[,o^Z,YVT~tUQ#wJ+&[5g^O{U2-M ۀ'::Y3xf 䃻QfB *vܾt 3yKtZRBuܜ'gS~XV289di2L 'Z$(3tpCA~p)"IO HR=#jZRkSp6 ^eD¨R/^@ d'^k!}Ȓ\X*"ȒTݩwfwXg* c@!6et>/C:I_Cs]q*#i&[Q1|Lt9?X e8ei]&j>_N1B W˖b!pyĂN%Έ!Ga]̞K!6|-yF^l7VzAKAZgw˙]Z ސ+7LL_u"% 2C{2K1|4Aq?+gdv/s@^4< *\) 9+E GTYoE*n2wFޯrO !;Ou,fz޹׃eV>Asa'+DPل]\F܋;gYO&! kXO.|ji;dBuFQjy 1ջm!Es٪>3!q[4k#GRފ)}S/AZ P"Tc3CJq/ ~'ұ, mSBũͲ;Y"l7w2)dFqD0c$ש~q+]jBf `%〨e$l6Q'^\ ya 60DWl!t/AYϷ!(ѻrS%f=R@ׇUd8qu/ODY'RW"ȁFҝP(?UT=7P` 2KOM2st 6&G4Cxi5®N-9avICbάs@Cb:W'-q<4=E,] Ab,7ʨNll_7AۙoȰe\,+?}nD5gڥ_˒c/ȵ7@ɤOn^}j{y~B~OX#O9"6L"y!qOƞe"l0#8Ä(3WК1f%%HWxyo (x y^σڰ)80?),x,]]z+gëL'yb6 kULv]HK IƓc@:<ROŔxnÿqR&8gJy" k91!"-BZ?|g{TFeK |#;\E wz;rwK'CHeu&!f" M o=v¢fZיkR^`Oh'Bib{>EQ &Ή!û$:ʢSv}D@FКfg6[~Jo2I(AS%a%i5ZU]6``A;X[js:d*wnx Rc%̮l^7qv%%}5E-Nsa`^0`& 0vm'S9?~iaa&b%J( dPƴ3pA,7po:%@wLYs`2 x#g@&| ԦxUQcmQ g1 ,e\=2w]*)m[YLyՀX| #̍8MR*;2fj&<[#n}r.Q]Y󠸔y_!'mqKuRmvA;+"e%mM AؑF`Wm[OikJ,Ug )'`C:5UziLV,2Љ&x<0V*3s~41K״UKe#x}= l5j*Ҍ+%LGxIb_mjfLMe+ (ߕٛx(|*7=l_tFJVFz-@j>>'T8_[}M0ȓgGƉ@c%/J][y`x>(!G426Ŕ8,ѯ32!eQiO{PUgFSխ \}cZ1ч~aU_!tsԱ# e1UM)PioX+ȮτaqC@tzcbCR'F4y$3l{\^ݒf[W=yr嫡]G'j'/ZzF>7IP#1&EJs  O%~VfRCL+ #PfO4 ߐZfs|%æ{3L?BeǗЅ. ܔ7^+jPt'0мQcѵVd6-n8/C@(c)ؼai D|soZA8w`ojG{eJ ^oNO^v5 ʐkϪ)KVw<.]FS ͏sCr(_lEP.Ya[VHـb6x  W/0x|:A:rgPm$tFU;\C:C7Kߩ\O; 8~Xwwž2/DcVĈH{l00WNijya}GlgN-*\ UqnnMx˽STH=)xAa̡!3VjzjBxH1"=AMUs=*"wkEs(U@kA8I|ߩ'80G>uTG,f4{尗q.׷#ֽQ-UxvV{ ۤ8[!zrn0&StPL9*ڎ^b\3x=t0w%>' ]=ͥy :6&'dֿq̓Y5ylD $t)y&o d2%q,T(oO+F]V[0W ['c*6M.9pv>zҞvdS#$ݏSeVn;?CTvߨ 9V)oyձ9o^^LgFr}6T!Ne7HAӴ? F.7Ҩ\=zQ cTWg77aI|~&rtedJUir(]B9O^9@pstt2R+0;uM)#nMw٭vXYy^ñ+\Z%3wPEZF3HѬxYY oZpazOH$z=ZT"RPhYL'I}wKp@vNȳ,Qh5}dfoqd/Yl1(qME%M)ni^PGp$ñvcCV {'jFܰj= `̆Gr. ;'N(E2JoO&.[I)5JB(f<Μ56dl3MEZ",ZqKjÎ/ ĚiUi5ɹka(9/lZ#ȧ*DLSHVۚ7eg  Cǯq aeE$.qnc?[y'elNIWPK 8 /, '8J!7%BXY/I1+wI UhQm6SBT8EKG)u1:P\']?pj 4Ў|4Ȫ,pDe?cӾ'勞f7f}o堧Cy*!דb8Ln%SF.Chr:QloNƸ/6 y=[WA2~~_י\'~`Y}G@]aTf`hU~s^}()z{{(Źbi?;$l7efλ *M TܾsPdFGJjb "OFyck)^[/rޮ!;2aY?~2O">Ao[xug~ B)4Z&cxAݥ?>qZ[ay.eeܡ|$"ˣ #0?&P!־$"i+{zktA(]i=7`O|6o3.@t2f[t8 F._ ~Ĵ!l2xyt2oQ礅M񗾌O5O7 e5 @BBRr٣?a3sToU;^0ugG*[H{"ӷdoP,0=坂w $n$F]iQ#<;6CkftMc;cYLG<ߗ~McG < ]T :jR/?$lL %Ha[XXq'\a\qy}[wH-$XVԕoQ8Pem[,IC见JOtoUa` CJFCslt,z>Fz(A,GFG; 0# >H- K r(;PSZ~2%̴ós"aJl1h?8#y?>if ӴqǨ&8[%ߗkӓ<$%~h/jq&}:ldT٨xfUjj(>!?'Uz-#NA&s()I ]ҖiT#]3<%tąb J}8?pA)ɤc#Y _lŬ~L]oٯ8ikRW*<]ڥړ;ڷlE>ۼ.%mLU?`HZY+"?2þ{vF|7)HZkXumGE[>G]^镲Mvj6MvgwʗuTߍK@}&ڴg7 jR]c4^MKfJHƶ*؁гsJW3ekR^eBV Lb#aCZaМeP1@ SD\SjVB/L!ǂ9Uʒf>w0`HI] ηmh]EA;Ӯ$$Vm/3{]Ι.yd﶑:D79(2fх,Z#p5%0/?sOb875HzPsJ8[]Bƥ\ U)Ҝ!rleK*y@'Tm֦GX}4;/5{ gi:-\;FiS~!w{@5&O$QY_.hRqiKmQu~L2C^X2 >N4c!D S]۱,>yOjWbH 6ɧađ| Ddl,B>kux%s|jy5FZsK!S=T\ NHS;@Q,j |oԸYv0Zٵ+3{TrC ǝFT9$x$yb7;<\o1:φMH}PsouKڙ( LG@Ad6w&vֆ%ȩSKӜˮ [jjV3ZZU*(i^?2}bKtY|撁6&fGmBF?sFrj+).Ǒ=̝U{1F0!uo2jKqe7D+NB۴Sw]V5̓b ]֖+z3֥3M~A|9j2"z>b_1X$ []Еh.S9gHN!@>效H}fncJ^b+Q^?8"CI5" ng6sI)qol&[T/hJ~Ioa7^qa]kPj4q W_3MA \q:edayY3T5Wr`˞k_7& & / ̼@NbHr4> ~\_Qn~^Znd:*yǙ#aKCDD!ҕx[ށUM _=iV_erwUרPe0 rgY>Ʀ,C{'/B]L)A4)Q )$5.Pw&|"(LG skeAD,hai:5ljEnN+ c?*db,p rɐ}$#r}4}DmuGrd)O{m /L #a}? W&2Нәd& )A`*ׇAbuo[ ״s~R~pO0%t. CsbAy,] 33xXRy bLYxqH/C? iG6‹MZ[nݑ2ȗ9e8XxΞէÐELx0HwK''N 15.* }muRlBqޑڀo}ݘ)^5/%ɛbOY`XNB♤`ZƳxE8co5J}.i_ ] Ϛtڟ*-tb?3;6#ٜ ^@QDzKpdsB?c"ww*dzfzte)~5o$ɟ"$vߞsD;7ɖ@RauNْInVxwqh 0XKOeaCcܑxYs5 3{༖RAVU<)b.ؓy8zjI$N'f+ȑ+&:kŜuor5`V1 QX/>̉q">2\]v}&R~ $;o@h3.S*櫅/T mX>Q8.ߗXJ,&gX}.M`@P]bCVN1얩a'Ҽš0X-騠gM\&P` -RxT&$Yf(z-&関F.IU4ć^}1U{7ǨWal}qO}~`4!$<"PZ *r=@-j^b㔂ǙD#=̢(ky`d?h9nᅯZg2~3f?_W4X*Mu7ŗ"ZcCgKc{ MQ} JfV$1 Z5|C}5)k_RΘV M`ʮK$|û)2vhM#d UHwkZ~ ]$/),pVfrQsֻ3ChfQ*Ew!ekOE\sHwܬ@iɶKb`e ]$/F2nNQMs6ȥX窓F.7C)mM5 8 V%QI;T'm^+Ѭ}3ޖΈq1CB`E**F>g+2"x^k]5+$qD;*Yo:H߬/c[RVY .\ ~RE[OzN=OF %EXҔp8f6;̽a+B.h/$  E;oùASL?v 0k/pOTOpə#ԅR ]ryyh! ҾUdav$`>"g}gs#WJkn8Z!Äe8x*8Sl0<(;r6Cad*+:"~>2I+XE[e%qHzH=B, 2sk=x@L }F SI1HOfiicDZp\[ZUZE7Z50a]d.s\&kCDX=V不W'C!b(J;5 mcX֕ۂ)S"$$eo% ݲ,:2SJ#-^N8C-…$Xj`"';ROcΔ g Ir:_s2-i)$|{VB1)w.;BόX:RPz#)+) C-=cgQrzk|~1G"n-m/T7US`Nx Ѐb.5ZEŌ+pΉYMϿF"s1Ǯ-+ ~&[KRskp HДwޱvqXi17>Fd=R4wU$,)70J!QeWrv .\~rlوJd$ISʷߵD+u!6 |>Ԝ8qI8G֮xX$1+`w CG# uym`ZhN`lEF5p0LvZ h:L?RdzdvMlV-wMjMҢץ#À^ru%o} 3wZEI?YF=E*ox#)fkಁ#86k8A7 mf@E f@ !1e'/L7E Qi7qEzmG~LwtX<;up/&1 ̊*aËp<5⯏Q'v0/.LmO7p=˭$c}Lڒ *PF:>ܘuO*Iő޴6ڌZC uQN_![40 s2pFk2_J\bV@on"P|I-vrK8ɖߒ"&f2USؓoz?7dҐvBv&wN Lg<Əx|Ȃܺ@Qt><[Nv5~kQD7C[ E5V<ᷙ{C;71{j(.<ӗ7lMSX%&,ƚ3u`J;H}ۻ(4|+ZZ0%$!{gK̝ ;*>(3"8ב~+Y(p:5J=$uA'Wt`+J~qRE@}gC:MWC8)$Lɏn ni!XI \u< ]zw_>4hHN؏^VX}A_wm37BP[n ӴDASBsFo~5>iDQMoŧmͱ벝v,[kwdp doi4-kٵV:~_Y.ަUsLK2W_v$~eW Qͅ)Nd[=z)q1I\4K`Q_7VdܵʼnJ "c,U@r|\v;"} MJu [^DLx/qN'b9t; ŤsIFV$ޱG*̍}4Jr+L-%>56| @؋IT?^~`+KbjԔzd{i%3#IHE,i/03@3#e =PǛĩQ L ެtif.+@nxti<anʫҸ‰j/ՃeRCasa,{rMHnyzJqVqy/mh@@+a˟8tb#&V _6a6E{Cr`6C "TuvU $j0 _5ySy}Ch$V@ ¤RU^B8qvyz;FB+^y'HjjlPV%S(`YbL™lYON&q#Jμ+jtۻc^{䯧3C7sQzr- $yۙ eJ9D,b5?IpkLRڑ`%NEH 2)*Ӊ#2 XiFV (N Mw}#ى(93^f*r~;\ɂ$HGޛw-1G$ 'C5b[ne{PjEiz{ҮXyn8Xadw.rvnpG2̄Iceסp5ByoC -ֺN'p1FI(wjOF7tBTZMꏉSq;B#((1y7Qyc="Ѥ_MMG\(;oljߐT0F#A8Q!!wk7O=b}2UU-D[Q$rqG_F{"fwja/b<8`:6kK=}xxii/ V6bE Շ~CH T+@v{1N9>\0;~{Jҭ ZT#? J5!WжI[&`]x ^JӕT?w&2JZwؓuNtڅ):.4w {"TN0Vȃs Ѣu@?a0`C vkFvJt`+ bueKbJrJD}@ᅳ: */V(^7dL 珱8c=yek\,oH @-/=,*|0 -,$ه ]#͘>&v b ):$km!C^3JW.++m W.1K![& _BѨ~ ̡_͖qP۩voOhE*Kơ$m 9Gk0ğ@ɧ.zNv=rB (pG^Q{>Ϸg7<4M;E& v_d'lDZm|I^rkmuZu~DkGwљqJi{n#UwA>ܮ̝UpFA ^#H)<L^t&+qg7Qm{е wތ=,|) =H_Elٜ[V CKv9H[uG68C,uB3KpZ7f@GLzҼjsHܦS:11\^]t l3D8Ï$|??эWJd`p[8ؖi˜ibzW_5B %1me5)XX)כ/|?J -9LE wau߈mn3tH^Wk ٴ1GA. BdI36sSz[T}>^ *Z tk8 G +8da2ާ7B\? ?e ggm5\(H LmhШmyĮ_ˁH|W,ʚK:N}FN PSjUMN Nh't@,5dADvz²q-GcE|?v?ky`at/ƴ0B| ]uj,d£ƄM @g8o;]euUC4HYd_pn`y TucN8 Z. VkwiZƗs!뒌Cw wbucx>Leb5DE2zAg`9R&9B+efZCn ~fa|F1<_XCH&-]D ۜPg:5?R9C2~0;kk b;4&vCXq7Z5sNPvrMeAI K4OKTe`QuSBWZߘK+A dLB9*E91!7vC-@Z䖔V?;D9J,Q :<[":O[6ݬo A.U1(} Lz/R& 1Lݡm[|iBBbg!k^b.;>{.;2VIKeNS_@al&sI]= ex~;xsfȿgled\~C㣙R/^^}Vl @yͷĦ{#|N{Ioj^ƿ8g1-m stfxMCk~A- @ح[sqV׻&I '/h}1I}C ٣I׾LY%rZ )4I)wIixum3s.vF0 <{+Z'}=-|WvѥWĔj7r{~˫(m:,+57=g:0U/z1`b:Aw^6?"%e|4m!q]Μ<=Z]جPs8m1SX;oa5Si]"(3M m2@9C2k!Kg%i;?or1Z=sG|}'v0ܒ &4GD!Hٹ\ԁh<*PUH1&a0}S(Y! '8F/Tq8 oW֨~֬uLͰil-in/{,dYv=PTi1#ސ]\$0Q?R]lKQ_ѬT ыm$aGC( Y{O>Dv樲 Y6՛uoVK?c 0-=܈W=A-L}צ}鲖t+kV;2C/vCthuٕFE;zX@n[P˿&?tN#!pkcN#S/IUYUapQ3PU i#vkv2͟OguXӠf/u5^R BUk`(\t S͝Vx]_3LV:@"0clۮnijz~or ˀRN]+\Qe> -X2.A5}IQ OSf F&g4-O۞"Q52mTg"NMΝsdnȩq$; ?&[hK녔=0!7ɏ܀I 9=@Cc|Untm~p$wGg3>4ͶMRj J_JmK{H*y|S~[ޑR SWTnirƅn U(=p:LVrM)OR K?o5HAx= _n07(9ODomhR:jh5u"~W8%';ȳ3I`'a WZ?)ipr{10.MY$~̲:c& ; }?ߤQ⥠#٫~-, (Ŏ)OwEr_H H)%Dhxy޻c  ;B> jgR52N,ro5NZi"k 8 ^OR&/s63$dGGzk{'Zn 429m9E:b-SuB* S,ىżg+t'Kb7L6e_֤|1)9!b]FJSִ23ucm0)FJv6,j!ržpҰ[4n1J؀uX;W@|I@W)SɧՖ1)E[<ҎU}aQ/hɂy1d#Ā0D"<7;)"Fa3dcnlhafF8"?IY#cZ1cF$U(ik! io1;;vT."Ub tPe~C~`,Zz<򃐱ۑՀOI~ oхYrBC pTz-#!̪c5ƨVAIwŬƆXA;Vp)%y. j=un`.ݰ?ܤM@n3 \me5\PZCMcI.PukӮLi'6IJ H0 ϧ%^t½^u&5`ňnV~wĈ [#u ɒ/VQŐŅ/m?V6q"GR"V-ˋxMjxcT58CǤ݌$"Crqy ~NFFHŷ}US(3EH/G<*_i[*꾔hVUd% =Y*ƽH)ߠM0{ᣍ!²Û19~0aN@[42z_d w˃AwHkۊ=U+]¢ԔgBs[LP(KI;Y]=/ h`[{~eoToˠ\](Ii@eIGj׵c-L1e?d[5x>C䐌&߸YJ<=v.A9w G*Ab[_O:[uՏf/\bH~Q & -ČԆ-(k<]:S\9`\')X2Ys;)VDr$YAwW vC9Mm؝GݯgżD71~/{1 C"B"f|,V7@z< ooi @G%/(EEu:_MDhHuIzq`e%)AX#q"`_sǯm3>K0Hvhˠӆ2'$66wJ#j|ГOlF(lq\,HfqV+5$C3 q+J<뽏^oBg)C xfUQ 5 'bpCҕ'ګK!?0,Om $ 6ڿOz*alOaI +'Ш!<Eiw⾶bXmtF5)pf0ӌZP>3-=`,zaI(e~{1 72Zs}Umw<ܫSyirkzIkTF0rFkIp { ?ht $/t 6j y;P`n<[׼nRp#hiqNZ7sDQɫ>{-EZ aa6v 1M)=jlA3;\s¹CY$i1j>'%<*E%κnDdlI1hRjoOUKgS%,h5 [KX nL d]q(aE1Œbq.wem.yMH%D8E0n oPYd<:P[w ݳ~>^ؒ]ԣF~)zZyFrڸgⳡ{d1wJo%YnnlnE nCRy.n3r C(R@0A# LkB?n0DJ%Aơ=ESʒ2pYI^wl ի2-/`=޹OG&G#IyJ1G5i_4W4 y#5ڂhf1cϒV"\巵%S{Όb{5)o6) nBAdXWsLk*)r;% md;-NΓD:ui~I9(/k؏`[hPW@i3VaGl>$8Fgo E4#1;j9aI VWdЛW ϟE -Lp;HRvXFM ErJ'CFRW}n%cu|XaV99#i*:A=% OXRVą뭮 0uMm/,Q7K7̘6 @ 8j.4x9(bo(AeHk7mvϽ8VIѷDj' m`ήV\x1;DNuC!δ,.V/)!hl-9v4C3u2!pKx V/Q}ON+ )5^Zpͧ։{J2@uY/07 6Q6*IBo_X}-#a]=(㪑iN+;W uh< ӧ׺=8s.U< S*9Y1F؜FޑH.:#Y7"G󑈖[vB2s qUc )OLK(Y}_NӯU'.K m2 C (+=)2ʹEO]!.0dlP{aZVϖ9i&8"cgOcEaK,)jmξSJ/QHf-_E1 u+MSys*B`* +RZ~=?̔-%P k#iN)vX驨`┗RRN&+:-(J}_П8V%׊ ڮ z-~B٠Fő1{ˣ]1?|о ^b" µPcyZhp"+ZoQWeA7$\ 23:ȻlٝgM˸w5ptczf#qR0[$G:설'Y ):&M1q?6#~QA/Wvko%Bo9p=K_+ޣBLt$Dq+L˘6Fg,RG7QR.jfvky: Ɍ1yk: оc JYR2Y[uX@\ ҽ#S)nLd k{OEh:p9[Dc$VH^$"vP#艍'nI֢|WԆY]My+'oYwM#^͉ᡨx2&^2ZQJӧO!I~/ɦyr.JEV,:) IK5yw Q@"2{ ; " vB 3Ы6Aۣ-A|E4dmimfHD1KܫB߸˛}9Z tpV /rKҮ3}|TrYʤ31 =;qU z U(KC(P8t+!C7=l=:QcΝȟt%/8vWD ȡ-3 ZbZԳܿDT:#d Ǥ8p^*v-f$O8Uxx _P+#v(˳Ji :ϚѠɐ^Xg&}Sf:3RYrYVbzUwxڿ:'"ɘfV {r1e+;c -@~:lRŻB{܃hk0z!@ZNE KO,3h(^A,Ӕ'K?Kyڻl)`Ol5;TҞ,6RZ89l7 :۴h3 P&FY9-]\ {Ch1 >.SB 1їOOm,^߀66+Qr0!oM[- 8|Š5 0YO$,WdR/x=zت]W'QAޒ(P  I/*H9Y\VfT!J$Vv&QzY0$3_@0n>ٺg7Z2O8狩S-2hU~v ^J` R%̓2|iתP jUT c||eXn(Mó!RoW;zX^V 睛^p4R僱򛹤|4S(.RRh)=s"Oa?r<] Z`Fb~F Aqwdaӱ+Ʈ'g7c8)_U~ianQ⧺BI.6ﲅ (Os HJBq9~1[C1 6$8_m\sI'XRMb'8A#,;^ciLi#} YOўǶX8<&DD=v SV?`y_tJܓCI\zY+8W_=Ry6أzu3;owRxoT9T?KvBꙟ胴QOQԏƣs>06Gռ;'7%d03vE|P`#CUo?"9&Y:>\9ɎIAIZl"θ\ _m99rmBM bV=6 ^@gsﮬKu淮B =YYC+\Sn)awB2G-g86=~SQ&œVdmT#giVG 'Lo]j֓V":V0Cך>tψx*EEjp4!TAkЊ6D %| iYw>]}ՈQ4#G՞Z 6 ZSk/Zh/.$w/_EJҊ>HX4H wQsq 89ӡͱ0|3PP[Wn3S,#ʊ\X@hFjy㓛Ivؕ7~d$; Zm_BBS55 7~:jq~l0VW`2Z^➙'EGc D8 ϏVlj[dU`=2,fs,|g'si6-v!5(ߛP&{!q:Fz$%Q^xHE#AjzOVy_-gzb(CR6hB4s-23{ 70w93]02$T,!E݃}$w#CҊ#HHDD3)ەt]`zN*RAEr4'mNJFE߳n IE *ژ@>#b!!͹SۦZ{"Kyg i~f!xYTH|}"E+Wf So$q5&cӎ4{gp襉*Q ң,h7gRtX`8@W.E|*j(ie%4|sԥ ձ挫,y_R"^TWD²hB5!`WUf AEW`Ω<:.qTjgaBLhqFrvUuy9ʵB54p\+^Ȁ yF{= 2ɮ>obFv hkcmFk2q5T(m8dG[{xmƟkU&g% ڔ:tlMct1]g"gw,`fXYQVu]9ޢ"'X>P d 5l2rx޼ #3Wa[cVKDXKo;BVRpĹȖUo:}S5CB!Ί7'ʀƫ$|W;̬aaH;f^[3IU~@akPquo6ȼ)̞X3GA$R?FIti^J܆cfqi/L 2G 4eTe?9| T1 Wn,[kg@Af7ojhx܊rGa%"D-_dκȧu 5 |\"͹79Hh @p&H2,}g JP^[>p5T\hR ?Y} <-<3LfCy7=@ϻ 0KRD[FGCq!}pX?rFf=nZ۽\ ޮe+{aw*W%{'/0u6IO汔Án^d!$bqۈVH@m+tbjU>$ Fhtf"so=]i]B($AWU2]Wͬf@ SSJ]f *A$M|6qPF "!X\R|4C|mgu1LfK.827kDqh)و:}Xdb_ pO? B,<g  'G8O"VE'5:du2 b]V\EDUɴk񕖘Nh?v- :Gn[~[Վt\\#5 3-e&#{>n)YD*]IU)OZ;mEi!12fr_LVС}q̕uM|,3OX 051GeG6ɨ."Ǭ[[b2->_-VZuHt߷8B}B' ] Jpl[tku Xsbpm28fMgkhYl7{&\M5#_M;+!IY@?9dZCkX7_&ޗ*(ۑգlj R; R(k5&2(ZOTE#Кh̢tbL錵4̖Xpx}e%'<ŏ!٢ Et>1ׯdžxV$yB f1? $7j+ FJ)6ՠӳ,sC[4s+r(l\S:]~ ~t9Ca޴ERY$.W˂j[5B3~p>}>OXwQD/&m"~1b7xvYЅM)et;!tޟ|Sd" fN0rO aЦsqe/BW7NBȼ$-T٤f,yp 1C;^q)!j$Mܻorf #3qW %$xm*-yczgI2C׵^|f,uxw,ό{p^䉺;5H :M.քt m4`<Ș|(ajZz?9~[bWq@~޲AojVV~Xz5slQT/TH]Qui3B)#-P9r OUVk0Y+ͨ#-ARdJ;5T|(qf*dG g{~ wPlJڠT1*Mpt.,wy,$Y.Vyu$Hg#}hЮZ?I`'k#zT QCY]~`[Q!yțiMHvs!&uY%_ )k}Fkĭeyj*}!e;2$Gap7Pp ӯpDsS9?=EZsԈkiÚ9s'_OV6(K7꣡od?h crqlaY z% E& 4n %hLTD*Jh;bSmp>x_ѱBnaxow9FJPv:**3=-ŝb6j?F>|e3m2`NxV#sG uab (;|v(I2UDZY{& ?%Ȭ.Gߥkңdh?7kmPl8bbC[HmB;*.>RTCRY֦P?OokP=w.*^TCX3K, D/V>We_bJQ4DrU" l ڜ~H4Eۉ^gUQ:uǠF_E5 ~bgy2AOжTo R!RVÔJX1lBVwds~ܚ f[w}xfكH5̴P)u4f,kmF7mag"DI~vJF1Ed>F!dN>涧:T@`˯"%K5DK1@3#^i`7~|qVsV+$Wܻ9&'F~a}I;3^9hiF켋71MZV=$أ>5|%zC}d<)D(4֟l`*+:m̒nE67p:ڗ*ʌ:e9)j݋bchidb(6lr%i iժOD^?iI zI_?/۾/>^9٩.\Qt6:i8 g\{]Ct7{C)) /s|s(S\.Vy={@ {,xj>0Dp>9N\I5%&v%={^**=j njYOE?&d:087 '\@iF$/، ;j*:c̶yg&n0x jڇF>TlG٬ul= deR) f&iK^L횒yILx3͘KJR%?mvc Qr-#s$9{B'O2@) mQٞ@0˷ y/=2Fs1@^w_\G}6 WqU"=̭|~5DKdWzŽ4ݯ᥇+CaOuP%!Er->{&xZ8 /AJJpJy<+PsC*,<\ HǾ1s.`EWp^/I'鈹@V@d>0%G<.?9##0|TjtE! cjd$bfM!Ak؝./ܭ0VP} d\Y3:o$Vbr(ezN"S4g,c&FJ69}Nxp`]^fҖU=y0-̭~bn<>ƋzRVzG_kL%vz! &q-o/ IӃdl\HnY8l> sGEɜ iIQ~2ƑwѝBozmȋEP"[~q2ܡ`. Cd{TS3"E\#7I"K \J0w rAߘ ~"* |aR[ʓ0Q̬YOq3Lݳ9 1:c&bBThK1.E"3gd!*}%؏}9r ^g_S8LAXj/Eu?VXg6Ϗ[?D3*Q8]QphXkt6ɝ1BHmR> LJuN8ZQYŮvkn8p) ]9-]~!F^pnK(:XyEQ71fĮxnNkϿ`=(CSa*F+7ӖNLGiOħh%hlL5>kE+Å>Ted#NㅱŚP-0}A|J'C]$.޴1쑱p?#_Y ڻyg(JnqDn8sMGX.h0}dur0ՁONeǙID/NXRͰ&PtF7'f&pl!Pb};w,lXǮݖɀ  Jϖs2S(!YܞFV|" Ѧe!`5GP,|L;7ͫc+IL8"!Vc`dWaI&ނNwb+-fW6ޭ+=5$5(*"8( 5=/ԥ !"`t Аt)',7Zv/zc"@"<;i3˔deZhk,^^ rp-Kvzy͖1êt&`$a:J}, j+'+ǔ$anc^UB QIb) dn وS" ؕ_ǯ:(k{z[RtZ\|&YBgKeob^6Iw <j\SUkBD䂹7`l`fp|khL JurrKQt |hpӼ a4O__Y;wƊN_mz]Bi(Ӂ.|=g^nbM0Hӓy}bo(?śY@v+˖ӂc!#Y3`#$|!^ K}ɤNgeG0 {F}sXOSo\daɡ܅-K&p3=}p!i:)/ G jNJTSR`nFژ~JV]0](S2&NzRky:FLN@Fn.2iƆX _}|UA*`Wx7, ĒDjOk滤&ur/ThQz 0^66"V݈Fud/ `)RbKo4Kڝד`%crou&}.n<1Hqkc_\yyCoEl óK4̶p5φ27/Sq入um^t3z,D3K{j<:͛\NM?N+.U>Z^06}$HM@&&&F_KOMh @Sb -ORrx"fk10OaxCO~ΐkx ﱞPSotL/ Cԩk\e6Zy9|VjcoNI;ǥ`^Tmf#x4( j J3u #ah*X>DY=tkyn1(ȕ 0{p܇!}OCùJˢb>qUQV7-w4:H r3CD_s;ө[׆2L͸7@guecfh9ǡܱQ16xUG2K-3cvʡ`3֐Z|KȑFFRe5@#R]pX_krquO'H9Wb%P% 孍Ĵew-oGj23s5m)g,tc =?lډۢaNQe Ub-QPOw b:A>׶!6H3 XI_EɁ.|Y]O\fT;GEjA])ϟM0>PJ;vn?z0q ~ce1~ %X~8&, _/X͉(n˳}d Np֮E<^(JϜ15Dw$p:3PP~2ۖ$>G sLaϏ\4/[yfG8oSC7$>#{aQDeWp붦 hFkBUGAwsRGTPtWF%bubP:Hdsi,3E_ $QR^u'>a-qNǤU&ھaa`H+1;p\SvHK$DԑjUPsu"W-_9iw;NLl>lO[ЖguUَJ6i/Q '&)"X+B)47pst!G$ePzT5SX|[Suq6 YIoTp.I5֔&4F0y}{#1>2C2QxہIK^]J"35,Q7a }($Nn/F ~5+xvFdBQ>y4H{B%t lC"T.B& [MWKB{SκGvSۨshzgd~:֟JWES\7E@5 n .SjgtUdIm}fjrɤ^׿2Lլhqၿ3]*~c[j3͡vd$|jqĞ"44w*S|6~ܙ}xDrwg2=n5zcZ:GUXhٓ;|fHΠ}!@ts0Əش+Jӛf#Lcy3 E8 3fBL 1gti5w`cȣqZYzg̨ዘ9` A;4>Ӄs[ʞ=e!LwSC [O>&1L~QZS9Q@"Z: gI$/;&z tDPAqcjC;D%ʾɻϘ;Gpsj)ΟƜnȑBy+3 #P`kr՞okH&N*'M>:1,q/n3UTReGNG^u<0Ao^}&/?y t,WE5NG-$VGaȦl%a լ||vJ[r ̇*3-/'2_}54%>O3]/"K Z-ߩ77. MһwApi ~hn7Nǂ0^ 8Eø.; b{@6 jT;#6hkC8F]MH]AT1,'U{AOb#?ezsc2&-8|6o_l:puѤe2Ķ?9 _fs,$l w/ Ks?re le\m0\p—! Vy>AڈNx_! 3(J9S]=٧]3#єep'4ϲad<<뇛: %ziх\ͻʤN ŠyH#h2iaTL~+<*3Q;ȠP10ZFexґYWf*vDNLPj%ʡZn!dGecjxC*Rnr8Kr^Uk!٤/jP2V|zpBV"PwBzҽ{VCMƢJ:"Zsȓ9;d$\ 4#iMbq~wp[F Bj];Tm?.T=ײ읓fnY t1t)x.!*T$X&߯l{/B=MDjrr8  h]9$ȣs46𸫗7EX@Μ C -U gxhj&? Ax_I>Kre^x ;1 "YPX0 7#E|&?C']e}҄ntS c֙LhR?z3r.xKxE8>J cnUyuS8* #\<}Vi7;k@ R% 9\:'_jS.7;cAv~AֳfJ`sْv6RhQ3&[ &n o~3#Ϙ{QD#*|-;32LԞOaJFD]t1m 1J$`mPǟD&[70rg8-jۆ/5g{ 6)$Α߫Mo%UzBk d5P ѭ5Y>k.: <ѥ+*fL!$Ak2;LOfoJ6ԍ%m AY rvQbH`kn^|^Tz#Bl3+(d [PWfSjfSaS?:8V8èl%3ôtfRA{7!n׀5ѽ6b/v!H_h'vT2!*Gh:M +~_A_D;Ɛ]XEz#}?bh( EYF=cIa_Ho@:-vAǜkȴ[휨=/'c"Oiĝ6 `y\zB_5&npdV6AD[ǎYkn= h&){R9 `¤{C[d;ipf_̾R*:ZC NٽnySJ'\WSE+gإWQf"$GboɁ`iKfG^$.< RI֓ge`|,`2=7]0UlQFOI.sk1I!)l3ʐ̰M`k8o.$b/?t{4@`ܪ}\y("ԐcJ5ښil`W1JEZΎnBȺuoݤ>u|@G" ?L->k]W2hn|$?Qf% T m'6z4Iz7u(x;¼G5{WLIBY=m3b[3C sR (NBgh펡5_LE=EYHA+7&RġcOvq#eT{Ap[t2"gVwz㺾p5`ŝ%47\XWRiK9|xwoe8q03tU/ ;q=G?(WO˦zG_K{Smk$q[SbɌIH]ðع5PdqaD2%)HR?xPFXu]@0&od+.U˃V@i%XAsߒeqOxb$AbXjr3mM9.+:bymʎ5RޭCU]*J=v!XR յR/ULO;/WGhf.qJ TO 㨩k")kTm].Uf?, Ɛ9Q|jShDASRMfo?yo'<sB&6"J3Neۦ} $ybQTV/뱑I8ZjD-3G 1Du[^IiꝕoRRQ}kUAPO(,R(u@FwZ_l*eQ=ŊyKh@)e$';"yz( L"5t?Fu*6(3Y 4*RxVaBC^wٯt^MyIr?/IM/~ J~+Dx=$tu+ 8V!@g93om}09vcp_^M."Uq<̈́phR c&5oEɺ΢ۭP׿ <8x$SW/!toB2ɧ_G^ΈMm9B0srU`@-P}X'1&]W~/Sɪ>]'Ȱ<7:,7̺C6`4g[!E̤H}tbx5|ү)/dkRt}S[ >{\uHJT WTzRU!3wo%_ @nM֭8+KP:)4|UZeٕ}Tz&.625uR f;nxW[ osoϔuOTOQ,>I_)|h46&a?%3_ַ̔s _B6Dز,A=8f*[ dPy֖7CAtx0Rwc1.VNv= p)Vy\4zRTMQ^v {]EQrQ,'JGw }p< +8H7J?`SNSڥ3$'|S'i*G,FZG^#g򠩋ߘ0^xlو5-<5 뙇@L/lUG14S;^Gy,Gv_rY6qOI ,s+( < γ\,TetxMK"Lr@*x=Yt12tv``-'1?L~FY9'~I2jE-Z鬈$EKަڢ=32ٗVl2L zp%q+pAGNa#q"2:/= \!O~A66DoW3edqAm8Q=$S"%aޠPIg!^:Gwᬯw2=]uՇt奖 " 2>SW(i\;'Ώ0IOmklu? _xC dra^Rb0/ʏ`/H-)'^ b Ɛ+? a)pԠImdkY_p$!|P7V ʣ4uzaґ)Ɓ, rρyl0jΣPs®܌}^ܵM-Jt$!yBgRe,vį<3'==ڼ_,ҥ'y3a9*D@;Q]-a%q^Kwov<tF+5:I^9P/~߂w4[<7.(sg;=dsC#UlӣV":9^İmp]!adt\:-q1i |N]=p5 Zra0LbwA=V&w,H B%y 6u(6z`W\Y|WNj1[毿P/ұØP%ν ߠ)ipjIiOk<ܯ%yh(TQT^j!@J(%V*Fa;1t,މ[ΈWms0]YSErhk:dIN`歕 ˜%]7V%3܇n޷0 s ˿rn]54g5yZAvf4V^ "T=НJCD _[|!5WN ^ᾤ\.3o٤XmΣ. )Yc7t6N3P0xF,xxA:;*ITL]f?)a2:xŔћH2!4xXt(jݫ<['*b5{wIX&( XbI,to\$QQ㉡ʮW~irαh;w U_ ' xk$$ðN҈]mNjM~g^>x_`!r:;X_UwHnG+, dL%qL`K9,hÀ&' o*i}Fh- sqm3D{RэO1rezohjN;[IΙseo R9s2nn޾Wwz>=2<4Ug%&vIl7eQrWe' $C0ZLӗ9tT`;L +˔/Ө׎u; Cx ED0` $D@ +i MR)L :T117,DWx_-xm7p 4 ZKFGjN]ՏfaG@?;%f|sc9q z_(~W+w ^+HfzL|E8yO16W\`=<aW" @܃!phjl KʫŜf]m@ !9oӯ+$;NE/~nA_㦒kHqL[s>/an?OQ-gkH9;sr{(tA5ABlҞb)H%\Gp9~ox\E KNmCWz$L1q`7 \l[pLVb" iCP QW|O^P!ʡ[Ob9`_4J6rT|'mAB~`"r2iFJCa8)/\pܱt D@A-=E;PfV ܆\w!pQ}cU*PJya/\7ީdAq~L1JӴNöGauGe5i}uXqJa\1,}"q%c,0u=H? ݍv/sЍ vzUäXrwY1OZȖӺVP.rkx@H^[bh:5dá'lKK"-BaB2hec~vUȅg{4%OD$!@~;.?Jґz4@{`()7T& } ##dCw_TdEއ3GwîST?Lc}I]T'3B \B¯s0%bIr6c,} d4,1]w X8Y/'/T͕I&ݏy(ɂ`F Nw\[*]ϰ@Hw=(v/OLv+2CB*3˞g7Vʗ '@im["$.(7]G/╊fu@cZId >PK9*?>s ݇>֎˹ZRnÏȐ GF|5nN{Yv4Ӹl*J6qaM"WbVqFƯv*iF@ZɇZdnD$`g\i`Ԍ;HUсEcAȺ&ƼB4%nͳ/ ΜQw;9YIJ.gX(憯WNj=6SрƱXbkU0忀F7A.snvy\hs,Δq&BŁ/oڭo*ڹR$+ܘ%0+S*oB@?Z2br 5zV< M 2/\LbrMG dsr f^gVQǰKKe8CDuߟhq(Kp!|bNz}>DAgS^,֏x2kb?70Z+VT2uŠ/&N Jł+W(tA^vn׫2E3BxgG<,>l-$ҁ-I摿'&"ݽod6]Բۓ#:DB?cxGo R~x*طSk83Rh`V:f$aPpxn'"1ٟEDn-pz1 CAz0dHP)zBɲ1hڌs@ԟRg4x.c9.9y9՚Rt N^p&fjC>j0K:JV{הCY.?E@98Kv̪cL ֢ԙq PL@SǐC(Ƭ펶. %GdWmIG*4/^BzI%4 5}ɲFojY؝ pYX]^5Jg>$tokd291Z8sc=b_m7A",0b_.)VT *uˁ` ՠ!3: e5zvYi>VdvԵzJSKAZT BꗃBMJǪJ3+m4aOܣ@pC ki$d$pE_Q ]&NlH/?)9h=ubwŁU1&t[YM4"Co2e')r,Mz H}U) >#`}x|L#`ȼ{;C{ R&D /Pdxd\$%NzQ`. ZE81](&[9YT ȀБǖՑ ǧ7OSо, \RdQel7໘rW8} qWM-cOspIPÓL/Jh"2M4YwQ|9g. fef& UF05{>=4c>R˛]- ֘s?b`KQZ }?퉚=\~85b-=!+o/h͕|ap%lث۞"ENPVu7I4ɨeZֽ9PL sZ^V8?"INSҳ+8=ct~= DyN%;eSSq")29VZ.7|}4;BV#Z'b(D`J7^0[dq[;AHw*Ha/.B /@/fTq_Zxn'OP,o0H"xiZtW,߀n~ $,8jǸGAFxeِ#\bLxWf]uz PH%ZD?f̀,MeXH3%8µj,Oj&S7j'<$*&Ae28+&12;"-833OBv$&_ k5CG: MD Me52QM;kH6=c|/,]̓ne$*PrtuP0|vpyZYi۲qgOZ ,rĸ^bvuՠJG/c5%`}!`ډ0pOB'daAFMkXЅ ǟZl`=oVOwLnکKb Ol%)Qq.PIK4ԣÝ/ğxnImɎ#/ħ.Hg?;ܻ}8erz꼒7&ck 8"129]MX&ԲP=klS {4e ܄>Y8H$ڷiW?rs ͸Peȧx:C鍠ne(E7܁' r)xEtnaXj좨1m0uֆj=+6M|b˻˚ [ KaX|V$n7 ׼Ag vY.)v7S4@LB~ÏN;c Xwlž ч@ TAO)eUL 4!|kF D:k1zZ_dȈ~Ӄ$vzd^2[vȩ޹*9 R!?Vq}FZg5ㅂ[ş憜AiG|ѹ91Qy(=>\9VFn5.:w E=$XwXѫ"Ǐ %=ێjy<`VV% 6/'Bi)j%$7R-tճw@{&1 IBAj9 Z`bÕIn2g0I9Ğ,3Q;Zzoyiy%#IUt9xfyۿLO_9Ba"E+9~!d[SͲoQ&\Ke&*x(p39念)M5cpj"N7RbG9=Rw/j=Md67TW~l{x^bbLx/@c!ck}{-U>CZ-yI e`2'png!u <}?Є>u76N" 5߬շjtuXM:m1kblpzu52&؈b,oXt c"|2 `Xf)M?a;q7oF\$YTژdu=dx0$O^۷$9eTnq,fAy6^g87lV( 48eY4'+\n^ԊJt.k8_<6upx`YEF} %AcA?ZTi7hI&Vt r- ;T -L]7$l/Η"ѕA+^K#> ʞb @dHoe|xU.wJY~F(s{=U Ԣ4LYwb8 797pn)~CD釯hG hK) _qhigvf[8|MS~KZx"1dQQ~$k:Ϛ2A38"k7D76\8 %!,6: u@ z+85ԡ:zvz*r)L`FHޗhH Kʝ %_O$+u72x~+3 mX)c9&N\MlZyνُC)jJ HҎXF5ɮ 7\a^U\^?u@>8 mܜ,gװTZ5$rWTDڔ_^s5Yd~"ܤ:E:l.8y)}@ > GrmK , |ra IZ7G<5d!v5.镗, "@k`v!\b(>9<7a̳u%B˨-`8K%= ؇(eb%͌bՎ+5 s^=%,-X yɷeVUD{*d V)~!kxwrn[~FͶG ͿΌoI0Pҡlal{inF*9?pkJ/@^hDPݟb4I@Z 3*6zB%H_D0_P yQFFHߥ/Z>Y&wcAO[<=SAU|GGĐEBТO#"nlz 3<D"1`,Z<N5nறUF&xD3ok/2.a^KVO&$(^b߹k7[K= 2wog|F W*q~_[|& #Lۮg9o$)$|t-7D.HJꨓ'\$d;ásJ7]ֻz/ S\3abV$rIaZEsnөtE)6j}1tU%~ɫmn"Ǣ9~+gR@/rpEn;wxr=D~5S0=RXCd33d;R`UoyU I kw5Pb ] 1g:ry{d!ekݱ "j/ N0iikK*q1*+l^F!6E!+¼tҘ1\w8y4!v>YܨK f ]'kV&ıG|1G4hM[iA݌Q۲!}`nM>qmXCdM7Q>Xm^kLnԱd5U<%k{/M|Ajf煱h9C6 Kc}+sI9Δ^&U%dONPo 7eWw~%Eˡd 6CsgJ!?ݱd);]Fᯠ FqD>nM(dRl(Mʐ4Nق|鏽p򭏳M'ճF2 ܲb qP1;ARZ#:b/)չ uVU%|1m%agfjslry語(@CӧR]فu`xD ܳ@g]TI3*=.fZ}kxǢ@kF̸dR:l B >DS/}Dgօ"/#v+,( 6+H :ܝF μ)1_d66YFmI7s` B{'k4o6kx:Yq%tk&,JɰkCqfT9Q'Z.)H*# yN05U0ya,.(d:'FUIX-"n%~ڤ"+VU\RΜ8湤p9NF|(ǶR}sW;n"ZqU8IyC-H@9nyGOS_rmowS+Ô 92۝秦})Œee,ʧ$fp%+_˼[b\3]#3pmMAWZ;iyHWd|7@ |x6\|A4zs`y4ITP ul+T_vYogΕ|Ӛ>z<ԃ|K~;\G").BT G=xrSm<[-mra7J8ұ'7ax ?=r7m,袚dc};,cYoosyyX9!A;ҖY)VDqRpM EH,ilə͐uȑ*u֑Plw& f8*|%u@(ͣ.%G:!aZAѰQ^-20Zl6=D W3&A;tʞMt@R+JdBmi;&u0`׈6TyT㈱tE&rVH1Y2D1}eڔ_t̻N?u .&|_};׆--4 >eK^¦jq۸ 3t3<6PzyudUM'} :¦ܛ;9GN!{|HfTCr}=r)Uz`ҕaFJg<^:pww:鸮MFs vVe>Qo禫(쑦 >E,TCm35\ScAPJB>@cŽePIK5(r|;`yqd4'\d˳fcVejw3 Rcֽ=tbF-z4f1' ժt^*sdhS@sk IcZ[0z)-.F0%bgE2qDDqlb沥$u.jeoOs fZA:O8~M~ܜ0&WΚ&cr93I`{P9+! /-G}{ǁ$lf<3Asfv쀛89'$=|EPn1Uͱg삐cS:ӺлY&-Q ا:{T̰״ Ѵwu|'T`[=Kj?}ѕWqV]M 14u%edm} yhUkB-b !?I2)UiI9Q|NMjmfpc&@lB`*ӏ"qsWa מg).U#e'HSIQ7%0Qh<Xφl JzS%\&FVNTA /L+(YL돳E!>lAg~|M5Q#PhM *{e+ y8hb&U;5l{"mCQȘQ{f%&BY0yGbDf{>,s5oNtrxόB;2V\UܗAB/"q:-&/beR H OY0Ը !WkGc| ]㲿@KY 4H m5;SL 9.Kѡs&#!+_6/EUAdjOWLf7GDHʿb6!D6F`a=} C\ <)Ta"H[+0t/Ή.* AkWe_1>vUH%G;+",?a ͯ*IiWms[qf]h]gNID 8ڸnwJKR|R&dƜos1C@)=U+ Y]h=%â }D*DrѬ:A3su|exZapXTY|YzSAN񊗫0nڎl 7o;DZTLB$>o9 6=u$@ :R|P rp0!L/ EBAoǴdhĭ'!h8& 6)KpNI]= GoV?J0 WH # z<ǜ`kRTAr՛CirLy#Mh-of-;yH"dVFFh d䡱.QNpG&3-GMI"/b&nbKS:̭H#CXMjsߋ~KzfDpO\` ? Docl Wu>]/&uyk~Ċ&=ƱNm@6C"`>F,A" =7>qshbVdZ,e#GmͳtCJYv&cnK)səA{@2 "FvSqw6pJcu׎jEl՞PKmbU,֕`D1cU?)RH98ʼn2߆Ě,DWE|zcٕxO&klb(1e¸fE >8 qn)E,O$6ͽ|pNn@W{."nPjAB}nU[މ7͕(pm5\/ i]f{{#­;x28N" 4V{,S7ғTJ$cQW쳮2sau]+V%HTx4Pr gZ0hS@%xFt'(]Ȯ; 7dh8+d;O%@HI@uw r+ @dQb4d9?CZOaR[R v:d'(Mف`itquDzt]hՒyȾ/ 2?Zʉ! c4TEPq8SAHˠ}q9̥h.{bsEr6gLR~Oχ]rFImr~=ٜÉAd+{_&hf +,-c=-W-imFU Ac %[M؋k}ulJr-X'kDFL aAⅡOe@>V%q'kJVv#.y*wTO!.XQc $\35Mé8 wuVqY鶤i#6|eIw@t"0.7*RL3DT #D{d|ͺuO[!4Q3uf=9vTA fR$v?e7[IځV-sUpkP8W(, Z>*h5:TU>p |ٔUhiX.=2?CZ[$LԠx9j]|rTyjj*,2Ҕ2Qv }nx  MKuf o}T!SK/3wƩh~w*87uױ;e A,m3M}ſ  % C=kmZ)|YA%ąn t 'DƇEmh8_⨣3S\_7}Ebc䂏iѴJjyyYg+jMnKoa;آ:Tz7!Z~fY0nي3bfd X﷞ k4. H/Y7a U`&f:ucT2h9 @떏IECeiiN*ai&aF\y gT3Gʻ{4|Dgh x 96\AI=D'\BdP ,w,j*YCu& _8hIFܻNX|z{hҷgHIh3Lؙ't*W@%yrL~H%|顷q"⪴-#Fm  a9xL)omd jTm79blhp;@=\rC E #KD S, E )B ڄ_ а9nqLMĥ+vyHkw.y/g:=h񗡃eڅ]O0 '.)O{w9Q(9*]ޜV .zH^Cx$(X2UyCzU\;rc%8 .9by~|#[WKSqMd6QOUƈ0>E%9Ak]FR;Vt,k: SVd`.kjkxGwE,O-slc ywV Iu2 D"-n6eQR(h;>z>P!qɏk~M pE^x>Ls]8G:E`uϒ)=X[qf/ѹ ;FAW~NQWg m]5M^S#5$̃η ` L2ïkIj^l6_w®HÉoǠIcՈ֫4yȟ/Q:?_{fA"=J4D ;<>; 2J$k5Qc=XVzLa@-Df^擎܁;֫+Kp?Gbί#}Nj6v'4p uho6|KͨC г03/0IGEX$S:[gxv笡 )$q/ȇI=egq ,)sq\j8<-$@Z-RI>:Ec=>^Ĺ՘meMۛ8X.Ys0DfߌbCG Zqjr Tx0holZ<5GPM4&z ?,v{jwsّf|=;^MG _5KaThCo:eHSythx%iq3 >99i :dq%U.Ӌs (}PaB0pՆoW (sJVY`%)RF?h5zC#,I93`X7 6W OI^%k@z$WM5Xr)04b+b)]@H3n0BU8|K1x#}"y~?_ ;#e\`X-p f,>/g6[ި0Q~&5w"…O=‹\@obօhZ!iq;1(K,<Ǹ`_xf8Y!`dg^^eCAպ9@gwbfrѤI,׆/am+[_ɌVbVO˳\[~V;սKa9^rF;$k'\gufٙ;_\?hFy )h2mip18Hhrrّ-COGrՔKL#^gRi< 'gajO[kܲ]uG,NkOcOFb4ζ_Cqgv8D&6bZ֞ӋƓ},(_ոY1IXdWȪ'^H87r߇ɾ#g.AJw2jH9^ ,=pDdYjSlG|Uxm'C+T~֥M!4 6~9dҔ^A\wpc*[~VL.U)d=w4lUM>ѵDd1 Q G|:U%iP5;G=p0 d HC7V 3 $!y #8YX1^?iPpQ3~h>@Y].f@m[ƛզҵTq#XuI ҟ+}tK#%y &eoD/b]Ab0"]km5%PL-Y;>5[hkci_xͤ oE@~]Ŗl IY'5%Jd(A0AmtNlܻ#2.X`Sxg#,ȍY!TG<(L璘QrLDmҘvFZ2=Diu{ a LnJ|dE~i 9{ᶛOZܛx9uԐH4YsV]bscϰwQ+QET3_IQˆohOqKX(K^ŶS) au,sܥF63qU/M#H2|Q@-:EUi\z>[ hw٣DBO_3%zLӳ"^RmɄ]HeX2Z=d_ds0pVIkƨ{@𵜃/0d4u*v!"40$%w:z} +ߖ1(ɯt?etjX@ZJ kW*܎% 'Ri fA2E5=ͲR7и=o_ۭ~@ޚFV~ENd/mI#RiJLH=6(({@ԉjdB _I#0#(+U}sJ曬ԑ^i!ܲӦ¡Y2PIlف-xɃRǁb i^ha&6-HqѶT21:dP+Hy#y;`m`Emur^U#8\49Bw"tΔW-)|؀gc_XȽcnՏz& sKJ$J섭CMR~)H~Z)lJ\OF¬WdX}˃X'8g:I7ʶw.⡯}>?ԺY鋊?>oӺxݪf++;(QEX,<{ޣr.pХ;FpCU«M]u o|w]yrD4r?)EQa!Fe\Ʃ^4IgF:ϐ\ r=+]P&rgA3T7m7BVՃۄXVGbX&K NN}YA(#o )aKL~х)KYsl NU8)$hkUDN˒1IEO؂4 Ā'L? 6%U!*9?6Ay&J7<-3O7S:]08%A&lYpm|2&~p d)mײ;} @ AEgC De`IyQˎeՏ'99);329 L6˞ 쓥:QYJAgŭq~2dal{\R`VuܒwE % "*&ª4bM2pRHmy~*Hp"c# mc)V-fu/nAiO A2EzSM"_56GO o9 u_S&yԫ֟] eQ)H6EyHzML <_YTl!@+KłJq\D}_݇#aαǘPMCb]i!j6d%}J$n)-[ vmTk>Sc\Er?W/XZj>P&Jt"Uqs(JCo 7b2Exz%u&eiNǾ^~h/hڀ``Wr4WFZjPIW 8;҄MX_7ODR}]z5z7h~5>~L):Q@s$\fEOFKੇsWC^ ]fD/mTw H 嘱J"FR E0|PY lH/^}~r\3ñȠnPn*wN4q̇d.aЇć#L.VQN,뺂ہr=@ KYK Y՛\|OK<#7#RzcJ0".e"4 .cڜy#9{@(0y˕}7ܺذp|> cv,M'm[0Α!&>|HK_ߵCK"-'e5ͅBܮEz9NNH!m f۱ B4QD|p[4 &n?TԿdE}>ϼzr_*bX-ʛ:xDŰա$뉩/~8ׅ<̄7CyX_e'yꅆ%=%?/XL" DKܛ3S `f*5جqLm;/rcm+.&S@y87#oF#00rNnNcų/C-[@uRF6X6Y9b B[[÷)kE1K0RSGo1yG1^ZŽ[MnE`uA#O@Z^. *svUS %sf3O>|ÔuVVVEJ B$_c!i%җ֪.CZ2 \LT9:o|~&™ةXM QmJۺ@@U)Zچnp!'8NTWad`ˆi̳H",>0PΪO3{͌!HE 8Ek|5dz:=͉ -؈~ [;?۹>7Ӧ1ENWΥFDEfc!pv\֔7s0-Q[ά_zLa u ֲpݽ;qK[":^^r/Z8fB*%3k|ζQӣ@S>A!+Ukչ<]m`g5>ّV-s/e<;@}ɒ8FvY6+>b#ή>kUZsGh">r1Ry$4)Yy`ܓ X?? [.s$72sq9s_{+`^E&<x8q+~Lm(5u"ӟ/+)A5xexл O|hGG3w<)I @00"[׌Y6+unʪ(:6EPFU]ݑI_{A4'IJ``h~soC>BX!G_Cv @ZSA::?},y\CbŬE(YyrtxB'"Q+ʌ6=`< Y7oV[0'kYC(Hq8^aU R Kuy؆;w/i%iNv:]_EΈZ:zfCV꣣ιTlHXzBR3ո,4KS|jnrEg13)A),Zvj}.)9;L J:^C]  ~ e i(=㎡&$ {~A]#CwCi ԈZ⢋Q9ޟo43Ҕ-G(Ih)gΒV;|X`F"Y)à-9uKo-єC5@M ,>8z$f. \Ӓ3Pˇ^N~Ҹr6\UмafTºtJm&Gn4G#*63яm+ШkNB]?a 0f8(.?d+C21|s1/axn$ .a9c*`H P1\pl 3xD"ֈ$R9rs'6F>CM3I٧}aǬVKsyJ'y6iY=0++c1ݪdsUt[m]6hV&Kuyz]6f&w}HHه F rLT}`]'k FI"1GA˒a*(C9=oFa/,^kDԿ4sIᄄlb*Ѩd=C=?ixd䭸H8q0^Iyj@mvB5qE;Ӫ\R"/tG&nF `ݻ*t(<-x$N_TC߷2NRY%*(\ۣ[C )m_d@5ɓD;Y$`@P Q'FόV)k̉LIFJ)5d2`πmJ*%]kяbǡϴ*[g­ꨜz\'ۥV]db ~A4F"9Lqmz|_#~ HTXE]8GVܟLεNORM]'`'m:m1%,k6q5OЍݘD@;Bye96jKX!lc^b͠(XAc㣁=̙P:Oۙ 1N2ʑIr<g9[ER@ye=&6vaOJOEZ;]Gа`dwtU"uˁKe0tKװœѫ. %<Ξ Q5y{9Fge.šS$ALQ pʬk R>[HY^,8fOTqٮdvL @C+HN,4ve s.mZ% t}|~Bj` e![4ArNiɚQ$b-bI0|^|]VJos!xBXZnd2{P^u!%Aru.<< [ DY#(o_\m "ay*o­D[@)6*R\BVkR9Hk<g 54ں3o[*@K^T7QS. l$g_~1?8B;ML# iDǡ=D EtF-t :O SjEӴVSW\ jBԺFl;/G,a`[W] d T#?fغ;sEM("y0IBox' 'Yi)癣0oY0e] 1L q#3fm4u[M=gɉ`G@Ab5bnEb͓IWC\B ۈ)"ǾDA!CIk*}zd [bG p퇙P@Z+O<ɽBY7 T=J 'w>S6. g }U ̄FTCG8Xg&<I*tC1!LY̼:n߅)u }MczvY~HʼqĚqTF(}z#u?9َo:"0~nS)#HG ֟G!5| n].BtTL&ޑ-1dCY.]"ugbTIzmWj!͐bD=gY[N ip*hNHpL1o+\lj"NEhҰ<37RNP(h#@ Ԟ+6VJd}X3/0&үzt iǝBc{g킜y=d$ -kLkAFK'(&6uÖ\_Է-Q1km{LEpYR]lm͍bW3"#҄Q ]diVFl! 6E|WLWSI_o_  'ROz5/C C'u5Ww&?[аo`Dd(ʹ0BD9![ 'vYRQ 'u^)lz5^he`DW v؜N^57bǟD2q7NfȞ;N^+/Β+4|y{݌^9bFq՞~# G7ЖŪ7r43aSm6k_8Su0sj4L\k> .Jkա|$ 1[2taX'5U!4x lg~ߊ)3"?3+i8-IQc)h5 H x1.‰Lan#PTi((jN4CBo[ \4D%El:⸉֕M5]z~E)1 ?]Jǔ7 ljQRy%lM-T>r? @̽]MUd 1- 0^ mM~Έ+ݘgVT][_1Ӯ#mCЕ(uS`w UB Ig,f 44n/dU6=%('*1a`h  7ꅽ&.U4oz6A'I&B#l *k15)-8€uuW_Վ&:-dYRY@PJAamtAiB.x"Rdcf!I&&ՒTMS.ڠ+ۉ0U ٵt_U|X)}/S7騜cX`I v<ܦ_Th 8e @+rcWM7%dW3Q1Ob iz%y{#A< y1Sg7Ǩq`сuά?!.i>$Q^S*$wi~>C 'ä i#&-x&瑊=g};^B,/8Na hPZ{")n$gs} 'V_AlWːVD#E]IP!w.X9C >_{l0VMu>OSbX+%C0cgnE,Y OCH#1@ȼHM86D e^3RM׀])m-M~,9^zҦbb.Y ^;mum6-=j/֕dx9$6({Եyx*iN]۳.,:y/VnPxR=/)ހ 6 luҡ%2N_Ҽ)!pT͌uL$F7Vܕ_8 , nS׬310ijp^Ê.lNˠYq?*O>Wj->"+$tY; oy2 Bk4j%U;5^“^%tz5lk..8XT6..鋾t֦cn.yR" W2K(d,"Ah oLS=m[jD^.8;AE2 4f?qlE=*ևWf,`[g<'Y^-eZNm, v.pM,ҿEh~BwevyGSDQ5L'2~H 7e.֟yRn-)ޭ U){wQ'.ڱD-hph"t#?&o`cxbqŰ^/QuGX\$$%'{ 5 R!teA@' r&ީ5gź#W nF>뵷6?T.M>Ѽ\'iܛAO `/U}RsyiiyVg]uv7VdE*0ύ(ڒB.Ù%\N,,ĸ=F+ʝ:bboAjґuN- qYOBRČH9{YBQOb4ɒ[AJX`O xJϣb}zODğqi2Ev}f19GɗUNwH oiBuNŁhlKD~D*BGX7 = xUM捯a g}c̀ , )(2M?[vwN;)P6.3Dc6b& |;Gl LISEy4m1JyO"M=i ݥ?u y b8QlI7vDO~ %FX9}t` #,OBZ^'=g NAvN<}|8!v#@λjaR5'*H2? =ۢoA~m0{D>AqAlH zr&gV`OG\Uff|Ƈ?L$yGDeCVFh#P.\0t7W D{)b8~ӒjE2Gv ٯV_q1BQG&,ԵL-(fRt{VK?;ZƂ8ߴ ߥY/ac U;Sj<ٰڭTơ5T=a`tfNW͙cgA"Tr1ڪ %d_p(-xi:L[Om.qN89C3(ăw&] \-$/fʀdb}^bNFW¶'I0^v}5/tP<,/UnS ]U12{زhl9l7 f>_X]W^0n-FU[[xrsc^lr'ExקzVVy>:THl<im>Gk[hLgcD0jHo=YnhB huK,`AM[8:V鍵yoaiV_b5Q*աӚ7$>%yh;JTK3RUGnȇ LO;h x.^'f(Dj'&CHjI =_EemP¤#U9IoQm7DJS`+K-U-J%"eD֥i{+[qO02Y\JLl_sD\W+OD!ubљ t"ٯpL OQ9]~EK.'3k.V[EUj5 i;lɟ(2G7rq[Ơ0j.I)I&z;-),[EڬˀB vC~?(K rsӋ=k{mW [F~M:e&qEۼZ<7gu S$~n=TU9jsY7&Zb#{'4N[d)9#J#p29P 71GLa#DSiQP:n{H.gɌǺ:h$m-n2׏E ~0֛LUyt7 iJ{J#MG@ם{KcA/ vԛLjj+$Gה̦"E>(J2KMٍCYĞ$2Tp8.~*BCbŏϡޙ}w$2,*f  ^byA G҄pAP3b V)ShVp1R H 9 s~;U{9Jɝڐ=㇜v",΀1FBȔ~#RzEIýgvuߚ qqZ۔v$߅^XYCX[KqUq()BH'?-BvQ{ԋ/SChKꮞvů~أAM>t ޫP"*M[v}G&mM4&ZW-X,ӆ=и f@ +"i(Ie4Yę$'ېLqnv!QYTZ?gڋwP⽳d>qcƝ$Lr(C=+CT (ri';u+FCDA/lM%?vm"(Ut+; 1O¿if a_͏>l %]I0frY9x+֐pU&a `7Z2P^ur ~S;[9vH?Z?msǯ_g^Ψ}>V*w75X^9M'(Y_ zL73K5G'g}*^W_m~.n&QM` 3'/S$= 3gu=|5(xCmTƈU9ܠ HB˖W6W6ROk4"ul`I{vn11ӾEBkHFHyD|CI/#ϋk[Ni"L [VNi{3@Duud䶓cv`!yI aБ!_LDUf'B ߥ8 jUqKAvHEMxR*/m\@䝋ŊێTe.زB1RQ1B;WynX$ j$ I%FCZ.~2K `"x2v OoX@Y{kԙ_}oq|[\g:޷7|,*{DOtAp.Qk &eDQ G%7ART~̀UZ`[.0횚0(OCz7R<3l@ZHLF+Nt|h:̶uss6xFhb"%vY'Gkx'A6ok҇`ת(1A>t~,cNn ij0 9 ׿}ȾA7h[̼:DOf>K&t~a{[nR$'K/"(;|Fı>%LMյtGN.xEuvNO  @uF o!R$#eOx|L' :'y@¸[QqUcOl:W>AO ˀ=Ÿa,B@:e RTR`<=5 ;a28X],lH_zN ]1dIQ@v /aP~ 3fkKYZ*LVMc(&`9U9#f)-F䃮AZa1}g%)@#*ubu2ˆweWk؜'l~spp\tn|H!QEBta-o((N0谧1H4w ի~!Tt[P;HÀM;fUd!;ݩx+UT@dJA,g;.#W aCW6O-y*6.t_] T`B_&&݋*"UUU7ut%J *W]ɚ̯?y5q* ̒dʛZʬoi-4<"KU\tS ӆ)Vw?i?i7e(2- dt\窤K]tL s3++W#n&T!S}%+rl'l' MGWIG é*6s󃛃#iJi6p^nfwY4Xhcz30 ά]Zc—vwXNQGuv[=^sIJNCӵ;ټ1Qݘؽoq1Ysy Ɩ߱/0 $h^#ڳg_y#>&*|CN#/ߧ'{Ъ q-AE> F6ϟ7Tl%hwX:b90K(LP(jq89W+\(hE-Nu7MieU;OaqL˱NVzl% fˊ0j_semNn1 mk|vS: $lvh (&ƃ8F jLNZ\p8KEDy<[X S/;P̔!oy"$g9K%NJ[$*aMWQ5 {Vज़EkJ]VR'3XޯNLЯ"%{Xn،Gxg@=t8\N4)u|FbYݠҌu>W j^Yẋp Ȓ! 03-CS h Q =y~(o$խKjQOE<4|] !Nt-3G3+t̄]7r!dOnj4E{獪IbԤ#='6`.%sO׃Vi4(4~>@Z`˴laI%a<[e^Ç0tne͓vzROTx4 9R0oJT H'1Z` w\/Z$PL1`H5qRI``ŜRqEHԲKOSVr%Hr6_%8XV#nWMr &D2طw=[q$]ZV2 K{YMVMyA"?5JMq& `IyݹE2d%1!.gۤc4GeuJw^2_jůKl?;iD*{kLf!|!QWCW%Zc>e/ Kiy ocKKW*V)DivƮ#`DIDKOsVsJ*I{54X\:nBr܀&1=8_f\ f@Z+h?%4l=M8Mܣuߕ1H΅6o;f- 6w)320C_A4$Md~b #W.6K/+j0/"> 8GcavR )Ih&oHl]^JT/tӓIFh9VxjT(t2 khvMO#d8C,NN̏E%V(ˎZ$8%ք/?4N=R1-#ip{f,o$IsgZFv|!ŋ({* " ik#KF~7\π/R{_I@ **7|a;jtcltxYæ=AVѠ@$& X5D\E0MbP'PDZ2o!cmt"'R.!{jχ\ z%QJD^Tizy[3Q$l(2Ez8Tw%}lbj멎Q +$ #ä0Hĥeay.HCR2S2r>fHB.d:K6H%GHXS9j-xTy_ sh ;T3`oPfJ~зCT"q]u-[|[L띅:D0Ͽ#d\ϏFow+ g^ ALPvw׸B =@zƅ }@څp_oG @ݭ_.؍/^;!/b Mz)k#)U&@BYA?'#i԰絆*FOȷ،~7M')8qNoc-ȱ9˸=2ѫ_:r1Cؽax˚ D,BS_Qr,i%"4Xi}X @,5?`P?VG0M3I)<4Da͞^6 BW`?yNUca_H\mizr;Fop>i" eEI ݰZ6ltxcʫ(VXAb|_ ֊ ƭ]:" 4uHI̋6DM,!_3H1b/u雕?^9Z%_jhTϜKcYEu$%0K#ni5eOܯ^;x9jzVx\AK( yL@\WpN4a|#;f* uCoxlutqj~~~|mX/2"=%Ө%R0|oق>JTa en{?*f|Miv> uD>|3 9zw_26ً ȃ )!9uc0_]րtP褳MosIV0'20 ]q]GFF?AF|n 9 ܁Bl/s=+6hI#Xo A5l;+Q_fpƍØXtꕀȤKlSThv2°Z:uw)lhi0nݐl𳔧jJI&LDw@W!mi.!k<wQrE|V,]H =k,)Y@߿a ӪUrMK=1'|g0z%h+NH7X/Exٕf#0>bO\cҋ-[DYĪxe d6d,Pu6 QWB192;RIXْxCG-f |-D>%Ԏ~-gd֫trmL̂S ʅ%d&w߸1ECBq(M.PPP}vb7s(Jd RIr_RI]oM8qQ]] ̞&2JZFC1 w ZQt[ʥv&iėp C)X=Ih/>7B8J h6ϐڨX ={=Ć{wt8"w[Ld9qX# %&VkTd6ɹHDB5n$vmY:]))ǸLa ޡߐ_PFht8 qI+Y. P{,hdb֫dMca{Aqyߏ<̳Y3pJc^x+r*N]S4m/{\'pX8M0k)D:$xtic'_1V9EYu'C^t9x 24j:P,QJ < t"ZɈLSRw1InIW Wf}鑣!ڲS?{$E9q>R#P`m& G eZ2T Lc-&<4]n]쩓qxp}Kkz)K 7:Vly  !^v FL%Bp@t3CM[*f]|xg-sMu{.+.`.U<x_<4nኪ{j r2,<r./ks0]; 5z _m_[T$;lסTWD)}g8h*[6,=GAWiۺ u`RmtR&.+*>(N/KqvBz e(foy_&wr*wJ*brxs1qs/m/AO[*@Xk(/`K V1?q*t"*T'xqbEbh _7VB )UTVe0hHo7ۜ.X œ)yEƝ pԸ_\9:4)GӊRpIU{(ow ZW§(CYO~a+m{JX7kJ\)/[{ðȢ1u  29֍ݬ|ט#s il}?W{:pHs()-&reHў p1^yZc}-nkrH(x'ٸh.}E/:iwf57V5Fu'./Y0>6"h\7Jd9kbJ#&;.=OUhy$6ύ+]!1QK;߸|hI'3Y8=$cB'ݖ9CF ؄k?"U{'lWaC~!we:^d8#<6Rza.M粷76ٙ`ay-v1,ZPgQCeKhL|@؀%c h%ccFtF``"fLO4c5ۏyHoAgdx^CEЖhNA! f"ޢ8=.cS{.R&-I0sd.>]CXGh_FQ}x:l ͇x#m_J"-w-М}[i0_\\%>y 58l/ŹIl)F 9dwaw% o$=,xR"8tFOsUP̗^lcjZ',ըII[#(P/ Wv* \hK³0 ox)B0qh/^:ICzڏ,j`ꕱ)g' S m;6g-((U-L֧4bpo0?|Lh "Ζ3lt&3Û|*]5tགb2d69)C^7P"ꈇX/ofr{V#VɗXieCzj@њ,l5JӚ#)@j~eRTi"9>N]6Spvؤ[|b^:5gV \v"cc1u&7N|#α$y 0% 5bHP2ಏu1.R<`&us+/[`L?5Ɩ .D L,]m_Hֶs6OVtd0c3E[h,G(ņ 33˹Wk g22QYy:8a!+iv]3Naх,8$LqCxK{md a oM4Tg|kQZ"zjN)^nGz4s"V*7bMS[:XHd<p}>!kW3@0xcxV~ fobH+n&zFcNCt1cRt᫣Lأѵ{|MO}ִo#ARR&l[:exJ]-u.^g}H:2}|ے*ȔrgR%yxV0.ǵWJ;_y^cY哊;csyN5P'8l8E5|/LGB,~e}bd2 j~s5f7T15('W1߉% y ̠svqm"U`ZKaF!4AޛRRQZm@5F~J&$.wqb< NRѧzʛsʟ9]Kc4"mْ{A~ȭ*bh؋jd᧍ڏ"@jxxbasLym0ҀFLϮR1Oon/`Aն*mF/W^}H5ۄrKu( x^mhsgLЯ=<X[qxkpyJEEr*ݦ"E_:)UCt ! #E۷qѺ?vᢗ)'k}-Оm#j- ClE\(ȷ2e}e dWz s3ݓT(EDoZqOYX%+_rYFA} h2Ƣ!Lm)z0 ӝP~x`_%Th`';1ziEbrFo 8~ ɣPTX;ȧ:RJ= `R=n#'G-fkV^D?A!-9MnZP$#QD)\t={x3ѪhQi#݊䅄_y0OhSz?ivȡf_ao1Im_Byyw0;܌G6φpsR6XNkD1!f ]xΓG`2˂f\?!šv ӊ8E2dGqm B3yԖZ.O]ISaY)!w8So-C!5|#ih1r "m2z#Q1܋n4_=qwp6$ū϶An-;h|:52Z'6W^-Θ:2҂ YKPu?5{6z HPj)'Io1xխ_oMॕ${3XiXF L.d52+*&CP0~>yl4Sl~w2}͏jnE>7MGۈ5<[eT6^e72?wOney6(͇8ܘJ7;G!6J]+xrS B X6ʔp)ҫ>7A=BH, =6 ͑k>+~Azs϶n|8ى`OTMćFRtSU3#[2=Ym* FȡSysH.cn?v&Z>WUe]ݢ#1![2&$]Fl –I.'i |HT! BuY*Yȸ|| GVUQSw6 ݴuʸ=ΚrM _ruN[%)mщ吩yv"oamUAp{*WܼC|si8U ظr֣gSȋ&1Wq^#a4(H=~ڴ]JN[6k!p /7bxZ.B "\bET}9>I >#}D@m0|;rNpݻ X짫ݜ ,InLj! `jYsC/V;JHXl|,6Kj(̽O'y_|j\e:\!?/\^ӿy KpZe 307_kyu$Ɔ1!0rqq;|`EW!tK) :cЊ/MgAJUbHe![cI 1kLnO2Iʚ.9 !.mhn[AeRΉ>aesݩGh'L Nz|d8iYT{L j> =]Ok$O~&v|!yQM1gg&G ΪBڑr% X~AR-#I˯(+(ez`fݙTj'@8WtO+ǡt4 ¸3bC6]:C`Jɉ&v,q#b%yg `@[U ~}ϛ&TJ6S^rLΏ\Q7)y@e @z'dw ݭ̟2t<NSg]]IHnpiG"o0 wv[t7L8SКv9KZŌBଂqD{g{(}v M:ՠJZU=ub#HZh˦ğ+ 5ޚ >+hY0GTdw H'A'I$D"/hvG B0T90F@5>k_ua .PU>-YSF46J}= }/xy:ᶐSWfKV\GԺ*G% yPt }O`L5zEG,jtOBF:Q>")EsJN}&@mZىB% X ֕Og,jq`hd!jmߏɟpuA{aO@SR@5'gDT]x׮cAt1DG)pRHf) I+e:8čk&+bVe{B|In>N`עxnr =$ `&nh${Ϡ1s~j/û/\j{.uw5Zٻ,_F%6 ^JS26%B_s@8P}`ͷn"Xk ",~/PۖwdH"~Q[t%҇[Pa[!8y ,NJ7W:܉oW GzR˓u;c#W>2Iki`"YOvuΏ>pmhSi KG܃26F$CM~@!HSXc|Sf>Q4[p?ALQLtlEߒ/'IOB+ҍ8qG> X$+},w$Vl=ŧSQ1yARC#C;Fz5L1TaN¦"Ħr'HPD;WΙYŚ<"-mSE! ^tyjL7ȁb-Ub%fx {np"o?(-2 &oUEw[| '+],9X rTTutLulVxA0&ӿn2>$L5si*QqeO̶q"\pJ5#cL>Z({n_=qV#JifEeZ$ձlsJg;A1K#yQ{s-#S&-HsohZ"5\ֳJ,$g8|`wIHg8 >kEā k.bG5, 8m(5rmKb$#Ŝ3=ʉ戱"92~W8u(10 #8I]&h=} #㷣CL0 YOvRVs k*,IKj(NrGHcZYԡSY@|Pw]J#_KlZq yeVIH<گ6$̀3WcۣU MNBf.م%clbjt\Pal+MY_$ǝ#ɶΫpy!c{?LNImRV ^ URlG݂R{w 0zOU6m'K'hJyWJ& &%'%N͉+w|pgH .`bԕT2( *8-HvfNzONцI\s %zO$M:% xP̲)%I)VbUcX!!|#GCpbT_ϫ5G}BTKIwmbMzn9d G3!~9 N6 . $_E[9,V)(菱E )%AL$-jTD:r 鯱t?tP|JА֮qmlu*sy_u6*0.MHTnh&FQ Z|Z9|ɝ0$s0Sɇ<I-YNy£F*맀הF ޏ~^a %^<%ԮEĘŦnM|q)0?'{0+xJH dpg_h[=|.5510_kq,}P$ 021 C .J(r`54r>p̍:Z Y?ri=UgٙOJ |`|3AP2C RF@7>{қ*X٧D U?U.\Ѿ~Dc5q艜)* ;ދ!{ߙSl5~ Ϗ+x.:`ȌSAyb՛TGP^%S7/Ңr^9zyO+k`VhE0d˅v>} 0d^ڢVV`5%LsrԳĝؾ3.j+xf^D!o7ka3\P 'Zkw?!=A:6γ=κl6YQBǹUuiŌ̯nPUN "WU{=@,9rי9#AʤQQ2(7YR19AvZԕyV@,?E-5Ey~S}sK}_ 65ˆ &xLAR†fb?B^fdRR Q+0JS~dtlg Hlntk7ب*ЊJzT"=Di{֔bHDܽXV-""_ȋ* ]jA2COiN)s(cԘbCw ۄHWg]7a#,BJI }BǼqL}/݅{<)g߈Ŋ)ϳYh\ CB!%eɀMa@,I_%);DPޅ!?zjK MqY>eV2EPd SHf`[$w]Uuk&cqZjf8vy$`0Vp j>EqlD˖r)J"lk8AңY??+.wsdž+?[JЗ}.3EM_|y`6۾?K+n,,OLPW@i%,Ծzb!h8J -(I-. OwSaBaz;)ejuF'UĬ&CswOtKdid杍 \'ru=g e7 z]Ot&TNz`C)ABlnq9ޜxw Df _vͳN,>/cԌ[ܰZv̯*mKѻmbT )Vd!]i|9p;UAX$>/?+x2~pfd #~jvG+MX"sEgXM|hwtxWOAqJ(H֑R DH:T'33=+QJHTn>~LS ﲵk6w =<"Ϸr@GX9&;eZn+~?O2"k8cYLAځY -Zrۡ }۞~Hpb) IQz[aqڅT>M$n֔}Ou<*@v:o"pO1\:)Y0y-\rq8)!,G .txt;Q{zdk,`,v֔̆6I{EQ;}:~3$e P,ӍgT;̓DMXv-QjP)P n}#BvA:pp O;LK5NN2SQ[\*V|ܰjqx7YbqFkwaQ 6||@od]mMth@QouTqw;<Ʃ)"o:o?Szb7D$\Y&k5G:'ND,c;Bo;ae3*a DRuW!򉭩0oMұ0hftw:=XbE8Lbe5؁H޻ ;,'˱L'I1藈*8%FItܷMR3 'yZYja 5{8O~5 G/Y \)tO'it$*X`Be8 ~LX6tg'ɵ<*i;'3ɖfe9M7SR^ ƌ57]:/PCt("8T9 ?؉:9!NW53l:eRik1zk{w )%Ɋ2D]qŋ`! dx߅q-F-M4ˏ*[geł4P2R p[oŠJ[QNùdh5Ya4)bZ!W^[z5Co^?H:د2iJ ={<_nDp<:=@qk՟>c&0Z+ܟI){=.̷rnw BrfIV:IvnTb 'm}V"v#n)gr~4bʣ#þ<# Bz#dHTih/ELj |[b]Ƽԧ9cǹv + h0Тu ѹtI1qaeKSڋmX/YgNjgʌN&͜܁fOX/=d\2t } 6dBwV[g Xy g9AxPD W_6?ϔV_|^g5?sV"TmM'WO]L~ܿ%] u]?ɚiOZe!ܮo `RS}2?j$~5i!2}(L,{CbNݘj`? is=s?(yEi+16g(Sb,̨r+d/Pf <ઁ+iN¶,]1':( c%)<+*ÿ}jhN̵FTr_`@/=[EWJnpϒtQjZW ?`76R5Ȝ5iY9;UN&eL|핡m-& O4Ӳa$c|X'0 8O\Κb:beؿ JY-P&'YQ׎* I 2fTEغQcxڢo}ak |Xc NG&gƌx(/\f/T'z9 vclEt6%ƒ &U!"8 n_EZBQn*oi M#'@Ű8wr89B obf=V)ibPZv_0Mz(06sXne6Dmn"ϐf0UKOMdZͰS &0$,VB ǾT[7u im5s! k-+#a*ђ:Bçut)VxeXL;)5Lw|l0Iz qh2b=ƎuC [*:\8M ["K,z g++"@=b-f:UjSOfz C +Ҵ ׳!<ܯkQeyAy2)V] b~5AA'i*h=y?Uҡ̕v蓾 =Hi3<ҽ:y^1Y3x~7Q%ԉ%엁Ϥ)] vz=?SL_`^+ amhceQ;Jv6jp·:BXXz JC(6#iR>B&gdHj4(fϒޗ8kϴ$$IKU7{^oލE'sw&::mDm@s;^RRD٥k%wMpCJz\s9[+{4/'c`3T ր`$$NEJ,4p-,z&kuI$U%Zift>'sX/}nJ=ڍ4={ Rܑ"YoO}hYv8jG8cBy5@Z c1y}*NFU\DYHKp '.5AװoVF{G'0d qFAmb_v- wМ U9h0Jw#+C *^UAN ξtH=wq27aPK0iK< ) fhL4C`qtˆe^Z; S4leT׫߸ z61 $v ZW<;VzG.mFqs>I.OqKiҧ*b=jpK6p{PrPpiQ h?&# qFe|n%=jhy?Xb|Fk5Ki=wT@b]tpoϮ`ɷE'CP@,$4ŒL8TZ%O9En[,썏鉧*A75 9D_2ϛwֱ':B?~x^2nN{ǏJikӁ l%v}giU4]?DeGnW@LVDj{S+(twH2S*()nf[wݭX:)]Kj_QЎ_X}dzG\p ˿#UkpbG.A|-cTnqL[B%XAm;ojM ~%`N|: 2{d~Ѭ%nd-ԔМN,<4K,1(U2+GWeOy.cf&>-J6ԿV!VX\jV?,OMaeUԽʺAZ%z̛uQA3[Z؜S0h*\drQ$7\Ace~WAr Ɏ-N C^zbY/\Ŝib1|ƜK-@gE6*a,uG==bd2iLp;Pu dM!ΦdI8…t_G[÷p!zrrQap:C=:8AH [GZ$QI"Ēk&̼Rȶ~5BGHɗW.6iߗ!a4 (8xlŧ] mYШUdwU]wmk#+-,NF6="*Y c-F8mw}S$sLq|D&35 K39dЎjÖ8|t*׻+RH֕ vcР&/UpQgsrF<~bv S!rnT}oS:r1S zܕƽ_rJ17C:(AdT lżӠv{' Wr Ƀv[0+?UEx.rxbnQ:u"0DgK; mosN1s\lw|(.Ut_j6 9^H= uESVkb`b࠸Nh)AԚd #YtW^zUoIxIjygն y%jAfFo%2\f2ldis LSNu{z>Ƿp{9/6t. [eosD#ɤ&9.{ש!HhƧG2Y{O} s`o' (m${w0zt@*^t-dXk @,6"0TNHwtOyuVDwMQ!rTzSep<1:[/y~ [,ǝ3U: B~4qj6OV9j%X#Pb:ژh|yv{k;|/뜼H$+Ezvشe72)ב"2mͲvp aԙ[0$F~_OXc"Lw$>Xe[=.)LMʏ{lS e vOHڼSny*w; cL;o٬J#Q|moUT y]j eӵk^ȥ!?D1`!R q?=Kpր;h~)/|2Z5ꉳ|M 4D4ZS6*yә\ԀzdheqTm4~YO3ayz>o,;Ρ$/BvHkgtwg>آ>auiF|_T,/>Q }}MF^z#6Td>%H`ݡN>& b [60-Da=Gvw%/RtWep=0޿lSZy'ct1 Ơ"AƝM꽇? d@Van W r 8m=f4]䓊dsV&c*?;v8 -b H  .g<B/c'?@]#fE9=~so4CŜ\]7PAR-ovYRY^Gԉܦ<1«JTIG^VK=j%8 /!HhgX`=62yVl̐Hyl lDx#.D??`f9Vj,JtwlLs6q0c\YY6"L ZkBd:i[=:yGL~"wڷGkvDSZQ#3bMffӕX'rқk أyd.G *ԅ V /*%Z"=N˅M0qDοH-qr)*@3^&{h8r{kOWlLI%| 9]V~k%aꟇtyZ ,ۅW~1 X6Hhx}ptRiZqhX^қ A_GGkY84MO<ź$ pБ*|Z4N6f*[Bg|sK;0l:{"Bs.-㼴iFXIWk` .9#gP(ꚞÕK  (JsTcOl~!v zJ"\pd)')pV14>@pAPډ|ؠd/O=:FԺ!QR$Zh.P+?IS)6k@C{߅˂z~;ÚCx4lb @E+Kl阣O}/K96+Sv~(o7-"jEv2f\2vd.:7t~#tAqy!+ :aJ6g .mL ggBc5ylE6'눎tfͥ}HR#{]ν?*πc僒*{bwe|Q_ uZ-k t(sAtv+^kHOsO@uZx=No:{MW/ 0uwzιњ7|yǓ*V]~~@wJ9G;3-$5Nc&HmݏI蒵ˊ [Rˮ?)H/,F;9hCB6^،5OJ'PJ'YW2 |ih>'uɢ.0_G4l;Mv!R9Fa.a}[3Nr|2+Zǩn"9}ʖ(4qõѵM c+7C4/ c K 0WWW4պѹ)wb`ߏ9S8, 6hp(_VN>?VūBl&_C%=m9oRk=" ѫw>HȪIg<+w%gyF\ߝ5d%cH$;0N#<OW~)aT7ï+M-Oe7-+ ?`9#ob(94Rb)~`̐j49BӤԆÓq:TX|F`E+%rxű{`ޑ0ӊ VdVuGQssxvy 4C7{)[d88z29{WkwW; E0L3a``I||*8`7W֗"GL g`2efiVƅZšMt^) L|f AYm-uYwSGr[n2%-sM) , :m}ezs܃T)BQ7G(m.^!0tFI pDa1Yw5\M1C>fS%`Kpx: FCNMpDNۗlZw򝠱5;FtOj 鿤Rvk>Qsn?S{Eƒe17t1o[Bo/LR6Ww̳b_ WK" mHL9Qc00[^Pr2i6韞:"W }bO7 'ƛUկ=,G14g+j#ᙿU^FT'A;E:)r$kL4bI@Mx_ 5 /޺"[QS5o;hn_nӈG=c$[TR̵%뚵E+Q~;&%Lטg|ZH42;}CddgWYY۲œ0HJ&M⢪D;7IfU$dVEKi#kDuWTuȦzOFyb\e,մQEyR_,Lo?Ӷ/Y9}Yǡ<k`_Cq'NdCOGzB49dЏLAпHDS{ gʓu%P %qj' V$+-umIMeL7 * Ԓ.$!ʚۑ'<:%g/^& Ѧ{N0R |eG;?l؎R ?l<ty x҈Gt%-.uRZ "E#=3T=H68ecy֦x>W z<hK/ ƌA*01H1"<)1<P¢:#"c}b-ٵ / }v$_wmvn_bAtõ' 1 8l7^ p*h $ҋ ._Cq駀_F^CԄq뜚o>hn{cԈ?$a0P,%NnqC~L vl:Bl&*g({/0";/A$rҪ*AP Cq{E5k*@a[,0A|{XSGaP`UX"xJjݝM5xa'!`mv{'M%Ḧ́_yzn%9qe$t%mZk'`#>Lp6$"S4A zBD( C!Rb|Uuq vn-mt 1fd!"LaMb~Pm 4ݔ8J>!8nLfcލ(Asn4NNrrX0#R1_(`X@+2VDY^^!Zy$X[ 2mRa!5e$6]/dTJ!Gڼ.L{ʵa~͔Zj8!;Z#6`Km _b@_~~D⿳Bc] qbu[e.od?<ܘĀkOn?BzHr2̹=i-w4ij WrU|!J|gӝ¦vlsV>=jlj؂8Jumn?G-=\NZXqWCof0N ~Br i2am4 qXfpH V=Z9-ADuTyPs!/|?M^+-Y a k9`p[yJ|%|9d+ !XV.O,((LP;. ưi50b$L9s'Q 1  ׸K PyW\Țb@%2(Ny<ו8>}<]E; f8*_$vH`#Ʉ*޴}5 ;7w:uBM[63$WGKKKDXo~eVrvR=$e~ >=^񆛰C 씞uF\eD.}ߓ?$mJ}os]fqID#'Z]BOŽ0syq$\}>߬Ue9U,c*Miƣ54h'-F+J?2S6elhܮN|^6=_ ;6aOv2Pxc_lf d52ر0f`z?a< :ii{Nq'šShFaK'*Ӕ eN_{wh?5X1 ]bP4I:8$cWK/5|e=_.V^wsZV#ĺgN<|ᰒXuw8Lk4kX=kEspGq5:|R}phAyX! ri,o ņE p?T|q`5Amϲ;umJ yU*Y.nO3% d K6kUpCЂ`rIÆ+]R(+$ad hW`|G#"xC8cTّae:$P~R'[o=8)r5[7HGvr^}NͰpJlGaڿeM+̭ z#W@=h Ќ-Q\"eWӃP9=? Zޔ^p .(JH1+q╃y򌯆dILlPaPo!^/Bm/C9EfO(k:^Whꗞl|<>l+'nh*0Hy[#8P^0(zq\3CWP*)8ȅZemդ PnT׸ =g-5s wX>D\' VkY 2p/1Am<OmFaY6>25L-5;nGɍ#H G0kf#\HPDS q_LR1$[U/eǺ+Adi -FY7'w>;P|Ip%k:={KFaAّZ1<M*eW @7jsaȾ*} 3>/SlQxjrmԊQqY{4M5,x<2ET"hOMbOvcS )1twfɎ[*ȥkhiBIݥҝY>4=]["bKH%,W s;FޱyT' 6rs!|Y8m{~4&RhSj.db_ٖEIuI4b3Z|$}!:aX!P ={&yBDGޑ&M&pdsY#9 | V>F-VYD r%0 g|8ݟ}|3Pt<)_aj.p<4=\"uxڥQ|U:ݼw.u^ xu;!̗zw Psv᪡6h!}^sPw|; = Xv=k伲"$J'2ՕDP]6<!uk'R`K0}I$[W7P0)%A$Ka^I~Y}[ g%i!{b2`ϾWLs&e649 ݞNr33従70Ŋ d ?J.HRxP1t-M(3 Z'ٳkL@YWv&"U:D\*nװNCsOJ2 ~k+1hΫF_pBSP5D˦jٛp(sqG[r=!gVc8*IeGςRa1հ]'͗i dXTfN!>|wKb ƴ_hDh - @Xf^!%񺸘r>R#+dWSN+!p<}-tyANgԠ6گSR#`CH&J'tBԄq ܾ>ZxިH6j-0+<"@CUSMޒ"1Ui.nxBAZ?rG,..Q8ӥ U{ x:I6By>#pde3Nt0$ fꄸ$ib)}{VIOA~KOT"MʎrAM/O6?)sw/c#4 Oܘ4E`Dٔ ck/Y:YK 6[O#I1Xb|lc &8ɶkFkaqDD94SXjDZ@%(^̯/HRC8Əj)+x5o.l@ߍrgY-Z($"+ VG"k64g :YVkP|G:G瓥ۗRh=źc֛4ƺ[۠q4g~YZ6(YOAt6G,"C?gI$MZMgҖ=Vc`]~~PNNmhi10QRcgWaZO 4v\~ |r/{ly g2fhU$n.{37w"/OT07# aP+h. xE4}nИüXp2;bZaWGaӈ]>h mX+gt14ib?U ]BT8C^~Ԃݧ7da!tFIOI=v+]naKE#iA&f*S~˂]4[=ݘq-;^{8?U=6vj=ˢ,gR&VrYH}ai1[NwG[$!p͘XI<<NWmP`EG pĞ(Y^r"'4V0[hWGS_wN!DXzn5IO0>@FG!$rH W嚔Z1fcG7UcUEYSrgCV='{Ls7=RV3N|ǽ`^0*QCn/iBMHB'Ƀ$6%U 6 7Aww2St.|"Ɔ5&LmHc:gFpbh骪Uu>TsG[z7{fVڵS_!,b9MIiz" (mI"t3P%[ ϑ3ǻ: i7]ˢU_4R'qTN yB~d &XnC EtW#̻;XD/Zy Y*fpK$Zl\N=|<*Ņv&|T6;^}~!&, kqG43:Blj--k ; 9[W!Ar 5>OU9F r(D#2Ժ5Oh#h:{g!.pT0oqc%rGbçؖ,z\@zkLJ.atл﹕1nI /aG; ohM [O17>_ Qizo9iҀ=)ӝ\a9f)Ze:08ϲ6AIh`!t8 nTFb~DMԭj3{_s_qs#g|T&D]=B(a'PcY@v0!v\^LZ:5XGTbᙫ 0s@kaIYDYӝsX52BȋeeE5v1{~dMp-ߟJ%Xr_q03/ #TZ΋.=o捜C!nVf-})IXW 5?f7U]^Eڦ5qNwRnj .^ldHGw8ǣSϨ(yI]VB5Ň;2G@faT KIR'ET-^UOp[I9bY]uyQX-NR%uhgRWpc6jCڙwcbtV1E\5EMGJ^w`ZLgbٜ-eK;NCw<:R.eMn6Cw{zƲ1U4G`P8B nk帶Zh(zUZ A[:/flLu2KKցOKT?ԥs/L-RB.j@󣚿,(ʍGr킶e%-ri}4_,z:j##ƨ*O2M?FI/bXN.h&jcעzֹMHq0*yk;++:.y u%Ȗ=6|$YCZ82R@=H=Q6M +똔 $\sZ6E'iMaΗ $u93T"/Ɲ@Y d6B!w]-4Fcq!Ms8~nj]p2OP)2E z渘 .L!x3OfV" zqK**Xo5m]Lt?KlTU999Y7*k4Z>AUʒ|v{r>Ȭu al"&Ynt\N}ڗsnџfHC'|JD`1^*X,k^fnh?jO|r%4Q꫈Z<5OJ1_8%g=4x@O6uI}qc$@+HNi4ysjum7= kQcUY㡤8webhAlFqs RXY,2чOPK'<*diH""vұ'_$S*2hmdūWYWNШS[8L8Dhčnj4˳!ݏ3*@u]0y:Sn_1AȢ3og%~vea+n&bE~pu){gLUa`Vt9@IXq\{o4 X]Qo9].gpmcvTe5X']\Ĩ*Ia껬-UGƭ*W&ڰ:~ :\LG2V;B:Ty*R;V&@K'5z3sڷ5vY /z[PRcUCA若]8؜Ft@HUWL}CcyX!1uu.APVHo%S;Z9Β]Ҭlq@s"t. H(#ӭo;g8*VOB1pW mk?vU㝉h;=!sUhÖ㬰2)Js8-Z$sְ"E0T-4$g7nI^Vi p⢪tws/p`II߈>9K-aiGߥ x,_^aqG,27Hwuv,Yj[#o֔/tdFTd'+qpa|EOa%kѻn=.OPG:?C{Vvu!dT#?g37\gZdwn -!BOObJxg2Mx|'v3ksr{f$(!*0gz1 h},u7xx'ȣWS[SENd[L,3^[UMYyW80=#ކ!##D$!"9ƂKyK Zaee =(uZ,F@]~ TTL'>{RK5?*=3HD8(|u@YƬ3I sz',OH̼dڗ }Xٶ±ϛ5a@4-k-X̠Hrx3g*tB`$'ߛ]W?T! !<쒤Nu9VxN^P.65Xva5z_g:A]|B}F// o?uX?i{[ 4F>ZAo];5k.v_VgwQ'1e.{\ /NgL<0%lfE\3,ASbPS蚤PxHpтR}kvrY~a; 7:8,(ӴOҠ4`7KڧB ̀)܊ x'%7Xe Uqۆ$ &N._1EIn\?%/c=+ LO?VԺţ~.=yр7Xj@ gX?|Nb?,AgJe=[9D\+MbZBl3gjyYbOޞ#@Ryyȝ-ӌHnX4dLIADzH-Ogt(lm: Oɓ&B@< a[§mH>iYbU1RR[BaGN^)BxN<܁>u. kfws Djh|-ܢW~j,J!޷/A] R3 6Ө>~@*Ŗ?U$OUNBw ;  dimOPu {`20tizZ=}v^ ؉Ҝ(3Y4r1׿dآ1,EĤ 20ejP)9aax'2ڍǔ:Sýt &W~2r/So=ⷴ뙛i(j8M*q:׬FOę=EE2GN>k ՜3 b]e@1|Ҏ[b:Xгݎ "Ћql&/7Lʒ8Lnr ںs,cx su rX{nq舙dQ_xSU߼3|##tEY]]s[9kV7i^~hz,b¾M MMrXqc ٵ뉏ieͣIy15NsVhE?hXXPJm׫s螫GJ^A肠F|6(}RQ_GXF IPj\g4nѨw$[ 7ͷ^<:Q~ 6ECX'lE27ECPzjX ÊPm)&31aaiP ӛV %˶1x_|T3db*s]2]eMd8۩iIT6%w֨i:A5*y4 Ӹ y wpcwKu'vF_潄>B"`4+ű<X d_o 9SizL{p@:ȬМjw|oE>Sg|:h  YA tYLlʔng{3t:HG5B4%| et% B0ClIKFQ vRIGqnuJ)v .q졿evBRdTii[4i{۴fYbxmk $> ;Z(Y8 I{ʿ>O~F!&˛]bd_ 2qhY{Ќq林.?8T+;#x4D ѳo:Zv]U:K1/wC;bi|N=XZV5b+8jS UyM-8mRŢ]k=8M@Mo=A^x*d=nؕF['Tn |S; G R!*WNBB9zi3?GYtqz92*p.LH*fY]gcd~A[h#Uf{fD 0MԷv:+CjWl8`V3FINLy9J.#;kP*fjBg]W\5B=@3*J^m|! % 5-7ʸŬ#^33_o׀dj&̂G/ze,.1&Z;3 I<%y]4B}IL !Y&>:yT"(dߗ}.w`,KQGE&'A'iE ^tS_| PsC:q\5OIlZc-&PDY\CRƎ@֠vo`*̙o^nz@u[LBNYMoza4걦%i=æmca4^bNM_L oB2Q Ɛ@G R-5a !fs1cKrDdUᑑxt' D VQݾP#*( =B|dSX6)m-먬۵>eUYD2.1Skҋ}Vp~FQ+psH:enKwJ6__1%Jq7zR^|؍]0p}ݏMP"OxZ+ pgW`qm'}97ݰCDQ@gB޺ZP&52tmݘy8G 7jiiBըU[G *ϝ Z?2p!JZuoD[1&޽zLhk]% M.ԄΎ*$>Jw~ߟHw0GirF$0zڗG f=Me]rQ#  D;IMvXIRP,35kVE4^#mo){$~m4RyINZV$KJ )dٖšYtU#k&Sŷz*(>&}+9[{\DFtl<> Bܿ(D 0؀l p*;dѨA *eb}}RczJ_/JXQT}ʃ#fյ;]hDx̦t"`6w#g ϱ0g;0c1yIC=qv ҉\0Zɦճ9rt`;b }%yո)3T(Jt z#||-Ԕ5JT@x/:dyf%g2| :vQƷ \OS dhGrccb,}fakQ%UXMNXmy6bd }J`?f~0yjT|)vOZx#q.6G6Km_ 3CG趨fS+d ?tY7Vuy8Fnbb#pxz{ބ׮~=PbbRHÎ-) dvXUEaL 4S#f 0J(uE/ʫT.X2YYތGrfڱ GDzBA1Ʌ{!]#}c+;5 zej _u+c{vhD* :wKK 7I{5;oBh߳3\f;55Ph:d½r 83n$VF%ѩV4<l0j K5{r3|>0VX!_f+ y, ThƘ8T<[i@5k$*umyeg#נoK]Iݫ'w."'qisؑ&1YDQ>ȿQ4, D)ܬF+8o{ZH*몠 J6^IUv>uH*YSX鬵Q`@`[`_0PuLG4w7e( u+.o뎺CP(gVׄ#9<mt#Éє0hD-1ej)uؼïbcNC5NSn M hbZ!-*_帴2)͇ x+,ntqI]1 6LMux9_:b6t{$Y~YE ZTքnz%2vț&$iKZ+9#}z"Ԣ!3u]3%R"2h8"Ϡs%Q _9J aW3(O`6VJڄ{k,LS' S.E>Rl|A,]}FGx#-(z[=!pXZWȯ*ڗ$$yGco8F8Og9rϹ hx Mf>WcBxixFx;d8.˒UnkL<rO*b0Qs_. 7?7 ީ51婵|US$ @\rEc~xP{]kɈL!fW S$(oqكCy-@(kdLh9 2y`Q)Ik€*mK|nYy!d6e F8 &W”QC$&S>hesːbf?^p{xgCb9-VQg]q(26չɹ{ί +F9X͖01GXjB38Vzks[:2|nNuHR J]S(?lH`~ @`T-??^E^xr?&QDV 2a]Zc y8YW r_oX04O߲G~p^(JbuY VՔK(D8>_D7 01LD$dL{ý=^<5}5HrHB-H4۰~!/g[U趖ﴭ}OtVn@~72o_/ȓj!+",d5f$dIKnԔ!4hE9m~ fG܋qe!8PrVxLQ]s/]n'mm6zRn3`6Gu1"ot8pB&s(_.jBaZֽc"rF yA.oiN?rkrߕ>Hq-7S*ݴa7 OF6Fm`OX(J{bX7^1D1e<2_b kDn#冀c !|@jޘ7G{z.^XOّKЉn._#vKO<9&2WJm8y&r AE5P/HHѕ R(@e~g nևw.ΏMchW7JZ1׾rֈ2.hS61&UMlY$$'O\)F ?1\oЉI<6+M ƪ3c7`À;^"PTBf&$+l1&+pELyu~xYrlHU z1 ~WS ;Jv=0 }%z1T8J0bdA,(tF"P wEѢ)<ϰPo:ٸ8?veFE%"PtB~~I M̶q 0ًTkl ) ]Z؞3`9tn7KNs äZ"QrxJV MT]qoRO8l%VчOh!nZ(wr,M3'@K ŗۉ^Lۘ@SpWԎȗ/E?ܦWȿNXPJ-{~ꏓ0 )+UHozanB'6BqhpPm-[v0ǞM;'ID}r4YbuiYUj< #ALW@-.Mhp=lk jeZй_+ `o{nkLG\#_N2$qzp,xSp @ղX(v7y2Ҥ@ǀ1 :ugd]7 Y0y 5ۮ15{-8mx~ )]k(Ti==Y~N$$жZ܏e)bM=7`gTUE P 47#K푛=YFT4FDdGJElkUG>@W`R8oB 64MnRӂ@x⃞1/,ٻ7,?Z?j)@ H팁ZQzәQ#p_z`dkMaNΝPKgP5!+^_nIvVZݺHc?Yڍ&&eBND>H|!e0qs\1;:^+.LigZ3Q"&eb^䒸ӽv*.mՠƠ~zPLkU"?}˪`3<Ѡ-m"IU3v g8 [Ar❉QE]jt={iȌ4q(y[7Eһ-+I$,|W2ۚVCMTifWygmnKQI$4>Hvcq=č.SZyPD0 6]Y,P8t+цz{j 3 U`20.!=~|2)Kڨ>ݗNs3 ŨC1,܆m !Cb̈E/d<@3\Bd˙:- 1~qH }~) 6GUCZ.WyyHU+9D(;HձNAΪ,܋T^ʶGw6ri<Ľv,}N[z-x"<1@_7>~e`̟{0B GaNx@*yslv]2$tS`gu[#('1|9xxMI^5XoV $h> `/OFYsc9+"S$|/m_XP: ^\LRQ C]E "dl\ Ă)Zb#a ҟW<)d`Cb6XQ/q:Ҩ X;0i z(4#4w O+`Ml9R~<24#j}8L{3 oO @ *ŢaWo ܗ1ǒCŚPD5<[0w?W)]%3 J Sa?hJVCy2l q OcC42fG _ҨQG%m{ &~ęC0n^4~ɁFӡl\|9I@_cBwvZy47K=C~@N8^E LB-T1Rc"|I`B%Z_-\!!Fa} ZG7axJ/ӯB ArJ}}F"him9 f᦯ËZjѕyР0$N88W.~e ) TO hDěӸs^H[~*!UaZ[fyYs~DV| u Fkژ.cP0;kC[CHڝ5@ P^WZM*n *yք[5(L8sW{;=F@k;`DECPqJlu8ݎS"ۨmCPE1.Ά`)ٲ0+$X9o)nk]8 j*)I~%p۽HFƊV]nuТ"&=9ux;Qy~oj!ԨA3a%a΂xdENו2h< xCvY@:] L2D4əgy<]򴡝[}˒r$.JOs^75,p]9dS@#H7 k]R/K/e#(]N gWSy2izZs_=KHř_5Ivau\IoY4tU IȸFV^4ρ~~ 5Q/A k!l'eo ŭ2AaΆz1*}",Sro/`w@wR:[~֦j(\}E)=$tć͝nHphs:# Ӏfq0:;k]iW3(#TހZ@#j^"Hk4Q.q9*vKy*Z'6j]swZ)Tgzڣj Ip*\Ą0(`$gd6Iʍ>54uN{Na#||`W4\mkf4YW!1Br7gM$܋mXbݙW $FRw=Ia4ϔ_rH#3 r'wx^}8BbKf6OT% Nq|IchZRE* NYQgő6 Yl%GLvUWUs~],[Toh=|-1/J^mI%rȫB>9^^*&ε畜YSexPJ;Oo\@ Kהe3ɿqS5!]z<LU^d5,lc aC&#FC >h#]?>[^q[Hg,zF C} c/niLids?/p"VwZW_1Ю;Օ2'2uǍخ{5nGOb<է9KxP0PcràV8֞oؠg+/Xw1} F8%=7s*\>/eKp杲zMyo{4?W桳 -3y^d(I ݅c{+sȁŲ5JъJ:)\`$ Llu A_&͘MT cIWfX_i֌ѴfhmHzI9β{)Uw FJ|!J)ASU[utGX\t e>IMS@?Y[-[;(4G`V8*^/^0l,׌"]îvsR+\kE(4 J9)m 9IhkH'0yS|j/Lk%DKH%%&_Tܡpܣ渚(m0*3L8 \aN]9w79[S9}_&֠ͱŒ5Dv W {]WwL\A.UUХpLX'*2)%MEHQ!mXU jSrF(#MO?Atè@(ò/HI`g*eGb06l/b:V+/J0@9LNHP|FIcUl-FT 1^H])ң` U<3qwgU_d _.|}\K(,ERg7Ńy4hi#v4#@rv ۨhAU=\ћ*٤c'^H !:D0NWI-hFDhJd3—{Q6/yXqf v#KzC XZ}Jv^d„Ap``Y폏|4NJm$kY;ں0ʀjk ]%3o* O}xu= r6r=P2ԳJ>"(3Vp.l~yYi$퍗5Y|} K HF`BJLtfJL8h+zB ;>2i Vr<87 ] ̛u2ڵ$G DD0>e&G|`tz\Bt,O:_! +E#:sEhwp2s~P3@ N,c= +^z/^ (Pۆȟ!*M#{dr7Ȟ3Sw0Ѡ5 4 |wr` 'Y"`:luS5a:43(i`n~'6w_\biøxr!7|oUp=3]SWc*W'[aҴVh=wV87j&sJVBψK!cغ  ʪJ9`||9˂TYB?&6C+ڨ"Sq.S?Ik/{jǺ7QaE#bkԀάEmgNj$ deBqOQ `55atBI $x6W/K{\_?$:&GckhmX oHKOl8׉%::QÞn]oCU\zx>OZ"ZE kf IhU5 T=Vɚ</'ҬmeP82F;Xde9 A J!QYR>0oɌ\=li5^ľ1r!sSFPc}#(J\Җdasdn,Nfk:n&J( u> RLKSUUw6s֘䮣-89V+#aĞ(/йYm ȕ{8e,6@Ncˇ,#L~/]90KE,&~e fUP/DzY.y{)ƻ%iUlȱ#~+ i~yq8ֹo :X^X5z)7Av+1AHQ*8 ,00Ӆ$ *_=q}r>A心7溃r&LўwAP@ɢ|ZR{3"屟Zĸw0kH“~D4I/ :2;*niXN.p̫hQISid=A~K/YLu7HF9ݻԳwS!4XESͤC,6^:,)ecR)}0h@i ,!>fַ,JPw;2yt9"~|Zn;eEG'UL*|'x'nk~ E Ҁ iOti{lPgZEƭ &?g'Ī9#}V|CR>ʐ,;U_JcFncL卪{Nu g@^ 'D1cмPK+ {=` & 4Zy|AwI_\n^\^|'l+xatGʕx2 dYLnY%`>/)9y7ds\އh"k.2g|/ccTn{1@݇djwLH7[]~14 ޼aH\ :|:|wg./wQFZX"OsdZ;wnLI-YV碅7v=-Fx=Hi~ T=3uM[Ke͹bC;M{-_o*N#;)).ݨؼww<(1AJ,?R03t& hqu "zݲiQ A~iNR֜jyffJx-:%ڶM_9Tt9Jyi+um[HM?qȈC4%w|nL嚡'%lCtQ/Q$_C9$5̾{\bTLxU )ϼUY{ GPX_V񝼺X>Rc Fa(봨expzl=;mм( NR^aFTE%{ZW<̪L;D/[MFRʭow9Κ^AX;0 h@ b$aBoj~mhbeq;o7px߱M\EP*q^N5\(? =,Sn' `Dh󙔸,FIU^hJPMoGwQwa.c0z3R-W{SXqZdggY^E+bTN- sׄi*J`@4Upbe/+{XwpG^e0L+ u&'p*I2aMFhier1M^#g~ I$:IMCi\7Ӟ.ne eiJ D:V,|>NoBD&6*$ls8q۱wzT\נw: 杋 .lOn!T0km]7AG$xhP^pRRrcEhvܽ)亓GX#7,IT8Ė0/k!nA2~ d4oƐa:&-bZី^/V YYgvrӀ1]?k1B#{"BKF֘\ =[oǝ%Ӹ_3nL! @$4nqTԻd_BȚ01L-T*E.cz %s졤zU`It87ωCTۄג6R\[^Q?\Aq #'J_%N,{(V}V01:ȝgř+( 3iΠ]p#08IP M>CׄVevܤc9\S;Iv:? |#{pJ7 `.-껟溭v~ ,Fm1<Ʋ8ϸЌ/C7V4v/v^N#ꂓkXytyd=%DZ WxŁE;4[@ߜVM]D/ս| ')T{RJ],l vm^6{VX#/t8lY87r]3|gz4Ηms?nh$E6UZ,7$XIq3& '<7"tvvֶo-ay9j *98FdJ,E#erASJzjzڛF}_t׍&kti&ޡHˀs 2vN(G42Vjb6DtƎڂ2[0acS*W)-Kzc\ԈO'ZzXޠ&}҆]׃{B" =6;Iѣ-I?,풿Զ9=.VyOy.Cyjj܋I˹6'H4=\6tK2&Fc"qpzN0W rOqsN /{cCA͗37e[qjar,FGcSsmI!ɸhx5^\ Oj0 5W@ȭ*Y-̹0bq݊/%үs,> *$A}iֽߺzU>鱓KnF"QGlbWMqbZ-0wD)X*lWMN`!H1{+$>$ ͆cV{Lb&sTg>`TXCUxTڹŝ#9JVx=>.":nR]QcKvXwCxMX^ϳt6ٟLo $zwLe{r^]/–cFm%?@/P]O/(ג&5@g1 ,T$3oy]Q}Ъ >07glDYr|kB/V,0wrCsߐ5}*o]J~}@>+1YJn <+wyns Fձ 餋=B$i"HfA†jA}HUM/FYs#I-y@YFep i!?dݠ;a\@̏FV'/IV/v: @(x\]Gccۺ"jxo"l.9p%T+x>@;m< Lb'Re|i :d f#$P˰Z1|QJA}lϯFz&齯Uqx[)O  \DZ}|OC]_$ّ-Mص\ )Buեxe|ttO]<:?8=ơ@ge`O"NV5 {&&dS>>u7l7NQF-]_dn%{N[\7ߩ5dN%긓gmcWEIgitd[7 ND Mml$8fϮCe~4s30,$d@~{SY2Nt&ڽ;EXajؑC5uAb} Z "aRkIZk -rOety?wLuOKDjŘU!7ftB1FN}"Jѧ|Kʚ3eبDI}@I k%H*K_:xUSHyt[4?UiƌHݽ8DZ*2¦GJl!ս鼂}j2jg`scT)]%AXwF3k6H L ]@sufJ>Bpb\z?$FK[!Neo+OȝW@1/iQb3.10®6 VkTҁq-%u)x6@)CҢѲ4/[)6h px􉍽hBc=3ә 1)[|g<0t-a<CIq)sO\J!2iXGĴ>HљA0L ^=(?+Nt.zͧ5Ažt@ 5؎IZE;K[TȚ1}٘xpN )v<֏ukw怿VƷw&aݵ A##$*j#Ts{7wFs9u|`,< M^nz˿3whӌ(MSwW|g ֡k04g8v#C0x[L 8 8my=AT6$%:W bҀs0D ވj\":=\yQK*}`Cͣڭˡܤ_YK|| t,_㈘,{+XNZI +MTZ |!R1~NdDg&װYaejPZr7]V 'r8+zՑ~wX ^괭b?Z/ϻ!nBt'a+O:_ݤ^uq;8"_ EO0zb2zN~Xvppu=WEf㎏DZb#ٍ*¬1Y|ʙFK=cb<|!\} $=ˎ_(y|+!=^07g :g0T-€6$|P^ӿxӧls>ɹpZH)BW. )Ȧ۝?Q׍>kӗJkx/O}KWF $?4Ϻ o%P`.^񠷍~bL;e-(Hh 3 4v|4 Gv#|o7 Ƭlڏ*:QYBoJrW2YPuqN%6Qqe 1FAOɥO`_'uЦ THKo&~ygm+%o~7*Am4jԟ"cikPoyO&O#c>(Wu$kO_=;(5yّ(-} vl!M 7~ :mmU3d ,=LtEeF ,@_7kxr_ E@l O{{}WFIv*mm[&LimLXh9t15u9,M=Qu4S`) :FwSخcQ)|nAN1􃸌*qZF[ ;X,0#N8 !蓆.7y - aurjGBM{誫ؾ)o>i/2p[BDxǁnbƜv(\቏(%mE+ V+xk'ޯ1H~㉍1 xUAS6V&D0|̽H׃bRLgGk7PaP-iORNCHO&-Kh)t"IaMY@=TIUr"C6 <5`pd4+ eίPt0<`uw,\W~!]2<} , YV9B\1[ܙzu5(arqS!̞V3g݈paA{Sc7PgGh-1ч rsßs5/Bnd8z][DP )}7|ieWJP\HU)۞+{HRvob-Q ̧xAR`pz6E~$B*+*俦: .$AYrf{dBzI~z2 njv>`K18Qb 36I`7xd^HܭZ GqVw#eY6B]D\Y`揹сkӟ=ĕgT'g ˚zmadӳ?ƻ+to$ n 帷:\h ^n~4̚T%ơNұzX@1j`,D;W<,UpE ѭ,jn>ngʌubΊ\Y堚l=d0T7m"t;B{_oũ039QoONR7)U2v u[yD%!~Rj㮣 }o$Ccȹ-!NkM#0:H$ UcA"s㼰z:lM@,ֿriGԶX? *p H$Pŧ0 4:&Mw706e%YH,%_oNq tS8?95a!S*O}ls\Mxj\Z{œ L8LeĊn=8T:eؐuΨ*Lq)[yAU&ː :n΍0{\mW} }Ei0&t-\ĴDV8Vm qQͿ,$M1ףHiWݢy?sN]MAyQyzv o , -u^ٕǭǺ~ NXa|1ʱ9/:lZÖ' j!O}ӁA≅`"b^nc1 ]zgih4R*h:?.׿ˢ p`XJM8<16`IؗՌ{[vHH6\p k(`.>tZƛn-ԠYXqחߑd;&?U|Xv*Eti`O3#/n86`!}HU@I14_w0}g |}7Ч7Xѷ"\kEb w! !M}^ )T<'CwS ϼ<7Φ` [E*xɸij!FɒzPQTsob$[J6O#$3qօX?N'H'C{}LٸZ:ހ(G!% ?Ѐ?]v 2 6SjwB쇴_g5#Wzq}(:=hvیn=0/ ;ypB|^M4AF%橲ݳ?l= !~ANU8kVFݿZ<^e^NR')G>Oydæ@ԠhUeI H^A0i*,ãgК{TYHZtKw.i2ˏ*./ec5s1.5\A$nO"pDRS$!MfNǍP_xż:CzNwծX(馗s&@F囱$pO+ ),IKr+V(8PVp 'A Ng8QZok8r^ZsK-ds ~dQvURGӱF i϶EΛ[#4 qv Rط5d'vA{3[ks'o,K`FZ0-6ma\{Rpm%)HdpG"͎BkR K`: /$o|ӡYnc/n<`Jh:Uٵѩ&*I\XL|3ǿ}6SkE"ps5E}.r=/$g@V˖\}kY3!hզᜪ~Sx+_]Ҙʠ7CҫϩvTDEXe|nz;I7d4'dodzb2޴oZ``y|aetCYȬZa.O 7#޲vժ`D]Y[lUaf #tucaW 3 X3qvUig¤26JewVOC}!ۅcw R-gʲτ=65HU(AC.O.[Z5t=w\ | Jv iQ#)M[XDlbR$(޶G}ߜ%%_4W֐|;\aQZ'kq ғ{8Z-amuvF\,sWvG93Rۨ1e~oP=Ɔ1Y.eby7mRB)> U<QAZY1ˮᲉu-oqA=j2g\w_me-B18YAa'M%fdNV[IYjQ°t!K/T|T\ՠ8" 8IRMP5I \pr_p1 ӎ,,M'Ֆ]Mn.ʿE(]SqO;2PAPMP'93 nA8"dKgNE9 So_ԯ{m%f0Z|OlfCD7EH gđWQOy ̤.`J2:Y.48cZFeN3EEOWdlx uYH&d Q3?_ ;/c&;^ղ`R;@lkC)MOAEۅdldނO)@ pl'Y؛4^sYwC$ڸ?|FXT4 I0ɳٵ;|6 $E`"sYˇ&AUMmcy-2NE rPVDq(֪O|t]~r;nǨ2RT,rt|E"Pm7iWd/1I8v^i(;vP1kѬ;YֺXM  XhcQ\nN9u B9Hu69Zgtt94^fyZta7 Ry3m/%'vhxT`s {>%e&._g\?VXbȀH0,BQG dcc[3RKLPW\: Ut1 )iH Wm{߃"Nu/Ҍ$&\XtFUf; g=^b,&ވ>e\-7=UAPzϳ/.#5s:6nOzVMⱗ4);1ˍߧrO^lvHKZvlk - Dz ,ȸ| lΌ} ""5ڹ7GCDZtzU2ɾ8& l_xpSuڲ;V#4jܠUWb(]{qFK?WbfWE$W 3n^kM> UտskIH7ƚj9U$ M8 mRI$Qʊpljk)NY ]?H`,5C@5; q`_d7.kkJلMy"MR?ߟ_N#e_4 0x),/sR18 f GaJmٴkFT.b.Hz׿8a}g{OSΑν/<#!ϖGW5EW=1G9K,?&Ae "9dZ)lqQQ.i1K͜8XHDK\@8Ψbm wDMmnLRvCw19D\i? pԳY}{HswnoG&X~zS| [Ѣn@8ou ,w^)'<2[ u2({lm#IZJ+fY˿YɂH1p4<ӕWz֏TW\CqYel\3WTVD$;l=ŅUYXj 4`>K-5LMnCSvfݾ;UZU#g nNYr٢vc(B7m͐V(h]cC}I I! nb5?\Ά- ^5$8hȯNg/KfLf[1Ki 'S{Mh'aC[b*wEA\h4c]G / >b];Z'#AJ~H@pNf8K'fC̢ޡh̗ |=XI9i(?xFhp-c~a.NNk}I_f Wha\M@7 2=.2 _ԑG=j%f֞S#_g斎P8X|_*e$;ڨ6FxE"}Ns1|Q0e/dU%CFiOva>2ODPmm?qBGPã5.fscB{I|ʙMYf{PkTɊ+ث,CfgA_AdX 0]1|<;W\`2![uF7gI?4愘v25&0"M :SݑЀ0ӴdMiiYـQKF_wtl/a,(3ӉomllR(kJVDBCc|,+SI1 NڗJ8=+N\mGFnQe"5':91Yqԡ}/M?'®ֵoǕ10 1x?p'+/0=A}7DVR-QKHS4|q֔ё{ m#/QW:䑼.cZ~~ymCۢj ~:f ʹ#|APw'.-XpI{p$j:K]Q6 PؓhxWY~D 0,`yf/]ZO'5=L?ܴ~8lJoOMS]% L%ȵ?]ӡRCuv#aT3{Zie;?D줕fz}|1'Dv#ٰ4!ҶG8IwŪ60|)f}O't7yՠb}zjkx˄&w]i}#}d}hߠQ6'lsiɡe-b)?0j' `ӳe.Mt:qU[Cf'xⅲ7 m( w aArb΍O;;K}\:ߺڵRJiY0s[B')VP|{r;8ڪ<"IF"ltԢiO˖tڅhWظ60/pױ] y4 t}59nqPm5N3Qcr~!Sc\YRc;jr/sq$oMA %\ ͨ少%+]`Q YkW̥Ƹ,;%gٓpˬmp{#8O73+H#Cudcј77Y^30w&[U)Ix]RzZa?\O. XĐzk)BDfFMDhG NE:ߍڋY/Yb |B벟HD3+dUV[k~nDe7&}t˶msg?X)qkm<. 5rʱbQYh=f:<Gjd:7@IIg 9߮B<%PJHsȮnCS6f9An]*$G-Cr/; tdD%Bڤ7e[6彣$SP DCx 1 2@=PtʟRYQ"Һ+vk;){)H$DVK Z-%!܏YQLKPjv@huU9j<#y]޾3W~Dڞ?nҪ75~n.X!Kn%մDlcQ R рu^y%m/Fs* cG,eڠXQQVt>:yBh̅{Lӭk7>e\@G%-Dh/b̋Ǖu@dOKcX6{UEDTMi6%%v ZW/խ_˄!ap50_r˻`=:uQts⑿P;^iB%qG;0K(,_dI@oYC% 8Å?'y DcQˑ B_Rae*n,Jٲ?3Dmi}(бZ߮d4Rfԛ Ϫ&|30$Цe\wOW܂ tD[Vz1_u7(KacTV~OaI !ئ*Ol6U'rxo)N_핑$&OS=y ƥ}_sC"L#>ĉ|;級9Be?4iLJ @oE L"bG5U&̈́B-[ɵ еj_]@Ei7Ts |v,SW*N-bh:Jrdh[xR\W) wW3n6 s\O#bCF7ɦ) >0"kN:[W|2:Hڡ`p9b 5Cv8VّCYGZ5r۞[]Ϗ:H>=flg}&!m8 %3=XZJ/Meg-ȌCViXz NCH뉢m 䲈{KoTZW}mz\tpмIm~*CN-*G"5D2eJxk=BH6W1S걼l.<Ŋe Gc.QZ ekl/xHBm>~څ]Qy:z-{ npl}_a*^Nvv̔>98o;%>%U6! LvGS,Y5e@%M ѡVDu#"rS`4^4m+XR0RC F'G֦5]C2uC:m T%(a5s N/{4UIU."2jz8%S㟛9ߏ dR+υm<<'I+ۜ!\ :ވs41H>E峬w 2NO]qaH``Xp5v tDs92&Ap6+BdAQ+WѲ.GQʚF@\i}H"mH 4t*k}$1Lcf䡈ki;`߿`W? *IX%uʅ9-g<5N3UvC3^śn:*X?XͲ!=`$s^#yJqRi4#ŚZ5N=g$3^/$ x[sdCV\J:djl.~v@WKQ QQ޿'(4o!8`7۰JP!.lBqm݃frRUsH-ŖԚz*GN,c|r~l:$3)*G3[;Vm* GEA_{g1L5Z'*9sh?%΃K,_cfj͚O]}ƿJ5xg_Q]mY>[0B 1S3#BZRV93qyGR_c 8 8rLs.Œ#\+^eDGb1Ǽ* 5 h8ȋ )IrS-QXcMX~7G2՚}hDbyGd*rS@쐯#5D#R?(bI$OaYQdLf./iw{a6O\W>bxG TA;< чD,-Dgz G%YcpΟnsXZ*;*YAkgy!sd!'’(Yd" {Pmvfs?? }d*VC`!hZ^C'ȡܓQM!.zHmo*U; fwͼ5cLL(%cgvBg zy9 Iɠc<ٝwvZQ /!_n4C1R26h>Xn)(JP$_Wq!Y.m2 )iqMx] e J4Ә%U"Hȿ$;KZ}eNx pmHp Z}xJ\yMR< KPܤ/yA?L&=T4slːPTE` eяWыpR|Q72H}5"_Km.[I-FC3fSQfVYc%ÿsGQN3QqbJ!6`vJ$.˿e稤0Ĕ7t+]3b + 堖_t)͐#=;40c NHjibDopyy,{r'jPmm\ n;kQ2!r-tkW 93{:FL֥Q|Se' 3^-cjApt>5y@hc=;vȄ#Hq9X,n \`<5orwH5I|jY~03v{t Vz6y$^Z{pG 6Qa1K I`/|텍h MuIeZʼ{k*IhYf%cSS 9 Wƽ#FC3v Rh|H:@5miTe _w%u~:ox:"왖CW뻨 HE̡ oUV>B[\>FynL=")q| ^@:kfAΑiς{KXt7ތY/^O 9V'f%]_lbE#R׽ mxѸ$B#iRz! #tϓ#RVi +Z{0͸Y1j15?e}sPnL}\@ľK/Tk^!J鬅a}b9B'jOrjC`mr2 Q4S[`3RN4ayK 8VJ)/jch3x ]^yW4XҦY Ĝ48-Qy')i* ^Y塭_qSQzU.TxVp4^IYds7jOoBm^~{{k\G'-KNZTjhN9LVad[ણ;9`=cm1ӵioC֓~agnP B;pB H%Z6A{`׎l@Q6БMz /nA~]} ϋ|.;`bVO oX3dI~`v|&:du`5"v߇qzQvDI͜l :{0uDxFw],P ʞPCfG zP&Et\k_51r(IbC*T/A/NC2|+^NAGGeɤ Wz7u 7R ukQs 9^=r$Zbz\9%յ@" O<Hʀj1{f C.Kjˬ#7:[?ՙEgPn%v@Ey|dBJK-a 9|M7|D_{ U؄f)?fw*z0.-UVihi qUU̶hI2ڗrf'>\ ĪH+u*d&=r60!h-J1zbyf-㛼,]CKxPB#VMN Mohe圭ڵ{Bnup-H?+ǽ0dҩlȾL(IZ 5[XU|X7#$淟p47tvj~{ίW?lJONLRu5X;x7 nϫ%>Bi fd?ߛB>2k(8!Yuwg?]| Z Ev*?`YxE =M{V?&4cȔ_=c1rxH5#Ӑ0bK$V:~hp(qfs|'ϼ3hc|wkqo{Kt]7JngOx*0^o& x<鵖Gc9VϛѨte.בeTE/w aS{JZv";@z_|h' }5@Fvؕk Xi+u} l%D ]K1mR \ vS-A DJ* 儭hL}-s! '4b_RP^0 7|5z@g4',3;-CQ@l "ů]tJ_;H` $LK*e.D*/DX Vzu#iHY3venx/LQSMo[eץ1,\b~Ge(@bgL!˽noi=smm*mKws<4dN8s<x/"/E7i9ȿe%Cu%$*noi>^9͟xYzK uUu-+{w6OPdRkBvI55+(TAԮSΌmdYuY@<Q:7KJSVDZ.l$+B-ڪ!0\W<ݽ`U[A͖*'b[.²m! ǴraZy\k$E*FH-Ugi,SXva~IQoڼ"h3ӾR ^:1[Ȏ'lv(|]#fܝ$UE =}%ÊIfX,X>JfJh|qUTڱť !~n߱gX݁ Vf!}Եĥ>$[ur"Z~!*Ea_㫥겅fSy8vd(&}g)M›yPHAzsQQėfDp% % Ko R>I|z-/q QXj8UѲXaG!ݚy ^qmjiV@a~3S|'$ $Ӕh#`6vVHPEF :PAmm6N`_х{lɓRlj<3wOpj"qI77w{ Q^M8m,yfzaq)C}"g +nfe|wJ2=]T8cNbZ'x,R!x0ѮS{ <B+h+@zFeb]yHh9D2V!@fO\DCU>@DhkbfY'\ "Tg>3&a VЀ{/yXRy4_jDu>t{7]%iTVBRMM% 5AGV.IZ;k:tW0xkcA1-rLKɇЋ2KdUeQ3/Rm\(@agFG+Tw-"#*৸|DR]A>^_1hњYRBO|+ ]Ӂ7 lnl%=9̋i'!J# D j!4eoTFIur2`g34-yq/_RΒ"auw'Θ WpFK潁 &ǑȨ}%&Uێ;E6Za JŒQ @I[E|G3ɜ:iJOvIaBb5fcld ?jvRgn.E*DQMFCNuD OU3LSJu 6PI=G Cg|5=+ s|(=P [R2S[؂ejJ.柮.N2'0e^V&4Z2kpbO{|޶/z>v&P钐io| ]Va>e⶗g&X`ȊK2q-:sish:nu7l?(F-RO41?瀴  qh 4uGpC9*!ﭸΑ^toU_3lP8oom?'!oޝlWyYQox\jqr\˚t2\?m{LtDU$)zsl!)Gl#i_^bSrH왾`iTBLZZS :s ^DRCz/l9@ۺÌ$3OwNB9O2xėD1YTwf Is3&tjv3ȼ'( @qc9EkC4afZҕ)}ΡZu:hw'I3¨#о_S<ʔsJ9Hi3`&!,"'2/*3nS` ,;k҈?BE dW$!Ow ! G-jhr$2.)Sɱ6a]u>^ FRM֯!UNN5vq3^*3L_ -jfx\+bV-|W;,:,%%`®4k܁>zG 9Ra=j'9$~db.F:Rv>29w]|u/]*ڮ9L4Ymh]mezׁ5~Ե'gOVBQBh^&f{ʏ'X idxC{D=lJ9EU_N*kHk￑82VVWL:tE?ƼT7E ?'b ䷕p(LNo ×%:A2ѕ`]Cȣ_ M%8wRվ BŜbH28 d[P3u8;B{Qxo##H:Κ6TG]PpZeyԇˏb%4 NkQ/CC5wA]>-MK5ȋ˵X6QJ*&1k8!-m.4eVbi̷nC1w{yC.9Nf߭͵s5ʩ"Abmu#.l?5惽+b;Bk y?'aΙLaَLfaޞ"av'kGxdVp2 TL`vL?a88b BS K9-*g!k>(E4}s엶*j7<5.+̡w-ÊM*Cd~5`b<`Ⱥk;֭C t+;617ubbh%{5={M4W:iABND8r&l[ ( (S7w 6;^TMg |Su/OltU ݰ$)ֿӮTRaY$=˘6ckjKpO!!y} h"^A2^{tŊ!=~rS&ۗ.mϻA@6=P[hFΣUWII D<:v v8tbR0;i_ʽf*71;b6 1Rdα8brtd8 W6,D sGIFMkdU>afos"i.uKG43SSQC?B#Vj͑6HCKٗ,.iDIetx1̝S uNsv/Sҗe [=S5Q$Ipr٭e\K:CѶrā E%?8h$!zC{5=9 uQl{(i{u-4ìۜ7tq r[3aVv 5 !`.ƚ}Tr 7ј6+C^1mI!qiUs-Ǽ]կksrcbҩ>NW n^ ;PF^_E;k5c[O`gP꫊H R#!w.e`rQﳗ׿a)hZ6-b'x<:6:Zv§9xP#<8U/ioQ2lTrkBHr)y)޷ͼ;\dzN1\GR"~ԈQ2,567k +; Y(Cl/V=em{#`q<A Vd;& 8TV{'ijm{,yО.5$ J` ,Z=5l"鯆Vx*xz(Q2h'G)-=|ZsTXh$W{I^YKW(4ʔ76|mMcip戺D;DB6L"odK+y'$qP&)g:X$*gqzfkp2]J& Pa C5׌pz Ffjm~躑J7JzQ#bG-Qؖ$մw/z0No^~?Y&qί"OzYXevKR1`W@t#T)_c7@Et0#b]?o"9A_dg:^i+H톖rԝHE&XUdOE*1JIyr;Y7m5$W=MNvMP@֚%;0ߖQlFNz#ߝlܒ7^l rj/*I(Gw͠Z<6:p 3,i"~- :*y3o >h+XH2dDW&av Uz׃Re>\=( /sU^'γ/m!xU a.y:7749z_SR)j5j MAXJi}r-M5,*Ќo6dubT׈mR~P &R{cYꁾD67:c^-+íJDvo:Wg|"p,a% JM}t '-N|QB:B4Wf|`ᚁEK-fƾ톩_Jk]##'Ę9ZlJ즲x3:],.>$b>b#^. Nmjtʳ<']Ώ34 $}O.@0MM[IP˂z5xm}lnouZ1x*Xq~ eZ3c$fzO0J@i5#Rlg+1p\UrC_Wthݞӗ^ 7TnF۴: RmWÂ*VSIea/ZQ> z^p>Gz޿YE4~fRpvAw4p:+fPS> =ɺ,0BO1;Nll@eŌ"8y8 PXHEvRHZL'Jkǝڼ Cj/́IHB v{MyFHғ:W-C$m֝_ SW+HI9'Œ;#L7ОS:ނ 櫯Qo ff-+RV-xv\\ٜ+c I8{.+SW!ȂokYJ=|P)oi*ڷJqGije::H+kmr5Z1y,4hWu;-Vf(Ҥ;QYf ֿW/EƤ4fEZG&z n `I<ڻgg^c6ۣjxuE9rS lAӦcTl6Yfo<|Ot+XwВ (oz$"5 hvP* }0oyASr$O,i˿utɟ:0n_\Z< rP$ 'P/0hB s|uo7eU}7i᙭Gb=^d"[(4B۵aoY't+ Y4Npz Bǧ=Qmpk_PPtF7?#[C7Kv)e'=0 rk1̕;hk DoGUD/jˎ~ /PlLSSXLUy;sQK bϋ>W@qڹ Neбz1!CgRAO[U?uI7ZR`/i}G dIo%>IGU]S3QdPc V:c0g9"~)HA}؀gbUA7*y?&_>bpw LK?}ю% v ڋow->ޟ4LyXybAu #].ĹWlh0d@BJ՟3/c]Eȕ|&kzT"˃H6[a@ Տ0Q^mx;4 Sv&T`}pOjhˬuhGr7Pޕ^9'14:ؙ"YѨUFCfrԻfYnnyu!.8V[c R -kt"@՘eL?g[FdgX '<~*aWC wofDE$hĞc9wtQ`*6zfd7P(LK,\M'aO{e5b͇L(!ۋ'@Jm.`?1=fb\4ǴE-kq(<ƙx~դwH=$sheٶ-`*,Z]r:jdJÂ7Ý\K9ɯ0wϢ4w壸lY,k tT)):]{/)zp.f5.}{?9=n4<Z{$}v |dY\$^Muh8n /06|(X ׺"7?8^ SP t]@faJOq!$lm$KX 4V2sPL-x&bO߬zߺD]cU.B"J3z:u6P..=X)l=}/U1y Hµ>&"XfHnyhQ 6Z J`U(ғh / T77ƉMa׉9$Żtn:*dri{K(Dņ,/JεPcCɒ-j *HjXȚsdz]g :b4Zp1,2)Ys5DiR dU\]_˒Gk!` U~[aSX n-BGМ_T5jC}rrYv{bq$xqz&*̽kb(?ނb+"̑-a {@Kd"\9D <'ZDeXrI;#oڿKS*'yVS 7 5ndD?( :gȺF'(Wx{V@EܖWV0C\!VG0Z\iɮp2673YIfBnÑFK3Yn;m,biC :+b=6kF>HGL\BP4ټJ=b4Àİ ?5bg1tU!b!pMy8G,)A.;䷎_򣜠k;nCe.5$3UPT䦔BB@U7HH"*r#M!Q]_=zE|1(ej5'NǤ~u^a; 5ցcz}@ߨ ct*Y\LƏE5!בaZ՗7Նci17ceQ^iX;RUL:9o}[ՏqK[m=gB ȘMɝδ}!a,HS?o676'~"ݵΦ=xO$V)B-txEFʤB&.q+xFrXaeoD!TmS8s9k # 94\˦0ˍ}g8W ~`CH4;:CjGtcE^n ?,mD8%w!=|Vqa` A4cW=b_>7ZȻ\sY@cha_Rz3(i,;DiEV_);why'j kfs/{`ms)!oVW怂xA1".cIb~ѕ(Pnl~z-v#-Y;gcy{OcFYt?$Ba@ ?D =ɸ|' ܯ[U֊y`TzJT|XGE 9LYS҉E}\L-8}]"*k3_ x?4MgE'j6 s\dflC|(?xCw_TlljOT3S|Nh8(KJ}|xQY{0',(.0b "XаY&G51ʮJtxj^MPd 3M%WS#J(%.1_Kn !{U*$Y50jk2jJ¢ԂSW;KgYv=s#k>/R".~lN̢Gq?˾r>8;3XnkX6anGGqn(. pk : %F./p}2j_n@t~bm;0Fo  B>C&͒ZjqX #M=8D0v齨dj{qgrYw^:aFx$WcgR}׹+aH'vy_"^uXsp2킚$7<9V^~,OVEfAK2TAO>T_l:8X'zB>;JDsRf|6ܚC_OZrf܁Mcb݇:CF'mG;` ;tu~n4yFiiTſ,[5KM\b@RѰu$d?޸|/;[s2{c]s\%L;kǍ7d]>+P8O_'Pt-g" f/f©(fD7;`ΪgAc,e_?K9:vp< )6!4DGUیNj9W ̟+\c&ɹl'bε]ܧ."~=^Jνp Q]boϡfEcn>""?VV@6vBgۖ_?-XEEf(e!`4~(c- q`9l1P~N֫MLORZEw$ӿaݥ-{®xpsmza`q$Z12G.4(6d Ejв4t,3f1O?oa(@?YtlM,l6DI(5E)``t_OŻNwy).(J"Х.C(w C|zO F>}.M2E:2dMkej aC#m@G58 fn0tEHG}j 7߂Ш5 -5r(`g,%&,9[DWޯeWH5eWBGwio*0Oz] |R}ؗ6^XHl&-8rnw~h;C#K*p(ckV*MXظ:u@9|vk.xOֹ&m*WEaz=|*祡7 8ZEduʻ C75rif|EsVB#a6#IY'375 '!=+Ce0ݿK| k 6 $-w|LoL;׏^~_VXRZ*h4Ngas.qBVVC"Tccǯvoe@N7>iCm}k`sK( `9qJNAf8G8N/~ZdTqbtI)X zIR{I؆H˯UyJNĪ2`Xh &A+-=SYH6KP- /&]x}GX.b8–!J%2= DP%4IX.m{b`Fmp;Lt˻*Đ4Ye=)L/A^$S4e6cv>iFHo7K3|mqY1.ͧ(.׼pP MOZ"ɤLe`w|NY;5#n_K+Gy4gDGS֓6 DJ^0LRG}mAUš:͢iݩa#O u ~(+Ȩje>(jNdyX_M]wVT''\i &K'bRXf2g%9pstIi+M#a, (MZ~AUӞRCc#ʙngo}QmpYh8,!"| ,lRG}>x=Q^qXһm|;-ݭ$}ѳNꇳLe/^]Bm(1s*IrĦc}+tN/Ե}P!/^C3n^P̸z&1Hh:ܪ:/A%'I,z"88dKN|ec>f "˃z(n(~;PQ/HoW.,{ ]8[p2e4X=A5T5,ˌTpWX9)mGC,H)MusojN?a Eٞ>EsH'FR w$ 6y]Q~4n6 F~ )#5wiq,M\6J 7f?3F=+)\El$h,ei%EGwkN_Yϥ$K~s6:]"`GE j RnR@{qAqߡJ4)ڃ߯XmG]ꀨuwu DâpFɐ O5@n=`,Ź_Blx9fDwr=>$`AC$0$ =LD_V!FSFg\]x7P4*٩rKQwL%s=3gE6RpI/Ķd)r=6i[{0! E_W՝vۘؽ2)Ud :0pr bI?RzqlZ?.8+ Az׉c)B`' {$lrh EAOl ֨h7LF ,:ALNngȔ]fufW9̯ha4L*et*:6gYGV~N҆BB>?sֻ@PXsmf'X)aC5p& 6BA(HK)^]DБGx(m]ƷUoРQè13Yr/6חScU%3φ:oA+ѦSזbfc_A j>ӆ5Ak^]Gd/C/\AK@q|,Kr}N@.'٪>6*yV5.t%DNJEW߇>sܨ uNȚRHt~28O%讀«i'z9pt=|,,.M%kL9LS?i&t@\`sD_Ɇj={:.+AG_VNʘeUc/5Ln/Mə{~ Kpuz ېlu0!J:0E۟8|Z(OA.~# Ȕ@l`F>38"OR)u_"0ԧtpS< c:!ǠvƮ悥Z~e Sa:G'Nn }M&؟[9",!Ms0:{LBPlGN=?kanr=+vҙ$Z`@(>-*#n~G򿀑J,, J)~߅83<>Cpi퓻T;BhүqyVNң@%:oNޏ*Y| p=U_AU&@@NXID i/)=L nW"<~P%su>nWfxlCvK2ͱKp}WCn|6L[NҰqms"R]'Zqdp/M#''N>{䤒K6 Fhbi>׬IAf K B0fm=@\@*A ǭֽKL՜m)jp}ՙ\?|$_ 8Բhz> m׿@Ee2yeN ,w`]َ:0OIh K@rwːfr}l,^D~Ppq5:QSZ?rʼnhc %Ӱ:rf$LH %cd#H 7?#xE-!t%NWϮ}@5W rO2hs-}WI-e9;DYG⛣]Fp')x}`HvŃ>ߖʠd.εЭe o`h$|jjg O(`&9c}BM;(LbzK0\9_o=S̎Ñ0wQa1:G ḱV&E6ߟo\)07B!_2,tjf/^e@ ZP)oH`#JD/?_u^T[]<bHSD,W l8ŝB*ipPb|ꄝ krK-*/,AK=`;,$Ûd:&\9+T!uAu%$X >4S /v+|Ez * _ !auU,{…FL 'ɝJ c"Z{\׀ixS]5H3t]IO":wir_~C˪coxYd^l1E:Dt\ʘq*ؗ#;jAu(B W~.O3aD}Sǝ+쯊%ͤߜji? ez Dulh5op7oGҡƐPnqyp1ҁܹ'wzB$ۃ )u@m {8,$jWy+節KP$ 1Th)\'K uiWܖ\eDDĝ`60c^cYp__MglL3 $ahc')6zԧק0Ɇܨs]ԧb H$ŴBL.zsV@Hyƾ=FޱLmw7' Xqc朚m% .),Ql!Jjj{hN"a| 3&XrR52t EiIfl Gh5NIF_w!0mUz` &<,~:њ[9*km Lc' )4w;yb`A9ȌP 9J 31 \T׵;S nC[L `iFؒ(PRZI|i`L ^m] saKh|ۭP[V uh?F.FS&'K~heL&̟I r<H.nz l^v-Cf ;RtM"~NZ™5Y03:rpR^qQ޾.$As'#{~H^#u"N7acߤ4]NtH_#C68?9< M<|Q|BJb*+pmژF݋r3$FK?}(=[06e2"*Q<=$h ~EmyvF\bL^.iV%B*qLTgQS~;~3b&1 o7}rE˵^%No_?ɡk6Us-L1\_sfξZ.W+6-j!VLz \z<^넃\>' u>+F9 LKmV |qe=m2&8@Y\ ;KC-+rA v3xHR5h"VS} j?ɊvhpfoTB.<ϡX/˕HJv:L*lm1f+#KRTV8_\TD\:#;gy>qDrh W{Zjm7k9鶇N.&ݯ3o!MF y2U !+?,QxkYHZk/y(-IGyvR~fr{&(q?ٓ83LVb=gfn|$9fXepe9z6_6N!Dq ,*3"%\^uGb??_ooO:42ɴNiQPßQ]l90 Wn%ĊBٻT-RsҬ{Z k=Is{Ow?1n* #ޭT9( , 7cdbP3T͠sn)&XApt&|{: „ { Us4Y1 JkM[%&/8 yCo6}턞['ĸ1I T-W鄪[{3 q{[}A('Tr-oRɕ.tdAPD^s`Hn{ҷK߂R8f_xac\NlREaYϯGU29UwxTVH]zH J09!o4Pɨ|ֽmBK$"2Ӫ׬n2y={߫ O2R6mprrK'B0i)a)[kWdsEB hR4~ q򅜓&$!?Ź)#z8s>\!_2( 6>Q:^1gFɌ)~oTdyt2:E%x@@y_檪LtfrBI?"Yx Sj=Y@d C4#9*w$KZ)+y' 2"\DzCr o}ksDŽ8ߍ\)*gXN =CfI%}kxM:ouj niYU9vrm}iHE6Jԣhm!{mu-ݬp(Yሲfe^+52JRouP*ٔj}B EJQE2o7X-=uY( hǴ޹y<1 d*7E\P*KAw7b`59q/_xzu/XG0͜V>qSw 7}4b]Yl=BSݸ5ⴂX;\6LN>=Ɲ#c;W$BcӴÃ{ϴʩki`J7[%3,r[ݡ4aB'&Cr#%&OlCCo<w:uP(,PÍ@L[Y*Ȩ^S 8̱NM8u|?PK-ZL5AL0y3 svțjWd][~ &k ׽U{SzvүL1?6HB#Ï1cCg 70n5c dvɆhS,cu[<c;gQipJ Wݎb`<;Yx S=~^8-0:\Evt貐roTZ 'pcRG=nnKNE"rX(+!JtL*~.9߃a??7~z&ȶC)|E)- { #%uGgnt[Kx>_^wgfz>Q-(Ь$BwM`?4qZ&]ЛH0K{bѢМ h 1`*hM;@ hzv3{ _&=A8Hz Ҙ;XkrI?~YV.N)2:4eOfHupF \6@e+;)D~ȡ}jP|㋘6RgG$u :Z7ZĄiq"G/$hm &D sy;ά  mJ'8{88Y)0ߡ"LiK'?wަJ=wm,XhMҭL!RFRޝJ}/ݓFkP_U4xICyCC1wD]*GK_YdnwILR a@b~ǻ@xK̨,4t,0"#ewWqjw_Sz.IVz4})]VƯYhX=6h q(YHlJ̟G-tg Ê2$Z-`‰<C ?; &P_T3C?!0==PH}+SNIdu{̄=< ܼ..iZ%'趈3BM3E7C};fjݫoq \3?yU/F`vB@j fI|2YH#yTm]*`.!V!(4ġ-DkxR VGRTz@پZ8g;X2!?Zcǡ2M_f5B d&e}ea|wy`tZb !&2?j'2+<4Й¢A ʢi*?GuGCތyW ߿ Z}#cx/}S B󪊸qJG;}RM2-ɴ[1&XJ=EZW5},y0wMζ4{|M"2RXH3`%곿pA lYR4MkЄ^2Sm2+kdxSpd"_Ll)f<%G7}!nN[<|ULɮR3 |K40SjvYxWdgR 0b=gSa@Zi "*Wm a+H[ P,S$G#&fvӦ,r@ iˣ'|'ih8U@']@ɉpI2rZ^H8\};؞cYPv`Î9}f̧|>|D;h 5߿:˭B&6HAM\q(>t-X]׫"!*n*%LBRMy*HjmBWhsQ1\+FLcIM"Մ=IT#PT) yLY%C W̱jT[YǦax\w"=~u%PRiwf+Yn{lQ-cc4 .ٖDJ/r-HMCxDk3P9!_JYXpBj+Ǔ0B0 XA(HY OG"HJfNzT(";ChbٻhfYG_Y@|g#=P1qPKak1wmw#1mB$gL5Hw_hBMGlmIJrv'-A:Τh%ͽаAnVǷeJ!2żߌ_T@ȷDӌIz!_dm $egSѷbAꊦ$`H-u(sD>FV0,& lEYC)xO*fJy'Gck9n#m3a;2]4 4& _a=UtL٧\A@cT<'&3B4 앧߲cFO| 6iX}J|kf/k]-_[[E]Q;Vh쯗7nZ1M,k)$wl qΰ5>|^G&K -Mg牆bY. $?ݫgrf5CeA[C0i z;MdZyN]=踿 Pocn~ws%RhI[?oB+\&s9jO}*:C2ZltTqޱzV4f{[>}2w,GMh)xCũ4U/G~dRmIJx B8*e UaVw$@`V)߹@_0ҧ>CJad4rGyͬUt s3a&l`)ĉvC9{*R&А%-ȟaV Kjy=9a|5t.2i# b^-Tˡ2+qɩ;SǔZXm.Wrب$,f9*7IVRq!n4D6 =L9$A--A㣍-խO\bl.[lOEr)׮lӐ7}JeEs>Tj~Ft*G;{fM,i:R-4a yx% c$r`d1tW!׆,ݿ׋Cͼi3$p)ќ >ᝮr&D˙mA.1g.&gv^Y+O_/ر,cnbXeM5߉ct> Ҋո,y#[i FAuw(/Q!)KyŰt2-"YG([Ĝ{CFYbb;Xoq|x5]$Ѱd&2&FʰLYRWl`&$`Jxjv;NE_!]s,ܶ`F_FCGb%wSHr)Q=2xZP qm)wcoOJkw #238W@&?Cfz u&Ʌe{Smh.ޛ_(7B96@BۆXA ( &+akQGI&KdGr/wl*5|1|0up;(>E 97S8)eQmےH xq(9YҷFt;Em >h^,?5*%<(r?6tFA`4Jd!9g"x5V X.prpij3*m6O?NhcNRR$[wք{GK?!¼clC mU7z뽤4paa*noT`uղEfII!3:ɼܫlSk'_B*0rKiD dp>(V9?+\ ocwY67MLW_2d%7/7z^:KjҘ7 <>i2Tt99Z(ʊʏE1K9z8=j|(A-[roUB;WūYߌ>7& h"ml2/-&5C[FQL][{6o%nP#JVyH(/aL炪H ht* |q%N4u.-LA)~Z8I!|֠"Mǀh?nW/[rߎve!QᐧZeY{^Jnux[AaF>I֟+t5CпG)jC|b2(?r*eL]aR >njxTir2Z0|] :2ELH*|/xNA]D@{ yF'b**eG|w6(t=F%g/*oS_( $g<"B>St:Z$OEA,6l(t$D)X|r~U"wcea꜂ BC|OjH,x };M؋!seI莭į͹ӟp3V:KizP=υU&F۩yrQXE$w84kl .# a?<+mK&J*ijU_z7=h}mfCNX<|_~X^eV4LRLCxw$lj ,6a2޴jNO¡P~Dqn9|H$$w;D>:&AyeǧY3%=M}H«w+<+ $JeܔcSMmA Q5A)OscIۖ?o ~qX QUR4:^Z %AU4 C 'l ~'QkL! W̛Sr)D3chNj:J>##eᘐ4T!'@#U9)exZH%<Ai=6gf~x{ciF(&quA>2&=lAkpU n0IRZ~HLgۖcq:S4W_l9 TUYLK pE!S*.NJȵ!ag{L|Ama`?B$hY$ 2$|] Q׹ECoS1h/h"g;lJF2]sGݣ(o>Ws`yh3WEc"l'ss `vN]ZH4KasMz¢w#D6w*KyifADd7!á'q*ҭ -@60w;^š a6X9ZCH>o1K!e8 :euyhU|vseuR-`N֏x[{Vs=ƾ?_ +R¨_XudArao GUx Q@̃ g?Dh/53gJ}9+tm*Vjttc?)* J+O -p:h| C,Wtޛ+ kNƖYi N>pɜh$WxI$̢}%jf7E^?ˡڲ4|Wcu kSG_nQ7nJصl~V OJT%*p>_x)efj }ɯEph?X=hѫ鳚t)Kkp,yzB`H$co],11䲫nA;nO&8Ͻ[Ǘ[fVQc,]~3d4F r<Ӆ[P"}@sX|S8EF(VWߘcژX>C6壽jXgp#?{+܌Tj(v< Z Q-o6e.CRiu7:;xg ֬~I!ZXz">ְ}`86+lɕŋ] $*h -K*^aQU!}>!Mw]LG JnJKA%aLGin_΍Ȉ6̽N9_RvafJ`{F0rKv iر5Ϻj$8;xzd-rmJD'3JF@i@Ja.ef(I?~9;gʳw嬧S-7sָR;o#{`7<Ό[$OkI13%nwJx'3A3"g){Dp omK!缴%̴RGibR5uBP_H9HXQrO[LNgbGnĮ=S3&f8ǀ6#ӾY4,mg[i=K58ٸځG$ o\17fS(aZI(tnjph?';)tf +ϴbצў<eڄM>̕> T; ~[B@x_"#Cw 4c6AӤ`MXRAЀV(" ;=dp82^k>J1U jܒ=8YT!BQb8[tN}|qU#eOѤSL;q "/26oalmξrL,8(P }ӱ !lt˂n謆z~0Cn~?"~v%ubCkLF$G?AN'<h )+@.k 3L6F+ru.}>fB+vxWiJ zITbV$A?Yłu ~I<5e^H& U#v/- lHry"3d/zAf*Lqpc% @p;ˍ52eq.Qɶf PFsŹ 0A Rk1!\aMc/"8UGLGsÿ?߻+;8:%_۱%)A+9@xPrM֮lLH `RF1٤JÚt~fQWb;v4"@t_1U$@ʼn=sjw*/J%jeiZ7!'#h@x/#wM̏Jz]y_'9ja=1-¾ Eb8ΕbPe*bCE2N~RxO-e?cTB:9ׇИf NHKVh~hIA ;l3{ wJĈgW^0h=M{ၶ!ުdM peo*sf8/x>M}mz뵐%AQiIKbEJ= ^;Q;|PECl!O9W{߻P aJ:_&.XM<)C"hnHOTֈ5{Qoi6 s#Dv)cB"5Ya wO,;VK{DǏܧHׇAeSBS3*`wHDfh lv`5⁰ݙPlZBtqThy M:U@ECI=' tWH}s"^ZѣD-a\$pnМ4hӋAp[$/ٞJ`!YsgS// F&hWe|Z҆ʘmhZUj%0_1˜m c3xDZ}n5bCv Kﱧbo2{LNjϺF2@T!@`IJ)WawԤaxmIxYzanrAH$i ;*{W}_op澶AA:./m.=ZDQY#l2q>Frşri`[ŝ:*T ݠS &n骟 '"=E'[6>F^DK|\ ! `9-ci}VHLcoF.ĽɍkhU<qDR R.`?Λ6nnBlíE<}*{Y .,C|t#!Jc2M1}gn-xիqca|RV >Q͙4oi[wK)9nguB ClgosېQtɺCr@K`MĂS.iw *]kp_bĂa@=$HNz7qfv:*_3U#FB8t&,6XBa}˙i,EIjEyHҰgybBwUb_c,Q rlxg~*^a' )V^c!Em6q+n8 YFS/t#nGL;NpCMMJ~pX\=Q .I41 _肜Gfb,ĵS3jhK9-/ŠN!o=6:}%#r׀Eb#FhڌQ6a("V?.նLSV[3O>xNWU.1K5[jE $ _|Bga0;VmEWcR'!ǣVk H_> asX ẍ́LFG9+{[ \fh<D*k.:z/hiՉ-`nR"}H[\VʌSgp !tXtPr[~r Kܺ8JrhsLp,dR_DHOmIӋꃿxt* ,a(;r L_7oW '~Yt]냭0KejF?+",8[Kȸ{Am8LD,WW@["'%z9̟Mb0H㡔WGh^,Ivp_fR᱌H\pBip҈+]޳5X8",71ɍ=/M;s՜nİ z= $DAeL|yA\u'?[ΑW@Z u`*oe4nFރkGc<(T@8^3q;VF6 P[ܥz#ߚ;kcF,(,IPM}r`U]K0ձdnw$n=2rVh}LKbCeSl5m/vdݼ*9ė;bX y㶱Q7SV67[ʨMƼA|b8}H^_;PXA'%BP/W< ^ߠq5zIs)qUC| RN^zNͺ#Ϫ< ñ.V&twL[xr5?Dx1ޱY~3aSCet| >Y j+{NmT`GL=,E~۰sDXT$8ZNX wM*wVKT(;#N0>~'66#c̫΀PDHΔ 8|/nl3Wn|:T+%ل6w_ϛE݀J2!I n {y/}@-VF=[|!1`n@ y֩C`2K3S׳b譨ށ-ׇV`*TF#^23}VWF ٽD<=مh $ h\{ L*E( ,2*?5:EB}W`~Z% ƲZnjiMX v`dω]i(ʤEcWƅU`JD\נZMWM+ᢓEgbj9YZE+Ѫ`LĭE`橶W&!,a;Gd:LKu@iy/;!uOF %;)0zs[R*ry~A*0^v`2wvyiE#ó;1qhIۼԺ54BR_ZObchwZUͩE%bU0?d~ܜoC $2#xv#DͱqT* B*L5Xv25ynAO!UU09 wociȠJ!&bqeA=_WLħ㕎)zd٢q]<'=](l[]?EIDؔM%Sqb(mϧo s؉8⨙4X"udp6r$:ݟX_[P,hzKG0=Qav/Mᵉc# IZ Ƙ:6Jz:iiFy;<53%xꔭYCU gzd EXHi*B_^!hGCвe[2znt,^8*[/׋fє/4@iж#iU@@pE)Iػ<;BѣJ K3I [Ѭy{]<- wrnFȢD 1V*tӇ^OtSL˚TG.V\MxV6|3o ܊fȪy?@s{#4EO9 wz҆ 88ȌvǪ(Dl-=QWk|H;2Yp%?Z,(P}xik<5@V_ALguze} ׀c2yǨUc\OhCb͌ !̒ȻpT85)ed18UѕE9;|_PSu>YӐZ7fN}WI}@sD,T,`c3/LITg)9 mO"6*ո q=d⅌Q_}Ak1$P`?QX~X^`J K)ԦYCK80d&i7{̊]Y!LF7ݐ*\LM="[ڠo9jX-'gVMibx唗y=)@7iYH =-,2H ˫r-KΘE+B)I=؛TIh]Kz,*M^?GZ`ٜ RSCPSx 0Iծ$~KOB=ɅjN R^ߕELQ?'P]CQVҹB.>ܯ+o@VƾY`%7#v"4%jt'_7}dJQޑ'z5r(=zT^?Eg|E@6}#b6dn['qQFХb-;s3&QQRI4亙 ^ 1I( YfLRء+ *LnnG ^ LO 'V窽t#h HöUX+54!6l>²=R<(1OȦKp$tkFJC7yFzVo)&*uMoh'ro~ZD́5Yzײ(s6Ul>U*zX1$wLմ-kem?}.XyWXdr D<[E-x5_hdw].|oUe@'`~AQfz @k)Z$Oyz#; j}J><hC8p.F %-dHcɄ77K^봰nҧ/Vz6ADX2s:0NԡѴ*ӲSL#R7ptTYCCj4`Mη4[R j-Sm&-5GWΠ84eF0@&rx 32UtĹӲyU{ U &=١woslxt]P%bYsEz t~ y dcdυк'2lq",gǼ@ۗTa Ou궂`<^%p ^O&?5O^:3R_լ/(|v?-]~j,8jΠ#8uu tLnۆq2n1!V3,aUm=YEbrl dр0Y /5h;\}yɗ1Q ~n?e|?ޠbtZ ǛfcbuR :^] pZwYx|!«1QImķAJxƒ踕V_ dH! 8`pN9% ՅGn"1Fn9foGl4 NMjgXO}i(=*m!j4<~EߥҨ8GgM ҕ7c:NK*cY5_R@f+tyocQtBoTvw֋zzlJ8r>ڎ*SMh3 (~qlyI<"2^2YhABWQ]׌Ж SxY7Et#xez kA0!Oޏ 9ZMϝ=78%TV} *CC2HWK[0q(Li, N> [d?W2+ߦ!fxbX_qÓ2g %f@ٿ)*+t [MЋ̒ӘDN1DJ 7p"Ue̖>rt}rp4]JY  G8Gu2%#-znQ&/>"h{pe0)s|}ت)~ͺM?*Zw2}_󣰡!2P4Kχ~LK+R:E'Vz?v4T9j c^MyXZrչV#l ƹJ9O+#,2& o`Ziz."Pojd:Vd/䀾Byw?SR6硰Ux9i2WM2IjsF sTŹڅ6ZqVPZ fu#ds)3b֍oeo[su#Sߟ~Ú@Πgcady 1,d0_hKMь8'7'crv~(* 8 -FO8S qqI*!=(;1N1o>W$ PrYWl.)m0qfݦUD6&R '}x .jg61Dp2QQLL9<nXlSW~}sV U^TpVSF o6;ay{ utdAme깸3>*{ κx  kk!jY8q0wJt]/kFT_J~ڐM-xj:xq%e|ma|"w$iˆHBMFQpѠDc}^T/ 4krdAWVmK*]ndt)KRt͸a|ʦ@Ӵ$hPv/?l<cPѾ+ۆH3%QٴҡX*Ǒ.0z}G5ڎovuAYh*x _`3]4=6Y)Ԅ"2(tEE |߾.E@+3!Dswϯ7[.Edo Jyʴej };{mbv<Ī~$,>}&fz'6Ȥ剱"rptNa#:j(hч?#[lÓXq|'{ Ž#z'qgĶ!"cc%lVk'G[#xjaHmYzU^_<Zs8NYSq!*νSY'KL] T@ !ڢlSywnnp+Ȕ5VGJz!uHE`g F{^#Rx#|Na>ztSg@ȡ rӐUPa)'-- TO:I5ҏr"exɓKוC4 ,~!WdD|wDˑ=e'+b k?%_C|1''=7I}XM]~)A7А9j__K>~eSdjӊ8?A ji^?d!.OmvJu8ρm. Q^uFϴUE"_׊=eZ+] |$Wm7z=PP bT> M&Ö$*X 黍-\.<݌H\d(>OyAP%g..h]S-~_kRS TfFM7w xkP.O /ɷN"iAo|tɕ2ԡ{+795nk)Q('3DžWF%DQ)DP t47N?3!jG-| `~9i` *ǫt1$j?V*\o9Ӹû[Uқp3D87/hNןDp !@U̥n\uH{1 <'b$ _qAڟwӔ.xW5])#\ZRH ]烙e#g:hH\; AW'5L t$q<B,ǎ.9OzurR.ooMpɇ9Tż@nVgȯ< 1KӁ44_cH&v:fQjLb9jt{zP?LQ8iVF5`|Ox$icGv(iGJ{ ;P\ёO%#F_ôpQFpr ,pXZmDײ\mI3@.X&C&h%"Ќ6b[X] Y!$[V{$iϡN +:WB{ -~/ɍW`j|(!`˟D]lEFzK선-)}&_wo 00PmE7e\[PKc>'aSÄ##l .eCZ3Ҽһa((#Ѥl.g釘lU2F*Ko[ " ~e|/*c%F(~vm5͚}1Dص界Ox(ӱ)|,c݀;+]f%I1{GjL_E5@!ŘVٖlq .tVv!L`-cݟz[Au4[niStW;'RZǺ*ƎR(c442sGF$΅S}- ,I-!!SQ-'$2J)8>o)?5 deD%2ov,޿EDF|桉$t/=Y^ >vF}I}8E>LYNP\-rO2ʺ 0BKu-H 1//`;-X<ͬ^8Yp#ŵa%mFn)][e+16yː 2s~t5wر? /Ir,饿-=kJ>Uo0v}_VTSj[MSG%TΗ(V2΂\ :5GeQo6 /Z^|c#a<ϊFTmQm;}lr_M<3j ^s0 &')AL)J mRPRJ^tWEqJX6X[vJ艩̟90nCE M͝ k >,h 7ptqF#HE<4J`KYI\["8-@{;D9w}O}&Dy oC.`K7.ם }=q?xR(Qm`X OSSpQqQJvtJ4v!C7*(,|\3;< /?pY0D%%^簨#=e !+n\?kSOf͋%*!ז? ;U g@uOv|) JhoR|6nL\9&:%u;ڒT,7T@XjP3D6TñLQ >~Y*dT+Uj4]sCVjxsF7(5 ޿n&|"hu­Q, &Sij/u"fSvQ8 ifgޙ&,8m7|;*·g3`B>@`AܭY"/#.`nF)'Of"XfLͶ]/V8nHW>wjtJAlC!Y_F*O^HS̓{4Nx:Bc|2E[Q1+ 0TU33Hp]+|8^/gW4m*!GXH~ԝw3J8W6 c0~vlсlV,Nےvoݚb iSjđ`ͥ|FY+8)#L&aC&dyV''~ GB b=@ڔ*ˮfF&τAhZ0AWŽސ3ǂ˕haːHk@C vb&u)h+zp4_BPq+iR.'pdးnQ|3t3< "\ѼV{L&S/γ!Q̽9e:0xPuqww wN p%ĕzֆVwPcG%&qǶۅu2zϩݞ7 ^-jQr_Kߐv*g"z[$ h8lkA%w'}j—YTq~3l_i!1?Oǯis*wVZ$>8H [zL{P~/!<_ "khSp1lU m;mp|;~j9 svZK?ʉYg7""oGPYd3ZG:5-24A`uSJՃeDoZxm?uX!Bӿ'm ȎF{O F Jm-wOqߚLOwME@*{zl1c ?ܢoGZΌJ߬PfYŐYCU@7% \(uF m oV_u+?@lE}+Sci_?r0&eG"ijovÞ&p/b󏚒ɹDHB 7"XeP>`SLaci-$Ty ԁrKPd:nOr:Y +7_! 궣sD{:0 f9ZO T96o6YpkAAc"G^_VXHůd\:F;:;_ƞ Σi!3TvP?!ll,K|Y]e=1t4 ӓ)_rJ/7\8(L'}~O"W'N# ss{o2C?";?tz2 ֲ0*ɧ$?VZ?KJT u8qZߟ=h9OiYW5gg:2Z}-KJRC s]I*KZ)eq,K*r3Udfk~2a֯o:"]y/tut9(VwrNl='N @I/dC/s Av{qH7qN ϲ9xpu'kʞ$2r.(b|DkBD/cM]f :3`y(U|`Yq71_X8H+[gmV[E&mei%S蓂}"rZUlTxs&L'Q(Z˔5 z{ `D8 zd<"FV)._z"?e$zFQ布cA ؒ4trPWJ)-`{S!yx.Z-f;r:1WiG `oL?tg7wF0F=2rx#MWkh# ȒU% /RӀ:"-cvV04WfN?H2n 0͙w]n!07mgx5U/wu3PVkPf>#X[WeRa{^ @h6bDF/~)Lt+z~ٙ&i^/<.Q8EA#ݺN]ķ8˹6MsևAUR Ḓ}SYtܬRM#6X!:u5ZzFMuf6J*㍥7eRsupmTWawX~_*|nA ]̋˥K+ [2>/њ8 VrЇ|/g W|㵺]8_RB=*[_Dtj2Zgp`n"!Ts$$]~2bf|oEa @Y 0|="GLV:r[YDaY2򋪐~'_MW&Qq$፺ ` 2 |1 Cֆv:knY:s 0zs& Qۢ ?dq,De%L:d{"۔2Ω+gƐu@f2EGoTj]k·]Q,v R]G ɚ:ePJLj!D6#p70|ktI)mq \Lӯ~IԪt=\j.m !_`sizɮR552YjK IYiGRXF{#.YPe,xMf<[,J/`P|ܯSZ` d2S~D0xH2SZ=,q}qD.Z^#1zt!{s뛝cw`f s%ƈ|LE%D ÊmG;$ ;sV*1F#]ecUǿoᅝGd\o|D[m#L ͭ 9~.*;U@x)Xģ<.]4Yt@u~Moيj9578xº.%C9?2(#Mp-|o~D.E|ZI1+e0K+}.YTKqo苰!lT!T,?V Fl |c{Tu3vsYV  5|:EKlV?cDaɯ6X)>ZʵcUTq2T |ܙEL2ϝ;B8=L]TC" z fvVZ [(GI!&es"$4⌟^NcfOᭆix\dI HٱC:9@8=M|Dn В㈤\9t4WI#Y1J86X ݨ6WE+f *S07XhD޶-*[b(TQ7D%;CJzj]P p,aVA\Zh&GcO0FM] aLW[< J2j~/Nn׉4~i;CMIG/Gplد-tRGZ(#xl`sd h+.^u?~J dlܛ`.c\S:\m bUwC-ۋVRäBҪ霶^nෘiB7dA&R.M0LpaE2\d z$ 3;B!4J@7Ə#hvs"{ *疁ZB[j&⽧v$[(kͷ^V `=DWipl򚄥*{NrEx lĺjcKnK@Y @M֘ n#Rñ2ag$ň(f3=Ƒ>+E&4c,9z`KE-h+j!"6cٝLΝPYT.#ydquEoXE{9+8Kߓ86On.D?klڙ5zSyq@gƤȡN ykGPڏ,^r__t)cW]:\k I4v~G [ 6TO&)ο*Zj% )O&"߮ѝ/_5cdZcQXRG d}b0$jd\x̯FqݕպdSPq $l {"aEksrQ\bۗmݖ0ơ@9}ozģ RawNo #<Ї})hJU2HPx&OKyMo)6R3"L$<ed~z1dFCoԮq+*7D'\ۆ,uQ\ewK.) Ш (>+"(b^6z:αGsb6ifޡԁ b|2A+#ZS2+@cJ:5G>NlaQ%cs)1d(^ GEc\]D&g4vdNdN_ MSg5!qm&Y+̍ UeGiqxe>˙lw/n9UJR46rJ 簏Xz x ̒QzXۛS&]2IoZ>}fl"l,3oޯ0h5L]z t&fsJ:p 3ے DT\ՊHǑIބŤp7AըUNuiLP> լJyVe;h\S*B?5h+jwPWdy'ݺ*ZI6%8/󌝦F$)#_9kIMh054Ɲ|iJ>C} jv-˭a A..;8ȆAFdlZ* Iy+Ơ$tA~C8_ *P?lE i V!*~^PiO7rGpm{eZ5~N<* %2*xZ<Ǝ[ՆS4aۜT a(+[HNh( I혭;m xN{C]R%eLN"UqY .xX!YO2H@S &?3ۦnL B, 3^9'6fw!+,#EJMϖ!$dmY%b-n""%ɽSZ>v[ :){ 1p*Qp9rg ,9*C!7TRo.DZ g^547AUki¶O"(t8XJ9Y*uOu%VlZ1o@AkHS( uZ+5e0a#VR &'RxI?e@8'K9߽Ԉy VĵKִasp~ P!_wHF/n CrAh8lS> FPD7cY397naFԟ~9+L,R.@08 {ݟœ:-~UY' '͔qrֲ*Hqaè7?~=2 6&DGf^*_Yc=]Sٴ~®}3`I@,i}|q";v1VAqi`Xm, -'C1.!M,]11/\3^;ʉbKU9,F$כF0$uywS1`.iXeCۆU z_c@*F%+O4g_O7" hB2Y mEĶ 4m9ǰ ?t=e`/ejU㰅i oijV70_$Rx ~+\ʖp4bl~C\*^6ݺ'5zirkB.&qh3IXPEmqI;m1G'^#ū4g ׋9πC~Aқcm3|,4g˼wrrN0=:4ZۺȊœfUbb*ɀuXD/+hU$-m9$E s[27^.fi3Ӧej[>mS_xg\|#|s7j.P u5Gw}.rk14"|z6Drؾ- F{G^$ %UG4WfPUKL`C|Y4%'Oe؝Wv.)PJQ~m\#*?ޛ^ Ӯ&h S4'cwKvIHkCا JQ!\NSEO]GN-۲Y{HtaZ^ cV&F[ƝLP]Li\CC$|Aұxh"˙q`"-7'qFTN$+%RD[Cfæ|>412Y21C:6ye:ةfo=J cIDb7&[6&`s%idЌcɅ@Tob IK#Ytz3HeeG+ rrg@-oaI:w~dun=]U';pV9;-j Fz~ hc+h]k@pHZp/U"`58(4ȋ`jψ z#^s@ u/zW4C^0$tYDڊlr-{Uz"4ܓs's6Arʄ,0Mz'z20q`8J\#IUByi^;$Af-ʀ)ºaR9K36ˀnDCiyH^.wۤnݲ8T~PN"L~R ƅqN{i(ϰsvImyyBAY; ӷU%%Oڤj&DTG'N~b4I ^/HpB@rVJƳ/SW;Rd{V]E4 f@Kէ|+ ;`57ߖ/Q M7i*H^ Vyɒ!I{AMLM?F't(0(V)D+^3&e訿op!8,ֶΫ;բ;_R7ʼn[TL*QN  9 {yV)ī<8_'ذ;X'C wK=='+KCi  ʬ>]Id) Gcp zu|*7FKгc2Mںb[Hfa^e)mA.+E*3ieklV&ړ(xtDӱ.\Ye@,<;h%go^=(Fk2Me,x+,,mRvxuu~di~]V]4Bޔܾ]k,[砻3ng#}ISnp:) B82jjmhKs-D꟧clW-bxJ<;Mn؛)R+|X?ͫpPyyѻw+vU,2AM:ԉy:<vߺjk\;=Rm^(᭼Zؽ{I唘2w)_T$ C},OL0;r2'xĎw} =w#/}ӠmQ ve4qͺȊ#i:ΏOE,]0VQ05t;l@"5䍃;wOuknZ9\^_Ts̃Fyyj+ afqv~al8.s tiy:uVJ✞Ԁ縄Tΐ bW>hIE6~CY4ivĐ5TWGt&X-?3rAo<6PvpWo+ -%#Mv3Ei(YjuSeܩx\^`p-uymBBuZv5-OW\ 'Uvk/[YUpp鰰iӝ6A!p^Hok(h\a|'fCarnǭ.p"0h_[GiӒOnI],LN7VZuީ8ųB,y{h]iwԣv,HWMZ5hD;KU)kOZ˥{ {zOprX6AΆ}6J6ErVXm_!TRv07B%rsf@fT"=x&T砛8U:ݯ#x\4#UF׆G{~5!d::N/W~ yq + L΂P#R s>B5i0T^bC1<1~zHQE9L$a?Fp.5#-N1#ECZ!t\Iﰝ+k'JqD./|2vgML]gq Sܵ8LĹA[yxcVe PpZ1ZȆE᷊>LCkf.-tgm\& >.&sʎu9W䗺XZo+[<1Yncf2 y>7y=&yPH?-un:B~" 须-C|%"#-;ڞp XVøۂoaJ?[OQ{Y5ztX#bw65nʑ6s+:b0|+KSj13ϵ%v<I3gl^[ 4`/0JRM^B({Yزp?؝aQ=g2(!t gg~\V.B.^XvɺNq.x !#j)Jp9-)b)FjwNd0y9MmP< <{O%FV%_,O @cJyel[שHHܪj?ODS%),bv凛b/2}a5gl`ySA-P@Lsol֏QBJe z Eé?KJÓ/UlM,Qb0ͪMАp{" XĿb C`T`$>r<#n?Rcɼ~'ƛul])iN4b8 _[0_am G,5iJM" Vs &.u^FuPuyKCF¡%Ĵ8%O'.:c?22Zd+,ƅ0?D2A0ݘ XAËIS{[ZOh~@Geㄹk54zyn,{D!e~߫ u^bNb}$9KݠG0>%9ҿôl5@Cϓ4r*kxVW9J+4^ֽ:P)l;hF27k]J'9XEQW] tn֔ཆE9V(]L9@y#qq߇*37-rc7 h5V e7xJ+>o3iT 4jP}%֌ΏֈRh icVn2'ɣbG)ofU71PXSnVg~V2|OalduY=I(pW!ivmۭNIAǧřb^0Y>)/nyjξџo%j0`ɴ-~>qmDSp Úq٥`~ey!Q;[YMX!fC\ ߐW&l䏭Rq}yxjMvͤ8VOjoƎcry#l&׉07 1߉} kQз*JW6ߵ,^|T%8Q32󉱞l*,plIeCc6+(&+VԿ%y܏u /W kU!ڻ_Ng8o^So!Hٟrզ#&nKo?9/6`}SgEV(>q )p܄.cl'iŗIul,.T?ä|N9$˽;h +@t?`,p^Ryc +~GIdxdpUQ~FMLU \0nE Ely z U10I8Wia2יuuŽ8xry7t=f$)6A,jRJ]~?f=,~mQ=e3̭jjAPOo # h{, iIuS/68MPZӟp .xI2^ѻ5?ErG??TL7S̜j'V8,j)/W#9 LAo&> r iƂL{D`֪jrυc{Ju ^* Yiy>n#@5p`iKhf24%G(Oپ$z|l]""yK㲋I7xPLܸ e5BQ+~a5&ʱhPE۪gΫ? pƿ4➧jw$7njjdG21ġHж pw^8m]a]=Ϯ]L,hpmv^OTTljKZO~!闳*V yjJt0uq!1BpxUOOj^$~ Z%a\\ yN~|ѕV~vLYغDhD:;ڼRޱ5'T&02@P#1Q/Tw /ڋ9p [Qpb%3ǖO*D|15R=SaխV"F横>e+4B"2/'\YEdůTOaP%lkCQռ=怎8;IuA."Dav"_]i6[fJ9 !o24f>?1l֗g!1/ǃFkT=Z!=s7*Vm{.&fɤ%rBR;f3=d1Q&-)=EځA{4_6z G/@ϵ 5}:ҷmn RGW|,دYif8{jU߯bXw9qnb (iI ?"E!,a<:xmƠ_IvXt65pό&Zl;m" 3t00ϲ̠ucջ>~viC dAD2"[ H {2JFRИ ֣rSuȵ< |\EBb8Ul}.nfP; #q&-ٻ!<G4vj#D^mH/? sezTt>;UU莹(tx(9/By˨z8-r&G î)?jw Φ&N`o;9{;S^/emĶUϕ.yM i ug==*S|$FFݼc{JQ}jU2c{ IƸc\_Z,qQ6 s؇Oí<;uF^f u{W8XϜ w%32Jrj'd`ȟ @>mZ\k s웃rW+T㢾802Q#)R=hle}T&9h Y#SAA3(/1d(}A&蹧FDuIØn5g)|4!.yLQ['B[!*~WPַH-yGnRt<"[[1]I1&M!Հt{_ `܏ H> Ijca+vq1yVLb[ tbivTA L]VtN ΰE9 Z:6tOަ'OQ O|geOI_LC+rstylgy͙Pha4o.ԑnŏ9yDYYM1M5m齾xJ`nADd`L@`G}=}oW08ac;A ߱2V˾6ze`R>Z!1M=JZ'9;4%'} 2H}|'( ?֥UQ,iO}v¼ktfU58lZ2VsЙ[!at SV{cCqF9t $cZsHX|}}^0 (tēMe^.8`Cc6ߟ[(bF wcslDS:޸GFTI79k" AN_k>r~cR!g 1{zcݸ7@-v"+/YW'():b%`7vRu4S$B7Tic̀KKORk?~'MESf(CZerz{y@jȍ~1B;'F!w92ߧ61Z"zJ͘a%&sz"y 0 4厎ML[6u2 Φ ?698mkluxekZ%MRۻ ,-Tm@%R߭)J;1ؙ_y#FQ C+ɢD+9(Gyy;^5t 1CHB8!vus3سׯo!珡```3!8\5#դl|ib%'b{~lAЩĈu3`gjLf>QѐsTBB{^,Zi*(@cq$\g4rZ. j@1yپCG bWlE<,vZ|B0B 8{AFwXfV^ZXpV v=4sA}K. Te&.Pϖ[82 7!X_n/30>J[QEyb8uʂTXy_FYٲ`W\8?z5vAUqj'K;US n񮪠$ 5Ɲb|| 7K聅sR xsѧ),p^ohR#S^gXe(RZX 7P +w1wͭ#nAAMO ͮi 2lTk"ENfC>nuA5+Yov;bj6"c+ǁ/'xpyu ={j@ R@x˱ѯkNu8Pdpӆ (ٞ{Re(k6zg(jz&IZ3?|4qؗ e3TS /bQrZCo<Vm,hz0-q̩Fݸ`&l Q=\3(^O:qesbo]HҰ.&p {O!bE-گc$nUgx.⿿d?Vg|V`m湼)|ίvae䰉K&#+`luzlٺ}QN9r3Re_)CIkU9!w9!KuDOnDF\gh r#`py[&OD3w;-CW7 4GsR]Yc:0~Luk}Az".[PISUt13?}fͲ &y,./F\鿊y*f e\Jߢ1vE2]dC-~ > 8FOWG'ZaZQЪNh]!4%LMgC5 p>}{Į \ hδze4N4DT#6(1HK >\PQ9^⹷s kOSN+ |;0&A LHZ;z)c#, :jyVPcz'GByW͝$)T!`rXmsR4*\ Mcܗru 6u-ѾFe|b;n۴8{|^hԤx%dnB NP* X@Nz^ߎ2IN{ex.̍ϪX$UyMH;{ TdlէLAj+~u>5;A#}G` I (h-=7$1vt ;F>NE}ضD;q35I2-}VI4SY(1!ayѝn+$ّn_*hv+V I4M".B%v£2\C$h|CVԖtun|Pl^v6$[ A5XvdkL b0Tl*~(~|T:m[uDos޷y1f>Ywh@#"5p\${彶ֵu#|TzM; F1 =4KQ-LxN)lEgY]t _kV0 t@f3fBc8D ! h 8X)isHEʞވCo e?q쿗r! ȍ+OMd/2F(SωjG[kjl;Z 0%q} -2XdG}<ߗz^OY d|{1dmK]bͫ xP|j.}fP kᨦGnJ0Z C"Ho16eNﰿ,yZyw`ΦCه h54 LN-0/߃?C AznLmQC,MiVy.%k٘%k-l%[&f@`t|#SBn<)Gyr5( wi엄#A@ث G ߻T:+ \tLkwJiA$–C.'m]ޗ"/|& z--ﶧ_cjuw*; ?dP;I5 60/#u}5qKksWBRmo]"ϖ}5jؾ$[v߾M;g8GS`أwI#Hxa! H<3rEvDϟ rPMv旞 ]wť{FUܼnQ!-zEӸb_n)/bwF@ꤳA0K0ܗ@ lN%T;a }Fb׌rD#d͟ǚ(cϲH',1:t` gZݨ1Q Z.Fјp"zw{F,#׎ YX i-]t6.N@o{կ<::EؿMj oErZ]w;ĹBMqɟ=gdGs;Fqu8tS,;j*z.7r9CVVr@5Jj232]OlyLgrS .I/l4t== ;o: `0`ַ^)իQ1]7GhxSl!V0 Ѫq}J%^De}uwC9B2Zif?HEOZSy0,bao8|kzX)"@ꉅnT0UbLk GSE/c L 2GHh6(F+FE:qQ=g~}DWb1>wk; d.?mTVR55x@{9a)qvM8UZC058|*Sչ[E0[̏r.Ƃ}AZ~mLUw`C' ːݷ@v!C 3+ ]jH ?l0K)hV(] h{SB*DX- I\0\j8Ha:n+`%U&Rc( E9؇Ru1Ympp|Z8tF]_D$2:u;]F-_&RZqZ/Dpb~g5J,VR/mj Ul&7MI9Ĵ+ިz]ٗZ,4͋܈pf=i.Y4!~lChqcL7K"#7VPA!.9Oټ]UDsmO+UGWx( 獀IjZ`Ð ߙ K!6'FGԴێBDx>y)t$|UXhǚxnc4sa~Q=:}.P:~3nWA^"kbh o eȸFiq j b/h't`k6Q|h(> 5_<JjQ pPX.o2ٚ(tJ^q'BQ|ZJT ^z~Dt_MR& HDĘn3iE\ix o6>7韴Ғ)2vV.K}IBҝo)/IEHFf>A[8 ذ Ukc/z;kϞ]e I2c)P n3[VleqgyjթZdf>)%~ j4c #cDgp* [1Bw85殮D#E}s[hY'DzRT9<3C,(!B\ɂFZfhWߟO(1dLj?CK?:Ϙp~6O+A^ȇ)^CFA3pvlB*1loJL<\޲,%C%B{ ~T*W2`me0)`06O%c}x\4h^M"apOU R_+2J\pߜ|m@ mIe$G$p1A mE2ļ̂_iB5\aYh@ҫI&Np!:ۈpD ;@㥀t7_Ep=nch%X !kIj)fy>6C'oFeZ}8;3t[ۋ\;.v"vHMu&%A&UqPzRtP=e ?@Vq"-x1` $uG@k-(X֮`*Z҃Ɨ5~m*%28% AnJz| ƿztOȱ0+.$ EX0 'Urh*^@`$[Ux6s8k|J6+ĭuz2߆.;l4bNA3 e%1^zxۡH@ge|&) ;ZsNC*vR74=AZ?>=*`` ZRYg;ڇ>~KMۯ7&,k lٷfkM ]P `O`C&y9 %( خ:8ɈoUy[[v}oE(bog2vMf/B-iYԽq(&\ރorB X"Hp-?%FlQLSOxԅ*c^ |e׈nE쟥R5AåX2ܟ7c.6Tft 7l=)58xѵ^;tCkڙE˗% *Ϥ#[H "8瑪 5𺿯q54` I(14KNU'l 4'??kC /-8X2t!$v|?H N#>]Z޹0U S7vhWFh 5^$~!zr_ @cn:6:Kk'h5'd(%zHNdv5 t nPKnvm"@g0ͅ;;\`Mɺ`D$@/\pjp0[VkųBo'%%Xzxgkzb&wMi ]䩖U12Q Efe~saA9OwP- tDJce:JmsAHτ+oͧOĹ8H3%j,;C GG^L8 1DtZsx|OQܸ}=*W:1Nk8ɛo"3+Pjl8pY8) Z؄o!dQ{sKu5OPX#䆒:ds|fڣo)db7zښ-I!bأ]?[q|d08/cX?j"xqmxϱK# 8A;W?P 6uYCyWyQlE0.RU':gmKT=%߉Wj.&`޴8mY7]Z7$3%R*%;v%5! ļr<λL:m^ ۧU*o5pJw£~ħxn[vPPtWQm(jUlB}FdNJ'9q;(o,\9 F XLCRCbud{>u(wd4 (\&n3cIƽ5oҴg5Vb-,c~-)rϭJچ(~/8qQpL,kz{}-| 1=PqWZjȾQ ^(F6ςa'/x4qZcgѷ4/G`e{}\1.SFHh[xsMAgܦ^-AAZi`QunKg]\ $4ӗ*H3i q뾫/9o\ڔp^vM8`Tݘ^mka@1Tt"/:-itjd e1,6vѸ&ˑ.v _\[Fn>RVqi͏;:L<6!3OgBnj-BNoԮSVՊ?f-2eH#U4GL&u0 A+`6OQF']tx(Ep-rOnǙEXOf0opx g}wN\($+E wCaK$^[)r\bGl1dw[NLi;`F6E  P{BΒY֝dw A;F^toƎ`ЙWsɖⶸeMyp\"߱>@s?7Dީ]o]VIM}XsqtV0Ж# r}Eܰ|I-e%?`ȚG(A3ꇣ/DtK-N O֋<=".tP7[G޿F3xQ )˚~w<ǮPw;`v\JH%H}BhzLMp2h`P&θ9!-[&1XtC[h> ,Sۡ_j_-z0{NĠJYhy=Gzƙ1{pQNgaK&+ &`+S\+@x"Tŋ7ʖÿBS:Pζv@%)/ IxI",J+ճW.7.0|؜LCt1>ϢYv#$tZ),Ι\hI_ sΉ92bkw ݎ3rM"/>&vuA_eXh:xv/N.vL{)_Rb]{T^Ƞs9 >8'$F/K] w8P=xb+)LF6^Mw3)anZ r@i==2dT Py(=dϝZ359rHwzb`IO 2 n2^[]k(zTW֍dxp;˩O:7 FCiogܔI= v%ZˣTJX ߯BTZ4$^Q Y 7$ror ΕA;d+ffF:w"2A-R 7Ġ- a3xn6,42J|[lcy֌lY*,r.<$К Q ;oy x77erwhEC=u1|iHB~چz11ܔrmby"~zP9FUoWkUl|Bjsͺה)κsNdIbN}qL?~$l?RS evb8]ޓmk@;lg|e.^8X&Wߒ ]Чtʒ,iH W0rdd PfѤsjJW= L<_\ᙙ1."rnpImmo# E[gnNrmbk^}ViQy[ILdȅ|R<¾)7&rߡ|} åԹ!B!&=N'ىnu*|t DNJM!17߆whЈ=T͞Lg 5NVORH9bL[DŽll1o](e 1`\a>j)H# ~.,KoJ*128XDht֧Z:܀ی(Qgx ӹx'+QoL} WMy/ȱXT OJb_~bW-;􈺚oPƗ^WRIfƓ5A?E0>L+.] lVۦB>Rj f•݇ijFӃI_@tkZdbqYѵt' FWʈ d'i}gZΘ..GPe'h"{1T<#$&f2DSNnǿPˍ;AVd1vղ5otvr4yz~bJ j=\D60;QV#}>d|ܒ7-~_`MNX&V$0=2-=^>Ȇ24.WĪFK56טaOwXX'Woa,'mԇЗ:ֵ_m!f[?2cR/JX^Z;;w67~뺅hFGOsTT2H)6spY,TJ^z#Z6ؒtU H:)'aK)OSHV& t5EۀГ8q7av>ĘK=, 7sĥc*2Q{٥ϳmD_yT=F9ƫ'={@túIafm+Zpg09٘6JYկ^!!)5 ?:{?^Eؚ6DV3yc*LX;seW:ֱm@1N ?a$'0-b ?hCE}" 9]mс>#[w*cJPy 1*"PCfhfQEi_Q4sC }, R_rۙ<;i$-%X= &⛛43Ya,E3W;`)6w#:Kfv  [Ey>[j TT}>]˕UD'f(?|AmB;@ l䟇_ʰYkM~#a)/][| ffso2`/]ko;1MቤPUycUc~ HdŔw?;Uo']$^hKԛȖ%suY FGцꁻTbw}rV"A}dG _.ۦa?sI?&rͰssеA n@4L,odžLrzb8$ ƅYS] V+uʦPw+r16fjb!/j4B8ü)-~BXā෩& Д% ozɛ@mS:Ԏ<̝iś2h"B嫏!9abѯ1\vN|n5;qh%[BD{J =P b{sIw#^IcuvR!_땃YTja#FL!?](hbI tńi8Gچ3;住(,{|kعJR%%e~zu]lNםDoe/SЦT#tS^%HY.7TxXX6T`]4m],Bm ύ^yp~zHeW$[y?׽1BZPUϖWu :3 Q'g,{zx.e{ěD˴ l-Q} njm793G7Ph$'4')&xXlPcw~ FY%۩D*2jU@\oז-Qb (Oq=u.Lś6̗C.]gѰPJWY1N+pIqM؝AYPm{N& Ǖ7&x)4 ]n57,3s*G77qj{A#II&^A $tPr&\l,hn|8 ]LBVDŝi)8lBhi(s2z8f\\.3T7&1Ph8[_&hԟ:+;6GIiWt~Δ~B^t?J33޿SUU-.O8k]lgr6I`n`n8!DMĀ譚XKΛ:#b'iG-L'Lɫ9o;!D4,uw\eWB1طsvi~gыG'6\0"W)B 89COgx 䏄AD{b / n ŧymm "ǒBqfܙj,[Ɋ/%3_Zw3]=pĘAG<%.w '7ڦYp%&OR.51 (`IN7yarnZ!Ӳ!.Q:1~"dA*D]0,J5Gkd߭z2>$]?Nnu[剧{ {po!T!u? ([A.@(uZpm,2*s .Ў:-Vk!FL_7I&U pV$ C/Q=O]wTuQ7%GB ~+)hI1^m0e?ՖT#Jk3g"g098 P͒<)V-sN(cIW~z.P?ˀ/T%Se`,).( e._mȶ'w9Kvê.?'->usm gXNb:&fs,Y\ @!ĚE#]oeO0r< ެ܏ݺ0;10cL-NX ҂4n`bP 2>p79IuGT3/t6jۙ(wK蓫%A]O*V8S`6nFq,WVSZ`*[ ol65$]SFeSk!\;E>/YO|Jwq-)+NOLz%%65y0W|FL| r5A}poD}"Wp2(\=CBl6kR"^-IY,;vX5Tjx8ftt!ǐiye yUszi~)?`=W1cT,޾:u !,hRXlbNJ՜zG~Q=ñLoC~\E$ MZR{ZĀ/-\ !k7˸+j`רWV}JNvD\_{kEWgy﹬)*<򢛖"k]z?.5rD:9hj[ }sݨfţ`E ` hMexdg*"W%w'UL2x_$8څoϖ,9e` :q0GFS/WaBa%bZjulLFXdXlO ka:~6ۜ,,"t)MM=sj_AW"?U\Sᬺi 'sCn/̚>LfkEЦ*bpєL*Hz0+NGx.y%NLeC)) (t5{A2-A>X+(Qjjju${hO A@!E喌"ʃkB>zW3*h5x"9ωj҂[;b/INjtݛ?YpBzz3ޟՙrs$i36mQG1,EsLQ>mT쵠۷5|P6 !+I,zҮ;ZqB+VۆD 7 R:p~92bަdnҁIt$ؖG'7S2#}8G a`Ζm1ṙ؁N1Lf$X#;F?!/amL1sJDB>QwⅤ#/09ŧcH 3vV ߃>Mfa6 $گws\x]-Uy.WjF׺@<˽i:PVG)V$i_ZP`ݔ>qr?ޤ?l~ D^Eq~är̠ODPnR %rwkB(-$/tR6MCUtaw~uvi˰UM%yLlkP}zrs95d~Dw$xQ\ͮv{+;W2uZBVNq&, ԹkR ӳf^j[d.@{q¾k֕_FW4vEmѨ !O҇~w;lzcAWyըO=@ڢLT9t׀|wƊ(9Jh ~51EuY_17>̈́+ݸ v,aAuyozPz>7~=1J \[VHibۻMrܿ xl&^DRVp5u ?Vvvˇiؚ>C7gojJ!˚?mc!++ʨ(SY'}ㅮiuePZH:y:RQz2|wNdjENP~xjMroG o-Q=v4 O(c /;őeccBwRXͫ 6e(x4ttx'X Q=6Zy@Xe9hu=):m~d jD+?;槾zfkq*"BΞ;RH!C>]_ZQ%KMbn4TBle܍EvH?WKGˀq6&^r.4XvYP*рC)ept@rw@*րT>ktNP$J>b~|cvԒAX`]jv[u_#]).YA {z*B]ph; ZE ,bgdb .b0^0oU H#יQ5ËMVg}&y䧴Ѥ lvd;z3EO8p59|F+wN$ E$20SXϏ) j^RjWO |ec^xKc :azJ/nާ %3,[`DB kKڼUrgbt<+75asrmZGVH'~ǚ&N4ęK:`/8qh0ThW—;=q!tkĶ=U"jܭ0 ReR@}#XIu,LvLy |HetA_u Y] 1t| $nȹ1P٠NgK u1%y\l aZzO]%/!2NFkJ<ъcU̬6e Hxԫ36YWt3BŠl=`zQFyV'kˀFi,pZ% 0yڬm!QI'm^;HdRqPq$Y^%&2e]>ӣxD<ɖgn WH|%[A}Bj),rQfk,f;t/-c(Őv`Iہ5GIʨXhm+vL\wZ)uLYT: ;^԰a锄0ѽe4 ;=FSz-8𜤪vc6R9uWA*#ZW`0Uiln4\1ohGH9BD#FdbSQml̀:ͼvv>9>Q[l9*vðR5X,H>5ZLVC|qGhES#(+,CaL2#~ubz L؃ϟ\')R/K&%ᧅ_v,JuQ~$o/4SkI=l)Cd]Ʈ2׽a0nj R'O>2xQWXHѻ~C,/W4 Tj!-Jj+YZ'B]Q93#ɄakĴ/W{~[u,IːS22:֨)6Ucf*^]4/*Vw)gy|,{'1{ct>'țo7v χ$8|Dn-lV}Ȉrj[=5D$FU;2z$0Įrm4JAgnpK0p@i@uKFrG1 _y&"bpgs$M]z:îG#Ȍϴ{c4 =kf?+//?'JRfzv[.QQڗS5i$bC'9mێq٠TTE:d,N*^b3;:W]/X*!#ق`ðJ*u|ZWŪcr/-U;)|?V{^g#Xix` /p{uZPcrrE,!U&Ռ pΖE$J4EC*VIH^Uon _+o45Q<Т $k8yx+]U!&Յ-ȁMz7^:ZӰ_S,*[r' U۫ESw53L;ߔI 1iz%A>L$-g1DMp7?L^4x:ՏN~sD_9J < Q̇e z2 |f:U@LLZ*kD7CR@>!I+ZUllߩ ?տ Fwq@0$w;zr=uȃ|~DGlzK,}mkHla5 n櫏Id\UU:QoȒ^h )Ǩ3olۗ$ސnaKJ3o!W@=YXe Q~ 겾N!hM)vWd[ L {h.!ј5[J ѿ4(93o6#@hcscUB}Yd 4|!l>_P6]:t t `?T4AԾtc݊ػ!5,zgp#2YN/;ET tr^2-v&vceXVZ{#if8 ,SV"Ěxd֯1*bǛǷQ񿑴(#_NygYiPsP%ޏ4zK"lg|~ oք2DF\rQ_M#7,0°S=XLC:nmM@@踿WN+h3#9;c!'|˷1- յt?i-!orsTƋ R)K}\jݔwpl{pwN= qg! m,(ZSad^p`ğUŬ.AK bkB1k%3f^M #6f=]) .LaG;'x74\dkS 04ٸ)7k`*b\\l: :j|tK ]jaICا\M(YԄ Y0{=q62Nqkև?y帜pn|im ]!1x-;~쩵C 9a3Սm|^4?"نjC"cJJӐou @'*HiJ#@Y&mfxi=a$ cL*˸ll|Ax9E)qWkV*k땀TP<&46 6s 6>UMB/ikx%zԭq-#DCrϖ]Q>=aXo/`1v1 뙮@ 3n u؃1$A" dA*Rgrf2 #M޶X_D(OskZD0(XӜQ"kP.۠Z E5Y\W}$Vչ/q6_n>ؓi ǁJjeLOx]gKXG^~1o.C)yP쬖sb?{PˬK֛Bh@|0'k} ; !B*ųVwUX᠐-Կ6(&heo6FAi(u G%5^@`GC]dfQ%o[z`S3. . Jzg]4[za‘(!)5x-sz yL6RUO'5``k͕}yLHŹ Xi˴si|e/"R;[ u*<3 `'.n\D$ ^mp5'\ncap#A{ӗUvޜ%ϊ)xmQ  %dq;AiLq֭G:y:b-lUA岋*p#1u^qjN5ܨ!h1S,)y`L{G-R|3%}#i"t$)xI^yh pA*% 0L(4饡H`%Zi1ruMra<7HW13vfu1L&軾lIeb'ߝR4^|i? 2|O~?I)Uo2}Xr3[Et]qOb9o4?RbuD3R@n.,豑sK|lƜG[L>+4-*ӟ v|" ѮnH,oGTzYlwU(pAL֒23[3qf) s]gy @}#oz:j۫JX$ MW^k5rs1;9g3_S&G1 IDrhr':LGFјe~,& 1f Ҭgd!`21it ˵]W 4QMISts\3}kz-hvwo`gϤ߼͐$ùmCc vcrisB_xSLs 2'yڋ$<  iZ|Ar ƽq%cFi Ód!)K ytR{^V?Mh %R1tV-n%৐S91Mb`\aW".&ZÕ?Ϩ/9 nfs)[2qyoE3Shhmȳ vݑBy%]V|Phv>%cK!hUs%YGoinīro޾*S3f:h@nPX\-8mGCȾ`]1f%Xs1`%J.P@@D K cH>0FRt)Uﹿ(DS]LdH FL'"b HG p@&@f;"1eI1(fmInsJaC }x09;ˀ=Qm{e6f㩀JLVA10,v{I4hxL9z22Hd״ux>VeBC9ϙ<T}xjA{d6Pz-Mt|g7$4(1o19ism%>YTx!۷vERá ]fe,HI/A\+kRˬЬ{EF@zWkLD13T5ؼq9t<Q;2MGhI\V# &!AC{ pN]:26*zw@hEP{s4ޙ|jE654Gk1e=iMj2\ whl*G:T 4*sj)yx`4F; tB8_7sz?qh>6mnVNX\R3pxK(v VHCZVY#`d!;ɾHXANr«kӶgjl8OA/;]6Ź㙊4-N;}_!wX5}88Oq`TacKi=G&۝FA<4((ڛue;̀* Ցck?6 bAuiQu6 mh ;c{Xshu/)/W(ɠ&bl 3RkG6,y)aGZ!N21 $NO~STZ+E[:=H?o{T+Gqk m1g{)jPNCC=)+s{fQH13lzuOTܣ< zqsKw;I+QYFTsُ)e+v~Em '[b6'+vq3E]O!1T׏TMۢxb:-yǷW "b,H$F4>lKjN(Ջ9R$5ʮ?tҳꋞLt"C8SĖyEw>A x89'S2Kor#dUo7ay|"AMM\O]fN5|?F *rIAT~\zuY\,Oi$>}1c K-ç7w~?Vm}\G~J s:h{5ƹ#;T gn,2G89RGkJ3ƑB ͧp7.7$ʼ5Pߠz$=D㑻#/)E7ApHr^Aw,oy" NV|x%2qy ?vc?Q ߮GotZdOo妈H[CD|LΓ)Ƴ^JhexÙ饴B°Q[sѹ@C-_HO7%]$S5ڪY)X$ѫiK%4v"j7\}+2Vj(gY aJBO'Igӑ*;F 'VJEEE#FJ~Sֽ^`m<#_ $Vc}^oؠ[۾׽ 8{;,*®P唾YEc:uu y4({s1iKq~]yY4 Y RF xoBBRb3K\:n @YTӔQ a}% RVS(fG8.㘛аC/vl!cй8QDmY7ɟc]?|E& q)VLm zBkߣ9 5@#}=}D&1gV琈cfkwUVG Vox`h)Lu 7o2JݳInJ ۺDT Oڣ3).2a8k%3A3+\YUuo1>jnS( ѥ>7R;f.3;RabhG&3aXJT!SFsb4T6ƾc֑<!PN ژ x=SV`"Nm3:QdrñD>L6v碒6 '.N8_mZ=$%2 m$uwZ״g۲?qgY Bgd%_<ٟQz==N:_$6j"Ͷ튖TF Lcrs2~91i݉oo-5"DC9[ARQMX|W!#\\գa| ic V*I|1hPŖN09o.PM# ?‚A~=ز?\Hfhdv5{u-n D4<ʬ^#BT6A0V|( D)f("{C@/7GМgmؓ&Үзst=LJcޭG6-ʈ 5߂Q0͇  6D&{qѹ4[5rB6rUm$Ԥ.f#_8ASW %4]hHUc_*;O8g.}Brn4ۊ?sdU'"P{cPL{x`amsdC*5m;G. ̅=lv/*Kԫ5)]UYV'iŒmqzu~')z{ ~Q?fyk6?(߲=n~,9 !F: AVppi?"CײƎ2O D[*{B1Ω{I&r)SmOQd2E4)Ssd&AA*␼x{L|M-DOF)ʾ 3DKWf_*$f:CU6gB)x57UT\ʲkg:y<(m՘9l|Ϡj'Ssf"'KxJ Pw6γjŨUv)@:D>&!<$:v ^Z&żx $&vƇ܊_ݎ4Z[ɭFo8?C#VzWf0ն {fq|(%7l>0FJ$츠PBxmKt)MJ@--_(Y!3v1 > "b|ztHo j,ёXuV=ˊ,P$rqY8gL٪1Gr(Y\{{+t؏h {Px]*Oܾh]uBltͿ@v6_ie0~'{E>OؕJQ&| s_(,}gysqB 4ZSG!u!Sɿ}"Y#nT˻_f!)i1"Pwk,¨&oËth̖ĪnjsLUfrL ˊSqʊm>ɈUXjQN"xIq3va{ !vJt@/ύ;rӝB\gbȪ 3ImAt[} ,z[50XJs¯WydKR}TVrfV j g% +Ȑ°eeqw/xϮ0gv`4yn;;լwPBEH mK 6sW_5TY [p_k~*);5>`3vW@>l75'#@ ;n? +c YU|H=;'o/dJ^VQ0,Q6c Ñ;Ōem7?̦ޙW!L-,_N>:{j$54v~aQ884@[v~: m!C!46ˋfF!W~ʴR.cӝjp9E ]ϼ~H53&(dr\p~rs&ba+rOf՜+9:ӭ7s2"-NmFЮe^'F<q%@ϸϘrT]t}>y_WUUHHsa/KW>dQ1@X+xc̾C>(xWKK[,Y[*xÖ${";yneZH@ٹLby<$Dx͂GYc6wˁΜ})FZ~C>򫮗c(͂Ҭ뉳JLzr.LZJ\h@ޥP*Ma2hNhki A1NXk]-*t[U{z 2"[J~8 Uqc>:]YMh$QX[נ֭-N㹂0BE0\)IV;p >q \ E|O2ހx;ujYP7>̟ș`Ps}\m1 2E2^WÕ|;lf ZPSyh eV@tR[ѐNk,sD"]X9Se^d[iV5ْ<|]&$wyL!RЁBEo9:D~8\n>5_1ݽo ܍rxbrrƜ#՗q8b_8h䲟aGM[Y-¯630T/uI rXvvW,t3}%=ZX&(!Λ.g@2MEU=Vf{Hx{%e*ϝOJIcTq>P+*9a:Qȕ +!BF@RZ f({ jY6H6Os2BK.?6WZ?߆s$k#W5=x<t/.r8Wr\Y>iϼb粐 ,v%Xy0>ZPE03)U5rr.xl7xF]9cGA&=bGr]+ Le{B*@ANnujy,) .^'%:wγLJm9@3 hg2t\Qrnz%)^&57K\.zz?Z8E{:+?>Ţn bψs;%P1TaCHKmQ륢Č+ש)bEt9u#!l壝}uQvBJ߰6j ahߖ)z<NZseiHT<<1@\7eDO594~Cڼ9fxrx ݊ `siy ш{^R󖉤(H6ώIafZ$\ ʩ̼l~(1$*r_mJv||PfVh|z^ ٖMfi^ @|72)Ay+ܯǶ ۔Ws#)>,%T:9! MHx֗IFqbosw`y`0M 7-%5AUV0va;}'jJ LZ*UphCk܆茷 KnoL48|?7b]"I/ٳ]cY{V&)ʤ8v1?JO zeÀ GR>ƫ2)bx+_׹6`a|#l\HL?l?oou| 6f4fasץ ׂ0/Tp{3ܒؐPTQLDk܂%Kx}'( E<͖DXb?>? DaATƯ]~FS"j|zE7>ki|:l⧟ {(b)e۷h8Ќ^ `cڳESB ?b5epQO8 >.b]II51Qfv.իӶ\4(efnM܂B^-ȸ (pNTe˷6"Ԥ+{j5+mVۥrT1Um5^0>Ca1?sޫ2]Yq*S  wݤ?*=FܓDk^4Xf/-9)l9zq fYeϭޑiiaMq43@?`X&'7 o/;;O>8Ǽ(0W%cLy-:E1 c9[{³fwN&)bJ|eE=0Ea %5T<Fp̭Υpcd z^')db=i%+Bʐ.|a'`syXh$99P}wH&#蓻4ӹYjDfDy,onvwX9vBube+z}ؤs51P5,ɩ;J; ~Tjp 0|KhGx7]Cy 5./"E[t]FQ?T]X؝يX;!a(H/5r2<-čhD=oXtL-jMkM9"3':#d\ [wn*&,hȩ`\CcPF]`{ AU0:/ a~d+4A?ǏΒsHdcݿrYI*$.8 `wG}n˥P({!6l#Xe{1v\FFJk06QԲ=S\i j;r;*9xOƁv^}UvTƕH$\iļC֋~QJA2NOcg8@I@7>b7F<~u .VA"*%}rQjl@xI),2^1"0O27u6ӛ`~nF!ǂMʄTf;;le;%W9E1{$@Q>J|g[Px3>[D-z)ʧW"zbTe%P ĎT\+޹,k^h ׊X|㨈s-8\fʄo; :0h2B(5۬pC_^_l.lm '{c@CD4=dse|k xI_ 㔾ΈOq Ϩl.rI"L `GM]_OB[-v)5єoMVSk:qwNI|5z*ʠmˉg8/#4r~=r³2Q̈^Qvhpt,':0c}$rXM܁R HلH/JRQ+q@H|:ڠU$.r+uپZH|K!0Սtv5׆# c:iU2πB\~ؓFxvcDF9voj37\@nH?lJ$GCۄEv(SV2@yŇb0p,gȼ23[/ *3 9/F?yʸTsz1<3)^ rXLvaH*߀>0mXK.h$Z߀F_"~nHS`2T NW vD}idǣ7)@ֵt|դښ;XMC"iAzx%e"n#)$Ӄ.r#(ߧZ5Ŷ KS$Z_1XOVץU` B=OѴb ^-vY XCkMW?)6ӳK#ssG8q` }͟+o]ل%IWK'q?6mۭD)#R&SznGfڢd>ԫXXhU~.Y4)vIn߻ɐw`uը,dͱyt*P E(Z:db_aik5A "-g62>`ul3Kƾc۽g 21+2@X47W 7b n?! *6$٢Y4N%_L[!S?n=iY0sEmmpdO}md%׎:k*vDXQwr0H] y/[cCS A:Z=-is%,-:-2J 7Z#I3rTUE/4v_t%g%x紝"jKLJ b; 6̚hMs rXᄄ;y@qҌh ~~GzJ; 9_&\VF0i7RZ 2#Gb*fܖ )LMDA "f,,Ql9}-T:pWf8npas}bn&mlfcTZL kUxX41w_J nV1RQq{'¡dsi>bT#n܌~u8d;˴緶?X7XN&%$$f|0YK5Qkk3qU⢪1m$l'@45?=lO9$d){+9IT8\"D\)lmPܲJ)[\?{3Z,Z1w-jH6N?L\p-=]l}vp3{$Lt{7>]2{?B^榑25Bώz%횜!]XwIRE+тlw;~־IHYĎ3\j%m/dqxfO+A.-& 42kR$i3p:cx_$|=+? `=t)^k2gu#m A|$$x1z \}: $P 'тo#N^VQKdعO*< kM7§8-E\=sJK^v> LL*KC<ѦF@D\F/@JU<B#X}WQu.Qk$#2Z?SQ1icl[ǬWPi!oOVH[LX8f%ͭLE $!A|ljy`W!䒝ȽI+!FJLD}v.^wuoS!ܑ8Y9 yC|?D|6Z4G?g}YQH4=ӈC]:L:#ԂJV|^vr;jd'G> ظCCphҠ.eӳe?Ԫvʉլ)6}_T`T΀VtDal>PgWRX qZnypDrב`$=[ݛ~n?^7zAK?MO󫤿GS0 Ct7V!&ݞ"2tyuVoB9y/wGyP 6^~[1!Rx3EE^Muѐ]RJ"|Xw48V78h]_-$2AV#URNh(S:rFI}Qi[W|t, *)fk;V5͇} &MWVyγyT<ꞝ~kO:{TFo6iJy4le1$Y9yYߴ@~;E+t, Iq/,k<%%׹ |^TNԧnazzepT<OTCs=l]%5!j):w*NP<Т8-\O4'p~ QS[ڕ9d3!Q컱JT!aҮLO}11C]EP$j:zG̛FiF ;}ًG}U{KP1#J̰.n65u6 bqؼx<ov8P2k~p9z}lQkV^B/z BQ%a72ϗj\*r=V)eUie^_;2K0j͆#F'˫O [C* tITZ(1F?L{A?F9vs/(Po9s.42VP@0hE5Yr<̳x+UCs;M9Vݽ9AfUϡZ_(tL[|-f,gv'VBH x3$ekX!څF6)m;O'@?y-dPl|q&oC3 NF1/),ה52x0W"O"] -aC&c:qm;}ϩ_'uc~DvD1#N12 D)N(2Pe0B 7S:v/9j D'ڔ}6j[3e2͇#ޛ9ql]kMpB> 0|%vkd']6N~Jn =U Yx@~L:Dveo;b@~}6Iv>_v?3K.JH&V0K1TqˆǡzEn(f{jn"CX8CzH {| iM(o^*A<"W㭽A&A@W՘e*H(mެyti=!bnԫpAZ'=oF fҼ͐o;{*# BmT;A]T){jl0djYoϝ^^3?g4K}ٯBcRGxڟAkf[&CθsV^…Gm$+d[J=NfG BS}x oovf:$j ӼP9H B%c 9GL0;&|y0cV=Y 6&\~ib*VȨ Ib?=FJ=u=k%1#F}?"-K>68 ,p,P yQG8K>*zWAG4_OL]N1HnA-Dlp?! 5~ H;|jrAO)aZU@R#xzThᶎwDip@|)B8鷨~Og |񅙍9ɖ,3޺y)q>nЊާB:KPOȵԤ,yVQoTOȷoEm;U2[żLOМc1W<1CDn#ˮ;Pu6m?`TĐM< I}}yt.l]zJ*>Yi0xYeVy2R֝Nww1 ]Ye E"[`Cwp ;YK(+NTYEγfϩi}e| Z$̍a#,DM|&WEW1d@@-,%6d#%I{kedM*ez;F3KߦsJnzi$opBj_~Bda˨@19U U„'؊q{ XGg#q_KN҅AdUtjMٞ(c"h{&ڐC .U tŨ1v0JxQIf` zO8!&?Ogz9е]`mqpAG"S`>U;v~#%3Q Եb3e(2$ ASfs?{k L/UR?i9@b&#D}xgs P*EX䭝َ8}4f;k̿Qg$M׵<.*% 5qDqwumʘƭ,"`u;nW1-k3뮜e?Dk?RRڳ\;id=&l:R1% Jv?AXM_֞ZF%%{ndY/nzUt!H0K:I NE0v=L{9u{>v5W;=\D茻 ~ƅDTeHoWyT; ý*?\)3*4pQ{_i}7ֽ Q>FypH݌ZJpLfC F5_`lx.vbNL^)fb8[3h'sfkhVUbRPu9O9TCA2 %6fCύDP4 v7!5MvtӍlYƩsOb49`L6B$4 f~8 7/zb }cQnag$;7pucA"*8f@HͤB#]GS*7;ծ7f&uJіgr2=1C58/l/LjϕH5ݿيžRCP*1 <eyl Sl3J ^_-aeQLHM΀2-xܰ9]?)wX.B^8בPnDn(7w_yҡN]:M%d FsCGXvB3}8!'єl$B[&A̤&?_w-'UM~V靺*z˚ ꉳPᯡsWnZk W0-:?EȸfL@d8Gv|`GFW4̠K؃>*>ݰF4kMQcxwxqfJ.[\jAtuZqUW6Moc߄ &Z3?H[']Z)hg}-Ev";|eGc &)[OjU *y?{n;$J'l 1Lļ'sDhT#zD@F&9Zr`6l܈u$x̚!0j g uă W+[F<J80q)H eJ /dE"W5QNlM#!]_ z R/{?xp K)9lj-wOoQ ^%jp|K;m'BA'*t^uE3WaHg@M%~,V9@Jb׼^wuy IsB´+]?qߣSNix9Z :!5 Re!D/\ WA0ˮOEDHQ˞יuy* 3z5Y>6UsVS8f/b;|FE6?{<Nz08JQb.=@(+&J.M\o&~򟬅&2OaV*\H;ݴ[O/ X:WjJ2ueE%vT[aRiK>#.NBgDfQˀib̳,*xQ|NftW5kQGp^Iw&/NR+M缞Zߧ# Is[pdT7J0qnxjeW͒NPpF"6aɩ-2ЍLC'ǯhסZu!3#Ohj"N;Rclz{Dr2ɶ\斫XS-&i.0jC" ˰cp~D?s| Jey5˾F2ML0WeD܋Da}h0_wS֟M;bSї W!2+X1ֈ}.'1N5SQѧZJ}eAyW0UzL\̬ 7(’O ТBK=s9rdIb[d$z˥/==JjO(iU psg(a_B! Ta6+]0:;"jȔ Kr=,W(*zVnb5d0xCNMT,Ưm_;*JTӷAMf<%UsIߩKr@oSRgBa֠5%!n*MN됊H OȾ?*/yR5W/xL|%E{=6ebe; ai= Z>;#2-F`W%t&N^F-)]ep1qeihY%p6,\8khPS ČEkFVTt4eT$^vq#ߨ /Tɘ`9}\J=y$oB55>;vSvlT x"%")dTW_G/ub?6mg^KESoC,;׬E|>0MFB./ecpj(Evtr-;oszx5'nFJN;6J!T;nX1?|a錤`F2nՒ@\i8=@lR ?˹SJU=VLwŌ^Wk1xRl]leO"Vu \&|,%1r0"'h/ȡ3"0vƒ\xMzDz;w-a>T rFLĂs'--dqiע1G$K3$#~To Fpx|?/ 9W`{r4C.??|"ӫ\j#RX(hܠ;6^;x $gklgϳ[\:} A:[<9a7[2,,Qݩ8"i(:a9+նyI42:Vt!_P{f7dǮH{?%`==.ϩka[νkr9_Ŷ+Ĺ)sgs -LgCe[Aڲ~bӡ䙤EuAI lY?<e%)tLP:"H;_J%K%yPr;T}<?L)O3!!wDPzC-XQN[%g~, Qfb_q~Š6-ɞ֛UDx~%:EkD p]F-U)ň_nqu]o% iӹw JKR2 D:M3LǑ* %X Nh& R8놤_iEnsbb< g^)gN1=,]8d/ i8 e-/e&bI FE "C#Y9IAZlOZc1MDRԓPo^{)q7+f!>11l)u x!Iu&91Gx"Lhcv5p!? zy6yvk #Eq\qMD 8ȰeolMyZ5%p*Qqf)Ɠb¬T`T:/Pˆ42FWanv~e cRr]PIO]t Uhȩ.#RxcnyK~#T:(#^:p,/ 5+k#@osfty-\`_&eϮysEїy,nl(ik҈& pQJ0(Os)⢆= ,壊/kDqH`!?ȋ!p܈)a}WjEM+{|8bXM~%NXA?|\des> X3[|_Bxs^pR/ޫ 7tm\5 FNcKs6a<# hZۃE% ΐ!}L,=NK%7T%c">6(.OuG˚xw!,Ts1 d4'TL nSD3b2S|gxzvnHl "!I.}ϳijݦqƘ{r1~_"[ u)&!~z[}yKT^hl=DCXkOJ]`+MM".i6ki܈2WxvfgF1Q >;gSuGU6kc`-W \.M -vLyxsG^JG=ǂkNQ`هYY^&_s-J6łr@jFaZ\ Kç]Ч$s?R"b~E;Xy F)ĕ+"Juᝂ](DבLxhV L]1c_`b{zL88 և3D4,jDD Decet'#[\&>1k# ̹@ҬhR BՌ`bpUbLf' P2D%M%+(դtO`t}ը N i $eS}_)JSG; pN.۲ʼu\F2;7_Р^'bs6khi~]twMףaCCy0s9ܾNp2*r,ioȡ :}6>~ BzQ uͤ.lʺ/02={ohשׂ[[g7r<Ȋ#/M#!'`NX>:Rj,6LJvFa`OS!P-Z؄z\LG(|SW&--i)8B@H9Nɓi rJ%2Iuwb5 =gj;4x}Z|30N?NVՕ{g.fn2CK,Cscv^*r`E}~{_rjډ[}Mo1{Kg#ٻ9x< V``K;k(d *mt̢Vf CLP5wx"PAxEYJO  \kQ Ka2k7v$ CWf3 LbQ4AZ+K.xۣښеqBb}6 IX%=/][ި˒62]̩bl#g. 86qK9O7386ێ&0 "j%]^{HTNFQ hjEf%"I!uJ#]x ZZd xr)jX?8A1RHIqLC<qy "I#;w*HūOc۹*42cq 63ĿfqU!O$$w{S6z Gш.!(uxlҖ,=](<&b#0Fь\,Q?mo T 5FȾӼmX{.nlR1M=f.i!2:~NG"n|Hxs;2Twr[tGqKWM1zkE_izG Yl3q!bw0J1r67V>w#ML}![˞2:Bh&foX՗y n>DS|r!Oa3[B< )-5"rNKO`Т//GK:Kʼnap-A cPNcwdGS Lh[]Ц<1*=D]tPŹ̚}'7l]P<KLxܭ~$֡iz^/&Ay }rluy1Ka}5Zb&fOvoCN( DzBNaXg/䓥^bUfdi"J)Qm ldMfgzaL'K4`sF_*J'k{8P3\\629ѷYDzO3僎M qng77v P"!{USwtja exHɔ.TN8_kNPF 3R-z3^/BxmVALb䧯{/IfKb!jO@vIbKTQϭJ:anL% B$% J6ϭ^+\zW_j$8(6~I㝺,2E1yǛ !8囶))bA֙q eNc.9ku:x1|&K̖G⣃fJN@)"٭e{z/fs ,~aHMGぐ8AC\QvI2T+0j  "J+UKw\6 9b.CW'pOh%?`‘j[M9)zgP) 8qvo(&]h`-pؙ;HppuâXq2gCEΒJL{ϡ&R4^1NU{%]V/q{%07zFG,\pКkTkXRkyĖ'F]NX R  #:8A#C\#'̗cጏNK{P,crNG^I*ezYUY,E64CJ(#|S 8rޘe,V_8HΙP(P &(r;(`e)z'򞇱*x|^-6ʱvy{)um#$kq|Y85{.{Bshlt[EgZKȦƲ(A>/,t,z*=>-Eb%1Uc Arܾ7,mȖEnKX,Xn?lQэdǧ6ЭB=˶Z?cԠ̢P Qc2E2C6v\r aJ^@A@2;{c- N#$7M:3ӓPe빶W/&3svd b3"mI &Fh>/\H(r&tljo?*7o %}o ź(>\Rڼ"^kbQ~8׾./0#Ӕʘ"t,qGG* H .:8<#b{8L:Y0LHE%=J>ΕΨZ4SvlQ5 êixMчp(ʻ gb?w \e'_isal"Mi@6A$t(LMryM|K**:J,+s75#]:D`7,@T)t+gy:rwI6BKrx![J)5uo*!x`QMQ`] S^u(`u_q淹4qKTT͟=Ȉay+M!kZ%Au5+wTo2IxO03 B9ݚ): jc"ͺW 4njVoA>u=eO&Fŧfb@w$qU ='dZo~H_Ar)Y!Vcʆ[8ΣͅH;ࣘ@ߝ-!(" )$EO0 v-CEaWF=Ukwh驁N i7J˺cO=I = 2#^[b`.F/#7EЫ\Hp% 6XNm뇫1?6BЕp?L٬wO-gЛUvQrVًRݲEn7y-hH@Q_d{5o\\QLd]圕| d ˲v^i퓎*p\Tc!ڏn9,&aGSgˬsΖ :aB>w jt>ͼ76\u CTZ̒/(5{TjD YeUw\&`d|ecqV@]48x<%/rRdc<̜@~a=O4c|אѶ}ڳڊ6H-(+2G#VHQ5fr@;rp^!>("xN[T'!BV?kb~%턄IS뢂7{[Qfm un>LRK5:/lt+1vm<$&]C,f~@!Xa~9h3=T, @@AmBSfŏa0ѱ!DѪ& (xgCkض&^tXA *Hvt@ BҘq-/T|(,DNW( Uy,VuMw=-:Ԍ9C5C6K9*!3} v;|04B]C]Hk#`nQEK2{Sj Ua?j7Ī}U4vc&AdR nC6 6QCԟ &m5`/P+(/On-IM}&m.ř co{[G[&=ĭ+>Ĥ/==V9l Ąu<؅ΰaXȥLB%浇^; mj5 4YLQˀ pZsj @oI {̧%ܥ{ ܤD<XSzj5özu8g$3Vi]u($u~|#iKi]ꐤ;u)vAr{jwl9ݏJw.g9uYY͘ I<%gmݬth{/otZ|z w Qs PK!/ŒU*GD6WKՑe~hřʪθiI!NBg.p|-|4+ϯl95/s:)뎒i ҽ%`${٤?@7e}$gȅCz( .B9ypBpb#UX3CA|ɪF ҡudB ry߸`bHwt9cY_P ē̮g6U}R)P~3Ym%,&њVgzrK g=04[ 1U <=O'C8R) x\RRB,[IDLȉrE]m(,h<ç!2Fla Ѫ r8s ~Vs]Xz:ޗXg 3Ƥb-Xh5aV4Q;^Z~_$WE%OːC?d.ISə *#ぁ#M)u{ 1␴ҹ{d2,5ήo3*zm1d/A2yyXάsr.bf+`X1(`ԅ;)Z[]e3f X+8Vȟ(xwXÄR w:m6l5]:XYNܠjx^Ea܆ML$!\6JF?'48t ̎"O"eϱvg/Lw% UG9 pcDILK%w7VG tX1_%o,Ts&ӊg[U, |k`$5 yY>`0[#z2ЂrXA*V ?^tY%Wi^EWZv@%P1W;md IB`|p zrsfd'QD>FLډD/fo!9.e#e1îu_{'(0Tѡ(Ye\J޳I+PyT>vn>6.]CݕtFqç]PfѳvW ܬJ!2ɂBù8R46\ e=]|2M]R|hv"{g̙"`iau"})<.ܶ5ệ= ZV?~뿽#˿1XBUL+8%ɨHqTlkOLiKIf{e1A$$l{쩗Hշ%ܔ|it)f(VKhP5'O*ڑvd<5q( .^rG q WSyzD\GR6:Xć%`aOU52 'T@VHG5CH8j!0D;Zv2. 錡h$U%83U(K0H֡r!+\uRsK(6kB+p$2'iţJP"0I;F|Lnk樆߉!AЎs~XZF;h^R{8ud J=9q CE=_Q4()“8]荱K< '@]h;na,Քm}͎hR<\ \[!z]ǢCa e۹t?vP.!9R^? t΍2uFcŞt 欁Rz4_pP4;KUh AOk4)~R-9~'b="P4).E%.PA*L^a\(aXc߅Y Հ"-]ao_QNiq)?D2N$^E" 4/uĨRurGMON(GQV4e{ACݏ삗pt=ּ爩e~Wx{yO# g;w<&ulՁkӾOCes٨I&r|=B? Ef v3H)ʪnǁӿK1Y_^.,9\OQdk2D4{@[ȓPU..>Oy'!\|s0={L"߬Qj%  fTݫLjk!H%Ls^H2 $Ztl![3SBc6~KXs5,Kneňϋ >&p"#  ).k%I=0vh%Ji𶺿8bͻj9M9kS'U@|J<,v}ELTE´$"m q96 Ti nwLwtY5ݐG&=]'e`H# N©ޗo!W9/{Dxm':-u閒-zYbG*x|GFD_ 2  N˵rLJ>&P\@ Ӷq.2jR! i"yMN@r}S gT M͊@?Ի^Q&8 HIcm β\ۅ8#^3(0=׼,P")Ƣv(-ej/C脟9ڄd _E5*P}4Ϡ:Yeyo=FR21}38+49 {xCR;;&#NGHiZ)uBO5@=`:hL%;wWW<}ė{픟6mMS($b<2E̪Ҍgtu<2z,Fq:Y4(s;est6Q7e\i\ 8J12/Y'و쩊?&ixBvl}0h}o]֞}~U'6[O@%Nփz׫ǣ߀QYu:a۔_DH k5#kCNq, N~Ef?o ^ͥk O#YFM;e=şm'쉊fϕELM}`F0:]h(S9 D]޴^le*W7e!tK:w}S[ 1?JpI gl6m~9K*R%mmھ0SQ_5V{ oM )ȆZaL [^Iyf#ޏFF~4F:.rh*4bגCWpɥ:یZ2;(W&6K;ЅV0_ʣ/)^39fjBq$[܃5'ԥ 2kшپ?ïS] KO08Kѯ "B8fp#? )> wqmMS8!s{dعcGl7aQa +AiX+(; N! 0A%xp|T6MMQ-5Z&P}5=]Re; 2Y:Aͷfq'ZxM飛SI[R?1+L&!cEl%W96b%]T`7x@]-v9TħxfR}#Z!-ﳃΉZk }fG'c/H|ʹ-ʣMxU%]/$,grvW-O:c o.cnLĂgMn9|""Ot}wD+I5ԅ8wE;ZRCx.J[VrkGج_CWt',AytOJTY~ʺ_̟\Έ1 D*NQ|/}0ȘvWj.Š:˘0y)[h%_fW ^y Af8}dFTScp^Zv2@ O\-խ[i=4YXAc: M=A!x==4 %\e7A\&4EDft G8}cHPuKѥO.kn@ 䎂i-w J"h ǪPTRo{ ~nwL B"-y6R>zxLƌWV㼎  Z0H)@x[t;Nçl~]ϊ م#UQ{8r=׸ Vʢ-|ތt_vc¥rX9<>խv ѝL&3ɽS2۳'b/tE%#rLNZͬbf/҉/`wv<Ԭm|rq㘼8%Hۥ= n; EFP!)( 7ό)OS9P+\ {2Б\4#ZwSA@#}דT"*XACn}8pmX fWu4OQZ|GdH ?|{L%@d_ggf˻!py@:ʓP<G,' T^iT@0bH*ơo9-|u@ p%؆a*fx5RrW>ÎWQs: 2UhkoNpP )Gעt< HH1EpC!4񼥉DI[jl.NMG%)7*;_U8j cߝzfqEo)|#ԒzKi~7 ;Ist@`F>Q4"Lr\[)O)(=G6 [|,kSFtChǜJbuݛXǣlZ>%Jf>e>3j9MyU-f>8Ja?L,Jؙ$]ddQҐtPUbBbʍGQQbPqI*ѧm MM]6s-,T;2KJNWNb8j,ȍ[xihNil:pIeES*չ8F&L @8I!}88Xy#8>z޳?F_- KP-TuH:2{n:mt@+|@,w{9'tv BJ5R^ֻy!0l\K6Gˎ. L~6{iO"ROն*~tfA&~?d1lDM%UFe 4$aY\W_Eږ CY| @K_ _. 2$|+oӮʱnlӗ dvD<tf_Lͻ /$?$ju[.7kt;\,6F0 I@1j͖_H7QH] SZp-l02:Ck{NRO}UE9Ӽ~1̯|Z)5\n 6R[ :rL)ե,9')2jzΌ Ѓ2)mVi ot`B!fl& *ǁ~nPu)7x_< h,k.]vl+<)fH^(qbdl/3crE#*XWK&\fpCsȖ*g TMw9(vo2cj+ t.Z03R %3榭4pdt$+$>I*)e3{{]+n\^: g]A(S+Gu6a"=O -Fj7*&ehNٖd|;eR.U]&Yle+Y]~+R=yLop9 ^l#ESLm ?ٽ70л,?k1kKsA1G`As9 wKbes %)6/:fWYyU)l6S&[HщSj ]jKiʰuҡE2haEi6>- 0Z' 6<ns&,2lFkU 5C[PĐ5y RדbYw&ZN}ESk(Si[`wo>bhou4LIN~r@LSUW 1&@=zVͿ*rk{5EA[#>/ 8ɱ•cS^nwd\SCv?[ :I6W92@۫t<4VRUxs$Fg qFVZ Ysu=?ZԗK@e\QM93c̠5tQ&DR@cjXZrċ|M;zNy6Њ#=0BErTT)t܇C |w%.ULGJhKF3 #pMJ(۶0=}>Ml. U+<~[bQ~F9hJFaչ-=wݔ]Wz&NK.JM/ۓIǰ5leRYxElNѵe :N.ڲE)ھNfX *& ùZc W ұ[D'_pkVOZq@)\\-@pT,Sگ@ǝvl/[:- ("ɠ.GqZ(YevPab[:J5P4!ko^+'h9pqi7)RI!F?2:X mi̍oAlOybj b$3 7R0 >zWoe$Δm]D٬:Ǯ oVhƾEݻ8:LQp)u\l 9bm1LGF + Z̻FvӼ\}ĪO 7nKTKM7˸!>ע/bCVt79sf=`vWT5<׌b 5FLӹh|Xxa>X])i88T:/y?$DIah~v}RLcn= AjL0P)+DZ4 U*^2WXY,oc(*0;u,X_̞9'Mgyΰdr˸:9bÕe/mAnZ(!b/`@'rv]=P ɰ/JLػ|32EIx ~1X!{qq0Y*" \jnwݖ` H.P3n﷾͈eWYⰵh&#Rp)LS?qO \mHA~֧Fd[uo#)&uԬÍKoIL-}B Rd͡+ NIE9n5Ҏʲwk j{e괮SqR;˥=lc$ BgSqdb)k)|M$ݲ36LtB㉥3_E:>+^HHv⣂zhvC03ABTPg~濔q6]rqeQAqKZ-FӰ7w)_qYz&+E&+:ګ/!vht>F  j)X%*d׼nc֌tza3{V?l 遳ljXsWW/bSM2d$}wR|?3ݻ/@CeGs, =$_gƒO4UʩTg>K! v~F"dHpxbjWK#TH_V{yG% EEAxFupݺ@9\Wv6vлNyn&`܃>JVxGowmtz{b.JEC,!Fbndr.}\"퍯]@k嗢mVp?5cytG$'_ =LNK.uV_Zߵ_vc&/x5BhÞaa/q?4Ck~Y;m OWp" k|S/y..dv0+CeC~nEjK?jex}EDOBe[$-G We=/i9/ÀY 9apvٯ0栩~m_@bgasѼҁrHk?i/Ҩ7j`Oz+6 b8/y|Jcxxq4!>l)K /{2ԧ$dw'ۈG=h9HN~,w8Rnut`Nk ~ 7Bʙu{ TK\zw*er>}>8w^,¶lNL&DH&LYq `Q|HsM\̠i6Bj1i'yƬ/ .8 +[.5tPn}TKNI+cRk^ذ]%k,dр!lЁFR;g{O,x$u;H)^ 5n{}Ȼ:>и<5l}'6{i-h)i< s;"yLrkV͜ܙN Ɯg0ܮ /> ڲ"2D'uw+& ~>ŵBꦟCd|ԏH/>QLĨ-f:]&[$iMϖ=H @KocmX_6]r8E5dW~WrnH V/E/[.9X/ʲY~~SXxLnmJodtFTtq2.6A~ja0{Y::]w #+ J#@qgK֯aсW /q㪙| !5l#{r?04嫄!0Mv׷?Z{1ge&t]|xJȣxNHz_4MǁUM{$}j,fM䅰+.kVn?WYH~!'K#N[ﰩ̟8wCLYҮXHg ȆjGַMTêssP\~؅v"߼;QY11U=pCpRp=;ev?ςd6-!E~- }|}X%dZ\49 'סf:Loiśɘ2u5ꆖ<|ZT ` I>8UU/cŅ T^Y2,G?Ags  ̣7ඐd6/!J]v]oG/EQ]}T f-BIquRz&!l=pcVO#%yn.FS~0!X=X]kp chқH"%lNZC)7,{y&i\B!Љ}YكNć&G8~-՗#EFm'6}lcKωBT*=[`[ć 'Rߢ ѝg*]V3GPcIYi ' 3J80 nQl<[U<k:J(5ɨx{My[Q8 Z!VBMv,v<+a6ȟ"‚sq,y~͉ͪ8б)̗ѦvthQϹfrE ˺z+\3&ȥx_UlYxWOvT).+U]=C- j/&/:7\2j ]d=Ij l%_ rJɄIo-]Mߣ5d(R%t[۷:޸p|mr /H_Zu{X}g^u.3|$zf9?{n[gR]^6t4 !,  мEAoFU ]08o ]dD欳/b\ߣ ]Jⷫh.dP #lPᲩ]x0K4轉/DCF&(vM'UDΎU?fR̯e5_v3L5Qq+ ~Gkc^g[ccN}BEZ ]\ .ڱIʶjs A J]Jcm) E!w O&`1 `"jt[3Ҫ 3~8i wqTjm.{5u:hPb(-@/}CliI3nťjmdayGdm$dzs NL\ I^/b0ձl'MYc:ڵiH*ߴTBP7fon!0en+&Os^zH*5-,80}<& 1C"|Kw>j4.槆јp$G}0I)1;"V9oD߭5͘5۵~^=6FNbEv\N+h~ڝ!<׻Y/yݗ+о ~ 2 `uK{ {_{L)ZyB6AoƂx&4[rM+7f[ۛDܙ |1?m|R0<.k ]a?[t! [o/{m%*#_0ѳ4 59w_J!ok7姹v&"2HNM\ʍmj[39iCo4'DS6/_"dPW%sIuE8˝nȦIWQ`;Bgw"tcF+#'K-îFiR)ߓȩ*?YUT~1 v^m ̎l4/9rS# bN@ "VǞP,G 1Xd}v؂#gsBl)LG/.#:"$i?zuP,(h'}zw W;%[Cq 5g6^601乶7r3T#?~ִl쏻D VA{k,I%J8`xQ XJ`ܕ9$֏~2>-:-0^ ]z1S# .Q+^k4nkIo2!¬@Oy m2ZxRj !ގudq쫔x.]& up\"꿼\DtƔADT_;><6P_>jgpf?~) R-D Ld(ڵk?^1 -!o`C(!aU%аz1tH It yݏF*I،S!3=GCTSrJ,,@51p15h>xbbnpy=#󾍢ӨЩd_@#9ݧ*J^[.w_;ϺR2Q˸z#pJ]JhUf M0Jb`PKV͡ Kߚ#y(ۂgإrlfQF52Ia+fA`(F;\^iyeg(]ᙐPbNA h85g[\DUbwp$p,U5 S6fX4`Y$))⋨O /%\DmgG[ #,{݂dJ"NZ L{z2[qmeVIӹnNw@iNuv,Ǯ\=aw~n qݱ24xNM}P>şܐd3t2e'0^VvtJln"YQZ:-')6vSS@YJ+#tDӛ΂Ad6:;F @I>$-RI6DIs0Y0;GF %oM/yAaRElaN}vDăjI[J;Ф3kZڗq%O!Ǭ 3nV03eh%4YI7څ;~ \nXna>Cben=,9 Qt&4m@푽N퀺mS؄>"S<=kJ{Z(S\bi}ʠXٱIG{9:e ky,ךH8H]'Uk;~KbXC+eK;y,pZ=fЀ% &# g5gY-#M 'U VxazeT"YU*+438# 6>I?2ww랭ܷurdYoQ,q?:6 5J=Lfr.r;RꌝJ=tIpi.^SMנXIjiA,?~ϵmDnkp TJxy6;1wTvi7+n7u2hKqi$[ Pz)4p+:"N`94[Д~A%v((|NxF?ѬT$w֊tQl^6m>tٺ! !MdiGz8N}e jޒz*tfg[e>Zjbq7w(G>@`gGq|HY^fڡP4%Չ0\BE|yhqN?\P=mhBt[=3.(#0k Ig` [_˘\p~Im;[x.g:!jDʚv>e)6&^V7"˗SyԺ7E Z3;?0iqC(Tz.'\sTYwQe-N LPGmv)&ӱG P֊Dž&lԌS86vNB%g}`tWY]/ =_; ߅o0 0_r( ؜dqD [PX˵R)MpA<$skU lߗ)ɢvh?5/-" bM\a?,7Qh,$H~dP;شg^[vVmDyR3Yt6"% `= p.F,Z8RӷU㛃qu`>MnֱX܀p0Zr)XC+lN$`octvr!z(p. BϤvZ= &rE@Aڽ ] DS@Ia#O-kDj™m@{5 ޺TOaT;gzN%S8:< ssOT16T߁3?9aN̟=i/Y-ei,>* YƒB W {ˌm? xL$ ϖ~u G̑ܟKrل\h7 U1kR\l&!D32oĂA-Sғ]]̢=]F(c̈́(!CUF6 E^5i0Pm09^0s%šf9~z1dbK?v_~MOȴnJRP XzYyt`NVِeWk _ep܁;A-1x?GƢz5iCq9CI`6t2'k ӯ4H:7rISU_R=͜l`@gj_ !'/3}cޡzU0;R6ޓ*nL}䭺> GG11ss_^mf0;VRot5n=5[Ss 9E S9 ښxهE=n]W?c el}nQ\aH_ rzڤoôPr- F1%_tҼTINP KgGD4eh| ˷pVHDyd8 n紫!"(wm<µ[юi^yxJ/8YYʳB[Q#z9&\kF( "pNʱUIlϾri @xQx@U2ȩ"\2GI rIbs ʹ$9Hxjv^)6 |u3ȴ[a*vUkDި˷b?U$!˞bH;S~Xsg^&ZՓgM,P1e 6dm_TK w|{zξX4\Onӑka%Uy/!qF4E @0C$UslcI[Lg[U$ &.^LT K 2 SMa+Ky;??Mz9^D,|i9S0\~kEV\knFJk1\ӈYpuU*^/.Fy" KZ[fd+4\;=C*96T oNc\[iQ8I4mU3@Sj2yLnW9!%>UF("9O{Zu<)VW᤼aɕNEz7c2W+5*XQ ?ٞ >PUb }nM1:8=`Z]1^O=oW7q$meP(y3hI/i"[H|29EvK\q *U\]kp&3QtB=h~?$X$[x^j5M;Pko[F&H5P>?U3& UXr_h} f>ѯr "13igAFm{Z;Yȶ~ :tLk]nQ>, Goi=ͳBy yrY_"fwo T=JDGK\uoYz:RwRdԙפk>}89&1T֚jBi孊0mB(+5a.?AZ8i|W'FOA "[֊8[-`eD#Zj]"/_5$q>(!E֮AR#!`?ow:ESn@4b>ڬ|a(`rQ*wƬk)x|Lbk%M&jSV\:P T "HTo4to۝Ӛ[x5-q?d+J锧Og01yK"";(7'岔|3de7-,&JR;MCaܘEyVj^ݝ&WO<7cf$vJA禹|@B(AA#ңn.Ŭ)&l,FB:a[*<$-h u5i[I)<VDTg$TP3Y26i(z Qkd+!"rڇ =Ta\Z83zWSql@&]-+՜WtFk7C M,1h"R=ߨwF/%eONQE"/2Cp.GF&Ve3[GOB|ܥ58Ղ}c^KiFkeg#Ԗ8#":W{1taEYԇ(J4LjMiQ)ү  75ycZw[NjQfa_Y׭ Ce5GX/tsDT싑UZ`t$p˘"fs-{t <~~20uVc s#'zHpU~qjnRYX8*!]&AYXgĭ |C$8tE7,S7B֛7(nōk<͆Z#fb7E/e~ktyWwj̒ӢZ6F}R#тþr^AwkނZYLPh=tI-N X>'tEjqFIQ`s3||"v;!` ${pTip"`$do p |?;GHW lV%Խ*) X>CMbK]I#tc>ڴs<ܜ9Q'Qnс>"i4{@th!{j=$vpvQE զ/r\*>̑>Eot̉s;Ռ4ۙn0LqL#f%HbFyHt(Ld<2AUy kGp%pJqꝸ_TV:UX!R Q`SL+|s;Z`)_W^ ^Ғ_EԖ.&)בpm׌iy@x"j|4rcJI'3AxivҖ^@A p˭j Ōl%_0Y8AHkX' ?Pv[&|p)$NiӜ!` LN)Td>F>wAlY~2R*Nlt{ڒHކ[}ۘe=`~ Jeފ1DpVݬ xc`T'rurpU񨷵t; }7mjlNjnHoXQw/qԐfY2lkpL MN|<>i;=r#7 ǬuLT8jQ|a.>:q1˹tU,X@ⷈ&ʰ,]xe-T%E#O,QY4Mr+dCdkӳ7s NW տ%Lem_o/4ÍDɵrW6hx2IoƇhL~42 ӾzO1PXpf], \Au# /G"_Y6sL(%=7XNN .ULJgj2dΛ3[y8 f-M@#r>%HX7@zfMwƚG$~kL*5BQEY[svHZ7YYPYkzA2{Y8ax&`x0e- ℳ~!Ƀu9,f4ԪL_ 7;yP0غ$d!7ޥچhʨ`lݿu!SG5_kVj=<'~[q |ijCk9K xB :TԤk?y> ò8iMu`,][w>PQ~\s:? T,=ԧwIVHlQ_`MuA갠U-Qd z,EjCl.!ˉI=q&A4ZBw(o^CZ^ozZWkp6yX,#Xm>&pLd/Vw/N_L]a\g6]q,_oj|f q6?A^!pgK.wNՖ=oɺ9K^vʆ ˓. eie+Kczn0ɆΰcIsɘ`y\>h'H .|ծ>glϾpEcDh F1"3S:$"G0MW@I:a^ uM]](WPdYdwd$>^'ϞPSk mva(pYxXU4갗82uwZ1 X,c m]o)C)5?*b&gkà1I ojv'o]wu5 n݋'1H@iQ^õO1JSv&} @@Xq72mD5 bW& w,ذ~|CM|@ KnCQ8"E3gSx#:&jտP*ɨP(j8?(Ɗ|cؤ)M>[ǖ!\J&a1on2cĀAGi,NHh&Ė, 7K'ސ&L|OMjP80T:e "UٙgJR>FE`̇Xqҩ$٪ &¦|`K?UgL^_b*U_P?{DPE4ں1ʦsҏS* ODN]狩w(32v}%`H/'Pd9W֣0摞ݳE$!(x+*QBJFzQ)ɲro|&-"5ϛj~eFJp˪Sa!TIqBFlJ~)>UC^f:y' ֪']31Ht&|ٶ~8ȶd7pOp׎X =&BaiZJgy|cp/T# QNEѳS\TD, aMPȅ{+ m&}.~؆*SB3Ӣ'}wIK?(L;*͝<贔_A'K9LC4A[2!ql{Ϫ`^>@'`wF&sdcsmb99gaത"UF,&`̵!Ң11ml/̡o!:J[`  ӕܕ ݩQMfЖ͋ gNؙ1'_۫M q҈*DuZ̿f.] 2rcjݙsɣ+wgNXccGF=;MWB&ӘC"MhLBw|g Os*f8sEj@Ma`(o?^-P$7B)o:Ꮩ>RQ{ ㎞8T+vdI=*O\6`Ӝg _-oIPvoEʄP"WO!&"*ǯ`1waS*c1t( 43CkchIE]_.S6t!82Gxsi6::ZYȊlJ#(]qNo_%%:"ieŧ;Q}Y\N_LZ>j.э/\[ǖ)h<ڞ֪ KrgUSQL@ƄAՒЧWs1]ryjE(@"fwܙof^]#}l!4C BEDNtłOx{NlzA~۔p9Mv+MTxQ^J&grKC"kbs0?[cB?k/ɓ;"UpLߴ[&ZïtXNGѿhb;8R7?/fv6so`A+ UҲhV Y w|הJEIJ|p-ZZ_{XL^'mbnict%7=?yr ISunSf26]Qr?3GN9?ֲgɽ#uFN+eM  8Lt@ ߞP͠y! }dU@mF.Y}k>,yZ1 7C.7 JBwtد0Aƍ15xU`N~a{ϼݐmRU$K+!"ruϹ1ԂEKn% ykz|\t i 0Dg{vsƐ\}~Ll\?+7`N=4#r6 DQwˆPC}+>0IO- v$uWfY~:*4~G5blaߌ-~`}#CRWFQܭcev4Άd_#lӡC뙹:.WL$tUJmgFTNGqIC`װ?[5ӪǪ>޾Ίb'e('KRn*2_*k260pτ:ɧ!>{4ԣY;! meBJ//yn,e FRۏEG:/㿌+a(-ľCZZ/4@<m}EZn:c'!(ޔyN0"# Y lKyʧP/K9ࣆxћ9nOp d=^D)L[Y D|ί8T'ޮfZ7([fEȐ2"_TF'Yt|ޟzlj t3;PuSdo z 3 otڰ̮a"Tc ZVD4\lާNvӦr8 |5p{>x./@5  rޡb? MS8\ 6% /Ey30f7'kiE# l]Cu`H3 ]D :^|$NDr^뼿]^R{N H!_@.af٪#s<ʖB?}CC!`H%͔o KuQ0Uu/ qʀY rT)Y_M?KB4*U$4Yvبp[k4}76!䧣owgg%I8O!*c:i[H~,b\@R <$%?98v ><(5坓c 0*c}2;XIpwĤ lʅ.e(]MFv= 8+4/ 64Sp7 =Mz|ėmpAԉZ4)["TRr[y@p!,Il3pml& +ZAHX(w"5;׺m#7V;&wFwꖔ~=cyڝGK)`x;Yw8'&+ 8v_;96}_&|-BnnF5S 09jI$p"W U/8KJ`C+:T %@/WEU\IV@>klx'uRt+9|;uQLpާV1(D"?~t= mS]3 )z7BgΜU({2*s9Vc%nV$6 h-o.ͫ/aTQn]U[WAWe3x;Vա0_zZ>6EBI,xR}sNdT|l־dAQC g~ $jKv~yMn3wLt]dtK̴e<%*7_hu K˭@w@rR9QQ/'#RdlV"k*pCPFڍ?@p z3;O[kT;<7QV`fdg$ز׮ mݎ_5iaf#2֞GՄ8ƅ}U3<+%0$ʼn%ɦ/T1.萋Zy:'dfEEءߕav{GH]ts2܃f~aq?ɹ5D`1gΒPV3cY.G0;tq٭}G ,6M_Rszy -eYZ?¬˴sNzX*{E mפΡATw Z)$w%YcZ|"))qڻf@R@yr?i)1Ϋ/b3<= WG"u^i0ϔʿw2G}Va|X}yzUNMyW2=2p5![KLcV%մε= ,@F幠L D w7GCc }5V!Rvm!uk#x8_ _aޏb'7h8{~&u1yW(Smrs H,f+%Kh= ]ДKBnG&Z$BbкP WUsQĺ:Z& 3̼"Mɝ! U-@%Q-pP~& wYjfvJ٬ o; kK\ZSVzʴD$ŗHNv 2V'!6ExiASyLwVbƓcRFG[2}m? I6#I8aJ,2ײD>D =>k~j,$'׺xVb>Qw$:y=%UhN.ͩǪfanH%b)r9db( #2eae#J~Yv܋4fROJ ŪK2f &R]7gvl;UֵG(iMڱg6%ܴg{seF٦q# Y wC>{ZuwHm=$vl2 knÿ4% SȐ (וʿEut*߯h̹+d diZ Ne?YFًkz9[Ux};Ծ a304L;J鷉SCoZDW'_r]yr?p cW-M\o]2*C uwAxwY`_z8g?fjyl`AZ.q,Hݘ95Eœ4Y yZ*u-Y+aa -[Y ^9X;,g[)sWhr)ԱJi 6=`1[~p%Dף% ވ7{Gԋiɨin7X P;\Wq:1Ԋt]~MYK8Ds⬂g"AH=L8>W~^=adߏkjF% h Fv͡ !&KnBF{M]A } ӳݐ[.4N@#0dI&ڋyfzvAI0L?LhJD[\zCGϺYoiqCҕ_:ݳ}9P l..@}|/@#CRX"{IP],7 J} 0"]JIxxo+oc'@t3;O86.YP8 F5ރN>\M]qG$9ruI%=P+=QZ|>m~ɬ!4nZex.nx7.šۚ*v&Mp_QB#DMhF+xW u8/H3I2{9Zͫ |q6'/{To52쏅~ D2x`ubxt:  YaTBNLR؞>.f|Ct1$h5L, +`Y9;e2dd0_>7B&6\m]^~H4ӣ*~~ I)pHHD[򕋲E!#MK6{ƓÏhF]SB yحx>T%ա@Jw2h%)]BYx;=B,6I1\Փw  Z0Is1 )OR T"ҌXyrΧʨd:'q5 x]8!,Mu 'a;~JTC&:0,m806PCsO>Լ٪6H^g|%Hk4Fo>1q WmyT;dhiA^2;-YPu_lvG>կqZ {[onX+C.6¾?boH٩Մnb'C<o.> Gq3z^Cǃᮆm1N.q 2Ѭ:%=3Sft5Ϻ B.K.32\ Xо K4ˡ h{v˛Z~l@j69q3B ߨfnEE3*4y?O|_ zoJQX确j̩_܊ETZE>ȀBjEdK+OTך0O*#O&t͛焎Hj;Tw /\EH/tqaP=&#U H`/TP⨥#>&:(EbV꫼ 쫄/Y}$/Ĝ3Y{n6(GXȀrPܓd:KlVaXEVis}`"I=Z=[ǯeN m?JrR)Z!Ysyx{"6#ĂP_t#uM VnCZ -V=10 9O7Ra.׬71f%=}27Pzy{Κy% MGRJޛƢFL75R1G:tR۾}4$>e#w(`gXnEY6 K.C\,rK lo̔%K) 6(dG9Pzk׀Y,Nre|ҽ^.7Cǥgx϶xnjWoqH}3O| {[S3'$)Y}6NLO^I酆Tݕ^_39! w̃[pm!@T(f7#6٫mTfr!HuOU4ɷY* B83_;>W6V?|+vHLh #"({UNkb}핞è1aF*Qp'QVΆ@ق)MAjYmC]]ҍD1H,7¬5T b%F'-a`!´9PNek}Yǖ)G.N+8#Egd|^ +بYdselc РżZAaBMoh~]zY9IpM:M䋉^ K"pN0:2CnNe}-1MUUPoYxՓ @0F;.0A/4A|t7*V밖[ӽ'TE?U!43r:ߪMꇝь8{[J}E^~+IrX`=9dZ0PőB#Qo* ũg$x.a1B".!9|9N/6kVPGįƪZƦg>xT6眪p7^:l@sd>s@Ǻ]s3]"I)Ñ\5bCx#( `QE.QLķ)\!ʳ0Rh.'j$CD]c@]>*Mٛl司^1: @eW;ˑ gCY %q+V0z.w)v$vbfOr8tWBIONJ ė9LosYRέ ve2p_]ۃ.)/F}ʧKc/lVQ k"0?䝤)=ڜH7,ok ʢ\_I ƐpL1U%|@- s:]GٟZ}89De6ZYe'#@Nj;Yk}W WS F3Ic* rv|9p_w^~mhv形vߊsF}$Mn6n!:,~^ez952GUnZY\% .!AiXӔ9MI)Ŭa0t91]`ī;a9=DO5{?1Zs 9;7ug 4#ؼA pYg2U"w4rfz\W#쫪s݃Gg-JgQ m6a:]7DZ=/bPqf>_&P.w.K ֓h&9eIfF'd1,,Fޓ<u0 eyQzN {qR| mNž}yhZ6/=Z mژ%Rf _qq^~|H断S?`p EXi5jRg1554}tJ{_N}1ѯܵw, s'vh৾w2j԰ϮY켢 ?K[\UC3JB'nHX Tl&TwE8s¥\x1 6XZɚ@mK11(>, nx.LI&@݋_=0Q׋ u1=o@~\q)Z*Gz [sM jo2fiTYqmMvhN^o ψ4;Fhh/4`+NpWj(*I #ڨ`XgE ;ɹh,'af64R<_3||9*AY#Gc=q}Vt# mwԟ-[FVǽS7sc6Uwp)N0cl[|*_$ֳ$j4>mul)ߗ١^u_ }T~dF=^%R:=s໣ /vTz)c$rELY 3~Ķi7|Wј/vv>e*Aj,u]U35T;dQƠ (am_(13Ndt;> ncŜ=i@vQ b?JR*> A%Z9 :i[~?`K1N9HB,h- ǻ4=_}U_!@pelpG?!:" b%g@BJ2LXBK7eH'zf$oz^KmSwhhV$;5JHR˴*"dڦa0$ C``~}Qr lI&C-1Wn<<`v!DvomE}^km >n3#cjT&[T]]#Me) E.R>ıĖTlNYmcQ qP'U_@z,5n'9s8:ARzOgD3i"}"vV^zj[cP`T :گtg)IF+&,1ލVͧl Y=n`j l:r㠦,Q@bg>-76".Ge[rjŠv`YēUoUI!0+SھXKx3UP"*bIl(K'B.jm`S)̗SR#`!8z-|ADBFc uq{ðw>SiOLbNQP?+6!XFh˒CkP@94{n1#] (7>,= ӠW auʔ莻P5|9š>,=Xk_s2(R/;7AmMiIc PU1w*{*<i\+C0{CSKfq́?F Pvzxqm$!S{`@H*.ynڄ^-os%"ӂuTSq*,)RWdL>( YAeN︖*(aR{ f@fv& 4|-;HR/J*QMI86g2OGWo `{5FY1lQ>vbNQ,8֣ kp@xz/:H]y Zq_-3Gl):^j0#jkq٫R9hzW83`p:>::Yt{F.ܓEeRmOJYL>Oxw9OŒʄ2p ڂpi~:@u{̶o zO2Wu?Z rI(L,?)LB̔E,'28[H 5:~{@L͵pIƹZ "2)ZY12/GP:e5?UAKυ-"|aLTW -hΐKn+ZzIpn擗N {Fip.['NyYsd<[/ {Jٔۋ=1Ț eg*0߆:e=+zT*[Y~O^b$b.gXX6Rvn*hX܁HY* !V]ɘO4#1&4t j{3m4O"YG"U> NZxu1 &[ПXԻgz>7,Vwu|o pf ^W}!}[m.rDxFp0rIWIL .n<֚UvSu|(FXc[ }3%];r|w @qnCT%/J1.4|ff= =G"c&G<рEx?&[%=)d`jg׎CN8DUZСKU({qVthi-&jWRVS=X0u! (uٔ'-}N֋Q%#ˁ^k[Ohzc8_vฦ0(4{*ӃnL-G%qM1>S4O*&nhs$gOG\Ej7/&¸ t yqىN{~^ zKޛzFCI }V%ՇjA)v%ԹLx-whaCU+1pm-I: {wKh% ac fbt&(>pZ\kVe+cIx<0)r`@ iؘ{b8}ےgzYSמjqLXzlp2PV3M[j(jg1©­0 m>&#)H/,m $֋m~;; ,§ȡL{['ܐkmax' 6}C/;ֹj) x|<ެ}m;%WJerXְ=~2"@ACノL*|;,%Ds{J;dc} M\3T <6qT?$RDQ]~idMkr08`rZҕX 0'$dͩVn$i]P_J#MrjJ˄_+v_]W=j%rFDYuXA[GF|/r`Af·c; gYwhCݟXW#`{@rO 2GV|"Qd?:4εEWQ[jb7/&c^^l5(%(,_!OQʠJo]idq*oxɾ9kmA@@A~H|B— b}^=~!.)l{Q!TEE=Ϛ<̻8\>v9(F{5O(6YP7{ ӊQ@k& -kErC\߿; S{G1KV(ͽk_(|}Q/SxgH{jЏ哷Js5mՅ-I䙡2؆T?q ,M$߮8% ʒf\h(^ HQs 7xk p&d xFGa4\v|G o] TͬR^dw=ȑC ʼn$9m6O:LSDH//?BdRmRqesUqHRv2JГ0H\ IF"8Պق4CS:;.*P x: ,x.Y,<Ȋ~'%93e@m;D`'Q+|-- m@) {Y6€e O'=ZCʁ G+1:>-WḴdemm}s(qt~cfd}Bt yxK'O<2Ƚ#1gҪ9pֶ$z8(7Dk28ʑ~r?VGR8[1&,,,sKD?JTS[v΁TkzƼzA1MRl؊7hG" l$[>o>5tqΜA"wNPiyy0ariEY+;>3AA/u{{kr'^g'A[Exgp)R&K9r{[qiYoǦߠFJ wOc$1AwOÅf<4Zb)6ܽȈ1)=c/v Lߐם򊆄9f)\#^sSʵkP e/4,ɒi TȂa\gXozLW490F+t@ 큝YRk5r3ˏ>G{O}_pݱ'87 z`!7ީޅsHТ]b>8q Y-q@vܼݽA`3,qYN?p)ؼ&= qfǑ56βhʽ@yi3GI%|ע|ur\ ;LANU7\ uCqbƎɋ'{QF7,R[4]qwO5J.ԾPh9pj=;]y~&ͭ9I옪]i[جp0?zB콗"Wrˏ4TKǘ9erգ}$6@5mD=h$k50yX lW̌%R72 yH=UI=s_V4e Dˢ7E y}V+uFW'э#q?6 PBNj4EUIU{Å? @c7Qߖ2J=S#eYs}৑;_ ^DҚ>2QpG'䐑*Grg~ W69¯L;ҦF*&Dz2@ mWNsx5Ĺ]);O;lm/ g!3?qc6؎?Ԉ[B;H"? Rfu@([ڬMbwV?H@rWt]&/+:cew[< SXxXki)~rJcvj:z;@TѮd@6+o{`n_gI_RAn`.ؽaCC6w#qw1?iF.x_P&{PL}b~7fgXcj߅Mܚ,[ėv!6<+{aEh \;%+Ol :!O-[vEƃm$A.m'd״T-i98s(gɦf'c)Y˝6N)ڑ:c?Unk{u h^2/2^!\{$A[:`qNn6V_0ʀ2l%UNhuC_Mm @l$^[f5f,hB@IvM 1ONyHa'#H1ֶgFЉ՞=|<:ho7#rJDޫ& 1J&p;` !EA\h2xҁ; d9wM_`}HMkɡ,KhfpRwey ☄<Sg U{z_GCe 3@>/7}ߪxzOF!G؀02\UR떼 wQ_Ut6/ŏƳ 3K@53m ŝ$}nw"@MOǏ+lM#(sD>6Aw?əf6ru^* F.侮B *Jsb_QuGoJOvS 6Xٖ2NKCieYW1]%y{6wMYb^j+R(Y":4;>l쐙Up!䷑ͩwG ~$5ښ@*P B~RΉ:q0ԏ˶@M}}W7#j8 f3-+O Ss.d8nhU)hLɲT382>[y%tgs;v XX2R\Dٝ['~:?h2O ,J6cE'JL.oڑEF}7#o/D}@(G\($M"ƕm36%"ήhռT8 mdk}}7," niLHI9>\( nVH0̧`5h+^ Ìn R; fe wRbn.ā4qNҐ=5v>0!BF1cAU_ py1t*X@ߕcot\ 2x0mF$] _&i\cV#*d[2V&n8-3ߋ|2o+*o]Y_.ZI~@=aY?Ji( `7 38Ry@'=$E-C1ϼfx+Xp~ަxheMB H%CB ˕I9Py t{⡠gt( ODO̥IٿwrN3EGi_o 7vv.+S 4^.w03]F˰l*,GIV,*X rsʄͤ|f2U:_>.Fh2hࢋrKHqZq6]994sP/ ǝng gDQG bS{׻6V+܋i&&\1})vwBb|! )KY<<:Q"gBy E7moHS~C0uϗh %MEUFICq+Ji핅VG4jvVU5 g˪vS1(Af{_1X(8#CV6VSǑnTl:Cm}JWw6ޭ [32 wN  ddBywtҀwd. =PěUy`Ds@^ښsd)>BśY^)^Iz҅. ]*Iyţ.?iwpM`q rښdX.j}N"Z/g>Ñۀ2l "L&jh 42" NvWy  V1[+gAz3-oM/io= | P7v/T t;[`i`lb=vLXHޖ&'i[a$Mm~(~LKX͉?DTgGsh\@7" >kx4\֝+ȊjDSª7ƾZu={T)X7pXgڹNCf?6KG^zgt'bDwTLx~WseaN=3g,kjQsdo"Ti;jj(N*&p}~%NX[=b$I4w{\͋3.*cEW]e*?)4V9sYgOP<`(pqv beU0ZeNwŦ %oI3؅H]W(՜waFTcv{"@7L ʙF~ϱVע|EwKOĴݥ3 < _K 1M.I3E+eNz|F{9{F5lńQ$j1W56hps Ƈ>-o ~OQi&ru}=HPB'mEfK>wA7OR gYdb8__V<m-Szc5s+II 꾢,;6'6V ,( N|*o8/H2FAllF?"xhbC7Ouu³I/Xkof`QtW鐙]~h[u?QYt:p.\f(&+J+#EhsX7H9&T Aý{pйq\]7MT`dT"d3)0&&_z=:Ύ΅ݛ~a1jО~E9~Td}06YϏ.ꍮx3[[ߵ$iWr%y;b7*∉E 5"R8*"|z̩s BMvnK1ɳe#N$7:Cmf$&:H,ڱةpLQ<)NmT3%w@ZQV@)jQ`RG܂IxT(jJqd3FA;X6ܳyB0<>rZdtO8V). cҳx=dPCbg!Rpp>oSdX('9C/a9 :K)d126&/\dS`tX9᭄V(ӡi7S_P( Sgh it mqYa%O`ӑ)ԟ?S|z3@*<>Ì] ~mGAi/&dp{mM?S?J<ΰk,ͣKۊR<[=տd$͹T`nmfB74߅ @ȉ^r_ijaA 9㹵*ቆ>:&F>a:1_k=Ѷj7VݒiRvZ0cOlz ʹ5Rk i$˵'@ĕ*^IDbx?*@(]5{zث,*-*$Ec JnM:Y" VcsX20GFC}H`z!H\Š=L누G6SfPORe0} d{U:uh$q&Ri6:YIkhTjڽϥ;A{&ƆF- [ݮdDP=_>=2c9UX#Q50Z2\[?8/ڲnsc:۶2s߅V{Blr &%.ah_¬Y傴S%[hF(Mo| '5u[A>3:zΘ!R]j!9lzz BPũ3qO{^`ك gӚnO&]nG>?V=.'ǸtFuXp &'f5uyEH !RZGtJN Ay;MaX |ݱd=шe [eMUTh $b ˻~WCQAx;.Mi4N]V{.G&N]%hgW/4#yO0m1㣬~Ą[\;W6Oۣ_BbtdJCvt"W< ֒R(w4>;+^$ՄJ s@ XR<ΕᣘxXpb_VY$fN{Bi EdJ*nnȘe CjP'?G#e]ql7 |Hnh'TpeIO@\z@9Dzz2b#K OBEIx~=g#doPD Fbd{vdT(\3HoO2y-.n Î63{-?8d&6etȇ.3dVU%.Fg_>D3 Bh2E^rASkP0EhuqES$@w[pƗDE+Hm9>~N/ 6Qa+5fNT#eџӠ\@y[{ 5f# j~Ů tw8+"D~W!yGt24/I/0'٫fbl{ZDm@]4Ҝfْ̣n[^iE,>q y(c6(%#!zeI?UԊ)&j}1L{%Gto pKjѫ|IsS8n,xXK1r &rVա}(m7(_*6 lqЧ-D>-s0+S@m-Aυׁsh[կ 0XXe~A=ߛPRT tzDlϧk!sf1, C35ˉ&!Ȁ0#-Fs8JDMZu>{9;P<deCk)^TS53y'7zWN`@0\.KA%q7yJֹ=P9h{ ^VBKghO3\șpѽݬAn⑨סyVy~'%\<lJ֬9>m C?'Fye#2AC#[3T(ڊ @R;4;B&0;k7(-8V`{^ *` èT13 &ȑ oT Zu0X50fz p'31IA_oZ#RObV)!Le?t ֣t,<@Jіr$7IJ7' WB 7w})y_|cH}9?ȌȰdZoT*WS9^XAH.1G2,@Սl;EV%e,iC{gYm lUv:r#)DDJT~]C_O߮гH&$F.׫Q<͎x$N@0nV 騫vv$ )p:tH2X"̀/A)kscԠ(YpE#*3q{nX pVŲ[2{d.2v6@sˋ&3+(d?E6SA XKؙH`XI|$?A"OD {ϐo\6YU&ab6%\zԯΗׯ=0$H2eԕ0{\NgO*@7+yY1+?£Bȅtkə/&'[ojܣd_/'iI.~k;G@% 52GJZ]@UR]YgaRq 4IVLBa9r ]zC (09l]b)|p$ߦ4eSHlPC|j#5HYϕuǨRȑ;R6F &Tu?IEu^%i!)p#&}{+`qГ~z(6Ÿ P.] '[~Z##pڨrzCT %r!ІJQ GX.Zigr2=(\hL~p\%F/|O]vk\l4w+BMV7'@ˋu;"p<}3yt%bxakR'9Y Iyzɒ'm 03Z\,4eUt> 3~MBmXɏ?x-1~9̰,h Sϙؒԉıq}U_ A 5%G^2}-@J5n7ĪMN%7og zc٠Ñ C쌼&q,>e7掬w F.!WZJAU- ;z5>3;ɇ.]|wN6̨_au'pث弸t 'UVWP_z {u %ox7hU;ՔL| aB߲̎@KS ҂3G{۰bS~O/jVC?!H4Fw, B ȗhŠ#Hj6`Jt2~y]x0T|wTznt vSo mC^o'qt )iЁK( 2KT3CS&LO$2EoJ_?<++)0TsJ/uP-G FA]B7;".QD[y6܂ 2"QbJoh`ѼIbH:s-K0N )ݪ1k8uo%ph 2ق̝\g_* jX#U^fn[u}7 d4`׌o6Gagspp8ߜ_ygp]•ߢ%ub庲)WL{:$'K^>t{1514GCts;ǣ?$ [V*sPq{ꅆZ[t9AD-px‰t~Ώ2húiUFZrP, Ǟ+=ĩ*`xG0`KΑ+3${֣R#{4ZIҳ5dT{simA#1%] f7ulG5|_@1ij znyͣ /41ݡx$os-ׁ攱I. ѱ  b_Tbw^H (۾3_sjGIyv_oL+)OoDq9OAjqtFYV/YI]r^P}eu>8sxBQd⣣x4솰S}+Ic|gC!BU"=TK|~D>, Ś$$eW4JT @?cZWx.Fb0ab'KfZ8tCՎ~[8 Sq|_pC6pOa4N͖~ۂL՛-SUZ Kbv: b' gI!tSԒl:tol4sm6gH,>dm^s-r *Gk+BrmP~#;<129(OGE̩twU Hښ5oͮ7(Y~#gs1Ep:wDk OkhA g3NUΰh/r!E(BQ0pޅ:-׉ElYq?zJLJ†+L*MpDiQ*$ `wV]mw}7AJB*lb2 m:xE4N\@n4`8Q%4wtiPJ]X`|C /T xBJ(O 9\ {]k}GpO ByjH'(Pp5Yɱup ʼvo3V& ,SB7w@+1NVd&t/i[@Z\5,]ήS}Y3]lamt(ZtQ?BX/nɜ4J^ ğ ua춞|֑ҮB'JdIJù7=6 B@a|o/_8lࢣ}Q=`!Vut{J`/r oIb}FLH/6Y9M'TObݲ“7B V}:{KDfSaxԠtv{0@> udKόTQՒ .?W-"&6W Pba'CԭWH_ڻrkP~'Z\M^u}~O"Ojm'Uf9ʋuV֗Jt]J9Qݱga~r %x2GxT|2K+lä$j:B'yP׌NwZxwyH p^_Ӓ̄XI"(j5 >ܕ!n/}˰4j8ې.guD@sKn-2L)[pҭ[ əAjDhy&B 2!!tx#OQKZ%|%OAYRŠ$"MPiْ8 SI$waYs>Y#|xcQ¶|"6C5^C;aZ *좯$zwїpغL2k3U4 jNNZ/r;CTHr7{LT}H=WI*gy"pd$ x;jK|\~ז=vyduAAO>6[oհ;BArAP@\{6#. Q%.'Nxe%ܶGأPx9[Gឺ%dmD̛‹G0|9>X& cS r*S?I*%,< E]47 '̈e Hu vQ{ёde1׌e!d*&;gӽFF/3go?^Zm~[PyT֐߼Ȥ"C>f %.N ys3{2@#uޞ-y#2w_9}HSXH}n̓ThESpo ^yYsdR f0L sט ]{CHeD;Ks@A] l?{T*tJ"ŝ JƼWQm▹>#cW@yAب;~:8^mIA]㱥T 1w*̴HU0i\>Ljwi>m\l,HO^8LU=B /s/+NAy'}ȸJ͟q8?17>.\zUfHu5Da rV F(n rSOOMm$P Md,O YmǢS}K[qQĸl_0 Ydn;OuYnuƐZgj(_~2 guNx5@ hvFI^4Pщ*1C\f_-]W& b죥/Ph3FrGRFeRb/5EG qP~mJ \KK_gDՅ KIVá% OczjʉttS04-`;(̔eȭq2jNQ\ jjrJ?Ҫ2\&gB3٢͓Ӷ۠Cʕ gz ,7S^+&{ ڎSHx3LwFϰs8r4N{iT| S3{䄙kH`V7`bEA|G_di̯_P=e:/|.=զb.i! $J|_Fh*n"XE2(6X'감XD|wvJmT}dᨁ 8iy4p*[ۓ 3xYD,S 6XE.%%ҽ. !YMA5+R8N D Hw)L#D ُn3YM[yRdy(R}nk3D=zab6gvpo)c(z6vKNy P8aJp Ċ }:FS@+B)><ƧRiz굓ƄD_N%fmǔ7ehbЛ}ЦNE+ )}- Ja ! UnX~144F Dڜg<,6tpcJhYirz:-nPX1&왣 >oZ׫ٶ~0$V@KYzT<1E5//>nԅ VKj.j|Hu7Ɉgfq+M|LN(\ud: R¦؛,?fN}&٘T~n oQQ3{1nܴƌ(b|I`_M-sv[9ookJb-"6Nږ}agYyHa1 +/e/.4\~JM`yC;mLjz[g7B7ܻ&T ;ytJbf6ӈu5QS {& ٠%ΞȄ?QO+p=\7iq!ۀ 7  /{۞ CJՐ“Ղ2&鴩H7e]у7(nLbeov'VabP>PH!dXLGpc\>N`"/RY66c!$ %@}P&t LowJƫ^-8܊[eD @F':Γ)EK,Na~t*ю lM6X'Dztg.vy` :+Si \v@aﰯ G ؙ:h}}È"K+@bа̧9p {@d|cLÄ o\GRPǎq1E?BMH'Y MATn[@s$M0 $x\~A ܪ&@O}+?;:![*TfiTgzvr;=!4gMG:tA4vJn͒=(('`r: ])5_+*;!.hCbV`٦i-5%j7A;onƧv`.=]}q d\K$tU=(\R-ڴԊ8j}ҟ٫`*d<̥hxc:y'Sh[o& -D;pf79?yq"`<&>;"ǁBZżR#6nd_)̢L5!>B_o{22Ѧ96m!wYD% H\HY CRp-e>3(j፽Өr0A60ĒbOJ%1Ύu3lh֣ҩ4>*Id˫ c1}R#\Yft"b*-̪1Ah!|%{r$'D by)Jz#Cl~PQkchЉ0N zY#6 61>ҷjU (- kMh<[ .L0MyuscGDٵbQ$%ޓhٿ,> 'wۡrwB$nGTRoPm!!QK!h2o8`l,xUdP1NRK)΍ >QorseokL=Gw?iʝgaYn*9 .i(Cm)i5!_r[8Cv?֩3Vœ"(Vl,* Lp@{P?fkLVb?{%L>ԟoFa߂sJ)vC(4] h\8?l)IPi󔄚OϘNI-tAmp49d<##B&ї׏qꗿ⡳>$\h Ԣ]'qM ߃t ۻwD4c~ u\ ž/ZX2h@h3{l 2|RQ .o6Mf|SĀ`vv+kh~*Ά7A(kV (u!?F,v~…;LKoySet^I,?**F:f'N% ֑1{G);Axۡ} = sk$/̠ᱺR1<$xW,x(ΊkY̮zj3'G$jUz7I{̰B6vF-dy4M|?UY^G"|& @KɠI7?8o(3JJipu {\8٘W@iizqxQeHw A^:׊Mhr,/C5ʖ0'1 3BK[Wpzs^={!N[t[\G,%ZrǀdlL#ޡ{R?vT 8N,J ;fgS>hz'-vN}K{W {EIӜf6tbٹ7 8 WҕW.C+Ұ}==xkO@I:QxX(eD+nE fk_wfjc_^Y^mGS ZhA`υ3IxaU*kvQBӶzMLu@P՘Ӡ߄p/$ ^,O/ 3SI]IwnJ͠}a)x&4{X̊i:rUd":z-t Y:9{2:HM*~@W[Xo}{E/HRYc.7_X9'0@X;#cDRT(pM׾7Ǭ_^\cW՛ر>7BʽzKQHQ}TQ^n} }[M|u(XUd@Dc۩w>5sD]S Sɚ1g5}eb^Jޥ"[lcja1IfXp LwP:Iz\9PǧR+2ɤ6JjYP1mؚR %+g1/<n3csoJ.h"5͊avi+*M#j懚]ŏyRzCg6=~i{ 4^t8UĆ7MAҐ>am֭3 U8M>~+QB1t8b+ &ûL@}~W[v8@exҽNMi.}BH-h䳙; ¦&O%Io;7o9 07aX=5|1e %=FDy>j^mVz5Y6UlhthuB:{ -b׽,8ɟ(ui:*Z@yl0@HKVi|xb{ h"2\HE9AV%2D;dmET@W#|npnZmti4Y~N' `_>ECkmv}\-tjs6L7zY}ǨYdIOUy/Mb]k[_Dj-]CÉnz4"Ů%mzO]e%bc _`np65]me/\9)6@®'r;#DeIP$ny"`MpyZSt]Sl]h6x*\d#[=Iho6qHoČǥ.ƋH"H+]9DŽ=pQK*h&GS~{;u(3#6e1O2vM맊 :)A^MH"#{뱂 cg]J i7MOED#Yz%hzWtg@͛EbVaPޯxEeolF,z`fDr0t ",]B|z̿}JcW389[Q`:R)B`iR4? S/[WD$DXkRW@Lx E1*-KʒJnq7S]G4+j4nai>XIPA3YU+ɪV^>r#Z0+X խ4xzԋk\ފ;0aUz+b=Ll>aoje\y6 Q\xۍ=6%`N8J+7eE-d_,r&kP(/71jrj S3p."R܅r?qg,.I>)=7nDa:$mM%هBR퇐BEk@+)&:"oGo ¡1ǹ0O(]Ksx[5i>Y$'rMryM`¢;ʟ-E섘ę]\r$㛮 0 w.\S~iY!<czVMn9ddmj#wSF~eTЛ?}iU;V8^"TۉOC򳃋dLQB.@p`j#,=^Cɗ%c~˛]=c(ufT,@N~uljGy⧚1M*_{O"rv%1VZ.m܈ 9Ό޿1~[~RԄ56 ~VGhƒ S.!w#K<%:yl64aB|+Yŀn~L>) 1""NjfNÎs _fAƌU$GrO{Yv>X?~ьªiJ)<֑q_`7n#)t _|\pL6ert0 W("w9#>4OyQ|Wtv(y=SKڞn ~:ReM[:3ȇJ-+Fa.5#Ӂ \VsL^x)5E.>GD$<{K ځ aRBq<]91 1Opʱ UYO~<~ ydw 179G[Ofl/v~!"ѤrA&QOHfS }ۆiY-K@t?߃=p;0I (LPQ*k0D8W%X`%AHy !08GjkK7 l?#9?Q{b]Z~۲߱ m-Jn/b:.W%[&+FW=e`tĵFINl? }5TfmцRw~>l2ffeaHTG.Р` L%LEK{YF`ysE%m(]tȼDaSCz6w2rH4N}8sJ H@B=z^5pO yE!2/ܪc]6>1rM#tq1nBYs9?fϽêmŇF[$+p[J #>j)}BqQ7waq,]܊\0h\9PYLj°grDĎE◉W"!:Owz3X/ASPOqJZ0w^`*wA$8 ZObq ]IKTJM} JzO|/*_T 7/-mM"xSŬ'Uy+'.*r *Ab:?o#;ֆ]`hhϚz>O~ݱ` =h)b/ˠCʾ (acOѦo S8G;ɱzֱ^hrfnqs@XsFvSJ IcPz m%?.>%Ű\ܵy,ITNFW[9GX V?!Q9Gba5q~&Vғ7EfqIwP 1b>cI޼%X ׆tMpnXNg>b4=' -#ʨ~:@C <"D*Wڢ^3,S#-դΉPCR?Ӛ$Wӄt/:g_=Ȇ%k ! #yeI8DD̓ p̍P\97'NuQkB j]F:U$'\Qe$l4}İ3?N?,WI[,oI.6K!dCA$2cңǡ?-"GO HH"c:zPe ̡C ӏs7D36N0B {Lvq8KyPMEOkgii^{QuU.4GPxܶ8AV,\BbC~I/' %he{fx4q8:SyxG$ɈN7jI ݵ-Z=yI nk1+!3R3 gf*6f@%?걀Y(L4-걱 pX>l+ LU pQ m5BY*fڹ9уS$ЌS,ϓA,kdoNҤZ!/vuZRMhIASʿRv|+ |1v:Փ ykVːܸ+Mb8 X6$'_mPhIjKj6v)H@91- X*l I 5uɵYp3T8q|8K^AuO Uho&ܛV$a8܈ȥo`cf t 0)Uf}R*_]+),O=׹a|⼪[] A7 Ji9+h !z9yi^WqyGP- =}HI]K>Ulpw !|~CXyO$;ŦR P1vVlhye+d;KM,*1`(:SY%jO4 l^klx`bP"0U_44 v%QO__zźiW"⒟XDycWqTJ\n%#ag"'n}O?\%0*&tuT4` K`n9#k%)2 ˀ/<'cpfo\á{_Tl-G8DSDjN|9i2s8<|qDW# 7`o`Cde}Jɯ5lR3Y6nwAqx _j*7@!OhR7պgdޮSqOa9I0nFhO/6jR 5I!t6|Ҡ<ւ ŝPPZpfWh^m/1Ք6@NȱoJ 2EJ6K ;W)? YKh~,eTJR? i'ߠK3 =e&~[1AW) 5HD!y+2b||y+~G{CGeMX=ƗǑԌ)gx #L΄Oq'j`*?N~?~oqhc̴kVMbqQǽ܃J,G˚7_Ńaeql#!#~l錝ZvrP+;NJn&@2pB0Ii%_]*T(8V]p rZB| iͯڝ#L!OtB<9;.8nϸ5]i׼sUP@-~%FFM!,e>"州 N~*w)QVh7[Wq@a' sxr AN^s9J4ZTР ~ -h8lP E*Ifa|+߯0"=!F2a+,RSX; 4JD21:?I){0R~J+b u+ck%Vx/4WE sc,S+2t UȺ$yҢg>6PGo3{~L3~"ҐR9Pmݫ$6P 8~D~Ž=(cͳr(fԳz].Gfj\ fKKNzkSPrwĮ}1<@?^?2eGr˥T|>D{Q9#D4UMSڍ~dTZaAdSuf٨' D'Azx p(T֯䅃_Z(bB_?58l+.1>MQ5KΪލt$/ŸH)N6ɆML))uWLz*{R NlqVteLX~]JaFQga,';wl1pC6>f4kZPTmB&H< tKA;M ~/E8Turl]>M9p*'E 8UI~dpr+Į[gǴVMŗj4[R# Jb1M`gf!mܫZy96Os~E2;:\4f_@yps6. .~ DjZn'zW̾7".BaBJ3~!oYXi{, D2 ܞW]%3;=>S{6G<ٶAE“Uu58t,0Rd%|;{jpђ֦?*UoRu!ICsq-)3ݐ'g IL0R 0 ]nA,܍4 Q,adu ܵ#-WZuZH$42˥aLHs//3%x@q}h9wNLk> B^ Xh@y`y݂^;%N&Xh;tepn3f K5z[%V[wrO8khn~j8?I*Z%*,nDzGXK( eh({$EhWu %/]nIi PA!<"f=7:-Mx G12\lJVTDkjm K}@hϓYtYg5H˼Ȼ+ȧ/=QZ^"t-9m8Zܵ^Ow4%%XTvVrCn-pƯ =xՖO1*E$ލ߭&RUUo m| iaiOxQ'_}螸RZ0ÇB/ڷEZ}njbA#𮆹tI@hqe&_EAbG&R7&.,MMlk]#;#]Y6 {kz'^HIZB.MpALU΅^TOOH ¡#"ahX4wyclÏnT%KYk ['ƅBqTg}u߅Ym^zwXH~Ls0.pzxs0Y߉ 8zCsj yW vDCi *;J_ˏ){#tneۉ4%s+̧^CGZR2r")H}&)7wmX:āڼ|VY\mZl$奊a ]& "|k/s*XcB.])Uլ|^W(#ŢO"NP;0q7m@R; tQjUvX׌xhfe+fxMIeDN 5'zfs"iͥ|lϠJpz\!8aroiTv9:Wo2i]TL $j窮|L6J~ 2(Rg:ׄ+/=k)ʆ TEx|p!fqCW1ÔgcoNB^"f?ms}l<"pߚ HѮB!jZn{~./j;*kfy8)@Bzk&ӿdQNĪ}3+v[ GؠXLB)cIɊ캿'AGX/*Ž7-cua /|Be.W`dy.庫6>}bZEJ=S^Bi}/B.No_YaLS9ˡ#x $*^˟_blP7tP65V2wZ1_;GFp/Lf`v 6dvLꇤR:C_-@f_&%bI4P2w1++iZU9R[JLioZB.?dhVl#35껳sYjh%Z-s7EvBBu,Hw:!qq L)Ġ4t{T>آ)*4Pl"&>S>e!MTnŰ 9=j)x*.-nqp? ]]D*,ti w| TX2]H [ Æ߭#16B}նH'ᦟ,1p]8&`稑Goc%c-'JQ10dI+l^:A㧤%#@H*D_ E r5; kRŭ -d|%.u|mL&BnfP SN$ I/~~ߜ m)̶q%Bry՞^.Qב-X,;ϥ@c.\3:J?_ۇk4O}7  3l97ؿ`&cX0cTe3g GC2"0~:GZ҃`؝YC;`-rM'e"e+Irf =c&vnwn74IΚ]s:RtK*9D@mV(OEgUN42f|U@P 3U`ͬg] % 7$cn|CbK\(_0t_ІSn 5T*ԧy!,M4"Ђ0&| RM|yh1:Ĥ&6ɧ5n*qcq2wv᧯ˌwJ)*Cma`P͙TE^ѩ[Ww-vlToHq82klWMBJ`k57ڟ dTWnu6Ҟ+2_K ydj.eèKbg$N>%R$̹֜6>ى`2x1w:Ƹd@Ed0kQwc[hR:RGS zK~A*f" ]`o0[UEwh.rv1r@)[gY\{=)hc]}T56Oj׀g Au]CWf]'dXORR>^y4T2p@АO8|s$+崾pc t3}:i,; #A=\\zY7Pry`| ԇЊҮ.\F׷8Szf|J2!C!3J wg9r-`3'#.m\GBkdu pT@If*Jk!ucǡN6 !rldpm795%Z(jxZz ^xM!vak2)px?\9mܒOiF'q0D>9h) e@GWw` Q$|ܛDPq 3W4ߔd(71Prnv~@d{?uy?AzpM6B?},ݟ);u8,)+#@,z*ons%\٘nuOiJL,DC6\{kr%b2fV}L :+\SeN%16sx\^EW:CwhKO(C­;4C*OsUVuD:Y]A,D5JG?M?Nx`S. aįdd>`BH8[%7$dYQU.=P,:S{ix @Ne0EugSde +}\Ya.-Q!d.sC!ʌLt^-Vik -%RmU~S& 0&)Rnw ib|ςbDx/}btSؘ.?M̸}X*=pB@-K5uprx~`51MKO[ jSs%[~qppMJ; 50\#|{BOBޟ_`""Tv9z]ABBO:)v9.PPi#JW\&BSF|1J}{M{W5TXlKnVh3nZSCX$ZQ<];YYfC6{׬)&.{]^>{yZ;r3m{݄Pw.QD=8v 6z 3yM @yIA?ǭ=, 0eTVɃ0~|_!Iέ$C"0" Zz4%F-!\VBbf:bm02H<z2iuc|n(g[?yXkrp-Wit? ?7;R УUqD<]|֞oTwS\K ]n\_N8F@Sr^O'l[%1ȅAݡY5Cw5tk y?#E3RuFLƺ ~P!7a- R{ iaecފ~?дIm}nXPfX%KY p'"JА mY&VǏYR.V}yKW}e 0eQU16#I^Qp[Ѿ:(8ƹk <1J9qxU=]D֑h ZoZ-sǠ#hRjd_{iTEp(\O$r䤗U)/VA <8 })y(=Rld\?zV6J}o@) B[`QRբbe2qq뮖j5S9&W_!aFX1, gq\, g*Ч%mO//LcklA Ӄqjm,_Ja-ҧ5y#-֮9nPĉ`UaӞãPc_8#y1}7bOb1Hǔan+v:vï-M馒H f0=H>ЎӺbe] ^)Ds:fŭoH l,Xc]P;צ =4j1Lw"g RYz(X'KWg ۻ 5Kߓ2ԽQD\6}~G7x5PUo3'o:]xé8؇O>/ʤ~թ)yR2=co֙>"cw66YѼ-]7sS+}ÀԾ\35wY Ok=bֶ\Y!^3[YY%mV){7)M/s@R]gSuf7nfh=$ΦBdD{[WDE"]_lT%%(hN,>=&ϾVz?^*yw:.MEYy#$O'gcC|"k3˛Դh#ok8vN[qB:7l]ǽfU{4d|:qժȳu`A%4ָ fi;nfdO8M$p~b .'}R0 bswBEiN RP_mtcoWOκ byw: *3Ir4GmD "$;ېh0B| t2t6Nv{C?w!ܖR䤅5@cN"?q5X9P5EzŭV\EfcJ^,muVA#go] |[\f_@( @00A">#|EB&ޫhgmT(/e.IhE]FLzg5CZ K -]B6ib| ٩ FhZ?ӦzSͰEYE3p7Cm`.Xt QLvOjM-![TdTP CSЁRc^'/FJ& wºӓa X'N>P\`@t>c=/?BXD2*'1!If'alah."jxz-IV 6A>sZLr\o t /䜵Ƿ 7GdFYPZ'm6~ܽ(/G>[[+tTR\4}*N ђU^ar#"s]*횱?DkLh"c=[`2T1ԗ`y+<+]tv:]s8-itJJ&-elDfH V|_X4͉ /&8|qǼ6R?>CǛ \HcN"eN[zw,]E_?E3;k=ts;7-=YT-@#]dAI^WH0Dk}>;xWERq4BҎRy|v0[z6QtJ7g L aAL=NkQ5!"]3e Jˆ,[ X睃%#N1Bׄ.hP=`F/rPkEJSy&-/EaUj,0'MIA<bٸ7|tz?Oz*s[y |GpDqd:6{ AuQak"\hDRs\OH2"͑zW.#L0FMyZ[܉n$P䲳 ~.5L ^ET.U G(F"gmaWя_b i z#TJaJ˾ zZ5ngiesDkH7yitNBϛ>t,f130K</,D¬GF I#kֳp05C?H£)˒)Dѷ\*UvK29!ؒo;{=&7kj^)[Y`yD ;7UJω7Kj㼱;g+2Z=Ds&Iv;0x +% ?C+30b絨>&zJ#'',ӵ4-MAeFvf0MC"Q7gap~ S/f/QaJo,SІ(7x2\Fs1 Y+:GC:Bk{rxW=[㕑'p1$Ȑ°ݒVa./ٹ<|sA$_. g˝UM%e]1T' L A5X=KPA&0Vrn=7!;541`F">wpӊ{QL~lcK-p',ub/[s V?Q"Awhh9 }kW޳||+k-Xw,)0ܛ]Y)iR-W]^ eԆ5.1ZEkQP_^ɾ|/)rZhBu1\n <Ȱ`mF0wEo_  h|&ԅkS-G񿏱mcX=<):/3p xn (6x\=m}fԠzqR ΁8*zNa[t&B@&rDՈjΑ`> }\;t#NoHD -6 _Nuxec 4 w6\XʿHـȚҚ4L Hc4̈\D~R9 Ç'%!˽ӍcW1zPՍt[ 6@zcA^1G( l#D5ߙ؃kW';|o0[>NGY: CNɜ3qTj#yKi h}1Xxaq  $)>RY3 u5 =y0@mMyX;8n1(P4MDa<ѵ%.3e`&VK8r8vk5HuO蒑(cD*^Vv$wR/' 0j(jibjh:o bT>l_d>s2˫ϻMB$~/y(տ4Vl7Z3:ҠS^:P's?™Q@_ lIsȐbvWK6d\}N8ņ~r[{IU"6rT WvCH\9Q0rE X΁ʓi؎GG2Syjk(${F ܔ)Nãa+%턄)sl)+d>WbZ̿Hj9VSTӥ2ϯ$A"o ǂ?5H=+-sZ%g_0ɏZ_[{ν ?FX./))׎a([hDL2d$TDkjTj~Muu+n8$/Y.*™<>gDt>]5pڎKǑ1*_/ $#;N͒ll>v:`}alTHݫ꥜nG~Hg gϙ5 U`߷방HګD+M+{\[ĩ *sKӸ/$t0`!3y^̶at*%=sFY1P}/(FqowNm3ض!2:=OI$SI쒳K%z'P1izPZV_+jß?MoKZI"ثbq eV\lU^eJ,t#ȱ\m4#!]jlJGֵso?2*~60qޤ5D|f,莂E )Pdp?k5gTa9 t>o%{T0qҏfbS Ɛ@7<B5at?ZqnV? =Rs[u7Ÿc{My $=R:/#]OCX\yͦr ䷊_ }z0}BMRmGZq"_W֭^#=W125,m?f?x  &_ZcąfGpwWI$ y!AxȫDQpe.lġ1]xĴ=;2shM(H8МpWNncy?0C;{ilI}ڧWX<~q4tS삟4Az* c n wFiMѳ&-'A$Jb[˩]~/~6֗;ĞmfTLfw v9t;[pb\%zxY"nNPg׾UVȴ /ȫvnGA`lGjPVr{pJ૱\JLvNTsV5+-`Iې eRn sD4=_ݒR؈9uX/צPN>-i=m2RWO@ T%ٷJ[6i%&^)hMFL<Ƽiz(3< I.KaHr.2`CWuy_zS[!\Uk︐rMN:4%tC5C`^efWt5"Ւc>|b F"Gwڔhua<~ K&mT=|{{ʈv]X%0|N.5o+G(tVWO-OBR[g{E;U>qw࿉cC V"1]vEז/deuQoS-$?+i6NUQݶEHQ]#^VbD {D`O6a aTX²Y lpɥ!xF3 eHœ`~//EV5 )69ׄM$'Wg3Fp}L"Wb25#1%a04I&^riF}]Lq*o64eտ~% '#>:E-ʊ}{[d4su}`(6§fD^BHA+{ pI) OdH=I,$UUzG3.@oH5˭L| Qя+O @B;uG\ 2})Hw s1K^VA8 bgbA^ɨBՔ*Ń[b5pE' xø8%Ԧ1 B&1%D -C/b'z 0ާiuԦi୫B`/I Τ x~@xl>eġSXP?l'2&Z-t|={Ng)sLS᮱*Y5~ڀ<^. lf**8uJF4\=7'w+=%cհү +C~0-[(JVC>KuWVt`5w^: 0 lwN >.;Sx'. &4P tN(H?G@79ͮFώ>zѭ J=rx&2WxWk]bQ52aԏ c'56e zo n)]owSS!}7TCLlK-o4 /;rڸoGo}7އDL̶C&E"@ '{S2kN65˦,>rW}A4TM!8Mw^DYo%=gvwAMpebI*zi5¥W5"5k-U =Qظhf?UOUc~lQԞE8"SDbq(L~`nArEy 7(ϑ% SZI@?5Z󧖹CA,ͦ~8%&P Pygzbp礀k]* .Oٺj2<6Rr!VKw%İejӽCMf|4 lOʎ}&^B&gO ظR;8ôFSJxɬō X4FPԏMI纩 \aRg<``gԈ L({RE`LdUd?Qz2WTAx5gfϼFCU}a+Cƃ`ݝ3d۲&G$"X*m4XKdH+ V.mٽkԕ 9 6Xd-BM rU]=w7d̫ĿAD5XmMS pO' JԀNeG"W6q8=3ϴuIȝp$&% 7 իLG~I:@wYށxv{"Q-9'ٜid]ŢK51"=ו:e(69@:_ *W0P7^_'- LԤ^(jeyHeqF zg¾Py Gu׎,?@򐩝FmuLT{ %}) |}0YJǒ)A[ `W]=rvbC{Ʈe9U}t_\?YH^#|`k"MU+)Qm4O˨K-n&T@,⥣FX{cKJ~}l?''PNHOovum2;7޵D32&Z_ggn2!7(mֈ)}68ܝV [H 4lB`, nL7o㔜U2Vң#St5Rҥ= 2k=MZ6ү:{MV"g?'un$Zڎ*ҨK ))Ky믺U&9bt}gϔC?z緼zThNOxf;ѳe摷DSR梟ȂXA3ܫfiڅ b>: c,AóM l@.;>/i]TtPNWY ܒӖsD)y&Π`n.W3` |ќ$N' 9*v#:+?"Ko@Ehe-ɿ&"\Hd#R8܋xVn GzjdnG007'sd0;]4/" t1YSc;jPSL꼙< `&* ysN;^('}gE1lphZ/f%GyQ|?7t"6p&m6Vp~<7Wm'k׶=K?a /?ir;;9CDHrꄡꭸagOOUw9{^ 2z'M4p+uw;31B(1tjEqܛ}>bgߛʁ Ѝ3. ʔ- d竑X=ŪɳQ*-YrN| eHUοh2U|7|FRq9BJ/Qn@lN$΀ '­Y]yJ/ָBmd; ~4ASk]XFK(GvpMSOw^%:@9p3,հ2I*ޕB&JD†Z Q| -z^X7x]?+F>VƉ՝-ƋX0+9/4&1ɒҺgS_9~odˁt%Z݄WiSҼ4I/av,?,t-v9p>܂sz6Sۻ>KVO` XEoWo YPI_@HqukQOa r"R(h|j b;ZDP}Ed'X5N3| rH)G_#ͭད+(B&8I](#aii?\JB;5nkam@!ˬMM/ߧܮŅL󲈶Ńmpuж~2ȀGCߛђ+e(}d=vT7ݣ,3…ؽO\G_3lRn<,TӜe%$.w_OD_$׍Ļ{v;]#zi<"y\~d">d'`ѴXT3ẑi|}wb&/ { pG(,Udm!Sg%13S?3 @^_QSۏ9^0]vfamv<1'vhbyBVB#-Sxޗz;@cvhߟtcV~r0KALdWk ]LT|d!k` 1~ȢdB/Y΄ṉv[l2Zqį3>kVG?~X $n]oT}E-MٴM9&p:dwxTYހ 1oH\}(>e&A ܊0"c]:ƪk"u/{:{PTM YXJ)+Vb/W&%ɹ"1= y/פ&wClj}͵$\~AJ*ӻ,;վ,P%lP&-CjVF婦ZMˢ?eOaY!ݾTp 1|H@S"nXgrdc5 ,N~C<Ѭ5(6x$>L,G@o:&~RS]%_, :KO64d6c`6g '0~j+SK]i@kQ -ڄn.۶HB%Eܞ+7Y(?kbV\6ZNmgQ@ w7>8L+w^9J,1PtnSI(rW#V˞a!=~w}mҿR0Y8"#Ltru a46L͹w~2H^?yT {MS.B.߈*ƹq]j]toUp&t[z蟻AВ)WЫiDaq$(glNj8DC0ޭ"mr8K"< o&r"M=Jw<&~X:̀@LF5<]l 07\lsPܮt1plʜﱩm$,e}Z4,C"5M.| Va8kքui5 wDvt+\դЋ^km`H >Ui؈3>1jM39RZ- !F7ʡ]4MAGp~N:Oh6&p@1.âY&:$'vKGay{~[v7NҔDԱl߳kP+%RaapC ׿$|]1A'lrj7zfR5A;\㱣uT2ARi$R}DlEY ~j+ EeugX(&Ʀ?%,E38,ت DLՃΟ&sP9P^V;GC'¼Q3x0 h"=?]<Ӟl) h†\Iv$Ko'4g_#)~yZ$[I&'Ñb#J67y?شf8(=-ϣ5vY~o YMOK|FPCE~ ۞4#ъf.lIqj|vXKd(}KFCkYjwJPT9mp9Ȅ]=2n)ܖl iWk&CT -K+$@" zM/GI${}ɀe2'UtP;~Í??ō%pA=5luҤ@l 4IP,:dGǔi>Tz<'DO y0JqH +tvц@i#|݁WZNVk0$m=y]s6SJFEj@Xn%6>C>K^2&z|Da}W\ڼ 0B3GJzTvoa忉HLyKpYaQPpؓ,HpkOwQL#YiA7w$I %4*vwNY+]Լ2ʐ/< 1#;5LPg`e E"WIٟYl,f ?*G4ˬ;I G#M:t$4EjuNʒ~Dr pk rlpl4 $/qtU5YȪ%Ůtdc1C(B9z^QTR8W|Tfg6ˠ?KȬQSMa'SfCej)Bd#{yg+wyW4ϔe U/\7, Dt2_0IDvg,YMpL+gDPj)|2V>0Gi%BnVjM6Pol=NͮQ COi' >KdTp-MV/M#?-?V6 $2ted@ĔOXO V<ij~w3N*(7-7a[R/\eMW^}rQ5_Ğ@s- "L0b)RsC؆JVYncoN OE{8 "5SD Rhߎy@ "eO0ڶbQ?6{lFd/.|8bkxmʵmWT[ۈ=⅀/38"Y󌐂BDN}o-=I$mˡWCYAL-(tgmʶ!젚BqFa3usZ{$} tI:Ha5p^;j^izt~*%Reh-EQYJĴ~{;rOɩ|H!VQpd ad Za| "*Y :{sDI}K^I0 j\gVjb\;Ec\96Is)Lh7"jS? #?%)ʟs-X(έ(@7 /v#}ugE3;0UwiH7ο>ع{Q7i LJn^o81{?^C'^h83/!:Ʋj4}S8C,lVvJ֌bxI,4LkhՆ/~.Cʲ֧΁?C%˜.O"xR8^qoEQGCSZ7sl< a묒lU[ǀv0 FzZ8YML+a2\@TU,|ǰ^I XNr$Oxn8%CLi4;A W] ruLffTn'jcnTtVq'b5<'\|3+ !%owJEt)Q:('&ݮ\K*I(M24~[ƜԿұSH9( k5jZ;;DX2p4*pGgoB~ꮬCLJ|Љ\ Nvb)1$ A-"t>%"%ї_{7b^(#pjpƆ~\fGa@֮q(4X&p'V3H΢{8%DKhܑ| >f&$<_fq'1 jGͷ$~pe%ީOP(bhHtUzG*m;HX @"$i~b8Apa'項+cfHH<";׍.Iӆp{3ᓩ`;_7w^ "\_G)jIHst!g)S%"F&|x2 n Y7_/rfbSQ//w"^P.d^Ai+S֍heصԃR^4z"BHOlݦxZ!b*Ndv*AnƕNOu5O # ӎ9cS! Bh+vqBYȘ_  <^ 5dlΧ<,QKN?<N:`ϡsKjYr㓿1ŸD7UM]OZy1j_W2#HY}b|ᦜ81ѥbbBz9QѺ;#|yf"n3&:h^>=~ jLClm!6}=>5&}^*е_pMgJق0=۳OW޷};-wÅb5wU44/lt/f(\~WПѥtJ%P/FW!X VNxwoJ4uiԔ X yi1Xw7>ة# 0 .޸5!MzL>8;(eiX x(euøQJ#|.%[\vE%9YY`R>rK֜O'aLkQH…4tޘm/"QQx=౤S<^+,}!(![7&w0&29c*t fL@BYx%p4>3铟}hC6yRhѰŪtiEaAv՞ۙlH<VlEDB 8>c6}f*m1v3"Jƞ R WO۴PX# FD_k^w `y`W>\z'4 yQ!4Y:/.8۷HB.Ҫ26cJCX (auTdz $#IQ/Lh. ~y)Bһ4v@"pExr ^̈C"- 5lI>ЊP.9ad!^I8[ũ{gA5ʪ8͞mŭ^)P˺ MZ>aٲ$ԑ+`yLwMwiJ%f evq-3Cl&/;7 n==Qp/nꂃ!tMN8A{ n:#_GggE~^Q/ݠU_/vG;]VI+T %YħuL0#K&uVr,0Z;ȧ]v@ H fTG]esl~F(T_P|&yfrn=96`^mNfe}5F ؑwiZsᙃ M=q:byY_bgl\iN@Ϟ v7OC}+houK/,/㒹:rR 7[NnDTV7EUI"c rپ9oj3KI e,)phm-be36Hw ,AZ?H63o~xS{:G5;uAn5ݮe$r)/Jݥa+dɔ? ^Lx"!/~o6#|{Գ}4(]|:g7nݎu!:gp+Ɉnm z/ RBӐ=h8bl8MAQ 1 'ZJyD)4+,tiA>oCLte>Y&[ vtCjV(}%\g4Y_#kmhE聂OF(k}7LX0D-46ҭ6w#1sDg%ILeT¬HԇA(4-[ GPuOewg5'h[}vf}D1:т=3ƃc]گ20j?cJ6n$N}zw2MreZ ER8OdPl:}9asL#]qF4ce+uЬ%GcO% sL|bd$6b#q_ Q+F-NcD^`+c"`ZpFnTUirw+'*7͵lmp_ͼԾ|JSMj]ζT8n I#llH.h'Atd=T 'i1$2"է{p jKNMy_V0>*p$iyV_D$=|^Λ8Ta?^,RVAe;kS%#?:l >/CmG 5 K#Gwi6:S-/wH4S;ڶނi [-Śs\{&a*ʓr^L3Q!R/A9Bsڣ9ׯ=L,?̃?S5T!Ո yb&$/~vKBh%, FNT+C63\֔ qB;C%@K'Uh-w/Cܝݙn ӄtiVH >ݰ~ތdAMU-g `}M |>iK;}K :o|Қ$(Kۜs#HjO-:? d.o5Ő@_/mWm6]հetῥ'I!mC0dRX6r;%>'۔IkڱaڢoԜ`~SB%Hrd0(5zⲡ"+6ቯ,nZ?DB"hϧ-/ٌ1A\(œ2mͣd^C<3=C -Ts}蓳+SĮ".B4@΅O 4 @;x&e c}^{#`YC뵙9%vG)ٻެqWN^7QP2Bb@ L ud,|7¬z)ͨEY9zvp\קC IвגĈ[BN \5]e#9D;2cN%N ONW( qՏ%8/g7 c[ԹR g<5CnIG%` Z}փ,Zr*Ȍ kqBח:dQd2ڪU8 ߺn'#DV K'#昙YgeUNeM4aGzoA Tsgbw}) Avj5%fv8>rd"nF!MS9;rcGCb_S5ዿkMbmni6L0`b>vf`ڤk<^t*,QjS#G['cfurp`<\Y)Ds?~=]% B>5j"+X g/U١D>?2z_IGt7&-l3j|ϊ#2"N: D cbࠄ [ZMWq f_u hgs넬ٽ_G14^ؒbNm~)a;-6JQ9˔XR?@qy[G2/tܗ9@iz}L<w+0&O@K1xw;Sg3Ay}mPDDݴGBPbN3h4RSy۠RQ_5' {XVǒ`T~%HWG yLe `LBИs4v P!Y 0?,a-?Z|J]*gG(N`0Nń [ɯLA ։CJ+J<-04@b^J;СroL2ɋ^8;GyYuhìH~josKpInOmW&$RIh'Zl’?b*Bm Ys]K|2>S/$qr=?_ G9k b17_ U)4X"/XU>Mn:|9?53g!jvh2PJhFv@ )D]W;TJOHg=WNp ?)μ\J)V%^W aTs%d dI%ǡS2k$C*֌$@u{~tϧ.T[,hP+Xlhw**1qޭ@ ak@1cVGQvvuצ00 z`7Sznocew1n2T+:ryH2M[&1TpYyo.pQAϝEC8h]U2ZStߡ6dw{B`YIGŧjrl@`RxPXAXR 7Rn!Ɂn9z2d\lY (ЪO ,K:ڰvW &6!mFǎ)y}M'FfR̅69Z{ 6d$Y:~$>bPZf~wu Mu~r1=Q 'L@v/4nSQ-[q|o{!Q^=wf6K?ǽ.J֘ r /:߮r-OaH>`"kڱ';oWu^gi8JtY גHN 3] ~]sO0?[OvݔQ,+cCo=>-{6tF(nw;ǃtSTĩ;asR'TNXВ$׮:)`ޙؤ6}p:.bW},|#w|yǏP m61ޮne."Cȏ'ܸ=jo@ po)pR0gc8#:Fmn:*oQ^l;v#Ç5ifaҗ8=޲sPByۈ<޾F], <YrzwvIB˻_gk'-q1:KPnDSy}^$N;[9Be0h9UĪ, 8]y8)4TTjx &KxA'`6 ž#6_y٪8d81S}&`+gsW*xTs~1T3td# sL[W*@Z b$ob ?7|35 rCͅq7\iz4nmnh{?=f3pE_wyl渷9@y7wI=mRc1WU;>p $XϝΖi-I!bB/'6[.Sc^B(R}%c :yF6OyIQU<aE0nz!OX 䯧 ~Jh`l^98,h_8R oQ(rӓ%iMpLn7ATm/cؚ޼^ uxl"NOrMM gw=ɢ|.dց }B3!-獝/]V#6}+i;L-mCTZdx||ߎ&l[[hݵϝ;a#.. lᨄvuNpb;xR}ՐZL0u]6^)vJ%=*TӎKsSun=f.X e&DzeG4AF r\:)[8:ϋX eSH rRmz^ӦSLПJ{AI,J20w4>MXıP56E{ jBM- f#SXO Ѵ6l%N''_Fʝ#7τ@ҷvcM*c84'7u} :{,юQe\@7 &A򢷊kq0mE f0 s.K#:AEFjä(OqUɢka7l/3޻A}Ndԏ c7<1]hԗ={QQ— ``̳H(~\Dwډ"Nf쳎xuZ I>M#$Tt8nº6fk=0k%1 kJƕSЅz_tӌ+6+ q$p{abyX:!&?UszyY"w!"}-:Q/ E)~ܣF' ڿ"КI{2:2 v >)ӐW+Jtwb1"XCӐmzzi-;nyQsAE&?ATڅ$T((UEpF*HhS>'>p>]{/]J}AeUKJX UbkSSC^dm7C‰R7x@q!ϸ߿L|c )60'9T# y`63I)%)jaO,qND܍WTNKVt37q>V='N1LǩoHbFlY/L![~?.ٹ?:aDr!׊F7 pe(;_6*/U")EwC塥+7YL[bq"T\oCԸK0s2@o6SpʚO5"':I, @r1Eowu`(~bT-@ex"5i[6䟜#h#v^ؗ,D&P*T<'?,PyO $ff$DY6gv H4{Hfz:GX䒨ʌAAms8KnQe㚠 1$b+0w mIN|oH2I%Numen@)@ZPN #^ߖx֫ݜZ9zGiX1ZTB,L}!^e'?}a='!KASFePG`IZ6uY>fCO>;iL[sԚͱB{p)8Z ~ǽG.5o]Uo3*sOI`A ߐ N1)r+EW`bϲe`+]٠QU\y5 V9|%paǹhJۨ~ruCFK{iUt7X º|D[;]Kg#y+n`3jΡtKc_9BW4a&\=J>7oLonzb6вf@f<(_L<H'!HS hט ͦ,|4{Zw?1NZM` ɺϊ5+v:t5,nVl%FHCƉ[\bQIH);1?cQ0М a, >Eq.8lrŭDT!5띋9PR x&J,Zًͳv;]K[ڋ@F ϑPјm ǥntH^PQ2f ǝjU:Bb: ypZA5? LYO0\qw;ȹ3>䅱+k% vP )grAd] 1VG.lH4 \a<($G=u=Q;Q?QRr5s½f~ԕp ǐcJ`DMD.kkl Hc4Eް_-8p ^oz &TS?C,rаic$>킄 mz:}!_7lye+uԦjPH hԷ}w\P+lm]+KZGkt_k {fdJxz4k64OHU78.|ah45%f_Alheם{yȏkB%w,"4a`ņ1 "DLbdS#v$fֵ=>!NEv#HًD ODl WํJ6jZ_oNCg߃kr+#7~<+0 9Qb> 8Kp[V(f2 aSžNTWy{**$L;݅+pmœ9PaPt ߥG]ۉvyo ik^"\fBYT\ϨaEN鉍~ᚄX߂;%%oOH5W2ֹzW4w>pr ^uP (`,, QSD@[dr<ݝ -4Ðʝ<_Vyd@3Z9K_ xdr2JdCZ=5͸joHIަxh&*9LPw2c|aHV&D.5m|\Ņ@' 'NfEl%s/h=o2 }e'u.UW¬0`]pbH;+ ѹdNJq͈.(}{ Ql3P'k/\}<(/ H q0HI`#@`|LnQucz棥9X$47L˹YSmc/_&ӞJR>*\ʵPt#ԙ,55VR@M1Qþ@4&B%e.7]A$,Z>[a0yF}l-BS1ʈ,"pİ m6{6 vn*w+5WE' -DN#/nCKNy|LwpQRLeu3};JcyY7x9 < 4#a҅sp`j4%* B0 dczM? 19Ǟ#u1;>?)&E K׌3b T\xU"E6)u3/l=vV* ^AKfZ|VfW:ǹbPŲQOlxD(axca USШ9y ۚ 6-eX*.LPتg/&,+j5TCFVKP&*X]5;Z*NEO.޴yF\lGv˟ݏ "eJڣErN\gٙ A[ D`+Y}$?0;gM̏Ο4 &6;~=/KFc Tv& `u |73M2䵓wN)ز+Sʽe<_ ^|n}KrIAA1kE Нp`(Rj$ӧX`7~{STdTd4)尌ߊ8B/ʰX12 zyDq۳IIT̻< Bvf3Z謼sְWf$g^ڱhNy3OOcO]`8v5%I7'ؚG'1?Gz!hgzϙ娫A݊7=[;9+ά)Nවa0{iwH8m z ][A_kϓ26Oi'Bʠq?,RbpiD liT8 0/RXAEl.p5`>AŏXʼnwf S*TJ m %ygU } zI\P]2xp,vrKج4\')QxsH>HukOmSQDtq 3iճ$?'2Q~ is`JuM;ೱw.*C5 'jLz=iA9.ZU2]^Z/m =*vs@-`Bz%PX}h^e}^4ebY)QFL4C/Iu}MpJGu"fcj@Alό(NU%@-lNaoX^HZF9r^BxKrG4X/T?kDAѼ{ pz.v랉^FxNJÞT<:ͯ>7YĢac%]N͙IvL^Cwe$>%g;۩fG+Ze1xjÉRxxW-SK1=AwY9tKg&FOJ6 2Oǁ\)Gs98899ytԜT}Nú ܡ{a ׁ|;\<)h>[.Pd@,BuܻHqJLzYˢo$2O$ b^.CU\:)P~!\uz@n|~Ƀ3 %-uZ9PMH)Z\[8 a\9bl?&HӷݺÇ׼+pG3[#,[Y:+JC4Rݔ46Rt?Է6 Qdq*(݄6.mtЧڧO S.ɖ4(;׬0jj%-iܷ.Ĕ(m<Jg߶Efl0(ʹ"S ^1J6 fM*D gdLL2v "6QTc ұJ~2O(R5/\Iϻ0t,-m$%|ً)G{ 4B_^Kj?tdR( 6A 5/f_ dɎ2"(*a N;TOG%1gẚR;p΁)_yWdo(=|ONT:en_>*HWρQ4:SE @To/ +rVNvpkH.jKO1CE3#@qԷil1pu*^AziH|kƲ 8%Omq E$B^ƹ;0_f/$:^4g#B2@`EbGuh$ ȍ|P0$X,:NdDE^S0:L T ?ѝ}O{|>6*D*&=>}3acnNԟIn;jUX Ȥ7_ S \T]%C 6~ $:A^q@-`#r5ˀb{5=qH݀<F֡$PZa\'8Y>{JёO9U F fh`ɑ_)h܏tCGԶI]cL.{<ڎ"B ܇y\/&WV̰1b"od3_UN 8?-y'z&\F78?/s7v" Ћȏ~B Eota~q(_'#ǒnO晹 o/|5Ձ -; iYvE]G o35ż"@>Z>\8_Gn_fS)ymEJ(ϑ=/7On.)ȥ52UڼuAavs:{ мDG̫5.G 8ǼX}X+dU@eۣau|%}+!4n*掻Zg,F9y|huQVF9)5X%T;)(@ K_CKٹ<<#`| f(&>ܸsڣ ?'zʯ.˅ǽ: c%QUw_c"j7ꜿ@PZX #-d/z·'2unH9cȒ+)A(`PHeo)% ĶVQ_ [)v߱ڰTϨPS!aQo@Kֿ[ ⱐs2KXf0>YȎa%:n*kɋQ#&qE5kcY4fAv:@9\%'v^{YB~)ˁ88G@pTW@{I~޶ vA~f:NXLQ \7&Xd4\e5?N.zqFƩLoe\c"LɒFNCkSg^-+ YZyMűX| HaLRBAgѼM9JmH̚?!>=dK0{_?Fa4^}&2ḴodWx\0NvteaD~T/4ק;ysN~8iABSA`" A3}ݓU8_lx$Pkx ,gp+ уš閄 >սi 53`匔Jzzn-kx#Y| Iˇ 2l#k{vd^@XR1\!,\Mvga ynӍ d^Ë g(Bޝ'',T~^ڍܯ&3l=.ٯG^'X ^T;Gv.g`c ]AlD>x#7R)ŗP+Etsor똎%Nݳ7=huGnTܜ5 Nʴk(2DuD" UpwA)iL^f eȈ~ZoȓoLl6h8E (VDxwzx8~sv٢ 0lT%5S$_awUN?Ne%T>N<8 ~[/v.:Q"]Â^'e:19KO: B-- Z ezѱS( |tbͦy=P "X|tM Ǔ :m!Lؠ ZR_K}3At ?QnsxW/iXv`S[A=Z/BWBdYX6pQ}X:rm* pXjRbuy16ɠ=.!xg #ZbјM9~=Vi&jW٬% \CF}Y). 6g|jȝ808qwDkצt < A1c'H,}q+~8O}d[)j58S.hIQĽ6H!)YhL, e{_>!:,;^#22LQ_oY@HB+Ԙ^;$TV^0jX5ۭqDG}~.L@GIv׹G˙٠xͻ1j9T` U#֏K*_Iq͵lS8zCʁX%J{pBW4S.ZjnsKm咃Β-V#1wQ殩ħ Isi)DD ȵ ~x''?p"8Nv½qIӡ:fC40]2 Q[5NdßO"GU)dʓ19d{sVưn! .E7 *ZO%9qF4vn&.cmKk4܂|AևX>$!zRN!*BsO'*6qФ 3҆2e ϩ t|;PU yX*^D3bn\I֮WLHyR:KK. i0tŖ{7|4eaF%(5@>\1O _~E&Fude*Se mGR9s%AGn5aUhJ$^PwUյM[|Gxg]ޗzQ>FtVlu>=m{U`Bd;g7>g3=mhn*=\kE ;k ZDp|9#E5cSH'=+V\jI%#ל] sx**ٻv+'}0_4 fN%q~Ќԛ:ES>]WBxk(c[sEVN8ՐYaU ⤽=yN"oJkNtF= VLD?._`]Be2H##w]~[;KYvZEv2s3 GjVAHu@x V)%vnQ%c]Wb[)RabSP$嫝יY_ Y!4ۢ8N]b0҄~͘#_s"$.L @b4\=E Ġ 2Y h}2F:7pLòqdФtJ1 պ;.̛d+Ȋ&iL9 `~U ]]CqTp15/ 5:4C<wn&m!o;W=i`ZKA@T(bÄ{‹r 'z ]uVgB^~lGaԽ@>Cۣ-e8G`&vUV{;DE;?%BmTGin)BG 6$lؑH5\L=~h( UgN>l.uT"/6ͶܦcsHZrƄ{7Kg(ʌ Ĝ<+-98dQC }\wݧuUP^wY%߂$?)9s}l~͈ߕF9u>n]H<$rZ:;# wU_jԑ'd̖:$%]E,ǽ. &>^ta scI? |p;mߥ/ ɬcfB9 |2̥kEnT1[ZqəloLǖTEPg(p,0꾄bH!5J 儂q;ϚbdK ߭ 'Dyͯ[S:r|O]` * Iv|v|sIwq?Ȼ5 }ny}e`wVV"h Q.T6~ >hO5$4 az@AJnjAEw֌ve'G*x;J:l/-J[׋O 8G7i\ÕLtݷLj}Z 6QJg7XD#]3)űCAkHLc|y¹0C(l4XϔfX<b̛ O"ַ7Voߕw*:=!d̋?23-[ g{&JYZȱr{8Ll3 !I)|JM'𧦦pOu.4gƲ/ $` hiQ` ֛r;aV쭫zQw^_dSOupE}r ;Tmb`ADZ{Ü#RjZĤ;ՂgJjs^˾力ȇ9MZuA83XCd1<1%uSLv F k4~'>Z1A^R"鱇~Lcb3_f S4!7H (Ɉ;%LF+!E7_ ui|03J\yL/,wC{OOjLlBKr9lF?!x!7Ử/<%yR|0lTB [E99B =JGKv*~C-_ӳtrS\AO`h@#)]nS͙왊!/md")7ã j39Ga8^>X&m†y(f2;vCO [m">tG}.R|$Ww(Cͥ+־.? [XrQeoTYUymC_3Oaג.5/3jyw|׀y<| {]= p̯ff7ZV YĊi X,z2P.ϷpImbe߷I(h4\sN` K~ձ}ϗ :Jb$S{Vt07MCL%ǿIȏmĨP3 RXB# ;5JCnWQ)`6H$]0ܤI97YqКxAx*1A .e ;"sOZ3C Aӆ:}WH@0 >IeeZ$jX]2*;qg?Ot+P OKX (˜nPM_kK7f< }OL.}]"y:@Y2fu:` %3Xc!pd לS:ǟu~6iluAo.8~),N)94 oI48<&J\ 84:S#$"_Jr_b8ʥ N?U FuiUP{2H6I[R's=/*Mvz4+8ɲ-Yj "s%f&o#B-Yk1en{c6[203\ݵ溯q\چ7~T#-X퓳axM%W‚p79YMh~ް=f[oAVˠ"#U2 Yr&ST7]IoQT(fO/gNxw'/ʒ F8'~3 S)^蝟n+qur%, -asEud3w 09:&MT F9SHܸs+ê>$jC~Q sþu7Cu]p7ZXF ][O٩,y~9ַjf,GE³E0Ѵ\~:ΑSD[hw x`JU>JQo,kTr3pvύ`&Iiʶ2.؛s rr3Mv;q!(/Mڱrީ1tM"u_6'ϑkyEՄw[KߵARBV5>w&;eF~Zyv 1,_qbPcjqѢαdt(VS^xڃ9cBژ;Sp>$V`3;+Dk\b yyéZ#4GI6X+~` i^4+b*_j-mn:UqVgdvfѶm]󽳈s 1PUo_pM#uשJm]SRsTNpD^Ύklɯ0 ᑞT(Blk{51[o++@:sܾ] :Yó$?՝MBi d0wOp4a[w _unCB%>(?e\Fj;O8* M䰹D;*c.9m6ʧ7zSg)?k.) "t,իb,tsCK?}v 1`!nc֌D"Tb_'SE{J@vz_ [+PkQ 8 GFwQJ Ԥj}Vc16!YonK\xM,U^'$,s3Uɠp<9KFฺurH8Ca?S"%Z$mJATƭJZf2PN8ëju0EG,K#1[x>B3DJ2 aHpe*Noe PzE,'e"ULJ@b%= KTN'f3LE97wŹhsE XU@gH32$;u+DZNle:R|$'hm=̑u 8\զ?#_dO kmQЇXYҞu"o<3*,ڹwȨ ٛtXK(D5W@4(] ጂ_~UVM-{vtԧpgGDPܙoD~(t]t:(LW ܘ> ήZҕDpoyrlv5W:"1. ]ZkF|҄tH؞[+B{ubd3_AXAa þweѷsdITKɱ4"q.H7" k$Y~ِA4VS7_ zm=dP Xh r5ā]9z!xv!?mf5-(VgդBj,~(.v~x>??uhl%_U[]dP1{ wj8SV:n _%Uq4r9L (!$D(`en&8:؛"zFvOl286"]4̈A89:ßnO?b&waFJ,>?FtЕ\m"PКrI3ijiw[4ϋ'BQ+8s;rSBq`{O~3mbB>/pI}QA(ZQYv5_׷݃4Ӵ}D@OO?B 27#C/R%kl瞝u~Nc`Bjv7,>H ˈo똈NԈ`sSYb߿0pn¿rNsF-*_]ҳG|skQXl2[*0rT+fD`Y0*H~Y gr77䘉2XTa}9=:9aJ>WY@$E8dŪv5|p Tw|B$_Ic.*ݑ( ,E(5tt#!EOWg*/RG @ϯם"ct(@ ݤgSyW3"ĦJ=6R6}*)p(jK)X%Iti2V :zΆ}Ղj8c+:Y>63#K)SXsY`f9 FLI%O-'.7$BŊ䂱?#jqYi,XBgBjfw!Lscq5]ZiN@f*<*ױD{8q^LZ%F8 YLʼ*# &6g\yOݔ*lFP&daPh!c;d8oo 2jې2d2t9=BpJ}Pq(qS#A.6+!JS㴍(xU4nS*<蓹~-EWX aB_pd}igCr|т3`Ƚo$B2:鶉Fd;FX~p,&㺿]EOg] $)m_RD 4$;j{ʙg5ʤ<ջPXN[Jg^LBbG'Ǫ̎sRL3?[Ty/*˭5x2q!W[.‰o&aRڥ!?9'BL_AJ4_ rrXH KP`PkOgp"ȭt*Jd+9YXe8_b쾢%8TtዡribR1KGpI`nV1>DՀ ]'! !(=KZ֖](+wS^}S$e$jZwl`Jm-:taW%.ܱv*p/{I"֐Iӥ>5Zːg3!1?!и[-#nwIc>%- *YY?b?"l,eFn,c(4tt$OzOߴ{2_f֦X?MʒUù+sSteO#\BӜm>-ȖU%bDriexF9oJU6~eKp/3t/@zˁ7Pmރa&:wbA+uwjQSڎ T/-<†peĞ~aD(p!Uɞ6,3y~JΧ.p/1 Q )m4<DZ֛b}7֯xQ qȑ;u.y]5zs̋(u:/ADTyFޥvB-g\_%Ow>Pɧ6iKc:'' jt;*UרP6{ܶI@ W'Ls4QUͮ" h.P%ڔJ$1zL橝'\fXMKk?RoZ[rsБ[F;㯤m&bmDe"ȩ3:v[^J&yXJt  V>?)|TcIJki.+thl<D*ZTcشGG18}BHÅyBOl@FsgJ<4^â}J7UAfFd8Ḳ*8[<ƲkhZX7H KPxFҦm;\GXbœKtPgz^ﲤ9J}a3I<9X/r2#omLpsqɪyy6QHz5ylÔ`6V.<{OV,x9" jZt:JBhcp I`0Qk`|&` <']#ԚA?pw,D6cIm_sa:>2HvCFWO]Н_9xdiZiOL:#(ao)f WOT(U0?!=&NfdgӹH42ձEtԌ*3n,XQc9!RJ8'ҧ4]=IY!^MY5>W2g:wͿZSRG!{cMmwahF3 ?лZ烙uXycH%8ge[zܗ0Pr~_oo"DAOy+&@F*?غ"*ڪh2u(@%z^7wr4 B1֕OJr>62s-uCG;WfW"%9B2':}ڌfndݽGr@ ]WKfuEM/Mo[q#%2,26»S\ʄ|0cI]K$ߊO̧3Y'<`(9T>U6 @J3|#I$zq p766I.)-78X]Em? p:uj{oe; ;KFSFX&P҄R_*495EmCYPBk4=Wj[/p ,Cd]$5D}b|FϋrH#lJ<ƛcj5zykC '٘o֞l ܣ,ic@> pvَ|ØI3ʤ'W1<p2*E2Yҭ^^{go޴ "o=d]c Kf6%ce @ӊyz`n PSEΟ-'?/׎R0oϦ(n,W+q.Ѕg)5ESFM o,*"`obSǟ[sy(,\.#-7IVNbZgh1b1o%ꩶD҂ l%Ȼژ/Ǩa7k&G:trPPW7??:4D$%\J"8ӡw> 0Կ#~i\&?\`'L'=Qսkᇮ)SEꒁS~p+÷,NL0ҡ<rK˪mw?Q?HAϬ,5M ƃy]Ibޑ$HnD<>`"u2+e#_}.MYRs,O_ƺ$Cârq ٫?@fi6sRcIbw>U@Dy#Py}yLyyhHO7Z3F6$bAO5HURmעtcOQ: 4a<.U9hP,S8y{Z{wI~gF$Jz0ᐄB:GXobRh/R[m_r ۭDEgG*O8܍n#ChE|ON"yCFrYGqWkBKFE,Bd[V0#n]<XQ9s);(6<[CJ*)m6F~XY`CQlꆗ}QbT!&*4)૦i1dA &%d.8l#YM^Ti͗ϫΒڨa5eD[sBn!DW\qw9iH,Oh}:'"OywG4++h|TM u ϯ ^6F,%Iw5!3ԯ 4SyS?$o~Säd|'Hfs^{~*<9F w) Xczn2-Q)sHX{Uv1a! rȽeXdNcr!Nki!U[6\Dq\NrP]# U,Τ\oBc!p'N S{7hP?Ŋ$M(枀ͣaW$'n RC"\gkt=VX".fXˁl7N!s)<~i~HqeAד%gvgSиG\`)Aj7H F?s^SX)Д{:هudd $=-!r RH!eo"); q~B`&i=@6f'p ;9;w'X0|0$%TohD6{Rtuzq /k< h Z5`ܹZuhI 9$0R8 f6otrTŘ,`j4DGnSSѱmUvw*q:|ȧĒnX]DvXG^uXPGfS n.95ǀHĩQQI&h y>V>jZdokJئc/p߾ VhʯnT/MҔ g醚b}뒤TJ:U@.Vb2KHWu-+#XCa Fm4PSn0&m5;|CwӮu=gH>لO_JrNmB+Ad|mQ階iueH5y/yU˓3L='͜QlجѼ%oK߃W~~]6d0 2cexؓk\%2ɡf; 0v3z7k4}A@fXֶ)N'HX9%({7 \~ ML+ `ݥ;{03ҙpjg)n/5rR;hGG o'%&,V]_K!ߐ5:W!|/+ opG |GT#.P1V %F\;ͲrIg+CI1'>MAoR/ju4pjp!2=B0$zQ<[^|܅Ƌ_)HHAJ'WGXS:X3':%Yk+gST@4r^&/Z{,1QYcԚoD8lBvK|n Dc.s`peNckg"G[DEIsgߦN)kqܽlisSˑ0()tZPj`#ss0u"ΥyH˷= Jx* ƫ xʑC}z4Yd>E&nՁ҄RAKG]=S٘D S¶B_"AMĺoΠב\D!}bocxs ~);əhM hP #ʗ k\?RBsPH,Pl4GbP7fv`' v"/JsbD݃Q#5xm2 w[Jzܣlab-npP^5pJOfŦsb%j%tzm-,咫U̩jJ4WOS= UCI}q?jwa]}xPBA/H[NpcD*KA&j8ɳnX|WuD%^-Tl !¹5cdQj"Aһr6-U-oxضi&CEs :zg,,vwK3dx_skK&C_]yK5XRj_ǵlQPf{DPeڟeq^ O" H 씿i+^P8mCSp9m 9g^ l6$Ρ '"Wٜ@?QH=hL+* Ac?D 7wA_S}$Uٮ*/'/ q!(4Fg*n:c/Xpg0N5C._^HjJym vbյBvm.3VWt jtGCv]`沮zwC{5dj2gŏ^ sJpBQ WQɯ@b\9էC|YnQ-tUM:`=gbp|lZGuIB-Ln{1N@O'sYjMjDZ[+٭v(l?M:V'cӢQ<7x8Lh@1̧Ԃ7 m]TΈȾªM&GDS_I/&*ls˥(*|$ɩǢ1#|Zh9o`~$崊UpUm=S:-^#Q5ŗ=d&&&|*O`lMBcyݴJ>H۶" WW@gpH塵[~nҪ*M s|҃%5#٢PF%&yU:Z53S>ۭZMJ:Y/"e\9HXբq O{5MYb{6y7KU aoSWlyV@Kr}Ї#vzG`T%qEFc \S&mGL+wTy**y I({t<G1p1iﺽ+H: i).SxAtp?|a1[RmmQM82~=@vik4CۚE # vG9汷ӖSYI` rQ/IZP(X4*攩}n!4D8<5[d0%m~VvpQC+mb\NMXiuƷZa' u)nHjք~Qƹb[m)uc> UﯻE'͑ğxm؎6] ^ 1#ZO;4.9b;} z9P=p.("Q2j:7@L $7 {* `N0"fi4/%>Xz)S]q8U\~c91/*gPs=Қ U8\ܳWZ :I˘w< !ѥ?^lNNKnw;5u Xncܿ91RH9C8rF.5֖ nvΥAKk_O'1,aq|ׯgv "N=]RIJ5KeXq4Bo%ȁG~PnU;yYAo9EB8:t<\^=Պ}xpeTd sqz3Sϙ0 4kL jz0-#zӧP{ >+iF*w[tH: EEBK?_%?1s*P)"%F"[l֓#P<*P4*S '|b+UIm%HPť4cAt$X8rfw 6iiY*f)h-U8FP#UP:F^bvfF&z & yw5ӜtcPW{1/Cɧ u$Z UˣշФPRaԩl*u 3Sى#wљ`w6WҮdg(=0!o bz Vd=f{p^ymN}{ts?_*mb^ Q vr;$V{>V2gsҁ /+k1q}nRaL\%2:yGrF^rRax$l$nӽ'9&Ĵ@+"LSAmN ȁ`vJwNibQ:\=2-YJx㷒s;hГ 9>f!U淈z0훬zv:0}cH49;9r87!=ĭ1ͣ![us;ZLi"xWgꋓs;Hdwoū wv+<0}EӅfǍu&%åқ\DE ><Ʀ.-%bm\5A>PuL0_ġpCA8}*źڵAψj+ef'I[;ka׸xQ<!vAqHYwm~takl$]Z4ޔ,L?۟].T haE.1R_q={85 J8Mƪ L£eT?Y #wO6:{Fc?V~LW[Pds- 6 D ']>(i%U#L4x'ee! (u89\YEh IN_:?I\La&4ǐf3r}"s{K :DE=q7߹WD[mȱF;&ө蚀9IZ^9E`jN q&(vkSA"qr$΁IrV7|`4)x|M$ZR\hC.K=I_=A8qm͛Ua?^WvG[aۋ]I|%4M:)jVQ o^ʌMlZ} <0z\47yy#ZTSyrh8j&ѕB RC # D мq.vYCWJ_5g]@hGnv8ٛ!ΘVQ UP iԕKTYX p^SD 8{ްP5IB3zM#S=hiA=0ިx{6|xa!j^ v{=NTni%ϋd|3*Yn° qv7giGuc0'3a oHrXp ٖLR+M>͠*)R{q'Ky !H̆|PH{HZcYc4Y[jrJe=2G"<>9I:h)kƼNrSͥAGS(o ?nK6ƟEIn]*NG¾^n6o̽mc ;1~lS_Olvuqq)x-D: OX:ـ e <ό(%-$ ,+h{FR 7h9Ub:Xe+=.Ҟ3bX^2_']ɷr]dԶC]mKEH_ej lw뽸~!FG^^%5\RЀ YNb'~^Ȉ"5<"n%õGo2Oʣ-#ìzQ }ll!8b:, iMos41nhPqRĶ8)Y q۩TmcEpSL(b:7|M&@h 3Qm@*=^D qNfWDm+1A]hlnZhA>& 薍+ .tV%>e7*SUMI`WcrZA[ ,}9'\б`1kbFW9DAR.=-ԧqIS E9DU8n߈J%/PɆr7'(q S~1lT/X(qIfh=Q qU._܃y0"oOĿe/ ̊ 㖨TڛM?mj Zu?~<_3 ,tS8Ml1yӲ_~ !JjEPdZYF|VkTLMj(\/f@`=L6) VZhKO]ѿBfx*k]b21I:#>bEF-_sE If]0dJo..-7"x(H3aт6N;CĀ>lzte~2U]{L;b쪈:WC|Lѥ.c]`#,Re8rQH2<OPg-GM;@%NmZjw]QH85~v}ʋU_b޻_JKp5b%?ImMKP'74D qbf x-=3-$ɂ{vՙX ݿ; 䙯CE9x1RouF98]+Kx|`F5ѳ 0BF[R/${K?7j-Y:;4!Cܼ$mh`^t{6V):hbQ[=_&U.FvkʕA,y+&$Ӡ&D}+Ƕ7u|,wI⮙qDකkFSȾI)Q%kM-Ǩ~ޙY虈%3{yG/akS wөEYWṅ]|NB LҜaTJؘfe(m7@}6>nBTbDGi OG~2c%eLۼkz;QS(ZM꛱gj/kb+/aa#mhK.#P)E/YZ6H41h-~.ae_B (K;*#H<ثPh+XN)<-0=V2Xq@E<+絵՟+>{ uC@μ ߹Z|-n[Zݛ}-L]Lq.Jw?C Nm/K LsM{FC %Ļk7yq01O?UN_|HuУze㌒Yw=Ѡ8?"&/mU]n` yeo&LC(me_ἂG\$aeϤroKUȁx}Qˠ.l=DR& ph}*Rf$A^fM{;^e[{ubF[SؘM89kKIW/0ռ 0<yYVL]?m* zەVU]" :H}W3}%JO^0MTZѷL΁$~׫)]ڨ$9$M;>l n6qha!`#+|uRF"FסK(/ a? XSEȿ-_Luigf%"Ti\jx$ψy-b-=sK!޼M{I Ȣ&vس54SO߿ׄR}Bbg,NftD B0]},ѻNqL}b|=3IFh  į4Z1,iMO`=FA?i.͑lmboӨFq Qlá!Ae"Gb<|ݯn8mf+.fc[r,ʒ̸08Ua5kC/G&F!i[ӷC @KT#v˔Q8eh(.hXs99J gԟ#z$O&G*vPmd$KBK3KC%oGHU^)'CPzQIv9H*k^b J UB0{iSVIq%k4*!%IJ2/ʧE<Ч)c )TJCO3ىYA`BlT)OV%SČ̍N]x,AePh_~m[}o_װYGRhC0#YB|\\.@[ ̛݅TpH-SfN]E9_ZL2rBerʗ~($}iC{NfJ=:JuKW2={R0ˀuF!UX06暸^-@8d&+w4B˙PJ򅩥 x.t!ºP0]ۑE˯7$5qɢ`֓b&;(;9^\B\Ecl#1\_Z{oRgE9c.B޵ocf$9&u&d.bup ׶ZƋer}S"qVgtaqua2Y:j8ZHY>гWϏ"WE ҫP9\఩ypltݷI9Zp3NwppfA@ˁhc2j-m>{i~ݻm%haPE{|"^EfuQ ʀKCfך: Sen~z>Gb5EF,̀YKbwvso29.z+v<|n߸x (eil:7Z @_oi _޳|WxRնw'>X.# OcP,:Rg>դhAoC8!@N2.z>lHPA+IH2\"^ ͸?ˆ'n?%an:`ɾA@(d%Y]X7G¹͞(trJN~D/O,-Q*ÏF8oo3ʰ(:4 ĊXFIx̖OnAN 8`l C`jTKd j&,SϷ6P慸'*6|GiAC^Р>=CڅV1ю5@C٧En*JFVc2æIs d&9Z˾u^#v8\a  P MWҫg.]"Iy .c/8ml6"Cԅ$[LgĠ`=5B! EaDTp"_DĻ ;&#9F) Jj y@%@A4aY;:axJ`H1kwH-1vOQCګػ'"$?}=cC$o*̆,MboT:9⑜sQ[< +!A(mі}M_bkuI W|yR!̨Su`]c#8{vyөfYN:hB=\\]<ٺ}9)X:S>a22$/ v :m[r:DdX_%,DI/|69Oը406¤ä!0ne]rV-Me#[#ǯAœBZ׹ H$f|dl'Xށ+Dqr dkvRH3*,rcF<9)? ªvu_DoAA8y$ЛjI1֐{FIYe-GCXڔ1xR?ě/gSA' _i*9A? % _`d8# bK}G 9bSJGJWqjST6/@$ѵiRcR(v\H Hg*8s-eD7po%,qړY #Mk $fZaēNJ/r|mCVC+ՁıEW})Ro~ Kbg=33ow?Vw\F< uzwlR "ͬO"\* ˜UgV()ћ:vB[] R<\cG{A؞Hx;*MOd^!xd㮙ku}hrV@vlr2t\Ld TkSPKt{=`▪4 u`~-6%Dz/_N0J!JP5~9Yanc!mt0OTpv-V0/Z  GÑ+Uxl9$Ncg v<Em;,nDV-5Q:!)zܻA̞ #.47R)~VNQPf7 ,y^z۠bjG%z {ߺVxs<)i5;F ']w-8Х:;āW}{j)YcJ*P<~H ˵-q$@ X[#x3 vcmH58d7pþ,F:"%tBοUtyP$9Y*䓾[ o˕רRh˷NZd8aܜqwNC"b>*r{SȢ̐m}J\/g?/y5q&|Vysi/߱< oڏ=?B¤n4쟻o50%9〖uzɃPvm͍P(,#a?> {?Ђvc-,Q *\_ 3P`5NcpRvg,'HVT HFsNY& S[-(J$ƚ| VV)b|ۘuKI_\VSXC*^>)(odIrxGGM:R=)4ʉ-Nn䞕}YN,AImqS5[:-r\b3"B}")ic2vي wO .##RߞGK*Ǥa[ع^4C9JELs4 1²;MWI*f @wq^C}G[s bu)P?n,V@Sd8rq[kuGdtؒG o;/BEƚJ $ܪ5v@AALݰ$7*kTÚtk{կ[#xZ L50-Lכf"w,4l;ݸN~W$70yc$B"9L{v{4zȖ;%hndT0|C;rնyrs'o?ZZp>&L8s4\,(H "qH({[4u":k~GؔBYj8-Jbj]7/^SbA z7?Av|2dƣs>ވ&slwڊ99d/Gf< sȇo_qUGtL8';e%p+ҟ'ޘɀe 6B(!KS?& Xy]mQ&{'iC$SyylImگ-ru&WnjNtSWnoF9ͤJ/CRZٔmXx .V*z_4g+l{>u2AWOZ!zOD k&Z~ݡ eaѮێUF@Pg=>i7AQfNq V|gndcAzC+(xffvT&q,DzUٚU¸ިļϒ5/(pBȌ7hQe_l y&m]) Vs? >Pu2,=T2-FbÄDD>CE see2nA3QZ5E|}-6h&ݖFBZJ3as%)&+1p;*Je،"PYyb>^ឬ hjU[Ml>!|dLdf!3Sek`|.Af=U'/+dirYg(X^&LffxߎU ͐!p]<}=bQ+o$s%2մ;0soIrPGTt= h Ma3 8p'H۔](t_VlX^Ԧ ]я)n@b%?2O$| M ,ei,q \Rtq8QXygHT U,}^=cV &h;Cr ?hM̟V_DhK`$is,䙏5c b FmGMv4xuӦV{7{'B/m>qC9|2 N}%yl6źdmN?Gf 4÷ϰ V=c |.363& g"pՅFHc)$_-B ^wx"j.{\tet5cpQzqʖ𠼦QsتÊ. T'39C@I~g#M >͎/WTҞ]p`PWJ Q|`6'RM"rjԫ6)AmJr=‹c6-G~t0"L򂽞>}D ƏwY/ZY ^tUy|u,nIȴ&R߱ 1,n _,dov-YccϞhrbR4fˆ[VGԤx)(A?, ND"iX+ixf ܉١w">{Sg[Jfsb|c$2Ta8M*Lie4&,-XLűYRɝ@Q̳F8+8+بz Y%PT87*HBhjUsjvVScx&,tI0I D!QO*#!rfn6VPR؜=Fu&"Pߦ <=$z}e9z*L/- 6HW 2UUVV45Ƿ Nܢ1Z=om-kEF'+\I۱0Ւ%q^Q.'`(#@(ZmBa%I9>$LO |,Oi!%hl9#/@bj$0׭6K =41\~!mTHPuOڀb4~Pzo>/-BhNNQq*KwBnޓ|O4i{r=w}h )ga!me1a..0#j2~c˗r]]e'+XG!x_Aڈ6l|=7u _ ~N6]KXa>%:r g@Yl\gq ;7HGs+ zO6ꍢ9upE{Ϟdm=|Z]&ϓ4R[j}f~ֺwҌcP;*ưo(6mo#4:b΍+1WLF<٫>0;JyֵU[[H;QmQπ^!BWJ2`.byHNF}2g٠aS 70Х*8LJ^%PH+ k:l;\tc\x{ ǁnB1@7"ħ ǜ3aVW!,zkܣN+nVԾkȺAHdP{Og+<,3=h>PB5C An/_ћlApht?O\Eop ͣG<:Jx_ |π G`-\"G,R?"})9EmU;vgwɧDz@J)(ڑ y#tH1E_דaYyĵ 9y~een(Ih)NT维3l\C2Kz4tqSr@qxr,=G^.$A A7+AI%WbI 0O\'!~|imA^y(,*h *m4B.4ь4_-z{WDp˰;=){Z y$v5׮Eu֠f N%Ex$Fzd膘lr"aI@(ֲH8]K#U`edw}J{ҩj~mh ?{kKgPGOlg($]-˱*"yĦש>ɶ`&2U=ݕN?5y9*}5H3˻}m5)k? K\ x>hrIldIfqjKk銹`!pw\.zt6E&i)hٷեs}\QJw:VO%M*^4~ &Y9CfpӋ?9,B=n@_ &^2>V>/L8AD8^[P|F!gOUSrmY` k;jJgM^@ܷ2Aھ, duԭ'ZBUk=9-}NKq6!qÓ?.O>t@;"Dg^a;aU>Qy?Bt `z!;;xIhoD3wZuC/mqu |JcFBQK_ap>;ΆA(xvgػwgًqQH{$<!e:bzau;phSW.M%z FMˀz[?SZڏ '5føZjMBOj30QPWFB||.@&gG#.dfvsIдt&#>. ȼ maj i{Z3641YkPZL1üb|Ę{a{Ks ZT&EEâ=a8[dHej~hq0gKM IZuFN{OAhfE/4уGmBH%f|12!Ap΁ kg9Z8pK}~~ɇh6RnfTjbY:4xw.+ "jc $ u~aVܳk\ S`Ý 09PI #餿qbuPSB%s}!psnS '{vH1xB^.{q5c]@- vK {TF m5)I9ƀKbi[q0|޾L^Ŏup}3T!d2@_|К5N8upwiT9:!ŧRw'TE' p2f*r/v7Y!p+BK3h(d.c M:sQma{6Y-[ͱi y+#g?|[u*B!\EH=O@q2QRf켠s6z5f25¥Wd驁Xx{osP9kl (1 tc}Z\FtM§8`ӳ 5a_ƽOonFi6F *}11 1Lxcy-Sa厒q*Cם.5@0T,@J =nƶZ](1xk 3K'wiA3%Ya ~R,*¢˜`0XV5 ~g},rՂWIʬ*kķ^<-"0e36ީ3eTƕqY =!"K_"< !r#BSb}KNp5 ͱʥ ?z}ôKI 9d1R۲]YXܪA(%Ja 2PeIgfkLO޵#O@8a\7=!| SK; p0/ҳ0Ӎ_e=nRYļXoW+CcuM8贓L {I#z%BYk**E{FJMJKL`*1=d1Dkb؊7BBu9&wOVHEjyy5cJ9FGs"iys\e/ƣ|(syd'U?F,SԐGd7rV=}ζ3FUa,,yam4cP@߄rUAҮP)׎itܓmo1cmN^;GnrZ) 8=U(`͠J*ݾ&00۞ꌩp`~:}ͦz. 捍½.ivkP9/aw T[^B9W!s* K~ 'k=ܨwP[V= 2’w@m f \lR2/5Y'klb3ᕺ4F~(O8ͶcZnr^{Bހlzr_Q*@ ]4W6G"{Hӂbi Yg?hh-5l&0`J?Lcݽ o'2iz"8tNC s'G;`B";UA56pzɬ]A RY,4X>E4pj&Ip2;wv8 Wp ڮrӐ; |v]M.ni|(籝@ݸOm-mw(dr4P&Ge-QiEH@\= go,t+VG~\-cEe?2/{$ Ϭ5PEg洒m"c p$峑%0a?Kʶ=b8k VSo֤G tDs.;ą ۥdPnJqË0܋*rjZXɏlTVTPfoe$e=pOH9Ym6GW4kITn]D tkB|wۂ!\fe v۸9A`(pKT%e?"R^>׊c3F @:(7Z݅)s^J4s7>%EZƻJ~[ڍZ:˧' iLJ@䃭e L0TAX)?X:V7Eǽy!Ih~ 6{! _OcL cGO'.3*hbͺn(X@w;)<Ѥ/8bt\*ZKzDm۬!;#GU*b"b\!C y8nN*QP CuA54Yy`XWRSz 3_LDZH=[N-d: _?rn "Ax*~t*h<?jo4=T}D$publ UpR`grǘ&%\AZq XEzH:MWd E0w SDjD2`|(a&33'Dhp}  \{]A'/=2 ʭ>x[uU8=ljV10T}yYP2uzCVnna%L.z]{[c"{QM9z2e B5yXe`v P& rT- %ހ|?*BIew)4`x;/+IX{Z9WܖfNoOD @mЍ5i#)h*ڤFaCA.&Oy=&tfL+ӀZGgU1l5*=xAvAFR_G#`-&YB,;KUjHͅI%Hp]HRr Xy*:ď޿#c噶,0/ܦ,01m]we B:*;:̓y%QlG+{?p#;@ lI~2I&2QVWu:@hnjTo+ hxZ'Qj1΀(:'{KPZKq#DJr0:86Z2wjueyOƻ3RjTш[~x#Ko1{{UTfo\.14(D2:j\P:T!4$cyu(-bFEzTUԣmt0[`[z&5wf$渋@SEB(%JAE;掉0vt0E )$X7{SZg@P#Ҽ&QNLXhBŮf^[/!kK[MhH4 ("e?vAAtH]9)ፁ1Qsq' y+AQy(Dl}L o~t:gAw'ZNf0~Up&]z-165_{^$ERJr &ݙ7d>X~v׹/iLiaߚMxg/d¿:3%ǚ*tkI`&h;(-S%Kokpzmp {mczs:〕)7>MG bWDY+'0;(O^+ *Bɻ\0s#c(fs.tUЪ}.ch*C'V cۂ!gKDZ,$U{mkm6⼒C72tX*o97$KC~xԔKtIDo78_ O ̜?om-[TuN>|(dß-ٝEV-POyI}2b-NlHV!oOVFѬG)˜O(G=ȕ)vjjlbCffԢvuaqC9]׷QM 1f_dXi8>Dc_ƭ3p3A YTHM_iIxKrζsE̹ҡ:Xh>%CwS"וW.qkFreJSXe3vDw`QtƑ>ع~\NsbXWW {*OJ \%=YY(z<`3;gѷu "R΀j}@Ed9# (oVq2$B]?ΰǾ;4í ;;*L>42mI:ISݷ}Vј!QJH蓇ñ VH}DRV3 jt'dU^-S\>p^zlYS$dv侺a\aQK` t]Mq[ h;cS?o5sv2ϟ$c f~xŁP\S /iӴh䙽SDP,f:H(MeݪX(WpQյWN1ޕ'7 _29*p=mGٷ=A‡^9?l5>t0@-262ޯcemCdD!ǃ㜉T>i{.NG+CUa+FuN}^Q }GURZdO/C 6>l;K:+Q ;6ƶ&dli*S~kca4q=FG5o2MNpX< ({1|S=II#㊙<2Y'&DmYCF^N( #XQR@ R6ܘMC 0PY1IkY)m]I1~{ݩDY-;*w4k\V{Իɹ;Tƻ(~cB4j/MtQ|mWXp;BYRSn>P&dVLZ*x;Ag(,[1Qߨh^:{/bvlZE|k/[ОWmZz`*#s łyi#a&wUjStYg5x5ig^%KsR JmGWH @e$Cń^|9Z#*ɈFu.Ω}}k& XHlQę"!;vN8>) Ilz: Sf@nZ nœ"zw)]mɹLلy1wH=d6-uKܡFߪG$Ɯ(7,*dHhb+^\īFEY3ԣC3Y|ڌrHRbM~nj*oꦝqđLs8Ckk},nA%qF"\8'{N`"*~2Sh:]aTtڊ{av;ICV9M:tje)ܪ0 دyBƘDIW[{ɚ%[ GX&A(QgXCGz*$~Dp ~^,8R ?HtٽB57*76y.P"ɉ&'y~:B8IW@#fՙfm$SS6K04VO$%r,v?JwJuk#9|[=lp[En^44x8SᬏPY½aʚZ"qDh;$uزnȢ ~Ed"8ʰ."3pDd}9pjgn@byl u-x#*Im,FS2 ?>dLb~~$8r=8(|A~ B~3O0acD>nN 9Y*ȅ@遀[e8Nfm3~?)hVZ(8bqL%usTsqZHyOjnA]]_`70]# R ֚+'#~LfE<]f;@GLZ= u|`}?^UA |9 ҁLlɩy?A/ H0̀ zǜr (5( LibYDw=>lޮ Dnƈ0a=#hsC`XtZyEfP +4M(E}m5`@>3fbt^l"vh]vI]Kt?XqdL8!<ap~ey6JPe{azO"˸[Tʜ]b#F7RPN3M+o$/[ӽ֪,w7.{@oeCv[;3[Pֿvh2񐳗o^#s 0hVш:,` :Dwo + 2>T[M@F]?IDdLB$#γ'-k ujy[XQ6ߔ4PIvC $%>گ׼P!ɠ }] &]guysjXUB.rQZ -YCr FK~f" D.Z֥^YXe>NiPpj;p<Z =.~ $5F/(QpEr"j(s[ZKi/A")]Bz+!ie>ӳcCj&5HbXk\~Ђu|@I0`ԥyv})g2vbƋ5oCҮ~`k ĈZЮ3@L̈́ ;{"gP${yZ[?sifYM|Ac|Z^~Ub)H0!xAI-!/ yd fZ?U/Y۵W #tD ++Tg2M «ُ ̖^r)c2E]Li96R|n#fHʌc?ڸnW9;9["?nNY0Vz0&0fD-:]E_yX&S^yDzaIpe/ &E^-9BT+>,T@A|:|]0;y2S^Bf"z& Ȝ`vݔ@6Cc_j.Я-qC&]s۝X"h8 /0 Q&(?ˍƞӪGLX Fw&UO"#&JGr-b2xstC̮69J dؙ(%+Qbp#amkG< {$T1c#E]ڌށ`p8p9,X^!mue8E. ~M.`";u+Agҋq@c[ky$[m(9ww:I-飗PuTh*2q WޒRC\[M;hfx^vJBW3Gầ9Qx/wIZU/z}N l {T2Mק.?+_0yRjHvpU0sq \5i&^+gP7yCi EP'k:U`EԒ`}._A;~%> #UsX+FTDť41_66[ Ya #[1x87Np1i,]Gx\u}dPj^$|ύ{f0:qvAʑx}ʛל(/ 3\y( KT K8X 3WJMIx倞ə ڛ19m_jG'>yԢidž\lrNdB c,tXmֺvaцWu2M(g]BHX]1JjǼD1Y ӗtɉ,mqs -7Xm5+kl7585Hl3Bp8؞gHu1wp'G%m=Ԉ,3'_"] 2;Z"^~Wb>ц@6Ⴣsbܪ L2Z'7 ,S%DAN99P'aKMӝuw %q;X!F60·QQHj XT!ڸeWy&fksC=pE r¹=fVQ @mʈwkreG `Ga=`m{6lzPd^,Y5Ziz+ЙQ:i>{ME!&}8S}J/ݾ:?# )Zm;>Cbn.CFgNBud{4t?AE 1"$~DC _Rʪ b+E<]EK E$ኚf 8jur_0zB$R[5.AWJ7yqhdnlЮo;A_ڃ]:}+c4Ȏd>}K @Ga*~,F5iww"mG-wilp_-+akreXwPA̘8H|7Q*d@ jr=ChZ d#puuWMW`j#̅B碐Hm^DaO+O4G]'$aaȽa]I8=mz8P)=D- A&;d%I9$7K*ty)zh7]iK\I! n/@eSWsdᕡƒt'+nZF:{Ts9X!f.8춙r/ { avܻwcIjZic~zKP?K@K]<,3P%nth^Kib Z fJNh)'B/ jYV]_k>t$F:{?Eo6umoiuek Mt'm:1@*H<;%IjZ/.e֡rɠmUx{3|4f0!ot #E%e.]v}5Cq=/ןQIܷlLLd5^f9-a׊Qx"^/?u3(.8pfTVIR>x{`ygD/_vKm2e?a} M-~h2d"4V;~Y՚1kG.3?|q@X]MG.UL.:Dψʶ`ULJ30S]}7"=V Lp"mTWŋoHN)GT[]v& \\#!\킿Y4%"Ñk9 `JBxYLHU <4+;H@CJx n'i]=vj|?;Z!Tu# MV Wp5HE̡YP+f9R$0ùNQeY%HFu|B|ɬe:cBQ3%NK18.x}L?1|@H?炤oo}' O.TiJ(3Hy/LM|~\>QUl (zKy>>-Q]M+|2[!Yrn8j9Ϯ9!/ ^NuS/>BbfBjCy竰m8>hCFpz p>Xj\78YX9Uc9Ϝ\nA!f5At. :.:KkS|Pu 5z`\ƷSûǜjWB18| Z(N bh?@|YzN*n%NE$A #gaUZ}C0 m:ba?0A`S@Ќ]B?odfr7Djz+X bP~g#$XIn#yy? ;?d}yKB&J&\w%3Y}h-"5n$ ='i:[ni)#$'zT |p9A-Ui=^T|BuTŒ |r*ES ^_Z\HzJ/:u(Ub7r<&9g%p:ܙ L(*[3(w|ںza$6JTL1T-EµzVsfFw[.k"6[;V7 r5c{4L̷ y6Lغ{Z rGR_sX9Y"ycK|Q9քU(U\ll,eTLpIĻb w9&HY2Dj8o]H?c2ALtyb] vJ9~UVܰyMkzOUS` "ԸV+8x01;"K8;JBb~4:%Rx%8yi5p3Op}Kz?(u::1A*}lFfiΎqW1Ci@v!~nL=$:Vyr^b\k[vRHU^t9yhqwII3֡Qv:⫨b7D'+h o&Cx3J]A4~#>C!:"<|7`tE_-ajTPOj; Yu2s5eDMa=bZXa%9CM敍"q\i­Buvg xRH>Pv=g-!(wү}w gԁ~9l{aIU!Yr.Vq¡ULtLxMT__PڢH&r[hg6$b/HN4[_)pYn_5:,,X͕gj;5)Љk_C @vGr/A#tr+o} `b$eR`g4W:# U_<@jhq EnrTAr ]s5 @:l}b!yS #P:8~8@ {0AôYx!OW*-qA#E.<}u,[5VlE݈ %^#v-AUD,'yQΧp ^Y (;lKQ6 C񨧋AXB,S=TITSvd1bm/x&f}Y]K'Q7$`O|~\!0!;Ý1F?4{R<AMDFzcQťЃ)ɳ&nY2zª<%bf6:mkX{mhUrgEr["\2RK ]@Ä*OP,?5L~q+) ]!Ŏc]䛡dn4,ܽLZǠtNW-K6_xrUX7i\ʐ׈^Nn @@CSqğE'6FV8&4Og qV%w;NZJE35L힝+v)x|HU!M5չ5KYmO+c>6]À(Iʙ<HHCOE' u@)2̏m_p`.hepǼu+YF%VZcC(碰FZFs`93fDc[Np#D /F2lh9`{%9C*ӒC"SE,pͭj!8T1)sfŠl~r<7EJC ~ вR)➮oKCڰӮLѦ1ؘxhC3:טH…מU"CǎG3F12#\,'?IvMjȩaKhmC3=҇;55f`1ڭkQKT;~rA&[%pDʗU\()C6'D{PQ~C !N^wD`9l3>cӥ|0-y}/g8 kcFu]~քyޝ 7J6~3dpD` ۍAVp:q'~Bex$Sh$OwRԬzSnΰgH3RG;׸o 5:r`+~|<~&ӃLEkۺ/?>*gT]?.ү:`{W T8QidOx+OcIj8-T@?ߧ9Rݡ E_&0caOɣn>FX#\2IAz)-79r츽bUeLx5%:joS%:rۀG^$װt\[dP)hPp$4v+u9FS.UgBW?~Ӏ!Ô%;S,P貳q?|?6FdB#^ĠgS0 )) h.DkO[1C8 & nGp:rhkwӳj/|B̖M*+] ~u0/ߖ2!& O+}?=ޑTiTIGzc]|PbQMܛႊ51[dk9iw8NqWNVǶ Bu)h$0jP"mL::Eg%Vmix>ź\,޽8B.c9tT\E.)[#b">f8k89|br5n|o~,2JZ vI~r {1f J~F44դS`+u^=}Ub@΅ɊVJ U4kP>\=#ߚ&CvKo⒗}VAx]tֳ(WhRM|Q; 5qT(.t|8jVHW} ;w^ 8+.izc7~g'ZCiS ` j_:փ'4rRqQF*G|D*C? ,_tyE!At+Er>gj L,ch̺ YGܭ@334qbgf +njE@uAG5י5&Hue?ϝ۶x2.~^h Ҹ31b!Z;|՞#zک1Ct4mƜJ>s{j t޷<~{R~2uTVaf7ዶHL^T=KxnʇWg)?и#gm4h>UlnAόG#ŒǥRv҄YuE$حR&+C̠n#0Sʕ=,吽tt4@_hRx2ͫzirC,k[͈8"i>,u A}ϟsxFǟ U'؁CAF z;gopRr8܊0t{a\R4қ?X ,%u94OȪ$CLn(3%QX }Ċ^N6 Tw +Ƃ-`⎠"8I%LT7|W"1fkxU<He2a N+_ )".CD򠛭s f]BN*ǺmBF8aɘs ->%Z2ݚ{^k9}EYXBݍ4":KJv^*gC<#\t}hLe3BIy78L;+?|ʮ|4; DgM6 t /0dtTge7j64DoOpadŇE'qY(`=a73纂Ȧ.o2Cw)\Vr+?[Hx5telZb2dl$^ښ;X'((}v|em}f= =Nn+Ql=7mmNl *MNbώyZctEW piu)xumˤfWC" ݢh_er]n 7D g+Šwޢhx[ 4xu:a-HJпO&,@|BFgD[<:r'g^_c\nMlG 8wPY_AtXZ3LPN+j]C YީV&P 9TG4[ਧ5vx!ㄮo߰ꅢwĚ2d?;l>(31&k}^28G/hx)F<#g"d;{ }YNwȫc!ZBuÖ$4Vc `.l`N[է!`됨wqY{Re̋-n'j~^Xwح^)i2B^Bay'|OzaQ}"P"975H뜬ޝ~`nXq]"(+Ԫ=uט:Y'6,gWƘiL)# "C^Y  s|HlvRPz=ſRq bUg9B'2)}bfgO]03 2'x0Up4 NӉ-4c9$"͋1a#y6$wiK \-;#n˝hu rbY".Ur;;=}F3 OXy6ir/%B;1; Tv}~9$ߵ?[nb˯_:k%38vNx] v8%Ы^ `[B  ]oN%ZQ?ѩBQDo7]m .~V8Om[rA{$j>oϽCft8Q0d7rb8F"QMl֎+rɅ)`d>\J6aSvL,3VqE|:/Uɲ ?Gʷ 9H*Dq\~z1疵otJiS~..: 7$^U{{i=ЭUA0F)l>Nn BZ*..F}PHc(]\?"A*ЀIZ{K(*`IZz/ATn>95 ƾbw!砍8 a:M\fϻJc7h:]m( I?};4p q1ʺtGd3hO{(yz*Xs/ vd4\hkC|R9=77{5=d&O(hPA䉋gnUErh& #rE)3B׽X1K<+*%Md! w,бӜmKp4F_q:rbG} ]|vZYw4>ђ)ׄZ>We/Yҁ2q~0?MtlJB併S<"=yٵe_bGDLaR~zu}KxM}VGm&aI_˕ Mr?.ݿHd؟p` s?L@9MǙUBM $S6UB#bq^疅p/!U&~ُQn8+Ư)MY޲YAC\&#X" XAQ1n*տNlZc=ܠ o5`.LZ*xÖxX@$zEn=\iF.^W4jAJsIAC /R=R*Kkնpˏgcb?U;v緋uCTTe;I o.,S;dqUyK`\f̦meэ7nU`qs?CIJFwtX*5i׭s`WjT;!V 8))*n? j*z5rp.-øA |XkDk)CבUQX!kT=g|2y}įu7/ h%+1Ez3tS)5Ki~=k^26!0`mF`q$apBN6;1^5IyLۢ1jIOBV< <nUs8<:)PzY=Fx?wMq >եq}"aш6?WjL 6œe4ީ3BݭbW)jSu_?vY' 8bsHt\s$(,8 [6$-BBbA/Ɠt[ɛ zzDvU3> IpȿH3pfB*Cr-*(N#O[3bly*v0c-1 /vYl_cqm,<'0 >vR;#x$)+m\Zt4ړ R\sx/d(VC .hxDgrph2jC%S8bP3T.+'G>..L;F:M:HEǏ[9%#?o.ι6חiT?13)zfʰ|%1Pw`8>1 zyΆ=N ]u.]=4q`tvZ*- 7bԒ:Qi1f~@JkAJJOJ;|~l٬x cBKC FffamIY3$ChHxE8 ͛KD` JԮWG@ӀX\s{p|sԒO"nU/?\.ƕQJcv"PC7NNCs7!$^!.YWAMm;[ j0/U:8ػ ?g8fB$>92\meH~WTK۶Pj{1H&~o5)~}Xt>VR4ǡltzMu?2SPAcXZjXC&"g."ךxm%"A `#u{)@ֵ X qsW8l}svOPۤB{ISy!ҵ[g#&4ٷ6&HW| 7LsO}~O&~"kdB=r5Zu"V#w߫a_%w_$il"#Q/)Jc(lLpD=w(vOF*Ls$)`,Ўnխjo]- Fl :5OڰrNw! ^fm͞;Ϋ~!n^ʪ*rc0蝊L>v'ݍD#4%`XYm2cj5#3`&S:NB# GF _TfqIhe4^"4#1;u2YO}G&&~UAÊ dW쳠q;Y+fuЮ?:|eۘہSV>`kUyi#2掕AdW~u0WR.{xHvRo0 6 t2sd d}1JUvUŵaWE9+ػtM v˛g:Q1LWI(!H?\\%RVhWvQ~TYQtm2F+d!^i]2>/! X-'7:Ⱦ,}>9~`2nnb3κvR#;c%OhRCdfg3&GAJ[W0_ UɩRn@w5ndxS?p&/)J o6io,Kp<{3y|l4ν3v2u5*sb'[ `/XAvL Is]u&qMO2ɱז}*:j-*k -d,11棧"1Uӛk5k7`Eq} ܃:u1Dpw%n ;N81)`siHi[MlTO3e%#}vXa=Dq6T^! 9݂6|)u}5 d*wӴlp<窹銍vδqI )_1p:A) ۖ7O}ylң0H-tњ,/b.q?CaOv@`!ڀ^<$h|qF;Zw?_#""2Jޅi| ]*S veE)Ѐ((yl_G"N:}~?.Y jFR2b'ҠsNcZ\.+rhM1NJ6rKi) ]\d1,M ɌEo[8+=8 5̨ĿKAYt(v0Udv<" ],Q<6^kT1d'z"$.'{WܖtHur66gPѶW҄-Njn-,{Q!yZ:EwbN #QgFC0~|Ԕ:<_.{ y4ȣMKoC[QrO5 uv[(ڮ:1tgS>_fvh_(ŋ: ")tdXQ:4539sEIH/emNLta0K? 4~2W{eyZ,y _e]&^К](zJ= PֲKk vg,b5f=twͣo 6r"@Z+JE6:Z<ˠgHpFp|U S$%gȜ4zkiq`ظ@KVk&_IU;ڿcj}{Z{/zԨy;I!֒z~/Y%A/x^Vaz.|zkf <䞾fۦÔ L*#9z`1Vxڹ w{L˟M!#yh{,,Y _5\_Ax{~p:<̰//"Nq `daq{NwuЍ!i؝K#{[ ("s:i῍8ӗd$(b=I'ū[>{4>Zg׋gN#?OYu^ §x .='| Ѻz6V,hJ TEXB( M|ʧ^Z0v"=gF l6*BgҭQ$tׯ+)AsgZ*d<Ɲs8["KѣzO@vL<瓴%7KwBU}AqS^,C/e7d}ù^ j%Ipw (Y{HCE Bg躀1P99zD2WީOw0|@3U _y-ק!N95' [AZ%uH~ṿ%JZ*p>0(`;H|ffr-s $UG7wn (,I E#zaQ `tR9n/~lB[S]kܰj.,xx˔h4_ 8 P> 9mfJ,hhl:f"x\+^m8A3⬳< 3"4DMyHBo2nP͚&:YSCٿfH97te?A 2Pk-> ^}zE`R]-a;qB Sv/Yr˓Y?硟D奿eYaV.O}^oяk"t{(tn3Q8qt妐s< 1$[;feKmT8%*,f8ЛXN ;d^د5&PWǿf|_lϺ@-a^ۀ0Y#$kP!Pѓ0Ng@L`a^b"Xy,UFџTQɽktں?yx;VFFs$.&r]0_{xAy9",ĪAǛqyi,s`Si(%i:g4}ǁƯ(q0)Mh&ܶP_|D=f9] i'wOZ.bۋ&FDKOYm:҉v-n762\Wn6$@`_d ƓSAST]wŒo]/RZ,AoG}ɬҸqM%ש%<ة0$w m hdmymW[&i3*5@< 9C)rse ^I Fn&zymlʤ$"ɑ> /-Q'l@' Ua!c^ȁ[R6 9O%;˯ 2Z)TY^rT%G`ΣM XEj{l=9.3Ӳr4 Mr-Ǡ?d'!v2d8E!X*ӏu<vҿg]s"q&ezs!dyb@/*#^hQ4) Ê}bv*m`ݓG |ޙ=)Ƒvͦkّ9ya2k8D&3`\c5J Y%69+[ծc#W Nfo!3߰ZϤ&vۛDcvHbZ/qUkdfUqhLjXCh~a/~% ̑r (6.jHbGOlbí%Oe[8+*J2!h4莳g,,w4ªs5RǮxk*~TXS+)|;zg?V:tpG 0 l;ywҌ 7G+c"HV_(VzaŕX`l#Kx ,NͣgMI?-M b Uvv`mV.STKPz^7\eRQ,Stq*SQOT=hmUqw0mLri7ZÓx1剝J$*iY.E("vI4(jqÑy&)1SY,pl_BO! {Xd"ӎ m]CicpT5ue` "Wk~VԤBT|׿_x8>1oUv ϕWֆx*a5\lu㋆<IJ@@C-CpmqR=ܢPk?04Gk7wԅ!"`q=}zǗ<t9k"iqX*Cl'ƈRP]JuŘ5r Y.(}0m CH]紈qt+N jQIJI?%/#A[+:!yJ8&&²`Ly=<4~qLgjiO;0 ~Xmq|"//wuk{x 2@ zhXפG).yk2g[)/> < A1,+Y=k) 5mV l0>Hº:$Hx58J(;`gh%#ud'i4痏/BFF뒲q_U2( JBc& w ǾVZg#Vr}J̋*YO̐16(SnЪKΧ܌ʨn'm)y;K"p9s ;xQ5MhlGw˜,(ɩqd([䂱D)L+oH*96B7:Ww4d-Yԙv:eWՐtרԞI,/d=ҽχ-5ߞ<#O~͐yo5%].ge[a9ʆBÖ)[C4teD5O{lT>*KۜնEҍo^#$e[#7H%;dpPFExҭiİCvj@G~xK 4X!l֕~iQ!r2Nn@>Ѥ}ā^CTS@Cwm)qpA"jU4ϧ$e]~D6賊qդ \bdbVˀācR,nmlZ1:6< #, WG,܀p Arn-8/f1BMxj쵪TՓIl&G֕Dک5w Ai uP| 6mZ$OW6'g:$qЗ_e@f;zɟ2cNOd_HM@(f7bO=&n A;[愚~5벬|8 ~3)tyG x7{ aJȃM29B>^!2.UFhVd#~^3lJIѰtơhUt(k  ,FJ̝$FE2cv-<e_q2 XO9p"Lj9dbpv݆I9wPX̻03&>rO$-h{5O|[mo1Hw1Ѵ/ޤ-=J=#q3~{IhwלNQ;*\5r+S]&Z]{ qa7Iu(RʃT;r8N4VK5]XTsŠ?;r&HPE#~nnwۂ/WP|lmU،WqE_%+QO@ E(THdE 4zpn*yBcp@3.Zbƶ% l)m[dj]6&v= gKJN"ǭ8za*sZ`˫-]}8}pO|Umw70Z"T2GrC%6JD1:~ :3[0~)1ynCl1P^wVXQ"41#bW Y킝~|:{ dg5=%-%ח]7X)J(#la'J}z\)ߗ,.TȀjW 72:;xtw:Je ݆v1h!QZnXE|f~?aZDӪj(Nkj1 T3r]W.L-8(* OM{_jGun _nF_,}㚱MMH~nAdg "2>PI]_$zcэK)k& &8 H$`b9.*C_joF{c?0$7B>VIHʬeb)|lJ_B !ԶɢY~ȜuqkTYT(W|}R@ϷHi;2^<i_3zl4t "FW$Kb9E]갩jN?F rQErqw4+mS f Q **ᏇcA4 lB*^u(_/aoO]_nA3:gX3試G](Kb-]hk\Amiv"\԰9%+T|l8M@ta?B :.ގ^s1n?˷B2xN?ƭiL: c6 qIBǍJO>\OyeS (LmonX iiSDi+~, =𭽬Xh!-nZ V f,^kVE΍PRM.φYsbE-^pZ88ďQ8f $GnΕJߌelvazkh7mϷq~â: `$w%|cMNjeRu_R0~ƪf6¢6xЬ0Jo1(|x往FPГ@% Lk^}M8s,::mڌ9Ɲ~LHݭMyۣei%+bGΟ9d tvARk[? KC[a'̼/w^f~ dl am`Oܱ?r #K_*wA_tu|u$QbwXg]ЎIA #MDc\G)f`PZ&XgT0D Kuc8>f_ ]ԧ`Ề޻ 5Lm 'Xy)B+C:=[0Pֿ~w6[Zjkrmf#I=WU)e@2L˿QQvԄ vV6DXo}MnzR(q&oM ڶwgh)-Tfxu#]Hy ę 5o?#ak2@bɞAs92l+/*IN@E܂4{R"=p@g]ĽsvJ0נ0S~Ei%C4c>3֦BVR1{cVkg/P6;S!}3p]y ^/E'Q=L8~ߏF'#GԐj-ͰZxM H SZTp0ۙ럓n Xȗ9P'x-2]N %u6ckZ-ºy%xBxJa].V"˹ac¹ >޷!*=គH품^kc^`)ZKmB&PJ[B5ŝ8n aNp1#Y 7U ]RDAA"sZ!@ne^+V@ O$%*u6~˺=t?d6J&Gt:c8[fp 4Rѷ S9eT[E5\b""]'KFSo-3۽f` i ( s"{8>,Lvn-'c8֕Dt ؚr0 +#ǭޭ>ch'$ӍSK0Pq%D>ZHاD拔)2%)]Y" {T>1nnY\!irkMi.}F=_iܔJz49|žHJH 7ciŁpÑѥC;,&'O|㰶p۹w͏^M]Cֳf7Uv[_k]mYCqm&YTJ\c[]J7lڂI*L%D9JzQuOQ5l/3Y>Ƕ<˾lpb&(X O=q}%/ |Ȇ^p?l-F>b0vjVbZ Tx0r^{VbKOwsXmm`2~1m*;WI[R_Yزp>!45#fm/ $ F?8{DY B_Tְ`Xiœ7[K[l'b),mxbط@Χ5*Ng޶R ~u^?)yhۼ}儂#L|7x,uHլWnjBHraniA~$V#^6g72 %a6y>pEX[4\ >P 9-=` ,P}?QQWy{#hJ;k?~0 CWAj ,N2!PgÜiT(˔yQKxEfoJ1ZqgΤRaw}<0}1bsPSz\Q)éE©kn>c]`kGĽ[& >X2*3D/&d[_b語]C%1C?][Xè[drbR$U/`6Eǡ+}d|v<#vAƟ557{mo`}߮K pei;2d3qe{M\iX׈ך{n)l -IXL :7u k!EEꘕv1 t$pV lPv7@rWU].`Q,F!;3٣|T:5f9R8_yW]``W6 p솲 ޵j':1W*\|Fcjg Qh 1 KqV'zu,Ŗz\%ݥ4JTl_x)UcfչQԉ͝ƐkLEuY82(B; n@W72ˋ5m 3β?LTĒuٽy)PraW˒mϏ+|mͥ U dQ}F`'l@A$#O0Z~N8`LqW&GrowR|BU E)kHMs3%ݏdq幄ks.g?YXI b{i,YNtFGb@HD8: # on:KDM^d<5(emX e 'fY5~}&08\LDtEW w9f&d Rams% c?ImM }ꘛQ_{)8PaJ ՁJ sΏ=gPLZcۤ]0F`٢*4)>.Wݵ?m`O78elgR!ܸKU腝:;,쓕Q7T~oUj̘,/rNEϓf!L?$q{+S,4"P  -PmAeTSc:{Z0t?3 47'eچK&F(<̶6M䈫p wTg |"J5gUޕ`,6RZ뗯P')- ;7刯2u_iʬzl3Lڈ2Ĝ@iXq*RGYQE@!qXQ%vD2y,U­$JiJ^/eL806PU_"oy"{R 7((B>`O9&"9WS/'& u"{&I8\~6ϙjk?gn,E䒤\ JD2t-bXϴB8_'ȪFO+@{e?Az3@oQV!K\vᷮh/JIhdtEH|Ȟ'JdXGJ=%/H(dK6T? 0VD rIa &+)D* Ƽ)nt;`kk+OӳV[f1.Rj{9E*YPTOAH,E8ZP@ yNh>;LXÖdvPmI LIP@(Fk|7R" v8]mk\ڛK)85:B P'Aa9wŇx=?u?ZJ y1>D顂?zE *_PX;W=6?k0耤5eUE/+ƨUqTEΗ9){N\ƿ!Ԥ,dwNGrZ%!/Q)p*z30ЛHU^_Ձg߀ 0D:aNqImҎQY)v8MZNi5vŕDuA”Ɠ{I ][ r/ 4 9= rC7%p", Lfy+ H/K\Pa6>JX_ВuFP %-Hתo?+~"#N+/h!R 섆t Г4-N}7-`juk%G,"Δ:x ƈF:asle &:3?E8.a,Q h rj bT ?I@ME)ȏ_=o`kKꃚMuW '$$c7JFs+Mr/#@K *JZx da; ZHj-)d^}~:lr)@[e,Y8 -2bؑɃA~t{ )B&@Z*`ec0oMDo>zU%`F)OJmd=3C s">[8™_>Nϴ F52 uTƠ?j /o/GYTƍ΂ !5{VP~BQ;31!ҷۆh 0N-NDf>t2D,ua< ->y c^c<=m,%S$ Ӑd&3bEdʂ)DdQ3r׬=REbEE\U  J @%8[fDRQ?T7~/ة^]J1ۧ:iݘiLzT2GVr*V q(`aLP $y+[\el !,}Vm/WgQu%8Je!+Y)?0K+|GCrcxxt)~)O9`\O(bTR f=ի~ҍrh5&YyyQGymG\Ù> pQ^D%v RF_5I7F@+o3Yfb:.i%'UC=unfxY@AKl$N{M|7v!қ8g&SLO `9Pn->wxx?E|({uNMtZ,`oeiSƐ'+?+EciZ"x( 7|GpzD("DJG6,-V+4uuФZ*#QB.z yIi9ŀ7`. 16kX00 &M;O{EPvHr J3 ]/!"GɏrfW$vYh:"4QYqHQq^ <K _,yЍh8,V?ĽjX-ADSϥ@$ʛxc^1w(-BO(P(wDKhswJ821(Ypq t[C:&^/f¿=s&G cۯ /9hwUWP~e=([ ʸ#SkwzS~|Ng5$oݳ.}j`s@ IH`]x34XۥS\ }YZхnSoaXuG#ݪvh'rp%Ċ Ѣc\4qN4*`5%=A dMzwL"Xw?{򟬴ގt dS԰M2_NLm٥n|jKI\ װ ~CoNyʰHKܸt*uQڄPvA *Q@~UlT p`R0vJ2Tu& YpRLl=2*YH;},35swQDRaMPm%Fҭ-覵]pgGm̡) L`2%L@!N; ^*'NZd@ԠN[0Qu|KrM"Z[`^[>Hr'fi>um I3.B>MKJֿ8m2s;jdHč9oQYow&E}c)Bt!#m|+_N`6ڄOăZF)ƺ\F?Q]' "CP|e"V[~kN"kl)Vdoӭ{06LZp+y'K5wFh#ɽ)jH{3w 1!cf@CoPG1s$v- h3̕3 !^#0p*j;mm4@bWT|o݁_9XK5>ܗ[^~*&H4H{ըj=wD"EJadJ=((e$i17V[?Ug`vZ!2@Ƨ[\#fN.əSp;U2l&5jR7 .i39YŽa7\tgA3o+! 51ǯ&YMGJhi*xBMwaU3U9 :OD_T"n. =,wJu\{!:MCed"Nb'NV#F&z~jU; j`­%業9Oq 7#5Kq'P1 ajR௘t hU[>̴S8KѦ@NVQ9PlȪav;;es)z$l<|1X<:ϴzc Ţ'i9Q(iC:V`D)eܠLRWO f$XLX\G3hGā<ῄkG]pN B,)+v`J0G*#vI~J$ Aj%YZpr U6gƕfYZ<-_i٠,w OkCD+} ..qgoY&dnsaFV$!z*_ꀵuyZЦڪ0ʸ÷z'NUhZȂzfb8o^u ;7xQ`V9(fޯ*/]3;/m/B4 3K"r?M$` s;$J#2m.*~k3S4h$LsHPkj,G:PپVK觍H%~2 n>_ҮfV=Ca=0Ⳛ@Jʏ)<{V;wdӹyHymuOKaHRS 17 vђ X$skWq{S`j)o*P%x8nx:UYA3J4ՈzB.u wG[' > ]W Ͱx2dWYxAOvFo[ᷡCA`K>ES*򟊰M ۭG-_ |-#m:-ߘa7Yħp2_=CgiNʵl Lso[bGZ`1\GƺQTw!tȂsۮfR_"e@I-y&CM-qjJˑM^ gG!KNRSq}{1ָ=wѕ(Bi|U4r3@4A&šπn#S#sETAݡ$? g2Pc lt8V]_P썎bH}.MF~ ѿ*v"P)5T{_$slګ0 2D''@=!d\"Ikuj}'nkLsHTN-2ݹse9rRqԭfP!ûA5JC!Eylq澁DƑ`0,F I+P4AFx|z7V ?r2  `\8r=RlR%#9V]Od2b#$LUO*с\B] z)DD& FLL$>~+_3sZ/+y̶mį Pu}Iu_Cy ]Vt _-K, yThiɍM/pi+3l VCXf_A18i۟AtcW$ZԣKmg^̄ԕ ؓaD!w"Bv ϒa8-^U!6ؖFwV+ RJN&k  b4п&86ĥ J *٠̈́"aᐴ1f2%v[$xJ#)iȀy __MK6wg~9Y"rF"_pe OZ)0G? 0Q<8+]ٟ9!$oHu/,1ϙKjR\_yNc'~5%S"Lz'@4E=?l<v]VD=f |U3T%aM :n'mI[H>PaYc g=:.-Й |@|ո$ NsG3]JF%cH+\s (?uNS1Qp+k2td&}CX-y1}xYB2 ǭw1Q GY}JQlW!`|h p59f$Mt^ÅldKЉhNZD:_7[ϚhMq-CG~u(gM)> ?LːEg#h6ߟeޙ˜𳖭9鬆)(*{c4Jʹq,%;3!×rpGGf,#q u <0Vs2vm +xuƌ# #}ww\PC JήaJ*B^{kЉ `"!UԧuȚ 8".:DSDzeLz)l=- fY v".hA'Bdhc!o[ت$ʽRئ˛1iH\R[GWie?إ%hNtȬ[}\~8(4޸Ф%d-8uݶSZs^5u2o sf`2i4 [!a =:{D>9!fd~{tN+1N~޷EQNfFWa)@@LƮ-Ak^PH_k'lEm):ߐۦрYL@cM% De5+;vѯ]M29h=,̼A6H7x=Jxr"CsZ׆d`?ӫ>TI`Y^_DQaX)Z[F$oza-[PHf{D< N$ DЦAhq #Sw"upB ^^:ʩNp#ܵ$h E@%h@M)bW^#!p71FlT=XXA1A! + G@kMb#5'%)ǫ:{Uǁt0~_$Z$3C,\ؿ4lƳ+Wb'h/g߂Y3VAYiCx ȏ7jNm^(Q*/`i֨;*MDD%wS-< +6B}5ݏ"$!7ooQAUOs kTrc*@ye Q(\C{\]r1\* Ԇ7^Ubc)oAz?RYȫ:⡰"#_YRU؅Be 8oUB7|e _Bz.oiw]}cg[ M$a'Ӣхxq】hP ᢈR2Q&qʉSeHoZasrS`($S`MoDnЃV:]Ԑ%gj6,yrY\$7_lcM %] K -[J>_XZ2af0ԫ/3^~Pn /g+Dlsy_bMb[>-W)e憞A}su">Q0y*=B_:' I+)j!Xz]ެ;2M9iZnm:h߳(ʈ~;dK9jGpU5\ovÒe-(6xLSS[E Rɭd﫪G7^ΛHGch)m++u1ʌ1m gd:zN6Y1QYG>/r*lSzW(KokӂLic%-5NBRoH@ugKxՍw'l}@ \T "wW$.GKJUQ)xyO9UШ\'MiteHRv:AMq!_j9u `ѡj -&\{Ĵ2>.\O"LjQP]H20{ ѝ)@IVEV[Ox7KǀfMKP~F7Ln9TzL4Fbb76; ծ$@1}~j.J r̅ե#W_$AX= I#*TֳM1#;ӴW@^6tOy'T`)wд(~b%0 BJ-F2񆯫a3w VpBƓDP5ΐsȋ 1+~A ^<'Iܥ;.CT߾%~IZ)^H?;Y L[=T2rԅ|(vnぎ2d\>MH3 ܈XrƜn;B~u~|Q-.JYi -,ޤi^3&"QTp̹U8Kqxt(D9Кaq(yJx[yޓYxfK8=} 1;AbܔjAt_xxoG x}skDdF>{]d\{LcLlXHP; G lIS{*HN/F]@3KaDq]>n(?)[z洟_lQ}$GVB*R/P+qqvMәeG?ݣ>Zmq(q  (i7զXa^VX5mȲ*BCβÚ9eWk{.%a) UDBmӼJQy"IER0^4`r5>0A-hr!O}"?!F${k #w 6.¿N柍>Drْ#i]A\ev&TU[Y=p#a SG0%Q}SsT}JCo:p +^S®$tkE(q(ViNԤ 4 DqutXtl&f1ߠZ׾@"w4''T@DNv;Iow At8V&SrNȨyNRϐd1ѱ b-ߠ]pÍhXpAR禧::@{%oAB򖌑_Ɋ(ט(b$\\7\^ JbexY0~A&{ba^2_JB㻆k\Zl@:32sfCs3}`",} ) gLwGAs1'Y,:',j\= D~ ڇioAlsҵ]\ӱ,1)K$UxJ =%x= țDw?$ 3S;V˂/Q%?c]y50A]u33[Lt拑BeÑ>5n,aH0[ Fr,ΚXO0X?ָ;~c-Uͼ)@#yk/"U s|he:ݨl]J\"c-h]O='IHG":L:YJ3aF-iGYTbTZ'({od`U)& *<k;@.0LL7ꭓ_Α_6 -f]Y+8|8;Ie fխ̪iNNb΢1nEVqî#Ӫc#JlYgK95ۅL-+vSߧ>ae0weh)NxNUcↃw`" [ƌS~0_L\9:_?$)WH#r j;0ָT>RR.?Aa3 #`+nAr+3*-h1-O4#Ev6. prߝbr9:hPE KM$X,H@ V+;` jxڥS!4Q)N D[ Xg š.Șos GZˣl.p(Tg C뭧gŒQi1\]UQ_ k![1KIlhiJ0z/FJ@3i!',Tjh7^W}xʐ=\`5an?!`yW8WAނIS_~sݤ,[NyU_& [ )J‚_j+-?b\tfE|8{ ld?N^ *@m0Ws.vЧżuby-;|2y9>̮. ?#Föt_w}ps;Pkw\ ZƯ?A$^Ayt0藫ac,N}kR:FT"]GgCd󏗜7G@ɷ%B^( ck?AvlПhW'yzy@Y9xb*yY׋B of(=h47dH8ʕ6T g 26viȳ,N1MO#ЂWJɂ"w:z=*#qǡ;\_"{h)\|^9'wT7 .CW8䄾XQ7u=DWBy=1,!P= eme, CM+1@ֶKwD v!Kѣ/_9\\yȬOfQuά!{mrZ:my6EՉa?k$kh|d\!u tyh^;oX۱(~sS)t~ o 򲳿6K$,22>W]3?+ .2 tTY_pTr&J2Zw { l 1оT[wgutd#Rpy f $NQx_qY4C:#P>N7\(ʺ*cv8$={/JVWz̯n}(4m; ^4۝8 3#z'o״| 8ƎǐOVCC%Gfk"ߑVh魷ʳ.gPPwz93GO}f-C׏e)|o} Ô;l͞74 XFȑ(A*\DOC/춑\|]Tr~RB@u̽ЅCQ~iϷgVF+xDk7\y`_ L92f[ Tٖ?7cZY2]ɺ1M滞B  1\GP4^ۣ[Ԏ.Tk뵾0dH=bc^gPPPmwkjir"hM@H6)ϒO^M~L9R}4;^C`m4\#jI16%M!O(|2͞F/895E#+]*tXP_ a;p>4qcɅẏw1b tǔ\H/[fzŽEw.GW, m}ӰdUyd+ҿ$)(O$IBo,\!gM-sRoұCXq >K݆zwHAJ`P|𫺠o۔(Ӄ*scidD6ȿ3``N8 RLX\a4q7 0k)C)!"GT(P4s]s4Mh%wFG]n2]2F,B{L;\dV.ZWP1U5j@N-qΉǦNzX5CAOOvJǍ<܉$H)Լ<*Σ  ̵Q/4lD/ՙCfLUb,1+-ul,uBXI?}BѾT-%Kk8S)VBG@5x(R~75 zȓ׊emTZi^Euv=izU4?}"go'"8{R1t1&yzm?0XoK90$,ihB[%VF3mg8 _U7ו1h*O' )͹^skx?<^Zvfk%rԖz\S߽ΠÌ ~;-*5 2o N))sVO0iVӁƍvs)pGu+F =@Φ=BTð<.`?'PD0KhaV$I&z6 rR@~+sd'NF\n^}„2-em(j#j7}_noCO|bp9q{reC},*NY,I&.a[E@ܘ{(r/ tM.`"L:VLiaӅH`sIdd+M5\o&V4ZB+$fLzMcߖChJ0ܯBeD Ϗ@Z>KV5_P%mh%;{*{]gLQҙ,6mJ׷ {g7vL3~1]d-T;~YxVX?ky'ĕAUtV]Fvyg^oߪ~=܋jsnҮ׶zknޞY*>(\Q71ܽ#d.e3@z9s ]k:Rա*qѯ0Tux>{P+ 㠆 % }[uGN r A_&^| xWk"Ӌ1.)^zG^͗kPpϠ^HdWc ,kp`( 24-A 3DOmytPŰ*"̇0O2LQ_u3JmԫȬ׷)ocNv-ȌNq>Y%@,+Qxv&_Pt 9mc0W,swVC(wG\5jj{ne#1F؜* |ơM6xg` ;KljCӱvQ!, L^bإP 5q*Ɇ0z># ,ŇwW7Q4@$qmlu;tn"{L^Q^2dzY8dfS$tҴO˜lvǥW4LG>u}{c|s%v;uyrV"sv:Y޹XPY<}?Zߍ{:MįAtnDҫQU&?9>Bvm <&jMl]+00f$R?Rf .Y[8=uߧԍ *dQ/üd.R6w&IQb!l~J񡻑ng7( SU5ٌ}Hd1@~pZ󌷫8/O>fgc3;a,b3Ya5Cp@Eluo?  {%MPgGmVmS(t d \Qe[[rZ^ . U=:sduẄK)}CTu7hI=B [L *lf_3d,f6sS{9oq1Jgc΀@(چ`~w"HwwpQgPә wU@G3jy`{. z:aׇM_u԰1pks\lW; G\/_KŏLGŘ..K黒H؀/g"?pPhfC(Q:b%c&:nDI+o-3s7[qcZc_\WZ#DZ^fi!Bo 0Va"l.do$1:K<&;n4!$|X!Iz1(-?0Tw߿t.gĵT^AՒlD(v1 H$[='X:p=)c%NBApBO+mb@ ~@8}.=;.Olȸ#.,+yL:f{{_n\P19$} S@ UL9Z]TØx&"%ip]ojC|.yDMlð=NlGD B23EТ3 3cԪGI=+swdE^ߥx\q n_Ù }0*wPk'x*GKAR밷t D>bGikpj5t")Z`է_nr,B?Es['Ri NL!]mU8Ki\UBXlAKPz5w7(T[y%#*k-Ю:s3.+~#8#jDI:r*a Ms bANVE1ZRB)% fqԼT7-76iKTn4]?(qa1G [ʧvkqk.W!7utֆf)p?i;yHoJ;#?Z9ģ <gR`t\~5~k CPG}Xt#h6؈By[i{ sa@ eMPmޛ}h^H0M1pdykhz~ЌW,5nKj5/xƌ_M3*#uhPy e`I:Cc#"T'%m})/{eҥ…<]Ե3gM N2hfZzyD!BLIO27J~Oι$X|xd|7OcE!|S$<\ʄgmRȦnio!ګc_c_a1Q|_[Lw>p8yutƃEtH1`\>zˆ;mKF(DɁ 9jLQYf 9yдAϾ4g?wb%y*-BayRN;0P}aM , Zt*K( nE';Mf!h01ơd'  X&m B<33;6zZ34Ņo ‡X*GG0? }4: R8u(\yAy[B :np] z, y0`794tC9ݯP&sgQ i躕q)UTۺAtv:M_/ /~!1886wC`=A=G`Sq6A}N9nh#Q_6e ,.1 ˂( 83 =%u2)2B0~jbRH/o=]z8b&C>{+iC@K=zk-\*,WeYW,)\Sd0S8ɂ]1a'fz*Ruy[=E_BKR,*0갫dL;R|zߩ{+19ō2 ugF[>@ T* [!O/%`-%ǸwAֵa:/yE"oZ|󠗔 # i#*?l}5r':|R6ljܕNX'ጙoyh7L`7B }K=ݶZB #iV G̻[;"ж{{vٶ{*| ' ‰$VTWqFʹix(MwҚ\')Q'-7ORD) *yy=4šul9\BgF_'L/M d*@]Y2O]f2+ p]|!˜n6 զl>P6\ًhG` [/S^&cj5W0B;Ru˯ !+#|ѱ Of r‚(ϮZ?D>a=W)Qw#BYI[3ʿ-Nbp,bS75q!qV܇/kJh{SQ˯f?jٺ.e97լĮ:R5*ndL,3z<ˡXL:P¢ ]\ (Cm$WqT6>H\)tC>M9MĢ8HNJMӀݏU-$᩾YԁGD3DU& \$>O_ KЎ!hj.Y+ HJ_[ ۾°"̂J趱.멓#W 1NlmY''B<B.w5M3ZC*BB'ݥW790sh\Ug=Q!zAq%b0 4-9y;73S/So*/{%]lm +/1ۇ!0`M@$i(RE _DL'̵] ΢5>EvJQkNMbưLHMN6€v2zvϱHTXЙfsTH>KwػMQrT}0ۃtbtyBw{@Mu(;~pMܨ3 H5[CčE߽5& H^M`*.^DH$H BD_DuS^ dzn~E.D%ޅTPU0)\rݢ2#B߃H(x:zM Sx-JjLTp46*мJl kmf2[ht4W ^;pѽ87{:6K Ybf cFg#CiE7-t:-$qԿ‘dZ`t ;/f"7ޠk@۫QU5Wz=gv\h3J-]ub-χNT(x D< ǛZlLc&օu0ɞ~K&&((6q^3V+|!f䋮dd"GJ \T;e R8-7xٹb(\p! "\FesW?7J[d` !.܃H˘>Y0g=X@Bo .D^4Õ].ثij6iXر>>*YM$r?łr<KCLkj(*{Q1C'9"[_M;L*u6~;s}/] >IGju?7Hz).TvS(+0NIBz Qnb^Gn}HbHV  {f<{|+ɹ7WWٸA$43hԷ(ۺ~*H7o Dh_߿6/DW(ճ'JKhP)F]1#;}u\=bXmVIv}]9K7SMm㺷ίe8o/W`~7,E|)q _RA-"'$M/}{.B3u`Ò/RFXR҅pmݿ@õa&a=3&Vfr >Ofe1?R" # H u j=زz $GTEtK/HI  =VwN(»24Rd53̖2kWJ:d]ՏJ|40Pc'EIZwQ:„2ڜ4C[Pf*;>Z /Mn"'k`ÃbEjN=!w+FfS ;OnA^^J-W$&*[⶝VHk G$=gbݸWyLթyQ.5C ]Uy.Iޭ~a4'4qL>;76ԃ#){`r8%@den4W "P}"{ =Y%afcW Zp,ѫQi$V`b \^H KNfDlO dF& B2 ٿL';t[.̇+{,3*KŎD[B-@|:wW|Vc6UۂCc,| aBEtN$t<ܗ4Uu:|hx^(WLz-ڐt5}?>B; ROxO hfRksnT#SYjc\ wx\V+^W~]N^`}o|Dr[;qPz︅>4FM6pkk4vFVfbSu4}!ƻ}[cl2ힵM%ub.\iZ-fs 9pgq"i9ٌ B3ZKz+o>FCz 3Π6'?[  Daju`#^, ԷԨ?G-ūk <qtL@''5vOA|rYnpYqȈ=qkHCk3G 0KtAMHfI٣L>4ݓ(IJk!Ćl\~RGN*Pe_)g3HWR9g@c)5RKhN+!D4NIv|_SʁX:Sl33Ҝhsԛ0JK*'%I^>:>.+oT ,"&}Ms"P!#u{Cs?qk|P8W"\r`6,O# 9*NBGhCE)$ V#,h%*Y-sM1M;"0<)iC%7#3Bl0;(FQ 1qs_([97AΗ:JA&p4ߞHʵ j k~WoTGƫ(a\8&tX=l.{Ė* H{lV6U>9݄FS?51dƊ(Y:+-e,u Pաg;xէW[KAX4QZ#{*$6+;Dl, BTsƎusp42`Mu F1p|ELO*7_a,wH0)X_891?+1t0_ڛ!:&ҾjS5iu W#̍Y|ᬶBIۚvoAA$tTng%קO* T OBr=z}MEsIN&M~4DtvoeU]}?%SK=' kTJRىLnb! j +Aų$zb9YK9r3ڕژ-m'!QeYrNXj&Fx.&. }yvr/:E~B%{ډ2x+Xܧ}:\03qsj6 /~n⨬*]wS<ގ1rg ~Y{ DTv"~NAn8R׳虋v9z!+?f߆t*8{霤W $.|<6yMI }F%%xoT5"^el2=/aiZVa&v;2u \x 5amCq97'RXrcv(I`Գ`M,kwlq=c' ڈ_RhR' q,@IL5OʞRF-@9v\ژN.kf.Sdn]#p0O6q@e3gM'w%Sf1El*<ʷS?Skjeð76fcl+p?Y8> ccMNhYYlp}~I`hDvci #Lᅍ$;.=m(޷b`1a Ϡس5 >r72fEqT+A+~-ORǣ$t 5K_^M+ / ouvj*/{u|9H K~9qj6cV;F~ogBUK3ʸZqy9he?\dEiB9)J{@y0mc>SzaFp E4iޝJIdpQº, >A=l K2s)6y.$9T@V|ܲP]>VHw+1xMWFm H5k~]e}rFa.rtO˪Y߃T\A7 {tTh }:0:ǦVД:I_!*I] xM糆fyiݼZlžVRͺkjr]j?'5⸖G ;/ͨZܮ6N^hOu.AB}gk. .֛΋Rbde]񄴮ĀtejK[f?K-8Ik9ZX\25ժpV~۸. ^?آAn-}.9x杺nF! #bͼk4^n71 ړ%]y8>~!Kw_Ї@! ;fF̓$W9ܱFɂzPs9AmjԛbX jZZ' zs56I~ TQ|nÞpVQuԐiTBH _tF'OXʸ bٮ43@F K9uŴ%A>)uq?a:ԯs$fDpޏϵq-Åc}L|FRo{IQHde<池-WťH% qRxf{Rg}$R잦LkJ#@W./:LQd]kNR6RjO0M֎Q+ K 3 T[׭Ԝ <_hfz񓰓xţr>4XGMQ.N)6rid/r̀).Bxm$)hk.Jy}K^S}M;8sJv'[o<) _^6Tб Er^a0W"gm8Fmr%~Sb;6J~G9GUuSm*,bfÆː)%2^x|DS`G`t~b=߲ iAK}}YGgy#|\ ޿}GRxlW_O^2oʠNizުV%L^0>_ *X[ڽeVQ *D -lW'˷Y)YT|@$)vѣ#k#-7|'tlyk@9(N]Pה}rCi#eDsHORߚ+ ^[n.՛ p-7NxF^Fpj+ܩ&RF= u N8T] \BLRސcKX|,0Ӟ`y[wYjMol$ȵ&" Tx56zJ/%2[d5ɖ +q=P6zՇ56+a(RaF,ez=mdG~"ȅ^~ f<2*#|:ZnׇKUڸ$ؾyKNgV<+'rkdhVlU9CHQR,P$4sԠĭwg^Pe{ӫˬ(tX.-̍y3IYV8Xz;YT Ơ4wB=HDI_"ܘa>D%shBяa-0n?:e`@b T[kAq(Ýȶ`U =MAM)u`7d,Ɠ0d W S/#+i_Z<%PE:/ʐW7+E|uN%'K> ٽm#G~11N4*!CsP G@ #(Vϴ&?6"7\-ϗ=,ilT0j=ZC|GSC@u.yቀ u nu- q&S`%!yr`/rF1(J͟ ^S| (@cNV k` KւCNȻ$JoPXa<<]Շ[8jUWT?dNf) 2QNc` ]r_4.kyp\ jpO|7rG\Ch=֠m54.+ 2 qc`-3H?;xܑ(  |:"27@ńG5Ɍu#'G3X=qxٺ"F;@y*E,=n "oL'+m;@͋z`[-"csE |\= aS';YdFє׷^C|uȝ!_q/Tv 3(?S=[8lgOowa]k0RXFTjZaI}:KFvcbbsެpP5MToBW`M AZ7Ne0M׈tBE}< FUqݫH9 9$,gzo$8&w7fRSj8x b˩ˣ1إ2b&J%$w6ldžSYn| \S# l 1kEU;Dyj!W9;R$ |- 4TM;5 syn ΜP+x5%nخ^IehƀG!5|^l◮G ReR< @ݛH{S?k,cGyŝ+˧김zK|t.;Ƕa"˕{Or䵻2{HM˂2w8R5Mp z#-W$Nn n|s L7-J.uiѢ&1P#H?A|) n xLϺMźRxS?1*Вf.3&wy>3VVojot&)ͫ. ŅWTdea!=(8/uWA- {d_ضꃍlQF'ߗb PG(k10)NJJMJj̘_cp2Fp!eMge0Ќ(Bcrv*i78WZ<GN4``ߢiۧeGp os1+:|#v~-B~r5(q j I7?j{Dw ER};4WRb*81aXn_@I2"爄sE? MI` =ͬ4!NlxjpǝJǽɖ3W}rZLvήIJ P4T*bn!K.Eg\N?O/dׇQaM˨=UAe~Z '*KH93%DC_,1ds&:*RԲS[8_KGf .p+^i漚|cySnrZH# KP_]!/xQ>i?`P6U3t%:{A:!wKl 7!g1t]^ʄ工_:xb{ zMLG8}Hj mY`ӽQ 'wTlxFܖʈi K SS"(\? )掌= Bd[Tbf 8ea|4u.B(7ߝ6*!O8E:{egzd^\6<Fk_G{y;Y6"t#Kh"\&92Hю˖J ]G:͸#J߸EBP,h*Ɇ#a!|dA"b<}iDž˕f\uerD^wh9$=_(刧GfF! ߜ#«~zy+3bu{gL[~,jiC]yxxG81N2tO5Gy== N3wx݋!x(ebMs[X|6ƽ_(mrǼ@Ӷ/: 5ð޼%M(t2LHmOP4]ct\P5룂,nd:=҆A7UﶡxܝBn#WL:&iJ{8c AͲ'+PXM8/k?9 Q,Lڊl}~/ ɕ`zmYc#S. y^Ml΍&{1f]7鹪ZZoIRcLo~/tR ` 3U"WK,{c` ` U_[S1,э!3jsu1{eXvipǟ֞ f91G meieJ/Tey>{Dm+9dW=o: mmG;A}a+R@0b־k+j ]Q7E_UShTdKvpaK[R G@QG?FcsBE 4]ūP|&xCO{ڗM]NcΚ9w Z¶9C4Olu^w#OKa<5rv4<&L[ Տ@d#%l92Λ7iO70G,|:}Sx hb,͑Gى;o pݿ/C1igX]Y@. E e~GZi"eXVkpt0_jY!o̓- ,hXԘH+5w*:1jd$RX]<J̘J\BZHon6z>(;W%^B!POqOW @^n;57ۢ.Kf f9Dx_ SU<>+~^EBGXT@Ԍ$|[[H[F;_P⽌~B""~V%$]},/:`@oxMd8X&DߢCq0ʸ!m@\T0@,lW71&qړ:lZ T*L2EҔ#8mepM^>VeN $|<Θ|_Z oĖ8|IKW,o*U3aagT!0&:kAoHYF4IHDUޯb)'30:z֩j4H4X!)j +c#ȻjBʮsΠjZ\<O,|"vc׎TiVSeHKVol3`R'd~C UzǁփiYŽC՛K>-kSՁ l-ĴT[^jf1 9ڂQ6n zNߥ0& )p?jRtߟE@7#}էM֊ ,\rؐ".2w.؅I^&uG ] ;߶_Ju\I:-G>^;w !:*f ɍ;;CG.k daMj2;[2uǡw<^j〭o瘨d#lٵ#!7θ 4N7p 0-\Z p 03Vj'`oSl 0LR,!^FHO.?}݄6A>#Q>;.4Ƴ EN{H,7Qu҇_)An5NgT༩$>v"YXaY`cདnO؁f%Jv͓ڥbe!;4QBfG@]JO劒 gԃE <|}>sjT}~պ_ wRÍ?[4] _=_-Μ)<3'̽4kK/ɨ(Cz{4hbݞJ۩r`bCOx$(AYb @xxP u/U6;^qY" *I4ɸ $j&$@c7OlGu dqR!v> ,U>-T\J$H0$uRhs/;Xa)-c冷үp<o܅nsيoX/ejvCA{(8tJ80*+PO(p;[2moxfN[CopNT倇8ӎ;#Y|Ef,*r&K&MhU8{u,#1Z܆Ca?>Z99f0qMvgԳ F 먥|N Cr#kN٤(~HefT+Y{]M$Ѧc{%3|Ĕ bm֕Og頬GFf}ZUZkN}r]^芪39By9c=bHqع'!DMNP&v&FBFJ3j;>R)0bJj.y.L2 [W}OFDbp )вpy؂tXh]TLP $N-Q#{4efIYTD33KGt)|WmkJk\y7 8Y6`# L;.w``#v/xܫI9zD;٦Na?;F3TvZ!BÎ̺,U;zSkQ0i*oNu'W9i#>W*[ǔjPN=G~ԕϷf͙=*v%a<3@Ft;!#aD|ˌ('ޓ Ftq';3 1pDNǶ|RLy![pL}|@CwK=z6uzKa}fcL€QcrYȯm 5Y^ K{4vc} ČDK<~PNՅB’V1?Otὕr"#4r7(n!.]I Iy[c#]ж wg[PINݳDiwJsges*:[atӯZ_Thw%rٶn}>TP2N~(X0uJ"OZ@Gm"ς"! 37#G*sk[Y6{8 y ARXLEAw`&HxH2ZO,m*p(Ei{ rrY@mԱU zNI} "'js ?ﶔKKe m}B?,[>=[ +QU:R;$=IailRnM nڲL#{׸=vx|^v g_+U {V-0Z @70zh-4[}CSUhR*u[.Kʱ'~;{vOMB%l#/ //xZv6..Ky徟 U( <Ŭ;]ڐSG,4N!du ~I` 3Rѓ㜷ݴAl8>,cK`Sԍީk*m*Q\N8$ W(Ӗ _Zn J\w c~hh$_A%t1cfóg{1+;d˓uɉSi=Ġ_ z> ̫5썬`2ϻQ8U 0'pL&lຟ=H7uoW<2?ʸsLO*RGĊ;=DY`vxȭiq, _tY5+ϩ˙cy#*" Zc{[IRF+1-pVDE «ھ훭 ߿i?Z!)[_ncGpԆTV /Qya ͼ8 <2QP+zܹ4 ߡeKl@.FVQ`8\GZFXOXNX#/^j6V\:WI oa_` x$t#|W<\TJ-V@Lm~>t*1HM?R QaV^:J/# Bh4$uxĢtngD@bil ̰ϛlߑt<:QcU;_ЄWY F€ft&Q|hU5dZLK̕]z*w/T@"d>oj)>-1ʎTߗȼi҉bFdD' cXgӒ&B)R4Jg:{)YJSuɩo\PU,?vlJ$ϕw,w>DPd#=ڶUpjax/~/2*C>t+\א0L,-7#oiJT),NhG|(ӨYS v;uls $mSYk4)JeA b|z:M)]g- 5 Gv[of0\o_^kqn3 7Y߭pƃ$:^!Zbt ݘz(S,`'dۺjp BpP=cFW9@H*ohn_hc\H PI~nIx:9Qi3REn#F(1CkUoSnjǿm#y&jAZ{t"?*95m( Y aRT&d/gIscۥ%6Iĥ27 m= s<,O̅:COQ/` 00T:@lvb`!ʠ[{Gݸ|.~&/p6ML6pi頜 |b:*׿vpUG(#!5p}ɻ7IѢeM 6)Y< UޟĨ7o;+ujFht} jhs"6jh>y5֚w\0+(nW^6A~43`Yx). ދދ94lIA̯yfǶ-7֤ \i煦#uR@`K{VnͮÅC#OOm'Se0/<$/n GD8Ps08ᅯlMho;&+sz{uY47KHnCd +7›EVHu@ ؁}sz~b ),?\^ A{r-|Qra2 Zznwj#zJlB#.}u ɬh[++5噲\뚡,\ۊ{ks:E촾W0/8%m/yZI3-b>`s:7]q#!!3;ZmiԎ5=l_A*UXr5Ξx49}lqRVhj dȖ.vsȡUuki5WK N!#CiHYKp{=?\ՆfVIS Ht2sơy 75/v4eTږFg Ҵd_t)!go )C=hIC~>B˒ ImD6@⸥#)X!3:dV*wg{E8*kZ[P&m4z-;irDD)9U.\j,hv*b]t+_߉cAKn=ೝ?ߦԲ_ GD|Dnt"%ǫI(sQ@r`ѝ~3߮TfzLşG#2@M ӽxS=)ײ>%S fT7#HiÛreM|8!A٪s ޛ!]~`cK'$҄6~K @27l6c9W{``?{3cf?/"%ST%:.:Dr 0Ad6>\:6z9-l)p۠z^ _!mTEU!.{Xy-]x3ygu'X'>Y:O$QFPCWemhJ3c ,8:l>F FYq.(]s Q&y_$s:>ܪŽz&^v#)dd8ڴZ@$yY~J/z*)V30sVes8fȻ2`>Xhܳ] )aXI<})CO6*&Ll 9V\WWY o;k9A>@҅,r5 ۍ^bOj%pP=miBy/Ke$b mG%JXum>ve<֦y%{KGTHL1aルR{wK-ZNt޻e;6v:h u/!v;ѺO޲<"0fgUT36i)k8I巸z!~jŽ Ŗ8 ?mU'{%+&?`End4d}tdu8C}3LN;}9S )2:i!\:bCbVܤB)gkXܠy&4A9jC^r$Jo!QfIGRQ@[y0t.^'y[5Л%g*&h _S&}n&^ f[?[?x@Wm8̖Lq^ ſREV/g /FgfTl!Fei>lrz]$ܘBG(Ev*k7Q%*Twh!u>)-Oo '"5K?Y(LZҿ(L_ XI#c;Rab[']Q ^OdL7T'8](y6@`YqV"NUuh;vF=^cWmP~nI١{A( ͥ h@.$UcX 8PYd>gHǩPdSݪR8f32 FLjFwbdP9x0$b/њk-?K?lD߄QcfVͽaJm~?Kvg!}R"A8QjDܓyJr?j3mnurwAmh{&AҴhۤSG.}H Wȫ&k^+a6P̰/m HI-$n#'vtnӎ0ו|d3^l2H.w9X?'P{|` T =T_m.8Y8f7^e]{cӭYꊌu!$\az9Xd "I~%cJ8];S?}4,1נ/eW';/lAoBLZmF's~790/u0BdTQ?^zXx472bv82mp\qY9W{LV790N w[-tωACa۳zbDcDt]cJ@rUmö(J_<{M;Gӥ]EC6V37^h".CJ)ZD=~ .mD*(*h-dQ+B.*jДa o2gLȲ +e;w̳Y SEٛ/x 1lK;,b Tz޿e`"O#5ƃf Mk[/e(@}+yB YWt(ISӸZ&nq[y0"\GMmXnָo!~4Z(0{ M%gִ%F?ޭP̕(3LoGpLEKݤ*Y-U)gb1=2w:źyc׺MjYJ WOs+Xx`fLuja$c1c>91$D $Bj`G]*k*QsW|JP@%P9.Yy6ʝ)<3 VG$4K]a&ީYlҒ->c%H 0t^E܃Yݠ/fZm$E+QMc<s[ X#+aWzZa9j3[e1hSZc6뮙ouT,Kku>@hӪxA_PmeopAeL?#|pjgKT`LI?v1 +؄$ˎC}K,ս$.b.JJ,O6ǨjGvR nx{M~{$fE\fG;Ö8>`D^d^ŝX3G#L(n=ʅZ2>t^XB S@)W@,b-F97MZMVtI[.x5tUH@iz+Ke*X~ncH<),j!xay-S?I}5aJ;;a ςe+I8|m bV8fќyMP>#|Uƚֹ1tB3z;, j}{s 5]eNfGl?]i_g=N9'5T;wU9jKղ@JA@Q9vbj; )(\Z%lGj,AiTb<QeW|JʄGn?p֥G;v{ʬƏrE s)ѶG3|5.~-=`߿(ZNv> N^e!b& N/L9ZpADU0u8O}S*$F?8L jNcFua$"t<\ {StXў($[~'+t]KX&b i]nHDI9?=)ooɑx9{M@Uvfa"EBm~HLKmv,uS: $DQq< zj*XT2`Ho5A(xL+ EQ~zJCW^v\MsТ`pNs v"읟d4z^ha+HNZZ5Y'e& *Чt1^rӻLuY8iaܙ]t憜g)az{ˆ#-csfѴ. 8#\g4uj= +/+9g ^HW7!⧑ gpjb Rﶄ>s+_"0:zGxT&"ԗ0hV;/u6 D(p1> w xY;]@`b9#2IU CJK+f$0?DҋZ\@t5RK]T="3ޚh%?#>Q, 2jUEA7y,L+3 ՙ??7E7Q$&|: ?HDXhhP1Ë9;ngοǓl,ǩVݺMVNİ<̨(C:d,l浽LЁ.3| ^~dzMg"_Wr)r$B ͫ-s՝ bC"h0 kI$*GKBjTzpA,{:BuCˈ=t\0FTf { ÖN%pvVx)#XFн @n ^mގB mu1Q8O6sNRڟս&:eڐ˄+@<8]&4!.e y5ԣw EQk uwLuiVet ʣ_ElPB~bTh ׮TZ|s?wI<Ĺ@|LrlX}_IhC$0IT Z=B[ PudSZgN,sf)Iˎa"g=x-XٺFN^QZ Շ6  mj z4yUT4.ԭZ|z"0.Z5VKG=ULiS OH$ U+#mU jBIA66/R|Z5d0kl X&EӖJ*Wr|)r2s6{2ISr]*]]5a25LM.y\fnAi)<`*N-7V]'5kljD[4p{b%̄LI_? YBXhۦk@pq,dLL"$ \Ĉ*)nz唓9J2=zz^l€vif]Ⱦ>^^BJ -`R'3SlŊyyr҈;^v1XJ7~=)e2 12 IBTZ)ԲAGBv^g,=@*iE}\AHHF(8Gv,^eOvxs>H'BEF&Bx*j{ӊ:# $̻ۉsocIXQ6t45U*R:Dqy:ҏCլ!{b MZ {F²]"y:ض:3pq+AܑaC=,͇@5(- rs3o .*(Y@M)@8-KRo9TMw4!0ϲEV_勰LY~oY*?r{Ճ'78 CLGs̀w̻Ž#X%͠WA/bIrKWzUɤMY4m@b `zSdoٓygip#Ge3DMAKת3,a'3au&n`clra8Kw\W&V ^9ttV6`_s'8֔LUq8G_ZIl7/@*YORN &0k>P)6UTgp'M*O~wNo5p`!w7lq-  zy,\SR|9J]  Xdӄ.7a4=~i!a#szdU@?\wI/ i&W |U 2{$X?;.C~UV9 lwYH@'r4e46B3+a|e-^Qɨ.\hY"23̴LGsAb ,,7{Q=A\aw§.,Dk $ [-U-S[fHԗ'?C2̹ٮN GtؓMuv97v# ĔrxVW~ߞO=E}ے߂cs3hˈl])K9 V- r=.fP4[+HJ4T NV:r9@x:$N?ᇥބsY UW`aVԖ4ase&`8!@3k|^ST'#!ek ] _o2иdlB_-Ț&E!Xĵr{r 9:lsIɰEJeo0B[/rë*!;Z-ShaK)9"]؇hƴ״HCkE U// QsuuKZIߍ$&~jO(Hɕ-jE]1mW/P绬wH/(QgIgvxd#<G*' @%R^۟e &,ݧǞ''ULCooE=[<3;Atk,,MLuz0JJ kr[W/Yڏtd:$kFK-85?l0rLU^O1vګ]cۊ8%1D֜EuγI?AuBI ц:%X65le$.%DS'GS eQZ\ԧJ^z/ME@b<ҬHvxwox:%arzRՏ< _skZ= |#8^$ۥ7!Q-1 zn"Jq2PťM !9D܂EwKgs-#%WB Szfn-ae|SE%G2UI0 Fqn`<B4gȤo$DP,HV0ClA FDjbfm&aƝy0rfƊMx҆:E}뀹uQW*g Y${ӤP$po^H[. @jf5}^6y>?qnZɹ2sp.^vF*@:/(9KIr)(:9;^F71оY\aozQ$Q\zݎäGLZUMv l@bҽ'WWfx| /gj֥Pv5K\Т̓O,u4kc<\Y%pf:|CNY2[La&DnyҬ)!])j32a~J"_((EG\XXC<^SꚄ9i(`\ cр&x#KcOʼnH}h%ByBzO/Z-L\7Նp-seϮLA xH߃1zM3bEN-/{|CfE' B|/gINӪDok2OT-q}zG4{uS_ŝ.T[!$F(ږ#; K ģ~7[!F_bPHѶɆ$G W;p6@TQ,_DWzN"=iXW۷\E`_wَ- ~Ǚ"bh˭ P2$ p f!9bXAe'5ϩeYxUPwcEkB1N~T Wa%9ZÔWmpY>> S; .rVl_l n+o1y puvuuB>NɮNRd?ka23[\,7ہl\AMdvze)3V%׋RmX`8*4E>/ZNtemE{~ !dr>md!#%&UFFń;Aɮ`ЩaZtjUNK&U`.mhV&VudIEyY}F[spf"*5J9pyTe8|(bjmG$AZPӷpIׅc/#Uohe4#{(12x?u9>ȨP`$5VL^_#*);ѶQySww2t!O9bJX9PԢH+F>NNg iv.l^8Gɏ." y֝0ۻP1 #%$Ѩ/?o V61rrΰ|\Dtm^HwmDBv\K%>&ыɇ8m20otl޳]ܫqh7{F!w/qH:&F,dPZ}.CE+g-1'5i0M4$jyNR8)螦eO棝B#}ڀU=yxnl\0 Dv6y3 )Հ]ۖN}(b5ؖIR$8cŅ1;"+"-hWĩ>R?G$P5Z}+ȟǮ6GJ941 !֕x#< ;\KT}B)KO+?kPnr `' ;$c7;BR~$'ڜ,т伌Q`}e2(hCfPLQm'AjBbCbΛ=/9k{ /x_V\\u@Ӓ'0U:,&?e-`#PѹtDmN ,-C__'q4_Fh`TJiFhD܍.&kL+G3\g yr_8*lX$|Ow M\f=)sXN6r%W:; H":g.%kSHD,W*zh'?FwJ> HcGwrHjQ(uƵ<= D% % 16Kt#TB{Ēs dy:!'%B#i9-.Z2=z9ܯ' 4gƊ{,I>x! ,Wn6J-HHaD^"yʅ22FTحseCܯcJ-][nNws=n5pi.Ū,Y#1!fAA6vdd*evBaU'DZ/ Qޣg1^"߫j _ciTV{3汳)0Oܫ??;:k.> S;ƣHHVa֣Wc{6贁7wfra CH†>Z I_?p ,7BmPH}ב@w4)$/bw{sFrv776 my3ro䤂0wOu/-h"ҝE['HWj.`3twN3`cz~BX5y,OnRܟArFETͅ*d2c@Ky3Us l]0n%BN5V(J=kjRrЏz>2ȓxuYomv:-˽p %uYg#/ӈe'*&],q,KORv/YmJ{K7~yE mE5_ i5h|Zb:Z8ASţj+/'˾š QMMV P4# 1y*!}($Qi?*ܥF8Gr1ɝ~U>9!4Hez8vh8L:ǣ& AuPuB RJsReIU;^ oM6W`Vf(Etƚ+5)9#'ſZ}Zh(Ȃ'I(5QIL&.XdhHB :SrD 1أ^!ģFD>]}W@_PƻMצ5ĿtnV06h"{I <3X~`8PUZ aQ 4%4iacGiw?s…z䉺xN,aaeʂnY'-ѱO ξ̂־Eib_蟻`₡ tjcAc5l '1B?EU-p㪸G( v89![S=ʙfEALuƹ%#:g `#]B`lūsLGpgZd*4!>>%hN/%0oȃ/pjs袢p JGH|uQ 5KbwUu7*S#7!sIJzZ :FƸ~rنZL"zNE!,X+њ7|Mf}adxK3/?8C` jO\4lU(wf%՘%BT1Y&q_}$.5;AupBv,n!Cuz'.dݡj/i5<<@mF)\́(c\Kj 8`ZXyϪqXK#R}Ŝ,nEwVqI^MUス)C>tN?b4Y+{ Dž2||G7m0MT mAe~4$!<[P޸blPAZK<+`\Ɓ~,%.rIrKQ[?g:1:oi wf zJ 5 D0֐9F>#G@XU0i>LQRyعE@vTr|T!Ч dŏi~{i$3]⧥FZldpG\NAfq|f P,I`5ۅyee"Q︢olǖ ږy.ÑPݶ1nuo71C`Ŷ3H|Kigw'$ƿHĎ'8rzh~)b3)=4B9!o}W?hX~] E^JO[3J؁T+ K%-FJ~xRk%2%'S6Ď`{y5|7)v7ŧ63$Fx;Y`@Q+[`m42sVV3- g/sX@9 /4ޚ"/)KU C:uKvi!' d8+\-T N^#0ٌ˫ B#?%<ڍbq]ؔ# dDFE '"8iΞ[D:.=[rې ͓ cHfPhncIJt6`{v)3V8HJB]|'# N)x'ӈXP; ~L=RdA,~w_5#_|}FZz{ ~o% F9WOĔ}F'1Bʹl[BЍ:NjTpVG'pO6ԩK/ uPXͫ xRvS#&1܎:!҄QPU(Lajɘ>F\mV`(zX TnST뜸Eƾ0yW[{Ҧ")2(ljGjN*r(ĸЉ嶼c3„y\;Bv;ب ^ދSә$2/eS̰$E9h7Dq-y$]z~>q$~*"ByMks&+&= ktHKOozv9X7jOƀ"(E$^'U{%w^qoAP?C67އaY>`#f7^Fc=t.n3#{SRHEc!bQ \&7s)׊oe \uDIֶI`2l%aӍYWjł{61"0%{:PA_ $^;|1Z,B̐禡h<5'̼ "Cmgޅ)1+> mLLQyo zA;VzT H$k(t˶59:`Bև&=cps& +{?w԰rVa=dB#JG -:S v*1'G$[A3,Z$vѷD#p\}/3^@iMDNd_IX2q6`m i-q)2Z#/765Kv셭wL;f$< ftMw'J[ Zs褩a%n[~AT'KJuKN8|QYo(P nfUK]y5nYPKS;h3, fumD Ǻ}jQ'xx{56~g֛ZCTӑfH|2}׫2ir*]ϰ؞S%b A֞ıd#Y {^A͝$.5I\D'o6SǑT7iuŪJ)CAEH l)*` :̦{}H$(xHa5L^Gȱ ~)z8/`FO[j ~jpdnrS تPYUQǵh-1:xhM](#0o=VcvAY7~AGA&=k[,/ο}q>1 OuGaۆfޭ(:{t]V>acQ™pT=,^X&L%ϧC+=տѶCв[-/@?mq9(LDlL%G2FR@@}:Dy2a,D3]Sa*N\uft z3s?#O'k2pGMq/>d iA~aG: o[X=gSk mʸnQvΜ5gLCcum[od aS9JӺ`lJ)|L ֌(ئ! _nDoq.n'\6z; (EN@nƦCGXG+z&zyAy0,Lَq(8qz@qvl[.]GB_SBicƀ&0Ď n߾z&Wu=L[qEL{+`4'dy#jb1 APC&Ne5Y//<ׇ^j$F?=_DF#K;E&ZKAփ?:r#k}Ҙr3i ͓@ski뤂;)&Q}[,jUQå=ssA7v<B/Ձ$7y?-Hývt9qbw6[T}dN@BD9lZFI"<+eJvۓ@?Pw[Z% r[%AcbQdg+]zD Y"!*eSf tvB JZbIaHgpn!?G:Ak/t9Yљ.h<7@J]ɺRQ}Y=,BTEѧ_醞cǝP3AQH:ott~4/{e7{1Z3 & WO| L׌U@ ]q [Hgt!Isqg({ێP HbK>PV hFyQsEMXbj=L^ \}m;cÈg6EyT8HETʖ@FLuRa;2 y*@ۍH _ްQ̡|n"KUӶ""f+SZT$y-w1B^h} >ƊibAҞW]5= .Rt8ORA[E+`jo $p1Yu:#Zw\10yFx5|9bZ\@hfe4SqX4/R)$wKR[4ڀY)+A;7fE5ǧJir,m J& NerQ8. 4DaYw!*!!4z 1 o76P2 ơ-;GL0[#VARݫ$U_aK6 U-S8CqDviLK>hbABz2.jquXP:C6cl|~Hi ᛢڶZ];f x}򞿂ey*_K:‡E@tWɃ9|೏B)QRUd94GY .e`fjPHƆ7%vnGê/!Yh q ?9&t`E zI(${3BNW\PB B;{kyVkn N&/1zkZ x-tu V;D?ʗ~w([-gkp|5mgC+Qe2ou<1v^;dsXcg=5B4P-CQ18 y]CHyV&pWrqlўp2,+-MTޘXAvwQ]2A%{V=qӳ+-~)EqZ9Y ӈpę@6}s\~>?}2,15 q@W^-N;J::tN'˿,4= Eި̤wy[PNNc!v>OV+! &MYsН)9\ĭrvsF>k-˖mTeI 'ἢB;ʅ@ +) SQQy[&ՅvܽR';X^'GuvH{S8n7 Ѳ|a/ޚPjĂ-3yԔ([@"Ú鰈Ds^ɪ{R@H/ :*ŁM̧ȞPtV=5L)UBW=$.)BHK*k|wK4|vyMU0"XyA<~##;,,#ܒhcTɐ,F;iv/<:na5:2zWá3Bù?`~mm&Z\Lp{tn/ewgJ1.~ |{kI@ 禄: 2Ga$|W x$PWc.%:;\xw-PtϺ(d_ا*(}f6@'^]>؊4YDA*3F_&O6=yn]dHrxثc,'_ j;vB~o"T@ -e R]%S+L։-/86M|&3|3OCڥWKc)HρʧdGgUs~k?\;jҘ0&)bN(ݼIR bE\Q@,2֩ͅ"pm=yJJ!epuveDO4ԿC}]cɞ.2koI#~`4F?;t"jnb Goq /#N 4]Fĥ\Z#]{* wMʙ()fa^aȁ@j]N ɝ@{$~ᦆ-R9?Mb g89cɼ},g]ϼ$2riԵd{,>r)O5b KAt,&$wB>v\F~!wBy3F֗\0\ ="5TM FAs_qbRM5JK6vysî8׍gWH[ꁠ]DU.F :%(|d|`7ZfO* yF`&ñԺ_YZtPEKәi4$( ΃0.I=]UD|[)WXH3 wLF!LZ=ՠ|؟@~]oK qA8"Ciy3Φ9$ϑ5]ŋ;-׏㵟>?/Ax&a_[[bR0>@K5+o6Ql-]o녷VNi4/K ")1Y;ն@ :$9imL%&KZ 0@)`~ m+C/9@ } 0“z"*AGiÌ/xgx7 %ecVyw 6'wK] M+F'$+k7L~\MGMV%~<?9 ?@(IEl) hRlG*MpL"ȋ){6;ߑy.3cY3l{q!Y{1і,y1s!l1O9v(Nu*If4Lizc3c9<} O\9"lز \*u!r&=@P"*pR 1aW5Cc4ɓyo2X64gp_Y88@W}.s;: wa!Ҧj\l7vNOfzBGBٵ\w?g7M@0RX/4MĘ,L@c5w#2``!p0g:'&z3#1\*'VB}mVx`A,GW0 >uT'-E]A";P-jDhS}t6;)B a5Ok<x`/bo.j)ƝA\!SC{wnKP|mRl=fұFവ1Vh@߆ёV#҄g.$MgR;rm1^7kn">Dy@9D^s<<+EFCĿQC  $/[i43wHYaqqmq86fGP??|7z`C¾LQVYy:]@1¤$D|Pb4d/*S)RTl '9/jnW_zog=ʆvX ~pI) _ ћtfzzZ6qV #JP^kYOxjTy|XB89Z;/N/ D#KRq1;|r_"Q,SP $̈́`cO5/eAw`owT/t;Bnz؉ĩ`Y",/T-ꘘ|XY9瀕f_ :d:m "q"_zqRqaAN\˿W'EN#s!ýY8o!Q?ܳ&NB'ms1ng8*95:mnvp}KF@WF4 k8`~I6dRP׾?f'-zBdg*>`n'o!u Oj{\Yld8鋠©X||\Pfh'4Fq![O#q>{-灱ü]rU0l<#%c8GQXטC;?xM`:So 1Eͥmfpz .-V#pў$$LI }&JvY X:WՅL>M lGӮ ]Ul\,dd.M-^PqmQӑ.p6d;OGZ@ff|tXQN]PS<L;׏a~0mDyEA/{Dž3:uOq_y"RɅ׎rfh!m ~e jC_WӁc@ qP#8$ g!`q*:rxd%ტNJfi)}gRLz("0;l7-3r b@n]Ҧ 2UjsYl J7ۑ瑦ЀRөr-J} $IIW2fߨ1(@#@ln[|mMaeF]d+iseJa866'̣0UV:ƛ]18E d|ƾ垱zy lG1r:~ޭ)\Y&Գ'"gW[-B5"yG)_YHك^ٰtfLuH?7oCTdܡU!SGԃKkomV&q AvVy_j~nגY@-J4LLq$ v,V,V-8ZHg1/< y)<"R i~3k"bS7+GSm|Z3槣;.>v<_jU-NKe(=3쮴ٽZl0IEsBm- DЌ˅ /=+k!*uB/R׎qLr'7C6_d]MJTl *eW_I&~AvyT H^3IV|뱉Tkgv{8MkEYa?;E(HS2fvt Zb A暼?3.RJ)U }pU2W mY  1ϳ.\ LnsD:i> ?q+~O*=V59IDx'2 T Oi˵q¿0 At9`[_KL8<0l!B*׊]J  [K Tm%#L7XZ: -̦҄CzVm}3TS`FN@aݍe±\/}ЫF+!O]D'Dxž;tchYqK 1S `uҢYHWoNWwʁ1#~7=*a?Md8-Vl'CP/_`cB{pKGiVQmY*e-zXH۪"w4N0f~U9Ie7 ?ǥHr)R#G$@N"G Q"*9ĞvkwUϚ6',cʤGMz1iqlp&簶R6OXjh\,SǿWz A |ʍK. OBΗ(jm,eB9q&]PK kAp/4s@,4:]C5f2ΰ [ľNjF3 e`8w,₮Z^WxHUG75H3^8TY,Dwg_dhȫ nh.Kʛ~:RUC05qX($|eESϴgq4Of_VpVA˭\'@ڒ'.bBQwv#>xҺz kkh ;[)v-I*\VyesfڥBP&7j.5g:@jĒʕ*^~kW0$+; N[*F9ƒI CoJvV?dz^,G4!h`?,^DtqԵH;gp%oo}J5%l`R6c pf"ky^~`JNdf5,8m*@v@gU0'_wmK_'YsM- '6^E97]R8aQ ؒfNK 7nlTy977Dg.h`I˭;XnHPOR'Bat 1tSJHWZyy_\&#vD$qFeT\ˬ/)B"$ u_OϓX3otS(܇,CBs:PjH&)cm%5%VO o{o`@.2-#VEyCm)U>&%ݿcEM7k{M|˃T6Vi3Ԙ}b$KǻEF4vŗ8[@' ?R)R0oQ2:Y^ƥ`m^abMRoCSޢDR1( Wf3P֋kȭH:['Թ!NUW%aw!`F[]tyBO~KJX-/,WeOI~Ğ@Wd8ZkMw4z,*f,B˲Aw/L+RxR]+T4"s7ϪLnu4R ɺÖz}b-9F?}K> 🳛ChYTXS&Er=CZw*3+*>=^k~u`=X\_V\68WH_%9`aCSK9UtC#%@x%VYUcf3~MjiXS|6z>CA+[p+ޟK#( aFt2"G#xyu&dpBZCIfT5"?qs2'XuR€Fˎ4у{n*WYp2IUI! ! ֙ees 4L] J'QNC ,'T_YꙂbP&*Xd,~?, xM˶ Eڇ~:[->Mc߽~N y Ҫoćloݢړqf `E@'": #${ͧ#z4!kSIxb@_A9e 4}.Tyj4J#Qegno]+;۬_lOl7Ҟ}"h4U3z}hKKu(ZNֳsƷ8heg?\ZDۛnMd= t*LuBt^#'YH|+0F-a'poO9mFw-&*܎ ĭ'];WI7.釐wwKfZ,cI3 SDŽHpcEB"+s+[ iX69BSɻ%VfGɯ j"rHmެ4 M>#tG4W:_GvV0ɘAulW'M8%TfZ(際[4=6 `h7Z(x Owt(kmc9(.g =4 <..VZC>0m&u!CU *IqX Q^'YЯ,wNZgNhjlwo׳iߝG$iúQ2U؝<ܗZ#' y~utSfc!ˑn@L 1D;\{/ APôN^\B^A9$qh]J_b֭ӨJ6QA#ZiELߛM׭JVWքw-RAH؊ȁsI )*\-{3!rx7s2@S{LhnW;1]LJϒLx.7\]" L0!"D<<^ʿvRٵE7)/&.@txevҶljءY '8h|QuOL•7fBl!fhḛH#1O „;e22'qY#|yB!F3|)8?8Zhf!&լky q[: "02l6ZK]:%: ci4wgh QIMW5v@csBTʗI{Ƃ|1W}/v;*zykK+Mr#u] ?!! ""}xe3 pNXgs¯X]5ew[oE%/*VlؙǶ${Դ'ts@v;v(bkPd-PKP *{ӰAя,12񦹇Jd/+a/xגyQF4¿v{ܭXg<+] N {}]G`VBVyL^\ pkܫ76``r S8!ܖGc@LqmrK.UOv,E|C_'wm3~ɭH/dYk-#\o\J,Bا dDΩ63843`fht'Zgq=OSZcEs,)r'E&c3/K(HpHB2>m8)`=i,'@m'hP#淸tHGf2`U U.7W^^J\&y-a^܌w_jpN JI}0D@ХӇ4.Ufk;3BSc\N\ahJ&Ȋ؝I ",IzfD^IJ(O2r!M\;પ*vդ[<@!rml,QU;= $9):JUxl*ʐD`Wl&Q=hox S[9R.]AhIc$X jT))OSyb)]41uTq.ClBʺa$bMn%V c Ppp:^ c n \),}T ~%[g\p JIoM kt7icAe~\Ћv%yaɊxK7 \>=o3ao )is'$_x T[/=*1T "^%s;ۃ[ml 0]'\EP %R/XѸτTkm9_h?4u.ݡPl)2U :T%asQL:%cXpS:WJJa0YwbJ 2ts 5sR֛F_Vߙj> 1zdmHBZwh3)w=)Uh!B0B{6P ^-&C {Zo4C&k共tdhoR.dgwA;eMtD!)vd*k84E^2\E;XHz!;& bۣO uY^0-s!S&?.&&+:Γ)N1CbB:s1 5VEnvHu5َf_(8 _ɓ+w;̠ V=p C-kM40lvewvqÇK,$kAX2vl2qq^}z=RI Ja9dJgZ\褻уZAid(YzŐX~K9?zM<$CzFGBv3 <:3a'X)=QOMCM!ה(yr*(W[I|8̓kZ/{͝hy_D»7 j%#*Iv˯zbmJn^'8ȢℌmC{8(!5DUޭ?tr]b |%Uq/rv$UD@dָ']QQe7@| '6.DQ3{/}OUXB*y.T)޶jf@~ng.s84 #l|p7Ҷ="GVVzPy(gҁjNX$ Cx])kSܮڗ}t|!,[tpFf4w?~y"箁 Fڝj2g==ԑ$:& @ep,~ZCk)ERj1E덙2% ;a7X:_Өvz.ߠDЭkmo:!h[ͥflr1Z&K'&^+۹Pc݅7E:|b. %1[sZ.Y 11l1h7c`X?p` !'>8@+0?  &-j=lǣ_> LǹKyu+mb'byPtB󙢨 B RK$W\ L5 {nmALW(]GSQIvk)Qpx1\ VXZvWB,ҫ28X&6F!G۠2C4ȦL`]4ɈZ$ xfw3/FWI?4G cy:'Ϭ`T29椴I 9`1VĮ2.3 =6"R4?>p%{B񏝩8c 4.ثW귺|̍O85^y`U@:"g3M) ӦWR&'7yH݀%E ~p8Z0y8"m3ep#f(;uPs*kt4eVD%pv+F%q Vޅ/XVM52`]B\s-ǭδpe94/-*݀E֋+N3uNCS}7,"p 4fX*,K#N:W^aH(hr_zbTl 7̯ʑfHa#wCY(*p9׊Z3kO߁ Nh[RZyJqH*u[ ~-9!Cc3vCx2 -4asdB-h Bo0i9as2So(a,]GC뼶LWfniRytM8bՉrBQ5*uي;\dJ\Sm(jSU+lZ Y\Vr^{=oR+@(gG~շHoDVJd,(+{C#C ҇BV!<.w kk4)lU>xotED8zBv>P6 avxwYZ ?7=6 6;&I \K{%w ]6#P› ku(һ@hF!2UlGQv^>!҉/cEx 2jJ|: Mʟwnsiݕw=¤p}gA;gM c"c֕5@^@mABG3czJ㋬hʬA㼜IWjoseoɕƅ/3~iQ}XCcK+ѣn zXݵt1'h/ }cfDp}n]U QP衠*/$&Xkgo&I+*Dm_ivS`U] T_:;SdXXkg.د|W7n6T,vR[jZ E&ch0^~$=iAlDGfWk^ٜv 6c6j$\Y8=F`雦kw]@nR[m(<4=mםb*NK1~ Yqa$SR}u~K;2L͂Q\ŷʝz.4y!R}j9*t5;낌)/)姂R&d+g?>)lWV`g̃kA)iO'n=Dϑ1EePS |Fu &D*ldJaRg6$-XJf)9 :G^}FhzC>C@DgqT{S0ypl+emx-4Ŀ%S }AVPha5?kHn UJ@~~C=ڞ|M8t5j)40jN{2K"U\`*>z;*$9*!qCF7dϮle}$,cڋa}ZC?Z{5|#PvkIG=ƞo+9I[y^|sGѶ^y2S&^ +L%<-i/l9OB;=7dbjɅܢv}ʧrcgfs L21ӄzV!%*ǗM(%Y$ŐpZ \{:1QbZ^(eF[5`f>J\Y GLä/6ccG+_`CS2[3+K݀`G־h5T[|2p#Jq\7!J>dIҥH'EaS1j!ua5K;f:W޽y($"N{nYs3U iJ4.',`!)RXӮDUKY񖣻3, h R +ugtz<ǕsR;#ƎwWTVSR{t|GqCV"%u alDj….H*|VW3B؉D>F2諄a=عR]?ER_R4/"1R m8IJ5EN7|;#(3TKCₑ PbԔqoTH%l<։Z}H2h|d?4~[ C׮KGo[@, ߛ_P8Б(b /0&`{k%_y3x P7 CER)wN.6k!_ŚlZEOl0Rws*'ySMCoYr̥7#7$xoi ut,KA_O@ fl_2TRT VDT,}`}/ư1C@M S_KEg⧤̕pfRm &YkX+SdH@Trk8sOteUX0k,å?ɀ*zXĆZ=w=KD*FߗlzbU߳C[>^d P ג͵ BJ v߸y?L!'wPX}Ad5q5( /&KOyCaRX^1-ϊU/5!2Xs!tQVf❽wlعPN*Bdyuv)'黴J=:0Dm,Δ`v3~x5V7@4_4ԗV Sv5-dk v !#Gtaeʧ|Ǘ~J%4)9("IA҅f"k'ZCqFEjVC'^l̖!p'G6P\ b2 Tʞc),N0ɵqJox p+j>ohzP?ҬQs$1`HdApYS[6m5@+ ,,!3]Oźf? Unhׄ\TT0qhair6YY){s-rE_'kwC?y060BL^*JMM593(f3;Y),BV~h+Q A{fW?cٷVx'z¾|RVy<*bߗth0uũ[Pq7Y BK\P|qB(c{ō|뇡j\v(&@!_Ua_&!S$k!XDrAgo8Ep/Cjj@ӹ C9|/ie $ꋒtNrҲClٮmi"Gxse&P}/:+{ *ɷx@%H)cc*G\>*7sCL_ 5;p(/roC~1 <žO_s\o%ȻfyN 7=f]Lywy2ZW7nL>—p\krn=(ƍ;w6"Mfv(Ff~c$>цcKKLjI-<+J4\KVcĜDԌT02J&~4]Jנ(Br -ѻ\·dPڋsWLa\턋(0Զ*Q?Ӥ!C5[R;iO&/l7-7vuk=x$fy݄<Q3M A!({ ePS>rp~yHB>Xל:'8^FmP$Df͏*KvN,OpH8#r5P?S͆HXUFs7i^Tܟ!u/՞ՈX0j֧ YŚN*ֶCSx Tά;}P/v}c qvd+TC&-~T6RtRs8uq`v#M%/ŃYN [4DUM&ĕqԈ>o'v=MԋW(fD #]Ϸ7h12Xcm|\ZFq &Hx<ו-,2~mV`-^yWe0UMDR8 _ sp_njylYyơ!'4W0?wt}oT2IzSTZ/"\Y 6(h)؏@N[?|걗f%y/:uxʨ+zW;w;j_/#Jen) *]919׬Q]Kٳp|jTSߏFtS-3e= MFk kg\VkfP{l+lȯ: Pzb͂O #>9eP=!a7uT Dm!ǎ=|Eɼ\@Yih XHD"J%CFd%ϲf݈>r@. D U3TJk9ꀥ;toڃ %YmUdzd s>dSIխqSGGhFfHjE\Q%hD̿-)ƒ64BeqiOR/ʻgD )o8@oR)It&]J[9݆ifvV(Dߺ5Me<ѽ=mHDΌڧ[]5 .v`_8DzVj uBº;ਖ਼?6E h5ZjG1n#uXI Eu7E7n7F~quv'mV 8z~l7Pt&șJа$=~V/)_E\~twgE{'Jy9qQhmނ .FЪ%_O88Y`=΢T)Q2*zf萟 1 ZƐcTxS; _%U/Jav X jL4t{Ĝ@7 qWFV+ƣ*Z]UȞ?%ǔ >d㉰HdKiY."7%םRzӇ " ǖ/qS5=$eE [f Wjn<*xB}{r;VOhl"G4psOEJvX ϴ#6Q"zv/ tpP[ ȍn [S6JZXX~C|<_* hi+4C7}vzyn/ڪ/thdǁ/wL##/ٌD'QF%8{\hz/F3 ɬz~ ҡtgeUЂ]=C.O3jэN:^0%Ĭ2JC2&X05QU(jh}1̦Q2Dm"*g߭&c[gR&-wA#Y!{}8;VR^>&vNܹ?N_rD1T<+P>z\W?=C4V2MUY?a#K'z;Et}E"+pH#\&z:>靦{>2nxv.ê3;ey<0cpZߦp@oL %2)8Ph1@(q$&mDޙp]RF8L+X):= ى|dFyNMhsiZ&1:+P@Nr, E<2YEn΋y#KPrr@;P5GZA^f6 D7VKJ\qxj 2pU1k !C;L%0!`⫋t;:)"ya}$0vSl s+tFXDRt7˫\k3g# Cn JҰTL;8],ܦ pZHK*kK4?%s?d?t^>jC 6N+ş]"p /W'^6iQ=-f*f"kdգ3| I 4j :%v?V\G#ٮykDzM .ymؓd~1RHF%{\TF@O_Kٜ; r=ȝz@89>e6 !p90J2ٯ@o$3O+I7YPIz? hE:0ROSAJ{!K3=?l$UkɪQe2{2}|讚V6lHӞB<ꏎ=xIC.StT|!(KIA kS#PQ{bk3OAK3>iTC?@cd#{*ҫbfZ;jUE~ fH@y>x1p^\%4_ =uTY5q TDz~Q3eA |w Dz-U}\60:<4r@"ee.@\(syDD :NkOCS Meys㺡 mPէ~J8T4]&P^fܙ2O'E+3cvUz/b )*w\ja6 U ú gj29@Ǹs惧J,2]LtD oe@E;*%Lud.+9,[̯9E=L?'\zxM5ڿMz~@C)wù[9W?Q ؍DeA="ޔ"J[KCZt͖\!t- q3Ĭ叒_aTKz1:)AG%HrxTp csOvԯ dED;>h$ VI^rh0gHdP0@^<%Cok9'5Xm fABYesӾzoZJ߭}㏕Ti4W;=>*Ifب2H4Aم"H)ᩕb:S:.eD_ J즳i">kٲOxEkv=6so BqY*Zf~ZkzQpgDP)AQ9V~%=w{;z9҇y4n Ӥ>Uĉ[&>Dt^*>LX{kŀ*c nu/>$WdcG=a;.ie= ~,!!JA@׳0"=72CÐߞMGϮA A}5ڗLg}ZrdkT{jvslxT!`b2Z b6#},|*)b:vERq5Pj\K3C&H][=eZ[Dĩz"#XSogՅ]$Q{Hv0dl<C8 ̅ +}Kewx}*eL~<ٛC_}֐m';7X\8WPoZcrrNc䌸.5+Xh kyV̐'0 s(6xO tQw& E>1"qE? ɛ~^4͞֎snjQхq Z*qOʯa٢K1o b3=Uch8CRsꑮ ku[x;J۠o&R 9*L0/LDۧbGtWuRY.b96?Ib^y'tY(񕹌$(Z6oqɗt+|L,1MUhj?nP1de<'[Y'p%+O'z`oN! ⯣fo6TuowV p6hËE1gG]0 o ɥWBx!WR(3-pԡøm~i11{lى~Gc*z0%\T DF/Ru al#Bٝ]%5`\"4baNuu෉l6^ tv98y9V#ŨTV-Neu;>fcA#P8X,r cc5xzv5\F{~2@ TCԩ:w>Í׏zC`Un"HQYXt^Ïc5*c.`fDYobGrf.H'܎E2Z} /д*Jor *~L:BnZXU,OڛШ ~%H !a!'Ӗi)P=c8z.y%jJV̔\i@؉/CGJf;(fl%GLMK?ws2hG/p7Z[!xg}fc/P.Pa*jlqп'(l3s5'Zݦm"3yژbևNr1p\K !8sM*b`~llgrAgѴ[" S]eVs ol z$q\nIJdԔD/WL1-^\.U--ʛ~LTl/tDZh% 0ы{ɾq2/E8xqM]vȱԾI78R6.Ai`>D<_CԴnT2ЈסGNzV+B>{@+&K}{t/o%!pX@`%X&L8'ym_YSM,eyjAcgQw #Z3əXە/i&_?ݿC[oJXʋD #,PG$y`Vk++(FO-g9K_YW{hȧ)OMYgb%H($NnLf`E`=$kބ{ g1@TMYNTiENOWsk;?o<#X5#͔tˆeph߁@W*Nd*Trj` wNw~ Bj6`M5_L~`ĒrgM(b1 C>) -5w %+Dp7W :M{|+PM>O"Ov) ktñGYL BnUJX؆owA8 SmOʼ@rLy|;5&G1Z/|=N!,6R4$6Em2c^]d#`ڋ<0Gp;gvz@1Uis[ ۔NVaN`~2MRp_kY!^ʡWkc$/'/ KA |Et}.]\[(qyǞhBטhЀy^vK ᳑10V+r!4򔸃JbKS 47/*U^Aglo](N+|CtPט:P?H`/GWڡqp3ùNɜ{Ad'_GJ hwAV %,e UwH¾oj#5ƪѳdq {GSpy<\^fJCx옽Aǖ1eRq9 &P <&O,%Mc?obNSq}$U=?IWkܥ;LFZ#W}3 84Ir3Ƞ^"$RhmSΒ}L vfFa_^!~;>ҌWI)ѰW@Pn8cW &.C27# k*.ʅ`fpFgO`a g_ ~HUK1G?İ:gѣ(4htUyb%uك\`' # qP_1^m_]㬥93I#l ԛl]H]flȊ hn~X$rEAx{lяch9D/7{,ROq.C1 ӷ=0%iV3$7X9IXkp}be<̗%| a%X#~-ʲYt_H\faUK=5*C$F__bh%Vc*_}\3yb.c O)gdnW&bgnR۟mV*}اf<?0{5z]B}?϶a)\e~ޡ{gRWXvJ<=VHQY$L{MF`S[v9؂uwtNF) XwnOf늕o0L*ӱ`QC+ǛG2gN@>osB 'OȾ Ad(X'(L}L%uGҡ9`!#"859{,WD?}8kɎݷdG5 ch$v?EtНmŌq!.h9a qw0s}cG >ή;BC)ǂ|t+!h2M@HqDYf9O\֪1/+m/<N7AU|X(qʹjlRTv,R$wq"ze8A(!E"Vf*eY,dX6~P)|LH+Ʌ[:Tq1"zd܇c8Sm;jh./6*c?#%J!`q~3`o$Md֠3(խA칮[p3YJ̃^n N:8=E4Rcdzp?F7ߒIAysn`I= kнe(/ˏ>^*4rc|~@EriV) (I*Yw?$tJ˕߂DM!$cr$|\ œ^*; SL}*S M{ rl1qY<%1V7lruSzYI ^xB*H+GLc֏(LiL|4v+!]RMtB2ZwM(R1k7]oe7 vO\=ҩ#-p[]ahA,ZC 22rU=y]8ib#<9~hb:3QѣFl"ǻQ@ ŋF"Ű"Z=ZmQQʪMS&O)ܔJ!3FAlGŲڪX 8̴WTtܔ[4*>FG{SD6˜W1{XHf&ir%F4Hf3|mfJ&-|UED XTЮ_̝zV/A2kmGdݞUo˽34 My.r9m@%llG!'La#|fM^.j,'%yc& XS+$=XF@5%1[C 2dv!49)RD F8 5e(̌RՇ0`U>W9w>".yh;Sha|g8(:rQdŞX|~dJc(ؾTT ^8-$|@^;0:SԭtrEK'4CƶΖ<Ɂo-ұݜaEQ"sCKaXヺוr+ Dr/s%ێ$p*5 ߆CG*%??m%.-]]-6n[;N&j[Ff2x׀ \XIPܠazoaysk N7NdMu ! ΰ tU5(k[SY2?&PV3+[Wx=ҭkxOv 'B]}~ ގT$o쮚 ҳ̤sKu]Iݶv́GM{R(ī\5=q#1x8{HW}i ^EQ1Z=VRy.X9L$Skg66ɹJPS崊 ̞ǖ܇Z<뭆&Kp͍Qݢ+; ֕)B6PZ?/Nt| dC SsIʨ9I#.Š}xkQ F}D3b?eL^!p!0&,1.OT)E!jntܒhL{J< 8:IV\~Y4_ Mqíȧ$C YqR48u[ˇACY"4DL Zd[S˞$:VpZ>\ok)L$tHLk$\f(1/g>ym̢E cp?d̽ĉ|{cn}-m 7 ȷ&U >D؊9F<';#_`ZrF#هI-W;X6Q(Or I0q-hQlQMI;S?]̈́r$l;tT-fQkwU 9ʲC54 V|[ȸL 3;>4H ^>UX#ytpG.," Eun )[FVcžZr)%ݫ+8y#F=󓟹Z;XtouevZ*“u1 0ߟr SRHye(i.n%VBZ}N2QOI1}SxM(ӲdH;uȤscۀΌ/}QאJ3_xkg}?|>~L%6LOs%q\."KQqX9F/oBecOBso8!- QQOM"#kl|m)%DoMՋ&ky13׆dVi͛ʟFG6"9ޗB]gՑK6.n.]Q89 xzG~x0T'06@M:{ەLZH1yXo#3u6>WMP'b 4+0r=Q0{#a:5{w hzY*G$WA͍,s#۴fY6 ޠ=m8G``=Ds ~t˟=5`P1ƹʈqWXKp0Plbo]&x$[(vF.1G!By lU^{骗3^k&5 35b RGtoE8oFY@U0^sb+Wyzw46 !fki̿Rx)J-eȨQrZ9򳙔|2s;<Rr&_PG!rM0cmU؉V!cztqΨoTTsBVXrEXr0`R e/0-:6z>ݍ1 \'a$CgQuD'@-qĿ|..丸pUIBuz16#s:%?Oap^&c(sN]`ಛЛSBNo=)QKw5eK<ǿDV\lN*,9] ĊchGֽR[.Vբ"OB^i]\)/Jxsqa`0uavtIٟ0l%2 ߸EZn:\L %YlM4vٴ M%&˴"@sC(h%"U}=#!tdɚa1n״EMv+'6ֿ*%6|bF R&X!ѷ#m< 9TiJB!]ն{Vb7:c!~Q?pR }A soRK^hb[gd1==쉚)S!o2n`h`bK#\ V>]=99 7{vWUiIEA4`QQe~  Ae.h -=oi4%)Ǖu_mOy&CM_}L۸q|Ѫh)W]zV+()"~);ȧA&RKID*C)5J෼b @fpVL WBBED hP"_j亀*TV,Rdp޻]?l>0NP4 Edl;-˯-ױ6- O~3i-uZXe-Ea&IY< :9 8X^s̕4:<a $9c2Q&B\P:N͍4\g1afǒ4=z8&cFY5"ćJeax%H^ ni h:'dn8+25iAVIf򾁤cAHAфI܆}a9|L `\9H>|Q Sߩ4gap-+ SL&_qvQ%֏hRI˧U:<; Ш%nPUa*7+uP&zn:͔" ;5+<GWRB@@Yۥ0gMgKe?FrC/wH Vp>sh{MJ@'kxPF)*֏+B#,ȿQA}q \7Ųg(+\IDubV+TGA\`f, 8Rs8՚Q; ^*nL{;-U#zfm23}YK^ p)a_&+;*)!mD-@VbLvbo1ܗ<@uQ+l1Ġo ܈ghF0ܜ27FZ17aʆ.anxfP~2pQxE01? @S.}m?0řcew突Y#p=ǥz#8אe"7וQqlzeÊ2mgߣz A.%]=DKWpg#WZ dl3Fd*aX4oP]2x c[;ce ȓү2Jw7p2F8R.͘+'5E3s Ťf9b 4mNq(E CzF ~?~'jˎ]+kJ1|WQvrGݦV%FqhVR00aV+C1w `s-ty?M_L2yH,|rē).0SZe̴#fZi O=ug6P lkcDF9)e@Ʊ N++[0J^\gߍYᣭ߾xbƄ<=hLP3td*ףoo4L7k9~1%2z[5GF5Ku*B7:|.TϬ4z Fj-#J܇+OuQVY率XD;k%ET ʾ&E.\GK7qK`Rn ߌ=~jbTo]Iլ5 @ &)ުj/Dq=E菐[h1͹8 ܉6آItX]PY;>>taOl s}C\{E*ȿ;wTZV[fW N#y \$v_wQR" S6gU!,p.EBAd"ڇC>ٵ2yLFg嘉.l06}*K3:EB{8 +Fa&v6k,N ;P[ǭ`R H ,FFE<*ܢ' z`BGDƧ9 EDC t|-'b LT82`gΙ!l-Ɉcѝ1~4Op٠rj%]3!G>XкFT\'17cW[ġ PM,d1jX :6\bsUOhbg} WW/W4 ޤ;һ.M6풋jf ^.q ^mmǴΫ;gqYd>"%O&kdA ^6 DZuSgW!o$%hEMi55DIͷz@.(Kl2)tzyyyC #*&[Ъ?4P6\] |T."j>8 &E\b _YVd [.ЁM\ٗaޜ 9DJ=H"MI>|`VOa^0 qEz_,Raia_^!b#.6]F> f<<g*4!MĿL^x&c=]M`2ȑ4)a.97x+ϰ4<9 h`p[xѤ!3l =nRt8$ԑfSW9yx@.;,#AEVd BZ!ZgPRtڊ¹'>;$@FFl:ZАSƵnj2L)fAv nXCҒ7$dqY~Mp/?n%}۟'R@mȉ.I:F_3px2Kmt8SۑHkrZ>᧮!']s]ȿ>f1b:78Y{b^J'RhKyȟ[ oΌ^;;C4cDG|v]0H$u< (ΐ\-.uBafu j(b˯ b{$7Q;7pXO?lݐ=~UFi!\O¼Jߏ_"ꗎXrduofC]gTud%tz$!YTLV9b,jUǜPg-qwvqHE]*s~W?ͱYveP\B9uM/8ЪsJ O7A? hd}8],0|X?yhD~m1І+ZT #H0b132LgM^fs>o˥1C"-g[D\\nw>s2V1ֿǬb,﵈/VMckkIktQȪU DuTHٚͯ Gއpڭ,aG%P9HP BcsVIqMDo gH"5}{4 [z$3D0 K߉TyJrfyVnz zI"{_,&aNrDjp_U Jx05a1_! z=2/KmjZY.Z8o̥#o}fR_^59!;*rV(ƥDyծ kGVwA~4HmxTڸ~"nX+I)UVVè4va^b㙣~'k Csl6`BJY]\3"6d8.?RtD@H [/A+c)S[+DDg&<XnQ4!=vye3pD@qbFp`>@+Z `׌; c>92zg>LʽK&`A~ƥ/ϕ`cῪ[HhzXt%}r72Jg>9iϠ䪂d'uǕdZE}݂׎4!mFvE;c܈/QRbO$`B#?m>'+Mڭr`qcdK|LZ X^I~.fWxc]RePb0xY|rg /@4Qh,\ܸcݲ;{V yX%Ĉ',+#:hX=rXU - 25YQP{ T[mt&"zkDNVuBY~G9|-##Wx5S^_ '?Oʟ }a@1pzg9xqUcp%HguPJD?{V mWY)2R:͒e!];= rvaOVBb';dܰ`\4oi:EJgP,1ʝ<%?(  ^eǻ1}!oeFO7A/48)c=kkсd0[?ugXV21g̈c+ L fi ~zt>0&1K4Վ)MK08O-ɖ7YDcz=m8ҵU}"V9d8ڍMe붅u 5`_^Gb[گ@~C11g{ux > Ub)-P~ЌVyM%z ݻ&> /dytg5/`'Nf?4 PmM.m6,3E MutY;A=nIԖ3`G.~P e=flxrh lyۢyJnS8?h#V5Bj_X^e#ҪfJI+DAt6;Q~0[d<~YF9W6DVoB-֏&Y4{)'܍wFWz2`"76Y#- BlX<ĠJ]9Β<*MYjT O!i,0`|/quƿx> 2N1w$sX]{@UdBP؋%he#3wчd<}Zjڠdhlp璲 ( KMIV"$_2~}}N(S+6M"0})c%FEY.fDi;G&;x!K%A?"#%L8 ޚf *W[l.Lخa+Ho ZI+e#COM~ΥKy\3j1@Z5;3 _]L}gF+#R_=142zɄ$_PftUuϠ%M8vgW:W,Hx)>>s-pp@~cVwZs¶A#YV $_3bW/rޙ_:ȼqöyvC7L͟?x6l!U7Hms %N$˜)H} 3ju3*>1A]^*/NO]4y(i+H\vRi[0l3`$m=T\/wB TgR';2 jMV-"UK$f?q{)k<B:%۷-tD]?'u uS*%& Y,.FD>$AWV0rvh 6 e<4ՐGx1R>ݡBHym 9Bki~AVaH 2O>im9sjCBޫ:7*2PUS4]Y翁 d-g&,=FISwVPv@/eI4Gߒ˶Z_E? {\eh -98Lb ] R7*DpO]bBJ' FXX.dyTGŝ'*vƵv0ta"_Aφ@;fp&PqϾ@X$C0C 믾n h}|{lN4 Z R_A sA8lLm8 lYbzF\OU0dꨯ*уx)B]1о)(nk:`~=$ l7ճā X~yhrK_Z۳A+3HӘ#toő[}D5pϐ@fdaY@AaçKLDQuv{Bk&,pA2*nPC:3#?Ϸ$~)# t1JooJSȥP3< Ϲ%ޮ/τ`/ GE~rl]O7d4B~4>nb@Z⬫Gp4,le ڶ*:sK93,>F:=rΘ0u@eײ.V[u)CdֆVѽ:7BۈŔOAC}N1fۡ gW=̪263-\,Jދ'H\ 53f qSVKdmjm҉ E9R^GY/t<[6 eT3.C K3m]+ l c>ghW"A?jh GΑVYIF$c"!$NyF[շyd!u>AD4;ud|NٴsFD ގPiA֭J,{Zw -WR[gGiZ3DoW )FWH!1zކho O=J3P9e4` :n(C IJBIwx]v%ޤVUP!vW@|>[EEF/T%#1'RGc2brl]qPbw_.#C<}uY[)g+GE.ϓ~IK[CE6m"ϳ M8!&syNKMv9@dpz%7o>m%hX&uVpLK>nT1YZv\BWNmc͟1 EFmȬnXK{c/mO5 [x>VGQNcv]}]4MVҹu1:"uxE mꖻJi6Y\g)K rg/>q2"qcڠX uK103خ,#} EJ7[\@Ui }&4"ÐdbZ nyΏ}*u9kj Ke <'u$r40X~T6P z,V7~ڇf#Pw)T~ݯV偉)`J's J1@x9WE"gZs-أ:vYh^t.KVWlVXpaŕJƒ &J}` om/8pц@N!x<\,*`t Э5{L>pzE*R/Id6)א:hU QGbOI7YV,^볤o I,N%ƐwcYz3uO56(/jEYxӕϾ2j.g!:/ BRpU-ͮ3.EJt>[َ(qWl_3#R g^VwXXIc $G5zم#"ۆO֌|GXe-~-Pڥ\}Q9Qz#j{ka7/Y?5(~90atʘd:5V?(`}fC٫k~vZ(vϠ42"|6 3Rj' Wuq Sk8O=GXCCjWB{ԕ>=󅖹Xy.*b=Ǥ`m. (@bɀ5^FZ{7 ve 42)zƎNovesTSQq{> ʛ}M ɶ!QGWюP}ථX?~jk8,j K^ËEwԜじ1$ߪ RF=UN"Xpm \J3i_.NWH2ŪÂ.EdSq'Jr}cNouf O3HRUNXDI":ڣٜH"F&| zqpsJxkpArZɁ42 thk1]}G7(bszXCY57,[xٱ}3cø ΍`ߋLfZC 7J֝.[++g}}1>>GYF:D#T:bj1W$,I6BYOf]DVmf?&%ocW@{(Р@J,y1v̢sqNA%]F|'pۿ;1Sr]sf׳w (-T0W<;D:]s-@L\J tݝĿG㍰AvŇڄG[IzPϢUz"Ʃx!w-HgC=.r hEI;ws[z/ƿb=+uض4^^B;<5N[-F)ͣa3uQHb>n'ï$Ǘ^_O{d0V<꿟^\"\mDU]y:RsAv$kXcWf̃ce)po'zYW͙\ҼDqh3k(Ū5V58-@Mf~ kJiqpDl{.oR-iH:Ewg r@Nũy&KZ?oѴQ8R·Wc+=E5 E}-0KZ@G M9R-Pys"vRR.c(Ú|5] ȭ$Xg8x"\^ CR7k,vVQƬ!!v_AשK2!@Q!F 62Hzj;PdL>xr˚ T7aE3T6e~<*ZLT".$zVivϽV6״.hLը]2SϗuiDz ufhd>]ңR 3v܅$cpFBL?w/IROEҍ} ڿPoY#8+v0Axhd C|nFtr1AI4zkG<)Ai/TQ8D>^EW4dڀqf bY%]}/5*x,\ExES+VȺiawxQO)#fL}I䉉!g|=KUipEV|F_ ] ҈3L 4neM魥[5ԣ6pXUDgs,'!_o }gWT7l%8MAQ5HN ( vVMTN`o{c#]⒓ɨ] "E#ʓ^9=v=Q*x(9l?wG>QSΞ.RS ~;At{nh"-(M^xf bi< 2zp\6&?Z6* ;V8Rxپu*9*ʝau>tUKP)'~8v]ce(LQG,,~`TcD$ߧ4=*!X*1,:d-+m%* 'Q=QK q"٨Uk̅-3XZ_a0wB"Q@̑M Wd쬷V޲y`"o/8D^DQ`/7cΗ@Lbe!=%Ykh>W.?9TsVCw (;aă90C8[3$PȻvk'2 AK.oA~7v_;{nM #. %#;?g6"H;^\>M7Bͱ4Rfo -;WAIy6X,-,iO cG\DG s/@ox.pcߊ=&~(o~5$X7x-m&}7!x"yq jm 1] ?rAc*zFG$#!Sh7[l&2; Z9-]'0؎VZNXZXM0f|l"qm9P3#S X5EmN3! )#x0:{slG]}%:n=jZ8P<6hMJ{BX$5 BMu4DmSE *=*A[Hsha*񃖽M5j3VY' bQͩQsߝ<ľO75Y㌮@N&knqlGh/ȥ˼;1?}qu5YeItRK4LunEIː=Nao meڱ%F`A7ޒrΡXfvߜMQ]kA(w ,q&}=Z\쎱_)B|ڰ._MarH-L<-u|-1;͈$QxL$N, dVRMQs?YCMG@3Ъ__3:J`\!a[dt,֟]_`V+^JӸ!|!,f hǔIz= j=Jaw~ aQ"ULI͢UqUPCJV4dF_t` ÎEM%w`wCТZU{O*E $ח,`ˊЈ-c*gZ!;~)_!);bWE÷zr4c1V^|bxz;(N Ws,+Wѡ3Kd*qZǼ9BqOgO4 [R+d >% &AinGX+)릈߶І6|^#AUt4ԟBR+!\06Grg`a?,Ndu(gvZ|N̊SA ;V yD_pYsEdMC"R:'ֻ-z#"hO*yԼ{D ox<>?]б#x䳥轗#EqdXy:&a:ȼu.+]m<|MIC[]CupBPm(+ } L\nkJ?OiL2\`Ŋpس9*iƤs<Xt#evלpŅҐsYTA'7c7MnR/e:$7Lk![~6PX% tPU:ꞷ\' PuWV` -Kj̠h[+S|&ze"EDiRJ>(ll[7)^&XU6"-XZ6:3*,ۚUH6}@ U90 TO~L} U.4=Qc fVv0t̎/8 j^L /y%"x@PpX^N#U6NwZٳW@P<{7Sf+tP(YhB< R=2 r`$৻QUf'(zPzJ?*nCn86"i2QPQk"\Nc1sED\W1=s)\5LM0owp%FQ63`?O,@vDtln#~!̽uE`q[zWrY{EB" hsk 6G!<3jNCv7U܄tXu!&Qa2髄%TRx'r}MTN)%!P^q5-R4nS@ B(Z= W'@n9iJPMe ɖHxWmf4=ָ9M#9\&[hi1w κIg\},=A>?]~]y'z"Y{#b!Q }`:-{Ϭ &.7p/S0$qFRv/:ٽ.A0oFP{ $ZVD<~@޹5R:+j^E,R1Ϊ wr7R4+暍G biUы0/~8S .1ĈLtc}="o.q@92R2| 921^<:VosY hz xgwNi</(fZncbWL!?B.^.gc y r|ѮP`z%ԣǁLFJdX>5)M.5"쭭H_ʨD[XUҽ1r ~Yظ"M<\Qo9!p ~߶In_ׯ0zE8RYжtZg=og&cN]g67!\䋸}G.>ZUqucB*\d!T01~s\KT=I_:g>pR7CtVH z"=yI6a`xՔИ@ $36O$T47 \1'tؒ<5N;qw!OxWDObM? iQ|;QJFv^Q$ PW>Cy!峮0a-fj?{i๔ؓp'1! $U-s@&#B0I Wb-o y+_< '`\uh! K0oS%Fr#r!aV/-4r'4k5^%}g+a]+!O}IkUn;tƒE},CACS>xyT kM#/- IEBv Z*? Mu P g4Y erՆv &y,jMh}nfpYmY/0T~z1ѯ2HpD 4j¼nٖ/D1B_`j(tt|l$dkDP~2S_{Do֚miB.ekˑ`ehD lxk{y>Mkbߚ~+Ջ p,9((, -r$8.+.l$nVo*SrRrF%xq6^.}/؈ͣU@:tb[lî&d4Q25TxNk_He ݹ;^D&-* '568$78R"ڬy?j&e=Pk8(c|vqIoJh[GӞ8]k@O8Ⲁ̭W*$lЏǕsuiӫBj]Esܔ˔L(<>hm fM[+{ߟK Շ8P)Z Aw;ǖwNx3;G6ƞζm4 gEsڊJ;L eLJs^̯Q6)*h8<+@5voPN4:g}no&j,M-Rk[@"uik$H49a8 |r$S"ȦyI)L#3ѩt٥Q~̓gEGuDDvg }*[$M<~ķ & X1&;o:5{@0tZP-w$tVPx4w8sҸL+?_zTQ~'H\k=shgO(OҒ|ĭ(2/O]0$+?3{Zr;F!5D`}|뜆dC6*BgU~*NB1mƍpCZ%eR0q W ݭ3yĐf#;X*7oN`8?JAUPHxj:R[ #GC8㉐{=x`(z$m.RQ%ˍL8Qr-qLy ee֬y m0`O*!J0T`^GV'B X<9.鋂y}5!'0u[xȇ1RZ2R(#G8(7?â-q;pcUuYF#+=`B}m¡K>S]<o#34P HCܝ-uE'[>n)29KrMuZU h(\%v Gdζ(܉BWJ{$۞r%wy nF, BB;J>Ο798CK#D-Œ&%|m"A*\rV@>!DevR`Swkőj o,3S;:81@0~U\ !=yN&)!_kV6v$G( {S7޴IpR{ʄlF@lUZZC[]f|Z;_IK9ݶOar4Ҥ4i*PW.j]sW^30 X~rh ۼ,;_CbC dC:^xЛ(a1b2,rvR.t/x=GbVUR3kC\i1O͎R>!#=6=PUm%j{3pIXW'h`>`0͖tqqNCLFMI߻wL-}`&%zLO*C@k=ĕ_B&XXYQHS )(5]]Әٵ)Rr~3e<Ǘ6ݱW>5AN5PG1d? QLk]\i=({ql\>r0<njSztL³9G~eǃ%dL! l[46~2'TRzim!ټ<=H縡TFK ӟk4dc1ǯCr Mv3%~]ed:f2chr7aϋh4L$ dF6X^wMo[$b\gж2'I ? N'av'lovF}OwaݳO2X+ia:}U,H-'Nh0-O΅4ʴ:K"j+Ls6 8e1o/t2e4fiR^G,R3:pyO#QN))q{ܙ~B}\JKV_8#"C5 ˱ N7NIXCUmEE ` }X^p* ]/Su]1䜥k 3{^Tl.&Z TD8>6T7ld& 1uP+{']!6$vwo<#:K.cv#ٙ@Ph۪_phhR}zГ'AuIKhiq Yd ǒmsLE+eűAď%^õ7kKm5w~X)D\w\Z@Y]I|ˉbB3. )e]9yqIwvVn}LXk2T**'&SPCfpe{jJuR5ngЂAo'?uZ|J,<Ɓ0<,WTf4wWf_1i z}"+ߛ%JV._,I8F년8N>ya[{Rbnux @@4}ΧS5s@]2^%؛zO; wOKd80&LbeP^'J膃/.I|z -G{Qam~/DR2 T,m"e9\/^AsJ(-bv;c|p%5l?{Kuk7 F@0aµ_k6*ɣ$@>^v`>u.@YJlr$Ȟ`YRzf UQ)ynN|xy#qt;}>}biK8ItqJl\~P$DxHds#.+A9K%niei@|0]*?xKv8 k4`7sh;&9C:+ZU'.J`3j‰蝬s#2YPQ޴,ݙwW , Ѩ[~ m;0˱:}cqV&fR_w&wF-b1hō"#]6q!8Tl>Fu!f8W 7 jGDp跃MCZ٘DH/e>Z%2p_DYWN+xaǫ{cU8m2vqy$ 'Mi04-[.sNLO2 euޗ1pe.K?){62fz:_j%'6CJo0l2m>'2/+K!zcU__F!Mu1Tk`3AB~#KYֿpPs SLhu<~>t!/@DIJűR|#^ІT.k5k(vEPoK3e6jWJz%UbE(D.G_REGIy]nD9wy Eᩩ WYN7عfł-ϠkY=}l e["[BFhHf"'pՂ"1;ؑuFc*趁$WMSK70j$߾ {">dSq0ѷWnKulCN}޸Ê)Y`h(@8Ŕ~|xY[/+?Oi-2굵wش{pPwȧ=I 75= ͊PN~8 bۛ5,=ni&c !!l1mpzMmŒjHgIz#Fv*Y(!2K )9s+4$_=.%?3j#͎b!_((Hv+GgP#O#L⯵_y(#V{eiOe,-3@'H7@" ٙ^CeUĬa9:逾WuC< f[I`W:+B+W e̥EM@F& RMaZ,3T=LȎN<\ Ä9GOc!K x{Nb`mLܵ"HrhcHpi3[28* G9+ s-w53y(?Fͺ 5~L‰dZ-wzoSOof"V6"g } &x\֘%j%@Ch􀌱RR6D Y EߠDoq4;t..R7pۭhemm2| Ar{@ Q%Lpi+#BvA<&@[ ѯ۠)ފ*-MRHA%GL}DyWUCըtPhf|#Go&/&%2g #;RfC\ - ;~[+\X :yYY-.@n˯wI Th;+v|LOp) $6e7Il/W" IޝPqn@1V8qR-oxDr+ꤞZ|"&=jԏO=t(}~rLS`ʗM Sqjٚ;vGiMV20na [~ b̫?dLͺ BGͅ]kY.A\驁ws4U8f쾾Y/EUZO&i_sRᥧ϶i?ziNۧ_dG2fϜl1|vA(8bKѫ1Asϔs~m FrXk4NI4ٿ#א5Dd$}ۭn ?^Zn&0g)]e/\߫wa jz;O.ݟа. qՀ =AS+FEi_cD ''KOXl?eb C~<̉#ЋvTR%V Txl9ad6IcjqRp(cZ], <^{UB V& []m4 #1RqJqBH3/C #mVt?GjDH!exl_46!"XB$5X0x޸_]^T'nW^c=ZjJTERgx#ٌqdn3DIGB4m! u:z,+b *@FBn"o/݊u]Sh {4z3 09B. t~chprAIMѡձo_6ͷɧ 6[%g _RS@~ts?wyHZ (OARh|vA (HY9/K~0z LN!|" 0~M "~5kzf@ռvΪLFA/I /=蹽-ܤj܅? p*N\C^/5|TruG!]츴rL/74g Nh#=4 zs[(6ug_ /R.J )(Τ d gC_M*TRTOgQ1҄"N,8 oܙD{0pT*wza/hX 9M6%88AAYdDKL}Hr5~ A9>(E3/akN:ز*q"kaԉLLgHeh:IfffnDr\g{HzSRe>G6b/1Ԯ.oITƨ842 Pav.ӻfoj좦%BHW^v؈<[[EkpMr/6_dy(pCمlOޘUZUtME|g RkNK\7ޅ!ŋŕBHe<{,߉:\=%#͍y8S&#X*  ةk}Kr$@;x3&AwJfwUbAkJ>!Y}Z>d~9_k@ VT{#j7xh_qRCnݏ+y^׵*IhPx^{ۦGeCE"h8S!̞dJHK[u oǿ8em-k :ПM|{5IWܜ$kl >{wYwQJ։JXk5=P(yW${I N ~Ln'Iκ\;X2sHT?zChfJE_[zHs"nHZnhB݈Gwӹݥ6 6,ɺaIz$ouNQ2nAVBע1;Moqۆ Z5P Ec;䥿TV+?3JJBrQ/('0(>$O>0=HMǪuv_E P6RɤDؐ + 3? WH/Fh4߼i OD>=3;N~(KFkh)<4Y҆ $sFSwl7`h@aG:InSl ep-{{5(>HX!l+;%]o(Bc[=W9^Ϧ$:f2ĸkkh׍f,ڥjO&Ke_u=*!kW:.o?9Kr-GD-tXGݬ[n)W?&EsT<-tXvbt1Ra,2ᤘk"H,U8<%#q\<,Q:=z;w,5͵G1 i<ِ1ĖA=bB&fdY$-6!s !C:v qDe=651?inHv|?qTv1_ OeCmZZY[`ز}Hz4yӜ>b;WRUP(K B'?> ^ӳ&fEV "'4]iʹߑnh;Ki|8T5‡ MAڀ>Fߡ2).OU0hYCD%ニ΢'qPҴ@q%Y%YcaB A;ˀ-j #_23>jlc]('Ec^YϾSe^YZ,ʲ;S?@2f4(N8TbmL;᤺'!܆Cǿ =:*h%Q%i ퟂF%9Eۛ_po44|;f-䇭E?X3:Uel{{rQïW^?cBdi #r7cv ߉Fb2X6wE)D@0ΎR>*AH"RYJyEՆkE k+Y&7+B-2sEI u(D^ ^b3'@A=RΠcBۨg^ƣσaq~[QHă&|]x} .b񨰶V qpZp$d٣q; XTR?$U?YH8h;-d ] xm&&sW] JHO?@3Vٴ?U,jTRH^15IJ^E{Fck&?ø֛(^ }-l$\k ^SDC_sr گʼn0Ezwg6elmQڝ_m u4ڀg,91M²Mw'={ _T`5d! Nqjf~ט:-ޕh*p5Q˙H%:4!!\(}i?g*6DAp"[zBqd Y9nWǩn;K H4Yr'\ӲqGOt*aۙztu5c< hk.ɨĻ^M;:5xm4NMn/d[ S$&I.~U(#w"J4 #µ7$vL4dYplzy9 l&g QM B|G+kAD~Q*@p1k3B;ϻOn"T휱n>f GQX9obE%}l9 5x5^a6NbN [1oaYſ=LqdL`SJRj[1B_!Ėq3LMv89*?v=.SQNO֌D]/JrB}Mnہh'G%Rb{b=pKȤ60qS(B+Jȭ0NUMɾ-ݭ5J.֋ 87rOH#/kՕ9gX=hI@8 e{9%3'V!ٲD =b<>:8p\t83EöydQ/.1v*7 IG3<]ټR!~rgöKbX>iv㒪OwP-@ghH·B(U7x;c:֋9r-T-GMzKA#IoH7 bͣ6(@T5:1W]14nr=N@] Gk 4){ LRo f\aP9Ĝ8~NޏHo(=v mĊg[dϬ厕Bo\Zgu,+hBMMQ'Rh%ds>pFwۮc C4Bp>JV!̓ux@@ $ЫUΧn^JA([?eTMD{(hډojt;0Ns{*a'|d(+d뭅< Bji*j7W(f2$(yj[mwl{%Ưu3r=\Xk/Z Qjf;r6͎٣SI#~3] p&E+ty`OrёZrkƣm2-$W ^MVᝓEil7Oe=׶NPg /wR;'kZŇxGCWL+HD׭xfXy̅z<'w ͢K^Ai*zcoOybD0.?$՜KA I|Ƃ3 gbp*Ajڂg!raQI[O)xw֭؂!g\,wJfCw꧄wF PL4RH<7opAmS8aLжJeM\I*9\baHʙ7LAU'_W>XIeSI|e04s )7[J ϡ+!6vdd"1P|`{=cZX5 zR3f?NWM?A@n3KL1к#BVkQ]J;~Cyy̙SaC Gkf =;ReH]}ax?CQ&ϼCGv)up [9U1lhOYW;7"ֆEAGfsUZ>q/0J|<"̏PIB^ONihA5.HmG4` NiЯ1VV+gMaKhK@CoB }ꕏ=Fu aj$L]Ff` Qde1O| Y1"J`ed zIkr5YNjQ{F8FGx^dи-]A~}N U?8 $q(6DNJyȎ*$r,\aC.9U ٓȼ6^7QI |r}SI {#oC!)%T`ht42Oy>C0 Cyz\rWezCG:}t]B};7Sj}j‘Pz.AԚ/E-~k^(2h%`EBpSa)=;%(.or925D֓DOljޔ2<͹6~l{ Qx3h>( b2eE?$쮽8CNqk\k53^Yڍ{j_e#GQPlL8'f~@={YdE{iA'm8|9^BK&5 (S)P0-|ڠe+>Jy< O,N>BmQ.^֖҈,L7 fwi@#A4bLyUHJjnk%d8jWgU7"Vb <G~\MlKlZMn {\ﰵ[FLvĂ@/iq 6̅2 ^ձ9Wfb]~ƓPߋ=${wVd^&x.<(2E:Cȧ fBUjTcvS-&s'8?} ΁Y)D0c<x5t Vu.A i#幮tYkw GKe`#9VܾU} r]ZR߀2P] LҵX q< .Kzr=< MQ[5nIĦ 'Wcv עII~acfY+Pk:8_TD@.bEwTVߒx0+1MǘuT6<, 0IY:%PxN)}d>V.ɴB%SAJzZ)!Rf+j|:xqo|-y,f'd? H>= _vb{"=aV\ E@bKa,6ʁۅ嗭mOYXkQv+2 q|py1 S{35$Vbb]uAPCt>s}Y׬߲ʥp1C?E,Xn]9 R;֟^ٖqiwK]mRө!'ЙG(6WZa p]f|h.|m/oA79 p}݅_~]^O9 ?(n7ğ*'QKlws7VJAHY޳An:-9`?^ !O\Yn6zڑBpfp,ri.<]]=wk݁qOCF$R<*ߘ.zhfL8"Y_WLKk{ ]ui+dpf%uۖ1#,# 鏦%ͭB.#N%,=~*/.۶$My_45rZU5W8 #_j{oos3PcUw-FԄITbe EƁC&+pz9թ ^AVը7@Ʋ=`x~F`k~9K_BZCS ._4tQdze ff{);"Q"y o/R8wYF[v)C`Tf^W|pͻ4tVȕg%_vb=Mr:U3?ܒag%8GorfQ4'qd3Dp4a)Ms+*0鵯xgi+# `-[tۋQtTR{҄ EL;Ʋ PfG5Tno:[4όҬP9=~ 1T KD@]D][Rs>+Xx^)wK;ځ> Z[n>} RK󑝟+noOceTЮ6f b1$!$,ܼO{]Vb5CN)t(a~K":Ly 'S@hA_X5) M 9 1cz|^2<9KxZȔ=#@ڳ []#d$mrAYް؏ʀȟMY}}6+d+~7xv580?cB9+ƪ)ʯ(o@8PDzMGUTʖXNfÙ%/ c/] ѣcOkT4SZ6E|K=8[|!ljF+o&{0Mx l E<7j:966/5Lͦ .|cF'NwT-RY~V cuJx;\U(S&پ[Cʷ? gcUQzd *M&;^qa3+w}NW' )0&'^6) , gQϘ0H1*l1ڂ\01Kb|l̕!}ȗ-٣ّ04,$j% X+2!ğ,|\BsdZk u!s BITmeúe9" 'X4_AӰo!'jiWJQ?=[n%=!uW)`~4q$rqeZzvϬ u(t#뽛kQyzlCc5L )b_18|?:Tdgw/d'2ELEW\W-_G5gF,Dr)g~Kx'+4wեpJ+z2 N;H&Ug,7amN/9>@"bmp5k\aPcE?X8V wT7{I^R6uh=bJOVJ`ytp̅kT۞J]dߕKs)@DM쯴:ƕ:ƍd}ZY܁tfI&`"/h}aMLR{&3s7#Ҫo yKЙ@1-Y;pemlmE8T1x{Mi3DT=ց=vG({I2ˢsdaf1P^tVF0pnڇk:hh+ ŅG?^lOOxHf c6K^ǰzZ6DrxD; 窫j pcI"ȷ6={lZ8hrᅬ3 VL?2Tw{w+`.)<Uʪñ?id]iD+Aˠ.Q~AQogh6!! WnXŻ 㼉 Nz/;Ͻb!@D Tc{'H lM~{6dfyf ;\nFqyJXmN|o70~|M ÃZbilRď"EcxDs̻ LVTS>v}9]Ɍ##ROӺo\BS:M@*v",qSZ4m Ņb $@B{l[Q?s9cxEuK| 6[?nyZ-JZmmS8u$lwAYCKd~ؔ…4r]iJx6-m.Ͱ4<ͰF6kDOjzb.4_mmAX.wRToqJAqCiD)lvq)kß$3:Æۜ`O1yܴ|t# C&jVL n;<+AiiaX+S7#{@(V_|Ӻ` 3cYUh S[~,sBkX*ZЌRK+7C_q.fۃSfG7!$&L E`'!oa#,FXB8~U' WXno\ uVnD QD4m6*F>w15)9Y;IIcm`Aqkp)1@"+³XNuo=CRы4]u `E0N5p̔څ83CITxiϦ3b=hƗ6bB2>QX% l8B8ںn|eA3N˹<9Le;IRld]Ә-? Ob6KĬ_WDm~q܁Mrڮ}0g6:E?H+{_ ߭Ne-(;j/]rB6xa@ -:vqdf^wx9Si&k0We O/n(oAJ pM@KGfc;+T0k:ƅ,`qz*$p7,=Eիٺo+ I#zndt99n@Ƣ9ԓf*(\uD^M@]@:zKSd 8B#n=zd(y[iSWr'~yQYkTq}~|t iНz,fWvs,v-kGE;U̅tvAZXs`Bf3 j/$z[I6CCZ}GveG@_L0V[S6nf2q̀葋 ?.^upR7<7Mk`" N$ dOҘ! w>-i+FK2=I zq\F t cP'a(ekHH@B7:"Rxi>xgoO#;܅:tߏȣ-ɾUx~\#.#W;#M }xXtFv+^8c8 2l]L9'J8Jɻ3}&diSQZV.+9ɥITǕ|-e%`Bڳ /Ҡ^׮IR !Ev@&׽m Xz%#ϨY(S/v~t"w/ 8Yһm8o l kYe'9|yJ ؅o=Gy[܊s e2j nܭQ`F=u &)B"X3yQs.ؽ5' F0 %;`6YB 80V> z:h$@pO wvnS̽+ tlޖZR^Pc<[P}dek_PFT=~KCNpoGRlPD N-NtNO-)y󆗐xW#J΂PZ2;w`0/Q!'e Cd r&z[7rVRkBX2JsM,^$ZJyK?F8B>s67p5ʾݖCbųQkU1&l}zyLAMkgcC|W릘|C`6?W9En_ V7Wȍ _p6A[.%̀Ne3i_Ⱦ/V0=}$h|Mט&WAyӟ <]Qlt8@OǺNOr,-d#e9A$"ܨ]R_2Y /W?8sa?hkB.p S' CЗ\@q0)Qί07mܱμ˯/x%Fw|%]ܴF;=ijcߛhufC3?kBPpߐ0yӤO;wv@lw斒W-5-|>˔|4MАl%MwhͪLͦ &xL]lTwB7„%9TVMrrE!=lCWTEcDM0%<)LΩ3pՍG %fҐL?`楖Ga(%N0+Pѕэ) ] u5JVջ$3x nF0jwԀcYU]tpc͵>q4WԻ_%}- `Q ݏ Jv2mұ' /F}'JBsd`g傋.(߅`-q\bf#*=YHAA5DlPъ~)@ ԓ*3۴M(\|ܐ+Oj;ɾSux*갮=Unqբφ~'BacBo\X>N3Y9̜Qd ߂/=ߥG}_]/KpFđByZ[ZN?\UtZ KI:ϓnX<8$1g *9m i+Z}R(;5*=߳^p%CmY 3CP! pz"w !O;P3WTSO|W/h7,/ ^z(uaSݨXyA&\#}*|fEߟXԕ>Z}'51J$#p^|Ђ*b$p3WM5zijNEZ$K[ 7ra9ODG`h4`=lOݱʠXI{3/@,׼۲Ήx#8 poΏ[]eC8GrA_iЖ_\sӧ>+gֲ`@1 SS_Y]PqE9$ (ay,HQAaUxo6W"K $)LN 3И,P-:%5j<?/grPb gemK`=/ `o/>bd(smn?}{>sj^Aݔ/^Gb(=4 m5zQM_ct\uoctb 1 d(0}0#q42yÁ#8!,,͏ICa<Ԩ.> FsIxc5b_8ԃ63$!}_}QcD `P} j8&3Obu17" ozZXJհRg]l\VDzenf| ߭)lIQ O Ζh!XK ?Et$Q~O~G5X嚚HG(s2dmIX̌I&oy,4s[P*DQ8y׵<1]iJ<8nǬ8E] ~&Y֋D #\<2g f3рà \g ?T$L8qQ+a). $R8S;N*tCE9"ȗYME/Lfܤf={O. /sl2 +3xidA3XMȩbJ:snid$o&;[`i]$U?sFْ=09d &-Ab+f],WEe YqRYB0rϠ)n/aؗѴwW/sIuJsael:VAuP(pp#Jwb91 M~OYͻEbT離`sB:\_ @x*8(4Ulb (UhEp-"g@}w@-fw%8?tyLU AOױҵ$E

      f:KkA-q|wpF@$}/b=R zސ 4Z5hڼXLˤe+;W}h3Si0Ͼ&xO|y4Ju)ex' 95-:RS ݶ4NuX!osb5bNzE;ĸjFQ;5XѿQboodl['d?^n N[Ag%/YaY^7 {==M$4u"T{!xʁwPMWa-2vAm*j\z44Pr\I8v΃fn33(nH)7CPjǿA8rL{nC 3[֩n6Aɪv^0XWJu"(ۏwF?qH:rL3U"[6{Y2@xd."e1̤v].[!ŧE O瀕P_/)df :y/o=gt|ʻ^`քص\k=G %,ߍTv{>Y+U`xhn"cLhT ڹWkͥ}cHՕ 5Fl&Œ,zPr2so.Rw Lܼk̓?9l9>S깸vNX?+{~씩rv2q%z>goN+N_|H䃀і X(J)n~}Q*m ĩ6GPodg}TN1$ko5.%Bټ=029)䧸h^ۊxJS7m}LPJ5;d a85_EahΡ} D{A:QИ9Ng0gl}`\u;TZbx!>(q%X5ۻ?޻07k83Fik'&qͽ nzgNPC q BPy Cn7b$wuuIXEH8>5&y5f>*3yɧ=ױt_B-P!QBdXΗރGIb㔸D lǪn %Ajw]p6MEm^eC/ir RO89sf(`E[ Gt{q,y{ *=R[+gkԊ| (9_)::?h,r A6:AM;GL+3 hA+|PkJBf%pp?7>NwABZIt*@MsLFٕw;=">5E@X(몫dH|_bm#q"ۭfټrш,S`VC P̴iIp0Ϳ綡'M![#7'ZF[\;̐juo]$ ?N ~ !qr s/3Z^z!/T0JDQO3s7渁ssn48d_bJIY^˼Qu/E&RG|A>@Ucq1 ::lI$d_f\`?XFqdkdE! %6q Rb dY\+*7`L51&EiS2chK ֒I{\NW"r)y=z]gYH㋈!x>JUPÛ}^{t=wj"}JFcAw=f-U4MNg)rdi(' 4|Ix=Kz5#8ĸ;s7B6H?R|>m27ĦFjTtLlMICG'ed%zhtN{TwYƱgMk?5u'տ _sP;e~+ rC&*8qjLe쏧Jq0B4)swlsv* z mMڊ/h`md5XN)P{m| z2 YbgFP 5"(ӧvSu}Py.1_ur3v`aOb_ʫȳS8ΆJNQy]{ bKWLd0Oc.:ј1aFV;'dBoj@u!uuƁ ,l-̡ YcCʲz`?v~,6kRwd1˽r7F\&x€\π.(8((_ Q.\!P'Jɀn/ >Jxslz|ga ]/GM4τEYǣ~7Ho4~fy: A k>x;w ߯<*Hr\ .|/ѥ&~#J b2CDҍTfl^Ys/Rfk] 68v~^$YvB 7+|З\jR~@ ܓK }:Y*|r;|IA7c΄k)@T{˗+m}v[8A.j{CteݛTHMj-EcG3"D Ӝy*0%plKNSmR4|!f%p-.T5Ӏ8Pn[@?/trSJWpP\у_zڊZ݉ȗDW] 4_om[̋;8rSˣr2 `1MوuH[$c sPkIrOvR.bg"C%#-c\Svee?A'M5\: l\~\,cVWP/W7*]Ӧ#@;p"h 'fwX q.zm` (j!vL(Uᗔ\A236nm:X'J1 GUb#V 䉨YuǢՂv f5O?]u+rIҸT4,2_e"qEA;;؊ɕtMvYn&С^t8`3 X\??+^כUF>7XN>o"@`%HR-4?y61[pXY[7p&ym=(a-H]5 I!}Q=Ziȳ?8G;C?SkCpո"SOE[[!%_qHO3v'#; 3&k> 3Rwg0V8W>+ goU:.}4 쨓[_S}̳1% UH3La1&iM&pw?< /nxLB;hYO1 "*q6*OOAe?1XT IdR-%¾(q5?gEȺ8ZRQrO4{ɣ~oi`S|ȫ okrQ5$UddV`][I j e<\%82r: \׍|=g<HEe "[׋D$̦=qjyg$62F.z ,%6YD0-4cnwJńo>&Qgb&"O4 k۲2"Q'IO&&X$Va E@ Q0[6*p! _r9NT!/=Ŕ. @G`*A"^5/ȏMlpUI8 E\J'Vsp=>QS A|I/b7 v+,? -0=.qN/{F>}}aY}iT⫃g$5L[}krVrYTk[ X7~ ୏*/h7۹G>IU~ͭPW;|z<[ح:|\a-铴+J']س^ e8u@`OoᎹk8AEG4Xq+k6 ϮNWASDx/:L,M'ej^]DEfF"-@#6SLjc[*D{(9Qx£%urP_e|qA20c{v3fS Rw0S'N쩦dd:d'} n1!8-i)hdJJs#p۸77х7B떑Gr_Z>d sL^1p0 $QI:ᘊI΢v&`I34?If=Ec`ZJ^ה25HEDHpdAxԛ!D ޑ* z\+&5%]On0]4BgG!Elit=Ǐ]i-;q~ P[|oxtةOO_h><YŵsU(J{K랁z MuCԐ``vvG~)v/RV5U3᳿=)iT鋌j3%(tDe$V&7M68.{T9)٤5D82-*OAy*$?2ٹ@K ؉+.sV7PO'IҊbˏ3#X1N/zp{!e}evj z?6}dqFEQ0QVv>ĎCSXSEA%KT&wYakk[rft1Gu`kf8 1ݚm[{I [xm7-. I zy2klzb ?!‡mw6tnnZw}dҼE>$A4qC!nalR Z*p$]lڒ;@ Տѹ Q EHv6׭{y.6\߹MieKk [=;6ìd^YA1E fGˢ"KT#+͢d4zDs@<Ig^2@-CYűӱQZ" +px% r`=~*,AU^۫PmJ82}:wV~ft#i%4I@#5(iw;|EuLVGn'DvqK}Xc'**gQz ۻoϢ{;DO06]Fwɹ+? &2g¹*~^ ʫ'(櫒28w+s}*jWapq+zFrN(I"}ب陀~(p}#$Wb#]͡7rgoL:U{s7eγY3ӹk\x xOL ʊn3H֩7[@8IG_z<dm+rr,{ [S J)}a#TU^Vrv KW̉^#5+ '"J{IejF -m|)(,ZSm4η{}x;~{FA#%aorȫO$Vuzt}0E؃&PW=Ǎ6:Uǟ=}A/.sgi^8z=,T2Tm4" ij-D>6R4}@Ca/Z {j|mz-,"!~ =:nۼ\qaXWvS:'1h uwޯ 3R7@'},o_׌h Ju{T@-9 B\wĉ˶d2nyZ Al] 500]eWR=KHw8J s<#Q6OY&`Afe2!D\Dg:6;H~%JŠ]:|K"2ZrA hF8&K}I`r`$B{oW[%ZzaCY6OLxI:}1[ϘT[5,iܿJp`(?VV.<OhV(PCPa"㏁_}6$LBae p̍KDSID!zܫAPՠNQ?\+tBK2{11TbwRna'hP,cMpG#}A+5QϬ3bjOhe.`o1BI['@iFr GnYrv« -ET_zk.4.H:j"S@>|bZGQ KlH<q\󈃤#tU .SPlCkn-6Ю,C^Xѩ\ 6 ]gWw6}0ӒB}z#/2h8q'ڨ5uvn&L`^!dA/i~kc5k^A6lt*6{17ܷmhu{jD 7350r6K KZ;!BI \dB X\9Bg?tŋqi{Ι-(cUpGtoZ<6դB^Q=ٚ۷DʶFr6&SɏJ%% @A[;" $ZV6Mtp,”Y#\{削q3;ۢ js4ݧ:tB4X[`|LNycɺ*|>P)m6RB2wJ;Q6sW,Ɠv_Yz1[`b}5>pfCr+Β6[(v6b{džRy*aG<B}ukh9N*0yF#êtڋON21kщdz n+&1f@/Tyž%8D%Ѻ2d6iƇ΋RtxW A\D.=-=j]Ia1Vjw.r{W,reg\ ͐CAhȫ^wߚ7ɴL KoLtN||+R_R8-'D^絚uu>{Tz-8*f3PT6z=H}~{y{ϧZF2Hdhľ1ySOӆ=27Q8BAϹ7aEWh8`o۫nDS/9D^񻛜Y #zUM|CF1T)(i|ZPh0GgNC p<ጭ#W9'5>='J~ x;I)Z-..r?9z=Ou TNGkV@}TXymQ+ _&[d8?*f;Y_H{GFEB {{Oie80rƋ6b ,>4#WsĘsq8^z]r 2+p?ַߍѬC;/]B+ FkU" )RUw#ά_oqb! ܧ TGrwܴ 5"ԗbe ^N IYpڝ?,v+$H$"ІǬwd56(~PK?-7%F)5] 8Ȃt#(۵06g(TO{;tuM@f>588xyͿm"Ü@_sOѪ %5B/}wp-t$ `:xXfצӬ' {xyA;>}gϚL@°qci$N?Wnr FB%Jǁ0Dx3Wa" -IH$}B!xȌtw!o ]F =XpԢa$Mr{61bǩ ˭.(W{'Ve>k/ՕiE'őJib΢7i:ar0&5HT ƌx`0Re=g )E!vcܟ~IOW IaeJ;π)@PWI&EUpK©9X@}:B@Ww҇WErxNN]g TP~akM6)i[>ϡ *'#|ZA'4ͳCօji7ԡMgXn.9/l_W0U@cb/xKX2-VWϓ6º"Sפ֣jY3 =~Yaexg :+ }D?y#^z<7LVVBfG:d"7äqƿܘ;&:ngC@K ;:GPj?TYP=zq([Drj]4^uןFgQ[F%1;Dd1f+=u+mUFOw:ѐIO ܹF/HvYF*gz HPV`sZ3Tf0"2!8|%S]]L&Q`\` IF-OιcSJFȆu qXHn?GrBmO]@hŋ[)t_y#([ae_: %?^w=2X:U=L^6W'iB&OlÇg(lWLoQ^A"&6my55s9 i0!'H<"cx]^&uԅܿ|@o{t=i+g8fknPR[!_a{h\k4{aV}}%OO#ϣ#5g.7P8bǥ6)Ǒ{/ ylȒnaȄnf֍;T -R+&(?)ƱqpO?,Z.Upӻ@=V{T~* UΗA"ٴXlϰ4Q:g .qq<)Q+!f$(@ewik5xwu4a?50(H7 ,Tݵs4qb(q\AU I%~0a -Ίsj 1 \dP:c (wv|ƥ"uqIȤ{\% ̖l!+p$PS"0t.T""MءMo~8SfǞ˿ u[F'^NH`] MV3|_2>/'d<9]'pJzPjw QTQz%-$M蚚k%"{uL;i4*~m)~o>ʩ`XV{3b!T Q%m; =17_RIKLfl}Oz}~0H徝qI؃Ήpkn:A;_"sތ8v/\ZH &=BBe0Ak7;$ }B&&#;^w]OwI9sRvAӡl>PN,]bt`h -+s4$2Fl6ٽ] RxEnf0x\MvE_0 K@9kt}8ZQw$Y>/u\!3^5 U/s?QM+C9ז2Òe'Țtn%(ܸX2} ҿZH<2B}%L7R(|,6CDTZY-c瓡ZD%_5 {cUS2QdН`nG3'h6/('B͆4r 1l}`է$j C8vnyC+J_:$'9[Ds|\|VT2@[.%LfjȱGV*0ZBr`3s&AƧ}=!YKarqUteJgg2G9GvVzRRmx>~Ip|P,ܷ•0G➟Q'p *Ҕ)4y N(k+@8rq)t,py%?:8;₏>8SI*Vr]<ѩ>c/b '?f "QƠ^4 }Ta$PHw%:N؏/ v?]OGJuJ0fGT-y{@9jFG6&y^C9o{+k<s(ȆGs(}-7w'=fdfS(H@yڈ)iT Ixڿ y^M(YQg_ª"79얏 ȐqG@>$5x/?) ~1@)icR:ӌJ{V?./`bYx w 6h1>A>˳ȰӕRL_&cP %oi{u(Aҧx{bh1G!FHCk&oJ?*: Jn41X se DD[KꂺPg]1!M&nY^KpMCI%7_g;||UVsLs}vѱ@=G=o?BӮJ1NAc?L{za[]+a} Xr%"/EBԨD]ui#.nUs% .ho/ \eȷCGD<8/O y]@ӠTQAD\9[mM5lbd?iatXvUg(w2.|d.$a e1cQӄr[`;F!8)_̉R9oqu"g d@mNfFjF2łWAHٍQ y> {i|ZiX_FA n4*vB:rlF0d/'꒞|\L 7Uƒ֞߫¥UHx2 s{8 #p8ΛVhHRu3a*[&r]<pW5vTbH+80< L>#b%RȦ [D<2{I0$F"|d-B6>zn0V.g>@Z,x;42k>Ah=c =YceO3F?JCT7-%bѫ"c8Y􃻏y}W _y)ɶ ~p W`] j/F;=60YbTa7-`ipнܿf1S]4EP) acĵ˴+|YSJk0qz8FoiL2kL A5@=!fL 'IXN9eG'٨:[iZ9=6?2Uqy)V0m?l'Ib>lΜa:w됈a GкI{\ۛ|iit6u $.=Hmqs!eu%6P0isWփkp_e,2Ol 7nu[7cH7.H.,;i#uW+Y,=U +GлJw7SV.(E!xN@9!bCj= |Ci0$cGnB}1s2w Dɔ2b] 0/vϿh)Y%5)1E no;BVxǯ4Sg ch~׻}OO(!9A,l?/ij .wRLwXߩd3.GX! ڪU~ 8}ӷKY]`BL8yˢ2Z_}~d[p c"dWNA*ce>C2A?0Geϋu^5Z5Aul Ȑ#>pf! S3Θb u;}_U~50a?HTrvH/HQy ̀3i",؏xh -CL%Qƥd0{ŷ(4-V<e Ѣ|pQIn.wWXBNBNcmG( nf7GSWkE' 7hI4}t&^aYƜy].a;̫1` uˁS[qw=$!o1ψ#sJ+)p)4B 7rG|&iR9ڵF`oمϫ.,i?>P"C°U}pQ7F8didymqb&Bc\Wʗ F~s؁2)m_;Y(u~2>lbsIdn=Ub~@zxVnqWgʋQA8P4\J"r>|ml ,#FͭZc}|m`NH\aj5ȆK?`Ƃh* {΅~;"ڎ;Z q30A8pRyB{Fgzl'!rT$Hxf|H߸"a28Z3 c<I~lPaK;jNrNH+}ܚj!_W}N}e pI4FB\͢+SJ LuL@ImvW#¶z~B&bO%Ɍv@@Bw^3\+{3"m^pI{;+qot\JkC>+3wGcA(]uP"RhN7"〳SՏCWzjKtY?}kh7,lv0#IŗcۙMhr&ium71^xÒ@H0lC)tF*A--5GoIIϷJVkkSw9“-ޚfAoKJ[M(jBI:\4qgWj M<.] 1,UD]ۗL _-X&ᔾRL? ~}3.(!,A %CG* 35'YN_ 8v`քVzdu]&}džΕ .J;e 2) rGIʡN 7ۚ]U Pʰص5O/˨i(9S0d}ilkBj%8ll`us>qՍRt(l’(/P "xP2P9$jCR.UO:FuQ+VZ+\"n8!=][?ϲIX7=tt'E[(JŀJuKa1`- =Gh'[67=]uD+d)ө2KbAyD1"ƸC=Yt i!ImƭF& 7;3#=A]Mrzj(yK`3c&=LQ0s/Y*fsJ~ԗ|s{X,i=SZ<) ;X&:qGW>p;jV;󣌗o=MAjEf,&ZrυW^YDILQ_nh #"4<%NM#]cOz6#$#v~Q*D[›sتi Bd, r mE첊>+{u}ZXU-G]fB0(Jڼ?lX ŒJ_Ê`D_}鴜tެľ") ;dPNZ8UX,rh Z ]G!?EttݍYu-_ld[ijfn1y9ЙhhZㅶ+p{MaGGOuŸR؞Ae.T߁\ᡂ6> p %jvV%Oxb.bY0>-u ){"dE.*?& fFlt%cQ"Y@`oRF}=w oJ d׼3҈=Cj/pC Kxd&$@ ga3< n@sYud>5q y:ĈQU~|glFFZl@ޘ<^KwRbȁ)}`*ҏfK=cw%Iq82S4o3u7MU8,1PH. V >S=SFZxXZ/+ 19X׍ؓ~iZh3ٵ2]3 [=2 ʳ<]MFR|PR9% !Q&kyECs:ՉD]7ԙNMZ(Qm\Y[`Iψ-؎cE_Zp4!WM-$`8JvvnҩO h;4|*kHk'EG vXfk5dbވ/։O|żӻX%4pˈU<(8|GYe/g'/ 4Pޒ0z<lhM XmE7բa9ODg|_:$8NP6w\GΕMLX"EܡMb)#@`JCڠ񉲎ƪ>Pl&.FKdfWbp+N0!ώ5;NdXL:Ep[PTg D)6̒Swg/ջoTt\.f ҝG_FN9&\&5Z ̄$*xW<\(v!u% ub>Bt>yRyaS< dZs4๏mKƚw<~OZ"PTꃂOS~|hU3?n c :y=$ /x h6/n[CcmD qwӹԄԃG& 6 ?5-g@QĻĉ~o4K Rz630!6:PzbaX5ANBa5a>ReY\(rA'p0WW8` s[*c sHBԺW >nTs/mD7Mh!QnvA/O#( QP MOpӡ}qG,Q!åp˪mӬF}*VTL QzSlm竉^Ĭ)?jϰ+]:6[2j[%#T7o@/tQ{˹VC¾qi w}-~Ǒt쀚mnuM%ޖ䞵estVjە_# R5(!R%+C*0opN?4{+Wno#Īh$|9\C⽾=>}ۦ1B29åӂ.xDAFj|X*]yخߌŽz5҆D'@_ZАHcb8 HS/OKQd8ǖA(sQ g1Mu f:@(*^:q ;* иeL cþݻx񨚂^ >E .Zxҋ-SmN F[mLFƞKmd]w*MjϛrfC\uL$ J@`-9%枼Rm+:/qfb̉x1LO/lMF_7`1=|ƬyꋠwD+?u GZn^Z{)` 6Ѿ.#\\d(¸_a,D}fdPv^c+u>jC2J1fnF1Mes1хR4"&Dˆ09#iX-$N5ԇ]yBh\ _,nh$-d|#ʈ%X- B 9A)J*XBvqaJ@B >Hi]t>RCfJ N\/E"8qnhZ6u[Q[aVhs+X;hS<$r"t擘" Aoc6QZ:qՆ2h bB|%!+ $xYM*YBf3׫APO׳2.:}#f{1#avT6 鵬;QUՁ_>=L @ٳciǭ0Xp7S3,jiZKYg>j!GuPSѮYg\EIl`ʔ  kh&.d(@=d4,2 q }VRGnsWmhL,<﹁^Ϊrcz[˔!M9޴:ɭV=@"?W"YeCpWz s$%EN)iݣ+cb:Z 7Mp%ԧC%sF6؊l{YU;y2(j%0ғHv|]h?ΰ'Py(ɟ ;Et[y7Ł)RgVd[`%@˝U, wcmEq2 _%Yu5|E|<ӭMl+[Y2TCfbG y@2F@lc#xlLЦ+wV2g%☕}Oq+)-L ٿOgnl[JrjR1g&9HDy\wM`VZ(;CƆgl"K<"cDq?c]v'@$U V\IY3L)b)gm= =8l9XsPf̓{7"qѠ"9>mN,ҋ"ur-˃kλQ8/LOQa2`,4CLc=*(U4Vq'W_yQ(|ma+OFN۪JjlG[ !yT;iA>+"磒%*ޏ ״pRVɀW;-r/ҞS4VZM4mNq;r:n Z}AtYHqvU*'ݼmʞU[-m߈} 1_PLm,a͏?&!^8G)O _hT[_Vܦv@+]%n|hil4HwknT{9ZA{tҵ O0SѤL8Q!;UQpQCnz T5Ucw9ͻPTZm;xIQ2z'WM1ű)7Б)!X}/)uj|.LVBYu_y0it| >nYDCحMy'֗hgqu]>Z߆E9g^xm" N|YW͢Q&kD` Ŋ M˿B6d*[ }% gpSxd |4:CoX9ѝУ_ieK.[=3.4c&:z\wK XWK ^ZՀO gH{6V]5Y_b(Mh v~pIgƈf ]x. S  jH[rv*HfgJdt>$ o=o]}:Qc>w>(R p3,<m? ݫS\`R  Xu}5aT گw`pnz?+[ȟ8Ғ+uCA!S?l E$Ѱ`ktcΫE37mHq֫r>)%6Q ^4_j+E*"ϸur-70bB͡8"^9YGT)ܵ?<XĊ1m~ZߖP]LGˡZHfьqS_׳yQ\Gr!ߩM2YW1.72+T+ Bk$?a Y]\ EP+{v0y`߃YIkyz.X>XYX쫮(/'Qˊsؿ*% OKvoUVݱpӕVTslIcp-;j=!5/ѐOY[HL530 }IF&D֬ (Ҟ¿AxN7}ĭ(?UB5;6,@*Y=ͣ]ps ZT$T,nVKdJm9:dI$q GztiE\j (TV}AmөI9܊&pymJp*aW+8 kqUv4Ź3efP-_{HSOq*^ Pd<s`u8Bκs+}E&BƋ(6P= N;EƔRQ˿E(r ̟x+ηn])r@D Ita+ 곇9O,%Yq|\&mz"Jlh:Q]bttYUT)UW9/b|e[Sf&mW;Y+ǣ:4HE\~RCD)/µhLUyq_Ch "`VHʣnAlvCg'ޅ{ ` 0Ƥ>\^:q&yǭ P%XW0Co]~1!ERV u?'Gx+3 8oZ]Gv#Kj]%QX jyì$D[Pp<'5v hpʨO@o0%SD(ytZoT kdܟ\QӌrB.F 8>XR>~] ɲNh"*mՍ{PnIACt`&+@ƀV/1?6|MQl]hS*Ҵo-_1+)3sN'Zsw>\ m$JUGw+RcBk_{r. iB6 i%k+x% ȣ̸Υ؆8/5{~.XwџYaY !lr1]Z9DƑr__U=Y>W;XClwKC=V6WA׿Dk $Eþi,QQIL?BNfu^9:;/,ɬ-2C:&%?,\ZOX٬ng%0|VZ )鶻hZ[ƞXN>e3XyZbh \ּҋ1:(^Pw\e7<ȡ(DfCZ$:NZ 7y " &~e|z`|%MD'iƻUIXƑO[!X+Z(**2\:X'^Ί^!08E ݹ*(AiZ(8wpBO ϻ8aV<)_n)T;2%p㤼@L?$9EN6^'\Z-Me<cO:VJC/Ӹ󚃖Q'REKx/|]PőY'.M5޹ Hm̶F>tv$0˓4+d&YI z@c j"QY|KEdBT: “rU*yîa.5xCAPk1ֽĨL^q.R+%rl/fz_L氕ꆻf2ދF^9ָgpfMo#"Wr"#xt'=) LxRh9: HaSckmV9/EgJ ة@1 =f{ \1 `}Lak:2]IlI.*2Y>u a[-a٦lU"dm+ʡ3%DĴ ha-xiD*t^afZ3 v \ܲC[q3$.7]DdP$5IXRRsc ago85_1x[^m6q2f9󱒇žttn{!%haV zF+EbVS`N=~-eR xzd3?$ƻ|;=aCo"{-9[t͜Kzt)F#SG {G]nв%}tfL451[UYb9~ٟ Ӡ#/ٯJy\TEod_l䚐_PМm.u# ~!8 G-)D`$ky@$.^I280s zS$.6^GSwei\ oYȡuLm7M`/:G )Je~L݈(|:9ʘAokb8Wzetb JAQDqzZ )3Q)]{^(TE!x/- XvEј!]Vؗ`x$PJeY-Hh[@Gؤ_MmQ~]+K72ARώS'odemvaǟ,yusct׵S5p2 |TA:Y.(dc.Ste}Fl1w ^8~5uBR%F܀N$د虽֙cFb&Y< [DC+@+ ZњK0 HpT>u a(`zD!4y u֟ӮZDsdr: O sj w۳}m''y1"Lf u۳9NepCÙU-qZ(Wm1 ĺ|,>s?\ )1l3+eg*5޻zV//_4˖r[z#;vT0RnN JF$#}~m 1C7EGᠥcyP9LiVlI01UXk@z`V-ΡpyW.uU  Q am]O0P WCفd15^Fr!8zLjW;2뮈+|{`pbVS^KKAEY_V~oJld+3 ē}VʙMOy|)Mx6q@EUB|уT f$sy%e!`ċ.$쁃.4MV"fk3e •N0iXdv1[Ja08ٓ9ŕZƍ, _;'>3tFC G5\E;DlT5xASX_Z}q(?u h2| \uVzm/ZnSLj^uK[,by/W9*'bi`+2Ks j䖏oAN)Le'>b$ZYS:Ѿ3~ba5;~@I;zYi[tQ&y-;M UYI>PSoԹSdFc1Waբ"DE[ [g1qU5Z#:2.g^P6>Ҽʄy-,R_ 7r},/g!ԑuvI&7]xB!Z)1%+BC~0Z\a9z@U\9 {V:Ǒ!&۾aŢZN kߗ-dՃ|bI /6u*O6"7s?\K0?݈P!+FIC˴vA ҟ댄qEϡk] LY m}&JqnVbɽp5. NueR}PPξ[dDc3Ajq-lٸBqo oY%; &{"Mͱ:ٰvůvXT>DkDR3A5y?oc]?M5|*D`A+8oqe0Y8c5_@9tR p,d72(YXZ0kc៓?9TG1y}?l:4ee͗FAb:oC:/\\H7"B(9s޿A㺧$>kkS;HEc6^6 a=s(뇃t ;8J߷nXPQn r/huWdl?n5(ᄉL.XHl%R@5q&}D:T{ YuA 5 sґZŕJ <. YS3%!_[x]wMeU-x}Sʒ0{SAM*ĺ|4 1tbFɖ;Oud<tė.X(Q!p iRw]6&8qY:`2;a;B>u.Wq0Bc!Rx[Kf~S# 7t@x`~I8 kGV_Q[. &6}85F:|vPӀ<=#*x[Zk ,ax 3u=fFZZL@ɚ"J4X oH’DyJdQHWzFSxa'^|wK2]KwxHxQ[Yz}me $~?SZʿx%Gm{_Ttke%qLZ|YUܺ =lbs'i1)ɺ>&-}baΜ5b-0O-|yS}nv=ц!ECNslrSq$6yJAq$ֳ>#1Sх@% ׾;,<=7ԫ(oO!P#gK&G@# 3yfP@ءNemw~SgBn#ķ+ -q/]*"eVޓ5bE׳Z_B([Ǘ"G%kDF ̀k)#}0gWtUqE'~켛#U4W>|4#z%7_WkX d$xa޵8Lj; j`58+Go*anمrtM9QQǗ¶ %zx0ѣ4qq!o#+`N&PEx~-:h"V(J'A|7Ų Slى!&geJH\K$s%j͌f8D*MVc: S1Hĺ+q0q1٥QFا)yD.0RmˍW^B:skCt,u1њ?p@ ioJ:s%o׃MхGgH3\* +'4+l._ݮ=u-J/C?prR|XVR= 5Mo؏D*9<`GO7nnɚ Q/#A?_A>&܄ie-ѽ7_a3Sm,&z zmj4m?㟑 ,,[GS4`ޗ Kja WŎ>KahF./smTQZQr#/+޸6gw^^p%=ʽ ӔP伟$yF+Л蓐O}k>קN|2MOA4ߡֈK XUFrt|)d_M\@+8g5]'4UMb?xGeXu ^^_97a12$|IhcYi ?^!N U]y]|8}29|5\؋QX'Zάd[n"Du{La6g@CCyvv^VVLF2}ɷa5Z';a̝.;Kv,1!bY j\vGWs"{f+)fxbk5$-,qX^k}x:l t7Ot3?zJ0+` 4zה7HnP8 $җOIBԎf"z0Wc6A*L "I},JF,|\4.aͧDaϯ, /{@RFb6q k#}6Ѓ~YjeMw!eG !d9;fJgǹU|Џ)4)O$76$/6W>6 =zUZLϼpWWսni + m[OLSߤh^7 vT˿Kv=@;ål}Y4I%F_g/껮60ҥ(8]m].k+Na-'7AGTf+x|Xq%ӥ""W{h/|L 62 {6}Y8N#fY$zʮ(άM`‡-{idJb)9hP6A`tL;dGKUXT˖`+Aohn{;>Pkփ_do$V, #"2|kH0JR2o3ɥl86[ aiF?@)[T i d$͔1-kqwW\Py>/{@p.̓` &-aFp d %&ݛb)d/Z \~v b!@c,=.y ôj `g4Lv[A[ 1O n}/#cړ舢؇zailN "|Ei9I#R췓m ~X>00$?˵ä1xi'Y2|,#IVvV I:\OxO lJVv8I|օqv4̮BYD͝mq#MDP}_DƋ.DG\xCZV~a<`F_8 x[yK2?}җEZA|y"dR 3\`n_TRj-maƒ9 Q:9U ]Ưbl~<:?+g+Eϻ YD;K[̕ږ|!h[.JhO`)Ĩ nz J?ğ;vsl3۶aa =$Eb^G~/n U5|5=Ng U4Е6@݆%b0.p].rhCU$З!T)TwC ,r8v>0ޘ c{|^Z' P^ Z`:E~z[(DZeIacb҉xX 3;L4?/tGܮb@ҿw(ϊ{s I Xp-Gc3t&ɦUԌ;x`u >Kb ,:FQQ,;9ą6sm=ToZ$6"ı:RŪOp$ iݻ2kߐ\VXcAe _x*݃rĨי -Or3AWJCJ("U{W(Rt~.o$՟\IP;aGEOj)t`RX~GgPcQ~9U36ce3}cGp4+I!a,%i[P&%v3 _z0uҁLi^>1ӕ'u˛3ǥy#OF` 1\O{<: QΡ 1[#LaV3`ǎV j'D0r׽F2*QlVcc9;]bl7_j  .QWdjPz;„V-@"R>PgGp `o (ÅjfRˬ, #CU˭H"[@l:CHڽ/߁?ZX݆(L= 4)}J=2qOzPh CT.j1 @/Hgr}x{Bl]6+u/.ڪHS&=xc[5{l}C=+:5z;9EL_RST$%0ׁf g u:x7IϊsM[R@[q21tPŃgSk E@1,At7Y//̧ClF/5*^2U%1 &0)F{1dtx|䓔Qp0 A6{ceCrpC˝JT1몾Z%U/*a,a\D5 eDt8i;"h٧*6=EXUH*UzTYn;>>1nFMZ q5iaїuф >!41!HTPU|KK1Ӫl(*ۄbf%+lGG'Z|S ZNQ`A-+i8RDu8Xԡ,c^m] HXW@=>mc1m'5FR">`)Cd[:W6#@a$3$q쌋`&Ήo2r$O n/nwUHx.1#I0 sU,5Aoxt,(IC/ =DdGgGI<:5H&ߦ8[3mߤy]n/T^ ئЦގcz[UJW!r"t&bdTi7 0e\wYp˵3u\=TW0Ȩ8]!nAY"Լ PgC7@(=w5 7wuZ~D-dɋ_LaF'N"%8xz-DUh %,:xR!)i%k3ʞhh 8TXLSm?@SFM1M hF i}uRBy [ S}>p,/Bi[lQ^l pi`\{$ZuS0+f#8HMe!)a T Ypnxy]æ[Rx:)\-EN͗"lsQ(no (LaF!{?a bA0 [[$T[91(7ǦJdC-ǖ y4/ $7<eU# S"* =ƌfE5^ӿ\+{D%Th [IEQM)*Yerֻe楤c϶ܓBuB-~A"'*QPʊoP0pt)46ITՇ, @`ân$,<܌oPz}=>,6|z*P9)ޛ[C*> }p~Uvw |߰㦂"1~HR=>_&BY7䎦2L)Τ_I-xiR DEv%h*⨧S gOƝ.CYp!5+Wj zC-I~k>cINrY*>KKYarzX-ݼT C<ff/@Oj'=AѻL;̤ hA,#/o-<U/0ɬbOtۗQEնXy '}6Hv vg! }:R6?V@r3+ؘ"o=d˼DYsd ܄`{Y#W#Kb1=f9Gt@m}J$CSQ Vn3̗L@C74F;#tnFTB.+(K5aĴnVcl 􊮞\LOW2`[sTVp1ˆ 2{2`m%?4Y\J=FlG+bh?6XZ=TtT*"̗. ɕa7[g'.;cM]FOMuK27NTaE\%G:M0A̓*I*Sx^j|TS{}+!M I2&őσ*i3 "3'5odrh&q/9s6yVFN[qp)}!쓹nRF(Z2aӽ!UjGCl0#wWmluNS;҂J-uoU( тpeؤM9O__d6t_(A ^pX8h1 I)l Kݼo;&ЋUjDn&<D> lM[k>bt6|V\AϠ,ZXu7< 8%F? PE*k 7rˉy+i> $.٠[U.wW1gt VW\\M0Dԅ 78qOL m#)>΄lZ#}9Vjoy[u-ī?*+Dw[WI (_@77[I䇸%/U,g{AaEii[W ;a6FBg{j̩51.MVQMZVc7+ EߒҼ>ڽYxI FS::MCPo$`րe /J~+~@fomEǯ_Qny>ps>%]TC)8Oj&5p;hb}Ȼ\ c}bUo L(W>w~ܠv?Ma0s HuZ&UsS(u AnO Q y7ceeMp J=V#9{[q"2[|;?~e~Ae;2kǩuJ;,뫆#7j5/zxx&Ř&>yuU"zNRNBd2H ޠOgEhIK_桤 tJNid4?e#h4TȤgF 3bE`;Ы8vqE};$ vn$ʳӾKzE209w{B*A(&'z&&Rf0pߟ҄b'4=6%ސ0ǿĺ{OS:z5^×JlSqT 8].@j^CYc1SynAOf,7 X3\.l귀b2uǔMzN*=YEgRΔq gr& AҲD@LcQ4_Z=K{ig.PZ]hUN ?J k͡h"`~it"?t?QINӐ)\T&8n [_XGqt4K۸x5»? !eU0BT]e2yOPq6JӁ}:eMȲ}Y.-a1(pݩ+kRABUk}_AG?I|sSBPZK}#ƺKD_2P0eG6hbPx@Ħj@.84#={E?#^<\)U<`o_Sd|v*?<Ϡo.ܭsMQЭҧ( R=/\'RRl8dh&Om}^$:0fqmE I9Hƽ_ni֯C@AA+?2RYPzi}1 d01*ʺ5<k︠ Q֏XNyY%Ԕ |izMII[>$`2.fN8:lSV/6EA10#^-EBH氐MtGt%qQyƿ:rB~y$v1Iwa ;1&6=/;y[M'AW %if<5BcnҴ,d^_ Jsfjq-.Pͫofز3eaj1* doًޭ',87Sġ[qbd:ӵQ!Bvl5dB5xqﱊǗ{QM2awIDgsxurR[WS)ՙ|Yh#y(.šq7AppyvnJ[7a^DENՆ#-c0gYod႙m7%v+ؓt(.}7zڌ?u{gK蓿 'QBn/98[莍CQR_Cj׶vF׻\àٶ^ oϤo dB曍UL [Mij% [ 6Լݹ4gͶ6.r›|T)+E+qҨ&%X2 LWk[x_-Wt8- tĥi'X"8>rxPzs 1lRb 8l6*li1aT"yGfZLف"^ CÄKaڙՁe9ƭ_n/Tv~ߑyRsY==Y)+C򝮉΃u6B%Gz/e6%C/*1b4tW<~ƫVX建nZ8LJS‡dm랛7`50NWS\ۚAs!r@d^BK&S|NY'x U;>Hy0Q@&ݕ!U#b)!Vc Zˮ% 71 y#AO? LtpQNb9!0E[6e7tMH6-glct&EQ=L <^Pڔ6mL%@52N ¸Y+ (~XF?zk޷K-o')-'A7H[ȮԸ;*>Uq oQoxLR1fѣaGq{HFʡfC嚷 bYDe,߻UExTyN*%vs3ӣ/x>fgM\J=I)+QWqM];}'{؆mFXlx5ϥƐ{]i}P hZl v;e5~Φ|~C2o)ꠑĊǤ3"Yp^L?ary[Lo+ClJ8]FKܽ*i w+W ʀwܴ!L#eld81ar T+k? ;y!BgEQO DkE)G*,&jtU>ԱwOwE>X \ζ/2c|) m(g 3i}A.v7n2lKJhd)9E iiaӕFЀ@:9~?3P=sz? >'AQ$^Bwپ4@8N3!uUk>϶+pJ:Iʷc*f6UɅ6C?C gOTCWF!{ #{DQ/Q |15p U{Ĵ',KLl9J5b-_$wʲHZ( ?sc6"6]KHT((.\g+ܮo~uF %m\oiE$ܷ[AWТ5-Vlb'$U^ۘ,dzhG :CI ?ng0܄~/DK%(18gݢ;wbm=a\3(Xߊ$ua sb3~O =z vi~ 2_"Y \-X"[޵ޕ Q]Wizک, Oj[ex1a5 Wڍq[FJ]^ԘR2ѥQ5%X``W)/.T329 1 -#J"xQU}"5־ @YA5m|37P#Xj[F7 톀JO\(ވLwm4ӳ$āŻkc%q4e{Chg(V&N&gx$YC{==<#l5iaCA1Zݜ9K)7 }IaQdۣ2Pc^mCi~ZJ Ϯ-69 q^XV,!HjBepllf 7"z=L)A []W8 3SX!ԇP*P\ ځ;~en]~;‰8c}*IX1>ӜRZ{l{[L PIwhtJF觑idOmf'X8-*Dl"hO#*,TFzp8LL{r?qA4PLJ"G#eïF2Z vL܀oGIKc0!l`pM;n,m4±-M0B{`FҬ_bj`cVCD?  ]C{KS`D 0ӫkSj a?H $c*gdY\7)W?liq2Ħ~(7,3.H[:3KCϥ=;}C^k㔵\e)H6^&Ru QTe5/7_`A>wElh؀IߍK;f'(!ոc!2a2`gMG/w>;b[w @BvkzĪʹsDE*m6lg8K v|˨H#VUP)xCg<,??Sa -=# <5cō%Qpf%{Ʒ|fU#Yl7GKDnۿgT‚$C7@k٭ 1d俗<~R˒տ-RyT_K69 !J5_v du"uN |*&ρLBl(7r_-8(QrFybKKO5\MR.zѤ1NFȁ[1QpQyܨXf,mvS3(o"(KzGٔFG7MMcNUXCsB.yzӇm} r\᠎\DhKjO$zbYXQ  : eqtz1hY\ÙZgC:+¬9U"np/CRm+- Z4NDUtNLRp`Y| =Cs]%fQz'Vh 2- ЍZ/qF-SQD%v+o_ `X1a2;pذ2sqЮQݲH)9J['VSB:,.{el)ZST)` O]`acH3Uۇ_F 獛0${V ``kLOJO0ˏJ4G{

      ds &L6_.AQ9EfwPT^ln/;][UYZ8b N!LQuq*!3?>BݯF˞qVe•/p&i˩ xK1p貴=xUYP7xδcBq:7Ya ]-}bd6Hh*4`3jeyR|~˥r=\-ħ)A]f0 j8RYȹ4fg rE-I(`@JF+[Gw6Iph> (C<](]xQ:h<>$ `#A-HF7Ց~ M}X jR'F@2J >-~QSNpvӓ_ wӐI3X.:9@<nσ//e Ml0҆}e_4Yݽhvlɂ{~+/$ZX| 2AaOkE/KxL>_Ɏ73slFY*fl| FHnwQs1 L% GDS/N@M8#T1}HPH  \ZdVevHKoTSm&+m4/ xxhefH/.rFsO:-Tw`02͢L4_~ m-~.h5 ~vyUʫ ϛc =xaI}*t bEf@݇%?3GV1ĸYfnH5H ,f0ԙ65|V8j`p<:K!VYˆDoNx19qȭO7=4sVSre0|P_nbO'Ԃh}uz}+Dx־S !tk_PFglq`Z ( Aq1PD >`@ӂ;[<&iaG P!̖E6]NaAڪ9 Y]JZC=,Ƶxǡ9+X%w{'‚;a^w7AVm?ّб]ҞipRz0Ry:t4e|"r-}?K^U3miU`#@{ kDʥf˞l:5/ ~lVz}(ݸj{[aF]X飯;mOᾅa.(FNWO[cnCaEtč7ze$FX?asnjE Tvғ$xVG3g .} Z& XjTs:SNjoc &n;OllII,2}ː剫 :s5HZ[M&4)෻gi9*ʚs ˘NW д-+7bFl@ars_nI骹;nX0A#Ѱ(ּTW㕾yh2mũp*RfTigk6fƋ;s~g[Fz%_EB>.ǓF{HkzQ9R6 vH"řfQ"qFB5L~=gftt% P:@*@K ~8}Q)v7+UU@p@If漃9#[Pۊ;[ IbHf f{?`wjx n]ɰh& v6y3J OR~y:w:1H `r/* fP2x"L0O0mwG5>]|Qyj1sj=T8XK+RWlhG=9Rlsk=AՠfLÆC؊b'F*F0[:4a7##Jc&zۙ>;csfVyY GnF^6MԻ:KOF! j}(<$n;#qNѓM븭rYD2>qlbV3!w<>H!B?c?g.vCŒB{FX^no~(sOݚ\6 Z!@65|I^׶Eכihx7|Z,#+9K,eFa-DN_B$p`J\&i BI X˚*w7tpJx S=ȑcLÊޣyͲd]BkS[/*X.<8\xE`v14">or~4x?4Śɾۑ[ qSh&ISf=,e6a1 9"a} ,?3XP ?T;Zܽz :g tw˾9.T1!6ڌ`vVN(k: .JVn5;5̘h&:06mm$ll&]OPO:Xx?ۼt y=Dyn,.ErlS*4 I$6O_(&xSI}/?“/'߹+*ad ޒH5e-̂3P{a) VWcӢO:|c&93rZcR6GJBXl%ɳ} &I'Q^=."1ݰPԾt.oK?{VjQx| Wl 1W5KZ *.5Dme#kڗ>UF5Uݔ\.θṶcivHt^6HCx0Ȭm[ jH3o{{USr;WcH2} PJ薞湏} `&(Lo@Jl |f] RQuh{Ud\WAz'w+gh'|M],u 'z?82pZORFbb)ns<> eg@SN0Qtud4ĪJ}GLg/#-VP.R!B3_i`}Fͧ~=oW:evWn;M앣l}DO߳pؒs4m{狴*NUCLfo=jf@o&or>M0YNCnhؠ3Ȣ0 l6*j|5lD=^7ցAdY@8: x{dhXM݃QRK<~s,/J^q |P_w r5.{A "߈ndidVfmijbF*6#fGS%0o&vY'ܼ3i?gq޽awZl2"UoӭûR(SGu8U@E ~:Yq+ЦjMY~W^f.U^1I}20#}oq]gԟ">}Y`*$}O귈=Vdq OL9D(G4Gi3t/%63)綑K嫧d꼸6d|y%Ry=re)D I~{ %֠qP^`ٔ ^LuS/bdNxWRIE /s| {»6>㋬3sIU^]+a֗XִiyPbC/2v+EwNӕj>zߔ$ɠ㷤TAHG=k75ߜE5 I;E >i6Pzyd9%7[bU8y)_N8 %eGcOn/(d-DJ$zT~ť+{ _IB]ӮbNt, ۬u^8+2D?Oek)=]e'&'"+:jǪ %';,!|ZA`Eīl8RBEUTƝ Ɓ=c.|7)ILF2Y1P }&eij~8zH˗Y? 8 g 6iF\mt'!T!VMtɁ)y^l"l+#5|-wDLH= #[Jm}; :V?QFod_:AœA =2f OYz\𲠅-SsS`lZz!Z N?(*KV1rRUCURI:{hknzF |5UfǚtJmU>*ȐFAc̤@zƧ~F%-~rď cpS9ހ h$gFxru@nGūz=↷ЙZ{7LA7:B@x[v&1CZ㒙 6 x8o~\(G<}ҳmQmy,uRR _h;M 3Llo)A dTN:'T,AbZ%Ad;ߖSp8(C}foKВ~%D@2h5on0[=2=T p`B/bqbPN1IBk{]&euoB*4k]96FK܈0y*Y5&![xs~(^P`3>{ې~+E"W\% VV=-Mݘ19٧sVR4n07Fk˦-qe8BZzm^vl+Z1lz4cfDSÏ*`CBTxlkMH 7DpvweVq:ŋ{Umc3)NB3A[w#ћU'Q Wr2D `c 5]_v6~h>4ȔW :\h Sl3h(3ǧ[`M ;yf0EGb!y*r/Kv w-k2LJ`R7]#wexΞ/{Mȉeyeָ$Qo}#| ͼGGNUXp7E@^Py 5$.C@#O:b) +nu$,aUXN c-ֵθkn<5d1atYj+b"Fe2G_V uVj?A-C(i0lޯ>e Mg{B@l].=&L:$Pטy_Jz-Of.)V=Je2ٔ{|$9Ե5}򣛒JFz+*,qhV6-Eo﫝vi&yhjٜi@hbp/8v*=jZ,&/fVǼ%!`.[^ـ ûS'KS0;"aMʪ~@|4kiG1~%϶V={ы?Y힇TK:;08~d7[ BPL*q>*y V##W%3?XfLMSREŭfWO]] )țn` IYvE ϿqՕ\jeXcMb_T In <_/?!6xex?Sݬ*yЏlIBS\b6_Y k+9. elFLbEqyZJ@_je z.R?S ֍GЍƥ7O`Ur=jؙrMX"gVs}gKDd53}hRUzO C?bv ;xQPeXYY+iLMhevuCo]4 Į%SSOyJΆNE@ԯ1?ߘ,[&q+*07vxۥ" )CYY;RLɚ~J75!ם7:_S7H_`VWK|2ϱږcP>śms!NA2Mj)mC TAr6O M$?L?;LSҋ-`wBdCǐD|i*=+Id =?TnP 6asHLQ 0x=wİA ~^j]*=ꄗ2X0MTy1Dzu<ܯ40Cu$A\`*Lr^`qՅ't֑Wqcվ¥?*Tj$0ֽ~EoR,KO ?yABRyƷRxP r=_|fU-(}EQ u~㧌.W(j H:$X+&846rѷ51mͦgMGgKbОgiA i]mG S>mD݆#DC[ޜ1'Mzy@By1۲yblaC ˒$9EwehEJ%=g<{LhR}iŏ` IG/Q,4#lte@r@k b8٣PnfšՓ:MG3j|f C t1~KTݽ)#vx STfùSѩٰPp:q! /םhn:|-&,[y£ȍ˳vq䍳hInl%Nɏ_Ӎu8܆o絃~d"R2/d2)lu!tEߒzV/H3S~rx+bҽ`LwK3}6Q Hpj >U|K y,f{QL8ynpR8bO}K;`4CDlB JȲ1&j.ϑth4!g q$@Z]g7q(Ғӧ`hC,ͅ=Ob-W<+Ie 6!:[,l84Tf,U*g-&Όj #pATmK>㡨%dT^'*#k;Ӧ+  u슏mɏ,uJrV7FuI&'N8 (F.xeȜXPp8$i)Qg ns23=5ˍG.'' vfxRpCq,,Z? kroanQjk]n+[o/"T .\zv#Ky u-EfQV 4 Xo D#ʜjƾk# aV}P &5FMQ,~{A&1M$(Zg?DTH~yGa9j⅗ goHy'yDڼ@4ZD` } ӌgXrO*MZnV6"mF_[8 Zm;LyAQ."ۆcxu&`=AϤˇl0y2-E>'my/4UEܹE+N름d5,ת(]O.b*/,qx]xj٭!wk14i~`Nv{8f9F.nwShm/kL;*ZLh[#b. yפ}51;&`^&\QH2!_ aC`>[NҾ~Qz\w03ox5 a"@^4Jg3)E-Ӯ6 2Q_}Ό+ߑ$tD6S$V3M162gڨU>28د$S]W_!3_剘^2?}sWVdU9I%2ؓ*n*.?PQߖUݞmt mJ7dz}d% % *`C[“AUZO0 ~u9%ʌqޜy@tl2R>3~Ì[b CS^h&/ ]$?Bع.,*\媾nZ+S \1:[(:Faꖕ)Y: ixpm QSeʴT_o+ UC%6~Z@$[dt{iݭ+.w{ڣ2$;8v"&PhAdB"S=fbX΋[rRd Hg)\Ȟ*$~t52s D=諉&#],}H u4%j|> % FQjiGn^}o#2<\]V9Vx(E;7tj>#5;6_GCpg"^>qs)) H~RNϽ[;-e}oM~[:ہucb@nOV 6YEv*qC_*#ʇXyLad-⎓FwJfĘge_KN~GFs) .2DGY|^@|W ҀyZx&]= FXmeXW1~\^ -ZXEo$+/9~!N <KU?X.9qm+gjRs q " f԰Ch3;Fshضþ QiMҭwd6Eo6hE_UHni2LZI@`BT?ac;twodN^Y:xSJzBC^ճ97_7Z,݌ An<4џw]h L/d Mq<7?Jwk(] aiMN`} ՛%؛e"& (,e@# y0tÖ!_ٗ? =}еu[[𤇐;ڏ{:;(>߶+^mxP3K\F:xb 0 π0o g=&T]8!{v KςBHJ+lx >9*3z709 1"H`E|Bym)o(PoHU>9ˇM7vDȸNN&%JyPdqwL_-`59n' .$L|qJB,E2!-xw,R8$y6"78ve+ϓzEjY}qxZAìX߱6[sp_{ ATFb3¾Aٻp3HFr'}.zȦJ}{ s>HKA6Mਅ-60>z8ԭi`Od\ ނچ b@YehĠ6 7#b5;Qp8 cr{Bmif܉x6 >^wЗ'duJ9ܐ*{!7ף۰+ض;));GҦq U{|ۑE=8@OQG jc)OՁG~g6Mqc p6 Cp6U^Wl5mb”*t1JeOt_X7Zx&tTv_Suވl5q|!5a5"&ixfk~deKsa4g YJ[lw?S#coc~(c5\PpmZ[aP^@y^*XTXGWw] '?pqnnh#]N V][Z yUΡ$Uc ɹABRJcQ/Jiխ F?bra@FafD`s\Poz2SK\ĻV,C5ٻHPIe۠IeRMOX>',@lf|$0|(@!T#KĀb~^H6߲w_XOt v6CBa}betLvT7nC>O8[osDidWw %.0;8% !3<;$w v&Ǔ B&]Hc/v/%`0HxG +NncimG>XuX ~nrBZC/I3ʌ:D#+Ŋ%k5XLA[&;Oɒp: D_P~տ^DĝUmVۊ8\XЃڒ-ZLs*6A"T`1 Apj'REGbA7Bbf0AhlKz9m=D]m+!Ķ5cSmά}8^a;z޳Mw=Iq$j 71 fD `=sHՃwQ\$qܙ8S7yvNrn%/Ʀ4 (n T(&t~^ܼ#;O˱rO픭01irPȬO{z7ߠ۴Yb .2b]n~3n6vu pڢ䶁Y8)xPqu uZC%7XfG7fځ9[-GDظpK,$E.ܻ\|;/YǨ@P"hl[*+亏b3嬵ەD!JDO⣘KYъZ&NA(_i7f![~r=xIƅl5kfxYQ K<:Z` r*:4}.m ݪ.Rm#ciXYAd&Rr_P*g@YBWɿ13İH9SueMC1HRX9DKZ'xqPe7t0g;#ebdn祅RA $yig{8mɻfĢ{?ZSP,U?gS e$mP(_bK;,ǎZSSWFPV[괄KCqIZhL19&E,dS>cvSZzvnogSi'E"hb>_Mrkd1Qwn[:͓|5C104AHbpsAL\4nqbÎ)C`HHL92JDWKq](hpPrj8 O։65Q_C{xr 0fijm2&>6Ħ-\s ڶ>8ѽfN'&LBw],GDaXnnsT Y_}ඞHx*^|Y۫DFyz MjQ; V8Nor+|㾊n8(8&gׄ!{6h4&-h;6dxa 2þ2x#cZ۾*Y?󛗄16(ހ~NA kl1Cu}qZ6ۂ3kθ33jAd2!ֈb)"$dc#W~w‹KcSaPf ŋ.SfڬCB#KCYB(,̗T~B&I*kl< X&K ^ѐn ? 1@8_5꣎mUeZfR?3rN[veܔ*$׮jMtZ@Ӛ̌mOtʼnq@ X+hKX%E1GcT,VP!8)C=)pkߥ,t9I-&+c3Z:iAE?BٷZ?7nmtSx5,%R+^}j$D];y\Df|fDב6諱d^1c7(L . 8zc%PRa&uYՎ%BF+z?wy&d#Mߊe'-IJ# Ngo2N0+f9v-aՂլS%t|XÌt:͞fS|2L7* CrQqpo+ T,@@ﳿEOkaD3Z@ zf ĝ`y؏ܨ1bi-by?qkꔝgJ*9 } q;_=DGd;ɰ4̵ hO K%$t˭yI M22OW+;\P,^,Z,FqJoG '2k%+K!G? wvq}B~Vu}2DO=ak3do btM=>K)0qk^5l;[SÀ:h43,wza::'FMA_22E{O?Jr7;Hj Ig Թ7zF.gֺ^|mՁ޴(0rΒ ss8,Abq"_#,O^>|S cHk'`Su ^S$61Z^ZY*:hou~=g}<2c@gX p>SX|XktZ%h?ī+N^ K #K>sv̴ `MK` I7M)`֎چrp~B/l"ױ6X%)"*˙ Mq-!SW* pN`h^i,5{|u_5ni4gٴyJ!u+oBޒ8P4-C:g[W*g/вuH1; Ck>W. CҶdWxĞr\F,F/jmɷ2ީ<ݥ&qa>oA= Pr )7U (i=aPRA}F5y(E's RHS$۾If||/޷$k$W m#Nr02Hl"0[a j*q4rM#.[jgVEZF8oX={,TA}RЭC34B0>lʯykx$H-~&j-8k|h;bE-d%Kż_;NY>V1w*ϔ9O#EIRGryOޟ"UhbMog~!figo032 C/zya%;^l[xԒL~D`Z~rKCX扷9LC%*^&X\gtC-/-)`7(qujŵP.d{u^8o ,)[.>Ef>OHjG}׏*iYN_an.NwU*_]&XUGO}Νo+䰗汾 B]-(3niӑ>2$YDʼn^ Ogu\QU'< F1-O}!D^#yh6 P&r~V Mpʺ8QE/ `$*p-Z@O{JN18; xK$GVƥ^<2[G֯:vuqJURX^҇]@vL6tҶL Jځ6Ӄ]3LQwd4ٞ2W耻Q2, r+~QB-㏖,HF qA 0N-jh`=%PzqyTڤUmudx$] .ʿ5G` 'BQua|.&JD5(MpazT2O3?F, &8E>lj15 Y=6Hs(Yˡr c0%RɯBVD犢+i3-7@6w1bl| zYj0*1[&ޮ6Î]dxem08:-_6u(È0d& T8KWΞWj` g]C[@/e,lkR;XI!P%<3"3b==r` -P YIR;ncҔxuUEX Zʽ׋u2@x(iX H57)ve$+;zwaTk"X;RĐ_PctCi^E{1,~߽EҺ] 00>(|B)- /ec* w9MH ,5t2CMȜްF; #A[kX7 :0AXݗ>sA:娟@qDh4n7n+Z7,3S1< ClPtm<EVxKeުgwQUP ugzG;  FM[?\=v'#0&y|nȓ2{G8dޕW9#6xu773Hu"¯*QK?FUolVLl5oFӑ6sC5]pVFuq> A<:@N}a-;=z1X ZZ=ٻQ+%?GIso5@))pnd夨 >%$=)NW{l~%u[ďϨ$aFw> i1 }#cj!N>[Vߒ@c%CPV3+#i-ڶG7 sM&fLT k7)TG-k <qjl89)\sG xEOAɳo$~'VVƃtʓ {5::C{>SEX4ieUV&O)̜817{tZ~^2r΄m8!"B24P3oI=jI9Agcuh8k5:=1W*?̓yP{mɮ3Z0-6<({O^0[SXr-b}驖>"_Ͽ5bd.ikBz2 j( xz,)reK W RGo03j3tcoS =W_"@q09]Lk2c-cB EzzA dU= /uFVۃL4.-[_Gճ$k*-G0W- v1S&%Rujm.K: \VYg9h,廴!WL yn,p 5ZI/Tf @EG$XIh=l.\@(F^Õ=Ȃ%7ӆ <8~¬.*d,W"ߙBkfw@p J0_Y |Jsi;ϒ=8>dJ^2ioZZs t ~D\3͐K d^%P;^U@k|L}="T4=I8sH[MNxr&Rٛ`N@0[dA0$o;y?}'0QyfyWH7B;7mJn֥Q 2B?NylDfHRXeBluXpKޝ{NU)r6Z??5塟2(FL"25Jx0]] HKcG#h}5k)$%dINAfCsw!`!cin)Lq_3~# DA,jݘt ms ub[I˫V7-UTm:#x3x&4\iރ=2!0GTg qώEtz[ { Ga2?-7Q-qgoAyyD 3b&p_!q!}Dh•Mu7QSq(8n}~b3t7%_98#tbRRI>~#ynTxQ5 yƦ%S_S(AH--S- {;ٕ(?z{d"BgF6A L ZoA:ÍОiwI]1bHOtƹBRi(͏:Cė`S`KHC) .&ڱ\FS'Zkl-ю(PQ- of)1֓U mi, pNblBXq5aыB/ :9u,t3|-iB@e=;*!MC; όҵe?qz\|'NhJa2e>S90xR~8mGn(Jq=#äg yҜr @#E7+̓I%{9-\"jgsxx'V h S4t@\Qe>K/=2&q=t0IbS׉|Mɟ-R&_B8K$J3a62L^Bg eÈ3WW-W9fG7w52* JhѰ-/lz <=fHkڈ/TR6٧^U XMy>Xu/u`:ީuQDۆ@՜7#?5@39t+F+k9#3uRmD,D ?mfܰQ^M؁:EĠLt9 Лj(|bX3;vRc WR^M 8?/?ƗU_SrrKŢ2:dQm7ƨUޚbBx5`8 Hg\_Utw-(3c=u4km"#ɞ v`H$UU>E+P @ԗ4ޮh!,q'129uPM| Kuqo&)sU̻%/2ĈNb[2-9z:2ݚzJg`QBŵ i:}qTe|cQbfr%Ie%~{jHwTv|H=!Zc DlnV%!g6](FmCmсXp89=_H0wlS\f8#f/޺e/ꦻg 4ÝE3]GzWj͂,pդsCTfҺٗ*b^~&I~:Y[y"&ㇴknHVf$l3ӄ~t=QVf=N8fF4^y 6R_$6;ad+UAWxS)D%Yazxi,U j%W q F}ss&~#yA)0\[ķs);"`SkMe@yn`XֻZO@c30h?ne0鰥A@8|a$ Rfm9`m6b~o7̶;O}* !Yzq7 u+[4e| 9+eSsB<&[ɑL9| yG 6-*cMf}I]:Nx0ǮlsDBZ!wfݧsk;q@<`."i]t8Dq74J+%zpIBnvJ!f-S@ RܐCt  ^tZ)VN~1sIk ~3wKRRyg6 6i1|h6L3/0KX)@F~L̦'|ntű?qa>*ٔq\O٣)B(!8\ " p+~+M(|ss=NVֆ[V'.a93դzl$5\vH~M EvqHbX=+Kli }gR2NJuz3LR̋~UcTd]t+7v(wU,Q$Q2ȝN5oW)jo 8MK,{'QUNЉ2?/)2SZt; `n$wbP$RU9EB^'0 EYۇ*yiX+ʈS@JʄI4̭zG+ gI (6]e#6xRxsӡ,K=8ջr~̌&H-[ T=R)Cؼ l $-Of偿Dv7{>,])Ԫs1jcC:1&0X Y6h@hOD\YG[zAJګМ›k#0tʎ2ȸ 5WJi^N}p;4)DӞj| J16\,(}*"`A=ClJXۮUdvoz-w3+dVGo/VӕThOI!v.!hrF" ˕pEnXΔҷfl=^Y/U*)-c`7]$o;Aɬq^3^4]r*'@qޕty0U2ri h(qbs!=2Aب']jr蘗d&E'3F>9}>5J0I =;0 zZKT)pb+ma_޵*~8M^۴_w"WR*Dgoh!}!ˣ/ֈDV !ըdazMeUWf' 4cEVGGRIb1tkDFoO BY$5*G Kk,0eGDB%@PE^4!*f؃vP{WNL0J3+[Uy[u̦_'d?S_@khr/\PK]SʁF1.9n>|k>Hxt8s/9.uo i[y:}C qK* lad;hBy]-=rY prLT_S؅LP5֤!űvx?Ć~ B[rYC,C7"d1֥SZzo(W#@p0e㤧k t+܉Rϱ&iT9L8ǨE3@|h'溃+v]0LG`Yz0H Q,l+]ZS Kآ(`i(ar%i?b%EGa/+G{VO{缏mhyEPCԼA"Ѫyv 8&JA>*Eп˅_7d E3'(:ߤ\?b@CJv>(bK$yCW쯇љKC9l!|F ùƙ6=og}Eneew33Y9UhECYoQO9 U?.@hYeMR%\ꤹ3,׼wr8"(Y)ᘷ L9*ȵJX7xM+"Ԝl-4Maq(/( ̙y "U%J{rq͋BXBtA@[hdYG>FP4t@\F`4M /)Jh xwnk!fam }8.޹Emʫ!p~b44xm5K ֖W9ܕ(5؍{fS'\,uA ՘eغ27|ε` ΙWl\KMǓ2,U?E&[f G'}l ':]!Zi!c;gH׬]xќp5jU#6+R^˘ǃ6k}Լn~Ah"p3Yh+.0ouvw!D%J&|q( 4L!&ᝈBfÅ5x&3˗.[k/1jJ'A3. bp+PF_ t%E I aHӟ,HSe+drw~OOJ0nWڝ&t4(^IBXh~ ^#B!aXjm«0v[cXb/^~w&e(2|h ջyS%"$?OZ;2:^-q xb4gswLk[WSe?C)O3 ojl?rwGfM#lc 93$$Xx]Aȣ @,hѿ/]A TdRWI !C7 T`ӲDb fy!+PbaH(FƟuG/!_2. +ܒӰ"ȉLsIjֹ4W)< |\m9qJuBuJ-# -j Q+q9֎2 8箙۵F-}PWDŽoSb'Cgnߥ:kw\q7pۯz~݀6A~<ǟ]߬䬚{q_Qph2 jb|!q.t%^&hL'&AʥЪ};otRлoH\<="yxZ(hxLEpyl<`s3_ewYj6*"~xQ@(d`]JXC}.L' Y 4iniWNMi;ߥX/rzdf\%婢E=N'5]E:eV_ S`_d,2:Kxp~QoCQT]ܰy4!8L>Ob^ dre};6zF(zXWrT~i(/bĢDo<-rXw>bh8%0DЛ<7dnFU@c\QxTڂXh/.fOk+7XzGVmU^oD*{(s0EOwy~N?7m"Mj( 4;o8gy#I"z~atE3ه.{@3*c}.f] br3 ȬL_OMqH|,:7*t%O lQqNf!o22̺O[g|5Y'0CevՓh%z^c^Qz1Vlxoj6Kb.k R᫐g Ay8MVUbRTw%`J%rGM E㨎r m&(||Bz=lLК ﰶxH}茧'0ik G' 3k Ε)VQ⛢t&WY5AW²H; Ϫ#m홏|0i错r_;IV9V ZJ|vM=l^ťIn%)NYȥ3A]nQGnJQ["9Ů2.cw5p(H8)Z`苜$o\1iӁg4!|X?gpXe.Za1[\Ȋ$^ZX5{ou *Bq4ַ͝WEmvE#q7m,̣OlNW gjJe`\NO7w*dvYT{ςn{RuL8h@5Xc(N\=[Up܋ʒwfg83?#1vEmC?~0$0{C4K緕$,7JɇEːN_33xWqENL&>8)ި=B)sAH尝笋=.m\"zz}q3TF~3kK(%6dxmNT5BZ?W~ms=?֔EQz1W*o JJ(y3=y2y40:Pؕ$6l|K&l+KFhֱ{w{r"DSN #9/R"nwHlbk |]6:q,K+V竇%fGzqm1bZ6=(/)uP?t-CǪ`Ϧ/+˲8BAX?#P\\"}֠ {Lt 0S-gdg- Wq 3G*kX[C\7h)n~hNNIRo;QXv*o@KjtPGjAIavNߪVԿ98I C&$My= OI9iC% KUl.):#V uP(00168ZD9zFA"2@9 pP4="*}U 2 #n ;hsLj^FaulP 7' u\W^;'ݦ9GSm,[Ψ6p)5Vܫ[^y9.drnӕP9F>>d Zx\4eYi)%F~% ?DGLL(J^c;Cp]eK.! ~a;pbȣ8{%n%Xq9rB .Vێ2##egKRfm<]}!|}ݞsV%ĽYoA֔av򻚢zNu3|S 0=(G`!^QIUBӟRHGNm GH?]6TY;bH%H#ȚSe']Q~Lu:J P"la<+iv/5[uD=T5;Px3_r"RbI-D>>8ԯMAK zC3axP|q5đ7G=@)pHUQ ~xQnF\M X|2p{C\s;tcUBfgpkփRk󨖧 kPrXtG;C)7ojoAwu{܇ Ȇyb.%k'_uˡ fMwSA-j:KJ;VFYzT'<܎QnhL\E1KboA/At[SLzrOS# aLxɮa4J'/YGb- !ˏjܱY٦[ qd,Թ]Bmc,2in^ŏA@j޻}ȖV~ШpVk(P?svBe18wfI.Ƥe쿧ٌ~.WSx 6 e?RC4U`}Mi@bԁlmX#F[d'N)tyr nx:00m|&V#|jjV#nq~8,L3{x\HB:c,aO$[x[wKaXxս,G9.IsLX3^ Ve9h韇Tw>}L3~=$u~(ܸHr|3.b}C5z[2]V_* ׆=HcL^w&B8uhUٺf RC;=!5:Wsy©\H34 ]hG@"Osn׿mKיj tƭB7ҷ@`S7~fNaX;.Skczc p?rA~l~D y_zRN1W[oRP&'u騛:BmE49n=q^O(UZH7V 1pqY_R ^5){V9 }a N#̗f!⟓HdR)(JE.M'a杝v|ަP@z'')ゑQ23[מrF5yn~ 2z~r{5/\xYs}uôwg=^,ɟug}umQ#d|gm=ф)mSnPPw߆-ŌFeYh;H*w7%@ aK o B0O"PaXn+v`y+#~R/D0w@&Բ nǻ/h&c5B6̑3MD=&sh!wq,dx?nG†ط5Oz˾?!{XҔ"4޳/ WX|+'34-Jt>kYEɢa8BkS?8濇hK*ӐhiA?+9G+Xmsœ&8xPx/kZ:ʂ>*d!FO8`~ƥ WޢXMhpҾHV\lbڝJ4#}".Ig9~_F@mVbcg!RsU+8DkVu|2s/L7W2؃(kO*lmxe#\-& OaS5s$}&n4dv 7"# #Td]@y^nD@ԑ/Ƭ8~<ΌSiT_ӕ0U"t N8C6! m4ӧI Li49a:o 9ԛYs|KbQ~9be@n LۤiDn[5uP#3b^uUTGw8v~N}!8Ā7c3Ȱ"/Fgdm]# ?z$]W\: 6"@i_֝y31W $-J*.z|8oE{5`8gg328<萙i9ۦon+Ӑn<R?~5AjQ\-[fĥ$uT=r7Cf!ZUA٩GTd.*o\ą=TršL0O<*Ԉ ]혹)6y".R=I봊[GLzBLU0s zWɔRؓ~^8\3[=ʂm\sڧT&*4o&)ceDԢ?iy#r\ V WCiH*ui辻DG sLWXi?gd6I/SC@,/f>pjݱ,kIx0Cmsn^:v0Z6^:^4xZ` '{Wh\Z0ڣ6R͹w_ _rɟbsCg~F:Ũ{({ؚ4'<[JbA]> > z GgY#R$ta#[OJm2*k(r %? nqgYYË'=ȳ̼Ku4ִN+nc #o 2m+}'/wMGeB);{[qj)f(,/-Fu0SS+j;r/u}pp\vQPƇ(a]x$HCM:bVw[m(Fiq 7kdgD~}fK|V-gA(o50N_ D'aPi uiFhA)/_y U#jdȬboP(z.%JBM !,{D;n1&jy<^E )JǙ:VOYr;7\VIrO!%XH uǮcsePdmR{{7h+ "L5XR^1=#˞7KOW:@Eħ?_+K{'`r'x#: JV3%<(t 8=*~UHp۝ڀdtfwxx6L\?mz.J(xtB*;DJC~O[M)TNWP hx\76ֺMu2.'l0A]ؠuThGNƴvZ{Q7^hV Wa5~Wzhw`O,iV8y•/:fxrS^Rs'_|ѯm4P`<^#u0x1@mN1b>WPVFDӻR9[:I"0 t իoKdc۲d~a+bOvzՙV7s gDKwl@9$f.\Ǫɝ p_"<}r=VDe}s8ƓqWS:, KJl*m(r$ҁf[eIS9GZ0[ϕ/.9v=Azo:S.du?`|@"!12[%o4"QW&>5Z dٔuU0y_Hz"@8!|-ƒRZ rcf Rf YvVІ dOU۵PzZJg\TMZ@?ŞF)_FtҨUSss(d4l<;F\ nLo?iY%ZXshReg"~f4u*P)o.ΕwXJB1nFٺ@qԙh^oГr9c.ɰ:SW UϟLt= >8.=L|FO}F`SDM`KxurE~ͷ \G*qYC Rԙ1I,tOۢ"QԆ hZՂ\/q\/3.o/ AanP+;75{H;* .xG"T)PE:r  f!''v,nS'TKf+8RˬeKZ˲OXGo`hܒ> 뢗 d 6kE o"ld.sqb%qh 3 qZ?0"Dx(M@r|\]A $xút)}N6éHAl#k4Zj=kCuzd#] O͐:MC?6ZE qY^m0{ׯ^wztc/HDtVg;F(7^±+efr1?.%uL#..9$_ q׃޳( mT:j]ΰްyB & IcSL`=Ax:G!k~ye68o;%qGљ([I\7#kXޓVm 8~(FiOՅ˜ zXU]/ϗ+kP?NteXi«C9>!ĉtv:=ю{JUjYZ BLw}3zJ .Ws|#eICK$õZ V@aM*n]fhmdlNelLؿXC| ]vJ"Cb8jcE&2 )wrk\&-=-e *`qB2qFCIe@U1XOX`U 70od}5eFFYNDNLIM9o3 5 \w"PC̱̏@ҩ?+uHjknXTv;_JŝE-&s5(dZ)eP}G; mw<, /ǽ$ ~ʴw6jjHmQ0݇g`) 1sCA./O`MKR7vAe\XԪ{ShZf鶓0\4k@A 4O/7 O$`?t nъU(69R]"g>&I}#6TxfL~Jxa8`h/ĄSmTtB~hH/{NTޅ)W;Ihqi!Y2LE8lТkb4wYWGx]*:Q!L(zWXc $bU1&$H]rsLR3ʘ#6+U_{paBl4ˈձi^WO=EE'jA=eB 4EH΍0vk~)/{Ob6ԸD}3ɒ]ܴZt7[1Y;:zE#jBϸ$4@ 4?C@7 g:)(JMin0H&b뻃z%! %iUXx( ?] ўrqP8,} >G6t" <13TsZV>]l]Oօ\]?^0(Dޝ*~MW -Q+`hzj[gDCIkjĔגx/|dRՀ@0+jN OF2A_Ő%?C&o_y -@|uїRT?,ZˁBdڼ~ HQ K"= 'lg;Y$]hpX%cAW-b(!Ģę"HK߹x_R'bV *. ?kuNa^}6[!A3LuOFv6MBB' ~#:%]/s~Ƅz}co X7Ac|ϻ.!0g:$d{ #&t)1^_!w³{eP%Qqc/%'G),",+($&P'( etsׇt Y{1Դf#mxU8/vT?;sj֒<,LpjX=N&0edʧx, S`مb>F{CyC*I#iء{ ],3PwNwK-nYs4v,k\NVu~Vu1\[%>v6>q lY.J(sҢe[7/;36 ?p\5Vj 5ŏJf5F<1\"E P r}8WȄ:qghIX2< {xV/:x_e$ဤrn, +BA/\a]*P< 6T>l{G QZ@L 2\o)d$Wxb@WACJJ@Km^}: Q4d Atz}>VԪB?C(Q3/ݻqHN ~Zd8̊@%sΔ+Dn<Q^CSBgo U _ H]jR+df/a֎&'fݘi~0W O9hāp(|a.gTW/inLewj$^4@~80V`a 'VP|/P_kً-%n˼G47CШ4 F3_9JSr̬[<)W X?h,}0Fd19,fYC"ܰ.`5s}!0~ZOYͅGYeEqTDŽm?q+koGrnX>P;J{/zpM"NԼRb ^بʂԈFϜ9w+'!Sd-A*\VXO;d}&WM۝RG8Xu0!X3(5Dy򵀔tOr 2[gJ=TB2'xBT(d[F0uv7 bzrZ+4_tۘE4f"%E 2'#x{DCTsȌ~ȁY8RSJHdsg*a5`ԕ%:BiOʦqϴ)V1;VR[ vuPYf>™?p7dWB5o ?q\6Qih`3Eymw?g j%rOgC,ˍi$$rDiV1LBl~Q,kKv >hLUTHG 7m !˜v}[T:wfkqA㉐(;1`K'5rUaz m*͘Ѫ\o5OmQb$ 'e_Ej)!@}"L֐" <Ճ,uq{xKņ`wX v{vTWx#Hbxx& NN, 誾-9:`7Q+r|f|Y3C!?xq2?ԹM[Lm_`2[N$0;GT(fSX'e XR בw}EXbU!>+:+4wؔqm y`.bZRXϿmmڀL<C@#ݥmBBNJK,`g} ~IS_IxGu&nJcO zUJ%Y hejD4+Bb*IMlߛH eمl&sib񰸤 `tkP}ɊsdrC g!rk9t3rȮ^\t1D؝.E߶#ʷEB 8s' 2[~"Ý<؋ kѢ|1?n֛#4wZDCHg5B1RdǢ@UH<{2͏(0->B[xL.ǑK`HBsxe@U\ k6h'W)Sk5HjUG5$ AFHnȸqfU`' Ҡb.$luu8" z&bP7G5Ȯ߬LQS4kHxxhn<$܇MoXtWl`.5~:)W#ӻšYw ,]ܮɌsJj[4He٨3> e ! ӄBZ}~jg҂EN+{sߋ8jD~oM ړv2ӜʯMo-{)#k}54rkR hZSGfea^|}$ #Tg;iw|Owk.wO2–L=BSow%5f`찟dU;P]@q,HsF< $O $ضTVRkPmnru8b)EK2 ];x5ioj+]h{392onio̰aa%BY\\+toI>uQoPi}A<3yhD@,s*oAOv*4|q$06y]Zt%z0t 6P%=Y?a9 j-"k}H&}‡8.`+ xVbuA2H4Q]X$a>Ff*}ÃZSY}F챆YԲhfmىwsق(C˪^BǒO4GX%*',2IۻFEKyy!] 3&ԝzx,^/`/٨)ѻ8nzwi4U:H3}6 W6_ {DNK3BϮ]GX| KV4fpVՉ S~+(gE iMŮ wLmF+/J̓($̃todf=nkX=Զ!5@ʄ )GngUхUNlV$bR)`;WCC#DYe{CFEpJ. y/_"08{b3qNIx ͥ=@#AVLn 9 >w~']lYXak.l="k{|.,\'YDs(ڭqp T&)NhE4V}d}ea .Q8&)&s|YK=\1 *Wha>Z=y>&WF"*޴B®Ù ^` 4b;_skd~/"cQV ;r {5 >&"9+fX /c%gUB0Fc8#Ԡǘ ٲ>z n~&'ۻ(x9H@IBzB9@w?e 3 ->CVjxpcZ`} ~{Z-| sm@5,·'%#(ѽdw4$$nZ Ü>3>;~"^Eam.RvR]A-=zy2|a^٤vi.e.WoH7ý6;57^VZ-+/t5ҧc^?osi_heRu$<ĕb N釪^k`nȆdzIH%fmד߰C_qg :u\]|C# *3rf E!' hk . Yl˱ĪBNؒ>Mi?CYV_N/gI;ANsA ҦI%-^)w5n\'~hDxO_>uvL5"%!Ia)t/C=ƫJےa˶ U~2;ĥ]=b-YI#:ijXÈ_!QȂ(7aul'04ؑ,{ږA5xtQS3!09ߵ3<Ռ8Ga<&!O,p3Az?Rܺn]L˯d⒃Tc"$ I/v匪9ҸBO&Rj'O 2G\ގbm1idžxv8Ly gZN2NZt 6.88Υ F;n"'T!\ #[p Gln68b<+vMfwA~%@%>V0~ EG /<>i88q~Lu]&Dލ@O&a.o7>$,xݚ< Y:JGvL^D*hh0;x3(-^sJ#b?`Mkm#'zt6Xvz˫*;[!&>t+.6E2n!bn9-|ܮ;'-4?q,|=>+º RS09g~U > .+kh1A;ȍ< g^P  )9Nn\ʓXK!j .cY_3MX(XZw?,pźqI:σl^EL!PںCf fh}L|xy+F-/ƪX\$5Xd熭釯yԹX..mV SvPF܊w"/'17xϕC–v|Ј1hyøRF ?{i#,%1%È~g+'_렩Zx~N"l0_^6`,Ur*۪bRHH @!#:LhhDH^^*|} B&d,FC+ l$?34 MD<®W_cz.NГô7s<`Dz9q]SЮyUUשՍ $tHFODˏ|C-J$J%K+h֣4#$v'㽛U4=^S3sM52ݕ>h(>8ȤlRs:OŌ5*!!~")3=߈m0)&Jׅx޸ȁmzݐ%FC8q_byPGuȝ2~05}Zbζ{,ɬZIV1@hYdF$XtF(PK:b=?쳛M{ R\mR-kHQNR Tf&M(v\X@$Zj{wf˝7ʩݨWfͲbvate=\3r$"g7|װ#I5'c05<^^ᖎWy)>l'+Nyab,"T`]}*ق*<ض#='T'kg+0S !ХmٿOiಡ$. 3ĆFe7dfW] X<:s)ƂrS +U{8I+5VnqcvnIg`{)W=쫐QBs j /Dg"aݵWx Ap?g]\OxwKuܣh1&zN(AiXFIFdBڥmZ7OP6"E8[5gSF A1Xq9IC{.2N?`Y Ԡ\$pAx풜MMgOz +8q/C=J NXpQ B (CouYP_Ǻٴ>0ҙĚ x mEʅ_''#`nAn_j oi `fWr RV9p'BazbtM] @CIH e㪔\9jgj[.DZCD|6ў`jG_BWIq̃Jڽjݣ8×߁TfWv1!}]p8Q+}%퓑psWt I4sJ#OsLD!K hD?l(Vp;+f:U06Id)s4`=6-Y(6܃uà!;+M ,UBu*"w)EF4crL- ">Թ`*_K_B. .71q}w^YJO2_I'ݔ~R8<2*{+@+1&K G|%d\pBV㈺%z]~dG@UNQ^ P9z,̌X8I3LА ^JCB ^~W] @#:[>H_mԒɘG3kbI 1b2N;eho:o5}[fhJ8 S`oбR]lAc YhE@W8o:'?Ġƭ=1%}SYqLQr;^`0itV1 H,xkJ}$ .=GkȷI;8Bz6&Fos tz/e`7(bSsˮZ,6 {,3"DvX$yIg:GLkЫܹ$!f0_rUoQ]Iۏ9 l؀SUNF SQ`o@VeĀ!wf ~&jHƠKٶË47|T}r͑%[J1ۼy:CKuy&Zi*KqAQPŨ#9s@ZhU]2ρRb8jmd!?78r=[z[r@&).{ oѳC7d>c/z=B֚\`[D`t;:P~ 2J_Jg=[H v d$wth߹63tm ",DGN|`j2mf:lT5ERSHcmcnT:O_EfLَfH؁ Z$m˂>u8mY^{x]Ql0;̩| 7ϕ0ސ+!sQa93!mN0E۶ېЂsYσ^  ( V\Upˮ57tRMIzcwЖVx@ֳ7UtIFj%q46IA?Aˤ/SxpO* /ȱ ʔQ-ZD gÚ|RY. Yds&,eVw?Srm @xs9m*(VCj> m+p-ɦ.reG >*^ V4I,єcdĨJM)9+4@]l&G2B)ߥչ,k1dՓN8Kj?0Ub Ξp3R .=G\0p=/&K`;Sg=̒2eh5?"l2By.hȶ>$?75kqWU<['z;,50Q7)B/w|/LFNvFy<@bLT~K S"\6P@ 0KB,3A^/~AU*e[ަQ! NY X (;jyp1i|L,{&3IPjTӢ ;k٪VU[#/U&b #zkmJrɷ-pסЬHX gqiА%2ʷ To_g-ݽqlZoA4?LVNζdaۓmnVkA/d+W=h sˤt{YW՟'֋COeoo (uig.c?vl·Vx.9S'&og Lc xU- h:.B;4vC:9x`Rf dZtS:?o.J7uWo8s^U:bCA@"J ơ=fKӴ:u>냪 h?П}pe(daUs\vQ=NtS M`<S=?Cgƺ_5=얬yL2GY: \0ÏF:h,dH ~5 $JnvTs']e2(ک׳D ub_D%H*? 䒰)2JUuGO<@kf*Y7f`c*IG @u\\G1򣞫p_ʷekO7໫\*awph reQ֦5fDA*!l.m~VU3@+`UG! {:² -S5%=Q0XX}BPX`jit+#Uw! >ƺ- 4l$/C'[v.H,`"N=pd `QᨹaV ՌsR#Zh)!%x}7@la Kq>JgEEP[H%1f&H[@W ѧ=J]--uD>5Q=uy[?c,-BnN>mN{܎aȧm\Y3**ŴWe~E+smUw/??sn*sT _  >9fF%Ռvkk6o[ 1Rjucx?N75xBȇK=W&: ۻu շm>׼~Ԭv~-uT.dчӅb֎c<XL7x\wDUS,. /$#/4g "*a+ G 6Iyg~@oaHZQ(H kO A zEj'I{ɹkq+"yk3:kd sFEL^83'_ 5Y{J3{&u&5pc:hFq/ |*X[kk:Y7"M=LԽ( YX+PJAlRhs4ʗ)^l% 4d%[ lW0bmk*B "^\Sq5r4]}N7c%$WQ *5΋J״!8*!X4zUܡD0T|Qs:nb`ԔG eñZÔ2i,0Jѹ@x 3~yeO)]UD\K1/ZgH4D-Xe7rZ!sժWPca֟rdql^FMzb#S?d%inw '=dUQW(*Ss )(&>Qce9%~^.&G|ɱ> v/ NOeH)E<ހTr1MAj I-xԁ|j/ʘ{jLoW׉bQn~פPS/c\J >"b;tt Rݝ*IG fLCѧCu.Ku헢j0 4#@XjJF Exҿ2ۈ#p8u3`AeӞq/NK򱥞M0Gxv#jYوgݞ3znQPI0\da[Lc[1nZ,+CM>+N2HSgiSt#zxΨ,­>>5X)/C+h$?[3V=[MG~  Y^jxղq͹!#O u*Cj2wq1Zµ7OU]–p:C_`6IT$׽ aj{ _^A[ p$e3Z@d9\+9SuYk 8iB%1̐.Zjӯ C'GcNw$E"ǫС5&95&a 5. c~tiT >͘KsX,ZqWټHxośe/X]mǑKћۆpy'S_X,rtl~]5yaI*{6V3Pm2MvoCf902}4ΣJQf`QHcf4 K{(WoYRڛ ;gN*;譎%-!|cPu^݅Qp5ƄW4$Ǚo*Í1zl0^/aY7B7$o>۳I=(%0 U2!3h=H'9B1,_z5)=AP᱙ jTrd1|& qn]y"(ȢASJH2a )P6f#ގN*IKC!^C-x3#G_jcaC]LKc]Rv! @BƁ 6 = j_neuǘP3v:{ gv6.( KD.\Q (#մ-8{H7cXtYx)ꇛo 8:]7~(iѪSG%Yz$kS,H)}rhkΣQT'-:v^(d|r+p6@wL HοeÀ| *ۍE{Q[^5fv̕s m ˣ Or ѡ4ss|E ?dHE]s4m :`oz~ds;m}.YQ*h} ܃\_{e"OHckG LNPV14Y.[iZv]2 XU?nkLf uX Z"MzB7<>5-I{sٻʮnvSߛN̵HB1' AoqyJՓU=\aPY16 #P$Aq['vf-5 d]^$7!ll(% -û`&jER#F'pnu3ϊjM d GeCSҾO0/ػ|{]Q,>1J|sm+¡+e Pў+ZdIk°}k*0Ji엋ۍg>Q&ܵ S v30|xBTy _uj>sr_tg~.ɴl,@JS-ѹsl?MfOvmc<{6U2G_/9kz+R9>qBjSTa ^ )ĤOvxd4?RE R 9unlщ.&.lI )G ,b$ I A#JO}jYeG LNvNgi.nDvuJH%1eIYXSkݦXe}YQDR@~c,#cǷ2k3HF.c_mMwT;_//Ä!"2Q}3 h~h$-l7`5ʽ4;iH@8u*D}_Ev#5|4s6 (RnǤ)3y+|>!y]dX"!4#%!lœHnn} PMY[V6G#m@OW7"x1Eޝ^wDHnFH7 X:bWYveLʻI/\EK &h*#-K.VjEܨH4$݇FASܵڊf?9GJ*N <κ!oNJc4tޚTt$"n#C@_pK@,x"\6E+$̦}noEwJ{F ƶIt DNkM(#Wo a[WF(n,%5*+sD% DP[2uNE qyWs-Y8\/#׸y>[;oj68pEU,Ϣu6CV@]!bWaԥTZrhQ&Kušc7s0Tڽ O=r[wfXe~fUh&SKQ9F񗯡,*y,,7XR28q_0rFA+zǩ'Ϡ\ &t̋J)-!HCh8YQa *:S%#B:"K@(KM2Oc?0Q >l.^/lFu kG]Y#,ʩ,T]V7:b <T8i$BM(-ö?D*F=x=Ӂzy4T?a}海; =|0ABelvcx?M-3.c7q@f$n0X9 xOU=5x-_4&”GHM#_f:Frq}DaHųFy'ë|mv ʹ,- 3A?HfJA\](rj-w(h$PK X|lZj (c|U\#=]yGkL{HgO^ywJ|JуA~kOr`Ep{qSa2z#97"LpV{QÏvr4<5үurC^mNUDfN,nMP`DD˵xۆ"]CǮDj.1B hǣ%{BD'c*nt0LkWdGnZN>J< RUWhy# $yh2B\(oFkȲ˅s4Xj۪2rE±P5vn><(tLeTjxN㈅ylyܑB EDZFCE~9iNq `:qky̤TUWfpjT/g3gOu5s(ѫfQV >6ngx)\Vib1LN/X"nN*E N[!"Bk_FV54/]Y_Le:D#)X^O$y׺ۊ?ɧ9=D-dB45az&?)xE]ӥ}IN#wUza:ymzSgp`U-y1 QHgTZf^]Ǭ:45)>6*#~ؿdSq+m{%֜D{fjW#N^Up~Spri"VCۊܕzrUҨ- BW}vb̄:>vw;8k!E4۝o7 AmW\! KX`^4t*]>n].R+ڎwf3tMDБ1=1~w6_oT my\Zs:cie%CL,^#^Fڲ7#0h[1/D#4gZ:0.\\X2+=rGNjhF6"5\:I#Lmf1Yc\8o{(7=ߣůY \e;!| kMc 5x#~0kʆ _0g߽d1Ϧr) xx{ _2]oi$*Crkcئ#"te!o e&Ӆb÷y}JI[!+@q藚Srq~MiiWPv|[SӢ5Р5U]wZY:"ކt,{ G-4> |E\wN f޼_B,ƕʠG~q:WEk]cv˳0wa?$20ӴCc7C~g+^TLql"^g[d#Ūw9.#I#)hP9 ~9aKB3Cu`@n1=U dUy_kMi)׽jek[]` 072e \u&/Z 8d]e:0PR&]gbjzo7n N|G1ݠX2!_?qK#q323튏sC=fdeT󰁒]!غ[-29q K'g vPG\k/?CS# n QyEv ve V$w1\b=Az U^hUo !KNZDN9"a ~^?<'Pۜi=HI~{]5IswR_Ǩ`WDj|["̆]!rZ ԇ;=1id拇k(D1oB!h̀# _n1(_t@ة^H9)00pg[$8`3rNJF@2de-Zh\6(#9r;Ӿ;(-3fYfĘӑX嗟XS3LL_6y;؝M|"||p!L[$+ϐIXTvknxhI=K*G(ɫq>;Pv`/VYJKkA=X2NlECܤ/r`+t":qPз+5 )dju(Oo,\`Y4ӥmP?@8U[vZb.1)JњuROyx$y|{^APZ6D( Կ畃X JbIYϨ/(tj9r-ݏ%VXh(iǴl:g^X/p5LہpDnBp*dFCc r-)`/bAAm%ܒF%\o"42 2^Qv?( %mC ̑XA/iIA>5 .D\H!أXF}y_,t&˳+imLHLOb|rgEБ@OҶ:f$?y-|NQ5­R> vDy?]< j~RD2'TA<+^#frIѯa^._զ;w{2䜿/[fVeºNM=ksi󃞯ƺ`}QN4&!/"BoŽ`.|B3ᅲ:*,Y%2zWDm,[Ha1F3gR8,: iѕ_Rͼ!F.+&TQw ORhJ6L9=}lv’ˎO2 . .KkLF_N_bюtԈ>a5KfVom3!ICG1ђȸ8[7T'K$TC=>%$ X/4P1H( VF]_s-`e0BA/Q'Sr}YRHdȳ o%~*l+E1V֑i:¦~oQRcQEEƹxܩ^Lg,_ ?|6MW͜4ِ& M"f)H`类[v^@H+5,5PFkgDpMtĔ *ED읧r-D=0CrGRW'(#}y6g}VNbf\=qvèUR6%7yG kĶ!j 㗢NNSˡ!y>6L.] ,v]TDMT2q:1"aSp$ :\UaIf0RR'Q5:2˭} P 4CvZgO 8LTXX(pL8=ug^ f{3Q,Hy[LnNAء_yq5#KEٌ%Tw.]o=qO</c#mh(huҴ!9x]'auhyoX!\㨈q̘_LD6܆s>0~˲{D{F[<elh(z7-{WqcIKPhS>7Jrp1T_{X735>Bi\ݤwTmdZFo: _) PjٳϨJʒP\zn1J%U t;zvۻ?kz"9R֝=ףйOvUn_%ۦdc͒I!qQOu'\oѠpTk':!hE6>PMWw5;c1l9Qr̛e/:kYpDns~f`/ӛ;Gs5sͥbg o292LP41S9A1їq%} oѣqBb. ox-3C[V16$ҼFW_ ٷ*;.J""anRM)Bk1aY J|8ڜ˰aQNJ}B|`yP L/R00 yh#-u(jD0^i#A + ڐn4 }hm*:-N[/NA{J;QJghMW8IM0`5mQ!ǢArEH.&jdh d{ gfTzeCOwիf¡ug{/d/LBrؤJ0E#u8I3aV?:菹"u6憍h0ޚwYp*v̈$btZX@,Wu0k.~j+@wRϺ6hzN寮 CGG;5="(ɂ)iyO`"KKw>|~[0EcȌy¶(PA#lk"ySHN.Toknâ&E1Gj&z&De$ӎ9~m+@#, "k=oVg/ B@xE֬*N2J0pLBC#H{a! b'-ËX '"S- ζډhmJB#{σR7V[Y5͘l:_|c~Q{_ pC 'oy$G0:L#rgQ&$ΨlAzKP2Ȱ)w~T$~V31isYEO%"ܐQJmޥ g/MZd a=ln;J %T`Af[hiR/wW< FVZebX4nɩB_~@,u6֌qso1C]lr{Zf p [sቯb4V9ͻK(3`)Ssrr-R-S$ 2.g7>MUPnjeڳQC,M DI"#G{VX&uK݆/CjH,vu7{WYxl纄WGؼ#]wPtffc{JbF^DAM!C-V(H|\02r _PmE? ΅I ZW[u.Kk!~-|y1s[PJ3lY\q-buXDQU.3`qݕqj.;˄stQ^d}ub`Fk:7 M!¦ڞ"@Cq.6^~H-eKs`L|{U\;H}] :ho3(T|*Gv')I¬Ǣ>Et֕.s&:N-}DSSQ@\^2 e$9Rk9_v:?ЦN77*5PT1ɲp/Z$POG24\:g|VQ7$y n'"&ȕ]f~AOCcbq&brJ C *Y"~^bŎQ0D7~oXOcnYЋ┆7^yk)DLvG߰boQ썗$;Ea,-j%{Qur^|'G^˥zxi{pc#,uG'CKZG]y}fI&eAy޵RBcNTTq_2!qf/ y8·sKr汑QT(09w^W=UؤS+SA I E^4?v2MA;]=Wڏ֘(%f[!2cTF!=CoЍNc=兹閗:D~YԚq_[Yv25d Cy!?wZ7٭ɢ[rHI16ctxψ9nBp6ǽ‍x1|lXoHS:#V}+- %}!噬|PGjy1E̜&xb>紺7M}3&AHqBʡed=81\]s-ϫ"Ȯl!y) B*/ܞg&uX5EeiF0$iTa>tOȎO,Gt 5`+$2|dVsV!e@+8#G+Mܭn*+!?Je&Q}bSԹtzdQ$ oT2XV 3 @r5aRRFmUt,0qmhf̢3}ֻyU$3Ȟ+{bfo 3aOU!QT l:9:jݬOI—CJɩC45%?Іj Xv?WPTאoK]o'<0jk/= ~* L?ᤦ 100'Sˣdc޲uNۑKdo0iH GEbl voqeM-hcvVGW?U~R#q&V-v\iX+d0L B4B S8pQ7P pFaÚC"K]rkNvEc*ģ kOBhMp\)0.ML|,2;a>%qbI ;u3,:H|ZJЊ gנuCC1zƐ0P5+ [`SLc&) 9S!MP1r#sa:G `acL萕`izAI]K &Ӑ0OP"KKD1Q_=Im e]~u=6DHۇ2S1bm:"vz)78-EBbN0|O"EFqHw,Wa܏+熻GyFrϜpaUܴʹ쐎lT3jybh?mI.#]guov[/)wM_5AԋMB r6k>x\?)T˅Q壥zu8_L2E^ڬN@vpżPxlCJRNq_(iflA* 8eY*y&`LfGRa `$X{6鋤RE:;t?R5uXE2Z7|>xܷ/ j8%WAGv};Ei*Xݣ' (7u/;oɬ[.q)`&mWO`m@;ۑ$IBEY:*-&e.ß|qDQ٬6M?O#`};QK1̘W "#e)pgE hZ(H`6JE f&|U& %ۇLM2MWPB󀉆j4䵟H#x{u =b:~îoY@T͗r$ FJFUq:O&V,,n ]WS'DDWLjXe(hɅ҅cj+s; -#7i]CtQU\xTI}nM?)ZC9yUfR0ٷt~63u( zs3a !9J6=q/tJbQTJK(8[^pജuN|I-!Fx^y-=rűGȠb_:n|*3Պ![ hC,J߽aJRsz䓄ĆUolȥ )'z(nOtc!|tIEI.2%[v?mLJ >oq,y%pJ C딙Q  %`;]+roWgwZ!1e8 RտֱK4\JJz-^j!ijL/qfp'+_$Iʋh6gvd.nb]/Px~E﹧bM.r>фj8nk fdX){},kn7hK]e|&^Gw/DAX/-Y'^}o=>ls|ގm: $`L\#l c1 ىowPN.2D,~w4ZvZĚ' MQL橞oLUD :RDwU]^pC-,0D}sYB29 |cЬ/o|*TɅ]=79ʭB?4Io(Raf;ݍSlpNB<^^qpFyo _ . &\96 j̺1i$Ŕ˚/js& Vxи664i,F$AP`({^b=ٝ+ujDJ#dF~*<-$9#C_dO\]rMc(JL $P1}cHYp6+AM|h*]!au/w2%[OӋ$((ҷhބ! (ԛ%7!xI9-(FS/XJ cĞiYPO؍n'iVTs_n2,]85˹L;ęb']3oUbߔ%76x@' ]l`K*!W$dwYr<7\^mݬӭ/1,ovZ> yom]TT霩}!m9{R>U(tE耬ldӤ]ޝYm74*n*W?=^St+AqY \{oycAX\D!&/co$hE05ѵ)?n`L E 0Sk ؊sjCវڶ74ik3:f߸o^͵A$Т4WfUp|Mac5[Ȃ?0 CNޒIbΊm,mζypwl w_f}0f\a=u[8>9j|P ,̚fnh\'މr(ݒ` b0yQ@ P۩^{~]c,`XWy J^ipU`fg?n'eU>SkGϕ& Jzb}~ {SJᏥv Aݼtu l-"+to4ze^]Ugb.i9xzUp1N/L9V@>vGns * 5Bqu׍17d/-HTf=uR"VVz(=bhрpЏ3c6Gs0I69~W'[]K\KҔd]G8f"~HG&'u?7:W~r3x6J@et|z1FΨܧFu_}kȴlB˲IGpQG o)4ay9dnL*&<:!q#b# 5j!fsPG* 3KFIqV͆DD8lQ,3NHGˣp 7/!UpZ&y^OVQT Ixrڥ^U2mVAsXcxBwO*gJ4G 1ufʊx?.M%JA5p`d_~WllabZEoſ@w,V]R O7鳭\`bPK nVmoa!c m;ۧZ VXcÁuB NA}=Q,#31|`y mg dE{ǫ9=u1^ldsU,,k3oެYR;b[Uol| eфåO>m=RP *mn?f[|*?T#.Y^*oWy%o4#DA#ܘ\V݋J@?84E!H^ 1ꦵasױ%hZW"} ٥iD 3ECYZwT!%J4!WU"^xEq' T ?5c=-fE8`JmqEilAqt7f##k6'Eh UH tjQE[l YYC\;0RӨX6Oyd#tUac.x6Z" m|Ww>(TOt5.3v''GMaJ( J`dYT&&!ePy pmaP'of2.hw!!{?ȗ`K_J)Š)őc=˸χi}eI?:tif0JzZAW272 X0qenEOi苲ǰ5@#vBH+qLʫYsk)'O/ߟżtNl^ZNdalG?'xη&CۻGBOេEav8"/Ґ[s\uæk}#Kc6sT ! vqD @tJ$&ɺ1j Sy]v!BW4!d°T>r ko7Z7'''I9K ɂ)NJ%z ZE(`lP_{ Ϊs@ ZN5ypǦZb&M/ZO7"Itj.4!Y/H3F h[CR*3hL_hRBSjiKwN([Q! `㿊M *=Xt} \i|pe[ǽ!YR"*EbGW,nnSs'rh!XaH)k" R-V3hRx馞D](L |Obu{95y{foI Ն]u7ԘWR閬Ǵ'Z'U*g`qO#ѻoJ"8Z|H\0_u"K?2>yGׯLaU >WIN lԪtr{|qRXTunu:5%:sK&3HKhO&W+"8ɷtFPRϲuyRJYnv\Qo]$֟Ie_pGN|'ŰƗiꞎII^Qc CM+n7yj9pN:$;)ytesPnm>$5ly:#UnKХ V)P$P+qE{ݑH=$uF TbQP#o͂fMvA^b6ΌfsHۡĕ=( wwoh2@ !Xήt-,6 l-Sq!ϐ=Pܻ|/_Dž2w5ZH? ҁJ]kiBS:T@lqMRhc-c9#IZHpNyDj!j9˽O=W$wI,kAr%uOs`(F6rbz|z֤Eex+z~?m+CO=%N"6d;LH'*r_,v2Iy>!z>fS h Nۉ%=}]XJ߈A۬~zݿCou ޔg'y%n~Q°1SQӖ^qWcuG6caL[ u\t"cJ2OTúm8;L4?Zco t0-6\NSO܄n\RƔn;|Vte ňI^EIΩcX3DxWʴk47E?F'cB$°z-yv h _Wbٮ9`z;zgsEG,,nDn7koW{bi{/>5ݏ0S1[GUK?Z'ܜI"qvH'!K-HJi.ߙ0yex!s-<ԁ8э-H@Hwwnޓ쩨`шT0j+Fdoh0D9eg@<:w^ BZO.R37ZڨV{jէG8D7$2yZ }ϼ_-hTvhA j4IPs }0>lgJIP_P*ru yUa?$ wk28Ƭq*y3g`%]Wd`z\m̨2]`M&6F=̯v}~ZqL:ۉYQ\rZv㆑QҠ9pDKy(a 5Q!^hyUsR>]7d^{7eVf?.DNq^> we7 \XD{ޥѲYR_-ΓkZ(,4R_2By=W"Je]^̭(w Å Yu'5Vqu5:D 2?ЈSÞ! b'U>!@rPxH2ypz[*c=w%Y)rYղ4Z02$Ӡ|:1`cTKDN|Cf>fVU?bĕjku~3zZN #YS ~ާ77fF~kN ߣvRGĢW*h80%+MMʱDnt0+-"!L3J!Tˋ: ΘڥW=UƳCKI!fgzC^1i&zk8|+=M*LqrAK,vT154.8`MG_ٛU.pؤ ϔu9ڔSP'NaU',Ŕ: RWJR0EØa,/g<=-AJmh2dw}1M,XMŚ(꼺t?0xq'6K{KZc4x3 8%q}9-S瑮lŒ<R`U܋eg-R60 [LZ.C,>wRyǭY.IsMJ./`KC ^v%mE9?%#kZ)f37`9T,SH*Ѧw]G%ݛl\@!N4˨˜\>VpS,ra\n0BI mU ydv/'c/KN&(t)jtOөGXxx?f`0L.b_[FjAb;~czvdm(S9Զ"Un(5ReO_bsf"WjJەЖ-sD`I/2 O`/ʥE6t(: =uK׎}ԑvp\a%yz֟*Fd~iBq,~&ʧ^͔qcyBs+ mlV%gM=#b:kPf+qŝy2dor >KX mA}XM oq~ L1׵+5YzɡiH0ivژC.R~+wn !Rڍ?+K~<}ݒrJ4=@{{tF.p~!iA gGyia3hVCmV3OmՀK))h3ג,/8WX@E/ , ,(!MO(GNG F|Z]; C 1Bds*oxCawMj ѱlg3P$4Tyr2 C.0t _޼ y|ׇS%b۩GxlH ٌY<%ZVOcF804يsT|܌T,Ѯbm[ϪPR V%m@k! qKdF)qYL't4'"{ ᔂ_ryLSQxh^Og3ku F\ )4z;ۺ(.Z Gά䲊6M0N-g$%HHEP_hjja0}r >z^iLi2F1J$i͕o,hD06 BM_IO'º` >c}׃=j1ķvIӎ4e0`Yӹ4v/ZLm_YmQh7k sSRlq8L*Ek<t  s#Jdݣƻߥ(YF˪ͨon̨_ƚҥO2Dp= Oи}%Ij_G}+DWڀ]FC\SL^LqdT>X]zΩ{"EAyˊ wID;DbmȻO&":1\|&#F.HNGW2H bZ3Q xhgTϾvqA^{GMm]x 8pfJ+ ._kve Z.}u~:6'j2ًZƮXq)eqS p(gY[*U kBF9w $as€_<ğb]x'Khb4F{j7`iVO gs08oqɟ|zx0љ"E: @T)퇂P%vx|8"0[t*iG` qy[Tj`1`!ybbKu{v 'DV$ٷX/A@ILn۞'/44߷UģG"OZj4/ {H(ۈPZNJ1) ckvigF( :MgG-8\hʽn]|b2+Oz$pdsM<|mD`038l *[;Hýd?|FMz5؃ТY 5h52k ʎܡQ:3A'/c܎,E׮'Ѷ9SCV?#P^O]֐BoPa7}~P$UU/R+R ڞ)iaǞKa1U1!KSCax铗"r_侸|+y7? #aKufR]z&wR-QM0JE҂-"gjC-SRp0dt dQZ?bfTYhȌ{ q-ʿ0~Gp@(Sb:+ F 5CyPU7__(``ކw;g[@l\ye ki4+؅Mg( ؟{~O/M#,ъb [@!Uo)k!,*ﹻmSE"-]Y$,t Ju=?'рT*G-;?dB'Djqn3V__1Ow&p?H81IAbZ9c(zk1ǍəiaR&h$]>eJ⺇wڕkot2] {V(]X^uz)if^r CY90nG]n&|mM xSƾa45VJ_"uL(72?XvN&C+oV,iƗQjY{ɏ%TVǬ q%}aRJ8Zn=d :`Mc" Ј^)'/|Z]SBYj3[FШ AvL@؀OSf4.UGLt3mn-|%)/`"qlH9GmKItbc?N;Y6nj%Q~Gx{.֫ )0#̲ 3 MӲ)uMnߘbhڂr\ KBt!=6U<'m c[ Qx;;( 'v8ؔrp8U/]_IG_ť΂)3>Ï,C(2?%djH2u JI!$Sņa}3:CNx؜]^8CFVdL2ۓ#{N^44R}@t~2j?K z,3\d_Ec)__/%?^ .e0/5JCPDޅc]v 0FaĶvvTE sgPF\Bne(dg¡aeι)WRiws ɅŖ d՜PSEOY̞ǿ2:[d@-(}9QA]`*^,1@0!2xbvp`A G5Ls k kW1mV}w1M8w5!'2 KHዎ-ᦽ_]Gnk˪s]>QgǞ] S8CdwƑ ("UM6;CgpTs_e׭bZDێ+$!6O˫W\UV=qD`Ǻ|'!g-Y󌒗DZ m0Cq~˒ 2Sڹ#Op?T66cҽ*w%43ʲsw~hVΧ?Tq.ke޵򱩝hK >!_2mx%~dC}$郻4į"?<mO }(Vki'/ w88w*?D>&y Gg;Fo̫Bυ7E kW{HyS~D"47nPHRkQ+S=+$\& \v$J] [|7a5pS|N,{f5꽲U ]qXZ˵Nu[f/o>k_?0/j?o#/L, t4#Ժl6]QIM O@ѻ Jс$M'~%΢Z8(Aö;|xҒ+i"MwbcZp_j@bypHuǚQуE(l׃ * bɮqG=&[Bym˓O% P|) j˅,:=](󠹦1,_}@ E,b;>䤇LPLek,8.{[NjKfVGܒ^r8ϕ:cGݤRɉA<&_ƜF&$*.J8N%'n&hʿ(9|db%&3;"yXʝX6j#j$۱KBtj"5"/PJ[eun3hDq?&}EN,y%h~T'8\,r霄k9Q2DRMM=ScsbJEQڤT6%YvErCWu(=JA3s|9m OHovwR|ve "s\kP^+hrm)j׸Cم+gz z(\~u r&cP6vHjտ,|9.n`(*St8>gvz YOpFH .*5cLi}G÷Siv S$.`$ dKĮ$^T).u{΁Jᔍn[F; m;EXA1k( 5LD@8TVQU7{X ŢnCcgBJ9".4[ RZLXzJOj'O!Dh}Ygj݆L{;q[|Zv@Ek i~r0hfp754({6ܸ^4$E|24jG*٠psno-llxsm4_K,oX&!UGX ;/q22m>Kڪݺ=詅٬"*aLDlx1bm?i 2--{l_  g>9Lw py1,@xqUPRu#C>Eâ`5ki҃I܊" Mem{f\ueoˮXsݼ%Zu;#&W=ྥPYP,5* RrHuf^D,6跖j"C(@GPT1 `m>('VbƵJZ.ِVeu &ʠ1re.扂ms.?gN s>#ӛևZ彫6`bsā೟x;xD.+FWCwrT{st)~}].w7ܿ5, Ÿg3凭7zGs 1J̚`Q 4:ӁHX=D a|i]MՂoTVeШcòVE}QwߓVׇݣ5 <]I;K5>&S;jp-PAkVP9ovCu߈rsSvgܠ 6)oXkh0HOW H)hI=1ҠigrK$sa:+7~%\eK8 vp5@*pO&sڄC 籌g)\5]AyW HP 8:]EqXy#5QmKk%i|{*(Hl_6>2. K "iACvɶ^ ifXs1ۢbZ2~fT3 ΋ qm*;?E&*n&j$ yT lۣqS,A *,eGyŷ.g ㌶:[eJurvٱc"eNoGůX$nƄ9QTpmHf]G4a{ytc;0&ulD4Vv(5|ts|݃O1_Z q(aѲղh=#+)Pt&tw>DYYj 1*V9;Fůɇ~@'#IMG2̓\3̬׬M`:pc iiW> 2m1"s=D-X[&:d}C&OpF,c (qT/D( 7 .qXWXH[[𤕞hH10]N]3@BH_jlA>5m{C&^TI>YO݃ E}OB& ~Z^Z Nd/ 9VY, D1Xb#,qMBġu-ltf{ںi{Mª԰piÙv}ɑ˫FL}5-m|9EA @XވЃZ D\仁L6oga{NdSwa @뾕\i-Y\jS'R*O`̻\o`6s͹v[8q:|<`[#cTӳc r>E#Ҹ mI "YCfY>(e߀[9#:1_Fbs ǙM^IbFD]ofc2ܤG3yV0okH1B%+VjɚЩ)9"NqSe/ |0``r?O_>Rء4:ƤSb ߐF5XLfuپ~)*E@B;" ˁo>a!i=UL`$z~=..{@߭zk֐;hVT8TT̮LVۨEnx,ue㱥*~d̈́mE2iF+WRc'Rޙ(+ "̩$)%JX G'WޢDǺNRs z a?<ƪ]J[\DrWXvA $EeFeםW0-F?3]hI6d\cklT+-$I=5VkĘ^ $;W0^mlH6&}HCPC/F8fYu/>CʕzLMƱ5 >G ye?(Vǣ\,&bRɌ6+ǻ8I9h}u2]=KeƖ*[)˫"IE C}.z\z!R9q:vqbhdzxs8SJ$=WD&+C0#Y9ko0s<~'2*+փ:ݹoN]$wnR1€t~- 3 j/0&{oZ6\y0 k=t5.38M pT&W2fpIRo?Ի& FC?`m-EZ|?o/,hBA oD'Ur1 J?ہB>R;j'N[2S G/ԱSA`]Bn>L#n-bAvS40^M Oď}y\9'!~6u 腩uy#a]ʌjQ߹!8+.34-y^:9s{3{ ve+IyF@~n>'dpb'( ~] bjn\߹­s_y8t8ٸ؍ձ8)k^-h FO-#j?c, 업ܢhZT_ 1&~h 7ìpC^&V-9oY[ԄI|RA!#T0z n"N'|0e*7nsO8 rG)&m7yY%w;6ؼ֪K>I}/i/y_Vwz﫽#v&M7o+\lɮțO(5Q֭>2l]ˑ܌0ӸwjXZe?"ZF2h6!SoO]<_L9/r\ʷ1?_\w}gd*tlVr/c* M܌WL%!d%&ZV̈́d=-2RNl3&W F;Ւ`^渟Et%dҏv ȢsUyh F/@^Z5)&i&x"ACb?xt#Q+Կ:ulaNecՉ)9< H{c_|/|91aWL7ag\ 8Uyj8Ww+dB(cRw0k?<.8gd |L_G|mTP,B~ +;<+~B:]*Hs_yĕVẑC%Zӌ,=QZ nsGoa8/GO^q=eCZggDihd YȅՉj=KZ5ɦem%'irt_'֝Gu-I`d&%AH?Y(h]#5[kEr1HltPڎ>}^R Nz0WځFCPt9#T qF݈"~^7t)I"D7R7ٮI,HUA|wT?%S%6x]d9!?m@q[naWGvvΨ2KRMxxg‘tI*I]}ۀ6^F U* Wub9^ g cR79;,Y[cVΠo)c U 3v_hFlN7uBUH>:t\9IrP6B[wKFX15P{61Hbۤ]g>L 28hb:|X7a7)@/DC2J '6BU&nXZٞEȲ@=OX{+f~%ʹ̵mk' FafA ?E=%$ܼ{R~3 qG!jiy؏Cݏ6~DDɠtެg2øMKsNaPnU}"J/Df T~|]4M,Sߋ ! vpzpUXfvG67) y݅=ͦş$E(h4itWRl4<5yUZ߫r.`pNu2coҔ|5er Nȑ~k^յM4s Xz^CL"`%&k*^GJްűOk"ǩIyh۰7N-1>.0V_=bZmTb{g8@hlmBrc.Z!cU`*3O9)Bm2b|];5ٗRaP<<YFNG K%V!8uJzħj{ÊmudW*6PCkv Xs c㉍hi9]Yv5jgĶQFn6ݐ{,݃[-~Ǝ.LTbdt/ pVLdnA7$X`9:$'J7)q69YX*kH5s!\P:ξa |4u0]CW7Qdm2k !5N*! '9L!2^̑هTp]$L} װ' MMͳGI@͌$ÝGxS&A">qQy&;NG===6y-\I z;Š _w#T"CfzbFˏ8?>|3$j^7s]'߼Ѿ9|͕*7Ax Z"I~Bw';Sܾ#rA$iP#b'̅uf0upꨪiGMIyс<ўˎD%uqR ;ufee'Rr1K^u9.HdK2^;؎!MX#xˢ3.Ju@DjmT];KR WJJ$,⋈T4/t_šUm8Ǔk[6[,~$}+$F ]zKN\1+B9y8ro'To:ΚE.c0M0ȈtHW1 4NN@dS_5DˆY!Wh key^äa|b0+ Q2:sq։ۂ?ltFv<9]LM }([19&~x )|d)BX:)?ԊZ?,(7Tb, ^#ZDPcgua40v DۙKv6C.8|_Š LV8> ZhD|柸[;JnKXܓSmjӥ[E$ihq7* :/ @;ͷ . .\줙o SHŞG~l4/0ά75Ag KdJJPxw_SdΣX؈N^2'k!;ebK%ZR6&#iJҭz$JqdLL-sfӺ i1`(e>bTں*۳i% L &|30_?ǀNN,y29*Nr{E7fU!ˆ91y i}`v1:HrRz}RN2ߙ xʶJBs%MR+Mpsa \ Mj''`NocR0qO`}깡 j~J#>8MNM#t(&0Ѝ)/97 ЋWB ,}?le~TGHH2 JBRSf j, w=Gc[kW^"FHmb`0Rd㔥ya/kebT '찶a2CX%n}^)xkt8")AoTЉ=AsIF@pP:|t$2,;~sno>0k .ܰ{ [UЧ.^^j< 8*pNo{vޤkr*e7 .'HpbSQq ]^&JμdcJe:}XG r*tc#H;i3$}j+ʓk@u&@z|/&:xUVVb`ZǒFxݏ}6[-`iOҰݣ3xarEbčhRvhߣ"?_EOг8N0{[zCK*sIYy&)fDɾE" $=E2/V IewUͯ9cT|aP1]gx q[y~8Y =j(7 J/ss;0QLk׊ Z;)-n-p8ɘ<+L*X.«geShP*x^ʰхײ~7R9a,f%a2Ir29MO% mҢlیdj f.ƌ'qO pU)DtS؃k\d;RI|gsnڤ0,*,eZxSvnHPaQ޺luľNjF49P<=;;eS!>H_q39HEYf;VvY[Rq`7ُ,u@(}=*b"L3lZ ̿2 _%W"\u~7f͉%]8OOMy¼#TcEԀΌB=_s q<Ļ o}^NK,Dx BS0 =/|Pg+JuNijcjN<mc*/JK˄}Q_a1-?v9!> ǰ ยs(qvE R|oq?H+ Lly̩O"h^P`_Fb4-X, ޿56F=f=fF3ӗ Mޛ%L7%,= ZfE=U70_[_v;yVQQ<$ `Qyek[@{jlTA=BǾI/> 'v͠QD1G0Ntns͚K+A}Z#xxw(,"@7"T~Dcm[l!EH3,Kr4>LaY"P ǥln8\i^iZ"m}OjXnFPKazʜUe"Hh.8ٙ[VZ(Z6:,9yv'E]*4\{+"tvĝyWqFm4Kzw? P-#9+x/ ?u: . >5/'1s8EIaW4 G ;,ݰπsQR HwNב y&Ia~:Uș]㚌B5ۃK;!'o 0NXbǷ wޜf snm,kzQ S\S3I 02onĞX ƠE`t-~ϷC[\q !Jv+ +: OP£NnP|?H5 )`SAhh4 ɟ-z|J.^.hX/$i O NfIew[:cQ3DuRs~8ԵX4ĕf;57_oxPY"yH63V- 4k>=f243a/Oâ=Tg:%JO;pXU>[r%X]J]So/Kه8Z,ƂlKEab0 PʟR2S{1KH rnyZxfBj&|49çt'=o?y0o{j`bq>BIQr/HQVmGLa'UGZt5A/J~k&rCIMr]V|J}F/~qnU\ゑG(1 礁 :OD-0no.#fɷ=vGN}I'(a~{rv2?LNI@@8jتޚ8rY0B=(T@<jr UƎY) kKGXL1p{#"їt,Kt OGw/ ~B s 8tE燚QY(mܓ%' `E$fNREp ad.,QG|9/LPy! $vm3kr|xX͸OlIb"%kcC G๲pҥ*qϰ6w[w'['>U!-Qa#/}_djY@= 4b2T1h31 {PM:, R0׎9 ɡO&a:k䤪?V1ȯx~;pth'¢_<߀A<'A-/5&M߂닡ҪLiyVv̆(KEsbjZbvMͲϘ8%W#"F.x|ś? g~{󙲳'ﵲb$9 fʋs-0횏K[eKv"{1!lhNV85UqHNW6N hQvnP|hW!]OCgkmd lTtS3ebrn(9\!*<|>ʠO7㱛v2>c N!%|/0,.1?MHa!xuX-f떆ݐqd~xيyAO  }qʘ7>;$ ڕGCנw& {IXwjXH\Mͮ,^. nkz.g 1pP6*^{vd A(Uq^D+bCnV/rc 9fx8/.Cean4+&cD=!+>Eq<4(`\[ԝ<;G._q;M"b܊ ɑ~9!>c|`D:Roo}Wlx61M c?Q!zΆLKh^pB;lƼ0JFge֗>eש1RgB_;q.ABi%&S*ѕ>་B] 2ĸ_!(6Pr ht0TbC/x.xPL KQ6s<j_>~iQTI^R -0P &^օ)Rq;KtC'xկEftQHYءJ'Ltˊ ؃Y U:9)]3;e]m JS]ykg^D= z:Y gUΕeh1Dj!tJpڤqW6YxW$)ffm=Ёr_v]|$Xŭܓ#d5\O} AN҆~HY9v[_Ѳ#~:RCkGǵv}y!wӰ-1~xS}A ze<<FbLs2;|[((|@ aEIdǓo^z8DH%9]fzw\<'՗#x\N" Wp|qnۧ3|ے/+OkLyA4M-4}-&}'M,&YQ\L+II+$cXnh|v*{Ϫr_$#9n8li, :LspqDpOD|~cR5,|bM*:((v F \;7+m|p!&>A#0|UJ$D<OV n~ne&| 6 > !L9/=[(hq􁤉YCTC6}]]TLkd׵5B{XvO"D&o,UH]]H`;j|6~WbTբsEYdaxTf1ة0"%waM9¯OsY!k+"F,xnWT)P y}Kt!Oroϵ7^J֫^{WGGcLwE EH8Vl7R& -RhK2Ob 9>#5 %P먐-۶vs?QVg q-oʔ|9jG5Giu|m hٱn&ԉ0 >>,VRrpI1`v5:0l4Ce&;-؎RHݖv7ʤHvLu #ga_Ͽ/OFDCVOll(Org F4-0Tsa]kLpR WA,2/rMԕ[* Cw!Vw o%DtW &x-t c&hߒ"LHk6yzLҍҪ =GoqvCb Lag$ʞ)6yhitQj,=AnӀߏg$N"}z#Ja=Oc/kлuaϚ/i'W`S4J} $6OgRtmW JTȱvJyu.x@ /R Qh泡4 ã O^.z@1Ic@V^7iRK 3 y2?9Ucsa тL)dd?4U+ *hv_fV>9f\5 aX|soxׁkx4ZʈزVcdP{?-o~w+) ql7:[xElS\q[B9\]*> 7Ù'K w5ѐvD"Y6Mƚ:|rX=tuH_;Srk0hOS!1G~AOOVqkYcvE ɲ_JYI !i߷㟉ZߴȆn#KfEFO1nr6zKΥ*s|ِ4t u$pZNc9Sxհ4oh \&'Y#C% e٪]ST:ά_Qp .>nZP9ԛr3 : m TsmQXe?VvhȇZB=T28"J_y%Vcj4cے=QYL3-<"- -GLNA6*;]2X\ V= I.G%T3W1kcߍU6*م@HХ7($]Vh<rԦ%HT!XQl(%!|9(*;dsuUKS&f"68z v4 [b\i.,kczoLp홆7D diR_xқ2 gL9LQ7:5mjbȷeDKo4a9@쑍'j seƟ۪Ama 6aAnh6/,V&ziC8B2:xvw@LyLM}aZЪħQpV7mѐ0ȋ秹B6(M%$D z%flE'| JY tZ($~bKW=>E e<)t~;kFPbrʙ6&zySjjyJW9rxK)6؊Tz~; L/+z^$'_|1*CT|Č0lS+=حO~pjj_8Րբ@''A4H+p79r̺7!Ij5pцm%RjԱqqh)o?nS Y:;pn x6a~&ƭs{9Ga"KJ?<b|eM(C{+XX**߁ Nghv*}BnP&\× T'1Kb6`<## 1$s2.{b /*=Ym~F V?A (Ÿ\F {YPf70BKber,4e1s." rݎMRCU);DP"MgLDj)DI26v%53E>DEty.WBˆm+sV]7`y:IoROUPPT_J3(PJ"Z=2 K^pki dkiǏW̴HF ^?W˅$'+O1JDNܒ/6$ޟHx&#n-#U* ƍ)uwa@@=·¤>ni |jX"ǜ\U ~FJR@5ey)l-L=lVyGmo}U[ :XLر(rw KcU"vGxIrpED 1 F6ve=N;i!,~ ނ{񅛠R3HOVkuʼ컼˳-8d5RPU>;'R٣sRb7ꊢIҽC.dcҏ2=O4yV 2p,S񰁦 чC9LuRO wPLpc/TYZ[NY'&įT( T©ҡu~7.sOWVTfJ+`<.0!cXװ^"W`ykKۅG\eR@]eV5EcWFϣIHPof&愅Sm5-*QbJՖGþT誼a^`{it*{Yf[+2g;]z-#îCluUj[(ZB>Cn$=;x 8y6aE$KI 7W\R.į: *i߂4=J|ΐ8g.~~OGx\0 ]< hIC0FՕӰ^Ks^-Q0\̧Fa|c&7U܉-4 r0no ߽#0'xG}T`@;V fieK5lݟcek,|. k0eۜ*?9¤&Qʑt?d9aēr!c6o]dJąjy퇊 Ixi#R;L6lZs_>'wӶ@lXT}OHlvY#2B苰dt[E) ^qcr0 4nRBtӉ; ս۽n#BoDO! aah)q!2{2gIR)E "kdV2BaU|ș-=78m`xtFG=dˋPϪ+Q##{ JN hz,s_jg*m::+(VmpzݾI3OBen~}[i fMp0cs$NmCt5f԰=O)z W9FPc>@b5BR. cS2ɇy[~"I)jxoZ ‘`pc55OϨ掌JdZ0[ Z$Kʙ;%vrT^⊎_?K2!E褆~N8hN]1$OuZf}cZO)@66y|_R$-#*X縹ZFnT-_bʗ<-$`jz6c'X2PƯZ,@Ĺc{"6>G*LMө֡nt4G\ם%_zP7 K&&\UU=>%q)6hکݰTndLC%'2%r>/2m*u 4ZCԍ'NVSS> 05` ,wPpPnCYIPF監0 ަdp$e6~Ll.ۓc%^o.n N2ct%M(GGR!a{[to~2B8 [0K)Zp^"p^.O&M"D&luSk,V&{h' 2Q߹x wz`#;4 5պ79dLU +86W!]1 ʐmpc#<^Ҧ1B, AY(HwM)>'`>JnV7pR|\%`Sc߇hjݩ\%3V@hT/}r VȨl _k-)ŏIl`Rd{'dZϕDsPM*5aĽqH715X$w%@K_'q]DQX]MFcӭog@I%c+SïdZK49dHqu⼿)9p;Xʼao>{sZj?nV'K37ךx^E;H3.HenXS25O1!E`ڨ' z#`G*i 3 (yA`em YJ v,V-5Z\YogXDz?yvhN@YC @ UDO`YX;Y'[^ x]'SE׉"~rb1GTlU?FBe"RRj@j X(Weա˄\'.88Dô7B͋sIoht7mkL/SReZ'"objXǰgwIs6(t|~̠v HGNh,`GE8+fgCB),W{SFȇ4xoSk[ -&y0:0yNUYu,˳]3)F !\ <=@`[THs@E%Sz.? &0u :v9R0 @>|PϤsf+B;g?Iypp],Y@!2]]>P-mKUA/q5MO,cXd f}q- NaA-ҽxu !CmoVQZ:ssmQBspo)<.VͯzVvYl?BX= OW#h`.p+ ߭@iI8qF {t@bT+!}ߩa{zmdz+:0|^}mk$ѐܼN>&HmW!7 blOQ>?U9^ׄv6ILtL7o\W$,g)|_IsCJ_IYRǖ[~0iKMEtZ&!cQڰ2m~KV530dwE;EwHҐ{>3m[R;`pmZ<>=R"\D ]} 0^?h:瑒EܳV}loz21K*QlBL}V+ G:nzޔ`ͦ;/@e eIጦ=7K2/pdMǧ=ZjԢѴ0wD <蠝zqہKTq Wf͇Lj'|T7omݐF@X?K8'r ;sն00CDZ,sؤ1lPq"/_J<Ž]kAcn}g0&O*ʳ9U}r1ngJ'J)ؼ=%(jϮ/ư3tD:vڍ  ?7O 3j±4116l OMnXrK;dBO_ |'F{!+74vCCʔǭ77pr-o֗{мy}l=C[nx,(+,徾Z(r]^Z)Zmr7^zsORhrey?TAor]|)L ϔ$ Rbt0Kg/y7T##KvlzB-3-xI% `%gxè F66lUZ4KU|.?'|,,Rwi6Z3y8_DWh{Gbhzq(d3{)=5p}5/oWz$h+QY KAκ_ K\[ M%U/J=ᯉ8{l Q'xj439 nQgTo{tdb~T $Q!>O 򥛣I56im ca|ˉyF歋p>aE--'eǟN;~J,[7?4^,<& VgDhGҔbfZ0|jĂ᤻՞ $3Rl\yx|ޗU2m!5 2'h;~#,ib;ewtzbg0ì. *49T7NQF+&w!)˚Exs<Ϧ-d$f&o/% Nyw44,e^MWn\; Ϡ@v:~>:$Ćkt\ 2c/hxs @&YLQYʊڧв.XTրŌΚY-0p~gB2HY}dϴ$z*0*PkR]NrVwh7Bku<;1]}>'o!\'ڂ{5C =(OѬѰ:My*XNag%Ku& GV Xmt U'qN;%X?VJG^v!H>4 I|qX.Y)ËCj}@PэD٥G D/ZWckBՔ1]0ߗkdSEd)f(kt6֑>_΁޴U!3S֓>trpa٬[%1q/t ߐ 䆼\BJ_8(aֿŃL]h`پ"_WHssu1vx2UR,ecn>y$B }H"ރqW+ʈ !k"뵙0Lu9(+ 06=r>+mDSt[Ob?w^FGY ]͕RE!Iq@,{j={}FaQ~,|x+F.gTy@M<'uugmB"fY9uRWc& e*^ƮzH{fk;/Zd]|BJAlu5?v ZnS;?>ׯ1 #h3Q 2ǖz*z&g|M-!MOSx_'o/jsc%խqVG/1w+U[shMO44 &YN点\Dkp / # FRKSx65LYن'|"=2 $^jć|g:~;/:gsi ]G(%E߾3 ٘Kd*ĵiH KmHu(yF;,֒f3OÜ^"OBݖybmj#c ,@|mpB& acq!As$r SsvG^y<OP;3bST>q R$i!h % P̨0 `+qL}`Aک(YNXUuѾvKByl{,>d#gjޞ u7_b>jsALjQʩƒ)&"˵.IE66$ӱa*ؾ jМonP(ے9q(kwj'\P([@ u˶|i=/0Gɂעʢ瞎0]YݦmO 9p>;,j!u??V ǿCym FMLN)vg]`eͽ`~{.guhJUWpxi u&?U/\NGRVޝ;yGW̶8E{Kmj"v* 4Ff/:==h"ZB⡼&ݮ T/@i21% oǟ.uƳhBFBGVFbFPҮdO .hRlۋ" Mu'ˈ3o4*,=wͲ!ьantݯ\QGx-\U!:=ia.DMܨhX4Aʧ u+M;ՠ33~D~c9ƆuچK"yaaEmcm˖k>"D%F2]|֮x}5G ='5~>ryEnL0Q]=%>6{AqAبVz \Sh X+66Jh!;E}7ct YUa{qODf/I'VL)yր  &FpwTgW0ϣ!~3ʦqIƄ8~v7}O*VqwId/h8;5  ;\18L$Ÿp^Q &/T%1e@V y*hLuOiFc-'n1Wؔ&yKܒ*#B3$ְN\ FYbQ}Vi/묾7ϡFBفKٌkZE$浆Zf -J:PJc%E$ mԶbM ETXtP|}Ð,d+ѫmF0VREsyh0C`&Hy7㱚#coau*GZ<5 ~5Z,uJ/"CDl1D=8Ǽ6@$;^no:s1PhtԥchVgs(*nXg>\{fP'ABwr&M̉]eKܽY? ++=Sey0)"g0 [&Ȅ7ߠj-z@Dp!=Hw|-sU/^stJ Q3y SIࣟior3p#-(`m )W"tW1 C 7AgrJ#\.o\Cv%OhP^BxNUis D >[$e_08MDCWh.wGO84aέzI]XKQۄ?w0q2dBν& 5Aõxj8W;5W2\aZPϰ{Yq/ҝ)!ki޲A!bL~:-$Ӂ(6U&LhJ^~<W*p>43xܘSU: fSxE30qo _\+m5J?–Ed쩂 o8F'Uhnʧg;%Ս'L8. ;u%ڶ^Z>3x?e*W0H{֛6 MF #@r:gy)"C\ګ2foY>B!XH&2kgξ&p2Q-@J7Jx?-p~>a:&Y@{.Ӣͤ>L8k|hB+tɰBɹEWrqodӐbȜF؉gсj-JG[ EUGO)n|byDAtu]KU0MA֝s|`B_ni8Ohy40]l+n6l7g:x fvO̕aBjQWyX{v 6`gI1ʺ4>Y4"D)/Db]8 p,Sſaz89Cow0B>[ъ@\+`0La>JbUuہ'#cN߹LZ$؍K s1%l0&'j!oޣ'u>>*/+M_CfY**]k"Jy$GjܛmaI+~:K[ =]vDNYxTԕG5!+K3F۔L̾U]& ?*Ahb"H<Ǻ!)2`-fm\_Z2keHs`ΨoKIHnւ,G86>nZcy=ljK69F/̄=%h:;_֦ЪPU Jhηl {j[i6t4Y/B/[Du zW Ҽ/6D{9D9OTcMnއ] rEßvc/(*PEZL8C ST3/ %1dcG9Nt3[ilsyպ]5`wNb tٺP ]ƓYEui>q(ҷDnHeS͏iR@pT#mBQg۰@"JJaGta@M=#j7b uV6{qTtdm;zݮC=dݫ;ؤcn[m*HDC5mʉ5g"q|)>jO>EGjMZ"m|EY=e `0~{zq1?aF$ݷ)U*To˯TzC]txz:<ψ~ q~ډ(zcA0/aD `lɑF͞u_$G ?Q ptt ]R;$gZ&I›5G.cǎ^A:,qJ^8;QoYHZMLbރ/0YziL"6jRH.CʷMx29kojVʃ(T.A]qK8?bDENSd<ե4+E\bYQ:[b/Ǫ3fcyM@4˥F\(|5YCnyGd"Dȩ\Y sm)|ėeMsWDX^22 ^4j=FE6B\ģ {5p`BW‘hqSI9Zk<x>kk6QLL=_2]avٿ`-}w* a}FU} MM=/'aIhtm _b|Բ:ciٟ) :+gk/s$jbh6tQ%ֶ+j#~mxk" 9h?_&8?gY j/Tà7q% ][+ d-yENrc.Y("d 2<!z{ZgՓ:̪-tY]B]*EX|]`YUg\z`M?֘"W $VZ-˪#y:}"U7Thiܯ7r`˫N/6AڍכLD*&{=1@ _&/HQ _LE( D,(E@vx5k4fu5]L;h&^GB>+ls^PmeE ?M-V ܅k!0®AT#L'z^FV6*o] vUS;g|`4\/HܚPqs7 [sl|2~o ?$wv"~9u5^_Ϛ40&d.A@PS:0mۺ鄦`ʚZ H̓$iG:F_X :`4R-oTg~ k  f;ێ P<Mx) xe{QS*[?eRg{.P6LG5uDāJ.!%lʧ K_ 2Fq#ܻVԫq:v:58"hiHS]8Y -J_M@BRe;X߿e31pѿ#4F- x$ Np^FupmO\ǘ/޽qY0h8*U |؇M?aL,5gEt$jֳZ>HЦK^c{U1`+oxb:cJ {Q4#6d7&PtRGD!AFigy%2P iKh|KUBM \zg `lDMsIMRmfYN6}?k~4e#z(Ko:D"J0G4H3JN1aJf*j/5??|сաC|fK:gcshUYRLTpҨh9!67z6i" /]r1]TА.icU+y}|;b9*s襗+NnԨJ}/= 5.T$0ޮ%+wF"+?J/96}sA .ywZsc[F%X5~g^!ƌџJf(7Hʒ3qN)ckZ;oi qqt {UpB%X>7#b00?ht|~\QW$T78ZGp!..m3X Ɨ@mY& пUefHZjI ߒJ[u=X]M=$l) kCm7p/X8 pא (xݸ^(-q=nj5Oؽl9[$e}\/^umU)+ZmsؓEXԃt~AK~IcDR842;9G.~CWd&J+p,zYzi pC㜙vdLU×/}e5S\+q:?O]V+SeoR/JG.sAPEq5!˥(-]dUcARFc.(T] o+@^7MD=ž'K _L:~ -`,43Ls!óW嶝v[fD\̑5ҁ],c._vֹ" WlyzIUǥ'i0xxEHA~.?V5 яz_[W9m~x <[Qe6~|I&1fW{]W "*qڎQ^J\$2q (CQh?`S|'N$ڭpQk.!9}aD<74\e策g[rZEͮf Y͉QSVN ^RJgѓx1!$f5{€h}pK9Ύ"Z]\=7ծ `XaJ\ꉧhoAY9P&Ԇ#NAuP>MXnpRX0L9׫wiFvd |\z^IzdIEp ^oI;bd/LRnLlڀ> OW_"}k!~o#>FIźzŪq/ZSz7;8 lckreO~[C-ȬEr`fk&E]mjHJ$@q \h+ @{Al[~$7z ce[0uFU!oj<͆ht&+3|qy^fP;z&dKUD ̔@kNHWhuvL20kpP8HU&aJV-^&c{2( F:5Q~BҢ ܳ+-4 >XџL)|P d/Ymd7l /x$8#B\mܖ^MRqHr*tY6Cfּ-w~fZcp;l1\*<Wԏpz^v/>3^*5Aњ%},k) @) 46!M8/R ]`P{ԭ4Ox鍁j+XSh(5ܡa.F$Ja:$@iSvlO?s`l.4V##$Yu)}Bpi>)& ϔ~kY%cciOߒ#v h1AK],a浅lwnO+d r"Cٔ(¹`Z|ekT+eBI O>нHzTD%9.Rgg=c;jxt-˲ IȖVRi/WC;sζK[jaz0PbAzH_@5nWLvyO۫Z~J[M;ߨAT b ODn7k[1ؕsK;7F녔iLu:C$EfGw׉X{*~ HE'Ħ_S!zRMԗKe.Ԝ* +]Nq$~YUiF֭*HY+KP9|vM[ /W뱚㵄trwd2GvܟNv.&sBC!t"|h Vb;r$c3oJax/ޏ@0S~ۗ4%cƕY}!R[3j'ԥǒ<%y _"``QI{2->D7bt4.󛅨wTƽ `偍2f-D\wF ڻ&UaՋs|c874 fd 2My]L%/}:Hdjjg =&) "ȾJ/,8*kR(p~ g-SWOՐmYaKr_}`y՞1/Yl0:/d/zG8p&Ѽjbn#>ECǪtIJg,SS"X+}@; H Kʆ|P:2:|P22Խ!or2aNHәn[vcs%~kQh:ZBw7)[ӲZ{mk> @ (V>ܿ蹥 V8·ZX6/s<%*\Hpp 7 =y.>PA#,&fe? ^e@"@-AL@HYk]]:XEo۰⍢:@hFY_Z2W|lI}h i Ta%,S}.Ťl/! w!2˞g3=i3+MY]/+z3n8>H ^ +m'uyb.`IC@lQ4RU!qNK)s3.aG]%dh%C%G'M9XR0FLkWvQcoMq~.(.)ϊ{&[ᣕ 78"/0.Q&+$rʆyskdJ]yllˡ.TOvz"0)R3gV+qjţYgJV鸂dtŽ-׆:?Jɻp!JP"ꈃs 7+d2 P݋"H =0ϰTMJf+0< c$I }QthB*O7mɝ&b\0::CIꃱ=d?[1=~a#ͼş5SFU^EB SŅ}b epĴ#Q@D yv)3XbCkVոiUl 6C0 v9h2vc$훜 NGu ;AcTཝET`t.ƇG-?zє }db&q0@ϑm;rx~ipjHIްU>nm;u.1yoU.XW7c9OLPbCa!ʌVhzi,$Wc^gxC5J醫Ki H>69oDl0Y%3%VP4\:|vl4ʤD9JGs8ɤ T{B2 / *χy"n:>q5n pFf<;s| c8[F؊fA/]*W4*Wyݗ{D2kBĦ8݄k.E\>ޜ;϶`*Gka^de= ˣ XE6Xɺ[t01椘(NL ƒvlȢEcj6DZ\pY,3sL;k?LK  s!Qp.ACcUvwn[eA_2Miӽr#'4gֱhz l(++ddI@AU_JK[Z7B*s{d\go`v%}ΧDk g\Q]۶v, thu/Ht#zYeF^ @l]W]GN$1 J14Q4b}AWRNteO5vAHoY^|"ؼbgfB/Vi*b­W}Wm qµO.`2[h{<Ȁ[)^J8CUSo٣s󳘨v@"~zbT"—wBÎtr 9BM |b u g%+uV^]lMpzGB?s~/k4O&}gK*V HM|1wK $6$(E'a"gIĸr=Ȋkj Hm6e]cȕ %67":@b9nj8`U6ֽA՚NK B q5PRX 3/ݎb\,d/NY*]+=<[իαa|~5D&s3EnǻPRY<}d;!-Sgp!c~Alύ DgBъou;iFG2.6!frkZ"ߒ-~,8a!Pxe(6 u=IhPP /|qI󕌻{u;FE'‡1z=!mGE ܢD6u0sH@}`ǨZ>X~M>!BװRڶq%*m\wLue6jw-9kn 2L',xѩmc8 e>-pӓXHOT/M){_;F=  3oHr$MJQ"NbHOX7"!Dgg%}}fc][q&kօMmO)W:3lFvr6K,kzB9& !;  _dvAb|ކ6 "6K?0}WlU8G]*.Vvf^B]d.O%r i⤓xITQd*0Tdiָ/@7- #=uvAv ˌ('rgȲ]`ǜ\[2z B"ASDC |Ɍ,MN(iΪe^3Xւmz9*e'T~SO!*e\ w^eb(g%7Yv8?:$a2v)k5 yD뭰śvEc,Ws@T #5(&Ȗ8,7.K IC~HsGO>O!zQW'k_{qC@xE2E##f~yݨOLuoe<H?A +{ކWف]h?wY9f)֛=r9I|/hyƥ^2YQ!/wXWN} S XQº{5_+[qëeeǜm^jQ y},{Դ􉆭8- xUg5lk`49i(G6}xZx?R ո#9N%w9n12SLJDӌ_3=Fs[[3=P9)M 8PRS{MZ]􉣽DaF$GMNHeu ZKI NL1 ,`Ȉ$r +fždTRɑw mg"Ԙq`\f>HBع+2}Q'vYT@"1U*r)[O/`))+.}M.D@]rJQ"N,,f Pwډl`OnNMIFraQ cz/h (Y2e^IԨb 2,ƳƳh{Tm<ˣ dW9s8n6/40ʘTcnގolה ,BSF:Ǽ;e]Jn9'b j  Y!}0 t<~civ O_wOV!U0))]Ls:TcX.;-"4kw}\UdLV% VT|T픪[W8"@shk8 h7Bt6bejަi~,.l fCi~66}-EFxq(;4&,mfLe\4j-Zߠ]f% l,[u%\oexu89hi6$[Yj詤C@[~tILC*wdhg vx ӄn+ӲV$?(L+ZuF4S7Ϳ(~5} h[h/͆VǴaX8 zJ, ^q Ǝ, og"1W^ؖ ~vV8].\s@]j?>ϩϫQ-B bQ/Sn1щ欍l$sTgvG!Ԇ/tDt 5w, e_Q E(qN:'wŗ2CFKwq=)knG)p >t.wbP!xU 5ñűuX}LhnN,N?lC:m}KV h_LX PP}E9Z%7`,GΗRv>^QM[GH)7f$ 9fb56ZN -.a4"߰ӛQ0:i]W}hO$(쳇eD1*;I[ADC5 ь,CF*L>R;ne,4tqz!=97tbXZvM)wpFcjqn4liWSpX]1kfQ|d4󁙒ЏY"42W!_;]0 {VĽj|WԈܥHNݫ;Dk'ri4d+ g0ڗj1i/TĪutolNs|}f .Ӱ[dAתLN񄞰Ԩ,@'/|sӁe^Rpjuwh)u*<Ɇg OE:p}ȴ4J 9^zcuu1 2^W:f_:^IJ6Տӈ5*ꐋӳad?  pԔ<{H/l\2 (p/ QLLƥ.]e]; ߽l9Gs{]ٵ}QW$5t.E>R#j86@  }._ Fp{oCV9<iBq~^fO.U|_j6tsk*ɓŸt+uS @&R5ΊSi\{S m[1giBhj"7|ViX=\F&rR7h ;2 _X`UiՊFHƩJƂrQӾ@DŽ<4ے Z+`Q&_ojޕ'XF4cp|nΐxt h LWyNn`߈s )] ]xL)(,ʀPx6 k%uq]E(8wz$f꘦=ne]*8wy ho};/xfҿ)f:v:zB2$ Y0:ƀwf凬mng4\ xqTLq&R .sl[ %G~#3u7M~=aZ:}*c'8TD0zdYr彅s1JdP<"אߪFpgq೪C,GR/i4x^%KQ&itke!@e _R %t 㰓Izl4@}plR{pkǝ5bR"PN(i'g 69&dI׷,0`R['k-t.R+/vo-`ȑs}mѨTBv!jiIK}P4ctW:>Zp%.Z#*oqA " \erFꂯP`7oe H2H4e7Dc%q%A>> {j ";ד8( `-= 3ڌL*x5[ VO,IULPy0o2o#bJ(ڧI8/,_S!F^ YHޘhhОs^ZUn^p]שͩ44;u71ŽJH.H?6> ڳ[ћ L&tILQÚ ʼa ]T)*ӯ 򨜟ӗKҖkP@P\M,V?RY> ~a!//ىG|T;$6PT| uȫ$%M)B<"Phe+s؍k+=[G?_=4pAu« `.V{r읬$uRbfc uSOEkRs$7[Şi6ry VwώM.S/\A=|S'S*f9Z:b%Te(WWASt%gD婯(T?AFPe(m%bRoh+!bqkijr%]YOx="ي;$KRrRp,X \[ߤg]AO2>K(XҎ8ROMD.van c-4yӆUZs!mY*IP BZ2+`,ۅ@#fCEzr5D%{Zc>RLVCх젣{1ci;$ :Mdq(STC8ƴb7DTLC8ʚ.uy4M67өj-z z}yg!yӎ=E - [({5*Ro7ghG+i{ϴ1ղks"X4TZV4|` Yuظf)**IvHںPRM5 eAm wK%#)!g?gJ8-RHG)#s3&)nOlۺf+QE"U,?"ф=ӈc؉f70iܚBn@Уx MƵu)`rO%5a#ӏ1ۣ#çSFnsyAAD蟑 uTR6wԳ?dgOxLfuW{nlF`}+qx8_xcBӖȼ#X(§HxTw%L"u'p9W{[XGlSQ$~J4g/|G6eO4# iZH[Q R",Aɨ(&rZMwݕ_&*l]<39B4B.Υ6 b/C@dIN\nk6qJwOtĬI2zzzUiHi_J1|ʷ)e3xZk4Ԕh JgTA9϶a/#, xX#0Ծs݊_I겁+뗊<>2(j:'e\MNƲ.xGX3 &c`öڻUh1Uqfk, ՓZZE~=fd7pf{baK.fР& ˃o_] Z(vf`4퍑앺V WGJ^N2G8͝nD.=ߣ]G*At8|N!\V; UsN cw" WS}=*rq/ǑH_Zʪh1<hm3~8[/IOɹz"LSvV=))XFnGcT48JV@yLû˓vr^ \ m9#MCe-3P7Mv4׵|ɧUOSPY"?VQUqș\Ɏ/p=ɝ#2P wN>*)Q"x Y |9U /v*j wbfޜnH*$$Xl*,A.~0{I1RQ#( k66NέIbvKo.t"$OAbbm<rkWۯ[rMC#&ҺQ kJTzW Tҟ'R@1D0@3D܈k[^7ycܞm{o'{䰛聪;:nRSTl)F8 'TR*[NTtxwCBȒAH\+ԛ nPXа I0#yUh#1>vMEvB&%蘴Hz*a?P5{M-h8sKmgm`$ތ{/ň0Yல]JEu`TU1)lgo0ƶB趷Ž0uE=QgS8]u7-hYxvܟìi̛4Kl"UR6 3{u֌s\3Fbœ>nn([#eF3t"?vCKD3 u_$tSq.a?A.\S&SB@$4$lu飠??`R^} ^xu=k >tٸM1wBo9 ͣVQda&~?d{?FDj֧U8Ģ=Cq֪X [%խ{ X$ȇ.>#0ZuQ_w&l*3'?XAtA.nډ갼WY,?|~[54cb@FTG&~@Fu=@&smzk5d%[jo; /R^-ʪk73 wI4>XSDjB7[vWF`WvRS$K0L~zޣzc_0ˎ[H[q*:_IS>{y7[yT?kn&J?/iJ0aH=|"S/A8P7xJ]ݥaI>}u ztls_V''O/(EDg!,_.hi]ӻ8'^!/ t#jUC(q,8zևMDinCD")nd~_fJU{۵EeZpmM{zTA!M%^nB\iCǢ Wܠ0\zr K&lU -\}wIٙ}LDZOmPvj7]ET9DR5k,띢-vL>XqxJ5"@{v87E]Ϊ0#%t;~BSOhΨ52GiRq62N@Ų[,L6v$#EN>ɵ~"/j;OYFi.+XI{b%n{c,AjC u%?P +Do'F p,zH (/1ƃk'( v9pw<qdE)nh Z(q0!  ȊulSϴ/$'Nu}L96ё-A\mg5Sٺ˕nSyI{Bz@0/6>X.l7ހ7g]\5gntJ(@RٴFͽ! /f/]OExoҌvXtoNpn;,ϥԒ.O>41T:w]j^1i~!KJ,|%۟૚ ,TfNxS !Rcrڟ-MO)=h`{] "a[G܃eO4;B] wt,9}Ros@6V*AZ%x3p5\eFrmPo]a\r@ x=  qEg ~|NG$2E ߲ !^֛!\'f:Ux&㎫+20F'Ub:=^KKH@fL> 9} ̰Y<}y:.䯛!B댩PLɂ_L|5ց9KǏϟY֤޲f'tߐGtιXZ"X;{rׂMv=[W7wKG,&,d7s?ⵊc 3Z|_GIpT.'0ZeW=.mo8i6ݜ\xc;`A=8vn>p5%wKnR17Gҿ=[m^a^ 4>Dc!"Qe-^`zC)#Пۨu4#Z4'{jG+,HJ!:_&h[aqvaYBN*PUE5#ec"˸^kZKm*)g[;0'wU&P6_d{eOX-msoJ 6U\wK!ݎ>Ov9[Jt2#RR:`#W䉛s]0A`w(4> wϡ9ܘ`OuvoOk@Z KR^HH1CI )mH"U Y>87թyVi_(L>/2=8ew @υLxCG^D+)JQ7,jCEahrIN0z-< 4DCN=(9{Zq OXvU-!)l{6E`T34~9rzRN%~CV0қs[a"ƚ] H 0=p/Ux{zlm<}1 8[Ӽ{L mV"fM쯞rߗ 7eWv/mɏ*J$ <(af\C'r% Cͨ6I)R''ALI͑pgUl-E.]Ekl>`E6\4bN*%8y䤽ETHAq3ăa :(Cep?iΗ6rڵ$$51+tM3' p1חXEBKUGZhh&95KP2WMka6.3ąxad]srYhNƒ~4>SO_IMŲ cZXY@*&G.Qm╂ؗ,W]T7v@ m aV8Z;3a+́w9zu8d!ru[=mDeK r /0'?d]bY^ćjeDW-[S%aS] k0!%Ti VIw@o;sUcۡћKrPWh7p{1؀Jc%ݿ ]yFWOOs䆵oPƯo ^Jj!_D2xB'*8 )CUp~VuW(b $W6(C;jLT4u=(Zsu n|" 'z|q񲥴 @#o˺ALxU5U.$ 2v l>r\B99&I3 A|k@U/:._lȄ# dih6VqoՎkQ:NpJ_[ٻJ'PH5J>S sS`ݼ NKW?L+2nBȏ]]S`$6^H;D ^#Y<rz&`P[]3yxT5,'Hf,[nqETX2}g  ̌Y ++QC6pXoyQJ]C(Bnn ݒN݇t^;7ll;sZ53kZd%ΘcZI|<dG,3f4vhBAYVv4 PDN7wCe ՇQ"vHp#֑At~1{Yx8|ۧ=,5,| ݊0M0D9( &#_ :X-LXdf?ATd曼^H(jtlPŇFvf8"?'#Ots[L1]Uԏ Y=7WƹReZ.,Zu7dMH{'͗!)$Wﺉ:IuڃnOM<sW&>EN[3[(<&Y(A(Zc/39,_}YWM4{2TKЂ$.Y`ٔ'<$z)rMqV;IHZzY܀nH'F,mj`嫾%ii2@O/?g9T+:5Tp]w c~dt #y?՗NO`ei )('蘹C4c:Ɩթ.AuBc՗le7=iBOeg5=큵EQ%*e3iWԵdva$]#ҹtӄG$ w4FFtcUKfbSs%iu.F*gc'}5EOhFpKM0^FO3xOָ!U9!iKO'?"rMc~A]-sp<@,%E>ۅ!_W?>A~iLABYR<"Zj J@gs9IlmR+{@W5JN%v͑K߼mw\8ӺSDT6ؖه#7 fQ SDV6Z+9ڢսi2O#)og.-ພGWZ +-Nq5lkؐ`Lc;V?x iv ^qvkM1"6 KΛ˗T(;Nqޠ^Ò;1:4^gF(]|ew;b`<"J YaR]E(#OXRz~/EkMꭨ3;֛r9"]`$Z܍- Ia? qNRۭsЕ?WEF7Z* ^7RKp)Dx)zA_J/;ֽtPjS{}}ꛬ|NH&FvAH]AaN?&mov#alW䯗|ߒYGk!~@{jgnPusHX rzCݔ3WozCi=گ5EdodqM&H&W\Fi>b@ʁwFH6g6#ծ6=s/8cA0c|w\Gg9$.L{FI(Bkͪl 7f'wS< p)*gPvNU/&[R/4R)ko|'~%__0gX0U XzmP`5U&Ɍ(ɘpLFPT,D@@S݁i*,I\Peȟ5cEpC^9~ b3К cI/ ۄwG7q'*͐B R,d/OAuE<4CS;ewCh0O_tAҨʃF:Jѭ" aO_گnx1 I땖+\/}3M m.뙜KvhfgARg<7,B8@_ (ڀAdEN_y>eZ.s%n˭1>.Jᚥ[%=DG3̎3,Ɂ* e@LSrkDg75iTW&5vP:{;?қIpxwo x+?:>gЏPYo,\9h rPMNý4>QC`,<WH'e(t:UzSk!Nq&ZȌkMymN2hDz@ng9^]tHfؠ]:XC]z8W= 3R?[?ki#ՌDH<.:IVt,d@%9p̳ Eĭ0~m‘gHl[NgnP6IW?J@x۸pKƲ+ʭ#݆*1dweqy x!*aq5&c7.3}j *_i8*@T⡩ E\ eM(Mc96 !;Xb#e[aJ萧9"d8NYӃ8bsj f3zoEHCP9`iDxQƆ+ϱe vn<}anO4 M"8o,d > Rr`OXV QonR-Nr]^GauxۙRZ,p.a_rHS^+/Xta{jvGVI M =%mx1RaS}ߏ932C`wNfÖk _(vgTۙ!+ j36iC:IG=aS}dGrT|8t6+"{H;wYh7,ȱ58/9=֔hG7[1;!=⮼:*&r xƆ !1*݅hO`:[ t\: Uٻ`@j̶r{Rt ON߁K@z鼴8%pƾȓL+yי%#n"͍j3gcgn^?Yi9G5\ 5;2k(:65`:M2r7NUi6vö]'C=>r_Eוt m^'|u|!@ŰŴ:5 C1Bt, ,rZ=%9Ó ['#.!˦d ЎB%ɽ&nxObYs7D=4=9s0YY/}Y9b'G]uymq,4 :3QF{'[d"?E|#؂kKL ~d]K. Ji;!Zw'aGmQOт륮M"ƆDzwcvfYvLtWKi5H} yQ&Y;mM}f&x)GEo4 ۈwijRNG5_a, ^0$S DDtzM Ww^ncz`›K`5)x 2=XNwe@2o/ <]oKŃu-8G=gBJ ?93B'_Gwm)[jcOcZ> vg][3 .t3rHDmpKȬGlj6Ox 5W ˩ k7fr̝RԬ:kvM*Ya&`hgZPXj8E%d 4`O?KЪm}fC]Db?S0Iy8j8F}螺 /Hl†H;|>B' >׃`6:>G$ } &aJ1jjYAl{+ҝ'hKXja˜|N׈>eG9yTP9!XFK# 7j?]p+\X '-OS@3Ǘ@(F}X98!DZX.NG2RZ^}um !/8lpdUH>ց.'OUSɛ9 2\MOެ fˬN?ķmQۦdߍ,g3M9HzY;Yx9yk!sh?dՉ5oZr[|Fb7Hzs5EܩM =lcsIf.I{]f*QZBRE ,_0բ̓'%bv:75)=KuyY!/|e/7+ W#0V 7D.-h! Nd>n1? ,hZ9;wq TE(6r[E:/?~r6B+.5ߝ팋+new/}((z :`зZʲf8Xǘ։CdDn5Xݐt{l/?(+e8ިE.3%zČqⲸ=?BV}LH IFu2C?G125}iǤ%.y sƼ8 |Լ7zRwX:u0`*7# uG@̾RԹJqx>RzJ;dWm1|S`<۝|8tVMMc0%4=I|gVK_91O&r[XEIͻ<+u#,eAޅ! ¢avixt^&XlW[{N\ݞ4cZj(YwF 'fwj28Kq_NhWyW!(Tv T]E~kzU9 wCnc]pCW |0 ˈ~UOiqMv%)6ߙ1j. i: Ζ;w 4ŇQ%^ YMk|ڲΎJ*ϴLrG#rJE A玆|uw1\ISuZde/PLj3EWf5_T/j_ Mn`66Q !ۜjg7 ;2Iv aJ^}S )&2{U~P_naG.+Vj;hn6^A(4^-)a MA=u73W=4#Uĺ'T>M$5PĺulNwϤAW1qm Db6"<H Lsn=vh]l4vޔ l{M zBl"hϡZ外d5X[w*<>a8;>MiJBh ڬ$=7JX3bf ~2+Q Wk L]V.BAJc֞c' \qػ=L[3 [e]i';6w?bg{ҐtͰ^%ZpJ5ffo~Ug /,3ΫҮdpJ[/c]9}(ۢyaܷjKɽR> ~RpAwsqyhOG A6hc,6cв5xDhe䑎[xRnB. ugs)GO=!Bd:G_Zz2-{bJ?)_[OAEV 3Lq΢.Iܳ4%0 #<1NfJ E>O_u B@>Amٓ˩3|9e&y~)HyE! ը@Y2=|kAA&daR_N ]%43 o'O.+[>+h=Ԟ(jWW"^2wͻ-X[$$ݿ>?ͿLݺK9;;?>=X7PS&()gNK\$-ⳛN9{^5:xf527]|rvBSחB9n{ !4؂%C4tȎz{`c:^v[O]lkgR vn%E\]%q%6 hW;{)S\79D*̖{`Sm" tyǖ ?1 aԨ<09`! ' "_NBy.7:~ފcf2ZvA2Gr /$fNۊ|$]M3ө]F27sgS'bwd<כZ^=bFUdpL#PO?:[f8Dh=OۋKˉB77@+n2?'ვFڔLJT\a'{"!3?? R Cyz7Pޏ5NQ ,*U3?q/*Hw)Mm]kcAΗV]~a]0 +릝8C:{zepr0MXPUf h 8|` RJP\**KEMw S4,,J9M 1d|z>4%e!U~ƕnDz$aEE~Q bkT[(Ǩ1 >Y9 k50;r/Dp }dJɢ GRh! 7A.T9#X7e*3gH| / KGq\4^`(5P!o]I쐀% v1n<|,HpfqTh??B}>o9*|kPB7"̰//nYJryڗ/Y7 *օ4P~ʦtc~ND qin (2>!B4^ó]u+vN&;`@f{]ubz!u e5}@-;*t;qGl(Hdu+}'ROf4TpN`㬌PM[}GU%I>=n1AZV>0 5> 9 6SFk"Sg>e_+wxF>|şȈ3L03, kV-lsNB.ʑ$E^ D; ɫɖ^.Q6P~Q_{zDsUQWPYi@7{X1TzޝU1+g77*gBH#M)my{"Z|e΄ #0g&]XڡAWU$Di_3Sh0Z(11:4n8o7cu8xe'TOn !-#oXFu=K3xS۴ٜ$+'fTݰ-gfEA?d?uaPq^NT@╔9@G^pbE)I?LH"yC*lgGgPwc3H2ΉVmp.r%W:!.bCxf @L8͛^@pGL4ZW9&T2ǻz/R2#FC^B[m w>:fSrͤFTŸv18*YE[k'&=nNJ~0p~=Ͼ^;J%Z4qsG:Kzj.rwXTIk`T*zl$orWU`? |3UkM+{zɋ Ah,U^bf4f`L? =_Q6}!Be[6lv5azSʊhQ2 -Uz]G6l R"m ?aGoW [RTBu0bn,f`QӭFEFQp'pqUJ)zDxч/Z ~nj̪4nI.O%І1ۍБ ~Yv㑔~ xqcNF ķB߾8c~)U@[l~yL"XaܫGU'I5/tYQUQ6? 66X$Y@}㬾eOu/Uh~'ݪF@ѐc7G A֭23F`ڧ ;jɍgpOn;"{Tpnn+ ݳϱ8D'f`FKOI}ȯΧ4vt]Hޤ%l`VaWI>XZ'CK? RlCddІbʷc`;A{&*^S(# 2,0.>QNZwՖ |ʩ@m)B:AvyG=:f }+%<>w.1 5fJ}-, fmp$ݍF0'w܏ړvvWVE"h*}e!G*BZ\[Z3gP8= XrQ8mNIpat2shSGd[p6ga\a)B {ZݩB+tp?;Nr&J&͞$El.ےk/3.#v4 o۴fV@46Nx]Z 9HUa{x :`65?0Jêg:2s5aI y'2Q߫)GԲ`N!4B|1HUsڻ[6zXۡjl_KЭ9Mg6*. (h_ g̏}'2)%WU$M߼R@Ҁ7W\k39.-QzM RZ6WHSJM4dB/d۟Q셨i\($piWDɍܷM/(Ƙ֞%ҕfjp{P1S\,S &YkV-N„[CgZ }&5P s,wEhDipC5 7[.dxzf5-Ź}Cn wJyOGJ<|pL" 8ηk]8 \$qn37qrJRN*3*Gj.eV>g#җqK,>(rK*Ytaa mQ|Zrp6*{ o/v#"" %ɀg5"糧BGso` &I,._'^i R\gQusp`Wh=Ȭ|S_a4'Uw0TN֡mna&v0c#rΧ ٌ3^DAanWD7T\9Uci{:4i0V9yU S氃lti#Y`,G> ٔITNQTW/[DY"48,3M>vOSKY#ͽ2+et}l$uO\]Tf#h8,vp7ٍr%rG @ltgF`YÙjdP)}bfE+_~K!wLjPSbgp?ȋs% ll#%ha2I{h.HlˁWL{߰_y>G_Mm GeF`E`.t4`3ZS{ϼbdPn M$f| {4EM/iKL}WXJHh܊!=xda}'6aruJ3ך> 7L \We gUk#WpƇ6n}=I:N8&M76TF_} tr1tM\Se6[ (IŔ>9ny^!I752al\5"Zy⤷.CO *RrFu)3s;(UiOטZawNr7LJ^$nDS@hY+0ٰb3HA-8m"b3ҽQعN({s9X(];J/$9mxjөZ&Ui뷲`Q+K6g@w)bjP ^imŠoa ,J> HGI$F.ǥ [92FY}?g7>c.aͯZh idߓV ~- l'c[2|$5xIn7 L3OPEԴu㚆n8,%xAOc76ÕyQi . .7NxH_yiT(!r-m- o`.LƲ!)dH!ZH٩|,3a[RͧBp0*Y/yT7)87Ε1:^iw@Eh 6H r[xj\q/i ~PHio_\S*8pNpqN龶uljpI-Uz<zq ^xwѥ藷{}+Iz Xe˄lSo`E=z" g'sz'U&!0[G/?ډ6MV&RDm/^d5@r\K&o&/CAЎb2ݳLUؚ ,F G(XeN̲??UeR+w>70ѯQtd\ Wm+Vrgو:)@I:w{\1QS/=' O^$y3Fj̸DE6k[Wk"T,-FӘEP*`noP YI&ȸX&+A\p5}(޺8Ow>WA`-Nd{ 4?ki FaY14V{°=,hhrv6\Ϻdg"!;8@:!;]Xtj)g;@'57,TW/AM/TLTr+pS%FDp|Byh;!TŃrq|{}d i "Կҹ- G=ƢYUcNJrⵀbؼO難`+wp=TZ/s)H2g0%d#@Nm? ofu]s43TanOڽ6py#LR臹!D۝-Z'n"dS1̋KϷ53Cxq{[7 ͏@@4 ݃VᦒWD<_-.d'#rߍn+˚Ʒ!h+w`Oɉ" ^&|Z1x;Ij0KLzhh_w0tmdX8 T-q8ABW-vWdV4#lQBZ̘ $r~8OI KP(2QV9|:Q})[D(%pGP7J InZ$`vdApg/Ѫ2CI$7wTR:]IJXr^gE|(ŒtдQRn2[%X/\Vu6b[+ա]Ӊ4v50 6N0?gnP &ptuPt Ci0y^qEN)aÑ'1-NK%!bvc=DOɀ*oc;!p)}`׉j=Ǹ1Wy-%AED.4^=DÈq;d(~.&۔<s&Zq*ǀ٠THݓ&Y4 Ό5yDiKVvu#"/+A1SBAG38#kto{r렶x^ҥ=qj1{ 'EAiY. PL/UfQ4P[~VfJu=;"R _50#AG NfT5ϊI DX61K"JB>ثli?-RuP5A۟)pG}6l'\5kNP:?6+DͰWX>t}؄'cL(0 ]C!$vuXZ7LUvei Ib{Fj#OF^[u](x8k^gk b: ,lĉvrt&fsEUDcOEՇ WSP.JF$qeyլBӸVU2%eq;3R˩fSCg%iy3[?x;s(DE{!%B|lc[Gz8)QC7Z,+1%JmܧaѵM͔}u9hmo"k˰+5Vb]PA*cGwjh;cGuTV? AS#mb]Rtd_JlHzMu<@EPz N!2ԓKu^Az攣筰ΖLuj=ɠe~b DP%]`B0)q/L)!9 t~y?wtn}HAH!DgFxLr|#mN_6[`quGߪZ.6 X,<,t'{T?yU jStum"&4> ,j])- #یm )^3Kn P\ ܐ{zT`2oX pY{V/ˆU!x"{V\ >:yF>|h˹1,yUϙY*W܅# FYqTm%?,YLN=mXJ!+w9NBYRwWc+ʍ`٧?)-|" e' 6mP~3Ԣw*8Ԩ=![1&Uā7DWb'zvr Fյv 6JDĒ MG`0m|!.4OP #I5rJ8t'4GL1KUt 2d޿vEA.˰+}Bm]SxIML$XM^DeS[g 榱7jU1]\u#|N^>Yt0j^DII`E=w*`z']|ȗբxL@ 1 ZS& YbPSm6$L}x[q:3#YV4`P:iᣗ@ ~FbSA4%p~)jTW\ջ2F!C=,֧Ybt8E[0Qq!No0Ht;EHL1_fs(Cf]/ҎF(RWMFR"!7$.v&wTLΰ0|$f#epY %eTgj|4"=W>-AH>W]'cy_Iʎ0KZqGRuiDSvBAA+xQx`.e-`> KxGD'ej.Q8FJߤGy3'BΟ@GISBq K,挲Ks*w6*=" 'T2k0W荐1N,e#sN dCW!A^j/C3>1<2Z_Xo" ~ijoqY2*@pd`[`@R|g!VI`ٯ\|W OOsצKö56D咆@- osuɶ`7 eΟN2HxCwu,y!:آ(SgDLӱA/lbmYt׽:NX`vQtĂ30vP^z:C3f9<'t]`’o~DZ/b5~r`}jɌ]ְkH,X3 pMw|wY Juw `5@?B-"w Fa\+j6vV~KZ@Ln(G賁J&N;YIu܀H~ ,7FXCZ?GѢV27E? -`7ɚ^T^?YNGGbx O3UtLV14Se> mWð| 6k^5"Z V *p J%:J&u1SSOVݯPnУ4N:rP@cγ6Kk٠&7Ao·ɰrKexϾF]U{tߙ=nvA`9(D$DG aqZXvwy1OrBSG:*_pɲmGhUfCh*F-ΩJƧ&10F[;i5;~d+8uh+2ʋI6߅(L>3/&ks9<}ߞ)l)k!w=]E3y1oH Q]̓0S|0"iQ7LM$KةL&FEP^dxDRu {r#N8lihbДt>)'eo>DϩiTgcaJtw2]o7bAc<ɑ9 ǥ88` ;:Yޗj̓Y7z P.Y\^lUP_e7{awVD( Y*hm KBNI#g 閼r\ }ꚇ#'j`>;עH}lJkRA0Iʺ[|)5#)ԎU~}XLŒT[RyedcAܱiWez{ Uoj<},5ʎ4?bՔBKM^ݨ6uE,3eNWQSm@,ol>M&L|,fxPKr+ (VPTKB Cj,9T0 _pV ew ob0 +v^Lk9a ,-k14hLf"0y #[5]MO!єF]Wߙ?s`<\?=]eh,|X#oh2MGϭ3ӴW@X꓂𣧯WGXch]U15oj / ?:Z08u,ēmDZ>R!JSQj)"˹Fl ulc)o; cEW߲&(5_qZR7X_9W#^kF6eY,ODYoJkBLgCR4BҌ\R9ڏ_[_q%#1 5IAG0P,˻+٨d Xuo)uf   a=瞞+ ESkYZ_cQa=SzD1~wYm )d]Gط#$Kժ?r(W\1嗖&FCVekE"έxU4qS0Ң sI\YLlO.#E}+ wG1ɌlQ(yM'f{VA0?ٱ;ufdM{7c}+x/umNEKϢJTirdž\Id&PV{WJ>Ĕy"h\?8ShMA 8ዖӕRTy7S {wT=;Nɍ3=oV[o W(} ~6O|۽d3cMx-}ʂ̄zަTr F<̦(Ơ :GcJa֡9/BJ ;SbU:$G"R+$EOy9j$I N*<לkLwИA̰"#&EdmiDl$I߉бPLNksW7Wst$ڼ!XRTE )ˍcp,4 %Qp٣iAm~6G275Myϐpj Z5݋>``JǒPMl@D[hJnpiqذrZ60O|NhntXZ6)ZM1ނ#+3yތ=SrݺD e¹ZXAi[0W2:޴UO0=U{{%0Ќ$QmD'y/}H`YDӐ}"xIMfkએ\>fnhDyޜS4m dF%TCr _|rM Q Qλ$"nG/ݭ*ŊV;E:%V&٫`G:nj]Z,YGʗ}A %Zmt2 xD KNGeFI8s"jvsy`{-a+P,fG8HzaQ-bFm'{ u4 .;>UDx27l.ZvvKvY񮟋;1:崠|*)zh2i㯮{v-H܇P>M]az t?E8fvǨw<"p{wV'tK_ngBMCG( r7/O'[j9-Ax[k8cBm{f9 /98 ަ'St .4g_rF9B56XrZe!ezXx@DG;mx a&eҿJՇ[ƏN b`P9'?lF6ϸ ¦"s{@j׈ q)tCIA fbbT_ۍ mh)%N%RG< FnHl]kyw$O #ڈ{ ZJPŁWdS(B͋B!!OҟdU/OIz鉍s͞_\ CSҗo~}ՂKmv6N++-ZU(Ę[U③h51gGeNQ()T/Aݰ!j"ǿ-JVK|b!ξloFX&QoC @L#58X!1 Cw2wh=*QKjV hads!\vI=ۮcxTJH-vS}P6te59m+zȊ TL!bɿtzi!OГQ=3.`8*٣iĹ^3&k__=%W p7jqiW? .!]-*|-d!/In,DCChtshGP|^⺼k^$98ݺSdXK~WGRdg'ZMV`rJ;f|DF lDn .*K{H~Wf9/`k"-`@hB%+aF."LVx&MN8VkWįȅFA}dLw}*Q׹ayb z { 2ƳJ)k(6 pou[LNFnO_EH-&8bF(}$ʒFڷy}peWͮ` E)u:Ϗ DI*l:yq6.A.5ɢXE͕Op2*lӃ{uKCϋ^2^rpÔCyp>Ly'5vJǏ2B 5 P;DiW_qS=UZ=p[ĉ}TbW2՚yh8_/!LL-,N\|1WGDH Y6!BAiF,evRPlU(92R8׊l2,i <]H#&Ȇ.[TZW߸&c+kpīJ Cb%!]+{{Ԉ5Y\NY{EN1 +fΤi%Q ^:n֐ $ fx8i1&U`DugxFA5؞XYe%`uuRטDv`PA5_>ᤐaMqS )<.E%'` sBx.VTJ}JO6.J?e`41swhi)seCQ៪Tym/FH9귷"$am?^9-H˓E+Ԥ+=['15JJ5'rJ_11\bu67(i3[WǺ?O~wv#_s_*KhoK lA5ܧqw$B\ JŽ13 I8?:u0Z tGT;R㪇ƌ97>cC%9Iѥ ~b9*,~Ԧb=\GDMPMj>EfMD [T%?b QCF'"8<)\L^jh" Vp}*26l0/@V<Ł^<6c_Do!bʥ?7@R)5w|-^%V.)WB)of0QyU|?23յ8$^Z ]l̉L⁸^ nYJ [hG(:%cûu*haz+EڶjyȪ~LUYbZ7`C v%&Vaa G1LoBXAwG]NVfA ?yvz"9ɻ" Q-PSlDjCHJWQXaCW`0 ,.G;x^nPu1XElE8|Mn"፸iՂ5,\x }'u3L詞!iZge=r޶]pɞ\H*=WшϮH uwx7aVr孠?^'> ІrJX.8hw*3oU!y5lO-ʐ]Nv~ \V۔,@<Pхв ?o9w(E7K_T;i p)Ɯ@*+K;X #S4+dOcHoZ#NCT*mZH7> K_:, 4'щoæp>óߢL~ RޞQ2I7v5=g"Ω/N']IMiDEh-Ryb720<I"] hL -9{N`oa?.)X\]r%b07LNJ2i~r!oO#>M0t5 \JDC(;7+,є3x?}-]Jsvz&]yM\\H{qoPlRw{lo"T㣿9\V`U\,V)<+] zD _`5շDV% PAL-!9] ( ^FAM>ޠ0XOk%<_eJG .o Zzr 2k,`Rѝs%HbWh+trpoG!'T=V{SggerBJ\/SNM.+$kƁSf>!sse#1&r x4K;MtEt"t8oJ2b\8űoQEȪS'6**|6T;^r,uWL̐n=e`]Jse$,zơ+uWo\?2Ƽ &Fp ` ,1bTz~Ǧ 'g2pX 5"aG8Qzu Ռ &6Q3XjU H7ASUխzA(/qIq'H|xai$.C:TlB ?7o y`6Κ≔]@SDKH0nR0o .Lc80[&5煘&Vu7 ٙonddv9 (>cg@kp9sT L]uCRN!44ddƖGO0N0$*ޘcO\ 7_xOK9'>;W+ҵzLIԏ*2PE" [XQvp%Az* O(V -ϩ@^W3ғT"(Su7yGFn ?p}Ls.T'BL&v5 SX`9fhbޘ.1@0Vx}[">9YM"\7GD|uDxZT( B[X6ы"-cS[IJIQHWOA5[KI+굊ùÅrΐU#I?ɼRT52!d|$9ܸ#3d q\G ~M]J&Æ ^|֫%a$\8;( Srʴr5ikeo8+ v!ZOs=Š>{&Q9ˢ;Пo'qX`^Tt]k/x|+bߨP Β]4EzBj; Mݑp]ql,]jIA0^51GPH$9 #O>")5oZDž};O++ٍ@v7u*?.1JسJiR/T R ha?zvUUa:i[s4kW=$'t٦Vdk3JvSCc5 cT3XLsKYN)U JVOd10>$H[j6D4aF^/'ȼB0$"Mf^:-O=c[Y,?*WLog鳗S]F]*Y UC'歈1K~z~f\: C:s~󣦺~D <=ٌIؖ_BN0dS{eUxC(?cE!ʐcG/o&PVNĘvwߖj^)SC[%缶9>(BʱLO΀?By,Y}gsV;6eu&fفhl]Va]H]y\OIP_.5|XUv_E"ꮐof0="+!a>ډa}锽!`yJ\@/H3ߓRS'قHª@{@WNs f ++xsݨC F]M63cD~? 1ޒ2-a 6ZqHCO,K0f@vG>rIAH|XKEZ.i|؃ ^D(LVk0OHi: de+ڼ[y]zwZvET-裍YI=I`m2nsk?Xr /̌nza"c˔f'b5皷-~899CYkw!}dv)8#L_ "~nI;dh!z!Y,4 }Pk]ܛ;tdBV4U~< 녺z 5B.W?_fΖw@nZF䰏spKrژ&m87BE-H!< H') YvAH:C+gb)EP_굻{..sU3 3^s5zŸ#z xqZnyz 6fu@@L$I>PPoCj~JC+"6.TYrZЗG_&hT8ʃy ϼ:3po)v`1NZW$} ;Wc!E/lA'aO#KA/C[)AVlED.9bpR^0x@wԓ.,A>_Sە-JK&3{)R<3TP>!7@)&PmHļ_F{p˙nВ :# L&QВMS {_[yA`˓!a::3 [eLxv϶zk:~ALj p,p=2 0} u!:_DW:C:Ё՛M G [dV~Ɂ-+CQDV[]٧/!Ɍ7Kvh̙ `ܾdCfw[CcT k|i0-ˆ\6!4Ĭ?a=>w6KڦT3Vfe"!sK{k V89"S!dB t|moǽZrf&z"66amf]1K8gʢyQQl{T7ts=nNG|<*t(l8=~Y |ĵo4NwڷyJfYk~$젩_K=Xc3IprǙ!A:F{iH9GhYx<q|7nE*ɚ|չqŹGFhRQV6UR2R5s-2aJ(YVVdin{ pKZ, 7}vi<`Щ]HU{yI;Vݚ; fEp. D:YۏK8y#+|#Y>ZܠP<%-hsT"d7L"6V>lqn/cǵV, :Fٹڋ͔y9jN̷d]ե!k yq$f;7O:~X b &+ FWuII6'%{B_ ,׽SsRӆ)/ݓtUoW H\'<{Q7m,e$ \vӊLps0e.*^FP6Sё|-f*ϱgjgdaxE goza]Cg1L CS}D>OdЈ  kkRz r\ ϺZjþtԦ0O )/Rr%VSŔhD ҿmh&TDmBkNY[>bvA|w;F+j/ EGEazsRJ,UV3IEWf+GIsEgW73&Q&^5}sGU lH$rSLh7goD U+C&}dc>ۛxy/-JI+HP#T׻dS$s^H H)8\ ~VYAt\Pf"=:6j5qK zxxa-hw%ͥw+EuMj&vWJM!#TW<94a(4ؘ|,s;U&,0or:0@͞.ev< Qc<[n:+='9u]Ҳ'bIT2j``VZ$=\SHeA-Xs!T"e٭$/VM &qԁ1'C\P˷3&ԇ(. N,|ۑulck1ʫi<}&*tCCO4t2b<{$?|EwsI&8_`@&hR7-B#:$dc/,H bd}\xj!YY0!Nft a.l<'8ʟ;& ex)l!VW0ZlԋjgDHF ^ia/Mdh_׎xTT$ޟlgnt}U^9M,y&[CU|h\30(Ki&mzhgpxwa`x7-svG?{7Kv@in!*8z+ქ1R!tp_+Km9__b,EuH?=RKC=jɟ<k_Z1?Poa42M<Շ*eJ6z^SgNjaQ.fB[9 G賒p쏞.͘ -0"i8}hO@{;_(!#{In>p=Vizn\{b2 cL)lXCY,)Ǥd!`18ZG !B~݌'2RG x+J\-ǀA.ݨMo&:8h꠱`Exd)f:,99ܚY2ͱL,7Y?4A@Y)nG|IT)=Aك[Lm7s}"w U)nKӝ%7hrIe4hXΨ5c]}hҾ&1b)%ku;K)(_^]?+4wAս^@ 3=i Qw-fc<;?hǭ=\/C˭A|A|ʬyTqpa!B>7ӊZodG 8ݬuMi }O!}K^G&AI;]=:cajѷ*^zD^EA92•qu߿)jx"K0x M2sRqC֛׶Aq!;/;_8B6gu Խxoٰ,Ri,k@ ӱLI,a(گ<6u΋툉ә3 ?+1?mu^9hNj35~Uꊅ)Iact֊,\O9D&DA~ A3a\`1Q+PFg7)*s{bRErno )2 ذQq%G[b {&h%)`RDsL߈}S>cF-Uz[iƿټ=՜(}0 n=\(rл3|F.HZȚ/N.@{d?pV]cjaɲux;aPKB^m!AP029s˹멑e| !yiXR\P])lg e[k:&) JWNLɂ)&n]W.;jqd{HȞeكYy}[(oiÜVKˋVeN&Nϛ*J|.7}Ik33,dA'^}TK;.Z$ dQQ/>Jn _z 8L\MmUm-ܒ.^!FȞ$\=aD_Xo9ʡ{ ɽ{CxcO;6 PT̛֠G.Ln"p S+ցw89D@ 1*8y)P`  Za̒Dՙ)9s5}/t37=8J zoNH׀+t%nt QrIؠl ;Sf$zSŏiR64& kcaFBvSMj&1^w%Ok72(u3nNr w܈&6YO*3JPwWDiI 6ouP7Fgs53>nGsx$YԖ"\24YKCQϳۃB'ƢwVy:Wi=`XĴ "6 ΕZmW{jsÄOlM; '!6MgN Q..`-pa%ӭ.eT;^εi'XHN!>ї_]YH fVȣo7Yqk\ 5 jYsQƴt/q+jiG$gb Q6"zU4F.'DlϢAeZ!vdgڟ.@)#Aim>Um9FU ’`SӰsUcb'GfXnjr­mdb>d63D4 TX2&L/2;?eBZIC N@.V\t=1sT" W/5P:_3ws*t=Bq=)Tk<- Y!f:-X#g|jEA6bw7"!:;*N'ӽX2 $db;4d$}hTs-N*:xGR^۟@D+v1ǶHY*8 \MŌOxp*֍HL]_qi_ˑ_E*>TJ<Ì\FRDċ1=ŴfN0}yS%QS+;XL"{@e0̂r$8Yzw"@0 e\)dx(TȃpffʝzuMxv`J:E"ښz/ϬKDt"qyb9"ȑfE rGY;RWY|V1]C`#ul\ J8qEaɀe~aY;Jo\R ܙPZit KoIυNʁi?:rG2j `\ X~aTAA' oZvҁGG+TOdTmX&9%+.on g& T1mlىs_?OX2x Eӏ}_JI/MXĞpc] Xb/ѫp2}h A{% mL|&0b=+$@vhf~քL?p:V6rF#@^U =]i(NϨ!A||#AH djKE:rѳm.c:R- A/ SQZe}7J?AF. BۦAK.ؑ@`9|4S\Lhr&M>|6zb#a"5G-TvR1PvC QQ㛑6neH6w-2JƛWЌ17MQ '_2;~Lf7`wIaaG$Xڢt}fVD'O8Ц!>&ɾjgӗ-5 UhP%٬"m=$ ,XSJOЄIME7=4&ф:R1h }}KGee^eC 1P}mqt8[\dp" "/[ mq`iY)E?u~#pzA "@撁W@n Ҁs:)W,Dh/W,RqAra8dJ%TD]ఁJEo֣YǖMS 8f 1"8ж_ Z#2M;1σ=zfElwuɛ钪EiH" 1z iw\> JY~߉]h{&tL_R*C;gQJ|)=4o۹^X`)%!<:tѻA2giXKk:ZyribbΨ7 qRrSxF8]aq&].J[+[fR1(8WUXOyc/hwLZ}# YU*%XZj"]BgwlSy\{luS{*(!`#7 5=+p`]`!zfB"UXC;  Gu L :˹)"h:L:K";".C&cjt[ahsc%sխG1gpFzy 22)厁hB;5~G/2F/%g\hxhWtCěF3k57MXNΔMgHkEwNdlXoZ1(MMueytW?WâSR.5Ov'8f,S"e4V@]HD]`YfK2zBwS@od~6+-t9yp?^FCOU:O[>zD(_+դ,h ~&O|BM'Hj;4tC]+kvhjb`Y=q*0vlH;ś>!CL, uF/(0ؠ!`ebs4hHx`3*T*' v[,[;à~7w.8.5}Z<\yM=]5^|G>#tdDB6@裄#a Pe!:z Fm7$ǔŮ"j£1xRe{k%)" UA p?VĦبf, 1טwJ CZ-Vu|7uvLŞ0w[ ]@~-F$a49ak%Z]Ԩv]o-g7 nsrs/{0#(`h/RRp8^y!>`F-ON~U\؀ n/"7%X.+ϡ?N8t&lTNQԝ]cn{%_zb̦4lZ:cO:a!?ڋ%{DG%Ei9_f"ˠ!(19"I*b-!Lw2ױ`ZZЇWRS.># )&yoֳfK0UL8:Ma+lEɿ6}V lt! z)1&J5[9+]v\RFu^SKS|\MHDFN.L]N=@;\x:+nū瑔TdX+ +uM>W L37BC|[}µ* -5īzqPӞmaOQIikȴ$N 2YYr SЂa¹ \v"g$, "W3>5M8sĖR `il9Ɵv 3e"uuWYp0,`rYzx+3L?c>:zWu/ca*pFIy0rgm~DL*YOe#ap?q8r8BDV2a{dSpanA=o#^7a45.}2; %W'raSʁM ~$U]Egx#!5 RX;Ri>(qɗ)k ~L0n.W Jo9Ng6uh:@[tܠ`Ͼ7m`9VY#L]nzSN˂q~Ob'~*4%ԼDוuoߧ{;Zlߔ0pM)&۔{;O֬})Nķ9ptfvS`g" fe?6mEwI$ex\n(0*([C9E()4+tcng y`wTdxڼa-ժ'2 m^] MLMR6-ygp]n1T |7O( X- gXGgm^v5&x,Ce5l  AR.dYhxUrzIo1Wdԧt͑`bI9 P{.e88Hʢ&nl^|_̬ Ȃqs0|4od" 6..3;hBnPg[.M6 fɏX"tYhKݚ5"&Aʯ|/Rkk)(o6>!ps9gϳD.dž@;PI. 楺)3{V?0$qJ8!%j`1ui:S2>KPHAA&oJV?lc8[yv'Me-v?DKxPCGԙ>[v>mk:rPGBԅIU+@flisGLΎGڋx2Nea@`'{F Dde~??4n=VmORb10h_U3o ߰uE H;NC>@u6.ůԳZ[@t=ZΓw>~YG_tAš< 1$ĬhS*U6'ϣ06zO@Ϝ>qIufU ieb9 heK'eDA<{Kav3{"Kuq* LBD<%F/S$&=ltW{Ƶw*^v*bGX0+"2WAف{>qM Mbj 2INA4wf[{)ktd<ɜϬAj=Lo;.%]4kuD-`Z3:9eQ e:" X]ר$\S<;>BdpQIXU45F6Ėq >1݁93-\X$UMsnMa{r&0Ta<B|Xk]Nl(&ERp 3޽шub5 ~ŖPw>[w(:8@$V>7psazh$֥ | > M"'xC'*gc՚$)]odrhO%-]Rrk2@0|Ebr99ZVd/wsY76]$Ӕ,XIuJh/- %*e)b$ۃг 4(ٲ@[P+?>XsW[(qaPV Ȃd:l'Oo 9>-T,*1@_EATn֪ktS(þ;UZa/9 Nbv4C~ޛqcՕ&˹6#L|Y41o*yuY%s(U~k7(rT$Sza`[aNe} ..V!7Zʜxm>ү+< y} &us'GbW1i笠Q^i@i5Vpj &+hv '=c3{R2 *X/tL[ =B6_n A { ͍b6A`ƥ]e[[%Xpe)aU>d~[]EKvفs'Wlz TPu5ˆ Y5j^Cr3+\H͜yOSeE¨Lgc}c=:ei;iXA}4S*9贁Zd塹Ǐٶ3}fV2< G1N{|5Kl=?Dl.? [U3].W©aە107Ys-)ftV$x[v.[?wn?Ȫk_5*:4jJt=At !00$L52uRA[ Z4H?ǒ:4X@hk '2L>I /zKtʹ ͇sf Mo̍>*2=l czXR[bZ*KHJTXGU?%:-$PYmCw`ֻLe7=yCA_65p}:SR{wWK- &,738Bq %9bYwRahVtz;*m=GeNGJ e /^Jnti7(_#@& I/ O`2g?umU~q痟}oFۚp݊,-[NǰHcbYkG^jCz;{|B*,wH'c+vnvn5U?&CnPŢ^6v߫@Y?LRRڵtBBj"[YLSNhD1ڼ}Ih7^CgƇ#b|ЗIXte2aՇsKieJf쥼L$ѾůeFZ@Dz3K*Kԅɖd?I:LmuME_b$ njG#~YXأ >] I xl ʝ2 GPAORI) >f)$CrRkt [g&c4[f r;/ҔX4ޡIjQ3O,!33CK7_0Qp]B߀nsrD"Kcb9q *]5y.BѮ ?HׁS?شjW)?'벟ځ*yk|QA>7Kcaq+e+&F'|=&܈t%TKm>i k}ștp2BcWEԽpPp JeSk@R ՟/evpx^gV2KV8c /9+i1g߄^|SI<l'TP(plji:Bnc!H4p 4cLeqI B@.t8)@6Nf҈ӷ_>kE-Al&!Rr+Hx$(̰dĭ!*z?Z yd[?(x\D"O#ٙV]l|zAwCK|4*,-z6Q#LllHrq/"qfaN3u. hv))Z,}^CQ6WTǤgW顐[[[zug՘J#7Ս泒Vy L8T@iNj. 4LX zɁ#GH^G?=fa[vQ'r. ?f>nb]UIFʹxO00n8'رLT3xd^1pEo`VmU㑵?٪Ȭ _H=PxfUӱŽ`;SQD4u8oV,Mooꅩ|L8Ewn(p#0f$ c")Q]#$ {h:{-k&nљL ځ3ZqQ'm9v;{D0d(^U;j7)\v|=+,oV7wفlܨZũL4mt . P c.wdE[Q<+@ E>qwo2^\ ;LHc&3VFj#Mw 댤C Yrhˇ@*z=yncc4%<-3/IIn6cL>Rm=gk(hoaL`u^S=ui߉gQ U9[&`d9wJs bq߅4'(:0? ڎx!Ev@'=հ7xo[wWSxXcĖUl20ոe t f՚ +C r)= E}x4ZddOX4&wS\PUw0[J@}{GV&"C!!TN;{P͇и`2"ѓ6ώ-~kxFEnu[$Րr|s(C&:)ӹrD"?`;sK2VSv`*8r%CY'|gnFRXj>cuV[U?,ϢL@sscEJS#%D$Dneq|O¼0ah =_!ΗgW+36mX*ys{8w<;DD7bi 0+5sNA!~TIG@=W< w`@M9!Rtek JOŴǠ#SpUP02FυE"$e0YvA3<׿l˜1J t`_>bdz Tc]N}yVwPI^!xFf7!\2vtve[7I;aϭTs1@ dj/`ĿN:DD+~ #5M & y 񉭚]3Ūhٺn15|Hg9`_OEGt-R}*xl6OU*sy`uIvY¾5aY&pу/ݚm425XTŖXh ,QǓ*I1L!c#ʆĀ $]O.1)jN+ۻNA'*1|N3}(/MS@hz25y.AF|۫NƱk;. }8@RK1qErtl 3^kɬ͸ˆ`^RWb'j'/sF;:H)b0?FG 7[d|39Lzԋ]g 5hS@yHL{^z$Ec()xED4^;kq $k " @L䴨 {2aCJkd`2qz q?#kLHckrn7&^2I]du7z8ׯpփj5B"29lh^.A%Hdse3AHFfyr(R^rcO9{Z뭑 od .TT$vΎQu͍^q!̈́52XZoRYԜwB2C:&8Z:Q(b>_sPFPw uIXbU&$HG?colƔrVQbтmS϶B?X-.8#t؍a%4.'dViUrۍJ)J=5_Rr$VsCW3A"&NYMOkhMv*VqDc؅xa@ O2=$  ("2L8@hKsc Ԇޝ{>)"e_mPNoΧSkh"xo`W bV3[jCصժ(Z{*mCĕ#^pgwwz:;.Ýs1AC pB0"9351o??Z@DI[87ˣ>GG-}C'Qmr)7A/2HkO%LI,:gWMv [Gձ^VQÛiS1y~{bM7jA_% V(e~T)!Lj2wO6YkqB\gvOxA ,zuN͋0XZK¿',`2_Ni5 U(>^ɗ_UudW+~ŭA}Ƃ%Du~q&:o9'31'G'Q?s]%_*?R XV Ͳ}9UFri}eWPqjnz-sԖ(;'HGVkL46N׽f0{(Aj3u@wjХ;e'lzXV~^ fz10O 0qUw5)F2YSzl+TbrNH[C)~%e>vFJdfK&gb!t;E&s߹9{G3.a3j˰}Fr>;A.0>UUHJiɂǑYz4 $ZU[0 a<2NTiF])T4Hwj' iƯD6# ܳ+Ue)d[ŧF0VJ[C$Cu F2IS4?tK8Lk#(<c>6 M=/Z$rÚ+EƈW `pICdeb 諛A}$K׶[z7n˪`T}_0M˨/MNZ|wˑԔZʌ{yUx :l.ǒ8} fْۋϤ t`z s OU{PO!OBPWff4 BXZ#ϯHpD|B =}FŞk$GXW< C&G2SJF;qQEQwđ9:FiBuיִ NuFوntmo,Y~9'NH8y+$0z,$&LH&*1*˭~0 =ߠ3tfcW-YѺ3Ճa ]Zhr %Ii!}ܫ%UsC"(S”w/F~qCY((CT/!WN Pz6ۯ&:ND`m*U]/RTh]/K"ӋX7MGv';HpqJo_rRdIž!VM' pʢ%3j~" L je𮻼mVI?`dN+бhERIec@–m? k}jh~?Z>jj0톖ܽ/ƓaN)B@;P,vɌ<~P7v08>$X%( =C.nVwiNl#lڍl+P2Į_ZAzj@-ĵ8f7Rg;Ph7jJxC;kMHfKhvZ>.=$ (&N &r"c7 ہn!mEiQwCN9p[BQSHkSSo=pсs >Sg6ǰZ\x^niDC?>}YS 6urF*x WܶK4M^=O;KA:ݒq&A8ѝTv' vㅰlq XAoߚ1DwZp^#gL?'e~/1%E"h~`nWE مR~t:+7$m\׀8'"Hvb;]cME ||94KͤUg4MD9AQfycND_F}v?}&iC *3oe :Ƌj7}l<:-1pv67GjфBǩ0QG@9^ CY tRC Í#*-"_42z,qOb#uҎLe)Cѫ.26֎ZHIq0wB%BoaBfUIȮb`}.aF#*} `emᗋvݲHC?/KMCГAce$l(HEm &:{i4eN_jo6Fl$ U 13IHCF/Кך}c_2$Vd7ӴuI宩ڨYEM:%mu@O%rn͗` J_ DnȠtw a$Ry3l'C Oo63D"]m#)'@s4H嘕ڵNE㹿ؽZ0JsY}0)''$=b"L"7#P,9~B:BĤbI1 / pL)sJdĜ'cS M(m2_G0v}!i hc2qA t)y^يOMMH,KV)ʱ"yOUmog#Hb $rEiLw%֙s?I[u+$֍!-7a.ȱnp"TM&*u0xǭ]nu޵2O>pZ+ j:̀cȴ4@+6hr12}B0 .kdFa(AI_m!%?qƢ[M>X~Ekmګ$%%Ƒy:衳1%^e[B2/Gcl3Ky*v08ϲ\`| $ do7G`2ez_'YV<ޗ69D+ohc_"G14[5b UF8~ g bf}U)lO'-6ΰMrIk+9<_dM]\'5A7,{ܰB!KAQo3y%yզF_W%B)`jE(J0MkѨSW.Sڬ,~_3Ld99+Zّ铰@83h*ڧh'~ rIzT2< -.&X zP~sIeQx`Fǧ̬(kYSS\D+m/rLz|Z ؿeF8CU,cIWwy1ܪ[okHP'/+?Rץ9Yu/D kMKрL*=v|0F+WNJukJ6LKj..jo[ž6=;Cf Ћ6_c2(1,+d`.Ȫj%h7U<~jJ=5!G,b 6Uɝ2)M`eǞ5l f ZafsfvNjEr$ㆎ%>:YQѧWW9 !R)`\R@v:#@5V=~x5k' VRY#ta#(֙́F6\4W%Oh5<1eP=mC2 3!|ݸKstP3m;mCk-|gd1U *,M7Zì}Z>Ƥ^X s%bܺ ]Tbl F5@z}ȹ=)L E}ëܕLJQ$]#8z[ j_#L=,VˆKŸb59d8zK]{aϒr+UB ť :NMȣyCCE(U*myFa֖Uwc4v  yyِjJqM,M"57,YE/ _T|! 4'wd{vN6lj/`}cT0pZZxo 􁯁 ' AT&& rl1 hߩ%1+WougSJr p.rZ*G ,*aʱnJ\~!MV< S:a_ݎKQqa<ՄynZ.WkD }ɒǪҜ#r]N_:bisa)HL `xCƲ_HS|v~ aq)~q?t!'9/4 H%c(gTF n؆J8t'-^ttQH+#us4,'X) IO{QFQ0M+-[>*L=LGhx?x/R|Ub3?) e}6\F&Y3zcro8o|/8 c!LBzg$ײ.|iF50T/hȎ4xL2Jiny m9df/ I#i4QA8Lrer"BڢEҔmg> GiZbbv%f c,<Da `?/  ,;#w2a! pܕ?y753CKhVU Wh]-֗  OV~q1\0K$U=/ɇw[;K0%:OFWFGQShyã"+>*IeH?JO1egS+_,CH)-wb!ؕP *P&Ç)⯟M>ӕw'5k7`C`i:f,Vjo2w6oƫIKK@3c4ԻU+O)܊j:$/b\a֘ %󡒽t$'FV)t%#K쵌\ġH#-] n_FnCeهߩ=tA'Z*2D4an`&[l F׃Xiw#9L`utk\%b_r;%3dH:[ZuS2vH!ӧo ;EwmF;)-%:fBL[Tmx ` P+V79P|X)ȑov|0Lk(,x;}>CtIZa@Ζ3OZw{7Ѿ"3utVdO{.H0?}uE;46ֳQMR(shc)^`dv_]ygmRm=0#qHqXbeİgOV:ͨ&!N$vUu^?a(X?3;e\j[-=4165-2.S A[0~?h2 W)BweUYCr K-K^( oG|:efh&_'eEͧ/<ȍA-)M/3>MOB*KzQ+מ1"F_d(?T`6wDy/}˹Ћ!?;mĂO;j Γs7H=Sjuz2ketJs<@4LLђ_Ho-ˮi嫷DXazynd0=r6<M2Cy#P󮂉jsgF OʣuR u0Aa_aAQe3doiV*ÁC`S t_6xFh2)"C4|$gZq*-O˘>&p6X8Vn2lйް485M˵%cdn/ S WfQudy|XwgY%L-FKd>e䘌7Qx:"ʿ;a]q. 9.AzC~Sϣ6k F=1 Jf>aHX}/S9&t(ڱv{nG-6y)SZbe`R{V a*o7N0}fJ wu{` nۯTaxS0u+\0@ T_k~,Lt~ҁbZ?5pu̒{P%!Ӹ!.\ ɴt8.`ԉ-X@9=`t% 2BB _tEFE%Ta(Qi2C>StT,lx/.o֜03=0wd~xiO4tM0ФP"Z{g?Zc 䚕`@(mֳݶ$pKaiʲ}0AiW7B$yBGTmfCL39Mv=mU D:e.m185 3~|.CW ?\if`BtLE({G> 'DaUN:6ʷl lY IkJ:JpQDmh&7K?N z6]Ôg`^2* e}#Gf][4a[rq2In|9^#LbP(A$7`X:=u7 mq-ߊ& CwrD%STOAn&Y<.pT~M84t.  `;K>Uh*(KZ+AW1ѤTx]sVhέ%|#s'ZL[F;I5CruB-|f|VYb)u2 /P~G8 pqtr>6;WC2+¼>JSkZ84gru6|Po_'AݐB^ZŎ fv^U7d9B0z6ץ\TN[m *HX<YZM^ӒF=OswXgѧH~q\pTF`B& |ۊ94H ZT{F~q'M5_Ħh,#$~w B:hӴ[ۿci?QO<n7T;a8qB>=SJk֠" y,?9`ӋPpl# 'cCPbVt/ \vetvb3 RU gr%u Ahv,w3/,<%n.m[CGeM^؆0tj@O& q oZV$&|^G|im=ՊTP|=a$jMqK*13d^Xlmz!yEO"eZbha'bP vU\V?Tqduu~7l$G?x|t~F?ۻTЪIXXtz``ŶD3^[ؾ#w!?PDU*HPru#WK<qD'PbVm̓\9#V!#޳i)nѣ:~68-uUm N/Oxt[rzA2LJD{C`KUOڹ¥d,[C3au*M֤b`L/%En>">$T~ )xHg_*Xh@@ljY8gLN]:/aSUyRZ=&I r1Gz,8gd#GsJCP;%7짒;ׂ.7T?TY"/ͱ0}3 <]PQW3ٍ }CliLLSv'Sds-ܱ[H"b;nz*?ygmybgבL_f3'J>O(VpBeti;|UbӨ0: 9կK_kIBch6XT=|  A?o ŤںlH@!Aqg:yoA& &)Ji}$9/mL.[2>ZKíT+[OK~.&[sޥ }Vn;He㈶.,Q["P_nE,\ 3Nj(ڼ ǽDP rhϜi"S;vY`[Zqgf$ :4sI0T(ŮرiD ;CԸXRW.^Rr{-/GÖZ5foͩȉQ.?r_o*"s%* V3kn^zS(ՖbrW k T]M\05F: A̲ 8xc iWng}Cõa'{L{3aɕ WeUQvb8-`ْ](K0~bFLH9'k7 *S5kl \.fD?d>\9F|?8QUJ㵰_SIOQv0!dU*+HNxuV˒ ~A>#0;Ha81䇩WV:`]N&INБ`(zDwԀz'\h"9tIBCud??#/n=KU'"р- ;<å0Rh Cd`i\kL}ܫֳ JQ ܱc2y4ףۿp%d%P8 /_% zAvYDO(ǜX * yPZc Kl~JnpfGA5f=ruO**Pp3=&3ΰ{/Pp+L'_ej 2(aR$F^keJZyJ2M +VBC5")h 6̗=H]{!aAFJҸL`VK%^`|Ue=Vg dy?K=#04у(ѓeD-ىY)SSph T}{ė&nyh9$!UNМQ2 ߯u ƈ6~f e*߄aw+gB zdxZ̩½f)c![6];2qh8 d{k)(Ja avxjA\]ʵ•{`2 =Ļkc0֟AoJDLx/Hf5 &kC=D˽dhR|͍&YܜLxMD}J{z :{iD@ T+?gZ|lI+^Á1 rIU9O|OYp8<ɰ~,*P{f|:KK/CV,md)JHX{(T639P6H† fd])>5EJэhا?=dPh x@8͓Vx<N.W&QQ: T*j"|Eؙod)7VFzLk#o_)PfXߨ֥hW=nWn)OOzj 3|ɝWUE{J3!6[b{RB ʐ+i6,7L5fDdU/,sQ_ͨW~w (١ͤ EskfUb0$mZAFK:f{_!&B]kX fDMhQYVభ ňڤєX^Z0 k 9R2GuGF! K"5.6^>G;ҰB_ ;G0uV /}8NFkt4*W3d]uqdݻQ6Eݎq^)"5V)V)GQc9_ImTIEAR\0 }M=uqx?>'v}:BuXiLk.Q!׮պkʕc#2\эH`I #W UEC7=S),uYfv_%&7`X |zn 6۰v$N;d $a=YQ|lj w_u[F6U՞#HS.WI,SU|mJbw:+f^hxOッ&\ yVe3U뜋,2Po.^C7la2Cw*i'z|߾X۹kA(HS #@vP; 2b 7tY2K~/e`ަ~<ؗ?T޶!AP }= JJ U$D_tLPGU%II~^`ڷ>j NӋGAy-Z̫c`^G(ѭdys$dF|ЅԨ.,πGgc rXw,iֳYS̪+ pb2DԴ£WFUZޫI=P䦰uh>jK+!qV$|EaE+lc8j רaaG\lK.UzASX狩lsum.GEz'N㟨f(YEcep]\"4Xgb3B1{ kO>A/6zOؘg9 N>;VA{7FKwNuU)jN;.:j Z4tCr.Aj1Ld%#ZQ*P%o kP[*)B QmpV_Swx=)v?Rڶ'=fP15co "H@YwL+5Vd`:&Ӝm2E;9WTd.d.۔Y 84ajp(>{n*QC tdzfOf;ʨ.rRnԞ'mFW r'e-ro"0Җ#>*ζ(ɁBX[tz61B98H ">/c'ԒyCo@AếW.{Vˍ iL'>I[73bS2rL]TloR7^bcOM"'۱!b@m FUw&gEbeL'w<31MyliW?wfymթG=.ًX́;n]PP]% {!fgk\KԱu_kītx3CA-N9;*|_}bilTř3ѢlBVBh|0Vhr^]&Cǎeb0} PR>O6KcE+pz(a#9jHG*S/vWYm+3[uR&^(:ГcL9*a3] ?T'3@ m@gf9t5~`e $hPH1nG}`&8|e6dG:IB*]Vx % X_X3h6H痀>&IӾ1 aq`G(hԯ/H^me淪7|eSMPF}k-=GgWxm66w=jlnQI.,}l?ęm[d5yR⯛/p v?^$C4.oRTovIݜ?S.gI| Sw?-$|A|%Y1sZ闅 Ԥ^~?7w˪+J򏾶v;lXNWyPLO0B-S݃?TeMQJ{A |Yh۷|Ǜ7d"ˎfa/P#ǃkmݖnG?I8wF;z'pe'P(}RtUʣ\f|V~qGk;k ~jHrSk3,D.`mX \ Ev̖RU׿8^N*'I/ f#aGC-s?bʷdwh}̊qȉtρP. UvNH{U6F臎 x-':@Cݎ;euĒ9a.,όD4m"PoX-噋$>'EQ֐Z!N<#g*{CŐ 2χwFg0yT/ڌ%\,qf>b,%zlpl⢼QF&ntUW ʳNT1㲬ڗJ)YΖ翓]ɴi# W떋7w[0+4E}'9=)9LLNF% 3@>ʏʼ^>2%OO1~翉 WH)mm#['6a@ov"Kf-]8|0I5K!,,ȲПlb0#Smuޟ]\hmmiӆsl !lb0͏Z]YS6KXdgB[9rG$IA0Y\HY(Mu؇@Mϣ۳o_-rKoVױf]ӓ!?@A B;|hh#/BܗIn"̠R2q8ğʙ+ sP9zN=[N Íe/Sk|9uO`GV Mk!H+6j1M8dT YIfk`VxU2˯I;lb9fd6agrtZL!b|biM@]C~Ϳa}P&d}?Rk*r?A;GjI_F_mncٍAAk}eBfʓ62M 2ډN]U6Tma ũAx\5@W'HҋDʦ1+$jǎ2 x^IHp=aciɂL@6ϙlb:Nnyr$q:96 GƗs"#bzxIAf;7TF~(<+̀Fo|iqFF%TUʐq46{9n|%=ݡK-Tb5a|jAٓ#A%*IzZʉGC2)QJ[qm:Y%hҦ;>a_td1/ii/T,astg0Dop*vh{i~vzKK-GO~``ꈙ#򆃻gY^3e ~8e Lᆫ|Y`yzs@ 0w+o b摠>£Ñbֱ i5X'TH{!/r~y{(:5 Ulv@'Rѵ&0+7Ƚv\,;KCL.8ӐI6 9],=h9W]ozzՔJg4_elEW8R3jo:a+f""]`30m;Ճx|cUj&X3_M Afs`wxK|¿-{0#)O2da`%57}-Eets fiۥZr~<5`J)is䐜9}p5p0K[h a*gW5QG0xF 8Q~N\gfNAfju||c )|1aӆB~Lm!6.,/Dδ}|M~fX\ibxl Ɂ;Iǹy'} !chAh0um,HFV$6E50f+>yN"zlP;6@&Is/yA訳|\ }ũ2"a~޿udf sc/ ?Y>WzdmJsځS(;g9!lMDF+*~UXz zF)4:' {.+ GnVb*0{O%:INmWC~b-zlU٩ۊ-uXlq;dzMBʸ!Oыr(sKk@Ov献ɺ| ;fC?oarۋۃ AZY*~!|涃>?$}-mtW}Pү5U$vO{.EӃMH`Bz -FXd_w{3L MPm-ӦqX?`H/XϓR^Lc |O $=oA7`] W3e%]y0D&]uRJ9{9qurWM7<,ku*872^E+8;lbQJ8_y^J6lLnK"TDL=9_=c2k31:Wtk]}Q~NrRȎUko<,'&*]%Ug^I⍌PX+SG I3e6xtq-y Yvy3 siư90 8P}?(G'Lq?m:J!2O o=GBȚWvƢ!Nj&h#V!'CD?^X$&0?2/ȅ)![[2+4aQH ߷_OdEO%wL|# ai_f(Z`i);3Mu[Y֓LU|,M<]X"S+9(tҖC9COH}9zNA)8[7@̞զZX;J@ ^) քq5Lmq6",RaNԚ;9]Pnĸ`@1V&/ogn@!Vu^93neBgIV=uC{0{i|uta9V1xW#d ZFeqnwJB6I7SdU'rb(7Q qaw<^0̇3m=q4D;[}Y_J>T\5BBW,9l5:4l:/N'S}bX҂]>6tԥZ-Ios2G1d -n`sTdNnpFa7T_Dh_R?="%W=3l`#nmVF|V}I`) pcc}`NB׾6vfU/Vf4"܋ LU'hGpnNP/Ɯ -Ƽ2]KXyqoZ)<_!2aV46svF_.)h[ W;^zIumwF|~^#7)(AxD0ޕC,OxU>ؠjex\1" ݰC8{CY-3[pagCDoWqدB ~ɀB2못p>b:[fAFC!DaJG叠*b^Ĩ&kSPS5:n2:DS{v->^҅YN*Z7\ ౳XsGj|OEԣC uښYXCQ0I- AТ3S4ҭ-7iS"}:?nbUBI$ t˴:T]JO2J&oSޤ 씳PRLBy:jAFݖ(ihRU;buf.R89_-HϰFh$S: Hc=rOLQ̬{6Qtip^R%BIInN38->zeϗ$'t. %`H~ٖj&(4}9;ӻ0NOc{%ܠ[Q9ߙ)(?-K(Np~CKJW5+F]0[4)#t$Qe^sԡTapeVjpFJ+V|YZvO,g=XLo PM<>|-m%0%XiMi&0efEõ?'I\(ґ}LEW)')6]z^,lYw)>]Jj{v`^ +tEޫ@n=Cf٢@r`Z md-F{Co#DQq^D(<=wwrQA1 z=ާ401rQDO)M (),Mޫv\ ̊j3j9j,XvO0,;60I0ZФ3iڇ XgBaɞPy$ɊD2t{g~#.*2@%3/yE2rnk~L*݆.g]a-P^m rBD}GUt%O 9~/8wW7e"e@UbWܼS7}=yH5hO{zTtՀ5TiȈ7eEVUNt1 u$w>y~m,dg\i>ISW!&hK,tT}Ww(0^ڲʗCQ;4/eڼビ!3YoQ (b^t]{Ý˪Sם]N_J)ip=,NI;܁$xW`Ș9c,Nn`%ua=Z_g^4ADҹʗu;:CSJp‰~Ö\?C%h݂D:\߁3ֱRo-Dtjې[0TɜN:Lj4U9 T@i?E3+=ˡ:dZOw@WiSj`+_O_!}> `2d-GV5&ڨgsL$7ڀJ dͧiit;8LSS*ҷ)Spv(91`%>sw,Gð;|akNpin[BOn߻ 79ފ[XEs&ײ_E| @|!j q4-EYrLjH̫&!ٵuKaDKP DK(R:=`G򓽦ԛ"6yKms pB]e\#T8j]y&&9Fřgll*FN)&gVuzZ ˖h%ahf-}gx5E=GS dw&p 9+e\7EF-BrYArjZy<}l_,F &mH63Pm{ϲ~~naVpOjm;'F]* 7ԝE^7 YQìES'칮t<2 1_ v90vfOy^ E\Al&{wt̕hQSe?rp '4=>bΎuft5sӕk>;qf|4/WD|?,w0ԑA:m>ZD[< -g ]\/0ZiJ@Ms^Drva:+!Qu u3CM!HO!uiyL,2&o LmNYdAt4<$q-s`;9ːoYV~P" [}}˓ZY.H;ZWQ\MAP}+“eFxq/΢ "BJL_{>0%`0rϟT41o &F{˴2mU~5'џu3M;S ʟ )/C&L|Z#OUvWQkߞϺstFnTp~bsɌ= pr12gD& (8_cV8vd#Fta_tAćqIOj#ѐy>4>yAL:@/3gpg/o~(N#+sj kQn/Wѿ- U0γ6p8wiNR~]`Mh%,@Rr!fC9~Zj6U ՘=кEO:V&pӷI5C6:*7No~V,F{P3L??OgzUE$<L~bn,6jۂH׃f,3o)]tQ ̢ܒxPS L6C2#Ua3$G.c ĥ]IZ;}ov9<ƉRV*f1 Ð/YJSg5^{׉{ TDxSPz:cV #Y7zX1"C}EgT%m6 @އ$1XL7\>(V,Pɨ#W}촖  ԵK4a8S ?`Fb*m@6t^C/u).26x| [fF+ ~Džk"9Ba[!e%&6z</A ”ܟpULm^ 989F!I(_ 0d X_Y+'0GGH\|"19zC̈́Y Kg0$2\](mf0٭5@t]7ɜ'V1H 3LG#VxDZryWH8`&E?J#$ %aBʠ .mi&7ĝ^|H*pr,>[9]Mn0후IԜ;*ԖheIYn#xApYFE7oV:n<0WoT|2&`CeъY~啭#{EE:peۏcaa5] d D>x?v`#kAAKx4#qU`JIťqh#} ^!~\@xl߬%깭s1 4p=SÖE$'qԛN! UpM3uu,G<{ > k|YJ[哆1퀞IHĮLjvZaf+/vz= "7y>cw`Z7HF] B$m:\N\kthn.e}Q[V2P^پPF^“C(Aیގd,ٽB5Y. bֺ=\>z-ӓ✚rT @ `vO8&f_@?RHYUhpvGfuJMm ~C5!qs ^?S," 14LIw8mMǤcGeNi!gKu]T(H%[bsA5|{Ke+uQ1Aw{Hn닲vp%zƏj`3줠.t2[ZBGRʋшF< tu# 0+Z*ĊY ~]UNDs_Y;PM _Wew!O^2_uu-2m.m,!RRD YU}2pM{7̔t:1tF뵨0::[fmtpz~J69z3GqсVŵ#sVb`ZܠnV2b+hxzE5|0\.Gv w~>N?3ыu% BL=^%J 8! ]L{3*t7ڍ&2!"m$͟քdq@>C1qgc&HJBJnh ߮O#b/ u'`H~@P7PuK$h%q "R]D?9'Lසé`$,9:SP2 a09Y8R0XCN+r~b cp )~L'MJ\JrT>kb.uAt’f`4 LF`=4yINgLMLmҥ|5G[bO?KklKaD* 2_z1Ϡnsdy '[¨\˅Ha1G Qou]~OX6+'hh"af ͈ UCm8ol}k7#df-<7T;1`EsC }Qpi ݸeNPn;,E/YT| s*v#b^IfPE eAjkM<g$9bѺ3& s[jrcp7-p挼ו!%OD#+Q<ɸ)zdRpgV, d9Y\l6 lhqB kB0^smveOAҥ1q[q}Gd:򍸶OL'm5F!}`DZCPmkv&dۓF<( -1T X[f,]If3~!FE+,iwAY=):銮0$|z-#D $p{&Ê[v)m4bf?BlN4sQ,Q9DpRڀ`+ W^c`Idn…f|VO{;d}`Фq?4e|>>ǽo ްhÍi~fM[nhE@J}[#_ U|?3Hb:~B|KkRh kځS=>&ZYK*/%[MB̻@I6 UJjkK@vFƆt| Roi4kz Am臷/')OBd"!R?Dw2XWM%!ahLb 76i!рwN[<=_̯W +zH4/@"#K6UcϽq\2ڄ.$K0Ru)O?Kx}%3'%_e(πrdq~qZ0ףA j#Yf={.WY/WMՔ(5xz"G$Z h ц^.E{f z~DÐzw_*6MA ت87p]~dpW潋VʞڙYHA8JvH/" {_ d}F!A߼He;}*4$"5I $@&YAp2С ɔ6FH/rݘ[guV95Ti4:&xo7JI,vkFigjmċOB0Nմ} +@lTXyd]T>=J=uAp) c+tL5$}8 R\L`}cܥ'\akgt .qd4 9p^&سaL-)&n'?T7A]R@MF³6?1SxG O% xw셱C`kzO hʄj ~6: ׮t5iוczc}#*IǢzN'?\Iľ#%)/Hu{`J"HψBIo,wi:#+V HFMAk& !u,D,q@̴Y.KҌnZךfpLGl1ց .JW4Sz9ܫgJ4Y -q:]ͩ+Y[8PԞ$KjeOHɥ^*pQ!{MadJb5nUJBRZ\\ynvk_Vux#2WV:MEV`H(W3r' 2KM㵹UdeX]'AޙxŪ+ABo뭤a  cTUx/RLcB56[WP 7=8=[O^WآI7 G툞C2zJdbݚY뫐^['?}%k6G q";N 7ޗ3Rn* 8lhdm8*`בpԡSYaU m{*hZ|rr34C^K~ܶ@Kחɧc# JX,>/xKh7qW^mcj]nT0W';2ůc tBE@Wƣ`a?'Nwd{*qbe ULswa0ymQA@$ X:iK^b[ۯ#SJңd#Q9&aG+gs)KлzȗKR䐘~F=KĖum}l[TbArx ἢTψؔKo;m|_ `cgVh )\Ns& q׮%2ALДp 2HgpaJc c}^feR+4:/ܡNJ<oEx?^g<teBΰ&AO'yiXxP+]cZnj:Q/ M6m٧WAٞU۬.m9 i;`ֺ3xz֕:nl*^'KdNs !Dk"ܝ(J<[߲,FoRc M.q AOk\I.V>tz /jNկ-(:oWfw"{&ōOSz#ͷ-0ÁU G@[?呲\[R$6/D cˡ(DAbfe+Zc'S=3BQԾf_g@ fLRӤ6\ cyߥv iU\1+wr_(13!|MPWK}x  T퐆?bH8K~U|`Un^e#*չ:ݰTŞ$bq7ݮ,m}@Cn3Nt;u}_y({,J]e'W{bCn.6wg#&$EPXH%53CIFEz^M;^|5^ {,]'.׋Jzl .dvQh.c}NZFxI NL7]z~8hlzgW{ 'Z$D>7ϐjJixОJo>Z8;|`<_/`Y &s?HC'\*|ǐV X`'㥡ωM=O-Cݹ:N%\v߷yvLsKuҘ%IcU>hyq¹uYcwG*2ebNmP;hǍ4A8QTRIs",y쓫%v\v$$ʖL[dnp)3f у+rSCg1ҤY3c$TȬMc_ݠ8~gh!}kf o'Ij xHXyKL!YMc~3hs+JRL٬ UZh?@I6MS~f/<W2^XS7'Zr-UE}̅69M˩( vv8./+`sOU)heOk}ṷ P"9MZj09ŧZ2`A.BSZeA: hN[sT⡸4hG9,%HD"$̶A@h\P+SX I<0ҥ9=8ń*q??mxRz ع+,(#eU[DA]`]_G4VDoK7ƿ}%~i~ҢBR,9_hStqɏ=_IKK Rfm1Km7aQùax-7sFVƷ٪2y%tL=#7 Bw6ŌA"88ns~89=Ѝp-ZtK*J;gB.s[<ַS$1P9;"q@5YPZl2`~>9`IPk[ZN<t?&ɞIv`[݇݌&Ex;cQ '̀yfDŽ'ݏKV失Aw<!y8Xf?Oa ##3S>L^D !I.|ZoΊw9> .۟%w;Dc Q!%BÉayFM؁i[ mH e.kc@:kb,n̘Q~z/x?=9|KMw2uC[l3Ő alғxe-yT:w$ a K^ 9/!E,\C`  i< P#5g(ӠqGr~ۮ}껒ر_\6GCQ4k|3dsTJC'e]J <%! Gx҇Z ܪ%&BNuzDtfn>FnЄ&r L&ZDh[KLQa6ϹN +7fx~_zo{mF<:[pgD}I!ZdeO Q^{Hv58ވΑjQbP<'n_Z:ǮKzQ!-a+2E0uu~,T?@!XE|:җ0#̀ =<; nU%N-~rg6S5 @NVV!hQ%O?͸@9'4V/]xXRb4\M$WGLDoxNέ߭V hM_пz/ݨ:5cADFz4n7>*a2Mj$K&\p~ DpS 3ޛsL6o:Pj*\_"n)fLLY95/^uLv{y%Vl7Q3pHD3Y l Cn:gJz|s[ƥ|1 o0?\!#85NNvobu}_&&vauYIIWEčW;;̔{{+" osJgUr~MWA {83nMTdu8 i@{1[MutarRä@E­_u Gb׬Q/Od=S0/eaʅ.F@^6>b76>̗~<.Cw/;8(K,9\'"{b)^V fşrZ>r /~g3 {s`.*cB .ضY\$AB a}-FZ 8|β@Hll|G+*x!!7׈:|JTUtV3Н$Cz,T%SѴOU%[rD^(DBë0]\}Fm~OWaN%،%~7tMBR\t0|&X5ʕ7sDHDAn|PE0FPid\t<"z6{3j';ٻ[f7*E&%CZ\}]?]6$`an8-mc  \*%yX.'>m~nX%OHj$+=YI>q|%UML`3w Tc*\jMʎ㩇Ddzj/OR `n%?oA *|, U8yH\?䗂j( 0t:ܔȸvxnve.:}0ŵ?%{'|D=JN96J]+\z7YmLl 9,'SB4TpozH?hiE+WXD{ p$7*i=s]d~hŦt;w: |1T6g{n8ATkL -?u14*6tӭv,Z2Ӥlz<4Echh!h`\WV cJHhXR.CdU܈0l I*RG%y@A^D8ѥ*z;?hmYB J^P& Ӵ-ExMPn&T7XWd B4Tqg1+U?9Mmq/P 4@ AV6`urkY]%RxTn~޵P-%şTvWzU<Pl5}!"VݼX$iw m/T5_ #X~nZ`IV 8L Eե7O)xsEHM1GυX*>='`{"`:O^D;꼛Vso񇮒##l;:Z}vawd[f}S>'~ʅl'H̞S ߺ@(iѴo*~zQ$Φ_Mt{)\b;lMwb~ڊ;L-x9Gʭ{رIۈMqv~& Une!ޏ ~D69JG@?e2D2֚ s8FBayTaׯg4!c¿Ǘ MRl7Xd sCXCGu+#t$TRHGpM`Z*+MozQ3`:al?r8 o:kbTlT1} ;K6$Н8B3#=O8k9ѼQ"qTOX{os@?=I_LϕQLk`\HjaX~}_$#"Fi?]G?FЈ4-oV6eL==-ζ 2fGC*br'8b9K;UAp*Aeq+()7/Zy%h&Ka[V c ='30:m0(0#;9甤.yfY"O=M+I> ^T7{*NSs!9]^G&{IKG*d1EDwQ6y^!ֈNTu&ud7T{7^+N"JP8TȮ⽣|Q2]WIB6]e# g'rѓ؎FC<%tBJȟIsS:C󇩂rz\}AĺcU-FFai&,ܨ@w?6> 3 Y0̳kjbwi]eϹ CBr8-ې'%)yg7,6O'_1Ys-oK7^^1 Rl@FKT~*eun |ffJJNZY04n;7\K :rW5&mAzYJVVp?͜;_U,l,{DT/|@3IrjTtmĥVw;zP6Y-<09j~*$l@JHpPuPiY —Z޼chyO-pRbeLi5&;VYQ8/MߺNp? bd2H#Ө1YFq22Gvv9: 4tYDXj^C"{yA>tTc~ ՞mHEϟKձv-ǀmn;i8u1'g+#β;>=)7"nyc qҘ߻~ #˨}݋4GuA`zTfΖU . kȻ~U9*!hawk++g2PqNYb`~OxXʠb|55~|g֤]VnII?kgX*7d0=hYy=l\f3[jػ $A~OHHܖn震6LJVFBԉfۅsSX\ ,RCc2B7t:bME 4S ~^ޱqQ,>@U ^Eڡ"sQ k(!W(~traR&P2Eռm.:]G,NjCQi&< 2(O7 \ù8;!O1`MlюعʃoBP5~x`Jv ";<[BVGe1h]wlpDHucxD/,+)NDX9?ǐǦy(MFShS>JcdW !بJpjmкu|)lxPIQsMz">i9Yx(7wMg3;6)ld< a҇cF<2gIKR`N3v8iЦ(FU:yMJ ^s>ڛq@ R@vS.>FoCBKϞc(`Ʊpmx`[vIP wWY'G-5&g>6q8@3X=h i83T+qڎ_1W e"MqY1ܘ`,[L%s(|_V` iWXފ/xVP &yT­5fQ;̟uSJ 9TW/`a [az2s4: ӳ67 s{"zQ!t4} dӯ,u)M"_"R=7{ļ3,B`FqVdQp$Q~l0nx"Vo$H!@*P6m2o@ tk S(½TR=h Зn@ncvWd,ƌep$HbnUX2pV q JZ4/)\2#~5\h{hKtu6SLFtz!n;~=&Jj@yʾ&C̋bgtM0'C;v&z{āe 惠YT@{u8t]ˈeV=o>496 pnn'zX|kF0AZf SAleY ik/9-\jZ#5 `#T*vZevFp_ gvxf=Cۢ@^!s[:v|?RiJlc_^')3(jIfB1Gȅ/KN G ޣykfg1d.H-* ^R7# :<2W{v2=KjjT>gyѹi(hD6 #R= ma}G]@ W^t\m;RoL;z[2T&SqGG4'm_xQ!]TX&z/j-GnhHe#U{!D댄 {pEZJՔ9F-w\s*l\]wޭSo &bя- tF@\>QR"+.E'Zd/͖p~:Tk6'\ ,AkK~|7j/fŗn8b,?W.XrB(/7ı e\d}]P}4ACG>D唴0jϴ^ aq\;j^+ټtɝ<~ϱ:4_(f C`:7R f"ZJ_-/{Bg2QAj WHsG(PYnmT #}_e=l5k7bٞŃP >`YF_Tr=f-*xs 8E1 Hv6"c|}e*!'vfCi_ No<Ǐk Etb`βHIQ}Sç,7פ¦1%g#znKC#9!?֗WUK!C&MaVx2"B=pÙ r?[Ϛf~#lX~"v.{,UAKBܙw֫"X;񔡇 3}w`w JSZpv GZp;L8Hi ]L୮&;վ\CUɪa{YZJ|̥d ,ƴJ_~J.³23 in#J'͸A=BO.>G7RqWJDCdfɇ]d@%dػl'SK>t-c4Y,+0{$M/1g`\VSbG6e2Hw GO[O_CH[31N)."W uF+L YꤤC/_eЫRw=],4beAt`˺AtwLyDtR8wl,@HHfΚXW6SŊν'D~K?W?+ $%J_n/Ĺ:[ :&IQ^ͦ"W)FTd2w7S$*˃#9>oInؑ=巩Pȹ>&{p(x*9ܣRl MrLj5EiRȢP"/K5L_Kt s0Î!}Yes9ϹX|EκkBQ"$ )9}a!QDJO|6KAbİd+h;-} h-I GkVr/O`Ay粭j2(h)AБl*%Ʈr0-NhDUgu;zs@H%]d" ,۱+YWVTQ6w4.L=J,<c{=#FA+@ήP^ K"Cqơi7h^JG IT@.iS |uG+y<ؙ9ZHeDƄn"uV]t>j\~Qq v}҅_a?\ZG]E:P=nَ^w\VQ_> :6?̵q;~<&-M qQ cm\ κ GpeP!e2@,(*c- f1wn>֗OLBg*:.cTߑoΠovU S!pLJWˌtrSk?NTK&qRO:hb羚R'dGC V6<KM47da0 {yOIGi@g`RF$O% IMt!@u]m}4W7"Қ.7m-=[RiS^S4.CJcή4̎Xhgh<5wWܤ!\e~-cY8uWdL?{v6Z7BcqsG)<4JՊUxᾚ5siB<[H1K7 3:Q7uo3-å$@Mv%P ttC!;헥nIx%YgKo,hfΛAu7T6ou>~A9L)G }r0hBHq=N&4n!,^ _ Y*" ߄`nE_G%d7q^'<_-zarFآl_UDuD>mܯ4yML -͵8LF>Y5Cɚɓ`nKlc=X+"wI#UEߋVp#` Oެ{Br(Ń&!q;:CԬ9GRX%3mlW3G8YIvao*tȺ_\|kOB(R:hHS| Ĵj}^賒|rFNRH1fGoo0d˽%" d9N B#(I|A5 %Rbe1Dht1Rx1/{;W w(͢czbNrNE hƔ3nQP-d7~MjA ,{2E'u.޶Wݫs^*V,U[kX=-3{;) hqr]مE2n9%;wn ]n  v Kop[iOW Z-!}0tj*84 Y Pi#[mZȍOkU #TL}c.;HHI`S+nL]:. ] (}XW69P,h!^RK݂6uCHqڧ(I٤dKJ5;' ? ]j^{ Up)^b:r+jv_$D\OO]~Ur,h&;k"zʳsYyUܑ>?2v$꫚:64boiou[;kOY4mV1ryI#:c1g˖}X]{AJGsO00~8GGsX(!ЂJX t4 Q52عJ:JzMRi).+EzT IۂefM. ߬0&bo`р» x$2~XV5vݵ$pHmM (vo߉ !t;)!-)U!&ߝ"J<ۭr!ȫ@aȞy;CN竷 $ pַE걘#WG@#$Lcbqg'cq[Dr} XlP5z?cyN*w%wJ21drwFs6٭6)]%l 6$⻌qhŸ ;&M:/T.fSՄ'{$tIߠGPdYTTS"IsSf rA7܃'<;+谁.=Z\EF&}6F7/ Y Jt4CP{WM~$,Vu` :# ȖiﴥL՟c]):{Ku-,bUi6<r|;0P֙>OP1gܸu5Jcp;\ͨ؛rLzZd;3Ic`rPh[Scgyݍ< vsm[ 8 @'u:z* FZz̵,R;/%*Ю{kz0?bέvy9ߛOO h W-/x<b?= Z\ 9`:ը}J3iB^!fXSVRJHgbȤAJy0lȕ_ʸr'~3m\eyk8sͭ9ݖ:R-k|.]TOfS_\rupQ<鶤i$|ח 'ѡ)hV/.Y-O a\w. [G3#&+pnկ{2`Y* U;9_Nk~ Fݗa}߿~GvxӧReJkR0>6)od28^ğ7R<4Zy6Ja>0 xVMҳJ>nQ"oҤHjy2a!e 7Zx#e8;=f=X^BѬIkn 5B~pek] ݖhY4"JT[M =s8X?Rh4 C-"'/m5=.jp|񕿄j7z}y}X.-#[8> Ѐ3 .w^/WP.w`M?E+Oi_E# (!"`%- ڃ4FI#_IWD`s,b{uӺ٦:5JfL÷ˈ9ݍU. 10Za+w3 C +wt  G2 <e0 [ȣM)~1OvΠoY{&{y/mpTNҏ=Zd!3eǛYc@B]-!sNe\+C-lx#>qp]{֙Hw{}$g6!.i~*Ԣ)\ך؏RsǸ:Vssɯ(ΒF+oO8h*Žo$"4J4,XCLEc ]ډ#+\ ōkPdnZœ])o9 @aLmRmJg .eg+,:?pF@HFsk.BuaŸcbA]1oD4 mY|O|ѐaicX|ӹ 6(ݢ2fCUfVkPƒUK %UD6bu~vE6C]Ag3y: ft׆\)mFpiqpb44 nx(Z&֦7ו$'XyŪJV^NnY@ #ʋ;,hhj:Mg걚!:p$28>eD" _1鱟/y\\0ǩDx{o7RZ p CT2ъ)]^p%/,AHXj+3i^#:% :taF, I|9S-!b <-1>&IH?KE戭jcW\Do>BH~ Çhm/*_:yj.9F ۜ dxZ y,!CEwIfsz+GBt \,2!, nǁe0"&RJ,TEDg$#gtTrZN~!dJͩ4oU#/U&*vQJqӂ[y MI[CGm5O7y(5t_pzPﱕZH*VEJ`qa)EGŚ9j~B3J FoHd!Jٰ0jۢЫВVP{,`6&t]i߾rH}w96 &D:qˢv<ģۏa|N96HƤ$*R_ۓrd]Clj@IQul#>$1.b/=Z޶L PT <<9C (g"]dV#^u"e[^o_W9K־qH 6L+Ɣ2(M^d:66^.<>檹~9-_,$z- OԖ̀')a^G-ba@|չvޔE]}%FxP'E~= ׌'cIGI6nleYƞ ۖ__~=JDxϓ-Fv"ʌ4*={Zdtγ&d/Ko.BGZ{\|h_Wx?FPķ^(kɵ i] CeQ{v7 ZE:kbqMj _&9}Vq"3L$[ :@.l¼dR"32q #\'!?gJNY"0[4~7Oኤ)]`2AeT25RsO8[oU}kg#pJ 96t;XOܦ)=i? `p)k aŁ^  >\RЄL.5#PX#y&B-^z @kś N~;x+9'v#<_~q ]g/ r6Н C'gޚSmx-6 6B;iJMpy^~<0/C*Se}'j0|š&ۯE6_R @-EYcpSNW\f06vǸt⹐74TJo*h_Ifż,I`拵'K @- >܋̉1#PrL-T؅x23l:UOGK߸&n0ؐOD:30H5J>eXAf\xa/.W~I*LU6ռkmFq\ܲi!iJn!uJN LV_AacW#n!`2 aCuST]>Thñd#\:'eq (n=xL2+T[k ޚeuJsbKe(]qRBM c7"X+=lDUob7?CKnmtI?*~!:{/;*Owi3,V#1"Fx㩺w+],/,̨ )#Ѽ âQqxY\BCr 5ЌX}+;tJ} Na=v6nGEBxys "6 %ϨIIuс&􉸛Oȵoɠ^uKEw㖉9*/B+.`Иo}UqϭHVL[緌?3>[ᮥ{AjoOޓe%OU c-tSy#4ɟ5V7Lӕlt^ B}:.;2#F]{퉷m'l1U54/&BlxlBuiKEgڞpt0rpPḴu}f.2W3t v1.rqsٔ+h?g5R]}E(. e ]]ޯm :lDhON9AAeuN.ϥ]u[ {HsfȄT`\d'xr3y(|yɬ<9I6| -[c(Uͭf=-y7wqBƭ#L菂= x6"RUi'[uDR/= ^Z2"l]f?kPo@|-˄zl`(e@%#Jc%8ѩ`ζWl|h zeg+vW?Bб#r>u@T %z&9,'5ͮ2]mem3wB`zqˑ϶C e/8)*xAj`0TlstUUY+?k2i ʑN\^CMѧBϓ WN;yx#o}"sA=G < ))X{c $߁vY{˚Q.p*`KcQgX֭$D ) FxhR`r(Y9)\erL^|+bS+>0u+zM Nư,]H\,]l'y>h}tg œ+MIġI%pO>G#rQSlCIG:ZIxT$O%UM]jJ36r3ďO?074);NrX߼_¯y O?[aȇdhq;8.8kxsy yc0U*Hm&_o\0|urmzO(Wn+4i)Ac$⽵Mg263z=ϩc+j m%l*^`)e>tT:5z3:v]5C PuzP[*kG3Gּa4`="NB(E_5\Rt2 ޚixk@ܵ\)CAV@`HVM5TBx.?oq]{HA-^.7oF!ԜupF֠_|FL6 ̕Os)ޠ/Cu `tƎ@EG1S?JmwP[QMxP<@B Iվ@IPIU>-Z g? c!bQUr;oij%G˄68o]aPᴍ?Ҩ P%McղV(߈V}QpƟbud#dh>h/C8e$Ahw..*iQ|kqUt6)CvD(7cf\joht@uI7)o.!mvg ͟g#kԏqFVgys41 ŮJg$NJ@cmgFAUYja׬ > />Zŗ, +bA9 yPщIJyIVr؂1v{?HQfIgZOćNO]̌ V=ծ [qоbk)XMU/'HnR=`3Ռy (tHC %ݗCTtj:SsW]$;%^y#<pݬQkzxU Q ":ohdϳL۲`u3s 0}k_O:Bn@Tv (|o!^].C25D >ϙa.//Jwc4$rZRp Y3n& 6l >]V(0; {xDAdm%歓bs 4s_fQL޽v6 3藖 $OV_k̝=^s,SO^_LBK]HS2 %2^=4k|t_`D`(>NHܗgR@?򛊤 ĊEBk3b(~>x~KuԹTxbR' ԏɿ/uʗ^龐=BGzK^Ek{ Q#zrq)nB@f)0}ŎB玹Kڠ;<;da$ǮmQ}oJM2UA0vR)F`UA3ŝYծ^ M\DPn Gs6q¢#J(h$c?%73($)ʥM;W rjgi7A"\_E-?/gcu1 ggr1F%kWvJꀷf#5Y8ov*; Hw":s?-R5CnZ}q%;cGa9!QgMp澳C"RCp" w#{~v!->& Gr&y_Q;60|6ljS}V>Xp?@UamI8LynhC|s+ XR&n>?gc3}J=NGfYfz]H-d$(hW11B%{)@pnP|y (PO`lqV-Ua4/Jt|OM$6,famj*۞h;WNQ4ZO͎pu{Ydtt͎#2%ʿ^KעF?x}9wegR&tecdC3q@#GG\CNhRz~o N/8`)6u@܇,gK`C(6ᷝBtё~9,HD͗>{oۥkE_їL{fwT *-"“o<V^8"`F8|e'9{ѢE q#hMq4Ox#uXDP|OVQMFQz$CP9Lu??T̊/_JtȲO}rMLV 5@Uef!ANw9A"lvѣ)r@CFV!!0{9LWM,T7 sMSuN;pΔs $Ժ-NI~Ln܅K:S/<Sy푵2T]l޿@;S?`|*&C̒E?Sl R{]$qd6O Z[̀zuJ \ L3Bv(e8L fOr2s&*9nuHo~w":e.^9v1JqaG;絨6~AQըҏhGk$Op Dc=bhɕĹrtjbX]-0go8OQ9H"*X`(GoF>Q&JS =Cd X*K=Zn4Mp̾ O,)A={# RSX.w>+GO$iLX.5Q/T*މi;ZsBp~Ԝ-k9n^0qFqdb[(H (ȅM:<'e쟥$UotX+!w:)UNd˱@UH򂑻u y ܯHK:ۚdAPqwRMw0y)[ntVKOLS[㬦»0~: n3puvU"Ch44!`ܫJ(F' sd^8v!d4ZIeF(`K>ڼe+PyPekb5"h@ T˅ݔF? o-okהf;ɱxu>6Ȼ/Km9칩 Dfqb ᄋAN}@,*jiR@M~.±/G@nqWԢߢzqU `j/8U>Y04=rڝ!r1iiv]ͷXxX`ZЎ'7u>L eFfhνȹ󯚆!6~ZI=IWR J"=$+sBs&l?89tO$§Gβs9OD},FK#CJ]cq;iaW=CrQ};.q_>DflL Ȧ&N- ݟr6mR.4 B ]Ze[:a*h*Ϻ۱PK{8C%E=7a$I!ʆ)@$@oLx]v)X빖6WjrNH/@}rڳ]>K=R++]=D!q촄T{TCfc5?@w^"I/G+ݦOu@ 5:xZ*ZwLKH`)@=rv$B(ehI L,1*?Ǥ@z ,WlQj=8z#Mџꆠ[ bk: E8&YT~2BC/cbPP0Ûooo8 UdvzzE׺ q)GM7/t`vr#]}RpƂϹa ,+ (o=Om<BPhTؐ&`m 3KD Reu$_HT`@W~^ nQ]t"|Im'q{NJ{:Sq|XJJ-R 6>6(Ȍ d8[:ι2c^3SK iPșY<ӥ|*o=\.RC77"W^0G]*&C~4,F*0͑Ch#ܘIW"xZv#ߎȮOʄH#B pެt :f—;7rO'wX!v{68CӍ.sϘzIKs88ĭPDel«BCOijZqLGT; 8ӌm_pe.: 6 :s)o$ì5tj`c/\$H9PyjOJeiQe=*H$ct n @Ƨt8b9֗xs]Ajؼ}J1U֪-<9?䳲5!%ck󱭿#c݆IA顳LK! 8|ЙCQLVPnػfNU`) r3 '$uA[A*;HسuН'\^qmX /=Pɷ=N`'ąk.~ Wԃ>M+VHmbd뢖~v<)/0}O00#VZX8}^Aqs] ҹh똣S@Fo1,!] &dXS'R*ʎf:I, 0.:^rgOr;|VH*'B]o\y|Գ"o!L~P]N aX?nH–CʝO. tH@w=.Ag_nmcCx e]txTĕ˔Y9GM=ZĬ$BBʩxw@&*FVW#BAG(R{䆡,V=I&xЃB=缝QW~<7HG1g< y5Td.֪"會/Ϯ姏Jso&gH!'QZUq[ FEːȏ7JSC=pRkdo(HB&ZAv|xYSN!"?: +Km < >rVH9]GY0E5=%3: ֙.xvwTShh|KXCq4L]o\; !櫾 ݸrlnDhU;fkgJT؏-B/#pt2E+_!=0Wy\Z<@vy=$i[tLMű5+?,芣ր=?mYfF+a4Q5;a&9a&VR!yn@ք]CG!·ڨkv.@δY#Ep! Ƀl⒳ lx휫m*utA]L'`+UگzĸN1VLx'JGtQ ,<++R՞(nACX͟, [2G%$cl2a/nī, )lf_^htSaInϪ|.珓9SVN;JqVXkhe?O[i[IbAL˾L]zE;FU9N_R]jTc4æa t=c ۦPF) R%s$T:lΊ|~ֵ_â@%H`)Wq~4p鎵Ry'ugl< >km(BxT. 8߽4ǺQ nʜ2oCqN S^x03,'.Zdn;e:¬GK5u.r(!F԰w&j1XlVѼ'H Z~8KxɑA4Ps-,]Y:GY9aK$L\؈rSU[r"la#% t @_4GfBsʙ:Hn"yNj[h1|oHIGm ̛@5&N8-KRIgbH+-15m! 0FY_ 8aԦe#zװ_|| ͢ \e`Q"R!  xHfuG]@oƑarW޺h/ 82s[f2䷑?*14"*9 [qſW*% -Q`wQ?9;Hsڑih+QETw9_ާqE-YawJTєhEWփO˲R?[G)H#-wiCAS(Z("WsAxFfUT8`EʶQ7[8ȸQK5jc|:Aǃ@#:x~XRs;#ZKHr.tKcL"_P<4ʅ٤|SW:5£]NMj$Kuϙi]V }iǷ!JIU2: }9 = /Nkmwq@ƧIAx֘8Q-"9-;eB .jOKQ:lgTp=.N~ʏ)6{7W0kwj:(1hFoԤ3Vd7̥~VG!gC;{1A2*kkNĊGX-9xt@[d`WDI ;$bZBeptg7p{} T)| KˤqJp@46'3"" "LuHU5{^@ 2l:@\Fi_7w#t5)@h_J :tT0e)rtUՔHG;_jMcI4+6ڛr %J+rPŦA=`bV*,֌;h'w,አZca|5Л*2(4Mьsܔ^2ZNXP3wXc%[ مtmJC[+ȵԨ\&}hgYȃduPXW9&qIߨ Cv+> b릲m}1mBf#`W}W̬Ԕпh]< onݗ}9CaSKpl )2;}"c\sϯ$1Ƒۉ6)ܰr$|K ITQ ot3m*8OvNOe'IV|F3t/"I喆xFMdgSeDnd݁(\{`4&𳙜V n6h;K:$}-GHN([bAo!kk7QD4c!>=r{~X[>9H[ttTLOe{g揁IP Kj!j(vb:1 A o烣JXe6b.7>[߹M bo)1WQE.,t-R!4O[\9ybGNezf"v>bO% gB}ۧV{rb"Šs1Lo)Y|Ⱥ-*kX7ƅZ {$8y cEPv#g0jβ妦ZH;'!1YE+z> yզ*QGDԗ=OL? ݛ1@>~EC Č{07afzO~fnE&&%7mϔ8:W]a%'Sl- TT7I ;^n(7QR.C|~?mFK W/6PBRRHrnv^XR4,f"I_yA9L#w{[,@d4􂆚hZ^uf`V_ӳlUbx}H)E0Q_+sDB+7}=k6ۈH@M4ۋTنF?u]K"M+y::qx$8)x{ HtI JYOfx9(nCw .#zLDՍ!h h5 ʼn-6Qe~'1rFyD0z 9H[fޛh4܉4u]g[K$leZR2ԿD΃0S+Vl|xUUI7%>fYVJt"t"kX_5¿#2u]ٮƌ@f;myۂF!VUf[gf>=+ZGz>+>Ȏi%ЍJ,q1_B̓ukl70.!x_g' h5p<:Nyc ?H _1^h=R˸1}3bO@6~Sj C;h%R}Jy~H O}l>ͧu_lDBRb_4)Nb J@\3s"?>3DQjki]o >UыLs쿳b|.[x4](=i\ Y L.*9e4 >/Ϳ?Ƃ-% NI fm Y=#:lܜ3B$޹tNq"xOH"VA]hؠ(A}E&nx^>N/1HMhJBԈ:*Sb=6{* zZS~ˇ#891M:ߞiӗIE3U:Jq;82[ߎKuEL=@X6C`{) Pz}gd'6|Gx gD@iU2~9NIOXK9#icEb~/ q(99'7Ot0Dkc#rKXqťү8O{pt^XM"j3>F{؍ E`n^,ovN=^}dL~ kN ĊpܩtVA|TMo#;,5 8 3yC IǪb""yHuF ݪ0|x>]\ %}Z'#QŐ,+" چCHtbyJZ _1"9߀uOを1SRz m!ʋ^7.rhF*cFK%]}.wųYv"Wjpua_rqn{5HV*̥rlc#ɀr1]\oؤV*r&R8LޯqRPkĭ H3=۠'N]K#OM%hQnT"Lw@ժҸ|_ʟPrFؒqasJGV%_&ѠqzQ` j"[]*׾P@tA7Uk|;Ϯlӗ?$a ǩUYtPv XB߸ME}:@' $(>S}QJx4V'7adY7;U] cWpE ǎ"tM\hj]Xo+'E]x1 v,zfK'VnU([ʴ`K D q!:}+сu.۹޲̠nˊDpMmhRxv[?ntF.5K~prMWϧѰRz;zs@UxvCːx&"xpAa&Xվj2}٨x9[.VBjQ$h-;ڸF2ʪDW.ȲҮu qaD=Hgǐ5^BF5I} U\ǡ蓒 }dlKpQAP^_byQoby꾦O'Pz gvkğ]>>4d8-Getcho!z.Luk1q蛫PFb嫒gvsW ~ɯph^ @_.|a( @\rC2sD4Zӷhb9-կh 9-nw_Xw-I>,~'HIhJ7d5x 0dLfk B6hzTͣh[涒vaT2p&M$jӴ0 m2XQdNr51)xjwNO2PrQ_<"Fi[HZT 6.k\ YJ̻TbATCJx8 p-Sq L*mw:x}!(NHIٷdڇF"⫘ԑٻЃ+2}fkY2{eSd?G.Q+St[a0DTMA+a0$FSICJ?}?V_Z>Xњi 垮ʑ2(+t;zp%K\/ؿYJ 0wẖ\A83k O6gᇫy25 ܒ.A &7 UDO7{m=/qS,  xp[v-.ӥ?t X,2}_*D ϼJ|Jp@Ke[m̑>7:"R'_J'-I8)_ͽ+a~GlJ)228m@ cYOgl!yR'%ԎʹD"4Wp~"Y}A՞~AcA(m8!آFh*Aǵ>g*9À`K{LRRTŋA\{Z)dG)^15rՈgtcz<)=#68R{;ֶl ?y6adg sH80 j42L&'3z/,#q)0-lO^&ACq+Xy"(2|]HDUHibWxl2xވU=)N0Y69zW|fNR;8!)$q6򁩠,rp:]?xOlawVfJueҬs 1"#'u{!?mG-!oҜqr)#\8_ʼn@lNn)l@Dښ6} .hµs M,e殶ERدk NmR{IK&5*`K> s"m:~))Q_b?jE3B?oq- ҴsTZ~W}s^Nau@*ǚru7eWNIh|knmGj4ѩ1S|rξ{Cmݿ~ƀRkim}Ab{H)Naa䘇x  mb[@]v*HwV|f9qP_Zc\VjF:b_pӫ>(3&k"8{Rܯvs}F0y4" mC>1ջGPpuOOTQLMO]3>M*t8Uyt. r/46Oϼ>?Gþv=boJ~B1\T!{;1~-L _-$25m Pzb~J?FH80|*NV$s}|cBh:=*̎*j%M|"y BUsa.fan H}õ=tè:N(RR@ K+OKLMh/iK$07;p5 =ϒJ, o g\7?PX" @PDA ("3<7ԧ tE5*/$qo/ѼMsl:l%^lD*C[](I̜:]$ >o {)ʹ MOĨ\r#6icFy|mo\7JtG!>YCeʫ<#6I;AMl 0g&Y+.\PKD?v3eVfW>{zp*AJ$aHYEҢp0_OZDj9~ZWd/ `O暽҇*G&Ap&JwpM84m,iRo6yYjeDΣ).ˢy %[NS^|40-IaK#dUQ)pyf:,vvbaQ g B600t}-soLX3J+zO$F,#h@O5jM55]űeΣo#lO r-fkEé q \@\$F GZ&P[rt|۔-S Vhja|X@RTsy_ UA/3CO )^ T%ڻ_̱)_>M1.mGXֆh8 OP^)MVN~p[<*Vhy^;vpD.?um:ըGv頾\ʱ/;]b˒ :aM^c4vH6sIYW"\NCPyz 7y4Ý`\ZXMѕmdqiF=KxTO(a\JlN{aHY$cW 1nҭܔ4 &+kZ@w'ټ[q3.r)}}q܆y6S~-.3cBIhz"[c~É6X|xSn1SBRf]jGg& [Q8E^J*%ճU1'lsw0jUMI_5A[s*X2U#?uFPuY,YB9F/E+s;y+@1t~aPLոڹ;'H܂UCt)T>5i"enbOD_וjWKvv+\]=[dcc"ɋ1'c/-Mj/V̫fVp]~~7_ًT}@ŎƎbk)2<3ֺ1@ ~KJ酆[wu1 ʠ?]G-gk1AO 5|Ŷ:RZHlQW(FOQe.bkr$~ ;DeZ>%z xK槁u!c (36$0:q'c|8w!9{Gd_l_S|:L!5$>鄆9o4zz2#μ$vn^t ricYn| xq.LEE.+Ne5f:8f5K8F7:"x-wNnC|ixmע,,Ngv:::i@'%PGwG2l=Yefw!2J'ne: $xy8e(/ 2 f(TZK'.~8(bkae=c7og.UkF-aRT\GhRgGP`-͖5ifu}1C,ۦ>zֆ/dIJgMaXMF\N|UG]tC{K )N֟0cd}xO&\G]{yZlGx aąS+GL:5*m:$[3 oh g,[ >SP/5Ɠx"~aTuV0Lޯtr6Ʋ_$ ӒG╗7w.j4hSMoعL7-h(tW Foހw87N`cRGoK,L K;RFpy`n4=WWOEv$M}/|b1qtӯ} 4Ƃܴ 7"^a[3w҂?cm%[ oӑ{y=Ah{ʥI;d`|(7ҰQɑHQJVKa}ZٳHkl6@BL8|L]6~)1&%X-Lq( LV3Z={ż'6eCo8ǎHDzwȔPF`Ӏޙ{h=G)T]/+#0;NB$q.2`]Tj]/mI[qrf:8N `x6l Z_QEޫ>˭3wBY*ޛ.OZou/>`yɶ&Je +/vtO2=V 9j6"%:ܦ>?J-adQ wI/:BaOՎwMtpwzr%^4\? P1{[ݭ_L>1:v,'z粉ut3!t2M^5}˻.˄)nq34XvR):520oRg/F١=QF֏2 ᰲu-GOEYZT0OdGjj:݃Կ>E(!AJK"ݥ.R 'f+ovۃpT>79|ɚxӷҚE)1O:ų4N-؝ԋua}נLd4g|rYj;10Krcׁ[mW. ]r <(@wa/k+L:yy ad{+[cWx]]el"@یa9kߏ&^#A!\׋SЪm;(C$ñLكn{8O͘"vk:kLjFlCXH n",{ $_=۔*l_$Q=l`Ǡ4ht95ZjThN7`l3—~2HQS;/pV# I_Qٝ_#}4bt Ԋ9CVq|S oF.oeCϯ y:b4DʫZ#⫡Aedlљp Y<5ƼA; %wr32'ZQpgAEi2(LZ$4L v f/j3ru%HN˖c)vMOj%`[^bps ['6[ـ._[Ҿ̠(3VvِwT˄+*H{)zQ@n=OA6=5u>@ↀlDp;5y\Fd:YGrv I+G(0C"} C5ae CwPvr'/X#@4cfb[j]y*X{0}Լs%o,;nNQAUtlA㹝/}c(LVjI`D_^|k[C"!C Ӣxx#-k %|oXD˪TH:X(Y&|c^Ѯrݐ'9qv-&o$(.186FA^Ď@aڒz( kia/@$y`T̟Ja$n$ھȰw7W>VB,P>MbDWe/CNoex&n>ByO&@h* obJX.k~VdU.=:l^s%%tɳvNh>7pP{"wuupwtFԱdCo]x_}9!ٙәw~==^2bԪn0 ,n.*\^ J. 좳ni!W,ѕ6'By*Pʼn_~v}ZG&s A̰%sFxiWK~Q.Q'"r\J6ښ"NZo!t>je_*cxC>WǼqk,f裡ƃEV)<'woãXǨ?!4GG⸈0kvZZ5!^.z„uև\ \Zh aZN=58e*?*b= F Wޱ_%}nLNE)Q 3X'()S}?{HWXl&g7?VIJ;|[ONZt#:gl;PHo߆]7(ȬssU67y< :-l>'N$V+|oqFH:] :^(* ČoyG,;3*s?fk;/*>hkQl[&Q&\kI*Y贻FoAtX0OI`潤r[sri,ZL+4X~Zy1`Hݑ/VqץI9`Ge&m61ࢮRKjN};#̊ņo>;r{@h\gS>0fC1$k 8ZC4KPa-&H[_Ϳh:Xtx`o+6IfJ|Wt\ pʙ#e̺lb*nʆ6xSqp0 )_=pRկzWXӁy%6 Z`L'!omg(h:ȌGa[Ρ<`I[\/ A1|Qy/~.g.TRGlɮ昕-/=b8_k"xIZb!!rwf%FzCP.A2#Ie%8бd)1,Y$e U$(L?ZV[W7&KMUGG`4q.AݞQ e4q..c͆֏(㳦(~ zx-|o54*|*蠘 (<=BKp- -}Jl"WI?B!xRq,--$ 5]Ղ׬$ޓBK1~"));jB0'麷xdΩ#Bx݉T?,pK S/"Z`Oϧյ6.&ɂu*]F(^۔J&њ,ZmlqLv $\AIԙrmtOL&.8ǝ:tijQl!,rb\nBc@,m)\xP" M8CVF`H1Lg)940-L<p60.,JU 3S> Y͉=QO|rU~D@  xZW8m+šwv0naOI#2ӄNF*PɓQ @Xk73VY\ZUdZd}R;,VϨM675'M&V.`N?D Љ-ס+H*#*T(%N{'˹ j~SPg@a9jZr ]N5Qx$Er$@Vxs~k<ǩB0,>@AԀz} T`7uL]LT!hvױZT;Kސfׄ @Qn~gźo *bd٧F%'T/.5Dw C7N:YJ'YMfϾjwTx|2㙚mSghSKZYrL@|F}}>sN-K]t*v~6E:A5pf f^f2س3_* z0\-"עmn}C!^?_$!p9BOO0\'lold{GIE"_JcB\ ˿&~~˳V1',er:;Jd{ 7P?ؒxnGLڑgjtl>`=ѳj9tJ"h *w5觙?຤i- ";1#-@C;U2pqC=^!/P[XΏOںTX]>:oO;)<~BHO2bGJ+NDߓg-)s_ϳaKoH$Q[GZ8V-/)XT ZWN^WQAz>CЉ2w螫%l69ۧnkX*h&a/`d!T&av'PQ ǭ ŵravyI .G eű`:bq -dX1}?.O RaطUNqR<;Ȥ(.Pᯭ I!2Cgdpз bM6Tt =N m( uhkx@cz*nayH1:lOrt0ΆEo7HCgs Ioir֨ X0S&/>.sO; ߧ/Lprо{جe+^>*rNsxeoZP-zL=){b@ryԈUZīM\eܧ@8ذRFX̜ QT.,Gʬݐҫ]dCR hnhf,`oVV{4j B:vndNsjǢnB1YRL٧Y++]dm瓢F{ƬKc(xWNd񞷈 Ao\hbP?qjT^Xu*ϒ7U2< WY1痻t UyYyPiV4AǺNvkb5%ekfAS'Q͜upD =|J{ N]Qk"/~(XS QZsltMf6jzu1#UNs'Wɹ*珺k1c8s {)RbP!E_|-$G;*V׉wp 6}p>HZmCl",q\ :bx,66(ͭɜ]Pjd(U-f9B(W"Tkm_ȁf0uD yWaP$JvVM̵xOv搶 kw_\a %jnwr)Os&$Re%47Bg hIMj&1a_b 1?bmLm?"zPO0;jIoz@J3t@d8oyI.^ެ08Aߝbbzlgrb1u#ێbCm teW| ]#9F+Ws$43o]t;L}ǮD$UAO\*:UidP(lfOWz.lexZ1b`F# cYE^8`PrCF̢nR;0gj Uwd6ԯImsI*k 0Jm2BvNC>}+ԖfԉJ~n/9yr:gVO+5ܤIDpRtyO`e X5Y#p|nL0u.t0pҔOT|b%Ʃë"2apt2Zc8x% 9$i?I9 t VW5~1bRLFLXO15m)*R9B"b**:(}Iq=ɵs VlGB?>n;Y.NZjڦ ,*jCju:%SXQIaSA7S#JZx /C4L|">2ln~?apqF*;Sfΰ@}ݓ^G n Zv0nx<,~]fvqoԏ]s Yej7f|NOp /.'ѴGZOb?5I@SQ.K+(0+C=;`pSfق_bܑiaͶd G "s mUL]qAW [t"$ʜn}WLHc bj|mv ȰQIS1(kz4 ,R]UN֏:x'8KILAs )s[)!qW_Z!YO,,jЀnMQ-bl. }}75푆a#R xxDldd+V"#ߗU1_q{WٓabECذT2!2 fґf"Gl>n(Q0Y| q흣,'oo .PT IpSYNvLt`{d̶0ȧѬT97"i\j^͞ Args>U.mnvk)ʣx8O;.6[w5VXWQ #I6lMFAYPl2DpY9Gڬows }~ B6 >I!;&Yss.]rP(D_6p;5xuqE$IY}jt׎CA3;|QiWXx1Aχ 2!DEb~_j^[c޻;c4˗]IChO0?h5[̮IݴC̀( db𯛱$#4xC$%EP+H#z6^UP(H &Da8u s;G_F.oާlB>48?E`^G/JE_ot"HC:gfȉx6ԘL£_B=!H bcXZIb/&-^ t@S򵌼F׌N(%T@1Ǭ7v:xmB|v@CIH0|o8mf\ivեrۘ XzRi:/*.j[X}>zM0{{ReT`6 i7!:juXdHWqOe;. [ neLOGhQl 4 `~+W~|!A%d{dhM@j' ;o) P*nd& ꔣ9 8 fq[_,+Ӈ~6r8;xK*֭Ym#ЮEpy0/ۄpt3%-,\,<8a̍P;pSMn'vCz-b~j^ЫKFj9%&0rڳ$:K{21rmˣ)fM {جm<[.Ǘ`)+FHjG QDY!)V>zxa|nūj DfiFL$~q_w1ۘ?Tڞ: @x>ӁTusϷ'Y]E,e&O G ˢ ȝ+F>{^ +MU5U.rMO?UU^F'*#}FCv/efpΊ(꒘M@pX3ffw!u.Sɳ 4{2]]F=Y.y-/T]ɾ 7ޛ |DbzY8;iKt㣺*Bt'dZR$1s=8eϼ{&Mg5U`fٸ H-]Tn&bϒpE# ^nMb 6_uG{HpM+pt~A܉)& M mk8gi=rޞr'TZiw5E%&clI폴-ݢN:E>R?/Hj pZSW,i`᧴e;n'acչ ȕ2p*=͞ϸ0INAuCXZ#w+:QXg0-,͠VdKv ZnZܘt?!uWޏs/pkOOОѿmiJ\;'tM7K$iC* p QN>g}ŬE3e|t=N5J訂W[ڨ-w{z?CgHxNΉ9-Azmʅk} m 5:)1u/s]_Mq1Jsxsm#2N:1Gf7*؏eOtK_tg:g3g#޽s6@X}}^I̝{.zN@a)?NMJPk F3VJ2zɨgs'W=%%Rӌ+0׌^`#S{EP~=q`}Z]ss_.ą&}ʚiА7*@gޚ=,XJ[Ao6aw;;+ŝG6)r]#eJRބOiȥ4iǨtw}.:Nl Ip8XVdZcVl/>Z"CR!TX`9]|i0ȰժHkP(*pmMpDMI[S,dxwxR%9e#]W6JJ4kpv*B"]FNp`0q.á 4oA)vlbB\:̓*X͏O)a'L}45V;6j]HX3V2ߌd6|0f,é y2.w1we_xy\+/0ҙ:K5t!_{q[V\$q=Zq :C_R*F @ Å,+::2k{%zyU諭Lka-9u<^@d57Pľu Ӂ~.}wm4@uZ4a ,NLs4_QȍO"(f$%=&T܈h 5$=tLG|Kښ+UfDU˘:h*ʨ["y]I +٫MKpK0`n~T6|*ױD@Fyb:D2S}r;O~P񞱳7E5^}DrD(xEFױ ͉JȢj\0#P[BK x/cQ?D7c*zv :׈a/⇽mT_3TX#Uw>f"y-Vito-~2]ƵZ^Ol^BN8'/vXW N_z!P!93'be,D՟ƴ+&;otnqI֛῝BH_Mˠ țYoJ^Yeg@cPh`I) ~S??ڈILuK XK'lKұm};Gaah~m89P u#6-bIrMep "|KGƬH>Jd$*ϝݿ'|>f~13ao}h9]bZ =~]_Ńas--\cʝ|3F^#U2/4_;xL@)H*7E dXzjP4n596ǴRw~k~l'e0p8ڋ3&Bgaww_Ĩ<˩Y=%ߥi0};f1*o^%tG½Bsm w]h<ȷ55wִ&jY~sibavIՋeg1< ֭.˱zK0xw3bc {CWu+ցU B r* <$qMP1@g<`Cvo=^ pFgb2*2]v$]:+q~,'<ΛG@Dv#ҀwiEa6Ô:\GPBա˲~m0 @{"\_aNk@cbD73X.'*4Azx[&K}{˒D?'B`xgt?t}КJBJ0"OȜ}\wq#1{)qO~^ŇLEiĪ1 ~ Lt+٨̇xsgË0!kXL:jL,]O!be|m'x ㊨y_+  FSX$;s< i(̯v1EB@=1 9KB$=BA}ȕkQFـHL* B4Y6F@瞧{f^>U\=.V| Uf G&xh|+뙫qc!~&\7򸯓S0PQoQͲ=#~csH9쒷ᢣ\kq#l-£m#^+ґ_OPl{wI,ğ_#v@y\pl)4[,QÔ`oa#/'^V[(I/u\N>cTӷ@{rw~X}i(G׭A۰@A݇ȸew g,ՐƘ',{3N_cjEp#El4d m.>ݱ aVzFe#5h#9{/#^6ڵ@iF.SB^1gS)kX_4:U F8:xu)kI ;Wz{6_aDZeϢVۻنm@l/V!O,jvG3tx P}#Fv IHQ:m}BlWPag%VȓۣDjz0,[-p}:H2TqWK[]LΡ 7# ͗E{gC[_uASVf}a؍woQݪ=6ҪC]ws0J>\i~HǦ .F#G姶|> [QR;ͻ#-ܸ|&W}Xبq[eu%o>{"NLRR:evFK_%A5wd@ Ì P\jU_۬ \?| ni 8.+7o!bCQX苪soV"㶗䅖kSBHm0? ʚ%~ ~ԔiK(VeZky(Wd2Ftaͨ0):#خvA(}B1.f8'=Axel\pp%< ͇"gN p=V~6抉_"~:KgG=$Ť|ҽ9؝I/C4%>Gj~AÂE!H@cO0(9[(E^,D 4r> IDt!PLns"f+ӎI$ƓF AC0wkdc1[s<ѬHξS9W`3xN[x%%6:¯Y]OW2He̕7Spy)`¬;r,ԑƱp ȁ:]a1kmTHereřr/$I4FS0Z$℘o]vX:ɳ;t@×ā6>qu2V67QcʹA=>^|<~?rn% DZjmҙrH2mH5 eL?,.~  +lGy㚿 'W(6G~/f?] v$Ι}'jϟrl-\I q-(SKb^t%u^:-#'~)6ӭs,32eC."_E7ۑW۩lPf"Ѓ ¡'{eN;Eʰ% ^ JZBOPQ /j&;M %\X^|<D4dŠw7`".8I;w ]fwo;> +ehL%rYF{oqr9 !􆈯FDz"̃ly3-al4ߛB$ +mGibF&H}!"SvDe00}1syQW/t: +?`Z+R kkfލ͙P '2{_OCD%#rpҎ8D,#&Lx`m lUB贳 *K3#PQ¬8;zs5)"wHr/[RTG-"]zGݛOķ-*,CuDYG(Rjxe]/&RMI\XˣNb++3Nd" StڒJPC̑`V")Ɠaջ)T|AO HnC[-~"˃(nQǮFןj(TF0 (>Hu#aDAXO=X,K+RߏcAَ7$bJRS\猤ʦڂ}4AK珵$p+A|? HVH2?oҕ?饻wM-]'UN#/r!|pUyzF_e x؉K;S@;lb/5\ iavOhkJG!p 㟂О`4/D6U}T/e4J/]M]3xnӡF fW'%^" 0렳ITfM[!ܰRl. ,hQ6|M~B -A_L5' Ɂt&fhɃs[0V_Dbe5u "!PaUvbHȐi$n?ܱtQ$>'H$\ݹ5Z L7tlt0HBzf gMט?>'sZ3I5oy5{v'uA[w>e 94 o3 ,:5f<Vd{+K/Z%ڔ^eسg2e Nͳz/H )Y%9MmC'h/3?.h0l 28, DS2gDOQZ "fԌZ4,f zMO]!EAs_MmeP,2E݅R״wm+< ~o*Cb*@x H__nAk%].R|ZYu^zDڶ8߆0iWܫ?=tm$pKݩ'@s=;\ռa2Q5՞J}w0H/ 7*#^^ư?L`Re-WNν\MŜ*O.w iF9#t!_?@ ! 8YOf[9%gm5ow{Ow٨eESֵ\MI(z݂q}:b}eg^"B=2ՈY.+a9NuiiL҃ύ_m餔!,ٰ "N }Hol"**@ /#'QB)8zZWiUN-`eL8Xxކ '8Fi4-"n31t4_筶t\"_Gv|MO;h?g@O!j9|ϡ- 7˴܃S9+Ss]Q SO= HNwU$w g]1şe*.MfJEiJ^ṆػQK xylOϯGgTZ X (erBr!ȾX@:1Ix qiqѷ!+ p}`lB2˝]Of^rtm)[[V?M7J sw*n:ή_s=EAbFiZUF5DLMЏݕ@@P^irET4+׭yqлy$Y4:[UcWЪ$m7yUe* JJPC=̂m,ʁ$Fs6q w`օn b :V~8UНGU`ٱWNtwK[RANqQ rMgϵ'E373"g[.4_[>@ vAH\-0 {9A ޢLԓK**EOF5zavXi[{=E#~:ZJ+~ޑ`Lbx]*$)$V#'FOS ِ"7ݔ)]5EA]Eٖtn\.< ʒ0{~X=eS7ח%iɆhnFC {ڦ__5j+I{KˌX G@q[ m*~|wݮ;Ԏ$r[YǴwп@'K"fy J!vY.F0m@篶a5s @ҧ䂣ɶR8"4yЯE>XZ8o.]FPB ilW^W[#K$dwt=n4*#5@t+rq>(کw3nkx%&^%UE2"CهX?}v-zn Q1Eƫ9H2&m|e9ư"DVsÞJ%aVR`Mi<xPX侻5X}FQf'sGI}3߆1C/dךR ЌWE`CgGd\.e7f| P弁LU|vّQDRMG)O|A4K'$g.92y#UTe=t z %f*٪{!훮EjǤ"aIǙ(bAN\΍镳wI"ugGk0V,u<Uf:t o˜ hfpU˅ 1!G-p;69| G7TpÅݒsGf#~"E6\2X܊WH )jXE7f@Ľ7vOx4A@~T}(7g+x?NZx|DCPqk)'ڡAP]^fNpp ( -ʋXkYӔlpf{`Qp'`F ѵȽQxFˆ}#Y C>Y#zrIߢ@-;b0Ac_yYRq`5%}dB͜EB t3P~̞nԚs:}^gNփNAp7j)4o ΖlkwfQOL.f3CEbʸ{<X9dSt.9Aa>_N!aߔE 7BRtsWǫ2+|SRdz~8eNVag|3EJj3_.#ᱞ .t[VŐgq3(Vv ~SfOezeFMq#`LRnq/d:6t:>;^8MͳHtV=f\券yט 1GLgNaKjIkfk<OtV]R7xvS/027,'M pͦ9_B/3Jp @6|ӴZDTSC$EÃ1q{f$d?:u'px_>};!45݂g$Hݏ VDg̛3R! FleYIp :J}I\]_Eɫ&WSw(1b*o0@%Z Ul|?3xOEo[Mۧ \G: FX#V@BI{W<-߄`B^D^Jk') Ԙ)kg }(+};wdi{7b8SgbQHnB(a4to6 2)!niAOԆ fgcD/VDеGPX۔%| u*|d-D3= Gv0rdfH?6`; ǘF8ֶJ$kDW~Zi_ʱ,vzuҮ}|jhK9rk0-'w,\#g6{l/nq"fEsET,xc-:;nasW3i!'_k(6Mʅ0uuaܲ2͢$D 2rxʢ\np+`;"P/8 زKs& 'ت{˵ r,:&:Z%IY'1jrq-?ס JU3`(rCj)_ioIZϐӔQm5 /~fgLףTد"uelal:ށZ? hYO{^HRSG9:nj{^k8 -Y4Ѻ8[<w;vaQV &J_2e Q| x u qgGJ51[E}w;'2BmgrNc{_DY3A@mQxGЋ<@,:F݇L `$՘X2BBcRfBp!"aϦopYoRK)䜪b$DQ[A0QVp-bc )Iy8l}Tj? l1uI$i/~Bg@6F> Ih]+H'.NLC*w ;EӯC7qVn#=#t6,̪Ϡm@iAk=Q(JcbO}k/x%ZZ:S B-9  Z; l3_r40g%^.M'ʊ;\mgDȣ@Xݥ6䇳T4 ~k-V@Si뇂-8Z)• c x{?ę gPS"^'fVíP१Uq"O@2nLR'Djn6֖g8W˿0aKri$Ɛ[\b = %*,wSc|`o +s3$kwL;Eyٲ5UMR =(yEmGİ;MYe8ssɧZ6:'OAyCHes_ Hʞ`=takTODL Z7 `20ℸZA/]OuT~ZXPk'0'pzmhC(F܁!du3H]yDsUrnO3(b_R9&BWSڮn(@XHe"#j il 1-OρG_b(@pc"d:a:r@_VH,:G̤t!<\8X"D+2Foܴk5)F1`ݔ_ϭDcqM&N#I[0GX"͈HP+}'bέ>Rr}5V $K 6l%#h nSahrdvB4M0؈I.  cüSp4,NxOTџcc5)-KGπ[E!^%^[o\PCHv%_LwV^k-7u OVT۔W,]'_<7<} 2+ K~4cj3a}X'A| mQ]y* ugGg8΀$pOR;]| mԂ7[|3vizʙ]Dv=MZ:{82k ɷ{E1ѪƕW{v`=:bO9))TC#S(lRn(^(5kt08rקnp0vw&!).Y/D(p2Zz8JdR2$wh𷣁J^ĻL-̭50TN|U>DIn;,&+[10AC(iJw064R&?[A)V=hhq BeEK1<2?";wIG/"z#H>݈NhA8R=h[#KqV0Rh\&G$ h,s ۋ)ftuN/ܯPȲ.&bX祫dIG1o}mzɘFG‘cN9YiOa9үB(,Pe}9F*2S}|&VUVPMBٸEz Rjo :Zc{V"{7I#!8"" R)pVN^g,7'P-NξF\B"(U&0=ae\|6p#ʎKB(ѵ A0{b4}X{E޲P_0_'.ϗOGDV #7rCd{˳w^38=( UbvӍk>cz^E"):9w7v$ C80CT C {Lex\4{ovVڲ*5]T%RRw"P|W-e6Yrg;ݑ҇tМ|kZl1 ^(=e!Tާ#KgHm%:=b>,]g7̪D@eyFFnPʴ m~由t;[/"b_a)uK E v^seQI' P]7J>;kżpٓJZv4q 5Y)]%gۍXFG\\ JJ^7Bt5x:?R9Uc ? -BE0틏L99T|>&ɿsc{OHć 2 ;#W([JZ FK=* dZ)cwXss )y>޾t\HxeI9>SIust$9p_~ g"xW\}œw1mx4{KA/~!(}.e 'A:Pk1U%#DTVo 4(eg;x]','Z>Z/Qhd7((7>4 _[Wq̹{a_`ƿhӬ_Jȩ?v <چٶ4ΤKб R^~k\u6&]&e"mp<J%UMRN8o,yX``%c?hk_[sg"pҨZm˵ :s:Ջ((/ 3菅"4)3\ 9,.U n ݭ38QSQea߃B!6hLPdwTasd172%YOy-*~W'.l?l:5$!9B?Jss<.˵R3mGz`/];2K&Yulg^"M&C:մ<ڼP#d%L2즼7F%7#Y)$}7_:8Ct7WL֤z|z0Xu*Qe\*Muh|0/~0&R1T〣T,6vN^fԱ^u7?B4 ߕ@I#qS?bE}ͣ_0#_`7Q 62TeSST GRH, Ck)c,͉XlCľ }n7E Nh,E`{˃(TcutT䐃. ]AQe)gQ@E-Ť 0* l 9u/e/nt|.IJDڢZ|czk}j䗒?q^ J@ e?bZbG(Gº̍l}.Y/Glt"1#xqNOf06E7<ס,w]XXW%o2ILvnnʣ00h&t&)4YoB;%Xzz8]I#G9  'ͺ@:D_ s@ѯD\}FD=W[r{ub N0iU}*@aIy8h82kI MyAE1`Yr㸥 Uu̍q0&`W䁰$$9@kтSq-xou8Ja[Yl}Zl6sQ'FL*567-ry aNȄu3Cp<:=tüե(D y:Rmn: bSA#y;Toe=1#>g;NfՆ,/؀˜7Qqmjӆ8Α$^ 6A$?@.Fl@&J7 ޝpyΟW0`VekywO&ϥB 3QfIVKKQNhX^58/a]?C‰R^V-.b4n!\TY"#tߋSv@aP~k2ƀNnZ)6iD]68Rwt61BmW6y}ǚ0Ogٰ`LDx`>-{Ʃ]Aiޜ}h/SUql>7DfͧϜe1? æL13l:Jx>\7je7<8Ag̎ we]7"1B΃Kע5S9J7H=\&X|F1V[v2q?rQ5m_ eyMͲ(*bg91zWuLۮ34)>8s_c١ u;Ѭyzlcr'pwoz# 3,8[TFjiKE UvG8TMEBgNW 8>!L@Bw|R 01A#>uX2-6# #~ 4l#GIc"{M3_fqr ,0")g5=lkз؅Ӭ>3N L"lJ1VS$~Ub^rwCIC%P݇#(d}ɬVڤt!oTaΩe00PW o.!t-u9U*Z}[W  M|m/24)C[$Tέ:VRG+8>~->E 1nvK?>;. ԩ "y8`tyR֙ A/+~dtaR>H!+.,B}8K`A32B(vb[ذi󭍤DSmf^C):K *G*t}ANá_VyXG*Я?!3i.ګLㅳS*tҖWҘ)9eS>/kmg&< lڞ ; `"cqPGg7ՆVcYsu_\I0@Uq^܌} $kOaZufUhv"c7/m.T]m΁UaU04nq˰ʳz7'czq۫oI(%*ܽqRN^% Gen@sE 83,-Y/!^pr j ̿ߧ'Pj 2m81#GsZwS$,kUԪ<3%n%}ԅ^cɢhs QbFӤ;ich>rw/#Ӛ|a|r ʑ 'nB]`:M.M}>3BX D|K|*vj{gbA%7;qd9jn dug82;إoT1mXZ9ջ8~G8(Y!}P8b! W"J9tt!*e="оm &(A{EW ;c_ 0|ϘK;"h r~mfu>qx@IwW/0鍳.NYhQ4 @o<4YYDy.Z =[0g-6 2l5NT~Ca&Fde: ma\7;)Ko%(r˲p.`YۧGj I9Iuz4:D_|Đ6vǧeϫ5bAY=ʱoJw/$))JN+:J3^Vܱh 8_xs%q )޼dYY.Wtc(:{V*4[ )"JXlyoyKeuaBiiz "fۂeϋb(y\_Gqs/;t?n_ma)OA܀l+yރHVC>h [K9cʃY"I]>声ѡ>FIln:Σ,6oDP'ɏ $wF €U57~o߃tb4+d'I7"+;Iݹ͇" ZTi=-0&Y 1K]\r1oz7;i#<5$eB9!%ͪҪ-Z ,96Yf$鋆6,:6,ƪ7W $f8Z.FGH){J_ry$#ɒ#y|O1 ۰~/cV;a {>IOSQ?~F^C'o3~29y*Y)'hbCefrăS C1-@j.ٴz11% pVGw9x?䕍PR=,rRE9Oll{RˮlVͿAt^ь[ 0E2+,- 4K57A HJ&#DtPB P̰=f1c~+[è|G^a{A$"4pvI;d658VTKx&ܼ>0MYɉiN68&0Tc4`ſ7׼VYBg ں6!E,DkW 4-]q:2HXj)8]v+<Vq;2H0"ud撽͞)g DSssAkyk\$,S.-ҪR~ .)%qtdĺ=DCӸ'L~lfЀn&Y ~PU28 F-zG^-@d;qܢud3~% ŐJ;t^&0"(2^@_"'6G)Pq3zΰNf\KX>W H;@ y\O8~I;(|UF~ET{kMVV;YS2IYҴŢ^Xھְ!b $PӱMw^H3MkM\E;k0I!\-58wa54 DQ%~]9=^|1~Bp? C3 BȻ9ԐNNjqs@ܟxpL^е\2kv$K@Yչbt\kVA>K(s αlt 唨ٙ cpI1Զ:̋(BTuW?C: 76"˔pJ hfAaP I B?0n> ržP7P= t-|UEZv]qۗ>qQŋ,^b'V܌TQ_D1WMލ=l!n?T+]N(w<5BYZ*2M*xcD'F\ٖ/Xj! @ NoVkf^F6Eվd&ώ)k^vk> r\&? UTIqTOqfGW[gkݲi=@lct,ޢ_yX(۞\f]GDp W(u<΃'/,tq?_\LI/լ}>2(j!5`b#볲'L,-bcQm{pqRF()8. PmϹ3!&GINLؔ +'h3'2G1ac)f,$HEL<R ηňGd;jU]SL5y/#J"AЏ#9 kB[TL&usHJd۴r*‹݋ On7E/6~2ln_H7:NRIn,٦lI30d6_s/ -aB"C w.2B0 'A'9@OXOZXn" dm؞sw5_),\޲ +e 8HK( W^g˽囘9yL)\aA gszk?t| .0((Ϯ8\l8uX`F2\izqJ) K99)]XΕlK5IX<\ r$M(D ^]ypRTChە[$֗-<(N7:#6ѯNljߵwɕor !b>YZ.lmiYF]t,kke*NoV3B >Սv DqryC#߮#"q(2!vF2cKM?Kg{SR-ϡn\s6M %[11ÏÌD䏸HCA|ʃÜ`֞TOsk݂lHdas, /\husDAvMWҐ^|y{=}~K ω\اuFuq#.s2a46O94nԗF9ŸCװ&ps4= iB5LnI"pEwOf\Ս ^D"ߤ%Pgl2.~MM/+N+Ϲ(A%e2ʊ#U_~(G2yg'/=zE'~J Ze"XU.epTGT^RA[%ª'O8;^fVa&;ώ3/ lF;w}1UvGFKkT_AóS=A0uU?L#`FElCg~na&,g ?+)~m Z72mѾh-ONPі _RC4$GdG0/B~ lB8b!3jK=??G 4UGdtEltLjE'0HxP BNGzEL*n.Fĵ ZϋEqx[EWyDczO;pfXlu(U5_\v[Ǻ(/8z aP g‰cwF/ąĪxDm 5GE,5A=2;&ln,zѰ?eI/0თ E'r/[$8oj|n_700b:?;uPpdVP|IQ?&ݭIjZ7S(hu`)4m,9X<^ErLsJK`*őjE/qsh]ۀi3LBX◍z&L:Q-_CG$^-SZ@mz不?͹N#"feڸ|54cGmh!~{מ`T%.f 5^@Vd00AΣ5F%hE,Nhݕ׎NGҵxkh 0hj\2:<Ϩ Z9.-w/Lc_!`a$b:IMiap jhu b.cNY /SX cVjqq r`g0%֢Q͌7\$[e8wu_tbZ=}ԞI\J| 7Ow?vd !N\49>>`'bǺ;IJs(rןvdXCo{ꈶSto22'$͚ShGI(f 6ܟ f0BD9Mױ_!Gt{$ / Ɲ ݫCrs0Vt{yZmX@~7bcdsq@e0O z2K٣_}n!UwܣQzjU. ՔQKڕvnYfTqKvxߤP|!/"]3v@}* '. W?l< Em=H9*W&v970BO*gtI C &^Z2x'p7Khwd^g<^|Vӡ K^},OC_>m`ڬ-)7(C)ƎUHp(I3[];F',•=qL-nM[ei/8|gzlyL!cF0qJK03 3U_ÒJ¨cSOVmh)\j:amq=LmeD=^]Bxק?ɑi&z{63UHvu eQM"Ubώ_Y&2}fdM:nvuϞ!6Gp ET(mQsp׸+9[.K\APci h$ID=XR*PSCb \T>t'WD&4s7˻ȯLʴ5X|]3dOܥ$;;S$&3JBA>lh^z*NR$!`ڨC"՟Xh`5)\>{:0{r>tGD'D<ytST OvhpE1È,|k > JSW{$Y>ANŃ}(BɔܧqA-r>x_n5 @JK ukFSJ;yaBǗI]6nt <A} PAs f2Hr9OQKoG65\\DOm:# ?2c'Bz<` cpگOXtw*l9iggiUm?@6b@va08Q-d̪]=*.-eawma8c ;y5hkM<0K5cx ̇7r6'^_wFJݶ,to.ՋE H T4%ëiF X U-j' *c3N4zC歿;;p|`| nxgv d`&T\GL݈2 ԽepMoxz[NUd>;wK=J:(|# Bи. ffbIJ" _^SPOW\&ќ>rz##P&6.CQZֽBd@NBm-"T>]#nթzF} rYb ֐Qyxyb)}u?(efnv ݊+BB'bJx4αt`V]NR oz\;B=$U5[]0㯱LBD?@B',ȃnK$ @fˀօ}?W{p%?'jpK Si8 SmVI(퓿*!/6ǡRXw 678+ ǙXFgg;/qJ/_;sC1'iBFR tlbisiP,M}cd;cg.l6FxIǗ%v.qܳ 7{hANK St2)@C8{`L5=.RNU3T?,Y&ؔ.@_.^g}[tǢU%SLjJ@ΆTHÅ鏙 hj˂{Q7YQuJ+>$T e2Y , ws@+1FnpWn'"=%mlُZR)O{8kQB(衼Tr0Dn-+ N%9ȾKpnd<ܱFLXOM-OK#&zJ̦.'`V6`SAѲM=DqAhxX&.&הDȻPF=W,*9ƭl ,=dҍuؑН, ;eL$]ݎ"rw!7>B{sw;@1#@> 7 !E/hXq7^i9,̃{BEQ>ey[}=.`NeK.treN1KGNW زbb+@P!ʶGh~z&[PJ4 {j{=4{3Ů&ԣ:i@\đZNi~1PHͧ$#.Y5SJO&˱0S~`$2[ڌ\M><# hͶ%9GeKYoW'Xљ]?D'IN PQ<ػleΕʡO4X+iIcE- >7livt+![nUbM#Yo,Z-4G,~b䡭EY:TOFk荲yͅ<+iטJ0^0M 01^8 7XbiddYeX_p >y** }Ëb6vnd0##cSOA> S5> iaoVxzZ7BH58v($fiEi\s]V!N׵3pQ hVe^' <黈0mI"V  )x% ܈s?ח>:,HM=tEZ?nL6?%POƤΟLZ`E)R={p%m~Q={m.%cf`-~-m83FOvW}@WR>Ty5Rbanq%_=Qȉ&xzķ<)R(n: Ny[M19tݵ22<`aK`N"*dKլ.z=92updS@kYbR9]4os*Ѭ,:QN/ O]%T%h)Ql⤟f|`9KSFcOj~NODMAiD_N8YPM} L-?^{=B`($aڙ}G8ڧO&d"(eoA ,؜} TW~1-Rܳ?peER vT dI7VP"uYq/IڻKqf|ا/-E`N_^+bEa\Q);$5fUl$ ߻$J0ciEnj/D j<4"Һl2 ֖[l&=Tj ?(z`_Mul\kpR0W.`Z鵊d.xxy;D|ŕ;gk.sw)6,Cg4t7)m| |X xA>EFO/RӋgPnv U( ~:W޷]H,!{pU"MoN.FĚj$n-^YM;me uD.lG\>8<Vȡ&syW{(TZS&ssJq x:i94LF ibã mxHC c`!Ap ]=@:[ \ǃic>Q(D00@m/`_ F:NA%z83Z۶T:+[l]()( [ˆ~1>q>TTN"4?D!5`̬A0 ~·Za ׌sd-\Xr"/jޝ!7&h>ވK=NY) }'Ӝ+$? PX1Núۈ~5[vlS/$L<'"@# ToHg8POh m(3G⤡F.qhiV(t/ޮ$eRH;ww/p bAaL.B_#VG X(1ZԛdA j.y{_#># 8b"fgmz6" 0ъE% ZX ՚C11vYex򫜶2U놸NPfi\+O Y RA8`2e 1+x}0_^ xL.@J4e䒉 akMe';:OkKu.بY¤HzG*a&LG6!^iojL+}W"c 9bМxGjB=d~hex*dQei[.e8  ݕWn ޞkL1=C%]{Q.taĝ~|a>q0TpuȀ\,Q3GO& <.k8%cS. :{}RLrs9YA\f-wF&q-́*m ra>+h;j ߜ(*C|c`CEX'X/c*+>/b$ЉMc81Tq)K?ύ/|r롺Í]oFva)?Iy 2ʉ[n\,,y7̟i@2m)B~v"gIç^ax⯟$Ԯ^rat@PeT ^zK!Y|xE.d0q!vgT>=񎕇WM??¾ t"a E,8iO(YBNeu91wgNV:B;@oUr 1Wpv:TZ7Ň)[ū1<*Y>ӘC0'ON16.18JG2׼"jN|K@si}Y.QG8tE>F}4Eˬ+t_ Y6ez/ NFM׶wu Q1^³v^?>aFF{4XO`OGɖ"%#NYUPASWsNSәh-gt ̀[ M/Ějj<3șvaf4I=Zn\6 Z62H5I9ҍN'*~]wn,ܛG+#'Əro(.ߜnMxd3w8t;hsj(<.;݋j34;I6 -SGu90<>bRJGp=l##_DsoY~T?' ^,4bv[ly*7]؞P_"]TY.8L$5"ʮZ%T&GO}ͼ7=r{ILxۗ8&V\R*~jϚGw/iMokXLzj1JV"Vw|u-yPn^:|PO'P!(qvf$VeLWP{)"Hpdmj}ji^{|xb;>5laZ^4i+j ~\l-Ú2;9->nuψƽIbqNβVRI۳-EcB䗹T{d:z)A MXI]pa}-&pbRg+YAֆtح1lÞjP[9vCU10 GA UW8=!r<%M3liDXX -iV|J"}K޾AJۀijzXOLPm.32 $[œ?E9LZĘ4w?F !eI(ur~*~1biloCw/-%|A5|uUtْR5z Lr,53k"Cg7%|}{s5wY‰c P@e٬f0TEz s6OF }N)4q=[p2jƎBʋ|o;͹X񓤒N d̦ESJ7V/ZaS-὘_@z+㱿ݨR8@.bƖ+Qcu| 7K rl((."LG힖E_׬}׽x}ב+R 19?y1OޡuO`Y N-M΃PYYQҹCǩQH.<ZM^lh)rI:}5.7E辧'=n6$lb=[ E fU1BZE،)?>0]8=S#fW`Ou޻Gw"RA!998g<%z @Wȣg haRr{~"{򬜶\kdd@Es% :Fa*E܅ 1Ex hFyA dNÛ+ҹ[ ĥzQ"g[^( qɴEE @PbDaAO2>*4#_h6$_eVZZj"sC.;C=3US>,@blL|;H;*\sO#̻׮)57S_7;\ &B>Y!dE s,fL~ca+(aܑ54Ǥ Doږg6NW2,;afT:E^ 3yF1Xv2JȨdpAjȒZ吟p}jq% 6д@i1KYoC&wq*åJɤG@&̨>V-MH|3!<nwA[j?FQ.%Gj;;UbYo΢B)ϹZTTQ'P*<{(W/s1qTW ב'ynm;xYS15ءCg;/]WH`[:KV?l"ufk_>Wo TCғ&ț_@uD>qN.UZl6\ ԧ4 (z&[ FB$.5\Η`\f:t\j XiJo=Mw ֵA }(?% `],G^z8 ^R@>Q^Q"$t[,cbZQ8e ॲ#G;$AmgX9]ʲBzE'av?k \r:@1=%N?k1o2锟f^U,ΩnU.tL@1 VȮau&=d4;ĸgeznr`(}7ݐ5!epٮ)ʻ{eq`l!;SzrOS:-Va4h`V]RUռؤs\Gt>&,X4Pp9S/ ׍QTdp8 1=1RcKk( &S̃{A5ycika|P"< 3bF OJM N9a`g&Noshh[$$ lKgPп D)m,lz +,ޒ/SBʒf5xE.dgJsX%+8-q#/ǒXa.rb^a ռҟ%[m1`KBV)܌ߍ{ qѱgXpϕ;zUJLc5f;?uwU&0bFqaR; =,Z ~Kb'Wj wu|#ml.|TS}mvT%%+}"enR_dx?3->uĴM(+ 7@ܟ i59ѹ;UJF/ԧ#_W:eoŕ^kr<aq ՚ 7z7YR׺JۃHV&29 snǗoEyI|$uBٮ+/W: =SQu1ֺD!?e˸GdƷ?`hʛ89SϷ6P3 sWwm<5 iހlL[QkTS Nv[SLֺ9IZ]!q|=~'Xi!`" YKG-*@Ñ'vmZ;$A&Ẻm%rmhN5[x&t^| zY2U\/&3FdLXdsFtd|˧RSOO4u!qFmgoH2 X|ds;e#Igt_FvE?[R( CArx. 9 ']_^UW_OiKK;PZo#꼭>Fj eGR>*zE̓wL$(!Z-ݬtb&(6{xgXT^#Py =z:*0t2gڇ:_~7:%I/TV,tsV+ޫok!:n$b ĕXsTM)Uo,R窎%?)"i(ԸrVce$&fѝ@!'tUVEL<coT駘 gb0WNy"IMMd*xeq]]O h "pS4+9ⴶ?;1֜r2DUӞJF5Ԃ8fmɱ[5||ˆ:+Zʴ|nsE ;*\#7YK?:O//[~6!pXENW'CF-S䆄'u in9+bXXfGJ*bδG0瀡wZu <߶X5 ~ ƀӅ* ӌ |(t3"q6BhV Y-vǺ$C8v9~O щ;IÒxbgYUR` eD$ "w_Q BzR(H(9b.V*Q3!VGE@P4ؽ.G5ka1B-jϝ+roɢS{*lpkE(jX~k%ՙ8TU}u.Nw8 p6 `zAM޽nH6*'2\,Ы/goULЖ7yǺ$2T&t/=A0;;Be7K`@ǼeG>[*F"jQ_$6/@)ک63G_ޅ{317',[%E 9YTxA.k=a@MS&1!R 'y줶UԏGdC14%;c:U{BT,&;U$m\3X0\ 6 hޭv Rat.n6x9y&/Aj{˝^8%a^j:KJ͏BZǃi+xJ3hFҁR##U,uu0דRmMP%]UuPd2\2fwCmժ|.^Mn\ pܺ՚Pg.LT$DKJ? N>T]fb:d@& 6j[\cќɾ^Ձ%Q~/sRwnО/ | Xx;ߘAƤFuA+bzǐ&Z錘k5-_!n=ɡwcc}s+vڴϷm;y?%6}!+} bM"t'A[mdcၧGhcP+]h!XI<:EW>BӺKUh'HE{ǚҢ%̦ܳIIEK{)`[^d@LuL񊐛GsNrcL=6hc7ù;MUyM˱xTٌq. ݾ~ +H sNxSCq /g={0³k%=%( x(?m!!ӧ} 9]W`±H z)B\YQ^OBkr/1YWi(sj1$Ғ D䌭IA_YdEC}Z\o1Z.jGlv i)at"x&0E&%:k6:MRDs/Xg/)% -9 uA@VCU|O2G٨2b[8q)ӈDeq趨)rkȴW'uԃ|q։oȢ/,ϗ +μ4IeIqjl:>cc]7sB/9 Ârg96(ٳA}|vNL2a_: w~@{QiJAʡyMxj0_- _? XZKϿ#@3F"Jg~^ :˂@3dXu k/G))- TfGn/8_9x=ixb7K}q=kwҐ9af厔\z/~gqp/6c#w=v9Gsu~!:\u<ܾ^v-%o懙<ՕES#L;iޞ|̡o3)F38?$;'+9׃'?5Xzu)1j[bdSUFre5s%ՐxQS9G,QgkfJ灤xkC|\aT6,o0T@d)8Iʉ[FF{B=ў@ /]ʐ36k-zxƧLza48(0\"UÆĺomΌ PIU؈ֈ&S㷧Xb֫dŦ!QKm96.Jys%&8D/{n`ݺɅ޿ti=2 = qGR%EnL˺E&J  KXXT )͟V^s͵K@զYcF-@=,@@ lj_eDxqb!E CU3 Mi`Ƌ)LOӽF5jb2 ?;Cv&WmpGeq5]1# QBܻcanQ~4R(GBOOd?xm' HT)Rˈ45o#a %dΛy,V,Y9ej tB΋'PyMGLDoy#nGebBh)VYN@me#8tY-2X5텎I W>icBa ,v6K e0 zd7OO;P-ȁK*Xuk+ןo/70VJ4A=Ѫ}dovxxn" |O K<3[ʍ5$UL>}y/ sQxDI+6F"jPyc(qNP+i$P24>ZG ^ K^".`GIZEx)( ^#`D/?Ĝ{iҎ<9 +B2 t嶁1Fnu{՜ZWVk~y|((0Ǟ>e;4"O%=h_BP4&RTlHeBYdkThh姬آ IV6WptvZa EWiXJ̆w*E@/Ôiy xD$V1Hڸž sՒC3N D(eWX~mSa[@@+ 0ijL9/ ꊚk-Xu=3tf?aɴ^ =qwݡ T}/)wD_Т|n|u bY+}ހt^ܢT(jO ĢQ!ge xɾ?) 3){C Y"L0d=caL۫_sE=FiO-)Nv7Ne"E؃epRB[q+NqO7Z@aX9Tl;$DRryK-#Q @ە* ҉Zܹ꣟$E^j1 FGJ$89rhETdGS:܎aE1 (K~8QwhQ@AEB}d1;l _= VY"|pR /\=R̓@ B2A=K´H9Il->FqpM 7Zal[kš|87Z\Ycw)ѬߺKu`T(XWUu {M:A 54+E`aoK(Į19 ֋A&~J8-W mBl8L UDdzn󮦱5]'rv'n*}Adoa}iĠ$dABxw釬A3ھ#.+H6m-CWM }L u{[GR+MN(fQc |?^uqu[ r* 1?T.:YZDb?[{&A(y&*U [5|G}>SsZ<3M*~8vAЩ߳qqo D٘ `-mi5x=@Hޠyyd Jf(eQ3..,R~ vɫmkj3B6F ~? ~澩T nH18>aMHL)_enwia! uSHnp sK$Sѫ>]ҩh4p.о[r>b2caz`+'3keb 謊}X@jV\>uŐA/>W%iD'rth\m捫a94!.|e⊁YHzZʍ!?IS( M\FfZI~ ^)S n%Ŋ_|PyetNf߁臠U[.ШP,+#2G[>m M=3ߩD VS p-*ZяF<쮅/Gq|'`~x\ a ţJMF?|ƐY <<\X`R5UqlȰfܔ;sB~TkOy>Ia-Y!3Ml-̏O-TPIj=@N8-9)?&F㷓THUp :/USIѳ2OEw+1*k5x,x2ج?W.Et M$';Lp@J4I!a.h%a@i74O3fgv]Kh^wS'LвG|]-\w4)X"(if"2J@>BXvhG0V6$쏦9[`\$g1Է7:㺑_94{MArjΑcADp{*2|>"`/ ;Q9t&_bx|zT펎+f Zn' kzyH;3Gܴ^jiPoDIxCqx)Ѻ~2v7FHt7͹~I J"3eU&wQ\}qkኊF!H9ȶZrtjޮ!k_읓s/"$.ׇ9)iƉ(o)p2B@'N <72e@m H1"fl?5o1q8S c#bmWmZ e%Pkxy>=l1fޓ ^ofu!t5zG)+U%-^1Ppjy6ÏԆ .oy?"N>X^9l#Rq&}Zٟ<ͰMo‚ dF Z⸄sĵ~`*&+EqKf# S2b\F"";pUKΆU0'"t (Av=0T[p8ti'udoES7{7zwtlpV#1J' >bs!U椊XXX3 1"YZvұ eYZ"780lTYzmsjįhlBζP~uqfڪ (' M6/؊̵z asDO * wlCd z|: d3褤pZqxʠ WjdJ̰m[!-adבVP4b~S݄+UσR^A7, VD@BoDŲ*6{jҚp4 :u30~J 0"9d%J RÒD{Ψ2OvO좓ܥ?7m;IA3N(\|0Sy,%|BpV8 H(Q?WD!do/QJ*Q>rMaƉٚIbRE_fs)} duvlH.rzQvqZCkB::ԏ^wIifWT=n,A\iHΕ4Q4NNx):T%0TGƌLw*")F}ҹ,! ^_ tcQ_D@f-h!\Ur 1BcG?Tϊ!i\b(fnr Awe _A*Q #@p@DNEn35'G5/U{nluUߝ91wN,{qAk'1 Qo .A:!Owa-OI=m6=be^\A{#bo:3.K'9/[SiO(>5!Eb+"ӫyJWce]S6U]T+`*ɫ(/9/0QB|FyNbUkFq=ȅ=kfa-SJGꏾ>yn!@Q4缾DrƚUDUyc[Rђ?/b43~S}D)%kTASoqxQ RPzPeE-G=!K_tź%\EPs-x?O3QQg"Te^lN1CW|`'˧AIL:dk&2z;lؓy_ $eEM\q4C473%D뼟 M$[Ȃ xJTLE%Ǹ$t-فt3bI`ez]}˄I%{{\T˛t, (#w=W=mqK}cW>ÇO~/fQty)y}h;UL=q.`&4Uonekkr7ZxS-b`ӷ.(IiwD}Z3^(q6qc$n5ͨQDG^\y~Lܳ簧HLA|rLÐ<׍(1v}XhV3 /j6b^evF(t3 F.?E 4ABBi,RLjFoc̥yI5ј݀ L4XȻ<{s*_PE?JڗAX8+& dT fNJ2?OkWqx8ꊳ0&YCUi<6dcRaZX…'ϟrP#v,IHQ]LȽS> 7e=`s #^΀R5a@^[`ce, T }2mkP$bkWTjvIKxl )-'5.#Y;Ѳ/n܅3",4o\FgAEG^8m^$ҭf.%P]@Ls9DUfU.y#w}G(MU;ڐ߀-"f !hR8?']70hV,xQ<"78MԻv(1}(@ō}åeg`BO^{ޱ-e% ̔rhOcd=2>! uѡc'~-- h@\p6bxMF$V^!:AWLO< >LAg۰sɄWOJvs`mb e[hIkpOq_,HBBggFL?}kSxQgNɀ{S]s̄enT ~>Ї9ftNPG *~ #U۷-(L~q8}Є1>8qߛ_+C8SZ܃0<ұjaz}3OV E M^H$+P Z=kͿvTqosBڳ+ v\-E;D_}5uc z}zhkemt#4'otrp CT[RXj9N3QnmzPhDY5W/3Sk_Tav%F92Uv,UTjY ĈI;^7|@:oUg V %wWB b9NAɾa$bRǴEe2m1lDch2M af׏@"OTњj29 z_ʇ?%K3\*ufv }k},{);9*%jzqȌ$fS;4KzNl|_$R>JbcdyB^6{"?˙tLyBCi!X>=,Pe*,65S4X^]׷-o脣LMtވc@q?Ld.V?WfDK8Hc{ʚJ([00]pP_ݍa$GE "@"тĤRoA$vE EUs9|0?dX>2*=17]xm^7G g=gtc> #7ZT]^ $i+ +mr`0z˵bBNo'wxbn-ќ"4Vئ-s(|uf7Q3a)-r|eÿ5f#uK(dM N Хll`qy4  ?!z>xJb x>0V[E W5;<;~mLP-J L73l"pٰ;YCZ99FH|~Fi'dH`(qF}>}H!,n(V2Օ;!$lj "SꃐP2R'MTbWT*VȖx㝸ƴCeV}9K1MyD/!{Qm=[M5`ۓ A9bKN\%$ڭH W+HƝ0s)UA_c'E\Gzcx}5;V+Ԏ9JW\G.A(CGQԅ-6ax<-GZȕ( njx"qLɺwNaU]s暟uhoBFG%4jwEyCFRa|Y3h6t W wt|D ?Ե1N:д#TVpOj{0a("{' y|鎴a,]6 %Gf~yb:0Ɣt ;Ʌ{,T-T6t%Գ ):\|. LaN*kNtoȵBb/GYOs2~ \_](WY coo䪝s)/xJf[=)p({lAkןmZ K̂>ך|eT&MMދ^%sSdHt^yX:᧣EќugRNю4p =F~!z;)ynvȭTp1j$g(9@9CP^oVo'm"̄=$X %ewN죔{? B\4`:M_gӚ=[- 0S##mh3&vֻ䫡4\/,,%\ 4PjazhU<|!c zOPDC_0ӭY.. 京 Cϖ%m]JZ%Ep[wѤx(I*NETPp+t<)'JX ërꌱ~j%PKfC`{jST{6O!`Ho Ib>}ΙDq7ŪÜHe\`[U8oLj2OAZjTanAg؆7ٳ4ljt?Ԍ)d/8vñl>>}}+tȈׯDoٗĞkIw|RG$wxDͱ'8Bg?UueO6ˢ –r=rĠ?KlNʱa`K-fR?q|@*,JW?*%6), ֒~4"I /v0r@ڙW? ;G8)X%w(/kSh;U~*6I&,>F=X4vnv3" qF@9_e֊`"M{ƞCǰE-/wMPQ`RxRچ/lKɔHHI5^6VYެuJn 拧M^ OkH>>T$[c*M^+4q6< s#*´}lla3d⬹i]ʱ7 &rZ|fTQ4԰j~u2wVy0>o,vQ>q/+h9f!^D=8qEjSܢޘ"e5>++G]zva#CcyTW"["I-ٯw$2{BDsb#9J_yV)o ov}] ]o/dU gxFcox$APy۵܎rӝ &I 5z( C[NN`0d 0QW*nj'g @sv+RwA!xqm'<% @6N7Ϲhp}? N:ok\y-I2NMA0'vT? ')pNK0 ? CٖrF~T6_^՘ 4~ܘdN!z:Ԃ{N➛q?( &tatb″X\)^.L&y6"/#HEZWZTa q6uNVԪʙce,ϲv*N_#buW&fu8h<)& nFDHXw8CzQq)Z8zS&mz=5j1HcU::Z"~Ō< ^#+Hyw# >\D߂@\׃>|a# k9ϿFZ L>⋉*|GO\~RC2 7qP<4I͑_ 6GtvuA59#s{2JO3l wU!TY!eRȐ\نm`0UKr7L&d\ܽ^n|r4Ul0xjAͱn6Q0&\={FG'/UJ Z6GA[T:#ح(o?(*bӉ̠1]`'2 d.[(l.ѥ\)cWA[)ٻBV7tʼn t3̙;ȓ*$Jhl*^xRDvj%OBfϧ'|XVY $Ԑ;2OAv "?IX[oRK3Ƈ8ق㘼D?w]Xʉ#Vjh< F] 9$uɤvne$_:kb$j휷,WqDO${>T4oĪt ȗ e_^-0^PgKX_C2xT?m»uY|ԹFCGC̆Am^4(nEzYNR-:8W {ցY#Ń4Ẻs COw=FX|ah⌻:@kf?w=~:ڏxetgC(sjmO|UNܻJ2!sL۞ɱ { %{r ';_i5&u9H3'Tʆgc~ 8B@vW'WA!HY̝[IVFՒoQ1!91(rkgg?&p}ÉLpb5]E!n`dȒBܧ}aԫ;CmXR+&EUF{Xr(AFR랿 Rv̅];Pώ4kE$>y܆1KA/w03MWrdjua= jέ^Bvxя=6pga`@šÙ -ՅQzQ,Bxq&nnsX&̑uU>"h[$$nf i} & &s }[eFDq2WgdX\JXA"QeZzei| հ:k}dQ3Yա:ISRΕX}E[Ubxc`HkzA6qQL3= Cuxv3gr:+[0Wt,oq<[]5"QF|T`Ke\VqFyC)+g=Ljߏ|5q%e$W?UN |ܿ2#%~'%%Kg+<@00"$oT g_v:>= 2דٵJz,\-.3x+:i՚nι xGGR>"~O.p!W5bQrA" ~v`5fUUYjBcM=UeC"gOU`:tyD؅͆l|%ۓ8+2'\Boq{LB/.e`H?2q]DV4.Vl0 rGnH߱HA>Y$m dBҙZ-z$_;A"9|vXVU)U9 ^ՊS ˇdJr$p[Ǭ$[oŤ1o(,ٿG\hݮaS%pX?F'f!c@L40U+XPa|I#hΓ$d) !{UEqPټ^ot'D1@͕ʈנe:aMaTH: =SQ9ESI4l\{Q=.-.J D&O㙴s|TgRwIb!ltyjKInqߨ±r378PwqϘl2a4a#qD f>nCTNe6yd^,Iuy_6\zt:&Dfl dd0$-ܾ$?U1_#))V:5y "5z@lF2!#yg&_iWhN5'=.k*M#TtM;=8:A O6ް.P29!޹_~V[p$(01D Z͹?&tW(IfeE| ƅ&娔';'xR;zz{'+mBπv@W/(NhO'U9=Ho :&T 34wv|ݔiK-$|`:Dהs,2cXj Hd!_P%zb3 Lnvxsk4ET$Q1g+ɝ׮,X?KHȗQlr[@)Jטjl +۷5}_[rF.׫-,RQ:+NnR(HS,y:|k#,H., tA! @0sķY Gƴ\3%h>Gm QB F2GCQO.׾r7X\ # Iϊxk&4e%kCFo Ĥ u y7ه]$_3s}Qt{ǠnuQ[p91.Pp&?F%X,Riat7oЌ _M!ρG4oju#waS=e+e2T=މb񡑦:ƺSi늛}W=uQG<#@X`_xN6K9ePp>璥h,4bWy&oI\25X"{zR?Pkmi:u}XnРKRɼ iW*ⅴ o>7eNvkw}Q*yD,Қc tfPѲ=;dfLR(x6s=net+#*hLk/۟d_6>r~&.ڤwcIƕ9}dÜ,j'[t>}UL-X{W`7ƌgtiG:;8!h2iq)D" qI'8zZG\ۛ1;`_y>NDNh9P<:B sCIXXqk|Fs{%j? [TNQ=9iwv?.j  &&O¨Qw\t(}vi4)m75Ǭ`*NwY~DY.w `|# &>R[TJUyXa`PpZۤ8(>CWDwCe&ljm$pҼt` ̋S Kֳ͗6vh|_CЈ0*jSr*5{r']nJAtsӣS:-D4uԣH: .IN^U-0;dHL4vL=zýa92ƋsR^:މIyZ ]`ZkGLQ0hiP QP/-}M?F$uC2C'>+sΕ\ 6K5"빫:XkZlcwLo1_\A>n*л`> @pK:.-=Im S,1^0*: =}?leTR/;h4YtWuc'1;:T ȿ! zD's~RVy!MU, k\٠^1٫Ay08_t? Q'cܗGGwPkW;ەQn2S*3oaFⷣ3IuI2L祂~KhGn5j!O45JT:] 3?9F mµ6oF4o]hl|;xh,=TMFg ,WYz/Y4@-Z*EQy!E@ Mz\L(\ޱy8@Ҡme {/ū%Uuػ=/{q 銢ۯ::6= \OoiYe>-Y Co&$8&3hI&x(}( ȾRhu0뾂OtJͩq}OҷY`"/Ur畣&oH2c2nCp_Y?:׺C(j<3Nߞ+i`ϩ`+IžyJ*bWV_ 9}ƛ- Mn",^Cu,Ҋ5έ&z;rw=^+_A,.WluE%4鮮*<%עE8x0kȆ y#|DJN4pSjҢ)^EZي6?oo|yO;X.H{E>T̹Yfx.}# 0S\Cd`%oOBkmJoCG9)J<`@ 8#Qxg[&1"r-|daWwKWOa?٫zosDј^Oғl);.8M2O ]a.[_3iJS>rwvFHHxdl۰3U #ԕP l=}7fC#㻸wAKH(g0~S¡SX6:Wj.l Dmӭab9$/ Pzښ>sW/hpYF |U.xl:@\RnA%GKwJnAfu[_)5x>A%5%](O"sKluA[0o/ ZhCP0߃?p)ܿ2}kZ* lR+cL26֗iNFץIJ;\%a:1b^}kIk苙QfgP4]7G2vUNs0؀3:),z`҈_kFejx_ GV<iY*u(43P^Fn]Y%Q +'NiK4@bYJ@]aUBY R1Y-F9gs4]v@Q6xxᡐ.\Y̍>34,9Vd;(u(^}N2،ǜMUGg)?(|̆ZIb-3'f˔j]2r+S Kc(_ oXy|!#ny{OeV;K`[ Eۜ g2菍ʅ>boztgCia+WO ;eT~VbAhKIǏ|>uY3:e&|˥"%5Y=S3HTP9$+%EςW׳B!TISmDĬ 1abQfvi0Y2fiwۧ+SJIb,u<}w Sv>D|]"*#kڷd( D{,悒a /Vύ;YkunѐP"S?=Ίh 6 5u{4wmV5J:@"k0 t⚥rT|!IkUVCy[AH pʨFB7FjzƲ!FZ 2 Kt˾HUʋU@ds1rZ]h}V@2Y0?Iqd[/!Da{.\gE#XȣaT޶E,U$uv_<ۏeQԐWϧ>pG\0ʨE~';QjK*<s|M/Ҷ^YI֘crzjSUyň$EF洦hY>2U0p,`5 X sY_ [Y= c'YL n,Q t=0ph~23Rs #Y IނYQfneμĒRx?`nvw<8%AW1_L"ef"Ϻu >Q8@ 4xb ~0RCw]#X9:.t#t]BXnAr._DcƊH|8 `LJWUv|YmJ~qJH'y"j,ޟ 1;#7(׽T6TCmRtPؖ%B\-pv{GQl'$ٙҗmQxg]޵+D!^LYBw EF#L@tVv:1+(/CƸ)qK?cOhH_s% _%yPQJ\<0I˱96ynAf%F-VgA'Nߗ e;E2H'^`Tzg@Lb},Rf7fn0kքFWW)u[*/5weT8zOnl{Ģz&ߑ[&'}_oD܆Q#yLH2_~$Dn 9wU.)H#֠sլ+ǰ^cWAl코IauҔƃ\Wuoy_"ɜJvwdrs`bV(q%t#AW [Z18F\Pɔ__`87f|n ?̣-1oר:>V$_ ǻccgEF&2V^uȄۃ/ߪg<8ރG.? xi1'/|)MO(xkP <Nn~;qL).lj::+/:?25}V; V_ƂI4rwܧ^y ; 7~M(G? Cu_uJ!{q^P1$aS~oLrxy=/H{wvQrnQe)Ab.M&&qѳhV+EtC52UCV K7W*:}nm]q_*A$Tg"&l2 pwTY[텏>FhȆݨ;IhQ-a&|N*[m! u'!M DiŨER\ѩv^#g r*]1cMϏ2ޓ;A^)!N֪ϋ}碠/}"F 0Dg>caj Ah3+>|zA1}C+ΥM Ukc!ͥQTͬ=ђT\1*kL ,Eߎd`CUq Wp;f}ҁ\[^K(ml Fl?;FBB+; zޭLP`;V6=f LĺEHүocIaz7 ٗ'IM& iP^-#;w2k A-۠I^Cv)d,Bˤ(97JS_`zu""k-x6l啸`U( 7%yz* gq9C!Wnn!P44ar]tTEMn'Uq5 h݇.:8 .^HU~H(6:zN=2复I|k$auF RuP$DCӯЏÛ< ?xM0[ynbDii WzO&+NɡCOBbHNyT^R*Rd2H}"C:u+Z)3N igڋs;y9]OÓmeY?}(a ,2ME|a\qZ}KVfmR_Le2f| !{sR JJ%29&ZR,k*(/DUazQl@n.bǎ}+s'C`).R{67 E î)'fq;IL5w#\Cow  S o#JeIf=3]##84"0hžR[e h6#~~y{| A8LZDt$Rro1iU~R߉fn?^A7']@M/O!_o1z=QdcF6W[;cGoO{eZnTxNCZ/Sˉe-wE.VlT^\sE{-Oߑ^m/\Bl5+ִ hrua?Y~Oh`χPUys 65MqR,a:o(61Wc'A{|=鐱IlM uF8B1HLi9ХM:<~!t oYܐf:9Q*OyH}|B r9QzY|xR}U3'L:$#Bo3XO\I=A\6v/Ғ+1cCew8ٌ|!w)S0*\Joּ{Y$׆3D“O=ǂ^pț;]4jbSs] sSRgFw됔: + cmv~OҹXydW^$^sȄu1pNT(\\SC!DJZ#\ <|MDh)}:yw646qqn'B"[lɳddmDA\ 0jG8䬉CElKCwDp&V->Cvm,ŚYLթ* &s|׳9t|- Y1T`"s7JQ7 16ͻ*7 4ݸ%Sګ:64֜ݢ Y6:[Z p`}UJ5YڰhulBYB1 sJul<:wxw5Z5?qc4s ^|Nm3J"bQd h/ŤRRV[P%ƿ1x\CP!OR"aQXzL6([1LK)zJ^OagG?fa[fw-ć.rco 9LF!,g(`պ-P|VMVJs6&MdB6$>Oa`܎kfA bB`Ā,:r&rO2(:*0sSV Z=yV$ҍd:y2 Co\\shE"TO\߫:e?b)6ncKK{7z42:U 3/w[Q{b_9BdZi~@0ZEq;/r L ^ U^nzI9['bGy'8HOI˦F [az,Ҍ)VVBr6/y۬j4)FS]9w'60,"!Ã2>VJY:jn*X"b>=y4To_tK4J1$8%5PST2SI]_o!5nPumsZ 掛ˬrsF" }iVX. gM.mŊ{K1I/s$+VD34 )p 1O5IbzQ@'ݲU~ -c V`)uҡ;E‚ gv:R}mOH^hF֬B+AF%RRK(,xKFJ Ϻ+%);+X$LPlóvȻ.Uv]#uj<}R+g5CQ(Rgxu) 0/*nS^ޣ k% #•$O39k )˟s=Q#OZ&(1$ΪJ Ίnyсbm°7dtxF#xs6?}#teg(7 e(WF*~h@[ V 0:5;hށ`3vg@VQf]Tx?s_l{@@~ $zq$pWOP5!k6Ķ8:%|%kG~׬ T5+dD` %oC$U>$&C-c5C(RHs* =P Hq ˩Z`kU1ڌώok9&p$;FC-Q]2῎I"̸ƕg ]/ԃXL,FkLFn7ͷjpCf}o';߬71Gml C^md'(%Ԩݫw#{KK ~tyK]IZ`dmELng4G^B@9 'K3aw(E3z}DL(v+矜6|coPN iE]3z}(#(.h,00Mth~a]X,f9B&UliE:76!sAULZ3D6uښXVzBP&OY~Ѽ`L[:͌$Ps^:10<%x \BoMmjx\m҆}tgiWԬIL^j¾58ZB0xj]AJ~\/֐0 J+"&r>ԠT,s9*#VYlZ!QSY&3  sb5 cqrxĕh@c gY"c \aa$x5WcpnlYO j[jWkqo#o1 !5#5bRbqGa$ )BP\V)6L6$uWܱHSOMS\j B'ۄfç@r|k5© D&!h72'޾UoBd_L"y?FDtdž[z|=twR :y|>i>͸b7ҰR \S܆0[v]qIQpQFY%DZ|.j D!gG& \դ tm?7񽁒IUdqN%ZΓt Q1]nk d^s_VD-$xٍ,mA|zVs*Ēɸ[[;ApNA8 Y電cH\LƣjPL[2Ϧ =ˆ?U">6-z]^Lb^#rE@(ڋ=68QR;?aMTԲ^%u`D *q*@%E[%BVqOmϬ- Y3 &8ܒq((vmȞo9x`PuG[u/j\Fj̚Axu\咿i Wjr QYboΕb- OS^afU65`ڑ'B3|n6GΠdIk|%-e w[Ks#, kB/dQ^e4 4V!) ƮVLUgvx׉" }SMF "L'*trpR&Tc[_Ԭ#U4utCr;W:hAM ;ʼFٷa/PeqOT,25, p(ޠd_~, ǓKJDP\AFvdI8L2R>l!WDw<=VE{phuiU*ɐ&2Raw23T0k`;R݀L?.V8,lLFIJ[ԯL `S.p]}^dk s#Ǿ٤wtIT1B"UuwpJxi3Q"U#;Ű]d)f$vDELZB 4a}/݇_}U >ll.1'~,ɹM_z[ an g=FqPh>loQ `jlR9*p(Erʿq:KyKiRH߲䯁xTv#5f-*Vda^(cVзCb=Z]Sa¿n*/](۬3NE3,lRTcb4#. ѝʘ \,w0zk$<ÖtҖ6' bruEՊ8x&gPDŽZVEdհav*B 5AT1Pl#(i Bb+J) :o.6麎~dm Q񵀒L\;T Nۅ?SzUVGEBZ2X$U y7ή͟%k|nL~Y iX ̝ 8]T8J}Ku{03)ϋ%BǷT[>kU+Wrq<2B^rr&)M|I4\ ɗ`oO;>vB&uidYR V  )?aJVvcHʄHfMAlF,_;¥@Q.W"ĥniB\{w+US\z6Pvl F^e,Lr[rYR9Hu"+ e~xq!,CY5 Bm*0çfRqn$eEw&[>FHvk6ZIgJQpXJ*+v{iKo$ >΂Id{I!r(G<g4Rz97-uuR{w8,](oIӲ,zWjH"'#Jb13tq[-N8yn 'ȟ($;&3>R jR¡OVq͚ 踕 v!:5k wk珯ve,w|Ir:EZxc"De@XڸZ B edLAg Zot>4Z;U}3jH'+VQdLX E jDiKą鰯RZ#EnsZ 6+)m@()|;Ajf;Ant7_Ii{zI'; *ŵR,w TvtX@r ɥ GRfbeṮh" =^ǥ('%U$h3PzKHJ >R3̰`_TdB9K ]N]ȴx7ISּԸxHF9S`}e~H5Kg&.΋8ǂBSTNv;a{Hzm^a'%YՌ}V| ,,L<7ntJJ5׬â|q,E WiNLatY3'W(^6ڤ5-װU\络 W" =VSƜeN!$4ArF^ W:u^ j,|EY\SSKSD+| SPݦg0Oq>'RF/ 򮤨c<8B#b0(X:+ք}"_׽71$PuKoe߼5Քw+tH .j@ .?d+Rg K# Wő >fs:C..J+!͉N@JhW4 d?dU<[gdG]N/5 o!l '޴V/} T+&zCuŅl R7+~G!Ʒw[˂5LӜ"ԕwS!B<*QP9+@iRzjf?ڐ' 8eS}yKs`ކ +ia¶aoN%!4y$Kc:'H_~eFZvB (gKBGҿ+4ox%"ާƶWPvd2~LlaKfx1`0]0r8?o-cSq] u(29G *K">@{nDz; 1Ǻ,,*yfbDJ'\ wvE%"]bC77<'As 侀2ӯ$E.`O3 \HǮ;ϣy&\ʻ,58fH-7-*\hf~~ D` ӿ9_,SТvjamKOgGFv2-wp?x4F`vwHo%rl[ݵ`c9 ;a #,^C8 x:3HQ9!OfkYcf ߞ̀jivLAzY3j8T!01V4꘶6>,"EK`e2Q MT?ċôr;56mgBH|x4Pm]M {t*H#l:l^&.Y(߹n1 ԅgx?/.J|%ႅk [Yf &U{-R"~]`{R>$ g%X.vYH&ޜi\+#iy23gHP48c@6%N#F :4 i0%P{lHUSVDpw5;W4D Xv:Kt-I)0Ũ"m^q~zH gS2u뢦b[cn}NƋvsBDSAQNKQ./זg-a [`y.bդZ5,26j-G'ɚhGm|nb W+*H(E#Z4W=}D!?eSDM{DTY \RG/(;,?5zL{GA?60i8T4T pکD̝wQɰDa@D#x5B)-?JV$3|%oJ됩abn#w_*NuI`1[KNttK-G?Ϳ42Qzy[>btH3 Yљ `S#K,sV8 f1 1.eXfQSL}+ .gjh;t2ltYCˋn:[5ü`2 hc (4kгƥ. 9$]P薀zM6)8ُ̿w4E]> 3"qc/{>sd杅&S2np.++ᾞW&n*zI@{A(pp$[;Ľa9HiڜP(^t;DGq>?aQ]0AJ]HYń@̤A y0t.Kb5 t)E x)!B!M]pa$t` J&1"r:<(ە[܉R?3 ~@>1h >iSSx3 9 > 岡ԇ li#yƟ%Otgӛѭ yu]EEH|\˥~ߜոƗ^(3QVbTKR uFkجEkM.p`< m=cЮRY11a{V3zN9j}YDMyUĸ`_}P{uZK q~O]E]7*r:_-v(FAj}y{'J"p} CnPY˕nhY;e XVtDž-ey . @ ?Cyq3EҪDkx3ñ*7WA;°ȢGD-Xq~rу3ӎ_W1UC\K/@$,/G a*=KUGrk &w<ׯ&l&;#`8{%7ֳ^c!RO8t)pR.9 pY_?<U+2 k|{ױIXT"r"]^J˲QImӷ˚j\CgbJ+ˀA8WWۑ9Y=sQ~!D$s+\Nknꠠ.헹'?#Hm)ci>ZZV1z+h E@`i9=i4"WOHOB p{*jmFG[.w"@i;c0D@Hc,["䗴ch]giaT-H- U799>ϴb]W,!tSq37 otYDz |Gl!{`OW%-ƒA="mS[߃dtPiW)c; KԂATNiL]T}Iju^6F[H QG/hln"ALtw皕Wu%PLL32ܠZ z]JXDZo_+NǹH"XC5@~X4 \=buo憅Gp9|fjRSw+nJ.|AQ=) 늓y{h 50$,v)IUS+P[$[oQv5L?8g>b#|30>;c`;PBA2mS t,J"W<=]a[~Y`l8>3ɥ6n nռdcVßt ?%]r.:O9fi=`LaB:דe43H؝ժIc'⺮Oh"RWڄM ;Ngcce ei!EC63#rv(\uA8 ? !%I5p"ٱ^48[EWcmdr1'$P@*7)qlzi ڥ?F=Oݛ ME]jNIOBc}-L_۩k(tZ~,=8 8'6Ocu#R~`D"᫢H{׈z@8r.Bt! ݜ]+h-ձ=fC[h3qC_^R6e{xi9܆ß"> *^/o/fq*7Z=Ah4]4 2BɺWLErݝHaeOK9u7t\>`i{2@e>+w."(?ЏE/",n|XMxPloFU0?|li-CO+ u9 . 4R 'KJV&kP 1JrC$>?] kσAxGcui],٤ÕO> 2>Wvv͜N$A;2 Ӂ?}E{*eX|1b0tCg< ,1Ů]892zt_ٿI[\x?sL @qY'G_EȻG* EfMԕWIYx[ͫw?Dȏz:(EvV/\7&B | F7\++L?*5-CfN/dI,C10\3 @%nVWQRaq3t EPbaxb3kzian+]'ߝK2Qf\#>ӟB|`tZU>տN;U 5`Eg-m%5+FVˊa,7^2|.GX8B&hQ^R髦H5kXzqCAҢh2Y\oA;ď>K0!mz~˖`.\㉸ə-Zn#tN@{D(2'K*V\zj (mLOե)# iiS H,ANzV襑N ߫ntP,AX7 H9jj7> avK2;#\܈E.+8U1e%wKfӰGXܬsg@r/MR|9 aJBݿϛ~P]'nbS{܉/*uHŋpz371?XyqI³5zzuf+.jF-Z ڶI#jc!8w-ZmL.L! 9Fs fgEa:(30lMxgʟ3b0k!jF]+F{XF}`!B9q3j\\vPmxmdfH1Ѡ%q/lPRpgAފ"nACfԩt\/*b {pK۞4i Ϥͻ[ ]Y2Pr%` Ljkzk$о)]["|t)AV"fMQwonhAǹ,$z(ִFJH4Qd'+,qk7H{AAFnx)ڍ*L^Ra[pI`Zg"I#n)u! Dj|qg?$X pMPL"CESzd`[ 7 I"A%#M`09JPYW )e9 qIi#v';EbJie[*ؿ(\Ǿ( SSNɾJaß + ҈;V* @vr.nJIVLH]@Y?3vMf'T גڄH XL~]]" DbP4|FWhϐ5M-!8xF$)W-qW>߬ pi.4[UJfgo.$VBxaqyF3S. } ; f+QXSryb|Еj:Jn~k2< VCUxX[Ơ,ZH*\eyX1B,V/eiuyUح}e[ Ǎv-\XPZm#ɢopD0 5eևz"Nj_=e *iD(1&x.e Wڭxo=G Ӟk +@-ЦղCS3Vz\U%ʒgX6oh+ҡ˳ɪ:g|UZ7uvH;w1'b^%8)?9BS a){ X` O2Pϙ7KAPG kxKQ+Y"cPOwnA< 5 ӈ񁹳-/}Il;딘VFX! emޮe [X.iRIsT˜v=M2Tc._vߔ\jU\ı r֚zv5:G>,SX!E]3ɟ'w>ݣM'GWAq΁BU:\͐Ly>gn)?ͥfbr&j^FGDz2HοQhZye%P0uz#YH:!jw:nii Ć/jI2W~BjEЦ9 ڢLax7e0J<%ýsåOпkاYyQ|Jb/j`=l=.D\Rz&4>,J*e-FROo.RL Pu'ufGxYE c{LC| Ы.2<'BH v Nm orڴeGpa1O. .˳Myg&I&iЛ&~Q \A{*UFV@2ܽpri*<(y2$d9"UVu{K;kߵ\*2EU7W. 'HJ0n:zvHJXRӔr:`!ur(€7پ8Cz,s:2 2Eb!"TM(}n19]15] Hfz?79 H9A;@@者}XАJQY,c EQn\izw튖xGpdeN'lʞBqWu5:%B".BF*y^oK rboF71bփؒeU ӛ-UꆌLPg 7S. : QK΂cA~y `X^8b#O^iߤ Bց@@KZoL+ JB^aS׬z~O&8Hߍ^F5ShThN`!j5DX"l%j&z2]eCh$*r?+8'>> -GɊg)1ӝo&9!BG̟q‹"Čüfts I O/ehYܬ |B[kAO]R,^1STX<ap*={ F㐡|M˔< rcHJ^(;7) 7[c1 xg ӋR$1AGbGdCvN?PA{(!oI޲3 :6:0Kd@uG؆9i oWV>Py )8qi9c:*q܏T"Ķ*y|CG7L T{{Á%BYQ {T!\?\̤ד$3+8Znwη٫,Y'% s]S$F*3FM48T~ U]ӦŹϾCX#%|O={2yTКᫎOtEn2^yJL/lϚ=emx;lox,ac'U d#OyŹJhf'lH(~gnٽ cnF启/lB5w.%4Jrꞿkxb2^G?tX~~Kзb*Z m| NnP}`+2#ꭁQ[+7g/XMZ4^fD@2,q-PN'&t4v}091[~Q- Jmm~"T-WB.:0ozoAU|8?~>/v$K6|2=K.ٚf@3H " R[B2kԨ28~ cz#ȯ$rwS:b8V;h< N9)͝4.3+"񼩼ؔze^4`F{uM_֎>vvOIbAݺE ̩Il}jEz1)>`4MPmÆi1޴`lĶL8E2DӅy״=Z}m3Cg3Or0=Zhw^iL//+zm1AYu&z L Ctl*Y v"!x lJØxclJWj^Zw*`d:ΚWI+`URJ#C=OQN^YA.5/Nkbʬz, ^uڴ?nD 9 %#іƸn/o vbGp&G9tX1??s-Zϖ&)TqIZ&QoP5ȓe"UE z9lgKD:wOpU%P]" )w 4(4oN @)LEͼ >j, Ib/e`Άzɰ-IoUl钰SV/pq^= <;Xjp 2Y4e'Ԗ=wuO~F, HԺ]nd֐Xb?L.0BZӅ%cn5Wf TpT#7(q:@ b^,h^K!ǥ ξh}dez%=_Tﬦ4T w\CB:S~|cI_si6ϖ`StEX?bBNn6+sg\cEYnT;"k7U_&؆62J؉~Elln\xJhc~|>D7ܢh^,#'M47"FKinV}m;R6NMi\~Z9$[,!2OˊjY$\,C!_ol'+3 N\[É!tQo*!J?}۫`W _e/eDžaout)Ѵ] 8Ln^'8bJhA@_vQTEb˕}S~BRR^xfPj.pl xl uћ35ʑs lV.@ִUIx,kls?IΪ*MC]]o:% KQ=x){9XImlIn(QDNW'~K QE8ƾ ]؃]k$YmE 7lȊ~m‘ʄE B2 fYN4^Z&)_0+C?x|rqnNIw1E!̍.-N(Fub (w+jt1767K4KHt0Sߙ, .z ={'7KgӻH1q hN!`P>9fdO-m{" ňZ_BGntD-͹rfA~<?m?&{m ,-|4 _@zSycLH7&D  HnbٻϳߞB})l8עRlX @;5+䧭'L'chsRN>\59@v a9rjHHw5IŐi;UY= ^L%(5͠:SA*^ݑufXع 4{Q*l4EJJ5ju5=:Ȍ4 8!owCAp)}dz'c\yg˷FŊ!vz٪VzOq ꯄȘei똉6 54zXJ,0|<q$E8cHޯd"OW:qYjkg=Br`nmqjmLg_tR犮 /14H A,&c|ܛ zZ62X/@ 0{]ν9waDE m` eC]vK{vnoKĦDZ} eif)/k"'kYz\{ݲgU՗ezξ# h#B'ң>HhQ)g8~Fl]Z r %{׾V}),3v"NҐS7UoX]Q' k:3ˇYVb4K M{QnP$멱nĔH`6<2^}'XO12$ W'{(o&$#~v׸gBHE˥g9Н<-xI {c|,[|"6jm1؁9zt81E6=_)`?TOcymKHSZHr*Y`6Q`J s)4֔*rcSRoZ'ɴ>WK]}ۙ@G% 'ȧo|KԈѨx+ZMDV7z$lgd񊏄ڠ 2L} iiwo)Qs#0*zyM92pC]̥Tr5 iyؑ.V(kfe_3@!TF_a.;`d,][+^Yb gGOU2v M@z^ykE3bЙ6R!N}_IG4U[veROi2BŒ\x$-$JLkU QoQZfdgV4xmS~+ hw0fvѰ3$]Ɯ漪5ڮ鉵Aw*!b2'2JY,HB}Cjg8]+[ jT`#0Jү&߈f3pt@陌09cmZ~"OՒLc)2F85Dٲf>0a+\~99*_X\zsPD _4RƯ($T+jfΏ=f׉ 1ԟzkA2@ԨWKSm7!$8~nRuz#c,>rP%2޵Sau)փz*)X5q(h[QMnvOF-&>I!HI-$r,049|/ PaLF} XbZ+ҵI`{~}t'`xa?BŜI6/5?g4jI9A^s%jcd Ԭ!]|69;Ӱ?A]XL'W4m@\r)oPoruXgS3N;Ėk>;оM7I0!WÓſ8"gr"EtĒ@%Ux5ͨ}񞫘q})˸n*Qm_>$YÚΤlhސٲ0~m=+^!էhU`7Kl0^[lwO疺?+xYNp\5{MOSTLNJ`’KfN!R0ݥuvFH10-QcS0'1"O-. h.RQeQh9iw6KVgЧ*0E4I$I _Z14ق~I Xcu9Z}lVYC#3꾺W# 3flVcOd'ZAlp ZN04gZZ nHo59S>_ ow_7Ҹfa#[%&#4`*02m!(4>_Ndt`O0 Q_.*D-OcaY*HR*(ueE-KaGmJ=3@H0гS`js_F^Io8PNxuܯ׆ԽWRͻתϛdqr YY*D[_c (h>'X@MŅv4l^QdBusle.pug\;|{*HR\i2Qt(ERPp_mP9+QNVKC<}*pe뛼U1W~*3KN8\9HQdvtc6d\ BBh-jcɜ_ :rGSQ߅ϻU% *F731&Ŗf'{(;\?;*d/0\x6PFpOw/ō߈m{0XJ9SSc?wYZݾ23e ;f0q#Yg;x}Χ &p@.W6JS]<6|7|9{u'vEFڞF3Y)wY!/zQSԓn` hz $EuyL74cwR4ᭇ#@Vi!Kr^]wWQ`B}Gd30]q勑`,X'$M(`lj& =+V2$K#tV' G 8] eDd#un%vR.!҃s[E{Uvk !(>Y5~)-Pa~/ƐEB{YNd{|#\lw3*a9~K#'c&}ĜtbU6 a-eچ3 T"j!g[k<@1!U&p8 Qٔ,3SQsBe 倹lҐ_"y/eK,iT'=4a(H"l9TA5}p y(\t΢=)Dǧ.C)3gs_ϿL11@J H*-'F  +ɥ:qfxCSE7Ӓl}14Pz&TDkHʚmZ2L~(oG7ȩ5t/*g,:?'!,>' Z&>0GKȳU7g6b7GK>IsEܟ4?(Tqd,J2@,>AKrP=)S/lEG+j5 3:CI|53M]2S<Z/|<߼~eمs9탊E#h2,k.{gҝXrɳM yοilD&LlJQPFV& #XRwD=aj6}Ȍ/HEѤg&r¥Sb/\?od&&Cv~N*5Vht-%j2xy^{ ĆBS}/iTؒ#.4_(u@dZ`<?.NRk;UZA iDzU{|q5bؾ+cY4 V{=EJIA9Wϳ}•Jq6R7|XQh¾ěWV3!7zk7N|PPftfJJn+rIx8=Ce.7fCeB#n|7/.8&~|IlCQxwPVn VպqukjUG~HNP:] boX%kDaJ1d8~q9$ErDljP| "3ql4y;U-^,g'[ZSWTj(8#aJDxKN*#/as,.-=r1bk |4 7VLTݫxN l.e>k9s`N>ݩ #lȽax9sk)VnF6`('P|M M /,!_"zYQ^'g@wK_%ה/Erq2`?_I.AS*(aE?`h3Ն/4+zt|R&J d(5S.5tM\FeM)9KkȱF/ށlTF:ILcSlJ^N֢x-Fl]j2p\Գ!rD+1#U4KX:< 9JO4L=| #n÷߫8ݣC" Ʉ݋C%`x&|J'FhHTeT1V5cD̺Ҵ2&{M,w+0 0 N4!%E=w8D{>)C1)E0Q5vg~H/Dd'>!Qd{-T_/_B ܭz Zu؋OfoJ8gu&))C`d &D ʷy ]& eo\ő|My(lnx<7D.Pix +4'F?b?a+ʢ_pj$1ڹ <[A;st仑}~$fDwϻ\NH5+F=Dd.9v~[@:K-V5p$#*w$Zpdʌ>;j1 f1j!nb[نmr}IzvRݟ2F2X֭>, u>G\Ȼl. x5zLgpQ;{Ag5PTjł;Z;Iw_iT\l˴U%6sڢ/d 71\雳\C_ז%SH<~޸"]XwJrS?/\6FȺHO so_JYDR B U !?Lnt_@m _e= xe  nyhsC˩؀]7tnZqJ/vs@rme,,;a f+Gr)@\zG ͳeΗHdJNɈ2q鉸 -&!pW@wPm돉آeL SW^GW ]8'qr/8kIk rG@j`{li_,!:*۰'Xw(%UŷnQ.}Mdj/Y@L߿\:PpsBM4[ y tU~.ɨ 37RmE,#j.OGwIA/.e~DwnjlI\^libj-*)@umPxg/@jcE1eBNŐāb:`/&}8'q\u,C$m!nMlJKUH?Òt?u _-eT|UVڽ fzjEs,OGWՍE6Uu߆1x v%~S.dGkI%uLv>/Vt(n}' # Wf O(2 ,SPR'-'֯ku]0HdjBOk}>ΆU *UOJEM=x&»iZ+;iIAXƾH#}wH) Z\,ȴƧ:$$[b4qӖbH^3sdz-^M4ekl,丩uףv]FpMD "SKEjf_bͭM\-RՑ=9' 6;>ז8 EFp0c*Ɲ,"E{c:As缘fmm Y1;t&jW{ѰWf"+Us6| RIJ*[=@6anRN?PIsM÷KDI'CؙzD80qZvB70 fu\Lؗ3[_CCB65τy!91? 5v(nnc pxrv<:2 @@a}U6! D#.=,{~n$9RGbU|l|Q'5=,`~r0opڠI]FO,jD-?gR:μP{_X+]Jc<֐, >5qmϰWϐ%HϾlyR!hNݒl;IЋʊb@ATu[@ys}L$]{ `1[~z=\9>@2 Rչ[7NҜW]Xkp_ʚ)AQ``?~ bJxl/RZ4utz͙ii>룛yJRQyui6:\@R"T!|pI7D5)Ý*n{Vap-zwpWgqP2ǝ fdʝj$t@`Qп=`IZ(IgrS+g)'chɮʟ9ODY,ьd{#_14 toD_Pi kC5b`C&dz<0Mz?r"i2zhF.mB8>"Rn)3W8hbMz$KT7xh0_K;}A50Pq+Y@ YGTTCixF#KL3%lI59iK+@&|]k#&t6[M%B-hužaa!ħL| ;'H)ȉW6A}nZ^Aa;{c݈v>jߔH瘠:!/d.ӉWw—xɄGV2| JjzB|iDt֍I`%i(_a#3jn@ \I([E<ss9Q]lBzuE}('B |)H&AF|v ޶ b|B^ѧ 8 Gh9)|MT#~+ӛBS`Wta`;<. fy }q\P|VXQ9LA/7M"tÎ֟qWH.Ѱf(Ki/#d˭Hd^0M+fj>.en{._NFfNFsmv""ýw%/cbȅƱRCXcYZm~*3 6Il=~r1ૺSU<{<@+./<2 h=Lk i3@(mGf:lB%;uhk]^[EѲ0rx֓ӎ"Z[x64|C\ x*0R; tUe ] WNRKYt]\+7b%&@J*O%@`l@cnWWpvFgK3ot>&V -yCyT]\;yT)O'T=]bAI!F..v޲b̛zS.XʰV!B'HB=Wb$J2Sf iiJ9OrdUxNЫW & cwn/OO< >vooߴ0W&k9{t٘DdY!]'r8 T ruyJ.<rxJlV#j{>4ws$ZLFIk0[}k(x!%@G_o1AךR!V Ju$dDmj45BP=)4`i MRqe5#)~x7 T7/-}A[: 'jgzgVZf.KqMø 5\jGYB&`}^bu/UvwjDGp,a&ȗ,ۃf P/Db+'ղ;#gWyG/ R\D٢e@fA{0KڈlK@v\:t}}<ĉTUto2-=[M,|/`tVFF2FvD¥_R@<:ێ6 .݆dUK+Жܵ D!aZ]#k}G *+fOcYN)̉pV4c %ŜػCSMK3Py35vԙzcTA|:3~C]Rdch5v.H83hA@K;=rSP29oc:#;Zk{uIl8ewJM;#W+^[o!˸j/ZXDO=OkXuv HD0~)&Xrl1̆E۠RL/ԏ\%{6*η[R9ԛ<Ҡd`sZ$)KMjMƒՠoRbsI+ u8˱*E/Fb@}2޵gI_k Kf fQF^ҕ< XT狢Pzc/ی:ӥ7`~KvCD;us!;ev%|Ǯ_4l%\!mƮ)`Ċ;zu{s"h__ͪ>&iެ"F/W[+~ t_rm}Ѕ},UQqbj%y9/} F]z5K#f>3-͉LR<'VGj o"_YƠ0ʑhϞ{jN{t63XD&-& 6dWcf+>pIl#ެP/`{h2[3]aFݏBw(إa! 5,ۓĞvxnTu7MhwЄKUq#4 mѪ߁8[ v"gۮlx'}`>\&mx p$xC&6s~ /sTq=n4vFVpQs%4puUM>O`&!a&/aw,2ܮvՐ"J\/x 0[Ǿ¼VP?j`[5|k\5$힍j][}Y"JICWw1KNiH\ QGNE}-Ve)bAz`\Z9=7039[KK׹X!g\4e{ vPlTδ_n,n.(KMzv5C XTD Ƒ78:ڪD |ҏ/U:xHП D >"K{@Bokd;587+W(o!o^iC_u|R{ix:}(6aO$>/V"ބ2fs*&.f+ GDT;R}̳hiW*DOo͒PE*ԤqiyW@3nS|, =ꄆ- :a&t0,oeݘdlIycH$/ ɡ ._jB-H1mz2|&m񈣘WNKZr8og6K1ܚ}'pEAvjVTg)@1~|\äљN! n1PH{Kkzh!d"x҉&vRJ Vu<3t-~~4N6Dcix )Ď0;[66A|4Dζ70KgZYuY=UK[%#z:t)sAFt@@*68ZWHe3!S|Q[ꈩASu9 2Wd@zq OHq |z? rZym! k7hMNX`(Ǡ!,:u/,i_>sX.LP!QG šZU>8Ϟ>Y^+׬y&2Ah/t3W֝h؅(6kxxрs xc'SkxI5QDDXS ?Fsh UYyJ_,>sTN$*dhW9]P96`+}7uE{:{\b+vO 9\I#vhGsjG|㦓僖nB^ .BZw*YPzOSҚ㗩YwEQ;/5qYe]8N}!9UYs09!ff;:ߐ!z2A{R5LoX|H _@ZyR}Si~CDJK HA+3#Rq d|+m #" |B`w@`Ri#_4쩽$糟0ԊQt)A ~=Tb 3q["ۊ具rfcaaDmT=ϘH=ĀUb\- v5+h4)9D[+yr}x?Pg߇;ںKŕ]\z K1Gy=7|l%3_@1bqj@0`(Uv'̓:g!B 4)q&aAAzi+f+l z?߃ l{vCt@WKڿ.[p*2>'܇RHM29LPbx+Ơy 5 ?=Gj̅)=(> ~Jl͐(mm'} hyj[wlO@ÆkRF˵WխCxaN -lRt(G]JْbNJgMuKy:7аC$":i`4W(r)H\BB.uGo<@x[zQ//˲-QpQB~Bc&^"Rղr&L}ְHnvI 6KbHۄP;w_,')Bc+vo^tK;. 0k:sw"G`7 i@{l ̙f2!$u:11hkYz8߻&ȣi )4zZ`Ώ/J?]Hվ]#tXHuENŐo)uu7ȮFsb$b+hy0dk`]^sf#.qOUיc Cmlȃ;^ [Fҥ|y(Gྡྷ%PO1Pb>; NSǗ|s2yp:ZsI"tk34*q7߂5y/rȯMCZ( 04q b@#)+e jΤZ8iƂ݃?=0 )A-i+i`QjwXB@خ)LNbHA/< ؤ#~Z :BRLo2,+9bpz=]8E28W_ncAbWfP(6Gog^YqFeY9aۤ;טq'>lcU &sݛ Ϧ";Nd*:#+I粏[t^fk9`ҭܷ7#8o ssGVdOayKʚ@xZL&toI ƿG~۰x8g۾$ޙa p<(LD%xae:"#hGoMs=PUF5<#~H0VTR#˺S44{6A <'֍XAFXi%FGWAW:f5{nqN#[.DM(0f}6T~T.\ISwdhp}<<*|Snv:.IE ˏ^>t%`ԩhjbU59=5IըJ6 CEʝ4Soq36% ޤTO(c0RJ(WR0Bts2ܹ\=i`%FR@J? rѭDr&IϻwFt4L`w2S35<׀hס3whN?J|]heA< .9\UMbZID]BR}yf fĉXlܟ8;mKk$`6Ts),QHOc(kj?.}$y2pH{q:U#6`3ڧޞXi'E[25Jbza( rsaͪ!}PQW8&2-P΁9"g^tA7sSiM6;R~"Yȡp<6>9R'#qs (W~q8\@sV2n\s"ns )fȫow1] Y;|^y!%T-?);oُQW;!T;Tl)> e-j"\XR. 쫇%%M1 {gJpm`CX̋Jz". NMTT)A!;2ʕ)^lpyOn0" GM[*));SJS^!vSI٫mX^HS!`aaj_kN|1꞊C[I|v1ǂw&!1ȁ}rgD{utbfat FGr4aݦ贫XLZCs~'Vޡ}ߞI7F@$C c|ꑁaF8zIjbTK@KR΄ rƾrA3:|oG,Emƅ-;s\\^{C5lbrP[R7^Ar?xu[{ ;d/v>Rv^tK8^˾,P k i/Q2IW" V}l5_NG-񚟽JxyRS !:3SD&Ei웰0-^d7SlxI֗W-tQ&wX)7 _ic2FyYQWewo&}D̒]IO+K+1qnq^GP "Ei 0,(|襜m>tiLiU[*)pO^R699,U80UPUNT-o.Mq(%̟ytK{#~ tO؇2f21oR[LgLj#|zHd5/@]hyiՐHJ? %2K#pxk &x(Q)ra8%Sk9X [:ng1 5j@98uIs'CG&h1Ii Oʉg"V;ʷQ[[޴BB2ī;.G: ĢGoELV stm};jIBlR F|/V0vol w)OM,g DTtB@sګ Ӝ_ۻ⩐ .7h@Ȯ61)]|GeRIH>+1+/CXkI{VJCm2{ԇL񴹕JNUGmmhMQʴ;'E8vڸVE@L#ĢdzX㹄R8 £Iy_Ҫud+#hc1HgmZ)bb`ֶ$Bz11L+좾7)""LJ[HrB|Q2p|RnlELO"%ШEѬprba@X+̤IGYHP~ڴd;m@b3N؋^1Ǻe8d}8 (Kak@J@ӈ0*CݤL~e„>2ft1#ST|ԥm!x-LfEq4JE]P#/q4522_T;af*g*K@.0P~#`W>C@b-%N ^'_A$"+jo'呯Ȁ,FSV.U+MQuoYBJZTfe'p˩Y!DDfU td9n U.dceM||_x]N`ΗT!Ћg޹>}s_UL 3N_AqW*\HmYvM\ Lp嶘L4ˈ lȖ{|zBwZ eQ,*0?GD"+:UN/alݖ@?YU)X:OɴUt8|U73֩U@hcr:dD+WvJlt# MȢw3 jkNPuzGl"plR8ЪxX AvDժ"#jФ؇1;4N BE|o-0T9<1_| =|v|H*zcf^wVw%xXOra\s^Jh=ٸnZP Co .UadwwK3Cx~&0@fugSʁw0Nxh?3 2.}D|z,e9*ܺr DD|[\ކ/g7d/>Ev.ꐈ񁣖B_Q *;扢HFuؐvnO>8gYcURXz@0IӾ9QԦi@BA]^30צ*"]LFk팶ѣ:Üެ8Pc3Ϭ,n_!Ɏn7⵱z&}RmKbC^?6S=,)H\RcĘo&SM{2ӘF RةVa}ن)tVmcQ U7ux:AXTp}z8ٰ2x&B?Mװ0xq!E ӕ䝃t#jscc%p¾My'-S^t 53FsgM'[SGGda]It+ VD}En00-ܬeSB.qx'PZW;y )Xsh4݋@Y̌vP.(4VbTltTQL' ms E*؍2: aV$yaxB~nRryoJc$XG7G1 7.9$Lti}\-ZR> ϕ==o_BPZQ#+;j /_3BԴ7C{NTm*>f#$ae~{>)Qc% o$fIgnq-v*LOPNFw@~ 1JP\d}^_ HWS .Ps ިV&Eb]' _$kcJAV(k ]mz> eFK,_L"}#>OV@ϪgX, bt3 H<+|P͵{oŏw/ (T-~p1w21A'L"+@823{ S'%NA5 0 E-\FJ1|yue.Z^ctrY K8qNggu?&k -Jex!ػUlEIm\ؑʿfsm|IPRͿ S@({cc.œL~CUQD ! sjn,& %b$O.da43U<}y{z: ~dM;FT*<8SVyGS419&H`.G[dWG#qSN,.DL@d3{mI1LQPq@^t^ө%H0Z9ܙxZub/\Q(ps~\-q{a߂3}i'a}:rO$ahH~5m/OMB>o+XڳuwCЋY?#iR1Y&#e|qҝ"T~gM&,60s';т4s|Sʏ[Vpv!KF# Ls_53Kc!w{"Dxsvr銻/9)?ɣ~,0׵iGͷ}ރ;t&Kh3dOy,?OL YeܡKCqW;3 :K,o:*iG}eTY)/Yֲ>נo4\p[iFiu/u~&قDM`ȻfA)=b1o5d-9u.6. hŒTi% {RaHcojl//Fi,{ eF:)>~:oX05M6_ozZ 3`āw8 \r1=t6RŎ x1i^ zl<`305v!LL6uWWCבN^p)S52E9l)%kc1Cf&zx#[tL&\hu c5ϭ Ж&Eٗ$cGgG 4C\MF@t Fs,\eVd0oݭSQ[/w MxBF[>;ѦЕD ݚjha +5=#绉Ot 2M8n@^ 3xcyI)F-?HǦg  2Pb 7` -̸#CxwIαXZE04|[cY9*at~Zvyx QBVgl&/W&ެ:~p\,=E"JDG #߹\&Tc>z}S+PMR|q_HۧRu *SivO XrF%Sm'Za7a;\BM[Xe'~X qlr[vC-@ZYćY~uP @p t Y e2}֪dejm :a}ff#!~0UP{#譟c#xA"Ѹ?g oǾ1 pLsk3guoQpY:ʰF)|-it"sdUhrv)`j㒕%)ɣF=%Z"ˏd06;.3Лf&5w{ٞ 㼣+2u퀔BR7( M-|Oy-#YC%GfnGeARa[n[0 4$J7ȑlժqh0uQOx1~v 79dǓrāXL?DL >C֟?W!S7!93HMc%˖&v͖6Q[Ǧ 3UoH 7~d|y90_kO1.ݛ&x߽^X/6C*أ3Vx%G=ߕ+0(M}}PIØB.A_S$|S^ ]`H|"uIM&dI1Yȳ^:s ~`DMUV/gqb3yhtYጻ+| $7rS RGwjؠUFZ6YT+AW*ysQ/WT ުcۇNhĜ-C嘰{"y~^T- .^˥w2*sr٧,^pAC_ۗ}Ε `_35q: j@esLuH"2]'&gXF۞p"RR4kWk#,p`eКdI7Cmn=,UXZWJL0LOϹc wjv /7 knv#΁{ my)>HQ;`<3d)d<(hY E38DHkYO 7=Wd|ԣY^nE)wľdI<>iZ~  U LBe­|.Ih3w=gI 8 2%AHBg ]9;uLSɢ͡bٱu 5[!~7;_JcMzI-_^23z<_*/ɟZzp uFZ6.NPNY5^`n'*-xؙ²/`w&5/;L&G Dj?O°*LQVNn3˨&y9q(c rR=4[+?f|UՅIm0}ˠG#jrv z@Ք1szq7wÔQdm誂+$ 8VװF `bC_ʦ%l0J`9+6EC(rqXo ZE*DG&hsRDm (-2 :\vc]HQn(Wª'Y-jݕ?tG!%Kh ȾcPs֍ܕ'[(9λZaO;n6uY1񃗸j]W:2>uc9jH!F >v˕\~.MC"эKr-'̚ V۬XO9ܵY-+zɐ! ٺd OF ޕ hs׉qHCYTRKFt{XR%юֈ9e)_CvT@$!r aCvx%J+gjjׄ҆S/f{۞/5pITG(~0+pt^FO4hl ˦(kDG%ȃb E ٨ Ӈrc;7%$ bɅzj.|.“ĄaA)/=r"v͠Ap۳߾u͕Ro( 8E쥸y;n/8JL% Vcn%7Ծgs:A0^z+pt@0X }՟m̠%@TMζ SL3jSgF:+$ fP#GM~s:^gӴٸȅOz(0l ;]MӬ&͙vq*;%r?vE&ZSJF )I2KDSf 02Ex㮫y ֳ9#ox z/(DLayOUo DA]7]{f2oԿL{a ӓXwM_erj0pm348>߭kzMn&5niT d~|ʐܚh{C&E Bh)CL]D.΍0:z Z!i{7{i ^Ј;Q#ĬgmCb&i4$B+͚t`b~x*n¦5h'Fu]%[-/ەdA3eV<쵅}d%kQ׸OgzՇc'(=Sfg{?H(\kOqF0?ktTaZw2AtG;`d^\-OO54o/wV3) xX=S;WDSWF!1n.o;ϊiѬLBrEmssjUw{}#"]e|DYhQX =4 l5A1IsU5A#H<9siCBt|Y F3#/ :$ `-r)3>MZ+! :,EFjrkd-4VOVyյ:'3oP/#*f1oj™v6_&;F4`eT<%SFKƙm-$vN^+Zk5'1ح^DP <4ϕgIwrg_ e#*V0~_Fu[yʃ8ْ+eNVv%WĻx2 W,%m]|MtBKDq"I,N(TP.6 w"|A,SOiAU.tseNX@r;.dKSL$Q>?7%i^ߚɄn*n-2X^',M_վkN-U׵/{{-nvs=%" A'pmT9Ҵ*} .Vc' ޽>٤wX`)ߣ^cͻoxX_mdjҾȰM2a*#M{'ŌEclEi(y73z… YQvz#c “S }Ҿ!)`Z-!n6hP C M).6zP(7R`fâ) \!k>BM$A VvyUPGf@ ̯.˟ngX":-RLڋ@?іmL{3x0Kw|( Xt2DƸ3(Diڱ 'KPF\ՕV+T"A}ynd ;)(D xY6iO%82+J;Nt%NPFt#uHҨymĬ `QM:hX"9Y\9_C$2%CR \̘ZqUs`FxQ E 0x2>س [dIO嚙)=YM c $iH19jt9ؾ x="Lsdh!1[WyE]6sSYPuz*zO>hNK(WjO!+Z03˶/Zs F0֙Hr~gH5D>["s ƭ2󨽩F?rma?JϨT[up}#boR8ɠ4%KX7.1l0Y&E5jO@q_%NbOfA=+l3S(D'kXҵz&dM`2(.4F𪲙3r|Ԏ M$h* } "YpT$ڂ(Cpfp[oi:#h` P{q5L`ld%ʟnHs uk~-.52D|]Yq-n})~"͉J :,29d!lr{?J!ʎ:Ѝ<>D[gcÜ)=e iyyp"2:JږڑeFh!sS^% 訶4E_ElދVd/zzws }[w]Cz)\&L+W+J؉vuQ+>x;MZ~/y#M ^h_^q}B=Hxޔ}AwhjX]&"^+Bi;!BvjF''eتmz?jW7kAtxfM05 %HZȿI)m-k̪\S KQ3&Ҷ Lz7a k0s"0ڪ>+N+Z/OunzJX g:_|&}/n'NX @=gYԇ=,nmJ";wvfE=?+gHNsKXs/b  Ij1.x5CYf1ES9񳭋|/^ٖFq;o6#n<xR7v,>0mTK}CJG.PF)v K0-$Ǚe2#KvhB`|lK=k[tG捝")sD uzöVsd\,t9Eu0W =&+6q?D'Y\doODTQ%UѕL=PHV;Ɲa [PNܲ.:LlF[ [HH5Dl  k1MrZƻiߴ8tԽ EYȣwbxoh/!o7DQ}j>YIbخ|d$Ň~|荢bjFcb :A [*v_Yod\Oc`PW"eԷFH<|:zT;u՛7gk74Gluv 2I~Jz`XAp=0:TϛZs ^֮\p&Q/ W}>EZ `9'Jb9 xhzC+6b42{p5$v~4܏q znQ8\-ojX9Y=:OVUSbL}? q{Jm`zOd[8kAhHY.R(sj3"} ~I[0%$PMր%y}6ͧV!d\DR 0B _]ݽs4>9IZrlW[`mh @*= !: 4z~AMYCJkYDJH ʼ^N\;Jq1neWbde \j0l0"+|_.([qlۉ6o4Hl+hvgH~ZёV>3` `Z[@Q\6 X)o|; @|G ,%}"czU%dJ_(5LsP=BDKw?8nG&='mtՊ 3NR$1I.G-Ǜ񧷡})كDUHJ5m9M/o߼0$V6Oq#Bc<.+깻趴]+u B!<3,%~9Wv/b&!2Q}֦X8/Z f t{/Aat[sfWJ!F&v^{Sj%X? ?HeخCQfUT)I cR< iwZ 5ˮ$' i.-`ow+cOyCOTWU0`bv[Õ "6ψ`nƻnDGIp\p֌oTQT7(+[D|~UhZ^L=ngጓn# %!o2 y\{8EuXPb o7ѡ`g|RD[9ɏ-$eW#8/t%p&* 2 ҳECU"HgauM pxs { 8 u&k+배JaY~Oa)]CxswCl,B~r-k:#Er?d߹(LnKCh:d|I@a±Zey I~͎D0~H^I.}>f٩v߅vS?23{v oi_@jpIBn, 3Z8,;Qf)1aA0s1/"+v_ bȎ7|iVP"aLfGdP,l4q'nZf=`j@z[^%nA9JES"ˆl^P4eb7։V0Q-̊^X.J֊c[X@pHPOG󰎕9x8$b=^zKJ$r2CHXM*Xj"Ɛhq6;zbU< /§I=9CB;|=Mv9R[9{()bf.Y x/K6;~WI̖ . N~&~IfgHRf06-D̟5ߩ&SɟQ1nb\p6bcU3$:%ᗙ0 ݈ajb(#RR?~M"R&s* cLONU"~hUU"k8XW9WH>{,entbd<%7":[H*H۲E-TNV52lYƷ6^1e{r>f=|PZqdq ~ zwէP h"0&=k$F-;mМWkG`JѝoElЌS_̭^e?PGuKǜ|Jw|G1(Dt?aYq=k~ZUɥFTk$Q:]</wx Y7Ȩ';lP18PYl֔6ƿPL*-=gh,a_:=A6&Xᐙ\JϺgx)mœ`cH8nR{?/`y`xܛf7EN:>2Ȭ,$Yx@+pz{ =䶑ttIQ!Ʃe- nj7/i 腧FndD'@BM.$7v}z,\rt!mMbQXM2䘄xڸTg#S@Q3O ._LV-sZ' œ\໋LLl>PCuSZd 9<3N8X8k&վ3"^<"NҖ^4m] e2U3[ CtH-s}lv!qNXF&pEFz dL?:z>1vzP_T' N08 j, `޾2_9=`)- m4V5+"Y^צ1P]~gΞr|va85W@fcz}-|D;r HN֍ڏiX~ hpLoY}sJ,( ș,Y^r`R& b.jϭsX,Lb^BE[`PdԲJZ [՟0)p:h<Jv8j"]W r]]i_%ydթij|axv[a;6!܆eb BYPSNϼ~bxk^K9҅ Lz1nza'?\H dᆚLܤKŘW rM_$zY e,4ՀPs ddY\-B!闻=/`tRi4Hb5Luw eI܅|:^96s 9W_:6ÑkL > ໿gޏ"!p6zGUPP 6 igk}({LEӑPI!P[ Xky`]ČrYxSe8zfb{r >o$ٽ&93id41S⩑n!G)p$ XTk}ˁ<'lN>\+gR|Lol+/`wK2nZ5"8?_qGq2_W_yŲ[+l(-^)rC[8}(QG̉c.t8Bw/fD dF,p"GQ7ZlU$wH@Q{&={. ]1@ OX.[5Pwޣf0)穪7H@A CpJLRMTt^̧YEo"|G0-LzʏĨc*-$Q$}3$RWC3VEE6d3=a%tmZ^'X '+|qIߟF?%\ݲ(A8WLEFԀةB`$%dܶg޶I؄|// Tœo/TXd&WyEk^E+3L#s|*H¯D?| NWJE "'p_@?u,xKO /#h8Rsf4 W$&@ehC`WaVaׄ ,˂[jf9t{d5b~JjMak/Tݡz hSL W“Љq\3XD1)$N.: !s/w+I/.QQA[5ТHDݶ=jh}'l'"s)OyK˅@ *2=b<(:GOBvw|1CIB/==~eEnz g8<,%m*]W'}?d+BG(j7 κF}7UQ寽`T, Ǜ{re9Ѧ!=0 }|f|#7%O']`?W(rC6Y"w,nksG{`CDcne8ھ^le.+F;uV+hCgӍ be~[pmhԽ*S8xыU@(u`hdVaМG˽9z:奱@K^yһo*]~M^IREgb`G١0(iZ @iw*3,sjntWVMtQu{YED]+.R~-X *[Q} vh^ P]:ؔ޹ ~v<ڰxpd/e?/:wQ 0088%U1'2ё|x&[ tx:w[a9BS/{]._N'zj-(p=-S l%DUYɻt/m z…x֛9Av!\"3]TO{Ył+r %EW&9H iz$=9] 7-Q&װzYf3w]m%np T9íb ĈL5CF +nΎ_3kFPNa 8lTeN@I"t0/}-X B_K̎I}QxhYr1q~AhVF,X˧%\ P7Ĉ0]{!`ð^?9]4a߂tO{CE)r#T/-+ GJed \`T}H^뺯ZpBm5-HMajݛK~9V;.3N)uU {^H)lCN?Op,VѠȮ@F]$}('NGtsqZhbVN6`X_T`&?n\ދ-g4䆃HVt3b]5ʳ>ZxǀD9p8YR B =8^*_=~H twڙS:p?,!#WxI5F_#LyFb$%i1^s<%].ّa6%ΙFJnS;*EܓU QMBKٓ-D@Q .if~|S 孄 E֔#,Er(gZ@H'b6t "EywN[gB)bw leyb IaE,]Zn.Ac3bU2}NYri 5lc֡[&N"ie.Sͮ#Y9ne$ &GaNi?v[$϶*ftݘC$l'] }~̮PZg_aj WZ+xnL;{Ws4(4DTق81KÃzd&>1RX pol5^hhn. a$l@M϶º˵.M!^cx&Qt}OĊi =u}D|?jn)؎_a]SKJ&z~e;Ô")ii1f S ?1|*(r`. Ϯ>qg.dX9tiH;ǡ+ku'vΏܓ<+_8)DWL 0F]g/V*KMؽS Yèc𝫄:iӚf*0! <gOcGVX %Vq:I/.{7H|6|CgD ]ńqHh!&ٙ %7%-vC̴в r`lV>owU+TaiY@cwlgHNtԣN;;<~[qW!~9|^BܕYyEhqs0#Ľ&~NU 3jak~y >x-ܔjZHHL3oIiqh9}̌$vaIߚ6båiypa&Fuhcly.C@Rdnմ9C;&K6c|y?A*X'-d| dEΑ-KsQۅyY3Oc֖AkaK검b9Ӧ?|gfT)Sm yHBk!?-LF-?cDnrU(skn6zPnM!'b5 (* GKgMHe2PgL]>1J:p lb!YHx˚Wkx+;4+!iŇ "&Mg Ĝ잓Tv@4~O]5ִD9.1~)iWpp?mA1[ƨ`ԚٗUP)h9o %ߞDܑ'_q9UE.:_&H|,۝/KlojvGξiQN18p6|:u-s_ʝG@*.hRžВHbP-]h wָ:$f^̱]Ξ#0;8wf ꊱ)ìwx@S do[3:*`CqOF!PwS#y;%g`/v6ajNVW}.u{jis2Ng3r5~l},գ, 86YQ,aE,&XVx;9_w]r/C)~S !t=^΂Up>!_ή@IDRxu3BP1R2,>]k "Lrc"B&"Bqe 4_ po&JG=x|9JWk!ф۳Y`mn2Kh¶I3T K&D:@g690z#)I!H2تϼr- qªGv~ho 90"z >Ud[(\3=Ą=>t?zrt+rgW0,̈=+g D5oepB[UQM?Sd9+ze5 'V꠆r䴚=FixyfߟɹU=AcaM3,ۦ`7xlP^FH"*XT"ӮV4mBBF hv"wes5kuZuxxLtxAÅj|On@JuI׻}4LbN25S3S-/#%6Va$\CdΣ ]>wݮ~@CT5j $i]^٘vW29@z#O`Xdzm63.O?M^AOCW:,)HƷ3T&=hg „GkFsI=GO\`M̛}Y8xq:Q@Qhhpư]2Ub^|w-Gf!5_i,u:(uy|˖Pbe3| gvd7y[E L?+탧?NoUz`،#{Pӵd4STfBT*6)>s[IF 8)ۧ\z1͵GŲ NQ@3O:|Q.w % [@>鯴Y"d e)&ڛyo"v`!`L͎mArXo džg0bEߛLሇw ӇC0ǎK WLV/Nǣ?V #ߍnFZ4L5BAL*iZHk[gYĭСF,e|"1=B<)ҺS#m+*g"uJ'`3,k]],v|>ſaPG6pcjͿhU3fLѲ?c~xW90{&x;ڒ^F^si˭mHuy[1p##JΆwՊ[vG;V[R ~['lw"8[f X|/ǁG38"|j%~gXZ(>p:d` OD?,k97%̂ 8I9M"Hruz ~[2XrH&4)7Yȝ Hy? 2Wd~6;ْBv+玗& ƤV͵TD jqm /Ke(KA"bG{YjR)r^ Pt̴E,(Bb-.fd^bo3BcjT}JưE]&f"?;z 67y ܩWʆ\c2ׅte,•͛gG)/0Ks(W=QϬו=E:5 `U1Z;p_ eP I۫{ Q{i Hׄ|,v ұt?^Uӛ3JR'DéMUz$?֎)a,CfuhJGŃ`}vw/ԸL%4 Xk{g\ij*-=;lĆXPСڔ,nGP[\G>3.}<  !hm=_1 :$qZޡaV^a>(S50.E)4$-_OV~tshZbR!H~0BGY]z"&I7dH<g(8 b%j{u?lx [3c=7բpuo;x׊w-OKaE~Z P_N c_LԩD\j-nD9e]/+KV+{Ffpdml@q52]+С 'p-0E^VCCEɇ K;\C&#f'ޫgo>KZ!3' oMxrt_0\4m3ؿLyM̠î<,.':t +QG1 Xi eƧiYLjԅ}Sݟ6\=0 3O&(x$v݂A~G6O1< 4^2ҍcb8vwR;wwKA0fic69Mh s!Sj`K_LՌ[YCo8-[ wIaҶd4Cd(_22l9bO}C(Y…@}0i;yG@1+_LLjVY p.= $%MȪ<X5?؊V`rqY^-<(˜kTf _۩Kt;ct*ҍs;wj&kb 85g[4[@27,*dy"o(okJ7I?AڭoJhߗI99Q g֐#wG2dzFUI!ꂾל'b"@)pԸC2= }vMwj^IT<wyH|eA̐Ie"L &OTu<) YCPtMcBp.|V\:NARnTiu֯{h+cG^4Sr8-A.M X>>bmaaƧK7MG8`>.'C%+b6l-Lc=|f 0"ږv:oIa.)߸U`LR)^lWcAvA7^f U;TЀ wo8(7_ARk=ՔBV11#oVZ`l.($Ş~WL Cw!Sb H)EZH (uK ~;%h{$2>ê2lu?`T{Yֶn.+%QW->p`_mtmp].;jϓ0H @Q(ASoW1^eEX׶`z3Z9GbRIWE1{Mb"JDž9^{ĽN~Vtz[-Ay 8Nt@\0JtUBnC]jku7+U$3 X飃{ڏ`LBFV\'atjlo:x)"b6|ʹ.̓͵ FWa4Iǔ )O~)2lE'TsuhFrdۥqCĵӣ29T=A u#H-YaAWK&4iuӨ)'jpz 'c9;vD Q8"')|iӊl! 4ۆK*u4qx2;%pJG9 DeƸn.K @@Zi\nBd,~pK.SRǑVm `9Ĵe}j#0OZNbx)BrD'wb"_g R,3F_&qE d!f 41( im$C}6e^ K5t#Z<$M^m]ӝBݫ#El8y헔GC@SnNP&o&=]N{na/. C(1Z˴|i$(bMV֏p(!KQ%BvN.C^lq3HCHgd<P< T}#y+ªP % ڝ| 3株֢˿0Aoա;U4(\I -6Rh;1le¯NDSqG5ƎkJ݆47#ӳݫU6\:̿҆O-S7YpK:8ĭ\U`?4~88tih{KWQ3چV8lmAմ/܂T;_ÈH@=eDX+eߣ:0VPu<}>fo9ѴԺ_y@3ʱVUYg1VcG͖Ǧ  tEB(@l鲥ťd՗ $in2T"]% F/?4'|:q-]01ǖ]BA`lN0w~#Rxh6nhO-kΜi7hO6\k_7:(WEYWy9&~r%Տp"8gzJEޥygf{v2mD̥wDE ؄,oB?{ l d=af U-oGs5yԨKnP@rJ#;f76[ s'cbt=Ox[`a)dٟcu@"e)'Ft2ƚWӊIɑj1~Lr\sJMݔ̥ nx03")M[=%0<*(ӰE(DK%R(<ڽ GQ ;LS1RfղD? XIqn3۪a} j')$«L _(%*5sC9u@۹߃^O YG ׼ܞSH sn*#{Τe/k68zXU9f6~KQxvQ&@E1Nz*NO|n Lt.E7l^&¯ma $ f`~܀$\$ų 7ksK ]ǒV)FqXf̯u\]M'?̳0!>ܪd"6=,ƔJ4YDAP>oP}rVvXnJk`=iPLLx9X1 5Rm% #]'P4˦DCIiM:r"VTmsRʩv:%%,G/YiIi!{bʆռ-LƆ\;Pؒ *@Eg#X֩+Ʌ~'׬ߟw'R~fSb>3~4f}i")@F!f ON6QWolLl5*'Z>k̂ߦ!nQ9h:[U̧J?bG"Y$1l.R} xPe0^K[w>fK^@z퓁!l}H hn ̐(+KDL bC|UE.M3f3GD6Eɱ 6ӛyP=GCy68M; ).NfbML7UMW7C8ȤYmEmCk#ԝ2kJfA:Uؗ:>Ɗp~G}#\[wb'#ԡnv E .88 .Ca}3k˻(N,/ 7d/ `&ءB/5l1*`:Y,8I6sJ'S,nX;lm֟ tL9tD˭q93uXUxK>#ߵrXd$x4 N36HHt^leίh5?6)]iõ~Px큋B"r6z]/A]=^DR@7v0&B5ѦAnytQ"!jC hݿl[uȯyu95aڊ-q]f+<> r=4q,Hܴ 5'҄>>R4!'"I5[[bezuW!_eY<_g3jn! sc>%T0pZ^|8WA&XhJU[7G"ѝ_FizB݄sS{(9o.㶀@\:Mpa҈ j)Ej?Dtݫt4!;#`II.7eM5rY"w\F$i{;KՇe&bn6Jb =*0.{mU"M!S$%%)`)Ggœ3T)s7(yVh7O.C@A5yߵ[<2,G!c.F?:psg~=IRt$]t@xJ+ab,vRf niIi!q v^UJ K^ ެ<*zVz䁨g7hul}Hm_:JcJje:t%Hf }rkG3$ :YG ?9䅫gXB&W1A- [p{!uTBmT,FD@q'ًm (N_7ˈ<>;##]Q۠22`B}sFcn:UnMj%jW(>nӤ+,?kGQl1AJ |໧,˰݃t6tDg齮??D}`e /5&ajvխoVwȄq>73s9O:̎feɇk))D7_(vcR @%nlő.]|>.t':ey}°:%Udۋ2Wz=u¯iw/4¯͂TSK8ٵF!/1 ݍKJ]^d*ef^9)yF m~Oz!";t)YVWa 9!^yoUL _c(9F/6@&&(x3JѝX&ڝRZ/e`@%Nl1517p K^jB}p%lf3kc{iKès1PB3bB[*&􂎰ʈ.lvcR{$ (aj K֫%)4, K[XxDqLG%PV8^Ùwz 1#ܜqԘE+F$U>81 vkUlהN@6HzKh&;H SM`Ăϐ0SUrՓ&O%4jq_{A+8* fl?{ >&6*}l+'+lt@xjI;to]֨ȴϛ4N8TƼB9]x2Tj`&45Y8g)IZZeG LO}"pߪ^ࣥ^dg|XXy>9 :6Wdy˪NI¼:.OC N>CYbC6!ݼ=+uV-A.B}JE~|fYHI [1`n1 KPAh~gX"Qi62pխԱ/ŏWr/7L]uuJgȅX !"K%Pe "hD0C lZ;WbdRxS .>@ǀ_XT߬7̴esnM*n20P5:l׵+o%emkkЋ1lWOĭ7ܶ # *~SX! %ngN@ln&˫>,d?Mc[L<8<á0)jck$h)C7K/ تgt8"s,dCCpq GX^Ƚ7[V~alw712^ >{%k)jhS8*m/ APJ(_U O)S4vԨ2&mc`lxiuQ&o$Xm葿5Y]k o8o}UK.ń7v3Kt7V57ۉi l7jet :U*hЅӺ7lyJ/MogGm@{NQ5>o_0QrQc8W|w3p;ZS:Fݫb=IV YėZM0dk[c{x.$qoеM4շrGXlGz uUT`IC;sծ-_fnrR$ش%\[=%e1*x<*puGG+gזvwܾA3҇ ANܽK#G'lțVw򖫉UgKVG8͉4hQw]D4Hi6ġ8o"OFGQ'ߍ\v83} $rϓEK`;^²jߎG.n&. PVf-IYD&[˔DNN,=|0#` NܵiӚ<$BӛAR_%?^׹˒feh= .p)rq0;܆qrj& jX/o7NE2>{WL%xR\O5ՍBTQLjb*L?H|hLU[/)K dέ9!B=ZMرʼ$Uy^蕹̎U E;jG1Ox5 2A陗mA mnO' WYlG)Y?qrav34#bPfEjUpu}F/w?x;%IJ#!ڄTr]Q2zw? i^mTljٹ#cajWr pWA"Xu=Adw|^Z7pNU&X_ RZwVÿ 9.V}6QE .{uԡ|3҃ƗdEru6gzܿzr, Uߡj:]8My ˜J_F1R,_b:I%VM=۰I@[N9b p><8 s(>_IBb?I'9{6 , 6>Ecj[g0U}wX?=a[}ͳ7"̷ofW}Oir}YYFUXʩ)#HEb[ 6-[:FW9:C.NeZ;^]9+(.BrØD>j{{K2g6o⭥+(6JPCiZ!{֯F]kG*(O܄M\Et;ͶS'#?˳Mo!yekL]nai5y7OxAYֲw\8 ]K[(EoR֜a?3(?x=&jL}dU}"@;3w}R$wvNIeJ?K) S5&S2Pdp}򬔄*vCl[rˈ%Z<ڋ+K`ns}BրpI#R,  b0kԇ*5ȶsܙ5q;Rffdb28#r)5_ gY3< !MWd"*P<;k$?-[<߉{ Yi6$_Wh(8|#5\Yg=`!Sq]:[Q%~_TraLY!txBpbVJM-SKi.)*pRgct  ~ED֔ؾ-K9F1B/ <Y\)T6(eP\}Aɻ,5Ueúi 'U6i>_z!|\-^` ?1PSȹqf}9#B񆛱hc* >^u|!msSdBakr76p^ypJ^vJ,Bݚg9ǂx n[/U恭hzz֤GLd6.:!E2q#DCz~I,;?{CI1ݺmTF"0f::zV,eU2f w^l$y\ 4cotؿIy8{d{f!yo$K(BR&?:,Z/$AQ\@p|!Ȃy[E=Hg(R:RԤd÷&Am|o{fKRKO)J띤jop'Dž\gx#J^L{KJ*zR_'v,`WA~A:A ly~WTȺ9DR?cW>ۅ- ( 1F_ ?U=K@uia (jkHG{g"?Si0}vH68T "_/Qk7e/%6>; T2'&~jtw.z840:G8Kro_v ɴhD#!cڿocvs ;Fdu"7@ie6R,<]rC4t)rdg36zN*P:W -R68,Cx5+]ٔBGaF3pfI-=\!O\pνЧۧd~Wt"XKbhKŁ*MukuW5#~O4jINtp?%a ȐrVcw5%aƈ/WwEwb-Ԃ3>ǻRa!ii(#tqQa.q@n鳬ZȭC?RPiwA5^[C&'hf|P%*2)}C|DcT?kEwnЄ@?0]@ Hcoz#y}8}(BokWVv>o&U\O`f y~JX%noH4ͽ8=|()V@tlLu*3VPnsa-yxkիb;k /WO$v݊w!>-p^~/_mGJ}X@|<%Y+ + o\J͓b<-ܻPR_19iSw=_O㞕fk-Uc85`iWjE|׭0gyx:l ZPs= k"?>9Ep\(}N]l0‘6AQn (k$Ւc85j? c]84O!qMW jE-q,-aWsn*X$}4feIw@"z1uQ2_ lD}zVjQZXIVB.Xٞ T&b8Q T L-߭6ߠ% z` 3|~R$ظl kon<0(/a,%Mف߷C~?]5)CۘŦh<tkG,E 'zi{2~:nOG_x`!$FYG_l`OU`:fPESlHL ne;H=\>yej a}{.ߣ^#ٍbRN%X Μ1*ɭ囪S0BSm"*##{KUaK}R/WHGA5+h}|`%^'/=eyfl=S-eOM+`&! ag|29'J jx}qk&0d@D U[YIEo(0{i'* BH}/2EVLCʭ_Pq'e Vb{Eyf(*ܡ*Ӵ ; ]BoNLC"rCNW=Z޸QU*{n8vZA*3g 0VaR+y/]6Ӱܶ}&\=WzDBm!} XмT t^xuiGQj k{撠/cizfe>Ίo=w ;(nfZ&>/bx? o@ԒEISti"Bĝfai0­ 4|:}*+ 4iȥt9o;3{NN]rؚWzXAdF]/#x.3m_UDV d pA}NK6/cD?6}uDnpᷡCQI+~<qxr$Bf3ώq2zjqv=?bHu\,].y{#=ߎwB2%%psw[=sD"h5)= zcK-F6^t@ΚxT ##%$#FVPz5a$zywQpcκI:f r_yDŽ66[b<Mgh.kUڹ>ܛt@v߭|J$6vㅐAeH @3[so1rE} ZueU% K( B $i߱%$"&^lNZ3v{QqIksV0KglտÝ '~! &gQ0? /{]s[_%U{sJ÷QiHxl"f<,* =R=j!<|W-'k~ 㴛Z^֒(_x}Փ:u&&;=J;( tL,-#;8,xLC*8Uf}(tL$ cYFiEXğiXˏvLJmh^AegÚ+V:&"B Uʙ`KKcs Tˋd4RD3D/^tXY]Mߢ} XL(@QLb@ySv2y1ӨUΟy⤉#1xBh_dđP:?^3|l4k 작 GEha7'9֌y(7S0 oPѦ;Lyu۫)2\ ڝ;;n]o{V9¢ Vႈ KuկDzb_7}By[WJP$\ 7'Rݘ EAe {޻In-tR8lpK1c|tbj Dl}eI DѫO;)ٰ(|îMZ5s1)ͿWH )|OXILO/i{Ra(g3_E~1bAqMщZ me:uhEVLJe0~9J\[G-x:V j)x$0h{=@1+PS'0,lG%>]˓-Kf! ,,$LIN7ay]蜘ږ,$yU4BBɯ? GI4;+O`*$Ҁ&t MUKx )ӷ]&^gE/e[H5a0g54WN0VYjaYV_m:@SS=)N5R5=MTԶ<>n~ˏE݉ @a혃Jt ʈq9L~MN9#p:4~# 3tiV W6BQއ!l}ɇrMigS;ɏqMO6'!+nxX*­51BQ&_e58sGt%` Ag)aip[v,vyc"U_K9QI鴁>h5B薳HsǸpQUp}c|ׄܓnںfK!]?|Ĺ 3#0 SJ6|pn%*A T{d4c%h.P05lt"zRWw'Ffާ~ d}yҌVɥ {d2_˄-qJAhھ-q{Z|\I3b5QRšCYF3G'; _xѽN~)ڋaA-Қ;!*+$܁ Dx Q$Y/9C>K4>}նɟ馽p+ $,OdeNm!-OqU1t4怋|~^z!fd6/iKLK:F.ZrCB@WI}IvJiw@`vRT"tl.#KqzUJcng=4pCf|5N:cA[BhƱtqO|(%=l+YMQ dlY6loX;G֞ h#jZzb徑ssē;FL# _?ua:zrQ@_h4h9l-?h%dW%@V8L#Ir۽^oUNo\wGPF+j d 9rC?wЃ J2۶dn@`m@|WLz`[Ji=G{Aࠟ_۬RmU:MwVZr_5,SZ,(E$B']`j61[d,?W!feRY7# Y=EjssOiy\>pn11 nVP'*Sov2lT~H-oBeN.U=ÊX7 HLCs}G"g7-7UweLИfoĿPmCJ`_tСp ͭ1UD0 J`= X˚1 4܇i :xïjAC<DG Vutl;<.k%2LrD0_N7 ɀBb&]>4j4^k;Á-ܕ-Q',;*@&7(|Z% yepmA: UHt9WCK_{JB S򇘩/o"i]Ī3YJ&Yo`An(Ga 'Rc9 V]/[`q" ZA4*xHj^"y)Ox3{./tiHѭz{Ҟ{x_ nv\F*DCctF,$NGwᨳD&PmŒETÉ=)^e>_fԇ٣4~gw݄_[[p f1HEK?(?)<Tm킊ğ**ܴWJƈ|eRpRJAf2bsX9aq \e`i#ĕW(q:*h{;5lĿ0Oa2{2h# ݞ(9^QuOV1#6Xj@`rƂa|˽HcdtW;!KL!ʚ!FsPY1ͻNe zm a7ռ+p 7g}wJ(0eG_QmLZ]0ɜeZhb:'ݗRCV)E?=/;5L"51 q$%k-4 :TR\B?g':I#"41$ꗴR ŞrpGkY&QQ//IH([UR(ۂXcѾB";*9a1`ҷȈ!M_VTIfTi 9@K!oڒѿ* e&5q[} e5)N(iJ+%݉R:xPlVH-:'jAlkd"xW.V)Rj&M0h`mgCݰ!I`cOB刵s_%8^Kv PHWڠˀ*N1QLy|@W4 m?-J3nڮionj xD2}T·y(q"=R0RlRN@YiV~wʀNy<ڔVGP6>ܵ 9*qP(Àف%;x. Sd)̴Ԩck*8iɐ-%"njLW2ogdYc K eF:1[`( NE߈_MF, Q mtЊ|U-r$dcr0xt7"XdtKh*[ߎG%~B tZ5Lb\ފX^jf>7/ RAv@70XeER4X,29o[Ij,#75I~\$K#U{lB1Ϧm+wV# wPDi$XMGx6/̶ >NzYR<Ϭ+Ҡ83mV6".HCL7|jI-Crl'L{u mpך܋Tpx``p>O-NPeȻ )ʪ԰rFqJ5qyldI)Ok =UUKh.k9smUn\תlO#:R+m=`HoS' B3'ܵ#tןdKhr D$U0{͢p@IW%q^qr\Du,$idi.V5k}Ϗ`8 O{9 "#6ҺU懼Xt*7l{<; f\=1m-mڢzi 6 mfPYoԦ1HlLut Hj" }Gls Ȭ׷j^ 1i8ܒPV%GIC %gz70@@u  .ϑm쵦O%eֺ̙`yܳiv,`Ts[ ϊ &V*:-OWUZrZ[}i|y4:5umX9C_R'~[QC@WR.r@L6]QNP{[SDg R_)T./$٫iҔ tal>$1i]Us. ɰ~  v>KsF'7 B$Y:p3M!&F 4! ?>_ۚ* OHFZjv#d(SacA o >u&'O k1/Pt3K,?9ZԨ%Ev&6)INk|+$UYXM逿@Blɩ0{=^ں_u`&jA!xϓ)^'eb\F|RJK'ꓡdd#ea]gQH\LA[,cQQG&`s4&(ckޱBȚij#7h~8k:i3Ο\jGI+MՔy8%yՔ 4ߥjJ@ȾlU54]YX%Ygo{VyM@V ӌS1qcaґYn/~mp 2Mr} ҽq[KRΔO[wΖӏPA_a|9?tŴYBWQIWV)1@m?DjS}&$jӠ2>@!]Q5FE5 m:'ʓ|Af@ii8Jz,qXHIxu)$v(<݆_i~@ݨ¸k8R=诖e!8mM6O4>̲,tBFxx7\Pˡр^}`88m ^H.Ne)4g;}\]jߔqò>:ߞ )] cn{ѷtO.to LA4݇(\9Fᙳ?*pm޾oōx|e522(xw(~r"~n;ePreȽ$yuɼ s-M_Q 5 ;l%J ?NkN +1KT[DnJ0] uc_QߘAR;#f 2d,1!ti5AJ*j'H^Ĵ!t"qr%c7J[8[{(EbD1 '=\%$JjH~SI]ÂgQ+*aEٜʲrbB2Ǹc|*'ݭ^ a?,iǯ\haD´$u^yɓ/F]ݼsd}&w| C 2MqZZa%Jҥ)uUEB?3[4J^57czP\Y#h7/`8L7a5F!{#>ÅroL<`Wnlb_ʔeS(BR&wgXnHl?62:M^-晨&ORo`rS9BL a.-D)]+<6u`do8 5a`Ah3cڲWRGz1JÛvV#CPss=xGB[ڹ]3ha]"|Ӫs 5&rc,Sy)tnO;H6ѐ@v|:5 --—)L?C(L$ =%B9I H+3e`1 _*XJ,yp,;vџTW$eWPXT8dBК&A=.];DLGF)4Y.c y^dqUZoXI}zANRAפҒ{ N‚H)Dq7{}J!Ѯ)%D2sYvk,w~CB97}\\SoBLoϱFgQly͡4g1h:UӨ<}.šD` }׹ 5GB0Ȓ6O+q=Y#-(mn5> ZE be&R>J 5l|ɺee_zptGQFA=EBxNZ3+qSqg <4+Oq-+·e/]-;J7,/*gFKt"XkK.nhoSs{Y8 yR$19inҒu]D6B-uL\ 7;N\3}.`,2p#4;,cwϺv92 ZFXgJ0wb9iRdӨQ>./4=uw|y9 "A8(g8bbqz6&-CP7}VqJ<dw >&!eܙ~QJ@)Q4v@yHHC;դK#ޑyE fRtaV3nB$f䆨{\VyC! cњ rV\Hu8qjޖI$6a܌_Nj)zFhBo=2sB8ŕ`B<^.mh(@̮6](rNR+vV2Ia8HyHPabhu+=TYjrk= p d@`85+cy`0WDs^A7yHPuSL&”u2W0#q zUg8> 5CBܞ߹b[H&%{̡2B,&]"ͪ2Lv-Z_8^stMEUäK^͕Na%7=ASXvʫ6jV~خP:2Ӯ#]1D'HFDzDf]Q (ۏی6>/VsIhKQ]zIԬ@HS҂-h񩲼r$Vg[!Ʋos} 6݉y_vݲQBͰn%F<pRBRvۈI7EkL BT6";#?;w_@K52ZbHWc- $xFeʉsF5g=ӯR շΒdoRvOP(<:6k(Nǒ!s)Sȫ&mW1v [&wdK,UoRst(` +S±1qSRRL"&%O R֊tty.yQ QA_͡&kh I6ݛOha}pC<Mh⌿΂fwkF f}XU jS&K҉Ŵƕ0;w c=ؔ6E );WJ"r afBG qB0OБ&VE2ymmc3`;~3egSBF ,c:"}:Ps!T%o`mKׄ<ӫl.D2'h4q_Zj )4[}>Ԑ]_uY72b̍)PK3e}88JzMGuˇXڸ1p(óDz!U6pˌijdhh$Ǭ@mTs;{{ғtvN^r{͘Dλ nU18?LrS؍f}:r3^P92 YaZ`p/'ѷQ/ߨw<&dr d~MnTٞ uW\A4/u,BHFnqȩ ³tw!${}hNXT@[וnf ) zii^fUFxd>RJ1gFİEQv _6ebfp"<NR T"0F&C"O4}dF[2IX>F#}H>4{6`\}ѵkt>! b| S(8Jkh BP{=ܿ8VrzTeVpȗ$C`mXkx2qjŞ "E9eXʛ; S J`?2«9Rq|w0卞Zws%k^(N>͖v>p׍E-L.q4l@/^mPj6f5AQ ~քvs,J#\R:ggIcba4=xC~5\Bf: V!g&oֲŊ m ҪE:oFk"X;y:o$cz~=|`KǺHyB-36ߔ?e#jbwKR%xφd@Lui"I$nxUimf;at>O6*i!&E\i-)rRJ'e#'Jh2Pxkkʏz'3*mA1HYv6M6fgڍOvv=#9gڏkDhevӁ,϶31h28i4ˀpx:ST^K9cZOta2T%H ~n{wOK0 a(p V'GEXs?5U Ն#Cm, [;GdC{s" WW7 7c!z{dΰ|lcѩ]NrS}1 pW5HMAsL;9T5 o .fVP C N' %MiMjrh6SѭMɲǚt@B|P .4DXUu2o99ړ:.a:j e1Af`6D<bgX:ō6E^Vߚ5WϨxIWo`CHF]'U૖6La =RH0w~mcT5ڨ=3,X]HLx%gKT1%/e4dϿ~3`˗R nl42ZPo[u7`d\qH)Cސ& Ua6gka]{\!:]Izjz'E@_Lm1L;K/޳՟LARcOfk(;]Ux2?So=N¥u?"yk- " T/z"{rԄh,=鯖O8p@`(#ݑ%WL{Pr^wO J J)¿G?nEgHa-:SRj%} gJ=Q}G4x~1.~xYݗ kÇv]J }=<#A7IՋOfV"҅:Fu  V08£.Qo6Am#I4~@&>K'I [& 4Gp1 ]IHҕ -"CrdoH>5ÿSޮ_fПd55σ]ײ[WAAT wIYX^LOdy'+g5 e/%e[!g2[lK$!R]PLJB:NЌ,{|9 ?_vZYwL Ğ"L4)-N!ҒM?Gd[uZ\l[`,҃.X*"sRٵ5 XW%gRQԘb9 BكX_f1 AAAx%maw88cgWBI;yF4W\e0-t*?s4!|(Xqj&/G jwYi L-̉S$,s-oѽxH'Ƽc0vV],bruj;Q6D.ߪ*$#'Y"VFl\$dy(jH=z`lSf jZ-GphMky-3TEP7b&_>q I3 2!h:.{K_hF`B[?VΛ>\t[ϕ-ҵg݂\`UgR]EHDՊv(]%'P#e!Koח#$|ت {\m8X4R`Qʪ姐' }?V N]F).̍~ٻDx!X>e m܃nxY`?QJaetV`Z0`f'yR1<Z4Km(`jkHPx3x/.s['%o?3XqNzl2- /?~*NN*avSpzۆ[5:ߌMUv%5EK?$it^[&\Nǻ_d`%ۛ\l |;-4y<> pKjjy 2@y gv2vkg:HUTM(K5cAi1aP!hWޫDxEXjq~e=49dXc5Q]X -u)D}:$:iT*WNn|7-s@|济| +\rقu@:NjGaXWK} K'?h(#؜/###DR3^3_^X}Gƿ^~Ffge2]=H演A|& H~o"W3!OHxtcruoIZFYFa+ 9NLࡀyf;|V1 *8uS D2` DDJm*0F<*mKx>['lLz}Ef\pt'HE+F2o˼dњs&1~OgܦEwgʹ`Yrye.(cHіՆ(_j`Yw^xwO6-7t I 6o./} 1"moW\Pfw|̧yah7D}S=|V2s^T_?[hn ibre0qZpN cvK ^0:S&9\æIY$v"bGn]uaUP{IRdB.:_"1y NƵن3¡~ЉVgyQ""w#uHw Yǻyt6Iv$ ]P`OWXcQ?`yS`0zV~ ޥ]鍍3\%,ZhmY<%r&i+C5ԒFR'evFk321MI.qqɓ)!5u~'eѩ;hhGQOӶ_ǭ& R%I"wz.}u$laa YRZC<h&nd,3ˠ$ (WRbֳUST#iʔ\U  QmbDϱ2 b c$4@k*wuh̍Jk4gx{ 5+V?@ĝjBQI?BXS6xv>8+W<+*ђ-"Oq>?P |T.!G 0g(ɒn>TbɰP[ŝU=e L3x`SSs*=9o %1-w1dm0R[[9+GDV}O\_˚p-𻊻χ#_D¸Ըe]6c/[pnB1a ~K{[[RWm3S ۝hX>7y g K2?ݓƌJK+!b7@nZP!mrL sK u9dEydW4$lH%ڱ@6瘽G/9pšid"d-Jd(zPm&G (t ( ĩAS/ʜY}Ɗ]"Ŧ"H&~=*' 0Ǒi&U>^3V[`G+x `oTjlx}DLynuN\JKAZQK!fŻ>xd< '[[]|Jף-.,!p ЪNrHa -U (Ӻcs Ucߤu[ᅴ<2?_yVkA`{BFI潔*"5QBP5uU,? R30U~8п@]}לF.<$Sq⪲e7˾~!~nq,B,*]F M 1%9 k{ᗧj&a3(z.=8ܩlI'|=Ҡb!CD?=Bh' .fCL^{:4hR)(j#2{[&1_kLJ(F3l#[ZC\k$AZQfY[d2&ʊ[BSKoں,.hh&)9q\OBu8c"q78j^X(.W)up] sub4_.`0/a(?Z̴?TĿcPsqX95 ,Uo\ˌm5Hu™ <@!@=j ܄y7^m%ZlQ帀 LYl:ո2ק.%٘i!$v ϻ'崧*48z|}_XTUx ÷5g /lxL?-i3p-`V'C*c0&_(wYE~N&lzqml|  ʵM8WOuU$[ w[^Ydyz fXc kA[Bz'nM}M弱61lÂFJ Am"Foc:8S -$6*jdhoVQPU;ޅ먊>Hs񾔾3ر-Ĝp_<ЊLCsI(ofXV)`7*W$ka{(%[1Jm`rcYve_G +OseMD M|pXs~U- z&t;7p4ܕf1Va8`LL))/gލW e#5!JoL1 CflVuF# s,Yݍt{@y2d'@TX_?=AcDŀ8PgXm!xG' ~%ӮCLiJu rR 3)%jȊdu,)b Z /OQ.::(9t>dIdt\G&G'JJ87u@:ПpRp&q KqTӨ ~DqCT#z `@Ho&uB.0,R I,opPN޴z>W~XeTdRB-FdәC9v픀-q~D{\Nz f 6,-?&3ꉹql'mu39xxTQCzPlTQBSOvG@yLʍKg3HuJr>H%rk~Wߢ&}cwMy=I5D|ɍx-k=9HTBxT*~yp 3ׂ][KyOD$=D3+< Kd:~UEu)M] 5sa*"%֫Wp"%ca,Tyƶ 'M\`*jvb$S3n]nbE/e |HuFKdu 4:&[b&] hBG_|i4/[eg3`­^/ǣm۷F\ ͹ dH`4OZ;[c#Mtڬ.L: _~z97m!>k*$Jţl Iϊ10Ev^<3" 2?]Ԭ7G7]uH\'u]jMVB:;9OMQFPǹ= t*#r\# ]1lxJchc 99)0lن| zTp ,Lq5L1-+Zi3'=0DZR @a#*xhU[GN"{X]db?R{ ׎{MP|\k# ޽O1ELAOAtAN5.I]?oDo{ 25Z}*E舖F2  _֔J벙@YeL4Jx&Gwl7*a}xaHn)3"8 nAIa?؃%Ij])3c|VX:Iao/bhU]Cj D*O؄Zd H"DL,1w׼^AgQU Ex֪۟$0FSP-0"bzT iv7Jpnoޘv`!^}㧻#za3Z2Y=g88ͩ;(H1:(z29Գ0$!6ȖTA1&| cxP)Ϳ"mxF/h8`8ׂaxY׏b5&PH"м7yhr[S<'l Ao2IS\ SޔQ3Whh7Y[Y'#FJluȸ3emoMj9uc^"U p>&@9=3\BfDWz~M e$xn Iv9M9U͉"LWV:jC'@c:*r@櫃?AvZ6djXJ 1'R:]NaaRtYAG D4* tcʪE$r9CR,J U( ޷O 18= JjhСR(Gu[>I~:?#o[`eqwT%Ww~66§Q8@]taN}.g/&ީ>DAקL3LKh*ez":nK̫FwL1اEE>5sba)$ʅeV,inbW:wƼ]y#N3׉1f3E֧3O@3KFBXoLdhZ۱_Uf@W^[!Sw9p /9(b䖏)ɳ+ hq&W8345ggYrVT?XC'j{oGs@rluѪ)4~3v";( گ IT&~dD#Q2IV]OjZƧJD˻}o.3QdOmcra-Gx. %W}ٝ0v/`z5l# RJnx e1؇C*e/2rF7p*VQ-ŏRz%z;A~VʒG;{@39\b 槝\uČPfFBE5 at\thn^CYqgtr;9!7EίVo9kEKnYm f4o4* }bީ1=XI D\3Ug :UkԒREa(MLtFyh. |`EF+e%uT3 zFI-*pFYһ슍cY(Җ| NdxabRG~Ԑ2k/)۲ YQhao%7Ccz_Z9KCk;CNUKiA,\ն.?7=ˊR +'V1` b+|U] `M׀bXe]eN :MOF;aح w(]|%t(er1yZ/k3UЈښd.qT1yZ%0kF9HL5`=' '< Rxm78EdgkM3!lE~&zr}]1jg7~:Xyr)1?ۼO!T h@[[&u֎_77]M@-#{l{~+#T|llYL  ޷hs qADHMˬrB/$0z͢9MԭtzY̿T$0YȵΘM42fk' R " [Xii6++9V~<8Ż ͷ3X$bԶK&e$a4=@R-[Ju7P.YIxmv_I %L~fA YfSvzm p$j'ez4V\WPJuE$_ʓ @g<3Zx͇ݏIbRzŬg :OɡWrK? 0}oEI9C;g ڐtT7Q0}[1}qRM>iv{ oFCʒx~1> KYU:DKhTP4@ sX4oRxI;7]dZycoȉZ,QU;vwfJ`%vCwN^ TtbwkCSI::sTԌ67( 6+MR\ߟc{N2.\5]P(F%눱J$6wJ)t=nuaM6I4:esO j~})Ԗd\"#,IdHR_de8 J'˷P9> 0Ci'a]kuMx^fiZZ%wJ]w{(:fz~&<ԮJn]fZ {oW| Mad$^Esfk~\оm.(91 }~/7#'F.UipJ@k\ TIg~c,t_i4R-oB_f8soO e#y |bX,4.$vWm+x}'0*&GGid릸 nSL#ǣu޻(ircz^CRJuUu"$laxIdRJ%r5rSB&ZI5;[InL]",ОU24maG'4>_L˛5fZ~?@r3cu*\BNHnԱ8YuMVGY*P&"N:S Qv2-SqX^%$dyxyϼ= *^۳,"Aع]:-Ě *R_xf0}QK .wr)=("ދC:AMsd4+;x69}-a3\yoםKal=޻%&BU}mTOWY0k}d,;~ysVJϚ׹o^r%@?޶ꎕ2;1]1/X\:yQ д拎)3.w}0! {FsSb̶eRm˖HCi$ZYCuMƝ% WE3{y6ERnQ0ft;~(P~>:!PѨ56C?Qfw~ ΍7C%Y5Gcxɽ?SwYG B`fe(a q!yd1@=1m7Cx߇ Y\XżD'bi}IR1zk\kIތ:۩*CCIJ8ׄUvH@T* ::\< >+lqC:{u$>'pq~Khא|"'QYN9]F17~PwxRQ}!x=*ݐTR DL66N3 ṃq YӈU&@W}f3KH.+#Ľ&Jv`1>GFgf.bFވs릟o8Swp_3BijL n?EuNoeCQY ǔd:_Dv^͌ d1BLM6+Zmf&ҼGe$V͏X( -9JgA9rBX/HVIGr@Ny 'GB)=`{6MjGrFM[G8yfJQeF[2 гO^dZt:j"V.gOLJQfbDϫWe-" ]Of@Iq`ɤtr^ "\| FؖgT{St-J]:W+P;_,b Z^ixxDߘ@̲ـ`W6[>,vG8T/I'[ }D!#)!xpIcSY0 ½zփZ}8Dи^aTZ`AN;2 ?^T|vsYnAdѸoIi(bc>Rp£^=` '˹sc2ߢ2:*^/jU=:V'T*l`ҙ˪c }phI<Qy}>BY<kŋLgsp瓭èQNs' E܍CfKS[ JjN+]|Ψs@J?LdnT[@Xá |IZAQ^2?.2GDOqbQC$yu/dp~ΊlDy8ŰEh\tu 2߱b~OwKڙq '@.bxa~v ֈ "͗Lc.$S`-*`邧>0>?~qN/퇔Alq;C~9WHзf8hvM"{3l|Ty[Ck}X&@Y^H)20N=q rd5W#K17&hX+$OתS)gD XUXD%>$ VJm)^l f vJZk 2ܛ4C00[YPrngg fהc: e|xf+$gͳeK:lQ]$oKFX+#M8ȩCX[ \Cʏ/_N (jK{k!)Cx8L'#FlK8nF~O٧^0T`* FQU>R Q5mWz\ <h_%/!TβnFI݅,cz{pU3 Xd1}[ܤTPIW-ADp|@6Z[@+jn (m`JV[x#5*@v}m5,51kc4O|'x>]tRG/#j ^r^4vDenXj)=F3R;= _F}7n I.SŰ1@,tcie/aOyp2F(uZ&!kd dϐ@z=mo˺s}{T_é-3$_o(l. @*FRI'UÚ}#2[QW\.(N;3|г !( w"kᗐcQri܈)%Z塰^?=LDM)Zd*/QqLk[o6Z9aӞLaԻ1:${)HN XsWxw&T./I1di}̷/7,< %KjE-s<VWChe~/[Ҟ X}DDVvNĔFUd='(;rxg>o=f1,<4LzQ QimwvVpyU=`$bQ=8zA*զKU]C(B?t>X/{͂~A'tqvd QS)3oE_uVJ @.TF44:pg]^ +uC 1>/^}I%xE(ɉcR^*2z[#5)ex `]rA~BZ"l?K7.%st. aY -{Rxo'-罈."sjUqu;TQRL2tCF&ûγ}J_ /p^tbG[KۣW S _<F2}|fd5PP?DcY;knm>[sÀ݀6ݍzXhg(vl< 'HVm.ݸzuhUF LϺ9<u]kcڪF)]Y{ O4>}ioٌ7 ײt-]>c҅4'Ir9L};ex{/,uQI`ƦA(}6<)йmxjs'1G<_ Őꏂ{DU9'D;Bỏu8Sί4iGT^-A-8%XkPJ,=4rzu;Ι8TG-Ý,R 1>l >Y6FpEɥkPZ4<:ةYx<U!i'0ۊZr0nWsaGzϷs2#O5+-(GcuU5FEU ~\}Cqi'7XaLDȣ'+ %C6lWWt Ruy9Ø#,bIs%w@%S[wODFE=b>e uR P'Ek}O/Uf9@^PEVkC[G1QW% Ǭ;4ҾTz7f |y>3?PA@xz5Ղ!zv[*iLe'r4B2r& La0'U _p7C/̀ITyrqY,RVAnȾG8 ->klԙmd@%nkZZU<>Ø+p!ɲE ek9d3A<ŝvL=T$g$|ujJڈ*7*7P26%;{4~㱐 jeP1Y`0 HM  3 VԹG0IX 8'>aŃ[u2Jw\YѮ+JQ,U6KG3 W( j3&$BNW^^)|ڎ˖`Rp!$hq;7G NE]Nb߃pbJH=jvT]lEakF@hzKMrR"8tLhvtb~SLg0 xByZ 8ƩGm"{5[u ZZNR"u ^-F;;>i4nƨ"(p2m @2 $N?`|TVY;"my:ptUPk93D&Ef[UBw֗WJ5-DqF0iљ%˜MXKqN#XaE2!grt5`˹)ͭ U޲*3_fe/O1TG`_(ۊ22/θS@RȄ]1oM bf! l}P<RT/xX ,65BrA+VyE-NԵ՜ řa !='|߮bM#,5,j+SRO5tKfunyKD$´tROv-Q/bxKsgՖ&oc*pWD JlDmI7pN #zy,'YN 0ዘ9B0krgtO;d60ԨN:iy5 ezmN!5u&n{|JSk"ɰYў3++`@s!}0@aƸ*j@Fhs_yl,B Jr+GF 8 Swڝ8biAݳ&5Un嬨e*(2 ȗ)a rg^K kSY]tŻҚ~ ezqIn-8sQTCF(TWIjvERD?^t>j7kz7:߈`a*좔 :'O|T=le kogKW'X C%bsFgӈ]]# eI[aF ٌsLx[(LSVc?0 8As a`Uħ=;n b ' y뤾kC\dUZnOLyxhATc8EaWĴH`g.yS@,xC@Xa>]y(Ӽ0ߐ wK{Έ(soLt!#GS{oD,< H(sAwGVaqo~w7ċ*k4zIek,LǷ.vY 6^CP$nX1duiQ>v,k;4׵Sthn%sr8*臍9,/(ۋ ,UnN$*p%!ja)mX !:Gvг]jUy[(Efp4%TG;;=F%c- ecjC ^wӠs,*"D̽ 4:NȷD8LGf [_+%MC9 ;1iQ"썆{P~0G3HgkX(/ 9Il@W~`lU'ڛrDKc]XkŢQƤX($G V+88y/Nŝ;#SD #%| 촍|S_QbKfh±`u 4j UNSxܽ}жD N.).?Dw!pۿfXnio,W\ڕu[2/h^;q ީV,Eܷ^+-\9ؤܯi/3 Yp3s`mz|ƭ8OCg%h:0 U(G3z`bwwk⢣Ė2{/)C-68 d 8, H0JeWvB"ziۖaGڭFuV$CV qAa!sFxݧe4I%6n3{ت+Tb8fKч]tUƣai:x R^3nKP).cDÛ$ijLi 6؆jo|,3?='ڦwIwJ)ILoKw滇[NSqIAj;AYtug_!̡|'r_U#"jdM#TR` ,lsf8&cddSo7BjxwٕŸ 7J )'G+`DRtdbxWک (&JDyFLQwTH6y].+V NׯGZykZ85ĩhK1[gi;Si-V,$#R}T$J Yc)U99H,HpD߅{`S@ X>dXvyTOW]'cÃ4%g78=OBͰ&BHhencC)h;rRQ[{N|uwΞk)%Ҽ/QlKqK%_:H y^qM]NT/ݝ Y¬*ڈ  yNuҐvPђs{ᓊGFN .mS'S[!- %wJ7ѶauMTӏ+Vl=4r~|}gS]v_lK.{'+o :3+#Ղ&4jB!lA@u{H ,BYtU=}3e$|hm,V^%ZW3P{:Qb=I2-E\LaeRc%=%)=ѿoEGhsmySR*JFGW8}81T ov|=^|L OQ+eriXAMm DI&}*=Cs5 hc$iW U{bIמ}m@Ӎ ohQBa4Zc~uNH~o"4(wa3 4C&Zr1j= F2)C ͸WduA0=GDdC ] cx.לXgښ{B/UM4MJBm1i̸&=jtUJYC<̃`~Xiq(QWWZ##rlLNt|dzz 㗀W| x,}bQ֏5j)Ҙ}OpV՚,[ F"Aaa'cDHIe$@R@ηVxQ`8(g;Yas_a19v(i'8oMNp vw3Pb0#z̀'|pDf\[ 7; 8\TBg)&f;ެX):oQ=7W1S$-eEZl"XMyD7t7^4Vҧ>gloqzi.*{MS{+_@!9^ov鐛v+ Ktw`<| -p CF.w\/!_L&۾4&#|5գI?̠B7Ju~7K.R⾯O?s'YW WF=Pz[7gnB[rt R#"̓eWȍ,ZcYK[H%#?Wː5최;n;!~̝{ExXZϓs`N׫lb o7޹:HYҩvU UЍ?gN_myi[[yx\ qsï_aގ$ Ut])xA-I%4)D:}` [UL;p|5k C჎K%LU\i'ng LggF/g|29Qkw)w#J3 $u+eG%p8#AYRlWn J:$K^X<*eu68QÃB- "<>kD7,eRdo=ΝB"yG iyqm `|? eG:T?[Qg/Ԡiy;>&I_)9/;uoF E]dbdtQ9;;TDwة{ͭ^uTh };{#+|NfeN/8`='1T[qRAŨbEWJZq) X{cEMB"Bqc3r4 nsTYjL{WIQ;0q(uNq~ t*t ^n=)0ԭicG]?GM%;B֮Hb0NVG YŸM4wwJ{qW=qȺWEfX"Ĝ9=A8('m` ]v% ̑+N-@=BEYXA+X?nnMg=uN/LTq<0AyXE¥\X:=ID~Fa 6j~/A0>8PSk$Ռoɖi}Ir:Wq巽g}< T8u97ۮ},-o: @tpf*CI*s>*u˪ d/?"R N_BxD1[aEOv :T1$[RZ JFK2U˗`:2c.e2_o7vx(N8%]dn#.vge7 6%#Fm@VF0YL,bIFn f>wخjlte!Ih=' SW:~e}~xKC["\#<@MNXJqǻMl-\Τ-! 2oLuq=ПH!mVɵ0+5 _0گcmIkqDj

      u}i"[bzw} bj|_my*TXZ1+R♘`y:c˸ sf/0)D&0zAguޓ.T﶑KhV=4L{V;M% n3@ZcҺڹ~#ado`gy/F.,Ġ7M 4kOy]ddaGh>71C`I -E*JObkn4:0b3҂OĶK7ܱIT "rٳq ]EƐy#L|L+\EQ;*x#&`W*)k*ҕZ PYHA᷐N)/g5Peeo0\*aH2f;%"r҄6q|mIw5'e>U~x] `з0C+DYF̪,F8wxn}QrI^f%^cSo[05]jO.pg0/)WU1!r&BǠY FO.gSQ݈*K}3h .oxb0K!OG[>`9X.!>e#h hmkXSah8+Z/GQ:l>;c1I-u5Xn>^A yF~!CPfU-O+gx\ Vr.}b8]7]~Ioa,g7uY!WhYZѡʍGD>S?,Ty cG÷ܯA}.]T̹mTt raCMc.b' @Z@j;N^!NF,-J!m`cʭB+H^>7[9,f/-:ZS|"<@K̯Kg]" ;.ԶSKr*9 Z|r39Ȥଘ$uT9a53TRZ?zRm5|,eWkP4Vvº=~2b S{ZB}GOUo43CZ`P<^)?nW43JjA+M$ < W7 >:vM(9O)Šf^>좒JAvBݘ[5֯oXBW5t9Aݎܟљ@#Nj c#q㩥S'wNJep)7zc)`aFY\ m.Zw4ѐah Dº& a6BNh/m/?ƱN02&3FCtٟfh-|Bv,P8nPuEldjqn8؇Yl51٫y#ލѺhh$mjB"lЁ?$mRntN[Eoۖ ђ)#<ܚv_ g$y-MoS{)pJIQ? Tk@H2H)b~gҽ69YwQd__ q$~@.VY7|Zvy NC6 >,$ ~nr¸Iwo'DwHul gN-ѐ71yP|+]He$/|`8C&|pjckf9<_{K_3G85@g V@`:FJ=tG np0\`>zK:?8MS5zFmob.tһcz>rHCwjOFTzFw)%NMQ>36>8(Jnqɓ7zP|~zfjƶ6货%թ*6hIkQ$)9080(JZnT`O)+wC' 25v, RmkxRXBmT4Cͨr~0-1pLU'<~ 8wEcyK YUH{iUۻ,'D[ 3?;WnN[(KGc_h$A (芏6y鵕SN8iR'*ԠDp$Qg^ިpݝO9<\5jyWڵ洐OZ{X#&1޷dʀ&gT%ֱ,8tgg +\|h7e~$ֲp.fp2HsÚqdς4Z)3k׌FJ/)Bֵmem+yO'XW$Dw5+zrtgd=:ec$H%?]/8>KJ*s/7x g\%ƒ! g>ΨX<"L;kaA _m-R{%?dQt' q=x=9/g `45K;њRtb)V96kTY/ju\7xzpumڠaqxi!{nͶհ^ 0kmH{ցnʽo@Z[A/סF/\BTRU28F:Hjq|ȷX[NHL䓝⠿kmwWdSG;/lzq<-0Y܈F\ 8fʆjz+X0 b7gΏ#cEDL-2b}2dUo ip "dc:Hh'T 9z N|YLG]4Z`h>O3;LWW#sdR නn%;Dld{il;5K ]]zNi*ؙY= *+ ۲LQTF͝q!+3MR+OVn2վw]O X\U@။w8! EPeܚjAhsZ+NFUTQX,%_AվŎ13MIl4).P)!5Ǯ7 pS% -2S+|I6?R&Rli[@~DV@(*<{[]<ҥme҆6uNV)zv5Eҩ/D4&C`vf2L5z`hԲ9xź٫w""~3#t W{$_2j+R-qk3.-mAٜM|(PpMo!ˁUfUoIeu\=s]"jhԸ~Dڋ5:Q&swIvƛ Chz8IvXZ3\[#Z5SؕFt # Ơ)-0"l-7- =$򼩍 '[̛TR7C]*$}KCQS2a pj&{ [}Gna ;:Bk.R>L2l|hVEj2xR<`J0DU#W$^B?5 kZ@ODި[RtF?n<9zL*"Xcxg;4 o+Z"&A3>"Zp _Rqg)3w)H[|P> \~HU˺bVWyG L&jZyr^@ Q^(4Y9u Q}k xk Pti`dlނY"7nЏuӨ({>e_LE EX?yqE1$-6!8!Ƴm {d1N |Dtl|VD+/g4n3kpXvJ55_LkpfH%0Ž|0I1P Q@qגrNeʌan{$)ǽ^]ZeqǻOg v?02PEjyURijIF78m9|SVe6Yp{ְx_PA$՜]<_TzDዅoTB|`c{_l ѭz=7;K3m0쥞QƩr@8͎CXE9Lbq!tQfCpyGo[&OҒF F0ힳ#AijUE]hfߤ;$f@:S z.#)wk)YEoy^  SK,ah麞J ~8 py/uO~րПsCYVT_@_ 2!gO"K`Ul]⥓(Zc%S.uy*Φv*R/on+&ma}!XXďRAqQ^d.}wi 0͝ F{@B޶aqơ6H*9A;)ꙶoiC8cyA&>Kw~@``#MM-v2҉y?2 !pZ*G;{o%;Ɵj"#M Υ9Df|Er1s<C>=u Vϻ|}¿5:gŌc=<% 9l|1 h$Z׉=~D## lSG޿6:^#VOs5с W|cbo.|I/Z\J@7M"hG)z)B0^P#8CCҨJ>G(}1&g[LzQ:9+֠5ҷZ1`$8;Bxݔ95ީS1E GCWdfFh pF?b&C;odJ6Q@Z PL n/t)/S3S@X_uMcB F{-=բu:>5)kS֚.a0u⽣!tl1Y:a0dȹY@ww!4FxSLb?p l|(9*z2Srs5qPpű{vs"!`O1$#aڅP{MZ?nI˴+LKJ?_70\-t 5 E:y >7,47@~n7If&gW&,iAמ `̢|N]>G~Gmt%\ɶlL=2Ch|[ɨw,= C/(vfG'Bm.)TjpM IOY)X47=eSl1M=CriY,P0Q4_+"A7飀KVI]' 3dNVwH69t0cQ͎n:$;|Tjgz:$exPPZT0#G9(*pݯ3@D\3_ <䋯I˖Ws?'JKch 5cRRez֠CrSVJ.$1̥M~` Ai(AycEI4eⳆ;j *_w[5RkbmL4ГK V-r~y/pSJ9GHɪVb Ս.ͧWTXnPRѰ/Š?0-9h4Տ^myxŮHdE_ C>)'>\KcBMSO40BC,XɮQd~_͊iMTnӦt"X@`D3?y{ӂ+k7?[U` JU`Qaz"%;\8=P"Ǖ 0\x@fEf}8 (: ֹYIS].U{SIPܡ!H U4fV,r( \K`L'V?x"N1Pn #F]6Hm>=ę^Qh}9s_9O 7z8|[RcDvL'*,#j33oFw&b w_iIf|]ϧ͙ʊX>%h@\]7%YqZ_?/)Ʀ}Q_ɈIacZ(vO߬gvUpl(ky0B=,1#^u Bo3[G)ePdkH+ By_AlCDž@%E%~1ſ֩K-rDtyVw +[d V3\,htK Pϩ5J$pD7 nB~\T("Zc:[+SZ]]V<ǿVscz]*jmdZ}[3"G@}7Dg(,`5朼zL-/?Vomb"ޫLU[D%Wf s[6%a+‚B7iod 90: ~.<56ӣ PG_+6PhPǩo-^;8u ʹ STmYOh6vL$>?%,ߠd`N^ TOiHe'xD#>WXQţJKB0{Ω `/K)es|6mج33=7#؏PGs QDz)SˮgjB9\/&<~V:7noB]z1v~^gD]YY!&wLX58F֣i6xTT9 Rƕ?;rُ)3䉹'i:GPF.qm_L[.vvM^SD#N3'~veSM5$ʁ^ cNalAd%tzr=2)ڈ1Đbt oӳVzҏ8xui7oMiYz{I)t08Y*a(jOaf %ϲjO A&/ _ط̀:w Ĕ0c;Y[%tXGr7%zY ED_5e^C)&mK7Kd`e`~:ċo(>;rbfw%2݂f?}> %3kG'u*TsmGuP; 8zx` 2%oDٯΩ+8zKge8no6UQ/قtt^]358!VKJpD(-íD4Vw7?5*xS#=K %j'7̺Nٮ# <Лm[*vl7B&0KQV=ۦ v;|Z$ !Pp2Z 4&bw[1ϥrU!4Q[+94>A`t2^/{ST;:M 9e0OrX-G_Gːjwj:ɅPJh<hqIL FO#wexD9GUBAhr3PjD,/=uB΍xɲRQG[;qu<@r2Q5A~L\zj=l(œwX(af,fGhk hCe>YcO_#$pГO;I\_X7ҝj[L sh|PJ8>_ fȾ6&9dmbG5E+39}i]CwD3M.np 'iltMRDȅhw$F H32$4ښI,C3E*&-, ЩY(qB_e>^ZB+s[e &>ƮnJ|>Ia鴋NGP lgC6#\[x"8 }@A)EX }{cҧV]*tۦVgB'4ͷ~!kFE?W؜\IJIhi5 WS!ߢ&9NS-DttwQ3H!7OU=A[g,Z@gY Ă4T^M8/PzgF%tzeҪ05XJdl΃?kP`L눲؞NG&:\6IwT~Gf9I= H+0Hƨt QPt؏c@7c(035AqmhKo-&Bn\FESC5+w)5dS9WE-K.. &jSUڱC 1_E|6,ީ; Z6з'Hn-5 X1@a_;+Y 5C/wI+I8;! ҍ嚦?Wr~% Wo^>~/x97n`ludT0YO̓DȋzOuC! eS8J͏Mmcjf fG=S] HL]+-c#< >B8DcF;o岀.R<6 <(3Z Y}]CO6+7W?ZcЂȨ ua%yߧ" Nc8&ӬCkq/U#|dbEv9f¬E\/ xRzi6EbErrn67FU*QKHv8Wк;zG O b\| +t\3N<wGTx"px@ TA>qռPͥ]ڷ ZVJu+ JSE: }5/'7uzxӤY0VWh7 Cהz^]bBJtzAQp$ÀM#dc#Ʌ%N\w++푓8 "k|9Lw%`3xRV4#d5rGIn0,/]VWfAqѭ*6!8O> %A6r x2hT^1+b D Ĥ~ iJVy;y&NEf9#6sVna[1 ȵD˾ @PYkg[Zu6ICe3>t._^@ԝd\գL̯mq"hOo ˀ;>5?3"u$`1fP={q6+MQVߌ*,ͧrVNOOF*[>(XP:>@/ߕX4.?c. ^7ݼoCZaM4oꦒCy~$6) `+Q)Wr~^nsNUh\#ێ;{?$L.:R=d/fd*;rW_yKeĊQ7{[z~.&=SҟBÂUCf|O|w(9}g:l/c=/(*pKc r {ZVr<+)i5WZj `9-m5 zq4Ֆ/GZ ^oQ蠋.GڍˡhyA㡆fo'U#^PLb&S͡@|O#ҷXp(SMr-{lŖQ̪ri9vU(?_E{)d fqBnA?ܻ鈱)A.wΟfGXhuR(_iRK3|}}}$f&93 !lә@'֠c>z[ew'{zD!?8=4z) Œi2&\d9?cD}}- p־_sm}6{GᘓP92\ǤRF{]fY-<H=Brg1U8-qO cR/H]ᅢ@HoY6k'VW'qCYSSg7qL p LQ䂺zAl6rJz KzDWD(O4IuuzUj @yܒ=$pY˙;w4mku/ Y3>e8NAA#E=FY{їCg?GԒ6G|ޯzO#1SVAus\+SK$Ņ8i 2U:2ƻd6.xUFrȢ\v(i7SkDi?^눽Gl)^@21ؙCJy5*vB $7iL!Z~P;6=pKG> q؅ `UnF@o0??\%M;fj!wt&3＀?Tps |g[*L0Tvx~tcM_OvPAAbϒ}!=LNjDH!z ۷iGI] ߮_C\Q۞-$F o|ݏۇǣxI)CZORL>пs6JvX2YDd@kd._;)] F6ܟL?D x֍h|SPpl, "Yj))v @W0/Nj#8  톪'+D [wQI7Xia:fQ GT~MǪeՄ*¼EA#-쐲-#T.X@4o/>q]opS(VbfWHlM$y# i<zI@LX0®͵bOVpwd_xۙtGlJI`G^,]" GDyb;=V6[Pwp$n'͸zƧˡT4.K_vF5 :1>Ekb:#M9Ώr Pj^ܵ^dɊ?}=1A1a:>\,.GNtHjM j!kA,)c޺qH8Vl#rFvpR`bi)F_1"xjHQ g܆\Ք,$tCF-KIQ :zv:I-O ẀA4OZxcFޡ+Wɝ0@Pjy1 C  ~ԁL3/妲 IPׂ#iot*dV5WvkDYkbkk%sƛV2)r_⬿oi"»k.^ܰTb*$avL?L;E"JUJӇL&h}P +H)i!GBͺ٥(֪DX)ݧ(Z ?Ѫr%uR?E 0&^ F%Sb=$}e#r_{f0>}+ъ46e?)1% Y,Z4 3yl߻)c?Ml/d Z.H'j)]4ޯ)͈0(AD)m (/Cv9_/&5]htb)Ӷ}?2*[@t[p b$\`YY v(O!8ޣT! V@d2 ֜NcSra~6MҧӑKт@?q?xa*1`W>qbz9X{})ՐvYrC`SqWQ[\¡9[wVyy')gwHC$'Bo l@xzLiPdŒF VfEe3^כC4aWm6ҟRTy=r4~;oݫ27U2-$fnڙǞp]h D%D?=&-a+UWצ Qq/*j"l,;Hܒݚx O#k{"cq[`W \6\~k/_ Tp 7^"'ⱚ(XMG!AJ;T'a~ꬣAiN rHPr|0:>@L#Rh1H=H hpH@PRa(FbEyx:>K 4,v-"/c)ļc1lrzy@.;<HM`Ct4Ufc(!̗\3I>&=\92yq?!8~. ;†xd1YRHYࡸfEhKĒD0rN~9q1҄fD& duWq6 Fr;7-\`Z` I[DMi!G ?_G2f+D_FaNvfL(Eе窀8rQC>G ~K9[T?濁@w$_ƨձEb3"UU6Ԣ|q^bc`#FKijF4l*Clfļ H]`N8W" wzm\i2-e<ϊKzf  *`H?>S׼o/`t# }݅yƎ݉| 3Qψ{F !vr0l u$s<@@lȄ䄒ed\+' uxˬ=+:vDgi@?{ T"="T/&P KsOP{O t!#cnMwoEz3d\fQGdp0:d/z=<ؕK!D~ IV3쩜w5gty" CWZaZJ7^U9C2 ׭3}0fI$^E F9q!Pvct1%b)(~xǡ n 8sA.\HFE284 v [[lσ T5Rb1U0X^,̎$. aFRՖ!GC?-[!b:iat⛧pTg<3«.1wN7޲V֪dzh䚩⥰6L,t~KM>?䣙~mz%_e>r6r}(VzG_g"UdZ9֠ÐEI0w Ư. :_춮mIeHeR#oqF.UB+$m挍'sk@}X4 ^,ËzG)Q[;,CvgcWCij\|JtnOYu!~j'z,4UJDetUOW;n~&EvzeWMMhTÅqHt %v7qZRE\+46 xѐ Uv~4%$nUmd}2$4ё+v l"=ESz!kE@uA&3n&2FrR%P62tX'Fhjvg,iw&L$G/pCDFE8 +xްKHRG2}9vFHL8fͲ\?FTWi իdxyNiJx6bJBN dz5ʉ}r!k AA/J-E]Y?\AE;Q"TRA+.(}Hzs QU$W; wXR3$.spᘗZhjzlY= xQ_TNtqEӥU` i@hw&nIX<+3nCʻ}@ xr7̾nh jw$G#4nov09Y5o'dp75jݤj$>Wh{UPPU,;LҬ \3u9ZY)+Ui2lRAwoUa7i\C4ph7y4cڻҗ W/0ٻ4B}[N"rhc7Kk6tK?m ci\qa3 \TRm#uU4?O{zI7e/~@p`db=wL Ul8ܛ0I n.jX14&8+WR%ϳs nakOͯ7`MCX)*Fplb0JZ/_!Zs4UkN+r 'W_2 uTh9R QK U9%Pslu`6Y/7Fbs?2|z h|%o`j8Üh=v ,e9^enIdI =' wQ{G5琞ҪJTM]vqHvAxQ/'Um!)fOm^tyzZIZ]O1ڌE a,2a#i㞕ځ'_?L !*3;^=Q8:;i&"0*|YT&w篩پ?Ӡ0cWp/|5@iK*[ߕZI/(G (BW`>f -ƻЁ#ipe(,wNSVQB}K#27wCL}YEjOVdmSʁ;"HGT/9D,W.;0i!M/0iT]XSjPnGgUI UX|K:&DAyR_8$hp}ʵ~QMF0CMHZ4cB#ʰ f>7Ed41vPa*+ 𬬨1bFWr+fGS|zyy_cN&S=ӊ ;pm(?FLQ癟.60G˨4rAϿ/ܗ]`q\\{T Rv`O#$h9< xh *jŵTO_֩#I1M]k(_2hç"Klx}jvcaTa Xj8H *$\4yTSEǛ{ uj2K|_ql8cA .=6/Fl%|YS]߬{4YĐ/an_ cp̙TEC#5dO{J!%0he';3yEm;5$+ŨӅwS`zUJٶJL0G x7A i z08:À"@Fik\w$%93uw E?qoxDUdD,)CHĭ{!)1Dp?5n$F\$dpQhH½B{0W |8Z]9b)M`(f@1؋fgP{WZ ޿j#A*έV>v 9čz̫פZv(Uh w>XJf9 hƤ[YOOK[|cXoAfdf5߄#ny+GtZTL2o"Gܷ[ѤlͰ"o[qߢC~"Ρ@&QMˈp|>|MƼ*j*\M`D$кfC{CX.ҷUY1E0UM~[C0Sj1R,1DzNgRcc7E8v{Q5e:C(/yGɲsN04t-NbwMB n~ɷ\/dn%z2PžF?:0{!UMTot$[-ǦBG)ȿ%`٣9>Έ-qa:-pE'40*S5k$BîuncB_,ԕ¯7WRzrߓ+-/.٠`bw!^ہ&٧>a;!OSK$6(6AS ukm4XB -lQ8$⑷5>^ܟ4gqܭ= D]-&^yPQq#]0?= I} *73{V1ϑs{gapC'= M ]ʵY7M7єf#Ȃ9uʌgFm+!Sب1+ ?uοèWwz9AȄ<[d@R}Wh!@:GE[Lb5| ~m{@e `qF_Wv"Ɵk7rI %}ZعŠ0\hESgKi/ _vؑB b Ujq\Ʊ+a`d,HA$c'zq%Q;i3 /} rK\wsρEkqh6;o-`RU䄚PIr; c0=Wh{c2\)S&QT+ 9dГ'LX&a+P˗_$D*py:g~"}HV])u.3k^&\E[ubÛݘ SKVg,0s$b1Zqe;@G=lԜ)hGzdszDNusg}<`MO`jIM h}_eM8mvi{LEDqٙs4Nr'hn `Dfld)uњbL֊gN6LUK52dGwd$UY]JU4Ek4|h>M6V O|υi}Vy#sU}ID' )Y?|Q,Af0 AY@ {} ψw^"KU~,3a;:84>X9*NdQo4@D $gn'afmLKOgt[6:4XpmWkP>bwTby*a& hy>xr}]ye@M@0Eq5y,r8 :{0zGח_]:^8P\> GU b'ƔK 1C(0!S@8NC*5&gUa \*[u5_%K.zbI%8oj[mai%*y;Pr5kƑTȬй?i>o>K H(a:sZԙwbiA"Dym"ayN4s k׭4oZN boF#X%wdseёb8<^X5PpYeװݒsy)U/e*{cs`!܅Z'd -ٷ f&ўK`sN̲M:1,.򹝱[ag[v }TJAR5#3V'MXMD 0O5wbT?rwq'WHLfdsjߔ]?*}%nNHQ,iIi_PfR_wRSyJ#K ,"fn^ߴW"%:؜KVuw'`-OTrfhs"4 )QS%[v*_ep˚RWeA"00nλf20H<% 1*W|eH8ޠ[!]}*hLJJrHUʓ i׷sy3dC%gфqV[mE}q W2W(=fٟ .eVYiHzֲuQ_.;U&l|GbllcbʋM>VK*noJw!.n1#i+O0fD37#g?Ҝ*T2#NQgZ"AetBq .8f 7*6?" ֟F$gF{Vax1 xN RrS/t߰=ᙎg~>r$rt8޶~y&D8GP♡ip?8b0I9mus /P] ᖇLnԯ=Zw8 Oܡ~,1ϳf[NI2-IiȻe%i0fkǛ\:T>l0[[A8\<`?k4SI:=C򿊳ֻgUD~܆񳺑!G{m9|վ[0tt|)NpB'N2ƐغL#u# ՖAK,g?5'dt 7%.Z^ Z׳s+T5a1#1˻LQr V"rRZy2da֖ ;lz 3揠c~fݓ.L#q$gPYZx\$ Cp^5.8ۚL)gg7U$`x-ͽ3[UXSȲ^w8Gr_y qt#̻b`B5urxŒ5Xr}Z(%, &)Kg`%*]v+ {cB|2 A).OL;tqwqPB . h;KN@u0>}|%yq ,໵pday`NHd4.0N3;ܧܽ޵ i(cs]bjq ^BywKp `<޷':}C ֣5yJ(+ujub>aV*J!ə':J}cW ߫w̤G. [4OLفQ)JBXJÖ mCB[{Ab]e'ol1Ѓy%$)anuٻ0t祦ߐnܩxj[qPxyYNV#1xsZ]{n d)Ɣq@$. ԮjQtr5fث7(`؁Z4!on_GT`0|tG2 xyRQ )*.UE©/9'Pʹg%BϪ)a9.qYfG8OTrEa*Mu- l&]ߖt۸-%$^r&PFtqF';^~Q5r}dwV_kC֭4E6ǽݎ-R,cM'rI-_"'gt e9 x==M0(U o)+܋^8mI^*|`zJ5mۓ¨[kL vсIeZ6au=>>PH=XPGh 2J/VFցOP*{{3/HMy)UHs{L_-|-ԇ5 xOP(^7y?P(5G9!uShƣZI.B '6҇r& +EV@sUkY<8Q\(ƿkOxo{RAlR6bAHRx ['~j6Ó;Bͮ׭+ aoI1%Y&w'h@qm?`[Cq.kiXyFck: u> "eLIO *jcĢv@-FFz`4g7`rbuc*mԬR. qQA%OU#ap]#}&NO[hb2Q_MX3)e8%j;-nZM"[6 Q P|Bmx~CJƅ'`JtRdВQkx.80c &C 1TGnAŹ67MY8 AP4}\d|%m2 OVf`2T t=;\0n* |Q?~d~v,R\ )R5—xtpVM_ݣ'#GM#>Tn.Z (:mO✒ܰh&=YL$YKW]9ޙz&o:M[fHGuzi?Z[1HB\(Xf{d͘o oe1gw۟` VbtCx1Z$RoB!dE4o,ķW_9GFx̰# A0ɞtlG8=y#gm@H$ 4#hXU/8Gc Ӊ>K8s Z`\PXwE4>UWL=B0iI4:?37 H `"ny8@bJzjZW~ǝd/ cak{.YpCI9SoPDGK5/DDa~_(C鰵{&J[}ZA߷H\m}Q &碑 m1}\8R6q?Mգ#ABR9IʣpF.Xx@gЫ{K36gBoW[nY^V5gVďL@&vSKeBTop#@֞^<Ȟ|3d0`G`9&3Fq:$"ߌF2n: u'.ʋ-o`,fQk4G"O\܂~ fXlU-XJG; Sf(3b<Ϋ&HC#k{bDs7X%`ϯ/W̱ôz2KV'% !!gH !ϟl)xAjag~ZcG7 ԋ;B_]D/N7+Zo_Vdm T".XSUV9zN݃?Ǵݧw %&Uw?iQcђQ딜FJAMŲ [H_4 ðuŰTaRARr"_bjK',>X'xey+4'0=ժگr6`T h0O \Hr9[ҲMH[^Uw%d] j%W9hsCj+QZ8PK8_3/݃%IA7'')'iVC*}*ޣYx$QrD7c%ޱ{@D0A٦kdi8mH5Ik>Tk8t3=kSck(8Q҈!x0ɫe.zK:xr3"&NM ڈazY\^ܿgSm^˵3E>.RP!hyܼJw&B_. \&A vz,:i~yO|4}`aW5Mr 3OwA>4}/%;Ǡv!aV4lmpRD wS@G->(=M(WV]+JSxY,a1 e.<ڲ5X{~r(6vERw9H`KviiKҁ^oc؞8WQGDx!#6Vxb癅`EˏK>QD SW2v㪉q^/AStp!<~eT8Ϳu66MA`FMu TQ2ErcX}ŷbE?PEضL#̐oĽoYH_ɹJo,o# QClGp5lr/yZUKc!=ʿr[T Č6Rx(3B™@|>ʞYgcw*O`H< (kE~J;#Fe^_q@gwYy\ .~4DMͻ$D;EUxIDϿ}sBQhZ0$Y %Ik.@Q]iQ)[\6,hԭϘb℁yUJdp^ס>TLK s7etAn_+鏞'Jƈ6I^tU K霑'\'#.6?~Zj9_&oUt#du6xcpՐ;#g91}l^Rs7kY''I+n~^mrs$hGw粄*Wt)d@uã.e, D[}a ? (Z6rP&SrW[d 톱%QU˰۹S:8Hky8>2D^'7iм76!Jb؋OZn)9@'ؙ@?bE޹TO)IF|{.ڧiWŧt$$*>6p;'CJ(*Ika}&.Eu5Q넅c5E/dv:4H`_shrMbH{ez=x:maKa'[z^?`f*r™%|1Эʎ4, ԁ0ٌ&b@!\ JJ!f}1znN ۳';6),`JExaS^Xtern"@#8!E>+-C='C(],GxZMuXQYF<Ŷe g#~9[R A\Bd5#DzMY,f}z.=P^k{_̒<Ӟ73 A+]oeWguYŗ%:Y""B1oʼ5h[vGlM"3Y[H0$!&-ysEL+F THoZNDR"ӦsN`m}ܿ& TyS},D1/º ̻%(q\*Ξ⹁N<&ѭ ja*nZMN՘)yBxVѼW(drF~obIQ'3Fєzm'"¤uC}sl 䍗@ġ{3 XdY@NZ:lS%#k龬!.q".xMӲsNoLg,Aaq֮z:[pIJ֔z= jSf{O&= s9‘~F|ş&k?hPsJwYІJ%gVO-_3 adaMs_'W\i}Qz2n(/\!8"c쎈MWkOUlSR\";;qvXcqX'",TXJNڗ/DkΈ ;FX<=BdH! e=~@iQX+I9St /5ߛ9)!ٷ{Z |i'Oآ))ת`499f$a}R"2sq,܍ȘLא/˶fvνu|*iM{v'eS2EmΑ]x]*&U>kGGUM`]㳔1Ã]*ФenFkagtX;ך G5s)$^MPգrMB>?У\ýP_,G_\ d0&,Krv&1#t67U.8Ѫ.O%!ߧeq^%>d T`WZ6>Y]O^U6{G{26u}*-J.V>:{[cw,}9y:!)(piR#hsfAvR>cng.Ī* V'ĭSWoG-|]t>[Amۜue @wP?:ʀ%뷘 oxG[aUM&de Xvb]sdVMIԙ'PԅL^mRh(<~~a [:yEuZ>@R$T߼w{RGJ,IsISZrEsRxݓ̂O:EtP½4'qXkO _ ɢ7-.?;Ks+@^@W9ejHgLEk خIv D!*,5MuWZCt)jDF\D]pׂSS,O8Dͮ\}fuĤT лv%}8, L؜`Հ*I`HEKwHD\|ח\L/y>f x%g18+>yr6V|Su[!I'x7SaaEoZAg缔6h Vq nt}񲭎"'sʕruүZobw/ѷr {Lƌ q pĵ;tZ#6.(n Ȏfi GKlU39*cLc/a6J~٠n&6 0g.~cFZ. sƢ%YOד`?4~Σ.2uhJg!pDl8Nz( NL9Ż;)}06 KJ#kkFGcR&gSBgQb-(65w-nu?- -VwYcy"Fo[fh=Hx Z2+ܶf#=/ְ [h$%MQ l25 %ToMu z~^ڂkYOT!/# PU׷a4:ƍ1t Ӳ gV;4p\42esJ Qz3\! XkôH毜"ǰUkޏ):D.zأ=pU =g.vtan3$z}?w1B;rL,{,Q7e[rUHaq_a'ٟNCT+$tI*I~Z tL[7CҮB(S>Mf0Ch@ ~vqt `'}Ȯ$BR}b~-E"ox~ڔ2J(x5 JCm$M?nj)P 3HjkŢ!_kuT.?lr89iox+\?TCBPo_Q0+~ 8 \18ns˭5u≨Ү^hr]!C!>lYDK\=`Hk~~%#G$M4d ($z{q[q{뇧L`nu5@ʬ@,{\|j-eO֖ D*gXE'xv^Qiڌճ:aki~64 EIQa^$,D3i; tJwc-žVM & ؜: ֣ sP=!ISbۡ?:i{4KWN*'uJKtFf&Mu0t\y#TNx z'漢q]CE&yUR:m7N39/DFd ,]'IO4PGP4sY;NTO`uj)p IᢴG4$ULlkjJ';Zy,8"JmX)m$1*,q2ײY zM^A*bZaCA)1LzBE8bP=<|#qIoP|@m #<`iBmtO`'^^[Y$UVWho}JG~lՕ՜(Zq=gT>:(֡sGq2+'  t{C 5Y4 f3P#:L)dnD^c:- 9ڶ24W*=y' %VSOCaٌpAُnBxwRrxi7f^F!]ÿgN# XCPwU^$C:#1I_e/'Pokp0{:RC ^t Jyx+wn^w 3PAƯ0Ƚ*jj]-MC$U'F 곙q7{(p?eϽׅv?QwэW Gҗo/{J.gߋż%T2X@#Nw>'B)^b)^/"NQ5P؞Wb`N s4y#OC EHLOЫbT$PsJ|Y| $몲 m(ш 섫YA8o] AG(+ئ2{ϔVo˦ќ!3Y7/Ry32/A9S!y19a9w=N >Ʌw.VOL:s B KSTzZE~eqWtRvh\sI?uom)>Ըw"&rtڍrO\dQ;#lwV.NiׄWo<7g6hɮHH5gH6RYSgZc? /$ތ2 vgܧÌIEN5.@mKU<~PE"f2ɚ-!R9v@c#!<sH֭ Bliz {OKҟ7A{I".J!rlFT* ^6DK>Sݺ sOb"Xz]D]bJ67b~N%K`/6H^ɻCyX!z (pJڠ"U, .;_G<(PKٳ&]FxrfhKSHVf B>{kYWMwF)a촦X6{£ ܠuf)X+WZ: &ѓVGFSu]|@\~BXYߤ!s{Qi }jKf?M ۰<Įj8{TQ(H,5뽒e }k)X<}hVnR籬-\I>Ka=lQ"kFLlQʖJ7@u#FHʘ-UDfIJE4Ea^S'1jLwõdn߃̂.Z1˟07rS 8? ήV{;Nw0Hz4NHCK̋,tZIbd,M[ _p[SjyN/t M>;!7RF_U Yת1]߂gyU&{P>O\ֹmx0p2 j̯Z&^ΊjN^ŐCKPgS mkp=!FͿO(Y=VeWD':$ _LVLt,`b,MU:~<Ҹb2K9we=c7cQEc.E>d qo uZD_qw! H;PZ 'Uz*W\ڜQ8lst[U4_2㾢o#KQqnd ƓoFC{ V%-ͫUCq`Y7(!`l?y0ee:GH2&1<Х=i'<0Kkčͻp{GV#ɑE7j7UςM8-GLVkb< K\FP/XeϣyՃ~|hI Ik& %k^erkު}PV*@_}t`sLEėX{_RĔ=m@ba@^$MP>ɼ֡A2S3,G_?Q*pȚǓ=ѿ,_9oǩ$puep܁ףe酫vk9ϔӫ_u*%x@覚"w)RkN㬈brN0gn)}(p9v\2VGGFOM-a:D7*k8#B2] V6d[}0;T<83hT=G& ۈaF.fr&AnvK6+TȡC"{q__`@?F? ׹j |T*Jo34Ƣ1GF9dY+|@՟tpnUƳB,仸d2?DV3nҒ8j~'O7KNrDJ MB62Ggp1񖝵UcSjfeRt$Zuwڵ0pKLF {z)&AbʃCZϫT-RR!k"i&ãɊ.P{G|M&()akdp@a}L`$UWCx3S2d/v[el,!dӺEJI4Z<=lna _p 4J1?a n/Tr5Kff)zlAրGg:p\z8%v4Lm/? AυeUˌ {TXcZ",f6Aٖ& }+=gmӨqv 7 _{gKasJ;'Mܖi0'Y(vq3g/IJ<1 iR _EU|JHL # a>_3U,Qr}T WVVF!c^vP]R!b#K /l?;8zLp?/oK+vq[|vkgXL,#-Bbjȉ, "x~4]XZG&xsv STLRQvg<"'><)\ NP VU5?*x~uq :Q2'L8֬:~Lԯ,+6,xf&7Do^WG\[o>jO/U [RyxP§ǤWv'xb[oj`wқ dC1 PK%4!駧Dmū+c=耺1#B2[Gs`@j.q3 9.JM0Ja.H InfSd 0x)(b,RD(.tv(d8]1.B9Nuf ɐ 6Y#I?`$XSbIC=ƵÑ6I: U;@ւڔq}vea֑-3Il#[Vx>ݟn挸Un-+ \JeVű+]Vh: O/~R.Yr1!&cϺJHm5GB@ΤOf*vn@eDSk}O#sH k{*(#e-UE 3JT/AeOuo,}sa؃sWV2މs20-8t之[1DEzƗkoOWBt`:=2(hz(tK VA}.-& -/BN)(zv_1xV./IJC6ظ񻄂fXIrvԨ1O6oLa7Cb M<m 5䣐PB⢐ -xm`,MF v[j|Idqߺ-i&W"Q#N -q6Wm7zqps`@K@%FZPn{ {m#ph$)΁=xn]PG,7Vd"'kGf aC^DaZ#r^ӫ* /%x*ۻNGJtn@ʣhH]ʼn01@ n/K^mxe@쭡D➎:k8sqv)z K}r}M|raÐ4OĸbL%_~ݕճ4*jj)ĠI)͑/k(Ԓ>тR mQ$tCUG(&R;*g |loQDp?뉆]W+pLp)7hϵ3peND}m ܇+ xm0l٢m'LX?'O 1[a-+$uQ< lF(&&FœSp4~=]BnG0AJec)_WlP2&2]2@ä_~SS![1X8 g?˞<zicF˸,0 NHO|^K!8pq_Bu*vv偂oҤhgʂ]D,{i fW2en4(/(п \7x.FLbK"_޿+_CvV5$>Hc\к pwsGzAIY>bup>:q iVuSfi94<{Rjt8%kS'6T*;hbރN-Ey݉|7Kj :2XC&Z9lq'ˆ<<巳F ,}YMYf`MF h:u>yҠ@Oi+8{ԷВrcGHl/Sd f E!8A%PbWM̠_|caϛ-{o}I @v6w nH7u#%x/rW5I1ݻ>vt\ jk52B0oPs)]j6i2ے' .u06=eөƶ$nr6bg eH&x:vͦ{"vEÜ~|.<Ӣ Dm2[fY:'ՈqwGQc܇xjCt9 n驯W78ˑb0*C`w&aH0I\&.hp= Xx/GƹHބ)qV巼E;Z/'7Eة½ߛx>QF.j))Ha?>=~/`E]E{ @ڟ QQrN#[qU> dǷ 7mi~ʔL.tN?G>jHe\ $Hbz>G$5#e^t!ޠd_h5cfS&&2*61w軏H]~_=AU\(geA$E{^!!0I^[Ɇ=!*yVv݀1T?g-j4%P!%S+EU65Npǂ%D nl!b$&6Tl:"!$FiD -s^?D`{^T桿8._y:- V%I.|8~R'2,M4o>q:`MqfKe㽬 Egכ$PZ寀pɆdheY!9YJE~j,#h &b="s[e'3t{>p^XSy#*RS|ZB\.!z%:6@w]USOV>~Vt|* ] *Of?)8|[*= G@`NMiO;c܆N\ Jē]z;D:jLI"2!}LVw"ES(n Go'/@SkV07聟xmx q :v}DzLp XL #Yyn0$ &W C.pֹwf+IV nA'7J7J]}AB$W.bCslr֚zڻs'#p%Q{t}x``h oD/3lX2F+c#:.AeCa^l6wwM4,x4j2uM%c_p nP/M,]@oekХQ'Xo{s5ɣ5ub$mA$:s~L~c6NZg3Dg0!qטq"@#i` lvA:bL@ !IPj۠Ǯ _~#R,@u!J>P >7՘6:9F2Ld1l񾲳ѢE;35>"qvl'ܠ +>ޤ-v!IQZ*Q[=[=B$i4Ǎzs$-1<O1~,U1li¦3CT nj#._Td7`45Q&)Y X%F7!x.H1Z ]^}Y7A%@1ΕZO7얥-KI^ KD9d,W>|CiI:&=)w*Z ]ftyc9^9x+H27u"ff]F\ kF~tU*:6sg†9_)BscY$pv`3?(56nl*~d !7W5OvvCj߸)>LeSG{4d7)2X|;1UVɫ_RN)퀵z1Q٨e' ;ό'Qˆ,(<ʝ`76/{ =4nFk&F 2SyFbTBmK8{xC(u@?B?@GV,N<盹ۿҍ=k0 /ek4wjn|o9ʳCcO(3YT+&=Vo5:{@~?~?&W-yzJkQ@4WZL o}jG o<: V鞺c([lVPd 0mLʼ$ nvmlj#]'q~7aG:`a̰ <nCq} .z["F"M8IJ-N25*E&?ZX()$<5 2I3m hɌ\ ;?3ORiϚ7'Ngp tvӯ&u"p+ ng40e}5n4®`@ 2Θ%4Ie|"H&,Y?M f%9D )I`f$/I1yp}KĮ{*"HFۭ+eӜiHIG`Q; n/9hWuX>(f!x3LҪOgo'Bf,tߍ̿ǫC{'kʨ!!ؼމ)V圱; AKtĄw׋u_%Al$ϱ]s97/y{kkz[RAM)ZazeVQVGj@Y?<(>m1E(›{p H44z'ĢZcÂDc^tO+Ψ>a+jHBuqX,G#&MXy6.b8D "fQi88ͪܫI!U E}U E>Y99썙k.>Ǖ"C0縖]Dr-]0jx;~&mg4'i͵}*"?#eL"9R5z@4~%zu6u [ 2=s[Ku2לlUV?el<9ȣe1govbDA@is볾`j <9㠎kU*H6V睎~o{C3d9Hy ~w$k~+pOm`XҴF>Ӹv. `=] OoAya=8]w^gNaUuٍeMٛQ 夁h<{KV!S04%/{Ջ̑U d3X-^2[wdJȷ 4DIDzz&X*BY՚ 'uG@acF.-_^H!d;ږcKN% Tjɵm2LGRkb`clS]ʠe/xUi&m;e1H!'aR!8*6Wx+\ȫAL۪Z?vŏO%ZJQEoUٝQv~-چo8 [SFu@ 0Rd?}k C_CqoGF}gY-D # eҒU޿zM, $/)s4oSiS(#ΠdlR?ytOKڬ;Hf>O*5\1kyyԢgjC/encuR8z %BR IDv6LǨucKSsǂ3\LW*}|}~3~vC+-64%$1 %8Q:Nx- r7"lMRnEGMQKܴDMBMӹ ^eeJD% TOQ(_lF9VEڟsILٕ([AGs IPB*`"t+pU#w@؇4s֫ *ow='\$IJm= 5,7bkLPDܕɕHvmY17&` $ߔ:8Hu! ?J>y~ uOR? :5EhE>|0ڣÂ8k;z?xGuǒsWˇB7_ b$2*0h*_X>obјd,M_eW AMJ`'KT_xҧX.^5UpՃ\W ں_b9؟:.t.MDH2 N3p3Ea&ŲдFt~T4cΪuE="# ,0f.f?V vnD>b~zNB3WkFv.5'y\U- 1!0N#ϋ$ڬͳ/ېaiw EC13q| RY)pޣ6td4~yHF .JR ?Ըl mE˶YnX`#ub Y;׾r@q@ |^j3/GSNv*A0M!r;(>o]IQv wH3lZ1K-ƌr x𕢞\vLOK$X@ *T`ZBcb^N3S{<ՑwY3슞p?y k@o{Cws՘tK:W`Tl YŜ]D{C(/,Fa\ʡ=pv3Dn^V%?)k Oۼụ*VgT4jA+(MAV%3wjU> p=!?mQcZۮc#lw48-sJʼn?i":x'3ڗD(ip4Nw~֏YKgl}d_ <~[pA0Z%؆n~6on'WC'Z&'L-$oY^J)ϞGc.S͟ Y>FTm]N_&SD?Q0Ri3>¼wP.W3ڀ,[B4CX(iKN^xgLV"8d;T2 @4{Vc)T9ҟs0pȖ$,!#P='&y8ה̏ Ei z 60aj] 1#ڑD0 :.- m9&GU谙.LaGRLCDYF2zjdyG V"TN62Ru!Րaq@^/ƞtiE6 / 2ZuM{Ϡad)"ll_ Y9ѩgV[;pK?B,W Z_5DOz'V\SAo4JkFW4l̦*ۑG=_Ip \[ؘ߉b.,4/xz#iG[~fW?Pd_pPH)5O7͘[ċvh:-eC˵"1+ku].^2iia#.z+n{sύ47+k7&ׁvl:п/0ykrJA4X} ݳİ*lsZϥrTorܴ t#Oq'B†~L @sLF'v8S{[k@ js+ yH DꝄi ?k&DzK[\;  [Qjԁv3_1y~א.o Wu V).ZO5a+Q3L"'b@S'0f .;h*GW)Uzl5J-X )t 9OSkmW7O:31s$'MhbFwYIx`Je8Y^ lt"dM7:׎`Vd coy{% *"~U9IvVYsR aXiqv];(;%A{a30F{#mh6 N_bƘ#v.AgxܗL.c_]Y]jĄLMAmBBm&^>#fSJ|I0*EqWl}Cvl׵Rޣ(4ǫ)7A+DŽdarQaǗnK9@#QE-Z*8$ i9:p0?OTG6|#y P I?8ŚO_ZU㛼c},* O/:";ǥ#~ˠR 2:]%R|?eL ;b\Bu*9Sc)7gk۽}Q;¬~hL&n4~'[]c5] !ALꎺ#&vubĒ0?eM+وZ(YA1om6Zݗ/Yʙ<e *ƐX?WĀ,dYYxT%#;Oxi5d,3_)_{@ /;W "O( C͉ +9{bV >GO$x"OifR_}#|/4y/y)eQILGtP!}t0Q!uY5Vs 8g}l#*:D 恟bGs9e.,)>owmiȯTW6\sxUs[{Q#FS7uRoO/?yKUMeR^hd(Oq:nؙH.{JUpg:n ~v3on)^18 ٢Ipykb$^R Jz M;=(~fG$f(4)Ȕp[piEp7]NP1qn:?E5C'XTiKM6 2-mA۬uhƮ^R_j67a`ϴW:s tR}qPx&KN4mpSx29_.v5*'Ape?ky\g6mqzڋNMrQ+{Nh:9>'y?:EΩҡ:|bҩ9%IZr׸.V5VυŠʒ,]#{C16}%BrnϋԱ[u{脏~=rGv.&FU7 8SJK>CAOxƆRXiMF]f^54;A(O|Az0MМDn]M";AHfSqAh=Z Ɲdd~֍=&y`OR9t.rlOF t"O/Y(/2M:A).9M>|H8L=4+}Vη2< Y|72ϒwZQ٢Qэ#T &.Q'YiW}x#{եR9Y oIR"UAb%AZb9JS*o#F0S4k-}&n^@,l_o*Puf|!xBylj\fV M:?L$3h!J7_d*p:ͽEP2#JFzxO=аGZ_Lnpc.q%-nbp5 %mST.^yb(u*gB6N}JmM~xʰsU)H'fzM-`G{h36nXvgfܭ%hz;ә mڹQuлFo!jn! />. l+9WK1&㭳ܴoX{7t uFY:H2MQ z+ 8[ԁ{>{|LKu#JbCX֐+a_X݊ C =DImumTfU#}hB)l LE=Rjrmrnl3+t1S .ֻϐ6rt-r+rp.ׄʪ}pĔdg醙ݹN3B((fcƠ]W{ ye}M[IMy fR P^IB3\"FPY} vk7  9<-% @ʤ pt\U8tŽ4<[ÝF':;hd^nk'VctopO{q4Vr9ε&0VnmghNiYCfBh564oIv`~ VԨ43Q`_l]hň&!;H(~''I/ل;|ȺRY!up$1_3y8c<0-%ѡ"fGgLC<|3] \~K¦wCxMj@I.$Pœbb붛R j$wL;7`P w?$6woIh'Jdy.XGĽwSytx;bO.@P(gE 2em7#JE֛=vI-,yp:Ӣq 7)Țltt֋mc\u&؜OK,.D&sibx܆PcA1d@~7H4e|O'sXbSmŝW 詶`93xdZFΟ·U@zni9~I=$ҘdX-B NC])UG'D)\­d8D\:Q/Zg0eiDiy,ǥ4aen\``[Fz$[Oh(̈́_i-W(@S>UbӇ6 v8[TyM~tj[`vHQJN^C|lQ7 qLƆ_R W 8 iݲr}C:ɞGk)n%AQ:q$T HD\ AR[T4xnIJ8"zO~ ]G/uV{zpc&CѝKfRLԈs&ּm۳YUWQ*CT\k! ie!gAkdMSs_8H$%6*-dhʩZ-:bϺ,!zWSѱ7}zьǺXt2[?S?wc0R 7¥"s\S緰b- m^"Og@k3qaf>aw e ە ~3Dž5K_7 fݠl謿q ͸"!U 2! xro)y.9[E2q'vXmf,,DGL 9YtjK{r3td&y|V9Fg$ZXRMtS?$e*Ikd8ٲu*K|զKY{`z#T^r\ˍy-Ȣ¦2e6dEf7<ܕ\'khk4q;HRҦ~LҤ[-};<.;FtX3w. O:@3Ԋ]5'MNT8ϹO^JP{a Jdc~+QS:? @J _ƦܵWwHr{Dd*q(w䊯}dQV Vk0x8%ȦcMGZ\uk+!h,`{m W*c;؉]P2ulX[೏`Y3WFԉ^43$8zhիYJK olI5'=N baaNj|4 ȑN z[y٬HHVm^+Od9FY=v^lD!,{C;!&-|eI~4ĹW9{#Qc|ܾdy{n(}!,F;8oc`(0i.L6O[UHd9/0vs>ځs፭~d0=k#)٭9P9~o*{)e($qqp'ƫFܪY!5t=3q9wB+czNa|raW.gm]3]'FtKKꂞ2ƙAm %dO&& 7X3{d"S jjeIcO^BV8$<"*Xsbۃ-\vzHP|\UW\^r=1/:P6n[( Oxs%anK*9f=ƉF|6yBP 2 c)h!"wtZ,%qwgG2ki/$䉏J1/z |+$eaETePhQg2Tr R>C;-D~]BA T$xŌ58V5+N7ŵk37.ᰤhӰ'1.'X0vH)l썽Ujxeߢ-~Pe653:={8g㌓+qڏtQ!΍#3]WI=!g-.n٭V\,Oq&Č>Z2O=c9)׷-{`85hYߧn/6YoaIHKȮqt-ϦY3uҿgUrV)*|d(<VknIXCб{2@0Gnj9bC ӁY)rU-Ax#$ybOR:iF}] ϖ,mwyob_QGHe17Ӈr-1hH̿սXm%6څ#mMMuyou')nQ-?si|6S1R|!5 nʭHwV(Y8\[:KuGz+2Ř- }'7mA]ྷrk[&2q!F8 wsAu 8 8"0$KmLAj53,#e࿷V݈u6§1CgH8&AڜYU4{Y`ʍ6FJ;ѫekҥ1R=EͅV{ܨf(,,GOQ_W5SxG\CljS[Ȟ\u0x/Dn0|QIA nP㏪jkƾ ^ ԕUs pTRSȡeTͶ?j^Zuqz |Ay^I/?s"@R[DFM+mQBv2!GnS# SQ';`<ۈxUu]4ɎxG"q6]Z (Uל s8yMAJ1Tٲ]_DfcWo+#UKYlcz.Lus5$+m&,u Tr;(#)L('|\h"/HE-cLĊ2d/u#rH i:no]}z].g~gȷFՕ0R3q6FlFn!>My[`SZ.HGHgz nĀQk(' ΎERߊL : 6C[N(R-ęF? ȬLlT$EqcYܥsiN'hq~A_X49+Ѕ!ݷcNp>3M^G/t$(c%_4٣kmZ1O?]Bx ?A"dL{/և*@H= (`X> ٓRtj8Ѣ*0X&j+{clrkuBwt_ߔp@4 G]{XB!͓+#^_4S`m<)WC5} >Cqʖ͹B=(hdLX5Lj &:c޼7\S׵< aЕ` k*5|5<_,UL;@Z{6=y3΂gPAm7DfN`<9Hi)@J%ղ2o\؃-h["]L XNےaC%^*lE$p#.>n**%'CrLTu=<:w/vuW"EI`nE=!\ =-xbağES4߬y/a(+~%WssQ"NA.v,̥{ONoWJ]2M S$k6~S+tBȅʃfW^*p[#q2M`e PcgEWOon"Ci Ym}S͗/zSm(UϜߒlMoi &čU7َ|'6/62IVqNy$'wNވAG`",ͮCMRo%0;X =JJfk$\L{-( Bœ_'(Ӳ.J`)`/  _]{aCӫ7>zO~S5Gx.'6[X XT:U08p(Dŵb&ad"O MC851ͫ`N1aKbzoX'}lCT$J5Q,@9Ee`V5&Pc%~}`@.AGs7S)m-VF$qKYo ֭@XxuVcf6nTYH!ޫr?@I8"-Z,lw=H1`Zoا $Į%4 ŔEfX6u.3pE(R8Gj1?-uߕ ?fL5lskl $-dxcWu(Q݇/+8KG2ܭ+/,GV&f,?(=Iu* X hV!q6 Ҩg RzT\ݴv#$07ʕ tc#Y8ӘGL t%qډhI^ cwIfoh2^IwJR5=lJbr;iTz.=E|\Nz,D8ɯe\Z0)\T6 J1E3> !~ KjO^4wJu(:X9*A%b\r x Vsĕ"K#j('\)6p#$?iiD"׺h6qkE [Ő2<汲QF'TUldtastMvqla(͢H!γҾe׭66\M s cأ`LP3ւB+ع@ iZՓip{tgČc(GlC!Q_eF{Kcl_` aW9Kjm4l- ݄m9)5)ap$^fxD d8 wn7+r#KX'Wf75&_0xv)YZQe;MrÞuнnܢg~"ڒиxFRDP]OUd1h-|.V>R9 9)~NIJb1 Ya9C祦fssaAlswl݉ޗ<jL\N%ycezZ=i:58Z('U.ո &7Q0*UmjCOGƼܽȰ5s9 o&/5A  7}o <X(0H.ZP8_z:IR_[ܷhEϾ }$Prx$LwL!dh;eJO= .c #y-7;ڎռƛe@T* lɖ WגlN&t3B#yMߌI*VO_l)hY+z[ml w:USS`X#wv^ÂtӈoƜїAaY bODKQp \iLǠ拉9pXUO2Aʋb8P/o4,Xurvz$FHKd),cMv-ĀCq\Ո%pj|v]hVcu6 r!i}䮸 K'/&A Y#nZ>)C;] KͶhq1]S:-DR͝zYlZSC>;M򜖴J09s  bvyC 02^sCP<Ñʥe^,xC5B/w>64KP9NzفJk0xX36PTښOz;qcHRW*Szq4xz7vڊFJ0GioUgXK㠇ڮgrlع[q"Qfp9x`%n.|Z$8BwԚ+E l9ޑ&[8n*qv@d싉]%ީ_6,>I[=~$<| "s㗪!Ϗ6]O3šNxxQ94Hbw{%Kx:/߳D^ ,z^cH+/҅NoXIFWN~N;\Ob=`׷Hk"l rAr|IQlQef*ub1$CFJ` .!qQj=-'oeey1{6hH~ʼn9Aەan VՑ<ǢO} Q't>?wF̢ٻ"!s(GI̥0+溡TyE;@a8y)ũ;D5p`3buw~21-ǽnKeI|5]d9H %ۇ %O=ex'֊zKmf^0q{xeS+ڰ p,+v!op?Fg%XbAyJ@g0JIܚyA"\'wx1*La*75Q|w 8gң[Ogc\:/N GϖC)<ŽEt)r츐4`pEb(hw:g[J;j]yvn U/XwOtn. h3O9ŀDa=78"yĢ X@_Ƙ<e'ʛH%@0Y->7Jtr{m%zMQ9&-RM @EA `n$݆$"mC,*X>LJ^أ̺+K;X|@v'A1 8%3渳)Y$miDT< thNv/&0`4XsH>g|2' $-̒j_ AoNSLG%]iRSc/n?HnͶV^*Z&ItK3(,?;4i/X[M 8kY!x3Jr 뇪 xd"AFpVC|1Mw SDa|bf$R PXRJ|I6G5;C/umX<aGzK@ˡyJ:"6Ɓ(k~=fA3e6 ͻe~k 7!^\$++Ѱam*[P\wIK~8ԥE׸BݛVsu-@zE[$ Avk/ȅPMq=01,J6$*,;)oB`#$s"@ŽU^l ok鈡)Wi'Cko?1H;Uf-x62c~<}?)Ch/Empp#;#-;1,\P 1{~ʛ/U6$bF}3#ie0Ѕ{7˟uk#ݛrX/w߀wm3fJ(sKS4c('$F#>5G֠~W6CQ~rXz)ˍnħ%rʶMUX2mE?Z@*5?_(U !'S""9ע?p731-/T~tKNư[MDs[a}鏓rA4Nv c xX$` ةQ|2"C֐[rZA ;;+T”wRƈ\?='9{2Ϭ j.eo=v~s^U4\4scc^!;Z/c 6AVY-O2⯵c`u\$"VŲ~?|1RmBt}JD%FP׏nNӏ: G[FĢp<-08By( =]"֙I޾@ݗ3 KVLR#%]ٮ-%y$jRH'/s'8bCP:jne:/ǩ,H` imƔ͇!jra画g+ AfW}7. 6S$v|C.~"y10o@6o*ՔD:XgQ6X Gb`ZlW(6 2u0OM9c?}5wj}8wkN]91ߢ/ϙ ?JlUCvy%.:x 5~]7N?f Ly/&7+/#?lӊDL«o9_{ +; Su렭^\_"Zz[E,dHIq49I%cr^~c$'5a.ndȡ4мIh/s5|/(@,L֯Wp$ ̠n4aWJ JE¤\(/cUGyɤaGE >->|Ң ̒زe~x{{Cg:oQB=;3EN?2P' ĸrYJsYᬠip=R16|tޥN & q$ZMt㬸.a2)^q;3_tȗx@%N; [+蜂J0GJq>F,A~vq11@DNxhY@c*Jx#BPFhg KӃٮ(kLk '?r5> Mu1z( b_Fo |t w9Z=^'K2ډitTDNPT]e}~A~'e@2K΄퇹EN:BmZ~8HU'Ne"s<"Q:BP7Ezuefkg*|=i:p>t1JߺQqDDȔ+[ b Ln9ir;M+.iH~8]tH* f]cWc g>}k!V!94HxFEn?4GAR!N?k\/1V}H%y~Ci=#>b`:<,UIɩ+$鉚` ǚVxb'Kʶf[/`gEI [{ $4-  .7EzvlFR}'켧FooOmXt*5-Ny1ADF6n^^CjI7﷿!0KKuvNk)"l ?& Nk z]2chc_RP}Ķl y20$1@P*1;`*Y$QYz1m>_b@ڄ@*䟉袨EA!.Ԣ~ [ҴϺ /!$Uvt~dMe89WmR>amY܆e/W D/~-]pļ@cu5POI&lWcŐ̰|eB'k[ ;{D.]2L-h ʑrVEykoڹ=oPHA+'nPAR>w,,\4dx] וT 8հ%$u遰[݆G{Vx8_TDFoRA8*S;㎎fp_kBm^ܞ|NƄoum}J.JFnn9CKhLd֥Dž^FC=b!ftL OD#!{BJ~S܁H@?-}U(Qg}:fa{S<;5s!YKt-$?EeO+{aoDEJ0'^(vGGT-lhq1;^\4Eݱ[=h1"NFB^]=Wi{( C~(m~mF- ~UT}ov+ssE>#j_9dza39MPI/ zJ+GN|6?A/5+7~mA96MBRń[`f=d EL4!&&8GvV>(xʠKi=PB-g Xb S6sM:>PP1vqFtӔ7Jˏ=Ճf-Czu;ud'Z Oũ[Vw ;^mK$.˦{[8:,:>7Lل 21cF7;j׮bƕp)tF}v_)|Vkj]V޷SCaiw\F_\Kf^6qb*.ƭOIɎm]ǭ_YL=!<,J˨)H0嗁yŢ .0gE: F1m+~y Iӌ]voK2)psW G"I{`+E*?K|Ѓv|E˩(g#FhĠX̵SZc6]fdM2Fլ딎5sT`QmI_0V8Bap>ې-"6Ğͻ"Zt7?(MO nmy.pbJ-0+G/k|^XMk!kig`~%.OF2SQ "hkKo Tí (R9BvVE{V]Th$Pŀ޷kDZ.z8_KQ}UJSIG WE^IbF;?3v M230J"3"`z?oIa|"C'cRL{eڎgBٞSaZJ0 `)vy% &Nd'{ O||Ub֍%Ҟ)[.A6agJvdxHv34fY Iz/ iЙ[q+΢n{aDe ߫'j,.N)}( mb1nb!JL)JIWOέLPnRXEE[H ߎ(Bv*D5̖#9gM3j$ Qp~d=fA+mI@m*ҡdlzxaִ 9U|T+r{#KVu`3%N#cxtԍvZW=0"_df7ZNS ՓW|+u[=pT?HYnKa`@dxyɜ*jE]"-l249G w/U6v7;pE |s%6A]ر $M"; qHq#ͱ쩭U^E`Y g Y}k@AR6A`=jӖXͺo.坮l6X}"scLB h*c٠>w9PadiR:n?bX'B/a:-8)ҋjfł( :0+BjK&ȍf'3YgZG`YGW5:Q6(FŤ~⛦JϵL[c˿}B,2|#F gT,}q] Ъ ZM4M6t\U@Nu 1knz|O^sf$-!4Y{#Dik`e}dۓS=oĎtwGGKS(PSⴒ=V{$cBݐsﲚ޷Q}cU&t s$In 0̠Xf& Z :?0F3 mq侊AzeFh'%yͿvG/ Oz9L)?L$˘%Agxgq"ƻ9mBHɕlF=?⿹@qrYQ]}y1L]3;aQ,*?(](VXS[qC-D߬4̆Q[;+n(y6N &-ƨ'F:Ҽ}D *OF?*[PSVҿ빽d _JtZv䰌8x4"|dG/RkqձIqDk%PoC<#hP9yt'AbIyv1u{HfCf1cLZjRܟJ^G#g\ڵaٓP /p <@(Hڰ .14nՃ+Ťml7}H@nڤ\߀΋l%8Se _v E@Ԑ~'0 AL5AhV7aS. ĝCyvHrO9Bҏcc[v:e3O-t$N*fVQS9 dUtk6Oaxb V\C0%ys <ü&z_H;ʺ7Tv5X4,;{)Tb_?Dv:ۺ ؄l8W/'dS4m1?)*i>(.==;8=:\By4NRƴ^i<<0;1wQ0C.(S1o`i)l$m5?X'HhIN,{ba~%! iP/,:esg=BW-o"C15qm`yh\}ܛ~spNf r=x-HCqE@wp*XɓѝCʞp9mUM\}R}<t`k9|"ϤvА7AZ X/P|OMj d~HlQ`{Ė"nN7'-#+6]QF}epW|)4_ ĻCZzIY.@ǝ)p@ YbzeY$5 sc %#II[;R@ #G/*o`$l6uoȦΓ=8rfaz 'BF9Oǫ>cR}Y; Eqhiܜ2V2+ qNfv 9%eLov|1P ՠϷ,ߗ̝IZzeW1*Pg< 8AШ%Yh "!%h_%n @LKWus}i[[q$,Fv-ʙR]IMG)BRa"NA5LgY iOll."LUTw%q}^@V֪h콱ef*[FMՕ^;) w}cheJfgpxN-9>Lma(&BYt B#a3&l'Z-o%!̙tb3$n Ucص9F"*@#c}m'B` rуlsb^^}yT]^UB9f:+ eX2iL``$j?m&fke"lOpj I t^EC}[da["K?9aP9|obٜUS\ORR+^ VGQ=BeP{sC?uF'~AսFOOd=B]1{yp W-եC2Y#>)F"[ˁEΔj痒 mL[xt*A}NU}#:jb\ׁ]ؽ)9茹1}dBەrre.&^Pl4Eԩ9\@`@먗i{ 4#]m.vWl"YG@{T꘱XD|'TIC9|Ɨí!tǕ9ts'F?ŒoUDQsmb߲@av"ÇyrLR-`y;!zZfwV6gR(*m`[pƹm'UýXogO#`@߽GXju` *H{Hd^{pfKGzA%Lo _$+ z%1' 2Cc SGhfpʒ2B!9Wob&慿6*?5Vdt^⾱?v{"L4r,[jًt΅Zu{:"N̐v&7.g@)zw" m/eGɋ'd0:&f2|C בOX&0uDঃwL!@1jKQ-nF;'3UK,Ĥ@Jj@"&98,<]=<",G`ˬ6қÒUQje- UߝI1tb]zk@MĕYW(_$8ɹR U}*ȑ;O>ㇺ-(Peg㥊'Toc!8=Qak7Hf1v*.R(aƈ֣Crg՞7V6A1uV 'Mgxغf`}uuB:ePbY¸ jHJy1Q0RZ!!iVaBN,+(qZD!be0Ƥ h532%q"퍒i^kc͵n,E(jF1SR5GE3צ'~( Whcs:anue2@g?UPc'6SZ7M U+==[-ls H 'ڇda M;@aiof?Vd/IN!L 02s;i)f1 w5Fj$9KW;źƁ=8YNY~S=oE!(H-Pdyq/6rF R|` {2o%AS-z<N;})O I` !kX)%;\~iE~WԮkXAv&<֖4h#pHAjWkZN* 58vW'`Ꞩ99)@]x52q׀+e9VPx9-K 5lZ ǎ 0p:hGVxW{I0Cs5aQT7bѭ@Hn(SE2V\VnwbW οtf ~1^0s'u$ŲGzyhkU`]3~ǀj´@qQ6[j;\~Ur#53?Fo1$=F们,o 鰀Ty61ZAMﷇb޲q|Gwp/SNPz]CvY:7Q<$Y3UtDV8a/ y4g4Y== CęgaG2>,yc|kM͂V?8\@PP{y}Nr0/R2'J:(JKX-\{G%@d՚m} ULWװ#YBmN\D E[S{ힱ_S3ĕ ԆzM3"pGvԠҿp;YSw$$rdi5.P 3/E$1wHǙkg] d pՂ|%01~OW'Fw"fQh‰2&1Mz=_i&@~+>.R+6#MY"7> 37stM\ZxS 9ryaL;Kegx=8\/쭣 uj?箏I ϶r.z_qj~s1[hG1\f>nc!ez$*L}[BrUk}nf+`4>yKZ]d:kHLs׫FTpDVa!xچ*o9р:44oi}l쥡VFU}{nP݁9D{ ~ %Jd{3=+#P@r$ w&Tk+aXIR,8 J,"Ոm 9\NIolA d\-Cp_: }WkͳCIZq*%MV0J{)!41n>҈DȇAm]*_BኽĴ! *?AHlQG+D|}{ܻ? -.?fx$Eo 6jp0iu{l,4}?ǸC7c@ P|yC=ni)R%JaT EpcCvNFh I͛+**;D3gt vIJ(w١V`Td.^ z3b?𾔿b{.QfodRM_9Slh@[Z~OQeR"%= $p޹dIY2:pԥ_NwQ`XɉϤʭJkda+Hnp\Kyg\ިT3d&NCQ}~Sφ{TĶtB&' s;ĤܙK0^K5ûlÈB_d49SW<(qx/'9QbOYE(>JLip򵔪qm=/-' ̵7&LLpUһz+2h']2df9vT1'#חZ&-zN4&~KB V㑒-w)@8zܝqEA'9$6f|L|/v?bޏAD-HVey!/tycgE54֫6 [5' jZB]bIt8PqSOoa5c12E﷬L3d (̏Bhv!:-->Ag5gX #'J;,a=) ,V4Ϸ.! Qb:\WPG$ܘ%˨/#>1w(?>F~a[H6ΊvY~s9V׹Kp,dq=9͹=, Tp:}gK">޵? QkZf 1]5X)-]zT21H 6YR[z|B!Es+ fk92XTS saA:+cփ$ضB+٥]γ:#f YX G(jp x%rQuTT; \H$aө[I(!PYPsmQ}uX@/6 meh4gsK"$@ۏ>g&{|5Y vD@Bie7TeWP" .XhV.j!u,ͥ|5[?Ɋ8ģU.$c"wo|'^) ?Hʶj9ܢfv[ǩ7&(gN>~Iz$Yt݉@U(D W-ńW̱&? p/\Km/64T8_` ohSE27QHEԤ"H9]]_Pʴ^`l+SHؠV Eo39anѭ' א̝mHlTjG6xiT-B'֐y!p,i@WS3 Oے}Q ݯ›_ZGS-5hS4f<_kqm~j 3$ڜ./:{Ħ՛+SG| C~`*ڏ`j &T3^[ RML-桘n3bA5>)7C+!`8дPSn7I5Wqr`tlV|e0Y<9H'Hs*%:TOcLahs&P ɢ󿏏Y~K(s.r!5Gm T-.jr#uܽrkS;u){rܧ;}.6b(%.hr,d &B2 SJSs(&> z =(OލxCCQ'Jb%)arrk=4)Fk\vuʩ3+I^߾D@5 U0qaB T|~5 irl-J3#3G4;]eM5 k̖'e91o߰4drĵs0V(](~o&a30;ft6r{O*|ʏZ<*_-s`3d@ D 4&YD3P hBFL# $ IrhҬ(W94ɇM RrY1^%6@^\ެ9&׹ [xPiYPDV$]&G2 EFn`@+=ʌp%F#P/Yiw*C,7r[FgX}op! ڃ2yFJiJ|4 w{cKjoZ>*Ȕ3eƴqAW']dcG%Bӏ=au%n_w?)VS0yl==Є}&yGLnmW -w%; `I'{,9Kިe5[@頷إe]Y)}- N{/d}B3-\]9/Ux+YY~:uc9 $UY /,rTccE(k>6|,P˃[Ft&b-x܎n*&m8{?xׂz\ _fhq3I|;.OplI:4RZJVK[Ih Q) GFI! $y,(ԎGEM۷f8_i)xs)߾ސ QcCtZT;6c%E ϋX]=m6&h7#r!yw;*ll.=ޮP7V;)k-D]X|ZHf(3y&tU Jv+nL `q/Q.-E5zm|Gobۭ,&S6nCw NS[ua4]3Qk>(q\2-MDp&Rz6AV'D+WCM1y|O /$ƒ0M,(ݴWNA/O~DR m6Wvq!4R3piZˎS@ڴ+zlzѺ6xCZxsqz+T( h`j(( 53 Tۯ˹#Yf`VY4(|9Cd\LlCq, ck`d~¨u{*k+cSAV jsiŢ .rJ֝mpi,)Iǚ$i~_ ח =/98dmSﯙ0t6`x˘8ԅDy+vRHw)gVtN)UW Y}[:81 ~\3g{LC&O}XE%~7VRwȿ(dB[JIWL|vV m Ǭ YB4*YoOjX4G*eF#ZyԽN9_fyv t>aEF;p壨9nUۏ;%r9y~hŕBtG3B#RrqFfw=P|#J1Ŝ α9/z $|!B_H5hT@=3hqm2එ P%9 R,_c:oqf;̇^1Et/[02Q`U%|$0J bH$3݊Ԭ؂/bvV[.d /}6Cס 3WjsH~UQQBŀͤb8˘>aH;J[idG"GA@mpl1Ņ#%u.nI.IeMJY,Y "eƶ?|?MSHn wPr[5I ZCIN;J(YH!6ޘ)+5wT1Dq/ ȥ,W/`z ǰ?е/#w3ZK>d@o^fe˄d;]O\trʉjDqI%U poGXy$Zf =֑Rt6hq5V7I 27$%~f.s/5.ƒ Փ RP<Dm[3ſe'zg !Z?p9%RulכVF`Q_aˤ%`?#O1hD[$N6|ef"bk=<=/x|&ͅ"?_CC=o ii (TePKƣ%3@ŕ]e+6g}w1;h6!`j_; yT2คi;VKz& ^FhVd _dxΐmEA06J[0C(i}U(W2u8 8Cp ҧwPԚv?ǘWDgRSX ҸO D{u=Ɯjd\'( \;_$!|^ʏ6* dԆz>t"̶-DOK9-~ ë&Etm/Gi-< ˼;r)9fiv2T+Ł;ݤOQMj|$OJO{6QFGIș3$4GBz>؞ M |lҡnx!8i6yH`T.lm("|֑e XB^3Ŕr;xGUW o)ɛ貀+狊Dnl wH@DX`7SBz6*T U5ZF,] 2":L.Q opC3}?HCAhXCq&-~de6z핺dw[@,ė=UM oM; թ]BBQG>,hYD@׭0|L.(C'S{Bfm/><ГW71\ZBaB9t"gsr"#[kF"F5+⻕C<Ț0 `N2&&A87y0QKE-Y{v[#Rc%#wf" .F\oyXg쒾ԟ +,Oǣo>B]w?b)}i YN;cPk. t$牟C-Xc]p&31ڃ}7w@lvA>iqy xH\oh!d9 ȫ9H@n raobLg ӊ4qF%4guhMײ,!IG\ПhPuy2W|Ոv*/-}"* yk9ta`Y-T:|3u[73KuYf,Lǘ0p{cZL0wEM!qFéP1PY(1h!-Uy1R+|r=zawތa H6R.bu^<~V1*3bM\A/fUN &sldUq-ցс/+/by:J=,y? q\DT43dHE FN`v6a Č`tԡGVS BnrVۜ)RWyY7B[[3Ȣ.?_1pn$;v;*+*O}03i*G9!4x,(/3-rŬڨ|b\SX&oHo4TOc|}zv9{;h}\:x:T pN1+"悿쩔/r }崆;nO{f0鿍=׉krLv3א,Rِak$ ff~#~9/3ԋp!F7(iBk$-AaD T-[e:%xF%ׇfs519ڙ0D0^mV7G%rN7Aq$*8hI:rA՚v4 ٩+z9ߘg0K?-vuU8u?/L0A~y sN3 qnp 7FA Q׳5z̶Q fR9M2/ +j"6eu>{KFc럕 RRn>p`>dAĈ$GL'f^ %Ox"VdҸI;kIAɘoy0k,CEl5_^WڻV|K'Z 6!b~L 6&p@aiC`/No@\GT(CU^R ^c,fJXik SA+gVCbpuT#@hܯ-E0pUƲhFf\֣Hʖ>d)Otۑ3xhFW*7'z+?WgXy#o&՗3VKi`]>SA&l>0Iu \o5KFW6,FB\cGqV8Nǩ-f5TW{1E ^k bֱWY}]UF+夎iQzwB p-4MS[` sEFmD*%:ٖ\-}DެsHiO\?PW7Kĥ9sWbaQRkc#lGX0^WC|).T4 -=ڇz (ŕXFbbƦ31 Y esx=(KbR1{6c#eoR :^O$0,֬!=׭)Ru.'('s@<:XDxrCWyK_2nPJwCd_( 3 %5d, iw(+TNj TTzb*ΏŠ)J$7Y295I(zDy/+EmvL%֔ȌNBw;wBGG9MAj4GMW`@Ҙ CX%*)?\hNB6Mn]w؎U'{@Ҝo܆P!ɶ.z6XV.MG^bDJwMV nRj2Yքvڔc6#'%WϢ 'ԏ ] +.L sS/o!2yh2tsMWB"SˋAwRԩQG0 cOpߟ + g5p"i6[GsRy"y`P+P*"WA A &-_l=ަrټ8( ,/lDǐCPX +\:142UQpTDUl#&3bӀqB R/"(' ѿCsƓ4Cǫo J\ ~~"Pc6 yli̮RټU9+ n=̙.c?.x-Db5R@i4pv5)74qi̪[F-$sfEJ`}ݠ NYee NM@$ԛ  Mcj83@>$+ԛM8]e%μ&pBj >IV&K]e.y{h'iU]a%ؼH~,uzc#)$Hyjz6n&~_k0zmIRCT;ԵOa]ZNSʾ¾|G$Y|7W; EDnߥ4hт%":a^HSu/H0dB,xJjLyk_'~{f??,YHFI`hew!oX¼N׋W{#>9X9^ [(תJ>4_ڵDwj'fW?]ngeB#*N=cۑ ^蝋A00_ZoĘ:GȜa|JnD]^I*<FG5vǭӀ})cvo{#cSGVc#)>'8h2\c hƑ4TGS0_Ć sq0/~8RovNz<4"mOcof:jUoP鱄krW7(F#jN0t:8q@9rt_Œ:p"H}b-'W>JR9nƸp!˩7BOb"-X:wh'NI7 }:DlpM= n8cr~ OÔ>dQv*婀5 pL q7P|6 /L՝o'4l0jٽu;8@y\եV'BLeˁ/oR]G.1)܅{/hp1%5ʬt&R/8Bab>1Ɗ!(l!n=PIi`.fTށ]p*\G#4")!*s9_|v;"`{pi1ՓeceCfM J1he(D^\;ʊDky;\# s` Y^7bL4ڑNb5Ns䔩oFZ]:e\f.A<<{>W`gpߞMSӰ,Us_Aq;YFպd{z-hY'XiC8Ӣerڭ9_-3.r>|1˾ࣼ; wTѡgHh b]w6΋>t%;7LHT_<݃] u=KJ3E=L-h J폒f eܗEkT]ƻػEb}EKfԩgGww9Bqg< pr dy?ZC/˥?W l3D.p#2 TO\H7]Q2J"KhC=C|7ۗƖEbptm 4؉}V=6oH0N/c"(u=ZԒJw hOFzUE&=WKlQߊ!!"m}f IHjN34q0Q>٭ ZpIξWٞl;{Nl%)f>+ÛJڐFUٝI7s|=7:+Ms29$:'8( PUޚ,%zǓ(jz@ielAGB ceۨ3DAIS(8Cs< [_IӾ',Eg!y%Du+9,/j){ ᯿"~Rj٨l3ȼ0Wމ8Ĝ͸?УB&݉S\%}8YY-s98zw^]Pf w&h[9R ds+1 og6r?68M6c52ͼMJ̻)aJ9؍жE /0*Gt3%Pʀt[8/$WT'D{'Iׯw\'ukY0Vxa9֖$MlHC?x>~/*S~{#M9fr$L1ӑNt0p.Hw^&Dz_bh7te>3;o'%5"4 ۔|?Yꎥy)XՄ|5GܞJńh̏KuC+%.8B.7E4ո{cKg6_* ˅z"Bߒ2rPӼo~Z>Nj's,`=Ұ֒,\yPHCvw(q'D r2l!8jQu)7=/,,sBiz wS%>sUX!$ ޣ.ȟiĨ^OUh#3i&]g鈼X{F 9=M"@De+WӦYl-`sˡZHO5~(\7- k@+B=4,&o0S*&ns~> @T`lJ0QPzFr.|0i.!g/L{ܼ  )!R9/{̞c?w,svZ[J>/'1Ձqq[h4^فE(?(< pr_yW %, *MJ;.W/b<*@-G{p㎑;0{ q;[k"";ͼaiOȁl?]V7ˍQG9OV9_S4O^U cG# =EuOIRJfèKfLBhquzyjS`yvQoي kR)n9^ʒ~' f.VvXn`p/+1̬' |]w\Ƅ T};: odО<=ABf8,NqN v9AEl&\wS ]óߣ ˌVG/hj΃hn\kE`NeuM7^GO^Kg.R]&vG] ,F$c AKo_>2UoBU[Tyq%`21tM>׿9\ѵ0 lLЈ+?ΧlD8!ڂ |MrHB_;V%.H;Z!3Gip>m1A?$ .bN2``  m[Ej4! M?C'h?Rh=1DU(;&,R:p\Qyfьwе7~xOz|;fW0SyZjČ;c;yibC^'p:w؇_Rt/O5nC >fޘ*E@jvOz^Hp¯k_/Zv܅*Ql`V5tq߇E[~ղ 12!T,GG.n vqӥ"/ÉʁDKЧ$|ƆA2`#iV*'ReK@ӡ|dޔVX'e^ku4^7XUm,̡I0"LRps`4 PE@W3r'2̰=.NB2(~(<`L$oѕ@;p^m.ҋsyG{X S@/7=rW`M} yLn)P`81&uŜ^ &C=&0q>HZx"Ig-0/^}3>P6q= w"MX7s6b+˓WVwYGF|8=5n0-I6k=Nx?܋ӷ݋Nj 8'f;'7dS-neVT#cr>si+0W'@Q׆2dWA: MY:=b`Z#nkC1@Zz{ʶmb0Es^t,ЃlU^rsbOsiDV@\-h9Rv 0OYo=ݚ^mlIu:C$Ia&׵/uj_἞_Yɋ\{7~Opӧbk3fEc =KtmtFYaboNJXq UAiu;eMkPT W^{Q&ȱ-v '" )3VbٮS!xo']0XULk/Fǩ@MWy_jT f׀T)Ppw21 B&elhHyNH,K+;hs&?41-_l0=b$yQCFi_~?҆ *xN?zdG=(VFغE3td#$8{T,'{a!ݽ@$m2-)(ŏ8\fR]\9'c +?yu6~i}?b7G|-6j9 [^9s6X^qQ#;`v- \6(5!Lv<`ݕ*DBd~ %Z]-œF~TCt<,mK/V s+>>ncn4{ -9F(cKlDy1w6iڅ>',3ҳvaA,xOvlCnྼ}(JhGo=zdH~EjjnM#E#!_)ie-Ag7HG?R2@3"%Co+|({ i ^߸xZqƫZh#` ~w)os=evݖQS W#`~s2kp4%HҪ6®QΨ"jɍ'R, d<}#zI;H`GEVQO HRԐB|:eu\3  (J H*:sO?e>gGQ1%m5'Zcx}G2QǘFcf-q(S;X\|#8r6>^h ΔѺ4HuCAt:sr9sebJSM0FJK( f8r|;QU@a›Aג-쮲To\!2rgppQp/G> 0C(@3nDG CM7 .NGhgj` @̵N켣w+ٶ=-aBm(lr_c-;߉)FgG~8{(m72hS5[c  raU*xrN>ѿXzǴu&A9#H*M2G3ZUti#n /-݌5)YUY~ٯHl0,X[H]AF6:+Mt;A̓ nRO, ˜Dtr WSͰH(vY ,ql=Yܹ1^Vk+'D*xU2f[# q;9uVӵf.1仏E;LD~&܌qs:+]0,ߜ[Xe[o^G\A^KD (%s 5+TeB+Z*16S&6T OVn*Dco:Ô%-Il |oQKS< Y  #lq0DCQvUmh"/ tOfZ 44^t(mXC"|ǥĽ'$ @+>t +̭V2ݾXtR^$8Zf}a0$Z'=Ts<>INRm}ln_a*k7"OC(Vk;*<';"^[ 8\<:R#.JVx+5ˍ (E٦A'`ϋky^())H%b)k?J}>٥EAzt2`H`C]"&b2M;e iL]m(Hyh~W>o2(p1\LTԻJMlQTeR;՞rZE]J:cE7Dy \/SuËn0`z/4=a''RO#G,Rkuc4-ؼLpA|HDVY-ta>#)2(&ٝm;,#ǻcafᗎ ^r3Z2rT GPMAagb:TGfI8 񳏹 MS$ҪC#wztĒXb6GG-0hiKmrP|j#nhiv40T~Ga)3wb{^VrL%d\'#ͣ=*eR=,&yֆ/FlOUTj ,mkXDy8<6WJKMUBCVxUY@~2iXȨ n$/V$><򤙔 yRɑ<fC yCF#[!s9_5#/VG']1ZGt`sv] hH.V}Q?*!z#p=< Ҋ }E/O!@Ja*H0SOD:^^/ު=^$\'>o7y ƒO>U#O”;lE!!,x tΰsNfq8U߬P$RR e 7 ̸ڬͯX;IV+ɉ#kQ(,DBa:;cWB5fƣ!$&:ifQ%6 ;7}_eR)͌Ԋ+@ bd-m2~9`D|KZLndnm>yF"eqH # 먀,[A{m S˻?"x7#ˠa UCT_}|wK4Z7^I ag$>S\בUN"ia4uSH+S_ V2tn2yZ:K pΧR7Ŀ'J4hCWm/A64]ȅmf[XEM=[֊Yes KU1h782]V %tFCJl}6f>˵v L,dƇ%ǚ@ |pbwTx5W4~|eIqZ:vh8PulQއW QiҶY}cw(65ayݲ;sYOK"NkJP4:^nmftQ뚇t%r@JinU;Ĉ#\p?f#%뚙dDH86wxηU^}VU5 rۨ#7@.bRdVN%U6_]):6H)^揈!M'SżX!ИuLJ.$1 l]9'dVQe#RZ-xb45_ܿpљ˙]IӔRf߳nhJ!+y:"dBt} >ل_i|`v3`:C | JG/>G)7 B٪cG=Kec[:dv++s5Q(C0mE-SR5%(6 Y7nwɗ?T9DShFo,#H)ǝf󽀕o#ؑHSXL,<Ң5|r9+BM6ƆIԑ!ſ9!@NtɲOiY8e$JxAZ$w T' ~)ض"TCRq N_.zHK<##XjLH{jݪScr¶4mQyqN|H=Y<V2eM%lp{$ [ۀIՍ;èy-%C7CfRznΨ㥌‡׾F% 9^>tUwO5S)o[jKAizgb"/.GگAV LLA:ڼ9_%F%ԓmapa]3eNXp[,»$2B)?6>oKlvϴHҨ[xS74-*1" ?-H,}0t,+ќRP>%SnDV4,TӔitP>[F,̶4u3}bh#VÏQ#C!q4|88/P:bbҨ ׉ # -#օݗ0zyD):%YHxl^feEym婩VzS-e<^JALctP3['˾ )7OM˛_JŞĆzO@GGF!uoz9nCI Xi zQ!T$mP/Ś)LG( d'M7vb25}2{T Yvd$C҅;*sGA0ケ#JWӼ1|Vh []O~;jhFMx\ lTZcj(Εќ{>#D"<f;T'rXN3P'`#`cAw'w0$QY ƮQb5$FPVBS +x\U\TLc JS %И@]%@l '^FtɣD :pZ螯# 8ht+;6.F_ 6I@:.Y$s]e8VћZ2t4{K6M0ryOrթ Zq&D-q8Ea:|'1Gsa-Niw8_4 i <;h,!ON)(iƌvH}.lo$@k,<(Tiϊ$/md9X^e_a?yS87'-/䖎XǤ{j."6='}W6*^eD"eV:,:7Sdǡ QS(҉Hn .4ŹdL1ӗ'Y6<e[gq{ٜg !dO S}1Zs8! 8S#k+Uee Ő$4Sul&e79"zJH')v# 3?0$dC^8cBoaya>k7$R$ [N7c"BVF_ŷ~Sᥲƞ9~g%|#|Z{1/i)dN"},7/V|ɨ>Vb}RU]uJow$ZAlxCK !{b #|rdBFwVDV qu,)+6 /~6L_1jMĬc  {p@M9B,ǤPdk ;W@k4DA`6%Ugm3{F\Z8:߀xѲpr^G&N5|ZITüD9|0U]9۾ܺF؁6!,{@we3(D\Iavji3~$ͥ \y[ "RղFxhlL-*]pi\6& HP瞓VP)7N:9@]Ul譲:9HV ֡JAYmn@SǹSA &bL\Do]#y\~rGEw> q4/-Wb")Rf…]2×ӍU ӎca#lg#܇{o2"$`|Tt0gAQ[?kRn<;tOk)h2m9ש£$ Cf},3q.6>ˁˢl5hc[q8lqkZWB 4w]}ͅ0(.18W~xHxwD`6 -nĢV OW.-0GdaPXv.-pGey.ɒg]dx!Zuc|Q_:sy54v{EBZ69ffY]\7t[;^ŒfP&% Vs'KCc33'=cUe1UbS6;/@]0ٔa'2Ĥ{zVTK2_nx^C7 qa>;LmgsWeoD\ y?j78$.:̮*-;D(rCTŻz}\і7uw;o#tJr'sfw0s>nnXqg/Wu?๺[Ԡ 2QSUOS_ּq[osJDi\b ļʫL:TWx/S#dU oaA-&BxHS/z(#,.9JF%Ws}^9c@n*c~/40}V:@m6߃kʨ0 že 6 wSʀeA{/ m)vos :]H)Z a~tE5Ƥ=]| W"31}(EM~Rj`,FH((bN]4#"olBސ H]Ϙ?307+8zGk%bĨɑ: Pm) GʭQKYɦ1.+96h 6btf۝3Sв-/z! [2ktANwZE8S:[sJP4$)3U XbT|$H#|8ʬ}RxћkzVQH4Ƙ!NL3HN+[f bkDu?4:ĕۼs$|MTT/G/F)?!VJ H#'r鰬5#k4XLRx:e" 1}zP,k6H%yV{;_".o$m h$I<e\gZ[Vv@~3wRh0xo2.( Pj>h{A֎[ʨ\J~Gqd[b]͏%{ I [l:% R(-p˦=SF CʄFetrF(_B7.VyX*Ptsx{?$4bK킏1NjE~dc]leYvd ]0K m3=ēXVq9A-k3R'u:d>e'tQuMj}0;{Qt2ZKZCNt:v=:C u43;ojI89P3jI<š:$RDK3x/J` wh P0iӥm}).nY72mRfp{ݤÿ:5EO9) 'uL`Uh j09)UGߏw}h ef v }VyV'v(钚8egX98’k1̂}1@?^Uq>t~[FVA3\,pmό-VO{RqIWZNg-hFH9V\S7h#+j?Xd玔ׄb8 _X%Oɷo'i<:QCc2MEv]Y}`\c}MȻ*oGC5fs!!:Yn:5 vwķ܃xO' HFyf_lβovtf8 <[TCl9(mfT-ٺ2 c]CJT^=oYyV јv}CwrouQC1ܐjQy@Sǿ냿ӭmT-$`YUEn?j_6$jJ *xܻt4{iewrƩ$idY7 nx>|9oJtMGrڢd\Vfr撃K"WVor*VqھA'3bp1R]6O7ԯVL6]gTCo,G a};ոV1#^w`khȅCuaGLm(c1zůzOn˟He(wj I{ 68kKF_0gx[#Ο7 ~,`UR1#Dx/ +\1dH^[Y:!2$u ygqA6?0L\P/1ql0QB?x(_v?{[ѕ{{vkfT#Z$]0yƔ8;Lzzݼkb#Ò:dɐJr7JޖzÄK%v&kօ$ZLϖ8b f[٩UU-_خ!?$'e4hI=XzkΐHȅ> 6m7\tZYoB1bv˲'*LEW.BcL!;-"#U8fx'^)ʟpA'=}3i]طDo KˏWfw +3#-vճu\3}8f_R\F}nFeąLo% -gik>m!4s|A&)yk1 bf .08VI6&A`cfڂ ?&Q/L}Ȼ?i'dr-S-@ڄ`v߉gF;^H mu[Hh I 63#!/Ay@ p\ X*X{J~>uDoc&psM::\ A|( 鎄7Ƶߋy~ oeGv4/"G݆y7DhKXo?4^__%!,>=1)rFQ,h |zB^Fn`&!I:, BPV0֨'h2N⣃Txbv^Hɧ͸'8M*/k!/>%!ʯ(=o Lə\vBdp]laBj'g)lɅaN>yjH0w[E ޷dR @p '.'Z;g-+,&bd_DKqh4N"a".[[Xsqަɮ.RQ/jPtk !Iv&Ge$K!<9F_?J(d$u=Ra SK;hU\u @q(Thd]{7 qmd DP#~iֹ l |jt],7ÅE6Q?x;,:Uؚai1CȄ)䠅2yc)7U0;9lQwkي箯m+yY :j:IVe'*Z{)1^l= "~CI~!h) ދGT)r.aPTIQx\8B 2f D2ōru6Ix1.Z\n0ΟGr*xHm5'Kq*X:J^ 7chJY|+˰gfy *M)]%%M MJܚʷ߀4ՙ|,9ԉdjVHFī*,2$쩏V. ċi8_ 1S[,px&}+/W@PbF#X F:Q)q:A?`s6lBm)شy R@@UeE狜E>4A#Ɛ7 ʣCLv% ]".SM[G|yJ_LE30\]mjbSMmf_婍{%SR5ȸܪa=ɾG] EP :hx8w;X cj{Itrc›׭S;m&,ClG䒥qf<({gQ!v(#@ϊAF`Yo; Z˖b\a{k6f奄2G 7G"|<,00DǁqHVF=w !C٘0& QztnfSxti\o?I)<g@τ t^A6o[9?Cǎg)' 9,2[/YcTS_̸Y]PIavCg}l)&װÃRa5c ~dsv\u10sC*AH}ـ^Z1;YRsYCge~:U-ٔCqL#JCfPZcsÐUg^HLa{[HO6#at>o]`H)#T!4:PBǚ"4k<}ڨƗudGC:w 8m&< %. U07j'1h0ʴ#a Me4HaSLKo?$mژFK2֭?^m 7sXMD6m=PxS)5)HUEY♤%o?k~3(^pU+33ixXt0Ka 6SD,խ-)ɳN_F9ť}(s=qBbQSbsM+u( pBJшgR Hwq0WѐSOҤ@~`lBQm wQˎfn_HSܚ}cT8T r..`s-OӒB w_x\1Dqn/5w<̮L<ρq!g44j74SmSskS gO}Huvڶ [+F"(:&#@C(D)];ږB49):Oe&!'H QTsh6¥-$Ĕ6hpl h,S>P| Y/:*% n=5Dp,1;I2PhCNvtH_<#$9ו°cZ[~|U򘾹ޯz2\-E]4Cov,ɣVԠ .9}<ȸLp/x-J@'dީ) x۟+^Yl|qv5H(+4P?c+DD.ˍ5I/>b'0"7.?܏)76Ouvaat8Oxs[ȡ9D~|%tB礥sc3l0՛{z޹ 4麴vPF :⽆`p9;AmVU|#أc^>I&%.!we5kV ?Fi*b~CL>RkM64 ƒ9gK@l,.e @oNUF$1><]]QHb[M^o*x1.+:-熇xcSJD ޯ+ye3^y8#lt!+-Uǒ0usNB6Ʀj&NrL '- J>u9 Q{eO!؝O>1#Qgɟo*coX%1Ao]A:;7{~xj(q퇔?)=\_ɔvPDUDca /p3z#^-Q!7"0hZ–\>U19 lq1k3"_R_},'#9iP -]Vs ?J:+K Cj2.s|#(X7Kg[$W?Xyq;|^ZCGPO0GK"1Ԥ|MԻ71KWߣo5B*4A'-Dݼ z[j!f{L)ƭ&|J7n.+V~#Y,ęX[TW'`i gޟ%o!of%aAdR=& 6{0$BKˢxP3-v6=ҧ>(ߖ8DUY;fH|;0(Ⱒv OIщnM",҅X3J֙ք7 |ŗHE[0;:͔[T1 й4P3A-6R?6YON5?LRrߡA㵞]zgҗDK5{twbjd@)dg},oIWi_<жMZz td=I䠷Iom 0}A5Bc;hς@ 9JB$VגTzl歒+ybhۺ%"d2ˀW lIxD~娃CK%fPGΘ,LW\{~lNIZ]aJ,$&}#.N ;  ГВm((~6gXPFr j,e7Aw:aw4(mAhȋ YHgDHS&9̉?c1Etc-o)niF ic$T|-ND k alQ}?%E\bi2^l;5:rP+Aq5ncs$ 3GV^馧=oX(Y]mHU<os+b ~~|4?ȿsOUrdy˝G!Y&]cpSrx]'GG߄ xC7(N?j%n!8\MLb|u lS}TX;42bqFWK~lzCVPk!KS~UA@V+a2ѨKfi C ,^mdž`DS">ÜZww=,1rv&]o,G:ageMiʾkϵfdh;Y]03nWݩh #=1o} S_9P;=h R`TĨ} 6XMiYwpq_tb{XϦ+oO=ՋK7pX)%./}!i'u*#`\:ZZZ!Sk.9@7qa¸n^WNScq&e[GH YR?In/_I޷BFqdo8k6a%~ba(X'KN оRzx ZltT2'>4啫L!xWy{IJ~>bxŇIG²]T@?p"wl@6&YA27)l-C Љg'  &6/t/E Dc(߲= 줤 ~ 2YϝV"MǷ~LOWM;^*i.4c@"ZdN1~0`e)F۔s9foȯ¹m  O!Xx Z1Ge9ְ` #8$l3[U78nx% y'8kDQ QW)މ-~erU U3io? O,$:YiGVW L4Oh{D#f\KXPO{NCz.74;J9{L9 "8zEްg@uF^v)@Z/]u虈׈$8y8PQ^c{ƪxٚg}+oI k:a#Mذx( mM՘O898r oș`Vq[$u[rjb?PQe (h`|+qުey+G-aJ}[edǰ9$ %GwY#y@C<4*r̹A;"Z+Q"ҷquLt&|K04J"d8ٙdUٌ1ØB(z&y<%7P" \Y(KQ ;GS1g*mbdjFc{N1+D НZm:8)Gp U.i2+'BǍutoMO}=u /\(ل=҉% [Q>dr(8t+!mLopy`~2 J'#ݤdPgN(%ŷ譍9o׷t}nrIs[z579y$MVzC 6=[Hbñ˅<]9LQ;;F3^0$rJ׶ގ{/lA+=H|ULz,4QO-* _̞V8tM3r"t] " zz87(1Z#sQ_V |Lۡ FOblp=\º׃ !?FHy ݽt`UF4ƭ]]D xڔyR<6z )g@q1'O䇁*Rcyz zX ږweC?kp_rwa9NMzyCT-//ōDP؞w5|cq=Y@:b"{k f@֗{l|&E"=jȸNwN`?4eKK!if?I &c=~^4ӏU48I^xBmo]V>b)Q4-tS&m0 @ dL*SB["z=N3GFl70k`^(ѻ/Fe x1s<_nsjm*,ٗgVJmoye:7z:qu L$?١[ $?Ɲ ![3_hOo#&e:h j| C)%L=ைejKjPJPqyh9/D>bqoPW36h3OykvCx$ҩ3u=*`gUhCj T8p'2c5,F[s|*ա[ݷlY^L4b_^.ېz[܁Cm1kN<;v;[ LZa<=.A>Cȱ_wX5\zZIBC]ztRO#+,n=F&zӖk+\}nO ΄NG[2Y_V3c)UH6B"kc`Ws_2PRپwq1Ŭ)e$.&( CiyL tY^gߵ-pCIĦ@ y耢-m1~HJ(yO ".Peaf#V^Qׅr4p7(2u؎gY/bo; ‚. ϝttG3xlg ~|LNK*F  %tZĨ+LK`*=(4ǴƶU^!v 喻ҠI0qp~3J. Sk1"%Ʒ[-q]Hᠨ~\L Ibjc)Rz`zK;xJ t)@5:$0Z*y>( HیP֒$zlBEҒa~Wr,T# QߔU(}BJ27JqEWoMp2֏#3, 2aĘ=.wY|Li,Ŗ(GXE[>Ⴜ-ЊA!5!җP9: ֠Adt*H&3B+cԶ:w48[ VT2H#*p4|"a'' `J"P`5n3,F9^ RmQk M,=<).ЫVgLuMg HV?8IC[9rq1*d8=6Q$u6)FvaWN]>y[]RB8Sgb1N[}dxHCS]L̅[xL^. :6cgkCsTWCa,F# p$ET/=z4Y{:%ܰHҰ@% ! &Ys,@Ma}X8LuY:x#?Tֳ }sR+ ի='ږ.3Lگ_~5cKHh-9HG|NOm0Pu"\p$30Y2͑q[Uw_ʃ>hބX$wi }SBYDQ385D=BA!ZP^<чihZ@_a 1o3RoB@P a|VQf[I 0CKʧ3!Fꆷ9^t _M9`8Cĝ <w6^$OHƓ2UA jPwУ!AalSo 7qfN]0NLb'}j|ˋ5ԍ_/{r`L΋g"6#sOMFT} 'XdB2.xFt߫J9x>QOg߇#JyB1@:"Ϩ ʟ `\E 𓄀.)`locVb/( !=3+,4+9Y҄w.QIA@D& B؃1U+Pb8P:UUa }m "UaO5sزj;EQ͋>ؖH_H^?\DH}rI}{ |M6122U+UUj2F*uІߞ{a(GNǡϰBl ;YD-?Vyٚd;-sPH =qf?Ò᪺݆ X6fRm@_y6+,_0g?#!J烍zf^UkV_wg%JhY=(cQq.kKjt4tEsfr kV)DNYg8,!Z.]X+ a̯|Ee/d4)*3(sqfcu Z 5 ٬[2W Y90lWk0e0=٠ꐬ ?M/zqW>`0$ ]v\k-$y8ňBU`;=< ?)`Ls9]D;ٿ }Ih-s!(}s ,?^߁xcXMОzHZR?2ˏJBs8Ey%YRztf<|' Zκ:dDF؊|NV|w!+]9ѕ̙Pjh[*=^(O '+(ORL}ZNJF÷()лȟsn?$kB/rTU-\cFeʂGu`Ap8Qd4jo$ϊj^YG7䘂"h4zRs@u?)N=UZ]݆#ԉt¬}ފOAa^|,Y(!ᵪAaU8cyvfΞR/?t-u0zI=BYл|:;"_?S`&(Puɫ*T8<󠊴d1J+ʄ`͂>ϵ$7R#<1Q]@Dٖ,ϜB]ƿnE. δa[|c[>{1Qw^Qh ٻezrTp100OkN1ǬW'Iħaf(cއ@`ܘA݋I@G|߆-+j uOԷ;'\m 'ppaAtշ +`1};bZcٜ0??7ƵSƻ;' ^jת0/NL9]DZcv8?epʞ QVw g"獄m7!m}!sp)mvoonW2uO4PU0;cRA. FF-9!`]Xq>܁YNqН^QXcn̫X9kzԞy)7rdC ([? RJƒ8¥7T0` C`HYУrK=U>_Riq?A?է 6)+'jE&A'I#ngLMQR/Ws VG%Jrbt:X)ԻYlCҨaLJ^U?Q .NhZnl#"izho*q"BAz>Qn]Fse?z@2Nb>l$+zgּf<<̯ `D>Om%y{Wb?{oֺT9f#dax{ :1?@/tRi6JL Dsb\Cn$p9;R de!: a|I@kZW&cޕqHy2`3q؉y5*/O-xTMCiLw ;l5JƆT/,}.c {dR:&_;I:O'vZb^eBqs/i~ȎxG,:9.}3!/M3lo/Euj.0-6F9텎H(2pbMeKz*vq{2.3d&8(nXk,Ǭ7F(l Q)fI1{ɶLM"4*]I=3uWzx7gJ6ngTMEpn :W+p¿9ɦn9x&(pY:y޼1U%jTY"K4t愂`D716Œ106Z)_~9Ay]0AD*(;OKEWe.4Ճ:.ʧ7H 7c.1xXޠ]}HZU 肻3BjQ!:69Dnf[AԀϢ#%pyYz/ޞfd 8yv]:+'kt$j͸ڙW*(䫞_ zv!݈ky+'|WE I!4eGnƶ` 1}V립ܓ)Mf6B؋@pMfJ\c&;0Y0ċgB+xU;=4 7-  G;9UuVmn猱[Po}(=m㢓(rcZ==Bf;mv~v?|qhi5,b,`Y݉a.$kS!r |ڌ,6"قJ4}di8 X34 m`_YY Tvg@q%Er}a3Vkf"ٴ^~T7"+fR\0ILfw[e:J=5J2ۏ".(۳: b-BFAhԀky9:Cޏ7,˜oHQnXআX'c6lk-nN-"dJ#Lsgn7h `RsavI-29vdW85IڄX-Xiokj(=y8 [e?8jZKB+t 6C %1nBFː!X %лgQ1ctc,aSi==za~"Mc۪25MZPϘp3DoڮLiV6K3<ؠu¢ЛT$,X.U5jC*aOmi(zzr=E OdžO:O/OW A2?pE@EkV('#^U7]h]amߤߴ80 .4"S~LUF}%aGd)EM֓"zeGWCg脞I:h Z NFhWP©K`@(*WxL1:Ue $֭jq>IӮW4uv)>"8Au`p#|E" xి7 +%me3"抆75f춹|f{~-;UH{P:UiE^,%Bjbn [3sGxj]u)=aWj%`l1:25>2[(-JT|;le~wX7ǏɓЍ(09PpYܶfzͫfSQ"|@EB%,6W3ay*&lPJByQ`}bqyWSDs!FF:[.Ĭh 9Zh L0S|+A@K嬥a}0Q9;'S2܆|ϟ~Ws=ms}trn@v²5iz9$g?ff6%֧ Qvf;P{2 \u?䑫ҟ#DQ3 TN!0CrodI:v=h;]?U֌Wqgܜ'p;nVKfm&%cy8SUw~"{Tt@E?FԄEs3 h%$i񪽋x40NhDJ[ɖ5ݺ(V*w]`X Ybgax# sψZ~q;`ZNyh3c h D05F#s_/4بݠIX>s S;-Ż+V: w+Vǜe>,`?\Crx.(XmȌ7mG۟W۾*TQJ2* T׽az-gXkiM)>xkm*̞`n%]PC/P&UZ1@Xu+ qYP\MJ}W:Z!!%g}nkhŘNw[c4RVYcP`-9CZ@4x;Y~bZR8'^Lȫ EYAxe5=Zdkg$O~¹zFo_4#\=7HBnGBRlCC8zH7:6(w6Yэ5Scۯ;rDXI](u9hZu)z] pH.2o/c֑1E EO`-(P`cmMᶫzwˆͺI+D?2nŮ 1SZ0*G#ߍ=Z;}S`g#Ɯ7b F83;MDj9~m>fɵY_5ˢ8QW v)"n4Hi9Cpf$P}h۝A%zP6_,2O݌?b Ζn"BCTF2U^ҶjH]h#>v:єP #JJrrK;\+.&?`N4Cf8tPrx m41ՙ()ʞ*̔}Jql3ŦV[ֶk ¤qatMn7B!A&bB`Jx3$It1Gq"Zs5@*^EɐxO{`Z0fAN/oƽ?D ʬjrxW2~LWȌʥ<ؼbFUN"yRg>;ԶaZ'lvDA%mUܪL~lt&$ ma,dԲ|ة[RH"L)} /3/^"{14ү⅊\KD|0AqPA|"sz<0vS7 ͉N̽%zh@PMKI_cNɎHa/(HTwXg!u!qV2GKD2B/-\ٔma+EHF]nRxu }ZʻuW5nJCD~wc]*NT8OG⸾M*<qݢs%+F~NjLwW0~1FdBO{3:S(N nZ!R΃,^.g]ɞI_ ~pI.yA&G QUقrYe; 1藼SjMNnQc%Cu=f2mcF)=C klcE1u$U_zgiK|!Ԋ9'm>9ւBlmd&=ch;An mn枥o:HGÍm%yd/ˀmtWޣa@V\8WYjщԜFN?W.*{?gNOW^Ha?I He_"Nn`ZR@cSf E!viRSB.޾ 0Eޖucmdt1>TUl&O4K~ĚUxHeF^^=?۝[^ށ>5UE Yݴix}\Gk,J9^}R>X69'|rGO7:^+)iz[uUuz@[`oq~ҎLߦ|$:2jK2F١a)nZ> we˙ <>3[i:G^+Lt'3jqq&N]9u| 11ޜ#GJyJH9@sw:`t ?j4$:"a/@xeN;8!|WAr)yXH\+k`u A*>&_{ѩ4uOWl_1q%xIs^d@`Ņ|:Ұ@IK5л"m̮Щ&dgϼ*cڟdy@xgN w$͂^׬um4 8)>##}@hEȰ Gh@ck 1l)x!~)%v WU+C<srV$hd6r:!BXhLn=L^1kDJEELcu3'%ws" %X\͎ڬw.&[~p`l pXe_R-- Oz)qy` !O-F]+ iQdgdՂ(UifVr4N >y.}nF9S*\B(ulkY?-4LԥZYs}kYu BtbWfA_^d4۠g(մ݊t+ p] Ѝ'C<'|lj`hEXr4ރs9ϭ͎$) ɉF5m!a? L)_&c yk BbtrĖ"@ M.Ӱu}rD:L'|Ga*=]U4lCZ۾"Mpymz|:l DeXMsG .6M1K#IԅNkaΚCzcJd!:7ZWn\6]2K52VJ\}ฟ=s(K ϻjޘO7&C[_{:Q27`l1"i حuUpпhjN<.9|_כ58F<-%2G~$(-^`?^'sl5ʗW8L!Kjx3Pؒ@^Mj\qaWeZ縴]E<#bJ]I]5>9 } OpډgC!ÐA.֏ 'v;-[`B2b+bS;ɼ}بd9weSG%ξl/P'/J8ZZ3~)Vl"1#o|dn~, COrI.[I3F69o9n(j[S9xc[,Pi\)خ\βA a s;I"&J՟CNGK.Άr=/?R:.ʝIiz1y5yEI؇=.4GXwra?c|8-X a^YVb0q@aG( ܳ 8R론0 z. <2X&=6J6hG 1׼JyƑ L)0|iB:׸izN??Hֆ}͒'7^INI ! nFj#2=%䓩zCpcGrXKy/ gRA?h8ZXy!lJָ)VLQ \!DYNJ]GjD.?HLuN\M;J*GvzfjK1_xzJͼ2$nB/<^w_n}GSݗF_(QZa`Af;9N8`iג.+ <9n(b =fW]yP5dPI"P#1(SOMJDKmnATe(yAϱy0zX&h/V7=4B%zՅ|\%!y~~8G]lC/CTXoQ2Rӳ2Q:xfa^_7e:o Kvy&JX3&c`ĈGFro֏9} ĂrS~0+@ ]Yq@Y=1G艴 :,F4g=loOqo43ID.D9yԟuNB(K]7E8"ޱ[>66! +=eVNUVx;' G|ߕS?qS Dǧ692ěS-BѝBPTL@ QXr4 bwfڛgl&x+=s)mjjOҎ x+ɗ>t vYTj")bT=e_bv_yTSnŒ9v·fb/[Rz ~.Qo?zooNa_z%/V TQHZmg2DӸ'1Օ`Y&C+\CzU ns1#0.JY?>kR.E^j" Mrs,A׮vd\( 6l˅yCUɭB,@3 蜄)퍢,Q߁b* ؽUebK3& 8QA,y*g* )UBJW^K{tiߟ12]E7bBKlRO3HL+OОy}O ):q _OVs]4ڄ|7$a>%Gi}!RbGo4<0RV 2!;.f4gXc`h#@XlukM+ew ZZ鞊C59q/,SM+ZҗrOk%zAG󏌚[tйIǕx%1囅ȱp|G .ͿE XZq'iaN'a.Gf5g 5¦Z\~栈>%.pmh}v^M1C-2@ZF|>e9bź.sF.0\J E(mxPcJ)$1+Ob`sMR2/zoI?@2VʩuKq ˧ $߼߬FDKxLc&Pbr;],^@Z;b_H3+":ήd}΁ tA͎㝇Oj3UKeۛN)J>4T,B; 1n 4-$WjxK(9?5_I,H:9Y;- <+A:g9 :qX&dz!!Gh>WЧ:Iص}"*KWş (6=~{z@Ѯ/k}N0[)\NFw34wħ_K܀Z-罺ؖcKh0[$;*;S*Vd<zf|:,0ݕ%d _dZh$-͙S٣9ՠkv"᭒O=y1zJĪoXIݮ-,hw}ևy  qeMsm:> `kv`0Ϩ73X$f?:]h[d.ɘ21j0}#5נIT%djnyUTFcEj#<;ϕʁZ#`WUؓhd/ z6F۝=2FcMo%Rb kzbj_5M Zw݋sl Lڞt"fXjťc/uk8MT/3>/n|eUEG@ؙl2 _wBS f#Mg*1M oNtZλ2|UY*ƹ%~4cXmrۉ-zһf{MHζy` ,tR? hLE#%j20?c$0akylIYå҅rɠ2.߱[+J7XPu$F;SE_Q7]8&v9X$ȫ> tnCgsBpny_-j(FG-lp# 8A;EC-iXb%jδ[r/mE~%2ɓr @7 b-]],cI" Z}M$i0G0IMguɃDhga \C!Lp#3di7k dm++ᮁ&Ңn~1HJ*"mOU#&z;~uY-o`>V};uXYH1'(]D;{Kp@fV\-CdzW4i!Jĕ$7v8Gʃn7et>UWn$Y(q F`!$P7sxܿ{k*ȔDP)-<.}y1[ :=ݷ iP*H7?2G!EFq3.c1 |BZՒ\VN{Lo)}Y]tpDݙױj&cy|Zd^(b{^* haiسJ_P7S2֙Qm{ R~o>V4v1h9.y_Mw&r 4@TBYRȔBhƛVjz. dRT- 8'=)QK r˟"ز"Yx~U^TJ0BL'R_sXc+ҡh[Yd3.8O/ۡo A֮0z* Ik=':oyd߀[+alW\&/hcVYι f(F-GNd?A{%db3qpШ4`Fq V0 u^]5HLM,@Pa432)VÆo)-LEα=`bgxo[T=0] -<Yo 0`.Kl\^x~v?VeH'7|s!Vo,;~)01y'ghjlJ>zf;pTwuQ-C}_S@H [J˰F'E< sf=wK.#*bo$ZrBRՁDqvnEhN^;gj+rO 6vzMέr iPgEroi$熓;#=ϜGY>NBbOTIcMLݤ)w&IRF\aIeB R)$>sm€0@<}çfD_${6M3GޤĐr(q}?݃ad= Sn ˦2HJ޹5\^v} PJFm[XUF$cV3?S7N7|DTV:Î0Fh"X%`Krfp;.%Scm2օy"g".9v>H \੍j7LŞ%n_UW# ]GS5 ȧftxg_3A Ipɚ_I $e0^Sy'qjS9,"LQz&H ĐƛePf)NlC& 2YG=AM`%/+9/^rMĩiʅ: y /xf>/PRiCQ wmvU$~(RK3Wjc8'e:Cf8)/tTh4%/_4)!{cʊeK'O= kuhprsI'㼱S2Mu=Dim_N"WnGȽԬ^LP8@n:s.m$d3R*&nՉރ&A#F~:vF}|Y]*Z=־ɳ^C׊Qm-̽I_Oe/EImD9[ +r9!w3\z @F N*ogQnyȋURSZC_$)M;l@l<ʽۚEߜ̬jyʉ oD,L\9] >б&)r-XyzfƧTz9ߎqzkDSR)0#L۬1)@Q<|0ߢRG*C")r%i .!\unVo 5Dch+#^Yz/G= 3^j2Y#>9f8e+!vN,89n,yVsY <^~ʜ D袻B݈QMK'?c,;`ȟ uยċ*eK K!_K08MmUڭlr RɣFYe (ϔjvd8JB2v ]0],"-Ò;8lrLM98ǶMkr oz/ .\ucWԞVn^]ȥtP|]uO>>ӖNu 7xƉSI1}_H Ql` abm"-~2kavR$=̤Zr jRk5Yݡ֚gL;l /$ظ٬el"vT=|ZFe(6wjxOCO0!"\״Ld'Ź#SmǬ̹PL*K>,g QAH<gx-X5IH/2Uz  ` b^]YPrP-YHʕᔿαl$iy?G\;4}M89왕RsLK6zms=0@O]|iĊ2;fh0z:݄E*ѽ2O^@L aǯS{@,O"N<]OVv/fބ6uAȬskBkc?cKAޏ BN:8c+|an&crDÔ+h ʸ3ߌ0E `էFh+zlIIu;;f tTLPGy7,j4>$hOf77sgGӸpQ35#ϒKBw[ce\j`v'2R>62ee4"p/m%Vz2,?Z\Iǻ9of)k`8yH1YL9g8\fGVn(*֑MX}QړwKE#R Q,Vwt03@*:v8(@u-ސ7Cw?n'3r}:#NR_$]*WFiWm6M* 2UEӚhw b?oPlln [N = B %}BS\w`T_C:FbB2϶N WGKD-)^KR:B)2XZK A^vHdX9cek_wUw?|՞U)`o?QmHB ۚ )1Y,liPPaL p!evML߈҇ohDGaʬժec{gp!K>{I) GYL3O0Q!&jv6+|xKCI~XJޕmn Cmɠ9ʥ񚓗I(/pDsѰ:gI+c=t7ƮlEP U Ȇtm;3}h/&BK5s@>ݫnڊe>Q9,VHo962DN65Hri9u3q8ƻxheKw#{~cCDEZ]HMsuV/%<;^Ïr3٧T柔ytdԛ 9Pp!< C4y(W/Ld3VgiVRΩ;17v:L:׾.=4"dP,1(oƒmkHWFF*BTͭCH)yzџ)lE6;*sOtaq.F-=1 /.3V+>\Đ@%`s}S ^-W*ZCj4ߖC$)Uj qȥPa_VP_EH"vX86/ {eGr\[dZnfa~@a!Y6ːbɿ!(ƽ k޾l!5Czq@k/@$ pF:ivy8=+xn!Ѝg+kLw>$|D@8_%r$"6/`AFO #\Kjnh`/8ZF[ો{S qpRn4OXV{| D-2srvN` +/0@,5 % :@ ͼ*GH\5nVfbuq6[{@ !e 3ZSai+ ):~Y$̵)p#(aѹL`YکJ:8 ʐ29Gh)ۼ LYwƯsza_`eWߒ9f{kW IPq;6A>{X}^J:P6 qG yyO6}γ߲x+K bTÿ?ײtfa3(gsTS~%xKPHw vq0O3Y 0V%a0 ӷN> :$USY>3sGqV[A`\~)H43.…k"#ID@@Gph= ?L愞! > ;J }Fo};\XX +!}hk;tc,S^O/q5aLT w CȇAF.#B9P-E5(+)˥$<lрq2u֢mDR^C?"Mw_d GdP}oz=Zݜ[YP>%p1 S 9& Fʉ 4/MnzyzِwuWs!K6HNEʪF кvpd7ښ;rU(!RRyoxD3GM' qd׀ΞE[3t UbW\^琻z[L9d1H쭅` ^ d ؕhEG!҇և$DY/ʜ;%D WNI%X~8 )?Og5 ߝ"M0NXSZ3NJ!ퟸ= YKx#pnJC/%=mK ʯC>bU8g4^*g{KeYq>q@z$Ah?5GM+Ct%>7Ӳ==xe *1ݢ4ްacD:d"-8Zek=͵9G[9H=4WԞe_UZ[sD 2ւ^askf0D[%TeUҞY#(ϒel!B%d{U#L'y+֏-Ndp#W[ͷHoy4!Ꭸ6 m&j7Kہ|n B-=TٖVl/2O-]I#[vaNR*^OnDdzLyǢ"TS h֧U%W"b' ԯQ]sw (K$89Xj jf:%ܛ*(>ѶM e):ɀ^N铗 RC({Q̊QTr?;%ٻϦ`uE}Oi?:@]޲2Eǹ4bh) *CJk%mߎ;v]XTIïc$p΂ 2"[p-Y7_=>fHة?۟U)-O˖d+DI`"&nd$Q,&m3VZJ撛6_ -ca}dQ/ {${TUDBe"D86$,Ӆ$s.~B:;\|mb|+]=F1WK]vRq,IzQB쀍ѲÙ ;WP rɀx\r_pH3#Ii$n䬐eaIf@L1?b{dziqR.9zL[uDI^k0^89 ;,dƇ'HWzXV9 L־XV*N*PX0\?[70S} >P#pK>Y U boX=D7ع`6=`6@hQ꣠PF+p5!y`l+DH뽻\怪6)ּ8f!g7M_`T-/C3cG8h% D׏VV 'Ez*h'[`+ W q(-|37@)]7ٚ_06Ѹ0W/cG #ׇTWpޚ lmF6ױeTSG}**Qyt L+T2OYaa{@鯦aB@ЂŊo^Xv Ԏý*52:crD0~+k#K D3Gz{lw/9,Dzs`0yM=ToBPW1^w~d^Bly4ܣܣj{\>DObC"QӒ5;eY&ӓCG@;Պn=_cc6D%0sj?HGjj'¿tVVsvQen9N|Ӑa^;4Il9<ƒgydiV+r2HW@5s'.>͗Έ AlɽvtY.-)ϳsO%p.^.Pތ&`%wr} >ĘYnHQݽ׏i<':.r(a~S57*a7![TJɺm!]V"8a>9L颞3 tIzkNSߪ3|.V,&B)r 8ߟBom'yIbrE%ɚiOopˮb/m d:dZ^j @"b(%<< 0I9:=qˬE~}u5sl7aB'NhP?(+fa&}-zpSQ|fΈ:"F&GtoJ jMsv5`T‚1߁\r/., PJ{Ќ`c)uYy[Hod@>.:{quX !&-VĻ;NG));aXg6c/֐c9L])GN\CkDM[(*dp; Ni`槿NZ,Z~L/%?^:^IIΡ,Ʃ_dpTr&¡ \f {S\i&&jf"x:ލ+>wP;Vw3 ̶L~ q euGM|4/6l/4]ׯcsݨw"#ɗ@1);,}q|Pm\x9p =ᅵbOݨ&P]̀7x#NIY$#74|WSΦN]DlTVԨ'a:T ; >_%daoC|#ő\;sh6pܚAGꉐ G lB"&Xj) )dԂKLf^6^(1Pk 븞 rʍ~z5u*;@&Fr${qa;\̩Vv1h` B (סea) C~?ǜ 3ڨG2CzBcHac[jew,:6!k'20S◼ :Gz'.ȀԑN ;sUq`s|r]LwmXᯥ˪ޒ0)Wzr2!#Lשxg0y}R#Cx¼5NNYR |ptP' D_Ҧt/{U07zgmZxum4G`RЧ:*Dk 3M~1>87;=m_uOPc.= eD&}҆c[hn§/Ӹj_V0hru#yFikKmh,t#?9UCi*ΟOH$ЖA[>߅iTV oi"&D opf?zO΃ԙYGOIo-]T~)Ü2~K{ ó9)GJB#.064^+²>6`bBIS|kJ0sf,|ķ7amy3:{9`aS?2,>,-sw+"щIo|]k╩` Gc2lM]уһ`E2;iVxxuF8$VBxƩ$^|-K/ ~7CX%~/ *%QU'5.,sV .`K$0N3N$ UDKZҭϙ=ߕMs>RA(dFBaSv1R EiԔ3 ɮwY 1 u?YgJמ$*T%pTO.I.޿\&ŷ9LԶkR_UQn>ʶ\E4Q~ ş$ZY/oyAr3 7S,1`B9Tax"ubYf2P:Ȁ DDWYҐox?D֖0uFuVh2kØ!uA1Z[+R_KO'[_i4=9)ԻI֗I#YYs@=%䙉 sI]3& d4`T|{֑V8aG99KyC) ;fUPpdGU]) 2Ġ!U3P$jt^FǶdOeEuWemltBА-P z֡wq+ sQ6Pc} kӯ<),"J|XfGLh5N}w[± 6~]PǂwCSZ!']ɡ.(!OȰjqPdS:0 A E|d8+(9?¶/m!1_$]"w%5¨Eܣԙʺ xREŒl.TݼVD>χf@cl# IH!ZM~4+wpYu+p]?sQ3F%-)YvP[_g^gSy@a2z/ߴQ`*t8 eRTltVyӃ>KԾz10j?{ń]pM7hŃ*uϛ仇C\^`(jwZ @Pg85ӔĈ{T}'M8KyуNTEB66]EU%aK|w0Q$4#Hͅ;ͪ US'Fe 9)j刣 69НY/m @328v5Ӳ&j}46%Z^Du b#FҰ ;pVHa(PNF}´k`D“^t@<|7y5Yg\hGx nZs+[̓6;SF}8V^h&vOHHp#]<6Ƴ{fZABˏtfznG- M06P&и [mRR]SEP6 .U߷^pP =Nx~×~4kG$-0|vvzEơXIݰe#[?  kp,s8G[e)Y>uWeKoL G^Ōz#u!GPkOnlC)?+~?wgT_ ";d{5$+jFʍӌ#CONlZ+FR^ܨЈ.:89e[&ֽxxe x  2;1#x?|^stzI$?`9M _MžG Ecp8ݥ;^ !F=\IkՎ=[|屳_,z WfuqxWq7(}9MB5:}ޱYt6\bk<^f_smj;d,Yi`M|#alp?*MykY̫ɧ^g$2e9\_-W>aڥW- EGk>M]PQ>u%VIh Q>=fKHl$QxdJf9R_ιr1be]MJ،tHigNom#8ɤS "3}y>r6Ra>xrY$nHIK}88ՙGkTNQqu:mUV@}V'}i袯ypQrgƲ_jPdf)`2a|۸dRYn7Z0>M"h+H*ϢM cpGQJb! 0|ht"?]k1b&{Vb044Qw/_Dvq'ph"~*%-|!_J]-g"wC¬;bi 1/sh qde4`Sb/@ \S6o?OM#U2vo%|8!M2wX4 6E&s)0<EvT#s8p/_ð.ZV ~P< fovӓi1 + p'X`7Ec[J{{;35p2H_}`^]&CBƱ`"t|KИ79 !} H^;a *c]YXH~\}SyI6H~"妥; 0yvЖ6s5^A]I^Tָ|40"{.Z4Stp;5I-CS:dq=ti|!w|tk^Ț=' ӥ^f i%|A%cpDi .'3vfUw(sh͸=BEu;hQ}ZWāPb N|넵qoҢtծRm˵>ת[򫝻` %NY25ijmf(  q_w {~cMH+8G5Ͽ92&՚鏩,%)j92O}S%ّL#0Փ7.5vN{\p0lH)h[u9Z+ RY\@L,(6deS_z9K8iCN𭋈Ji*%*CDec$ EX^hǻ5sAﵹ刹L8™< Ks$%* HG(UФ mɛ-r9x=SD5rW O&SKx4(˄[&%1>$Wj(qtkVffmaj ]DȾ$yM~cdMtJăB &9>ֳc|'f߈ Ih'[ІʯX3{Ӗ{Wϣ#㸸 nܤM})=Aڴ#0t]h=-R#j30LgtŞVx:R_$w/-B8C?ÅDw:X1LVP%ʇ.h¡05K?[aѡV)'Hfw.aF7! oy\y>*!jqs=$3C'TXd0Yk?cݍIf Ÿ̮_1=lOXVR yw_(&?03_Hֶvt3W砘RR3Uo台Ql_|@uܤͭj}R!1:1_#'6w2@#83)$Ŀ ӎLŎ˷Y)&&0C7g,׸q=~7-<:? Aaٍ ݾ~+>'o®PSw.a9_z夐(ZXY{CuՈJ _ Xd\|!ԄO/kM-ɶ ~ T٠&@g)[,iPω1雴&ֳBAcT3gE<`NIGɁT }h#W6kr>;Q=QhdIL0rX4KE&"1YO@, _osc{j5/WĀWl 3]Laz@N#{17kzED]!oon`Y t[Iu'ɣ/>ı"7A}D8coM/3?j'˰r&s8^ v|'HG4-Ņ!\6t`-/u4-_~} 8z'3UETFtoߡkbjr]0\;%YG8>߇V{z=!ͥ380#~'Y85v;7yg2= .fp,nUp_m| §5^a ֢wmB1"Z$c(?ĸW#!BCz0;<6*oi_PIBh-N}$KZ&pxL%24an79UNJ2y&rGc*'k t2O܏稓 g酎sN.>CHfaK^MjT$h/#F[6xZvhLG{ӥУI"kՁL\cMc\'._q'{zL0du!4-O1_Kގsn<9%XDJ#*hDV[}pnA{?Y@e-{?Wk4b֖wWlQ¥"cCz=ȩ돚iwX Ƃh8>΋y*Yl1Gs-E|9&&P\W5cQⴒl6ZV\zW^~N3<:]*(?RdZ`F/S|f'sz@6 !-p:_4aۇ [|Uiħ"QpC*o&nYbue "1fWV"x YD}tbŻUrf 6^ ؽ#5HX4 Q 2Q-{1{YhIי( qv†?̑Q]y|c/z.G2 ̇?{2Y4R pkr+ <`U뫄o٬sS0 wТͅA*k4$(CߒOgy^UIrڙ-B) (MV9|a:V44iZ/U^ Q4Pn6'_i{tƚ}-77JtzYxZ`w>x*1-{+N$G*|}*DT%_пn+\Uݤȫ?9 C8'q KH~'T'/Z= eQwX*% @huQf{XǑk-X&+G[2*=/GvHޟ&gw[q)scڅ E3K|J@`#eBAiCs e6{b1?wHJcO;yO]̦$SD֍BcHr"HсDZLf"XԽS ѝCe$zH:׎8$ NE1Z/ޏˇ.Ilh;\dj*VdE-8$fI1(wv8rOavGeb0BڜGp""[S qkʣ{̑rp&u=2Px7&$vb,.#8PI姕|F'Yj5Q9Ix_1e5hJoGK΁7J5Pg&|7bGs*([E NU҂DU?HXYYLECeV:{#2$ ћ`8[S4\9I+ DR׺bCRn ]:[rB%Gj'@ _nQ \œT|ŤCm%hĩ mC?ؓC1\Q;[[C}rofg\yFhTCɅ)sW8 W6;.RV[D#J nUcU5}Jz73}Jt֯gMkjT 2)ԚhYrFt`Rvsup]sc_70 `o;z-H]X![Iל绩^2E)Iۿ_.6}Uݼ<:ϻFZ  }dfj 0䮬{&[iCi oVJs7Jga.Q~i,:v?D2CM/*\ n.adn]Ǔ{)&,ӢVUԨxc:̻"   \8VMDgo;@x5D'¥o-ڜ ȁ8q'b.4WwSVXXD2l7Mr,j-ՇSBX2uEؗ0jb Sqn H(/Uek}|۔j/ex+[ )>xюU|~N 8,(%Oy  eo Ej&Dά Xq L__EɌN+ `H|y/s% D3eAF^ӹg,LԢz#ܯ}𿕅wjѢg9_l Lls"JIǀ <ǭl_D@'SJtƜyŚ3_be3iLңIR%gAa%EB.۵"DlvAviL܎GD <ƞcڅP30*(P|{xgN/ 5r;IMSi4r[s*əl@ {l#]\KG{My?U0mZ ta4L%UQ3|PK3DR.|Op{7N`[UWº7Y%_^Q ;Z_ES;f֭I*dI̚4_܊Rh~y>y;C׃HC#-( {] c |Z-K`,F8óRbd}\ jn,Dg-' ˮ@fν}П:Bh#Ej"sGBR fA0"{m= 0|a_UuS_OG>O+ wmr2~RAw;(7R{V"KW|Mn@g,ݣ<&06-PnCovP.TʺȈԘjPk 672V~FrxNB5z7C[I[5M!^V+8$K>vOt=Ή0p;"ΈSA%cM:;59N$b$$c>qWQd%ۦ9.A|fXQi*ROQᲱGoYLQ?︲μ(FP91Y|Q{svx6],eT>) ۣtCU1?i?:P x0! z"#ӛ^Ea!V*pV{"8c6BRL lSPFׅ`*>e4=%7iac-X`X ۯwU# Ln00{IgН`.kL:I@^K5]}3ĴO՜JR*$mQﱺ٬*+`Gv(BjT/s5\t"a|e5C>'m ,Xn<;x`H-y¸Mm\d0B%t̏ޅ4!XNcь>xtˀ<09ûC2{Ҙ붅ATBzvX 99j0l3yFỵV%n9B~HITAGPR}Lw{!7Ϥ,Ffj:̱MRpk3@̝(BcMP``APEQAtf]kJlw@IVVfs:p^X]dOUO""RϱY!A+\oɄfx Sa*D'Bc3[F< Q7xP5cU~*U;_gzf"X>9:szݑ,C?[m9џfaG=5!ei_#g.+`:+ç^!QpOf=b퉂Ya,@)Fw _MMߏes웲,OF\D4D`,Bqҋ/K(t_fZJ.Sq?gs}11Q}o  "{qS|,N MW9޶PpGVd*,ԻKG.-23uS4(芿 JzEcJ|Ɂ]W~ ]bsH³ϋiL8l-0Un*7Q]q,/𿻚[e!% 얞p-^w&Q{sg X]j `(- JH܇ e! /\,׈~HHe&)ߢMvC ACHNd'tc7K8v北&RJsZ܉)s!r9ĥ4,oymO4U)ŧOpQb Ѣ-Vo2p-;< )C^5jwS-|Ib{+P% }оv3 gtνRH#xx! gcP&MF+  wARFhuV6ğ˾$,=/4p!cΫ2y7AqԎo.̤%qg;gQ[Ҡ묂jJ]ƳY3<=TqTCgiI^wa9"ܥkK&6 de!Tl:VJ+E3`18 KcʼH4BF#dȞ̘d*OrR LdaX `&<6B©2eyqS̆2#f Cw*黵ڿqڔu]kgyGJY>>4<ɩNcS u%%NKiJz]>UrG sxGJ,wM9W Tc 'QKF]M'`rӟF>Sʑ5 8s;j& =bBlodq09/3KIp 7Ugx3\h |a#/1|B3"$ IkM&ě)Z]!,9|M^=V,ps,8r O[mfU,D g/Bjg-jF{8`Ƹ PL4'jr^|h[7 yaJTFlI“V0WwH v(|[a5u6naǥR'zS}&q M: 4IxOgHf0FM *-h.L|bh|U d1i65Xì˓,~eن&`{h<&Y*$D'\LI)2?Y(w#sN,&8ܓHЍ*{e-`MpS*;09H$lZ@/n1)f#13e o EN33T&O>w2OWWE {Z[ lX9e}͉rZ@oJ/;ʟj,Mm!mm*uJB0bϧEsiPPP>?7N6(G<\V1K%<'eR%!nE31w֊;ottߧoc^ @"C; T5>UP@J_sy :0If  ie[(S\I",Z#FQL.kC '8ot#ґ؂XB#EDOkf?0#] I ;I:^O a=K1矞8 B ]\s{J.IoNLt!ԍ,p2h(z7ox#L:O8ju:ԭӔtwdhB~ We?OFԺ[ y^읬J5Yja]#FxT$Z6=r6s~lk@eA"];-EIEIx79Eb.v%&GPqd ;קv,-v˜ߑ✓Pр6*'n'1u9I>;`0GnY38;MC k1Xm^D*ovy*g]j9dGz;ǁߙ{XT_/Tc8 V6/kY=m^D4aXpV)ȴkwѴt9IS}m%MaD mO/ cɄk;n0N{~#ngW(CY<~Oz}6;' oP1I**<2Fj[Jw0 9:DfVS<]js`fZ׈mYEe <,cHc9|KzE>\]QJ;q`ſxP>8kf5y2bKlm*p;z?wG,oђG@GNN3x<MB瀖{`]eS=|T菃Vx>Q-D"zK%=f+HkSUl @[e1"+LɠBb>y2ULMW(վ# _%"?̍/iL8*K6 ^\LT#B]62fX5P#|t|OgD>0yfQ~gS((! 3^CZOτN 2`$|N]|0xDœ /NWw Wr(o(Xjdyoz,HQZ’´7Juq%RgT-7H_~YR] {|'n"XA6ަ#* #@g:-zZ 2"}os?p.3߇A4g󫞅T4Ć<;s*eR$ e!#@3؄rJsC8/ h$tJ5tqTY&c>Q刦ATێ8lY.?,XIF  >߱ĥ=k )vpzk3ɐQO;rɗf4W.'Q%hےP{ږӆxP22_sehK'~,.gw3Zx-Y'4/>Ļie<\4gX6&-鐜AbȯD[@bĪro̓&ˤKxF} [`^KrKWxC2,237$l\F JMNE/h,sD1ɡ3BU_=5<(!\P8S0L<2EWU}{XR 1NZLUdXą{U3\L}\vUpS%dj(zÅ4ՐfngQej䬛UnoEYMإ -!K򘀎GKlaA7Y>5\Y֔=/ⴭ5Xʱ"骣/t/Ma;C,V^e;t3 )=9 |T>dG~M 5 J *d(@T$Y깶K ^s'w?kIrw)lEq2Z WϙB(؄Ř#8 0Evl<+G"HEfpMhgXJnrk!MPL%A;M087\Cla⍜[}g$Omd3Eq)b;>A$Noj{ }dxKZ!;PH/~D-&t3mOfnM(x!/'v_ρl\%],&Az8#G}ޖ\߃|]ߤuڽw\z0Y[9[m:@ǥ_' NX\9F +ƔʴF:dDŽz ebwmC*@pzm:i{ض+i=I^uĦPj DtbP azkf] J)uVV A&w IGEO-Yn$Jcb(#H mB .* *Y\O$ Z.d;F_Iyʉ ٓTj]k~^&uXCFؙ ` gĬ#Q,q#ֈ-ǵs}Bl0rh=bwkCāX g| &ʜ]֮7&>4nhYxުlz4=409 , ْ  yo/n^5  #Є!rԯi0ShAS׬4ʄqr ğfBk\#mm?p0p?'[8[ґW_#Q:i,Tm!0i=M$uAe+G=wT46x6V"y +_6*Lj{_Sݐ`4_up +=%] :C!A6D \tՔWP^'"3D:SX ea9~ٵyI8tdĮ}}}Y/~6I( B%S 2obo)x|; gI#XŖ̈{8Jsc?RF21}כ羒n`>;p"p$N;WuY]Ft$2+ZFYw:C{AFn#/i}"-$kDXȶ1gZV6ȃM #rF~b z}kRzߧ&qj5׸WoY`4&nΗG:NqN\ M-n?^05< &Mƭ DzU_NT>yxvff72t;lpъ p"{vGH5G.qކ+xmMH7|5{)b[ޑܹU> C\w:4.]L^*\_>ྎ,.(V| 9Ո0wg>>serEE 5Fd4ߣ~TA~[<41 f h^yQ! OWV_3MHdOhfn"¶GRO]d4U*tkk[S%%Hyfs7.4xy YK&EVbK h59r8K!Soi-&5Z6|tb8{hhO X;1O3ŏ nC>E"*V#牬e$.A -o$FîwzD;Nc(\K|<>^oARb"qPAԹY)V B/>`cB&r:])-S'CNH ȉ.>0GpX4ɦsȅB , r|9].1etsVNF0}%06**͎XbA~jgn8,R-Fs:_Ay }y=oNB]bmuSmt,3TUBg̶iq궅KvY=-5HBx-R'}m1y+az2 B|4#3QjrˠŞ3װzk'78dMsT_׼Űn8D͒&pW8AOŃRZJ/:9Rd ?i 0:W^>?]09b=ܻ{J!DaquiTI,Dejd yØ OrES F\*ԨyRY=&;ӭ&=c;SK|)Pb82& x͋.͵I|,\Wl]U2S|+_|8UB3,nw=ԿoٓQј6لQ_!Jm@ywV/{^]D(WX&87G&i6tS?Pa ϞDpC2qJ2fx;:^wiQ1BWGy%B\=!6^w29h]<}n\ԓHS9l\?/܉eM>|QX;]b GJ9!/lpY|zu4~Ҋ>ȒsG 4Z*y7Eoco;:`{ ~h;- ]t.ǐΙp'%'ઠ" W2j+*; Ce:4Џ"\`\%-E 䀻}0"Fza8 *TE u;9te_+'#WxV$[Z)%^P?6 H4v8ITI qV4Uܰ M8#akN,V Mz%RVu %?WsV5_~Wf zIYVjyTuEL 9 l%%<݊,fLlrz\49ޕ^uU(ƟbNjiu٪-4Ƨ LR3^PT׊drvĤZTa?r cn,*c*CQ xel~ ʄ]u̖2%Ye!yъ鹣i}w 'yN/? p8s:\ &/!HD=K^Ƽ,ΐN(혈4a0DΕ2K2GAFZuw3G3ִ^H qYPa4Z#:QzQ#4S+EI(oXUq=03E_;d~ϧ]o;b%ahsm'c$' oc3YF4`qR ,7xiǥJg&{?#q̇3n #$P T6n{Xf !Z;qpi׉>$8BMO捌oZ1l3dOSCg<}iKjiB8a߬C_96_T*)'X#@UVt~,= m"[ _4K&kE`ZK e$Л7\7 匐@+ɜ۫/gB:|( d.V,_ƅZ\!У([:e3 +Տ4i.xd٥neS;Mnܒ( \[RJ|"(m[ |l{ܘh|٣ھċA᠑;%4qEit8UQ@^Dgbp4pX3[E߉VE~';y9\+z83QĽIN8ʟ97,+~Ar8[ר9")1PH-D 6>Jબ :dl#JhnxWS6I#>,S iB)T_ ?>߳ԑPaΔoެo@8 'i1ũ cTgYxo sKS>GzhC̦1ϡ?aӆB`kUGoSb>C^1BT+K%<{|/1(@Ԗ9lF![̬fX^#{hJAx!+d$>-u8deGU$W-Un6XH1u|^,~+L-1VXR ;\.G DXqA}qg^]L>t2%ҔK nܽ>pz qt$W1$~C3x5B36 v~܌9>̚ &ʛTO#ie3ueHW~QȐHp$/ @drӇXBud>`>Ԅ(&ܯdIswe~_J1.wh Eaႅ4qk:R,屒ŒyX:\ 2@-OIw`/ ՠ űpyΰqd4L):+#Sq?fFGA7 ˲}̶60Mae<*:>iU% ) Za5{]-ф` &Qԛ-zfJkU`U#M2`47ȱ~{.%0G}P[վfP67O(פ@رMQ T0 ǩMz03_,Üˤ>|}XZN%&y?fh-V+{i= 2pν WS_uv!*\vG6i KØS)[5"1QUU1rr .˭;J|Gu ywT^эJ )I*pXk-uC5sBZY/*:(@{U(A>$ksYRb%QOؗN”n5Uhq>#։v9ݟ..Mj 7X^(d/S(\S-\I>%Yp3r ;\ zz5|pȫA\LEg\07R l7C.ro}5Zu, ⟷|zFQ*UJU6FܗdT?{pkFbHT7D.Y$Ih2{\4.? V ߶wŢxX'> Y܉ҝԚ@qPu?n,Vw;TCzXO۱x}p>~_5ZP9Pt$æ}M-R>|m^Kgu{ZhH.y4 ~>CWwluZu<_[A7dnk SJFѠETaKg5`*Ԟ1i @ywoV(4[Aq]db,' LQka*ZR#;mR!g۵7)AP!]wr*6FK"x *& ^h洵VilBiL)rA}.TG3/vfp:k_Oi{"oCcdBзiƿ`.=2(.ށ _`ѷ$*f{Bn'b{\c)(aEP %*h9Uo{<fܑ-_7VC{$= ʖ)|{QUl8l|sUwsM7a(_ ÝfqVOQ4\3ɐr1RU:&/xW tt}ZU_ApnIίAʘ v2*CPȀ@^t칥ؚA&"_Ҥh:Ե VbXQ/uTl&ԏuB!^iT ;#8=>Xu 8Ϻ:R kL 7z BF;eI־3?t| `Kr،Ӭ_k(aСmyWt) _ē*zػbGueKqB9_>δ6@ܣԫiмKKC kB?-B%VOс}*(¹*$[߃|l! tF"T£$TI+e%g|%+&:!'AgNVy#* })wۢ6{:SժTɊïqN$+-"x<[(w~`.ӏ\){uG^P?l!"Odʩ|R/`/-vE=e1B_t}Q'jtΫ 4I$ŨId;/Ԕy&5VyFWBMZ@bSD$%>Dž?gAFmŚpboPz) &ȌJ0 V2t~Bbb" 3bYfюփ#Y*JaPK~5kҐ}[("^j;\$QiwW`q x2(irIr/ -76\넘R;P0 pW}뎈O3|pLL5P(xcW]ި?|{Bcv3f?SmTE~y BV.2E>T^>6{k߆)Z{VWĹB,䫜3Aéhi(& OH]' _F3JԹc{%[5]E$Ǹ n./&l"B-  t_pPKz) hG?j9c @هxsyKiGd%_'YrTRW!|v3D>82!QdIľuK߫Al72ԍNB+-0/TyX"_%ǯdxH=T2D43?b>@>r%?KVoE1V6H5E}8oS@3` ",]9ʼnH0X<ϻrE,yBIY%f4)OjbqS:i{'TTt;XVݚ\<5yκ96Goj#Aj0$@zPpտzHRrOwMR֥Z DXվC|zlC@,O7S%ckEum?ۭboeSl#c:;}zsָd4H8u&c"T|.Xx) !3DyڇNx]!yA"_$`Djl@5v6)x:n0d,wp @AisU`]eA^K1|*[8ʼn!ܮfM&E':Wh\0IiGF#GvAɤ)kx,vTίBzS_UN樜E}X&yöj^{o]٩L. yrL^05Α/kx5^REwGuֹy`&*[ 0&cNrWbT^Ɨ'1rIAZbC+4 N#Iو"e}:92kv[@bMx"$_ BτMj?^[wpVYVn)lkrO@V4f|HtsXbxw(8e|4‘ԸcHنxClK' #?B_ er$1B,arʥˑ=wKK__R^B3HFQWӬIVP줻˿HHB-4ZzٌNwbtU yF; b cNPpFSojELY%X)mz|*B#ځw;x*/Rv|#؜'>srX-'Aa_G Y"dE Sr5WR{By[ %On"Y%g 5q(P:uYj}e^-o֬c<^ij{5[Oxa\7\Gt.qK`0 SejU~{<0tm3&\hҬ׉جV ӁuX{K&Yy;vp/̈ILa:G-)|z2){8w7"D(r^ꛣTs] c~ fri{~r DMxZĐNveTM.zg1(΅r9/R ]R2 O7rFBzO\fN/F{hfF'X~aIYs8Е]T^$8A<.sbDZ}l4{ ]:JD2zˊ4!ۘQl/x-Ϻ$ u71*7P`. ը 2(\=L- KGEGȤn}<{]> ?/k %X1PB=.; y-GǮj ,K?f i΃4[*o_& L倐xjyK:J _C_}'.́U[ _Fng82ݎ(:V7G{|R /A/;ϹWϴl&3OYI=_rWpv8d)Z}Z Lj+IV8,/{b}rSt?H/]gBPױZ[9&=do^i޽ kGeFgBVu;(-h=o I-OZe1Ӈ' fc<,6? &Q'DGgWy,&rdĉ9xe$<҇v TNH'O 2ʴ|mE4iGO(;8L 4F$>EGu6wTVESt֋oռ4{n1!k(ևgK)lWsH01r—c=q8)!Ʒ-K ib`$ʫ\&CJC:Vplf]X}3{)&_VYͱ>)ShdڙM^W-c*u?Ta]zAJ}Yo%.OCTSs!TcUJ6>v5uT˩#q[iG/oi#4JbAM. J+l7xl?,aמw U<f3mVA7/J3L I?F)}#Zp\)ae.^ c%hC@.dϨ#q_)(O0%O[f1V~y PLwk771PW(*/~LJ,0Qu^0a!*lJ,g`%KƆs%g󴟻bv g@U-Ueqtv&­|_:hţ'&0nt*rl+.SO+N?BS$"-|3#r V#TOAR`yٌA`ˀaHKOO-=`^Bm/{;F.1ٹ7}sR&[+ca |Y^֗Lcml@(A"0bƾ4|G! V^sg1]h@c᣻6nL;X`5\3l {^Dh.AaAn]FCdZ>qfzMTra6-&̂\bӵJVy4l.fJ6wǰvgNKLvH޲$w=iT=Nn7<}+>xZaOdH&; <_3cr/Mcp:LM %Mn;;i L.sB '41Z´6-8:@ki9;M&U؉9:vN\tek[C䕇 A_f;3v̜#՘E8mC}4%Jn_"{э)9y͡Z '. ]SXAa͏j1[',W"j_L!H\Xx.ȗTqb: b$m[mbdZVJ24CѨ@{46YFm9:0VWZTk~H@B]؇0s8xZ8FBdYFB hvI@aK61[!7Qͬo]ZrRtrl1Y϶n== Uy9]d*}Cjk/4L,jAY3tz^0I;XIm|R8 8FVT+OV~k8&mXjg.PܑIM)bUiaEWIԱ웤%+՟l-HtMako\ sak/1EVm(>t6g7ECT^+ NodSvU\cZfU]]uIRQ1(fo._^Һ5+b:)0Q` }GKb++=N`?A}i6S-*u+M(LD[L:ud)e]+^I{j`L"LKO};pR<^}ܟqCQngp܌lQn>üpk%W/X9/A5|qQL2zP6rr>l]z`:,Ӫ O62E-c<:~(ϥ`jr-7skGJ,YREo.j-9+'G7%^-*Aei:=Zѷ#ؘ=A -}T*K{ "~)N5%#):@̚b>6qr(,t%hhܭGM`0ќ*.ꔐWQ[8Z`'YS#v ϗ^ס+>I0 3lJeT]n:G/Spt1@,S=ya IJ簏[nQ,y`Re s/fzi0Xs6Cwnƒ^5-9kڳhUY9u(SVę׆i3 rOƎ]U+V ͧm[M"A#@<7"o5q5$Z֍*n{ ~+Y>8P&t{*bEVkj] d~)"u!_š#8c`Pe6%K^lgkg9(G"4*WN&kkc(A%9N ΀NIڄJv!&֐@"P<uY n.04T'bO[J͞bb7)J ]yhˀ5]~K2V.1e mJI spx׍D8 +"FetLD~RŌ|ukq"V2S}:r@ 3mB:Q@ªh⿙裊%6t` ]f6b%!8m4h]^KZJ:HIS )1V]0VȶskvτPn0>G5.il)M~"#4H< =qk%GyY>:JuMT<SUH44Wd3J@K$*,dHp֞׳YqZ. >/LmĝGNm5ZuTPAλ:a#X r  ]=j(Ir90l@doLTaA7řtC/P@ٳVtxmA|;\Ē5尓K6"1^O68\DcV |缫u]ŀhhƧRT zX.`×`0xW@X+B<>|q;2{C˼X`軥M+B&Ƶ-# *tV+};B} !)fP#<O7ѐSr=RC/Ocl#b%aK=~-9ڄƪtWiwwW XOt## ڑf>5CLl03ȳ-U 8tscJ{7/K d@ 2ؚ(kJZ{{+ ~ Ļ1(J2NkqO,$vhO* "ҴKIObQՍD`~l~l^ U2N⠁f'Jnh&nwKB.iU4&xk 0"~X–*il鐚pL'z2snKc`]e&A>tJᲂh'Gzl!ܨ7l0<-o`,$?֜#..j[ɯCd.lX9-yܺ#iyZIə:BHx+gTx=^P A-ݿ_\1 9(ӵC1e9k>ɲKBoG L:Av,+ ؁m8k5+S09(k}VdMʖw&fшŔ?-meY3e@~h+Rn,ԌF<~ * ֌kۊet)x E ?5uaym]Dwv}l֏z ʫ͇ƆG1ҁ iɘh86g@M(=N''aqӿMͧH庚2N@:EN资"| EMP _2LmE(tL uU5M9YFt78ϞsQڶq{u"/61uHuE2*Lh/ٝp#9@V *2PSP wq>o?>_t?abEy N~2- g:|AQyPrN;Ki._2HE/sk׷r8ω:\w kMKahf N%5Uv~Q{fhW- 9k|ڈKE2üTsK'u_͵>t%6vy|Si)(?yM}jQw91Šc[5k4EkayF'ci)e3(iq.0>X gۻponjJ|sD(Y:I5Cݥ`G79v )?Tr7Y wɦa8qb\.ل6Cv%?i*-h? ^R 9j(jwlZfDf_˂:q|c-$uB{57>з_01Y4%4̂St9v=]|nZ zkͪ,-܊^r62N)hiz (h7x'iO4595Al6 Q*O(Mw&â܁a iL0_9E("ޖZb14 iAZ*TD"č EiV#KeCLղ.)*X&&o|Suv 2sq;ՐAsCs{/2OTv55MVu`9w?%-YvnӖ[:«VھwsLn,:X _ 2<*iy5UTfP~Rseu?~{\ nh UgϜJTgBY"{~<tQڔ-Kvϼ*,V7x8@C4̳N9+Khrdt2Ia.s]A 5NEQM>q{6F+_-&%2KH-AÝ_<2(!/GM5 į eY>&;ΘpȔՍDguBhD.OlL՘Yb-|0ph>J\t}ںC曽f0RnҺ Gўeg|XqXy|'6N qIUUIbl7BO岼cTi R x?:El ˒ue!y}o[eT*/>j*v;K3- S_ /&T.`/Z)ӘsJsqRְkδHtwE~j]w݆J%TFwWRO lVEز]Q/*q,um媻(<pJo2AݱD72 sj H?4$o﫾x44#r_~WU1m[S ;pB)3ͣ|H4ܙ{ psLGk ڀr Fٸ-ƱAFфiT)3LK68  @Q]IT":g_1cnRyU,g%xލ՗,Y vʹEz˿"[j:!np/<~>wU,eP0ZF!\qmޚ~ [XXuO>ZXK"5;ީqUP^[Wѽ575$c$b,$x9,WCfM߂?}24o_vzt-XpwOZe(#L_$ik<  ?N@xݯ R)**M /i]Ov.T&T KRєnL҈tђEXB/e%v,"se";U3V:rj ?2Ool+3p캉3DS+gͥ!H~Y}|~Ymɶ Ҫ1q>tVw삎% H:*^PiQ MBmC$~f%of^C>V,`MzՌf:5P,n܌#{T!ߤ^J){'Fn[ s|] *'q>Ǯ` ;8 }-[-z`]*䑘qx0a7#9pkY#%%>-%AŢ`[m:1YTD VcK1e![Oc l귤mD,W~csϪ +,Q(|N~ܚ x37w_] cu^3{ 3AY^Ew/TrSiMI҅VLmH EYbeɍ~l~m߈?u G$ėdz3{RKXFkȘ2G~s2V h/(GfFFHZKyײ٢z/]JEَa< \C풳!D(%#y?Ҵb5k#ft4.+-p]42$W("CyvE|aVl*!W S7E}ۨ/Nm|B r9U9xqMvlx8 g~릖8F1bp Zքh$kak6J(k'h@t8w ȯEAOB:Z@{}H>]/Yqx u'q>NhՒ5Uǽ/6 2z ͰQ3`NSG? -8R!]W8#9)fj9DHlv xr0@* Ms|my' pCJ*2M~@suafzH9<6{Yx}t vL(AjkpqG0kJx">/*}qCVuc>Ɔ;Ϲ8^65JV#[N[jGkVTS:!6uJ:k(է_e G<@|?AaH[\X_|TL*YP65Ȓ'wu|8B^$Q<`#KGC[t+v*%8$:@&۞nq;A-)qx;$2x#hIBuup쬪t8I]`j$8*h B|X40ɳoݭa5@~7TϳXHNiIx%sWHW6(#9GLg[;aiGSUpxfԌF _q`8(=@MA&G7y!hdٿTK[X (";aԴ7Dm =)+Q> TG&(Q8eba %n?zI}/ H\`F;/RGӍKT) e=J@l6)U$ͥs/UN7)@c\^M pu>!X1E3:/9͔ǫu>*&"d7LS m>0ryRgvCf[oV"R_]nS~v=beaѳFdl!YbGijnTd$QCGTeݱ:+_ $p\%&@bmQ6o9瘧,eQtm..RY|c߹֙]~-^*_|[(3G'(LS6cd){bأ{c|~#ﻼ}?3=w^1[U?Ci `zAr-? RLa {Sru3`n՞B[lGR=Ϥ98c`?m>!nO .nQrd%ynM2$_k|ޛ@p9oK}*jQh48vA, =M۽O֊912uuLs*; fѫ z!5L>?.>EB߷t'-wBߟ5]G˷A7A_۱HA 7s#/l9S3pͰu?3,زvdsevMD8E۱( B#gi\F, Sl)l,VƔ7h&q'm5g(Bc#|]hUFr/'ą{*@*C t89'*x/w6Hv %L2igQ8` t 8`'Bmci*HU5e=/\oJxq#asT  ;rV`k#j9;RN "*h9Y M(VmP8$f!:ܵtDxX$ #t/曫aeǿR#JxfԬ`uq݇<wd UF4,uyU!#m_5 *9&ɭdJ Ww0)2MO\lr<0•rSO'{zwfp7f #:ʆɼըu~mbu=yb6<؈^'W7JF epZ@%hwJokX!X3HMqi}6 C[ h~(>=~J ™ ]6٠7V53e* {-n-2W|3 .^_uW)^_|{Y%.ٳtqe%(l}wm&[n޹Fq9j\+àLx; w>/t gpzj uztE )f&M&tڰ6bKU{ydB|yP 787=X6^!Xkң8"l#ҊK !xYQ']\tƓM9F"95k\ޤû@Z*sfq(`ںw6%O`8]bxl/<Hcm{*%yP+ټmSg^dD94vs[|5٪^c1sH+McpWĺzK}/|5ݗ(+.[4e H$63M%zvWg̷퍭ST>"lhB0W0"x73k$( \2kggf Ke34+Ii~e. z-c62o=<ԓO1R|2 @C8݆?qsImxdj&Vނ`غuuרyہ^xP*"5<ӥGnd4>.{kGTCRm̠A _:۰<M+D(^eV7+v0I?K G:M! g7C;7Zca%Y;Q._d?iycBPS5zhaF,x}P5H^7Cy9RjyRRuKH Nڣ(О5u7^[R C5WXKvui gՋ{0 TtAwA0LZ&(J#Vn:n'0 ?e1TA8]zvF5AtY*h,/TQTu3 %BMveD~=^ ]ıV5ߖ%mޠҋ/_vda%10Ou+10P ȐR`!tGg#ZOoL`J3Իo)yypQ|̹՝9{=JnU3 )Bc)8F'8MߺĞiͬ;0d\^ 1C/*TULD{Rg Fo6 ;䇤`8=s㓗 M\?ڼ1F#ǪO 앖3Q|}dN&p*`ڮ/0X=It)huy\/riF/3VM1"hZkaLw5t(eNEC>Pu=tvglu-G8_Օ0ꐋ] W8xy4_TBK{35V<`awjވ: bJCo\X!a kūaSMgcj ZY {s>,-Ef 7MZ^^[렰!49tˀ坴PLC`uWfLݢ/ձi뒞 MxW"G)i %E:qȃ:?LP2 +¢O0ZgIiC+x*w>LWAUj+L`.vIOeR&HBu:KHV }xet$]?& c]>V|q TH石#V,lRJq̄~yO@T+6}1FC6fC:.Oɸ͘$>NՔp!+A[Pװ:IP[r:<~Fj أԧ @NHQi3?e/ eA:sfKbH/̅WR(i7G  4k(#c\EEN\P #_Ԧ# !:7?ae% .ɝt䜔V$yacDlDe&Eul{/LoEo\vV&N>5>$.73z|3z"noE;r!(x'}yT\N AŒTB+3$CdF{fp@Kft9AQYmF{怡n9|w1z{j]f3)A^Ê-^|G2M(s7ʽkn>;y0śֲ{u2IAk50d!G_+x0hۅ2̓nV 4\Ix)K/hPйfPya'Gv<A3N_,_m z`]\*M@(Ve%-8,b3]wx@{ 9q rڀ {0V_'x ,0f!7$?JA.6OȎc,FE0z(i @* D<` }vX~o؁Fk"UH,,mINV)K_(tQM(2R’aTM_}őԌ86y1cHMo, Q&+Y׬s Yr2%\{O_خqF@WJDUfBݓFrvdp>Dj6;9"9zf@4;$ϩ5sW w&P3fa4;X)2zjEY1sK$^$K2|[o(VNn E" GiqeEt$Io|+q?d'$Y ʼni>KT eq337{DLt : N($?T[~]hHǶ8D h_H-)LS?떲G߫Y]1(pPoeҷQHh2=9:!w**\hʤ (jGf/\Fb _Jo0 ~c)y;E1<[u8xt1ug4};f x {d@S〸"0`V\j:PqS 8{{N3λ[.ZbBt QUc/ J-EKi7ࢾU_$63&?V`t4H3]j c0u*刾9 %U-7{PMY+{D -mI:u0aV`&G;M(ſ^X1¼+pV C#B8NOLK[TmOXk_shuh`@2RC2:}MmH#r}B+N"]/gu}(mbÅoGvyAVWT0EfUZwJ6}XTʓ#2edwg$ fQj dDlNǍQw >W>A8֬kI3y݈~}3{;R}=(Kh $8Ցq.˃Vu"g-B炿Coq, fnB!QTRv͋Iw&7NEH;3RnȘUr$pe>.w #IB<|z'w€)-b1*<]a(ϕe_1Hia:aiIw}T2>E b}# ubN\7R=Ea M~LE<( coU#.lo[.!?Wk$<Bz_6H`!,PRY;(OMbJ '=S9f33phE}hOʙX35Ϳ<ڇM9[N2:DL;@CH-+.@K$-PrDc#E#W|}0]n8%(uT OVtCN7<4#cUUWFMΜKB8k3 2;Tn%lLhpսRԙJTqǷ- (X xВt=`l Z٥8-Ji6Zf\oU>b1!sBv>SuoH?%nv髴^t ["yCN(ɞ f󛦎8lw}7ex70"y# 5PD>$:ڢ)4?a. 8kwSl}fFȷe}ܐ貨t#W*1[g46W wm[.sk' ~`a&+cI2i`-xs??^AfV*`61 VLoA kjU@=GDnD_,.Bmz"V*IV,yGYjhr :x@d~<(10)1n7L$yIxvU߽鉼TAF~\ 4w8٧EA&]U|\ ~B-I~>7r1)=}V 6FmaI v~`ri [?NQ1B[.0 wtck)_%5*7|;9;wpňP} 9v:;^s&;(ְC@05!IKʈ>IՒ|\x{/XNsI4w8^]0$,ʍM4c;q:D\w떊P$gXkr/jc(xpu3۔CO, c7X^Z(ag\> ۈvXl 1$>MiX5\ g5l ktzA[!&ؼuK}h@D?AeHeKmZ)r{iҸVKo<27~}vubT?}v hjcyj_8mS%$D#Je)G,$ih; PxX:ZסiA)@%7vr U/gjm%s $ӟQyڎG/oו ڇ< И՗4Vw6n C}w ߾VyAoK(AeQN*HzɺЦ0ƇS'NlT*\{kn :rZ "bYW -,/ Bn'B UCFqyٕt mﬗ6ʛTcϞ1mQxwkm(GMKpdXx OBAS<'Оn‹Ʃ6͞aϞE*cl>] QS*rgi?[>4#^ż$a8$\jʕF$$d Ka'^E8$;v=&>,22*&`3=9k!eIGhUg@& o *PZBRhgRv̧gj@*XN>. e%#Jd<;s Txu6TR0Y\ƨy_7GU/i L;ܭn &C&VMr6H8Fm9q-M+|Z~?\׌=w.G*&h]7r .2ޯvHShfPe>FrH$k$TM/t%x62ރA@>qԖܸ0k)Um(-fcv}2,ng7:ѭFO|Gi D) $TLow<8h$Bx&5Sހs2:v:Nk`߅98/@5s-4 -0;3A "֌1]Ai1Z)Iudro?k7 Eϑ @o/OMPDzvVb<"opJh l$q<.tDhG6%5,* Ў8YϣIt\ w]"`8!iZGY<ܨ^ j3鏞P"nEd>z2Je)UnZC=lu{_oJF 9a- q/;3dO JҲy7VDu=x-%b2 '}Etprx6fN|fbXq VzC(8PSݮNEE\+?fe䥌AɹzL:ӆӂ1S֒<=HDJBKmR_ 󓶓=$ .ebLA_m`5喷|Kb`Tgeg9rB~Ш.Ϫ@8C'^ uz/2`'7B J s9b#BHGZ(T$vlU2=z1 %qJakOEIC.;?:׹k93$w Jq_؅0GQ 5h#| ˖Aׂʮ!M /7TxӌYV5#"?1 "8%(!JC$:/+ 7D]xq1B /;"tuQ{ (;O`w7wDuxVЅWv(]D˛t=O8d9L:ͱh1rpX f1a}mQ`eql#q;SklPr/k&_P\"3GGx<58 /-N=ܛh/~MB%6xB5Qz"Rn(E~3g=V~iRX. xcX%c?8Ӫ޻Vw=,,=%͈ǮK5(]&"C D-41]ڦH ~X~ѻG^XqVf /՟!C%oT "s v(m礝O q;Z7W}DH7S TІ~b^O^7oKIT¢=L|cݹzUpG7̸a 9ywEh\#^ w%.-r=,D:hz֭3 3nTA~hɪ50:U'V_/OL=?IȋClXV68)WX;ILC'ȝeg<*O'# οW.K'acՑ_ґBca`@P̾ڱoqY(jg j*$n<|36[MZПrVG_dZhJ$Q*[c(^O`˫k g Ū" hDSuA;E14K]X58#':D 4z܋yn/eyeʥ!%"NiTb90zDE?C4FQ"XR Η}qRW ?/tgh[8Wx$]@UȺ2] 6CTc$<">.J .HMǛ,"^:U I [JD08>WAl{ rQ649E9w7"fHI}N"[C[K!󘼜GoVá׾2y&QfJ[M'tE{cqT ۰@w4WM`&z7✫^J̫kRmɳ``>6Z,U(ƛ&' Ggo{4/edzI{Uq_8bҾ˔!$k]͌5ٿޏk/v5q,y$U`,hf*\N@vc ,$&h-Γzu\m"BGg]g:F8ڻ aWE/' uc&/^dvjÉ^Ȋv?(;.ٜ"C$x}E!cdj~j\K.rem4Rj}tIK^J&ݵWMl@ %{)kr>:-_.*s6(f(?QLq@.{fsƦ0'kCDԣH^趥e<MX߃NFz PҺMD=쏈EJdDteɰQi/ BmI 5-УJ`lCp>_WF3QAw> vl? gqǘeˢyJvЊ:P&n4S Wtㆉ-ds݁_ pFT'Q ك>|r;g\doxȹ2/ƒ&//jBnG˧i>Ie/Hpj~ކ eR6☿j=ѯ6\NUb3:/)WPm]N7 /b.ɄrTºK2qL([OZ{1C"w-YZ*]_# 4CuvjLu yOuLk|fy%R)=n5;M,7ANX%(f <&\zkWfto`⏒wY3Q&/Yfznƶ,OvU$CYdaMITSL[sg/ jl曰|HQB0l3xo.Pbm*=E{0~,IhE&UaL17TIMy J%.)BT)a Cf— 35-2oԯI&2 2>E514F+FL2C@d*TsDߤfX:)UQ5?ۉ˭ŴzLݦf`\C4 "ުk"M=V!̫pX{'cQniC;%ExշބW8`1_(`g'xDex//KzׅpjPvGˤF8zc ]ϖtt/Z35/=a{-e₺dѝP}׵Z%p&iVЭY7֍܈%]Qĸ"wig Bue$2[*s|%|8[< qq<w, >,-C+{9} AwW8ԍ90 Ts1_6/ck&ՙ0̑`)d%Nxת'97ňV_##nz;+߯ZYʂNF:+=#mSl,V^:l2tn$b`5_0'㌄LׅuBaN,;W_7;trT扁8 VX&qO/\lYtwYOm:cF@0ʒaOh(mvFQSivݓ˴(dJe&7zVAV=@ի6)vx\,bQA"s _[qiX}D u_@4ai=ZQm){@ØLceJʞQwO' xĭ1(!ݙʉvp"m+)I >pS#>R˵r\^[iwho9e=Cՙ`V\TKݤ(7ףMj3Oq՞BPUf\TM4T7&J 5<iS^ʚ73?7%kuFr8D7I<51ܻyH98h1iGd``/[S>EN}N֧a)0F{Bz<1ےTP{! Z.uLpC{e g"?pXQ.xXcV;Ͱ$&FmLKAe97bi [q{aӥ{-fg+sgMܨ59xj.;] i 5~*x+`f|LoڞU83fN% \'US|$o'4` `v};ISiu}ڸ<3-żkL |7ϋd597b2! vk5Fא-1g(45ɛDF1g^ 5QN?8$^{,yBJ`a&V%턖ysJQެoÚpE=>Y_/dTZ4Jj(U%'?F~*oF) h$C 3< k. 4ZܲXBie =a=w}իjkVU_~#j,Šà -Ewutn 5r uPʟc`5ZHVpm`~1oUFVY4EjƟ)AFg%=ui65* .jzS/`&X`"qET4nuf uj 2m~F}f։F%]=roOgFs+!MPmגg}J<0pZ񕉛\*B{PGi%58(RH=d{nLiߛoq~Jy4f#Ê}Nv}{@ ﻩ4/N3>.HL^Ƕ)g&qGl`bJijfLk݈A{"PZQûvKצջE*ZZ|˹+57 Un$qwxfQ82lq/EDAC&NE$u1 YŗnT-]u湠}rb7*QewVᬒzK͏ʛ$(Hq}kҺ>ԻzWM5]}5[~%c 7ɔПv5PҮqP~ 3LFx٨V ݅CpEȩ8qaZy-2>z՚Oi$ yB. !{gpY@l7nE->)[&'8HKBC=(Q͆> ư? [ ߾0-lX7$u-aȘstRl|(PO&Q4E] u,S]Xך%Ͱ%&TIx,Ӄ}z@)߫R>qmz[M㢘諚 Q2y/_7n/|OCdr sZa=5Nbl &h Q9ό ({krfH6aђ7Hm],5BH+^!Vx!EF.7J";Q q0WQSUd .IennΝ1|uil01=y9EXnIq,ճunkQ|,,uv׭+3WlL=n]3)Ka"2{xE㩊XB6-P[K,(ɌKXS6#\ FԄ4SN~u@ ,N/^m3 /)D߼Yx~ L1&=,<;Wa-Wv AM l1:ofpP:wAwD.|9jǸDxZPޔV\qKY ٔL:!p\yB}a( Q/͂m \% 8E1`f^y]'j:sI^m%O( oN$/ $c\$hEMm3hn^.\sy)U"GEjUjEq{:'2Bިm-Θ0&6̠lRB&SP}|a\N}UX(@s yԪQ:Gt87k.i1֜liH#q)# tbz3jg]VdViЍJۼdGc~Տ4b"WiCNgRܫtbxl @uЦqRbocpA$E%)0/Y@=9H1q4;[(;5S8/͛"KM.SBÐ/6(Z͵e)%'{Qv9V-hb/7dF Y7'g' s $jEy$JV8/,Ɂ4Nt|0 3` ?VPÁCELL46)i3'#Fo1^ _4M8*=T?9x2M+30 f I?Yil0iAZ_~Г-K&B_E T}]T&a0;|x&,XB s8 )~)dEИUi$ׄ$_-Nk>[UsŧeaHF.UlY,`WNa⨓}q7wH_3ZXft+ij=vxI ;IU׾ ʇyyp9Pl76 [Dvl7{5Ls!-q֜,?-:.Vq7)‡HTk)2/iD| R/ _NY%">9uMX*+4 5gi*)::)imܸ@ hU;I2{E"܉Me7=B:6Dϝ$ofacOf+a+MIu!tW?-Ö9\+:4&Lg,T"ޅVmYpkeM~SS3f)~O z(*T22{Wа|>"=qͱ)\ߧ ;t:EתB[mWZ]R7ݶkfg oI"V*$6 JyB̞[[Đxē3Y5BٔW ٳߍM~a;$9n4%SJЫ^2OE=7_dE'U {/!cġ6tMs4LNf,ACɘ>X0ᢸPK$@YYfi5J.~IWyyBgho_#'MqoS"39PЋjK8շ7x "BŬy:6=Wr_Hꕮ#9X#MՔH|KZ %6gSY_-颅uQ;* ɒV,YjO7++fڵC mdBeJS_ӡ#$:ۆ2sEl{ck:xA6MuA=R+Cы!A ] $#^G =} %96-|Njokt/) uy^uʹ<2]U􇕜482 \oڰw|\:c2jk~2R)P+4LN=T sP Q>y6E؛޷0v -U1w O -dsі^rdâ l6=a @ղq^{@ҡV*XF|(?@e%m斃ODHg r-ZC`ǭFt.uɮսrp6п]X'AhmL#TOrgk.4Z3+b*'y], hN#Ff:6#%4XO( WZѳJyk臵Nq!31'O>GHٍʆf]UMp,ё5^)F9]azTTUmAJIlCĴ`E6G}H*CN}R[層|:;w|-'SF;Oo)";gޝ4s1 f(1; 2D:'&c&(K#fصۤھ#1n.#IS U;C .TDň]@fUT+ 5P]Qme`dEdF0S /\]|}쎬8z,|~1{b#) L8L]J"E qqтkK}d=4~TJ;IL#l,GMBn4׎m*Kp[)+I  LSI=mIrbuJeLIY.^è&k`#JS7恄KN4}S{]Ic&9sS#啶AEb6cPMRjD`O%1>i$f"+9 iY1פ_-vKC'c'wEuH$q,X6bs0U.cjCQ|” v*-8lluչn&&5"^v0^C5f߰?80@[!wعN,ٜ*Yʉ/SSPн<2N͜ "nM 5T'lE@f0cv piG<} *L6pȾ -L7ɲ [ƢAm0oLs{$*f 2kT 9@\[ /B˳].6dM0{rC C%Cb*2S?4 >KR_u(:"I 7RvncRdpwqlL4B)TWG3S预 @/xF6Mpڊf7Og%}J9Y $ #Bн؊Z]2+JCٯ絲p5MqU&RRo {WkT8,݅xlFSE~?4;hYp%fM/K@ch0O+&>PL/^5x`KpwgdbNNR÷i6y dRl,' Zѷ\L⏐N2oׄ8ɥ[mXv\u 6|QxQuusNU$+ˌTzw}x5-f(W6|>@DZlGDaF ئS-5\<:=G1"bݒ說vw8h3( c16#R\:}Fߧsbm^B~ggά]5w c~,@gqJXQҕt <^Vg]GPўKr6֜_b/҇Ȓ~ӕx)A~xYry ^)+"GD.܃5RBf]b zuJXT!?3r|MXeޯ[ԝJVͯ 'H>&o9KySUPHCu^׮En@ڳn;䁘 <=B;Xy'Uڎ Jk<!fǯɠcH ؕv6N؏sDvy*w׼TfMhuF/0}|v=Gۃ WQ^6og#pmJ%<C0xl|;ϷI(o4xpF{Q`VUٚөbS,1+=HLMY [VF)fȑoSmlrþlt$eC k/[/Q:Sͽ. jؑv[s!I;5|iNٻPL+a)c9lа/a)$0t‡dJ+[0|AEf  W+XYl/P);lϏU󶍣_ C0Pd"\zQlrD&1J_/[|6rI\{Crfk l憻ж2'z[1b5/Nn Mg5Y M5Q=OnN 7ו@wU"I^@f!9!.;Ձ7E3v .^lc7v_T!)5obR[#{ᛚ# zԗ3KA  Аhe40vߋw有N+ݶWUt$;0$; oE830"0"d_E>=ri<<8]p+Wޒ,\}%|FFO%B`UDu;X81JYª[*+ޠr.F>--cxZx*e0a c>#!  'K/Qodc?"@44ei{1.][AĮ"94|V,w CAA9| ˬ'.X%q{6-ed&D {m-'8O稽( Ec 5w,yTG)sD1ٲU;esHCQbݶp<d3d1U%stv+ Hw+f\z]YeOL +n[sS$#Swv4s(Nn eB0?k\`t˥P|\_b#5<>ўNm j#vލT\A;‹U-.09ܣHȻ9ɶr7k@UvJo$ *\Y_"(AIGLH8u[|< eU(T0TNn'rH\;~0wbomCM7w"Q%B2j.C*Q4M3 G#gثgRW9? ujiHժ8ĻU5 $-Ix?3w)!*Hf, J^Ug.Kטԫ$HY4CvX9=,/8FQćx>BsnX!;W\3!y~sVb1;CF ϧ?_TtfȲTRzQU%q<?f{ϑ^B7TFdܲ<R28~ǔg1<4"ó:O5Дc d.my +T=jId Jȹ#%teS"TS=X=x7`#=o-3:R B2#L 櫥E|5qt#}+0<G\e|.Hߍ ̹x2aAZjU |EI`^ lqoʞI"SLz=+,93xEM"h])UIVW|$&7b+j.[~A)%QSw33R$ y孩uq҄Z}i mrn.M $$,e|K{%:}2M YTy9{[0o8'LT]=vBrKr궭OWvP`m#ׁ},p3[X_C>寃+UgF= !Φzz>jz\(D(pL 4 ,h,X$ߧ+b z|ִ|m]$3dD%zI *Ů 4%> W,gJ L;A)[Sp>/\$BL'KrT `[4^9ܰ0\`dv7͈ܵ!Ab@' R_'!V 'Nׯ=>yάİIάDcUd/ձ=udEݓ|5y$@y*5ۈ&&-T/bz)X+'XO| `ֈXz";+' P~:b0P(JҹhH8i=|ļo'ڃh\ })\woWa԰WC4يiܞ:.WҼ 3}x8E8>%&M2`Y{3 9eEha b'nn¨_ؑP_~+0â"ЌNmh'LU>,.Cj:jf1u<Жbq!Jt*%y`hR^w- ɲ# T#m48Rm{APn i d&Hٕ=UzhR6O7ϥjA gnCTtل>i V)@EU x̏bajG5O-# Q쿽. |2Mיֽ}NauLR#._CK;?&Y{3! 7QYǚAX(lG\ e1Ƣ/q?d"`얏JLE^X`!ςӚp2, 3zM:"O,o%o)\1M%heyk1j\WwsH rYDd<c1 ?vÑģSR *G*u;!07%(PcD_^`{浇D79F>s>Mjë5̕>bn"e ݨE9P.p3iAQqcPز0aS(zSsNrȺIzCza-xK':脨e||G QRcGΔƈ0B"Z`l{.n -.D̼ô~O9eF8X6p-mKi ]GĮꭀ^>q+KǍV~R>k# D_P2 sDsqN9_0P9ǁR63 J5fsE@|}я@f{MN:v=mm:Y}rߟid &ĀebHwcu^d Fڣr$+ PW#ld(Kmb@2u3uZ9b)_[?>L5X=6ehB4nmQAd)e"64Xb?)u BJsṌoVx:EVt Z4U=GJm}\Xө6Ft B?#fC}O@d,\&9ϫeEUX+27RʢRa9:+ѠN[dJZNe"m6 PVV6P 6м1TXsfRp-bT7 mj#>9O׶XGL+c>ҦG4Გr9@gh%[>nTZJ6a%w~z@4=,LWVD  exR KMW@_`99 5DC¡HFBbŞ݄KFKо~rQ0[7 ݙ6.EF-JH^a#xJ"z3ЍzD?ӊ=j",&5PQhepC k*Ý[ƝOvo}z{T:L kV)H9Bqыcfz}} @d=7tbbj=$6Y+>=:EKlW4.EvϑB<=oCF>6TӰX֝ ~f&bU:isvέ ,XQz@g yB?_T`.FyF/FB⼱ڼ !h0eD*؆TѤ1ۊ:7+".s^w\Cb͖iNT}Q3 FO_\syeluA9VOb>W2K?IEZ +V+xKoN_!0F3EnC4hiuU7q ]_p#%2Xu瑬`6i (:l@سr(dKw+H+PQ݂ \0 ƲTTDmtWX݄xS'ogo Yu9zAjs3#0qr /Cȉf?x܈ƒ,@"јszPZͮfY$d&#{ɇy,8XGn鹺.NOI>(Add (:Ӷx814׷ݵ$0z6NVK)md "i9p9"_֘x"6 z6 - qivD@#o]_jSU ܨO٥muMц'`_^fh ZtS7B9BN[eOip35'yli1񝞇9V% vNw,@P~pn^%uN_m eon7'Y/O%_uotE' HQ`ju('>g =dдKG囃K$7Gr>l©B Yd "]?RCG2;`:b25_h:ԿխP2I@ /1v֯GALW-NrD)!I_=;zh{Vy'QS^iܹM1tN؅Q D+Ww:S3PWӮ Vv UpiU;k;_:2uS jlh]=;U8{4X UWcfHWcyB/.TMq\h|\ЗaB=)%gw+m&~iT[5Ccru14)kЉ㐕ftMC2TA OҖiV2_䗶EBĘ }A-3"lo C8윟zHwE >T# Ϫ9o`+k˲IbLVUېS PFuGʏXOך+%A.a9ʷ=Z]䚦ks wf&ߐ*`i0T}M_ȥ0s}{ҥ.}|*L}weʨqouqvS3 L!ͮl8j3i+0Aǭ}A^^gؐݜzTI3Iv MΣ[W}B{S׽cџPfvG"F[_"il'bOأ{ WO<ĒNλj@婋9$պ:`D Hʑѥzp[Wd=`A sr(d#ѵ)Ǡ%#Й$MgwxyD֑EN\o|g],SȦ{Q[ f5raYҎt^w$<=n̛Ʃd"uPqoBvFNR*sCv3썏RKK6舠)iHcOn<1۹I+U7{Fs^k  Av kJ-K<“yϕ{M*+Εe[O˿<15kԗ  ?&8>>v̮>D_/Oty&mxƷ0Er6|3n2tWex&GQ{<ú}DHAz$%lYÂ4D"A&- HT򀌳R|R #orң,TQUM͇_y,;7,\яNjZ)-7''OkvZe~lgFP4-q'ՐF g<_T" +,I]k,XHR%@Ɋ,b,gp>B`Ft ,m;U ٘K8D.zJݭZj"Pce k&;p J ,t U7cx^ +9{+M |Tr#Տ >#=O AX`!WSDa<}YB>⨜=yԧG"\kE]vc* V硣0)'yJ&ԧSefC,.S{;K/à)k lOC'Y<{3n[8IΩ(.^lL|y|.v{ug{ٯ:66a\*Ijy  p^16#㉧L[vGe hA ӔXӮ@:uŨVE,Qg&zgV_,0*ɉl{ɪX4{a!~֢>dH2/; DχSlLQ@ۋX{RyؒE{L\p2 I^Dѭ)bdJ'q0SóaCd bhlyyw 2<'5hQiԺ||kAtE´x P tt;^ q(cpМL,Ygs }=HR@e_?hU^0VE)gE+((ۜ7 zs!~%VN8 g]`qa~yp_/:'vZo!4v=gpӄ_1͚Pw\Pwrh4BΗ-g-J֖&ǣe1!kRkvS;rRVC?QO KEW?lSWX̕AZ 0+&xԙ*3պWp+GVc&vQ*ʱƯ"(QƎw4Pox3x`,ɝ z_5@7qmZtF/l^)DhRX`rɈ agUC.u C-G߀<}WTAV̚oBX C; +Tq^i3A<`-rj;\$f_0Yۙ+WwP+/@j8Val,͖3a(4Z.O ,+} k8]Er 146ګΖ>f$rA(Nⱳ"1 jP\|\&OSXInnʤ¬dni)g/E-xկ4h,8ѹ@ rP, 8S~TL& @vFAn"I>/NZTԁaW~wٕFŴaE47Q+X&x.ա3 JoH(nS@/.'ǷEBp$}1ٺͰE n9ҮLp ka'_”d2(mϨ ÌGR,i^˚Qɰ-N頖ŀ(<_)ؕ`Jk*k, CGպ[@*럘!|_# 1~Agl*W'ɷ(yL:̶Nڡo^U}i^+ 7KȼHEݑ7MŘAkZ יnE M}Г؍-^>l%$S~q P rl# &ҿzHDcpȰ3djK^NS|n$JF')=WhSD=|Ae[:XmjP6ȫ x[Nް˰ʄ5:4HCH A: Y IȘr]x^>44[z%<܀tm.u:[jAFcSSUv!dGr1\ >yPuiD ^J'Mø%UP#SB?3K5x;&"a|QBz@@CB]j<^jBQf1p؍藮³Zٍm 5IbRuP,3J =pcccejei*}]<_*5f$Zmz#wƑtj\,c#(YMV_JoDڥOv R˵|{9k@0TKb7zLCVE<% #ё/j^*$ Ď0YyqO]aNY!_F Ѐ8ID7iI Oqeb5`w!BHdF|4R9y#Tk^uMb awdr.[c([|ld^kgtzD&f%5㯂 O02&X=AK|U%LnȢ#*i^ Y=dӒF!Hķ8p4(iX#,er~ܡU739zcȍꮘ 87WeOEwqKeЄb^L)4?רY^O.Q[$E/w "\#Ϫ>*G8gL;*DBsk램2U=nD/&N.+,e/o2kT>foGJ [ F^Uw WuM&tSSq7(d|T[b6H燲:np!kDneIU[Tk|u` CT xNI/#0hJr-:\>V,oQY4b.D% !#&j]16"OԭJ!EYkl|ju Bs{?#4G SndOmݞ"e:3f~>`_l+o(^Ϋ$*sFύ':`J_)jj N\}$'^?Bp9Т[p-&Nč&sMiSPxC)<*kWeܿ} 84;_TUZ&vP…7RX[y(z[(#a IJ2bZ~fѸ>u5IwTyRd*QΖh 1!!BLlM;XRq9L69 iik =="Ȍ!rDpO jU+"m̜K@P9b,{$n0lՆ$4 ̛TNd'Fd|9✰ceE-g,ۂ TЛ˞ȟet j,.9w@j|?y%-fMϛja,f34^ I1{na'Pm h߉L&)x% h.f8+ YMev ȃ (샺@6ӳ4IP]tۯyNo" J{RXKKrnQw9Z_7:Ӧ qgPUr~A3T=iNBgiqכZC؀J lZB_sL7l< b{(ha:N9ħ{ʡWO, W8*0JDpdf(AqXWUIy _K5Ƨ.cDA] X U9"tԽ{ }q pHh.# )/hȸ8.O(XCzr+#j&ɽ p v} f#ץ MQ׏Ӯ1BmR:u'8^r!siLᬟGDKTdzR&#$ qTSK+pj #4[j)$24-%mZpXj:;q |oLm0wYf^֦t~ |Mb2w^hi,?[djC^h6ځ+"#]|E{VI RlZbL>Q=zJ^"ZW񐅾PU~_S?+H, &_ =W_Chqd&4vB;ejbk4mA[𿮞ff-.%Kx.]SbjEԓY_!rU^.O1i8Il`; d^-=R,PEk@߅OK4`pɜ`e+ V HḨ1] ΀A9 L:Q"/Mt;{)CnltNxh[0,6|ҍ7KD=~Qpϣ]g(dkG8)!?$Ѡ=8SX+52+TޠԆu͍h5(;<ėoPW-̕cNKå# M6K au/lK*BqDt5/ɔ;t@>\؍W446 kS t}*c3 PPO`_ JO8P /Xݶ %r &0a4lp71yM,_V߁5 {ĄBQVmjev&yN?s.r:2YȎ`.l?~X*o)5$Z g{1Я2s6#^D_k+RW];1ٓ.k hjf2^MDܾzG֢./f  zKPUr!i}&VUIvHOpݓE6Ca  v?ɶm_,'E]%bpC)B ʄʣ[U12 -ED(&Qc 4Lhl4# v]: sއ:~ j֋`񒟔MdGSH˰ hJ&. +C߸ l+*B,ddȷKy-,y»P3Ńku6@~:#a ݸѠ*DDG;PdIx E)6ݴ;o-~D[/RDu>O-6WTŮ ψuj]g9_\dDJbU@ 32($$C1QF@F͹sЎx.au<PΫBQ`#MP4ä6( )uxu%$'b=ZmF+x&mArK4yfF'9?5=N&bCC6X&>N #6 OpPwk#jvIqE f~&J8h{OL/ <`08$\^=7$:Fi&L7r~e3qeg7c<XӼAjup91>0oB* [o-a%D~՘>dfԉ`Ĺ$9ivPI VΔHylnv *ެ[ByRemEQ;Y:䅋m c0PPC;U͡ s yŸ[ڼj'Qu+ zb2=.WzcfU$Ҟ} ߬97cL)/hbFV65JA^-Ԃ 4lPa)ˉlaQ-N-i&jm.TO#iu$$Y\+Ww*~~ʠhZ&qvHwl{smY,zXd,zk-KvlL1 WH_ݨ$YB4F޿--jMFۆ#jepJ?L_[BK I_CQ6HMޖF/2|Ƚt";r BEDAuKf;tEXk1Sa =ܕ@W^ቒʑL7?n)U$Û Y^|OT O 5$Lu!?hۣ1ZyB-a~$mj}1VEy3sqVaİ#n>0qsOgYRVMmj$h wf7lD,NE!x<~yL|v=/vKj12̖`5;\zEd9ٟ?1m.e!->48~'waQHRq()qb'5ܹW[WaohpTGTUI4=TAV!8EvK(b]✗ 8!@vKUrQ 'o2s8<>tO^@DGysq?V4ztAUT &"|6Q<1,m^<ÄT'7C dM[Y|(DLhK+5vgoĠ*:R|sj{01ױZ PXE~8~}oBSBpk0 %Ht#BkvR ee|CIw[igw7}X`fq][̺ 1>r:XJ|lfHJ\arh'qӷߎ(u_y)vOoF,M-adZKp bhWhpZpL(7 gvRufx.R#ܡMXLP cS AuWu~b>V۾ (~8m xJBGK$%&wZ"|M)mAAһ7.z5gjgʞ茷tȗۿ 0lM b\^x) @h˩0W+!-vi\À1_" risH|"S_d/+?AD_vFm.f8AX]ْIC8ybk5 1m547W`d&Tv7?aX 6J9c'd^E1-v4Ф ^8¢i!|s'벺WIK-7(xX$[EK`npr!@'ZZB*8Uze.>O(+pb,!13:29;O{J*EbĒPD6~nkQb[ly'4R8t u[۰q LD; ų{OUx3rx .Ma . o 1[,g֪XXb"ib?.a>6f(B=0H\Έ e/qs\I0"e]#ĸnySw!ªdY ˥-'?Zdzqg5_& PrypEwhd:5>3aIbH-sCcci3(a!״;V$՘(Pץ"x"z"FZ@t&BsSNx!qSܔێ}`šPhm+ zuۨ[_1P@9-Kf|*s7v |% Ѩ,jANY'űwq0ļ[L]ioRi.8mlGGW q}{TÝ ߵCϘcW&r25h\<JȩAD-)uЖ09tWfx?=j]oԞ$GBou)jBhܖ 794^ׁ|d]&~_i k&0_X}Gb ^/oDS^R0Tfb(!43{Vcy5)wD !}z9)o Y/!,|/.OA[qbLSqc#.rDUcekL"!u'o֩@d>wh}aBxYK׋ekX̽دIGXR@l^y{E80HH;ުN|2-OX'/   O$-F Śm1q%)F7QJ띚4-EMW ϼD"BGMѽ#=S7ڹFf`kK(ZkRp$86sR`6o١TfQĮ9:PVh<- h55)0&9$ύjyz۪e5*QD~~@>1TZs '/v:^TQu2Z#)k[R c鎊e dD#Ӳnj[v)[ [6ȫ'A'UQZ8}HC_Q< ݙ-}J/Ap +zYȄު,H\,2$X>YȺ:$*g1ޤlMqھ)P35X|4uf{pK .#&|_)̥P ,eKYڙ_10;[.KI+p] 3>j+B΅Q-M*WO鈄NMq Wq:ǖcoQ:#燒"8cq`z5" *Cֆ-%WR(&v8(of7awh+1S>{KrQuNEHnj%EYF'Au RޮK2O,| Ȁ{< mg E[ibeR] ݫIʳ3ٳ>h8MʮW ' &*4b%;5.{ù0`okf>`A.V". xwSK1 ]&Cv,sB{^ 'lVpr#S*§'K:@Cڅ6O!C!J d/Kr_Cc%?g+H"qk𕡣w&MF DpPco, DBc]v]{,A"t%R`BpiR|*ݻ hUC *%XTvcY[PL=yO'LĿOiα B1W^tpܞ+y:uYHk-<\ Ժcn"+-V؞^/Rڈ?VݒZ֣RȆ˷CӾ|JD iJl :Ŋ,l+7[Pg5w$+OfF*"fT x5K.Ep6pr` xHpj /ߑ >sfh.AxM9Թ\>OŰB $ weH: =I7Z8> G; z4:==j/0=8R&AU6x,^T {Kf8+tg9IWe7\ ,KEˈoC_b:~X\xpa%h]Yas忹G;[KBl QwliXW@ ⭶kQHX@kUakTw=*_UMTd`2ˊj.et6 32#Hz84 &W/ lTJG dn0s"]q*RHמּӲ… `i&U~K<{,tm^--?E 嚱XoLx=x+tm# w;{yާ= $f?"sڟV5ol}Sy_ p߻֫5r`@Sw@ Tc3PbԪLP /v_/#s/^בG%"nJ*)5w3hcBEθMb [tw۩ c-CDum3ȝ -#. x i)uÖ{|9^;< Eivg˫eJ8#Nn4ꞮIIyr*ըˡ&m8%XeU?! [t?Cm9B[Q``Ⅴ4|F+U3#  4~9$13}% "V0VJ VK5OAMxh'J[_5;c=֪=#T4. :Z9DsKNRY\4CчY2Ρ')Vy| E_m8֡ѡ5zOڶʦ:]_ΕN]\G}v撀(dsO{5-D aFw,@ngO]V.i _nL#k c$mEN{͝I S9y ;}{_{!kT>= ښW|̘ /*6)A읙N]*:r(q0\)v5Bjv[P a[^1ݐ4w/Ki‚*x}eWͿdJ!Մ+3j/_cA]yׯ8IT7?FˤOk  dL"t1|khpC8\:~AXbŝ.i-eY~u)#ň||Xբ X3 <7#]e٬jе HeEݨ,)*+yGOSP8!aCy${$J֛.ҒɛObgӉZePg6@Q8HRN2}lz ݺcF&Hf  KLk@Ř,=WW;̉}IV!r6!\MĄZyXO@-@#I}bjr-ɦz7`#W&Hmݫa TE0DO~^s_~[/*t `+(Ilu3y^iYQ!kbZ^#$#ln,kzpJٝ6[Ğ:!1T՘C10g 1E. < H]1ys.d[$ r+p+]DER<y7lҽWpwXŸUR|.@俣(0B^&ΠQË8VF!2ßi ,&+2&˵Rpa5۪%жNzXMIٙ2壻)N>!vd,ϯ ں*_枱zxaf'tN>!s";Ct6!}K)O-T (=4FmViaB-nd _fyB a.)K(|'&}F*=o;񮔯AUpxV 7Pۮk|kCPpP.F *@l`+j1= D{36!.@trunjgפ#}8;ebFrlD2(:W;ˤ%)Ȏ;y#ڐPRSS[emE.Z,ORю&G-Sg6Z0!E*qp }ߦm:IJ\P % I.28BXÅļ}]_֣Xs^~0՛K0z[< !FU4@k)Ќ.NWC6>lGv`G3mdJ՜yo kFFC Dk{ >Qi-';]zVٱx4mny!ux:Rz n/2P yC+o&#M@3tϢg*l-Y4l.Wݭn`e^`Ipl`B.JԢ@yv Dd(3\2 uZ\2ϋ {wdeDVVt@5/L8R-r\xVj=x ^' Wn͜DZ[LStӆUv#L8%ĎFMd'uY=ц 3nwܛMg'7&q&6FDTš4,5Et(w1 `#ZRt?&溱6/m½F!=YlcG^t%4ϡ<3C)ϋ)ﻨ!AhյR"jWj^`8+^?„XŘSOz=}+8P t$aM!4z '$v}H"$I{qw5Q'f~;iˡa6o&}C+:D& $B8HES 2uEtp> U; cEy:J h[ϛTsZzAYy+?oN=5 BNYXl&#bZM] V)>,G_ UqHX܎']|"@U&zwZ"C-eBΕqކ~S\!qOƾzS|j0t/ByaXD2ov*\0göƒvVg[JH&Rc_5{I9En@},[(BvJj`;31^ $ȼ1LsGPimQ5̠^!eQόT(6iԷιV z1ԭU dEDztXF7MbCSq zR-Dit*>wԼRC)ڙʛy☕~ANolr]zq▓ > fW?bS|\Һx{$TaըPg7)t4Ct}b^/B >Ӿ1yy,$-`LO,e13CqD5~?>xoGL 㿟ɳH֖ywB)Af?96,wVμ K vԔ|d=MQUf8 t)HGd\I;uDE(r4oP8Tsηה@]1p$v\d r@Ql p$N5/!<{VlNΩuVZ6"l_g "bhDަ4,M<=d(Y,%[EgЏc{=.X z,sw~&0-e q17e}*YZݦ=kK2K = < F;l"y3ewB'':5UNi6lצ; QUR+UTpO rjDRaZOexQ4Q$p!e\d~0NOG*b4T)L?=^S j$(| @De 0 nڳi!~(2Wd@ }gExv-h.&; 4-0|L!-;꿡)zGas*0迤x/Vy}C/D EȺ$&R&S`k9(IgDU !yMٙÕ~H$,DÁw²4',-mB#\J:p|JS{qp~"p{P$ȷu'v.kqSW BE8`.XRVbĩO\WSU Fz[kDKK@TeqWΗtd.+}9ff V}|SPˣ˙$*z3dcms-ACSY( {?SsҘNsbڲ,6[^k"ؖ|pjFY`p_i)Xo0vEnz=ua4"h:Ѭs=:'z厄-r`>v(moŭ&Up,[;AJCil7Zkw+Hy095`O0=^.^՚\$U>I8#}pĚl.Ex~~q洭kh ܬj bA]J L4u ÕY h;`ubXX  }zʡnMUyz֫,+ӠTj?h;?55uYنqM!X Gd7 yJeKdћ}WBj7J*̽9._ƺRFKzBF\ϡcLZLe=cjከUrշ0"̼)?Lm</jGC/:vvy ̬K5LqFwzy/ -!:kru  9 ^D*4#<selNL;Z,#%*k~ù4 ѹ{0>b/"pzɗBG/qXn(S"8&- sIgPݠX9Zsk}u'^fuH(NE!R| [>_}tdMŭ:B=P#q[tqC3j-9!zVKX yY1dZw  8]~{^ZX^Fb1n:%}(S'm~ъO[nE!x5\ CqKU%vKJvJ>} &11U\爍pSML>,JIK>HHk\Yhu;8} tΟ+5TSdoIY$,~ cP" FUpn0ơcc@QDo+=[.߇b(!q4ܮ]2zyI.mwv?]%WUL唧 vEщnҡ֊lM9Flw -&oyv + }OR [6|ߨQAS Tys+릆C9U)h(=#Ȳ',CBޱ{;ƃ=X*Ri0+ˬN[̱+iGTyrE#ūRU8wE!9s҂U}BR| Yɥ@/Ui!lq@S.1=t/T(#yη~ +jfȓK$n[Ѐ6gMU/'%$A Eg "1Ͷ]ՍIPoY#W5eahIx*J6` W^7$+yaP*yz)$3ȷ}(+Zr? 3(۷2'|eѱ+}8l_#R3ds^)g*8`'0`7,-x l_`Nc]I1V"|BT?tY{5aYn1r,2'{P;90T)zxV{bX˗v~@Uu5 Q#؜ Y!ŀU&He5 Àw"w_\#[h5.aEYII6gy?<%#hLe`ЛcpNnݳthbh V}RhJbQ>*ޅ3[rX ՟{,ukRVm BpN|7CX3BTc""^yݳ,rsIu(S뜮<EfN#w*~,bcB U9(e 'oYxѺ:Ws |C1 ٽM[h|1b]X WHlҸ=Wu`.cA4 ؊_a(lN)/Wud^P >Yzd,4ΐ*gl\ҳDH 4> \ä)ߊIM0`BsdYDlϪɫȌ^j?PG,TrO“HHxf+^b̷҇qS[{Ȅi_lcQaO&Rxg ?YT R!苪IRk WE2>`@jdsn1܂ zQbQ׵jt2LyԸ/CA7Z0J|FK gLdB"+ kz#)0+:XsA^5ӿv 5UdFB$ aغJrךj|9 n $ +7>TC%gkAdc -%s0Uח: ! #/=gGYp jVX u~wWTX-u$o%a2mPxR>.dXg^N o*ɦ@".ˌ$__ t<}l䳐[kҦPyXU(B:ɵ*Oۇno6*P"ۢ٣~kUj/=?; ص:W%&"l p(*!u.7c߯8VOߎ>-Dc ?=?%ѝިl4P:"}?W&Zb d/Пy:+BE@ֳ/N4; dMBރ!Do>N`Pg`5iJ0:ct)Dx|nUR#! ]u= p xU|AwβESyq/$SÏlmT! Ine5B:]wY.d NwrXbبF"g=IFxw4t =BRTgjpK_憷N瘑v*sѭ#nTMB\D y*!W0|*$C@kE{F9cJfeA)+491ikf+9+MHW+Z/}tz8tD9qR#29%Jc,OW| @c6r]O ;˖jqeO&CB`K~4m<>Ae٧^헆#u‹7|N5>ւ5YF -s.Ϟyˏ'>#=۞#PKpf u5>@m5/=҄ZM !_@Sa$mX1ĎꈬEjc4-N{hzI%mHYK]|WAnkEQl4}CCǾ?^ 5=Oce@6F*CO*.GŜ1uUŞ]_OĂ9XNҹsWCϹjhr,g.U<\*? wGr)QWm:9iĈKÊƿ/҅"6`a->gL{U@ S0,pZ $׎ "`iA65}hAg 潮N18tΓ{z0̫?cE(OL8Kdv}90Hypgl4O&8 8[8Q@BuhZR8OǯS2HI5[.y0%t9rZV ?{ԡ Xx ,_w;/MJ32z de>Y񅼦7xaA(I.V;ک`0 v P >NY11xP\5=s|O~>~?E⦺j.0qneй{ȧ7I5wZ VC+ba7LE4 Qk"5T9 pfZvfrnl?G2O o|Sɬcu G\%Nckێ}<67!l~L3ispQhoAksb UVfWctgP1oO E%o}6 m8*L^,zٵG} 0zUǓ&鸷 !  )dQد/G-,6'@f!eH!&bU*ي5y\̓ҭ\m +#h,@+$<Ú`T?r&^ Y`DDz89'lo|\vLV;kym )pV"d4l\ uѸvr+40m^Bi WԂ5eާC!C5TZ{^1HߦCVHnF@v:x9 v=o{6IjTrմsN2 unaa\NcWzaA[ N"m{0EaLЭqKk\7+|p#&fs#93*jS'.VYW RDІSB3Y2[(t8 US-[^[*$o`; WAa/.w%|S7|+Ͼ >V%+Z;:%bk^u&-=葋j기wߜC"?feet}O.:Alp[l_5`#h5(C$P6HGxDXD,rW+)rwrV'H㭣i jg"1HF *"4_Zp5X,[Э"d%j{[ZXYպ5"-^fh> LaZ*+)e}_{/SëT-hP 7p[aY# 2fhX6ezOAJy@b CY hoz;:[< <»p1a%B4>7专7oV?\>WԔBy5NzaM q#0> haAM,z?rƅ_  ;ohbby]wR#e@RN.};ɚ'߫.`) 9HO'> @PUr]c#l6u.% j39^˛HRG1PBu5uEfoT -T*xCF\3 Ğ|,[38 =[soS#bw`^!,m*rWV8wjfԱpL|qxԝ):b78)^JJh TwګΦPO B@D:g>bci*k{*wО a?./~k6D Z3 /c(]a|:;GױȮFwѻlCIKVYyVޚAU0H9t2 }hiqD)b!Lx43ǺR#ӜY wioE#]>13إpÇ>flˠg @ƣ6؉<9ZV{3@  IyeJlޙ (x8R}UƳ=EXH54z-xJW2LqicJN*+MP.t>h&WC/dc~qfy30'|iN@Gj@p `[Z?o]63/-`M ]1VxW{[9K5(pM^$H$RD)fRYT]‭f;=1unvĔp@Х ge#~]s-HCv=[2e"/"x,"_JQoQEl~?V{(kLy\Ql֨Ro΢ʍ';%Zvn#M{FBcbrH:*nxYI3X{.Y@`8LyAT: Xp0nSsx2qL吏4'~:l&<=陭 u 5x/US 0ccVdR^]z$3w{CP1baY5Mq}b:uJ WJ M S"ccZ9& fF:NAaJĵl8ˏ.\*(1'|RwuXpKר0q)V`gݹOe .1u .aSTQ9<;| ighKqo8-'@Lc}u_L-GѦx5^nDq:Ul%IMy &sT8흚>^^'I@+Mu,bX%XPy1qgYrhu+J% ޏt"; Q-gacח:t@Qׁ GYƮ"ymu!98m0nKSHVI^e;HҔEa >}L G Qb^*c`bu-Cvacpa;=H$ ZyRbɐJJATBT,StjZ}$|hHa]B;>cQ†6B!twIY@,Z"^7=mt1t.wy;9-u>_6ޞn Z`iҡϷ h|TPsWNS̰LZ{X nx&g ÄqDW~ʳV_%{s猉VŽ:N;OH.*NsmQS{ٌ/"]|NTr {hn3&SMrݺ~jr+30ceS|!RHE5v`© xRCH0$j|,^62[FݚƞdwRnoɌ#Fu.9wJK6&tsN><ap2r <[]= c|%yOw!JU[n26Aflˣ) (:W&;y5}^[p+) ˜{-;ٺvEŞ#![cjz=wz2᥃vr`rDU4I71fT'e[N8oIcNrMlh+&cbݚ V+ {UV$eE߯Ɨ*2[ΪJqomhAu"S}zky_'И$E?__b; okeO>OMC!5v+]z~ D:n>hG3}8X9ʓ8rrT)pibŻg&Xhkz\ ˯SDq1E%D4,d8w9@8U|TRbp.D|s"G'u<I`&aj94?W 41ځf6$;DKa%M!(27ű2fգ΋$1VW_^lSnS(Hl2/q{yh,o@ZKFҨ5O<^:Qf k 3ӁS@s(!ͅv"k4=K_$+i ͫ@A^ӥ+3U%DF^*r&ٖ\{$ $ݐvBåF)7vދ8Մ'෬k0itk4Fj3'M2NDLMMoSDS>vGJa>:X/=mlZ:XxB ?X0F?B)HQiKQ` sK-`;*ĢBٝ"L7au1D U8\3UUzhX}E_ERogaQϑgϧ{g2I%Ke*zQIH 2@|I(Js9\8z qGA\#4VKWsys.E0aߘ;M(o7F5!%\F' WUGZܻ# j 4HVkS(Z-ڊVB*L%UH* K BDeR$`vpγ ۫e`9AOLFlCS˃lۉ( <)+5r zcIL_W/sJ; L6T20H`\st; Z?FU8$L~]zd4Jq$Cx&heڠ"A]gxwcZbwUU+]f`m0gl=B)V.-Nwxz} t#Ѧ?LdO}aw=='$^(:w%"lG3yA~ss}7Pl ; Zivv>%'  RtjnƕnZTE52w?(5N.QԂU2)T& Xjw;,%\hQ,~EYG*.!.ZsNJx͘€q/l=nX>]]hs ۦ2vE4u@(k)س5]PᩪX4 j<1 !iF8L6C!GR{ʓiĻUğUۦY#1Z`NAmo3<$ ^)Ek/lfGc[b9?tS{g#4޺Vd;*5&N&Bhh2!*> WR<]L Ǩ=y$KFCGumbV?:Q5qwA hPM;:_{YvzsSFx! kw$" *Ӕ;&J_bUltH9SkdaHtNfy"Q "`GתqUy׽Guknvg3{zWQ w2Ǫst3uKu@a@I f%<ž{Q\d6-#^c5a:x%֫~(~ma|պ u$@5ee: : QetQZkpuƬSWh!ŎULV*MDdQXDȉF`bzZ6W_E\0ŪТQo< V~1@`b0mပm:9|QDC#9 5>![؊COFd<*Lj3CLBrWkyBsid єmZW&'eEapۋβvXd Hn9g'ʇ;\-,<fN!'sD~0"ZH9 ~JtbBh,rM,k SG`fTmZ8?XB7/. whGL/ /*h;}o&+6}Ld|&i[%Bx3Aka$J GŚ'yk ʝU]a|Zz)j {mƙPLe^JD\y>C#~Q  f*.vfM[ pD`.D!!ZƘ Y9hd$h\-ZrkTks,*!~$3EƬ=Oz `ϻ{8$Q=3;yX3|_CG/0/FɆ6LQGfX}Α/?ʕ,ONf"ڨxHF$>IFpwq\2UWeN?ƯLLRW4:AQ,3X?D<7i>cDcr-rɁrcw0>ƀ,$ֶvjQ# ؼD»ؿ4MS6l_8340({82$m3L+7[ՔU%'_T^zJUϼ \/NB#Oihs^-䅙\!Ԯ@[k[Hܲw#Rd]w)Otw\ey]uAfI@KEZ6ODR.nƦTRm=bS~-fעBRH+dͅ&Q3K{l@sS,(z]* ;RM}YoGŮ;I &ϿQoq/~8T79$!5H 伬.Y&W^P%.T;ݿ+46.|r@A7'0 ` 3VΥ x?Cv`ȱ[0٫s3E hGNǻyNGF@@Jo5욋: <5P3ʹ @z|~yY$b 3yIxZ{Ĉ&L,ZbGST,̞:mZ]prB[wlx}8wΉ$/Ie/Ril4yoZ|d_msZ.hYLYooy<7yp>_-*ȼ 6pr>ڲHGY1OeI \bm?j^ BUd k OcSE4MO顿dxcrcw]]`dĮΪMSRG=kP<]:Oz?4ӽ\:6P"X1"%Fb z 5M< l'eply ixX!ޜcf!-a~ W|/ݬTж$+G|yQZCw֝ 2Iۮ&a(Ǖ ش/o*MS|5.D 5"]Yv955sZ!/a, UGG,DV%]C}؍"K5d?OiUI?I~rM(@Ad0"kӉwHXÃmJ.Qa_<1![:loc#2͑'U/!e,ݝYˇbN^!KMm!ˇјájTh5d{tRP8nb׌> ~$F/%Gicxi`쒤ZACE=X'ԇu ގ Ha;X}]33 !םNMx0ɫƘ $w)H,M׳6x˭?mдN;JIuf 1v8խvZTଁ @z>M8R1;kOtK50bkCO A.7w9 &`30Di5c5tBIfL'i- GdY"ד̜蔦)B1,Pاn|ڃ0+ { u#o¢Kac'j*GY49u ĠW&m1!I~t =fQX۾t\2v)B@5ybBTlAܝn &J:TrTB@Ţ*s[Fy~@j{hv0ZS"2Gᆰ| `OظwW3@lEˆ(,zJ(9"u? )ٗ:=W*+6%H>\ >=ݤ#7I>lm)%Wg[x`lN10yʴk-Z V 7rPТ+e,9-=4МFn`S7 *>ʶ*&4z)Ba*8ECxOcLQ Ꭼ{mZq1gypMzQYK&oIf baUS-V@wIULppxZFeqG*BoND*}1EZ݃;DB a^5[ÀVƖ RCUX[24>PTUɖ9Jz}p_ aJ`6 9 _y%м!8cӠFۊNBR Ӝh"󧢳B4a^Aa2`?TO)n uFƵ{u?svǞ''Ɔ3d@0dAq2fh o7k> Nv.)m1 gA48t A ȶ3jN]!HQatfNF_=w~=.R]]FIir6L>8I&ݛ91W,~' +> wf|k.Rg*TY@oIξ%h)]OI\#&ϊo>-{s?7$%a+U>w; JX@dJ==8lӁEV/o)sPZ1!my(a18AkPCw6q j kQ5ާb>AidF_MQe <?aA= s&O :K_Ҭ;D,9=}G *TjUsYn0=Y'3N܎MML} n* %&:|ee[ >qx@^qlNO婪tn9!&DMY|ã++{9h%tn%(zPg(BВ@,@|Yku.AYܶ8#~Ϟ#5< a5AG<:}f?FEwQ-P/.㶻4CQDg41PdzAFMՙv "<tt7>;ˁ"Ș$-8N(&?"lca녣qbF+mH D O22awࣨJmrpS!z8a 8K)tҊF4-J oDSA)B'VWSNs Y nۚIt<1ۭrxqV T5hl㧨;ľ3DĶo>,|[)R9;JID񢙥3l_=S?d_'AV#r[Jf}jٰ+3NDdu "f+}ZX%"E3v_Qo{βOփy<%odE#zM<''fcQ9OwnM6p d>EgCY5E"4 ˍF:J&53H}sYHӁ.7=DVNM^aP3V d2L8ME̩qz_lT}ZHctCV< FO!fc3vwSd;h(̔HtՖsydkGww xQUp*f <ǑH#o\L!3ھi'[CC@L8 W mTKńgu[pNy!C݁h+qmJ[ZI@΃T=(VkJfd,{,)xxF r)u/ZgO 9u(Ibrw.1}4j K=bW3_Vq 85kF5 5:~4Ohr,;PP~ e٧`L~t׎8lkڕ/DHj? f#-1 SRܘ&+[eP^e,}C^(5[.M<ߪNB*$BGӺelR'Fy&hC*o& 8~BExӿ6afR(+2Għo 6AL|Q9"|\W~a9X;N!QshRm~8DzRaG"+{}> N2G $`E 4FX!‚JJIvg:H/T-ùpDGĬ⎈ x[ےH/v[? lu;1s /Ht?dw; < p $OSTdW]6Nb,+j^vzdj$JvFIoTUvTX#@gŪr??༊&#FsU< ,_Kwݩ!$ )%rxEȍH>,M-: O8p G;~Iaevl3%4yFl.f%q>ڇG?̗5+˞ܓzR+IʒV^47HoA/b!4kfJGJ2'C5*u|z(bD$7b*:\NQ>(Q |bƘK.GSvFSQ;i05@}r:\bɏQ(iY#.0U99d"RwB9plMӏ2-Z@qH*IIWŐW ~ڶmlj6,՟VA5Kqۦe ޓLp g\ь/"ÚQ"JhrMgT`;hҺ?[&~cˈL51v5Sޫ=I{AJA5oï G[m9OzĩeirNnġ.Djh!j0)| ҳZ)QKKTx{"Uc;AL0 @|sVK5-SNh E-l(}ng~&')8͗ateQ=Lnn{Vbo>qIc]*q\7ł> (\!TA`R.$|˦Lοnj䃩ʹb26j^&xb(Wkj53קt%uyݿAUMFlwLzc7W`-1Wr6D"Pҧ֕XxQIvi`݁Qml]^ɖ)7(j)1=UGY fߔVB1෢/?gS:Cx(Og.p>f~_vh$1$(&^(!A"Rk6Ney8nf=HEMc6ae5+(Y°!V^qYpWƞ*M.mf!4) 51D 2Fs4OS1F.H) ﺧGAϞ-R:Ή~?H,yGw]6y*\FO*p۷\tQ3Q U m!Cp:&\c_W%u~OSϠ #1G>wNϑ15t X5aR/0HIAjE&I[ ĤdOKGn 1F`^x(!b)k|0 BRIKwwyb` hPOoB k/Wuhĥ:Ʀݠ*KŃxȣFJ䘆%LWE]=4W%aE;X'][QExP{u)/UX:x1R Wl&YyGǦb(ӈţG{Q UPvpjKvel>}juQ|f M!)$Y(jϪ-}n, o s 1$z8uyxpř"L)>A%b|_&6dCt `t:Nz(`^_"95\__#]ڄ?&,J|8R|^BF;} ZLlzvC'F3p|VTN6wu1%E퀰N}o~<#kAgXjL-@nàUys˅tI101@טN T3ėR1AE2(N7;~0 7NLb#=COJiur>u$γ m.VU"wLSrm)ʃi~y0B{v7Hvrr>,dԊ4~KVnIC_/(. 580o4(pX8,W͉##ATƷfS/K_CGmhQH:Ă!2^gPvkPoR@yěGR:8;WV㜄$D9U D#tvIhn/AYcGJГ<Tݼ`Gޖs"mW-p5 / nJG+\7%(jEdGLDIQMl )qFV2Wͻ{Kf(NrcCM阪2`ȕaE1cЌiߕ}9enC~EIf.qJyc|zz>V?,xN"{Lo_#*Ekژ3M=GhB@\?'DCkצBh71\&TpbluRqz#1Nj#IG{Ny)ҜjzThOK'[(77I|%ʎ[i(R. 1LC7fAB"=@pd8KK<>-P<5%Jg^]q64F͊Y",vlYa+5څB2Ή$J ּ"]WRPՀ6tp#m"C)"ٹ|P}!&\D~oW궿3=2ykDiy;HMY2vvΫO=/=R7i`%/$Ӟ$#PRQ^- [6XD%-HG6 T|a*egm׫$Hqw UVǛV6X_0$L/_4LD?lrɜ5ȺcV3;<*y4EԒ\hΎ,)6XKF ;}Lώ{´ l{B}1 )*dE^Ra ]jYwk)-PJN |m팺T_s4pe49Ý<О젡PMؽap.Esa`S'@"<Ә Ltlq$ XAH(D8+yf[ATe"{vQiqGfO .lEsͬCޟTN;$M 0l|Z5(e4s WHdWJ$K4mXbQF$rV$yR-\0쎬IŵgeQuWށҪ, |y҂q=/$V$ɯR =HsW]Zճl쟪}CG^]n*rad)t+aS5qMfҁ\i`n($ev¯8fv9Y]b}¹sPE3"^:)W~9LHAy s-QK0 [#{p<^Kי-ȋ&dvRP!)hw/9gUZW<Ht%9lFG#q v\,@N@D3VMlD 7$y3F$\܁2R1E( K&¯b>^?!Ԅxο]dC]g"Uf6{E2Lq:Xs12&Tb W{*(y:# N&/mWȝqhe+G"Maٵi6r d.fY/1'|voUl_~T%bxh^to,vj6d1$$fgVrkiEqx.nu?6j\:טtD[ƱȱCNƬM sAF'5,3r X DMكޒX[At,05gFz:ن\S|:))tAգ\ C͡/=dx5>cN*XB=F;cm ō8<~Cv{HsWa U`gFk]1`¼ {`eGx@nqp #}=6p4a?Vn9\|PPę͕abB1>p c?\ 4LtbR2$ard4e*V+g&]l~,qc#Of³)(pڹXa+:]`9a\ w3e6@_h-QZe&ζts+qeEݫA̸сj*Z[LP>Hd_}nyʩ vD\av?F{({GKeLpUV:2L>;MJZ\E.PogrzhUWD6uFUtLh^y7qdZQ&t;`K@ĿZ4,4Mb7$ T NwU9@q[v0.p_h^F4Ȝ@Ras>0mŏJ0RgsHSєUd`+#Tf}G"+X!ϾF A.V0hC*Ykd!}re_- i LS 8A:Bcye RD%>SInN s0xN<:_߿$Ar5`Y`bDIfzI~!\4_R-Զ瘨kˡ 2xqz>3A](*4>KIA~$,z$׮Ȕo`'u1zE,`퍈LDWCY[VCY d4ԭ{2Wc,/\CB5Γ8L %+`A &oehWйpKw9o‡=4ń?׀[9^$n5 ΍J<ڃv{W $12LRAoSXQזTQDO,꼕gZEĝoN֮۲8n@(rf}Z DaJo;.򛠇~ 5V HnH>ѾYVN&ƴܻg"Jc)u3޳՘#U~G%h`nn /l$$}l6]|;q7'BV¼ˮ8fpc4ew;f٬4` ZU<ٙs@FD Bd "5 D?*ɩe\+qqjXKB2BBwrkUB@K#Q$2Hx`{䩆_DۜrCRU~,-߈ytNU$.`cџ ~92#;|gnkٮ|%/otBXz p1ܥF/?U2d#5؁E>+.I>#%02 d/,)Ô zdĉLJMS0{R v|BGEFJüȌ`% ok:$tsWw#S.gʡ$¾W4CBʹH,Fuk:B[?iۜIB輇 oR&69, |QR"$f߂5poLdWk_LAE"J*69'èpͱ$ =Yr<&[$$)VVSR`;-E&X ػ{k}ǁ1{Q LӛLݐF30q6ϳM׋x'ߍ [iXǜ©*mTcfӻ |=]wzHPG35:S$ MF`쑙WrupGY&="Y K>]ϯEK*hAZJE=z"fSV1ٖ^'˵U$b ^uxV,mi}|g;?ˆ8U.J'š=YY頳?MKnۇߏLr##@q-A3/GnU#S4^7UB`d%kEMeY,"k$}&WǗ_Lj# 6>\PA::]. F[5ԁ<;&Qh  H NG/-n]K9`IOLnJR]ב:uyt’{Vh {WY4H-Upi 2Eoun]7s?u̙݁PZ37 \3LPP@"5qjɟ QzF}8n;sK2] Rk_2kQI L.HE#휦Vr^ X|M[ԓ;CYEL) c2өf*0#|ZWq,j&vc| u;ov@C:B3.0hݚ ǙZՃO3+2 {->DR lGU43T=[_+s_{`u|8x#<;J*uXYdŒy#up̧k]}m&+8tcҘKX9A}Ѵ!S$~~wfu-,ȔrqȈB$p-nam{n'2|#c aABʦDIgfZY"lwfE|eo?YN.MjP{Ì6\0D{b ?ϼW,M:U36O9^āQŢ3%.p-;Dx0W'YSe|G=.iQhͷS $Mӭ-m2$,1_Mg1%U}̠#_C, 8jW$Y^^1[R S]>"=f 58Q[dN%UgĂgʬj@m& E3.)ELFHʲQ(E$'+5Eiqž(o8|WJaiS95ZWȼnH rXu8LmNe,9=U`|-Y쓜d/I[$?5.RO/-y;|UYü6 hd;p5۝Nj?Ty*Rq<앂OѲG#G,Ѓd4U]@_-j8s F"n4<}-E2xK\D4iA-)QԒjȕ0ZwsKx*IJәA!F}ӌ_/(1Zh@;|%k [yd8[\z]r\͖^~:\B/bu'8[|2%iq>,֌ 邥_ mY87!AG|0tk`=mٖa!f6v<3"noFTMb67~YI6?%Z|#^;6뺞V +ĢEơٌxƿmLnrc\Q|Ȯ^8Fg3Zaq ĶOQwT{[E.@,[k(!I;=^Ý$ ۴a#&DheesM]OꨣZilrxzjrvOg|*xe6b  Tq&{706_O]C^f>۹Z3uN9Pto;"tha_.s&ȊqS_oJ[ނӋRipC4eSyνV9~dnGڕV&tȀ&}I&9sМ.ד>yhzE+$s#jt9 MqmQ6 S,H2ǯJb}L(mik+}GI1N`[pK5D o*-gΛb[x4ؙڎ1&R\]­Aиgf%?PZ=ne6OҜQ(+2EױqҴ)alBCrhk ' >}4:yԡ)0bcZA|skDlO^GS㉨,ZO&S=et+9)z0oβY$vߊϸJ0T^W0%K2IrpTXzèC0'f(OP0uf?~>,ȯQ!vĮo^nmaY@xk eA*oؼJ>=1F>K!t^fW\x"'zLe.+Q2̘ͨ:7IGV/ D&"<^C>{Z@! ֙V,l iy2pma?=GW[JW]cؿvfS> ]wA?Y֕ATofCvTֿwO#b&wiU= ):@muGiC꼳[I##ux:L]*Xx=|yL(KO yjBȧCa+)S{ EUc?#GAhy.γJe@Ft )w\Gs.֣{g* xY[Z#XtEXu*op2teidpϾGo"<+n=~X8rv鿰Qڈ@wTPrV-;A]>z=T,cplo4gV'ߚZWojC+d+a%c%|X!t2. 6xdlNq<& J.G-k%:g"%i?}pc !F`~ Lav?.#[ۣPKTV>=k(qU [>'%f4rF4,S֞q1&Hؤb/؍H޿}0. i>%yvl3Kz۝`CL= V!LƊx_o:D9r^d#mـd"i= ñJ>Rcزaᗧ4HDdx7>EUtN] rb3A4V$h T!nAG73T 2LM#R;&r~ W䭨+Pc?W7[L4)4ғ 9R WU H> _9=+dPz̲4tbX0M14-"^44W#?t{ei෽OrOc@OQհ|p'ʩk?vfU(j#\p(dtz8"P@ա=z|̇E$kU# BDQpq_9P^Ul! aٽ1G/ȋspu؆}7yha"Z1xAayYADz :e"4z]2Ȳ(3ju- ϋN#ZoUHOSx5f/rdF&%A)8M#|?I<^۷7'j_nG$ZCF7Lk2(t*GUzDYJbsu&o(~S{=8 eGL&1t¯Ii3 ѿf`賾?hOμDGB7N;p}"T{c !dj6G#'x )ض$NIC'p NLZlCw| A93 'c`"B6B ,ޢyNsIc]HFJ(kU7Jq(r)ZPQ-YK'aw'P[ۇ  "@[9ORe-o1g-e/nireV#f.K4s sB&z25 Ne0 p:$Ϳ-j> :%tKnօXJen84*G^f63z fq [!j@?>:mܾ[o_+3M! y)nCp`7 sʂ 77YcH4e!j1j B u59neh )%y2A;evtlՆ9+!*ʬy,Ď H+ͪgvKyҟ\3dl*Q9#3'عߓW w[%JjF)}&DD,zB6V5}.DAo52@plWMfʶIݝWK; SQ*pƊuI6(o0]݃hU%dX,Skq=! 8ޭH1G dPlla磩܈"mbyS_ݥtҔyW|2M;l<-{g nqC +K5w#'\ݓ 1ou!摔wkrv4Kq`@#]NͶA|S67Pfͦafw '(н5,"[6 AeRlmW䥵KfC#p{JWZ ( ,eY)4b%1t@tL*d,/`Fq˖S);ZWY^j7_${Rpty.>,>4VJsg%V)cLCϒe2~rNWIbh#g,lڲM"z%50޲gb|bd+n f9" dS,6JO 񇇓+n g^ ݶΰz=J*2)҉X{E[Ɗ<;SQo\~SPի?̨Z$FpcO|sb (!0M`.(XG.C+Tgb87{Tn.(&q}&%t9VV\?*(ViW '-ҳ9KdT7] D!]T ^{?0TiE^vCkv "Vo"NV^wZ>"i7>X&3 5)}e(tEfzyjo*Ro36=xMeG}VEʽ,FU$O݆Ho:-dO QR0gHfӈb!;rωၽo;e܉e e#Sv2+SM5C ⏼BdP)z P^#0љ[yI/yKUx<=t| u0he6f)~suQ14xgFhJ B<z_i`ĕ2atLͶIMhYAze,թ]eF¡PiTmSuW'1-I$u+&VѺ;em3yqT8JLr{#6W-RA֚Q(e?4`CE F0?y&/|C)RcFךB`U6Բɯ t,*Ww"ǀvW=ocgC&ҘWBQ_!WAetR.Ŀ-nG=#O0؄'\XS[۽@!!% wdvUȹ-X8 Rd/x|&=69 Ji4yuJl 5ҧƛ3BIn5Ex2O҅MoCE̽>0QШNs=VE@,%5(":uel%RpdPJXV`3sNtwMro(ێ\-*)`qS Yɬ2MCX$;k7TdK;ٷ#䫤,2coL 89Ș7:ŷ16¯4q>o58{)skƬnfΘ+Uo1ǡ#ӟlŰ W^Ѱx?xa`kX(0&jwԙ/X"@o\×h^;HrK=6&?I CG?`th(gЃWm9d^% "a.]2Z;֠oZ^ 9gЩ0 29K~IoU%-~]u ٠g5yݻ>TenZ`h f8}!9J$w5FbL%RwG>6S6E>^na.rѾb@OdޔuπEa 3,݃1fM4L*CUqcTGOfS7uG]Rf W-,jȣmՙ"ψV-m&vCcf߃V=˵4_p%( hmR0g>!@oxup{%蓚>k'whRFq%Km?+@ +a6SH@-c`y}ZҾd"f iZ|MtEM lCWW9c/mtDwHZ?2CW srD>XSMP2[6:ѮfI-6oy;5}Eoؽ s*0c6QRrNd@Ļowf'q~`VTR-F^AK˳lNFcVrhu&N!A rt~-3pmCu |^BFomM89nTuB8m)=0fGv#Nx7Mi>Av#jB90!3DZW~a1QY?Yܨ M;_,quwvyUL Fܳ8nz&( 36lSob< / hypˎ#:X HH/rBڃ|2G\LK[#`|v o{9-U2P{i"`^fyb*|̒AG'!ipAI^j /z#+I0DT*~l< xb\2߽=uC+:hx,Cpc*P'?B/.[ WE {pa'0a' hA@+?lD٭\U1ҊPL ->ְr9Oåa !"?L6Xd5<@W<"DaX +ziI< 0;b+eAJ3M"87~gGݰ0i;*L\nmT8mU",OҬ2"u}jb5igq*\Z!bL4s덯|X(=QD9awAS~ WC< Q@U3"[^*Z騒wc4tӑXmM,^T?[9mѠuCZ^$/V~ bC5'^bpVv!=z/gng@ U"jq֯Μ>DKsZ 9b]ugRDG8CfZ3]>;Yҝh`ElY?koUZSsoj xgP2+"IC4߻ ~4+7G76ojMur+]$,C^+hE3L#DZI5VJeoB[(yXV;rcSwpO! Dp&3dY ;Hv Ԕ D?Bs57IU~;{ vETWK*+u)c |w;p 1 qN8+ma#<0ŲgR} @[m2gBq\(sڑVlkv`EPHAU7JrUBTdLV= RGjF8%ݓR@#=WTi)!9; A3lIiZ@2ַ܁j/Sy4%ndr 1Ur^0+TUφ˂RFtnL{ 4ڕ>Q{9Owv g"f fԂxeOQM4B,p[HGq}h=X+zϚb1QF[M-eׂ8V.jfNkuBۍF1ɑ(Ǩ1삅$굡CSyLORaHŮr:LkۈYNї zlD]N=~q^HNÉښn&iShQӍ2⦌v > "|3(=)^଼c-elnE7b8^qse{o#EC1stGee\d=mp2ȼӘ;'i~'۫D!C 2D.e `~kD$*H.U/mPլ=cg9by&ZF &"åKgd#jxFHx h=R2]qUG-&26(2 &L̿Mf؍}h:V{a*8 >\aٌfLu"a1Q IFJbG0 'Qcio6R{܂z1?do 7@7,׻oC#712-=+ȞN K<ܰ"M7w}MByF%VL:!ؼh.j0%=cwH1&wTi#+a6jK3B!nsǎ!~xxYg]{8l2J5Y̲Q_k,_ ~5y #\28rN.g&]rb%.jހr[ؚ4|K#3&efTxWPo[jB*L-<}' KӫN}&\x6 ڔ1N>;6h-֯kQ SIzhCDrkHc@-Ob0]MVn萧X\U. LS|6VnRLBNj?,! w"H[8^e+T<6^26#O|*]./v~ﰳ0dev|Bk+^55<\=kJs8+T7'x̾}a1dy@/ ?ZUYJkَDhu= _=-s(D5H&:5y) IȀ!ޤ ѷ S B$~ BHܱKRR눱`[J15pj, :~*SXhlV ˳26}h{'":}[|*.iJ97$ F,B і#I҇ 5)GGsvGUfC*:y5-雧ߖmVn,R0}jGj;. OcvhHhGHIf NƌX.ߘna _&wC?X*ӡTq\p= ujJ´GSJb|4"d>utpp?Yav|C[Pab7=1 *ӝCUz¹8%B{ˤ>g Uoʆ?˛Z,8[ǕpÍ ܛ|1nԆ1\B7 'YIiB1* Ai)tIaNC ͤ ZZl&jgYNVvp-ؿRIGb>" +ŒZ0#A&(I,nX:yo[|W +TBe!NklZS=f329L5+jZs%$m --HZ)z H IrNzHȇ&DAzMxP3eY&<+G<A⼯G4/ =$W)UĪ.?^"Y,GQ9 ( }ϭ9~+aL/76)mEãt F@QRIr(Peh?r :ݾ9,uL2u Y[ē،@\4Jb/03{wZ aX"hp6p1Zo^]+%d4[6*v ڥf{Pߗl*At!;ۭcBRKTy[}d0 r0"_aZ?[%i.62Ll/֑ MJ<Gq#g.nq6Y`X3˼2rqG,T4U %aQo'#s#Iˈ oe)$n7ZE+-Q^/Kl]ys=̪Q 7䗄(iPal>MEyxYSut`xf9sEOS>Ӌ mJִ&(vYz!**\)ϱB̕J z0>hG&ż F]'z6r `8CE|% 3ދ[.~w6>mٜ.Kq\G|etC*"[*tn&v>eo['?ǏˊNTbĐ;{;]_9q<þK`럯 $ԩC&ר-2h:$W:ℙO1e.!.=ęoF6$ʧ\rYyXNhZ0Do:l,݌ s)UNx i-Ic^Pc؞J n4lҿaj+րYYpB >Xc6c~|g,{q}|rcp} 3*KBE|&?`&D%ݛ]}:8QM^Pַz H;3^5Ud!PtH'ir52R)f/Z$;O5pnVYBm%/hNnM{nIXEwL#hhuCIȾąIUG r?>߷T @R[!נ>ھ <ҜŚ}q6ZJQ$u"~n3Cu> n=tOhHct+dTiIbXhųs0߉Z;8bs)~-cu#X&vmCr3H2(cnbk&VBG -Щ$~t{W;CgPS23%D?}ϯd$.@d*ǽn„D`)sE5I d>: LkTykJ/LOS&7M9z˚# U$|;{B#:g7f%4xqq@vuD)^!MaH;!pGnCW-XIcWx9u_t!VgjMBbd\@ dދ}B:&+&WȤ贇R}z@f#H6M1͘=T¦teұiXmR 3kKi N@gdTdVأxIu67 P4-O.@u[<҆ Xu)hIP?]$ǹ_6xDpWI6%eW=!K} 8miMl x57(s-H ǒN m]'[JXhZ!%'47Iʎi[_Wr`]ooIC"Fo"R[y*0u57 ϋ-'$>^_րG|R(C+*k'g?WGeM~o czzK)1&IR7 |. oA]wyD ._| SɂcߊDIթ0dzYauVt+G+{9%A'r{*{X$|<:IU˥ ]|boiaRm8ZBd0,d/.ҏ;V%O|%#LFF'ZEWhL/*rf&)L,*yF Cm:1W̅ !b&̇2x 4H 5XĂ+HDg!F!5Sp'chkB˅p{yd?ܑ=?F%lPxMOmJbyg)JE-J+u/ʊִĪDoȯv!`̅!u"h 5KrDqLo51m/N탮_le!Uc$gC8eh߽4KR0FnW #|g6ٶaJjޔbtgi)4f@%X4L!lW ݩ˔k-Zc@#naѡRf_ǻg]Ђ*&sk=/,M뎩LTp]1~|k3xtSWϖb޸NE5qŴ\ k3C+Dk4WnK^͍TgNfA/iݻn'榆pioؑp d{\,yן0ZDK˒ѿ?ߙ{ [n$4 *u~?Ta|%oLJ~`TW1N=a1Ѿ%]!'|nݿ_HbsCX2&S % [J 첩-huPךJ9L˛VvGUNN*E'Ж~!I"2<]20:}GPD+ "d{(Uj"aB'z,^f}wD.7+HyKQKtUYBB3 xY9!mPmN%L򢂩MzP8bmcB)1aؿ8"lSն9W]fu7jyrk'=ҋDmz}*k>/?bB*܃CB<\yߢDBLSkjt6@&lхTN"?1 G0ᰔFPؗh%|:$.v 'F % qηXPjM] '1P9Uu#c/@\<(saF[t)tM%R>-&n8*íb Do@iRP|tv^^(r;JB @8UcC];=D5 ǹKFS{?%y`?Y"kOI y8! .A䘲$#~[a$Ch.Tz5O8O 9il몞7gx\3ɠm ISN٠:h4ύ~>N6EOĥH d&CC}\M)iG჻+J;Zfrn)~6ƮLuR3 ׼C Z4G7?дKheF(`>e6;ۢw+a%7R[ES%&w3]y6ĨVkOb'  EAEb((wwg *'SZt() c)`sIYYS`ǰ~! Aj}JYT*㉇/+REU7qa\|Ln^O| 0󿕅B1P N-]膑G9)pĄ|OŌûa.LL o ! ٰIb jPei+,+t>Ǜ-UhB*TeN&4Ykd! B(ʺ@=#}A- LY~?I w2قXgEs]rPe)7;1 զ/nZ c1 #nPo׳uK-#Jڧ`͆o̖ g.B K}4B]ı߄VWAoXXh"Okf [bQ2K ;v'Z$ HLt쯲j$sl:A8 WQt2%UKT Q@;%*qн:e".LjossQFyɡR0~.b.eDxHnJg>jI ~Eʕk᳢{n r}_#o_,SSsVѣYW-WϿB63`ȹ{3yg L_6>uƿ(69Z@A9,ܣp ύn UŒ796(}pޅjV*)jgI@P/b_1Խcxnt5?NW]''qJw\hZ diӬSo]rA$}q>;M4zf̫*KULMde%'(}-Q&!J[#q& ٍLbߋoYG{KseftAtSBdY7 Wp-,1'\1pk`z{=ZH OEq\#*+b+mvvӂ>M aVX!7)Z-/|rGU o[\0wKOBpR ^R2FlgčVDt&Y% \,|}H,tʾV.eCI J)@!;a9,ð&#\iOTMw; cUJcA(D2'`8b 1f "TGE[IFUj67ߏ2E!5xꮈ}"o:O!Sf䝸J)Aq|Na :H=JNO>OuPG|M%:hf#2g㖚@m,οsiñB ßP}F Md*MLBәE}ȼK<ݍEKjiB4 JZe`ܿiNXh֯"B.+uGφ!ZSTbZL/W6ܗr=5oIf> E NW )lWes&^hx4m,˩/gTZuw]7t;A^t!0608pR٣ 7*noqG j0ZE;#E5aXJg"쳾%ww66PVNѐW6ḫljw o!FnXKN_'SഽP;sJ^/c54>&H<߹OɆ{,Psup%AN K76}0Jz. t5#.rsw>M*юN] (tӺ,j.둟+pPi,=d"wC/"C 0;E4C- GRtQ&jUWd89Q<9⫺=ZnlQ[fdMjgqn)e_=B eh_o2&sU#E_B1C#PBa ÊV\i,֡p< E;@aR5Y_fF QTt"DE' Pч j:Cm┈e y XA+V2@u``:!lhXrLK;Of 4JlT8ܿ[)02$:sP:"]XwR 5%Y.['i_WEG%c8XlMYVظO}>wsu/tspT@EE!oY{QLqbkyV+JtT[$v(wädk/}vKxOl7ݥ`SĠvBd JOƫojD)ͭڷH`xUe]Lf!aJN3dsPpA1,/HZ[RI1ͩDZ~JĸNc_u_jz ᶘmS Fk9Gs|eJ!ǬGLP )ᓹ%faio C ʜ<`(c }v[J!yP氦C[aCKz[v~9b=mmH0縈1U9Cl(?ۍ(E4W?I J.f䓙!R:>^%-xOȋMȤf=V̯lTHP%/y_ϷbU垺 !>D $CY] ɳR?yg@Wk^O![<$ɵZ z\s'S7th+nrx 75pb0f|}=?ȐLkɆc'`a?/*7; f!R`W5nW|y4OvcRl,{ՠ6ri~ֺ)p%Nz8"HYw0SEY+8S^WB8B>J,Yh7{nBbi'Tn؇+]ķI ~K麗g{m @VjZMk$_ sc'|P;/1.3SqF4yB{hFfkfb1 t+mZ@F>\鱷0,n+[tKtqPS[CK[n* GלQ],{& g.m$*WԔh*Ljns<ޘ*iD}2 GVm UJ']}fV{BƣY8P5w}mM{^fMx/,hM)u&Vmcz8d@Xi%CW`@1_Uu?)[(Y~.Ɉ+sKdQ &A44OA.I՗l8X&@ IdLFվiFWtې˞X j'T !`R|$JDF_+j|7T$zJ)βI۠8mYdi!%Cމ1X`kXBAKFh:Y 풗*$2:hYh ̫Ko4㝨26z׮=0Y&!Gw!,\ecĠXbpxH/iRK7O9czT9~\LiK)y-~QՑx Yz˥qre2~]bq&nPy;āpȰ0ވ /ŶLsIh7>,LGz!x!R륺T޶B]gAm `*s(C!љ0'U#.tޯ--)]FCpT"}Kr&AQ&cRЎ>#᫔Q{f71C3ֶbJ=` gjodS0eLʫ+|oNy@:@NDet3|KzPWMܼJdEqg/HȪ+pvRXO}d-Mў';?oOS#A\|.uFYPcq::gv7ua[R]3n?֚ʹٗhh#G4a-v8R j20eih\b'B';~R{W_Th'5&1zK&'RԲ52i0 En5ʧ4X\>ʲ'+%k#r tH4-R!@pyF*#d"aWW)yY/-}YJxH&";e1˼K`#4rN-5nb-lj;`)ns*^ݔ@=5yq("/@\0X~) toCddAK@UBTF|z(\af\χcR02 ^?bnCRڤ 2| 769Ⱦ5FȔ CKv.h:?RCvms/o6"*8ڜ)`ѝU9Ԭ `Yk90"z`a{&8_9͂Kةx+׉ ٽ3+ݜ4׵Asji^4mSҍRºKn X;rT2N8fu!/430ϊmJZW 9uݾvrLpT#Q AVFb(ka93WgCRBdjM)ēʣpPȨ)f' y.KsA>@(D|K*'BMu}>i020eӡy +&y4P! HAoڱy1EG6ej&-!I3ǯ)!o_U< ~mu FHlL0gJ⻞+YKIo,.40냿x`#6[*Ld,;53~yؤ2^ eSq>ϟ2wm+r3WT@)rugʪS $T5 Ue/tDpޖ?vM>VJ؎bok}.-5"Q^'?I75m+\9P$IWXm{עq7kСXF,~НA˓ k_7e*fGf* â{Q9~A.-8o8Vh„6xfn0t29:$k:淀_tF W}X۴µZ՘ &)a!<c5=[."=v~gR "FeW?]q&G@ܯU}V/>Mb!PҼ"x%'G}|9_GPd`Ϧm102ҥ8vA D50Q@pv}̮HB:wo 8-}g\MEx[h=7)u݇ d c C`_!# Fs"6NRkjluSC=)r;Er6Q|AR{һ"aD?0zw-`YLa_9k+oiԧ.=0}rYF%8*@z5pHJ|ʎk8KjB=Z5A{3"~v'#@֚qt^yhJK ~3謸R1")D뾔3ľ@(Ysθ[H*wnpr)S_pq5M )Ni+Qb:Y>U[8]`=wC Y08&4>Le1;J9Z@,8 1i!d="<rUJ셾u|DWN ͫksyl"N3C!dhkD6;" [{y|>%m'O>gՉz{W6~GR tk0@zvhFC6JTY`);ffZStjz©cszF$˸F晁5)PEDlȃn:b(?`?TM?jMbFU R5(YO=qiNNڊui>" 11.<"6Jl r|03ݡn2qc:D3M=tK< aYý(LUcŮ8lOF6=?Q%)Z7n|*Rz@t`cOg|LtgN3րqN[Ew$QW2)/ eZ˟|G>^u0RE+snɥ9"2ĚҴDnd-e׃0~x1Ƞq]Zp Bt&.8PA ێs1 V7ad 9S&}8`UBrUR]jNe5'[uw^c+s Vӱ|<K㥑%%-(}i@0iA@ʹ$R\F@u3{HC][ElxeL_ % aF%>ZI TuwN wZ<ݬl3Ds;JEq Ԡ}Э!j3|?Ԉv@r2yc;2 ע vfd~kj |^rߋ 0ZwS{FG:&!mqu:խVg6t,H=Jxh!  _z5aQ;,%ۛ>ӌ 4k IR} 2cy8C8)|ʗבYzGTR|zc6V W~zpI3a/Nh <|cmTo[h8Zh2cqD (۱8Žgeâs;\*A8{c|I˂Бc"5Qbpx琱DexMP8cf?Y`|*&֊/#P8q%0*dK[1Səhg/k֩իC$O4:{4*;vj7Vظ RVkUSƲn4;^Z$,:퇉(]I^7<٬s !> AGs G }0@2Qonށnk!|Zɥ$wOA YćV_lS]!2Dng AXDQn^7O@kDFBU@>dK~wQ+zX|Al{sh:T~<Zc14)xU2|0 vRȗ JNW=I!^c`! 1fuBi1PLe:bVO=kZmSq8^qqI`i~r*ȳ{L8OOC]}</ʻwtK*4~od^4Kf~ڿ3FAE2]q'LDZi?_Vrqw]6f k#{NŰ?uԀ-`;R}[Uiź?(bR{9*qb$:ܭ E2ܚLrG  :iĘ;N$c>EroDyHX|&Y)-_ r(>%YJ܍v;I0>1J]CEsjֳu Dg׋aD== PRltn2`4 z 14e *SF2%s2 eLϴ.Й-JHt2mNƗ/E](\YE12wBUCy|͠>tSs|d3efqb]ێw7B}:X㭀'xzץ%"ӊ_'M|Zk 4Q,hީ*9@L}| @I&vUBNME3jfPխ 4r8-AS5:9w??}1x"ι1IO76t&e8<RERqh^UnOK!;5 >ž>H*(8Mulb炪yԯ];r|ZzXٸzmg0 <̈:qT {x8{!'{. zvj}Q,7_Pcz?!}Eg|^-RLTW L'|6tgTt8:m>swP!ҵxoXV݆b>apT~GӷkUsQ~@"txg^3Ǫ 4V QnmhZ+EWYuxJ05V 7 S>Yv[r$֢#Hxbwӥ,bG\=cI-: Ň -!+tV$X;g"B&/ e՘詘h ʋZȃ=/&5g<~$巠ztЦe{̸-+bE1%)ݹdƢp2iu -85oWb5ρ|/"~rƜd MF.=,ZݩܺͿ5tcd?CDb(S'Ɩ~&mR_]Q!9AZY9Ř?d-Յxtg Vp p1 IpD] c \[8sB߸DܘP%@c ~TP 2RR'ŲŎ<`E(r^3*?9i՞4N ΐ^~czJ򇠣V-5w=& ,rU"Q5@u 1`IwN-# /-9&=OGi~%XrٍhB\A6 }BځxDI\1%Ϩ݈ kaB18w,e~KD)Q4=qgߘWyr b'5Go7^IWz-RNφ>bJt;]G ?a15 K_J/ MW}pVR;k0"/)e}ʐ@:U[ C¶L_((˟7\ߝ<$4֫5R^%,}2;֜&JVȉmBF4>"El&e5&;]C 7v2@eW*hژMd-k{HQEluaw=_Mܻ 'SQB`[)ErhobE~N.s:tX N߁f}/9=̰4+] EM.Ww_S)כ_O"}+YAn'Z$-A.\O~9(ݿ4UjlTXru)L^I_QN廣U"'>QLvi%$Jf64dbJ%:҅,Ƭ׻ [#zXMoҩHN[&0*swtf4:!zR.~@A_u,p#"jlmVBsnԻnk,K_EA gxeU2"D!%otOGAJœkL W;K\-_4 {fcSY&)NQп[pN7l4-Vt\y[ҫ3 MI+6d]~Uˣjcˌl\Y9:CCh1& B$J`%` y(ܸ_ږ{<_/?Ohz~Et.A6dîp:AS8uGl^ J.&1N'f] 3~$%؆ֺ~f-7qMvt݅{VE0|$[`ձ~|xy1/ClP6Yqji+8 4èvR6W[BfAkcjjP~Iچ{+{!Ta.BjHYZ*~f<~/pbĠMns@b:OJX Ab:s`a#{ wL9wlL_v|$]a y9n_h],AD=w7űѻLBNF =KS2NX&8ӜoBϭNFZRv'{LАCQxc;5 \tƚ%r+ q.%j0zs-[)vME(-z3&q@~9JLTyt1߼)tC +Gh 6 AŁ, eU Nm43Џlx%fEz,nٲA؎߄uiқ(Pz[lwa{{*#.:`FG @([Qnk B_E{yP Ey~)k'+woE`u)C8hCpQ殪DN%aM4XF ]v'Ww1;AKݞ5Vn\WNIA^`z|BMdNo6`kke1@=F7P'5oE39#I}vL("s?ӄEz Sάi"֘Fn7E`'YF?;S 5*i'0GWA(:ݎKxݞss10cPz8Q'dt.J'V'ؑ2M&fuF =RG^9\e6N!LdF=>8.Fd>wXAȎ8`/pXYC r5r4K u sZ8}Į4۴?Y_LzQ-5a._Oeڀ͖TsazXp(e>59 jVl3JC`=Rg|n'k!R8&bR4 SKCik)A@|_Y'Q''zrs+yI4xhgӆ bO`9uΞZe _yaQhf kx prEG6>/g~ϻ?"5|8Ņz/dSFq vUQ깏c1ib]P7Z^\F'Қ%$ dkx->2r\͡/Em t7V| )F:rCT}_1|xwÖ*#Uc#pM(YέG׉aFs>Rd{FGTxpa&|J+L !l^*o9-x#ؒL s<&0v3 ]X;eWo'/K#]n$YKR8zwBa_fwjC*CYBj&se$bPQ{2qQfV,V9aOhI0pJЮ`D߮C9xz]v%#"3w!OR8>&i9%ύ_6_oxT M.EW#OjZF^2>'`~%r ISYŷHq]^u-A}PiV-rOwg#l 6ƴ6e l<~~ O9Vmr;JyImjq[^NP u5F뱦J'41:4)슮mQ&, z) a30e-] *O&)!:\[/ZX ⧻_A8R]eoG~ŇbH AmO?;kE, $CKr-te[d1jh uӎ?|b&ˠ OBJYظ~x'˴4T5[l@3rM8|Dz#O񣺬wjcY5 [#9Wk]lݩ5vsە#> Ϋ0JVkoq]O3h Ԙ ӧ@`_"=Ҋp5[A~RFPpd '^"bN\)C9"(#udS5 oK.f$w] oVYKJlSl2ĸ&!D0'Yʽr\ڀH.-@U2ЮbD4 ? 'M".vcfqh9`[MxN_h꼡<Μ0c..$e |~!tL_ŞTR.в`:GaʣJP>V,@,{-@7 (PhA 65EpHRV`=r_w:3:b$$|Gk IA-tݪoќ1v[ٵl02E kTJAܦrmT7E_ѽ{n-;;,F4s7ib`uV' ޱP8?4G>2ĖcHZS㚵r&n5"Bp#$iivadu8.8-PQ(,\Aen&]L˫mvBI:FiTYmV/̼lahgBE۟W-(߷=/{zMAFo]I ¡iیR? }u^>vg|‹69 HW^b@ݹR_p7|0(NoM9P9#Ќ ;dA`'#w'pc^&AX?% %RP'3hó=J]'!G弇b:= `="B8r*VTf A~9r[ MYҾal 3ȺYqdzk-:|#1V_ul+.RIGyYMִ'wq:$/&悽gǒ;x:7+ZJ -[2c*&΂|7UWf̒r{.^q"WhoK?#Z?7!< GU'pW[=̱?:{мKpxhe/C].{2Hn`_%;'P}!r+DZ<$iH32H*Wl6x9ӌ +4%$=m h%֌>u1d`|ɥ%b?EnHa>d "3܂xz[N{tyW",!l$LY'}>_SoY"T _ymDN,*%hFǡ wPDX[QF@ n^${[Q]?ha^J5'{j\W`8$]7= .%rϕ9.݇×Ő#~xFiQ/߈x'4@#)^pVكp(|n 8;=g|?8k$hUx2[2od!^i`nK$+ŭX{, 'h >K@smĒi` ̃MfU`&326ouҀ+?CH|nmxb=&QEt9uo]dv{ &~NEӒpqK )LFG#Zm#+:~IqX]Mʹx> X9,؈0KKJ 7{A㽽͛hʻy z'd~`׌3.t4=I B  a{[vrJ9Кˇj]72 zRC+#x^r =~l,T7X߄X/͋\ Um[@xރ-ÚUk+~<NJ@횡$e1z'6_σڻĒ%I{z'‰9d1Jp \@ '4jAE+ܠ:;cT>xQz_uRL>p^k^Km#JZjɔ,AJWvVϷǀn`wLB-݋mwwUYDjoN ~%MV$Eَ}a1RP{sؠ{@& c,h!:Ou0Ԛ^St8dl8D2K&%Fˬ?%7Ƅ/b{aT)M}D:7K"I޳;׎%h*4_pnE{D/;9 dJVK[tH0lfA4~kMJ@UHg W 0*0H8LY$4Нӕ[e%_9_o]DdF uV3LJz΂*|ڕ7)F= {FL@G$t[׳Hl=&+VݜHb!%EW3H7#蓪(9<೷[y>7t @RJV .N`gXm/N_hSA۠$UcM?As;>`O9P-1stH>/L}},ZpB&rSRBys0N-j/_P$+y+= ]{1Q6ѣ `7 =Jm5={o ln79?`8&G$r V&6` xYSu#Y,& Ŋ#+T9DHx);?iiY FU] ɑ;jsi<0mo20)tD \Gf3::>M=UHf~ TRM{U wC8`Qy>JJ[QpME g'1r )$3^ N:y(ܒr6%^o0-v{fˢ-xْ$65?)D&;3I\!Ǫv?" Cz;4Қ+wMq V4y5DU%->Ӟ Alu3K-`Ua>mH0:MРt>WglR*g̎D]uA&2Ű[Qdi_}#'Az`9,<՞;k_5F<|XḼڅ0)ˠ| +ⰭWob-r0!rm we2@FIvu2z]ygaCm.6x XǴnC.?Eq=nʀ97oRV#)hau|2t4܋;@†6?Q kБ9]A< G4ZzmB\]g'9߅=6h9>lȏNBkSwyf Gnh[j*y~4H)ړ= 5Vv@ Ai&yϬO> Zo,PFw*&u c^Z$*_Fh/,Ȼ}Fy?s;+`4r{8Y>UDcOC\wm|i\ T>aຘz%Lό:o =TQb-XLXӧ+KbnzXrxW%HekPT\pՁHE% ^~} ud8+:I y^ALp'"VgmuKB,oz^)0c$W47:As"YDrJHVRu?1@Opu~WM!ޱd$qkV+^.0<_ơG;]H '6Бi2c$g,j"XE3i_#E9(lH]4Ȳw]uXk_0u^)z0A3A8-c'EYAU'F7&8IwTKŜ|c1jo89K\Q>#>au!ט iuϝg@s2)S@-Vm#)lMhakځLIhln{5|q.zV_Pb GXG 8 7#Dq 6G%-cE-%SlˆxS"qQⷱS';k]gs)LDc%7v`}䯚eud.BKæmβSiK<Uf4%W0$J5< S?CE! b9mjs C/c`qj|pɜ3  Î5DĨ<_/cNr9f+ ǑAݍ  MS+_c>TDgLO7r7%_ËVS8F4n frv-8Xu9G*A(6ut/.!}\ JC)$ӳ=N£2B& !^tᐚNt\΅FXͷ7D`W:)=Lacv3r1 mkv΂._SDA‰D6Ej&N5.ŪP c]Z>+:լl/}0a$,jt柜KU?_͎D"A$ֳ'ŀs_W[؀ӋYU: VsXpDb]{?X*:iƔj*? c ~2q6 psιqÉ@`'ĐQ?vafx 3!Oj)ߤK4Z&ƠRX Fᠵ3G.^!b^9p⹻DLl$))W2;%1:L>H&K!47>?%zW[??$9.fW?%>#>,O,GOJ}(M +3w_*`[ưdEų chE,V gz1JnLpSK7P("ӓo~f0D #I?%D[Q2`; t%*bC +j m|:ISβME@J `T?w(7]y/ S6B\r ͗\{.ɫ~&rBnQbwly{dʶvS 3V&IF]YR?T{^3nُ}/#LB qǶrY@;X)IU?$M4ո^U863#俭;>LJ(tg`t>Ba+Nhiǃ`^%")?:˰ޒy:G7\MVVt;;s;!¢Ӗ&v@ZIj`*i,/]s"Y%6 ih NR6UftGܬk?w +&ɪنtaVmQ &Яiɵc4pU 2 =I٭4waϠ ]gX@;]rkCw0 •Ȅ c.=Ȫ Ԧ5h Yl"ʩ*U`VƊ^Q{I7+LY{1BPszw.  8M.5\ | 1?EVP9S8#hMC)14) m"?H_WbUNv( ᘗ^:*Z]Ur\If6篯 "W6ՐA41\V~ `q]lx?_BA{֝ڔAׯTE,(T{;Ygdֳ&֢u MS<9\cvN?+*!D4_4,I7͐%Ȣe`>ܷ:mmᙐa+})H[(ujI9Rnr ҴqJU\`9T%>+}X#ƶlTzr~o u!Htw0WLH цx<I+Q<,} (t]8!\,=KRIwUOf?ug>J}bd0pџ4AĘ~8̦51Cj5QЯ[&- aAƸ 'lL ±hxԅ)^dP.k9(MP ]u W|n/H  հᡁN%Z]F"+ޮ"*YlP%Қe^R<r#XX?M,:"ҡ|ѱ"Xi@yc &D7H̕1ex<[vzB'.'SUoIlK(-$^<'v^\2Ro.w Ըo=w٦]_Nb2E=jKLcL]@l2|zqb4I"SZ^H/Gepk >fRa'FN7u2҇T\+uկLW\7gX RbMA ̯L`VݽeYk։g *scbu@S 9xJxm`tC_j I~ZL5SVCQbvRLR%_ד`_ӌϬTelU,׏tók2߬uGv8.]i_WZX)a\H+9Z-Gמ_%()cFfNH}ۃ>Ǭn2]Koo`֕cyMeve}}:P4r@ Iw79gB5 bwa÷Gʿ)C0Z3 Jskޔ: kdښd} TІ|ŊD9K}Wt%]\OvCr0Zo}g+,}T6(,e`ۊpͼ~]םL|i؝3/QP|@Tk" k ?y+l}T{zm1;+Ah10A*R"#32iך7X(Va*m34Ԯ8|Ɋ Aid_fڵdzT M(KHoٗq,)@@ Cm~< ;?j8e^TLaukﱠc?\ѻknT^(U[ܛ %^5Y<̼e4tnϏjq6+ܓB)`Ģ7`ݤOe`bG Vezy$LMdXd9mTVq5$CURcy4#tqC~S['hCiD tFa%>e_)  |pe.] sUTn ð\^ . ScLᮈl, k&SzQg뭒} H,7&:^8IL\8.gnZ8? PbMsx$6;3̂:; u\9V6Y+6'+T^ʚ a867ֿVO$̘ C;KZg@U+mԊHc$oʍ{o-N}1S٫t<:/DC|t& F~90&E#;]ؔUxDy=y bs ">OR`s>4ȵ!ℐM%'T:lЀJ#rj*b_{wN>zwl\ PT&1jDOojڱv "N='yD4:H1uM-ϰ{0ic[?|x[o)b=P}*\(PW 7Zb҄\4f'bI\~=Dkc/1+^n7OPbr0l{?#T~rr'+C˿S~`b)duP$M0!QVM.*= ;y ǨE*Kە95h>@hZ>_-',װq]4IAI>t?Hĉ .b4u޴jƭiBwvl{Mܻ/hh4k]]z04 ZZ{ v)gmvX_6'͗0H|Zxȥ,s11wprL)?0% Ig^\P,y`c^8`l5fY:֧9ehjzBe}L6~oi0eⳛfpT2ơdyX\TW%T gQ:4+TckE*tM怤4R#6p-eb!HD509Le5υM/wa/ Fj-^:o%0"X܈~1\GVC7ۺثUQ&T{?6E˻KXk|{)'i3 ^)>zM t gOhoS\ K|SiqwG$aID`!QY$RVv~seޏDS.S+$_לD\&Έ<<,nhqr)gjG0LJpxhJۄ36IF < gߺF>OL@S"i֝GFv(ԈCAAPJn?c EJo`d +ԵfԞ%'\GMlџBȢT¤1pZ+'Nـ*~ |*=ջBQLb5qJ-B3MjUHϚ{ӥS p;IjBνmԌyML0<:)ȟ62IABL7yK1V!ɝ27UH4leV֒ұfz!OcZĭK83\*;&*֦ݣ>qs d)? ']RZrh4FTfZTTu[ ~o0L- K27'Poqlc Kg)o!^A! pPFlARZ?f7fod'\O:jw7k" JF" g_[;8j(֡0+DO<窙!a)?AxiTT(8ԑ:nV+FjRn$n]9KHK[0x\I-Eخ}XfoI` nsZk90?(r'@"% 3,P Q(+ܐQpl]\$g?' O.3/˨Lx`Zs'l*$kO_{nKy$ObMĂ4/5\#I:d#iŊ*^0L< n23D KAun3Fm9e E^y>Y7qXuF}/ӖM@Z%" _zF}业մP%e4Wd?|&e],V|"ϭc#ၺdF ^D^ٞy 'Cߨ{Dۇk&ͼ,3H_-̪A+WLd龓iCjS?Yx ?_n{:w3쨶 ˇ} 2%=V$z|)*-޻ R9رO"Qͬ}fc]VL9ED=u0x6/r~5Rp"Ԋ |A&dgJB͟ʢTnq .:\eL[jsB&, UtAT+`a^rH sE䵎4* 2Fv&/8C;WQ~mW$N% Qd .64ލer/wȶPe.Q!Yv\G7:>QM#c6@%Xhp,҃ 6Y8޺.H/:5u6? +`&g.dbciEXo)>irV6\,UWųެ>K"eXIUa*`/_ PZ1!/tXIDZ+4\C(#wD!L3øi}|? 1vҸBEZCE0_10MlaV]W1'KiloOkn\ADz=`Ԍĺ$[DŽB7.rRA5 ξ*B&G:M=U]U -&7 v;2&TE\mcN% CAJ;LʥۀܤG\wkL3gn|ڳʱEoǑJoK^O{҄45ֽeق~hM6©}\6kj51.W f6aS䋵 &*37sƟmӜl3$SOv#|O2G_ȠV"26f-8֦XUT}jw|H/p*./Hs.sQcgJwn4F ]dl?SGk OBzD,\64Pp?2LPuiw0HFvmh㧌1dY0*s_#RAJq59VC2Fz '7&yfT`[2l[: zѫOAe-hPW^nٵ5c@X)%.X/Q"yGS~@Sg5VRgCӬcOƣ\B<鮅9UR7f1uoXYFDzO;p8ѥUpvV@ZIm5ٜb I0|E %qPK?ۙʂ)87l) |ٖd0BʴAhR$-e+yt ZA)jjTc*']0Ӽ)Q&~A0kVX.4*gujz\^R]MQ O[ 0))i*Q) qB#mrG$ Y[ވ pJ{D~u)&GgsJl}w|_ӷV_S:.*ʘ| %B'sѬ>G2[elT#8aX=QF{ #*U#VH340Oki-oךμ) pjɍ;z\.瞁q|b(QěA?Q1^ܽ폦y*'ږkj6pL#="!i=HeՑR"Av~e'-!T=z$jO9bsO$Hk܈flڧǝ+XGVb,kv4miMArޘJ墅AbM|B+_mOXRI"k':hq ClG'iPvj}@2"NFj9Kh~#P߷oiw&*qU%QV^Aq_Bc&'CӠgNr$?,:=@)éhfV-:H zԘ}'k$Lpf۸\Akb26cV/)@bz(g2J &P"SvY$WJ,4:kXC@'+kC-_*嵎* onm;_/akRkRF|C^ 5aDmoiGĀdUHF*VJLhqZТʛ-we{p^]' ג7y١Rӓ d0lLE95B8TʗщϻQ=M?ܲXBeKZ|<8w_c|j8N@ns96tY< m(0JG Cw+5HorV*2beUw$꾄W}Fg4it,ՍT2E|9{QiZ[ۜXRs | Y7A?c#m.]4ZEӎNznBКD&ʖ;)(an M5Ű%z{2#4E"`raV['@ni~oV.V[|Ԟ=a~ȧ' {`vkT56a$V8œt?NGv`s`Q4 6?*m.SpG_WVVUtTʍN&&tƭI ]oGbkg9As0oIsC*؄pÈҜ+aK) ~{x;O*]*`'Zy ~P{7-rIOqTISb\"Gw݄r'12 c> e  Rc.<.躙kUJ7:5Au$#IzP w@+!g4fxWy!ͦ@^wV4Pʃ:5aS6 {]HNk&0Y@b|CzTp4weeE_;(R{2lpph1Ը6Ȃܹ-Rl4"feTϘa5)2h2U?ݔyu'(S]Z WCM6#T 7aܮn%1dLjX2ga\p₅Ѵͱ%EKG3Q4XaQӽ!'u쭅grUD3椛`7X D c^oz_V5MlkPB#} =dPJczU +om $MYOgtz(3-Q㒵fjZw G{jM@k9vU1mGceU~I*Aa 9<6aO~fp/:hK}+<%F?4[hH$UMy0Qg- 45F30J Y,VuxOa]s /5_x]8ؤ+ +t+!^G" 52Cd5Hp4({F(Ұh[|Jf?ye XH<_&B %a1y+Ntn=oCľVӺfXFf:on ^gμPmRhy&Me ɜ.U>G:,it ,ۭ27gSQ zU& !YW˜Qx~/zf4DԢC{x1 S7}7#-kI>V4zg ĚRTzp "p~yq,)F(̺wֆg,P1q&լ}wOqUOOfKΎpdl@=Ll#/.'v900*4RrDկRK\j8=" G6wAsXr???=x¿Av(,R])YhFkKD,4{rv)q)85m @Tq/ Ctً¯:f}swxMH<7D!;z@[ 8EFBH^n?l^Q܊eNj7^ #2X-VjɀG1VS(7cA*Ċ3:+ޛC.bG4ٳ_NM*0w8n ,Vtz[<%6rg\* z覨Z tdSr xn_za(/>s\x3"ww5um (l5*r>C?P$Ñ-%b9[ [ha>_!1ʋKDž*$l!L! wľy ,i(IFE=i2d0}xeP;'gYDrg\qQ_,^)Vp ^B"y T203W&h,z&y꤅L|:awP`\}  -vN[P۹ "2IM͊6P@faihL- &T#hWm P㬭ԴCY6KlԺ܇9jT>KBM8CࢣWY&? G8jws{ Wúo:2_66PQj?eT u$wۙ)k^U@y5$->^)ouba·am%9}h(ڋ)>[ +d}DŞV nƨ֣nKdꦣui}1ɽڜ;oKzY.5`p`6m7ڏ-30ćfOpyGY7) aGRzh H xm;9x Q팃LS1 YTKǴ H(Sc[<1KD yճc.] A)@\R^oԆeb 꼜f_wM5@,nX>n;!:adYzEMJgs>z'E AbŸ8,4"6jb:4jږWH2D.V?I$x/9OR2i|"Lo V/)CtJvL,6U@k4 XQS|ڧ̬db|"1[56vWX2/I$ ^@,Y6c^|_{cd00%-VUri`jf}m x`N͇(' ▀% #efs٨7§LP ?^N~r\ЁS)g p(iKw.% \4ooBp{fݯ& ;YY$y484 ߧdr/aPs혘2& B XY8 vf{GSriS' svK}1PWKȩ&S]Obgϔ rX-X݌%̈҈C߈+X^=$"S 1yH1 [V6ٞls%臇S6M<]^֗>>鱛 ` !oZGU4eB&C_* ,[;'vu'wK6vK1+7=hTI_= @1A +Eo%LHҸHk ޻#E&^|vVj*Krp%E+7nd1z&}9tX%IvzW)._ hy駽fJ]{¨< G\=!yüҶxcf4b9I1Jպ*,%RSS{gĉSWQWp4E~no!+QP!NQL?)C6 7sܔ, MѳMˮgb`ʹٔmZ}:'j:;{s~eXMVBtSvvlg賏MqNe![TSKk.2uQu*rn g{ZZL{{|f-k^HVgt+" =>ns-p?~dfeZZ$*(;Yԉ\?-(r[-PqqyFLs>-.Y KR}uȑ[Q")Z[Y0}ԢnDBQ#Cyҙ:VD -@>yͥv :f`Ȉ鶘5_+ ,Dfs87*"rhѦż jE I+=w bKmBG3=MY2MC2^Jp%D nw׿M 0zk~FD-8Je0%98$ӈy iҌܽu1 $ "ײ((7  QefXd4f(mf,wxM\u,| x ]t>Eh~u6сII7˧ʖt\oxΫ;)(@+0$v r('+-151D;zKv[ WzD7蕞=GXڬĕ"q00i^@K_BZG[IJ CUE6X'4ad˕ϰ!$F>.đ%RoT#.XᙴS]2h u{C߂fi  ,&Lc~]4djv)w@?!ճdj 8;hh"m{-7u;L?=0G}kgyM8qB^ #(YpK&MB?R@xZiĆ^ブ@r 19~<{Ae(cE\u`vLndMIX\IxXV}g.+a׳drLN>C1hv9Hv;b_h+D(δ`gd5P+j.cч=kw̉) r+փ>w /p3; ^ypP2+[2&'#RW(lmٚSj+5! l18Uډ]tYU歹=yզ5p7>o0ķ<Κkfr|Kճkݙ5SFTgQs@2 8Wd;_b'z I۱('.ʡ|ހ=FɆk ܕZ?pg~z;s">0'V"^V jY7zֲ;n(:斓rŢ>^',~PtͺSST^Z@譡yl*$%fl(ʄo>-$QS߭ZMm#o>/D%VKege2q~M{tS Âس-qQ.<Oen樳:qmͰ>58 KH,%|6uE|xx 8HmI,RPuc.=u jf({_eTHFY- SꮆYWʴΊ͝,ɼN9:%>dL-3{ѹ :0~9IOQ,OyM+fnV)k9Pq}8a!@ت]Vrpo8Cϵ&m/Kh" *k][ `4:2"Xe"rLB O5QteD4iS]zMiw! wOw4Tb4~|v',wX= ")9[>qʹ^(3NLF}YP "SYF#|5ݤfV>d[q* M]cF0"d'[ v9K٢dEo"-yN>:MaP(G(;|Ox3L/xy~ :_%R3%q^ۓB93&F43=G8Σ^3Fzz+W.;RX3T('cl37J{`c-|_7/saC,.qW+ mP>[b!i큵 ,uH!%`WBf.>f9hN)BYZV͚pNa |3Oᡬ to&A~k3(" ORNEtS f`~Rm ]=Lniͳ<yj&e}h|2vdIX/M8oiO*72kb*[EU?ƴw8++2gq3h`w{{"l H=ZLqA9ݟ\Ĺl#UB=^V`Se䔛uF6jq9.!Ao\*4 5;?XUqഩ{aKxZY3[ϦҖ{4A+iwޤ&3x]| xhVv4~\N]?ǜ1 SxbZ>k/yQYa1=_Ř4:$VX{X%/um``kĺf K 6t%|LlN15Rb;"ULy\GxApvpQ"T&|!`?;&iqQ8t2y<1 O0&A{W9244j`GrW;7,|aχnY@JXൃ>nD)a0<(wAw zUU*<+CZK~ٻqg޶oC񢭼dK)m7<# oRf0q:M#Y!o2?wOP@MWh hElwz KLj01Ď@>!Mװ]2fO̍L!x-脰z1_x`) uA(y8 l'PfKf03{3؊w^,D拐5Y3r0wPB ~Xqy3H[ M}OmLs]eQ̙mDw[Pm[;&I+~O߾8e@w5e.23b\e #<=tpm%l3A6c:4wcX+0S1"D( P >EAmm4H3T9өY&ABSs](;oxj#YH]Ҏ[t&k*5v(r,rKoLoۿCqE ۯ$lhj-bˍE*3 !;vָȮRl<ZڍL6pgZ25ZuoF E $tzB!I[W|.7ϴB܌(E-\+: UwDqm&<ɔq gO1q󦰟`"/ iR-58]ZOq$/8[?@rm4r{& ]VWV{QWPkҥ* *?>),P2p~̳wVpHqm2~y2fsF@c6Y >N3,P@^(cuR' 7÷ҴT:iZfhB KeϽM!Vӛ%aDJ;xp|n~'O]Bd43e5D}jYBV%:i3!:Y"E}W1Ht[P1CЍ6J+9lлФ^SbM91l]s6 T䩔eRфX u"#]H{`Q87] S,4B"YR 0E 6-7}WoٔvZvvmZk׮уZ1#;u=][l^9(޾q/ANmEǓ_)Nb0^'o?X ?MԴ_Az)rC#昖+hq&8Q䳏)YANg)y ĺa!6;S&p]u߮eR7͂?N>¦CH3l@rSXAE9J9ݡ>j̴зPL2on|p'0 ҉ke X=GJ'.cћRޛ{t^MD։e$m.LD+(tTkBIޕjs J]m.h0s۬gRs}'}dk=?d!hw]i_'.xk&C.q@ <ݳwOi%!ry)c`3O`>Dȭ܌X&^%#ʄ!J*54Xrb:(r}ZߥPy=;s(nJڡ=aʾY'o(.Aa]* ipŹ\fFA][9fa(ɸwe'1nQLz5W;hSXon-ڜ%Vu,4Ru`6AqON*L;ܽ@kǞ-qwV,xA[d{^bp.ckȨnE^)+DDn T !OOES\!5syykk W7{;9<53<Ą`˰8B*F;x oIRI;X+p>/Ǡ V>]amύKK1d"BD Εejp\EjL83)~95,5Tf(x4u@,ض/LyY?"dbkFaF0Zr/ .cu$1_a/ĬwyV#S~W:lՕ>idv3%VGhHbտ8xi+/aSEt smyr}:F#;Nן]}h# ; ;#9*Uso8! _7=:ku3)"gQ2"/fUzx\z|^+Ȋ%\ϣc? 2@ɪtl,.$Rd~ 6D@ V{*)騅2Ϛ0ũwhcwۂ6GM}!WAܥ ƱKuWs)뙵AƊI5c}Y~mEZp(x14& -֊J3- `7W2+"{9'HO))J0AՑGtnrD!h0ʃޗj}oDw`ɬt[@g9 %WH9*m@U gj1 meONv" ͤ7qvx!0kωGk9z4\B]lxVmr3ӏwIpi4eű;!f> n7hvgWAM뛫JD/-|vpo7Pg:*Z&$fh`4ݝ0LnN?=&E~V*}0qT pJPΌ٩[/ \ժ@)Gb$gZwXTa%xٍ.Z+PӋOab.7C(c_!{z\+۳_`9479 FU*@qa#fZ &8oѶ @@l^.UD04sA*Nٻ ?S۞m\_r;MzniJj;(!JqbuB@|PgDea{{(kL#"2W7|Y5r۵ :A-rUήëlmsu׼ @NRJfDAIE'ժ&YMxY;DKمF8|!¿*}Dl8mG nsҼ.#/)ƐKU$i<8z˝B>M@ZXpD "Dȁ;X~uح޻:-x=)iWUr\kDr&D;'{ڻ_ 0QM0)CN?DFtJ1Z,Gu^9:ӒQ{H:iVd%SqԎ~U? x=߂0h=,42ECDM_÷{{H1s #]Rŋ\ƚ8إ-o.KSJ8r3*HZ&O D_|~PD;R]^F8+UAރ(~7Jr|F2DQ3T&&iM$QT{FnX;F H ֗+F9,N-{TeLvXrt#r@@v&g}|76dg W,yP|<|ycs~L\ \/wYH#} 7Ӷ@/72矢 VepO·®ܱsÙ1~9]n]a0Uz}j:I5DlK+2, ܪ{YkAxRW#pHNr񘋘eQn?P$DE8,uГWW%ЍCʴߊՠS #,=>ĕi >Lb#>J1ϧiӌ9=BqX0Rzm:;Eټ#LnNa7Ah0!KHyG=c%LfN^prNv~c(hzBmF<Δw~\>GIs^" Wg}WK4<# K ]R8iכ͎!͑ĖQI_:A I|\'Ikp9p&"tWڑ"W{DN ߢ{΁fe H'@ { +9+pvC$hd$Z$IȚoU0 $ѥA-'ȏKctnmh AE;1&͇dd4i aT)b Ufz~ ȥ*_;9}K,QE2΋5lqde6U q bCUM"uCNw: *a-~u2+H):3 AjVᮭě1pû@- ګB,S?߽K467QٴF5r;)E.~uu~#ۂO>1Z4]E] 867ؔU<~-M:7@`s|g7h1ӉXIS*\JE7}8Jg+- \t_eʞ&t{O1pjnB@JX~Q)vk@+/._:^;+O,wzN]ͺL.3-R?t FenCީ<LvƔ6l7T52X_5Ky3ͯ|-[ZW=eRݚol:[Ɇcᮖ֑l֏W~>n@ ZdޡD'7'D*||vd :{O7Kؗi@(G@)UH/m4`,"'gO5 s(. gd<##vPŽP{9 Ca mD B2ėhqd7`|NFߋZZ _B5߽@{ _(Hʖ1Ry;mGnm"8/um+ ~'i07[b6ПlvTeE62f2/A'm o&܄X'JL}~Ҫ !~N#8>5~^g5U1IxZE]> +p_^F$/Dj.c lQּes g Im"{J'׉9mzZb:}"VwK< 4c!b~O)|@p72aYp 2'iN>,O"3W; 7 wc\'zhpٙ65Lؤt=[5]~}TkQ; 괿: yã_\QgbQR6i5BoRGR3?WθG!,JQg^eÐ*Kj#FnE6VY?_)Eqhb?u.=:ԫ QXtBQo ;J_;&X+ "r5eC_ep~?X6/:Zݛm.*FS=nKNXo62/#p4-_Ή،{4D!, 0&p)bS+1y|Ul0TQ&GR@~OqyˎyJ.e&Ps63yJ_^#.?MBV5^xR I׃ ^/Rke;_ R8ɽq/@`UX~0)9Ϭ%)G;ep#>l@uh60r :>~&:)1I;C돓u顇M]KHljٷ1uJ\8"Dufv5F {7L(vI| ~ƁC/ɼ.h wk4D4v ҺT"HI9^MOg>.ZV;9 lLahɏ}we r1uDy3o=X3Ǥ;aT(^Hχ xzVSlDFfA Ry'^&{1*iK~'U8W{[!(> u_[#"% IL"o8?=k(-94 !hk`|8򲣂 [OsH,0T+a?LYLgHd$.oj-ԧ СrfjItuVVSoԠ, oda{Zxkde7N/l|ET1 ypX*'a#}" i7)X;[Rw*1A =$5VOXj!N*_x"/ܔMMn /Ayz9yB!i}X!eZu!g;YTbk_qa *p {͎:p…HqSJ rVLmQ?2Rj1Rщ%^d5[IۿN&i NXH2" 3zv @nm] #BY'% !eO1m4)P^ԿRRK|00d#Yi?Bǘg+-Q+-½<撸 ǜ *ug 1U^Z _c7I…4CxHo7r^a'bXqˌ@f׶ePbe^ 2 tǧ!%aZ }z;@kçI:(vk_ 1$g=i_Xqm8Gs p??]Ǡ*ӭPhROA7^CU.#A;Tڑޤ"Vp>R}&ZfE2*['I >qRm .\~Cָبq vW}%+] \[-2fϥ=@,X+.= /)ܟ]|`ȗ94bδ#}B7oUj8 egɇxY:S—,Q~[ҫ=Rtr2PB}NtBVR"|@̟شQ=ӡu,Q S%EC(n<  nnj(oɦy&IA4s;͑M{CijB駰y #&xu|$cbs:E;9^ZS߱ DaI7񍋢xbևhgR3& ėO\M`-OW1AHvcxW2vTK~TƉL]Z~ccg{w`sad6'D]W3N87W;%̹T蜯0 sW)bޖ*u)>h YKĺx,qbj+ZR}RG9$: o,V(8Ħ CsW[&L\$rʧzTM7 gkqn<OAg@Գ4mDŽ} yP,bnb%}sd-u/]# pyjHK#o* u"mD" Op}YLⓂqي4Qym:|V ̫ڑa4ߊn ڷsғQ/Ay_1r"Kmj2 1/iZxjFLd%2O<2 i!~XF}!BAlYG6\DZhrU4'Ba3/P.cS t{:VŷWy $25=7 Y4w0a!^͕Q} StCWcymg pz*Q%i B]5W 0~HTYŐl?G@.G="PO]GD |%]_턄pP'F Q!zKZ#4.͹dTE<|/jx BNC}@w J[C|7>W]è"W(D̆$Plm/-3|A]$((s`KbanW+no~Ls/~ߎ<?k46bk}Fl4h+'aܺ[5-d,BR9*:su7YV|H#ս[̅U6ذ-q{7Si;أ*^ Sj7#;N#NTi>qek6V?W5`+r{c7.K>_PN!KD{-+$>_ ݓ%𝄙\U$m?x<@;m@k;cb| EN"4}8k).p#2l=IX4h1qNXM/Nh+Tly?azPJ8grΈ8<"'!$I5ԒT0PJwR3; |&~І.sX}p3AmD=gR|(^8Rh3bnC/66O7LC&rYWd q=$&SHY0A-/ތ4'P:f+ą2fcKϯ9vrF}p'Qx#hLПn2XVYo6D~׭͛6MsAq<*Fo ]0gXD}<:͎:icMeߩ-ųUF_=3Ѱ A@U߼ٹNSx{MŔ\Z ӭ`eY̪G*2r Z?&Yz_KGza{=k*>,%>50PD!ʠAn6XmjCA! Poո(7;0( K., n.bp M_=/7%If->_PT@0אCk/zb8_p$56x)@m ŷ 'n.CF]b Ov(AnMC=$]2lBuV|ې m\ڄ%6W0>AtDf}{rݨDLL&Jw}y{pQQ` b!e&4H;B({u-")Y2/  |])N ]dݥ77; c`]"AObGF<>s#M4#̒#jρ}-  Yi0Q7Vwl*p:4=i=EaᙺghgK%[w;(sSDDӰ$+Q+ƞazo)$Pe5oB6 ƬC~Y-Gɷ*-HHsw2y!Ҹjesj};hΒ|}7ޞKREBC_3+o:"$mڝL/Bsabi}wcYo^r8"yB8v͹,՟z?^T4MEu=kx(l6/+%d퓞e 6@<R9Sl3` 噾6'0 vdI t&ւoZ K1ANz`qϫ!iSDf,R3D Ξ5jMեeNS/,yRֹh>&@ct@t7<˕k]Yx{}Anw+ЄQb#>D ֢3u4 ;ؙ)f{IJ>S\?r̙EN/hbsyб8ZD'GP3]BP]7sew-}"O¸[Ɗo:9 ,wЋ:o!Ҵ '%I[Bc$gf\XoFOrv de{fA`8av:/OA ,:&͕a[q<޹j;"sxkfY5>.b"اXJUFp 7oi/O KR9Ug(g!iX\J1{ڭ0wG3)€q?O9BJS6rɈ'I`s\68]_\DUY),',޿hSowh2;[WaAl䪢p3E-*^;:˔~J]^bYxq'u?#-;9.C;i3e-趛6苴=C+SBz.rժf5]Nnwa=b&_zJEovB6~#QnqIjFX8HĞ+ئH [۔cg䯋@%%\~Vx`nT2 (->ܹ"Y Eui1Uee_ɞIܬW+e]#d,0|kõO'2zwCkc5б.Mqg>8;" 밝p6w^y$.';Q˒֥seo{ oĻ[n]rg.5DUHDoZdС &)6Rra50CuohC$2Qhi,Kǥ{G/nneg ՈQ )]SR ]^A*,7µ@PjNc\.ےk\b,+ƃpЩiO;Bp)hGǨ#b29QE_5E{brLnșq@zꎯl6Rum+bmk_!)qt==MGt|f2H^e6#it ["I|6a-C|,SB?Y-4$.e&x9}1:\;`ߩ4ӵ>ƠGH+wzdAQt7 =+c:uk80uQ+?ЙS4:IAua#ӸTk|Z|lipc(CHpnjr f>8ej˿~HOd'O: i3htl,"_Mǔ7"VC5_ 7eTw6/#f""2µ 8" ZD _1aB1G$v`|zsi3AfgXϪ  8!S`Z̪z9vxj"܍p$i?iw h K8ckR AӲqnBL/G$?|OTJ,AFL@g%VIǥ0-^"G{yeVw9Dǜ5wxQUZ^2HC|Si_<۩8M܄"8y-N$SGMϵg l>NnO?m7˖EvEEfuD wN ̜ ̏?'-l "[%֑C*չR$Rm ;U o I%Cm4cpR/- Fb>ٝcS#Zg E3q |^T Im'/nWT5 sȬOoZEul-.6Eqd !KsWSjzkƋRpgJC)7 {d`N̋R,;k461cLY Z^IF7a|_a׳rv)LֹcK^~zՀ& p @MGT>ntF=C3ğ) UELfx6iZ]YÚTGVX͘?!e"߀jb&ċpVԶTWQvi2ىkidna] cDr_J1,ʵgFG s/q&$3L{:`o.ⷥ3n"bDlzʙ $Id?ф\B~C, `;L]W .7wqpd:$<̧dUwQAl+SމE9QD'yn9qR<0Z%-TLD-?ca.(ĵ(Q-l40@A ;T&ݍ ?`-ӻW.(}jvĤvWɔЯ8m;}{S?2gHtw1 ̕U68eeieh|GD >[0r}DUO X'FaBl?ȠYtdCC`paa;kJe> ư] ᄮ$V̲Q:})* G(=++l`<*6љ$띏)OwJAqyp19R[Tk'u:ɭ1˷5D4Wo/e$ܖ9=r"l P 'uD^#x.B(v9ҷS;boto 0r U6^$`V+WQM[^QK"%1n[?a7֧BY!sy#Ԍŀ'=;x+3 R ER !m(W~Zfa p.Hm/\z..6 ЍUh~|K ^DI71 xtfAsIjUي@E -V8U/LFցIxlȃR#"_v88nŘB寝UD/Z1r))N3)uͥP&8+9.erzFwHu*_mhBILx;b2t a8XḴ;Om Ip"c_E=v~Kc2һ474'xªB$rޚVVLQ<X8G3\>f/n߮(VxtH-M}$jۆ:.14~` E%U Ӑ q̠*oL+M+U"3XFO39sǚrSnw)VV+ˢ=pJf]{cA ]/VЧUU֑H5"35s5ÿs7c4fS|@Eo^2:tmmrTTrS9oOWSF/x9p/L|rö HݻtN> =7Sb8B&gpnnm(f$?xvwIB_X:>72ωy8 tjX#٘vmNŧTyɵ߲Ȑ߉t{&{K:*;W9&-epLw]3{TQ[Q2tRjsħ KjkhXo xpI98p2ڨϭז%,"۲xrv*eqPFXy_ PExفIDZ3h>N*#??޳mU@8A<,B4Ui(LVaC0]0nnU{X!\ {F.rbh~+߰:H+Xix``jZ[!-mSRh[|f_h)ͭ(jHfrbsW*q;\yea#A>XQ(e~ZK#IMoUKD_MGE3{X1vM8עviC8 bք`T|]`H o-]G*8lz`37z*c G9Q)IM8"N@OZbz!$L?m4jsz}OQ QNWH-^{ lݵpG8zǽgIDuu" 6bpB;7.EU%F Sy8 0?ă6h`f\XoftĹD.[L{_7Oe\5 zX\ŗYߗ 4dm ;'i 0W2Yeo`lClkvqioڡAYAx mKI;/SBxv 5556Gi[53D/68^6^8eUz$@#FhW4T4z/P<^}-0D:eJP 189G,/=IvF bWmDP Iמ J`Iw0ȳ;Oa3cK~NTKTӟ}HJ=-%+e >,;N?,Sklҡe+l$]dF$N}stN΅o<9tB& (f Xy?],}O qK-==̧œ,]/A̻T #Du%'߰-Q^)&ULaD3W0}"&1AMM <''5%m,@0gN!\JM%D)%Q†VRwr_ɷR(Uԅy#|\1_ 8‰ॆ!YK(V=m>2u&Sy+ħ7+V *%7ın%-CO}qCB6ƶDnwDPk--RBZwVuO 1N*r+2A.4oxAab#cgZ.B=1jSS2ܶ5dIn 3,Q $otҭP9FO'Eԕ 4X @?'+iՎ,72 3_"vAu̚.bS.s+&uGoM1T.D9Xo"uF("sYCRɞz붴p=ȘClO`0* O _L$H\w!>ܚo0ioW5M*њQw2Yv l᳢=젲I0-AJpd_+TS[.$ ,uӦc @F7L|zJX%Ơ2yh"7Rڳ=h'1\1:1=R^5` 3BcWd]ٓ|erU`s6h_a1𨓻krgU:#s tT lIu 〥2u-N-O((*:gcRӶY,87?q^տ-ȟ Uf_MG=|9$hk eZ+}L_`q|h䌤iGrVsI?Q&8]c'_"4HUxb'Ad/ѷYVpzԎc9熽 Xڴ2 g5Ȭuįv2PeaWQw܂GTffvP|EYe!DZSJ2?5)\IrtFPdW L`46ssM=,`zE^o[weB`j}~eaycdR.ʪ9Χ&:Yq-^r3 fJ.$ % ȓo*1)!nH7ĩTxiIh̋ȦE;4RJ;U=dHShf\k䥍hFeU`<1NH n';wo!8$kШs 2 ]? M PgO< *͘ʦbxe!'kPLØ_h_Kjɤjq$S^_d X=t{}0ꔽ݋7`fL:ܩt5Ʌ3p`N_m2#]S"Q!t.=H_=rPNE߁؃LtiUca{iQnx/9JxS_Y๜ƻ q6H|g7`t]_2"]c P$my|ʎ]@?L+=!^S?v"]#C gπtdUs\QW9,k_US`W5z`N]ls+V)-%X|z0o$onZFYQ6LcSqH״رDʝf5p0t3\XVDWF#Lg,S̆3TZw$;IzC4Xcbp4 3WChʹ*U7jBWn`*0R~k@S4t,Q|5W5QOvMe8%)*q 4[h0 1%:&SM7pս -B\m0-".還3ت\_9Ta1\,Q;k'@TV⒮H3ۭ> >;dW!(ŹU*"4ܔ"5< ԱP+7q"5 36jQws8*a==NZѵԠ^GTlIs]zLRNh }7)KHb&; ,οb7?0T}UWy#dddvu}O.sYXYc7HѨ.NQ~ǭcAZSg7!6?O lzE^*l7r yͱ([ @UId$^)X4] a+!9wwǪ0w LCz5VSfN0hRLcI$$S0\7@,^9AOGv K6/pDU iV|r5Y3 屺wn*@ ι_an $ 2:tԕtǝ $56)}HJZDayFJ5J9Aي~qXOVH]CwJJs<(@NuVfc /;"D~kozaJHM?{hKNe1gvksas[\c'x,zFX"23mL[r3#>V_HY.Ee5"qp7`b^*G;R T̊ÞJ%m -Z\X=}LZqfedr!g^R|7bqfWV*$U_0@AT..p,d?w͗`'{ H<=ٓ;CK`W#G{@$%  x5E4 &;ͨU6#{+9Dי1yvqqTPw顇kdw0#U}7u0Xckt8 xfH6lܷCY]Z,"GT Z4 Edf59<4`j])ՂlJhqLU=a%}"I ķhK ;r-ZɮVM©L^߀ 1J/=QD8ye (:X?aPk59`]T€MFWryH+)X&,`5ه'yZV2yaB1ۓ$!:-#V5B?-m;;ߜa^ 171! \sjjoժ`֬蓋I?ku į&:NrkJSbCE:z!s9dF8ُҢ7@/ *_FhWp[Ծ3_ׁh7ZBBaL쪵rtÃN%U6)FvQx`AAY hɣQ%nxMYU.MƲ/XgCkl5gK%'A(x Ǭ >U5- SM!Xii)1F)ԋp^ @nb\ܙ$QFfxpSGm~ ؕ5w@,֫>9؀Iwr]{ptP(xWAn7HRqGU=Kk>O9\R|SEj3F~8R'pBxZ :'U⼪!r<ZvMᰟo1Ƌ+;uϿ(Soy(x ٨$80Fe*Ҩ#\]K|۽W˾"Ӣ*kB"iH_ˍn6܏˦Ɉ ,33zNT\$X"DU-XN~JvzwQ L@XZ"]/74j(kȓ1]nӑٞ+p^ՄM|bS^ҹafåߙƁLhYax3CxVQ\Ny^j3! Yǜ9ϛELU|(ܧ~ggt|ũ$*n9FRl0 r~2nvӍ~ޕo5/<d8hxqH vcjxWb.?Ee46`V #^kr~sT-Eu98`o)ptFd{nGh^-_Wv;W4d??K51${ȗ'MMA %QR=Q>Xz{uW&CTn1&kA n|HvF 1(齤ej~8%1)xJ$hW0`T+u/j{Ɛ-DtZy}<{nDc[+YM~z$Tڀj#w 0vZg;;?I%k qB۟ Sn-ǖqalb*\--Bm'迋M'FhB]HBKw眔7}G|`o&LӟZLh{Bf&ن́y.Ch){TdϦX2L/H:Oamm7Ω&OoP$ibXE9_]!c~R= *!2԰vWVlvC:6PfF^6[?8T3 #c}LX4Abo%odRc) )fs ~N}Xoe(L] Zf,,X98wg}a5brqYc R޸t$膀Y@U-%%*-V.GhY*U((,"Y ^b/)s2Sn?Zb99hlʇC̨UE~Eŵg־|1~)>z\=*w_ ~)+A؁_fo$ը1k;@gpCOʻqФ_ !掴N\Jrg5ڞ>|l?ؔ&߁N,.b[7^T_9-JGew%rV[:KPŠŒӬ{c aB"FSQev%Qc17*5/Z.`|iqm&.Zhl U`8i|(Sy{g܏əAJݑ?e' @ɏҼFL{ďsy Ql5X?`.g2VFdRQ Ve{سmVh'*g2_BQ~]R!Ջ]]n$zX G5UC/O<>BB@I>ip6da(#y w! M&ߵ;xfۯXSLx `,0}:BP:|\l={=^7-n? XHj\<6*y4XxAѭT%껏0[s$o.XY] :|>sQ3y.%I\ih[&dBZd^K}%/5 < *Z&-Zħ3Qlj#H ij ㇃HPoԽil+#W@ c["{R<;r UK/B.W ?Yfy ; / vR`%upT\g ^@jg>:s03-q+!5$5v%&RՏt%/Z8];!))NnJyC*ˀj뙳ɋ)mLU_`~L~4BmCX.>#~Zc泠 Lz ʸ+M4n*,P24< (s7o+ o5 ."! ~i"]A t /bb ["f&q!;_xo+JlM&ؐCp1)~'GTg;vQ~v|G6sZt#=JsG[[g"O%P0NنtHIqbXЗ JIW'(-# r%iBsUfF}QLu,IefZҋ V&%hBՀT.^(vpeRnqcv"'أ{5b ]˜`6he9[};|ck=@޿вî[aD8֤ƽjZp_+RZ6Tȯ.JkT7㼩eG'KG!2fJևB—QOZHy:m?ʅ5]-Aei *7a E,ſjafO܄'5}Px:M[y>bϤaun$xʗ@ЅS`Qx3\ί7)׽̙qXTg>E뭪:aNwVSrgZt$F^Ll%ؽ^yp0棇 r`<>ʴr-Bt=h%CN@%SgDk`S=isnr"zbĚ^˝+k9Z򬄥U_BH NV fYnz. /OqK@Txޥ#މ$6,:ɔJ`4}s4uWD廞S'w<ڐw#tΎU'C߉ҮS&Ӄ F&V5>|xɱڡA)3d0<t`咵oK(c@40A!%pXcu،lVKp>s7u' Z.M%pOMFRն\ݎw:Sw^ F~ v?%4(ZcK|07n$&N4VS_nvuRN0:r6ֱ҄YZ ˱ښq#w K~y>,~nm@ǫ"h3&xorN>l&ޠ@Fb;Xsl5I2L50yLSUХe zU ۃcG@n1$6lWAU'ivMUMR_q:'qU3MDgD fXK9t]YCJҚH_ gd#?09LKFPLշY 5C+۰ww0 xWϥl7eOq] ;qQW9-KxZh=Vx0h5dY!?\B5zUؕ=xK(jC~Ru]Q_=ZY _1ٰ&cY]x6׺%z$ִ`}vԯ u| @;͋Iy 7 8Èj!0PT@|0x;[k$# #pMfb%yTsAʫ *@-$hଫD=h]1)Y@ ކә68#BmL:~*1 6MUJ7xpݞ(ɉv. gR3`:-oٞo)rՐ(mm/uDNNް~whQ z@jyw ߝj=V"3=jFsHaɥʊvU+&{|kV`gf&UKi|;ٚεoXp7w g?բĉGpZ8v2 *A&P 3ySyԟm]QM+dAb=iu2Ы>vqE{l+&?9 #[fj>jt-8W ֹ$>e=^{FC4 Rl# IҴi[kBfà Fd.`Z )Jh~s=)i(}5zW33YH8)dg ,cQbk&}#MQjƼ6`?ƄK2hpSz 6Or8}s 68llkXO‡Rp,P Ux6dQ4?Q){o ٯDdN0hޭQ#JmObfœD1%Kk1UĮCA`P!{ 8/XR ECգGH9]!lInh"uEl~_RfЂpߋ$Eq "lմ/O<691E["VT$,\ni0x\* ]s,0X-㗘HcqT!ϴlmM*K68[N$Z 7TF:sT$WD+g7T{w2NoON8B B->@34gyh)=ͥ8uxROr q`2G< v|XC)¾ݷU[ 4W66T ƘWO^Ӳ+Jn#/%@ʅ/a<;.}DdS`\ϖ _  M!Abk"F\-a'9::H4Qh#(*i_z~jSz՚CM(76\ea؂@GNo TPɤ'[O͗kĩ2J$g`E1?YwPqtgRh uGD%#qa$vopUV[[4֕$?|Ӊ?$٪QyuϻWM%iƑMjx>@d$Gs?>m1`7[剴 hSu6ed}wm"z9s֓@,bơa} @3pϼq@彼s j,s\GҖ"C~?s! k pD_[ΥșIQB6eS[nyg`Sz/Fv2$T.y+nEZi^}%ڲ#Y!ɿt,ˡd1NGK~tǃ"G55LZg唷}\i!Ua_;}VhlU ܐ<Ո-ٷVpULVy%"]Tg|78Czjб~M{It~ #N'Sx7_gХqES"&5 }tR =sRз360>To+z9W}2yQ~PQh), abJCh]hz Ⱥ[+H[xZ_΁P34f㤶n\}:_y4"ٲrhL鴠TςpA?OG a,:Pg\1^I@7:v)NӘHOŪ9IHZ1ͅx.c%;b@^O\.99x wR7ݯ%0?+ȶ(sEKMr+=W \b1B絵*)dtuJۆ"&ڡsNs_)xh]kni3C"QpXæ"F0?&lAa &%i>jV-V~APmYTMg3T"z̻1?}*pxt8C,G@A xk4^xʃ zΗQ2q1C4j:b<{e_sg *sF2]'~J1 'aoxQ  ,[ptbMsXރTn`!+h~韌pt~f,0Nsno,uvYO嚭ڄm:7awƟ H W@""Pߑzs֛+ hl֫UFu(diTt!5yi(> Nh0W&Yp>P4,\Zf~lϡwEtP)e2o>bEqG.mQqknO 9VՉfvXz 7jZB(5kn<24%UݞiCpwhi<ځ} i+%NeZ@1tw~'Ehu5slPЍ˺bM>tjo½=^G:_-WۡƱ?[ wUItr iemB >řAc;!lzb-F wfOuEG%C)% ~f=$̛Mw>0/W4;fEuLJP0v&c8 1 1?o<#. XqEL/.rzZܣ1_d"= ߾λ|^ogO]{eMڶTh ?\;4 6ZW ?M!]cɨv/#!]4K':˪ I)x@բ5cIPd}B `##}E8/ r髼=908nctG!7>Kv6W>OIV13, J,߃УM!3uu+ڠWœR^QˊOU46ߑZaCe6!s^,t圇C³jOw̵Yh,E>|wZQ M|.(9l5fP+AÌ87L>({Tq߾4%!ͩ6AdHT]ft(,a&*3ק:' Z(KסP5ڷ!yaGsG:?A;kSK8~=F2 I Z̺U1쯰ʃ359S9 ]w?n^[3X&N*X>oQ@U˚7>?fT ʞRffZfk诙МhBQ}kvQ_m0oh%F@J` -Q|@ klM.飼QQ%DɎ+5^Yo&6Řݎd5$TmM 2qT߂\bT`z7ޡ3TnA ,;,BJд F۱8:f5z=8}4^([| a| c126/}`H>}:@?,"T (Fmdd׍O^RoAMka5ه({`^w^;ƌ=H:E K[SI{ucGHKxK VH `꿈ی2[<`rlɤ-YKF{ݍK:hb7r vGzEM!{h 嬞[Ta[ԭKe%Mp#-?4+Ė5n5[ 8, O壏N@8LexLG႐ 8Tח"Fp׍x2tꯏڰ2kl2/T?/^:<=8y0+NjBcNtp*c-,52 -@pqժ$[tnRIQښ,_`w܃o,ҴQNfOIOi@e9ziƗ%nMOygȊ*u2(AOi;< % gCCC7IC:5!˺_5L*$x2a1 2K658A.jxyjfIz.6E9 &tPʍ w%оbOz8mGT-TGSzPd%\ՂUXZb#> {vZG:%#?gd+ZGwziAA"S&˱9Bq{U#Qln^F{}[5٘4VSš[i&-,eZ( % 5K+g ]X`kV;w2?O/>SsE[kgE6H{5|kz^͈ICw e~AnwAsFNE@l΃`}# mhUvLaUj`rBܛ׶!]B6Gq Q5GcV| ,܊r D,vK)Vay%Ff:g5ߘM+d O۬ '4\jJef1rxpo^+UznIc*vƖV\afP=ny\O͝\2sj yTR8Sp &|gb>ٴ\cN;z#;O+]0JUDx >1ku%|, (|>gu7u6~KD#na/1QQ Pv^vZ][rK|T<͡4:_7WgA9!nlD_oܴ%)̗H$tNe^*S/`6;,1[laE!`͔M-/w7j#:|Јsvm( i&|TdZwm(Gqe"s&P/9VC%u&qM͐C)wqf}`׳bQK#vdɺ,ӝ5o$)ZQݯD.4׵wGXzWH_EգpIٿ{iT2gx 2񞦨x!s%{evZT_8f[h*48Bl3S6P(O첼R-IՎmΕO2ҜxV݊A푾-ftHUL̷ZTW2X?n#gblYww4:ֈW0͏E3'dtu !ᅒMxR`Kd1 'F{q}>91~y%LogbRV};^s&G<Ҥ r+: !2@/"q҆PḎ.7\ΝHo56gn٫ &+6oVMf{?,1#_ퟓ@W 3Z0Z|#MJm;v'O!&-"PK@ 3V]X2#X5V6u$D '_ eK,\VN?,bgvO=cVd5P\2˖3Z Q~MŐF -ߗbR3bTN65^.8VœlkBCy?.Ԅ 2@ܫSv2U ʙ׸<%r\F&cߦ6";ԆQ7ު1FX5T~-kjCb+J>ʍC2y~8UcӺf+^}WQlZR-MA2'!6í"zJ`cvmF@";H΍߉E+DAp`_ҟv]a,G ] d"E2 !q|/#CvBt:p]rp"*F/w`ĪdTΫ8=5[)$ޠu0qՕxeh!}8r)9BK\c&)V4YO&t|K)pe %*d|^ nכ~]Wir`2t+ %X'9Ns yϦpBpfZŹYqK1B~Kl𺜿s_ЦBJMu.:U>W|񪶥lYo*'3$ P6 x[,&/ΌF‚ `a{)Px|ͷ]V ӉI*匷с)Ыtaҋ |"z\h ,nTpҀ JIIRuuZ.8l&XnKZo1= "r{t(_;Gd`h4HiP~{J7Ǧg}NvS$^ }_uR͸P3x¾؊%_!ٸR-Fܝo ;頬&Çцh,".dlbǕji*mfj_j]8 ۶ZpvkotpE9Q+ܹ s6ݞO z5h/MW.pjIH'ނ?w*Dd}=YfFq(d)/5 y39cftJO \x&mO6§^Ҏbt" tW3~ ֛T9'<#I:RGV~=v!AiPװWQnkr*w 0 wt9Lb3 5B=_6|ƍoXAgLt\UՌ;g 8̓h[B:BSWQu'1AҮt V-qS^}voLJv<̔bށ~{$ Hlƅ7G7 (g$/ޥV=[{C !atd-\/lzbIyL/ 4alejPmAwhIK29##owd>鋺v e~!sp&>u1Kvz!hT"*Ms/xTt ~t/> %-.&pU>M`gT/!P:dQ C ;RsTzh݉!㥣)ϐVߚUc$l3jr{Z崱9mHeu#fz[8DvOWNh?Z&+*DlO JQhbpY|jIG# ]M{/\elAG]AS$(%[E|\;N唸x9'H`\>ymmǜb¢ ɕR}P +v<5%c :-~tX;֮`NgQj*qYHZ <6mzأ-z`9ܚbiL'Zr/<(^=ՓNB9|:t4a 7R0C^ ^v>FRXK ,qyMIy?I Tn^AxxdڷVW8`(*6y]&,i遀uR X*r^? d1s Q#m+R*tĊ*\c l((:ta.[B0TDѥKd2f@>5&O,uVXrNi Q_H76(KK+WΆKiyP'0BD\V@ET bQ 1OA9GGMFL/\?Ou#%mД'y2QI0 -ńm_PovNBU맠\Dt5, a'ОM}R\JZ5*_$ѳ s0Sht G4K" EP+B +#&AM<<*{3ѕO ڼ!wRQvimU۾prA|\rZRw"a0,4>"Dlx9ƹ^YHv6nR0\ȷܫ|ѣf*}zRKc7p!*K e|IQ2r!<F6w}g   h&WFu꘳֧@B B,%Lr fDB\-:w7DXcp@HK_(0OXKV_E3UX&$`}ʜTgČzFT߬hxSAgC܍!7h.vDGvTNQ,7O#舋qU<6NSC2伵Q+pce p c9ܖZ wSM)*=_=O 3D̝_KmBaJyVXɓJ}.-LT8`3@[Vdm${E-5F):ϣF%$p kԃ[7.&MH-,#5?g6kM tnRPqP<(ye_;(?&1M/,_ 0pnuXX+T~^Inj6#\b]FIʡl/h\Gvim(q!7x&F % hf]Ser/hω6Y?s  :n7ލI_kY'̦ei..roQQT@ZT\d De`k\rlmV3ݍtcSC{ób|yS`b4UZ*Ɩ|M 'K*f#4cM/I(UZ\KC.3gJq[A6h0$vX\~cS~;+w͞UuK}KXXfW|@|e]A1*'sK# @#kG'7$EvɾBU^K &1Wsalv>ReZ !6lw)qcVy1E1f<)c:hޮT`q1k=`w.sSݏGT2$(8 g61+tn#M|a[ӦNc4)?]KX_)A\ {1ݞX }H\;Q9?\,28/ !rSYbjXT) F^q zpw=>wSW%摪Y C,jsd\x%=sT6"JjRċ$!؋N PUp(jf ZaGS--@dB;T,@)TNH`I!۬O/‡"?0!se #?AU =0bQ\wJlF? >_q3xyyDs!zkmD@_BƥvPh'gfF: Z +B6YgCR9tp$XᯞǞ[(,tx>&➷l+DjűZvl!냅QD5R(@9kzȶ-TLx"ֽq"7 !lLc8j &@kYIge7tGX%S:FV)Oϔu;cTDUWWE^S'7O\(2xp|wBJE3uMڒdrdgQ2B/pvaL/arI׊,qNޔ2r+$4 ˾[0rB 5Q Qx uǫM0gh.Ps c>FŚ꫎(]5-=Q'~,nv 8K :p>Is1e"`\=baXQds=6C[I] T` H@VpP])IKGg2 ^ͦǴ J*˟j9v^CsTo6M˅BsʻRwG #,{Pgwu] Xa \r l< +"2k;,'ɏ6'au58H&Dct֮ZF-Kx#sN)65YU i|V-g%@D2>/POpRVy(l2Q, o :1ݠ}kӑsZʼnIHF6U(fڳ E!< fGhSzg"|o]~8NSTN9r F]h>7g;_ZXj_ڝXkVqjLsBOD~ՄQe"?vܛTuL@k G6Qnux*Tzǁ0W}.vYrH|-e)vAApG|(8],p;kCҫ8F >7ԲZv#(vY=DiIes|b?Y!ĀzK@ Icļ pb}c3P ''e](s$D7-`X.$!εH"0LIwo=S+{/mQ\D6`Fmec< iOo'q8u a5OgϗA#qѡ`b|68FA1n(>=hfN@,O8^YV>ˆ`pUWzD'Cmӹ0BvqEk( ~#_YRb a-N5p^Z5N]0Qo7qn}m"Vifs3xU?L/M6 ӘڨX/*ZT̺ڗbm\rD0]YjP)Q|^t_{{~7y! ,Cw؆2Lx9V`?OͭRX<s'yQ<6=J:DqOcJvى)fM{ZfߤP`-b6U2zvy Qdz8)R0)׸Cb]J;<!_d1vuދ5xccR{6B0UЧpȋ>|6],8F35Ӂg [j0hGkϿLӶn=9:!~*0flbGKNC2AmOʇ=ʗaS՗.=vɚs-dUyC2Av!tVG8H @d3ڌSU͠ø !Ubb$}dŏ[LNPTV iw9ˋUW:^9\O]cyb! 0Ur| sR~W~%$B$ĎP]Q=9'f5Q Puw ^z).}uXWM/Px'ʴZYC _uTuUMP?\n1Om˱Dl\!zKS'i0eٵ*Q#Gn;K?c&wk<W?OFzG"Iv ~_E<,ܕ [hGQuԢuPCTkH)y3wEsYt7־*Ĩ#q1fj%GnHtrn"W?Re_9$|)AAQ.wxbP2HV{]`׈6ZBXfθ؁@ 2F}|7P'pRcOC0(ћ>lo9U$:ipwM]+Th>qdj8[LM{5hazk'@zۑliV׊.r4[)ƱFFlB2ϜкD'Dc"m]D綍5"f ^i~/kjeU_#iשHv>JZZ-cYT1-4D YG¥`žȵƒas3ݧC} %oƖfmti`dqA{m-'$w6XvM y5@؏>þ4q,lάaV4 Z.w)$F7\ltֈUA!!2o- *&8ÑUI2俚 '$wG6NP)Aj 9ƂS@~TM"C[5}n@vB msnLI5D[Қ^CPݍG[ۿ[xo0!$N1]#݂-s:\3#HbgQTϵ7!> N*$ ܐB"j67ҭcuh %=K똴6).ƀU KxzaEr/i-۠ Qhϕ:US*Q)9Sϭ[_D4je#Xn J5 HU WVu?XN(#53IxK)(ߞrrH-_ _:T>hM(;oN|9VN]=L"헸i&.XՏsR_]'ql5CacVE${3iR %K}9I&I.Ƒi4 ^OS14X3Q.GS\53@g &\j|^ۄ.ٚaEPpYgsr`&ɐel+ m|%#3)[Et/=SbP\qyyN0pW8fҰц+t)ή۝NW47NC׹1hS=9lh*8RuDDIXA X_\+_.kYCհ'E6aBsyy i{h9<^Pћ يDQk^'$/\E89Vb)SgT+1$ 2WMKbiω* 4Āi4xDvzDy̋ C_ !fdOvg~Y$gQ>ܢBW^*|U?Z\ɒu@9F^@}˜ ^.?%iQa!$/U.ֻm{${la_ó*>' SPÆNA!ϡ誖o@;EOgi3%`TZ<_Ɯ #]0I5vQ*MEQ^Sm%03 6o qпۃ_^y}8+1˧%P.NDo`+  6M#F4^VNJr; CMv(,|¿i^&0F 'Q9^`O%EيX#A#h:Ӟ8DzR'i e>9[[/ND_r ]U=bB?9RV_uTS %lbFq %@mT1}1ϑ]ɴ'{g;ƥJ`Ը(Ύv945cT6ͽ[)?$FF x \S3B/HHOkof/YB S5 =Q2ln:|݀_^vLnڰi"՜vY":E}gW#O y!{>i/ϭ4r^΄?7_mirS ҉IWWs8|wR~]d[ilx,%_viwůw]T9Ĩ9lVqW*9b^?4EýPx1+7a-Xǜ^uQe(r5l-mJ(ŀnEY,mz07lX\ߎ%=j4B()'_f _n1FyJb͍8O^k4 ':oG>JgD0۠*T(N>-fN:sK (oCFeUa(LCc#|9FTNXF\hN&Vv36@j`?CccRȢ 6+ł/2ӦENiR\- 2W!)EI!1zó& no :T`;"ɑ`mVYWYLZf0嬁įC`XNfmS0i[Jym%Ͱ7p6ÕOF, *`ް)_OgTY9$1TpW*1Cw7M~R7.Ϗ2g&$zoxVV$bF!v(ƇJsȝG+\Nv/#ާso2@iΩ3fUۍhJ*CSI,X'&q ;Ξl4i,[QH؈<M} fb Y9QޏO '+}*?dr-Awbvhz,/5T'fީe^-sֶ+~b%ovII7hk1S҈By1U;;JЛ)l7Db8[O iaɉC.7icnV Tý`m}7+ ^N_()eG5)p\3´򹰎HqFBҰHʆg@EQdP`ml->͸R;Rdp,Bf[nƅzGnҀAϡ:f*uR+9hCu#@F nx .52AEiJwBb(c6֠S=wT(Xp+v[pâ~M'<1Wv? dZ`u,a᪅s8#%dK4]`|x|OO+amS=5aMBhW>@Tq}dk͚<yK - A^9A_?n$">9rPwz!GA 6Weٕg-,].''cNt|8!eԍ%8ĂhݹMc&?3B?mnҚ < qW vΑU2)_T[;H߉6X:OWP7G~Y2疎ؗc$ގz(rN]n%\*&IJ9 qEr.Cۚ50hGA,ͧcJ 3Er"9;0CZ=T5<+pt'u >+{>acӺ#Pk%T"&ّ+Qvt&irD֋H!NA+5A?< Nwn`K%_ƣ5輕F]~͇@bS\a<@3\9LбF|jE"/I"V0~/dnueTG+$}n#CG3~ 8v%/S`!M#N-@U~嘊oa=|0x_`ׅ=.uv'ҎlWqq0_UyGGb#k<co7>C?&z"{u#ɄJ~Y7gRw8N<^>vqEL0lKr&D= 8(PQ˷,r-lI g-t{Y=#<Rŏ!e$M8RzIT_ 3%YZQb b2}"8!YjMP;Z2|]LOyFp`Pd>~([=Z\2P@]$JiB)B5x[ j)/AhMP59kwH9Ej]HˆuA%[qd̬-</(ۋҼ]d 78"BL#sKt;<'Z h?AT<]6@sx+foHI iUy C*0;dfZdH?摐+MhܳuUnx'stF9WĮGPhssݝpZ%OκIJ]*sӈ\uYpcG8O1.q,/$t'nh*HMZo"g'vp9S"/oSPj*@eĉkD(TcFvd1&e;`\8Q^9aܽdWJ*"d@՟wKSuH%,ǣ1_[;%1Q4ӟ)z]Al#^vo0ȎbR;05aK:!)ROLf{=-vJ g`ډ+#cłt.&'S0Gb6!C!@1=z&+ӉFN>; ĂȍTgT8vzS8W!AP糕ˆ(.Œ=Z_Rt򐖖S*aZq&?]px -%enxt=0RnWpY۾@Z}QuȆ?E7aim(QEr\ ofICm3~J-4} _RGo=b%+S|m TE^3lmIΠpt;?yr6"I9Ue bm"WcĪNZ}fMkd^8Oh)|!st*o*.Ta1U~vu^O] =)K^Zˉ)Ԝh7VRP\ xߪ ~IkN0'= rF-hPm!;6^A$ݿej3[3wgEN1ꨗz*w%EX+ RpB yn 'E@kSb(p?AbqLnw*[-T\BRCs7W$ֻ9Xx "cS5ha ?6FTtl=P_Y>>.^ JEʼH%L~^P@ȃpg&҉@N>xD3#MيAS+6Z= 'j !Wps5+j#@}_-Ța!0=px(4@5>J~WsRͫmT tt+ N>|\jg8"v?-i])h:tks6|Ѥ>?4Ú"&vUVl0ItƜC/@Abbq^[|F߬+t1'"b=e#Dj$ct#!=WsP0\mXk=ve(xۗdmVȎj021d!#q@"1m@u٦D 8F06*e,fRͶGD S/7HrA\ DAǮV_H\~r;lt!SRXͦpզ+cA-h6.ΓB\4y,#>H,tl5zT7B4Eg`WuOV=p=2Xҩ5+dh_|Yg`ln7 J&IhtYcg%}& E=VZY+ѓ-[R9I]x3뤢=ړYzZR>^p\tSpS}䠴ǨFi ŒŬ]{ CeRy g("5]Tpr9FUJ!iQ3'AP+N ˿Vesx4F$yV Q8#+ z0_`+TM}ТYD_F̥$łh?gqakkb"5B6F/zY[C[E0 4~aVlܥG8W@Zp+X.K܅2ưQ<+ӓㆩPv3Fie,\ c,X VoW|+J[&޹Rs BëcgY  ƌi/ɅKn3+}bړ?6D6ûn!=F G85{Ԡj5Lyx{l8~s2!ǾL5ⅇv'_Ӓlɇ`jZ;ȧ4WKr$/v 8kٓ2O~ =zwݱ=]]IkѶ?w1p(^DﴒY;ĨAD@\AABM:gP4gJ)5\ ?+oiUy+,lTEt^i ,:}j;A}+YqSyEU'lLNM azH FWMչcש?y8kcčaBNp r E4z5?Eq0<# 9B)JA^l6Fj.jc*_U"euhl8i]Sup*=͆QbM #_ImHnV:#l҂%~*b*Z"|jP]LqbSHv:}%ҵ{emqdT͑A `[Aץ.reSvGx#1l% pz)P#ll, !I& Sp<>@W4gDl4ɐ)E<jfAϰƇQE35gK*㨸:=IZ!{ 4Np>Ս aCY#HOwQ?˄)!j''ݎDr'W*!~]jEi1e(CpR|E7 XătYdہz- e} Wdn=mTAubl"; ]g%U}'OGH)4M frr.8u8vk*k,V,\S>g=kٳlZKJu3l;cѐ:2̌m&ؚ"}DvЇ:M5A4UpS[z;) Wd0lƾ$S&ٿ4Km28BTFǘbƪJyr)mm=%&Wc3і_9; :~Xd%,;3 \\g&C S¯P3@ě/Dh`ZQwjf(+tA(Y#H2o:OZB//)dPW! mohjJmMTPf){7=LP]R۲VOˎe`\d/8s+-?|+4LǴN/IװЪ^|me ,U}/PH N$& V S&D+ALi(Ŧ?ą/Wpd61|W%c.p={`ۚQ?.Ѽ$ԍbw.WXiRx?@3z@<'0.N^fJtw c> yE%K.ɵ#t)&RTV>(IhI,.ϵcƭ' Qiw|L:V$c@Fr L-q0`Ow:9%#m$ɚ1/QUk4L'9DZdDDL(~B '\V1}B0x891 BIn3s]L*HɆGyb+2ơFykx"cOj&s7),"`B<iBB0tg*6n<3<%ZߨVN*q֎iO% -:= L \l1ʹU6b(y,imiQܷL37`mGl;ny๶5b'~)#>#¬eLJ~kyW_qգ,߯PNӒXE}(VAp~v@%|E6@D }P8iZ;/faDf>u>0RƔ:u,!\1Eu?or煷;ݐ>1.4 Z0h IY ! fgw5`~SAYv`ꆩj#gZW9H>l"zp,qG[P+GvE.t;8gؽѐ&z G; ]nj6\!XK(wbnע(^p.Px-[݊=Et< J EUY=KP"@׫+]R3`* {Sk-тeu$UsW22 Z 9YGlR=8)-~)>ii<\ҢT4SOtn-zX۴9ZRGlWnGJںr-WM>L;i@c 1FѨ'&6hsVGj ܹ%4|/,X:,d`{Gi9uoGhI/U/[-WJu*>i5uY!E>=/&ECھTQFWs~Fƙ[v@lk(FBjaӪ-ý>?X2J TR*OiL1$ZQO=mn@uoGfLI-B@A:fZnx?G*qh9Qpj>Yx€S~&&Ul: F?tC5 <ׄS,\7,,kkS{:~j#g 'XT،K׃P ̇}GTBݨ8b'2r4|~_.[FT"5 /EkN%WM :ڸE (F~LdtS-T J9-v yXW M.٨¡!Uee #^/~c{}YfxjoJ(p4cunh; AOvUs[#'0t`MYM3xV~ìw7kDl=2ЀX7ՙ;N0%Ct{M0MCkl!qTY&_ y/>/-rL~TzDP;{S#Q(v҃s?'('f|{%ڍT_%oT=Gr}@ Z/p&$Y,do,^$ kX0&oKg烦r Hzc3򎉵7wllTSՓ*%Ӭ@#j~/ȒޤaSi4_6dWִjփPg7OacBn wT"t8GE" F Zm2򊾘]Ƨ{$l"t^p:qF|nBaO?Nd{ e1OT1($vbuk&m*2SۦpoAMW,mD]Ħv5tZUj5ͬ:qliZO-!4j+!,[gO@ׇܧZ߂c[^·1Z /I;"sqOy  &uglUI7jLՕM"t5=Yh#! Wg?!g 2D#5$ Oxz )B5L rؽmtٱ_kbj2I#T3#qL tG,Lc1IJ9]o ^] jAo{6|v6y E\^Bw[C{#6 'Wz36:.~O!V8C (=䏞Zl|2#p]s9.a.' (?p[.?ҿcpl >.95U-f|}t5Q}5SQ_rL: 8 X'6CߪCpvëv~%؎6풄д:/َtN0A>'m[VN@ԣ1kJR~j+r.Ǖ+'_}XaHfia5 :rqyl62K8jүz2i3 Z_*ǘ,yuȀx1C3=AKfioېmCUlUVu+.g͕WAkיMepޟ8a-0hz4 M[J JP-zŨ 2ENlcUjMZ"X&Y| euĻ46krpGGxËPVy|*ӅvW m >wWC ]WH3)6*i_b'R 3/4񡢗 YnSX fC0YȒzX^ufG;"yCiԊK. _eO= M|Djd% ¡ziJB>a^bǰ/1QyyR<-T؁>ͻ|@1 ri/-,-6X9>3 F) QT?Q^2_hUdt}f_ZՃ}rGH,(ܡfqs U}Jp0LH6#!I^; ˟U(4FI-'f"*yYȕd5b]BY>ب[di54&bEYS1MJ4q=XoK \zGIt8Npړ-@aHj_ r-b;G}Qh3 rL.BaqגB1~̕Z[!cB`⪸a  S3DblX[2)ݐ%˖v:uɶeA8HC'-f~uv ;`P#d4g) 3hp 1븄>Qq Vē&`Vx n s ?/|0EM7{+9OlN rQDrƻ$R dq5N[ ~zI,Q+dBS}CMbDc5-䊧V$'U")7oBhPO*ğ,2l0D<; SdGEm!.0~ӻ&)N$Zڸw0b`bY%U'3T&.l,m;cmA i-J**Q nECi R=Pm-|9'sZ'O!%Rr_rZbȉƱ GT73 fxUt4Fj__},p'RiVskyd(}&ӷQ PA2[\%dfz5:)*?e1w"٢fXG'R 4|],3J0iUup¾߽?*- ްW"Nt cHM'HmH+|Y ?:g ]zp(;cUܹLH,BNuz[XGǤTбD4J@<έ-UO £H6ϟKG( ^p(@XHfn(63i"'6^"]J3خ8@Q{/hj t`(*L/XQe`!pyu,2y r v*/{_aivt kZ,;w mwƒN¾Q+Ա%a(2OsAJ/b/q2PǫIB6dnGT!7E$iG*ߠA6›mxH9 Xrm +,kO9ȁS48,z5D2yK>&JL2܌S,3h9=qBHAA0ytCM.*ӈgq}NǓKC{̆>O8;21*ê[$[ k%VJ9% bDs4 !ZnMcn?/wF`:+,.2b8Wa-c `<3X96UEÔ9N+\:e'^0<(YnZBq`ݵ!'Ӌ[+WWy$<7XRh:NP9V6"OuLeR)X 3p^)BefDhwDs| UR2w`g1rЊ$Ã:؈d } ?Q9Pl\b£<Jz=ni|)m[J5Z)(Ĭk)P7; g-KL 7~-srGZ+Mxlùk X)L$f kly//FC;c@ ՒƏC- kDW\Lˡfڤ, ܀04܎B?Q+/֌߮l>q[_Li"P%=2?50$'f|8E{Nmuww8Mu"~!WP$[E^o9\mdY/"Pz^]_X^i Vl=߲ZtL jTKn{ȮSNשy]aAM)ٙq;ʪlӣXKkCκD^2 ToCf%7^` `|o1 .Xʠfw^[hA`JvR`me[n~0mxZZ$rQ>~0}EU2pwQá,T[l=y K< 206Yě!`>R,c A`3RФ#i7eK$<4}(bBd'@ΏGdafhĨM!{U>]"($E/C>f&(,:似@uq+f\$?@=SIT7M0 ţaG_| yVifP`pa&Bm"QK:i2 9K:M븛 n>G/R'VyTGkunIhZ)b\CXwP`]s0$$l\!mծk$Ւò &o/q1Ţ+]xIB'zDFq],8ukα("߳utM̈k%7h.V/(CxP %ũtJ X7* >Nld*Pj~ Tb r#>i[nh$[_' .ZldS~ČUP@bƢ)*k+V8\]ٳfĿ2eGϬX G%r5=PǴ\d %AM!/CG;.Έ_20wTsեQQ^ɨ23&Dę ɇE4KXn|Ʈn\ Ҟ7MB#K]iu]]->+O S,/ U{p*_E3zYjɘ8ܥ3܉}N^B ypH_l{jD䗅9oˡՋQЌZݞds Ez i^{er8l5eo-.!"!c7=lrdUf{0.7FyC^3TV $$՜b6aV:EWԫtf{NTe&+sR_"'?GPUiw& 'L3a@˵ؼV]=ct t1& !ma)ȥ5ўqyP[Wi1-}9JϏč|BW&$CΠ*j}M3ln'?>d97smPX! %}?};ԔKڱCDK V,F!(T퓹0 -G7@r89!w3ofު6Y <ŷ벏e\t YkȕQߐBPdDmϊKxߏHl|\P`yVEXڡ`x-,!)tz0+&yHxοQ>q9DR% ]#bЎľ>H?yj^ ~|21 2O(ex%'ű<'C@:lLˆ - bp1Hp\4ec w԰WhcStaB7Ѭp6hc66L Wr2Xg_XFS,b$ KnysTг _.m ߏ,SjkNqR@kۏ f}[2g3ϟ}~cbiy9~3Ь.35.WcUx. K0A$fHkczKm@Z1.qiSv d`2!8>KcdiG@OBLf w ^u>UO2F:3X{vRU]'00/~Lp(OhQjp \\DEa,[3b~jhXށu"t*H`&Yg%V>} 0er =6f9g2d^bO_("m; IC=)X9*`2qQ=ۊ!xdI8uB'J=%h-d ((KꉰLo>>!6ȹ5w̷ k",\:CsoM !!r2z{zFqBcf?|Yy ƒ]D1j ̜ogA$ ^VB]wiU?Ml@ˑAiZ^Ř"/v=X fڛRUX o>-q;<#Tmw K߸s2Bӈ4yWgAu.GT~sqLKuXa "":Y75jI6# P|xR5fEcl ie}}*-ȷxXzszv8$9ZȪXWNm>z=P\K2҂[5fNmux~ ucw^,4'b]NĊ;I\5/B/|oL'G"M"\K@yM}cbPi'L Qv\g' W9[6@xo ^wrE_DqĞ|}g}-Z'yԑPzl`# w'H(CĥbWor??_B*5^=a9,T>ħ0{7#b53flx&K CMy7 ޣn,2eѴA:Fc@27#<.EB^O(Z2:7kߗЀՏʼn w4M mPb} ^MxYeI "D`EWIKis~xt:D%NgO1q- WzIBz6^;n]BD9Sh5ĉ ,%lŗqt]DcƃôBO 4hP+Aw#-)Il;O^M=TAzv<1P[nʽX8D`4Lu Z팣<(?Q|Ąpo3эE+|V 0bls4X3OrO D ةHw 4j" `'BvCԛJ2pI[|V xϬ%"y.[&IOg]ڔwҿudꌒwߎ޵aM?-YʃQObQ0xAtN SȌ͕\  +.&ϥyY[T#U=h!6zy7F&ٲ]ؐ( o?|}ׂEk-H5b̀ nH''&wKaO~QODpu3%3)2o%mrMh@~j / n¶ȎsJ)9;c!fϨ)UogZ|͏7}3⧛UX*ͫצyV)߄}G+um)_ت,D\FE-2 `jyж2^^izߒf,R,š? b-ip%SNa(DO1B:WlW`"L?Q` E$ztNy}2Px@ʙDģ YiSg/ݻ%/| aܲApLt=t(W9  #^Ҟ0L6hL9_jd'zAk{m2z>L^Gs:;6!yq 8%Nn~}&Ǝ%q4a8_} QEODJs`UjFM^J^ &L>>td pɅG1oҶ^-sbƵJvH+}HU|j-cx+[@'A}M zWKVBUbn,e<>#˭Ĥf VZ]XjOU%̠U>k)lc2'hv RMP Nw*j6|Z~" γijwF!s/-֖L7$CI ˷]8 u]o\YcCihs Sꕛ6 j h#FֶOY-xSuatt aߔ Q \VbK\˲6N+__CAN`a,g4߲: cUԣCRJ:ur\,%~h" 蓡U,q_\S^L CyI:E|܍bz葊ZFn5!|+$gǏr / b[Ub MHfe"k^-KFtTj'xDdZ{TrwٔXARi[qO@d{m<7x8Pj{Ȇe3+L ѿBC[m@? ESxNy.PV\*_թ2 )593O.-Ze ʧ(Hpwt0=`?&)Դ ]k2w0A௟iXB#KeK>/n pXv2~jIbuAs9ji,<}OgC,xE('9*)@t6Rnf {ù[=RnNLP^8^ahi!z6t#[$5qV__gie-:!Y"6 Vv9jK/@Y&fdQYL7}m &Il+rѪ>9qZ_>N}P{{B2?{Ƚh߿ϛ~ *a]G3@8I1 b-n!!lhz5FhւyV+UC=8g|.j( `"x5&q1e2OrG|g=@"lTH?(/2B]sh2҄~ܸ٘(+O/P}Ӧ TUzH­>n1goN6A*|h(m0$p -1y_󃡴LȪ-;誆')EIf֜n81oxJT=BCnvyH{W>*Vhs?iqqlNKβ`89_r퍚%;␾U=*>XwZ3=:fF-m?pRl>>6o^ T'NR6 1o v<!\1l]S(w rPLĔ| +: ^@'Q b쵈R'T""?gڐ57cCi)" iM d>̃f̂ IM|jVŏei8d."?mtA4- <gdҋ~|{M?7$P_J#uҺ-I_Vː5T 9@S8y2N w:P>]PxiD -C ""_/4J ĨB"r>^ہ \BxO\?᮱I/7{n|^2KaL7y l#^'uRB ۮX>{(>\`d~6(KzKJa FpjipH-an\r|O>2KVF-D0)JSq>E05*8vH+sc=N-RlC~AYdtqb3W$kPaw! ɷw9l+A#X3h1n&*YOy> f?9Ph&1@(YW卓 ۾'1VG @'NP<7`kGrDؓkzzmtg?V87MXiz KN4UT1d|*6V^(fS;S\.wNuX3\XnLA@?CîxظQmZ\s,X?N|qN ,${ၐOq 77lOflP+h-xqgx4,Y[ .h[!Zš% qZE^|XQ_ȃ  IlZװݖ/ˉ ea ;Zcz'w7fsRv#j2^e/(L +ݫܯ8JŮ#:X`Z.>yf\Ihcr`P%}Fr)'Ddb T*L8R;^;9?^kT>X >觿E1p#Ng `u73b~*NX..2 ؀Գi ƠX9OG;th8IC@65R:gl?o(ԢhԶ( O~uٙ3ao?tZN5UQ1l{# I]Շ.0- i_:,-"T1kd!D+9"/D)%az,B531* ;[?Em=ScC4;s e NsY.r=eC 6uTP71Jh+6~Fu(غi;P_p+G$i3RKO7tNF3n4;gZ_ ֡^sY?۫k Vv5Px7F(iZ.d]VG.!Yg =knJG]%l&j UuuKsDN BLj(bdaj\X㸢Ԡa#t@r4Iӕ7uG=>9yP:: |$XǘSQf軌q0-, )wxFxZXZGK=B5@x%bY>^1?@fO' J8/AtkN {\@!3Si쯃Gl9?z ɔ=A;Y*E;+,T|yyzg$VհuhQ@81}<^(D+Po!E'݁bx:at޺d}@ccqBY^bFn`H881?RҾӺȃ.ؙNȨeݤ){ԆkjC^ܽEX!x*l׃BQUԌ{jh\b$,m IG~G85'CYAGZ1p*IgyWmuGKŵ&#U zrPC'"հw'z_lH Xb޵ k># e/>Ht 5ա9M(̱Aho&86H֝8 (i9C[3Goxg)Xp7'I.8猑IBwݘ ^k:\.5U $.Bo0 mR6[ Qj1V? )825(+»"iqaE&|pd:B*EHtL Q*bzOn$ݪ-EC(ԝY#q=Y(K:N.p{C (Nqd״p.!>ڡ  q! V9b^>:M)Dgf[6\Sq WS%+qj5B?TrMNXVSxnzyr$S 3)PPL*oB? 3WԻ3& -YQ YыAnU+pnmf`#WL K̲t1D,&.#l6c#-\╾x7vƲ;;>_Oh@,)А1fu!%=S&0-e~] 4[#F8?,lK|GdSfgVAIAYC]I星{)ҙ܁l/c*B?Qx7"\99=W:/,ԀOH2< ³ix*?hI.r=NdƁZ{vVGlȁaEQ.A*H'F=Nu(b`BqA, Ke%N"܊kk~zws Џ ȌGwTRȨ vV-g>1L-ݬy-QR5Dmr [6bx=FfnHz \ا8 jPԷu,p"D}( }^E' t',G1L4))端rW`pLV{]L 1P93Sф1b, IYKfڑ枮*G#׶7H.TH^]ټN{g'Wl#..:T.݅M35 ғMkox(4:ihg}Y;כX IS˯1f-uhßkutLěÞpBBʢfuF[qGp6!7](7 x햂qyB(D e=,Ox1^ۥ2J 'xXJ ^-SGU_% muY*oĶ:~xKH&C=ӫSRze]q-bu¶k^ǪLV})X#kvL^~jF샥o۴TK/;i^bSIHYUXJ2$*X<-#?u]Zc,q :&ċ>AŠ+/&JwqR_HUiSChھk/;}EGKA2cO62Ibi4rhTB;Sl?8s@0!l2y[)oA.yqYg8>{35k7I#n/# l<l%ŌgZ Űb7?]%c&ǫQd~G ;K/qdV@脏%.aɠkBy]$أ:$D {_U̘{=ƤOV7MVi\W>ߒ9u6.0]cs|>_]o$|9:.e?<)1ap"6d\HK:%Ea 0 4G:Ƣ[pcb'Ϡ <ݦ|BI"Ȃ(%$#n Q\^{6KpT c\e 6SHiqj 5a ~bJh`GiF;lPGv b9Gԃ/*ZJNJd́j׋n';jcW+E&2FH{ߓрXyh$]ܒkx ɢe;WŮ6czJ`q~S<բ)=ĸvQ;ڗ9hbe{hGMu5(cg3MBUNgeeЙl3Snx \=SXZϵ`-#ƴC/2\b,$Ǎ0K«s D&МUcJ$ btDIp $sܑ>D8^2]C/LL_Q .4'Wx兵U?O@K|{C6Oqv 1$)/Jugc*̹ F{q d;AԄԄu }G oԵBϻ;S c*Q0)%{w8,#ڟ*)9 ˯9Qr׽ feJ 1>:PVuv1sp;.АTȜTq)CK+Tj`ޚ8s((Us^0kفMzsX#8\vR Nvq}OgG P?} "P,qDvgb[% {51oC2l]}3ֲQ\3}h:U'X5@9T5)-2U{5g/~ƲJwQ)TE_b8 ]F)/3iCgFcQzh2FB\iW} s4Kq>Ivٵ.c[yOJ) &J[ް]_Èt|Y jc&LaYY>&]:Ek]lZ#UЦ`Sv WCtIFs#WΑu;Q#m=e-A)YN}=!mVv 9>+ pSÖ!~gz/&@[hB:k뤣ƺ9ջX<$,/9iY XDO7.Ob.%VmJjvƔsJӐy( jv#Lc!)xSsՅ)JJWײsB$|~jg),_9p&'LaJ:1ڤUw^]{)i7d7tC)┾bE/Adq+C{yzCw>+.R/Q:%%mNlcXeH0aɲǁiϔQ?%*aov>}!i)ӹyİD&ӁIgOjVfv$DʷYSUN3H=ݛG|rX'WN5wFB:ҸP ;suʃXߘA3W"*jtV\ƞW+ }.TBVI( D &(p袏oǙc'͂P<,&P Oiפ^D&7l3!jQ(i߉dF2ZpdI-kN+O^8v%X * !(|2v*>o]mx6;T[ͥȋZCz>+{Nׂ{\nH˗{/l#-BAEzU9<6+|ݨS'6ϼda\F3FK7UR!͍|F%1i;p7Atj U=ԆS@ȼZ(=x͹͙g>Jӿf+/HX?TQHho{n38kJ#x)|4Kk(q%'Wč%zТI_ vٻNuۤ~3`Yi~-'ŀ9bPZ{")<.#BB0#%8X} :ovaEjwAHf_͏@7Tu^ԟV~5dDu:%1-q0u ݢ[di Ivd/hClwo\!qCAy3HԜl NXQ_k8 Ku1. X|?e4? $@/hR %딻7?ݰNBe@۔6fudT[R1O]mp뉯tws !W8;AB[䨾c;gR@N8qb| m9}G$Jg4XetTLI!eOBs2J]a%bՆLjә|Y6ߝP "{~f3sHnp$Uz/O<~CSJ}r%T¬ mrϕ:,r ;X-or9chH`B, M}t^C [Pي<8c{XaP0o2mZgm@>A>T8JrAo#`ʊ?;mQefAG2c88eͼ:aj]]]`\b2 ӕZ"&S7ޝv:2e~;@Mr2)o"~ Al6vtj= \OZ.X/㒗2 j)ޱ"1*fOX>y}P-IJL?_Sn7_F c)i8qrLSq Pmzv5[=dS!zA,>ZjYM3[PW,VѸWh*wzI y~gc$jR~T"\m46S-f_$hO}cҚ'.[ 6|4ZM^7T/]ٖ,U4qPbف/z8"#/CH=!J- m-yVcS79cK~i/\ Ep%m߬I-#cxdc aL ߟJd8nOazcMIlo)S"uY,ov,{p7+~N&xIEXέ!*K3X*"S,*"0C_CC&N]g㜂 ʝ0= UkOSdb1'zAE/0ϿBnH&+sU=i0^|¶~ ʍx9 :iP}Clk</-Z%d?1`0FBṋZROU O? T47{Ijo)85z# t(¤Yu)xm5mS IN>;"7EսPJ{O45&7PW ?y ـ`2W{BYr(/;ULcXQ?2q4$j7;7{cB\FZXAK9s쑏|)t1X4AqeU'd >)6QdnۙףGK`7܃D{&~?U`le=t1Y5Z7rR:Q(K<Hx$ڃ1cZ0_gl_z;]]7G ڗ4C +ۛ֙l'\]qd[ܕ:QsҦ1fZS~<2+kꔇ&͈ MVaq&Kg?Xj\p*o61=Ea Q h-pd리}vF$!_>Qȍ"CUm7["ңu2#rݽeۥ?Qpѿ崛cH۠Wm/NNqE S+oN_Stu{1e\Y S `y_o1+ZE Nۗ%qIb(_5x4إGg( WJġU&G@uL Y$Xm,֙YbG6mNYTcy;K=BTV9hͨ/-VL}-Y_w|*4I6=u/CVl'4Z]( 7apGbp>EIY-Wj܀yд%sxJm!n&/ށm=B;qPkPn΋ ؁(B`Wg|| F}cE`&PyfiV,oG dɚ|Ȼ,+bԿ]\# !̠( hl԰a2M{ n ; c e#Hfz]@2>:ZaӍڤFm]"}׉I p_3!vP/ [ iUFօ֔du CA4TggغmDNwW\Du?S?_Z @Zƴ:sst.b[HPuQ0Z' )GHVa|HHYMxuGs䷴n;7j. ZI=1ڞw${J)~Lff{H{Kxf cQ˵ /wLGD/^WN/^m)[ZX5.:ڻTzUd|DY4ݰVjC\&(m5 RxMKBKT3+S B ˍEEy~[) 3q|X"9Yw=*KgRlEqh#C%}JA6r@ S^pNH4]>[I$ڋm4OJˋj B#XC"D:@K l:1U 8?vatLYOOg T*l̚n~B rQ52<)Oiˬ`v&Ndʉ9G~Fmb'yN3異+􈧭>6+]yB+w=ȟ"X$U":%i%܎0z?kPp›YWkeIgC+ҝkTj]Wm?d#zEM3uᑡdZ_Tδ Fp+IocUVaR:'|*Ⱦ#z;|01f6A+*~j Q|zB.(*@%Yj$.C5>Hz03h6=jPk]ǿCu`׎bH]Wm4-ݯ9tEy%|2j謁 W̺zVl@ ]v!8;NOMV;C`ITo:)-c_ 1'IYgvqZX 5@zT we_/g"G~uʚap;A*J ii ~4e?Jфެ_1 dk< (>R*,x+`Svɷ IU%9rT4|>D)pRzԄqD h<, D" h⒝_ḿjtZ۰ۓZ|p5P_J**%?lfQ 0 2ȕ7eVH hWICw͹‡J(tq٭#H0BedI!o- )m=`ҐϧӅGY^qoN^-:zd+4;ikҙ0UfEg(M Q:mONFbdjnhKb6s]bgR"|`" ac0|PFLR2RG= WJ/L~Jo(YDKsq{ Q!Om]7䏢~tl^wx~L+ -#bYR3O&}/K)#q%>)wXyV~2hUԟf7ڱW 4oKtW4 99϶{Sfq&ʃeEc;u׍wOW Csډ9KFT{qaS(z+g(U71stu1ig}ȹ>ZWv֐)%TǞ]7-Y |\)'Ca#2󙤋wO<}w,p̢4eR2\e[ 'Hs"wZXsFQ' nt{J;ՔB]a#w6\ZA,FӜ,f)$ )@NӀ _N(j mG"\[4+ͳ[`j;pyf)&j?Btj,HWX&59&MS R.w,›cO1SOvW[l1pu"odON>:_!Pn˘e~,au~2;;l m.uWmQI'OʮJPMCz!Iy7?WW>Ac uD?S4]tv |]T3}ǹ5,rS='r, KV*xo*sV|YDQw8a })X})ظnҝÏ587isW-H :#8&`Q5v“[8)BE+!&UL ,dy1T}JU EǥN|(qIЈ~Swu\lYpki-[KuN JP*hD|G&[oKR(diiXz [+bidym`Đal?k 1f)M¨x \c$)N}̥aXmQĤL>!ۄCМC<3._ /ѣ݂^}UbDR61رڳȅGٟ2+ 2@1H;=cvx=ϜGu4_@ˆ!XCwnZĽ7*L`/];aQާ em[*F /R-HZ*2C# ZoK0,bM6zqqltS2$Us 8Lu)^P:|I7"\YŲB|; p* k]Ilļk 4 xVIΌ~`}u b1ݥxp2v!ݷG <; JY~e:nۢK?UС"H*{ۓJ4Xtmq2XpX)aFOBs0?̭w,.Ze^POB@XED.w"Vk"k ;:2 `p_ G':;*{O!')ˠ'|!?6yt]|(cg%qR0p15M$l.NA&no#6gIW|o[ύ ={%u.ѣϛ4KRz#̸bh(̴tٚS{R2cXXτ|񽬖۱+n(xB/)W{:3ygeTR /))APIJ)woجfap d`1cEXj2MɃ҄ts`,TP^z= Y}L׀.k|K.=WL6U}?Q~!R\@CӡO󐄻h>2ӯ+y } {pE|JC.au=˸,."FNq 0nޟ^]%5ωִZ9(v7iB,*ghtJC,gGDCВˏ .*&;߁yw~*i$7U4l>x i3EpedAJjLI αz_ϥ!8}Pb1 v brO|[eR|XVdG1D<&:C[}W[g#$.c6h$9 L;|&4/z}p/Q"Q4[gԍs:HP fLܧ3597MS,geWzҫ0?!iF ?,M%b[rId@Nez@r㏶\IW$2o'.F[LlS`MZEICl>Ei!GQ) ˿Lvsmdk蠴3XA2_i)uOu31w+6TD6_ G ʐ#(\n`RU) Br&FP-<{;r DBeS? 8!7?qDsNml|c8άu"w 6k*Rj\HC,~p} +Q}?TE_,zZ)BWѵ\Z׷]E6h+xe\\Ubx|AY}c89(OsE/Β3  #1\ѣ<,4R &fзIG< AW o6@-3r9ᠦ.׵TF+v]1bQpp,'D,@[lfnqp܂ߞ}P<T 삢:ŨG)BY0<MG WJ扻:ir`7D5z8vFT]69M^~y?q?|ұs9/;sOBiO[ߩ` . N{/3>_pWWyt;L0zbiF²84zTW`pa ӊvJDso0U~W}r9܉:&:tZd+g+# TnO6Y D\xڰlOy@w*wEzy=o&YMΦi@DwZT.=oMϛ4&M̖C. KpX'&Tieѹ7oAibR-#^pd'$1eh7Z aܓXYmmpC6)hwMdA (Q- xj3$`'<I]c]IAZ_,x/TW_+[p$J*eZv7 1@ϤsN-=3ZR Q(oǬ. ^)H3u >.Zwp|1[ \ZSHyʈ}" rz}/1B&7DXtK8ªUm *`"ː̆R5Kvv9(|bԃo/LJ RļqM}LoxM+k2c+2;c2Y 57]a0̒r_% JO߻Ke{|ctky]Vw0Yq$x!ev{m)U\ 9}7Mȇ"o-fۢ==p4ThN''?ܕ;UvT>FH$2拲#E.#¦t Dgr)2DHTZ'j&kPA]KcJl63ttgXRTQ Jd-@k'{O[Y/S Ii$83 ⮻Dm7;Vً|wu̺0ױYA0tcK(j m} E1HD{$i ׶޶H -BwNcl3D֙Fܣµ9';xՈkަ3#8IiՒvl~|S W4lx4đ6]&E6aLEo e..|R0#VnSkJr%oM2u#שa57=cZH?8d0Tw~\PK.mlV!X.@ >DoYH JSҚPe4[Ġ?]ɀ!XT EG XƱ{$]j*Us Hk5W{YLF^_V71:j)Уxg!3%9EƜ^h% R=3{ <Ց$I.!'UnTZ}%F'wh*tİӶY񉢚Nj<"%dox'"%!&Bu-8D 0ety{b3e>y~2UKD050E^ƊSŨwG*TDnxwtU)@4CѱWeutAPU^639:\KRx̮vٛ^IǾ>/8 _sBWٌ6w {toPE's$Oar}SBԛɷTk.XIm   < ]nÚZʽMccs;T0r- p&sP3hw,n#S܈?.N4'B4uDtH5ludȆ {9.mgt0xg~_=/y )F Qmv9to \1[KKX92x/61Q8#0;(=9x~QxvCw*h6V@Q/.kq}[$=+p @3ϾZɯyeb 3<u%ƺy]W;ͷBbWMH֧bAͱt?aDOGyш;"D e?PnsճL$sRcLU#\*l? K؂1UT}$>mZOsp |I:rC?#*jibD{*/;\oT^HUAG'ڐnWȴKOJ5z PT2 ˬ &obE\,; L\֪(SQSmJug<ؘQ.J@nS#xR~!G~ h  ?d湷sUyLx鉗Q}2?eR_QUg2u70Er5rLZ%1KJwdFIr_ i~o7Jjl#0 k5ٴ蚰0@GN'ge'3J#cl@OkkdUMRⲂ5u'n7TÅY#S iYJ@7DyuF~vYX~?+*^ O)o6t=%ˆmu{d wDDqߥp+OՒm~Ւ˘V+b(j<I!~`j3pi)@?S!%Y%8kQ*vݟ:2_ۓ's^C=SG&tH[yOke|.ܽ牠|m`)9Q>:Jsfo [AdK`@~6-3cD{㙰RMrmNi¶1G1~G~ֶ@ q,8 e}٣nj/Df8}:pǎ%0dXѨjcR%=rϗQ \IOT|bP!ԽE:3g/HJL#y$YT_ ẽjqA3ɏpT/x>=˲'+h7ÿUoaʻqНm">]iצ'.1lقEjCF̼)FDYWQ}:B Y3ԙ4м1P`jOe_ل'(؊QEf,J|l=TzB,egZgȇ(=*|6Nk`|h sh-D*Ie1oJDqoX sΝOLv&FMa6s68c9~E f~]0X,&޳Ē(g`xWԓ+ CP 5̧=m*ڔb/8$f8,C-i&X5I` k=vQlew&[YDkU2baVK'/g)$LUPxԄ- _*[L8|!M"D#$7e&mX VJ`GXGGĉfֿfÏIK&E)YA}vm|K@!9j+ub:qO`. زoЋ1rwD (фka}CRRMV,j'1ӽQ#&; \$@i_7PМDLk[}]+# E(Y1.}bXT8:FtT#:0.ŏW?D$H^U| t@~~n 8y?}APHXqc7",8>Om5i?yYX5IiaJA[{>63:4t  !)OUJPh{TE5T #pX4oBj i=d.zq^&FQw dscJ"1qL$/E .>- Yr1 S]aw?@'ͶvշP>%4~yJK/(!凨@'M&fr'9XT:=p ɴ* ? INcΔpw范ןV>W;ե7ig!uK#ibί.]H7|YXfHqSM6 An*jWHZCBZRExX mk>X6A\Єy$?{6 Ϗ:T]3TN-zsWx7~e>_͂dEز>MC\7\~M|6Er-geVCHajiP$bh7)ז(^ N{tI) ׋2:#j]fP:<;\!+ esN<L|BaA[)Ҵ!v=fh)$#_{T*y=uC߀8]k !&&]ruT5҈L'JDEZasoCbfR|%ff ިb]kAW!jUS9/K<;gy Qӊ} @'oLDN@6WrL;f̀qa]I.KˏكZt bmB2+45Vj<+]ZO0x?ֺy ~r<k84bT]4H0C+6.->)JжsH_>"!Z> 0,lR6FjH "KcmZP" t9YzV8m&ýޠ0A>qne9  4n}9oq1&P\*Fe+f$U6v4DHXWN"T{$sg@@cu~G+0_&eFC 1,C F2 TJ*PV)]:1U-rR*Nt6;0mT\#+f{d!VI%al_P.H>|pqe:&12HOJQjIH֑kGKmH;8bX{NBM)[hC(ք?G/J{od1 e'ۚ} gkSyr7ϤtzԳd;R7u0K[q:Pi[>J:%g)`RR{x?re9%Ī=Rւ$Щof|34題y"=ٽ>"L. eG07:GI=nS%Mf(kHtDyM+y+s|I8؈fzSħo$xJ%+';}F?K vpH@+DyG"uz:br0Ih5dx{݉q܂{ 8 $Þ! @7˯'9$pnҩܫeۓJ_39{ƴ .Q_PT7.7p4ՊXnP748xyCņL)ZuPEz+"C,02o:PH&9X;Ռ0ɋVZqޅa"?c>м34k7WpiYIhJ?ARǒ#քzh;"]qt.2(07m*FtX,q3Ok'@8oBo\3Z8}WT|>`Qt"0E_y7PKkn|OTL͔>d43*@6݁lh+u B_sI>ў0|֐s)>x5+m}̈́Q#<5:3O|71)ty咮 aN5#DQk1,OV*Ye-V[;%T=cfv)Y2JӮ㠽tBCX>qyVN(TE ̿[ ahJMLԘ( YE%N#K --oP51dS.^SÉNB85abJ ;1\+2'wI QP?UܜP V[h J2A_Έ2: Gla% xш1fz7y:#ae5A.d naXR9)uաTP 'c[$>5y+sS^ }!N<.5 !u%%+b_yBju( lOg}RA-/qd2؊40,5Qtw: Hu7&19GwXnbu!l v2(F/h D4fUm[&IvL2a)>#>W)^3g E6^U|Og.|$Z>[2j㥟_Kju<4,SٰXL.B`:tAegWɿLhJHAHo1$$ W -c~\rU=,):ĞJ#RDl$1̨oۻI35mq؁SC5PKW%_7{ O,vF1K k;ق)fWv>0 }(Y 3`EUdv iLҪҎcT'vKv_:7~֞|+c %pȧ8D#4$IAwt|xZ˂35JZ;2RU1 Q<_9xQ"qmQ@]:A-1-TO1_{ElX(\leSF3t6-BwܬA+5SP y^kx4Fsom71e,_&&$|0B.AZs"Cֳ +;?6}1%dPVǶ&ϝ~0v/a,љꇂݯZ/PdmEɹSO H4!(4'KI|մ+'F:ox~4 x!qPʀqA c; :J,7kM`̘0iǃU=rlPogJ{cJ56,c[%ae֞uk=Z-`OOXó6Gy.9 SC >ZSr"cnsVںsfC-Ung[&%@Ac|:LԨn,:֟}|--.gBF.Ķ[8Iu]5^o,M@- ڐ<4}ƣz\!d$㱝-Ն^C;q0.ʋeZjMN.8PA9!M/Ёs$fVPi7eds՝N3V8-,vhZDDuk厙ߒs9n?[eTL(b>1_W={ ZRQ?;exp{ۿ(~iZGoE4aT@K|hF++E%Y#ip+l@$ |A_] 5<>wDx!QZvxHu.COs=̾q8\hu!-?JIpN;nfL%;na 8ZWmLPsnMQh5Zv2~=|Rpk~3wr)h/HwވA _;_ %Iwt^U=|z6%H(Il&̳zK靵sFK̆ SoDLĢp; e{Wr 7o܌ KHisV [7EO2 ֊YQoFp<[7YYG3ODS4ˎ.HnáVi|8FS5a3$Vͫ7 y&"э~Yu& &fo8Kሌp0?ԁT;դ{*a 1Ia ?c;ߐLFn"ү+ޝq^HTc 5Vj{aF~d,xŦ6/9`f8~Z`>)aPĄؘ AZ9#E)#-s? չA񰵊6ʡAjF.( -4olɺŵnG;Ǐ7.QiX )g$ 33S5jxkpaq<۔ Y%s鄟ΡL`@~a3mӴ&{1ٶH%JN\[=(y9^(4#xc;L]$1 !-%׊ȭhq:b^ אB6ǭ!!x6=>Ɍ iqiHmLGb4e Vg< Ѣ]w;&Jd++QM!J 9iZLhBHa):3 ^ĥ5hEJ-ī]my6سxniF$(/DVƱwF 5\RZ4ٯֿG[Z IgU@/ L[^D@p|+:H@BpeuD90L҃T]ؠtV\:rl/8nVM'?KDI_ؗ𣏕qXr);Z!D⯨@%ql$(|朎A!NPRel2SWڦq[[Qqblh}RRX̦\)s5D<"g~J 5>^nYw ?EnU?3yQ=T/BS8BE vm w/VAqMa c(MdQ;J_0*P6sZm\5PVCI6bgPyLbNTF$(2P$)aFzW)W.VdCסyi0XgjƦEb+NiaRYVxc nTŧ8!, m "S#7b2$ѯ:|HS o?c/MZ FD6Ra㎥zDDo횊 ΅hS-gi);lo'1_c ]blW7*H%5gkY;QG 0ÞD{$#+jƛxJ'c\̢6Y'!P?1H¦zA% !] ~!e+*So&8=7EhLxX*\I.$ܩ=@vȓd{c'D2m=#4jyԺsjOأQ[£RmrUm qG=30X(Z ,;xQ5[QH;t, -۝W}ZF;8Ym a@4Ξ:8bKu,a/B?6MbC2#'XLn/1ݺMVsfs @ŬwJѽ1[F %u[ qwLja 9\b3-[qUMĠ˶6._+0LLhhw> 2˾!_i8C%-rqHWpo jG׹N{Thpnc2'Tla9G2U! =,-x C{ oNq[ Ѓ݋uoacDT@[}̴y?.̱躖ygKxhIWSkƒFV/m7qVE!Y9==ZwwM4Sv{aׄIZ D{춆[h&2ue9ko V3XD= ]864 UAp-'wi{4mE,)o+mFnO]Xr*'#LuR@9mjIQLr 3=rRt:/+ُkk$7IA֖ra`b13mH~Yug+uR }ߟU8eM]?I}we*T}kLC^f);XM(Zb\qGzFn@}x-yk9c0 Fw5`T{&jb3Gb0 NW?X`V3gkTnDa|{>Q:VfxmaM[iɎ,2r/U\UX"MV7p?VɁz[y7@ҋ"Z?u=gJuCq~vy;(KkՃ$K{y"Tfl %F][W͓}k.[A߿SV{|F([YU7ekNEwy@7Ɨ:H xBڋd'U sF9h@!G`\nw)'m؊e/`g㗥?Mz ƑmzI,qE%EQ-n1?迅cDUy%G t7CSNAqYފ}]`>J(xJ䡗k04 7AänSiy]"qLFO_K荺IWFu9K:ruH5yo#1qՃ2c{l4 *kXǮ=ߋ1?Wܺ5tjG9 ֟1x} UTʡ큗; TV/ZO񍛿+ωsZ@M>̏ VS@v'p@Js {:-t snGM#-g*=Lv1d0$7z}'@7ƷD!Z#k9!ċُx^r%e;&/7씛-QKsDo6&]#52ҦObK5ݳ΄qz3ԻbXef􌝻?A] Fqc ;ZDۛё[Q;a>rK5_ ]`C=],=W0XN9o)LXxDC蛂']7.G3УۆBHU?G/P]h+/7jatNO|1qex֫"eQ6xV#cq}Rf OCRIFoJ_3]:5sm|Xn:[\d5wI=ﭳVF)nM2 <Ȕ,qU/>u Q`FLV}|˺9QQ5N,H2'D_^~褶Ia)I(yzo3ɫ-w+NR|Ѯ,9hҺ0or,P6G .Bj\O. 8o{A}Mws^Ju d ȥ+ĺ/e\z Гz-"}p1NA{i5)z=.ERsļ[W(l3j']Kۮv͌ u͔*NR;gtP U[~2[Rz IaV@WE^ Pv XjL^6# Wrmyݓ2Nu-!6#@dF1& !^}4([Gk6z(U Hjn$M "DrcK,uMfkc֗SLh$򈊅=DW`p3@? m+ЎȐ['klW;]&BJ_亂8j_h]O;5>_f(U> ?ʊv.; RƛA+P(A6]ƚ3 YBP1nQpQ΅PbgK^!}M١@x7dh㫉-<~,OG~ݹepmSΔj>YDy P:F/ۃcb |'Bim-^*aC@KO) kgd8,e MU{Ƭ5ĊgT|oQ$v kZ10M:>+E Ph'r*e \h둷-U懬ŸH%pOuQ b¤4T~'[~FgUR @Q)Z4'/1yb0ޗQZE,Jm2/ph}׎D5_+ &jT^ Pa?m5bzZuoŜ0l^ȸLCḽ֙π8v:ӑ zBTĊǚTe~X vO2N}Bh?9)B!+Z_VĎ\ޥOTԞb:Cyoya{ʺ̃N%VsƎnuԺ8'DEd|iy"_>[Ϯ՜BtX\?)w$;aJCǕwը]aIʛ=b7Iom&eGEm h.S (Xq^?[p;? fx; d 3bY̧#y GmI}v_JOj@:8ٽ0$~ܓدy 5PL% 5 jvWa9\ ݟ^۱ 72dU.VCƷ_Gҿr:'t%M8gFXlp"Po}\- :մEtR7&@pAxV#V Q x-¿/@%$< "3sV{CʢVcͬt?A )t PJSFmn H辽!eEYKooD=CL¯2YSن{NɛJ뱈᭹H-,S݄Vgc(ыcs~ɬş\\=>EdQxꎫ<|u~C #_ף$,S"˱֝ۥp, @?dEO``u&xz2Y?Lu"ڀ+_@OFBmgRt%}Q%b";G&[gb(.z;:N51] R,C$3깧OѿҒUY8^3>r ZDb@U6#Ioa2Cү|`> !B1[ T:{ ZudPc@/p ;H;XոmQVP){΋qN0G4i!NkS'+TWq@-~-dj<,9 s0(l TX%;k핎}mHi D-!*v'%Me**L 5Ν ?1cu,ZR13ɷ{G&[ XZـG8X*uN֖'UkyNDyAGd/  (Ĺؖ @*|LMmtgryҮW7blSv(Yi)]nQR+MONEoiq(߿wӇҕ*p{x>)[kZ(εB|}ٱzs J2Zp7?S_Fjdހ֤K ؼ|\jT=PrrWIV |g; Ć ?HRegG:)vӊ w3y r(DzBtxuI JEmJt4T᥽Xa\K/gYQ.;3Z.jXzkSϲep9_ OnB艢Teb٭jrMfGL]r簌0@(_Κ3OVEb42-gg ~I8\x>qsut)^?3T실j)jfJC+::h$MnrzZTJYmpo,` g+Ev1dB#-h!tFo.tg_[3ˑ9}1ׅ`/paҿ)qQpB.?Va˃s Zb@H:Q~[lx_)yKMSf(,Fx:! 9ՍF Y*;nh%Qr'"r7NafNuil|K$oOdѲ:s3WʰSM), 1i mP\:4 ÓGK?-Y,vxU4PAlZR(2LUE1Gt]S+$.TA_JI>(>T/kݗcSphUl@7a[$ 'Q>ӉCw&sOpnYO{)e8j p+a2˥1rT#N"b;ŭT$HsB+g2^;z^=u/du|.#.IV:ߚ(U 1Z\0TtYZxo}]!6kU/GDu -jQi~> ^#Mruv]Z.fj &с+Yx{k~K24DrP0j$E<f+|?uz3hPS5쨱oغNg w`ܝ#+`B[6A(ó6E93*]*d: &#]x*,Piy.(vT4-F97j \l=쾏N(kOAȔ)~eQ?a>XBm K'Ќrzm/gZ `J7t-U=(Ud-ki2hFqniT)4YapR, BT{wv ;0%H<5kBXII7͛M:{+*+QivB!G(V|m ) yz|,pdGT>MD# w2vDՀj-/Nm3M7lL/u?~$_RhAq4]Qj[E6h;mAjK/`4^F5^l P jY*JLT JP#!"U(ؘ ٗgmJmөǛ =>#v%gu=a'a*Y5Հ&5(s`1AU[j0r\ۓFʍ;$liic{3N[ܯ"MeX4|;ɼmlQ4#TEER1P#I>#aܶ-YhVzb;=vt@|R'G]Qɡ#!L N@Xp>' A|:U\7ysdPY@Gkrl:q>` *#Z;b -2!C|XCb6 :S'̫s|]{OdkJɵcDv,VZ2CeʨrI)K2Huޤr'=t+VHjAΘ^vZ$YݣN*kTC͖)*؋r4~KLV`m[Yp:S^w{l[Y'Qz/e"y񭿀zYIC so֥Iɭ 3D|`Fͦ(>Q9_C_^?ikHpO r׍0Əb@ uRd8T}yW]/?>TulfOglz5aD7uZ',mQ2"c]( G& %?3vqLp+37D\E(y}xj mBk f4h_JKM(8 `c;u;voW J[@ezM'M) {Y1UHԞnTnit2 "IUTocrx =^ʉXsohЪYQgN*NJbj,4jhQx{`|GrEDp$VT^{KpFQR깿U( {2@#o0;{_N2k8R~p#|;K5#; Qʝ?~lS0֨.ha*VYBSN(Bh1@Gݠ SK{\\ز'jBdNQ5&x|t2{WMYIxC_?#F.)%W-rޞnKJbvF~.ޓ;kGo1rX1-3JaԑkΔ&ː.!+=F=Slt;J)Ep>rG`7?,Ul1(.rO*HBԔ5r=v {K U3++zE]zJ shČFD?Z/FxdaWa%>I}Tx<&+ 2p*Ip(})PK Ptf#]}/=`(~fc~GEϱwIB` LYRHud$,qS>^@67Szrnk#wjà*, h%-tpŻK/~w]e3ҥKϣ#g ]C+5!18%Qd  Rqye^M~ >i>I["P;\E&LrYxYߘb̑!{X 4_,S"5*l^q] ҈) 㰮!:/6I ]7%gJPS,Y& uM1b gyH^Cqh 1nںYl}tO>7mP |X-ܕ!,$R=WEsyDPw{&_hzLsx?k-E8=Z\k!̭>k_1e[u# T1}բ}D'<uA1Juf}8 wyMVAK,gQj0oUCgGJί²l1(0O ʾ*p(^Rvq}Jeʝ̩&YA<kU1)YGF.ryK3|Cgm+|$ߝn+Pt'381)G"J0z@"kljVw^XM1Qo!ȥqRQ;b۞M:QU@RW&oWW& VNy+ZG{7bH?s‰QhF$QK^RnwB0Z}qI{2"I,~70rF4,N-*ϴ^S,rd̢ό+foX傛_`W![7U5f2'##mX,[+E^EN Zp1D5cÎzլTږ^sbJ`J n"I쑴4LCJ +ӈ|BЭf߱n]W/Z&"`ωV6aU ޓ'\.)?親e6YN~g}wI]N`Z)غ1pwc\{@9zgaunY`yg WTM Be21Z}k1?p!̘yw5d/~ m9ƴ 1VxdˠlP`sJcD@X2AN춺t"hhG BF߸ѥ) +}\|ݍf 9 bQ{/ZDmDiQ$iQLܽ%B5dE!.!3߂)XwPŖ5ktFӭtA~(%m nTĜߎV|`m񛦱~zTU45a5[W'2 Ǥ\1gjgb0X͢<\ZSM;9DR{uIRØ&Χ٬ 39 ͞Ʊ3[$Dk=|x1˧F+.ƹ 4Gkf=:OR^ʦu QBSC ^t\."鉒҉(h,{GҦH@:iΉ@ AuԂTMyR4ʝz.DAUmR|ܹY/3T/L׳5?M1m£N4WǛ !&n6yYQuvq5=4=^s_K7]>JW~ΩtlCIڴn6NiJ]fu!{fGkvɌg.͂`OŸ<"N3W[x3dQ6;x7AFW2VDŽ|=B&>[02l%#_5qY>3O=N` a_Js~dO89'8oQM3|x$Fjԟ A͉m-%b(@H|899c$ӡ**g_PdԴL efidJn5'ZSB{x!עV.s$𣋔,xcV/g`ݺGc\%V>:U&YXHZ(v47_y{8^Fn,dIGh7s]1ɨxFcLHd(|_daE6يСU(g2bR]EKu 4?<[FЕԢ>6 8^4!V*j\lb>g)18:HI̕b o_cn|$[ pԀj+W׫rz9zTbۘPDjaLVTcKړ{G1&\.:ÖZI PKܾe Eg>ҍ]ov Q}d- ,9&e sItrEh̬Y< :Xw;:vFasM6[+ _Q;'cKG69I$:ÞUd"!jd=w.{m5/a]$:|k^9FЃ4whF!CUd=`_O7bsS{@G;1/ktL!S:u- EZ9\?C&r+8%xb^4`hF UfS!ZA j% ۿ.Sur/˘o6 rsKI.]tt+ʮkeVdggrs'9V  !VXM7JS;Y\eЄ,AY񺈿Ä #4b Nl8ʙcwgB24C_=>ԅ/o.,H/seJ-`ssT}M$* Aq?RI4@#H)%KhoNjv-XRXQDg)d)O-iobOcB!~5펖ݝmY8^4p |@%+A 5=0(/lDAF$4;vQ@v Mlk~P-OEe-CX7`J]#. 6hV2't(eqZR5 + @_T˙0LeXN߻^(.1CK?L8bEjMVz+4czȌȡY>!5@g; %_T\.萳 ,T;9u{ fR#W0esonDշ􉭉Ѡ"'} eDՎJqѡ CU7$22>DOĴ<ޛ Ȫ]XCY~1-?Ω} q6_ĪSU?IpYB%:e\BV md 8`_Ҿ\O#I .~mu勐ѶlFթI HDqC2?[TX&l$b x 7 :&x^26n4R@Rc~$xP$z+X`Lkm,㒃Z " I|Nؓ@g/ec )_xXO[}TR"S:L/_2l,ZF"KvKЩE}(("e(nXo}9b"w 9ZZl4^`uJoF\YWGPB tuHD/٧  &/:j^nK] Mq-{mx.ge1,#emL'sN$y )>fBBo`tG7zFS c*v DƄqb~7ծ{0vUNARbDY(@Y?E\@ݘԠH [#]V/72ĢglbMx>$M R3\6r77gP.jsa.gB aa@Cg~aTz:L l.+9`?i{P÷ӼC {V!n-"Y~e֍2[ԕ;7oF1)bBu oQnP*@#IadI+tl0Ҙ`79yx!=,E6|' N a (Of.K9I2vփvEԕ'H}zrp4N[ZG\-Pc;yb*zXa`gvKX#W4Us> Ʌb6>]"כ7ߏDA =_9Ǎ/N"/Itmm!%whVtf$7XHyS4rQ[-* H Os ZR4V$C0DS 𗧳$DZ@ V-~]m!Q-|9M|kA_XĜXk!RO;$RɌ[˙4KԤ0ޟ+=E%"mk6lJgwL^Pey(_ }hcD(x hIȒTw-9jwK`Q\q0߽eLl$ۜ1E6CxL+z ļW, -Tb^-ifDJϰ01y &"La{\[#J^BHI1njv>W|Q<h#ؒ-n~ İ39 8) ͗ꖊDI<*iqV)K*͆Uˠ@݈߻ēhSݸ(35&e:.B.M.4"H4i}^X]~rޓSn4r"FC`&|i˻rdste2z Bgc$M9҇2s:gսNw뭱ɲcg',~;leJMܷ~rf>jogKB綗JN6J\[3SDvGKc#MJL7@ *l RliX M?2fXE+B8M ]r}rK@947 "qy1S '];03hkK+Z%'Jf& c  x]OPdS1xtB]72:#`hfp]dgNb^)LF⌁x_o؉ip%Ǔ26ĦNLb-˚ Qr/iՒR8 7t- י A\FYk۷ 1Dh(ᜓ]r +HVt6!1rQDHe%fDX V"|l-Lj CSE zfmM1\9kw8TO&DHA4e7_7d22MU^yOo я;39"( bꝰru&YGWR .ZLijZtCZn8hԻwJ][ E+9Pl|l KNٛIn`oc`=ɉ&VkƻPE0u{]*sXCَӉȻŘ<i4eU[R !K]M`7yn?xq HxS/,βr4@^7JӎF71ڊ0kݑpi)ӱ)=N%,֊QܙJ1h*79F;W#F653DU Й``FH}(fIߎp+AUo3Ǣ_ @zjpʰb 0Yaf4-t8 pd%T!hZt0c=Z ,Y-.e#s_\XqHʔuQ`ailԕrjHa)L2zRE(>_ve>X=a!J#c?}aJpbJk3:IFC(/o-=i(h ;Ju ;˚Nrf_,"v Z;BƈOxGE rQuw`[w3C:0;qJcb2/]f㺝ԫ] \ X7+ˣPzKX :2$ƩSCXfH]a&dzOn~ls|ƅe7Z6qOXnygS!nXtW/O !ԝMi0*9T<滊? "n z|Τ&M [s |bjWw]+m+ɭ@@|G #F+̏2nӔh7[ ʨI!.jp$c#Ln_汪 >;XD%wX)j 9-TH3G2z~=k5JR(V#^{x"Ђ>/h?t2Kum&i o`x0ll^ @hHSt0Eq5޿rT&A~bj8D6R$}aU1"rIcC [߄NyT%O1U)S#G$4#/QaVhs8-tchԒމeF !.F[XT #r]&)Di;۸$gUm=}.iњ3n~WB%|U .jGziwv iK͟0PW5`E/$71)83.5;0T-0]ML=Z;L1:ABPBO[$B|ag^ݨ0Ӱ>OM;KIxW,m g`np}5d/%IjFUHCZ^“LRk к"J|D_(ʡ*a]Fb9 .:;dz#>:1ǎzg=ڶﱔp'nI1Ɋ fȯVp6 \nVL-w$L!MFAc4g'5J[ቤN{BЖʹ]ܠe0/|5pi 1FqpXeD%'Ǐf qj] GYȷ@V/ w2+\2o0^* g%w }ikqDcɊ!# vM]PjLs \wi[ r&lZt/&&S)݊2zWԑL\3,*V1C9ţHa'rV-OH=bmX,5Ta&'}di 5wPKu"h8"f~FbI%sg޴Ż[36V4\B$2I>9<7jA&quc]=I,*u9HDi=VfeO !SCG _08\>-V'8 ѥУ%P9? fw!zf(#6#tű1%kOMLgТmmDn4/ZhiUBrpƼ,W=+T'(|I:>^e-89fQ;"U| KG1f;.n:7fkЅΜڭ^ MqEh/+w]ç2J$ҺgMi܋ , %kD߆v$SbY&y\ Q&LmڜZ -sPH7IEC'{I;Kb҂'dPu,j@4rZ >:sL /5]ـ+g%Ҭ{$j:vDEr* Q=܌:&-[_z Bh%!,.K|/[DZ@G<[.!(%:e9<;Uh *O1'@ʼO`3o{R 1;0}G{aOC08-mW"JT|X$!ѪZWRâVq1|qDoR?5ێVqU2h8piy-mu\+8DoriPz_pI,a 6h KE9svK}4ESǚX%+<,BTX.= ki"R}> b.M?#pIk'9$ %\ť>Ɠ0p/@–R.hҥ\ K9ABc Wlx<*F]NBS^N٣L[,f0342YjwZ:C/vlC .mZK䥋#xo_0$h] `H#o&x"5XnZp;Cp?*+༯9m1`ӽ++Eud+~_2vxOi"jhHtz jxs&TkBfE1KbqB*N<1F;E؝馸kR=օG'{w8DT|adҮ{o+Wxi&p+hC}HIaw01TP6_aGDžWɸkۉWVN]e*DW|,!A'̘O[XаT/ML׋7d8I_!H?LFO']؆Y7Nxߎ¢ժz{$%.Ypz;AE|+AbЮᙰ8:0hȣܣn ټAxɳY?\6BQ@iR鶿 ĖN2כ)@H!#&8#퟼ .AwzU@KhpB{hA%M#XRw9r7-`\` |+,P%Br:I$ d5OT}ò#)78Ij}M?,cMtJc|}ʇ l kU$Y<0#t$MXiݷ{ kr#-[7ՈQ\/Ld 7[K0ncZ"h2G( I {# Č^-p²o/[L%nl˒qFi \Ax :1nioۨuT8BwGV\U 6*=?i,RIgl\UB"29OKP"iMje] Oc}vߘ)EcѕsoCIcQ]&grdDG44-lp{̂@ TjpgO*s?(gIi]ϤA>y/&\Y Ug٠MF<}h-p q7MQCjzƶӎ=<, rpdYVNHtl۩iQˣ`s Z80"2b!%ofvޓ$cW3qrQ |t_IK zM~.\ =uLG7X8o+EN%·N&spք^11Bn%x钔@*f++ހ0ub-su^mă>G/qkc[+1Fb' bs\)D+@9u m$G 5I): m3 o`P42VRS9sny#{4j>Ġi <-KZSE Vkr:`Ň'i_/PFTx2FT\A>H96¤S8;=CRWt ֧)ɗ{/l:—Z/t62 vU*-_e޴g5̦uaX`Gϸj-'v>+& dUKy9w3] P<0L}D]| , o/.c|ƺ8j}⪾%qS$쩙qlsDPk55SetfV"..e+[k-;}Bc1pGb }yWb⍜y~ft6 mOd2RV-O=K|3G[_J[5Yeb $ TOOFz#gq@iR^ Ώtkd >[^ h|!CW ?gѬ$v?ݎU9i̸k [7Com+>riBta?=X2p6} {iNso;[n?IqbMό~.k BV1!>F0ieu􍷭_?lFErskuK#F‰;'bZv޼cA᣸5#*O<1dLJ-kYkhhA wd w阹 S+`%<#6LSRvâ<;薶z8UPn_`Ic9;o)YD +ZՐ>:en’sMbUF)S|5:c 6,OK UY_%}~$pN P<,*Ix]=+/. #!wՇx衊@4iTڃ[5Uu9iܑkl+jB]؎ٝ%)p)'b0BB""f65k٥$}xnmƘ', /l$kZ׊iU\|p )+X,&{NYz2vŒIekft: 9\4"%Y `G=} [ߌϯ.uu[9@o{C(tNRX.]'+:=<$NiMײ I Z㧠IܡHp9A1,ޒ^ wF{x2C+ڄpp琘0 {|N,dY5?"uhޚ+T .Og\2ɡשM|Q!;ʢ[Vg㢃JE>gn#s~:B"gܠG$6bZ3̬Ȳܬ΄W$/Ͼl>\ЄF [;6M9Ax4UCkx/@1 K?v,2BQ߶n~=JR TuئUߩh8ЎAJ% ,+tbYZ@7%a&GB{UhэK mZ'>A_zn䖣$6xz!TlF*&cSnW.^&z¥.wpxVf /j &'-ӌ.X!Z н$.Jef'WS"yO3.d.}ׅD\T,7vyhK\iH&PUQ@ۭ\'+zQj-xIʱk ]|JOǿ=A";+"44Od<3^ (́7a t $*ʒbA&1 Z-Z.t )v8}Y,vUvU`OȬ&!Tcrms'z({'Hu}ܤ:IqE# ->0qGl?6֔ЎumH5\[Vv@U~j{мEۀvw! 8Z?6 mF*+#s*VK[}}00T`UIo*ԉVysEŤRyɥ+0vvXmAL9mx#j5~q5m? ^+G!GDز+Œwtq92ZB(Ƃz}"kT~ppHUs H1x1W'\=c)[alB6NY{\0$h]BVܿc0*u8`hZVí+"1=3W1*#Y2)<*iwL␁El_!܋7d=:Ws"c[P  02/TK)V4EN32##Z OXZ3+Mb41 s* މz3-~r=/ >*}xDJEbk=fvUjrH5wbt^[*@Qs,7X3-G>XaCJ5Kc/d}z?e\!$@ZH6't;7r+M|axN#Uxw=wY'd!K=۲$}$}>$k2bx(*=(2V8ٓVfO=/v&OĉEY*4QMLm`9$*mhpf/ZW\j X'mnZщ%=V C@Ѣmj0]vGX=yf330l&Ui#`xuJS'0(yn*[kH{0%K5>Sȁ]Vd mds@pRhKkon6Kx$sZ*>"h0ɃMߓ[#LjQѿݜnMm(IH‹r3 t@S+s޼!q#7RWCt_h="nЮDH4Ju~3Iv)` @S Џ̢J0В">-nI ;[m@.%22/01(Ymޯ& ڡx8{8l'u #u.[/-u+ҋ._|5j2[ ԫ]C2e^uE8]yЏEx3 돌5,I~avm8;5Pv_c9.;WW覟?/>ŧbb|f] '( !;&1jPUDr p2s;D3FBivr/bULzl5DczC%M j-e˜ڷjqPnEX~ )h#mJ3ꙻGi̺.6S deh$/Ե:WhT6.:!,zxܖSAHVQ$Qv>@ohcF_~4C>%r Z5zj,cHLJܐC5AL~"-5s<6B;W[uo(XZM-?uvϨ[lΈ6/Ьy)WʨNHfzbQyٽŠB ~;̩S0ӠF &^λ"_Q/0~t[ 6S+&%)'EAcߢb[Ga3)dskY8!(?U&++# u i*W{s<_ucyecl<<{S0j|'A.V7n[N_B787_rKcd8X~<Ջ &UG홵jG>̀Y:f^Q$|{3_ * 1Dy A`8?}(f/ h#2C®]K{p CnBoEqv/ާtۓ8Y=nr2mLɭ[ʆ<` =IBi.-"&cW @p=(gCV",@|)mBIm:9 Oknr3]i+ #jc%ZG=c@0cM.ia=ӖGn^bW͍;S6Dk WJBX#[%6+0Վ8lw}`32LE}铇].}8>˭>-4Q KK7O&'ZM50i.QuOyMLA.%CUBs tFq3̱6QG7xD(Hd/ ZjLZ%Qx 9 HUaJ=}&PT!v2?Q4.–@GūrQqF㥎:l fە־ x=#T{C>[١W̹^P Q%uF5>&:_$%?&[,ƷXN} )KyI^m#.Ӎc4RB U;Pzx husVJD$&MxLg Qس`%Yx-;֘t p L^lHvհI%#F >rtEΕY_%h 31+'i$@N<]r/@z޹ eo6j2r< ƕ{HaHGU>S}FCsX`nW5KH2Ɲ&_uw$ؔK#BC|$N{^G!{3q-m\P:MTuMCq6`WvӞ& ۲M}7O(PS!?DaEAlxЂvLP$S~F)1FJkK>Y"`ב]= #^BzǫޒCx֕leג[ 5Ʈgv*kΟ'Ub WN9pPC8V:#K94uY eOsTIRC혓kn-ƌiRl$7/'F@ķiQ0 fGsat[eQ@%u҄Y(ۚGe;ٺ;__+(7˞F n32"Dm'X*_) f6/)YbD_t>"Wb44Ԧ"ҠW,ظh'.WJ}H0U R9I$ebODT#pYrC,}z:k{\.8-3Fx5BF>`/mgyFA1626IM ㍢LK,d8&خ כߞ*!?ћgNZ9 QSv w* ) @vd΍[v8X ?rj pj4~Vͺ٥<(Dm'{:I2 ޓqZ@%c|?RWaݖ#mD4-knڴ^&~TB[7$W|@j/]-ӱJ Y=I+n8.ӗQ,b|'*|MZA2c|elꆃ@gXD@e|Ž->T8ܪ᧐h;MS(RoxЋւ{Cd6!;$օ1WSܿW@R6.!Wϣ)_||>Ni-j\YU_i $6S/&g50 \{QYo"LKFbm/<fa$/k7OҫE!d<6;@oƃȸyz*}Fɯ7Y֍-, eZ;Y })6K6dXm iWr'CNVnEf<Qv8jm8D@@&Pk_|F+qQ_Zt7%u00ݞ13HW ׏t!V pgztDToVOv2 vMÅ<(L zGoX+` ek߀\] ̯#  k6`u4.WUZD6F;ؽs+I!rs3n($M`{`@Q-Pz΍>@\ Vz 3M6ڙxHSQGih/5t3FHboUzyYǐgƱ h_x YQ EAKuUxB6mTXzT ta qߤI^H - Mз4To`8͞ȋK(Q P?٘u@D&XY|k>ƞO?[tAj"4G (]p:9cv4l-kpy7 vxqG!c:3 r |x,jؐQH*oƼv žxy-opPOyRFo>|R gtls V+@gǘg ;(Nwo']b ZLj,?AY2yGf[ 3ϧmzӦptMo#I\[mIaT{sF2[ R:vQP^2!\J6S޾/Iize3;`m]=`דQgw#xP5>N4]& 4KQ&Koߺo:洘7B/NȫnzD)O(梣% ~CL0׿pI{T-Rf% TU^tP\#s+<ffNxwLx 7LT5>GϤs÷G ܛDpةAA3ɫ}d-&Nd<M\Q}:F&0-Vq6:sur@rMNyQRR)J4f^c@$8Ύ{kgާf.؄5'#VyJ+nHMHqjV i'[lctPx n&<;6To5Sm֬93>p2hEZ0Ϯ=;RK#/\T=}) Zhh/`}+,iGr; M6eptrd _/B#@Gf2k8dxd-'5Vcړ6v@pWB\Na2qs2 /&6Sr 矗W,(Ab52$?c4OZa"2QG}fO;/[`U(y|+G}c((Ño|?>1W n%W7C-,"0|s{Z-55rV_tAy qRY}/fbH6Ŏ7YK^dќ}Me(A3*/k~ ґph+aPݤstJ2! P94:p8$3G!4|׾v˭P&x0#CEP,m0M &I(FE[QH#U"}»= ՟0H)15Y杇r<i9|b Iռ@~&|Sދ%bI@Q1nv%{8Noo&ixTB0q+~d'V6%DEpD=+Ϭ<zyP$<hU"w"Y 6|:Um s~ZY3扻n*LQV ֧0YZYJoF,:l9UGۮ%ZvdBVOfO׻*ge][d/AwDI5sd1ְb ]TtG(bMp <7ݠUbإm D|eH廬Th9ΉQ۶uy*{:n1lܫ` r-(kn .[j&:Oˣ<&I}b_4ΟD(阓hsP|J^ܽɌ2_$_ِ* ͝P.xT[唘M>FRxQ #t<,j&xbχFHik+iO&Ylի~'0VbNL'L4Z p*7!)nʔ9iqi-&0kI2 &:Og`OׯCoj ]"?b[D*g8t'о+L h4H9b>w$7=Wb[m#>0K8.:^:-IQ!3An1?{uN9!tpܸJ0߀-뮘I>*UG2!-e Ĝ|rm{XvDkF‰ۯPvtq{=oAN[Cmu5)-̳Oև=@+!+087,K˸!'*6(qԿk"BADX@8!!39i=h>;oYs 'c}h[ee z`%tϑT6B p` An򨢩{rz7.@͗l̖|<}0rB*!y2uCW% MYw.Xm}^P\m R~r†I_)&\=eaLs<Śm|94Ը?2%sNprSΌ$1ҔwI~5۝r5"h`'#٘s12VȰ_re +lJs2Ā"fYBeIԠ 7a!cKF:5m*Z8,$ir/o̽l1`zFlLajzcdڷ.UfË5q*Hm\b^bV7hJѝ V ^NJUWb`hw|~#vѤ|W$13Qc W *K=:L= 4U &cCٷgPҴh?*%&_N:83ߓc,ʼ^!&ok6,uC282g!Qat! :ON@jjE5F]D?bV`X7ȑ2r-)<23=$!]X6(xѧY~beW3ڙ) v,g};̛1;;y)xux}-73s=L߬>^!LzK'{Fh0N؞PV$TeC׍T&-h樾fei3`uH)Kdlb긍dj^"$m6JɐPQs-\R=^P6-SwTMErM^;@f's+\Bl^uV9XGZ %D4ڝsNJFK)d|Yo{#>/Z `-eC!Enc&=LbU!ќxUXH.Ł "rn2BD"l!B7'u,5?L32h 07RšM}b1=VL 6h2!)̡̻f}Dº^J.@Śu* (Ӳt xow`| Q|Y:$=ݎ=%6{`ލ-WHBbKm ~u^,g`*|e3>tVB~Kz!`^=ǠNyBT0{tA9\Hp^-,ut2Em#TCT%s}Bk52}nsMUԉ fmc֏Dv]iOGYP4J5-sZK}`qgqމxFe8 ! 3󚗀 ';$guLD}rO=IȴGY=ƶ3a'{@v\]6` 6 <F$kilghQc=cj[vrcܭߚC\.R%puZ{/ '^-#%kw*3CY+O4".xSǂ7떢7dqLL~V)fR)r 4*\5/54JäWFYˏ FɎ&Xx/'#}{\.Z]z ]F.[POH)lGؿi ,L7 nӞ4Kqcݑ{۾suC͂l!_R>S?CQ?DQlY1wj565Θ-FTJw%aӄK3'^Tln6BL$ize_:(\Lw3zdL;^^5 Ս4 a{;jZp]_wc(Mߚaq* G貶u9ɡ O|zx-R qKpU?XAlG}@:SǕǁmEiH w3@WW!s8 A4>ʺ'JalcMl(/:kP{R#OAJ 6FTu0gYȼE[Yq%0Dn:aOQKx6L-tшPE'}> m/уj݀x+hp:\ ̹3>R bZ IMg>3 )<ү`FdKGP䜮hzl ,z'$?i^XvsA[[VӶ|'H?og/y:WQ&:#Lm3G!$m߹ˮT|RI֭J G~mN^Jv[k-ee )lĩ=ަa&1-MwjfNpXrӨrĺBW}O#L|mJb-èҨ'n:e/]lHOtcpe:s: v /Ւe͊&1Q8l;'ɍ jP3P,Wv`&l<`@h!\AT&-h7Y3o{pYDONa3`o,~k\e,ݿ.ϩ|~9H|L;c>uQ_ Ry8¬`[Jx"I.B'?2#}tWZW:_є"i>QdH(S3(# .HhGմ$33= LڑwPj6벡)0Js8Q0@5ßE (R/GSgltDLwE.O ?=Ow0CsZǜ ,۰ /x  }mo1zэU%wKw)H)J v mk -<%#"VoǭK\S $Nw{AzT_ 9ttq`MvKηmtMz3oe"j\85%H'!0[0,Co~)KE~uyQKocPZPX۞m6di6&H `%nڹ ddzd-Փed -Wgn Wjђ5sl8өa<~`h g_>}'mjcߎZjY!Z$1C(IzHM8Mu7V]R3fR[lԿPּ.CH +ǒ-7 TU_=hHaZ?$]. }e:IWI+sm:1HΪЋ%hm'4QFw76u>)#aQ<4~5JW%# }[ϰ03x6Ka\0'& Y5&iFm-v2Qd,WӅ/,v+!Ltc#*zVE<ﲼ`H#mI(Tp5dܘ}+~ LR)gqY S'XIO*Q㳃IN.Ѯq~(.ZȽXREݯ!^o\Tb9ׂoa2s7@ĚԬ%"geyOVɟO!x/c?\G knZњ?wg VdFḀ}V]Q.(L͇WTO-_%wfŃO@8XO:#1qBo0M_ `חZMzf?juxs;4#p|YAh}f`V? [AL[Gq(-ȣw"ά n$OU]|b7(eWR)8\ց0C.NitSQ3jyB?B(KH,C"yIkglmӳMCvX Izc/3ʈ 0eO<32JxDUyzz.Y?9Tv:O9kAwb[v3zT76ז/R?1d|zC{T6Rlz%<G$_;yi' rT.KF+DXb pv p2I d]bA.G4iѳ'gn"% t>}n׫AzCKmڷf t*4@\֔t`)L;ls<{:ΜE"Me*Zu 4SQق:.dR2bk c &KQ@<EOiV2PTD1PzqOUz;# }$cM7R C/ HOX s>?:NV8u3 0SiIKfqe"w "h{ @8ӲUz~n+T1B7ac\S͐(U\HF`[ 4SadMh|n6#DUh琵~*E3g.s b{Ak9=JJK]d-"4nq(>DC# 蟽eNǤ̛+vӭ1oSLk7uUnJ*._nk$ lɹOfg7yfU,ʞB`οRN 93,-h9-\4vqD8FKrlq NǜMY8ch )QDH>م=۬S\8a7.>-7/\#Rî|-w&c&S'3"u5M}?#ZGdEqT,WZ[pBgŏ{X" .g|rRJY~mZ3aE˖ޛ1"ɮk~YS_[MGN* ɒDZ(eі-!&ԝΨo, H Cfn 1tm7߻:ˠ4WZ~ ql$z[8Z1Աȅ6Dgc k`&6/Ƶ: UJx_l :]wVvqS1s,,)СH`P=cqeGh@[kM|zY_L*zWVrKb{2zxv#iK̟B1Epg QöZNiVwS# \Fv^ *8nJ37܎E9y$$DJd8TXUٷ5kdGGRG2c̩c ~1 FCşcVAi_3"EkMSֹVɛSF\^Ur9beIR65xvEwo[ЭR*_sѼ-Z>jI`oV~]Ў2Psȉ = sbS=8C9{{g 3'Y1f ZLCN&wfSo#[9M|nX#[_tг#%E5ت#褴5"vatfV*LdbZчԌyj8P藠K^zKA-nk-K "n׀Em{U{]cʁ `]$~*ݥC;1l<ӑ y {"M{@5Ry# fӢ .f¹앀QCl#ŰSXx]Wuz ʫۜG[ N&Ϩǐ=nR0#ʞox&O\Iw90mDxTwy\n#("mXuڜ -ȩ'0 :%5/4k+G"RQܷnnl耆A7x՝KK?ixjGhU.\DUin8EG'FhnKwP:vdoET!ZNsfK"V2Qÿ6/?u12'+6WV"Λ A<>Rʒ]J_hI[F^N!H@YN%<fPL0`-ƨt˃܁Dž};͛wGJfYaU4#b,Igam}>L99u)_j˸<,G}HʶP;9(5mok}+6Zɸm2P8%~Vü핮wGEzDcg8bք&N@Hzrp6NinN._yf9%>8'MkpAXrvfv; L}f=_$0B`QNE4+ʀդf |*+%BXK@/3<^QPKPNv̬Fsd?'LE"5;#CmU&9i 6TU(0䎟U]sŐa:wX(p>g"-)hF3=W ҋǣ# NҖn;RD|V `Y)SQ$3׍ % (v"ĹqdyZ`"Ӹe©olt`sgO=WϺ=~n&OI!8ՀЧCo3w6RJ VZ/M1)?d2~ mGuʓg$ ^-o>-:RjKA1ȗ3;)W#SHQyvhiN,aX~-&kXoSpnNawyj"(ݒwʵm'<= i?r\]xS&YD!Ԣ V$';.Vc%7ilȌHb@ӊW.Lo. *XH];)V "5;8# ` iAxk*"~kU5Jon&Cx4SZ[jt [;L-Jha Jk&?LY5> Cd$3ix se6.w[+bQ˱1,)(Æv V(j :}ZWqP EtuIȧu bhzk ε%WAm#!}h\kryBae6t}/nJ mg9. ce.1qDt½K{ST5؄!K@P ~w럯M=/&T68AIJs_j|Z:ئm"k?`\@oW`!h +f9UjN+H~a+ъK#`fJ\k=mܾK0γy^E<5" woDoUpm_[vb6蒁^avqgaOccjDdک 8T3_~qwC;>ڽcvFWT Oܾ% &TGλ+[ylg>ya%<(^Rsa^'h}`BuPU`FNjt8)^n#Rjh2,CM̈́ɕw֚˲K)އ[sOPL_wz(M|" 4*^{ƕ$)vں͒'gQP,*!4EFiasᏭx' ͆\Xy|ZYg,!c "3$l*9GVTcIw`% VCfkK~\+xtrb؂ };\ܺ~݁M?x:Ip(pɴY/OG)t1I3dʋ K$J^'پ m@S% IL3y̻^  ̰o-׼qR!/h crQ&~Y2欄4kUeU4?ES;(@E. \ws]z^MI$bF:Se)hܳ^- 7/3 6z# T;gУG2n% &E~DNiVFoNQ,uxZ{6;pwN~J4kK*@%"ELmδM1_9H T xܘ (%p/ @pl`42e -!nvZt`6oV.rz1چ@ g:A\0(X-}{?ҨbJߗ> }=K|Fv701w$]N팔W#4jpܘ=lF"TfX{ -wfjm>XcnfӞAząlhE6n6_3QmB5[Є*Akʭ$"K;?)))ֳg&X#v'`VbTgڮ$x 7 !A,8mvwL;RS79㷮=toUC.}dd}o=xJkK(fiҡ3~Qj,@(!W}ЊJe;|h.{2W䦥oI C%7|ud!ͬR7OI̩ugFDhr&/I-vxNjt -bA=oIi۝ VLL" NF{JTZwz>l dOxR٤l{7] pkAn#GtEOU TU>T14KM*/_::,t^8Dv4Ύlʦ7w/wf ڵ~Re-!CxQ!&<]\4LF9aC,bbA!fD[5 >֑7N7 de:ֱ!5X4WMPW6hVyºg(1$zWG٨ޚȻ0'9] 'B ]ó/!uqȐ/b˟~T!LRy)n-ԎT)DArl~1JnvХb%*Y&srNH0gN}HfY~UZΕ GA;Eo rM>Gp5 טhˑ<`Qf{I zJS6B50$RmJYWMDP3Цtc oDv_JjXc3_ BZDTʆ ejj|]ڐXr)'&n aufi6&l]F_].X̵j;jn Fس|zuo D*0Y`8]iq3pj^?R+[).|ܓe,pt wWR!⦌jYm.g-P Ζ X@x`M6Àu; c̗~[\) ?8,?F%.5 GoƎkMMs+sjnY=`='|iB*o֋}OSqΌݴā'?,ޤwrx[: Fg73GW=Np'ͬ-5-[o*ue>O߭Eg$=N*вa wm4qo+;8iA=#Jɇ,qBClu97*>춂#Twljxca|sDWTWQ׮YS*Xbe>59'Q*5~F(ɗ&]`!ca ƐA. vu/l,d(E1*[M0!K@$Ǡٖ4^箄u76qz7#~(5:Pv"ωdFhNRE;Eh|TJ.Hn$0KJ0%R?20UoO0Lq>vO)D*wPeIPUr9$ (z== PYx)]:^\jjN$إEcG}iQYKqRdۓ+w"?E.lak/ygE+l_d(1R)L.^F0MZ]N)g/PmIj2 uLxш NИ51lsVP}|&ω{)f`W/%I|{H9įRmUn$Rvӄ7CSPA^ROFd_ۃW<#pk'6ΠPT9'VI{-?ïiD+KKC82cK^n }st5R5/_c9 i(JޖFz7w?\n-t>N[E8*-wиa[WX!^Ɏsz)&+޸CBm%k&j*fcs;ִ Dž!2>7|u&V3 #M{VGUwڻ9Ҙʹ\ 1r5Ne)TS4̏ ́EaD"zrKKj}#1a_'[HDy<匪iC^~)wui"qﱞ :\[2ТWCGLC6M:`hbĶLk`ЅxK(Qk;h>qrN T16.C2ڠؒ#\m^YIEFXN̋&"W(:Yڹ{}8i$e{^6d9W]7qS7-gl]W_ Ɩ`x(o!82E= w c5_n_8RyrEf=Iō{Jk].mE4qW':Ei!=1eQKZ^j!BR Ei>|˥0IZi~Wt//dPC⹈d+!phoIXqƕ`9 ?Z9廉z < 7lK|@Ӥ-j\eE74b% ȃEFQn.t^KG6Y -Ն\dha${|.}Cſ 2# 3?Gv >vXj5;zHqQaL@^\XwtVa*n@)]Vc3V4aV.Cޛ1\EMHYF}XZ1w֗7D(r`(b(Ra;^ Sی. `,4CW~f^̷Tƃn2`GA2iaCmG:Le`yAwgn;ڢ{4?y,rUL:O^gѴMں?(A_m%19a L9׸Pwj`lT`A"AtSm<>Ⱥ}3@I{<ԢV?JԚq XMjC39K7mTE}ݛW˭pʤܠK`B9I7y-8A_늉yxmzuv0>ٜƲqv4JNarͨ6r\ȱS_ (,RϻȶmZ}> xQ̰7d㆜(B&o;U4Se7Fb$SH흈=ٯFO'Xښ@jo*H]CD:j܍I KHGT >﷒tzf8{,W(i*O LSO=eAǜ^wC+7?1- 1`Y$ixsIm>h:L4DbL vz5W >S0/Xɲ?fe+.H!>2.-G8 Uhǂ]s2sbm*ĥ2'JaVnҬ3E]Tc qN ؏p'a 5e7kնvvGH*0J:GqZ?~9'9 k50zK7ʄ2E2aE>ڜ dwbZLh|9\/n1=z'C MpРotZuZ,ZƐe6!I{xM81}tڌY:. `]oARW;/X4\fDJ0a>Ρ!ʚ,J"0='{^-;(e' !Ek*dfZ-GcV6i\F˥w%wzPZۦ/72q9F@@@zTEECX)&+jf4s3i2GhGY/Z&x_#4|q -Wu@_Ųӟ0G6]CBCtOi(xʈ] q&"AkF!+,]H15XNgʋ{lhnex sT~_iYfRaSPmeYfۏ5Iuh x r*8h |ugI!YCk(O,}1y耖4˕S ?qH!i/bRh!cw¿8uzn)WSMn?̴‹xu`6>&sWO_@Gx6Ϛd؇ּ^<.`OVedkuv-08÷z ܦ:;dRqѐ*K 7nb}dQ<6xƺd $ ͤ"_d~0ۻoKAu߲8IL}L}c/$<)=N< Y܊) B^ ]glnDdf"a传bQ> Jt `xqq\J{&tHzۓ5,۞d ~$HG`AQ+P9͌4w/<.r& ia~vb7bB6]K!2[,R&m(D"n8c5?,)ӗMDXmƧٻڗBY[cﱙ`7$U<-P+FDl!3OZW#'PK M!`dxM.KݧVkC17XFCbHoG͑7C}AнJW l?hë>XcVۺji|vDN NU?㈖c+]j;5x?-KQV {Ѱ42abng#1Oa!uS$po9 CUf{+S_2E!=i-=}=-YhS4fv$?O<;E+ +Tiy ી1t(T0 S%>gJ.9C~:@[R5ڦv!Im< Əmepk%Vr|njI^4qS σNNx99գ7'*1J _@kW<3kKI*݋0qA0;͉AWl3> MG Dipq>^VQأhD_7SrPۦ q7`CI8Vo2j,_NU24e$|4+ L~ glhqQ]PY2/JTH{PjI?(VA6YW (yS.5j Z7ӎUVBzd:!6YeRn^i#^` #5*Y(KR.>=kyJ^ap?Diֶ=@4{n1n{荁蘤Q,G5Kt8' ϝ{> #t^^7m.,(`gB@WFf!6zs"6!dUwSe!xMOb 0nl[z}y  8F;(60e3 ˜v;C+ͿJy9]yu\L͏BFi#0_uB/9v4&,ɂK!99PlB-V"r:du-KA$˓bզ7?}uogYV$ro.6ڤTҢ8DN胒f{8o} fXSenNH? xtvAc)4%, tc@b䓆V7iL >oYo \nѫGSt6/N{o`@`HP_q*@`& {iҍ=ٗ]\Aǃ,v457n+,Q}-ʋ)~ʝ3i6Εq쥟K5EC5Fkep+5=IHg4,{(-d;Ow<<W*ZdZfmЇoX muA.em1gKxϔOx:O ae 4G;єڪy|Sl yc^<01ݠX1f#g:Lp >?[<|k)̄>:o(;H.u4$C ;S:W(5 [C?@9f#h|MXtESή.wx"y2|D3暗+څ?,(v(rdA#z|`TWHbg %طݰ9aO!cLhW7nj&NuS ۋB.zHUX5Hg4STnh6wԼw2.9/˙ՃXDea9)EPʕ=J<1#k(̌+oE(1$|ѻo&v-S`/5yܰx9V2ㆾz x a I噯mr (|QNl瘅kGh Jߒc< v61 WayI Wˮ/?;[kwUjb7-1Zs՛_4 Z†( ~ TMfUl{"A8ղ^(-y '2~s{c%Q"ߋTN$wשQÂꆢ?+``ȩ(m)hƭ@f9k$Z h 'M' zr6Sx!T4 2m˦ǫPeßPll N~b2cTNbB=c`[~+!Sw}Mwk6E;Щp=g%?HPwNk)zvd ݥͦh|>~413׶oQ#U嫁I%um(|(91#\@8{Ϋu3OV{(qV^#EtXǩj*VA4y*g3\>UZ9E0Rla2qn}wJDdXmŶ mVk3Gu]7-,T|^H+P+э/^8>#(:I.W޵/ץzix̥VRB} 9O˵CDI2%/kk`_6i£hLJQ42 C vU]E4ұd}$,|S^ a!*QxX7m),sP{8AI5‚L`u7#WP}Ê3^ey{p߹Lʾ}iI; G3skx"FȤmN01; _<ϬӇYM]d짅k0$}jIBby|F@UsEYI7`3ʿ<.lb_j͛pcKhH[ Z>_I9]Nրzr0lX|Osд N!MȹE)̞ˮ M@eiخUAVՀ=r.?jo{ڒ,bUn9Kv7Ո~-Խ lr!@OoI<څo%J s &;DQ"\ds3O9PNm(tsnUrcl>^PRe)*0Cnΐ'3 g%__Wy=.Pb4,MxSֹu1?﨔psOF|s @pe}ɭMtY;OlT]xP@1ƼM ~3:,T&#'apD"k0ԛk_tʰ]f^b`{+ 絔+]*h\1z ǝd+v̻,lxo#IolB}8d[(=Z ֏O35]'yNx+69ic)JE@ƭӀ@5MʕgҚxz^ކFO*d4)y9.#MxJo.`@+ *LA1OpR$ \28 b4Vqp܀V-a]#.%OsŦ5WHotG2 _" cBh|^6+ 3kG:0R_E!ט4(/T ҭ!Oi߆K>ἅ۱^a@,)w[F6ad#7)U2;)W'> x)*\~1 #i{X _ l}F_ Ԅ)=4>TjR4 y*=oP߸ L;>4|Z.R"A^z_}Snp'qߙr&D} }-q[D<(DFVȿ+:Eܖm Fk3Lu/ⱍdۆwP]Жv1eG4I)i=P4BPV%\<1pN+ $K am"vl<W.,l4_Лt?]fZ$bS{g5lwoczp,y5۩I|FQ.;^wY5KG?V>} [ r[#>sb\ 4~S"ĹX|cH*`zxe} f`L,󭄹ዕ87郘:7IsջX ҍ޿˫S }3} `bѵ? &6jtP;ZFtŧFUS! q Y,zTw*Ajy%~gMGə^r\}G‹ ''^ݹ 6Et)kW zxeiop"X{ʎ+IL5/aFN֥6@ 3xHyhS܀S溶G?nԳr=tEyVQ,4"fQ<*a? B%G!k*vEܼY޴~\Q )lָS_%i zEY+K>hi@D`H $ 's2{N"W[Kaƈru;EY߆Ziܧ^]yw-)duH҅/;}}B W[(55* -,HPvNboq;҈&;S_W_B75WjrӺNӻT{Zf:.|C|#G]kAz !!BYM?]Cc$Wa`zG *Mܾ8<-Ze$ޫ{ya򝥘w`H:=Q|A;5"8)s͞7nmK+ei$8Ggx| b <)_8)NɁ!$:> 9m$%1quQ6t䆝!8~g:[vQZfVjh'/<&?xx+/ ` d8;%_?WpU9phk~lxduE밟Bp>3Jp)(}Q{FZ$|?0Vd#Ȝh튧A̟s˽~֍ÀuiDOB1z&P_nﰁ.ƤORj_eRuQr8z2\Ş-rػ3}~Zil.5ny1^/z][|SZ둕9ϥ i.m5^{'7N_B~k$ä>g,瀜SI!ozDlfYr`&>Y5s 3hoTD>q8*Z(HW{<} gØa_0-,ԔmрӖߎ<>eՠx`<-!P4D8eo2f*&Dܣ,@0~2CqULБde@TU(eX|/PKr1YΓjZ"57.e5D5ŬG գrԕyCe޸`a-k;s(6RW) 7g*?}3(qT|k4tvؗjf EUwCRJ+RDkiS0G(aev.,`)h o[B ĐfSǚ9 *[o%^ዘՙhW#p*To3v%]ԆÔޚ"|pp2yǾkNvjZ>hRu640SC ;Lma[c;qIdVtI:!U&^]L}"#36( y;9ڽLq1.1N0ǼjWʶq "?sm#eoЍkO9 U@qz4*!(9ksbɏf/EU0@ڳ _#vO>&efm$NMet7tmDKqC t)~ɎMOsʾ-þW?ɷ$[il4~a٧w9cKlPOy`3hB!I >9 XyT5^jZC=P[WE( ?42`,;y &.hx3G(5q֋ dh7ȣlV ]FK$}ZTcrRd2|\ 2i֔u=7`ۤ݇yeMv0*8Jj}@,OLݦF*^ÚP#^$jqư3s]V/R8;ji',r`[xyD5^lS,]yL ϧw08R˩|@Q59dhί겐U釭1Z3^Myq*}D, m$a[oДIwRbr2Io;ڑK=}߱ԓq~*(6[7EÅTɌq'[gWHq8aI_4-3ڤ.*sN,/Be$C7߃8q"ӇT {Hꨌ':iPgiLACIK(Qi@ER^؞ϴx$y` g4WdUÒr+rxP`̲eI;ne9U**x{1N?kttMu[Lna*J;li(SktyKLWCԪU+BLO5ǟL'OICROǔŵ)3 ku!m"%(HҐ&Lh3!M"g$^{= pp&Q"u ,} +I&o&\ =jP 9L;7BwPAbbXk|K& %c"PFRy5J^BhfV~eOor;jH#SuSp~_w։O&ljdI`ii@|ka\bO ?0}?"2 x6xHWY ,[;HY2տfUAH˫Gѷ}h2  )%,NNV7E> E8xA=9U&5T7YXF+@jckMsOhynioPBlQ*mEjY [c)ǓڼAiY+|Z6m$\ -go1VTv$]>-%{LowγiG7se$qw=zu]V-<;%/(ҭY|%d⍂_S?&wͼݤB<jwPJu39dAJf%iK>tqeMҭœrXv@kVĩv:nzSWo`̔JR5m.ȇ{J\7 plƿ?qtm # |{Ge)/دoy: ,>(w)ێU=H ` uǀ u=QoX(҇Ei}KF.jɲJ!Ս?$Iw;.>}7fsHFg4} 0ŗ= tDl^ Hێ;*t ӏ} :ɤ30[Qbp^ ޲Mgy~ԉ4eTXjC.Yl왪[8j/cg rpZFNT+UgNY~='M~|R4c6hJXV!:BÈ6hj ;w^mwB"3 @TeJ )*,ZJ% 2/us潣L"IHp-oIN}~kK4Qe@z,Ъ |6ia"-Z6u7~ckJ880 R qo+K֔wmʥDwp;jA$~~KZ¢oQ`})_>H z\aSNV+5B?.ZKbI 2*H8`;ք @Xf?\>@e2w꣠4X4YLHa3t Qdug^f ە|ާȖ FPX?6yeSCјu헓2s"c7+7ƫk%HM}vٹo^bc߲dr~ԝ=*ָ`2MrCсjsclàF- 3;[ތ:ƏbljFUcc=YmzRx9K~3..B|2)@Lb⚪8%7A{KalR!H!їՏlHsqW/30:xnc r*5gbaAgJvU>";05\M5K]LGVbMpW^ѕLux_$k0;_.;õ yt D#v&E Կ;_DȜ6b`oPLZqigN΋Ho1C=[uTx`Jx4OlCuo[*y"ݬg(o"]G~ktä<1l5$i,DSe3ND KF4FTs>v_|)Hx,m{QT4Xeju~#X~ApThh&L mȯ3\= ` a-碠T/hmdKgʿ ny:֧{FRB Kr\qg\9i٪:w QM).>K6r(s^pŏ&5VwP"Q\M׫lJXK)| "[B GE8nS<0et(ҍS:6T5y2r(+lvU`{?v/^08Tm@/87P*W:w^ʿC?5 &c,Im#^  IIܯ @.1@ oŏ~2__'1.bi|=%qdHb|USRa0׈y݋KM1Q;w~ @/eWMYnO?j̜ѓIc)ր4Ce:Oe<`2{e.\g)pQ', »`5 =,?[Nuu暏OAk S\-6?)}\ ft!j>E%%B򾟱淙ծ%FT\i{Jo08Z\cKlk~:6O1\I9 $mH+Xmn6(LSmh .G`b/6usKî>}P'qO8:3zBvA%3s) &Y͌*'&M޿SkJid ' ۞3ÍF0E6d2E*[]_$ց}c'xsqRAcBQ,\@em̜XvhtXJ(r E50cTZd%jvw´Í@6Ѧ2ja}W(G]'lS({k~ɥ1rZH;5aX( .:`خ`+W} DaAN#ፉqmaFZ9'.{m>'1p}(=-zTxgO/r}ЛkRN\fI:wUq b͓/TiX'/1P{LLUشlkKtΙ=2 "\8RݫD79!7t0E;bH]l!"t5dIc'Ic@Đ1(W@ք8Q$r#=g~ÿ z~ g{>`~YURu=1lX_Ż0oI-\"hҋ☉̬lŨ31wq68#/:'돇4phUUuGI>D5)9J,5MFy܆8A5VpFM`LVtҿ8Cd?YHP@3GVxTN;H g޶=L )!ւ !D8 ܂'E, sG5g|&'-c/\%ѻ7DŷuG`ʙN<@`.y̓n?o+,a124@Q4HtaUXT^<\UtNob Aa{y^k6a.1SMkyTm<'0TQ'?Q2 hU'bTR(f򻓕(YoaY$ zkogWgzXZ_FwlT2%KiVV6o:Q1kQJgat ?4OɿYh2tW<:!82縜(ˤ*sj2ԕQrd.)5KE $w/tnJHkc7CU~޺7ⷹ%р*cK[=)"T~/MqHag0zNK_M Anlv] s;og6 D1/7VH0 (ICG6[< ja88,m>ӂt𝣌iH^S[a%h~LR|VǾB3/pJ_ Rآ,WyGS&O>HN>hB|}R6{ 64!>z^/yf}=x).5.)KIɈpXdc&4,C= &%Q" L~&􎇷̕DI7;:y;> .X'Jy١: \_HK+o?xl^Q9y冒 N+O%Y')!Wہz3J`cQ'áuk.[1W8&ˑu)A`z![:?wO'̋CI @cU[Fx52%8F1q88GVIl옻Xdrk$rˇs/kѢR5fXHz) x[ϫ 9l75S+kR1{VV،.=YґpjSt#/c㨾('֟vIH,G%MҲ X"S'Pq!E@m@".&$u7,ryW ,>=(RI(]KwT !:mvwrԪlm$%l8cy &S8>ejWﯳrC[|/^![1 %I `גT1 }Q%!|$̊H$,{2}r*ȏx1 >JPF;DB5NQȼ(o--g5 \ mJ܁6:y R#8bc =郹uB< O P)qJ#Ή zÆ'@&qP{8Ƃȳ8x1$ P%̸=qMjMo/r&a+HڅORouSLсf@vz+x8VK yCFp2})Tv&ӔJJg%.>[Za=X+`P&W17bk.>mjXLK6iJcjqJj\^]wJ[a{dd[X_$(ÙU:OS􃶼[@, qAq+^RNH)Na7HԬK[aS蛱®T6澁>`D(1~SrIQJT $f*f]8nz06ѹNr][Ջѧԭ$>>._%1Vt?7 > H!A=2>[sS"kb ?^Σ u_z!x^:[r BnL''.bGY$&GpԊ]yck4Af+܃qFo^' )E>ܒal١l8; S+lB\bI;FpVlKgƵ5LF%!lsQL 3_s~Ky KոDsغh(]!VMqn(Y&xSolz$pFh`yUc_dy{Oeު BrrcCr Ќd? f› pQw2V"EuAb0nĪ|um]MVÛ:S@EڂxT*h)>H!3OWV4>US7_xz %AqE7Z.O3D)p5 >Ay+*Z[-xS$Q/m׍K.AJu[ȡofB精 6[V)*4D!u/W[ЄXYpy/He^*6WњqRޔC߇.8D'F9!!zsWxmTڲ#I pH?3O_Y*7KGQ%{{uLgs9"6O", -/=@F /{ơz̶ 1k@$n)}B||V ԁod;2UTb n{F}z]d;Ώ`XOjȧk3P@nyYz,c ls!7 ZURPg^"0E:%w%8Vc7QS| ǣ#U3Iy2@W hkgEc8>R3T7ÌĚm:r1% nxf(쬦Q݅-jgü6=1FΟx{Ā!%XdVq{L9nP2=l#O_X j.BKE8A DZkw}IUU:jXYeaI02Ct0>#@S`؍{K>RKZ2te/$SAҡZhge=v ҭl5AZgzdA6}[;Z5[֕Կأ8w|ދbAOӹ9=fa*p1A&28%Dr? ZUL ڮ@ӎɤn*0,^D MXT(/Z&OrN`,}PoIa > EM#anYIHNz>>LNjϩK̼Ol |W7sұhE+p|NcHqoK+U! s2t%Z~:/A,%SEH{S9Ϯ qr?S81pUd1Vg%W n .0Q8bbS}H~QIUETN)fF,hfj+O0+ÙA?XґfL]iPj븂:[ytT1-;) (1{ng_AprXJ_]>~nI9i" :bmNy j6\QdC5x1rm+$(*=X"ab}f\O2QjnHAhl`pUuXz a[KrZZ <2|a)i<{e@ۙQN#{O7Z oTzYV$&=-X~lפ߬0Vl_)ɵ[7w!FSv<6JT_.z쀃= [n أi9(`fgQ#fl؄hQ9D_"-m tn̲ߵKЉ;L[O3e)~4RrҰ2,+01/8Adʯi [O5['Q Ow@j<fH_ &noJ1mkK2J^əj/Oљ.Jb@ekx~{->፞?N7HϕXa/;ysYħA_+ģ 5,/jt}{QVUi'(S3Wq-9mcFuZ a)_} K'Tx k$ɶ.Ds#/M ؙ=B+|\Aǩ%4<I8hj`Z3F)^%#.m8*y{s.*)Eiґ^u-6_cL$&  Vϋ'@ýU= :1gG %tlt3GX~y<ᐤQ>[L:걓?$'߈y"(?FFb @Ɔ Mi'b.S.3В[Bv71 mxTXZi?ĄftP(Ɲ1e=e(Pb{>LW݉$>臒r6NZT czL|'vDCOe` Z'M|~ c ;` Gn7ڭXNGdg8FV'a(7|ʍ ^P鷫uxO;~6Q>P3we)/I,%:RYs+ 04\=PTenƐ ES%}T3|*d6QTMKGF"YRCe(DR9Iϲ?!ɦP,<ıH:.[φHlʛ?CHhK9,ȅ+vTz ISn8L)@P=pb2.>lV o^g/BJjN oza:} wn4pA,ct+K]>h%4|ܤ8U.$}/I5r[$/LE(uM-,hnV8Z8@K`TH`hR ̠ĭ o{9bE6l`s6Vu$/XA xբT'7q"C}+?n";Rڗ5qz[򒔫ʜL&++)0y5Lf'$(Jr?ihHLBFpoˀdlzO֕*|:C8i`D&I q٤eOѣ+cbݣA{?jV41jKċJW2, L1ۇyjoԹ%>ǔu.eEbv Zl{C{WؑSԝ@Yoi%5ܨlGXsĴf-^dϐdAXw-nKu5SFrHe2,o\hsV!d/yP 6|hr;:\Ǣ_dH kr䄘V"%bbбJto߸Len~UO6u0:[1qOkl]?)ng G|J׮Lj6SCR)adcNNwOšI\JM ( D~cqje6lc  P&;NEƫ loKp#( 58Y/G}.l-S8^B2j/d^K2|p .BOD3F1?ɩ򪯞lQf8πsuȜo0J';d n۟6-K&VoiޑvUf]9y?Y^+7 JCx}|1w~5r3 VnCg%iTnQl aBTԶ8C-:)HɽzGrFT[ca9wr n̥|wbyͶ\(+g„B=N$ks9UEAOeB(4+(KwDeU-ed t+Qo " *&Rr4R?OwJ SnNIZy,2gY <E}QKl MN?<1lz!G[ۗrb@Wn&up2qvm4]DqIH_!GZ ՅN7^L[Ai7fu7kVT};Xf?0/ӸNwnjj?T&]Mޠ\4M4OFcɪzE ZG}@EsEO,P(ouC)O?Ubcv=챸pfH љ.* R:U}_-GPFx|;$=kSAcn|ܤG*ked@w?q׋ ,jFëp.~Z KŒ'Ö߷=JX !jlvH?%caky>ѓC :}ԖEdz$ ~Zicy&AX*+e3EQwŎ$p+>"C08tHJ\aPWUS2 ^REz:R9tǑK%c@AO@o<-!`ԞN@~|(2S}H:aPB M7hrC|Ɍ@l-.?:5~hT0Ѕ>p,GQf)fِ:߉ EӘo *L2GVLZ@'= V4 D+o/iՍLYq&SEplAckI+ qԴv_C?z9л ^K։OXhTbp^ҲѦf%k86%fk.E!|yCzqg]~5qOmaB\=J;16*gñBŪ1uBWz%,E&x:a=`џ?ҭÃ.H)Ԑor@&e%ϑSRQsg'Ə8չ  bVl H!%akrk'׬qNMIaȇCZh)JEX`pO]^Xn*xxXpIO9~KKtmNuHoH֣&'(݊'4c 7慨f%mVhEO1URI3Vm=EEYV?>DEc71X$ V@g"c nvJ b_%\86hK?58KrY8pm9AC5Py@.oC77(I^!;=Uq4 M2Ďث; e6(n5Rsrγtz||/SCb<nhǕAQ簯_5y5D*4_[`)I-v'^XT4F5e2@ <  [_I씇>4 pwj8"ԤR;w' c>%㴒9S,FɊz.Tw=*AEz/)dĆ;p+'0-7n笒3cs,gp0?F@Vv8މ-4 Кz& N;;P93r0~XW|hTA^ʿ #Ld=ׯ S{ɳ١d͘pvᣌǨwhTL*|Y T)f372Y`S"%Ǯ/f I]+pe8lS̱ޙHzl{@L ,I>s DL8kzOBNE>7:~*T緅1` _c=dT&Cxdhإ8nnvx l̒H"9ШO ! PxGӧi5SzVr3-eg'4Tđܿ & /N%&l5i2?v ph'HP8ەΞvt ͊Sُ`_kuVք_a ㏶I4qp~pGк֠gN,sPzuʦKcw3|i6gT9-}Fvw0Kdm皥gV6O-!ծGu(e=7#pKI}ud6xx_s ]6T%(@,Jszz1Gj1Mwg%HN0ca ^<]H ;FEl",mA~:T''D@G8Q'˪]rP2k1Ww5,Uܓqڼe$& #}N̜Ppco74D{5r4&3ׂ3Xk#Z+qRiG(%UҦ.tJά!<׸4!ԼH\S.WNmEU?Læ$GQҽmϕC |o(MZ 寨3~>oPA \C#V6^k@uJ.w&ŘblnNo){JIBv]: 9aK f{>9`@.ψbzLSf,9&}#C_)Q2_CÆ40"VMMmNW&" T;a\QHHRuVt+FKWK+p5!aY"z"}KA[.{DN\ p-1xi<+dBXa; fDs*0a%݂s:([M(z`/>y8]r%Kcxk'gӭa&E%;5(WМ.RŽgdpեAB1&G ^z20+Ks;E@C-~v .4q-hpڑ̻pz 22-4*ȌN !>{H!!E 2,87WL s2X$qЊ}um8"S֨wwfkՒv(},vz#p4fOnvpKm# 9%g1=i+xAj6w*ͺcŇ߁:k h!uY2m䊷 2J.h):ЩZ-,Xf<5w"4ZUlpqvmUv%Q lB&Qf#ٕr/ᵏ>FBƦ@"ڑJ |='8t]ׂC؍I[?=%FgSRbd-c$wOt:m)oo3M|_CˊY݆L5?nB"a=3bS?T?9ha8,BM/QC!FӤG ݙux׷^17WPآ~ha3_ /hjT\1w]0Y;:;9]?*{f/G &Ř΢RyE}61QAfꋮc%x!{O(!f 7 ~L )}uPL*-CĜ. bwqlUaPi0J]vLҩRSj]o!Hɉ-a{]LE YY3\u/i)?EY4KG2-}nc\B4KY$ 4(~Yf-HtNتeޞ^zNĪw/A-$֊A14 *[ [cߦr7ʘfb4n6k zQ*Kh>L(udZ /dzీ~WGaΆaPb\./F~E0% B7AW=1etkIdLط> xH^SIOIކ6_j:6?Bg 4mge5bdwj֝}yMH2gP~5q$ T9="!f5dd FdH[b{/5Kܡʉ=TQY7#7HmM.?M?%zmBWl҅;FX|_Yed w$5"30yFU^8ʜ\0(H>w7j%LAz;h* >#AhR&LXm&eG، mYmZcU'," \G!fRB߯{-7L.3SۛV;]V@ zhU ~^zQ*d%pok8Ti :F~fNTR(ߪy+\ZtGmp*Ӹ2Ʒa:0U.BOnq+ Sv {)sTn^g-{s||KG9,8h֫"KǂYGLvy-s*D#3Jt()苹YU?7#M-@ѝ߷ Ms.9׽[!q=J-gX')pv$JR87!A{c&Zx)2;C&Iցs9!89yqw%4g09~ndLf/X8"fUp&dtɼQYn꾾Zn+C1t@ L{ g ~4JJt]*0Q)o%FwA^&dʜTNI"XМt̓ikxFdLkH H4h7A/ /VTP<88uu1JahbR  e:=kN8MEQ6 ކ7^B*`!G_& &2EF۬-3_tl=Gix]9Gݙ@/*ERt%@!1KjnL I+{pr2>BorvC8xqTk8sb?8篣͑Yo/%N$>j2>cԇL'@zg:~걪n?a[V3YO1`4[;ɮIp pL'HZzcpc O 2I_l|\n>cF>R"bSThia3sHG}e}0Dpޫk΢O,S²1ݣpWa8;C :Zi=2 >jh*b[i>L YYQʚҙ"=:lz(VvJLc9;:Zq9{ٗvMF4wސxow&-d,/Ss!Ƞ4P/:Y|s7 t4}{uYzW&N\Kҁ44ZɆF'Bd³iͼ7:0&|sX{8>КS3vnKܳq05 hY|Ó^ gL#̤Y*_\Y&ZyJV1vRNռoU/Rb)=mqv46ɿǂɄ;h?SQ*KO9 v;pq=v᧺BfƫM[eq; A-b-p_*DlݮR'lg)fݺ\XÄ;xOl'm<9~!}m:h#4wF[K"cܕxhY9aX8pZO"xsFӣG^Y]iqNw.TSaȶ$Taޅ©p#&_3f) U[b waaLVi/Uqk[;D^&$Lt(9$AG_9!$(O T 1zt-ވD滱>1K*8W9tAhiyb+%uxiý [H^0{Hww1<{fok>#GM R|̊O;[$_^8u)kZ}h6n`@N?:]hЬ[f73 JUzWsx3U2  sI D'ǁ%,(gOM͇ya5EbkxDakuGJl%%T8%\'oMdn"NGV >`6} xbWE΋ֈ>,%H:綐 |}6C$ NaZ,ny,Hmiם,ukû0\7)MS%>(SoM:GoWpY-CatsPϒv+0?͕`y8ÿg{x"]ޚc]žMNvّQmۮ9"dX--|Qq<nz@&FDcm-9&g vmue渜 Pćx II3Bcz)l*܊1 P@iwcO.@ٚ:u7r>)b~Gr}}RUFi{KqMHw( >TO 0CGF+ `DĹGi7X:sY"C}-4tDwpLL/dž_Bыz(s̢ͺ64:&ɇAki0 Iԭ羷ENA^pt|ު-]*|GfLu:1Š prZ.AK;d ϝ5hU`  Rhd ~p~/ P+p?6= GƬGWZc+YmLmq|9TqɸmK3ZpÇfKLVj56*p'v͝;IH)KV!xS} */.B\1gzVY׭q+<#m47x'8$ٻ~y̛skNN\wMI: gwD53 3IؼV U:Cn;ԀZ+t“6@F3QR,svK5MIfP_0WO*QVwn=~hI<!jܼ\fSU@;{b;[,hgW}݋ԷP>DFוE4(mc2{~ĕȽx6UHAbE5M̬|GoB)#{ N }t .a'u)_dWƹ[u]r~25pCwڔObܷK }%]ȐwlJ 瞟;{lC /;l_fY BC|ϗfGP8{<D[Ź~١4zO;ҬrC h D;($ʢ:~tlrd*:'A"Ѝ- Ŷ@xϺ,f̔p:?g`2! !UAN@乆~E"`IGiR!Xɾx`j C|aɇedR+r0C8H|q~ A\>sl|@I| 2(}/)O?ZF;emyO֋q 5Bd ;ԧ3XpƲUM_.g;=c9mօXHȭO1Q r2vOhc9 D1IEFu 7zĊ(OEf|?t HEXNMg^:D+EEAL^/)KLej~w 1lUD=^ :qmr|7Y89?f6c.to׆0騾j08[ tso xaRTa T(%W E{B!ܽMh{xd2a^&NFw| Kb|P MgA ^_h x׳)]pzhs3mo /v1ƴ'DW-VD!?ce>ctNטfCL"KBF,Nbk0'ɋHNIޱ,!=lv9>Vپ&uh07 Kդ}V-<i#ޔ8XV@҇+8[ bM^~3V!-+ГP9#ß9B+pjCqx>xAO["9oo|\ fr7t}t|uQ"w2Tc2\1ҝ5ZO:oY'JﹽaׂY$n/> %./ԮEI'DQS':))@&UV6A2AQ W~8!iEwpzz<0`a@ٜWЄ59<lr$Vzdn颊1$$:Eǃ-&rOL>pnL\5'0O{VJ jr>6b[@^\sT?Ύ袏aeg `_4)k%DbeGb65Jק : }-[4WŐG,YYQDa ?_Q3G`[i*6u,2ָ' kRS GKbzz(Dd:" R|8;j2[bm&J۫^-sW0Dek,inpcnaJ1SI&В)Yfe6=Me5뚘*y St>*. NCa:>hJ=UBf\7\} p tCR] ܺ'Ùv:\j+I8I9)B9_pzrjr`Xs LIY.l}$I CaL|ϲ!V h'>~3 Yڴ|~O?Va(6s<=O:6yƼT4 §`ӌ Z' 4irVp9wR ޼0Q΍ϹKSI"}l@sDnp ||_&}u|K~Rr"BTc [DB nēC>CA: *tpѧ&db(w^Q\)k-wʖLDA,5de{Cu|X=9pttiкHdHPKmH٪Q'#h^;0Ųj2F$c/Ж;z|.ό'_f6e(aӭ1,lepJC.Io8A*r=V8`ңp_E2O  ^:^:%#g]94MqL^=xO肓͍.ZY_?Lq|)7zi?)xꤥ5"\Q)O1%c>8a\u#dbK-D;2`nF *#V%ic]\_#\g5#P\( WNtEhA0Ogjx(x.^ݒ˰*EkD۵ON20`6dLQv6m҂F9ͧ1֙TLa>`glyt3(?@i8Fҗ{{]@E鎯]xk0hoVk o4vp\Z=x|d,eUCqRV$FQɘ9_I8eK|Dhaah7|Q,WRaoPH:{^$cjg}ڶw^1VE7O !%A , X* S9 lHaܷE~ةk!XP!/Vl?~sK>%4,Ø8m.r^x3Ә123J5qCi?Rwy*v'r6J (FF=@ހxXY@KZF`%dى3=.F)k&IKct ;aFhgX]++1u$cV D,Y?J%mTgoAfyTq_%Jq_'׏٢qכ ~}K2"s8^"mSH4C)c6[ެuOVʱ X]b~lD<*t.d8&lG_MwqC(e+y#=,n_R04:KYƚQŹR]*t2V--ۢL[q/O#G 3JAUh(k2 ~>e9E+2=r"ٺY=eX*ybY+fdžOPd6By2BM͇%Uhf@bkYnWwk?R hV7ZdxWCTXW/تzi~̼=&ч6eM>9WL7FLgDϕl;AR3n;b0=R_ya^SɠR&ׁepNU AC [eXl9DdU_cGi9р&>#Ӈ`+[om_%=8ǂWLTQoX*x\(+CH?՜gdK7hq+Uvap ^uW;`Nhs)o Y%yv*\ISԠɿfN,|i ͽM?iM[5}̓7Ҡ]樽6{MQA/3MZ7k)SCƨʌ^8?x c=bfG$ԂHK5:i^r҄՞\U vQF+?9NK:gV:Jptx{<`} 1̰Y!F^ +蜽pq|S y/2+0+@ؙtz7gqs@|p &*"ITe#"p5) 4$'U7O =HV-y';] X`i6J O0/H{$ފ%hylW2:~иkQ"FZة]12b{I(]N Ev/k+ĄKY0.|)ncISaS0+ͪ1u~B#hqeѨQzq~&?+wC9ZiZ~ Xqobu(F'D=ȷr,sȪ>u-,e!FT ՃZ*tΞ[`7_S02#c(nt#)siL?B^S64WKJདྷ, AAdz?/Ϟ~)e|Yt: 6jEڄ~N=_=QxR>E G&eKiU|_ID-N t^Z=b|N)т|kc֏@=Ղ!\RpyKy6TsIS:vΆDEOl }~7I}E5TW^[yrOXA4 4pN0KZPU]\VDL(}[߆Esr獙N4yRu0 VB 2"'q`gAՖ9Cƫ#ĮKXjw3{'^;#6EA*S}ǚI&_r|칟X0s=+]X e;>)6k)l'EKR7otO5^_& ϣ SW䀇NW #U!G_ӛgn [T Pdq|쑃\7d( #[jh6j9lY K@!VD͠ǚ#a]Rg\R}<+fy&:K KXKwGe})z넨]"%jvң;"}x1'>ld/qz5\QDd8kHMOceII5ʦoB\u0`So坬Z~Z5Vg/ i&Vwb4WfF.:8 wY`8%Z_>;0˴.>4V_3ީ5b*[*|03LB_?aO cFFԅ߆{Z 7hBqrz3/%GR]_ uA, Rfúm\?HO:\hmah(~Nؑe}n$e5f>,c2eۻ,u<[Zk<+^ge$+pVs/uҟ& V>KYúN]mit@K.s%f&nlf'ɲ45ۡ9~ CǼ#\);XEI{l_HE6"CI|?:$jţzt6 $N{:sADKŋOcNř,eṽ<%7d.睩|mYbǟB"aK V2P|ݑX1&;֘q[a0< 3b39+i|Vw" d-6[SRk.w&# ft5H~+8* {<2pY/fd{S ߌ|A]KOYOmt°uL[%QӃ/`za40JŀMM^Cú m*B@9zoeaZvLj_$+!t? )9cӎ~I?r9 R3eekzʫ,+}y;A?F'pN@y$Q1˛ ~v]/J鿻XA/! ;x(#̒lI#Z#JE"0xF[vo`L/b?8IrOJm* >E&?ɷE''D\vr?,vl~ ,bKݓwW5SR߇1;C{s".%PjC JY>(OP<|8 6Y(wʞۍotK~]_i)0\deKKVs2+ r]]h}A K"c8b%_*u\vT J0 ;Wz2+M!zMʁk(F#6Mhd:zuxCp:0ِܩXW8,Vn]փ0X%0ac~˩FU7TP9v 4m -V I_n韇,x"')X0nrq3_Iɋc;_p]5%1>1I ~pۧI=ۺaŮӣUJ FD||Q{-"q!<񽅻& 7ͻ~C$ wFЊsh/OCSnowir();k%xs&^:٩k o$`7 Ujlp1ݯb2^~.x_'3v@zMm~푝wR޼^A`cD?+E ˨&X+)ͨuqj *zШ Rը8r:{ʞaPS^ m;U30>w ʅC `ل$Ìp,w HV2r4bssHf<cJ2mc09@CEeT-+L®0:)%OU9<#xZ(b\^\P l?*% Yu ʃ͸_`ƥR%6 hu'es\Id8#Wy/u " t7FǛ*KK`ekVaBťPE7S3exv$rM8<0hY7n 680nC=F6Wq[%2Xi`wEz_|n6P7my:x]^Xw";G2=LH }YTYf "2IZ .9 fDKnr[oCOP  wj<):( o:"t@&O@?;vuO;ܨKZ!hwGG  %!6TCQC6zz`ȩ. qKZU{ ?Z0z P ;E)MՐ]y*|+hB:rQOaxb:< Qو_Dt`bI/`bST5Ҳ;o//\窖b>7YQ(3ߢ>9]jCá Uؕ8 W^V4w$&>=VZ|`}ȟf`mꩻ0>gy 3"ճ> x邕r":܆b7Bn6_tmݎpLA 4T'+X^S9yqt2eMmtB-""`Aj; ' c%nY;PtZ)x &+?sĂr?Ev&ӥ Ʀ9<oF0]80kiP߀U( g |}l4˻pV5XRo^lf/͚H7ɯї4 zg|ɂ ]P]#f:vI/uM!]xN㮡|*"8vD ~ܗ܏ {ꪷTN.+-RWO_*6FGZcs(jX8<ݣ9@x%U]x\)8Z^;Ȥ]NyX x̵3ňP%#Xp2#<2IY2՗Kyն읁/$RJ*֡ݦ3E#iY˽} ׯۛLamr){D=ϳvߋ]ރ} ԜQyfys1X'q}=CqtO P ^@'xgL d_@9K. Jwiu!4DJ7t ᬤdV(a>+.T *mK?1.wszF:[,M&./ni![Vl K\w.`dΐyF:OF[5el<4c{-e{$:'spa!ʪэF6Gt+S5Fў%旛̱O{G)6\߆~CNUD9f}UDC7 "Oyu ͬ!6+od*+aҌ U.xL._7>8Z.b_PH-l)_5+wnL~+sز25fѩEr@*ԖOEB<͖}䩺a*<( KS[g^==@rdi@6Cf;b `SX2ob͙vtLxFyoԮx[UujWiZ @y6+dzvFŧ`*KĻ4w/i!G%6Ư'=Ü  A40%qgߖ }D-b+}#A"=Ts$Gw ܔ~Qu 1"E+*(³BBR:/'Z2ʙ k$̯0!]Md/_{/Ld nkO1511 w"xP9EvX>S+c h \.ךhtuz?3"sb# 6e̦}L/iZx[lv20WQu#8:dr(WUYl\,VP6)q mFKmXX$ X_۞~5VxV?;E8y_LkqDCO0NnT]GEd%5;w.uK˘r/uYcdDCW3ۧ}ZlDEP[GClEUl&>AwB/BRIV.P 4ب}oH:o]1Q:Bi,畚.IZ?̅|ꩡ[9lM*`],eXO gOW蚡 8 kh&I q08= `:;͑or|F6llnwD@+EyL9<|87r+-)()4Xd?Ӣw:2vݫ :}Xh eAzya4ê߿["KZg:\L-JEU_Q!"u"aL&< a }lҐB"|S62K0ʚ~ #!uB^ualDBU%s)G"I^YbɧN@ٶs4^!B 0!fB'ŏZ'ekUiOF`I[3Ƭ; 6;/m!zZ FS,a߰&⣼g152O ZXa&gVM4&0nl[9L[`o,=&s-Wf NRZY!5-5\7Dej|V׶fSdC} ɛpnF Ms/8vOd)I H4oݮ\mlo ˊY-ȋiU$|s,lE7d}9e=Lnkޗ:ƕR t&εA{K wډΑs jb@[/8'PB,#V؂;m tT`NL8_tm:kgl-#j(HMpg,@ 픍[kPx (< >bKN%"<֊Y٤S 1buQo"WY383>KSd&Pj@XpKPq90N%# h}{y 5؈A BrY懐n 5`0}ë:!!A*:HѠS(cI\8Mբeu*5O4'5$%_s+Z#^C;) @'q¥NbI-] /=.OL"^m՞@^PT}}xwB8AbCz# ~%jk_mR͢1e-$W /+) EXz+b6^5t&Cc,%*i[IU9A+RP^x_y \aFvk!hSͼlw xrFE;z5Ju/ egӈX6dv2{d"JYOog}v#8~q ُ8=mD݀ >b#O"R٘k:Ep'4| 9Ls|K2vRdݪq!<o>3VɤooIf0y~oBN ҥ8Xje H|WDsj8*nHr*^Hz¡֩Bu:E3QcjE(ƽMm+l7Ijr^e3R8)`Y[hN6c`lbOAI"*ZOJLٴ:XɠF %f$`6#̻[[@]9zNld-nnGL+|$Q,N:7g2̊}$Zt>.t7$2*MS7tכl$ ],>0~N쥻;Mt(Jh66`Șe[,ŜmO%WE@, 6gt`?p^rmTӌǼbqG"xgsW¾fճ,ݶ$QA~c~r[m,r xˑ ]ӌM;Z $,.t摋~Gnw G)#ӜeM;=\7ezi-n"I [Wr;+fwEA73i&q]*N\%w]Jqڱ\I i.< #xJdF% T{aOfr3Jc> }/K9ݚ5twKn젤ϲ#2BU8G^v2m qeF3,C}k= vuWd.Q=k7r6 ?<_ˎCxA2Q 0FA*ri߄R/ 7K݆4m ?YӼq/qU׋oi>8<;mWy 14coj9 0 TN'HckYHɻa~8C˓B=5Hb^\7m1˿(:Fnki~w<ܹ>x9pfSc-X5˶WaK'᭵{Ys!!9CyyCK3NjcE`'? PzfXUI}M- Fnؕ KӒ9ПwqkW/>\݇Zj3r,/;}T1E5kv2񹧾 [FkW7nWEun4LhyYCVxF's^wD 4ex|z`˟م0WݞGǵ{Gޝk^>j$w "'vtCZRH %="4Bm&MSXGϪstBˁA'ϫ<\NT%J+26UYK,ٔ4Y\mݽ[cpէ6fBk[Sхny$7M>xű ]X ?o5uH!96š ٍ<.X#W" ye!UO6. b[|pNy`ZPUihM2YZV,4y_ DqvnsU};~3WsOzoE}`O+c?mֵI(VM.MeB9[}o}uOӷS9D|Ou/ Ri a,č$қg]hl[5[Hhh|\!x{B{G{r a|e&Ƙi'DSȊ*e ]~JB<6-Or/ᤡ̌xKϤM3PI܇귦8}vt5ʃƨv 1j箥dQ+2/9Cg {z9Kt rٵ ҂8[D'1r@ۢ>Z [A|7Y|٬Qf32'R l3)qjiq-U7<Ϩ5O<#0e!Sh ? i&nՓ2P$r==/V%ab\'(JbE'2c_bS%ۉ,.flѻ?`h;:9{HއpMWe!.y;@w˗jԟ^tp ?ƹmRNLAxmTM\QN݅-+54s\P.ͩ u-%?1xW lDiU]Pݷ{{&ps}ZNfvaX%ZN%vUxsr]TGlj湱G^Gg]&F8ɠk--Z סD$gJ1K/8mQFpչK-"32P~WeIZj˲(vQ؍, &%30ib2᧾[|+h3DI=sZ6DZ{ۿXN1,]I/ i!xMq;WYh`|O{M֤'r>I}1sR;3)SWgHZRف-@+nY/(uPpQ1B!` rI"~j2XDA9@Q+bd<,[ojB:&IG"&m3Y223REdr8GeJ[u)*`0]4vIٕBYxN bd͑{Iq+#0s›/O1AޖEX#IJ!s,t6n gD !hvOEjƗGFܠ<#̆"٥ ^q-bzX ;sBY,pmN8[R{1ZjA yO^T%EЈ>|3&?Evt Qɢ9H$:3كM䷼ϳY:}2^j+oaaJ0Yz WPo0#7kA6WMpMHpi^`RÐQx+2ϲ1aju@ |ȕ| LHT90-F~=D[9&t]] K^ wC$Cb9jIB6uW#TK3.a(Ѽ9[xT{?pF$almY;o˞˂~a3 Z鏔RJQ$)8ZUW͉P6 Ss7@3m͆#I 5# u喂2Bq%Ǡ9Qn[x{3qtb=.WM7{ܑ]d`&Q k'XIagz1h쇇#^jM>Ӛr ~[g 0[;%fp{H]I612w4..E"Qf{6F'47Rc~?1"h]k?vyuX|`e5ȬI5l 3hB 0gl-+U!]Gwaҟ 1R@sKakZv s9Uh#20C Df( v~xy*Dٓq>Tedhx+70ٜ"~cT I.iſKjOX\!E0*JTw hTEX3kJ"u`۪UD1QBt4TgtKgo#{q";< qx&ۥ3wLJ)|Q3c?׀n n[TA6ﳩ}B|U?R%r*mg' ִyDl>~G?.pLN/8~E~N*a@SHi;3U?2r1"o'A kW4̭,tΗюXgQ6s؄_tw1J vH0_$bMY)VV-Oq\B:*Qqӫ3Kʟ(jF=' n(I4C'cm-ItRVLuhәEK9l]01>{s^cJV5>ЙIZc}V5 A,z }hm @hWƟ#^Dd Mn B@"A4Ό0\]9<2\Gk b-X#%4{pe:ʄaAt#tFϻ-ɟŚ? zi-ȽN彇o# 5 " i}F/WC6Ͽe\#ȮB|HRpPn.o_ymK!HY^K OB Z1׻EV:h0cHb!*p\X&/n |AU,-|Du?ڦS3-P"L|L#ȇ77"R0;'"κ}%9g/Sht;GsTuk=iiOw"V*7ٌ\`h"odԭƍK5Tb_Uge< _ӏyf_|)JFk!Xv\Rr3T;k[QL? %VR* cTLBB7'WEo EfK1w]E1Ue:Rbf27xZ+Nk91 ).%F{iJVK>]񭦦S7cÆyBW86_ YnUbȻBn^ڈ_TK1!z$,t)LHTw&RleH0d:hf[yN.<9NEcRhd9xKP鋕 [oʚ냅/˘9EF2>F[cF8XD*j8'+B,0`;y`0FkxB&^0K#NO;cb.qQ9Si}cH)Om- ' )hϴ0ך4x(2 q?+vo@ c>"6M 7|\NEYY80A", Z', ).[A^'ĸ jF,dP'ȡKOxC^PGsZ]/lċkwH. >moPˍ@5rPoe*U(Le{>h@7 LcJDp?s_1 i3ɀNjjRH9o"p;sGK* !ak|F PYC 2e:YIM 0-L6Im;|)vJ@Z^^ 7&+ v%` 'QIi)Eq>.[8u!":ZwLtk]'K9\pI;fҦQ[b'a;ۭ:Y#KH''ߌMֈ=: Psk18RWbXߥ4x7ϭ=S|q5{Sej=ڋF)Qy0 ȁpt؅M m#~v&3K;I>pSwB ~Hf| 0!tIdE:H OdY"J>Лd;~ߔo嫩@m?=+@""'(hVsp5U1b\ǰ2"[2:U@:s_˫? cwK&H zY$wXk%48\J7I  T"dHuIQGD!MW͘ʀ[pY5ldMrlDž꒨3`;gcV /~QL{Eː4L@u4sr+?KJߘ1BWu eY{{|pZ䱜R%B!e/cR&74Ɗ45u=ӅHl9uGUxtW3]< r4}!xԪBELJʗ lw.x,,]EK,=A2އ:%;ORwֳ,Yoc_M_ ۗHfM1`d-c\TuTM ܓVo5%:12otx`"VʼntpW1)R1^NF D;|1 I$TKի]f䉮*ѾƇf[pl I.@U,ӛ4qc~){]Ü]jouX]uKZ$>_#}H.aJlݏ_Q;$1U1<(Ѳ|$/Z@C+Эt^t,C7=M8c^/21sw$D޾'nVawe EXh[JH1%>EļN|MZJ>\ HTp+=bEesC߼4OK :CP[=\b<8q5Zo3VۦXtҸ3RO}gZZik*qRى ,ѝs2 3#MK|h96Ic#Gz0*)ɭu {=M/#[BD,E9. irDBEx3ee${2rf 5%/|uiZ]ߧOxn Y1:Ǹ S}~zCU O9f vvH{nz5&vM:#c(QCRvE9e}m:†k$9zi %a[ڷ{.DadqQ~OoZ,a+b-E8 vZ&uW2PL12~az &&L$ PH/o]kz@uFk9,}Qf{^YԽݔbVBFC2lmO+[(A+gĔQmU;xXۛiG3Ϲ%CpKf"k\y[EXwc68@PZmËڍ)"fCپfchC[U|;CzTY?5qTT1olj5DaRnR {uZpqõ.œ֙ͅv[֙fs&1*Hwq[o,t u )L}OwN)V^cAY[L]V&fþp!ጲi v($Cg>2gyEB4b@ҋUWfjj%v1G,DyÐF!i&9j&6:%fytKamOwHy`mTw9aHh޴F[ pzpH4/a%s>1q'pBFje#贈?uᕑ(?P6?D@zx}QYʹYZJ$5&.N!2rH)>A>VɄ"ܽx,]6Ǟ87,"HWvm s#=Sn"h~~VwHa8!ϧ%B$=ҎϕBxKK?8++B =#a'2G pn`TMѬtldΞ,p~oD.~icFXӰl)+r-ݷt9N6&c?-= 7h16yeeܞ;*|-i 5Px e?4Fv`]5X57g>lץS{t ׎Γ=Tr/v^7SXٟ1!UIX5VԸ__@k̆S[ `9lzoJE-|ly9|:\z{GS$$gh-MGro*gJτ·Rɱ0UQ]5Xl$]:EA1Va搰k=IQ8<24p}ᾒul:ZL"pSc[EiDOT})y J ;]I ? a%>Ǒ zqb_{PMN fe?T rc,<;=+bٗ(ꄍwd0X-qz;o3%%i?9Yl0#oLtӧO](b}2$O^Vg=%ժj[~Q3(-hFRE oA@Ձ.{͌ Crekά*STE@eh͜Lf&O(zڂӲѐP?O휺{xVqb'eo>׫}HM>=' ́T>7^IA$Vb'j4?c 㺊p*ԇ~Wƭ[z@1{'Nug: !dɅhk0Ҳ.ET-ӏ]Fճ_J<5Z@3."f}+B"8Cءvlrp!9sʅ8k;V{n =߼ubjfEbÔ^RȝZJ5f\K3wBrs >h=Ef3S{{I] @NV\M @p1AҰ;)1A xnIqk;}B5* G-j=z&=m Px;h)F-2^O$ &ÀLάGPA,"6ksp´J! X6}~-B&x}ܧ-;3!9d"rƟT7WZDș7H(I~-EEo׊؟1(jQ͋ۙgg@( bO/ imzL wĂ9*)nhSIe7;YD)mEgpL4U\ܫMABfϞAMσzaDP_r<~-jW ?}h~\k*묕[6{XvcfF90H%)XY6א 4ɠM:Ot]Oi"_E{ | }7#Y2"+^8h#Np>(j/8}ԎO>3U>❟*tWsa %Ta)_# ?EAv$z萪loXb29Mbлd nsf{ Xv{ 3JvLY1 ԝkHi9PU#ҁA@)-WBps*,}=VAiʳXJ#h0'gސx;`&"V܆mӌlo%|uU~+ڞL"(R?tIŻofc.aF1֛|]M .E~r7Vlڥξ.1g^{Oj.Z( S;xIWglOVan<='JLvn'E\2ƀX:qd4ylH Iwܽ`(zmD|=A9"FGk7,R Ppa^:4͕Zc5qVvT&Z{;%>uڕ$n҃[:&VkM2N'w~,+{),De֦@6ܼN}W3ş^ZJ3׭}.LCiϤ :_~fO rv|ǘ@Ql/fEncg0~H7mp,^ fzj]vWςVRC{ /}i7,.)TyU`׌pϪlӽw-/4dV ^\>у,-E*)Wx1_4FP %v|k^B%AK c (Tj)wJشiǪ4V8DHygYL݋9<*%gj5kwg4$H;^UrgM\.qPD;rǎ_}ٝ7p ~G+܍{5Jfd{HUt@83h&c&e>/4fy.ʥ5zs5 ,1C̬ts ,w@ʕDZߐȩ~4>$KNn(hȥơLBEmUE 1i=lbs\c{hd [˥g%V›䴻b֧x g.NL\lJvȥ՟}bqھng@GZ}]MuE*Tv`{%_)/p5!Qlk0信"C@sR@a-'Rq4A{cy#vaefN ,jٝl 0=hH  9) >T8b,vhSN}PjTFzK@iH%-!jȗF6ehsǞ'UF"z=&1ٴ's2t3zltmkm{ۆ芦BOe^+!NMC@M@6X'.O2dGv Dϲ'XgV8[X3<(!c{4vr8htN FG-"~ f"ʼnI EݶW.jpU IJsXPMxIB,/elajDƋ[5tژg Y~C\[ȋS!5HJ#D \j) (ӾXD.JUO":rj㗧jަC ѝȈ+L\V|Xh*xtz :/˩.p֘R횒*t3u`[L{UD),'ͰB;lTm7{%ͩߢWz޽րmdal: kD:ɚI3叢&&yz 'D=M:u17ry vz" Oae"\AɄU@Y+*:YʒK֘|ږžX/KBW3+ Qi9<G PɔJ&G?p&"iWki@B @3J:-!gmټѧ83V;0SŁ:qgn^]2j/' Y:Cz E oQM`AL[65q Ծ,V:#NO4ki ;O\=2?5<x2Am>9Nx='4ob{ 0{-g׮͓2H0ZA&IgmBP,xYZ?e$gԉ[ F:blvg 1]WxQK]uu;cw.V"XrV1 PH24V q1*:XYdBtG˼9X{p:GB1n폋C>eNlXau$B& c#0><y'vURsA`эǎE{rLJQ*zĪ=fM%-0bY{1L ))>my跻lT䐑=J* g5{sy]H{ .ؾ-lSXUi1; vX"ِm\'_:a>]΅4o.0,d*yi`C8ӊm7c#rYOj4p ۽O?j*b3: Q R˩=QA#IECe qF̕#M~r Rv\5 'm"^RA@5·HYGiHBzh)EHڎ9Gp޶S袘2[hh2RV SpDzنA=So#ʙZבfy)%_+W%$>"$FgLC !iuwR?an,W;>z2Uqit0FM qfl2(O'/X7'*#\51v$7{ׇ#n?/ PkTh&J5噅p#* ʄ!Li=B7 åA $k(ݏ^J߅G B VdlygbD}͆vxg™tRiJpg=^.jϳ=ǀwJ$˿R0w%U岎x$"1]bRUh4[LcqdR}%!K\r'N2<Ś̙zV;Hl}rFo傸3! 0Oԅ*c*&P#J{{hi+۶JDFpD3c$Vμ"SlRUt|U" xbe ~Oo1J_W-\'QJ?}o?QFLԠ>61-cy'%D߶pXjh<:lz$񭁯B2aIntrTjܐ"A6Ln&eL>&PZ5q<ӓ7PEƊMbfՂ%eʼ5񲒾k8\Ƙt[&пм` |^~Zu]ZYȣVg a?7PO0# ;v!y/ &s;߶Vd-+}lK1CDȌe9׊s;'ڱxhvYN`;+q{m Z{uN$&ЂNy+L UN6BBWX9 TGKҊPz[J_i/+{+az"^^Qh@1ɨјh7fy4Be)mNRIG!~Lmr1 SD=[x.i!qT}f{sU 1{p6~7|F/ tiAo5a *Q6XZ+L?"sP !ƫ}C*cDGհݷq2a s~.'4;4(QhAk:Ҷ>Y hDEh^sY;fLhO̱o8x3dU6pt@[2d#׃V&3 ;)c+6}L]/'HzƯHfRX,Ё1qocp9E/!.6OG=Xi'6ݣHj@iϗR(PղUxYp%on*GҀS<)K9O 5hѵTq|w]~0F?bIA+ne/5M(qN+i Mc$ffr~klR=7Q[=Ĵ7ek.˷@#HU+1ȧԷMްwYK>ǺSP9bA MQ}M<:Hmݮ<'z:a߱5/$|Nձ0&,C~mC`K]?~~9dU'ń>`VMcG-*nhXq(sۥ*N> |,q~q&܍2x4u/YfOߑŋ2qi7$BkgA bT^K u6Zg΄)?_ْ6PKheֈEߏ[ k +Q$<!;82Ð>YFuͩVs~ec=TvvۄYH}o;|{۷$I8/ݟ; *%zndx,)lϮz!*e<[&YFgdCk94a]R3b\s,~9`iz2} a>(e] awb?؛֟ٵEq?gʘWYi "no&YGi-'\ ߀Dyfl \+scsә7Qvoh7`ߧ:v74Um`~I7M/5F`i/Ei] g>7yj%@āM=\#8 e+fqB3B %t%\>G%߸Y D A~$,/g*M?LmD;P3蛓0' {Yv? {Lz Ucahn ÃvN7iWc?XbV֡c̺Ե|by_j7}[c bvݳmQʐXɐ0d=hP4" KZSV1-1֓Z7Hج7@p7NB@NKۙOSGAN p*~i 3놊ˀ{=[@0YKD~pP֗uC1E*'jf02#oB8TNp*a9lИ?oVJ%әFW8ˎ;9? j9& ٭ǹ-v~-%($bd3U,> p@Qu04M\ ;ڰ+~V {#][oIڃVv0%|XD$vHb[yz_PzHbi֪KTb} Q*Rw뚅 :KtХ%&`WFƔE.DVD8_KIهr3QX@;T<(j| 5M ]y}WiK)+w~ćMB\Dnev \›h_R `6v:_!Pl*+f9JČSqi8DeR`" iRg{Fn %XZ ʏ/=hfux._,#25:H~ĚF$e3 jezGNHkyMJ^eM;1bsz۞?ARf]_fJPņ_ )UN{DŽQ(,{Ì*'1o|p V87AU>WI0< ^I4K xɐ Dكߝq~$ xq9.NwUElnGs ?,*jyLR"YɪѻYTG Zyed~n oMszΓs02ޙWK[]tz׌Ķ:Ӯ ;oj}!K >H2kwF]Ty$ @!T6{ȭT&Mu)RH &A`R0F9G|3tIypIxhNxzX?#>8@:2~/oqV'6KD{,n5:c V_0ek^}KWrʑ)vI|ǏjzZ6q¤#_btlFikg cV짂q~bD|ּ%Є$Ro$]D=z#9;m9G"u]&GЫGA `-ht-ڠR.g-BwB=Ô!Z uC0LYɣ?ScF36$ɇp9x= -x+*!O-z`PO=\fin6.{yda@u-($qZC(2Fou<ф%`2iiGX;<4Y#VP~Dkܛ2-54iBm8Pi'dC:/ x?.'(g]@ 5: A3o%Y~J8b ap6A;Bĸ2fkjʜCyvJ'Zǥ۾y)P9L+Q^H 63,GGr/GHYc W=DglGF`?wtp%lx 2#2K:B"S7LU%TDW|KEq {%$EIӧ=cksE\HCCjW!-±|sg}mLBO|v 4A+8^́zxk7f;b⿆mgc` j΄oa{5.4';!~3DI+ 7xQ$E ]hUN5FXBr:"{ɹϛJ(ms8)^?8.~-)z+ݙR]1@ltdF/S pɯzȇ7!FtzD0f!cpd VLȝ$ۋN-z΢Qa-}6W7aim"ȔBV? N .{o(9}xpMwj._|Byasr:>aUYa{ɱ[~y&3rn6&Ǣ m9UunS.SꮟTi `OUAsk`[[`qX'pofYALSŔW?(* ɜ2~6sE7L":6G9MFP|ԈfPP#ٗjK:x8~У{NFThN.c,AQ8{ѦS p&zfm%!ATGhygkSl돂ۑ W 8{pmyŧ!y,u=蛽^皸ls9Yڙ!$FtR2N ⢺Y>0:TavHY`DBN*ϳms}/@nOC-uAˮΜJ͖:5Ĝq>3.꣬y՘WJK)bn-_d2jPT2}W/¾I{h@__uTͷ_OH`|I^(NسdR:.3UΫA:pwYTD⮊C: &$o /D%:YJת(9з5 Ez\1[tsVlX ,!F:\g%36<2OJ m8x@ܫ(Dq_&wVV뺿G,3I^fJb9! M'On.1l~_Ȋ& EiR:<JX l| ; 4uŷHo_<5XhyJy"QTȻFZ0sF'az?`0q7ґ6U|66 W u]Ox$rg7::Yx/uˀHsзjᖆl !IucAndtP.ڞS@>%MO.1p`$?朵8D@W6 xBjJCmy@Έ^Vb{ס VD;0&M{jW+2;(0i&$wl8t"(g"ďz'!\{n,GE$1wVv:?>x}YO:p: \ybj #zWd|l"g6B믘 ޘ=/`SF9"wDQEĸ݊cq=pdFhJ@ @!Vg^ >:,BxueyH]e>i㥡".~`VE2G8jꇲO @!,dZ{QmMX2ٹ7Gw]uE~#pBr[ފna6 /OLH*/HY,̯4}3f.-In˜ &OhلMc$B'*=ɹ.Xj6%AL8$9WC7sͽX)UR $[Q  zڷqaJDb=`DFZT`@,/ ?Mx}پ+WY6{R'M@.սtxwdQIh!vJm$˩i襭Qt)lg"by[.ELU/JbGyYH! ^8}q~ʚ^DPT$ "4z$CTV$m$u*ԧc! E9+ǖA}23/hR0nOY^͡q`$Gi3.ν. ZF* p]`}||}vtq0c|=%z/xWDOUrٖdCƵJcgV~8@=#KwJ e4 'U%R&ɞ'X2eLJ~X04gfrAo{CSAm!:z˩EXqs(y#tiK^Ov(Jnpi,7& r,݉^Z89BMR) lV-Tǣjܻ hii#~q RJxnPspjͭo:T¼Dr3xE3>z !Nw̱_&sWu 9* C5,Ojc֍Os攼=3 i#],/Ghq P$ׯ^̻[YCR4nw5Z@Bܹ(i<r(6vm5vO"1KW;\גyS014jn,Bt`8Y Lcs v%DÜ yyyb9H[;eAdU !hےvQO(!j`Q( '| y5_D^&,7 ӏSuh\Afac2u -)5V.Ʉdf٤^/*Z. e˯wp/f)Ky*x&˿ܐGe[CW%c' Ǿ zyzFJڸgc"ɣhT u"xR { DU>pʿkih@-q),…_4R-RϼJRMPC]/BCUGU!fx׳jmž@l,ֈJ+FL3۝@g;C>LA+d\00~S[Nu-0Hr3~˹ !S/A^t*@$Av( !Gf>"sB 4X9`b{}#"D/{t_b53߷Z *OYd,,Gݱ`h,!ES"Az i^x0ІblD_t4>Śܯ/!blZh 7d?jІb`5P$gըi4Nm2pR|WkckP!3_1p 18ǾR e B-~7σ6LMt+7ni. :}S@T6hARu>L [}Qj MAD;ImEMFY=6xE&rŋnw§d $Lrq4x]QGU;ڏ/awWDGPs%ՙlGܭ{X~ 8qpy %/{ZP'ᮿ:*rw*D]@KE7փb܅>Wvҿk >6hS ]PwMe13ir+pʨrYCm\@_6Dз Y\sBC疯rO(;t9%bŸu P4\[ 1xWG<:6@=Sɟ ~m roIS:}hыtpFd983r|g ,0W .YM!9vtƱ&%b^j &3ڌ#J:r~] h[M[n9T*! Av8o05A$4'ϡpfJG|l6݀-*dN5>җ}]K}J-C6Tc EV1DIN&.ᬒXwX~9Jgفó@iΡ^ճvOdLi2[}$ +lS\#oeq&WHm >/OYe+~bVHI^%)d>΍#h8I5fzz*o> ؎֏ AڭD f:xM0,WYz u &]d W3X#1\%NF( >"FoI-(ZJ* 9f#L L("y„inGx_a_Sv9f:ScB` ?UQ BC6_]gX[]IuTs@̄B{hOIǺXbv1k?˾PVjp&ڲ1)1f0}W⷏>! BܔO%$ '764p'1*R>6Yt(tMQZ y48UX1cW)̨fbJy{Qt;JoJ׃Ǽt@WMmgWqn|&ǧfR}"BW"n㹢ced~z6צ~EaNQC$:<kO&357pz+;>|XjXD'm sVZGWlhTrX/mU8qCЛ)9 4@ 8])`y9V% <,2NEK7ch0׫Zi=N]<e% ؍sdHz(`*ۚf w>KX@+o18t$S|ÛqEԸln%qȨZ58;f"&eA#"t*.뺸|jV3Df/ln'=ܵ7:RѼ2aȾ6;F\ShP@=>rx@V"R| C(蔹w r@a{sG} R[+fAqP@U h$&N򹋕:0E顫/UC$9.$#]5܈l1ч^w;6@̶ccZ8D#h5\FAK~jD`wlosS4pnyI`5;|3ݭhٍMh+&RM ԥ/=gA! ?xy7ۃgǵ C|fQ#mFaY 0aH /~yrQxNffG]eBٽPw%SvolxۼY{<ǭ~^ЅB86mNjcmkI`uc zv4eqhcAŐX%b2=8ԫR8!jܐ-@k 9 vHuF|exxL5:atO(9xAu>tj8%{~ y1YI)"ސM7q~:_? 3}e붴73 JIJݴ)ngkowvq!rO=p [LKo)wꆱf 96cbT۬&\}"$>c"st`=^:Bo[S\SF ib€؇ ύ+X}~0CRG?Dl4hu7M*yF[YyI>DϡYH!H΂9f#Fh>_Um.8|x>H3fLRèbm8BIPdNFtmjvRذ Uv-̨ 0E9Ѵ9n#K"U*)s~P, ^9eO|v8D"=D+TD_M56XS`k=ʠ˳ zEc͞*4% 凧;E2w@>w.pqE  IH"m]nb]WD?VHr`[ sc_=K"l,Z`Q*F15})-z C?EPbؐKeB*wB BF~CqޜlS{+[q]X+(֗֋xY]};^M`]1A:./%y_[1!B<\DK+D`w00pytE/;]oi5~t'!yK]G% D|Yb(إ˾0FP7w7c L֦Q Xvpp#!gS|jV:c~kk8r>77GMOWz3N{s^$vE3ȟmFxtF*Z+zD .Q +־̘eOeeT(9/XHj[m|Bޔ 6_S@3Ő46_m֯ZR " B 6jvG~0u-)Q!}Ǭn-ڌ\^ Z iMGCtDVkb#B:_ZH7Úv q6zqԟ8zGt^>+-rAN`N=gSM*UQhmES_>GGƨMJc^Tf*g"dxhf4`al3Ro0K^r ^3ɚQ0)FY+ob$k`E B+ӎ&d;+}%XRġ~^Vn5ƢA)=y^fR~۟mAcugCh.nc}}1\]ɠISNn4cٚUϳx.$ YKmzrx\6J 2Ðib;ZLq FCglxv%k?I3 BiM|A>tMZg^P~Q[σ_&&=zc^{ n)2y֓C_|pSj)f*`ҧ05~٭Zf"| +(s#U<&H980Yhupet㯅/+/DfMbKN+]a|&I@ 0bnSwr(I;)MWR@W~d4tCgm~Z e4C⥉ImE“urK4 P_p h B  v7 i%1K Z6L|vM ~ Z>Q_Ho%%AUŚz6ը߆[53_fS8?ҟ/ug īC<<&عv@ znXC;J_kp(b{q@'z2mzoA r8!%_h.wWaoPc4a-4\(~wnq lj' Z#[㧗jLr$p#ȵ@|1NexW"eրqf;Zר1 DzHW\pLA8!8b},33hU23#^ҟc!,1R< 9`EA^VB~~M},$!i^c 1 :ڬѧ g |ן G6Ǝ{UL)CrT MEʪRF܌kCspaND4[ܛt Լry+$,G_]lq\r_PZY\B'>dʜqL#@&t-<[) z9"xPTQ?5e]Cz F$:@6W\apó_ǹQ|N;kI;]Xc&JUͅkaAQfjH8O.)ʥs.|T5 | z-ZlKF/$ [NU4gL^ϧj7M)iQq/^Ĥ*pGsCVd1Kv~#nD $~S6޵m- jNM!Bga'"ՖeFxO I>"~XA2>MH6{=yy`.wg4)o j7cnKeBXĔ/wmy+\:pߎ0S>2=y8xJ:4$&$QxL/4F,=UJ{A4W0DI?I[-]Aeh(ʹ`452W[ J5Lр$U'z//{q9/$*݁iufxIt8^2)~uvK׭꺤sb6.{wų"*&3E0 Rkσ[&[+`/hC3먴](A) 51p).1'ƟkI,/&?\P0.4Lg TCyۦ!(7(O]CnPZYP\a;([̆؄^aADhM_n=s5Cze/ G: LN7lYj;(O{B;ї8 uIv2:B՛Į* 5j36ob:EQ@#X!9:1 0KKjI;F?Bs:{x G'Eݏ5[|GDp #Q&14`;2>L`-\sf]Ӱ 1MEeu! pMPϭM=D;d{\m&VSaHgz 2nghg<-+~b[$V^wvX"s*Eƞ5kGxpd?Ay{'<$oak|lS7psfaa1J;h8us_uP 1>p{bkEs*.kJ]Oωhv2ofvVoa`pTQΟW[JU}nD\aXGdmQQM-ݶW8WnP,3MuP-M0At`{cr;)Mk1~0|E 02xM48,{LOQ9_AGG$`C{wzh{y]G?i/l޼Z';|JեCzsԠGt/-h{y,\GB T웹nMC@ENsA:D9#_"7 +#t}lGl``t2.lHi XM֊(};$C~a9VCo 8u,hRrZ+E wTI|d]$Ne6fYiP7$ &Ta~jXf贈`G1%3",Ԍ(Q֐8Hszdk77dV֋'& O UtkcMM& 䲂~ET L#sVͥjC7,|]Gڑf0kI hF&RO?@l[uFD<`ʺ "[&y4IK.AQ9 ${N>J$WU]lAϬ bv 9uYn>^TS: uQ2\0j#V]c[AȼS?sjxxQeʓ&9x YM Ԑ%'8 GFufW WGOTc (b^}ћO1".{9TM"7|9@XbEf՗I\YRl,gMQrtx̂ԢƮ`Ve$rCM-A0Yϳ ȚXP$E^mrRT[*B6yk0(ZR|ϚYdk:1B~I24^>>Jg$t<.Fq{rmm 32F.-+p連%p;նC?7-Mڇ2,$L NqA3@f3;rw9V|j[Q$ G(4 8f@x쉇`m=׻WVjmCa0Z9U# 6Q*PC+ۺLwTr]uJi,\?$豈8kCKmX3 0یHxX֬n5σ 03]bRBXPU5E;3 |쁑<j%5Uf!,@$l-בa YMf~|h{!5}AyDˉTo5OOȀb0\-f= ~eq!;.֘3/R\+ %:8]0,{ тy~kDslh"_o CR+Pm;RGO%%S&".IHpq_ՕE~}hbϚf]xj\|ZXӱ߀I Dq|ӥNcws$lT L|ԧkD,K!V-a*ƷУcc\mFHt2\yF{aZdmFC埓͆0>ΩHFŜe!V_S}V]7R&a_`;r%XͯSxWLC1qo+eXtYOu<4.gn `^6)s8JY p}}v#׌_ "*4:PPRd.eaH/.7ޟ/QR,oǜ3w؈10G\0t 7yYԡ˟x-Lfni}XVN= dՂId Stٝa'oLҌ%Fz+yz+DYS ;9&h.zx;ł}ȖdA"pו3m=S|1nr0'k4R|UAL:wEoI>VUO*]FPr1K@Y ?S\1 bە # z1vj%Hd:Y]lf**JXAH@,\oV_*`?Ç%p1N]_cK8nxaG/1Y96+"e&4%#RLRg9IYg&\D]n!2vYHCS\@bw/@w?m,'ЋM괂A*mnE@H>=:5;`Q.+L(4LPi s/\zsU#=r=&uB&_?8dAa"l:;sˮ+X ZeJB~ߜa4 7D[ ɣȗE0l^8]5.!p _ ~rHqM;-Mɑ+޻uo^r.[3>Jǻ~̗N*}8elqֹ[P5+(ڼnGWPIzƚiS(u,02; =V(־§c|Ry#]ͅ~v* #eЙx 5zZ SE.h fAabq)]p+{^ƺ2=#ٱ+CլփlŵSsdȷgUG(D4Wy1/7Z+9\fs#AvCIҺy=eHP#mLj(=SI\Vmgs<:+]B] +n$y3ɵ(gN |3s5%u'tPO qf-6@+l"`ۇX4Cח>8eg!Ž3'E ^jcF`\|]Q\@S{抝Všf["bb5B#Gn eɲĥX+bu`ȷ4G\Vd:l+M2$K5S?UdzNN(lx 8- 8[t_48w\@EM2„ۙL/]7.Mg~Du,Bs|%&g}[K+o}CZm*+ k92hJ}~z@y91Hg4j$2diCa+9Gq[FmxPľ]|ioѾ;jY{8"DO*ķ2I|u }KC^< HOD!N ';f&^L@$!BX*?RPQ̗?N`I*ğUVq3}!vMg!$>6{[ -XhY B^a^e\g|pw"Oi|?2zj@8`Նد]7 Zy4{7`eJ4&EY|lû!LˋkwY0y <ȤqsΙ PX"+Eg ugd֍!&Vu|V";5RaeDWQ,gU8]Ae(ŋUĎ4n0&!Z,y.$(K6.҂8 1 ^ g[{Uf8 wlWh=="ߢsiՙMKf鿜D,P@<3Vd~4֋rR_F$]s2b+*BC\$R|E:|u'VDiA ~c;(Gt2"% gdӰS3pJ<@;mRXO3.K"q嶰~g{j0xPx4no{_%AcѲl/oͳ()*i6_Su'<# Js:tDzG$62((AۖYg"y>$j{K\]AGڂ_k\j)MXGviwb_$eHt$eKDe:f[U,\IU%ݔOAq T-Y]`=ųeqtbG޲T+ptv?s:Qa-B|0maucNt'YF\|D2=c} !4Gg|VDgf@+R`IFz"KipQ ~^y?#M>8ފD,>/1wO?{`#pV`a<`w{U[lpଂp}[j5g,btPv+F{nk+0{~Z{@(DYN6{Vp%p+ N2T_8x}kC_ihlqz67$]FlA $Rz2~,Wy עA{.Ya nrn/Z{S/n_X552c t i1 n]72q,um"5w +G86v Ȏ|\UnwjC̺/er\&?7ty믛y7z: F$n>Sܬt 6kRNQ3|M؋@9FlH g<.gM_.[ y*߼|*ѲƐq"Wo`UٖM}ˋV {fתuIK|G5x&X7: 9}q_A_8ʌ!n =n`?إd+W H'@dk~s1`Bp,_Kւy_qnE!a?<'ug BU\@O>> pi!09 -Mo@G4@YB~x[69YaF&y YNyN #@+gpy>BEL+9r Qc\,ɇZ$T+S}֙\Ez'8ARJ eJ/z$1#cKphoy[@Eեљq60IO4΍G# Xu,UDlZ' GE eJJ1:e Nk㓨5_?KP{AzT'<|3&(~YXmpZ@]K5&? ˵cY ^È Xf-D|7m+܄Vy؉+=_VOb@kwN#.2W|[e(#?BJSf:,>#g pBBt~$.ܮde39-BHng`ʐ8FbjJ+:Fpc R2Tz^>tV[B{|6|¢Fp-ZM:wQ= Yǵ+Fp&m3E&!3 3ogC-dzkК^v]v6P r€4dgtƘӥVDH*V$yU^-f:FB}I%¶|,wY'釁قi~i߬"Sڨl S=Oوx{֕ryNՖzCfmM' Q)%[!n81KqL9r9A9 sbd}ȱwK+5}I>9:(?\ X٬]n-^|d'cL[ZoscL{O a.f:/Er*بж/|_݁n/3-ɒzMhG1hE0=EJ DHכ]M#砘DJc.Jzyc9%F q8`xj5WzJ1\ɃPvSlCƫSVxXk=gJhtxSip-_zBCpPldp>E#Ie쬾< $(qY26Dhw' " KظW˶A.R2PTL ٽ?G)vmbTٜ2M2`֫[1Q,"Vȟ7GUJ 1c͹ WZԹ`>BwIg"P?Wy^D4*AHsM\Sp㑌@Upv~Or_ PI-˰iHuZ&wYkWrl9a'_|1"dK@b*Q}[D 2"F V5|+}mK@d"m7*:M0R9ΛT@׎Hse;0`l'*u0i~t:$Wz 1 Cx 0!KBX4<\{0fPo&?iI=z{?mb k0H~}boN~vwx0#Ne4|]T|oBK\j!e )4F-Lm@U=8zu!^X(}E=ycKO~7 X je:T/mQXOQSfoGt징cD_O*g6NKVȾL8౨wicZ>1As&ٜ7EhjYG( gEΪɇj?aTN.zyco24 ɚq'Q΢[(tIIW2d5T,R}G!?J"kXVd. ']v8o"!X]to\͑tgJ%X:u%3Nב ^9;^yT88 Z1佳QJ)ZxsUwawLؗɍk+܎ ̾K ZHv,UF3bI~ّ䡉 33TѳJR )3<o]k2 u-β.ʌU)X 6W]:IPWk% 5 &K;ƺz2"ro{S61H`hHJ3vZWD?Hz_HU TŦD IK(/ܚ㙰zz@= 9- B<ܖ:$D~(oap˨wjٽ=n NK>i<95;C'jй-Ơ]l9Zꏦ.V/p(խ[xNiH=ugvP$j9H+]I|?DĞ8@_l{' kcmq+IiQ?_ GMAHpn'umc /aLL ?a]k5}IPy dj;ZNrns+|=Au2gupEP.*qewYT9vNf#;X qǤhN3]n,G6ѝ>2(D`h\h9X 9%,4u!ԑ%īQSK`qVF*œ"mTt_QɄ="oҬ0_;xJz UDiwJ=f֨ߓ]YʹSxa^ItuDڻPB2<)-"i-*r{iAvHNLζk-kkEW;qӿ~;;vFWILE̩U,v߃ ^c}\?.<2Xb+Ci)_9<hV0Sj0>R{ebΜbKbjMbڨlQU)~0&>5q $pj*4y!YӒ1݆JR ˂#R>C0%bvLoX7IuZMNZ'폌D:hg'^X̃Iv* $HWU`5$r@E M77%Xy+S> jg]Z+V=;KkS8r@i.FvٔXOKwVe*d`ūOC#"O( jWLc'_P !G[#ɓBM?NBRmN "<H a@+=;̺KF9An˰ZFW8K;А_"|cT{Ƀ '+P͉͍cS(iO1J猻Xo}^N: JLj)/Bݮp.Q$6.N͙aLwׯ%䌷YZBh2~ipzii7 Ldc|0!SFl4DWrKqxz!>сWliZSڥ,~'*k) _v);, gXRu}#wT"6z&)`f!g‹ ޡbXAj)=oQ;쿧z}=#!ʊ5BurhkgCS\ ;W>i+{?QZOpj†­3JitPTzZzk+?K\.|RSŭT !6l3bT՛6o=1) ޤBGD3578)O骫Z@UAh$*cVHU?F}Z>XG01*xmn0s,_Icar H۾0*KYb jKYq-"R9@dѺ{ b EZ<:?ؿ0=i;i *r.̹_ϐ>rܦ' ,毵5b?o<RQ@ ?E.qfCO~A/VYsPn'Zd'4btٚB"Lg6< m|ۼʢcm[V0|&0z结QEUgLr# 6XR΂b{&qμ0 {?'O tMMHrbZ[erO>&~pw6y˖r"~LdLOSGޯDk7%QߌkBX8Oaú/->x֭Jh؎ zޡsw>O&bf|zYOP_;T#~lR=FӥϭCEmHL'Hb-V/!\#oE)vXV"JA|ۋ|LU ,7h/T{է$B4W(oBtP4ps9 pN?_X/!*kܤ ;o*GiLKdeɚy2zCwB;1# [INE C}Ӻ)DHv`.ك!օ.yLV]a'!Ƃn7RHZj*mMdnxBiڮvXbE˲Ai%L#MdMUm)kĂ|C g|4mx`?na}ө&cʛk0Uu-Q+'LJp^XLd17oJAW}.c]'[MJ Z>IS&Aђѓ;i'x3R%4g?\RHG;!ᭅRώZN.S]97x>n-QmБ%ct΢7wVt6G397SibugjUH?pSʣo+!'72.3Rztzچa%mjt >X2׵Y+7RB?Yć_t'!=-xVҚoK#2 *$9G-ExǺއ1%Ɠ8jby"%B'րXR>d'R%2' yHS.o2$@D)s.>ķ49_ _dq>ƺϽ֜^`&^l`SX~E|n5*=#oIc]Ug7J{ Yt97CW֖p;ʳ6Gɴ@D4Ns"^ "Ӧ*$ !/ LPddcRV&hȬA8Aߐ0 ooWFHEmDqFQ3maWNӝEs__4cU:KڤW.hmx m(۶VzKszprt9d ^_ =YjueQ,Jhs Jg.{h@4H S4s<+4cfnJN3 E&9?H}H>cXPH%Ǿ:A09N4AhEﳳc&G_KJ]LX ԗ]WE\5%TfղDvp8ǎK, !KděDW2[׹ !iO1@$ԢCXUL!e/VG3h^ef_YM)hO!.Y$b%=)$g jեi΃-y5\}|no:'- !>yy^ek, -Ml^CܑP.f`YC  W.߻R I݀%{9C06fW%7\c؋']/}=E[1>bxr1y#hb{6qJ%?֫?Uڤ8^Vãw B"9w䯕72eb%Ɖ-I+D-K("as(L}#iXܵFH-MH OwX2٣ƉNj]ўJj^qeϦs{%6i*юI32@B^|.1cz96$[yvH{8Q l- > ݺZ7$jn=2'-_S)Q~!?vU+ʌ&9j r#[HSu< sO#B=[tcŏXv$룐 I {hގdB'Q߷ә*7gX٫T%s,P`l%AP#n5XQZQ!$x*u3#Y;^8S%$M+Hn!ȴZhKjc+6t*) bg9(dt'+2BrJYcY\<٢^q@p YڽP;QϩIK1Z";4a*p4:/$=n"Sui.۠5b9n:5?1ᅩ;F2׹1,0_#812{YSn B: v|w+h"8cjVd1Wn.!y0la@vەdg3SVdr R_ܻp&&%lq&TyJl#Sё袴hvDaI1Zjbh&}Sv><'YGDܮB픧|Aܑ_t9HB!ahZ-}`\H.1T(]AyYLzD?0%[5<<BЌ[fIh 0r_m&%*;:NlZ\w9X2{evd&$DO顒)ٿB.:X=b7o~Yg JK&78)f$^6PAC݃1Ұng'ܮqQӟsT71dBmyH%!?sGv>p>6e?r$bi^|oόŠ3'O.  T@k"6? 'Fqf.dGLFe bxxMJW@oÜԟcΚ>ʏnt#W~mo? %9ܗOhsC%Ӽnrv'Q{ϽNrtMasu?= ~,GHT=" WJا#Nt%g"5h vý䀎t(1_뻞+Os2k|jl93*)wRoo&wrW#~%&zX !")$Z!>$9yf-T }T5rk#ޘ.N 40xu+ĠK di =hsu!N(3-T/bDžRNve|3>@N;ݑ|aѱ Zz<1qRztdEC!l$_ T -aPoV$E :@U nޣR@i;% wo]78"xVYP;Jm4&:?^JOj̡E*@UQT{ 쵈"QMF3MT/nnJ{ YBZ@<BV:Íx]i1cW:~( sPd61C!Wy 鄇LM̼ fpM^uRuE,K^Fdy(񢡳)fY:N<[#r{U8oYn?[KDʂt1L0(.9bTX259$E o֘pߒiWپm?0v\;Ȱ6 Ǚ-,$H X+$^ʃe͖-CJxD-e]*N\%FJŰ`{[o ^?8gu5n0 ah 2:J[`r)_".lP!NcU*>+ SzĘ?&6N 3 kq_f"3eJ8@V461(N)/)}{75IW-ldf3(FBlܠfԮjBqwzXl7s]%K `13}! rB ^Tiz7Dq"-Q/Jra\@+`/μ!428ȌoO;{J<|]g\9ֲ6b紕)SrEx22i쟡u}x1>Hwgq/2FO+5"S|1 m\5,2Wy,ڬh/uQ6_b2odaq5t_'~]b~kj#<0h[ןYitLkaV"k?.HGgnD$ȳ&8ɖnN 2%ŤMg{<N:ږ-d/Hjiu | %7V@U-~܅He7_nW$uFܦcK>u5*JSR pA,vA *PQɂnK(*#J!J-r:Ͽi"\ru7gpUK騚CÏfϝLì2ymAt.g~>j֡L6#!>]S8f ? ;pDz#>PЌNοD.Ʊֱ=9)0jw7ُ!dRbŚ- o<|v܉GtpPL?+ğٸ1=^18QR}g[eV {hq.Nm)oE !dw>f( @y-tqU3~RVbdj˻ +]K:Qr|(kD$22`ŧDTBC8jM1xe;* AIN\FϠ*.lO1R#&ۏ s}KTq%J~(Lض.VVPNϪ} ISɿ>3(x^v_nv7nLj-n|ACҿįnBWC Nr(5 ήk!>Z8gY:yePԗD eJQS,jX֫}#W:z#- G0/v]+覱~* ževψWd0Hk}' `]g2ZAHSN|=%hct/Py;*b ɐ5208%c*ǼSk!of!P6_sR3ѰmEE]%,ouywPn-- #u)|60 ~Ys", --jo%0_*\_%_n }%jEz:?>"F44EX$W_ Bn!A[R QW]w(+Ls .*Q>4?c2)`O< {>/Rg/fu]7k/b60gJXt)I[:ЏeA@g;gYIPԬ,G;L|e[ʥuSԆ䄝ԉeѥ\rB.Mm |[}B{ oOw%uRZd#]0(o*B_NaR=º2zP]fr#h6M2 Uv.dc)u|-Tߣxd;u8P`$3$2bl\KRvJj..]~M@rN;vVV9+•\?5m$POQ`Ø[@@_LldaqË+Kjг<,7Ѕ)R'ҤhZzȰKo.ܨ",=Yx{^YE{ C68ͷ5o[n4ۀ1׭ٰ3:zkf6.BJm.a:x"rVb" LBHe1Ii̲5{g7iDr&lı:SOh7*-Ezܲľ;#'S]xj<đ vcx7IOE+Xr%-=_w!@pt54N_ 2J%Bp{*V"7O7]|rF> Y>^m\Mptu*f a8ٌtM{%T8:,#qT賳S!Fn.Ƣ`US3&-܌W(GjC<S0ԕf#"ai֚Rn}uK7s t. X?%n`M?~}”YO:3v=<űՑ< ;wfϕd !dI(/p> ք㦮CgYOS6XKpcJ@=C~#~Cr_|[3@#S2Deh%Jj/oD:-U'Mk}U{NYk1LI]r+?iǖ+$E4 鸣TCzRJ%*%t@UpcbГw=|ABlmqz3ͥ j"LD9`R FͰcnkk-rw Ƙ tp b-{%bc{yielދvI_SOLlex9 ^vZ*'`op,m:g2jު r9&4,K@ˎPw.&cE:KCV 7w{v/U A.5?Jhm&gW똨s&|?m2'2vT'*/RL-c';PQP-4isHe2>-Jۂ- χbMF|"f+H[|ñ?QI ܔ/Uj{ɰŻS Й)ǟ 6:0EVm Bǝ|gqNꉑ^-:kuB'fo6 ixhUwo/ 4iX %4ܤQc8*V\|-Їov97^Pmw;d99W}eM X,uAԗ Y`ܙR/eqπF)au4 \e3oRȕ-ٖF?=))=,*"ꘖ.ɻF)mp>lILC w:4- Z 5Q\A2WLP_u C  A5Hͧxhgt&OAj&f/189_i_ΪE${cK5;ՠH6o ^؎ $\-Z^$j#~(kiïpb>F6qbo{TӀg*bhڂ`8%TO?%G?CaXy eI7S]0"+5\#.t&%ϛDiƸXNj}ApW}>a}ׂY6˕~A/a33qpf;*BBINrSa|.id2L'ߢHi:fod!J> ꨽6R$ڞg+M:ӀPω̩艰 SڒjVM?ZaKW 2p l]x҅֘>2Z]^dc( }(@V>#BȵXJsy&R"{6_U0[b%~R9~sQ<11| !t+urD"ι99>o2h/V>DΫ\w cr(&seeM<G@%VOؐcq֋B3t`v`+ɘDNt D*BD N=^K$_";s{b,n-WS_}8;P4G#+'} # Z.4Aeᗫ"p?j5Ew%Jg^>7x~14dO=Q=B>*H̳ m})!n۬B[J¹T6?1S8[`Өa* 7QpOИ[sd\Y?Ĺ.7ٔse'2mFW% 9@Ahy+-S#ZA[At*/X_ &w7`I+yDf;<0nDlDbz=ZQ-r~ *Q {ەեj:jb$U3S= FqĚ Q)0^dMkfJ#y<E|mfwݑTlY ~ozPh!_PqO_rłj`cg\ -T VOnTFPaa.!$'3sIɉh{Y2ÜhG4nwԝ2xpTx }s2ԃj-p)sܼiO8r𿼘'ԁD/k U~kp|S4LbN ?=Էl%^g6NDv"j-uo!"۷y38SŗXʌՋi1,!Y`jO߹#!Ftߵy6 kIYٔ[DySDwE^(pCJ߀J+0t=6}#4P-FGƅ:0tcjωUp׍-9Ũ9| @]8'R¯}G3fW% %~sgy[H[$*Պ|1V.gfj<|=?jv[Z.0u6'ɜݢb  Wk%eoK4PPoHo/g=JmIUPѠ,Ith߿O\4r1SĶuIµyiW|a=/l![U-!&~o>t{Spp.0UayܢZW>V뛲y|^ӱ% /{kT: %^[] RuE"ťOST/짛LU:C-/q X#S;UaQ}r4Eנ%Om:f٩\t%c<?FW:1ǂ5.T">w_5XÌaFQETGy~c-*p(b`붽v̇TilO4c=e~Fټ2ջ)]"l+\[=t?Ff.DMy,n<~t?"ӋlwT.R~hU&_A|V7߄%0T@AG.pxDJ.k#*rEtC^F1 F])p47aܥV ^<|i b[?^e$c#Bp5Eː#8̍Y \Q3|pK]8JBT'˒ 9I||M^pwTγk4@HwghZ VE:ty\%;eJpJD@{k8EݱTűjuntt]>X٬̺@8w"Ȇ:ΫAz9+˪CM=98ƷA=y la@H Ƅo.5hz 2[BDkB [p}EWxS!1݂rLP`8I]xlC{wK_w8MQ9wO`me4L^dеw͟>.P@\+7{ԇz)k)3g]*m+Am {*`@ANn-MIWE< :&,_%0J'~1yN6‰t5mwv:i\Av:m攬!eOJ||8w6-EjZC=W?OQ|ʂSE[!sN%˯oy ḅ-@-N$,uпS%{Z-YF=hƥ&Ei8!4{@-_/7<9Fw=5үjdK06TtWCc_߻=U>bI ?^ƫ>ZԚ;(z#-뵣*@#a'^-z8=3AGP=oEց+䵞(@WM<)KNdFzl3ºܓSOv4k&% f:6 KkZ~> I~쭌ø}\2q>P%_^эM+ۊ[VG7*VRߖa<$۔.XҦqf(vL')c_'=&rNGO>|cT)#{ ]?7MO@Maw؉/YEOTD3eCe[]|kZ~QMEl!M줞wĀ(Og pX|'GŚxi0՝B LWBO^du/P@#\ Rt6ĈضQb"%JE͛:O_űn]jZ`9i'6;"SKЫG6P[7$!8iP̹ NK~1_^.#&y!ޫ|IȨ na65و7Ul"#?|"ԖKrSxW/(%q>Xxb֗\bdbayϏ'{i3P-?-%&Qvxʧ*w~cڄ4hbaM9:x(+IJ&q>;ĕD:gx~YWMyRW$F I.Rg_ ,Nj8]bKA,;#ɀ& xYF0Zk|k< r1# [جV{rBP(_* -|1 \h[dN&!V!KK ZJZb _H:3sV. a3=S:V0L#ٖ*>f>W{`jؠvtWf7P?44iYbyg@lV dc u˪I$5_W% e̥ 嫟Y;m> GO%1矊/H!|DنFXsDT :Wv:tCjф~Ìp n&KZ Kavd];5ddÒEb]s&LK)P._mVY5K ^rq YE'z_rV:/2:TmRR4]">щo}}H6>'d" CC_#z zpT;FaYk[ØߨJ w5kS&AQ $l]cE7u8Uܛ}a\ה}^/Qcލ-4JdI\g `]|e] LmBy.ך6(Μm.e {/@|j+;#hRnavu)hnՕfpU?c%@ FC6l*uUV_r8LS Q:S(̪~Dl39<*b2v5c%c4E'Lx&NL/KSPp\P*091] Nv-=~$ "_|=? ,NYz4`^'efEՀ=@+G{==zɋ>Su~xӂ4{.Vd!["b&"ӳGP@DFB ȹjYX'~RH QSw; R#gEl% 5?ː}kL:'u5'@@#bkp!\P[buB.q{fٟ83g5eP Sm6S1WN<+ JQx.APgq=QН Z{xN…K!T&]%;2 v-z:^(v¬f"' n^bmyc7&LZLI|; z&v/ BӀ{{Ͻ^=*<4IpB~Nspb/ɃgP^˭ ]v-'6TOAN>ebXdrM}h|xz]o5_\J҄q YQv^U>?h(đ+fG"ɐĨ8D&5n\qcaqaz6וWH82t~&V&FFTjr?\Nk+sb%Vb@OiE^8Xgm=_ωsҝIcwII{k,= M.7Wd +e}P~ilp ]oM{Py mR/ (tz (NaݻoeyCp=ЅZHAe$|=U.I:36դɿ qtkjV=W%_d>)(DVG{<͚frFj?ج6&h4e'b@ָGLb T3eIvSw{4۔ZɇcfZ9D)m SEIg5*RK0[:馝%K̡cwmӼWʏeq:E2c'Rԟ}(j@>gE!:$ 449: meZxY2v:Zq{po0aZLk3՘+`lTYP;..dzk6yoy5Yk>[c;SH4m}6#Qxtɓ0£jxzJȘ3'c@ۢz5IɁEn@]t0=nܩIp (Gi$~a $gB:zFMޑC}T9;S7 'Wi8 o}`S,-tu/]7grKwBHBźNIhlť2Xj{V`Rd9Ho;㬨QigABrTu/MܶˆW!٪(dWhO=@8 {U:]7ϔYg(sTK*>1US|U`jȿ"))VyCsT`Ux'ۥrltfOp?9TEp)?KMcN* 6;S˨t@׍f0Tқc 7.,:= zoe=<: ܏qצptAn;K 6e;nMN}^ԖC VFtL-$~W@V] †+u^BKAS '.vfM5A~IM_ cfԉTysHE*}6a̲ WPY2G);9#ܓ"Hۛ~s>ҏrn=e\z%I);ԍ${hb]Lidߜ8B-1te!q|]?-"߸#wveHDari md"x,BZa&YJa3=ˑc\2ztB'[3} >B&13w 1j"e5-Y}>~H6vk (wğ[HLg: L6Tk2~O6c/D`\y̚ J(Li*"lH5 F,h2uB#)VM]@9ȗ轴oYtgݿb^We)G~. )9HwwJG$pBŌ,M|f˒))O;t VQrᳮ3Nk.0JIx5lo`ӏ/Bt?BCMdۤʋA^k]E IA/%DWe)L=VGS/b?4At{G0ʛ0[fyOB՘LЂ`~$jX}^ImzTvOUץw>6Z]qt52.Q*%+b*CY|t˝+}nAN7/~ZMV$ J,쏇 ի٣GyͪF}b/yBgMTZ;@qx | sX^yD xk&V!m\f1s{7y١1_Ū8A>i/\<(UKu)n-="]o_rSVXcjw"Nj8:,5D۠}Kܤ FߗM Cn lL?ژg{ "WNaGY]QGU@Pqg;2Ez+n6ofЌ/=&G4 3H+6)e(J!Y]Mɔf4 "Qޣ$t[k!6ᅣTz< s2 mR&U֫ٝV[\:F[`D]`UH"y$p\qqT7Rm ?n>/' +sK3_[ >[W侕AȉGXݔB-aˮ&;}89?͙m\}3,K$XY\5Y#;1o}+rg9KIN4"ӋPS6.;o&]pWnsIG;X|ܳ3iX8( pŤ-15f-(5#=aցYCXB}4X2rt]U>§2{,6^SǺa\:q1Y|5S E׈2I_0b 79FQW, ΰng9JPo\bgO NRfXC*=1v88/oĒ<`߹AzƀV^ 56E;U*#e6M?{BHZ+(N m?^ ^,0Ggz1G2sSֱ4V(쫳Uizb G!dxdQKpSU3΂FtkW5ޙ\$K?CqQVgl "$> fVo `|?>zyzpⰏIkH=ԵĞxGvbf8˽ kNJv%k}WqUOJ<*%M'I5he jJӜ)= ?(Q/[ hE@ K8$j),:71k9oxJU8!|9hmrJTr:w 7B2*}X8͟5@W[- 4R32Uۀr@~߲< jFJZ{* t?̎EF*jlg֒I?J[\wL{TZHΔ+ p9MNdH6P&_"kȮpxK_ fܧ=PueilQ޸?"hd-!a-S<-DXo% JvY gOo?Z> UM!w(`Z5O , texHչsufKصbs\K^μ( ń|H 5ϩb+’0Z%lׄx:͛$h=IuUM#`d hW7Hv^YS^XڞIAy>zhj@rP|' d$252r=sr_ td&ZI$7z͠m>m-)WM<4D]jbr^'hbM{upo{VjfP8WE3LhC)[~ m_N@:wϱJKhɰ,6g~U_Z&#PJ{0C}_͸NrsD2b>%5X֯k9Z?sR"K >a E*G4*w8 n)]]ʇ@Vpæ}dś)5{cGh<Խ/6 .jQ/ay՚y|7.@|p.rd)6%efx\%Jt S1=u_b)$ViIUkbٕ';TO7BbYnfͣgxkD2Z0]h55؁) py5?̤'g^8ؓdYqFiE=lG%e8pIY#* ̛Y4*Z, "{ު(+2m}0N-]) ?4?bh{ԕzIruَ_L4@GpOlчdKl_|%uAU"">&Eu'H{ H)Xnd20TɢɆc jCgeX߶) 3–HHַy,F I7띳}@z 3gzWc&d)醛[aDʓU\m',|x:3[^ &`&؋ۉ $%kՕ?\v\p|*! JN~KܰͲI]5Xt0q 5+0ruZ GSa GNQ[s Mwу/<9Xdm]TYj'|пT[S݋&Q+棛,s=?O1-R9x \MfAE'9-B>zO=m`$8ߞܫK|,*Ke1k< ;;lѲg56+7e޵xL8XP[sZ {0L>SyDZL]2ںMirq@& =A=-m9ڸԏeEFB('zɚ-Kh;\,5IQ=jQPFck(> -;J/ DK],.al!wMՍk;5^}Mhʴk϶D} [\.(QXT gu-Mp\Jjy( DDŏ~$+qPbO]w*PUsPQrb2Q aJ^O,^ LA_m o'/ꅕBASğl*ow<4{H}ĶH?F ~}5P0d3CݨR4\'S&q/ю$1 h+&ѵs fWDZDhJ/mp0p4_mn"4!.1)4( @GI . BH|zB Vbi9X1w)ckaڮd/a6>9*cnNvNJ=Wd:Bc=ЭɯA"^Mfc+ I'J JHȦxͫXq0T|NbFm Xz+_ N= qٿ˅Jآľ:+7ʥұPllyDQVJ걈'WjRf\loIiP96s8M{a26ԛe?Uzp-D-/5KB 2;ʯNrFM>÷<,T no+ aMP-H&?Pwfmx.EA.T+T[THQ0k:ئqR O.ܠ3K%_w_z[PF+([?~nq)(Ks$AY%" Zwq3yԈ>{tv6^O+lFIE" dr&V٤}n i UYԒlj|s$.ZT;sf ʔES3>]݋j5TuNg|m$q$);Ta RYuI[tW{AڏbNN*EaC|Bb#+޶6FWO9mXH,l Se,`s!p^/Gpe& w\N#In} Sk2Ȫ~l:չFd+Jcf2S2.`>d*c%@VB4_0ZJՁ^^l$>NL%+r 71lZSl^'8;.1F0F XMZ~Xυ&r&f9ג7VatSx63%9kh ޴e rbVҰ)kBBk`9K. ]ƘO M(AUڒַ[o) Xn<}L"+^ 5QH%6qnz޻g-r:n>ݹ+zߕ[_fJ]N"^?&pQ-KnשVl6g!zҔ_9v%>$PDlPvRzV>ȘaN:>g?A#ĘqPtuD![d4E1U惁C)X/:3V8.;2'd˖@9'JIIf3Jݭͬ7sqx/!ѴH4 %AG8L7vb.s52=̐ȀJ.JwMm`QZq3;owwmr{ E,!~Fǘ2ˋxބɲ!.xY[sJ73?~jD0*0Q_..E2]i2w&K0g~92VڎSf1y@ƌs֮E*O1K}Ծq݈1.;Ao4Gzrv>\F"IYŜ + Hg:j)/ Z `Pbc tQƈj^W]Vν'{ wOP'EOqĽ*Ic\^$T o]53\W6i% _ *KQ!WUyw"*֥mGC9e^lЭWIE.܍e2F'OyQO$ݜc.q%U`rR"M1s@:BjLJHg55"~Pp ltk0Mg ~"jt,th9ɫP h4{,.GM4^e1KruhLPPHG z(W^HN?drSN!z %I=VN S=*-1I8A`^KSIgH,YxHy,Hj!YwI[08#@''vϞgбJVמMp0Dedھ&?"6h9^= R]ڎOaTQ-2jrH>ZA褤A0I"U .w"3c |.7YĈ[0rTZ-*,竽8Ei/9ydD$.Sh6O! u_A[/D\RC>BS\x!!JvX/\bC kI*J*-;c b"$ɽ2Ov@~ \Ec!+E5Y6)M=. fjQf#7-뼞CTs ՞jx;ۙ=顪ǫGWF?L<͞";Djllϻ&b~8C[ xVq2T-p^]]I,`{@B[N5N3Ng-YA= u:rrUq0d}@da6"DqH7KXLYwEpZqi ?|Pm܊&L.gBrD=j: J*1ԻQXn 9ŏk&42<):}:tӯ{Y`*lG>zBRb3_?'J#/bqLpׁ(̎n.yד=Wi|1UhrLu'!kSmScu:?+Dn('BP0c}ۚعh6V‘,itN¥P? L3Vdf bZq>wzf/߰g1sMU Sqb{Ec:PS h= J%YWeTwO`cn 1iUBY|gkF-$y] ef ]ګj4d|!3FJ|,9oU!k<}7PglDvYP k|(.ҰQ:o3eXbRq[ Mos覃]lbI΅6lN~6.2*hpe~e=`exDn8K4Qō\] -vn";1BH)G H˂"ȈNXrm6 !kITҪy.5PݤrqfmKѼΨ-ދVIdz&l'E#a1\t͗V+SiDgJ=1عBOYIulS uS)bsPzΪɊ@y 1sT9p,(Eq:Կ}KvMsAMufzCVli !jCeB+%w킊RګCAuu5 eB _­ WH5kJ9F@d;!zcp%=7T^ bf+s[7Kn]2+̈'|8x%Q!MExGq`xmF{㰽qNqYj%e5o&;Yzِ)qd""`H͔c!gߔ(h$9iHgo)Gjl7W:Af^b<C-h% J6wɥ]-.͜K WSOa&Cn:sOtA(%f^;S5bp7ݲ CS R=C PH2tjׁvX~E1%$B$cS3?x<3p7K_ 󲱤b̐,Q9n).ouHUr8U8Qh$W \5^ =8?$~vI"Owgy&ۛOG WU(Jzr~X!UkcjB!Mj2Yd7"ơt*QD3q)-EQ9)ƚ#@0VĦmͱM?S?Faܗ$,T"ef*BXeBnnmti z䈤!ʥVe.Kf QBcagZ v8 ep}3̛gRc[9ZLa U}q K5k6+>p%v)~-1P& ]>kelT;ki5i不8 딫\1l&T=<7pFHuS BڎcpPAM- 0tXd?dAc;u+̯(ͼ(X))wt} ڛbnfOr0/P3cĵʠVU>=J 6IOl5"w tWc|kctrP Κ t> u,GP3*,˲n5vY׷Pb#ɜn%ˤ>50VށƸ j#@o͈k 0[*Q?BJ(Z7^:Jx : F,*wI'(eM ͈w4IϏ)M/Py}UC+_؉0q=*A숰@I#Ĭ+Ӈsz#x8SƝ]TϩnCƐ#7:qhGᛠ{K\SOoSÎ /9MXIJr/87(8KeVEy,iwRi{k;ThWe F$Ob "ꭾŏ.pk/}s0Â4<$$F!5Sth$3Wlf]nÁ@ Αh97kKpT1j2Pɻuдs3-a. ;4y~W ΋$Ȁ,1@NUfl8۾ޞǏ^h}e J}1i]?ɂuEBi (8qPf?8*jgV䱩^@YV*BkK^SҔ&L1b<\?]):iỳC*G3*r9tsnUm'mO?z@WA-|I")M&Cpee]V%@yO';pVt_AVU2-@͕L&ujM<4֫峫egONƻI+*pq (==gW2cDO1$PeMw _x4@5?Hg8(Q15aõ`4?.X:skUX˛$Q۽ǭ%~lҙ$j!ig{r29;m:AGא5Pr|x˂!byJր)=Ջ9Z[@KCRtGfD%'B[AQTc=S^$L`N/m._Szؖ|OAhi+ӦFvϳln Sp(~ b]m)+T)&Ie6}?.XMcAs̵vR!D=eD.Eƭ BWTCKY! Ӎ' UA6" r;}{1N@u1ۋĎp+%5j"; A7 f(A(^(!%>uKuZ2: GLW B4 j=Iit}d`t<6!`:c[:,+~ C5H]s{]+}񟝼.WJ,޳ޕZlJ PpvȌ$;xe' Yt!I pdVd}!U/_G?LV`ɮycV{ Į_!lL\`:zB"ZIAH@TC.;ܘ,4:gd LUpc%qP-IsWc܏td!,3" ,ICrJ4.Ter-i# giڈX [ֆcJ'ZV (3會=%hw/A2|.:4?ۜ!ECC+zB#ݫM%) >θ|SZ3̂PGG;oAFmӴ\>]Fod|q dq]w54ol + «YȳDZ6O%{CS?Lp\Kv b XT6PvEw1G_/)5U,mYk Nݺ5>*Nɇ4F  e3k<Ê,pHLwyX2܂d-~y{ l5/tw33h| ,z2ďM ,P2 USD?[Ut}6Ҝ0.`o.DR.nB*1v(c/<)p.ϑ;d#v*`aݲ@ DR}(nTnbUpk̠0w2Xd0O1G1n `s8{y@d|$0JƂLMM-a˳xG/' Jn2oԗC=>Kd]`}fG=泟Q||ɡ7X-vhevdcե IROәo]L ~4q9ܿ_׸ψJJqN HC6|To#K,I=~կ'{tJ]e?돈*GD7$,v|sdaF:4(nϲn<^W38`m.mTJ7qR/ga* ?'N3X! SJ5}<ȥDMbÔu(ρɑ#tQ@:_/\Rc2Ou(>~BKG=v> Ȍ0^R )(1FnYVЄ1Q_և.VA4Cj aaznE[tob fF3tq>|a>E%OJșʨ8A)\>8t^W T흱-GvS֤Z5 T*ظ8 =F7oWFr4# f :LpǏ/^D{+GUI6ho{)D׽ L]D^w} wj99y.+:&l/9 jyW﬷S+%7Y 1F$zz,xJ$$وm+Uc'/l:UC`MӗB\9fxBCQ)!hk^Kl#k5^ß"jw̾Y$<14Y;Sm媺0f݅Uʦtu?{`w1ڲ_5H^uC'zl3-2#F qǎBvipj|hԱC<þ@ߗa¢ a@ǿsCM[F¬!C XH'g<'X:c܏w3;a |^X"po3BS3^NJ8c:=t猩KU=@o=T LġTur]f VL}Z1ܝ\Xз%]j}HU&ye\}6 FP;jO+<8Y ڤlӸ` P]7lS;6Vki=f#4FS'_WFwS$@2ɯ*kn> +[T|/h\1zr껐o]eIyT oDpJ^;Ϥ.6YYwȫ 9 7MقqA8K4k4%&ncymK;+(ww)o'BYim} ied3џ~:tywyCu+0bzkyܗVi2ʌ;cC ”BQ :Hڜ\Ʀa Fn(F50X >Hޘ>O^wZYJp{18 !? ,5^*t]pEJ!lw5Q?`SQ#L1~.D W|f#uQIaBa$L.RAE|8xX҈ƅԸhG93Ąr6\M|nM@0z)t_u'zո )R eVխ }MVծ42n[^@N.!L99pNiyff8̶^ȹ7ofd/T23qcAV';Z#3ԫnozoeH#=r ]4b 㮓#GɣTOH^z^LBśV )^>H#nР'~D GAOo*xZeyȯ9]"Wv Sj?vQβP 1\vqܧc\(6xa8\l''Go|Rm_>yS*e,E HԶaK~g@ d콯v:֖Kq7W&sR|b*lHkJ%Z?i{ėEʥ0D 3)4 5!7}qRU/+_eeIkщ^H KgxSId-ѮU6+zᦊ[5`tȝJB [U*L^)\"<-6R14qN&?捘]"WJ[z7VhgGi-p Wϲez>MF:AW j}'Z؋s,> ]"U^G,IV"Գf*X;-֫?-bb weUKL0'ε9D˗:#W1)Zٵ_N+HD Q3r( q5`_2G1QUXe {?QH bl -C&JX(WFa+A" 'M1y`a ꄃ[*y˜yʍYO$[ cOT1؜E N6~^.}ɜZw@A k|+r򥙙7{543xYa/ʙӤ9l6wm~*`?&E`nt=\VSmg.rM vXv."vN7K4UX@8p&K4>UܲI24$Roί{a WOrI)aB񉼠?4U_>kt:E2Y/ 4;r&2+?tCҞzjQXmn yZ뙀eaeU,r>4OCPU$Pe HJ$!D:tr;Oxfo7pBjUB,nfv>eHvğ]0xErt4.dvkʻ @(P.)c# #2ϩqI@cw|Y844k!|VV,2j7֌dW Iqu -k]fpԯXGz}-oTap`R_e/[YNWU2lR^ xV͍w3wr}P4'l~jRYQѭQ̀}}UwSpeD^JvETu;PG9o9T"Tu g4=6wq163d;S wcdͧ\8}d Ēg_++[cP)z̠XX3ɱ1~cΜjybQe~ć?\ޯrVq1bZNvjO;Vdۓ4IncǴvQCUF|nCW!MCL44&v(kCzyz_[+b$V8U84^ 50uԘweT% $BQi\$dp 2T۷?N[uʗ `v2eBΕ w"&*XCvbQK:7sF_ 85ҦLU4kGȘSCfE ?f5}߂ )3#;*0͛E`zjچa[AkNQL Dغ}"ڝзBoEy ]պތRLkRQCJB;颿"ֻ}9GB`vk7Kb>ee:p9" ac_3R ;;''Px[xDAĵ;(1s+>&qk5_h<ǤS_Ma"P|9ANIۓ&l0q8}X*j}4gѤ n@~_QX ͮ(̞ݟ^Z V7/<qAݢ&1]bW5:ZZ.kH=ԦTCҘvhdB7vou=ѿftM_/00:WG LUC*q+椗гq[PNC-%ZRv{$xao`\ãjjUӲ땚%-{é%'q1>VZ_e|Qq0aJc!3⚏t&=0猉ShԹQ.Pq1 RMgOwx;pIp] &E5NT-W[4 Od-V4b?5(:>嵴C'AI|cgy8 =Qʁ_s/81"|Y$ce$?[qQA p5aFu-).$ (0M?XhX%G) |~ B2_2P=)iMnmWK*\Z#'N[25m7t ;VȒq T%6, w%K@ʚaV)iVݕ[yw~_.&(ALG;qyxr)a;M`S_[9lÞ_ Z7s䘍-t a.B^)>_nִ0:]=7_;]o1˿d\R6*)vqivjkfjVؿ*ܾ"<]JH}}Ϲ1I~KAiWVR٪É9i[/Z,(L\Fu-Ʀe83Oy8%P&~sJEtD|AjY B%kjtMȸ@`bpb8tRKatYm=HM')%h6R۫!U<{tE5vx\Z*/_\mEv*Lui-9At_L`I yPI֭)0$ezM00@A5,(W*Jb= YJ @fA\n1"Vz$sQTԉc*fSՁ;ۊZq2h 8!1nE{|غF?dl{=` kSgI_Lk> 1!LXDbSg8n)*QHM̎y_k bʫ N[ѲrRf*)(}^U2ٍ\y> 5*pp!QEJV@&g|l>P˒u9%qK4;:.Nw^HԂm518vvA}w+=[As.gTqhf* pᨣ3#N{_>$HN'p[lEVhmlqG zoMۼ58%EFepReaڞ2*3n2}Q6Vp׺BkW{{`Dz ;P/!Nڝb m#.ؼԻ"`yrV%ۮ{.e9b JY5~U^J"&]1z>;c$zݛ .,Rh7Sd/wZyA \kF>ͩݟħˬTGCHfr"1vMߛ!zqOQuROQdBbzu#&}#Cj +}JRڈqmo@hQƕKӪh▀vTLxtf(M3A9bbb=|^3T (T0Ibu'ԄN^p*$DM%h DI/cF+`bMަ)#]{@1t"25—O 4$q:Մ4UB9Xec"۞󶐊l:eU󁄧qMa!-4z/~n"byL]&ril/[:!FbW*?|+pDm`kcZhwllEiv +|}cTԹE~9ho^ӊ2g `.5Z9?cE304W $&6%>ͥ&]weox\mvwY&[Nl!*tXs n~Ie,llnMu-$2Oߍe9ϸP(e㢌b36c>K=ry}VJI*倈o 3Fȵ*T>=9V~oe$ ؃U54Jņ2o,Xh hhe!å4;׼cnvdpzxUE%,l[BB@T@ Mr65#cN3Kc{ lQn PLya"]`{ӬrucJHIH>`HWoTz,طyuwY*x Ȑ2}3ū,m4vP.&MVC4g#UDUZ5I5Ng [T-ui.mFѪ{vtgخ;U$Ap8 YTʼn?3D)Kݮ&U8gaQB`,DOhvbw7Ww^g@4 ~:@C;>0$3t@/B+rbd|덳Q9TivPml$.ܢT%c|9T~ B Ѫ)V\9/ML#\BE77,+EQ㘻ylȋo8A(1unyY^;2<*NfM|ngQ{0U_1j J`eg~++HkuOqН `Z^z(_EN){S7횎Y4~11/RՏ 8K('}CrV39mTt~y,uixO~ ,{nn3mw$7!+ ,Йqs-)!L8p{%f F3ļ$jnA#W?9t>R5^ՎJ j;AiYH Z/< S)P9=eg>ǭsMZ{;k=4CL1ˀ;LʗM (L.p(B\߳kpkb,9&蜾邲VLoeQtm%@"T\2kt"|BQ}<d0v % Ax -׊AFc`,M_GwFVA;P4&K2s|WfZ2ijsyYˡC^0vȹl f9+"`Yw/Zx JdtҢW1Sxm*#V[3D'>/!4Pٿw঒'E_)[TI9lIG* GYN?8߆r;]37[Tc2/W@6ꉲ5XJL!]Ve&/'LgiYIn{ ,Jղ-ń{T@Z 䲄H:8n#*&`,m|qI|DUs] DLڼvH}'WѪu)KZbl0Wr%z7jOѷ!07%ޔGY/^M{=Y",%@K=RA on_)J{spCS,Hf*?^{=(*jGv#iBN0zZnH`"J9a_E38FY@c}I:ꨕxg$C{^ ^v.,;W`CE;71:eŃYfe4r"-_řQӁJ2e4'v B$1=PfvÁkϣ%忬)_JN_S>/,(̩KTvۙ(;/WLNt1}%HL?sH`(B[E.&ܝ<6o~f-v ^ ΢b2YDR2ZG [NLM_m3LUXsB?rK12bKqN?ddk0QZ[B/bɨ2_v$~T|weD"d' B +|wH] ' G] Br~Nn,_`||fn]06b>aRBx&۸T| ؙZ揄!]-!7?ĈPbyͤ`&PF ݢ\aυ=Tkzfgzۡ ~Bns )V,?BP: {)[r`.QwͰD{ht. 7^Y(J?!q{2ç4KN6-SsN&/ؘ}Ņus1zP۞ӽOμ[':jx4INQ]]_n|THGD^& 7G>ZY i+Tc=PzH蕌*~,Ǻi!Qc9w.ujFh JA+r&.1#5sŒg_si 2o4V֧IML.R遡խ}e>JÚ1fc¥c~MSmes<3mӑo%hԖrUZrJU #qGt3egܳ-4̄GWޤrgcXvԺs:>>.lj@:VI5:.Ohʰ~ylZ-crm@<~5%R(]|wHWZ CU;A=ֹRS~H~7-5K?+V0^ j:šWUb ~=p+䟘u n r&,yYY^djfY`\{r+ X߆rW./)y7@4¾] i"u* ȼJp.yƢJ1t_K۷ 7bSa]}%9A:l:f]4XʸCjil=t]%Ȍ3d177XiOihtXFhk,BS'0Y#ѬU&rVׇXʼn׀' X\u';e䉑mw1 JRu619Ш:Z$ m%׽w-֜Cc_W*6qp" $97k*!2~A_2Sy3/;-BaE!z%!'[q*2u/f)UxoϬh Ѿ[>bDžI- tLq@0LfWB6lM: AvE]M:vH0m`Lf@]O;kpX~X Q0W"Z,_?u` Gm7 o?q" I}ߞ#YZaGtؠ&l3vuVw >7{+" 1ipRv At^QU δZm2,|,$OC3}ՙsy^60@4qRme%-|r@*%΋] mNbȆ /A/߿_Զ<}Ĭ+w eVVfៀ:\Ļ4%ʠgX[s++:4_n$=3O՟.ӾT١VOYkY 6_7!1L"g.>9 gÙQXV4Mydy8t'Nv3azD"16?3题曪s6sY\ Yh48'fP*3|;\UQXpvάG;8(lj/CDFEtBXԏüT *pf}jǐ4_)[~#( 78R~v($_v,>sI*{|7ZmIjG:v iv`NTXG{U(# Z ɸ*! ,1V n1[)ͥ7AƤuLc|5q7Mu/dcljOR{`W4.֧ J.2v߷0 ǹ\5p@MTOO𼊼΅~ˋᓷH+ \A*hnn`nYKY4P wcӓ#{ጡe, Q~L)&3}H$[mF#N7ߥZB8w JszC>E|B[ֻ?a pvo*BMB2=> [ft[vU㔌!"}2@i'M)2 "XCAWN3w9ú'N d.89~6*Xø"f"xe\݋&Exΰ'/}zpCФmk,T8 RK`sM;V `aBz{9F%X3dbiʙ 'H ܿ,QS٣Ap5MyZve;ی! 2#TVQZ4 qd='\QڡM\mCKn@̣^Pv#ձj_!f23~emA$$يtẖL=&E=%xV\4's_r{k$ f-բ -Nғv~>мBNzAACE:SB0ʾd B(;sw\P9?aTz#vvkъPmgnXG,XD)xrpy6pfՁZZ&5J,H?oc1 - /kj.N^`nr:)EPՀ:5q73I<0"C^0&lx*|=X^ 9rBظ%ƯB^en^HԽ>HMc hݺ:Z<ݨ,z'!_^=C|UFX6쯊 :Z5]xtx(1?}L G'tsp'/nkn‴ L;YC=2%Rr؀"L(ثMW^[*T)w ,©yq噢HLs7|E^i vpu߆VE~83uoc+$Jˌ‘!f]BkAZ$uNs)ى-o(|I7ޛb74a]2f2͇H:m9$mm\!a8WxZ<,q>I=Pa}"ut>sA1|5P}ߨm 48})LC3Fg9G+:ۧNlT3sҩo XDMK_+ T=[Wg_Ӣlbu{540y} 9`;.} {]@)F5l`0Oz|pq%4p 9ZFM!Կ<1lMxFѺT `2JŚ[n&]2cp>߼y9JhcN+5Lt n M=fPh};HjY;2Xކz(&s/h-[O+:_1\j|]m< CJxl8̂#*Ja$/uP_La0a:Z҉e!?aYD+~ܿt p\ƴ_Fq({K ? !2BۤlHtN̩ v%@ܫ%#&#h;êcs=h[5>R" ʠ7NmtZM!\{M 1.^t嵉5<ӷm%_TV 6 vOR7%5h2llGW\˝s[?Gx]H@Nɑ'N3SpVrА<~ZH]R:W_ 9\.b-<'yvyqHe<$|'VQĭWfdq Px|aZ&Ð?qh1K+c/w49B 8^""Y:ٟZ˘?+,|wt&9z05wlSJ}o>iXx dWG~++Ms*FQLkNUG0-r|fnz2zu묎j.8Y-KtAPi{T>z;}ľ+G0F-䭀Rl;|}0W^CI2- Mٟ@P>I+\sErY޷EpV\߹{ Otψ[,$p$T8Gzh۠._1.'ҰW{H7Պ={zϲOs"9§]PmYh:$G('Xʉ"-i<B-:K0$Vjtka1R;Jdλ{udײ`]bsV#_xq3"G$ϼpoΥ7!#ml3/bh^$x+XumyHv3gB hF!W߉T[cGn8\J|0ޟf2} >=(.=-x ׌آ( =%YPlʕDJH ޕȈL^.CmEj\}t'K&P+)mgc?@c2-M Ydyaæ8䗄(?.9'gsRK6(L٥MdzbzzɲPI  "e 1׷bFC1l#+#%֜Lo6(_uw͌ ,~+Zmɜiǚ̠T[}86V]p|˴(Ҝ:Rk1U2-JP7p@Pi` 9>Ulw<8^Šj &zu(-C-n?qL$dDԸsHtLvEۧtdb`(Rڎ 1Fm~8k;J T,gl ,2t&ךÊ$ف݁6|>Lf$^ǽ߂.J|ݳEcp%u&Dr#&K!a}!V"q' mZ>^/NSk¿n؂EW?p9j(_~*g`j!AO{_]O37@y 35biV'qЭYaQ>3jH7%[wmn|{>*_a8qaa`g}Q2q]# G?߃'DX8ص̍yk}y0笳L'j$ J !4c!lq؀<Ι$;ٓS4Q fhKlETaAn^]*-%H)銖w 6Pew֟su팑H ,tNXF=}"fvfvؼδJ|^@I3 4kT۟^_D~ ܬk5*Ji3aXyA&> ǃR mĺko-Hުcw<XsB*aシ3.V!B\L7j!.5A4+S&54u|jeZgUl/e(yb6_Mo 4 :Y/;v\2/8r7\5Hc.Us;yWt-JT 1g;q ^J +` -dz1:%0mLtܣ=!9eTV- X|mHrb?*M~tY7לC\g+uhLp^4Ly|\wuyK =1㸒P.%9Ȧ6lCӅtAFiȏqU!㸾dQ*G~;GyaYc\INz!k|Iರ~%0X\"ޏ<1&3ttÊann0zKLZ;SHȇ\3I#kGbNͅH ʣAyީM=閻loVclgabd"%”h1汝FP6 Q@)x\9g|u%yPe4FQQa+”VtGP¡V^L+UPQfG8ެwlw!:h KO~WzU])`YׂXϊi0b@Ȁk IOiw҈Rdp곆A61sQ[;cWK.8]Y{BY8gU;:oi?MϠ]t>I;&[WohYfic R۰ՎZN U->0 aZ5;r&ZJ6&6lh_š$_% 9WEg o ]'-15zMLV"heʥwlP*/?ԳMP(L^Q%mn3^΁1litNmJr%odxm",O7t&BgCn*)#u;:5oiJkH+1aLU%N:#mOՁtd5Mn~v1 w.?T; L|4ͮ?~Tk7F־_q7.Tg9=Wv%E b1&׳ ,:|8h MLѽ,UWw~*!N.{E {G#dTDA 6ku{Uٚq)?+[)Ð|{L*z%NM>Dc+_L e4S,d.T7 PHnCQcjj%lu y]4"%i T0wg9]z+xɳ޷ /< V!V6F~lUH. xgT bu,CD ^Mq$0HhԴ4#~6〗;ͭ,3,MN8BKE^n(oe8+/0t*/\#~3C=y.vH$_G7BjKda7 ؼMjPU?lVL4pafZ[w?0~9¢N|N:= 4OZ#&;%W5o"Nz>(e_0"!B\ @{$NoAd@(J6ʰm#S$nag8ٮa0 U 1  qS4N{Gc]H9^mL6wQާB Zt@x⮨_5W\@_9YOno).IIS}~k,y5>C`2 D7.{]cpq=U{j kO)Ƚ;^ "{+ ӛ(\"szTGyт³qEagQO_~;Co`-L{oi0\t$Q$cˑ,NJ s E_M= +)_nPLUa ^zl,P-k閇AKm܇ 6me*w)O3?hT*#VaC)w-qZœB2n%ClnB{oۨڤ\+oƦFN 1NBfaWs8ϣUIMUz*F1ѵ1:PBAnQ|D;bsSp 0,r\u֎O:]c _(!|${$ =kcV̐vҞ:m⾋6P:X>."o"/Č"2Pw[ 2M`?u[p<%hٿ1gFyP) =6rr^Caquɸ͊TSY=LggQ1%C).9Ϙz(!.];a=4{lOC 1$aYÙw^|el A\:y-G,@xeyAQ'ymDP(f[p̊J?g_OzRvXcm6A~XԶ~C`c1NG<fTЎ07Pk@mHZMEmL/e׷&w-^ <9 ]LS钛ZI[Ȁ_tW'3-߿eG#}6:y*;|b;TbXlΈw!.:IUP+[C̢it,j}%zm'i{zU>%kv!T{ss10N -Ac%1b 鼒zB " 66.~H]`%qdv#'[Jk򉅸V ྠ:]MPd.ugsYx&X{۷prի0dS(nϦ]һF{" .z?4 _]Df`ٷYMO;жGaxArίf)ht8rE9{fjA]ȗH=@(H{ӑk%kL ݘZEJI.ڷu4`R׌Nk.הq* E-@tK7iD{YomSjb^o졈,WB?.[Ȋ&7OCgۭmOlogoFg%^gtȧgѮw 6gNH?ax$'.;Dzq_WfHGrCOk9=C¥^ĐcLK"ir %H?\_"(}*i(׺WYeh;fG35(QjmV[&{ a˕t3R1|CȰ⿭R`4،DYd.hN4LR:&|35JQ'N2\Dqx4qyu-pA h8skXAU!z*bbH.>njiwԕ5/Zhu잫$kZ-ZFt {g~c];efȚ|d::PhIzpes3%O#!bUNSۉю~l)Nbo~PVΊAĸʽRVX6ⱓMIS@orW0xD!B =Ǻp˦3)ծi)/Z ="pS(T[1IU/`^!΋f`4Mt w>e ګh<  b8|\@/˃,WDvt4O~N$=Z"1=o"{u):\Ϙ@Y.C}HC5U 9jRJD(͑&'돲E;{uMEzk;n%1)}.uJ*Ѕ܇y&wowKzp)j&p2V2&O3<# ($ZL,.rpOƗ2+=e X9,!? gB7qzL1êրpg*>B$ISø_LYo6$k9BQ9*u&q+}]!h"=;'AED{T2)6<5^!O+E^z0"r?=)׈Lˋ/ .JxOEy-v\N<1fۑMF?l?|_4eAUR+i&B6y19q| GAӄ, AZ%Z(Dhs_ٿ8Z?zeB9֑kqvwe!y@z %ؽRJ'?9򯕝Zq6c^?u3Z_n.KY/b;Oc52w#TA 8~U;ܕG㚶:׼]:.N!pEt`rL" g>C_KTN~9~x? 2'o+)~Ȉ(AHq J U ! l%qS+gŬZ3@19Lԕ#tJB}-SHźKXؘ|4!E}XgpF}#&GȂ5CmJ{+)|ݚ i mxtYFqi`7\P4܇SM>sDT;znsԍUDQ!,b~XO4)Tϰf)K0F@-ɕ=d^n=j$#(\n $[ci$󔠫Ԏ1|M~ȔygHn:ܓT6骂LifBahalw8\dY0rU A?SlĈ;#NV=L2ď#R-~@aήev ;㙇Non¿}pOGxi Zr5ŶC:35hbA!ۼ54!n5[V4f׉/?;QG2!y<&aflɽ޷6L 7",2gM)>״ ~ +w`Ǫ95<"e R덼g{Zɫ{gP,7_({Α-jۛL%xa {ϘyEd\iHwonE *y\8[xh)Sn#wKj%9L) *5a'[\?:%Fv" n}ݣwP$КkgRSRx" *6U35dT>D5{H` Iuut->U( =h&* eFmuϲ(L/%%Fj;(F`n;P6FqǢW Lc'+.s~ѝ u/5 Q{u< %w7?ieWNLW3` @T T=b'l{8M)0.mKGhilt { ,\W:ug;X䐪ޯ&ɖR pV D\3W խX{OX z Dzvnİb}6:k*A2R 1m?F0R^x繟.t4HK"zWߪpz) d4#Yʖz2tsȞD w.@R?=}u<lEr`\Da.9vg" \VRA7%Ӌ&A=-BjgT^}wf&5c &PӲ 1H‚ȕ [/ RB+M"~lpC>?_u"ʌ@'*f$۹*gwΰ RMʃ9-k~F% |,;/zO{ۥ>QWP jAM>-78ңqj0LNSeT#@MEoEsnwD߻5y@4 %c!.^WigK Dgfm@<]EڀI!IfBƕ:ң8 c {g hΘp̵λh[1#(wqBOXbBZh q)!¤g+CB{@YP: NU#wO ;,hV3=?R~*D쎺hCnnW@#Tzy$x頻~~wN2wJ&9l/o,zݻ.Gz4 5l@XLR2͓I#Kj]UГV v01*z䖚%rF7~?5{[d`RYϙz0S\֋ռSb g.0ﲪ{W-m`}ȴBէ+,66f3Gurd+6S5vaƚ\40Dv'%juB(-pA1 W>%MxkpD\ggx"G(a7'j/GD"rD>0WU]s\9DˢHe5)t|OiP6w|/.l+ľv+&6)?C/Ĥ_x-WjtHB{:-迥loW*qo< .wb`>N -ya{,$_g˽9c*uy >l8ERYH>8 J] AP: 1?"f9P3 O/w# O^֞e"lz|rRn)qKń;v* b ))u ᝎ8Z Vs罏9Ex*Wa9TҀx\96vpݞr{mna!$>B8"v%T֦O̮ ^g;hqLPߊqT^> ,$كzT}3nE6(m`0()6zlp^ǝ4ICswT?;Z&"jX42‰IJn5vPl rZI-ҧk|J1˨`tOx-$c4ލ2fæӺ(=ם=dk~ҵP y/ZgY~sm_L9IOuu"}8Rğ"HR>8;YΧ^}T "_(3j7axl'S j؋8YF7_۽!1\*~ƅ,ýEӔ4KyKRMP=xJb WCe4E|·kmFyK 6IWQ1ؘweT%!zARUcKn;o>ea _l~Ni9K+Bj,sEQCK>UTn"mj6(^b~0<&^,%eLI]S%T݊LR qJ v\X0u$t|+yN!.p.T[8 ѼP~a;v:;ܕ6 z)T1N53hWD$ ً@S홹 X.,^HesLU<]L~.ڄ8xvR .hXj%1oWmZcRA^Y;iƠUӠJeaW,SM1Z,f٦ju˝w}N"NiNtKU{`iWdԎePrOSRWM%e`-B1~%iW4u`(_%LO/VL+c*&zt* Ghf4*a%alJiO Sτ/UjAdww]~nB+r%XSjMJm_ѹ]_($[rSR whLvA"̀t0U.M B Ue^ۼ gűoz@,K'At29ϡ7A5}=-'|`pt$xS8w M,> 3Di46WtuK-$O0"FɷEę |@ ~}9v_~μPa%ڦxd+1~涨/ԄU8wq ~xv8,0[u{Y*^%MzVҺ@G> J\SzDž8j{'>؂ci'4RLm`0ZIn F&ST2=F F9 e>-Hn2O+{@P|٬m~qA`r+r m\b˗'7[,\ w8E(%>G[HJt3&קu1޼(۞G%b' \-C+nPz-(WՀ-z(?.lOb;71%]7( H'h{&Hz@+5هGYR ck[o 9m&|Ts[vM5HfuTǷZ4΋D=4LyTe]!w[ݡANZƍrs&q_9@DS Jd<rWJ4Q:|% 1t8\RƊ5EдKk{A7w2 1XZ/1&xd `hZ6?Od[KlI= C' mmT|*(v ]!oeBC@uL1˿+]X[[뒟VSJnL۷Z9Qh0Y<;42wy&[֯geMg>uĠz)A+6>b Af)#ҩڎ]c,-7C b~{&akƵ> \<=B*CYpA2W"dT6ʝbmzv7H+hH ] &&IY#nU'bnf<8ÈRz޾V ;_NPS" -D0ofP#bv8Cs{H&/O w^[_8dWQm$v8_^ڙyWKVY<ǿRI}Vny~Ԩ-Dr{4kt2`T"9lSPJf|Vd'\#._ex< g7:_"lMT_m8]@miGt1h"te5wm+q7w)$0:ӹҌ3ӝb͠C,GJ˗E#*vF!/C!_-g` Iip)ѳm!\TPljఐY;fofW5qbfZ/M3auUbK &gK ꩼ&J(/q6p TWՕye`0ATJ4%|3,o0 lj.ZwwXmG!e= ;HEնۉijؗq(5zI|usƩJ?EJ˾ 7Mi#S.󴱵޾*VfDh@CF&idsG!gݱh/)u[ qtbh$ e ~kـOEf2RQTW:5+{E Ed4{.l.g˚D2>W~U.?QB!ť&B e}; 暂o.[Cb֙mw)5tU{z\ŊrRQݫ{RKk勒sԳc^|S2O?|6| e:@~& ﱱmXim/bH%rǕԼj|Iz>ẍ́ ~еP?~/qx9Jw3ncZ25b[Z~2Id^…\ tjh+C:f&:i/Ie3ǐ&;8 l((w;gwJ~C2 B9?ʗ} h9uPjJ͠tK@\wGJ*ݕʌ"Cz?߇[*_y)Jp [^2'pғD=+rZ|.v{Ae@ؽ$:5}8f?%x1{*.>=p4nw &tG4wiw!D䑝\tˊLUNy4Wb##͝--Kb*gch>,TvF,o7KA,-TsHÂ;Bn*ȍB#яfWhQG;Z׵$[|/t׽&>ψUUӤAq0OS\ph xK׸1op~׾18 l/~Z' pIM9v`nwr$* h?GY3N%K6_q1Warų3C!s"zVv7 9?HbLڈ9M*,N%Kȥ3Lؽ,Tkd' v\ۚUĿh@qlc+u ~aFS^C{G[.|ѐBϥzɏ(yvFTt;h\{Ҕi޽QA>o i`gͻ!s? 0?ԱÐ%Uff<8:L-QU?HF]O}!/QG ʪ S}ۊsøvJU>( }).G<õ;?v#H ˅)vN~t-Egag[&l:>bcnĤ/?iV )g+v<{e%O4UB zssa sϪI=;0ew; L˃pQ.'xeP4oFL]?c᥻jG +jrM>VZ'g yUyTȆjgn.l~GD>\aA9qs=pW갤$B+ֽ]QHaȏM("h.4a uc'>/4噆Je!yUs;Y]-{ϨnנyM`MD.Y*z˱6F* @ QsY)GêxQ}6?fl0qXQR-@$摏Dp|?yhS 4c4s5eu-?Sֆ,\kp%TIE8(n4Z͢)+\ b$3Ǣېy+۲6P~%/oq{dgfkR1 " O%+\7Kw]uY:afX.M/3W.c{^\,Uy]h*txf=^[< :<'>luc?5?հtĞEoM2Oe*-59cĪhH<.5d,YhB>G coq9r9Gpa3A#" 74$lJfZ9dQ-ȗx0%N>/_u":#4҄j>2+0 $IRu CZ{j.a=EK XKκrBJ=e1co f ^lU%M6nn:;L#u ﯼ[1KUU984~*Y'1d,܅b*[K$D'`)W@#d EЊl`4ϘVƗ/b;my4 "ms/Z,L>ؓ&xhGFwbROx眐@<'#(ah Bs.g@`1A8 .w4H¤ec2} B}[06h耪?#Jp? oi6VU%])%k pY4y ͉YQU#.6'h[{[ C_g 7QB&5YR27mm$ܸ 4kep~31I٣rgV5j(fz'y0xGBrH|Ŀ>* 9E&{eIehE.&kk12u{;$^CDX 4'V#ߺG1q*]]D` //T"CYcRF8iW/^bT=(9.8}\7KLg8LA6|qC[O*^!yMz̆SoE_bFEh@O#U9ed)vc3AoF.syaVppkj5s-MM—%_ g:(rPh)ծ-QXp+5dyNM`.5uꌲA|q۰D:8nšPyGV؀ MJ79yՅIoƏ5XesΦnwx0&hz9xc]TAryRnnٗdf d2XD25zStj2vw%WXʳj 6edmq(Z]Ee"j" 7eJ;*zta9EzZcm(ƳkpM~) Gk4rg2_ad/ 䠩++Aw(QlMH"O !ihzCmCT䰄yY3ԯ]TmNs/~$B7ظBCȡgd^A$&e`h% 5i3ZSlS MN~qpWB_"zTLj_+6&̆ {aw)%@Ňׁ>>ū ȌSUd7RjBm io2P}Oj 51jKqk:0UwB5Uf3?ީFLL=KEqU,+w£ۈT~Rv@63с1$Z` %T355?en l/;s 0R@`O*j[epqzB_xыmw ȌH/PFy؄֯E$X1\"B=dO}=i;}թ}R;Ofd%/&"P*>6n[ Yt68WP ?mhY}U';SQ؃`&.zo#7P2)@#QwǵK@sA)"<([x\j3y4-O (~E:%AѹvN.A(X<>sT"jޖm;=Ҥ|Ob|Oꚮ1xQFuUqE`+L(*rC0ý(.PXI4Fr֜,vQѼZv6w=bl-nq)NSՈ}TAMf!JU*ߙg9"?7k!xs@G-}[04} {"wWxe=()[9c&(s-H>] K̙$ aõ_ޱpKƨ\6gW1Q"j')Y؄P1O%$9cUĎɖ>VW-l0ZaⰇM"- W^%e֣=A?ha"Q׈3q_. 0=~WQzV΃$vLVP7wŊ>doT'pۉ B xvOrMy9=V|I.@[rm.0BO)@ͧ@M^z$<_aM,X7,*)5tv^ॻ]] ,Zr47ExAT0wkтΏ?? HmY,f ;{/t [ʼn§0M*I>iF! ߨ [B2r>>h/oS+Z|*;s8vp xBW*E$]l/eE!gd2鼼Xʔg lbyOS[-5;D])aVn?)vڿrX E nWF^E2K't^w!%1-^nEBj{ǀExʋQe9.v{ 4(#z;Do=fF^U}%WY8afO&u^>.fkJҩ T˴,?Pni:3^j0 ^ ;` 쌂U eM򄮅jb.Df[_S5~Ҵ ln"1plu'%ևc0/*ʷc!(L7kyH鱩*Y UBС~ōhʅ-yXl0ƵUp_"Uw?dx16M`5:-T!qrۓ5H?07bSLigsTtȬjUSآVb>k3hT[$Xŏu$"'KݜeO:yEk?:22ϖbHFqɢi"eToA*]Cu7l.GU[#a|x_ 39̸{@BuoKvKVb.~eࡦX0i:6ȋ2"ri,$9t6' /#z5 s \c5wXRDPq3So3LJ)ᑴ Ldƃв.ozJN37f(%JVjC<+SyHp<2\y7=f֫3!-5ڤ_j#nqc4P!WHqs [.K{YͩsCd[KHO?^$Wr:k u&CE>A[ >`NHN xv07 wd9xAMb}X}ҬFG^f ^vdz`c2W0ze~C8cJ)D6Ұ7c1?H=3x14J ^dtQqtpG)BdGwS0J^-fR,(+Ix&hTL~?z+DG]Xg 3"iH? ˆ8f#I^7Ϋ4a2E̲bx@QzS8I˪u{=v`2q$1ty (KC釥+5@x|vgN`+ #ӴG1Tt A(~8!U%L;05SfE)7ʃ̼ $@?4Bi5tm?P׳n/sAk؎7Ke:b M;U$IdWF$ olPkN.6 H~r&m U{h~g4u$oF>8v^TٹQ+뫮ɑ'pTAcI9pe)q(CNd5usb\pl|buv]]*5 qpqmǙ1C ΍΄b!{].U g*.nF*W0Ӆͨ0_6Z矍)œ3pAQZ F+cT`[i9zu%\kK:xZ?vHaj EΔbx؀'ݶ صb|16 _#:šNt:$hF6 kɠA`k3Ovog$Oٵ"v/z7цS wg哅7ZzUwZuh=swlIxuVÙt BG^43RӉBt,A6i#TG# >Z>;m!NeF(Xd<(|+yf !5e@<ÿЀ:CaJZo>/W-YyIߍ7j6wʆe>;`t[Wmځ JK"/sM' N624^,>'fUgP5(ZDOy`d3Y&n0j낝R6˳ıT9.A4tSgICE!fV& jvp8zGָ?jzﵙ 5nND587O|`N;MF2Qr̬UpR[!YLEOuiVhM jh}~Bh2nY۠[[G1(XK:˓F[ Ku0:OuڃנfLegyQV[@fKc Ԃ|"Q!4h+1wsorg0 ۼAL7H _*~\/WgSo-+Ԗ_tR WB\܉+̿ RUHAP$n--eETXˈ:['s{i\nV2-D!blρ;e 3$#[j]V-.1z f.ix50p] \*pk j{i/CBiZ~ ūCrW`rdh7m"L w fhC1S Ա*\XqO2xk؛bYJŐ)rZ SYZ"n"bNUvD?z4FH9V4Mv<7U(OW5vYpO]Fa[?|"]PP蒍|.׼. ܅OKM'v&VUYomM] ﳟ0'狖 kc9ˠ0i@Z0W@i{.ڸc(2Q5o9qh/z.]]Y`y Ag~91ܝ]5qEfN- 4}Zi[8q+"0y[4{'dPV HEHk G>K:,\dM5~r A1Gۨp c}(A9TWe{L d^EuPǹ9oh$ƣO@hpyʌTjHWNI̠8ov\b2gDJw`vP*Hц研HAشOmN>55C|HOZ|xXMo*n9=p'c1{h:Emc>99o-g)@oA *$nmd i RpsH,ea{ۙ0jnlPNM#-ݕ?^*/2cur7YQGBeI -CPJ S-pZcqoXnO!K0eUєii]:#> dE po/Atr4^p=y(v =FKREȺ B.9yF=OGQ =SDO\ͮ0'&>BbBȲ50"r`;Ĵ vBJ f_/T^ѠS/}DE(0A6$C#;pdԅ}./> ;c!½SAO%t :bXِYW.9 HlpaU=JLY\e0쿮[o96Adf )y15 G̊?dyI:70~mdԙv4a Gm< ;B4!O%GۄSl'ƿNQxڃ<`/"ENs\Έ!3 gߏn5e֤zy] @T9/iqq)WFL3úb:_m;ygupW(5]kO-\EX#-;$ G`VWC(zpsRcWYi=cTO#%eǹ~&js>iKxjj_d]$@A]Վ9ӭvKYHB|!cf>,g2Q,M@* p:YCǨoaUoWnjpiE:SsR;q$;B1IsL}΄.#j4ߋ ɾC,339FszJ0{,V ب}}G5e/$mvֻ瑱҇1υsA%4Ew^Dw @8"Şe %O Q-&L J0!Aڄ&* &vh5׶| 0ͲPMhn!JtUĉU ׂB{y&?ig~:PmڕҒF8w(6jRZzbl*@ E:t:c$E M=C"hWo 8/&c!npĜ>m dP "-m`Y2{FAY dKד#7`vDPћPJ%77ƫQoz0][kB>Y~(/Y%,fotKcuk[uAqzHڷVieN->g=L`v-yy!i}/ӆmIDZwl>`dX3 b^ƘKxYd\Yw4uS3 W Ma(ˤL_=gv=Fn) e7F?ny1u<L+  M,iWjO^ 8%?qEt-Ҩqil81~Cӡ;3="vEvuŚj&f& _gVhRċ1J/{E2ز2?mD5S)BښG#4.:0,Nl[;#,ɧѲW;5(tݎa8({rK6^FРl\nlڐ;t|.n%qyMr8#HɈ 1)ea\I.j;h(F^؅bU:Ow:?:*w9lP-8a&s5,ῪdDIA2x>c`~H-[А-Wִr& F"21U wGV؟ _<МB F/rv%Kc k n=K?&lvóV@ D"D6V\`RD{reIA [g| 0jYFxD;!h˟bPD7^YRބH#l %yJ@IjK؊cf)`:1F^ Tw~dqZ`Wj|ʜ3b=Ba+}T7?)?sb^T.xߖP9]sqڶ7jELy!{:Ғ%D@u^+~IocjKҖx=$yHN* S_;t=3J>-ZąBIgpK]G,G.ۤq*C ^gBmEFL맏e0tebj^N+w ׭+Fzp277P`]F)[oُwxt1o8Nڕ\8Vr6 Q:NMㇾ՜MifXY=w<Bty/&(vQD>]Vtv x^- ʇz d7x8K4ǶgT-eg#F|Ng$ VKY?&,z" >IХq(T` `P(\YB/-1Q yRt 3HnUkۜ~t8nJ׷!,T8e$57Yn j-R=x),>yy^H,mթ؅ : gkO|ÁbsϪ1,(65+Wq Fvo` e^XhY3 b꿻Cv-[`ѰIx'$E͠ƇEd 6;Z͡KF),^3,<3Y!B;⭆IH&(ԓhQGK< #zK}OPT3 wZЪVr#h%zۖ EZ{=HbF9,\کw*~r6&i-IsEdse5ZВ-ءNmk(5 Ƃ|"?ExbSx")J4[K,;[֝9 uPwj3?P4Q @c?& zRv]wx_lz?+Ag sUˍ,C㫃*0CF)=ͤ +X5n;7w'˪1$*1.r*#GuKT둔p\EǸNϮN&p;eAp@aq~qJUo;gziVUAa\*d-82k<L`|b NVdߖ)v'?Y'VzX4TAmN 11r`o4p\f3,&Ugk?fj'&d+G(&'^fVť]mDHϽ@؀m$a˓4i=hu 23Fؽ~u?BP҃(]0_wL5a6 !}\YUw1\=p(psmsǥ@V&FR2 47}1Er.P+sB3tt<%v,{_KVgkїz9EV_B#sۆ<\lSiAw77W8!~DfU}m+g98.F6G\y<' 倠b?b{Kg-Mh 7NSCZ uz3A_/ o1? 'pxF^_ĨD0(`YF0jL0x|~B*2(bQTjK\Sſ9mҖcpFtPF^QӴb!v߷8o;Uf2=G( Yxa탌oEr% [lF|1 ǣ{$Iʅ0.ISKHΦV<]~/G˧ OS@G \}aqzntx8%eECYIJx8Oۂϓk[dEOM  3-qCC,ZT%~b%: epGl/ؔޢty c4{T7iz2#j0I~Csd\N L tvdW2Xa '͊ߨrxŽ5"` jGi$y9krYʚԩX6F_L-B*T@.7POQr>D "jeR ②f*.wW (S6j"+\ڸS˽U`[ ,Џ?Gy|D eW"6CuoWH%N՗԰5To&#_w$ $?Dȍ5 d-CrD}+>.>ACAUOF5)i\-n qYi5t8nj-*9eT4I+3\YO< ?pT|g9pGRT{jm/]N;C^Y<i?L%P8x=̻`Km,Wϣ@[hB~p23;PРYT#7C]9|{$C[NAT9̼gkQ>+M'9v+)9rO]ro۠S;QЇRe8.wl޲) 'qyaU _>l>B@lz^͂x(iOBj-RϞFxȚ,+m=$8ɘRAMO['xGk~(6J8*BHu}!Aʐ֦CqBԾGFo0–'. k#$Hϫ}tdo ֖L|&SjPz±_diN0+;a{' &mMԪOqE/ע\&?skZptSb`7`}~f2`ľ,n)a(8Yvmҧ7`P$ +B }ք?q@X U'p}φbZ ࠫkTU1I{KX`$_tFT1=DŃj8}l8D0V7\IRl7⒪eda/2]|b9،\C4hksW n\P@emx㣔t[ep"~pb=>\9ZI:[O(>;W;r5,Pql\5{RUZT9yF-ڃ* 8Kr@E)g1CHf3 +T'kH.ٸ92a`aWn",v3qUU͎}jdȹ/ ֛wcɻԇd*5Q[L[` $ݭ\~ ]W x.tspRlUUw#XE KKpú.;(7-{ZZ}PgF¥wOd(2"nR ci*قRҤ}Idu q! `LNVEQ:NH ׍Q s̎d:)bV׮T9At8Sʎ`m ܄#fe% txt贉Rcd.+Tϲ6~UI`wFTtnIc$;eXFW>hnLXIL_QΝl A>G Fh"Uj7(\mFGQՑ(E7SF7HَrA!]IgeׇbyS§a"ᜎ/@S()`K2fvV*]\G4G}g-p^`Q5/d[_}\ۖ &ꊓⵇ@i-[dƉewd?%wMi(W^*5ɸfY65f rL t ;CC}Ed @&Iya{i^$k!u&.o ɻ7E^&[,)ul5{,sL^G2K]; IӏBeȑ^O_a +* IDхnP &W#rA筛(6t6n_Ũ []i@(h^z؁%:R"@+\ۿ\TW#fZV@A z~5;/*i|kGy^5UZF&En寃̝6Tt9&>VQMXL~](H~4JS*ԇ \*c}o32b*ibhȇ>9u  9ѷyK1JυAMt:Y ɫFQl9+mRV⤼ƭsԂ ^^-D|uXݤEb|z=G0kk%s l, c F>•ph< -[M7=wΡfCʟ|iGjc- ݭ+J VR &l/fƓ1Q:|C2mƘfX^b<3-NSWCSV.Fy{ZUY/nm|r񁖓[af(hZL<מM Mf^O< %}:c}/Z^B |.V>֔gxY+ hZ$qrWH8&zB]UD1%[qJOM!EZ[n0ssp{ ;LJ^k 9̓HW{b]9= {?<!h؃9u$uC0qSMcGt:s[u;/;&jy2B:`W#wIi@X|,@ ␶nDAo|a-nj.`<%\JQ҅ZX!_M /yI wm* O߽m~GӺ7zU[~L8I`֚)B- fHVjxJf>2G:XGcPtDM?5O#핬M)6<6A|ݠc ҫb]0ToѝzkGKW(Om9{M5p jdž c:vցIB meܓp2ߋM2n=ճry5ȍ>MUsUXArۗŎ%uK˛oZ#u/lb^?=])&+^X}@suLK;`rhqg`/ c[ͦ|ZM+H$8 X :_hX ,LMW9+eW93 TJZ?܀ܒtf"g껪0aus$%8kd'iB|PӼ+[(93t)%T[x*!@nZw7j3jG;TsX_R zu#c/FRs2<<e$D!/mDiIhHV܌Cr(|vHwh{(y-F97B#} I$Ta9=T;>*rDұ&#C \ -s#WV}dZ;AS֋+6*H)Gˡ?%Ow/(54PQ]^TѸx/ǠIIа@QZ#yG>]#MIَrj- oà۪f_3 O \ {;9/Eo`ޜZ[iV@tk\Ĥ~m=zzs]:Cj>yƖ28lh 4_;xUmHT'1!C`3q<Bq"3FWj M3S5Θ^<&EGIf@*%T`kN ~|'1 | z7f~D{v1 ڕȮZ/GSPN3\`g<F ci3%sARJbJ.ǧJ?Ԏm٬'[PI4ȃs!9?[5Nwģ ?\^{-e3:*m^o_ 21B\ OIQTov>IB@zhϔ6ka}FBThQf|S._'U島2^}4f |xFYQIp|tU^&vX4uۍ&˭m_[6hYT]{mlPfL"rr-5RϣڌSdgC~bsDkHOܽ#mYmՋcOoJ=rhي$܎y7=*0pL#x6wůQǧ{ܺyQՐ rpg3'0;YҎ;|3NR$r%# Ce)Ѻ1*e]H@/yViȹ0gp1{OOpWNTMˑJۈ*)\9Q3wZG oMHp{9;ls0[R׮gR42Ts*uB !-['7PI|^[-pL!˅"z2e'X.nz6ƋMħRܐb^}߫GtXyȼ-ZS=U7۠t\Z6հ tx rfp-{`ězƋά >3Iܽnܭn|3iҭHX^^_Gqׇ|'C%fEz G (Ư/RmNʹy-)56S? EGNZ1*K^a$`!>w̻;*k/@HyFUASgVH+`qܷ5xZ9s$[BlCe{D챖s$;4|«^Ũ ZmkN8WS>X Jjn+_xSmCNkzU* Ԟ1zeQYb[2cV=Y'[w`u}4cfx1 ] EyL-2P3[A<Ur[l+v&rX (;z{M+a/l7"Τ6,0!ـ*Q@p &$myA[ BZ hX÷83*/M5 VՕQ)QH 'xd!VuXs~km^n'絸SӛU 6jvgsWo4yhMo[z2ªnWnh"ߊ0ڷbΤH CvxIyIoe?ҟG.G~s`*~g˪R8,}%"4]4Y" f4Vqx1mҤҏSx^gYJa4zG]>,d<$i1}pS[i}^:HEy}| tҦac}T*t(DRRj,\Ud"LͲ`_82plM=?3Y!.dEV 4QdA`@KEY3ǟ劣RCG''$zwͽU$8 uQ'aW˞7:ϴd`ЏKA/"5eP6/];,0Y6crϽ0c3BAPW|id.i}JX_ZgC ё6|6AosJ Ck~[||L2ըVIx@[v }yr$m4a]M*zH/Em*)ݎowR5^ a)r774\y:Q%äJ;{%&I2t_gCbQ|i;"T[W ]] oHCxu5AL =1H摽Ζm⌣7AXpB_v)#=ݞP5]1ekުq{x7F{$n撗wWFut\rnqL/]J*۠g6bt9V^E` O[酱6Bױ]QMQ&*z E;%qxB{7-]O5Exiٚ]:;"'xp%^Z>޶ yn2\ErjDuf_ggKuļG1 W'_h!RəEfM҅t 7x*rg7EZi䥎V0ynE(tZ<ϣE 0`8MD|ڽPW.Ķ] ׫pfY! @D:ֆUS_Ó1zu/EYUՄivj7};`쐙6[zfI1 IS۩ʨgH,+ m cwr+yӷayrnCoЉD@D#o_FNf^x&.^߄HRU7]r8>mtII"S0{9**@>Pxh9*XBjB *Dq+(ȩ}>YpE0v~/u'p '!fQпH P^$C#9Q+A')RpLa)}!KI%daOGG N虽 6lA(8Ao#qаPY+I^,nj<9NE./3[OvAHH6 r'/Wz&@qED(VXzxi3hPq}qFCF9Qu^:IuQLjф庫n±oAhS]|5G&2o?H]bI%a VX?yN eش/`x)$~ |uSjɀ{ݿ<|2+aV +-[([IWn&LnxZRm-f»rWM2Hre'u1wdhisM%6dnDZg# zvGS+Me_2GydkJ ׄ ٮr4% @GA UMɱAt6 z5TD0rCtD,DS׸{% N%Wc]Bqݘ12sx9ܴAR$rpJ)v̻uUKV!Zjd1nS|Sbՙ:ELN5= 35K?981}#Z.Ks&o]N_4=1~@׌~T :-!zT_?Xe|Ƭ'-y䷧CuYӕ0̷ ."% y7:i PH1[)k}l2C۰yG@1Wix :T)rLn|QԑDZY 1, &cC0 ԔyL?ad62Q~jݱ[AįBBN^:HR&5V?Ggn ZFpъ\'Al)UZr jBlBL"`klHA Bvö(U;-;T|icQ~`WF;Kzff*pܹ 1b9cG L4pqʽ6bH`&Y7arS |D|3 kH8LJGcl!EpGF"+=Գ)5X:@,bRG$7rξ:~ZN+N{教l 7zr|mΨ0}Vq%g.?kU2k͌&- z^DRѵ`©_)6QJqM hsYGHEqqz+1T*h4hFfյ6f5<8 u1&%t='1"ZW+"kޝ-9j +RO岧Ϗ%>RƁޙ'/'qVKgDr4\8K/GAsY(g(>2Vi9͖h<"a kW"``l0G#[pG\kc~2gSO\zWԅE*j\E􋩾7 sFm"4]g9e2)/3%$Dpn0I.Y$?™/dPNA'.0z?D&M,}]bmyčxN VR"p W=k eW%ן&<@Hj'x@ц,/Cikz Ud`ur^ zhk|_Q9^)o2ղ\mΨI(oX8CQJg!`@gO`kz3ZZ(]/(fC%U+c<[搛CӸUE|BJhO~4&Kes2JVq?6_nH J??=OZnH=8U}1VoTJ<`çBֵJMWn%3(_i?XɌ\ eh=_Se_=5/ @yE#\*` `ljxygdJi=~^QY+vЏ:0n U=7'l@H*%!ve~ӠHxʼnW Ax䕩m鬚7BH!J~q#w+tbQgq54ˈCDǡ">Uv+sįlijyhHշSp>GaFOgr2:Yg&:vԅ~ij6 rޗ'maOIJuE_}9/V E#dc"؆&,+tY%GZ*_ϊwng7Bky yVނ)DRO`c86RaC#!1j7vSJ)NW{8 ^/2 ̔B%6gj GGwn!?i.(ǁ9I<'H4v] vÐ֜)xtZdXJ 1>ĐXG`M_ojin |oQ]q$5q}'2/{5fvl.w UEpLI_Ե&0[50?e'rfA< d'a<rpbڿmz7([j}:Tbi^hYgʥr]eN=o%":38n8C8WB62aLnJP/rs14Xi _U"Nh)0Qnq]({2|ׇb] d^ԣM1)-Ai/ #ffŜa Z"8N:xؽZ4OlQl0bf@3+'ѕZxoBsqAx)%x@Cc:A>ɷ 3/bYYMO W{(p;e}JQsF?$.zTMwmK.x':e{ޖ*V?^Es~56ws~?'~I^"n}eGBcovyjxkefL;[ZNhR {kCȊL3@dZ{lj6Z!GQ@+lQAOIz{axu$ė*5ʞz(] elml`c1Y6o$\}JqTJXf'ѯ5, [X2—}>#V?<~իSiU|Ѵie"hFE[o)}ѐcĤ!Cwȉs tJڷN_6{0w+cQms]ᥱEK(r Tq}0[t -:2@),z`QN&<pzg?_Udcw/A*-A\P0Ŭ3R\FT-)a0FYM-590qJG|gY&':AKb{%_a8oͼPֹϮlbT-r{r!=(jHyzjuvEG>Yet[IXNʳH>xԓLs{, H4E"yT18m4˙-Q Hd'DM;9u;éz؅nͯl^wς;/ۻ`+TNL8e©`h6;F͖9^fV5& kߤ~!/'8}Q}u/[ MR":dZ#hf2_@Uꇝo?8";jۜ-|gk1k)QP`S7jd*'E88V_qh&1uwqZ|,6fs] 8u)uKd枘6\ʳN|? =}nm VUKY< @J Tm޺ b&U" )$qJsk.raLÛf C[>f 4֝R2~қ=o>И1s1ǖm<XʣY9/ !~_]GmĻ@,`t 6&rg]h5BZ0 !TDA)phI}WRY4qS?%^hfr^gn!$CLY{x& $TA) eX$)z {$vfl Bs I\0f~A#l9kPʑy9cU±MY#5 mS GnP$Yǧ=+NY>G ]7C\&c;\|lu*l XW΂E1VLMXdtF@XG˶ qBYۊ:UfƆIɤ/KPwcY~lk{Scv1Pђ6iWo#LG&w++`f%PVW ^cOS7Pe0Ѱ 1xt6}vH9WY/xA?DSd+:7Ls<;ϦzhOf3t\у-oPc?Y' k\ 4R_x!^\ϒ)_T̲ )AMef^Y4WIG$)F{Qu!UoQj["Id:rCZQO׺ٖ؉S#}>0> #0[}SSFmla7  c[M}+X c*iU!ٓ;=[~a~ZYǁdSA?E 1:FpMjW#ѧT ߐ݅VE~~d`J Xoqbg'7nh0ruaME3tʡ273Eerun}俅{nXO\yѧr{9G蕌XBl/a_zgWw?%U]3 927_nxdB]_ QF,ȾKXpA< >nPEL3rrMQ4ܖ#T#K^<2 |CLEr@Uuhp݁u1ogy֟Gnm ¬6QxwJ kuh)F3UfQ#B>&:?{<"gܶǐTiZͮЯ3Q3\mٸ/_<=UI#M9Z3nb^SfYx@`il 8̽[ '/?%OƟYoNsO a_" فk#nmuyjq3ߤiGOFiiƬ~F_EAzK]сҭTv_w/j"yV7wX(){<mc-ûN4+s!Mͭx![{2Owh ߊ6qL Ǭ{Q90U+8?NI Ww;{c6VnqWNA -vF$WMOtƕ"d!|_NqluF?[&-?ze%Zsʛep 2:v!1Dz^//lN^"fR0TSHzѼNZc$WaȚ*/:#2#P}z.˝ORo?^0prdo sVE+&wPouOf9 GBڕ-,H(_sdk˜Q+&i5BU$Dqq|љYHaHqjj6΢ <(ߗUO9}2踨ik ,٥xib[r2Iiix0lNK:^雹pn}M0;.SOpoVx܉WgQˆ6 JQhk=Rd4 CX-%}C%r7USȂsΕ>*fmsF>4wmE{h="4A3kZSg(]6+XJ"^D;Ŏ"(k'nboa.=W=A?@TP2z*G)1Ikud¶ qɂڥh6uJYs՛wqMó*/9OZdxKt) ^Ne\b`C!Y '0DDšl^6;C^;+PJ3-0& vU kߦ:o꣱TíxeyAjo`lb ,@sUӋOvGӌΨkW}C\>Z "gJxs2aOT !ଥh(X<=»nDkqz4#*~p%{a W=oBI]t+$n=FEc?&m 2\Df]W Q h8lVC9>V5jELWs5HtG_ÉkzNj!i&.6`J iC ~ψ vd[iR~:fc}tU~fg CTs.ٖ>Pr v"?,!%. ЭQM)+.(c8 jl a,dn{Įڀ5@5:N//"^灴ft_)ߘyfv-Pi:K}`:gu<2.tWxމpq1=ILL]$}g懛K>OYsΠW2Ы%! l*MI )Q3ptF BQqt=u2IQ 5 pKH 3/TQ|^rQu<"߷~`I~&ƒ?Ȕ+G~nDu2L 8EO^Q,Ly㟻 n(G<>jx*Xֆrqsy^~Ij,2_R!_[?EBIP+l _$[:%Sh Fp +bJ||V yϴG|f&Iv:T8ԉy{zbmX8Ȼ ZYPeQk 2u[vq}YuuȪvNQWmF jJjp4yR[w 9PPq8ncI icV"hXu/vXh$5&nEnq+714 Ta>^]V& 3S4ҹp8NE m:)1P/-LU_f*L_3#f^#\:W/a}2wUp ƨ֬]!hj1=4N#sܵ'+hSB w,wM"P05c˵џ}=/bjs}$hP}AH}E'60f_,dHGv16v''f='˳R`(vf@b\!~^c+ѭ8~a,u򬓢$S F!*P<`=K I\!{'_7A ~'՞w9ˇBP@Fuѫ;h<.\1s"3Xȷr\qǽ<(F6ۚ1Ӽ;]t7'~,cP >HZÌ;ϵqykySrvߺe}E_ʥ,P4H3:l̳'wܜE#Qou10LXjIßՊz̉&7ػꍧ$zSq.ZL>Q6,l52O?|pȮ[P*W}}s+tEUvOߡ\=x>i,񾹄HydC|J8a"nP,+n'tE,%Q0lvmO+z6 n~_

      n͛RP,X\f(NZ}X< >칋!@P./{N :G!asX"خxɶ~[JlE#du:hsKVTt٣`]TeB/'"ӀN5F@:dGtNښv< [ԴLpoYA)9䱹N*|SBnńՕ3*!V]SI,/5}cH,dϡks9=Lhm4JaP ZaIƗ@6v~ƽιz5#N/2+x(YCsQq\”_%1"aGnJVu+EF ^ U+?Eَ0k`ja~^xR.P^ϊWSe _N$|EKé _{ )'Q~|W0CRJf,ר5oP5D5S-Lɹa1"TwX@D &ko֪S/J}7 ƴt6]0%&Ϝi,qL1A EΉ%E*_#эxU L :ʯ9jD޿ r g{k(3}c`"#%\v՗k͚,&?)h̠ GWkc4U, Pqk\zjrHId!ew:9^eP4jZfo4[GYqaȮ hdP`1]p,1 ydH?_v2pB@"+!͛g:ped£FXSJO qR],'zC?/_1m*" 9c;_$aހWP9EaftC=RL6KDउ_P8Y1T4>e)x~jyK=dYT.v\V3T_z`y^ԿB/fSlf/"҈^J:)qƽfL b@R2]]<&`we2n31eUEᕧRP9u]iPV? UMj]Դ|yŸnb7;oO{mTt9#E|jZ^ٚ1W|46ШjjnqNʼMF[Dsw_ܼUUyױ0u{@ jn9c/ӔZ~w2h3+:`hO@H~}űd5O /]=cx/7GRߪgMGxRl%Qn_>jd !cЕ/ 13uqI*)/g>C?(KrW6Y*% !N_ݜ/\[jNY }ؔ{W4i's?{ju)#uiB GE##}`;q{e ̝Uº^ƿ5+WFX߾-NffW1ޣߤr&m:79JqLjdgNP i/J+E_F&, ]pZ%|XcوPَ 1l + IY#^V8n :ژ}$Qqּ𘻅J&g- a'4ԯMQ=%DeY=@h₼q{z /R.x\uxMg]ob퐚gybqri[tm&:gO 1c>鼈Z6)rx#W3`k;=83j2kZHn4Գ&\W48%@;Ųth0§8N%/oFjhϬ]\W \4>f'?OUcuJ(}Bu,4iQ73th_UPmbZGϟ9HwՑ9TvN^V!ZXįې(Ui)JtwD "f,M^VچSS9?=>$ ;&M^1ZR/.쐷pXcV~Bu$3k{-?{U7(NZ*Ïjt40E7U}Rw;#2ɛ}z,*ZDp-;7JVW uE-{!jKn}Nl2½F1C+و/wCSW[d !b A{1T_Uejd^&P^O֌&.lz3/uv(xb.U61 ekʜ1OO;!S*P1)s^HdO+c8ȭ~$qgpqrl(NpQEj]Ӿ}[VGX YDy/+e bwR/7س5D ŝ dNGg(J'_<ӥ$ŪZAu s&_`sTM,YJ]Y4[fxxsbߑ\{K%ᶽX?EOt J""RE-hwxs "i.щEKAԛN{|$#aP#ȶ]1f,١Od VzG &K^/blx /qlquw'@VpB1-^XSk g^Zu4&,mTu\:uBzwܒʭDB]fh&uk=4nv)f, wiDfu|Q,G% x ꥖i>=6΅6ɟ%wB+~#L;AHMk nR^GgA*>iK"Wq>&bdZm sjDV3c}QV+O67B"gP =J!}t vF(;'eAƜY̞;ru+Jq-5!E]/\2q6n,ɾ}ѿu1z[!a#ߨ查T |oG?FF3$hL-_¨lbSQn{ZS0rA94wNUgkT7aB i]y oyݎYt85#‹h+_Fa;9į[ 7i-)'?R0P_{f-h^ŏrHe>`>CǷl&;`'lBf"U=π fz44>߼'Pr[qQմUzaِ1α r43 $#ҰBѓϘzia#Eki#kC%_Z`É>_ttbCx5ڐBsDkYn^薳^HLQ++l^}jG DBb=,;ڠ)g9;BWȄ_awX؄0DDU"}n_oVC-~O>h`]+z{B6T[Ȍ֨=g0l{?!ckY-1Ҁڥa +W@=$~ܛX @ֶ\/2{AUhOabp.G15nW;s>U8{AkY,kR-񋙁ȧP1;R>XF+7f5MgxZR@J,ũi C z|AU$%ئ jћOgf0\T`px-=0O1Eo=#aydIehf%)>P]58D턨܎#u7bFZ~moUU;lMsPQ ~sf={>Yo1 ݬ>A0FrT9PT1g;a 3PtKSքYkd&)1\H'n.59c]#g*0w(*y?0W*I1k " t{巴oYD;-~Knw)FL:3ێ ujq0^BKHTs7BF%,TP)% 8dj~"Q./Em" As ![jr$/֏Rz^b[eUV.fӚP3/`⦬5k36x~km I0]F߂*^_PWN! :XWˬVHS~ -g#$FoC>D ғoOYȆ{ݐW }6yJ |?5`ʎK5Z4D25Yɪspe :`чb3)kK d~BƗQT iဘK{rWYo6ֹث͵.rm: fX!Hh/޿t?$fg!==MxqJy#O!îR"yu٭4{~G;W*;6@]*%Scw 8L#Yo 'Ĉ*~΄#$IO'Nm$tAeV_/ml r/]rެ?wElrek+ƏQWV; L*Yn1l:p)?,c,)&a;]OQƽvs5%qf<)ݘj"o^Vqm@٥\XXc#5̓e>؋N 2pZ T~٧fp>ev%Am[Q8?r"ɲX:;y;ڞ@ (Oܴ!v/TUw 8?Ɩh(daa#:Cˌ*53 qtc!@MOg_\aRx^M?:61LUc&-Ab"p5RbO{Ƞu t8 aR9cHAOBfnUH ULL-h88J~'c1|s &A{KMaYvÀoFqԪzpAh/`䖮ȷ!,PEyO;_^ ύм]M?$ Kp+Loƽrn~Z_$Aߌ0nE"oBEuqD=Ty }G]lYX)i*^SY[!VՄ M;:i yurfeĮ>!xh{+z=->}븏:/Ok Ugf,4Ĭ @ |3;*YwI}{#dW dNhcӤ{jmL4 (@4l QP4% e2zֳMرU<|lw>oӱ3{Nlj^)hfWwmG5u` R> 4YP Wm,M]{bhκEҙ JW`z©} ݔpdҲ}b$Syk79Jvęn%I*&(HTB~&Bo^<\,Db&) c:+pQ]\^',I5x/1$rY(7ƥQN\ĒY0+n^BB2仗P!N$_BbWQKs6GilRkbQܩV-V>DŽv '3[X'cz}WK諻dt< IZ;*LP`3>E"+87绰۪wP"**c(>%^Mѵf̛:SlŔLuMAYPuUHvԐ0/.Ndw )&Bw5;\%wBkE_uCMKak: U7jhcsy&iwVCr @Vqc@I/eH5EA?dNw^#IxdFt95,=x,ȏOo|A(s6@T_Ӿu(47~8]J[H&1$+ţ0 9 Odfmpe9cf-2M /K$PF{CJ#a* *ݱd rG y8$C_G66/hXmo6hⵑJA1Qj[LI~F"ub%#Duj~J)5"K& N򷖋?<b}{UrjUrj/3?dv1]s"l3SD%3+b=f ~.XrKP"=P9\,#{W/-2 H,e4WW)¯{KFpSѧ)h _l`.IIWE;H7G~ X#WF-Yq%6p&Ƌ7䡭,}Z7ZQ Kiha53HʱAS;J"ь.s@ ʼnwB|7'uJ31ֲ/.,T Hg'ȮZ m.RhsPp ݲ[1%EkqX׆=r 5uo &}"dZA9hյ>G_K"b[ kA}6$w'hMp%9ZoF5 xxT]0+CD1o{1˝H]6fNd(eUƢ 1{<B[RIhQ6y%_?^M( 0no+/"rco\_pwh]#E t*e8dӬ =neOvZI "Q!~enq`x7nTs_Pg]7K7S7?NWTIl /q0/߃[\GpR"]P9>VťA0XB2 Ôfx=I:a&HaǏ49k%=fk0^4svq hnBpÒtsduF5 "ɒ6؁kmJ6ڀJw1hN-v֝~a)݀2+bƘfEfFЊ>`9yA!^E t9aޔߋ>Rnt|R.e! ( b+5m]RNN' 9o0ZYh닏[% "7\{!~Oh͝% ~ж(YNtFO$(DT+gZ]< q!{,\\r: ~3"ijGR#Y6I1@z&i 82jf"Fn ߜt1}k(p?. .^yCDTe?&^xd)}Ɣ g6rk!t$*J&izͫ x>N][_Uz m  n29] ޠL v$Z/f*;J c6x4Zh̸].B`6)4B0,+V$:Cu݋9Vv-ˣ/#QbڈP.'#!ϏŎ/=j1躞ug#l]-YclEf.%{.Y x{}̳"l%9[1)OqpOޘFeRS'Y3nNd8+zX(T(xEĶ΅I0~Ԙgb} hJrwចe;1᎘Y'Yᦈ g%d!Kp@]]݃5K1FN'FW?t4KC+FOh7}p1P=XyKbqF‘,Mqxz k4 ܟhd?u$KKee([qVB(ʅA}kl T#JT}XLv@ K7vg5|rh.]S->e} ]_?c[Pz9_KZg/]WG'`E:NZ䀮c֮ ؟QmNeruP Qm@YSG OI8hXYI|0X}BKBz`U$ɷ.dUٛk. K"Z ]ۧ!T&]ܘr_ E%ΎeGz`:/4ݨw1S:tWڻȁUCC@0RVG/{9H幖vB}:wY2L研)Zz]H)I-o@TӜ"0 WPȈ m۾{,VK<+3Ali1/`ފK9ԘG> o\C1ts MT!#?CВ#ǞKi 't"AMehX7ig$9i${ޕZ, P%.uz&o*9Ϯ6g-93JJ\ v56 Lo=s8  sl{rObj`8/ɤJINmo8ս"f TME۾/!G1봔&揫\WZt z^Jg;3s0=F2쵑Ciem\fV\ P$J6S0UN epT^" (Wq鏵σ+b5iͲK<>mCsALiGM qtp '86#ְyK2ayX^k.`3bF%hW, :f 0Jw`٦xXڼ~Q+z.'vjE%?*P7,rwa@6h\}G+n6Rlv:bXec&%x mŐlIl<=0&o#ok/a-,O"BId*;hZő0*o䪗~b<"Y!&P;YQ 6|9QO VȎLи_L0&:`ÐRC*5!` %.ʧϳ0LC/04y#6]UR~\y9$Ҁۏ}Ņ_:#϶MNTj?g%&mdi/OOf$OwNu6JĤ 8м ȇX|js+c&Q0z( (37;, 㬘,`QvxL-)N׳q`ҿg(3tq K }b#C{~>=JNTCWɡ8h 4d*k%|4̘k S,E6ekGQa{b{C(A-?}*-ftM?CuPfҲyb-%ȳd8^ KuD<./c$d4V,S5K)BA& nUH\v[!$0Q-WydW[Rŕ;e^tC\]YK.ٜ1i6=b2$$.js݂=8ǟFcj֑ _s hUiC;1g+=yqU14itFp^ܜYp֟-ivv/]wkP5*g#n̵\ >0."`5FV, O'9uc莑J;ݓ7.jn\l#$6G$KwxgA\8-^Kƪ 0qU24AmwntH !"˹8VHWγ4_q><$B_&%rf Vkׅ#6{R!srbF-fm3C;eWjw}I> ln\^sئ0%}FM_"J5^4p*W#zCV6Ů:cs5X 3hϛuG=9\VRi,k/)^ԡJ={w'٣0`;AТ'f [̉1X' ;^/M!#8l1u$U|D w[3NIaMR©./:!]A&VFE.ږoI  t8bYǹT?Y ChSPSdӎwSN%ȝMRWUMdYj4QƁevBCUSL 5BH;+*Ё8Pan{^9A6!0Tpx(Y!o焨<)fQ ho74%8l(ߌt&lXEUQu8뮚]Aezw<C;e9#Js'y`BAp CC~ *;>[$uC =% 2Qc/%R E -pUG9F'Ĕ ,T4oӎB"v=KeȱcTd]3^f~;DTyӯ,eaqΝ曓 zB1ut$.C1#sءvrIJå1EDB('O=~]I?4 ZHt c~۸Q*!Zу EƧGjaGхYzZzH jG-u\5l.W}LЄ;?2gר*}K"aeYS;GN5\ޞ{{yqe( h`l!EoN!΅0*.S] KEq5$gϑlAtaZ}qS5F ,8'jm;I*6SE^8=Mzcoq,g7 zSہ 3jC,;&1-V= ɊΟJ[ K ;̓@Oq$5od,TDJGIaL>U1e,"m_@փ\r&y0^˼AˁuMPToQR${ }[o߄@Ds;ƙU=#x6 #y>G2 ~5 W/W Oj1|YM :0t :!> @>qiE,V蕷cah__nP=Aߩ.10ظHS<1!EU1i0OEXCvL7+vnTPϒKOT)CmuocNdG{IdiE@UjKPu4+g`EM6'ـoEl-h~ϓ)D l<rMJ2wjnW_tJߜ4M Ƽ~9=Vc|PxFF)̗x[>>Oy9E ƅxzH푌 }ԨXӂͣzx1g )TM)xGDKfY7׻v&GֺPo%0EM8AT5w;V}Ӳ97ߦsp⩝uU?oTYS;A1vCm<NϧoWGG~NѾ!3(G`W%/_[jnaJtD wx٘ɾ(˂R+=ښ>@]Ļ@0Z}9\WD5#Dan+x ˫^&y$ Z,3̭P3  ʋ#:s3@T^tA/u#ڴ'eT5^0Vѥ \d>bKhb^< f6u3T5 Y ƁDsI 4-s]jM #V-c悅"93QO%bp~w/H]kSRS{TT.cPPcOι9ғr~rOl,E0s H6K78|0˜}qЦn@[WI#X{Rwd7SaA \cPf]:Z kwtEL=3m^~L-♆N.NGl Y Q@Sfy])Õs^LZwk.+4zz-/-lw/Œ3umvq,H!'2HM m^0,|>ͬh/&Vn~o2d? ׯFê)s*h8V'$\2VHܘ8$u%7gb 1UL1d.[&aW?y|$LOjiA%ڄA`xSTy&&'K喑͝;D '5Af+MFSv?yY C8 &K8/ H2=Cdbc7LF^O{4zIS w,*nQD ԙem7Z8\[<1_?JhFoacy{!iwI=LYB 2qN ܥU_/}_,O+M=B7/bĚo=FTCȒFYޖ1m0X^>86yl f$&;I]L=(k~tͰ|!҂kVٽkZˎe W7'MQFB5~&aXW]Z5h;bbB@ńi g5TرJ/>gJeX9Rºܧ7H7jJrhyIh} >2npRRi./%_kI_vU{ع|Ԓ?=+T)4#ZGXc.Y ;A',y6hsZ5gMXRRw0z]fpd:iDc۫h{/ss3ws riT4Nk!f[m `JY1]U\ʘJhN 4Qɷ:%;NB/C /'GGER%;R#+;LE'A:7&c]"4,\ t_qLUm|3;-&nU"[,F5jK-EI8DA7T4j}b7aNU#Ut r0 /&4q'0%1lG^@wƃ <% +ĦSUb(7jjCBDKk=1B$, :Y &tsJ^nm(./ykERu'aоnELb8>G򪊰7@M݄nЊg~4.`r4]ɓ[HAfi|hVAk~y88i )sŤ73{l ,<͟JS-g'Ěe+;!v|7[G3JU4]:>Oc&9Y͂,Wk">0_o c[2+P 'zI6"CD`Z"ԴhII⢲w`',g=İ}u|3.X `UMm>BϜ^u+Q[ r|ѝ'KHRf"%qI/vtivUC|fk@A<Z"ԓ *F)x}a6|Y@~T/ Os<>D 3!V݆ jyTﳬ;͍cYBl^H>δ5 = Ou`WԃZg6+566tDwt>i ܦ5&Oכ )<!]K!J B!^ &r8Rд ~q 9#37Ħ^Db-[kOѫ4_W44RWusQƕ7eZ<ݞ"|z }4!%<[nk{^yַ~[ aߦtV"RNQ !|ߒQZ;NaG9+PX ƔZ awX`o+2F!]27>hM}#R8eqˀY%M Fɺuq,Z0 V,pknM tpn^yArЌK'O] ȻxbU0#rMˮryp2>K(qE'^'¢+=uK>Fp'A&!Qę }d~PC,/?%!Ύ-#'<\Q)&yg9~$m^81'I";:u~3%ߥN*rEW7V\C:9]ہbM5[!l3n#bRzPvsA*'@V=T?ɚF>݈+·wTi:*zCF*$ ^+9=$!šw=qONUl[[,PE# OcE'l?Ig?rJja~9: x zpGB *_ί1cQ.T&PE 1BF[ !͌<5Mfs^ >%iʛ2N!~PtdJCKA4#%qפD/햢#ٯEt\gǺ ` h L!X|I$tng9BnXAeܭ)h?Vj棠IRE]_4bMB w ><}UAӖm4M REv e[Kj$)G $}=(i?rq&1\8wټ:V5{Kav.F.L숐k-ܶio)k?!v2M#I=*rˏ=%s 2ibhMAovsG;dhG%.$oAyH5'˻oraki.3 'ǒ}h)?poviXwB?E@D:/'a=c oFީ HCI% Éݳ0KƆ.&~ϑ=%[R rH!+ ޔכPL]-pĠ;wyӜ;9.HѬlm+ggzV:ÖLI(Z\)L|{>UbP&t )=O}4\74b6}9&?//1,Uߗ6`xeo7?5M`RdE{Xq/t +Z$HmC)l?nJoZ82 _N k*s1Ͳޟ,Rg,8@bq)yp!Hp)ٕZ%)^d V%E,P4 1)QJ?P["=F1!ֽ<z#oQsvmom/CJr/$]uio_b&<)|?!{([ӝL?+K?zb릗oS~OG}n酌;Y4)SK GPr4")) ܤs!=R刴[ԖXAbltbym𘞥}]E}&VO|aC$]XMkplWoiHÀ4"{^UۡʤDią%+Y7J t?T+UƽVf=Td!iF|CVfV@X͂Pvzjg(lAC]%'#;Yf"9EAMLL 0 pXG/ՕLEwǿ'( FiHI%aXm%~ʼnUVf@l>>jznka^-F;y~m_F: ,oGJʮ[T&R \rm(Lz,U؈M pCN ={Eތh]E&䀴+4鼶$QnA鮵d0 *nꘖUH 0ǰgT6e*h%Թe?Wu\ ON]`LoXE`!_(j1*8;A`p߳EvEވn6XSI9}x(, jX8`P? =,]'^NbbL^k)}xʧSZh&^S:O.g% J|-Rm }Y~6^ 7ХwUML>$@2;.<$Rvh $&7)w+9t xϞ.옱Hux`!j>ltqAߑ?f㏽9YR6[iueCTP=~`D/ЊT3)\PdTؾj+Ɛ= sk4" >!Z_\dJw#4\NDǍ,*1q1NG-M-sP#x}Jی8GDXG޼>nE畆P[|YusX4D) 'R45aq'F4>8ǪAA$g*; fk C5j A;}َ"^s"tx4 olG|Lc{lH;:KExS'LD*v_qPj6"i*=s)>(WuDfvD6\~K}rY<%s |kr-@e1a8y*D#-h?ӽ⇊$-q!m6CB{T6R#v ?t SF!)卩Mf)tOM3)36]SNO,ST2&l_6"eUD_}ePԖoL7 x urǖ7Z-u!&Bݩ$8wMra"v)VL˙J 5eV!&TN|Jͪ$.nԔ0I@:0n [/ka+@Du8To e7j ]r锃ogs'!nPh KP rZ3fbԸ ^AQ:y.q)ϱXffWK+Bl2ԆW>W2gc_N@JP8c`YM{NYtB'e^穵G $U{ o p&& @W}VĂz)rcSӷ{j"?dwݲ7SЍFP $Ոì2"~'+0B2[^;<9x(ha`TxQCCgw٥icy=_m멵i8[.\'eO<KWWć{X#ࢎM#?7us痮i'owhcTV7B](p>I<؏\$d'^<^-Pc2/φs>KoARغ'-T0T^edsbKHbNUy_zoZەVXn4&r +֒9"/j'{cQfLvz!+MW>u?bo( EX&HNB6lUt%_o/{DEr@ʱVTVz1V٥]Kn*3͏u#Ecd#"TV#MlD5tMݺ.{J ɞYvoOmteG鵸M>yԄ7E0*0N Dط^r5\eN;1C1}oiͱȳshTR OFFRZ{zgd'Y;iz@[dQ0o EU`צz&+, D4s~-?W`?JΓ F&AiaH q& hf[M֙M9$Trs6_3rS2*O/a r1 )o鄞.k-PgUЋ 9<<R=:k &$y0Ojb QzFa :e^H~#;}:j↍š1MMkߩ[ lH+F)A)1[O-1s+5T.=$6P_?a-b?<ҙnF[f # kf͖ E|G,"s]6(KH@un 8gBU!^ħܽs<71*\lIqcῩW{uku08[R}oɝ2(t2}2 z |Z:p塵Eq;N'LFi`*-,|R>7|+Bԅ'}8.q05/M jU1 _%[*zt ,^11Ͽd-E?L&|kmM 8 7bp})mWr8$ r~`oM7q1?+0(UgDsv݀?wL5‚q4/3K#%E|6h薐!=#4Q d<[`qB!ҋ&2E( ~a;@B&+I4A~C}|?V {qCZ #?^JH)=j/A;b ؍ir=m܌mzT<ѩ#vWZevPQQ&8!^dy9Ihsj,KђJsyu };1\n/ Fiѳ9ξC-ǚ0(J|c>i8Ff9`^"?:kPJޅ*j6ܸن|)IYZ/?ǓV>wi r[`,a¹U妭 bc#=?1=r-4!HŸޭi;yfVc/"\&bsw)]n$CE4*BZQ wgY_MKըGF5*` &Z%cml+GxޔN~_p/y95XCZ\o (*ChW _=n0684BJƨ nIbAm,FMyGvO;fYa S6B;و-wLY,AHa+.:Ӂ'xǾu[cφm- F/ 8k!XYwS\G2G'07տĂAILꨬXS1ĝBiО(Ƶbr-"X1Xhx*unI3t="-W)NPH "|/jQ% W/ Tʑg?BM|RH*C ۓO`e)-Z!so?ڲGd\.Z>ˆ:fYR勳' ~80icqc˛\MOUȗcyvqihvO <R>0%j=ȷRr.!B[Ý/ʏ3|@R ΃9mBtF[WB򾿳#taPe†V)K*3jb Awm'*na bE/˛vT̥@ 3A/Z"*T{{a] %j u$,^Zx#(^7ZWŐg/X= J[5_z*{0#z7uSNHF7)eWT4'Κ'2 ILo+<ƹh 6˷TbJDD4^'ZC_q63:6u4ngZp}Ig6!2/_p1dpwn]p=ӊV嶫)x7f5>g@{Fx99y4Y>g'U39 i-iIasMz)B*nn7:*?6ǐFI,PnjP4Оc<@ O}&}OlGwoݜduoEah뫀Ft*b[i+- "cɽ7lZzG{ (NJl$yv3۱D<Ώ>ng)0j(_ic9%5:WrXc .M/t0Ѐh7 c_|QD8J?o㡣l[Sg,+? x9Ƣ0>K|XG}`9iv] I(Qt <le6/IqZ:Z[+v4;drE*Ģ5";ükM? Yb?w5"}q53fZiR4,ei4#W0=贗 |'NF-|+=.!plHނ@"%hps-FVBlmh@#6nIyE j_tpj2qE~h@/QPqq0OHntЯKˣj瑯zsnqX ̾+u q-izd6.ҺF zR`pߨVdv5Â#ϗ֝@7> r2 @ (p~څE(wT`'ur,DR9/kV5 6EtґF@k$^`1[8O $c2n @ǃ33%p12Kn{}lQ]doTLC2sۂ/$Ch2QOhݾSk/ k0):H*k[CˆIR)T+󥨏&ghK1(!TG|2C"4p`Mb/(P:yWZyP`LFaQVJΉY9PPZGubTm\(wQgUe|ݰ@tpp|"㰉 MdG\7)~-Υo$ϡ!WdcNQe_$CjE̒VB;=cۛLsҏ`H 7ɾnQAѵT%߭lcHRBP ilՠ |GG1$RsN[G%e<QNȓlFFHr9KpP3{Pzվؙ1"*UA/Vmal4)Έܗmgo5u#;,f9v*pFm~M'c%Wqi5dJ<X'Z|S6KT%y 6̆f[}^ ^ tO o>i2Jbxk@)kP} z4< wTInn4Br#f鳳;?H|\}ISA"hƯRF"3-lMg2z* GI^JNfSmGS\- ԁ q1Չ͝ - ]|7hҮʺ,Gʈ>~OH-Mt[2S&aW@*[=ᅴs ov@g:jGw)2%inG¬`LSŮ)جY;cyѶC$65'h十)&d'hZq(b 2O Eb]:rjՋHy[ÆIUΦH*sX.MTЅNrϦE?)PY=|68D"G~ bYt։짷z Sϵ+e9Bbʻ= Q8GW%7e/=6F׬٪aH:x"78!|z=w$6aw>X qƍL0 Ne^pT1~?Me{<dM=6é4,e'Ho䞠<cMO YsyrLOi6fr3z;𺦟d(npZ#8UfZa5Qݨ^;"f~ * yu8+O^5VJ9b(\ 'v4qװB7E b~ ( -$ZMAF-g!%RBɭHk#_^RƲh6rkte ҆yC7*eF'm_D0mRZ8*S !kt+%\. u=߆tsSHg !Z頺 i&&\IAG3  z~ xx")HFe9}3:iygrBɳ?䒰~q&CK_`v =JusaNUw"kpjY_F*3(5hZKt#߈䢔NťTv]̻֜26z5{#-3+AiCgАI{;e' ^ hq"li}>+ yt*4{;* AdV~ﶅ:9!sneW')3D@U#*c>ŞPڵ8o7o <5d?8߻:pOV}TZq!K[] D0Jc/;9LugQC[e)a]}рR ׃S >qo䈙]O 䳻#9qn|_ V w%qKKVV ٝQ-kve߭X'Qjn_o1)`kM"L3*aW<Ķ4FqK P 'BHs+rwXtb#yFg\ ʍk+H=`>#5gCxwNsj$tlJD2L9>}:H_fa,ݎ{/)>u|AoZEݲ"')ktq}l?>5a9HGH^l4җၟ4ս>?2,I2Z2hAB^X Y`19Tگ@㮿7RCoi!c{/q&! fsa>r@9Wj.5۶F%)M _YdMՒX.̙FpdMeRꏥRcX펅7W&5[r=7q9" "*c9Ca<=e(種iLη~'޺@{u8 kP5‘(57IۍdQqU Q9]n /^ߝ[ޑ۞QO[Px$y|4Vb[&DsuR(<'SOH f^W\YԿ1U0T2Hr!tp\JS4u>ڠ]Iܯ,{%_ꢎe|^r$k&_Iz If%XqX ,m=2*+qn[D`W0Sծ0\|G>Esߜj\&Ӿ{8 Kx hΣFp ns4.Ҩj,X[P;-LwhH$7#d{WšXAʚpE[NAdXl"7㈡3B#7T#4uNzaFEdxnItg,b֭9=ܦA#TN@ Bk1U\91&CT@ٖ'5ɀ!H.F/*z7ٽKwWK!`$|Kmc)Hڳ$xwo8\7~6Rf$BIMu}O\R&<-`g/+Ҙ4"7-[sOτ7nLlSu'G ,D(&3l@啦Ig2fzn*;ِvpˮG/EW2)xېBFhr z8TҪ3<]P7x*v ZHӫDuc16im Z:p ьK;` X|  ǽ-3^sAzѹB(HR3&?h,([~J /WҼ6K ej Lq[Ξ ӫ) v,@yĩR2m`Q({~U8UNmEHL?qW)7ߪ&(StPײ]taBrYoҒd*,UaRQcH^N<^J4| D?xrpm:9jqH%St6gC{O 'd:Rv DIN{23pmUHnº>D诂jf5>}~) j+OuUJ| h1q4mEjPT8ݍBb%Y@Sj&C>Hs,'L d =SwBSl+jH{:!4lɤՇ1zƒm0=: /eMTr:DsG?vfkH6~J#碯&uk FwjʖG;\Eo:o!s,}Ub 66a*}8呯b xe7&v7aJ"i?ii' ٧ڐڒ@X Ÿ*g7Q`viyy˛ vGjޑcԁ\}r桇<@%qOQbֲL1B/tjp8,{tW4`iN#"cC+RS9=mx-@mnѡ:+Y[P6nJHCiQLh0Glڥ̪)/FG`XɵccxR8A<]Xs@5/+9} ;k#H[,q zR{O> =qL\`lDp6Ii0w${>7 RZ--iFG%_z1.O?a,dO5'wA5%䄡O sv\w#np?"iO\% ؗp'a ~/{*x2>gdGtN7!3md5cT 3fmU:N..ӹ3>3JҞ!&}TFi1tpްaJO0iI8am==a%Ѿ {J8Gy8/DBpݷ =x+"{1Q(bM .:?y+_UG8X}ոVNn<]Fy䔑y]v~[wjX9g[ѾJi,ꙅwJI+hV-!=~[|Sj9 <x3Z;}j^\ITJi1tĕ^t:{Y3[&I]ߣV'0Quk D(0c rn"zK rm߼UyS-\N2gRҐBiFPHDbUJ̦%iKpx5Pfibe{#o 3A?U; εD2cxA!)V́Sʜ tv HerK51}heRߊǺdB{&.+W\:_'TA9yiر(* Oz5e~xqh:El ٻG QgNk d0b7kF*`"J2YjdK•Y#Nr*g'i4NAaGg27Dϛ 'ЌlJK Y&ȶwhpb|K ZuG8>I5bH=jbCaFc\CE\Xm R@uSǩ9;{8hق*`[SQ&ܤ9m c`ւ_ʛԇɄƸ2Ggus©@8"W 9ףdhʑcH+^{8S1wBiꥻj uFבlDqn6EL+>EkWH!au7K41DO,Dӵl""<6Sbi)WA!%+PqCKy-yHʆ]!;y3޴V'Ojދ4K5zJ8{&OȢZDypss/D2u{NV e# (ϖ }f $Iptԍ$hXWJA˄6 ĴYҧ[obek_gcywvӸNY Q)2l?[ڍ Z'hMڶk(h+ ~3ΫJ.6U {?',CWC5l Z\zS'/?Vd R_0⒴Cߥ4,ӄ҅^d/ lE-WB*Tk)mtsm\\bGG=͐@+rs[jYrnB<])X`eT Wb#8а#KpWoӫo?i3VW9zIri\Q!2>) #`0}+Ih$BEe_d}?ʲtprpx]93yյoEAn4EeګV'hVD5?OA0_^q\lBTtw-Wo-;y%_*rU,GshZ Ƚ7h4l^4VA9L{<./~ d̈́8ePui<x? aNލI+ar*NjOw<-?Șgho2<˸YšL9PB(MD gQ,5lފ-q'-F RnhtNDŽ5(Ը%XF^hO&ihDC7^6VR|"wFe6#̞:^.yO(lP{_$ PMfqb LjJ%>Tq ë Z6,PK  alI|5u.Q,=@ 8(G|6aLt'c7.{$?2;/紳vS^SkykCNc4ucf/5g$*lt2tɠxg2Z]#GU!$%榶!(g#5z|r=+gx?[- ^@Xϼ 63< vgftdSe@ps<-އmJÒi ^:w/sb L"&b3|tvcL3G@Țp2>0ݬ'ܑU4Y AEUX;4|RF;)_Jϙ!6ubU!Хa/ZWCY{/6lQ%^\6rBVr*\C:LXÕ98ݤrZJ=н7 ?ZAeYKGiV[j槣U?adFtIJѣv(r:RO[1Gُo|qKh>ZvP&xeZZeA/Д h1(L-ݫk%H„$ᔛ RPUtfyag5+aJH18zcG^Tc;_r#^NNZJ]?<#m7 oԉc?bljg@DX]n+Cl,68=~5MCG7oN잩S6*kP̺@ʹAz9[Tn,:c|K>yS tUtAoxӊh(iGu?j xs cjT/\FF8ϋ9E!XVW&x) xrޚ(#J eo[rzk'0>YiG: O0TQ#@2n̲Ub7fw@рϻ_UGW= OIѽї2SPRZBayB4 7J zMf:3| 61wɮ!9CfedZ>ƇvS@u`g\7K1׶e}P"~P;Fo(eI^7fD1Dl($pUs*ܣg,jodbGr<8>w6EDzT+k3->DfK:;[=+h{Pt\$y N7Hz,+w9Cɸ NRߖޤVmz5H-g;atzESWBڴ/>",PaTH'1Zi$\Q8u%l !t5^hI\Z]0+qS—ji"I=va&G c :`3ɚ>u Ȱ K$>8.+(LrXa55ĕEq5ًujR:@\ PۆK VtDTg ?cpdȆ>8[EYfe2 >r&dqig5.ߔ?KH!F̱rL{R<#`DBufPSd*U!hST@^^2:R %~Ĭ4gYD>;->t :vN- M^LC/::G6%*8Ż3",%<ԃ(9Kf%}[rONZ ,R,:D8HVm@UgJ9CYc8oB?T[Ξ>u]oV ŶڃQB7B.Ru>NPͨ|vh 3|T/o#u7±~RSmd5,V/qҪ|p#Pݐq-UJcg@Njat+=}iS>r|l7Lsu]oV | ѵ;r"B}geQ TE;iQ)(a2i)}4Pì67+>"|2.rȌ3&Yl۹hR[ 2B=<;Y')`jyNaAk#qP̄hvh.跅>P#CacgGX<ĊM3ck!l3 "Ь+O5[lfg>H?zAŦaiEa>.msȎ4qլ$9 UmvMMB749!{D )7ZHݽ:'{Uy/_%ÌޮAlOWT{#4eo9n*͓C-O\\J"U`FDҧJ^Ӱ:;Z%⪃l<ֵƥ1Y A7@" B'&%I|$,BUХ U "%)QJ:}qQ{\ #a?P`HZu׽Ɖ<6гIECCoP{GnsWKU^ݻ4 ֩EEI-`=7VpRw>SBٞ?[ە5ObVMv,[<~*7nJ05;W2_jF{Tu#>vy&fZA{GDYC$p~KqBReVmOms:87Ƥ"æ bL_D }tP܃Z5ih J cJ:Q:EgAS>Äjdۧ޷K*F-faO&A^f :?Lx*q }4qt d7Ċև[yJ֫^WMsᓏO pVSS6էU2|c]`Y@?(^XeJ_jI[NT́.F ju&4b@B|Z@BjMuҜ 2"a`/n"1]Hϫ)iA*&[c֐cii-8gWtG ğ{$j~ְ>!#A,&̠43b 9iJsRQU)gTxL^ZaI#n*?, Fʂ7:D6kwE3a 3f""/krمO]Dk @ƒ2i/*0& zJּM@;v贪b2VHBu0˷H&}D51[VJ銠n{@`RP$M"icu1m,[mѕe})"ww&j1M !43B 얁n+f>v<k ljJYР> a K1HKސJQLx=0 gz'Y٭83RN7)b057'ϊ4L[ ,9mV^'o0[\d9R}9v 鄎-e+uBb[|B:Ewfx՘3;y@z[lQK^j"38 h5ݻj FoF *r.J^Q쓿]; ;{Whdm= kr*ܒ 7Ara.F|{@.V)B#1b"D'gwC_ry jzj;hA܋ as$ ٩"YJBgpM&|o9~Q'9=|Q9{,PV^FqaKh5S3c:y{y[Qe$Z$xspD)oOԟqlF;foGƙ\cn9G;Q3UA([qzZOU声:[H/b6!Gy#]ITVQ2?\2(!ʚXr,pXjNcY84?[Aؖ6Y=bAݜa -?la?ʉ ԕ{K:rG1`KK$}ŷj{!Q{3\XTq\TiA9|#*07zn6Ҹ`Ɩ%dmgd gj!0oJyoo;G8Qv? p4Kfx%#h$#C̞f7M %(ɏrZ\{݌O^U{ M﭂M&) ` 'ZiV>H9Z]KJT1놫bmb/Mgqg2-)r뻀T%Km|~r#h (%gʲr+HL^0S|"oHZyE-#1)Qx~X # &eӗ\ua; ifXUΨ CFB+ئCkD{%…'ptniO+ :)o?z.qlJ#%I1wљ?T"epvԄ ze29rA oҧVP29:9u\Y{=˓bjO޵,x5/ Z3(0(>n؍bѬap hAZ 6L>M(m5Yo+9JZ]}id_y* =bBwyq_JqT)]Q~9ȓ//3 ӌi͉k.aBi2TKq5u{[aXc_虳q@dYEZ ?u=6 2gNPrgڋSv_.qLÂt$- oJ=2"]oe*hI[|} yz9>ʢKV 17bY`r>e}N(@%F09n0/U׽ϟfQjjzņN S9JW\B.Vkڏ/AFz1&%QjlOzZX9rPޟbAv ٟ3";G9A>m"on=pjl$;N_jmH AI[œÛM< +"k8vLk(xtg-6cH M+x S+AP~ѩrg&g!᪜O8#Ijz@C'vSUM2O`,)3s:Fz'YO{9=tRf'ѫqJ1N FF{ 3BrwDBW-"WL Q0$;D[r#g,>#uCѹD wٽ ek3<2t}RE]X[5% 7Id O%mtXAʂO(@څh2|[c񰪇2]]:sroJq2?rx4ݚZ; ?4K _qD3!~>q|% %_42<ȍG1)\[#ܠ2i'$'O }A(ͻ=}U\1.]voq˫Q+)QՒqC1w+You2~DAL~lkfRq䷭gX.oP@7 q+Ys~ `g+poSrO! '~6`K(s:hA䠷}Exs5"[Ӑ΋ox $XIϤZx*lZ7G$ X6[ 9<,QxsI@?kQSGFN"gk6u{C=\vBdP0kaiո㖋6JMu$]x\(:2oo*yďƤHNjEdc; ݲ f'$aFW@v͘8޹0i!8u.DeJճ<{ tOx}sjc΀ck L ՛WУ.PsBʚKz=WVm/ JUFuj[^~n<>WBԶ>ŝn懛_O;T*q~XG n))Kӓ^qc..+gLtn~N߇M1H°Si2/!]wkj蹢XApāl|IseS_ТvP)(]G(nI}yh0Jw$@oU/؊%Y[o$-4su\l^R0@D"4M8i@k&疹`4Rٓw,+| &,еb%d0>*~5a?6PңA|}GTX7Sbͷ;zNѢjw^"S0/U8 <ƧRQS$gFuH@uB g1##3WC[Ȝ`&32D,Vˈ6HȬ_7v6Z f2e՞VBs'nk5tkdYW!s [Nl3TnĶlr4Fu?C9aZtrZhC!MyJm4/ჯ;ʂwfio)Y1rVt^pQZ uC:\^?W)Fݖ詤e41,hEAdVR*+S ><C잵[a riZ%Uͨbe;ѽj3Π79fdF;ߍ5[gU4̩txjHq8Y>?Oc^3TGL!@%7 D`xy# Ff6`0W;NÖuGIT^>,3A_ E=,GZޛ|pUny7E nVZBgÌhCp2m54pmzʓbz{5%;Ȕ_uSY7rGSX?AEsacćP8 !?n[;i[lz;Q4owouuqJ3XxT9T[ʀM|P`͉եo2 }$D 3sv8./Dx+` ävE f&p6ܕ9n^vr"Mx%v[pJ!&5Dy=vYK滣C\"kz 8uyOuI,F2[oFmQWZtۈeρn;3W$^?#'eH*fkS( Q=gQl ]Cyk5Q2W naIg w?[ߏ#eBŪiӞ9,&:f%vb]*?߯*y aʖ^Ko1F? 0+$~ԯ.ӯ)¶YΧ='i(ںn8*'Iđus6 NUЈ@P %htH'QIAjr7 ٛo Mf\6g TޝN4PT0ؑ/"*By2Wp5C]`[_EkyFaA w[[,0Q{j,ї.JS* ~W`07M٧7BÃkX2Q2Z!Qpl!?Յȩ6t՞ ZOhĴk%,iHrȑl^Y|dn?7=4W׃BfBI9qNZNj2h'23+y}_.M^iK(9!:U{M]?Ƥ"-G;J6]s9"/$)ce7iؿ>?g̓Z UpEDMRXe8Λ=<:-V y >0g_e ym] +v!-$׿TWxG3/f9A}!EKz#/Iˮe)^鷑=̂E8hcl iNAq#mM$˾&<<>؄U)|Uj$v#EiDlTzӘX>hRNk< }9zG (]۲[ڒrNȰ8m Qg\`|JQ^{-8}ۼ! !myMyBC"@QRq lQ( dC0ϋJ|j՟qR( oaD~T4z0r= -[6w.9t2exA㧦rLC>Еyy25Z$/LhIS灣6oW\,R#ڕGw瀗t兀 6(tC3ao8jl-y&C~NhX3821BDF/px;Kj34i,8*򞉚<`#;YeN+ %@n"g  z ҬHdMz CkγF2]ͻ3^6vL5``>v4CG-QSD_}d!SaG+Zv=@ $]yݵ(Hp}so[>L%I PC?pX) U&Jxx~`MEg.A.KM+<۞QF$]@hT,![XM yLjz-T 94zXZ&p|򊃙Nl*IXCg7Dc2GZG Oi7?01`a:'i'a%1<{SG/'d}kj,|h?8[ݰ?\)\O! #E ohM:JUra3g=,/Bk_ ̺''@0vˮsM*%> -t#,3" ]qu>9n$m@0v=&χp>Ie !Dz`;1"YC]ٻF]"4jutfa9~ 05T/Vuep&Fh~FM/bla*gi03釔GI9D\mbB/aC #\Bxb)=A QMO0 coo/GlD1uWpB6*cW+:/QNzGed|L+cb\cW|#=yV|zHӐkSF`Jt0{Fa2B q 27j OȺy7j8!ԃ~T򠲙2Dew&!Bpƛ Q۪l@g(^OvcXn _BELЏyN>Sml4)j)|VW~H->.n~Lps$=F@UkGf/$CWEmBD>ZNf_޶Dȿ'eXA9 yl>y}xr=Z,Г"Fp`,Ֆ-1!:C&Z`+pg3{jRcA&VǪY5M3c*Bh!d?oM/l kփeO q#Q D.?حW*4||@$]Dg>mP5>5Z(9yfhAk,MKC0rʐMU]ۖa2/W5#zM)|e23hEf&Q~ao*J;ZkESkɍ)RebX?LݚKaX" Cy(oljA~|;Tق[~ڢy)0jFU-!f+1ieo@d8SnXT :k ,D}*9_|_d`ayS9  ~s>o2 iz%&qANE/ 4@.֯߂JMYZ.l] UAcoPVQ+ @|9v=.24U];~V}lR>rD\!(In,x'2KKL\HXP;!4z~kA.8MV^NiRY| oR 3hAc""T5qӂƄ]TDw]6o;=@v8;Vu9Z/ktkdh7mw^=^qFYF ZHX 0B#C[AwDib̗t3zOW-&@iWƈw ZREϺY P﫺+$#o ^ e &d!K:J@ $/Z$G)g4 )(ʛN#iܳs4D|_K25tn 'i$b_lTfϐXxr={%:{}m(kz伞{V5PF Y j;GT"֪tx) ?W >7MǝKu3 q.P~mB*Y@x9iqc4}t"z/ ZM?Dq/~r孚~:D*!_AN" @|t+Z3=d$nCf3",wrȫy$xOFx7DQ5 s";Z sW|>M8FbOF}  qnzjpP?Ӷ1*oq8vIE?a3H`9J){(F2힬2o*-NvEN;hjrɪ#tүQ_ Ɂmdjk]Ic;۝"H\@Y7Bg {)m,FgRI9ǩY ЃMT>Ɩoj`A&9<Ϛ/0m]K^<~<#C<0ʣ=x3}\tUBӧ #6t?0!6' zox5]6GL{f# xߋ4{ ~g~Wַ, : R )TIAn&m^.T1?SL|R $~k#h8]efG5òyfBdžȅvEYfn\&\??hcy|r%;vQ:Њtͽ`|Я,Dhش/pX$1ЏIwk;fchr,zwc6ۊPlSϨl}{"l 9ȮSbE(Em<^&KCmS]MX$[4׋OhR%6JǑ+0$~nt&qt)yWh@P=,c1,]F?`2҅84@P--g?>ZL ;?ϼn.qV)ry-ڨwl'>WN8?g`_مd=3hUptZ\X!pYĬ3sRLLGOg[]XL6$U:4sTb]uTwV TZi)kH{.E\,%a.v7~xwD5GG)$s'87Z@xxg6=P9`fEn ~ ޔW|>'`Up HB1`3r{rtPeJ!/* zaP=#!_V5*5>+GF?RRsΘpS +2O T8ѹ-v> i6I!59K$ wS"ʟ;ԋ=5PPfFm-Zm\ԷdIK>^~6;nfmc6nQZ"-RЦgX#Tk?uJ~d@QHq!CY㊠_dӭu|=. C[]!3vnZ7`%@:۹%yط-=@Oη o}ްG5al}=nӻƬg\?Z@om  $T*7w@"IOaKΠ탅Ѱ8Ը紺1$*_e')‚r弌f*XBܩaHd+ /gKX3 e?Ӈӊ_RpDF?,ytݢg+kMxI[!F/Z쑲i4@W-ʶ{vKN9Sy|e^-f ZPvWM@\X5"Ⱥz?!;Ϩ\?1M5u`dXo{$k d<0.gF V$s4_kmd-A_p&N3y{/xnJ]RşO1X,&xM^PTiUb)GRiJ. `S,UqY\s hl#N0_Ǒma#q}A ,7c#u`2SB9t䠸&0-2 (Tgza72'H9Tmߐ}GK*ć;&XaH } H`V6F>. 5"\%N;2ǑU*Npy_mlw6gbv,߇+5!<- ;L/YR kiЅ&_i-^A{v #ڴb|7Zj-sA'5U5)Yŏji`W^(cOFc8`HKޣhӶ**JC|OPbQOڙX˟ˠe<ssQrb'i$*we[nc5'%K4Dz1?6b,MjLa@Ȫ\.;dLH8GW9K@]<ӏ'ڬ9PIJ)yB7\m$ޭJ { M,jQ+,){4*U q+tS6Ht})>˜t[LOMtwM` ωT"XJA^UY*ʣ)n [Ϗ(uxLIh7sHe )n&ҸF9m 'u#^UnGuK{#ato@_'9`c .FjZj {\)* Bd{{9KI:_<"ݠUܪ2$$x֜h% I<2QkI5BmirsD݄.—b ?NnK tlv\X[|yYmЦ]Xgx04~H3٠0摮vVL+lN\!@V+}py*c1ȦDӸ,{D;jUpDշPif>'j h x6.a1js>F!4~CJ4:ed)@G '!t'`XuPlH`nN*ZKV_fe!ȡvnM|8PpG[8#q"5R):aÚ w^48)v])߲ȘtCre})2͋B%,VCqe-CG/W ACq8-T,˅&a_~}  }w5\e\JtOH08JzVdpK3oGnp9{~lV܍ʜ{C!$!QbI=$N'U+dr^̨!qCJ0Sf*;Ċe4&CP{([lWyj ؜f;:D?8ټpcFKAE`ExKӽC. M*xQgbt-I̘4"u+ix]#̕z21/L@#"[(?2 S{4|'<{yHcR5Ă&ZXNHw}\G@|ژ{c|.퐺 mժ|Y\eA<2`$QvƎBK*XRvDLƒ{6DOxB2rS/'>=~"`5u|<mK:@G6I?3^wpo>T\CQ zM|-m'D}Ȯ\bHQ//w_f>_ 5T+4U ̺ڀ?̷+Y9+ *Ᾰrcxu;OBP擘AԴ;;7@tx0pc5 @Ǚn nѧ +ǽ+Ztl&K"gFr2ޱ & 5u4aKJ1Fhrج;'pjQ]K(B_nA3X^ӹt||Wq#n֦y~~9DoJ]\ve19  ;!v// ui H?JD;9:gJ V|ł4׾iQ 4t [:pԊNij-NEu!n=KdxĮ7 Cs8aTHDbQg\'/?QtOl ?Nu%M~\[IdY]<3:@4$s ɸL@bA7-I5m9|JW<>`08e܂N11DӎsejX!ih8h?hMW?,bC߇, {wp<Q2LL ½ޟK|[gC$B;ZPPJq[+xA+[yzíorJ>I'2cT= }/Ȗck2)9Y1j,G}9(ԲⶲV\$BR3|" U N|kדTMQhdXRCB[&UG=SPG_0I-7t0p|5Sgr 7s&-(e5ױ1|IXr^HoEeSqRDӨCw0e^ZP%O|="Γᦵ+Mg{X97) F릵Cmah`Cs {ZtD2#b2{.W+7#f ݋'0yXb7Yu]+Mo 6 KKF'ETZ5 jb)5[Yn\,S_'d,'zi q5҄~31VsWO>G"ؓJա hvI 'K,PW.ˏZ& ҷQ‡q%*?D!e4@XEXey?M-y P <1j3q]v;~G0=Fz<Oy@;+Vk= n g?]ĊB - U& 9~78e0qK?~~BywdBV 4#rm```c'ȡt##01gݨ]}3͚g-t4AW귣Q,Hqg90L>`n,r QWPJW :\z-P!?=H?ZY>؛ ܔ ?_'d(7(i0߭mR~X%Šk]>?pez 䕛9VfzZ-5ai}rv\Z) ZikH?ҋ/j¦>|p k;tXC+qo3wm |E(gةZµ"JꃘEL]j3an݂TXTJ|o+]|=!`޲h}k6"|k8c7keAAn.6iWCbP9G1 n92n>Mr \"8hxi ͇Auk1f E%;K8njgx BxY#'[2->7 .ZOQS"72'(ہw L5cd,7F-LK򦶪/{4=K hpfG,HF[aۃ)L @ ه{(m?LO FSI_e:%Zy0ikS9G<޴?|Ũ ϕlާDK)\5m{vssiWSIƝBj UUYX d У0%vүMqzZD Z (b1-בLVR:P8V;h$KۋJc<IPAlc;hKU#"LiZ`B֖?8^  d'0I F?wԶO&6>NΗuZ ~H#W>TK&PWqlI/r:CAſ&:n_eOPU1Jmα* Z´Y>\4&(u2v5uN/h?Z=rZU3_{8 ^k궠 #*9V =!Vv+W=APbLfM@ELZ *{AЛ0ehBOxϣGI=6&Ey&6|]-]^.1FV$_D$L&د cꦅfT@fVeq(Ǫ~'w2VmʮI[! K-q%z((_(G+ ͸>IɃ`ϛLEX!N2gBqhkMBkw2O.#!JI,?PuQ3~eiN!hxɮ.?"df .hIiEZ'a3OH+D _+Q~!cd᭸LrBO ;VAEگwbjύBrn/$M'd YZew4ϐX+E1&K'^%\}X0cT$qմ|HG C^0_q1܇Pj-'~%bq;V@mN'Y@ʩp&M ?#]U&K2~:r ]NI0YBPx7%4@fR\5Mz`-0k5A؈{~e1M(唠9 HoC8PW2q@bLMX]LӏFɌφ,`Eg<72NËbuX*$?"^@s61?xfvoKjF]aW->uPzͿkdB9Є쐯ѵfDc/aCoAS@N[R񌬵c2>Tͅ3Dž_cq;!TznRWѰf)I.jz(nֳ$a_iKHrJYBNFokȃ P(z%?S.O+ؿ'C˦6bsI FXj~$g=MՌXLXސi}T3,fZq qBp6@d@9\ta8Q2ɂ|b! 4O)BRv߆,?Pb 81mI~ZD0;&9`@ےY#YT|zMďJ׷M5]'4.rֽBO#i vLgwtENEeSw ~qLW+LnQ ' tpHXcxzeM'tN訁YldO!s8UۇBI>0!U^Ί,W\ϵ2u{g >9צnnWi̶F2JRvA5#9S?x=4sEUb? V<<or+0NlۭOpCEfզ}9 :p6'6!2ޓÁSM>m,>Q~ouuަUs'H3.)bj \FkYB5.P`;#cOc2 0I6S1IJwyXE=y'X~ԍz-sAAr) Pk=H:e(wRtVP)'RWTv<Ӿܖ,.}T?D輅=JX,A Ng[{lD4͝w /vSK6XkPpvcĒ96IoL;CL 'l, ;3B 0 LaEѾEoJL兡h.QWy̍'XPPi4[-Hpux!2I|>Dz`>Ys1Qel@F-p`)JaY)E9eD)theqDeR{q5/?AA8>V( T.m\F 0.1i`A=PK^]t$|0pi#~J=a5.ugHܡÍ޾4X9Sww[*,;ׄpd2GsJP Ɇo >﫚g@~. WZa 1,UP*;~7L!% Jh3s%)Y!T&YA [{\bU%cK؎j|TFMJug*l # lc}z=%nG$ ŋ|+ڠ߃yhCVց&!@aw9i3EH„]h50Gj##3Nĵ_;|`E'!9<%d@4񕗔ڼcVl;_T9sE^ST~])+x ~^JCI0z~i^ն>RoBȜ~;bkEr_F!mF``՜}^Rrt.CeLH' {lt5Pno)) =;ώq@*N X2z52'1i8&6oMKZ[ExVpĤz9kJnʚ(|O`ա.zR_@"(*u­γ7TU6oY)!O wι()埘ޢJTsPH\#>ҾA@ݼ3~:~&Wq@+44{Bh/{Aҟ '1Htm,s:21JaN".Eޕ 5tTϟ4-N2}پ,mT36Kglϖ@ L]2x[ 4ռޡtkFp&lVfFb$x~`uG4\#õ?T$BUT`Ѐnq0TjPT%3as4 +yk d0bcV %<7oi[W6)[TwHB.A*d.W{Ag]ѽaeg2 :0۠;8g"o0E#F`E%}5_Wgp0HpnQX/$ x"sjI@˾FkS0&P)΂(WesC~඼3[3RuBi$wy#]5iY3 t(I"֕5>_ixGd}5L,/!uEN>huTjZ™89YmQ |<׍ 1ߎ{ƄTÇ7k',pa ?c;&F}U<~Cy:5A xq_x8u7Fl94|hq("k2IJ@h뷓8*؎>=<1pܖ;dS?lKvڨS!O-舷jfA, (3M7|)c.QK  Hp䨷*oV s8HAyGx_W\>;;rQ6<|2 _)bDR-9Odk9;c0hz,9XÊC߱]xnPUTB2뢹fW/&5IVy'~I-g "q?:[ ;M +FʸG<ِ5ژެ - f59veG BW=?jBG=adSi;&pҟmC,:>{RT(7pIн+Zv{Ezä2j}+ bHg)Yhrt]Mt̾ǭe0H^ -}$e[֘wfQ]CW?7cbhƈy?Kj&תkmkh<*汨%̪7bm+Q187OQot<wDٹ8ܽڼ_M;^RaN&=twt:)ȓ河;*T0 ش!k~zBU`0#P0fG+6Qd&@r%xìk-{\•~ѱYE_MT&-GJbYY+'qJ[e+ߋz"f#Üz LQl{0~ꑦ>Ts`%zY^[cQaNrt d-y~P / ~"_"Ԯ.p0˟gYzy̨3_P5Z5NQ Ң.5E}@s49NcLb{sªa &X‡D*eM!*I'?SxKK sc5G9}?3N^5uW߿[6ړYdfYL8ahKknʻt2ɡd#6D@0q8pe>u+b¦(r;2QD vT_xqtwqN} ^Z5O @rځxojPT-|B^^"OWH >kLU/Q+-~wS@sEv -L*8z&OX?@ oQ;(t閩hk.oRբ>㫏*%]aY:KN/\0"YnxZhZB%2BW\S ps12$*=OÎ+(whk/dnTJ5QjDBŬ,1^zMJ'ͲҚ%.RY;|U# !~Of/ݡRI&Ugݝ(bYΙlQwA=O_=%CXSL85s ,uğ8^BAd9NX$ZT}`ntт*F cl>d3p$U&/ZLxQA`C3`sϫ0oIȺ" Ww 6L%Db4I>)X@C,Ī>Sd}twF#hHl9afQnnl)!yNS}OqgF껔`k<62}N?!?M`Fw.h+ nw@/b\*ķmշV*Ôun/[h+6c6xUwN1l-k$~Jsb.ĬDZq=ŴwPpz/⑇XU5˓,9sT9m)`7^hFx{D{&{+0UNJH|Z8 mύ*[}@ DKYݮW)URVLvS{gP9|ՙٌV$p/G.V"$i&L0UqՔZ|O8_Nΰ̅ .G > A+vqTWle9\w>7}椾 ݸscI]}$"}tm?l b =' %dT-y!>!8W$2 %&$ fh@A?A65#}gޤiWp<ӊ(o9*{4+V拚 w=rnʔ֬av,*,?[ Ȓ5Kp..yWOpAJR kџK9̽?l9zE3b}fXHîPc3+˴\{7aϹ1KDYǷ_ŧلG&z9,&èmGEWWRqʄA bI}ro^Dl6Y/yޮTi`5^kAЛX9{잻: |8ڴVo*|2OkkRicMONkJQޥ[>cۗL<2nMjT6ȡkr(7,_؃]FN{E;tZUOY3\{#"Iy4C*5(sZg^jT)CлP4yǛBLn7,m.ǔ}@8ax\,D\ctK~\dS;C7ZQl[+7=%lxbJP0WB>ٛ<܏M/;Ҝ0~' x o`{PXbo{z[XpOS Hr8ޣ$}X?sMx1t`B_i,.QP+y0Ѿف:& c% 3Ҧ_|<i8xX:bq(^W{#r$+omV'DL> ȗ6rCoȾ=BTa32(9Bi2ņCy0q+)H&c j6)N AiFoa勽}.R-9u2 `"%<$XwخI* ś8Wx-D|iH@UzǴyCMgvIH{ߎL*<BFFBȊ.A/ EL.$adg#rU6JǶpzu|Z_J>gᑭ]1# ʫkTՐf$MihR φ,kpQ;{Z3*TL@&:jed#aAL]쳑gT'E8qdKsTÏbu1NA.|;QTжܹ➱֣# Dw,B2I,[at,dGC;&;xM= AOv:[} Z{cRop p{kDgǦج$ g/PbJ,J܃ E0+7i948)@l 0n#m3x ^8 sZ5mM@)(WVq-?px"~U9J&ؖ2n@]ܒ}ggàVe}6:ۀ@Ǘ!Λ収/yT~|##$L tRREӢt4~I&*G"x#h~"V.u hN͂/zeq.9%[sHsUh) U`u<:3%¹ ҩ5~odxibeBێ.9x>,{^^K(˗̹UbP>~ܾ pXD _lDFa$A9]I֮H^*qŕv͂vtؑ<@H#]Tu%X7K1@Oka_sD.xWG+mh6cA/!NU ^ ؎ Č#.ʼnE Mk 5~8$NYnWv~q:, +_NkHP C.}O}Xrq>ejFZ;$ÿ;#T9fbIes[ó;nq\"i&劒ƿ&R9CdaC^Eу;Rj"FFa\M|ƴx:5r 0iz퇒?z* zҽsJn (S} N_%[`"0~0H ›S ldB;7:rzĒIT-Cv­թDMcwܠᕯT+751[GDc=An3&(ͭ-wm؏o/4<7Rϔ1H2ޮs%ZX@?Fm~. s苚va&z?a¸JFςf ~JxhHd^sDBn1ě+0~Ηbxxq.-vMzì|z~_;;Tz_鞗,Dy6nNA>8IT}{mSfϞh}c/3 f\Ӷ; ڡN5pj|I s6$#.08p'D (sɰ[GDO'8F"{+I=.]wCOFГ4)uZlstL/Ǯz/kWf)Fi1cJF%f6\ `٥B׳@*~!L8BԹr%ql؜B(Fh D&lsMj7M\td(c%촇H%a&$T>dHL<cMhZ"#܅w5ץ-%#?E9U3>O'u-DVȋP1R㙤?yn";KGPfLGbO"zO\=0V5Frir:CUH?MQl W,|8G]8"/QJʜP8:Y7[D`h;v5<G |zh\FHp".*r|QhT`HL',a1۬Ezt,tf}-U{W K{'z^SƟ㳠wo&o?9RӃioY#nro _OٞX6%r1ND_AxLC߁H瑹y4)@;J|KC{a輕3BLiO܈9ιCklg 90!{1 EgC_k6=eY$6|o{5)ْ3Eahk۴΋y v2LW$go3cMx_7r8ڟkv=#= 0jsH6Vo'6n;J5!QxPpv]Y|nKEąj'7D(]Ŭ 0B/!kEVlP|y:ITP:Ӥ$6o[y36 YmCQm?|<1߼s Yxs>Q=ڇؿf^E_s'leAF(O笰.U:QXw/Z* ?P(uGr²x8O=J>ݓT> tm! rOZp psq{,VF2*—=(9sJ̯q fNv,]j#]<`fhFzW&62!T1H-.NoV#]9~tDzsG=hIJ )|7wp@`'E,yN\'l Z 8Bə/OJ(O.k78}Ρ}]/330;!"P'T-G->"[.T r"xe2]3c*)Q4jQfa GEKu>3Y7vbaPTo2V5m>i|\@L+}eD7+E5z6sKP;$v.pJWZE$# *iF"$\keeHV1;X~W)HЈNu&?雎j`2Feǩf'yTzc.ǮDhʯnB0̯BClLZ6Vd3B=06kV/}d#I<-7@)KA-7^\p0xCڢ\`H1wbWog+A ਤj1aAWI*,HھN)E ZD 8Rf_}pA"qzt:߅RU] 6M3PB榀22(xP[kY_t5L{, !-|ͦ0.[CUUmԾE S5xI?76_?h1N@j\D$&Q+5N ~gPw.O~v<|z ȑkǜ#! \J\C ^Zz%7]Ӌ9Jfq3@Ly~a-+;0 URV\JsϾꈹ 7t2'Iyy&_,/HVŖT> <&J\R*Fg;+YX\۫]mA.w=uJxD2q̃ ?SP$Itk貯X|S8c[藹ASOej ^ R%f s)m'/PJZc{4xtTY-AHd&:*r})H;Fp奞@%D dk5\/kQ<Ҹ2mw!70֜2 G]HfZ2rpϜ5>;ђ3n`WKt!*.{kl `;j4 HDH Q24 {fd"50Wb\s%DmQj5p@_I'~Cq.LJA?@$lnC `mU %ԔmWTc~RUa/_MU9!K*jZyUK@=mgC(A5^'eQdl *k?E_DP.g!?]e}9۱2 E!M6U;`e%'iLVGߖ1KeTܮM?x,:BelC ;PFrdAoWOX"lNdPըIVm2PNս<@) D4=W)չeyH CWmK4M0Áۋ!8Kl|7nsQ_7d}GDls[ F%*dxyyn(P2`\Ewo+eu vO9@(t65]beԵ 1NZׂ_KroHrnu-4nAz%yC mH>:nGYlyqT2%7#6p_Cv'v'V#~DI5g7%<,N[,1pn2=Hd!sB_Ѱr|.#\cgDWڐW4h)lz:anbxyq1=H[ي8pZd}EKO‹I?oXK-308k_PE `UU?}q)S8B4I ,Ze\Ie -8xh0C޺ǴQ&өLgǻO$|+ q*χT u=sCmSi.ʏv~3GcvXlZk稴fBmt3`r`x@ͮ¬yVoIfM)F=%ƍ?=Əł>zhEҵ\ _ #(;"m]i0cQ3D7+g8}R ]R>y;BDlܝ0Zኙ_mcLw`mTCݞJiuD6芣dClzTQ8XZHYI.<||NG؃jmΚM m*GpKMKZ/Do2~sq>L) "irZK||oÔYbi8lcAEZf $H|jJSZt?D`! J<'}W3l6D#hzI З2E7Rz~<(+B6/;fVLA;i {'2î_ɠBSyeDa4(f|}=NŷLʆ!HS 5E~-۪Q^rzqv1]l-bZJ]'MxL25휫zBBx`ߕy:T8R+H]TRv/hn1~:g:*PZ"q0^%UП\ vVK,R_겥9΀XFcULJ>j67l/Vq]u#j>ZxR2a/OB7Ǚcz%Kr $EWw/L;=՗PIPi3 ŏO_ܽ7:/Kj!-@ʋ!"fqp<7D֮]U>EsT@i/6gh+/i?ĈvF8^sa`:8`[r9 ,hg\'iA]!] % ;h_˪gCX& 1T^b$[qq0B)Π G~ iMkGhZE3";gϻX+TX=ooazoA FBAʊBRf,EZZG53|#v~Upe*$Q6us]%i Ro 9XM~"01ݭ/U\(!6 qggLgڏWV\&b`#TtDXw R _;J OQAkiuX$?2' =1UXսwc[,^ K2Nj{޿>E'IL,oڱT3LYG4@?܆Q֑=%)!]c@VGsS`p ]TO[r7Q='5?IϷ!@S絓-Rҹ!k΂ oۣ e"ia; 빯+t p;O;\ =zQ{vްHJ"vDՆI&Ѣ4̖j#lV(ĂUUM !9ˎq˿V%V K:NR~ה(8z 'rv1y'͂evu=6S̟'OTw'ӗk i*J tQq9~M'#e:vZ4+ |4;'?X8 Ry*v}j/E-auD*T*m6`G6W{:Bv X˙#VږG QW1Mm 2„wc}?lnZUC+$\y'*7Mj)/]Bn ly_Հu 99;EsW ߾P@)rϕGHMs΁߲?:E0SC5t:8*/Ō#-4*_c^[ ͡Iwo :*3Y A ٙ`5oZsJh'$ޑίJBR=;s>ܓGEImN6?pr"(jJl8esD7bda`Xn"L^҅3$K@57hƿ+M~* }3 rZO _5#[15>VfzuN}~q n M'Jo-+z/?GX𱚠oboHn\ %.z^Q?q搼9>[Pf[0C %AP,myzSHޱE㫶fW$.j3^NHR3o4opS\Sa3WLf\֨A$Zq'늱Tq 7gWgRִ~N0H*CR{ᢇbS@?^RQZ3o.to #|ƥ{XᬶR&0=iʣ@3fK->WSdQ1DnJ~ O2ϒb;JTup޼r9k۟84R?  !%`my$ZWGgn'xu](h:cwXs">7`x`ɉ:ѐX.CMPt>$ity{C-lT+1+u5bPM?Tdi'T>ͬtO}a%OceiMjSG3.#8X+1(U'Uk3BG~'I:ϩ Xo fSDDԨ4Q.2.7vbuy0!z j>AWbpNi5r#xmȬ4ƪL#J$uibFǁc knImAgtfH& hEؖ` Lg5/=J>|.*Y;-:gyB1!D hF0+%5m{n pJ(bk{712艧*woEKz:_81rtF$m@oZa@;4 /e@3 p%Jzr`pX1Ё `W)Km΅k1}:ji.j ɪB:zϛy8,׳ Pe1G垲4NPKUGWW҃ƍUPk<$lX̜4aBó'&TOBhT֭r rz=8ucݣe?AR^RVLjezh'_.V-:?z"]97ece?3ҠJ}^e$מù,V!v1E4" x8;OZ9Ual0 |=٠M"FGdPHHɨKR+.z1o,i \gW4+ ok樇jdg+c}9&qeeODI._]SCT8yXD ./BbGv7YC`HyC%T`ʰȒb*8z%%pNkk\Y{ˎG `8G`G|ʝ8瀰yuM^g\B*WPaΥ RWI\uYh[;!Z7E4]ĖW-g W(C}"nA~!TgV5Ҳ/#NkpLkm$ݫrHS';xhV1JW {]_\.4!gPF*vlDTglGP6:#]:]:fЈa5hhsW#t ym叙V8cȬDNCҟ4<ͯd+GHH^ݑZOKW':A݈"(æ}q/1 ETEC\>ʴj2aC%i J7)oO8dw~*S#>kCq zP~}$`2Ҍ6q$W76PkhbTK# 5>@ QEWƮPI幖iQcO$  (_6}Z*J8Law",6>ͤm&.јN6> ѧ{Oְ;t?!09uk(˧7a U;ި]6{xwKk"8Xxp;*e`g6HkUfh\LUHD"Zat3$$Qqvk#=q) .*(Pl j',P0Y/u+#]w(`bkJε4O>m{B\SogB@+0_+RL-N.6l wcPv5ѲSQWZ/w&1³5f?5mƧ}%uskCHd %KΙQʇ/@FVrW`D<ڼëꌭ ˂MOMI@DZs&tDEtijF.rw TނHIVSF*6gc"Bu:CAWGkԂs(D&I\"'bσelx{A@xAAMJT)kziT5]8;4sL(\p4XrU;ȟ2,@30ƌ`1t yJ\FyRUvTi"'ٲbqynk uxD>2Yy`L./Nt5&z{[6;%dBIM:8(ͺњUwt5VLzhG|R| ]o N~PJu>BFv-`O5%v/NFj`9=@O=nx`Ec bݢ}Wjw U{Ϡ3s:\C!6^5#wQ{g±4WkZCcK 8 *1[H$w#ҩyy&T"؍cRr^/"9OT%~Q-j,i7AT9ĕ RmRavsWWAΑ",, & ~nLs'+by"-qU13+5ސW?&[df}3*~E8@UoNAW$̀lVC&N9SИnH9NWo ޽zKHMͷ]d aI\"AbG}:3|`oN]!BƓR@*aN2r;3ƙ k[Ҳ'lr!8`xdb*Oq3Ӧ5<3+naj&2vf6s1k+u*@ (8-7TG'#7GA35&C Z~L6엱QM(,y쨡nRwzUCn8(iQ̡qjC?Ӿ &38qhU} Z&ł,؜s.z/h]Q&pP2&Π 0C\K"=$aTPd0ulD J7s]Ѡ~.out`;2g Ѓ% H^I1;s D.ݢw !Q [ b(P(c6<ԧ_L!g\v^,Q ߍgm D"xǻCyEQ gwIb܏=Ԩ-{C7-UAW'aR;BFlMTdI;q@@|^s홣eD."@W, 9 ]w|,ptnMh)p7zLJ H^8aKst=l$?#O  1}_ԱhYՠ^U,={xG8hwa nWe杼LcBˑtYPQ%/SPzR阕X?b8 +GRh}/%vEt}Y & FOM0hd-2`{sdGcOPo[1>A9L^019bV q_k)jF<ӍP? ⦁WwsY;ZB7iv˻d#GDic=i ـw.YSf1KҶNf s 6\< Wn- :A3; h}Q7>}uKN=}4WEIfV{sV.8s(.4ܰz1YjGJPOy.p(x#G|?g37;j@ϊ`gGS`_g N8 w8Ȣt.*h2OfxȬ5"VW*&a _xZ3,~;P46Ub[Ѵ$}h'$:sV%fl?6\yJ1h!Ni3lv-5NÁ!:.]_rVanAi֤Yӷ?ɻ{5e 7jS PkaT#BzFAI&I?q4ĊS6E (e$(!d: " 2,ie|}PӭRdb.UX ڗǣXp7w|-BɀJ|âji9LݐF. hsE6 ,:󩨦 ͗r1˜g&K9BqOz!6;ge~OkAQܸ<-^2ZIDCR4ݟ<"sTG+K&)CJA&^͔G& KbW%avzFnTF}(aǍ1~DqAr'{=~^ZAN߱` 4{ !!E[U,^ ʿ i]k#wKEg'zKz8?u泟%e}.D,}j(dJ}O貜ҎnجK$]WIFj~ˉ&}zN?)͠qhP7=)Ҧe~T㳯7hy=|h0]aJEMFϠnEMX6jI?%مi [@uʎiZ}iJK ȇ qBU ^P'}eMWE Z_-=By{w ŕž1d^iOg&TY"Q'4h<$bx>;@J_J vIqگehFE]yŊ!ɐ77>ݧ0\*ǠNeQ27T SYU:A3] @3<%˩K8n_(dsV2 N1oTVik_v9萚/ɠz *΍e1? ` z<{ ^b]uu'"X~! T5]JSu55މ´u*f5OXE v^e-nQ;Nxak]9@~Wh ZZ y&\oaC(˶]3|~y&QbS^'mV.oY]pw9ˠ@SkOܤqhGc7蓖|9f?'ɯJZ⿟rE'TF?ʐBQ-Gp'pjUsSX@4`uIKaɉh^6ᤨ$Pd{]v_`pZH-}sbCjǐIEޢOGR^bt%@ZOX)/ WPAk*~n 臜*TaT:eJ^& K#a줮8߾X dJ ?ـE^Cg9u׷\2K< ҧV,GvdHoczWM΍S^1E_!WylR0xm S/qxoyBfaLM5|Ζo&b]=78 D)#Ae.f]<;]5=3J+vL?0!0 ('灝@+D+ h8Sdꔐ 2sH3cp sXhzڃT(Kmd~(|,j}`o5{ -2$F~4ϺBN`TBf ht fpy#:=:8!7 r.W+\ z[9ުT ^!,gO{^0ҽht`GE'1d4x+yMAd[ kOHu%ß"q<ֱ&G']FAآYYq~ F5Qݓs."QI%q rN*!W%g|zưQ̦@*6gb$$8`;`qzC,wb?*BM?>q?2} Gi3c3>V貅Kb]g045ĥ/] P2nfjNtKr d. WZ.2&#AN9 8Xv9>xarcafZ=?UP%`<YN<[ِbwF!<쪣.6Qcɠae(omaAx]0}}58<fֵ`Z(xI2w?vǵQЅgby@o@ϥ녓'` 0߶ɰbt!@ I4oIQȹ[V^Вx`n5:ǹ5,.- ǹL|C1+z x(HL)&O/.JRoP JIY)2tdK2IԒ \AϤn y ߃%CM%!ۘY h?lIPr^M?Ϭr+VuЪ<0 p5"">=jCаEJ3ggN&eiԔd` TitK+ ݫum[ŞI[h^JqSVͫJ-/5pX|$[+Yq>_C 9eG [8aEA>xqdvʩiɈa*3%)CY|1fQ#\m8߂M%^ȭzE{`iWE%G0TY?E^|Ktj{.u{i&jIWpq]|!d%x8^V0?æoPCBܧ]wyVٛ]/+b J>,S*Ժ5P&1dTk ok[ɷ%qmN~8tz f# BIj>3@N5/|pɨY[3d%,T76HqQn6}.#Kh]b.ن_ۓ ^CSN  hմy^睓 8>rEGhϓy񽖍HX `gp/4v=Hy@쪔˳g{s7w)%/>c| (gl ŧ(Nȁ,dO W2oNdICm|TteN<_hCAY+&j\e`gu8~’<OugXwW)4^'>memh{ *@B}[9+Tdg:4td%PT$ ^k`i[ rOe;0"@vѽqV_qE_.~Y!g Ҁ*צ#nxHN=`L23Y< %U#MS_G;yz ˑkKzsw-TvGak9u5=#zEKq2M>EVex|%? '(;ƘH7fH a܀lnph;ݖ1֒J~K5R^5mVjPIJH88Vzq/S(sR3T8' |:t;,;X0}\ˠ|e09av^!ux䑌#OdQ˧  ʻ>勨6UnO k^.q`7MKadPn\ ](݇8O-gfzR5?0*\cQb(5H8_1W؆(xKoy:_N&&fgspmS8=V!8l7PXnЛa/ɓX[Xt,/'Ӝ _$%YʬѾn Y{)WDYp y؟a%yUܼA2z܌PKJ$#9 *"a j.5*ni9pV$6K?OY$6Ib*F/GRfLո޺GIV2j8l/&7o=]JV$rp~=WG+}XF`M} 񋕋oϪʳ7rSH?.mzUʚNUǸH+'g^%nϷ˕9_+ K(/V=6n,*J1?_<#%ZG;sL:8l˼{[FΒ LcinLސ64Ku) Kl&7})ˮ'D·[iC*׽o3|N kpyxfG[0tr#\<K󚆒20+u- 7<{ZgRF!^&{Dvi!֗$v~^_4)Hkq1SuZe_X@g% zڛTʼn)b\޿67?yj/+`C5^ "B;!].e#BY,E5q]M?Б㖩Wjo4f 2?w_Y[O661Ōdpx^$r14BFRddcxlt[/LvOw8.iiuWZXΘ앤Z~1W9[nQPuv.lqu< \X胯z5,\; uX=jZcjy^;MYD 4KpO#EBBҞVmYI8#mEm[tQܱ Ay7vE* BRhwGQd6Wy v^7.J E)'o<'WY`}}bnYM %G]dR~ ?0Iu.B _Bu /әuB!#zo 7kTAj^$՘d,qnTlX\8V~r*H^_#:mvfF#Q:S )- w/RvvƵB+KKK`Ce\MHd>ݓ $Z":C_Y^!Pf/ #A4;)A& %*#s%`_6%BRl(fyScO#I$B|Pc†Xoו_\3-Z?.))~I{3vU xYFCBN&緓t|ܥ=2FR0à믗gVFgTfVfEy\2a ]=g!>h.wb*fiX?A07E C4ؽ~g_l' mŤΆv*I3>[+s fivii/ɛYM YD:*54tWEFtxEywEElq&–#{_*0ukkO)㼫Llr8ĕu^}hAãKW},E.g  ~ ] 7u7sN2f+p2[XNNX#%̳~1 PZF\\.A TwUEPUu hѾH*4Aܘ*1>\/+El'f/d $- # U|vUD$B $jP/;QgY#enYɃ TFӐ=|F @m؉*~rBMF/'ju"U9F\!#V0| FF&4QtыefSjg)nyZٱj2wTnXj:BΕG3O|4SJ{=-&zf2CVo笗;2v򅕢RO d6ev*|uw96)ld4܄ եkfW(}A5A[.3᱀%g̡LBMDdDLt#q/%Gl[QQIqx3'Pi>x Rɹhc8>~vI#.鳊guB'J k=Hb݊+8#4 |XwQCв&\mlwS})жk{vaaEmE ^nox*A[>10d7T<xWX*zWPuywN&SۇMzcwq6QR6 ݉<:4Ppa `Gξ Q(KV| M"Ŷ?,f!?ÜvܐU' ل8ŻshĔۣ6ٙc'CDq"q1/zu~j(P򊌅0@3 $@@r> h:h9M-D\`=;̔s6]MOO< i'[[<0hZ] qF~QOLJxB*^–oX洃5՜@hU'x ?AAw|Sx,H*wc+AڲڹSbʻ{w.hړf726/)IIF׷@dr{yuxR !2Jݦ`^?V7Хo EZx0y9c2dߠ9ij(WRǘNzk('dZԼLfז&-p "wʥ9'µX)FyjQ Pr&HhDdMUY@Cą܏F in筆b-cGxEKó&0P-x{ *z( !:78jJYF4/RSwo]NGn2;IF] )_}(K ē" Ocl:\nNDZ<|΃, 6z_˹pmyF7١=~^;%؄;2e$'8Aq$a4'? ypoH`yN(,2zG˷?O{7%Bٳz+ w"I'|.UOZ[Oѐb2NE}zPpPfɺ xE(6[madK*)ERPY2d>{6G [!v#t 3r5(Sy|_X(聣^ $t]ٽp$D.[rU tO:HۭI~o_&C!rK4̶ ڙ`p#ct3%+yb7S3锝mѢ9'ib"_J^jBrb#?|yG)T Xԭ @[ ';] DOL_ ˒Z7txшPoX zkKbQZ1yf2RYԎ3=WCW$g9!'ѫ9?uCg޹aS^w'ةl ۇGO"e(4d>C8ԷĴk3d>UU@SpWzؐ:c'C?.&V "=VX?rf*llAgSW\ri(GzC,|woc˳D$tٞȈްht*Wm6l;y/Bຠh!~Dw˹HO `-k/{ hƁR٪-te)A g;ԗBa<#'x͞Ni|JWd~hwcex0ԣ9ZɴkWPT֍+vBW*3%=|:`T:4t7⤅zUD.F(oj]ՠG?3+C6Mid :댹y= ]j6㡾L[ȍ\L=A;oQ1t!jV{i A]OsF鬱.O{@1=p~#4/#;2pC)bٟ\%S?($:}G.;I0M83"y'.&^IvͬMe /JȆk1c/ 3xR.U>^ Wgns ?(0 ɐPlG!NM؅,<֠nNol<լgGcvFҴX$mj.K nA)P@JR+6q VR:>o4AQ 3y@zadѥd{J%? JR]uCQ@n`4x׺7khPnW2s'V8L+7:\k&>[ mXjxW##UN1է?5˜07q!ǽ٥9w{iIѝ~bݲ\ ЏbzvO@ՎUA9}ĸ_U]/ȅF߰q#"|ݴ$aUTRA3&ʑrry&| Bexu1XDcA ㊙?orlX|[]GȘؕ )'ԝ1CM ΅C{kֹwC{ 0C#u8R>BJ*~1d2)nI47q $}yږ ɠq׼߹4*/6? l[j)qODOy}z i4rUE V@CS.rC1ulNN&a 5<ʀ3髯G,^NJV=ȬՊOrPӉJk|Z^mp(y!d?[6_i#đIM@Z4ɲG*P!*^,|"jٕtT-Xg'0Rp'*N6q?'k(aQ퀺']P};ʁ|7[\Vhw["ˠ WNoN89a$nzUHileTXOeہxkvp_6 1iWpw凍JEeZxFk&ΐz!im,XЉN ڴ Cl5s' WEX!A#R-nr[%nq_crӠԮڹ (hu ^V5]*v3'޼٭2^.;ޖ۝!ܮo[lzUliU5gΕz'2Х_6f]Aq\հ57Z3w&v]ZG*/(|-GLwIX69;1 #Ri/?t[UI%Fۥ>5]g =C8!^S|*x'q S͢ oX\:Uw:8Ue[О^k&JBSx]LXd͓c gn喌t^œEA,Pʼ_n62%iSY/Q''{WKǘz{ yQH(MF yhNfVA $3;Rz6Plp=#*0]M*SVۥfd DAd3+7۾Twbˁ3Bnsߒ/fWrwW0˃ɣlnvD|aN rIGV%\6Hl1y^Yl[URpHy#P!nCP&?Ǿyٿ;ٯ:}ߍzw>~"I |٪Ơa{Q `Y?x4+CkU4D֢\HHZ@Yo6Γl3t߱6}F) R XٓLC,O؆Sm|-P])%ѤrZv)c9f#L I o¥m8ܻsj7.ۅp]MkJcH:pfm?hL#6 ^-VEƖ` ^HB2ImO*B}7^Kإa1dQq.VIBvҰβߜ5\PQ H8k5@rCƲ` ˻g5F"Oh掛̟)龆f]J$Xd>MV%uώO .g _<]%6z#H8 ٣a!4~+ERD⼺lu yet!9شgȒ-͔fq! 6p22[~g^lGn:tv%Ջ<8wtWz5& ~Kn#G>eP"l`@̳ݞmu,An`ǜ֞t6QASu뤩Ps n켎^#%WVݙg#xߔ%c/XmfGO[+yr\;.@5^I%Ca}-"3Cy1xê7sUو5qC6hgL噲Sۚ+ĻD6񸶌ĸC]x/O^KqIx`ӐZkWr S`;XQ`pK޹JLuquGGvK/T!;Yl5 Bt2yZTbu~>KP|0ʁ XTY Ho5vǏԉ#CS&%ڂGSy6(^c5fC פ_"JEKGV8=]%n3V+qő$ LT]<= ǫv9o` ҙvJ|aV\@&꺷n% Bg=nog ~RJ/ =kogI W+$:էk0 EU?񟌢8Q'3Wu')n9{ ^B8&<\l#kI8/K]fsH t`hXxAz4Mq=J:43Z+b)[B$B\שt8pz-ά3B~63ׅny̩g=JMHoctR]/v F!gO:Rr"|+%GCe +ڃ|`au;=Qg5΢%dPZ2eI0$zM/m>ssO4o^tJGr\?Aye4[.sB˝{`K q>j[/ti1Cr܌=6!Mq~dҊ\Au{k nOڭ798@CZ %|(TDT1;TCV(-?)Q_\Z>irÐK: U%Vxۭ:5eqY0, їgX 9I'+u56BFe (gag|z>eG&iUX͑DW~cdŠ$C@C5 PR),۪.+8mv N6w1u)ėY| vӢKgKJUӆlȗ@RߤX3ylu\@nsJezue ԽVNly8Ywd.ܵ2'=] :kCW$%ѿiWW3 I^0u*mU!(`HDm8N0D J2Fm!TK!,ԅ@/v/{9{t#3bQ78B| Ӎ ik}AO(|E.Iʬ)Z;I$w?ew9|8`-K2ܰ+e\1Q ![=I SӖ8T,э)CݧmMVP ֻ1gXi'h?JdH`=fN5G)9 ecx, 0G<2% iWX$IU|I=<q&b1nHkIȯZ|JjΪ 5o$slnGXOQY]ekTg7 {gOؙ#|:Z\-ڝt%1l;݁>.pp%ϒZchCUoA=l^ԛ'./a[GLBڤ!pکP˓[`7,x {X^Xg1|_1}fהt?s0 wf_:CpMhqR1D+_8Ӓyjm #h ?|SOv^p z ƌݘ4@Ymb"pF l;P0zQ_6LEС(@QN m@M9djvn:Uɴ1TͤKrh1TZ`q sRПJTmu!2 Nl5bGė̩'Xx"GKe`nx:})&ףS-wxN-hhrƆus=Lq|@[jKr1 <^ Imjsdu&)(zu몀oH0mQ/[.AkDz6872s$bP7)0(^4%H:8.)NaT"zXiȎ* H ԺZ(Osk*j G2$_y-':0 +#lzB=CΆP7Ztb ]Hjګ懪޻ISxl>ۡ8@پ{ۿ;sù{[ 5U(')9aEƭÇP5#;wE)V#i$6dB&̧qyMT'˛{:CYd=$;:m-zf x4vOC9DkBdMiMƊ\;ƒ*h#o)X*θH/qegȡ3"9zb{lCg*}, LQQ1S(J*HczZAr"UK+5k8IE@AabM|kK̶/HΝ52h"C_ff"]Mz1: WkΦ޷@K ZE0b>.USsHi\Ypl_RV% c̤RDˮǹ*G2ɩ&ty}fѹBX28ne|̵542v/L-35, DlLfqQ;/@izd<&-VA/Хg84\@rYn/Tr-Tr<\tf%D[m~ hFU_m5,=?'o'&a|R~ ,!g\X4NDub]_&CDEVc&OF5lը쿵4yNle4rgc>n03b6ޥ(SR5#`fEc벙DsXyuc?> k[p1?bg7.ܕdůBc$b>^KGW{\`2|zS8^neoJQ`ўWyk!Icrπ.\ oo2+K R 㻈*|[>/c;?,&]m8uwuj\C=k Ua0.:Erft B`qⱶHmy0L`Al[E2Ƒʈ7qM6s1_/?VOvʣ-wb +O.[2@]Ʈ-gOښ Pv%Scѽ FC&g3krsX-ѷ|D]C2dU']8MsoP48wQ*iUFٴejۥf, iɊTC\q1flI'ڧo*sAakyRxBV P O2LN9@bO}.i<s, =L't[^h4E xS{'j6kLD7=Β4J p2hu%H{k'ի ?? ' IO\Zd"/ tW_~If(- 2*b¨eCs1*u")@,[s/cM(,^`odhBuN(3 { hEbMg`No| l:55EWh#G *xq% f*+eR26@d3@gͬc};v{#j=*_6h+$ Td,?b"GϏ8Wr/"kIz2s ޏduO@+)CwLǘN[(!RP BL2套v芌*T1: .d=&(r Ǿ6ή]KiER6ߗ;/&$+H(ً,/bcdsn-|` *{ L+EtcCV;tA_OhBꢊi -J!>7fjV ªT$ l~ߟfs;.Ct0|SqniXݎ7}[e1DZ]m᫁BvCy1aDV#xp,8= ^oИE; G[BA[oe޿9G]Z+Т4@7_3W[nVڃ:b8svx1fm>tdǭ59͑f+eQ D0ɇ/i . >)1tl~Y`{1ۛvP^I]gG|R' sK@;v'J ]'$zX*xe>U=dCHr%+a4z#Ԏ|PA2xd"-p\lWk5zӾCK2#vsAG56.L{ڣYLJ!o|Ly[vo&5 `_mRr2K3Rvc6$,X[LjkodOgkHzX:MxsM%NAyc퟊{GYi:' 0fCQØQEXTnxz\lNYu[@Ca׽.#8n7|9ix+) cm ?ߩbSQZ5;|ʹ q~؎q8eiQ >/g 9>Fw*dv{)t6v"kǿE6G%1M,t j~w(Ro]RN# O>ϨB])'8H;@Qju澅)F l`lvJ5|MP(Ni|jR96Lg8HO-9VR ; j)ɂi շ*Tn Y޺`# Ix%?9gFPPʯ}iߔ [nc\5WcIr~`~N~o֟^}оL}1oEZm[tFjL;a^=ؚ Wsu1-pNd=|8[c+*_w6Q 0߲Vx 袇 !]P9p?$,3\/۫h2c/wA,|X!ϥMse-,J:֯m84,pk"+ѴD4Rv.HP;P" սl6MS䴧3*nbulO˦Uo&yԨZ2&NSc=xQ`G.Q:KE%}c^ W?!/Gjv> KpєŹ,pT,7Nd]5]IL%"Hl^-MUU>}TtR1o®y蓞(up/6O[t]2s Q~#@;Jq`Z6D*˶;r3&"?JK\q4?e 2}h ɨB9QסM[Y\ 1od9x\dfI U·l_U0vnZI|et7 09%=TKiD|F<АOHevL Yʡ˸2kfbmF |[\(j^tx++ l_G1s\vǠZ@?m xHcf]eEg[.F:v6]_ԟs9iUrRz e<@=mTa GO,:QͨlNx%Tٿ*yO{+b6"=ΨdPڿBtu؄Ző}:/:!C-y/TTv=.F:kON\8ilQ /hA~9:Z4x.vdKd=[?V/NSuk]'zRn0JcRO8AӪTClakz0#:U;1Q-TPtr{]GkCC9ӳg#1DW y84tV˿^z,+$#WuA{v'ܻJ,p"bz}CF= TY ?߷9-["PtV?^$!(K5d!04M,ESeB[teL#Dx]r3K4帝T'D)ڮ Gz&&h I\8\H 3:%Mb NiXpQ]G \v SVziJ +r)DNrF]`hG4iX(c2aΉl42@tMJ-~\N[iᥞbasB-gڲ!㓢=ܦ+B| wkʠGWWL5[#{@a`9>k?YL|h\{_JhH$\F龏iôU re>s5] rʾ\%%桃<K T@3"LWm/)xƕT]SϘH,=gk|IrDdEy6$<J+2Y$ ůkP{LyrXK ɣp8f/p@p04,W=(]o[×XD5+eΓ$XGXhLuЀ֘Xh)X1kei[ 2e!x$ CkȝZf(T=\UsHR hS.>UX?|צO0j2zw;g^z~2SxT'}qK=i4#˔%BL dJ)(Bs+!mYÙfaхl)Vk)2>7[gt.)<Q^1$2 %.Po&MxqKqۓKړ\1/ f28+<[s(-zK[s y(mRN[~z~2pe@4b0dD|u^IXܫh ˇHta D(Z<βn:ko[kZRqwgEA)X3Kw|Ⱦ8A0גuL#An2ൎ_lnـ™EEf{mrhU_WuM넔_ Orl茁*>!n ԇ;ޘdb◃GpIq:Fqo@C,P!|Ei(b/sh?1H.%:\`u70hHZ-~jQ(P){VjVoM?2LR6 u'@Ab@=H E -wibLDl~*CGC4c)bx ale:TSO|D3z(A8Nh +{UWqv!ީG`?9_ 6=kKS)r2z  T7-ZܴQgWe֕L+,ʬ| -S``0J1IGla.F<6tDEYG޲7Ɇͮtz'k/yT>ؾ&v)~ۧ*!-1'AtܸE]Gnd9#$(T>Zdwe8s=̎X:DP˪imY&n3x"ҍ "7S7+oN/gK'P~hݲU朏䓐]|!iP=PK' )*Yv{ߠA9^+d$ !6@>dq' DeXo$Qoig+_;YIMۃ"I2̖vǣHX9I=0OV)+ 0PwcWJr’IZa5^Go‘@-Fk.,5$gL[kH5 QWL*1)^-0dgM#p6ӏ˭Nn rSC戼i[|&19+|1DG|BC%PȺD-ǝ$0A483|؉B+"($e.,5 ͅz,mk3Qzv=l̓jLzoU_kgy]npl;Al3OVEH0:^7:.^Wue;"D@6btsLڽ@aB`y2{e&o|Hj Hvu"F*Tx/6~b脅G$E4y{6[M!0J 0?,>bQe';o֟ޅHmm_9Sn=w9wS!;-8gY7JSǡ,#Oh|nW-]LOtzoy\5~p_Y4sU.-ģ:O2Ҿxe Ỉk6`7b+mjIdv!ب1([G6}$s'`ekU7d3̮N&|وa-Zt4n7E`<9l҉oe/_Z{%1爓 SQvgP 4Wqイ]Y$@\Im,+f^UQW;|3GVX9''!U}q穁Щ+mlHgA9RhcBtNfk˼sK?{QkA8meBrE}=dsˇT0E@1}'?8Qvh$VhSQǐt|aA@_P$Ȁ ›R҄&%z!Q{`0;X|o;ne8HoqXKR GᶹJyo$ÇjB9}v9ʻZ;6 $Gp3VUέu%u-bjḊ ; 58+'XxOcUXȮI[S/C^7#oՙgeN5{)/엖ٶWM"R`iILxJZ`e!hg3ѴӪ7-gm Adﲤr9jWMwKOaET g4h?a_·;oA^_ҖꮜWa?3 {"H:tF r/ ֘6Fխyq8x+«"lQ\EY}PTc .BD4ba0UoζOޓOfi4G`if*GߙwBfuCcjlPp1ȕz 9HaIvg=UINɟƥxS9[k  ס0HҽPMkW8ɝݶtLXu q_TQZ`I$+& I T6 '=6OU]P` C¯~Va=ԯO Ѡ;zPern[zUUMHُjëz39_gab2hfy/<%) |8tCӜd6\-ml"\:c{+?4j%qMXD@[JfGvm S;;KS!Yeda0Mz_R b^ND h!|giP@==cje^Ejy߱dAD|K"J5]_d"gvĭڣB4h$.o#uiWB*?6;osY1sqHZ`Te36('ྃ+ EmC[@ŐRQȡ3 (YM7m;i>V:՝ "E \dU,7n3 Hɠ3 W3EwEG=8a|}R$Ilͽx5#olět&+R] e%1Ph@+=9~akE`;eqG?M 5{Bν(N*PAy&4晌_˪xNa[IӠnhaRlyZރ>z1[oـI HJ-UgO~cxu͌nv, ^3<@Dwf0@ T"iY`br\yOtSՋE~?v37B,#cXs;#xu %7o7 [s.17crʱjwu-ڮ8%-zS2sK_Ď^/7%{O\YcSA&!>݇Of|4ָQ_//bzE]gBv?>HcU<#a=V9 eErnq*6[lXF}`.LNysU64&{F Q7>T5,g5 ydxwN3];I[ANw.ft9n#ƠBԍM\b;mSCfu>'ނe7G1`(0D, >MVN<j& _ ֩ܝu]WI"+ݢvE㗹Q) 6pv1W(wyisH**'}Z3h*>&rܩooV R{u{ vVdΕif6}MCXTi-BFxCdG\cl5?FGv 2QL3VD%HP^$_wAݜ+#:F4k#dnL ~z 1T|\ڌt#TxBsX=;7"38>|ME $Hu߳k#q~TWg/8 Nk~Z؄RI\Y%qW+rvΞڷ-QU)֫:,3QIyl|HY!gFS~#QQt X9-p5uK~ o{ՁW~`QZ.~9|'!AqMVi @gvrbWJ'ϚC)Bq>E|)yiy5rkw^ .{|'09 -4JD;H7JןK6i*lT-ZOXPXyZxW1~^-(KVZc$ODR3mh5CVPVVwk7̭fQkbnCJ=oSd{gQ~+M%QݏBMAc[kxLq-EndFx-(:qDC.(9WPZYqcEYwȯKh=:zi8ԆPm@vg mp8tzofo58:+RSIsqMH2&B^X#ҽP)Yg2M?Ev=d*<,_7ZMBcJ2˕s2}I8N3 t AŸh[fTvXNc>I$8(}w@ xDY5tzgʁȬ 9Pr؎lS\K2fgyg>7 뢽)@0k$2ncݑ`I"3`:M')f3vE"5eBܺI6-4b: ɏ;k %Oz>_|ϚLj1b{؁i> >f|-LI:2$+8.l˦( aw(}&s34:H ޫ>L\}0Jh^-IoX;A _2 bo2(uw^ V+RF ErAN0*Q$um0s6볽H\}1ܾ{>j׬1@ub jpb'D`)0oT^KJf0"+mdCn#Mgl[V-&F}-7 36mؠv)ѿlE\{!; 9#bl|nK1B=Q 53>z :`sF*(ɃQ1_WX5ZbqpG$h ؒ$(ji$uB P^lkFl Cf 4׆\>*WHH{a]MҎzQ r#TO!C"YK,9!Tq x :gd+H |XC$RZs HK"E$"[ MG34Jwf${Ɉ/Sض34ݳEEB- KpcS@6|mgh#.[C7g)SIU2]*V' A@"jm&W0 FIhUcL?jeŧa!: Y+Q%9o[3h]@HS'Z =X}U:>"}| 0\1OfX> ۃ"ù~a"ؐ߹=}fxl#P]xmt2k8wG(k0xN1aW5 Y6̙a$ǩ%d}za6*lrq.w_sA(ݲ$\?C`C׍+Gb}ݗ25l˼CV>z G 7_e8#f4?m"nE%#۲^vvR[/@ a_Ԛ\5i7z{%Ͷ4'tLnw|dSS:p0RY{SuZR$jbB |d IdGMVE/eT5"Zu}bRRLs7{~fHqf]EXrԹNzM0 $7MͰ}" xW^GD_+$5n|SL׵{Y_u2Bt7.uӲ"=.#L޵p׏m(| O4FaehPB !>h PԷqKpv҆ްj&cO_$KMs8oPc9+uB(ucR[xw2 Li^+q˿Ι~ cgm6XdH/KQ3:$vݍ~@ YP6x栋,E3^9e,c Щ j. ֿ/- |Z-F[ MDrݶ g+oAWPխgoPљ Əό#cNmKJ7W7Y!)3x_0]/o.hA0j&km_MlMPRK MZ^{!i#:nV?*K@NL`p΍;d!/%Qʒ9gdAx=eg2d؉I83o5ME}zyM2D>H̟LGQsWM$uBp{9uc1 mR豋(ķlUTTAй_ AI$)u|o b,t=adpk`#V>ܢ5fk!`,p-̉D ]Qc|)DI3p#ہI)%v9i2]QĨæUidr!y|ۙ#iomEC1aod~._oWUՔw>HC39r4l24KljBVO>Ql3L8B$մ!+Gj~< ™)qLbٞ4Ic&3 /{vU"4&I 2Vj>Q=tc)gR`{fV]W\6H54+^5F}fulIOQQ'mņz&cPEӰ1 +QT_hY_q-1?)zZ)8;%ШgHEJJqq k]EO3*DFk1y+?aL^/j"q7u}# _ '*έIW;?yTdm|ʅثZd|Jv0 Ao>a6RuJIk2g.oQ,9w)C j}^>0 {Mg E%_]5pg#pe9hwZ6bOeZ+٘cT\|zXPGcKmS:uc8pJJZ-r@ܚǵ8!vo )O6o&PPYv>ʢZI?Ā" Xp,@/x.90 ZZ07U`ja`)ld0w.i^\1*V+!PZ*kɠ-GM4OݒKU;%`RV[poAG i>`1, d=SIn`u$ܴHQz?O&gP~[ev-k t uİjp'8CgaYReU;1 S?Tan˥eiWL y~Lm C&| d^G<@D1ź׌:'UTԦv""1@̫(mDE$d?,uܨWNq,\p2-\B<.F0j!M1W$U:RmQ{lq~}!n=1nǚ^bSzh_o y&%fGg,NejD{ԹC4sx儾'8UC%aR!/Hz랉Ő#:ݜhګL> 6jWf3^:VwPQ|kĢ'Ki|Gm>j]tdDT?Y@/; %9j7.wd8^d#vf:3 Eٯ6] X#1$Tu},_.M)7;i%HopD7d;o V<|>Q Z |5#KRU̬0p_q0^c HQz'BwRnGv꫁P{8,sI!UK 0Ꮒb\LBwBa&>w?^rY]6R6o3%`ȡ8Z֯c]8m= 1Ri`4ft)>J/nR!mD@VgS(deDWR&vd>ݩ@.ΔWԡ0R/O{/d/Wl'h2,ʥ=a4G2g_+t@ 9J?,鐳aK?\[jҵkxN^id \@C)f0@ǸP}4r7bbBBi1@oOV+l{5<|R3MJ*uΌ'YOWBݛ$^3 ډweiw='49CF9-ݙI|Z&NZ^BڑqA p'F$P昼+ŮЯ,f@?iF3 |u?$/M+Oʽ?/09P֜ cҾĕg. $DɶNu Z1nK8ٜ-K%`s B@6W32 .DDf xz= }L"[7[#uPl!X_)J|Lڢ봺OE'Q\̺~w'왅&Ge0W o`~ .*G=+KAwDܸwwvl8PlC%^)6pz+WAƕfSzYVcAZ- 5Kj^.cgwMBw$T}/paܪ-YQg h*^3v577i<13Dqu992:_KL.BK`MD=Pv@i"x߻J=bo詮Nʭ 5QJ$Th9+KV%ig.\wR#ʍjeT?}&om;>weWOy]g !/D//QmTg{Y̻1\ąƾMw*~YsA.3?y?\ uS I4n"R9G'_˺Djv x(E"Y91=2I>q37HY 6>Q̭z [[VHVTYCxq<D>XT62afb~,1+4CA[OVݵC71H܆~ßHjlX׫§ʮHģnY~ b T-mA/|^I(}u;c+|=ۼePC|w{cH-;Z y(!~)rSuI}𤬷xQvQΈ`r`:%G0Sf'cQ5 ˡck3ADf_V/;4)SWa!^?_=FrƏ+e"k)g6B`>1ߟמCt_f1/{0oP8<8 :Se7R:ԫ*]wCޓ X/PV'њFa&<;!5U>/l@O W9n&#L >POv9'Bc!FO(a}7{< jbֺmѺ ^.f #[h}4V->:WP*i׫7P$J] cNLUoĀXBP%1hZgH+7+bUUo#;x TY2Kyl** P%AeKnhwFb,,&JiE).u0#La`Zf7xHmjbR.NmT՚4)`L a١o+À&u2 NRq捶Rс̪'p UFnG|rO^]1h?H'wDԶTQ rzG ?~;Z +(߹\lspTrVaL= BYk,&0 ._3ɧa]~[W\2 Y/%)%.TJ19D;ny \,tc& ǰXNyM$=SpTE >KyGf:O@I\L2ՐB>7&CP|~/ #" h_v9\o&FXs7Ն:T@co{~(tY0|T6r\3 rg\JW͒Ž6r#(-U|[~sf;fТ& d1Yo'ja{@1  ͉ lXg/_3+xp?2~Bj6 kt9'e4D@YCFE^$9IUҎxǮAיeJwYþVSp] ozXe5n/Rı,M 4yrU޷)|_Up)ߵeEZ&aPK:Vxw=d06Nm6>q DJ5!A ;'67_JᇚXܧ Lt] r[ l?wGi 36Bf|)= Hb 8$K(@ ^?éRA`<S{DʾʓAO{fWo+]2nG<'3 TQށyrLkSő)S&hlm@Yvr;GX:ՠFE"jV<]rg͚ƷB:hᣳ򜱹^h1kIUW2NZIUC]%^aZ$D4=!kUiDAb??]>2]iLڼLZbv !>jpk=K&KZj6‹]İtٸbCnyEQhxDIQJq_^=43uZv&cG>F(s\BjdΨDt/V#nMmp`ic4PZ #7Ĝn-O؆7~]~CxNથ7e< O@4j>rR%輲 gǞ,(PS Qȱ%,FVCv'hη\5?d$vP}XUs~Qu{&s[Ti`fgzr(H:v7H 8@LhLC`;eK6 &b&PdfYE@X6MpP\tX6C'#ێ6-)T=@UATK#x--$ׁʓ+Pԍ菌MoVYik6oнۉeB mwy^ 0o*D2Рdp$Q˗;e\#=R/_ ?|ě읞;׮kPYqV ܦ |UFqze=ѝ"$٨1U@*.72ҝXmʓRƅ9CH5jgVxbDaX1 Bh-*LQݱզӸVM9Jɱo50|AB|ʟ)3Qx4TiSmA2flY1ԋΠ?ޝyg1:*D{w曉.TۖdXrG˽th,!f*hXl:~tcjR0T^DOLbJ1Clq?Ҷ2R_0MʉL&N] PA.A6QEƎLlY$wŷzү_Lf>]'q.ySˏv!rl0:ģj{͑e~qc |eRwuow5,qFG %t|ër#,R%4L hdȤSk(?]|RwU^]fE)ɩt/ù2,>~aF28wFdF׬RơO_W}Y䫭B`RUGar:$Qr$'pfE1<>;H^ZմEA3=Q/Qu;'cF˒)W)k 8ТsKtO{?R: QDy2DžV?/8٧՝v 󠎂֝v9i~)q[Ar%ʄ7qx0Ht{V໒2F8h1H!b>hMJ|*;D7SەE9ɞ(,KFtHmVV0'㘠5L^MpPZC!/ ]#3<IҖDe1 y1\{pD>|He ydAX/A:HIRvPtTW&Zd}j죴tj{k8Il ]H-X$B txΏ1odGS"B*) ~f@g)Adڰ-HuHDTw4W蓯ݲxWJXZ\3)Vm&5Oѱn|w σܸЪ$haH<_aF878X{v/EYGp`ͬ"Sw)VR@库^~IxE{=^hyy)Z=qʓȰ~ƹ__20;C*C9LIK7ͅG;J&L o Fܶ@Iuff -@|מY-ԦbH.  s\qܖ֊cpUZvN]6>UrNWD~&y:ӳM/yJ`>>pG3*߰2aFf7Y"I>,Ap,`A.jlClԩ mt(w$AV xUuH$.6A7K?\SK'{:eй;|7]=(c|. Ff $-ࠕ"0lq!.Qڭ(VZv|̍ *짱XQBw .Ffiؙ g7 }.Oհ2:bXL\Vᛒs Z8 qW!? $!6U-+Qi>;W RETUC*bq}hJ v %#eӋKQhdc+U]hu;SldE a5/x1G89a0y.% "3uҜ)sv͹KUGEݥQ~ΈfQ3дGO PHVX]A %!8!}5h;К߹"8PH=(' 8r"v!κ! 58'sNVwQ)l0ðA:j+竽h/#}FdG+5C {6ʸDկMr倞zCkz-8asOܖnNmLehylH8[7_{1)> Ɓ;ŠuB9c_P+e'>rr/xdPE˂"5m|'@c]E`f_N_гz !V?44D^}] |"8Q(x` ?X*'pF)jXG +lQ'N7bu|l}ʒ煑c l͈WK-#@\? EC[Fȝ` ^§W2۹Oy0NiiճGW-&PTfu6(2\d$Ga齶 R5t!2OB關~XAז$y~2VGeRG9x]4ýRHBW?؏5~b}?ڌ~c4TtlH82XH.(n) *CT"skm4YJEpP$Ի8z&JY %jgvڛZu4I~'T; F/n@2)e嶐zV>эd{DBa ,*B3  a>p A{G*ID`nmOP d[azܱw C\K/EkLoOEjÊ&ջID,FC/ٕeZlvI|gs㴹>^Ǹ/ A_D’$'C/]6Rge*Bf=g]n'>? vcg@i'wjR*f11bma Y/FW g:蟣ݕ,F> {34^SR*Zԕswџ풌jCϪZ'[ Γz˧K11ŠaTаElW_W{>3<ʂI 9aaflQ .0M(p{#Cv!ehv~QSnC|SPJB+i|h\M#9H_K;C91bp-$~7ˣ&R8Եy6tVVm 0 YRSɐLPO/`Z`%@!1//|QjGX]T$pHCu]:I*֎!f"Am{:Indq^b\$@ڌBȵxPCRq7#t?oG󝹺ZZk2VJ"uMo *ιُ&-TGeo<@ßQ<rȀkN:_ĺU̐:VWXLd'Iѩr84C&׼nMo}lMN/a CrXW9AM[ .EǩjcX>,4βu<ۡT["W" -+JZ}yy=+5?&V 02!Hw!a ?/=+)³k{.C=Gm,O/OM ;piWvuL"C~2ӄ/֫vRdZ{a?:#]/IZiO[aAU=^(q@4q65w)L |#kE ?<0O*i&eo^hlfISQ]Ĵ0cKvPaͻֵ*~dIW%.2\E=;y({=|dyOuf]"(gr2b s75@*2fcnnCPE3%rps~O;"^U/kh&BMQoIP4T-PLJ1Y4=@hf b={d*۶";/TvseZOЎA#@eE\*wF}8[Sc @fp  8'H|U uNq hϲTy=ôv8×)8x͔0yً:6MKyչn;/oX%2tڧқȢ$G8\g>E,c#X`ӌWZ 32 BnHs-I'ҭw`I q*A;r:3xOw2Zd( M3yf'є#Fjk,? ͭ.a?uGEۉt>>R,-TU1{%X$͏ꭴI GiQƓjNV4KlU%),5.v%VӞv,tE'v|F83`dhGmH1 7DyBОU*vtI'KKQ/I"ŧL3*`?WѪRr*[F5`,41Z(-)ӜO(nzl r5+G'_$vJY3QbvL]a =}Axf~ ]@=s}D`+ZeF`~ ?ŹXۏؐd\eמLAi9.:mKs}TF.E^ ";_eG(qz4E~ƥ &* 8R#YQzE+3 w]%sMߴnLAt0$=vp[@)wj?jgIeۅVY1Ҭ J*L{ \{b Z>A(_({=R\9|2VVlPI~Z~<=f80bF7ml4.$յ";CNڑE"h'hpi8I".d:O%)} P3Ld-א/l|EW&I8OF-Sh }ͦ}5Y6SH .wrc>?ƅ6Wi:1VqZ\Ze7N$z}_~))*MpZs/QayCVe+y`7NB%6@ץAE">LJRS5u{;j!] *G[pĥoDlIpu~ZBnmA8`;PG$$mUʉݼ$7N|}׼8:Sӯd SRÒ7G bn^Ldc§GH$C)BB5_).FʼJ}ŲxV (Ja ފ`\2d$-(3OU]Cã) 3,ݨX`¥@+ȳto GmJٶx1j|OC/btƏ"#$EWT:fdP m 'NftQɺU*膡#i7RRGX$.8Iggk7y2pO9`_Z9B֏l d@m3 Uk$Hp3'E&ezeOыe}S}_-A[a?a TxQՂ$E$Wpԩn8Z!nK*&Li5Y?0].;.DL'z^dxw#\uZQV"tf3B!߽H)]Hc#3 m總OhQ99V ^CțBْ(:~|f >gd>@Un0n]#+~걶('+f2ײ᜹CHcCgXGO+1S޺MTm7˦"QĊjn`-=_P@}W}{7r23jz xWI&FI{' *C]`"C|u,s2neJ^ub؞'E̖Ư% $}p2\ {=-BQ?,dD b,"Ilxl+ VwE~14NvyĂzڤ[/sgqh&]B2Cd 3p|($ +#ܲu+2WWN7^9^5tX aӪD3Kj)Dޞo JdP@01 I:0fٜf~OFjӬk%. n\Q烪SL1] IpbٓfFo7\1KGC`>  };;ԗdTƐkHf.ԧ& #X֢znIsè.]_&~D6يjyg]¥3B+"|'tgjx-Y&Ewwwf+dh0-aj;,G+L!&`@Cy|\f1TR'liMXimTp@ A<C۾0 }x P"⭘ܶc}D c}X.V cg# Xc %wdJBL4<ċ+gw-pY=[$DceÂoԣoq;:u4|ª%ZzCIqC bN9koq Ҙn ,>b5 ikxaC7BF`+ˆ7#}'y]* dV:CZ/)q+jOI45bL-q$( "񑱔2`6鰧 ]2oDD. a*\Zi0k'm𸯰SNজnm ɫL yd%~a&VLjyE@",C&󀛳1]hȍ::5ק dP-wDG>Hm~罺>lELj4ŕs/甸8̇&4!9P&3>ɩ~Fy+; NSbu #pmJw`dudjEth2{n89kQIOrp!惖xJnGXQEMb^]hh2_;XJ6CeQ+ C19#լRW":{ɃXq3 [qCEu@TX{-1ܬQk62FIa5^Ȓmn/'HtDBs$ ?K`Ɋh͙GeOGb -&'tfė+Z+ۡvOg`6z}\R ż0 VoeuKEˍ0/]z4ęb\귛bk KPzG6.pt>vLx3kN[zZU! "q\ib"@ѭH]݀; 3o؟٭NدȘ(#g)kCtQ?[~уEAL $[*_໗u~o5WfbFY:7 Ԉgz"v.?2F4R}^X˽g =TkD Ѝ t`@f͓6U7TwH}uP1nCfq]rIJ‗t-e& $PqĴ m`|QNR朄sGSRKT<ҿFK>5 Ai vҀRRim1b*ktmHL9h@8T]H;rȻEKƑ[uG֞'Jxsd;2ՊFAv*6>tǗ,suj 9ӢSh(q"V\Qi$*%alO}0MIp U9LeA yɂ9:sb,6*[֬iNӂޛl}!^8*+5w3/.w /\_w*yE.g* @|l%x Gz"װ :˧3[qmBM|0.^h|s:=F |QmM"kg@pn{ %?2Lx:uOq +?-=^<R hsb~nOTlyqTfeͣi#CT ʾK:>({4C]ta̶b|*qXd\{U:HNGzkcR@qߦ4Е&CF@}AWFM.u`#K5H@e"5 ¤LEȱ0AYE:_P U}=gd67@s/ k2 srR̪>1}nTΤ j}Y@V ;\a :}lsxp*EhF%ojyR%\nyy`B`Wyz<- F]ˌc?U|FH8c |pk"$T=fUL Ϗ=Lt-( &S\ |XU>/h;ov bl#Cmw qXq:[.&j~転t*3_m(ywjD87e5dxM׍Hw|KOJZa|s^;6gA܉mw;a+k-MЋ# Xz9i;[GBiU.ZYQNJU%|£M'پ_Gj6/Z|o {">hƷQH !NL6G9QPxG Sk7A{FRy`9mӨ %%m":;3{NeՉV]%j3 h^a*-*|aXH}pidI߸)օcS/zD$Hvڱw+-;bے6񲵨H/v7!uFqhN+ _{؛{ÅDZs4˻"`7Ѵ5n4~Y2C[/3 a?=l}M4܃ VK^l@SILpwƟCU?Էԡ p͍Jxg(sVL9]wV juɝ҅K]sPT;;a^Iyo쩁ަ!q;k n{Lb-q9Tf|ϴXk`v@mͮ/?4^_^LkON's>ĥkxІoF@:iφ>!NdbaorlyUPrWc*-UuDE% Rzt`y1QC[pD{>#ig /CnbݎE+EhUj)kf/ +%!1h3L²' -ESD9[jNO6QIXD+gmBDeۺ̣R$vȁnKhof-oۺk6O"֧7Og:.,viOeFFYoԃ+D]}*Y=w; ?^#43!iGÉ%zGu;UԥgLivRC|n|:z&:Q8+Hք/7.-O|v<,">UWYٞAhc@D}_W.Q+n6@8@ ]MG-;͠48炍:\>ݞb5D{4 M<+:z'?{"?=7c<{D UjDr@58lnhA.> |z^}]1"::dl@/.9cyMBm+bn^jJ=փ khF!UQl8CSFF5~@"Y&9{!"3N єjY@(CC%_* .s\9|4i/HrTy/ptÝ9 :X#AYG[H %9]mr %c NmaHvlJEnx6]`+p[/"\5}ȻEQ e AIK!=jIL6H5XsCWC*՟Nu2l(NAI|s-ݦw}Q@A\fp}||ۼNyj|cs+n~r6KW3ϭ)-6UņzZ(NSd7JzemN[PGA҅*U+Euvr).^[+b @x`-Z) ɬl&G Ð`hCYSqb6p]MZ-br% P,L+K[oֆ>ND8K;C,(VpO`wK#ϟu8.B BKX+;k-pbJzMTLMHڍ7JҝnqCN;ְe<_*qذ E"SqnWUXrꯋg 6EEpďiÛNw\{is.N!óoqxg+)BH_d۳?uV2NڥKV fb6-!ſ!CIC=?ذGfXl-fFg۴(kY T Ef^z)lgzȥE {*.x ʲB(R7걗k d ^Y#y9Y?+D$o#SFOXn4BTUkVT36F|.3נIbPhĶR=9@ˢCϡe1AhSW^i#B%ߢ(ef~֣.,ÌKzyj*?F%3_+ܐwTP${DG3柟oܵMV;2,_NE su L2Ҏ,nd P8D [iHS(J9qYŤt~Vi2fg yr;(;Q6`>=}o_el-nk{Q|x-5)0R V.>pωj,?lP$)iӋBI$0YPѥN{*rHduK)cAiUdZK{iD0o+EƦEK 2w*_|f:@ՊM iѤ?K8{zQKmǫ7+_fӛO]o{R_ ]wNκ}CXZ!;7*S9B^[\_dK|S9yGȞߋR `BEysl cj@wci笧Dd5YIM{#N4H~Aez /Lv'Wv4ծcj Lm9pǣ\ɟhڸijz!j7bw1qEk;m&LMGZPxaD{r$ZTrQa_~'u=9 &M8nzT%ucc/KAP^.ku7s^s- t)̅mα U3#oȼ_O H=BvnW]m H8\jSĞ?s+&=) -dTvcyy?Sy6S~d5&eؔ-(>C8 ՘T{9`ٹFu ] ݽ0;x@"|$A\óRa/'9ngyӡF"(VelB.1{$oh=m%wYx߬f_ZIr3Np$((Ed]Q6wH~zea )<+L?9"Q }iaf$bZ!>{ltqH95TW /wMI *eүV2dxPy2,իR5nASAyN@}|8lRn:zK+y5&Ep{i MKZě7i4ͱS쇏$$'w4VSH%`fnEob@X$?)"mB˚vMٍ$5A,/#~{@zt0Ð}nW71fSE =[QJL @ g $\1Hzԝ=.0Hw/ ѸPvEvDKj/|qvYGd@_ 8CRg? ׯJAǙ(_g=@;1}8)6զ <+ `J`֜oGNNCل77bW*QPk0(L=gdEvwKp0!_Ķ)΢ŞkDͺ!ZsHxM._Ćv5oUEI#ulW8Ҵ.a:2;UsyƝ&3$0xҠ}.'TsKlctq [Csr|u9s_&0iY kԮփs/)XcnQi`k,*cWvt)5ezt9j/Tp-E%AMl2?q6*ʟE(x 3/@WN@tW QTb$";ܑgIJb-ш7gu=Jel4&"IۏRtXQQZ2HMVxUTV,\ O# 76%Qiڷ3 ]HvEZO${C] !kϪv 0rgo"*%QLrxOSp`bCF(3h^l/!\aZ'-G{bAGJ$Hy0le }:1so.S=Rn=$ݧgxKx y ҅G#e.a58Dk^ X%eٌC%pkB3Mbʆ[KƊ :,g = Y 'F1kr:W.RLجɧbJCo`E,)7bP׫4tWjdыk`HؕڅR)1@bh|szki1dS#(=sdk͜JH]m^lBq{w Ǒ%+Ē"w- f s%F -ݽ \WuA3ڠ_>:@jG!+  |.*!vP$xDmz{aѲRZ$|?3%ibSfѶ%yc͗O7< MCYl vUGTkrIF 'wͨxQhpryqYR >gi@2A;t4lӻB0= >lQ#[c84| 3I<⽒OӘmFd8Og wBLByiȷHƄ) |G>H>HM*ex+S=RBQzG\A-NሉOh??&Z+Yk+˂g!S6ƌ3B}0W /Kb"ØM&K3'hC]3ލ !k,V'y;7Q93$ن)F㴨xͺJO^1~ҽ^). o^9m x7b^ˏܶ5 ^F h=|SOpE8L{:{2M*SϺ ?>E^3wB" ch\VW N|JLQƘ1[.Ʈ2CX\' DF].%-4sUw )Z _О `ꨱA`=HQ-TULq{ST$yZӮl CH"]^(zPI-5EL<>;Y=zZ]" dhmuȵ@3ĜhٍT=O!IIAZc=łQxZQ*Ȝͭ4;Ŋ؏%ɟ-hw5p{23lv<߀)0Q@Oim㴙vtz4溑g@[_P]Cp(&КٳYU듦H~6WɰU 8C½&nNZsy_^2P A=|}:\B 60*MV3虡,_H e둑AeHr};mlU=z‘y1mRBI |b2\E؊nb%-Ԍj}y3OM&î=pNl5ǂ/ŲSluE7T~zFuM4ּ鶵A|[}/F'1Zڃ0W _,VXOu\b NhJ-Xq]Hw<q\KCB j;05_}il u[fyu73qQSr;5lv!cQ8Ɔ`#)$]H:^#I/9DA(@UtnǗ{x)vX8J0+ LF'l1w'}L(M,@czUg&.cQ`K~ 5B wPu܇qHKUq,]B娀=9AF0䂮*Sj*E >mХbVˍ.O!OmSUI[QNԫ,amyc'9;̪|YraY2k)8ԃ9e[H$(qҳTwhtYX%GtUJ4)NHX\\ȽjMDC`gv_1 MYwGuq&Bfz!*)xtLKAJ߾%ڬ{(ةypi:BR 2dZHyP%rZZ-dk~5|,g)񎅁qvw0Sa| .(C@x*#ܻLqy^!AnMزҠŎSmUGKZ2Q Kl [وGYPN7Aџ"\E͏b縂w"Nv}DJ%~ݧ{EQ2ėoݙi_řwv<HA_V"orSKn䱣Ѡ*T\tEhK)iCk%eKw28=6sm䃡t´Uøt=i"[GwTf甥5&.qSg1*Ȫ-v!4gjA={#~U.TH۵>$Ŏ@ds-RZody.wriMurqVZ,&ot,8KtbXe}wB [s,ZW̚ooR;'fZFfs//Bc,ۈ()A?2_eIqHpͥdKAL򃭆\PD*71l؋܃3bĨdd0%6(J "lnDBΔ)O!G|߆r=>Cϱ4좐(g==8u;=9nDe~VitSkV/?ٝU lTL{$,'yZa\]* ]q&,ݼD+误 C7"Df596υ¾Or6PՅ(!m xJOj)1HD. "kg nڢU ~ CEU ­w* n2hY6]@0]'!+n妉/>bKYZ/+MX.]l T/xJ9)-ARqhߞU@DgsD$\>mƖ"2O砌"%!ӕP?Jy!{&4 |$r}85ׅqMTAI_/٥FVƼl`pQ R7}cc4bf%6 HQl/iN\:DV?H7 bp 1 |ފáw9Q桴l f{A^lS`3n(qКȇDhnoX#:Vqq@ "3ruC e=M J5ފ_a]2Xl+?_VYi:*86%\jÃWw#z5򸇒ůH~G( [ωąJy `B#;.i3w ;VʌՑfh*[] =^I;o}o ֌_ys /DYszwAkՁؾj:DH Řl[{Z Vֱ5öL>vŖ [݌)i͌^Ts5E+PAIw̾=Zl#fcË .|˥Zc M8wov&2tF1Y`z@&rD='hpsSfةRUxcDMƼoSp4mHk\wPyc&r ߙ}.]dő׶hDYE` R*شVMh҅ |JʳCZ7ą\d2p=P-`v6V$9n5-;dzV~H93 B*7ݠԆ 8=m9.={uM?y;~@JB8]5q G I*Tir}٭PH&Ee}k]5R|% N2b{tnwxqՔ`l( EF)ɂiTBg -ڻc@NWw{ `I}aMaGbVĠʘG-ⰸPƹl ~ _VYǓEɷjDr 7dm`7OϟǬgcs뜴Hp $zc,\A5"Y ĵa4(Kޓ<Y&Al˱ tXHH#,Gg A =|ix.꣡׋CpC^֌Ө׿/וFlCP0'n (~0!@(FBX6 ";>4tNR:$(u =0];2GﵲUBfڷ-R txeVboTȅ@1r ?wi/_ȑf*Rۂ1ͩ/'z/^xq`iK]pf\) 8޹|>e۫:IyP[ ><s _}F`oOLXDu嫹db*^E)mJUNh5`brX\C#~7mNbBnNf\LR׹Ib ecГ`;Rݝ@AE_O{wѻ8im "Fu1ZRoY)v{RN .:n:BvӮ{(BFW,m![PrzP2z$=[Nq޲@NCC-',bcέ*b^*Ljyw6[KtFJmxJz3Rh҈K$|WM3ͼ=H;$1!/q}㿨.^[1UdIP%¬X0OU,Ct-p/ Dq O&)w{[u7%  EL$B=*\k \q 3켍|p*FnH~d ^`v1Nc申mp޼q:ڹh 4 B„0,fiGP}YMȨ@Iĵd8?kAYe5PdRoY@:?oIP8R-!~rs--_ŐR^]Ed<.dލj4˖moo< [vぐv26XP5O8mZÒtTu|rb:RdiPG1k!ir(^±WtQ2?d)-F0$?|%tSr^}b PI+3;b5sq3]C8κ@xO$+Wu#9wx/WD޴@qu μ1aUPuhk`"I}cW%%\JMoXBurAP,NY9sQ ?Q QUZN(3 k;C9 󒫪DF>,ko>vUBg镳n$hPhcHra*3ԦoKt7Rezlp9w(Pkug)TAh`6t!iI:lM DX\8e'Uyj~ǻVn(laZ+g$mX LAX_8$z˹F6i.GM#C(Wb,Dǩ~UggZ8 o.?i$qkNM$*/ϝ0ebb۲h61FJ8Iû2IgsW(6á= g}G#t:F:m\v7~_T';_ цCP^?: ڶ\eWMjx 'q"4F­4\PH]?gjJ+Eqaa*kxwf i(1)oRV86ϴ3U6½h6C79w /])_yZu |ڬ=?Oζ^4K!+2|<0c)| v_7ekp/48Ii?&^61{rn<#UXBDf +sÒN|1>1˕Fpq=< 5h% )>11,ZDŽd5k"d_raPs [!iwyEC;u2`j0ƣuqY{洗KR@5XsYͣbaVD=ׁ1};yo˜Uy`3k0> j/f$*zCfRJ BCUd7x~M/bL&! [rF%mX:2R-K<%@f3T(ruzJ1mPqbD)FFio/LjqW.Sobzב~=8Kf 4|"WPd46/ a`Sݑ:йq>OqL]qvUI?~nR-δQ5+;)l;r\)mnʺnV9xN mISɟIɽJ+ >JS<)[N,SZ0as^i`Ai0 ox}Q\JVx*q7UĺjCa@mA ?JC=MكW Rp;k]"s҂h:_u*kPq)o$EMTﯡ{٢`(s(y%2PgGηrI*^ PC 8} aijg'MYz9iBϦb"8{'f&^WM cQsh=1lK2O9,~<^CҬ]Kh$+᧐~dHs JXM,̏S^Sg<;2Rx^#*XBl9ׇ һ٩9kYswXб}^mu:ƹMa] 6̗ .7(*+$OR6ҌoԤ ؗ!99AMQWUꡝ|m|"9nH/+E B"p>O[؝B/Ĵӻ9͡et>+}{G чD0OW6vGqe0Sf2Y? ! {d}L t{Lם-L"{Sen8DC_?A}PpLq ,^cz np>Xhd}lv'IdWX.9Es~u>&9Rr[/ D]ĕߕ Ko؆vRKE)`oZ^ͪ"oi.R;N-_p W8ިI1cjat]X̅7s\2ީXnnɊ,1#pSH_x V<)VDFk #PvU+pT;}WG\ϯ;uB$ ߀``}JD}a.ptXh8ٯY3|9?rL(?,͌ėB򬤟)@xiD3ђR jFZĂe@B ٞ?fn[yqV1g#ͲVFxlN|C=QAtRt^6zW?Yֱm\ڷEs_t{E+2w6&-WざS06˙1#. ytYwwy{O͓rk1E:42n{䉄!>s(ܮB 2)˚& pSm !I Zzk+ǵ硩?xGP%)Fq&ug#wcE'U\Z\6Pl{Ơ(Oy}%9&j!O 8pv[_eٚw"R+Ok $]1E@sEe5@qi¨#a u %5D4~eLl:[+UmI̗{J%- < *i%,!yxVUnh%U\Y 7!+$Ss}j4)NDͮfcrK"\̩V=3`:},Zr\2[дEe2J:UZSf2nU`o<Mj - #Nf-4\g2K5#<&k]=hN S1ߓӿ&6ݸw8`&6)a=!Sޠ\nzn$[T '*̊'z'$3LB4Ds6 Ik`ï \xõ bdWxkW\'fǭ-dؼL҅Q'4r|K 4@U& n3:P \&Мj#\r2A._93\Vi. ܲ6'^=d *N&zgŲ23o"<+ |kJE22f?Ss$n{=WEcmH<%1E2&?;O"vPF'RoEaLW#[^tH16$Ckr~`r ~#gDA/mV(+c=tKKG]^8<9 lBYBҘ85RUsa+mtM`͛c 3&|Ib_E6=L ]<3XO"9xvWfeKNCxI6}׭f1g2@tRfm\BKV06+3j;m C,!14e sN'~ W.*iDD.oO6Ki!/8\T8J f{w8Or:M4C$0Jzn\É[ۢi5KrP`ySFG@Xs.mۄH Db%8Iz8z&f*Łx='YY$'*U +i P_*cR`‹E- j/{v?>b9~Ec׏}/7$"rT dkܐƞTn?!31S>&YAriL!qB"Hh\V )t㽤_8k& (s{)D*>Neev ߃&m3-'R_ُn˥hS%|m1l|vp+ ׀qRƈs@˥`)66cp=cr)f▶n`]֫;ig0~ CVP(5{`Z۪ƉB!*9d}qΨ,MBH)ĥq8a>3A& lFKENq ӜT"Y+oӤF~侀(HU/Dk)LKERVr TQ~ldB9Dr{~Q0e%5y4.hoXø>-ʭ4ԁ(n/ B C9IY*"$H$.+o4!h7;8C34ow<zF-mxufYKjx㸆 ё6I˟f2ۚbLMyXK_!E9jA-tbW~_p^TJsZe& ^tڌD402\ɽe-p`K nd{uHS Ζ3$ -?gV잷ZXI[Wœ ;Dbdzё=v'ԅ(k]tq"$7Q̚fQ:KjECcB^X߂h>X4FPg 6tfq2U Ex =:!Q(ȑq:]/{(ܧP_w*Rx!KÑ1Bp ˭i&V3!wnT(OG[|7r{h2i ȓσW}qnlμ^:7]1 tI83 ^M@ |:Q =U܁PoOw, ~NK,JbO*{. 0?~@ur|K;X߄=@ݱo C2|UP蠈-ҟ ݓiT\%w [Fw|U< ϦjA*?mDv;[|5|ҭsN`oW`d?oKx [vLAQn1Nrʰ`3< ff$HrE>(~kJ|?Aq9uqጎ97_3e.}Uްu5?H֒Na(EeN=fG3˴&kjJ wk֘\vpV*!WnX:-̩s)t ֐[tjׅZ_[eJDYI̓%7"ĘƟ  ɟQ'ɧ!@v۬}8myՃ1d!]l3! ֽBxf?|^ 5BKQbur'h]P}.ōVMjk7e V1H,ڨ'=%S~YAnz*$@V ʲOw ;T<̗KoAMb"YkizkɅn+t WDjnv ٶ!5N? C~2Т#-y*i 5@MOa~.թ-^C};+C)18!Fw -&bM[jjxqdAҫ9w0fENyuIDlbjhݓyO2S2l;je݈Quy,fܟS)+Gϡ oQ"yŵ;.RIi;@ms#>JM׿԰`? _GjLaM3 ,5Yu?|6'C. $$77AGkZmlMX+1XG![fK3j옂\ٻK~$կx$)pc-fb }$>` *pmwy0_bCkR!R>nlZc3I.r\5\HDpf0BBM,M^[x"?9c2vZ_]s.hXpQğ^>z?'{+ 2r{JA@X&D,Ф)~~zי֟i$T{.vZ>{aEg{kJ"]!GZoP-]9 ulv?#姄ލcOk5=kANy-|:GfTZ(uH)L9h (ЖbQQ\r](܋!5é"SRpp'oSyS g DٌO u΂)9aH2!sL\kK4vQZ^ӣO?0)ĒBzZTҬO+0!U99E2elpJ" %`Y6xOZ J4'" z{Oy2p;{֓HE.U5RMCRuf&t=m -J{TKD91x;^{9g8 olJI&a3Sk]L(ksfו$7 vp4M^0DcG!knЦk!diA[c-vXMiv:6> 2B˧)ʎ}ϧP3ԋeՙA^oIѽp_ѢB4ܑWi9lxEW ]jN{|$&ɷ:wsZXi(D)>G" jD!8h _vbd"0DU&-|)hܫQc,^+DS*1w (/e{{ J]#~vE _?N+Ō.rhԙƕ Œw=͟N Z )cX_K(]hl/pMXoV-'ziZtf|P0|܁a)0V::x=)BFRϰŌEZ &"L. ewkX-Lj&=M%0[ eER[4rQ8j*17g̪/Lc\E0re/&M'|ɷh[ 1WXtW-̄R~˩4lAQ[NPb+woJd͞ʰivu$ hw_UMybn&8M`\;U*UhoW& 4 Oc6,yVg!S#d>tCe9\l!9^k Zzu4&LEA6?>0hj|yu/t+W đ+UL`!sFl݆`waH Drsg>h~\%֖ *WiCD%@Xn89aL%NZv rny/TnUMw2L)(&q"͔Cq9>O",0׺Dp}wm|FG x+>0Mf7Ij>2kњ0fBZ&*;U8&7W~@"( [*o=֬M:(]iZJfanuu#/|ќfSq NLR;eCP컽V\chD\j,OM=Tdq= FP9M J1nW6!VgLoYu챏?W9XQjM=4vDrAGEE STGY"k&M-aJPλd N1ŘWRQl:&}]Uh(cVe>ºkj60n,SI~]W|'Ɛݳ5jd/q$=IJFQzMT(*IHn@{rF0[|#O.QAo9/?ziuRoJ\IZ`yG' 5o=Fգ58^q)ÜdǙ?Z}|}J|BCJe(ӗxWp&kmo?D^V\0V`)$xdeL;/8 F]kLv:wt2 Ute| ~(rݘxK[}Pr ;ŏcUem 1e§J#[RVP6fB}Ix+N\[vNe˵('wOpt<roRqAy23fۦ )NLpb7K½,UZ:p+7]f/]~¬IГ`7#a R15䋋&=\P]:?h48UsT#AP _t $cxߜV#!mEBvu&Ӑ^`5ݥt8Ms\dҹ=<ɳUg ʄInt8xhC>S!i=j-R%d$GAgM[m:"ڎCJ8qRE-RѾp' FXv.@^=?tұIq$FߌX@w ډKAHe䈲 q?}F{ڇ!B&B@ O:2Ϯ B`14xDTVq9y¼ WJQ"ޤRM3{mooNϻk%n9T6mnnWpb(a9?9@;,UIok%[v(Lc` kryTtڳ qkkɃFFEt-M1\Yfhz-Vmdw0EnmP( 5J1;j;K^se: `Kd(ytpq>K}͡nxd"@ 1U6Wt5(ux΁ʺ;丑ܧ#]&ZMxD"'x x#܏wGZcĕZFep9"Ǜ8A2P:&Sa|&TՐ;#"fU=O#XŘ2j+-a'sAc.KȏliudWD \/:{ p;bV9 >˛O_J>RKsR8Yqjl~Փ7A0w*J3AkI+i=UZw3"JHV wdQL QouVqE(&$:9 LD>gO m2|؆*)Fb̭[ո!X 4/yY!m8)@#>@*xC~g7h|-j+uJ lD(VeMp; 肣WbpwPXxz R뗣j992a)y`l">0A B<%q|X/@BàH:l7"ڹu#ڳl_|n~zJUn|$݌˯e8}?eٌWo'+nF@Md~7 qKbjO xFhXΫ/nSÖ nu"z'Ց Y{zݷ@&< GߥT͝rIRGg񓖏VPzݚ!أ`e9TX4F6SGh1 .'`_N`נKwrK9vò E4T'd4:!Cθ%I?+TU!sU#|c .os߅W$d,|*;պvi쯛/}#:.!,ҲմV0S3K9=ˢ OQ(OJNwS69;48(H9d/ZҢNyUTDH;|C+K!5ӟ,Ɋd~,]p}CI&˘FuѸ-@=!$iwv;wKh@:1 3.}zHohɲX>omqoH w8Vۃ|iXa[1]qc<ȟ-Cט"X(]ߦ}_n+B Ƅ;~ |XQpBN<;z>NmL*nQluJ_IzQrn'i:bT dik~Cl[Q a*3>ua|.F+X+tӦHX:ʐ/5|;8Sv_c#AUYS׹4U㷰XޠM ofQ=z@Y2N2\94(QΙe*Y&C4L}:H:ʤ!UqZNx*Bν ]d c  Wi].%XNٰjm/ 3Fmg!<{~kO_;0߂uz :Ua_Vv rg)s^u #i࢞yO 5J"Ȃwh aR R泊VTVtug~s_Y.b\.FNMGƮ۪AJYEg(Mxqܑ d{pcPВ4H@|]ޱNP~$pt8 a:p )dL(:8zEjj/W6@04ݷ:cx_$sYQ6BiO 4٥tm-<_&ܺ" F% ҄@@QQ^t6ɍ&3?߬]Wυڽgmpw}\%r!|5+HCǮD~h{_22qO(L<%WXwJ>"\ӕI1( ڧ'T8o`Z Mayd2D]POEjω1q}9o`a}o2r1?.D'{sWX$?XWDrX{4t~/۵Z(zZFY , "2RY|H|J((qS0 Vo+(g}l<%vqTH?m1d%"XqThzz8R 4h68}M# *3iavwe:2Ej`7z@T8~3ڠ:DJPИwhTޙ/5*1;?9A"Z!1R- SKb{D+L33z!ÝkA[C[_px)>6n$0J\6]e/v>lCmOjAMҚv|]m;BALJAf/:E*8H\+JdpF\mr)-;oc Xߎm[ u,o 4EMIqMnpk)Σ 5'$>b`kU>@N F>!?;&DDoInLJB=xk-c\^uM0oZ5>nKdξ I<0T}f/oH0+J*Hzf~ijf;n"zϨg]xfL(g4=Ky8@H0D3O傴55i{ز~rC:tjǒoE!GkrpZb;M$HD "m J`Hlҹ)kJgL v*~gλBu >%ב`wk101}I)&h/Y\r 7V|'gkˤN;bUq5^kvȂFKLcEWs~]FAt0DfT:I"_ lHShL.aъmp/|W*“(`9ԋ^VMMFԈ/  ĝ0 [zn3/VRX4 IGo ձibx ]F^YyHźZ ')J3IjRMg]8DziJc3dp ^'WeF  L}$$'D J ), 'Ãض֡~ذϯ^`|&q0M#>[Fp=ۄ(I 2{n8C8Lb{qH1w"Q0}DHL-O(ku#7+A SYp-t t{s PB )r GN8@.<2Q@=AKx٥9 >I $wiPs.dgy_D覣~kJ&^crAȣzYqTwFp5O vR[ I }]0TR᠁;87Yw IOa}ڗZhi_4#$n A2oťf  0n36&O6+)5/ ^a[k eUY r" [""K'Y .1luh+WHcm:sTwg%b{_’1;V‚.N0GIQ\ZH߀NJjV%ps-y&"ÇcK~F!Msa`;w'YHБJKl7C F*_Cy6)z0\vwg*Dmf 0})ՙvUyyo&a;Hs*,1YuY^7.IhcReРsO=gj)?4Bf_hp8qc7Go,]5uK֦SQz.3z/`*ĭ8q~ǡ5[c["64 Bi _dldtYqÑU6n )[;tNjrrur4;.H/*jI[V~\ѡ%FY1m_ 씷 BLp(DnqS)o8 ֘;]{I G HW!.ű!u^Iwec#ʺt肹SOT! N6I9yREFCs(S`Cݮ;~YJ91ehQEːwQ)_-R!{gO$^G!iP/4ΰlNO9'PaQ5# *{>ǣ}+`A)8mPe~=߰h|(k88}G<#Ts  (*g t[9^?FQ~9fe5l))z7ɫp̀)}@ojDx94%V+ x t~滨gM$t敦ʈDN]}U :ܭڵq2fUƏc>JYgO}"p}  (dRa~_Wt3jWy=S%6M7R\QMFUH~%SbP!'ܪ1.) ׵T|s$JDU+MH! '"&8nT+"N=i5xԲXx9WNϸQx~tk NcteAbrMcעAOOm/'Zݥ5BO:df Q*A`K|}Sn ywM΁EC+؈lMti?&sZ;}\5#SϿV0b]4W\(qn@{t`7Qzun?)>̘Sy-16@: Üw ËrGq]ePnE&UЊ僭":9>O΢ɯ~|Frʌ] -343)w51tI 1Hm(Nr2T1)?sȆGGwecZþ:PG:'&1/VG(K:  hӚ%lu@>۩¢V(,_?#눢Apt.,ܨ.>ԋS HtK$SM|؎6rvğvq{ 5OpuV]MsGa|9N\:,#5[RdE/<)gl^=)TYakzpqW(z,kH{< aFX6%0Y9[&!湯GP ^W JCP*IDt/bjS>z6*9&(LXe&PV6/o|M/x4?g29hɗ[fݔ `MWA75k-μݶ+Bs􀬮ĀOUT֓lֲ2eY·?.Eg{ Y=g(q} 0R/|3C_ D:LXwX+[ bqjOͮ4kQZ6¡nŚD2㱂w{_&+m͕~7: }0e !Y,_6 Uz*HpB4-zZ̑{fwWM17~OQlM<_k KsĎj7EBi3T!3]W5/=<ʹH|hr4i㝶k6UeȊ f#ֶYza0Z(r* ߕROIceUA)w_A*^5<68ι<$M\>}%֚hq%E]PC/Դ_Y7S*cAdOᥢFKkjmJ\Ht=~,p|8pޟwqI[J|C".: ;cfM=%M]=.nJlVZk;Bic;35zqaIscU: C7XldtT/rÞO8]7 S&H }éW$!m^1pYASt<%(-MDNi R?1,koruhУULE@a%El'zNwvɋ蜃-. L\j3`;D'n{`Y·v 'J ?̡94TP hsq!Ox_L Vy̪BtQE9'FZ-N.Mpxg(1(m},EzR8B#NꦲPe02{9p+3m1/z.lum{gn"j @K|:9y sSk<à|~hJa#n3Oȼ@}y}_ej"q-!I z[?[}|֜xB5B( Í_ӪmvBb_ZvTnƝ'Y~c"! 20f-jЃ?N (%>ȉC&j3sEzmVY^akEX>/~Ӻ\J`P(hǒ5-\^NOq92Eۨ*dgy՘*[Je+ 6gn W'1d1 (kG/L.&}>gAA"~{U-- sDϡC͈l23=QuFz5#βd'b@V\'l^X=2=ѷ4Z$L` Lz tPfs}u'.Q䗐EL 9Gxʐ\_3ӄ}賤ΩUY%a.{10lݽh-w}u 9<͟+R:M_v?*U{mN b1۹ HMsJʵy@\F =^<^DD\cNUbf=h^ĀBG^;*80!*ƖmF}'jp̷Y&asA.r늆H/&{p E/ڤLR2H2^zAHE, J8pi~Pj{[/$kn T)ЂydD'#Ό]Gm#3S4v &e)`\dʉM>h4?0oA64ׄޓG;5|[ eqѯ.֏hm|.ҍ.d?hIw2qΘqA3U:D5?N`Lۄ3on_ũ}i 5b Tڙ_dV"RalFH?Gn Y5 tLQsWE87szh$omn7i=OyRj&WwAAn>[pA3=H(x{2LZ.N$EAOXR^xق\7Eưa`9zqy2 ~٢)HX3ХXE; WBB{|,UDsQt`}0K=fI<Jx_VQ>/ ~YԒ-=% LXP32SWŤտ0F|/0dyg@(M;24QLANE4ŀ2.b#jeqpaXw+чﷅsiHbByp;}rD=TA^[TP=o/+aԴ%= Ic(\Ӷ{'Ʈ.jt(7v[ `l,ʫq@JqM'j %û/,Pz`FB^LR`,mENRt'ŮC] _JʭLw7 DRpRqEH%Al?k*P# 㷺ϘP>k55sq.cOyZfK_ k9"lcaw=Z ÄǪ1@=v@м`44*Mu^(iv \_Ւ1A&@D `CDrm_Dp˜c[FYx;ҡ)`VX/eCT 6D.IHR n>) ; eR|#(s]˖ԫ^BDpWJ f{z}qFZ`NhP{%l9q8|{(/&ɴ&_!>αa>.-v8mn7. Ƨ+<1QtwʈzΗm#`q&3Evb)BkL?]%*ꂢmL3p}oxpHU)ʿ0?ƤG\sSR`bkNBC [/%g=5׃?YE׀yo#sk/X-!_?F߾"@ud#F/1Z؀2^y}B&?7Pgf:f{3ϴD{̻߽K[mPJ828L@HёN˕W]byWÇ8it4XԘ|C2|cƬHWi>e6 fGk>.)*֙^'N{9v*=Asݫʇ!9+L6&[ ./Aa~X^kw TPc<b]kWV482s#1xZQX_M}rRB3xI:pxC%9TXbNlP@sOҽadȝ;k#[}^(iFz9ӵ5Bԛ+JtAAk%N+V 3퉴pc=ՇOth,[{Bh| e'cWz$lB5lUhufQ\[Lkܟ4}N 4pwLtvZaVT99ƞGF;8\ E,HBRrzXJ+|:>kk'YBI\=b;}K6#vYeY|NN+ЉHcWGtlb=Y҄K2vP"X Ww\T0x#bc:NtVJs瘅 QԘmEH9nڋPpd0/\)qhDERu֒10$v8 O] +tiuR`gt~ G⭘0hZvY~;6# XfRJ%]k HҜzndE>o,>cQo u_l1kD9:oM,퀦lF uυ]kYVDVgp%Q5ХkKUvAfFЦdLuX2~SZk"†ꏐKb49їҎʇb}Rf KyF7{O;XDœ;RJeK 9{%Μw.7+$wE 1rhvl5zPQdli0P~ =ImH뷉:M<uƳ"8H2ŒDJEuŕL@ڦQEo{'Dl`?'NF8 {#I-9,(/8i֤\ɺ%5g5 "A)Jb;+[q=H J$]:I#^DAo+S=6.ziBq3aX@StXr#LS gaxn;R~PHV.U1(J\h\i v5 -5bK+p' #St#z6v~CJrrJy;+g* Ka6oǡųrc`Gk>KF=o 6݉1@/.gO vz&bk$v`r:a>ۗDF7T.W7) a@ :X|~)K9 b2G@Wy]t T;--7r-3}w_@kՆ6l3j |2T?8 ㇣4^fRo]Ym4V, Yf)@v¬>QV=hQc;;yG#vkRa4QJߏWi'v ٟXqҌP'7%y~JǴQSq$d^:NВOFͼH@[NT]!sW>3e-8tHUepXn\ U7b nH.9b O~ _⍈tuwS!O g&4dkW#O<ȳsK|x\=i6R۵M.d|պ6( Yu$npFö;۝dCd]nϠg!8j.vN7^Hb?j!م-[pH_}l3>!{&Y=+ IXZpMUf<ܢ- Q&M%}-$y򡄰lBdMxKw幥6$)la9TlJ\VThaS~B_qa3Ъxܠ5ιݩ2,j&~$#SN1훒_O%;d$e@X$(:6X7 [ZۨD7c ܠʼ&T8ɒ8[\3P몰A[8-(A'.;Y9ڪS!d :6 0 mk Nԗ7:R T727:'NC<4g.yv^8thtwmM@4߼b( -9F[vY7a'5[Ut 3k#(C8PI'%=Rv5j( -K8IH\#Z,jKq8bÍJj"{II䔪!|I U4 ojWZu 2(Y# n-L(s|2d V*GDcM3Q s4xV$1Q'_ ښ)阷qfuڻbgQuum=) /FӐ| ]rHuv#D0p}?h6-_eb,cٕ6B؟2w=Z}eY0 So%i\)d#Gb2ML1q~C!9ZmTM4l*t–Bg33(?_J@WBzϪq*<*:ᮜ"!ú0}IxB;rEEtQu,* O<fa׬X)ox /iz|cmy{ SpcHgi/-+XM{O֘N4*D¤[Vƫn]RNrlv#&y@\E BƻE$ ƋOC&l,ʱH+);bH/~].qdqkACcC{6Lt/3cV,B8#2'8u\A^rA| CG-'X%Q0%'Ti-h[lJdk2sJJ1$ lɯm5T6} }@TAgUxe+HH6@[Khg+(Honʷ!gSmƹhULx+@lɊ*r*:1-ۗDy;x&'w&,ׄ-5 J3%דw5B@'=ט{̛#o^c|DOAd(Zf%7;ӡ\}gGI{>,:a)͡& gk}ȘOóXHB={rیX+T$b*Ck:ʐzyrfZ_+Xװm]D@(Cm'+! HC&c_㓟 5Ɏa TYu6w3E+ = 7Juv螪z7`GX})&fwШ{8ӦZ{ }'- #j&5ゝF91&N^!\TğiVx jyjADl-W Ec,ܾ;\u lٔƆ]:5$xpl@<$R[-:}TԖgu^pЖ=$TL6|mk}8Ѻ lV46)KFk Jw{WpS3lGp//;[c[C>ȷeN\r_sҳ:j_ˮXLic ^cv ?T1Vs.XVqUN(a!9G~5(>;c#]rRS`,g ;B5&uâKm|)jϫ5XL>A6,\KpP\V˰ExcyK&d rw=Hl{Z##x^PjR(Qvl{s">Ab̟(囮e|dA{o٪J͵mg%T* ru\M}I5('0ǺY9<K\0-)k;Rr +Vt%::'G?ԠD+aku]czI߮E@Ԝt܊ҭ7d k_ w`J;'Uv5zGcp׬R[ViLD־Y 9Cݘ _7"-ɭJc c{>\0ܤQ=9^F'#f>#>=S ޳VԌ[a|rʶ0"H3ܥ͹j֧zs5 ]]-.wbR@6fLT# sB3ɣ2uf&)9=~KV#>t&41Hs^ڢIBqYٽrhJm$Wúy$_[1wwݭѕTqϸ@e_b!TE]b݄#|=ƁU5Xl2bĜ~k珻"C$CD}ufWQėRQG֔w Ɔ37CEޟHjο րKLGsbqETtP4G^RͅI Hd̷w_VhN74a U"ҞoMHe4|cFKC#=](wܰbolu=Y{~khF- V}8ܫb q&/?Hz'~u "^% 6ޫ(eHؕ0t'_LjŕMη1bgi&dhN:F~~+PS\*ޱaԪ ,="ࢷ`/ȡF(4X[/j֖?B ZBc*}m${Y{o?E@OK[ _hBtFfo6.Q:x_?^YJ8*cπ0'1)ؼ ӁeYT@xi ugȦwy~JAVK5Bp7t`g.gXM9s=CQ_8]%:ޚ:CRn{s:*7@kL;w#ΩT=L $y%ͻ.LyK ~Gl31 B;7U?w<嚒'>anfYP,`㩞-ʮ(盱=Vm0֓伒,m;r:Jjj>Z+9k;|Rl98'!ikcLW~,#L{=9I-VZU Dt:Ě!KUMw*C*Yp+\VƋܴ`LZw$)Ɏo}S}߫B$;1)MTg""SAӣ̷uiA,,UA} T0QdıCbJ̒0# $F5EFN!8}Ѯ9:' wvy#)T0Tzgw!񻺚VB}2|Qm 1${t"Ɋ'cIl먺ӸӦljH;@\v͈fD$8pͮLUV˰xR),N)@Kpœp۬ i]3B4_$vy2!S-5up us$Tߛэy!GAˮG=>r_<"sz4 R :)4iF^{cJfbj5cۈv;7D,+B=-$%"hzҡ(Β-4Y)Q}XEnt:F;ơ̌: ;HwTS ҹNvC4 %E _>~1 -i}CK~g1yod_唴pg+ѽcMqXs+l~a335oQ]~/`fz*Jn gT-dOE# ո^YU^a8(yEULzaP Zyh&^O`?6*U&bbgD)VYONvh ա\aD"2* ؔ6U GZK vtaLscf.SG˾;G㰎gy )!" $fő*G>+(^ͭڷV-\$^Wd,]rfJgLNx"(% Ay;[r|~Il ™xl=?%U٘71ެoꃖ.}~*Sz:#>Cm> Z]6"h1E{ gipbJı5u,uTl@h٬c{ŎZJW+ʤ2 i3cXx]h_7jmlȼg Txʾ֥`_qmxC+&duGr>Yt]|UY'e}ĸy;'&gH6;*nOS]Գ`ZrPqjg K+qXJm6;C)Y1iF jQpZ`qѠ /ťN2ܡ0=W<+mQQckGbl27px|C +Pz=!4hb#BH[U^IAʮ8s:uXO#6p|ve/Zg+)o.Ә85C[]ơɆ+i CSXˁ^(+0;OBӳ%\ǁ^,eu,ze Fn8(B[HT:h@!+I>9a B@n KhLUq- T_a^#Ԙm-oũ",@A|ZȖ.aWW /^7\Ycז'皶lMC5]E)ӝ['zc0 roy>viHy[_ Cy◊V\H -Bi<׈}kpnؖ,NzDn*FhjQ{=⿨q}KuJF3hDctnZu LN"n`GR㈎TZ^ #L~GAyAJ+1`ok`Ԇ!? қnQGFSs2>Vju$f!k@lOZ OGH񲝹oNtڛJXw6**CSkwB']vP-w|-<h&6 \O湹Ŀ(D_id1cab=H&lG \_0`@8YL6Dp+ ˁ$>\flCkPf}iB ŋ:r9:FLzfuF%H^A׹lgq_QŲ0c_Gci}_||$$?;cc{;JX[sQ:&?qgUme=lCc|0m|mDE:;[5MlPCg¶CaJ\bG+=M2cJn]?._pS64?37h'czZ*]3^3<L#}H!: B1#g=J.&8}dxb$}a\[fs1q3So+9 х=W #.LNnebKg]Ѱ{T L{;j[0Į7 ,Egs2 6(YZlpuKTaCX 9ZBW%zb'2`>e{7\}?6_N)WkZ,2E!g&> <1C&)$~lF]' W6*WO:')bM[LEY ͅqSq\*RS 3/,1-{c PxqWH{5Eeji`*K f6N$ ެݏ;y00\ iR*s# [Ny@aOe!+ z$({EC8b$l$3'X5x9Kg9O@tE2-vuBSӥ Ň,iğweH,ˎA  G!!r5:,4sކt`xqXo~JՋL+-bg %heuA\QvQTJv̯AF,熶ɡiK$ Ylp_wGYOLB.3$_%dH$^,'t.teUŞ<G|Yf qޔ] H!T<)Wya _DOPMsoG8I|1jȟq ܪ#L.XnOoOҙ@+8@I5#Mbo|O`',枍C3,E(;=Bi,;o0yT8>w5֮MBi'4&_?PXEZpϻS˃򞁈j#4?< M.j;Z:@5/b\8AN 놬u3I^xvnS\qͭZY.4pY sȌM >Yc%%|`c_EPb[BF)B's*ۘfϛpkŀNC)S5i[LIo+F+О!|Ԝ\Bc i5B+lo qDN`@f0Fpg[ C~p#[@0=Տd]$^fՃg/[<{GF-ƙ3:KKfqۉTTQգkD+@{pw^ɟ:9sf%VS "4j"*oɷ-'\we15 DT9{-WC)-)>qE6AȠc:]Tƹ,vPF[껓eaܬl̫[]LCj.+tmL' ԰j?tP`Exbp\ -o"Hr_CY-omSZ/ N7$׆p@iXbqh;gdnetiJ,Dy],>5[I|Dm5'7q7^R0Z3Hۡb! o,:8&1,%HYGu@cӶzay7/o5eFhxڷT LA/$Pχ*7).*k CW-CLXjl%LAb sf|lKO>JX"*Xu5;bt0faXua3 \SN5 E^T.5)Ȕˑoo&JI4tH.ᇵ[>MZ*:R}ƤyRꃷjHa4ٚ-T@pKL9?&v= v{rf0!>PV<6=SMF[O4, 0[< YڕZE)L1qEʦ1 7tg\ 'TYC+~ǒ^ޝJ_pEyP|hbe?"Nwӿ=&R!plK 8OrUSuˍ͇TsR=gӈv_#sQڵt\>NG-9>r"Ǘ8:[־0-:hp"CK8<EyF+Yh3 ژFtd`&ox0q\OPz F~sq G(|V'B|lg!?M!hj4ԭ2N 0"2[8W'*&%uxAZ߈DH2i3t2Qd Y^HSO1x,6#!6.Կ S2{_DքZ1[*Hq?*HISȊKO%Zf}G=B@1Mr0~7}VY]e?4 -`s-P%gȽR Ggt<+ԉ)2'H/I›ٷU;2~JB<G7{{|ZF3Lu4H\w_o lCR]H+Ap̙Kǹ[)3"V]lI ?DQVBQBoH0d㲢"/,nX_C4n UX93_ajU2wTOB#&g9ƒ!Eܡ q6n qrʢND 1c]IJ;AGCpl1:1xl3s{I>al!,-̠V?RG8 v؛ni .Kgg\wmS>K"eepl:J)@u%t̫I 7;»ER+s`$fz,I2~tWo:n  A0gZgSn@FB-N%r#!^1D2衻 ) ;L9Ḥz#t&d*[ x]Lh Ј"FKIv+wW.&*Цn:Օ-S8bmk֍p=zftHF!v%sntD1EJTp|trIeT-Wԁ|@[\xY}\/ ,>3J' +~_[JPCIXu("~$9B5-3@vg%JB9ƨwڥ`;l+4>ݰIԩNܯڦSv^uv6ҵIfw%)Y |iQHnsxmZزNc RSqx7)gl,TlF67pJE\ha}o2c{lOrjd.AUo\!/I׵qS 9n! cx QD?24_h#k``0m =AF?sޖ?a:opҰH ; H(7R 3v$ѴT7.sn0SG突.UzsP*=lڍ:?{Y>6 ݈u:PSwX؎d'\7Nu[S/RN`|5mzCjhiSa-[5B U\ *NhԯѪIk9[Ø6 d(Ӆv1.|?#CY >D>I{Iktkn (Τa 2DPpܦ\2>yB+eJu(4_fٜc BV Oq}*wFzE6yؒħJ'.%%G-]Eߍ~zbɹtUC&6fիnr4CF4c7jAǓ>ܾJDƕ7wR!u׹[܉xJ-o13$wZ9SYATZuէIlEgFo9Y>m-k xJZ@M$ĉ U5)S[OhUr֮8$+|?;z㯱3/NB{a9 ]XxVqpy0?;rL/ŋ= JTN>D;/$oR1YL;@VB?[j}9W슉779?;w׹,":[P╝tK-OemN8?u_n". m_j-іE[f4Gb+8VS%XN[5*#ULGDЅNR޺枵=15 .3#v&T`ϸ,a[3s\G DFB-$3&!pk*m^nYn=J,h(1 1i`[|WJ_Fa5 hZ~90z(>eoo_TK[A뢏I1?%!efXB8bRxz$ `_.Ix]AѯžMFܠ]()Ɠ^%k3MRos0urJG4 D M(Btyxj[?T$v@F4ZZLſX+ sʒ &ߌr'W*mFI-ZmR(4zlh[_61'?!;$aMHj 'wc`yJs^&?)8=/_ Z.*Z\ge>ԢfNϭ>K&Q<{ӌ'd {T pwZ Juݮ0`&Gn2֊XќͻByia<"9*_^AD*C;H^9W2`?Zp- 뉨8H3G%[_e}0w2'BnovBȩjeW#hKV6D%|&~f'_1$lnc=V\֯+b۳>DmwοZ<ԭhCZ!=yFP3d >*",4$f07h>X^Er^"FbcS\"iN_cq(ukvz~DdN~OfTQaoO<(T)U-{}3$;'oPr3Z{rف?3}H;/k62k=,RHf~#GzH+շ)ZR2T Q2`QӥrnX\-CRx]tMqcƍlk痷Z k~HII+rGR8?$b b*䢎x]_\z]]j+&o<2p]< }{8aCw1瀱' pI4}FETc{Pm 5:JsO>%O?_ՃK7^F [䔹VCh񤳃_nݥ |=tՄTB#ŝkAG]ѡ.c &?Kn ֔w~NBS,У{,uv($gB_ ~9 CH#.,Dv;< p]B+3Q/F&pbr2^Ԁ0 Ee|49=ߢSGߣAJ3]u74tauj\x1Xo (jd D̊6!TQDU`7=|B"Y)}CR^d\x_HDŽa5LeNg+U uTm+axv6vO TFC K{-$ҏQ#*yDyb^~z0Y^3v\=B_Vt$W mG HtO[zThʞ`~t4&&0L%zL4%>tMLiJ<`oAF8[wSyeMT};kYCJqc{n"#QxS%P?Șdnګ]8:l*!>r@+V2kIbqFd_ D͖ӻk+6JCtO:v#B{K;pQmV$9;S\f6쎞}%E!pɝAlK줨LhYǮQ'YΤ] *[Cv9ߖ̐/J>Lv)W&'K8F64"fg2BΖbJZq=Vi, J260O4Ni?j[L⶘fY&ۈbNл).u+$$IN@JkZ}.)g7V@l;~@2oт=QiF}c3x'U`imL?G>NDT>Yx;Lch"6hwHt} dZSIci;_XmZSp, <+L= l+(8r% -CMoħibhe9<7*=Q/ x1ACg50r̗̜"24;Nխ\r,.GPO(gjC|8o[ȑR)x\*v-I\^OS+*X^g[ߛf/9,c(_EäU;,6 ;?֚߾P\ ܹ *Z[xMٞ5^bl7&*rQe4~sFQ X} ԛ _jVQ@,߃obzЉ&BY`wY;)0Gute~8DdmVN46Q[D58 xGonޘ[ RF;vcI6NR?؆P">PH`33kLw{7=B]g(+TlxxxtN 5lBSWLjZm?YX80M71!OW״ڭ_`U\0N]IYT"C/aoH ZHHc6~1^NP@1i.hb}>vH޼c^XqW~7j=aȥ ֯ KS4>f~5WNιrbiKb!{ tci#~݅Hw"A|d8b#`Y@3`0yAsO9X[LH_$<ۄ7 XlN/.;$s@4svp E3)~ɾ빎BJ e:p*)L4}5J<|8G/ 1x' N)e >2稡)R%O8)~D[7Jq}?tyѡEcV(T_Hf%&0{rU=|#&^XH;pc[!Yy(xj-?)&\/m!OXfǬx@oJ4yQV:V)w} VclmXhNMyW뺓O@t!: MbY \1O\{7ֈǰ'WSO]r̺sL"WdWQd3z^DbׇAo+е1裹#VkU|r6QiF+2B&!FΙ6p>Z6y$D5>E=<%p&rBk:ARA 1/UC #~$r^#9 :n"к6░Ƈ#-f6Niͦ?ʓLKĽRi"3,ѩxä)~uOFOpbSO ȴ:aslY=yhƋG(_li `u nq&#4\1[ r#V(5 ̺!]lt c5>ef;@6Zb ͵J77HjnakoJ8~,jCJ[H[Ղ/ \^V@ɣ\RqwvԘ7Y Nr[iDWwy λ^ŷFR"W.ja~k`6 j+eB`zn\ɛF3{.픋PeKAu8Io6f8U쁢Ŗ{RS%jƺn‘h$Rw ,UdlpSI,LNϨOr smj"  qw]7YW;Iޟ* ,E{vY _yg~9jxm1r˷ssh b2@f3a["f_5&la9%aҳ,"VfV"g5g j *6#?M*XAaZ-09RriGZb<?i/z!Wdr?󠎁\z9 <}g3XثzqN̶$dٚTd 0OlD@VF!:1{.)7v Ò0ap_Q~T) Q0pX5GYZJ[ȱ\i{dP4<MC1J gpn=;7IR](wϞRl&_=9ѯ(^ F*aCNܭKlI%S3<L6)&.6ݙk&=,;d=˵b'HU6p|ĒhZ⅒%,wkH!5(Sݛ,PqE:Xdl,OGUО§SHly`jx 0)j@zH 9/6pD-~ sxwkgq|;1rL7d7K BaUWv$2g"=½@$Y[$U;Vjf)턴\ReXfJǬC}LƜfk XӢ, H^^XDu]nxSeDκOlb^ Bs6QnOg5j'y-WC?.@,怕=2ƈv(Ifp'uN,Lzݾp]O3p*C_e}졲lpkHMYg/hz Mk2tTЖ50|Y! DEH-;znx}E-x,?Llq>:Aqӥ衲L|dFsGYȬ=>u!L}/EuaҬ`xd-4BY~JZq/.ҀͻWLZϹj ϩS-@T􀛿t ]ph:-v.‹t0Ėⶋٗ_4_x|3ioz[Jg5ZN)RފHN I.;2 5!j?1/Ih>PQQ撎[m;ٷpOJrS {Op$P5ڏ\Ֆ,E+jA؞{}\M5F^h}ovbwתP^ <;ʖ GЕW3JkE)HipV2(zK48bnA~9\mSBL8[6ƛ9Bm⭳xU㮀A;)N5"2n3cX;SNZPyAU`s'Ӕܔ^UAn.uf<-jn4>ޅ\g`{%*}⥹N8".)}AD ,SYP`|7A^$D4MLN1/(UWʋ\=gB"&yJKzR/r'x&bI2*'uLrBӤ׹|1s%^ZK Y›4;VMөW3l3z>owQ=3B \xg`>e♨@L'ҝe|ֽSɰ@BR"a5M;m#]~tEh Ʉp"m#Ya:w9$Kr<:l/U,Y㿺k37Sa 1I ϑ7b\˖!͡w4֦:cABKþC7e8U)*͎2[ Ĥ?h!>\UcD Ao z2;' l֏FL3$3'mnyicOc֤M_w>!D٩.#sJēzԘiƧ u 9=0Mv'Um/$vIL ܢbC1*%0<g4eQJzÉ*2Nzi*/7=wJh㔐27RB/DIcK`|i9,<0V_N֩: )m.=" 3ˡX Z"^%B('H8Cl9vXl&iسƚ0 @Xc?Kpޛ9 [ Jf/{NWgNH"UXc[@qs8yi2{ÁpYrGlaa2 #w-G<` Kouyk~V M!QD1RgڟNn%.1ۘvj#HL¶3(0[1zR0,QVhY9hav@rEi;ӓ Fi"ilJqCl ycx/tsR`*3;~.gs!{#eySXY:M"971/I'Q'Jٞ+}w:0>>+&p>؄kͶU*_^4- *.1,cQ:u[_r\l_I."mhuA&9CfoRżf~Dӟx\hu~-\S.Xu&HxS10^yd(,"m>u 93#20B"qhFeBDiN2ecdvpXA"KLoXͽY$z5HS`Wl!9֋-G_2xNsd  |ڏ(c;XAlҦۦ#`ٿʅ8 GlE͑ VSJi(k -ܴM04*'KFܭ[P'mt,޽L@A9_-uwdp% h-.f4$XN{Qb2T,2A7s!׌jȸ具2 >Wx9FW UЛH62[\Vzȸm|Үp^Qx旰QvN`rXͫy.;RhD Z2k Gq%}Ŧo\1rvV+ peJ=0썏ATkt?H;AwUTFd[pyt3΂W/i'N2D6ڞ!T:po /60?d=%83 ,BY,?~Q$sF<_;_sl%ȩn_<*68^%z۶ڮ4mP 0;l̉fzs8%$n&91|p>T\YŔe*KcӀA:!4ɱ;Y^XDe18 ϨD 4jG"8+s'VgrLNQ wo" .Lb/81>sY{ck iL]a8k tqЅp& 1RYGG^Džvo\ >(l!GJ|L-o20^8 Q%6a`]w^dR[TF$Co*xEcNPƄ5Өb<5?V|bvQ"QIy\a"&t?l4]2`'SX |m_걶 -A^èg h8NˎVޝR{%l>h^/" :IVCe!_-Yh?5 7umuB@O7~RU©L*gRkik0ݮqA1jv 3|W Y"[aʌ檶P ]\r_je<ȳ79g@k3U\(j.Ma"hTA:#k._x♕ݖy]| a13l0# |ᢡ I?MP9M}JKd% Nň4 @1 ,j?]Nj7M~|;|l.%lЙ^Wi91y*33!ѿQGsU̹ *G\8hA˟VA(08fۍ)mUܩ䋉 ߬IfxQ6x>L5n;ꢏ ?e~6^f$oۙf!}JdTcHj*̈́ۻ(x)L)e4L »zpanHXY] 9ap"{d4i('r6I{`$;f }(Tz[{͈\Ǿ=|UޮTgf,U cM|4ki+ JN7X>&3mхL5*G 'Fj뼷XL έpv*KHF8DCLYrcS ]LOdL)=@ P2RI4f z7LD;WǕbt.WO4H8a^xLfđYzԚ4\J$N6 >C:g! |sT!3S%5ݘ&T3(mCOM?Z0ddžDkہHւ{BՂF^)ݖٝ+ض s-ϔJZ{"/*KUX(Nt0񘈨ro)yخzڎ::@nGeV;wQiysY7ՕBWg +Lhj@0Pgel"p 5s0JMz)*xa"A ik~66AZ"CՋsLT3Sg NjdЍlM zFCY12{wm? rD EEɲ@Z9C4܂\7! k6Ʃrz5c YzӭUegi}p']ɜ_ _1k[1g=g]L%w8E`3GhIimGM={ҷj69ӴBbΞWhd_.c5"ÀZ ƹTisz^i sٲJFGXq E*0yA'vfƠYB &SXCkoY 3]|F+"R #Y}J0X|h$4nϹHV$`SvS]gQ;ڮ\\pH ng&lE&=J|} Ѿڣ(P;0*bٳ(@ٗVYr?"_`n;M5gIU+)jf^3a5@» .{8uW"˫!sf' 6o"!r<4pi]蚾[AS.lCsGhG#߁]*ESIiAn܉aDj;~{磔lO_~HLG؆$pZ;#Qk; Di28|%Mr:?C E )͑XHȸp*0ᎋ%7hWe^/0O5|9havS&-F)cNd;qB#8`76?' k/S1tӴ[{?ߌ~= IT-LFYYS:Oyy/ +A&iF͈msI48or}pĽ3H @}8*/Sk.if`M$EeiœܓY5i$I}YH8Zib;,Vëќ;~%"ORibuDU%>B x2== 2Iܤ̥Rw3ЍM@/0 e  7mVBvٔjtE{FhNf="Erٴr!_\<ti{#BM61+"{P>"7Ҵ(k0L}W@O$?$[+; &`GOPum^4!=L5<̼ {}ӌiZn;Z aͬAeP3Rdye~P1IRqF܇9:iX[໌#OzQ!}x)2GGnTňgz/I8)/ٟETk$pN\S>uLSj+l`6825ix+XcOxe] :0Z"5e[]OlSe B+ JTN_PM$"g/EwPt%g<Ud 푧'x3sLSqfZM36`3|l?eږlw"!m ݐL,JʞoW C3܊&Ix,:TZVӞ {•1{1K^QiyFԀ\ r,Y10++4ve|283#;f LwC݌K3yBf8mQثt|g?h5_Xs-?tLw!^ `q 3l"k)Ӡ@a pJ -ny7{(aJJ$<$@#f Xˏ-6-K[R{ ~[*`HΠ@"CP;2yq k0DV^5Y:¸G$q?້2A/#2USǧ}c.!bzee%e Hu7dT(];]l٭sni$p]&`xۆ('HW=dc`GR>yܨ5E;lΤ9Y>O|N%[R^ sdH;_0pJ{үˆ ,\)0"5q3=QD`+~oוY*LD`Mt$F1׼|jIP\۲ԍ?8Rں7daz"bl~bRf/?Kp ō Z3 q:JjY5I>xD`i'Sf``+;ەWԨF)_d.$McGWĞLdkOWܠ-?MkB&<q8 1;>~4"MEQjknQՔT^@zk)l\D@ma;`tW$A1VyD-tY"@{j(rXr cl^drZi}o##.ţq5/ Z۫|~^m-p9r"QG]8r9 w'd#5ޜӱaǤerW.2&]+ġtDx ӡ1 NDwłZ4B6b0<ğQG_WnwǻB;5b$7'7h[ut UPj{tbkʜ$0L-&h1r:#kgCn-xj3y./bLf4([4&WrK;cL\ZёS~A&2w'IC"@qjVyF^AߞTVG(xnL^䤘ҫZ1$jebٶ(Czjn0E=? fǥ<w\ Fvs$G=-ŵ6"㯡 { c-$8UA?lT@Z(&.ih]/X7 1V/UP2e2/6+SGH {k 3ڀ..(qv$a3}M%#IM5Q |0SL%@(c0x)dh̎7=Sc6-3%KEm7uo$N'%NRB;@/;IUPy \+ْJዘ3UoDfw5ԣtpfl`Hܕ]||gSWA^bܱg62h}[X/72A* HA?iKTt>z A`}m ; 7$>bLwɢ%Y}g72oZrRH`bX})fbV},KljF9Gx_ƜZHCwN0E @§:-q*^ƚ1Iiau7h]ttR0r88 `%Ǐur:T""Uz/=o.EHQ)bBIv\rƹz ub+:\`.i3E~t^DAFF A((7#)Mzc7;JeuR߹::Nbե?T@&\4H7\ >l<\Թeb`{_P+"b.B[puռjVh+*S`0` vA" ׇ5ļ$@w$7S=gLBx]gtM{VabvBzACgP`0161B:!yDEY":ЮPdZC4[9YVf@{w%H/h@ F"xA "ʺ˜OZW]~ԇ.IEſ0.ʥ)mbu 3:͐i(Qή+Cֱr .'~X8+΄&dƺhy*yH_3=90Nl(-+`cP0jTo(l!oY9Q%=xn('5=pK!h0X)q`ǚD0Mow2?VzIppC7Q*u */e֡ <|!4r= qvڊG#f Y]lk\Ye^ +E޽drGzt'Rȁn x/ؙ2ɧBAaLsBb&8+?C$^jO{&2F h O=Th -f%E>JWsĤPJT iYU=1nr>.IbVxD67P78A觼:}D{Z#7t d-`$?}[ Od+sY>gsO@ J .FY`Fkŕ}gn>T^hA?{4'm!Q Fީity`Fd@ 6#G;475).,-U%zL,𒃎"\~tL%y*-}w][N="} {̺9h{9S^lR,6i+f=PsE|e8lkн_6\fi+O4CKuSdL:1 F-AySbH+)%Dw^Aqxћ *%jϥߚrQjLY隇 .;sĴ] Vś|)tEIuiؐ.5"ٝ%G߹:JvL5ƅca$`]#vHK0= S GJ$0N[YSȉqޑ eD@nap7܄5Jt z? NBGEvj6yL4UA]E*?/;F< XݫF=5' 82 z+i}`((n[8b;n @a~{"q?E{Q} nRÈ5BU*oEH2{AY;,u7wt,Xy FDDL½A5{p ԟH8DWya5 ۛ=N9ӒOD4L,Snm2 "[mU)kD.hg]:z]88G+|vm xtU`+R6,=ҳR$Y +{h8ЪB ?m,L-&TԞ϶]WX&{,?=X /^h5sL2_Øܑ$s ӟxcuHP6x=y=?U5T4j6 %}WYfܶm609 g$F%9Q`HNLC1"V1[m*BOV9&%lUE>lA|aLhFC*=`1ߘ"` D^@kG(q}sV:=.DAmŗԻԚi(2~3 7;K~But"Xr]s_ҏ x& BWXvd@*u\)'[c.q 51ј-j{D`;+#/DCx1>'y% *sV8d;qvJxOjPy!+ww=Sûz/h͓6YIƐ0PAkUoJ* Q`m CEWwL:χDVM1s:d麼/Y4xz MJLx$kc+U4t7{Y[j=XaZzc˘;!lOK:tmU˲[FfIDּd+khVaQgc>ʾw%4lHj7^nk͏W g=*@25yf2 U|Zҥ7pgCn˧o Bi=q-m(LVMF;#)ΟRƮ^RaibʁƜne"9%>+E5\^*oM 0*l)D) =%O<&JIqU;BF-8kԵh$U$#/CriBk0cm/s!qn']!ck"-cʥhv5dZk^lÁ^tJ&%^a  Xxo龄ӌaң:Zq>\+j6ڗY&tG#s\kGiì7٠Ǩctai86l!$DeN,k vZ ܈!AŜkc_==T)hX-R踋:*{ٹKQOE{Yz{2:Q,O|UlP ;?0oJI @e{ǻP1*JZIYyL)CDGlsZp&!7 $a1q$Wn^,V[h"g+<;8zOabx݀FU!Z).84da"u"$Bӡ/:U^*;$_cLoxi w2߰MFZ jͥ m9yjU6 eu(yÓI=X`sveJy ʹۄ`FRB_$*L_ btYs [ D z:Lf|g%8HZ*J>ٻ i%(Л\Шq#Eċ%( ٪Qg0S Woq$ u%+ۀ"V2"4JFBf ք-,Œ bLYm&`}0x; $nfC(81<jR=̝qjU!\mmaAsENOD㮧}䀚JSWG՚B [ uqqR%ԁen+y]sB*X]|!םᬝA~Yj\wP[m%?.?YzM疧IP͵U](w$Veٱ(y#GR-N?٥ہ_S{ӕWplr(ڊ?MTW[lUO.Vm%&ixn4Էlٖxyv$ȖI%g{,._.ɁZ$gK=h'W[EM$E@$hFN#T[I`  G, Pb0e~cm넾mr@Zd s~fYQŰ,>~0.¿RȺ_Zl$lP 쟽ouE75β^?:!֐uDfuqE;N1GE/^1@{o^J~IMl$3?#%aG͌dg(L{ޅswxk qȱ]S8ƊU91䀔ü#jhD6[ d})gRLQ*%%}r< KT]濘η?kiXWoA&k`f'I#_Q!W>n)2%|s] +6YVvjQ&l0˷v]R/zx/R>;cV%ZQs1'dyUU3l5·/}Ů3ޔ9$0}ͪx!agF+k ˛y1:h?&`~uبeGWJ KO¤+Uki%gi`:Sl+;7e쵲ɢvl2ц;<('$W"W8ү{Wz}WDLqwhe|gL툀u PK]L(|Q0!w|tD<8e"jqڥq=&P..y[Oޙx.[(6#^s-,2JJGLuʘ?yX2\L;m_4`L c/;#-)ί/ɯ6 ª#8xKFKĢ"-Bt8m8Q*t)@,$i,">Juշ]6 c7qN-+D7JCӴtV)$5G2pcpTb̀<Ȕ AlR3a%"L9:iL>p"Oizj-ԩP\(viQpTQ"ٸ`h >+\_]9 mb&<'2 "di3"BV88k}K%K? < u8gI;]HŐ^jQډZ"(nJ\};aH]Io{ Tc `E,I~|XE;-ό*J`.ؿbho!daA2?' >&W`b$TҖXe Ïu<zA`>>CF@0 CT[#tle3Iƃ*4=P\Dr':FH,@*RJI<_#,ijAFkE BX,\[h׍ølsr*qC5Ad_+상L(8v=?u0ں苇J}qJҒD *b~i_l7f ǭ&" 7Ebj6|%f)Wp&ac/gaк9]% u+ffye>"d0 ! IIVdRfMy/įtNBp`j߫IB(ǔt(BAuc#yכl$(h{[j-Ui])5p`pr/?ˬ%i:x+ %`RmV3JU#Q!R_؇)L*TŌZhkȃ\d/oz'$7Ac =/ԼN]mka`̛fBJ!"Ėc97_yŸ ˊt~p`nEKok^`0ܟ*\Iαr~gzB^;a4>\-4PeUl /:&D/bon@1T7ZZ_/_ʷRZA'=Ԧi>*cx|;t Y )ٽqޫKkAa$30q"$-︔cqkW("[nP~_fpm;as8lɸZs6'!+-n{1Q"je.Ъev◿wM7YoSNrZTXk5yoO޻mtU9&U7/, waxs9Z>@OO彺Ӱ3nuXePN22GAv7w4N5q~*nDt=^XNwAK'5k9/Td ;Z9ı|hfZm*ٰ2)]cM͡I6ܞIŌA.<-RYtmEDwDH{(B'UMUJeWW2Z>{| s m$KIGB Ϲ(>'`L1EBEَtkœuz89$~~_Ȃ\:A*ZJƒ J~i ,̦yav+v>Ty#3#ĠϘset4z+p[k<ږ^ P 4P^xce쿭^1(z"ho{$=kЪyqȹ/X?mݟQ겾O)wBMm F<6J2KzIQVR?S-DP0ÏtmxGE0d`T~vn{@_c& E×78-%|1?kK' |2aܥw!?lT0sGc=R!jsMZCM\قӀbO}=ws_Z䠎OF0dg@gr0p)5 >"X-X+3s% q=MU dfnTQCZ~hdNxrW\-FbxΗ`BD'V2݃Oѝ)RΙ^(>c @#AhX* p )p=F "4NU kOST6;l<`Igc=Ů~lj0p:I)[DmH iSZ砞tʸa[Vgjb#C2鍘qikXX3sfO*gڗ`5kae)Jަ=v@suwgKG(@vUw%pCJ+G |݊yvnMKx=XMAm$Zl.8M}7e|Ήj遑ϦCxJ誩e(ՇN#uUW/o~a!EK9ʻ=q ?_wp悯"3(BۍGׄGNOKR}bDu<@v8J~򫧛aMU V_ۏ\<:GY t="hsI8|p>Us/$7|ȳ?a}(lz{H>? k̈́zyyWԎ&lo:tM'0$<@hYPq 2)&KCm1K0ɨwky]O0nCPVA8$BWiS.b*PJ6',>IKDNd*%*cvXC.Eױ (m9ָG9튥oߑ*&]o@pqŽRmlۃzt%PeխY uxM2z|Ϡ{9awW_}2uctI2ݰU5!S֑ e=rVcr_ Ex<"v}FWnc!~ÿBH*Ji@]R&YJ wo  *_ԩiV$' ct.E"t=UElLĉ+wXjhA6"z݈T`az$XJ[3+, Ҵ\5yFxip󦤮:UjyXRUl 6QUDh>{^83D:p RKФÝftBy$}b,i3%[,_8Żk4I!05|Y*4I<xNYR˼sUĴ.TW l;#/(8,QirQդYV7I@saňԴ{{wO_nuzv(,!saf*?-~ /*{0U(D%^^0Ҙ̵I~uKrL~Ih0}L{!E]j#oXjjW2ojՋog)2jꝄ 0550>jH o]w\mQ]b8"s̗q\\S?95 LݖRԑY;rN1#4w1f|+jM$ĦhSE@,9'{GxQr XO d$onӛIu@mM߇oG9{]D#ٞ6E@ƅk^>Y*V,Z/.a6T*$e ڔޓ aS\@9u;b6!ˠǏ+kߤRhю$gwp߷azG\׫P s0jwJXF:΢0 x$E&odsp$&CY0l*˻{(Ve! % Zŗ]:FWE1 2!nFIF~Z *3b-& _IDY9-Ҁ)мnZ{,wmVt-&~DՆ0,Gt|"oKg SXgzIeF+ x?О[GƧ}y߇ 5໳v+H_P:M_vmYJ!27uAgDBέܩ_UyP>a|&t^l/opj&sW"q)Yi 2q uxqE~6yX[b6lS; R.GIٻ}"҇[ s5|Z6By?m^3ڞ^@f70鉃W׽(qBQ @%SU˸uhRl;&}T헚Q^"?[ -]7H34OG覧s1}3G&OѮ۲ywEZ n1 f Zs2wmY~6-!>j:UiVœPh˃eu5f93='=<8TT:[iP6aG1ؿvϷ7~6`w04h!Ek0W}B--ǣXqq"%j&#G64tOݳ‰㸘uGMYJ\uN`P _8ନeV_Wzf]NT@LiU# F & C4Z[gY"qgUn3^JPp+D21),)6^(}`c < {Bӗv H/TAT䗅7ܩƂŔ.9mͱ-]v!I0vċϼARhP {1ѯ[l4A[7w$H,PCkwybϒ1nf^&5¨cR ˃[.~*—1IfЗVД>LCO>YoW(!Ϸ!$EH<8̡?@p f"trNK2뉻kZjGi^M `[XT-]u0SQbH ӦxH*3iF "KnPG= lLdT ,h_ &eҜyJ˄ß?LwnFxe_^ Iۇ/xU n}fTNPKb/??iTvms 2} 9 O@-č(qУ>"/b˺Ci%ko~,kر7h=C3 D RH!57NQ*KӰ!{6}&,aۏXg,l<3 # BWz!=)5_<]Iq LG-q3bJ2y_JWZМnk$^(5:&| nr4}۷'{KK鶠Q%֒QNua2E IwWº@K K﹩t~g_} 7+. [t0Dim m0\/ wJRg=grG4jNݵ?K%,8?+ȔQ #5ǎ} TeOnp1kz~FC܀D0Z ,VV#cWUҾ_-ŊSxhO O-*Iʭ*l]Oa(4{<~vZ2|,ζ޸TcC"ȢLx)GQp~- wp]cNTlz!eβ[cJ%"Juph%xɳwJiᬸ /@}qf,ߙk] w*PeYpĩl ^Oũ"!|[O/ 2(+ za,~:({5rw?d,ZR3F8v?0&sn<\YFURalpnG oiD<<_,tۥ$[AwUXM\Ac6[J%b.I=>2T3bߞM}/ g]2&D©jhg!X1bAvŀ.6dǠW6tQ)\2Vz'! v5Ys^ „16PuM3'R,ڣ0z]=zӶi.`0꠳\MT,_w~hU9ۊq20pWE%S'U_Dť>Ӎmet6a#0W1('zLc"(]nbsMoBߖS`uK @'+Znr8Q_%<]=NN+־i卫;? ^r xEZ o@ލ!5&y.Hލ5E F[zJ6&(+2\Oz |v m$|"6^pI-{y6%KVf+VxPڤtD=3RϴS@C+qY؎a6ƒ`0c4GKbD~U;cz@,#g, b*Cn|/8ۍl&4dM R*ztA!=nb"LmvaޥѝU9D|Q:JXdg9QB]9 vFu4 _f~U~,6@ U3_xkffЍH ZpSX0t.荫wP3War"c첕m6Ip0yx ;**ncd+,[ :&ϭAg-_\sirQDhqp%cӡ?:@IpO# 1pJuR*UwvL2vL,<]XiSE[&MS}tZjd|%4qG>`[G̱>"a&ܓ+q㋛ dJQ ںQ`Ų?橹~ߣi%b>op}moK OAsy~d:ԼU4dKdA-~ Q%}[`C0EYiik+r\<"_%B \)jߟag3QI&Q|Ɯ,e'0W_y`Ag2׋Kgq,r2rFIPxYT~+=-s7P*o rHZyaN35oh&|,KPﳬ/h>o6kԈ`P65W)Uk nѯv9¿vkb L.m1<܉^fkfc jIl~MX{HYlöd ne:=slm}4g NMk>lJó1 soc;U=?ж6 ne;A8У -dE0۵ۣ6~ɻ0 LNVr~U=?Uu +o;5j'D&=KOFibd )ՠ3@cUra̘U ت##g G d 1P/!NkjS_])$(L*|M_gnҔKȞng~]]ySzxev|qZhu&T-CAcY^r }1 ((zHjg[,|iLE/ s@Q?*IУnPifۀْS*BZpSxݓ\pX7.%Qgr’sHm##f;~$( ĸ FΙZFZ܍'׻NPG彐N*l % ,Y0\HxLKAkwp!LjBVQ_ɟ|1jѧyY[9 6Gw--&w}KuW&0C n]l<4Cߤ7(S 5pqL;^{2A;СXU c>,f[$Dݢ *53< a {mmӶޟs^㳱wK-"Rr[g%#i,m)GcSKMUu]w5{sYv3T$1,7Pp@#A_Mґ;;]rPG@W;8octچH4⑖D"-hA2[b~3ՂMc @|y%cΖ6:32:`@~2qY7'5(/(|IzyܤHz\ k)s$rc D·H(Dleיo!9= yI09n)~D ,>csa%䃻Lfo2 PIXwGxTX"P.2F3KBcIv(.4@W|$ eMDxUb˴MtbAZ*tVrT2e"wkd"rmJsA_ŻPo]Xw[C|pnCJ^L`rM9^;fܫ^wX*0gweaRk2mfV esH@Za^xөZL` "oɏt` D `Z\R?ù̷ ,j5 ?=,v;)N:[1\ʫ~Hh?IѵtM{xp뤧ёM^״ƎLU#03"|ͿLyKrgk[)'ܒf//Z8svp_ղk4Ó$V 8\)K oO5 n6ቿqg/h;]쐑Q_2߰[.m]_L.L|^݃b( MPfDO]tj?hvc<2'9E $E b!l3 u@: b]l{.?>w8\8` xeS&=6CaUc4B9N^TNgpuEU֤CPq**P4kh4OK4ܢ(rK~>Rp⭊zH]ryf+ 5e|f3䥵ǽ؟țE`2TCIԳU}.O[(G?=Hf= wC!HӬeOL?! tt鿽CPݰteMtEp,',͝(ZJнIk gR5D $h6~[isAR;ʷ!YYV=0LL.=``A&W)UY1$ +iI2>}<)%9CRɐPsLe:UCeHr,WAb ^yŷ`C!Q;16j-Kp'''jqE aZx1nl8]tO|j50J71'Y(E?4%$q~I%,x43CY L{D)f(kH  % vmIZ.996>jT=XjSe.먮كV1KWoF00u5#QوB@2聊vo_}J` ˟q.5$vMt*" b1Ux"תwgե)6>e⮗&]j  ҘĦz2{~uYw7%M0d5ͮnRaimj0Dn@%8c g XlND#MwO'$ΊqmLH8j_$b-754%TR^ɲsoP(ƀh\oP>򁗀~"P7@؂x|O[vvDhV,z x,l:ÄYۚzG+1N0*P(*j0Ι|* y s7x 3#U7; %,s^h5ݦ|~+ KroTZ`xaOf4Ru]h߯ZlYK,NJa<שw\ ņ}ۄ󒍌=&/#6(& YeD&,O/ij>p)?J*}c \JN'9 qno&h@BG.*!l|3;5FOLOPʳ3 ޽I(}ZIbS]% Z qYf fށYT] *mXk=~-2o7[>`K Fī?6_2 7 9,֞bFza<_)U;@$iV{ 7TVz9o:4~+  4cf)+:ODr VWq_KJ~fR-S# aWs^T߷TaE;,3}eCUlS^ۋ籔&v~Ns b7Ԅ4>I)x^Ʒ/щ'ܾ~c '%1J ̰6gHWoBUdWe5 H?2 LT,dn 64#7r/:dh cFh] Yb/Kg>;,P$RƠł x^9PoxBXmSb]H1@FG R;V}m{&„ApQ%_4BdtHia_)tB}bw^$|V_f@ST/mRT<KB\jNN|OTqK CKXjڒ~B5@]"Ș++߷7{5րs5W ,;r j\EMO 3ҏL\@/[ȶ .^L LuE( ai 2hpPx7@${MZ_sȨ#J3IPZscg)Ԁ.Y%, 6Ԏ("31҃ྫ~E1(hr~ߞ/ɡߺn.dG*nA^sVr&tYS8eS%} 1A5P[yVLV!3]͙QoDQA\gX.s78Bmx<_ Os0/ŭz#0qtrΏް`Ɯ͸|tS־+їcm%6!VGjBD h}V"] +|i ᢔ`'a .PM횤[S'3!.xk dr?2t226mP"{aF`F\Ɯw"l07ȔޯL3kMmrA:CJ7>bjNG~͞؁5qEq5>KlNg[<0h.F|!Is8/Eρ$\ CF:m \ixhaKCYhO$ؽ39Mw* -KVDHiED' R]ȝD'#Tz } rЯ?S\9%UwF YeXINzWn"Upk6.%J^ 2!`om.aXi~)W1T,{Om% +B09 <)+* Jo>k(EC\Ό#6G-,9<TG۲˪ηu혁[Zf ,Ze 6r"Ve .t?m'rqk׽=7Sl.[.փm~axO=h'd!>WcR*i?䴀{?xJy+NA<(ZodHc+TeJ.9?pVTU4`ׇf&j1,m$a)on D:][xAHxq\õU5@R4uRCDeDӇ+Bfs%=: V[m7W-ۍ"fBj_EaR#w J/X"_ߍ): C]IݬMKg=b0eq+ Bb.g^0n6;} >Gj!:XI$D*vn1%xEC]1EZ?Q6\Ȃ-HmDtjƲwbQxG䘮pN~aVJLNd$w4A+e[fGV?z*Ԙ.eDu %T Ͻ1:?DA"&ZE j0n&h# O(pc#99Az4G*Ƿ魓>{4Eܩш;3V_*kƇsrRqo.|@EY0'Oi~.t f;*k;8G%I}}g·Je{Bx6{5Lo=6~`CK.]mhauga |Uhy 4.eDuWFdvwٻk3KȪtͶ&P?\r PdrW)PGw?=7(] ٱ2 AƄsWf8:d2RMljx=Sѫ Q<>9\^Mh*3Xeڲ3pM{́tPÅb*Ԋ1ǢY@Մo| >~.8FAȾ \mR [[iJt&@@*c/z{2uA1J5u\f-{\0 C0+\pghN"^z*uyEwu%A_٫R 9BN^!?x:ܣl"}6`NxH>"f̚ʫGEE|:.NYMܱ!ix()6f@ˮa)Ea~n<`] ?f#̓1)n92lجeD'1 K?$Axt!2(md8Պd{jEH %+M Q*;xKR 3d0޾6ʓZtb3ajrlq%bS'&~S+mW75Ln7x#Icj?1*44-TEO+ P`{4|n ([#P*Bu EG:II(6ҲWܦM`P CdE#SYOϰ~ͿOidv`1y詀h(6w~۳_7pj~ Ê;? 3~0E)M9«@bvb@\uv #+!~$1ߕ.lSPG=un'o*QW5FTJA+ P*0N).%a [ƫ.ix|2n&CYTT>WYJp3U@]CИE GIO43gS(k'2`9EjV% 8B-;2Ċ6-"rc}R;<i[Y/9},pĴdhb4tcfbS!1[ { `t#%>CEhg@m/(rU>nXoElbb3vKj,}:tYWSrp6o K;J jtgo-PQt&6)zgZVhY$Kp 閞I@ 6Hu8ltZfK,rSq`9ܶZۺ/kgݛpx: rϚdk%G㧗+ۜ% W% Px— kj7 ]n6I7\`\"x@M DÁbJ,<Ӥr'  ĕow;@4cco(kj_Sxc4ױ޶_;g(vqK܋Ap u>+R6lM)3[Bs7<QbP7|İ3 Qxu".\M] ]kk<㫴CZNgI ľH!>l_II$H-X2&S)(u/U$܀shp1H<>Rlx? }{ձDsh#7b`eVX xf8zH; (wF 'mnC*_ [L.qb`uŠdI@}Nj9#nDq:VyZmn2^%z+j+.fm(u7"ۑ*\5Tjbc+490<@#\Kz>-Z(1n* y!r3ɬJwȱod !z")S8y׳Z7T=ۢAj͒ulyNFZD:'J0x$)BP)nawF]1DtU6nЍ#w诜uON'8t+B29{>Z! kxPhPn+i(pg泐i M-87m0h335U}T ,jaU1G$$CНfA0\ g{&0@xpY2[,ԋWw&U Ɵcş;FXI2(g0CyvU"K=ĥvy^vNF"U{6 F(] zv h '={Z~l -ĪMGIkƿ yYM _ B=XbgZnG*~K) ޵ފ |ܨgk9M0ZUڙZ!!ٜW- y:f ާFZ;ž,v v9} F>BIfu+-7q.x^y".HFeV•\Feg(4,A1%~=X؄';U ]*țʼڙLB$}U$G;y!|ZOcwn.Tu5ٝ=] Ŀruh&D[F&7/!]b8hGFV8OKGN9G`Gv4?h!󓮛PXINM_zy1K-EV ȝ}4 EAPvr^pQls@[B$U<:_m8('Q]"`{x+RzrJ*"CsugX?f׽*+O|;y Y\p3&oH̓MZPE0UX*JQCAzO< * Nt^6HkYTg@ u'B:gB[:/ ;"9~0.URL ƹ )+|G'(:Z> B$6ۃ+u-}eںX+̎\cͪCUBoyj, cRjBɋekaA[]qRX!gGHݫuP HD?tNI]v%nh;N;: T tvNcy!vS>Y0lNI2,/r+nWҲW "YIܚU][jeςu.TҳX4VbځoitPxb.PBXD;|G[&:?0y<>]YDS%T N_)TJs[f3C~ȣ,pi->j@I8ȧLѨ?e p,q1OWU{a=#y]$@Vpp+LnnCnfjӘ9m smt,ZI"D# '}rU7yЉW Q`ډ̤'z0TJMC%qoc"Z]u2(2͍T *42&yOk֤ |ai`SW`rXwt;qR~-[-Uz+:*,^']+YJPl%8΋eь_jf`';|NJ`I)΂&j^7%b/Y&M Dh(kk>er{L6[Mʛ:]cJ"Vb`iGBk&OsKT?#֌IkP*IH 騣uễ ۆ.MdlvΦ5c`:уiEAHAQ Ҿ(Ou|GT '#{gG>c fHbm@韾ݥ?jt%sF V|E9AeWqy&o+uߗwh] Z!QIw{ FVnNS0#j稟wWUDd!y/\Бl>DUiqX𴓱h}ey&=@s!_…]{~V# %./ln[l >`y3Bz_[;c &7C7'j~̗|.ݹOdV z-*a JNyoh<#_2zAf*(\MMS`f#y5}RaL/'1ί'4%qud+MJطS dҡ(/H~2|/==+a!DO*tݬvSq4J6-z['b>6[M1ۧ8PFNl 'U FHy)λ LGZsAZ+Z`oZ>A\(148roEӬMOϦ$tgzjTH}3UI]#=joDrn [6=01+]PXppM;V}M(CNAipܽgUS&'d貮iENn-+'-s>r |3gKkgҿh,$8'%iTU|7o.ph?&6IW`T-Ox\f|ޜQ[?>Lx=8&t:"*lL"‸_Crv<;X=%- :ԊګN/j,~fū4A΅YP>0/NOFQsvQm GK,cG]Hsb/#ϻdϳJًެ8 |8*tӇgM>w|-ޯ0lڵ^_yspetmN2C9W{Eϝ6ýՇ{sdCxv*GX򼋠kvvb'{be$UIO= Ɵ3<ͨ cm!RqtY+.r#Gl'b7n2c `lYR~[6+̜kW3 ")͏nܭ\íY/dQp6s$ fn߈tU VG^Jzu^<%%jyEdi@hs| 2Աo%Px 4L#̀brT3p]PW)T.oo5Fڣu6~%2'_0'oLgl)q-Z ,%?SGZ@&VX娯]eCam9̧ShKēn)lWgd*";|ȋ£;Yiv%Ga_[Ub '.#$M]*N92"\1ß!V)% l0mMfϼwTyC2m|?%]'RRmounN(r;:? T>MEtx!C5-uBhfEɡuJ}Dp*?HF(̒HA }4JiV9|7e: l WZgjC}ȓPIkA ]`skMs r^"9Թ^JDɒ}+J+BKDo2s$WC>5%9~7:]<3731- 2t:ӫz@e$]xPuP~2~%NVSkNsX5d] C/].U:~ݴ3}w'f{.dEm< G 6;@:[CJoӏWȝInX.^Nu$stsy0ς} ?0;cAHOTwhfA$=JC"s(U8` ?<9I} I~.bU O3Hn9Cśg'uOʴ%9C݁o|2q:,H#>idev*eA*DIU%n2zġXG`AKCJtWK8K:͔/AIwjZ#jJ&̳[S8{ͤSB5ֱ9 M2bYyl<%{uDe>>:dZ*YClNl `t)""3ʱm }y}kKG_Nj%$nx|b^wR,˼cj=Χ `\6B.A"XV @hM*6XTȧB_TcCC\H;):K;Px9D6KF:V0#<BjΉmzE(_9+%ơ"gJo$ '%)M6 3 JGɓ45c%Yx/<ߨ_VD7raƩ91|ϹW`L=y#:~Aƴ-md&؀-IbUl8WtdAºXZtDpvʢ4C{$z|a*T|7っ1G~F9Pʨy{6KzͶW JSӁ?|gޡLFQ06kթxNj0#5$/+dgmL:W7Xq*1}J絳]1:7m}*I&ļ|{X٣ j񲹌y \*ҵp` #ClV~hۑހHVi=⢱̶IL"Of ΗRэxjb}şFRso8j-\:G<4p{:Gmw';}RK3a[oQ8 "e_1w׋Rz)#5Mx׽S:n*nYàQ=xiG'@'Vr rX}t]x1_HN p'c[@:cG^ΧY̫`-<.Cnu1&.Z ZGt7# :VŖ6VS4㟲Ѧu*H#aAff9@#"y3ҭ:ȮS"`r6А`~!)=Πot*BV|pTj-)-Sw Z>`om4j@oWVXS}3=Yqn`f5/5 -'Nx`hn;hFP(d& }3,EPe+@Nqqz;&1#(KyOM{VV%Ejhg6QOiNJrsz$fs ί)~;іbUZ1= Td0[vb65 }F DF>nu:긓=Jg MRNz;O#wYl嶁c 6H'LJ%v _֏5zmt#b}ZF0E Qcԁ38mHDQӀ:+]PlH#g)2+<.t `OiVZ@WǃNېEvH@&9lX_tջfSF4V' ei|X_9͵,E*8L5(6E=[ C˻-/^t{^`΄(nqv9+"'!@13~8tVyxG6?UL_QG6ْ C̳WNe~nd3nL]790! mĝ[a?7nͲ)Z_?!8 Ɣ[ tt3H v^L_O Įzn7PPaZThrG5M&^,Wo dj^^Fz[O=)l=&N"e_p|KsxvoC WNJ%=|i-g֡!5+l"469 O <@' G j'!tبUL ?P¥[kMeK¾C]z Uǚ_f0,뼹0+!r;:T޺[mi^/).u:yZuȩQ<{6nޛ 2ʷ(ϽdKH)XJEp^U*9k4o`e4(")&lNpGߵKsr\aI,{D[ W;V:zgKV^|1J8lX&B0ܲOsx{~eGM9dGڛfRKbn"Ӌv +`fC7ޅ>1̆I0U7(+oy k$IѪr)CBD \BXiHw]%pZho7afB:LlvsuKuCԐcn4Ve߃ZY7Ze=@{][Q)VWN&n8bAHgT[IאѴTD6AA V8rHyfP}4J6W=`f':`3CBy,i.'6H}9cA&?ʳKM)`Q HZ? |zfJz/BѪtfi:T>?FO|Qn 0ĺE)P&yA?$_9*z]$s>ֱR~F[d暃[c&7OJܚroF"Qr˲iQ!6eQGFEé'][{a_-g}ww#Mz '/r aqٷHߨVlWyY9Y?=s.}S<?0 Z رevn" iBu7Y= *T9䦤9WušWjLl6ޢ+m,Kr =y}S{2ˮYpف;p >cHuivn݌Jr^nvt>o4$/<#T"v ,)rQY,C5)B\eʁcīaroDf,)տ9_KhxC^CU%E.(ٳrHhEE ~hʐ?y8DɘDp,Z[bNw/hyCA-B\ gbx4ԽzII9#q6ZwH>&d. ;LY%'wt8lk)HD+|Oi14.%VO=J94tDi+X9ZؗxoL綮ךp uDz߳c tpϟ+ 3VA Pq/$}1~4o9>ÔL8t g?TɕE` m'  ŒM$t[41/m֭G*,9:oW>/8qAB Y8 %3G99 {uey4ⰞJݏjd⫝̸v1%rlR׈nD#v@pT tCn@( l-J\TɎUvy?6j%[B;X5M3֍=oo-)lCȜ6Ga_z=2Y5a+Q uFu6:xubX|R4z|*N E:I )XB?δ+i=ٸRx(}I% KvIsd߉G-LIf@TxܞК}vK@%ҳȄa }É'QM ZD2Ԛ î5lbaRi&J7|o!;Tp٩rWAxxХtNP^-*0qe^j;%Ĥ0xܾ[\Hw?J:b9.^.G6DIR X귣\ʸz͚0׻j\v%*͵Aـ:!^UFF/D)d3o%l)밬ڑq!7: 4ѹicǸ rzҰٰٖ،8'_ے3I(Qz3}u6g tzŊ䝏kETzL$UC]2|\YL6"[N7 jINNAFހY_Vf*XbXAe-WS%~]>5 Rg0 U' fЫM94C\5*@{.JY8jx{Ѻ$݇  !\5ۑ׊}(JQ34Ჱe|W>E5 $5}N}.;l7p÷7sRIVO01@ Ѐ}<_-#y0'XZBlkO" PKi?]9fqeDfZ^2 ep|H.r H?fr?ć3 TKn܆{TKѬ`;X,]ᣈo-*ZvdUMU98V*Y6zq` V㎈2{ YA0`n}vsE} Yw|1nfwsH֩%J35DsUq&Vf*@.qpwoXH"Cҋ&{Vx 5y0AjW, _*C#'nCaJR"\99\ŋ͘:|pQѷ.6&[t=iP-AKyd4VHjW'[MBSR#+*Da|Cj]`I!YWH~40 lB =[MRzķj𳨏Z/N)JT%gYݙ\ q_j`N9RŨ6{f( ׅ `qha2EfT>١ixQ=׭2} C M/1O-G ,]EcFrg< 0lε,+  [?k `/AB 3J#Qf4Z´ÐUr3MRYt5ga+L=+ (^T7fv2s7.G'U`Р5p:43"xtp6g"Q>ay|)~SU$Tfbpp,ii̊W`TmryM*qmfL\+{ƗũN+ C]q0{Daa6uuxN3Q :a\aؓhcBpC;r's}D9k!kk`J!H%B212pbE3C 6Ż2Bdf d`>>Tvtf.4qP/IOCX2Q_fM "7\:YT|o(VrůDZ:_U_|bV{sP=/ Unt^Ɋ(%[ l`f%*LH"p\nf \aZ*lPAxz,O{r?ÂIv0ݬ{Iyi4{ö`?w0e4& 6v\ňRo66wU 0ϻEIp<ާ,]%p jM=;s+]/CiJұm~bWe7˅ՂV%^? 0F{[ /T`߁Ţid$ `F?WcX7G\ ^g;Y;;KZˁ7p M1izO'edA_b *6]7.$] i7ֳ!g;jvܣrQٱ$bڇf}%d}/t -Փ~Dez$c7y a.`MʰuP6J+Zx%V3Wx~ץm `,S>S. $4Q+LDŽd,Z(3tGwRb)_|KKhDdiEu$ r'oX۽XǡwSMKj|tEW`y酐FhZzAY3QJP΄1q,B]2V,zϓ _1B-F_rP@Z*``,+S>eS4C[S.=!96lvUQ1yegrA 12@sNtELMeIe{uͥsLW| wRs/!+Jm 9Y,>Na+)zgX>L*8XX\k @,Uo{tbbM2= 6 ƻ,2~hxf1Y79zDfLoRYC|K.(v3򈭩WæF3$:pDBVFM]UN /\2f^ٗ;%֝$ESpX[9W/X .qJC"aJI^(S8wgFc7`.X噔q$0l>kAdL4%"S=Z4,T,9EFx!%k۽I0aT`3=ۺDm8Ljj z9씛qgB$_zǩRȡV6FALwZ,֊ OeA 7H[I!8|./qTx2@$$6ʥ:4 uSMZ-#\;=2%wKUʚgS8{c``%64!zaW sQ4o$1īlL+76SϠ惐ԻӀ|oֽozUQ|!J6uy_]|374;t 0̩NO8S`}XD'jݸ!'[_Nݬ4E8 }x[oΥ#l滨`SUG}D8ACm3]tS>-z5^fbDPm?˖Vr ?SN] '4nC_I/;]ɭͷwt!%[m>OG! _'=g~\69{P=* GfR96rxj+㡂aTqVGg-ЄnHh!ĉQс;hS8[1UA=[Ӯ$'bn*>c ԛ҇ 2&&xS)Ʊ}ӽ?A)0x$0ڜ:pIm#򿿡X"yݶ#m)rUO%dxF`ȴ 8,R[Yxhn]l0QvZ),(qՠp:$͘A;܅1kq[`LѾ?Nݜs6)S ly~kf.!a*Y5]R[Qr_x2 .i{1b( blS @$I\C8`uK֐)jn5(yMኼnBps<{g}%J_QM"<‚Z`4f6UoBH8\&=i/C\iggp@h-*`zWX~N} g\~K%LEXV;OpE8 ?so4s+WcNyN\Ұ5lgl∾Gv* *aݰ7 J>/^Slsa@K \ VBwjH~_8O5J xzHp,DQ~2 (MI>.sZIvȱBAi( [DG4jXqwbm8{ԃscb-vOsabْBy-՛ }Yp/Lbz_;N N>KIˤ;;b6~ſ/@:s6ԕtCwp(T [pNx+<"u~Mxϲ%WfySX3`kX=?0i~?Z% ?_|Z<!|CeAb!1C?dEX8e|bScKbAGS_0<#/>Uxab>E 5T\= @Yg 6|-)$Ve%R@y !9|W:&k<-n7x^60c=B_'pnfHSTGVkVf嬱(/ :lj7PTx@7<=͸u_ӽW lRnl ~վ0zS5l[wUC¤{UX0kC26-jZR" I` z/ޠx:`Cts|D<^tMcz!N< <_ Л,e]w,!5HI#PEI+#̯L?0ܵĦW Ev]w0{ P&܋YB}'.WՏ` vq^r0b2HkB&. ^*qu{T=E60}XFθ979#KPV)hZyey4ޝ,pPI݅S_]6C>KdE6Fn4qQu0(kbNTy_8 z4˖-[K u1Ѓ;Lb& viҬ)MҪB՜W/e+|Ͻ KBl{6n 6tw,UFPbueJYZnlo1=H[bX7GsW pĬaămc%O 8Gn2+9!3?*^X`=[)Ԗ"œӋiY7T4eHXt8y*k5IF4UNwL]qS*@.ϻ,eozLNL0sa;Þ&Ȧu䏵X\fT(53\lhMw!!ͯ~hG=vwbbYKπ!1 1>þ#vWaVad͞|$EnLYKK+oDx1C'e_(lF>3]DDM46yN:O'x^.&- 2 oѣAbiFaPD:SP|ls{74o3S[P/,-K&t"9"V'>1-fN_RJ,ʂp? 8 C "vg$m p#em v=sK(V;sTˬXCE/Q:ZON9:h`2ͳG4,J1>(s \_?`wġysoEM -c1!\o<͠O3.=cpK-]EZ}$zpƠ(Ӛ>{f}6ZΠYRO{[]T>p!7x>˨wmgi..{boDP} [Q yq,`uec_a I:֑&Z٬|j_X=N,MXYw%xX!%|C)eҖ"QDhҔfGۇә-Kb ^J@3͙]\6V>""px<ɪ8MhQN_=!L`@yYh+a IEd(U8Q|4bTvF#3kڈz)v AipR5@g\+W%W>Ei2JAcC5 )6 q!Q|s UNe5Xwc`"6[h]8rSNƑQn޲msñΘ'30,NLUm2j  <rMXVtR+ AQdW-Qqňs8YÁ0lUlj'dNBpi-83(\v ^K5cgYhګ6H^=_ 45V(lo4V=zԕgͷ7owLfc@Kg/oI #Sk;c++~\4+wN9oFA5*$XI7ao('î]A<)?Qܛ2tlڥk}nc};W2tG/s6e*`!biUT?~ ;)_ڤ-4Ϯ+G"Yv+803/ 5rexD\{_uc3U]%b<>GA.@6)fkuf͕ν!]Mdt rFh0`1iIIv ܓU└[3ܤ໲#e{nۖ˻J c-*hI \@\mS9^TNV~Ñ Lx)r*, ػ~{\X_NFbk{Ƚ%ɭx&BN|kXy[RE9LiDV@ :vIѺ0}?5>}NԏK0ez"L2M_km%zYQ@Nɓ =-cNbw޾nhReX:[3[a9wW'I,?Qe!7ySShM%NXג!&籷%A{NV-+$ n{hc(,l-qVWwցE|ʺKa;;JkKae;Z4v}Ǚ` TsSM{{hFa6toPP5Bp<)%B1x5 Re&Up_j+MX8bAɬ,׺cg'Z `*)#9]&>| iR $$5l9N&Y`Q5&SU:ԡ,`N@ ij@0MɠYFq/1k9h Ox`HubO3ނ=Obs Tڣy`^5R)!mWY'@bP;\n|1S`8%oO(lvAw+KwL0ys{)0;& ToU/FRdT`R9 ЬjMY/əэ;i"JʚqBHM}#\Q_BòN#$XӟrLK iˈMF%)36C,:a_;LRf8gi9FrTl9.˕9,U#X,o4V,`:izMRs~0m7=k"%D_ 9RTIu|M%J DRL~)ˆryZgV0l!aٲTy!esO=Qtz4X^F3 M+ dt)mum~!('cp}rBx"kDR%\cj=1W(]\-,}pٮVs0iƼkj&!p;^%r HNJbKZ#:G?$JAp2C-k}/ s(%Dg~Ôq lm=:pyX:vx!&[V1Vzϻ/nlkK-ك/rWtD}2;zat1 z0T~Ʌh$>ʇM=9XQu:h} Щ ŠHg  gJI=5B4JB8+)9^ 8G;g|2i9ex~DZ*eT}w\7Y6dO^nhT5onLs0'{ge(/li~ FN0? D}D,ݗ~Uef k1fv<:Nxp VSW8H]$},IKmR}Sݣm0L%v"th">mFvNnI$74@+8캪N1q.փ򟤩)0<&[~:@3 a6F;vEha63' e8Ob[dõwlj:m;JNocyQp}Nհ2Wkz!Gx(aMNoP2GF`D@ -{Eyŭ~b/t%g쳾VL$a; ?u4>\ mҠzطj*\0 ODɠ(<T{\Neފ"  |PYt;G1$X8ΙiwZLB._ "}n (F4ԥ"[ tj_F6MVZ'; >kQ!$痜&_M/%d2HOEx2ҕ pOS$,PƲ{c/wR0 ̞ml\T@Qj6~#޹mmb}MG<c֟`6mDnJ F 4 =2iԘB(!䝇@)gF3OѸ| %*k5:\@:^|覠8UCGGQe} EUy^t]wrl6F^ߒ}T2s@)G_=]덶 Ʊ+'na]k~}=a7XQhy7_-܅d U(3BN r5&@>ܟݣGx}w^ˌlt;ܪ^虙!V[My˿ʐIѺ+JA3*a\#C<ķzY^hjBƚ\V:^_OArLt#4stX5#ctdN9]UKEh%35cl SњQ쪬)mQ{JfW-E(BOW{S~>r|gpTN9ԎHx "BM@<}Ě˾ [*?jqL,7&#8i0*7:))+I{ˣEOsT(n*Q@ڣjwX6[-p9zn&Czʫ+~kd=H0껅*{wjdZ:ӼT' k{ǜ*5oK %Y1:8$&!I: %p@ C 5rIz?2^AȫwN $*s*|3:D$XϗJ4IcEouDMJf`1-GMSSDh8*w]SAOuE7ckqjliN3ް,"2ɾ6S@mߗ}~s>NPf pc w C{u,x(Dpi Y{^o`ݬ3 j/IN|{Lʇ2xex uj¿Bnp Oyq `Y3F)W D=?B"U+q;Lj'|5 \a@EI%EִJZD <2Xu!+s^yˇo8WL5e'&uآd͎dYg_O W/H d;$^8e3\⴫F/B!mU/#{k^.~.jSrg߆D8#EE_#CԿE S#dee!@]< uhY X*z] )kgYد)7#L;#8?- Q4Q[l4(r8SE={VSoҸ+KҀ)34vOO<~8'=D5:Rp6|:(Y rW'M8N!H:Lq4;0CE<(ؼy򑂓6)P`f)ʫjr qɉ i^㽋 c '腥kXGֻ'P17hE58DSHfnL]N>b*tL޸\ pΡ|qo!33aLI]= ddssV MК!wS&-Ƚ=Ҝl%}?.v9IG&:z+8W"QWpSM[hZPB燋P0Mʂ^P&dXfhÁF~-k7 FD8g$@f5ǜ &=zeenSu)<QZҫT"(۽OY(\ih"՞EqWcL ey{{A!̀mk8kVCd* b<0v̀;/דų-VL5$7TFcf%rY<0 /N,[!.iLBqF=3O-F:p~r#@AٕO#AQKă7Z`Q2Yc])X{VWEL z}]{yqظŊ b*T)q<|tN*d}9)jCawѥXKRΩϹ>9-4g^lgC%.ϒh8?l (J܊pQfL&h5a^5hJ|/U[s@J +_M%FWc]]wqj3Yԃ 81# g<+Ũ X7?`1^Ag#JƎ}qͿ|*?"&C9ECZ,ZO#,tX |Nl,OPמOGTo0l{x0`=u#O.KGBǖC[pxeUOodƠU{} ֙P6-DdKPC ]X-Ja"!hFD\v2 v8Ds/_W2w;wOj8$6%jڱb)LPȫ{ Hi!u?d=oC='I,&juʑD5iAMj$۷~y# 9O8ڂY~)f3G-ӛH)]g5j{1H&DYv7M$b]s[x+Nn kr8 iy|`J0?"~^#@m͢*3ޏj5[vN":ᆣ1Z@ApN7g+6L 9 cOp~>&Fy!"_<8gCUr I4>oR~kśJ'g4; G7K`"}%Z: :(')d#bVއSK"+wѦ> y۸m~hGScIwU5P7YڎTj:/=!h_dDM@.K5RD)eG|{";,춦575Xi,, 15}OQrRlFer˲<(|_ (ԳUі؂s.uigPW^ɮZ6Fwt:{FAynԳpF#B֏yfKq؋y7v~NP=agB͓,@nTn]EmʮZWK,1:4VĎOSXo֭˪6dgELG-Ȍ\\;wa"r/M~7G u IZ}Ėnն IG$$Vu 5qP\'_[M/mɊ噙V9ؖtd&T1GqOEx:~{%:|H0[- ]nlnj"Gx q!Ϋisgm3[A}ЎNY#bS5魙N.dqϧG/`'1"p"f,(ѿK'ah }7>6^P5kY5^Aj3^»`9Le:$3$/H>^Mil^ՏQ^63+uiŠGYR#y+P?̝ /(۳U"@͋F_fH>f7ڦZ!Rp"A?9Qk%XgN!b)6K4OVئs,x.13Uőz U[k7NnaO,N@S@ &~ySUln$ƿ=f&萰}+VrmBnUn|p}wNozPD`_8wT)z\^3 M bM)k1xy|?~ݖ?râ U?ؠJjZ7wVe*۩WɅ2]U v|`ˣJU<SS=Qt9Ǽ!Am~ny-ܜĐ"@m (vh_D2=Ie;6V1ϋ:#Wj))N*; hM: PY|%C=[Z?̒} Qp"ݓݮta4$B4$AH*\!&DZI%y>Лqثoar)&¤,jp #a6tALcRi,l`]28+Skg Da=["C N V׳0ϢtmfL M-FHm1YP f0@ cR㏽fՃ`ߐ0oZn.ֿˡȿ惒wgݷK@O4O4;@Ϯ鷊]ϣZ)iRc5SPpMY* -.#12 o:LгP*Qδ`z\g:2W؍ z5iu=.A<ϡ5:ꝵ!wFz}{eF׾g ntH=82#Q$#ً``eƌmD_̢p~Ij=w_&}[~~_ʴZsCi @Gxay/O q z<JDu?=Zu7]2#``Sj,ZE_MJOq6^ⶪWy ꖿ@6(,Qjp'a L_7o:,E,M^퇐Dq#E:76Ͽ?ߛ}n{[:Ul+k↓NuO?MtʃxkMvISywƘ@)g 9J'|LC>"Vۊh2!/\DN nǾɝDǪd/79~w$:94 s[WnEDYkisji\*vvAazP{0&|>^OK{$݇aoT(fckG!occ,xqiK-mn!xɽ7g.}5MK4h'=˥+f'UEXMP햊 ٚi71ns,ၬ ?4🊃#CdOdsm5fWK+&gKTyw^6-?N ٺ2a!@#cs;^fNO/ۤ[/d9KnYD۩ng}D@m%\g)/Z48rM$bHiniY @`ZCs?AOgJ:&]r-9cV=w')̟ɜT!Y{5%RikDyo^T^&QAC}XCJkM'92 k&X *6oͿX.$UeļKy\^b _)vtY)5)x'HNz#6UW ~(#?[3ſgBteJ/P3~jetض/1`WV1-q޽!ܝDO¦;Ζ :cbfh&kCJ9Oϐ౑Qgz @jxt[RSSWn"s&)!.RNJQ*K 9|Ӝ97T:&=I}gð8{ QZx.5@J{UcYSQ뀻TG .DIU@G(j^ַR06 yޮ=F#H6]_[@Ӊn^B`axE+'xxTJ@YSY;¬4NU=XoaEKۚ -Z`8x ϶QlP,p?c/scgdTD zU./6;`|~Xezp6= \26)еvO+kB/Ow#eN;zLE#KC<׍,WG˹%¿ EnnjSY:J;q!HK;я{TT GsGRQ.C4Q:ҜOcTLr/?CKbC8(`eD/`A`K4·COM|:N~ym,0翄cܱe!q>T@eӁ%ČE$SP2oX%@z8feM`0@ w1aI|{M~94FB)dYd=&g&qhoZbHu|Dv 2f໦|7B7-c%Lmn jHbW=Ny/8+OpX/Ѩ^-_"r 3,?w1>~Gl#РQv_ȡ*rPsiD,OPRY3Y$6LʎyCyCHFE%7Nj݅yxQdxLVJËه67^EX黷l9+ĔfuȯR*NaNCn\^T 5EmߖQw7}~٧=ϫ|) tB@_vfNf>Fn jSXNa\؃XbI *߉LħϰD8k^/ž2KOM2DKY&0/{!k R%=ޫ6KXBsª(PV(#g"t= ^mea\L:ȅޞ;;I٭ `8&S)yi|l+P^z2׎"1BQ4JY iRxLeox^U+j(Dzܝ.ŶUy=Ln&.C xBE\(Z-b1B<-ZNGCMN=7 f۱r}2|WHul4;\`Pd4:o7:q!f:9 '?3'dem|ǖW"}IY@1 31e0cvlv<( ?ioK ahY4>:k'rFvuعܩCYBt⠜X2vc'VG1?ut*Q"n7[eU ua 5;1j⺺Lח ZD9GpO^*uS.K7_Rn{7.$X(3IZzxix* =&|}wNnTAc;}MwK?frr_H$P3D+C mق# Zdc' u}$1~`d Џ\52`Qs}32^5ٙ}Ẅ́43uNNJRٳJG'!ŬS GvZťܫ"|Qkv$qaZĢ/Nѫ зKs&])/O2YlqBQ6f*oU2[f$v(kKƴ6 {[ٷD{fM U&mW劗&uh5́5SB{`' (Pw!˵WٞAsc1 ns4Ԩiz Fkcڛ!*X|VϝhUKx-a C]}?㭎MO.ɵ8wt6:رb4*%9+PSi o!ño+e>~ڔܠz_NıÏ.qkJ()op+O^%CB pQ%^| V_opYrA-;FY"]xSb&AW1xĘz5+ :kRn?ByTs/b`O (> 7ugٟ.Uu%s wY;A?nkSPidnŞ2 *RN}BO3r8:.V=l:pD/97PV^Dfԓ صQaYLqoj1x Cr Mɂ1S/Jg5Ϥ|e70e1HѾe3rZE`YmnGQRFcܜXbuXH$t bDjm.ۣ7a,}W]xGt+M2-$RUv(vNTg?GUq?gm\sI9"o&s3?1,.{V&qi%YLGm/Q#4eߎ r?z¨8r3y-cC.\,LΗsLV[ Ba):UwdCo%6+$T;*dk&A򢷝TAT˔^raJH 20fqroO/3?ezCӣ6Ѫ6U,ɗY=+suiu/f0 NYKHNfTQlIC1qn[\7;#N@c+wA <#3Li+z[y1,wvFt{D)޵+n+APЧ/av'iˣ NS)b6'p-8uXg~4#37SKg74)-:^ҔÑ6e[aC-s< >?%mEWDz۠ZzdWV Vĭ~PE)~9msϗƮ1!#?٤n~oGGZ6R֚,Łg!P GQ ӟu߀G73 =s'+(}Դɪqc3O(m2b:'Tq{ 7 O#$ ~b odkB`ݴIN߼v>DW=s h<ǺGXJ^t4>ȼR/-* +WV*P'! \̟$ I#ARhDkRi@jDt`:FPEt荡'd#WRQk؇?o.˩=_˻Pf_p+Żl =9Z,BN)/h1l69R: wE8I4sv+_g_~hGKq@4Nq/Sf Vto۫z$Ŝr 3lLmV m԰#7rI=,ʯ/q|`}s,!? OpaTeG~| O]:7zԍؙ/%Rhx1PhvO0u4C䇂2Vc$"= =e(o?9R+o`=*jx%!s])ЁOK/SHrA76uF衛(fu-1 IɸmšyQL{R˲xˆhġ`+42+'5DGy^ϓL~W[0U' W"dTkuX|Ƙ $"xBgLG[\ؘw}TϊfF6wYB{tv>%d+둵⋑[v|3+Ac3F;8줅כ9|Mb6$3PJp-q )5UϨCZZTK%ӣ; PdkrH:_d ~4Чϒj_.4ߖ4 kWqd,2"U0Wpd]Йą5`1)=E"YtQ8򍆀^g/]#A1ÁI騂 cCj; / T8gqY`| ;1u!3')=QA`IeDP\dS$> M `2c>ӭ=VivսK`;yH}d {TNSUZOnMQ5`T465nH()J/r`~ ^rm#j4B@Z[vJwL@7XXX.&H 7'\Hgg?'0;S77~hӪ4/P;Yy3v /Fv!2sFƈÖʮT&B ,`g,j\Na+o]=炖yUv<*Ll<LӝV+!d*:uO7-g>sF յF'4 LvgA:ȩ\s0фO_}b~%r}O- O1zmT 60Lꝴ0Łh%iU7I'I v68`EO')YS1 /.I|]B8 AKubH=T k8mM6O AE{J\ËA  ƒ#%Ma.Zv_?QkxjARήRNٖ#Hu0kep&ߓtsxszHsa]Oadew!q3ss켄O)3! RhVJ. ϐ5eQH/}5"lqec~T/> nAsA1A[xfG*!Эrt*Z=etNFڔ[rƏ1BB;Uz3@\ww2̷ '|5neIw'{REܩ0S 68!iK#wjD˽[U)'OUSgVbhI׉i9Q U=:Т(ΚWrsRڡQE)L1-ћ1 þ:M邑6B͟Ĩ6ܘT}B{B ؛z4ғ Ò7jVfpђ^h+@BPG"wg7H! &0"1j[O֣|zh_.rX4i}I}$ǀ(Au8$=#_#aRAӤWPpkwwϊa60b~MjACGkfe'>t\kZ_5m4UeAc)ZPT]2G <t⦁(\[MTRѾ)%B$@y }=J$3ψ)ʭ.aܫ,P-L"^KVF͞s5ʭRFf4`EXf;[vgFz-A y71]H'Gz~-HEZ~ l4b N+9b7r)ph eA5 =.k1{~wgW0ocXE<к61|?/ &ItDäkn -}m"S>̓0V>jl?,aB[`.CSYr1.*7hpD)8[-k9X;݆Ս?# } *3'M:c}l. TPiK?QR3]Ú|J1{Ln!ۻ)γ݅#V݁4_Ix dv2tRL8aV\yzL$:qꔖ1Nތ;6pFϏ%T0!/؞a&l~nC2U~Rߢ{i^tzmw9]fz8iW6`*7;;w7 ;yЮU9\3[Fh']g3B$n|!%Y¬j#t eW":.2TgɹNϛsa8ԖщV.Gcv6c̉|'l_r'ZalzUA(q aɯg AljCf֦?2eOxsMzsMQTLZrⰆO؁i@R(-<Ҡ+,ly:ŕ4CPH45qB3/7h^N% D^WOBw*YPpf'OߵC 5:_)SOf1Ha {]W~A1i4@IdOKZUnD,RC.(2ų4nDK0+M"fۍY866gc36MQNBb(kQ{?]4k9cBOLȜTafdV.bb0; ~ =T)}CTWdIpSu*m$ᬆ x][nut7ps-d҃MD,沐Nop~OdVa`.n񤧬F@JP&LPN&pl<% {,\iyJ~ QnږEY$5ËtXأ'PaE'U,mz#-ۧU1t[Ҏ7FmoCؿ%W=T/iQ%""===ەδc*/`;k( %sRDrO/,%d25◼jSe|AƒۤVx0P%dÌOhryyb:~B?RBd|`t_Qa-G;OMWpm^1ʄ[3x RqYn(c}q^Id:֖,ri7#3srqE!~_LjlJ_OyI1K^H΅1b>B}c=c=a&g[xw٬T ؈Zln~nF"gl<%Wۢf`="3DHgɪ#]\: hp$:qwCd^ڀes)ff O1/?k2ɝhser (kѥݡJ+@nBo"ExzzN 4F.kI%UKoIq;&߇GG䳿ڒB!Ywf"0skq2J;>d>XB %GZm nq. w$q#£'S/-< ѦT8^c1_~ɉh-e=)t27h7DmF%L#j$m44P[p6p1,чˋZLIȄ*;$㎅#j:Aj}*?\8ৢ5.ؙ˲N*} HrwqO۾r3#,<+ݸ2o,]مSnYz'ܪzfF}DAV,X6/Z˚:38Dm ^YDץY`.߈xx  ^nQ j:|n[ݔ^\9# ;ˑC9ǭs)Ī2aނ2s?8򼯅'5rĂ-4_<|3dˎ<1_ZשjNT;&p[cJhW`w?^k Dv7NSu,*JG#p&FVZXBYygvfoji_$[{^p9 '_Io`J<+pC ꑀKlLtV\wE Ϫ̘MmÙXܯ"noq~@{عUe5 N.8I>u)U\QJw^Sb!b*(LFo t`]<)4-**ЅQ@> 9+hC_(9F`Pch,ȁ.tuCeyrP|eb=LgP&25,!]1iiI:8%&wޝeBLJ֧׶() Y^1HJil"J4p2CZ,V2njjEʢsrnE߈:&|X%)^G89.t+!0 BxA_*⌽;o F51L,:E׍XɭV WР j!%zvܐ#sq@qizH,A>V[2Ʌ;B$N(iy$'i7)6|{˨ͻKoH1AʶI晋Tdq7. :L{`LzAc݄Jq8 "B_IUt5 zvl*sx4JPIJث\K`\lQvr炴s`-##G;U; uEcral{I=Os2yωn4|"wM;x~ƋN+un 9 F^8(x!,77VL!;? d֢@KwM;¦:, ʪl_^$en9 &vgf˶p-\72LLbM*knU~ _nH2b;HۇACspo%Sdsl b҆wqPRC90-unIDN> $QJmhGހy H|Yob#UÃgEO(o5rbޔƿ~T> ߎ!x[`ݠ:lR!'-=e'Ֆ-d } o<ǹ;gC:*%?l!v,ȒdvQN+a~mn)1𰨯xk.zbǽre[S-qWbk:ujm|[[ƪ)/wKϼBec78+F/ӒIZcjYK͢o'wÃva41g)%bifBNf--ϼ8\'3'K:WQdObAUU=/XBiŵpZؠ @gЙrm΀09 ֹ0`ڴNvMqD+iezg)?kNCUw]Id0ȑ5^_boh~W6nl>Z%rvxFgmw- -1`^~[2_LD'(ų!CcK!} Q#>kw͑v}8`b7, !l zv:LU|?͇i6"6T^Ĩ!Kྡྷl :\-I-*i!T:cp#K3Ǔ)}FCW#kn6b@p'\\hY1?%'bz> yNIL3Vk4GF-Wҟ0)oS(RQ 6c_4!X C#ئzv*E1B7s~!Vc%{g(e ۛ}:geSaz7v7}c:痞M4 PY=||_JU;eAprã`֥זTDΧ [ u;yXx[We/Ӿڠm8d_Cq`8eT4HG Bluu2-YV*$􋕀K<-Vtn#|5ʲ9p$dH-R+mԖ@!ڛ~XOՂ:[.Z 42Ӌ 55Q0+ ,X v6,Gx縈tg;Y;8QJg0=u;ͤfBioqSZh,͙D,{=;>&Oׯˏ,]G U (efNT%`VR]}/'6ǮzJB$#RB7o=8n=<R^9M:=b K;$niMit 6\9-EțP Z住آYwo.p.Ϟ"z0:ϓqu)AJ[ӃW EԈ/zjEeo@&c=Pfc9r&P6N_`L[I`_\<:.Xͤ'Q= 楆Ha]H}65.KjJOGqLGa#T5,cUvQFwQ2ZԬ+C4I?CdS0h"3\U3I2䢕]^nM_@I',.WdOm-H61Q>ݕn=vYxawu7A0^}eSd3!T+\,C_y<`ǟe:pL ^{s?G&QKknQd4eJЕYtS)]mц$)Cf@m-=g_Ěm/aK^/_(Ҽ?6g?#!Mg +"G*uAJZBmC|&k'n+C:->p#yʗ8H:}߃P_ |7$޲Py7K\p !p +:@{|x;x 7xSaU:7''C P3svY&$JaNdb%2.ߙZQ U-e!> ֋Z&nUcܭD?X#MPr cɭ&;׷޽.8<D=)"ml'ުZ :r /z]~0`v`+U!m}"g0 nq4ͺ&ԩ6^[1Ŗp|M~߁S9T)3.Ukf-^7ΑdN~_̮ Y轰%܍n+a™0Ҝ9U6&*qb|z8poZ3szm_j:apIߠ ɅT@Yiv'X_n2h7oE&pb,p`ٸ3*jr:7 5B%H,P!-hjO .B܆ i㺭ytM)$ kb̊ߌvSJRL:dbއAeOe<|':c.4&JB eƭ yB]ψ<~is&3 ZY|bep H(3 V o+J"G yAg(Qio)I tXz=x=9R3 fzq>V+6wձ QTY-`d=m,eB!˟um|DF`taVO[<ϻ%N7udZuc/&<_QD|!>#?̈́'6B'sB>MCRU,Vu9h%)3#]ڑbs<ƫN ZTPaQ"n=@fF9{ǪXwp٦v‰S*]an0ptgF:wjc GC"Dg)g$g7Pbs137֬i7X+Yt.t٤b1I3f)i I0!>E; mD *N%Yu!E8&BxW7gR`5ȉj&ZvRX ކ:V4J^yx^a0@fj:Wrtm6)8OE U,䳨 B9.VotZx#2b?=ֱ7 _٪b*$ E1BGv3䚵:ǸgMS0u[ߤ횏ɬqpXAEa E{bs*/0J\w5Sދ!}N]m7jڋcԙsn^"B$ڟʣnPg ̡^4-XǢ B :Ul9X*D#`0cN?c=cW„kG""}'r#Ci3QA|^Y C>&9+L{RoS1v/n?bK5=K}*Ux뛟)j?5?t~jI&+LDtA Ҽ1RjNh]?_6JDgvR\z$T+i%Q}z\T<!vͪ5&5sJi1J[)Fb)]t~<`!uG=?"lDG@9PdQԐ9tHiրҳYQ>nB7@Afj 74"zշg9G9&^xwrs}w5 1u>xDzB6\1ZH=*rHAϴT;:iF6j+V}yw!#z]X+ѥ y~HLRۜ~PX:`j.4c]MW,-<͌Yiќd܃"??9؄ O݌=f0pۈHպ 1App88_Ec(M *K p{0@Rr?emR^Jss}o4NhST'6 /|8/3b"*m3ޤCb,T.VEW G-K:, ;/b);i}0nzPdG>$&vg*G,< N$a>u3ԮmP9T>JM;׹5*ًS u&akɭ9[#!,UFx~ ՑwYOMIr܏NL25l47-o-nsJ #qk:kcg׊f4i6F6IgLo(ь\xvC[IeDdA8%C"xe‡-Xfۢ wG=O9!_968@@+}bO K5$gm~q#te{|o>j\ķ[ w OD):d ;vꇺdg^e:O[;HM1Ah'O5/!i0iτ$6ҩ{,nw Bm2b;^jwiO!(( x²^?/{+1t=y\Lrs7B z[/K{GG. Eȵz5d!}Z\а5 & ݇(z xF`WC&jc9iz 6e nBy(j0[~ӄ64W28`Eb8lK':ݺ?E_ =v_*r 1*,%d7avc۠3LJne$%B+Rt>qRv|bɠӕZi"eEkHܦQM&)ҳ * ˎ-Yl atFwԱ#Zg˸8h\5 &o`vXS Kr*Db%/( I9^Z\_oh {2HuzBvr*Uhò0\jZ%{b.Sv;Ȑ<ܫ[ !|6<@R}(/Mĩ PG|ڏcw9 /3U( y)ff|l0KlSjgyШ qo@fmp7iagAэ4z~e[J"|!O%&~ %Ղv9 εR-^[S+{2jG; ټUy@O @d<,SMC$&~<4A_F|V[N~TpS2W#csg;$e+ᮠ$# h4~X |2'V{Zoㄕu%; ]!HF/kt9BeV**g%:T$ *m>֗s#h@1}Q5waH!>HƥAZ.tTwȴQ^C%jP<\¢G"忌}{j;8>wL89|AzvPQ`H[Zm̉X|SJcC-T sɓQ>dˑi) [sND.yAՃ=p0I!)ZD U5vZ^+z=- č,ӑ(*71+dX{3sԯ^}qXbS~nȴ"AQ1ZT }I^'CaObm_Fefs.xf{R%*xrDԗu,I®Gr4lۀzhoun<#VN]wH+RA6xe5}:UD&A/e| &cכXA\GF4N +_FPW_>KWL*"Ϫ!Ȁü֋fOxFQL\N])tQGK"l^$]PR0s#ysN kaW 43u%4A,*,vwb+e0) " %ϻs$u?mRExTOj[TK &6?R67 xoKkZtj}NXwIy$fm$sEܮq #QpmDvMPFp%""VZ0R%Xcy@mYD7drLG~}tӾNQZo~f0TD _O.:ALkWj BxC"GtN zT©UxĔAQၐ+ܠ_hKtD*b *\J|g_Σ6j|Ӟjclzd8;Ȩ:Ð 6b'FuUmt 3|`Tvi'oy?\~iRtw0sp1Vxk873Y l, xx[Z5VP&aț|[' 9\L0U i o/HݑH\VGH/GV (TsC2W[~v][5 wٛu .@c:4% ivJp컡 ->(Oy@aRm_)-7P[6`" w U~/O պa 0^!>GSqbW~fJmP,KJ`C(" ^9-mA0Yf# 9M1>,W}; _ݤ&XyR6q!Ƒ h)) n h~5qNM/:kT m3I isap*S.'?ZIBbLm4` Zp̯f~#$55j*1W0l9dh흰ŢgD]*$EpmD_4=N}XI\xYHxw!;UfX)||\\[340ꅧ54R"Ij$|kV|ɴԐƝLYG԰l];C@DGS|y]D0_R Pyb`Kб3p[etU ѿ<q+y6j!f:.0> tє8ᠷ忾}l0˳f] v#'{*|j߼9jIILtAc)>mq0ZhNfLٯ t] D 'Y#rݔ гiL&kJBBAc0T&sJZ|N"lg{g?Ĺm !nN^?bBBL k]M{2##C!}Zޑ~Q턭#i:~׍8{}>cmG^)~h}^]3 KPӚַِ2^vBմj ) nƁ+u6G:@NQ+h8$j >NЪq&ɤZX#B6Ѻs{ƛHlM0 d1BSEdMBP/; pKm6$_ezp5xbF}ycFA@^^}+^*1gC`xqc+}{Xy7S ֏+%GRIŠ//4b-^.d#\plc]b.@-`e]5d?4iu8ujtp.9wD{= 0&B/-`^k?[wE8^&9 7WH\wvh7dA- <>~&Qw="OZ-ߊf ZV J0f۝خx^Z3MV j mq3-)q?B rk4xTpϺ&P2!gH ȚIT_wrhɆ4թF#Ւ=Tvu2-%MaPI:Gz߿+7:Kc_ /Fxxf]ܦIƯGN\MW3Eb>Dvf{:\L(o z)34sĨ Cߓqi٧;Bי5Ю:#G_TYNǫITSi+h(#9{+-@`0!.Yi4QmA"FKun6> P-W Vlcf}*VP-ǿ<ϱJh8\}_fѩQ%ůiXܣaK|c."|~KPYF­C_nq,EJn6e(=k^ F ;;.\vh=F`9s4N,hmcHS&_ 9|ma9XOBHI3kh97RbΖ&2.}.@Xd^q]݀wXsjUN =:5$JzQd[5LګW,sE@7d4Bdvv! *crpI|!t&G.'옔 &#jT At6 t;6X-6pZ@԰d]%:"n͝f27P}mP%cL B1qLUY7Sgz&/08kVZ/(SkVM: e<}z7#ma9cگD$&uN'P/a!R~k`1}P5ԞK𝑥]8N2> /.|cID\@{6V/4G@2g gX-d>׷I%LKEpR1'8 m@*q |fs O7-4&B7> `glϮs/k_V9 iaw&qu 4Ϡ.2F Xf^d҅wi l_sd_"sfE`.5x3ujt\$PCHL6@gV~u!#_(%OS$ Ӭ T4^XlnfUۯΓ4C`l/Fz*lwn-_ DȄ# bpyZ+ udSPgy?2if DkLSZ|&xTcTІ!b~UiqTڭ7#aw|ДFAݓɂ|sy0~_uN/W\qԟY-@&Ԅx6ĭF[^A~\p⯡![( {ؚ+hdhn%8=瘹Xf~ZG'&$ 8kE]"oO6.oe]2t 8STd.Βɏ[HpVr*}VvCS T4{N)u?IM>$}Vy=qC U`u8HXBP;3$_ܪF?Y4mvًA෪8C61;N})lVrJ QdY_ߕb(P#$',-YQ䗔pwqru<uxYi9EǏ2tmGJ í05t/ 6TG辕u5abOTX^46, 12s0(ؗ@6{C?$>i'Oќ!4GgϠȞ0uŒs j[{8b4vH>b,^-;Sf5sT;z i `b;eKq֨馧 *$eiuJHyFх*_7J|'N~* 3ӣFjlh?I ,R^o7G%r^u%wD(~K%&iW9]BiC+Z?{(xQzF+C!n`OHU^x0iD;w+q^lբV۴V G{XOP%:l@iVK"lAU0AUnS^ef1&LN1-fK^Nߔ08c]zF=q?뵶^%Acɤn?{X➺х1DjHjLJ;X,LRJm]˅0۠:j 8Wfx"=꺨)݄b2zJy<}rZ ń[]1q4~G 7 Vdm ixdEr [ P&R*Xr75gÁr4-mUp(f%njw^%ƿǦ/75f |)죍 m"X{PlR'J1ba+! Pq kȑGsi›Tc6c Oo?8x!s+8;zpsC6U-:rAYEWqlkp&l͹m[TzR ^m TS'\R+4&%&1x%mM]%bXȚ5tGUB 76DJOD.toD{A$|mOu.CZM$3Ccdp3f&*BHR鉏QN_^U'Y*zo#'VT WӬ@-i.ՇH|G>8&d*;M{?~>jx&z# 94bo^fJ'L7G$F (S.R,y8(3xB@rȧP6#Z'n C|TNMV*2Fj$wgw7QJGԁjAґ GGZJr6{mU's"ֈ4R8`O;X@7' UUIL dZ#,G/g\U=€?EP!ʈ#:u>7(j,YkL#{3avK 3Vh}#@wCaz4=L.i\Z89w)^jݫ}mpv>Y6RTޟ0+ c^j;z-hbNFMi􏨔i L>sW;2.{<L?8$PR>qQO;S#<xə/T[4Fӗ7{<8 ro"wA wr1' yQL; e}SXuv6++z==\‡#Ws&'{'dEp׵+!rxVJ]/ZF"3AN_ "C"6aڽ]O^txDטuOʃWQRI+V IS>pey9L5byfD)C崶PU3}yXxbvijUx@Y0bE?8QAnMM4"=uuf,K2yFuIUSa%E PÄ云wе:tQ4YS%@×*U# GdjBL$6::Nx9POe22yi?He"6u"MalBZ.$5Hz ԮK_"E/O}Tl31cvOY#O޽IWY4My :dn> ddSc:v[ڛX.iƘVM3]y&]Md} (5PV*3amFu_qx߰ڛ~ њ (f!jDDɝPN{\zrJ[>1oVy\y9fNh0+,D/CAXrgNsa#z~# C R^fI Y)Ԥ[u%Q8EYfHC 5S w^|@wes:ȢGpl;ڂruz&x:zddch8c)$- Xj妗䎎 ]{co`wsy T#TV([؞2$NyRȷ_S;U?e&@H|p&;ANEMux-(1 : @aNs =Fwh+_Ӥ@f+s"5GHs|/$w+0i%7kFīQzi>CIRV@R_/aBrs l(FŝPjWL;Cʨ2R (mF29vjIk (sv%XHRM4f^0u-ʤ"\+er1GEÈ$ʋ[\9{Ȓ7:+;}$eԐT97* r;Ђ`N},I'X̄X^"$3sl)3nj hXMѬevBW{+r㢂Ӛ,N,_5 [##HERNO}c EfwwrA9NSFNUQ%\A۹ o+wl{s|OwG ]<).,Uӂ|aŔ,휙6/p/EbPi}df7k-gx[Rč)H^չ:};diTĽG (~+^w4 I:-^6%FA0ԣMh&vQ?Oyk1h/3Gk mh ):ݒ뗐JMQԂ>+< iol JQr?&#ʑ|~&Zx:«gT%8W&,M 9R^ȕo4x=֤EWv60\"ۖ<}`uA~6t8WFj)m _I2_菞`3/(+gM#k3mtX:K\T9V8I%2)u_DcPF$7>8=o;{4GHD@Պy3DmQ2 oۑȊu}nE׉m?RTLd죁Ͱ2X+PD<ơS+Ά9T|:39qKMq.= J4v~ʹfo%+IDQDT_&}sNm(U󶻳Z$W1&O ȹLs{?P {J~̨$!hY\Q<-Ȕ[C) L EL85)bP ȻQ#mǖG '0AЋajUD",q_|E`dZwMjv2:.a"C.A\Z/7!7 %J#.t&<,"H^KdM*zB08Q\LqfQK;+C-_c[ĭIu!>- )h b,ѝ يm)syi uGڃiz[07 px}'U⟊ fi' DٵμS I wkuW?z3G4{XE۰u90JQo }Ϋp0CM!J1Mq%eCʴ[ }3@fN.1KEaZ"O)| ;%${jg# 7(HLZ ذȯQ}# +~Gv沤x6|` ;9[!cog\, Y0~`e/?L,RgS^S`IU>T%&FE*tq]B2sG}Xa\/0Jx>;d (0l%$cgZ֝N7DMka+Ǟdxwr}ODZW&hx 4<uq@-gg?#śkɏj Z\7n賀M%.GQqas/Tӏ#jrjC%SP$^9c~eydtNyo)Ɨg4CWzn8ɯH}GE< u?9F y^i_ħ?_=6f?3L=m]R ;zu4 vc,aiu;^KFq't5ac$ =2>ȞHBorD5_Tz+ySz4p }! 0X&R'F5Dvd[ԩ}*qLֻLM" =z I]K-IyG=1c9|/5׻ +c<˭P(9aLcyk)|ԂvM֘םP za!PBΙ]Ɨ`Z&f`<{dU<},)\0Kx K.J]!OEQ.e&a;Hɳ``\k&wc l E4JJPJX'Z}4cI߃ۃR@Bd-Bݵ-N-ĬxHcZ˹µ!x)gG2K7]I5^cz!R ^?\RAmsA>E괚r6pϢ&@Ø'@@%A:!6nXy- jvcr= `9t2iۼIؤ+`2測zSeTN22Z#ܿjdQv/˟ Q@gpJ&R*F|H–Dvȏ1_X4}п%p`8H/q0i3Ԙmo:חy^3תjl⤴QF$ vK\=s*?r#ҽN4f +0&$c$\!bd>Ȩ崁ɂF(U9Z}38߅wAi*_rGS1O 7mK>|W\ lHn2LkD)Rjז莣YDv:/˲d)e$m$ .ʔ'=k7a W u0d(D*qcqlZ1aљQRxeV +Ch-{k'3} i?:Kiޣ;lD(4/Kq ecnjc:!~y0`~@.淰\B%_?aF6- |$Vn2'b̛Yf^*Jpΐ t-Ǭu3I#|pҁe@ n ǥPH'_m*p칺sқE~i1ngY;E ZY 0_XT=0a%1y7tF,W;!&ҩ! Ƨy~{pߕgUxҋA/Pރ A憭L)uJQI~Gx}G#4;G5c}Kc_ގRuY 'Jk-gT݃1uP_Ip4F)U7UdXlDz 8DNߢwz> 8eW,B.&[YSiͿ.`zU $EϢ>ȀWHKV`?ozE{ n$]Q(1/kͦ񂂎]MwHf3RmPx@"MW$CM5|K`~Cz|*)w n~oR~عB.F~Yi5br=~,r(\H VB) lu2:_!c_?"wrvUT^qݦL_е;!%'9|u?t*6乁38 2FЌ$ڷ*sh P`5Y%\2#& ^[?~YD-Wׇ#8$>#%2gDrf͉F\*%4IzTf?OPxfT]LL?@TJ.26P+ g`MŐ#D'NuȔYE<ښy$ZŴ;9]یcpԚN`'6GdpmdzlLh.!N۫e裧I=5qqGK;IDc 데KIkÑ k}9'UgBo[2*fAdH׭Gf wQ'%7dB6CBw ^O5.R{q5B,kci5CoP7%e#ʒWv:62$WR9U2!.c04<@!g3dQRtC\1q^^Muc&e-A J[hp1cj <--9iT4,UaEEka }{SHÇ'Im#}"<^)gIC3<排jC*F2f^ :=JCv@Λ;i0n>a}d#TkZZ쑝bexK 7XgGy?1 d`>%>Jk+V)&_dž5q27<n~Z˞ѺF$vQ=u*2`dzfL\z*.5ǽŦU[^h!|u1"̖Xpwvݻ^J!dlerjFMP âI>[&W~"s\U׮ ˋW0M?^Zm,]s.5Л؟lV֠hێҽ' 9j XvT0Q\&(Nhs8\ڃwлӅaBY;N\T~} b'ZK4=hFE땣[C0(*?:)M'XK8~FCr޾636ר+#w_}2שּׂzrCH.?"j.u0K0z'nܱq+6k ~Dp ̀r!`^;tP!e Ov0GːLb!FnYX.ѫ-ioǹ+7Rb01?ej#$hlACI|{v 3sWFr& :h]`,FNl HqcxՑ E(Īl֛"P)M/ ƥI %47uGzGL0E+c2C@Alp5.'F)f7vYr #WH$ԸB]A_t%h{ߓ `X=v7a$UmX"n;Xk4ٮ娈wؓIhrS{ܛUZc9sr/lAh`reGSw x ._ߟRA(UgDJW-jn̽%Ľ! *aVajљzdqB`*2 R o L60O N^n IX,ZwŊlkK-<Չ]X)N;Ҳk>Q-bZ)nr&&0-)CJ: "K*Feu8([0'2D0iU mϱĦVs>Ջ;??oL+!j-nbTCj({g0~)V<š HՔ z/ZJd<)#N*^^Hiaz)(4+BH `D/k>@ 7c;#mg+G(FkJGnJ #I$yy_lUz,g%wf&C-MOLSFިad9AT&CYǕǦ`*oCצT$b$|ZsuVD+?Hh@U;0p*6R<|b8q,&ėx6PeE6m>s;" p (j b]xxAhu:#9MЙmã `m0{0#ED IXP}i]Wvw-\<Տj[7A؁5U 똾$O?]7RRXD:$lPȞO:+ygdCGqKFw(#8 GXB i}NH|x=5d9wpɁNjBF͂u'|]b(y3ÿq"KJnR~7}+d_$ N}OlzZ̿:<jZC\O;[<4ORGD,Y&jj<0 ;Q :}{O[ &DZ̒eH=X#)16d+TS-6CprEgA;S :(z h`&1^{; YnO}ܫX%\]= xU.WښR&'p.=8d>Ə G-#_Hv$BڹH!Eת xI+cQ˖NOքb]>6Xm-0I`cʠݣdN@͗J|~H` {a_9?B6 dla'-.kքP[`#ѻ`pO F8P0yRI⸻;9Eqܝ:KiS 4nGg&;Lmg޾mŻH0[gǨ|0gG1oG h=dܨ~R* _ɽ*)B;<2&&x=}kh5yk=cU9A0Gac)e'Dbb؜g^O`!xl'$-J-EY 65ôzR7Au M-9_ΩM`&qԲ<+ @ZrGa:LOǬ:풜F܈ҝ5ՔurW,Gv7xSR =C;`  D|d @E#Dp&Q22d^Q6CozV LȱQ+ Yr!'>Ab`'r @\̎N]ۼX7r )hMZ|!8H]#X:rр#rhr \UXN,{C:A `8D & bC2pkPoTˬe=j 7 ;pvN)]D{5?05-- &{aΦxh)e ԞYPDNH120pd :pMyhW*YiLt ?;Z]@H(lo2 "Xwyz2zUFՕ~Wv8p2VsfD,WE6%҈~N34=M67.ؘGQ>1LHVE`=5BD-XMaNjw%= !,OyhA/oAg|zv1q>W R 9L~Y"$q$E;ÚV z>R]#u8M蠪A2tl}P16%:ӆCs:rʵMΑI]VÆ = Ek=~m UԾC8|Q@2+-Ƣ4IL Q |R\w9~l"`?<Bmg%{G7Aݪzٓϟ ݃9zke2fى/anάX6V\:Zt)YI <ifzc`m=M1sz +|_v4W fzcj|-hDY9\P{k_u}khbA Ael;jlFE `-2z_7c" We-L?1a:&2]0Q궵;3LSI$_mar[0m/9 Zy}xP{|J @%֑DV8kj|%?f˂V."*5(@&)ekUr#upL:D/]ʵkjX^^ft~RSvϋ!Y/sm03A@|{gs6AvvSU-wײpmX@z`!v6QIJܤp@gi cQdr?X@&Hkáaا9eZΟ:B\-] w*gěgΏ[quVRTk:-1aP%#T)P`Tj)q0^)p_2X&\l2 .wKN(Q^OcN;>7|+5&+!4Vtr*aD+.*TźT|_=s$a0bKXuB y5IȮ ~LQCB"GdoOfUmR"yuF_[%\☖@lT+q:K1JK."k*ֽV9% `=1I@Uu,r)1鰎=~B;qJH^Sf1UI*SB%4xv&Y`KЕx"bkV@@[w?,l ,V6}MGJ%xgs5}%k{&У42/[X?Rtwۥ+I̿3h8^Lv;'Z{4 Fq˨#eNA +J.|;B~՜ߌ+$Xo*Dz^!PBB k&kl0#At>NFVJ. / [X>O;qG?DUJ3:#$C(ԫ^L&JELh*'P$b[E@̠n'#N YZj!^Hh0U[U׍gg m JƗ4ѩoiBF+wnS22]1Ps_#z0J] 9Hz~KTp~;[R"(Z4M2rHd X[ϩ:^U1( WVścz2;>P6ZJ.LDO b٫%Ib.}!JKeL/{NRW YnQ{L+Gw^3BrKPOO!> Y}t#x7pڼ't-qUxf}RKTN'i["/m j2&X*'ݷW+Qz~b-2" @hAx/񀁪;e E_oŰG@+lb']5-=uI` Eh[)cGڦss_9GBPBMYʊ3yȡ,1%iЍ8xb-Dx/]-n-)) #sgD{P5`Ԁ_FG(+3]k:6gRJHtN[6+V | ؉RF%FF4#Nľ^{7uYHG=:iiڵźAInګd긛ʆCB=0+3i @yLL}l9Nx$!f5?Q7z8*cĽ&/LքP0M7yjƗ_0% @}xKaw`>6?z7"58O,S4ЮϑMd05#:IAYJq{*%D7 ]r6띎r}e>S 3;mpǡMa]"Uy#~yՍXRU [߰3oc q>9gmHq\b:k yr0jڑXqzòB4}1$N*b#/yO%{7K-["9pԏgŃ<`/ðxq9餹xKȨtRo#8pd΁ȤӮ ժXN1`:-Mu-,p :HAedceI)'ylKH@mJrR8ӒA`=i)䇝O_ ? ]Jr)B"y"+͑`|Fjje xe;~%KEG uM@x?חjbqv'qfX^@x_bdk|NĔ%5_IjW@ե9!_G&+ `=?MFx!n^G,(1dW١Wթ\@\7FcwΊs2 l0R#!m5pZ 8B&:xf &%0[!i6{Y#ҕp(9Ed7 j +QPIuOdU)ӻ'a>@|k)hVLu=ܥE2?.')puejnă2` 8 ƥth+ ulwfXk!7fƶsyN' ; LzIi3/8B]Z͍(@Qфn_ӀThY WvWCxJIͶVW߀PKmEM`"Xu t64];ݹYXO,F3hK>${YQ OL8}7Ш"Ђ!>O(AvhSUM\&r(w@1%/S'X߳ X~L?'~Q"C&];EjQhyknzW9  c"q[]>R/H52jS)_̅N?WJHѲŲWѨzBxh \ 'Ӕ3+l< fO-U%F]^&ʿfj=_/u ^>y/_NvzLV' m(rEXn_(%Fګ;ѝ峡u+U=-(a+/'(P<6註!3_6O(H)=vA WJ*r; &-MԷ|"Hz3Cp|vlQ0:8(CM1o,Jy,{Xdz8gͷű{dyo)E.J> #[yP?4N1\;jR}= B5VV7:J۬74WL}vjN$į140@gAtWީ%AYWCdH o&onV.K'H|9iJJ dNBkDaΉE%ow|T+dHC{l^?,*HٵJ_=Rh뗂:"ݘŎnV#f9Ez0";YbM&7c)1/!3u`\F#FqxPo @Qw.ńzL,! &#%"h^m lq&ܔO~i+{ |M4`t<6pfF9U/*1Df?.@&5lW${ybfz ٷD-z`QX4mT;"!/5P/rvr5察n.s25LM*aYTV=ދ+mL}}jyۛpJ5ѣRrOi77C"puwv-[vlפN:4/#f IܙltcBy$U'IƩTqЙ78LU꨹s |v@f@̜h-"pI`3RJ\d5.%-ט eMԛ04+@gL W.wܙȂ}2YE(n) HC4$`biX.Me;̭\GXʣEb>݌C|JwŠ`Ir _&Mmy 9^\//|zĩ|E\wdrG0 B-"l#J8[Š7hmo@D#ߌCڸ4I2)6@[;րn?CD7)FVAPܕ/(Җw-B^"J̙U|,_UkL똦nC$S1"$?uk¥Tt rX+]bS+`PƸiHP'}Xx[,='6_`~p+EΰQ<0u`54-}=1٬F:x0 o{U7ٳ~WQ>H¿~VCd#|XFXJϦЏWʸ~uCz"!y@]0yʉX媡hg:Iy:(;&`bBnC}`;-EVtZ_0q/kR8/طLq)1?X%FWmiwߗv0xu,52hyDZQT-͵H ; b:72(3:R^X̻@M*b{vIXvڅט˕gf X֬J K k{?Yltkm]bNi`h|b^66%GXno}fFbb8-wG/LiTD.տ+I8we8}XD#.@b~mJ,p'jdc7c63AyZa"h1H| iM95YOJ 9⬕vp9W;4 ;z}`-Nk[t")HZcH^@ Pv@C#'tmYV5gw f̡Hl%Es*wS 1F!2L9&*]AURFm e7r99#[9$}L&p(qz4WIj/a%z`H}"f=1wܮ{]3ۼkS`;B0.̀+F2Jq?jxHE0\tɹoЕp%|M=F< <1rWx^4(ҽLZpE'˽V)}@ ]SfRzab$gz| T2"86^qg͈td=`~줜τK1qG7e]02O5g$]Q^8Dأɷ^`qx1b!{z]h eZev_Qd|OWps6s[,e9JE7 PW|C3⷗qŨ ;пVh4H{Юך1Aޒl{k~ħ WMD'PHLiTL#L(t鰞TAz^?6@XH+toʉr?z=/V6f8]f_򲞐sn0Fҙ:@YI}dKΎ{ڬy3Mmjj.H;d䓱K$%G9rii6*')Pn%Z1~džaWƽ%l#$Pt UG VadT&cּY'/椼'0{| ="^(p/@% w1[{_l(*MQG,;~Ed(}M~iNܩLmP)L:# 7 ( =v:~CQzWWb]|WYJ _PڄCtPpg- Y_ V&#Kd(~wG"^f ueɴ:9muN/n6 JmzG IDH0.߷/f"2$L!% 1 sЈaû?rᶣ8C#Cr)!*"ˣrWG椈Ԭm{(Fz<#q@Vs?YycWmB% 08-Y@-UkV0%tLb! M C\Al;BS҃H%a1)r"pWZ%"Y!6#=9qr3|C1]Sn+>$-eIQ6e1]ׇzIuJ8= :Ǻq};&֭hX30SRX]Rt>@緪 V KC/CC}H^5\!^FB)]|v1U;[)p3TEG~[P*x57 aY0~W\W?鋯pѰsYIk>!cJKYRfΙ+dY+0<%32t,1Z˜ 6?CeFPCewm1kCi%iaH)}D0۝rBnMcMrk>A1!ȏO[gU5J"3M{~U?fS ܪ0&A"ū0\OjEIʐw=e*{A3HՒʡBCi8Ex%6FȂ )<4aԥ"{ڊ_v;R]f`_Q 5:+vfF)I;n|z4"ƇzB{ز5LbvaYI|{]?ybA,S5-G M>Z{W PTeY4JPj=l> Ld#CCt}FE2?j 1[Ի& U;ښ g]J#U ׄ !Z\9*(p\ C{`Wsqe ح2G˸q\|˗|ricg$갥m`E -41H]:B|!n'5b8ADG6:* ̇D8$숣H~7C*< whȑL,[0F[3F ?,`floRpz (lς9ǴdowvD>6 NHb)֏]QS5#JÎ21v kjV\:ٷV`:w|,rD@>+%s=g7.;_i@3Ņ)x./u VjWlҿV\!#@Vp99FȼiΪ1`ǡ4@K6Y:AY|t՟O:Nvo?{e[h@aFlQrWSG骱 2J@׊/'t>윃ԺJ=7}̋(IAG!fF*}Bp LR9Xz* :^0% ?C6ɞ0'I\4VO>\"RMx1H`U tDdj;/dhE?E9=0i&cg (v;ݻ|RoO&G8t+͌o&ɽ,yAry:pOEޤHIqa0O}Գ䎧V{zq^ͺ/S)wW#`e&dEsIT:Е _l-:H(/w-!&!ǕTs4D-bWg=\ک3>w 4r5164Y"Y3@Ia8(A^h۝MRC܄9h+j=XTADͧ`uFjE$o c_+|`$ =]2ʱC2CwaVB,y8efN;3(9j ei%z&&*P5Qۙ+`NBk;K @y<?enZ&^g4 C%̹è3Oj$"{Cx_!#YZm)>Xz].|$-;Ig:h یTQ-OWgM3F8>qr7M"龯^ ɋ < ":֮i,?Ҡ;ePchP|_%\9ƣK&٣텈UǚcW5+i{]nqlJB!vƹ#r;a'TjPI9uOQH-͛.:X B$8M$p#HzdgyxJZ:K<)҉Y.&׿U>; ^fm\ ϗ2R_L׽=/5[!4^vYHre)Rh|`RaS lgι4`v‹rQ%-/:TW.w.EѩB4 ^D_fᗱY:h j\27Z, (.[GP3;PpJ7UV~6D<9\BT'߿4ҤXTAw^bs0 s6Ik%Uti)76Ȳw6ʪrIj7lEQxbP,75%\]aX(Pypu$-kVyGj_!J֩g3xkѾz#\J:$Is&T;9^]9=ՑP<ݢ0M&lP5/ bz  s]`{c )'cp1ʴusTN@"I! ""YT9(BS !1.3h`> N @z'6hM G^!3Kg=^judf6q7ɿ_XѬɆZɾ}xw \uɶ }gDlH$bnq`@%ѐP )1JVpnE\M6~TDA|޶+O;S$k +Y{W- J90L,ƯJ ?:f?Y!zU_xZx_AygMc6S>͉Jf 7nOt=]'!]} V@;4&:0;@6 . p0K/#="}F4|j~uA:\ wa3A+W'Irz15cC [J/MRyG-`% i>h;;(9_!HS͏x@N@=>u 4/HzӐ}R?уŧ|'e+ igŹc?!7C. ip mMkcp,S4^ɭ |GW:uՠ(S-6KYqpSzJl7uMCME:frr*Bø! I?gފ_uZE;7*\e=\Vŋc-CKa x]2.tv5i ;YvV,:}'Gb2${\P3~÷Qt-[jFj`׼PrQwu#3hbL}G2O+?K(7m "P ;?` Ivb1H?FIޱ倦fx_*Ec02^4^R -2zg$~E QINīxPeZ,; cʂ kZaRƺΔRȢ`ɉ6u*7ui9l͈੎ŮCWL6EA錭r=wUW 8bm#. H2M Mn֍CJ_諣4X2v@n޴L!ak)y$V8s?=H 2m"Hso q}f wjQNJt(JX9@;$*[4pH* ?r@Wi_cmM[NTpC9hN!!]5{٩O=P.9" _A8A dA_CI4[7ct1=٣Z6? ZF̅`BchCrށk|9Lz+H}eo,aMZU5~HIƓ\|]bwy{鍔?dlbw{Ou cKhtj2',6yހCM @Hb'I"ȴirc,`)-c4O$ƚE*FNi\W-Njg!8ٍꮛ,̮GB<7axctasQ5uM3jgϿn~{z:J^e6n Ϲ*Iy%|}^lv:(Sqx"L<=f(%--T=M ^OT"N7#Q25Tph!@WAv@:!?m& _~V= [ y2ER{}D9ЫU7esmApiyiB_37mlF̸Ui=pkܻ& A?}eՇG$ t\gDjdFw ­/{ ptg*`5GѪ S.w6b3[ l/MmGueI&؛8q &"&#Ұ]SqtBR/+[͇8i.'VBͅtpQݽ *2rXP&@RnW4B7nR'dr$e{k˲vIy{8ϫuTz8r:L2TMعjh;,v@XQbKܮɼ>pgs^/ֲ7HVAYEmTm0UieWnIޖZ%ĸ35Ao$¤Xki-!Roǚp*XTf0;CN8euB+3mSuSQiPn˱rU_CtܣR"'>2قL:: :"1~$٨[LŪ!k*hjrP-tDuq&t肔 |mU;kbU l8~&]j[CBr=q[Y׬ mUmj_~ڎCiGD!6E ȦkD&~uȈ㿕a'.?9dS9J1\thW' y70ԲP:YCG6;&v)lIX4\0m¨+i}AV%߇vъ-^C͝xMYlj17Xje w]m$12Rasc>N aRFukrVer-Y5HdOkPXZߺ1"}@"Wi)#ll3vA\Q f(gR7D:1efW &Fb6e-J#15?K 1fNBkHQȉ<ړyc AB /|0KU)6QeqJ:@C|WNH"' ?{x\VfgMϗb{;iܳEuŦ}[4'ڐqOW% )J&Ir| w|y~;,0LV˰lMFwf9ގb{81g9\=x^#ȏ(92 lT͔z\$7~YURC [ь֍QgBCGejD IQVaN!ÖwlJ3ex.An2_ x(#4ɵ8qO46-r4m05NnlY 9}Oz`Mi~m YFPtsrp}09tp-g;)z2^<,?qiv?'UBӑVp@N<^fU%dwn_ w ėq \vk&*W3zH3xc-cW!J]C "뇲B[K1sٝ}/*0Qj-.4g^t`:x\AC& ܐ*}bVxK[$|S/E[V/ @-lܣ;פd?27ma_S,4CLESѓ TC VU5ef 8tb%j_FENS>_n(]S";X-}ݻMp8UISdlNs\adM^PHذLZzq||10܆wtтS&T ac$'u+*QrçHMXaf#w k\'& kN ?`qdFeR o+T2t87,2I{(og"OCz0Y{ԀSC~OvlR&N pzZ+8K~ ̅v`TB$|]a0%7#U2>xPmx! Th4ha֛xAm5HtL3T94n~ tA 3 !>CB;M7*>{Gw$;ߌ]sHzAbuPMvPG[yvƳa{\^AyHND@ke6ˆ1\ ?lWg(͠ )qm H%Ɲ"^ wB kͤ]Jcߐ$dn"u=vA@?<\^s(XH m .呠jnt@auq]@<(U7S$ #6iU'0|Y'!jBOTI4U϶tj3pb&>7-V:@+O-^?xbJcpi嶪T=RP1q=]l<+4U4pOZLpVݐ a&s .UB)RװiaKXFjZdn6V=fk!ZpƉ >{,n g4XxErS񍢁, D+Mc$,] H 7a;u.i+k̶álU'f{C@yg ;)9sS)/2G(^['pXֲaᛐD$ŀ Vuox- 6\. ev/*>tR/ Mt"bcL4F2*3WؘkҦ;HcWi1s 2SsM7]AB<nzutHWѼ\̬iِ@L]eQl#n7ҤmT^BE*;AZ P(ݤd%/E ~ C3wBףGaĸx(8ΐ4Ƞ0VA|CH'%4JuxDV5h`,e6$ _'r ;9yױiH^+z>dS)&ƎkF}%c/⿟~03/n`Gdon*1!Fj!c`hWCa畚)2k>b\ʼ;V_ {5+$_/ǃ&)M*%hTftylw^P3]Ŀt@,#MTtD}7D^61Ge:77v2{}Z uZau!\nXnmchÃӱ9b~L/u\|X$&Sμf FEю6|w~T&t51T ;_kG4Hoeűm>> klڰ+1D k nj)+TSU8` es_1{\϶ROlBI14_0(FSoZ+aL|%K)eok֕tag Ftt`HFoF \7ܒpiO$D ldY<lMf?Q+GXlkm{>pdU]WL.ڃ[>[Z/q?ۛٽr3 A!<|xBE)/kKΰAwA=>3l1$d}axm\"cMzj4= ߈ Jk[zml_L^uYxpFFq8.^>ωɆY␍ő!.< ~A3bln@)VTaPc 2hf~'ǀNrc7L)7پ(@D5-^pjD2@U@RMw4;bgIyx)~ZxmNјg_—f\L[AAָ=KZ3/[!e]oeEdV5R[\ʾ1|phF*0``w$O=EF۷|Y XQ6BNo=%F'딽9yOErDzvp"ټ[2fj}SIR3$:Fyvj7=B9&UL,L'&#w z *㊠8S-\rf ։'hvyFjo+m_@,rG4/FYTa>?M[ [k0 ]l0 oS(ƒ)~Ͻ6i%EZd!БZE1!.`.Cߜ*<{-@Azs(Ƒ g<PɹyA[r3?#736zPB?ymϯܶ$T}<X=y<ЦG/XQA$ r,mP#/(On˭y-*1I4ȉJ^lYۍ7u"b?I?y BDcT+rtlqHH>F^5"6C~Ur{Th؛vgpG m|8A_gDzR0pYeh8顣&-g\u**yQٜkNPO')WOӠT:]2ۅ痠v8c/W:xƁB$kt;b~#޷l¯7X ]&ˤR-ȓ'G4%ņiSCwk"4)ffi&I~ #_|h3ϲɤ~Y)U- Q̟DZ$mv{{ׇ&H9 q)dXG#)YH몐Ǖفl'A{E BK̷4e#J/^74 1~TEG@bTP3°d7f:Y `I*>I@0T=9 U}ګ@>'c슠? qTbg#m 6Dbhk%q|kbcT&4lvis>W ږ*Z\eit D.38R{"W20RP+b*6Hykpj|9PKRj#`}Lf[3ʳ9&,q'9JK_WB[1r(6< 7+2keۃE%""tN5V&"Q@w=j ܻ0V{6lӇWκ-dgApJ9.+ּlGo0#>y p X}4: Q>Np:˰&9 'K$r[įu"A6ッ~fJ L,;?d P@S=*`"*"ѥ6:6HX{aO+zB[Xnq84T==K;1 lBú1Ar=n_F|`qbaҹ^>B/1n2Yʷąpzeր&+-W+wOWQtǍwH'p3"=i$t8 n,C,g?BR0\"Z.#9U}>urjd7"7,4J\?/9)j~~ʵ=LHv?b>.sA9 *36{Zeqy{k隧rej}?p_T< u1|Ik~YՋ5v"8w!cZMuk(?qw F#Lv%3G:м xƽf<*pfOE AveYh2]rmE@375~IK*+Rxw9גB@b0E7h-Z\@xo>SxSORG/I@egsm;ѭBG3>4ʌrmy!,z7w b3'G\PWe[ 5i|AhV!wniM y` ,.{fׇ\5a#S/v̄D!o ೬ z[еxȫtD&Cb`_K֬~Jq_yI$ȥ[ ~wMu*[$b ҋ?f(0` @UQW,+򟿙cI_Yn}( \[4^x嗵#D{~-W2mA"!E3dX35P5TǾk{<;HOfͿ5XqT [fiIyMҶp,Ëm4Hcq[?{cӤ?,?Bu[ rr?:>+8dAlͮdI``6-j^WITZQɘ3PcD=A"$vDd=~L@zu%XMߖ\ΐ5EAoD8maM|c o#\/xV9y ʀA,E̡$,<b5{1I,ui 4ێsѝpu|"IADYDZ{OJa(>8֚?stZ X}|_Kk׆[M KS Mq;x#ˮ]05$XZAK-)B\KU$mID Y` %ժgnNAz+jPR'e܅7<)pKT&$hEO5|⤩YFi{Rz~Z>,{Ã0}Ռ̓Uڢcӆ;B鰵ҵF28-Y-ݗn 'YylRO0򌚅M\ym(hDh=@)s㷞TgQG Ďml>@Dj"2wfY䬡6xcUDM,uRA{Ā]Jm4g'7$uu3RlTP*Ox">˙`u'W &{I[7,OYL+Ў<$u-ϳ3D_WVbq1xqy6cv2!nIvT?/n+hlֲy*OkS#i~Tõ뇉l+ @?+ȅEF7h4)\vuBT.7P'}77p.<1x[ilb-nu)wt_ db.NxF<#42'!dˈmR:/xW+p)39ap{;Q h.3`<tX^XʬPiˁuJ䎭bb7.n{LJS+t҆jnLM*g9߉GҀn"UZBOk3LUB,y>`+}E:) / 9 C"eLjCRiGH[sp/ˇG )R$.#!*y0MmsC0*io; ӎJU3+XZ1گ ^&a * 7$u.#Ҳ\l=D>˽>>}cdLFw:`'rta ,+ݭϳ7S\`)s3. Mp4L5pV9Q3AÌb`4Fg`nrL*Ȩ?2X7?, sjkS4 1[%v0:`s f% $ܞ|aET40|T%ILӁr4}TLq[?';ABh]=:#^%Y'CJfQ# 5qAvahŲ]O>.sوhX~4̀7nI`|JjM>wCޗ뼮KF xG7g=n.0vu Yן F yZ>R7Zy|-Y)Cd[w/*{(^xK9Bg!htIQdOrH_f4>DgZcf߽7?|Vuyッ^nRU:>{- YTm5sU!X1D6N5' OA1;'\WJ*j;sَWnwzoKjamoo97 ƈy%W-߻w,ڊSd3&!oEw M'"Y>H d}euh$dʐ[ֹD"1׉h37u5aPOC<+\ZLeB,X1.*1exx&ybstQIx$>c,ޟTEb#s'5VM/ ]P3}C"V-(!;%f3Iy$t"4PMGC"'_. )(q;i[j:_ijΪJ?6) K_y <2qEa<{JNnƣ)^(K7uȷvtǯ+ˀjSxTp=q-Z?]i~GtOEEA(YQ Ga'StI0h¨l r䐋zRnlY|S CxZb"|_yYiwt.|R.:Z ˴޿m'`{+g?|d3M93RzAX&s4N~En\b֐rS'ٓ= D0hɜa0V+Ƞ NCk1 XN 𱶩_Ҹ6%Ӟ9 Ao?.=fYRg_jKlC4D䗬Hq(,GLH` x (!B",Vgy&+ uY,K)t f@yZσTwh)l)" u@6N+A$d| h/ u^ q_V1暓EqAlۦl@a7>kq$u/fk {4voֹ"챎FPt} ^OiIq ~]*H㜥{l_TNQAT\Hiaso-9l_\ 2ßu0PHlå/O3R|f 2 #|NY6j,mR 8 @ TwyORYz7>v %j7*^ԫMBigB`#㚨Yy?ȀRLmn^Zf#pwFH\7U6,}p-%w`9?-^">Z#i&c^P$I0Hsʨ^k=}ԥj\mؼ=3RC%sP[W} G^WuE')]mDVX&7:rN |;JM3DQ]Rpv7 p+1YCß>t7aY򵦣|[Oqޡ N>j_Q Q% U+v<҈ ߫\[ZHݝqBEE|+ur_ܦt%]p#}Ϩ _W6T|l&Y5$ZOR1k)L-TTM^f;F+&}H˻`nQ4b|Gm4?Md]։Oљ^ ju<"&?hy/ONɒ:PRY;07}ɕ`׼ɂvS~(/`݅jmT BMJҪkhMQ1LF,&Kȗ2<䘸 Np92QH82Ba8, 1bwg$J~y1xt0`&(Әk[$wGɽ- |kx\B_AJ⯑ryj-*tCb',qt(]ANc J}+-!cy 4 +hgS t5iP³+Bm$𩽸/0YY 8fhrhy q!Ujg <jR`(7+z72W'#n&P>0٬AF'z$=Gb$%tL^ S|t=fz`INE'}_&[2OQ'd d8 T~W`}GL@yS6 @ATb&L,Mˋ6yl:RY's6:LdY}Zt1LmֽTc( fhе\8ȳO#,.<EzrqeE_uXq}`"(q~Zс+-Fpa'&蔸pv3rXTB}6XsH]Gf`L]"tZ5*s~:<:G@i&[wdex^6ϵB) m060Gwݡ24j3ڒwodÝ=ʕ ofJ.gP{sx?|QAA )?| |slӇsmytD py^Nl.Vig2oH}A$rk@,Enc3jd0?ꛣ>yJS:dI~l +#D OF#r 37b= ~d2;n{ [I$/։Qr 9hȿ~[=?M*mTa;#1Zh= ڑ{˷C[AįJ&#i|*ҟ?/POeƲYe]YwoŽ0e#KWEZ:Tl7O. a$2<ǏӬOZęPARQ$i_q1B ۩ YӳٸZBE#yZ4srzs)%/z5jBlט >;LPmo3="o!]u"a&ḺָBPkW g~VeG+}y؜Qm}16J{z =An|v. O.ׅU`ͅsJDyںn: :Gb t)+DZqX讥0Ww ܟ҈@jB-x"\/$ynS Yq&LFLEW՛i[Rp<ƯO㦹nREB ❕9^J#L^E?9nR:fN,N.[=.k˝6pKq}PlgrI/C;@A (SU#V]֦ 6biڢO2yhb9U1f1EE&QKa1=߄4Fp)迻k4t7WzV";\Ֆ.4|ɉ " C/DKF, mE ]D (Lm}~%>J#W% q<}87"7ل TD7N4+y%쇭?_I[8 pfiBb=E0<0LT쿍FY!F gaر')kxD*-*O NťCFLhOnfEQ n Mgg#f|M0 km 9vQ̴Dum;k#u=na>$3p8|][x".:2ET1X;Gx#,0>`3ΘbCRdF5롇 ;; Cnv#f0* #z6ߕ2f)u4` 1"RqYpZ|qy͐stqLg :0Sl>.laF鍲hCjnK1EŽ?n癩S؞$C6fp4 OFbwZҨS%V $YNI'4Aj=-yny +1vn/0> nPw nu@v N{ɋ ޗm!oWw 5[J_,jˈ\ BУK$ۢ JAnJ,dgCJw%" FJEfd$\_ޕ#8c4\֑[ɱ! =$8CՌ[e8@Ϲcu@-}?KVy'Պ-hd^LW]ȃTN,Ұä~Gpjݼ%!r)FjQ@n$-ǨfHSLм Wg8~ݢu[TzRž@4{Gơzuvu"gDE$@ A\-o˅8![IӸlC8/tMrY {3>;~8u"D]? '_Jc"B--Ui.E 8_MAnC:8/+|nGoQphp )p1"i\2^ ڏʆs^G4x맦A9PUf]4̥!Eo X{ a;p\W Tb"Vau~qMJ D d1T8/ƦϒnrRjpM:GG-9e4ZiƬ]iW{[͛uMk k„gU$W 4NmHA_Q ~2#h0QۑJҥ]PZ5@rzI"?5P)9܂H èCL7/Ƥ@5g@@ߛ;RS-} `/?S{G:k3عxu-"D E$q-_Los"QI,sŠ@e{La F?3e`ʂFv2z6.B;jz=ȴRϙ{TF=qE|Y+*?{>[<=+x~B <*텊kȴgWxcy >E0u.)tCNe8)]x joSb*ё4[䟎3Hg! WXA^wtcjV7^;#Ot 5!b\1<WC3=Gs'=T:]I%S<ՀFTgWm4vERG_TӇ$4,}n52.Y"V77I)$^ ,|oɨ)yջ$6r0f3: ѯ!1JH( t[ Չ;5!\Oԣ9 dx;.]Ȝ N$ լv>L鐳 JKs P n`<8mLཱ.~ôР:NqV*|& !|nfo:)s WKM#V53%o2V1p JS[}fd?ʰK3!COdìbphVθydqwl쳽]@lCEo y-Lkt"un#\$Рf^.Fݤ-%t vgeb̕TzޤMU[8%/rr i:pWj|R(*MG b)o5^xYdVKC~E, Y=#g>w-m"ɧ^m#K{d 0OdEz(6L#wr.\] ul`fP*ʿu+jĴLYH Z<Ҋ4.?4Q8kl48S@m3&7[/J*\+bRfW`e WN)N<Gv\әԏOz1ОBN%2 k8Ӽ0Wmx=ۛ\GCyz5΍ys*6)5B.\Vkhi%p6+^ !K,nS e* ذ|m'TnA#QbR KeZԢ%] І_(  V9Ł("*vBatqe ,w?-g HI ԭ { ֕*j,JSC4ۃdba A>#?zrT%='2 v16JlS5u&f=zK`,úE!&Z{ݴQU~:Q1S 204fWd/_%x69 C1 ˖zq9uMd#*wxC%Q$va~q= 6 A ^]m9t0#P6ݗ:H Ȩ~0}+*ݸyK}89Ka8ŸFSi)D=HG >JůxԞ㓶r _Ad,CQOvLzL 2Yj.Cʼn>ζ@ Ӯ~ܲT@OZeeTS;Z9QeH*#eɋ(SW[)eyZhOgx\a{Vlħ4c*?h sAq '0ؿxIg;$>iSd]vKivW`7u c `@'s7v`\6d_ӱ&aԕe5+uwi$h^Ԡ@ c< C 8d[y" v lIBo (bѣa\nD(g57j!YpXm3N&'ϴlG)~LX$?|L$@̊~sX!,;^q1u"mf &8 ect;..U-څƈ6#1_zY%̼e6%-7!Al\8ݧMٹduX;{dA&R;g$hE Q RfOֻ"!e'6vD{T7҇z3PN-)i5ķcf(WoSTHtک+[z~?s||fŨ 6#IelG%F0_}kCIg ~%[VEq-WoPFio< _XriUƽ̨^ VR}F)7t2_x"yg=/0a"3aj65Tҁ$Sl6;;AdHȻ/롼XwANRYxLY4ᖻqrÞ *VSZ9hHcT8sDem f}mW>j03Ji`q ǂ .hHpqLBKCK:H *H;1Q&3a/ }(S6؂©-09t("92 V" tOp97LP$QU5N-,7aB, X7nb^$ h/b ytGhReڈuxSpaŗ$z֖zI܂dmh~y^E 03s `f8/ i0NozrtF"خ4~]ĢC}5EUŅ24ݲ2|uDD _(++Tl璑}:OHhPwinj01*L;(ʭnolB [)&t ʳbMEo5%Ȫgeؔ z&.J2163=\RI?2} |0P:{"`*\6eLACVb'+2ӗ{v/]H$R-:BrVr0А(q7Jٴ?-0tOk "靃Dʩ0-',Üin$Vog XQ6-["s{"q&]6Q^=[6J0r5^>2`8M0m)%]gynn_m4\3j\=9.);f^@f]rym~{Hk #yΛ{b$UݖP1ReQS&9žIް,?%܈|J:SM[UE\I$w-42AlXsuwCx\Ex9ϓXӢ(ĕyU)!!m_s_[zBC_^8nb2 bQܴ6d8w?*pA"2EcvM(ǐ!_v/J#'Y'X$* -*7Ds69;D=Konc[}1jO{E;9 &n +,| o}7Hw}`$+r4\)^~#d`̷W9MWD=?ݚ_iE~rqZ8?d(B~L:q3A0P h~!TabgZ`Ha!iFYk:G;r +U8E9咋? UP[g˖AIlaIgĕrkNCTMQ0?! ~ B̬OH6ѻ N5`UaݐDv eT:+J~,%YPJ0BS䉔U:.<:(zŐ:-D8h0g ' GX١Ģ_ ^;ƪFM@K;σ==[G%Gk7l |A[U ׺tKտD`c}^͵"SQ6A:'os(Z$gFwY*mJJgV],2GJr3pg܌+?2 0XuTc6v-zR8 0 vv1璘#5h3Hr܎&qw&2Ce.JɨmLݞOQ+HCn:(^|fz>wJܭb YYMXs1} PhC!cfJ{A|Hr˼52sh&4`'GswgLv#=kS~lk Nd+[PCs7X<݉Pzx ?ntH0bD#O#om[sskvTo##qRƱ߈ bfgͩOoZߛi;Qc(~7 f!ܾW%$d(feb3Lz|W{K$+%v؂qhӣ'iU/04Ew{(8;ߎq-E4,b }iIzF`*\jʂ&[p)So0 i ghx?U$}˚WYבدكh~~v_F6uqVV;a/1O>`hET:i<m|*1, IkXty犎t?1OM(Mvc=)]/ɖii./8ky+qX-Y(:}P1PM@ZJS85a;Nꌕzv:[P-Ŋ]A4WEiAQm8 Բ'oz&a9DƠ!%C:O>Q_ΉbW7ĕZC]6 =LO]'"'-mK& cQ~{ۿ9 7͡tdL@ǴMmLU#O/x@;_\#sB2ŔDCYުi3~{ܯ!Ј 8;tP: h;Mm[~N7~Y!uzc-ʟVH6v^W5ZS=:&.YOdgϙ_ϑ|?W m-ws' ccy~~ӉM4t<9.vm1IF|WlNӾ̶.?f`VXjbTF_л]adP*Mfd]2ǑpKwkk㿠8 .,eC5CZc潰]˸ၢ;7B<7Rh$RŻm1gMcG ,b+T^C 2m@l & ˊL>XX&m!G XzzMמCX@*!C8@<(K;gxcAڿ߬AT-`t! ~DKJt ƛ#"# tv0}?,w_?a#^w8}H:,_F=Ɨby؊hX^T7.tDqJk?V>Z!ϘiX XǺӪQx6KvaAאֲvafi&sb :sn(#e|ly?ZVYO8s7Z!+p?5TVpNPVS.ب*~M=p{ۛmJPF 鍜p &<n`ݭh GC{eY~7̷P$r֝'G!gnא懾 ݽlڪ2x'Qrgᡚ0ilE񴢏5? Y-CdVr̮n/^≵> <=.),DQe`F4@ m lG{~ 隵} f0IbNj3]XĦ䀅G%rFYe<qj̙}n5pf [`.4E88Uv?fIFCqwĞm;OR}~Fy[=A~wc/Tg6{v;5NcY6{YBaUpIHN >[mtIHӦZV:{,nqDou?Һ%_W7iVAjx97U%G3MVX|Ku@"Ѵ4ˡ'fC nє! X}Gđ!)ۿ>,y]ƅ# _@x`KDjd̋9qրZ>ٿ5~䒆vl//rO-#ky+Mx#uX_27[oc gnXrc5Ǎc94"u[*)WqG`X01q&q5 q k\Mϔ`bA_$؍zRLx]< œeCk}\.Fϸu/Rm$R g] e x@5Ae9JCZVbٷr9t3p5+HGu i16\ ݐA&)^CǎVltߢ0VNq!MD %uKeWYn07uJ gNw8gz? gnPsNxkeJ&lf$ LpXTu̒n*[}32Cpt׃!<nNg33('ij4S$&nsɣPs;I|?l!cje)d@tkt9bBL G-+yF73dh΃}"-D1oNxվʧ%TWߟLQiڒ%?eJsyCCwv9 O3F؛ͽ2)߰/ihTSϵy#m-V(=FQ'szA\M@UF| lЇ2gC\#EEl~{z4{N3)&H 2sFRA}߼8yO]WG{^ &Ÿ_Άy_f:]z($,; M,%Ĩp'7W&V]01x25 8DwFdA8a o쯈]/C#rٹ/LGM,sB(Zm] m/$2B[A1se?Ǹ;B\G|v"x/PNa̍]{bd! /Bkt,9˺+Ɩ^I3Ь@98]f਱>☜ C^]cT: 8I ' !%#kwdT KYKz&,W\%}_nuEhò%pӫfTZ|Y>7VcXx{:Ek^dFȃl҂hͅšSP7fy8}{߹3Uv)|`vІH*udR`)y"DֵE!lMXGCk%Ot&oWPX9D'-B@ N;r62}vezl+7H_#\%Yˎ+BJĄYVpѷ#g칔z<ޤ'8(4BJiuȇye`Jy>u ; 'eM Y wREBk8VPkC~OPvA%pIp Uq"$NfV(mZy?8yP?jOtvU|N9hyr['=8r:uurH}?m΢9gDCՈ$4jqe]/Tk ">2awh'6S:~srҎZrfA-8 2Ӑ('1lg Ρ3!gw#΅~0vfW͔;&]7:׺@Sj#Gҡd¶(I5άߤe({,gc(`|PI4V>Y=ƓM!4ݳ~I޺o[\.LvڠB9[C3E}УȐ3PWA{W#{5-H<`rH1`9i0,nK ^G:ThD؊dM:6K?+л?/llaX ^dY7eDOC: ?LGTˮ7lBfϑ,:]hw 9_,`$szjTp/ cMyG@5$x ]{kiAüސ&@1HvJ%FSPgclEWE?\ˌZ Y&^Vh6*8a(g=pg*w>ay'_KLH?z5;'diub;%E6JK}3b@_j@W5i$%n/?7ӃswM =DyV00j^.Q>,Am^I~Q+8NKHlc,Ekn5.6׿dZ(kG!n3O"W5(0z{6yU\C$57:]/(#_9x>9{<q$ n/t\s.}f̀̾be5!Tc>'K~al]%9ZW}@;! ,oL4tDhՀJ [m4G/8̉YԏOLs0-6 X"3}P*%P_RX_}8`_ -> :JL.aoJvȌ| {=|Y5{ԐBnNXouB2cdVpzܷi`U %!rbJ`RHK~4OTfwDx?Mj[%cʸD5$uX6y}ֿ"hDmђSYX.UA|Z AAYT39r|Ӂ7eDb 0ʨDK1PzvB* \(%&Tu4Vsh}@^ g'L4Eݒ8T~=v7G*0v/?.rz텀_Ȫ,6#ܱ'ʯPq vN͍޺Dŷ]ʤ(GΣOwQ޻XvC&GQ"H\ȗ|,4CᲡ3xl8ƒz5r^mC3/.DuVi,,#?I*$؜~t"]% S4ۃPd*rtsXR2Ƅ8 Hf\Sg5)C ! _kbL\Z==VFyƖLa֭ '!RY-}FAGkp{z^Y҂=~9n?5upvn&Œ(\lKv0^vBuʮ ^a HO+HU9oLc*1;.nxiMWlI'&{Q% `{vJg:xBM`vJNZEl = hhH;.#3WVw(B,gdGFy ;VI90 䀙buPY]ۭ(e~4; ˁҩ:BERo0)#mIO1 w6%Ծ1O <(K2ZM8jwn$VҔ#5(}.Fsb*tP-fڻ .[KêW7@1I WOo70൶ezHʱzYF,A]ms}ܮ.@ $~2)"*|(U|4Eş|&P"֣CqM8_[ڏqOD*wLq{%%z>Htqr 8ϐ"]Sf! L%ѯ&+44EFr{b^Y~f80&3P-#~a<ɇv uepA ㌉4|~k=O͍+.n;S=#RV {[P}d{aRwHk" :3l ?5E^$SV1j&贻>[Nn p)Zuw9UQJ֎]^XvaZiT{Wr'md=\nf֏f/Tۉc}P8y#U|B 8Pe9?j?;3wo BoV'tI_=[niJ4]2k@qVQ.ӬzVΖ9w 83*'[r9vl_e\q2e R4N;u<]؛ HE0BخC-;z|0)F|]*q>Mi@TϘ'I~-hxs=^@-|um2j! ;dcAӶ(%sI_Hl5 G/T"#H(x@M-joXT5ci-|؟Aeulj9>$u4ھ2E;l,]{I82|G0a00iVcPueD"W$|Dqu9jN0D_?涚+r/?1s(l!gaVZXS';)bS բA1ăl@L@!3i5/Rj{څ9% CXgR,Uaw߾.ojq<@Q~ܛ%1NWYxH7\4_=7Υ 5PW/.sfL@hyM!ʻj ]-џg{i@2π.ZQi(%a(2a# O+ y ̂#Zk@l!܇Pv삩|b)E^g X[c:Knڦ`QF}%3 UKEs: MՆiI>;$zFGڅĻW&wm}Nt m?~N|uKMĎ9 $ƾBR{!*+/ASl8\FfW5A(NS'{xiKf⺞jhQ^DjE4L.w%67 ޖ5WM.+ t0aN0bd5ڵ~ i8LȢ۫$ v֝0@B~}9IF>4dypY`*:`ͼYfrehq6aiAo%iP@U_jލ.^2;FHxb$[qh$!+Z*KB#D!weD"p;᣹"P+&X8`U3yvT6,X_Dl| z>LexOD֬vO-""$AT%lbNfk:̧aHۤ,o{UF *'K!ӞSpۡ~q&,j4"xCH"F#t`K AroPh/*ǜ!ͮ*| hn$`MAl\LJ GkNFT&7یͦhLbY2`IWc&Hpܕ+l>I$-^jliT'~35$Rcښō8\#.r護 PD㜮sͤj)?參m1ຶ/AO%r} -}fK2p?׋pA,`a?:P}1JG^t惒]D}1*Qۤ_u =v8eͻPǛ`|[H; l<Q'`{_U.ɗ tӳ޳ :L^p ^L;p8W3co:f 3>1=B.kW֗ǚLŎv`ts(msH^m`;( &VpJ3_J2gеPvbjV֔v^gP5""b72=s1RЁ%'ħs8N-7Գը1֒"wL F"!<ԓr]LM 17*?7*4KQDE,ݔA { >Զخl/̎e89Fgl ?{}niO]归Ĩf; =%uVBb[Tdo(?Є:PB^Z29DRy*|3LPwQF*ZWf4-ʋ0T,|u*ĸ/% U_BB]lm'Lı;O=5GoY<?\隶ymNcEulˆcCK1o{za4Z(6hXѬԸeTr᝛P*kN>PBv: L˄<!HJ@X.gQ?W(+ǝž$Y(>eC#ƨ@咅JX`3I,3Ѳ"[k O@DߏS;K%01R?{;0@44s2:CL?Y r&`bkgD6^c|noprMJY[5~.[:pu ׀62˾ѥ|o`mX&q|7-+gB(x"9Eܛjc-i jR%e\De 7}r|<}ruÃDV|t*C\냎B% :dGLY<)9$|F;iAG~Gu$WprNkQT&ɿT7Omx̍p+P›,EݾӉrHݲ0o-2&ѡ>*-7ͣy_[i0o]du㒉 ?2Fփʬ)-"dd56E J=>j^TeTBmģPH"UG\4۠b^rVbф|O3+;y`QeݽCqYԞ6n *?=T.Ѵq~i;݆/Sa-  /9{MߜR/BD;\ Dž4Eɋ!O|u49Xx@ye1ik?:Zz;ưsEGi)ޅDtc>ʵ~yvyX ~$+$ WJXH>b EYomLc5[GYK،Ȳ94 X*~ @H`'m֦;1` ^wJk[Y; dB‹ p8SUչ#"nPvs5*~Z"~/2]̕Uh@'Џ| )aElxѱ 6 _ܛBnq{y7S8)Ԧ$ `1"1@t+mf3GhhL }A]BTZJGk%58^b[q7,e_dIH*@dvL^ӪARa Vޣ ԩjC1EayFd;b¨/LI^'1LbDR`L_H[kQ'(vQ.P(*nXg_'\rשJ |&߾ڔo.1z/U1!B=;\? vDJNx -1R={}~ya?yw9x@)o~"bI[D6ޕa"q 'o%v}ː(ye =^ЙY9S a0'n(S`w1-+\ڦR9zrhʿsբ(LgX[lJ`z[#}cuanw47ʫ :1GTa4:5簏`(ôSlKGmc9M%p$IJ iG:`cBa|>|T'QsGCcx"ʼn/nTY7vGGŪ P_%V6r*aYX K\/BsD;+d]G8>1+QH[aqPlT2:w͖qDM*Ic߃DUSZB}J-#) =*XϿ/ok4/62:)2#ìפN@gz۵Ƚu(;SBvuozfu] Zec*yS=xN&yRA$`)a]Ş.}b >v"+Q.X~銉!@`iZWZ /*6iSzz𷔅6j1I>"_NMiŀ xݡ±- {u}Y}*k4@P ԥVvg2^osDS Bsvqe$ˤ˓8S@_.(!ʨht &wW~`%!n!k`^"Ty Cd{?*{vuv,%'WK!~FO- ,mп 7wi4s€8?ztZQ)Qqډ |T0ʤ :~,iu"}J_[]I!To~{p;S/"X;2BSI=2I0~L|,"4=)V䧛1y_=F(H_w_mJҦ'Y~}uq&MWޒM"H*RrִADO/ ]urBj x`1L.8Ŀ9/UAe9:I/D7ᵚ-mX$M1`FMu Y`V]c4rƸX|enys^nz 5<^IqVsyRμ!C%UxyV . f"97l8q&x`ڷtBd3lo lߞ)i9;(UH" q胘Ig$2|^]/0s6{yBRjXNm(,wR 8w,ZA]jrBVIGi(Ø8|?T 7Yfp2 8ɢabKawqUOuG{no_M6Dm!sb~y7ӳﯝl:6Xky?wxdWͤ E0-RŮv7vnp4My vo@.&1qt Ծt0A[kOwU|P®-QNs҆B;rH>*,Sk3@n!|i]|*TR4т͘8r]ớU[P?N@@_[lay;Vvdnjx~MFiCz1nj潪nylɒS)g,Dv BNZXY"'(QNb RgyYEb4] [ڴyPd>DX,z(v*?=mI8E>vm[ ֊/ =OySFΩU$"MbnrE|付V4Tm5;8 XGI9L im>.Sº]]` s*-RBvV= fqٍ%)~LJ%Bm-G#v:6+dg&ؾ98*1HL494<( Q6f>Fs"0<G:&*TnsW e%H%EZ.+<#kݯG?tEwS6f+PqD x: /J `כN]ޥWs 񯪉̜d=T&9yf:\Ȋ4^ C)4 z!=:LM)U5ՅKj#6u Ye }gZns ݍˬ(2%ߒ4þDmJ"AYȍU}ߋzIm :9K=SV DS#,.ONQENGpAȍl(e=GbtXqzt^4-^4,"[&;a/tH9NF ͺ W| |%}Zgڭb^nɊrRS=>Kh(*ab{dEk޾䎚|vD3; Q0 VwYRAϴ9ye:[˟zF⍑}ߟl/s?pgU܉:eBe4ֱW,`פ5@#//SNK9&s{*GDXK$b d D(0%חP @V/xᜱ%&ʨ%8H X]̫k@ N?6I}dBJR{Q/tټ> vB..|a:2x'ɛUgR*m@J8MMM; (bW\M1C8c梈<>eD9ےUf˨I[#)p>k`(Vl?sw}!;"~ȟAOJ.SyK!t8=/+Q λ$4򿎞2[*wAL:Hm#LHR_٭s荅'?~A-W0$uԉ ELF+28s*F½ \/'xHH:YXædߝWVF\r7bRJxZwQT@h+i ડ!.ռ/f;z^=-Oy cqAz]c"M`d6'^ˀq:{Lrf}9qt{ ǛZ&DsbbH]{*3b8קqL:\(UbੈJBk$Od;ܝ+De(+RCAFӲ~b\ I~㞉{5V_+N GL^D`G |{ۄ?8ꕙ]~#[_'*} ;3 'a3u5f2ȅIOB~YKKXm ;>_O#D$xGɐ۔mj&h%aiV\a,6}q2{xw&rqF9 :lȡ"0Pj8Kfgpc-Hϲ84i#1QO ԠA+&'a%q`]ę~K  O^a53\t`7x/ۢps'"YurioQ>Xgx"FEN<xETĺڞGE+LV̅1-\&o<ܤqAy4a_Y8^[▏z8"=))| l'>}ݬ-,5ri)G8lЖAduMi%H~.Ï$bOA{u- eRւ7ͫ ެc/H_VMϜt%ϗFaq5|y'9mUAk%LFxoVuL:ѦJ0KE!h7Lc,lLNq$sٿW$]oi$-ZyyP8""4}ijWi@-Fqtڨ,~hRx7 \7b`:Փ +H?U˺J5⎀; :5Zg1eH<.G@ Э1켰KBQ{;KS3 pS>v;"y}xMrK ;acZ3B7ҏvj_ВZ%x~(N٢,aZ3R6ɧ ;$%ISdgN2& +kb~ɬ=Nj 'S?1|K4~OXS~%C.;i>!QWN?C@w~qFQZ"սʼnoB(fso^NVg(cxb Q"q܈yCC!Qz\.^HefOe I͇~3S#sMcGvpUBk^Xia%I-&06[XP{._nf+k=$׻r,ZO3ϔ @gS2ʟZ*!JAJu!A͡Ă7P6\]# ?n&*M09C,e _uŝeRg~O`D~L0)D582|CR)}tjLRwߣ1'^[=]x##Qњ& _sƤeb*@m3޺#KB7Au>C ޑr۽Mq"x \F,I1k_'{,#(?U- Z-pOæzn[sf-~ryxIq&S}.EB͏y?S1Ƭ1> ^46FvPQ)/h3ti~N'`T>6C pYVYNCDȾ_x3_CmxyYΤqaU^ cDOy (N1MnMtA%&zLScw`vTBO c+ I(Vr.2`V{tGV^c$iëDg>okm;4; ,ü٪o#wega8AM&3_<&nx"uR72&6=!Xi AS'(&u\HE]"dgf]r{5=RIPfHe47D/PYe8Ӛ0%\l~ V>_9a]f];MU6dFCܰKR@{ -x#b-CEh0i2g~6cKH[ r>/Rҹx|4f1tB;y>\h[+uͶ5]+ܗ"p wqprL-D(~U#xƳl|lROݖ~?L(l#E#b 2Wc+U!;s[䎛M{MvTjtCTAȓdUGyN}ï}$yrxB]V}W: s+T: H&Ts1;CGi{)TOh]_MWuA=38)J){|fi`Kex- V,<J$vbQa:gj̦湆dysf5)&](@P T[wbo,O۞F۽S)Pn'WeVS֐ ūfVү[#-!l5{u -ޑO 6 oC=Wr͚BIG4 Xm׹)ɡ\C6w m[咡ƎeE뎮ֈ׺U(Eo#fyfXRjլ>}i9h.sxz[=+1Z,8O2K!b\3YgÄl͞\Qo[~"?ރW *Lȓhso=t4?* 3~3)(hCe{sњ5P ՛[?:w=HAFi߫p"D3@exK%\ Q߬ y˟f=j0"MEoƋ}?4ȭZ%n94}.o_WtӮiq<1[jf$Fj[r3&I٠ b+_X=?-+ ՔNe% knLG}qpf;sձ\ctR&qf=ǯixL- fU'[&~rM>>^Ѡ!`=lB2Gu_^nx˷XçA,7r*>3υο^WS9ʦ[ʞ'CjJTLȺ@KJ FAA{,ЖX>( "V'+c&V.\zLhbh|B9o7~k-)=q {n~=H^Nz }@۪MQl'? -*  <<)T|扝dw[ K'O(36O69 5( \2_gmӕKDT%칹f7?FYVl)^so`K̯p7p0zͪ3kV{Gv.|ؠ̝<@ëz4v #D;rYs(Q䟗M%~ &aITA33ٵh)@vAӄ`;W*qF`cw'NDeR:CiU'ѭ7gߚp?0Xw*:ZS @͇b! =+x:Hiy: 4^M @ɓ0HqAUjQ6cښ\Eo$߬#K)5[=Y2ӪKG6Q>\:}3؎ 1AgG;v%Nn1; ~`XD68[M 6}czj޺tEܫⵈH5P&6$km(RP( `Q>?^TƳ?C6iD^fF4"9Cb5m߇#p9\%`su;}^u@|[zLF]eׇǃ?v0TĤ}$[~_DLDJ9CVd8sŒ#lځ%D c:#U!z;'*W)8;JP.sNpubU Tq8_c;bZ4.Dmd u4P,N"jbD$FpHGGikxqۤFRb) O\Z3qZ4L^:gʺvʙ+lc:S0 e$"z@=4fZZ.Pv]`Rw9YAB^MLz\D`D¥ix6E U艦ГO mC?+jz p3F1۪񽢃-`Gn{o6)iU|֢oUrP9JXO q1[Ixڌy?K~x:zb@, J3Rydr?  JGxppg_禫GfΡ8M?xj:H˦@ 8}/p4As-2-'scg+XW65'p#=OS ŐCy1la<jmUF; g[9E{j{uc/A_9@!z2gG4B %> J!X8 sQ7 E<{8}e6NdAieY8G4 b Hnh-n) #>.IY}{?-ϯ_T7h|I qySEو tqtݑ֏ؚ1 gXtJͤ&Ur?N'n8CS{끓^si_'Oepb I 3m=z_WX!8u/f_GE_@#삊/ǠgKIvJ2t(4bo)c=H[Vʈisq6fyXAkDL~`Wi!̺ӡ`M ]lNE!gzI,?g3YU W<D>뫦?z '.\!d-9_Ӏٰ*U Q; @R|ֆOJ.ٚ+t]bHCX18-TQͭ_s\2Dۆ:$&^e*J('5d,NY.X^|.)T4 u-]jz~tvUHl#ę3_caOBxOsBR7!~ ;9@t }R7E.[iWwk$UNkD;¶( zzRKUӿ>ה9#V!Qtu%:zBe" v.![X]{*?e ;/MtUZγo;eeΚ[ q[FhXC`qe4n~_ Q4'ZPx iBewC65dv!BdUW9.g'q[9΍ÅƇg?ͬwUVK倃?JΥ~IސoFJ0*1WtVBC2UNb6}rxw*DT[N6b|m(ًׅ̳< D9+7X\ⵑ5ITbtxTl~Xc$RgzӤ)7;D&A)>H|@J}.ƐX9k&0~̩De krD X5 R @|>[`YM,dVdmY*~a ab.s ڗ8;ER-?!J qhӉ濲hNATpsUhBl#[EZ =%oaC:lkXnQn,4~K.,?31<\/ no޳XIA7}Ag] iDB&`K؈iʽr*[w:%'e_ɹ֯$(=Fwf׌ʋ ׎78.32P[W'F/-R c=f̺A`L@w/U?úxx= +0UCa{azMh/m-(%+L?}cSw+Q%z)3)V]d;O{=I3؞ 'Vmāh#VFYzWW\2W Xdիar0qQۛY .k ׃3/:ҁ(/@?NY\r ɋ:mđa$C_cS`:Y{Kh''ZYDUuŠbR)j7 >⎷ND5[Z<#!XIJ BEa7]M FPV3^\TΐK$eHD'af 5&=}bKdߧgd6GL3wGJ<_bvg˚bcUt`7ܕ^ΒPKg>*p%CWJjG*cyjdjR3qba5,[CU0H.WzkNîG9[fЦ&Q hw*opM|v|y&چ a8@뮳NDOt:_2 ܛޒ}j~ڻ'"{6DPN]Uc'ʺ*/:xJ/3v_"e桛f7D!YUQoL*/IX;R/w u&>ENWy %S,[7Sb'€;pcho $4N$xTxx=a3յ01C'4["Hثs{3.b6bFeVrb3<O М%@A \/A{~u_^Iϳ|", oa!^sS~kн}\W͂|֒Ksd>I|Y:%a}TVZ=mn-c 0 I.<>fg>#O |:g42=*OXQ`_'G7Z_6'13bݻ44uz=K!!wMoki $"Dlw Nèe"!o"8䐆+ZOUBuA+1`Zo=AZ6;%ܐ^W;sz0ukH(.Ïi?^TGVԟ$ԩ@p4FCGMd\1L‡o}VѬ%%,N,+-g~$zR'heF_Ր=A ɮXA 8BNg&ӹP]wg]¼22`rαAc5^ӌ!1T 1ɯ 7.ʀ+Lև kNVV 7q$T[Oΐ^~`xX`Kgs š\WOy?}*m<8H`]N D-Q 态`HB =Ws  [xwPܽ*ipQE{yX'~.6V/[Ds[ yqeߙI @׆Jd-*fFxKbT)F3]n2ODž9 am_Ԍf+P;)+aBYj +p.u,O<}5d@ZgZAشAZ=÷`nw2/UxW'2OxW|)Rq^\s,G&Y)-(sqP^bvv,>IvT@[ lpx}"!lhb6*GC-0Eq a+Qo&xbcigL('qP4Q;;Ha)QX|' 4l+@z mlY8ZQ#xj+LG |Q=i ԳxcCj'ޟ+lNWKjE[) {-m9ƞ(6Ei K+,Ȟo!m| 23ȝ E(; dcIFHu"ѧE=z4*oĊx 4Êc_}{k-5Ae>iW= =XlqH e>/%<ǘpDPveVp;.QÒ/fE}b(Ccd9K);#wkZMWkۗiJ8=L ?7J͙* ݈Hxo0&x[H9eԪX} 26tO/9¬?C #;Uw%Jz7dt̵A}.g"U`0`ұpսC=)eDo^ 6$ ^_/Z&eh㋊l!:}+Ơb%EKu~ B>fUʇv'`lCBJxPn]uW u0W?[զa%ٵ3/Yy(@)WF&[@h Accp\-?k;RӅ웑Q[<.A@L.Oɀ'̋W&Uet9ؿ|+B 1H, f. RA?.9Vskڏ>%BլSh q\\;A3ѓ 5~.UZ̩1Sd.yn^eM9 ;q0ˆb~ 9t\(8fҬ;z$٬3/}>*NG|Va<yW_K.,}FQJ߀] ý3b{HQ.+y*DEb p(<+@l6#?$ >l2)#MR&Xp2! 0!yei\gZI3w9^$Y&"BgFvݱqul{++4q"\ /NeSuB@"O TgǀîT'ڛT Pxi3Q8m+iw2Do6R>h L_)6kQ2VB4}? Œ jK@' !)$*hd g:]DQYe؋uB~R)od:b M䉯Hv'EϽ7> 23p>vrǿĬVg0KJXMT%  6.*ObO3X/ 8_\E2^7 \h/a *znjF]g8 pH?ߞU[sfi)q-ed]Q)6D B"gm}:A}b?:ꀌ`mQF4ywƷSsh_^So[6|:4PHcŰH:=0n_+c<>8 oHN/L2\]wCq6&:_3ol f-~W7LHUY3ڮ;$_SIˠIluphc-;3Zm*N)T5bRM^i9x`{"ZXA7z wq*psN=!>gѹ2:Q@@AUhkb$ІH2Hع}]ܑP͉*i.#̏J8e&eݜO˨82/؇ڞH0}tRi6 V=hbXd>9=tׇ#( ĝ}V ÒFWغ#[l:2,gb=r]Z/R #1L[NSYA,Ӷl*p1=oD ̢I׀{^N]DW~+3|ugùߧ@ij"8W+-F HT´)7l( BF18ӵqcp`=e}pzDr sb>B_\?Na/rc3 {A`s* XP `m ?T?,-B$s?3x(V%+쓮Cš_HpO 3~6BciTJ FN < (l]9[`ÎXkMfh'@Bhu}Uo}k&SRCYd4B؟nC:{&_׫}K$Os(羶%G= sB{Z5$I6cŅ " XOs`l\hW."AR7X2H3="F."=B*n bݯZ@XlJ7$řl=ko.\ @~ӇuޝC)`ë3i;BUX:y&ԟlD-آDIpNsX@ =}yIu(0I)鏨apIGhj>?P 4’gAUېh9LHRljR@I&s )9kU9cBu`/V <-{Jg*Qjg $H("B{/莋O/8pY}"7 ^)J 7p ՝-Lj&cJ9!\a+MafXaM0u߅=hyKGbN*9i̞iu'J`L`(mrFN9p⌦=BG_+?EhC% ‡n^<{OMGrucjQkh/$B[iX-?"}*˷kc;)!L(_ 9qJZ$|ĝ]F9tGV5NW'F۞` nDb %mD}2nlIU~|q^Ӄ3^$Oҫԕa}/T[I2&K:_JDR§_=,bIk \bI<%i͸4C `3H(5]SvV4T?s~;n(k"Qa}Z~߹tǖx"q߶0#_bgykHJ2Vm;%!t2D 1b@ ͰO/ nC(E 8}eD)3^;:4n^n%T64HV_Kn/jA{Vauߜ%giÏeaӤa;9t^# HDQ77Fp)p`(njmt'T JAf f5(VzA0B^wIJZETl&}5G_Qz:%pf3\/ Z)53 KIb(ՋD @T9k&Ǽ_y[h~9ID1_|Q*v p.r|~SfJ<&!!#\/1|0SQh-Xg"^|l/|$ݱ~h&$L?n: 3 jeFDap>cQ0L*gpWE><.»n%soz|I3j)m݂Kq$"}eF0CH_DUb9DJŎDS4 L9꺏+r\!StvD_dZr)~ AnY!<5qո+*>j?EKrTe&4VBG*GzBs@,'A1n[G|@2!. =+Q$x ŖB_tSf(uOd`3b.<⾩r2r#C H+.dd A4Ww`YR3m}(r3ދs7=v]LN% DCiªLx.V]:*Cy FZQ̷_{c aʄ^. N۬(4i7qV>wҘхTA%pS?xĆ| fݰʘ%y?zӣ2ik޹W' Pׂ3%&Jx1X]mH4f 7 .;PTnCEهԉRPT YEqhQg]Tِ0E:\Hwb;k0Q Trh_~:.J)/\Bݒsqy*/UOUH w\E@OPWktȥVɪiT}k}Y/w!=r#MY#ӈ[f"-}l҅w75[`}0W4r !EOL텬VZԇnߴgP=u}uI1Ԣ3&_<3"K[LC9\Ͷ1n=}A$>d69l&&-D!y3CRzƊ:<؏nZOV.M)nIﰠe /ʂUm~q[;`Qd;obɃa&Y=¼Ğ]q)X|c|܃FUu"!ɘgV953V3s ׆}W.|@|MH> tp}}rjR_a= I mB"d.hOUNì8^S30OTTON~`DشKD H{Lˏ*r%~ J_0HHyZi7Κ >.w? p?l܎[KQLФi덫;DHEjk GR  <V 5AS; /ܷ/V#DMl\Z^3פdkm+,MY9uf ݃hԏ޾g}=VmMQ$DXMMUSM{rgc#RN7眭H穓z#4Gk"'ŠYnDJtؤs$k 7# ¾ƭMCe ([=_\zBbPY2z'?n;+-ev|,Dvv]I [nm۴xJVLfh +,P nk?S_Ņ8~ aD/q _aA3iI.\@F6ڍ˘[eDrS=>-<e&ߗi"T\D}#eH3& "]TduxG#6U|6m Ď$Ҕ/j[ `ֳ[Kվ{ I?3i$OG-qw~k[VE:5C§CH1ysq(KN#^H ))W^)( J|s 8c(t'6Lgo1ocߥt8gߨ<3AG?e'a?0KBH7T` 0cl[ph3pVxa zV.C7@ʤT@r(8k w EgzY{,3ap7;? 8x-#NyI_J|%;P6@>.(Bx6h6jZvH&S]l 1B{WspnpGM[QTbo405 ( q[#Y7*hBr`A]XT%xFz[jtܑ]ZnKڟR\xLئ?HDň< &$b߲{5hC }lB̒Ҥ*n{J4U'YwExr '$@Zpol '&FN~דӴ+5U"r"q+ڙj7o0;5 4"R#osQ$k*bR 7UT%Nf ӹ]e+hj)XzEp6h_ESE5{Ťʩ i3HQsK7gt`yL.H*.μRWʽLrTi*uLSZnb Rt,84 ?+DPtt F]^:zQC<3\-iYC†-n Qׄ p4V(n l)/Vy?X4_4Њ0:+hwjX!)43 5(}1wN-f.-ĸI4N>-lg濦lR1ʧ6[;iPfvz?Ї)+ͷb-IZbn9X{nIHB.%&Y'VBS ^e sحFDn4|y&@7@}~Rqvnn6. P2zQpty|1+gF=O*i%|HUﻑQO)D(.VguO%QO8D:kciUmB&oٽ"C[^ow1E\:Uzj# LY[$@GaAYUzҝ3(SI v~MQ$1!\E0@w֬h{{MC8 5lR@kY=HcD;ɵ) ah\pӥBTqڐ,4S|<:_fN{YBոoE35gBX &oEd7w xx嘾B+YjB.VΘm}Mqp4&0s!* ʬdT+ WRdM3|ӳ#:(h;[G E'CԔRm2u _'&*4$"*CUuM>LBAI*VA.TN1k8_q/86̈́ Vd;NGqZlA ;e8Œ,, rjH,.IY}g:F%rѣmׇh 뫰N.30v'7<:~ɢ!&ʣDSt!D{5yZ x%_JҤj 5>}9 tG} 纂`NmJ-}!?;17TE$xX^FǪJ@Oխ3}S\ڒTӓJK0>)7H''钂Oϒ(hygAtGz0?VZ9ASd0$I-!+?2NH ƥc ux-hG"[Fn?bյl&CES<SNS3̽\F5WEW_a"۹P T)a_ B!.;jEB!<ʇʨ;]4nVqDʪDek F]L_iugE!*J|:_G󐻢BIn$_ /(>jiӊF"O6 %y# /eYtO† ?I< }"ҋ ќ#΃O7]گ{G dNZ ױ`wp牤䕉 kHڭb=s^p@i C7v"#50MUpBO8Vm yM&9̛q_&mW Y$xwV(;R|ᢒתi;)VUTlbӦp"ԴcimE{?nxg++UIfINUX۩@t 59%pU dF Q 2qW &POS D6&B8*6TJO[K̆,9BY:O+_zg.f]-ǫЛf%!_|T8:/,g)z;QB< Tz%6Gzh2]-ɸZ|uFJ!OO0kYyg3% -|O3pw { Q&Ch?cY<,o촲͐S[%&_ʗ\'ŻNݏ7x5➄>;맷%F7zn8#a %Z%RGM.#A\ϢihJ'Tn<( Pti(?ܨATeE][r7]k"լV/gho{[6$*f椳k,w%obƍHʯsqmFwuVC#=NZzƈ >Yk4M4構JMX)DͳHL_DT>y *uʯmM.¨g!iHA^'\3+3N_Z"@dm7 ^~@ACspp¥>I y2Zg]W + ˾7k A笗тEA:"9@ ?))̛;IF}(»V͊?[3i?lpFx-I9/<'P(\.ޕ=O:p$ќiтf'pH/ݿ`j]eԨj7D>gଝJB$^]#G,D`퉵7cl %}/{|y])ff 2d{b [B4ܪPOwGYG}$ 14X_,\Ou 葽 /WLRDsgE?dZ G' Q4?G뺤%ie%+1ruL fş!=jOr+ƣWO7#2PC6!~_),n4VA֝K-t=σ-*"+B",j9 @9ߺ ]NQЯVO> 'nt)DIt@(vcpMk%Pt _LqڦJ9l1m1tTVF(f cDXY+?q^}ys@hNCBA%]Veȫ8ѩ-Me{EKk.J1[A7lj.ͬ]Ҁ8H:XPskVc<ӈbq0ZNP'!L)]|N2#(]*7=Fw$3l;Ե {Q͌ظl_^.G x55_pzVb^/dMg~L!t4L;Sŋ uRH k!p\ sX_YҎv[-3Ik$1rGĈiŠ-bh v .3h9NXE|x5{ZN ZFFqB"ָxA;)=>Bo++$ؾvZ71lb?L?nw)֤xc&!a⢌!g#DP.D"arRRKS;v/)V"x)`95=,sl'ZS)D-Ԡܥz!Cʒ~Ym1&zLs4qd^xμnKh'vh/f9e8mR qsiQQe/, =HrsR݀AwYWqNڰ6X bY⼵@$9q(5՛l#@'+T tsa\TI9?2!Z,7oUpJCNXocͷ.Aez7AJ=,AbH?%?:Fa9= 䅵3/Ns jD #7g ,:an[piMZ h7QT,2cTIk+b>yWvbct~eTzN֞X$ޕY5FV_hDk>0)cTFԮi4G@Ola*,Z<.?o7 ek \^3&fHEQ èCF6%JPeOAű:o\E2ę 5ZŮ\RE]zgv)s;i<ӮY–]HsUzFZH_~!*8l`aB" :ǗqVwl'.^EqjgMK48~.Ȗ#O@Z՟!x 65f Z {IIo#AL? ,J6sķTJMdДX:\LH6.>:O0ΕY0Хޯs*COX9Ձ]՜)cmK&y5eЎ/m,nVPgw*JX-QRD@<z6$.dLt&4DP~c׼rf;[?ssbOKIB~cTtbJEQ*#[–%KpXU3ρ0@v4Pr4Gʙzf:_Bypܿn_{7YHƫo2 aŋv6~(sw+hMDaA#ΈS@x;uʌ   \#Qӆq^oϺzn.z f /F?, fOC<Okwg"RiB/[ Γ\ܪ:9jK@(O jCljG)/hO,oK"'[Q*-$?og|_"ɺY~Iկ)^n,"gz [kh6]̅/mװXOOO\CL<zؐ%˸3ڦ3ZgpY%z\'9Nx6D)RO;S5eVhBo-b ʡzte/2T(sG|04V"V"(3J}_|0r/y,co(#uL20HÀ@ʥv1q`( HB*>+yx"Ba?˞_<q /eޠ53Bv-MP"ZWM}I ׋CPԘ}jtceA#,~Gmʽ'V3K.l713iYz}/sǩS@1;{exq{ hofUE^5| ,EO R7*}v]&~A~ӏl$K^e!9襄m#BV !4j~I6jfr"I3SQg\n:B^ErupWkVdFoතS!q,P 勉2]j^H!Ď(zraTk,-HܴlAW6֔^=ҁƔ(utwG`#SŖU-J:N&!%ri"poм ~G.C f Ҋbֱ@vTI#&L79,Z -o>!0KtܜQI ,& -$Ω;Y~m~@h)JUQGѧXeo~Rc ?D<-J2G`kcWz0I{iK+[ye&/`PcyXC EAE@$vhz8xpw)l;34ƋswA?g߄Eoy+1S:5dJ!5bV"<ŇڊW?[Bui':6PȖ=F3% PV9s:"Fw؟uem~_>3*5Sf$q 2qkDX=>! TwCUFtm#gPbl;8ځӖ[.mQc!(z)NHFu*~m~ӯCOEMP^MeG;+ w]r E) c|X vZg_M(_xoKSc O= #Ŝr ` F Srk|3ʂq;6A eTSѬZ ¡YP0XB{5jQ/R7KR6|YVkUbz>s.эn\[GMsV/FHR}Cmh"Zz} ?R|e Ap)ٙqJAYa s][Z_ _b <4&bx%$Pp<(y.t*P<[ } XTS+ATR)"&mrQ+E}U9>Zwqi E(Ů _8~ˑƥ"x3z:E`\Pǡ˄w$&FDl]ʿ(GJфoh=:bRq˩Øn/V%t|`QF.Ih̊$`XkY[QZk0T1cRL*/+P.߱W"m_C“*W^?ݺ/FȐ}͌ImL:,J{DH0^ ɱGmJXٺ.bڮńN.Ĭ b1Pa|5eh Xd(كΥy@@܈  &~29:hz)le=@;4+g0"W/LҖ[㿽XUA`ks?Oy1 bQ`o ҒWEzgl &͟TzDeLF6ƫ?|+^5֑W$tK YR?5ɘ0++hdSU>vgCC jL32ȋ] w`op5ZMjԋ{@ ӆ#RJxM fK'P 0p<q`Vڧ3pAQpeV0: b,X=ιWg4&oE fy 0:SQ IXzXXclcG4v= {{eUW4 Gd>\A8}c}Tm^TI@պ"s.4iׯ^o9 !-a=6Jq DSQu8xv*\C%.bj.[8J~8YI^!П0k7'f͙dqͧm2yb@N~awz874݉Խ0?{W{?'n2F@cYg+ Tʗ n̋]Y=IRrc] ̠ʋo뀀*M{9yx _3mm7l1{ Rvh#yKVaؽwVtkT|"ihg $ZJ!/ogމEeҰ>{8te\B1 K5ޞ#}[f6iIbu4!C@&͘Sf>Yoa& #~ȪH_jִ Q}wDWm,fև:vEGˮuzKTkѾenW̙ A(\]1нވRFE w*ͷ7ScW_&]π;HQEX)8ȣCTuWB EwP=-#a952Gn9 köVJd=G-*!~KD7bS.%lOY6UopzpݟZܡlґL1.kPy&~2hDSnob+ɣ_^ J1J[TBqik}~Z^9L^s#b(HV`C.+UAovcK:Z3_Ef݇+[WU.x:(xj[XjEBTdEZGI_PKcvt CnŨQr RT 5k\MJNUCѼOO.̀FPD/)ӓ,5 Ql?LL:#r~%I\AR!y(M~KPxpI+$?Qc\EjIݙnz9{ y H`xg8()kPRW/Ք)klg2M7KdXẎ5FGf;O헍dیAjsxnysJ ò]Q1o4acYjޘʇT 3܆ xE42RvSⅥ7 eA B>>sy V/*<[rV$KVPu[2Aq]}ZnA_ߘSTEEPϜ%l"WU@A꙳V%^w94GlG$ =6qšfOCaa l`m{|vQ0ky@cKcIEs o H.ff uē:\-]a s ^%#9EQ@ٲrjT{,?zvrgQTHPyF+'ߧ\jcX U'`h6+䅺Y+ڎ92GASF0 HjYT0k^ᜈea/j/õG hh2[hyx%.үsd݂uF2e#4?dhaņbT}m!;8+4+:F62v1>aly~f1 ޅ&Шk; Zxt쑠5rrnaaDz`i՗BzRߓ'69XhˍdEU,aHټ;h.`ku˖y/:sg/o\gB 5t)SBmdZ8%쇁8*b+K'[mSecIL"xSA7ͦž!+|qh4[iCk/㣀Fݍ)PxmϵsxFi1Kt_󲖰=uGMܸ E:oja)NerT.B67n$f I- 芒B[ S"ӗT=G͔J-DiY1(~IaIPx܈hv,̀c1mHKdoZ&fɰܥa(:r-jh*rIu/$m?&3j*[d 9YǒX\>9ұrwRvd3[C %4]f𘼼EPb3z쭥S݂Lcp}ЌU~vC)PgR#8( #?RUЗ+gE~Bb^FV, dXE+IXA)D@4,b( 'j4̺vv9V\X Xv<Ru.ĒRŶ :dFC(QB5Y2UIZKWS}'2\f}I؅O7"ׯI Bĝ s0K9dWVw["uX,#,-9_np;x+UճOӵ:V7)*0mP &!YyG#FNI<"bCp b @YcAZab=[Lj/.'}mv|@#(@$-cpwU02N#gqe %`3}ZK\GT"e=~P[]ЯtV*]vAOeOR`21E@T&]?$\b< 5d+o#ηN`g>,knOH6i {s8Pna$mI:PL fw+*Ê5[%$+&7vl.>9ιg+=r~Y"HV4=cI% 723`$0N$:罭 ћQE7r`-^J9R3է;~cT[@ʕC n$P[o04b8q:wSDxcEd^!_G88gJ[mz_.%[ԋIX{]s(UOm 3)o/m>pmI +Hz_TneI0gssR~{Z~t:'G3 otIy>c&:LJ߭U^tp/a.wMΩ Awԏ}Z\t 9h nvn4\RY-hce72s$ZL=ď~Hfⱐ_QeÃd?Yp%}{,IgjUIƦ|kTVH._aT_MJ1"U$\/)LƲXhc>z  dJ2FsX@dbkVT0ٞ:Cr΢o-}=j2>*3yOV9s],s^5](q6͆S #q~kMT ::ŷf˹*cKQ[h3 R: 0 -#wS]<' %uh5B1L=.% b 8{$j0'17vjv&,cYXA2F0HzX12: Ռa^٢-M$ [%f1iÁ.-)CDP39up_*'JŻdWyq 7ȰW]/֧%GvNR1RyK1 d&Q* WOsӮhz@%UչyDuG~ev*rb7ZECUR},ͭ:{θWjrR$l8pu;6/>'W[EYj%>g2VbDo I{hVO{k[EyVWJW[0zQ22=- 85*YQ+=oc CMj7 xG6?~1-H~ G+; @v2ޛ0$wwG^VtSE*pT+g SorMt1(RXIZW l^ӹIYjӄns4. >Tɕ)=\]~+hL~\D4 dCfԫ ft2cšUF^zFB)(v!J+{#.6\h|׃+G6F9ogu{FW~sQ"j,,q.–7{ko< wE8O-P9GR9 +>$hRMKfƥjJ(J&J`1? 4h )Gȟ-󉌿Ii*\ri]oRz~6cF$ R TpBz? Z*KصdNcg(VmX5z>1[6dm )k:B2@4@A,)& G"5"s`owȩ F B(.i3@k'}g[r7]$Gu>$Լ@8`6J^!ַ _I B7-nP@O9㯧PZML4͟yIxDeq$]Wg[ %z=eΡ¡1w*ܐF)@ ]nY)]"ܥ^,[x Ttaj5~pl}z@;v, iRNw.i5ĺwS5;*AiWX׬_&=5{"r:rZ9whqqze]lRjc;$XDN*֣g-Հ҂Xv[/ 8PeuԂb5[p.Z^gD=WIZAVzUCjzT5dw7GsdPQ 'fq p^nRًqQ6:hs95/ 6e{"۞Xe#+|1y)ע54v;{U3ppl7(mRh}^09yU.1@L|Ȇv85-x߫~jw=f (PmMS/!Sy1tjܝ^x4un- LACd!h2BWssO͎"Lx$1A-S)8rrIBa/ֺ3YWL Z^\4NZz4n/ިw\wq&zC;L vpddbqV#A[V`(u%0&o <2AT)j{);퓹 XU) WbT{hO9#C|1}4 &\GϮFK~ȭvŔi~$_z3#A- bݕ=F:A%Tl,+hM +&if~=>uGW;XŧWJBc;V WM@!V5?%&QZirM`SXp]ʻuwz@.SחͶf~tBB}ׁӻKxl%@_>2vjq^]Btݰ͐R{7FvOLoSAatnNɳps.fAXkFa 4 fOC{gi@>9QI<$/ ꂗjGC ػogg\":݀_&.%FH6 `&WC ):Z_ޑ[g ؇a \h|u˓n;תWL@߸qpZ; :Dntf}f$>q=*' R[2L?t6@eԫe!JHNVF1" K{5c#2XS49Co$-IDLCO\_3XW0cK^k6(#ceaFNRcם~h:bT15h!p=6HG.A&Ruo].?g$s,{UQޫ #V $}ѡfJH`c΢`Ï$#b~l{Ԫ[֦eul't)u_vn]Q=7Nq&$7qKʹ т[vT-nsr{czm2ŵ$4YwCyIÐ2hVSIMz[{4 0ML@7~M>vj ѵo3Yl)%4')JRc2k2vLMdvl4Rwۦ"$d߈[th>OWX ٤PJ[TQ T ^e|n|0JΌIl Upʭ *1ቷ.7jsMGhAH4H{9A908;ʒ%OT W"ȁČc?g\cge 6fr[r 8q h3 5L! XlAem D wi8\TrE1#:#Z1̭*FjeBi%3tIR0ݚK 饿¹߄V) 핷:>jՐ1)x^K5`4y `V:$LeLJs)Н8zis> a,ڴ=ӿ0utdeyb^:p]kL|(F'ǙIS C?Y9-_5{EAQvg%\f|uY_DݐaD?T~VܤE? ?U',(TX7˗ WDN}6AE>l_vZ& 9n[A|CGIOj(LVt9;']Tn||8|$nl)9/ROnh0sTTf٠S%f)I92d&Dw/SVCIWV%s}_e=}"~ܽZ6̘.;稆woE16I4th68Ֆ,\9~E@=؃ 5JOȑ ?IM > 6a>|1˒t?JXj$m;*Gtܑ%ܓlhhr[6c}?VYSoc݅dwaୄVIWo/ᇨ5*1g]YOO>ض(!FhjeP׻[zC춨JA T vF.@ ~Rr ߴJ~!'f˄J.9-K_q2D*VHU )#IKu$c&#!'h&n$=Pr Rhh1tJys﴿+E ?JԹ =ʹ#oW~VR ~~6mJړ]1LPo%e1fw0oCy?).yc_̭£͡t\QexBbD4>7H=Dރ 8ZArxi7xwcuH6ChF> պu!>߷ GVR.:1j ONq =etc6 !W>TK1sG$3aB"fxi푛ŇMmt(a}5qZ:ʟI&e`y?,FZ& |cB'}\0]s~$PuzB|aN/-V.Pmܵif|ޗGI: ◂v\1ӗ:1*yc`1xt߱% THrzWႺJwTktYc %Y&k:c@#{kNp{_ >Alt<]b3a;euOɯsZ ̩N܀EƓzp?H4 V^Pxbd[41I4H}q?׋iV ;,n7 5M'briKoibǸbnE@ѿ)_n%%Z]<pg/jCrVZ d|JK; VT)UZNg5rh(go44?kjos:Α_S_P0vCQ56ls&şZD@X%ztf 2zB5,!I(XD]l'̋h cֲ1{!5vl{!Ёk8'rѾi[rT"zZAjTrj~mS ka oIES U%B>ݍ)ì7EbAQ/qZp^;I ߷f+ x~{kx@XQZ:XHeEy!JP/A~eVe-:}-!`/,F )EFL~%+E]FN3ޑ4GMP^bO K)_%9=}®wy gD&@c9DBi$d^G^c4~~So2uBRE3\ K.1_^dTj@20KӰTm,mh 11NX]eP CuyÛ22\(P?tU ڙe QI _pf:D Dq.nx*J]O6]dy Ti?ͻDf{*Np|ƎMj}.A: x o/́|e\˫G,@eȀTP*dEݥr!g;0R6<3& l®b̕=K(-t"hT.]U 0&-Qԑצ'VRme-/qM/A\v+^dM8xȼ,T Ze)d@훜g(>PfM~ Yijva_ B5 EG}4.]r|3ed5K ,P6$ʨf3dKPuHa)Q>= GA[ F z1{{jA*k$zFn*\{z0쪾5_/*K/n?Ñ` &4Yuf;m9:!fpzy=x?A*4@؊Lu#:<ʅr"7#5"(Pi\3N{)UVNAsef=8]s `.]c}L؝{Q+nn@CЯt%7q ?C%s<r<:h#VQcM?|I2_fo9 m5S0O1'4.ںsֲybSI :\s< joFp5(..&%':2`IE+^!RG@>5:ݻ^BRo7t90zَ|xDlA=1+..b%ߌKM"X!6ߍʮb(?QXk]½.'* ]*241FqK*]g$#ߢudBF%/6F~V}ѸY9%_XEvI 5um4*l3HzCe̯tQ77U6|E#{YZeuG]9Ѩ=l(,[v7jP_ߕ\]-]r#Y B:{֔[`xc=kZp+/!Ce@HKW[*u5IŰ{?ī.M8Yj*5 ʑ'5}jZl!QqǀdxKB^nc14MM}9P UΘTPl]d.8Ն<f7ol ǭz@bp'kφ}0WCܛ:8ڷ.kڐmk==Mٴ3(>dwwe*H,ӂʐv 2\Ƃ'ԝslk'r}Zd`؅?S2g,E[?q(ߏhEcb/@W؞$U6Z?XwؗT 2"& ƺחD w2Mǝx"w{5膟io3T j?J$ _+5fd\U C["fJj@*wkǪ ̝ {ykJY:ȴ e " J4#eɬ8z]Qt=Zr2 Y)R:D6mZ+ޖl{ظ\^H7*A'8yPV%# @DWP4{ Ú@/?c YMϮCv%vLo1FKaWʡ8>XbK%h}) z~_}bRѩ|~T$8sR ЕYlɆ53m8xqFe_k |XX!U3;$M +"mk >hm={X@QPID[ Bg0 ȧO978dQajqp;p~Iوv A^\Gz/cimU>\7y| ­_l j(Mʗo$(F%iJ>;4S kBڕ(0qU*m]n3ҩ3ŌT'^;rN2&y2|wmS/蒸b+!ix/\LyoVrjd6=t|>ɺBR18|6muKWPxL(iIU B5K!FC'5w-ԫO&Vrv\? -X3+Uq,͕'?<"ZO|^mqy_vyGF^Y T }j'޵3m(瀰^%>C3R-ZHk^G!5JBQ7撒ZZ\ei\3}HvPEL]peea%`[t*.I!eH4YĜ>o:vR`*\VJxE9 8`p(X jE_yۭƔg"WtO-ؤtiX$QϞM}390[ʹi4rMIj 1HI | J_ű[ŅkCe'E`^3]&Wyٓz\ᏹdh}P~>Ule>̠ὥ.2K*.2Zi{O8YМPfDf'!]X%y(m3}{.LcjL Jx<;*2w,F=s^$f_kX*S&v `(5r&WS娊7Tz*V?L΅㧣kipHq-9l7Z+n[3/ާ0RqpOW *?6Y/1ZtŹ޶:2TԍtfF*uJAW^_@Jb=Ca3m]hSeD&mO L/HfY> ͯ0]7 pU ܟV rc2y81F>SI>ܥn%lb9H,JH I(bo5ŰܬFT ñ& #@d /D}N. z-S 1lK.3-^r ToDc(*CisCE ԔR)H+qoaooXCКJĦHo sb,sU׺ٗ_410j:rY$s7dQm@U8Ws`e3XRco}q׬70!]J&Ybl-f/~񴗍J}ɿ25m\v~$ڃ& ʀacyy|H"$U3v(:5A4v&E5 E?SpY_*vtV^\kHoia0)bE0K8 Ȩ5_Z\ؾZD'M]&Li|ݽNXc\SզԏFBNDnؙLT`-@PDjħkk;8oG eqSP\9s{[šyCoB ,D6^6"F4' ^t'2͍et[3 ]zfa*7굩h $|>:D{EAc_.fw:3ep{_u0QC&_eOt1קNь[ C˿ץ;NA+Y%8VRUWVaqQr8 ۉg!oĊLcZz`{-eno{2XЂEt }j*MeJM,[&wpfd`1E$"ؽI d6cMctSh!9cDj2 ulcrJѾ?턹 fMi^g wҽ)syxZl˘r!+#Ź)R\qOs2_"@3Yk0TrU?"mvLDc:.7Q 2 (3xnzo` tQh~j,}#mӺ`A:l_zdD SZcvbY?B?my#f{؃({gվX8 azNu`i3iNt?p޿Cn# PqF#qp.Q}3@ Y}]:ӎiڒ1-iEnW!%G)^45~}LdQ̦5>D*D*5$mPkM_4xRsQBKe){3;/Jl^W(qbb' 62@bysUМf.*3C3 p}#M`T/~X>ܚl:0F?|r e gf[tV)цhor̲8Ĝ xޡ&_uNM]YW4j^sCG)Li,a_6IaƝȚ+aq1Wg8N-iyCNJįQߕg:jL{)Fo}xD64G(J3Ǿ82: ԁ۬ wxcF#n$)R ~&R^{1еj:+-J9ϺTAC]哱~Ҥ[,#"!#w>ĴmOr[pK@|9 X|mGiy m*q`mNޤt1VӪ; 1!рFMm.47תy/}R2~Z!U";rd *̚ARC7@%295Gs43/A5ib*l/td9 X0hIv<ѪFaA6 WɨշPz I/Gc|$ֽ $灾ߌnHVBVmvtI55y )>-Am3>etk+o_bQ! *e9i9oToj`VFt&~Ã/L/Z*P6mڏ$zHVsjкzܮ *AgGN-֪f14I 3-F `Y.v*-R6j [h]{N ds.^dJӠ&|wCk|.DQK^#x੝E? Nץ*(1;,lYM|}f!L#0sHY]]S5L#LȖܫ/Fs.&079Vd![vgP)W+R/~AZLf=UA&B-(wwDR^8\y ڱ@6h7&fd~?X.|]4[E51 mSr[y;)\M$۸ݩq'ZVYznH0-!B 0mQ"+c$fѥ-D7/9@06;`Xd4:hS`^qp"S'q*}z*  %P-p3۠*e/Xx4J^L>.OpA`;*DE@n/ײ/DŽT+歖 4~sKpZveNY(:vp֋ Ɲ鬡u`p=|^\a{&ЍMȟ56?H)Shz?xNUGvt/VR\$t Vm@|x1DV`/rI'dclA|p#/>PL3i$szJxpKuC!g>n ˜qRbz&΂8{c෈UנdXcw-á2Veet+|$ Qa y$oQdU3H~o}WcDCMPq&x=0;m=$3 ! yz<FU?ao|uj 2}?A C% 2K㮁DV܏jM]t Ul-s<9itŅ䔼~^3_rY5rc/H'2? X=vqi ԏlhG75-gv^?0؝Zmf;nno}?aZw( /w~m(Œl*2>h`6^&{s:\LOhzȋ1 AwI;CdA@fi<\݃v$;|r.pZo2<ړK?R(Uw-9 e5C=D n~H:q6kv_8UK7f{lDWsĥ2). .[g-#5 !Gu+y}wIg s/A& \VV9O?Mi;Xx5{}-$~\(n9P{zM6k)+0Լ:43{`*X%E <Whrzg}?l1I9< |ݴ}wi8 diK9f}+ʽ8ajybC*tP/]V'ݶ5,oG<':= to{;PO \xP W!!!Z +SS tz$(׵n$ߘv 6qTmtPG]hFKݑ UvUt@-hw2\24n,x) k đS%( XI Ǐ@Ǿ,3e7FcX*;+x]MPŦ3j޼hx? %dɸܜ.$]paJ/ ,D>j^&rI Ӆ'E/Mwh|q|` >oU= eS-a$) ?Uf%S䀰# rC縦;%ϭ{ёr^aF:vG̑ *Egмxq-3f>E5ύkN_IwgΓa;< Ea S%PEنֺG f2gvONʺg`~^IEwT#sF&9acmu]*у,Qf!8H[hv RcB}NScQ<):ÏWδ9+l'WߥԴaw54OTz±;H6z$ d;r_w^D߷GV0 JCs-RI 1yu)*Sqj62 MI2쵸bMBoԅuXE$VzZm?A=[Yv"hFξѪ+4gY䗋 ;a2%j` }%ŋT b@|d=|.Syn& 0H1x⦎M4&H)as"QGxN/.`RׅmjrR2^bqdw9xV= @0ċ#> [eaE_JǤ4T#ێF}k}L,.L\a5?Z7.{毽Ԓsẗ́RF a8|\j1yLLQ ԋHCh lj)w^Uwo,5hL'lVM[uXl[!'POdNViXlށmw6ActeQըprΜп ,G(M1'}uFмM:WcEL%Q#5Ͳ7 >8 ajP(;eY) yM~lx'.Eӊ+{ȨWzI-Ϡb>`+ JU8Uo!% OJ% 5wo}RS g#C@W/:ڿ*Z.ϼp]9g$۷GB1ay,ąf5 Ր#Ӂ#k 1$ ZgTbK6Jr5GH#'z vadQ5`hX歳ष>\2O>#&7 bT Q6iCk:{ i'#57U$l.ʕfxzc$kgWȱ+|(~Ofb%!$ϓP#Gb fxP~(Wܤ8kp0_O5Ϭ sB 7@V9GnnTw}ޛ,tO6;G\VjH"+OIT1ĽmcBP)A5E 03%T(1eg,A1vGChU7_>F` @a:IcXv_X`{`gLXVfJ ӋWTIb/`ܴV\=̳AZbُz".oxlMt4({قBQbDPgϳ|؇5;5<4lWr(u: g#[Vz;Q=C6*i<=x?Z2Ifv;F5,h?Ov 03S9[Н|k9\RxJbS/g/+QZ"eD#0N2cZi$FK,dl!7h "Э1Rƿsɨ  */i|K|x`Qmx*秤ZO]FE~Q?J [+c )™QG.KSbuO:[ *,P_Iɿrh0\f6=xgЊ$dqꌬQLۈ I}>!u])/2W2s  IW.}Dݽ];yI?x;9XS(|GcӴaYJu) -2w쐆R+8ʤ.2×kn-pt5)uGoB`.-V f$;Hd`PrD5`SKݜ T4~_iw1嚸u*ݵ8vs~7#2t]?[ ql-0lIFlbI _T2qs*'3UVI #@`gf8#U#iUnue,fQ78hsmҮ@0s =ç6ߋx3H}B<|y (nwO/b eLJyw0wAb9(b4o$[òX Os^GPiU^#D)`HÄ §\x : VBfy($/m2, ;gG,mP#bD#FX ζ Ox{I>?΍gɰ6E(P7Kܣpb 㒌HT/h8~!n7{11R?L2M$Qz?3Jִ=F[T'I [wZϼ_nقJ#:~ܱqRjݒh_?m ;˸PH Jo`~sk]̂g?7-JƷ~l9d`3J[ʹIo B,AW&P f~cptLt^~t1(9HRDxM8D %ZVzwE6qnD1wt,V-MY& 2^ @r%<-İAFD%̰SuyC؞A_ ,fsН.Q!J{K'? ;)/]F^"BA}sEJ:!t*;M8dtB+XMAK] ʣñ)N~Rnnh%RXu0\*%iccs!6x)#KR՟х=!T`";M g\0i*ɽ5 ygQ()8?C97ܶY$q(VUnRmY'@.[+İe|5R d/ ;wIMW0NZNiRg?.> ڈ3$;S"W)MjXT(TxxhxPg\goT#'xCTԬvZ,BrR QZbjrkXsOiE\?H%_/ߘvzKDh9m}#p*AκMWM;&yEL5EI?#JRsbJĪј, 3QSZsk7xYD6"߭d5ن=@]G&6qnPl^IhfdXkX J{4Қŵ,DLb0̯:󩌬S LwF;)`SDC}ݰ[mfZE]艹eF]1ܻ~tH2 I hpIGEVH/+>e>`w3E&~ Y׆{JN1J\KJ -0UءU?06 Fu-TPH6aǤ[L*D*#;$Qf 5Rkw^L8PE]c0f.Gt2ia fJBUϔzgyn(l qvld9$w9&C;jao2h_3,(8~G>i2*mP5܂>?ûh xq\k;YB{,jԙ*_r>VlyQ%kzP!Mi 3]3ӄ㤱LT_W(ϣs 1d%!C@f+fo}:S,!.rߴ5R;Տ x"涺¿r@jE*®41ˤ!/˛ER34d֣o!k^.RiJm#HbaB@5nM/#S*Fu,,ҢZc=z(0#fկu :ܹ!Ⱥ1_%h ޸&'Y}P+|#^]4eSbsglߣnƬڎ`_A9FU瓾b@*A cO5=@!9Bv^FQyr#Cfˡp[zQ݌@^sE7M8źe~0)dS/QH&9U&YH} Bst9XAJxY @~2;p 6ytX{OL6_  G " L5QV @;[^b ;Ot٥;Fr6,}A?!P _GM! kJ_n=c}_LoЈ:Wݚ#,"y R ''RIf7W3h rhB/ʲƴӯp't,ˌh8@\ىޫzAZs;fEɹ"uc\ςMW=Bd<>A֐nF24箋~3^pgm];]u>ECZJg6P ķ ab'/RZob \ȗ6qV(׮ֽ̗?뭖{S \0i4t6Ư@;#3ˮ1'\\=- 5,?qHy~wW0=հ\ /duE˽ש_T QA罾-?++z-6 N1TDbF'v={o'POj/.LF=Pc=\c6X *낺e7[r koIunI8/cEV3PZȌ9(VR~$n>VQ-*Vc?f䰥W3^|eߤ*~r:N5L*AԨؕM+@^#Ptra1{ =J=kkoDXLx\7I cu(zd";ת5lhQd%6X7'Q \g9̦'\}ngE8w\j&zo]kzaN<.Ra$8sӢ8Op!B.<3UV5:dFvzazdPP>@$qv @}|d\Iz{{#{n2ȱ?'#"O[Ãpĭ L xjAcbn.p A@T_AqB i-yI"1d@Xmԣz_-S/A-%-l6:;/Ia2B!En= JTK;pRaE! _ '7EA[VG!ӉRKh%ÖbdTa/PBTdx`N2AjܔsmAZ\&̉}=JCɆ.R]e4" oJѰ\u$ɠb܎:tvwT2{l/%=xi  ;4O/"UN_{m!=ZUd$gl=\Ro:JMljeV;?fMٰN 6OVE(YvȹDۺ_JֽҿywChG/vP\PԦ@k`C(HGl`6k F[p w3Œ &BJ`o>S"g<J"*zt(\7*?$EPON0=LRWBm-ɍw` WSD/ॲ Ηmq =6;#μRб%hh- w"4=hrm^ fdF{%)}}3m} <&1n-a5e]ܒuPZQZ%{wׅv)DC).]F'>KWӠ²S+ƾ-%P&ٟ /Ds0gv֔Z/yD$"lҐ4,ז~tF5ǂ;rD!ջ JjfD\f/TOiӏK;sr4m<n";){ HD UbK'"z(s&$[in!N:ŸiPYoQp t.WأOtI2%} PS#6X?xLA^WYt,NhA[h ji`} t+,B+Jhk=*HQ"-QQwjH5#Awᖼ'cD8w''֪1+ӜX贖æBT2 ?&֘Y: ҈;\F3 X-ESAr#+~rYk;hHl̶T;l٤#X,z\.A2.׉j I_-8o}OrK3'<7dIYtU QKBv l\".ffNۄވci?`=R%uDX,7FRa+P`xY0#xC(k|?ͤ``<-e#7NHFħogf8Z"SkHzbZt~WҠK C 6jsY67p/RZfj<ƢJGATWbŗ|&qLʙ] 6Ax(=u\F [ݩV,嫜ؠ=N`Y4"WlbQ n`#r|l}C& +D{ m:j'8GD~e/x)#/Vz;6 M)OQfG ~ r27WA/tՄJo^2G 8pјzmd^fBK{kϘz"cJk!I_g8BLv[~9M%EQ6] Eъ=:< =#ݦ%R@0\U|Vڹxf$sʅDICL|p+.^ߍ>YNjY\Yn6M}Ce?4HS9;JU'sdnexV$׀\c>(Wkn( *k/.KoF% iV|q̇`BD5EearwkjXʝZM&WCNQ&H+cg,1BW˥>^?+U_% VX~..xA#RtZyj~;~&| V 3:esbMXdVS®g\32HtW{]Wb 93o/s zDER:>q5 lN)|61VW-D)ݮ.vGHX JbVtfN|5|'LD%S>N9]+C}CH^@G[ ' hNGԌp #LVuΟr-RK/|ClnqY/s:l!{!ӓ7Hh:WMnȤ;_[ Wfy)d"|EA\ә^kv./4G`g$0$ihM~+Ccz3y-`dQ{sf8 = 2!X'Io luuLZݫjKȌUu#c]0J4R(.m{AD)p8b ]V Ր-0C`cYS6(,c,S>-"MHJMŲ5ZD'xs! xST(ɞ4>C L & Fcr&/R;qԽV7|{]dS|ֱ03d@}<͛O@_(B:[BovIO)PۖXdXAX< ih*.Ѕ&ȭH%:$̫7Whp ?̣k咱zfF6Ϡg8p  8woqvWjByW2wBA ;a9_e 6\F@y<S:? 90Up"VIGzC.đMuGVxiKZD\~l*4rQ`],:@ :!)Ww̤&0I(qT JR=j)©W8 ]%zSm]W{5 - t{q%pH70$yԃ~gMCi8/b4~mG[)wKѪIGӒd G.p&Uz݉۟AUyc䬬2Kdryi/65PN&7T0'Jo9U=,ўh&P%x r/CRKEC;61yNi8WrO?RojD=,ρ>pb@:@LZd-oYj sp6xO02qig ;܃ntb]:(#ew=~O&ʕtR2(Á#qk<ÖL`̤&A_@>Osi|~N I&X! ! Tp~xz}g|HHCTQN83+wnneﲬY|Úhg3?0:Kgh址ܠN~ na KTV"mtrҙ&]'k];"9@Z_(y6:W6RjR}=Ήf!`j7نńΡf؇IC5&1!;eIYz_tJ5͔%'Prp(8p_}e=" VSWrdL-[i(\6b^~{X ff 2p!B8nQբ'yfklQ`$bem͆v 3"ZfVP:I%٩JR8ɰoçe1*`]gk F6tkʗ,.ee?hﺌ2cўIgPѴ\_̫z 9LJ2G[$XDY}{ͳT}r;6!U*apTҙGhNo)QSڬr:5 3e2W[8qeJ jRx2t XȆxٲ5n  V/U|tzpA{N-4".HRo14R&/N5WNP>S j>FMqxV[8up̮anOe\jAR60Et- {뎻:}a˿;<ݫgVqWeֵi3ܬ.}7,.4k%рt!w.}E9[/X24Vs3Eo'3A]&K$0ZL%db+l&@c{ʟPaQ*+hN5L&9٠ox8? rv di鍼 D5T$ڀ#AّjH+$ LSAt"rE7}qp5 QN9ihh&4ܖmI.çoG8s̛DQ:,4$?JᗁP`uqS҉cݬj m~)Uȑ[ێf ,ΠFÊsXwNI-AF2%û_ aKc:Һ /' ]'῕C(g>G==ahu eRkC`Q7)*UKǷ&Bf%?ae>"9eLYʫ҈!O0<˝VNOT)%&1p.j%}~:Q}8]Y&צ^ϸ;( hda7ƹmrSXRU[, !`pgۼ`7Q1v%R"x7w5zDTzk׏)\%DoZ):Γ5#+w 8dN`عؙz]1LՐ~ic~xtE9_TL _/Xc[[n( ]Ul怆Ż!̐ z Dl[s9{}Rrs?H\CK#Kג9SBXsnl9_Mf8ʓ1j[^ǿȯRd 0[~wF*ܓ +/4_4сuLu?IA:XXmvUԅ^7׈Oq(/n$0-x,i90oHKXpm]U_ :y ,fd/~|*UKC6VvFa@J[k䫓Mmɬ]HnI#?LSK:“OP &M[gz`pm~p@ M:1襽gD;? LP?d;S?{</a  G&)vU:8܀-rهD&M(cKnl H9BiE<@Ex3%[G+".]/~wnY7b޼ix_ έxZJX =0 ;u)Nd k\M^\_P9E [6FX52 ̧XЄl+ާD{Tφ,Bs"@ow@P!ݘv_,#(/'igKn3QEy"KqfY@P]JdAõE\PS-g1R-̟% )qf_-8;[N,LE-r:?ynqq@2c tkai~r Z#La֜&K~D:EqƆ(m%<Zɭ}ָSrK؟DU}tgqd? Fo n*voUT/l k;އB(Vb}n0~ܷcf3؝ok9K*ǁhʸ}nM䯳sc~Q$I9S(a)axy!@FgtEOʸVJ}! !\iz9%~Vͻi$Muk1OBnR ,^]¬Z|ȂSPrw#aNq"/ntD cWrS@XH:wȄ\Y dS(hozy׷IwqdicmA &5"XԖ&U9kO!*G"|5}*7rΐD=P[ի*ϡ3_<+n~mBlgqJ9cmJyם%=L?hƕQ >0U>nu)K)Ʀ5/"0b C󿃙ќq \؛tdi3j=aOZ{3@<֌ ")B񁆾QYVE;@I8EMXi>Q c~W24l̆Nzzo_cL۫1e#'/AdNEQ;Ay _WDw=56]"8(駙vh%Yw/Q;%q"9񂡂TA*&Sz d~4DH򖤺Fv|W-Z]jYPa6b A_v C?uMW|gbWuw7peMVtl9gJin Cg"-h:2ʁDhq]}܅޻ǿISn ;^/\3ʒû qrQ\nO_CmIl2 ir萨g̸{ax7lrڰ!LF}5z j͔oO\n heNrSS/g)O~WJR?˥feei} ;VT !bT. ]LS#ed!Pw'F"bVIW80^UaP?hOkKL%u .c(A0fҨL!F=L_DI*B*^ 3%&/*"-O&>6e.a=|{Z8K_uD0MkY9*6y;݁ʯ~&l CnMʎ }$36~<#ȢC)g'J JmHssd]!]-~T"_]MPim J֮M= vz+Y_Lk),+a^6G}5+'Ծ օ"C_Aij"thӭ CC{2R $VɖN.8y= zɈ+T? Mv$uDԺTHQYDx/3o0~9c6$糒;FfWJJ$?0tN]5TGap]-FQ`/s!~U4UxFٚKU!wټˬYJĸjon0;ܼBnK7}v`O^Xb J5t)8=׺+ $339`X/'geD]e_UH4rVnG*ՓMӏsK2o 7GD<͈}nE W<6]~ͪ㞜׳ ?Pg4]lqw%GS(:\ VRC諓|L5 YrŇ?0vbyEU D=ۥ('qw*glgCb\>TsTݢ{A2V0ף~\|aYZݐ@}E&;StL$2Ib<@9uѡc5sEJv)A]aKeTwT]#LbE .5,HWieZ<+Y`uڐu{Q'"B'}3*gt]hv'EIYzsdVwg),l$Gʚ1pgx܎&VsuL!Vw6)TNlJ#ZKqȢq@k۩^#>#g)G~lvߔ^O|odCKxXeѤ劬K4LbFYWDqM۞%dI.L(4{=ҹ,~.S1AFrZQPAf)A2YX)7e:/tOI'/cAuatB2j~.[g1E!1ŠY[)yov9X_8pA(&R1BNl Xڍϱ;<]rnStdHF4#J~B;QhݛL9-. QguU(7j"kK:I&i>`_ 9EY{ֺ 9 ~ڭ `5(VvF#\QZKw]|G𷨄G.$*vΆvvwpuZ_wX'WQ\Lgqj25\@aVbEDL!ZѴdt|,!eg}(龼rl -Z8H!H4PAr3It*q4Ms/wjf=!ɖ90{'_@d2нr'0N=h$, M)0Z\[y sH*C|XEJ! $mʍ殏|sbih1q Puv0JsB- W{`sm4ȶJ$1\oTYIx{7?'v$M9و10ga!ngg\ НD=t9j@b&@mj+^EFL\yV=)ё;+fq.,]$m 2wRLt_3E-Q3p%z"gu+C!/b^aC|by4ճ]A),u֙y) nxp'PEZXSbOU,s\0agkv ەAEIE~6,Xg׉q!]kL3PǎA7yO %" ??sm4%VW*6u& KJ4OZ4EjQCW$%CTwFʦ\ 1/L?dp"K[L+x4&Y"2{Oگ@Ɔ]Hq R a$vMfG6.]y&~S̘Ix[pSQ\[o -@wMs0:h=pugaՆK*6]&\}¡Qih_9b9wV3[_QA9V] !nro4Tf5Hir4k MHD7rЦˆJ{kHP >qpyfd8x?:'OO*d?)<5hަX3J ٲX9 `ZK-d1+=06DY_~2mF_2q%wFj@=?+{wͮyK4NFA% |lX+ v5mz䴹PBVOվL±3Yc?B#uM'T~An~vT~4t7苬:n`v4ߍI!\7z@x7 dC y lp.D/h`mJ\ ^Zm,|*+T{uF2TnOxQȫIi9I!Ll-+UzEpW@Z_G?nupJO"RҢ&?o5 n*dz'_+K,>KWL.~"R1ذZ~38ȋRu5.lIz^I(L`E!8ԣzZ r1iC3;V %k=Qyu9UYM4)*Y8]zrYaz&aQֳjlBJ.; rFnm -aG)k,y|bJؤu/NnjœRʆ[A~re~_|.XZ/}O?+JGlT7=dW!d$9+'>whH9DS*&4yfxS/Іn(̊VUr V\:K.:W zuLԃ?1&޿>@vdmfKhCge4櫈AbNa襷 t&R׍q hQh,˜T4$}ܔ5ʪE38 Mˎ¹+Zu[R E޼H.-@{|G֡ˠ*n}9ev2 Hv,e!Y2Xe=,UՈ%DQ-ҧkƟ8/4NJsVq. UMÅ*rܛkF6\>c'=L81V]=dhNkW9Y; m'5‘'g9KCf^ڻ"o{ @;&OIpUQ DqoD !DXo{:5ݔɛqHwШl"EtI#Z] -[N/0WisC,qgG H<u.nƎOeM٭BIw 2}JӦuHv*#ڂn 6$GϝhG|687<'ܖpqBQ@tpwP˒b"Qd" M@-)Js0dKfTG?7Yq9y0jp_n̓U@YQ^ڶFG/@-$ |wR$ٻ;M@?cxG%> 7<|x'CS0tZ!\œ}K]ES¾.DI#7X(q4:?y¼pJbVn#Bˢ=Uw8IT}i ^D/Oj3/̊C9iwݐdJE'B 0ҼD0>(̀(̷#sqыURU%Mo?Hhd(Dx("|?Ԕc9YExq[l4mQ0_͋b !9T z&-nx( ~m=qs0$FP_N9wRn"ӵ ںwJEwoAnBĶeg*!I>|!3Tr@3G䟡~k8fhAo}Q3bw;L>ixC^  w/MOF(dylG殞e]!o?3~r1ux } %Io#8P)9?AM(_է0/#Tm.Xd]کd;]Ӭ hW7a A_566@ZUlb};'t_gŧ՝|#Ħde먚SK[` q\i}'r-<*>>kd޼+1_'bvg0"|0" o3?K~uVόɶ߃O@^W/-*A͖,1 !lGL[!Vu  & =c` ;*puZL ݓf_żwJ:U@ۦ 3MBX$NMIĭ` ?'SU=>e I7mH ʙ8ݴ;vm:TE1FIt]0>ʼw/^p[KY265y5Ga-zPY\s̸L TXX[H-G .ڽ X2" :2f3caJJU{&SwRcmk`M,&ciLԻƟC.UUVBT- *%k3,x$R's*\ϗGuG% O-Zz%ql~W-o%C1VDj|v5*Yg"n?0l$/ B-щgv^VRa5N-7LHaR$5)219?I(-X13ˍPޯ}I{YOr ɍۜ5HqA57)i)zib)Ö+t_;Eq̛n;hNjKZGs[0Hd02R/ CKbU@@Jא%+ɣ]6\p4m*33RC~!{5NHPR@egXw䋼W}"*{vL$4Ai1s]DyB@4v\Fc8 ݦU )j$DtBV0+`.ECbCfӣ½$o~*!X3늰"`1454AUEx$=Y<]kbU42ke)s|},<#Ke-gf. ?Nw;W与9ߚՕkkM A @}CX:[ּ**d2ILu|ńoĩg Ӣh]&ѥII=!YSG``.yehtFls?Dlr&O7-x_ Dmqw$<1PpŊ+Fm冿GiUHFMŕ"  ^5t7 |KK]P*5V5agnwN9 p[;궃piuTR?ƻekeً~=}TA0\G;q%<^D0%e}cT_>יĜTST.g~R$IJ;8HrCu:<685c #Ō떸=7utՐG]s$:퍩۩A_`ol|d2 Һhh?xEO _ ~9R;V[(_YeE4?Tsy2k$%KnB5sT췟g5ڤ6s\Kk_nv!4JNXDdcl|8Y}T<%dᡀtΒbڥْ %p ܐX$)Ea,p8 1r! 3[,*Ѐ L4lߗ=k@Ғ-tRf<zFA7񽔐k1ԥU QsnhKϽ#LF;a;v Cˢ3d"]lnضk!Qp_]Qoz2QI 5SM°S6Je 9|/ l,El\Vיg%T[bI(9qFOL1:2F+r좑a>auxH H͕QWi|Bp e?a/`cu)wjE+OFa&r02D3']Փ_@{t??rìխވ*NVڴ81imF009² hRLcg_wf3`<6%Y}_RuX? Σ$ @ M^@4$3+*YRH S`Ҵ#**kc?u=$ʑ@~E/p^ ZKWPWf O(<|dkXP̯YH؎tiC׆4k~YNF*06>YMKh^fq]ӴP" :s4P=E̢kP@@ﱇTd3jݹE{Z.1O]iN^{GX:5yw|IA+U3N5۽m ?:S]pb^D bL)'4뙼 KXI:y Z*,=6OoPz Wn{2_mz.L+!hQOW?GTu[pdYvwLPs͚A@ n: ,E^UtR,윕 ?k 𬕎AJG<|gG096\Y@Wz\QiogFB:I+xVϺN˱j1lJIF\Q*C6ACO"G΂oւR]8\zDq*zrRn鼔h5u.*n?\,ſr7&+rǫ4m4,ab`+=Nhۉ dU54Br-;k-i3׻O ǻCJ!hN;بO^ჵ-T \(?yHAC Ukˀ*szϭ"j637qT3Yq濊LP~\}}B3X5 iuͨi:O\2<;  C8Cy{^b#l w,I K B W¨rudr=d|&Crl8a<#l'VLg / 'f[!#Cf4IkkDQ-4:w;ɮHtR/B_8m5_5)Wץ^uKQ%x}Pq*gꬬncȑ8?ݧ= Z5Joˌ6V&'Fqȴ[A8\f tjB&b}w~u㲮,|>HOރv}Y3E2dܛ %Un@%(L? 0”˟'21]1b+3XWI.Î͋sLȎV׊LdJȒM^%@=ϥ.NIYMVc'w){"Nr޵ JxߦP x#dM2ga|#  orpx(K9ډĘwh%,h?7FVٵoA8?ZpJ9;qO %$ }LHB;  l(Yu}.[<^&""xr)n:yQy(y!{!RWZO/jSt5"X?[j2}>m#$l\.269`^7sre!F<QDJʌ]x ]I*H. t!Z *hb=N/0&֣rTwS|Yy/ǼR)雤auk7;.B#7kQ #;Wm҆qG&ŃKs:wGkH:e l,>V2#KQx?Ks(bK;L7jE+ݝYE e\OZځG[;냤Aτx|F#t^ٹ}ċ7z,K 2$7S[bܬĨs*y+JfZ5;Y)@"C+w7&L4t e>B驚Tb҈ԗ°%6ݘF9:JNƽ:DK(v2eZF^5AraT»kI TyhA ݐjJqi$R,ˡ*؄=-G1h#\2'"c3?pj]B*k;H0;. xnND'VdDyZk, [NK-J6LޠvPEMMF.) E8?kFq.5G= \l iy-P@F<%i>s-\S>h;)iQ3T1*sQLTvFVl=)nDKGV3z^DgLO'$ JZ%{K4?XtP\X a!YQh7r<_He5PPS`VТ`\_/e"N싰N:Ϝ~X-Zn `)C5If"ҔW@ m# b5]xP4paY1om~Aᛧ!Ni%cĢh#vENSI{1CP) x),TM4@֬)dyDkX0/algp "϶_/<^Zp ġ;EK8 LqoFOaDۡQ# W ն ֣GϾ2 /j_e޵ԎCM̦L!ί} <Fs`#rA oH܊(Vt4 '+ >~Cdv/9X$E>ew<%E$2ԕq+~,kQ :&^VUk|$z\NBXeheqE338KE5ct&ri)]B 1M^q.joh4yP $8h˶=Ypu_jo)]rd$/ 8O/O=]`O/XQ&J1*]J*ԞD{@Pulh8;$k[lKjhJ0GÁIs65IUxx=3ocQ`H"0ݗ ec7kdb.yi,=GF!~/a"=cߌEVK&,/v鳓 oDK DND/|<+P}T%fzn~xikK=(KD۠Ш`*KQ&zXWa<m7L{+!edIuOswxms9%J{oxvx`XiޮЃ| i94Li0c l"Y%6YK/:Y=R68̀Z!$hD% ϗ'>:Y6K/mb-0nE|&|5 ЂuC YP*KKfiOMBd)n>vZd9 hxYM ,.AeNY8 RxQuTM&-h碱:eԗ@MsM7a83Xl?4<]PRn nVcVs!u\isJbo1vMqB~߉A1[3+ԕ/\t!St vb<ohQqSgom`+rRWl'H;U+ 5fLv_v\(;&>M[p_eY^b? 6<1JXldůow dD!.XP=uN\7?]{PyzEqo "̱iR=L`$4ÎއaW?~3>#Ԋ~zIP_-7)[eʺԫJ!=`l|0Fwm@-6Ifr*tA*Q"jXm}woҼ4j4ýzW[{ "Zi(wO&|>4"H+'}*@Bi-ǢRu k:ϧ ',/L. \pZ/IU#X!"TV$X 8]KPPU|Zj..dzx-g:]0![הqF1aj&ɘ\#l ( 4<1~W[:w. xnIsFôlI6ZZP١UYj)>*ȕvah7.U~!SXǹO:?$C#hAm 8&a=ɁsxהHHNyu˗pzBH %AtMoA8ܝL4x6(lS|}}V.mu^w_ gB͎C=ѵߩwlqI.hp '6IK{&;13ThA#*=Kl9 3!>  ?P; P P|"(oK~yUHkGq)ۯb#Ro1>ֶx$ĴmY* D);(wb>i(Ikɕ"IZ%Z P/KF|ÇQؽ ^[i}('FOZ'Dq #"Bb g?vPǯniМJ*bq8EDX`7﮽4T\]b) [^$t<~d(IP4ZtM R0ks3C #i<(+EE?=dhqjA9 FPy>kD݉2u4Zpvs0Dxa8pof]?ʐˠ}bn "mLa͊kmIڻ|ŷ 0.q|kMD#cd\yQ֥R:ol ^.(ܓ@-H W0{LȲUԈiGyU6 Z|!o`/"5Q3 ڜ$j1*Ubp`"1}h.Mee]X $P>ǣ0%f"N49'Fr*ťci-5#XŰ9|w[Βw@Lpm?ʉM6[J_M \-;)G;Jfi *o])0csJLScTxt3g~kA[_1[D}9!!vڮUP:#}3IkZ̼vt^6}n8$>1Ajr~&sIjl{egGAqip-N7hU*"^'&~oB²"8l ^jEW͠^߳L bPцvy<ՠh?Ǿ mZd08Y%xD̈́ t'٣ǩIaB5$G`,O2[+@.;kKNmeVtşORfr n~E٩4y'^NЫ5Ơ {q$rokfptB7q`ts_@"di䎪UJӼJ_E.g:L#1=8:e: $l %Yv7G#Ve8 %- |nݏTV򝌞(ּb!8%4/vCq;4Z4Ygӕ:vڥj㞙QHءB2o wD6vaǝfhM*&m+EJzW9FN֕ J}|`R`b\W"s-p UUԜ vxI;M턷]-X (\R{Kb~]6#cVp4#$?/?b(SI tC*uB۸+#} TpxL}O>}5#zm8`ISeLqTסehU$:| C/E#5^uSmĉ+? RE(~ H6!wo.StHhOFowY"qUW7(RWimW/fˬTi7g hi'܆"wFהy\kM.i@?&SC!zBz ڈ=%XBBݺ[ˬ8*%c.C#o ;CcMɄ ZhX~K.UG;+H۽D ?}PPl%UX %Lyj_ŕ[u5lm~Ox!qsc#(KPIy,tn.O[Y-r&}Tn ++Ὺy}D'!)cl? uB@&V5-G4TzM*y(Bh=gk\Ѣp/6 \@hV]jȱ5K=ױlBh)rI}1֚h@W2vŹ4St(a'p%C[s1A3@" r5AmPWӬ{o׸4u#WWE?}:5SF3d[BlY!úa.=K3F-fy.-ZoR_qLϾ,#7TVF\ʺCfleqP~m+&sJ IgʮN(Ϫȁ\'}UƝm\g85hy†KQ\qgy ^"ˮ}8UQ͡2^wa"Yȇ5f}sk,0 -x4׀OZp]o(=smVg{kNz\sn !3RxxkȜ Es=SdKK)_BeBI>Ϫˑ Z+S4x4)셧j/I s nXz ap3O6Xp Lm~*!{ybW7-!̭{RGA,,dȜp-WT{й2)Z~/nϫ2&MH;)]ߢ+/w6A)y^/DnhdGXv}ѸZa{4_8HvqCc'7c*08؍g'CTO uU1Zr7Ehw_Ր <VKeR:8q\p"t./ԏpH$G*wf{u)fY'p  |Q>b_^Cl\GCş[4'USU~boڨnD) B( ;@}Z *̕t\C }dapue}t|ih>1@f`R WMl c 2GHƅ), `A5l\RXo*.ZIq!1v2R; OA ($(㰀pf(CemVd ar. orM@`*"5'ײ#~T/&,{# e< kXdu0 #֝vh,܂KJf`yVAR[E2mfu`E`E9fr0i'WQ -H {+1+.d$5" f'8*87Orl+%ULݟ:30 JA;:Y3lXcz8KIsJ1z/:p̊l1!Jkn_/i;x=W:w9 hO;ްe"x-a|7y[Bmot;:TPzAi]t`ޙW Y|YWY "|)r9*\O҇&V%Nd)T9j 1֪Ox{6d,ֿ#l[EUfJjFbZIKH{b_]9Z:kpA#!.T`N@o+5X%2Őc+^"7.3tpE~:[iK'WN"->5ugJΏl!#= * :3/M3\5$&{Ip3y2&V( Ec( ,@եAҾK☪Q*(:9k"9F:>$d|tI+D &*$@/ [j-qO0-xnKǽyrg,hv./DIxIPeL6?godηѾGRm28XX"{ ڑkX,d- >JrAHB/. MVՕ1`S+&Xp,ws 2=!Qd^S瑙W䥅~ dUTP)8D|̾!)VX/+'-siXfLsՊxa.(Qa?Dv3[0Zh^001߫cߡ%~mRy+J/G2R`Frgޚ->g/E%*F?>u ׈HvƓ{*khަp^{4{ƴ:ivCv=G<ֵ-9b9t)~ +@xm`a>}g2}6@ rSc>Co5z;؞ª{ƕ+ ^2k.jUx=;JXFO~=fɠ/نܓ1ȁ5q/?ԐT Ћ.Cr^|AǐS|KhS 9T0!a9b]sF(F7B$$i*]]o N}k?}JY:'ҋM"Sc %$k6kP3Z8G}TL`- H{*I%N1 CΠZF(`ϮD= 4r6-okb`;X3g'3>wt';^fdȗ/;:Bz0M$՟} Hλ#Xz %J_p\x"v[!.5,r10p ⯖`QTu]B"vf߳:o46dh3}'PЫȞf~p~abRa\K7Xy] u-N aVW~AϦڀx g!,I?+djQaʝs'*bqLz{Z_wMccJOgc `1Ik->ʫFj ÈLOϰc6|$+ Su P2M}uM=0#̈JKUA2LZlm&?.eKq>NlլdNZ9__MXjUu6;A`/##q_D d6wjN#sCB2˦%^yX Ձa>.[yV:W~ziZ+vB,Qh*&Wט{Я-u|=:b@37?ӈk[uU[DUMz$sJڷ:'xSK<!vX2:)Gr ݸh 8{*k Ka4t1tu27-A6 Qivˢ$4`̇v HR*j5A$o}Im/B_s@2"" [k:i6욇s|٣:ȵ9׼ؤ?ҋؑWx΁/yK6a!f{Tkf45w&Ռ}CH!=uSٝe%-lqDv\=Jo5Ov_מkz$.m|rBl_vxfy$pfj׆Zc%nHUUnƩvى$Fz|#t:Fǿd(4@6J"}Y4mabIXb]6U٫Gne%(Xl͑尳~>3Ѻc:9C%+(Yp@AtfթvuZ\Oz<zA[#cYy  *oC4vK2zP2S"D1l${Z3͝MPzP~-28INajTci_Q_B.i,Hx"e,-Ek2,(ho=N1q< ]v2XDwCҿyYNy#~|$q?mo%vBe3ojK/?[6;mv>poȌuzsE0XabOͭ1KTapoSKXROĬ ^jIG5E^+ZRZ]ComX`]Y *ݓVM9!Q +8xf BTY?A wIpK 0I1nIḭ*+ i掚h0[^Yԝ McC:Ge2mͮQr@, a)&%66):30k44|{&zF"[)^QOQÞ1 t|ֆ'1eg,Ӿ8: _Ox jLmYZ-V!ߛg _?:bP̷^DB<ڋ_7Mh=O9if8$:GA Rߊ &&hCnOx};#\l @#8ٯ9hv w m ;MN"W!G%QcK@)RNʖ}imqTXcBHq)J. +HfM&CϲWg#|!P&3Ӹ< w Gr}F30- *EN,I%^LPIKo8JphJ?3B : ?8/($#2;Ǧyμ_x< G"iwU %7 Mh޹Hh0ka NB/ˡnLP<nuLv>Ӹ-3iV8ޛI'W(sܷA 8xaRyI*I`|o +W #Ah照ыr>a&0 #V@\1<nml+$~6*pgNX&I^}_e6=ρP)6H&óqMHBF=o#p2N DE Ov`Wz]_(FEu[W}F'XQtTTyπRyt ۅ9ut!Wr~CȐ^Bcp}'Knln]V0cG%WlD< .K^3$:$镛mU{O z ԉ,z:OFQM*~`bǟ}UbI*[Ԯυ.C(-ꃪ0R *wGI~3ݠ\9~( G͍w^ mXSܸ^Dw;RۡL2K o%FPf?Ar q? BypdY\JBy1ՠ^GFnV-t2vj\k-g>T[[kv;L'(ȱtU9UٸGm&ÿOB˯  0S_&`2K"&KY+{K]k$s֭M8Axq_u_%=듢0`TJGkJklAȫ`|!E9Β!fNG7Q1:7mւnTh:…TPF3ifD`P1&9geqA_Lyo:Y|RY/Gׇ@nszѡBo8W\/䊼o\s7-it  JH>*[Jɕyo߰i~y O12'0EFV! m{Tv,ƀ^l}='kNE֎ }NqkzzvZDMeD^aes-XCK#$m}D)ͮ%oZ L2Jn p|!%|Ns3G@u2:-ϾWtjBț 7=F4W6O['KbkLK݉+]DW m!Je\ZHr$ۙ>Y<}zT60` FFsZC:USYI8;avol `[:Xי(k`d`"b,^H45^CzwI [(,nC[C6+U*R[!`bT%󌅝+oW$gQ>aX1TJSV^ DֿYA].LYY.#[O˹5v$D*&6ᨔ̷wekm{h Qx၏~#eKob rD0ypdlz;|D#{$"'}.ھ V5>;Q +lNQ:Qb||ꌜG8A|=Rفİl;ˈfIf# % ѪMVc?l"δQb2l!<51BbwN&_іM|< Jʜ82$r@EBl9+V@;j(LJxIk:GEO6 pc4Yd$C8Ra=`BCӅu#/П#>5:*D}'@x'h~ ׉V!b]F7(y@q'o-z:pFnj.~ 9{hA>w#?Z7MxI`  V*Fॿ20ޢ g9Vj .NP4#7xON=x Xb!N3S$|@sХtI(x Yȩ B֡KmDLQ-ܥĂ"$~o\OY{Zn(o /y1=I`y2ؾR9{{#T}:;/ŒyuAy4t%|G5!ecu!WW^Ehs(2/@ؿ͗"T?na/֝e՝قl탿~% >+wPh[e@yJIeSApd*.K>RWQ%m|QFiӸd!*Ux$ Ay@v'TX:a{ɔ4m=ŸS勜өYE*$C?Xe.Uˮ-a9w;n[֙Eh UF\l÷l1^vVD\$ ? *ZSZֲ \5.HġT~!*} 2,Ļ<˞kB1O-<+R~~ThaCs)yMz mW%*טS^ֈnZsW[mnͫ:I+@ `Ԯ0} 2vDԢ G\;<#T$`Mtؓӫ^RF(ao$I'mБ}${zhd΂ŔeBpHWcp 3h7{?R| E]0Ē;Pޯ>g_3Z+I,QPPDո_pgtJV!*aݗ诈j՝è7|MVD kFe{l/(8!ض.ZbRb MH}Ӛ@1s8S5Hs1I2<x(1G7/Ә!{լ)o1~C*%Z{"%B^HAU1lH^ڧ?DoڲC\6%JB-َǔ#4;/F!bJiw6L͂ZASўj6*UҎf0>-?=C9%ݨ|p x7@ʬS`~2ծtv?Mb:gۥRt&3י`nsӧyεq߲`Em16 h OT # R6{tD|4lHqfG94gŰvb$|?F zqw}&FnIn\"DZVdOz"F "7U*FGvNT`o7J@]/b Q"&u~Vx̄)yO![MVCpߤA*"YV뿊"^i=e7QMiΗ-Fo+Kiӳ H@"Q:\VTH_Lavi^IƅmSKLaZjd%KzlL\g3 eaU$)%Ԯ$,ڇOz-;z=9,[T.Rpaf]s8 j]+L u[h4KfpKA@lc{JXY~]&~={9A4r<ƻ*C_mWT`f﹍/F=G.or,3aԋu !'*f#Bal{+E& ~a$] rjO9N}kiyA3l˩z(DS Rtrߊ5#;g/=I]&xREU\#' 34ԍ~swu:;PSّsR_ta1*|kr[jd+wު%/Q sj\ ā\I:0U~L ~g5 ?it7CZ- ^ufAv| az&@yT+|v:9vw@RFtⓨlx[b1iHX jb`U`h zEиU(e|W;ڌX9EN5JTyda|n9 +Eɓ!uJDm;lQD l(ȗ5zEEsqyğzCteGT;pD=0IKӹ 3HRL>kjC AǽTU{L;q;8~{~[z8P&1ul/Gt>ZƜcջ`DZ~HXOgXV:|f1 69]z+ ESy(SӗmoA?wUb;II\-#rtDU@j-ke! l RT~?u Y-f0D6m>ELwǕPqOi/\Ba5嘾a<#)ﯮH o mS|Hkp4cd6]r}L_rT>`F%x|jqy2i>S:O+ew.Z 5y@RȠHjjdF\v֖v9U=T{W|{#C<[CT `úσF)R3xnQt͡ET ;tbS徱$v[J9FI>X=^} Y{+kR7Zކ]vR4CAP `e9xdBnFYiOJ:)-p~P f!1煸qv skC|fB~&'#ْ`̋ 7wQ`qN,1s8oblyL&Z^bq&)#1fXꑒ#=벎QElv8Ӵ0r;h]ͫ/љfP4>HYVi#1|iռA",@@yEX'-_9N&5+ .fJ$Z,~Yn/ Z/)Ʀ:2FKV9;p*&?&RynKR< d0 3(.Q9QL$T"W̛7Ǎq~0Y9|ij oE,~{O: 2âaѩ] 2K*؍ l~#1fgP2#bn 7`Ov6M5$ ,sue6guH⎒[f#]!#f=`EY1RBYQ~.okж a7|3mI#!*RKIcS.|J<䩴='gx\,πmeUک-ȷiY8KHbgc t >F>#>GddO? QI˪d:x1EZPYKN}%Hblk.z m:;Z J Üb ytg2>͠d 3K0mwwګ".32.(SXY5)8$⻓ \ n Qm;sZ' _(p҂KaZl [ORі||=;K± =B?*6ByEdkb3xO#.5&=\|UAV_\=qǿFHfˀ5SA$R\D;LMIiO6tؑ\5_jƮw?ǂ&@i aw)Y}:Da_&f؇2 ,ǡgj ު*YR<&FP$á _ v%"H-4гhЏo"[cU-  +./30]dz)Qjx:Sk3et&M.MbP_zP]z>&HvtL&8!Eݪb$T@wM9m.E$6A;qe'a4*qY7x wsҡ7ʏJ2\4^+c J4#vfI}l` zcP [4@7Rҽ"7n'fDv5+m߆Fq\.m$@ϔ{>…6 sLAWFͣ{E`qVJ[qA.=#Vi , E,>7Eipn&E0i/XHz2L0S8*^|u緲݃|P#w#U;ǹ<^>r1J D/w!#*M½lTu,tcQxUPW v8>೩(] Z&o,K0y4?nWD;ډo/B \VcTK될; /63,ȅ ߾QAc Z).&SJ}[gݴJzfhr %3|W4/<:~ "[f^3NR:j<^nZKBDt{ ӗ+;!>XŨ*H0 gj5_N14E Dxt1g teb7kZh~y i6 IpOX\p\KxOjBlA@u2ca= yO:L5^vUah$VojFdg;?Y'yvcb÷'gʾiURmKz٣O_-:IǒVpJ+=v "T+iQQsu2I8 x|K!&A($t-j۱h'Jy!|ҽAudϐiOymPk: )0"-6ŕa%MF ܄J ,3KQY'..Em>2Qp܉ݜF7_T",TB#y:9la{q{psϖѭFu>΍z3uNU." VgfZp粮%Æk45. ,*<*8w. IjvLL\D؟Ez9oK. <\ƪcNdw/[1WV`";u:YDSuV ;b)Sm> Gn4-Q>|I\ KzI(VLIM>Gj vZ ^א}:5,Õ >nb੥h,/lNM0M2ƅ;/NZPkZv ?aE|%ZkfN@.\4]=ɕ8V'oT,!π Yd@I54L~QMO 1VA/Rh/b|ʹ7N(J_o/AϬd-A y*" {6ڧ||uFki<{bc,o$⥴E7;֌YOy/S.NJs4"VSLy*DBbcmB Ƃ"ܣW']wb@ U'jL^Ek5 DEЏc&yYPMNo%^׃[XL!s Х;k|$G&4>FWNͭ r drj'xs[T!AT\ ad/;T8ҩx:+9._X=xB.t POnhU>Neb|f~?=cV?!*2_7eϱ%A.5=Poo jKofŻ`_uCV-Ssm۫CQ @5Wy|Um`U@K1(.&A.tSy u0';Km1pCY"tT9.&NUF Ƣc^l#قudE$AH S/Ө >P֠6_={B-[.I$@w\RR" \X,Ecٶ&~zN_rE|MmY{ *FN &^ܜ,Sz~7w88* 5n4Ñ GkWGM!M*8jUt\ms *9Y!"P4tތ88;tK% v8Kd)JTJ=Wi!,xRbPCWA452T`tshR *=jb"iZ;H]NQC{Ga#4muCWN8oY @6mҙ0R/1=s{' #^y]M0[OqN p1}˔#uOО$f Շ .k$N`$d<=XcTd?,DMw^AV\%z HP[I6dMA3srՌLOeWMu?qE>b+{Hy@On !6lZSY9_uPyWc]S0/#nĦKe YU^h3s_]GӮftq0RĔVxlʦu3ZT7^zokM- fm:Ui\|~Z kM=_rm7P_O+lY\B9$q7ې ϶$lق6܉,'ĜCkWlT$ uB!Xhyɀg/}F9ȦmS,\K[UtR+BeFqA菅6nXw˕zcI䓟{U. (<}`1p$r 6!bg# ^^4]-[+ zꚏG7Pe)@ϋ\~>w@wNY>.fBS8Ëۋ 6>U> : s >:Rhf,N۟<;.X4#'*xc9Otvu5YOa$R n3 l⋏<ԫP' o]_!Cr'J-Z-4ȏ{9˩)=E#'|ˮRNJCy?\ ӋyzQ}>𢹕Dbfled9M8ʄ!hk!s]Pݘ~]>҆hݠWY8(ɛlyeOe~͗K:LTÅrZ<{?ɟ•GW'Ĥ8U_RC#?[˶N'Vf- qwsi@GDO m7xr& 3 Pu%/Ua9" Tz Y0eyVXVzo }Y56>ikcDMd=jUFq LYVp哻:CYp.ޣuhB邺OR2p(>iB^y.; @6h 8#@m0oK /#g:;"^lA_T fD"1lF\)]vVP_=x DgqvXy";*o2'^ƵI Um\"VU|9^ie{bt`luFiXrdh%g,*6=K/Lax[ޓ^ Ga J;xny^$d)v ⇙nZBc1^ZeLPN{0l ٟ0v>aS헛>4.GQ3zG$8n-܍ PE/.qb޳G$'i2{Z[2ݚZ)|ߗ3a+-3?Ѻ;#4RfɍX=z):F!v:VɎ_4@; sN~-rBkR QW(r`քMtYІtƚh&_~ +M3d jiyBQ.F)e"M?]눘'&8;'*oɟUȆۿ{Ud.';bM޺jK"Cٷ̾}|?o1&$ٶE=AxS~]~('GS-efa/}gjcs,!̧੤[wW ԙ ] XbRJy0v\ԁ t}=*2("kٞ0q[%[%5as5Ee-T'=L36O97GzӦ;h2%g+T:8-B'{&ZEK>[9_:7s2{7ƃFbMXt~(jX:FPEJ "~j=b&}\zO4+#LDbcS ޕ,d׵}GM eTFܧxQOU'j*CW\) u  !40[NoI LR &xX ڴj[zC.Ayo}ᲄZ5Sa{-WP`3y<#bXP~ΞE{R'8!} 2\5c?:Dדh+'"{hnS qlfYh \@vp|Xzg#+6e}N*.&?EUQ]H]%#Q(DNZf;^4Zy^XU93'"b;G]Lf@}mduS.mtwd*|F+\<mEH8g#H's`ZgL^9E|YcHH$e O~*ml s/b -䄢w͟MaN̢!qu',rmC:x#sxKw5|Ig,Dg03֙d8Bq\3`m>Z=^Mk~AÓ~ݮLBgw ao'HVnjMHa\8ë^jApylv`=1P_ ڝ鍵GJ)C)ߍI_ b$q, fxd):RD |#t_a=c6 7J;LJn#3fdN̜#Pe_V=mUDƊQ-9m6Zs/\? 9oM5--+g Ker[:vc#JQq 3cOъOgT¶qEʨ0_/0_*|eLr]S)>ӠւH.HQod:sŧkW F?I͕ȍٶy5M`x4ô,Uu)h8?eCyvN:n#K'5i BXA VԠqƺV0F#BNoqu0KV?gᐭ*K"jQ- CYJÏQ>,wt\ڨb;7|B"rll.RlZqZقhHkCK5$ΉBw$2}>LYG )\[b,jV}@ z~yfܤwfؑu IPq%0K@>gL}"${ P t6qe2UuSkp mx`ևg¯kǾ+!_ ьPjt+sJ6@3Й]ut Ɏ-n]UPgs1.2{@:F-V!qRu2 dQn^O!gۿY}V_QizB8D`ɤY9irE6F f$fnnhVCp.*MɍT3w{cUkQ!MGn)48f6zT&K\70EdDą0-yn XHtuIEs;;b0?F;0JF*IL e1<] g Q=|v)7^! 9h=Neۿ]{+6Ni l rj!9c Y m}Np$fѺsa 8{` 0jIX| & 8="qQ<"JH׵m%-穮^@(J fm! @dU ] \-!,qNn_z 枟6. {&? s¼P+TG8'ZZ G53/,YT}i=AJb]='z)҂ڭcAO=;ݔ.8 \ғhL#X8H 's84@٧RHq*X#*ȥ$4lnʅD%hG ]7L=vtHrڍ 1AMmBS'"lKIdg(\ &e$nçjdpP34zHDwiO5TN齢!dZUVE?oG[, $IF3z^o,9tVr &}Ejk+WǬz\ k%KrJaES\uLp!=BNnՎhQѠ'vIPNu~3;iߞhQ vo hbOv[ڌ`y /%>V] wa\ A*ADZ/)G%:sڧ)),ӂ6>192p+2 /iFԏ32jQ \ ߔH#4Y+'=~$E~[F{?~iW@/3a!4{kx޾J]o9֜Ve>crdj ܝ؜3Z&:7k'7Xh CVj&`/N y:o:-b 29KueK?hOIqJq-ʳS*zVHWwYe݀8((iKq@\P-GOїoS΍]Ǻ5쁺ғ?]݈Tv_B{RtuXd櫿7>K8*NDŽ(W P Luu){'|ѴwT, 7p_V FLɸ6NЀ%nW4c%NZ\W܍W^Bl-:;qJ)T @xn`ӑ VƨOhhtZg7m}T/s1yTa:v$ /;麡%~ZWkϪ @t j0jcXCk[a e'8%,tMC`׌),tsz=J&lƉ;]!ׄ^,eFKdaXQa]Ff _a.b 8t<ǪvdHi'$Ih IA Lx~*jTPQؾz`zXcq|tNle-h6EfԷyX lo?:t( .#1ՔylIFj藵tm^( PXq> v0LWWiD:Bȅ4nԨN3uܕٜ'f)XmrjeDTc_ruu`h-" 8&$c 㻲WFYE>=4S˿?"Io4.lH]W[Σ?SKeI5kL!>>o[%x$c8G9,K|[TNp\Cy8%[p{[PljXUxod6S-4moA;:c\4`P)uYfh  BdY 49/I.ORR6zލ&įlK0g{v.tl3OlRzZDwC'&aH-Ǯ𫴕rKe9>). A4 p_:'Sf!\d'Xn㎥Z;N?]38}" ;ʩ~ΐ֗قy5'`IcJ 8 ;Zh0q `*SstoM|,1-i&" H@}zRɡ#P̣`? ‰,|k`pZ=CV2XxչY|DbYV%rAT#nlrcz|`ir*OE|k*)WIgj`c/'Sصlj~ _MQV)y>i ԫ߽7On&B%KL2 mRqŲ‘+lLìp?]p,!TO0Ij}FtPmǨ,7l)2ɋ-v1o<0kB"!7X=(1]7Dx;XXR2]ţ&GU@崚gVolvQ{ω`GB6X A߹[_er AH=om\ǍeRoCÿ,5x},bɡ`!'{7' .Yqa(f *Pdg}׬O + 7R8b\eT8H)r1j.aB9 ;g9E*^CJՀTH d?L&z|3RsطtJ"E^.HR6]43u庀JMEa\T٫2"QS%\)t7Ay!47㚁1P!uY/P$z"wTY$ ^k ||2R7cd 0{_!z~Ez# Rf<ӲVUXNB![ߏsbV#X?mTp jNM_뫟˥\#7E %M0q 2fGN3$,+ZV-֖kcC5X(*3*oz Rp?/f(Nu&hg] 2V/ ~9nvI+Җڢ.#%PZ'0͒8b @hzZ6#8TH3B*pҎB8H-աdxT?Rpwڠ3R&6zuk*[ʥ;H/αI&tӍQijMG8:6TM`7';\"ȩ'!0;,$(-V[O5鴇Y#r8TZD$=^ <_y&Z7lLJi7XPY^Ɵ fe;wECUtv7^LP}D*;>q+,5(*d ۓ"O?iicEnBjIb>8;ݙt4ճxF"^(A^ZU}@MNy< "0Ќp(`Rzr).OQ[IyQTrY85ͳڡ\m`VE)Ѕ3~DStT"AJN+F`[O= T4lnW-#4z&;">I;5gs!{F VC/zvh7!_X<"XkVgR,OIAV ; upc(}t A8RB]%fdOD|4x\v 9@Q0$ÃM$^*6.WLtФ/M&?_@Qt}CvGM:ն^%kP"Zy*Gc1c ah;sF];l> dl M/cV`$ĊLR 6c@D^rsga׌Z_V}. i,'/ ?I#vQrB5Z,~̬,/@ilsA[+AnhtrA Sv`1 y1'jU0BR,*t=|Ӽ[a\'3Q2/ >PX Zp%rR9k}2tl ]sf} ,6vbRoV!2u}[oC(rTKZŻTh$'u@F/~a<[ U"nGE( 'uu)ͼ Èvi23]..E^33[#< bTfQ;5(g$ x|s=7Tb_!ELk)y=JH*() w;{GAP O~D8MRt Ƅ4* E=^Py0*oT=j3x66VmOM:Õom"^řkio4՛SE}2؂Vݹ>{*[Fdp>7zZm񥌲zV:tsFlaQ@$ C!hՀ'Vl~<^ lQ>/s!ڢA_<"_dO([h sio''Z;cV7e Y$/C_w$Z%2`#IkDP4&#XXD\>,$ Y ӹHG)ez9C'w&h+2B)ˈ 2ů_j{8RH^KqIc1/[4AN`yޝ]–Jy(|TKcF {NivS5F*+*nD#9W=fF-]CRڏK a }bs#Ʊ'AG¬?jW Ǧb9i߱[fO55 44M胥VAKjJcSˍ@SWRWiaX?Dj`[̡p)dĖ쭠%b IjnBELZ`'l^og\Ho oͿf3e ;=a(W¨edRTzmvLA#`s[X΢M]A}wi& zמp=׈%h !#KP LZ5yΤݎԤh-oJ9qĐS"h"xڃSùANT(?hei밦ƑӄS E|_"IUTWb[4Bgަ?f; Fj=5GW~8ԣk#6N`L@O>90GNQ<D6 `B@iB7* l{~:ZFg, Ufr_%3= r;T-ģ'T:iB[ 4qYY>P<wf-(6 9KESVo~M1恏u:Fc#D!&#Olru:b:?ly13TW;}2WA%]Ay I5D>IuýM¦R# vK  \G!xDlVhyeR·'zXMrUשcҌkɲ VpMkPE0GB@M.$V%`ڕxH jɫXOxf{S:e 1 Dp3ah |mE)[2}q8hӞ>}Pv^p:vR'_u}MlpQDM-U'HpY|})+:VJFޢ] S 呂s:h>|j uvjg#ɤhlI)tHHgEyXۡs$@E8@*%ݒΨ]ޠ3js99ό61w$F21DۀZs j&_MhbnüIG̈́*?obQ-ߞN٢%_q=y`3^@UվnXf@^ CbaT O-([:oٖ Յ75 &#]޸v1`ܮ=̈́.8RYϧj{(,^8rfO}7 5ϽcJ\c]$H!,Y(eLJYi%t.$D= G1d *@ɉ\a氅D -D/Ć C`ny{>f"+jު Ag;޿/.? ,#w}=WjE?# {[ў|sqA!<e%zg aܑ[jU7NΏu5F αW~Wӌ+ 0b谨f0F:H15Gu %JM{ #]+z,Z¸Y dtY])=ma^!T >/ |$26+BrJeڪ!6ћT Jғdyt kAeڼ[B[N8B8%iƘV0RpC\2͙{[_.M[φ}e#w1 3CBݐ1^L?,%1@H o=\AS0C9~?(ٸsgzt1n!uq%Mmm#y}m>0J(D/YRSijڅD]zg3c㭂wHGwؓ&~7.>-erL(j|x~U,`uWcYKOotN7 es[7"dFg%ȂOˉI`ߺg7'k^J}u/j2)>𱖜ߠ,Wzz(FRX\zސ@7E>Ѿی&c.|0˪N:4+4¢˰W1z--6`&;iΓ#2n(sԆ$Lu<Vp1%fC= ԑ,,ice_~].>{6ՌWjCڔ|9l40Ub"\Sǻ[#ųZ _,$4D{Damz [eαiDRa%ԁKi M tT$M-S\Ft4F_euLIl4[#|:PhG$+Tp؊=Ep_,օ=O[,w=ikdo$>~k(kĮkI5b&|2 ?&JyP-;"lH'X Txüh#uh0zbv]5;PדJ{Zy/_ mo%Z#'<6CxRXXVp'tiZEslR @]zV`,^-wԬYpf\ ^G{?@{@OCJ|~݊aP[K-s(0lîOo{i^㩖2MY1\pQ,x]KM ! č)+VINKKGh)֑1}c1ff-F *+qrzacݯ%BMvl/ So3JklYcy2C)|ca}˾Hg!2l= ci>6Bj|leP{SɬS^؉n#Px`1 r͈߯7$ i6@I-[?GO H U?PJ7=Eʭ\(iL*CYYp̥g\lCqcJ5v^im6%OhEg(0~|^yJ9Χ)@ξ$$77:jg"Aoę߯}@oRG2Re73r9cahoz\fD {m*HvߙDv]Ľ@%/. cl/׫`"5"  z2g@Z{d~__&yOh/K}BJD7DFj!\ôqfcj6ϻ)u]GbMw}53TIMuX. m3~q&뀖!^])RW~ù[-IS{CHk8XG!jBpiF f<2{cÁwTVLP wVi`5DijV+בKDשȲDނL]#Up=F숰(gQVq$zoeNRox ƴm[_R'T@}ƢK8Gm/GXEs:,xf\_6Vmʅ5*."|緒jxX2_Q"J2*(\CQLMQU%'~1j{%hyBeZ>6$ B4 P A.W!2JQxUxm=|}t`gL=dK>UMßU8ZS"`m$2I=vnBI XKj-{AH{ͨ/$ʯ M}r|ǻarT33?'ú^}s~KG'/W̲IBqT໕8\QV~URwӍmVoSHR @,p;0!ggK1VsZ sLE MޯlB- N0{$X4~OJt5CpvFd?\%׶ wBsHڲG_\5Z}I~.ݕK'(th:D6фi:mHlye%<˺|l[ 0@ h΀+ @k"(A=pzw(L'L5ٶun@~H=6Y W:q1 P'ކ,aꨠ1|,.LJr}lG,s>#=1N#%݉༸f6R)(<9޽a(k<kvCOT< }=GFVR:T)ft$ F1/2!+U{0#\rqEE0Zݖqf-w.+"{k~!F6kc(a@~L dNU$u!zRLwa(!Q D1?/3[P`rv<%6t.v( v $AګDY7m#tC7擢sp 3D|GW} H(;㼘34pxO)R-wӉT$ 9 t]Murq ?R'$ (fzf= R ,|Oa™"S&6n}$&'l^śB5fPtzݽN`zB3F ML2b\c{&P AFX dޙ99@rQmcCiԩdͷ|Ҫ=aFṊ}7d) (QʇyD@)޻#A=nhU^T9W#Ē+.{o1L6ANIȬUU:B$3 !ϹVZ7ʞ;im5taۿ &:H6mzjmpyna^,*'ڪ# wb` -|P:֢Mr.ɠ1v(7GB" N:]{C,`$Td32O=D]g ŜnaG!nzufE'a=A.F_W*)0`m}zѴ.(R7Xm`a R ]vn.)`3"8l״ngF[%IsD5<:SƢK5_ ]Bx #ʺ\n`ZpР70>NA"rGnteC0+kجMt&~ƚ-r#!g5J.xpIhS;褻W(P^V#j'VJmr32+}ԋ(qT/n/ϬX;"*J߶gf"s]){/O{~=$X[mLArZUBH"nsӎfG }O*Hr#4b>io{#3=ہ@s+!uimMvݓ&9AeJPEGݽHIeBB|HDj8j(;X|;)+t榄_KU,{!< L4/qq'I$qidC6|v~Mw^.d}czУe17.% tRrxdc> hw<1}N)oePGڟmfY| 1a M@fdxUf_z7R$M LJ I..v `|-u!j` aѶwA C(a{I>^;6P)ѝ(lY5Ya;x9LOadǸ/+E|).Ř{6wNZ/.Y,K9]WlVex*we1p9Lv5"sIf֫ 5 F3/Ъ>ơEiJݷi-ȔWS^ Ũ^ mʯC#< WG24ful3ԬQić&Gx~9>PZг Ցc-< YA[̯ΐMΐg|KMZ,Er5mOGb:T'0__vL}]z o b"'UıxW4Y. KRXrW2LT:hͫ;dzY)Pz2g d seiWZJDOI5p&<9a"$bՒ*Ito'Oy)7=]!Fɬ5y> WG%%HQ:{5\%JKfWKfC9&n &q &|~E>8TEnt.7(^4Q4zCRѣnдo`CZ]QDjOg!tO{TfDԿc܈VppeZ˸;k4 =a6=3&k'&.EzT fXU1U$_r\7&y .B똗σ'XAmM]'l@NJG X #5FfkF SRl 2hԵF*:X?+Iղ S0!~m,2%y_% N)T+e$0 vٹ4Ÿfqz@'(Q jsmNu3ﲯJ7EtÏy~JaBoDg:Y}V- 6uAѲqԟNˣ$1:CI[; ]F 4VJ5}o_AIc!Jࣩi3nAZH;PGΩuK?n{$>1Ϣ!>w?8ӌ պ|>X^I9\:X<-RGDz|Kx`~4%=*@*Yk-yY]M- XS_ di } ~pm}]1"}q##7C)6qXvT y^*މWv=%>>X"OY `J~v+:[nY[dՃ7ER Jug 2qC +u_4g%֓P"3({_Q8QVp$zK=AM|NkyPgx6ój%HEJjb1a=495u]%K_X&AXQo躋7mUM+EPs&+3&+RaFm䇐dU6_j[B+0pօ&&E\uaMXL?>5<̀Ƥ)g Htef=(}Y$gůVME5R6>'ц1 Z ;9TZ̓] #vUi0s:-05kd"o+x2$J~NP]42tl [d[w ͟Jo5d,Zqtj~s^Qx+ p]Ez3Eś[;n Ѵrq/GSv?$Ò9/LH 'K?JuA;r2ѼDO )C7\&iֺ]c'z0ЪLoïr-( 6tlO?c"mѢI`3céRbֶq z I ӿz0]I./ct3hR^aR =.Udohw_!NT$;̇Mx;D-[ ^ɐZHJ?@((ZvKbHOT[mW ixkny%F`NDX u[8C2L-+<'@[L yPfKjӰR~x;UAf')͘qI`v9i94ޱH.6+>,z-B`gf|:x>1qpo=etRR'nt z`ݎ\5.R4^~t~+>ݒ$dgvсBVCG)j898 `~rK+8~T't36Ypf>shУ\gq< VHzOFH(G$ˋU:w?մ |Lv|!DFe1l0h,mq/c>F.[w]9cNnm+j-ߌg4 hx딂튓6i˹iumwB$u#`Zuu_łώNj0zʟB}yPef Oz5s: rJT K M|>q-iU}FǸj eɘ4 HsB] ImE1lN[`D}3#T( i^pZw{-wA3b!]D'O^'͊^ ) cG Pt7(4Aa\~4iZҸ?WL6y!w#Inppuidb_> XG@/M 6sC:&u+Ց~1?JB/{ 1z;YlW( EUHmmb?K9>bϙ!IzQ Ft`st/o(H )mv=T9yT^˕%v!G~ǛCH'mѥGVgB.toj /׼%du M3ZaMP.]VH`_ 0y F$urX8ʿ;*M`ƼeLRIr,*.*ν5:Aɨue,Mo,- 5ީ֖>ۉ[c3:,B%I3!sѪiM3 ࡳoL; p' Z9{`577^z*; p-=*Foݝ\?1< lBDe?Kfy\=Ytkɵ.u LXT+dz+$sLIb)'+&<*&@ޮL%Ǵ#tQK3>x ߝ+x :j'{׿ $v.5Jl94m Mo*hX.dvgֺC2Ǹ,'ɋiYIy II ^b n_w$T{ڨo\)}s|ΐ엦0 d%V!!rN2- ,PPr4zm̺߰ܘ%6ir\ŠK\MzxqAE g ћFH3I=q'wܬ:gDʚ=.eUaTTgo^,4 m;w.8shro[vO,SkՕA{!QJpb/LeW 8Tn%BfN7dc  k] nKeE$P{JR@S;cUO/j#헺ޫc5;mC$dH{JwFi.=ФNzI,Y:/"\8\Pf9_b!L.]G%'LMtT)t8U!+뱰QDFvT@Q~3qa\S`jS\ ^Z?X{$8iyTGlBsj7S̡ص@,v#f[ɋJED=@DVzG^2}?"yzM2l}z$~HGE4Xͬi Mh逝г9`һ9QUMolΖ50+6jKH*-)\y\Ոjy |6{޷:[QM6b,jf@L3gB-W5L<=\Xme5wF[yy>9HN_]%\m{ 9C{KM汼HL'"iU1' A(m56~{ScX!kTOQb*~'][M/zl e6 mhѯߠ"P<$>]B-$}b;V0yzܡZ=fF….СĤD 4N2~M1Q%1 _`;<7B?AvzlRE#LS6xxX/Mq=76< Ȑ۽3/xS3R==2rK yeW*+"ȗ~Rͻ.@Ro7NYрJ_ +ĺ=b]xЍ']lS(N7e:l=/M!Уn==,n<~u}_i:9LtuJM%$8 pJhWmP+e+1d}E v9yXco%sXrQ%:Khhgi3Se! P% %uqRa g3[31~n\s<"EIR!Riy+06cI^Z%)iFiB>. \0O:!3m| =#DV_ eʭif-L@khI,QnZŎbeVrE8@Eɳ FW~`kw^ץ OQ Ŏnu)bxz-j ű+m⦀ScZlI[49$LB 4b~A*Ss:7ҫ]XIU7lM \3!t`'[4[w}zs7dB[+!+wY|t ԑlj.c~:Al./STͬxL^4(\)ڽLJ(w@fUVCx֕3$'ݕ2U-j;`${pVZ?<+Rs7P-#;nNYk<7by߀ubk}|)Ej׀C5H-%u:sb[-{}2H /18ͤGbz"崆B.aC| ƇbY}:no䬾hkugIyxlF`&چjOq£YF`YTgsz#V6xWtd[cvP%h#8ޚat?3uݧ4HU25ypP'&O7 QGUҥtZ};`Bnt/zҊPkb9YJ81(v|0uWH1SC:HH UB`bQ 1BEb`hJG| q^7K>]o~&hK! 5lsʬڠq:0㑘EMJ~19n%ᚈo uG2rdjѾ,+g'`Az}<-jѼ[1kL@`\(i ~f!nU5cw]0)Q?ju!d]qʡ}Vv ] /MDk A?{⪈#>Mdě1y~&ĦЩk75 "tex_!ݚ~*v8PtG"iO>Y9s&5 }}X1@-@{%1iԲޘL|,|'6&ٽXjtOW9G7o{Ԉ̪3J߰bg'f+م6SjO.t8 Z fgV;5 B~x͒3̝vycGdT ġm,#^tKPhM4y ΟDZd|>NI&G sa UÓ}0 p IŪ+5V@*g{qP&-RE.cI"XPGq*Xޭs% 8gw(= x=-tr'/Jb/#9\asb34'0\ O۴6XP*YtwX1hڹ15:!9 =#M!ҧܺ\:oM[#}aA?Y8::DoKcx0[;z7W:BTf<3{EB2O'h0w͛rXf-<ƼV2uP"@ֹzT"1n]q(iJ`>(HDf*. `FSG핉dHt^ |aFzaFnG} bY$PNnEI(pw& 7/a0еh4-!yΝ%k$q-S SS@{u^4>i6%XV4%ubl$5Xzm9ϙ cHL,B4&7P-9 ^.}W:We ~^v/|9s* vzMS] 0L=='^ӳv*Hcx/1-Û.] ,9^Fl^R~Y߫tAzM/{}aSeĹא3z5T $:aSp {VY0Zjr^o/03&G ~$~:>(T[-\gQRásm$:/Ts!AϤ;t2:%[Բ  *B2|-lF8#Ibs gX=]G0?o^)'*k8d0&RS'WիZg#S~"fƒ=če(a;5v?Sl05Cn +2`28~i h iFV&EU!MI}дەe^H4p^T[uynS w#U"B VmTY:H24=mKievFv3lP*6ӭ>A&= ,ѓQq)<iq7do @n۵[r^_1S },%巳)r vLfQX]Kb7 ؼTfZڤepkqIN ӐWQ ~|̎Ƭ/{7(yYl_ʹL.#³ІOJ呱jȋ0`֕ޡo馲젵(;],¸'Ҧ9sϤ(_28 cmmk\b-Zԯ^ H U[B|e =:!``I]hV5;N¯6 A颌tk%> [ ysTky3o$i?GHЯ<,"K:BmϲIJǜ0-zVa_3җ02ϋ̫P\ACvVx04ZMŁhaZSŐ oaw1~gC׸aèP:J{ T*'PB r>̂1ֿoY*CG'4)L\1n-k&h\(I%Lb'" :>_'nuKuURx㟋H) :vvڽZu4,-V(3i3%e,P(=~IB}bqVTKD ՇKvɣ*߱&E_ N4{Ԧ.Qnf 2!D<#|$(%$Qow,2l݂ݕmd*vIB#s} \;9zrEc[sR"BB\y@ [:HYs?J6cIuS{41a-'VkQ){#^̓ަ`3&) =)G6*eUIB qP8,[/dm:%%(\DūΟNe*DW@yٝXzU@]4ꪳ=*|2eZkTo2uNc!Bx3 t̆uE/j=~?稪/n17e:hE 0A+ gBOTuD h{>' Eשᵩ6@xv $ $84fH_;8m$+1'(!5q֌!G~W+ZS~Ac#/!Z c b.ʶ♶ ʉ9:z.ހB.)\#$ёDZFzI/Κ3PɷG)L<,^1?v@ L̗%"8b4peKקNZ" Jr U"U}rM4\KPN˯Ġ 5UL& Ԓ~aD=Y~b!Ew:QBg$WOkTN"%v/4ZyQ`.q3]Wd%*'g͵On#EoN8],ؠ-ma(r膩~>:8z;1:ˆO;85J\̳_z}ަYvf| HRhTΈ-]ZLk=~5$WPgaVŎN1NWquB&*xpq߅Rlo&\ضmW$gnK d-qGA.9(b |ArCB!ACwΐ^<%S.<@\aPF ~'hFOIsL [eu:>WJJ8|̜ !_a6vB)`ϲmCV`RTPV&i嗳`OXJ131m@G D'DΉreX2eJjlSv{Ë06$HKAWkm/_iRdA=sffP5Fe-Tkz'Vf ?MDׁJU!DXs%gwA=Y}^H;VQcBԴ(еEu5*(NQ@Xxm.LEXv[dNw8Bev3 {g.C QPd*Ə47U&GiTRjt U/G(}WPk!ȳf9?2lQ2(ͫc0"[8D?)=ex)7#ٝkeR,'jIPəVeDreB=փIi"7B|եD.lzx_A*Tqc$IW+y۝!ґ9}krxN;q~(*l/%ɴyVc m-q#מڀ1dPu-ļi]}!O1־4͓w0ͯިxb` 2bͮ,YazYcPޯ#ąDP::?օH?E ŵpk\Ʉ;?ͱܙL, ~ҐČsZ^EAH*= Gq*NIRR81.NQp'nwwD/܋&iz, K K!ܴPFZ_! jEЖ٧|ҕIxO3d$觿VTM E9P>ޔj@ww^S=$9/Diـơu Mݤ. FVkЦ~Kw$x0%.X:Q0/W\|zVηoPĮN`:N\bO=4Ҷg`MB2GJHܺHA&3'A;;;4:Xu~f ὶ7H9\ms6vRH*D:vmI- _M0=ʲ\.]:W,0矌iip_9IL{MLú*C>܆D׮l@P5 V+wa-|#Dl A){ѹ[jH2_MfAMrR ]@]R\*5komeۭ;5#!}=V`\ ' ɡ\hen -ގ|)V|;ãHV7-9WgFʼjZOӠr[?SO|rt];^>:Nvi۾:bAjGaH:0 i,R+Pl '01Z}a>Bd|r&;Dlɇy$N,yj3H& ΉB7Vi #<np70Xۏ5/ W,&-14?J-lLDɄ `d(/M*@J\~ 6P ZfWQl8t,B^U?^BjXneu7Zr6s۶L,c 4Qp]bRKxӄ .ʇ5؏H̉|XUqט-K^ƿ^&rQ$&ν{2;pbv6p{¶T$ZTj]BnO˶M ]a2)XS=h:8o.s{kNuN0ZKţzR]xSg,(7u8E M/X 5)GaIT0n-c)c-aDn=1E)MW*f<'<0vGlG߳H#7]ݳ}Xied26'PFS? ,SK!\2v=ߢV `Ka/*O9&)+͒-ZmVy/GB0ٔ$L!o2nun+*G:~u  %hF0"Ua/h!pskmnY oto!KyRCB҂+[Ew]AsNJ ;hASvd!n^a"Rk*W9[9<.y;ĮB%GIɫBV 3[x@²4yIP"6s9DF(]-ôc=x nd ǝtwjG,]]?!@Ydi"8`;ZKIedqFL7 kbtYBw1}vZ7`MOEۏά&PE󲯰@%{p( qdž* P,{*nXuBPn"ێFFj )O Wm NK@rJ*',E8#&i;C#[KtCdƠ}$9 ;l{7@tC3A y-x*:Yc RZ5bXS3ڨ^"E[Yq1AEL2΢,#Pku?-"1#nY#}S\5t-hdMG%4HN.PbKk0ulpM6Hϸݸ+meEuF.DPQ$Ai5P"С N8;O{hCWPn@ '1op%cDGࢂmEJk WfL?˝wG_K/c^7ŎC1?cp+gZp|0jCCf[aiѺp0yAr{eZV2Ccexn@ ۲5;{Q"oPf#\_Y@nx#$Hjސޗ!dPou 7zC*5E}k4mx{WO2,ڤyf]жOvyfl''a`шgyyֻ x(K:r4qHJƕVmY,ckojTx:qO d}4d5t`p?{GÇ%K{qY}(!kF+MzIi3L>1 a []#Q.UNU#u"N9$melp IGFL60ԣ=~ Fs!i@pߋwle'Af'WN$=-ܫ@awHJr,SDT! ||d" ҇6+"KhV({!xqU( N eT$nVl_GZJ.4S+䕧YWI&@xt'[ux$akލGkBBb==nh_"nu'u2mZ  62=/䗧n9`ܾ*Mj(w {N՞\H.dH\$z`gPN_(Q3y@s#ݙL`E-zE<1Y _)ӿcUK>?k V$<0'9[NB0tĨK_%N@XkU.q}j.8 I|d:COLR`͗xůgiy*l> {|)Lh3U</Pk~xŒ4A$oyP: VqB] £1jgiJ `?3Lt'sJ~aHj k!ϛ ²bA/\vAA f*U<l:́,{LL]5-'aPͤ(K0`UR05I2hEV"Jޙ>yIs;~L$nz&ԻykC^hZ\j#y"o9 7Kנ@Bu8^F$rm.rpIljQِa&& xM+}ߎqtj@8Jʙo\!iz?Z`г&-#d輪UrmQH07AɈE-6tW %$YHa)/Vv %-LmR e)*b?:IJSr_g2r%#]Fwy HB$?fjxA8,1e1xˣr~HR$(̃!_q cEGp3WbB[V4&{tUT}~m>rٟƵFQv=8?^F4} ãD{x5~kK dj#geTjP4de%Â9i0Yv}CEynө_IL>bHpRokweދK\hx qfd !0dX"&`@/8 ~q]HB4 1&1Km`׌!Q"`bºd >h8{n]W3:*Su~ Wo_G ll>_;fX,Raᩥ%-y׏~R@45黤٣?8XCά*d_=`j$&Y@{ T)?=y9v lg_wu2_ȏjsn5%T/VO[I=RrEmLT m/j\6k@b]qӖng]-(qaᅮv۞V!n6CaqY-&u1BN4 OS{dwC0^`.i)GGݭCȪz6u6ÿj(̪]WJqtńeȀ ?Fh$:'V1(_ke~ԟNfNɨ"z$:y"K`;r=Wǃo2@ j A jPqT1i&u.8PլH~dcI,u Re-ݹƄ^gX;%k3I?bV\EmL}" 8׆! 0 MG<}UBҴѬ!d__:\ ,?0>B$o'R+^ >x4Ř ;V9PE n;1U]dXكKAE~bׇ} Axf[#j݉ ߚM̀\Y0~!%e m4cJxN ŝV}j [%&|s3[1FAWTZE*30CrlZ_=,`d̄ &y>0jMMK̓JekJo*"i(]1!쫹%J} >;YWHW,_i@̳SũD.g#wR/x > ȅ0]U*!aZY`~m;f0O2 ɐbC^E.!CSu!ЙmPjMeA{z %;8 k覠=a!ԛCK'6>Odfk,3<)[ bws[D,|-MZa?f"\S"]H|+,W:/pz*1?(J8'{pgqWn:T iWD1s( +ސ پ6)߆(Pd>"V7%rP;R=B.s׌!KG{(&ubO۟)KIz4u*t&?b3gZL$\Ťr7 - *)bڒx 'l"߷'*cx1\3Y<3젬uQڵwa;];jpB'0pCɐҲniFd~g@r1@u7^<; ^Sio"+ Bb1D1/[[1#9`ĻJ*JDXw-0URU/ R4&;E@2s'X;ָ }sqR s:F-(:ZHȆ'g+Ĺ)Ԗ|JO 1B x5*xىMt2R=Vu9T,bp49U knM!cY CC@$G)w@EQ]ϺjHw 蹔;_1&p(T>}ctNq#31V<)}=i%5"X$TZYI\Rs(ܔW ]_N|CN-H^$]"3g\18`PRÔͦ0^lR9fBfб/FΖPH1S5B53]yT7U^: 튄KsL"D>6+{n[3fv?^RW&OJ^p%Mc8gж_?7?sItԑd6oJF" 0Z$r"aivv~T /& 6ƺlLjnpzbE驠ag{iAv xy$ v:yKM8 `KJ]A$1",9KQ $i<&R uFaQhP[̰4f~xU)nݫJngsW8 TV[5E5R VW>OWdTP(zCdvM'H4zZIl7oy,V('qfQRֳlSQW oՏ8mv=/m%h FBw-H'nvsMח (Q8]0gymϔ\jG+2HhK,^kfߝ%`dJxYEM5$]6YE3i$n\U^<rW2C<aﻐ{ˑ]Kz+_7ukyՖ÷b3ӒV{9@oB߆KIUaBMIߎb0(BlwS)लw6ig]dr>  M~KsoMiIcf"l禧B'PpyFJTnCJ14 XU7j=r_HFtz1ɱvZ>Gٵ;e2}6n ʓs5sWDD w_ =%?Z6g,/b_j,FD[.wI "~ P9:%rH)Ŵp7kвF2@@pvi"t&L<X.{^FkxH@i2qfo&Z}(`VoĒnbxWD!kͧˡݭ*Qlݳ,_6|^\FU>TL:mW-t̓C# {|W.98iö́pGB_Sc%u=)ғ.]WupAf#ZCg.<[U03ٚ b^H Ml)`GҞ/60!T{2I$gb0$)HD8#%jn)VJDKe1CchdABndܱF~LO*0BkL}$ '椢>.:5@u|t>|Tn˝Ȏir;XQ`HX.4$_OzR>edFY۬ gfE>F5:OZɰPpp1KuBUf&^S^O9w/gd^j#uY.>},=7Bv@LGBRKHk3'i4 @WgH\̹pCü$EQ%Q?W,wwG;RCf s^jEdܝ1MѽxLydϟ@?l A1boJԍЯ Q3Ze7|LÒ $g# :"*hP= hd%\-4XKsҵZ$L_Ln)-{KG=>-~Ls?g ʓ}~t/!Fȼwv:cԂ+sLJ,*B§xj-y `YGRpGBԼ?5:z,8:< >)k $d y Koitk @1AlT(/W!Ʌ9+06<'fW%Ot5 @Va㳜AUZ ڹK4uamAf}׵BƝCi$l;owR+ONy lܐzg*ꂅ"d4zx׻+O ZzqJu%#1ZhѠc-\*nKx8;\nKpqXBc MerKp9GieF.O-g4U)W"NrRCFK؞7\vT*Qdi0=ec)q_3Pt2"& QbvX0apL-L-*>Z֩ޝ{L#A'|I~&}w d& #*qkn,^Fxob98zfO#V}p VKn6 ]lV|7U̙HM> h1J֍.Hh#Gnyo S\RU:)*h? [НN1HގRBoŹX@Wߐ awQֈ-oJ^L{ tmf~{6d;*:c%,GF^لZf4T5GzSR ӵxp{ryܿ |87Np1l?!IxN/1^*ܒ}J B`~ܦnܘz膟D|m2-+5=FZ]O[(~<(˞b 7 c(ZJ ɀxߓLOyG}b9+R,u 8zב&{9'/*;7D_i([Y^'%[a.cx+ ] Ĕt*W>gyfS͛9/nj7v"ٖ?~&:BWDbp~*E&?*hFi)F(Q()"F0},=oRMuS[cѮr!X":!>0ٙv3MZx9M6D|A~lP=laJ֛j4Ta^(bX@DG7HQe׭ӀgFf6HWXgER>z4BcQhT(껔V֚mXxu{9iE!w/82i.,?MVʸRь}~^!UPBU(ρh_ikn?Ev\YQd3\R7<N;3vf/@ޔ 12@;1vDR4!#]aҧh~R{5 !VmMUu ]Dh|1tC MLܚG}e,N7W[X̱LVpSC˄oY kfQH2kgonQs'OxkwّxA c-> @-W'>g>WL"4WU LU>Z4\ &w˿+-,;LfkԅK.PBe ʎT}7K2#Vh U/,Qe\t-?JߌvƔ'}UZ_X%A "2)ysA*Q_Ȼ Ӱ@ CE u+F~XwvVePTHNyzZ4&?CW\+|&6E'6<\jlRes+: ܜHɴR‘ӽm߶>"  K61Dқ TvJ0tP yi.-T;R62 k^@,+ ~f@$gGDpV^$(ZAg0e=~[ }ߌ:4 gFqw x4LyZ/-5H:),i8,ៅD9UT{߈=i>=ԃYE%Lc5[f bvtc24a>}N: c ;yE%>җe>w;u6B!Ȥ  ehǩq7^[|aROqyfZCE×/@iǛ:230ǿU`PT1#8s @ ow7;̌yֻpj̋bGA҈;ȃ&lhEʋ3Μ?e^RrU{<':$Ag6U3c.UwR,Ùj2)-paA6%UJ@Y*$b\ , |V !| ~i6 +ʳ1$'^j_Uѧݪr{reh4T4Gx@ yI3b&x~ u>$ŻqU 0dձ\VaD%NXRY9Ԥ:fxl-4G-L SΝv@ynTee4UFoȀ_xn:Ƒ)Fi De~txw45ޏo9t  tnƭy dDM/jWMLx2h<&E@N+wjK C4,ňB8q{Y9vs٤s0&g@|M4[beNn9!o%MUPU&wyBXؤy-A2(a5AΜ&"aS湭g:ߋfQfRt 3J62[sˉ_`1%ԙ:%m:FӅ *u͢kXq0wοmu0@e:?vy,8-5gMٌd>@>Mg ᑪן1vfE[4r~1 /ŏ)RaXeO`ՂbrU8pYW~9qՔ<W"Yz]f=,˱Aw֬cjCC&5QxLcEme3Cdw{{^'zwKrn~=ś;icAA2t,|a-8-V90x俖¸ى7@ G|cg~+(:6i80wpƦޙ@{ޗ7Tה ,6(c=mjQh%°W)[XZIR1$~`vBM|nSDyYa N/1g|^l0s|S=lNuDJːlf㲶wbQk5(0 &};vq:,/ŤZD{ovuw>it{>7*])*R"h|D q6dWKOKS5CY7GCmcI<͉S_JD^؉s\p9+v`%S4 ӎEuQr#q^IP@z۳PH=g]R1p-9Zߌi^?2qi@7o x|?FbI$ +y͎"V>N-5ik 8qĒK~t<%b9E׹me:JG3r1<+? Qx6}Ry\w-ͯK6&ʛEnid.J = 2a%f qD׻'9{A ώblku]Ksҧa/$"aJJ) נ8ݚˡYt Xg\=>ȲJX @efxx6zgJ1Y$?O<ޥ'huqtвҝ X ;&d%3w2>5*ok2c%58y.U+4<5"M E.ݎU>W֍Bk=*%K'P_߄f?]3dԐc磌BI~o }Ì7{ m&IH7FjWN?0E3&`>L͹nڑaΎlĿt[FU`alx1tpm߶P!]@}i/iZG+ƣYHz)%!)=5~sH0P|<}~eXPz XO4àQ5jl|o'DG"Evm`d㿯}:p+W/K;[VOC@^ޖÔv S^ygԖ-cg Z/u&4- 6|oYk\7&ĨA&yGcCAtx>I4ȌZ+ ]{Ira|C:a39FKA Z(0jUD2J^M:UQ%oXgѴ8+UxBq::n 8k]?@|^x&fݝG3Z,^ ^X]PZYJ3j$Tmri3ĸ@RXӳٵ6]d1u+Y9dMd YȖV"Nw߭R8kYSrNR\GegO4J*W=*i^ €F/!PU=@qOc-Pq̻5@YtZxJ^֪Z5IsSt ٴ_HDI@ë#BoEtꖠ2>%(Hw *<.~nX+\;7D*u:uFtYp"SN⫸b8l@[hcp~likY}ek">3)5٣?Jtj/sԳ O9XإS2 >NWUGCqH5zz +?[߅dXpy-K_mx~4i`,7LKbEzU4TaX=πo!ڟ5fnӊ)Μ九La!k%|)i^:ǘo+Ň6Sc#j(͎x QKHuٜ+lV$gVI}#Di!/TPfL xG[ҤpsJ=I++2?UuA-kD2W ^ܥk$#xC4y=8RU!7Gbh}؈>768+R i "xWN$ZLʣ?(θ!VS%8' $Ϛ/Eq\^006m&r>[na4 тzsJ"U!F x5NE~Dm 3y횴7E 797ŹՅ7`~ؼB';UQB"п#ofkDَ`Y`q7cnO l-aqS8FK2Chc,˵ [ନir1Ʒ:{ΣͪTeˌ;m[2ziHV|{; *K(I ՅAOYdhOW<;ZD4Pՠ.O=h*sXbP,gL*%G #asG*Tb] '3-d&g j4%?3?>6yؖn)Ok>t\H+X&p<ڴ}h@,ysٳwLotz[OpPY}I6*ϥTp9?nj'B*iB+UY3R> Kn|9z\v<+N'6 Kanio ٰV6'C]عL!nj@U#c's_,p %lƉfk\IGTS,oдfʀT;E(&Bb/Ƴjf&h-tV`F+2,p|!C&ɔ^&087YBG˒i?k<W5ԥ?R.P&6Gv= :?aA^+Tܵ`"* B`L]irWܥ#7b ~PSӺ J/}c+o:Pm86뵢[Y>qi: &^L0\q!I:,"utva/B߫#8dF;JS_)l:n5jN& }7$d\W)3(AT7Xcɑ`NY}U Ah=͓xtg3 1Ӛ N+"?nAna*y-+džbw/n_ٔʬV u-/9eO?q!Jc|wgr؀)SCd. Uc'lyf`<_;æ Kr(qޜE6$ȦV*N6H1I5B|F7%DzCE״onPv1w#~润b0?˜/rh](? K37]D CȊwyH(df= 淬}3H8.Ĵ1,?ٛq2bvtzILL(:_vФtOT!èP<ӭmMi &,%||jPJ82[[}d22ReJ^u:jP!3GmQhb:]zH{Ϋ9Q0NdE׿}%XN6٨qxoBGw`%v6,} 8VUE~.DtEŌDaGo8Ƈb(KMR1*kS'k1u+v(9Wݛ>%k.+˓\{2&Fh '~ĎlyK(>!HjZ\iV$b엵~sj6w7~⢹wbTnoOR N&mM_B}T qv$d@ڛ] ~eV ߬v?IffdI+YtZz kx9aƆAƬe@t Jg̎@`zJlm*\:R?8qW_uni @J|1LqV> /~Ң^u.Rr̒-G UZr]E҃;v{EFP.*c6^P)7)?-㮈S}u!hExx-wzH"*yrs%V@ٰ̦q%j{Ľ4#[(䘹OVk$}D2$1>6cN{A ,٥+#ޚޞ ]Sϣ}U=]f;]u9 ' l;^|rtGNV7eD+LIDV%ZwZ;%rb+%9߰3W^^j蹵U^dB6nd7rݤ0_c,a2= t!]RBsAk8˽{fys[wB}7N+ 2O$4olˍJL :%_uW_O&!]SQRV-O\/tM9EN,Ir J)eZx,g%Ml(.}F!軂 -p.O+1bp u~ pwǍ"Czٮs+ ˦ *hڡbQ7;|#?fH3/Kդ&=e6}FrZe:Gް𹦢LH79eMtN*v y(w27c?[Tp~p{'k w7NHCKXI}%, :2+&$cQqt> Nkh-!sN^3 d4Wj\ꋕJ[k g-'Nozc*'vrO$}_oPZc|`Lf5*B)9#ûŠ_~+R#:ohfkpv Fn s_Iq!9ѕF ("UěyƗ Dzt>~yP놔4jD{rJQ8kUފVl}̸,|N~`ڊ2J퇹]S-d#hif^sa?-K/ L XqT悴"-7/ S%H쁸{x]F;Q)>&cǭ,F@媣&(##=eȇ'Khq$9sS+)L2@l% }O4eO萀I.9!ޠ{ ?f$bR#jz(Bd Sf@#iq[%G<# ^=y;% ׂ9c3|[gFd+T^Lcy %³m m{ N \`10mzV́0f:P.iA,͎TPg^#Uȥs M,J>BdQ18GKTNSUZZs@AV]809EqJK8(G'?o㘝__Fi"$Oc:ݣAÂA_rsn2`v;Zh\LP)ˆŢ$~3>,l&`ra PBeB m)2\5KP|idl{ZWĔ6ӻ_@~a_v$o=FYrtrxebo@@3] Mzi:4XP5Ly< juU@ ڎ5 ^%͖:f=}F zUBN 1B@@~4&76TX<Ӳ3{*WS'r9#VMbX~8T7`SbmZdy-00>WkxD4l8Q-s?xj[^2y:;bS'Ln_n=oym֬YD6'E_GNжjr`HwIGJEU8!DOj]kKl MeXLT٨C2rE u)GPgUx9& jLNejPYЎLHjٽ0tt8}pt.z+)br CCXX$  Ę:4mJԾ=YIWXr+$Od d\uMD63PkPkʰllep.P"{(ٵ! ]Hu.=xR¸[T^)zK, IdJQy5)Ws&\<9G ҧƸ, Hp vYxY;ų c,;dA]H]7ֳݹ9~~ɯDnU4;+ p]lmڛ;|ch/枭 Rw)R-8c`2 !i<NnzؑRG\LzFK"?_E:)-xD ;$Yy!N#W֜X墐S RySq 퇠=Զsd'?@1 r$Ҕ+#fWuIB&u!/^# Kph|.8-k}ԋ2[ 7QZnF$l\c#Lr_o"t>kPM59XӡJ-m?+S=x}}kK;dh6x9|}\Ԃ lpyR8]i 8]+4˨BVD"T?d}XkQvb01QQ!  }kӡjOή;] AYұ!f}gۆerlLDY!(OFK {WZ^Nn$KW*әtƉy"@U`݈"Xu( {X~^Ov2G =M$rz㊆h0 #cP)YYfM*z 4!Z:@!ObK͂GkBD(QMqk,ł2[46%P#McKf(t(Q1/X3V>(R3g9<(޽ZD`HР)?S3r&MŰԞ2.( ?͘]J3C (4eC{.3آq;,<pݚp:jӨkI m/V=]1<5pnxHa@y\p$oKךy`a6{PM1;V][@ U0oOܟX5`[$RL4@@ y[gFq20 1Ig&.B#|ghy,P6H'?A}0[;:=|Ft.4*z䍍D*MkV#sQ ~6Ȗ>ðhU>obh|czw!Oй-"H[vfݬ hm i !&azG؜ >8A1Xst钚(>7Ʈ"F'-e<3Jy6 GlU8> :7z0D12l3';^ؙ動ۦtKG²-|R͓Q]bqnr׺XetlHքJ2Ѻ{u |e[y %ʩc N\[5tA%$+ht:4i1k _Ļ&UT yo4d%/4!`S?#M#~wpH9 X^Gk:@ 0q*,>L}aNQn6UI(3Wiy 0M( 5(tncEc?t,PW03"ne/Z|z皢.*<т[obz->J͏S)$`D}C!L!AujN#bTzoSxҫ >{h%B-?@ZW;n~X1*O;4uw=*7N"FD;]V@nsʙ.Kӓ=#MEp2GIշWKy~jO#pP9[ᄯ)ZW"Ίz#A*R#~4%5#w'GlQefg9,j"Dl_vkZcP|v?-s]Fɓ+:: t]^wӖ]n/ F)!2,I;Zę潏trj &%zi}tํE-S4hyW}(zj ZV&%,y0X}_lP@%Skjr*goLr.)|Fas K2:6gԖ HoלsS j̈́Qdh$KVTމ`tn%u(!g!Icm'ⰬJu&FTH17v廝"Ő#Ra5J uJ{3q D0i*ѳ5~:ݥ+wQ 6 \9S L Ef~[|~ ȍԒux$UNJiIWVZPan}vr䬗.EN1C#/%) I Ċ[x}1xk(%n n4{ws!s(^p%Yhub2V,駂]@֏ي78;Lˤ}QA J0\;ĔOrO|";8st昉BEF%\^^t7Ιf S >~;/"wMuFxQ8(|u[TT3ʷҁO'ǿ1N#6oWΤRp|$#YƖ΍0^fpq_Seɘ~[n*\s j a0ar'@9XL/=DnYFj|] _~خ)\U[m_ L3i8{IikUv2GȔPa*ސfD8vN]Sy!IcuY1G4sR ݥ@n0VgT^Y몦BJ;}(u־-&wXzjY/HuNp7H€,y|Dl^3 `kxT]EN0=¶ yOsCNzQ3W/nhM mt߬>#dg2~62CXhW%͎L:vͩ= 5xvM*{ë !ypbqC#NR&/qۓܤ݆k$<LPK_:Gkmּ_T2ev6Gf 1$pu,Z2ɽ/) XItlqFS"r'GW\84A T_=ٜ;{?u1\R @jyF][A1)vMwJt7sB ҆TSh4cU<ɪh{! Z.EO لNL}: gIQUm'28;%% t.sU轢w՘Kf콻e>A9x)(X׼‘&䤇7]-35h,[e$E3_MgRtbtyJʷ_XNƔez_3Ǐ@! [TQv#(t.ߗ<vSSX$D~z&9#u]F0M #ݔz9eգI[{fFNvQ E`0}Ax%I@ˌZP^IE-/f!a#5*'my:r¾r9Kid묔+rurEoLzt_:)up-ӁW+9=Ev"iDGDG=*(T_zQ&.Ԃ9-?iRD^ec~-nw 'ELBM[l)nfr/b/똄O "xDnH %yJq k34mD% vVBS@O U= nd[lCv4ldp&2 $ۢF]D*⪈2 Sʱ`;)L>bbWF'Xt=ԋqsqX% } A5?iY pfLe/p)V #Q_8fpySW$6ֲ/ 2IWcM3V&dzHcοpo?b@:4؁=vaMr6E |\ըΣ;Lc*iHӣl~U!9)')siv~˹>̋'TP휵 v8j jD2?Le0ؽ"AUw3%4Mj E Flaotc6S{PPq^ /Cȓc' N 2۝pNXQa*yb•w9݅1fRetMl9'ƂJeK@.`([pbr"e\8(Uoj@ElAD""AClbp(WEu+EDdUK( YNj2djVeP\!/cC NFG2xuK ~b>k eŘyc+l 1[|ޣf{}<:1$ɥ殌=[e 1($,),A[N0C# Bw$*@ϗ&eڑ ?3/$/6lbI>~..* g57(Z<"VM# h7H#jߖA=|++̷t|qg|Y-lpjq*_QTL RKEYR6 C$L3ۈP,R54=Éoxbf,nd)M Ey%ntJ ^^a[_.*ձ!Csi~ )Ӓ۬mK=)zNuB,iI`N̏&Ͽ xpG)py*_MTp@ Їk'‘A*MRO Ev9!}iWa*W-xV8B~HͶtSu{^1z^r x~3 2OJRh7h悍 *܎ iQCFDb; |FCuVT D64yD}dw Qsu WK=(G[(|rF4~CfNQl3Ue `Uz ;|zJ\ڞ!F$L Gn8*BwfeѠLD. V\"n:d6MӚyI{K+A{fM_,"xt^2;/{CqK$u?D'aGqmt`-3Ʈ -b<@n<$|H}M+Vc(q5'a, &geC&:y2D0i"~tϵ9XD!!٢(S-e^CVB1EKq.4aNlЦsk\7~qMQJ;.aQ;X/r;`ێ\ю |QkQ3oҀoاa$:>>݃Qqw0!(PRW6_"7Z̓+]jeN5D:XTȦ{*r.iJ̣y)+:&t \bLu T%ks!=:/f!, ~g "1M}vX=ALH$90f6冮ʃ"a.kűq+M|-1 ;i;ѧQ law"tq0Ʉc@p9Зn8+Slg+ihݗu.qd VzxAitQZdjWq<} m,q -Iv^ NօFrtprcq=fJL]h;߇!C%~UI+d"&w^]##18 ,pzIXYh^3fϕ)b{9;F#=/`s3fۣ֎D:%3edH4L(#:,U;EO1;oZ$[M _`4d8rV4-0ia /Y"瘴Ś|xRoSh 渋]f/iu4JY"v&$e61rF񗞭w)T,wkQl@▐Hb öGp/J& HS]PR녂KԛÂ/+_P/.t?8 T:LؘYe 0[Wِ ť+ nQ~Ugnd)2 nMuÑ7`SWKER7oBzEu䪫 f\ybbt'˭RL0Poɢ5TCD!Y,4bd!$rxjj:I?cm|ސ*kʵEL0!d|`Cz)ڿe/ Un_@mt *: @'4Y9yP\xQuLkg/470ÐF1ssXLnYNeVHacygoz([ayƽy5\/i7"[Qe]iPecvUC fԀo\7xo~ HB'O n!u ` ZwnH0;{L+9%GqlfjD,g{ք'h$RRh 8.^xȻ Byq=D>`^FVT"A*璀RC^]e8ӶZWFӦH+)s2s_/|%Lt3WN2j?Y&v=׭bV=/Oϧ<r.T)|/oU)|6·aj^ߪxY5"Stalq>oꕿ,JgBP Ê05\23^d@BJ+ol-'4kn>\;TE/x|khfƙDđxc@؀Sb3ꎅ3rlI+YQ YS Aq V1'ЃB6:s-85(d=It#lptiOOu#0\F`W ΐ >uv s-ۣ,=0X/ˡOR䍹L=\}wR>E ͓|k&OK FTx_L3q?}K,KL_((;t.u'NDGVGQx'>N8Ŧv@XsLXg<8sE X*6v+"[,Zf*zS/b2=W6l_3H  Hi]]ZP#ӂ+w@yjQj9Iql|| ,/@ރYt#bi2>t)|{\CobL|!CLuvbX0P6dps{ @ͥ4 ~;uՐO:G9s"= xY4z2%EYQx`N3wݢ[$.<+-Ƶ$ϋfo.Bq" 9ɡBF[R Y A8򔚯$O-,% )3'8Z' p!$HiF_(s- vŤQf7pȡET*k>řl[a{F{+*&1;p. E{]2d1wK0iԆ^OEpK[oEcҌ`nsTn(ğ}Ǫ}^V\7!^azG}0Ts֦A wLȪ&B5#+ ,6s_KW͑!թ6҉AXu!!11Wvߛ[V@L]bF(6HϹDEvywY ebkPXI&Ceq,_\I-+|?x35p}fe.B[  XƔs͘[jzLG켮L|} J {Pӳtַo߻*?1l!5>i$SŚCdeƉė.;~[o&4̬HbXy_~(7R3+TpHcOh ā4<9 {HН%ٜa=͠] TO)(v= 3 Iz$-zγ)й:^l+Oep:TQC5k+BGx AD7 1*?* D-[gv $s-Io3B6 'hLA֧uoU CQQFlfa EΓC+i :̟| lySyyH zD0} cE_)˥h3]M醆@NbD4twU߭"/{R(TU^S+vㇳ pmmr%o!+S`w$<]T6|ut4;f%$ÊdXȴiv{ujjEYdkbزX?;LPb+.}indH[㊕c^M6ԇ6TC![ӑXdff;1 U#n$lP+?޼}M3crr;P !Dƅ~v{F:0U?\w҂ zj[D=٦3 h) Ա󬥶$5[;)t ݜQqiEI&Ht'4pu}<ҞVYG=R5?|Ljoci,PbˡReVydK[[lk^amYCma`|^ `w$Hk5\I>NY/go?v8w 儖!8!H_襎"7N"@>b;pufo,T ! .?aXTzw(`u4b4KK@2 KcaW1:<d@ .k $Ǹp>163r7,Brt}*Rmۖ*06KiTỠXx𫜢(1huȅ5/w>TްKBlq=S)ᑓ더/+NZs=8E"C[筷 X*˶ag 粝_ڝypI۷ HF-Xϸ,6 r60yM f؄~ك~Xf=ށUIsIIhF/(7ܷ2M.T̪;H,Bh|r.T\X#ƐDi@hZN|u;P,hf2nѨF֥Y|`uUwds >hdp z>G^\nIkۃ#7=5 ɽN!3\B$_R6唀vqis ~5UI,-6o7Q0̏p7j S16Y-KQ1<ѣ&))f]"yY%`锳IE*&{| 8 -vg_p~lU Wz%y&>MFkIor\<םA%brkv3ܺݖY8 (} :M@>DnMI}8ݱNpZ3鉴'VbD*x(mL{zBOFDJy%0]dN4!D|,].b_쇚D@cF!W)@ճA;jȥgFQ"S=e? 8g Hv``nm2'VH'0ΟBb2WA^wdǷ⪄/1 VgQ?>*A7}7~}6 xf%a& ) <5 r,13f\Ztq`O:" gАLvUqrW .Xp 8,u栺8Vj봇hKH: .pޑ%ys~hCM5bWYG2)?(RV%v}#J×e:%4WVeZmJ, 8 o%z 6%{!%ãg<Ks7$0OGKpn-с|K KKc Ԁ7ު67&bX=/Qny5}Akb#ŚYzpRQSL&poc.^&{٠pIP LGCF¡831}}k%Mzc˪MF& x`bp넋r|/wh#l\xhq*1( .]Rg/5 l^15B)(S.2ՒW=veD av*nM*Z)W 47guT5ːBU3˝pΡKj[E-E)U"7~.mj SWt_7/o/ʍZL+%Ј6.Jz2{d2_4T@BܣWAcGDZ{ {UJ屢QE(,!ܠ!kt hh~it llyKbkN#۾oϚ"3K1J+fS[{>(s3!5A#*ҵEC J6;q{d #x7]7EwZI Ϻ^d0#72hY$ Kp|+ŴPgi)(pw x+!QBgJI8; 9hHǽ ɚ2Ou;q]\5˔66HN^`ex/SA/%hW)rʤltɍ67[ osdɂ<9E PZ?X@FqU_bw)mEbR[z/3FH:u< "ޭ.a7ItB﷞5#d1ƙ;@8c `u,KNTp*EK2$%{vr(P;l/í wjأ&@<' @Gj6MNqJH&؊|pt<9Ji:r&;> t^=Z &jTc`>эUUrY;Lfv $ LY챥>8Aũ_B%pzFM~Zb]/_f(M14""}Fi8 ,됓U(`·Gehɨ~8#8!/+iqV Jћ-Y;r(לBxFiK9,&;X>Sƌ4.43h*ʁJLo5:N S[a*y;U*!GkKٱz$!EDqSkFw;P63T4;iWLciZ'L?}q^;1V zƌs>.HPJ kXth@k -7-蚫v`Tۢ ȃo0CxScFCP^YQ60Wh]Y.gH'JZU_H'8s_B7:4Ja!/'!Y"!(2Jx%X/Pj\hnoQDs3ΘlqyCvHNF1e3R&1Cgjlk!Y1 ZODʡZet_U -lX Ӿ @=ߟ鐪+Rɗӥ.svWs܁]?nznp8S؋ر EXC][95 YY/kgEș#C^$)ڷ Ϝꋀ=q^SJE^q5Ft {%hzt6_߅H]O oj.|^lm렔6ǚDžI殥a0 TV`TPŒe޽[bV%Mv ՞ZZG-/|j+v1bOtqWC]sތk.{ye a!2vSAg'p@o;d5e2'=/.uJC*aI' jY0<];260И%r8\ 7;VxuL4|s!2)GluީQ}LMc~4M.̈1D;.jƮqs߷!X jW;K$|Vo }yBY+_.A8M*m}%;(V_aXm9f胺%gwuo/)\[uqJ._LXخ5PrLR"r гiÑ6c&WX?G:N]$ aȇ79s4}JxtEns8NYa og5o?zqmߘG^Fe`s퟊sn,!R[B)FC %aγ 2`U /$߂8+#9 K-1x9?^A!?d#c/)*歫TY~aԂ|g\ЗtT}fDX7/&%َX2`b`)]0)/./Br+VA {?%gL5eBCjFFS *!-/HHp~?γJBÁ5k_'fF>Il*=lg߅I 4sF؇,m})-4gI=mT"iXxFV[qc}G3rEu_3y7зV<8ςϳ8sor3AbNR`3?IO$ݑ?W!sl݈D*71,-5!Ԡ,ƚo %% !KDK~iLS.X{;]y1 $t f^vˀU:ZIKlM5kOI $nY3 R,?BzIK}bc$ԃkC$4!#/ TcJ)-)\9$c%HT!n[ev*U86 V5:7Đ친h Qa"w{pCg' P9,MPgI|OWdģ)"8%TTG e^klOp?̼#T7'x+Q;ǡlqYrC8Gtd_j!&!NMLT_pI `z`KB]EmTc#?5޷ 3x/J zX'L$g͗ΦG8uL/ k tVuXq9a=ŕ0"`^E5V80O83CRUednaxلdb[*Qew#Ul%zq".Sj*2u&lPf": *V)6SNw%$MܟjTxDؘ5S`@ϑL693?Ֆ[1P n "ǹh/ {{5ETڲL~2h+˫:cv2hBu]ٗb- d)5FgAV]`L `zpqх~#O/CzJIQ"` ];n23Ў!(C)fܭp@pnI pyx}>yě{1/^d]jZtx!U#$T'8kH GKoN3{Nqr=EJ)e. bh#l\vK]3rme=e1΃ @>TM'&2(.ک>T:-̔,G*8s[E#m헁`$#ӲK୽=/?qݮ!KJsQE)6֟w}j:;06~Y78k!P :Z /B 'W*-vm_*E##W_BͪNB+{Xc5 u^BBBĦjwn|IQ0eǴހ䤅o5ͯtZ?KLNOSdu`Ȼx+=.:a9@4~8N+{IBȋMZdJI?f/U1E>؏I fXf22Xq5{dOA2~F^sIFc!a|P6vаR؝1+%&d#|o)l,aJq2m:Oq uoW2R'T;SRXf9(\! `+;xlC>UPԛzAo+F&RXf6;q{bhY-4K&˿~JFKcGS9=_xzsF-Wᄆ fN/I$@fjDy/0Oh.*x;?kT9 M&v+Cl0ҧ]tC7xNL?`: BfPٖgyG=>tm6saτ6Z8jid0vUyqjiٸBkp>5Esϗ8Y9(a3C XZTK;敤waﵖ8j~.2#:1pLlCIiMlU_l_1ĎV1+qCmOʒO >vlDgKL[4S1yz xb`i:hn;Wc~ [̓l;qm~trӷ!Mz3cr~kr-< Z8X7z/D`Dr|btҝu Zor.\~^\Or2y4MPlIM^4Ѥ3meJ[hcfkq*q<^cHrQz2 ƶ)~uG*V C^;|`GʸU {g7dNJX{`ʿ/\P s7z[FT3Zgyڕ^ ý P+Ĩ].^\΂ë G0Z$V8BNRmlt΁;LR<_Xh5=WըtFbaٕ{ ¤Ghqx'3nP@vQ3'=iqP|PKLKpG"%(4ZpHxWM\NWrۙOgx!~i卵 e8jlOPTc2eJO##-y#$#3hCas"w+bD)Y D5YVy^#>Z.|.g C.Teө؞4I cDl˼:*a sQ<dsbk(+%+4?pD3<8X j+H FkcM $" W+Oy;M22k8nNȉY{8hu.'dTVE-*c,3~Ȟ7t@"e S]VΡe 4LZV'H ̌F-p9,VWar%tGL~MQJ~&RgC Iߎհ 2FkYh8!+K("F /xywӄy9g3|U.]T\Y! k(Ea:RQX6/zp.t-Y ua)^U*щ_lABqpoߗ@|סO& "pV2 gYX֮ؗ#q0M~ ثR_-YXK/)"pԲn0@?OwБuFri 8uتיNIN Ȝ08¿SI|%ڍgQ6NĜ(Jq?kcT< W2>{'<,ӮFs)[+XhL* Yu}L` 6818Yw;Ivogu=~ լ1(xn _-c񦕍z2<68M |Z-Ek0-<_Ii~&W+pW$X 2$tvQ__{ mpBH}AƶOtFlQ|P /RӃ<ȟ"'G0%Ss^;s<p Pf'0?N7j1hzU +Xd$z0IďnĿ.e}D/,$_yD6Ŷsc|ZO{be6mX>l9"}:&"j:F`sUHsUDYkAsj i C[ .\$+P,kvZX(\- CE]'2"W u R .I2RAwQtiN&P ēE{Ka2&wz3p7XBű G%o\˜/d.n(N;Wc9 7>`/;] R X;4#lySCy*eJY_7TO1*~^XpQtz66j[R0!iZVyjQ!Ô+ߌ[͝~2YJ(Pc]Qy ĉH+A+62;#^Nۭ>18Qq^MF Տ{9w(%ڄ*`GUWmrAfa(nlpHȎH#wU~i% u@(9_yGp3V"c^@v' 6>aN!b_CKo13¨k9~嗅+*f*31Sչ7'eʖ҂I0; m/QnH ׌,4[lebyUXƫ x!\%TE[|s)@v tl*bx7Zmj\z ugoXrͲ[Ŋ$#htLwaJRkzәp/F㿪֩^<v$52G~%5vtndE63 ý76&k ω)t5&8^n:&^gY#P#dCpIm-"Ȣ3w,C؎woM^PF?ï GpPڃƀo;QKe܌Z׀W#RI_|=gPcM>׆ 2d>g?;Y ;R ߃1{[ }*PZy+`2c΂{MƏ")h!SɅUsyGQ`KA}c@wN9:Aliq: eh^.*iuNr>!B[v%Pѿ܈aVȭwIۊ݈z,|9!YtTfZyH;$Aľ6v&IP$Qlf!?|z-3ƒt@T۝+0-/edgCvf:sZۚ~pcy%p;;D1'9ndW4ō@y{@T1cBƏ#{uz L 6Tz U` !62XmKl⷏ VyEdYx|Ixp)MWf?ruGEI#=i'P;x-<*4ΜiWg08\  L~..J_~ڿy;77V<@5|ARHIG,}Lm8:BE0{J+-;|͵nAR JRSSCզ}߀YQǎ7ՉXɍĥp?EZ>΃d,yHt1 0nA9wޣ3c>+tᖐ)KFVq˳"A\9u 堺ÛD*vh`5Qf렚kFSQN>\l=K-~m֋Բ]&|R&nSZ[u7ӌ&v|XҔa S wyWapn0Urp ħSk}]a>|2y]ԃp(Z++is(6޺}0%OEEo`t7[)P;I3z@kQCc(dwPA4 JqW:3 SY;ܼ 'oP03-U%w';KnS"Hn]z[{A˚m2ޣ4N4egάq+ @~|lhO9$Haq?Jm+Gm4IX! I^Dܴid]^az C%I<: o1|%u ۡibPF[MzwXk [yJ%S8gM&['}MXx3HKKKoLqS6|?-TZ+*p ϳHEC0Б#ٷ4wUruBBE#.V@E$`$J;1οZ6<;TV*:~d(ZDwǠjk!ق748LtղkE<-'i=Ԙg153v瑘UBUuD@ۗ$m7{Q[}~*g͌81gW=DPUߨ5QJL) sx  3.Ljԟ_N:KEEMPOfS'.юU)りط_Em*i6BH5A;XLPw w$sM2}{N²]h"W_Bw#:\)ۡث,ZN)M栻q%7 ޏj/I׉䒅-Tz}ajM.vxBmZu ^M|]FuLpn.AwLR dwwqT]*tF\8q-Lh[saUs?S|we5nlwyRoUMM/T;8-h&c k:"|Uc{O \vM} .Ah0s"1?NQB%}Οh+ĝZ*l7I^UOM@fu$3ioneBR5%|ǮX::b}iϸyۅ_fuGQdwi[`#jO֎(K{2X~pa61]S# WJH~pM0YKZdbQ_j/_βR]dIv/ jd"#6`8jk$Z`fwLoAk*09UCW7Y SV[[@ ӫRI%2$gKmҕTWz@AУR#X&ë?si7' xetlz&NHIS'waEg9pJ8f-h0#,П*ZaZŹg=3K1j")I  b{r^4;M UBPf!bui&zSm+Jp 2ʦEA Y@rq/1yBHncC68u*Ӧk%yݱ|ӗWHxk}i"0:p`QXCh1[].N< Q$=1oU2*B<@fA[B㩩Ze2TʬIO *Vh3H9nU;ycqb͵2n,!Uz97zHBh⁡xgT*d^.~[P~2 z;Gi>$kwxܠ;9te0Oy(CNl 뻷 5hu &t -IfsM?dYMK{SăE!3tB['h噒pPB|>{36ϫ̧]'=y˳\I\B*o]!Ŕ@d( FzUμI>x\9u޲@Vh Kzj0mН80%\//CypECS)CpBayYbléw+[2#]Qj~)dO?5@uOmڝGw %qZay*%╈)eEAp+ݕC")ԙȆQeBlEsy h{AS3'CQp/>ٓj`~=^„hz BD0#\P=m 59d8FҀ\ ,]CaW5B٥8VP8^o.+} b z*0k;{Gnc28Q/L2Y-=0J$:Yq~k95UF!uޣ?q6 OPAcZF2G T1?y1ZRQ <S̟meZb a7[ ]d}UKǶ4F}DYUch[/ vТ]6W|G ̓GDp#OndpÉYZ:4[WFegmy!e{K?zoS (/2I- [61{BnD}h ߮DC+ wd$;04U}0w)C7ce$pHֱCsI{ hjsi o;\A.,Vo-M5odR7dT3qb?`9G6e \2y +. ősF5l E@kS?bd~;S̀ގoU+a YbRfJ eX LoD;>7j!oEvY0 =]L_ϖ<Ǟ* +m)K_\JB%rf0aY"Kx$A%JtF{z-^ eD٨i"i_2r'+ 4G5Yև:D j[O|pа4LGd['}P+G?t\(3A;LAH6J"ꎒb ibqMxDay|3frPxId, m7}v I0菗r,퓔VN7|d/i bf̲/IS\qn:>X3 C`z6 N/E#0N+7!p:1/o-.Bg=lMV+XL1@d%Y\> [0QBL%n\>}GF/@`yZa׀~c}"r,xbf'ɳdٓgqHKg/(Z>'8hUKtYbÛ1(W_l%ft& B^1AFWH5DRXQ8A]JB)I}LTYʉDawcva%Z}Bi-ϏKe{ȭ}8!#e 4yœd#,IFP˭3f9&XkgG'̓g# Cz|v Q, 8YoF | _6W kE+_OyGW䳷*J\ID"dWudfHtg Zr^8Y9f3yk9HPȟ2qW%w)hh:Xr귀_f}ѻmYv|.{#7W|rRFxm,ۧQ7dzɾ%t!9JE1n=jϐE^+hJq(o oٹGKn,lSBswh[Oۛ-rp:~ec n=,\GR0Z M|l"u6>nk`p8Yp7 CBL8e E.𪠮1oXk?f߲)UcCRmj!W1*(,~!Cìq7&r|&-;+Rf AtD8{oOnwD#tWhr-טޡ] ALb5>+1YESЫz60Qt_ S~YmQbsAWHj^(ϳz2Kms6ߙP E*t&Tcz*{{ v9aͲLjZ䀮U hnt( ;v#'R'f;]rBu:ZzvGƨhBOT" _%N'6(=גf2U^h xy"SwSbc;+nPe`1_?q/> pSsbzYxY|Hkk.jhmܾ^>*H_rHieNtUD۪/!2:)ɍ J ^1N=\ hf8O=Q´N/1b%zIѶg=g {3V`-q3} Tr}a+ O̎ Oz2GKf[mWI7 jWh)8YI/"*%T` Ɛ9>s׃~G'2]tcr'&XMtꯈHNIκb|4Tؖ r ø`4-AFeC=!'2b$O/[EaR,`]V6hQʀ^P6˕c(ԐyX1!olm~v>6ĴDʜ1!s7C:KFe\3 ׍".b$ x d"(7IV#A #UI3ԽCBַ43h(5haF9oџk8!zwlP ,: qFe'}L&ft!Su/. A>T+s%8BGPlԒ'Un PD5,ft1 |zU[ eNHVR(`^溡;Anu-qU,D͗J-T΀^1i975H+6ĽN]&_Fu,?ymjV+&.H#QC9.:$`qz5dEOC AX3Ҿ`Z3L/"6qp$ |z͞@痋JW7EgzYǶZ@/1]lr]v+T`39a//j/ !g|1 RG= Ps}Tg,(F3 Bh3t/k/Xcͼu-5@`b-4&_4l䁅*ޤolJ:H>ШW%ӝNguiu;5o1>dK8rj55P5f]/2#bpm~| {FSsV/R{:*%- ,l A]Pk/6}e8L{7G4209_ p75g lŀjItLY1ɐvt(F`;,'LZm9s<Jbh}rG)ZH2eÉj6moZ|FDe䧵#Hzd7 ϸ~lu >!z0bi>aaQHʱqi2-:,@3iT{,i|K-tB%\ыa4Bo;WMFpB=s4SOON} VF6Ҩd=NqK82`'SxE0hZU5!cqzNh=G! (ӮMq6y !.}<or'n6usv3B0p{df(I c05FŔHl7f$?>cvuw0,V#,;scfߍ_S+4i;XHW\mSJb"}3s$ϰͮDc;H((t(Z(5ɍ7k~-sZpdum2Nsep;(.'bR$ xhqϋjmibܘ c)PcH'ޅT42>٣D%#YfrUh0­ 4Pnj1?\{XIj/i `Hgb1ɢ0kXV.q, 5>/CˍPiCF0emue ޻% i"V$ &C^alN;Wϒ;Ӄ1 axL}5@KP h1׺.1,(IWi6ʭ0d D5֝Ζ_`7xhΌ&*g,B8ێDŽUT .<-:tOũ=p )F#F<]z/׆ik^WdGkM[.#ԐUmo?Ĺ){J>4"[;:GlM?ON;r`+H@'BJ*0<*%(RUѴb9LrOYM} -oNǍ't**agMҾ_{* ;cz"hxIJ1I5q38U 0G S.o(}72/tX]G(cl*"`v$ƆGvpr5vphaf;%\(Ðeg^/}2gjMQ*vq>&-9e 㜣Jf:HwJ3#%pYa_"?|Fv%Ƞ2i ߽6ۂw>qtsR޺`Ax Z}&?rg~HoV%EN}|QÁ.Ђ9|E*n2!ʇ.y-7Q2ɶbz2Bb9[!f{]JG:ê-gpbUn}izQH8-&;M4XVGGdYPXt_m'ZM+<%>"r{9ĥdr%ш{Xg "/C۪ ')GrYUJ 7 rXv ܹbh5Ofzd.s&a?c#tw,W2Rޫv:Fi'.M݃?I2k;ӊ~?nx̧M:inbXKO&Yx6f$bj:̖ ~Ռ9dxi!(6qIHkxUlLe]< W[d tG)~D@|ǻ0&̕{s}We?v6[$`evjH@勠wqY8ּŭ{kz4eρsȨd<{I܂cԦGXIp\h_KG?醔댖]u=0X~%uxr38̀-q(  6HkGkSGfӔլdOlQHg 9JLw^7_\ ݬctB9Fjx? +=K $ EU4hVF xj::KK3潵C6&_JE8Y8O=y SFeuz?dùS@%NmJ7Ϧ2-E݀76^ "'mC 5 ?#58]"Cs_˙Ds f#.J;E51@bKj/06:⣠k \ry4fHslFO kPǗHM|Ӯ1;OHu~~Ņ 9}3L`qD'Jdf8iZ?NdmG7fO#sK#BSgﲺ}./$&yh K[}V3, ȹyd_MC.Dž)"Ư1p @Lۧ#()TߏC1kEAPVIJw~7ǝKQ&#",:o5TMcL azg늰2ޜԪ7\^ Hv0zK%WYz:!T9{6~bGYKM(ߋ+£fi !7-ARZ{u#ThC-!m 8%8pv e-e4gvH8t"GgF29]%9N 1?{8 9E&94M3Q"4ΕnS ᥼6GF'O/A+UmY,@U2e|v7'9Rp@LW'8j\`TUt?DO{}K&h6NanXzr,#Sg -%QSaKh^l4B?i<] e|)`!i}ePχ@Z <xƁG朝-SX;aiw5x=ʥ{B\T{y-È.bxiI:~F% l^q}7eI$t`Wb)oѶ EF a7U7I8ڂ‚8m?prxOl_#t }Hu,&C <%f)EBQ~rՇeܕ_*Dvne+4VD\.Ҟ%v`aŇ@n b?3Íi pM2XQmxVNKƮ'tEyqt pW(%3ƾ}&\ D%Nl rb _: >l70m2) X~b%[K+0$wW슻2i1(F= -3u]/H'Mk%ޭr1``cX3I F,IDŽ'wmŀS'fmGL\LBb6qYcs)<LK&?ʄ`Kf]aD# s09'ǎXݪ2 d1㌜wR< Z4zdyESVf<|BG"_Or`y0-Q+8W32꧿+COpC wcҙ r0TPk:+[llJ^,o ,~pMiqiC!*ElMluOw^RQƍ@P5s&n܂Kɐ9KT߬d_&ʐ/UK!O1N#ܰL翣KMqPg48ŬLaNր{IG3ˆtJ0e(%oBQ> ŵ)"Laܕ Wğ둡$iS%mepX'y= ?1/,kOr3.6^CJ5(<SQNq#R5}Q{q Dan^_zD1rl UOd&XvZO+:BtfI=veqwNJjcjnJX TV7Wm&Z/(ta.s`5wϕf.]h{m|%"3IѢ ~`d`3[$W>Tj6yTg^HV/r/2<̊;ۦm}-G/aiMT;|%Gb+[5kSBt:ahK=RMN[hEfV5f4;U[URݳ X#S %6l Rx+  :nX֗ :' zy1g < eYܲ{nÔ'0g^Ě2e#)q6Uϲ[y󉊓=S>~ jpe֩/E[u4nwpݎ<0:oGD=`7t.q& tU./ 5hXwY<ݮ?"_VÞ@1 2s4ua)]z7;?l:1DV$L|9 _RGnַhuxZW3dP $$RHuI~AtCiIA"{-yem N$ܶd`psUYO/75ӏ{%aԂ1fbiZf>\qI4;6)+X5983P__oP]nc_ɿkq?5io.}.Dt0luo܃Wcy` B"A~발,hj;  (fc/d?آ"@7sSz_ƅ%rRqp ѬqkT_d}*Z]ba \WV42d8c|>Aat M4]:ES=` ~H[j%=>q No$4pSĹ{=ĮV.b#R wSmEHIfEv']zdLmLΨp:)_́0MIqHuT5n;afYnnh=p)8s/ 6JuZKB*P{tv1 P /◻0XBXyG\jEHZ9PXej "qWJeQ~ͲܺJOkl7IHFR|ĔikaY^ƞ!+a\ʿypt͏Fp3a^RǤь^p:Byĕҳ>`y`ݱ/1%f[eV*JBzc]H(}|A MPXHez|ynXZs>yDz^7n)A̵.NZF*Pj$c*jmwy(ֲ7bK Y+E[+ ]y`gsDh?l{}`FK/+6xLb_fDe](;kd'Im=u<)Uͫ[lj優CV F;#4c@~THz50\nI1pk& XGN%fOZI1KU̇i' i਽"t윷$PtK.S.toW@FZogLraZw#~p˱qj>}|$N~Iհf]N8x B&Pz 1f࿭PjsH ]E:~Bm6Y?tYZn5e!xc^u%9 mEgkm 6;CC)i61U;u-_ۢh!HK\wFc;ZC!gLmK+SJZaea*]x8LYbm7y@KN*D/*RgK؟Y`~m՜؆`57I(EBtcdڐggp]b[Z|vʹ1D|T8h m]"*Ɍ?²Ez+wz$u_G xn|?5D/Օ~r\$YhW!0Vq.Iblk9Y]3 dWEƯ5%Z}-6(d[ nP _#sӷTӝcB׎KFe!EwodU[BUnpNL23#_-܅OVbJ%v& :?R"?T\oW7Z0qb1 @M3Pud L"iN@jnDcgQ=mŶ% .XN^?b!cDgE5X:nЪ|5yh e*W(QYmt&WΙղo2جtK>gDHw'xSFI MW.$9Ta)K lvD ԉMFk;ЀF{^2A$$_*jO{m*S_j&-Gqv娯˭ߑiܱUi `F!vҞy2푲+=O"tFɍ@KYiC`ڦaߝ%*^n[j ҃b\3R!sgZG#3z@vqpzο-c^Rw^eu6wɬev=BuVS/I͌}ʲ@q] ֥4C yo@Dg6l1e(2_ ,oҌVi y /0ݧ,85؋Vh–ęb/b#$!ϳߔ|L4ȯɨ?0 rKm1 PѶ+3."_$C)ܠQ_lQ/&$`Eqʛ0]S]fy iG]^%ۆ J01_KbAQ\*ݔ`xLk` fCV|D$8!q7;UxD nPAU:~lRPKAti8CHđnS//8|tUi&GdD% .2n4K0?~Sz_ZJ|1N 2X"ʫMBfKol48֬YXk` c?_BP̞E~J h逈l' p=LɁ3p]^|Bъ'֧X/H;x0u5+ u{^kr5 !t)(z@?0&DF9U{&Pu>R>j}l]͓d:J8f]Mi (N/6}5WI]s.CIo8Y]4*W @( p8XL$B[Q4?N#gEhv7շEi:(?~g"˚'ܒ۷Wܺmy'jvUdla^^,Uh7>~KX\̤9ن^w毛~b l׺ < xr_> E-ٍO:EDt%4:"uim_'PbcwĦ 4 5œsO[#X kO!vZFG:9{eUUC֟d.=$ixl9xkD%N^;pPFq [4cX >ʋb6#׿ %g{VC "/!DY${7ײU^2>[^#EZUyW(w4Z+C Q*lNX*YHg, JښKLb9 !Tu' +-,t(hf)3WE=N~Ɩ 'U9n=/廢aaGe ntμy3$+ZFIĒԶ\]hI%mtFU q H_:jL8k,{12yd}ҟ\s/u\sj%p dgS~*76} >xSW;!~(MjOz~6d]3Wݽɩ5I2VJ e[ TK>Q'dB}dJhnl3~C Y񤩀c&e.)/v};Tm>$0_ @c}/58yD1ۆ'_qOƽczb.umm>ҟь˕ SyA`4g -_G #w,V`Xrׄ ЩAYٛzV3$ǡK;Co|o6)2J)TLBUQo`WZ}𠃃y=)n'`DzABiÏ"\l17(Qݼi 'ZGS?}P8ڽ'Ts)[_@:>SxMT/ (hYتeE?p!e JcAUJ>*BDWnqueD|? Ov}`ud>rėzXρ$)@oվ8{'?moq}a.[ 2ՌqeOYYV LDy7gHUΔ[2\NHI$IE>o. 6}$Ɍ3 CUߌTr|عbS;yf6"?zG1[rƪf(SfBO3aQ|7w0b۾gȰQUNʕ YpƔ,ȡV!5qdd /dsbΤ#ɗ9=6*N6wH$CeH[ǣuz08(Lp&.j>PELFOR^u3hdڤ{ɕHtޮJM;>+ǤўpgSC̰_#J!qbX2/'uĹFa[)ha?  _%Ud䝇v!,65D%hU|3A8=FOU†ӍvMinluM)NUWIlpŇ76l!`}0 vPDtrԪaSv؍FZnM? ]QnȨb>ŨEP'jN~Gx'4֋! 1Ǥ@zFt#*&ΏŢ-.=1xROEѴU][[ hI1.-y+r16k(xq6?E\1?m}6%iÓrùV8@&ft>Eb8Vۊ&RNt'Q2g4 enhߚ@I i/L,wbdkC85'F-,r,B+ތ6~"ʔM̷TjŔK܇?@QV xn>kɈ6>i,yw@ " 4xT4}\ˍFD-֩A.o!ÿ蓟OODr#?N.jO/~İ-;Pαp}0tN^x7 ??MI%`ۍd[A HVxYKH8j3z¾d[p&MZZ<jë"6ՍRJ_*Wձ(qu"E}2Tt^(w|>Ś ʣmi5͂%8MD r9JY ^|c=i{&V23xIA@{^B0 jes$dz=z$, }3FE Pxpl*<ZfF@ۄؘ \9b@[j%bW҄uu ]gZ .jRe|$Z}3clOZ{w\nRcnpe3-fz3#s:>bH/·&[ɱYʙ6ΆC\5\@F`4:U^QTNLh&;g7Rj8 B )u9ʹ/x,Bv'#XD"9fK$Ѷ":C bM&1wzc#]{_:K@:7n,1Rs9ޛrOBvK+w:AWm(dBPt)TOd 4Uo(N붏L@Qy ]ơiЂC~#ϑh5tDȶ4,;~MuMux)n}Y~oԱ9V>:A>åh_U/ b#=y>DZ`#p5.h܋`&ifMn+Nx"k&8{(>\UM]V|&,tC6J5z]P*H91,8?MX܀2SS,JaC;'ög0HxOpM8`[@{HӚFR= #놮@U/n{ 3#~"K|=-qHu&J0?MwˮE8}t^Eىa cX6$ҁf(EǥfF~ꯆ OC?xs|q/.K/Zwj5}hM`^/q}/ɸ5-LQ4*$Eg$59Lt6a'^C}ЪH@bW MiZۑA16-2G`x*3OBJi獕=/;~$@%06IzV&ZR M GU,A"_sЋ~tJa,wRBFuZvIm2 BG^m~C=l>-Z1:ӢZ{~l/.H̲闛 #wL$s~ X<4\kdY:ȵ^J7fmC_!Ix!B=š1ih _nfK>@Ck8Ckİzko#NN&@v `%ӆ(oRz!Ά3w&fIfӹ뮾gקQ36%@QA~ ).kϖ%3B"d(לVS+OFg:̀]J5FVb1u> LnSP͎ Vm3O(8HjQɜHjj;iNHO+1@Fˎq4p0,3w!#'܅z "SֵGr1aպEUme8> 5u}u΄)7ybenT@ZԄhfEZ d9A I'kF"vp@9~J)5Sw@';$Aw< c"qlm(į' EE|&j(!;6y ox}?hP;e9m֑#Uvlӿs &ck6i ^]YSX4]U,&KtB,ƃ;(R D9(oa =G3ɦI{ [ KmO-o*Zg W/<a $,"%I#z5R=L<;-S xB0B?2'_^}TLԒFi OE4%ת,wE@6s3  sǧ=ΖɻBV%!vz@zxiG)ltz٨) 6ZR%D#|_MSf*spn`*|9@*NGVQ&\{Fĵ2Ua?` :[Fݼb, V+xw !1^s}h~Z ܴS䷺TG{CWo[ d *oa#rW,oa-9uSzhXOܦw̶<_gqs`14ԥ%]eM0t`opm3NYmmYH$H+n7W'7!mt4.4w`wU_p%w4(mx52PUx WiRR3FAA;/9L>7S9;V'gy3eeR$񠚫!}e ܎m{$]SW?>Tk//[ iR(X:^k'% ,E蘳z_G|P!oe%ylqLue3kd~J{wE& =܉ecjޕI7(q :j+Y3!U*6O/pr /˗75Qfr{陪E\Ծ_Ƃwo ͍7e6$B4ѴQ@S&+iUXM&^ w&*2[YԶ Ձ +†-TʌƱ"P`(.kBP䵺ƶ;7IHA[#RT۴(9#푗ƠzòNuR@!)f:Si=ݒXj:l[q&q9ǧqG,aTc#x_i^l,buDfFp'T/A ) $c9õt,DhxoH. ‭P*oևND@ D!J.ԽmRJpz*meS5}+6lZۨI{Kve?-U(T$Ώ/*pL键Ԝ޺z-) ~B(NSyت^ HZ(췀ni~cq:FUK/.$|[N=gaeK0%HA] fxҵoxf*Ӂ>7[y(a*`e'kv (m-dۚgp]ֿ%@ b:B}>,KF{U*'\mzfa\@OfWl~TDgSw/D3ؗd/s=dܷu'VͲcԳ$֚ uX[~s21`󾏥69EXj4H !!~Řr}A&[}]&||yl(xmA)*ٿS:H{wcFځ3zLVq"q{x.S}J bbRs#̰W ›)IMbPzVgbwm{8rJz; R=u\$!۴hуP܈|ؾ@@jGD炁\\T+:T=D5a(TR$nLk@46nfscƳp@h5judY>ن rfY/FEQI>pd|^\=/W{ |OԝɎPhj(aH5V0yPp|l’ [aDyOoQ܈q=[.RRݭ^ԆME`2rC\Jdr_~o@]' w|{ZrShi2ՊكD1 ĵO;^.,g]Mr٧Hw(O7vrv&7XcV+ɸC<I8GHȻ2(nDIgF=tS+Jn!9 %f6[xW/¢gLcw %'iS胱Bod})7rРSowir؆ 1W>E͉ Q%W 5_\~CB?E9Vm-ɞ 5BDUnUF#vt)5oeB+Su7Ac k|T l#[w OwγIo>! LlZ,+Gn]/6V?I!f%'㿸WyI Z 4 m| Ü=Ͷ^)oJW[T .\f_A_.'q5c-L&_@QP,R4Lggn5>~3~ȧ%c  6$H@NmF4ױdT;kZJ}Y-@y|]Ľp_SEj9 i1W7v$#zdu\Bz$jAKF?ۛ%XAKv]I3O?(3cQ@5ݢlC:a!1=NA c,dj*/x:8 cr40@~5 RAXi 21FVw+-A2<Q)Cu6K鮢t^1(Z{rQL_ыgJ\}_7zfuվ&7):WG4_##du v+lw#/kZ-Ȑlx8Z[ڱ3'sj=r~J]"j-z_,i !#4W KE65u,32>/µGв(|l!c seס gr6͸6$Rm,v`%2u<eRCbh_:0V'ύ9*sp~kk¯p9$"ڹK?:ă@9 O .hᔄ.Y#]Yru\#5q-C1pO$vTLO^Ɂ)';!pzBq!gL~xn^҉ l\JVmOpVq/48Zc)/XT#SeVHv`G_uȌz[CCR9i2X/m}4O1! Ho2i!* P `ZKBxY|-,9 |n)=^(d^Q k|_c uH4P+Ρ9>;"kL*D(=0EdƃVB'յ? E~3S*^VD^>c2jv//TnV5=ի>)Ӎ<紏ȧN QB8R뼞%!՞&kQ~c ۣ`#cw-]ǹ\z ˣ m\*VVmP>ĉfc0$KW[CЭ<[?/⺃μ*<"VЍ'O-|QFƧI-c7O5/oɟl Usj@W<r&w‘TQc8*ɟ~u?aU*_.|ӢA,A!Oy"Gy۰jtm9~;W"Aw: A?kqa,,c4[N?Cvrb KeX9DYs~U:dI;/i֍<~yt\Ɂo pYD0CC57=lWj]M,k4%c/rS%Ē2̃.ɸQgn?,HjmZnNi'\\(/& QI3kGEI m.A"Sg(҃P_`-d_xf}uAR"|-h>/@Aljgi2؄Ş}f3jjwu^X% azGȊٯ싙0pm6-cDچsvZFN ģA,Zi.2~[ ZGk4ɳj {"@j>ǖ 67Acļ.9<:ē^;;%,HT'.ۓ)I[:Z5Q>Űa7l θ%G.lQa`JOSVAUoL=@nOKZRCf}s۲sz\05 *m2b7 g8vaLz-) 73{]nlPT,4|jţNMfO?8 ƘE甒7? sʵt aitJt |DKwXSɚU#MҼ/]ύI$t-lBui`EjoMGZ%uuxM 5ĐX47lh6F'j9JlQ.ke@FOGa. JθU2}xuFQE"(sN{L)7Y>$ձ :;~@~+M "W1? u*Zd,`,t?UFEHCsaCI4ߩz禦#|H)$szM*ZY)Z8z.K$n #vTb+BݤoPVMNib!@Ag/LmY>GB,IA{Fv|m&xܸVYYKAIt4C0]Ft  st9odniΤB(X/]m B{Q:sU1)ۃ)BG}nSyG uնRI4dQfQ!U ^*Nj]Y*~R\@\JZ_/@̓V.肯/KJwme__ SK3l[k`4]uhK~^ucRO6n'GDmߒIƳ}tcM}>;G4Ig h<( "DV3̂,Xy{қqbwlԺi_޷CThe\{sq58GAĤ/|;;1M^L[zW, %_0f#dF} z>KB]iː.;y$J6C͙^m;)v -}%{b(QKOVP.~nxȔ˂7ozxf(Ni1/%LYNxBd$xArlMWl2Dm{>/6irˮ+ 'D*79A|#/ܾ YV;BI$ +wLB=08TW)@v9CJ?zg(HMQ1yۺSuHb\R3~Uvi '6ci'&J5W^S*"b#-T t0^ {PqP\vA z^%R?kyaLݢ:FRus9X0rϾ-BrY G"5C'(]]{Y+ﰅ 6CP^s5}IG ,x#J^qAoX?4q Qw=m-e! 1=NZE͓7yvR i8wHCϪ=6uX2qF%nolPŝ9+f3/'(jzP"K HFaSYK#0a۔DQ 06#xw.7P}K|]~]#wŖ}'7è(([ٌ:.)T ۬30lnU3\}.p{88@[{]GčNꀄsPܾKw ؉xa]#x9O2l:I?,r^kL+sٟ S.$NjBȋӤ#iiuR:ҍFv+s֩ $`^9~*h]l6܅5^=F3r)0^O.(3GQ'bĨr< !X'(dg5d2bh9|Bۯ>n*ԚG:^~U.Ftkf 3,_v{L?Ԉ2AEJB,3&gz]4 WBc6GM︜eލH}bm9E5_33r+>__$tN q6k+{Pڈ7=Tben>fFH$Q KFUN37Y&oc^$fT)iR۰F<ח{'i(XRS1BrˌguBTk`n´:b [e;G^rd`9rE`yT>(M6 \yەǒC/$\7bhĽԇ:{|mTP5F?ꏔv̞i]u]uGVH+2ptӓP޲ceViFHVض/#H\b@5o 1a[UZt1U.c7B~K?_d} U`_Waٍd<>IM\HRS#UF|P(t{|eX5-k2M"ci{6X`/[Emi3:zЂ6zٯ%qٯ%tDۏ"܌Ի$ͮXuJK6F%E! k6R~,+\wKfBGŏF焏f#_GTL|HG+Y56M n+6.i$,юkG^RaTrC . OCG%n qR.4]-J;ꐩ#\ʤi{A(+̒a$!*\$z\:W2('XT`8aȐ*$^*z335)6dT/?m6~[+ܘk@*uYS;BSszbI]d0$>S{Nz.TZIm92ܼ$eKb{9plN4\ Awû|~Z+9Feѯ +@5]zX*_` d}v{rtO}*YS#+۟ף^0錅xkg]5H nbt?wg0Q.2KRlq d-`N B KqDiQk[Qǟ!`C q 3N+&{筟9Mqԏ n:_ ߟ3E(wx/hEZn!A˘GP zoum+7,C1*&F(5M'*TX՘1l"GFd>柫h+*o~d4*W8kîiTOن0v|c>G:*[eӟdjl~@@WL X'dY7[D5m}X)\Zo`>egT:ӋJ{/xaKZ3 悂)gg#55,8̥eMzĐXs 񩜿 L̯S2N$-yEiwS0sB8#)²% eʡrɅ( 6ˇ@ckeԻCډp?y.ָu-=ޥwTi@?fzz`GC[2YY-/;A1P*E46h36͌"i X{({!\? z9ĭ*bR^aX Y]40 `˛دF۹eUܗ^xv2PҵuD@7 e&>DjK4x͆m0,Lcz4FĹ uX}M O-|b JԧjrK! r/4RVO`$LiePV80+Hw>QNrVϡ[ONlB!R/˫PL+RFC#2 6=7כA-4++ۛ ݜtƊ)sY;ŠS\ ^fE&3t6kkж$8$үԖ<(.I1钷O]B^Mb+RA|\{}|G'O3`Xr2mUl4xCnvع&ir/D>Qй^v[~D }4JM^X\:i[ecO$ҟ{?4$A) _U -4v5sbO ~< fp #KLbP vMv}̬\~@Sdw*yZT@;E8F'NDuyT|3wi\S߿28q]0-lD cލ][RuB$rfަҗ]~L/˓Bk{Hv+HSBfR̛99jhN~~bdi Ri(XO,-k_ )4 =/x}]qEX9"(WٔkO";i4E?g?.~&q_N9#o="xOAީu+AZ}v("ض8%PVH8Yx#B{!y]? bK|$/a=H xf8`"Z PHOB );d DPW[UV M0((Hޚ^ .^zu%]WK⢨Z,wgȷr2,O=- jXˡr0%8? wYJ'; m+ͤ#>@2\~'0ybQj(0DBT~O#Xs t/֣I%rļ96=~̮s\o/Άf65Ah0#6jހyXk72pᯡo!U`i_S,Ջu:JTJ e}8a࠻~p+[ ,4pY^ujϪNfƊJ Ⱦ~I0ҁ1$R'$kCQ}fk "n_ީN D< ]szpe DIGώAVPeP.=Ԏ7 m;1TFe[D4Jr -&@~#Hh>]WB:qdg.>vQSifB7^ř'B{Ŕ Ew6y,IvvvBzHg. eb6!=j-R\?BzL4}J4.Gg5gfq&r;Z'Dq]αBeF [盭W7L赤 y[՘ x5l"o xY #.UϢA[3^fU9O֏ mf]2`.V5o!$Wed5MVof|:XʭbtC68|& G!cl4RX$gS7Ӧ0\QE]˾(r.łLχQpwb3&#K}P> ub:Zݱn*!ޖR.,wSn W"SH*v)C쩾'0[ԧ+ӋӡjߎZL>hi@Ht+e\YyNȢvK,O+PΠ\N*DR"BЧl~āg%}ko%A9[֬(ls|"tAD"}r5VQ851^s)a|Guw4r;ϱMoӡy ,̞i4 WH/6Q؈,K.qՈYSv aoR?/Et՟ 6 ͤ0LIY9+7>_Ca"lZUt`l =`j9;KD^F8 tBjmŜJqPB2H\Q;)1\\RNyas~:Mbslm,;0=<# Xj6t$(f:z %4 ,~Pd)w gލEM%ND$cJM|E{~$N&rzj qӉvxmeX 4-;bq<Ϧm&!AZrlò8U\(O!X M26Z4dHazSTѿ>;4lD`l)DH2}2YR;ki|7}q6Hw鞠F*D_8f}6F[/p9F5R_$TcxgH=-ޫA,^~}STuc ڠ{hӗeTgg4s=߼KmEQl)j( 5vfC=)νnI+l? j?]Ɔp5=LfY|׻MJY,9IўMQ\|N滾nMhdHcJr]y+U̡ɽm+I'6h~9'bD1%H]RiǘWH1t MZ '97 rQ?q($0C#\ ~)#3:G1wR L%^=~>(yx@7r_CrT渄^AX;^'GB((ku@hg***gmX]v حE7>BU 72p;g4A)ʸ$^$kVQ-ۗU}/ʒbsWj'BdXrSdٿwc~ZB$ &9[PKHFj-3guC &*vF%Aסv ?sm*9rv0r׭bwT2oܗCxMHiұ|g{DEXj:O)iumx^? /p6lI"(r=z4%؎H8ʌ9㮵ʕ΂ 46Ge.NV.>A.N vEsN0>`O4)՞d]ИSmQKzg|b$=!I*olr߹^_eL(t{mTՓc4iQ^_DGiWJX 5>qͯBާE* ~h:Kjぐ7'R&y*¦c,9-c36%:BZ% Ex9JόM-ȶ eAx1AtJӿrԑ_dUjMMjxHO"_,Li^[)a&Mc"GtyլxuR5DqcsocQ?gʕx#.JuSyc?;3 ᙀ.Oc|4 LHºGj_SY`gɻxlaԾ]jcdz4[FmEBw% TeϞ\!!bl 7Ԡ}RtTΙ~Ŕ~+iE+z|9W?xT >@gpNm#)T.sQ!e\DcU;'p3Qyܪ=dqǪMI'05%k(~G;Ȱ6@^1xQzŪ~֟}1%_ UF9t/F?='Mp94@J?pK\+ o qHjOǴu\KF8M{*&", U;idx}wU8 m=f{kp0)h4\G `6NW DCeݐ+/cPsR "H//I#-F2 _mnF5ؗ4cJcm?u͚ S-Qi3෎~ڦZRpQ$QVVPE!E X`># PA<h4'}"8.80^w6ޣ1YHE f]@gPCƂk:YD> 3}2ɫh òILnb9 ROg0,S9=(Y+fmD^ c R0tmhTν6ou8Hq!H س˸ocT'>6r*ӳb=z{ٵH UXlٖKhf|>isi'>{pv1+2s }0Hj1,toZ#X)-3OB`X/-5~=cT9sd QU6dټVܱև5F4rhiӑ9̠b`;y ?{0ͽ\^#ш1.A( ]6Des2s~;߈aAKj 9nԃocT Y̽)hI~CNw S!5\!/Z@zbG(drRqU{Fҷ 9@"k.B/ tZ_ Լkx|:_:j7 )$AD[o4Z>oOZɦJ7kkrW9 |EҤf1kLu txogW׭WpO@ZcG-)vZ&JƎcWc!@H5OA-P$I%Ό^kUϦb@uMLoZ_06}Ï⃘q1% hN $(}uC` ږĴWq&b}a?<>jk]u%9ۿG/1cJu%M{+Kг$,L\t:='9J劈tJ,BY89NbϱfїuL"z歬+tVq{ U236)OQqy昰ed.|4{i}c4zIceKo(p"22 \"} 9؈@`.br)UHƤH'd Vrw"%u/b NraT#R wcNږOM9< W`E3YEK+jw`%̰ 謟+qm_e3aQ1 xbcvwiץLX q^$8|%T4- ȁpJȦsqAf¼D;<z®88USMLdk+g^e{Sf'Y>Z6p#bNQfZ}' jfR`Y4#N> '?͎eK[İ M/S@AqԆjn7;?~MI0ˊWMq6? 7?3EHɊ>yx=at3RLIQ%ǜd"ds٦+Í̶8bϳA kvL{IQmYNj4yHE{}RIS5>h+50|h'+* $CPUT8EPvS ,ɘCn?|"#W{1h`aE]] ~@Y4E=curTMXP}WJ^;Gz{) ݊ \|,e(8v70AW!?҈GКYXTΖR9ڀYa\a裞JfvH?4-ݥ1B>{R*mFcGޏ'e +`0Á#YBb 4/I}Ur-].[Bi|3^8v? |I)hs`t_M7a!ha? -}1c vXT7p"x!0x?00]hQ2B!,0_p) 6Xi!I1!N0a%= @c'98L=4k{`av | %Qr`|](㽗K2G.O|^TM oc5HtV䩆m3gaEH0k W0zS4Z[Ń)TPefB i *ryW(Io#myY$ v.I\6,OוZr7+9-fRh}O_]Q즌&XltR- /]FL!č &PQ''4Ъmb+usΈl&.ID ѩwJ [Aij`OLWyn@6kP,e9^U_sQr ŭxgQ宨*0AEZ-7ˆna\=nqcb6_ q(?ӸT>`.76XYe/ UߛBJ?+&ӇC_ ܩI T+лC1X'/O!t%;ͫc_fj6| ~o}z{2J5KqIOh)}畞D "}'w Ä6u8| 2yk q,&i} 4-E6F+džl6@i>=(u ڼ3._0>zxڍLN{+`Ox U%Ս9J w 0&%mįcg 8~Sj0Qͮ"4g4bD"4Jĵx`NP$>/BJM7Y6pq>cL=r\-5sr3oH2<У6ȫSoEV*lp_PaI#*͠@< $T*y%e>sA/YN;Kt%b3nxa0 CYZ 8=gn^CT,up.Eu^9V*E 4~<T6E󨝂s4È0?!RUhdlfMWXQ洓?QdZb?3h1OMs֧SvI` @6"faVւ`]WcNK9?!~ѭiV cÖ~4LSmF_qUB؊~vC)RV:Rg]?' OjCq;e #Pwt¸dP{,WvAݨ|B)+FqzϪzQTSО#Fy { >v3ln}{d+3(%1)"CƼYO+JPwp|N>ڗ)YeFanr-F ~Xg3(ӳ-)xF$HEK+`h:{ ^ϕ9uXyHwK\8? }hT*wT7fDH1+.x9;rDU#u)#iu"Fc y.{* X{^GX+*FI{i֔ǫT)%=JSYO8q A۾ a؄._fBQ0m &z<6 e"cV5N';1uSTlLVMn*n'HcXot7x8GV46ay ɕlu3yޕI_&{` jx1I6h"XrvݧVH=5޻iwZ06nQf v~|gd{gf L(@&kU2fVrз5'/6t~>rmwhntxkv,HMEݷ'=DIL7\YE V<L}Т8kQl1;E} GᏃz|<64.vv6ȍ@,<|JNAڻoi9j"2Gʋ( _Jjb3oq-{[(eSZ ̈h{W_RN hk-x<|o4Fgs$]]~FAJj0Q輻68c|*v PDnh|5H@k3~UsbK $'/FX4Dw+T@9Y&N*}|_G~Lb4V0zp860Xg7㾧#~ =翾qzg5?\vB:Bq/,gdE?ilk`apwEdx!`y7,wB!Q$'3}g*mb|9܆RM>Ff}i4F$;tfbR)Wҝu`"\:Ch4~(t$N ) R',WHp95d\Ǭmo")b>c4)x`Nq($=N@D?5Fxg45D>B^l7{Rz,YO|Xc9D뺞aC}QI +sT$q(zh,sFmC0# cw(aBhz%4io>fYl2XvWQ}r/SAxn!.cs*;6WC X^ PHYjyS*y7iU.SOʋ?3y%D55CgfWq7z[h[1/iX{P}}Mǥ;.u`y4y\BmnSnPsrDwkF>)G%%ߴ%~@>#؈5)M^ "u%6lu>u70 w<b%~ϳ۲suoTfk =]gʳV y%ZH0\ '5J@INIIzwN^B:gX,فvį]-~HKs6m6M.E*PfqҡW&vIh;xX|_q16&W.[,uI|0nfs,^2D(NtbiB@jzvU u"aZGkh,f8^"eZ_UE  0~"✉,9OlJD5OYT&`x [m_j2:uK]~fn)x6gl:؏(=L}<аۣ\c?53a=;7X1cdkQ]e^/sw-lJ;e GLDX! D_}C.i+ZmATʀi)僣ʼn+>4v8gA@`X3! =Y$^FvdĺA4LjӰ=qIF^C:p*S]S)BXO7*ޙH8O% 8.+wj2վkZwByHHF^3FsUkuK}-EʌZ*6y~i]kԫBxΔ\5㏇p YeRN=XW.+nO] Нhm2'l YVvf {ڂ ִ'`贠Rp'씉-+Ak Q+/Vc'{Q(_o+)HFK|n 8q'O$&d%+o EkczqБ5g*0:iu@uY:5 #zk8Nl7W`c4xb/j:hcȭeL-'sQLXΧ[ܽ}5q` e;REm"^|an/vϨxPTdoA!HTHPB?oiZ]JQO Q~DrT9 )+2X8VRяgF{^:{0S? ׽+gR*΅UYMڛ{x‹hXgEzI00欵-ޠ4Q: m20X^ 86:7M{> D-Z͔Ϙ3,ܡrR°` ە xp%jH;8uE:jVZb(xI|}$ (2ֽ>#98ȡxq7tmipdBVFKTO?9g$|Bi䨮c.ZDh<1u_ k.?ݳ4Ȟ5m7yjdCb@<Z_B/|\מe8-dzzGTF^ez|W19> M@ӓ/%)kilqU,7& ۣpCQRCuÃ4Qۻ-ps`A{aTCfqS&1r|[ظNc>. HJb-k} fvl 9K/>f\DI=A#Z;1} gQ|a}¯Af>3~քZT _%Z%88'Mx;CKOTPq\*|3l;D$"Ѳ_z«NG쑽 X!*p\zFj>|S(VXih k-iTqma"0IrBXDK.PHڭ-t`\z+Vf6P^MyeurdU'fS:]̿5R"+{m/PS҂ʱTPp][RΓ^M[k5|C8\H 3(#J*'ؾ|m"C顂NXeEԡ"i> Sk&z9]YdSQ` CXNpӉ[thv}Cj} =drVSL%d;~u%LWpHXۡr'EsƦSZ`bsHD vu߅~Tn*JS. Vak_)ANT<`"쪲HY~[9ϊ8aW0VyR?u;uea g#NLhOUVN -AF܆j RX(-wᑤ7Z~vKcvO*lsCMTN6$ (_,E-1wvsQ3S^S)YN@ S!^^SIbOݠ[,<˓:.Zfe#_MY+bEniVy,Yp?>uq eg+L5#dDq*6*/SalZlK-mźP 3}PMʅh3Tl&H JfMwD)c8IҜ́VPkQ_&.=95#5}LLZ%اTͲ@n*v߮F, ]9ےq\NBwcːڤkI=UI0yq2i=>.(?dfZ% =J 7z$G歰Cx`h}dg m}/D`XsF!e|g~Ɠ-F`h.L Vnf~Gs.SŒ@2EK("EǾ]jНaMCV*]~$"8@&y͗IemA.TQR?aO3HLEr6)L }Ty .~LSLaAr,iҫa..uÒ]Q.SpKɍ.8cPB6 h9ndH#?trk~m)o_ EDV.^`b Uj>s4_ةpsF.hHZ;<X)ޠBtF]Ils'r҄,qӹ?4 eN]yҥDRuHpq G~mRu bOۓc\,D9w#7!\2ᄍ-SLOoyc44 ;1pNQ#fbʞ-rT3|T# ?df;rE!QRDo@ܖO Kv"1WiŨi?p5Lf[nAjMÖmH=D?l FPaɿA@tFtjlJp:eDCwYJ;Z~>2ӰUuIGk$@1lfxr-xL7)T4$GmȜ#״&dK'M* GQ@UXUv%p ,ڜGKТXgݛZi%#S`ѣ%QJ-\?$tKu? K~0S dZl)95pn9hu@K³pSVxkE3-M瑻mUZ]W"C@DlZmHg(Su#M3R>]$n8`5!3-욝/|l)NַՄѡ?)Ր#k=B'Y9vi_]xw?z8Zi1Nd2"H+aU,f<ә F.G{}A[~ d"Qr*$1qL4~$sLh^ݕE<憊~µÒd_@Be/>m+ź!:;]V:F>KxW.MI#5[Du `jV{Kneusoo' 8vN:kRU)yQ '#T\Lzpd:Z 6`^dj|Ut?SY-KKD>/ZMȸ#f ߰QW)-9<"/U?tŰ6v=(`w[e.^c/Th7w2, 7CW< )NŅ8k\y"~U~3 ]MP(  ~-KSZ{ܫ@4@D%]t5Q(E0Q_*F..PWL dܵSvc*Q7qĹ E5,=(Vt!ߍcU(T Z?KMiRyC(SRݰ4g~$mhyP=F/ƮBgQ/7G Ecڮ.(ޤ^S@7*ړo˿YKD 5pM5-LɍUY$lrf1$lPKI2"A}fĤ $Nw@ypZ BZQ`Ɲ|_Ǝ|n#1wz̝R +AZ0)yuVR%GP"20*$*VZ#iI0Xd`w|,y)n߀ ~f`ꈉ:qJK+^Y@T(z1JypC 94Dڀ졋`ѓlW`'YUv&'`8^RQm}>~ƄdX煗޲MU:w~#<ߐ yQ5{ź#b(U ,䉍 y\C>O s$[yPj53Vt&CbiJ1W3:R뜼oɒݦ6葘*}B+w pnݬgxq,}{uǠu۲$VċCԯ2̈XRKk0GKtNXCJEA Z^>RLfK<ঁV/HIӸ:, `Bgr+W`DD}!ő`H#_`g|)$]C#FZMA7$sE X $1ԦxJO Co.A XNNJIر(T?x}ղ @''|ƪ?oqce"T-X1YlK6Gǐ",]+ߪ *p Ǫ(㘔gώ Kk='_a%]Z.:]cYB~#c!g`|1>Et@eL2 SW=>#|wEJSMv. &4fv98dQ@U^RDɎ*jJR *eKyJ##sNVIɀf-b5Ε.$CO lf)w Ѵ ` (E/0/+]4b z˛jVЌ}qb7s)&65)#DAulmupm$Ţ@ԩ-q0V=ԑa0t+JBH<1`Ü!LMxOē}? =gP-?D%q:OTG=4f̥k^g,A_VNu$-;1B|W_ ȟUJh:tF9l.`k2C~o+A ,LJ#?jRzJl/r* Agd*G$ͯ&Ypƹ;G!~F;$Ns{+(i״hFMzgm3e"}oIo_OV|8|dtBÜx!H@9Ebq7<Ϗ5vB܀P+T#Ja+[U)Iu:Sd&U˓H ~+(ҵe#W"I͵ϭ+˛ \4=1,h0h`7OzC2Oې4έPs)** Nq:ODZJ4ZؚQY[=85"S6&M>B,cSqn<[9 ooAPr}.8X|4M4߷ˣB$%|{-XI7bwZ] qDctT—Mt>#w3 *]ω=b 0<}Qpci3jo^ȝ\H_zú,ϵ0:!7Qn:DЖ#7K;K0և-lt٧2\;ހs_:"P.;-rA> wS䒧Zc Q T%j.ia [\</ s64If15t+!*\;iXCJ#~ʿKk~v[*VB#{@L_ЖJ$sSbL#|bXX[b1Bࠡ(g8_)~vmYiG]^*|]&E+M-Xi~NZ8Z I `k jշ\?*bH4:hjk-Gp%@2uW4@ 3a^/ h;^zJ"|7툷 ^~0#u(&w;(&bo S`_eF)!.B$@ Qu<ǢS t5$ҙɃ@HBԘK!j Ve(Ď wxLzQ yf;;CS^)&VR=mw{ K&~$ ];/ ,Au`NµWI07Xް-T X:X2yZBM4Zg (@v3Qe1wo/6a3@'u;u]$C;O0 uD?=柱}{L޽jGnD|K}=L'Va6ܫo\%-n^v<\ !HK,ma~c9UmlW$bC<ӥ$:=l?#T1<=1 RIܻwe+UaDLRҷw|oVIQ$_Gq!Q5P@T}5ע#}W(|L7q蕙9 ] Ӏ8dkmf#AS'RP4NA1jPbP5%v"Wq4w1Эj{Y;vId8% M *+~!|!}Z[Z i},XT'QDKZb$ e5IJNflkm&6Ak2!t{أƾoG ͆M©u$A'1XH}EqL$ ܨIunZ"o%ZJZu Ng(Yj޽ywKmuNVX`|d r] gx\F8@Z:' qal5&|/#E :"9$36a_*.9s'ߞ* c&=2~j"+arq?J-BkU*y6%pN[!଑2ᨖhB$!-=k9HX f"d3=`^-V-enoI.m؈h Dzվ,Su=|O_B32zL,r6z h঺'6 VctC \JKyX6Ildo/Fox4{F&sl~*`9S{m3MON\aJ$F"pvgSyRabD}|6JԑNнgRm 6Yw$Z B@ -Qnʖ-Hx2ʛZ pus"MbCDI%S(Jv5`$S=͇&T=m<}_!o5E\ɘ ֧,}/q=02zR0Yܙ҂ T2D e1EpX4T3Uq%ŽyZ*D=\F-|z ,>-Pt0_;O79x4(y يϟ}1ьp>-B'eKed&eO>~J&4Xr@<ݭ9sy%>/* Uyy\0DvT}9!An)ˬ9hZEOQ2=ܨ0Ȩ_4@| riF$}vpMe4;4 D{ݥ_WLAYD<-463isˈJXƋNݲ wN$l7ےRT$:rR 8ko1#Z eTΈMn`(kT񰪤ÁX؄xeDp`cHyC::¢t6P/_嫅O]CGGH _##d7ΩP\SJ7ٜ;RHzv9=DMJL|f[N-)w,PM~EC0Bb;K:^2>²~ݣ,A] }vJwT?]ղ-!3dL@',jq*}rIDbH=do=f>+s=84t$M!gQ"~!Ρo*$_eX].k#1y?*Z惭sJljJEsw.FQݧL-:ɗߣmѡIu&p?X "Y,ϵe 1ȅ MHj\e As1= FiG{‘:[5UDapz{6}yjc%I],M Q6ZqGYo@jTTkvEA(d;HEDtEͱ.W>+{(va%4h7Յ>F}6ہL;x0]=:Msi$CL8hBlbsu,Gwƌ3sow fpՏ*i{~,>M4&h_i9|AxҎh<6?CY5ʓTS>/#_/hQf g5+Pɏ_FU7Ї^ԁѧNR f0W)\e {A+8?yy;@/BS>9{ja1Y{{o2)fSzhƯ!5lXyZ-j}Q؈ׅ1cJ -t+Uf<`h5vf|.fop S( }h4ԯ4)*Yۢ5Ɓ$Q$o`N5[>kӤ]uEp}| }4|\ZFPebFF85Ej]|n(؉pv(L>$1# @&!Y_пj4]HRbQh(+vQI{َ餈ҸݛQ\=΁SB^%T:=\a֬Rޗ/e\4'L>|]5{bǤ TRaBeFiOU_T:څ}'X z7 tțw.\zHR\#[ɠYD;1w Xz '[|J~h} l$lG-mM@XKG-XIo'vA,Î잔|#Sbjr84EhHR`ofٽ Mu6qOz3?Cˢ0Ce@d:8SI[c,Xʥ}Ξז.iGbh.y2_44p߯jHXy]=e[%Ҩ&Ŝ| "M^M#hGk0ᬊ_8 _Q fnDB`üV1u=~k35*?hZN:M+X-B5 R-5[ᑫYU6{GUg:S926偋N/co]&xbh{, K"b/j:Ch?'Yi8;PIe0VڝSp 54q,}Hr;sۚ-6_U:YV};3Q\U}]-LֳVdܿT ġ41~]s۫"ëb&k]F<^de۝iPP>m! KN I2 'Pp;!ye4?+ηS|Xe0ilʈ4g(O3E[k/k ƆG:r1ir^jk 5։;7?Qg }+p%Q $$wFbiFѻ`}BI&aQ{Gl0^MR׈%krHT;%'f|N:&☛/@ U@7ۑSz9!{ %o7 brz֍ ZSzvm/&Rݎ洕׿vqͯnB)M!cr69ٙa:SKRm8kMmT<0gސ:~߲_~uktjoR<aJ^:Tr kLDI35w Yr >A>N &#݉%fM hXm֠ }C)XJt+p*,=wF#&/NlI@-#@NJ(M w&usbSN4]jZ9J([="O=}NP;0K/형l;$SYX^GPdH2c[~Sy YB{zY6F+Z rpMK+5 hWAi*̺x)z Ҷp$MN,Sf/Wȩ& 9 |lqMlkF 9%u;䜋=i.&APZK=TS;ײ;pŒ($x/N{ŇRa0L-Kv'^C)%-- !WI[,^x\f`;Btp{p J)QFH82[(Eݷ%EQ=-IڛrvA*Yg;TAޤ 0Sp7|GE(SoS)|^#;Yn`9esз-/o7fASgV?B?SY-_ߡ!ehT얅 -b%ħRaLY 秘rOYlo5M?^5ȷ5j-"aFyMΡlI튗#PKH_*MYrk7 6%} \AsH΂HO:؄C#s 9Ȑ ~,rҜ(`{wSVH9? ktun|qӅ2PΏ˙KbQ}ԃyai6Azc `"y~w>.a1Zw\Z*3 4>mo ^巸}>'P,m^;R~ӸpܺƯ-fhҰp'  J>>C%t/zu+4-QQ@AL)T?|2m'Շ"hOKj JkoKK84@5uq(ߛ>7p qs٭`7SP0ø=wKQ!6J=ldbaߨ0~s\GkٛG珥D΀OИi.81o>&~#e7#?63s no99^ qJ.HsAm< Fsw6ˤAcMn?eq/3')jA/2 ^ lN5ܢ[ duB#A|CJ1msO6䤎n! 5L*ƟDT#GGUP{;_` Hj΃*_~ac)N? m0)*8T!{@VoWRgy7 nj{+0oH僕l(끆8X8fSf鲵6lPj縙=v&YCzFsd0D¸`{'!/+t\eD"9̇j4bbv[$ zV{VkG)~<JNUOCv0Е!Ď^O߆Q=ALݥYKBb 5 ,f_1:(cfYPUHkct!Q_$fhX0V%`[mgEou(9GZƸ' kEem=h$U?ln6ۃbp\{@Sa; hۯ]aPK= 6ŕ& wvG$D&=Ht4%Sim\8CT/Il *Z ٗW9Y(Gh=DgF !e,cKD²#u9ZXXx$3~ᧉ/&P N\"e񬵵Vfp"\o:W(&{${@b [r˩A_@3*cfmkswYJc{m_~pΤtKbʢ~]7zFDIJyzG} \N`A MwEU `ꙦzH:݆o"ȡycOmI0 ¿Όϫtpaά9 7NXP[U` A~g3le[RdS(K jSpDJB UTո:x?]A_G3z @&/Bԛ?;gvKTуkk! .a&ib"Dj-?p->O4=ͼy=Cf?7+X.t~"+ify$x eP4*lt[RaYd#HɅtjR̒ *?Ŀ! e/6>")n7K̮5VQw1 lE)o?Ꞥ9ϴ)X^`#'H!Τy]~1C.?-T! w '@8Xd9V5?-]pl&_q%nG`wj9Ƹ3't$+Rm1t&̙3gc:ږ!3~MPɡ*bU4H҈mT,DǍΩLw2."H,,KD0od:#03̍=83_4[oɽs$:Hr&gM⑽ AXd!"oG^wb?918w>PU@6R)n1ب.wИX~{e}`/,>Fh{3˷C(KA ;S/QuQϟuY Ɋ{a]TCÚQ^k/zKe_(5xT͍T22^vsЋ3&8q~25KimqKګa:UY]ٞ//mj9, ?g 2sB4L~[rVUJANL-0#^8otcY 0cچ-^ A#s:Y6 UoYrLޚD\܇Q7S/ ,ɕ9{+a>?l(2 >Y5n\RG ͥ)Шv9E=H9U3FǏRAUz )y` K$:+ʭH N<]V`'/,fj%j(n { {– ԏ;bMOA0. Cr=׋P=s2%REWƳ{ ]4YC~UH@nyP}'>x`u=OwӕaO4ln{ ~*XV>!GU# fcӵ} CP3/S(7AKa꼱)8lIyM݌@7،uœC[fxA¶cC G?yjR"uTJE֛9RƄ2.7) \-f| k쩐/]ٜV,j)1N>5&z 2-J-C2ϕ^bOh[TGˆyY7_jGo##?a'_`ֻ";6`yES JϤ%لf"LO.$"F\}*lMJDzDab0MK(i+Z 7BP$f~׭ܟv_eY0-tրuu#7է zߥա{3582(,VbCǩ'WC)N6xMQ{-OE}P,BI˰V&7D"rgʂ؞7'wߦOnIkx럻C>8z![S#4_ *ubToS>)3Kv gX㞓ō09 ~1M9ucq-\x)hCN ʥW=DP{ǻZ Ez/},{3 [I+k_蟪5STׁ!Wv38 ]re,k6n@ mUDʣ֖#0+*>DF: L}vm4P+!C]yoJ)_g$0zh坦څY״V ꐽ?qcwdS+3! M-V~2dNw DtzGEZ氙Vf hZV 5]8iCxRDzv蚵_ϛ0v^{Eh8Q:ڨ#IԭLm_d@ɯ =A£-n8(FDzc-U|l[U@u `< nAs_aiFpCAXJ|`+Q`J(|\Jxo/@p KȻ<@$y9bJ)Е"@3}HD,n(.S1p9V[oYۿov/̳~.!1~:ߑN-8t3/'4TjV3[Ȧ+HSq$!9UAfE`wzه Vc=W L1˰ٖQN\9Ɖc^CDBKfVǖ8P+Bx=yŚ=SUFsYݳtlH.-ԌEđ9ocRѴP(XJAvPΛ3tn8h#>Uc 0sy&wu΃OxNcբE&|CGW$q&;pF_B\gyc`%ݒcqO#ޒKi5W=ݬ4)nT;yd*A 9|V: @-R}^1ht]!WMɕ& fPk{Ǥm㪭HP 5gkJi]}G;6S'և;BT2uz=M ea?ֻ4~6ޝ}ٱء4pHUlV,F5X2>afVgLG2VKylG3LLcr,\u`aW> ax:zmhl&?jw˞ bbCl8J66jV'ӵXoɛgom(jW>7>4X玓^#95o'a3=JNfwp铰-gw =:NbڮG0::nӧKᵜ69!l?ްIo& jSIǗK&)d ~g~'['}@M|Icm龸BC,F?U [^G?e(Athԍ5*ɺRu1Ld?\c/>"}M=7 ƱdҀb$Xwsvă}!`iںzMR %qܨ=$\ x>{o$*|mI3/NFc ɥIded?8HъNZM D=J{R0hNz}j٬~jWNcf6b+j񤚯*azː]Y%aD ?!w+ rg7@~c9y >]Fv+qs m~ۚRnj\QѶ,4*"vOoF7Ep:@ VtGg7̼om5@REn@ hf_?XA0O=wrM+v՜fViӮ̵0@EejecK<jHhL2.s(VTH,#_Dvu?Lt E F.OkS[" |/)zϡs3;F >ܑHf( gJg4}Y1:SdB"J T3C }\}Ccٗ|wdSWeq4GfP֭BB/sh&\2ߌ3e0ͽVwC:c{Դ8͚64Jֽm TZ>FP z,I ߦ&@*#ؒr@R8@խ)b6^!(j,a$i1o(R=1j2`;%Ɇ_z2b'tybeS!8BJhj+R,v9rKb(z(@aD| ; o]/0 vis!&_|41gtOeb xK׳$sP&xa˜s]gBPQO-55kgn+ܑ=:bM)40IxFtt8='V˳X.#7@Ei=h1N^)uDKv.]ufLY'E>n4 ħozzmp^hHȸ́ffyD~ &*y7r;&*sSW0+I> z˛o3C4t߼Xzm61hP]^'~jt7a0B'OnX˱?{pqQ^L Nì~ܠuPr@C7a|lsnFI3BbO\C,$Fu(hEpM<։Z}~o+tCL#B*foYy_$+. %R& ʼn;=QoPu!= _P\=lˈkB:WpVF9z_898q{4Hєi gB%S+>.,)l7E-he~ fF4aNH+2{ NNٮx'KYbqNtap3]AB-GkBPuׁ\}X>XK)?Rk45&y. %fc)ci;l[Fѯم-^m,PX$r=(IeMsS1kKn|5e6b`Y}+"nբn""g찉+*uJִGlt{ٔMwLtŦ84]P2Qz 21秤ɀ:~댞e]]0t VNM@@ŹpX,TH|ؕ@SQ(͉L+@Rx:'6ؖph` e`4GFn:iBHT!.V9yX-Ljq4u^|&GJ|b؆Kp9ͧK&gfȝSpӮ`6(5Ha1PM;kցOI:Fտ$6p[k)ZnUB!-13&ov Ai?NiFKp@XTBLxqs/Tt&Mek)l>{Ha12<μ$#0us!hT:o:@\B|[-ϋݍT~RWV<S| v_,^nԶWE+¹2D>uR>y tlE1.TsIZǥ.jE ` +Y /_@6>FwciEAt_,ңChcS$;%>)8_Lw{Q1Ecrt;Ze Я `=ռ.(Q$Jv )'1tJ<=>>(QM/Zyg /PuGAf}@xY.WWz2'[h0~XK՝lIܠN[Џ, 1]/z+kmېl2zK Qh\unZ-3y ޒ(S!i/i(A繎 =V@ݘF+1ŝזX};гt.(F ۭOYgkKŶw#nb u҈^~ZNĿ_RrIr [{KD$@/S̝Y3X\*+%x0cB O$`amhNٺ-4ԷYEy'%6d*F95+y{0vbiYZ |9'fI?Y "m]o16A\n B8FOb?eޙO3LߢoHRl![!g+2qJNVdF<\n.n_J쩃2;l ]&ygM U3jHpq0AjWvan"0tǣ9-jpj(<ӯ֦\҆.99χR54s:_%!1D1+{;ߴ7A`D5Nz>Jxp> ڡ=X˳D2h&E v#1j3`H6 ppIq@##Sڇy{r[cO 0r) XY>ΐOjxɿ ]վr-zS;~#Hu^y1ˑl_4Sbܲ~ P^O F*IB`Ӧ:Ss;hER]"c{l3Q~wvp 9!쾿ͅ;X7ș^0YQ] hNzgQ+ SG ^R]SML6.yE5$)4z !k˭.3,=ڲ(+zeۙϟG=ԸޓeE䰵b}4Ūh`&q?H l7u 1nfP>z4t݃LZ}T! _3fh4/gZᲯWKlu *Yqhv RՅǔA؏uАcsc'->:GS \fV t, mZx{Kw|GS%zYF^G \dZ~Oo/VqDwsRel5DN"N&N% F$YL/>밳8X~f$j@5+2P}31BeC2;wv!N9sw.dws{xnUpt?,R-xR=s? g\ Hq6 [/#T"~dA)t GpE!ot%ү㧈?D4Y L$y ,/3 uąU 70vݩD:T5iJy}D;qE/NjVXβYN򥁓.x+OT9L XD d`_5P&3; v΅$yOCor͘p{8Z'~4$S 9|c99 {X5"o9Ai 4yq/.XwcٹY\k=V@Pmoq{y~^n~z'J ^ X(v9r*2=CpZV/#`Ḯzk=Q~s*#SDXzO$c1"7$W5=s0 [>\ XnX\Z&.hrcdeYHY52}Ӱ6d}> kiײ|*:b +,)H54b2S%d']5teЃ1f,$juUtШd^;[NJ3NX ,x X>[`V' ;9eB23VN،f4+%/A2^ %X_>I"f(;/ +/=/qCM`zv6`,iScc~WK$;ҔOscE;N%Y .f H~s'ˠ(ߪSϥD D?DS neԧ4`C>0QhB+qJ JgfM=KЏ{Y+tׁ9 ӚWq{3⏖}gF8tMN$&3B'h>jZD>cey YgJUV/~`.b}Ӵ,nP⶷x$ ,jWZ/~!dM4]i{ŗIHKnCLp1!Y$I QDe5}Jnǵ6-iI@i źX/.Ϙ gy\AzUF[+8'm!v ZȴQvֻiSP(Ȣ _t?usMdsӊ.1ЗCXQqOF!!&MvfTnXUѨ&8iJ~UΨ"F`k#~}ʔry9f'"w֖g׹|&ɹxŦU@&VrP[ݍKu!~Z:gOw(2?[!"L_8g# -ޒo[Y f@Gq˂۾d?+Կ~=x Ts0^s75!MPʚm(4Q_?~@)Ѥ't1RױwcD)5XikL??,_khQ70%||7({78ێѤQ8>AyPR4d!uv9B d`Mŷp@de wG7 :$7Xg"[p8 (zH1i3ibJa :Mnɻ^RGҦȺۑ^jpbY4i*[߷Ӗ qZq$; 2ZzLHM2E|D TsS=Ą#g$g5#b`ҟRh(L_:'P絁bǚb3B3U˪lGևt;ī7<$-Ȝbo+k9j[\답꿄ȃw@{\ٳ_ڗ$W@x䡆X4׏Y΄pV)T, < P[,;bfY*_FFpZƺ&cb ESkmI>c n%W?{Ge?OFDFOTFN z9ƟŠ>~ۉ%KeDeRH>l sDUya!C)9^·,P5Dji[:N,ڌvq9g}v۔nhXh17g BCҩȃ q)Y쑬01'ٺR4P%&ޣ >?sʋh=P=xχ48-1JCz0=]Q[sIYDl\;:_4~J.~q! 4 Jp#elC;~)ܯ+IT.7dk:O@L)AҊE(gՐK{TGqۑxt;MV;+8Hn/#|p'Zd¬p $3Mė](ЎmեJUS+5Q;Q1왝P.!n/L[xq'ʿ.]ɩbрaW<^l (X؁ߝ4T~sb6_Kq[!4SJBx~I.SedU_ly3.8w?kX0מaefEqgI!*e5xZR2g*e>ڑLg v9"I[dHIif, b| /p^EvJA}Ma;5vB~oQxCw!<*=T U dxi|[N,銏 f}m G 2"p#}슛"xrSzv^"rcf ^޷V^r1 Vw[?gd G@|N_ \خys,N~ĶPo?EET)_8wEGZ{X柜!G_ГI/T,)ff JK{ 8 _ir2 :CK<ҜK@VCST +g 6Fkr I,U#>+[f셸Y!S2=qagu7!j/c"w2#͋?<=jJ?СWxpu7V`y\6Foq⤓;*HS}ςgu®,~&fjl9-{5sj%*\P}DY"=+@]揲buLG3-p边[B<52wqYm4LDvPΨ}|_wtd=q8ai075IqW_y~Ʋ qzq#v8kcUNrǓ Ϧx5Ə/z?!N( Y7iq-/ |=Gh< lgcՃ-帎;bZ:b|\DG9 Į8q+j]#CP~.0/PG`ac&(Op$Cy]pmQSC,QRcl2k9f 'W+\ 6t"Cǁ=?DW-)c`+p)a_6oo9Sp&: 7&j%td zu~^`\Eўbfg2_M!1rv=[wr8h s l0QEiAW8UAVI"/${Ir$x8wrQTYb橇FeX9xp 4ݮP.*}ɡ/7(*OoELgm1逄J 00&Ad]>ֆa%:4]3Pl5+:dT` NqFgoH}jWQ iaA"츣0ligSfG3TnnD(07w@s&&0"ވs9wѽV]MմDa ĕ[Si`{m^pګu]4~k]^o|}T#`_^fkim$ױIQe=;swIc; 9RT ,ܛH+"+U*quNE؁DAIrt9*9O2kpcx1,2,Qh>0=8ĥ|<̑(S(:SK4B/ !(t .J)>4^Rzܨ;j#I3sÍ j|:ϔgsԳ:K+aәniS4t2}]m_Ao;6l<9t$}w:~n&Y<[ZL= O=@q*P4ыm{mi [D+޿ cI>n83U݆ +SʎME1yf1ޠHItXlMsy.G@| gδSNtHPdۤL裥iVj::'iSpQhtEhMH@tx2ō%`Q3`ZkRXE1cCTQY6lDjEJ}aL/&S%+Bv*s[[w_c;mZxggp|6x=+VWr/q6Xh%r.V)fՓP$ԉΐ ItTesm;9vsؠIhTÌ1r.Orw(cnޣ|?k %ڦe/$-,"[zyO1{.A|\_m,1IX[1\GNJ t;&:zV4_q-Tik Q« .f:_rj\:"R ];*iߗRHZef(S<|t|JY`hCAkh|$ ʏH1C"}C0~/j3PCӞsv^YSmN(p2Hݴ{\>{NwcEe?ixKo8k0b6:N]?57EBuDWYE =0+m #Ql7-c?b6tJNհ } kA-fffiTeɴmc3e{J,&dʻ")JzhIhR9U_I$oq$vTݴW7Gn#Gh~' O.C+8"#tڐΏN|.Kk(WkkzD`$h2 /煞7BVmidJ 2_P龺Y= Qlc1qF˹:`V!anP %9%VʤG萕 a]>e/=eBj`c؊So#9]նW#:+zRh;.Q'탢-+9\gzwPQld#ſ1*582qQJ~&!Mt(G4I 3~uTc.\2%oIvF x^pzUCyVgMꨨ/QZBHk LY`)2`3)52;^;$נaV!1W5];)L7 !xe& 4=eFWf ,Q*}=6 E[LKs4-\T>ksc0ә3<܂\?cĭV M"Ӕ¥v Y3xx),@`9 'Z7⁥7f>8^z/$ҔVy؊+gWw-aZjdl??D7̉/6vHAܲӊHa"v: ^A݆KX:zqJД:,9WUC}{(r)2;][yj`:NLDXVз2f,]dK> x܎Xq>piG+U&>qc c<K ,^Y03L]KEEB.؎&tq `r=\5b==%lKWV>HH 0דhp._s@Ÿz0>,PI_}k#4]$MJ ƕ٨˱r!%)0Tׄj^OQ]Qb ${;E 7I4D/Dm{G+/Dwylrl(]8'TgD'l3aL-ƭJľVsޗ=Fo]w͙v4#x*9tlr8GS1JEAKzyNez]^ {ٙmUT#l:r6kvsasWOU<(2S|/$mERkR l-Yؑ1JI7/Ppgl=\^{Gֶ}CHS*?_oUשuT_hqǺi!#x_#7!@W02y-A-z {f2Vȓ g .y !nUIbCG tF'M ukgtm%.="iapvfr6:&j"LVB&jAiܚҕشBO|@tܽD\&EOo|q,u5B{efR0Dޤ(~wnܑVͩk[҈[Opg+/0:t<9D yqŘ8 0߶CV׭m<.˅Õ7MCJ;wԞxWLk }ߛ~ھbmF;Y5:(_*Ԃ;%̯cAF 1rq&)kIK.q;0a(9Ьm[ ƿ2s Vt4}'n_'!^4 F8'U?&m͹ zwA?!zLE +|a&e9stuPJ;sW2db٧YgқҘ4eB 'T@'yإN F5x6967P] w6R3 G :Tuv{t\"Nu`]PnuSgv^ rć6o3,s0^L[>3 sCxN-E$D_x ,kuӛ-E*w57t[[E`3͐|+ï;a;pb1=9~icE?3KZC(h 4#ZSmkrl5 B$++xcreG#πzf:1|NCtt]VMo5c<Fu첮!d~UỷQx9o͊4lP).#&Q\(6p7r)lTRj5N=CNu4 :$ pI|OV`TRѤa THث+I*GF^ϡ K~xNp}\XQG]^2ͬ* h'h{7Gk)4#zB* d|2b `ACDlh;rj;щ8|7nTAxe_"Z1 fOXbnh`A Œ[ZGI܋y̷ANָmϘx v`=l?DZY!c2gTnΧ/z\Il/N-3yHү4z9RuEG[`Mf΀_Z<81S={X[J7)c1m;>Ӂ7o`Pپ?~3޳,PfO 8oRjXm;Kd83|%Gr_.ω2ŌvLߎiѥ6:'LgeI H'IyXpњpcS:q Pq>fQ4xAzߧ`=qD̿ܘwx֏dQHr[~K}Ũ4Vi,kb0EVtcjݦ#NT%GR "\0ocDw= 늪VHyȈ)㷶"gY7j= xV/^;:أ)ogdjy4r栐 =MP Ki4ޛ,2jE[^mҾQ%t~ΗW֘flk, |{#Q4\- U˧# ,<?,=ZuN.u3 ]`!@jYޙG^3U Y+#3mPֹ{8B ۥ:Xh $d * j<]3tÄW(n˯;Èlbasp 9ms{/aȳI^ ;R9-,pDK+ }5$Mjͽ{0k \EޭS43&"tFHճJղzI 6=Yhx:IIP`7#YYƕ0b>?SVKNOL.?"خf|% $V=:C9XM`o}@_=-]zUM'q7{1 Ye7:7lR,1*喪2]R؅a<)o>RLo4GvJSOP,iCgs'6+M1>tZ?Repfr6xfqHT(@4|@nBUW#}\Cc!} yߦ7qVoPs0%p5ùIcH`ަ!=uW޼sr Rqh>J0zMOR!* (e2 Ez*b-rqWH˂2TUh6„LTz0c]_ ' b"zx+C*< /jƠlB/#7]A;OߖX{ӱlQ~y W>uߓX2|?Jʞւ6/3Iߝ޺AށM+&G|zvo{㤾,pŰzwcY=D+_{?qwC,y(3Sy6R}i[+4jE+nr~'h[BR.z}δJ8UJk@i{0ׂ7d'kH87˺ymm3<)4ykQLfyҎJu`S903;I[tZfGD6"U|!3ߙ~x6AS[>?Ć*Ukjmn)sF~?&0l0<F7<y.).O@O#{%}4m nBH#3#ל bplEm'5pX&A¦`SP1_MU~m[Fsay(N~7{B}a-js"-ozJJH>Z;`f*)rm hjc2ҭhA=C!<[f DʈBkTGS)2)bϡ6vIռ=Dz?svHLHMMrF-#"96HPU&3VMNAyq)=vltVm&WU~}.02ccдƬBh:@5DNb( }A06iLwlMzSb;b'Lb6XA4s|zɶ4yxRRz*5ٓa)548G Avi"z?Z$#IUOF\g@%죲'N>L;35H]EI$x:p)U'E%{{-vD{ՍG5BnGZ5vCѐY.܀DCȯoػf 3&WJtDCт쇖{TB,Š-әPNꆵ}WWSbHI;,j F0Lb8.-ʹ ?N? ۚRNYrYƬ'X`6;߄4@ELPe#F!O7"3mV8pT'#!b,rlA+h9zacSxAoʞUy\Y\vnZ}ɮS;0"dG)Z{80=Ȅ,R5|Euیk|0Ywa^LQTv,91kg+],/VE p}ūϢ=%y$)R`(S&0^ҙ,C@By"!{Pqiv` CwM(6Fn~ΏY}fr[xRnkbjl^8" cvf7HΘ5;zjD<ǖԍp3 W"Q_vs LxL~P9\!DɮѣtթTLJ@el?0BhV*1WMu9O;v5 ڱ+F$:6x'q+!F51j-^./)~E-pN>h1Gi3$6U㛝DKg 16ZE~f6swE bCfE1wOmtĞmjFo` ,?j~i}a/.Wt/ 1n0u:qceGV0 :VC:;>u 5mgjAzUto=GIH=8hi&Fߵ3R<|u9]VOxل˫ePiN$@yVK9^2Ң8l4?kII?rXȴ%ɰ @@d(2B LCg kT v&H{{PQ:=]CXwĤFj5F~=o}/ǹ# ir;K}yWb {RifʵyPB3 aڅbCs˱tȲULժoCgޘyބ{RrMU |7DK q6<ᘗp=T-oB&AT+LkzCO'njA4H2R`j .~*UyaN-qnf1W</ =mw,hzAU֌H pW^L\sl &Ar~^b8"VUL7ևOt%OpQ$Wh^+=tjEZn#2糱GR(uC?Ty루T|}uKԒK!:gCǐ{oW#Dm {ұ5N@.%\/bz A\L4y X^VP?0tǘwKxV}V|Ͱ[Gkp(154),PcRʿ3+c/"ԃ_@lo& bYa .\1aN}⚎a`5X?O 8QSchhG5%)W?Bx6՞.6l{UCN[rl>3FcLKu*=s= ՋǓ azEv.g%Z(~=YNN4_ ƙ; :5.~# + #7ܥtUtO`VS(^du&,Z3`Tki Yq| cw-~уhA&jCą鼣Ĕ֑#~ʹϊw"6=?7+|'(^|ALy*LD (~0!ljPwbͳݘw)T6MPBґhS3` R%3_֧챳>ŠyM4'Vd4u:8c_E.+CMy=aZ䡗@4Pen&cù |U\r.r:a&`1L}B)ΒvT%g 8PcI͇G= { b6Ь}ToXZV-^}AeO>ÊZ|=9@X,Ӱ"mxؼP\Wж ( ұwSBDU}\Qvh:մ[ﭥyO:k+O_^"bchГ.j"6\)*4\/o%+}[S Gt BVL kZu{O?ƃLuXnذe[y)Xt%nz➂eY&瓔^d\OqgmWHܼQnv. 85d(;yN7bFr}ܳKdV]"/ |y5AiS8 0oΜW1MQ5`}a<4Bivy#R"{l~&^6lJQvQ'CWX&u%nV]}榢VR^@VBp l %J^U_G`8 ݂'vt f,)֪ up rLU7]; (}Rza*DHbg~6.duEE=#nځ EJo4WWɣ"TDsQY2."q+YyԔ3)/t, U&vr Lldo +g+8SL(FA\ Г_{8&aB"VxD6XV}HYyPoxe`J:kD؈fa,gHs,r$,x8Y>Tp{^==`0W Hӫh&lb, >╆w)]]04VX~gwl?de<9㺊*-EǨdSvŎف.MuGĐو: y>BS FCSiȺ@w ^! @"΄>I}HqfH;1UX^d-2XgiFkYft2MŏEZV&&BǬޫ$UڰhIiNώR^N5 *Q C)V( ;MX]T€v(!чu h ANhu3y̤-|*4㩔th{N}r#Ij,4#}%o¨Ÿ.Ew\#rBuPt-zqXGFlT0ꔎ(+SXRo}=^$q42jhJS/Xmfn$]$/@ ֥8GпoOZΜҷaKTNM)X_TZ!Y?눨'ѥ:_6|ʂA5'fYs/7}υ[`M͵lj 5]c3 Yk?f4w?/ec0wf5鵪0G+u$:D92S&b c 17r:э9 vR|/#. 0@N #!\%L vb(.Uz=Ѡcb,֗MLm B'&tZ=)P̷O\8x(l CB4B8>`D\2=jqZ#JxŸ Ҷz3c$([_}>d o[f2.;0*PW9XH?JF\qo7$kTm{8_٨5q܇TE37o[S7V׹xP;_4^gs (N3Iфqm+YE+n-*L}UFYՎ4ZaPʌ]-xpNdJ$(> rXذAԲ{ڤ+ YVCMa"rr!V|l7Pq L-("U-4 U΍exT;ᬘaCuV8Z`C\Y|:ǝӅg<\ɛ8`rdFvTiCt-CacE im݆̳ 4Ba8Ȳd=w X UQn;m7WRGpVXIЗc) H(QD[R˴,~"XtPjtp2RaNàg@:tbpUeL>LN:5 )M:2">;ġF0#@;n5QO<РAcv}r#Pʯ~O!UHzh[.I9׮<a~wx +QoĒ`ˆY'6joZ\L+rm.J8eGtPu0xSdc:$΃YzO5wO(_Z6t(c RDݻ;FS X'kK9<t{3OKqd"xH(ngx (M%Le,]LiŮMJ#9fa']?֏gcOv+Ftu&3ClF2p+u7^_T"e_Om8foD( b;r`(r@q]ې4idE]2l;ǠR@!Esy뻧vLx/9zb1C')8x1˜hT\λ4?yOYtd~c-607l̐"o:>,%\#8 ([ XT0MBnAB M ;GE^';l@QP~ *Hsx^ĿHB/xnN\? 6~]۸ WcwV^.i N2pnT Gl0 o0b>+ ɩP8rDnsS`loTjkV *Rc5?K,tΎftXR>sZ1byȊSaj&GUh(F_i+_ uVrE6yCuteѭY7I 9q@&s+L*á2{r 2)Ji'u+Jv*ZāՖ<;x64RIՏ9vfF劗3J$RqVʸP>nbyȮH0΀kR=6ݴ@OIАIoܛ3P(No@Pw~NǒT/xKfY/M8|1CťSQ4Bv<:B(Yҫ]akMS[ӊhGV, fڽ RogWv"qb%rOkF)%!|_[\9ˈ)cR/Z!.4DY-b=t{9_\IC^n7c^yp&bQ&w 3'^F7)@ y=橮 |x|8cp?M p,_Dr7](d 7[mbqxMq?:0yB [naCo})/ӑJhᖃo.(֞pӍew gQI ñ {EbEŶN5wUVy]uMצIx }30APrr S@Hdzl^NaXU f.VC,2űW|%p!*0"}t-1_,3i1B_կv_w#iυ Xɒa4(V9^+ я,k>|cu WSA͂֩./JHE$Liy;aPIb*:KJ5䬌N}ɍ4vTSn;H Vu',GQ1 ﷷRȸA$N>n]|oDbgw!,yl^6Ny;;Yli 6#HnMCUQ 's_nJYJ7ۂTG}/jC=U(;Bg|יhr*:n;-}uaWM=BÍ[e[ձ~Q% ?[ kP*Z۾ C#8N[f O*+:3֗<ƹ*j9ց°v%2BUb/fa[ұ۶A.Fb$ >\ZkN1 Hu9Ug3۪=h#OooUg-fX~` Ennj)ٜCDEp=f? 2{_ amxkFEsXFbn?xש-!]n hyȐn,?>M2rV;x_iG(1le<m^YX58Cqf-w% -fL1E=%HJ֑~-gKp*_kkr>^E17"AK]Ч$QPqkK(y\d lJMy1gE(H*=!1QfƇb gQ^{{c ɯ }K]c8 p 1?@ZQhN 3id}5F(g59Q2?QY%&v1}QH+^FUKR>b17UC<f`k8|G2 <Zs{WX7ߊJMj1L $'طAM^Q"{(jok$]9oV*0IYk_U+[z.QEt8lX.hD`TNX| GW[O]_LtN#rP׉B5 LQ"z6#ChcG9(rg)YZzN+$Bt 3|hДh)R{rL;RX'!1c**LQjS0oԳR2(yTi<#Xj,Gul\Tq29"cO>j"S/+7i'Iui?By%>bj1P WNd S6붲= (Ӎ1u$LL~`׎( Kk/_CF9CV @:W 3 hLpkoFZqy(@ p.+.u=sI$9y=N2 +H(8INb=:EɟlH%<)=YhĔ e6R?×Z dΖ7mS}S3*jY -%:!4eB.ش;K6UЇd#OF\ӱ%wr{"2B*1̕?~?:-o4'(.|: zԮP"0L?o۲0'„}>SJ,][uL} )Cds;MJ%IO-@ޖœ[|HȘ};fp=?+ćuJ2_>o1RGPV"7kK)3,D59V@0"jZ67|LJ4#7WN u޿=>W n]xA>H! О;9كt=MzIR|/֏XTkϬz QZ" Cq-? ?#:4UQm>R>o݌1KBƨ%d?~|zFkx>,˂l}Lm[$i90cpޚwVoIO>l`Ԣh\+4|#4ʩn䨴*;1^ҒzڹiW`3&沷%8 Hz 7F=o$R`8ܑ[֖gߍY\ꖁPA0:DJtGq, @ PVs-|.U^-qXsX(?ËҳSI0t.IH .? ʰ(RO@OB[Ilosw =Mk$v PŦ (;%H[,V?o~ 坈ٮԟVb 0FU&-V8Ȫ-#jIݞU3SL|n li ÓĢs|o?)_sRP8Τ'>mn$ y7nhaw+Ć K`!\Gˊ=ݧ -70Xw{yCǞ/Szݺ|p d,[CjFH9T([WDfSMh'g7l8/+}:05|I@$0v͈SIq.yV! ~'5Qldv|"D&<"ub+áNivOJa(aنuhtD{}-V] _LЋ3Z`80F~ePJ8: UVE8J>x50UEF,eN4W70 &)*ߛ*hf3>ބ؜g[:|cJTXEq.,=*=7GĴUk3-&͘:!`9"nc$ F] toiu/z`JZE#8_QBLp+} vG㚆$'8C nśN]sGʫFftF_cn9z1 riuU/MSYnD`4ťдx#TdP0iJQ5}Љ\ Z`ƺ1 m=眇*|&^alJwx;ee]*\5OF'}*TEΣ!_QS$P.7K`b>0?R3\kn} Ym,Zh#ijp[Cj93D22t;^a6- PĘIdE(f)AxO*W5u!SMi 8m7{'aeduIH% Q/ R!i}A *M^j5[LQ,-kݚv1In ih5J=͘ZOfACE{]1V(dvpq('9Q/.2a : 4O"rgsv~B8fj4e,!JvsD P:vO3.H8\$->S"tӌvOuxZ."[_geI&^e2 טƱWϫ#ɓ:,A8Iv?C79[>iefдq͔ou͚-̵@ ^OP=̞1\Y %!PY'g*;@+E58$,Dc@>qmMƘr87p6e !\N"E֘2zMH4/?\>_m^; G 68|MB՜ 8Ժ_ y3l _i/p6(HUj.ntH#kgԓ| 滏kƙJݾ-. n+CHj%r-0tY;\ Y8e>x]C]7vLQ$n^]ߺC˒3*R{%5в\DW-qT KL'7 =S)0Ez;%WnyUҮ|tZa*!,̩;DZIW;hQC(;?\w(B$Cxʊ#)iDx&Ʃ<_ۛqrڤ+_6uᄡ_1"~}Z]yLfo@4J^5-\4gxCzGg=^Q4^z V k xx 6SRu{r_z*rfʹ+y:VN UBxZt]*(9+k[ 3)d\k7Im{o~٢vv߿YsY6SG,K\U :idr).&Axq } Eg8nWO" V VoE-12 \}\*RO{~Npói𚺇u%PaMwD')4ӶBX1(l].6Aʼn Zk9eUH#%;~]ѣ +!sm2rkss3SU"qHz+e%ݏeT^!wx@Ӵm$! cKY&,;sze@!v=_Io]g\!׼oDr93=ĔO\YN3- |TW0Y%6FI/3f!Zښsu^Mq?%<+`׀+~bZTp@﵌aD 8UM:/9?^.UJ$Wefd4@pwV^.`Mܶ+AIDuV;(gZyq]3B`2pExԨV_h2c펗UV:.G؊HBH3s,|]DCդ5KsC80`$Bdkٮzc~j6QFAe4HU]0wJܕwiҝ4HRcUOT=,>IMݪ )PւxYSq0abq--wG>RwЋ4C\( wrohKP4RӲdDܰ8;Bg/X7c'g@ 2QIlZSy M`7e-CC篁mfe"o 3"fBfrTlOʺrp`RTtnfܼhՍ5oԄT-0 +<&~CyѳzL&gXf6x] &R+soبQ!nk`3,E7MH7a*̡`LI^%GP(K 5R7g{wXEl(`3X7RoΪh595zh %OpzUQZ|%t1K ~kzi;/v"qȪ0F:C!@d jb4b_%,^p$لGVg`MbƗK?2z|*<ߴU}Fv4mH<@7AV|vʯBL~!@O@F $\ ߫a{^jcjO`s$ӋFY7NG@-nqوlpqDNFM&U=,jßR>G=Μ,m‘png!BzyV꫙ nm͛RƛYhsØv@R|gznm}^A="(GfF3d"g3}vmj;@OCvӯ?kԫC1KQl,۫98,6J~x{tQFp6$">X=|]`!ȐzTm^\~em3L%*6cT7c6> `ewXmWrm4Y"&"ڽrhQ- FmD@-/@x=<15y)tVaqګɋ*9Qj*lqي7T:kmA>kwx-(yͶX0&޾͐qg ξDt!MÜjUX >ݘxʮ!XнJ \@pzڞb.0n~/销>,W(_0"q"!>vipHLd T_9$~B *\µ t8AN,fwtaׅ9'Hpɚ]@0oT6jyBwBKY8~& 0=~>Dh}O]nK >}4-^#O}*Uqĩ^\(Zli| R :0yjSq_ 4 5Hܪ3Ez,e>@Z)(ɜX& eGc%Xy$$_+ν\SR ߵ9r;j] Y->s},rgQBf'y\} 5i'ev'5.W7!OŶqbmk=r㫔HI֦h}x{$M8}VڐjH6F l>9S(dUf4'^$d,ntais{U䷦'wTv6mBooE8p64Mv<,lU'-:+Bp"}D5"ij`R\dnt0"c٤m[۽^B"ij2acE*L=:Z|Ck4E.:?.r c)"!DC!R8ap3֗ynԂ^ks&TNMg6ip85]M{)yqcѽ71օ58H2L8a̴5od4y.5m}j!Z`v~}25TD`yfb+!sxR%T0Ӓ4uEt襁#k Ps)DdCDKERR6r|ͣ_;f T{_ P$WsNX6vZW:l|"d.GPT c)KRzbɆ(IG7rgҀIIQN pAt* I"ǒ|\1 BKLcfDZhrxѪo{l_Xcl$Bh\,oLox78 S2s_syr,Vhgd ?Ox7 ]6w xݰnğ Ҥ^ 0R k7p]AB_ ^zdӕ{Ro UdF797.t{?#p}omu. K(t̬SGA~ڌ^B߄iS^g[~0Ο)?D;ۈ"V?!<7*ۿ-6:03G3%TY 1ؚg[!UYB]@ܫD9 HI!c1tō;a,]U4P窱jacSig$dHJ2Qbs=D缨ʓ4cXwMh#:\k ;1:xC$ %'̐3KDUg\h,x˫/JY7շ<5E)E9"dB-l`;YGl*XA.;/|Wi}⑜ !! 9I,*e~ \F[3XQ7K" *dc PߠxMx !a ݒ'pJ9ي -ț3g.޹6W﷯:C%w.0')v o0L)B1Fn<.wufxꢾ-Л[`c0^F#[T^;d[\X} <vW>T)5_6T^k?jٴTf<$WʛW쉬oDG1ԾA$'Ѐ*kO~rmP Hl^y]|#CVF.E>e 9稟! \jT<&IȘ(~Dd@Ň~`>kP(C1R_D2&hh$N "O%NmJ`SsI[5ҥn̉'6܁q.ÓUa+xv?(#™\,.u$8^M&Bwl1XrEjG< .~|nXFTWŕ꬏^%rba* m"'sܑOaRkШJ:}\-)g82U밚9d|8ˣ !vUx2 [?̑czZ`!R7%R<>yiF(aĚ*ztSE|i2HJj(4gOZd$+,6ؼ"vHG`r4 `8Q@$l}wT]2IC~& QS~O Z8B&M^VOI71;\d!]ӕyȰzE|ƛ=h")Y ڡ0B vY.|n> ^f5ҩ;1Ө߳rGA /)־_6zsu8P]|u(27RT s)Z+J=60eeL#@O$$8͑s!B0O&O]᣽q˨VAn@S-Ga [ . cе5=iP@ʮd\9&$>r wpZc>ɔ1ClA>>Jz.7 $p-* N?|ZdUlak[.i+~4ߍuǮz{ӽމq}խ)^"O1 OVպX{֕]f}x[`q?K/^f)vUQlsJB4-nsZx]$ ^ xiI_6U>^N!^~D%7y>=l=?zՠ;?͛T]s;lZc+$TNߥJIV)[<%۳*,ze\Hӹc-X<Œv;_:FWÛQA5ZdOxq`C3(>1yMt#1F6\(8Q*/&fL1_j5bWȐQ 4 3 ;7nGX\]]8eKӦ?6*Wxq7b@ϫfHd*8|x ަ,MlLm*վ SN8I7Рx%rVA? QfFŞ$. ̋difnmK4tŕ-& DC>$ !}~07Q"6 XԼpv^LǔX7qSڵo `hu^p{ DWcMB}h62u*znuL:D?'Dv@ÄNB!7rB/.̯V7#B3*b!aRhT|c2kzuG/c}՛iTq᥅Q6Zć/GetQ p-v`3lX >h]*E8rk" $h~ɒobJxU1cVŚ|#!?^`_&hH?:M8} 3T[2+-1*cQJ ٴ^?Ewt%ak ގ WE߄g2|=|/Avc/ͪ ^衾(_e t fHI_86Ya0Օ|; K Q@YdyޑDak[h&=\^eZƾbl`[/AhzDE4uaTaPw2z;AZ/4KTJ.GN*fCɌ&drKϽlJȩ"oLg8:~[)0 vGsu޼ɰpSx4G01UG]dX4R:Vr%1ztH$vϋ>&@̫w'F EV:*թjTJ-lڭnKDyCOE,2u)j\4!,զOb$s%B@+|:+J<$##ddBP 3Jf!n 0b/sD gK"7qFiptCtˏۚA|?[6J[ÆTҍx/ 3{GS,5 HGУRKPd^lĖVpw&*xQmG&-Ȑ(_6YF*͈%P'Xz5'߉=X6K}WuE{.ӭUvY=h GSP"O{ot\Y"+&Nddd-gLKLw{nF/;]d&'I8WU<\Rԗ a"ץ5{qQVV&ۗe .66ؘެ%ԫߑAӠD}st\ISF/:bOo1baRSBd"-VS)iFkKI-[3$9_MdDd(?,?.(؉x!uC.䜙U|V?8mY "Ao] cF.g2YRsK.ưR_*L.L.QZTnşǣ #Q@` Kl#Dѫű4nVQݐo[ =ShmmɯR(0Pw&D$z! !ߐv oj+E@+h/ٜ~-"܁6cӣ YjjG |:)7"o"l HJݐ Ֆk@hƮ.9DO7f4V1˼ #㣛N7édcC!vnۏ.^.¨gJu{SpJ*^/JI.:$>o$&*;E-%>C" Mi5c t+ra iQx蓣sh7Fa%kDhLyn7ݑB{8N㫀L%,4-anl\˘Lbj:̲C >]zĖ!"hB>?4z*О8C=X@ֿq9n5xy(/RsKfHd))&sn 5-rJ%w] _={~ۙ׻ e PߐS%n'Ɂw短;qƕKof9\C|/Y$Hn's@vٙ]-q=b'dc7*VgCg~8{dž?̻MirSl( ץX*CBNtKW ݌'׋gLE{o3`@9fmƪ1.lY1~ԬXD_bj,NLpdKVO/[MɅ)r h}訂9 מwgLzt:$k bf9!*( ZC *i9.ZJGJܜ}2 D`XJO} E•:C3i&K7׮6]$RʜUѻ. dj`:^]WE=n`(5^ }N(1=k.Y=K ř}%ߺ vS1~oW%*_A?36k18.@ApbNy v%ǜO#q-[lIjJ}FuJڕkYXɣHIMSʐM8R?]'nt&t|2Yqa5w,xMdV3 M]BsY%XfD$ݮM? c; O)=Wo@##~j'S!7-q6Arb"Q+=j<)B^-?wpޟ:A`xXn@ 5O ;Qv!Ab_UOaz,8KjkeroKa\|ѬtBB t%O ZV~Ϙ>Q)aC{!ݱ #p;Ou1 6B9={_h@;~IJ?o:KW?p\Zq9TMSU(,2]kuOX_|ݷJDuUXz)|DaH噱68Of|7Jcjw/89x%r,] ZWps-j fڵOUa?t&5~pMf΀XNz^(7ЊsY?S5?01^Eϣ8Rذ7;!4"X&bC'<{ZX>g Sz vz'ˑ1)ӷJ. A@ 6q79b(܈|_ZYŸ\i3pKx fT_-zl3A}aχy~"M*8Xu"MV, J_e42dIGFdxl]U(~?I@9=8P$נRFDUR\xK6p/'fNfw਑\M|GV(BE8;$:Wض'Lği h}|&`yFIvx|E,%f_1W+q筴_I ~X=Zaɦp Yڸm|uR^@篞i[DX_Tq7fGrP]g- ^n #"J$MOP$|!d.@V9C`Je}Y9 3vMdS%(0= 0rq*mi ʄ-ti ʾiKZCTa (JBvH%Ukxi"A*C>폃 szp _]5vHymS  @K[))'6TWm(J^]>9 a {V>g|\#?I>"`Ou^S7H&ePj"FEb>/Mh҇;ñH8[^=ܳ[ѻB\T< wPou!H:4rL:Oobc$%ϥB9vo55e`۸6l T"ɼ_N=:,:td±yo$WV_`;D{TB&=M3ݔyyiLVҪ IFUNS֩i]] A'SxmԘ&+gJXEiϯ邯*UjKi\kǂR1/(baߡ^вL!Ю}O}<8~7!M#9ˤg ẉw5]my@L6.,(@BC7w3 1ϑT(HJ<؛xPfYHn1wsDJt-:+Ε4άC~+p ?g}m2 i#zaSrM@VL*Mpq{r')J ĥLzM1z}AʀRs28?s.#w]b H,E ( s%`V8 ( owtfYùE}Ҽ B3&~@!o!kQ6\9}`&Z`fa'9۾dAh=G]uQlrR"zO57. "$] :AAqܸ)xA2)3c6wUGأ|-fi˛I<7; R/wRsZwk W'tқ6fH\IgC4Pt*"b} ^d1JϙKl\ 3dž8H&\7*{<ơ$7(M΄h` M lr􅬩|>"# Iz-Bz MHF "8%p(ϴF6u '`9UˀWYr>{((y4=h'02܋N{zTF7J]y4KQVwe xGs2N`;5l7NwC( W[H7N8^@9OF B_әhh<8ʐRB/Lvj{WG'ih",h+d5}4Eqg91(ʤ GqoY|w Le|ԅWǵ>k QާuWɔ<k rgNF>5c$SdTƺɄܧJE>Xovʵ<7{݈;w.z)J̴Wo/jTF%jms3Sot$.EU)1zaUN}`,rWxF . RoA68&ALo:B ' 7-ih iTic)=v6.-G!^m۪hsP')v)E,ci|2/Egw97 SNSs_,a բɋS 4|c(ֆ-waH> %?X^(hユ" xkY-+4'/< [{㢃~;O]ݹ^Jpom:~\9=.?AY2sŧpWq==]^Q'Me:$s2%5ʹp^>[>M*j3^ cP2s=u:lZR*i] G۶j|%1<<⦎(0.i[WzG$~M['sA4kS )x[ 4-@Aޝ*+ 3߄{ 8 jٔ[[d-Lſ4~3ؑ%LXݥV6j OZ8+C\-&NB l N4d@Czr)ڳX7L@=be! TV&);:Z1 BʜTVi[czXș1E@ǦSp`djbMEYpDa(qMLp$R^ vMʜ;×U!+ *N#tqԫߎ?"\q""yd{{#w wz!f+h$DJ} oY _xkYX]dus A|L@1;L(ah}. C5T[" =eȯosU{=đ]*ȳ7[Vu#ynT'ӡ'?C# ׷)-Y<~E9=VY۱#mv`<4착:lp?$!XEA#M3v|>~/ }ss94Rl&B L=/!ȱhf|T۞ҐMXK*Ma*I*/8 TEp^>zHgpTڂ;Pm9tد<} h͡{38ZCL m}:? 2;3_]?*o]hv ѻ٦1sd1Cu'U)0Qz=n8bGm]ԊǢs .a=Fҿ2q-+'ANÔ㦎ujJOd uGGbAe%]? Ytҳ_eoU4@[%rXLR-^HwV4TdJtwʒm tLfُAq&'FdP7ڨrEq:ݴ/FFۈԡ7˺"yڞxJxjntk0.oeb3[,°4Ni*y&#L:/$VP,'{W$LcT@R#3ܳ>fX@Bκ(ya~'q-79nLu|(}]JY]c(bXxI ۄ-2;+zG 4!`#'1w;X4`{`{JœN5LAiwZ [\diSRMi4 0dlx=@!] L 1in9 A:U(H;jvN֏'36؁MQ>X5Jζҋˉ$!+$YWPz=v ,6gTkCq{|s@W<6+>^QEऩaQϋa§{!BfBU"ыBKHtݮtKbW F2a崊`b236<_ʄv-j .I5s< IR&[ i$#%g0p`;7S$ 49(7;nf3XfUD~`Ŗ"#ﱽc<ݩ+3W7n XFR7BW;"[j֛f{UE8 cFx[2l&X( -'Ղ?s䇇`z8T&"n]Kh_r9kIW&GNE%DQ,jbxoZtg;șqY{ם|1jCiuQQ7=o߷hTz" \dBh)IUJt%AbbS6|4QlU2;l_aٶ-r_XSQJ,Lr?Q%*Lh9$;u$DAUj1j:YO95mA~I^zP]5'єVVڣVE$߇{UA>IZ鲛It۴_ /z`[ܺxdd^S19vB^pԅ ߑe+$M@ֽN֡vM΃.%,(B,p=sa1"p7xsIIhy=ir0R>(dչ9rN %#(rQtvb #yOV'M=rG"G1)7B %+t"@8jr6Ft1gO(A[uCۡbJȧ9ki)!2H %\+o!,bbIdƧ%sK&UI0}:jy[ǖ~e|r˫}䧘K}c5G;7: I4Лm=`WМ  ;[icOr8%D4[{E*P"(χ0Fq'pomu{љz VJ Ց2ܩ;7 īF:|Z1Qs}Yr$w&ϯZH\UMrd&=RZ}w *LH0:B6[ ]d~#6 ͎YI^/ &3*$ϭI0xs3|wL~W~lA5`1%| #t-ffV{cNo,9눧 #\H:&o:fa+$W^3"|9FK^YmaB!hC0$iq*]gxL>lH s;қq|j]kF\3TA1?;z|Xt ^`4lOLX? uüԝa;5%CknjhU7;xJ(d}!r,:i>bʓgfjV?i>da-f{燋!/8(jq >;H xֵDXQ+Ľ2xz &+p]b 7"ynt2Z]y0m:k6/f (v2xlQd(`{ G>@"7UE&W#3GA'0ɢ=XH8Ƨ֨`:*GZ-k6U 𬃃^m4*$.+2L洠=g-Q gVa.߂*b'NY E"mQЦ1Ȣ޼׍ VX;|ytpDPaGLe6h*("7a-4ScǮw5z 17, 5MH: :F9Me):jKa/'05/u;+~߬L_5YF9ZSԡ9$ )t]QVgߨ5sJuXXЋ̧뤝YG@MjF MA VqRO6:Mf֟;Z1~nT~4gLh8*C̬5 soQt/{ 0=KhL֦N Vu_0i~LЉI̽mռٚMP7v8GJL})1.cg1tXSޱ,EH^6!Qgb'5ע2 X|wye*cRx6Q)1ț^6zҞ5lF mOD~N,rqVFK)HĤ*8P .vBQJNU&Gh9^̓6' b"be4BzRoCGpySCi $v"t͚BtIAE&* uxQ r(F~]YD#z0:n;!bjq8kW(>&]bϞ:h?4PS=hw\Bb9qo/װEE-$*!]Q.ZslRN^N>)jZ66 D;94 <.Q!keUj7V;ى[OHfiylK@m5O֡K<$L)GGJZryjM0)"r(Cz1Wj0(*'x,ơl7PfbUWq"wO~-`ՕcD=P%ŀ^XR*:8?'A&;SΌBڋ+9-w{ul&Ҩ[vh|,]IS!+k&}ōRzn )SԷ"0$Wr-6s|~Fqɝk7; ̽ɘ[vqHMDVI`嫚6PnE!4VwK0+RuS5C1Mun֢kVmxEˋ淞Sơ{D#[a@|;lHϑ|T*JsԍDzVsAn=xE@͇lպ ?TtR\F[XqtfBt-U7m*hŐ0+*Eǣ7'\OL4/#0G4c ny'Y}'t4Пn7SUFO)]8Gk#w_}o¶v8I./T*Qx$^!8y7ʔ`#^{]?-Cno ;N/ϐ*&mHNh7* a!9kx8Yʐѣ!׀? xq`3]J#!-iJR!_ O2@Srh'HS0\奱4ؾ-S׊)~V[^PHC01[=qf/3aJ074u ^I}\깽J+uCN^.rYޏs& nn NC᪷VέWb"иrEQY&)| __29( pkypoxrW@TTz=c {B[HZ]`'aSI'v,cDM-SUau~]$U-Wʍmi3EQ9D|[@oj`0-8TMPl]ixhE7qC{ ,aiɱ\'RCrC? ܨd֢\%FjlG('S `r9]2F܃!S]crŘgRrA3WoNI}OU_Q}~PuC)7z ΂l.,ft5kX\ ,n-<-n]loaĿc8q T]HUυ&yBUM1̈#O%;kcSՄ֯n{O&wm:_K{o~%-Jv y`qk#a8(sHYJLG~zW+D@JD ْbոak i@%B#:B%)Ccs4=vFyi|eB϶K#ŗ3 Y~t^ONF^xܤu'H1S+ JO /F7. QFfA6IV|r4>'ɘ'Τ!oN *7=_ɢ#fvcY喞M(PUM;w ☛?WS2s<+;MaFM<oOFRKfQ"|-9a}f&qZߊ5ڿMt)gy[js]cgI-qLž>%q2H!Ѣs73YFj3r3M*TB.ne%E_жݙߥkxrH/ڗF"L+zG8jt(lo1p0Y_`ALMI3e8N ?A5w=914˜!.Q"KoƛYObu8n@ v׊Xs,xN8OԘy"a;;|۲ŲRѕln CvϴӳHgBgD0:#nҤfѤKg~= ])T..AzX`a7_P!/bTV/˳KX巁hS!!L'"3i;W-2?AnsJTb:tZ#pv/p*3XlIijZBa*SNx>A~BR\]ŠGJ Y{-Tć{;髤 c'Yc6q]ka:Cmm$L Q< d: h2Ш]qokZS#y oQ*ruF_M*%v#\ܾHZk*7c_6ruTa8K5Qo\d";0]9l*{bBsj-V2MKx-xq%E0BთpEMє괄ΙHEɇ]#w=>L1@l[U *r=#oLBulD}l@=rzb͕acO҂m WODg"TL6N( 3%fI-9ǃu%;*Jx7D3+DH5pDbrRy1"`86y,O/iȘn jfIhUj^eZ%h w]؇'Zg卅 м'ILuCR~j)?'ثܯCa`N`h8޼cI2SR\xT΋7TOT996vA =xe `5E\0@WඅVokMOr'|(2sc-Vc xʡe%7ouWhr? v! SYNs|,ĄmR/b+b5x&j`j 4ձ{s\ABnbsvth$!uWz5xAQ@9V-b>C l2x\ֽ}9+5/unA꩝M{R&~dDIf oyed'==Tro[Waz7 e.ZiF-$;e.o8ʩݘ2IƄUIGӾ*j1%&c󂬝)iH)#W|% @>_7"# mч7DT53?.\tcrrĸ& 5Nފys[ҷbk` GԹgXm|k%Dfk|K`~+44ߩeݴ)V]6<݁A;;]ə{l[a[p/E"ʟAG~^mWŇj1I,SW} ~x' /%-@(65)4n1Mc/W>65\".k:' FghZ5x!A4k# JGj/X'gǃ=>u&" QhշfG]=] J7j@.)" v X/<#w2BQc4EO$  ϶ ^+ru UC&)MqqC.GPd4 / ^$7ǘ(*Ҳ`H{蓏7ryIh ÀNa{n9G@iÃJImR 1 TyPЋ5E:#AIN.ZnwV,AR7A \!<ף_(ą})udiq `t.V}#)#a-']Q.Ig>ڙq I>jvr34U/md9-e8׌%1KA7*yʣHC~C޷p'4Ҫ{ay/6Q@@>k]; _kHoo43mbTȷ,AK vƏ$k@ʷ)6 ZnsHyB?,rȟ(Oܫ:H =rzQe }tVGn\|oﱇ Z5lbsG:WcZ:8X#AX19w_ˀaA?7>,5!1t`T dRo2壗:_R1NhqFE>c^P&vh劅ALb% DQR¾V%YC%YO4IuN5>D<3D幚[j=Ւ&k]b&-c+!Gp4Jaf-=FJhez+i}K%׳=d8ȁx%cq&Rv;~lE3;%۱v[B' Jof\1 ZyW.8yn mqif; EuCXD !T5ۯL}Ij8ypv=^|VTK؉԰7Fpk`(HFԏ3asܹJ|qChHO+ QIN8״&q0 2"/w p|!X߾>ه h8" xv0!i9u_/ R׼P/;:3ˇW<@p#S.7Olb{: ߚ/zEGs!$uF 4(w y<3OXmY}0i%@X$pTԍ\fi+_ʙmʋa!a<1T)JQTG M5@o9EY|pܭ3"E(0rY~&ؠÌE]nphNG e5;/ g4Ϳ`ঙ=$7,yMO Z>z&#y$Yd)dڧᇄE*WI(?mUݢl nHkP[{tlJYD,g~tF͆07Ret Ӿ7 ;~LBl_PR"•*{, tto].46P\w< c[>Pz۲o+cXA~Œ4[6__ߞ2myސA7ke[AeQaA򽶔.fYHe z>ݳ RcdИRp`7'pɸWbN֎*a f 顡jeY3Wst=ۍ9~bEw @j7LfY*&1C|B.3?)&Da=J}2[DP+:[] 5EkVގf7[̿8G0Pz{I? 9=ϓ{:Z4 g&ؕҌg %eTmg6Shzhv6E=?`\eAyؕK6K*%Gz< }y*,W`}x^̪0|/e*eXjw~Mn)aĺJ:+ [15.tu]`sCw0W;xp?1W>J6_Va|%p6\@" aW0\]v(E+V@XJhVfV4&WXlDV]lrjulWbmiI|_nqZAԉmH_< YJd h0+P['7 =FvھTvi>/J1%.p'v-.<Ƞ?>hZgm'bKLy{M헝5ck7֤o4#( 'гm2J?d!}WmS)uY%ǃJ QfMV0Y8oX4>Mh|y @]l}~?sH:M%?Gv߲.w[r-rnP3!_I1gߑyjPĬx+:UÌe29 O,:.i01<vKdz%~ ;,5FviNOpGo9IlduYoCrqiB-%)2taԍ<8tUti*o= QXDi49+9߫ivIFW= q=?W4gʬQ>2l>^b.|#i{+ o켈sWsG I [F׿bCyD3e&:rYe3FV]٣@`n^S*ό*Nk=XV7Uzgr8"/^Df6HRq߲G4s ߣ& n,9%67 ɦ]{b16Djv,ƾRN QT%w"0j4y_j݀d0$ʾ i+-ǑIc(s z:z cRT4 ^]eY嬨.$*@/+8b)ͬ 50*m" X_: w0gue꼵q˛2f^GwO>k1H?˖M}B ױ`7wL^j{&=г`ِ6h_NTۈ@m+vؒcu.M_+ˆS򒳫`rT#yo(WpP@d Ca(=e -1zr&8xp,&x7뺭F$ l4^Z̜W)Ke,Hg0 gsGs[PT"$艼:XgMs '%XCژD1{^ve2IHzbK4'?pw*1W㣞<0U=b~2#[ Q)rcN%.s1a(OcWdNQX,uނuI}d5}EZeధIRY& iVcD#ljNVl ]eJJIQՊhRX!Bcra9{̭3(z6N%, Ы@pObwDbRt)nxg5WK* ^7l7-{tnY¦:MϠ.Zե]vg)R#wv ~jLusD-fO#ujd"[M#EzVfZsnK?N:GA\,(-pZW.=11ӭʚk;MÞ1wvr+{ShLz؛IkР\%+7#MLf5Ke+~bp|GƁ]*St#S|<.-kw7(X˃tN|21Ϧ@;(7ه|Զ}oD7NP:PqGSo1d#Ƙ-HUjrf~x!Su"oolvm^iM5ٛܯcRjCpg{ЃR΅kb߶iB Q?P_c*p\+#.t)GF_HRno[`{9!*>к,H%A#{ؠres ~>MDrh c4^2s}36w(Tq/)o 'ڱxUw>IkܭE!Y՝`G=j>],6S͕xƚ?8@N*lfA+̡;ͨ93Ϧ\v['Y9H׎S}ozAZ_8{r4Т2bq  ;eV5ꪉPZ_}N7q{4f0'=$(©u޼&h^s2ϧx!L,l$|twE=MF#>fpkgGh*``Y0f +ilˎ#K]l^iI:nJx"_`k;@ լuT(,mSz)4j+| g{ѱ~k@7aJ:Gד:Rlzj4KVԊSOnO/OS5NZ4ʹ1?O6\"3w?J:ay6ifCX?p6 rfVíAS$WYw9uXWUd8=NO:\y 4Xㅙ\ʾq,޽+0Nj^݂䋌dwR*qsYO WǬ,BrACK9i^\.Яṵ̌_ZqE<_MeuI'} ?7tcLÕ6F& V !|ًăPPX0 , CS*7jF Ԉ3W/Jkc᏿[tam~1WA4ӶDF `*yDY g б{>>{c -(WVooW$q`^@<"UKx3o9R6H~*XE7iY: &5yI/!!*wRW|Xբ]7sp.˜ȿ'#DVGYTd^@mrVtBW.IAz#ޫs8VׇW *ZI[!>򋴓ZҔKF2LW[ஈmh,k(HT7c^97D!e綌uTm)DOuE9F8 τ,ґBRc 8YXyCV(f{ P v^[#YD5U/=j|=5[ FRIǥYyo(Nyce)eOwAE7Ә/i`pL 4 {c5p--u#7|^F<(>],T@h4*&/gDcQ?Bz ∐6J3%Sk]sBRfx:.s:6܃B+hQRӽ O8%6@ sk^5~R2аlbO>{I{M$V)<e9NW=:e4/Elu`ekܫ_@QE1/ԷX0DG6xB37X7sWvL)0W\@rKu]2,/}! ٬@t=[0ac4/ 7BCa;aM$-u?0ihі^sJ2b#)Cy9޸nʟu|qot>ɩ6mR 3-ʝVVe:eeBkOdd[lYhF5DFsAXFl>CM$פ4-Z#k#Sʰqx=v^@[̮r-Uc~S tOvSl8`XA{hs$UZ)>aj7 ƌH4"u!@g}?cSEG'M qLq kx$7qV]NfJՅ vlt5MW۔ma E)'d :Oy˂&_kkΰUN.t.$LvۊbKQ߽pIZ!zjFE577ptcq(P(_RufF"%X㿈 8E~azOתsH>to:`)1OKِB'd:ÓX,7Xv?m®3hR_Y3 ~vRyIh7_GfHQ-r)6zH$79ha o4tF)JHB۬iԫN p/S|*gL 㽘6 b25ԱToPc@='OK_lqH- ZS%j8T+6 hq#7gS? O  Q=%z< r̮Hɫ: ԱEB%4u"swЬ٩wtYs*U4Y~ؽXQY%㺢P3 $t~[kB?)8q| Wp)R`O$'k(C!Ǒ hB.!|i55AY݅ <uIJ:9wG })n)eqh`#NJVv< ._}H=TI 2;4#&ͷb`oM IeBL4oP,-FO6i[QHb ?T)ݥB,--Rjjr@-9|E;3*;ƨ>ĺxC1wZw7EȢ hOp]ufn]MXj6Z4PL-9H#R#9Zy/[Wy4隖NmK![B8pG⡔]NoFeq],wBj]sgSDfM;}2ͨABӹlCpKd^HۓڙʬT RdSy.+ߵ̹a‚4R$ka1_mFEnE!"tebMVWZ闌WFuLcIވ~K~[rVҗm^ed+F򀶟fO[:%~O^lboĠ@HP*_-Y|XtJziN17`ùn&)%/Ib Wz>wyVC-hXsY(k8-~O[k:g=]Q(Q|V! lZLlz~2ɞ5 MB'&CD A8ϔYyuigNFBgD 5fbȧѣ 딞Obh_I!}t}hKVty?-8G8p̸"Zff\r`/:wy:>݋?ulsngA.Rd![sts#~-G> lm%.N{kp]BFq5ݭ͠y~sK~zBG~ 8 aq#>`)P#dEt*h`Z:L"Hju܋Ls. YP^tb#ݦ˳voyt /6pr$Q9%zzdJúzE8BF4 uڗ,hUĮ:dVe߱M+-Cyf-[Eq[|pAY}ҏo{38o@M(w̤nC뇧]t;`ٯ2X$ 3^'kvޮUeyPh5+{?)';˧?Tsac~7~\zQ*8kpw! xu@l3J=͎3ob\Gjͮ ƙ^ 6DԻSn5$k]GPPE7?A*:D#vO>cF֪uQb+rX-sm}Կ'_caX5ֈ)w; <a%3% s(eS ;jx+kWLLfpN. q|ltla*7ѕLɮ(=ù$3n~jW-Mhw%/N xLl鈘c[ g{r4z! R_0  _V9ƾ%u?σ-^]Ei7I#]B_g8 |^j c\7KY#])+PBտ?Џ*̛_`u.玦Ur(M/QPH|Uw!pEr?;xqm~ev+ΩD}UcNHoYCso4y `WbQ)=+eqnޙjV;mh7£z ̐ RoK05bMjrֻJV1YǎHxVG38D\"5bcz{d0 LZљ{ lqrb1}hV0FwL 5f(rTll9XUt)5f^޺U )̮-ˉTqzm aXBY Qð B7{-e$QzxޝBsm2}Z]e4~`V?-C(ʵۉ縩cCL 6ϓV({r;nHA9VŮ`g* L,d ?2ηږC1ܺsoV`>`"Q Z?tj6\"~̰Y3+;Ͽ%E.cM%iѣr;H5dV cT٤P+# <" )ƌ:E٠}L^|UWjY&#d*hCE/Q8L `i0` 6B1pF]xUjR7/XG\9][WLh<(O{UwA[03ۥng9#e:Uǫ9hs k̾! Ƥy\xR7Cp]@{ CvehҀ KlS$ܕo#* McS7:]#V03m9VjuA 8˓--.|qDH! pwv־Yʖ_H@nfWhP'[*3 6>PJJ!HuC6.힖` JW 0{h %hM6T&Ir"0?FnU}Z',|X9Y+pX8Mm@ -y \&ϻЉ>).|`X2rd [w(8|9+$v6kgh@㛤 ,:Yw~kMMgrpG/VY<0E|^G7728LUROA -߫0U}r=jbbFCo _=,k;}~_yr "=ٙmzo,[Ƹ 6TLo+S1$-/LcTm9gj";0R(D1 pH޻c34 C\'Iy@l\ժ_Q7ODA&;؟r$`h'+f5ĘM*䡫^r`-=2Mm*uH1Z}Dž P)'G {8qfl\к@~(XʁaU9dpVǁMCvEUomM:|Cr_ƬVInŤ6"= ث_n[v{!Ί͹W sEbOS.2]yf]Nh_" hf[u7 }XP!)]{YMu9(GPry~ 'ɠ} ĦN~k?b8#u-ļ"d$IC(wUcNC׎3*t q#mJ3IN'z@~*H%CB.Maj_,Б8ȟ'6"**-԰NJu瀟pbIpo⺳sʳDrǸJZѱmQ?W)-V6voi(Bgq9-mWݸHw.F)rOxձyojnt͈hAQc~/*mǰˉ3.X^`q8"2dr%?q<ջ u#lzߣ@2tJ3Eyt)F]joVB˪i\f6jT+l(olUtIڔMIblAbh=]"6~)^!M&pnnlK5JVg'u6SȰvd^EȔ#EHI&2R/Ws,9w*W2~rEc8Yڡ^=W1 ^Pkл|z61TVqU).?A媸3tL_+XkMKrh~Ao,d*W0ߧ(߸S4(qK˗u̇4:߶](Ë̑&#_6X oxpc<^T%X/Jq'la8H]ɜZۊH}N7cg $mM=Y8qޘ,lpk7b7f"ܒ糦A€Kzأ(i/ Ŗ 05$ |b3h̊`.h|o%)~T 7,:4]}(d&Y*2D|[a$b#a7&oڕdgP̆veq9Yph㼡U6LAAp~ǾI0- ϗ̻;WohuyV8 Gl}X@܂0X0V̑Y駞i ׯ%f2A~HibXZY3#:D$.=\lX;z?)qG~Y2cH> g7o_m ) D¢f?7ksa}d7L\!.`Ak|Cد9;L ~Sk_FEu^"ؒ,\V}etŸe9 *qVƛy#Kg2jw87.J\6ۆ_muR[g _rK .'D¹[Ə9Bnc}e5:G\Go :S6kAk`!+I+t`h|S`ļC#|` 37S镌aDU&=8gD3LӢ>!27to:5<]JF,1ӞtMܾ޾[3 l H/Y;AJi5k[kl̖VڙJ}"pWnpX࿐WIP(tI0ii\ uE !<$C2 f4Y=KVSXr8P'K f WĻ[B{O=f@ʵSfyEfVBф06PD"梠-/Iq&i/&Go{m(*a^єdDkVd:lC@،`pp1}][H O͟GSM/1NTk.:ŋ A26d7N1ZJhsg^AtL!uWUE9dNrfD6xК 1n7.9vAZF]R&TR.*QWK)(+xl"#sf<`K\heϪ.qgʿEJ'%jF9=8P(Y>r4v]*ȏ-g0` Ϩ5#@i50(;si+ܡo2^ӻ5m.m4<}Yv (=ަc|~g>#_6|1X;dO6ۤfkH\}ҭDҏ@*{ PT? 3$zBoG3|˾*6<-+4FObT}1KO3⎁,1htp;VWV&q[TRs2~IHU0p^g9m粣a% ۖB^N&cdr"P*^ 5F^,jK)$sca;j!Ee[`∝vv@ wjdB_^O7|Bde0uKu-ri28t'\zϜZo1Y dw`;[k@/dLh.kJ*}~gr< iP:k?$AEj! vh c6'/BG0\zBAbSbzq)l2T{NL !_"$ZJPʢIK9*$CnԤ  q1J1Wo)ѭ"?YC}|wMT~h]*<ŞYm: ISQGOFGp>Ê[Q OzTTnH' ߨVnI{x.hLʡRMb4ʝ`ʠn 軗v a@y{ %i+6gKwHM^X@ʹPs^IcUzI˹VFz 9@uT.e`Ւco+8D<Kq|oQ.T=P9'ڹ9Yf$oP2R[PVڬ`\WWh|WPJO3 @־`~Ǧ d+HɄP -X˽L'2qG=T8e#PW^jXu8Ԋ3H uТaC,BT%+;u/jc\]Yt&Z~8_P@P,I f**糄Rk݊- G M%ȖB2#I^/Po9T55O.rbf2h.= B}6r'ZJPN?NjF'`e+fbzOD"<&k\?O d2hMi-I Fw)ϴjՙ#9o!m}-ᇋKA W\ʡ~Ulp;iTh~3xunb,-J G@*yʾA,#ycPYTW2x!EcZ*2曇dkӯ/gdzDje_wԒO%ҔZ+tD1WPCQ,OzNw^ME*ϧ0kE֋e S>0Z2ҝU sgSzN2mib쇽ů`%SoAD#W,Fj>my* FeJqiPmkŁOeaxSoMȑ8z.G (׽ߴxWV?ȁRc?WU~Bbx2 x(W B-4{'9m/11TBHW޽&MP*v/QfcpB>,noDSar:\!0Ij"Aى̥STFb0\C uG)-,௄#*S~W2ja9F?Z0.ș!CӘ:K@H^mvt;̿XxHtE *#9. ޱ۠cŋ\0ju͸%/PKSo? K1"7zœ@ً\s_qg`\v1$l ֺ&\-&)sUקoM',,8F)@sokQ-ӉXY H8౻pȾ\~>;Nmi[7_[asbo1R\qFN[v(%!,3DјNt+dW$=A;ހ3w *T/kBJeYO;mXhE}j< m _FM +s-rIE:DOV܋[m. q)#y`/qV Vh㤕 (2=8q]|γltSEOle`eNh YU6OAqv@R5t[(Ln^aEz!@ 6) l6q{N~ñu?65ڔI9F8Jzv_Xz&0g]j<Ć.b9!detklM$n ojyn>82Dz׸ k8ܠ^s KK rY,QeM.ޤIUjljr[IpgL+-*ZN#!w{jNȀ+}ġ^e mx?gNJ筵úC(!ZfS=O>%hQ?*hz^U509Xv07aA}¦\j+}Ըjpb\7ЏS23vpjTk(d6@5t4} j* y^h Ԯ4& cuTnBE/ng"pڍ[tn[ vI ސU 1zwQ%~+*8<=v8ETa^ӘUd?[5 +F+2ۯW3і*Sk`?$;J֕ u\,r}ʜ[ c]BQa>ˮq&FS2Ao2U>il&'oido|M0)%^]|TX_<61STT4N. ?!m(:v m kyw Vv sz9OzQ_{[|"[s3T*3aFACp,Tc[qI^iRj&V?`nDK =g7*DאmHI+3gT7z{;-6PTxi|]`ʍ &pq bj/eh" X &0QbF} 5d_<]_J%) w!ld9|JŪUNn {egqeW]0;@V<#sUm=!!]˃6;;Mޘ:3yW(D D0,PȘeaqdoRCIAe'ƁLI6+UT? /@E :MQRqc6Ra-WstohiQTSg8𚓁!h>n\ N.g⟱a!Էc:C+A:[0BbR+&5ti0TQdФ(MOP.`vrvgZ8!$fVT! )Cqn/(؜Χt׈mb 0Кq~aO<@'ơRw Z>-!K!Z=3Z :ϹeH=Sg,[\ԉ $ (_,,%ŨdGOH=<-=)!ѵ^ry3*ci $6G&=?%FkMڂT+<Ԑ!m )cU}ѨOb4#8zlWabcR `V u-Th9#ժ_x 㳒Jn$4oCe5~83`#0_'cJFYʟ)+< kF "alzy{&ō\cT+z3j>Rȡ=!\ߎC ƚb2Z֖bs_zEZ`'ztM눨Q K@a_vPQg* i#h%ٖɩ/t9,S?? q_BufkdemBޤ1t_V1T|c?cD xXOFql) -Uj*M jV-MЋ3DGEnl"I? 8 ]#*V5Ź"^"D!zrbgZ} .xVQW;^ĈA½4ïVQى叐x{2?Wϟ#,IcA0?L}m᫣F7mb_ (gj_PI/{gRqMv?ų| mӃ) "A:6G/S\x/>/YnM8AYw R6}c!ai4ozĐ22i39Uh8˘i/Jٚo\ҩd=?rNƙ_TiQ fB5f i1 DjwDz1M ~p(8W3$kءwe-vX+U.Hm,v!kepsXɪq.SZp9rݙkF` +.;$v^Dl`yJiG `Ol+%d%⦻uO`@5ʝ`9[8[Uz0g^@BEA>Vݲ*L )AJtI 1?<;uun{Z IU^ 4Gih>z oH|1YSE&ĝffօAq5:]pr]#Z߭zq"zXOPX?ɥ\:}n($I~Bڏd3FGSՂ5R̶M>J4+tz'«p[ƲgѾB0xqy)Jѭ`:o+C;'>6VDaKoZ54l&#хǘ fBwN` |yIgTxMJIV211.hϻuMy"d @-7DݛT/ݶjD@m e2 @h-| xh(7B)9rjx] k3L8κp⩽6M;42rԗ-VQ/oLüq?_zEc" ez,D:>:8X@1 $3ch>jW20mqiK鐙j>; 铿e3: 3UR$jUn‒ԶzdZ W?Xǯ~}&(o2geElK(?*<0\1C^qv-104 ?M:.6 clвu\)`D/t7eeЭ142U05ki'0} z+!_7O;k^Ĥ{ G.=;Ӓ|J^*?\{l$w֒|w_M"y%3[M3NuTZ?қzzKOôk*b5kk)I\;IPXsYUV{ժ *>+!fH-VbFmb:˾N~TW+88-h.šh&VN_hEZIˏӬnb 4ȸtjư4VהFU0ŏAemd'8“tfixNK DLiZj0`yk"~G '6K[=V+mOi^ֲBTzE1dc2 @i~fZ JbB4 `p>"QJg%u-hF 8S6]l4NroY4v"i?Yz x>N>w0~UAt^L7_x:͸)(I_'ԭ 'ZEE㞰_;АN:ͨJŜDa ⪧ŽoMn޼?%[M Vj@ \,-W>*(B'#lxҲM?(ղv ?9;ZiYsP!ӫy汄j4Bw8^YvG,i 6H{v)7Ȳ?TG(ԧ{.G xQ 8& xӯJ ;gKcnXҸ H"puBNCh?A&ɵSwӍbh"8K)$:7-H<BӦY<`6Td$W.Z$5rnwDkziypGA|-!?&[/ݐ}'3jmͿϖ ? $ku#l1X;}2(qI꩖` &!plhapU5Ym$B.7NǖCw"5]ce' +?-0=iOGfkX;Pux4OX~ u3^ӥMf3TDv3"?o2E"lt: ꇵ3L0BU0 /~d5y ñwPI  d3@X-4N;ͫ*l/th0T%{^!_?ղx[GfQ{V+ha*ZQT.d*H?Cf2$|oU&Yip5(t]>+kR*Upທ*73DK3jr>$ӣ/At#: (+^nq@J\9Փgdd8a{/}&#4Q;@鬌a/a9"Bu:Aί˷-G);[!VRh:ĐGwdf9t(_F O B wU1 bo$uDRyy+A9 buu/+'gu1CAD%Ao"NtVD߉0CQ$F6`'OΜZ#@Yd҅c~7\8a;p IxIwo^*8.Gy+3"b(R`FFQLXI[+?@5­_|ْ/zMf&⟚\vƼfplhǟQuPx] ,1k2>Ύ* 1EI:$\C/ً6#0:& ҠCbISuG4߭N2I /g];KNGJ`䗝6A]cbX8wHq X7k~ȕfS3h^{匶%DXbE3V F }3;tRt2ƖN_b̅6IG.,?΢~.\ xghT-rC VUɔ)9hɫh񹶻c<"7&0}sw@}ۙqֿFmеuVz9 恽1;5א`C(j9ށXWs+^Q/G̩4˄<>J} >Ňdd&b A%= ^Evڏث>DZ~DyqqDl?[vla5GB0K_hmeg+RL+d$Y5֯ڃ9d[ȶ3U2 ^ZnH%MwIڭ~؁Yq=JgC ByB &m>'>jC9Au[+ @tet5m5 ,ܖaXF%Ϙ>QY`Q1(u>!@Q})VP%&trwV+"2J ~HYuيܪ)[6z,ΐ]' ]1p ^Os:.ko9RewJP3o:3<%֧ՎNmGmq[S2 ݅ȚᛶTIqJ^ֽP$9OZt~,k`^w%ei$7#o,M%UR.; K;0?y\ۻ}_ v_A_N,ow+1q8֝[~J!0Kp>?՗8,=+IMLF~(&\PQ[ҙl̦VCSc1}T⁏wyfF3Ԍ v ix$οL%*yĆiMo6[7ǂ[Ou€t}Ô쪏 t$*/ 5RU\ZAʹp%_ b˦?)$F'Uw;,me+!vQ2$j8aRّ릾(aSchTd=X[`KS+Nq0T_Ekm 01JVbde\e͉?I>*:„?{v6# vMroQ'XSQ$mxm{)\~15 tlE\bxdQ T~St:0tJ b i )ZYm v ?Ho ="\\=oDl[a; []YC_vV!vxȱf I !/Qh Png%w.+ 0kWHо{Аyy$?;+˲Go#EC-`$x0j 1K% ADL?@C8M&I=Hxpӕ_"jW9Czds b\ǼˀTHӗh}[)< W#bQA*%:9RCL]qE~;lvCK蹜9h.`n(͟P6äζE\7Ǝ3w9ǧ.27.3K_ʦ{*A"n)iR"å! _YlG͘qvc=Q-f6}HhuSj>&^nO|0Ͽ*HAy}%;,lO{a6Jw',͇#c>I}Z~ڝjXHʡ"|S|{cTÆ2<^zT^[ˌǬz'.r dv[@.hd; `Goe<;6E dD1 ݉I9ԡ.' _ ?mAt\v0@P53AkgOV!"G괣dpz:8(e=+lJVm+gkKX`D *sTbxu0"厱MȨ2&V" KbNe-ET\[gUc .%k)IˀN9nM떙aS d~Comu0/_=2qvbK9hafs=>A>ݠE0CBI0i&5`~dnr L]N˶OlaOKpdcs3a#sL!F^fuhnڳG,:́ߚi/{O|s0 qBVc ][WlC0Ff#eg_ VD',aS8hbܿ`jb`~MlD}v''\0KJpOWJ yֹ4Ďq}IQO] *aݭu3 jFgPp Fk)铷I~FE?Z774H1f" UQ:*߼k9T<[I׫1%#ꌳ泍9`9Jq4XD'g-X?9naoVܳX$ \᝾hΎ%,^`fjQ-+$W<-3o):UcdGT3>{n dQ7W[ZCmEdGbsf`[X wwnTA-hă :(H0"'(cjVҘqizsAԡ~ۀ0Ow10ٙZxzz_!f,f;0{Ɗ|u`dPt"v<{7+[͉uL_h{:Q?MZ ᖳ>BnyUz[[v yp?4ڟAf7տ3?nbfOutI-] 1:cgphw*J&ZwƮ~D}|-[ii"iB8'kt/&e/R2M̨G>"K].{nt{sB|Y<:z0&`bDm~C |ZƑ{re'^g(o6!Z>)&"p8R\5YN9Gkmi7LԌ<%u$}d0k"l|oN-UuXc&~JOcʓG-3qkuN @pP_xY/&+m~ >3k3tGI%պxHۓ[C_=[a8{-=o>{,VxYhӽQ{Lc0M^#0w;2歉J J0C֩qTq\w 7̜$BϨRzr@=bw!t0kŒm)~әM+OU\":vY˥q, G=-#J6 ɽ=Ģ^iq7w 13YyHcX*o ;p =6c[k =ۥEw%MUsܔ|`QG .2fjl +0FQt>s9?Cn$Z-=ЊPW/_q]+{/ &ƫgxR)]ϫŕLRw^jr3.lI4XQ+Cb$MX K}B^ǽa'`M=-&kQI#xT`6[w~I&E<dkjY^,A_ $th{R?` 9NxF6x2ciJرXkg iSH' ., Xa6Ǫtd F8sqg1r/`"RAAlZl:ن}Vg_5Oo20t@o5  w!nR!Z; g=T*v኶:`A[AQ۱=TݓyI5A|MF8ٸi!;ʜ,֪]b\ȸ?zcBPQ%,b9 AaQ %~F5bVg.q] `rDt&y/r:nftaհ3xabV)&gG]qY (BXuߤwb42E{G}"Eh2nu] R|C-p'?ln~i)gx$/OBwrO:fXr~36e1 ְFڌ^\ފ ,.l'H%K\OoҵTԎc>fRv7X Yrm}E:9>G{ď#.~$N3tm&%`7Ʌ 6cRg7WvLQ9JZ/jKӠ NyU )k-rd$D(?>g3ybUíc$䊚yO0g1X͓?->x f&[4;t`e~G|0VQWi3U%Lˆjh{r@.|[Y(~J4W{'pLAs/A5PW bTϖ1@w4駾yħ,SdS>2[o@#re1Ojƙ/Z+k`mb!RXL(DLayi^hkD9^bXJ=Vm/^b櫩Čtև3ZJ(tr0uCZDM&Ki@ $h/-g #֔Eƙמkkjz50^'6ԜEowƸkC%vԓ/{L~E/|Ƕ>nFk-҃"{~3I+ToLI|U'm_lv_ jl?-FbMT mc +Щv,ʕar.is)f&--nJW"C_i6UTFĄN8 )+~,Gp4 ޟXPI!fǎ{stB!YhiB)JԷa5~nn'}"l͋X"EIҩ9+.]EHbP tOV<(aе%B WV'W0XCQ4н脃Oe|£g8ؽl. )Xp cwf&F=a볳l /ZL2v)$G;f*ע/D#bAM`M=w%kWYт[0b|^#Um; uf+] 5qʜ{o^Ɲ^}"h( rHV#=<:(+gK;&kԂ:]nuHFg[Uw^fy56^u "P&wg"1[*A+*Z ŷP.fK}P>բlL?,~wʐ4pij br5=X~^cm? S2j/ Bc>g459 Z[L &ŢXmGÝN(IX̩MoU%Hؓ>4Lj*iy }`A84C},w MU,L- .gD[\K0ǏPvf^P 'Fbh<&:~+|ɓ!-(?tQ)]"^O\RtX!>g!ZDlQ?a@ PNVzJ RS % w!7->=S,^FҗxdA`hA9qaȵl>wɦ?zfXVE)q7/1PK` p}WBQ@m^Nj / !{! G{d`BǑq4s*X ]_lp@)xC694N%4 ih)d_{|3ddI#Qh;n7̷z 0UKNcca=h)ۥR=7%Yt9 G8O=V Q\{Q@A#>Xl3agE$~#"FGFKa3sJs'@ZQ3FDdRr̻NȠ,A|/J6/*iCѪ͔?K答0D^p-}%0FoJu:rdSY$ o?t0Em6\W/\UhLOe2 (iϲ 0Ζ2W\ I_Y-fR;]&(R{[uIϏLf9 $I~ bѸv+9"36~1VI͵Ol-%Ep !pТE4ow2x<r<>kN~ dWEt|`6 @_t+Oo)]Iѓy9X"='-^tXϒ_+IȘ 85(n`NWJ_(9Eyyy0ADtz֘ CqC^.J*06n1B PUo䯡me Hh~ Z/i#FuyѬ< AisnnL8s׎mtE+Z9 =]qGu:*8",D`Z0mNDf/6 _$67QGBD*S'f{./R8{ڼk x~&n=-<\Pɒ YaɘdbEnJUi/\n+lD>TPVQ+mˡe`Nۦ*%Gp䡬t5'$rDwpt':tznz$/=-mCOQzg XE.])LC L$[Ыlv_q^k'k*ZCpS6 h^j u Y"0^')20_2,(BՋMOcPg=SA=Iv" p!RI47nАaHh/y@;&aV㾨v )ܫ$/~]Zf1FVzAd$N>.ow;Uq6'tBOM `(>'-3JV^ ?O7q' As}y%2lN%u"5ck'!o; x:;^ە;DJ%4}U)P.塡d+K( 5N6Ɨn4~+}끌 u^=8':ɽY-E$GQRK1\M LF+'Qrf@yAI/DpJjWV/8ѫXs˶t S:"jFfSu̔e=я( =i@$xcE eKa;Ri`3 )f5, S6Ii7pE$tm98Kň^h 9鍚#R\phA/k0G{-)7l^gEMC5F VU^%MߔQm~2:=!;-t BãɘW:p=^q6p*]3уm߁w3P_P֠I B&ܽFZACۖ)2鏽i{m0`Y6]>?2NtC ]t b!zKU/o#Wᄉ1E+U~HcZ;DKBsnwqoQZ@ʞ^5:(j|[]PŻ"!gd! bzP~WdZޔ!9`BFҘ#8iۍԅFZwzկ6!G14+yljьF}lԒtirՅ1ujAu%?I X"̯wPpYfʐN',=So%72aMOlO/P)FU{5y@Uϊ&R~ez_}ԝ!vyNrmv@=?mM^W߉ʨ_ֵ`>t\;["A\ym q75 ?fU !ob\FO2.c1xxD&ȍ<;n0W/&:YY:?3PI:&j2;$t-9X3lhI. 1#fTZijk"Ȋ8Ԓ}/WVUcf̊Ư2L7xF+}@vB4^<[$4kxq.qo1&ī$n4 T:|Z#li_R*?^ъc/ ,;#P*`YZhwW4\"?k8V쭤]PǤp(a!H5:7~\nyF p~e}LSnl(?JBNå@C>LWsC|aU. %  i^V"EVoTĿ۹gKNũ+.CS`b 5!#ʝq f94IPx!s_|{%'E?pŴ7$X$^vvzKa IA2Mqdn&t 5j;`ܰ[H{yg?އdL؈@1UyOIPQB@ Bt *1(lZsˤ<8Ifv||-?Z|\`8I9 .[(h>RpNbRW @O[ϝ$fn<::R }2ٓhpeIxJI&iՍvͮdR׾֤nlN'ed-WELPzyx5oYj'2ߠ0L:%~ ĈIfٺaJ%! ~J&E2Z*&e u^Z}5c8tl}/-m1Ly+S ,e&zRpw|<" yo?@IcއbkIL>>?m -觃!;ƹtbsg2Մ]B3`ޅ" /@dtyHS_" N,&ɴ`ۗMF5=O>Cx ׹ ޳ qhRoѽjKEQ#ppD$݀^@w 3ƹ%5`l%轘ņTCs]}]8`y] Y+M#(bYf}2-n,XU_ SqE2zKS0QZT=^Gb'%t: +Q9Drae29p)By ˲F[uo-T4cZySaK4eI3`VbGUy80GĄq\$MNQɩE |u RDD!)YaI 79Ұ xce>DvuDMn_$]u]vs+]eP[x 1>fvAޱ|g(c34nq~H 36o۶s+˰-;s,I'*vҨV†#`äSɈ@Ď~1!JA˝Ԕ0:PvQȑ҄pk1dh@  8Dbm#9mnH_1OR#=lbWRN@ "$9.T" -QIw oN3^t'צϢJt_ XO450}Y}_y4_4vT;GGڥzb*W,P(W?,ECe4X7351LWf"5B.Ee؁JeGoNz=:+ߡž?]49w=ؔ7KtaqK#/o?zp94 9d8v?En@3bVErK,pFv`ٲ<ܾ{Z*vS8{0 ؇\o6T7yMg3t& dJx0 YRlԱª+%K+t$΄d} ebe '!ֻO[ Q`9zWDz\ހ8cKݒ4l5G(&g244u qwOLNjAtd+$'Gw#!z\mK 4i;\G2ٟV>)ol ?f1 B㭋-,dfڋg+=e8\(m²3ױSAP d($Qb/s2W3sۚ1 XsqJ_k wp2PdG.oŸDS)]Q-" V\Z!HQ9)n/{}&!\Dv,̒|'6,I**_ԫPT2zA&%nZ}qFiٔq03A٨׀&N ̗p=f4xDCϤ'M_k {E~t)I'${R%9)6 5ЉHosYJB/9Qg^* !v*v r}$7;B#OëC? #PNjF:$T<Aq칙u"Wj\HZb ]8% ~k`aSD˕mִ\ѷUN 8yZ8NYe]Vj6blco7X>"i,}g&I J9=h]e! a|L)3n)ȝW-="/VJxLqgˌ낧 fMh+'AheT:4c$\N & VBI{0-V(r'e65XR/1S;,*VF{ܳg`S.NKbrpxYې> "^Uͧag2BV (ix\ͩ7R)0 O8*cF'lSχ84(v>aC j'ݭl_>R8&Hn "Dx4M[8׭xxꛓœ& U*cI#J%S@i Lu\ɞW?be\Z F1]{?VYHeA}'_"4$Ic`\urPHS&7) SBz|Ӓ}rxh{NG|!~Z߯yQم}Y䢋bropۙVbRb%@Sÿ(8xSgnt>%0U #ήmǟ-x*Rp<Bt^][{%(Hg/Wٞ5CEaeƃwIM3q3 \k9FM⻟1݊*g8f+b(ynY#]_8jMtR{R'98 M]d9j>'?Vf:U Ľ2}mD86s,zCmGAkwJcVBю=НKJUo( B0pmlqW]'.T4ژ:k@BS%`62CyD|+CO^{ 2tjژ6hcmQvþá;4{Hr4MwE[v:Qt/&&Jqsš=S6dI7┅Ô&x&)cƬPJ2t'xs*JNc{̭SR7BϤShp aLy9$"R 8+(^sC"4g-&Xn?} DLGkr%ʁb\ChF$3-u6&ӣjMМ\|bt$^eO7x*^$Scb?HDg"Ϲngs"7='{6JY| ZO"̋:AQ-tIyƵA pZ9*}#'FI8Y+U.Z\6Uwzi( ,۞$嬂X0g*L$:eac[:vrX`ZV aO4kl%CJqkdž<^/%/ѥRCdNRPhLoĊ"< (TTXnlz.f `[)I;@?*eJZ v$O5c:-;E5Qf5>f9==“MYkBPD0`r6\3mDNhjnwL3aKn O#vE?*9Q?9QFkB0Ơ_ق *.j:(m3c_TQn淊7\Gl|iLpH^&;/c2X+("ZJq6ZHg@ői3}%KR_1"HӮ]e֜j&+Lp&/=cJ9.}OH0;G8:lTsĝmq=m^bdN1P[/e6hjŪh8,6{S:X/,y򇶚0Tq0\-7@He__b|퐂JuTG hf^ŨULՄs96EBB7Q֔Q#RL nBY%P;/mV6A%V1Hf@4ZpT24W>两J1'IPJCve_ՍByyofKGD͞ڤز6WMTŠdpU>1Sƾ'l->ҺzR5Hpk ,VBnWbMGCL #=HN dOCYJ 9x[7m?\^Lӭ+@|Z?B ]:a^fZr߲h:,5:*8YZKiWjZ oN8**QGe)ZZupcP`.ăM:Q ֫\RGJS?QQEoyYΫ$_HC*{Jo)jA}qpƋ }Ժ2+y>> pM!b?xp?.RIFcB1kAs/"V5f|g٣#wʣ=Aa:cffͥL1d/`k0") %gNLѷb鸸E$zh[^mĢ ӈ0F0T)?pʅ`r< p3IbcgV.YljFeZMuG;<ϟ/,rtw88‹%I5@x=`tCɻW]Q8a.[39nRj *nIGWMZZe',4`[jcb P`A% .i`M".֧/bYn\.&b]SDzO[9 EDTy>"-}@:٘ 3ԺFIݯȄW=}/'@Fn`v\rB҅cݼwx0uj#죾śڝNFsV1)FyUAnʗPF7r-Qʮŵ,N.JVtIbEldj25:07M-X2||?ro(|oGE:`ϸ/Xi*a_0ߺۨE6zCǧXŰ5_8>N䬪‹I}qdYa"IGA]a\ݱDm'_o$#I]GX[ ^;vȟW$K7v$6.Ro+ysg t+ƂQӠ! ;7ߓ]r4T}AV ʶܧɉmF1;q' 1y;#S6cbD= {\?m:t]R^YE uy[`>65)z[&-U炏8qPVo3ʣzpISv tU(0z^9  iä@Ovժ"jR03ikYP> Ny:? n%ݸ:S㎻S42W*p;^eY>{nvhJ\٭6? ,be`1  .VFiZDH[i:lRRئ*{Eȯ 5 ħ+ǛU땓o]N*"6O 0KJFعI?*j*.GG DgsPe},Gʿ^0^% L= 4GʔpO8P;Џ Zpa Rv{N(&e2§A]mx{BtIa1P*z֠!밝C_'Ax诘U%7!pMfbPy17,@9Vk `I6m>pN2rnm{lj5c)Ϩ M w<;sȒ 9wش3`ǩ#c+"?~jϵy~bVS]⭀@4A7Rj{54+q8}mjO{>_qwL6H>0|˒Ä3ȩ)6 #CTZ~]ǽI8!Dhv=0v93=@cͨc 5w9^^ MJd}d?f.LW:l #7̹..BnOd>`9tCMˆS쎾Ф!C*csglWqƯu'6A~ǁ $ch170 ̋:M*h(2i |Ir͐[5I˵{?RljקR` s UZ~s q"qUqGPU7F=EJF/+ ]Qs0uHxm %8 U@^(d?/ rVn8y1`Z*xc.Qm]~S{& EV͕2[N=9 zf^RތPj? <`\ .LQnnLag}$G{%R!l01^'|T)ڃ|>yybz@ӿqbx@7'QhA֝`dauzMv|: gg)fthnJ,Ϟ q8ʃɏ2%>IEx )U½7ЌL7f& h⩪-_2xM,OHsl5(dϊ^͙%5`ξp̐MȄ]0wyMTYR"T 4hyQ5}}@TxsBe[waJ=L;yc%#mAi*-r_Ր6};5j.,M%*ϗm}O9@jaoKJ'S[g˼LctJ1;R[Y0[ 7*9VIX&ZU9DͬhfĒ~+!K-Pl0}G@d? DYyʋCo1o"bmTݗ7n "#zƃ7/]з hnhUCt$H<mu'D5K1T]XzBK[ѻ(e |HAOfV,䏈ر7Sl3, N Ji9АE/XЛm==3e33W4_*]~H}ayzE!̌c R.ua|[QR`˜ޭ31)2paBrK"Ħv:15XP"W6/F*kmZXx.Q܅h(g9/t!q|rz<@Y3PwTvKZ1b,l;--@k.X2#fUD~Pޚ8;xPF\[D0zC73J Ղ(I_+;lu,!*rA֪E"6?-f+8%zGR]t|2 9xf%dJLlHn/?zk~;c"9`$mjHv?!3hv!O45`]\- X6͇ro饃XD&|KMFy.{<.QN>b~4C/gHݒp ؍z fx3;؆ɘcU]jɿ/5'RQIdYc8vvͫP4) fa4&V䗉uh@f5.b?THɴ`YBJ6E%sI$lΉݕO}]32' #6Ϩ< 0ny_V+uSK,9l:,eIZPÊyQ>4cl7_Džgvk*䤩W*Bi}H8IKo;^!;F%@ׁ$yP=w^rUKF#(U Ҩ',k6nj(c) A@kwÐqgVRNw{ h!.>0aHf"eiT)cZLEӦ,񗝖 B][t#׺Qq5 O6>5lΦQp$ ~m9im|o.7k0}JVZd~`RhCAt^KDP6s詔 >Q]mkLr;qiFgHI\DGl-RD ])bIfZ 8Cx$"#?j6 w3z$FQ&"Nƍc^œBj>N5}Y0#|0S*2[i2|UBFQdԌ R.c0FCR)6{LP޺K1:И݃ܫlt~+hO43`f/p95A;J݌ eh̳(eYֺʏ)nfφ@1MztxL" ]*XyA~bJ/cČK2`ZZ{>ހox '_W 8!S:,Սx oYl(~s㉾yhʮd% тCxvv]GRۺ)PFFE3k=Ai!Tq_FN \؅e Q"  9 /Ea&W'8³ ձ7zkhEmV؊׳v-HyS#DABIŘ$23~cK= m2Ojm\t_@~܆GjiѪȮQ^Xj~*$R~>"oA=vH>5qԠZMq4%kvr=prJbDMc PIbpe׬'Mg*zw+) խ:00\0TT_W3$v8NLf1Y//T^zuA"#nŎ]бlBP6?u/V~gZO- )9v$4w"yDKrlݼLj<0g2W rKHL,zq4V*Hd4ejo㙹WzN$3 DD:2pJ+yIl-bEJ0m^_)A%2cp_a0HYo PrT-YQٔ$>)iA'rP4x'lC{5d~wѓ32aŤ0BB-2qǖCT ?1r6m:ȡ6-j"6%5g˶K݄&$p>Sf`:dx˞ ",ɭ XJ- wOA^Jgߪ^?T3*~Qoe>q [4[HyLgA_D7nL9`ӌ'ٶ@ 9>jmdV;Eьm'DQD*M,Ϊ\.#M \}TY0c`*Q:s~Y~)Eo7V f$>]~N3rIY]gEb{`ETrcH=┓ADq"Y k`iNqb˯4:FO-yü Уgr }5ߟG,sE_E@=w?զ{ ?׉g0 Eix\:Y?!Jh3 M~۹XZ;q ^%jKKOjpM+2Ipgǁ R<sg"҅R-VOnz="CW ' 믶ϥx(r+Gm# m+asNk{1E]Jf; hk3;H :"}1t֗@OE2pƶ%_IןЕ!eΕծ²hLm rt[ d2 67;agGdhZs9\_VqP,%~K E,ʟ ےE; (`7LgFkz zfu%frQdO| uR),|2eS{8벙CbU]B}l3sÅg%_'r>U! Z?rp@neo<4-&NY塊<.`dc; <3TƄlE Z>~r>nf Px@`.0)'\ Mc~?\b*/?T6J6X2_ks82/l+KT3j ,/۠"y&bBfv|Qrs1^C'DuG>~*t\@NŚv?XDnF ;:;IooU`5a2.UZj;٬yD.sF#yҗ$om;;-E;8_r.OrVaU9J 4džDtXܬ@\GF4߶oWJ!^n+ Jl;'3K#ῷsBÄfQ1@~S<u749(hȆ@C]MIoe{yȀ}mcAB:Ut nKA.ͬII䥻)kD>*M0z$%} ~;43QPz=o|HAKET|ޮ7C{#cG-9S=4J815޲B4 RXK9V[דd ?H7d%Ӳ&әp2BxU>ASl",oЯ4.S: [~?Gc[W$(l Wt$U4h N߫Oȹ)7xOba֞hB#b:L5rM-CؽApp~t9K,Mzia32ӌ>~*-*&UƠ;Y)(>yrPcQEkDh-Hr[`iݨ3J!@zRY^UY֪Uډ]ȴPqXl2pڗr, _H),O9:PqPLk4hwa@u3hIaFUha$1rz;՛F-QYfnHkĥ_$s2q^Z.eT5ۀ:`YԺ7#("H$;A:r\DRə&pxC jq&Oyb$YdZwTD+ t5 .tWFWDU_.Q`l> 2f7(DPꃮO Ѓ};S- VnqX,ڟ6dm8?AQj wd>7$LX}"G%;hedK: *s @u]󃏨#Gx %9 nc2wӉY_௙@=~&8mޗeˈK=нë=_qQ$qUoi*GtM7?- g踵5wc+ gY _}EebOB)ty>B+k'ff͙+C&u,䅶 CdI)d@?rtBɏIJ1e %nH8/u|{|g=bN*0!"@OΉf΀2d }\>(~}#J1{~_IRsY[lY\FԓOg'҃9+7YC)A#XV8R$*5ү}P=UuEጪ&"-YRU_sqF -J&1b>FK"\+A#xC lK)Y αbͫr[娳@L ȾDuza>]_關k2f/H6{#\9ܯ/aExWZ i(q+:i%ގ/9ßU7 hڌZߕB=WA%̶tDzQo=~Yk??CpJރtҏϔO)+,򪔣xO/޽}Y.%}ϜtY^wΥ wx#OBGV ( &*o\ QO*}%6>Uj ٚ7\uOTq1Pu'M~|I4DeQ6ZaH@|=\ڕDs%.!7ݟڤ@$g /`P )v&^.$ߑڮ ͦ$bj^?)1Ky<# ހ 5Y[ %LQ<J!C@yY^THAlRk"IGp\P%;RE n{t}9hdz6/Ѝ [)xwLcۢ+ǒ=hOMp;4̔<5V+#U,(毻2"H_=ś>I]t -lƺH0 ,i0| :)`BĞ#Lo^ KW N-֬rew ],zekZ\-` |:uݦP4\<&X-G1}χ܉D gX"\H~3h4pkJ(+bO/89e}.&yz>0,5i\73J[.h! %%sQwxR'iE%M8r>nYV t{#!KAji[yc{\fOȯptKrw<,^ص.9e$/jJ͎{/{$Wp!,+y β|0*, <3wғwXGܨ kb$S F{-sm18׆KY]@ff" >/`.6vMaf̄(>-=St88In>m, ,q&3/4FRw+BHis]v *h՟%"vJd 9"}艥uoBY#LqX do+ l/y6a51xWÅ|{VA$Q¾\Q5ZȶZ=cFzFBm8Z$&j[twV~fmITJжMmP,nA&[tpg2f2fkTDva&t79$j5,F:A0Y5Fˆ2jލ* g5w5_x (NU"W,m'c̀޶|D'J`+8l<ӳ?8p q TkG›0j6,Fj0SA(牙Mt[2k+浶۟WM*v8UQ5x (#!}NfF[bmO;JTIvޚS IA1Q&ihw=RU-/aV~8_!i*N{^v>Y|%|ƭvلq}U lqN7>-R-kI+cfXb~gOM_ Teo*+Ϊ<[8鈽JNEZwuhnsspxY x9D]zJYMC\s KBO`/ إ@ mɉFy7vZ7rzpVևɼ,GB.}&@f@tg/D>X%t!oGi>J2ʜwXr9-*G8%60}ā"3aGH\U$sO mʞ6&Ū \KDQo,8L3ҪGӗ['@,9 K2`{14A0m`,-9̛ ZpY8[>V8WK Nmҋ qh=8AZVK׽J)SD<:Y0)('~%j6.ױ/̭mAsZ č`/jCb:Q ܗR=%%+`5O+xojbҹf9N`(9vb0>R͋#=5]6?wb#-\{I(_6+HQ?C];eJ5it;,5N!~ӡN<#Ąk1Flۿa1w-Η)7J3F|ߝcdʙ "0S?M҃hAL+RXպFZ%[!ԋL:9| Mg绁5EdcGrfL8cpB)b= UEy'En0SF֨B\q88U: O‚Vo; zq0_S y<7n9lhR.m[8%&ư鉶p:osՅ = 9%rub@8喺;dwsw͹Iԁ&hPtv] %C0ou~cUvMȭgرF۹{BOͰݞz2Jnas.HdLf=2Cݲ^ˆa vd-?a˳Ju 潷 EAD P>B.>YåuH@X%81[Mh= :B{a !avbp`p1c#jlLpG5=1}U5fb[ wf+Dfz" o\ OK'lb+o/gc\ (.|^/CNTK[bR)cJf "ֶrOTqU{*2f,r3JأzQ;T{as(O~w81FG2y <_MvmwY}\.}⣝Lu!StPa xwX }p~eRTrTif8eq*was3*iVҥ;\9=E,1EW9ޘUY㼥3xTp L`&mmd >Wo}@o=Q3Y"dG>uRY%az=x~I".QTM| UٗߧuY+_㏧Bky V9bÎF. JEbI0 U9*vRVRW4FKجЩ [3Eg#筏aKYOt0߷Jm:dk+0Ø6\T #I*TJ ˡ͕l evQMX:( NX7BYW9wuroŽ]LijorxIBd˫ }깵pR PxcI,g+ćd X-")>GchǸY: s+}cL v3w o>\s|r=Ȃ$ϳ'2((Ap#7u5?؇6=S+\c]~ oGuLe`LƟodf| \uC@gZʵre .I$_:aŤa]1ʈ4=T@y(ЃD P}Rt!~+|kIbӽ8^"cvcJ+ݕV|hh;=ou-q ، i81%V egS]WcuKhݤ@5*ɚɖp҇ e+n_ICkp/m4kO!Etm8Ƿ~\0&fA^d)-SPfTd* g.rj$ z:aPɖVa6.I=E}ZpKkJϲc+3qV[ΗMS5a7JI߸!q7%t.v06C0cmbдoR+ڢ<Ջ2*J*s`R\['z01 uIXZ8$n&REi&|b0K#:(H S/ٿ_J cs,3zf@{| 1trFх{ypM?, ^ixZ1$JL&=HL 7$*2_)*w;&˜~pdm]85=| zV4ď:zWNBOAb,Tжb)Hn7?mjŷ" )-̜icrVey$-ܐQS1.X^4V݀e! Jc0\:e~lݟ|,dL;ܵzfExi%kBl呿srU8ʄNTG3»k-ڵw:Bz)QVwTtx@(t!}2dk'xGB*ȱahΛ?H"0U],x { '9(n)YQUȕ{'f72a ATj~AmfjGhoNcZˊkGd[-Ѝi2)+fFjsi !OH˓\M.%xz(#/{~SxT..R`RT)( @a/n>6sց =w3U0qS =rur,ԗJ") s.<9\ "urd"pc~o2cuZ+k6lV ծxpӜ`!O[ys8{r~n;F|=I9ި\x Ԕ}Kǡf[!qhjtȁ]K!Q"!~DFe+/ɎMD&l<8Z5nFLU4Xab~A_9Pj뿏sde+qMtrJbbZ4 KYT ROO7Q @+ 7q!@_ NshIlD#H^zx~`h7ˣ>>X0BSu FZH3fyH{<9-D/1(}u D3jmp]ȫ(bI5)1⃟k`iDpKw&4n?5 y^lE"aK-A7hԭ%sto -\>q`ҶRIWA\|_@U31$WpbXN*q@' ?je]c2ZFy[(V@`nA*>C): @)쮣O)r{ ۳]P]?Hb2ӑDx(__~oh}'&sFo,o+QBt>}WcDpxևn&+lAszTlev3Eo~tM+BbgCb#[@O75>Y@6ibvqGVBB =|~-b6c^Mw۶j1Aԟ[hCKS /6q :텾8zvh %>]:6K&ff\ř⥶UZ"Ub, &(&Di6ƀc|r\iL#*~Ŀ*"9֩ݶ\9'i3TO`(߿#Llff5F)+ʥpOiP%;&~szf2a>}yyb>JGV$qYA'AWT KLimڒ.h+uβt\,(kR\x<4³6dX# `=0^꣍DWMo5ELY>~G3} >^F5K~3KV}ca;(U ϬﳋPo) ,C2S2 uE_#S9BLǎѿrg8ϱcgE~F8h4 37B:JW1q6%!pN0z+qJ3}+.֥f4ȻR5B.6:ѭx/O `V >Jc 2z}`"Ybv҅Ș3\ZCA̴3bS5-)sp×`; jd´ӴPrfi΍O}hw;"YQ2B/"DpMͷaPLr#E?gZ⢺'?DO~6=~.TI^%[{R(kp߱%%ku !N~d_/%A}^GuVUBS(N82<<|ҥ&?FD+ qSS54(;iݛ+ VBNjt 9ag8Uً:8Hh N"i6bʻ |`w^5jp~(:"Hk&Z"v;٪rBadgLT8|X:C/'0aF,Eڼ )ji=)Ź4o'!lWnK {7[~IsnB-fWaaCJ1{R({qћu>cqXJ> x%SbhȂՙV7`IcoC̅>ſ=:рj pOINEovވIٙuR ˠ k߻CjYUw-ʂ-j37 =7ڡQ;9GvpZ!7,q$k$za;h(zS͑ Vgj>H0ִEH</OA"/fPzN|BH޻S3+Lc<'fu,xZf%#wk2LI-T&Z[J -s{q׆MvI;I\DRU[0UVeM [|WHVxwaYp '%h:0Ӟ}]ݞh]!E];@k:SD|S;~ԅV4O JjjI"}7#l CC ; .+%X]! ճ8 kK:0;_ӡc|[3ovj{ML9\[!Za_]n/ sﻕbyߚ?^l Xgn$Tsn7#7o /3Ң2M2̺UTzfYsT>1MXYc3_"QZCO˔ZGrHN 0n]0[ Dfp#AK:Fp x}v8Q%ȄHh@7]:{:%Zz}J=n-~@@0|/9AOhOhR& wA tN2K'Bp6Ǧz5bs%*W71zb$i͍[ɬ7By|USi~uK $e?`v8EBqnöhj4#2[Z-vI ~vd]at]"xg+3 _5nb+e@EI|'cH׾!a`I*a .3Ě h \C8壪}vqO^3iAVFbp JŶJ^90tcVWꅔh/(i^'P &)YVif>C#N0D!g Ac{3ީf!x>eyg^i6ӓ@E5dU|dԾ"ѨR{+ K&'| ]![z-y+!P 0aDZt_ը،$W 򂟬g* }'ze:c qQ_@ T$@x#OA%5qX-An56-HB廙匸NZ\nxt?X(0|RƐ}w؆/ʠrr @*9BT@cѐ8CKO0Nӫ"Ұ?$uUMQG25?Vg.M>J('`ᐟZf3%!Hf$MlH˖= r2}!")ڙkɏP?p. {nnYЀ[)a@#W9 Gk: 퐿-j "0rl HRvuʄBʯY;@w3_xDQ#.ZcED zCHώn5قNrؙIn_o#ګڀ(YX"g4؀O WRᛇo`>qaTY+Q2yGgp҃y<ƒY触H{h5r *h֏vBCken,ZX8{W<v!Uْ!`O;XYØ\͎],1c,wT<4Z0A^Zuka) /7-2&AuãGL,z|pWgldAʼnZ="RV+eCq=% %9$w^Umsw0*ew`R^%L+&hfPPHH Z'yaI ),% C<n@DxK8mH|5 w/a 1B Eo޳mu0v3A}bHU2TD5j98Niwc6'Zc.qG Xpfbk|k(6.6=&c|@LW.wL&#N/p ylq v|ZjAn?ZИ Um<Ò+%\k9(@S/]FJ((kbd6$#!;]7v0dmwklh 7}6le">-j_ʃ%U'^r 6 kz1%lDVeJ^ Rҹ dd'K u }e%WDKKrCABOgK!7*V Th]w?AD5no<D;Q'NXte3N VE,ԇ*OZƻۚE4.y|F@!`}SN;#guperU߉1cD_7~! ,z9n=ElƈT5KH dCbсQPˆ8q%z s6Y۔CZÒ#C1dObiye9@$yz6-+'Gd= ̄"J3{ 42uwOȪ+hTT FJWD.%ia({snc0m?pK[%HCqO#[7ʃTTܔ[DKP lJ]v_WWMrnHmWþNs|2V 6cbE0>NQdzuzڋ9o+**VK&mC$E kS\6g?'Zf-"';<xZ%ID~pw޸O[|K$R;hš:& 5QI1 ,jgF5 s[~?U='+lzpcZ0=3 -lA &)y(WPT}jlŧ7$^CGW%bQau>Vq(q(grx7#Q+]_S){qKm'4#;YnS>1{,^;I(!>y]x[W0RCۏ#H֟&'m&GuH9cby^ щ8L\>"IfDjOУ[E`3'uY _r 4!JIF*R"?JjQ"(bxY耜s:P@8W:cM:ss[ԙǃCG_L0xKwTXooIXh!|'"0*cmݮIfyf>WJ!qL$zWLӍ/URBd6;>3;"߶q6F1'qzM U͵Xs. u5Gux Sxd U8Ț{"& pUtmߝR̰8bfnu0]H3u% Pdo28I4gr hk` J8~1r!ELw1W $×fX eoz}tHAIZx`Kf6ε{^\8ݤ**' cfo+< w wxv(q*Mtz )5eiAy\ʃ:]2=a4Ksc?M~Fww`7$5 KXoyv̐XYAB9R~>ڌ$hRPKQS@y M5m'u\a2FC b *M!GZ Δn9A *,NQB;idM~h yO::{Hʋzhe:yXS~ME}@dH fO:1¥Xm>.Py,E˔o&W&O8&&~Ҿ׆j6XSC+n0Fh.Z?;~3,iT d:vw΄L>$o pv~iR1͚"-=-=܆?rCNMfeYgMׅT`67\΁: G-S!7}*-Ю&? :b.cqlf7H6S?1+H|D`͠yw%3BDH(`ap!7]V~mwhp8eԧ, 83jHDn$ums ?*犿@2Aj*&¢u:mͳm֑qp=Ѩ+,HvKo[W/p= f6km>\5y}W! ^+ Yl/?DuϱyH֙f5Shk$P;[Y$vFl 5wT.D}00 єk&9zCه2xC93iajT$?[;$ڻz WP+Oy_6!/Bk E1@0oFQG &HsBh+r3/i$PX{.~_ $yW%bGU26&R>8|OK%^FHQb#+쎠Q &*n|Hvj"ei8ǞREQsF.j։7lJDA6ɢ)})qPIl`I Is4,$*5 NO#:vTʻky'$rA͸S8l0+Ţ?K_j]l#]/^v O1;x)NUS3"1#/_VMTJ;? ^;Eܜ>&ץ6EFgy"ə؊˸ѴwVj+,WEs95ErA /|} WB(8{!䞜ڭkq}vplZ/Bna<G/Hkk>Tk}0i4Yakkg;v]BH /rYҝk4\b}X~C$ape]az#}'dwh;P݊esy縱v|>($I~lOdBLMj*ZΥ}-ԑRaO\ ]=O3Yey)mSI8XlItsqw;aY-ѸD"0\S[ў ;'՘q3o+(΋%& I~aDd#Ou /o~LW7$6h tbI Q7Z0'|*1Gz'\!6PQD֏8c:u1# EmiU+{[ Sۊ&&v:0U+iq"W[TvAIuJV?m]brB u7i֘19@4g‰Ry,}4kxn:|gyq _&#D_ JI0hrR>GnXIf,DA2y}r W ^?{QPͶX|8H[c Y JpE䭴!A?|``9ܵEFάxH{* CC-?Lsa1hTrJ =W{E }E$÷=5,^!7RJ֖5F@^!%@{v14ɞ.^넙1 @Y3!:_$@S,7B}3I_e"d17!C=Eet I-6^@HTRK]w|^[ى8E;wGCOc6[zq]~#zuD/cr^,;# U'2` !w&,^1jO^"Ef)*%Gzoo9g'i-W@{V% a~)(Hk, sژ(/T-sy{w[,0l7tO!aU Æ3ȿzIZTr7gޯVkx;rxh^>؃Y >K9`ӛs! <1.=@eqnDLm≌"=I蓞Ls8 )0`xjjx1fbKrz+0v){ADA\5Մvr{=!ھHW+2"\N"~6rXJ.=9tMfy/9  Z@`λ8 o=+ӝ@A"׺s.*OIo7ߢcDIpEDMPqBtTtOsM9׈pqb?JҭbRz.c Mx@`o'颍Ћ{lC%=0xJdBW*Rm^5ܙYF0Ln^|3n=8@ViJkl# ՟6&yC-]t&TQ}BMNkys.8 Yo?/POlؐeڴJ as H'Zq.le%xe8y phٽo:PTl\# _pI9ɃIQ.hFaޅrqg+ Vk$8'r2\}hS!?(8*s f"5 ʼavdZL :D}n`WY{cصNy|(p__8Gj,$nO^Rf'eg1IKirpQ<rs>3MMا)Tʃu ')GugJ{䐇tϹESVlyE63"&~jE|IIh)$3vG*n}S"\vW'aM()@O(\aW\|hqLdlg,TcZ,~v-9NUcN9uB9g_ݍ/Xp5&@@@+ywIS*\g9if_yܐ'!ӌSpAƁ@yDt|O#֫@ 6R~62ЫEYe:kjKXKg z7\;ԩvry~e+Zbr^#_u_d(-56_/pv_Ĩ~(KCVclr0gP?bνYA|߭ե/.zY)%FM8F'%3WlH'Kو۶TB0NRPvE=@S`'u (77c/g y[L$V5LUBMCZuh.8Hwkw?; `[cD`I^]Z@3b`hdz—ɾq0[pygݵ㋐t(dN[dm84ql zƞ*TJipsgeL3R K 惄vyaQW/$bGEzv P#py[сհM:9š2xԪ/˔ *1c[3txVcm/q'B"VSu7@_͉^[F\UI|&I EmdҬ>'~s$j uX~QkzOo9 NR\%m8|:yՄtj)XC[%R+   =hv2rzfV[!ۻff]/;j~~vkʣdk= 8 Χ jd^cX/kݗ j1H|Ay`B@&?G56hK<ЁzUTxfՆ¹ lG>9k& 1\%%,{Dmh/ũ4 dԽ|$%$Cl<話H@Q 2ܝY|V ֦й9z3iZ7%`|Օi*sL}^:uH›R V݀04XnSO&@VOeH#|(jߍs0`;ح)] }f!]"a0h/W«ʫ^@:BWp!̋6k.7LkNEpRTkD+^A'օ4#ϙ]s7E>E6[~USJ&hPb7~q`}˃=q d{uhokeF6͋* ǵ|Vw`ˣ`zq&xC }uևQKu-4yxPWx5< B⍺XVgչZZty]EX4;5ɫ oՌg8DJnlxi֒ (uO|xj Be͂j:U8{?%ʣi/ZVKIxHdhD( 4}SkuUEir%xuX,&{sp!KM^-*Gh8u&_U룸:p zWhw^f9J~ӎ8{+<Ƣ^S"an".4 ]!1L,y"Ӌ|@W ap<,w BDǾmk[]^>`jXw$yQ*{+JY'9i̖a@CQ'uJrX n8)44[-G7$mrβQĀ7~ɺy"AJ;/8|[!Zm$޳p?^Vw1M[LGIV pR/_SW%i zƝ D6v 73"V^p3 "bKT@@ۢAPd 4Sb[?K“vm^Ot)}%f]/ފ^=顮tsf (l𹉺"m)2E^`M'J23Z:Lo̭=x plֱb(8K!JLOzLطmmkP߭`,W&eGRo+h#.=Ŗ2Ce!zׂ8vlPG+a۬46G| >YV:ؑE*38=cU^qh7^Nr͖QbA4qkR93 U0`~MHK+'; y;#3'"gi 4N?r 3rnٛ!8+q_ig29Z9vMJg_:c0ҸV{NP3g];@sT6Q |lmOL=Om jѵo=_1n͋[A!GO|Mq ȭ=$ dF;<+txLY 7tF:Sr*i7 ['}5FnRHǑq gJ;W&F1psp}:&]"'ۚT*;{ Rf #k^Vt1''۸NͰEG#JO ?O H#pZ[Y59EG~!E\܉]`'ym+p"瘿9#5šXABd=^Mz8W|83 5'R#>8 (YOH-US8Rn.C5XB{D JXF({st u~MWM EFVt(!R[ mpLY쑣ra#ȷ*AһZd8%c Fzr~n /wg[gV 4c`"LJYM-\UNfzPu6TC?F!8FE"FUtg&L$2ro@OԳ$>TlEc)x',ڹ'_A@!$~9`cd6 T]SLE[sub''8(`l]V-Bx>48$;_`!Sia<;?sK#j=;UːP{IdĎ ʮ%? %(ub@ O$2][g“C@A fR$$:˱k&Ou?_6hLEw)/C*BpYV"#{uTt_D₳=`C|>d8,*:aKaAG;"S8f[>a_IԄ9JjFH>gVΠCZ ׋~7aiLi5h5U*3,zFh +_]o[B ՚u1iwehRNzjel_")t jb{3!_ՊOpDe738p߯}`nEhlEX}F-sXs|[k ^]E>E\]7`>1P^&̩)^UQ>HլP$O0DoyZF,9&~ ~A=ߴTqerCTclLJАcYkS @Rh$#΄z\nS#>ԭԬ#EA%TqNCrY*8Gu$ȻI 8HQI/ͣY2V}17yg%al8ٕhsAZo yкCډ?wE2P[Z?% eBSjYSI߀*j DiCԘaV98 9XY4̕h4"oH,dItw[XXAM/V7_tgp/0)$TT,HKYg JN?p5[y>0g؎,5@ZlZ/+h]I?n)xh޴uBBFql_cx, Ln]Kr̫,af}Y6_ę#0ؕ#rİ KQ9B '<.\9`CM1n~R(k}8T !Bs}{Txf:Z]#8Z-͌sޝ'Ǫ3,3 tT"fNwNQj/-Xhȳ˥WB)Ԗq }t 0"3H.hKWo,TV"8ӳT9F.$68Hry?1b3B .ȏʘIW?V](;zEP38V7 =6YS'|j/ ?alEX X"1ڲVꎗq>~>юd|#u9I4J"[W:W4#(eb/`GcWc1nԷqwA +眮.Mӕ"һf4|B곚<8v8<}Lah84&{I3$֚fj=]4{Y*|KfL We'قNAO`%kɁ7a1lMQ:l 3ҘǁQ*u]{LVz2t*DK-NiFepN~5$-.c'ΧZEv|L ]Pc(D_N7MDskoVAT\Si޳J\]?; #$sɬyxs}x74-a!?z88dso1-z|9tE܇s gQGJDG}&6GD {ƞDn xQc`:*n xd4VƷ|&5+]oP w˦ -M`I2N 1 8쥹# G:IVJ naMsa/'ff㣱儶e1 _ţ?ԷSCGuQ=0mZk݇l:fp2N1B?s{d~ܸ}Uol$-`.ҝE5FX~A)MRyrCAc5a7RDT1yAٚP4m`:[{K;r#k= WqрH m b*8MK.^I,Ϭ?Q|*s=¸c- դ4f!.޸g)c'Wm?ˉ/U"G{kz}y4W77YMNR-fXL /JWt\{(^MDE?2IK瀋$K"ZXwN}ÖrstW3U*Nc}&Ռtk"ӌ ?VZе3.}aF;β+u'!Nbr臂2CB׃1!'SX U&x*ؠqy'}[V^Fqʉ eMŞ4A_5̭S8he3 dzGGh- fV~,'݆RmwcDVdܳ%Y gJ3 C߮9k|7>v&+<$7Nߠ8HG#xTB|wyZ]-l Jv3FΧ?""\@R?g{AX !CiUAGAﯯ7QZO8-My/",׻2Oj(BhespwZž+4փ~g |^~eknn» 'ȆuV~Hyŋ~1FGj1+"7-)Wd0\`ėH[߈)3EA_pf U`+œ2< ܑw lsd Zw5R:BQ.7*}f{`uE㽆?BTWW'r p[Q'>S%{M^1TY!{k/S08WR%.6̑ S|'(ljYt۟hg}{0QZ@XNF΂N2Ж+J&-Db4_(L&10Uv^E]%`[Bv(ێjݬ =e3)?W[\{ f%{3ΐ-m>7Y\c7c#VzuQ-&[ PME^\$usܾI9z`6N;:~<|n;b[ZV6)*;ac2/=~+z29| :p@.r2" y%(Uoȵ"G;'ŦOp'd͎mJbƜ:qU}7 ү-/:#zLsjBS'>k@~NSoo9ƳX̜Hdg7b8-'iup/Wll`HŁZ 5%HSdo4*~Ke~ӥg`-?K^P9Z l=@H4@-5WM:c'䕑i>ehcIzܿ'}j]jْBV]-1W/q|vi-mg6̇Dc˟<-|$O[KVmd~MPABQILZQXK$#P+/ e>O{N3XʟD+QUy:gJP=15P!B$[3 Hu]%;~s% %~W<)ڒ#7eCn,K 2ݹ\SDx?*-)!;J_N0 &aKcpL=UsyP:.̣p&\ 4>kj:VH".HMƟɓKؖN*>J8l(ng")-"LY+GΟ1Cq@ɯXIL3 2O<մT|GrC9AQceI0߾櫾TCl¢diX]r$Ν~BATI 3}+qR{EItLs. LWXCj%HCmX-n -ܣCNXzsBO~ehRUIc^٪D򊸿-_.d!Xt^)"*0:b0nXߌTr;4>"3OjBM? &~ XJmAN!*icf W>a5 %C?, inkIJ|2Sxܐljƚ69x7rS@\Y7sT8(J.*xjL4L0%WWg#S$ORj3 [ oVC7LK9EW˛=J5qt#v '@ \0`t B:A39W/_(Y.P_V#= :8b"{!GWxtnJ;MiPgPz0%Sآ&Wɜh Nr@$ 4’BP QLz_y}9m|X_{&`3#dž1..7K$Tv>t.*^:Uز3۹&`wm=hSy G֡␖d@I>үOyX P|S{V? x)nV>F[E% z:C%G 0Dtᵽ/l ؕ&&sDtAܬ歷3Ou<0\Y`*1ui+Qjv\ h lmq\Nj[4Y9Y4jc'ILm?QplH_:=Ӌz$x y@\F' /q{}]*Ofi14 fe/}q+ KWFO_t4~Fw{~T/C331>˞ΊGՠ.gazaHG'Dw4H:DI$Ag"+Qm˴MFXIzB5= 'A[ΝbBP}@^dO0(TjDK*+` 1mIVr9N 4nc.V F TH}쬘|\i~cqu"3u!hu$Mzy Ž:j6$u ˥}ٴQ*dT$9xh;i\<`r:KMqYBcnK8X}Ģ)MkL{Tv> F|tV ˺2WUx2{M%&jBZMB2 KEw܏t&J]H|G%T9g{(ÁEB4|MHg#l\4f,ӭmfTt3?0hUI t>=vֽ.9x|ts2cNcD>N OC}r2}+W &6u E@fk k>ȍ*_!^w"/)R?z@`8~o1;*$Q2F-@T#ɍ"Wb 6~ccZq8 g8  F#"ӟ_Fݩ/۴Y6D -=G3MIՓ; bH<5.իf!4)5E֒Ih[9 =ǍKfyc6ِ S# Rml\mƨS& ܘ bQ:pgLgcţki;0[[ze>X?g:eAajT=el1[QғfnqzQ_ꪞDj@vϐ{=`\%fx_YɱYѯGsh>TUa_:Xy}5Fͪ?TBVt:r|jn"1ksVfzmcfE4|x3~}? * 쏪O_V]>,]gE sE<%0e2M\B1o hӹCWD챁yPBu}‡p;2㬔F"n[Id4*PBhC;@k)|MN`'[6FPփY.S!GnG'9j@Ո?xuhx0vWOK)vweP4|ntNၬgxj,{\#@ >e&tjRzIo_^PIQШ-1}E-P.ID`$@kڟ:Gw( ey =7I&5lD^kH6tl&7 ss5>zO"&O{N뵜p(\.`F2zAL3vv(_P K:ޥ峅~54jzu!'+V'/..@yp%sC1ul Ь!y*dT1sT2Ll12W3Ka-qv\F3p(g< RxS6}+qK o Q ?1ɆNαL%`{5+M|ŗKYӎչF=P~a]"$Mt#%cIX^ #Y,9U\4 ֺ[Nwȅz)!#&]N_$BWp34+lᶼZeVo؟^*>ζgTJAsJ} |oyX,OKkM &k] r Pi׃ ufJ&)(/DŲ[<֝;孋OXx?kFkeZdal>:mI`y=ՅWs؝:1meN++]: ei@]1^Qy`[fovf3_Y4&vA~tre*ma7l^Ѝl1amrS72ac7}󪨠\G%~^8u4a@1)D6U-vK8 &2 B FS]!DdX$p/Oŏ5'%o!4q=*>qa™O'E"{8Ԏ?ԙ!Ոa{ \GHIR++mXpgX;- w]8JZ;y[t5m5v(C{6kwZ @ Wg\. T31$>6d:jЋs cLi>%,>uGcH?eBpUzI $^a o6/I޿ -w뜿m4@0WD!GO| #q8!ԪQٵc GaT 6YV'`2ޥFsu@р R‡uUipDrذ;_sFf( cnXJYT:O 0]/J1̃vc~\vI]Q> J.74C,9˥`XL1ǵà eWT;Zt0#GR:P0n]J#0s٠AgKE"=YxtΉA,3/ jTN=fRG:zG߸KWt>LёZ2vD@dѿ~18ngPG\Zqb> =->{Vwu/f+N^drT 8KyۖD&;fF8w U}9Z.˗r/{[5$[ek9ֵ|P{NIgXpx?TEc+-Ä~uz3x`5FO8ބO{ۖTj0!^*LEc5bM(dsA2˛/.mfDJ ܓAfW/tvik33Ү=!3RjAYlbRT7Gn#[ylqpb'XK泆sjZRh@jB$;xu隲C:Yp*BĮK(SYCer[!t렪w=#+h yU'y QbFS.`{*1䝂<+:k9-pv7fO E( .DY&*j M>6\M/c@ϽE|:G M˕PO~&{QTk[;r:⭂J':3$O?й.7ʭ\Dι=ٳ6i:"DCã~Ǒr to>% HrΤV/ $lϗjZJ( !B C$'L6xh x=H*k+k t*-`$%3Fdb[icP$j?qqkcZ?staLe@Ds7w4wtl[!~PD{־J>ȁ}T^ &b9~ =H7pgZk<]7H/YXI< Ua;-@़di^ a _K}HƝUz]2:!v|2uW幬$w)CG^#|CZ$4hZt jg51?m#r鹅kST]<tKwO It-{Q9;v>y屈k8:{=ll$zaCk%l7-@tsNRY|@ D^X ;3|+lQ'G#.nwnG0(İEܫ~%_NYCyoԺb:Րp/x15r0 #Q/WTa1hƛE< PXj|\eEdVf@)kr|4xX |!DgPsdА4̖ѳHw ">V`|Ғ'yKaSTU2,'!&n;)$-<7*P]y俴^DV4Nx%9%W'G$I]CSEjɁ ĩˈX{1Pƛ_c-l-{Y:}  Y 3kd|<\gxR n3`9P_]’pэ`$4݁LikBY>kM!.dnVdb1BBl\'ZЊ'wnxF] b(o+< rĝ8^n,U4Qmgko&(4T`t~1ǁ*V_lLnE"!guLfsX mng0tvV{3=1gZObt- nm̓h,G9";߳namj~dw%榃r/ű>Ve_qΖ[s7atpiߎݑx2M2$Y" xaj`\ ph4^1GkaE=#\p Vl&ф],gBS&&cfYHwnOI$SqA𻫧xc ݖ?~qKtF`E=8Fr1ldtGzÆ0zs њ$i"%9+Eh@)E]d W~ʁXilvˁ;aA\5ƳKGc< tw5lzG*#CN΂}J)32zls'aex(v4ܩ].LU“ܞ3SUێ,0#$ב?T7PRs9{OGߎɻ51{59iJu/S(m]hRK%V[OAg<" @G4Eup"$"%Ӭ`2+U:Lj ~oKco7X$ug:<IM9816\s&L;Dɦ?*+ e )F;""VFdU&,M%\$:ZO5J-d:!>8EZ44aE}h9h'|+Rf^^NC\POB*86cn=N \GB@czmu@'\"!' ۷U# bUJSֺjqgaGƹrk꫕"_]X),b@`)p`ex.MH;. ˂j= &H6mcd:䆜vUfK5eŗǚF_ހ={قĘu뱈8ǑgF䷰&2;>#R૬V]s(#®ʴ 匴]{XjGVOΦ3VGpW_2"BOAoaoúqk3Cd Odqj !<7?uDԉF$^tWvsE:yJެGm>M'5GN#Yh.{m~ B@ƭP`PHM*Ou'y{1PyonLEW?|Lcdyhk:ߞuzeTxLJtɁϦ.n-sF<).G2Ը=eRhp34m:2|TE퍰l=Εi;_5 epI? 9Wϼ`aBV҅tx"* l PO"fd1bXݹ0n-DX9;}M[ug}ʅVQvF6%:=Px^,H}!u$YoVLr aMtnS<+t\T=Uy`|n!Th"D:mpȿo@{lUØ"H3t!3Xj]1RcQM3bv|b+Kik#&9qvڼVhpt[p&eрmp%8VwZY.)$ra|զs_ +p&7םɐm|8~i0jGrl<s42YsnNY lrL>}1U پ\mB*֐|)p00A7#n]r*vU< b 6fHl[Wwy4ЩB nzXW|kЭFbܒ8L%᮳@jcWm\^$v3Bz w^ LW ,}o=* |LokO.Dp% $3w9>6:M:Dג:BLtT@3B%`=ۍ"r,IkaʲS! tqU+q#(-F}emd2)Ek,'P@8%+mo{_U Wj09{wtbVs"2u6U){&u22AAfLJt~Q ?ܩ] @CƱp *ql!WO)I&}lZ8"I]+5-)G /޲GauH;6bƳ <"y?1)vP.81N/{MT2{PNtO""PH Zh|sX`Ԓ 9df_زw<5⠶y @(z"DGLl`s?,f*^i{A{L=5d#%_W)x,X[g]P_Rf}ϲժKKNl4'Gϣ-vo[Kw ^ʖ ^Ypg.&*vh.0j ͘qt$d.s4zj"^{\+ȧeL<(Ť#]l7>zMKΩ-Q֯nN>Ǖ6̺$ev YVq3hg{#. lyI~<&o5#n5>p*/ "ۮe˧DX6#6\-IhO@<+ՙī=mR `pۘ"f!@?a!&{w)2 :4P:i~yE?yh{h[=|hMr!"r]* W\{;k$L)JgJf}+˽T|蟯@/W|nw1OU;R򘫕?>)GklrZ,YD2θ/I3V%ʮmJqxgEHA.蠰 \K?ӟS5E_Z_m@B50JH(]}x8uՅ}o6&s&KU `Sg|[葽1ƑѷNm/DRwFuQ_\&?\fKn;UT waWܧjVV6E}9=R.أKԮtB) :d yy]P-T\ltxsYᰜLm]!VFHֻĩҚ븪Xj 1>h^_Alp V\r#WFKB6+ᶼ9}3Ň90]W¡cbfT`$]VDʢt0 PPJAqKol}h/ 'aiT ™2=hSvSn3U' Irq&ShX*VC. \Bg=G21zB.rHltBj[L7vDOs(RbyqIJq nP5Tc.pF|e&x%fFR;3 &kȪc:#:Ss>߁kV2ϯrZή%,}]<%]_|ٲ3wN8}JDeQN,S*JR!zmp7t$%DR YA3u)A_}lr|qr뎑"6 Iٴr$^jfMLl7k^+rȴ Y˃5Iv8 AәS $Sfi4b^{#Zl/^XwS}$"g|p$^WƧTa0Ve+u&J̅ywQFC,.*y-=ZΡ-f N7K5a7~ 1&(qQkUrG1GO=978_ʺƑwʨQ8*\p1l4){2O~,(&yl>sw>ͥNNUHEe,$ѳEG.xSnjq͈㽕rYr9/t fckfO))zf kyhORg9gRYzM <+˩Е|:v_q6Bnjh.y7 ߋ3d.4*W{9= cj)y?`~6yp&)UQ5hhҨ?) 4xw@ETz}Ա6 N^ (mq#HOz䜗D l/H>ʲ^vÚ)IOz3$-JI8vCodMg)LTI@P'XyЃ8 j:qQ{nH^4>є6ϫd ZYj(+hHg  bLLN,w'rZOҽ$'olOb 5cg%B UsO~r(dHV̪#1IȾlVuYKb'#ldadom[w9CjT܅f4h&a:飙q>'S'5xcH$0UE6fW&5E;Ct:os˕x^ 2AVQ8X&qvooYb9 ^:ӢڋRLah5}r(חER!lSpձ5C''7Z?}H76ϤPxh-95EE5I#q jY~g4n K8)~ 0$VL,=:7t_T)ǚ_ b?7Ǥhew+~Wau5A:!i`GN`G_3 lTL~d_/vod8 < ҽG#Vb[K59eʐ%ITZY=}?գJԇK]#[*X%7oh4k_8=Jr7p ?%SmvudCCmqos&[,tE4$-KNǿ#䵖/;~Kì-:})Jc7\&W؇ʥD ѽmRpo=D Jp-V@IVWAV D1THՒ^mxoq~U'L2;`-y!W7џ67kFdqҕǒke1^&*Jc@٨Ye8tvVVMJڷ9vo@<@H]_g502D; 9'_j-s_OyOm篺Gfx "7â.i#mS1 q$#&Y*%(CUѵ0')a76358\^8џ ZN["8:C6Rў5mJKIELWXBt_g!#J\ݏ~hq\u# ʵg5NpzgXo[x(q1t+T8e)!nTߣN`}PB^hG8dSW ?Ks5_lmSLv%&CQȡ~z1w+6 ʕQgi;ӣ[!wzEvW>k<;#>iX졁8#:,,wP3_\#;y´lڑS`"#z(.t@̬ts-@eE YR0٪-4iO)VctLO]}[ \оX (e 76@t,vMu,dlR2.dj$O)I'dj0W^?b(QtG['4ďl`Tۢx\禷]= T9mH$gosn#Ba2ꍵhYi9zR'^&:EW*-J\z׸/oI宷mZ ѠϮal^vcG:{_hϥUKBfshXTJD̫+0jV6gis Q|Ss9"en(%1  V:.!$I6xܣ음9Pge_w$>L'}KvNC|gM/a"K̷WkwE.|VZTKO;1HgH`AulGą?BN'DK@ k\`h!kS<i! +Vw]g|M <)RFCW/ wD"?]jc(/38pԪRD`0,R +6ۡZ+:*C\e9w:}ugvx*Վ>J9@BJVƿji/huF#gB5V10-al5!1=+>m/Jp'IS/=%TJwyF6 ι@ iH?E&*fY`)$Swt́@bd54UaEnݤTKgpuG2&Some3 .cfb'X&u[b+F XiEc|w:cxtٕc?qcQЈ$!Bj2<ﲮg L%طg1I{fQFcD5`w/ …l_@ѬgG]azaƒv0bcɆȻ/Nի|3hc(x#|VsU^Z- oES׭*1ϾxhJ4]0冝9as=֊lX{P|É~:/~0띮@~P8Ī{$l~Ucq'$D!>br[Nj`.1'ȇ;Kʈwq0՚}iWJ, ^ypu'AySRbc>ò_Q4Yr2eD+ fRf[ o:YT+0,qY g@A%.G~dH{,qI lK '&q!IZcȁ rzZk{jhN )x "SމfJu\%Aޗְ3U)]ػF:jW%D%ρ)۬_^GvmPD9y^,y56EnxU @%^uac$%g6[ʏzo]՝7@PRg]ӧ=n܎J%]`؝ĔF(]?rcyF# J ʱtY< x*?pRP^А ڹټpڇ;_K Yzױ=gLq(B;&3%Q뀸[]x}><^.e’ ˜wzbÖZr4T9leɍ.8+"uWO̓Pp#k~w$/g"r^=̎RWq8UXZ}Gu geHiFyk>˥6 Ysq({eŌx ȚOO xg8JK~@gsM"m,('ld>ŰH*:N%K; q|ffi/H$ 0ؤq˦_5Y `dDt<~:(k7K( c=qcMdT8ɲY鍪1XC~7<7pʳnx,Ma.7@8?ilk™tQ^i{ d_*Ȼ;AqlC."U=4qt>Z5=T'$Eln˪3?N]DSopَw(~΀ þrD {:*UKr>S_ގey߬BJF|~mۮ˦ql1Z\%-ե'whv29y]cgga0H'oppEl qɊߺh&S3~6gfFdhsOTxs^,Ea%gB=20+`OzūWdJݓ,J>X8RDe-ΤQ\N󹅿[rbH;wrCrfCdBn.v5NښԨzxwyZR#'VKX*g1u+BC8Ż<,n4^8*.fزl\pھ0M nDR +MPz"+㹎UiK @sQ|JjV۸&$8/䋑_{n bc& ycEZ7^@H#{q=!̿٦%ȤVX ]LpSIA_)8@הBԀ"x\dF5@V:LT4 D"2 =3(l rT1w'#RHdh Wԕ jQØ&TWRX N#p*贎pp-9ZDS_\ė!2Z+͞p?Tu8x9PJق֣~icMz^ L j# &~Ҥ/Mi&_rAq*栳7H4~-׺׼fXK= Q ϿQ,3NJfwuF " 8N[-5˅|5.F .-AFrHK}pL&, @NW&{\09qJ /4uQ8V ) T3V1%4% y4/|y]#uJ ]$wѰQ&$#TNJ#,N}2|Iold|eOhqDklIlG6Tt'+ɌB4 oB;VM*|VApGBaN)rqc85-$7LHI:-X^xg%E)%.<4:Ih %iܘN_3[;nStAӵKu0ҏ-U%dCl &5gv"/[cJE,&.:G% 帖5Рh~ޒjjks*9:n޻r AYIcP9H6-y?WHFWkVZ^i,נÃYT(HSEK] S].C*>2d~SZN {dqH66v#%`Uu j9#A2>/-K)1q@_' pV/ f~d40ڒF>&HܻIqS&Zcmdyfs%=ʍ wf' 3;G9Ζ8+Qd-G|||%V!j8Ԉ=.tu* 'Ihau ãKRy!82EA]!pol8Glfm l!j$n iA⚃ԩe.jkBϟ})ӐM C>*RXS%F-@5dYjYe وN10_|8{U7U|Nja-9.it,ۑN)!iE@$׹f`Υ-T6d HUhՓ5нzQa Uʬ ĆgB a?t̃k v`)gSPpjT1NY1z=D)gҵh 3w 8L*عfHIu!;nyPo-T>ƢU]P)T_M'{>`|[ ۯ~cz XpjlWT8ѡ-f˫4"-,L$䧬3Ò!$ te¬{BRz1S= jʤ?2* JkOԑ?Ht`WuvYR(SB !F`oqdyܧMPxo7jwAֿx&O:(b ]|zZ7>➏Q.}%rf?XzY,-ћ+0cOf' 2nr g7WW D`ۯu,H"r)p+aw:@]50ǯj tqq‰s$|@P ^yǣW {UyAaS5TTxogW`qPΊ gltnǽtɠ $Q-$n> U#Hx$K{/ ӛ񚺌3TTC) [ cn}7wGI_?0ٞ$~*[@rylmR~?uȭ8lb̿T'%*Ldy4B9F+ltq?1r^Iիd8=w }v&9e7јdWՏGġi :%;3}1TxvRLHTU(3V)stZTwȩu'ć\[Nj6\ eUz T B{HE%e A<|*{f[(gDi+@ Pl\'XR(-W&Ē1x2&獤>R3ңFFP38y|ޙ׼1!Dt"Q$PR6TLfPhk8C @| 8u7&r4z--Y󫡹JZtn*6\0rŸeAUF٭)a{F\>P}у(J = ܴf>͑c+;Z%~Su0`Ulo\zV^_oOlvTOe9i$zЩr]Gp,3DnL-S#:@zWO +̈́XFf^f& .3̓`2k2{*uSwĆD<{2SZ']'%gg2YaIE7ERMfn+xP]P^vyF!:jN( 'f&؏5RU At + *p+P֥?^b8٨:sBH W(L.QSY"*Q E'mB'_ F#:kN2^ cGtAc;K}| U!:ט &"6XxeQtO lj_9w/ATۇ5zG'7fLe~}ĉn7^'P#Kղ(+GW\܏NO`xQsT0UW0zF ™^_kRry[h>rD7 ާN{*~q״b2֍*DڻXxg\U(d!޻;u~le8'焔z*h D)3Gባ2?! { llI TA5R3#tXNQca$mT+򐼧܇F!XN`CWzn|pI 4 W ND1` ^um;cEIjm l=Dzjm.-mKYs4n¨e>.PW6k>DU3Gz/e|6iI]8n/@'?-1@12_9#sLb `y y3B7yЧ(fDz}5)NbA$4 \NX7aE=V)IXRUMB ()eDν_kW(hcW(@!W<gHKm:K ,NxP[ĚqU6a)DF.l 4kJ.خƜM7K|2+#i@*g#RaZK Ėa(3>t,}.]^D"N.θNcHȿ[0_NP0:{ 9QϹ;}M]6|m3%޷}L@H*D~5c= ,n2gZF.~oZed@Jq"CG,rCLR3Et4-|Ƴ7!O}wE0$9 sx Ƿ1^ `_r$cxjioLSt&)K! Obɇ',-ѳb&EJP1iGIE&&Q8,kYPQA:za,i> 4lH]F 洞\ ghƧ>un!#<\я4 ĥgLefrWՐȤA+<xc썛vR\#Kh'oF$g%y tdebs}d6ˊU؂Ԫ3(| ]SW Q\vt.)q|Ôx0G&b},Z4&x"Nl\:؏3и?*uXoL>ZtLI$[|uIa3m 4r5ZX q~KDEu0lY[4J3zp!#g?k.kb)G:6MD=Pt'J+J1a|໛3o&m*  *5aWVsfUrE`IG Hi#<7mA]LprF(vNF{~'Z1!-@}Y'A/$]KzT٠*EkOb0`{Cߊ8apHj/ܩS,(縦!q{ 06=`_yV pԪmĬ @ U}c-SV)]_=hg2:ar`+5@4ޗ~4/V2W{e"ƬjF#^w$.OsU4 dE1鴥.JKnx>sRWҘdHSC|(U"1Yc;EkE ZYr,d++~i=dL@ ](`-w5C߰zWxun T 3DD!&WNyމ˜s,\k2w<ݨ>seduL4!ŜEtMfO3о k.vƃ fgL^o "ؿPTG[ Kc8-e>I'7<.{e< ѱ{MC @r9u@Xynٶ(pnP Hȕ=cX➓W z:hY OޡƓ:&%|Ϭ[IGNp'ƪwn:.dWнbqk" Fey#f_[Lˆ;tV8Э?1;},[$TdBk#J3IKF65{CGd_ rqmq-˂j,r.<X,1Zݷ?bƮIxr|s 5v%h#,])89qh O5Tgo^f{|YRSh嗪!lg MU<ϫ䱣)E@Pa>x\kD&/2U=UdV8`z}?߭c:41\oG)6˾9GͱP7h^fqo鰀[qd~)sVܰf'hbzIJкV\?GmU,0>u/wa_Y>g o{\ʰǔWq]"zu%`pCʥ>Idي[w䱱;-얾Q}ӿ$*+Yk Zsw UH}zy[~Kz %bi͞NX$9XenPzi KJΙJH XL"on ]`LqRHh&@gH4Q6mo݆.o ׵^LkmpK'H|{58dJ>VdEtfa'\fxv@jĐIGW|1swRy?RETCVW,_}vĊ(XrgCHiZ)Aidof4SpΤr~ķL,v[R$іXp["?pg 6IAk8BF$9Q4EbRݻ,{3)[`=RWvBqxKo?k+XuwdO;K NCM$td|4 ;IH%z@U{,oj!GIK; nn i)r=NO)fVYʏ eaJQ,횡M`bEE<Jt~?4a+SP:h t Jm&X)>آy2`3PtZBkEJtv%_mɣebyJ}-<@[ 2ZO;/I tOFJRY2Z@S%U߶Ҥ@sy;틿$N<n s, | Z[zO N ~CH$5C%,Ȏc`mv%kf8k!Ɏcly; 9MVgck:- Y4@_=-*-]l$־BJljquv۠ ta8%l%Knzͪ{% \ʢTSJ\zP+TB3 f#l(LhCJLI-"p8X C㙘A{_yfSTg!9n/pSy<"Y=zaR Z'=lć{nXmIQz@jqBN&`o n5R&&uAEܞŽ~bKL.U%QYmmpU9}-;pNQn~Ļ!/+Num:~m^,- 98 z+ nfft%G]P9Tw=,7i1e-2~}D'WV?”dV$|eC4I8/VHy!B5iMlz<<7{l3K@?k9p y&E&lV$ƿ@Uci:pPTftX}Ӿ_oտA^mTkXͣE `"T9:G.\7z؟A{V,Jb@}lS %-">!%ӨD[݆ *_vA1q k^axFYrF("pD;I 𫗫v' 'yCj^rE0.`Umx6`qٽ", JrhTv /lgwgʼWĆ(br!MEbؑWu׾c][Ky+F~fLT?xO% Je[8?J\9ؔl+H^iDRi/[ f bl,tjȦ2j KU- EI6 d B ?A>K.bhyW0mo1FO[dR ʩHs:b@(̛Xzȕ2w~j+@a%l/Сp_B%cʑc}&q;t t>یV*!4滸; UPw$IQaq I? T7jSAWURAe3(C s 7EH(S-lUtIFVe>6k_]VFij;F(4ZTrmI:ܺ^vMʏ5]hѵ}IS`A>f_6A3#WDOh g7xpܨn5@ %21 t̀1>x;ASTUc(s+!wgGZ*Z|5&fwxw>KzmrQ$i_<3ɣ 4U"$<)ڱ4f K ] 5OM#aw<֭1K)._N_|oez,14`+\SK1r. "Iau%5}a#zt~w{a%CpdԵ0ꘘ3[$Y%H" ?Аl&yvD,gI+O~fA&⢺&6.5 H?G꧌ֈJnB- 6q-Qё-hNͫ  Mp[ƚ~۠WޓhI:nc ^mÉ0M%$"yIQ ;J_fr_uQaXWۥY0)N9=ˈbĦ]~u@!{ 'h!3 ÝhMv `nRGX5pĉk[_@⭳ލnS t'cpتº W!X!iNlM9~{N-m\H4sWʭgjLv:@]9_PAfCu axE0c<Hխx;ўL>nՉ 65NZ9 )|0[$g8̉N5 Jq_v͌nqN(u Aˠ BG=8L>4-:@ O;x.Q0`畆^6 MD9#T=[s%@"QʏnCY_?0ɊSc D ׭E35RB4ڼ$lǽ;g=+xD+yc1Gl‚*kwԉc BŒjT Q#kz/$C.?p,GڜbYж;iu/%$|oEt0tU o}p%9\R GPx B#r?j(=ίku[Gq(P( 2b3+hgQ''u "ݍ?bP_q/H%dvSنY_`ѩN|6dћ_ȗc 9Im6"`)&AD RC92ZhoiB,s/ZsԿFmA@q 8lbqW9>ei`I6Ϩq^@`ɜңPX϶0D-3q>.ts`Mv)Up ?µbuT,ɉ!𵢖-i3.?SI NeNSf|e]@['\Tl@JT$zqL ǔJ.rs"ŀ2%x 0_v0}2SjЉid*wt{SIj|:~6̽i|Y /%DHRaL,qq*} 2i1pku ɥ c/탌T׵zJ,D0>n75ʞp$iEd\M,pO,hD,Rhf5<&h6o /Z&H'b0Ig%%Hȳ.ОT頤9^@׍N3\Zh<ۦR<ר"q`Z mDe,N!v(I'}áKZQߖP(_XΒMN|hS`sBE$+@>$cy!P(樢ΎlP 1uZÚZ3l#i E[x>zFs*`-%[|c U:!szUH(%6ټ`ʉ1m\8OjR.3/ユmi$Oji%`Q+:.S:X[ / Bb-tAA ҫrJA `,XNb[V=Cq][إBl_k)\Fs2Ґ! "\.߃ح,vN5^-:``e0 Gsi$29}34( ǟ^˺43X0\n|]vx RXu.$f/f|3 8_~Q:FRd f}{JM|Ao=/zJ'""薉XÅDN#,'bMpuZU\Kvs| ˵/LcsK!I)/< N6P[r]F-ůvay38N$0@]-QGk&)Qqp+o=emm BH&6 9#ooASO?C)BQܗ>9Y4pg(<tktb!wՙN>Uiv.p˾=!̝IWe r#zC u֑58R ĿKEZҠɬL,`s7e[ IDT$Yе g;X[^-$0X?\Ryx@Xg| aTXZ FdSU?-5z0ZR{?nf RnzgdGjس(!=У753r8rp"*A4?L+ łWYC9#x12_=+$MAa%qõ-0MY!AȪk2Q fIf'Ȕez= ,dlXKՀ*!a <'隑\뿍]VaݕNMM}!+U͔sIj#R[7fu,29"u,Psg{;h(.d+`U{ ;'TָL"x">%?R.O}vEN^BXBH̖ k1.Q<辶 |#K% ˺٦6YQ2)NUoOe*te.v<; )K -oKݐd(ǚL ӈ:r.y3>~ԤڔYmAfۭNJ  ,Vazw;uTҽ-,sUsIބ0[$)[?7//*O]᛻8{0ۙAP¼jHԽ2x7FK`=_qsđ)ظuCgp?9Vf̀.Ƕػ|LC hmUmn@-}zH7+;HƐ̦%4w]2;nJ.x;k d*F"ۨ)?a!En$`R9,裡Ʈ,'j nMB `ZkzTfTN Cpl'Gd\2;D5Ysi(`tN)wI W1 ~0ޕh]t~\l"iS%sKtLطcPl2jB,,d"a=^ǵѣE1UqkpNͱF}K>FMEFCf*+zYoy3_2HiH#%[0I]Trpְ8MqC#זW/FF춻VpWؖfq_<2(jw.$GY{f^B.`JsB\~h3ZɁ`W8™RpfA@!5h)Ihʐdd=U1B{i-2C-&lak3wT@ Gmqd6&)3*AbR jBTp٬}*߹)}اD‹̻_2Vr&hV%x(ǫ77(X=9!<~%S y-B<}FGN}\a-n^Dpٿ: dlqRJd2Ǚr0ZLhcI?B}ha^Ra-&럥"q: G CUr`AZy?Ha,qΏ RnDLo$-˸&?]7W}XP|{TiQxrP,>S/z,7R9V So15ԟDy8Pv0Ʋf|[<)6TŢﳃGyg!r>Ud1ʚqTZ~rP,kYٲDuir#H_eAm0~' g瞲[yWz y}N2Mf4'5| 'yd~!B́c!m)}{NC[-Dhn\D.n \uw,Y(߯%SUaxJ}9orzU̶ tқn-Ȑ NpntVyPxLJXҍND2XmDѭQ'ҪzGso xM0Ax__NFtۈ]oȶr8)bc] &!CHy DxͨʧCp*{C]ʌ?\:TXtH%@2 >A?}rBy:3-B­Өel& .kĎv0@\ٽ9|$fSܥ߆׽HҒ+]@a@C=10vy@,4ZZk'Q%ږ箯4*ݯN-Ȣ@[tXFC[3삐h/<"D-[JKksy-ctfKPG|2K/T&hnqnKDsuqK9d0=NeTr0Lu8l1pO'ÒLg?hǫ ABUI`=Ru%6&߱{S0ɧ<(AA9OYi 'Ymn\|IMkC!s="72x|ʶpT9|4pK޾^7 !kqCЭlε l\OekD73<]|bJƣ T}kUyt=,4 zcKH̗1wʠ#5x>>w$$88Ezfy Mw]2dcX]Rرvn˾Aͳ=TBh[A(r =QN\Cl'_\3PVK̨xLsJJ")sߤF2I5 В'~(P8 Ci=T7)giWyƳz6ʌ-M]li!§ݧ8" 0!.zƁY]*AT܋TّDnߚn]"=o^z;$1-3"j.oRm[i'A#':^QD+S"nΘ:qGCCqFE :Tu.>vV0b-è=0,p|(旸K'OfE:Y%Wq;5O.R>ˀۅTm< '`zdk'ɅV/Qߪu\bLck#+yXػ*swZRKd@|G'︠{I5Mi$/3M/;v AMwB]C(NX\" ΢hф Pڌ&{xmtXТB!i)}"462py $NIVYs)6m[^P5Yl- 3 2![Ru|Lg'^w*.*(NǢ̺`j$ҕ/p,UN\51{7ߗf3.3qF!+rٛyBݰLWA ;iMl::#JxF,Ss79ƴ22FVxZ24tC BӖf@kC8PR)9/uNrRFc%aϣ;iK}d_ b44(x%0],ȏd !QpB"P._ U$-oNlwIpLD.g\HYyuɕ-|[ 򣢆c|͒O (-w0@4l<`?̟; 9?VO$U^pudG:'YasUFOq NbH͆WxuSet혛^U='~W!I3ܠp L\5N#j-;+d6,-D6ȵef:mVl:NJ]q}YO;11#G2+qp> M9:5ISyQ+6j'X 1<54*/LQH ΈK緾ɍ828d w$A-4i A^}V#hK`=|{w{b$~u^܃1F+ǁL]svDIpTvZ坫RߐS~szJ kuf P%`_Co5}ȵ^25qaEd l>FJ|ea ߱-/,0T/Ȕ&h:eg uꒋ.C4@nֆC*&k,nH`&r\޺7 4T=h~T} OBoS.k?@<6Kt x+po"_jRǺCrp;H- ˇCް:R:"9xceJ.>JT0kR/S|< 8ceK9(wXe66T 0Ip)xu-r~&]7jTRɢJ ؔ`k`PtkxDg|UcH{9Zv&._#C z6 lP*}{ qh >av(~TrD&)#hy HXHfK{Iȗ e4TTHZ0e_ ˋ dN2 JMj&i`S^M- Ul/"BB=g4.(cc '6 gJS0h/ڹzgfM}ãd1`ƗUڕg .\ S[7]4yvdN(jr-5^Xp?b#Ѳ/|5>qwwk=a,V=v޾ "z9[ eӢ<ʠgf7QdPp CkgR FG)1g{V+,P1ΉZ?(HT܏N J)-X53hRo7"\h3C!V"B_6l;"1!:W1Z1G AF@VQw(Eڔ"Un[b gIӑ2A2qҦP&lɰ5 %ć?\-Ӥa۠ۜiwȘ55:M=F*7zO%O?Lֳj:joT3G-gSyctDċq.Woe/zqdD<[&s<+mfvZB'v쾛Nbn$Y)]#B@e.si|:.IwV6)6qc0;6%)țVZ̀PG[z"/.!:[ jfUL+#Yl0b;̳gT;: eBx>sWQD!ٷd?޶;f:DCWz=Zۼ |أDgXj'#^pi*7*0e~{;ɦ/|/"'EB(?y;LhLfke\rACfVԾ$%F?EB;8>]l_χr\E'5Nk8Vs@ ̱5c']GVu|ɑ,҅ Q@ JLT߮cJ5lf&^%"@Ηo: vvr5+{Z;>Xuy}ys?./e |m'w!}O聵*EixR, #I@T2ي/u`J̍G[U3Bw( D ֫r%+{[ ܋< p8~D%gTW7gh4( Z2>H@>DnQ1V𳩚NYJt+3JV]Cv<$pqv mϋ쿨N8ő>Q nAJ٭]Hc)Rj }Md9 ;݃%Hk $N5AJ,w@ӲF߰ggciKr9hn,G^ccBF$R?jJ}pB̓R1S;P,.@w e0 g!Mw|3[Y 9+!F?e}@Jf 8:Z&})B^wGyѾṡu yjvqDs6IVE:6B?gURsGdJd``(>@xR̯łJv 7Wf6u<;Tx3u)` WAŪjtb)K!w}ʚ4ԞT2}\z$aX't~ϩ M$FdN!aЄfӸUw۔R ԓ/c8Tƥ[tz*U(gP oJ&w,R{n+Pn`hI=ym?~iDJm'앭#bf,OvMUcJBS[ȝcaL::jmj4oW~6$0L=VLew<ތճ_hZ*CSz#+ZpROz{B)Ps:A@NST+,[BJ7xQ״%Xi+-R&gm`#[v:Tت Yfb5Aʜ?Cp?WW4S&Uqc*fIjT |Dd6YW"wxT~w;{Dن%+kmoE.*ߝ 4ql4R )t jt־ܗS?!rˠQ ӎo6Hͯja#EQB/Nf7A֏"uWpHO)2&@|39N-mCJqDqJZ-*ƄpҒ! גh0Yo\)&q BbpOW.cn|bdλqZ)$ EH"3(!\L~W>πxBsM‘Nz~\Us&.za wO{7gUi[DyQ<]HbN;` ^S=Ci;#yFNb-E kjN%^# !S3!+MЧZIAܮ.5`󰌮u:-0e+RG8qf rwDI~~ 4:=fv)2ͪ[`S3d'*[0yn~#xPKa"РbZEO!g)IN\wA#oqß oMO(a œs湩]'%<{qa@65o~uaQI<_cr8b0к]vavt~wPh)*8MA@/\2jܲ RK9G::` !@{8>OWb]/Jvh[}_B/7F{Rq(Z?9O{ǵ@x2cWUYǦCq M P.{ƀ&Ya7}q1nwVyO!h:QlDo*f单V \O59A` Nm'I:ˣwe< L;ʤf|^ہ%79[WS ,J{0}16N[/"I#,]A@{?^BTJfBkNYwEwYHcJڑ˽u0m~Y8MgdV&"=o1pTVTQKuitynNu^-@Z|. N[nb |vi,J[ 6q+HSP_&ITBޤeq0D āb37U9Aj]*YCTțkpzV RdN<ةq΄&?s{B\Hr5 OF6q[#׻JN2z Tqt@w>5YXQ*؝:/w5e,ńs+Q#ﹷ' d8&GCg|YW*~V&`\n $ֵ$2Y'[:#zܷDC<^"a k]l˭{ xm @~ {ni,Y55Rt 5IaLo tq}#^JFC0U1DB,PJQkȇ7wg/6'd-@M)3#9̶`Q[A᷒vd9}"v&0ʈS甌)0oXGAT[Peu脚W'ZIڝY9S4OULlk ߢdJ#iQiWb|5 Yz􍶥_9P1c`\7(wv`Jnhc!$]1ex "7,*U/B5.H>|#T&뵺j]@ق\UGƲ;EeXV[dn>,HZwVT/[lrfQJ0yu}uE\gg!vU1ï܁W ާI %(DNp9$;|+lnFsGY_滢wtxdg Q9Η RHA5`EϯMf/vfUOy(Ǯ{+XrSȊ >:qۉ-% ۵v ojIgmҶ .xAq61S"ƽ`~RCaz2Vlo[\hkY1)ĻVJУA7!8>RʏVvEٹ; e5s| ? ]_f&6yխC0*ՒܵW#(1(v+2yg>;$&NX()Bܿqǔ@M߯ <|lh`7wx>diy:UxfY=QS 3F*3Xx= 碽R;g,Ҍ,YXɄ* m~~PAG Gg  [U3?,vap1>Hq2 @6` ^e>ei+Լt@A:&ݯ(Ȉ2SKI:mdXLc}C l|EMiC勆&oxCBs"z[WB^%ھYn2"$D}:Åy?BBNS7=c2G(y,B"%5VW1QYRIA>>uW".>l;yntpfU%SF>q:Γ=|[vBܘ;Kn{ +>AC$Ra a),0*4xYHXW*}\[ }(2xQlNOo|ӆʊC|mF4u05A@e{sPda'[%ۀ(CkDw}K^|! T#U-'c;ptm``-. >0-0MyN-q"tj Lb8B@EQDTvF'KD_5u"$qyGHnPB0680џ~@q`:Pt # dtydߊ0ܑS:u@?'x MջI^DLtT /SV歟Y4),έc []=9EwA.-^ZM9ZZQdWRZϋG"9[̊}PohU˖1k[citD Ddbb~,o$moGA@b'M螼5sE$|a$Gpn<-.P0ݲ-5O`\\f?^@&}yUۛLh2;]' v(EeE@Ãm@NlB>&.3ȆH(D=G;4 êjvju+xvwpx0^뀄|ˍB꺚iJ6j{0qՠIK~;QN95c/ET1ِN M gB*HDt}{A],9%*u"ğ%ifo圷>Ł>( l?{jĹAb׀*q`=aΈob2ξ1!'XͤS=KAGؐ:n_7N p =g6:IQX3D%.8>y$gʖ^J`svjpJ^%j1Q=UwbOؼ~Ӻaײ6R?Q!쒁C1#w R@kSgR[nca!s_xwM՞V E|ĦAVn q _OQimCzf# @ǣê  LJxn IQY\ y-}}Ƒ˨uXkUlns~0#AF:2fv{k΢ΤB nH!)ͣ1Ԧ<ףo GTZ0# `D{Q2nK&_,-`s& ygҭf=zWAZ+H?3A{<&VQ50dJp'խ5Ѳ҇A{(tlo3O˱Njы J[ٙ9ԑ@[dnEUoLHb=n9 T^]9V:.'GLcb^I}&G3D+Jä1uul̘o¿9ۂ!乜\MI0m0:@ H$*bLԻ ߇'Y=+LbQ QFn.lC?_$>"jGc" PIdSxT )4Y⭊`=AK@߄ }1^M~>nϗɭP}s"ճQ mˋz>Ӄtv{"B7) -Q % OL*⩊6lr *MnlS?],yɢdRA'tWX(n7)Fm|ާtd2'{f;N8/YjX O]h83ΚzC\x q7ˆ@>;pMLjcwˌجbvQ/8kT(+i:pdujq-j0a@tkG 7и{weσN [NSb.DlkL"uЖhr LƐL0?iǽZTɜ-PYЙ(5ڏe׏af($&Dx_`n\{5=/~Ŧ|`;m@]{1&1p2ݶ[gV@yS054܆=4KdD-49]?mަPUY_ޖ֚|p,KvI RbY{/ ZZa'(x[++:xe> M٭:C8h2gy^jln5h9AH˗@_D/ TAe!w6T{^"'vfHEH6=?7+1p\p$ǎ]yYxP:md2x,SoW—R8M #$b[VG55 m,}ɵA:R:~HIr#^RW\RV_DfT P,*,껱E;jtt_ i2Y~t??#ؗ5c&}JE[C..kW(M* 9A!K{[+〡PW஍ xJRy U烏"#4@ "TR& a@f|E:1Gҹ75F@%and4F 0GBvtJ${Ҁ_4a %!0LʢB?9A 1:+]vw ֳ pleqIb-*)ڪv ad-H;sڋVD}*q6յmF >zʥ0 =Dp%0c,ugEc[3ïR}](Ǡ=x+6ԙע+(ŷ}"x:ΉH;)B0$3'͸G;%o.\S޴qw-wڠ2̖sjzRtCtg+KTLԎ -]gOi)TaB~尳TDZ6R;7F+#OUn5X7R;&8"s9;Jtߪ rN 'طg$*P]xo7&30693ɖ:/[ACRhR+Sr*$ Q%8+v,PrbjeC # !>|,TrLRFҟ+(eP[cX%ha֪(^GEګŗ SN=LoU Q~`Uahn  I<[V>iΰui܋!h E/ks79,YVx4ac!&"|B7ָXaL3:`O>񖉏;z+P$~x /p0.qvpj4VC n}cö"?54ڶgA]!!) lGY|4;=n{Ixb XRЕObݏY.\9GCzcFG5lr vdNEwR}=oX! Dz d<9] B~$*Ӯ$KZ`TK:aíBTnp;ffjS(Xyq\YzxԽL#++=u|Í:[AdL kA.z+z! "C׉SR "g6U޴PQ`/ٴۄ QejgVS T&/kkLD^<,DƙXpۨ-<[H=/[GQK1,  kS[ܖne@ z*Ac4+ŒLd87ACqsPfLg&M"ryMԢ' y%.^s[QFXc?YuC_pVjۦutF+37Ȫ=+y #/ \PAҖANUcH=.]=+e)(zEXiCwFxhv\(5p{-]c M8gUEӡ2}Q?RnU)xPfa`wmA0|#t'pP$} V 8嘫X%_'syKWaΗ}*4?A_!j2c+͠f@]:G&p}%@wiW: Wyska}:V\Q3n53s`@!K&tz<Aw]':6Q{^_%&~fS};i ?%C?~9jdtܪyP'E.\:>,qsiL ~9Tci,x ]Kme^H$`ke͆no5OQWYN#r)vTqkbqp>@C[WˣzS5-KP 雫V^-l'r۵ b)OFV11uqE5I "* )&Z{Iqszx꯲r7)sSOdSDS'IHb \"' {% 5|k|an! e ,6F7 F_Z?*[H'X: o!X($ A{Jp'<5XxMNA j$M4ٴBϸ,+LÑ͡|)U&_ ䷺P"G}`Jr.:S7,]nȎ6Ea^$B/ xбD@bs}*Po壂BŻqhxJ.ͼtQ3Ls OJqF@UH8VK : h`GhބRӃ3y8k[bd7 <@d(pu:ya8j"V}B* &6`a~q=W5ǀ ULlD+70TD J8zoRȖ x?ބ|b>ǘ+&g4Dٔdn^C h=Vzwq5+Pl}="j*xqˡQU!fnٿ@F[RģR=R:|b&K\rrbg(N'ßM2*Ѻ"ǃc@]-OmSCFIts$LsE@ Ld1 7kf'ޭx$ѓ0Dt:3]veIsj,& #L(XnT"n3]z0` 6"Z^#l7q YYexx)su"V-; SSJ5!ZXtKe:YDepy^`>T r& 71]͘x4-ثw=&^Kx})skbƙ+; WCG׌gi`r+ g9&}9)gmfR{Y>SϢBpjx:a,@,BsMMe8w:{a,UU/#H;-XsEo56O(sJ9m ʔegWLå_$93.46Gʾ,|(<Ö$Wt6"eP$<kF£kP Mt4[9dIbm1N[uU )˫o_%JNEOI**&D&Vy8u)9B oT_ٮ0,+68m ϯ\e5 ATi!y!4U_7vW y#'djk'df.d [JOnk2=EG}D"K%3O ,uYॵQX_"yfY:W|omy$=^hMQmDB6 h=&.}Zr3X7WV}l8gX`iJM (`4͛ڸA &xbe@EI=#5H u6jFz=H*ym.`_ [m`W:*PW>i`0@x9KݩN Ep-\3<8̴8)twVӕ "_#/V4D%DڻrbmVɾɢto}J3C&xCЎ"yF] |X|DN(Y_0YEқq_ys]l:-kD3-3llXTj['/,̲ǛL04!;j6ƛ7A5ʄl "[ˠZÝ/:&ʲa>شB š" $8":X}\Wܼ[}k(B8G뒞16:d0ϞiRw3鵉,G h TKb\_Rp|͍h:d*Gvq9:T J(wm|5<~50<4f&IJyY5ܧ0p[|z0Z0r3 W~(IEc=^v<(!"M1]"P!b*Mv.QQVׅIhE ;VN2"&Jl=; y>IDNfb'cjJtQvkhU$my|KR (z.Ʋ1 7;O.T ΪH+CP;V:Du-> PP(vqQ -u-S P D,:b~Q"UM+{P#a@2"^eN[8yh 0m ty7pMɨ+pvkH^&N@䬣Ҍ ݪo#`\n=NoyX [R}C|rQ=xl_p®iPy4n#9oDV%|Di1#CP">,UY:*=eǀ[7NT1+mі?7|'ԕOu5{Dp4ŸБh+csH_oVuW[Z֙ 5J2d{uDطK(ع:-]'U;~-OďP}Ҁ`Bd|.b'VrP`qc4Tr :tUW%Uqܝ׶`b݌->RHv"_ cR/Yœ$vCiDIM7ؤd "OÜOgQ[P<mV#;h'еc 7ғ.5x Ch ۱D{? |pbě~mD@4>N"R3Uݕ -}/Fzn{P`]+ d~7#~rK,L"%1 5Y!cX^HrЇ*ˡ_@ I,V'ְ{̋YȼĴ%txZ1A5i5 =/(ѝk:bl/>D?"v+(8#v,RZB>pl*S9 l.m<~Zi%Fl8*=`b2R0Y={j˹6،t3`KY>Ր8c΢bw |}!;i}$_wz1u[q[U_{>c>@=}ѡ&DzyTckF@.>LKcܴPnҚR 10*-tCta7͎qys(aW`m&vRO"趋Z+XU/8T 0B^q=>9O+`3`ydY6UmrCoLf^(eہ8r=Tp42I&Hܴ$d-G}!mM;:*+@J P[ nX9T P]XӘURd)SG23~B|1W SZnf+>;[6Q[ }9S("(Z/6m6B#F4zh J>y֣/w#Nx" چ.#23xҏws\QU^`Ny^us* zՙDaɲ?֑"K ieH0IV ;`I`d"-MOJ!$Sb0jJv&wWpx5J.!"j*^Oe,W{< s<ҾŮWRd{xX/H= ia UuTV_uGIj }= ܥ8JYZvbAbuU71T9P\r4_jT%Q =rF,VNa^60|o;.6ړ]PvN-Q}?[Cl]J: k}bZ9-(o?']Ɩa_]&uif_'S bSTܣ#AYO^kPRGȾAxpE3TA>Y+"R"Kr>cs m"G_mR';ՁmLsfR5J+#v+ ;1PgNϛooN04^Nrt/} Klݶw";)*?_\5t4.S+Duv5\u (H,;$Fq_?1Hbxwykyч@91%{J_S=e̙NgH 4j{?K \=:YfcR;wª_,1p V{mdJ 3&WfŶt0aƼy^!.ɷ)MC0^+,'(Rfk[h#'ld4sii)_e6_{3jڭqt~T@&e93w.MX faٝW/ǂ0XC6WʧEh} )E**>l[o7jmR~ƛ#@1%Fy݀w;H,dp汕ճ[֜Sq:0$b`ٽ+Z3m8Pէ &-76h 0k;̴xk,~R O[R?kުE#պyg46A P>&d\.jI YB&C<@Tta,g{e] 集[AB+]'y1d<rT%r! ގ7(0Ot?wy;`.d$n^җzNXoEћa b4$j0J&dfBIH@ ddR-nGDc+e 5jz23Ty$F!هk@GSr72Ff3\-ʉh]|:tKH!4źko_n^TSw0lsP?r?KG{lW۫"`0d_]!STmQ`H Y)|J6$&B*+{S ~.ñ\]KPD31#kٻPJ'Я_P]1 n:=@X]T8+0) B-mQeZ /Hu^N>_DzMfٻݒԨ^W]Lv$mV/D ! #+6xTGԸen)d\(18= 5XYm( kjxX/~~QЯ.g_lµv5>Pm`8/ D|ӁR )~z3_WdjAؚ~IL;_l${_ז2 = FoǍ΋Y/"Y>w\_>P1-;7Y4" c8kZuP$ٟfrCAX>&=gHAK yPAk6H <McJ3 UmO3NGz]DN~SuoooI_ڴnAoFubg.@``->LMI ,UKb}}ъ]n䝼&%%6.&Xq>رn,ao~[A'ݡf'yO6(rOx'9 >[vud%/EMBvM{jQ-3-gkV[s `3Mu/`;aBgҾr\x3(%NZ"_#`x+ƕ1#hab:IH70Cɲ9.b}N,Ǵg,).3D˜2J4`( > tECt_:>xϡFi;.@eoᖑpXM 6hUhX}=Pk8HoT $c.NGS!Kr`uV{dKyeke+>I^pʑP< ~;hbQc#?"mcv5,ʢ:$.-<@YmSҿW-6oA|ſ T7,齼y:LJ$ynY L$BvLqo#f5|X6ImyMqNG_nfFei> /?W^`s†xU:料L)+[ =c$@ Q?Doa\`{Wܴ9@DM<GE4"JXpoyq+kbZt|}wL Յ7^x,>=@ȠSw/E,Sd="R쪾dQjp1GSkSpyZfgbGaЇ1'`@hZK~G8B]"^jZ 慪tb=E0{0GkI_B\XewAHѹ₈ bѣ[PX ! kݙ#0'D#bCOgf5=\3m_]Kgg]+F; RnvNI9#?!# |I>JR{+TuE̲@]26x^ ti\CGJ8#9;;W{~rv;M';{&'`y- P2Ә-6%W&8$yr7xQC\Bfn<ܼb!$M{w#dfq8!N6gkP|#M#H|J3G%W(*Y7pUFg]aͷџُ=r^a"[W1U:j`X&ƫ>duW7`+&T}>&}!9f dL aru9KMXPH㹱` zbLPq* }'%2 BVw_U|FT)qQҒڈv=#L'5j OKIp:%Z`繀~ (Q ҡ/;tPV@.ux/3#cALw4t7%$7qg$6 7Ǥ94;}B͔PKMS\I)YB`)%O%sQ.*ZE̼{Y /縰oXX"ܧ+r ľ͗%5{HH%H@.sO~#;?.^ԠPۂ@s5fՑrzg-!WH_ܩ:a=>7{U{t"UŔ̷l] M3 >>@tl*:̆C1#͢nYxwbO2yԔ!%p\dDʬ`Δ­L$H]IJ*rjV5s=LZ^iee'Ku%8Xgay˧B?n݇>v`zq oNJksGiM(4Rw;OV!we6KwWĭ&S jy=@pǑ 3\:2|i A*UtF60y x3{z]ĔC.N6v? )"L1ڤ6N.M]tT)rˣrKuԞIGi?s>hS Bڪ^{[QkOaxn%dZ# &o!Ys(`aciVAMu97$ [Yr)!6Lfl#׏+r&*|??l ałIg>ݞM0>3Ӧ*ɒ0)x *CE}xwFw35:Ć+=AFL:L5AmcXZo8^ 1drm@]  *$5T7v7!E97 [m o)d\_m0}څqW;ȪgX2'i [N.ۗ7JV^ .R[ὠ1.ƛbYP <> 5}VyҿjSQfVvp&oQ*Ȋ|xN1~IFw 0 qgd`@J/ 䏚u?>X1E pUOu ;oIk oU sV) 51lə̓zne 8jԹ,RG y"#IDS1'bhIؖd3kٸ)5ܱFSN ̨.2>󒹡G/x{1v?Tɪ"7 Œa/8L:tp̈́X?xbUCm26:wH1Ktr,B bE1nz=+L<{6 Id ZȵznETi)H',IvB_ϼۖ7b9`ژFjez>V2Jf X52wƩ=!jr Ru6}"IfpqUf{wvFɉW$I``hLv0YQMio8G/RzF!+̑5%X(ǘ*0V96I[XmU> 2=v%  e`↧ؙʺuY+Of-̈a"w?#hF)^R,¥$Γl(kb p(+۽bB`Az$*+? 2V .lnF2T~ )^ɜ4ci~rEQlTA1U"Gsg.O(tJnz/o~8ˈK=m?OA_(5 F.jr v]Z!%PKo`^ qhd9sSc]vi3t` +K찶JBDKP}4>w}*kkn ouSm.X 1* ܭ"ǥ[цmǘ'TG Q%?^"NƦz{k0߂`qno]"l1b< 2oA-nd$rRۍ$pO,AEl5 襮֟ӛ6tÕ6/ʼ6ӱ`qXnfxܡ!D~*aSK[:sgo vTLk3!{W2m!Vy8%jsuvg^tBhў#y[yG\aׅe*{GpK/*XF֡QkNN2fu9}jQk\r+⑝@|'v3'i{T :ٗ]S~+v >dP-"2(Z| -$-~C=ߎ>#Tة .js xY߿vH"EgD(.XibFM,Wg;ch{E2}ܛLwşlCEg f tIjn*}r=Zo,cuBEyJ? Vp0-Fc-FZ8*.hMtQ3 DNt{Pj;5@͋-03vtUmp {`H5{jG! k^ .90~yS34*+\L><~b&K!Hg"NpUnӱp7vG(~_!6h3Klh% K <QW/XYw~:DUJs"x] ݢ:NE4EceFgC,4yWt%Lbe}f4V&Mmq9_lS1y4*sѪo3cO.9x7w^cQNAEpCՐ:;`ٛ;Jy%50U$&=>0"0BV_sZg {}ۢVݴ|nYl1Sh$~տ%HZ@>u$Ӆ)a $m>k%ɐʾU0Z%Nݸt+8/+7TAb_.imWZ\2F{m7ɈeEAriX_¨.S|fdOUSg[zz¦Ռ4 `v}fJiߢ%Iiϋۀk͠CnjODӧM )rfRԣGN<.pPKӶ†Bc^ Z1K/v"@Qt Wl(WDt f5'uIvZTg^IZ'fkqho?UWM jLuᐣ/{e%Գ7\\xCͦL8:_U, 8zH2%Bո 9abڔ\e*:ƨ=dXtZDT^0=E f w@`}iİp)M5FD;h7rWk4Ou[8-/B͟7J[Ť1`ަϹ<]Z+;y s|_h&iL]1*l:%j9e}9a<5?Q>7N86sԟ}7~/1!DKIV`u \'eRAlCOt7`O1.|U6,£Fn:%ĨmGT71?irGI2SoGZC$Tk \s͝b#*eY]v0/ڣ>Øq STCc64#Ji1F}iGȋs0N1~p[\3&-<+kP5D^" $dd1pQtԸ4~U iu+dq cvJ߸>Ҝ*'cxwo݉č$d ΧW pQΉz:Ain0O)`yX< `a| g׹k@8>rB𕎎g*ɵ7' p‚7kERO?.\聡 !L&" Â?9=Et=Z`]g*&!doy&Ö#')"OF"DdS(iRE+>Y>@1JV&"u#j[C)`r=Sk難*щ:K0cL#KP^i|sw`$7!*dXaSL }FmHN[t FB{R-MkTϲx?ZA1jOt84wM}'؉'d|'-ܤHѮZBRJA"E';Z0VNOI&sT2KVj) >BNs`)m.IJ2ЬѦDYvp) hV5\>kـD$}QceƉ?v I =jLe r=*'5!X'<Ȕ%[HnqVD%g8:vPpijߧ#c?c2y°\_bLv`=P^`5 L׃4\k+Zj=Η"Ȓ#5"?ӫ^C9SڵC?DO'͜@hYOkoƴAD"+] o:PLhmoyZG5k|?!87E`AVv}c(DV 4SzG5K畂0>B} α)E=" { |qBRܭF"+DfW큃7k ;*ҟBMDb)? ,ZN|\@rg >&$eU{#&LpbWWvŭw _^!Qb 8E._eO:`|R@wD*(:,Ck J0hH40Gp8YP42G&Jzɾx'oeJ' FM"c*NkOϜ]vJnI ' w@IaſHxĠ!ǀﴄ {n tk7mL(GpX^:7TB%Lё=LA(g`czɖ- anSٷL$)ڃRϨ Kei4 |]RWNǀWߪN&IC~<^F) 9gd[.?/PmHr~ׯx$EZ OxP 9;r?5$½ʀbnG"uN߅/q>xoܕ2 4$#I7?rtx[!!H]xKHW^dѣGG7ZRČG?K̕dXxw/ݔF+r&VL%OJv(o=x3"J(71]4zJD̨{j8ee^|9zg/E>6fЈxC㥓]dK!6K)g xX^Vv"9c"^EekWwf/ ,BY u[I[.J Cq#LDL֍2zw >Ǫ\DTn}ʥj G*epsƕ`aGmG11,=>9di-A?xQ$6]1.H5$^ +7@6ZҜzCr!j9wa~,U`ȱZA/2L(BTpyOIL3Xb aȈ!ls>rĊQ&=坍뙂jү\ȳd|Grig,s01\땆 ; x۽eV^9+/0}*EO'ѿ=WtR ߮u{7S"|fB6w6%c?,ݒ| ѕ!;J<|ಢl.B@iH!eʑ90yF0sN11YDD?b ꛊttyR鑈3퉂S!8G/K.I 0!d o#~2wo;LA:9A;W@p P 6Kf*?WBl"}gr`&7a0)edA&֍r i]@ 5JD|ɽdV"d;G\={ U`ja=XC̻4vYTu's^^Q2Z_ZWLTȏ7ƭuİ ϭæ-=thz(Woɴg+u '3j%޽_Og$VL>T% 2.s7 =ا< 0sEҔo @>KC(3+u݄(9]gLj'3?6|9S v3Fts]FTWmatbE@ZjL #d^"OpK1ѯB;YMqY[[y5=J ˮ 6sh@ƦJEm|j~| 'H%NXIaQb>~=hQP}x.Ecs4m`w}gM~l ЏC?L t== 14dF ̖Dx3޵~!6A(dW{Su^C&HwRh5ީ3[Zr]Y[aFbm}̇|%XŤ{)&ƛ:dӆ w ."l]{`|11:_*:YH*Ԟh 1?#/XY9P/E JKX<$նNjC]~N}خ%)bхGth9[!uڽ\612^Ж:Pspb!4#Bl3 4A:F;.߼>Y}.NT,R4#\) };ۈ\o,eIЀQ~փU*8`1#; t딦-IbU)9l5fpӦؠiKD{.6eLwH;W7g - ~BbJޅXGxB+U*w܂Tb2Pj6&muRҨ *ۍwˤ}7?YV6 jОg%D ּU֥}ѻ fu7Fy4֗i09P.*|ht e&u B+Z,g gSNT9>r)gcb=z.g$(~aJn3eVf:i9䤗G{MsZ_%!B*97$"/}n48a{_&R ⹱@Pڠt M յ=3i$=6.xR3}ER8uXm4p.HTM;-dyHJO"=5T櫸rV7ve"l 븶4ܗz':Rkm\R'!.+(8n.{)M;󤤠~RT7D C% %DyC2pܹ*+\F7Ò;򒦳|r~8*C_JZn;(oa&To')ܨqGaԦ¦A(o놄+-LK:S\Kb*,{(0`tF1B?я'5c9%_^9+?Or;[*@H뚆m1.T!A|BYk`'z /@UǺӿ mmJmߓ9H9KгBWVKމNww,! gEː6@6 t GQ1ᣓc g?z7BlvCS Y̞3:E72aC:V6Q!ݢsҍ2_]} ,4a{AI(3vNDj}eO*mV$|URR !W36H_twÜ ?Al ZֵZ))9}im;Bjnya8b Yү}f\@(?+⣎x*7˭LBJs;l^'z8 Ȼ 0"yTQ9=I7]#O$VlaӈOYBWs~ +0`IyLhɵr-9B~#dz[X.T&2`Ke{w_:cDtz9њ5S7)wU#@r)Ȧ+ dpazaĪ{]dbҠfAc/ ?t630bcjY"OzEAl bl _ \RcZ&MM)4γ|I i ;/F &gYDDG'Ӱ]Y A9-sTĂ/GU/7J cp}+(h^4lu$c}I( I ̼)Oǚ㨑%khcs؈o:ffL[z? lZXY2ܿV}R,jz}ІanqhfaH1mشs#F*|#ouɤY; O9PFATw^bW{5!JbWA4+q #+qavx æ0ٛ R'CNJ ~;o(:{ʴi""hx4hEs'(':ڐ+q!u59`饷Kt/z@;X#m$_ D:#R tOs:To GGrg+!ܻ_$ẓ1HDk.䍳K}(`oHW>1#_ eW-TG 3T܉,G p~Jd3?rg|>:l_Zjn5Ygw*jGȳPS7)%My%Eb73L.a9SkG4 ϦײHl4ٝ}VsKG g5~ p[O=S,h@rPӲ<ɓS%Hd=8+N` p"D3=]`i| $7 # eWP1LXIJ⿳oTk1C≯$cx1LӥdmL.,p9U]ڕaC MCퟗ +ďIzdŷk;p^| lQ+@ev]22~k?o4ʫvzizi)9 <>8hn4Q&2پzZn ?'HVszR4! [W$O Lbs2t>shN^h&qaY~][V1Ԡ R7w t..Ja')po!72WݿUZ:"܁B<ZzN`ؐ<{oأؑ))sY~#}MTr{*d5|e{kuGdl%&;!jn;ç<4Ge55#. bڄ^Z@Wj .| fc<!_D!ǔsnriSŎ!8 #2&֋7g7@Nb'C)ted6$c 3ki.Kw[ZXEWWI%JDH]&NA8Թd1C60]0<Rѱuikp `hT oX<-)mh ;"{>6/3>֩,,z&xˈtt i?:b`/H1dq.AVD&|ƕ*j)&zT[#p˱Mwq΀'CBPwkG)4% O1,ʲsG-q[*IK܅x+%&/dzSwoņR5?SF <ؙb̈́n s<[=&W_Λ;w|SK:%Q}Ջv/cMmޢ89ka} {ؘ(n髏~@vKJZ`[Q5r Rw q 1B߄n^us (b"cM6Kp93-džGd ]Zu}A{&Q`Nt0RA`:oYvj]+<~)،]fKZ'"v6= %y^E،hPid% =IP/`䗾XڛB[KaϨLx@DM^wJ,%ctGoͶ6'y]|'Y,e}֤FAAۭ;x=uxO3`uW $E]5:v_J'[e.?֢ƅ8f){_W[>OJ)+gy"q5@8{I%Q up)SumZm @PbUj xh]P+Bv > نQfjJ/r_~I OwQYҚ|,vk! $OQ[@xnd='[{E|;~c3] ZRذ#-*bJvRh}M^_s=,+9l=?K_ 2Züۖ()h _R(I~*)UwD* 6$(g/m?!yپei $)gK@z8ž'$ug7ظ-I8-ө /r^L@iȁ8Gc]ӟ%&B564Pe|Ι3h2՟ޯkR\ӽn'9wc@B"w{dmF/Ȗ@⾗pM&'pĴxJ,?2Y? b#n,ow#7!Д1&SG*=9+>Hz#R cGO( v DY] <'mMPƟ5w"p*] Hh="ĤZUc sw'qrmE\ߛDxOVR:Ӻ{ۼ20}{;D|碷mZ壨5E3=wtv͚|q"Cmѝ|(os7K߬|8E.wu*%ϻ]U<<d@z-gۮߘنvXɣ'Ibx^PYݏFt8| >Sm7c}9F6NB] 9oitT!FȲ0ךak6Nձ-x8gWP0~ȥ:ViJ=Çۍ|>ї6X]@t>cĶy*3Ї#fѹsV'йZGmD?f jeզWD+Hz)6gC_╧d*~0_:&:%Xf`K2'!K3-0 ?Mt= 6gDb%'5=oࢼJ% W~foU͓ 1ĭ(?"@zsG)U=B$Ɇi sh0R8;KV"z7tTk.3axi#&&iAk[Ŏr?%PhܸK&vS;M] |q,PК7z^`Nq]y]L0$ ++v7x@isIYm ۺ6ҷAw8-~n9`mwevF'L|+҂:~sf`9<NC3zd6WeOЭόEQHul?v20|Z8r11Sgp?ZSk^jw`/15YdTKXq#oC#*+lOl,N7L V9GTz[}AlW_xpIcJ9hA 9O1_kGVQrk/F6?| k8`K)W [KV;N_25! |VmJKS `B ؊[%b#efR,˔}+QX Sum[ݯ ~ 9;Fgf9Ik֢$ 男{=UGs#e#o9W.Q7rrjUzL/-\ڵlK o}v˟< -;^B;ZTP렷NL=[;cOr/6EWGF5^x̨u~͝")Ucj5e M*"o{r]cVӊ轅(6+5~[=_k쐏8/~umkػDO %ACCbe<̥?8BVp6hѠ6a͔<_ Os?OA0:4.̞q-qmaM/TVbWZJsjQK 6Vng ,2/B:Au8U*J( _O]Vq8< hơYJHD}GYQ=lUꃗ7t#&O~3Sktgg%d_2~L\c)y !/ڎgi~HsZ@CI0 Kśu fRk1~KosFC7GfU W Sq` OJ$wuyWcƀG5\PuM%*z̔x0|!zyhs3+h?`c5ެbҳV)tIdR 8ǎ2n{L2Di9+̳>-Q#y }uv"SB*.f- PPH"YISMaGKh(ZyZ_Hnog݈1w%aE ʓQ<]%#mڋ*ħ,V+sy9PTv): .*Jtڠ?0=hhLт(_CF*_HaT_!_OFJqifc:uZGVZgIxvM3yAx!C/=[/z?^H)Ldg ީvQg!CC @W*XO&=ΝDyKX$oE$@wHP/H@02*QP9ՖѴ&)2%"di͡vDaOa5I5c֎ ^1d|l^hM(WW%qOAL9;TCf! tjJVCۓsTb*wL%?<ֵEZlR]Kރ@ЩʍǏ rIF7JFApT->eQ+ 9V=~lOq_PJ`3_kMYWBd>[xDƜCpg$HFpm+6!ՎȄi9xZ]&VH+`^iɴ@}ƨ޼+9R9 ?lՈ.t8 zFnka4ХB .4Tc|\FYP\(@EKnqu>Xht]aыZ[)|d˘WQb(8 ") 1/_H!⤝|G" e=?FRxq("X}tς:2 qYTRc6VüXoEP)!^p3%(@C>^^h`;a%0υԨ-~]fr{2E@灞gCN!hw!-X㌙l~z)_@08OX cP qc1y;Q,YP0]pתhB3byސy@ ;'k3W}qx{O݅V~a8ql7)ۄ.䛸$"H/B'`_hcMLկ4S!HxF桹 5.fJX=&sw2\i $`R~uvELp(BȈcB6VvKcZ${*7KmƧ4F%dԚƤzP(8F' [t7NǓ-%f*kG $cSKJK/K~(ά -g|alA,E.P HZmN DYCKOlٜ;SJ;&bx3&)6=A%(f2f )рDE7:뽽cg#2Nb0m +"B9nI,nycfً^B+_7pР_Oc}@_͔#;Ec>4Pm롵AdV@+lGK_s֗1inD#3y3R͇D.o#ĖoK8}'0QlQIgrJ~!Tm\6&f0|bEeګqtΑv(Hz]fϪ~,$Ku$3\WaDk qrztM!ɑ*_靊$(E%^,&I_Νz—%K`B֯-,a/3c%GL gRʩگ. #G憛cƼ[QwOZ|&!˷+bhi?WƓݮ)0x} ^4C *Փ;ʟ)6oMtr;m {^^Xx#1ZLrnĭU豀+q˼k+Q⬁? g6YvrTGyQqF(\ P8<,30IØ}3{Iūm it^קgmh'T$]|5ٗ%EJWv]BӃ5x< ,irZ++1)4tm-0ԓ;W cXØ3O95}+S cɊ`D VM hrD |,"`5 :UƋZTr_ 1^[PsVL-gea#G&_6WUz6%sJ~p PgH8% ʩB] Rsn+,$ASP-飮̾NS.+6J{ҕełm29E՞VU2R 5|:zMti;smˤy_GAMV؍lmV]o7b>t7qx֔֎JB^\zVM *fIҼPNJXȣ|eFtQ5(T0n"vgw.~u,c#?ZK*DDn lθ 0Slp)q'ˆy'ȄcKRLr5? GBαΧ<H!5~T-IF&`=e=WvF L8ui&Ծ+IJI2a I4:4Ked^R_G~o*WKj]+_%L@G Hl N7xg8.4u(Lމ> +Lq=w, o d<ٜᎿ۞ Ag} T(6a2mS \!pհlT_߉7Ɵ!婡IZ6֒5&̸h٭B8b_ ʰߡfB!)+@Nq^,09R5ZO RȽ|*>؁P/֤hXKsajKcj КKɄ5a7R? " C'^rOcs?^콃 q%*hD/9L(b̍}]g`lq^64J@:(G=2we[꿀$WRz6-ÐrR_Iij"nW#PV7T8B@:UMbH;?KB4Xv{-/ CI?lq -(;rň@pz"b+W;9}s L/2bW_Tsk塥]V˨o##ꐣ%Mƒwo980JUy~VLQ3K:h+! 8 E`k;ekD{BN32l^AU|&~- 3}ЪRQ I'˫?~ {Z@yBӠ1`*93s@~(޼5m:*t*}T۔YV:+E jϡ1϶Wl7{;=gKt{ $/wӥ a#z We8py1i~}\'^(X˯}Vv+]28OXIE<-u\/1ItcS65Ğ)<̾ ;"QG L:mQApYSy(>I&OK%w#4(LurGo3aؼyc,NHuNMr8S\SInotWK[F ݈bъ>HETaYn18 wm`TaW<+*4Mt70iV/'{Z8CpC 4U>ג^áZ)sK=69~Z!-]+/A]]{۱zBAIL^Kf둅 % ._|9(%y}wr\IOQY+V Dq>f@jp3z='2?a!}֪;F!C6W7UY˩?VW}7|f?Ix@{B|X:Q$eP_EMܕNdġs*Cٰ;I'HY(],гNG7gcyth,{8`;V6wh˓,Ybo))q8VKz_gLw3W;0v=9c-,Mf|;V@>‡qne5!&ȔOBʏU׊u Ie#H1&dZFp\&(ұwr =gdP߸ooԸr;ׇ=e;ګjr҈0+ye 3P21BKUTq HKvYYj2E?n)݋{w0kn7eXԇw(G{BOL@ vKWpywCUU^U dȕ^=-j-hܒT30!XTf&ƕC@A`8j;"a4mrȃc5dus9zuɶModC@M]×q}bC\.lG ~9!_ehU@?ppCcC3`?X#oN3]tMUz;qB㛹roۼ+CtH9{%Oit4 WNjC{jSSD*l۾#_091&>C e9d{vC>؆L-xH4bL>Wk؈JKoTHAALY‘-rcEB#:P) x6bBkꉎӰ I~#|N"=>*jKÿ4 \iJ;G`Xc{}f ŧ-'3EU.+!1=%].m}J955fV gUM8\OϞb2G9E%d}dUO)σ9J0$a1)==Co(wrJ!5`{#Jh;Ymڕ:V؆eR5b% Wb3xQ2y+Tqqdzo#8gjVf8j\Yq&6e :Zg VO雤]v&3z!xe^#иe%8| yr@POAqLv&m3'BR{"2z"ɽעʳ|i^6Ĉ)Gmdkz_y2UzOhh+tAJ,|a@_T<#9Bi-+jBd )-8ǿQ avIs,bŌDxIH4=% K&1R&: 2Mp3dܔS+c,e]OuBWFҽOiÑHM]w PCl6g«ј&>Cウ*gC2duyi%0KOUN=>@'\ͣhcG^<&3i=|tķ h]#13"6턁chOL|c m7CL"ļT1\rleaiuň+S`nMtqc<;-a T5ӴKsԴf7E|Lm:j-u*WS.F472/7Ms.^ⶕRlPm|췼zL&E1 k- ӃjU] 'ofTx.3/J`E1SIOۉl.Ht.{61NW>Hq^i7q9>gJqmf;Urkr먩݁=ߧi?F 4pSKb\\-TCz J*C@V@ L SUI%+޳Ŋ! 4jt׫ˮ, {Qif$ʕGB`)$%* CfA|XNF;l^ l@f2z`glڲ`ix+ cwRj]F>( P}.܏gI[QuR=-mL E OoD ͩ702ؒU s5!4$=XQƑ-wc$7I§9/p+ٟ銷Ӌg/A.!J}h((ϐbk_C_BzR}Jx;b)֩!DJ=u$1HCYXźac)9%K'12=zGިb"5|>(kaﲖ M4+rL1],0A%DY:S%\{t82#*)*\1՞>ZG)eq%օfJJK}|03;dŌ$5vSsM5)s k*9,yw_ٗuX-hU T"ڦARk!ofd 4-~kcy@w0EHk'Gު6P+eyM$ 9"EOyw,>bBX(-zWh(fx3R9__2rS/2$0s.2.6It!-}%D xa2uܬ gκDEd2B*~yu)!hEq̈́go '}UlE7"F,5vކFNvv͡ qRF5-\cZEj%=?$˾Z; (UT_zvGO]2J֫i&p'A+!$%5ܚqy*<: j$?CɎ__jGԃg|0-*EFR'0Gum=45@^I?_X<yvՈN̶0E(ƽ(3e<|/d908k-e)f%=6lۖ^+S#tXVʾrN= ^:Z#U }V"nۘ0nTEJ4i[ rnJpBΎB+,*ܘ0 bM 3&7d kH{֯YhzdO S/̕~OHJ4,}=]eVG'I"sH K{(¬BvA1/P%r#&$ =9Fd+M; kUa\ xS;+-˒zt}ɥC{2"5 q[9"z5?IgV:{M-)vm6vBd`ƻ,j9bG?s#܇iW"n.ER?1kex~R]Zjd{+Z\%^f:h+LhGi!nv<C"`UjMMԑbUؕ[>U*6{e`@cKn2 !&+Y+E[ fw3/$*ڧޓ ^\ro g5iVGH8 6L[RoQE%wH,7yE8GuՏ Yq^DU^X~ KO]u5CTqZ]q UU@_i\Y)L&>ctT I%0"5TZfoؖRr\L;`k}7ѽ#{U~n@hjc(T;>^Xߢ=v}J` "ZHto)1Y"X|sc%x Ut u됫n}8mU`giz IMb#3 ][o$`-+:t^  T JDkWTwO2qt8߮'㤎Lp^WXQr)B" eK2fb p,{&ȃJDB% f!H"~xYSdS-W |Jv} g:@:=Lv ͢^E'TF9DI =MecVe%, Q,vly`b6{71Ѝ\ @VkIY3Rhkqyb:.GL@B4  ˒fn_ ! V?FdAM;-f6@I*F(@HWӬjnd&~A?ǽ'-[{4ʟUFP֦՜$SVH8W t1L/}Z , 8:MIM`ۗE7M*ba> Y-a7ֲ>BʧG8Pٳ@FaN |]JN;4bNB:8,\ɂ󴕭'F8XY 6|ڰ>Ï[D`V Q&Ӎxtiejl($fT{B ^f4ia'NsEr62fXsϒ;\PWמ_eè_7yͣH^[᜙Kܖlq>d>~pNZ!8/0nyQPB}jb ɈҦ=U+Kj&J1#"{_\"߀ee]EϰHڶa<]JQo{B ^z=Qmy~-]PyWbGȗ>>X_8axBuCtȽ^*dAޝޕA);]d9o%.t`iy|U]C o(ӨVyA -nd˶S-x!DoxxH7hop5mdOvb\wwIjEbs:AjK?w>7׎v Qrs>\@]:}u9.S۞@lzN>/F8ۃ06[bE,sM8"xHd} ETZSʯy7.l{X9:#[J{H9"|~*n =z QHQي ?^%?qI%KeUGj׸1q/g6#j?~ϴV sƭ~O p_#(1Xd2^nڡR>$k/k!R|,)`IQyw_WvǕ,[Nʂ_~6=*!iɳ`Swl{}V"4 QtQo(v˯Qb]{\3otvt 9 HCz4ӝ'Ŏ8_T)b䧒|A|ۯ ׉"k3n+gL7P~aבF{@A4hywǚG=?)lI]ܰbۿwoTFvNl)E6|Mˀa"|n%~5kP&H~r|X3~ˠ}&aMHw>{A`_W6=rtL{Rem{WE*sS\y̅E{.6aFQ!85[0ݲlG^mUt 3| *ʑ܂`VxJ]c%8>&xgLWEFvL1g5D4J0ȧjQfVva1}t٭.S;5d%`Lw#\gEʤ8?n2hTmA٤DOX\SؖhVꗚJiH879sr2_%P85"%'zGLʡR,~ͅWznX#%ې!&Ao+?`pU{+yDN\ S%[ܐ(вj} pҬI$ѱ8^z4 U1ĻrܦAeG8W6II, |=պ"psD;o>HA+k$_Jw%9,qÿc u+: xdqb|f8Ƙ/}*^6U몛eޢP!R#фvћ3. r MжB&2#Nq^dǦduݲDcH0P6+QU|` %b#]&1V0Ɖ)NjZ%ҥ-'iy D~1IrZaMC { k{]{x!PiV=VE|e"-%ޠ\}qs-BR;S1 ngAP,\Gϖ)) Ţ.ͶYwMe6>GȊfO~pq@z͸| K)Գ 6RcSlT2O077t#OQRopMDS w$sMe-yaIg {&b٣^~;ytJ N#CRaH"\b.NYUabm:5Z,uS JpG(!7U?zH8mjY~l]gzIj 9^{oPJsWH=~P:|y]5jѝ!1 1hX!oY5~K?̽^rE& ̣n%ĒN+g Sѕ7'i@['6Ε)9fKB̉ߒ)?CaTC/}RWERИkZ?" 2'mcȘ,J)rlKܑ`О"NF5HNP[Q M6lqeޥe9S/|f_/ :=DҸV(?20yrqm*!i/ZxhPO{5 7񟭋:%Eune7d8zw:ft݀ z*vg@W{&-?CQ0%i? N3Շ.o4.`U@'+ˠcqh?=G(UoBz?]G^ݹ69ȧ:i B*n?WxP2@s&vnre;axF| D QC6' #eMߺilbWz<%b˧\z1o`6(V4Sm_tZ龣Kcgj7 Y`oɿZWգDFV#q~EYo>D-W\u׏r=e(ߒZ⊹S(VmaD b,rާd=.D\1>e<)qIy<,9I'橳M-xG|PYF_j7pIy;f Cwq5BcDw*ݗYL7kJQ通ܿ-d9pl'?92-)!̕aYXU=:KP J!/*]&;Y.zQ?-d62>''R( ZJ8,~/`*Gm; 2$DcM3RO^(p9o:D]e&4ma~g/+C%jV12?TY+%j]W>'7D;Nig^E-ճ'BƈYɋ 4Jz"0XE<jQ4Wc8v"g 8WJVۆu1 -#iQU6\ڄ/N'pBA7fZ&Z:Fub`"E#M{Rp75~^Ϫc[ǽ; U1KKIJq2$LJX@9cά*:;N5!s]FԒ| FɎ2ZaAH[X SPYm3#6Gkt#{W@Zvq`6t 9֚zh?C6t_H)Pi#+.rr4 b߶e}%(d(KY0*";'qr씐!07R|Gϣn!3 ;S_HTeaXwPu|e' / <OO"Ot@Вqo`pstdS<]~/C+H~ֱ=vA" $E )_C;2Zoϵox fLksmtow/ jC؊#^#5-tyPq=4zs갥SrXCpC4? q;\J.,YѮ"ج۸ٙgewNe2[&rikOX`)u|Y BAg=Ձ&<9j_&$Ri^>WͽWVtYo:CDt!$|Dn şIi9ʼhPP1}J&a[h{5aʲ\ݠrvy8iQٜFl@'7O'9\"vK/@Z@-Y0 x 0 K8w+ H!5ʔLQA]RIQz"^(sO ?#j#Hcy\&F^Y2bb'ʝǓZn)AFYlXiYjoyB7Lv>1iۡ;cc/DzY'T*@Q} ˀj]B(į|x_M$_lHNJ6` 0B΅$-]{<]݃! 9zszMau2ϽAC T(tW?ZYTĿ-joL[=s!W|=Yt|ޛ1>&ƍܾFQMkGHA2^P'E;x%>W*A6_OmÒ] p$JHKނH;_n/m]5"0 p6= Lq*-/JWSZɄ/kdV9~⠈{嫓t(a-4iK.#M}b5VjI߾ΎO\j^Om3YQBON"GAfR[lWN=cFlʼn=0c~mȋFe``hϣB`e+[nыM+U@aNH ((u'I)O@D$;C2pz~jvT0Dk-? Lؠ+QD;p! drmM򢿮hxL!kZٰ[03 Uݔd1pX3Ȼ6 x;p}vJ冨l!߲ԃEX*3ꬫ|JΨѱjK\  SmyټQUr8`jR~6==!"9ƾQw\kpfv0H ~`!l6;Hqq &W$xM]K_w5GX¨n Ȁk,;jO&}qω_?;-9r@SS(kYC:Yw Lr=|qog=;j %z 4|02,{̲d]Z%^y{s_0','1YAJ:LbjR4WUɯd񠩝c[bVueP3|jԹyvpԋg0 EyQz*$oH,{ςPYb B6,=({ Z߲!Ǡ AsMn2];#-7KB1%5cΠH`˰Lx^YM$zlއzbaWTRHf^%RRP}wrB; ј{96oQF=#C35cqcpSig~?\XwipS+~+V70Ƹ}JP_=14sAGSID,-/x׽N*$MYoJp%.'`!JF3n&d^U#A-LϵG0@&OLGnIY8N5\ĴEkŘ ~b=FeUԌeVnA\om ^)gxQ Q+/hI"85F?BLt? p *ULN题%d"=S]oUS,5GA;ϞxYE\*]fc?S%7f|Q0dgYr)$Op/LU2QC~`&Rn}ϼxR 7N1%A1_zԶ˟t㙘L _1J 'CvEH 4}j)m-b{: RfB›Uu8)'6v&: 6Js^$Z%!͍ 7qMV <  P %lbN燉6lϠ_R9:8H Q5$ 7,]“S5¡ QX5S5`t1t˸rY/z(\0vUdT:Mu~$llttp۰~kqЫVJ+:+ݶxytkH9KQ D!1CiS*Qk4yؙTgt[{&dP犊cF~2TN~'[g^zJ E =:/+%vjo9,u<~ȁ,sIB;/CW :MhйE Tk'4++wZ3@.Udhn̔e".$8ܚ&β:Z|2~ե*d\Ɋ-"Sy^̅`A!D.w`>5͍k*Yp&WB%E>xրul"ַ}؜vWl-ײ4` t`x 훍y^ ~ѽvW$".M@P[7=ռRE?[*H4. vF`4a'ۑJg3Io`O\btv*v=OÂ2M`:_@SWc(Eޓ7h6ѦM6[:r]'=x~Y̨**)qN:ma%WAD Q&juf׹ԡ[#XXqa& <$3=]e X6{ W.}r wbfd$@2է}ңږë:Z[ۘą9/] T6L^R$vIŸu}{BXd7R ]e<>#xb:iM \*#uŅoKY d"/uk.LH@d}-"Be25c BB!r8Yr$ӁG_|4Dh=7Q;65_x2ѹޠgnrIz!B˗"P _:0 z4mK%۴2fvŐBD:|i; .^Eqruu:=waڤ%"E۶]#}? \c,!Ò8?RZ¢!ԏU(f5mIiy X7 !E݋+ >aWA-• ?~QVCY,=6u?bnĥmH8I0J9@XMNN S9x+UP13xmMq=hE ez?TXatgG$zF/]2GHC{>SXn coW)Ə;=},8sJ=O)YljZ7^~j <@R= EI%$Q[SB&@O"Y w|ʟ<dC(_^2~rѦy(Et}K:.89&DU:N1 RmHS;ftb1 )s/bR aZ(F_w| Ss/sg)(8LȺ#UX~r\4UЈ5)w:2$x_9w)<-%&ⓐv9B֎xp yC=j"Ӈ0ìn>2L?yp|U fћ\$萋D?J,Ns**&CNfZq&-~CXXr`%yN>!lۨ-b:|A\X R Rpkp_(aQXMLIOt; jka 3$6Pb8uʟDCdPOâsV`҆I<=<tT;yW, %&[{8p'M+\0;]C # Ϥ mS/˪JdT*{4;ΉpUNrb:/JLi4u,Ǹ y͛X'fτ ,MOqAx! XZ^@RB,M"0%yR=A-Q}12oˎ|N֪_5{mDqI\ 2YnRK],WXvŲ1R1]~2 qǧԚJ2^ƥ CNMjmHX4Ӱ& 54*eb'ob4Jh%~\`_-o Nlrn~Tfo0golLWiK֚L5qMR'`::"AT{|;}dϚn \o @re 㧴cIojя(k#ؿFg:& 4 jqmƷn QgߗNgo%n=QC,՗ q5|PV"ϊy*y%oH. 0sELrDo~hVrA!:' OZ}cL.9|BijXa/.{(vA{=ILT"ʡSBgjvXԚWϪ.ɪÀyxtyxҶ8ʓ_kFa`{]f b?7ϣ+;8 o?@k( uf{Ʋn ?YY1a,$v:!/جpBdR` n}d[N^Y:ֱRjz KZcuh0 ]QSC1gç $&',x{mRpŞ]廃4 gڼV$mErj-CAcBCw?O*}F4*V: >c'a 8ZA4zQi5IR*T[IaLFM%ztM7`{'J>}XQRڲ~ K>|=ve>`d'+_q B:f 'T*"cU8F-dtutYRoX!>.yeGkA7ƯяyJ^6du "v5T?R͐:ʚi5*彛ܤAh $g@V=~z|XbkE!Jy%Oa#RKtT:, 0͈ B&&5 ]SoۈQ6N0 S$KWu| aSti/0hEt iJ\Ɩ, 4 cHN4{`OmE)XAhv> jȩn,q[C>|}zi;7x?1`]n04^twkŅ$]LY&0; w(K oឣəT::x*sMmadlw~݋ 8]0]}ME.Dk!y"@Yx~#WiŹ泮IdJUTun!N@ꪁZDqQ?|&m a^/6 $_cmPN@@EhG^tޫOc`lޣv!iʠk夼BC*k dpfrS/O ў*EϜ 3:ɡSߌ#b'AJ$Ʉ(sD\E,5I.6UƖcHO7|#`U>qڄxޛrV֫>tdK aFںW0<& r_CgaxQ7)aEb==PxF\Q|>GBY'# .Γ䘨1Ut9ƌ@1D o<+|ο+{Qq׆k&% .`ZJ Lqf,F f˜PI8qϙ6ydf$?r6OZ}D;J치LlM?'06]iG:%U h#5*S6m:uxFqLGnaNwM]RN5f;r54؄bF&sq.W]{駅\#\6Ek:JAG`V OjlVtwχ;{/bEZ[crxYtELf#eut6T0ɶ#v:_"pk?Bd}C @qN!4nh|FWB,cH U0.&:k]jaB$z~ʶh Ar%$5*c|`CM(dTGJL퓻Uj,91#:6|a~ޡx\pt,QvlGWԷWM`Vatlnb|4' uE3'x}.c|finmϰ[Sfi_E\|Z~#mŠ(H-o=5QJ4?(n>:0)#WFL (Nx/Av՘Arz4S?>/r0 k~ ΪQ )̕tUn,&YfEϕ7FX@pliZ=NJo7G}if914n`B.alä㻋3z^ls.4{.\Vu{8K6Xk, dG9j|/wL$7`L`ʀa.wڨ@9'mCu3*|đV'%_|*}O+}WWuD'MC{pXUf2MK:~/NN ݔ2k;]eD'%*se!CtEɆ,6@h&&xu1.Vjw\GTP lL`I`?s% Րl=D"jY2 @ R-fLbɞbPæR5St( &)J!eB?>X):"QƧ"5UWdL`nÇ.r&;qǣ]4DfAL@ :Ѻ3oVo!KQỌm ndeYC~Y TRq } \y.uc;OY@tO5;3j9r2w_U4xC%=[̇C]J*D)%vXEr$e7פY!8.̼|nU00!Z Q $Bli{dݿ=dO8%e!,"-+9@2t8ްL؍5tvXb hF? (Ua\g;fOG<tUHk>+>C249JTWTi+!ZPjhLʵXShS =hq| p$QQ5d3:XpzBp^1t!+SS9b$t0 3tfFTL?RxhK( i +ŞBk稡8_ƫXl6ѳZu*T=Yg(PԷ:> AT hި]w6AGF1v*^J޼M)d:_Q6qh۝/W\ԧ% p`SQua VUlm<_Zq7G^Lx*_4?%\{k%R!~An=޻A?D59)ھRV OVZc- Q~+P߾ B:PX?tV0ng-GӐr;ēUiD9업:,5>J]k^ŬN֨m7/$3׀-q !ltssN mb֣}]s5 7+𭧔hl[qՆ{5Z)*uYI7-7蚭ih0؉RH#S72=ؒˬ*:DGoK1L^,~QZ&.=4Meo6O7Ec^N?yHUw|񆰈Zs=pmK?ڒȡyw}T.ozaiN SKUI=].6kC l=0 SKo]dk @y^7zw9h)/=]+c3}j&P{Ⲅ , n6"eC DJ?~2~T`\("|;\k7M2m rlu&3^x`$Ao`/Xzf4>ÖPn`@fu L!R=p.>T,SD<Lprn.:TsNv X`gk6 k]Aidܺ7S''m|G=tN@5?>X1tw=+ VAȌ-tNp=СoVvO^Ϥ덎>d^nʫwN`7HWټٺr*>vp^&Kvn, f51eA(V]۹rަKe0%$B?fq:0#J>WvbL] CC6\ Byٞ-kG}eeȶopYnzϋ{7~L/֕6ǒhoց' i\ďsqIrA!h254&ar-L_Fjǡ[]`!~8I=IOieLCM2-s=Qyd 0LdW̥Mo]uYZ)"m *3pWE}҅M"Q -$+CG&5--ݘ\C.3mlzbvefb~:%CDUcMjS¾o͚DJц1&IBtQ2\ζbG/k~5Syv'mEښVJx入-IEQ?QQ}C>[9Ob\߽HB i ${Y5j{O%ܥb0~єPĦCwʅf}s ԼSwWR!Sy^RN{݈bg/:ȁYָy}<3NJDMPN98E &L\}<]`MZf,\;.@^pꢓgn8b+)gIqdGyImghB`EЎq'Ůc~t&aK[Qw춈m*wݠ_CzG)s /C՜}tzwe[,4DeSuԭE{21 >-Y| m iIkQoRrzd;]u)hu)isJƮNnWύ_9pM7(Q_|?Z ߯ ʻ,t4ZWת aC,: C M?\/)8=Yrw*5{|YJMbHeK(UFYo+1^b|Q,cxx0 92Mist fr<n/EtlILtȀ4!!NG"2ZpsAcrK'DNANl R9?zh^0'xiF?u3HSm@DLb,6WhR!qPNI1yMuUtR?}Wx2=fBcWK-kjw3[I)''#Zq7)ẍYWW]G9*[1?$gnN|s(kb1ePDQU8Mԋ¾ٖM'y6:>,Ľ``0CaPTl_J+ Jz=pA2;b&-cnj5mdA61= ɡ F֣QF| [)ÅhnZKvUJ!|X-.WyCY>xU%0*A PXDU;#Q(Y\5|ac^zl%@9BÔa{`bT%/ϝ=*d7id@&|B&?-npcŀ/̷6I 2vZdS!op"ZLm$8 NWqU{@ ^cڲs!{0=5=vK|*ݱ'nY TʼR+a ]92"z֓W~|gm2bMN߳# $Yx$eKwT>HG{024CRmgdZo #eG<nlYmw߄YBجUЃZ7.@Flub@'Z*p u_Ʊ"Fl^ }m'YWe@[nd:9ۆb0ww+'rWc~yfۧ:|bO&/:H g Unz3Hi]lx7 KQRpƻpw*3X4CZ 'gt9,2RSIuJ~èωT:^/QL7P8#ű ,0B`WoI0?zAÉ\qwH -A?G(ɬ On} kPVHBOȩ[A%M~|F&'MKp2Gb|ɿZgZaϬ'|`@x lSP$Bho6*ɋkg;:c~*MW4K&Zq5Y̴Ou8td9w'/b (.dhB ;>xS$?[PkRV|PI== < k%5P e-~Oݖy{b}U !| r6}Ah>bϷuIa ᢢN*S#Sc0IOnfvWmN5N` $7yQAm{%%sW[f .)PcS!ĜY]39TH8B5 G@-("G/QR<ҩKn\zNEv!lTtVDjt!^jXY:"P(M%L϶7*|4D+so´<ʔBnz i7 Ȫ^d:)"'\Oss!U~Lo#%Pwu\cv^?VMªa)$dB>\lzmo!Į:en4q>-ҫWWR^2'*pw)V᷶'M0tߟKBN$i^,ywwqh\_ϕؾ.xO'#Vsf[ &G]am8Q獒^PM+~固5yd%47 &( 7TL{ 2"_R^ljOp)J9~)e vhBP;;g:8/*v[8xCk{ X;m+$As78rpYaP`CLj7l)DT ?b#YJs̕ O53/$Ge徨<d5UC)e.x53}6@l@J\rUxo1O$H:Hƚ`Špq G nd65򃦍ٚj<ַS5 iv?ȡ76 yhVv`^;~^$jnvҋXXhn*ahJQOBKTIdlMT3Ps3T=Bҗp?^2RKcG3۱iXnY,)-`M4(]5{`.4K260ԝsvkłhŽuzCŌfx^V:Squ^$$dJ3BX߁yUǑ !E)v`O\o'ק qrI_|^G_9"B6m~ShTAXhGB3"hTrc&./L.˩8%hB[MT$ҙMhGv# Pݕ(tYu#C<2əF V%*<ğH1#= nʱ op_+lhULN=YNyX!NdoۀLMpqӵ@  b!t\O]=+^p'dq*TT\"lĵ qRѮ&s񱮃]0[O{6.jNsp984:_(B*tH՛6s m ,oviUV1ǽ' jbv>uZO7)HꈡUT|&{WJNr 69J = f|XWY+Chc^MLG_V ,Ҝ5.yд\UXL24d)85I4$Erv-]Ugy*Bk W#Aw#B,K!Ⱥ)5)a¯h \.Eevg4@Wr$ͨ&_:-Kh;G-qyI*HPYm\c[ \d["釫2=6TXA $i2JBDɑ=Op5ջ;.O4ʜJ?1iZْ)$-1m&xA[&KΕ#u9CpiAOyKpe@Gr9JCGԺBԼbY LXr boְD&W ٵNƽ[>*jOe쟮 Wjz%8Yߞv$k_+ +&7%it߸v)piъzpy9> Hނ+_LiV Ր2rJʲ6ZAK5γiKxdEb LO@OiIDT^`}6DyCfw( '.ctgV,Xy-?M4EL8~i0G+[y%I/7R#t-k^K)}~]s;>1/2ѕqE宧: <#<=?(xvkF7,.|68p:rNeՐ 4 lqzSS77rczt_%RPz-KRzYVX8FJ4ή`mjwN> jP2FiXWqn*Vp AX![zuDB.R'QzGpxuϘ4P84f/Nb]hzЃtbDt`PG.Oo@'eylbǯ7SbM1!һ2gc&_BR\j do {6V38(qh4{0NR!oxNtCPq Cݖ84Rhk6oofC*U#̣Y;q `o`+#qK$rWu~xX+U YEw3sLr%qo/,;s/c\!?iSH+#Hђy7KCi1ӎ#xªIs/FYzn5ClC Vոտ  i|=K*ݴ>~|" ru82e7*V{H=r,p3h۵9 *^( > T+?-T hѠQlˏɲѬuͪRd(k{\X0(~pB㢥/*&9{+ݖP%iO"yK%7mÅ9&@ɞ*S(Hn$693OLp(_9J]sL0TJR& ) AgiO xnnxFmUƼvv [[ʸFqXܽ*|gQxA.%a?nJ);;m/rC> eszS!G_+/oZ+2\?' Fj]mzH e18)CQC²nRm65]mt'FG8ϡX)ju)Auu:3$gΎC ljnB! skfS%?F|gX4 I&(8l>{ڸ\l?pj) 9y?[# [LtCCѳ:p_{?{Z=,uVD~ZsR"џl}k7Q+XI`AnɾՒߦ=?/dS U{Q~yAFQF!֋ %U*#f8 |zpÏ̪lTlF9J܁1u)d)x9 $;Ԍ5aCrFS*46zz% )>ЂOa' xLJ5COK[n4Usuy5qaHYW"hC.7lh;̒l6_l>d2ҝ֊:xwL>ZNdC˒0@<._ݻޫ^$`VWPwY7-mXzr@\=iZ5 ~[-Xpᡷh/=j#X̟ eoJ=8̐py[];I1³7OdRə6{tn_V֬#^ђ+4h)Ӡxxɠ7FLȄqT0ݦl|FnkYm^6͒Qdy%"#`yKEr%18Ji<-Tdn5-U_[%n>e[lk~vtr7+rmls4+ep1Hl C;"owƎT%1/`F0U )_ #wkPox0G7JG܊.:H # &Qz`(6}p$\:q\1YH¢4NY`c)Q'jmqC@޻@rD>_?!X7uzNiwYє.{~!מK8,80qJDZcY(co} _g&͗P`%/W I_ѰOiPp5f@+hWs62Oö'`"ԏw BW nFe!ywtj77vCf1R8 thoL:r$܀A~!nkTH&,ȿ\_½Y3 z, As:t p2aQ0Ǔ2 <_;ЋCBN BsLͲVI5A$ Y:`]. Oco^F:eamKRs]{ѧƍ2~i܋lyF9(t" v_"BD|̥˾ooB4Ae˱N TM>UZ&Zx]./]!CFW{AH]Y[:֊FGlvw!Gl*:}q#TY*BU6)źFNs90Up+NN"vq:^0'5<&LZd\mn9? mQݸ9Mƨ"߫;N)7imҸ&*]ֺ-n'E\\CEΈ&`NBBR˭(% oonS4z#ʝSH@1omps ΁X70ˣɕ8~e4';m78'MΗ==ߟ4gIZ7;*x+Enp@Cs7ncwkُb=;l5j見Ҹ*~87#t HQev=.]*&Ѥ :hy*Lޛ\Bb:}8Y"> ۣxҧe&F /nt/r0YkEG,7UCzV tCH aDuzI_п4{A J.eI2A#ʁ:.#|bWv1V7g Ch3'n5Xrt@pm#9A cd̚!-Z ,*#;RU&!/xD+۞ *䐯Mf.VڞDk+0 cdѱhJ:*q RW 3q6u!;B't@uEOXҫ "ÆrD6İ4L _Һ(2@I;>oL )5?+Wf_w\9vlZn2|-= Xި*1rPU>-̨ZOAUd r+Rv4ԍ5K\}χ(K-P(X`U Qw41Ub:k;65%:#lX%* U;=Me`dhT<]yJ+F~2zX{DLp~}ciIUALo~pSkk,0Xj"(8ݡFaamN=2h?ᨧ }Ŭs {WgERv99aMUodd6Gr cy*f|-*YY5B7t_`ay/Mڀ^s'RyK2]TS޾nuS,1*!Hm*+< xLy/LV8w6!0:nrL|߉zi"k 49ٓOEHaࠬui N@`\ģrbr8+j#?)XZ'~ #,SEw^yZ~u#pQ>?oAԃi-kǝ'(K3CivQqH0GLʋHklRhrٕ*_VF!SE1?l#Iv#6HA~6%IZm$,guSvi\?k[z5q.~6j*ut/ ?qqfPFzZw.NTu:im?jשrOH=EgA58&7\5v|{n,._txY$ڬ1,b%virdYmO'`kolg1*dNgMWn 8*JA%aI?e[i_QX\^JjxߺWd dT=  mQMٝv7wcMU廳gB[RB uWQNOmB~R=&uakCq2 2ӦjabڼueEZw TQ- FAџ؇fEq0 DJ~"}Ɋڻ16n\B`@3_/gh L궉.cڥL`.z՟kgzňD/stt nE8]}cX x`. cr&It:霣N";Ŏ`G2AF? xZt~ Ddі?b˿ *> ۷ĹePB^g%gpl8$/IA}5e*._h P|siT{ Tof&!#]qEā860[Dܟ}]8'lAB|xG|Ƃ+)dڕ]+n,JH1%԰Vb8zK^EӢa0__}e1"܅>;N w}+ \4{lc޴Z^S11'mܥ!mOЁ Q4Du)-2cxsᙤkZ;rTDZP8Do;i%% }e@#8J8li> u/C\}#Aehid[3KaΜUN9c6?Y.R1DedVf ds]hhbӤH#?gsk27"1ɤ L?^^jJ#R jڕt.%6d[>0}o))`H/˸Gi\*z[$tD8Epj=8ړ 4-|?As2UjLR$eR`Og2w_ Y"& AN!}4W/vuJ|%ǤnVJ, 4܊65EWcƗ[A8܏OTՃ))).Q>Vx3(F?ţ^YA裇X!/Fg}HRI%E&qwHJO"wFYp&0nۜιr':Tƞ2&MO A!ڕeum.ث{—n[週8j0|C5bWitQ5F[~aSlӑr>T|HQ yeUk2Oy'F΀0 j:P߯~n {J(󣊟nራ Ogr jn j f#G e=78k ! r0u9N*?n[SrE9 On@-LИ<蜣u 6WG x?1òf?&9OX fuorĭ [~I\I6J~;h:Id-^3ɔlc̍Q6>\kglgҌe 57G/nT0Nѱ_ҩhU'Jcu)=c']MCSO\ue0SUʗ8%0ZnuGǡl8TݬAol *"Lnv"9"Խ^WeK-.Ls@^F X9^5r9bf&G5}E<Vu`Ku͈(b8D}|v ͓:0j!+G|ĭӑalqHU)=+|g[}&p: g#V:XEh=hF@,V!Ÿ>!s_G ˂/`Vp:@VBΡ_78=8˜<غ.r0"@_v?-k]s؄"j,)ͤ,d-V#75~Ja~5PrN~@Ȁ>4W]mo*.HQUUS Rb!P×ˁ m*`]zTW )}>oDLxeF/!~LYEayXYTsV|j̍uLSpε1亳V3ӟhHeʼnԲfkRڄ“+0j%I[5'gz$NgcҤlW3eq'?pbRǝd(NZZP]Pb7ZLQ h?L;];+ jVzZ҃[l"Y(%LC!CħU++_{ɀp:nՔ\C+$[ʺQe/3{ԉɻxVd8\cN߀H)"S, o/PHjh3Z) v\x Yli mʺ04[4}Y v]/xdj;`1Յ &YEXg0=ѢRŔG*R/hS2/ԖxT#(uN ,,CW~l`NP>(`Ɓ`B_[k3:E%dS$dBH}\zw'މ78_aX C.vAzfwLHn-d7Aaz-~-[aGxeTc h ,ehWRΒNjB;2_uW2lďݲ}>DT@"bT@7uCQ%; B;w&fq0Fp_n&Y]p*V LiwзYmL+> gAne,]'viHt]g8bgVjmRҾqRqՊ:K/=6K{Dʘ ;OL׷^,1N/8Zp7$qxXgvH/]4 $yr"Tjc%@$rIeW"WnS# ~yx5ɚP6CwT>vOaq^ܲ"2nrl7 )Y~U,yi4Iyd;7{j{CGm^eUa_[Dk<_C\f7p< 8/S5ҳ!SfɛΡa6AnЩ[OM@ 7GҁXmwov{4G-O Q|G=wa)]w/t}.MF9PN E G`O Ȯ/ا&qN |Q[oahC?̜'r6:0߫f޵ϜZ\ܨ-"Fi(ؗ槩Rظs1/3 O#[.lA|[$ֱK.˩&,reA8+{FU̟}͸^P,4w -s za:ncdB9;1c~ijvE~(w%m ac]t6emxg:M ]ݼv<B[%w(L-%똬Q ?W֬Яɲ6Zy*>iؐEj6u7ɂ5x%w>.@ d nrbb!Q{KOMb)䔫̢w+b^ƱBl?hIEOtSPb`=m5~m%ju7{.EՍ`hտ_/qb^$eJw[y;reKtk<5I$74v ae`X>p0X-ų>3\V*h3"[5ZQ7).N`.Ëc|xds]CIH&R{|Hop,SguQ7A+Л6{ gR3$PzA&ڃӥuD5$q\>AX^ |F(o6"sj>_I$,F9* uҙu&^ݎ 6Cu@jZfvRUPBiފDQRXܡTJC- ;*?K'[݋y]?Fj$ Si9:sN&DZG"i B"y$oQ_^I,Fe[!vZ,k8UVrЪ&d_a p^XS9wEW/ZVxa' WP48zEO-y (d"+oHzP}[Px.C> 7';':ĬGbkhjVvP' ̎E;΀!W;7m&|zWY 1םU4\|ehtfqq`m8c'ۚ83ΠH*xZhT"渞t~ہfx8o Ư?aʽ>+j+-7JXTrk6YwܲE'';Q_pS+6"{j YOBuDҿ 5 ZQ,k׺`J7\V5םXF` a;;X$&pa$S5nl THωt?mK4N/H[X'gc{`E{)e/.8ipf*5O$s&;$xD}lJѤK% &Z aG7JP UnuE -ޔQS^rJf9h3vJO}Jb6`c pl㏛Vx[± [}HTD34|כmP7<[>ښ5դI[E _eA_W'7NۭXIyq[3jW6`riƬ"2"sl?g.0-GrTa"g]@ۦN 2eP<$Kuv2,85Oj8Fr>IT^7ϭx"Hvl=4Q}$M*hA)V^r-kta) Bt/]7ϥ5pNWR #8y̗ݸ՛W$A=2T[T U^hi>TLsKr!<ɥnbh:uC0ۙ-k~Md=!O@(xEE xmLhӎU _i^HYhE dC *"Mڜ {Q݀: f@h ߋ,9٥DLUI WClȗH!|!cł|(ȃ.:'D;)CBFށq~Ɔ*pwiBII8?|q6) {ToU ' x3ok #60*r<"1d3%}6(G FKr8*`;4qC~M a]F2$9$1|507J<פ , x{^>זhw'^[FVQǙ R2w/ Gw&R/F@WÅc3]|,\Axx>Bq XrxB[wKcoHq`ZEö[Q|:W ^у*. z+V KCt)irē~~~kH)~f S)=:Sq(ʮMHp~n;pe&6u*n"|umw'CHvjcM p e ·i(CE9"7 9i*Jֹ(~[o(R<"ΜAi^gmS^%Z,so9v2EزpDU&ojpF S'*("-*-ܡ7CW~+pS- oC t+(*|Xb0 \)f *c[)%B5lQJ,-g`/6=q59D{ 6yߺ }oY9{- :IYgȳ }ˉ[msc/ >7E َԻmÌ*xz˅(Lj?-k+ f0F\WMZ[KT7e'[_g_c⢂[\ ^lmVXf9Kv9u2xEVa٘WXcx񬛷'I//g>8D?PMCVT[1fH0n^,}KB&vc*v^CmYd,]ÚФ␬D-(DJqȎZ ]Ǯ^MabȒ8%V9 2 x=k%zHs~Оn8Drf忘YHMVBu^_I9Uy8:(Td@ qR֙xzZ4m4zޜPI^D ˶Hxp$2"+.D ϥE ,>4t J|ZdtLh{f{ ^an$lg?} U%{K"Ds-g4AFu`37$4ևpԲHZ_Z7Yu|c+SSKK EG[]RGm%/ɑirU$8 P(lnpAd~,:s=>'+2Y5%ۿ[̾#E]ݱع*zo'޵N8"rsĿXt&fi}%6,JޣURjB4?@zE_MDl@Kv\HUy@P5Xqrq7A:E2;~LU??mlybXjHrH/Arx%qpß[\=۴+s^Zv8'iH9$vȃlBT2LU(RpBU s]8rF%lPIX۩B\YHIوC{8 ǍN3h3b^1;?.]V} 5#+f hbwPLJEf)ymf:7Z~dfވBz]rW3 C\i{g#Macmrd/= ;&Ys:|w!C&w%IoC\bv@PiӜ;b'T k(DiX\(85;|q& w,E^vg ` N`4qxTk@{Б|@Gr^DNfORArK8G do b ÂWvT:o h>%nlԟ7h6/yL@-$liH~H ϙ}& szH//,+͌Eg[Oz0H &c!<:G9EkfC*tBM]kqLw1\d"uY[--s`E&v_n8ɖ[$g#Ӫ ]?hU3 fY*?an<Jfb3yPYʓ,Sz@% zLOTIM"5@oNut X12[F5KNLK̰<1%_q<>RLC!vQ=:o(ܢC~yx I{9 u_tFC\f79 7fXZ t?'TN%Q'Qҥ+)d%db" |lq@(@kq䃗L!\ۭ M,Ibl~IYW[ITz]cqĀ#pOj8YE$}=U(*6yOOQ ̹#uAGZ"o-60m@Z4DN5zvN`WPЖqE*#ci \L|ZQo[ F֖e}C7sY葞B-̘297ʈC\2.!jWr10+jrØڶߟ~z^@22f<,(4ARy fLQ2viej ЩG&~ڥAfZH7Uy;*)2sЍ8_{] jnvJYsCwbv<#Wo[bt~q]'2x9Ut+ENAWHNG $SFl|&h'%Ւ)WZqRg&h qx]A:K{fQFwL'|=+՞c$ ^_ "uFed&"Of{h(vux –dXQxg@Hgzi~U'н˾&v-LT } 1QWCMqk{eˈ~' ?֗j'JJaF=눊oEh]mj5Jt溥$^mbb3X>dCĘ[1f"B諛=&u1 }h" > dծ7(<ߜb:c W$!FN1x c7/A6y2<,m@ yT+bIEX#xsCl֥B躎1VG(RXX?LQei]h-Xi24XUʩ{9mI3N }(@:0jY,(! 1ᒴ#ޅl`+VF'ֵOsUfbc 33ۨ$RgAtBq(Wȉ>&p 8`=#^klu*QIDXE?<˭ \Y2Kx\Eo8YQE2QXNy 0}U.ۗ˴\C4'QQr.wى(D: ?VC߷OټhaS ]jtpn:f%Nm~2Ίp,0u:".,~ַ,WJ XU6iA,fV\\Z6-G){~Iʬ=PH6O FMUʛ 2 ç&ݍFÅ=ޚR7ݬ&~AnD  F@l# 2/+ @"9+܌+۹4|=6"[P)kj͘D:`g7[j_I;ɼ; 4=WufC5BkҺ_m@v[\MK\F}x~h68x-s$w9N.URQk!'J] ) ??ੰ R_Nݭ:٠$J(.Gl$D#ѷKq83O"W+v$4h>WR "hAf5N0_pK 'c4Tp&0BfF7ml>L\/DE6ħ/oKmª+,Ϯ1>F٪{= eB|m-ž$cs⬓5 ̋23To݌5*(RP$aļntxT *\e40f+bwWۜ4[b7`D"5̃؊V}k'^P~JbFȜ~xzfsyh@Te eu><Ч*TZSg;8ZGQ.*a.O 鑹h~_&SirToSgoqFn4 "e?{0,C,X{ESi-*iv@/Jm]t6 8{$1 r C6 y9 aS}G$X _{gpԢzKLrNB*&U~z+<@Gz> Gjm.,pK(}p]kp>`rf9[Hl@$d4L#8zscTj[e!6ZiXZY;B]Kf-]Aŏ&hJĀh,F!.ew5$,J:3Y˟+od$W (o^AU%o2h0hf\p|9|jG7/E^vZ &y\ 9H_)&OnU>Z*3dmSm0%<],Q|s0,sM4(.:P+w׷m"%%.X9@DFLR#9Lsw˓RzX/u)sT%AeEZ򾪻ofkaEi.D\{.G5vO]lJ[hOO{o>ۯ|6be!ٰvT}ORsreHE]l4~8'Om4{C{;z<ک7L=Diմ Hj),s5sy.7֬`RGWAQ&Uی@ H3J`Gyf+XJ6$4(h'؝? 9Es,QdE?A'! 5-_S\(6HG.oXcYQLd\۝zU*"1콒ˈAM(xX7&!+{0;-e0tmmY23;ފur$cu_Iga߃wyah> ;'.cópu=57r@P296 Am$% H@*{ƖҀ4@k8/c:{^0Y#U;uKM%K\Vt' SD 2 ºdOLSdR-.6P"uAZ-yIA58覠1_vbǒ/kLpd |1pOQu+0kA~s  }YsCavО9nEʞ^&J 5ؾaC6 b 7}ܞFxY^OcBkי$'4Xbonf͑dmQT 9ybr1i{D-\:\!LġY>9=ыݫY]YP>DH2jaBw`)r~Ǝw}%OYLF` KrH$C [WSh\ =1$PK.Ԃ C`mM:&›!}:gZdX`c3⯑ .nlV?[29w#eܳkhM@ Z?HY{GJ誷^n0"nͺLk3h#`oJr5qS4xN?-C˒<{aFmJ*8 jP`!Nvj sQɥ=waB@ E9Opvώ,ge*-Tr8[}%3 io raB+sS7Yd?M+95;u#R8g]އi W9MZ˚4)yօޙe]߂p80"zF%Хm̚^$g3uNy |C~jn B~-Žu/knȆYռ f^P,_N*s`l8|TmTIm}YH]*>e #zċBh8>e荁w=rjlXZJRtRh赧oc W;F/nj3﷍v^dw>X{}x4䯂q*>jZ $S?:I~-9ԣ BEٶ wV ?,(4ϫ%v&agܣZ8c"Y/?g:@I3HsqfteGvC*uҞȽp Uao7Q{!y=s/*If=eJFZU h'YīԜc_+*v-1G3+G!IN ,F:Vqf 6v3#?[Tg|:ADPX-6>NZ-SemB2(d`8v)![Y3S~ % 9,D|Jlj)CƭZ2ŴxMƂ[Tfh r%K8vnw ʱsHHP 렌3r)ugr[c+3է,D}=ԉ^4qX5h2hW&{Y 6(72s*n:S0 ׏g:;"qC!ݑ|)3$>-ёx^øZQP{ ő5VsTD%jg ȡl[!P.m>FMxL9I 2wV]4@uRʲٸsmpiVɻ nko|;^qiR{c6\~**(Q->i o rX4Y@.posڬdgI߮()ujWMQȟułM޽ :ALkڶk.r.;DP%ecY]>/Kc]ӳi0j4M77 R uͿEF(z6Ʋ\Q"$2o6˛at鎊n $[%Pg_7/_P561$܆W}Ms>7\Q==-GvfNz b8zFTGt?u[/h{cUkzn=m|&ijF*t0u2˾OGh=<$+t jRD4~n~<2+iundUٹšX0͇ez$3K~߻CeT_ų=uVvvFꫯ R>*`Id`UW-o$* ]NzfkR"y:ZhˇT~/R[[> =lG.$94'ATq6H]Wϥ"6TK_Dt&f'=<= m'Z[ D,,3f5BR0}x*K}V1 nwrM_{ɘW!O];m/u~m 9'c8՞΋'9 Z**S66yR㰙fF,(޵co$I;:1ƤWʥtŒtfuMW[J+Yzx{oW2;Ð{kFg9mxMdPc*k(M" \t%k:n_ib> J#@g5h5u)pLԎ/*坨Dys&ɛjd!v{AӒZx#qT*NC3OIl-WF ^A䫷Ynmi"#7+.%ܢ6\_ι[d+™"7*~(X/ Q 5r|xXry VqPJ&cmQN:i mHGAC G@56ޭ^kenZ%}tGlX wpUR6ңRw v#yiDdhЍk,Ʉ.R}Y3i0kOO2+RͺXOR1&44eW(=Y5Av(MaqVwwh8 ae/,Gwp'?$^4?P|^"'5vE"1Cb'a^Szwow{;ΆA 7Whs K!Oo/%-0s빟G䥵cQܻ|m0t{n tA*ύ2X'("̼[2l> c*t rmF-̦nR>o3I #=}B!]V)+y ҃]h@qgz.w3kl̝) %4M .Hw1lniL)pa4Cv&5=,zrÛjICXl{'Nz=84vYD3;? sI4}md=M[G!ec9>8I RIM|ij7%,z^)HӠê>.Dcg@3&㌨xʴ-()ibr3d;gPr$%lƧ̳!xGΔq+ xI7;` Q#"کZ'$M @OtE.KVei.Yl4h^}E <+mKi#Ň)h!3uQQi( 7j8`@C-™Rrg`43=Hfg/^Djiy*'uiJsT憡Xn[ Gt rE''N> ֵAz 6/JUr~JHBS柖>l/YXÍ0iFY6/<ʚ}5(NLUQ??HP~΢f^`-α9mD7MԆpȫuϕsfl Tl[RxPvmqY>bvދᬍ|F0it~a5 /~Qɔal-P !Xdf0T#321/d)|󉂶Dr%AOd4qW>gko6JT~]~89Oqoq7 ͵}z92I|!wKV⊶/.Rp{P z'YR)j]$sqg龬cBj.߇<`jΦ5Q3g3ȍBp_xDR梂W7T-wxC8-D \F!$0X4C tKMq$kƲOoJ՚t:n;'oD|AoR6> aJmܒ A4`Z)O!}6c@mPgjD ڻ64HH1+YkPq*A f>|cP-mG<%;-]@z,+ޮb9#Ѝz'xE|Wvo( u: N5$ /θRJVҹ+b.o BH숕o i\)Gb"BR fSs](iEGda@uyyi ek"9X򥫧X|w¦GkY|WY{釕˗ИVTd p\ŔI]>.%%~Zj $*_hvSS 5D%Hx& ]1GR(M K6{U;e_ahBxރp\  ؉0Aec2Y(B>*pXLn7OwF)"^>lXw.".QBkoTΰBtZ4^0_TJ؛Jz $+GQ#OK4iDqz1fJPRǰ PɒWH:r(T)yLS?`9 w.j@<Pfpɕ6<`OU~[[<(t~ q}×#fJcYxl/5{)U^l?43|!-r:1sesd ͤzkᩮFV-JQ+ 㟃mj\#/p>-K $E`5}:P0ޙ>GNa7"#8藯!25]`A%ֱGESMkk)D*B#h,OMyPvRs,dN|- #8YnqooSzLG%4=-i,gk 58|tK]I&#վn"@ty=G-$veƷC=C'|2bWs6gͦck *щŘD i[R߸xlz^1q BKF/@x%kZ+xDP\qrhsYU`r+6HFVUu|re|?."U4`Rь_1D6p ;d@$@ytMٱ~P᠍=[!e\Z-o v;BW'TY:#W r?B; {|]g`9.dT):7x?+22̡*zȏ,K廥AOyrϙZ1%AmOμUokE_z/ޱ2yR,劳 n޳IgNE&I⍜ESrzmr'[Y#SWgB:xGRG S_ %2O[r^]u]l⾵[A@s0z8Id)83vxy9sCy_"ILuw,n.Apm?ߋeQȮvo4GL 8f2?*: + qP\1vghU߳F %,Uy)_؞ǀs-VpRy $VHF1^YhWD .tX```uuߩj4$Hw>O@vE98xnS{| OFI8Fcc@xwJ.3~4Z.nE`pNc⶙jZW', oωk;'=zۜ\POhJtDN8>+ÁnY/׳gR忋 ϊM2KB!Ju0>U;4$}5\"R/".x ߯{T'j͊ ~L'pAٕ-/+p\NDhfPOc79$N5= %ȇRibTPQ1 ";8e#CC$ºp6.uV( !" Iz 9 MJuT-e -O5zJۼ}݃+gn+K_Gk^0s4BYDG]QѸᾨaS'2ߊC4Lt@r+Ӥ/E@8\>kpٞ~R۟Z#d">vˉaV,,*З{Ŷj$hUUwd!GRm ލR)߭@ i{j;A=Q_)+$dR).(J70j\Yl؅}fb%a9\M6 Xɼ$oj >+x:Ⱦc23O9ɍ׆T% Zz5gaᒈ#Yc>?v= nԪQ>HM+JΜ2D-/H_uK+lsԘeJ=F~8:QH HtwۑQSUX)cHT7p %k2*_^\Ĕ_g}MrhesGT:{+應*E rVNS캝$Rl%A]'n{ ^)O/&"*y.*SL֙l/{ZfngX86_$ChUOR>șQA ,m8|3Y؄ibHJ@a|~RO -x }FHhmb(gEް+KQ=h`Bxpa1f.gJC`f),1 ^0V+2cC#d=jgOya`3⍡Sl;\QMʞKZhx pl~IpՍ2E ;W:Hu[O[gA D.#PRYO~m3̸^4 8b@L 0Qus DP>)ݝde1ߢz8ɈkD{ڼt1˱< Bmn\U?`U1T޺~;4BpZ O;9r 9Ty;M~L9ܼ}{Z4ˍ^hJDHBߥ{/2mq?GtGBg:e<$k3mr?OQ5*ܡnRĒLZk#8SS({iZSJB"l Uz\Y!5d׈kn$#(7H>9"dt.5לZ8? WJb/>؜} &Nb-idw웡h|ϗdz9MH`8OtM E,NO`(YNlyh=GTU@W:*N09Ie6j!i$8&z!-1OّSB]ԝKK|v$ioVOe.#]"~d?WP,RK"ξT!r5]v>O_?ffNloJL +O d^X $鑉zEk֌Dyavqc)zpǜ)X섳[.#7f SpK4^ Pw|,^7:[}K4]0s>{H^~UţD*HMWS'O}SӍ[WtSz w1E~O6,vT6NQEHŵwFgA/R.z25raQC\>6yv'&Eldvvl&R)  VƢt]ǂhPOښ%xw*W R@l׹2wI6\1*|vFK\mÎ}i3QfIB"#QpTG5c{cmûK*,W!cZxTO0䝆m˷ҊD(l#w$wLMPٴ}~+3 3l .y t #J..4;fǪ>zlknCDNvnH>۹>di^ G;1?VVqz>alv̯Z睙sM*Ґ\]?l FvߑJ eeSF$݂ܢZdH{͹csq}C+*-l#%b XBC>,x|bL)!W W㹸O]BCZU@ ԱD< ~TBk@w;@h$OU/zt'4Evb'@ c,[eџzNǁæ}&%x3x-v27`sƘ wjQ0 ^baF:h {oY]NU$e=>LjfX/?$f^ JfVpLRqk6 !MO޾-ȸGT2s G ^ͳ|&0c9L*Ockǖ*fQ'K9] x]NW_$H ENNH %k{6;iv`"ܯ'@1:kK⯐oKDXc=nl+K,:lEώ+!b=eaRSPr3vpLzèa[\<~7յxʉkMlCW1-o+DnU5Gh<ۍ(B*/[w-8 If$"k!$/' ~uP5TeV +];µsz@ EߦSRc\" 纬^9"od<Uz= nsVoK~[zEb7cDɣ0xYXȿ}}6c2`e򰓬Y ܅ccb > `; eU!N Z?m ,k Qk41yqv'% F_ElfMxl|o[u>`1ш"2vFSͣ^B> NaZsrqg̐F*!6MvRZ8QS@qEsMy򮹓E>r·`G\%hLey_e_s3-c紭9*: ``d3(Fj{||f$D.(,!EFzOtZ!#qtNM$+B2Hy\BMaY\Iv`6RP؄CmC̪ a6híW/TGG\oӮrdg/~2`3j?U9Ȏ e wu/_ЅFhQLW/y2Y[\[td@y^;JY+8Gs^|X,^s%Wgs1xo3;  eW NNTwcNaCyn >ʱNA'.nsqֽkh"qIৄҚBGs-œ:cmб Ms?%*v𧲄gH}qT/~2+3ݬYb#&st40&tL x4 t E< ?rop]uȝs{CHFL(@ ^vY]a%xs5b}Vwjeb!(UϮ8ݬDk7&,dhՠE.R~7_fNLvㄫJ%4f٬*alz$GA9@ 6SQK~ޯ DoX eKP l6lJOFtM*j἟,:S܂qJ4CM-D.Ôϸ.y(G2ˁ|!%;I qdF+dmJT3OL0A0R48G{f,XN!j^!w1,SxO}V #[ab8woZiȄ_V* jfL[}m(_̛fp'؍ \ #70>CA,wB"ne|,ev/g|1N, J 6qvn rED۬8Hbg9xKm"H|*{p{ɲ*" UMEFLp4[ pP2NAkHEy6®Rt1\|H~bT@!)upaa3*Me8R3m%L-Փ^!;ͥtgF@/RXZ Ga>R?w'Ȕ^y:n4_^_&0'zA9uCD4{ Nql+*83v,w}T*õC AyG+66rӞ>WD,9`C|Sxh<7QxbL+DL:h>!(P&؃&uW54C"n-{ٟ_O[N!7Me2#֬CR/Bojˀ6gh^ޜ!|͵EV+ YN i_9MT/Oׄ܉)?A-y%5虞x]`Ջj.;&P&sLʑ۸ *sx:^TBQBe. jd0梅3Á!?U4uZXiыeD,kk(Bۡ49˛ycI- Q. lQ[#4ȴeC'ҋ[>.Vꣳuxh JB}9&עF_] i1.Al]ЇRTzΙ( ZFeGl)y1IazB-gFd9DrBh.W@@;u̪Bo)CrS+Ȼ=?p޽_[άtȻZŊ&Pa>B۪jB7 﫢hGɞ_n Z"Ё++c ;(a2~ m7]pzjSkAADzZn"@u}XĠ|u^CHe0KvtiƦ$2́g4q J7^?o}}z3xј$h(YpgìV&GSf[Vha 6G tngqBey/Ta%P <$t){X JBpY[X[čfw8 ={Ii,܋"NV+Vˢ_Sgyo5,IcK:m⾸-Gڂ][a"3*Bł5l!~}D0a mfЄBY.ޤHYTF_)wh {Y$\? Qq U[-Yӊ ˀ'vf>Kx5< .f L^Ayⱆ9%~Xǻ@{=4(4=gh4M>k׺c:;d/(RsFqJ3u°``$ f>nd"͇,.8=ZmE%$)`أи<ĴE'i>_o ?T]ۮҸӦ, qHRvՑf~/I{;æ KN\$z1&W̵>ϧJvf$ ="kB3U'E.+)9֩ENӢ.!AyϮ_Qa{&7Ts Edew; =o& [B>ހiuEwaK4TJZz-XJNOzhawRps}ltT˃_G>ӈ_YAt4A3G]uFuiae;U&^YСÙ)0 tcBbbua5q"K@e(,N1eieDjqjտ^`:y3;]o3 ςJ)Us귊7pw9J͊Gɛt[[7 OVy b,Op%F$IqhCaû҄h@I)Emt }#N/ʻ"-ey&εgŹ)Ns5Րhʉ se:h8xQ#$q@Q>" ԮD*2o-}SY$~7%WC\4N]\F5DݗU1!Rԙ5NLƼʙ0 @+F@~߷1c$`!;'3˲7 V${`^P2qzF^NܰW|Dd3-OA#i=r@cѳ(FosP@YvZsN,nH1Lk=՟@ubN-xwXѲ(KscUFS,^Ң sT}.U!@zy;sE JA"G-ZCš.w :TiB+7 '%_beꃁ -gj_Ԝ d>[j{aAD#Rj o7sS/W}0/Q=?|@ $ǁ^aB”|' MleYMpDÖ'I[aq\p:hNšO!4Z%PasTFvQ`r cp 냩R_T[-!hel~.9(PKmL^Y܆VE͜#կ dӯWwU1PԊW| =7 鎎aFy(.iv4hl[M1&:E3-$^©؍ V-8תp?UZJgclvM*zLhAڈ%)& ?a< R? ŋ^GF_L}ˮ`BBe}k~u&:Qc(^[eZFNf 3"9O }&!3+L1kÊ#jU-~vPs?gئ[t10H7^YXᥙ[$\fVO\wu+Z e\#O4)O6ABz7lNL!LV .0gxJ,hЖt ɬ꼿rlUA5>E2;9gm(0kv/8<59kG8[>N.܅9WPhy^w JaoI4!D(\Dm7 b aU`̭C1Z0f|[s&\GX.Ɔ-|9'd9i1نrt" ru"e8 'si/z)=e~VF\kbz'ZԩhG\n/3 ;+Yѐ^@έq}#Af)c~Ɯ|Rpp;^I/ '6.\k-k0s_[Z yx6~/ {lt5:&u׹E`a ]T](3|N%nhF)ݕ E$%~YcrsE N1< FMψAh"utR \Cjc* NLӽNXB[2;;Ufbx9)׍V۬`; a$k_ ZT nѩ?ܕ柤E^98 k=K: ;_4kR\c6;9yP"3 -l?4a0d?lc=t={p&aR n/ y#?o Ս\:e;5_k@!;oPXظFNc.Їӗ>p0%MĈNb9 duRg,*<Cl kVI,w^mjY8^Vr EF~}l58okdgww88=Ή0ԱTztZ\V. +:N_ M}gɛR=I 5Ġ{(? uo " >^\ @~=TWFWdiuF',pqDS6adžHY2Kʬ3U60{.lܽZF{ $le'ufĞ2H~TJ~תnܠ RmclpNγJ3 qÄ5)o3yO%{ 7 $wtɰhWkU&e4g|c3!䶑 'T XL.ÇVH{. ͳ\!^ ~|Po֤)y?D6=qQUhIYarWZMQt7~:poA)Goo\J|H2FDb4l{9K(ɤR+N2o(64.mgaN R! }{5Y{DWXzH%ͻyY=bW9}/bƔ"eh\nR"Jd]ذˌ9*&H&ZQL%eTjEA&\-V/7ȼ.O+FxH7VGvہyx]n>:vF\d8B89 !'J0HYDJ0)eOG*vX*I ʣx["Ucc7`˄k>o}]a*g#AR ⠇.RQcN>Ӗ`_I}!Iաܰ/ `S5P}z$? n[g!4yЍ=yC6u> -м}뻿T-zu\ë?"P"i:D'9i:X2 #ڝL"J]`ψJG`atz0_?L3q=~0ha CS';7RNS*L)n(Bu2ԝ/Q\qJ0;U=TǮ:-ApURp:Fn_wG+|pD]Ӊ`c*j(кWPq!SP&<5]zޱq qfaQRxLJxk{${^_\K§څj1Qgtv/Ujj <HFidzJvcbyTy`,b$ZC1>hKՒ`lS>s1Os7X ɉ†ybkTL|ʅ&r'1x٠""t>9K(u+a#0N0.n]wt:{ä<1FLb.TrtwS D#ѥR]s!_JϧjsImz|~=MHo*%ŗS1^S.5eO(fejj6+WAVs۾Ƒ;B?jb훺aSӼE6a¿nL't}҆=L.MiC;s-* 4%1Y; if*]%b 9}G:` H!lړLAD # ǭ9J,&G^i'NpfTWf;pL8(?wmh:DW08 ׀y󰣄rVFBam}>d8H:e* @@@t@Fڀ D@4ݷ)Z YF>, L Rm>وhkh:}Ėis+J&WBJ1S[qgt(RWyTy¦1+^ [s4z52kYy>mve5=Cӆ tjR=p\ >S_lpgs1tX$b >}m"㾏O?BַXiUկs4=4;@'彨tKcx`l:w%sspPіk|FJzESf$=Elf)_읳֮ {-> %\kE}qۉ^pb(AlCA My<x+%':'E$E5AL3NbV-c>tw9/%Û"%3 6^ς-8oVLܾet'2qzy`H,c$>CBQ@{v3`K #l0Z?J5$xvvP !)*嘥r;m:^WB%:Ш"W&8{+JȘR9yQC/ZmlBWrܴΝ::\QX;bT@FȜE4UUqmAu%qvp GͶi?@[_}-BȦ2ݥ߸,irv0 ir^W8JpjK;P}@xA!T%/]?yvjFf!"Gy \lW)ɒ3o4Ư0bgTL}b&LmXGkם^i0B}n1wھhF\= 挚^_Q1Bcp&fjGLח(]8$J[%%Xu qMWvr_?F5k;u1SxE ' &FOdYݤD?J2JҗV£KX9V蹞]wsR!UiY q([PEi[RHL7sCE!np.R俱Aqvo偓i$!"j楩 Ε1iM!迨 d& _cr6aXuz__pӉ1IEq9RC4'S:U*>Ck M1qp٘@G4ewh;0ԚNC@tKt2X 1a#9 _/6M@{2G+4t"SQ^tfg6&,E(ďN1Qֱ'VlZ(.#INBEDŻpٛÙ|;kՋX_j `'ݣ΃ϿZ!SJ~߯t`וW讐ĚȦΣ䬨2:9 qBV͖Nbw+:Cb컜 A+ U9/=9baWȃ.Z/umqEoJ}ﵱl>)"PZ *; %n0hYi+*Mvy-6/LWmG^|^r556__^A"mmt0W\Bh}H& iLtR=C}\z3%x[ G7ΫΖ2`BFn㞎d Kewv5Xy5u`Nj%*䄒G[*/ ؗƞ9]A yg)HwAd]N1j+b*hKKl z3qh9{8{CހnM@u35C5 S9^ 7'&ε!qs)m-bU)i{j#<؝T`Qa`Sf(_QU8sv~nwZ{Au״\U ɀ 1aWa<@]KZYb_GRWd&'jxUZ !)0K%gˆ$䤡Hr mɜ8 .ԇ)u*Vn! 3j?DК={`q<iH( 鈆sxJh{eYV>>HHmV8i<5EuFcm=]2O/UfY-R' ;!6+i+SᓶcTg}idcljmA”n5=o{򞁵[S.4&Q$6 PL&?QmHR}WA=% !e/$S#y ݰRi9ͨ*M>YkգKކW AVmBN(Jf 4p#AN*@J:3hm?V)Mm?d%[”=H7 !Ozɫ-]kF=֕)fRS夔UӶvC_[jⱗLe7#+!d 0kIbBt ۼJAqZl-PH iIq3fIgGCo-Ejlӌ}ЭZLSTh x.u+4S9~t8EܶyMxyh5O58&:A5=e84 _ QMF=LgH π3;w-OGgW>BHaL;SW>òU;媃ցڦya낐?^g&Э^>fkh0'`)܍pLR\? +!F{Vt1:_b_Lx/1W X0/}] A׽cV"UleF;c` ]d:IP͢.N-L:/KmfvUZw$?h..wI 8%tuխ]jeǗddFٳW GyIEblpbմKߣҾ!7EB&?mRļS(GHlxyB?RT= r}muKي[RӜ Y?50,)V*R%r|Cva W~.+`:%UviaPژƨg&TA :]lnmXzbFamlzf1ڼЮxlG&,6] 񤕚߸GVD7)D+ĮdMH@9o^)r$&7?=^!s)1/E`xz/QzYE?i2iq ?h'| 2 -L#!r# BRZ&{EWydDp7D&f.o搒P͊Ŭ x\cr&Ŝ!+B&yJ&Sj0}K&*P<`t7BNtfSid͸D [˝EN%GWrw‰9#9Yk.rZka4' IڄH[xr68MXv/cf!xodm'ϤPyOvR|p9]WW!Nr.Ņs(2G_W1l/e+6fՊ*n(ν*$_"0q, ߟ?:I׹j@AbLs"cdS^;׮*t%V/u%W/K՛~lѮX'hBO4;Ma;%ԉdjhysO0љT>i*-΍գ7|QlV'eK߮xoYS!l-,S WkXUjM9 %aQȜfOUj<4( ϟ@ w5>{1t y0.U_93L.`g̃hfuII|\A;3Z:]϶x 'L!L_h\R5ăRObck/eDC}<8~}*?D Ѷm/_#WaDƨ|^8dyϴ)@0 惯[^~ʇo^2ne˯8&puBե44Ѳ_PFᇬx 1Bc&?ߵkmoÌɵ71휵fz/RCL@yKX}uObKŅۍ.bwEi|VIV FgXg〆FӼJ,ӺACxO  }$dQqOqا^|#a |V} 5nt6Bx'[@Aq?!gH%^rX_W˲| >foOv+\Ptg73<)F"ԕR4+l7e{⺊: (p& Q[ X]<*J HIgZͫ=`f 28oG|7~^kNYKZཷ<6<"B|? $]Q} Nr= El>{1_5QcKG A09ZCz _o:NO3#);0B]44doX&:m|7u?1%D`"$7,: M#HFeEÈq.AuCBvCC][ WH.>nŷKPmkդ'5ťRF N%ưXLE][?:Y჆!7);//{i=HP!24XR6a&u ,8Tvkyϩ\+ԤK /4`7 mX}r7<'Y]yY| /mjہpRFh$fCDJ> bt8xvU~5榪?%۔)$Uѯ1 [W XO "]^x5ւ_kQ&]0Տ֢ȈyTBNkl/lB" 5cz5ɕwpgFչ !-N 8:WTTZj2sF`U*_&? vح(S N̫OQl@>6*1uM#-UŨ ɢtn܃ hfboX >xh=`?Uo`a$OǛP*Z(f;j>w>)yp52LtZd8{yIǻWtsP!]sC1}G{$cǟPbuŮ4'7w6}[Kx~v=|+J'{a7rPy)(- P@,mj73r_xzVR ej-3h@iP?Dά4MHJWn7mJp; /!e$]Pјf~oKW 6 Oh }`0Z.47ی7!WrIQ۽[D|UCZ\4ٹ& ~|x%h׎ڛiJpSA.&@+P}`jSӍ̆OL NK]!qvBGGG3E?*zD4sD!ѩצ )*4;C,'ToYG=;'IZ~Ńe.xRˍW#:& d7[8W[t5e{ (Xј@%h$:&7l維Ǵխ\17t'h}|PnMEJ5Ahղ+A'UQ.8>L](מZȻwe;R6UƇzsk/\ؕzps9Tk`}"mt~N,M?"Ӧ#?sdlBL&1=L862J\ऻxdB D~ܥ+7w[G,VlFzĊy}r,tP5\BxIש+݉׳qw c4G&|\Of"hӹY T?bT+niE} _qR'?)xD2=tٔI;@pSq ԥ\ȤV#OeE ֳz3PĬB&aoI!±<GpgvzW2KeM}P8}"A,̊)Laͭ>EJq4j43tBTtF+D,q8(v0`VT8 PmZ9x%k6:Y%UʃZ䮕5[lt=OfBdZǀi %F)ҰD,;a3HaE@֪鏕|j{W"ö[I\ rr~j/w\\u*i04UvпI gEw kS{e:H<1[-y kƷξrnyo½uT^}XuCNTF/Θ'-{HIKFnXC[Nћ'IB2Pgj Ip%` @_w:uPd6 }0.4 RC OZM/h2p%GlM24F'!uhba{5zd gqMdEQLkP׎I8rRK7}HtzQʼn"bZr8tDu!N+*nXsg]uj3 Q?^̏șrIk$9eBկGm _Or`u0z8ko?z?10oNulҗ'X댌&w_pVO%& L{BȚ0gu:isp1_=9RăR[JG{]5Zk/!x|tV*gO"*C6i?jI ,*T2=`g #kGY+e=Z0и5z`?i+kbid^+% ؼ]Y躲 (ag܌֜l6QĐ@ EڋfKF(o_pC>Jp0"jKg!@xs[ԍ6!\WgyJ>d z1VG@T0Pe5J9DĽ'SY/ [(fJF( wATiLDdSKzwߗՠ5*xVxzPeP_AƁj5S0$mgd/fS(JY x HWRuS\xB貙4+뿵sD9& WC7Vwf.+zz}zD׸*􋕆nrnثl?Kޤ L|tBϱ䁱~i٥0uZW:vB.>\CM/Y}*b` Ԍr+ 2qmwkv(m< {aYIaN1=xpJ<8GTP@S-!S̾qc,j#pMcU p#Ȩ? 4U{u*Uz7{X ZIf3TuO"{¡!'@rPRr6ػXA 3]2L'v:ȶtausOFƚfq$ 2Yu4 6U![T.vI\c%⚙81=:KՑ[a8.he. R\p5![E^>}l[L0F9lˆ5K)a6UFYLeŲkGOzCsEeRswl,7Ky[8+:Ԓ0"r'D%B{eذs,?W ]Ϫef]C0 󝨑B^CK|-:1v;1 W\SE!HE _pJbepif&YrG_tmw-Ht:˯PH/D;ӭ(M S)γ+MP,0LiF X64d|{WW ~qRRI\RG w7ɫ;˝rO-xDhhjQ.lIĄER Ő֚cFJ2ѵ;7 ΝmNg16a^MOd"S̛WUY)ܠM/}|3A0 D=xC:9*>)7K Iǫ*f   pFŖ%U>`Rz=ϐ,4?: T B>j kev\8 XDc^Jz'm@O&|woM)|#fQņ d*8[lԕRs9zOz=̫ WoTYH_sFX\:PՃHTY0XeFC_齱T®<@]Jk`y\.e~qrhfBd|ïD̿,GD`NXs^oM+7uN*V(TZƥs&"CN$f^*.\;* _JZca]/Ȣi>|-Sx+WIȕωT2=%w?wL;0CrjgFT+gH(hpVuXF/Fg*EZcx)< 7!P 5<}-AۄzX:1uXA[{.#Rrwҹ] ?Z֞,(dX40it?4\[jK,} :#y[DHdfz{*.wŢDpPM&9'(Na(.8lNk fÂIi mQ t6Ty1pI1K[pAqUgaEIOyy;FźڬbѦ娭aH;}D橾ܠVQn`0Zo*O`?ku4{R7<*t1kp3֫k Bv7mrk:(`Q]bU/v { - YyǢeq"fQ6J;dcn 9}o=HE"dT`QL9 L|oe'wYu`kӎVH(Fukw,e#4> od'V&.7Pd+`G03d<"%0`1,VgoSuT:߻tpq46x"`fS!q:k po)nR {h涟$:0Gy(ހe#<]+|]WDV7r8u}\7Y)1 :H:~z?V;,:!@a03]-d ぼN[!nɗle`QdqL?Pw%$m=Wᤧz!|@z_~jwgK>} ScLyOmצ!~V̱]6f- [6**;g)A(NP;H^lq{ԥ[n?<( &`1y VGwzqmGM`vU>_[-zPh~:'XPWkmwMxvrceybh5$&Tu*^;s_n1>!dPl  { p{E }Rឳ.'ӟ[B&ݣ֓j=3#u _~|' Ew{-e&{&t kг6ٲFf+Ҿ?C"ȊD\ㆂf̕D{Yf}mC5Z2^ť3Y~wQ4?%zs4MLˈV"HB>_8y]mw%Ts=&5qEK- c]1wLq}K땻*COt>%YdgnO'[H G*M2rږ58$)QwL@Y \]fg\sѐ|܀ ?\iى)M_ 2l A~{-ߋ`s"H =_QAGcK[G+>SDĺ*^$QE'ϳr  F6Sir.ܻ;KVn"!:}qj/)BFxZ]2˹{aA|uS&͐~;DX–?m5Ir @ǐ[ڻ0剣5YNDZl͈@X j>" >M/[O6P,v%nk0/ )khG!h[44e7JT 5#?F%]2y,Cu&?t+w#ft_ :jKZ2ZJĺeALDT)PxN%/{NDdJ@Ъ\K,7G?Ypl Tݠ{^6e38_6cҗeM۾EEp Żl"b<1A{0/za0WmqKB^telK-Oɟ,v!q7/C! LUkb3Ӹϙو`j\M(XxF>bQDЧexN:Aޢ \x8@$:鷊27'vP$3k Cr_TTL 1 gc翶Q[vޔE݇a~51kX_9u!! XHjd`Ar-E0UyR~?:u{Ŧ4aΨԏC]eUӒ#-J_(\MO7@|^mu|N;߭l& i,p )nIIE?UJfG0zILƱ@;>3%uz}T?C\,m9_$m $ z RItbn.P#5{^m޳^ 50D"vl=72puueW8?)͖|^D!7aL>e6T3%Mib,k}T~N E j`WQ5Ӵ*q!S@]ӓPz,` Z5;P^f d4e鲚U\Xm{ 7k9 t>@ EOanұyH`t;-<};MY4Fz;N{cVwgOh>83GKg k>>tB'ַ$;CY#SC̖aE@,8iBmPOIzbKV`r6.P*͌wΧ% - z@֒DDBQd?Y4)~ʙu; [W,tP F NWElE1o;61챺8ncqC2hZ)v7f{FOXڮM;eGƟo*rڏ&:lfT zCw~AfMϖw培,"I̹=+eg.L׊kZfZP_nԝhչ`:qAiQZez22lPD2Q<t\A ~( K<2'qU@nVܦ8cm bW4=c$#`2/6Aiq/lMkGL˟I^hp7 O G` hFF?7XUQ_!/%@\D-m_#'kٯIӘt[^'}m+QަG0؈Z MւWi'fOihY/..䠔 m xbMwٱ&tcS2PZhjfrWT [Wq,`",otzV;' %(al*1)oB(څ-ށ 2sfrs^GEsMqhCI/KVq` ʕB}us$K0Pinl|'ЊϭDma!ÌEGIGI< ġ/)kr5+3OGDi1ARNq| I,{c$r.9}h3ܥ[R_ч0g)Fj]l' ^+g)NW߲i_+xb]|dr9mWe݃Y/>;?#ns=\/'NvMbHuyBcXnAo?Lnv ujaHiF|TH4Bi&4Bq* ";R؃AΚǕAӆʈJ~ _j*J, \[[US$BZ hdo <b)(n9/@kjE:o{8HAqjb3<apNPکie&H¸}&~\hIQHhhRje ;S0So h`hK⋴PvFn`1o0ߖ kCk/ / ϗ  2scV>1GULF"6thSÇP%, 0_gmoRpfX0TVG\>/oOgt3wզ1r%*o X:>eIx3+23j\B^9z5ĸ$&*s,DgdxFQ%Xc ?yݫT1l*< ;e|R6}@Şn^߲eJ*M'lG- O5Jkh"3 b⹂O"QN#cPVl[`&c>~}v$~JhB;ӷJS \#Q,`r$qZC`巎E5Gy "[wKX1BK+,g=e=R%mO<%pQO6rqc/k y~Mђ{u/yP5yxdH,O8 Sx YW`hn*N,ɀi[֗af13q*P[:G VcŁ4HuC r8Zm$&ȣś.WO )U L %u72{[աq][ $ˀZ3tF5kc (y{tbB-q--&/mYRͿ:2GBԉ7߬rΉCf<\z yZ@pX4<0ET(wm t|Wsv¨eCr/Cq~wB<AP#n;΃Ou6}_=+u0>;9d%)4vHJqs(<,J2'*$]wRɟ1 }JH#*1z YGBS#=LҢ~UЄmW$vQ''r#xbJi,_0q?]X+?F58O <2Fo@vKhA|ϽZV^@;N&sB̜3G藐j?GOr]nî<~XBxU<>,P*ޱM`c9zgI#nK٧hEr~ c#zW3: 3c9qI!;ɒz6VIW;ws#9 9S xkKnǓ VdiZZc(j4k`f&,F+ <1 Y%t ,f.S,C U Y~.l#cm&:~!&V6ίQUBJy;Rʺ^zdjh_Y73:[LK +5 zn^nbc>iD \oMK] w9y:퐬T^ʘ7XhG,}(`{߱(.A-oftRkEƣاj8gYXxTQTV~'АpJp8y-&}KPs.c"r#L4J͗{$kNS' \htD5ߔTCM`1:8ʶ,>jykIܦ[yjpDĠܡ!Bif7b`ϼ#PR?*kIVaow8jH[toȔ"7O7nLL~_5ŵARG}~9X燺ASvk8 EEs%T\yCAuG: b䴺kx-!UjVOO>.o>nr&v"9YKin+Uq-YT44P~Np10S"bH#?PÃ(=-#fJWBLGxu&R7k{8Pe^gr'~̚a%]5c%QA;sJW_eA6q!֔S ] b"fk %]Fn9m_6 ~ v{PKD8X b(!?|m~݋;U2N v;~>W@tk(}H{ˑF`FeXK f>Dr ˉ2רMD.QvjG„e=#,JL1e =nTM76W MVu822opt1`-vn-K4y~à vo{/CJ5K xL%tzk"ل*o'\g%3ܝ(n"jG j "&q;az,mH= 3he&@7BR.o0A~n{N02ogoGwMˡLǣjApHrMCIYxU'{"=]vqROO7I$MxE9햛P64wjet2i9\_o_9>oŜ# B'?ƃ6zJU]zhY7j`+/'4<@݆na:'6v"=,t y+mC $ۿ**w`GϰP5fAl3"FlM}yu=bStӎr^~ĢhȕXL4UMk #2:.VMDuEL& Ah `W?gf/7{nJF@>_1x=]Wz|,\w֍g;iT,,rq,%iNiQ"[#fO^/ *d@9x?hqq{@&sښ9^`l$LB5 U7͛h?ND]X(&DlKM W ۧ붬Ʊ*EЖ1+SLJ]C4VϪ-z^y/qs$_ifQ+_Pf]ZD7Ԑf'vc*?[.z8'-;!m6WK9LyrUcc%ֺ ZY-P}4Ouȑ~gk25Hi [*aƬoٝTT Dap QV]D M'mAT9r5s6[!YNxQc11,ﳬbƉ_Ac&]^Yg l-&"F?Vx"@L m} V1r⹖4Oڌ@n^än 'RBCbkQt@td<5otC6bƐt%^Փ:'ֽ_`_icPa9,|R,8uQP9@ "W6ۊ~o^ @?:7( h/)7]/C2|^@e4cF䍷}H8!-E9nd*J-:Zk/HrU ?O ƚ{7VCR}iJ)2 _(@P|`VB2q {N~ӇLqle{>d +R&+E+"3Gw벵KKm-:u~"^L! u3kLu-UK):qH<|a&R[bNdLd1N?v *+wjٸᠻXX+@fs:^gZ̧?wb7S& ۊ; Xr3Mo3]#Gcm p=髢J1$D${]cK;^d1:ڀ=1("s!y+z{_ZgcR3GVM$xdHM2xL G=l8ڍv fG/tF#Ao#Bj ܵ)=ia#;8b$$=bއt_6m0ak}{z2z'r!rm_:D3!Ck^|0-oc2Fi-ߣTVhy뜴Fw.BਨOW9멅󈔎fImuq.()syA LBM[,[UdP^776"z2Tb/Oay8&I3y3X{}.'lU1B‘o~3cYJV7[c;,H O D[ha*VS]IP_RG!UH&'gX}/ Yꠔ&ëS%F0U˔FZd͇[!˖wٔTxϿX\n2Ĉf~i/ԸCU4X̠\Fg_#)0z؆ O`{ _imjw@:PfMۼ p_)j_}-ZοGCDVA,-0!}]{̋ ͞LρU~t0O4dbƆ(~HV+Ѷ1M1>*VJBp%Csahx?ƚw/wM/56ʚd<¸AZ/*Iх)P3"#]W-@N ,^zЬE] F6]1L[Qze8}ߋ+nx;,F>62c.(MlAPiK[i 9VV l= Sy~hJw`&XMX`fa *hrI?=^H?;)zVx?۳ڬ6P/λ}<񾍾Q_*rvJL9h}gvܨȂwӓHm>>$ެe1CsMuOIWp趍E5^9ny=2f09A8VԼQyK 6c+~Y Z/ct4f]YԴ}6Ō,?]xw虄MGj6o_>0M\sZhWm!2(s8KՐlodƽz$2 HP.==’B})&1/)#Z7w{vZQ8-0Wմ%#bŷ?xȯg؛CXw2]I5 wQ7.|AMQ1%XgZjN$>`:W ܨSma_Qt+c+k&=*X͜8 cE}M10IށIwF 4+Eݗ*An>W[J]dɌ.0'y=p2QUNբ8܄zIk:J osTֽvVس֒ u1Ԙ2éL,Q` `°D-9.?Q<(,k.V Gg]8!Ƨ;Zھq`(Tv\(]@# ѵ{[+C4s3u 0?Eyl!QaF`<.tAQnY?/yMs8xgcݳCS IXPJΪ10%D : dsasmd3#l,ҧ/ґ<"`l*(=*0ra&%Su7#~41?/KYV?Ln_f+*^9sM+SǜTq[v7}GVԲzo&*(^*yN7ܺ4@Gp:9FY? (^-dy,?V#,6|.ͥ{ek%IJg,鹬vۚ ",gipo r )3s'4kvTg3uil. ImUvBڏI+m.h'%2Kw.*`mqL.4';[4A#Y9\ۙ;]7^s mmE)~ǾWmt1*UJhmB^`XFp`DwQ8k>I8foSV /w.4"Y/T> Hyi49҄f@cAteL tR/m:0@XgB,4BX?S1+dW< /oޅMNd%_?ך).%">䇴[^3>r@zݡImN)S鱢7<f})#2<#޾hT<*]2"ٴRg׹̾SHvS9qn8֩prb.{ג|#^4JUȉf`W)L%ؘUte!kw W})'ۛ-G "@ ӏwP kfOytfu$4<О85*QR-@L:8id*5U;= n|s2[)j/CJGj[?plfCʉ!3600-: B$1m- &y;XA:?YÚ Q5vJo yTݘʸF$gж@1gE'7.8_?! QlFR-XytIk(S5'=[|fSwTJ:svɩ<>wE^(VT :VbeVٔ!on~(J-\ߦO*~+l 2>x?ʒJQx1-8 nw.7 5[ }Ys[`UrC. 1޸ /p" [$uF  ]~P$b $ES*(H'vD&LGFߪY2L`Q`f*FA\XM$e݇@Lox)6*M< n@WuC2.)v_۔`ktjo|=~r ]q/վ>-Qh[Qr+Ռ$ޓ~Q:1BZލ0!&_WUEd+7Ucس{x&Bjڥal#zٍpSgG$URϷ&uLGm6SHZMv'^.i h >cQsѰ3.RT•RK=I:&Ad?`e_fFXKN C7 OY[wHc CyC]Y"+~~í!;J?:ocj[cbds`,N#nѲ+zQ4V 5=%6<~* >v{k1"1I'MMc.f.kWMwJ"kJ=⻺*O' JX`N];Z `ue*M_ G8tn]5c ^֖f4I.4}&,2)b'~Ir J!`.gP]0EG^S>Fq q͐81 V NbtOw>&i=9"CfNDR[jGuzҍ d1jmҗz9'QBXi%pK:'wjiyIopچ\:י1PE3J$N8!7xHW{٪*M]WޠJ J9bgW^Fgbn{( *3txFO򵂅KJ+mؕx1!hMxAuocaVdLFk͎ L@H!\q|m:yd_DQd~*džTS31nGY^f@m_sm">4Q=VNg5 xN`@:w͓]9M)TIQW׻XJBhbe9S-o= < e!h~hTvVh}fe-@.Q~U#N\">WdXB9cJ}zG0]b~:;Ʈ]5Bey>Uvy _1)+ >_1.*Ks{NA緷}Gܫ y{7dbT7IDbt=T8'wcF`d?Q eh>{qy8']vh!rn20iͭ ݑW aN7a9!b N<{Mpˀ%$$A*Ù_}}=P I BNN\W=z픔;ƥmY >v`y$ADF$Ul1 -.͹Q*G]#@-)g4R Ž.1/e; ʈgdir2VYi=%b*j#{z}LBֆܢv(TIcw)~%uŀ,rUXAva:bMbt'24VpG-0J>o):qk1j ACv[ թQvje {1 ,UV)J:#n3ysJ9IiHEMVe)VK1̉z6ZjO-N3osӓlyɈj̫k֗PBBqtQcp5C}p]ELʎ_P1;:]TvY4ﰃxo/l^zz]ĚΝNM P''p%S6D]Dr*` HіˊS1  9ZKYo0LuzC׿[tmW])AcشHͮɀ@lC3)R՘ޕ*R-Zw fNP*P$vRQ=hr~:*Fl_IF![Sޝ؍ڟiLN|\"W%ΨO&0"bg. 9vAm='N Rʋ,d}KρQ2Nu־RJ0P2g2hQG`ztj:f˧\!`+.G@Gx ,%+uUyg\yҰU 0&"Y2rrl1JmGx͒c<ѭM0Z(ia2z;4f*:@q/: {<£ÎO&Jk0~u0 Mc|rʴJ'[N_3 _7_Z;&/Nf,KvhWf 3d8ȋNLO_K1X2Q*٩SlHVvPf "| R]4Ed/fo`JR!jvB~@Y Z]&sk{ӓFM'A<1zb~3%^9"ֶ@4j/ApO}.oT1L䵘&&2_&s@ u@>rB7q8#ܥ@yTsrwWMWkB蟋_ җM|^ttr KQP Wn >QnH\A BMF*ao^^6Z^Q@NP>9R 1t+̠2?,oBkgKos & 5vQ>Dβή7fa oN8W'vo3tJF R*YrQQTZ&[!ا. ꟱ņŚ]I?W $4*^X[+E^ ZC+*w!542#q,~4vcr%Ɋ@LjmYuDB ;@Qz 7D&;yBAlP=*vN"ԑF wA+4x#G7Py VXjbt,eV:< 'Z}4=۲a&=s'uGTGL&WO9_C8էfU.`~TRj{b~9.@g3X>?V nkg9uF f}!Xb^EV|}Gu@cy3&k}Ñ@j !A,=iI:egĤigdo6"&>9\; Pjk%d}1[[)1Z!(V~.8Q"BJY\ЄT9ݏ0=VѪa.عQSe=5?m *AwWTYpQJ߲7dՊї6uv>ۨxyR1\l P -(qqNM}-Rp-I^iDrfYP{ 'jh:Vͤv+ ;IZ4q;፡HE2ژ){1揟b{-d:LIۑbvj?&Wm"e:ў.ZNKYBxPptf)cŷDoW$iZ?2E:D{:849ҒT67rW׀_:sYmxGz~M1'p[!G6J¶Pkw]GӝH{DZǿ k1mFq@ #-WsjFOF !6DժBI !Dv{և1P1?E&ٱ`<;Բ﯒54v|ZKVv &<˂4xI1C9)Fc5.tV;I蟲!ĨЋhcg¹Z~U5O (ZRќ竬9'2&/?ɒ+:v&W7թs +XH)WW]Cb&w<NRƑ^'hBClC5nP=_Z4TD qC66) @S1fc20lǮ%tY Rc7Żx—;AVB.oTx;Ou{‰[*u_O4} ncPRKqJUd0[v߄] s|S'D2뎺k@dP$ԫyD`JJBjr$q<ߙ#E\EZpT3R#5l=G0M2:򗦊 Ik~ M1UM mW?qՉ1rH >7=:MG>TV`nd}#~\]^YRo^T⧐hCCccV(Kb=炰e}(MͰ8VȨº3qMYqJÝ2O;L"cWvY(c0כ"2Y2M7@nw4DXP(=h{^#GU)ݴ1e,w&FQgi,2N]VQI8/gDɮpū{zh3rJP:d_zw>rPެp+fV'J8g(| L!D\$yu8j|azm[f`ޔŷ厥~)%f»}|% s4Xl<Zmn8#K:҅+p% UoHcx}Elĸ:(q|ȃA 7[H:8!!UV HEa*8BJ'ͯviɍ o .OP2MX1)6Y@=ӌXHEznDq#_cz30~\yÃ1({`Vmsʄ1w',D2ykɓ#>OOǯ=Z\u -9W S"y頳%:F(Y,\Gq5{&{Rg(jA{YBBD%dKR #f~!wA*toz{>'S |~9UZEQ ^ث)R34 C3 @YeoC 3[! ~E7Q('R')(@# /"vJg+\EƏ8.CrbckGyIQpa&ӊ`cDn〝=/aO3AR1{(0c EaT>2N{5YPUgIq 7[ϴux S2o! @c.@zxʐn }3s2~{=srFid v 0Ԋmu&{Ijo钘U*"鈂=q<æ"u8UBN" Ӧ.9jC$ĭ.9#=bh_d9eχ_b}K{xV C{V, xn~^),Zu,\_Kw,YCXl;.w-)<8 BOZ^PDσ1d )m>Pi:U[cRz=EKeu6Sˆ;/MVx{ϱ"b@'QJ_FkԉCsnz8*^(fZjx@ˡ&ݚM9Y9boњϐ~d4D[{2uM[bVO4[MJ64_#z3S0ylHc-0*v_>xB0g bX{2Q(`ˍwv;aafeb-Uz<n0 cA>\M?3Y9I0y{erjL͇Qؓ-gx E3  >H dكi@#\0On}~9A(tVB{xC@ozu|h7^euCD?G.}"_yxXPR~bDWZy={f0R.vaӹڦQ.5#JT&CT';=*Z<3{K;i0ȡ%Kt6I${BCR@V"66wQ5ܙsv^/ Ǡ!os% ߠFٕL3Oh k;fUo,@Jc;QqMYZҖBL'cxAH8W;˦5fL8BR(7rI1%, w,ݧ#~Bi:V&"F|ܳN yx/ {MRӯuwv{wҞ,r ٺa=SZZ\= z 5:*W .r6dӸrD-sQ;mHc\k*77wd庳z-0B)F;KԵׂ-;`c>GNkLOl/}hBrՒcE>lt1Q,}_exmi)Nh{'Nm%G-bkZcIgKy 9c"'Uo2 ]S\q+"4>4'D@'{ƮBbڊ_S#;[T)RҖ]\%œow.\ ޯڎAn4 ~iڪ,8`ɯOQPZѰov+ _/Fm e1& s8tM,۷"/3`}C AOT~ $Ob@UlQD#Қ]Y>XjM(K;v ^?WS壝Z#AC[4G|>֠:-_wXt0=%HTMh-XMpDlС6Ĭ hbvGՅ5j6,CNKcl;Dj*>S+,~ "k~MzrЕEqF˨ǖ 8/68Uxʦ-jL-ru酅f՜z4UaX6/ߨuRȮd4[郠Zyex =c,16L[-I/[S+- y6@%KR?T/l>`2n/E]!l,rwkoBHVT#Mޮ~ GNf| K^;X^G`,r~q חqQ#U_p+dOeZ?#(wJ:>ٛ X9vOU0;YQ17%Kh5&>Q@D'xH(:w. KiO :ᾤ]]OstO΂cV"w2HُrTg{iсzJ<+ws߻22&M9z3oC8mڂ'ZC dy:KkA{mҢ%^dkb6~Φ1^;?iVܡz؝ozsѩZ!A> ^6{AUyG}1IDK;$Ia cc*Ko$h*߹]&\reTa>UMi\Zy%b pHKoF{-^@ՓٟDZ4CHy?dHd_80+ (tNxNywdna'}_Df\(GUmӬJ/Lg,S >G3H[FXq#/:K)胼4쪁gMt;_f Ԟ$ #^=xI.O~{ڂh* gIX<߰^+>Xx@~aղ+tƐz1y_-gњw7~>E !p%>i|ʍ@o6?CSuxp>=FFz.IEcFe7Rh>78mHqAffrOd7=6daIK5 ԨfEc^-G.ˀH~5Y{x~̦͝0B 8AG# b:R@;_ ΞorNFϝfN +NW ZRyoDaJ{ , :9Ǣ3Ų7gʇ^vnvw ,"#>8Af& nTEV{f::r8BM^1 7Cw7 ֿ@ٖI.xyIY`+O)× NYYkǚ0]D0/g9^MGcuq61!.:@޶W _bǙVύ]ޡ6VjcƁ9KUӡMzkX/C= r3SumBqKhѕqnBcӡ֟c$Ry4qgڵS\wNU6j*BWZzad؁KK,Dlf({u`DIH#M3h'qexACmL2jbkm;#Zr:hδ[}meS[^2޼rLKHڒΟ-\^pQH7䍈[ŘEg,8׳$we1՘y57,1(p紛ruU{zT裀sD7Fbs2=oN)"vƤ\G8\1=pZV$Tѳ M>7̉oGx!tڎ۹6yǡ]hz6S}):R!3:$%: ]Íp'Uhê2}RO~ ,r ,e32MH[% ftّ\'DT:?E n>֖* SH>DzpLl%#yvC2XVE H,[jP;K>5YXyb?Ͷ|J P:xJX) b;ȵ({@1۝- $e5MyQfA H%9@K_ 8[6Fz4MCg҇ؤu!w$8bh=}OףS\EPzW*@hc]cm7I EJ3(TBo؋R<+J0sX7g.A5D$z]+L)Lh糖qjrՉy0GdO-q_ueGCvczft!ӦUp`:\?oԿrZc<8fg1&-;\7*'{M57r;O8aZnXJ+~.y֥]HzD.<­OF)5' +Z'M]!S> IqhAoRn:6;5p.ztivb{="+`u^:s) aH%FMGx-r{[ kJ(]zލ5N W` \aAa&9}<^.8 3]|I?/~8{Uy8Z/Jx|É,Vm /aLnwdJ<(<}Q,Vfm,ҏdf*K"d^L"Z̔GA6q]l9T4s?ON12QR"1۴ Lh*&N5Ǒ jY`ǙK/WT27F]\x{a$%]"e_- \xGЋ@=@Iz_"UIϧb2(ƸM+(RDO$[HB1 :w2с#h7_q|+ D3׺B8. g>e!"?גPn̗Z߅UX$$qE \@ ~! j;-lifCfkTT(QST/ A/A.c{@OzXq351`Ws(Soo8e16rזG (Z/:533,6!u[ٗw4R(S1&롥(o8',xM6B-VG_]t?|ul:e&prOmA0,ūdw"[Ps?ZPL/w)L^7-hmq!xD^ i֚867mB2[8E32h~VC %fB&= 1ܧsAKn6,{>ޥdp td%S(XWpn,_yZR[F]r4f;906.T%ylESА}pw7ehģDuJZeDGD}=]NYUg&>ϸ+ D1Ws?yMVYc]aLC8)A"`=+rH.CD~T92^~F*d}Ur@q !]MgfOB1Nnj/{ ~e$ʌaC9l<,u0 ]G$[-MRX]} ޛz+q'ԶQv'Ւ^1-G\ ~<t/y_'.|C"4%$S]D o8&X8|pYqbr(5zo)rc"`2w枑D<ߜ}OD37W6|`0 Vt7 _gj|N:lNz].Q ʽ %ʰX!%W3򒠳BBgx_#忁6ez j J+<2P ]J ̿%x@&AQ[a)ˊRGmZ@$̃ˆSBGaZX V5*<(O(.'cW4UYw=D;OJHn$ډ{> E&}X]n8,Έ,z^‘ŸSJˊi+U7u5j֣Yz;-nR02(MAc(p-5RcqX:V&k\){*Xua#j+l[n7&D"ICE:W5ix"Ε***11a$1nV,ŝeH!D˱{Go'g_Mz'Ċ4XfWoQV_쨥bInuu0/yLz2$ ͰAMs|C<xݩldw[+!}\(n١͑etm{ߖ0_.=_qSאMXz:7tpg 5p'?,Q8[[ˣOVLDϱ92Ok2}wCE p&M3V [_J|$d##L5ʝX9:}GH%#"-Z-^2(䲺n嵾)il:d.U24 6??Գ][n9,_EpVcJЖo轃&vmgΪvMt!:# L)hdC;m[Cid_B{V4>X Չlnwrʨioa}x¹gzW 4 9 EV6ua hyHpIuf 9|5QO~.:}'x# pQ|oy-] :?tD&}gP# )t0KԝM^/U4\Ra981uB){R\ڞi#Ϲnmwc$~%RLW#'V4?{i3|lPY(Q}1fw8{F `)tXH" _7EJ!V9;򟣃,):yI+K>_#`ٓd%V?T9-j:P]k$}r +O>2h \Bc~̒d#HZYv49f#k(uc>nv鑳j1 y`dM]g߭.mĎ9̵^lDњ@iw鉯GtsDc4 \b 8߄ɝX{E1k̕{Hqzto6U&249`̷[Pc#ZվX%ieN..{jR*w8Ꙡ4T_jEL] ?߰X򑊫;v4SAn;hZH͒ ٣Rg |9=0ݿt j"4~YH4:{ Np uĮAjx3ٔ8X.,X+; (ۀBsc7ƥ!Mu"nW~6 *uN u0a=Nk4س6 CHV5<Āo\נ}js7B}P5Z;,KM=.ҩ%Z^4]ꇨ(cnS:,!iԨ=3 _7O}/=ffVP}e+Ӛs?;%gT1/#EMDLK'kTʔ'?~өR1R&C*\ 7gE#X 1G fsjARcc}A:c`lT0 ԕlbÃy-[զf9zxL75ˀ@mlGrB*$S "t^ZmBq.5@4uLk=ЙZ5 q)FD]?dDIS8Aय़[gA 3/{67 X?~V2k NbeSJ*7nOػ[yoUµa}$q*τSTdh[d]ǹqcY}lj;=!Ѷ+HDen-.>cMa! )x>0*HU^כGUS9!o5W(x^䵪x}+VSٺ5木?E Q|8qB$}<-sO/KPAp֡HDKyגRX:~O0xqP JJa7kx %'vm<&x$14-MԤ!I24]ND!Ec3H6L01abB{^a]A-i"1\)PWphжg~]LIqOO/Li4-iI&h;VOI$p}#wY= cBBR2;j/{4u58YN .}\ w艌tɫ Zt)($ha}o #& &F(]ێg/ا~h_&&nz&Id964_`25Ga,ȁe<n LLsO}R#ߦٷYx"zKeWP͔bP( Aj=qg{C|#PƝ~4yIaNku?|HY*OM$8փEU|wDoPضƅ g8)-<;ԽJ)<&Y*foU ]sijy`Ezf;AKohHq%p=:T.a"jY+Uȳ6GMX C0=G* }Dkf@l$=)c )yvuWd^*L$}e7DE엓@(t x.lɢ` JsF^g7m6Tk73[L 2&vr@#\19pqOC'iĵ_^Cc xLW "ρFtSK:U*kݝ~78Y/SFM 2i;* @M2M2Xzy4T9ˆq2${yIu p{> x={?ߺ /1[nlOyHJ?bwbL L /[er1tC&x,4Գ*|5VFCPVJJhwߌB{|)E&q7J+CLY3bFafS;[|Mi+L|bGa]cPp;SjگhSf05;ÚoL؍b^kTJ/lK4o0] i_WxrNs -@w1ux]e"!ԜN!N[-} nɀ*nd3iYLD=e7B1ðAgϾ^I8LW=/aBZF #)~yFU5#OS {-+FbQ5nϠۼX4۝JOSwmX=opěC$`\BX#hk*@7DAE5"oۘ D׿G\*7(2TRW 4ɥc#)cʤQP VgC"s1 .A75*2pkV\'>=Fkeq cP- ;8}M)b"JeCށABΩx֯:E<ԧ?Q=6R>_-l+^CbR]4-D̍U|ȗCުQ~dWMݡAs.ǭ}e6B4@홨&:^G1D.nد~ttcلZK aFZ ʺVO8b9x[IsKhȫJmiU^X٩%sSlԏ-_nSU*J&5 uWwpԮP<)\$KB|HX7)S)番ysO5K?+XֆiFqGx'&ԒC^=*9ek#. 5Kak.riuDvH<dإcogJB[@e-7}Nx.H_/ZxLe=WLV-TH/􂞊⛧j2mhM}==(Ix<]?Ψ okmrOt0sՁHXYT\e+..Q~ɖ@ ڡ.vbDsCCip(9"b#__9E 'j!8}]TxiR7t?Q\)UY.8UԄC}3laj52y&6H0 ;5gucx%BCR_&Ρhkpz!"Koũ_wvNptqq7=%p|l]Ǯ @1,aJWRݩgX;Q}^mA$Dhh;I)zOpŴzië1INM6&z9ѣMYJ£j"HY"lLYTo%oOtSuXnTŹ396){GȋѧCo1ؔM޵OvݥMLm^/沜X ₀wؠ<۞ŃHIT@-F™Cq8x7ftC07md*= 0ķ6;i0jW~s @;CAY6|M㪼ۡarkgTaPixa72j%O12OeG3~LO/? ?ǷXϰIM]@hj ωo#4Tq~h.+:B~ɏ^Ntm|g6/qx!9DùdnΑWþ< h8(! +N6m2؂t>f6l!,K'B[T%,< 5ܔۨOUQ$n; OB2/Ӳ"~۸z!O} AcME_RfF 0@)'јp",|)o=tұLoc'>%ַ IMx܎8MSS"{+RF"i Xmܑ[^~mJmѻm0XQHL?2or",ӭP݂'-:)f!c\g˔>JzO}?+QXRbO TA7lR`K=ǘ5٨aXXBUJt5xAC[Zo[Ž}&!=ZRWs8S\͕NX 7v-]Eͤm7'#4;_cK&>˺#Vݞ;j:ݢ'kz&ҿf,v<uTkf^bZ_琡1lrj$Ƃ¢ϖ'v۔iRj$4#[I<^{0єCvfR- Itbs91,-{w5Vb!`L{SFSՒqI1|b)RdT[ U5zI$eZC?n܈6gVﲺ}˔ ~FM+*6g/ڱu{EkC}4BOlF%47aY03ܞ+~/NaoWs,ȭՍp\_kBSH^ݢ\~L* N%mۿ'?ī27Mw"DF^4O`fIp~P#՗?w8YFMPd/ɺ#Ҡm->Hz#2{׀';Q{ D*+[l QxJMJa k5!sۓ_67)yV_c|zmSZLO p>SAJIR ~ZrꖣIӴ*lߺ-NB:mKٗw1:&a΍ n=K@6FA.6 z2?G:9)(P` ԞeM.ƒeڹ&&u5Vo)ƽL/MpJ}h\pcEO%O(P"HmG4M=~r`刹g{J{ lj.5"MIZ9KN}z8Mʎ1Ml6L?VKBK[nweۿ 89gCDND ?cGFy&*=Ϭ╶_O #2Aw|D\dfO/mMz#發IyK7}Y,E  Y9c\ݨ*879W(A˔#x#T |0ok#p_נK( oU |^dz.mSlg)Z8#,+Rr޲p-2ߚ]joitK"go?^Dnb-/9j 6'ӧ9)AqT]:d h#K&K2[$p:ZhD>F3zUݿDTE;_Hs5YmD {`QpB#'ml-7 bS^onaͮP?>)c4< zBun"ZTbzOw @`|X,1p EΉg3&?qlt6Y=jBr] ig)xQ#"|.QVuW{@,%bGŜK$URT,L]U*݃IpVS̩ZFtjJwXѾhK)Ƕ@(+IW0z4꾶kAƮ(Lj2=2`X.bVy'.cO>;13~:/CSRks0~H߇d/v&!ËOצYVXŠI^iy ʊvH&:o@3n5ھٓ~N2շWSZ $_ܛ_M诿h IAt,im"P wqBg wQSqye7>9n*Z8؅lN3nLŌ,<ףO3O#5(r퀑2%*pXYY2Kr.ԷQikWWfJ9Yy_({(lzn¯ Yo5L!4ru/ sDAd s3K$١_pd>iT@I6_mT `{0srQ/j"4 +pQƈQz;DuHzF턣jB00p7Wnτ6z]죻]>L!Hrg#\̗d4ڹ*d̏J4MQIU+JZt/F3eb"a(G;YwK E"U0}d,<>)Hyp`4 2%)䇋:,&jJVArjnT[:)45gkXfp_o'B]9I07_"^4V_9Ջ]Ĭe-n=褕/H,>|OgQʆy 6M1PՍR'DC U3 v"KN+Q5s#Y.JM6|a9;^Vw5:v"xz ;؋!F\L^"H1afp pNf#5$5I̧MEU_ ׿E`/ D%>Y%2 6ki}lt /99; _RԘ3y"t P prNȞɪW.&Yܙx .,F\#НGL5H-.Ӡݿe%, XUcO˾l |m9{?Q?/MV6lVj{7_{%'d[&_U/T;9_=xtMqIcYT$TZc<1}1z7HhX1 M:cuF7_ WG H%Wfm ~f@L)2CH/#v CyBDS(#y{?I’ 8g/ڛ.~G~ (uց}!qg@p13 me씆V-b+7Z T\Ke{TO*lC(qc.Xb|VX ILMuU/VxfH+Lf{gbUNB>,T瞻~ :%hTNV5=tB޾^;3\ l-cS`QƕʴTl!<9wN!bA&F V`A0,/w$WŦI/} xw&p 1%Ԣxv:jxf"v,h@oT0eI@2lkOټ2!EalM @6v0z ]}/Gi\~IyTvƈDt&R>֩c&cd' F~JXLJğQWdQOi%c֒ КPtx31ѿe2m۲l]g5ky2`q5|߉!pjm9vOɡQҵPU~+r.fVs5w]10~RUqPusV`ڢENRS`̊s¦Dҩ<žJExCHeTS\g>rؖA=FJw Ӊ-W$>vKhu"`xa"{^K꯰u[Ns>Xcs1OЁCavZh6؟d+uE7Ƕew$a.NL) ]>I8p6 r?fT#vcJL [; yݸn^O6cTiV]|GJߩ{6l?)9904?7BQr~#4$=?2($݆'m)q=~`ն' B87=U\NSd`˕I=Ф=~1'ܿE+xMT]iQ̜j TLg&^!!e'F)m8P]T}vnS.VW|fZ )dz+-쿨.Gptu41`J wbRĺvqr#@Y({bg^4D 3`vĩs3o`6n3G\] eZ^ycudy@IR.@E 'n06?P_nO6Amc(r9=f \3/cNiLdbfo)ʪR4-4p؎1X>3-[,r1LC]feA%І* ޜ8pLĜetR(<7z7@Ǹ2|&;bΓN ܭM6|C)Vhą2Cb*0!l [i|iqN8>Wcs{b!=3F-+fox)4ø Kpsp\^uÝ>pa"FA)SqȨGJ9R:BWigb= ,Z*lډ/)Y--[Q*DOP*DJcAQ9 KPlȦݭS9AUyv^;aݶ&WJ/E ^֟i"Hc#7=B6^ ಑3*28ʼirJH>$].\r9UNWT4xJCOd;H>I  1Mmf棜?3O!a JNS>g]cq2G 4^1<ޭ‡nl\ |?TB#( g i5R4}26p 0%RIF0P#;<л2] H!G`3vĒ*|C .{/p8[ Ud~ 2NfC/O9bd]t! kI?.$OI8b4"^PJ綌.s#jTMltɷ>ϦRrە\@Yu@MD0*/즾drڢӿ|!1 O*>l AX1zw筮t8\zMS7661gb/tLu9$"Ⱥ$m t?X!/lWLIXL*}X ?4[.rD1CX\=YNMJQY2~wUyy- F`UJKp,1S7%[)J1\TDH;j+Y2MÎb08'jbP?U0+ \+W[“k6}XԡghEm޹\j|}SUЬQøf@nY3C|g5#"EI:M=H۽7[`EP85g?Bs 7i BarOk޽Cʙ~D+Fd_kwκt;oU蝄F;.)WD`t:gHPC4X(ip}S?3ޑ0K}_*% w)>R4xr-W,`Glkhخ-x/^$@}ۦ;ɷ,/YDw5u!䖬ݑVYq>gLZzlpߟZ>Q<9w!͝.H+F{-}$nKi޳p{G1vfVGs3gi_?-knPy,v}]=Ufm=Xj~ۈon^h>r(fgVrPBѪlmOoڪ8JuRO0Q}=.\Vz_%* f:HhlT(4_ l4I@Y1pbp9H#UNOw@ ;Gknƻ  /9zK+8loübd.8ri%,Ol:Hy}xB`9C >EL^2hۭ[<ue޷Έct^voiH5ݖ-ay/ff`hFVxA;$w!v!h76-rJI)LTok߲# i15+ 0+JpJ϶(s|NhP&aA;=xj-5):p0Փ ZgE#DXll &vh$AO#J6&RH5}Bk~$cE]IKMv, D;a`Z|=pC$+-3ja =pA,_=ݠmXEx5\܋\+*֙P;BIƇՊN4̗"xnCBVŊâp~Ġ.kW534gWL#P[dgՙ&> ;RߥV~ΨەA0v< #X2uIˤ1˖"y7A1}8u̳u k[f;U!P 5tFy,xގYLBVfQ|)~B6Xa! ̟Dh&bJe*`kqg:Pc/SLXz wTBA CW`hpeNz$*psoJo €|?[K$'v3/#C#s̑. (6&uB݌TxS~˛4;?ω5б2=h63F?SehB@ݳ~-x-Ɍo0C6 thiO*=!c_ riUQ!)}Е=:Hq۽k`g \?*g 8'dhdMn*%}]\j[m:ӑ@ jLkD O+dRvo揟%at [1oy =dVTK=KCK! )dv ̮vtƏ۴dVxdDa+Ɇr?!k[j< (/v5)Z7"\zFBQ%2t \$c%2$y~srgd;Lk[M3 &Ҳ'6[r 50pF}q9uqȀN{j؍! ֕Y;ڛ9HaHB(CXm7: 0w&c g?H\}7+;0 ?C84!E6%z;m2^iw~kC'+vA2lJ5sb 14NASk{IF۞H8-" {RNf"uȀ3p+vûPKzkަjEO]|LtS;5/&= CFʐԖ qqz{}Bԏ$ïSYrfY},Kqw4һ,2Z1\t6f]3aM ?r$,5Rk:bAT+ڇ!*Wx"Y*)'tQDC KJ$9OF:\:J{+ho>ٿҋwڴ/mJSTX0)feNଳPL X8m[6M:tbLM9XbaY@xҹh' S%LWꬂ4zeUH˫{hϛr%pexDML-~Mٶ,a-oIceb'CR.j6I$VZf&sk(Xeዯzʱ!qVUK,Xf,qMOQIt|֣KQ^چWj<:@Eͣ?5AwIH*%r=)4i:Og%`3*[[)9ernR4q[ƊZdaes}u']ؤ͂ݲZpd<k/Q 4Y'ﳓ2ɬtg .8Vf_2F zm[?^|P~UU]vT t?=cm\[|ȉRF+$CR0aO|.UFaKdsр(/EdIu"OrWp("{P R٥) cA{+ T-"k*H-w~K-._a`X`Lz ]A/ϳ\]\ ݭxjS=J |&%lt$ܗ Z)kM# "[Ҷc u\`ŮT9Y["dnKTkE:>Ǥw n89'FK,6J^z.!I+`:z.KN&xPV@"z9+)bP鸔4ZRWi J! 6beU7eVhHR@QQ==&ԧak}y'vD]>#$jyPFgo uZr>JVD1sTtl=iuX܏yطbs#WW^~Kz8&-Gv Sw%`b|ǿQOBŨ:GȢ'JRLy"Lm73FO*faCuX5Bj%UӿhқWUqGHA7V$|3E `x#}{#uШh;ۼ?ӸwڱgF9c5`><.2< ?O#":aN+Դ.kL9}2^2?Gƌ/Pi27HMT6eN o(d۱ХRT9ɛ"%OaM.eg ~pjGT߅V߷C5n*y[gwO:sK(_KX4uՏE|pn0Xl*1s7#&t}X.%k%yoj1h4̋ g⧢n?3+iEin0;Hjv|4/o12y,$r$Q}y#q1q͉kct!}U1;H@V x*Ϝ e!X5&U<M k# o>̳;A(q{a"`k\d}!ɐ[J1Z.iN.pw6 uCrJ191ZZ| KW8L`9VBFy\.PR fœEC|{="%eq?B*|1 ۻB,Ae[r/׺$Ng-JNTyxmJԋn"qs2R}ȞiMs6{2l]h *1o̒qKK#+;c`+/Y޽s(or%U3sV{+$ܡ0{x|j`ӝ50g)0ek͋<}E3Wхl o},~)Y.HbmAk*֝ao  )nc r_9ZιXLHv%jb&)N%xƈ ;DOk\͗)|oopI"⪃0~xɲDI8w-O&{Xn_Bodr1Ev1 UV }Y@zN7 `W؝}ͣeOeYmj;f)w auAYD<Kq|K3n\Sfd*=.yv=`rAS;kCȕNnHH|Dfm_ d __M"YgL5?3z%6>[6P# x/at03+NfqETR\y>J*y |0?:/PTWX|֪O2T4hCՕk,rXVcٵ S~V$F6cy5&#EVYXT kQ5>kh09Mo﨣{]1džߐc)S#u~b,k dȎ/E.~X.pxT?cHk$$(yOV=iڲ'h 'j#㭓o|#}3.qqt(IL,B gXle`xhE@y`n,hŸ %bi,hg[wE Je=S`y"nrr@G s"}8Wné;cTy3:<{2›N!>O.8;=YSf[ =Y&v34% fjr6DVPG0]I)Fa#5=E1 s4kY|#=嗣X :j[7׮'&,!FR=ٽo](I=O1wf*ȟ֕)7}7g S GK~z-aɻ S[z:+7 8m390Æ(ISQɄ"ɩ&.vVM~zS "j$ Vswh)G^kaxV8Rv847TbYcc/My2 ߅ԧ Yľ9NV@Fw4fVe{Q7ny3rq gh$oVbm–1!cG%ujn%"`쪥nH<qpŭ٧lFhy[J~%t%vаD7V3 V C~\OZ N?&٩+tJnf:VZpEEn WDo^3E3ZiS\ôSMK+ɱҜK^DAm;|\ < 8իu '6x4і0lVCDFr#] K:nWpŎC26"Z1ZL׮.'vfz`5pvvX ªXliO *!1*\ k$̈́i/H>MB[-kmQ_[iyTh8 0)ϼ{)YySxZi :͘GPk-3<`\'[%CK*5|_gP)86ד~U!\tWu47Kp?|TQ GT!Ŷ ۳0<sHIO(l(qQo] 豫wq@"leQh<R`E-f+ݧ3r<&weYM d0=6! r|PQϊUvb$1:#=`9Y( F =$pIF;Δ0jsPY~&}*'Nѡcix aJ|5M0;VNRUO{guxO`펴U[__mA CHzYqk,K??dH9v]-,cmyAЛ '; 1f#5-?hU'c@asd[݌+c½Cz*W5/t0P5y|!(zQ raE aLuKV9A˾ F733%cAA1{o1 "rc0,oywnBi?F˟[+j_" P~ZGfn ƄޝWB}9HU~1N?:_ ?ڀgFxvX [%LVlO>W|"id)D&HO@{#:aj;:B`sDȞvON 'i_6xщx2$mCR.2BI"ClཋdLME+K4hP;SGh o%1ҠF*杻b5>N]=Wlud2rT>Q_iA*fGel؍s*.\igZuX{wҘ&Ԧƛ+"H#dwURCK^WE#_Yuv(kE>Q.OɈS 9q$&;׷pv:߇Cg`Kq1-\q6S'fQED|;$Ua9N}5?'򽷻 (xDT*9{0 Y |UOt,ÕDX j膆[;yT6Ibnrš5Z5T2!.ivH{MQz7O5NDh{Rgb%{ɛ4Ɣ='s!ܽmU3UXs/rK E6B|) FUjy.A.Sb0պd'~ҊVpCka8kX(VJ V\vJxL͵L%myPjI2%3~ÈV:gϞۮ{3}9E.-غX)w, "FȰWX72Cu"6c(79VYf]ox2:1ՊFc0KkN1 @}F'UE NqaC֗?s 6ʺ+ 5Kgc>ؐ1CFw2 vu0p+Ow$juWī4:.sTc"qwa?zra'.wfpfI^N/ԞϷLf @;;j7%N%f郜|$ݻ)$Hi:Fνm=1E{N ?-33ў"覆t2!a k8R{tWmo/%v-%v.PM'{rqs2CD2!ry`KB)z)(Ur:!E0O_-ME0LD}9g/2)B@]*qCps/sE$5 p- >|c'xb8)nMcNw:R@;u-cI!3gOE&)NF!,zD(˄E@GzWF|Ԁ1p5#8}:>O0 u6VJa3ᨤ*EW֪=\ۑ抐@%nvXj.{רk%];0Ó%n9 lC;qUh%YyBH$~'l0 چzsDUS8!b;8zl6fh}[#G _DqqKocːaŸC,8]E8>6$k8ΛE$bZb\輇 Icz{a4:yݰwnjIe% BЋ5fϪ\rl( Urt*pXfLv#WC-.3P} ;+ 8 D"|zYMd}fb}I/"s_YnqQ~y:7KIG:|jUBs}-}fi{_\|Հś5lv';H9m"{`ǁ(c3XzKU;8 8ԭț^q61Ɗm:To@x 1e8QL^j;&·o#K19.c&8V0DHjUw6)SDm#$L{-YC~FRu`Jg%F YF6'gvi($ Qݛ\S+yB~dH,+n;axI@! ҞCm/tԣ?[*z^^6ЂymbO!0MTBTji;μ=mGl7T4H@-3x^' 9ƍ9H2 w-sW']TklU;ι z=hNA U-BK7bmD{QZtQHYA'-9-K:I\g*=fa,t {GXyU( TcQ|q87s#*Qϓ718A*gh۾mܲk̷msiNWuXZ^T;%{d@Ԣn*׳j1I˿s5oڞ ! K^H r΋tנXx悂YNW5G] G aUTI]Bf(0g.B *نRQИ$p=\ȞaA @?GH\"GęA@0]K:3ʀo!×^C(<++B *ɥU+m e`*Fu a$OҹrTϊ>X_e<8IưKk p]h_='o["2 vY1H@y璬}3DCرOؑeGAvR6:tRH&,Wȁg”+)EVB#5 f^y2*]h'~N 1i9}GK2KJzuҪlH_]H")8ٯƥ8 abF2|[fVW 5vH@ƬSUx{=4_Rp?YfJ~9* j4qRۧTG7w1~Ҝc2>ĭ vtG_Gධ79jp s}=bݻS*xܒFEP}VTxSLZnh9-É Py۪;=ߓ~,;0&!㒥yw"v{7jM>^ܡʱ ҡ'-M)NDeբg׬GY<ϘfqLЦM0 wz:(46Dv;,- >)"&a@ϓ&3-EP)jk%\d[nHZ$>pB[3i$Ȏ3†2s]h,519cʤ7U-FP=JzIE[4f?^(j;0ԅ õ,}J,̭jbm`Lu7b3\Wp(!~s q70VXĒY8|>@ڐ`ܮXBa!cm=D"w恪X}|Ð8YFtRH/ylB=Lc"4,RX)f;]?W=ݶ=93p&b>~Q=J%8̬`+@`RYVFNdu~ ү/3(}g+ ĶIОƓ$O%"Z 76|?ؿ -oSP`z&́<ǘ4B G0U=O_;b܆pZef(c׼~kE)o3*ɩUoZ}DtG(|~:L vJçj%|iߢÂ:A͏Rq{>^j+c|5P+rV"s0&LlYS"/ <PPdFYhIXqC%'*q.G+ۇΥ q\&Raks"?VQ&Z<|٪aDSt .;IV<f6ˮ}G+ p=Ҹd U7͢DQkc45!x>_lM椧NRCQ{[Gq)qq(gvr HAU^8V(»Y5 P޴ǤxꪴXfK)iȃO?a_&ra/bƹ9e$g U#7kf$QxԿ׉F,7 览14uw(RcRfN`+IRZ_ 0T] ]!Ъ"+2M)ئ6؎e˃>`Bb-u^5d#  _DI:¤jucNl.'S5J{+9"gW/LTȫ{ԃ]l 7Z;IrQ(vHŊUGm &MaA큓NNο'c}5"GSeqMGHd~9!^RZqЏ_g >h<.G6oFE>+X$ ,j3c Nxe'$fur=ЕSU7!L%L.ޜyIX/[kd~U5& ޭx{?70xeF'832\2$0cT)Jɝ\!Zʧ8`KH$ pк.CεY9#ZYMr<Y͟MZ~lC.#LiY6Z髑p۳a9[񂶻wt)4! eHrf=9,FlMaPI;dSM|BR1d>~W\nE4pWoT̈́MDN@ҧ?gp\/suL>cJS0A'A~JF5eauǪ6 `c^ ]2E&t%)*doĵhSiRv |Bo.{^V@kܭ[R!\ iy֖t|-\SoŷsJ5yUAܔnyا;svZz7]-?I!\]`ʬXN z~(ɔHҳM>q]LE(mpr|^MmU)m[6))@yE5z)/"Tęz G_WbB ) q?{QJR~pr0kZ/iܚN)wEn̋\1-tvXE;7|Q15o>[l5X 2*rʢzH[*Wl HaB =7s@ LԜvo0#AlNɍ-eO«v, ׇEnML9|Ӑo6ϓnSPpQ8Kjl Zo^b }.@fgLq7$M8:zqF|s TZj tU|=SEL 2b1+ -I?|q:zlX:ģ] hަ;\@QDED8cO4z\ LpoS;ݔ1a<z<'˲oxâMhXbsm6IayHHOo(͌±ťd7ꈬZ-T`뀱4W,3W#d)j^Kp!reV"wxU\?ѥ>&_2 H|%t*zt4rK?qc6OPT& %n0-tl " pcYlkfnKReK$)b/$v!Ɋv7U^(zmA1A^j&EJJ\*[՝P +y06㥵I}Q Lf do\]F D]03Yưl&݁ bDF1= L|"0n'0t¥x "+#ߝ&%+VK#XU>h'I Hʭ56?Yq n[ 9N+1c%C.|@}x鼩ёC'D+!xTebds}~uoa;( nN<GM˨_Ll[cd7](9!5+o O\{vң?RB`Jx䮝k$+ҋu5ɫp23 **_D(Cs".ς]h$)'BrDBH3k[폃ѹiE!]9Ao3+3(s!jOW,dxbYyFZkAUmIlœf<($P#5&H}Cko"tƀ݅`h , vœ{7AjNRy'_)-NPyDlY} ǠD@]\"a9yI6F9lH漏vOn8_$NH9m+݅ʒ2p+M{1XRllW861i' PLXfsP7l,-`a 'ȗ=-BF=hFf3ld}E `pS;f-\4 0#_J(ƕiG"8VeuU;s I诏8c8 f6|lUNJ3rwǶG~+k{#Sv\2LkŖ#aTRBF_{*!׻iD'[f .0)`ClaTwYĕ@VRX AXYvfu8<!yI!݌Ybr"'&)SY6Afl2կDN0+'va#A87@;ąNjKjCX?1J v$'Q̫bcԧ ߽_ҎpOˢZ!(I[tL9ci<|㈧@qvWs:\f{Mbo psת|pBT]Ұ=[/p3b!sOhd E/33TWS[7m״OJ;zxs7"7цC*GOȚ-j%殺*Ҹն"]pa:\ԍ:HF9 )ct5 8a4 VxݓC=Z7_TL^{ ou!EFOUk/4W+_lE{'fLL ]tzb S_* EQ IFP!cVfuZ)#[wljm@'+}K(L7! HNՂ6j~\/lHϖ:t l@YڊO7E[Ђ#zl;* ,vӃO)*T]COcO;v>+Eva*v]x ]_6 9Ȭ4abuRI̔?v@b_JE!^FOQ!E4-K<#w@׃dMmH~GDقdzNx=Zzؖ)`znF!3J+D*3B,MJ^՚pU,*5j '}}֍TGg֍Vs _64ŸT^rCxq?F0[IlpC{vV1hWed>Phfe33=AlW[}5jq6P$/$v3֒12q\L-J8`mPIRƩ&H.A+A~{~A:2Pl@J wHs#] / ͱAfSc#k"-/,@{b CXDx#O%0)~9@M[NWqƲG`H#$ lO.IRvZ_^ f %1wאn5N|]u " 1B Zk GxmY0oh7\2mbo<}!5Onht9Z^5t(C*@ݖ}3gsC הi;S/p3ڍП0M98ƮWf"Awh[4Q򂼜 <*1c[weWаNA<^זζMw݅B/vw>| V1.e PTxW=wbat7K>ɠ$ٰr0s{șb,ۨbT#f|rbeH >YwKJ9%vhPOpMRr7*6±@Ax-d!UlH&3)N/{&0\(5d;o0ZF_=).Ev'vcJCt)7h=`xnR7Jf v + ގ.,d| 0 eh]zLj7P_^ 퓐q ̂PwK$8U@ATg\m[PܸAvZWNR&uIagjt=´]GtysVh7&gH?P(T.J42zj4RZ砦M_>ۇ?Au@qAH#(Fh(T\}l0/1jx2F(y$ QQȼP Tk4&E-q9|g"ţ ^|턍+\Iנ5[-7ߥ_&r૆3pY'jԨ1hMiMDvWK8#-mtNgOS_CP)HVZ@r!W"?0, ʼ\/:&sE<.8(Hw(q`sƖv`N#l?qX(Ts+d'[fPNØC_P$0NR疑dkG.Q3k}` =RY%eϤq ;c^(L=m^{ZE,L,s`"TT(U wűA!ѿ3 ɻ/>aHSUަD2mitcpicU i<CQc:KX ?C5H$xsnƂDyPZY?щ~u#-`ۈ^+/sF{@ju*2ѳyZt%D}%p1ު^q"eQ.wHPqϕp Er ?K[y2pIm2q/ǣ?YN Ԑ<ÖnJmH1*ic2=Sv\/ fOң5r[Gomh^媠Rj5e*|HT*cL-u,aϱ~^aVfѥ6:!\xq %TġkW?W&+sb;s®pw f;G;c=JӶ̀]8'Bε+GWrO}]Jvsyv,ѹ\֤ .sم_ǘ{޸|.^RqnϿ$~Z_c)OQuJj \C#8)+ D~?b^/@UN=D% 8>ry7Axuydq/*ӡ5rS_?8]Mc07 #~vG!JLdeT&xbQO0u-˕2mÄ]S\YZy \n&p"|F&-24 V!H%UI7ȗg$lyQ`Y΁X|]) 3FD !7SGOXw`q4ZmܟL Ud̈́Ynä)9pkP:D[_Oq{y/y2?X4k"A]B'ةIB&SMdoBS1|@kzJDe|vG@-CL47`ݘ4XRط FSx a{a ȋ)pp]й$hOj*^֝󩮉w*{ !:#}! RJIPc )iwd-+)P ߀RcQ }NϹmubse g>/?#oY؜BZL$S@ZqA_87K"94"VnSV^1Sq[vce.^. j#8XRlI؆5ërr<3V~akyNIZ5{=98ydžq !N=bbʓe&A`4Tkd"Al hX3Z:,m6QTwgSc@jƦb;.֑ m(:cU~N{/ /=6J){lqRdP ۷jlC  ns(x5 mj 0`B 죹a\;O6 gu_߃ XY^EI'`f!B To Q-VmY.J8YG=#;NuKXm@=um]lb 8jߴHЬ{l)yTk2di! SE !@|fWI4) BT蟬؅ǩGP(9>H[BV*IFx4xeQęQyvzd#}JqsntkQE&#?"Y KKU`Nr8N WF LWxu8L8m7_yqf@TȄ^{d-Á'~-djZ1v:Jnp_ rܗ5@SM@1EDzhYӔлIn%?Um%3@^OLGGiV2atQAXL tGWE*.!Ӂ,n[VWcGK"9B}= zyNm4SZEF2:iM*i,U2wH XPV!I9\t+5܌GzD(MsTGhsCz=<DGJš%Qd4ܼ9ypo &ɣM˟Y}X ݐI}I~s V;(i!բ],S$?s Q612}>`"\lc<9nVyx Wa+TN#Ϙ sw,N0YK)BIX3 .Y}1Pe<فJjKk@dqX[n}"$>N'3h?3W4;S ip'0  JC FmVp-! _Q]%el^#ѥb./G"IYS㠱4id5D|Z{Ԅ_kS=)uۓ,t2QrH焺G.Mn}X$Y)e1䃸T=:~)w'ZͫIUN^_vxKV'IF|߷rfR^ڗdStT_Q\5|gNslf 2-"NߎRj2HΏ<̊AeŤ"#}`I.yBӡeO ?aX;ze7<cKj(!Qk֙ve-h&0^N]ʕ e&86 [jP\j8복RT'j(4r=,r wϳQy#hPNXC U˫(^$FW'!PKrtQRk.W pUlh2dOLދ.:y'u1~371Eic$AE[^lCʛbIS,*KKPzAM8_a ?8;|5Y4II|5o]69+tJ(o%౦~;m@^ex3ho|kؗGu`-(> NK*mL= F޻Y*0K<s:͐tE̐*M~uYe2Ʀ2dOciJaqY{Fteօ~.1p]()MdW[兘 Ěbv`+.b{8lTwg::Eæ'Ii:RB8]UQ6lR]ߏ\Rǻ&O,wHқ !bO-UՂNF{'YQ|kC%+#NI\ r~`:qz267c`Wçfrq8pQR/C>o0>uO.. ex9o$&0ONRw0+ |F+@zt|=kiHRe peC6LT_ tս)C;@爵%^ !y# SW?-;d11 3Ut@NWܞ\tEt > @C*%DC,~o,5<]e_tv^K̢?@vzqDB Z]Nn?N0ց]b6OQw+.aN;MzߑG>nHtf$d\jYd`/TYy$>@to0xcQeőX\@\h.M3DӃP"L\Kڽh7I׻{KH\Hq͛d7ȷv1_fw*c師 5̉ vwJDgBJ"DfȦ&3fٰRP )8jVT=_J '[xQ$ŷ$ a됔.2~ PO;+́#Ҝ bytQi8ڳ~ +bĦ5CMڷy.t$Ww0Q,RwU4D"7sYg5AFhyESZҎs2+9rDw92뒐E>6<u[)qm "2}aB9b;c'ژ 7!"bd. EJ^+D8pާ˗$Q_,MaIvÓiZŰk` T  ߸B &+2D&3= Gh`5RL]}>vk:94k#cs %ǣdX1"S%[[2؉8U%d{&Ė  cSD=]٪nBq^k}k\-7Կo5bE`!.""n"fx=dt/2vY Il&8OՅ`ۘm;ʶ6S+4 ?z&: SĽ4(Qb8 zb4 &mkP`"('쨛ds;J)0Ӕ^yb%dY'y3<2OQB÷}Fa~[aa)x6}N"qfP_fRNyQYj>_ۦ>qT\QG߿ )A^R|R{`KDʀ2F(Fƻ[/go^F1tx 1< b]?i-Ƈk;agl7Gd.[5Q r_)kӷ/uhV:Q&.zz*aNj-'9㡏D}nл32SGs;>l&k-z|p6(`.2[.aB~c};ʜI Q9L%D<Ѯ_(ZUwRlqч&Tio͆~O-+:(&^k)9x|_5 昝T|#k[)[G)LF!f|q}I{LjU0twc\^LX{fQ .^!j1σb"j"!{•ݮHJΆ `gxSI$}`!Ix(I]Lr([W#;K͌Zr'ܽPoc~2r7wBGEdr;74S VEXE F+ aO|C.͞mhft 8t `P632))KsQԶy.5Zs^mX431^K(p.>v:bAh+l:rBhI\ǕM#|VL =}Kx5䲷XzW79c,roXO{v ø Ω+^ջ hw>m:GK i˅\3kŸZVtG0cL%/kDo+yx %%)>:QpM0254Hqu1~iC8^bC l3&*_ud(5 xov Dg7 $ *`%jӴrq,FJ^tL9@l5z1$>]B}MU})54bwD:WŶW wpQfJkbޓ5 g 8{b>׀k7U#M!j÷`X>IbJY+[V*Ԣ.Ӱd7 ڬ`'+q7)̵#JD_۔+=g%ӧBoJ%A{v0)#SϹ?abl-&ac {GPVp|;sSL& m؟ 4N*Yjc"ؐᗍ`Y8apdbgc]7 ]G#Cuۛ%RsT^ZԫIH͠K":ٗF)JT1 J,3ΐmBa:xl&7'2Y͡[ۿ#3?sO#8炙Ά%|ʜus(n 0bQBtHo RA heQ¥mYi^dz%]yyҤhoEŧࢽܶNdTnFd +$1W?Z!oϚEZv{X':0ɍ@}̣iᏢ@FbgbZ}Vp]q(kYخ"TteGl-*ibJsOlYLQ&C-KEכ2{ kQ򮻈Uoݞ$ĨXΊ⣬|>5t ;Ň [׵^TÅ7~(Zw(b۩8^14{MȲYX0JU%dd@KTςdyL=v>F>aٗ{0 q>)zݟ_j[v셽5!! )2Ne?J)Fm;`}5&k(Jzz|l(/iN^&~@fҽOkdvxʶe@dx} h&c4!#!FօB矬"OO8Iab_!֩I (+jnş9R3]L{r,]HKAړZQ؄Lϖy=*>MUA*E w_G2lWPѕ^slҺ$&A;W1G2;Kl騼C&E:N xīM7[AEOGFrE_ XrkK5pY~Vi>}gǢP}q3^X%^_[qD8 i;#\`ٷf?n̉JA<\—( YY?8(q\QSwT7ՀKܚݯMWK8V-} =Q%_x hN. |f:ҰdwUin };(J.#w\45%UC[HV٦'*qH ݔ6v&N6|" VQ(81љDŵX&#e;j%vrY(֌@dl.צ<-'?|c\Ior|3AÏ`Nz@{ae8 r:Pęy!ӷGԟa PLT)_K\i>PExT$ܣeϸQ+!e7Ag 1)WIGd򪪿tb;a]뤲bzirz U+b{_ - ]M+P;y4qGT`-EE+HHH68؃?7e5knF(KpVΛg:69l$TIOT>wr@b搖geF԰%p㿿>Qv]~\-Bl7mqNݍ*%s n5*ƛgh bBѬl};|/*-\ 6jsרgfٺ?Յ -d9Ϧ(1ZX"!B:aLo',0;ȇԊWT#j+&G|SLc(+iO42#Qdѹ1d[4 Rz!RH\QOWNE|BމEXhzٱ0ȨK.ҭ$;>6),k1K9S᥹+WɌ@-mz&vHB#cY#^[yWҡIG̶;4Ơ>aVe}WN'uqUmMe1a$GxiK'HGZ/݂N|R;c6qz$q$ 1-!WYs:T1<΁۠ܦdܶ#z .Ӵl2E8~Q$?+E`";6G0x_ l+VG;xN _MnRd<ӡ4^ NB􁏵0{OELz8g/Vd\S,Pz ~0!VUqjo .|4,'dHL}kcS9凤`qFZ-]_H6B: AQ\ 8eQ1y,}mQ2|\mR򃱋7&`LgS@r RܱTzn1_@5-irJHo[~}kg Wו ( -h>? lr(%ܾ㷦 =Q>,-DHm /6U@F$VI4lVcV/Ɍr$T`m гK4*a\>ϸ ٶ~|E~a&/  b: =l0WlGVBv."o80Lg&ASĖPO{ Kڸmc2FhX*wum~iiivEsT=0eΞߎ48t]S\o "n](^i;GE(5,},[ו%]d]bCT@lAvg+ !<ƌLYtroA,ɠ*'BvNi {ovn<>[MФͱ5PTKqS~ܪt `Σ9`3S^ 4/&.AM9(Z[Yǽ*a[NnQn,59C# co}rKmN`( a{NKn#oTI!-h0B3L\4#. `U"@0H+zO^P!,WW M"O`.RRiuj,!к=;v 9 ;wGq9 u Y? ȸ#P{O3$Ԟn6(jrZh)etڏz_hĥZ)KT[x\;e미;DjMo⩚EDwPpO u~r\FZ{#~(^ r _ l4Qv}qW2rdif.S<4gr58(d'.\ cb[1>(…$&'`q`jlЪ4Cj˚(_0Z3\w4r2l0&8!SI*$rK!47fÎDj/sx؈S~ab*^pF}q\~L&9S$hQ0)cUAf֩nS)kH7q$l/p%\l}^khkyԊr!F^bHSfϿ ܈4o/=Nsf-"Ikaow`W)1nJ,V."W|sߨ%F Ziq12#%EyN;'oU]ӥ0栨$|MCl7E)5J'+, ݦ5ɭLJ4i.s%Ēx:6q W&~KFm; }CJ7cn< =:œPG~ZA?^yUHɊDANoe8()AF@s1vuO XxVvNq*Yϰ 9.Ya/5 T2ZsԷEϷM34>z-.H `qq k}Vd%̧C\c{P(\@gO,"i gt~W9QKj?>2|v37O:*}̪[6ޔL=>xȩOvκ7Giaĉ\i[M;Q(fH }qJfxz6.iuQIgK〥 NYb&>?6 l?O_LgXdRqwũ?*v|&֞ u7RE^vM, %m.@E? ;ޅg_/ɯӰߋt;~ ']RWPȍx׋&Sx>)E5|}|`*9uxr2 ]_׈mw wu}*A]tkmg $u:p£LJuA$MX*\O?@ֻs1vM*8$@ Oč<^>0--k(@KuZ[h߉\}Y|3%vΗKO.P9idYAB%RCƠR+IsȴD@Hv .f Q#JeZq3 W ML'^F1o[lsgv?oKiZ?p-βoN%&N86@T'Ta:2kyfMO6\lBJ빲2"NyQ@p.{O-FXXN"iČ?bFv{vQ~IE|ܩ릐d$h{/G .`*tR'Ыհ##0}BgvY4j%" SB)=m#M\ ZȫMfcuQ:Hq=<= 䡺  g3spf٬$I[9;8faG][&`ỊS{J'yG{:[ $kۄYDD/QjZhZӁ@TM'ݖuX Q2ع$.5h`MShm-UGԿ">!pyufttHUߺq<%a"9\P+'YYblQ%dduX+ A3*(5im,idYgϺ~ Oc"Fx1Qyf&I袈"mq0KoYWPۺҰ֘M@Xp3t)0ZSIٿL1rBA"r| 3 6Z; ̨Puhف2kyiHWkLfZVPo .E[Uzh>H)K2Y<ݲt'ZJUɇ:p*qC<7/W%Ѥ=k]O#XV $傹(|-br8< B.J2%!=.(-5Bw6bG*fG{]K.@qYonV4Q[6 ζ+ RbT Pvxp]TN}nYщ ڈEiƞʧNsXZXZ弌:xS]}3!(_t8UZD0q6 (oIZ(+C_@IMk5hcʴMCRr|A+RP.D;WK.= "B:+菥3vsWM@Jp=͙>X+U\L01@_ix Γ!vN\fEE`F{鸒lSʲ4<_u%1Q Ee$U3m[g@( h=>iL6l[J(= '&D!+15d'Z\a[od"}"?q6ֻ_$p2l%=,aDߵLPA*ciQzԘ2C GVءS ]T1PZzX"D7uRsz + nK 0 3:;v"Zg U##'%re15? ԅ Ni*hV˱;R~MOGN&rm,F[mѯȯc XR|K9gzq9paK21WhI_(%~Tuף %ĢF 7J2~Ubީ3@u^l-eSf,zL7bކ6,FcMsh#6溧Ec>Ԟ6VË25%yHNmM[_wjl%=@vGB]֩o9 -+XdsB_?s=vٴX\&<=X`U-x Eq{hӍ̋$_$f^Ѷ҃P md;zspه#^0I\ EΈ' 5K'.<*a1hPKN&'2A%D8N"/݄ (Y 拮 Vv{l7|hd '|@Fyx,h~ Ktϟ_7UDoebrGZks50.MfyMos,$_<#EӪ>T"8hFhh!&u|2-ҝ_n8.d6c4׃…]\˘WwDj/"[x 9ݷ5oР&+H%1ϔ / }Um($/q3szoQV3ڃfBY ;p |R}t"rVM]LM{*G8 ckVN]xJ{tM'޷⫻ MVvnVРWt#?+J(Kh {2mxў!qO[*T* PޱNY9T3 Q ۫:qB(QR_Ľ̫vgwH 0FdB>vI;hh\Y6.t`lܱ@NeJx_P7ezbLQA_PB\$n] 4! s3ls8H&'W5+j<6bmR̚A6IiسVM7e}={#u|i(©xvz"MVa+xu{+S n1){S&]ެH7pаCۃu[3g![= I?/,&g8~\Ągu0, Ƣ!XjX;aǥa4m捍u%FulkeËhgn=L|aX~[\)RR$ݺ|Ω'z0B$*/Aǎ6(m9 2$BIh kM7Рya_,R hғby"4'FGsܮ/gqUﻁī`z&zjmc HQܶn|@ 3a=^xAv3y%0|mYKЙKo]ꌗzr_HĿKTq*j%0Գbz3>OP$Lł)3n SzU>]j`3Jx͕9:P؛V ,Ѻ @;vuW>?DD]f;SH0L.;pLg+cOFHUD&y$֪=#(KL>h ?yZ|Wp! r1;\(}Пi'S#W {Ay'9jz=B(7q,i8`İ 7oXCjI Wx!H[CDTXr&*:ؿ* d?Wq5c缮^Ovz 2-oB T1'1pW6u=o8h:-3LsaӻÏņhɂUXMywA΄!Ƴ-(I'eۻ%OKnĔ&pYyVF ޣ Ws͒XZu# /j\f׶DvW]Oa JTચ+!nވ=\ ,Cs20>hՑ"0"$1A=`mMmBzTGVRfp1穒Hެ (k`8xvL)~[%-R24Zb*GJ2kYG5 ׿YNheinuZоPȶ'3V(tPY+Cz/fDE4ѿLy$Ղ=#d# Rɧ 7[ TZYOsW,`*o!aTJdQAw!2(2N#wVƭG')PU5DMGv>˺D2m5>9vx& CNgTv=A"4!P aL5QᬀtɸaEWsCgb*eOٴ(!14 4SP?YVmK,bt`3Ǿ@/5*MRM}ş4N\彘Sc5,`)4s >^Oe˛&i7^r*S>3+jrF:|?l\y?!~TݫwIR2jIhlCHt5P,SyOK—}]#}ύP:黜VQrN8yH)-pW6ԓf߹,k+f%*9DAt*:%.yx5ly`bltTwH|tH0Y(B[A6@nywmF~ɫ۫VzmڢZWaeEQB21K`[)`LG´-+9\'(.r`rX*  hthNO2#X! >]M\N\ KGH-m[UfyIA:L+?3wgZ7fت.o.@e/%@jMy eygR^ɂ5QǚPɃBǍc 5AF, & e 8@_!,M$^tdm"Z$0SNAkMqbts,E+4{{CsGgSʣV$Ii" ΐ :!,$#DZBRJ}ZʶnLpj\LA[Ns>|K f6_(kG%­&hgZ̳zVL1_uZjqjM:QބZrUM.lJm}-tXmiK4{P銞7sSUNF7Y4WZ 49Wr8(/;ըFyX4mJ﷩ ,?oJb=#w[I߅Y6p ۶p,|GTEz.V v!l&^< +Ob xG qsgBC'! dnU}Q>i=:B#<),%$^]1%\>Soui??:>#Kēk㻽Y'Iq#;-EMi MЦO,0nz*6UEaɼr MFƵ*4̹d.nyr鑤9 e1CrVEE5(Y]qR)z4P7ZBFd4WIQ;LH2EvV"tM!*KHNu-" Ȍ),b5-uD}w]yjn  T _ U7i*L634$3oF0x)TmԫMq Hw*%[;MH!ݮmZMn} ]}10=dJ-]>+}g $Ç! ɈKks˭8dt|T@K s&x .D}JM*/ovH::(^Pbs?:*~0Ms5(H]p {}Vr .1ph>`].Nn X L=4!pz7aJ,o}π'7NjJp\UʱL}6݁MI(s @a21 啼;QkZ,e{]E`D-U& ā\:"mC +ֲi$WZ(@mI DC )4s*[JUwkaDԂ(2=)@3jbʑW@N̋C"gbƦHgagC֞xХTM$"jeAQ -,w| 4AQqr~Q!=)S@?9KkRO&ݺ/ TMdYNJQ 煟SQ1ACRGe:=ѣC*xkʋ~=} V2O=̽{&|aIl%yϘ]#*6Yp;,tNrl8جFU}5nE-Һt;S&7,߮d0y0m8K:p:vS_ߠC1-Vbĺ=<7N"H8*tրNdš"II[QYcTs@>s8%d$}f_t{fr,G~~=.} V.>!*L!.QgŬFƙڜ 񽐘9f^% ZTNR 'lL\tQ'X< .FгC*/B[dH=‰=ꉝ'IEeDASBgXhxASKBuZ_,ݿYUj( .#v8.1""((=Oy<{X Q<,5ͻԊ S52ֹ|$ab? [ɷ_Jttֵ.vRu)+ଦKRD4,h|7viSm1ҝT{_W5.('jұ*`g'PߎUy..̺G`2)i}QoKr j)7&+^_ce[V;{r5%[Iث'xnr+0y#z')WLh>`j}oNy1AyxoJ1ã1, ).U|E9ۣ=5QZ2j}0og&,qnakJ(}?Cs?_?[U@ӘR(kA2}k~IkՆN*y [9TLtqJ4;Vęwg NRWE~ ZWEYA7t]]Ea*WNn9ϋ#=MTM UOɘ!qHKGĈr"~rp:*5%/ ž;1dVD;iF hCAяxNCOv|mf{V5`&ݥ\c6{voi go\v-VА(1UݝuQp#ґx\< K+xProV&FfQBl\mC]_ZtfsbK;tnԳ*|G啷uܱ j'_DikK_|9g aH~(YK_Y44->N-اA,;]J]8pӝ*Rc/ƣ/\#,뵿s7aM{8 }|_~>N@ 1"odY{xpzʄ5>;cRC{\F r%lO (\V*ED Lz4ڂl{3Q_Fl8xE?}^~'v%kݝR+dR) {QH/l}9m)IpE0a%UߥAGܵ,,lʧm[Vh6p۝_q -n5Ynv!`H@ rV7'Z!s"FiWΞ՟60uZB5ن1Q`At:W۶-:"_)JcEqJ6]:pv YIi܁n0OC=|idF^jLmG٫n֑m+}-b({wT%{_c‚G2mCpywTl̒dzs6ílAtlp;^4C6Yҗoڤ })#s # - Y={oGͬOO5mZW!VC`e#X@$٧ qw͎x/*#r!Srf} =$7ӂvfVw,}3d#T`}fuk:eb>>KE)6'@T{۟供ašq+~PBۭ|{KWP]SV^$ٽ_ }d^ iSH{wS-(j1F\o,܏-*c_1םRxf{$Uo [mk̳NvJ,iWW1hq 'ejI9TItK"SE#Kh[-V92 g '#F5aӪ(eKv:L!iDH^n21b mȼ۱`Z1 Nb!lh2gxӮcrKdHO܃'ήǙ_xo` JhOQO"ܢ9 r6%DQL\R%i@޷hz\%@t\IH֫ MZߦrD;.3'a ǎs4CShzHָ!w2`Җp](kFR>\hBi끻s-L+ոs\k-ЫqZZ@'DL/šZxߓe0P,u'@K펺d XƔ'"lfx'YnxbptymJ 2 .E$+7?iaR yx$+P 5QNyYsY`kcOWW` J~HR$mp=wѡ ;g!ztn Ăp4<Ĝ<U$ 'g{./ݟRyBKJ@`@:u.Ӳo(Ў,MJ5Jv_G K>aI{h߾uMCvӴ? Y^գ -IJc3QZ?(guw2dGϑĕc70[}IC8r5lOLZE~n(OsY(0e^276S/c6PýG.-Bٱ(Svh;a|46RTWRµnr~`Տqxw$]m#9 UƼ9{8nT/a [jCz0PL\0e4MUr1ю1ّ5|)T"Õ^¡fD#X\GtSUD `I|yRL TR8٧֤ Y~H/_} P Y%''Ӽ4;^IC͏u !+3xkzR":EE Q>F aU+c6WQ}x3" 8"wR oL7رVxA.ݖkEqŇAqõ )YP^q.X*,u֚4/բ+EXǬE#4h]J&Ǚ Kך0]fd}XײR9{ ,`. (i>C[XRdVF 1}3x7*c*w[0b} Cp!++^4ћl2< <`.d^V?lJx",=\Os5U俈)#nU0=}o-sDzmUɈ u\j[3eD̙ܥؑ.C`BH]nq6$,Tgig!4L}hINcg^&n[BɀNOm=KݷhS,&M[ S>ü˒.o:~dȮ!=1|̵,:"%}dm|)s!EuX+K6'\)30*n7#6/{ 1/Q¥jdTa.S#)V2 ϩz8G!Go[Nv O{LwX8:!Tv֯Or_#"0i 5R+QʂpMyt")Yiq06l+gⷢW-D$*˱'F3:UYHu2d=kD6SG*kpsu A:=(z(3IrXZvZhK8IIi9 "pcIp}K>U)RGq!6/08 _ͻmf09y:':B= VpG2&asˊ3sZv.4TMH"m2pUѿ mX:h<|(;.Q=ZݖX[.+|>% .j]9P)k{4RU||VB Fb^lb\aկoxAX4U?WHh#TǥI gM:[AIؗ~2ڥ>žj2tV 6  ͳ b%iqwĜgҢTw%~J bfV8n8-@*D{H=p ([hD7b-&)kFwL"'EPUe%|a=* >ɬEhgZ< \;''毒IL8>"TٴG cv$kP4ZCiq1M!jؒwۧ?l`?g%vdÛ`o G%UF]R _d%gzFBtI= a'rτXy.mE{_c劑3w l Fu#I"99T\?)tn3Y1;7f䂀!Mԅ;$EͲa/jBXrm|kc^7%.I7pD+@LDHBo jv!56ny,yDsw~Ǎ;]A3{}j#ǢފoLf>;ru,Kq n #. G3VgASr+2k<J{"x[.B :F5i^ԤiGLR.㧓ɐf>LQy@RR)hFߪo"R3[ FB͠ڍ5Φԑ_ʼtxiu \H|x oMc>MB +}s1%/aqBZl$:,6y~fLv۩d6{NP *cW鯄uPvI>q{R):"qB/Ig jf6q(V c`g $ZqHitjSm(oMey~Gr3 7ٗywdWP|^żgJ76|&J/ôk /E4.#XCɴj[Eٙa+T3BƑx#?.;+ύSR?BY{KlN/) ֢M$Rf1:J-wz/ u_zHE/$g&|'(6X\eN@pZm{m7M=7֥Kc:%A~|3^,U:OvOsanځfBO2(O-N߯8xٕ 4|>!n%T"Ӝn/bTuzƨ8؜gpc;vK͙R1{ٜH{iJ$2f kB m)P)5|S#f G)H8LPoҤ639)m#"N8TZ#2П\w<(BhPV=v7 1gC"9cOnmj; rV L3f.K9WNKw] 1^U6%< tź3(ӣw*Y̕4"c}dy E3P8EE31NMWv>I7k?Y]i0uGW+-clcx7~ՒSmCQ}":nQeZ c5vgZ&U)0,>+FQa_ȅ޲7ʅeo () R:v kb=(I ! rp$.p؊e^B[~ 8xR!Bk-09*tv\}C5%dA(7 xmH_U; @5ՆS103.*%RIJ=sCABz[ꔳ.G+1Qx&3C#v;by5vqLe*/h&: b5*?4\AvBGI{bhk [(=i{)f7r]5;}gpCLjZEX, `NnxڕFDo"xU"pe iu\Ti\zuUnpicpQVH7:6ޗrbڨ!XM^? UM3c+dYvDuh{0~&CkB`pZ 3.^27ߞBA5lQZzX0+9Hʙ)W< ~R#mdR{8s?v9i|'W?Q^r}{@' '}OrTYR=ŪޜրG3p$j+AZòqE^Q_Ǜ}ȗcM}y)HZ>fv vvxTHm8x3a0e8 MtqLo:f`\):/u8`)9c ]aVPc>D.7k}v8uAAivMOU"?pO$bsP(@;2W Dv ৘rXÿH 1K蠟\ wdOIc_a:6 4бh>u2S9y|k4 jB?YW>ɅNWJI )Sv\Jis -! +[!YWFݘ+ڟR}nU/1O K,̟$+"[Wv\ XU8G+>=L h" 0HNG:rfύJ@*Ezy=7h}xzd3m9ڋc>}:;䑬`v$L=[7ahn  p?Dè&A1#lЛsʳ0/^xe%d?3NrօZ'u x1>^Vb65|` [ẎC艵O͕QQF{mz\-#D[t^mp yTs X>ӌ= jѣzfXnmG=P܋% np rg c3@%c٠ 4ҿVj|)hK:-q"T"rFY{;I; qVL[2Ǘu[.dl؟.ip{ d Qun{B3<&&ɼuxŦe+ ! 8Nh;nV6WFXB!I_1^w]+)f_E5<'[%¨f~(ج .ǰEHu&B0K>7ײK#;eeX'9 YP$Pk Ac`pmRf)Ͳ` J=҃6qKϚ0q }םyxXq$! yit9uR][n3/R XDAddLo:QV.B3Pl=G+y_!][iRM:İ=fioJLt<ǿ遥OfzAcڧ?Y|` ]{z}BIجG+EʊÙ4[m#E!Ű!mώRM wPʩT¶2@9lӪ.Fn1LΩS#K*xzT>Ƽ#G5F7/X*@?{ Ȼ?\ Jcy BvU2XrJ7Il.#i2xiiZt a!M'lO 'v gEe>/xi: 8ћ:~凝qұ_X] xWL3-LA~Δc BOq ~JpTG({üRF "ITH~wpv0grK4ݨSug0g\DNw emG84HDu=6_X8 ]P>\Һw ӽ~] 3/\6Z_i/ exQBzTp WHQtv-FQ `Tfu4/U/J2Qe,R~bd kR1j0kxc@ܚk-M}nt ͂1~i2/m'ޥ0P/ 8[ ۰=AԨfE TI2]a'̚_Kvj(l/P<`#$ޫ3iB+s!l.~TAϖ%÷sH$tFIƷvϲ PPY4{j[ O+*{ӸcYudUP% Az7޹ۖIS1>&e4{FRK_!sf\>3-FL20}U"eu s9MG^R,f E{E 3#iu[X%{\$!cAG 0@D٬0+0ˑFC ^k98dĐP6=,# 5'lzGA/ڒ||XwPA .==ՍuڨzX(Z7ezhE@JɉqL"ȔrF:q#I5)녵ѿT4[9q V)g0oMlJ2>+.(nrьķ[wqȼy*Y7@/`Tj C[Y?ث*:Bcв|穥jN;,"oTŇjDp]+5 ~:GJƘ3y@rP=B|iw 6fe:#s:1LcBZ|v_ 5":>\D|Ap~0|S{.B4>Nd Oڜ/E D̃ǂc}#8#g pҧ]5t ⶓ_z_?7N[dd 3$c]Bޖ1€F.;R}>yߣ`;S~0^% JNE/y{>sw[0CfsY#&(hR6, X/vJ+ob 4O mE0["J:?0)m;ߩZ9;Ep\bN4(k& Tk%4'j7MĔFnh}}>O^34-Y@LxM%֍vAs@/ cѵaqyW<\S1W6p^N@ cڹU}^=ab'1jN'w䱴(\dcot˷hp_9qkK1,kf=RlTuP) eJB/^&^AXYɥa. 6|R^fJR_ɘ-ԹUϹ .jfHR@xR ;%I$&0a4èP۾ sk~wNIJa7o3zgST.b5փuƊ#5 \T;aX/qf)kߟ(e1rC(RY *^M,Ϧ {x Y7J0iB /sNʚs22p2uc?=NJիLCQ@I@M9:|dټC#ϻC'6ۣkq &;+$Ī]zA#Xx,&Ám1բcLV-r/s܇t( uX뛬HT\P:GAPI&Y9&J!cJ ل-9S<uMOQE@ksXJw8Dx_82ȑlRϱo/t/^zeU>zuMQtn&5Rn u(F,Y{T翹fut킎^kZwS}O>5R[Hx^DX[>mp@"T8iBʖX@yP jŏ`hQY明9M`m@Nygzāβj f@ R1tA!5@-W`]i_NDL\ r'l19SlolvЧ׎95*O![gr|+k7f=J,#X;A?`HїS_OLM\`%eXaMw- bz75},*iE@6Z=Ǿx5s:[-qHsqʥ-j?GxD^)j)ugkU1{ [0 Hp؉V^i 8LG5ըT ^ۤY?+~ rsFcbR;[ʱzEMgc^4ՠf G`N,,[{IXbg+j󺫗-}5$-_]]8FIoPWۿE L}`,"BCX_ ^p.B`dk&}%6X籓!}APeڧ(A"te ɲ)3m7O1.d.ζXEz4_>'>o0N93!q.@QxqDWR9O x^`si-먹Ӳ )ק#ѣq//fd8˿MQIND2]lRk/X[ѧMr2ZGtΥyȅԐ̉'L",Fަndd<3[T& z/qod O-,_}4)C&zJS؏~.hA+?]T/?CFSB !vI5j1=Px+ۨ-Š7 SkJRgZv:=Jv%7\/ =hn5ăԽ֫#tsfmcUշ$@fq 0]t3  Wpr|o\bV+\YD'&۷jA<LWC9"q)m+w&{v| UQR0jU;,J= UA9Ά|evmjʤb:ޜzZ%ߜJ6{(r:ԅ q?a:ź4IsnP󙌎PU9LLeb7"\2{̓oOad{I?75ÈNVޒeDF`v~ڠe .7Mv|ןGN-WuBбS-+l!YD_*(A : 5{= Y ۅgi&-C+|9UȦ(ǀFpGw]*P~zhLa \@0(aYr1Vrw>RݏsRo xkigE,ZTok0e\^ xR@eʘxJܙ`[IĘ{!px"k}vn&ˋ^Ǵ{)u!(]`Q=sZ5%w&>o.4HӘ.`1:Mg#J45R4R~r v9M0GK[`offVjhCx{[ l_B"g%puP b1zT8]'bF]GZ6-x@J0\+6RAH#+yD\4)?S+4ACr9UzXkjO"9FKω4o܊n/,͛gN0?oASELΐ&m-\髜sϣb?͇`NNM}uL|]fcpd~)F&&ǒG؞Smvq/cDcIUÀqH q͔pQW7t:Cb_:438t3͈C™jaa&DAsO:[F%f,/ t'KPx9 [g@'+ǕN8^蒄YsHCG- ƟHЖUHc]A{q \?v(uqj'-*#PCu2a5"-IP鍖śfe~|2rdIz*LD7:KPS 82mr%[TK;8fNɂWzͭ}{-&8¥$ -F%g bWMxgkJ.E|:CR&Ӧ({gDFȅ t|IHdMz֡&Fn]rkvq)=@5?'J-E:+U.'.il2X[?/"{S1Yb41J^ 9YHP-)#E|dcckNlsy wcʂ/\+4 ͤ_\GazڨGv ]CZu')sa3LI>T1aV/q/JsѼ2x޸= +[L/7cOicY٢ct[ܠ=!mh@9E GvgvԽQ?B;T]STv/"?.^R =%&>\"s-*F_2'ZVc}swgy [-IlцQ%ӥ(ň'Z+uͳZ7l X4AHnzT o'WFo$[-t3= ̽UZzw3z4f&sQ2fsQz֗䧀mꇅo05qs׸Yڈ>q[o@ں -p3:bƁijy)_!v|?*S}?~Ղ$v1z H4y:f,hyDP50ޟlP^~8K Z̆#%A(f ́qJX$:!EM^"@ՌŐTYQ4MRn%9Cys`ᓸ`P f񉇑WD^UP!|3۞-,!6! 2m\2Z4R"5w~wOt ihiOxNT ^𘎒?ƙ6ܮݲSB8X|є5:w;gxf8vxg;؉JEe2Jwl㑾$J̀XB ]^\4،…(L=ޢT2P dU(kރ.H ވUєļգo*$c2vtValhTNU!_J㍎YE+7OHbAφI¿HvKh=ά~=3c0#ɇғDeh\J~#JYL,!si7܌g -A`=:^@!skc{sk%IJkҐҎlh]S=ڹK%?H36=CD|&_G*+R<;ɾD 'ɩP~5妼KT W5 ,WHjו6p~2uA.)0+DPrw$m2!^|ʚ Q=-[!2)i0} zJ-rMj$K?LT*2ҽ`(PKbm{~phOmfݩvm2+jn|pwYWv]0VӴ6sE. K$;=/t9\_Tbvh:5`פ7"sRxꅰ@dUWru nE!gl4cSQT 廙MpgҬFoPєJ=Vpra?Fzb~OKL  +^R܉S,^|Q-njn5Ln^mb fBzg%APsblH r`&#+Q]|t/άȏѥ=3b% T.dX r;_7Moږ; <;@%(9DXDW®A$η}nr9a}酨sf ݖ{35l{0-&S}Zoޮϴz{":mQ!Gx bh~U y<[rc8m[k6 t#˽` 8E k1 .|*~ч w~W 95_r&Ň.wj`-|$z 'OG}2~}Syכ&|,'=&+x p_rQUgAe-ba=!Vvd.ӈG)2îs;9w->Ӈ*XpK`6)}fA'bl,l^3#%֕hm|Ni5cϿv1 ?L ^nL%@S!0xE?4hWc_/t+lHЎpݺ)K>IW fza+K/!40?'P.L6ڇ_PD9!CK6+b@Gì;?P8?08.}))Kr;î09dy%a l}LL~[+R5Bx&p~2:O2 f`YҶ'vT@QR1YT=?X8pOQ?~)3GkphɗoنL1X~e .#У@GEfVs_!3UUbJB1:۝7%<6D^St2WoU:އ1SbDp1,ijFo*: 8ЍA|Z#Tx 5k[6\Āvf)D[ HdN48a{-הvǪڕ#nLM{uҊ]4N#Pq`!ؕ ub2U'_?vEuIDbc [qZۓ;d1Ћ.s, 38U @_QescGfB \v? Ī+ES}< z_D5VNaN\g/Vn')n]Bŏk k fx&5wom|C{8tѯ+'1OMEloϹ_&B;Ny[ :ʏP/xObjs.'o ~ogGJfٰ@(F 8LMmoʎV쮖Kz|F%N42z3MZ}JDn$Nw X'Q9zy7[Ͽ;>MTUoLnbsB:=Y4$Eg,&Yhp (GMYwQ󷍓\g%I}c[^P 19JyR&[YoMw2_Þ4Ęi!oweX\Zp Ux^v|YšakkdJԸqw+WKVT ER1ڈ6>rhl A`%Dfn%J|,nod&O\"NԐE_$&M;_1p1걢sPB"V0\$Vma J#f~}UzǨhUydz_$Z85sSҢOʪm,z]_ ?tU\9 WyƜa2WP,:?!W&DoWKRoݶ8Fv Sc;){-&W䞪}h4:*}G~JwՄ,.jqI̡̛ }Q(<"$7$k.ZBZ_FxF.~V:< v@ʸ u4ZGIbT 7sg}]l|~L wyۅХ玬 ^B7]р)s+wk3+c~%GTB$NB1|N.JlF=a8ۂI<"2bf67,0WtS6A3TqfG Pw5&Lx匣ۇjTc^~S)h56-s; *rHܿNONFNK$@kҋU2iÂ='O9Ih:1H|6:f/]9='26Z!h Ofk"Dh4,\V(Xν".MjהּXQEt[U],QZi43V E}~ !Z;}߆UƮޡR^]:<,'i:MC XǞs&S,Z5&\@Ӭ$n<>U$o%S$S;IO ̨z˦Ez;ڕGbY&m?jcpj׆61Ò+yLausn!RE629@]ak3؈C~A"WdU#IaWhs]D 4<,bG:,rڎA`$ lgl:ɔ*uM-j+Fr<%o1?kPHϩDą՜C)^N)Ko$P_ѩO578~ʒ i_Q48q)\LMa]# ^a[$U 첾?LFr,吢 "D@UNi9pj'K ,u/Pg<N L :'~NNxM\(^H_Ѿ  d%6J#bvIxMr> g)xn|)%҇d*c3*pk Cz)7!^y\X ~ݪVHhӤY IYpHEAsz$-h8-%goM~(Ic\j~8_Aȋݏ@_]k@P2f;$!kr\ŗ[ mʜAA!J"F]%ܕh1]+'NGD#rOy˭MJD9D57:QssX'-y$-Mt # ~,ONbNlv8aB ij:1A^Wv=Ow:%7HwM .리MJ$oI`CZNuKTcIkMRy1.gb|FB'MJ WƕCm2'G.I ~VURG~@"c#0to&,qlkk1_l <j T͇!Gk^IhL pOdPZ^2pۆlXBBCǏ2D~>)+3C] 8"Ad@Wd_-&D+"`*QGp"LMާvr`me_O$7_r,w=``)#1JٴxySڭ *mqI@ˢۆ~NiX$E@ BT-͡,hx;\-D  \knLRHĮj/Ae=IKCɒs쩤K/; `Ub*N,ܛFZˆԯwl1ߊCV6)RI8Nz߮)9s'oֱzVQ^S}X(;NTfh^\6ha|:#؏n9pT3 v6Bh{|aC^GA%WgT9a,0Oɞv+wVQC'f 1E'>Kڐ:wg\#=/\ULYĶ"ˊC)*H^.^+7 J\ ]Uh(٢v>ϙ(;Ca!n5]nk+zֽnA+ 4co)[igo{9uXW` Jh#fzjQ'e[N@Z}n4(TEb5}YCx>gܜ,#V jCdIDLlL]c+&H&]$jR, \S&)t& -9H*߬h*gfm46*%:O1.B4NcFP¶A+;&), fm]Y`VEB{覮Z]eE-+oN^#Po+WB)_lnnv56VmuԶxǩۍ~ɽvVc=Eҧ妓wmk(ŢRNQ?5W/O4SAn$]+O [ y\~r_ʰ9̔؉*% (\SBQJA x^)hj_+oql.W3ZI'yF?}vEf!sƚ+,L!UˡksPDM* G\af!H'*5{(K&(A5æ&e-fnGf`|" `М)'} xnO[[I-U(PD[efλ-g~>Cn$v{Рna2:RMjl-ih kS/3'"lw- Mde$LPe쬔3MsL3~vU[:ebS1M /B?mo(~9u]W1TL,5@g[F5y YǁtV:YVKDKaSf^]K >+UsǨ0{ 1ܷuPܬw;v}Y1גߢ%b|k a"-hF}'RfRM}= |~ޝ)RJ.WڻFW[nBzdw[Œ[aL(A+}e_UK۹>>E$qQmN\/35fXcFGiW H_%.6'ͽ|u^l5[B3a3X¾3zϊ$WhHp;V2 sA|7J$Ȟ~}I ӗWͨb=ꋪq}DĮUP£ aS)Vs|U6: W xȑv]C썩`  A_P9_o%`)( .R░}#Vp+@}S޿K& KT8CEjn "V (Ѭʴ*O$$W eXwEWt|<??NeDA!Ď yMD14n>8'>6#?.(3/*FCtbwc}Gai?9xkzVr4oR3uoW`]Lr9s~C_.%q}%(A`SD!474 ޞj2y`bf=e0T1[5΄6ËC=׽l< FɗQ!)U7R?ۀ nfG,%w9}Q{R5hJ(m}BSN x(GHKfmKȼܶ~De;*}y1fZ;R#HeBfGSNq2"fQ~٣hpu㎦h%m)š06ɚ\Y?n^x3cj8&PNaյEI P$RLh?T y 4qwE ̛K+('=S \.9zJUg;#7SNȔWk1D̸t*INH4Q5J~¬ry/sr]7"{[ \^NHm2Jb]iP۔ựDe'".J:%RѾ="gt(TlX/~8hrd kYWdJK&Nq~|V,Kwz>s4**x"y6HY7IKi*s p5B1G}/Y˹ﯦ틬Lv4 )ND1(W]ЀW όjqWGa$Eİy0ꊞKTbpD@Ui8[} 笥7菇Z",@=Zjx o|d\?Ɠ Xng CyU֓2:VyVFP4uWP6>6e@VV7I!-1 /|p)Qt`FO$n=bT̿ oOn<YnnۥE&'{,B;ƦXL-H⧃,0.፰paA7,ZFv_iy+o Wխ[*)Yvl:ճ[-PAqL݀=G:~t@.]Y3l23k՗-JT!Jh$)y#xAشroBڦ Ο&bcMfDgS`{l47A zj\η'OZ-R@,S{dc ˮMə^p93fB5z+T \Ʀ,X[[vE"v!!JVngu6ti=Zx&  =r$),:bhU= yhBG>QBw9 !@AU"[?Yg]NJ2@~6D&)߅;EV߂y"X+l*+zdQ\Pj/;yz55O9_bߘd;uF`u ʛQlM"_x]A6= bi+BpS_#4?lYsb#vVW7?xbO39n[m ?l@~5g{fcy :74㺢4u7t^zJ s$Q.N>O.]_ ^f{ 5b+>cCh,WN^MUjC vMuЪiaя@ h' "fA]=T6wM3sWPTC$m Lu@C,u`f?+*89P8B~°c+2j83)m %yUбOmT ݹ:~."860 pZbY e#y"DcTjgX:C. OsKs!.S"Ӻ4!0%™ [峓ILkb]=E.8֫>>BpD;-[;ۡ. /АAW01=/U/׳mKO~OTjKtO2QL48ڞoTԽ>z]5H50/~SA?UɘelT`5\~ H\ Oqf껵̭tar5̾EZjHrc.;6et] { Gզ])L,¯ Yaַ߬d= ?#ݭ$=<8Լ1տ &xVssM߱ydkiy ͋}6sIn]{TbYZ2;]ncc76Π`7OwM򇽔gDf:=lǓ f_R&v=?40Ib~„{wj 5buts !K^;%_GkcVhɥ oC'\3jW[}VG]qJ gf7W;k}4 ɰU]baLp 0-'taM*ɇ:߁=fY>x{90V:I~k~]Мj%pѐV*x4ĴN{sG6yu'Cn,Hal6zX${ tb_ D'"2cvvp%$fy7ځNiT\G-P%\;˃ԦQ)Wr(aל2UM°n>ం"Ϯmmʼد XN뢒Z{b)19oP1qA]QcwDg* 7uSl$$b]~)FNr5vgRo/j!{,lwgEl),T[$qOTǑX3f<*S izXnɣoBF*#Yxq ejS\Y?x#v!AȮuuoƿUeP `&'2 tщMwAvW^y.}AÝHՉDޜ0}F W؏46(+|+ll٪p"7EE0vj@n#zHn\^jEvD[ZrC jHnŰuC5o< TsC؄6c xr?f8 M|ʂbe뚢$a~V\=CK0kQn?}Z؆@5B)>.7X9D^$S}`>E֨6t[ٺ$Mf. J-X[gBfZ/gk}ޭyC]}9R9byг'Ădɧ%-Pŭ]Bet I7 epBYad/X}RbG#LP) е_SqUᦅj7:F%]P\lڅ'S9M@hrՐLMʵpKԽ"g)6%-32\cJlzj(kQ\7FC~Tj{c?X: ΦMn K^˪@CZeܶWNUͭ[}4 R05({_X.̈́lbcINq (kAlXGh{dWr4֊+s:䕛(t 4>؀691RVϩ#`oMlxrZ8ި(p?'9RWƃ>Q?[8(39[ S'JX.?NZr~V$ OI{BTVoz¬›PqP<#oz疖jY^Hv.bqƫ\L˥<]?^㖰/'x^ߑSg-sb0q^Ǟj^飵ۑ\]킎ISIjG9XO. )l ,{YSG^@JuSlX'x[Q\ƻ5Դ9O|\OօBlL:g;"{bڽ"L*܍Wpu p*eنM~I0t5 DZyd%:4yp?h~rۃA8_ӥ2;wҬjajrz(@8joo^lIO%O%bDGoiE&D(YNn౬^d.r͋IMG4,_ʂjrֺۭ`` ̄*:ArWʾ ҡ*,=R۴-~K?l NEb_o)LPګ&(}A]k(vWK3۱Xd;32kULY3{&zK /10ZZ UA{TGfcŀejHH'6I|yٿc5hIDET#4M:NB;WahI=y :!MJG"{1']NU Cb|?a8d ^ƞ4V}O'̃s3,0eh<pf9uM!"X6/l)HNaHv+U:-v1jwu#ӗ{sqg̅SJ>i8׻ DʓCIQN5!6)t8+VtDJ9#ꐰUe`5#^O.$:#e:rˤ _HŎ.}Yf߱¹b*wF_̱Yqy!x?i3M3T _T9'zߧб1 *@k 6ۦǓhtq`Ol1bxryUOX>E@N Ol\]*ђR۲]+Yǿ0'.fy nL籭oJЊMwntoͬ hMjyF2{nLF-"P!(֠8; sJp߷l5=k0՚ex/]/xʪٌX蓒W/>aS_]q&ԈyN6H@\QMY.̠ytTܪXE } X@ EJim^SFRx֛Q;AɰRƩ?SW"JպqZSo TB+fʦC7is|E.7d c׏/=.wD)xU$"n&Y \P<{pIRȓM\M ^hB\~v2ėNrw6 ]IX) ZP7M c:b˅'jY/l4s1 IA{zh܅9ãI֮N|u8w6$rL"3LT+ wXe=`:ҵ7[p(Z*:5 {#L`a _a&m282c~t-"%{_2(/`r0Fkm25?nB*a>_Z !%쯕:>-!#YKɒt\4tv !Uin&Mg",Qk Vnʉjoߚ 93GOsnJJ,lB^ƽa/ r^C?:=ufݿw" g\ W{*f0Ɋ_B):Y8>Ykms+#%?o2^bg̰8X3cc O#rg|(\ ̺üeJh2 x/C]G0F1l/@Y4h3Ϛ 3_j B45NhSyL(Ƨ]_}ܩ6{.M8TO5h"GWP"z>Kz;Q>;35<ɯ#.C` 4\pC~ ⒵0 +HGLEsν@{\]3@z 9U޼f`+GmrEXgM#pxfZrZÛ<8\lqLOu5{dR_Ó;02eۤsJ\FFҼ,;7 g(%JLUhqmǧs6ktH?Mt/z}癯Ztuv@]~^`ȟs[<`B%wgLXO\ "in&.~aDNHб =;Gw:E`@<'m%Y$ҵ144)SU6)WIcmKQKiűܛ ?!G%EδVMaMe Ƈ7jv<U$y[Q PTb7MKmw;%$QgMĆ"p'6i/^>L!/H3thA-8T9z΋BO`lsxt\Pv#픟xeDÐ&jHL~@n/j jSE^H%)#'+X9쏙e3U|N'Gi} ;TgH٫oX2?r(`L5%ua8Q+׍n" }6%zmW (ai!ZN#gn.ulEwvm[܊d ͌UJCs=i] S}C|_ISh8N'T6's!#Q1)6O d"?]PƉR+6ΦnID͉>6;pP:;yj@بzo'fzɗC.=HLq+H ^J ilvC {b $S%A7[8}clJ q,)>z<kFs_f[06`D,\_(nx}=71Ay9 )!pln g)6^EenX>ϣq#e1t"%xA0CHX-&xוBԘB91"|!+rs]k-D?f+qZPwֳS{\k-Ư, l1_H᭒hW bsN_ԅy/|{,.p¼F`Z'xq骒J::>1v_ڸ9Ng%ψE.5_ uT[sXn.LԮ۴p1?/w7շD)?DNEHdخhS-|r >NN0n+/v?kC@j;XzP {! Ht8:[ bALr?zjW@ SELC>7dQG?{MuqH儘3^ACѩh0?2q i /3.Me`eX\m9{|ۻŕEQ]"&^%p 7|@ pReRkWT/wĦ t6@5X_qTbO&@M"gf6ΧrZ^ {W/OJO@3^Ն;(;ǘMI cRҦT2ji )[ #::t#ۛZwKr2]jy٘l+O:5~3m>D2s \4&]6.n9ekE{x.3 ׹wȯ5S@imHť6Ӣ =Wcɻ‚9SD? Tg< SEzK啣!A2_@X 'y)ӜOB$YvV؆I֬&6G?b$JNO.U+S/G^!B񸐭 jM߀`. XY1hw2*4n'E{!D'f!q ~goG`Ȕ:5'ڑ]Fϛ\>hKm}A% };lFFnp92_=a5'Pe:6`8,Nw LO^ESMem?]J"ylF@ Z,V_w 1p´rjDnq?A qw}uu?xXU+%r4<jFUz4q7FuRXhRM v_@yA1_TcYI["ƠoLAdm̖~?FTRՇp5͎q\cOc@97Spƨ+i ik4| "8΂: }at D-x7*>8p|Peu_l%㡯f[!>|ՃC9Gq\|gQR ѡjlghH O.\-ƈ4[x<|k .O2O-bzBͥP uLr=ʼkM=%ul3EۣRiLpbU4`w}{(F`=2r;)yUb5w_C;zJeS\Sz|}K =@ DޯnY~- l(*xz~^A6kWvKI`¥j?4~b.kN⥵ qSfǛ] k#> eq1v7bdj 7f}x J,(1z确:h}p:DkŤ`sF~SiXeS.|U[hCgbt]BԱ~%+kT<9ic5\\NfL`O6~٫Y2ݿ<VP|D_]|gHeJd7G7ğ2֛3m: kͶ/X(~gќ,&Opy#)UJߚˬgjszaE^QQժЊ@wFZ%&W-0?%rTKȋm ;֯S}JdsUR(NgZa~s s RѝX -}ߑWu[OdGN_hEhǠJG܍!uOt~z[o_PX܈|ײ6u?f`'.-Lr$sf6fw>:cXy)rbG%l%o YtdYЙA'hfm'P!R:neO̷JF?vu9 <;F:s@P :]DX>fMCA>uWN)M#Fi/L:$n~2zZF}Je7C =!DX_HRQ!PdI;h%/{nw˓:'"d¿ڱ֐thl 7iLd@)[1ɒATB(U@H!0V\g+zxO')ݫ:bx Hƹ oUC>-eƵ r ]@M3Qi5;1-Zkxf_R Ehw vJk6v;p&l2= 5.<`D}+wäT/!)B%x&v03@܄9 ʎWS^'p+uqB::, <_R^G+kzQ0դFbw~55`!%*QS(a^!ETzd ]Iv,\.QJn\;ѴrIoϐ nd J%qSO[ZkѸ-c/lM-ĉA3R6W0'pʧ=礩Dl npvWiGLY[jy/֎` Fe k.d:fp]Ud0,"MIhHLhob'HT})&F d$xAc\!};^],*H:mn Wbu2ˊ=a>ڕUPSwhI?@$,z5czS-Q6QB(!D{{X{šIE{ w^J=sQӡpϛ671;?AJ mYY]Q\0!?,?Fݦ"hFr|R=J{H6rBƁW:gH>HY(hHd,ᔰˬ!vSk1 !"ί0 1N곪4[NA]CTwR2/./!:rH} lzҸ5^V9.{ЁVcQ[Y< WANs{a\ƠՉta+g1,xft]&9> Q6\(m]j@}ˈ7:e~n5=/UKBE]gV9X*ZKC<ñ AA *Cl2e}oh@ĪTj-%D.gT#" rkR}D4) |I-3#p|LfxeP7pXerS>#i"n-#YB(oήstG5*EYuۅU5 @ (10LPl#B.tqLfhsܦ>wg1GN=V d+g袨WYݫ IF=`?gڰE(밸JE DGgfJr'݁ov@źG7CEaˌmo엵TKY[ء-1fQSzy鯆2) )TbiPxB"(xԊ=-@I8Qd7,NhC>GpK\xc1(t`R{uZTMS%GE$}gMCpۊT"/ ՚fc"37T$-GyU w9b6̑I_3Ma7FO:c g#)[6J;+яεI<_(gCd~ ܁d(U:%>׆Q8_ %&=G-4Mߎ_!)zh{Xe=5ݲwooGvDžyM pod$w-l8h[OfO*gK 脊!LC4fԗN#T͇| qC'! ^Ɨ&>xA5cwF D]"-4 ۥu&-ęE ƊD%ۣlc^KM keD +% B)nN^ )}n@'6ƅ NG˚q 54[/RCM{2/),5vd[7"_dAauV>ae[@YQF_C0\R#mam#ZFƈJ,Iv/3j5Օޫ J61,;N. ' Lʋ9TE[!q.ć+J1#2`42't l0 s҈WuK9-'SmS̻Ig=[0pB j%5bs /+79FfU+8 VOt46~cѤ{PMeU8)6–h${@M^#W.2(@~ g:qAX17f{ިTW0A `K<yxazY 9y^Bt˸ 6n8v ?OmrSʷ\[0xlR9'6 $9PWMbeOwN5_2 8u8fRyLO<,Q?*Kݲ}D{HT|E3q)K]3M$8ZN ޤ3 M ZU9*2(70E+uBAMjx')&b Qh"1\g"OS-e"'y'B;R M{]tM||0k'[%ͺ-P!ꪆ AWK=⤄Dm[.n _7^: .JH23?|#;11ih'M>h2nq,Bu9\˒𸕀ck캛^NX#¿>Q 9]W}&;>W./#=zǤɳPG D8NjFNYr{ 6:έZR`0zk#tafE7΅P0_\AvGB`}&^JN7ZI0L:6҃֨?D$jw/]mʚoOjv8$g^ ˏ)%#bLJk_*EEW9}b^c IEe:뮚PMԷ^fM?6FwtHJȮ@l[~d`Au<5@?jl+BR6g42bX„[YrP+1C uRGmbuYn)Sjl˫& {$[} O#M斳jI8raS 'C@YVI:ohaL6kD4<}jFKy%$y[LT3`Io'uJ23m^J@?`*昅s&ɽUX<+M3AX^[Ⲡҽ$gFg{0Hf crM-UѼ)wD[w 0$&t_|)g- 萖EK\n0\ZZ3"xB!EJI`3lY}HphcdNţ&u֑ekI[jq(bq\SQ . B `C-!+Q◇4sG2Mg8`ꣾX}41q!fg@-s`pBLo{Ij.jʮ>#5d"0A.xL~-!԰=:6MeUtƵZ|I1WiB\&!ޫQtRD|akL 8!ʙaYd3 7q &|^b~>mC_NUykAf#gRԅz9(2'2O+E)2`"ɀFK_ .E`? "Uơ$ہv͡F<\3Iwwk`|p0?;53*'nSeV.!0wUicc5b#9,E`q=Z4!\:g]ځAoנcdv:&{< wE*,#ޯ]"@2>2\,*aJpk̂,tc=W^rPbRe\n6ӓOe D^8)O" f* Fq d$ZJ |!\ORW1I3d`J::Z"B:( }"ۮZQjN\DϘ.R.ݭAB0>Lx;{OXmtYFw׼Ɔ}LUd@brbZrU;fK3V2 &K,PP;/Gܸ<x'S 5z@\KVx'H\~5<"b Å܀Ð /% >)lPHκZ7Fc<Ӭr546>oe6hj}{k% g!2'RGI~*XQ!Q:nJrtuHCSvxz;XcZ a|HZ0 1grrJ:h}L^RNI?(E#)oPI4Zؽ,e9r+T+09gJ a-k9 ͽ=APC{TEpg#eZdݵqpAr4J;Ap05 S6UcE ;Hݱwr7gp:ْȦV}Ip IҩPk]~+eը1S,)nףaآSRN^AAUP g4CZ `$tStwa] U_K!pjFI}E`- ,EVRnk'W7Al='nG4BW`yN]% x YvoK;b;ҭr"S t7uRP՝xFFHkVY/8kj\fW,^wg@ kPD)c\1|cUCBQcR#eaZr҄b&^5B.]][R`ꗺ31KG@OcW:UI)ff/Po$!Ńű'!Of%= 8/ng9kiPYт& Zd?9U!Fߩ^!Q'M@  낻;H0E.j/"`_uHP\ѵ끖Fy3TucYni@B.; B'He-eY; >&P#,Q_6Q{ ]"-kW:qsG+QE=Oz^Ruܪ5"_:x*T|^vXܜFhD> sI@R]h&h#h5o*Z =7|1 ʱI\o 4px:B\;Moy oI-@:svI!%(me|51\}?3_d߇[X72K3ػ/qUV$%bSu+ל5|n`fV.2ëz.?;GrjhAq%Exv_} sodmuY>zs]p:nR7'9䷓с_;G=qXV..Ub^\U| ű Yo 4+ )D)0\VRuQ+D'Z<* C19>1i'W5X; mC2=!4JڮrW~67^ @yaQW[, 1XIxxi3zr!N(>@^ov34ⱎF/l|ꢿ͝ml˧(Ғ68cvK2C6#U ,4K-%pCZIJ %aK"7j}$𘣭5/hֹ6YwW >vD[O%V.u뎇>8<`:Pc[!(-nIjkӋXCCas*KC0m]D^^-YYp!6h]sR-G5 $?s⿼b7ͮ e-FSmZ_cwV*&H(p COcLO nf VlRhccu.,b0`S7%U.FH9+>.ixMU_42S\w ḑKgѲ~ԼFGdU QJ9I/+=CGjΛpñR^8J=i&v ~(,,. xՄs]WNɗ ׻? $0>9ykf5%W]zQkaU.3U4YLFěep춂"Bn6.j8T|Q*CHdEvyQ/D0g[4`yu G[j{i>;={W(x@v`{ǩ*c2}`fR+l5] S+X.ByXn3H8a.FGaT6ɂ訔:s(e;"$$š{"\Y} NF8S$⊂d_,?1U7gn$1w W@ECUECR7- <U9*`.A@'JXny{ 8:SrfPt})piP)W [y7Ć+fC&*ԭ׺+ ~lʹOrE;,hM#L_R ƶ((dk:?oS,z;A]PMCM o B!H W t0?w 'NWFlDI"7+6qסӖԓ 5CG7r4:a*I!rF=-p/2<-®Q|ޜ?,*fZ^Ԁs\5OIˠ.S"wrjql2!3Ĩ¤N;oߥБQ\@3ڔ`!,,ڨGu2mO j/ԻΗ3ૄXYӾ)i.4B==FxvG7~oV/)Cuý y=jsv7UZOu%93/'t-Zpȃw;xi=GMńQrͣ$z^mg}vqs?|;PVz>e*=^&7O>gTGV]@Н%R9 jnk+(=ޫVkjX?a3) Y* t.izStBY78>-FƳlTEQ6mL7#-"L\tiNaPl*0]xGҫJڭN/3c,yԗ Me,mNiD'gNQ5n!/9vEV\׵aeﲦ#$GІ ,nJ\r[O"`([MhH*ޖX6֛&_crըD,:ҢBYuFR`> RϬ7VL'/^3hNvѽ64.azC.ZwHcщJ&?bgÇ]@~avBퟡ9jI׎]Ѓ'p3S B8P* }O'7FNf諆0^&2"UDX] ߃s]BVEYG`MA 6{(zGPȍzzpNE`X{܌'bNoVbX|P7/?eDŽo@cY\-vg3K? TWWòV_MC6S; SHBX1nNt V Acz孋UE A<:í6pq"65ڲKVjQA-GEY:Y̫`9h0kw}\Pb=}mlQuU]V]:Ϲ?ꫩ㾫 ز3u'cp n1jDkx ߃xUkO1vAOaLc~h(l]Cz>̛( UVmBnT +c;R=S2i\P = M2=UaZ?i_z󠭜76tcPQKH FFVv],LlEKJe>8 +dxK9h`ܡƦ)mˑp{>%:FY@lɰ z k&xYٽNPpĦܘD|94zތFUM!M-r:+kZOKB ģ8(1/NIqܸk bXR1bP+yOrCo[ADw B(O^CZY:5ppXennz .jWW8m2?s/?a79mك48:è> Zs[yZ~r$ L WAt/% m 6"BuhkD_GNJas~E˩INVS{/mxll \=|$LWksqi5,.5lrV[{fbKS8^* .Lk{/9CB81 =w߼ġUN/ bSU^ v#A$l) ԅZk酚^&,-ڇz;T" ;L$^:h _ <̆k>qJ9 &Z}:1;I;_] Cn<χ&v?nէʉ/&Ա]2/Eytl;ĥMB?z3GXDQjuϹNV3>`aKtY்4y \~?V}wp MXK66nO6fuMC\c.xL?m D/α |R`v-)դ?$ &_f`W}45o(ubC1($8$ -#q+=iL$k/2@:Q_$K.ՑCw49=ዝ-ڎ^0\T aĬqS;ǘRn9TE/4YFG2]JXsXM\S\U,^0;P$=hwƷxIi򓕵 jިD&U'lՖ<.2'|>/tyGQ֜JȎ@^x-)GVO,J%`Zҿ6; O*oq"$ƅ¸1`T.Q`cHZ?*lmv4qs:hY +vzCR eFH~5׋`|#cY$Ð}(BjQXp&o* ;w;׫˟8Ţ;{7øN8]nn^׮iLO5˷hH5#q0!(/x-I&WJ8ؓf*ʣpIzMc}ħ~xl3'NP Q3Z޾qY╜g$3?NhI \{[\lܭ~k{1f~,@huBt/^&N)~z(l`Zv1n~ 3OxAłO8Y&Mu|oZT槃.`t-<]cӁ"QǗyzWæ8&K߮g3a WqCiqи&=^U) lS\kweQH/m~]3mrΟ鳳%-Zx7큨}|iogLTR' -?E +-s"KDEZ<]R֏]sxNSIhqتαq!fz+45wadji6ѬU25)\YNTc4!M>17?bu1z̮r?Y]M; \ O#G㗍v0d'LMb!%g1y":Q_BӈOiiŶWݏǙV:ڧǨ`2|J ׾/ o.bhr.X12iİ,(Z('e\QۋڛD(③IF"X!]KӈՆ+9<=Sǝrm49!J4: $Qlg +.0>mxE`Q!(oAv?&-@]?SzZ+%l~;܌Ƨσ(C{QqY`sgz]JFg„_/}& J@8;"o!O`V'9ftH;>I@S>7-rS'ĉ!ս@K)%~1Q}-EwjO2=&\k-Pq\j M ۺ%,a 7Ę$U} JA׻lV `ʪ]4 }SKcn:]ɡF@OojmM"|7}q yljўјq] CF>RMP \qy>}" U$Ba[ ۥWNm27A@{ 85'ff}\ذ4-'4Z)8zcen1׹s]\BŃ{uh*.-c<uð!(b솿.%ho/| G {Չ;O#2$jٚxzIeygyUîĮ7>ur~PQqG+  k.Y *ѶӷBN|tȝL$-*^o_}#gn0'c>3xiTc^\WT!ٗ94.\^)O_?#r#OZy1^ޓ#:{65]>C@ lPo`Xx2kftT.}2ɤ״( @0Na3WkxD8=Bn| ?]ԳW|JHڅKnL2<?0jJ7? _ŨI  [[R9`C6Be_.͋܃!n7^O@w.* M0SS=Pw}3D3 ^iL*t8RnTuwmulO1ϥaЛ"5(0w^R[՞ZKiQU06tL0(\4Fe\:£$ZthVApfJ)Dq-?$f5J҂Y12eσ%PZſ^r{sZx\Z$򿵝Yc|Az` j!Vjl? 2ؘ4/7dpruBIwO+B|F[c~<(b=5̟Z0۸vDBp~6 yuHcRtw1QѨ'T$ 1?1n@Km֓-U42T4֡O1ͫLʪlȖS q0$UÏʜ櫑J|+OJZj BG` d$/̮EpbD|~DH$=-,/99PS<)CqZ ɖݝJ6oVD&ȫ,\F\ mQfpH t6uPC0L1F9pRd]\5VnA9Sb![GTv }<  .&3c46# y" dpcu FnH? ;uI)r {!swb m'JqT5]i!yZǚ*/oNf_w4l\,*!Pu߭t Ӷf5qא ka4X]J& UĬJ^ۡ=0@|yzqXJf"1`OYh$:QlYY behj+\nSArp[#'8(&C  QfW*G LlFȧ89ߖ⛬/lGc U_evy& BˀiPa6;]Zszx.УЖ)nvj4`DP2"Sw6IfU Om۶842BvFe+1??=NH x0KMX7CE}C ww9pE_5x!/=jMIܰC{.? &.4r>*`RD3 u/EtX*syX#gs"LmW#֞})&V^Mch1bREA6G [˸,4q{Q#fBs^T xp^.{/5+Vr+0eusyx;x^U(C-y?QT+/a3v҈🄰HKv#eI:GQ!lolT5w#0gVSL/`=t\~$ ^B=Zgժ]Z3_ vaLF(LF03C ;բ "i Կn+VFG? >"YN1(c1 !g2;jv6×3 Y1!1sm U3KH{lLЇi*wku| Knm`="Ձ\~J-㟎BEP:sv_S 6~:dtM"PlQs<]{ HR nԁU?iyd`NQ)c~)0d1Ѩ4vGP_/q#n;DU;29*O @*ZTA xP5T(YH\Oo(:-x!Bt6n߇<5}0])WL^H S@ۊ41*V8Ł|רKVj<3 ʾ'U"m̫m}.MIװ䌸{Cr )Xz9M ۳\4E'U~:WcTn0Ql{}]qQ͒aR*-0cd!Q$PhI# +j 9[6Cx~}b㐶ע #`ppl3ps.ݔJTw# Έllʰ:ΐ[r\?3 =CVe!YSϔjF6*L{jQ"T-YO V9RM<7~*QB .`:]C"gԥ/X=ljP#0ψRDc0@ghb@mQnЗ3tKZxѽkx--zb1 š8NzKfoC1 wRR M^e-[ZLiiMo<2K[! /37T"иH|2Ul8o_>byƬ+}Q I[(ޜr?aN(̗&G-}#|3_eWI&{ưَ0M f^PSji ]J;>,Ť%ǡY~Հ:AgJw9]m 3sۊv7;Y7u2 h~,R7VnYBfIvFp9X:Xu`:.j)s繰p4Ct;_򉋬le@A}QKԇUcFR74~>>z%:2]]&%{+,:pYA=iuZ&Jb&EF٩h o"+@hQz?CEvs׍dhU0b)]a 3^dA$ͪ$aV:@p[$t/吽Df<{;df\Tp (u};jLG }=gk:7I 3<Q#8,BD"L8H}ڃeP˽|gA:u̷k`_8a{2ι}(nJ P !W,Jړt0fʫ_㽮Mq[uW)5`I&$r;<`L\eN>B?~mn{Ysi*b _Dq>f~eނ#jַ {M'vBeI0jB_+ ƿ_P]dR$ }@J⢯ 3_6 :6mB69v: J#Lvwu/ F Syg@k}~7yqj֗N|-O>xB<꿘>#R18p_!^;֡,$/SDP7ZeIZ*&sT6wS#&W6k0 I|=iY_ C71\V{[cs֦!RbR]S7у;rD; tl;SE" cKU5`Zru9RyqmA+^?F${AbtRUg5n}G~ϯ꒚־kMElجX1b /ƌn2ڿQQYY,-nQ1hLQ.%0DkM28B%?{b~bш[a-jXe(PiBtЁG HBlF[E7;7-83RCis-Sם:DcL|O+$9[pyD*6Q߃*zJDO Q677I@2Oxƒ|oCa;̏o` sECVaFp$aA^VFC#Zo i<( &OYuY^fbP*~p#` Ο|қ2rUF'漟NmnuH[~^(_R N:BB/e"lo>+m}V7 p4#@~s]R\>uQrv n8NHRJ@xWpN1%p]_VSyZ~a<1|0`jWjp;DJ|FR)+\nsEl)]ͭ䈖jLRE V\9zr^?PQM_m0&e[hK\bwafO E蟷bt!HT ͑dgWPLk+y%c[g@i'bJ#߲e,ڡ{cj*v<'>|7he=kjȜH:U: 󖠤y~$e u1e |[A fUl .tYx;,+J&|"[̒@C˹7?#S \h|#j0Eytm݂d|i% k R :E:<2VFnٷc&f')Q> |T]x\ 0-*][SF%gV LUW9)Hh:O7CYw2EvdSyH zZ歒.oZr\d_7g ';_.{@Xōy8:/Vla0dˆ<mOM7{lcAk'))eXѬM.zkdp/kfКߪyL+GQ8~םF'g/ nVõ&}6nќ-=*YxHA#⡖>DU:5 ]oMFP?(+b?Z"vl)Z]×ےb~+Ip?ilT }ʇ?]R +7X/=t2akq 1cwrƓ}B]1( z]35i|rRJ* Soy>pF(͖xж4~fx>IX!(y( R)J8-3~$8`NĒYР:\]{Yqb4b)驝*uYOZ&ˁLܯ/cXFj[Qtڨ⧠m$}&8S^|~;(hBmXJO3Z}Z1dy#Oɸ9%c|fxN/Grq H'j疀IPe@_G<%ԙ-LN1$ eK#ix$7a<TBB6YW eNJ{?#n_BXw-)vҨ)8SlG0<{x|И15ZTG%[+~hG_1*ڡR&gui"4n4L͹[60 fMH-[e蹰[ZT) pO }OrE^ڤ4vd$PLo͵I~TC ؉ES#ES1MX΀"h^oHjL&3a/ >PAAUZs˵2so ̢(M"MbwT_ +0sERTq^2)ZE(%fŇRXq)  M]**nuLMuHV(_m`A+aZ*&bCl45vCXcҧUR{ugmpVv@c m΀w*]VrV_(k.p6ZvBhQ%ӝpߌDV :4|lNsrAD[4wn)CXQ);m eEbpYfiQ`UUq.cUyDWW@k|ڿׂ@}$`Q_;m h\Bu&`xu8wkA.u*EM=`-D#L'«/ gmR&JPu ܭe} VRc?Fl~@QK@)6C^bɠܘ魇F՞/n~6,t'LhԝF"4-Rkּ8!*mwex9drz,Ų.?5o8OfZ~91P(ڑ+΋oie[ȕhlfhJ N7O/@43M<9 |nj5l0ܱ,Α`º-#5 owo~prGQ!߁IJDZHqiN?R+Y2F~?T6˙5/A] h\lua .rﴻgDx1œmkxtDIm!z&A6}')n4ϑkO4MIA3Lx+ֲzIP'۵P9݃@4!8Z$]s2- S'"y,24݄2   (ӎu}ep܀RẅߺJ)rc.j:,WV+|RYa"-XBohٵgmCFFtwnɛ=O(&?^gGcʷN bg~acRZ35AU%9d)SB5," "uw̶1 jDAci7=V >Ȏ۴dƘڀy:c z (:6 grfڈ~d6Ԟֳ7 @-)DO*?vɂ=Yo~>œ]ޛE>86FJ:p~$1^W%Zb'Z P=;<Ž)S䏜^du ,>n=P(oDr閅yck&sJɔ$5bvdt&mޤ$ĥK80HkT4mưOW^@&]-yazdŹ Bm2o=m{jSV;#kaR~o~뢦o+U?*(ҷ1 [1\I;(`0\f%HՍ6y2%JmO\jyIёy{@HfV1-AȖGM ޲8WHƚar:ǖty 9Ma)2zb8 U^-,@w82h O!SSi|8!B7Xʧל W [EMĉ\h #y$WڑYZӃ̡lƚTc)/ROk7iH&bYAJ$j4y2*5yZWPM fC[7(-()x!mͫ Gc|~ŞMjL#Js#9#cρ3MqtʗIX/@.h |^L&RCԬp1@(&˜ݩ&R|12 W4^P5Q%S݊0A`tH< W@,.4"i8ol&ivDH%YIvmCbx'}Ne'H`qW=d֢a93rĮ<"Ae[\M-zSZ{\0uӌ7Z<6Ae?_ߠX`8LEM֍# wKK->!cH@h, .pt`n_|Գ;a(:jYk X~=&>*͗ð j v"?ڦ=p5GP|q1ho\lQj;]G C ݱx8?UqP}-Ojqq + &3ssfkYI̲gM2o5Ўt0ՎNQcJ!##KJuR4R SR-HsꡰԘT VmEþrgdђQ\F靖HzARq7QWթ |Dg+NI< 7} WWvnc8B/!_Ȅ eZXḟ3;hg˫.ON&ϙn _v*i]E) Hde,>l/$ a /~#1,݆ Պ L$baLYp~A!7uC kV$ۃRa??OPXpӌR$ Sƀqr rna}#d "9"9IiwSq;w5NYţ)>uG&B[mX#˩.TT z ,w+5U0 :kxOq)w@FW*7Qߪډd7Ba~qѽ4zX8jr SrF',SGǯK'o*.OhvP̻DVU9ZKa[Ϥᨲ/$'5蒞6Ѭ5LOMgafX)YzYR X25uz&MwWkEb ۉEA~<@8^4fAXNJ/jQ^[d8F y,߫*.uΤ/nT+3(F: ^;T]#1-ęlӤX3@ qq8 !Te48][9g2-AKxF\G8nm-''MR @An 7 ɹMu,( .V+H-"d7oVN+DxXѲkE*K/Ԋ{xM멏 z:s5 cfBr.=}=N#DRlRl*^+,(*|ꂈʏ7k sH+xBc vV&>Pyg~OױVhwLq_CW^y,%,*b~qQR{m>qϻP/U/uRԎ%\R)_N}fᙰ*YKzaLh +R]3ߖqBpzŜ5}f:/K.Rg DBN.?{2*&6e,3馳[T.uFR(ĕ uJYR3h>s1,='}wy3ӘU%Mf0s%ibBAk_9 5-/:]c#Snoы??\c^aCN)?Hʓ.Pj۩gqݧDsObdri@f4 qߺgūE?qmN7|R{ jyuC2J)t5iUT wW)q'I%EYW22wZZVqӢE)҉;ErI?7^{aoR.GR2xgd+/xcس⨏t}Uw,t8"5l:U Q VEVUBw5Oi!e~2B70U%> zu8@ih.fS6D:~ PA[̕g|x5E#딁 &΃ms6kpjhi:`.vqzZeM1d$[S RE`f:Swl@SK_l@YݝpO+W}91"k9({"-6ǣ9qىΦb($$G Ɠ{ِ0 ;O卷Pؖl_5ϋn!ZkˍYjSe[rfAIdldQB]oZ,j8(_g"5,$8=ōX"wB#H)_(roª]6"&TS<?(hSyݭЍxat)*1kackrB( ƪʰcMn("J;ܞ}v,g)MD̡_c"G]pAG;Y~} >u#`=`pzȺX:pRƳĤ vJWt(I[^~KS jt~s٣BI}1<50E 2c IbE-VCGK d1ۉh’ m0NU wRy[UAf.G3ҧ!l!]2"ٜeQѧihm`Mڲ2c7K^l`lC) 2Nw%9U ZN=a){m#n 강}!pA>k ?Lʏs#kS}l Ʒf(E*wx2\SPۜlq6Ҷ@$q_Ϥ2I7Vw<}|q^W1)['ChA ^0ԸtkdmƌP_Kj4tw*mRMR2AnUlӤzM \>hǛ}}#iʫ>fK4 d>εdʹDaVi}Eb6L~HW{K7dHz_w8˨xzCCrX\7Xp1P{"?.m)J1UՋKQ&MAs38iq`?X噇.URZW m*E4@R#*9oIg!H=L|0`(ɜbK:/kMNKS`(VSl ֆAV_ϞVf}>wN|P Vo0wӖ&kq,M8T'K\舉o\T,y!zOo&tqO%A/"1QOUW?>;oaQ)'كͦt[¹I 3Whf]tnfyQT1у_{Gz_Knv~%mw.aA1YH!wPO-u3zby`ۯYFȽ{'}<DZGlIga|nbCZo@%O)9 XBz\A)e:h) St0֒k;RPfU=p2 E\9*Xla7 L%:;rWwI8{!97R 32ihMtueh2XBag!3s ŜhD-w@=!WRn*:'Kv?aEZzr)uwG~&1&}/ aƺv!"?ɋZ7ߧ O@1kw5L"oYk, -FAJЯC#O0 dMr ǹOqa$l~y|؁H%+RwC㒆D;8E=mF-!4mOZ/bTo9 ZɩmutJ!bтBQ%UR֞M0cDZxA>kVƦ~U4h\œMf:DiPN{j\qSa6cθ&ag;_ DrO`4t IJnsC/6ʩX#ӉR>Mߚ & L]),{cTFBw@U|EW;kd46쐑7^`iu7 >]efC:$BЌTPZ(E[oLjٹp| kqUE"vQLٛNW#BGdOњ|+T…O(f<&ÉGiSA\IDŽGnFrR~[%'StFKAx#1R dXŸD,WV}IӘVCoϩo@zkӻ #)paRceMsf0yzUb RUD Ene&z :%:&֏)N ׵.ipnٽ@56DFݏ*z٘>؄dG{bǴޞpѹw+!I P =Z S\=00u'ξ#m|p}Q3Vg;h2N;|YXsET.MH2k%㌲o=ګ3J]Y0Pck΢0)}bJ^HC⮃NIS$"Yܢ#~+#r.2m0ӾG9?zΆMpZ a.&(]|REf zMTSOK,Ҋs9E .ㆿ@p|2f2bMEcCw*$A2pNv6S֨O(l40x 9lp3xdqg#>z`AESx7ys[T%b.@bP `:CA}Nq OơZLxIU2^7#|ɼ{!HPXF g# ;tE5Dp.C}ٙD;aEnV Wujhdj+EeQ:g5Z?lOn뛲br o2W^FgHjPG*.&J&חE߯ r.~դK?-X?"u9!\*a/;CyRj|9,& DcR/H4D!.}x@"`?cpqsQXOMއpzR?f.}']pE1 А8THonnaafw|{A5Qpf>慤@lu;/ x/9x$h + ]`xgjC`08͹!3T]H3}p8kDy`^jǺٗMB j8 =K~y+x&͡*!C3Z-M֡ݙB&iж; ȿcSd==|␣V9.\b BiASꩧQd^0{"7vE "G("l՜B ofہu2Iq 6ZyynLIqS̱3J . mtMikcLF?zb]Lߗ\,?lUYM99O6Iod;, |pLs2[iߟro.d7UHAbMD+q7z&g۹9ߙ4{I?v~." BɣU=5Pu@mdO⎨]͵-ơ1^jvHTRPMh8@ 靃{ )`ML&Xщwk.%mG%Gi:}#xXm{S'bi>(A=Bd2Za劧Y7F-sS,z'^h*{= Ȥ4vtP|gmabxjv:ōtH"3N 3OdoZ>ƽ8b4u"B%dsLiST!Q2V>7~VV}ʠEQXam^pn rl$t JֲP_K-_yPSF-J\v<Q | ^t v|Y⭬ yXw|Mcjj E>6KLϥx8;{6ted \mbKGHO+d {(}ڌ̋9D\O ۟ ͛㮁 f})9Z.odX>3shew%Mhl\.&.ianuU*7VU=Tu)O^Dk;-#,+t(F|>٤CSK*2+E߱^-,09 !Sp͏+&0:{JQLo Io Qh1x&w5uD% "u3)8^A`߼f?'r!<I"`Y/D&XJ.ڬG[B)+9B,2uPF)y$s RIWho)y\|/J"یs`[f7s77y>x(S)+ |d%:&a@U'E,&ٍJ_ݽfs %;?M)J **5k7B (򃎪[WMhN8)8ۃѽ1B8I r5M\9X.ڙT$t͗ 2(Bj0H#* 'f!7 |f~:\p^kx%>ئU,}B `&C ^UJ$\y .#k/2(愲)&0 bůj!uYݨ]͘H"r[MDzl50nm<|YOsP([/vudmea^ȟM:ʥQZPPx|`Q ʩ\׼HoXQȥF|3D @Gx=7s&.Ujvo nQOL\[3́A&L6fBFHAd9ހn@tYps^/Ň)~"]\XAS‚sTm_JU$}NxSZ;1y"^EbRZE \*w=)/1B`̴2O そfgi@L`5|kt{I^}hig'|uoZ5'Rp % \O8",`">kP=m N+6wf(~B#6[%`,ږ5A6:K<eF-,/%|5S|yMB[#Ytk҇[fڣC?rn鴙WɬYbJFW@@3M(Y(ʦ"M&;[ :OAa'Q+J~~|" e1=vL R>wVp~,IM$ +dO<-ȟgI(a1R9} jxL"oM-CX3ޏ]|[)J.lmj HitTq2?}\>9wPPߜTBOwZݗU˲^ N]y#mT XY8;Fe/hX۝V==-3 ݰN˹0}pŶY=pR:ʧPNW]؃8R{\RXu#Sˡas4̀;^TdMjua$*<., P3`#K!q/?y_]FwSoS.ښ`; <{wNd`B`e15i -nJ3L6=;pEL9Eb&x!7ٍ̓"~:R)YW\Gko[zGAU}-,>)v@2jhJƅԨ+9FmS^r!dOq.Xa_[s4W@s,dx>34[L”-c7UF+x3o_ "1EcUQ#i"/s&Wj8,.m!R|vo4q_r G.?}s ̵4 1͒&X:W@\0a4`'ql/⦤;[A-q~*$[m*088 q|fFPS+Dyz IPM1QpGpЧ3g|hQl|4kj 7EOL~J ͑L/C"uuy> ߦъ^n_ض6k$r*,h:ta-2t_E[%EX16咞LGO)%8LOulYJSsaBc@yMheIfmz (t`!pCEPWܦ|% bMkaPCȈ\WfYOBF:@ϖ=(j91go;a? WS#chgM\?]O\3c/8-աOS`Q)Ȫ3uc֐]lHm{@p(7]ͩ.dX0M{غ'gW'o4܉Ų=z ?MxGLskQBxN :dl[pkv?ImTe~ 6wreOEϴoe,Ve<(ɮ'7ĥ"Sjɟ~'.%/2uLviVo=s $pxZ4 C/nwަ*홧8Xw8B6h}CIX# <w6!E1Sa/_XRUϽOxf1_P%~-g{n q|O:_ujS- f_k~avF}pvEX!'f\i1Љwm7zQFV@i pgj$q!il}]F2 xД%DInO"_vFg'` F e94$VkO 5X RT@ Dì; H۫XJ]`l,&nyV5+&2Ĥomzfߠ,HK!? 26Q ?ђUQ\jh{Law_r !3j{~w*@o#:y&`iy4--\IgE!ˌ׬Xa>i;F9?qZՁqr|i/~wA~gyq8M].䘬|]oWO *#JXb3z;I|Su ҆ ;õ f *<=5:|S.HBd1]I6".<]&fɖQE]xw*)Np0:,ĵ5Azc(lULǿ|RV޸YjBc} _2W6jXG"[dM$KbRgC!@ꉋc/ màt_&gGӻ̓0#QVܱQ:"`__\{wƮqA^4}2{m p9acٰ\T)~ęj#BRovPQT2gx!3E|OBۯx!+G?̓TƊsLZ$8p6ij׋|*^\L-lR7#{)z|ϑ ݕYݮ’VGQ,LXu7qÆ+Ѓ هzTNWQ'C\Z4& )i1e"]|/s5Uz^|Q`5.?y;R xyDCcZ +Z !r[l鎂7[7#ï8!ONk$i̇ Gpn MF%mK@(qP1mBvMݴՈ;t%_L~mv/dԣc~#%0=[bKJ\, B++y@aV;Eɔ tBU5f1MoQ *?\Oymy!UAÖ!+mG{t,?0p2ΜQFdg۶`Fɧ ԩ1 QG[Y`7䙶~MboU1nU(G] MXWwX:m Q"D&='NmѫI0tslݜ%(EJ&kc`d}>lzS@`(t8 |٬oo c #_K"t%:%͉yOUXX1Yi\:4b55,k \[L $^H?f?vPDP=D3\`=h0Aw$f-س7)<Քݪӭy18ebv1NKO 3w;7,{P;\ 䵿PZi၁eO뫞395E1f]bX:Qw)OwjV=g'=U ~gXQnj?}DCJD[ر6{zJ* 4:#dX@Bǚ.0βUpƭZ+ jGDsu+S>.; d*nV]v.j~pC}Iue p[K))oA^$Nھ,15w _љ^?,+`=MU'np['_ְMFvD{-plEZ49-C4bˑ;d@cUzQD%;4Qe[s`sjK5`L`*'M1TE"UN]`=|WuL˰p(|( m#( ,6Vl%6Ly\ U+zأ4#~ыs=Ƈ:ܑ9=rdh.la0w)KA?ٴJ>.S㵮 4aW@)rІ j`kVd /\/ x!3|E+ Yii!MVY4EFQ8э /[-%5v.I`UA\[ĒӉA _]7*c o zҏ'%L4 <ԐE,nE?NΨԆ =n si I;,<ڲDnk `}\I?1dHj94$@LN |qLrىgxKQ){l#?J塂pǜ G F3r0S.OuȀKn`GkEPb K"?3 stzv pR<냐]yh/ /_I{>A&6BD@ $*! ]fe=zzzʪs#P=AcXYAL 64آv:h^GY_+%Y;t@|w$>oS+r-84t~HMX~osJmDgByxRzmp[@pqor΅h$ICeyy4USb! [Q1%KČ`GE6-'?LB`0Qn%(5;A>J^ _S z:0"w0hX HX__7ttbyGbP(Qk[A8zBZMʎlUe56mh2ݑr2ag5:eޣ4I:&zbOݾTQud9~t3Q+N(OʃZ=vC.Emsj(VXd5|eұWF NfLBԦǢ\̠g֘c$ѓ(Qvv3 z"=Z oP NNIHz6CW-hl=9Vc:С(js~o2e&N3`:_Pxvm|Q+UUD״nm|kXA;Nl k@Y_wrl "swMZ=4a-a%>]ao!KN$u dWf<9V;Wt' hh6F\^<<>NX=ں}yY,&X'na%[w9-f!69G3EB 8Db%7/cf Vej2P36?{sy^_p6rx| fHPA9rfe YVIK@hDbu(/=zyg42J/ѽCٸ0'^_yQ>LOluM*stR_R O`/ݫh2-5T^pA$p){V)Ǚ{i jF:&nk#OnML*̴]: b+&q U5)׎}Mg@b(4Z*Ӧcb9Mdh~K{1_5H'HsF$۳L65\ZAngnL5ZMHy/*m)O>|"B^^1R`F2ݷ[Iz*vTQ;v1Ɗ*BT!YャKUvYHOqJ ׅbd8-7{Du#C"]s 5eٿkB{ɫ߉u@E s_wN m8*kSD&+Pd1_E%`u:%!@kϛ(8aۤ t2!F|?kl@CO;,*R$fzfnOύa^tYD4z%;TbzG^e=BAmb$߰Z\FxLhE@ٍG@}&f~Nwt "m!@ZLU zo~Q4`YEsxʒ?( ԫņv  cdbyൄli*;"Q,|q'h(vV(} MF٤@1z_C|L%/.q癑|WW/ALs9b޴}Suӌ`fi}ͪ$.qsGlznt JDH@0Nosv>yz[Շftd)6fhaf),8M-7C9Iʵ9CF)qͿ֔6/Tľ+]?V##ådx@{N2ѨC߉uein.\(6mzm,P$j\ψ렭L,)cҁ{9I>}+<~5d1qχ`&-'s-)!2'Nc+Ru7@/RO NxV{!V;$ϿZ#j:)@Q#3pN?"b "JPԈbW.6D]jmqK*>Ff&RiZ`"X-n/{ȧw>}OTQi݌h7֙hɽ v8EKyо:.\5~3ҪʗzD]sT蘴B͉T8,18wNA܌(=3tS%C-&M҈B5tbf]tu/~g(N}ЖNi~?vld83(\C)W??fLJ"F[7_O`xh[U66WTBmcpK|@~3"*1IȞt*;9!03]4ȼw5NC]Xf%SZ*ڕQK=!5RsIFW*-E cS{|N>ܼ&i3U kDB#T ӻAX:vx6 Y~rEFacLQ9H@kAbdN8/?}xR>r#tQrDhD$HH B[ 2* z6/OLtG:F˅SpXE@1uI ur53!N XaCݜ`"k,O^زcs^P7!V4$A li@O ^YaG ~[ AmͲfXB4SR̫/=%Nd: +rgO'{=ާVzb%5^(Ns#ϯP]ބ O5Ӧɛvl ,qX`f zu^{AL鼊OL֜tWŇxɀZƱNm*]ϱ6^izd5  ; j]Ekz0Aɗ{C-UWKqi4T]9_1ֺexVz+CGֿ5w`Q^& X-eƺ|aSr,rݦgVq|^/"sa <Vۙh:rvytrw{q'W= 8'Em`4N>iFr;{ zڑj褂o'sM:B~UEx>lMf OZj8Fw^S_ieq̼[}S :藹OYIPYp9+e)#X\c*@U#3cCܤn.rÄ^0? ~?" T;58A-^sR udN]_tV 9D߰X-Fl9gQl Xa3jfPn}_lE((NRtx epz`)<P5'BuX#j ʗemGO~wWS#>ܴ(mcJ:`5L[\7kw?h0Ǣh ӯ币R%7׍ăo/!ݮz9oEY1U5+Zoƈ@wϏq7~xy-CEZN* e48xS%mh9@?.P   BvToR6Z{ђޭ %ZƏn{M{г3~;:bG|!UkNߦ2CӀLuh%~Nj'vYZ.Y\/s+cs >E@Cx[Rrʸ؍ oOP2N& B9oD}I IsT%La&):檫SjܥnW{vf́qp~m'aa{“m,La$wa}R&WӰhKw1u^_mkҎ\TQHOF#sܶu( Rk]!'GnDJZx:s箿.@+v*wPb4iSt̺P?.[6Vl? @щ]vb^ *R MBEٸ"wrB:ulku&.AfTzNR:[:ro9jEyyB 數׆R=g]N,X;Jm˺c&&)D]2+3qGN\[&a &pf1 h|pG 3^ӵQ-sF:`|KK2(S ܢ'Nߙh m%5( eF+p1?K~Ex~y@"u8HM+b#/+K¿k:&[颒+7Ȕ&h0vYƻW,~;[WqnL"~UʣuQy>="O7OUBD^a(?'f!-䄭iPJa-fN^c}BtVӃ4ۑZ/#0O#BHj`? =R ]2\>d')Y9#_X]v,k2"i|!xȖ;I겴ά17s>Ӻ\ Mj߀>Qbd ]ө7UN&ok6?筘GGw˼ w`9cQR>ɮ6U`NRM\Y& ?N18=X&J~(hxo=J ;n9vEN^&_fɾv ǖKw ,7T6V^ q$27#Ru0$R4<'0X]ll%*RNT)zA̩{e"*ť5Os{Dy2eժfG EnAG'_ BlY.q]LC]߸ck @ejdΨ[jYwx!z;gY8- kwʢ= & ZTH۵dpYdm\*ư|^1sfÔز=i>D8[-Vy5YM bC@z_x!6 ̗9~@{-[#|G}R`Ow/0@ Cl9kMAPоRSq`'mc+}~fJP2,eLtƥC;f@%1\@'SARgP{'o? ; _|x>);5oO+۩һie'(j p YQvh&ZFPk($L=-B4esiFGVvg, I_ĵD_A6v~E-V"e_j-LѰ͖{yƺq-3[_QP/_AR_e@wnEMy?yo2px@H6|=fq23;wun`j7=b} 졻X(|1ƚp{Q1.cLY?<-@8IɫWYY=c6ͅmY+φzFčKGnAb챴 $19tN @i5e_Z@VRFBՃQyzWŕ&*møy Ĵ)q͛c^Dk%*=41VB&o4%}w%cpGYF#41[!goI/0dN6xu33;/͍Y7 Cڷ!ȫ_s  I>6{DG=z  w-c+nل((hɋܮE~ʴbqWlOMHR,cgb7+Mn-{`2Ƽ9DQdn}c$bF[蘑,ӛc>x֣@AHYUmsm%1#G~3!2L*QʍAm&8®<#\~k:_37^;йEh?! y'; zS/:^v>Q٩e3:e#y 8M܏.[Y1heE}u+`&m>1ie&6JgsyK֜^ DP,DuȉsRY7GQ'El MBn _q@+G޵P.)ƢxfzbBf+nr Tl \3읷jѱsC^Fʍ%Ar{?|~|s7WTsc3`Vŋ1/+ }c?S{ͯ|Τ@N"b~":evc1x;䫪"5';„ _Ȇw}m @ץC xhfJT6 =,~&dikǔ]q/M ]oPcud|$ mm#3,ǪIf zu_frT${X˕c}icBI~uLkAڱ&5c̋1-iڍnATrVo wy{ط[mr4p我P6@Rw2q?oi}l5yB"7%![= fዺ~c6*GY^ʸ-<-LSwquS҂ݑ#{\?#$QxQL t0vծ8 v3[y K7!߂knNR7:ƟBLB `,܆4 oݷo*:yiˢ̲iJ\V{U,i;.;h<@Fo~kPQ{0Q18hyϥ}SCZLV@,1n9-`k$G%Ovȶ|Q8G8l+T.=bq,Jj}n k/Ѽ7䟧Lʣw}JK )u3{d?e60cyΈ&IWZ|R&z_CeƲ ,ű"Q&cvqѢrG;8\ &#U3<[О)IÝZpaėC)巷:-[co%+ά%czɢK'QeBK \XiA3,5hGۃFScNLL# ]2MU1[M-u+YOٴZz"Ndmu_*]m`*Ž L:x3Ap gwnԾ7#5}g61? &zڙ>dƫ{Hdb5W]]{V dˮD^ًQp n<?f*~bFp#6Ѣ~)oVZKk8 89XT< Kw6ޠք1/_7|td,8;υ0 H_züwS_>D UT[mW~=猤G>Q<0+ ۸PLOu"lR>F\o}y8 7ִİp MPUb5}s3~`z :˰bwZkV2JoA (Bjun f0GUd_RoaUk&%B6b>FRG F(72М20l jVW0Ez`ΔV;㕩= lFANp&%r=>dq愨DV"F Ͼa,|]6xЇǹOi^gp̧`=HQ\ax^e?dXi:S *=YmHE5t-4NhI(wVYSfRؔ0+|.fuFE} =@e)]5'us \USd\j%s&'EW RKvj5!602\Oi=e:/8LP磻uAR 1Wc>vo*DĈϻT7ǻYM-@;K%h.Knq6jͦ t+/tksm3 V(͵}'Bgj=bDSogzNm$o]ACL!oԦ964CW_KO oLab-;ݖ<۲;;'\PpnU#` #ÉRK\1`Xx#5*^Kyzkc\ǀuA'>U&8X .m*|~ӛ ))Ǯn( ;QHqLɺyr~H[JM /kˏS't:DxkWՠx-`5ܛ;~fbq~iB%9:T\ĵ}bnZFHRkC&uc!|a(Eg2B={6G~3X9:0bM5So͎@`-EHaq}ԧD*uɥ(\/aP+unԥa"]`8\ fΆ7 LXg>L)uZX6-Q*CXNwߊѺໃM,oSRժʅjL<Ҥ}(cXrP.ĐN4B~qg Q6wnBwߘ8uasw1J$%=[lh4?ꝦvTyR ;7WX돽ܴ7<o2; {<OGV83u#d :MߑrM"V-eUaQRqx.lU#N S tX^S3jSHZ*KiXz*݆#?Rg\dt Iʽ0@D1%H@u׬@®B"y<1SEfizLDZ|@?6UA$H:<7j@BKy8?EU1;#A j0%QթDFlcIl)H0b{=_^};!ѕú(X[*sG]|M$;jOlWKW4/7zh%,K9NofB+j01bdjLaTer*67)!vp6!o.Zhy~!{#bϷPTP("K7l}%\"XyT=2Ip6LԥMLGM=nTť)Ց3gР0Kүr=_GZu.~ȤuBhf42'`nI-1AÙdӍ`t[}IĪ8E* $ oiΘ r#(<}4AN>\-\{9 wR`cF(`;UA[L=/o1ovI9'Uw)vbċ3+yQʘ2R ,%=;{v҂pe!k®;Po61~.3bꆌ궺B}(7ҾkF!!}EKoeYt$aR}b(DCU=B^"^iܾ+sk$Y!2--$Oh6ƳoMFU3yD?hڬSqXUȗ#.x8B݌gMS`/ {^a:Ż+xGi׬7('*BZgN9/7qNGꄫ`B@N{VP_Kۭ 0t,?C]ˀZG1yɞaC%ڢ4 ;L` )b7_!MKe,sGZ0bX&uҝ4_@mo*P%i&bFP-h' 0HR^媟Tz\Ժ VNH*9v,w覦 ЖT(4% gȖEz`+XcwLnB|u.hZ5^Ѵ>+6֛ӗҠz/SP\43!HShs,tDn Rq }FeoYנ +tGcBKN [wOF.2." DB;pҕGdλ5 9xɽ_Q$Iyo>"KK 裡/6HƇGG)<Ju%H8ry0.{Z&d{ l?L]~r/awzX~-*ib:w&{ gEו"}C |YChN٥mz粆0iD59‰3)Xy+ t' u*tO#kh,.ׅ2u~ ,**IcHGm=M>Uʐ:(1X9s>v|j33׮wx%ʕКJԖϢtwoTͦwݐ.F;dF6Iu',G1-yfRb~ Sy(rŔ-ӔwjÙ:`m!Zq" act͆y)LJɋ7XkI/ NG% 4czoݒPXrjzd_ʦH>A8`,Gݚ8÷m"3s*phI{:p',|Ӭ-@}5cc3V:Ņ ӟ9f_yq(M`v?Vo00`1,6ũaK> oIefƽ)_:q_M^:cbiDz3ͯuz{M}D7<'Tz^ܧb&灢w]}$Kc-kXReŖT"vZR p0l/) JSIJ 4sprWp*W] w+/Q$qzc9􋢨;O1$C_=}Jj$\Fz,.7 WCL=Zx'k (hv;ƃj;0ܞwU3*["hy.lh<<sOфkl~a<_=^ݭů7@-ˈ$ @X8=֯BkߧC8~²=A2:;ޝ\V-. -`ЩɝUwُfU1Fxӗ3hIy rr}Gg{1r+wE_v}tm](:-vd>'B(k@6&1Gw=Zji2Y+XX~q_V] 3jtiR훊Q" hI–:YpJv Wsorma(J^[+.܂memQllP@um )޿4O7E)i54IDPds)fx|ދ4 $*j倶aTۓɗ2Gܕ]96'\2OkNMBn+`4HEzC.93{D-yD-~ #.ehF2@ECEC#jh)o7\1ӯ`ˣOt)/EQV)Tɳ^-_7`:{A-f{_Z9@=3ՙBť;}S$Z ٖ"MvULF!Pp K3/tYhDj7[d`rp-RI+M.yi=ᘲ0F˔ #~&+Uѡ,_AbDہ]CQV16h g8QIdR2Gi{Fk35UQ$X}3cN"zc+#Jv}ǖ9GXn-Կ̈ԠVA/,IZ>H;S "DP Ѭl͞OWn%!o&O9$ǹs-hW8*''sOCHYn" .JQM8W} dS߸Ӝ!iij,y7Li(n1+@UDX%\]\*V==}f8Vسͧ-͊^$VȐ6B#16gxʲAHO~`DK+,8f_:M@5:yt,W89v?ZمhDEAWVVxOyC"?F0w?|{;lmIMx)+VxhMyz:AMY\k$!Ͼ: vXWiQ{`rH;R|-$i;0/ >08$5*ˋ ]dOxU~:Z|af?M KD?3b[Y+vTPX蠞'1*Gi[˧IZx]}!΅ lyhA2KLԚx*&tw%nr QCesjIP MP%tƢ#Ʌ#Î WыxmDNj35%$_ܿĔtPi/#n2JH EY}}@ EkAO߂A2 _7sħ<,]rJD/ӥĥoۋ 74ܰ .,Ihb7.CG%-QE3MtؤPj wHVN~6r6{YTqv&RZ/EOdL\yM%fa"Wa&h5Z8" .?T.(H^@Z֔Ip&Qr.V̱@V[v~(/U*eG"VXc<͵;Qǥ efЅ/%o2-x[k€eg 9nj嶗>;PqOߩթ]^k&p]`?8|B:T@$ 6*~ehFnTфA7*ӒKTK-`cIż1]i(#K[&r~j(Qbѭ5FA HB&O yϿ4eNiuZ$s4)%J.F3VzN?g'v5vjlDk m=al>+3N1Kbg;j{"VY5nw]"͚KP[DtFD,c0n(([#BuD46װW0t&}9Ďc6ҕdcagMK\e\Uq?zУp6쯨nE|o,q^C2@k^^QLKѐ]*Ǟ rl[7Kr'J'Si|()T"A80ܻûb$!"N&вAJWnKR(sl!r|h!#@;WE|v;#}L2zw2{5&@9*8ٚWp:y1 ;*twd/<:Ke[A1D{ 0@҃[іRxMC"Ĭ'!5c)Kwre߿V;⡿Cܐhq36G(̣ 9D83,!x5hY(6 *6)Q3V5(텲.}İh9uݜF, VJgn)NDz%S ,*?FNYi1`Ei69@%^,l,1aEeoĢ.tgyq22]))vIAK׸v;br>;p--s$Ye&!\_+3Dry-bG&9G>bIl՞$8m2{٩ɩcƅ9rJps?`Χi!C;cۻ\+x*j`Z|35+G{OR4|6a4&D QȁU%n3:cHR"/$wٞm}'o+M V5qL`o~>Wesܺ>pSJ_+EԠC*jsjr.] y$R5x7|DɌ~i鱎2wM:K5*iYn1V'^lF .6UijPWvGɉ6Dwam~sa~|Q:&Hj_q`"xvX[9\c|(q(<!8osR$KZ,\$jv]ã}Sav:gp(ݱ 5 TDbGZ Цz2bC9eC(%y] 2/"j =/\,pxEџD.| e|~ Q\] `]GA7Ƕ{o* i]q_ďWTЖB :DC- 3gOw|ћ\JI %,ǧIj 'MgrYn-a b O!eߩ?x8G N gl=h A!dpb∮ '~4픟iWeIGzz{"5۱b?oC_];q귄]`ܕ&VЉҜX1GRW*b۲ދ,y6PUżg٥],-1^.CԜG̲4uQaMߌ`U[86 5ݵ;"w1Ǵފ'"%8Y#_ |`T_xڌuuNӯ$w!6> eYϼp^3flaCc!ow}VV"&@P'(Rtmx0d G!&}i)nT\}ʓ m!\a8ݲ6wWKl42.@"h*"+;.-7 e*u% 'u46`BTi?) U>pO}{Eأ\CzMEo^o@ba#|4R"g30)uEodF#8P0N{ V px>ڢg3M-Ke\7{Lۣ"$ P{9{ vͣ ld-BNa\L{jAH!Lrt뭹Co G*^!dtM? r7Onaq\vva!?L1g'g*ʫI5$ӯqC Uor%OآjteN؞us 9 0̥B&!i[|Bm_[ ypy`R7;e㠴Lqj[El?) BA\p eme@rOVoA@6:aC^ܙia)gIW6@u( xtioYZnƧz`DU)RĦV\~abeHH*NW1|^Iߩ7ž2##)D2 Y}ɎI%߉Ԍ`qp$6Ւ\wh?kO=yNB Zk& 5X)nO6>~{/>)^_$/Fy}ܢe, [XiP[^5MeU[zK (i;I\XgvýTGm $@InAAkg񔙬X=Ɂ`GU xj|zd Qp ֓]}xlOct3s]#`D=dqN>2FZHI8y|'R2f ?O:m=l9ɯj\P4%o'H.TAQxKuӡ[R):+T{-S8a'w!5NVRXG޻0T`Q]+@ Lj%OK}l ֐Z<-愯Mwgm\)R ^klI@3pXNCoN=UUWNrT!\ʸO AZupĊfߐOR1RO+p'EXL8WOtٷ.ПAn(_/7B 3Kp4wmwm(4SM{/Ld`$~tWbF]wƫFRmU3@4*f@tsէ`pگ!_ I')M!Qa%l,UbA隣,p̂ϵGp7| >ڋ=dRz-BhYdžRAR pX=~h@Q/]~Pʥq<`N6N }^ԙ{EFI,ϭ8m ғl3%&k_ˋ&sJ}13vۆ8ǍKaGkgOZ?0LЩ1neqkkꁌ(@jșIȻ/vd@=I0>آ'cqcRrGnįϩPƊ%42Ӊ5OU[[=5W%L֪M\X65u o*I'WQV,K\a2 }f`b$ڬAYh4Z= WMi0&gQA\!-=3xWp_Z{XK<ےNLd~4S1fk: Ie^JYq VXxE5I8E6RM `l]7@|H{7嫓0"U|rmэ2Ħ{UŒt%;@_/30&<.ECcqsrcaTiZI+;.;`HKpḑuhf¡W%ɃpN7zCsdҘ|,d@wa@*?Olϓj]"?n,[uuem`x V9aI4*2 +B9 tb,,Uqʟ)T\NXVgm9"F%oSfTw|@śCOi mG"F lIf%%%9{lh0B~6!!AjJWl uCf\iKx]n":Vp:E:k;2<zadq\PU 1Tj`&ۜYGvǮJ_`f''WktNJ F?sz(68@<ɸG螦^m+@o*OJX k@v#lYꊾz85q#TtU®pmRX~8PUӺTT^}յ$2MO 0%9F]δAA?*|3Bޝm/X,Ӊ R>&R^8sqRuaκ`f*abrWnϑu} ui9wuU$ 03w5ڤ jeh~K6+FT%CXYF _t9ʘ6' *}U@{fl?iz 1 }0{y\5wPS YPnm-VX"l-Q"2 5zh n|BjLIEK~XB*uHoxDHa sjx\_IUlP :h?8%XNuGpxQ^?.{r..$:rH6S<5<} KTaQW}F8uLTXjZWFx2I-hs)G9lk>^ nOaU N˭MzM?l]< %tl&!əBs٬}paGKק;u%b0WcdqHZ99[vʣ! PHo3{A`G8*

      +e"[+cC.wYI؆]7T;I \*ΩۻPK(UJC^YQp'/xE^L):x0!Zd jy S}.[aGxiC6X+Q`]X ~,5 Zj6P1~vLkzXv"ṪϜ^5(5S\[lؼ:`<:,4c15Cĥ 3HUTtl1vevNSPLkA n6+Sӓn/|јЛVSDw-CRbF{;Ғzڋ|rM_׌:%uٝ[RUQ|ƕ\e'ؚA >AgH$Ya{6aі^64ٽ.^ƞ[ݵ }Eo3uyUsΦ]l1ckN]M7YbAC](3rL" 0|ՉJx@D9s18'6MIU_nKzˊ_]ÿk^#=g˨.6"k%񶕨8ԉKsNWQ=+Go ;CzDp2py?DƸaq\̫wEO#Ŏ0*4~V24{ցI7/|WI~;O`t(  #rGħID;>^ Ts_ rPfj=;uRI1q QmD@G*=UJQnn"ً K>1TYY!-E@ C|-)b Z~{<¾7FRT b@sv+6)_ӪYJC+cЍ&tGCR"#;&7+0]Z~R*ǃ^uayf,#ئΠhs "SU9{N+,0ho`ȘIHKh;Rc>Gh-\W@S-F>.$V)\uXzT4Y|a5]Sf;-R! ̨;˱4J+ϴ8k|Ɉ^\9 #}gТfxb$S- +'[gf4h7 o9T;bp(/.u;5BI4 1|}c!xy\ċQ, nYexd͑lK^iTWaq J+:c f&]SIj\&X}Rq@'f竄j^5̅/+Ƈm'cłmue R_&J,۾RlBuoh|J><'C٭FO5y͵kzBr\?K}EZt]~?dS*N fq,Ntr!Wa"Yi WFcEϵol95QɢӤ~bf~{ X_M#+ 9ٿ>%ow'Z |:,X>d&hS3X|[QXг9=S5T%)W`fXAued\fY<3QlMHLg5I|ol+8@rԣ<6';V]rU@!)_̳LVHh_ֺ.z]Cxixλ+twFM0dXdIgX'w!hOmumW&wp1 Bos;GHfNҁ&"Oj?kCכ4TGS _?+vC9L{{@rE>!6V0$raOdH 5q4S6P'=lAt y֢TFH]Eɲ*)ms+ocG|xBS#L Xoqz s€3c!(X 2a| ^Q%goUHFC}2l3̇Pxm7Evd{`8X \躣ERn=Ӫf+67V=ңW妳4b٬4TV:r5C!uGY{ِIf߾!|qMSLftH"F?;\tA{K!TzoR{Ã۾1h̺JK᫸g/Eu*oĊX[iU \nb9# n9 [VMK Xu)\jn7Bcқ}-/g$-^Ex%9\#;F;\Nݯ]1 4}VͬsL&*\,BMSݙ ]IqN*3PrAUU\-"`.1kam.&6~g _jmA oL^^mV+;/ӫJ>%;滛貋!!XG g NİF9bW>V4Lk59n5]nښQ$6ي ߮U4JohE!UmՐޢm`6׌,lw񃲚G?s]C5 qAT`{Al(3B02![lyγݞYϿدQH1fGV]Xo_t^tq7KAdy6 EaAfGh61.#j-=[ '',)eYU N@NlnQ:[ ۨ;tib)x'e~$O>EDIupYnsڛjʣ9A= wg+jl3K0Eڏ!ׅ.p!Ū 4q3I'}ϐujv/ؘPLtWYcq=Y!/qATiu`ߍ;=bJs.Rң."g>5>59{d x(!X̵Aet~A0;AckaήΓ@O䁳vV (-9ޙ~Bo~Q0sbnDO`ۡaCX^KǑ'$CV? 6@"{PǗ%8ʓ4B `Erj'og )3q%Rj)?C1[gPxQLnqywnxOXZfsGsWLbJ3 A>}z v-nц{] pL{5=5`v V©>剚zX 撙',8xCEfe=cH.fk6iOS4i4!>'Ă cZR[[/nz|}ӭ2fν"|tnZTΥB93eVٔ&-QPlu=簰͛"nRH?wy0;/%XQ>*X'K[^ݞnxl|5hf`]M6__scDQ~O 7vz!%tT ٪6 %<^bv6 ޴|87>gokv`o?T ⰿHyTx/w yz,MB3;{ } !cK.E݃c] V0.5)gYp.s)ʵf2{qp-4F/{d|{j*=YX2QۣZX+..BџSI(F- *>HZα;(9¬:pJ{kmSa_NѵGקZ-rV[s uTOYcV0jN~Kste0_䎍HJj`( p1Bi]) O\;*͢'aYWԜ5t#&mN7.9*X7r-KeLNտnNx֌j wBe tD,RK3OA's7Zp-u*N -}-~6d -`QQ rrOl":nBځttNz^oF@"l^[Xl>yJR"o{\B(-c\_Z 1L0ۮmyN&Nl ;ZW(;>UL0`H*TOW ڽnܷ<2g 1Q*"mJ)j[x*0v @wC@ k @qj ؜E8f4^h )1~щ&u(n"ZS$o fG L7W?Us8QIJ "J$Mqל+wO {ȾRIᲇP>A^o|6/"df<^2[>]w-wR#n+E_#nfg0>NBEC:_mR*)3r9#%]&Db/ӳI<僚~׊drQ$]ך+iwErOD'R eIdjcRD‹fzH9pQIM&1'4 ]\ gi}L[c, arsϧn@ylv 4[=sI¿v'Y6_BkNa)ג:h / hįt@Ѻi$;I݂͆PuVDn4 *"d|V$om1 $-%U-5숥uz陼A-O w / Aڝ2ZR65myjzy@k] d ] ?)ɔв˩()G!P}u yN3<>Y+wЮY:=!I N)E6 GQ"<A[EDt:AqOHPZC+Yݐy}´,ST#CeT[:k.VB`b1N7xjrgrP W`Fe? o5Hh us#@DgAZf@2N\ண(P.@ n}BL;['v VMQWI  RARqJcqH@+tCkC]/wRĈ3I{ilXh?yݎT3W2ޓەФuyغiNzr0o+&H|@-n؟~N!@N5wE|PhõǙW[Pf.Q*2.bHbHLtw:`LE2@V#%-B/QhT¨eSQ jqF%6XXZ()h1/kGő|]FaOH<6GBžfQU|sGN_mO|[.قk:sGa~||9(kH򞦨I<9%Blr, K%?IXQvhH7sD_&F*亍IOæ|:l+vpoα[w= (.+uƟ”gEmD#Lvy8Y?)_WQ{5K '3lOA+2Z 6мrI :! 牞i׌# Ilu$WLؘ? T!\UEH)VD$u4g.XI\=Ef2=Z#+!r&F!䠚8AUHt qOm"i 'e1) >ZgNo$i #'Fi0wyYuL͓rEEzғ, ӛ ҍ3k7=$kr1:41};b-mfW lf~8u8`,2f(F b́zͫ( ޗ^ѭIq! 19ɶFĺk7_#WK䕻|#' 8hzr-lLn6M TJsI3@S: s~Y,݃?XF26 au=6 FI`tD+\7gkH*Aq,-&?xGmb]&Ƒ?T`GT˚K ]i!V.Gg[lO M|/&dzwoՙ[[z Qj 8l830rUƽCe%#V~x M!??MQB/ߺ꡶I6%id36grFۓip@fIPxɰ:T\Vw3|wP'tz ó[[-"[0j;_U͏EDW[˅/+eil1y?9EVfkdv_ >)|`g yb)"n_8God?QVjEGpm/% vO6" c rGz&u4<"rV08RUc*ԜlU\nKo$g#-C[Z_$[Q\tv?_E|󨾷X>3O\pN@i׶腣8[b_bڗsЦ9via[*^3Zkwfɩ+X:5UHJE`~Ac(LrW!&;2"zuӣYӹ76>SPX#=fw8wnN<Ĉ8fkۮCp3$4~Đ453?9Vؙ._*6D;;d-H{}ZHܛBj (*Sr)h EMIm+) D&("`bKBv`epA{ź`wR>6uZC8'w&2vcO^ ժ[)Zm ZyFL^׌OM5naAE@Ɋ:C?S,{8٭h/ޗҟ;pg#WPXѽgMJdjK23dk$]C>˻b)[{IA%قW"Q>N~[l҂ Q$2k׶u'g#%b+$[QPG:CŽ*1g%l b6o[әC-$qByR9]c I'θU!ݨyh1Te |n1HQ.],թgUG2 -=Sm I'L܂B@6_ BD!^:+5gA0A|KE+02ms8*_<ƁBF=1^7N zx;8vWhE)&T$gڟ3:[POxpc>Vk$T@nxi֍- ڜi&}=26L9<ɐĺúOm9 * yXڲO)&fg&Dؘ^o-NX|x 2ANĎ酬ds$,Q{P0xf߷Pfx3@y <ei2NG{SyJ KC%zns|k9O(#ӡTqu'9LF mcQ1v0D-]6qfNqG'_a{ @̈́ 5WR|.c/[(yV-STA0~Ca27 3qHxn]K H9龇0Vu9Ƒ<(mE_I ,QRc&ã /DvFKD,Dd9>xJI͑~ϰ4!LV1|@ׄ|qQvG X`ExO4! ݺ`J񝆐8uxaJ{n*i}3 kpfWUCݜWM;Q.i#{J gOq:be'4XLlWKbTnH,hOCc1bQp`+S329 A~lMhtTMY{ver{M,+m`'ϏmI?RZEY6`KNSek EXp"!Q%ȥ2OҘ:N3a%-&~B>ky e ]7e#$x%Γ/Θ_ 탹8?r[RmVw:O1M굒S8z9 ;s鹝O "č49ga HbEu*jݿvfK'YGǁ8Ӱ_:OE@%eu^ Syqq!g-ZN ]\?k0:٧]Z>fX\NN)p= B ,ӕӐE$Zx5<c8cr["lR"SC{U[\ʮ4ظ^&$7 I&`6FN۱~;nïkM:P7zeV⾪P9a*yf!A zk p]ICb8e tRJ:!U06RoZa5w!8uqa C_y KpDs&ܦw!(F6!%B_OQ+fgs)x^%)5ItIx3{eTxxIP_eTL-Ѻ/wn ]D\6ғmk̤;ғcƒ>˰DxykyȤp1 B%ʄli3Z_E1t2{'02tz8dmAv6:ɦ*ش\lHFl;HZZK(pdY7I;7=a$x*Vb V 4y.v.(RhԭqPxp ©,ٙO$t hzj|z(Y*DiNi#׵]H.*o*B7wY?Wm2/W~Q?r'*g*{(*UDع 48Z1xKio:=r(6o| [1rf ]f*72E-Jn=G[B_J}*ܐV"_td#_d:?Al4o971e uOvo-.7B_&BF8Is6G!ɵdm\hzI$xLxwaߠ*"O=ny[S\h#JŻVe:TY˫v9z@;Ư,lˎib~@T_h2k|iN._D^TK?O>k`]*; HY9P Í_{{_X7\SjU{h\b$!TsrRmGv@(`:a'p;Y ;;q5. RBe :D9JǪ? /3tGS>)9s;ÈV͈1ƹX-]Quԣwa4.NBV[ N» QJ&+s8p.T C*y}DyilG"rSbt0*=,L]RzOUM0O/ 3^x#W%,m`<y UIY?( xb@Žtp&$kp ܌'@|1Y"xQUutBЪӤ:ywkZ;2{8Q q~ʼ0?C!]x@iFRh)Ъ5m£e8D2~}uJN4GL}yuN^a jS!&$U?1Uː9qZu',[tՔ/Ur*a\qӔ<w3n˜UqNX } P<-:Rm\Z:yS )>F|l4^*wAѰw[&^/:`.MGBAsW\lsyB/^@WI5d=R!gSi:z,AO4q$9&3}-*6G$.bёJ#,yqp<~`) y5|`R7|9C|6wcq}S&)5* pz4ϳ)D8}E]̫臌A[l ]mFK'd֖ۜ@HuHVϖܾi9PaoIլ֍akr$ϲueX^eoؖ?3gbu#NQP* DD{+G&$9?DG :ГcHoz_zAڰE崅rnDڀfVΡ/eqǃaP?|ΐ.LD>|D\$`#!zNJ,jH^;~8>=yEHq#AngT+E,l)L\Xq I 9P-'r7%JERiPLwV{Hwnd~n<~!skĊOSWGE:$(=K!Y]b+K Rpp%u.\Fkb#!*vq ]h2c=̬s)1ȣJIT\rWXf yEkJ9^Sri+SM (ƿc3/<ĺ7 MTe&PۦThs +.K҉3ɜeE^hx=-iB,KS q<6o .6lt|DteO"#27N<0*& aU|sx4:QW{y "[uqws`M^ w-EPݾDD~YxƩ/LAt+oЩBEJw٬NSS781~jF0$`Yy^۶h RG[YX0M]0k]D AO./<6M 1?3;Z-JcSY1n3S.C|YQ= *%<[׃Wv+Ƴ5*N͓58 SP= qfVatPȊ#I8Йȷ?x]?CY u{fGRd/2d*eKdya ekbY8EePltʬ~BSn09Iύt_xEm'j; !{Mo mN D FL@5=$uEB A|Hs2vv3M3?խe}`htW޵K;ҝ"2'2CxqWъ|轞/@'@@7Aٻ4M1@h; ,76v$D_оwJļ'z03uFwex!:'1BΜl Sj1BP4ٟC$ٲ:egU&A'ѫpUAl&fU Z7K؁bwd%Jϵ8[u^ij]W=bj\=+}rǿw΢j/o3ˌ!IqXNLP2*CYYkK94g<{sj"rCDXI$P%1MJJ+[y"\a&ޞP};KŮV%Pt'CiQl]RlLEo9_ȁ% w.wG  /pEዪUg VP^dJܕ)&~W¶[ i"uú_umgY[0kg9>qENT9RjxJ!,67v8p1n)Mnn =!阿Me0/BR)pƬJLfW7COXGDкfȠ ¡2wc(M7bs<9/bvhUI+!7 g[Ws9e:xaѪ5a9 UMDJ8ࡴV9>I`|D#D^)ŭkR"U6ݕu)`ho[gQ}rBy|R~[̉KsS rms޻G-B?M};m vQa`T2:;蟶R#{inI>c; {a9դMܨ\DVo5 ߱ea-Cg.b?෩E.0Ŏ zY4;fâOH*Xq>)Ƭdnn&r`M؇E[0mh.@,d1DC/g6nG2z {>(k7'|5~t[(/͢ƅ0peV_rY$ \})YBuʨ3}V=ݩU9mWq!z8B+:zVJ 40&7l;?-9\>;$A\^㸼 5+t`nr!?Kmie *u3HV3CɄ)Dt#_!v:nfςLp7хh͹SNzˊL NkȆ':;֟XiXrH2LX~$p#IX\03rw-2qn\Wȸ֡[<2gY-Xx`pE041Lmf¦OWkчU"Jh%yc2QhkLD>5J駑C/H[, [q;Y#l1[&+]`1Hr:il:Gvv<;㶷tTAm"(A*-9F?{sžl_E,/ i4mMZ=ʍ4_h!ԉ 9$ez!!7qhR:al.sr^ V7ayw=i5"^6=B8O9TܘUק0N{Brk({Θ>-ɜQd̚b*A+ʰM?O%. Ϭ_IAeCjAȮw+1l4y/G5bzn[kϜyVD ˰3 * ĄCi Mxw%2FlVȻA:%DzTfep{ǯW:)WK?6-czWNUF9Da|7a즽=r DeNa@xuP<3[*$rG>bEiFM pDET FBms/~{/oX3_E&+\b0 zȴ48z=jHL+CI"Q=`M ?@s84[7qqoP7XS=˳BGӒbH5=D:q4Jr49TA:] ";}ޝø&Dլ4 HF4x.EmE,9ύU ]۞RXn>ٷg|Yxr2]-a&%IޫCkId.Y[P\]@C]zP6K⁰D'H=l:pJUUq׶|u$`X-4\q_=Z%⺛BnѠ2鐂Y{J>v٨ӇDi =YʽwY{=mxN1.hXQUNMo~ĻfϤ鲫>)B$pCy:HOʦw23hJʅ5ЖjŁ6є^h3.7FeØEjj'ޮ[CW/n/"||ܪb~4E+.a3kokΘK'y?ԑл ȿ6pzO"lw."X d6epRDy5\ҭ1f"h}/4d˙1X[A!6ݻ!A=ׄ<_ӢTpM}3˥4+$ᨁVyf\_|JPrhJV3oŨcLlı6@ʎ _ܑi.v S.u5Yn$NP0RGi<жWosKWj^sph/>۱> R nƸ;%#;oV` XJJfQL"DԷ7Y饥RԷ\vmN.,e|žK.R,oC"wY + V@\; K<̷9ࠗE;eC ( o6j\r}L6z}P1ºU,<ԹOzcӅ8mV?Ϟ)=Rҽ#{ԵqWE_7RB+5>'a럧~x踣 q¨\ +(bd/Q$d @Ճ ^5e ܫBz4ouHR@{X4NԪ>M֚o>ԥ<\V`b1Pqi-RH^$H*Wp6$*וcNyw`A0 ,YKː)7/I6A $Js⍒7zkI(h-Sf;gmRD" L.VW"qn26aiA33$1{@C`C#v1mQh'75`:B7 S./~>. &XeEY"ɠC?aWJjQƪjmpVo:[p󩓐3XL9ÃWoyU]+AzY`8| )OU!yw5J~Yhj!'#21}dXjvnm{#=-hHt`@ 8~@G1^{Ëg-Kꫲӗd%m]462t 1SMB|7k/ `sP ?%m!QǙ-#1HYop475,6yulݏ˫`d&T{)Ђ!G@}A"mb-1nExsd/Q&jWg7v8n@\n7}Mp\cfM{{@8 *mIRq[F*NQm\r2EbzjBsGU];ɫZI+ҳB F̫{S@q6&,S,?kWV59V-p֖7S&:p*3aE,!°36>+{b!tM<(PW%G cɓbd%Seq_ C#q\fR/CKr:&jOo"'nB- Ip cpe @gs^_%äQȄH_p*Z\mޘ '#K^,=V9eY4!UNr__ g0>VGnh:p;P|O4@gzpLMf.F}T;nt6p>ݟ*R>X7 nڴxn+u .t"gU_( Á9,tU|/I2|R1(7X}ߠ?Eßt8džX!NZB=IsA%IX(zֳ/K)>*XmaR ~sF~ ֲ״e_p.ZY~1XhLՠ[gb ܅G_11g0(C'd .RbM dpCUЮ uD’\큾ZHf~(0GdGP`ؙK~(45{ÞfcLZW 2#7l7~Ӻ5h,$>ap^++]jZC-W?69i¸O$ [O( -o2Raug5(i3Zێ1E;fب4vm$Wۦmt/I?`% ki?Z!-t9hhm7B73jJeSP>R&!X08˖SNmR@ `إTu[/ԃGM=qYY9#No}9~JmZ?jpQdNgR&KPڲ8ɑ1]8-#VpF"{\Bz+x[$2i]" mtgXeqapUnB3+hp# V^Ϻ{8akdw$OCܔ:Ag-1ZyV.r@ Az=5-:&ƽ-x(t  ^ rYe(ռA,Nąs]$sxsVW ,)񄥒JH׵wHbc'\χ< XWZw(na^"eƭ趽)<ЪlIHֈ]L|a ʊ}$+4}\vnuܑĤ\W{LYq >UTﳦŋ1էXKr?ԡFm =gpBIwftIĽ͞ )Zt4s4ڼ0*dLN3yimZ]24>2HR:)ln'?싨îJ@3=c٪(җ$e!+!A S+(ٞՆ6= $H>lb/xzEe6Q1*߰90./5^e6{'v1u'#AYcl`1aq6Uy| `$so )^nQ;di misJiJ(3O?roJa伜b3a'໮`?HLGZED~Xئ ժYh0R )}RSKY T|WwZs(>EHMuWLLLBoدeC꿚 AZ Ab,Sne#X.5r-X$m+JRB~W)0rWs05EffߍzYpZPF(q}z Dh(#N+)?F e_o5`Πr枯LP`P{Z:N贎wxc$(:Z#_a N,74kVo06NOrysjml ;lO@h/,㗭459DE`GR:(Bit PAw3mX_ j8 ˬ d.:zAz,nRM&Z y(P :Y$~Ϩ(l5‹X 7Rk4"=9@cynjfgiUxN7CQzD{70 5,CB~ ϔ/\rp0PK"O>6\v2IR8@/UtW>0 &D(hŴ&[gsϣ6XP#C%Gن`E$TmBVpxdYZGGeYr{^qgmZxpL^)%dѕ(pZOI)y~uv#SPσCဿJ "wXԬXxms@rOpxyڏ>xh(\FkIP(TSx/ȩsR i$s 7y+j9jM:MR_\T0|A-Ll"Nc4G+2;?WQwIm-xu2Q&^炽jB@)Q}n벪u1_xV?XmVSo/gsl59doGfAl,d]ߍV뽷=]oPkEj=ur^H!(o\IkK_S'Vbr?OaZ{յSrDը Ag*z/96+-e/Y}e\!>7t~Cp'MF?D0lUX 1XbtugPtpóP(``iCjM} tya$,FÞJǬZ1Ն-e+jtK7jۖT6ps$@)~= ƒF ܾ5ny׍ޭn@}<]Y4;F`,X0<-mN릯H$ͫi Y )E0#CyA:0:L|pܒv i|IOD~gj^ǡ[A Pu?KHt6MVՃnUp8h`UK !5EAZnFS4Jϰ5buWqhP̧B[^] |UHb5d)ޢ|gНyXd 7tn[lRx-ߺ:9VWXH4Cf;@w2CyK's=RxWɐg @/4X%?*blU?Rv46LEm6׮q`e? {m.7 C#Ǘ(qlyɽ-{6KXRF&oC/5pTܰX0cBgݠF˞1"^ x/YEӵu:+uqRI \@_Fx4n %=788xtFiu&a@xXٚc'6uUZ_ߕnLH>\X/t.S!cAuDqR LzL C]QArAe~X 5W~>ȶƃ(ec'0b:2ˋcv 5.c4k)kHf^Jj,Zf|qQ+e׆{]c |EMTtVHjo @&v4$;3Y/\«QF \6a(="4IfuVRk _MM7Jo5R oڅI̕QFoӍ^/ aBL(#BAr7q\j׬ zQTvydǬ_nJ^翠X$mO%+@jy. 9ټH`KL knl8R*gs[5w~@ĿyBL ˸r:9)e&tV#UZZǺBP-55vZ?օ)o \.).=X,cæVF`"шA 5#Gj*c ODC ^_PeaL؋qN^X 6ne)s{zէܡX9}q>Ihǔ9[>:GHm:/->3X;/?XhBZ)rKq~c})fN4z]EbLGzެشOp]~rP$ X\4G^=7t5hJվ̿7hYPx/81˳&׏{kMnꞄ($Yh|fdbq"'Ny禄 Gg+B,ì&3>__If VyґW9oP ̏fI gJ"D ɾ`OEĠpI__լVaJC!Nh 9/"+IP!5bRWGO/`wuU| ~ hŐx(76_c/CiIJͥ lDe[)|֑DwΑNoZ̍SK0lm.,sgO6^&9Cz-l֢VZ6 E heVTroĄlaUqn[lmF7d*jl(ȄinVڙP\;K D'O;p+bK]ˣt*m*;3B"a DRn>&LGRIC(kw%]tϕ.+T?~*㌾^ј0h'a+\޼R͂`=)Qy/eš}23qFT,X)jPX( ԠV'o=!gۚF" }#0sXD緎N^T'e%_~d$~s`ww9澝#΋o>~Σ'jjob?0ɕmG"'I.O RFpZ6WG19\F?t%I"L0 A9xWO~>MJdpu}6TNLW%OX/,WQu`jRMVXoDB$Jf OTR,Ɇ >1Mbsid.QR+ (0WD5I'ы$޼kEn*R~Go;/nlC5Nz5SA#J-dݭy3 FmpU]qTI4vOD}#O}'=\?waLYOO7#{]*>Ye-b|W{T+G䟦K=T9GP1v<>nYㆩQ ocn9lxo5BoυW`<1ʀb/~E\w2n0#_gWn`PZLJis⫳knF3_ sۚY4 ` T5-"b;/˪Lخb~÷ djnUcorl5 ]/b~f'7)=d8cfk6΁Vp ׊$ͫ؎LU \M!n" 6o sAEjp9}2?H%sQD!(3w xۖD)&=(J鐉r&s@E')YYs^\ᤘEN6qSZǪ6P |? ^켁utJJ+>ԔkE4Mp`aWD[ F>;UdK ,a˂ W[kHA+PCc0H^XfBxHd'אpmчJrWlbKqt1E\U^OH%Fw1@$6`;X;/W`-m-[GM [z{91DRګ?Lr1Gqhx=l2g>9PUr3cLv)<-K4u^পjrWi"fѧWqaٿ4x}OVӆJgcZ*?"ٷ]+J,i~ };&Jiѵ0=v4)oxxA7dr! d4;nD]J[ & Ƞm>0gbIqw[6,h9՜r5!h˳;eCQ y''l MA;ќr5M "qISo._:0צ/B;1HuLA˵pLd֛`p{G x:P:]+%ȄȣB~'|%ݸo573QN% k) CE;lUc,]׮,woTYR,=&IwNB.jm(faMX3(boR|8A3yuǭ\1r\G9<;N.nŔ;/AK?s‹!?UZ*u^MWڜ;URTWa48PSr"}ȧ.l cn&iBږw{E |锻 MЇ+Ht#SURO67@T"\fBqbK9c0ִrCGKQ+c!&,\ ?[ .܇kvEv XXˤh|b6<)j&<=?<~CVlh|_WQNt5ޯEs>eD)=LI צkCP{ [ a jWZ 4wTe!7T}au-xܶr#X5m9=yG"n9όl fv[QU U $pBn(i `VP7fr=}A8$}١>g N)LMH35@Ri>[bh8.CzCr}AB*Ko@Ҥ ydwEΪYQbҀk׮fqW9*E(.33BX; >O[7[GXYbV`‹.m.v__6cm e[^x/`97`]mpHcQ<4 ~ m1WP8lVs:Jh ^JPD1ݒ5r]r=WiJK~AloPH>Suԣ.ı.Fm( ;kUZtEgb?ʹdJ=T%AH7hEBGG[FOvTP%MFͬ8q'^mpแm6gՎVыEy1U*FP%CP}Wy}D, R^LgzfR;zogx!(_\GE-'EthAfvbf n͡8,Uu5RbSoPV!PoZ# I$tW@! O.E{-drGY#y(aP†2Y'w2l㭼phCU،;([ve_qK|8n`wsUq4ŨOԉި![ge> Kj5 #iꪙ Oo9$c&۱Tbx~_jZ&9P| ,,@߂6Cxx}zp1[6Ҡ"m0;cRY̘vyiIu~>UB3 Q1Pѩ4'}w$ "߸ k#V`cd;#˄[/+Og e"693>_L] TP OVkƩP W(*qv#wnUN]>+-84X0Ϊm`:@g&2zioSO(e3C4A1-;U%"͉f/GPc܀+lϤ8%v(Eh%2 |NDrO9r/sX*bS ]GI:y ZˉovzF_#iȔgB'y*E]Rvأ՛Y{-9-S6 LUot6Q4ǡYWEΡ:,Jg% h>'_,79V2`XR. ;҄zWtZ-֗/ۡ~2q!Ott)QCE;By{dLPrmL-iqz.w9*BM]GJa{qߩ+``XLQw]Gӧޘֈor~V`"C %2wbO:k0ULe&vv O@kXc{O'7Ĕ # u4~քO$ĜΘT+7UgycO߻=Tx_Xd5K_&]7XO {u+[ 0dpatvu4a B&7+kKN HqSg=ܩrZ44ۆ&-|RgkPePR|<'_Y;Kє ij,{k`$x]#xùgе9Z<7^d!nI馳{CW^f~P>Q/ CE6$1JVh`u:gS|09ϋ+fOd眲nnA64W U Ikݱz;aٮ.vl oțI1SL\XMWJ$V(py)4Q?0t?Y z1ִ*ѴW45e#fiNjƮZa|ݥ%jpWObBgzxh:G^$i޵IJb,lJɗ0we"*7_Gyϕw1d?:9sOS][QH'*<, ~"EQVqTľ:҂HEĖ^Wl-'$;W`ߧlvI*ߖI?@ $6?I. 2u9P8 KI E,poLnGA!IdL 0yA4}3+_DM5A[l,sܔ5G˿XQĠq- /gC~=Nj,wZ& j A@4Jjs!VUy*I@Ub)!2a(-?Q,6iIYۣ֯RB$BKdx : N_ :֮~Bs:).o{|}_}UvWDp*Xy fSģ%zm_rT!ԼF ggVPJ dxE)(^TRx֕H8Y{k> E˛$:[Ed3`HX$V@- zZMuqFs}arxUK*/_,g`}րbsydB8_M27.xTe 0Վ!-?]v!xcY)6u;@W\XZKZTq\ڥWcL>f ךmOL+OU"\~x}4bCsbdOWxvH(2x8ߔ5MЎ gh꿩t V:S9G2C?|aƆWX5j=%:s7:5UlR{;8!HNGnQ%SٍhG- "3D{M/ǜwziZ ̤@>HgB6׊1/eCKVz 9 wLpe#J7dSA=!더j[AZo!tXV$wVq׭3cXE 9<əgK.lT,Ún]I3AeXv D@/ :v(_M$s̏6τ.Tp1)"]1KMVI;{褼6чEI)uY#-}ܴ%$>nJ)Ҷdl )7as7Y-n]E9wRHz8F a:(4X/ӅnW{u̟ٶJR4iJ6\.ML ^2:U-Yqٶ3ɼ'P{'镂6sW[^k!h>v& !U).Q :f.RJanѐF]PҡK|+oDk+"M釪[޻jQYJn +$FQVc<,78p.őY{k ,Sh\"1!0!`G\Z` sC[ޝK4y<ߎ}ф sBߜ tۊD{|Le.ur"@S:-r%.㗅5 ]Y%P6]iTA=5yLSe:Ii~p#EYlxtLt&B'fab_QYhi^3~n趡QJIgpq>l_b1`K.j/HlV27'"HͣԤB!XF;dqzsvR VvF1'LaKKzZd_VFR&CԻ0a.&fTN׏&<d!klj/F)?6`H<*+5[9wF Qcg;˙)I3DmIn (<}Hixjۓ F1Ί%Wj2=)NfLlg,JrRqt`5f?l4>yT1 QnA )``,fm"\ȍErD+@d+%P[@Y?,fȂ0wqPwb=45ܼ ݯT8OZ8w?1ȟ0@D xf֋7dyU(p̘s(нd<o= iFϷ: /.>fc#NҜBg=ؽ!}]]y3++8oc `QX8eάhɑĉ˜y]_cnC:+nYxyOmK;KM餣w^([-nфS%Cc8Va5(l>eЫ 4%w!0qKv 1ܲXuS|d(jZHI"k#3oh0rvJ7p me@?$2926T=j^љ}*5ْf͉/d3鵰bn g27*Zq V/%x5^;Z_I fn&o }Q?{4 !%g&;Egyu?.F-l{:M\߻+{k[$,U"\x[p# @K]7-1ؙζwzPPWSMhçCAUr@v%NA/\?C%z:W JOaٗdhШVK6F݁ .- QSV3yd|Yyٸ&v#uw;lm[r!+ c|p]@Dv /eEuAk1j A0'L.{aVB{MN`qC7(H<4s`✃VYxD5ŃikyKﰪeTyz}@s.,p^@7r(iFLdz2]R>Yߑc& AR S4J,O^/8U;b41Z(6n CHWmt5@F}[ikNuF48I^$ +c"yr50tqh B~"q+>TDJC g" MO%noգN.FGЯx{ˢbtfp~;4MUo=Q6HަR{\ ބs mC5nY<<gol]@¹o$coDQM"/D_|E"Y3wJ$K;ŭAP1E9e~2Mըe~=# YUqY例I6ϧQP %}|]C5o?3&T #"G3KzT;r^\ zOO6-CQ/*z_sXc܇AT]a台9ϵT=u$.OAʛxѩWp}kD$P|lB<3?{w`[WhE# fSkGtRfn.`ܥ}x?Bái8/VrJy@q #MUO ; 5Spң3Q>Oo~/A~h7b ?K|{oY%--nu KFmu4Z,fM`P$+|YAw/3-0,\.B ZcADMr34@e lcw]>I|^$eq ?foWmNH B$kzn|;,^zyFĊKrSSFpCע9a0׮_w?¦o*5u&$Q[~`r7sE-+cEDEU!P c\Bˆgq׌c" Y 5GJKkxy1JB@0&qSaSǁs"jmm,-7>Ȁ4zz|L5nG ?{4 #w?[ʭ2ZQ`F?ʥm]-w$Gq,Rø@dO}dcQE.Xzq^."sN|#*gZX,:h;RxH*]Sw|Qrfm M-/5=zxi$zq9S=Cbzbd5Nw$[N(;ܒ ˃zxoWy]wL,&>5~c*FaE/䢻( ca}{'?j}Ȩ}`&ЀS(DZQ\D Na.r,TS~)G'hmC$h~WofmP3ۏP)~.:/')$`i,E< fD&!h < 4-:u}GrVTytLWEA/13OZ=l;w,Sȓv z~ JG%7r'Z49eRHr]A؊@WGhZ!Fe z'9A r 4m;@9M08(FR,ԋ-~_[Ȯu쭮#`YǎrB&Q kj zFؿ-c dg_C/J%:w H&l5b<ٴRrh _/nǡ7]5oel]k~zԦ)kQ̇.QQD+*N–w9ut4)M[e6Ʀ~6IP^t5:D9QRGE>P>sZp3`B73yDP+7+c_:adTvm\D!c\d[{dKo$8b}C2ٶ0H޹r"R36%5fNef4a97}AU0Ì~Eqy2S-y1)9[I/bq\ ޮ^WC^ llJn~>G^${ҖY6e7l#-Ԙo.ЯChB{#-[9oX }ʜ@bAϱ%w݂gw2>N950w׷jj+YkcpeH,G5| {A$ތȰdz}_cG)cIz\gNoGX=jִEoSই{bkTpGKZVY 1']V`_\W׵>ŝsm_=?)QZ!0sZe1gٓPW1EX& #ʅٔ$.r0SJr9~0XuKuLH7ǂ R΂^r#\06TS(k)k{oO%HBߒ :Oov}Bln} E~F#U3@;/s}Cv:Ң܊~9 Hs|pf.U})&NI?GU- 7b t No7+Xj~ii6䩌y(A+5` 6#fI{ЏO7kY(\w _m@Ev }y`ӣpK>^Z.>:jɓr q ꃖ+: &a+QC-$կSy{A30=6xwF߄ 5r5 {2~^0 \E4wZ߈ ߂SŜϢ=Xċ̠ S U>Ypܒ&.$hS a}J v "\*J.CNRʶ`@s$y5 t@3B5S"|KA_(V>c7i^>y1y\z 0: h,&7M:`)DēE; x1gQ$k4Q^ev9^q=-((.S(â,`*˭KJW7EUꯂڤ\Px.E[O_\:Sc讬WJ4srf{xG`.ېaǬ5.û9|L\AgjV sRYl.%4Fu6 nl./@\mWsiáPf<8)xԠG#l@{cnQ2UKWh~]e"X> tƛm(~NbDH7LY!ˉ:p,!E57I}9/S[ݲy`x%CnsIsbfp!NV[۹tCcE^u.񘬗sH̻v{OgL}_Gw!e؟RvŻ0>b#$[.! >d H8tScpFMFQƩ ?Չ#K! clgE/pH(%=R`$i4h9L֔)!1)j't;;?Ԟ~׍_{ιʐrymP+: R372_uqe†qMugfw | x\U? Pw2I1¯U/ /x5^ZqnHctr噆#ITudRĕ>ݼMY9_S@3\H >,+}e',~O*52w!"u8N$6kn]+7{ǡo,mo<Օz>T{F ã =e3 t-Tqs7 Wp]}F3,{v1-mǽ6A/[8GQ#u>S4 O(]PJɩ'?WC^$66\ğ!a-mSi3ʰ{Iy/'YCrj롑([Gۘ|:X,)&7qhxNƼ&;B;Ky_DȺ^H++bHuhXJ>~pvH'K'DL 3[1EvLU#zaQY|>E]SF|)MTYX.$hDsLa$%uZ0GU&cGy[WX3NJXkpo !ॉ: `S8![Qn<1Na4159*U2+ +L.`D3Uϼ jӘIҥiI%pk+f~+ѣt#0Zdd9c-u\⍘WnUEfd11bt`=Un. ةqVBsEPpͱmHA$xɼW+#Xn"[9SK0f|فAV2B^"mȲlTphMH|c{ini[)s xSW&ݾ{QMWvqTpDF@`<N(E$d,\!%*NoHShu]jU3  ,uh;Ս8V. 4yeDC'^N;u-5QRb L(}P{kDEuTIqtSj !/-KjGR栏,9iםwVaBB(b.CmZQLWB+2\ql9}N|:ZĎjuб܀llh0(VʏR9JkS)[+9q6'݅)nr2 WD0>H-÷@ z 30gyn_t.\^jN>,ѻ~3{Иi,{GVڼ|Qf̂2N.%=l#d0]Rh3cNd6FA5gρ$ɀM),qgz#%T *" ;n᠍v!ȝ,7olg:-u\r52&ß s=|}Q4C v&tGX&QM޸H:I@~ގΚo1H3'zCpeSh^q.1B-;>I~$dR [(eWE٭eHF--rB`Eeq4(k?fup>۷m/UT !ԡp@s}[%Fz<ECG`OH h{X_E1gU$qKw)(B9usќv ʐG cbn)9t̓6ˉSX1C/%)&EnYŝQIP71kP 7r9:ݒxքB=lk:U@W~VEhIMMc3KWgB7ے2uaβA^2gA:h5+/m\oQ;sꅹ<ՇNո9D)d߫n21'-w5cFPˑXk.c5Tj썭U#8ÏLj%lKeқW2%YpgZṡRC5§.g'*pm|} +zx7(mct9v~^=!p^O4):\Ӳ;J/5xfjLaWu /XeyOv& @bf`!YX/bD]`g˃oqG*Vsϱ>ǖo!W?3:\M]ֆ ׄ7,$##AT# V]9fZq,$7D1_65*PVvn;u w:dL2W1ۦ*62rgPBrI*^/ oTb.|-^}nkj}ʉQLB6эPLnC΃é^OK/u}ڗ^Ma\W~g]!I vJ0)gf4*!V;tW A@C@Z%q0|zXO5:1^j^&fTOmE6 m(NNрzN|ޕ < l-w#U A[=U%rbqm%x9]]lN"9pUP'N k\r[! Ijv@WۜK:"ȩ2s )yomZ4ev@`&O0~!r M Ǐx$֯&.vV , #5(d0cʨC"TtvE+[69ڸލ55ۉoualJP軵R1ȣ'uFҼ jNm2jZ.2 5&,Gfᛏ)@ gl~ J;ǪHݥZ\>E{C%MTr-o >_ jLȔ@SЪ޻':ZJ@!.?Uu$tb*M(bD!ϒ/ Dk-/W `npzxa{!xZ1Zi,>7evm7Fq8(CKQ7m~Qf g&Q|E-oROKbfFeOcD'WQ8~%f{)2o!2Bw!B$zzzC zC R~ͯ!K2ӳRir(>(e%5Cn?~K~oIe hU$VZ[-:Qdl&nN8oah㧾4A:amQJaD@Ds{RSY+$(RQS;̨)zL;w܌Ql7S:/ i[h1,B 32iu@֜MONZ?z-?l+F q(\p0#p,~N8c%92)}(eevaX3AD횞𻼌0` \)2Uv@{JD4\;c 1?Y!qFI]Q5bך ڽ}6_MN)XMtKQ9o9vkmܹ\bC 'F܋JiX.7 2]A(ꮕOq&M+e@[jaDmfa:};Ss*bHg`,B R!bD$쫦/񍠏.ǛY˔,eVbn^F])wb vO[XO[,1??quiR ~7of&N}7"='g닟 !qֶ<% l;x]|~|߰굃wYwJFߡu{x)?/N?9$1СoCF?̒md/W+X+ǭpa0\;otD g zh|1%xqnGm{=Dw [jǬ\{V {mo^H8"#tϰʝFz,ǎ%ZK4+jka~z gzC<5 Y>=wL>iS`rvxːjyQPFF4W =p 7DHx76է6Oo o]E+ҙ3.4ßja*N%6P-48vL1Wc^Z;m2妿R_)mkDvsɟfIp-3 iJfgԖ>,X&i&D^4>0u\\)z%+%)8;b&RX]U-dyi3 i ܯSwx%[iWIЅe 3yZDM5ކtv%ABe{mn&A5me͕%zSp?ℭЎt(s}Ć ݔ/h.L:w$tda2T P0yDY6Wr5]\zQLy |5G'W/Q栟`!iKW8x]zJWQ$ff Ln졌nqde-}evnʦvBXJ50GKrf &%?эo Y3#Ig΃=m/G Ȇ=+Cک򮔟 fQ|w\u Lg-f+ۓҙX,pQz-nEswY m=t^ej<Ʊكn+pqy[fD":2>MdVƪWwncz4*~D9SNo`]3LJ/kfSrן6KE+4ʉ!,"@RT nG `Ǻ8bzAaxzܰ<"$,i^b63$$j*wmLEx({F+oMsL6]dŅAeN(>@F62Vl yUFp~ZsEa3- E"z]R'H/LMykO AT0qy$HGZ~`4aHQ가+Pti8J.QF򟀘 k0JYiR 5)bӋ!awUeǒn)=ȡqkR]4qWb)b?!hp↡Kԥʃb5U*"?#>zm c&T3d&l{"EDجExں-d%:,o3R߹Ϛ: Ӛ_^3JX]Üb18HlڞQz!˘VbLVIES&L]M<[sC)#]rZ 7Hj`hzL^^ٿ!*]~z݂ 3SKU~2kL\cYnG?Z}N7K;ڗtu}ztQh%6'Ac~?;xU28|yN-ÝloƘ1Gl ֔Z_}zކZ'4 ٻkQfB&Sd0@rџ>}a%n;߾>ob/T`- F$6cVJ K[gUM!wf10N,xrҖ)O=&̰Dc5+ϥY4W@Jq@#1h;OxJJ\Թ솞d}𘖇4&b,&DK-_*!9/G(ҳ^zrAr# jɸ,Dꡦ챱˨Drܸ9>jYaIJ:*αAic%YLrrY@޴j޾?wqs ۮd3XPRj x/x̆,ky"G#l^j8tw68m5S ++RVsHv T$'æy) WLW I`.Rm&e&P|Ƭtk%yDzܭ~h՘ bcd*K 7>*QEu$8L5I\ URhJ$q}-GnzT,Wи^XĦfbx{`dUKޖZvEi jѧlY3vyOK H 7+e0 c#ecsC֠),QFŭWvCn_f)fd;-)jJre-NSK|T~ ?9n4Õ&ЮH(6޺]绛 1sTdP3;2d aoKvDw(7Ǩ"\~VSKcUfVދ F^5%'V-%v 5ί= ң/r&Juk]:4*(ԤvxV& zS@ oI)8B 6g -+*Za4j+% _3{դ^A,U0\b4{ϩ*I[C;ԗ:߾%ĩʉj?`S;|JߠIb 3X{XX28Q& m`/X60`:H;w~g` X쯊|2.{&ǫ^!b)ݒYvFd2X{.l^&# J L'P"/gվòƖ;Bel`-l/+FCq;f* V-#Ǚ0[nWݎGȡ]ڦ\/GLьѼ@{o/i67b*"DaLAVբnPbL唚Eњz5#T j6n+$_8*`e50^z~tj{Y&\J^XH!p1?}ɘaj(P@qr(I>;]su~4G9oozY/r޼aծddR 7nJ|*QHZb gX оkF|\CbP˃p9_Mg# !@KmOu$X*ݸI, 77ѼM27ťl y(mp(ǺG M+ qnךr+R_ZdQ\D%PMY|5#ט`G0!EPN瑹n I [0) !_6ȋtR$6 u+wEޜCjN01`#< b-x#><~Trq|$p|] LޒŇr A `"xσ8TBR2&z/hT¹d|Mx!B6|kkZAa*R:5~5[yL0ێa{PHvkS×j_Z I>%?oex>f{aRXI%{ nM|9 '8e p,!אtfv-a} B!Rhd&U [δ%@5)"X(ZM*/ oTEF]Qϳ:fg®Â@.Z ɼڷMz-%S|/9+#Žj?d0eh5RU74'w$/B2‘lSV_9Ga`.ˆ!H*ɶ~5t9UTa .tu@׌ssXK7fĐj00.7-*43zH[G<_jוH ga+G>]]=dq;Smo1ʂctEcR^: Siy_?Ṉ'xHR⻜ƎBOS/`Ƣ@uU'kBJpl`.|BowaKFZvSIF84&̌@W-Һ"/=!{,d-`bѤyZRW~SSS'V=}qQsmUjhOq#\ Vt ٻtLV]jK ||*Q5NA[#e2xQQua; G7Dx-?@1,1\]TPz +&a3ςh |Zs(ΗxȠ:9_E''P.=?渫}ohB[n[+ڤMgř8?<f~x .jx~2 zp&J1\D~x1yE ^¿5>~݄d)>#|pMpAGHr^pQŴ6҉alk bNǤ_LيoӢenNO l@%9"&.!@npeBɸϒwW߲02Ԥ|qaYjK s3:p͕v\oG]pѣĎTŇ d`O|,I%sG&Ɓ΍Xnp7VÀC~awXq|T;d]]GOHұnËV6kWp}^K.1cI3*;@ x00}؇aF/t3`ÓfwQZ/#҈mO2O#f#1~脈ya#]b` 4im;W98EB sukrQZ>uSd!;+㺯M!=-aK࣠A_Q]lIӞAs5#x)c"ಜ F5*՛kLhi b!RJ>QP~*mU1!3i3 [mp}g7`./ÐΩO{kr@7<ł7AUa<{ٻPcWn?9r6xDŝ;~S!^?=\'XF/Ei?*CW[O`ųDp/LM(3 9z1/FVJE<Чb56v|x^KL'3oL$ L'%W5̵C `ezX_R7J[FE??GdӇ&Iޠ^6cLcv =\ q_iIax46ba,- bXFs~GraZ!zJk߷N\RLI^M|~]2W=K W:&PE^AQpJY~sT,(yv @,Zw[-HJ~9)-Hga L?Qx`.^.< 8xnNut Č܋nAC>Rt;]x1+0LthfJXŋX6 y?6-fnb=&6a A#ZP:zgMΗa6={2e|] 劂ˋc RSI5y6/y:N^̽Lt˲WIXz'ǿoz;D04cETz>e4j χ8T'`8_6㺌/c 6+tYPM8mzµs($`0L0i;NJ8 !zc}Sx~bJjeι_II%K¦Ld$D\ߏE|:D5pk[e>TVbx*Vhk0Ch?t2UIR2fDېcϧyVyJ0@ +NQ%.yde[, `Bmy ܾ(f{)i1|^ y̙w(hl0jҿU H3H3;1ohedMQcRkׅ|F<q@(.pUb|;CeZNw=G_xN] r&7*ae"w+Vq tylt2oTDȈr{l#,D~ZΏǝ>}7dxsumq KhHXkz¢-Sd=Zu6"6`M$"p9 f^ې QB4mł4z |ɖxPlelHU;V'@Iob%NV M4iI kaa0 ^\s rG;gтUfMb55_uSb_ ~-n@ltU/Ǯ6VMNJj}x/W%]J>smg~4Tˤ*9'`lCԻ?POu:7 ^S=jK}|w#yhSeM׹fVbct-Fjm}3^xa&NϞq> y$ËmW=ޤ5]{(u:vdzSA!hcGn A nlU^EvGq7'atzge4n׳MgDUqV=bqwQ+}~D@*%UTO?82dy7k;a8WSpQPL~z özDow''-~3Raٟ݉7a|B:;Q8]`[]ДP(Mf Zf+ZO #%d ھ*U-Q!E`T!T=)U>M4SBOMh>)=b0 hvo" ݜDX D*Y̳8aZ9I}|q7H{5=aՙ b CV⌡1Sܦ`1ԹQ[o092<^$tD%`6  tt<"QtTI$1Y"b^ CZv!%ۀ)S{먳t8Fw}irgK/C8"Ӵ .1@dYBW xt~Y 8VpK vpLsYZCk?/?MuwVW `b$|K4 +Ɏ2g־-!pfxe&A$.vՒl’H2cF=Hy"<|5qZShvšU89WcC G2$ZT|̞nWWE/ # !j=KOֶtVՖt+OK?}`Rprq s&[?\ ynU*@jE6ۨ0nj h(&?&xsD깞}bÝ.kr/'q͹0y556 K-7ܮ3JŶx/O%yJW8|id Kț8iUPCUqU=z8lkq!tt?q[Y1cm=6[oƿEf.[N~ȗDݛG:"oE*+ )Tl?#h5 sH~W2@ivL.MG0 9AEl3_H= lJmN8gt@;sݺZQ) Gg\y]0uZ* 8,?۸D=fbՀT`e]֐9ԾfdXe{'UҰTHLIQT %]586=dl#}CdH^TPeCqdZ̩ޒuQSiSerg'5}h/kK8*aR1qx&;.`*[OsgQuʯpNwhEIO1Q+^VU~$-VW1wB>&m7Ex]6+9 akwc|Y 4Cr\5MfGp+3 ,X}H D#<& y]ύ>OihẆjW\ HwՈ:Rt=w3 XC!E&.g| g>bp9rER<AE#Q)2[-uл!bc % F!oG "{†њC4ѹ@)8Bj- ' )T:ЕAR=7g%H+4 8sN;Y7S|>X.U%u"kQRէ|=!Mvá.=~gf ][TGPl ߨJ.\F:^'+h"|ίV?|:|$Ү=NϪxWT*mb?9_FF,z8Xtʹ]zgLS1"}]i xO&a) ڿ{ʢtB ƒU8,GЬNm~7vl1!QZ2#t9UHߛZIMq{:,k~mC0}E8AͻzdE׳2{.]u:-^J j]ƍ=Pi)0Y=ŭF D'}ʚBU=` NdWr6& H.- IZnV2uߪ'rќrkB.JIux@5+h(YtR{`+E~Ҫ ~2=i}je#vJ {X_k\Y R;⍜,YkXjatk1L`Y`@_O>]alٷkuFTN~FD}"0;x~؆5!;+HTgUj)q;N'Ds!7ЇP+) gq'&׵pvyd@"u:*jRfSOToi!6w0zIg' ۚ{5Dl1ヾJEa5桏kHZ7bxiXԱP hŃs!&ER)eщzXQg':8̸6b0gڜɮsVO Z0Mb7+Cg_NɊfLڡ-ʀE-iUzzKY=NEcw{ĽVŕcb ņ$TyaD &[j>ZYw+ZGy (D8s@nB7v |ϭ\LӜipuC iwg ;? :  XA,'P> ["}BFU|3t``)7PQ:ss29VcV9"W5$ eXJߴ^KJ]Le{l/W|!+הA {Ca[W~jpO\lF E5(66Xc9aCI+-"i1UW.MfkdS[|I?DȺ 3&?`xäEcMvɟ':3UЈ-q E2G7wzz܇njvv=ыC ͧ^5Tù ]p,s5ԵdO V#H>x@EHˑeLL>919Jty(o XGRl_ލyԖkCP^Tmt*52"#)ESnr,Z9PE}Iff+.iϖ[@aVt!/a^Cp^zR/;e o:z ϢA?5$;p=s_.{Fn6m>&'J1n[lґgo|t!b*P;;Nz r9V e!krYLiZ a֘qPI=^ea3h~|Rjq[ ~o,}ɩN.>ty`ZvRtf~$v!N ASŦdrQ&g5 8XHu 1n))]eG)DTJg:BulSTe7)5jġ[|9eI¤O,JAqJڊJNk::>& XA'bDpd3)1yDjSN˙'5O}H2#ar=5iY.xLʮ<ˣ}SjrZJH 8RnBOe"$8Ͷ}1Ej/+dZ@@Ji} :DD.>Ac` ~VPcSv)pFj^tqdwiw8z%#F҆]Q|?AA8*4);C\3w"| l 8 >(z5LWYxI5yˇJa lt _:hr<=EWg':)zu =O3T(FD%2`y ozAY幏 {$la c+Tٷ]ځsz<_-ѲpGj&'hԚ. B= 3]L J7ՒXL+ifYe<MwFBBl2@3j*aV έ 31%j?%yť*EF(5z S ˙vs`|JD~XxX Cْ^DB|OY -j 7aJ|]@Oۇy&xħY/1Oq 0je醴^/CnO]հ#UY FEď5ΘAYs #텬tǾ^w3M&6hMv2!7{\!H<.¹&yhg4PkNPG8pv,WB5eJo}f@AGI|x:5DFxϜ `M *@m YAHu׾n/j|0ث/xz”p8\15$6Tk3~Yj r< g#1'4YGnyy*pȷ0ux\ 'M'*(nW臤skFsϺ IOWJ~_Zyf$Xk߁Pr2@/|޾H!㓧ƣ gy _p){l܊}>W1A1(2vңjB[1/G\>|Uv ]]1dvKbmidPڰbǕSOɃjT|Ar6gƶ%Lk*tlk\oHN'$~cll\ϦI>CKFu_S;p ]' g0ͺ2AP=l16sH>c2v]r֥9-٠ųnWMV6!%27K ;u}? Mz͞CesD8N65 uŚeL`8OL1ܕ|},Tz,0Ø/W PV0\q{Ӧ(f㖎r;8hɬ= Q=˕CS pFFZbm7 Rd\ZYyeyN7\dY?9_7ވ,ܦy]Tm9c Ì.| ++fo|WamqTSNjuvu&(QfkbKKk&GM3d;3n n ֫ a̩Wrjxj۫ve9$I[`iq2L"_oAk7]b`Q. +A5c]ďLçybI@?X-6AᯙPVC.Lqn @GxVA*A6`|>~%d"UYcc![EA!R4wYed7`meAchEzkMT~}- ?(WcmP!,"l[$l!:5 ൥yYfuޜFr 3-D(#4"Am$A1G{ D6.O| 2YOt؞7J .oL9 xwTdy' P7pyso }dtJPwlv!A?uZd nߞ("x@x L;0ބbS )<6KxyrLKN*S/:.u\ Be޼+KY&\|4}Iof%s(ܶ$dw;IJr.=fy?dـ<@m|H^;TI9 @?^ %ƃ .8{.%!!F6:5BuÌ]ߡ^\'9)dXeVN7XGd]w,"J_j:tv]'pm:hӶSبR \^5̸ A 7iv:974=i ʸƱ[Zi]˪R6,&dI?eC H7e)6~]e5󏻄+'EQUʒ/mq6jGAHp|;3#-| *VemY}= O^ D肮`/=K$AЅś\X=32 ˊ^՟Qb8 >'*ͮ%^1Q4 CG2~t'',RntpvQ n!FŠ j0?o&qpۏAc0:ľkܬ_[4s%r6՗uYOZ s1BR"0yz'6z~Nuk~bW"W)SW՛g@m,0IdiNA[xG3?܈)~IA" 0ez'f?Ek4z'fؒzU!0Ǡ-Nw^ g,if?*-4"U{‹d$(4׽6qK^3aJS#f:So\2`2 ;}Ĥ !+^Žw @:vц Y\h"ǁY ]x֔ 0MpL!”x $s\s;zdsQc# MFg 7'}n(ʧL]6"R9m+գM Z8>1}C9zwё.N4R¶B%SgLhK&$MaN)^_gdz'*x cPIiVĥ0 0H,-$#ꞁU>= Bffp S{G;.5²г@J5t㽚t4/f|39޽eAx@]\pŠñZ|wƃسfC~gR3Vnhpo09hDu$$ _9fn ܍;?Sp:^,Aaw ".ąyt<2WUchsU~SJT/t (Hu'|y py ޺7uH./" ;ʦq7-y#M~e"1+#=L-ιn5P 0yŋ ( DsV6m9+:'aKɣ͌/xrbubWA L1 ҵv^R A {D|8c $- /T m_U݉~fadV+:ME3FT퉩^nЁQZ%q0ⴂ}F2Ht| R`*ڛر,SnwKx A Cb%(ͅnUL̖ly:+-w}Xȥ{?@&^~+7~VvK>0/CU}Ɍ^؎*~aApͲY,Zmrd:0dť l51zqieё%ԬUrEl!Zga̒rKEK$cRk2{b4Ou | 'h|OC< 3]Ix8> :*Rx!>V%]|Fi~ ^<DOdQ:USR #W'wx.Mh9Kc?fP!HfPvi'-pT':J7Y ,wVVzW.xkBEн CFE֪ݝ$" uu3һVT eusD/.LQT6A{#1=*V/s$͙f8"wŖBN|##֑U^ 3ݦbY t]\oU,5JR%3bEp9k}?_q㖃NuMgb49'GP0-"B)_=Ӱ=H4_.} 5Ɉ`S D2`3@X_rUaԟ9k~Ľn~nv5zWT$kȽgK[02.'?e RWcjA@>CRdߘ@Pgٔ#HwM"2\%"ܥ_5NC\},Iв5)O~ cyGf%8O:,IA3ߐ[kpGs!2wޢZ0-[",%&QPG~ǯxgG>=\{6B_\w]XoȋbW,e{p얉 y=Cq\77ɱ^ed|cibW⤆kSy|VhI'ずTw'- yu1ޓQ>EC1Uz[~|S7|ɸCezӟ$_(V_H ]S%VR: F0ܶ^"9AiM[K؛@)Q}b )J1"1kg]^ 7ýʴI ;{6vȁ&FcQ{.6RžqVμMu=@nWniS|0c:RA5gƯ y^&$aiӛ@؃Cǿ ^ق'\]ǬeF5-6?"ޞXhG_M) V,L#W '"X5[SܹCG>mH@Q]Iqe,uPwq Hi+ KF#&a~؜ {3bء^1Dy3@\(d7ʓh m=/A[d]RCPA,1>.yMMe7N\uAٞl |0Sjgϲ>@[J8]Sx!۸%YRrXJgA* -dNJk5vvc{|(Ky< M؎Y^ qy_]{7;(ZݽVŲ Hƻgmw 8/3E)\0uf[9x"7SMn;py=8vO'hVLr߻3ޛ%a'&L.aBefq*ۼt'9o6SF_Ñ+ֵnq:RƜluLɀ;;Y\TYoY* ;d-D ȕ[0pX[d;?H25F<(^;eVfdlRk6C,p)ǹ\AGa3a*MHwGFczB5RF<)L GdǜRb2%v62*]SvJH/}VwU!%@ܷX +z8G 5^S@GyxxB:45= #,.W&@%i> 5{MPN-`IQX6Uo@(9MFW(ՊWl;;H/J 廧) غϺ"UTE-@| ֮b 1 %%]F69Pn';ILpg-Eum~SXZe;ˋϢϾTk=svv'j!ekK/X3|WDRU=)ÃJO7 e\s!g.<̆1%RQdkk0@?RXw:|e7_߼sb*>ESloB}tRi?vFj:m79#sf5T@P3k:33 OF"d")ȱOfPp0_jS˘,?e9H@#s >8H.C*]"[Sƨzŗ,[)03e 8z8Rz˽ޯSSgԖ#D avu[FB|Ͱ(mWMsDdY>x}ἡXh55JJx $bb^ցX}]% \Xo࠲zSi ]vCa g]yj܎qQˀ3Av{#dҚ/rY:q)(眂{?&' fp.M$!x8h;tL+cEnKjĖVA]r%T]ͩ[fH J`$e.},xwin0K k}%r< DR)bCe 8U7vd5vA|$Ѩ"yh ϙ{kIÉ \?ɐhȉvL;k= ؀mzS6Hm}Fr}8B)D=L@U'I[5XrL-7g>zo!q,hnM'5$/l6$مfPI˂H}~닖!6Q%~#ۆ!Lv>g M!PE 0bܗ0Iq~>Ѧ1$G%;ZaF_ǽjЭ@~^lvDԤ)ҵ08PVtC i] a& U\>eq0R:=p:jiRWnfa@+.a`\Pl𤍓-'6he^|}᪄t hnHDe vt=ٗr9#ob(.Zp$yNAXܧ3P n.u}:kWߟNMZZFI#YI>x@ziW\Mfz7C/ͬN.pjZ51tT\wk !0y!4R&HƵԥw&iI+><@o vevPSI!B5Ȍ 3O3b6gwCm-bVY>vaK+T6#9Wxq><JЂ=v ^Plǭ`ڣ}}+J-Kw#;Ȫw317ESo.z&qr BM?/,tq)E'7P[ tcN(ώ5Vn/ϛ[xV$F:}\pԔ=b&4/EB<3"ϭOn˰9l"tr3%V>[ahŒvl<-J0@NکFWVw& }0@&)>UL'xI:"My-"(PyaY6:&B6Qm}&Z;EPZo%+u#$ pgnfh E1]p3 tv&&]M=4#WG=%IQU-YZa:q[, twf|Ny~pw"ut5OQ[_ؒ C, -@y{AUpj|/3 65GN ikt+qT|MacyCs'=njq壯2sy_8lt7 @ۈj/iOfmljK2Ti$lg/: sA'Fj?k@C43FNrKʏ2ꆁs*h7'-LܶU4>l9wLIg_Ic%=pk xGxf9 ^&mL 32zꘫ#mCg^Q' ΗI8kP<W`ʼn 6%:1i$ć_qs|y0=۪x ]`Ud, |waq iNhJ%4H,jf }NVaA/n42"˄S9?ƮU7]3* ,௮xWv'DMa3F~Zqڳ_U'XPdJpWܑc_8x-* }"f uuYm 8VOL]QC+]=mis1~5'uTe R"ٛ/% 'ɀέx/0l~].IԔ.V2lf۝Dp~pUŁpYcǩ MxEc_Y8<%Y62+GZ\)2{!dw.B+~O û.q5 bnS~f&_XzUz Fs<1n"}%*Qg?apH)<'B?\%`P\Mi[W]0׳ŋXmw2cY _G庂Y!9-xE#l剡?F!Xd,^Pk8g$ P0it$2y8Ҁ{UJk,Dө.' vsg6qӞҷ^ǭls@Incda2jnuIAς⤹S3 @u0;LF0np80DIDVS]^AgiMn~xmB69}jwu7/p)D9!Gm 05>Κ7l~_Tmk//uŢD{yqV6|8;!t1v74q e?u6oLR?-'_e{֢paP@Gv`H_w`\& 3xx612ih2-n'%.t. *GDPsI*gW |Kw۩O;GJWn*2S1SKBu|or/<9aYŮ] *ַ9LM<Vy%لG$Ǝ %<\Adp6|BxZAb_+]ˎߍQCxKԃ<գL在DMC/XMLr`Ye»^Z)N krfV[+ 1wElLizcE9i>GX ?;YZE¸ʠDYc'_ft˩-b Inzt}K=MٯϩbAh%,FQNgqKhdfa$hY;@HWrL3X7%9G(~ C_ʾoV? H=Ը ti VJ0M0J X[vwwOO:=Fq+T]f}FAi'K@b\};2VsUsm,`8'#e_W {dY;ؽRszaqD=vV]^[' 5B7_"u**Q<Fp/Qma%}t0+xDRҪ#G;QIw6mЗ,s%1 B!{ ='a %{ :)i )xaXW'MhNW^B`KEY4bK~I> 7ַ_<-J7MůmcULj7B-3LΙA&C k>4d#v^l4`Bi)BP1F]bοNJ{Wuф7X)Y= *] h+l@d06p6?Ƀ=q4*wY@Z/Bz6P5S{R8 G(ʧ/JRꍖeWu_a:LQvGE6r/E; jn9I^tWNY;C?o@VV3F_0Gl727'>ߟԝ_F05CDEIdM2$2U9A"2|(sYBI-V;B%8|lã('P4"ei./S;J˹~O k b>#^;Zx>;-L-Z>De;C&)^j6 1vmr.\"pO)"(fnGW@ú:lJ)IOe~+t- #X55㫪0UU\bP" ODǙ f}h=l$R;Slj;{2ţsYLkt$F]s`(# `x؋xɝ v©CML |ivӫtHE0Tf5h- ̨ק7o߷'uM r"l! Y OB:>T4k)5|F&nM๩FTT؎%dnvQkp\]B&rt U+~:Dz+˙߬5Pϯjq⁡Nŝ'ܟșwΨvH@ iڊ"h0 D4-f8Y?}کQtS4^#vpX@o3Ƶ4ƺNb-KU6k֬ BÑ*4b<:f'+tsM>xYa=H$E9:֥Y8 p AsfZjP G=W ?rV:՗ɠ^DK6S!~"$P3œhѶ1пcON-3D"@L`o`Tл>GYV0!zLJ?.Jp@liʬkfA(;AK7wӃk}E#ζ}%JXG6|MIx**<*=|,@:D\"Nǽ9'F%đlbDo([jBf̻ #.oB "hew@^nWM.$ M;j'e?W+卙٭-W[jS`o$kXkd?2G|/&YWT"iQظ72E)1^|W m֖k?[iA>Yzms)T]!o<2%ҧp`Dᅐ_wxf9-e1f#0g3\Z 8YF$K36c? b/Aח_ nJS Yw:S~s=ku1'R YՄM/&3! gZhL/IKCr`wDS`_d{?]F-fJM*c}vщX?#pZF~#"uyQ(QbwG̥/ӗ;[ `Gòf1ܡH\TP~ZN헓>-M}lhSKLՓo2Cv2&z g}Nցe8|hhDA kner<|ġc 9dzGU|ㅣ[Yi"vꭶ*_(Oz(<ڛvDUA1H ' EYtG~P2RpCסYa;v>tzFcNGHdb".g 7O#G"3ÏUQ+3$ʋOVPV\*Fl ՙ$sL9/gc@m+q=K6ܷ Ge^(JQ[lE9Ϫ%9݈xR:|v4>˰.H-*/9rI\O܈$63l$0Q, tMԱrNgan]:Px_?>i7x0BⰳB豒?S"OsBg8Y[X:!v6>mq*~kyy.k{ a!DKx>l᰷5s*]Ρ6*W2nV0u-180)2kkĸx~lnt|{pʎ_]}J. S7|q`t?lm6Qr^'Q P2΂3,hXĴNrldnڊ `! '#1c3n.DҊksݯGڣI<CiE sº-dNx-H5d+鹣hTM r6p<xu:֭ k!P0՜G^UӔ%ty$:O&5i0N])~6.~f1LnKFAЈS on&I ED ~ލUdsM:0էݢ!*!V7(:ۏdj o}ڋNJ_{C'F;b[I< }O' yz_8yo<m7F陘V3c#@*a=OS3`9/M(GHk ֹvP=;sՇӛ7|ɱG1 zkˑ wF 귌Vh#quҍI[/ >rt^W㿼<=cAĂMFi}HL0kXҁZj=L,5 UFJ8M衋$=^qr)#L'q/ 339O=}cY],b0Wɛc^JDqG2Jus , kM҈wp\j@]aKQ\R1^mU@b~:vIfW j3cKrN8:hQ6?<<̍%֛9LVК {MXh@+%'X}r.b[EwxzpSEo=FNú평 x9k6+RdxH:aAWbmwb6j;%BΓxGv 'rջP3+_df]+9O:_w6(:2:P(007^z048Јrx'Sk/^25,vHC JʮY^xfHDӾE6PJZ{Yh$ wym >y@ +Y$wnD_P%VJ-`b =Z':&0͂$ꖬu/ &x&Qfe| fy55a핒 *J}%ʾ[`tlt~HܻmS2*. I#Rbxʞw2-PF{9M%#ԉ%vTEm\5.c#d̦=&<!H`]]Y}aI9 #AA;9N֮8S~`t3ʝ-=.rLr-x4Tޛn"D(G̹~GNAҰkްXHYb'ԿZn Nt#?E&U-Y28K;t˻Lj,j2iW".#`w"ԚH$;RlKEz3ׯbҧlp]Yjiגs<依L1 D\!V͇vR $Vt+{1zG^r1Jz7?= pW@=q ,u8)OX*P{_-!b-?Of؅^o[T{IBZs0/ۯMU u(,aĠ5b;nK+Uk r\:t!]x+2-iMf.N|*)ܹ׿&&5=V9dveshlF̖R˳dGY!!)&K}ږǕK+ͳiV8IN-4okחae1ܵtmDHCuPwFYHlcM/b#NlBo𲆵52c2>6DsޅIk#2%ӔՋQ@*rvVϺ9 ^՝>&`:Lnv,!=R/ f,l)=k1W"!R| P?c.jd~+9E~=W'F=D cv5cj;rݑ"}Kک+e h| s`pb\5IJKucC`A?TEw u~i ɪZkySɯ+rQZQo~We^+@RkO>c+bijE7G ?H-!*%±mZL >#Дo ~d*1ytC3O)MG,#K#3W#7yAKa ߮NsHz>nTɦ^b eP 'r G!8ق)m i'- Q\rVSGeULϠαV'*EۛX;5(|jWeeW{&@,$&! 0vdYxζ+em.Q=7STp-iJ1F1T$E 3EJ=:_Ȋ*GqIә!9a&ώ)h2rC|v#'  |C_QaRcY{0շ͗_2X(׭ma fsS,ᦒmBUxF'jG_WD78:1.XEʭQx&rN)% иīg/1MnE;-F=WuPsMY,Pt35H劒%qIK! pG&8$XUhoTD*mOA`kTG[@gզWը< nP ;L xl|$U3l q$HVertp Вs^JAk>;*הF %9͈5QF Ad#0$@ԃ>!9'[q<$Mg{uds}R*`|T59/($Y_"5CN6S3!+zj#F' s7|j{y p?8|,mnݽajjб;p߿>$/RϘ̣2^5d{^iƩPL=oڪ*rP6&Ucpq'"Gћt֙ )lfp1GK-JF%~+HAbfe2s6#-#9a7v&Iz0kۢݦ%\O<3̣ϱ%s(8Cb3sbTr'>G7k6QHCvDi>6T ߪWW앿Z! N!<N=MJH=A,L VvQ^|WEzv T ~QǑUf֙?I;L S058,ObS- Rszٜ@ sM|!'dcd͟Y*UKvG!h.3Q;W?:aXS*"-5+_w>Xh[w2jc N AMhj۱wJsʷ+K}=;f"Ug'A :@#m#bmIUW13>첮}Qr0Sޏ]K͞5>fϋrm(@fcLT2/@OK _;Wn E/Es)?G-M ecG)*1]82+N xwQP)N(6U@ riڥPs/(b}9Z[ToM_$bw.IP||*Ů_y%Wg!jYNj^Y*ٻc|4B<50rYjVg\i_+I^M(($S?CTЭEz=y Ո8윯B'G3h43TrHcz;l6o. _L#@E:)!L'Ğ)_|Mq2ݖjfxui 1AeC F/NJU~%û1}Cm4 CwNȴV(x i>ԝm7|:y'SkJ!f#:dœ.m{,rP6+q:<6lUt"LfeLV vH:NGqEy+ lMm7+c4e-}ctg lTudJ&hX_y],ad#?""˸yfOG5NИh1NjO}_ zSE4qЄ] X*C m#a$1-0"`Κl'*t9m[΂ LK k.aoprmAn=+7D{/vGnhV(BjXvU,.3a%Z?DC~N`Fm')/Pg/^;~]X4J"{Ds>~nDģeÛlFᔱq^`ZDF\@͔α=rZSLwwbі&Wŭ@;|0~AQTt=eIld9)8f;%|xe8{62D!I|%p*Cʟ]_)%M*H;@{цuM(srmXR=x~oy@u"Ttxcf#MLlIIӟad|na5khzfV 9#EXʍߏVskt5|]|{P]ytsmk!I"TuM֬ R(/f[ɐn'Y$[צv:\GڑX)+#F3*K.x/y.SHܠ{a7@6 ӎgýw%VxrhB&ES4Z&RhJ7 aXܵt0QWDB'gQ1|Rnt HHR0fYJ/byp%B$챮x񐋢\ӻz^:xod8@EOrsODljx=9risGV9˴`6\^-t@Q$*8p.f;~hjJ#6!|8F;C)V˂LF8q8lp3H|o vؐ? t7tQ'HeH.D~>Ŵ3H UN˻'[]xInEcvcaY!*x ۭބ[/p.'&tz.L -:"T`?GiW+Qw@CVǐYzL hJl'jL nѹLZ}~?\~)<ΒHYK9̻rlߛ5 PLnR3Y9[jzx#R@2lyZb|AoNhnq!bgɀp60b"P⪚i9ۋYs :VWTK_&1DI.פq"G\|wj\=eם5i))%轳6#V0cM(,dq VƇT$+Z>mK jB9'k3XD,4"'Iͷl"/2 cl6/bGv?X$R۫ ]dg)a\tYIW)aa# Z4f K1x/8_l۳}a6&) ɯ?#t Vj29P-Nӌeo %',5 |F؄`\{۝I /F\HXgNĵ[vՐ9i|s awE:ჵpu-ahž̬blduy9dq 7Z=~,?p%+c=}E`ٸ\$7&؇:Iق+5X hs|\v c_ZJFP@~2|m:e#"p c3`^Q-[/(*~;VB Z?h|oWT1=1Pt6^J%1Lvzɧ/\K9f4Ī ?Y!Gx,)w V:,Or&jB\姟=[\QR r8D.z/GНN0&7H~Y^0 @)fv7 a&]LvKs30ݶK)x AgG=cRL/9l4XOH˽-oIPhxaεR}g WcU6TFwz4x>>KP<zxl,+R'y9FM}Sn| wEލS['zK-TY zDW EԃtbIrq:α(A63{2(W+` i!.*Fl.* # ?0±[WqXJ :g &MwZuYҍ14$L՘Я {OjηXA;ژUޖ2_szd4jרD%[~0WV躁 (dE'$ S6Y<0j]J +!| wDFQJ>QFIg&ЁMy[V1YUdlROu{RVZ^/hG͓JޤEϻPhh(B~n(ygDs#!>CłHmW{ L(0K.YG!|:R#725I_&NϿ] >PúWQxbOXWDr3AVw;<|v @k{49T&OP +fU>ܢOP%*'ih>J^.hwiKBy̜vI~t/6K-WV JDl@Sxִj"EBrL[sEseqST9=-Ԛ:-n7"z2A[]Sn5s\_m!y1?U; ;-Op@Q@$'Yy_fz,BknoBb67 H QI^Lѷ4B=9$+'/By񴶲jKqllZ0_49q;7Yiol[,w$R6R+&md\ + O2 (0\/$ϗ@T4r.#Ɇ+n][4C/R[|`֜ȿx? nWt|GlhIPLȵE0KQO!@5Icqi&(jËZ3$&2&aD =1|q־aV|s +M 7?]|~p L#GfD=bfZ_Gh6`^{n7|ΘLq2ݾ`<)e3rXN)NBaS~~,6jʱ+9Xz#إ/JmV`_ /-#x+&HJvqR5f͗x"Jd \?%`XSn@QR8#q+bШ>s_f&:5^J#.ow7`9N6ݗ#D6#4& A&{1}FGC75Tb3`\  R,P_hs?E!C1J6V*?D1C7 L?%BMgr!%ϭLBqU+RR ;|}4\]QN.\]L!.46 I?r+4Z *9] ?c6ZsZz?tU)N RR<\j#1SSF=_CL)$ɝp@^f\ ]{N`NŰe-72\*g4W4tdc#+? /h~Yz idB4D U̠3 ?58W#Fw[Sz@ MMAEsG@޷?@^'T(QLF}-GwZG+DSG檈C }}/i7qqi-` Oͅd$#]2gw[[)L7OeK B -oO9TK ~h~TSV_*(;>/ɊBi;/zfGƇYG3UJ;>^/Ķ:?J7RYGޟrsJ=W$}_^:b#ں4'@%<5w} z )Q.z)_:YNBr)~OL]n gC QZ} h+@ CuѥI` cz `(n9?R˴GPzߩغJ:[_PTv#[;[T F\ݳQ$f5+.m|r%".7J%IK dotv@u NS#!unw乓kD4M;וi.aͱ/J(b-ZvNJ0 koy>OxO>0Фqڭݧ`z&@͡mñU)^'F%\,ZKz0"~x:6)ɾݣ8AGΣ[~e q ax\9Ahٶ0 KJsѯpGzng,ʈ a 3=fNvuu6, zC4xµ&7-JaWEnޫIypx^Lx(#sҾ\ۂlL4 [KNi\roY$IE{߉jV/D㞯pߨcL-':{q$ jltys1Sk?HvBfƞpZc>e>Oʄ@!p,{ƓpٰԜs+[&|U0,[#;./fi~C!oE!fNYF mFVcXŨAu ]28`׶z>>OƸyS9FޅD-ZMh#GL, 5 w#,].fQ*o.V(_TEꤲ~m NN?ut? ;PxEq~΢'X` D]*g~TNW/'Q ůNeu[w֜;rf?, f+C18BUD'qs( }>]pw"̇<Ά K 6m򌧟e2UgM7#MՀW:P ̡?LRi4l9qi$YL)֚+=g|:`|gJŎCғ|_18lK29- gMǽ9.H3hg*U&0`lC^3~_m$ aV$Ȟk(Lb{?<)Q%@i1cdi}X/;YWM#rA]@Z Hč'z]U6>Z=(9fWt F`k{SEc׉a.;LkJR]99_;`#;^6k~VH6)p ':6G0#Ij7bt@L .Ҡj' YՃ@gQ#KIh"^a"+кXj/%Hh{ئilGvk&Aڝ8 IN ? >1t2C98X$yP~r&!*BFʏJutys+?5 Ȥ}rL4 I]qw @ c;O#2^})KVQ 5\;tl] $@igWkQ,#8xS ׫SQF=CT'@ ՟-.Wu"f„ " ߋAk21?eqz4JeS/ݜ9d,ZeBz,%(ȹaUZ Fxf&.eDdZ`%+|&dZ~ |yU<"4L#s'3p2*}pC D(%\b꪿LkZ 2mKzտV)3Jjc3U;XafO:.P?w2JKj0 .7 W"^!Ky*}K}=؋~2-V'޽,yY]py+*KY!qV(vBzcP+C]! '@N%?.OE4YoC /216OB)I~5_LOzO(&zAhGų0]YyBVD;ZSG#&1{١^e塕 )'ǰѦd R6El F~dw HAjM${rj*3vfYJ~YZ%k@Gjf:|y1~#Ct?]cնzVUN=r tʭ+U|GLҜD,ON' !0g~}֎b3?W :vXx}ѹ-sw؁g {4M\qMi&Ё~Lb }"̋=B$T -4iO ($f݇ʯpA2u|Cc%;ڷ.7sﰇ* uzޛ8qa+DxYnP;m|Ng a&Jv,H`*V=OՇd{w.ԢVi E{r|2D9檷.`w7P>RhwLFI$GxZ;!_`e1<{`mU"3zV@ҨPZ-IzWydxYmu)FI1rID#2~F1mrUyR*!Ăa_Y%O* x*cj@; zV]p Wͩ6CR2Eb?GLÛp剫&;!g :uCf}aW5v=l?Ďϕ 0_ƁԲC#?dטFix%yK"1\kk9^sQDl7 ɁDs:a)F(4\TE$,3=g@1cHa ~#bS潰@HK;WuݎC|PZ|`x[rEA '{jLM3 ;0Ct?ǚ"^ ħJ:56.@ ]JNhWPɵ#0,_~%R-ZDe=i?va9Ʊg'Q'dپ0ifd1MCgpRghORw,r)D#H3F=BUd@c2 @ǔM?4Kǜgn.EEL CLp^u.RbgS4]»1z4dY W#ܦyK?xD[jG`:G]z+$%H-HZ;> d>U'%k)R [O_4q%nSv14Ӷ*"-<ϣ(B*UlHF1x@'o:b9U}؅A:ZQ]otI_%BB YX!\2tDT,s `5(~Fng?j VfhA`Eڎr%L+~}dδ2oNL? ;]4GhU#mB&FqGxdC b 8`c#HP:(C6 ꖈyY8eާ<CbsWn-3I`j#]N TOR6w@{K/j YD u Hm pOLC`$rb9T(ô_ۥfeSc67 'd+#:FiD=LN7?w-B%P]_ @Ud>'.LT^nREBܻ8MPd 3kTn=eUotϥ-ٵD%o I[}֧en,zRAL ]y9u[d.Z(L[$_i ,Йpi5O`=] 5ǫ}KAgP3u^xs9f/lmhz ,͚ $:DvdDyIa&KׂqW0[Ej[^+D`^`Q#NÛh,}<RTL\[z5|-+ƂF%Q;㦲tuq&Gz¢d6WtO_̾j3'SiA k?4ׅA*þ9>e^az\=:p`jǼdW* u>"[Dϙ9Ҭh[gM7tΫ'ם"98덨NJ%t{lF?b )> x`b{2rځt` oͻt7CC9#Be@Z%nd%ߐ6jwa:^8P5YY]$DKF*?Gn3$xp?0%UAG*8cmfcX6Hìr(rF^sh۹o[6Qak, BB< P Oki D3ɲv؏vt2Z$zm!Ng&,T6x/Q0-< ˕I(PM"cX Tպ9v*724^ *:r+lk,]ux` ڠB oJDiZСI(d"|9=R `7ƍ)=a~R!֕pekB*obon@QBcQiL_-c,hpCU=k ~o!*Iy!WڿkG.ͺuB;t.Ļ]E5T_ܓ] X& vΕd {p=o6u_$ 7Df4B*(@+$Ѯi/sETxF0^ +54N9~42(e& Ij>%ʛ+SkD0AIѐdnM\<~yalTZHiضFgރ_^" yD&\ү,a7϶&@xD=kK)5L̕+{jp #qwuԤ7ab DLTqEG)64~LmhjB@0yAGCV( Rׁ&,_S'S 5D]H!vq I4Jx)]{?Ol29ږnM4)@*hڱ-M?{EF30F`36[lW]}ϸ$FDwZ].R 9fIOYY t_\0m6:ɜb&1ӕ*{`K Ӽt>aXG)8!mU=u 3cӲs'ioHD>UcOYj^N Ī8bcAL7fq)[]}&0_CӀim' ġ0$GIcd9G#2Z #MWHwv;OsO{NoTz&9yp fߘ5 v*ĉJHX Zb!qjYgG47T٢y[PDv9Wy,6A$aU5"H/bÛSj;3Q@k4e0 sU@7# BϝZMq&O+o怸0ٍIix .Kx ˊxYvx}|w/~S$CLfpHlR<%Jh`.H:ݓ]`ɐF3WLwĦ/çn*ctm9JT8hڴ iXSPbcXƧzʢY*UC$*]15sL_ O9@4-t#jO:ȷD2ɩodC\{`)`i pzA Qw#L:#1^O6191َ{ڌ8wCNA5~Q0͸ml.7tT:$)C/TD݈m~Hf.*hp;ivptٸb%ř<+NzÊXwz89sZ"܇D>jm@ _ē0FM%w*r}Vt0 YV%ACrL67 VLȋtݘZq/S_}8>&gh6)Eߟ<$? &0S5cs|Uiʻ6[YE^뗌{bT6lNtΗnMB(z>!}|EH90$ _ec,WU #$5++C(Džnf*j1^I=Q.׮%JލvLbp.Kll ۯDK_1dˆ$5&imԧ^8SE-([}< 4 A݉WF3Xޅ` -o< IyC{>.:DG)zx 0ȳdL|[ G~>%y_#gsFp7?.EŰc HGvKFB5I19γJ'u[ķ9K+]G;xڧÙÛy-4Ќ{#j){T5DwSGt,530hCrchZ_Bt z VG rGԕFϜe8㑍(Ÿ5U}"* j O;30Ҟ-`%e1{?b" vۄC2,PX\XMIhֳWǬ"Y7rf 6uoK0|,(QDO<M#@9j_ =fHX*6I kޤ5ϤOd;!_%'ފ1oM]Aizrdxz`Smpw:guϑOV쥴o)nq8ݗ>㣓`<9 ͬÊh":c /;M'G6*i.{zfXuYmZ/u]hiհdk! ɋ+ɛ0>NƔ#!qy~'ߑ5M/g*Ē -a 9ޘ+6y_kWCln:Z7 58 8rbD,iaQhYsN~ͨvKW}Yd!U]2RsR ,?{S̜2[Eηy3tγfɉ&VBlZ-"O>پK`fʤ@aeoN:yr!Jc8 lwADך ?5XY^eh{x0V1l!GrVR8x{/ tZpan DL)Xl!oQ!vbԂ)K(S5\;ydg҉o) ɩNhTÄD8`$Um3.+8:i$_I?J?ӵĻ7.ŹγhdoKU #_+nWkL(\> |D=(|23H]Du:IPDr̽5XOH#Biq^>ժhZghaaWQ[^:GK{fBQgP yٍ Ѐ>=ʻҠX< qѡ.W-~RqbXH{˞c\u6e)I;+$ml^N%R䏸{vMمј vd8XQ~\ȀUŜ dtk؂ڿ{7u%Z1\.RJzr:N$xZ-džd%3wX\ `f-1DD? pߏ5b !M;KksV'hfO}MY)p"ǥO|$.A.kHlCso>{{|5#a+)N'ǰj!s9mm,Sf_8G@YR{p2_?Uay')Ѣ1Ɠ̹*jXʦRNiw {ݝ䉹ms16;B:mᅢκ=R] xA )I-UV]>b~Qƙri؟j)nxB0j=^(+8`ɻ1G~s.D,f>Lg`ɖg%@oo f_(˒&vy: ]AҜ~?fHEfk`4GiߧVȏS2e" c>+-[hD1U7R,|L+8Q#OJtbEsB#=6E*3՞n$bҋs>q!^KUE}d^ O3ujx ?Rv 4az3tO`7(RU-j %7\ ݉q%%J^h}Bm2JHB0w|l6ā5Ls6- b)R6RqR;E=lJbz"ґ]499 sfu1dX!N-LPes !1*.ը$N†Nsɲ$Id),K9!ǐFFvڋӤKwI޺B)V/j ns5+QDSJ, \zm8_j[F<9--~qpUO!zT+3_atAhN䔭(ePIA!סX%VtNz _hWspq{ 9a0\ӻMwBQ]_ ר-R$,="4pr?:0ckm7oSaj 3!Rw58_y 3hbBD{t/?!C߫sUJ%Μ4v/d1<&X9GGl≘Ɨg|DUEՔk^l,UpC2^[[T1kgcY;gιӟd3:7)yC"MIxywy}K"\F z v;ܰM*;|=/9Ʊ6L6~P[)JM! ~K$?pU%i6].?&EM %A|j!7~,`T>UGUiױE:C9h֜|qy3Rc=}ӚdDQH'bAe_3T:.ZКFRu2!YAaE;nugb%AE.. ο#q&l^Q|n&ɨWvsc&79lmB+ R [5XӬ0D,+;]5wѷkA!j {<3 KKkANޣ씭hiFuAI}OUT(U6MRPebw5G;Oߝ\1W%n0i&W-B)dB&ZSʦ)>y#GM*V1ڿ1>e+p災)J׳ kמW*lJ&%Kl0ud%5(T$|u~w0 ,fM"G~t-o <+pB/hhC+BLGXq9 Ui# mj}jm%o 9T:Í.ⵎ.BuK:ttQØR8E&N^Й4FD w@h# b0 CΈr'o9e1#j *t.KBEZZRQiYecn=ɭ\NhMȧ{^ &B.D  8X5[t8<; S3&g?(k1?Λ]4gЄZRsfȭ tW&3į`>OTP*Zدi=_l!@Q 1^`#ru52Jw=K!ϞQٌm3bIm9,G6gZoJ5&!~F#]X'?Bm!0Hg ٛ؅1|CX}FG-~hXtNg[F?nf"6FX#}nu*2U>rkr^ 2z{j>҄7ft\/}GXIL=8"sa:qM Ph q)hğ4\XVWJZ`ɶ*S1B7I H /܈՗b[) բjFRXEmYj/wkߣDyE< ^Kn#ACU?xvCRߪlMxћY9+`FњlhLj=Z1ҟ1\{hT=k]8|2T\"}PIUs=G + "`Mps\$+NEZ!kn;R[~mD8rhmDw>~z#Ymk`u;%Qqxk,7GDdisiXnѧ37bMIQ MU=ʧF{'= N Jk _@ 79+I ,j2c͔"Nl5'(omJYY.c.oT{h m6nZt ;L~}ӏh[:#OGLw*?)b*<ZMM]/b{V]h!c׫J>%2к@K?7BLNoG׹|\#&> x)Rphty&E S郃32/"T1euM<*7"bbΛcF&N`sMX@J4XFJ=l:FӶhX"N_o"j,/aԬ 7 5ylV{$V*އwzod4V >n)#7Ȫ&넼.={e.0:Hv 6~0pAOgaH\9v|މ+עz>#`YiUA/FuUTFXi<Кؒt5/۝#Db@x8625GI0 qs?7E4҉zj58ʮ~ġu(lbyE "Vp#:ᛀ"8;gܩD,/,o,>0єZ_[ۯ3-/v WEG!g ٜXC~|Uw^9F{C ]Lܒ<̉iMeٯrx( lS8dZX`k.;z VpEAkR12l،ejŷ~7m8NmE}BmT S~X7&9d H]}iwԔcMt}}fcٞUs\}^s]0Jϲ };&\?^ )Y~̗Jjm&sRWdx-(,qN .1Y%0ej#Q>t) NT Zz ~o5WWhg-=to 0YRP;@<xEʐ!JҥvZT$U9}&4ojkjdVƅRhVBA|Y9*E&|O(&e\cc;Y@%A!i?7d 1aG9 @ pF!pѐ]`c%5FъF-*:LpNЬyo81bcj5 _L]L 678BG3| 12mг `V|GaX=+u~yL-^.QrR#doX6S'τ$fC\#;IĦ`}ȕYv7x"Etۉm|0k%K- ]}b.B39Pۭh74&J!v63MH^Y 0qrо`ih@.ݫ /5YF=Q1/PS&83hFZ2ʴlְ0UH`:uŦLp)x?z0蕌&$4L h[ԍ`;.5C-&r7ƲHm_r#eF4Bu[e~Xc~o}Na7ZiF~FeS3A ້RM1?}=:jGjRylwfa!w]| .~oW.UФPT̳Ǹթ: |a2[Dg7H %7ӠN@p^3O҉Sᠥ\(ovQ 2I݆j3*Ú)JOjtݑ8sC| 2uP>_] FţqVFBَTnU+fiHjt&4rCSlG.F1? SiȽSC;4Ǖl9wjl)oyG*1aWsG Xdlj!~:eˤEOTBԳ-+2\J>7hɤqMX&17 %&%Um']vuةSbj G]s#J4u0nR #۔3?Ko1PF9u@԰Gd1kh iE[7/H ]rϲK LS{ C-RU b IHS= !`{O Ot\)?I8QJeOj"ꝯmwȶ%IEgUfZ7BKs3c[ 5.'s Å C xN(9Hatl6''Y<2:Q;az8dql .sVY.Iqfǀ8Iѷ,=Nͭ@W5 8$@h_]N4)UP(|I:D+9f*@9%q9Ięb VVk40ҡ392:J}yE T"CH4x,|0Pg6b5O+1{ I"N`q1q~dKJV$0[(94ּoIgo5uwO0" C8aw.,mmmݑx QO K#P7is)>P]1LE564}QA NF=IW,J6ª͜;DݡgXnSD2CL+J8EUB65)Q=YG&X(ν!n{ncB@`sk!v'Xe]Oѽs|wlqY.DZUm9%=QW1Y umc13BcnmAnu5E?iC*8}o1{D.t|w|l-f 2g!|EްrWmu}T5pD?ʦ0e.Л&G*Dίlc bbRHGem61[|Y̿Q j k 7z !ERܫlx8L 2-ٸԋك `|8= mcw,_Y@ŘN Kewrc%k]" u0Ԕ,tLhMU3²ap[525xq+E6Zv:GQlZ1J!3w Htt%Y!"pͦ(0]NG/9D) )(QZm,gl;OlYK G  + (zbUk4 ٷZ.*ȥ{]a' M+OY, QY_tt %rb@OHWsI§{Yԓm>:cֵ08iU𣀺y;ry"vǙd}rg5 泱h &^or\R 1EDH t +)1@#X° }D $mr}9&J5s @B=q™VVA͉2`Ha{C1}Teߺd^ kǥNݨX˜ImF՞&i-{(`ՅĘd:rpz© `Sm^wKl S(_̡rO `ZcvXTRDEV8$1v Q4*B:)Ws"ے9Eι]V"Er2dQƤK 6LQ ZkyBȘlARȠ"b]~kt{j@pK8#bz_L؂)qI] ;nSmmѾM4pcSxոq.E"²LuvKk:Af@Xttq4RH&R<"Mrgk?UC̼6ǕOqF5Xv.]d*eZ% }E9B\"|8U* L;ai)2=uaCnոp5茚|o | v@vY2*|abK >Xc&AH[5t 7W r$i(5ъ/y7志pؐo+?-I,{=P\EjB듳q'tÐvyiGKe,Z? u\Cwp Z#VLM+čD:E"RG׫<NFtZxF*UO^_M"RA?%Az@Mw6 @7$agﮉ̟f32@V{\ɀ)b- s;UmU{\]A@D@:_VmMx$.y=6sG/ߑ'$a)r Kp9ζjϼWA!XKmu,BEkEkYYQfjD[/ <$,Rl58McvxD1=wqīŚ.9~bD߁ruh)%Xvc y0S{훝ma2we\U5N98㺐MUY<(aM07pqA*ak01(tYY&bz\.}x#x== P@a^Y돻u(IgPZfӏPf! O{m`t4\n[ c㳧ˡAc3i4 (8-%6T9qؽIPp$&f /mQfQ1tZ_FQo!+  Qw!Oc=9P3 _o%%(AE?Z·߄ܽ]Fͦ@!O%&p3kǮpsL_ꜫ7 Ϲco|)'(d_ nHtIb7>Rn#Sz|#ѵƋ4 ;<ݏѾѪn5e_d7lxhЇreBCP,N[1(Aa|6!;/y- s)a %%O3s<%G>) '"#bD/ ri gL3?ۦ)Z\jQCcIЈ;i,F`b^ik?E~ [ ĢW "vv 6 &VӸ;`.@z7>@fX^ nXOKӮa'5qHF |R)OH$ scC/easDdOAK T7 z#Nެ÷ uyyNO(ua3$"~Rg>fnaHa7b_|Z/ ̷ė=ZBoTҩԡ@^eY~>XeгPd|ũ3`8b0ժ0;ϔG.x `eԐu< Z)ŞƠ,6+`H skƠ7w+L'JX*өm,7/Q2Ԇ@' [FծQNwNgI68f.—VZ9U{}dOY~_q@j}UM4ѝuـ¹JUy'԰‚Bga5Aš^AU\ ϑ0&rYs\(UB(]Gә['+0%Y3kHve>SjܴG*& 4 NNvvE,X{:T;1` 28vr+A_޶Юn\_\パ<ɩS4ld (hf_1/wR_OXۙ.,QFɗc~D^x3<X<5$sNa`&5 K]Оq εD4]nΥ gHMU?|6Zۥ|%unAz8f/ވd) 6FF*ZN$ 7} bىſ;a )\ }]͉#`|4ӇPb<4+Y&Yx+6\N,P2TǯvLhtvPb3]E=Og| 1}ۡCБp~e)1'"\vdF(OElw˟F2FS_#*vDS<ߌwד|oCx23F4%I[-S;j8z}gi:@!+>8 rs`W`6pDΖp]웎۫Fy{Tbld!"MtBGJ9NV2w83i W1)XkepӅ-6aF\Ųag/Pt2NUu $ѿFPRaV5f[(--r|X] Uv5 ϙ7DM t$5D8=!\q@:/e~8^!?k ڑ& !:a9͗Y<"YaߜK;F8 EU XIa_ Vzl !&Rn7-Ҋʒ]v+ŁU0xf y/V۲?4 xሿ`v JCAŎsόk^?PGBWuqB3u}_J%h 2`Q5/+uD6ՂwUZLsd_lOOGىS,pp#=}!͗gmfW;5M k'׎hΑnڬW CjWYSC𻑬a|WaoAWOnt἖[lT[Aؠؗ^"Oq[F@!\c[pcImbc#7BfCd壱L!J]E!A.O==s`= W˷IVȱSj9wV|ו3%Xم6Cad_w7 Tg]0ُ4%lhEvsB!), sJy݂J7շW[g5l;rx@O Ky ڵimx}蟈,Ҋe^1Ϙʁ `Oi@[/EVJ9ɀǺ$HU(\"qM>wͧ\|]T4ٚm0O Ɵ^>YLdqg۽UAHPMH_'˨]fq'ׅQ w%I8^J6},[}B'3;F} tlA@Ohzbki+nD7=(a_ ЈYUˎNQj$-=*ׂ1-҅a\lf:jEOyX(vRTzĩ;M/?ߎjL$SqT ypG8' )TEmJ\OzK\jCq9Y`ZzWnnиc # պgxQϓHH*mNܠ)[ͪ̍LbQSpExB ǿ),Y ɩGݩO쌎8,:>,F?!h]Q2•sm[_6S|ÚpRp",3|#_#^u)V):rt(xg kQ~rוf1JB#F(RmTM ٺ%rpNPfά&v¦B5ZPwdd`=VI|pu_;w/&Cj{*udKzp6 . З=?9텄 VdGz1րS.# J./ΕyAU}?5e-ٻN{[<"pG#+ C;f*H5)sb_YfGTSA%+b1觤 mB2i}= N9!3!}2.r匊zkDZY: hM< EAR)Xt.1iVҡM F4dshޫ,% a*2nutDpp G6"`ߒlIM,b4RiԽ{ e'M[AqD6Y4஭EnkM keY&-CoaQxvHO0dN ]ҷ:8[C:gEˆfFs Ƿ.+#o@\c*. `kQ%|sQ υ7v8}w$ 4":m­>2^o+Ǡcn:Q^ 冦V|u#M6\ltF9ws=wu < jbJT= @MkoB}7;nrW1yo0`F0@kHlpFx@w ]K0nZ*V(EXNȘER ;Or*QWX8k`,ϾQpDA\ie$.JcÀŴ~}od4jѕ~ʜq`&+|= nR&+ ?~D.EZ8,Z}π'J⿶ +u"W*O1%B~%jX59lk=՚#DlkEX&cqͲI8 INF5~|'@&%W L=cyq̛nl ?* ZyurH(u==<]B+o0F be'vIʿ%8Loj5>fC6zd :k~zYO@xrHqNEvrFPhm1 @a-Gh9pxpeCwa =|T7|';ܡ WxɼtLQш(dqq%¸/L|_eQm>5Noea{r/U9Ti$J&'()1eB*י~FVw,U)͍nˋZT&g)Q~(zNԤ ^pDIq>v_PZڻ|+ { $l?jJʥZjL`pptK>+%7,ړgA< 8 O}y70Dydۀ?c[7si|Yf!0Jx3:Y.L Ü:1b C(=ѓّ`߲r hu{=g۩AV%=UZjiӜiu.ԙTb E_Ϡw*я"-B]A(&!ۗ{eߤ̄H(laAgCfi[T=:2#t͚NS():[DlR띊OYcִpČ%zKe%}PK7 dyt]@Պ!b𒆯uFIpLݫ"R>Lסz="6EBf d$;su`T>&d? ,੟I&¾-`ls}'\mxJLfhpm?>ϽڈB4;a6/U L;mWM 0*>q|Z)q>se$$BA:qDEv=5(C@rJJ zn7poL͊DP\>COsEގi|ߗ_8 3LbAL8vj}Ki3V[obKe H^^t(jF3 WlkZiabԲ1=4rf}6Ӌ9:+o^/o VB{,:~ _ѓ7Ɯ]$Gu&LdV[($YzЕ1ByZQ+G拥c ?;4JFxol.2*!!DyN@r85Q݁w +L,X#\~ TXEgl+ 'hv= @e߁>Uhݴ7j]H5n|ѕ^G.+] (ݰ?$mݫK{YSq6W_D(OE/ʜ6[~|#4߄u&pFHH;E6猑Ű[ِ`^߇ZGh,lp#fɈi꼵B\8w2,s#sZfW*Q<\Z :,m %p7bi$c,FwhnbR&OErnC@G"'۷'YfߙT:mo%0F#*NM4{SInWb42E"2?d^_:KL u2=䪯͚z&*=HYfgao S|l;lYMb-1ya QrS)}UF-0ԝ.uEԗVȍE*hy{3 0pZ!R[cxG9 N-f՜澱_C#_`FIfЧUUj7[t f.yS菹ԖcL@eCl*Mi΁CFeI:);z t+0 1wk]"ֻQzoS?뒋$nb8JJ܈ U!1He䲐8sʨh:s'X%8V i$Zobm =׎K\+$Jσ~]@MEUvs<zj+~$4/TFd3`KxwDMW+6,'h;"k͕twvwCA# #񕬼8}hv^:AgJAIr03]׈ 9h|4d%R2bv{UQ%}'h -?0]ު$%TCD buRkar4}pow#n;c[d3`󊱽 [MbB?_pvDH\R:[E$Zse&,,[D݂ei| &sj4)Q5ET \Bq_lR-Cۄ[+,;xפJERM82-uQgA 9x3ߛ_ʓ-rZ_%ZR#3`;qOͳeSyG+ EzVt CčM3/j Onz#(H?͵rDO⳦]YTn 1dY3o3ybtCSQ-nW5ld&QGXkoW@~@(mhe2ETj!7{Tv`'{4%8 Xr䭴[U+x\)6:l98VHj\vsF҆"‡]KJ̎IX1 ߏc@ruit"y*+$tvH[w|p:b⦱^ #>j{p%@\.8 3SV9Γ8hg.jMI#t]<\|s!Un{Rtճp3^|"Ue834ϓ%+N.@Dz*u7MaRI<-od]Pu|l. {+mn3oQ8+F\M L"Mu]u/*ZFRxl%9sm4,nMD)-B~F!x,K$#41s6b\=*fċMu< xJe7_x`3]lJUkՁnՍ=/%sWp}j2|cTtvRr+{) ސn<y2R\ogbW\r;OHb^wKwH`pb~}Cv0~Ӡ6_$sYx ӜJ* *Ԙ>8N~^ D%>n7M)O0 pYVU shW !31P25 QgWl  ]uk'U:pC՝̶ͩ$%`UIyB_D:6H,ǧe͎-Cv/ LE5>W7zXOE[~U }ꀖʑc %\jXp'O) O.S)fug,`nt1\Ä[?{h ݜ f/S4(:zaVB*-kၩBvOJy꾰V#\iP"LʖK]yN>MV63F?êA>1uNXk"x%Nwu)oAOZ˳ 2$U6@tic/VurQ*e5ڶkYݭ#47x!&1y]F0 /JѳzK}IkDǠ1e{/W~g-ӭPm')cP?Ob!imf\)oY"<:85@+in|C>@:'>mQ?U*f\Xr_2jBEXN@`_e,`yjx Yb_im~44x2oAKU(~ j7WTIp'vLL+ɹuZGYXq4e]ջ>O%/._&G~kWbAhzn^~%O[o=\0{3 P(U3̌fDDz袯()]vfbm^ xM]SM | ֤7ΟVg~hEГ<n*!+EB8эSy6Qhm/jM_с-\WP-nyqZ>Gk~URf*HIR*ܭ 2+F}܉ `{2r/9hB zZ{ڏW˧]]ˊJĺ[{&/PtPB/;IvEx*b>R^LN"W[b3mfγմќRymmHf{1\ZQյDOJZEFV:9T0q>ppzQsCjYĵx"R=CT"= Yf{~#} _D̓TvG?mAǦrBinY vyi5aHhū͇czG1R_y7ɵ5*zPq"N#_̲SFV.(i˰IXh3EsJ<ET`uqNQ5]fP. g]߿D֎Jyy_w* 浒5|@'uј3>o~|JKPa3i}艘3_?U8#/VR$KF,gO(q Yeh6w أ{ޱQ9{&a2lS)zSa#-R~*N3߽G'UCMѮdi9*cKaL[PLJy^L-o< 95R3JxW$Z<9P/XQc+kg ړVsaۈ).$k hUu[ĸ2&lok(0ܤ#luVtf(t#vϾ4݃=;6% OKOa@,dw ʂEQoMuB l&h*1n"2p$U.q9t/|!To}%8GP"l UmX^Zr$E8cB!GF+[ҏ6&a%4h7G%7gn nWcZw[q( hлz 2]PJODUlmCNe9^9x0lrHWij2rah}8n.{/H^tއ^cxs_Am 6ĻX1iBіUg֍J~MQ`y<[ƾԹHpEai/ fI^Nn|ASF"薀{XG4S:ge'ŒE^R^\pj;j>EEaU|{(PZ[Ru|? ) HcL)O~0q/+ b肎MY>{;9t.bA8a7*9ϸ&GR('CH]JwBԽ{*+ 7$?1XA FZ^.8vȰ^KDZL1 Kb>%fc!}:B]puB1g Ma#jZp?ѢK KY( h 6J_\Տ;QORAGJL?4ԄxkJfeySpb󕹸e]n%Ӷ *1bptpn6LRNpQ7~ʿp:)8!#]NIz. BkWODeq^unJp}4$Ofg˹C=j =0?SܥwT#ѥh ϋۃE@ iȖpPd=)oR'xE^wѽk fZG&\jŽ`roBUvHԴπl.!yX?Yt~*;*i-罳AۖNknd'?l 'as9GB */[20HBKJ\~(FĶSL~3з -n*-9QǔLaqA^l;߉﷜)`l"q#$fI]_>.a>xLavJC18W>Huis_`@t 5ZZOxÀJ5`zc#ͤK^M\c,hil (.@I,~~8P6!#p .ky+i5 \ZBaA!kZ6U\*V5[VtLjO=XꩰO.L@)pEqTHnŇb,-`놪&f>ea 2GBź5Ws[ nzI -Sn};p9v7F3\qՑž;1#z)fwˉ;'6>ʊ$v"@_|IId[ݹ*GN _TÕkݞ?~ۗ -H>.y<4 B~S͇%|ЩcHxHzvsXH($YD8>]X|8ō N~-Rbck#+ }{5[IhY}p+;RE S>W j@p& ?ϋFu{A?e$ J1EA!yhoJܮߩ8e_n6ٺ>#hY|~I3\D+hb[_LH.rC󹏼T3Ţa<]'g0,#[*ĸ~<_;dxDS58u&`O%#2D#_ +ċGS)bb yi>f}%格lxѨQYR2=kҤZr*%t=[ NvҊLL-t6K ]ܥ&gU,dV{ Zzħ9P\uy[Eq;VVUAv9?ÔO[ cWN31w?Ap5|# cm6ծ.עɧ\;͔Q̡FfM#wT8¨Q*-O$eH GA֐KGV({G<֣Y*f 8E+b̝߱2@Kq)ƭiӛ7uV3^KϷvLћ6uBwaRuck`\Ӓ!KN9kB7vbS}Gn㑠ԋ+TZ&TvGZMJPeA$`)7 99fJn3qOFk(d;T-ui(ōm/W8~퉒@gHsXWƽ9tnO1w'Q-?KQ/-8jH**?4r\]*->'ByfO !7\."e'98Ly1q{5c9 ~x.3ͬz^K)uR[49@?_[9;v7絓0;d֓(7XjDmL#=)T&*4L {{IR[s>ͨv^YV~ɞ6hCHU?Oouޏ) jA"PfBaƩr{>U\ߜSBiR4X.eIv 8* KoGEYbCsϰ&[R"AM:ؾV AAX/a`]edoC %OXP$¼M*kp?y׻$J8r)m*S|/u9>#|  (J1=?%GJ3lJ Dn_",9oҔd򁓶.Cu2@jd]KK\p2 =W6 ?/ pc>[q IB挾hCt Hj &G7,&E$~vWINtސ7I_f8]\6f\P"°H:&L$NGҦPws@2x%b7k%@Yチ(I >R!9t$|*ʿ6|lDr0|pıQA풌$T{3yAvb3P3bdHޡDeՙYge9FeAo:C{&s@;M.bf!+P"`uWoAA߽dN)T!>|$+%8ZzP rǬ_fMF}*9rS) L?7&~,9qּ%oui}M f_ԒJd"rm|u%z]l͂j6{y*_P68Sv®,|=;<&WN؉;gӾaȼu.Xg|&0+zIfm@A c̯5vsjS%[ :=\~.$Hdkvϵqwg3EF+A2aVR<r.?/bjfY=n-/^QoqmɌ fhamR *4-\#VMf,ي>\}F Ե6ʅ'n Ts& OJ^qc6lWnpѕ/q:|\e RFT5BO-g4M̃6Hh u~ߧ25~f6F<3ܥԂ{7⧰muų4#ͩQKʙ:_mQx% t+t*Y?;2ܝ' nP4-2y]n:$9jtzc΁[]:ȥfO}<fRtb a}=4c^zfkс%VCݤrP<'t7ٰhuҋ Ȃv/+A ڜ)eQL8UqO3j Bґp}^Af`:>;q*0?#lD[C\R3<J`P \IB0٧J!>pnJ]y,bR݇336Px֐VVlY11`,7ܖS)N/D^-ޅ JJ'Dwb">DSqԝ-`?|X@mf8Y͈m[LfW7v)V.ed-Bl3=UJ@xM"0a ][NQ?^݌n_@IJȅ^*׊2CD1G>pHw*Xer!Qt3(MG!AW' #>|-Kغ4M>5Y}б6' j.UߜY3l0U3 ܡ5_;cE)9D/Vw g沷@X. G'@E4,>L=,f"9[۬Pg\aXn:^$ +ڑbUQ3L;ELT@qDUƻ_>882Qs0FG[U@ji]DNZdU=qXq=ΛC-pC03w{˽8ܞU0o =/)]\҃Uo&)l>n\BFVW+.Mv }$DyoCUn5IӧChPe^dܵ/&K 66(MP 20tQ_FS4;N3{d b{H)4޻l %RO9" +*v$ v%69ɃUV'~:,:NDئMlɠ{F?ctQL@R yҾjLjjrF)aZdXz̸ 0v#ޯ3b/nfky) cGv}tY-bަ.}_xBkOb}@$zE^4!R=̙e"#w(!,I(P8EH:6ڽ;ʋz?5Fr+DY+g9-Iρ.r ~o2;1lxwjXŷ,ϼB|ˡAd)p"ti:HҮo۸8f$/rVZQ@ V.D!6R{s掖s(#<{RhQEU][Ho{mSC[7.]cEg0˓ШF/Y3r[xp#9:%T̛割!n}0!9g!OO?JiE>bUܧ VPsP2>6~ Dʶ&R۾.۹v ~L-cˮ)Fx{.ղEIx|W"6dU#0w + 5P06W*sINzc72D[!\J5[:@T9iɎMENyLe2?>K؃mXX7="ځÏ L4ŊKmmyRIYg>a\Uq1Gږl@~X^QFCCUY7ñLqS8e!RTjԬԞ?ꤼ}aTjcLsdfA5%XXF?p>12Xg.ck3:Q:~x+M A8qϧNC/V. o)F zshIN۬4 RXB;z69 S@kT22ߋ^1j3' ! {6nzZ&ܜI!ҭB71^h:/-?^pνѼ<{_yla pS@7%ah \QV.ӚO4;z߿t űmsgQ~oy߇h v]lB'_LPPB3iQ0TU5"VZ });+JZ,~ȓl{L,RAlD&@`s*%Kty"W]M7@sŒ!=,5E \{p ¡:=Akg ,|*s\VRC+OOy wBu­uIIx*st\PVR%]UB-9ja]Z!g[U`zٮہTicfS>$-r' n=:Dj 4aMf85>ȟ[wD2JEr P< ;)DsDDѰEVkK5aa84yDv[%~T(qz% TI'BM}GEhBL5D"p7G^JʑrgF8{" 0یiՋi^ [)&XQxnĿ׈B3LFˋH&pP>FhQNީ{m}L *-4 P"E4Дvf48▃J+$N- O?)fZ՜>v'O>7-ݫ dBATI;?Ł'F"}jX=߰FwB}NVvjI@־H $PVN&:KȍsV/5dUCٯH XOXh#b`M-,snx(5?m &hs -M,*U`4Rp#? _T)*G̭45}o׏O}bI&VY:G=W )ZժsT^c Ag9@e4, ͨgA%i,#)Z`.A47Wr/83ziE: MHzAS_-0 ۥd)rxű; X ILS*SƀP-0ֆc&%\/wCQܷE]9{qEν'oilg nY* 4gIf}'h7k1هhlYFZ1v-Fy0Rpَd 0T2N i9w4ֱ*qOv 1W{9w(]ӚKBflZ-R@ Ma*^|@äh;uPU48\w-m. Axޛ- EQ_3Ȧ*Zv{; ykiWwAo :tJ di0y`l?M7 p͟?njZWTDxأNK!ɑm``!DzG8kQ2&0 tdՄhޮ @mO^̮$FAz"d9Ry1;60]MdBT1z( Q]jRuxYj&~O ̺N>v 4gs <.S|{p ^hˊi(&sܱ6Ub? 75r,eaVIU3S᜾ڞgg~ &=n[Z: Ep*v;L;7٤T;sOzv'> Dִ[Yvra1.HKJ5fLDtvE$w!qLHo9}n MmT/OV""fRHIcq)pU@V UL? \Cw M~U+rO[i:MV().?h=LY|96wWR!4 JF0&&؃nEicg&xty/ھϴP0f [^sAOY{CW{!?۱D_ׇss!`^7 )c2<|nz],eq+=ePDy}EAJ?~ܠ2P`vmli J$#k(8)d:MW,W`Ix e}`F}j<19S;&Q8N"R+ͳ[l t#wmV[o+oݧ̵hT ۹M_V7a~dKK<%)gS=8,t*}Oش\g 6`mlRv:<VMo(ght 4$;p:` ƎiڕI 'NZ]*Tf-w6S3Dt1_֬?+9Kk'! _#H![JN"N07@e7d&ɒ2?`#q{C'@B.KH"ơwʆڪRYMњS2|k^]Q5JOzVM} g(g{vq4Juc@xM@,$hQ)V-!3exJ T X $ᕿfq|PU?e4 *&iLq֌{: Jfzxr0u忊\y'>A~vh'_hlÔ'rv[1<NQKyG41-Bvz+%CR 6?Cd?0ܝq a.ke25|)MӮՖ$8H}֊VQ< I`Kk2fD[Zu2o?-o|ܾW7c6F#)HU u{ҜB@U`rmz@ FxkVld&wz!gVw~{ID1:G$LT mb#yjy}ۈ͐T>Q.s.癝ryϛ4@o"&?Vvkfh[J}PO[w[yߥ ^afJ>1;AN|+띻e'b󺓵,"r&wa7ێo(졿qw` )?7)θzHY QIiZT=AQK[ Eh#pQT)ZӝYeeQ2<2v> :Adr.38l|ɖՏ!<Hi7u,p- G9lS) e$<#SbqghPAZԬ <#AxgtzJ9б]0ZjQ0CW#ϑ[Kh;Y1\ &3i/ ǡa9Z ~ّԧ.Q5+~|ǂw?"*(EX 0gPc1NPAz-xЕ@~q̼E8^|KC ΰ.a:S8igmb'٧{y:?%u$oi3Iӛf;Nq(z"At2wܧ\*AnPؐ,.u8jF˯ƹ ZC I!$z׀GY$_La7p+sΕ/꟮sxZL: N#xpY4~q!s5k%:kZv^['^QOar]RM ;ԂP48RZ'^^4Ud1d5{qx7L.unku PuFp(L5$e3t:O Ưs RF=꟒82^9j˴6!V@l=.N M>u;O^vWi|ž8(oS0ܺW+h6# ϕ6%<\ c'A\uPp4EQ88%[9ћ¶ݰSUW O* QOm6QCeO ̓u(5nd&E!Q Tr1`$H !njNam[hϳɗN`vңmXykXS=t&MtB8zhUwGah1x0c"8>B!|c1`uY`}-R}>4eVCz,k<@i62:93 ,phw{)DyEncUy^-!$ЂѷH-ӝ; C!$d^+:KeZ(iO`? /-g`0cCJD@Kap7L3auDDZ?>=fp'a"1L%ƪkLLЙ@jLN"N#m!4ݯ:zލ0=R%jEX7o(SC| ?oµd8D㞀TFnyZUur'`riJh<+7P9rxiLѴYb.*#gG%3LQpZ3"auΚ;&(EhDf!lWP%Rl?$qw2UHxO.c8)X+B5/뇅.-\ٳz+DYL+޴ xnC!fMgm9n/ˈ<+p⚞)9鯬"9:g`Ʉ,bh|Z,p,Ѭ+J;1Dl KE'q̿'"hJ`?T[xٮ! ^--[PH6PR߇`1{`< M=Ge4;z#(o -=XfQϕ[:gy$b-ƔUz|ɾߣFWwxᾀ@BdAv[j%duGk0ϸ~ oK_%ֈ:$>&L40N&6z4XL-II˨@~Q \U^~cH-W)4h 9*=<lG&P$rn2A O 6ƪ7KR*桨a)x>ͧSԽvMPl9I"{ Ks}?әk0l—)v1HNMQңIPAg+Ds;('0il(m0c$L P!KHswVLyB!{K.nRvb=* szPp?/8쨊|g7WbRiw /O;;qkVye4?bM*TZk_@v+; ;@)w5I\%6T~ɗϺ|De__ `*BmfBeLͧ2W1f>EH 5[`}o5d%bd~k+lH-޼{ꊦa'g3V ?Kaؾ Fq:L98[!^.ui;峘^'C "(!ҭ~RVIqQ JmM\S!M?0H#g}n7Aj -݁Ћ^CB*%| `D_nۼLĬG4];ħ @ i vZ$mߜn]5jzwrr/7^_r/wO& /V2q 0`ldz8`]#bKۺRiRMz5>}VuO=JKO&(CÈb(-(ڽEykq Z[Aņ 1}19ی2&'c~<;<Е{nje :+ hԘ3sȾR= * jB**+7B618?]0 'CD[ۓ;J-ht74a d_td6䢾lg $y|xK,n%؉ubQuk F={oFnh'uN'%ֹ1`d5DS ҭP׶` n7 i4>^+(-YZ'nUY?qr`wTA$@\svDz/">}a(Kc >jwOx#\і :@4[? 8i񋑪x(x#[ O 4~Nk&$ ه5j1^,Yb!oё#Ruye>YZ>U Yz>S& 9'0-ő.z+OM舮OuCd7.sWk;٣p)kŠ ǃ,䘘wD|fqG PK[&^5LR3Yŕe7zF`AnM~StrmD1dm[0Qˋ a0zZq6ZiiڔhL2ÙYVY e_3&@XwEb!i5 &6 Ϸ*mF;jdP\McֈIi6 2 ~$;`t&N!е3ef"5%ȔPim7x* tj[@ɮf9-U1r Iip-hp;x]Wngte,~-q|DgF~GĮtȉ4F[*n7sYSW\TLilo)zX`Нl~if$l6g~n)s0nmg)<  JZH3=%$Y?΋~G.O2rPN7,%Y8ִ˦ / /5qyjpR쎡b#oAVbEggI9v`gnMKg SLXR5>2쓏'&^&جέGk^~plYx6 ^c:dy~@\{q3V `hЎre/wo8΂/ f 2E&Zy Fu Yg/mKwh{3dz~h:K[OO)5"UQ^hQ* eJݶ0CPHVyn֡Qf`}Y+f0/`moAj- 3?jPhu%Vd/Z:IYKtbrb+:74 &=Bzbl @+ŋ2|96DemZ1\k2e>_ L>ׅ |Kt'vݖxQHԋRIo8#h9;bW"tP|R>M8}4F)|_K|X%\zr.Z .E>+d\r~suw)` g{ozĒ&zDr8ϼهJ5}}Э8 fRD8*Hz i2bZ@A%^eP`lȳJ720֤9ٞ@n6`O X[v!ZЛe|.|.,!:˯ Q7zuqX+1;b⏄Ը~nS[è\d!ԁ<]jB:c@L W4c7rcMT+f8Ox %/ |HH,V筌U 5⯼m6C‹2TQل )}2OߣU6 ¸Y'L6G(6hydilf2D?Oz[QghȕĚmN2[v!L$Uu{}w0Yh*-eHFO-m>7 0Ƞ, 1k#8eeP;ol8khBŸ Vx<lՑ0E~(MRreð^ا9'ޗ^p(0ZZIB(jhܞPNt(=4?25(~9g6@~2ua7M@J:8Id]j5*ks]- o9\ i :_EM΁O,9w휝X_iT.\Vexqƅ݆L騞Ij1:sk5\pLC,6my| t7&:pc/BCh炸TNVӕ6[<Ю'\^ͽtNѺ5Q î&&o~'1N=YRc=ޮM< ;jڐMqLVyTз޸5ҴFis{;:?UpG0Ԏsqۼg5''*V53~Ӆ(LE _cӁ.KLU~>&4GҪWjoA˙7A|?Ti DE?9S3*J;r5P T~kUU?nk{gun(2g(lB|n:Q-)U}PU+l+we3@C0՘Wڤ6.?G s)LܘY7!>AԀYIlDWBViO4 ڦ@HjDA;?{ΊjD,_7 D$v<0T`ljѹULPXc H4OXZ!45>h{`|g2|UbBy(;ģn1Hr] 1yw^2g'չ=:x80TE"&a=+CV/8XIʸ*TcTvb*#g4y"~\,&%pF GJE0|1#όY=v;:Df0a/&S)6t'ɔiu :}Eּ|W /Qgu{:39@v'0uYYuT g6îw˙,)3tm13AEq0-ېUKoaAXjB%h&o3zڏ&KiH)N_&(0/#v~Ƚ WqKb\@ Xim0u1Q@j6v_`S'H:WV ̤rW Bџ *F[l4{pN+6TTd &_*2lJ0bf*A%H/d&" an9GRBM8 VDob GXWTdGB.k!8诘?`}"Qz2kygt~ӯvvT J|ҽ?x@fj(`(݁CE@܏,Aж!CHjsi4hdLx~G+{O=w_` QogUw# N4徧"7GmᤕДeꌡȝ]T m:)^u|gv]8͌"qq:FXH&܏(J5>iXk$w~"$ W[(or Hg' 6 ͮ+ݓS; 6R%E]|';4+)o Fd<`8nƀc}q/JCrl؃o-srɢ7!4W4b*' k(iF*ֆF|9u!M`qqKdjfv&T*КS1>:Y< GՁYd f>};5xMg3\Xpg*gllsKC3uU " n\BY|Oꝡn<-z0p&"(ɦNM~.'G<ooMרRKUWBNE<ȚG) y&K"dxJAoC! t̤U[ۉ'>qcjH~Z@xtch[G6?&ݳ^" T'cAnM{Yنw1-"<.%#R EVAݷ+7ܽgɰ.y?w{I8#|:(5&fV/3{܎E%;jȜ/LBJ{:Yʿ%OFyhu|3cL_?!(?>dpvpK.'y[47o1<*.L$ؽ>}.2ɡv'| _rl"[D8>ٯ R Xv9":@lmД$Z_78a @$% ?K/]x _Uz (٩􇝯x\at:+Gx4 ds#jSgʄ8m8zyt9 [Tc\9W*oyYND(lƉ;bTPV2-2;iyAMV VʽE<=OK?e?$ɢ|v%6SI94=@R"?y;;n="*$N1YJxnimGJ3WVY5V5 P-sΘg[xg((^MV!~f{t+(ڙGFv(A+yZ0{mI+BϺRtp&3t76 A9dRi oFN8 ">>3gTVLC pE1s׾fKZ/@HߧFrp¡T}YJBpT fg%^t!+FcOޙv[^f>aڢ9Wfr V?2?ܲJ&17 w#L!,B TTuW)DgEgv}m4"FS)i?N9'*FgdžE*)SoX@iY5i5Cwlf@*\YYk7`w)V!Od}nTSaE1q_Y0>fفMU"NM΁gY"spX? ;[ηw\^X.͹Khh= 6!#I 06 'l;DxR#mԵ"nXFn9i1ԇ D}&󑺋6Sts4]f~ݗoIR,mPyBv lvm0AM| XCշ٧ɴtyZe{\vS+>7'!,?6~J$^"auL W1 88SzmX`=Լ #O}@x1|4!!~ SDsTҷz\YMLRUL={9q_n7KeC{Aͺ}T6gfMcEqR0gycZ(_ UIM4=WHeNZILo.<mS0k/b_"MizZ+A)dIWK&Q9Ub,fKͧShP87UZ&:?' hCe2vy|QEK0$ #[YPX"F5*TD{%Cv.кH#^(ʱĪ+Ι2 eG1(5O?| C(;-WS~R  59n?JPu툩ۣv|7K)4*힘14`ܙ#C-=Sém[m:4ψTEh<\yelyןUDNQNh؊P~['g U#4o=KR,{GR؎VKf>C&T4M6M܄꿟 ?NԪbv?[݅ČӬ`кs,>rtHz~4t$0grxYdfQ'*h}ځ\#=!ڨwj_êdHm '_KhPvАu _/>HŀzsX ڔb~߅Qf}?D_c#Mߎ(hU{NR`iso{Asabbl3MʇjgDUN315 4D+H` uοG7 *6]£V4Q.{:pe $#R @ið0[ o"#0O;gk (5F$ :.^U oe2y0;ܮ 9y絻?^0=9ZҡKU]?Y> )4 IABR.(_W3%I,Ŧie=|Tj/Z'L`g }),]sGQibK^a#-IC}נlZ^*I TIv󠠵>\Icw9iT0)߲aMqegS(@(R: - -gXȕ^UHաcJb8?/g7]N\Wmi7kQ*>mU?^o4X͕d􁷟 Z>@a%=Zu}K]j:zFUꂪzĨ Qa{ATSG~EZA8l7́?i8똪!,ٺ$%zs 蔵;q-' H}vek>ԝ&mN nVMl8+ՃIî`ƴvz3fs*_P7ɶu7YW^o&¸ z~SɬLxgejGa'PXbRo}qS]h_BN&UH'oaޠ׊nr:ܗ; 7?!en D5%!4q!M<.ց1qGշIB:U (斐Tsn&cy@?o=fG$;{!:]ݝ"%4 ؠ,iDf;&|Fq@x;ϙò j>+53(w[Ojp|nM\94 lOCXyd /dd3h-8+uu6:lC=&CU<=KDn-J6XǁE%hRTvcYܝʳ U߂ԥw? kEۇ!!68tC*ҔrGo2kMJQ} $!E,>$r?3#bʐzdBM4 i+bzHd̔ -u>! x#[HS^M1/ ׺bq '5c2ֻذ!ڙҪ0,:F&&ߙ+htМM-ԋ_S*7B]ѧJJC꧆r(D:#p3,F6R%~!%w=8fõm&X~ Iÿ D1ޫS(ݟ%pGu/Q٧f1n`9 J϶8lA`J)Hhֵ8#X#>' 0ekcQ#K=bc3aQ;- 9֓(RaeMP(ҹo/68C#^g5%z!qmc' !ƀ*ߐ/=7wG4@_;LJl~L@Th | W3<żp kpWZ.J|Jpn4JYO^ #M=m,<`$I8'p:[Zoݍ1O|]ni)WLʥxK2,j6 Y_.[盄{Zل  k% ߙb9waTWo 4.F]iR49 \14OSj/Pg#ƚS$>cȈe)s!xs6ˢ+:F=Yem8r`a'r۟$P`hZ34ǽ>Njmmf+?#,/UK)@x}HOjfR3;& !CyY=C3!E%kfcEZě  Ft k(L." F\r=*4|}ZTvqtDB[bv`+!饸 桓B2t&7xʗ%/ եl`Da9aTD#}ㆾ.POAlfF.r1Zs"gEΎ CQD^Y|\}Gl}o\ XQFdԞ5|#T◸@ Պ|?Vsjx4r4] N΄_+sRߵikb.CÀإo_D6"fMer l3Vd$K/;i@\ Q],¶Prm* jl4d'pwZm!.wN."P.rUL=4c9q J 4Ȥ~b߈M.Tg!Ƌ3pNKVWW}h=[wwۀ9n^} HC+z !9Vs'v'!#l, k量6]&$7þ`c(=Ռ[dwR{^TH|R!ԂgD@lS / RmaG6A_|:;iokW9>&,3ǽv'}St>Iny{kߏw{17w4](kv1.re-rZ.ךxOÐJ|JH-#d)X]#.# i׀F ~Tq߱ 6W}Z;&ORfu>rۨ-/ϞU!k7EYJD1ŪiL]7X>Gi[cd4~ KQYM6pZ\Q|P@;JvJ&. 6f Z35>R@c/ jr&?' x\pGP*Fu*71cT "H\䞫jr6]<2^2@AgTJbr|sFoIoĪ>LQ3Ym%cS X1>oCT|ƭqW]E!X^)q ~/\܏ mkttBi= !D>9=U"b[+ [LDIobt-.TWOX.q4,F4'[;hNuo|W]0-|D+IھKq 8&-^$,^Z΂sSPV2GX{QYs>xoa}XWc5]?N.g{6o7B8.PRb[1&N9wܞFQ#Xh&7AoƯXY*W:؅A?!sX4G<2"GV\=Sj1X ~ xyi}{OfUt$!BuF_>a']octpqt@UU5(mi6jy1QkV+z"va)xo [ ؃;lulY@ UDU[4_r 6ptyP:PPxaa[v_$䬘^;̍3 {bh^L1aO׭AҐ*$j??NXsnj -nw,_}Ia39uikC*k6,!FJ+`i>*[kQF1 ,<  .d+avUw(wO3`>7v߂y*#=\Nb Ëx9!'kUeo-zLWPw/-3d2IzXXM@ų&boh.OILY*|ֳЩUN8U}T^H;N`&eJA' Z]*t@/G}bx0mH܉N ZjԤƊ"BMHF3I0֚:ڼ/+ 9P3$(V列Kxgw^N3uf5abNoaDzɿDnyߘU-ME̱#VMxyXcvraڎn,y{4&6+y1@L43<]52Z>|DzϺg˾ }|)8(YFEY?_fwkNA'Tx h_eˮc~Ҟ&<;$zsàBJA$8ۺ2g2r]#5[Zt|;C}BOZ:Z E&x1@Pc[Vf="aEe"yx6;Wdfuι5'[meqJj)L S€UdV}hd|vN?Y|ZJrP{U8̒GtpLyѓ_4N =Xi=-QO;2rbDP` R\j O7^U؅ڗ9“VU悟Θ`F aqJ E?# #2%p(JR/ÅXajR_wiK]k+G' d6 J-Cr|#l`Y{bY޵ZTgS/ni0qs ;+]WHo|H $CY650xFcWSv5FA־ V21X ś5̹FO ǟAg/lWs$ԎpARٯ>")H,a_2_ʣ7 T6D{wtbz|B$փK9\jVO _e]}2AH70jUwwoY+}zhHwִn4teXg~B%8HB5!uZ&L!#4t^vzHeZ^ Ng$O >b-2b ~щ41 .8TN3+}BuDEڝHI]]{PqE7tAJy;x[c)>=W] NfZGn%e%+0$u>7K>\~ʒG(12y#3E~P'A-ZyV(yw C[z#j{NC /oy+.%oyc8,&-0a F'<4@=y7zRꤓ+q@#ʭ} '>.0u-|bŽFwۜwre}7Ň>ɈtD {>9Ȋ@ZJ!'PoBd*H#Rn^xC4g>_–I3)W2OvXnc0QÛv'4xjd^l7 tVoK30)$Fϧj#gUhO-bkKJ|%Ͼ@h%GG{Ϛ%:?oR #L0}+*l_Y< \fAV5¬JYdAM7b+L&JH? >(|<}ފ~]ql"RODdSge _,tQqi)GR(焷-iVoZim0 "!RK;b[5q<\~cg$}U⑱vn=9}Ivc),![WoRֻ`f&{jS&|?t+-XռW D9N|Hn;\w n <tz(7M5xc?T';K޵D&i(C%׵Ӧh8tQƞKf1O$];#C 6j7vvRwY@Txh>):$:>KqSC̊0¥x^qiAܯ9zgXKR$aH ܫpU1 0O87Ժ78Vn>EQ$5{]ΠFF#~GY!>[d` 夕lZ~klYD#7n-^$~7^8$_ U0] 1z3ߦͯg+{'M^ԨqHiDДcF{.{Y]~}u`o.\$;F6wbJxDϬQ*z =/GL]&2ς;u$ 34 0424|$7..NYVI![f|f\N{IpJ" #-KGXR\/Fqjf_QRuj_ۮOj*eԟv4J\}{=nD ˉT!eQ_`XSņ-78%ej*imclR@٥a4'ehAOϙz9F6guZjŨ_&\!jYCR:R(( }O73.$߯o#+lI!x" )M+{ %H [wYMdO4 %,c>{W?Лo gTؠ3 Q 3xɾ?Jхk;A.jRMKrL]gAݖH/ZI1DyxrlB$Y1}l `/aȘA9@VYYc4g4* ĦXɗaiE}gVE P-$%g(g!wþ\Z]O5x ,iUK,W5y5*ƶ wg!}WzLb;HRic &i9ygsty'`V/^SW2n|(J{[4bS94%=IF촨藑ygRACsg1ӡgTGIҦkx<%e' {l D\-6xLH db?6~H-د%rD8'\rLZN^ھ{nӀlh_HfL V% u]]?-W0NϕY-1"[ +yqdzM*an* JrL@.:qtXM֘nJ?_t䃑ʄRղgF1ޔq:6SF&@!ǵ\C[,z$U*^^w,䒟{vEvG$..vPa'7ڣ̏ۏRmg<:=t=ܵ(Iu#)9TI/22/z?f{dJs3 ^6GDžJK0V(iiE2,a^hl~EK  IamЄi~YK# =+`>Nld  >c S8ح<Z @(̀kGOy$_Ε`0+Gn$v'0/d|66zA(,--iaӗ7ls4ZݡfQ #~}?U>r aǘ\C1)K.bA)T?E\/ :*rY4u{yƐE 2Ff)+L*,o*&5 U3.ͽX AS5kPx}Atas;">|TpI=eԔ,tdw&Sܲഇh3]4P~8>8v 8N`7y6hv݋\=)eע9a(Ǜ2zвv@E} 9xnw%eHmͺ?eM.J,KPk5 Փ _:27&6 z"0 bX} ~, "b4=O/*[<s&3K;EIi`EOs7ɊMi ԏzgCTAM_:nL' O%KqnL]xEp꾿QU[ms98q[g`s֞lQP?9kֳO}",&t#2و/ %Ec>lGjhZ9_ g:SIr(beIlihG,2n@P>eayO3КKEWoQU H=6C?nԥ'S4|5=[Օu)LYiL\ce]PQc܈ !Z$ۘ2b!iM-BJ#9ǨRU8G>xҝJ6S`XZ(y 6k:5S9Qs E~՗#fnf6>j 5eM=y-ad/SZG[v0"_'y>g;κW!D|(˽ Sif /஼EoCx#5<0>l@1}X;4{k{?Q[cm.[KnG<?#qʠ,-T2.3 S]X(x,vk:xȼh2#P_2EkkwuvO@Y||M &3N ӣħpVhW\x"&u.WF_9ps })f/Ak_7}?Iq5/ SBmkmxO/_՗F(mq1duU\e)MoZ^pEvޥl.gY #~2q|B!j)mg_RW"&ES8r$[찚j{4_?u˸M(= @Lorm68fg}ź(I_lT? :Ύd`2LQ?rNz ('>LH¹i(8k?G^H%~:#{TkSWwY uWC?F^%hgQ0щF (DMzlOUp'X|pwg;, enT}AeȀ -OD%PyԙQBܫrS*n7 X$?au 4f"}liL^=HW pectkRY"2a{Q0Dox+oPA<}426>f1| @]5Xlkq<|sm+*xWdzƥћnעB癐KhrR`mdsm1Dm?(u-Y.k%؊Ɋ-i4l{k{\fru}×]S@tOO@~(j)~8"Vz xGQ_ {и1.\ ds5Ds1(+YACFlEt ߡ jﬗ$ׇ]x)uk+?_f|]|cKVр*ؒw psMs.*u>׆2Y@=<8wCKąb+ d7:7AU:Fgk@%qُ|뛬Xo>;Y6lui ;T\֕׹Ĕ;Auk.T LB罧&_!ӱ!2,8Bǥk1 C5 U+rR#l9ppG&_GO\Įax렦MPhMo)v Qǂ3Qm L Rr? {9Ad }07uh|B"œ멖Ǜ~]üS= Sa'oIO{'}•̑.eV@XvU%>Cb@EORKS!wA5/=.*[#QQz]bWU##K\cU"&"HЗ2.++`Wу#l@lUK5%b0g軬+NOשn?#DL1mu#ͮ}9݋&"E LY v{81D.l'l}-Ԓ-)봄e&9pAd@]`X#"Y% )[!)}C7j˞Ǭ]<!3kغti޳ݽjgBM^"9ϺWQ]yv}3# z٢KR 7hb؁ݧqXvAw׳i5N)D2Ջ0Tׅ{Ҽ)qm}в4ez)3΃势JxR !jR<>B^R-&aǜ?@-ͦ30((urClG];7r <*`onmZpǸJTwsafVaU˷ڋH swFgdM;a+4 WO6YșmIQ~زf8I<0(SjNvK勗=vGҼjywj;ίk"oͪS 0{U5<ؙ~p6WtK&*6]Xy,?nrWipLCӨ1rA~7(:^_Wq @ͺ!"{+ؙ0(r10!G31$Of5sХxU1+ڠ _wZGb&a9{r >me/ȞߗE` ]V`( $4P l?xufaD< *+yZ b}x>{6ש rpeix8oB-|5&T{Y֤4"uTi3zmDP^zm\j Fk5"JRsJi)$yy~Ts1UeK}N}7L?CέߝBd+pLlOw3&p?͈Dp/8T@SW b^4Paע8A6ͽ"0)/U&G0ja.̧᧕ɈJ[ E:1*Ian$Gek .bdwvĮC29aw툵HKW_> y%oLw(AkS>s t8 T-\i`P2G3Agjw<QaC4$_v/1gaxp]}ZS⾆O_Q"eɿs^v.vԩYH~O>UˑJoG/K[;n`7P}?)ͫjeֶȃ]2KjnL x!E77ekMTh h•W7Bʩ 1[ k3ovs{y|/Bd0ōUF`".:2vpצReFW܈'VarV'Rk ]*{Y:QQ3XgD$ɏi ۾+wl(Q_]إ+rU-Nu0o@]%ЍS/cǺݝsemhqF e#n~TΫh>Y񬲓HAn# 4I k݆. <ǚeŕcA#jYk:Qwъ. p=xӀܷ[FPiQQzΉӜ?W :")Sz>"kЦKKבo߳@ SbS ~W+V=eCao꨽0SbH6Skݦ1$d=|5bhV `o\䮣VtS^__kvj=$sZ*ug^YW Qg;q\]^3Pc);SD5-(N8x0@8gk2#C꠽agM^S3Q` ݅X eP1=xRrR[H Z3c h)LX[GƾV_P"ܫIWmϵҖmp!Hl(K!Ձ Sl1?aC^E L#"%Z߮YYO )dCVԞmμhXA?T,w(tL c$o_Wd7E1+WZ&|uD7JqŒd4 ju7@ֳţV:Z# |5|\Xr^|7$x DWuFvW;<W5fAj'>zE3#t5VP~Aӵ"E Al Iy@d`6q@twC.] "(RB4[ۜŴxs#_Fđmhm>r%亳E?})]i]dl.²O{>( xoy<=n ;)rN8yU64SWVkM Ux8EV蠿91!C2[z@%qAX4v+˷g-uԩNA7z 1bҀ tԀħ'pk+.bW駶'; h=0x[ 8QsodKWK]%Iej8/Ao"FLoJbiV(zX&(WyK[]慎6T+"w*7a8>mҏIWT %<}7!ӨFT?!lrX̳g9Czh'UKctW/ f{Z%Du+q.%)%';FX6f (W-#a)sDxϖZmS I7kdm(A+ruҀ˭t@<~b4m0 Dk:Q+3%NWWԿ1NC=I$t4V>\ rjZ\.c%˯VM>7{q*rZYO!>N/3wu?ţdYjeqEBO(>OZ*W Y`}j(Gp_ ;#~kiuѲi0.#SF'~(lq*9pGP=Ow(nB. fi({ nrCttL0zq)̮pb]44U⧷M)PY\7:4)X_84BJVJoiRu\}rG{յGhR<|WiTgP!lDU6nl 6Xw$l0:# )ֽ9k0\5%a48 721F뺭I }Ӊ ~Z85=!d o 7-p[9UWY_.4DuQz,5=zv])I~U|"҈ FUqIcңz&!Q$G/qR7jzj rj]|ДB-4/wNլ f&s9ZofQА=mdk`"$#WΩDȣZZrWv!(9:?iM61mI/-.CKvS 5]{C]4):2&,.X=` uup\<{n^ _ *ndmC=&؋#wLS G0ecQW@ptv=Wq461u <>TVjCJZ#V9jo'$sr^C(7IyS39qm"Va"g)oQ :{66- N1fNݘ`'^(Ut̚~F*D-_`ʣDHccս[`A"{GmR ոWD\,Qh-R (VbU遑KLUgkt<qn &#V MU_7:bC,o0-1vM,l򭹔 , Sg,[ʽ7QNUئEG ]2gl7D%*GOf vS$0[:03h+vy4OvX(RL=2ZFq*1P-8oWn KOg-\zH ޓhC2zM~ 7 )XƒT2oKI'Q#~0K4Q9(BBŅNjj ? xX«ʙץ;ю!VUgѲ7a1¢*VD_25 K Z xiu{U>'t/$gtfy,f7`<.yrq;i.դA eVjUv޸ ,ro$GO: ȱ_שJ r,z*Ŷ(Z/$F{ 8@Nk3ڶmUK6\\E/f I< yS+RкAabd<|Jǰ<@A3ӽ4vSm mvM ~RBSTc⛬Iz vaCm1;97Џ(OP`{v*@3 @se5$#1"`T k|mWfPX]mldЏWV3οUpy |O;atD6WGdy·N$ Y,$ 'E˂5R=!;]^%풓&_= .ƶX-BB| |z9JPI;hg+lw\`F*Y di{0ѬKBlI9 \;bI횟_j%N" 4mEbaJ!^mK ri};*{yo`o:f*g[KTJseYd =A= YE5&dg's4flIdH]/\A0"VF~X#8x'FMG#0K&n9A {8U+yR`y-Gayc~7* $[nShЈ8yچ7Fb%NfL WM$˩hE"} ܰQ"i×P"A-"x@n#(m 9ݨ&jH#?U+< mxġiXGx>hi= Pmyν!4 pb^QpE#w!-08?d#(9ZŔ1S`8^Hٸ[shfdԍD:B82o* Z<'oEG_ 'WŠ7c.ĆE.b)Exgtg 9\ Aip3`x/x>SdlQx~/T9iJs xBRLԳ1zcn a7 L~@KUWƢ'*%TC <ӀC i`t] ON}ѝ?2vs)ZXLB"/dRzDy 'fBTqe2R,)z|bU 뫻aϪ?5e7GHseRtUw t%Uh$:qxsJW586Ӆ~Qvgչ$Jهܲl}^d DuRp9m ϸ(9KQd\j '怂-19ǕA-9yC Wg.F?I.idmܷ.V$F`be=pnQٗBol$t~ TTL-}L!&e&z }e,dل Zz RI`",o|Pm2[N+UtZ|%yX_Mc4U@U7@]dx4Fƛ{ݯI!zְj0"fevQ0KsS^U%/ޗ#@F4Mw-}.2@,LU\bL>?`+?HQsd' 'ܸZ xU~ձ̭dhǓKzO$kjz&f±YO7Vb`2\xCL<.Ϙ򱩫fXb}HzB$A> >Hֈ0gt_Ŭ9S.-e $t`:YG3(s^kl~K3't\&%A 1,8MtUKq)5&M3/{z1Q`O9]xG0̒"pvа7ylc%8pSq_iJb.bVbLlVna&W|"q]g^l}w/iXiM\j(()5,PU'fq7+!Hĸ;DX/J` VP^hr؃l;HVۼjسHXXrrj[R1 s͜2ǰB=\"(8Ǐ ic e#y0?Swrvţtj{Iv7Fj&u V<,o{9zhH ^HWN޵ΤU%𜃿3`Aܖt:߁{w71_ _Xj2f}&ou]wN";EOR['zJ9 =6N3{.)E7g p-fnƈyt OZ5CH*M_+@V6v-b{80?xgwgzn½bDx:jh~F߉8ήFΈ>;͉|o@F:eZ1;b# zzf@cL6>{X43(.$AJ(:`L+?dt%uT}["K$oh!jZmMG{=Opebl0 R$ߞoMJgŰZDHY \s b9-+Ofq$ES *8|r85e=v>XAm\r'ȝAF TwK'a;mh׋X\|νM=J}E3`8K8Ԉh"xK,U4=,Dp FKLcnK>i lWG%^n[n8Mvcݸ/t )Ԕgst3[En'oN ♈F)%P;U|daHR%4!Sʗj3)(AD? ;zz_ )1=%b"#p ؋x)w$?~ 5x z\d(^xWz%  螒U[֫YrF(FqՓ@dC*:I-cGDJ. sCiaD7u"6M81j'o7"J3&;^ RsY5/&.6A %* ي>*x[~swG&O] M{딳7RznG!tsړuY JULJ9C,+@W4NNؼaJb8hB_=vBJlk2B[?cH7\h;{MX{Ʊ$mG׺5y}I7(0oR Kjnʨ2]C+2Ό<~7RTLNa^tq*{_o Y@:s(+ #KSkK1Ym?D)YoOPid|'w~:}wo>`lαB~ߗwf1bcf83(cr>n&S-:T .*-*jƖ谞rJbA CFay ڰӕiLEsa2/ {%|MHPJݳ%˰І3 m  c=[7^4?i^1~M$MpH^B%w|nq7?|#wZBYvDUZ:kw -&֖3ﭲ+ jpyL1f hO1#6zi)C<,D/,A2Z5A}4,@F [G%!cjd(c9>RqD0}^T{?rZ qׁ\vYOa6O_ `՟5lJބEhCZ5kQx; r gњ_Pw71r&(>g-yu?ξn ,Lr DŽUM8jfe~j38 7\q05PVGvWzVsS/aЮ@@Mn) 0N_DS7ʶYQdͱx^:;mïfᰴ1&/'1ɨ*Hg4XbޮO.=2GD!? j=^4[sel$avq~\c_ojX1M9Wn}_)dQ[ o]\9]%/zw1ݿ+|Kl*ǕV @y$Q7 8>X1 ѥ%^ZbQ|/:DE]QRHۯ=ܮbUϙN꣕LBM4([_h!es`pTK1JF_'FE r”Y1~_.P s.aŸF pmE) EJ 1fTy_0-V* F\+;oHR!SJ/Y,bA1k Ml0^dm` d.$J)8ߖ&L8@6 $뉀YQ?c+ОYQ6~wmڪ.${rtpsUb0dۚy m'^cT'Ͽ3A2 P),^UGgpjQ?c2KLy-Y l5M, F 0EbH+ dfqɃihO!!kpM] i7avŢW'WޱiԺ%6"pٌlyC`d1+h@ju2>d,pB Lt2 wH`J&㊋%'< k~w*n3a %uZ)Qҏd <)\WobL{qcܜipfbp~J*]o.f7  >w3 V{s8B*k};Z5mY_j>SG8R&Y,F8 reDw7pGb\QzȺ^/Z3)%FɂG0Q  ̈́ΉtUY?IX,e?>10O X$#k m-J:a=[J)g@;-pԋ s*0wwGcqD;p<`+vkDc ui~|aRnUg\k hxHN1c)(Y;Tm`k Sqz\lDУ@Ō 콃l;&#dU2-h*'^)gk agʻj]$qXNmW '\8 KBZ`m`\)\.J,UYaJ\[hpɚMpDa<> Wpc(X$&E0:Sܩ 쨿a.L/aϞ1%J$h?ܫ87b;xlBYuڇ=$}h-AVh\'F~P,Vʬ͑`5~bxXv4O|co{Ϝ:9 e1jN<}#1p YvqʪxQ#N.IÍAx #Q4lr,=>8䲹.sQ˙FlG1׃Εg؞>Ïzc)z&9_/>z3yY*N ¡~$Y=./Yin3L; +/l`@4F X +WP密+#̸[$UpP7ǕMKix`CK`6`%K'R\,i  )KוVaVt*RoQ#Mx6g"<)P3ޭ7d877@kݬs+lfB|ħTB< 1CvBg"}\<΂Sgdxtycj^S SiLTbK$Q7X겊 kDh0BŮ[ ^ˠ"GjEҕ\)u|,+UZA\ Tә ݊n> EaF1))6 ܚQ~کR|+zeJPs/J2Iˢ8D[ttE2Eosu\g\P?)CjF5~ zw*D]U4dP6(۽7%0+*TD?y>) cI!c"!aD޲k`3msm ;l-'yݯ9g2 0Œ1 wAJ}8S;GGH_O om bVO:MbSLU re{A%5d[o".;Y{;KZ\|ݖ~F('u&qQa~ř:XmSrWj%M#.0 K+9x&>wޒ'qlloqo,/Hm&6]x5&S[1r}y-:QYdYu}瀡z7d}̬vJiim'H!S ӎ-7 .C=6۬H: Djo9b7ej?YSѨ"iUF3:(K1*Nt N4L*mW{rтf ͍1aRZxAgfuE!62"II}`Ȅdsv.y+T_]GB/t O: Cm18 `LI;4ڏ:ol&z+gd}>^c5`}fa=Q=ri4F&34HEO!UƝOnvt8oT}+_`A9SWpڷ'Xm>a"9Bl9i^Ԁt{bn5ەT= Ǔ|wF]Ui>6Zhzm91Z!dL(bGCWh#O\sHg 47Pe%g4r2ab=y~ eqDm}/O]mRҗ.eAZJQY#-jl#NJw6vEiG1՚]j8~osNY6c:!)xM Мȉo&IDTTRwœr t`^1sEHqNMU~>&JJ BhFq\w%&>Q(  Il^JS{O;{v>)w U՟&n`=܏(ee8#ǍBcLh<0g)"HHbhV`|zɡ͚kB힬݉?ڻEE4؏* ao/ɑLEyGm|:<("3|"{ǂ+j_;GO`L`eg2o3Ntf(#9+) QCbgwM0򟞞_1`&|;ÓؗT6&B UڑXs ? PT,SG)h3oFdk3WB̰Ƕ}5)ۀJKJ ZQgݮ69u7Z<ݳBB_ʾ6-;Kq &[b:/Hƭ]Hqt, Ǘ#`CgT2tD贑_2FY mi?{Ì/ȝZdBͱUHz3K0v}:3ZhU]=V%r,"4(Km s!&CO^}?X3Ya#q_A*mM9ixt@CK0GPNpA+yI %^$s2¥coQwp)sN zҾyo!DuPwz@*RJ E5yCfM'z^#xXƄ{%9ou)_x"=4ڿ`Sk{qZ Js7VcWNz8ZfA`Ew8pY3Vڏy#( J5@ROJ,eBWLv-[C讆?,4 (UxZeDgeJx#f)Njס i}-T 8_.:\@q0̄v1x e"d%%K6/Ois`53S " 0:0c&^T,yGG{/ aEJ/y%#ފ?DZIœܼ9 !9kS_k}cK!-OgrEsuN΄*4h}mhUNi6 d~$@%vsZ2߀q3^z"k:Cs2Wc{f=Jnb9{~}Տuhݡs7 |cSm-'HҮtgD יU&HDF4_)Srij7r_mp*'bwxA̬(9?٨!cip.637T!7aPA+ `%߳+U0_?G7V~s ЄobI9hf|NL 7·:`Յ%wzþCǷʇf#%PHr6D%7H.N~~edis1AYV.@6*`ÁOҩ 7 @ŏ .&Z {C6~i 1H_QqOl{LDZlt=P^J_AɲdҶ< 3N2W\M<YQKt=W:cmOɋ;=/q~оT곾ݖ?WJtz!0bT/I w+@۹- GH= R[ 3qPlׁ^Bv/vb ݮtM\z_Z7v fOUsvi+\ 5-GA:8Zh,QE@~6N ?#lu8m2,lvݴΙ2FpVdl͍H$BkTC`ZYh9 ƭqo[**4[c43居KSy7o~mp?[/bږ친s“B_ڍR[WG]ŒVm>(nW)kA{bboKbUVuwwKFN*h_flQpi02C:^=×mnX$oד]b(Mب._k:?2bjQ?ef!mɑG~쫦~&l|^S'b57dAjaϿ3 jρ!zj' b$aA9mr=K8zڥLmHVX v;KRSf]e.kp|ɿ5T$6 BŻKz dJ(%.t|WTG E2uEMB{^D6\lʉr8>o T\?9Vͯ3`}u*m薨mx7$&ŰIwǎosOBh9מ݇R۳k-qHb(=$&`vŲWtnP"D-GPBuXEg_AHVW;n&3;f Ӆ٧yG s+Eۡ֩z- 2+O4ZQd $p7c5*jpwIKJV'C=@e\p{Uf k侙 J\['r1(X^ Qpv j~q0MUm:L"a.t&ڃYƒ,]H" !jK9WW UsΈ}2SeaCӴ!+0DCVՙb^ӽz%bFo(~^ =w0&ӹ_,Pn4El<·R\brT̜ 1i.Mayx*ɷ98p3 ̝U. 4'CVG\Rq%*tZM˼X ֊/t:6hG By~ݳo@pλqZ;3UL8.~c3Ŭh˲05+@PVtim5Jwҙ?:)40<+Vqk7rZסp>iG<_s|s`giȡ9Rs{ɾƸHR'DN;#`ádrYH awr1]@hCfz*2UAClV9b !Cjk3ʥsM:Ȓ|n>946D5H8s2Dňgϰww~~2˙m8b+VQ'B u J4W$/gSᄕyelc<OXL.֋^}X<; ~NS{# [aoa%$EGmwAyId ㆵm?FP^ Bq=X8db/M\7 OЦe>7]9u_޳ָIix{Ay`0Xu͏Z9PY㲸.y-&s6hA+/iѶN@RML[8n1Wi \n'n ܠԒOF,]ܷAC\U54t2-,7L^d"*xJc Цx=μrcI8̫fuc)y"`/jrEq?i(hc>jX/u ۥwqƢRS8\?>k5l{GqF\T3?UZg@ 196$,llp]rFMKR?R ;@ZAni(Xvqd iR\+fdi/UƸc&߇pKW|A~5Hg>ѓJ:36(CQ/7m~f!5޴T*x(Bc$o_C\ѣ>r#odǵE;Aā(z5Υaj^,"YUZAI9;(jq%jNՅ 7ظ4{!$S-GnrUIBmA3|iJFpSʵ΁Kޖ ],G*AF"nܩ&F ¸-T|) EzVOfT fsv3?dn- -Z*=}.P"F'1q|᫝]2vR&: Bkl^Zo?Y /aP+B:/R[bv=Q0# *|UTh[xy7)z<h";(gyn{0qU 7 d K%1ǃ{ie9h xn̈ X yk[D;> HCd)6 |PMߙ/]j5Q(ih[-~jt l[Qyj'Sr7X|,YVX;F@_%әGܠ /?RQjKaSאT9 _ 8B$qUS1Zh?gB0ĀX?FQg*BB (K>fNV<,0^{i~rozOgZrZPZ h_F"<Ώ󁝲rvq;v :A^n3"MWZJ 8xl)ր7@C3@tWmXeuT>/P,fnH{@Bq͒v]nʡ%G;΄pyI[_ 03F47dpNU ؟t~l: pHxf&#/K-^W8;[̳2Ε0] m\wmjejcD?- IEauDyu3*^͟; Qx'¶?EjJdܐv 2h/<#IIPVp흇d[˗ r/fn͝ąD9rތW'nhnUoG#h`#/>;|g]o(y^Ԫ~h/U_9vRrO{׮et/F wm[!*Os¤Zv;퍾?Ϧ: >. F\ܣt &IjMZ7Oki0hEV͐ktϬ:!ל m\ DuiF_thcP%(nhE<1%e(f V= xDRsp|rrǂTTBgCwe^noM\Do~B\s,O٩"g1a˼,G5Vc'Y{IK3O'^*%*vVDmR'ukn h?n>!J "X*"!w=@Y}-%2]"%SS#Z=lCU~El/YU3 S9&o$=( e-H1yB͟XdѦ9 eD%^l+12j+k$ҹTdnl"zs$adǝALY(Y"-рydPH5FHS+;{;JI^!x,d噤 qu"x~p?!,Y0KzNjԼO녱$5l-˚k4`^3J4|{4:]#Û@O̸?i\ue hy"'sG%$N0I|ѳܿ^,mSϩU99߯ \i9Em<$%ϋ[gW!vwt}M(Ł!^{AİZX542^H%1_#B.tY,mH;'e  ]6.{5;/_;^p h? +`khI*:<-\ 6vPpb`n{HL?cCz[$PuFO-2ys!sր(nIװp!WyZ((!.XT!S8Qit}IN5zኊ,BR^hl.$XNe!k9x]xoZMIO"~?E~{)ɺ؂6$y7{)Ҟ͞T4V-ą<~ ԖZ_s߈ KcpjCb"A X0{׷!Km+]D>2 $RLƽ=x<}8 v<5rZ"6t8UbVFF!2 PomEJqNBM1}0e|iujEdw)JFj);^;c Z按4t-^EL d%{5=֍eU<.3_Gηk)V,XO,Tx,mU8r{o$(z2{= IaD38|9GV_<(g-4xCPNy*l|Cd@ViCgFN-N3= #jx7sMJvw$E/1U{0IYtEzf=1E0֔` O6 e\|y*5בr37eN2i6 U˥c^[0T0l3>;6˩tI¥񢂞M Q*S!L5|TɚmR[<$ 1Sի΁3c@b\ڔ 6]uJ2g&Ml[VO|JY(s@X* 3Vye{opy0µ)C(ՠ/rbYJZYmp;kIH֝) m"t-Bd^nȻyhk0F=Hwke[\Xp?1ߙ>U9aI_PxE줨]O. 03 B(jE^2CK7Sco{tBŮSq>ڴ56wv>!=v j%j ds4s5& ±[F)e A/qgZ0*^W]:|)Vff%p^G $7g*Jsd}}TY$>|{\΋sH@o;>ȃv 8;eiCu~BԦPytӌ;t,o}4p)TAG@ɚʕ+U,$ yBr0"P=nﰌjqb,֤hS} f F]ߤ#&4ŐNmͯϵx~VpDˠqU}7r~ |4hx1?wbHk7G?/\*!&u1s紒7 ;Tp`4f -:S"*}O̐hq[e٣t] AGC2χ':mEAwdBHO^$8 ;m ҭEm)R(h{w)Kej=},ܖ5VLU%.\R[ A,ا,|b{q:(hĐ`bõ(jcd$>2HeƬa0Rs/p.{66yN$[O sfpi@ Dg *@s>c7K=\?Pbu$Y:hP"Vxp3X5bȉ];U2yF%s\NZ lr==̇EGsfpXdjUeO ffR<3") Su{ԘSneA6CJp&ž)S2i[0ޤQN 7&2$&L*5 ~ږٹ  |",fsY&JˣMc qr ?@LRzXTY D CPM~.FRׁtjXUCI=r4#,[8OI@>Eh%o2X ]׼6H{ 1Le ˪ni14S#a"d*:2V5V#CKci@w)&-_OZBB^.{lYX5m+HE,%25t:,ad%6a 1Obea_O{Q! /;q7]uӠ?-XWebq8d*PY-w9GX95[+IViwII<պ걤@](8A䬃-m#J8GlMǟɢe"}v4qXT61,Ê9ݲA-z.:fzfafy$mpB`xs>NehAբ)\ؗƋ'u%NA&% Sl.Ҋs#AdIQ5ow̉C4F}wc'ޕwǾ3W)1 ݉]zW]"a_y5[ $H !d96r(O<ڲDbt+`Iqub_owOMJ `E:)Of `A&zɹVmLtWElZw 읎ob2d {O\z$A>vy`2& %2vT G--Aґ(i1(gEg9$1-AvT BfiGnŜH Hg{q{S >?a%SYJ8> [-}#?1#VAώoqŔ%|HR]6[i[˵J;af":y#2-Caoj& vJ)q<#=*{ :l` tIh≥e^ՋLI .Pp[4RJ?JiЇfstC޾,$.z^ ͔19 >{i |r,>qJ]_VD J +G!ϫ/lEusfl2֔-/G94N-HͿ8$ۘMp$psVZ*ҟrg؁eY6Rc[zi<"LiziQ'?&]V<2g ićҶy͹H@ !뛌ؤ5c@^ +efyX3\BxZ?/ 6*o =x_Z71_*ΦDnc-жyFM iȁ96d"YO-$ ppI5mGP B +]D(sc/M50g{Yp'ѽK(FRajR^(ET;IZckPg4}@~A. Q- Ey3}%4blׁeΫ,V߲w Ec;%PR#R |YM`^@oo<6 "祑YfyeD=ŒI 1㣡EFRaHK{O3w'%,fNnf,05GD'%oj&Zo)}('`s. u8R+mmvB /$f;)8&Eia F\TQPXSD0~_'J ]5Q9M Vje.\C7R5@hPJOA ǏC{hM8ROWő'_u> !Z:z0Ml$mfbB<%<_1B,/J+Uơ:߿! hxs ļ 7,ޅb |@JEC9&b2$$]" TMWSl߽ п{yoopg%ON} <*LϝE`R6EjY+Beߌ5> e[١'ONzeV.A?d '2I2Ȣ϶Xd_;>Min]xʨ?v,^.{yQlr J,[c!NB>#H86H W@rzC0Xd40G]q(|nݿ<; @ioTIR L9!MP fjހmU\@ Dt$E)jʧ{7Ҍ$$|Ew.n{ViTգUkUL]RG+cD4xdە =UU0EjD1؎3}Ts E1œp!;~ r,ܥ6O9Ѝ8;])e,E\g)SYTQ-bNZßL ܾov sɡk1+q);rҫJlAߩzqk)d@2`I&PQZӣqVz[k1^—YSuq} bcgέA504h1 f`p{pry_ ƺ^`9ODs@K9*62L`Xll}޾0t([U٪/:R:ACF*}u2BnsV[1hCg\eYy$L2a<8_+oܢӂP:g-5%$mE_-scHճ|/;$b T}phm~)rk촯!0Y4H]BaeR0SaՊpxg\U9n^$tz4Ij>?cuC|/ 0| 9dw,Gj [:'=E+6!X[a.EsզE ܥ8z|6ccB2~1gzR{*h`dKsrg|:Oj$ .qn6)=X̶my-P/4S=dG6hiR etE{ȵO: KS:-?ͅS' }'^nh#QmJR('! Ľ{* OWA.ASXV꾄.V'VV$yO=؇ǽ 4ɐN$!pG Qv-ѩ-h1+eXc31#Uqw^$4? Cb? 8nS>Q>@*7K;S (,K{:2p Eç]hq;DHSCm5MN èwӛXW߿O#IV[Odl|ijZy,]ٍ<ӣcty-"GܒՉ1Y"Y RF[7ΐB=F]QyJ#Қ !z"}h:`/Ѕ^͌Tt*Rd$a_7wӁ5ũ4d9@F}C+m`j =0tN&CeS^YQEyA⒨H$u̍\^WBn_Su`'a1U[M$UʁjsJrލu].;,4پDu؆ӵh;ө,۞37Ky^$-b =-B8wȘyX2.-Qk+vg f%M Ѐ3\? S*0NLa9CI]`]p,d]. skD~(.u꡵y46@%-e赵ya?!b[[p$̲dnL^vxYlbl^Bikl!PYΐr<]dbB A9o&]CG2u C*a웊'6p)nLeL/m.Y]ƕ $"#5\pZԿWJJNl$úyx_uy=+$Pnv!1$} bxoʲi/K5Wj CwTz<HqexV/2f,zԁ]R"pePW2;L[t유2eN hU|^utR6r8n/a|'Q@|=ː雂ܑ_v8_ 0Ia@\K}ezEP1*8jg*a4b.n|F`lp z!ytTg=\¶v/Ku?οfm0:cWBI [wD9?A;zFM] #wHh7~T aa6,>%lk>/gٮLvH8j¯ۃ&ְ(S==.)~s r20B;X #]MMQ ҟ9"1 wEd\, Kqɯ@L?ʤ<}x.e`d )gΝjEXyj0$X ;9~b15>l;K ǡ boZ"O-4$8xqjV9-w%J$}i `9;h9 h\1}.xRF>ose a$+bxVN%a7!3 Ms3t˖եޕպHcv/|rNV6pL ,cj I}e8*2M0=AOQHNE[yV%kl4ey@|QDVxNdOB%@0(6:@{NuC [yN EJ)zoQF%ue ޾RyYqS8< j1T[26l4ʶG+񭘀Y/Yor]Toմ&`!7 lwub)N$q%$-v7M A+=3m3P@>\Il宪2TlCp}楥<arC>1/(5OT#F}R5 si` `@&H93(dʕN%QՕw!Ɛ:<ߑ@,KcqH:6hEZ9⽄ N(^Dl<-At47aCNx2gRNpZ4@x.K tjH1IJ2UKϐ7739us_}bpXKBuMhD 3RwTYUIpsr rwK3rbP1V|$3:9mh pSZa[WÒXfgtH޶ ̜燷NX*l6WA1 4`!L~T Pv9m;{4*8jY58;aZfkō ؝9ãPU  EhQg(}bO>0rl 6ۓ5е$n#9Cw-C eCsSlXj|hp\@ 궄^o /yY#'8MjK(;qb>K:Υ)tקۅ)kI^K_OEEA_ E8Qߡ&"ʊ ΪTX[9"gawq~[1KhFg\@XTTDI!UNJj'uuD2j/O9b[k$KÒRɔ(,Wmp+bQv-bmx K0V Zwއq42qPɰn;`ϻ߆HQ'p_;MLB}c#S<+<f@jf5n{f{lbg&+I2$q Gȉ(bɉF9~d!exT4) Β,H`"r54T|/c{"=^iDN1C7o|.;hqR7u Ә#}m Pab{mSvH)|!wTሢb\gfA)lGۢvEmvN81I^]=~;>]#A:kռ hbȥJ+Si[OG͠ eL[{,4.!`t?Be v/$ QWO,fizskB:ar[7ف]­ rz fW+QbmJ) 9bV٪dIitOYHon8 J ےQ*-2ۤy~߽{phE17#yO9U =Yf3V<$H*wTPk#֍A\#tiGV+0'1MebPteŝn却1.z&a_WƇRCj&`F_ijPx'p3A >-_5Cl!S~ h?J3qVk`$Ǟwsx }a2Z$2^SS?@N~-S fф8W54e& ڔ4SzdVs?>_^+_ 5 1uti p^fRu^r:O Z8EOa&\VA?7td6cg?GR{}5ig4hғM&ka[1sumG|QYB /./mEE'T-mr`o蔘;mC\b0;];iq=ȤR$ڇ/\\2mEWWѷrdh5;<[o]bNt`'yHշm%2 թME =h[cFd8gaOHEJڼ ;AmewuUIFr?1JGOր8eXR\OmWd,E$d/CiݩsbnH:c5/!Hq0΢t["CC[\l7P.ٴ^ݐsA-yj4?fajg4 et!ԛ%u =r$+)P;@>SӆOĊ.^2EGlA!um׆/|/%tx :%lc"+qfyL%l tVƐ' +xއB8 B#_ف=*&Q׫pbDw\T1MM,ٲZiM5%u^}ޒaCܵJAs(w:ůRu[J3XWYfܛo=CoR)eVw+0B;D=Q ;88ҼzXSRJ]ΎK[P*ΈG4+Zj9}P?jrVa~:A(y^#K\BsNǯ^کn|*Y˖)~BIU=R_iyoMp]_N`աk=ۑ`5cd2EHL N5ˤa.@e.Xg"5L(>#duxa{D@Ѳ( sC-e~ÃxPtq1 HۍznlYz\hCHrN^C8?;?̛O~`bE}xÄ>bW G0cxUm?G{E;X= âe Uu=H[#E=,F ҏYG|^orZl?'q„'&S 8L"izR.kމ 1_Œ.ƅLP:RbIXi>_s 52n|qe `# ̾#u}`țuNFCqȗ@% o.q|50s- I!m@lbdKbMexHG5\RǷQ!c0a5]7LNܮU쩖UcU8},fU>kOSyH{>Hk%e@]X޲M#C+,~,m*] .MH_._ O0cr(QQnLj{FL8QYӏyWZ› vԷOQ>cRc`lJ)B߃n OjZW՗5)tf ƝOyD}BH! 7\Uʼn~+h[;&W Q tPQ-4i 9FX[,SoڗCk| 1eɦaj{x;^ȋ+^y4!jz~t 0E67x9SJ'zh bOeO9ZF9|@St:(sWi$UcIB^м/o J\@G^"*>2fBb_]W+kSmG$7(Z>}%1#搋 V!J/BK[ourc5oטU$RelO ڶ iQE$?lr~(<qN]mѻ2tw+ɼCVhZV5UWb=:Vʹ9oz^4/YuMC([h*?q#%-ւ]cV\5nΡR^oO4/y/S!˨Tdd_3nݰd duA$rW>]yN)"0,Qb%G8㕱yM1Ʒ 5J1^?=Zs0G`ZjE67᯦d#>/"nhgnx<h[vVɁ D5pQ֧äF䘤\C uqYTtٿḓ2 N@K8ˬ2F" H|d-xÁ"c hZџ_1j-U^'P8&'uߵf32/|v\Z+ŋOgL|Sm,?^4@ZO>8[N`֚鱘a. ɨDgm.#rºZ .£-?؎/ҁw݆ĺkE~HS<崦Ou_a{c+'ӵ1,O"#Pc!rÈV%TEzN[kNJ5o`QM*d% s.;Mh]M%_Ѕh?`OI[CO8̤^cѕ빎πR*̎ܡ cK$ kDF T>QLTz@ UW* ̋k>y Uڢ\)jNs矤C~B+BI?׼!"fuT-E PXʠ`F a5eXL|dq<.L/PZҭQc[NŅ(_|X;4Gߢ9%:kFSnX:H|wh9EF&s'`l7PĢАgǤ-nއNP^ 2X${U 䗝Is="[R&KC*e朗3K?csq(L6|i}]DFgu] 7f-WvAI68ʲ1-a n E[/9z`+TQF*{r o@G]}+|'`D5ӚL5C/;3u+ F^ZlhD [78 Ұ 1NM5wSjF5*ϑw =6yLت%*F蕏h{)x+Ogv̄WiQi<< }3Cׁm޶?7x`o΀VEg sӌb[Zc4/ +ҵ QI0nף1::$ݍ,\u_Q4 BۑM AƧd"f/ԣ/$*;=q#~u| Hoe2(sx>rd߆c.H)( Fx"+/Z xc@/mr[g#/y9Ia n>2'Wq,q qdjLBN @ XXlR 폨xCf[ v9q{7Ɗ quT,FbTt􋥏wƋ ~~s,?^PNIgהm<(8i%~ l$NdYvxXQ-YMZcEFZ{fvlc#SQFmMbmgnS5|GF_bGGIyz!7)'r@.M^ٮb4j܅B'Ռz̙6f Ѡhm~† Tpd@=gl:@_sA /5l $3ĵ0#0?H/bQ[?BWs ;2LqZ#C! .v2"d/]C{d*i )A,h"–S^[h"dOؑꖿvHrTmнڹ~mYqPvsݻUZ 4_uO\ ?ɟZi_"[ NHY!W7 Vt Vc)v4G$%VZThh'Π6=۠{_ff 'n6L\PT{M?w얶ڣqZC |,Utڝ6֦b+a:..ډ?S-̳~EUTu]*Jb7}1zl J#e=8̈́ wױ2?7}A.q4 ݾ%ikl=HS[~S@SR~W: 8r+MHJNOv˘*$qVZ*<t{W!) 9}>J ?"@8:DyFGF[cVMd_:cT_%8d /%'CI8FIbs .H6@As6$@Wgr{9rhC#n\U8NEGf %vM 44O;\e݃WMPq_&H5ڀ*ӶVи6X4| Gͼy؟|YeVeef#Cz~J_ $z\jparϦ},tBHc8mF ٓʼD1Uitm1=jϬ,בڟ85r]IFmoU;H2y6Am|S.ƕ; ^65xX r Xyo/< >6-XMR-W#<5w_ܑ_*ض4s5FS-6NμEw)찴FŽa*wCwu}<ꅭ!%QܫcἌkcTEj+JmS=Z7KUR>5myxip#7x 7_0juU"Mo|Di涖VD6@ IO쇾1P._=v}w` J˹fE,汽ɬ I {I`_#dBPXg>wX`hșJSpMg1Ŧ2Z3ŨlI{vU h%T^rιJәhL<7 AMs2 iHo?kBDBR) Z9WtjfEL.I 5=8) XRG@* MO}pEX$ĢhnjuH`bi} ;ma!O-Ofsײ㰆 `5Ah*S tG/h<ѐrd_4MY3ԶsY>CGZZ֌gn v@ۘPD`Web9d6> l" K>AִǸ(mtrS({vl9yr> QؔXp(OO/ܓe[xH|j1bRFgJ:S.H%&ھE8%ݕm'?TTx3CQCy=l|- IKhgmWdpS~"I"W-K&JjG" DP1 Ënj+N:t Vɖ\TwH;MZ?HHedEZg>^;il([l;H08e^f.E&/i T)('z~ ن$s,s2B߀R06,H絅è֑]da( =gt2#gaMwi7N2o,▥zò=Ao[Ȓ DKbNpHo$z+%&Mt\ >L])HB"io0Hm*q@?@ SVw})\VxuEa/ O}P*J|NRXP^66@pJkigt' mUSC /aq 2 !3V`>fI1 E.ӆ XRr=aJ8@0d~ yB|D|&NB=%.8Pm1\[@SQ8oV 3q_3PF ΎGa(LIFw vk 23eP "po=Y:4 A [#j) /F plt=;(X輇݉kHph&5W5>-4bum=_lp:/mVqĄg B!b]%J0DTs \[YIpc7KT{Nw xOاߜIdI DvӳDeZ$\6g{e}1`lBV "/w }n:$E' %+@ >wvnzy ˀm4= &#â+U3%W*֗ !1 e#`8ƦcIJB& uA{*?(qPV\p(n8W=:p;_{eࡳO7XrTOHבF4eSYoyߺ{lq<8ᓮ䚶> H()$*W=h9u;+92.yS9A|izpX黽u@ Di&*Nz@K8L@T^4QNL (IHx՘fX)ܭx;)-]W7=r3Q.彟WCoohIS4O1&xV Kw-I$leȅfW'`\sHI`'krFs=@"S~"HBj{~lU?kۻB"\FqnAF˻&Mgޛ@adui6 !Is4>Zm$Zb ?E[wXS7SO!"E[ /15OP15DvS#eE~JߴE4dH|Bz~!4ʗMofGUw8(JpJލnʷq7oNMY?J^~M0$V!ҹ GOaR3~a{ K0A} #uՖW<-j6U~RN5lHW6;tr Aщ5_KOUYKhlObVՠQDo&a~PA+niaUGyͶ,' E5Dw?xo'վXuDpp,[/4lkv@q]}JiR)%vT/&5۾\ר8rsMf5X5;sOpaX  UgONgaȄNv({8 8I$ .v5sv3`>@ )?J#O` Cѭg%7a[~A7\J>̰J^ޭt9js_8: jT*#K,fx<2ҷ9\0"|cj.n5v0ybS;֕^kz.pY jl0gE3K ޮR#/6L sʟ辀/,zi(oiݴ=A }2j.o!1 ݼ1N5wŒIX0Ti*4r"{Q~Q>l\Vf\J_y)R܈q#%bY,k90k3 8($}=pK|Q,͜{eA96.ו = H?d{/)]!\1zZzj*unU1.ZKlm~OO}9*6y0EZ H5I+{?Q1gw#y/u! X4!YnI3LPHyt+y-C"D%{7B ǧVttӛò٨oD-:({z;ӘD-1CIe X-PR3M1@[3RLi)d(^WNoUrSE{Z;ng?=I7YG8R{+,-0FlC1lI d n1\8z0&On9f((W|7y}k 9GGmvE{ã~e3QxXCIŇ o  y`w)GqE$e+paRUNBC7cfdu`<rp @=PӮm )Wn_Vj&gm3XTW;]c [Gu%eQi K.p ~`in_Ňö* EIܘr}Jx/wxX2]׻1/G#Y?ۡpZ<NG+3"-"v#Ր:""K4O6*N#Q*\/h覐3q^k߇ٔ8D[,o|^r7d5! 4VFGx4A4 qtS'!RuJ>`;:MW0s_~X~ZWƖ*A}Ur@QA`(n:ZE@7fc[h2M_81@C8\fD<]cbtۛ',kF'z5;P1k?Up=#U_S Ѐ^oNN:Vtp"Nl9l.f -=\vb7 jilSFD$hepH&M_8zA!Ovx x\$1+}vg$s-OyPuQ`&k]50Q' ӈ;dZ8WėQy5O3Tw 9b!5UC֑1ǫA߃A)5KhL=`:4HT03 ߢڂE8֠<ɭ4*BWC\[ }M m@.f=ЀgW{ch a(()N8s!.-% pDEZM[{o6zj2_);FT) RmuV- U+,>g8?lOjBW5=svydFt;鼖DJsP|ϐ]˶VCiy|IڒS,~#dFLxE*sOCk3ax+x_ack >vجpHXZ`cdsXE&WR')l!]Owř~GpUioJgل=mFG)}K7vBǕq>!)^TUd=:D_(""Cf O߸ [чAm{(p7[`lq{X?&QLZuiGI*ŵ{f&u\C) I*' 'mGXh (_9{_!M tq:_b +OPgy$[5cwӂV4<.+ naN+RѢRev}.he\s!oW'Xu8f1  4v:$kRиY%y'^fSy7=~cnPa?Bqfa;; \ia@ D 4|;֩VafK(1ZaN0EuP{u qQ*!C1MtBEQvorHc-I%1,ݜ R@}C"n|d GO(C{X}S>e2%" IhL.jU%#7ycU3Ʈ\kZlf/< Qqɮ2m(Woi'%̻y)1~Fbҿ>*ATq@F?;9&k1JHVs7JV|m ۫nBnu? x̽6Uzs3/MXh6iz|I$a'3x*RFj<φ9GWPCyHQѿs>v{yD!t;0XmѰڪ1]s3w{pb@gr ^6,tЖ+Mh(v\ rؗ5mƊ~xaA:h9&bĮ`udRTdL ZFܨTV`+t5 rW2jF- SM`.?v+Ǿ;Jdʰ_Vu-OyբaeBY\Lp{Qk'CDg̈́եdD8'X.T!0FJW86Ti!e$=}R\3FnN{ŀB0a W2BXhcG- =̋l9?SaKΗy_ʌbAοpΚA`m齑 $takwj7&ҕ0tB,NVhHⓗJaum-u%ZS H pQ@√2 ~sp,-\P’'ô:pV3Rhk~C&;#=_  4 / W3M=cMLq3C]ǥ ,%72WggߍaUsw1 "YgDkwX#K+˵atVBw9bEhT4/EexYړ T< ^.SDm( =+ȹ=y^e㇔ %h-{14T<05 S,UNB0:a&ˍ)5A|Ɨ.=@;=?ƢKY٬+;Igrd?dT. 眼e =V&:C8~=Pշ vP7/o=VSHA࡟yROé42 P[8s %,BGx`@ϩO3Uw{|UwʙdŴP6Hp2k[;B$,}\K5<[tBKG"}H>JNwh?ץ'2"Q2z>ړτ+x*mv AuJF7'u{2`)Ab,8"4mϚ壟4I@˚7-]l|JT;XN a)w`wӼrAF'7j;6hXVA#cuM[L֫2W$vOhY*\UЄR=X`65ӬѲ3ݞ'vv<_ɡJl༲I))~[~,GxʢQso%;c /I츚]Aq3sgh^}fMZFZ~i>G)+NDf0wt5h_aωhNs/Ox"{,+*;Gucߖ$NMK7,3ak]`ބahO+jtz<.i7Q#R4м7[- @Yߝ?DGqg#5857>}N{y eԭRXTa(] M~f%y?&JN?hݮ-sh-ONH]`upd:lUZ@) ^~꫽͟&3]mz */ ЯPb:H-in6>&i4+ղsvomRR(a*T߁G'.{uSDg+zhm, 8}7JlL9'i,-'WT>ӟadO _XO:H riyQ%Tm_%'.o.uQ#FbdW#LN/HU;;;藓"BLt<J UM? ]5tl\ǰJȮm 'cv@"& F+mܖWiYI&4,h D6Pq0M\eƛafbFx~STJ˫~"0j#uH*,n ! }}-kRCk+(G6oJy恻ڤtgF9Ks| KKB!M>XyJ{EL d(+Hg7P@OcS9R};ϑT%&[v[Mmذ{H!$ZHDAaGfi =+tԡq Us]֝L3ωcd!tONZoA7?Ȭ(2yP\{04^f 3K>tS4/+C== D L "7YՌb"Sʝ$X WUa.c?r4>U4PZ4 L)q}L-b t5LR CXCI,> vGyUx Z ݔ-!k\>~4nJe,KKѶ3owr_򐔒2L-նo¹+ 3z9[}|`r;G+^v|'?KWm6\@nN k_i|5'_v3´ur q6>m/ Í{$/堌E%B*~b#a13"-!񗷌dכTY=V);lmŸzVEDI?*>FH}kj>kTIu &04Ԥm䄯dl4 ߚN?;L{̯PxM _}~, Hu۷F.wn.k߅*٨){ȍi('c>3箕cRRhVrEx-c6R;4cT9>4[½pkA5=c~0?9C,(%ƿ7bt*(bVustjN$5B8ҫzr$b&{Q#(u/?~[}Y+ĭYrP /?NBml _@?F:=o~`YJ3O."h`؃'M9EN_B:8p {B݌YBʚ Kp#y;(pJ܌lrwA9&WDsETC5P-dcզ:3LP\'=G^b aYԶ(S0:TgQs~hݎm莊xd8׾ H=D6bj3Oq;j[k'SB/LúEL^Pvۚ^ [t%д6n|'])RA#<+<-]1y0EНr{۬EИћH9a\j'J#{NJm,钮?Gb H+|?2<5Sh|[Toʎ*uW:޾DY]IKߙ~J>0\FJA.K&KE~\'$-w4cZ?a|Kz;\uC^N|ˬn"9Q0MEyE4]DARv<;j`lxbw0sfGzu hnDTXIЀ',k^b}_X`f'Dc6r;񦝎0Z%̮%T=?qoȄN4%m{@ůmth8KZE`[yHiZZZţ7ɟ^1rK+O]Pټ |`}o)Dk*FxgK_!f 2`䑪JSx ԋ.5@,5y"E/צeN{O6z&(6y* С{ՓW  Nf,>$9WGf1˞A7_msxzJj__c AGvKl91u-Uby5g˧=-:&s $[Ɲ {w^^h`8i5*V[R!! MDc@tUc ة/[ x!,r Xayw!גGF? Bu/eXJ`dxSӍw=-!A8<9[dkv'b3# 16d YۢkU+n5<&S nh8R 'Z)@ycYmu9>1{avh42^=]~rB:1u.?g$ijK%ϛ,ih*} JY!rJ{.~F3y,ٵsԨVC6/QT x}RR!1&vx}a"km?Kw)ce}pԋ C rJQsEׁشdSx8rEOzl4p#Rl(y*6*<a8F=x~SC^ڮFi[Z6XpPH1}1s^u:,_.?1}=A!/j49x!!9qՙnWB{W( +lg37mX.ԇѹi+&HeDȢkE |zzNA\C> &*RuҰ,d)yl]e>|iFF"/;bPԴ(kMvHsg^d)'x\)Ԉgmb2&"4YL\ΪU-0| wC\4#~naw}|! oAX T#)]ؘ!O!ExŷYa:q\}$͊wfn_͡VX@4OA_nЁ%Mf4ͣ['LF?1K@ 4}yIsY O\9IN?I/ScqijB)RQ+ꆙ+b]+VծVV|mTBx>4ݵ߆^$FIڝ{dn:##{]IV,ySpgN&%F(yz##w ݯc5؄Udk,Me$DCoĐ% E<^Sv9DDI fk @jSIMj;f5-bFɐJhIUӲ08 yIiEHW4!b_` '5K{n!L!y!K< 1(,YlBpەfaXF͕{[-Д>IȊ 7l0.PE4}纼5s['΂zv-0 mU&oc#bCU7"ÃCEpZ07IQJ:/xv6U=R$"׀f EյcNu"{_}9t ?#m Muڗ_~yR\9eIdqƎ3sOԤ< bΈ2:|*\ҢMn7]vn6K) o9~eg /]Y/@*OO>*}(&4?Ȑ+ h9b٨y2j3괘um[Oд EwuZ `3:!326m+}G crB4 x-mGo{ds0!,,Q~8DEǙh|5AÙ JۍQ:#=V])`!ZQ st.j:1|QB dY8MU٫'<̓^gX+,$Ġu'Ʒ.^f-Md 8^WafC|Hi brE䬊8N~xyq 1"-L2}l4X>%vTE"%@3۲ #!d}Rbi!ޮ9;GogT*Fd})uJ\( B&-I*웭!}O9‹Nj8&0{pOҪ .g >L#]F Gk|givnu)K99eAh<݈WdwY~IC 1z5ɳ~&`my;IӮtU bWh;pP@9ptQ,5#t39Ȍfvqr8IPx5[&.^*+S}u€s!Z2 \ hM7v8Kq@bIUv(G ɿ5գqӬdct…;JR{ˀhJTb/%4xxxTϓHUg1^1Ւҭ:}FnYb`e fI1gb| _4z|Vaitu$ 6|7Ah⬠Ti(N`rP.q[mtz:輬]<>T:W#.e^xDn^kݯ8譚l3AgcbNIoi ql=R3LML=s+zнR!= 1ovE+W†LDYȫͱHBK :Tls$AXƖ z2r&D"OTEX>]׷-2-DIίF2"4F"mtAŶI+!B b˧. 1~V5Kq01f\;UAj!4mp[m霐Vw8Z 'Me왢]KbrIiƕ:ҘPXs85niFChTn8ɶpC}f\)rɉ&k.?#~>=ܺ^>BIz\Uϗ9# ~+@ HTy8)zy>q7trb |lD=.|Kd 0Pjn]O4j2ޝ 3gSHə+Fn(-ׇ+qlpNԨ}4ෟÀsRV21j\xdݻHi6NPj&Bxz^ryRŒB/}W:%;NV\*l-wf#<2$~9/Z7R"镑}+%(LPvB]8H)¢{E,v :>%Imrس4q NQF.ƊƖ ͽTԻx%/4 K6-:ؾƿɖ_Mye"^gnc 5%4ao(OVгI@ȹX79wP\R:`7bU6ɨt-$Vа)I(:4X}Å~vq2v rG`G13w^wTTs- brJm(*X{_jf=34VIXL<.c{}|[ ѽ.yk8K,)җhblAjy/-4˱T<1 ?D^&޻~uێ#)nZތyWi!UMr${X4˝1 pߩ迷KZW@v/qf^nNO5S*/I NKi\#;MN!Ωhj!MS6l_9H'"ގ'GѥLDR.hZ^JɹSo2Ï?'6־)Vő;F3e6G5X0`\|Oh*krI&p2l|NW ~fK&e10rIwQE5#";!Gjr2Fܳq`|0<#>wer?c7h4 qHSrӜ^)t.JYx]=R0F"WCglð)Q8t̓ RI:Nz%5_;:W:xsyƨTgkLA@H1vXƂA`߼cDiqOm+i94=;v/,{[A.Oct 9p,יX yEV_ cy&84E d A `S@teY) #+XJaLirZUԗeC: ;Ə-)i xPv4xBlkR7o#O3ox0 1~FB3,܆tm`vٳpfYVĴ)Cn=[>B%i7,徣*- cV"" 8;tqIȔþrWSf,U%tېU+nh*.0ͥ6'yCD-2 1téNJѮoW8W\UoT^>cX?~CS5YK73Oh'd`Cw3s4k]V\kEF<Y38$0H^c'-]'LlRb(=k0jǛ(.Z^=#+*iʆ}β N848WY믩G+GZ7{#e\UwD &#ѱ.J+߃EzfKO;%4]_;PC߇~yΉ㮇< RE7.sF;OLxj 9lA\κBX=؛KD8; '^.;&6amõȸS@X_ ^?c_@%-=,)Z1oXD2)(ҎY|2\8/M:rZo~e\Q3s۵hxBqH|Ô!?L.9)v7:-Tn7G+Ƭ[c$:͠?=]mkET/(əljZ1Yz"z{4ޕ57N*&Wdt[*zRKhVyH%a?1C! 6N@0EϑEB?r'lsµ ۂMK@"|Lad ߋ%_fH=+=k4P6kk=KEB w!+=SkI;(:؜ /q\t۫b~6.?[,Py;*9Č ;Cnf3 L<%/;jϛ.!MףC}v\rC+' .4RE Iw0kn-Oss.(\\X"J$mA I|t KN)M<~@xJD4s!_q#E馵FdJBB٢7VJ7^ q-J !,Ggrn $ \g=,'TV`iS@'@ ڤ eW}Kfz\z.;#kGi[Z}JM&H" ,AJm`vmd4:ʠDSm26xR?32)o/fu ~ڄSE ,$/fw>ǮYCfVNe.(=)\[/$ !zk{c@W|E5)B;JulنN)Mf4XG^EW~ ??ۧH|uk8Kf M,cxFÝm LB`U%q'7P0ίVoud9Bb(F}I&{1|8-FwCթ 򋕅>/^SM")?Im<@Ѓp3^BK6gCm?$Vu{OIիkUaXdEZOL9L ]kf^^)"WW]Q3fηtVQԖ#k$gǴW3ʕtEe;9Mۓؽ l)9B֋d'ex 49T'Q8VTT H1eDbe5r%[&id>~evzIA:^ Wyd}1)ittxMD`~uA嬗1)TMS& lA#Tx_6,~`oFl4csbfߺOMWT(RrxfҴQлHzͮ:y?>/ 2n@֜MuCdaFtmidM9gtUaEtjTt K2/$( h080u;߲Hu&xygTp{me+Tѝ }udJӏcI%{PlBĝ;8>ZW1\49 ʃ!nlŠu4Hfy[ )u1T0KƷu3W .PEee9e5 B3iy̑0$ڌ1l>r#ޯ_Ŀ0"h[|'w][܌UUIPS><98K݉wO^c  ^ʋښč(u_A3 ؞/1:|Q c+]աڃJUt)?Ӂ\I~ʄ ,_3' doO3}޾A"rc GpWE ȍXCױj(7PW.x-*~׿k^K2nGI ߠۂ1<*XC+;wcRtC_] ײRsd BR9T Szn=05بeoC/B}鸼ԠtǠ!Ie60Gş¸O@1Jq0fNWʍP:^{޴ $!swSX!N;!!5~lMݓ:ʬce3vpl,Y(_a}#}i0&kL~%5:Y6knjނc"D@k*t fFW; #B2NC5|#ǁ\9;X$6xq9_X̣J˜wu-‘o Lp<0Ԣ'%2r]u4`H yI-lbv0sꭴlRo nHw$:+XW>}ʦyuAO"*%4D욚uE&_1sŤ‚Е0vͻL0jZ:&ީHabm$4GR̎qL Sj4\#lW<7~ctYsf`t& Ü:W/#L D0|-jGS5 ..P{o! VS1]Q݂Tuip߱R(4T dDV0$ [R㕺g0~ȠՓ-v*idߐS#2󎕁8rQ"Lq+}I8PH{wY~d0B{Z8Y_.{}@tHin{Hy߾.`yv`UMg=kf@%yA7Ԭ(~VWeۺ0J_{3I1ko 8V `+{䮋؆ rgN58XJ*ˈ\ 'c'zu/?s1?y Iq^M[z@#wOp)D&*Sb_C|!ٕ6| /aq̫WiVFn(MdO}mŎDT񓚈3tQi]L#ȃԣ7Zx+v`?_N^c_@5HTB {?{%O"r?{*.uLO/E=>sN8M7DOjt'.wJ2öze$XYiAioa4!D0 v"`I =?=D[AK֙M EBhm&2IBJF2"݌mYO&Bu@m|"h<# 9U ~&w_1 r7}^9ŗYG ̎Q7={wM%D:~aBµɔLqas8_F[T*A IVAɵ\U]|X d+,g}94Vs{BsDjS*-t#Q2kWw|;مIq9P&w/Y*Yh&c7 (Dn3i? vPϊ78+M4X,րAQۤst]qGR-K9r'tqaKRgnh[*dh oN>Y'2](Sm:SrN.)J;bۅEcqOۊn$Ztu@q8_|Vܼ Ļ MءM""CTP PL|oWlօoc5MbuN(bP n%)̞3[(vwG sqOOjJCAb]gܰ Qc/FSI-JE#_ |^SR9Klr@iZGn8OީfE5 }BD0ga,X;(`~'dr,ӈ*7 VU1 :,B|Ir", Wӂ9e9R-|;0 !,T@҈!s$qe%Z ƣDJXȿTz@`*Wz.%c<1^74w{~?CmliWu *;p7 #zG4 0Rn~LAR2%Oæ\ T( ֮zyǧHɥI']%#k Up빌tb=i*.iK<+حw<O`?ps W~USU`96CkaԖHJݖ"Of>𵲿Z`n|g~eP%-:2x8w! Ƣ-|mJVS%*6|:sgx,,bMȻqUH,¯6 uR{Bci8qZR,QBjX{VQZNdy(\.9[*=,t! 71H#kU,o&r"80Tr`#TxT;[ujD˛) Lۂ1 X-`@5α`MiUߕ>0QYX,c% ]Y[~7}v3]wK1>+ }wv-y`hyBcLmcOzg7pY+%"~S*? l 5R&"в3&?:J*}:ŞKZK%ײ8L^f]b}nt%ROB@"Hd/GOH}j||kg\8t=Y[ ʋq=%DUܠPt ߨLl7Q!x X j0RI6uh0-ʟ_M|LJӜ1ֺo0/1* ;WȘiZZG@F9~u4p*pF`[Y4B &d']Sh2"Mw6|A0v;]}5RX'lgvјu|,M]cmX6g_KLclr&"Y[ܞaD? /۸qD Gnob82 |T-Afw{$2TtvPJo¥^1ioYT*]1w '[8xvRZ 0]ۂΩqYҐ]%O(\@5Ϩ&'ynq9MˆUyqMz3P߷S$J!{qYNcݲ3M 4Q1p}p![iS;_P9sG]?6EeaR#gjP.g%Ucc/bcvunNx?Y&Je _RD)64W'܇M=E}7hI4F$/^jzwhiYEj@$'d!\@pFqK A\ +bҥ:Nղ- p}Gn8/1}kƈ u3gRLʱix Ƭ`Yiqlb wa]6U1ڷiSr=kSD=e MH1lP,`PԧBoʮ% /L!ؿHGg|i Hmd"z"C/)<'CJ+qQ5{9ŏN=R_R8ll@/Je Ӳ1*Anz=$Ik{?>^X!t<>~J]AoR'0 e'%v,Fn7uD/G7<[qA8tXiO_`Y@yuKul1E=$Նdk]E9伂6;m*$A(?/x.5_EVZBj-8*~p`Dwٯ&q*$OJ*_`]Q-rH̚ Z2,< b[=)>Zl(QO7h"zFAKG.UM6WB"rz7DRD%Gpn_/qDzpc^bp3UQLq 7_~8ʚΜe\3Cf2 Ư E+Vxٳ|i{q{pvKb;Ho43ܙG@G"EgqhP m@^ BM7׽oHD9۟Ep T(kB>\eYJNq4zJp2I҇Ő_?*oxthz8^9eqJm|vP(Bvjr>2IA#a@RUo0S Xdopf>D8xGpd>)(֯r[(txGOF0nַ V?,%Ӭv(d`?cTr׻e.r̤-fdt,Йq!!k OYFl5o+=7&>"#>W tHP#(Z;_L fV2gSLTIj-r.csV?/: *r+!ONF/ҿc Ht5vP0XBFS('x֡v݈ekwKNvKw,X%SIҩ/26oR>^ݧ{7jZf ׷ƲfJUE *ÞЫ႖}ߏI?܀>4[I=& 5@>BV:ӵ0Um p`CD}m w 6Vj1u-wdSQ~uGmy a&sLY 3,mqG$qЗ٣c EUw~MK,jIaՒ[ܯv'WK+V^|!^LY\n%]-(AL'}cP2Ԍ5/o܏j*UT[lm8꩔W0R-Y/j;\yGMh g5h,1G6#22γ9X˹: \Iu,!ǡ-8r!.^o9ws dfvQHHfǓ.nn]|qzLO).$^\ Aw)X*ֳ狰˥#tuQ爐'S:]|㱞ɜʨ[g6I'Ion@uEIb0f\"`\Rd"U].Yv8N R,/p?F~ h m$Zrr_GDJ2/ַL1[ D)dTsx^f{µ=G%OBS"ـ䤿ت1ῑGN)tG|epMFͦf"Q 3ꌎsw>{ka W/5|lʍ:s.&7v6݊oG xJڂx2,Ϋva@QGC9Uv`)L6),&8FVο%џͲ6_[+_1טXjIT%HdqtpƎ#,sxduXonLKV6??wHߩ Ac2J0yaCai20Ht9^(AGJH- fC=fa0ˠ6+k^d쥌NQn)2kpL<(Kږ~!:-,Me=ViO_%N 2WlF5jL#Y!ۚ u Pۗ)8 \!j>4yPT`v,>#7 Q07 ִUu?O[ɗ 0<_pe "-ϝ0T`m׃BZ +la5c,x`mIRz~s +O||{] atnn5OZJĆel.p f?.nɘ:F<~7}P `>t)͞:^zi혖yE'G4_yp{a//HII6E,=2xƎ:QN%8qdwhؑOxvq*1qBQIo 4 2`^qJqx QO6jܷ?άWۨnZ\C5O2_%W:}>(HN@&LX]FxQpk3Pۮ^ @޳#$P˵yO8^XHkQh(?Z3nD$ؐ54ۧ5v%_3=@Wy*~<^ѫ&Caa;!/W m/\;@/A)j뉼'Ʈƕ]hyng zt&}1ǯn GӼ ՞I-;?3CTTڜV.>L45ٛ<$AqCnKmђdtk|m3 psML`) CzNxOqЗka_p0=(\qt,I3Hȏz㖜ɜw/7%;:GAoݬ>&V~a1mfj/j9+uWkݑlŸddESQ=GQ4Rc4͝>O] ЊmVp Fz[* @QzuÈdFV>Dɀb/(kV:V:Q(X? il"xDhL.^Cǂwu|gHQ'm6fP5&* ^HuɷADa o]tEYFF|)&|n+dD _8GdJu?lhWnGM jM]A**KB`XKf97g%iHGvL*+iJk崹qcK2#ЩZgr‰7&ߣ9VKi1jHa =y3˯m)ȆI0[ "Ru:2w[] 7ᆰ(GWa1ɚV todi# 0NIצo4G7Ԉo'wE7|mMPócO72gO-byVx70W0_ru2&Q@ՊGzJ OGyv~\P~\gsr7)bn {WS옰ܷJQ,33YHyV#GXc5aPf1N  { .v\|0D2He398MB,X^ƽa_%Mi@8:!InG^0z]z.OӡdXɓ&o F_n`4N|(ٚa^PXy#^z؍{T<<>h]R4nSL(a_e5|ӷ'YRH}+L1UЉ_rw%?WBfH, b#pMZ؟Y),S>UD lo~82dTSw.邜GbG!CtIs=pJ`L xA߂`+T8I@pb+DOgՂt5\4AUAz`wͤD~$F  +ƚyhJ5:Gb9J9. >%p :X 0k'VӌƑ0<}O[65CQt q8mJ.wHX;Mz hʥ.Gs bT%ܾoRgp2o]ObsGHz-ۣN4@֨pr$):9d1kc;C=,38eA.'4![lT~{e 8U `\(:M;i44]JTI/*B=zꔦV4wa8A蕤{7F0_D(JM Bh}үIm#Gvty Pii\znQڤR4MGjG{# Vh.ݽϑ0%>9H; i FS+9գk)>f{C FjF;C(]0H.-0O³u i ._ 7Н؅# Eh7@M0C}6ne> \a;Cv B\Ʃݼu<5#ݳRfML-=IL)|Ad QFPy a h m1R/Lد,j<| .EگO~=8LWЭ=A{%ڊ]of[WQ#׿,+b>~q>'X)b0Q1j!r XI!il,o>~nk~ fyHҎSrAi%?<0C__  wQ?{Zm wk=9,ٰO)rD;z3rTƔNW3 @X6[hg|ok&{B;.2ĥB',5: R_"愹H[P?-+aHD*<v햩$l-B=OieJsENzo,CkN믯[#Fw+'ȧA+ҋˬ-a07i%Ļu&l,EBSEwW[(%ulR(=J,Bm![ݮr.8tS%ͯSvvm}uhB' t3g-}Gr*ER1bS]#딮&V&U:U.Dg,l# -tS2LD,[)3}Z2wՄwN?%~/K%硛J&S=[^oCm'LO'W_qwvl[ZV ܺrQjE-G;P*I{$.C%:K+G mQb>ZuzdinIf8 ޚ慟.d 9%0W4Yf*SFN [_W ' Hz>wҳZб`3zo7e[BVMzI}c;D~ׄ* @srA^zKxkp!A^JbE"$Xo̘s̶O21e5Dl;d?CM֎hIܧkX徭$ݳLc3ջe1etY0{@;Z/ynIQE>@5O+Jf~vZKġOڹ -( K/.v 7a؉\ ${1p~Lh´coK)ʛ2W"w鍞4  0sKyE (M00Bƙ}_rh$ڙZŝӗ& _MֵTaɀ9_A?ǁRR|P-Wb*-i}=5I3[Y'B-atjӾyFЍy i_ihR<-vf-D"DO?bnQS8ҭ XkoqLXt1=PJk|Sxއu48Tw"g7zl8Qi ]dY | E;fDS, wtCDeUTyj4Ʌ,i!:؄3"dLoS<$ ^HQqy^fG7JxjJIuGq}^79w禟xw'DEKx`*V6jڑc[\n>ShWڟbANn9-*kĈTُ.5o:J=PKB-nO :P@)|Ay@ssJP8"-y@KczZ>n HK9Uk8?fNn 4Z)S@W\z#1DJO0홲blY#&𪜭 $4kՐa}yA3Gw-8*e8F %,*5BhV̬I½ˋw\@$фb>)B]exn9|{'ב=>(fh3Uyavĵ;!րf~ Q>c >5| 1QF'jK`2)G4otV!ꗞ' 0PM={.~F\B96|{Ga`w_cPNFDKaOhi iks 1<;cX%*9jW%|;C)yZl8)P`-KbulȨJnp1(bAY]AL#78.zkRLCYxqrgT BΐXBR}N[ -8a|sւa]aOHYFoxHK=\NRZa[vMBiz{3l)id[Մ^њ1\pAHVPI{euc:4O~Z V4yͱ0 &mE(;5JN3qʳZ .Kcm-х7ۧ9ʓ17T?x6Un޷T Ncm '`{@w1|̱se*#(?ɛCou>R|97F~ Oh_PܣzEOC]LX!SN@TZKp<ў?u՛V4 VZD=3%]KI-*Ƣb ypi-* ةjD6OTjA传 ~p؜ CjhJӜ$: 1i5hp^) R\A öJZ`K5 r KWZrm#8'l_̩%gZor!*Z cajeŃ?6[Hæ‡+E{\BntN4 `biT0%޺2%@f{{cNQ~E>,,F^ GAfOy vs.C 0l-KY=Afa)w201*o0q|uF󉳌 %љDɦmN;"9tk'/^;(.1%*h(y}:R<7S!Kk)ݤU$e*T_P 7r-l;@`6ա*$`MЯ4}u87N|n퐬%&! 3$1e#IɿXMʀP T&W 7艃Ytf=y[Ky${LV kd:_=!6V10bB{E]ZlEݳ^X= vZ+J#ųҗ=v?mZ>ePfaxЏG>@A1QL(91qnJ7RSja&'!WKQ/15=jZ%Lc{?_Bs-)̹FvyYחOx ,K#XI_=`S!Fu.*ga3US6˯rkh;reaWݲ6I0 ՀS!FeM:]j:%o6I0b4\ptms'.WZkزˠVE1=tr$]arh"&<ܙ|m>w2' 8 ҋ|8H&U8S7e!6zWs.3Cq0"oA(*5[0|(e%`b!BD22?[id &:tthvIΜ+nz~G L}#>@Q)ވgy|yW.{M8MZKژ>~k'LZ]|tx︴bdε.%bS u0s\S5VAy{g#zf zP3JN޴ͽ:`fv\ ^ (d>^hz?C'|:ַ3{߰=\h\N$a G|5%cD$= txxy`-w(o0W,[gN 1!C>@a.z]g7Xmx~Ϛ'dsXݣnn,CzDؕ뫌yRtͯm3"o]cjPY&WkG*WrPC†Sn:'?,/.z+GvR`-6Reᨼa.hdsĻFhXILn;>`3V&mWBXFZrf &9}jRՂ@_jRÄM +v\@~'{zz0KH>G։U_%B>U\˦I]Z“m/ӊTCK'5i@)Mp3@[]0;'jnM"Y+΁aR*nyA28,N"QT9]2a)eE@[O*rsH#K7W_$SorLlIh{\Riwh!<9Y(i~4Aa*;g*;t"zrpak%fp@ҫY?CvgJ0 Pl7pLsƤ7aȀZ\ }i?X)n;bK-0ށY4Iq2!bv49Q0{;ӣM{v@X(SA^)Na?++@9S1YDC` i Y *0($ۻUi mb3qA/ѩ܆s,5L>6 *h\U9Mamb- +^(8} $ kXANr w}HNt*lKzn$J59$Eৣ_xTxol, txa({\Ѥpw.Tni _JYj޴nZSYGC3pT@*^+_dK;U6?uAsZZ4zμg`aE{IBM#P4s~e~2R=nks#Yۮ48֢ȬĉxŌ==Bn : Ly]faXԱD8 ֥_awradY#{|h{F'pAX1D͑7/.WChZGv=ETq^b`UFPG)}T$^ `o|.SkERiy(2&a$wB@q> &r41L6h;uXG>b)t 2CO U'fM{Z%I7롖@7Vsyt1[G5LJ# /]+m>?}:,Nܸ=p؉[\كrJBVq@da1ڃK~Sɖ@H= R;I/iw>#WpGw@(76mdh%A^֘wF0+R( XAj`]3V~eRCeSsS_2q J3뀣 NxφCuTƃ:Wa޾XC^M+^HKYvV‚z}UkӃ23돹k;^(@fw`>hve!`O̰'=}~)u( jQXPMeYQF.T50ֶ& G{:2XAl%NAHs$+:gK7)\pKStw#Y[J>+5TWx7+ TQ;U75D.;;ق]wr .,)>Oorĥ.6v r!:TˑԱ 96M~s$R{D|szH7d]8$BĎ;7C3VV;;Z2 lk#Q,Nj%fm 4f971ʍ0`] GTi%x6Gsb4,A1zObk:8m(GzlX"Qc00C[`b_! 3N`qZZ7'A)Z ׯ~ɢt&~ԤQ佁IsčyU*SU6L[Ljy A hEtBk:En[?>G*r{ ݛI,i|%)XҎz<0UypIGIx+P+zt6Ag {ȉ$$(ռyk{vGlQ}`s^̿|V "ڧ2>)ċީN$C)i浑 A[zwH!q):3oZ^(Yt`J6Y L>S{YQUS E-PlF Zn,=!zu)%lsYI.=}(I֬P 8t՗T3 CZ\(NC`jyT7vkVn!<WSD@_x4{Rh [M_B L$?'}ӓO gs"(澷В؈%iǴaT+Rt˾] "*)$ڍqЬ$QaCJ]Օ2z:aoỌt Ё3C2SiDySsq; LqcV} 7^ݾVSS9$ݳPBOըqUDM]!~Y`Fk&{nY#(@!솑Ijta>$`$Dt7n =n9#M>]6摐@S O&dy0K2+cb>c;Q;xO >?+0fo4DUP߅1w IA2utpNQoo9Ɲ_qv0)V8A:q@g[\Zox d4䔅vAL }ί х|)Mi)W`bvY8f2<FLJHQhU)ָp^lɮ%*)M,k4#[%$C-ס"W1*[7"v>O\ڇ|/ZTSiw9/r+7fy1u5&04jv~X8!g?X_SUc yk-A΀WW)Ƕ1 țddH918ܻ(6Č)!P[$JsU*d&^=U.ӃlxQI#^y.XmJlE }M,VEe P݌54ũ-TFʎ)s jzI@&~VnCfhd+N:k :h_5"6J_jEQYtvNoƢbzo.z`FnG4qmx%N X,LO=J! R0h\;ǓhfHg[zΧOr O$$j L7%Lgm*c鷹Fԩ\g!l"кGsmGI ׃''eE%#Ŋgͯ}Ɏmz_MrsSJVn>>w:V.lҖBj]׉ %= u O n!f:+nun _ p= ҙW!MNh,#IYPesfں=4긯XA전#{n]lؔI?vm m dΒ6 Fދ^'њd b[fߎ]h7(g}ڕJ:W^!Vhc7УGOa::aI(H8-u1 hr-#rO$ј4Bq /R{_P~u8:U\h$_an)&RYЫiSReƑnfbh{|K ?cvi{|3G:ʎW*`)eͳy"t耪"$Lڙ/zg6o4&hP a5Q&M+ WdUP]F9x3Q)\fÐ\LHv3E>{ IȚߌ#ҹEFXΟ[1tSuL%l};u_]^2\Hf!= p챜K $8e8oDVy018 g )U{RXJk^DRk8Cڡ|Jh0"kc!drؒ]!En'mĂjCf:ο36gڀe Wv`}Onǰ )Nj7{\pDo#[ᑝbkQϜLHI8N-ű?C ѳbhksQNZg٢y҉ o_v{HNR'U q68N&Dfұ 6G-* fg3H$S~U(Զn7ӼĦG r\)0أ_4Q 8&R N9`#?3szL/%y߄[n  E٨-Cw6vUy_|ly˥7aZJu2꒓;KPkқgT=׳H@SՒaUT0lRn!zr a4S˻uyq>3pc8 b@ 8܅轜+(<\_LM7-IvQud { FRүr㩧0.n Jv?h%}@?RKg3%sqɄ/ًt/0`[f5~(- [ &VdwZj\:,cA-d> l x{+u r6L޴KGcu8hqJmZvwql$j(CM=r E?/ {us<8KMM3wv HBk/tFh O_c%3XJuO(ƧLghqAmg:pP /){r+#Vdx|{L[󂐃j?K%Ro1^^ A#cйD8o0#ڕMl;_{{aC :7#+KV$6u<=bQMۓeaKMn]@ 8uܠ#zO [ J{0 >5aCaz Tč4=48gY`4 ۯmzBk8Դ(I CV ƅyn+eL ˨Bwo &k`!-&hz߼7y.B=8 9yXT:K0ҹ:>L<#@h]"8d:2mZ;w<Ʋz3,0e}+̵Ɗ;2EL?*ϻ% _gaDz߸ _\DFƞ]A߬C3M2>h)9+z ǘsq\lʉk&IOx\\-'u6O3ˋ}=\8(m^yXEZ 9KZ#Ϣ<)g:Õ gݐAЉ|iŪ.y&<!?0Խr*kz}i$2KcVuٷ4R!UqAZ=2QUɳLJ->Rd(Ng-|e{dFRzGFi&2>\;E9gl7RQŠ;`65N,V?Y p;K6 20W&5 f .R B0C%U`-rK[*JqLZyG.k}p7@]!'p}!B3Ir^Rw6 9 y;uf(Of5e ݺsT 4tҁ~j|,P)6yI5m斨nte<Mt^9]ߵk\5Hc~[cjo`pfcITΠeW}]L_@%RK=݌z@ ^<8UtlF@R:Kj-t%f0 w쐝Jy;Ys%&Bע[݈? ԗԬrv`?y\qmўժya'ܝJ#,rSiH`xlSO*j5ĈH&Dpv!*PD~Dع+tBQl\dyk-K@pp^kIa[m6e{3%X zUϿ0$Ⱥ6j埻Q~P/46v1^]ENubJ=:~ RJ$,غbـG(|*&qa5m1^tzZlȪȃmb[{ajXvE*cU_ru+6Bdz"{,Hr>,Ȓk+tu.a}#D  jX'畲/Q8̤6"P{rRKUj8Y$t@K6ٮ05>,ELTzo dO=a-͇<8/.`eAO:ZgI2m.`6@"'8f-iРs$kZEΘLC aS)Tt>׺|ETCӄ2FVT0;_g md'$&TijGH"ά6Hneaxch ޺[ݨ^a(7Ngܩ%`*QXn3%lJLa7r f qUDV|h_cNR٩EXޣZ? Vls%X vz88@0ˢ֖Hi֌D0iБ}qʶ{0 'F3ɖ1g kqA2~>[Zێõwh.so'T>vW,Mg})⟶>L a/D:˄}_&S0C("6lC^.O<'v0b䎁oS`rE?q>oќ5)AՐ>9,} Y=lcAjuV!NT:2 %a8F!rcUXz3Ia=9x6uGς_<=?e]ҡk \'!6r)TnhRv)vr%7*x}rҹs7꼲r0bJȺo=|̩܂a4f:{=1N)OaP䑘QPZ޹6oOd GG[XqG]q c7Xa҉ڞ)`Ks9ȋ1/zëaPw05""r9\A.oWAYY- wœ>+Ypm.~KZmꃻodHD#zLG*e uuh'LXf8Ts(*O8dpkI"g[PM+(k6 0,6>7I(!zdNPE? qeIp9R9ϓd^:`'I5:wzi}mO[+c?"(K7C:8'שѸK4l^ΥE+iJCJF|u~g]RGF5N2Ëѐ@ ǐ ! . -@U*>n&0|dŀKc? MR]$W0\UKFDYLDz>q犞w6My w:).SgDSptmu|/2N!j0sMKE`gdX!?ԘNWAJ# ZVq03o_a8 HaF".? u^.*J48,lR_/]팃z*ڴDW޶'{?>8˄thnֆE=^RV @Gǧ r^7̝:!.c8\bzZ@l NVEzthWT&VREVѬ"4f !Ls!Nzz#)vDa䚠s6+E]1g8PzN|álAN x9|qx4ej)xbޗJ]he -X(K.!C""\~Mٸ!aBJ;4˟7[.#@rq"*kŦ"v?7&o8HbKͭ7Jc:>)<P\~gR 9?uF#SEaGԉ{\b.0(g&KMqRʎAi\"!UnlS6_[>״*p\: `1AAZaR&RL2h\D={Egg G[4ŝzgCQmT1ګgtiF̼tM0xEMسoZ|bQI fpk>X vM*ϒof+6a U 6|&c.֧wcf0R 8PρSشRWt^\a8{c ˽dw}@ 5R]޼_<%W5?8r*qM&1x$aI2q,(2gv]* Nw-$^ĸ\)oA{JSyՕE昶)ͽEWqkڄ'oϫgnytkUC%RY+TwRZr( RZ=3\Y D smIִ WJI7HTH;\%mrU <oCO\@w7>#Rxb4;AK42/#)5¦@h"6 Tc{!NJ ؚ |Nޅܨ ~aB[9z^ϰGHhe >Pz&pPmЇ2?♏_9ҵ{{e={,tYERro ]9oKXHWIj|^Q 9ttՀEpF_=[3}X`E2w] 7RCLw kw#/`q5qJCq"вw5Jْ\@ejh Fy gD꺍P - uML~aX;H[V 0ĒKnOp_))Q`2T!PN^\zjif{OUYuY?QL»+cZbI2 / KW 070,܏CR=FikB#*^WpY2^.'YhIY(KT.跀N N(̬> R+X@U7yS3fL'k3)&c50 Gawb~knz (ns͉1XH\oW Yxaff xW&tYI1IT`zIbl+Ԅ AjN~F#S |P|p47*unʊp kFSwhmIu|0JDћavxQ͆6BVf/6(nZ!"ez:T&HJف3aQʄ_!Q-%u(pa.`7BMu #驵:+g.VV` +ݩ0H^㨎ʅS#B%ªD^*\uМm58".ygo_<(b_Bi(zpDIT&_o(qnՐmatS8I$mcl⨆J1S\9ShQ)+#?oq*UWKe7K1FD?nA>m7--r-[5 ^^Hb*2]dS(tjb93aʝJŷzWɗ4}2iw)`_Z 䪇ncSזҞ,zP!W2˗ xf6wT .1%HH*>JQb|VĮ=#iI"6w \ !*TҺ)r.m֩wyÃon{ʦi 3~(t.[ʛ1((I }sưƥ_bdrmߧ;Q8=0E)8Zdùs 2R'6F19OݙER;ӛW|9W ,S2^widB#Wum%UbAQEGQ50 Ӟ_^Q`-֏%f~< HH#hUngAgȁ}G\Atʁ,V{`Ӓ3;[$xٯ[*kj>/K 9R fG71f| ,#bgk5e s¤!C:Yd[3bg|ʠ ).Hګ2Cw5e g%peS>%KJ8N}JfݏzTN;yqe`}@po%`>0v篏7&c]Y;]_((J2\kb8F6nо$f)TFTF2&))x: {Qt6)}"GĶdjkZ(t@E.%z0'"ԗWkEP}7ڰZ4u!0) * 2\ĵrdfڍ XSů6[ßDA}Оip9XN8bUͻߗί5p(]h/Ch%8t4CUn@ 8r\TWR'涰8`fb(o6PHSvZ6i%Ę.$,L^2/z DF"9MOY@;&̚:j~B˴Ym {pi#ԟ3 _ɐKOx*H BHA6Fx^jc3{pYpOߛ0QXf9ozIe2@Ek@'+S+ Ft<̵~ g s]xhv| Eɷn%ЄǝC Ẽ]9bR%' bZLS 6yzxϜ(,5iH x+}QKtL$bFҊ9r%0kz@PL.9Qؔ((CLQ Q&bZoiasd^}.Q/C6tT/qP+;2X^g E>ŠD9&P(S͙T.{<P{%+"7,x8)o# &$*[M^@Cby.wTGP}|!Xm"=K_IUm$̡ehd񑇨.B#4NE5 #eXQ_̄- (]n-ZHGqpb\Ȃ rZeVgN6w'ҤHX1|3K /H?J'OKCѨCtG h`Td q3"+,ZY嵒†xNEq};טCgSjy"%!z)]L>-_R@Ha޶[9ɗ,{@=g]%[*7^kgExoQ%5hM z:t -ɖGheW,Yx]O>Θ>' Djޔ~ SN 䣿;iuʗcN3?\tآN[EqEϒ6*6 sR"m!)6y]gmwJRPh* Eb2ILH2繝\bzκJPa;rwBvU}}C^Hv)C!]eF+h $)8# [ *1!Z?-x?) Y|o$i߫p>3gRy1n5xؿ@7>r쒼 C2O?x4um@gOaZ3UD񰦦ɽ߬H l * ' 5DI" C aN*+O_9넴 נBQI+tA2VGL씦xЕsl`شBԀr>0i^1 ii{%IPgMgNaQ|r$u9UP8枣M=(pĚutVCU\ɽ@:uqpoDd^KQB~nrAC@ $>U}(}Dc iӸ UtH"s7]"c''RM/aH@M3Ck#.C ^iixaR8L aUȁYgE՚'d7 ;jLOpZwB1Ag^8?]&ńl \T{4NғMtN*D!J1D٧)~v4%0g}7; C:ސs#?{(o<ԓ#] $|7?ԗtB(u G\zVDhUa-th[vcW9]qc(^-&BBf >B"6YIQ Im5<ʥ. Nֆ8:o%Uػ$5?7}0Ջx̯iM R}%7c4cbtRqZ0ˡs+ m'M. /.㙪R1"O3ƝϏK$k1euuQKHuhSWqKiHrSfy %90X1l߃tWa~߄h/%Л\'0EW&ѦuW ›-FKPڣSѱF++nNYTT5jYt*[wA|o&3!]o{@m>VJ]c6¹oǡtAJN3QS[Ͻbwz,q@sN|b`(? \֯T:٫6sG8yU|֊(P(' P$zM~ۍ#%ZGYOmlHG*",/8q{ G Mv'^;[LD owb v\B4u#aX.yo: 4ւ]0nN!׃jFȱn 6$]'5m!~ҩlB/.<ǝ/(KȬg;@P_(6ں! ~rzj5~/^58Youn@:5OnœRz)vT;(cGa F;>lwkI-GXpcӑ^DDd QJtHjdպ u)gr_֟2G |^,0Z]mD/ ShXtSHa']P*,$Ӳz{!޶+7'˃VZf`b=O bFUk 1څW #ac.UI^>ny=c8谲.gѓڧfSrـ(^P6 * &O"r K3rd *XxUnuR`(<xQ;6]|Ǽ]'0wlK.Q[iNY%o`Y5,uq2X@# /ΙE7TTdPQ^#ӳH(ym.Cl< Im1me-BpaG)TAba [v1V֟ Lrτ?hj]|yZdU}ٮU|Z#Y+<];V틇6YHr]ŚV:+oobYb_Cc)Y?zgeB@'NS9}`7QaMy}*H#qP7gn{9,4xt Pڏ\?6BV"@aE҄2vA #tFZ!ZQ;@{(nB٥g2n!MKcV$Q"yO5>qu$Q22PYZAs 1|"J3ΜҮ8$|tX"3S}UO>)9Gt=K >yۿ%%ёPmQL8E9yr"2Ug(n\Zh#/.zg.Б鬦UA_nѷvTFDC ;Ik Y&j~X˜Q|~61 9hY5Ux tsNˇx$ܙ\`)^:τ,~Ȁf/ ]ptKmHawg=bxx'pPrzv4]U2U.v8~ }(:2wݩf(֎~Â0-9+Y} )coQ'=\|Kxrޙz<vfhub; k-F{!OWT8щO` 9Uf ia?BSMCLꍝŦeO,!5^"0kHμerr$}5r5>'|$]xDK֯feepD4 E @#6eiXS ͎*͗\tb#nHmaނGg>s 鎾0 trbo/Ef&>{{m+39ÄbfOrkq:uC0[Y#ƎS=A2l99[,bk5WNN7BDɘl)Q/lkɬ|3aZM(780wLCf[ģ{:2s+KLO+5ux.BGAsSN&OUG$*LC O#>X#˘x?WGZ._ěD2 i:X B Al8kE [>}߲V=GyVZbFbo H"1^=_Q5"{]MT_Ցn64jH&(^'nG3nzgw/y*l<7 WF4R̥,oT\Ӎ3RRzƟ+ślٍipo[3(DQXeJpS(QC\X'P|) r`mG& #˱n>|| _<,UǹޢGԔ"U"_^oЩ#QumL)s+Dv!U%ܹ{dz1T@K/`Hb b|L@˳9PV숞>#yo ǸI fZ@ǧgTN'8P,] *#SN 8DfYYR>,k#yb-\sҁ %%:XToN}-UKdBN3EY 땏@%pO !uT-9#ǀ ?n瞰|DX&] kO) o%)5Ije  ցi?mhyFy 0LFNnAQLfrثEzhOS͸ c 8vwD8dUVhA@2rcZUMd 9* N7VQF%N!H)rDhzR }f9W 1yS2oYb*,]1$Df5P3<Q{0tm 4puY4__.f2_paW*c[`dND-L;1?=eqv#y5b#iV=be?RmL*%uy(W:yB罴4 TA8AzݗFJp@?oզLO$d^n\|Ya׫%ٹb[gēy!1,}:-.p3PCc+`n:ƮWH(wcN~)8xz> I/mco V^2E(S   9M\NM"dXi;Et)a\3sѹY@+t 4n&orIj5]8_Qc ֕8я(\Vʧ8+.u AOΧs,橬dmeZy@g#9% Ekx.BK˾PMٖZF:U \^qj}YX~B*]Ī.|Hv+hEjJ) `oܼgʭc @{, ?+Hz :'r o^.r>L16p]&Xp~?rIײ厷o 7 6jpZzcpUԽ>> ,髒Vhܮ :jzڮWu擓Ը嘺bOU:lFȶ䪌a2#-a[}U7㥒*%mYM^']Nil~8!v= +;YNU1>#'E wmNL쾤 wR|OvG+y֕Y;;k:ĕT[MZ%:K`(DT !6In_DJm;|X)>UIά!0pv(~k8lI~T]+*& jH5ßU )5n ۂG&d 9|iΊ;<})FG1 EGy5>~Y8Ғԇ5'C-oxע%mCrhX#Z^4LѓzD Ҏ!)^#pWJ%y)ev%oo 1i#\:4JB yCoϽ5.ُYh 4% {?>`zN,dC]=y KsCV-dk'ibNΟ|p_x@_EMN^C3ץiD`PIk!q8da\1~[Bl UI?2e쾠BQoUx̄s+1BWAdc}!x63.J]R;޲,xt.Ivxy(Guj GeLQp9bp,y KvjpwӮ x 7&Gm;qY#Tv`͒(9 !fs%Ic G ۧ JU^mĘzK\ _ ?kl29 @&,QDښҍ6mrBJ~x7Vw,h%/R1FN"F|5__:l\zl,k*ϱ]cކfiI]mb;^±hB|Ѱ̈́wozMpx"O"oħL7~':Vzgr7f8;+H>⤯G) 6;an"RdQ؟9]CŐ.ʝB43#}Z,R9=+ɍS,dÎvK^ᨈPg]N[zj@ vL.ie'J3kg;~*k9ͅ0OzFzYf% &֓Xv+eKi ӏ5}kFrtJEN+b^@򎺀0A W0iNB-Հ"]d!uKp$3OiJd}!) 2G z?4)ЉPqukGO &m+LIb >GBsw^WqϽ4hЋ4"#ٚH,=-AFȍW3-eɦ-L[uN̘*?߹p `]|$Kef, [)]U [I!͢qq퓤^!2˞" _2N6R~|) dQ=n3H'̾싞lEj͙9auX] 8Տ'r`[&ڟ=nd kdOaVޣNwCȷ'A ]#%i[V{p4֟ɇL P* לt=ux$kHEѷ6wUW~۔5bև+a#>6ie}& -H"Nx\LVnNݲ&gEHT< yK؅A-ژV|ȭăKSwF^|g W̝,7-2dԹ!O@i'n =-v^2_KX8Bq>nk/IL(!/& Ț ?)ho]F0_ H*|.%9Hnfqfդld q1m9gTHEy_KFbj ;{K{Y+!:d\?`R'%N [ZS Q]"7;·&[+:3l|3;f6A_[Xۄ/1 L=Ҁj,6蟖JrHcDLwOQ|θՊ'B>s~L8&(JX%x# `{`џM9$`NG[ELٳ>BHEPTh+=On4򼖱^#2^EoYAlpX\&rozұj!ͽWSHgllQߵ d$EV+b<1 !-Տˈpٻ!YoSi9$h RaEwP: b Q ¶R|,}:.D>R@@HHYL4?Wh;lD_HR>D-XrۃbCX!9֥Y1ljǍ뽑}1]6lUg?Ep?鐧BY@`d!9ƈhOXTx̹fS\1_d P86T(5qX3E/ͯtT.f-_W]d>q:@=V{dj$YiҙqgL-4wuLtg bbZ$pW"~9s@1>"&: {/dp8Oq[ Q"{vXwO"k>G#Ǥy*41bԵ~F <(aՕ}hbG 1+tx4FGjj?{Yc̲1v٪AO4[yc̫SXa,% u$0I_ixP Ms;! \^qu%D&C=[WA~8KE`.]I >r`}X8Z&8DbR+XL%`U!9,mLq;4ΥS'{Ohac !`ZsjdSS-ֿ"6׀ٰZ8`%ݻa7-rf'%GK#ÊBf6w#1aɌg 7prNR`ĦlEїIov+Sv״Pk+ygă|3t]]UDxڃ|+; ] o^w%c43Z< S'T .8N_): Fm#g4œ??] ŋ13઴?QhnmPPkUXhV-)^G~Goٱt˯ݟh ֋I}F˹7f+oDhbvs7AWR0sf&D8P"c&>?j50$$B;8"otPz 5! X;6$x$}2[1m~{7]=k x_ϲ*L6ꣃGlv6pа^j> ^sC39 ($Qv6ja _ U/ 6XBWj?BŀY7[1^# Gd-]g# T{W}b7۞J(=]cPĮ?jj& wC= & і傜pG]ϸ@ؚ8OH뚺9Ժ+DE[HӰ&Pf9sc_̔en̺dnzv&xNqQ&1}#r`KD\r1Gۭ=NiL- k4Eq̋HmgjjR7#yoL ¡tbCt4 |+2.z0elOzqVK䅟Z"Ղ;'(X18tsGXlLBZqL95ϳn`,y"7*Ĺ{uu k)g5o[ pI58рԆaD' ~^|-ԛa0\A%[2u.S6!w nj)a8%X%HyP[$ ]K:>$fF_Qm<_jjsXko#qxI?V*^ ZVt'I!D̜2&`(șF^VȎ!syv\MU*,f$ca] .K8,gdjW/mk Ivn"t%4\LU~'BI?6i̒]rP2*汧):~,zWih'hYϐp0 S[co9 Xi2|gG'Gp `?+EjZW.nw#J!"s5ޓCP7_1ۗ~'f{/į$dݸt)Lzr.3lыD8<|T]v@&;j 2$2ǿEa?<5cM zd饥F3X ITLDCX&`zI𚩁Ԗc@8ʡX*A oRh^mK1 |Dy۶MXmSK(@6mzp⹰ O/Kz5cx=dkF8^r7-y0[!/g)Sٌq8l0$@?&u5gDy)ٟ8_@==h## 䱡kɑZ.-Nן74}!9/Ye'}ښN(3 d"[^%"G6\;8<_=j Twq0|[PpJ9MQ-#76 y$.O,,׌O>}7g*T&LnAp{a05 `HYOɳ+כduI.́MpӍ KLMcT!Mҋ'Wj oUF=I1%/2y\eKgL3kJ[;]8x eWjf8!HVU艊S SY<-^4j0+Y  ب| x2szNqa o+=ۍ-:ΦliIE5XP\'w?awg'VcJe6g [\%lD2@qT] {\\ m bД K!ecf>͡7mf/qgX6' sIY/nN(S5­tUSnά)Oރ=k \:I{M(=6Ma0nJ=j%!]/`;A oXDGQڎ,^H,K8FO+ +nGF?LL&,Kǹ]e!: NK,e9 -KH x@.s x!4o)3wl̈S<%,#QvOFXv< 3l貚 `J~`  .igYf7oԁ |g | YfzLln4{Qj?CԈr0-Y;zӺ7I,۸42[Yomaqx_g7Op"mAuXA"kg ôZC{Mwu(Kv.@]o.<♌S#< d`=gʆ5Fw`ӟtk•@!`=9FP}/+AF=ϔTԽ `}HDPQ;\'dkR=&^%iO09rj]O9XnOW}K I7&^!{_Ga# Kaz̫}2eXشMHؑ5Yۉ4C/.&&wWTƍ=D@W:`Ey}!&VgT`.:.hv|[+EVx3Gp 5mx-D+54]4c'OS}7VݧmM'=ŇUO{qڔN;F |'fĂ> 2z&s%gڣ1& wq /₸jrڽ|Y6dK6sֵDu!baGkT䋆 2ѪrvM6ξ) fϼ^XT|~suNȞgU\Ot(]9{6-UGŸH|_jmE`o:h-]f QEL;C ږwW1K8wNf$xڊ7k?oV]IYUtlI[HVCudGh c!Ӓ'BHƑĶOأO 6g9VmsxC̕zD׹GaՉ|yq} lUcT`lW~t|ۆ~pXK9 4E&fHz[4WYa﷙BCzIܯ@"̣BRuIC <;&^mJ׍j3]/fU@&qbifI^6i1p$23NߏpI^]6p;-!T*p.[)x's@OhfBw&+J)RKx(cL$WV ri酥d73&ߏ&-S=Tՙ(bIόT;vש_9@:U,GA8EXS*SSX2%%tA<4avCaNG.SHR#Ț ǟFn2 4J ١uDY/[;:?!0r%#bU7pi'gq'N Ӧ} G1܉/'w0}ۖk pQD֙SE|nIU6}6u1yQj[(㭓<- r& u6hZl>n$"Eųc}F\  IT'^lxl551=B .(>+:$c4Lrιtgfxc2gfy(Q`t6+؃lC`׸.G>]O3G"-Mg >k2ӃNv';j- ʕ>bF!Džސ~ΤDu_Ncj8${5Y5Ogی%.>0)fh݊aNY*FV-}QyVB4Ì˯_V٪ & Q0X>8@JeY 'D|6JA舴 v wG һqXYe$nW 趘fMB'K Vɫ|, <[[`H*;~r>9-qٮ_"WI=vޔ>𮑚kE1]笐 6Øw[p6ʳ_lg@'n=@*Aݗtf e 5Jߢ[gK^6Ft]a 5 Ue$@a!lK0Ie2-=\Z,ǔ XT;,ӶB' -px>;_DǨu96QYs1];e"YO5/j+Z18V+=Q5e;\0P'$ Gf\faEg XϸǑp]8#4u|HLg jzb<;$X^k8w/jHupE`PBoB< w J;1bAӔãRJeH`u8<Rw  95=n{M/1f^OMqZ(NTGn>mNa˙P@/U؇%]}?CAۡ~ƅj"FQ֞ir^4R+f'lų{œs|-%X$(h@avwhMPb)&>oLPmϤmi)д!I`XvqSsXz"F!dsqlO%@KH6/*u:ʑ,͉KLJ6f=sP\۬%kM:2M^4?lR1]ՓIJ FIKFPBR[ ;6C{ҵ#LaKˁOenw6[k~A¾0v?* {:A/t5Ewx7!8ˊWXӝI{S:(u[ҟU%9K Dѽ( {31b$lnѩxeA7@ے~{׎pοW9G̻TJS&x"Q̒!5}茵hɒH"Jّi{^iPX~Ά%j=FT\B7Fز[gc6(myQv 88X3- rgm[WzR eGP`E["]W! qAќL>+y|ejWo9)6sGbEvj#] SϪj]{yYe~i6M{ơX/"wWK)+-*yOqHL|z~>m`Q_zPdN˦2!&y_A!ӢjlO+{)r)@7ۑ!;8yr].:ː<"5fПxboqLuj+sV ($ͧȩxֹ4~jiź#PzuȌIbJbTV T_81쓧E"l\!wvCo/ux8oGd5RȾTVb|S4嶷po?"ʂ5z!>m?`tedhjY{4%Ǻx?]vMY b-{u҉)OF[mp ]N"?ZҰ E=S E),5=Ԃ6 >Oldhb]|n}"#3} 1|Fw|~ `"^>#W '^ѥʱ\SY"@a s %,9._5ʗv+c b6f `_l` Ǹ5жpx΢{ٮ ʉ{Puݖ$os *]٠WWji0Eϡ J_׬B,897jA)w+v,x__ѽ9P/ti*Z`!$QcF̧Yg1л$z&)n2=Ro9omF+fͮ >7kMfQ=ސ5eaӔ4<srm5>ѷFu[wyz޵Ơƈ~eѴ5I9Hp&3wK8mqۤptTc*M\U2ܖ"6#"9% "LG5Sy6v.5{`:ROVЌ"=<`Ak̡ gLlm"[pշhF9Rl=jbSӥW2PCQ{ľD o/ }0XG:"ugPg|\\l>HؿXi F%iD("ȶ69@(퓄 ))7<mD1K:S!OV7_6\Kʄ;eFf=+$Ȝrf>OCa9{J{9xd|m",xqa2pCϧAGk mʼI qw>;\/'^~j[1ofID>z.bv|=&2Y1d MK~Zl_ `SjEټ *;taFMGгaLYjz5PF9Z';zx9Ddhϻ5f aG)hj@# 2R#eVsӰ\p<ʰ AoXd+ Rx6vR%#Q1Q(*2m$&b]փ=MǪ/dhfc?c]*K6Sv kpn6n ݣ-8wge.ZݢgQ+7Jy5C݄bğWk^+"@? qLfn>X0d;/sUD͆z $m\ ~3P?J xD ŷ\;jGpS48n ^zNo3Aak&gzS>?nYp[CGOmsJrObn8!tI L ^h'FCJhnaI0i]Cc.P<cLG5[]_2-0cI͸$􂨚^?|è*:5?KvA+{lFɃl#{Ȼɘ-cIcd`|GoLecz&#). Go<>)dStH%0C|KׂSSMlPӳ[?ҳ4ZcT4-W}0SZ8*zxv rW)< F 53-,(/ bY"|s+e'#]D6Ko}bugU{&&fGzOӝLLvugVA캀8S/M)qN3ǢAK&W(=zxZ~}N"MkFn?b O1- ?py&`Z-X:0OJBWE9]>.'u>lwGMˑҌMa6Mg `J> $.uC/5N!)ibaK4Hpb[&36}<e]a [0jߜS]>>h;drJЄfa;<3v+K?=OǨ6?`e}Px7bVuEƭW\V^׋nD_`&(e&PO^JS2/RB$vEUo 9aVg>? 7"oKklny7։bFn'ɩՎ-p$90ucUۄ dz^2V,h#LLR}ĊZEhR;FXk*+,@/[w$Q|/7#LW/#֨Invۙ_(.\dsM 8Ll]Dt0խފߺڴo5SŌktHr`_$f|GFk %#BR}1aKFƆZ-_DDOrܡ. ;kJ+N*JRXrg9CK1e. aд{[Z8@=:O{`E2n:+p eCl4Kj%/ҖOB? )tT"KPTԲlxBF'ȾPfXa-$ɼʣ _&=˂UȩFP9b`$Mh5D$`Ir(ֱz^x/萪Ƣ e@EEB؄|5=ԍ3{ԅ؛p K'&Κ3;]k2 '(54c!+Jy&_6 [Xrqhs]8mi2Ahw1Fe  )T?AѤح _w?d^ p("OoYr|;c{fctkNzGD—5xX{:ta/;I|xAUv{tǴrgKknߑV!%٦-40})H_y enG8Tx\K-QIl:8[4PSBo2K|0UC}jI&p\hR{qinBd@Xº؟23OM</\J GC_6/Bп\2.xօQG*v6OgV X&U@O~WKif; *S0f)D$b%uKLA3v_#6Fj &<{£ d'.N}]Gw:skg]@.|SA ZrH/g#=>:5hdبǙߑA᭺ 蜍 |r5LCEg"}Ho+= !ěmptuUifiuPc -{Q TCt2jzeS J_:)d.Jpڕ [0An,pKuH\?Rv]G 2B}.@\]9SЖFⱡ1R3L:@7Z s~IC ۪m?vBգt@iEM=.NZY۾:2z~ց૮qyX ߂#U$X{$;vzvMC!Ύ}kCCcv pQQrΉ-|H> .s/sD #Z0 .8Z'?9b:v r}GlIP.(fVAx o+˺$f> @GުAƨoTc5*)&?dݐ8.,뮌 y'}C{ͯ0%cK}yMdCi_ tKP$ 5Y`3y 5DgFQbCv/ϕ@Wsr{ <5cA ",D V۲]=4?;B"Lzj4ۊ<\ѲP cX]tw'fУB3o'#Bj ^ tz݄ ioV.qA/&s2l  k6~ǭᛃh?GrkT& `ݥ-v!-B ?@\6'QCA:YjzW VE'=CW|7qջWt34hR#ЕIV&5]'lZ0 #GqXE–"ވ:; J_|?@nmLw/bc5x{4`»Q j"LWl|^Dc cQ'(q*)l$+,2cuaF3H ;OK߉|Y#k 2m4R7)-R=*߷RzZ*H4$5,еȠq>P5Aqxy0~>+M*:7hK[gʗ=Myߌ4v(L1@HIY7xA_#h,~5~|׿V x,*q>^mmqF\0&JVSrd^<71Mv v]L,RňdjFC^YOX^m@#}y+s4UGZOƗP`lKeDڠ0rT!jۛ )d(j$F,ͭ*˳l^oпh7}BIN p,m I)(c#DBsBdo:Z0 qX7fatbF5R~*D;~Y -!l=VڀVSpuGT;ǩD/W+#nF:qz4*]@>ά@rM z ޻jUOX"aWԤSզ%{Qcg!M:rG5?د{CtreaxyYAhhQ!XZ]ix/;.F'^l]Ni)" ŶF+ j}uwf"$:۠\ sr*F alu9[ 2XbKT\7toّ/Bt:hf2!MrK_|+bBF^jbVy|\b|A![yxHN:ªg%,Bd>M;PC,aQB}=Wmt8ZZO5ʷ0g\Bo8xJ0׏{e[̼:\I[t"RxZ$z{ 7 [^xba{Pj\C6wL~4IGŗz_rnLA5v?-I &A;qMrkq]U /x>ZZkhk6׮x\gKӮ &:kZd+k}H!*2P9 &9#)_mvdXLЧ9R&c206 z|yb!OG]0gzj(̫"MȲGN_ZţT\7n[|_~U ׬Ttj@V6~1?wuXަ !_^q-&TD!}Y]EzPתoP ZXV1D1BOЗo9_lد0>cGzi2k6v醬]uI3\c" pI1}8i(zNnr~<7SK;"b.qđNʢck2in;W=@Al+[^  \6PJKꢷ=i),pR5'D_"DeUu@2c7j3]XB3 >/7-wrL,ŦĐ5ezGY9f/ŕ_p'#҅ή3GI>ZCAzUbHc&h[ZHF\5M*GZX}Pt G3%k&&3SX aԨ 4H\}STX4Ivlx%Jܣ,ShYA*lnKtWW||5ѷ=P1(~[}K9ɜM\c6jrOH;բX|0K3)5O.@ZLs:ӄYB|gX]u1K&P(í@Lv%#%`8=7<*G]yC&H E!EXG>}(t1/< D^#?@`~.Xb|-XQ٧6lL Tg2 DI^pϮ5ufOu'/<3zK Pgk3 ~E:?5_Wˆ~敪D=(EʬbNOXAtu=(B(\/9f'Fv5N;фyG Q_ 'e͍VR({&șy#).$N7vj2!H#WD%vs{ JZT"+ANi1>\\1U>^u|FCv<$["͔Mja *\r(¢f3HRĉO+ O*l@d6ޞ+e/E,d U8g=C?\i~l@Z;kfhG}X_Q\0E+ $]a9(dZ u!1C>Bkܢ/^V:Go(TM }^?i+?[~ėj2f$YAG9uȿ xl79v$#&A5ȄA>")˄1~mR-Z\;r2d۽W'^xHrU\Rb t:("@k{!*̋{(K=9[r` .@Uggsp w"U+NU/tv<ՌPPqmJlb5 S u;n{wBvׇ<ܻ1d6N mhb%nmmi:Om(@~OM!kĸZW hFI[`b%<ь$)Nxw0 9hH/}'9@vCrٹWAۂͧɂ7EݱB"C$ԑ{x1'cw^HeQTsTob33yISk3VK<gyo=y L TS!sOpZPY}1>JJ `3÷'9z0}qx~C8}58MrNy*).Xu u1"N! v/ 4Dޞ!,^ySG__ׯ&n{&{S\lO|#p>ξ3 u<.&e&>p95,,M4[pXхex| _L;!J#}fp>bC$h &DT18osٖlYh`d:hmkֆJos5JŭBET/3>P7.)[W~{ͻF6QlA`$wm͚f y\]}\@-fih6&Gy^PF>РlOʌ7e ,jNo`&HWN``| md? ߾1hx0MB*t͓V秾.d@!cn@}O`CeIPGr~΀ Tuof,> }0hdI0X>LF[I;hBoKZjRDb3%<"}i7#ֳŲ%)VMhؓ64~k_&8t`wpasΟ`<ipɾԐqx-m|}L @G23;ǾJe^gpe[ zofl(`!a kvh%u̵l8wf^u@5_TT],j.&L'Oܝ/ڃ(_ʪ7|m{~t(mfLlo&9Ծ$"=7::1CӍF%dV5RN8@PaǕru*,ɿDXIdhHM r7`loWsyP1$);D-=:ۙV׸u{QubF!Vp9?[jҹ(븨xx}̀UYn?kƋftZc$Z//Y)vW EFa>RO4Pbwk+g?fvvOEn(̫Ғ j&K#s%] ɣ"*Y2C9RcX'\xzዘ#]WsS[JFl ݳO 4;TsW/zZ7(NPj\+?v-jgw*&=CrcF߇ݣ {HyIͩG5Ni3E?sIm8Hu ʠUIVBq/a߰X~B3Nm0;Xݠs9§@F])=@Afs;k'Xǽ~5;AVF\=B2qMWe@o!O-F6 C)8*y)`g;#W}]|*R0<&]4,8`-XS0 R|J;j~Uf?lA )Nf7_Z}&8vKHZWҌWVs,#f"$ P~V9fA/x߇FG 3XLVOj6ݤo&RX([ݬ~B# ǮeȜ 5EocoOMs2Qs'3AEw $9Fm;d⥇PNGmN[#y ѿ]+Rg/eF޷w=E!"Z9IKg.Rq|qJh 7Ї2."y~mwTl׎im_Dk1%cgrYXIC]\JRBǴmI}cLy6j \ɥiA͕,x>iq8s Npak:f#p9El:j[۪.|i NljUs<Ҝ˜x⬑!*o9C^VT1/зGF{'SZ0z jkFsmyCۓWQLxh DMb]ѹa˭QL,4s^B"CG.?ZD 4s*ԥ/`Tboכ!{plwc96D;c;gre2/+T¼}VuN'Ió}%*DZX:ԁj%IU*ģgkhW)u^S ;AHpA%>U)yI%RDl໡ LX'@gCB ~_!R4 Kk1I5c fdOޑsĜ;&.?ӥl^t/SnwH{.T?KXXӣ@4>s5+^kPXص|t2cUcOEl^WhIwDa C -nSdKICEoHV+_h%ߵvfnw2yז,Cӄ;.u}- ژ ?&8kCa;gFn/+} BoKbL>ZYͦX֣ HU &K玲>;YS Sk\L^?~u1,,+hH)*6c:Sc~^XKz̾;&k˛Ṵ巋Hh!'_JK*/:+K#(#lV'΢Lf6XM|hZ*9!Emu2◉޷"S>L@kfv@=/P ƒN6d 1La.)F\Ү͜޹ bo{+e4H{!2hGrR[ȅ1Zt\J81>0Krb`9rRB$M/X"FVzȘ $~6oU b^;{F<;zRI5Yy; Ha=@ݎgbO% =jBk/hn6n,pwY Kdhb Ľ&p!$_)2p#$ݹTH`"Z42 *j@,64ț,Ts;[6I|+2M {ƱU @97|b^Ԉ"u1_o󶽋s@*LvhMd֟hS!HnкbJw/%UsVPx묜w&CJ2K׬Ug=JvntMܜkGeVc3Erd E_p>l|_vw6wǮV6K_Rbr2j9os|/+nz,gҪ̷MK1߹]l *iu"73sgͲ3oKh~p) ,R@-řfD騅BۑxIPպ.oIz-q X\EWpXDS.rI:>;Eg:/+eMTQ{Gu,ЄQX+fabG8 \K*⑞_yHoV[7q| 9tt@5RZmsPd^Xy%28 ߼4;Եt>IB @iG'łȬkgvnDOmw{bEDDt!Þ'2i(o6}5-\bھKO]!ݽo%۩ESO_ZvK)fƌ4h!žmEpAb5A~3]b+{"ER j߸ͤI/y٭욙Bɔ0 v'Y_]%ikY=(2~_$ΎfDV.*JqkЏ&l5߰()pؖGC ޗzFfwN^ۮL'ENVLF$6O]TjnMI$k!G|*_) Q%d(.2AWhǤM%14eJ yΌ$Y}v,* vy^(f]g2(= ?Zm2R:phX|+B;ql&=޲]s:~rhpou=ӹ`Uճ3n#Pթħ7m@g|`Y!6QJLF=F <4`D*)gI*al xq!ʿb"Cs^ AkM6+Xm H2wӛ9 'N <-_DMh1y/`ٽ?!X pTpGy[K֯m^1vbsm;)IJap#02K>=ʙI4>+3({V`㊎r"50K|FL~/}]5K<vF9}аhQ_(h!AAm\tIoK4G@ҏ,rĔ'z:d#UQ#d Ŏӹ.qNSJW.0e&IlK. I( ;NS>Q>=e$n2)xn23ZqC1*RKыvt(E?KqsZ0uu}Xih $&GY9?^ By21s;hXj1\oBnM!zr<dat^L;QYsUdo}#Ln"j^v;hEYI gSoj4XH׊+ĵI%ty-3Ep ں/9QȑuPjM^DF'כr0<+4p>U̧`qCs *7O-P Mp8S"Ƅ$Țo>9Zg5A! c|+%`IɛF2A,(}_*$"$xbƞn:pIA̍ Z,YV*H1:\8Zq?$ Gxz+wJVdU-ok\i_eP|1TԺɼQ5 1TbH'/_\ F,=+:(>]DC rvfM`Ν—|GAVqr$0em[E-TNsd\(}=_=OBK@']DѼeS,6X"VqOHd/ݜ?)b,RHZ&?H@(W[~e<`5ΡgI8BY#yCKt[)R.A>W^cmBRc&S@I2+I3RT ٳ2FnJaxGQ[eF v'Z3l'VuEeݭDB GM`/D@3B~9 FT5<&&J$*Whڴ;$ 9^d )KydCXƥf*g̸KV\ xۅIF !aJ{&hfJ"QS‡=ҏg#L+Y):UtU7>-H"j|; oɀBH)ڶHTVR<;A]`t1N|Xٵz!T:E@*4h?'!!ۍpklĦy9,#[&KV*~`Z57+H[ѰQ+k;:*0z^/ U E5a9QZQmwgYuxb"Ky+J"fL CEwi $ 6;OSÙi'ʖ(MUN<7en&4~fKڀ\ᡎbmUeXO>9'ʤ*)C94\ٸ׮=8r-{p !VXlp*:̳3Q|-yΗokS\*7c~ *^B7(kG]W><հ)5Y }^[ԮECfSkw׭H~k&^PW6֋|H\TE{90ˑdΣKO we/$%S6Et^8Um$U{(R_?Cld,]γjYZՎuRbA4)Y15vG.6:@!˸$qLv}J3 +j4SA1}\t+|_ T$iaZDq„.[7X, FZM:*]z؟ AdE?!Un`س1qTd/-iZB7 @-R%5}W$ܠ`&IFؚ?43-mKMF0m wYEUcIĚwbceZA4UʴN0؇~3Q|S'A#?ZٮɃg3Ma!ǔj%j#:-ДA V#z( jg]zgjP[iy܋n`|7k0\m {-?恵 ;#ZAǪeB 5UGi6%fR@m}qLw&% ļEQGTCEx5Z.GH-ۮ6B7hQR4. 0[D(ꖋN'1gm1bǸXYpĠiixO78:{Z[Ё~de ](Dok- :٤XRCU~aPXK/2fd @ j׏}$M\ٿy+qvLdcEBxUt;NyiNoCHŕ`Su,B|NAf!G/!"F2ӌaqA{#w0xXK>28u nꖯh muSdϑ!ce_Β[:=b?',D7m63 6rMQ1ac`.oi$0yP"-F_QM..|wO/pk5iߑpJYW!Y"U\;ᴵ*1do1ipɄ7=`9%D{|~!mf}ˢoyR 3<㈏QX6!x?P9~.^M,G36a̶ytV)?ZD8[Kq MqդPjXZRmo.^6>pvwBǥIf{;hv.k6`0TEEBڧ0+fnݸ}4H3,Mw~A%vZNstlUׂĒ^b6k@JnƫHC Ɇ.nbCSjfR >@%pPNc,Ρgﯟ84/\ִ8 I\'E;˪OdQe;c C FIw7LM饽JsrJRHՕUƁ(_w;d7NhK]vafq HëOFQET/> %e9(5mKK \yvBW*EɎ02O`EQy=Pvѳ\]Nhux4XZU|3vtzl53Oo_hkKD/|> Tz/ r rXn9ט}Mk Z8ٍ ! S3~Ǥdp^ 5"7rD L-\'ڻ@5%倸- 0r2dL,:IvY 5䁌UE@w!_{/p̕Rl.F%(qE[nN5A]W'&VΙO&-`0*tBM վMX bHJ?ɮ-H4Oyѯz*a?Տӌa%td\V؆FR) V<8"@ ֗i/`W&rw2c9@]IHk_<3ÈDbmdMUC0Q_CI?rF㰅QrTw$Aav/Ɨ))| , ]N3%f&cTLt s ED9j !G8Gz{6voJiUb^ R $Y-c⽵Xz< ,ܛC;+H=Dysb^?GIeXJdd#߱ vy4K9XZ;k+\0dGkF=̻fa\?5ONf.%CA 3^$_SPA8. &, Yݠ3:9ՄZ ̫qyC;Lp0sqm@p.t Z/}\6I 0yu[׻zEGtLsTges [qwEd7D)T! R P:څP8e:$dt[_!gw: (ɓ(Ze~;x%nfWtX8D"3c8"bKR dޔC/5jdMχĺܡRkqQQRꞻ<` lci߷ELr"I>k X;ꇵ!1׺(ZR3 4Xl@-N)ͧ)rɇ9 TsQk >Z${t8rPw*9iI vBFǾӦ Iz9lJTPCݨme { -]befz_n峟Wnٚ2o\rz?5T r"K-(˥ !SwkTr;XB{@L$s_b8B< bh;oG2HsB=s4eZ$Mx"f5PC>6vxC]1t Sp]lզ&EWS|bVU!u- 'p9Myțɪ~V:uB+昱3kVC]"KÐ>*vQT]vxhzA%|XsIr j39"_VIzZTDL7}فLd.#d`j6eKW7`ʏBU=7!5| %>jNq(b 9I@ݗ;s ntlʚ5R4;F p.Vj!?~݋CʈgEgoAӹj69MņBb_o-,akdn'^a;Gu|ɐ0[} ԇy\F?pqf|o(2AυuEÛrvVϠ1,}1x6!%F]WiVWq?mI8z W Bh 掅`m}7#*7v#}|ϤlQM-~7!ʶ{#7Q:(h9|FdT8 Yk*z@*02X@>ö:;$i&WZYMCyO@l =?=6AؤdxQdi?&HFA ' @y HE-#U&Bz`Aa\0iQ2[ `3;{rɎyTG|*'C^w!Du"7YH$,UM@Ss׍jJC)[en?CِAyڵ${@FilD:F)R":_cQv|mH5)mfz}Xˁ7cΑ65C$ДAW: 0}6zș}7f<vkmTR6g:BHߓEj^f:Uի &Sj^E}$*Bb?GK"KR+!P 5J_Yb،q) e񫠾@6 ̲@.J[-9¦b*Om@]v~8bnUQ KosEg|:t1߁)R݉:tW3bRdtKlJ)ۅ,eNw-}b] m)嫓u|hpUGQ\_t^'b~@;.* Es j0t%8͖҈6hjD-^@4%zɗH|[R/cm * hOdR 2Nxu8PA aT҄L9Ӗ Bp5-"Lwe6)/I!|3WJ!R,!;v [mDkߜ8a!ѶjA?[FZ3 `*Wȥ5 %V=_e:W˳*'4z/KUUɏkw)Dcbñ+5,AIҽ"7ĺףq~8eLsɷ RGD/jl .^Ʃ2[BzƼ{ŽKn_eǴ硽XPOxlqY{gX,tblL&H =i+zNɶ{jM0&?,JZ(瑏i#“8If7@)4%\"(O/a`$<%z (-f,)2ڠ5%>rdtcB ͒M$!XseP zgz'MuR] E†;9ګmH4e&A[fٶU6j0!w<)X [~r N.D&g1 {QZ3łXYS 2Kq4 Ԕ m^dR-†+34rLٙ#bD=#r~Ox*nYEP}^1 #?c>4&*hFyp` prWÉGWCx4 4=!4<6/ķ4 Rn]-5Id{hG/qX=/A?SȄ'v!WZB`KL[iwaT* dH: tT tj]k'<'zʨUY] [Bk.)icv%[2Ծo,IӼzƶ}_NڒXr pP1h?aáO{P;I}ܧ4k3I=c*WcLlɅhv '& [C#%d C xSy#h7v .iI?k)}!\w!Idl27z 7+BaK9L o@HkCGȓcE$'EtnP /#S&̖yk2uGWOG5ؠ}8"Ӝ%\R+_V17Vgӓ&TB9eu5=I3=/',qf |D@q ahx;n`~!e#}oHeg(^>xĬ%ؚY&>ԛu+6N|B +C5>X?H *y$b-QNL_W;. $Z \WCdaz孒 *_⥭PpyG+% j[KO؆P^v3 @{6$9z{y`oG򲁞_GA^Ts365 S40u-{a&P3>1nGlrަ(cގ31g^Z.ѨdT \ yk} %V)exlJ:Xng]E׆I+-W;$ws?\2F1ZP)ޤٴ,_<ķ:nLFXRybÎ4!{u<! @`߽T+~ch㼗 ( bƓ1).>N|ݮv,l0EXXTeo D"( }G6UZjR( ~tSTͳ஌ޙXf:jy?Kn2ohI՟~"a6@];xg0 iXvLwuݍ";iZm@Ͱބ.PtG]-J}f?uZB•j1Bkqq)nyӡS#!J \G ,`?b}>s7&{C܊G#9)4]W꣰JX#>X*}msYK .'b7d9$JWi/xfAlһhnlNK'sxcOK' ZeVrplA5Zo2~fJGMnPinz!u8-nJVdpag!NDOrv 1ŸߞFzumW/29S}_P(~ȲEcrlqIA DzP*gQ?m}QJ0|` M:NqNqRZN cg4! jB&}hq_?I;7 ;}2i6XM>=cENv~Va _ѬR]RD)g0-l;PH ѳv\D"e3 7{Z?8iZHCb WzZ mwox/ ZdlxNa}-Cǹ ӡh~v3=8IEZ6!K.~dilYTЪ܂b(l2V X'lFj΄ok|NZGVK\ #?f], 85A8pS6]{t"d}?L._.ؤ]TՄX@ 1&ML*)+G"ɳ[SM4i h @Jq E1*aT b1y<542(U g Qki;g^.mBEA0*KP-Jٰ}^N„ɹIz˨c4abD,7KiMA>WDGX 1x!"k='u4u G~x2 .X8j#)_=o+1oQPgDp^7ҕ՚h`euQWmИ>Q?X̝aze3} ٻ|Zͦ~ I6t݁ySBnH<ɾL93U_i#ҥB/I 2g iF#:C!J: C-{蔕7Smfor3[> [0}$ Ȅw+9. 7G/Z?prц?V dwI4fml;gj,-5 iVRx V+b~=\qx48?ir+`RkVL*\-Il0^M})Pr/"9=߀:З5XW%ug|3sc+&0(I [PN%<-w!#1 T ucsϤ1G3mRE ;Eq-G_?Tg%s`""LaP>M_.cఉK>bl.T:T \mm9S!lٖķ7#"\v55E"οo1=LX)OU`VIRZ?D$ˁ۴߱7>LdIlؤepZ'MWkBrlV?_;15OCt] ױAOZZIWW;C L2ia JQ8@/|ߙwaÌIhP~s|I3F2Y]$L&{ #eeYѮ4?Ep\6R}ȒZk'xVc]6;+G+VoM h*=h# bgQJ΁%НZ,T&~#ٙ {=CKI--9]=?e&1g4U&mKgk##1&5PYveyl Ǐ"pjiL?,,a F>_fh|Q?eXd੃FZT[Tu* N w|6|z2dr+I1]aq\%l ڦђdwTnfN2%>K1ai0`Eߠn`$on@jlkUuyG 9晝 zYC(j+S.nr<&ؓCt:x>_(fVڭnk}4&(,?XIMT:45<uhu|KU<šd{94#0g_vR)+1o$|b)h;\}Ug*ĮQGȷa:9Ł;Vx9Z]üMpap1ly(0KKY|b/1\$8ɰZΉAq`5fIb gl;uifurB*.4ŜtT&8֖7?߂ms%vb2>ͧEKt`7&rmpNIĻ"B --e@4 {_Tۂ VJs!5B>Wu6>( /̖Hp];뎥zs]c/𙆷q% ?(h`N6"{^A>j!IJ\pNe9 Bd[ VSW@-9<#LVԾ.sLirdW] cC67jVBl @漩3Wo_XbN5#--^eK#z"ĩ-OAvaŠ5\ԉ[= 1x"=`6,Ur]־\%hm) R _U.mP'YF'}*$EU]sWQ`ȅ$+ ?P>4-6K} u7 i:'oph?bǭѝ! Kt"fJ%(,|f&Kh@nFKtWW脗`Zo{|9-y|-=ySId•Za3e:h'9~Etfx Dϫޣ)tj FIl.o|beUԄG.kA@3V4nU{ ys" z@4pF$rkS\rOʮ]o8hcPSQ*.{Xy"ww<_#0Ե0صM 7T2s/@Z;q;?ξe`כF =9 nO?8Fu}EXX~M`l<ꀯiʄ9O5gA1u5]w}na.^5:qA+$1 m} ^"󎂾}cTX^C2Ӏġf-oh+yl\]ߨ[j2 c !>楴U6e7"5c= fZVdGcg{(=*%㮕q>COM:LjܿWAO|ֵ? qĨx6am%4@ !62Ld[}w [\0a{ad cr#9Q_̖PzY*U|WS@X4F Id|4.t:±],fU,ZdUR L _ ;/O1зq0T]6&7GT@/~*4\[6Qo Q]Y|geoIܽꣂ*ވ`05z13xfW]]Fb w j6GsO07'†Ae~F?4)+%;ݴL6AAnx.Կ9vWSv$R~í/b˳㊟ 0RuVEBY3U~CK4"ָ\"دܙ87#"`OX-(?qk{\m;d,/_=_1._c >פZ Ū'~o":gz]MxAp{nsKm,kMB׸QUA1!k7WN?мDAӚeu1U#3E #U!FH#:5踴EͬSQ@k/>꒞ {sVO,6+lM[r5ke2O!nЯߛѦyȄOA}=>kdFgg]ҍ2\ ,#UEm9llX vTRł"cpqY[/P<WD1nlɝX9O 2X՘a>_FΰoƝT { G8 Wž1ˋl0֧"fI}v_Y;ʄD-18p7rH4{}`&c ٛK}pB{}Yq}CWcxX]d6@ KtaOG0{~/-j¾V(60Wr'Tia<=LpWI ˵Fk &*9xՂ܈1ح_+'O!]s@/l؟_Hk#gqCvx >k۠k"jIDDXf][TO(Cn^"<4e'xaH5؇ґ т$lwkI Wlz\]7 3EoK3g8B;=jDORD Y{ n JF6I ,!}/[7N_ T2/3]{70q")-gHgN͸Uݗ?& ]{ɼ 0̮֘Ƽg94!\ɑ`H ^"c{Myw[& UX)8c7%XR:?K"߆^_LkXA4xqBY|3%,ns;,L@ha!"J"1^eٖ$Ȣvy+4Tr^v%љQݑ;c>n x\jZ 6F-c쥚qȬJIB JRNX4l*ϓ| [u_{r5^3v O'[ޑ;F1AkL7:Y6sb ߠ84, F#gŵZi=FJݛZ QݥKF@ 61ɣ?67/f>.GatUĖ61v:gu 8y>=#𿾯~i{&͘/ 9Upi[k4voXAcsO5`xP v[mMƂpOpN2~W ~XS+26p ~ a*kl`LyMYYQZ"tuXأ%Sm4a)m,pO1|.+|37#oY( BmuQ O ?@)9y>)14%bət%xﴇ2S*#YR~cUswYp@ILJ٢qA"*\*o e/dOA6?Ӧx:UfnX#BLE~+Ъ<8 %y$eiTJFT$fMzӏʶ}^UXIyݔa ;)3A)B?[.ח&b}kȵb0$#kz*J!t-հyƍ8˥/k33_n~<3.QFae[[zo58~9(?j['ktkxnyhmm9FDBiЃyU[ 0r+.- ɊI`hy|@XoUE,|Dz> {q yc-|7`R%NRI|2R"5`%e9Os:s0 ~"kxq yCWأ/m< 0("ww EiJX}C@$RvKXRbw .^,qk0* _h.O'욵35B'"</κQO*2)r(gakOnQ*^y){+۞b+/ѻNԉZO Pe C$(Hܟ^ACYGj ~ZX)nYOǐXs&N렭&zAɾ'׏fzk=׮+ P"`73X~$wgnוq| B(Y(:\P`wX׉Oá4=V^L!uOsNX:qi;}NU携[@D$sYLΛ`ODdi[seظ4:@{/{2|ОKd~Kxt͋?YN/|0OJpcgB8xy,8$>ఠMW=.$罨"l7rJ؄Y z̍ǂb),d>Z(WPj77vx-3X^ Vf[;mtPLTgkNܸ *z\yE۾U$!sfBd%Ĝ4)Yd#@bͤ ~!F1Ft;DBBsNB #1nN'tI;k ^n|L$7Ykݥa3ҵc CNO6.Km w^mTdF5d >c(n5'k)t(gܶ-zx/!qS|  +'X8Pu"ZrjmV>^}d$vD\(:l4&2 r̮Lڿr^}h,CDam(? #R& l&1JX{,M؄sj/RD"&U 26hgE!2sG L&I '2AQﭱX]yo\i T'T5 + V29Ͳ.! X &fVm"@ސ&'[.~܁˯-,?J5*##9YX^ыptlI 1mؿFR1Ix l!\ (,gڳwȃ*K?:u <OG87 ܯKi=,*MaZ#uq]j t0*81/y;G=bDx 6UI ͕(Q; AI֑>ϕlz,hŤR{ Zx'ĵܥKW;-@I 0䵈ST߰d%"ֹ8ʆ<߄vDIޭ' - q'ZjMBF~]f=kC/3%SR l VK&bSxp`:㥢XB85uc=t˚@qBq"vy}L8֕4G_ a<WpP~bM[u>JƪYrQDmz7`blx~ &&w ã)SMyG)՟:O&0ޓ6Bp,^KxL^)&(1{x ԻNv̏oOFde%WlIJriz JS-XZc'eG8A7߹J|{HZA!kq0^GDP^2n"lՉ&mJ/HzyH$|΀.;mM۟\f=9Y3 ;R"SgDP>I 9S] b2q^i2a>W6;6A%/Vj-976ҝxhI1Zr^z+([vЅFZg:3 wEiuMv$Dq3i`7a>R@)P(|nc,u ${{_pZ%ܟ ؆LIY$# $gC,X`S[z lXӜ0oPdZ/6ܴ&XKVƾgzאoC* 3~aoMW%+آf1%wSF ;Fy]w W1qLWy( ?2*0 0"OYHl#Y$FpZqLʹf`vJׯk)TQ D֡k̑IWH(~u 0D1i!t#GH;'N {AjboR솽ԏSV!j !*·o>Iz \}y+}|oj ?2E#' FQWOمVhK@\W-pER$SGI=7KO0nW['സ|+U$߀ھ*qtqCƘ۹_5Y/-911u5-~q H Kc+an# D ];I}(&l(6X>Ev/d8"{pD#[-VP:`8X? kF^RM qⷑuZet-,髄g Ly)_.xa͏ lգmpлr٩ /g"=DݭWźԁ|S/:=P i'lO>W2}Ѯe1󌛶]9.,Qj";JKy:a% de"ls.p53bf mA3E ^UTMzJ8m]WAzgg|2dCtޭ9ZmQROx@=i5UÆ)QCi=lw-zX 3 *Zkcy`vXJz«5kf6?s"JX8 ̡vNSধ}.b2\JZUBFdMzXsb'_Ng:r<=iaLCF^~o Di( cu 9SjMvUD㗝DYܦNEy`|o#u7OjLK^-EJ0PC if%_.>`|Kt pdhR1EE-/P 3:B4 J8eD@WhdDˑ]{Ƿ~z@u;C#ؼO&(VZt;tgސS%S!Y˞S8 ʀvOJ',Me0- $_e;ī7ԆLpG9iq/{x'*You}BIv4,"?a.ˤd^5{ڏQ@#5zBS} I.pWK&/}$/ ?2aA*K ~6g_wQ稩 aĠTsQuPJU9GJcJ=m䦲8=1]|Z3|ZԽLRpwZԯ劍C:^j'O Bƀ9#P.>: <^P70 z2&O;rEav&~Q|n3I_p=@=^e 4DPeoJ)Nߺ4:ñDo1@܏j.Bd#fxq_d7Hr"T(4H`Cb="Pɢ{yئSVAF#F+_ <4y^;rFmE-$Iޚ?!ilnb7qHGxz;YZ(H%)*:K+Mwk0z*AySHXv&p`w^HM/h{(G>ZvaFU0&:^AȟÑ3*Vm,pR L}h򯸊,ؑk8Pڑ$n 0uT$N[6p[&婪;iUqAhE< "Y8TQH(Fvtx΁BVzA=LJ>uz}.^3+w2Vgz(/O ~^˱guMܭo {'QmطNAa|t{1qJ%03>y[7ڷFaQ빠2vVf vh"9C+ w L(5Cn w'g(n,qlm =&-Aif-~=Hɳg`P#!9$H;={ sYs{!ΦALj5#9`TOlz8Ȥ~,?q~7㌧BfD\^ ܏+5CHҧ/Aц∋<&6*G")+In ͩY҃-(j _%Y&̮g̙Ns>AU0eb7i}!Ust2,];ߛY;.9~25R)~?2 m BB.a, L/qww !,sI}!d4>11 .a'uLA+"skOAˆ69vNW&b4+ID܎#>O 9~\6җZGSvn7^1rPiE6k>=g㕡G/jL?|;`lUDWrCO[4θ$EC&G ޱXn^I)"U/d-jLQtYt+A~jC˨Sq;Ie^H nF*3qPƉmhN g/iEhcFusn[m7n.q i'!Uc <kQz.o4dͰ^EM d<=D5t0F+ "\FfJ yG=^bsVsJt4e:LֵFOc=c ٻ|ʼע+- !r%6Ib=TD9¯i7 gL I%xa0Z6G_[8ߏٷiN8QVhg*jʦzs~K|"gKˬZXg7yymYYq@!UJ==7j|.%k|Nk6uso8[A8{O=4 'Kj?}Y$5jD ~t;ny!>qo@+ѝ9V6Kmo)(JP@~bIF ZG=+~ Qh?i-%cSx0:v)8raУ d#~twVz8U u4Ҷ=Um'sSQO\w$-w\3H<}N}'Sţ { ;n%wȹ=,@~(P96i$vU v=b؍ A@햏6Rh{ [>',¨[O,n{$alsV;$"ȯׯ<L9~{;m gC?u, :.|}@D@,I.M%<] δh[HǃN&#BMop-bcUPgE`^YqVM1F3M@z Eh^ޣ|`\¨G-rl:\zh0+fm Qn܁|ŋl"ڃZٿҋf|"܍5{NcG jq())3:$ :E>cBHrl{'~᪄ei mPSu]ʉvE'` ɯW#mR|oBoVj!8[ϯQnuGt";eOrq=٨ךQUfu*,%#Go\đ$\$"\B݁zi}` o"R#{gcpPãgR|:gcV&{kOFش{T׶"KDU$Ŗ 6ZFt-V7ٳ^'_0I.H@6[fv~Khcۀv~^1?Y1~ {SG ӥy$ǕQBbISn*if2 K'R".D܈W<\@;=qדTEcY4J @4)hS TERJ+ $ç6 ?'3@6MJך93 SFCZSۢsJw׼0^b#/ P %ߣˏPߵ,^) j􏻱pv=#2}VrOLFw3TN{{eB+I Qioqq7F`vE>Tϟ hяT7k7<Ʃ)t:Šͥ_q}@&dA$V_Q{ٞ 7W_-F]Lx}_ca.PxzFzQ&d6Nnć S ۼRI[s{!ANC"2fɷɖݪ!`bT81O-vĈU3МfZH6JMm)[$(OBVBC 3X:^4#02bjqO*n _ )8'WvvMv֜(Ę8޼[PWq=fKJА[dtJ =zbnBGT3h`,etʌR63ST NKH>BtYɠɽVDۑy {k.з9LPeoHz]:՗6'S4@NJh@v2yO df&K :ќ̒ ?fmKfG~鄂l*p@lEXMվeov& '\^` 2;%{8 S_GNHEeM$N^pSrYHzBL0yji5C*k_*H~FzHsbU^Y}.Bt8!H>n 1hH< R[c( gi7 @#h %`xxM}B[ax/pM]Ģs[6T הEإOm=0:Hg>řstC?h`SNk6jJ3Dގ^ |oJ詨O8=C&җTysl1Pawlm\_)&ُ?\$Vr~pP6ټ~\x lcs'9@\*7H:g_ J7 eegN6=KHF8gjX&4Q'd^jʐ"t| 1NSB]֝=Wrhgr{:/H&r(H9^\*w+ b];f0ӨZ04tz.eO?szypNxnN%;oMq Z+@.у76"M5ۡ_- 4;{eOY;a q:[@0˒:˭+E6,s+Sc=0;\[9^;p$;xn*Ho["!RW~Bywt7w])k𣚡cZq.!՛S i{i ;|)BWP:zT4Pp =^9 I<^u(r؉=cU_l3kQpBg`WϚTs':N2&_e𠼔/ȓi@3zt.zʅZL @ {hfQgSL)/ Ư0ՠmRKwXƻ F_|8eaZbTe겏46i'_U$n1^D_HBӕCrcƣ+?å^{v`̉ jQuʹb'2)s* m1_r,Li<ƟxCOy% #{0RHwVʶcQfp >ӎ tNLK=+ɣeXY:e/`YTg̻ 嗟" QPhFk'FK1;"pۄ$(|_L('آ H&]8 Nr!&W_U>?L,Cɐ͏6CxUb|e'$/OⰉzRF:3 ?(Uc?YEym;buT28f@)Ms u?$4na!G~ShAJB4CF$>Ir[=ܟch!ryث*~.M|2xyZP14hJ =+t3l@g êϿ+/Z+ ^!bmX2rK]~4IC[E,,RJopZ&?R0 NEps 2$Vc-eo[\j)Ii'g̰IO_ ڞӗ,\so, N2[0W&^ʖl(O+VPqiϳd7 l/JܖRSXj΢qkRRJjwG{Kmoc`z;iVڹm=E,k;K%" Y7^yu~-.?'>!̃r(񉘐@9ڿ|.ÃtԮ6^bWPU&-qXE: k!] [,JJt, nJZ-k6.~(B) U<&awOBmԁkw8XT.0QψI/lnEtZIyVAD,"7:(ٗ>Pkc9B9Ɇ9|},mB}tkXQ7%ȤωqP0y&J'?D]]6*mySS[b'~mm{³<1@ Ʀ4䄋Ϗ|x 7Bl\SL 3sV^5m:D4x}^4P\,U(>:=v\^˙Uw[)v̂2V-r~\`j$Yux;;1\6)$G?rb:uKh% 4, HRvU[xeX6rЄ}slGq"()>%cS<`7j |c1Aq$L-mMum֖XQf%J/!J !I|<2p)Le+)ox/&06Im7g5(K`}hd~i=tx8}?|Ԑl X ȩAKxh  r:Vʗb͔6֪(7>PsY5)6K̳mc]/!UǼe$|NqlPo\<ܾ$QKUDZrLmw `"/<1Plkj;ɰ d_va0+Nɽ!}/xPK5e]15AY{ ~yQB).{``dyfw.T+|eK4]G9b{\tJTA9<{Zc&uYj2aʕs  ~0)=*ݕUbA')!.1lR6Vg8,*pl} 0_;ιn.QMO8ŒzY4W3ث+7%@.>$j3*߆)o^Pz B{PTkmdiDmt NfCse9%ƋS:%V'.s'q{U!Ag&ts&P46 t@r4Z.%wK1ꋛ9nɡSt@ YHυz+MT=;;pBG r9ߍ%_ cks'l6j+jJ|3agW`> F8*||4}"{,3;mZ۠OAu/jMG?:|7iݬHx`%<<f`MHVX,n˿['摫*:X1Y6n:*U/3ϐ j]#]c Y*mo53NՂ4iqc1V~ƩG@侮M^HUInQ[ک1r) 0{-5.^L(DNbb+T7YxL{0E. ))6珰 ))ЋYZe;\jZjraftLB&:ԕ%Ǣ83v2+’;M:K/*8 N!##%%+a\g9G+45C ҄Ejs8rc *m@!L q_r eX#3nF5Ws&VLDqoo*- ؏/ttы6M>ƈրPl: }> y˝rK]z8??-nL.{\[Uǝ ]@k0V2XUohVӫt7[-:"U57$Eۄ˩0p@Pb0=Lx}YGgZe,}s‹ˌ]ħ%#&#-R@^j /ǢCd;9%*pdiGҕ{lm?ܡ_{0Po8z^n,9$c|VH=i)00[U(iXH]sٮi_,l] ҉4_zE!{Ur 0KS^qY^-f4nS4weYَbqPJ%#:τm$G4zxJd p"qlz֖S#hLBR"J p~WZsL vDD7cӾ 祢Rgyov! Nӆv! j3k.K{[[ȁKf`j,ȸً y)rϔ `>6˗V<F?OSD[_p‡ eH-/FCIN(R7(֝5U?U%uW\;J!"֠Y f/l9uD)b ̇ݝA_DEYˠ3cJIuJdp#jQ1H3(r洷*gc(Ӟ'p[/shU:dh\;i.eU0U#Js$=?wm$[f8- 'L)B*䣯V^7c]r2ۥ[KN*k~)zݟ1o*Q :kgХia@-m[ӋEb8Sl^KI}*%g=M~̡,9,!fHAr٥:diD&}CU'$?̈́OE.ӬUp]C">&.JG }ⲐO=}[,~tOpžWH5gE{9ltWb(BD:Px}-+p]y?̆,-Ŕ [T~}af"MjNJV a)Hq|-3у$ )wƩ-ve4(1iq%ߞLgء;'}A.#@ϔT{xhLV-O :$#Em22lyY-u!-nYjWnĢm%<%ߎNˉqWlyMpW 7sIy.\z/m$9^dqMu&?;(]?HXUr[z8uMiHNɧtݑR Ej<|uM/O[^e 4ۉ~7]} U8|aXD9VF_n[P @+2NXy~u)KyhXRN>9`:*@l `{'KC>W$:c\tc^mt`ip0J)J>j.=z|)p#]A)As1@^ Sj%Akms!,dDuԧ1 ?_LᄋmPn}ۮI:Yx`"<%SUyAIʩscW_{vŒ I,a>O2,S7?sGO]ZCeكl Og7,/Xky9m=PFBwNУO0PLtiʹ?%W$]Yw+?n34^녊Pͱe]-.cI!~瀶g$71~6N]-vg5 wQb.ve:h,q|>ތӀc \RNf@CsVKt,Rt7&b0V;gZ_Oᓧ MI!Z Y,Q;:fV&*]Yr´ZOD lGYr ՕS"GnU- ^h͒|8VG1N YHΥFm5n=bI=EŴoP280ۓGrA37EK 15l(@9Wk|r8<8GDmbl¨"ysB4:N8Utz4:e|zƉGZ%3=Y*Ұ\mFV#S;-<\pأFmC]юvg]EḦ́_ 't e<טF%]$ϛ5 uK6vi M)uj1ϼNh:Ui\ y>bx!RFJ G) śj;XR~{EOY=T4JY v⾀qAA_wBBx17nVIDA)!|5&p}%n@p0.#٪ 2먞aj@$jjIXHh|ŗ4UƘ.V |p[FDG:$l :5m3ӕ6RLL ,WIvz?vPH1$(a̧~,dOXRn?(H§o«X'rR3ɓ|d Y8p?yE#jdgr'PՍ$~t쫳<(mXCzDLnV!^l n I!mXj& H  X܆$U]ejhIU򪀙}%GmzV_.bj=ݩo+~bB\(rٺ#֞Ŝ)MTc;ܢU~ëH?XH⟐JXVBqAq}ڑt!DEJs'ye-dCJ W3nWrgR+lQrhz 0'FgGgy^D+AlCh[q~tl ;u|փPkD7o@Oc FGHx)Vz NSWsFњ~65_JK٪\u]pn=Ei5@xTU67KX;6 (L˦]yxQPFMvE=NbyciO1kP~xK[̿& iP"y^sJBgxYCui`Pg=ɣl|BR#ZV!g,-w_c75PWO\z[ŷɧe7P8K*j!{\:.Ɩeb'ڃ7fXJ 6^+ EDlmڍCH\d*?!0Џ5FPd"uFAE ] lhenw+?U *AɣG0٠j:HTR)yn (p5Si_~]* |5݇0 2鮌:.>\ h2A` 628\oO]"RAě׵31ICTZsxHK&0Tsbw0Gۑ v㩍S缞o7;@L].fs848%n4m~(=3Z2Y>ey1;QA"9hweZ(4:Ӵ9vQP_YtCnO\}xQ2G娨S ~Z!hF,Z>r4/أJiͦ'`+wj>qIO_qS?CA.,9S3eѯ-_pAehI75:t)j 'YM'kzmܺ{ǠѢ$s!^ѕ}6.4߮z l$!x* gs9׮Cy$b LMV.FKcIWʠgitk:;ZIX8*\gc"^0Vv0Dvȸ=WA41{/ ׋-|aACkSo)W/8"s =~b P 6mrħ4יVW"0(iy oFThMJ3XOgia˭%J 9h+4xyVYsNqcxGC2 #@Qxڞ>ų9.wfj$_M> GQTNW4#JxrucU?Xy碰m'Ҿ3cԦk_+HuDAu&Ydȃ(VnYt IP+A+k 5J e zս۞U5978pK'GU+fY&RY@ÑZ2H"^ТT&L4ĴҬQq:̼D tfBrx0z3y4D ƾ၉"L &I;YgӇ'A ɢAIx:OZ(xj'Wۢ0@m(OU_N@tw\P*qHT9n 0tbYOա?q!.wjQ) דQ$ڸs=Hfj&~JO6gTxj3ͯZda g>Vquj6U EF#8,+8=>nRm $Gc&H;$LwJbaM&otѠ5[{ %i8zZ d2o)I$ L$?V`/ `T"o򮝒XOvAR'*\" ko 4fa? (dHf8Q>>8~HN[l*K0A"jit]#,LV2c) p X65=*ɮbD rR* @@L9HVy: tVִ A;uŋd?Vw:QG i7iG(U (s-?VNDT5gz)9@zuKxT|ʅMgI"zw M&])ЄaK ZGw fLǾEYHW x-$ŬҖ>g }',s<# 閳<6t%j]ޑ|&Rhq-l3/}!K;8䢛XLu*3Dl螘OF X|븂' b,vNФq=cO!H%b~^|NSDFw iU^ 6f?!`Me^1TI}]'a%bmu,oQ )$?Y4IF–1")FJsH`@ V4YX=^qj]Mj: %褺bºMz_piiπGl}#wdU1mSm+ep5GXu,1'xݲ 5Kح]>߅ܿ}Bz2q 4=47m^\% Xb eECF qc%⩞rIO}-%? "?dJ3%'3 ˚V݆9|a 25DO[ =55GHk!*[an^\~L Vc2D0=Z۷㓯IUcU=ia)`;_gIl"M#!dp}.H+y1<5 w%Vs%+G1W*]W+F󝱅ᑂ^ohFr  B,h(m _1s޺8 Ű3}pwf:dT'urU[s- k?{0;%}',KRzj:_apɿONC:׌`YߝpO_:wl$ƃOL{Q3g$SzY*|# MkxW Ome;?:leT4Z6صR%ܨvLN/ gkIQ9{X\fH2{Mv@R; TjB$,Q0Y y%@S =]{/aGCG+5b{JD!BVsid]AFIc&=y̅>f6O򑪥6Qz 4el uюA2͎A?\r/g@aNOpKY\P16´3w BPנTw(X0jcx/-[ED@I|Lb74Tcr^NEJ'֗cT.y!Ka|=RMfaUۋ$"'-X`G>)ivif&7X߶&4@ r DF(EG8 ֬`^F|2c)9ؠ**hh}ECP̑BpnPR|q63wgj/|Xت$bcJ5f G+u dH+(70soW _Qlo $g`8ue9HZYF~\ CUuC +"nMfxOmg998mwՂAQ_t$tF1^g'7S_7?YʂLޘDdrsh*uS*`[+c &-zN}F:,ei43L[{},=C 21oܼo&\BǝOܕ0oo-䫎)TQttre2?dnp.].CM+FR5}DsRn(>g 4!!NLx]kJ܃ObCnn1 BF\fh٧o=2+J]#L9#41h(ΞKGi 'b OL&<;.$Ѿ~;NBs\WjQ||uI/lzH}6wjgQLR&EH/ݹޘl6*m3av cccB8hbI^-RTd<iCqu•HuY?՗m~w~jB#v[^ ZϤ.pʵ毷}&`hWiM ?X׉ܘ_\6` s*/5X&[s(E{nMPDc%ҵ ߡțk4RI'l_WE {$Ǵ~eƝ=;KvWTZ UiaU68L)NKU-5vľrHD뉑#gBb! yz-KguKӡ {6] $Rc oV ~v&ubaV8+I+'="%kvUp$gm u[7*+NwBӋ[4ܖxu1\-<6!zgU"62ύ^aؑn&&|WX螕&$mgTpu3{>GWG;9nlx-&ם`M6\RoN #j+WXX_ +Vh"c/4\DʯD"x_me|@5tbDj ! 6qMDPUs Hr6Ao1!_p/->E:/eH(h4UkFioٳ"N4lV3Bu@*0øeȑ_A&H0& U;Ooˡ`,yel գs8B\(n4^gKPzRkw@f:An̙ќV=|حɓ(s|3Z3BAϾg;zttsT݂8'ѭ8XΛCm`sؗz =a}&EۻT'i= #ʓg2ZX9'D0,-U+cAz$b ;ıEUѬRCbd_36y F!L?VbPYkaחyfmCLýpL~FQM,PC:u8n|kJTR yiT Jvө>[77ėծOy(x J,*8|A)oA)"[^a1D=fX,f<1 8so^Q \uю)+z4Ͼ(D [#-_Xaq-H=Al;naFM3>U:Of9+oj,m$ւ1NXĞWZFg\FI/JMj"۔M de.g9n.JDNf sYRusw3{-Aw*q\Mך|?1 1 L<|R|t8ܗTz UbRp )cE]33G w-m ɾf7oCQdۛOƖ)AgK QiAj2 $./鮸i~e]hF WiIin ӡc]BިkqX捛9߮c,}q_ƻyءGqOxj~ OACÐ |%7QxH"!')>J0 u2h8[ײ]m/P.&cLQ,(a %?VL>RG<7o LjB:%>39^u}Fɲ:d̛I*nX{v R5BKTfzP>(wrwtUNjG^`.C?19D/(-HDOb [,g>?x{WޛnK??G`=92|x@+x4pr%j!!}*=DmT3AgsЭb>F۪X? ;?\r;uc.~ XzGIX,L1@Bj(̃0pA\X0H ,- {J8o7pmplv#tk?@(9.?>9 D )_l*lD_D.H(wjtolN-*]Q&gzÜJn1_v!g r7AXɍ}mS_uOmXSBBDۃwmH(|.jn ^]bzlԔq;7[Gt.\M앺 U:k$#*0#%QlT3]b+|1@E.-#$̼ F$ zBB翃 V͢AzLvc5mh¶}PLbmx/ 7^=ޕbF$DuRfp3;5l5!M.Dž{2?0G*A2بΔ})E`l(b^+ /Ӝ6K<v;+3,U}kfjՏ.h?p WhrB F3&\T*=i$FmGO=R@ݓW+Zh7a Ͻ'ʡ=jKRM N6#{1:5LIZsgC(oKw~4}׽,7$56\J''PWIdŹы| =1pLb7F3FbD'5tHs$G.)vWЪ3۽.*=A1L<˼cIX,xca ~,Qu_YpS/[#TI8۝V Z`l Y??0UyG &zf!V5LvĢB6n\2r{>boڻs?euӻIz$Zߔ'sY[è`CiUtܺV.)7 f"NOj\-"\|*E"X#cݪ`xi[#O3(S'nPD3 vd/wbfN7VG7l(bZ D*ԭ9Q̵` U `Dx‰_׭"ipOD_NB?Б AПV(PQ*K%uK%'H`p %,l9LIbK: ,0W?4.I-yA)Q#,ov\1 USPD0&G+/Z6)s Y~=o9"}{~=}t1 18S8Ђ=;X4y?WwqԊ>B>(n";fGpk744^b>5(N7ڕ>TG*X^7sۻ*2|ԂȯLCoh}۴V1#L*3#d.(T\]+$qgůPuJVᶵQG՝x@h}cNJ *ő?mVufnɼB; 1\s"|bQ6X>2L,P09PzHiAi]`D&.uXW0:bE*Ѻe%Q)qL.5p˵ZuÀ%З͸<|?N2٩b~dY#͈[>Wy3tiT{>b)?R^yKzI\^$#=Rˇ8-+P^"okPkW\_fz${ΰUOOn>K?PxsV%]qk fʾ=7|sܱO:Ffj%kyɠhwu/m( jX@EQj"乐iD)׫A=ʟԿ&@r^#NBHpQf*J"&:֌Y/+OT]}]MLiu6W}L,3kvĽِm8-CVڂ:ܗâ'ʭ@(32XuI۷cZSQ4Y7 *7w{B?;r̀#5_ 2@XMxH I&k; B@P0Em 6@,BS`> uRCO1)'balc *+c9s̀{~YVc Zt^믄ZZ&^ߠ5EpbOȭt~rX_E9@wCg9~$oIv?j[CrY$!X^CQdq2d}ZVn?)[B<@3흭#: U1._TW#f'Ҍ ae28 +lI \|'ЩҘZ|[L?M&ۑI8PaڄCa0,B/٪UX<`Ԭ$חgLD;џU8(9Dj4 j)q%#,BB㘇9&Lw1P SaA+o(:31 %)׮͂W:l~.lD &V];[~K\{W@]پ1f(jWDAŋZaIY3wm?n;\:d9nF񧲃D- r唊1GLoCJVPq(!Mzu=w:(b5 XV ?Iw<0hL*U͔^Mơz6@^LUV Q{2$2_ʹǶMA&qnz0CۗEPkC>&Jwa;.h4w_L]TTfvcNݐLz[#Eb&.ͽ270NpUEAtU'1wW&THoJG`l_"V䗤䥠i};1N*#'=E6Ak_uDbY(Jg wcjy^^3bk>duwJQwD?CB!)J| KT=}W^|{bHNUy~ɕ\%AvEC)%h؅wa?ftlZϰ<ᑅΚIڽQY8SYcnFkˉ9y%gƽ+YdfFD]Ux0 :[w`$ꭄثB(oZENÑ&6*Gez9S&͡k?\~9M|oO0D"$m8$"1X@&AyЈ)C RArIYn.0TM[p;^DH3Ӫg!ii8&_Y^ ? xtΨ\^!MQqjXt"9_`HZ0Gj;߰$~)N7? /0{RAbTS Pb26MՏߺw 7 wуTv^P~Oz7| cwߔnTtNO QE'Hp7L(CzӰ,Jy @CJ|Ya:'72tbA(zӨDzHk </]sz\rjl4 `O647 GPlSRqz[o*|Qov^awiĵ8;C,)4McO Ͼ{KC-? G$")olbg rFGCʏKGJe;fuY|uk3`Ҋ&HxXѣ]LW .=#uso9Cv%IeL9HSɯ1ٻ0*}$7P7䗷vWK".©4 ,T'܌ucfT}T.䉪K f!=eϴ\"c|nu ě2:,L@5Z Y̼|ɜHAڸ~@ aB<(LBX;ҀgžħBR Uu-sA]BULqÄ-ƅs|t3R@GBTWw}/)rD]_Mǵ&))vlBԌa؉2[y,~"8}otY0ީóy'ōŁpR٥a`nQ4>{*+e goϳOwBwPJTb 5YX.d7[*oqnS=Œ}DJ|Ƣ"շX?e^t*qu?[ӛe#~ϋz>1Bs:6\CηۃO1zH^$blo#[Ke-hd٤ۗ'~dU> ;dVZT5,{x fqXHBRz9))cBw+jß󢄠|3vh'IJ.eI9xƢ;zT*iCƈܾH <ߑL+ ʳCAPrֱMyQ#P*Dd~m܄a׾wb) [m4u˞O7"ulh}@˒o bNǏll&Q߮py7MͥƎyX3 rJ~ke8dlz$"1[P+49 75mC~8x`"[XXjDョRC[i\&g3uWKA&%,"sG|ڃ٭ `G~g?[isY|!(7>α =fV9׼BoCĺ dDe uJRq)>zc/WfyDu`cvxokf fK.6]Dڿ:MxyINڟ=at~S祪²9OAyeqcԁMnDs-4v ֢TVJEUs`&|Eks 띤'V#F)iK\_0 灧]O]IA/kTzEH[Kٚ} UiQ-n+m2 ^vaR*lo~-4#Qi ^zs@lTRdD8e.Ӟl sZ$UFHuBԤ n[~|V(￲vJHe%4Rdsx|s 4#[,˕Gh^R6Hauh+T}H $#$c^-~chUn'FԲzH}_: /9h~d2NtB-6 يjYĿ //TřujD? hUSRH"xQx.g;趔6?)Ο%7}EC`ҧ"Ճ AMdz'=ajy:3o(-sIF9?c` Jv)=0 s=vwvڸ7Ԧ @CntcGwL4Re_ ېEDvfu1*`ۼ}9v#vC ͆ÝtLM`6@z E#7FU6-&_GՓ@v?a.1zd7=[7SG.nbI`QԀ_Xj}w̳C򮍎\W3 FJB}v~W<$]b U  $1Fd|\Q.# b3W{>Iy s V;ne@'XM6ɅRر|G[ S~'ʠ thmMUզ[‡ɥM$\{FD= &lfn(;AU AYFA]V'#I179)/^}:64IܡPD`#oV@# Z֥߱ƌA%~փY_=ޙ.W&/4"el˘~&+a.5K].Xf<_;E}z8TZ3ߥTRneUS[2p{}&q=j񾓙4Ǡ$k51@Wj A.0muu:E~z[U3hswb :/'< :d6nD';-6ƹ{b~ѱӷEt lFx! 8ſtlt+ /Sxd̂gYC/I\bb#;SCCtyZ)J֠MAU}{y:Oپ{pS,xݤr0-<{:\耢98l8Yʒ 8`|DTiUUv +x2֝UDIgc+a!Kq"1UgeH% ] O>0WcWGClqٻr D fЮ%-|'ڳ{٬4H^~Hmp*VFjK9/?Kabl*@a Zm`ِz-edt(.Iꈃq]шTK>PTbwQgWo^}`!540V "II2#G"ى/U3pN>J,q҃79d-WSB|tƭSz KwFso*8Ł+ >$Kjne_uPmC ث#HTUn]/"` F§Q|Rg#]='0!-r@赪I٨P:Tb bښYFҰlTգ"zyɷ,&@KXRU瀶wP-=Beq(4uhR#UtF`ǩ:]g;@B0*v3ಁItpЦUsH!T1\籯>&GMn=b !&!1 "`]:S=qJC_-q@fL\zg#0fرxv9O,9uǹFJ$g\P_z+:;EG3i2 )ߪ"m,% .ݧFҩU0Rh+AbpL;)4W>. Ց0xo(FArA  EI3Uآ_9BB,|mghV؏PɽI CW>C~(C]]m< |mҼ.:u>Zma #]9|XMtr9U"N{"OɏCN+_M16paYHAԘ5^w^B:DT azC5M-橼&ZkL7{,9jF 4*j&)'QZC^wuiDDZ}&a#X|kUBy| U jM=q$ ]'w԰hCM 'sqFm#fsUr[KӪ;;"Dẉq|n||KNAms]?5穪bQm]] .k:B鎈b ixջ(^ yO y2J6'MsP(6TqGZז٪SZwq'ThXT,r5=&#"y_5}#3HwM{\d$`i _-a.Ϝ?{qf$ա @\W 拰c)p􇸵KMp}ŷ1u 4x4׳NAކ?#zZbnpAB}D*@. _]Ș4)v+( ' Y`/ ` 9?r2ͯrusyP|؈UCEF 6h#ZfApv| ^RӄWn{ Xs(.IsDtk<8Cskrt]\1<̱#Q[ :Q;I"kyzK"fL+.k8X};,)]@:;梽ъc kV0Bq-Gf}҉xn;mmu8f)9ae꧂Xr~ kHFk(e,Z蛁DS!sgxF uQ~'?r`lj ]*tn RX;Jǧ,ԢTDUS/cuU/ԋ4m`%W 0w{aH^(Pɶf^@[?GgY oY^[QN2;=z%J w:j,$Q J{ws\Cv2ߴScpp.k woDŹTf}C,l).@ɕd*hx+MeUuLyf-/h"ʄ_y+IJ("TͰ!+tHmi3vO*V_ >Ů2FmY!K &[֍RjJ!_QDTaqCw !ݭ&N8YH)-.9F;!4ɨ[Zo cT4SP ]t5Uz9oMʎ^=(PM``8rT+>_v{5f~4m,1J]|}~/Z@7^X!Gk`mw\υsm[jg~BD0)IL9E گAU$s>GݨBJM$qn;ʆC*OgȘ26?1"HCN ~r$W^]MΒU|Ch"}C7& t\'z8NS&+|I#QC*\6ų.f/ܛ펫 mD䟢aG y wpDwK3ZQ(!6WpLZdU^k:Q 2?"&} dV&VCp fS#I\icNY@r_k @XLo(,;8S(b:ܔ9Z[yEd.}[&{6a8#2L)z)bBdzD?6W݌!b9X]Gykh$PK~I֒j6Kqiϕ.{J-ԑ[g@|=A'mG&IJ^7Ah7SEg]Yn8x"4GD8/杁f,I1 ? ai*oSXSX÷l9VkLFS <@q²if 0D;dK0 HN t݊7~C'^"yHJŵBIZ/A |=wbb{],T~nY\,b^g[jف0)G xaPΰݬ#Y #ƶ(f6]s]ʌ@yTFWxbXl>8W"WchRGC8DgiZʹWu 54:եd)$7Gn0>eu*QB0*0R276Fo[0OaWn$ ZWyq. PvNv 9 Xh/9.OY gLԠu 329!4f6 A>&EGPdcQgbg?h&GC2iHy\ϙo@8\=\<>x,F6nH^rqXZkh<:saq2ER ,r֍g$d7sļcdif{ɨR2A~:nڕ_s>ObSe/6&jhg3rtº 8gxcAmɁG 9+s4:^5 -4r}tO(N!b s?sls7W̻qzz몎~I ȼz ZNg*5'lExYRO\Qc(SnLso~`Xka=*8(ҥ_s4Lǁ '챭LpU_I˅hNOU` .th?@S\(̊5_]ݘ`CU/\N3tIhtݒS.wf6/ӏBW#^Q+f1ȿ4,j]R*o

      %q6qڥWDs &no>( 0_r}F^1sYӈw;/}2xq 7}?bI#l:xu(d,uwЮ33?ē ttQ\XϿ^H+#XCp.2eRrf8Fmuqƙ |tY#rL[=f :S3?AmY{={Bo;(s ^=ZVo:ԹtIxHM~H~5 g5{u4'0!Rj=bvl=@~=}>v+ɩKl%= б%V3_֝LV<5 0ZG $R'e4-eW9}b ܛIh᳝#ʣD%uNafo@sHMK&Iѽ JAD$CBcENțKY7ڑHoCh0ţirzo.ֿBz]5XpQ́b׆YU1^o݆c:rSyoǣ"`+sKc/\;od)zTNI HXu; pb Riec_IFpp͈.SSh4<EySS j$}_PM3V2sV³˖^2s0Ttx'r+] >{E+'ła.٥/=(pVϓ.8[$^[^yXpf*fZ7J8_3#FO"1˝].A}OOUllf?4VL]bk!˘#U6{i{V39+ !&P#5zeJd_q0n{Gg}iq9Ci؞$o*@dFME\IaYL.C{ߖt{[ثλNX&ޙV+T7:IlJ,D `Rf :` ƒLaZpaLE8G{]t)yi ݭ̽U7f#%SY~y8N7g'2gϜ}+=t-^Zzg>_p*]X^x!$4\n%ys1|Oour~2j5&yŕ @vxz}xiɦ,UJp@V/F,M ÷~e\wy~rP|HD)Ro>pN6R%[G@_ڝڠ^D\ N)3T-7]LIu>hс{^5=peN)oay|s30mA2`S_ !uXC ;5oaj`ζhrأ7kd<+c @2@ʂhLQġjÄLx1bG Tf7%F*EWwf z aA 𨅤H2&~Q 05Aސ iX=G:ROzGVM+*Z/g 2j>İW"$C% y^PvUi_ӟ4FwmM'| =HiYu1yZ, :ãit+,G(~߼N֘b8!|;p꿮J̡tGh09 O'J3`+[ı\6Y2o-#5x0~L_qL`(ފ*_W84$X,7-QI jھy)l'" ר3ҊOS90z^\RA[I&=~*+qr$D_ p/}:553.r%JɽGx_V=:cŻ42H?q E\ҽR$f΂(Eڄs9bat^J!Qi]@yb9BkR!3EIi+Ҵ0ϴzi)"j.@7oiVom#a4CCL۬z 3qs)jL9Y5i%ˈpJvVׯ-^8\RLZO+[嗙nf>vA-/E_%ILK{u {^2ǷB36*>?(d%~3~UΕ]~b̪g7ؑ͞U$=QIEUUO8KmZ}8ci%ŷS D3Ajg n:QKz ̢sugT"x|_RiZ@O2. }ʃQl~w|)ιe q;Y`9X$2X%*y:vX!!gkJ95&-M:ECe;|:CUura!/ciފ_Lr5Յ2)ҥsc 2mRwi~#8JB塳k[k2i.Y17B9r)! W!`lĥGNe?Wna£U&$kkNJR{[N򙙄S{fFPFwXDڄ Ђ Y)Cw/Ee7k2>P+Lj]~k̑CW!,uc.. a"da[c>҈WZ85\2}ўT9Bb-!qjoչa`}lLwvn )7Na?t;pD,^e}ܰ44[kRT `'-XAjDžWyۇ|tBļjD ~2)%bizZF0'9z|. ,8H cfs/ +#0VLf xJCN@Ba}G6y\]~^7Zo(zvډtqyν@o;BzL؉lѸVf}f| 9e{ [F\yQ@f`FUfZ5ۉJ,.dLft1 Hf'Bv* \Mob瞨/;Mc 엏cJ|`dL1U|7V[y,A+,OT]Th:IGe(_dщۼ4"c*ȮO7qdICɬ&E$߼sU0xqnu|!l M'یR*3BJ@Wǘ [yJdZ,@ @EwWBxo W}OR.oSdTy̡7Ju镯80 -%ǡnjod}=۩뜧H.{SO7͢ '' P6՛@*wr]R;k_G7wjXNA'jA?Wls8U"6qԻ ވNr;=x$J@O(|Ew$]_j:'vշ9PkgH @cytc† ]!mq)knfN@4WIMB'>nX=3'IjC"Io`g}1^OZFRc<tV.aPH8vFhaփ_ W"d4Z忟x Re-uiJWneG[)JXغ3&P27f[*›bdB;%Nؘ1\pwtF/$^BD05z*<@ÓY!)&yA{epڥsFoo ftx:AwPmH 4G~T^SPг+$lP aE8 n(ꤝl<`1jE_3gS:gE\PN,kDL2E0:3fL/Cx"n 8EunP> WWyV:K-5@Tދy#Ie09Hkz}qcG}z_{j+ϖ?>)@sF܊كW'_F4ג_7*c@> )wY JM[@gfz2'FHij/vX !b 6n爫 ^oPvەeͮnۧ(E  bfB8CuZnN :cjbըOBe--yt ӐE+:Q1y@Q75Uzwl r۱>~N Z~/Iv}UٶcZ~!G-:d }+" KKX ]6mYeHXI,I[yVfkr uT-X`u Z}'3~g<LIZLeOO 㤊.r˘E9N._"Q`J?4L?@'$ӗ!_4PN?>Jaks> Wx"W=O-8ud=X>ԣcq`Ʊ\=rŎwlA9E.;D ^SF8vXc{ B}Tz'$Z-<Zh"tr=> 8Yڏ;X$jm$'$ROd!8utȼ4;)fAO{#}^;1 cq׊GeHd+:]_`{pe[<H`埏(YoePZ`wvەE]@@A))[E0+.zM@o*l4:.JE:). st34yhgG'7w:ԪQ*9^M< O'RI٤hu>"!r)t2?DN8 O`& =w.n!s,fX*kFosLxg*Qf3ݕ59#وx KHq)VAbnR;Ѹu)aNTrPWEwr7+Pωzӓ+]{}!ס5`C}q Ėt~63GD'/6Vn9n9i{o'>NbtN3rv{xtNhbH&(@|Je4G)q51 \kj.. fѾp2@8숆q>"k۴fclxaoñZY[%2 ą$>M eto#[.ٸ-0U.E)2 |]#=vE0@ȟjQl0sC1*" _u40ή7gDcRZDS6mf:=eql56m WAbEݘsu U)m4Kd瓚s2da2$jNF .Mr#UP|PT 8t w1Gӑy\xAh9EڝFb=E.ebI `Ƌj.^s'xUpQ}[&JW9fHP Q8[ѹᆆnL_؅0O,>E4@3QS2^קzQ=[ߩز+-<"~(Wf4' um;[2 Úl;J\*-o*+c }RS+'%kuƻvGV![ ,_4X}clg(R L;-j BӼ'G=TJU!~*:eL\%nWǯ3 GA xĚ(y _pNU4S|8Cٓ3a͛VD b+Kp o=ἥbȫRd0ok+[iDXh:SBa94>_?wrOTcdB }VwbAܵ?R; WgC%tIW.{DBwtlgNܾ6r|(Xj&'08GNif2P>L!w审*ZC x kb*PO:t Ao+W v{X*aUH^؋=Oa'<w,J=27O8N+@Ž$QND4]EܺgsIe@YjH-|}D #ݟyP8x5gzL}YV?BaYX{hd&~9fGStDHQX;2$nt6e|WEf+bm>M6J2=}D&QR٥Z^g:=u`zRS2=݉nY8m H~`ϠXCFQCEϬ*.}[*{S _09C_PN}IN]RJjzl^1w)CWW(WLKfVYt#J-eM0)<=(;':uQe qWaK=[Ys~A0W%62~dĩPƴ; #i =rs ^ AMG}!(Mi}:U;M\xDw`kra4,38sw0Ƈ a9~Ƣ)s Fה#2ɫ&RƔ@؏`f7>?@P.-gCs?)V\5 BY@>qlsS%:MJ6_~ؔpI` ox6]n_pӮ 7YJttCٱĤ&+ZkAқ Rlf+W5CS!.L[daĿ;Y,_OG08WsxtQCٕ > FпRvPPHh:ޯ%Ϟ`蜫qhJͲona3e D 'H;/.`tjRlmHm#16`0F,wxC$d5zwCO QUH7u~F/ܰ]c{WBb 't# MH5RfϑfRQYGNcڝ8n'l>PHwtQ1:M\zSM~n6?y4p`el C _An A*[wW}Ј<ч.D!P, 7ެDuHBvZ̛)r甼k=\Z0'.HcbpW0`àg&{#nTʄOힲn1(CW@Fkմ⽈*=[s{  V(FE=ј^MmIz[љD6ۘCB< Z8J45h$r~=NDS-ɫYhfزwK.7oF񔅡N6W8ۢ2n08*\/rc~-ѐn}U8JHƞ2h!/W6u$5G⻅R;g0oi#!=?tO,V@kAϽ];jZg"4g䩿I=MVű#Vq2ꋝDtx^UJ/2tdYvMYb8|wq2Tw$Gg~m<K 5*`ɵu x{0js6\^T8tiHb} ~5 > mv`"0 jHG-<1$,g[n.4P3e_#J-'8>v㣘ر%8^Nl솜 h?ts*աӰ k ! DoUگo.ߤ^i+b8 )" R1hmvQ较DwS%6y-}ܸ1f;E͆#T. U M) ؐAkW!3GlBT~U1-==_*aX pS8YH THb_8@|T-]-$VRHmio9?z&4Mǯ4C 26. S(~CBe2/t>e,qؽ]2"Ϻ39vv*&NҢcj.mm~/\(LUmk82 F5AI:pP* 4OvGNJE/miMs0q ȭ?CN@~R ÇS :6utȢ@[hjtX[8;[ted֒`U =K%4bݙazD;Z4 ,i]2Fi..Sh%|LYV[֨j{8כKJO^&1p|l$HG p ?|*;;iml"gɪZ)^U;J?JL }y ލar$&s>_ft˷?=[)̞tjM߸[VdE]]+XFzwm*X9,c 2* -<_1Qu:rniS壺R;t%' 't3pä<Oȷy@wMĢose1BK21`I:x@;}#&nFXMkNis,T*Q"cG,wgptdsڀщ"5VrRycڔ=/WLK {rninbo]Rߗ.< 3dI =,Q]g]Gv].!Wi̦3J7Z; 5Ž$@V#/ndpx!%oQ+_e X .¬_1x`#;a}#apIƠ>lh\24ZlDb6W!\13 e7 *ሊgsI@՟x^:gV;\؜U*jG 6ֳe PL` d^e^A^"Y) ɣ;PW4v Nh ħ Kb^E[ƫup(4աnvk0%a6A2FM `K;^h(mb +  ڱKƅlZU?_]!e+&SNX!5~VvtzT`R CK[{؍h5u7oYvi"CrxCG:XwV(ԏ$*㲸` mמ1 Li$lbV_csaSV7čSKpl$"= ihU1ߴOZez EB_ܪ\ ⷜZĐ |M#7=* 4~ISA<CӞfpv RKË,]=I.)R ̉ &u$Ŭ"͹ȿeOcR]FcW)Wh,1iD-C(I<@pJ LBֲNhBQfiYk˰]{Q;&qRSSxKK]X~GtIBtMZhqZN(A!WZ/I4X8e[)@6OJ %`V,9TV ͨeoÁaU9GK)b~IjԀ%j: 4O"B2VvjwX0Xq'(}YqfM<8]EHXܺ>203ɪ|.XgE2Ĝ`ޕ^MwGB VI2,(4 Y/`rAsbEj Tr,nyK|cÙ=}-\u`nyPp#}:lTD'|?d,qY:4׳~=\o>F`R{a+"Z ped6I [kcSFxזwVRІ ;1U:55WF= [W+74h(e{Sƙo'_-Yo+]xD-¥{-Ǣ#&ؓ8u=%>:Tk &0/L<?$Lj WsR(ME_e/WmTN.M3&JDki(~E,ktY13ͦԻVyu"\ۤϟԫ7!ivs86L X8p像Y^4c+˻ ~% 煩6fv|R#|A{waMc7*ږbwH2eCR @wKȘJ#c: }WdUETU؅nz֣D/,Ղ݊HNOSNH%x~[p\ik~oxIGhHb,p-+Uv7 JQ>̋?LՏ!'Siٸ,ȹ"`\86,xBR?ViyQDJ-P9 3&UK.g'噬[7v6H'>9ڐsEf Oծd_}noCc+1޷.(kbIw͆vS,ľ7rH h3"'Pal[M3о-˕I٘ŵ3MgˌڃYh ^Sw^㡪q5s3zzꃘ bgŸXew׍#우VugmOOn^AbiE* '8}ӧ$z/mc3XC;D_Y{8w)c J:bw$c [u}Z/-a}uc4S˅3E^'d/a{~(8mSWYcu"q+jOΥ%thF r}nwu0C,Өz9(oR{kSBѨYv3 haf[PJy#ʹN>p*ezXMqc`Lܞ^&ƉEӽŚFVL7@GA2RҪkl6R&M4?J#(vS:N)J?mqÓ ~u?[#C ^GhNlQ,HU{ 04)\>x_][eYdq}4XHN x;+ ^w!_pʙ@bgqjƴZ1 T}SgVn5,@?:H:#;aԹҳ`"hn#d"Ģrt1O 癓 a6-Hta#NԘCLclG-!O$NdI!Kn353BonҔM9eĕ?'7Y5uR1l]׏Ijfk^.xG~ @9p\-{(#If888xc5dB'hԦzɡQ9EY֬ #/ZTs72b!5,l슋䇟`O`d!TD| ſѢ$va?Z%Er eF8pwLJҐ }E,QtȴOGƩ8H>c:JK\6g| VJTλ!ꦬ@91J{9ֿe>5ON7aA2lu|ڍ< :5e7m .QVڍeC)!&8Ba~'\#9Q@oq)$Ƞ]#FVa"rnI2>a^N&?Wύx)'5swiZph…0f8ݧ8O\TLc4mʽw/X K">q_z9ku^ŋp)Mo5؃T2K:oQb/ssqt0BҾ T깚cfyD#QwaЈ~m$R+uؤ^8›Bvz_pͰuc'j HŅ}sBQ'tL=A&\#w/{BGxq;YA&)N'l exlb O !i 7 ۘ4rYݒVY̰ؓb%yP7bE4[zߊV7 V~+sH>$ 9 Cޯv*@19L7&ɷ%xG;`j"Ny|c!!BA]:S_ҷ"^JeEjB'q-.XR1dLCZt\3;%zq7&/8u}j~ SzZ݋$,B@NV|U0v}B9-d<ok3> q)@@jh `RP&V2$j6\͟$fx$%@lƖS[RϠ6b@hH%R|@IfBo(9AǜoLbh{d+]0UEWN*= uB*&IZYe,#5݀d8iO8.1q/n5ӌvY[P[8lInnW nfD+C˼v Y۠)˧غV;AG ~HZ (\n@!50ՠ« f8eVϦfȉj ?wf&FeE]zd )hV6xF{L[|+X\0kl|][^@jMhx"7uXl"{7a:;"B BIe "E%H ͕H28b` o]g"u%y0ra^W :3HAש㧚<`Jj2i;CTjXs EA\{y ?3)MDwM$Pn ~I'X\m˷vpuYɮ)] 1+n6q rBI".DT}Gk݊T{dmʖ)հ@kV֥͛Aq<}?ť0#9BEGNaW5șt0b^|/&k!#v z^2>0bj yܩE9LwkrrGIj vrшgFlo~g̈́[Q9R -uYݸDf续/sl\FBWk~ݐC}R0fvD9WC%bKtE[-Gcxf}LW4dz?N2˾d5x@nf@Gڥa ~cqV +'qPwM nZ]Fh4`7_AB7(ӖVeviw=.4"#K8Ub8![M)xku*4޴łq=P%ŭb8gҪ)CqxWXWƐ.p2$*­f'3rKJ(%: rLذ\ۭΑ]xr2iCr*6h {bΚFk=7VkхI5U$+Cjzd\V 7KIxH/W M35b#oR6S4[Z{]/Of$V&sD- E {Qq*"LNBmΗ_F&2H bADvpjyq:{]n'9)ȟKlQ bM~;^V:@C;] yQ4V_~lZInP{Adef oƮ!%vgi[n^:煆D6Q@d5&^zGn_!Oo& Å:Y hpYB(*4Q4q,6S".b&d_ƀJx<<1|mZI)6~ޤȤӣjHX:A!!`L|k^'6!ĭ65R YF~: ^DCȡIZcqYG.% y2T8h2M1d[<3@>Q`1Qb%7*U;dZHň_S5)85T jbQ:f692,ADmЊRgGsB2M#ㄆb+9ÒVIw!@ nt'R ҴTG&͘ SbkEN̙2%@`5KLn"W INaaz1Ѻ3>%na]o#DE /IsT^IGx s5r}uZo[_hZX#P-|l{m, !hIrP1,~ pTiۋ HU>D1 ˡ'/}9D Үӹe"ۢX|zw.| ↴I Nul:7fڣyBcᷲ[՝"lٚq\ KIcRbdM_B.Xr&"n-;^y;?z%bŇ ?2x 2kĸ~ev)~iOi:6Ѝu 1Zjǿ,lx,)A LOB6z|Izx~6^ܓ֋N`:*㯦X=f)9'T OC2` @YkynϫG5vv"d\˶M*%pDg!}!3`E uUĖ^ 's_P\~zO7#u.$">~>b#*Nh]} hsodLԳDqP/ -_pܺQ߾,L_w%زsjMN'p7 cҤA&%&Z؎mugW%$L2<^"PIG3q+>NT קKeyαP?t.kf[iX'6+RR~la.2s=nCqxwyx 6 F-jY5LfQ>m(n-AdALm1.R܃㒬Zv&0_ͨ7+mc[:jl@4$)K!|k#cA:l}>|}q 0ZiQ_s2+ZL`lJO0ގ5Ot jާ&ay@RrX:̲3-\ 녡ɚi1/):<°>ݶz\Vj̪Im€Zgnz.S$'0r㇝崰(.ymqe%PgtD11Sq]Us* 9&K) GBN-POuMm68}=@׀f~KDt !1־Y G6QCeƖFkrOnqYͅML}mӀ*qP _ k6>94 +# Ǐ ޕ&x H=U1f|5%*g=, dLcVW*oVIy_8hWY~3!묞`Qj]Pf J a~bu32M1~Y>P8O=-RKS@2"[ m]-/$Ov0 zF\EfNʕlfRmqv/o<B"<%X׫FKs #F{e`ÁgMW𱐴OҢֲ2/&fc`hI seYl*8{mXZޥ?tw:5ezDDgSӑPJ}IkQ$6 ܨ>oUtM FÃVHƲ}`[mK](񷄌j:}Oi#ke1'虊*MJ좏7EM\! ٲ0v5Z5I\+c? 靔Q7̈́Sfi9 cgb&dSR ^!.P&j)\nsBϼBvKπ^ug%E@3+@Ǜtss1ɬtI=_5b^YWx`Gwe\}@_qj2Mz~Ujk4k<̗L)WxP%OBkY\Oqa@vu.NX@|#Wo%c[L/FSBst&+vW%V# 蘜~}֎d }qBZ};x0U4oם9Pc#HQ=*$$ PG^Y5($e\'! `H_|ui;m=R 1$5[( %WHs2sqR^(:./`*WDif5~t"W,)7%Nv}Lp?x65\rqC ѿ|?w}e3)Jܓ '3yi`?(q5geZ|eOC OqwС qIR-f?`at{HeVҝ)_qsWh.FEVS54ӵ-7~s-w qNyMpjiAk 5hf J3)ã){&Ht/ ~afվjUYi8;(Z]=ԍ'ha`gP7 ?;VZAm麱ҾJI- ?HOs~Gf;vo.g޲5~X{fppeFTgT ʙ;rx{pIwAij\Cu[XRY&I W /F>2Y,60 ]yŒbha]4`T6!fcL,Zy!k~&9O5#lV )S1%JYRg&)@S  cpKƣb̶MXDG- l6:4- 6߅1 c?GccoN wp%y#yPHYʎKoԒob8Q D[ϸEs DyrM3E}8]òq ,w*.pE z_K |'dvRjϛ] ?ZojtIYwP8PHQ:׿Frɒ-`VgC@X/9򳯂M.5lKY#K`B t?bs^ZtX#SBGᮜSsIJ2.-{ptHEsa/|gma&+Ty#7D=:mW jOt˳3SRM(8Nj'ͮ~c hdNZD vsFjK7Dsns2Snbd{]hҔD:W!sQʏ;5D096)=J )aW P!zoX?}/Y.\a. KMAȤ*9 !j{$EωB ~iM'DF?E|gM]LDXow^ܵYKU Z{`KvT-Y^JIhN&c:d}S\DA`$?>v fT^+XI+hJoz"@Mp Mq!Fq]>qS ahE< s<  Z-y@RWZ=R)nإqP\o$9L0GԧpX$2_DPdChœFRi>r#*6SQ8^̷*rxbs A-BO6K~2!rxx[V{.i;3{7M̺BŒ7zg])si-PTV:鷁q,jˀ­PtZ4bAU] uF祻->,SQ*=gTCxJ/fDg&WP.-ŰG +,>&I䅟3” 'U5 ȋg$ БC l!9.6xxcܹ}ݲ>EX XIcA|e* [ *Km1yC-L§~.96:BK·vpI&ŵii)ʐovRg$-8 Dy( x7jPz-u7_W:H^f=jȁz~aaNoO9(E*3ܒ[dxtUfnz6D0{LP |Qa4ԉVf.ifB y;NUq|1bv9;#<@B({ΉATo(H|) tf3PQ$hnݱ'&[QeA^ Zu>fRлy^vafkB&%:=ㅖx-6ɪ|2W ) :FIoY iQ03eY@N#8q$]KBǹWN$2-E1֍ 0'e+./O;3R5f\yģiOU)?SQSK4~-Fk/_CRHfp /MiUZ, o?WyJz0qKp #YP1H;pJjm/y;$l/rss# &#h8A3ʠ#v4󫐾8zJB %}fM8ToX2|0Píi@K@%"^렁݊{P2)ԥ c:_O0Os@3lh2*"_H׳Yȍv<a>>%R&h`K5ZK"h-=ǵ#? j^=Ԉ G\+nX_TF>Å WS_ِvgk~!bPVP #}Ӈj&hNNk|1DS L,t[ u +eǝu/# 3;.D{ш9-]=Ơ5{s*_~E="v!n(B|p[S»Ƶ!2tB+AK We1u' r aŒI%qW@1GU\tOrJJ&9?t+AR'L 8\. ÿ]Ȏ?8L4ޮa7NF\z:DۏNnM}$Uжa˨0c'y wEU-ٙX;i Y4`=ӕ(%룬8?ec;'#i-wP:".HXC "܂]C ϔQDլ|3,{K3 ؑ졵 w2,l v[>hԎ*3nټ[$ פph=N}Lgg[j{g7 ,1R25`".džR#Ŀ~9ȂclzF4k%#D┇J-ÙPEj1UMk_(xj9REyBo%-s&o6Sxm IA_bﷆuw a-AɚU8?"f@vB  뵜lyt8BzʾZv\jfd"7xN~8wksdG-؇Vf=ݨKL:dM~*PJL$(3o*j  ǽ"$S S6 Rd(ʾ\[@uŌz΋{ iե;A8M砈re$' mvHִ;c0} s凞I8S86eRQq#{k"n]OZGIJ³(e`%[;F a rW$i1VB[oh]Y& 5-m\bL~+,.%=Ksb,jf97_G;J7Ihf;rܡ3%lKap{XhnɄ@gf,EDQ U]tV'` Xx'l]Șl?]H,1R@<)* 6`a*fڳ~u:E o`~';rt*[3/T˪Y(>|~xt'  *pAR>hXsN%W|rO?!hk;\XD1PQBjK_qqPu%6s6af:k+^ د[|]l\lz=z*ԢXfHP6@"QFUOsY-ԊΎ֮$X җt!k^à"%l[ J-RHfr?OX rqǥ~uXK}&Z}U[dǣC> 0D,yMHݹJ7bm=uUzOWZ[m!lf]!)m|Kfxp |?ͥb 0$> iޔiAGsEƒUV?AЋZdJ| 4rE [ f'>B^A5"928[maƩȍNGrOGL.yqabٻ&CS9Buٔdė}N֤X|(1X┰pGˤl蝧pΛpصEUnD,3Y0U# E0"K8lbڡ]l5԰ fw0q+ƈ P u& !_qhZNNίk'VM @v[JP(Ԁ07b\Wm.2c{;N9Wzu:4[)οVI~H.E"nvZ8#Tg^%=0H(53r39y!XQ|xɺ=:{szd:W#;MmwUƨ=(\+ldFRz6 :\\*~qIq@C.|/A@TDwWt&?g]9ˀ G7?ӧ)Yq§,DgQi`7D[zCP+z\ZٙxrZ |߱s~OtC`0Yr zl?LNY̵.m s3CofBǏknWqejꢗA7>yD{o).Ux0`5z5OnʾϖFojGfxJ  e / fu6<1:E6E*I$o4WY{ f~ut̞.R{IrpPXͰ=b<07D'AGQK:|d *y0-R9H lq*a]G=N@˅ 8vاAYAS:ru4 /7i!O2",bԝGD]6\Vz] r8$fpf[ s__Poԑf,¨'/ H_F-F婝)"q8 [8lXhٖ-ŬJvS48 -o\)+l:IԩrC` \,mY@~&+~MeVj+> +y +eҕ'Yy-6u4T IJDҵ h1MpVƏ /26󟾇v>IF,*1t\.$ S3~*.sEZ6ˣ2VX5tK^)Z&&ҴS@L[)Fdjc@4exwU(,1Z&zrJp3)& AU 6~j&fQLNwyo1ޢW(pngm>sÉ,`XBTj #EPi (DYt 돼)r~HrF Y/-I5@}r(%ҕ]GcN? #ZVxTqDސZi6e_Yٯ){Thq+6θ0,:V!{nU 6hE'1ARA x>pMC=Wyo@FI`ggNpT7.lC;*#CzAVQbYbrne vfXU!MC\HX,{9;sޖ +1u/3-S;$΄e]g~Y^]+6፝C';2^H] (8OzJkzSzu m˷b/mVIo܍8G  s_ڝB}W :pl YSu/!* eذ[Hq8^JQExJz!a=.ȵGk#y$WPJ%%5\ߟƙ;JӞp65kxnD~|{fu׉"d*w{m㹨meG&58Ky-BЊ4Š+׺%Asr'ȑUqkqq؈jqb _1s+zĠ^Oh7<~D̡Ն9hֈ%H,\ӏ]}kiTȼRm] ŀ14cgݒ_B[xojjN$?u4롮_:xV-ɥ킐=ts{ɛkƸ; * [Ee^3J<{aohXk<9^d3dBRTlT эOS54 ASr^E9WP1Ti?JDZl5E@^:z#'ՂUw"3(!m Rn mޏqb8'0wU 7b#m;U0Ѝ+yRusءg5`U<fޤSiL .tH5IQe%^5lu)? {v1DE&`JU6}0[A$ &k1~}ܓ>$w3]f<&TUȴןzH)0׷`+r`xƇέ6 ¥XmCRPJIAFP_"G^@ܬç|%)NxY')NMk,+w鞁U @2@ӢmEk2v$F5+źcպ 4_;67%0s4yKl -3o)9s=n8)Լ?a,p?8+[_ҁǐu'_RuaWo3%] ϑ0BVg oi`K59*Bd. ';*z9Ka ]_w*3Q) 3[%l"R|Dq.^Y M{氅*,U)~-i~k#As D*ϴ zm\߀vKDo sE( ] I8r,e ;_*2ȟ$vL_t9 ~ r;at@fW"oMN;5ZX~`0 u!s̕ȵP28/~M޷(hA }#Wi^(ty??5q DɦM/A!oM!me!}'\=̔Α@QmYj5,}Ec Ȭ=l)_ eEz@Lx0GgyHV jr5ÿSF-b3jB/,׺ZĄι?O A ONp!'Cyt =8+}֔Lj_X 0E*_ 29;1gE{BǤp0^vV߭ IB2+V !W}oB4A%o2::&V"jFB?tEFsϴ+B7(BaYfůQ:kъM2@05hYxy j+<`uh1~֐Cm5$kԹvp<_vY$O% "k}=Զ}+]%zcvP5#T+ \F|m"6;Un h}tETB>0zgw'@h!{>LJڇD.{0Պm.(EO[>@}-3'/;8RLL<`;Z`}jeD̐}k~ä́kk$_ A:vS&sGBuhfZF3׽>\c/UI'$1 5N䎄!cK w #qFb !<`XZCmr '}J᷎ v v;GIȫ,>>ڻ\˴$>S;:m8|ގ7bl1)z(g佗-,uI6T~m\T5\7JK mf#2RA%]@SnZLPݜsLp+<|f;,34:J-+F fU5W#8$l \1_5U0&ԙ"\ `ܻ)01[ql5ė-U md5- tq$1J* $q,yZnϏ IHbiҰ(ߖZs20jv-W]EKDZN$$ɩY~|Dn(*epق uM8ʣU2t< {?x-'PЩGxZۣg̏.܇twAaHx-ԚCHھ/sKKJBKihem_%qͳ%DxGFtm^Qc); L }ӥZb 5X* NH~5L#Kڎn¯\g Y3t(#CʋfB ''-E\Q9ϨtP)EνpPnHQ=qfȵ[IjLX' W}&Ch ]}r35v15>]cP{ LSs/xvcTx}'Hܢ(a@J@&L0uv%8s~/nCar]̟V6u'DAׯ2sn\yUyTKL0c [8 0!X<\A.2gX(wXRGy(z%2J/YPSݨs交 .p^*|Բ٬:ucaVDF ;ͨ+=?t,`*4aO8`4mU}&jCb-Dɏ,+dD4'UKVlge1눭b VYɬKq/~z{oӼ ~VЕ3jBT&4LFDhU!X3ą-˨꩕#t+|& 9aGv;2aMtft!n('{s*zMt4|8V2oT!f-v/e7GQ)[&y? Mo+HІ,Xڶ6Ӽʸe_$}#8Vu'Z"2f vTL)s)-||3*45Ҽ5M#Zk7?ZKAM9̳ XhBW 7P:qtE]9OAȿ/.N Z0xyhP(aMHBbra;!6C}[ceYOƶ:A8D}kAӾJ~G[TGB}ݪ -|Yh>D4f22R@ =o8{E]_.=U?d c%c2wSw':b4|ʜu0O84獾v(k2cw 7lMP\ongAۣe:ޟ WFߐk\Ũhtx[.mak$ r; •[1BO_w[AzB^e;k [ Z%$BeS4Ă8QqKқY{ֺ.xKDՃ.wv @ ~?zA9Bl W6*JSWN UlW!aҙsk\TKƠp[K xzMĶgzoӆ_BVYʤf(5(؊Z3ӏ >vƓYg;YT=?!|ӟ9zc ՘TÎ;6CxBj$\z%d˘jƹmІfU`\wxgM]xZȻ^Ht.& `hp″oޠ?F矒l;󵪵FzZ|gv|Azy"wl39/#WWCW)}!W Pn; %v0%$/P-3a;N,a'mֳ(zZVl-ǤD>Vq?~Ce1={ lݷXoHh^q<%! C5H^!cL4@ؔ$`wq]k=OiNZwu%aYAnA[m*T_rAΪTiNjWx[ƹհ?7pNw7 316MXwp~jO%;GMJ]9!s`O:~_9xU"!j[~UNdq8Z+^6M[r!tx"=1# q5ϑAoI/d%8J_*{y/M-(u]uY2vR~!ɑ,ұ(j%v,/G?*]) G`ޯѿP=\󝻴5bҒm:!%9nd{EՐ s.]YDZ>Ð`rlw]RVgDt }UzGo?w֓gcnr`^@ qVGĀ_\u+(-ςW5"!ZqoN 0[[i;MbzD4~_2A!^?9x)Kn Vjʅ)01Ew"'G) r BK-tNM"ׄ< sQM; UiVM.y$ yE+oB΋^ z\8-ˋi fˈ˪/=b ~}iH`цEh`A[ymdƷ.@u >*n>pP?webB!׿WOӋC4NdWhNF: ?eC%ZT!-Z{04|_.?-W=Pؾ91I Nƕj r›auwl֨X#MhZox9ĆSB=pKB˪DHi]\]66^RȲ*-u3怜^Y_ 0kOi#-ŔVYC#*rjv;NO7&94͠%Vv=X/Z"C*(_wҁy chުzٕ kTf-ۺ3Ao|+aMjUE^T⥀$)L[æG.48R1cF臹xx5k+>keX|Pʈ-tJAl22cxohƙcj-UшT ,}I1⦯oͥs?X̴'~u[QIt驖e>G:M!F,=hvm'%-*̍Ӭ%>k && R}^otKZ( N>#YƊy,KlZII!MѻBt٘FuV$vxs]|tȰ䨓N]1Vj?WnJB5p6uoXޜ"`tKX ~sŝTkX+H5d rp'x&nHvL/5ٓVjfWgRK>RzĄT~Ζei`J=8{ÖU|l=+يFO+s4Uě遼$@YX v[ݑTF< z| {Hnθ$Q3ՐelyRʕRF#w:xa+c bzF5dž:mbz?Ql|ud MϯFV:X7K(b`zGI7uǬf“461ccՀ~Z2t ױo|aUO@e ncN001oU]1D* 2K 6~4ZMYoiK.{l$ن.Y~[RZ,>z,QjtT%_]7蠓OlpDldKFTWy?b4#eny[rћgNsV:6]( 7Dc#" E *:e O:cCo.m'[7 *@^ K>Cuch4z1EgIqK8oϛ|w,_+p'e?B >Wks8S}ym Mw^ $Zܘ IFJ I}TTZW.A5%TMUw :+T%w/ p`zB=Z+Η`)|wQ=;)`x0L#/b&Q>iw4*f1`|p")<ɮ*X "PYfm]!#x= %XLo[ Y}0o,=:>A'ZFF(+ȑ o xzj&I]h_G5vQ^5TpV/,i?{;-+JƼ5 c({kqll0.e{|6xص3gϩ R _-.8@fpTGa*ၷHEFi2_:Ѝ8J}$)qp1CN>M&SIYMFݬ˲;4㬾 +j5*c T$\oR1|~j=dU&t2UⶻNvCމi=#$5QkJ_\g[SX,lrȗtM`WoC 9Mg`o3:*vA 7MαWP~՗ׇcag78u11rY JAF ?ڢ觟4R^WLlȉhhE_}9n.FLӪr𥈧=ҿZ15zLC"/JJnSY>)jf,(MGS;O/MkobsHQ8oJ\: ՈhO)6 \r|aYCr(б*\mZ мyzSF2Ehk6aHme (|GSHj1zT_"lEPZ kOҵҥW2I))-4s{r}a*; $2wt,q5;C:<_hL ăJV=r 2s `_ݦlJNXc, )sU8T`HU7;K2I|Ѯ U_b9Mf8Lp|ɹ=lDrLVVfM[H!im<7ZzS&>DhMw1 5Ŭ|+_8651L7>%yOX9jČo.SM.ܧ'3UKt T’ 97u)$!2Il2w%eY2DjD1ʷt\NWjԿb7!˥);vp1Ϧ\>G-$d삷FإYjN( : gZhvf GfF\j䦯'H7}a(v}"o@RׁєT|> zgiaW4>рV,zT ɕ\s2 )R/tb^Mchƻ}, 6:&,Ҫf;cwH3*!3uMxS*1wG3ZO$= $Dn{(X{֘7AoznU'=1WK$ZIMَFl7"6L'0AoN7od'tHbp~/E/CYᦊ: ىr2_+U1g`]ɐLSwWrślknX4(8`30&Ef|*Xh1AtzRlY%9DUmfd'4<})C ȟFhsvo\~\6~כ~[=J&ֳ9=68WO,hC"B$<^A i:<8RZ*뤰Ζ7^̥ۖ*XcC&=x +!tqI@$whr0abA|. U4!KEN8|oaҾ;^}'ݖ:ےywY5 ٗ\1(X[Y89WPsyTFA}p}74_n-Z/8,QP'#z%5N厺2?umAh o1}Dp(ŋN '23k3 m(mHʼDr>GꍃN'\BT5Y߈IlXv{-4 EeyϏu'= (k锹zN;׊g{i4Q{W% .#1h8Z*>k4,#zdO#N @u7(wl/L#̱PBr0mj]整7l_T?F_X8ey4:kbp9wq;ȣiSJ;Hc%WT$`.PߤBwg JஐR_vSzUC}3e eS!AAIы -7+re=D4F4dc2>B/5i cA4bup8v@?O#N)*T:/ giYbb/=B8j}v+,nG}la1B7OԜ[ۉ] 2;_~{J0m'簁|ʚ<6/to&%u ,2xiE;+gc%1$-]Qs8!A2pCxښ. ˧QܿUM:R{hfQq U)6G)h'ތS"=1@  ^*Mבb"ZuIZZيbxYB)4PAPhV0bgKXMYvQCG i)f pu1ǒЖH"i~hf+D{QT*Z<6|_{Q)iӂ-|w)x_W lW}jQMPI̅`,ht0 ým^|)._|=} *Q6XorXrb2Ɨy8գpZ ^q boA#rtu˄I"pgSS;w"vm;srCa%ǠBǁjZBM‚#| oJ]5h~[?ȿ/L0jC݋JpPߺpPzMZp!1W72Sкzba@&!Q&M`KiY<!5ڄlaMUZ?6֐2Pݓnlm Y S $0]ĞT&ga'P8f#q7I3gCŌ!YQUĄ**ϞVu33qtjDDgvBYcs?L: 1Axtlvzei' U&vŗP|JϹ{ @4 _uHҗ~6M>&*^Dl(HH`PNHm-tϙSݑf];` ̑ dESZ9FBt =A"T6; m$OX12N9E6Y7jzpf]ƈY:Ou H#MN: kdℲ:"3NBd'?8j/rWJt9eп|,+ t90߆y\qV[:ou?DR%R% :*Q''Dwm3G@F(}3 z!j$&(C%a ]S(dBM/6x3H1<I9ttE%gBjf 諞G-"b\FwM[">'gO2ڸN 2Č K/-[;0`Vẍ́"CFÏR{A3$bJ'Mz&boOb+[a@Ԏ/  >SV] 7\ $D4< iЃ>"e44dV)mM 3 9%nkzѹ_~ w-F:$â'+ "\)*Ȍ@lFZ15zfb \o*ʜTt,eb+;Ěh>?]oַ_@j>U'鐁D _au} 12:4N|z䋪|1Tzt4Ee,Nn`:R%|duN0#6OY"W+֞:dű)YBHU>3xWbJ }v (7uBLq.Wx&$v{ɲV7H`ѧeC9Nl4Vq~'}p^6+Dˋjc]%Dtɩ&b6WCmyU 7b' r:rE:KjRd' *4ɚ4Lkを4΂4æQ(u %JRe_q٧~ZcziƒNʋbHJ.=nA#^zKgH5=drÍPc)دvq.%E;xarb &UCk=... !Ά rX/2}8qf.j'&cZ3jO7]"D u@ 8`KRpY\3)#u /j>P=R_w ks;geb"ǰBx.r_zUh+!JN1zH<\<Mr^"//UHbE{eٲh=rU2j.u9PƬu.W \jWBOP.wQ;WA<7{U( mdoZf/&܉5fгJ OMiv`9~SVlAރGy1MJNߵ7J~[4ZT ! ܯ:sabߪvހgncܹ4MxcxAJnca"Tu(NUXNۉ0waF%ibC׾\j#x48>ΩcqzGi3aKsh#NZTCT5-҅b$C f 9jM+@t ``U- %b h7D'{V++&IT9 D;N~֞ޥzNৣ1G}/WvhAFViP4ep -A!luV<"kc(_o}3HԶ]uW١V1`+gPdʹSHqXs se;^-Jò\4_@Up <ڸU? [do,jAqˠvO !%GioPqA#F;LR כ8{g0|<+Ĵ ڈ\ zù?jsgȅ9bJSb0Vwo;ʕ ha7HOJpIt̆ 6-_PX)[l dr>߱g+nײ y>="q&+54jVԤ+ԭz!"GOaۡ1(Gm̩wVK2? #ćz6zeBBT2(Y.)5曘F̓$(vG@j5"5ߋT&] D:fN:{h(W8@.vhX9>[h$dTu, fFES'9 ?S8 [prʵ{+8BUaXmVl*^,)|^f{k ^wWr L+;)#[VuԎp3jSFhkU0l˱%k9A9G!| 6p'lwT5OLz OƄs,<*ߩ En6X8ݣofڨKz*!aJy@KU lnR9P_2[Kf~P5* { ҧC1)[&1M6j7Z|KT-^oSt /.]+8H6Z0ï\ ϞhH6tkM$s 91e#…ſ0nߊ@"B' 5)Y/Ϻ.x ܻ>i*xyhDf=Z]55cz!) Hѕ גNiϾǑϱֲTk:"!@3$ n@`KB{@qC-M=a-Ҟ.Pk["G^ Pfc^q3 9"O%Wn1sбZxlEٰx>lڏFyOE0Z*̊n seWQi ʌd7vW7W&s9.e'A5B`-.D?ű  #B{hޟ0KϤM__~5swLO}BN ,"Z@"~ +MKO$>\!ѱ_6}'-5#Ze7?- hVd Don'9M!!8s>ҒC_Sf8pWG@_?V8˪llb%%';嵬uboc`b(^l;X `+GJafx8 #zKYm  iʆ`nlLu|AuSޡVpVcOy@ZDUW ITp MW5YY ݷA+-id13%C'BnD[#" FЯ6 Ƙ.^C9rfqQ.=v+ SM&G dOK8s/H2!nbvOҠ?&Z@HJJt;g_R̛nqRiIC8OJę+ yPʉhbNQ^8ho*3(R<`=8QѣٱrNzކID[4U%oy"e6=!zO!g%;p5*"S`Hs|4%@kkP cQmM-y㢦v0!RğZi?CtG'fѽp-gZ"s\N,-p+)7 on#6 )W$o#s]QWL*6ה肠dm~vfl }%ozuA^41LZ xdX9""ǩ+b")I{ IX~C 17Q+Bs"n P][͞ACáKk23y`">I9X^]}'*Ek;#/Bͭev1ڂ}ߩOә=7G 掷eTOj N? q!EfaC12-FN7giE_3Q:Txw5NiLQ(aF(I9MJ)p q? 'Ek_QPĶ6%H<47p,="-gSJ'\LδH\/ kě؛ w7v:ȑGEI9H;W uA[WX/FptYLCnm:e%`߈8Pv)1>$04ð`%zmkQ=y2_41Z.FnDzc@|59931 O;R  3pL6!fKRzƹﴉ=&Jzw3PA4h-rLfp!z4F`g(16;}:m MmSZtsTDDкoSOϕ0ŠKV-NJdf&yXĹHdyĜ~%99;j&ǕLq*ԛ`nǩMe*oW֯B1Nh!׸4B4иG$[wЄ)5D{z-X }=3~l)Ӂ_ ( u`~ )U, ޶v=ZGA-#;2>Yx0D@| o#q87u.LA6Bljj5[zR|j"Q]}Lk2Eѥ8gJitQh_*M/X{Ӣp_!^\=U%WfG)ߞSl(>8di88HMl #W[ hi\2#?L,^ |-@E Et΅Blc9ly &)q⫂EEॷ@)z1 **Z j^W]6ʛ1*q$PO;/| >d%mTcFQdz|c?nsZ .6 Δ-|)z2 6@ st,csN6 `zNT XS_x*$i`(FKA2=ǎtY Pţ#>;PF3cq [NYNlGɺo2iGQ]R%%x%Vw߃HĶ]3zP@u@Z=S-L]vfv`ngBܕƱ'id6̐1;?Í%I-N2>p9$ r7 |>\b6g#+RLRgBܠ֪{VJ)++_Inݾ̖{kDO ay%k-d!Dٿ^$[YkO"ȣ[[h BT(re)wc7x Ml[>3`86n\$8[oLi} <!YS.!6[)|`uD6~.G+9i T]W yhJ(0sl-M:9v(l`4mfP&6Ke G(>?XCtn@Ny=RvaȜ?by"yVph kLa[M ލ2ʇvH!ѣpJ"bD1CGf>~ϯ"ax;S9UQ)\9fPcdqV-(22QF9aP򧺥B5iEv1#!SyQ;8D! fO]FzP$O3312r94cZr ;ĴZ~#;LPn[9 1I`@0ݔFu!=b'(95Ō H-t1:j.+bE{o f]`XG0~Pi?ŤAhdY YL5Mn:&r{*Mb-HWpbqb[ є? Ck4zܝۮD2,|hmq,v]g1goeG$|MRؕ<D5%ʖC5 <(7_%hv9q1ueN.z`pk[gTcA9]:DحTۡr烩]"T<ж0>>Zk~_^~s'8U.~)"VN!Mڪc!J`B0u0KU`K ’,a8|0%,2\loTu5[YKsr,ʳ{=? r~5qb>dPn̪7ʠV"%Fᐈr7ux+C &n(>~ybl0;fvE@Bu~RHa6aD֣lZRw3!l2H2Bĥ+~rNV` J"B8<1U¼C힆i֪k@#ٔWƏ~,p-5Hk4cn7z gN 6j(2]֜pačs0 I# 8hMJ4n]O{'g=ȃ)^*W2S!X)嗻l U>Ki1بtOKbi^,2}B=6dw f_ 𨅖e8q= g~Wݵ{Ioڀ=4p2eTA÷ٞsQhN*ƍe^R|Kt,;^*zMx=%W?n}km2V~ԊzY:Y9/I]8,Qj6i_;7uh7ޫ3K:lJ8KEHnCs0{´,)]4ȻKSnߒ`{mylPw;?%sJy)wES: }ؿs"S*ԾWݯ'Y>1fE)ɓ\Vhōs_ÉFc¾ICLXgE*HzQp drb6V]u ({Z0lFZ7 k[ƍ R)-"ªƲ|%ðzIN#O'5z{'ٛx[ha hOlppډ9$pB5@d̈iȟdpC{[%]gѩv/jԇ_Q '+ټ Ϣ:nT_fjX1T؎F}f.=t1wqFy/kkihXk0SŖ-&[\:*!MEC퇇Za;&6c ,3 FB!qbjbU)ٶA"UYu ? ]S4<=Xtΰ)sizel[?`t6DVOZ6㵻E(&`!I DѴ3/U & l.LE? `!p\ ۛEL<|]!-͡@}ZӃ(Hv T Ik=7%iꖜ+at =0M;V !i.5jD|êGU^i_{~u1[3ؗ\<]c-"/x&H)uc!)aӰ츟x`O=.}hQc T?S>W.%uERPEbsoU#<պo%4sxs~6}rf/*9#?(~TLUk+j֖y  5FHeNg,IEqZp,O~dƎR5|1֥А.`~.MiVbueGa$\ͤ`O 1.뾸zzʶv&cD0q6lƦ 3fޖ.3UBlWms tC"$5o$-fxoK;b׮B E_@^Vr;w@FҰXZ<w||uveLEƯb̕\6D^H~R{rjOLg_8+ipH FcH%͹7()t?!nlz u;oOW\졅hN-o_|V7AJ\GFdYv4 Spu(Q)qgB2vS'đpHƔQS/p)-d`1Ǥ'CْWl%2n`{f:_TI_F[a6j8o0NDBx,-le0ŃT &y%WPE_#Y5Onsjx3Lh+e4/C^Ϋ^ȽIUg1bVS,4I6GK,5ɫ$?ZbgY*w০{Z1D6i`}g%FŽ@N9oMdw@j+?ߜE19hb񎓷uRhK*OuP_q"kh;q.=e/޻]90snIbkpxk"$u nǏǑ>v < xYcW!%yι3V!'xҥ2uI#8=RhGفvزmC6nݙ%OB ezdZ!nJ`YQ2cA/,Z V2_U#%XSZgGյqۉ7h(q99IB+HLjgHn]+znRpKj#sm4s*v*XS)V*V/s;NztdQw:دWj*?].\yںP)|D+Kt%pw:# LPlq^Lw8c'SXk0Βn!4oa! zUblo!?Q_/,>u+[`M vb؞ I,`ĸbW^~Ǩ4!at@qC;KWIVbnZF2.2,QCf2ՏVZ$;m^c3? V jq5R+SvpSbDnb??uT"ĎC$tYr=,8bO65X5b&y/v/%V7{N'5J&oBx(^Q3X7bf#D+JgO"\#NȘ5|2 m~*H$W5 /ğI:o6U,;rҳ md?3EmG6xu˃Ί2a|uXp p;pȊpb.vS}yhY/Ua-Ϸ8oU(D@0PO=ӥQi%VƊds!ZP,RM| >EdVkfddQ ٰ #hއL.iW'O)%BS[bSbzIqv+s?AT̠T NVHj-p'ToO3V[pG0 ۱브7U ]f*r0vBAƼ环*mGy!>))Z .6ku:4ƻ,3ֿ⎹+KfL|}9$Mk NQFЉ!l3dF>/~bƊg<x/ˬ l|kzB< u+k,~t0rtRҭn^IMN"uDv"0;3VB|9ӌiF$ܰJ? n|΅RA%":g9&4H*S-TO}۝&-Cc% ^`Ԋ*@ffO18h ~.*kUx3Տ.%g7ʮ!Idj,v/}A343, .t'ZZ{ $l6c'.E8Rܟ=ovrIQ=Fi:$z! 2n9`n7*P[QMԄE v.rb `|]oPHKܮ+EM<5Vs˚p{{ZGYMPȁmEQu׽LtuakFc{{(tdYr?`EJy/fr-6^{yvwy?>bB"rš$>a{_-9}Af؀Pk(CNäZ8[p_k5L-8 C-`h,Y,"azH!~'86ocm#f4k' f t9iܡ̀kQBjK1A'#m|U }).%#u#qD̘ Wv^;t:Vu)[SXRO+tpj#/|SL[;|8 yms̝tL=2+C+ک!Co(2NV!KL~D,GcDRGӲ鮀|D{AZW`Ϡx]E p*01$DUz| Ru{2Kȋ~%Dq V g>b8`wo!G^BN*@*$uZa Mm{+$)ƨ*VSu/٭_rByf@ww η!>aZ&FκG P#JsF"f¾&I;kG)gv<22t4dJX w~8 Ugu8M)' gxE4ރRV$ami Ktd/e4ؖ$2+[dPgHN.i([Q4҈e`m,[2Ҽa3BC']}̵`=Jtu )Z(ܰ<5 Plw+.ͷj[nΆQZEzL<+= aVއȧ2CȻrZ]槯^0J_z y8Fwٞ Jr\,&/Bs) +o.kQLV m7(A6;w-ɼ/ t6,j9 `H(+Q4s[nTJkO%NsWXZ00V;s=â A񗐝0;n m{Xi"C:%ԅ O0dV*h2tyyS#, Bfr%@;& 8m$]󟮛T(A*ZN=qJ{ZZ6[7UqQ0 HU[gJć<2栱/#Gݧ2eXTM6pV7\L2p?{XJC:TY܂KECV 9߀ˊ^ i|A{kXCXÁ b(P᜘+G1~xʷo b"w.%]ݎ!uo=/OSoGi?7f -ڏe:6uM"[+o0)(44H'#^}ƶ#$S'"c̤S|!r򉕩:q.T4'-yoN~ ‚riQXu|jڶ*pMД,+%{Ğ luNcs:\!L2CxuC:a5쇯c$ߜH ."I*ϴ<5M33ep2..DnfkT=-Y)4go}/]IݾC!fA: 5̕6PdEODlN7ZX/e^tv~V]G A{9U J˭ЦT/A/nay>5^0 &C㿓>*Lڔjt!W>?_*x J)\Z)b9Ţ[E_z§-$\Pb.2벰~0p\_1""l\7 ?L~>#&8Fbgr!q4Ep1XXP]Y_0eqf1Ud|:۲ĕ%h>XD ˆ/}$+r$%Rv.;GԽG(KGںοyzuG,ֱYÏkn } ,7ɯ?f -gmZw mv%o"UXK^i. 4H'1\(/qbЧil>_j'N-⋥G5+U" EY🶕 9&!,3eJF5c6V7l XG"@{kBõ_&Յئpؿj]J4ţ( 8m'~=::y*Bn$KW 6NM5n_A š[ B=Zn*|CDk E8Re#@"BTCCh?PMy[Zz%_|\ 6wJLb(XV%i{&;Eμت49%0X qT 3ÏVnA*72ġfJHq0ԙF'{"pKG06+|i v r%H(^μE4sƇ`R/Z|LM2]TT2A&mQKތ{wiە*B|63Y1ȴvQ@9ތ?/5Vk4G y~&4\bq7g$LPl JrneIbGN2OFڡqG_]Kз͌c|υ5.n a-q#z(/)qn&O.'Q6 ӻ GB J{^v]hX8,疀Hp&o"K`< mmQݴv@t/o?JV`*Г!3]B]˞~x似ZeR<٠&6=\$ _R}N>`ﮙ`Q1ed#Nos4R y??۲PC!ApPW2O!LEy ?؎(PE!(_8.n4H$ *IZ5a BXhDQxw-= EkQ:I9Z!(8Mͫe]skeCP׈l¯~ಿES! "_~ȓ<.\?6ЪτHJ x9|_"iAArhU@K5B,ݾ5_KYEG/H<lzg{hʖ#_] G?j":3 }r Y;k->PQ])*?J9cǮۋ>a\p0o1" 5큖[@zQknj/rq`oZWu@K|PΑTl*'ݡ} 꿭biٯ3I&fkz&ʵy^wX8tLf5 0k, ʚR@`Lxn`RëPĔ$˽~&N@ %Xiac(K Wpc:y&P#HfsH,3\+X B- 03-/Ƌx{lL8Yrd\&P7)jdhθ6C}ԁL}Km*"^0ܓ:z^PgE㰊ED^w irS9eT-\FisCMoVʙy>={3 bxH7Y#Ÿ+Gkss\'w]^VD,~{to9:GC "^I-(qt<%i0Gn;cٴ2`fLܨjNDOG4Vس2*9$ӽD!㙓Sj$ZBEԮ&U9fQ>fyM  Ww&SS0#:rT%t@y׀5:f;<#Yw%5VD%'aLZSYyO-WTL ԿNE0dM 46 gVz%P,E,˗ +uSk=˾=vŕ\fF` %iUe"m(Y:VوJ0GNBdjelKH7%F)qK@YK _7H‡|q%ǒ@IsY" =$*B =.@(퍼4 '9fv쑡E ?[, c;+PiAL_BZ#dHK=7 rS.VuSO;z]uwe^ Nxkn 5nHXjU6͒[=y6c }z\dXIh& ̈́\xwV5yLFo d-)Q!a$ÀH؎&jAKR{iE%q]f6sag5h O)G~6yF*1\m(ӐG6w6DarKEx?%roQq B#5t,@o P":iccT} BӓXn-!BA h~˩^5ΈYTV ſk}M5ZEb=,QyXHk>҉_Ƽ>(ЎƇiC`j&ƦdMyUu-S8vhG@E"ϯj{(TO]O~4SOn_v'xI OqI,-Hd%wa\ŕΟPлԃ<räzU],ũ:>@Hwʴ$ ;5in ZG ou hJ@JCʸUQDhy%o D:Ђ1) bi&m|t`n Ut"rThi<>,-"YS/Kվ\-jovg&+aVb/ W />_{>`? fn@r+ _jLs`~G0L;tImȆ騾4Rx׍O&ΌZfP[ $C0qIH3$+^-dQ(6J ^p \# l"c8wt"K tqI8jO/Kثy&MZa{0bE$);Z"Ys.Ѳ/vO'./-{]e+aKl_L@> 1J8[Hx=)y +:S/u/}~f A_\)FV^y*IUkU$*ڦ cJWxl$mяGppv@263'YJR r}Wh˖XB]Q1xʐ3g/;$-P;X|u;iɝέ4iߐ%o`1^5eeG2ttۚԢeޟdM .s/?moKWd)iz08:ϬRzҝ@A8b8IgPGܦ __vgq ؟Iw"Dܯ6eGPFTgNu>|RQ¸ϘiTZ@qiuVM8ɞH 긨[ N'A4lv " ETi3r9`m <» GS B0Px{߶q{Dl8^E۷_2m#K.Ptl*~gLm ;P\x!東ϗ^&nVi"~_6}0p}(.GY`/ !+- .R~L*"Uj#;^PH`^u Z0Iم:@% Na_w +Qd.w[h7{B\<:|5NHa'rߓ(y?p3v(`9mC%B,қ$m1f Ձ[{n͜TKTuz+pR$c~d*m5'z{$`?ާIU/EHƗ@DW4cBNupZ"j()yqonIQeٛ,%, +sM3ojmWs7[$ %?]ad |;m CKb>ybC5/[/56͑Ȕ}fDeL玓`֨^u \>BS62jv9igST$ N#$hfh>f^} .zmQ^'HW7nBl[uZBn9Tǿ5n>XFt>< H(Ꮰi5!#?BַR_"9RJ3A7җAI7-cUv ʹ:*}[qp9"B53a[ݜ;4㸷rPƻh{aP¶_]>^ACf;|7ungH zJ"!:W+F[I5e-p/REc^c$Ѧ SaȬCK1=%Gy/".yπdGKۮ;BRN79ujFuoxtǐeQrBر=p81o%SV"0ܕւ̍Ғ idx"xFr y wJCƷyKwN`wփ%p:$Nc/輫NP0:ݜljQEG0mwHGOF),ߑ֍ VvsoPPٿ!mPWj?s;kZql]bBt?FCz ~,y[(s!P-dNL@h_FOqC  {ev7)@tG{;pR0^bÕy4pȸ|/ۂմqpQׂ#b ^S~Y0j ULoIS۹{HຟNxr/*Pq,7eY#o%E]4Ww5ҊWΥ׊u9beK E!͏m$C̸An}s1OIb`=j?`O@q1\}UC,SkV:Ƶ90B"off?QT2詧g;"_zGȲ++5##䫛w{ɦi6Nэ7zO4+o-:4L!uN6` Pd4* ä<>FLltȐ]w~xJ$2X|q KQf=j恽cKl,z&8D [\\]:P":ꡐS ;!OG|_77 >k0ڐV-j'U6G飳}֣g p=˱+3Nqtr-#\x3@t<$s٫1y<)6Se >%Ka?޳ Uv+0D7l !r A<'/nC;ikc@ߒi)xoT-)!䅗Ev0/5Eʰ ,Ê]6(oOV_ήP3\Τ~.bp{iHe'|1'Ʋ;wOL ~cp誔Nڨ@|B}+B01>OpnxU V0wοo "( @Vtpќŗj]GG$gkHC<B?z[5*G^P6cߧצ,(-š3IBS[W EAZ \X2&k+0$` Ngr4?.\cA*A"gBfHP_y=5PXWuML&(9?&Rۃb@ىCK;0ޭhk&R}kBѷO f ͔2xH ␤l6X2-cV{8q깑a5/~ b.jsD۪}EtaCy/ieY.6"dӿk+DoKs!̀6 qc & ?2A+ kBqH`Fl5X$=fս\k#?Ks/4r|eLD Rpy;aԈDd#Efȸ B)S5(|L ˝mjF^i/г c$&ȴau+HT3{ )[^᳼C(!+}*hyGoI#q^+ed W"4/ T4AC[ёE[N%p]PTLj,#V ^#Y&k};×4x=>~Nn|Eĝt= RֲTq:.i-ZXujbbS>QK5RI̜ڶ3'c8X'#3 Zv_=( Kԟ(u];ə)'ld+ȼ7rM Q0a7a/bQuجjEi/ "`Lu =,Ө^rG=f[\b4MuL R3z~NkMtvS<a#Dg4d|pu.Gp|8>mx㌸6 )N5ctKKob^o7Lt^,Y{ a+LXi<^矏߯,gm(j}㩥~OA|AsMͲ9%߂_=լs@ M V&]},;vVL2"*OX#`׈ 4_liDa<"4.Q{CVsw:nryqgvLw޿z8Bl~0 K0o6s %6 B_y?K.ݢa &og<Ń{\Zip7`:tV"mtj3 xb, GOT\zzTm2'W> AH%rP X?lCUs]A<9@K=x*Ңz[؝q7ڽُN4 iRN\6Ljn}h$6pTA**D UmՓI[})0DR p;5@ns/ZHYQg4+ 0Idqct&v`6!UqذK&hpfE1H>e+"T:m2]3 2O2 è&]=<z["R@_;;@ mD3'}1F7z[5|㗵#ﻙbߓ{٥D7PqN7pA;Ia-Y(q*\[^8P< իa#bקX)^ a r[jJiԾZ"PT/K9^ގ.#ZKf‰is)<^(ul3 ,[fQ5PVb<:F`6W: YO(E7r@Y FtUۭ ˋ<4ҙ3O"Jdd.f. h3k ͻprW}dOs5} 0WPq6Q. =& bP Piɒc%R," ~j'#z{=$?ڡC.̙V.Oʶb5I9I@#ϢcUfmL[DSQ\e,/p.]~KsDߺc5{L7}u_یרݙY!uU}q{Y=, zՃk{~/y͘oL+ \8>}?:'#QoC@cZUĎ8Б,SEG98hWi\eDBFg~Ĕy2b=fl>[c6kϱbW6Zq.;t+ |cV)WuD&R3q!eIufkeoS1|U^4Pg"z\u*~o*iЍ!7t-'ͳS57eGJOXK Ģ%y %\4e)+#ۙ8Y~n8&99aDPKc_:̂ס .]D~èz$(ԯwMt"TtF'K>u\~G[Vڝ*ȽYķ5ȡh^dt_Fv`K%-3,sEZYL)V$50j(q י/X3q%[꽢4v[@w?+/ i|xm (ӆmcCJ|d0 Jp?pK\5n3eYZ`8o q˕(+XZO `eD2xK[h2QmD6ҊꖐY}|"1X&VilbeG@^{n?F^:t(GtqL[f`ꚢdaB })B/uw<8 iYSQnN37A Pnr_ :__D)g.}@jx1/z=van{e KCg<`*ȽA `8ʑJn'gY:R[OVggU,gOw͟_ 59So4dNS> O 6^evFׇNp>}9cw{ɕsӍ!"ϝqDzz!Sw3D1rͩPXU/eڶy\6],xcS0$(JrYйBx$QM6(Ti;_yQ" ./3DEu~Iy&6gG.Om5\>6,I9ڔE MSd.2C{C(P^ndZAJ*>E+{.AeL.XC3Wzy(o)FC? NV;)Ui6вДt+5̈de(O{,ڮ煢YDH4mo, jQ\6QF FQ|(xk=cYi66_;?ƹ|feܝ>\N%U2;ƅ#<'ݲ1ltAs5~W%T~Nby*Lw[g8$Ssq/t9NWʡm`)1ڄn)yzVu͗K"PI6r|OUҤ snAΠ)Ѯr}3y≓*2(#K 0!= VR@5HB32`_#vMZy:XtiTu sJF]K\\Ϛ9 MұFG|ƻ,8 k+Gu<зG^yL뭵jF'v6. 3H2%}tsk!n8Þ3OoSV-| 6)T4/ ]4Z?*KkK~FHV@&uf 1UCM#>rhE?Q+įFL5)VcT/f8hc(eIhZ1rt2;Hk}ҝۓPW aqd;p=t"o_MѦvgwjR[! 6a0ftAiq=7Kc4e 5Xi|V0K%嶹ݦT?}oM^jָ.Jޛ-z տ '\sԂ e h0 y{gt"Dب@'~W u~ ibSzw(%,OF6=gcLVs-:"B@n1.T,-x*O={8Mbd'm )nԺ._Qo>>i 2 |dD>sclp;kNfC:]!Nsb{GS|5aJ|OCUB/MG:dF4;ĝ2&.%kqTהh#)-lcz0uNNx%#ݐ"7Ef&`Z VX2XRX xPyQGPZPٮG 9~?CD,FV*$R1yJg}H>|󼷋̛\{xxѾҒ-N^-_[ Ky5|uiJ0-1;Q7h5 ]EUdeIU9F!q 먥3|)XFX<߽jѐcD5wO0 \x'E y`2⟆ijRo8')HJn܍-O+a0ɽ>S&W:78c*Qf '8Fu{ t~0\/͚٭XXNdP,pU$W7ѫ ݱ/~/YKoOAlrN~Ddd~,GyI~ȲgDIעv·9@[1AUBTSo}D"Z{X;Қ(æf9}+`dn2x>l l8BhshK4<+`bO|(HA2m⚷SE$yD8w8m }UVONU{čՑU~4-U7ͪgE3N0il8-7&ĜB ARYzM ޡb7ZZce0,}o$, MgGF@ФF I3%#OĘ}1&pi(k씝{6B< ]/gWnp{@F:mPj3ӝxx)EuKuAc,,9:{^um&4 rz|#sh{oWw] lT[C$F5&k.~l RISSFFϓgiwb7k…cجٗv]E#,C`qI׃mY&爴֛EtCX] _R^rZ~֌P-ۑ'`źd>'E <ਕ>mԈۙmpLHr>sQs)eqbJ)&u#7erwA :ù+hNQ~Brc$m˥Wc8 B>O/$Ԏi;.77ؕik]xR#wuUcȏ4**:dF)v1Wg&3<c<+ OI;01XLoVScg('N}r<} -c0jkVqV4a!zcEX0O2>W\yB j,&D uvk/z-~xC~C̀4@~ځ{yǍR&otgC`LkAE>KcmYw瑍(0֨9YdŽП!Bhw)r| X@=mbq`>7%^;;^5eU91=FFqѢ  ZwW;ZJ1sM.. ;!oAKZCUO'Y|Ȁ7-QD\T-iIfC v4$$ |t䞮]j4 shAoJ ~4%}y) >X ZPˏSŜ>Ǽd7ͬ7놮YHU%*a×pS59}MmY}wK5-K##Jg \r\q/sC$]srgh],-N (aUjӖ~&̶>O1vv(h/-{ї5(rCqWI իQ=Pf 90,$\ʩEWĤ>6~Y;\ruj*ݺIN3KՖ$ɫT7=^>notr9/s2'#qjdσoL?@^Rѧ%c êavV_mLD^j7 3E˼nza@?Hn9m2=9?LM\"F0Ky/D1EP#Uf4$%| pA!Ir7K6bʢzǰT6k||F󵡑7 I (4p:E$L7 j/hCi<R%۵^7Ƹ֣P^8-BG*}r)72':H&+-S<^+YD@AdZ̠")jVrj}DJs*ΘŽMsJ&Bw(V y]~ېZT&f⺇CH?m_㠅֠5u/47o@9|s#ar)ZOϝLJ_+.r& >BՂν"ZPܼ#FivxcuF@O}Uv?Q5E)I9jw!56E;/f>`o&#G {KIȨF,{GE֏8Y'J,O^@0:1x˲' ll C`F+X)Kܨm̍iRC/= ~4|U&v]?pbh/¥}۩ ut7gh&fL}ќnQ?2}qf1gd@=1{8.F߳~Hvvlg{^(źR|^=?%,"N)#ʯ8uXx`#(JP|ᝄG'q1k*X~smt!MbNLڿ!~D{X|n;3-Fb׸ybKtvne.omҾ7_/0F|ӄ36fG)jwU쟠 _:(%,g;_MrUH3K)D*P>,j@#6{;to:v4AEsDia>挆wa)"~q(rs7sJN]x!bdi",hx$Y66ϋ9G]-. #W)`-(i{{?E֞ed9r Ӥg|aIb$Cjƕ%.rtA\tY؃0(5RaP3ͨ2 ߆],w58 3ߺQ!-*bJDwVWb/z }d#~w Uۛ14;9 SwBErzPHV[\Q+RIhM%^qHXcf{=_kyXqX]/2 EM[i-79-<B+ Dž(,ԕ6183Dž_=N6#7ī<,R'BDT>FYSήv±?oޢ6"y0㿍3}L) [PR`a55ƾ?bClN* &띶fxa=HAcgM.5j8جk(,?)Fkַ9J-fs[ST+S*P ﱷ`׬ fV؟ w;=thm T]07RI'DB*:-*A6D8 5M )"ýr rWQ=w_^V:J[ P}/a*q͋ ^B)0t{B(o)g%%R n/x#? ]E  WrXkXuK\c^wYv& 906IO }K=u{]ɾߋ:*yTl^=iΨJ2SThA7֙7j<-bYC@34sg4-lǐNwqγ8j'Z}yBp@nTQE͘+ J{] ~/X@W10Ub#h:C s5Ԁ= _kV("y;ӨS R&DɞGY7qP]%Fh|g2μ/ҿюl)*tr!5#WnF:Zr/v= Hگ, E(kA-!, YװF^ .WOZ'+S&@gLh G_AQL5wt;揙 1Ĺ 01fcr :?ˁĄS?;wjxQS'SwVYnHԨ E+IsrF 4-ּͅUcFӕ4-RŭG%4V@v坐.n,Y:.;%>}LM%bv1D<Ġ 3{R=@lt^PМ<NDHBې%1%JxRlb3tZ@ x'D[&M +w?~Ne 䛾śaz[kTW zt<&f}RR庢ԊIz6BNR>H ueȞz Бt<#o.ְHk&2G s 3N&k0b$q˻/14)r}P a4 cm`rmĽS/Xl=.t!Xa 3{# ȝ6a^ 6Z4blx lP9|\Նb קo Z_D{<DCt -\(!hΰ`hONr: X ͠Γ "q._"7QZe*D'"Ou賈ˣoe "5 ek[ʘ-?,25BqQ 91٦sf! 3yteMj{FSz(wcP;eȓ{%5>T7w(Tk琗KlZ_%u谙[ vӗh2&gM݁px1i~֧(e+W6"୻0`BZ&[;e /[7jU, 2gk+o]4U5@fR'ۗN(׸ f-q>уo:z*]eć5#.XKJa>Nc1ᷯ-ÝIAG!>5_Sq7Ӽ!f^׼teXPg^@QJ@lVǽWop!:?g AhM,z,iG^GGtQKcqf4#USF*@Uy ..hST5tr9vd[q>:{-'~jξZefriWC&~En3ijMwB4HI〆@)NpDG Ȥq {ZzîֵUZw̪ˮkN]QuBX d2W1Oδx.峈 u0Gheu6> q4`FD]?U}.l)# ı^ÇaDOIΜ;{#bc њ'h ;~C XvEI`zvOb!sV۪eoOKJ| y|.ebôpD$ŚQPunzRXd՜A5SK JYB^OAUt1'8QYpI' "kt )cjưDANwAw1ї/=h`-/hTM@eIߴ771_0Ǡ~؉voN;o> }k!g; pW.EȌҔ VRۜ,/3´hꂶ9ǑOtVD9|evBP":֩Z47vs OLY0ƙZ1Í"YXؚunքW ͍kl,N,YO +{d݇t/m{B;>@jB'.', 17nc+wN6v}0Z.Zg]oM]3o1 @ O~ɈBxN颚A6B?!4deu!R3'_(ɮ`q rp#^,s U^'BY5`;v}⥑H>RuQP79'$kHNokZ4VL}*ҸQ/CՈjC68ý~}4/c#fոC%o+?PN1.R8vuLv JwLU@)9`١:ڦ~)t׶RR+9Z7 +}<'%|z+T o*h ,*Oc̈́yL1riEM  ^2Ra\6Ll&ߗOȦ3H=~=%W=f0HݲNxñkԓD/4?=4\ZV:X?Q?3uYC Î;XBGTf=Eu Hi1昞YT#H~n8,%a"#r2L@A%t &= wܴhu|8rqֈ.>m ʡ*ZڈO|#w,&My섌3aW 5X|$+wL.[;4n\3NlTUr?Y*kZw4Vq1zP|ϕD%m-l]jxj;dl T0:N‘kiq\ 8 +oaHF2p/GUyBl=3P6Hԋ<@[ Uw/Nt'_ٕ'&:,8Wv 0t$fzִ?#,l.X28Hm@%]FZz74^>4+j6rΥb-O*Ls1RlД}N^|^OBL\^^u8ۈKq.6IPz ](Gn5tVypc60#W8'Qb]TP:Ƴna :6G?y4m{ mM;}LuzX.yWQ?\!z{]ġ, ]j\CɳpUOX0#c *DWl>qTIVNf PWpmĦGvFQ.<34U&̤: 33wLs/+KIv7=Ha稜<Nt?7 r5ڕ˖>٧f,LS{C12뽕Q*b7jrc)]MӀHf{%@ĥbx)#G$>>i4}Er?Ÿe "LB%FBlI)*Ô= 4ˌLi: Pb# 'DFd./ *ՋFʛ2GG%PrA;h5;2{ ԅu",lEt_Ju Ծj(C4!R,Qq,*.^ql}KGڍIO比ܛq$酠^wFR Hqζ~!t?lVX$tLwb a}ԏtx5*(#&-^ 2T*`S)e(+ǃW3jU:*dqzBC4腥g)$G6̘sx^°c3*Դ^,ig-9Yy]rm'4!nV1#-l.1<*⟑9D~u޿uN16!6_r{ xC[=POZ5wug-=BegP,8s~{K0#B*4>SŔQ"{<̌`t>ěn`^E>P?$sNm9E2cb +Ex: -H;\dzV.пAaTpu}(+iysΌfӬe hN ;p,VQZ^%^HR^N^fںy~~s!y`:)$ wanu"6aDpv<#eR;"" 9T,ʌ( <<6Y)N}>6)X)P:G,|zeX=mTFj(اr6l&O}i 桬߄!D&`2tz]P YDþhocu;4jirOD֬/yXžtaa@1lFCTqO?7Q95VLKz˒Sȝmn+}hۃR Kj)x-\d':Ms0C4R }QLu)3ܳ@3Px\kIR+mP !xaGrM'`ח`$/\˔\\N0}71V56`vM?ZNT#>5tIؓ^ŗ#kc7] uQ+xop[ClUwq(]$)_;)zTx֒('J%[hԀg6p~{Dw5,eˮ@Pbu%4חZN"`}ZMD:7?XJe] jaG$<C:yfEDp}L9}p* eQX ]WkDe]QěOX7K"H-ѤjLh,`rŃ]^[Lʈ2i}LOpc\jkr3Fcȓữx/66+Vqv} 9[Pί#1ƾ /H/niy@=P좠= prouszjl>!ė?I.{to,ǀ%DU"T5L/(Sk!y^B+voG5o| ?xξ|'&h棂CeՁ$@aZ%VeAK#(Rh0rŔH\Kc-E\/ƒ?@K"v>DatځPjh%9ь͉ 5C?|RyG"Sp{qU5=~쾤Ol6Xr"spoUZMȞA#UG%g4ŔiтEI(3%&A\Ɵrnu#GH?H*սˆ}ES#w<83LTBʸ7> *<;w'suFn:O7a m.CzuCZ9^2#oh>da~{hjxC sx+ @ģ"gƛ4˷?ߚJ#=M4,UG줖e}^q}t.PLSi hl:mvR\=7 @uRR [0ahes!k65ЌrDw4 ֎ڞ콤RM E i+[#f:3qͦvpjww{N" D!G.9*Ìޝ"\;́AcUhfOoQ}t}R14(-XwIPM& 8#ϺI ݡY1MY#w` K΍PzzYՋm-$HZZu3z1ͺ.׀t%p/msTDa"/raHXQ'wG9fAS[>( 7vV^B|,j &Iz$-ON,y*=e1-Ifdӿ5^I>6a24xeEleB<|!m|b֢v@j5kϥ+J}󠒋o\"yHLd !8_!^ZkڮY* ^a"Ia?[\yi̲f s}K4}Ld.֛נ[vkM41Oo\: v#܃RTPue#-V16 QvP._T4-$rV3J1))ߨr'䏦*ieS튝y,#TUv.hUT?w*@.`UpX N{ -1[yvLLA~7 ԶLBĞ7Ú\T8FdyJitO-9:Tn]fccnA@H㤘1w5K&~eB?_ ex?`͕p(aIGZAF,&:d@((r+𵫄(mU@5%/>pur}FW\@hZ+NJA> 8e֐C&CmKMnI-9^3v uw#֕ڦ,/~3MBgWĉn ؑh4nCm{U7"ЛMazs)f8rd$FB O;,]fdYKj"ܩAmmEVdz^2A--%:ar-R> mW_W"QɺpH+ʪ #}'n!{=`m0= h<Rmr0::8c7P]2}K +.9uΪ4uO/a"ҨܨX:U.:IB:#VHXtq\.l/|MWe$7zJ0~V}{(^ >%ĔIҪ ˑ! ,qԥGwJi3jW,/CH8dϔY*xNa֧'V%G'3A#ui&( # >\F+ ^V#,Mms;UBYEz؁7cIGҨwK*>rbQ2n1Bmϲn5?}zD!O"Z+7Mk$.a :J x =Hw >3NloR\xyphʊiO" s9GBJqښH kNU,>h)Pa=@Xl^Ҝ}B""Z~FuF`?ȢDu(3L1ɡnv NZ c44Ly}C4-d `#J 2%| #.݂HZ'zS.ˁ@}(EOA r{TR5*fҋo9Q0g@25 }37m]!=dE޳j=Yg g1uwq?MvZ?D $ |%z2RʿP2b91 㠉YP\)+)_Z!v߯ddpqT,4yZh4&KZڜͣzY_7T-̂xNu Be6䄪 S_觨ʑ[=4*⊭!pr%,,}L0#\V- Ï.dOtsXat kA;,PB8zg,X( 0ǁ(L2-kmi'k6|t2/@4|P.Um=\Xkmj%*DLVMB:Rg)sD%U7v 3Ffh"J3؃nkS cǻ )g>{5Y^lp 8}Xj;^J|E2|gĒ(ք` F=+X:֟҂v MDYX wz973Լ0zYBJڪ,m9 ׮)+!귄Z4g{8a8D[m!pvmN]j7lέOW#0W2  az~a+EqԦlY"j ۚ}K|;ƺqmO4TǬk=ꉿ9@ ȟ:Vs.ԛ% :t|Csm>WzmpkA?P6x9!}U蜌 xQ!ö!*9͵!SQcQR[HI`q=n e' ݈klZI}̣̘g bZtI.TS!Ś{{͐rV$ٌ`1~ExO?wSMy#-LOX#j %" b(q6:N[}UdI8I1ߡU>D+uoq/#FUz<P'^MTg(i5[J痘L;/5b~& g GL`' ^?!?f1jML_V^~gsۘOPߠt8!3( 7{P%$l p6a|rn9PI8o59^4TFBy8+RVQ<w8bfL6':Q? (h6;V$TI }O)_7ttCOl aE C^EBSUy`&sp=z"xz!b~{v>& icrjf{'Z{Ɔ Y=XC Swa/I 3A({݆RdV;zc5U]A!nD.2x+V|TݐNPo)gBN)M<e7TIԕ.E*)&p@h8¹c5;H|['BzFFPYHg{~RdT~pL ~\K(N(.Gաk QAyE^pƎ{(*p\V4-)`<~iE%B,MvXi[$ϢQ~oW1P-T\NBBq;Y>^9 qߡ]n=;n ,ԪN'QDvf0 vQj]%ehPǭTh X1*+kyoXttUʭEf(d &߾kիjet51lG6D"> W򙽑 |~(ׅ#0KEQ#6=_‡-)sIB55hň-B)g ՖʭY߳ 3r<="iSf&fuhgb !slo/+EiL̰ߟ(aNE8;XjAg[hFDz1;^qڗ ˣɡ {hLTF鋗FMgѰKHdM]e2Z*?ZǯffÝl &L}.8:"touZ~@lP o:bQXퟆO+<Ql=n_Tjg4 g4VA C6ėHKm#QI~O .:&8=X6']v2rӊϸPRK47szl+w͘dzb? S~|qwϜ(xj)J,[tT==ǃF% yQ>W2auQ|O TmCfQf`GVuSg%qIE9wX> 9-I"T4 7CxʹaB#瑈A(`DZZW ͬ[xS`cA:QXܬN'uI]pZA&\|cXv_|\` U[P`g>ɨ;CIhUP_BFQ|zyEud3z `sPO<ܾ子sMd|mbJ3 >sأbUI8:lʙnJu:!Nh3`OT#ӗ™fԍFn+&n}qx'P!<S(YG&sҊX9e2z6k!91LL;$0lYQ:/` ~,5T~P*^iauO'ȳn Bm(8M ŒEXWU@ /Ya6;}pb"$ ibs /Wv"8ь+dtЁM@*tԭXuG?)-iɗEq| [JHi!w"GC1I{uEUY-̂{,\UT̲QyہE`hʀ+~Lس59LRǽTVO`,2MF1COQl:o*w-~<&4IB?1'Bl\f"cF=d bQ̤B5+F9x/̶itXœd6GhJH=sU. }K9bzsp-.A(m!x w)V6+9pN C<VHk➄΍蘋mu4 р!Ate-0_sQa 9vMyvBS3nuRۘA)z}Q+r**/j10Y}BzkZbî(|wr^2=ΗXƝHZ|vafjDʟ@犹He'aWA|Yq>Y!y7msWXt].фqtxsE05S!Ioc-N$|i/s{L:e '`Ÿ T"L6Oi (J4<Oˢ2hs%j*[ [рiՒI/i4iaԟLr ׈`Ӣ)hd[$R"Ρyd@'EH(w`3|m*,"5fL5IɧYа+|tc.CHvUy""Q]䮩 =C#75{kKNy*f>!|JhndAUFM_gڽGYBTkwC3ق.q0Rߖ1~D]5Co! rںS`( dHf+n%N4x{4R=+LBy G,dU2-YZt{0H9'ELĶnpɌOg?ۛL)lU`xE9㫲Hi m-#\kT ~D+Ep4`<Z @bBa cпy! lRF6zxhg8ĝX)+`d?7C48b%vNe54pr4Nk{5d'h`D- Ln`'Dh1~VA0Cn4좴a\O 3{;xCiC=S68jv%X6N".L:ͥ!K:yF/bt @>˞0C|r`i}9<#f*K|ا$rdBۦƢD{%!mp'ևenڬl-N>ڝլ IaGww.,A"˒1~T|#&(Q5f{I&i"p!r]aBᄦlxw׿Ȕr3l争w9-ICo{2Am_;@Td<ЌOb:ŲSxxtΈ cڨ80K*N=>k^dly;)E32{Emq9 hwC_:*QzsFÝtHq|qVgPj*B>% )NXH8}U:gd/gķ_BSUR{.+GBX,^mhDI7-9 Wj=EoujdӞRp3dP瘳M|)`:Ƥo f Xܴ-X' K܂4`,d{ 3 4'I'|t+%'pGdX(X>_/ FwO 0KF$EWj:mb{ UvL[#VI ^n6oI稴thHs+<2Exn|8ǀ .c)XtmC(S0%45.KFeic3)|J2b1wp FW]m$Xe>\ ET:f'G*xeP3B Zư*Ɲg FF\e|sc)8{¡)0|.þ_9su1'2](/Wpx|QL|Sk46^ nk|Md/w [.^ZS~U{l7.wr`;jl b @o&m"t=$o"(:Bva{ Wm4#QP͐!RKh檲TX# =L7Gf,ȕtA|~(p(nإ-T 'EkٙoS;Y8svm5܎\쓍s&` UFX&WY`_#|iGi(9ҝ!hXlQQ:*d =xQnfN魄1/ɹ֞(Dw8IIhS,~$ SA~z=ʛX$41 x̳/j HLTY'q=؇AU~YmCH扏⮶Lz8HAAB[3e8 aaDeq?hJzH6K*QFAW(SUT~S}kh&)Dh~3<]Vq`U 5 69#Y@!0ISh"H+R9bE ui&X۳(؈gqD6rqp漱ȴu3ZM棹@c( 6KWuUbD$ 5'E(#U\lNɨ/݋=E*$,;$~*vVB 1ž?Yl^Z̮GG{>)e q)99$+;x\]ܕmK -dU^)TxΰʟMH3L?ٵ<-yLH_DsAD A[D7+NhǹXf? /%OOI~<l|U'BurXJ#j7DHȿdUGH^R\T +}׹,g,}ן5J[T-m\l{ǣYy~ o*~ A>HSI :m a5fnRԌHlc_ٴDIBoTOeY:zGQWpB4zxt;fJ<[* 8դpen-:"Aib RD`͙Rd'|2rDe9@ě\֥TZ EwuzmEj=u(CV{sTNq6z/%Ampqwp$% @!{o\M hv-EQ{MTVUpNxKHARy]IW/eZ*ڢ}3.,HeqE{x&m@YnJ8Bx 9n,5G@D*[?![_Ǚy{ y(:n2REeRavqWEX`] {CC`!UؓMuЋY^.R'w'=(;7Fj 5 $1?QoLW}"ga;F:Z:ERA"36Y-cɓ}ɷ҈KZT& zQUJӸFW?q&ÞliT>E{ ~kiYLw>Nᆱ0VKPE)#JCWrD2z[ۭJ`EhkQ)OVN !yѿNX'&HYF3т-đ @]FHYY%rCsgtGޑ{s(Bh3(˯[~'u7$^@gfV1ABd0zUڵ61~F^7Ow)5_h'1Oaȣ_r|.=Kbx.!(c祺wK1%PmP+6u2wZul"-+94R2Ҫ'5ڎ [ λ}hHKl8%^psƖas j rPS1xn{c'-D\ wugrfK|ĎfbJP65YѿMzis0qT7\cA0Ja msrd"d  jXyrTV 1r"T~~:F&mHrFB5tg*0k}"v؞D `T6 uT4([㺥PqEoU?5%Co="2Fn7լiMh2*4z0ѸQxcpAl)$= igͣ jU(ky!=/ 1rzX$Ռnk,GM.Z࿀l4`[u=ݡSuPO̞JTڵx U¤Z'V8ڻ2W9]L *`7{ȏ;ª-Jjb.(E /Nܩo_I"g)@_ l2[!(O@ps9ĻktE1[Pyۮ/cyH/u5>U:6" KE95y7IAo-?u0w3SnL -U8জ=~ R,bf8mKtX'3`1T7Z1]Ykzzⓢ:;g7:V[/CwhK3*Ků9~Wh员qa*UE7iX;hI(Pa. > K:ݠdN]&˰܂V S4%Lw5;soQ5=WM#"ۧs\B<\hJ^Y[wg}G0lz"E]D;1/EZAT-~ Q|xGHDt}cT-GMuĶ26GݕprIT#]#"M]_Wb@Ɛ&+4Ei \ OvrD7Zg5. wiْ:ZT!q/,5B؉B"nG^OojD .]=Yg~tv%4.V9kC:98/~w&Fp tr8wlCy虞.}*lҕ'Pq0<"nl+mvGuU`Щ U ,E7:jEQW|2aՔvjj]є!Ij:5ޘx1~ bSuO:3:Wn046d983}0]ia2]CoL163oiLhqQ4 Mȓό.*4$c?\@zCq/- V(䳲s6 `2}(DIRf+HS%1i@\ *eT ֍ L[f0ԶrF;͑8`<-c,[6ߡyJvȜ]ă3?bLI?>.>2x+eW> 7.lM`A2y2jZW=f=nϾ|G_H]m MCm`fآa94L[b~~Gk: ")[,u^#+@sau}Oc7kshs\T>*|ߦ}P7WHlT{nƕj\Y*=`G22 ۪H9!W`{> 5u1?8+ 3N'T9ciZ|-ps *|oa4sH1es< 7:Uҫ+ hrPeеSښ-Hu8q֪6QJ;XG2 0iKB2fĒldA썜?LT0j&5ʥ|nlZ/NuVPJrXnr>jC k/" LkP3}uFyH{/<{Cꄆ;ЧrZ‰W)lxL.έH*,q7|Q 1 XL5Vvmsjq.fmm+O*u|A|HR­c@l 6 Ыώq=p=T47kV&8uI)$*g: xIVRaŠ9^8+tc@H h+DJSqټ_|6O{GȰ~#M T\0&$/ ̹$ >t@vfABK{żo9$5ct,Sf3Fo$^[׫o4UŭеG.1'WXrSV~Rl:fUhA愂qMJ= AL(Q 9i]w{ J[rP@ްp3e), w۝=TerAs54pƤ6.BNژc@~/* g㌴\(מ:qm۟@.n}E$Lfۘ&ЭҜvo`3hː@wlФ}T<2k%T&Y=r,ف|^4J$oa[< hsi4~&bgΠuJ|RW۸>`Fnɗqɡee1SwdCG$'n]bMRTT;̌Q-%j1?>l9bp6넞W▭d/U9iB`\]5u|@aHQo󬌤sH9)֠V/^RVr42'$xWK&0j-lW} o :{8 (1β0m`CqCM Go*w;tS@fV='V +ɂ.5,[TgIx;*H5b(zWO_/;*!(g?7Tt1*>)i,ûkSQI">d]qϬY$ٌ6XzRijڿyU\XM:A/XD1YP08 VP*Z0\&jIʾ5;,ϯG0\w"ʚ&w/î w9s-G ㆈ4jqǪo,cEZF2)Pźq$J a: |1&K}/">'IϐSR`ďJG8׸aLLS;kTouKuѠrg`s(u(I)3%HRFK}^9ȷPQ$VDp,^51fՋ3ZϺZ+_5&ݠ H;y(&6Ie7~tD};šl! |S2mZu c›!ڦFkirB={6nY3/(.Ⱥa&,lfr"RF9Ay-J㇓WZ =RDjޫ~r8=n!Qz'szrkzHgG9/NCFS+ AV/ybIVyV~ŦYopo5B)Q,.8Zt憸ﲧl{ӂpPǽ,G,碈9SwO(I{ڴa%cr>Qej'A:R%Ҍ#.n)2YN/h֥ %8C}UtRC exF\OW(,<-hoˈ+Q u',;A7n!_&^~&8x>:a׃&ꯞ] 1=28?S#abѣNv,8x&3Կ8YՊFb!TV@gq*x]GFW>lɣj8 PrA'(+ɯD9ݽr{2P$Y (Tb9}Q2~K/(Jsפϥϧ2ovxJ]tYyw:<^VY04QC{58 F %;j:1Q?U<=F^2SN(m2䐒Gmʀ#maEsG3"u.;Nɝk_L:*f r3C 1;S-J48jSOU`vF&V{QuwI:D7!GL젿 ƫ2rkv itpāVP2_+0G]QMo&4*u}~K55ѭvri/37η⹁@ݰmɇ(Ϝ]OOOq/rܧ_]$lڳuSךu=vI1!T!G' 䌬)OTBMd4jnD0w(ƓА0m/E}8l}0z2$l'ՈnS ź TPiHrp^luhB4,UUB܎@4cY\jQxm|ԋn&)?XݔO}f:?t$r]L}˻u+S!TgMͱ&M0rF`,nJBLb" rPt%'PmF n0>-yr[Ub0HVK@?IL< 'C}{I2MRpe^ȄRʢ9$j`dfeE]ׁ9n4d, [&l)w%Cx r# 3Vd@Rxi-5,Jw+duBZ[v="ږR[#6'R_L“r}n{) 5MԣJ>@PxX?q GGq01w*FH狌IHu⍘`*a 3x Hk{"4H7F膇M9׼6ЕpuyE{~qG(rwʡl8uʌ&@E=iiEe%+x";!L.ޮ\i U51GIk4R/\jH(d$B@%SIx#{mA]ÈO`YƔ ?t5'L6pUl+]wNqȍy- LQeqOÝx#lB>hX. ԏd\Ha5?2\T9] O?*Ivfb(JBߥW%Vf(UѓXqKU\MZ:"MbZ]$`шL Y-w=D8wv[6RugcIF$-xsmfFIza A'!$h KЀ=5p QR&%:pRVO A(/x&5 $j뭊^zOIG5ӫ VFŨ<<(,ܒjX׎b蹂)M?&,cbOHY*3nDjGK?Ĝ9ޑ@~iI>9( )Ї;7&{2D`lȢu4;,i#tű_3 khj4K?9tjE7}̔ eԲ췅Lʎ7-Qbw,dKEe\ a~XioɞSj|  fSNs/y@4L@XpQl^f6}țc0 YGQ{(<~39niq;$sE{!$!a4Ɋ.!g[vVI|5ȅga`VƂڈqCG?3*tR~@@,V1:4zF>y46#=\r](sP"h'[H(+124E "0^{="0} ¨+ɖV@IB6' ez?!6 3L߽Ro(HFQE8);c.J*=fVvii8$?bs iCT׮#~ Xv)Ru/5Fn˂2O):g ¹%䘳Dzrˑڏ_<@lwлv:)G7Hdj<@| ɂS`y䔔tHWP>mi8Y`6㈭罴P/LAB TJWkpUuSk%~Ul*4bØw5!&{ͫfߤxEL!a$qu**^dBil g)Z6I9hoɜ{p)d㴇ǻHw FOn7cBѹdž vUv02cvw1.3Lp?osϋ<idQMt*Zr:;Y_j4 nvd 4г TμX p# H-8g \'_w7sSMSHMk#8 BD$2ar^B"7ChDl13dLl J'URCdehF͔ToZ QNxmYPF E D)*y.ME!$cUG4!\UT-e/[,hb`Aeˢ@*M>ѹEP814/3 3RoQnڑ>1\ED !Υaxw 4qܿj_mLѹع̈́^D-Yi?oXX]2g%)M]- JUB"۹x:2]w&Z2ٿ7߼@0fĹX:D*vKL%"c\ ҲCq)+Mw@;ցߔiFa<ɏw4yЅ# {i׺VYTbQqF)+T[M sW߀=ϦQ!:v;!^⳱"Z|2&75,FX(=\F(Xjta{X6 Ɛ5]6<~cv4)leT&LNWԨs{|@& B8 춴BPޛ6lDQ(5̧ց%Gй> 0`aHɞN2 ";N622ZN5&<҇|A8s<|#U lW,Q=˛H*ciʼP= 3+1nOǠyBAwns"[FrMtӨX&7 ŤE>EctUòf#`ՀVHsMhFnH"1&K`ͤ?A μSĝ7ay5fF2ih(Tq\`2';^68q![=T|@@8\^ZfD8gF'~n] oPv5q&C&gz$Ǒ"+z, @Ou SD*aYo&p3h2&VW-K-HܷgZ>~=GϧMg /cFhC왏o Lcru"4먯QY5Kfݹİ0 s tl 0efH#;HƄ0載8eu&Q 8evckuɿjo7ʋ ,D@mdF.b҃eX:j :x[a:Xw7qu' ژg $r% I>_mk.ssG4,kib$xa:}2t]q#>zW`TMJ=8z٢ԥ!BƂ)_DXe$쾔xB}\VKtO">\.zV% 4"bk5Xl)\wH Ad+ĸxĀs fvR/y,4b5I0{/[{+<]T 읅l[a2C$Rj?arltU=ifۛᙀ£5$ƶdx!|5&[9Qe H)CPQЙ EBb^<ԿСgoUh-cYJ/p4D[j5 Ys?= 9ce"JaNM|]'Q6h5#s;wZ/>(Bۨ`V5 "ˊ.Ǡyp.D%ƁczIH@_ء4=3bݰ\xf+TЄ]'DLd Ӟ`_b]@l;ySǯL6vOPau /9f^R\oD+8 VhY4\5ڹ C.t \bWx1b7X+Q45A^ޤ`8f2c|cŔ+ yC>^kȹ΄Ր{$ H=|H`*OMNNT+܍W1 1ȜH /EPGr5hPHU(΂H 6|} +k`bnB l%ex:޽zM E?[!߆PoZmt5ST Jؘjɺ+˗ mŽ? i MnʰH9bx u78ъ`Rg2Һ_aR*O5!J[z!T-2#Aj)xO ])9@|(W+ BvRb $hL9) +ZVi]ҚS)ob,`Ȃ1$evD;`Y5fuFC6ԐY9R/sljMom>+ e<gD?-ƿ6XKxygKm|}qWN5XB*YyHސ gGl ǏDZcLc+X`*rGR)-Jus(hF/GdnN}@C .װ}DW5cXS/6t- M i]`0? @5R;),%wߋNÂy Ԍ(h*oLC+5%Ʃ3>=5?#fJ=NJPYw cQ5|_P!.H8XGq@dMD8GG6$Ai0l*{Fc78R笝6vvL(rś}dPcq,AUp4,/䶬:%+6HEj&F8+mz.B /zx,7ϯCq/VS^-F=ˣDѱѧ$7*?H HqF&j`ͬͨW Y ?7l+>,Cpm`g}cfU wc!b!g:+^L텀$.d+sM9̼'"x !vuܪWUgfWvA~=G-3' oA}Zn+s8mhiRW Un2xJ0qnP]?7JǍH )Us@90^YMRxnJ| -TMUVHQ)[x2E~t oK1HezLnzv{=k=L-"{Hkԗ7fWc95QX^`ԂUXC?[ )iգ- 2`l8/VA|]k_0GoufC IL[ ~~&̫u"Wq-)#JSՠSp"|ٞn"sq qIuw=`36}2{|YTP/㸞|x =v/]. ,8 mgr]ur19UfCl/l5KDeAzeQ6$TpyA(r-E&++~x)Go>m^y Pu*O EFX:0s^NU NَBЕ퐲L%% tQTep^_T=reeʴ9V"~x\e9?.5Ci'Iu؇9JRX5pˁa~?4tx9p.Լj[7>Oq'B̴,5(N_jIBOfn{Я8,OhPZ\f`dFVq} {4^MvIu뫋­K:b85K[:h |qLPj#'"A ) M{UuU:lA78^T&1YL,N8]R^%fqWKn0*^WOݝF$"$áDjiX\P$Wd}<)A2q"(cHi4ka-I##H,M;Q7i6k? ^LN,QVmfAϙ dVo> K4FBЦ1(/P Mdڴӳ0,r-D_Y(G-YL ԲxŶ}6:i-hBc=bdB.󧳞%.- biqEmq%zVCަiJ~CF_f؊2(|-Mec({*{J s*mYMN!Yh%; +iE( NBZp\ğ IiKubĘOyRjF.N__ Rq_ޭ/2pR'?7wx1gk!> e{yjn}5ڦpnwԢ,P'#}yZ|"݆urToja{+)TNXS*U!q~‘q0midۯQonǤZ<[QWr&+mm&]c/^y*dWhK; ?$4 Fg;–]!|gڀZ̔^~³%Z ܐ))!l2 +g$>mzF* )aG.I2f8KX:d]ɱtfm-]N(bmSU͠jGeC|̞*! ɘbZL47狶H;'X*^5L'䱨j'f!m) y,Wro,ΏME'? WNզB5( bwbuNQ`2J6{!NbaG ?h՚gb<~t kǺ]P'f;rh nu"{$M>?&Kll`^[\U=i= Aԟ E!ݶI)!f:YICZNb1`F&=!}[.;%8: A9 K)'#D%0ȭ^ $2ZKL-Hb\f TF _GRBvfk znDMD'ݻ*T7Ͼ\:aR-ʞπKv7l)+RJV.؛&_ʛ!#IQ᧒/i ǵ*X=6ԬQ5yO+qmHMy 澁JL- :L{oPc:)D!S_dD Nt[K0ܪ'W/|Q)Ҵt}Y`쾢;`V`:࿙̺NV6Wix[hiq&ķ\nc:gP]  ţ /qՌsRTH\G}@|=_FPĺ4%ZQw2Szi(YEb| ŗ.u/9?a2[$N@Ud6ɵ7bE;p X*3ep:t;:uKezVzaXNB\|FQMlH113򈧫E <7wQuJvPg7ŲW |oF(D!CBiw]]& lxl2.u5Td/8[N1zH\=Ks~  Xw=W2^BFykg)ڗU^ {ؽU2*d0;؜+!d$ciy/n@xhsdz-tzЭCΆEbOU(QB H0誮3z9d3-GEiPd%1S>='G_9?m7S T90 }# ag/k.Ng4ˣ5 ^ gfثpxF]⧱0$LhI*hN7E/ G<ـ3%OwtElxu`k{\[Ч=j|U_ ٤`j35g~%V"M4޷ :0 ;IEzffHtz*U5&lq@``V5λ ~iėNh7{%{aOL=V2p Ef0 xe.D ]tI^ ;>+~~ƃ\؊7T3F}[nUG/'4e9kV>o_tv翑YxPY';d@dr>JOԯ 䱍8Al+PQor믯;xѥx5_ÎuIn *JTI@M)[m%ޔբp { 2RPQTOu+Eh.E'`oDj9zw(!=fl͕QrFMլY cb5- Y ")*J Yi{`@LNhlC!~5ILP>{Y{.nO OB؞#sb؅bIk* R?LkVE\k4WHEdYb4R3-|2Ù6[) rLSD}~81s8Sf^nX- \cn˒j_#B^3hA)KN8eK(GZ2LON3uʅ OSEhMGlx]1l8=(4tIAWҴ%x$j.J3ns| ~͸9AX;CT8TIx5e 8GCO'=hNf8$2*_HCoJ|cGü&Wxu,@*9 ppjUOi\/7D|wDй'7 RC(5胉FF'8rwf^Ot'j.>PA18uJC{:u#C5rQQa/҉(+ Ue uk?*+T."3y_5x{4'/ym})MJ7'PRDqgIͬ3uQ-J|~Z=e|݌~I0ЈÈY Nf@0Y؏I+%ЏM/jR35u^t7h4 Ʌ) Z27,'qtŁJniDDР?1`_&yׂӴiF?I/֓؁K#N߹i[>l: #x.lx[MX;3Y!!I}J)M=CwS!$OZҩNXdwSZ[ab?nڛ`PV#Xt"H.@SFEbEژX>J% ‚Gy+%+{L  < lmp%+۞mlC̦Мz[&@_Z;ĵGSl+ҼdЗOp\FD,\W6$u\9#B) -`.K7itFb0eG8mzdq'/m_o/u뾼J`@r@ցb %1 JWNhb<g;1% :K=5XqӴ((>a^+u?5jQNլF5lt>%7UMSGU@D3/s-J\+ *YߴAu3dܴe {̝u*-:N)h2Vqr%}*mw EM7%_ Z jRh9:reqzuN̷Xw'կP?,K8k:x -8U9Wq9n[wDtL܀2apY )ɗܨ !1-C|4 Ӧbb7l* T&V\F_%$:_v?ldMLu~x?Ҡ;c1%i$a,m "ϵz#2h\1 ͕6u Z0Wr/9RhʓtwFNfҎ89yINm?*rɤ4l4Qj%s]B1Z!JuC]ۘiZRɈ{5KsfA)wd#&e@6a s~xD_ T`}uo<,*<X9 77~MGY$%Z^fRР?s ?<8x#@ߙOqTLFVūF,U \LN.[˭C5ӂtIxD,!>T$b"TD| \gOO60+Nd5)_ai|t4I6%)A:ϛ( =,+Y犱Aw ?YN h8$\٦dL>)}2zDtVT!\eEBLG;ql *# cP NAXv PS 'v bavbFtc nXU@I*u%hx0J$JFvoq6t/&ޚvu;Vsyd+X6SFw ;0<1izNN1r!}){<s{:k | k{Al#k9j9<#-̑R*CO#m?pE Lc(O%OZ;K`"\Zq8vC$Do}c33O3sz/1V D BTE{>0*W4Vw/}L T ~6M%w>e/pUnl@OU'UvVͺngKlt$6骆m/{ʊ{w!ٶQkveܙPTF" Oi9>JnfD#_{ _2s?2<W,Pքq_Ɏ\L#-΄k1l5q96m[P8*HL3s.}ljSS8IDUGM/u? s 9zCS\X*[:ٚS!kks䄈+[@9)-cX}eI[x"ilyC䉖Ln"qtZ~c 6eT4/5z+cO| 7b Mo/9Bkܬ@~\o[zrĞ>L~ AJ7T Z}5V8@}Bggh^&/tf ̢<7,qk~aQ3ғ$ RXOiƢG=\1eFQP{'ߡ'򼷣ݛQj߾IUVJzTO:iA6vnԥl\%1DƎآgq*9 |[ab@_OJ{:F ~V3g imޛ=rˤ L!s0ܮH  [`6 ɨej::vmr`L0˔Lb%ʮf^3=^F@;'Q^'x߀9:~,y [COu:ӸY 73_zR]|y"DGoV L[nQ;ͻsܞpn TJ{R0B~$WU;i +g:Iw^YEZWzJ(1<8,xkc)n#|=ExZa"1ʹ,S遱‹׋O}qBYט{J0;vbEZkJof͋szJ50@SAE?BXb25K ?4`٥Ud!ձ}QV^)Z|ƬCeqzM-P kNa0USV`UrܮK%J )&#- q,v)X~Z.+5 |+*d/~y=jRU0UF5b=Wcb|@͍߇$Z*ABۦ1o2R^TE = %~'r]S}ea^N˶Z"3hڛ0s5D~bNN$ 6#DamSM嚉 SWpҰ$j7=;֦AEb@B5BL޹.,sW謤ͷJo[6Vb/5x(4jV2H`mF%83 O>Vh2M#6O6fBrl9'UG՜5ԻNrO|^8TK%YV!njLamUvu<^TJ>M+6@L!~62LVӀMCX[te\[HN_'2u耣u.})"j'=v!ߗ6[ǣ/_8>%֊5s3_n%0'!w5!޹rTFXA\,NAD&H +yMIB eZ0Dl1B[0Ʌf^#\pA8NHF8.Z磛վiVj9[tϝfLaqf6iMkD2Iy@{M+dN͕MRi*?TziVŗG&w g78 k +˔kxbB < `TpHB<+";Sw ,穯$徭#Z=z՟|kDϿ=Sٛي,X39!Sǻ7pb)[YE[5E!mlLs{͒w?@+Eu"k1ڭ3l c@;qd=t=a\s Jz8w9Tb0K8s v4jErC&v1,Tt=, GkbٓĨfξߣi$X.s̆ɯuo^q<ޮ&+T*2Hn@ }Tk:,Z_ޭ>>R؍`hsAH6iɻ"R?n(q x@m(k^=mM]Fϼet+YLj@jW/fS)J `< P' XĭqbN^]E> Y~G+ɘ"4~-fܟ/RDWa 㬧 VX$s BOġ遄~>4$Ԃ?XB;uWTB;{=T^pO[#,WLMŔ}699So7"TGVӲ=w L7f¥!VuGL U("R 3\JC]Ho[7,nbbnv~kC77ϕx](Դ&j6ͣ M !e=^h0ѣ]VUlp`0+SS.Nیh^Uf6#%z^Zskɧ臃[]U(ϋ:26'x$J=puU΅,"ޏ\}rkosZޥ/4wVTN?.{; ʿ ĄjY;6Nj|ԠR{m5׫JN)t\yf8znu<{p62j1_hh`P7*'}6X$fC[D6ϸo& *75ÿ6Ơr18n ϔMGȐUk)Bl6R? Z܏Qhdy},y"ݕ sݏj{3vG IgqL񌊰haYpY(` OhRĠ٬.Ȳ78n(~4bG*rgoY&\o+t1)W=*k_M0YV :Rt"bqi7X ڱ1 ~XԒÞB>-XD"+lA^Y`NNi9qI [YXIhK(TӤFGq2 x߼5%j>' R{W'wD'vcS9n=b1,!F~e`%RB+ʎks듌*C vc蘞 lMA=ǣ&5Gw)(2o>Ffwm40uˎvR ":k`ך' bRZ3CVy|9pf?xJSвנ30ZmZlt(#1+񬙊 oKYuW&nlmvTts˦/=R.g-I&'boY/:Ca<]ܚ~QT pq3a}%`~N U j4]&(uv-Cscc%ڊ[5Qj/ zBRXIBuAGhW`X@Ψ.-e#:NuҐ$O=ڤ`4訄a+l-AA f:henʻ̣W`ںݪ`:JicRu."Wuҧ\ f= pHӯI&^6DΪc<\aumR0SO+я@":@ϔM¹iEEw<R.V䷈t<*ؾA&[e> c݂i;;m&N47CLuB\EKE zF#m˸\h*Yn$xx:A(aaBؘ_%Db9Pty|K@.eimvPAF71  }y}֪8;rpZbH< qSR,pgyxP0/JJf5F瑸K+ _3$>>̺IUyI?Ʀ=_pfؠF`33SdK>7xuhhw9f3fo4O.g > D:?Eйl;d꯵–JItp?ې0( F0XCbou1ϫpa-7~ /]2ZZX%ѿcBVNoCL4tXp km ǨAYBb߾$R= L )aމTla  D!JVުtνkvWFD撗lh=0[p+6p餃"|M3$%|O&OGu,FYRl٩ou3td\i7e^jQkqwJ VxUhm3_-=),c! u5rߤL6񫣇]:•Gx'ͽu@C=M2xggTd_v2Ꜣ΅ZK[1t":DcB^1FZ-,Voy r)#G:.v5MY%}ߞV{Qރ^ {~F@o6DwY遼S*gDƻʆ ˛:/4V)@ F3Xz/cz_wdC[7d{~Meqgp]QhXWE5yUr_[tDX ֢y*}K޶5,ϣ7ߩYp5P(3zOɘAFjǯ Iuc&?+ {<`3y19# "f7.(WW9vD˚F>6Fw%V_I}?UG|ݷM;J-ݶ'0k06S|0ܷG9G(lhD\nm$84kTM=fd^dJnUK)'R`xWś J~v:-?d/[>`z.="ʵC(=?t׋}DQ8`&$K[tK35Le&KMXdkO~Lޯ-ymZ((B?ˤM6W$5k4wf/g^hW~HY ČCY"]ɛ3brܵ pKnjLCp'|/v'+Z|'vBR~&oTFpRpk^_lG,m p.@>9u14[/S0t`5ʿCGqSDEUc:<|orLI@@(k, h9%)M^}-F{%%O@둆ƁM:F1ޤZ!QtX{B6#ЦP.Iy#/|3Hknvc&Z"33ͅ41^36yɬYQh?P*<. &Vφv݊h $E nqjZc8Qo~'9v =ukнeV.8I+ӪPf9w&#,1Gө6x*LOϥ))ێ=T^\J7V%MbfBiM\ e $M0"YLnҵvb35MzD.^˼R}L'w6̥]r\[Ҿ* ktg6>1Hlv7̮??؁>έ*50.M%۔;kGgu +S[&,~V+sn.ذ6;EcEjqO6X"`Lss~\I)Pǂ7F@4I$F^H;">W ^k\K#+ Ca'Uy|0o{ǩ5m@^6A^8ԃؗiaum>{ p3|:"?eźN+4jK6щ) xyߖ5?zUĻR]d68g+8Ȭ ~qhhY1-t[&̧um(I۩,vW.1g$Y*& 5/Lo>4]_cʆSn2prL0CȎRxF.7+r /$שLvuGi2.Bq+]mr`w;o~yǚGqWsb̎*|څ$ ȥ!ނT閃(YѥuSѩZ!䥊gsJrsN|apO~H}Bu]jo_4 '2~::'a.-kz[^G# T_GȇUFs Va1/mAR": X ŖK]ύVhtVF@㗹` ڥ>MZ -Y|V`h#Pdjh23h`/ȜLU͙(&g22BAE7h?Mtǿ |97I3Rp{*lb~$R!`>X <>BAKVv_ \wa 6ޗ'vuXzɖOpeu%nPvk-SfD"_w a{NPNE+Vhm5W! *0U}NG:Rޭoږ$Hw&v2jt(_ !K 'O3e =8f _lfLmOK ^vVv 7qI^[/DWlդ=Yy3M@Uxbg>N˖)y>3@t_{OiX&N6'sAr㋖Ry9͹јE *> ]QT$Z(9rFJk `# i8|XEj%Qh:蓬r ӠY~h$f rvXlvq:t[aK~0ӣZ}$5ZZCUK7bN6Kb`7d gn fiRdk tW0Ѣy}4i$ֈDdL S R$P! Q_~8VEZE>R\`ߕyvGU/W f<'ňk.JDS B~sd±@3^눇5 : X"mAJu(`[T$laѰ- F8~[u1`M B52~Ieҭl:Q.< ۱?ׁČ f‘ɏ,-/[a\PKln@0pnz(YU|εI^GX2N 5寋º:#X <| cz$-Î ufM#p I#gzkQ#r73OoN}@R3l^ 6i>(2w}E.[(X]0~SD7 b\v3 =vX0Inef;2foe(.GHXIY?]kc)2_Pm^T i=Y]pSl4_+T$7$91x<βeH-qN O"m]gژ"kb/ ?:>Euh_g+,qQAd|8,7ᇑ y?Z=$'*D-3[ҁryx=,uoJLbf-q3,|Qw.Lj70Jg啥:s˭UY^DS8_.[ )^_3q(Φ{m\~Bt0 C+]aSwPϣj׵~BBy]ΑͰ SHc"5?ZbݣQ`J(zs}`OJ@k cD,A͔HC `SدX{OyXQʅ7 5"bb۶4 fQx$XLxC) !lnE+=w[]'> b̝ ]![ӫr,J 9L܉@-TES!A59GE7q( wjA 1;~4!dC-0ozkU灗svLA ݏ8kOJO]ߗxbiDH-BkB r L9ȕz"W֚Yc,j_UCէXhy(ox+NdҒ-"#6ĀkhGV=/c.γ[“]FF. {I;*=<љwjsV۾Cy\\.6H=߁b6f7o"P Π+vВ߸2#bۑƂbѝΥZDe! 'r!uEE?.A}لi/uj! kOG!; DkX~{Exaì;Ǔ!1d6U^~JHcO ח2hֻpWB3,S|Gs]:o=6Ur?UL`lipzF4"sgn bLZ{i< =~Xn%jb맣~7b!L`fLYEh[lNcv7’x;2]@f = 3 U7e}+#zvu?Mה+I+Kk$D)@2E5TEV¨z#?;ߋg)[n*(ᡗND6{yzx xp}3HGXx9 iΜڇ$ם_h>>bgt7)Vʺ x9Lk^ m1iy!DC[{OM9,/VykSVT'?\;&_8?[X\XNWiMfc8jT!<)FJdH/K6\KpCקh pFkgZ/1^m}5287$llX(0T|t7+w'%XhuVbKk0, H;?:&_`rì3Al='ۅ+Jx-" PlL_A%&/?kPrɥ p+6Ca'^9h2\p\ HO^ƚ 䳢wW]7R. .`zseyd cyGm|,9 ~ @ ^0fs,TaϽ&d^&$/`iqf Y2o2*oWS#MX"H m4?}|Uf"ZYov 9ch^lfn}6!Qu6̘hK^fI Ϟ6` G `,%+6i+-\\56ʛj M'PZ@iL@?}Q'h%CqH䓖U:vz1 ،|UrW0d>Mx<?;58xy.$XǧD4o1*1$~N7}P+ +@qjIw3.knSb 6:xuwt0~_ʚIwc{C{z[$U=/"55Dr/Ĵ5.!H+fo+ۋogt^a`a{`-ͫs*㿂E@[aԄ 1]._mPh,ܘ>$4eW%G<|*,'LeZ0\1R0Vȷ k'0=r&agR%&+])՜',)7GUnK1B/z GiȳZO܋#41tF}s (X?ZC/L]0eizPP=FQtnyp⻹Ʃ +/~]S*-+ q햮3YRЈzYtsK}Ma҉7=8WXrAoJmoFP]:?ڰAtQCuP*z﬽:FUxi`?>/X}lHM.e$M![`żKP߸.gr 0k=S]?Q=cZ+0(JrNm` DiO\͢!_؈R:rAwxhNYv `ӵ_ N/&- RA?\wF_•y> Bpb*JPIY=Tdc]Km4&6<ED|쐒$XC"*Y"f7Gq(JL$3PwL y@z٤QL7!I +$yF>8*qI ŗnK3اIJwKL"^/!h'{y.t.5c2I4uySĭ" @SVYul~ƄH6Dy"@/ξ6ȝ oq8T<|:e !T;,?!6S=ZG= 3I8(^7>. GS{bmpPFGgN $#iɫWN?JZux&'6[-TwBvyYB.x4Q 1W t(6O s}-uyE)ݶ´yJb(HӺ}5zsy/x:E37+@Ģ^AݹiF'$>_6ifua%mo ckNXftCdT\ʪ׍Ҏ V;awOZܔ:D=KUH!FՂ+k'$@!]*Fjf=cC0[xXԣޒʕ+$ᑿ Y <'_KxoEM\V!xau,Iac8fVDDxz4\H g8r7}a[as`Bb aװq| .:C"zE o1_3AaB̓,򇣿a: AU^$x9yaE"XMgfDӉRy}*6ET;"_H#zw_ !`=ccsk|펷|3 YEd9((T.u(ꉂrԝ$H}EW^@ ngjWIKbj#7رq!D02Ǣ,\eN؂ɼPd2g}(v:(5$In(IΤ3R41:}^a$:4"UK X"2MQTS_%yEi gn#ŕŶ-tGV*V7}+~1{Dzmzwb$܋&[$EK9X,*t=Ыxi$V"V.a׽Rp@nvϣƚkh* H s6L'N?^gQ콎*ՙr& =JC=.9Qhd> i\  /"o"$k7M&SˏJi)J/yΈEz@[ agr5C5[`He|d]|[ژ`Oo.h`.ZX[>##T,ŁYd~B857_(埏ŀoċ 2Fc׷n, $Ղ`D˺S 35$Zj8 +.-b~ˋXh"}* ru3{d9؈Z٩~!8j*ڛ*wy#"߸MrfSޝ{hO!P=$'48/BQ@IȑQmGk3,%[e~QVkMFeV䁵cS[>hdA/F`dE)kPpd4Iєt)\QGAm5QN^/:T7QmC9Ϳ,K9{\G/vWզ61Aن|ʂu/l2r[nk^̩9RG?!E˞u(d7-$AlVMstbe-~ynPe[/kGi]8 fxVb٧u)x* 7(Q [t##?<.ã *i$80s6Ҙ{!8؍-@.UuEnR"6»qd&A&Ή@Ħt9a,Wh\6q+X n7fJ ȅ_q$G;{Wvux-` geWϨ_~h!Xcn> .5IJUdDnֺwo3BOC.`Od_mV!ţV&;Z?x]{D'ċ[DdZaAm,rAKٕocx!61L( 2Ԉ+-z˶Ό"0(_4]ɶo<ng~d8NhAPM Ƀ-E|P)ďgWL}|K-ƈ{GFܜztfK9c:OUB`eE}C8>!8a$Z*iǗAMj!f&=9ڪbAR*z## K42܄ᬥIl)HV@(.L1 8JA$p1lt兝Sl?Ķ]?U/ˣ"&7Kp&ZȴTOGR+=%QY~$!t嶻2 z/}:d'|bW;P03z7hA-CgBa1M/d34ﲫ J \t#15:lTMEQ^̻[E7u^A=rhFvH_4q{btudu[OO9x9 ThJ{?]+Xa+P>Qe=Lĸ*w|mϫ;Xm&;7oZ Dzd9ki=/gP"ޞf;;F;aBf3#鍄M_IXHP p{8F '== Na}`HUf~aK(*%:ZhK_(J#=/B"Ƿ7$ kA'rG 56Ϳg8:H%jQu/j^*KB n7ͫ̋o76R g>Y4(T?j;mEQ[+ֿڨ{t-ФNb3(53r~i$Rd-^Kese7[2K-䭧rjW.q՝;b3Mȴ+)zLX{=W#ZK2!e U6oLAUPxvkTʺ6w|yRr?8Vʩnmśɲq,43ZZ_@!Z٨$]pGʬTChRraɠ*iZrCmEU!"6V~$(W9I{ɜc$fo'U7-Baoh ÿJȱc6cSo_M_  ,@}(kI=%]3u/ݎñhP$ѱ7zrJ?&o+/BһVt %>`ݜ+wam<%O+t(@w]_bj*Z=1+y>Ԙ:3'lZ^ Ahj g`-vo3'b o()qzUYq/{h՘ 0s-.?U)[pe;_פqp|;m[c\U#V͵/&3ăyg֙UvĈiy2NiPg{LEõ5m] `Wך*p.$jk DI,HBD+C~ir$BOld[2-NaNM^Ib>nO0nPhGB4ӌǧx 7銯$#;2lȁn8ߕ }D'iЊ9*˾u9NS4K:jP@X=R?$>|FĘ&r#xvok;\J! M gcMY Ɇҡ|'݂vj ߌ.@MR֮tY- #5Zm9ߥ<';xh Wg$0tą]Gj3,[<[U"8\s4[Eۿc>j'J=/I"7Kje/)}rS{3WM=4ʯF}ɻ,`5>@$ [9qny=ce\pV9륮pM_xϗesYͭ]`mf)'z9@,۸2$W"T$ƄNb2Ƌ!RTZ0#H]MǘMlΛ0&}A^UZ.n ):^jp\: /=sg-Z / V =ָ:݋"`0]4&; 0Td:<2 v.X;ِ TC &.igJ4hdLWb8dC}|Ԅ!Il\Tuc5rv(i ^ⴘ_}\8Yl@J2NKp.v*xf" 1֩Y@qrd Q/ RiXçad W5G9lT1+0h%֝5FWþ+fqdϺcEhvؤndyQٳU*Bgx u4$"5=I3aUXO""q` ɿa _P}MBm#Ar7jÓvd=R\8f&CuFqkH1Z` > V=l0[¿\1`HFN4|+s6R @D!4Ӏj ڭ9|6;~ŝ`h2I; M=a.?a,r_1@Y>SkYӛXiKo!ǕܝU+OmZ3c]d7+i63~/ }~Djv"$+ U:-,-U ;>8 |Cľ?,.|[)*w;01BH.I~hA$֫؀ Yo@P>i d戴eW/yA*p ֠Fa0"H;G}Į״;ҏk^ zd/O\,kN*) YLuCCӚZZ+3i6Ǩ\.śTg7x!CVpm#;l!4b'L)cУ< -; C9Oam෷y3h2l8T}ζNR}=7jV΄Zۣ*78m0v >>|T..D(fU4LVL8Lō:FP Nhcf:Tֹp4,9YH)?D Qq8Fq0R>R3ì㪨"[ucvB ,tl'eIuMX5U[ssnED&kfm,MX93S y"3Wd`Η /JU{hڷ”tGǡ$%y5-$)7v׋sιT\Z aҧ3+R::b*YD d\rO踨N6TkEHdP,JU/ UT LOyji'?.дQ ^M6sl ^F;BYc#%_l7S_ZĊ'៙%*){$x)i!hC[X贠"@Aq`j]4~6d^]-dVQ s),ZUmEtP'ARDD(Jb>@G5l9ְCG)(%SNWG5 ;Tiμxk|5mZf?EMO@0_OZ{RO2P ΏP[TH^Zʪo])KLxЫmS|ӮN-jIܐiOa*<$.X*K"J,n\dm\A~_Wl×lBvI`Ѕwg $WMv1%UX OPIw,sdxy>l`8pr̮|ePݪ8M4t [,g@esHA- s?&TyQ?ZdӞ2_u+xM!t8s IU'=H/qȣ#캮.T[{*X)pHI"dD{̱OMgQĄ8/*PewI/M-,ts׃-CF?#lHV$\WF0቙-8 t0 v_|}$b .\{'I8*$b/bVw`c 5H+f0C[s1SQPF./M?Hޒ,vtnm,gȾr+w.z$(z {ao@cT2bKE8 jU7t9ƂJ.$ iFDPMe Mmopuc?Js|$0Cks3/*{Gnmhbc.P]z6O-Ќ/ao3_ȏ${M ØX3N XAZ)s[@+\mufn tmcX4q:~Iee9>4(hIhnLth1U IL裏O_1{]E*@OgD4ߦͱ*Q H R]|ݦgo ?ma ϡQi ԦwS9>jwӠA}dhȘ?"^ z{'h<ӡj!N0cMo~pݚi FKXD|EEһzƅ0Ln/vޕbKj>wiLӪ)0pկ>ij'y_'6Hxu&46A5kfIf?ΏMC u&xmO˳ӰU4 їΣX!\ߠ76q2pcD68k/1#,9ϥ X,&xE $<3&Ɏ`EpPqik|`XX4/iD-2J L'ʤiՕ o0dOG@,$̓g0YGs73%N^h>_t"Ál |ύ2liɐ iG`AMOn d@Ը[V\"\W{o*l=h,/=4G!ƮwK< ;U1ax+v~?rf$y)D}Ę@FwϙY`Ѧdh|,9T;yU{KC*R.&hC$\I?8jЭz" m?kO gnr5+l j=3#]f yNJfGq_|>EzJZ&8kmYgč1v߿"Pdk]juBB|jKSB eߣ}%"ɔ@0kc;a@r7o\h^=*OJ%E^Hx9=UuI[oq~\b=ҙvzH˽B{ܖ|Y`ආCɳc`@Jxق8XϹ^X>Yu$M H;p)WUo7\F؃p9.DMV~S; YEpr5 3gC]R H]Su{̏zl8NeѼmO;J;=+׈3^;:xb.*~tc>& Д*iȲx재|xD&dVTJ M2-Nν6PzHTwoTW #s̎׵T'F1}=AGo~8dvTV:Sujb 󣕤 αޞw N!/?/FNdg"Y=~I]emNgV7αtSx s}sO&/Gl!(JyQHjl-Bp|+>nx:~'s5a}X؛|c*p5,YBw'K3p^T@ b?ė#~0C1 aCхq"!m P=9ήU4$ 3bзS^K;_3y#(V̂Р<%g.Ռq$qx%0f=Q+8c6v)otƴIttۀs< KqYWO |ePJ^KPcD'Zr~&DnnrS\-0bw+U ڒtVMi0E(-3N800𗞽!L7TMhRg]S@lspOwGa' SnA- >UHA;c^7&be7q}f.EfiM'7;C0 Tc M^_j]!m Y{X)_X5Y]c7෈9xJ*f6|үfsi**7|yϫMAx_ewR}mՇ;l:`u{F3dh\ Wi-H>`$7y2ĕ!_" g έ#e'`A:ݑ/ٜۖ= S^ z]+Ue :'-`T5v l͇;-pg,KV-E #ha"#LZQ_~ջIRb}2osW;pRwwj.fVB@ 8;ӝ(=tzjk1sZB4]̩U i]i&AlSeԪqH~ZmM.XCKX/fʅa{:cX_ful+30CQ6NL8Ut!Ji3 4W '1YEүN&F͑>DgqW `ymclȃTs.p{g\&-ݥfq.^$xp{V\OE Fb-@ S83t֙W}/{:fV)CjйntS *u7e`Q/Qg^I4V6ݸfWZ,]?χ[k{or1O/ȼ)1pD}617~sn:x5 HXHimvH{\%"։ʕؔ|S0l1ĸ3M ½$a}Fc:XdwWm8l.9ͨx!odWZӇtY/DJZD 6Gvk^k֔'%ix6m a`%v3hՊns-banC}p Tx^ΪԓX1X) 1w], W(|6 zr\jtä 5E,dյ*PG8@ߴ9#?gJ{IT}]G\^܇61ªR6Y}Q*8l~zpee]H`R úOp=!yF̡ہ" #LDołZ-ӟEF C٭Q`gܚ,vC6T]U?|2H}!GHM2ϗ, $xZ{zb\T^;fչwC@Xq'QM&\cT*kyRg<2n3NZU E&;tF>U6鯸/䏡CdY_Kf6( ){j7Wׅ %}$gYLa E@ek%2ږ+4Zm=jC&6?&ߠ%z@/k dqOROA*!E+ Qta4WQ'_ϝ;2-:jhC*=jU8鈐h:\L_rW6żz?Ĉ*&03/S3~8U`Uɂ"&m U70Ba~# 9ΰ;66PӓWV&k'}8>yܶԯn< RZx3"Bwf| ?ǗDp1_s {T0Pw&nM PSт5>O'f:-wF`dQicQƾ_ِ>_+G~z< 卵D7f$@=C3o8Rδ3y|VϣCsxv.Я>Y~LŏBhZTf+3AjNE%3\8dT8:Fb|\[1hi. TN:$/"'W#פ+0,^䈬Gԁ^7+Q\^MLH6OG=f ^x67P9[zvnYbS|TuU9hj+v{{ ps+1)WpMmQfbg=")ţ3A U8j])EJ'20OcG5Nx5P )ߧALd R"~;!SÊt* bG#H7UCW7s[C`8@J?)Lxfcp[T=Oyݷ@P]J cF'@J̨0lJ)A#cT( h~Gj*$ᩩ: =n}ìJB.{S\ޣze S^ech(6 ΰ/F/fЋF076;V?7itv}X1|}0zYRY~7Gsr. 5q`pGˉ)Ӑht-KPܾ !mɯ';Y8i.di2 ÖqT3|c9 w= '䨮vye ˦:]R P \QjUs&e"ŪeSn4ZYe U2_~9zRDꯀdPXƬyqI"" Y)E `Ig1F aXbBؖNzRъXt U5A8MhXneK$&-O8,& fNĊӞ>RX؋ Kx9GPU%^X[7;SwV.wR )mPD$]4%Ol05Ti83֑ɔsԲrw(D*PHnd5c+yFV33)Qe>LMPO:#.{1G.y& t@𑒕H3$EDdak[@$K}#w` { w =4}2sRAikS`{) y1H[>>j&N3 ΣrhK&5mH|~NSiha+Xw֏uOaOIdu9,0S_~8.Um5|rB+\QAy 0CS9EsuS&z~B`S}o0^ LӉ̍|k/d%Ρ0Ccl @Yo̖Rv>yG/lclr@Cl!>9B1T|J%B;汞u>TmV*P#muY=:С75g}D/;8iMg<%#+?7uݎ)x){> W/Q2ܽ (6qgzJObD! e!=E!}H =n2X~E¶'-Njj-6[,pn{њn Wm4^3q[=ݾ Bb%5vGϤ_(FZKqS_j;[e|Gqibh:x"p2lc}EAj{lTG.M1Ux02RG^s`ܩ^F H:IL'/Z `4&BF]@լ#:})Pձ.+xq2+7Vxw,ͪQQގ=zDM.my5?wlՂV{K Pн"=Jp~b /3uDA5Pz d$ TBW~ۀ"0] 0&qRC sEM6]B#D%yy9G.m8 _$ 7ZxH0 _ =e 8ũ ?~d+Myxa?O Q=iUҥcm)ܗdSL^¹F``y"!DGܮ BW !]8>Hs0耪T+o#@8j), V%GFluo'4,3:C=촥a8`@DJJ=eHɿ.ջm?g0uhkW> 9&)?#**YJP~ ~aA B0 Dެruph: KàrfEɀ<%PJԾXLI?Μvs!wgw,4q9iĵ-SB4;w1uP*LE@yY(ze2Tquw6Sx_rREmK}TD@LS|^fs[<K,gH2mAK(Ξ-\77\Iyt_[+]P৯<^M@1+T;( W1dDm8I}rX7E!z%ç@xoāp\<]R4$]&у-acZ@gjDA.+]+u,R&/_o2r8RF78 ~QMo%q`u Nԗı/Nvj;ZKMs11lA<'`wc2kf{{AꡇX&0}sTR㳖JNv^6tZLs r۝~Ąm5lO]ۛuDmB &6~\U9?k,=p^JwY|8Kxghh;)6:c"mstlX$笳j).D$yљ)@8fP8h t :r5W.8NLxy,)c0GjWO_qWކHQj 71i3 B$TWY'ivXܱi,%v[% {E@ H⡧p' ??ҍ5T 'Vl*uC~E¼;א#ytD (ۓBji@hXteW,ވVZ\({oTn/>?{} BȈ[\ DŽi$|g *4 ársl=ekQ'ZE8 :F?FM5Y[V]NXa:bv\MIkP}A$m|2F}ں}b NpZzMS}1/Lw3Rm=B7XL򃜤zr{{o)f:@^nA微h>ߩ80L\E@*-eۄyX WE"pE9tzHl^%8Щ6xQ.UQfhV2kS Irǻ~NbIՅ >ixb}Oc2,e& Cnu &?,@@[ntۭmrT{]rRhCM*24Sr9J|dfb{5 7=%#yDJ h15hY|$uq^c3=]`W{r+]sUGxi8bᐮpMLɦK #gܭҶےAJ34OD]G6b%5P5=(;+ʄMbFY\C~Cbx2EL8ZM-F\s f~bq'H9J"]pJƱ Z q0;e [!V:_\Ӌ5.ꝿ([K¼u>4VTּݵ$6az^}O l M]/C{5/ſ#ErWIt. K">eP,9oloj6!n(031.Bdf`7Clڟ/3y(҆RːWO+A5и_80iR0#m8ZDXk.ڦRāWR?鍮NYYZ)_pHM ;U->eCmy۽EW8Ü,?L)|МD'czM$A-6Z1ZbX{O3erg(d?o޼ԲeĐM5$`ise- #*oHED^@نMH2{8_e{F8}F[ݙuqu]?,($>:LJymF/Cin"^6'bQqS}t"g&4aZ~i{fks=ᾫFweQDtAw=f4y8mUHIp6ʼ( ;A1.CʋU aOS-O,j6b4MeH VP3&behLw##[c/̵%eTZwzz ϔ}(%?5k1٦iBnF=k,u(?f,4)AbbE;#\zcY^v a"? _ #/v8r U"n0ꅽU >iqwiP4ߗ?( TT\+r5%J6~ol:_MW "100bնDH ҒīJûqLlv ݢ:W/MZ+(ؓ[uOuEѳbv=^%z04Sd=ź(c,9.;G k=C82OIJ>EI4tQ5$A+Aj=؟#Z6 <YUT|q>@]! ' Er6.8ri8-9g1j3@+= HǦʠ+8"VGa\`*Oo`ld"<;BOG35 Bj˱͞6 #~Gw}~nԘ!ߥFޝFv=p s;G^bP?/LܻDunzQVNrRԌ>p1t뿠c&RXKg=yhy紲ty Ye|^K* 8+D ؊UU-2~ kL' Ȑ׋E+X\}yhQNrl~KEj(yu]TTC㩤5ZDZm-iL~(SHZ%ô{QӓY8sbYJC{e΋Lh_,)#uZ>~{unMK Bֻ$_ $E޳Q v7 Ak3ݐk3}:Lm3mƌFi="_*g@)e6+oqJ Ö̻`oߖ(p`q3,Pdʁ̠ ~lQwW3@B.<_}`27|T,.#y%^ Wz̤1I/Sue w[F.NgG7 b;7|tOveEn݃+p~~mn 5bH>l0DuMF=oh7bـ3dCDCr[ti"aYD?pTàPqD[X+ `Lod ō>`ݑܘ޻YI2@luԂ"4Bb_+Ȯk[A>X…'Ig.j4Q.y:[e=rnx3WbEKOa^fp0dIV& D;%5 .4HⶀKOb/4}[5?A>87N?º2e<kQ  Pbe:WEwWO&N_!Eh7Y&m:Z(a¨AݚN/}+g?~D̝Vvྙ+F⃷!d Ecs9ߋYEw,@4ڿTGx^+uPl|Q(V$aWt'$)l=ۚ[seN"y(8t2٨IAPfȲ{`mGOd-bPBKdu` sɽ÷ƳO@Ԡ%?2ؾ1fE/7vܙ0'ɾr6%UaR:z9tAF2#2#9hY  4Ef_oSZjA˜H>Yp%kbz& ?UZ0}ZvlyVV'WCRu2jx!g*'~@rz K1X콗4?!z(9ף a^Y->>a4ףR'jATXw3艋Q7o+Qe5P[5)W-p`E;.Unqh*h" ))_8sw$~|c\Q}ɞ'''iGU dt3}c".h6,.k)2oUFA-_2YW%'ӛpn&_>aM!<"ozn䞯Bi*^% _C*ӻӿ:e/?.K|tHvBk6g̎gF0Dd(+;EY=}`+lPG:í?< p )NOe`CV#$Six.r.ѤvCDaE IbGҊ?/if‹A6)%7gyFunUH=hnNn.Nd S3)]levzJaJvKÄiO` e@CAZkigpkrbλ\nIeliR~UĤƿm ߑ/%tiָN!>[k^ ;A)jJ-_)/ziLL HtӮ]>%۟7f1f ~tQp p1bz~wǓ* j+:1\Ni'\&˵Qz "j!\>HCq:TD6pzGhŬ`IK5H?;2Tc:!iZR^'א@|R_G)Egjrz^CAbWw;}3?*_"&lX}Dž-ʃ Du?q#Ц" kflΓy4A/6™_UEUD wu}(GX}q I1#cn7x# B.(Fg9]P5]8++(1_D@>\:7&]C \OL Rv%Ҙ9y'O+PfmNRfUMΎ֋Gx9suNH+܋HC_S-0NU >C(跪`m= +k"ZY!? ~w EKQ+*Zp8hrWo}(Tdln, HSL/~j-7I{}AOoyi98Հ=O򑏶 E _]ejC\8:8䯓D}OiǺ ! ϾِT7S1f~VG1fAcCΤg<9%MA+%>:$>4 0稸ƭSw@9p2t4yW1K5`m9aFw{Kh16Uv$Hmh4d/H# 7 K)]!כ9vGy#b סsM9ckhїJI%8gq"ŚX $_)Č9M1݄ef:aɠJ-Y#{}S lۅ|JXG}AW&9 hKV |/!za!ڭ(ZQ~j8P={c\^W+LLXr)K X=B'>YL`gC ρ;)oF5I%` b|։8!\0>x83~4)Vm4ʱma}i{d G^DVLhȣL|$]Q ,\ 5$*$ks]b&44)7NZ2֑ȕ$RWb8HQX) yF6ڬO_ E? pmXzuD؜Iw߯=H -0*mؿvp ] yb9y Il>z?xIh+Pu@;^'6UD ܰ/`ȃxa<`A=Z$P8͠{:+ {1IW1օ"{2s-J#ex%$,aoGՖ{Hťl9`G)Q7b́sسa\:q<{6x?Z'3 I;_eBTɳH0 '@} 7dN*[<MߕQ QHq@;=h 6.H!m DSXQz3KqLь4 6o}%|"Q&{z1ķ4("E)[ ๤?%dir'? V=?gkE@~oꋃ)BFt[bh7SOzL@}}6OjY>jR ZT `#֗- O8xțK"Mle 7j K#Ps%8tFӱQ`I5]}yd;5{u[K쒦>[]HǠp#`-'%?n ~xv4 e/{-ns=JlpX`wC'?e0~Bs w7D"aHAȘ!h)=t=ߙ_ `S| Akz=- {f{q7ue*ȲK}ugh"Pjkt%c%g-I 0y'K޾C|$_}oG.b Ȧ)liQ\-}|1~U, m40CtU5H(dt ߗ\+G͗lеb̺xq&xa8m5*N4lRt+c&k}&fEC/W~j~ ǴKmE]_* zF6-K#ͻrf { =mâէ2(ωDs|jN4@i6}vfyv3 LPH\o&$}-? ,Ĵ%z KfcBD^!`8yߞp]LAzGg1E T{^_Ob_϶) yM$h9CB81Vm]v\ϗɦS/qjr0K ;Q$;yScsD2SЊ [̏JC:pU(F_p~Q s ?.&L!:}pYc_ark\yVS`N$*.0Wu^oT"MV[0-c#_^'RmLt >bUUTmЯftn[+G'R3:"s\܄UjRv aLR nD3EWv; ۚRXfo^t4C&*Ya$_?ɳzh6Ai{( \ w=~ZRhNp[<^"l.zPOꔢhz}g3Ģl1nxg@z[+9H&7&2Ձ~lOհWW hn֪n2kʏStCF90zPOjcV3a$1T4r!l{p{E}/3XGWw'c[|BWv|:R`҈#cx1 e,i@}oTc4 1Jv:wZ/a:}Ȇ`R}_*bwwT;G:%X<s^~P1Ԅ[~ܗ|0+u zFGzGxrPat__CijxOG]&k*Y~oУ*,fs'dJiٗ"F.IS:( j1p+`V``ZA^l16Ex/gD?zτIZB55>jQAơjc ^ħC,3F22%LˉpgqMfna=v Q&YYW|H u&< :kpr)Uy#rޑO_2%v@FX|Vp2IO['/T|K:Q/v_wE0P|3Lbk;qA 1ϔSFy* ƒMNwN 6>577bwWmӬ\!DD*/;QdjF;AۯYYvy1l&ܾzm)i^h.eD%7/(!ce U =9ע;0" 3]lCHݝda|WWAʫKfh`nxMm$\T@Ћ8 55 R|Ϙҍx%= 0i}H q/J;NpEd5=j2}e`zt^OzڊXV䫱N6wXx߮hUi.xWVUTNH-xo` ~ bkǸ.JNF}3e7HVm ~Zq$O *ɰ<RXQn:|I<&~)F'xӥ)ʟ9kB(5wQڇ#E =Wr]V(~v3s/79;h0gհ);҉fG@2SȂo)n=+}}AFzS_3O :ĐКf_j6#>US!^Qcm4- +^Y!l<p{E~}sAw;WƮX'dXBTh Y!ɖPY9JքQ"Fȯ&Eac 2CIg}Ta-_Q?1SV߯X^ {Zm1\'Kl/(A7[sH4 I;»&>΁݋28:T+cڣH_tBֿ(۹ٓ-Z {x\o~#}ULm8Wǰ^FGH62:r]4Jo̵{w3  %S%?H֟UYMӗy>(6Zi:ڠ?ׂ]lz5p.?70%Vӥ~u`P6q/kX;; * gpɹ{7c: yI{<44fdV`_@o$=|_pƫx[8쎲Y`4}6FVO,uJhS|PXX_$XN`3B[>yQꤐ>.i)!^l?m*^J moCXӨ>8: : "T G >.騞 Ca[ M}:6KsMz '>٩8oΓ+ x$hNk\,I  p\Qȗ„[629͆PJ4'%r\. "Z3^^kc 4(8c{.P$ز$9"W)tZ؏Տ]&A^̀, BJuPSj"ؖ/YW6mBv1[h]@7@AFujd^ 8j$[B1eTQRQQn=tR7睜 [;'bFNGhL>`"\5gWF'NߦIdax//mvD?iYS, KUcMsYZqw}T+J sNuP1$,rEwCc`qI?x:c鄳7}v5W W9# FCC&ǹ*qm@>s;j1]sJO} $+˾}~REPh=:,I7^Yr &XuVi?ҹE@H]WfǠu4H/T"/V4-\d?p}ѿgIX"& gNRi75lXǙ#-D.8T#[KS0E*u*̫٨zAOY9+@ ҖSkl0ДΪ+<1hko.іaGʏ$: Qlh{ 3]"=eKe<Ӻ]5O빭D, DX}1/NHw#CPԾz=@Q<X`+sÖ W^e` 'vM߀_Aqs[r|J-;y~u5 _5>('3^hȼzĄ-RMI8x>+`vaf2B{$I^q^nZ)mg-2}yerh*LlGUc ,bfƪHfGO5˖Kv FO*f@`.!˘0,q9bYoVZ(ǠD #u H$ zν!G myڗD$xbZ49,HQB3C!Tz?6p1TQ1S=|墍FvPLNꦑ=6VaE`,UhyiFE8Gn$R'M|Yrr4cK$V+(D2':r[5sg]mz0XV,EaGGC"^l^Ʉ_`l9<cI F  |vIAS~Ó Y87晓u; v1_"T<,uF4 t|pHSi)mkSYsndTo&FM{@UsM4bÅy!L(zKgyhyv:>v0I h "  SIuJ9-jj/r><_${Yʗe5GtAZSI4r/TE v7\J j ^(!Ng1ka9]'S~QM8TZ2_L3z8Bp?y`?M!.h>_|}\#P+ -֪bjSEj!eŘ mvE護o<\D` 8/M\},ïw#3u屹;gؿcX{ZQmJr&>Q]24 d.[}Qo aX ijz:4EIA'*N Ľcfjs~bY͹iPņ rol ~Mdv޸3Z ־,Lc1Ýu2=aAcY]gÑgYko [VӔXKEÊEɶ JߧB޺@+M{EQu8\hh:rQLSBm&kʶV W'hsd̔z+WPGK-.B$]r"/M f /2]_)YݝlV{2i ]^jD%>9y/=fnp-4uȌO}33j)s>3d U̯ٝ_ЅM8} n'a[6*U]I$藠`C ؑrpsMwKgAYJ!P]vCkpbUؠ%gm?S錑@i4^\u mtp2Xw5˘t;7lJ"QtCJirlcx-fRJZV!>74Z⇰TB. %s㰉l#!0PqTN-W/BZFݲjBq_7pPi%jyC|-@E8).)f%T느\qvgD˱fY!NfW 9QQ5Y v&if;D}cOmG|(T㣊?x@)bGHٔϝhTH/96r#B*\ n[U]? G{262y' O& $>]x!h`8L?}7"/$b8s}.Z[2oBB>MUםǸ7$zi51h[ Tx^͎jR_yuur$bB 3S-m&]vO+6lOj^a8xd8MGNFZ΂!Sճl׍MߢeȽ8JjC>l |RtYҎ|yl4*kHwN"CX>å 6N΢$t?R`jUdGuV**GW<3Ÿ=Cbh?rhcfn rMQ ׷sS R.0^)o{._j7Ho=&tp.ѻP:F3L"}gNrNU/n"'3_%obTl'ݲ/aߋmz,HYa/U0,Oe/f+qˢ;'bd؝BhGܗd5t/%Mݺ5uե)N-ù9KJZ-pˡШ7Ͳ];qw<0n嘼'/{2au5 5sz 8(_,&CCABٕDn9p^dx'munx.> fK%K0}㙿x5b+{g&<{(]ieM:FދfDc H֛Kgm`9F=З#MZz8xB[8s>JrJ2dwHsԉBK w6!FV,þS@,^KB N&*H^B#\)jsύ ?hޤtɐ8ITW<A.ʯ SZ9ٝ T#-9'\!܃VPZepxM/BKkX8)H+=*V$sBCsM?> _]"ke#+B+2k0?p39:v *U=~I+sQՒO)\2kH)ՏS'8X;Mk ޚ=-,gљ%.Ģo9ި폤T?OdE2 C6A >POQo+@o_ Vs\.9)YZʭ2$8Bgה6'#-<{*cBЈɑ\uU'Jјzl3Kb q˒ XԂp ʢQS\q숮~)d[r;Sq7d߆w9BH]ģs5%~nigm2%K(K K/ω3`hvX|窥;B;yj4||[}F dZ 漳*O@c(G}v- U`REYINɽ'`APKHBPE)-9xI $9^Iw,EJ2M4r7Mr`R2ZήSe [|Az?=L7ף57VGQʃIYCmL#@7h9 Xgjcy$I]܊|GA?J)?%CJ57NTg(9eJCTΧ '0CG#FG(ׅpT'i^Tɼ>\*8̈́,(kN韫;2狗::ŪANic3#"iѾ Zjs$'k?(N6xZUzܼҴ#*WC=21$OMZJV."16KÌ?/<35 acAN&8v3æZ: 3wg-lOHÂV'Toy5zxk&`:qh/f@ԮXRPHt/1մ)&sPjםőE99{YuG5ۿ&w=k, GtVqwlsVa83_Iž;W]6BYsX5ff'I86Ř *Z B,rgs#,\E6w㝔幱nO˲e=X\qÏkQ2db{%ø!mҡ]ٟ:ϓeOHfF'ġS"~Fo m &>kLrL +Zp"Gk5j1;6GEsFcR!`z'?:~6YlUO: 5~^sW wT_E7 H*rE23\Ybel/Xv BKd99pz$-D13%D^4QXbb@ߒˋv_%FU[/YƝԷ@j[l-BRCK'!`C %u9G UkZx Ή.^؝tW0t=%!ࠧ}B`7(xL}w0 L0c[_.&xLHB/`0vEGoSǺs)ufJhK@5EB|`D7#^4} _+ H(cJyگ`,l= (/=f du^;55bxIդAUVK/?L; ∁],j'y$ x['Gv$Mϓ>&T/Nm}(((ӢЕxBGr:Ge^Lk*;Xŕi`@\UȱYRobNb "n3>d[ޝy47f"K#p~hz;Ԡy<؋yJI̢)̍q_-JK${ GޭdŤ iu`ǽ Es7` p-a%BHc#؍Hy1ɴ'*eU+N@_Ο|>ZuF1WxhF ~mzSG)pO]ztѥp.l ,uF\- ]6S`B0ˀQXS[@ʥ>%ǭJۙ YӔU`1>u8ne:c \O#r>L: T^®Ny6_ 'S=4Xa0YrOd2ojsY¥kv!?b=u7)({̷Gu=mzLTr2bw.}ꭔ6,>np*w !_;,萎z[`\ ?&jP`l\*P$˩d;PrQZOd9ĠrRbW ٤+<[R%K9DVa0B:lXΕ65 ݽ|+Vc$偨i֋pU&~ NJ~ ɒ*&[L !ڹBkbz ppF&7n~<9 Ph4_tNzheuvxG<qm$ !ӬRE+dGf,;>RG*I/~q d?$rg8kx]+H&Z\Vaݘ9ћOj-<۵ 7{w.!LlPH+Sp"TdZsP v_⎯uUCM´o7H)dvY\VފKQH%^2lzb%Lܯ95cGxfv%c6n".x'P>5lvoX|-6$ADPۍdկG o]R?S" B6wtW.Xizt]:>Fc[I@`GO~&s<9҃79=o]|m>f9(da:߷SU{%fxw(rCkG!J7 卥 ft3OZX3'VjZNڌ$2ewywK"cn]ch uol)×ǹ {T9 ކxâqQ \nI8.V]^F"?n r\Z^2V7 jtXHYι<[Oq6#>2M/^n'%i"L`8\`w""O+#T?T=PX?6Z}@1v2(7˔Ql%0:m}F17ٚK8>=L`w!S OJgw4)LՈw acS?nJC9>}˒B%;K޶ c5]z5: `M4 l8m3E׽O+Q:)2kJ"samq( ǛܙLM1 imF< \|,z@8/b}ٍPEdT~kIGs*5߶ }Ŧ'\DkJLDžE|K7!Uuxt;/`(2c..كŻh~p쵁3@^a6qu'`L2d{`{n2f:(`.zS}UXFtHx0.J/! (]BފBeZcNpvЇ4;leN]t%U| %oRYGVnt92 gr(+XC;C׼'mI +v!Y4i[l_R`N&OJI]re\D'VHP!$[M:m hX)Hy 1 i}Bݞ(+VrP{񇎝-†JQHV~mPت`ryc>srmLu D0bcK=U8ܪبKrI?()ꏒ8؊i^Iӯ_}L|Z>`sЦ&`<;E HX͂#W`v#pvRANCB%6ҹGJ)t}zezFa0(\%W};"jk.-l,RP\ L)d&%@)+Y™ +7hJa> 3S/j$A%fx}QH\zs,Zms~^N߄3SXXP:h՜|HK8 8v(|R'b%64Xu3&]Ki 2龳jNm";5>{(2H$"$]Bm9۱T^S[C"T`{ۣ?mb;J{)ےbzi>*.MO8oaDPʶ#vE)&"G& '4D jjE(u^S֠9*e|z۶Aɹ#6~2Y47uB0^+<"zv DSP(K|ZxzxؐV!ۯx=䚮`Li>G_ǟ*R^@79:SSIWD؎Zb3{ZLeSDǵ C Hg&%; T#I)b;dS1;ֽW $t@QQſ΃>ɲ-= 6*cs|Y* yv@hgRlV~eh0>Qrm5wjҎu1 8 spqu~Ou G_O!AX2'tn'}%t }U½zcQ )e˶K/  C.#Q,.u7ibM{U'w}77Q\_^ĒK3 > iXZvL\s~;rg}pTb5KC in_]2ZDraŎyXo"n N9s$&V~3ײW 2q}%* K_&y2FIy #<<)c؇LBh}S_wwAS_%(o#1qH`D(tSvb+'7>]'iHԐHNߤUiM|mR՜2Ic2+/'  *<ڤczu̐r7>FOs7#( /Hߺٽ%# "oڇ|lMHNwSKVl@0I>7_кwZX3 }6|"5C[P{R(b:IpRW _t'Z< B{IwPڮD,X>;Zc-꽗ZR'lZ62},Vehy%Fz5uҎ"X@ֺM^G?XnT 9U 9<|ri: [؟QV9,Q\.@}ڗ.^oHGmL *:0|NErp6l7;U\rolл9Tc 8s _#mcb N5$X6# ,|)z> ݥ"F0_fI_ x_)3 At bH iab%q|3}0r(>lMyِ0]Ah\'a{#rw\cΩ?v Co9Xc{c."IVbNkHI'//5s[sy;1.q^:˄ KJO[K$NKn 4SLq6FLT;|/Oic Ez?J $"〤MJ(詾@X$_L^%ps]wv-!|/eZY`/P&뀔=ُ̼u~N7]Rgo?hꫥD%Y(g>z0/xTn"uN!?`ڎ[IV)z]V2u02 AP rHR@+Ŝ4gu$n\" c0SykZ^]J7|*P8DCYNADZ$v:`oХLUe /`+R wu|`{7fY݇ K5[`O'ڃ?-'o 3Z _&6"<&#{=Wnt:ҷYϠ"e@GN[EL*:C:GlxO~-Vg"~ w<j| BMy:̋&' @颖()3HO.7ɏ޹nYqqP~eqsDG;00q$ pk85ݸHdm3'fٱ`#h#e .ce=r)Cv GVlz!P>E l-(n{!DbV 6s,~ **Hie?,^SiU@&gHn- iz-`!p ̎9`YC#y*tfI 'uU3KۭWk͵/F ɇ&,a۲("j6Zz}"2H?$3ždS -aƋai:^O=4=ݳ*|ZQߺ1B:13s'i/Ք'Y*tjH(Jvf= +_1nz t>æ^Xr bHRE)_ro[FĎTKŻZ|X49++?7aǼtVĠc8HKݾ٘s{K >@ ”"8&nMW)Ҹ~׫-ĩ_P2L9U|t޿bB)P=WWq޽8윝W'*.$R&yRo&koXwAH#2ʬ@f1$;rߞOfܔ_f#c5Iz6k8#^ ‰7&ݓ\m$kž(vd,SwU) 's7l yT>d/ϝ7,T]:Ŋ0+_F#/(GYCDbWApk͘xz&<8e:/-գ_78n0zïT`&Ky\lxiŤmŧgX |"89/$0_ry CIfC!5 Ԇω2};RF֨"e=cm%0v$Ąm,#Q7L =3l:D\( [s -'+֧aˠ 6ЧR>cTW+Q_N@W+in㺢.z#tZ%mT6A=y:黰^m־ wUyiMyx~89rK!d}2``CbKPrUpѦyh' uSЕȑٯtEީĹʎH6eD?Ҡ TWûRNۈ )_9- plUL[h{z+]vM! u߰."58:]6SK=5Crb>݌ ұ7Un)vl8 =^l +Z%3H{kRg2ADeej#nlˁZ$mN=d]07Fu cNq0 :=]K>!>J;?_oDxZ"dO(}9S$N##DlGϹq|ٌ[@5<3iT(V߶_v6<`!K?YC__[n'7O.j!s$EK7YuNՐALN8ޮ M KgYL ݋xg}{\Y!^ndRE/_D;5H 4I@=ܘfy z^Xdt!|L-sa.<<e?xzQgkQKXnšPJx\?၆#:N=!pdLTˎ%5sA6%[oXUw+\@unkTr 5C/G'Gh9J+K?-kÃ{Rnͤ Hnt#إёȔ[:ct#M!dׂZ}j|@"a)>mδ46 פFzYV~NѰO%p?K?L9KHᰵ?)GEƹjˆ9gO!gPL},NvSǴbxR`=Cb7\rrRx۫tynwdvwX,2 .ύZ 4|rxUu_sv> l\~Tv-Q7KL6QAX,w̏V@ؽWy#7{ՓX^hLZYP9\T-;U ņQ QU~܊v/}/^k(rx:N{g!91\bP7-ﲵ|I#%HY$IQ88 `ߌ π`ReN$8쯡"owS͋=~2N }j^2R]~a*|.8sNEDimLv%pOJpp̾@Ca/ \va&V2!ݟgCN@I-][Y7PJsO{yuv<=`s$/.-s`%"F!iln%r0ֳp'Wdž?K*sn M8B# p%{Dt +j,ߍ5ckqB] mY(AvuWİ"KT 䮉}+Kp/5'OF'ED,{:~k$3)9w?l΅^NV2/=^"+BG2@4.rCpH?_ yQ}IVoBrcu8cֲYz;L5VWV냮0NmkEi%{+ pV?OnOI-"uR8#~i>DHK~l0CkX`΋MY}}!7VQGc "+>"Пni:e+̐lPu\Jfg{ wWi7ZD—[$߾dG/2|EM4t\u$D%X-@%ֱޅB}Bׂ6Ԥ 9_ǗZ+5 yZT箻WaCS*q*!c-xRhs 1p:n0Aj?Xh ^>9YEc)b+j3R]qqȤ)Pu02!ƥ H22/a -zPvYd! VPS23?xVϲNc׌qf|Ġj#3$?enN07WEH7iP@T8`* |ܱA`m:(CJi~^ $uצ 1F#AE.<x~ۑ9h#ۂ_+9, \Zqpg>i:;(m~SyKZNV/E]&y_mI駮B9gL F 5>JzgW 0E;x=g1oTTH>h\U""+ӜULCC_'9NBR¤qa˦E 0 X8T~;BK"&l4*"UT;d,TKz5#Z'w 𽖦,~YrAsyo/t+! G"iybon uV#k!q>7cx.N m߇H׷~|Au-:=m ܛ$eYY8+]w\F9ĕ>@(4 EL1dzw0 P S9G0{>E@ەA|7Y Yػ>H$ ֚Fa·r W*XAeTPOt*_ͳP0s1}"u֠Wמ6MMnB q4jxVI 9; T1,(+H!SzXj_y,Q|L^ ۥF~(*Q-N%}~ZD1{W Ksb3fV?k1G[|RsãH=Z4N C X2lV$ot ^ˌB|j85Y6%ۮD1+Dh橮b@@ }YCT*|n `Tz;1$# e Ҳ>SwG]23'qwk;XtԚS%y.2bWC"Ѥ1g qꎍ%'$m؞ڐT2~Ju宎w<;^7^WwӁIr1L+:@)Jg-6=OgV̤ץXm9}49ڱysB%WNX5S%MxyxĕATiՋ+FctYʄlj'̥#S$ʀ g{xR %W~*TX78gmnǁ+8\tL+لl69ѿ :iX%mjӌ5sf;oҝ)sg$Õ8f  Z ,aB]浓9|cV%B9)ϟ_M?s xM9d€:&uosFѥVj`3+^ R !gFcbQ(dAK;Ӫ\^ʿPq5/2:[$19.ExM<%Kq-gE9J &P1 fBLޜ ޭ$R=)ok^F}Sظ+Y %*/^qx&Vdt{-K2g5%.}üqE;CB@E|me-PNDYo a(gl̀oS6Ah"r{JAfs CFq6UVOs=\;'?cP:P Ѫ3U="`0P/ 2}m aQ>uGznzxE1&oO`,@BKG#M 쏥,!lQNGGJ)}Pѽ^(ƅK-ᾠ<)3q9/@G zHxJ!Ä]`jm*:I$mH&aJ}x|q|B-.Qp-;ʦElWPjviHHPsR]imA_Rs%' kP5{Q&WU;>MbIwe/?!aḆQ$A/MHFs.+{e6gvgL&b|btk*cFONOܧTdUkAg^q=Kt1ʗ'i yr}@sl( YsГ/t+a 憔wV* -lƷ\u ~զ i_z !w\%GyD[ĥf1G`HVMZ&*V|)4S4;|_z!&P9=FkΪe:)Np%-wGZ;!M? I9eC#:O4 <3Ykz+jchƜV\$#lƇuPԒ[|`;I^Mmesk@#妕Ą !y#6rAqf=8(?[ 0Q iyd8qV6lBuqZT>%7)^U6/>6ǓVgURmd8i!oƢkž kf5CUJJ J,q&UQ'u8i|N͏h=4ʲj1\lG MWCT1layDwKLE0Vd *X9? yH2"H^Yl$:,9#KmuGa UwC,ɥeh@12^TfBv#8=o_omЕ{=C"E8e jv{1=B4uǎ^{Y;ɱ?peC15b{h-&6w%E;#pE8Ovj7v<65kcJtAyLjKKgF/3#͖դhy_ ^L2jtH¹YDXw_ %ZӵJ 6D8+p 9pd.OJJ|a$h̢͕A"QqpIp P4_dt~H{3a~d0lV<8% ds?+4VSDi֚:C>X<8,8%NTt@lowF9EzߊO,X!(y"VdƕV~5x@XkW# )Ex$ (ߙvGOnP ck VXkq[ 4FXAÄZMDUz+yfM܈iL4C<~*D+ğBow朮DA8UIւ:K {18HXU0ش $KHJ>] etlVVZHClx R:LQ\+i|EaDws5LeQvѽ_0QoQ{h;F`R=ZW֟)i1)^0A$$ӹ e&>Tâ-C 8kI Dߖp'd^d2>`qUa~E`1a;m4j\YLF(_+A>k o],~LW$^1Ɇ2,>EYclF@/[k]!y>ԇe8:7:-/!*ԸÁbtdBg>(uUzӅ`ST]$ͬ`p4`$ 8 /(vxS>dW y ԶI61]Ո#=!뾙XJ]2l(QyDKVbr<` j,~QG<ִ ݞQ|X PyDU-Kk1[p)E7l)Tm2 W$['LI5{j~;Ӕ#ux  lW]^|+yxdV%pC̉.ܶ/^''Oۉ ʶl I=Kz&\N"`@)'=Q/K"GPRCYg :98궨<φ>S5fm^bgKO}݄Jc^ڐ.GwjַZo8%RZ9M 8Aq7A3cwj߯S Z-]+(vhb{|%B 4^S0;NJi;GktA@ ꖏ:r#|ˀ4UB Ss/d 6Ext -йDBT}" sݧlRRɽ}| $m S'Ȇ6:UEIrž0>3Eö2?j}]/b\_x6YR x<ç^Ocpy;ΓT[C`kFc:S߻uAH.@RsG (KN"1;t*+96Q0 FB}Lgno)ܲFgL1udFzG֍0wg& RZlT3䘡PDH2 ض?/Hm+G NMZߺ<{qB!:^kЃ``g[ eR9eJrCw:S1u{W'R*Fz4ƽ:GXE*e(ZQ|1լ  AU[hq\my=m.LN*8dRg߹"Wgy+X W!0U& d0}ī: ͟ib? BNO60~F{ ʿ\m3(~d7PF/a"0`^*ge U&z/Kr׋t}csxV6jV IҏK?}q]އ`1|(B@{ q4_s0;>j-a2GCK^Csm8t AmkX“uՁωVr/#9;d=St\r%Qp,Q?BG9Q&xpsk1%xjfo6.Β/WXSIF>oOQcaބ9 `@ivWrm=YMA[;:B8׀%uYj` C Q8e 7\`X"cIowHE=F1b8jn2xxh &cFme(XN`͖hIwR udԍ껧"Tc/ec@j pQt?f/UFbu7UJw>fދhc- ?E7cN@0b мtlFS8f"2h"GRbӡ@e0cYQf)D<s(68SnNڃ֠#b 8.Ĕs#"I^7[Qd>&LG<@rzv'7oJgj^ (B&sw=hH1 +6f3EZ0&{mp"vfCX4;HQ@Vg8݃\/L&lO{w`s8Mp4S)UwÓWiB] ? Ew"u\<HmԺBarei,!=p[Q,i'ZVrK>WYb%-<Pc`YYO ` =܌cV&$̫%vs*.^שj8sO?VX á||ppdوT Uu\T>1ʨ8A$1?(NE G]M@:XSN2j&ޛĄ-g͡ 7uZe]6 n<+. 8TZK1WʚL,u\a'GG k@*fW) 8ϷAG~v)̸vje0dƂa~[; K(1C<5U Cǔ,Bې#_o20uu2b9餈E"Ix>OE{^">-Q4"CCrrզMIQ8EZ†OB@8Wɚ HHJn#4f6%]/m@ITpj_(qQw}g?O=ٷQE(ؓg@cP, }ŌU[pa\L?c0eSctRnς|[5t0fr+ 2]%şFQFw0Iz 3iՏ{oOK.ԛvEڀep &_H3n)pyZnaV1"2B@劚b[=TƋIM%9 {JavMB-ƚcU]qR`aBSe,_f0v7-i?r; Ǖ1`O3yk аO]~.{m`#(W\) 9T+dLxX$نs35*Bl3x9zי B:l蕅9QW'Ҽ/pAu/j0R.t0Wu ǭXY̟M@xkV>.*_#;~ mY Ը(M/pizA."N'@F Y3+_E㈯2pVP7h: %w.XDnG8рk^rY:B/Ѝ_0c?Be ŗXXxY⌳l3I 1 9/O0=hR@za!:jwL2㟶v I$GT9lWNe.q*}sh\ Cޭ HvEofנr~T`ƙI,u)*QgI%㶸vstzDgG1qӍ ^VF4Z`&J*Bp~Ѕ$ jysӏ٪q3d^k2X:0wV> ȻYjr^.&ӷZmoap[~꒻R=#$[xqWIkһ^ ~1Miq2cK\7џ VcXX0.D*_JJvlu-E%Mfyp.aϭCߞ\렼N5N|Udk֯&:f$e?kMjҢ%bN$2\,PgrV_)vھeŴZ-^%Hvz46pcfs?`@@C01IuoK`nx'Y:t{,$'E$[@Y]Lج-djJh+6OBqrs3RƏBld>LXVo\4Ue/"AQg+M+6 n 0/- _ZC4<-QƚwI'(EZoӛ)x $cSȟ`,0 )),sPo|䁌:s[% !iOuPeE(  Xrq ~yqL U8{'dK )Sj^O0-ڥpr{X0FNRmnz&m 3 ܬ$['AlV $[V!YL/_6KRwuRG|A7gfAܴ ïĸQC3% &v3JZ,|ݶ,RFȏS'hRDS3m?%8k4n+/ 91T*d?W& 7TI#PqhIHl!(m,݋6 0yfheX︚9uɀS{W^eS)[7)6Se8PKjF1(ız,#u,2uMM-#1(4F: Q5זd퍨\W6tlHAlxkILc3Q/AfX2XCp#Hk=3|A&hu{Rn|؎Ϥ,D\o~N&#﹊6ϯbGB{X 6rv)s쁒̖WBY&Ev%qZ4O!Ƀ[H [p `oyWV4_c'\䤉MńP'Sjհ.X.k34Cqmp*q˽..ɿ=Y-7UI^6HCƣ>zf m\bC 7º@/|Wgpo ;MS?<ӈJl&lGNC+V7fΩvZr[d&d'˜hwqwրXU_?: m%ӳo[,KVO+;yk c?BI$̴zAE2_kDϟH3mEzs!t|l:Ϫid!T: m(é|4W8̢!~r2^>ҚTj2 0̵aTxC֬K_^Q?DZ/ǡ]Rί:*dkk++kܽ!v6 ^ir^ O~wDBlcҀʔS#*@hn]#Q^}Fsk~iεaj,&+0Z:4"('a/EZLDUܤG1*dFy|e J.i Cz^$݆e(i($r1PH+;b6 kXݐouFu//QI&[,nTPF#Ǵ3K`h[ޖNdWgJ,A{B^)ɿA8D%6x l7B8^{BW!&f)Q QAHƌ:RS8 2co8Gvk6'Us%CЍ/I]0db O_'auҫ&u=u M~ M66#?aFNɯL*~C$9bx CvîpZ-ݚ(0"eTlkt!afC~Z?;Ki#ЬL PC'kJ#7KrUz7u_imT h#ZM \8N%gCvR%\Cv Ӛ'^.6< m]B ͗|>7e7L"[뽵 x\}E)iR靆I%9 w!<9Zv!(8 c/y@(Vt-lCEFGwV=DK4Okl  ]W/}aSk{E ]3= d4a1nE^K2JA3HB/(kTWo&B.ε= C)} e$ݐ_k5SP[%'Q1Z{5?L l"*O' ErhIRt]PxIM*INǙ 8ލX\bA=ޠt4˱Bӏu LӜOlW}Siz~dZyB5yVvZxsiYPBAX>Q</z%C&2^n\YuvOq![t{Ǖdy8Qnc?zE&7>˖\eWBAM^@ EM[݌zJ^-w#|/p˶)b TafRx-l{4۵q6Z-m W(įK ?lڣj+  ɓkBPQ4&L}lq>0NE1{@jn?y66O3>û@ەɶA,p8,]4 yWoj&n9/;#ed.u.R%뺗@U iѓXEVF g70?6* @ Y]D^q/Ɔ[ъ]6Azj5C鎟 2<-sM `5!lʬEe(B|}Ph-,oZS "#>ikv!^&l K& 0n\zVr*Ӹ]}nh'hvJBpP²s}Ik//jHצ`ǝ NP(`"}D:BϚVXĩTAgw6TZ&+ 9PO`͏ue 6⒴H A }ɅBԌWܹy3RXfOJyqf% J!&^}jYscuي!<HrlOegz $BiD6%jh08p-h@9\tzta)$J,^kԸ*mO-FBC)- y,CϵѠ*6%o+_<  %9qt<`+\Aa٨qg9~@$]既EX)Zxzvy P&T:&X$n_vh #*kTnL.'K&P&0<.y+s-Gl>-h"z%/KatxAV81jZߡS2awΎ]CUcQ%%iҼ"HnED|(=$̱K? ZfCqUڋ3o`Fқ8jv&e"0|Y}LIt di;[2Z9r_J v {u%.M/2M޾oLgG}ñI=Cnriͤh&La?v .'x#Y-wi-eQ5rhmqogB':UGyRiian:`Xn giCn3FDdՏ{|0pRȭ2-mL;g+5V-yx ^=7@@'b %vM˴:Zr?y?ԁj t53;E _> c} ~e[ރ'ym;~eJ?tLʯ4D\@f[l}"vr/tX7c3rM>h^&WCx7G.]B6)L݀O4Қ+jq{5lJX_MEڈZ7[`[H+4$35IKv0 )Gb$m{#/m`ZYzN |g\$<^9x#[!:) A/{r坉bc+X ,D=mZ.T=UCAZi%1MZwʪIw%Jog'3D+|uA刟n| ׊Wk+gvQe7B߸ 7IqkZ #9CS;;_ה|^vEfYa֑B-DY#'?z‚Xu}hd@F$ $%¿Iag!ƫdXטIwvim~Vfk{Hcɱ;{L$\-N ٧qn`X: x_ #y*F9<ܡ*쒋\^a1*0筴 HcX Ixh'XJ&i^e).Ctn גZg*.Y>.`A [8RvLٕy=OҼ3F dm[WKi:>oaYW*F'xpEk$8cmQ9h-0"=ZIi^0뚑4,CJIUP- ټR?.JIxv> %hW9Т)UUjKbRb!IӇ0Đ~)By76ۄ]GY)s-T(mwf|S /$j?Іe[=Ĕ@i@"$wm>OBVi;4}ȫW];R?@;~ETk=3[mࢣ=jbth*&+Ր1ifOt޵c't/^0|iφ`_x<17U8!T@ê18n5as i48hq ] 1f1F UDt^.=tGxTӳ|_%zΈ0y-,Rq| ;0n< Ig.p啒wpeBEjy2S0xD.n{{__a0B@jf{ 9Ie=[T GC'WZaB};tDKL =P]5g!L|+<꫁)EǻOc=\fp+w}d/%qjO4uR;o#5s2ȯŻfÅ/.lԂ<Ƙ#5,zE ˪/Tw])3ᣪmD{Yҷb8eê|U4[$o%vOuqL?/k!@)OϽFP&n`tB#icN($ P 6SȐbݷcJ Asջcs1B42y7ensꜻrB9 KDxh/$bTLK΁N0F9pEF !N_Ue ]BBj?&"H,Seܨ2}zBT{ʍq"8x{y86T}Q6Sʩ!1twc+HH\igplspڂ0 zSI{^gcj_ uH= Й?-*kwI3IJorc^,MHN 68"_SV`=4( Ǽ#6AS+&ݘ{+N1uRmi ,(j&8`yZȇH1fvBX;<5VGjuL=zA>xGCW7gHY tfr{D:rkH [&^^|= dwQm D[T MѷL ֖zy.δ0Vr$[!dEfɤRKvörd?a=66%QLOx#-Oe^it u LJooXPQ>15gsҼ5xS/6rxH/5g/g6XQK59Ko#HS[IVY@DN=ׯ pWRFbN Ѽ"r~ʔJdk>-CI/{Ш>BT fݍe1|>{*ŷ劏vC=wDMMּ؆kX<;\6dTDI)&uvz1:w44Q&r?wޕ&Or&6TǰNz2nUk1D،J)'ە j3Jbl1JTGG~lP-~e.J(j_l_ȋ6."f 8!u[[0o7SY }ss;̓Jl _VxbHUPC y6rlF/NS >+>? ֑~{ϪM񔸰h7c?pskfGu8:Kl Ǽ@VC/N9Ovъi*CYI:eJmHA2tco-lõE@JK{JGRn( D 1ͱK Ú'hmf]=_IS'Sxԁ_lñTc]F5(:jOGal>V#Q#Jv$|hkDr7FY'TV~M(yr|鯋~'ˬӃز# w%1NX$YիOGqs?uܡc› 铏ySQM=BFaޞc>] ,?dă\~;h (m56X:`f3 @(⤧L~H ~#?:M~{^gx!E$q춴tUaN:$cEH2AdY?RC&=R"PKEB=5>)kaKꙎ{hJv}KzŤ|ϖ%B1+&*5T .ZO[7 X, z=hDv!-F``?-=yP`_0k>fpާ;"IgsM UDw#DwXJ!;}YX&R!ww} XLhk躼O8^ĒkWpթKEݕhIsOҨ1c5ȑ|pw"MщQtP)D%=A0SUh.\Ӓ'yjPxE[8\}v hw4fq]i=giObl}!Z]8V%ړ-"g@2tƤ|G5<p6#mb8P4`?K#l@Q97z1 ,#+}ԣ6jVVb67k9Z7[}Ф6Z =M(O6Sᳮvk)),J*yfŗXIIBLfy4PEIPB Hz}jMŽZ>)k`㒴9HHs6TD5ln=>dի%`;(؟FNI i!#of|nMry6Np:\dQ̞' 4۶=:&.P[5ʷb rF7 88#6ݳ̿K +AG>.Z% F]㩺P8)m.`$6:(o}nHE R=5DU@ >4U:C޹qgyp`{Ez?8< OtDNإSUVmْ ::>M}-S$Jg$B\qƪJO='/tQwtm|“ 2J{\ Gߴ낇:вxDhK~,c- X3ҝE],pcrN{y5 5`=U *l-{7dsRˊL,#E9B@(~~oc1ڜqŨ?Ĉ3 E҂ʾIAۤ(Bt[Knha%lwF :|LH&v9yFKV /ЎHgG1x'ԟHД ,ش6<6*uܭ/=@w{AJ#1%tz j n ^L}K҃B⠁{CKTydhJΟD8]=$YrMl^\;KАҙgC]qPYG2Y 9=ԯAe^C\ۛp Ι 3pL<ۨ%AjIrN@1!7IWee loJVk&: ƫ  vA`!AiKj1Ǹ3^[GϜv#1TM4򤉺=@PUZ+{yCǚn9]sb;e+_,t(Q#X^\| nû|^M 9ޑjuOᶡR[(ZhPQw pNʚ/SiIK"b%wZ_ӥhmć=hf?Q/IcWLbjа /rvLB~aLN} mѧ)0,̼!y3"])@V/0?a);4p?jw$2>k}"v RG_Y/ ?Pʎ2Y]'̒5;QLkѰD.uŵIWw<=,[C4;sd^a \6{؎*4 HP&Wv+R=f}ߍD5zi W'735PE~xPF|م5fx.D|z N(IniʹrN%xwġ*~;)Ԉ=<,h)/?Ň?}kORVL\T6(,iB_jZ+-b4Q < b&đ.dN+ԣfǡeH$|H@b.׃6/9}7T~bGF:lz:3m*{ jXOE/jA^hbf;U;KT@4Τ1`;Q:9T6Ѫ/~Ȑww+ r[4-|vU8 ] o+ey48ra,S:3]T3$"lez*u8defPv'E[m>"/,!A(@}? T{*{^T`#*dY-нqJ*4j4 /#v>0!EɲZ *![['s }ߋu`4dj CY{%0E=M8x5d^'eUk0, <@ Yʍ`+rU t<q/k5.-uc|z+&Q@ZKK{ݣUHLR(dB7,m.)2 r5Ǥ;U! @LR/ݻ P?#v.+l,̶lQ%=dvϞ7A0:| *ACY`f7zD-Z,}^Op( in$hg L*#Fbo5}vR=6>ej&m50%SƩ#ϻh$D#e\7FYue5G,7_=f ?K$bSMwY(++~4Hk+iN8dCXLvPMfs}tHI< H4!ًN՚ 5W6dBSX[qg>Np2A %%H EO/ioz%!wX7baj Xm["Qza#9ӕ:9kqD1`-J0ˈrD8b-{?P͋$@̕Gdh@Tm{ݞko!rk9eƈe_v]ۦ 9TlsU7( k().!HVGHL-5]7>_Kt#tŪt_hǞM!DuZ v_S*律 K [ f%O sȴ^RjQo$}+\4אΏ': y9B~h6*۹#ClP?s=z%_ zl\hMҮU?2CU=|9^T _>#R_ZJWEoU񆂵*}oX3vsSOyCMOM\jUh@y2)U)rSH1' >%YylŇTR~h C$9,(}`nDtJtG$]jiA5~c}C~qX/՛4nv#kФCtSEHy %%N^f 4wBGV<*-ZˑNuxm=4t1+ Bf:B^~THMF%ov yxo GyM !#1M'UdMI>]C^W% mdVb6uk˙蟕M_PLVg"p_64)2(.%I 69%%H7Z`-x:Ϥ B,b⇐T?JzUQ}Y0y+p'>~d?0-0$k,'pϨTlCH2x4t{?1j}d}),n*/M|\҇??t=Uܤƿij\S_ ]/z~nڲ#?D![к.D<ሤoL̹G鴖%IȊc8Ss}nkjFItˮm~$f \cM 2;hk`JsXx!R>[5^R%[zf̕ lg9;Z;k}CǤO6)48\xgٙ2Lgn!}Cug7>6q`V l2aٯe+:{Y*Srq5RXKY.X '\xi +" Z(TUIWB\Rkym kh?BURA6$+ZA3"R:n! ӄijDž&}r p&|U!k"-?$޷#8>It!A#] rK>ݺƿE1"1 -[r=Jt-Ok3!U}N}t)+6_) 5{K__6<[D.aX2 a<4$v,ߵs ٥-xFślk=Cs}<C,/ sĬ-BXWED51弄]i9P}SZأ]ﰀS!sj磢ۨ}1EDyJ&e׏qӷ 8big]Z=UjGLnM)S*/xkR솅URvJ★@2emkG Sș#S'0k7QG{jxwү03+YJHr&~O)t;1j†OP҄ /1nՁ DxL׮5h̶g{^?Bi[糕ޤկSE<%]_5.(-l0N?t܂sZ=Fo SXl*o~bɱ_3a~nmDCv{6#3l(/!5>}m0!*V9ܬdgӄrK|8> UY8j6׿pERq݆ѯG Zv=lJwpoMvg~cK2i:09ϨkX%By0߫QD+H%KqႾJW,@M 38 V>8׃1RBb:h(OL&704䱯b1 b*@䜁\x/{m奤Ijte_GABZҙ =.WB@I wmȺvs,hSl}4n]Qa̖jdr}D-2j'c3/5l26uMDs  ܛTZ3ȟ`WPrK5hwȟnרztuB:؃ LW wk%Ί+/N ~4{ oƊc̹߯6W_QE8\}}yQ\ 1]j^U0ޗ(8||Λ?OL-9'M ,?lMr[+L%CS4A+1zpr2seE)KDw[Hf`sI /2N[YOB-n1h7&qiLM$:C[#X!CVQ7ȳV ;Q1NY4=Uʉn[pFC GX=|DžqѕSΞYMLu/ZXEW;b*έS =nq˪^!SEKbcfV<@Ԅ~reuXIդDԲhG}lvVdmtpatIm]3|~E8a⇫]I$IlyXǖӒ?\F=7io~lfrbFFn]THtiHi{UqJpRlT>5zamf68gwYj6a֧aGbz_8<`I]Lf qm 3-wߐα_MMQf%",aD7 ~1*@$+|Mh`=$-k ;L8y H+MvZ+̑viR$ 8\9D;|f>% d9iv~k0/|^l%˷Xn4cq )pS_"+ o{٬s:P=SvfA=s`ek<_yE^e.+|Rtew5.9L-[ZtgG@B_o¶"O;_9Xow|]@1ȓA67y[=|/Nzrʏ&bRd`:cPKW=)}Q~ﮤ܄N6 svHWd+=3쁉k1TԞ8<<ʆ !CF}i\ՇIܛ̤| '81e xH:(iD9m&*/p@)=(_wTnL7e&a]T?͖;EϜA{,ȁy;)C-pRVNˍےŀ|aLNg5zN8T:0G7].?&IJQƣcr =ʃWLS{ "h5[hQ7Sj #6$?;s\fa%X-s;4 8F@>n{mTÊylFDR* FpMXm%gc<ϲOuﷹ廛qW͑Uccq0y^VꖙSƋ܈@Y6ecFބE]֙V6G;U 5,ޥ7{H-GR`&ݷ*ZB3q/>&ck[x,:g [&<.}5% ,,9-ߜDqDWAJH> B F2 xI4W5(C֘:^_]@1wB!pGվo94<č;#dFsKĢ6 1MK5aPtrÑ'C CTF\߱[`D$$zH,SvIv`7M9 vSZO۰jPmw:UθleAH˳X 9󣀉qs<~5{}`GLV l\/zF 2}#l cG#HrՇܯ#"eN78G嵻:!Qz(K7"#TɌzHT&zv&4 /`GB35HCF@;*ۉ.ʍv}yNL峉 4$p$4P E6\}ZnB߆5rndK6ePǙ{OVyɚva+m/H;=3)<1u:X ck[adm* UG?ˁ'_f)ژmvhE6u("g .uq߳hf6l&WHZa7QZ__Q m|=`}'YѱZ;gɌIRUFxģPyutȼ@zTt`<T(*D ATRҢD8{ otR@#] O_FURA}0aJG'c@z?{@J4"J1dl|= lG;lS*8}x@,2^rwzIo3R_/Km=}a$FnY%Ǣ!- ;\eTI}w$)0vό}l&ޛruMW)an4G<x ܺMeH5#- '`WCD;0R37Jщ*ӏ_#pS]`zEdR7nQ@c4|m:7P t9VAR2/6uД¥&ERtPlx!_5_36z E^e<Jw6Y"˟Y Vba|跳₟&?$ANN lxȜDbJAimr2?Q]o:HlȡФkd8ca@|ne{t&h_"vn`Y6* )f1^\ KJ:xȉXv<lcD="S #Rm&1m-"+rav@$Ybo2-5ڰHOi!J@bWjă >j+hq,,,WO晗vo,MMǃ0zlJ:48DXy?v!|wTIEOX8P\b̯ 6]XO@M7|e`lzA=.W)J82V'EA|cv~,T.{ ֢?;ߊXoB?ɝ+cMsn2ux&TwM~τY͜rv3F }, ͵erkrhIw{r.P s`W $JC,.}R-6ER֕ 8ɢU:Ĺؓӷ_ux0?$ G/ QFoczQvCVي7vW20D4l(D=4%T-w8"nՇ~&v5öY.\!#ZĥFD5t,אR T }pxZFK6 Q.<&#]݈eAɌZvDKh0𤸗Pq lgu (QWD "y؛u?0זf0YVa& <ڿ0734g n9~;;ȯ{{'I&uCjLOOVNK"ܯR>n!p 1?.yEG3|6Xl7tN%bV=!{mR3}rpn]_Yʤ\ g܏?6ŧ;ҁZ!a"mRaSNPPXI8]qf)˲.$$Z"~۷ekK e۠t1J1n0]S9XVE^l/O?a3Tߵ˧:陉)"bu1A˕Hj}}yǖ9v3E#>eU:N/i'@1Z h7k.jbՌ.<H-JT pqen'|-ڽNb=1m@JbmH_bDԴI`([K=7VR=d,TITKދBǑwTSMIga^$-7123+'ŬL~(ٷ#$!^ Zm}VEڟ*f4b3ڔ-ee(bWg)XąЈGJ~ oAM܄hlRG0OJLD1"9K̸' wٕu,YAeL0>@/|hp'  KL,H@chXTfսR!'jHE aOqHh&Vچh1PS7,.H:?S.n2GpK{z*sfqY 0Y> mw_S̢GPǣW =vE^8cIUX}1'%߃btd0U"NA5.AcrGr ~lL9*xo9݈~s6jT6{QKiq@Z*۞N?/?<*v } 3a]ڪE#{T) 8Ws U -ʘWPa"4aG%5V+hl/ΧgFZ2g@"$}n5a [g{L/m}÷{à+iRχš_; tWAP_jiW|\exVpQjx猼Ѱ-ճ& )7&_g*$z\QL$u!& lU.PyD-o7>fVD!i0gmF/#{N2 kލZc1vx r ͧ7OhKޖK>3WQ YMRV6fh%%bDՈWUx'n2/ej7ѩc7XC eͬv0a߫ ;QH>msvR Ė_Ҥ}40iʹv1F|??Lڧg .Hmϭq2f&? g=k/)(򨆧VKGu]YY?3f-XCORn99{Թ<#Cb QŚfR+l)bm%EO;b c0PzVs}}V/ $zg(\ep`kM rv?i<@ s)m#7: K:p*ƇOJKOd3T4Y>@B+u3BYUrwI3L4N! c_'C d{wb/)rm"Xg:M,diM΂[D e"8\t"+y jI[v̬'%N>bԲB`ᏃlEo&_p&]eso!g׏dB2i*@"݄RSkdy!_-f6_ߡMW+I`? T=>diR/t?V0U"Ub2+pq_oAm1F15\xXB0R_&*T;^|@QAOXC y^s:=EPoAdz=1sLEOsy<}Yfܩ{vLD7^re D"@Jc&j<2č䓩MZrPڻGa9QoQ 41I ;ev?Ȅ GNXi3ϙ.lvMs~`shOdN$Xñͤλ]R r@`FV-kW&8:\۾s[#jnXx(yNIVX[=,#5qzx[jJop+!. dh;3f6AT3\Zj>>ˆ8Up-jí Rf*(0K]8GwLFgY6| {rǻ6 J䆠a%BfK67f@ئ6M pZ MEkp} z'VEvkm)12#[}t rݜ0ݕ&j)Yl}`ɂ3kM}Uaj앥F6\w),u5 as\7+"|!,hH?ݙnGWلD__ZΎ2Q=hBuZLClFjv .~Њ 05gCL. ėѾq؇'ۛy&[uN\o-[׮Oo`_eacv񔟴-@bE+?鲜HH;)7p' Rb ` uϯ³pzhL%$/X,2r)n ~XQM/y՟-N0r^;ԏ 6{A |a LnK쵆IDu_ , KۚX9%"5p(@t?IJ<ڑ6\0#-PV36OaZdpK3^$ՈC*EY{ϓЦF_ T4~Wl7 ,5%T)ΕU|KЩ肔U趏ufvVoQ4vFSqK^= j#ef"IɸzWdHs7)/]T;X~BPD97<,Eu._WY=O65-^uQ5Zmj~>qoFp]gN7k4ƹ=ʠ2k17);`9%ʋ . B,?!7<8+CZ~DM!_)zȬ󁤸b>)+u ԏFw HN8@gtEH8>mY}S,nsXQvֹܞYi n<27="κ?J7SG5+,dcg=o=en~Tj׮$_3=~U3@X\ '+KvmP|;<팪O%N܄ 9V3(*>6LGj2 nN@ +J%SUkMygYxwU2dOBbA}][q,z3E?OqD:#zdDqwOtEs$yT#3]*&eqvumS6vvmyO/H 癩RCE؜9Y-jS-*2ñ9 C.):1n16a[km4ހ{Ĺ] %NAdXa 4{Lݗd4H gm=K<3r[;G89Wx8@}uo&Ǘ Jx/~VVO]K8a1a_ry/efs6}?ܐ#NꊂK (MBN:htꦉ7[Z!Z۟8Jf?m6'pn[GUHv(V@?=rG3E?:&Bw2ư-:H pĜ1d=w8t5 .dJ$#p]*)wV*R ͍%m]{JS[똩r\?ML|1q7 ?g3$OiՅKw֕T(:0XuL}ogvο57r.G'KW&<ΌW4wOC).1 $ u{Qr<Gֵ93SJ3aVB-G7+l'eBZ߃;Q8::?)My@0£SQI0nó_6Y Hr{ }n׏ 4ۿ8BE& {2@ݯwN􌔗Z $msE'H\8AΥ.Fɡ1B6/\pF0:ȓ͒ (̭X^ Nz@ ۍTR Q︧^{KMzQ=Jϡ1Bdr1b"V{z.=BdB$N J޷;eP "C8hL1'oU86Qtb@Ie;5B'ޯ;?TQ\|WS D#oZvot^+:v/AqH kQl=a]FrÏgbsd&{^"\q;zeTÒ[qqPݛXZ%I,lLA7ZP]+OVz\L2'-m#WrLcnq,CZ23qqӠ5fj N3."ؗ@TC})գQhswhysVيľX8%ⲽͺ PmCa__$oɻEުV$i6T̕)5N%7)p$BzzJ^/ZYOT~,O:8\ZGAzzDۭ绅{$U י` ^OIbdJ`%>ڿ~:3n͝M]DN%:ߕ_^W~1V\ > 5%3q2N*W; `S'8u 0y[*H;Izq׎I‹DdnK7>S9VD * m!_áxǨEA'9f$ū@l$_Ah O?1@^^PA8CpDgCA-piE_RoR QgS~H=ߞѱ>*?C%91~`s٬)s8:ގG#31;,Y,/=$6iJOQ)'efSg7IM1Y :$7L.Hʝ@z#)'F>chdKv8!Ji汃[?FRh1F~ࣩ .80hXht2*7{_#,61Hyǜr1F+yY! ҮEGM7 W{νs^6qqqGa ݿ>*kif"/& qVP3ǣ*cGӝ* z jH;E0.Q!ХF>{RXŹ e1X|d矣? P9GTA57- uc}_@G#n6bWв$3`Azr%={r&|ef 5?V;;[t@vpEMji;XEp'UάB9D|dO9ؼoѐMK(Py Q> a֫PY~'#b8 Livqz7[;h7-W:vd *,A~lVbl5iO$tcԻ{ \iWJ_fmF:<ܜB`.h*dw< :]GykB:i#e)^qbd2ǵ4V?i!vg[-3:gcI|B3z0@$羢(s];VG*]kmnV-[f5Y6?v_*%ϊ"EUdz<#|\f zðخþ+6dxiYQm^R4TiNt~,aľٻ9]hgl@^qY}^S8Sz" mɴ=.mLd1HďS9%W}h;"k۽}y G|ϭ3&cfBl2Wgi Xm@Ce)90)ԯK0:DLhiM$aօD5?nqNN #8f"[]EwD3 1^ޠ'3֌p^Yŧ{5zvDoޫMſB^Wb~ti0⽼6L*8UZ#0Zf]-[!#䙈)]u/MdI k EY]ɝvLUil?L}S&"Hq(̈́b󧹝/5WX<ݷ֢+7)U5i6R.*w}{%4ѭZK0/PiW|<''@7S JcOi>L~?*S~m GKf$HT B4\ ==o'*Uظ䢍@![X>Pr#^VfA~5&WU<&4FVRVX݆mf_Ș$D,9e)O* XXvԦ Nd"JDV}q_d8ns4+z.Q %c_`NHwu/Yto'J'5۰}Q' kڮk{|Kd%rQ(q_|5IoN^csrsvVr,\Bm,V{ Vyneg3#\O5ZЁ~eƊYMSH.̍_[eOEgbBΨԂ=a>ۺ6viTkujnWHa.ht-|<>;RxA ]Ss}__֮9_ )-5kh'ZUMm#t?K$xEBJ~#[5DtS)Ұ7tnz>^:/xܯ\WnՒ|G7!lA*}9+@󊑥`#-sq+[!S\H6^Е+Y~V*WIfsIf>S{ F8-35[K&` 0!&癝˃?1B-dJ3^_sb̒|Jp[~^$gkxMdPWG@=N8DUhfC gh];`4[i:YZOTj%!UV|o4 s:yL^q}"lU v%$yVB&/FO_Ye*2F1Xu7V; 69Cxځ(ÕLJ}ҠF{I!՟ds1JϤ2d8Ab6bBM>. nu#X׷&HAf{8KrTr( krSJꄓJ }GME,*G/Aw>bf嘜nH~XϽ]rB{ aX7`ɥy*:`Go+a{&݁Í1Ƅ["OQj~d7|?koy9?R/+]z]nS8YF* "pVH,ձk5fTb"]BCHxA%n*+\dZ\l|9pSzOsӱPTz5۟T6I{s%LbֶRT>#q/ֻٝFjpGLE{ sWxi^@ElBf?-s9ecEy/xrqqB`Mފ1B_a}! Շ0Y>/Lu:JoDY,j SF?,U!\@jZ β !H2dJv^Xg&mevVX@2FyKPxr(x{Vָd_>X8]# =}9;N3:4?ͻ1$ ^GB)F3?$Iz<!nǕQNL lRͩ^qHlIN$Y{Zw^3 Ue]^77#0Hj$<6Ц U)%*'cDS7D˻v$Sx,F;o pF1aQѫeMLy*:P#[/ž!3̴675&>c^(p ٿ%oN} uȚp=#|j٧=@7+y3>s[ C(?֋8}_'֪ |ĈBz$saj?$GkS~u=~_,]pҤm`o4y!bξ:2|XGZ4,vVb{^5?@6aMLr" `mӗVkײ[֭ɻTk,:ؓ&`㶕ŵ+h/=d]aN޴;{?Z/^l@1j47ih݊;'qSKU&$$&7Cq9z2]3ȗ&Yh _1^ wJڱ~.od'Ӏq4| 'ї{*&Y~1Vڊe1K(&OV\J`^apKv̹Mӝ.г!ь)L( :zL$:ldLwg/iu\ & BTP_RNpK/'NTI[+ؖ#i@]@5h^S˨WXRzl3* JՋn͎Hls<㈑EKJ,CX W$iIP迋靷3Sz`}sI:#'%lLn$,_foQCR6h*&,j`5\<^mNB,G`*?k+\釽LxLj޽zmhwX<1R(+HI=wrhAtdF7a ՘? utqh8M[2Kߓ ϶h~ S+V>AX jAbPNv 6Kl'ci|}!ܔs>rqu_hV}ӣ?}9j/ޘ7آ1_;UURܦu7\ڌs <j,lz,S,¶هY"(3wo=y`\`4])_:+#>//JIzV/=qjacO$l`WC [a2Wp+/v"e[k`gQ,}F- Mm(Jx`F䐷'ԜV:zkcN\aEl7D`4mv9"Mv/q>!rbFM U`! ]|4TcMjjbIp>,aI-mfD ݛ>i&.olm⳱ȵ4of Gwn!RD XPP!*-)]_Vs@L;h+=A:#":X %'zm'1=l$AN,BKlSz$NڐP_ja[K q|VbYK9¦G7˃,%o.8^w {xkOg$] r{AaԙMKe1}18|-4q8I)`+6tE,$9,*Ridˍ?B3R*s?ckåpm&(e*2Ô4AHl׉G 5#X }ڃOnc[!E<܄XÝ|kQC| Әܮ-fa}]G4@~\wOT/so]Y P؀tXkA+XqЍ6 cZĵ)2;:Vw Q hwO'vS' I N_0D(nV2pJlq(x(чGt[7s9Câ3o9*E>``B4 @bk1pY|<\ Q6IpH<@O')*X9{Ncy-Ug=zZ6&467X|{L4g7Cř,m:(,{$>Е4$5=C}^ ̒M9XuoLKycHflMaz7E;U7CͶ0L*2ʮ5Nq- h́ KG{ }Id5ŲV:NhUn$(}HwY@9LeQzɟq(T&)zCgMt;ѨBj6٦Brb ߐWBCNJ&}u㶊!NL闀29C.V-o>唃Bwh {>[ڮU`띜^O0QmB,jt\?s vU R|G=exkRt++65op'0s8V*9Ԗ[ȰrѦk>d&l{|<ػ=;P-X hqkg"o*1g'Ց8"orH-1GT:.aBi[ ]UO[G_|ǜ{J7^?iE(hE7:+I =aA7SN|9 3;7(= Iq,x^hJ>>OzO5&cc>I(N+T覕% !rSyj=y~ˈ€BzA>LV%^(}zbU)z\TA4T()59Fe'w7RBq\NPFBbIl}FJm3v*b"l7ٻ`4n>SIEi`:C<-=jPK[dːPC(g}t%eH3dfsԪ 1boru^T!L63<ϖ֔9 bW猳OO5^e)@ o{ ;8T{NVAgC=MNh{5aXh{JNIѪ^aԨ*U%5!K.Ƶ-V%+%Wk,)sϽ.e ۙa-Ba{OS;Q A; mev(R \3WX!?Ӟ !BT(3k02Q]WѢQdl͟*"?֞®Y[w3-cn<_fO9Uv6M4n ؽ,Iqh|PG۽K07BylgwT[C:kpr{yž֞i':9V wAV"?`{5!` GL$+v ΃h딠Z* |} ^M鍟t`)2p/@W|"LsAˆƜb| /J wFV}Uf;0+} g_}Kgќ?fb1[BGߣ7t{atk䏲$w96'T[OR bcp^+glcq 7x bM GliVa'V|VY90t )Ρi4HkjqzD(\aU0qi"EӔZ>a+MGhO]jsrJ`Bp?bE|)zQuF~Y v̱6߉bcI%1"gX9X y?YQ^0>+="{cœz1*a]̫E MYꨪ: XMh1coWT&პ=Hd(l<J<\tgod2!*VCbQ5e5 aV7 IfxsqrH!I^'LK;Sp>-.wƙZ"U&cg_z59c?_V;U]Y9MLՃ UYF"dv% o5SG!2\t:%nbqumyt5 ><ߗ4+ظxao OICGL*;s1v/Aͳx$f G f!a)H-ogT~~Dokzxr_MKjOV7W,6 %2zC x{y/ 4O1bW.!p<_uW*S? 'tx l=1+vZ 8!,kٔ-+wQ?-ә}$I` >"Ջzԏugۀg:[h3&$N [wJ~nR&+V55c,t0["@iCF(&LBFUT SF@fu6ڼ!C/")eG8"5lW᳎ H[F%zrGd( ڋ&i6kW_c)ͫ:vDdLw$bQ;1 j!b,6Sra kAۏ9 GnҊej~'JM1[Mmg#UlpT7Dd=b;Y @4Z5/i5e34]*ЧN,blf=2P64) ĽWHRXSlxp^`{$}$3}f臈OxZj SyL>IXda09wx(Dr:Z+T^!r4l$h,j/!GZW빨KSٶqe"R֩ Ԍ u`CL(='7)R t2yR 0IijlJG\E LA;k*x&)z,Wl=%u fЁN995} {Z kkq,QHt/޼GF 5+^*AHAeϠ|kSGaԚ"xb,=XAA+A*B;U0^b*e-wgX+Q$tnH1" $hmJ-Nq*x"?TYvK˓c85%uNM7Wؾ }@)F} DͿ$=+y֜hzɮP8V9s˪79[f Ci~!Ԍye(|Fr. ,.; /'qM|X&Z(ThRCIjWcX'xUP04K+&+!ޛ^K2FWj&4Ww~b02tGvFHHKP 46<ȶn|lFg?;@x3|掿O 9]c l$ DֻdcnMe=:&&cڷ "Ji6_3@95EzH;6F{efx0AG|֯R'v>t 07z16f@u δE ̙=:9љ$ O×^}%mb`o$VK?.+$#vo\7r} 띴S;p-`f!Xc5z 1v8Ra\,%k>͡CC +kRb@PjUUtW*Hw|:if/sN:^kn}5 y-*dCb6 ڏ{NUj9^l?lާBn/劝Dp->*2~$.1ٴrjRi)jO<V"GCANȌ"Y'ٖ1m`+kf3 |9L|W9k0F>` HˠT yqNFd#Јq+J%#Xj& I<+Y[ tG= x0P?݋@x+QQKEڳ-{o2t}l׋^-4p6,aՉ%#dd$)Yb b4; gVv揹\}ZsFrTrO@.]J4oێ1n -Q4[P.첰my4(Di+w) I=b73X M"Ayn+&Hy]LVؑ*>fo> BL,djkᘞmvsO>,AAWDm/,fv8þoL_UvK)I!=cȍ'._5+nĄot G"6]/t# dStI3+K<|73GYf2]VD48M "0nT҇knrDwo#pY][퀰fGg<(w6^v:G?X<ï/d o4Qg{kqក-+B!}c|L9Z5gMrv0p-L)PVG* [S% zF׳t+O,>Sc52qƹX% ~4S3 ̹j^k;g4ǀ9\wH"Gލ杫lԂTA2B_TrPDLJ3ۈ+͊tfRAȷY`v-V%)?tΖ0zN B?`;]v { xb/#bXY/^-EDoOUog;>q=8 / {EIX5 (0ιZr_My ZY?37G,Ђb;`)>sn ^$5-,໙h k^a+aumIWBc1Ƙ 771*?ޕ_~|?fYpm ! "+4lQZ𞡩85,߸*7l0<,dhk}C%-!"~;e.4ltN+9[fU4)^R|{L,R1;DHFoT+6G2oBx3!&E j1ߡu]]A>0U\dEd-Sˣ&aa:+;'s{MqQkn?euo֋rs͘Iqjy)]v>N  &wS(Q@?G8l*+lc|C| ~t7N${\v15;8΀h 9|llňQUge쿐Q񸴡CRZU!\+?$du->MoN8=fe`D<_3LdoN/.3KYm; .w%?coX׉{`1ws;85X1俨(ԘYH==>]@6s b5*Pۨ Z_Yx& LGS2 Z};D; kyŔG3qzn$pM`n\Dp9th}n Fm*$: 5iʌtG$Vn$uX&YulArma`YhPOǖ) QCS yr"T~au7E:ـ.}Atihˤ7,}h[t tX~=ZG4UTQ JwUiS P@wW&M+@5zN~[ պ fk11;p0>֥7؜s;rE5]<}WQ4y9v /XNA 3X;.*ͳפjDTjY&Z|q]Ѐ]}lN s?>t:#GP SˎP?pl']x{a?oA v,+RpaδMs5ROJ?du[.,]eGg9^tQR`@l%܌.e=O0V'e~K,|4O+.$)Mؐzw5;0ϛdok9"h^P{)^.$K!czP3lNjY0vG)]CCYa1L՛eKM£@%2=ڈhC݅-BB Zy_Jh,AL`*Ү#Prob?/KX>z0wrE.xi )Η]Lk܀ATpewut@yR.#? WAMwQ :ynT|e0(NIQ_*>ym;-: -vOG+| ޥ^cGd^GPFfZLe)bDVo՞9FV 7a]_h&5(.ɢ.°|hWՐ 5bWwgi f'dzZ'*Pe] C]ǷwtK ΐ8Nu^Kr "oMCdSD"Tѧ1\!zbiuRdI2\8O޶V *YV%:JE9]cңwSXaKE`6 ;D܂LMN%[-V&6J,?m~iECT9%S5M18̰hKPXpE}úЎ@?ϢSP4#3ȽX.xy#|4mKD*' !~ 4bCIXq qm񴮦S_$s 6AIUu水\[ٍz.J;qh* N vJpx2ؒ'xb]Nᓝظvo{ɠz&dόT̔G7Cik#o!vw>89q#X1qobV01[$e i$cP(RaarF!M쒿\j'{˼3gQ PFҲgE^5|yIM<<w\jm1K!nHvCZE9;T"haE H4œbj !:,I2o;`~+PW4d^]0^+TmkmX$3!?: s7 OJZ}g#lѶ}6[32\ V1;K#~1gc[I#)I^jؑ  Hױf[v2N="uB)lBm Za1oK@v8&wtt }8&97!N )+J7:HYib, S8 QG Qv)Ƭˀ"͠vmщn-D}j:J~ aݕUd.:}OϔcQo$VX?tp +az\-Yՙ s NZ4 F~_C-;ck(NziscNR\8Ef֤ٸ٢~<%y'r[ HUۇ4^;欰~r~})WR;b-;L88A*+09H,m`\[E HhK>VJ#jt_*R`wzf]_3ACl#&3a;5^^{KSHlҗE1w !\@d`+⿯eڑ7~C}!6⃶-{Dѹ+CS'r/LzkJq;L׆qgF5Wٱ4iOs Yh}M(bf=mi[Iy M`@۵JR=_ܙq1N~'}$ dh:4*!CwaM6∠4X:^0X; )F:Y!TS h\rNtJ[afwEaUV04Bͮ1#zjPB<|X:\ ?ѽz.H\`oG`~ f[ߙ4ϣ~adkHEQTF'Rt0S rʋO@BuV(b;V3~%XJ0y9cg%ȁ< Zy['W&1<^Do?=v:N9FǏ>HWh2*@2}W%?[֯39C R +?QY Y[zZ=%[ fM׬٭r*cPgA(J"ImO]۵%R"O|#MEc<;kjwi+V޳!"1ڬ3yd;)/S l}Uxu9ڏ(hbTA$bPpdT=CKw\~{%Vm\5mIsI 3A=ڶ(Z@F|H-wW ꓈DD!pB6 2@~pDi &b ;Yr;[w@W>rk5!KqL,?1R=#CYpnӭ]p%3K^g̬ӂMUZg 2AVMn`$x(e 8_89jY-ץ*: }t߉io`%K]&vT׹؅l~Ú <,lۭո˙2aes@zcc AER8Jb{kh (Dp\$=!Հn|tem "Hm|#D9~rnDoi` UV๑񣼤¡;[ Nqb'`X\?ReH+zOWu"yÚ k #J/הm.X 2CaT,zqf Nb$.0Q+F/Y}\΃J>9rH@>FpȑQ.s5k|32*z8DIyꥳ94:X1rM2yrŌn Hg{vфE:I2$.IMR'2'PPF` Ädr_4d#{@+i0'@  v龇?yꑰ:\Ru1drDK `vI~,?ԉݚ>"9Ku۲u9w3glHExGB⒦QL릦{I. }T\#SUHæ:(3{ :LoZx!V* 8a [ԡ&C n$ R1EZ.Q٥؛@LV(:ff[ZdntKi#:2 YfkY& U2I~ oݮp)˚cڳ_pDN9頺\ݠPpy8 ˇk&j{{[Du}x*n`XyȧfF,gdj"l~pNCy"u9u3k~(A樬ر1+l}p"a oWzTX;[ aO(%8d3*DJA*l=`Oc *cMsj4ٯ%)P2ce%1}3h[:%Q,Ueʙnݫ. 6F3VcMwE~M丈G[L,18*5/ӎ|b`HBVf:HxS6@즽0\_I!I1"GO>u+x6NXۖ#L*+LC'"4D@~Kc4%%o[cxl{C5ؼ?̮2mp9o;W=tGcTbg$wD.ղ.؄z2xq=u4]`⭻.O̓OeAb2ܴBcrAaba6B] u;W=ΞycF ق\>>B3 s8{ Dt|? l;_^vR튤TY9еڷ)L}@GNJi鷊@;Uњ0"w\Dt#dK=!u#Z`/EiP[*WR=UZa|-N%>'wDje>}Os_eDm6xwqY/ Ayf [tjf{!&ځT`Dܣ86ΥyҗI8i)eV nͱAך z 9\_LY[Y2L֣7$ w?229KfQ{aVD5 #@k_< C_tscN3ӆChA画"Iq> |ÜzPqlMji'r22bR\ƙFϫ{UW"OtdeJXyn )ECsdaG6 hf+AJM雫z;74Z w=O kD$}Vo:-7f͗Cy`z}W ͒$DSgBD0&Y\B`r`<5SS%.8Ab'2jO߿_Ÿ_0>v^Z /=ʖ`>`T:oqix7P;HzdmQP[]>/K`TIWYqS̅ K\u$q`b6dSf&dkE # O!VKKqXϯ*L8bekWJ)+C9W'ǑǾZ֢p.'[9YwmDLvuXQ$3/ʒP7Jg&g04V^N}ۡv5 ٿ^#AxoXWQ{YϼnBmds$6Ezߊ{ׂg7^=Gr.E^54)\nݭ:Y$z֟,ɎUy= 5yqJ<>Q/2HFlƟ>>)^$#5+l466g.aQ(+y] FJ@fKVTd ~]GkeL8%CKM9[}2sqt?Fҫ%cqY8.C*I i՜Xd7\ބS쭥I PS1 &⹜.GrVҰ ; fr_pj%Hj|DqW@X5P**b͑ZBf`y$q GeikHzĬ fS;#(?VKT-/iحpBm]z QݴM /=E#60@>!L,և:F2m. ,vQ!-S7V"[c<q7&K;Gs@x 댣j_f|sZL7d^d> 3(PX'})dsճAZ$!'NrdkVܗ#%-8jF&v+Udz7-U#8Jw:m4tb+eFnyEJ*m|г3sD-暤o5lk iϥ8><-d D i}dHZ]$q~N?W6О SFrQ6v r՗>7Vo \"ݿF)! Hr7Jp }y胯8ɳ^/]=* \&4EoDcmy%XYPy1YFmS3qd5*9zck"~JFs9_tp(5V5_- * џv[ DWeT5!qَA[ ``)1`?yw\ϓ Wgy6uƼPEɢJ6XVD3!mǡ]Yv:meKE&:?}F)Ўu%=ˣ[Y1<9'xHJqs u>0CIΠ*tmv?\ SWs-`KCji1g ~* h%;4h |qͿ^ ig=J^>d-:B(Mv\/Gʴ )VPeG3XoK1ȵh-vyyWQe旂1Hsb1l謣bSK+-nփ74nXCo\urȿfwvŸ$ >܋4qO%KH*&}tv-Ӻ NŋRC{whB(jQ;6K |]Ƀ3S kӸ%+<ȧr-w;P@ܵGODhygb4]90;@CAy3n6 #є@CqOqQ.utme(O i;.8<ߍ/Z'>*EyR(fɌVyi r9A#=\ɽ|NjZhC~g=鮂8rrIw* eZ3ZB|!Ŋ3QYس )?t;xVo+Yv-HeaeVjd2kgWo\m}>i+E` zDP[N]*ذ+em23R#6vS/p$$xLRjrڎЪ'iax{aW+(@⥰o?4Z|NK\!dy{M0+t0.]I=lgp6A{9?tWD\<]iM\6 gn ptd=JRK-&|<@5VaS3Z -13հ: Ttc張e=(4x#whԮ!9B _E^W~# #6D[,g(K$UxO^#Obnpȋs9mZᆾ~Խ~8zGbt7V0AO8Hz#]mtdKd/B>>PN'E_XWG3 5l[9(Izmb{r5 yg f!FSϤY$F@xk+$Hl+)yE썂Kj=+ ;hq/VfU&eLK-3!&.9lQoTB(b(Boyhb:2=^,t:e{⳽ %!zxx!g] kh/rJ6R3Ni\ ֻ3cUm80Xb0J7zEt|m$ ;k#ҿ2Xϳ~k '.q՗haT7S9>=\)qB;>.a=J\U!UL.;b׳8% paU-pP ho'Rn s7L FlwxjgfFxDl)380XWUڡͤ_-{ݎAitU$ U1U'2 Uذ*՗ MrG-uVieg ч396BOosS7r%;"z `L$B*t(`ߢQiBfsb&KឆlDe.R-^*J3QwlGo`fH EX+2^<4gI~m^@, Twii g]6 ?C%5Zݙ@ ש)j:J _S\bͻmUB LПMKJÛ59'|([JH9[&Hhْb#x՘3Ľƺ ?PSR(F&Mp<$9EM$5V^LҹkW5& R(3<к"%L̃>N=!_]Z{u貞ϕ | butdU:Vhb/"~L >̞:ps_#4BభoYej l]>v#0'Qi d0h_ 0o bFY,ř'YS*`0`j̄A.ЯP =C5^SUGv<|PV} /7~mwq *U6e_l%FRa̯%x.(Њ07q^XȬT#啮tmaP]LGlB > C6 去)ދ$ӹ8,'Lg"VFzYd=N.:E΁pW.t4E W4JjMp%30&#dwHBB&)N"y0lQ b8:}Ǭ$L&Ia>on N4O桄@\E@ XI$[<$UmY_#UjPx~oR%Ì Ͻ"B[ay9')M&6.8]6VebyL;2h57I{ l*kDHy8qzC 4<\GIS+"Ed5s)o*~zQ-l1>Xpg y"><+z3–&"Br. F&{|x|,g|0;Pۣt}֮m,*= x)7FŸ!=2hrz,]N[؅F2%B |~US:% l,~{$޿mRY&+}4w+{"#= =]T$qqr Dž' b^8Q^08\2|MavnF|z )m^󤰇C 3rl7oWߨv>@qoQom+O :."[@.v/yYP@nm%G)G;=ZBkyoڢa)j; S5\&I۸:a^ҎZK=jV$w"@_V"!/ ęU0kubx١l$)!LPwJ=)%C["4 WNN~bC3!?7axKPcr~l('amB-=ۥЏx~rPˆwZxOSiіf.ѮD?G7o%| p!Kjxkz@f#/k:t/I:Rt1J ?C`Ts14kn%:XݡްΫ!u^'! %yboɡtJ(3($4 rŔX+Ll~ lZO?~#n*D'7Eb0bME3\饟`b[k42^s;s}8BzN@vԟF倓(O̽*""&-KQ5a_S9/g+ڢ2$Ch7b]mYag8*Ƴn$uGa&m"_6 L3%G{`tɄ_.W\x)`ÉvEF Μy pp^X,6Ex|RmŊڹZҒߎJGkk4X'5D\-c&7fe"Ph勷R 3ɗ7+kRI`=8ea:QMY$/$oH:gdp:lyz[$J™ F_ Bu SKr6wvp"Z9&`HSB Ύ˪ ڧf5 C,jYX`Q5khB3"t-ViTJWmO*z$F@ zr`*af%MBVs%/D˒igʈ*(*r-\.$1{;ZF߁lox|F\G1q]Ij}OWPO6נq+vaַsgU<@ob9O&R^`@x }; 2nbu`Fˡ|W`;wL @&jEiAш{q!Q+DGRyQ(r%&)F]6e5Jۚ:F,pKju9w8!WN"8c^;ϻQN7 #Kl@1tG#včئwzgg7+Lw+ʵ?%V<e QZ9ko h-MaԷE ^5wwŴ<WdǽE*AȮ,V/SA,]3^Rci{џJV]Ϧ`Ug(ѝ<5-jZDH׾qDuz̬(|VҺQ ш1]d}7ȵoQxcHM*|iC}0\FyRrPrHϠ|g':׳bB>\*nWr-[B/[]Z0s1ڧ34Ȓ*TXJ竮W 2au8{7F1s| u%4TΧYi 2߳rUy=Ԋ1]6 N{Iiw|3wјIT ʙҽSvMK,KujǼ{c_-i2~5mv> WDUW c4o$0,&zzr z '8|VyRv4yAޚVQvɛ,j΁>DiJ<õ#\QZ2["B:NӐtSz:s>s) >vƶytPۈ_~Vs沯ސwrrEW'{妝4{X^;$ʠcrbrIO~Whu4(E"|Z_Pf&F:9PMfU1\O7&F>?rUߚ8VOv=Y8dZ݀Y:bDJO0Ve1B8h9ŜS} 5d%k{ N :R )L"`0}YI@DKx5r'\2Qz}ge $Nʧ҇\o, 2kސړgDKZJ;Lے Zx0 X; *Pg )e= g ?=\yGG *d̲[HNC{,+H<3`Ngd}i(F4rצa^$K &4/40d㲪AVH6ryi Sv. !?wyỌ\/91B:[yOJrK0No> w^D/DxhlYZiN14G.Ry(^B ҖS[CƵa\`Vokki}bSThB}\y %] w(%`e dبLA |wTlmOX*̾ ɒK#Bs$07+ab<-[&t gm'Øq C͹ x$c|DZ;\~׃^Y m8>dCB n=F8ٷ+?tp$Fy_z+. 7`p;IIt񵟯 w~i@+G 2aaxzZ%zϡtH4A j jz ܟ^'rKZP0EDVh?Lɼ] WW*P{_HXF:AHtpM<Ւm x׸acdJ,˞e.C苬K_ioq/H*WzfQ#䲕7.թ[IC,aA,cI_9_mb|_2öӓlrXDsךz?1+;9wj*|KM0`}#Fn<] lr2mȜzX]op]ˡㆅwq73"/&-D_oX[`ToS%]߬"5Vi][/U%W_`F;ndMR[W!N-" ` s,PI(#յѲ)`YY( ñ!됯\[g>]#GF%.3,~*Nt%yaYF58ph=ΨO A0g 3WT$95+K~+v)NT{BӔ;76K {KT &hzYu'#!G<8} ivx.R d<}$>1~9(5(d>a&$t/e%SE )"cŒ![n8=݉hGM뛅Q>ƝOKOPb\dQ a1%}|hIGlE‚dGl`p7DiYiexJiSYzV߈m$T[62kö.cFo1}G-)q,2ײGUI(Č=6.w\P~>4G?2BYT"GU{s6>I4nLQpU?:L]HKF(mv:)bKTPm;=6zboax vWƽe@{x1hxꐁ}t8[rEc3Yr @-Omz`0huLj kŢXiB6(`qGQ{+I'>0w@N⫊?1p BB?$6T6ׇ4u"^QIH:eYj+P *Bny7\רּC!kWgO$=*>1eDfxߣ*.r}m=Wb3y)KvGL8oX9SPDyl [M÷9bRJꡯ^S/ꕭlɗzh\C|MքZKN܃JEaOKR6.36d>mY*(ޞ4ꐬYyѡGYYzH^v}+3n1"f·/){wQ/r ,f&50+Άܞp%8J\-~DMY;Glf㏒χ gH9lh'Kxؠs$w"ǃkzCG.H^@!JtGIŤQ4԰?22R`6wrMޗcix=G QyAǔ)RfO" 5$xv_l0> l +2+U@)40@|ȷQY֤%}"dk',DkoǼl\]6#6xA?K/3fS*|siŪ3wmޣNn-9qmg7HlzeYzUT ٌЧ7pT(Z'XmGgn/A`"U`=/\ulĤ'~):[rz/x^Y^Kɳ4/ἃ`ĘF%S{'O̝|;&_Z5 NzB-6a7Ys^*\D;j|;l) _rKU,o,Ma؂*Z8=\/T{6K>S(vJmG   F.jSMW!ےQ1DqtWuPqQ+Kb]x{2{g䗇gPQry=^emupyTExNeo}[NG985"\З˻ˢBsm )'=ZHT͑N:wQk\ɮ cR#wC^㍌Aн=y5%ւ4 ^ȲWo&64rS @14GPEz'cm}jӛ л ݹ S} ۱A k=@7F#[Unbgk|9_g rbpFknwL/\$*)V,3V/QQ PC)Ͱ`7Ys{dn HSt?R(ڳGS T "3 3+wo)_t;sԓ7 ϝy0`F9dg=jqBm;hv{rie"򵺣jx*0Ϗޒ5T6lT^+vXm .nڊ-/uOj$Z1Cц nYD_Z+g%MRIv9ضBz"< hPe[-[1}#G>E"Sf@;{L|ә*aa"A|p`[Mt!*4 Xŏz'S.&KjR\ߜr ӴBR>CI<٦&hlΧD“XCBUAYq-'fLl@W/ øߌw߻j3AP6{Gb/ C\M<,0̞IO kXxi ^|d{6H)$huksw53{%t\]T)UwT$g qaSA3.i:7& ~#g<JdIZ&Cs{eů4';Kem/&\sfV+` B m:?dc~(Sy*PYrb"d//l3z`UwVNDgO F=],Z̶+5Y^- NhDY9up۫-= Eg -&L_g7I$E |2{dwHCzP` e%iLn\~ElPMgڀSUpuP.URa!,;垖V@ 8]bd dz 8M-J]ڀ {Z`џdK2EgxN,:I3g"% <;\\;'0˅Vs^Fu&h겦g;;VᫀtwD⦦݁㊲ b%LiRI (>.GR|Xh1 * B_D[ }Y^ 7)Qd-%Yϳ'0yjCjć;2Q  _yk/8RF-]Z.ݔ4]Lh6V\AĻ+< Lh"]AeIHY Pּ?6Z·qVU8p0E1"s2Щ\ɼٖIqozm/;1m-W#bǞҫ˼w&;VK7$Tuo&ohVO=hfP͌gD6~!E1qޑ:~pԚVYaB͍iڋw5~1\a)4Ht]7P}j.dϼ懓m>Tlel\w鱭/#nX}Ҋ5vE> yߢE*zFI|'ʴb24]cir7788@iw7ksQ:X ^)hw~LJ4xlKM'$yƀAgE뤊 ,.o%LSaA~+ ׷ bkt2$Z,n=6⒚9.hʛnJaL>{Z0>#_3.d̦K=9? Y?+3ݺ<q M ԭo C30("NުJaj>' ??ٓo,2rqX]"?+L>؃ }Ez}ӓ5Y>Wt5v9K,U@s'+kd/Øq I*j"BXsS#IJ@6Im fhSHB1sYEؓaXMmO L(r|:b*d! -By'cǟ2/Z80҅[UCg.b̺dzѵmp8\@C]En@q !4:A 5hQԕR#N^%kyM'yO=Kpחx+"H@4[k4)G3bgᐖh ڪjLuLZuKX&bݴpG É)NI0R!uM0=I*!dkhjg_Lvb9U&zykUnNDat <§$)|]k3/?poH?N Ӿ?WE粒)vRO<qUzt$]PVW2q˳/\z&3eK"W=;[wskJI !%Uiםg꽣3ljrF\eyQ:٥k o}R>T-IBjeCQUKblR@ӽCu"P&dk9;ԝ(M%f_Xζ_X lu-QM; D>Xh9[a][DnǬHU#|jL9 4%rdfi˟כyG[rXY4<Bֻ}ɕ"AZ}Jik8_"LUyX?媠݃]B % UZBJ kP9|f|-DIw:ơI6 +F::F=نơn L03Ⱦ^.R ;lI Hc4:"餷lAa>_" ehXT`etEB'H*ÿ!Őjz=W0o44B,zFx ٭H֫\2nuv!¾V:r㏡TΝΰk[e0/r(tL®4<"9ݭ0Y ՠsLu\k0H,"YeGpXS57@zpsPp|o' Ϣ'_'NJ(]0AT *jBTVBjYjB,&r7DDh[2#&7dϘ'JdfsvN?[Zg+4wG}^ۙ?2ܰϠކz7/G_dG˄PWC1:m ʖ_}!3Nb7WYEŠVnmH,zКf< Df. OÏ,S#[#x9*֪w Ô'D qZ P@o6jw0NvfWkG~1`ܛPѻñ'W`6N'"˝F?ɇ8AK9C5!ہ WX F}4Vz?S8;GkH_t^XF!50n_M޸TSӝoԗ'ϛ:]D}5q= 9 %999? B2^^ ⤛S 4 |%Ϝ(5&./nơ9o--U-.X+14w[rm!k q2>؏P/G$-:)őWٚ(_QT Lb%_H=990Lmixû: {̯׃aʌVuYH0g-ocꕇ޺:KTԄHB+Qqdi]C G՛َeN;u!J>HL-VxK_>Re _KfTDGMZ*Jo*v&C-[e\6LHn H?3RUS,v\]o<{Szղ 1tj`bmfoRNջZ-bnƦ,nb@9G3[dH3t 4Pr`mtO" A/ﴃ`?Ùa#x6־ -#<+YXˮ5R%K_7mVV Ԡ^<}{>p$o5R`JXYWw3*:Io?!fCbyfI7Ԏ>LHowBC`E.c2ciW o.q0vOQ`wAs|褍gTCa1:/!" K,,3zo=UBճIx;(:~wRUh#jkؑ:q`:sLnX,>tŴ(TLk!6j7mH@ܢY޽Ȱi Bz_S4pl(_&tL 1 j2IS1?逪{/?6mbǎƈm=9HnR찑O.oגlv,~t| "h"(cs, 4xz5a/IJ[wOT?"\=,Il{j^!w= 9Ro|ʃ^(.N' k(2icO. h-#!hs5pF [2PW>{``<"8PuUT)OGK+OeU?g<<fog6LHQS9"c.Mگ4^Nj +yTIvǜL>Ю'1O@0:(_4sIi$Knh=λ"C_d50E=t+xЊ n X6'WXwk^sB'SvuM1sb9qN祴j'r?VOjU$%)lQ%k'XA7otXYZH%-jPT{tThfׁTQ AN7ٝow  $Ýk VI75!򀼺qZO: E?*SQꘌʮuo}R_~<q~JsNMۛ ƸJp5:mhpΩ^(9FIgϭ_@0?uXi|/HYPh꯼/=Ŧ@mSP ܽKT㈎߇%/~2Pr\Z"};HӚ@̋FIʵ4RZYd-ݑG.vI"+F-UMVtV_elKϚP^1{/~:/m*Sޑ`8&XQ3gEE\ЧƍSM۾) '<*A8&7œCT9Дm1h_mZ0UYT,rdz79ҰTSK!X.hboAݍWz d[' c7>H~3z׀[q[AتV/?/p.ӦJ[ SS z|l:#P~?$BUIǰi~:pR"Ȕg!?W(XN< Ui{fLo6H"ejtznDvQQ /~!v8`V(;xZw;Jw΋ѐIJ4O(xOU*џ\eČ([å1wFK]GN),22/ynNi)uV{ThQWtUa2"yy%u%Wi߃It 3AeqI=VRk5Q-=A0|\(0.4^ҷÇR0Ҙ1Bnj(Myz:#ߘrY/0D,厱1NJ"D@WN)_糒EРbdkJEf";LE)ATQ\c5869xᠰ2;a¡@9_>E?tFsXt.fòҭabtX|$wsa]lfҷoąL.z<ڥBBzMG3 1$jڡH1BA[00b2yd O1'z""B>cwN͎'{*s7gR;xU.Ds>VSAo%)3H6"v$=P,.NuU__*ۧz_gIB 7XW΍ҙ*`B&tSs/UA_J̴f؈߄IV> [ ,k&lOԣJܚ 3ʜr`iפeZFOԤ ȳd1SFe&Ϛ9?|\,Ud@/}=C qtvtXqT‰Sn'ĥw|6 =8*A mĀ| %LBSKswBGCctf77N^@ \DWp+ƨk+CP{Z-ո>|dY \C.ҍ?ŀ8r Ŵ yW澳"jx%>ı4H%5@h~Iwω֦ߍ#v4@̷.>G&DV},PpcwڤC;Q1|G=gع[M!62 1OKҫaYnRKT^=Qds',x{{1b*d] z%4ߢ\=oN@[/֎X^nzyyK(+kPUN*ž*7y^LL܌@wց)a?tne*2T*, Lh[k>qb-J[_E.*gYJfȆLΰn7"++Z&ڔT)w0}eG]˪AowJ!Ҫx$M3L`h!x$7yºψɏsFZL i'{(PhӞzW:SOf\[8wdn,RI]@Fc#XL1e. ۷|jL+ZpDj8dpQnG;e& 8,kqVFgRb$ id1:C{з`W+2²l=qx~˙m9=T2t]vBc΢ ƶj#{J.,0u4dD}X0w:JGՠi=3hl oyK[0LPvf9#wZ#hntX;ݳԍa@ۘelZ+ϫ|_5t1H4` ??~·ܳh٠{r: eQ6HS׹A(FVBZm޾'3^fƄ&\^S9t7[oEhGUA؆ |Oz3Oe_ jO#P~(]zئkO?>{.8JL6Fix"ryZkXXfSg16|}Y!Oښ8AwJ+5Hp|[pqif},V@x3€=| ==q i!Yt#SQG@7xOIrpBu~+otx.;WBQ_wSJ$7 47XB\_Ks(ki&&Ղ$4~Qx9e4 cFyjj͈=>Xq-S Ϋd@ 32Am¼~VgÂ' h JkL{4Z@k}rO J= R;y0?YMR6uP؊~dn/3vu'6eJՈum0dYt.:Z{tJx'Ma}"). vfQB·?1Y6䶨H iEl$N*) * $v9oIVG\.UA=ߺHR$,L;ad 7M $恫s^yc 2]&7rZ@qԝ0Iι}q`lU)2׷.hbf ,06Ph|ޢ a*}`h_*!fFPcCG@ѱW" eRꍦ>xr$J3>xF%< p9ܦ1:eIJM4+MޖCifЬFKn|Fﭱz,OJ'ٯB<,­G'y ItRaPoש5ԱʑD ÑXsf:{vfr`#h7D4:ƶ1P#@QK=ڲzX!g|kpO[YJft%Yw4Ϗqܹbs949D`da%FWNo ".#5h6י mЦ[M5TRY6oxe`ۑ~}^/k.5OxY~ØqᾐYf~y&iVm]^59x8T,=ڽ(#>U=3 "XT/G R3U e5as6!#M'.cR!3 MHEMK ]}?'P7sAU4p&s ;eֺC<ҩƏ3&0#9gWH1q@k (sOHRm@zFJpz }~~ZlT ce(ːj9[Y 3:D6In4j^2F%5a&aRdjy J#TpVL@M8_q>j%皫Zܝho.P-FP㾟MN̔>;F0Śux^qV ushhdcxu~=l»(wyN@ho܋ 7Ϩq!OXOC+bkj 1S)e9zR dfg jl+Da1,A =gę XT@K/ѠY9y2뗆gۭ_:7kHYT&ˍ!@K^^އfk<^Ů`ݓ$b ;gS 3TlM* >5n6 {n@qv$}U jH4^̯s'Hz}"Y LCx6́Xr)G5N?*|B"M+,?)cQ͜ 5YzGyr*(a 䱫Kc =4a܉Yv'pzT5TzL=g, vi&cOf8$E/o˥WR-ަygE+̯JCv1-+(\?x-ľGr.^sCMBe>Lҳg6,fZlڎj3{s ېC#JwUJǚVԊ0n|˝0@eB(݃8|K鷖@1u\d DuT R}Yb\qHЧbl/M 'Y6Aߒ@8îF%uN.W Wio:}gÃ.qƂl#h1(鲠9i J+[vi*f04G;R8qH pNꔆelOfvB6@Br[X~ر(0FB}c;ʘjvișt,.AsO)J_ 77q%b>zKt> @ܥˋ!|`"Jљ>-\^<'hnCd'*)O:Oq<_kOԁ!öI`Mo6yT.gW"rΪ3ٷNO/i_uܪ.>Ť8J\H[|%q k RB \5'⊍oPi h]zI*L=5 8N]\R5 tMgH r{9^ZHla5b}Y~⧑O8q'8%O)Be?]Alafؘ.܄Z +yvu'Z:p<6|5f>ZKt̏v_=M}gPfC?G$ &sUFȽ hAΛHg!N4FqajOrqAF=[-!ӷ+~8[](ZՇ 3tŒ`: d!%ϔV5u]}1x]` Y^qL,`r1+Ff֙Eʾ^qJDߝ".U XYIzԀ(# JT)Ar캶yGc Ԥ-%`˒\NoP̽ /Tw-]ęQm|U?ã>uk+σӍ,(a.oH6&98CR).FLݽV 7H8V44ΘVĽaqO"-s fؖ5 C` 9>pBEG NV$lX؍<݇nf[T#)leqۮ:irjEv#uu#yJ Q[Q: A}Y==mvĠ%Iۅ"*1COBs*s+kcp+.Vi#wҧHk"U~FRrS$ڬ`_! WXOj5w'=(~S\R'QϑkRO !f"'/DގI7!~V!@0;zd5bac%Һ g~ٔz#j^+_/Țb!wt8qdg,0e'5 D~c T*5;b6wXgJe/7S'H#m\ʳ2zfnWb+3G2 e  GP~WF,R[c\pnu-%PҦzzS&'-<*W;'3$l,356-ڪ,$ I VA#?PѸ$q^%0sl"6I C"[/qZrf퇣AE$/j* i7%%q懿:w>(=y [ϼ R+SoJhbg;_>"jp"[lBRtfb/z?Qlt]!~u?;w|eOH&Xh %X T XiP:ZEk+a)LE?F&fI=EIw˼OJ{<*8J%{o}!?NQ蓮^F"EE]v%ȩn(][^'@4Ԛ+,g]r'yjʬlJյg*2ȓ6T U2Yic֭Z[Qlvݸc~/ )zD?r:Eb Qf\WiETnOQ9!mJP esuZH",ffԺ$9R6l(%+U^V>ⁱwXcevn#[/rjPәzc&q覃@J\Py%0YCzpnӀ&@N,?q?g*2F=DU% w&dD71 j˖2& 17 5F{֔e &_:u"ħa@[:Y\JsAF(ç `"ϕUý`J-׳xWf4yHVzj_:y2c[b@0so$5W!>e85o=BGWS:J^G97MU~k>~О)~Vj0%rL0wO͓MwC$#Ie V@qPLn7EP*p*g(˾%K$FؚaȂԬ[LYE{AT.oM@ĉ ,lh ծQFjxn9뙵q~عM~7FRݽG2Ѷ[2dqlSoJ윕2ͱ#CR1I cwB%%2~p >%2܄6¢>fFE=",H o4@hlo\=ot fۃ /S0U,FGح@:>s-6BsjVw&&VD[rͭ"5pD6v1 k #w6/_lsX Hʂa*pDB?TZ*SornSmxO=?C-%R2L`]yN5 m](NٺOmIHjJ.=ªfÍgGH)K"ݥZW<\TobDC6M`w#:#1z|6`3})OR5( c1b;o1!?).'X<>\$GW3 q7Aj5:= AAVIzY9h2i$9;ڟ?h?aہR?)veS ,L[XEʬ^-sZllŦggqkAkAiE?1L8R-(\ *-A)$ a9[ l$g:RRxB;ޅ!BYC-h3(>X"obfegbI?ˢI%+N@;:3R 86GLR@YZl"gw`?2m6,"kdmȺ׷ ͬ3 }\\Nh,!nDgHyGQzRA14Yxu2SKCԩd} qPɜ\).I|w_cOx-Xp&OӴ:۸U_ MAQ0}E.یNYd1) qe1#!It4)jT.! ƸCI5 APIR2ְ_5ѓa(63rm$ RU VkyPRn8c#j~ň9TMإ"tD@Ob1p\%mNZȃCo;P|a, GeL 9k&Wx!$y Ǵ^T v1b[3UbMojWǓ0b_bU;FdjT8\ӏN|xxP1=<-}iўNL\q? H5qq ;ox_z4K"ǫnж$??StFoG*NPbvi N *>8RcJ{໏{2 \H0IYhiB8.袏]C'P}Xcw =tK`oIjX$G:6ҝ\XPV}vЃaÎT8|2đuW ]AffD؈'Gj8nfJ_m0G?yLy ^*F͟ C.}z Msd?ϵ}3e']8< ~ 6[_ 4.<叽ׅ=e1^iJŅQP bH__bD=wK@rqSܓ$(;&p)lh,(|bL^`Z1;ᠥzbdS\0TL)U,Х}J&"p Q ۳pr=yg|8K[||Ex3K`_/(tV; T}45>%FqM՞r$;5ojه9WPM@BƢ3v%EH1R-ꋫK2?Ta! 2ń(c }*t^%M!N##k`&>=)ީ+ujK0n d;2SzLFtaN PWQTvx[ Ppz];/{ySo<-^䁴KˮKo= V%U^)ʡZ+~HC݆[`$uMi,N_Z)(^ma\jT11pfh4Fn$v4gq:h}}8a:XIDܙe8A ybC Z?4 PsW]2r 0QKs|{d[o`=1W1ד\G&XrG3;-&gDt:7-OiY8 mo(hOk|SEQCT@\T=6HY,h֏T,~,d> nH";@ Ҙ%;"9!:D:dz0\ְx#~y ȕE{@@SiyBc&o'wSǡw3uuAIOvq1KhV~Y%@`6rSLdvesQMG9v_H}(u0N} 9@E2bWZ "*B%WۛpzֳQClKWjg\cH 4 ߂>cCacIr0K2&mDR5, $(龸  7&4239fL=Y 0մĜ&wA!7`>Mp6'6|h1/V( bq$R qt Cz%Yf8EѾ.E-֡.Q04G}?tN*w?-Yɿӈ8$OH9s!DeօV R\wFg<\|G6l9rv3fS烒$ iGiT;'4i:e*ɡ9Lc*NV?MW=e*G{O`{HEpam)SL%Oou#3_дS秣S zZjhRuƩy}8KA1YtUXے6 %aR=W=:@(9biƜ":;2y91ŴMqQ @=BQEy%WM_gxs]6M%dz /(D\%kB^NOz%tY uT"9X>tvJ/RC_m5q Ӝ=- A|ħxp1ԑ T!kaPҶ} Vf̍%s^*rԒi8k9z1z!AdHFh;$6 3y)|9șb@J| lЄBr+Iά#Ӿ6Ϡjn-trbe6y h|L2280rSN WV c#<q=e;x\heij`V'_Rƅ۾eِI|cF0s`g1F@>ZW5ds߫sDFV[;kJ`MepO+6ǘKVsR 6\0RexEH ie̪և7f"BFIUUjmDbިCQUiHQ/Ԩ.I3ኒVۓH.H]2;U^y˓>?@pyuam/GsF//{>1U[ì w?nbjTѷK{u&F IA(S" %l[ġPGO:XQ+peMq F]]{s9uM%C% T9"Z~6]F$Χ%m< fȚ'vqeoTo][UG.`qmLb*Ḝ<з?6 ]A&5Js)M6lؚTp]Utip'0rZ6U&j*iߕKu `Ǒ^ F NީO-Go|R̈vV jھ6DxO(oW$i/:QΛЎլf ]ގ?٦e]Y/ [e&.Kfjvjepl9x!\ÆJ(]jeύlo~EM4\~/I n}]Ḿu ]u-XK =wC8\ О%EAtw, V9 ܮ<ғv@xr\vYK)XJx-ѽTz?lhc%4bkF{3R #m:_ 57 v [ ( \JgQ"_g_;1ԥYzΪx6{_.Op ݑX8T`%FCjvL#Ab;V-n͎Ņ*$R"gkiD`XڟV:`P ɔi[F1fq:=^i[cm&t}#ڎ1HX'.`Trx`ftqYf{$Tǣr.?]FFM5߯[jYhUWCdn/et+T!N(kQ75Pﰱ0%IoY Ftis햄 ࣾ#`Aa28k waH3Vc0QO.L? 2!{YLB4w8i׹"l/W2GrMh3}EKo[?X~[ 4̩-W.}sCUEȸe$UExRRiИ6,nh8Ŭi;$d/7 }j p!W)[3d9Yb!޻gVz$NGlI~3-ߨخE(Yq% 'nЧ,;^pE=1(ڕ|V% .56ZmJ {Lf{Z sZS"w(I,ܿUi_QXmr`]-?+ĆB*ꔮ9"Gt+qu0HxVKmDLո)rҶt%r̉A=Ihg{q?1-lýj 񦬥7?LZ2VՁ@KSdD!N|g;.ol&PjPkV8y[Dzi8E0烮t0!<^JOnYj[ʕVW߅OTsҺKIU\頱 'P FǓK=3Q2]9֫Ma~N}.q$6,g V j-auGawwaD=W' 6VU6Z}#xr8 5q>wR*9X%%|:6AoN]w1A83-GC%+!F[n/gp*DoLIUP2|lWs+?:$AҔ++N(@'(!qHTsAkI7J‹?R(ʡBJGW-b0lVNc +F; ceڭ}ÐyLc,M^rѤDK~T4e6cOXOd⭑kO 9HrG ߳? B5s*'J{@ sc.VRqD{Ui- [ػ \-&:䰵y Z"}XռIdKW7]G/|d-|}( '#ȸ`ZUIs6*OӬ/t s/R:>ےA,7 ='+b %=Za0Y=rf ,b$6Vk^?x(z^^FwZ$@-]ANr{t<ϥR6ލMw3mQ`xQ &nD{ẹrBv==`vvU[rђ9U[_ܰ'ANIOﱯjypHP'Di8:nf5/r2='[_Na=۹eumCT.ZA@5(Fl{Y4UdUa&k<qx1]R{: k,<3hP Nsi_gTuE6m (,]HkBW/ XNy,>[r( h db bY2g_*b"xN✯@wX^kLvCD#!:տT]m (Hnw~غ]=Gng?MjqpQע-+ 029X2B~o呖@$F ۧlװ)oÄRhVq>;x売Қ̎ ?DZ:y@ 1Ef7m$iEZ rPqEI?bր8*Q ӝo"A @! [i!`h[ۻ!%MTO:q_Itu[ եȄd.]2:fEndq/.i/;hsH-Uڛ? jᕑpsfWa€E;ճe[ێj@Ue zf}#xr!_Am| n՚xH[_g^SEG5=QŴPF+Cgey^wlڤ\K1QJ j=}*{iTlnSr'{>i\|̚RRfIcļQd&9]gBZki!g NG yo(Qю Al"-: f$eQD`2xB1=USGD^% ߢg3EhM*8dYRlpirScL!XU+PPrܠqdF*bZ@ %sZZN.z1xːܗ>P;@Xy z."ZscJ.8Ϡr!^D6^/cEmepq-ZR>c.̈%\k ْ>|s1Ya&ΔYyI,caP\\mg楦@ 7K6D4$~q,ySّ21΁o_m&:i`!z5ʕ># њcHĆjD6*M5JxnP"o-I3 @te4XɋDhING&` om@[ ljomcsṪndZj1vLT`s(jjq7tCbzB~JP:cu#pFRiobCwY,U8f.h~" N+ W7zE5}4n/)}IB- KuDH\w_n(X(о`I3*O #>|Q:фqdAOD9v׍ Bش0e-Lo䍅 Ę;4΅{5E凈ֺDiꅥr $ ^f {wOxOpËKr;j.[ouO;/{e;[tyL*; n䢐"Ҫ[^jDKVCB5k 7 a* h6Ecc.ݓ 7fF6}W_f -dOdNc5_ %K̍WXpƘ~0̗xt8JAXwkJ^#$9 pT&sL#OV sB89f''zG1ZM;T;ҕejO_==Szeap,sc wCԟ50Ŝ!+ \0/zP5Y nr~D.eqr$Pq?Ꚃ*m:$wA])Jэ>Co/'8$kdSLɁE=F7H&BĆ jw}ӑ"@ܺdoY3!z 1{{uUp[Hm/TZ s9v*BT`8J AEt; +b:#?sy#L$e[( H.Y8JpJJtl=0K l ~ vZą #{`xpi(0Y@ N=-0?`_c+=aQ+|p=\aQGBgzW[*oo!o鋉i OsswuDfpa4: }_]`&띕(lٍkRyqԨz  1Mr"J/tݢlΫIc9)bt>Lasnr KH֊:%bvTB2k-]5(s;ߜŖJ% jso2i6!&/$ zm{:R!D`^[P*tw| mna*E!V'Eڳ[}0!(^N²%~pR1r`n@XN3y݇(^ysS8 TP/g>}>f)Ca2#=s,;;^ R[}1뾥jEك_3/0BJ$RBg hT77/u"Q2cn{,=7eu酣-hRإk#0e5ѮTcD۠ j8zXx)W۾%0k*F/$B4AcC3P}.a&z  m6C}!5AJc݂>fK>LTC28I)\`"! #B~EI.k>҅QRyH|k{Hu]>0UrOcC4&^N:2P ]8Ͳh[8&~Tky2߲}I[/? r(k7ѐGK3l ]Ưg ;z9Qp\Hxzgϱ lPwuUg'3.#:<-9ze|o &yv]UB:'Z'\hDu!h.@%a\S"%vɱ~(e.+}MЯ66#9Йr|b|$٧ 2 $X*"DCW!D&-vV.'oC$J`BT%+f>o{#sd.qnqΡm?xأ$=NZw ~*eyG960FyܔѸ:y.W=Iy_( ւpRyOڶ| `z*CAc^*nZ[?ywM'RlVXɾ^o'k6uZY:jxurh◻f  uжn46LjP-A[ȰDw$;,6j >ш1^$9;"j]c\IܯfbL>g> [<ū ;MTƵy A\k)_G \`"5-mt^O22X~+A@z8׹Ɋ*0fRR@8#!EdБ؊e*@++ RݺhiG-RuZc8AY]˺/T)1v<3y>&eUc 걈E~V㛨P${w `lq`&O%C"_FB#_S~LjvUqtŎ'f^`*!܉~8c (tv/aTO/J,=E@M-,S|d4[._]Qb:T pA>kޔl-oSF4>{Qn^7\叅6,?H Rf9  ݻɻ+kI!-VO ~+ IϘ%a&V2x|8 $*iXMV97#B^ ҁVdK^̼0%UZ9 V2P(pk48Ё096 N(nBX!n͍AX$:h&k cP"#oM X ?a ܦn؉[N\4zֶaTDx+MT.r(+,PN^t^_R32KH;r"^}<(ZrTa%aMhC:?+Q_X jfAӫMcW])i+Cq+ +{.:lttOCV^!q^HK톞>'Q$*1LJj17z f_ Ӏ0W#bj.nѧ(/Rz" yhU/ eRxcSDwlۄlTW~bDUatu !d#k p%"Ȟ`ڌ[R [i WT=@|ŪԘ<Đ򑼠'EߵW RG_]|sͷ8lxob^;eӹI2Ut 0`<\63Q@ŭ"^Op%V# RW(SYs؀25ލgL>_] M 0ՁP~D.?{5?0%+@u*[UM:#?15֮sG> ф=nKvzH_G3=Ҳ#6`ot5 6Ʈ<"x݊[=5xVWV_k} ن%Q=Hk/&*`F"\9};}E2t;d{? fgno+XU^Z]}5`\CB=8ot a>URc H-f}c q+{5ŷ&ͱ -ui|w1 [W "/>t?>iHƻ-4F8>\"LexG,r,Ol -2y@Vo'~/睞 n2:ZɱcWq6IPIY7\b/DQv vۍIxGF1Ov&"0gg$7`HZ02 c7E "i뫚1mISGVy]N}" s *E-Flaq+M7\tD}ؔKejaXѯk *4&l 1v2LY7'*ǛCB`tUh S3E깺vp;H@<8ſq~x|l>* 'ڷ>{ڪϖ_p;S:v ־'w6gmXOա#" X(nnNd@[s ֬F_# 0bDrEjq ; jFײx*׽#A&nN&B'X|Z;)4|3)PZªV;X`ot=I '$_< UQ/]ağ̣ۋv4LEx)bE:;2L?CyrstҺpbeRf!p܀ Cퟰޗ$'6K:qBy-Wm{)AؙiH8P?z f91nrRu`>[2Z2ڼwΝf($-I_ɉ&Ȱ]&lD ◉bqW=m ZHoy200c9~L3ͳBBzA2`x\!f:Id`ZzK{aK} $;.z;όq?Jzw'0y0d`έ@Z)XIjbx1?PﱁHlNL%.+'ت{-kCUcb2~!AdΌb-. n!Tv)sռy>-ŕw\d8CX?BA ۧ|Jմ(r4T2D)%X||W^8ta KCf6gG4iP>0O%4ho5Jڀ^sq~#]d0eFmqe͌|ꠐهӃuOjn4>2|dԮ* :lN3Ƭ侲>*=@ZS 30,0$sV(;%j^ sOtt/R_Uo0XY1J9-Oˈ.# zJ?)O,q𘷡`d]^/'Jyv2%fvxVρ;rс!s$+Nm7EqT#E^) v o2xN7iJS۞_b_|f] ۉ4̒d 'k&JRI_0* -RH~)r c-n[\ELvCvJfĨ2~S{&LR-6w\sYplRU:N~(Y${|$YwoRHҦgzZ)^!*8iǃYG}~xb@ E sB9/ my |6[a?r<w;so @ܩ$r c*}m|juYu@~~%e_hE&t^0pI_-S"<,T YBe[3ut \{{?|+&~Ż݆vfҋ`tB.$mYgצ\dT5Xc @ȢAGtxx[rCY$4;mtMiA']9֙Ls׊7@.-9`U~߯l3g*1Rmz&< HRdcaCPe dˬr7%Zٷ;'%-qS.ټD{zx&ZX Ly\\L/L%ni GWh̀ .P |,Ak_ׯ_|F c1b @-;o?+tҤ HJ6@qBel1˷嫧wOy>ƪ8{4".>=* _l,TX,!Y;N6;rW4lc\O^deT{Kd7jhXJ 8Ԥ@q5%~BߗrlNSu=' ȒFoI:U'o%P{ItS;Jg #7"tx'%^}\M_l.6?~0)Nn))O|-p>RgXq> +*:2-xz:bGd WQ*~zcL5lc<cc:}Q1C΂W{7#~ka9␆WDe("ԭ) 9":w/fP^*l58PamX alU jOG?Q8nuAEоz 5.neQQ)*7Wt71wDW!H2v[~]4 XK7!G fN43/3r>g`)`~/2 q-+(^FORo4?!tŝisd xt6zm!PO'K\o,B5%,\@y}9;]SABUg+.Mx`XF K`w}yJ9 0)l>\O?䰽qjj?$KՌRRv*3)9K js`S d9mϵ6JaC91?VD:'$7u9 a?}6uMo c5"s 9ߖiXl8*׿pmeTIhw%12a+EF/~1m}plKGåqƳAqCd(24 Y%.–(y҇לx-XWi -YHpX3C8TV f7ϦEOmm alՇe~]F9McwGZbї_q5$oY>ʮ/sAZj1p}\Τ+ Jk3{Zez,Y%4}50k;t z TNX|MK]nM] G+\i%?,#q)wJ$ Q<ܙl{RK9Q!WKo{HO\F ;-heoLݔӹ\`b!:`$h8`E`hHImpWdMjtIۚBNqtB;؞m,\q[;f;Jzޝn\ e9pƲpvz0_mJV%Q 8K sDDy}G =EXy+z-#w6U&85q m 'GH8AHZ};WxF0b)pnY'EeسZw24Z\u DUHJ\GYɊlQ1^2.&"ψ*C1ͭefQ#Ѿy2%-2z}!i^X:1QΰCZZ~b8ؑt kxpxlVK7MT`{?{EKxRfaSy`0>uR:G N{3E8+YۛdZW&Ulvozɀ {5m2d-dt@VÊںͺ6w{O6|[j]k 8jϔkb9AI!ӨC|s b*ќ vPMKbZ&Os1a`Dtc6;\8c#c)% @f:8|d8[Wh;AɲD[Զ5]?otfG%u ㇆L[bj2>0j 9`)`t~ @q@!N> o)tkOI?gGhAR$5^W-<H/ݛu;GtCCD&6SSfZڝCZ]5Np8@@nӮks;E۔LJXp/Wvٓ#p:"QܩPQMs?|E~ ]%I9WTרz΢=> ~?-zRB&ԈOyƣUZH4#6^R)o&±hvE^oZ~5"r %ݯ&\ӛI B2@L,'}.}\Eq"/Bנ J~iCK8R!- Ӹ[ i{R; 7`|MN:qiL j{0ɝ-5,%5"]:o<[Y0-hL`$ +) ԳrnvޝN2FDiVҴC8I nkLqɇBn%I]U>zagZF&*o2lLyv?c$&qOvnZwn Ix(ò$Zɭ^lO^rxK|m*Sp'2S܆mh'W&)>-A1,d\7 BKy#b}ЏP۷(Ym ;PŚ T)mԁc4)>7o륨pdӃQ Da0qwV > tYv}YG;)az{ ;GxқUF/C| T֬x'u >jCOˡ1HJ2O',c_%/\ $D-KY@aŝj|JA/ *虂^}ˆҟ|0';+cDIJ=kjϽ*~m0LAi܌9EPTNc0!!҇h67Z 56+!TY^Fcb 9Sƞqߑig 8ؐѶ.ь𼏏Ks).9$Yܘ^;K'Km}|vrB+Mc0ӄ.hLae4Jr{B?Bge?B/M\%NIؗ"·Spц^JH9х. WSCC٩Ǡ[";nM q}o% L[~kp*{]F]&wOteox,m`0 uB,f )X* 9RVr?!mZU5@RεݕKVvO ǗgeZs4aYpɈWjQ3FqwNt%_{5?Eq&_uJL δ|.QY 9FѯQQQ$FΏo';\ 3d)èlU2A8Cn=̖ ~3\k9Vd67|Ŋ߼UBjKTN 3_m1\h.T`3%?bH#c=뇔`UX3?u+ 0ց- >)>';"vNj=yL[oD/ u|>.C+3CИ$4?lV}KOJ3tlp}'K*"&ȺbAkӡPP tŖ2PE˩> 0ȹO|!Sg- SGrb[Ӈ>5PvGER dDbh~ /r+Aňb%Ődh׀ưq4Km]Օۂ?,ɤH5Fd`J8Ր1|:Zâg>-zGX_ i6tʶ.)_|F`6okMi̘0ށ&Z-Qg'M Wru#$`0,RNrF6z&⟋$g͉';EۍY!VyNK}A}hj u~޸hRչb\V )nկ<22X f#7?7:g2Jy3B4(6"otp@ka#^=dwb q)$moҡ;=\U'KEߙ?کݔK>g& ǚG`2MX-=F_Gli4.ΘXg<#8y{2d jb@wPA>(1ffgC*Ӈ%GK~l|##w%ZJ&!:_'lVhTbk% LL!㍥Joɪj KaASa*5=;ł+@e}ds+!A@o'8qUSqz[6YRof7~Q|*\>etwX sIYLZ)CڡtwQFJC6bsfţZA Q~1v G\TX{k?ңtdv€x_n *[ >5@$ndb4(p[_,tD›&rQEi۩t>MM=\*0#Dр;q)Y$ut/<.;UJo>e0uda$єe]T7'ss3$iUhh3`8o;M#?nX Md%.$P:SdH*`10!x$m'5m2a ƒz |273 _Ҹ+{r7)N'M<ϋ(4P|^ ~6wkDk/u Tga}i+_2ash!D;Daap SyIO92g^M]+9ehQPTw ]ކ>B$i=Y+ ;r^(OuYrFe%.n۔H%(&[5:_a^T=ܽ-W,@x5${ o MrYo71~!dqaR1x◈< *z<ԻsG_z gӣ=(GrkB p3ܱV%>xm,d_ >[U5\4,]f.dpӒWGpw: ?lXL}yЯ-ۑii檿#%B4mSgjiK'2xB'4\JQrFG˱=*ʎc>J a\ \`=~o $J>kIK4>#W} %SXu,`+- Z}+9XS/ *('D۩/ &rf;Á HbaU(aוcd/W1蕰P6[NuJ;avXMdNV+EGwޅzQ,kW9>͋\Q㹒} 3M6%e]08}il2L"ެB8uCD퓲oATU"Z<5IF"~z}u"ʙ_ I+:-a0,p鸂_i38Z}xD۾#"vXԼ^}-7voS6 _ OvX&!|.D=Tqp>[3sS-6o2f%ԚT+fc>=GK/%F`[ȧ9D/W翿*in#)Įc~}nnk* AzeLs%^_Dů@MTE-x&8=;b?-&ME_С7dʐj^ 픽X&iĜ>zQcr,wN~ (PcqD>q%͖w;~.:ٜ 遉MR1zFQ&Lxϔ-NYVsI߳~GN !S8ӂNN'1Vǡ}aIO/5gBga< ,2أ iꦮ,<׆_&RndIO/CneW?gg.yW:<\[儬S7yNԎJ Ɗ"evƉP~E$5Ը IfB-poHpG aՇOBh)J#h{J<F}k0 w{͐9/egjdЋ0{ZqWiGm%Y*^=l^4CR fr-W%ܩKJb/dώK"X؏UHQdrZ8DsvZZ`qK/ _B*OE]L5J4f7㩅PFMp#!cY170*T|duMyER+u& \'%l9q}y3ercJ6~e) J 0=fh%WتXb`VBm*β,U!f}V68 .kb[(}Y$>,0V^40$xK8pQIF~ T!K#TQA_omA[(71* :TU=w;W{ :g`$spM- \[^Z'^V܀qXgHG|F~~5|2dkSk%lq75+K1yV8̋?ʸb#7ȎuL?!Y}݂#N-9FةX"<Ů5KGyh4~?#VJXx XS e.,ʉ=l!ĈoCWie E_"~r.T:`9 Ceo:8ʛ}qlϻ5y^3&~SHJX*W t"~zG` Wih tRKF5ߧ=F:O3R ;t/AuounmwxxCv^ k~ryQ8t 녇8gh2椈tʃ;5~fB4HDJ߲^ (c\|ӆȡKQ3O +QjzN (D hB.p4ӀQ}h>۠`l;ֆ4 S8ۉw0t^2o.AˢԟSzʮ@˧;Żq+w{T`|[b+0*T93[ExQ犚U7 i"Y:n5,@ F {oQ|GzWnzC+e3S6`,+>M#i1 3%ABWy)`lA1/m4x Xp9mFGMj]ܒQwۆ_nP,v!$%$ [mA hַ;*:uK߫l7 !rU Xպ+3&YR":LŝZ#1;t}e\Gh҉h潏F[ SZ|\{%Bm wvM?8b0rKV/Θ85l"*'h?pY_~$ 8#m=BcL*_/DcֲR ʁ_sźvͧml!?$*Q #6FƧMTT CסXlkAz&{3x3Z3{zuk*MIHIrV8hGiV"<pK[r%V{ /iN#hSDoqj]9pa|[*>]+и7pW:|~n2S<:*Y*2tϹ d pc,gpr =mg!Jj^\@UK4GQX5P#KqrdȃCb(h~)g.bwUSb.Ed#dS-s>\1x3:#ЄƏ|d$`c{J5云HYƐλv4 bJ2|ud]z$IP3pbES%7bw.d$mïZs]TŕVoD2_s{P"ܜY e$bjv{?# C"&S`9)ϯ8ux#(YgΥ5اrp]9ͦ'bfv.V LܐqӨ}Gȋާ\T>I)+B,\šTs~O.gdp`KO CQd޺pɰp:C⧑YvE@z_&N_~J2xʱכq S70_,&YLr *wTZrmB(c%K(^CD b Qey"b{AO`W47zN'ArXO1Kj$9(4̾+g.܎~i_BW<ӻy3JFr7 Lx#4{qe8sN8uk=e[=.hZ.:cSw7nϿ|c4M|xHm7?̮kƷ{l mO`רO.QɏrGPP~bEaeRl&$\lgD=i|{%;P~ 'bc\n$( ;Z0CЫ ]k^E %9KAZU f̱=ݷG2V^C*N-šJɏaGݓMQ ]Haҏkd%Mf.wsClXEC'g} t"6dԬ޵ux~^Ύ B$@ct4qz*&| 7g!\%FkkC}\LښաSS<6"̃e W߷MΞy^!@]{=,_E~M:ڡC })h! 0*xU`"p[WUlc^Qjkr@r6*8%ĀÝ-,eoYBx-c"49m"P>MoՋR#i==mL7ps, #b90ъX &3 $=S卬(r*/hl@hQ^q7g.}Qva8F4e&G$ OB)a[Ō@E%fѷmCx6i*;CLn$zhAJD-( ql{㲀q\egiH(ƎJ!Y }Euj#&(76)aD&H2P25C6 j@tKO>#ʙ~SPA4z24Dv Mk54 %Ë/fCB/Y@W ]bnj^/o> #?P_Q3q7:dM/`$q} Ta;5%ʂxY)=N^}Kb}ww}s1~OPZ=V5_{tM~yl^OX%u\{s)N#%D͂ՓANώ!2۽\_Ģ׳#b|p.$ 9j*WU()~/(>[J2xNGֈVܞ蚜5uKMYV-HD9B F3zjW"=)$L)#Q >Ha5|7>IaH g~;WRH?ʅLYXpWh!;}! #7=' N/w8я M_{) ɝY{HuA }؈/M-,TVg$(&9֕ZRlrҹH r_]z/7wZ7vt#Yt7kb^OX]D1ٽNe(#dg ^f3hSDb>KHN%_/UDRL X;|%c։ 7y' 0\6'K/xfGvIG]Qn ..lSrE ޓR)juA֕5&n6n'ۜIjS{_Y.ܑJ<߲AT^ Ec .oj`ziw8aſI Όg]h`&?GEnUfs/9Εe!\7~  @4:jy 7}9=F/Qj9`ҁNO4-X"I`X/Z[49. {!6X=oW۟R#+WTZMc%[s8a\rk'AanʛR h!RAMgFU܊bBYhfiYR-U&aDyV2hP/ 8ۿQČ 2azYg)]Ril0%M]ϨNy$۞a[hp&b8ax"RO=YSĎ h鉢@J}~ ⊒IYp%9HcK1֐LGߵ9ln2R$dsgY :XJʺ%{2 U@Qg*R'XTD2"1t}"'=ߤlRmޕdd ^ɼ캙DN xw:/\b♲8~Gpn,q%V*=v4`.ZdߓI>l J$KGA'ѬKSCax75˿Z:A|;Q&߀;d0ʸNIYM)+"H>0k1Ϣ7DBDT0?_͓k[ס Nj Q&x(.oZ_<]c;L(^ǏGGҨ*>S8;p*uהCKh^|asnfenY6ӷ7Oo\t,aj݉|ư8նݡjbO8j{uh19ZQKVME$d]8n˥zݾ*|hp_4wa˕ fJ׵L.b IܭBEɩx.2pGNbzrc`}]}%h..s\wtnA ]~AtV}cXiR9RrM`tt q{3pWpgϾ't!3 )/7_P(=c*֝˖+Kb?#nwzk|-V[ΕA"jmgvNn*(B~$oy'2JUSo)~4y_jq㫜^ʩmi)RS6#E-E*5LN5>h7?Z;ڛW_1Qw0\"#8WuJo3&+ {d[ʷS!!Cz4Yf2+ⅽ* ę.-~ I_Y V뫧H#Y"=2q#VO''b k촺,S9R'hMc0smF:e#w^[֜r>$9ߏ]u݃Plq;J=!5+( P[[bB$هjp0wuFB7D>dz7! +܋NYoȹݵ%:ib DO9}R9(%J_MMiOpB0w7Gjժ];I`ICn*UN髄@Eʗ-uo`ZR}4mԅ{Ϙ  ^/]W*UϺz:@W!%ַsL@r:tqur7Cە XJfbK-h֝s!mY@RUʲJ|K/,8lc'7!2t&5 I8<٫4r@hr*+5ǵ?>xF8A(-Nj3y{ƅzMg+k`!' Y{ADyzi Ќ;̋3zx5 T'{$. OS'U0S0tFsK.4zZ;VԂ&wL9P^Zi"r&Q|%ۅ?dQd/C*a[ 2rcuqݯ]Dx% yk!;Rr{vg'X;G"֗+͒i&5tVU^ {gS`w=oJ컽;^1ޅƁz[o'l|B*=[ tc.Ovf$;oC MOi h7FFXRpjGc~8+q_Q.dI9$g&*[JBnU>M{x#:_uPm1ǡч WŷD8G.4x'7؁"AuuPÑW #=~&x6x^;>0LFU-,Ad7IңislTzP-*WaΧlD,=S N҇ESvaR,/o B92XHbGnzoy\؏UZ;hYJFRFVl7,Xˊs^j*yXUcN)EV=!վ;VsY܀ٹOvN"nvZIK%0Ya %bQIxC&"E?]n2TmE*/c^p-p;lurW_g#+TN%g(NqCHNq˭LhJjhJfQ>J>fĺ( :) 8E?+dwMNqfAZD dȈL9 L9s$)kmV'ľGKyb.h,!Y?HG(LyWdaǾ7: i}A$D4+,~1c^1tquHr"P5g!!nb繌{pqb}=-Wv~2~xkK>g#4>@njvYY”3ذ?cu{΁2Dpq$i(ˬP 8;NO/ܴ~f=~dr ;`5x9dWeUTgφdb6ʁBgcgjc= òO>I[-*kS0lX^8 !qv}̴depRxNZSUSF?;FScEgSL~ _0;JOMl1s~ 62 "X)B/˰r)$Y<cGrohO jDYq랴/s""~FCq +>$>*~m~q,^O )K'.ek!9s0x+-Ta8Z(4 =|‖>flJ^&->n*ԪWmR#˚.EMG2"r4l 7\?߈^9y uA^U= mf#+1S$>h^@Z#2ϗiP)K+1U .Z{"z8I@͍,x?6סEJ_'ޖW]2O p 6ҀȤiF.wVgDBEa3Lrve 엍J RБ7IZ-e,LtQE eVr{A‹qCN_ʨ،ԡweŏW'CYzJ.3\K& Y?=o_,:߀2\DPYŌFDT;}=]s`VѡehE r%|4][*Ʈ-l=jnVqsc5}hr핈IINPٚ^;@cر iP5TTZVԥu} Ml?n,/ug:Sge-c70>]sɡկMӲL۱n`l*:[{V \v: +^n?%v2~1+D3 )M/s%3}~X"0{ajh3?ehh4Yaε4kLh9T X . & W!9u,;cKSjדVv'HHK \91٬$].qIVI}0DK{M5GCҍ _ ;CLr]rQYcq,D.ahūq_c5Gk͙sA#."Uiy7Hzw!J'y}$]_=`>GT (ԇp2G65~ =ykV*$w{&?w>0j;KPm>?n2jB>5D=sӄlE7s@"gTXdpؐVQbivò&5GedE_޲o.ƵBk!Yホ⿧p%>^oepp!q(r8 ".X&nsHcw![m{6F?PŶ.weWrT@qN흊]'}Ǚ5e4 7+;"1&?_nẎ[Gd]8?gF+036?$ss" '+3JΗ]2$7ǖ$T"ĀIϞ>+*=Vb޺yu֒ߺ][O *^kd;;qDšOC4W8E(z^ڷ5/؍xdа)Q'1X > -xBṮ8+e!((Q*y3(})%eGs ϦzΙK2߮kmeu-7prmFMI;ا&aqХ#nNZqC@po}>1 R ۑԛM:@ 8lQDlX7@G$Y[D:`o"wwUhV|]%c]G+CHի 9n+ܝta-P3Kr{cP5Wq iUE[_˯/R[ZELͮ8#YG=u L@YTo@񮣴^րŌ YN PL>78qq~M*'9QecHœ-K0Ɏߘ̒8dWaM* EkTJD ! e|Niyr#7YQnȽ!`l8Iw_˼$ΊS Y{? r$sk x'u?nƁMBΝmjwlp.mӗ7̃1Es\p'X@:MH`>g)=dggobcǀ{DU]xR2K0h3Go_s0'nwtt* g <#Z)%0ˢ5"[䃶t`/ F֔fq߂V(PUNL Hva뷔C%u̯(WEߖAlh^5X(Zz]VZFpz?~v6欱}07-U.U1% ~BVRz{g2lg ܯ;kͨ@| B;1QB}nro!(*'W2mM'o;㋾z8!MD撛 c,-1LT+QQY +#69vX.\n 6U#/V.LbyV1~hwKY_9-'48#C ƴI}ץrPN\ue*'jߢWqb>6aK+E2lpŘOge nѝ ~gjNP=CrB4maT>;y4xM=V+NGWR3xq0`4;`n+2qUL±5Er61 ښ$ǠX(o39B/Hp&ҁrHMԶb,IpG#˜,Ń1rk{p.XBԅou|zry)1P鐬+50 .ڒzinGuvab,|jtpt LX7Nyf̮ʟ7y;W@I7ʠM'!Gޗ45'ؠALbö~w.!HYpl>)"sehffzK jI?L"-8xQ_]yhaeЬRfLgN!qOR7,1fHwRې}2ڴ &+}="IdŒZ* ׄ}bGq7:^r*6}Q`x9.A4}Q*֞z=`QBK5awd"Or'GXxR4 Cj-.#q$ n$>(W0blgC!gēLJ+⻓#®Wx l!^ +ʹ*uSMǡݯcô'Z*f)J~9VwuJ]~ 2"PR|껨YGyaq:LjNk0B(&>_w2s(zN}1r2E;yq{ cA^gqdx*NJ(X4D""luk&5}'MvԚW?di*! K*x;K~]0҉sM!LyUH:<ݰ>u? }H\k<~p$.sifjF;"Y3$P+64G;|@t4!ua*@ nX-u)r8٨d>X>Εx- M]4Eн;"Cyt1@"a W-|;ӡQA4NUj(ܺ8&qA}Φs% YP@Fn#%h̩?HV CHũ*oWk~c+K{U͌KB< Rk6^#oLrn MuxxԮpJ?.>1Y^c;ץVu}_'Ǟmv,\<5=(Hd`d"3[DA{gR_WUgSAI;,IA|Lq8zl\ޝyonms-^nE~ѹDcL+H1["Fn,d7F+x+9X v~;%'9VzV!^FRbbfQ3zǀ_qt)t3LCL=4T/&'hJťp̸-y޾izev'ݝZiV=&si).6`U.ƚ ;'ųa[u#Ǻ>0GRPNoxXu;N@z`(UZ~4~O N IǮ䜀O|Z4=Ř i_ǃ@Ʋ7~!EDaߖcͽStSĆ WHGB+e=p6֭S0J(Y#M;D]jֆ)/,YdK^mT,P}`2XHl;ڀ*,{)їi${VI#7}LL{(by1KYƠW 6X:}k%EX>EPB Mh H$b H%?(*% q+V'8}t]nOLG?C2`OB 'Dtׄ9oH=Ep%55rT"0}m6"͟~Tљ+l>7~߇3:cyWhwsO">׎?cp2c?*'7< #.$ҐDc>» bTP&NF>qݺ(}lhjQ[d`kfk"OѰq78:n+[T+ֺ ZuHc. SGzDMuZZCW/E KR&T@mڔ jܦ[\x3j3 ̔'|Cb4*A1Z5)q"8ny&r~6]"Cהq'LG]8P36VF/!YF{R,Do릩k9ޝ,gC8o̭Ɍ*7QA'p"B>?-YZFedxV>*>f)5UdWzog//R=}ߦ;8%X;AfJNzOTnzJKԛUUMQGGUy 8=,PPwy/x<[~[5sÙRXV9{݋`"JwrSy%K#p&:i_7>dqW,֌U#x5 N=쓒@(>JLD]JܰQ!5_-E -a5/;Q(O~ׄo`D1A7SOSF[\RL5:#@F\^{V="!`n\GI!Vu (B#6F9&!SMtVý21UeN?;2o"cUğcF8՞Ŧ͡K]fn -]FB=lo!ɨzxED@HbIC{nF#_;pۨ;x\ ̝+~z:A$jA' ;Æ`>X'%rd'LpGd< L{-Yj 3J6/J1Vъ2|HkA"i/nBqW2)fo/A%7yXFr7+;QL`c=̗0:;$*(޹_Eꄉ >Y5v@be[ţB64ʇg _WPu%HV˹ 'VژU[&ʩo .?],ۚrKN0z*MuPh[! s㙩̕d1 eK`>Y 6U'v1IrCh~,t>`B ک+ [fAl)^:m\Fl/5r{ +Cc:F oLT>_@Y>K#-OД2BG!x̬9&^>_]]JeSxZ``vb)y~U~,LX-"#٨ cžo&t0ZAw/9dӕGЧ2ВOY;g-iRk8ZF27!F[JA "Bz○Oet]^?At ²ba=/&8.R@9e3=f%wuW ^꿱yhJ;:J0~ P KiӬ.-%5I5 ^fa +~o5bf(a8]@MlwE78lz@.L.{vףedb+ZJJU໷[-<]oc{kcCW6?%B*D/42gt9P&G͍s H! LI0XoI+yu5mDKˬSJurjU$!8_O{ Pe .x+TDSs"ҴbxE&fQ a܅jqů`ńB)nT5SC>VcOPx`G %+r4JVp=w6_]z`[-4!dE 9 O$|-GY{^o+-AzCہ3f;џ<\4[ݙmi=.eeL_C/g}X=CNK7l8B8ۭq_ (3py|Z]); :^4{| Όr$3|qw%'T kD~H*h2@k R+ JjcN;ڕ=@ø\و?%4HA䮅0#kydQˮ5o3,4_iVv$ ُ +oK8߀ILE|Io rD8'v&:BX'zy|?nr1(^s d5}W9aP5Uu ? X}$l4\o'%AU8' [e|rS#D=}<~s@0:x >V_{#vLI\0$a#v?I›Õ=_ j#zSC?A]qHm 6}L!mii2$“y7 JCl Iuj4s?qÚt[VsQͫ2;Pa,#p+?5 uxGa͗lM-g#Q t.p|pc!,w!=^AY9JL3iIY!n_h ˎŤ $ͶxeJϰ$4B#G*0Bmm 8=ݦaΰHM-Sma@*fYGJj& mCP ׳Vl媣qw,)JV$ܥw)D2'l +[gv'r#A_2Y xaI:@sibd_tQ[PO+OC};R6͕~pvF/v^O{C9jnϻ li naj9˩d߭hdc29VV_ 1~]0O*ROn/jrų:h:f^Suy" `@C~畖ՅՀEU,ddI'=,c7cwdIaDYʇ唡'X>V 9Aσ/5c."0:4NammKs(Af247gO\2ufG"+ nUI/J<1K1-PiIO%ێs-,| r~'j8mХegJB.B gՄ;'KgE S%e\o42NH8@*&c/t"բJ~П: ȭX>ǻ@Y ŠW CnVT6wӇ:齄bHfqksz5j/vTKæHVCr)n$HStt4!ozYdi񬎭IzUXE-یh ^=8l2jK TV<bv5 {#eT f7oI8qҵtTxHϻNXӳۂO 1Y^hqԂo2_|.%ЈUj.[X@bSz71n/g?0#8:;V;sXH} ת:bEZw(;AqnF;3- ?NƗ =m~IA^@*døމhnbQ5:$$tgr+{H#<p,fS:M6Y J‚HALJM)/*iP'bZHe2.9__R͈x!FHU, Uf)}:}9yj𕿟R%SsyBrCZ!A R1H2SC O#^ Y[R#.Ͼk|GP79n5LJZ.ZxB~S[wCck~Nh ;yBa2@vnLG4vxn amf,YGDa:ཁ%K5((j>Y}0-u8C{x+`ƦfnRIK{k".; &Z Qo?eɁyWr4ufr/ ΠOݟ$V&mVOvny%w%1C_Udprśeky$[PM={R}zgEӏh j2~Y=mbR̗SL .fr NQזef$? N =aApS`lYkJ_/~3S7H{B_J=D8wPPKš< 㗺SV>k1#N'j>7;jɍ 9xSZa˿3ʲ  > #> x ^LփA]sLQ,\Li$lhSfŀ )RXTjlN|Os7{;>y0ʟ"u/9)Wa<|2$˝!B켤l̓ٹچ 3;zXv;I<ШNd7*TdF|B|T.LCbGж(א'c mkE7Ju~P7 ZtT.LýPgu՘‰H': (':,&O6J.؉?H n uЋ@3@O.I6zV}Wݿ7[7O?806 61dc67TRvIѲmdnQ<~h 7+f>f3trɫU[ H~F {oYF)xF Z ;\̽<5>'6w_˷y?pM?2Q#&1;G\XBX5z3 TJHLz5c?"cSQ2mbz:b󏷾2Lcd3h"*uZ6~ DM'D* "cY*-E2&hLr \k- iOc\O\\h@:%#p[MNkze6g9oFRI ZvcD6BHO1-ߖr,Ճ&NlQZn˸/B.W,S;l=ȼ#9Y U!Y@3 Tn0Ex}_^B _f|~EX +.<rCB3gnapUU|2MIh"?ҥ_> S;7&%u{%PS}V(u\)gcT1bS%Tr`ޤŒAC{^',h M`(57O@*ȟ#4 AX6 ZqT~q:s.{\6 בZX =#PF@@@O)&7ݥH|-ptja+/SzV9T аLj MWBtN)[9Ȝ/Q$)kG˭jNtQPJ"Z5o4;@^gPHGL-@Wn

      V9/ܘ a7>_W?J U $()}^5l#mYDqLf( ZUr9S1吣,8 !*P#)r{ްH5v֡{Pnʕ$SxOo-aMcQdM{. >paaar1=]iBC؟04hjX`İn Ơ9:-;4L ftְMwmPF/A5Ho!?) 7=Kʨ u2+:ų=F_0B93&[A4zTw!ݹg1>%CHU_K"_LpCPGTtd&KOc‰61^g:Թ~šJ/ NnBh>)Rc ؿ U%хEn{ͮ@\i<$h_Dͬm4ǶYc`9(gj6X%zzF?үSe8S)UN<˦o$`Zt.0,Se P%n.<#rE3z 1ITFؕPρ&Qjz"EߘTCv. q'p-`l3Xԉd3BiNQM U3O8T@"?&VOV^O)$X|sO}ks$VkN*0#ԬokT%*XTMl>Q>u(8NFsم+8s:s>xDcO5w~v{a ]1pʄN 2u\ fDzAGiyz0n ~9<΁UO0Z.m2H獦u ${r= b[Ҿ Xݫj:r5#G($QCs? kxN[b`AyK_qREp-F'4GJ0 @P9l @G^4G*,,K>b!6>c9 @ҕPڰ2:mw2RS>.'2py.9A6߼}brZ?+csBQwd7Duw;&ņմ(F-E{uPBnm" ~x##!WN ϲqj9|*"^i^ӱկkՏw#+iX8DHyn/3eOZ?)eFGQt}Y!x$~qorQ9!'gN h8zϕ̵f!B@{0(OY@\ MMmoHzV^QѕE 9iC oxiuENh'%h@=*44Q9-K)mBtkʧ]|x) D(pջ-Dʁ>Ȅ#[Uy܇&q .C%/1DMS ,S7A'Vsb?]{BmSbjjWT׳,[S걱&p͜A9+nY W̩68r5 V&'c);&)V1ћʜF%j _{bu Q[x@J⭉.Td}"${ ioM;CMޗă:PFqbX;m*5kUq2R)=!̱!4YEh K  fYp1dYAG E ڔb3RR߷3 /;uvAN߸ġ%9v;3Ua!%f{_Mʹ!.-m*j͵8~EYI96ygz8m 3ɿ6s> `oZ"gj=;Ngzs2˾Hߍ- U/la&k9wܑk=<.ZľjOEUfN=⯸+`m(q HkM""npԈ\)42%#n8n<9d]~i~~G!&cS`@DybQyPͶ(泛@e\9֠ 򶙃[;jaq,( RvL9*ɥ4:UhDW@|>8dѫ_4[u<;MW:F4RjSӓdZ2x}5/b~'^Z`a;Ǔ`JdN>66"SWl~@Jځ'e'>xHl- u/W.}DN FfڙʃklJY{BYpD@3"DQc*UMl4h3,^\F>+"|mG66m mȶ\c H<<:g3ޠ@<賂*U1gL{ri6[\܉*@νI6Ef,/d>:@!fʯ% Y5Y2iyA}5HĽ@M%WIQUl}^VmsaYkrI)b$}RY4!D`$.,%eJZ0v$Igon,V,") 玑[<,h0HdK^e֦j!-J6^ jrN?RѶ?<˧V4FO`.ç y6.؎BMH@ 5Rv8=:a IE[Y`6x$F2|jhlCG hNh=K'o2Z^qV){8AlnVjsMEڌ+,V+\J:(Ot Ì|i١m8 m[so٦*.ҕ \L9 [kosJlO6l{/ͷ5hBN6![([JX6Й=HZ5ިP ])gG 悷D/gZR& `((_ʔvF 9cS]Sq Q*N3!juUҐAg ; -7P}zpmqDqjMUt76IѮeE/QDKar Ux#?e~]ުzŢuZ>i{<tbxiE]Af=[~=pApCRGM--i+z>oB.<4gǑ ɯfCڙ5²({ZfIN[- IMigS߸ku5 qXY?LTJw-"t= xK|6 8`&tvYQR .I%[~1x4/)%ECOpŀ~^<6skւ pjb2΀jTQvRÀm3I VЭjC@A%[۝,#B`og֝>7Efa.g/4T)k6@go!ߡD^[ol-cKE9n)_+zx|1/\W %*]7V4oԻBqS֪dv;2270wV7y;g7p$Ϻk{*xJ406w8(j#*]M{`]%T:I6ǾjWĉv/ˈG|aŷT/hSHV:_`BnAݽ{ۦч4-Kڌx_utA:uhw_ (tbuNs!|Q!e{qxR0fDr)D/j{2RsMYסVLNju%~.L6X;?k~o_ڌ F$#F1)f2D3=zRB %dž&0XEdWãCWQ4`W\߉x$U ꤪ[zO V(ϦAJN Ol}[|GI$̟(T|z9 @]N~xLovc8  [H;wQݶ'42vt!:͐q"j(\MW.1}VQl4d-] f 637X[$1嚍umA6Wg!VcY]VuH/r*E=z'68Ơs,Ia}0v$B6> }IS,b|,yc=젓(?6ڸ^ceIֺ(ޡ Qױ鉦&Bj|ڭHilo5EH}%^%3k` `Ã-'3MIy"eِ3+/.(61jX<6<a|̀ay)2' 7f(: iqݥg;犉Ufrt"?cA #3J=|/f-ܚѬrȥUvm(E ->6-!ާzGɯ0Rɱc>*I$( n{s3ܘMt].^64ђPh&(G"-&T'<6G}f; @;u.^Tӥ:xQ𶖯5=t wWZ'VќC |IȺӊ ׺(H4TK'gv@$@i"AN Y.p+XyҖ7 zঽȢW{c`Rnae'rovԊ;獦HuܢάmUS$W.(4&]KbdaGk@g4RΜy0!'c7yIROP_N槣,U1PRXC](tO_7Ѝm;ktL8~+7 G׶kDqsc2ޱ' lLx>z{Uݡ ͺ$xطIgYw [n|6l.͈λ`F츴`EK&Z;; cg16vM=LG.yU<{R_Q+LcTE]^*APoZe[X kcow?t4LJmFsfQ3C_ Ź~X2֏K9xO/y ~z\73#k%ϊ(l;]EY/>Wp l [oHI0M#qZ>\|r_ MJitFy:W8۰ml:k:Yf>gg0g0AfO`=[(C_ by{\3"FaZb9Z w-ߔ0% Tl]nBZ8A+ P;j6V6˴ U;_: x\]GcwC %E{aa72ϯ_v&L\dv#kxtL%/(ӛ딹Br >W{)9aE!(7elG}B1o^ (HGPK\l"H6V/=\Q_ՖIba ,oVL7*⧽zF]"P&aD FWXo7y0C3QZ%uq2' ,(k4x BXӛ)N%XJb.G> \A%SR8jt8nr(E@ ĄBg>wSɼïw5]k7R_½jѫ0&г/TIau.ͩ5fUࠩBFV'%*IVN+ӽijsSqS Ov~rls:qՖP$ TJc@R ln RH'zH)!Ka@OWj1ec# ſvL#1c/R8U9M Bn߽4ZdAM}[,8o>^A&/BF8qMr'/)F4dXuPsOJiBD jUN"ja.Ma˶]%пk *(fg|M=%,Ys7%e;ᰖdes bo/TkSG/gCD#|RPf&ϩqh$ ٶ^"7dGR4X x'oeN㑀dꭾx%6䇹x`*74cikt-Gm]nS.$ԉDnݞTz@I6Qܹ52F)V\)?ey XeIYq)ZWg= Daӱqa7Eg%\b Řv-i`Ď3ah`.j _Φy)\20],/aIa𠎜3xs u)Qzل5G dc1W@XfɪNUحr®ٟ1Fn,9 Y gyS:3.\!lUCYb5!-_`% UdMRlQpG"\!"}m1W֙b@Cw7={.m6 RG"T7G/n+݃}\rk AF/ekJY5p kIC̈f-hK<'J_qGV:dYOׅE8.k)aΨXS=j՛9}CYNN>3ŏ~ztM*ËiomX\/rTYkdqv%1 DJ4hzDjM4ӈXFR"+w(G`ti9u_YZV0/.kO8*9 Mj?T3$OWv2 8 `~|d+1 k|IkML7l^Dj1 Fy:{Уv3h&ݻ1V߮JUݾ gćOLi \I(m6GSZN-]/vgg\IxQELE.L@k=lm$ B6Y>:anętN3:T5vOA Iumh(Ƈal5&q=B;ǎ >_. hYg G `S)S\URsi>J\' _ñF֤'tD6m;sʹml3XY@tW&SVtgѽ7Lİ,$o󒥉4YEǹQ?iE*_u/|P:k 0cK<4G؇5@nDQbµKfoNSOe=&gzYg7R8٣&۵SA|T *j2p37qg 3\O{NÓ#;ۓ}H53';>L u#Ծ]0vfM->~k]USRdjAPT1ob MP /fH:ms8@crv\y|}nٿ$!7J#`Ƕ mx־`0 BXͿI-{)&׻4!B5I*iLol;QS}̘iVC" DkԸHҏj^ֹFmlw0@US k+;gpW%)Vo-4|4Tl0縞KWMح4WYG@L[<)k&Prֺ$9{ !`SNVԧxlO*BpKȯivAFIE-&U:RA׸7]Ѫ9I#RT3܇y].LÿTޅP"Uc!N)ZL'R"=2%ǟ"ɔԟ/d:kW{BgbDuV6eBJx- |5Agp+Y+n/gH=DW1uCݱrpσ0L{[mZoFp,!)CcH:MVd&J~"*ޘj2,7Y A~y.r¶Ͻ@L_}VwnEѳh752!VOvCC}9⥆أ.>=gϑU3&k4K 9YN$ ֡r'xù`)(Ôxܹ0 =`WWٞ`*$SFg+&:>> h̦&s5~2AG$W$le5,{IlYe 11\`WMh˓"sb=Ҫ0)P !'ZyGM8G׊Q Տ5!+*4 ɃQK E؎ͳ}3 Q۴(5|cbrt inLê>7(Z2ܜv 1<qG ou/k2j!~Bj1+׿oE'ENKB (ВM.a,(ԾWr_0ed ƥP= Kso|SHZJ덢OFD`] zX|-Tl$džyB3nzmF=d> =T&Mne9}iNVg!gQWv3+ꇬQC5dj1+R2si>B/ Sri4e MG"rY 95m"<=I_)Ou H>C5R3I|z[7@\rv,7 ٰB.qf/ Ac'`vדyn4'%UX)"q*l_@­Cy@]HWlM*IH#HQMͪXIȣl@r'=X1Rh~[!a3BE=xRbSEWClnl齿rPocYfDGn?00EB]4+E=Hǿ 0l࢞9ma`BЭ_9W̔ϼhqi(!l\/g[ͩv{cL, LGB>j E<3@N]cGёp8 p`Fp1h l.wQgǚTHnQ(.eu<ǶC・D}Sg:d/jc"m6;'N eA_,@2v/"e{)5d2#諝v =fb@F_G@GPb=IxWؑfC=LW ]b-Xn뫤r󔾭Xr4a >b1$EwS%JhU i늃VF5)0TSi?ё iI'nwhm1lew=o$_k(=YO@86ۙ 2nKVL AcG?/UK.|펚pW9zgO,iюN8x؞R:Sc4`OW8 S.V|P^8|u饕!"$@o(ꢜ;D>RQ8Ɩ@T<tueZvDXS@pv?B[ԸUf.?G0e9 oRҭ9mG3fwx e;~-*r5H3EOlX>z+ :Tc!X-c N+i]:ܔ jqƴUfO. U`.D ÓR᫜^q5ZUO鬔WTĤn,=8(uUON7^3*a Yk0P !U(Ɇu)^A q0j GV͊ oeNeԃy.B3y?c}Ze4m;ϗFbg ;0 cu9Oex|^_9u88vm āNgG޲x&<-uJ~.jݖFΠ07H$b@5*1Ed^$72H;:I6vx,HVgew$*B0Xdg %/` &Z013\cŒEL(ɹ!2~ϕ }T 0QyLE8:l#)qSdMVs 4[!94>dWqo{x v%-n*̕Ag^!$2=.\b(x)XҖ)RM)q-تaֹbuUc-:vDǤ@/|+_'XZ(H_#yyr\5-W@EXF>W7?t딋{GKޥqsr8[1'i'7\-L}籍PPhڀm;6*/IvXLmgd1StK2bk7–)]~'-;)B蟧#Ά̙˽˙Iy8" vUY]b0^ YSl= 2Dɕ^plSGN9:US͝T2Ң|RIq2eofQ`zߜ#ci͋$ybvV ~DM:6Pfi)s2ܳ(A8Wob(|/Ӥ&ov}m3'}bĈ܈5_Ϩج0irR4?8Ae:GzmI2͠. /Fd"﷿KŌ}mXu I?uT53}}gH~ET<($d0Ecb]c~n1WU ;zYJ=%SrWƢ̥mzv^"eS*]b/X8E7.ϙ(|XHkdw|隠H[9.؅jNj|(<>EBZb {j4?' ix٠4yfYH6J5Ǝۊ-p6~hIQȬB=vL7>" )_ qPT1.o6FՏ$J[!~syC#}\ ў;LM4=,Vsr *3bύUfZ'["yϟyWL՟@"O;ARL}͑lO=[Za ]G$r3qcXdVuI*͐ԢFM^ܘB\q6B]xSt֬Vt\bZkwl v;#Z*T:BWqURNP/nBc-2bhV]]R(%Mdu:a>B7EMâ{E1Nx̊kE ]X`na2fŒ'5$QrRF}9(%iEGl! c(TX:%zp4NW_MZ&&l !'PYw$gQP=$*&D{tcoRa&l1yq N>iJNqjJ+˻[)My޴?\rC4$@( nسu!ѭp~n1C(stc9qw> (:QY_FC 1k>%l泲4eOK 3$pr`'8Qm1/:cD"l-lhW˺x☋I(Tľjm 09_@|&VO(sq\nNi'E3c53̶7|z(inZiNucD[lԨ=bX\~v|(,[u:LMc聐=PYp!8챚Gl~?hW*Ib/o y)pd\cM-[[ EJe}*Oo~ĨRc7YBԨ`]qE5G]\'"40Q7rO @胮;mǓmCO+ O{,{b`{‹Sp,$ Yq+^ -D\ꂮ>1 c4Lܷn*^TeN7@zJ~c?Y [،D٥R䥈\J@.kVCmZVϣk%Ds'ڬ*hs":=\ֈ\eB5 g͈L))49%& ӶqLywshCc0Z|ࢵ;Q'eWqׇH:&ˀ=ʁPߖא*m1,EY[~Ȧ yyU&& ue@BmlF?4R错VZCRr@.E>Wv Y.}-T1&pvY?T 㨩&4Ej$nټ^PnX< nOۢu%VKP!c k =T( 8B)TQ4 e|c>{W2vhuVԘ(Gpa!+nz/1zWG4<>ѷNyq"bFv ?ĿU~ L`3nPLCO~v'~ؽǿvg<e#>]ϚH/Ƥq&ֳATɥj:jwfb[S`#zxԕjJu!v)dJOO:3XE% £$_yxy)S"z$8 S |D!Y u,2:HFŶV0o DY|.0!Z Rc٥'6pM>.9Ll*SЗT4}xyѝB"!6Q|pM,9Zz~4 )Z&L;jY~ԇM&66t"2m!) `A6qcqx iض.Q+zS38R ACޑиFh:h6ɲ +g{M ՘iD;a(6ޮ^#Ε[Y@ ͊R<#XJ뤷Sm`=Ue|{߾kާoW,!:RC~O \v1oʎMi[C(p O¿zң@Wl3GMا+W;*vs.O<\7@ȬrOH`a~g^+Yҟ'^G2 E) )1n|rR6HԦ$EcGB TΖigtQ5_ta^S:"EOH,Z:p G b۪\x!4Rн +4g?b;KDOFa38S[5l}??Ҋ}S|/;cHq$b{7a#H{_ ipQףir(ґz%7Aw2V3=uۈMSh%eԓA| DJ']bz.[Ih3LMN^6BhT}Ϭ߷#IO 3?[/OY tK$قzHw3|I*{ 锌.aUFg_yQ# 9M}}Q^ S<.~ 񇏣q+T@{UneT nO>sAMS6Z"I 0IkZd8G /\+XgZOp[\[7/C/Psc2〚1]JӨufXW|nubO<˪6`O^ \2l N bV6a +iV+.ToXy*BDCHT;ev`G!ɗXiϖ[Л~bA`?MЏh6dSŌkn>"6 Wi&bŵ k*KØ|>0R/WH ]{ofD*5$uפL9M(:QuPS{w r\>#p%ásNuv8wRJhR)wMAU0)ioϓzr)нV<ÿHU[U~~Ͱw#6Q%d8,n^<P#_/ճ*0!f]8d{Ǥty(^2x |i_3pcLt03 #l^'ogZ(CY9|CQW^iܻdS}c.`Z=1"!Lc>hAtm婷+r]f=ۆ7'1 Ajb R@CT/ȸD>xțB<b#a fKuDNvWIH_0m\ [TbGk;dߐ׊LK˴ @Z&q߮J RM68 G.!0bxDnEH'j/_~NeEJ;;džY?dsaT/^ 5X3Z61des:`P۵'\loĨ&GF)(d"s7P0RjDz^)yj?0dYKLcJ, l+"8˭Cի(Բ RTz8Ɯ-Uwb'J$;ïq;Ʒ/Y&8FݟO1q7~ ƢA.EofZ7K}:G;ֈe8- JGWuZȧ.-wɎ] $:[ g.T݈(1u o#$"߈kAQG-ǧ.. '$XpɼN9W=-wmymvw݀/j.XzjAK+"ުGK_+x+*՝_ )^Lz1G./AO <`4?L/5:k Y޵;AC%ث1A2x;Ku6C5) 9$iy6paHdr!G@ {p Aqm77XG}VBQ (Њb*I/,=6vI NK4{r/smW,gf=Qkq$tVpjExc 83ƍȩg 柀`\Hꘇ¿Aha5OP.^B zBf5R8Kk1n sWXyó+zr?Q3D9+N`ƨQ n%\8UX!-ypjlupR|H1I\e_ؓNKܴøB'-ރ6mf%1,xntNqyM, '&`%o13 ۵\,%taN AގR%gl!byшFmq;z]FX ۧCygX?3H#Bj.ywIBTrJHBg :REQUj"wX^M˂0h,X_oQOC}.~'eE3L+]^:a˲@ubvxtMW<$Uȱu0-W8Qg(dM 2̶&;f[J|_gpߪTx֗8!=?%7v+22Y:q J!丳; cϋ7!0O_ 5@{="Ex-:< _{iiHOaWJ,PǨbQ*rB fqrxK < Qʑ\A9_ux)g2֋^Ϣa" / 7H*n34]Y$dhzBp =Gb:~xJU$Y =-  4O߯Vo̾&ϤBV(RwrU,ŒEOaaeRŘyjS/3rN >"OWM\Ê'~d)OSf~e{v -3W`d6E Sz)wi1z䚛خ O0sA(iQ%`u&ں 'H|7Yh<~r/n}Ҧw!$lWb (A{]&EUD1҂[W}Vy$EW^h,Ջ>;(a5lTո5U] 9?J"+Sa.8u9V^rR {w-e;ӔMosvu̯I$$3ۿf@SlQYQIb;d{I(6BAROGF[j4fJ馹TH-fMbۿA^&[/HZGxLzJO21o6=S(0 >.UNS5x $b'/+&i u J?Q.YKZ;qN,FtNK!ײQg&2 i T8v|%ҷdr/G%G4m:BWt ]5HBPL7qR\үMci ]Ş@ƿPy4qf05pwK(J(3UDE;L|ł~>ۄ xn53^ Ge_%Џ"!t s_#G$}ݞ;`2AJm`zJU Dl\Lk V1g=wA.w3XHvZwg+LRA8݈>j^}cjC_^maX$Ll7YS6\i_;vt)l =J)qw8ٟ]E7=3F˖AEȫ󙗟m Ezy8d!V4UL\%{VjfA=!^7Y*=<f{Ma2xYZr>kߊ:D͎kohMky`Eo-9UfJ¸+srUHU޻A*E]US?}(Q?VH >誤qdr7*O9zǀ^QC*0hnѡu8O|Mzni+ucw6%W#wɖw{D> D;*ELJz6eMI h/8£gslOKq7@.d/2/|MsyJ _9 LlX$L$'2'EIl~L~уRjcf X^;G /;o2g!X˿w ?3|cV( 2b\@[!1}eSRL1xU[P"ьf l ,  5yj~܏?'9ϡEfy-*vtLqD,fom؛4DK̩^ChmOep*(\8̈[?7 6?еGK9f9Z?$PaV3`Km[ \ﳻU\Al{i[C_?*L?U~اd'OnRPf$'-Jn^xܔQd=u~P)yy to}Kv)_vOǷT*l/6=" RO&O>ocF27bąT`me4i -(4榺FU'y<;%IOlyb0w [Mx殀v:( *pŽdI3;M x%,=Ql{=0Xi;F"v=u(H`NݲGØ wɧ29sV+TZ)C m%|(:֔A kQ ftié V<:C9>5I2GRN(G $,4iC.o&j00ٲfs 4E9HaUdK#uly9pJ mc0aj{HTe06ׇO_wѝ|V\ 1eg _UpQO vG<̮s} o\cWF]{|?bgtݿwJr6qߍG}^bo:QbgDPX2)C~ު&qY9HtZ{,ڞ="(;2s0|Ng^[{tKSYqfS22ܙXD!moW\PG]4yQs÷ խmY2/{-ᲲT 婗7KQZ0x>aA}$(aF`yH< ..Tp_Rb2z&O.y$aAbG֟QA,mZ( +` JnygC;O9sӷWipg&¸ޱ B6:8eQ23,gx̕{,?}X%9Di}Cc+|^R+<0؅#I[^YֈMtg=kUs< tqII"լXE/͎viUhedG gsC5ˇ%zLPTi8B\zK!³D>s~ӅH%|_I+U:7z^{xbjGV\&6pGv$V޺A|*yƩY0B8l db~ $~l.{aj VĨQQ&L SwbrZ~L5Y y[N)"vgdka}lfnQJ (H!ss|b7F%4zPؘsn=p>|b@ӔԡBO%fF;N1Vu1>wv.0`Dlp4~ՉNAm^ rԊHg[s*sFE:{4ON}_TUN@ ِ))׀!.PZ;#dm~b%&OW@pZ pz \:̌P;JJ%˛Dz!xxѵI"jZ3['Ëܭ?2=>jE?czI8fgX` \|"RanΜ:_T,V`1A&F,"a¥0dp Km{ uMt}wmEg=z{2{_fJD{ B֝Bu4e Lu13фc~k^&H_*iQFhC.Bl2lyx2kG҇-"TS9AHl_w?3b8PBO( t*U{o ϺsF0 s+%p{X]?%IH|r5ZrwAfP6{N¯u Z,uU/܀/c_P+"6mZuZQla%o|hT5W&3BJ҉JjAnI s%MoJB_MEKJDCZT8x+)\xVO)h:qhP& tX.׵'^[-oRBiL׾"!;>*>utN6ܮʟex֍EQ/k/yG Z(s n+SZ#ǂ@ʍ-sYmb{kj.RCЄW) cRR~<2k^~cNW} }qyTH53!l&*zQ|(ˀRPm5֐5j4WOr:w_tlW82!O7٩pZZ^V 7AUNmڀ@DnMRۆz~6V7Ip(-:Џd(Mx7̴@߼oP(sAKh7'r$նhZQ\ګa2I>yT{?'&Pr$Q.hx$CDTԅl00+bp KYǻAa#2q̤nIl0:|yǕn LLڊ3dn,UFkDlRr]Td{Ȃ4 ,ڲ>`BvH1هn9ÐTJɛq@p>[m1`hY;6Cɱɫޝ=2k`땢XǕJYNa?1E݁FG9O-\X=1 Noz W)1*NBZx1wqޘi6_\&tB00*$A nPԨdp2RQ{l$\|ubR ~?-lsJQq #m,Nz\bqY5wZUykozUC%nb ;`G1> C#9iD+2gFMSW>r>3)t|<6I$NK gK-8^;\Nl(oLܡD*\ļ`'a iucoej&3j6{b=uD%l戳2[vNgԥpbl^cpb@7AS?^jViR^ؑ8gҀ1Xr 60omlOՇ ]ȃ1ؓtC:n.f,ZO&\jYk 2mwlwH+EKıȆπ63Y/G/{knaF#. fI*Ƽ^'n훬Gp`sKٛo$H1?L*X48"c b:w{YD]%LH__!SOf^vkE(&ŖJxz{mV%~3im Yz.jEaiAӭ/j2>PE46(CzύIUu|V s1Wծ؛ mR2ҤN/LWGf*XFMBW,=7む{7"\>'uE.}9gbTyU;by\WK6[yBjAxO؝o5=ex:q*)o 4QrCÊ;g .Ƽ- 5$!/FxOvF:EE".U0L$=7GW* ܻUQ ltXmf>v@d-E/k-grƊ6P#P&B 36ѡG!!A[RSq}*LIjXaٙjV@-]>6 U$jЫʈJO*nQ1!e M.,j6/Z~E}1Y { Mf֙mzM,hL{S"V#GVh^;t` e /"?&3ِv̙/5(!D ㉚bʷ!)NEu,~Ju]QxjJ +zK喰CTJТ7(@[HMtMr "ŁhJI:==_;~A&c ,AkY./4~N8 kU+n .bs T0e&ث=8WڦAu p#yљ:Eֽ8 姈&ì: K=֬ ~%5C|Fvsiua%3_`h6.oH/J_'sw¦3(>v= p-8*'khܹ.X(LXjUa7\u'6PD%P]GYg:Gh!"oxꓨ1Eˡ%p^2zn7S8 ͨb/~.|:gxNqAhM=Z8*$X.rB= cʰE,́}><ZnP<@F]!'/EۦT LTѸW)/^ټy 3 `T6\=/q`F'[.Zs#b眺.O`Cyc s0CF e1Q@cus,ɩj IBKc BJarΖ?,iЛk$s+*~CW3Mޚڬ ĵPOr[rJ)}=o9lk(pXC $?~:J/Ci=nk{Հ9 څe$44&_@eG>V~^x1C%k{ӯ@6q*=ڨb9n_y4O:ȇܱM$ޒֵ~\ og-!WQ=`YD??sM!Mk? vXOo@*02bdz;ޞ¾dh"K3 I1VFAΧ[ +G/ vYwa]fcCFLvlQ"B)UUap.NgI[BIpl?2&DI`.HS"OcF6dZWtd0ңSqGV\i&hzX-XT#j: ZS$oug":7ݎu*op*tDc@LKg-z?VM6mWaǍ nJNa<%EL? 9bnW LXg,7ѓ]Ȕ>^M GYe>kAol>om ]4O-֧e1QmPNUQ;dB{nF\\c98NȽv>+<ӰyLs_{\Eq'$+UuG=vBK1FSְӋA0z40F}3o =ՠM-xQ2 JGa sWƺ)Xz.2jM4?a͚%#-$ЈMn2]b>$LCIUUb^h\<zgJlyz@qF5Enkrs_[ʧT@;[&._}2eX)K(?(  +l)Z`lƴ)>`fF$#u4|-=oCjoGpO@;GBqٴ D9?8נɤs5rKBC[ZU-wn`\n0t"[g'%T}3z[vq-=-K9!y?mEaY«Dm(֐wKc}f8QhJ_ 咝WYFD#DkT?,}ǙȾCdU,S'Z:gܛVH kd KPdt9Bfl#]N0 8N.M⋑׹_m!՝yW3+! [GZWV8츴w/wͰ_2yƹȈ#ӣ,Q#x}RTwF4âv]4|$ xw/^W Rhp1ApÇ D˜&jÑpM6h!0d_Ӆvh^2aRKiZ䑓${/113×--ɤѯ5Su> o`J8s9\5Zak iiٸҍZ&C ϔJ nSoa37eњXŹn[4Fppav{dJVsŶ]t1 Cj{=Bm>?goQu8soKIyTKXT7- $| q݇˕ɛz|9Nj<슋3Md׆ ;Lc-p<K;{ ^Ab?  D[۬UwX٫S2Țl@+s0JIچU/-[$[D) ^ݣef^9[L@|t(Vd xјJH?[P`,vڨ*f@p&3fW(ʖ ܻ^v~Ss*)i:E#CQ_7tXmTe^-tӒZe6EPè1&ۀZL=A5AMNZdʨ F.a.' ^Dݟ'O?]äǯ3 dWWYa1)S]3gpC q :dHp7sQ:9ck%䤸qf$G_ǭ.1Us\ .}cBkFH*LV Cxaޒ԰( r:|w:/y3瘒z0+hQއQctCguhHV6R0sZdZ uʸȏHd%o1ڋ`JQǛx DE)4'KpXhGyhk C.N4cLʊG_.G-G$:I]Ų wsxzkN"8tkYv_$AR)_ZS\5hCh331ׯ ?J o.$XtXH$fu\GrKߞ79;[#N NOMKgV4I䵚:0j罍ilCXq s}$)BWR!I@l豈0TC8#䃇;S͑4m$g0oC& % ͥ28 L, +Eә " x{+>I_^en<& lgѷS|ݡMK0tb喂C&] FI|_pbE7J? {(QA7DT4@#:7x^bߢ%9^ZwU%[Q~ Aɕ0jGP`zK5_lluF^\9 E^%*KۄZ(Py3fLu{ħqۧ*CFlm%o4Pa{2OD:24nԳCEB^U#/Ճ21 |Xm B[m9$;{rkxC\Pŧ_8@|4MM b-c&I9w:3;abXdƧAɞs=_B_=T~8xS좃2?`nJ1 fů & e^r$8a NCAV}rayĩK%e}|;xjbu1oek+a')j0"72?=I!elRccp+2$$65BOUwa;$9հS"0LY4cC'a$`E =U SAIGsռ0 \Zu2w !ꆌ>7ߤ/~ j39N9CkcY.28v*d"cE]&/nq[CevAprH"g%C4-"%9*>h nWYHKGl /5E DBצ.~f?xȵ3*b^sbg")3/UęEU&KQMkV()zQo p]]Qo+<#ng`)LŞ$Y<(U,݄O oת"n7V46Yl&Z?5z=n\'3)MEN̺п~Zdim?ߵ5,`V猸鰎qI~\IXZ].Ռ8 *?tn᯳>ηh棯!"X2ṃ)1,[)nI眊itBҾd|I`$" u+D"2a$R/cB1d=h0øW>'>z0k ( HT8nEV$.sR:VFvq|\SNG| ` f0)՝l*mTԛeDTi̍GsklPof !RbxU{=:D>R E#"2G?wx A e\3XniEo~Ihi\jI2djx燔L_ѿ٫?؆ĈE%Oc%{|'Ȑ oh"-v~%# DPL* .h!L_!fߛb$;ʯgƕ@Rz ơ66jZWZ@^Vvϱ~eNr|W8{W ["j(f;3=jxKސUӈyH{&"*1CE=ٌBz\Dؖ  ڢx_C\=W{`*~?GD I,}`i/HJstwjݵ9GSw.Mb/oyxEtuQq8X\胝Eb3ǵbuqנnjx fѓjϱ]NY*4G쥭c-_R`Tt_٘pDZ7}0)qOƷ6 ǞڦML9+!ѸTKZ~1VW$A`%/oQvDk XmR{T-ZDKPe(l@4G:;dqKO1!S48l8砮,KqeMOKwIψ=q,qoxLʳL6@#ː5kubhrDyuԘP'#~Y>#TYoc 4>ɈNҳqIն≝?U}(o,dZxjq8o6|79r !~ :NgCa:o ^1q_px9b-CH l&/SVUБW*xb~]a@4^.# a~^nphgrNY@8bͤ>0#2:6Ķp!Jy+Gۓ{Y.ŝ3'&e{ :L~A++wQ4J.]k9z@q>H24yUj@ϧ۪̩VpKPfCހVUC/E)f{/q6 "XzFx~H| 6B5jf㛺HdbjJNJ>r+W竹2R|CEÙJ.DŽ _͈_2lN4 5c/8N̤rap%FYi}Nlr5n6mbcG0Ӭ'Nuli{`<١-`DɰzUY[g k<* mcFoETFα[1UhonLՊIK6[+] I-ڠL'Q׳oߜgW!b)'K b="U3yS1 czGh,^s}ƈFفNI}B%S}V k]l[ae̎lOD6 04D\_w.:=ikS_LO*r'XvF{bm+Rp@BXϞF 0cnTZ@X'.B2,FMa)K$)O殣XJE,0y)3rzۘRM G 9_a`[l@NLWk#qʂzk9 Q+ ŁISDW+O/O50]kr@d<.-S\3A p } #vtm5uR|'bȹCGdykgӹHܭ9{9 R1[mb3܊*WϑY1+$WП;#hہ}Q-;'+ox_3RM3s"m!IP;1NۏRVfPx`t}h$ 87~"-ϾCr^IӬɟEem\ BeNQ _mJ #B9A3C]9 #=BYsz`旽;UniQ}%VfX|N4 B^MIǯ,$tl}҈v/a̪z1ʥ(sglHࡗT{,}?,'@z_ /T&!0 #Vtk9X)Yi9?Or]ʱ(d9eIR;*ak='-k/$KZ+JrmLEO-{;!0B* 6FDCN~6>utڧJw^욭kj 0$cCĿ4mqʮp&]`sTdonОdc9o1pة>fp)ȡipR:EiZQG8egcĖ XhYZ=+`2dž 6Gʏ֔,wS54O*Fz8 b; 6M-E"*0'+1'u~g9x%du} S~b^4;~i+3g=YSb't*]@WW`z3T=XI$4kَMKl ]wyQ^nO5+5f䇳Զ7i^ow; qvİyuДI '%gfkQiI"yw[ ζEU.kάXa߸l%Y B,G`0sg֯G.;nAllS"2GC.LE(}xB=2'# VRdأG2Z1!9B˖#t11} *s}ti d,E2p_78(-wv:3E6{3zZ}^A+8ԔoxĚ5DVEs[%@3,BAߢ7]peN@s] '~S _L;! lɎ0L~^6=ܥ"7۝CPjֵnv-P6ɉ%,Uâ0ȮJ]t;auH58GUbzi{Ij-@JHzbRk$A9:RWQpUqVmXp9\ _F erKwVti^" { V:>a~X>sC@)C3=<\ٽ[)5hR0Ë&ňtM,l{%KXi&N'#w#kZ9ÂRd1 mC\]cQ/$88v bH|jM|LS;Zxr#ksptY/7,x)e ted)SjRN}NXA}AxyAvP|mwͭA⁵|ʈޟC _fgetܣ|PNSZ2LQ&OHDz+a'lz}?Fdt]/>s>7Ÿ{,O4!E|kP6VuܥJyR"|t|-G 6Y7= ox?JJ9žݹ !op]NKFG,-k:\7Īpv(!T}`sƂ`=Z\KOgrJxO9YL^xTƫxc]1A%YͫCO`CVh݇BR6 _e&Yz+%Ct#f@Pψ?̍HLѾ_8\t2b8 c δPđ=}Jbi&Z-<4 ^|Q`>)$%j'_RI4WMfhgNvuJr) NB_D8&B u"ȦC nXS$N% Kh>ۗ&Qų@VZ3DKo<}A̗҃ SH1 /b6o)Lʀ=wr=<q5N%4jATi6<cPY,2o$͖VDi޿> Cyvk\ٝv/oMKkiy WGԢD/#WJ%A-a0;9d=z|n7ݞ$?%E]F[$A4z*2*8/<,o#uB_s$c9:1.eigҔNZ5KmGl L } aX_;U( MiX`/}Ɔ RpQ4nt <(SgqF&)ٯ?CеbfJm C]4"ǜn )si)ֆ_og+FI7~K[c,Z./ ].ƌx=*LfnB%:9٧)?@geb~1v܌QgwXb}wCHsPaw2TTU8 yDb#oy lkۭ!o֧S{o/{:b͸LTgZ),K]#aCT]ᎵE>4V: k}!M%lA;VժiC¼FI(Ep?&_f{Hm9^Dzc$ d<ت<_~ Śf/?싿k2OohS^4mwy2EuʻpgpN4 u". W`4gԿ:Ѿ'SK`6Vhq;NY_h[b6狏EmܱS%"-;)!Zp&Mv0Kjms{"O8+m1SO%M^r 8]Z(Hu{QѸ.NvTJ(@4ɰc4i .gp!c$6ATS MrBZ} Dm, /ׂkA`^R%2H9XK^V0Emv)[M=@ ^*&$ DSMo,IF}S,Rӿ]YyZIXʿ_so5g<9ٹax1~efڀ9I d*XAe{^rc.h֔paI2ޔD w{ca@_<#²男SArҜLs @ xp}cDe2U=~9"5^ Yr4z^jҪF/&͆Y`A٬UPc=aTB՗W,2< LDcOۜ`+BUzQE Dkii$[ T*VΜp_Dp٨wޕV[d|e&{'ܵ4JE(BJJBUAȑ5P+~(:u% "h.M *P+pꭓa&OK~[0U% EC/Z7 `-qM䭩,d:\X7PlIvS-iu wS4EN &|NibfЍ5ִ(Wv<fIF],aQc+YpT/@ SCu+-=q`mܡ_Q:e#Gю4ͰAPL;}2WgY@W%\ɵRĄޙ6\bG^lVX LSQU}`aD!}ϮF]{g@/0kVlǾusoqL+J`B ~4\whhQƠOM4O~/ٚ?êUk Q1܀ 3Ju^5S8CiɗR̨,L}5&'4W^A%kCʣ079#À>$rŸ,- kN5àz` adDiUk.pq}R.D KJ,l%>7Wa)Vm}ҹ|i$yR?1r-{rg=LZzM~cFs'0MPRт!Bh2NA{淤ѳMt֎lU-+K;zޒ c_].ol*6 Laie_Gғ\)UwbdV;K'Oc>ɗN>v\[Ϥ՞V_nUskb*_K*?ċ_z eWh23HQ)jAXɗB}/7+)BN=SSl #[@EPKQ?F5:FxJ|ٲ~Wh[ۉ<>vvx7,RJ`}C6ȾHAcb-a-rd4 8BbZ̅H'LKiL BpopRD"6C Tc"N `@A[sT~:3Ve!TYiHv{'^eKun r:o{xC^Y;.lOHPEŀdrs5`9Y^Y@=G^%JXݒ Ud@T-%óܖHss7"j|nL6nbס]7j]+Fҁi"9k4ř^8% KRد;B˲*BBW" 't6=f3%UW5}^˖ØCX ;̘I,8"hM -HdeQ7b Dl>p]8 CԞLĔ-X2 X7-;^#|dG8'ḡ)[[inG]P +n|c|0ʏOY*Ql?ٜѮG&2LQѱ/d/f6*8z1ts4V">=J`^4&W3?擥l2TBEN1ʽGO-L1dD406D;~fAW,ҾXft?S;t;Hd@D"S K1#VH'DA=U֊ER=$RO uWS"Bf1'iސvy:$7:YDx׸44 fIޭt rmG܀Jm lw}Ehf=R9?¨sR3D>tJK9aSc-^N+{0D&a&yg1ZIdcz+\w?wʽ K2\LT_73e[<xwG3&'U9{?iF]>Eu66A<Y 4;I)p(0 y_Jc`EّxԠz-( w0P8N*{ ?A}rsPY<~Z& gf>:6"/V)\=^>v.{Zr/#dZ_ND%jR]ڐjxۯ@fuGpKh/zUFZuwmU& #4J})B*݇4'`qmb-kb"?>\>#=vszR:~WYKLBAX f/ȦwaP°fMvj+yj bqVb'\@Yu9ba!;:|]Wr8\@㏅X3C5s)=ѝᗆAYdB"X._lP[ND}Ɠ-uiizʟ?2O?8?VWumaS'G^]Tue]4ܺi$L: IJCpAo?y׷|?,Bid.d/_1Z]f+ aZ(f0$B+|.U7B4֤tw-rᲯQCHW㢰%v^,IQG~ ݴl,ɿ)?^FWʠjj–?8IQWTvf2̋ bX=Ā.XaAEY ޹2" !aDnYk&AUw u*H Fj euT`/}t)U alRv2w~ԉV䵠냄aā=ȿܙn*+1)ڊz7M^6{u*啴Y?L=7{JFhd]dw7$ǖK?e4(-ODYjur*kKߥ*u<#揆|i7H%e7>)QoE_D+:R0O؇ncTG:Q7%0lSI@|/ Ċ+m3ⷥ&?A>GWe^ƃ%6:]bs!IQgXcdgJ\r@Ux<$F1l~փ hf<:v"1=%НϪua^\0F:T`́hfC0WN&vTcF w`j(~^uh (>|>vT٦Z DP,? ^l\qS.TbZ>pYTԐ~J{^N/w`q-{rw?*8yYJWq8|SjCk,!INNʖݩї~ɜ2)}J3zD€]7w-y4 {h;p}زcR!<4U[KF MZ ,a&l]3ܫ ~9ф{soT)/ڬ&!*t`#\σzL<]^: O^\=@<7=يS'IPd݌˲]0Y t;b.Bm}{3`c{6.FZ ;<(UY6uȍz[1jˎDZ_mߎ&fq&(> +7%914VI\pwHJ` gXד?Ue|;3N-\i)6$|4{ J]+~n9V =I΂W<AV3:zlZfV1']jhp* h1T@M&RGQ7-B~S*.0PAwn)b j)=Wb iWNEnA:<4B @ G{%mU&0bEdme}LoB?*%m X0dG11q5 u?CQ.{c}I~`;>a5QfX; YO;Ȼ3(oE~bv!gppID@;.Z^m][M 44Z`k0m L?7_6Aźt[ م@pI׺~crR>1,A_"֨d8FȬ\I@+Lժ??rқJ|T{謺uNRЩCֈϢVi H^v1E-gMM[mS vOu,ibn2,zào|MXk#_*h pd'h na(r‚g\.haeʛm8f_PO=:k_ca^reFEl!Z^UIo/J¥*WQfڱ/d%03ak.A"ݩn/+=,4;ai9瘏gפ"bu ͪM8|ѧet#/w:QoBҢsz`^0FQT}PBeNqrʁ>D3r!f~V6둪3uxԋpOzR5(sF7S;geܿ7#~}o$@~ciTkS]zMݓ9xc`*C.oc./[½HGc5^9e}xA##B:3*G (LԢ\߈7R{BcJ3Z{y4էo82vc\$4w1o&_u&R t ~za爄VȚxy/x&C!{, jJTB@K䘲*kZ5d*>niR'<~GyG~ErBg6NA-JOr/6[\+fCGz?kmƀTU'= pJ_' өՉѝѧ{\g: `46JVК:1,)y 6ZZJm*xVzSi͋K'FSȽw6ҿE8&]fqgLCyV$Q:og N431q?-+Tp[kI-;~a,\;pG2bx ǥu(GjsmT]>*B34KJ C526 vHϬI P%k7ea:ݤٙc$fa?[RqXS <+uK@S=BƹӗwT^_GI9 :_ꁺ4tBW6%ՒakAaoeD DM I*E̷UF_u< dPxcmT̨*g 7S Ρ G,|([A/1<qu0P92imYMKa| .Ӗޒ,F,(k/-Z؏btbH[Nv%xta4{CܹkTHOܽ뫊y6R[=5guHprUȱr8bgWIs~GA =ϊouy.l8 s!S*- ŹB3FAgWEG4~;G"#j<.GhSzhW䆥ǚWsqo$glqcv3#!Ɇ͌VCVi_S>J]XH눤fUdPGlx{H#xɢJ)l" laZ ዓ6R5<)REXcY䗷͠uO?IShd-u%a4nV?X]F%TŤRH>龇#0^nwbd vE[7XeqgI:(kY C&PB/iO@ȨPq %xH iO|a)m~͑6D-Vh-G-<):=xinB"TeVr)q Vuv&%PKƴBGŁcoO(?SMWGvJBڛ@_NJԩK`j@eD\)g1 r\0mj+=ُ,ջSWr'| kJAR #-&8V^uaOر>cm78$ىJESO Br5|;.: ~0DhRN9Zͫfˢ/QI>zErKܜ.Thp.M?4e^0{h&0-4Ѕ@z([-,R~8an”1=$j@O J,|}bTr3\bwJvlSY?gbNmX#4ϡ;O8.J340ݧmDÏٳ5z,Q^k3&H]J'w烬zU]eG\A Tɫ"kK hbE^N3mQV!ꍥV\d6qBTKYohm\S%.[oϷbĻn$4(&!^j'AJEÌ~P9ѫ8;@/wtvc_6riR܉CʕEx u$CMDmT=(V<bI*]&k"y /3KD;CF)zxUOGu"Љo|H^ &r0jԯS&~Ww7t$ -e:05!bvASC2Q"eU=vmex>VJ !W~z(]uGSfn_hGOdu! $/u2{ACBpM,yڻ5W?"Vjj֗E)L&s ){ 0'V$&{BoԠ=s%/݊/PɞALܳڑ%}˜ԝjw -Kk̑j:yo>W">ǯF.})F6YC:*Rr3'7sOlK4+}[<14 T&-Žt@E'?{9zdy/"aN(y|UsVH&Y J1&gkEF!xsdA b>uw^?# "Ԭo6 \pu\\ ,Zڱ )cO.A/O|$5g%DR ¬{SWI~K"m!G,jstpW }۫z`A~ď~I*i;X_3Mt Nfs]B9k|L]= sPw%+GZ<݇"45 ˊ%3~E (:{eRry*!SvC}kX-uQ~XgO Zth>B-`67/kSV{âs ZRj.~$y:16Ss_L ݮ)o F+9Us!|iz:gMP'52M<)"k^=9_xsZkT j^$ppAX# Ĩ2Dn߈ y,l<~Z>fgȊS "Lw,(z.0ħ?@zSc22g]\%mhs(}}H㣋j ՊYCĢ5ŁvYE쌩* " s @8ٯ}٨+qg S=FVջx 3\n{D(6/&pn*#*=h!= Ŀj>گC7ihMڀE+\8UR$LK=.x/ Ť[9 #f:&Bc˔hS;Le)cJ@L3G & pڙ(\'_|@H_q#a仆o}},G zh;E4bbk:*jlKƑ[vdl 7W}!o'kh EiP`QZ:o=3 ,cE>&1]'Q+9{)Y4"WY bJ$$|,H~s?Mgֻ2b#0h6YMh& t?-h׬ zPTU&4n,7,saxQ$F5`q;V]R|ɇUn RO''u؀#>iP\L?-&{% X,&:X3%u0&>'~6]i'HqTVь O<;Ýk@=i# I%ē d\s]8RU'͘/FKbv B]nx"a॒ǎYV{ Cӕ`}At.~;#d`R?Pܛ tvNLhc+ Laf|9+JAUMcKJѣ; 39UnQ#z@0Ӱ[@3{nLD(UJW!udf3_y[n6A #;l))GV7>>Imׇ.WbAo]d+Eò\0c ]n/cQڄ@nǓq!F%xcҫg5$q1 CSt?325Vo!;/w)vȧ A2PyC"h^E hhn՗M!tc_V 1jԗRdPH* }gfdxQŠp;`i/nl{oyqsZ7^\2OE{u?s%>F VPw"GTK(,U 'BVmsxQnW;8 ΚYwFV>ЮVzK#P5–ȝ%TjO:Z53T #~ۏ҄uNTL 'U}`0?gtqB{xxDIaCK.SWmiº?yKӈ$A~JɻJؙ!ʫ,˫my"rc$r:^&u8WZEz>EwD˞E,{>ŐY8֒%q=XZuZ֠{Po-LaV>#jk)gztt*bntᢞVb w&H4=fB<dK4cN_i|0(kݓ^S"oF+.@ay@msQp4UrG47&$J(ZWUUAG`˘s5>hAO8Y5߼ڜ/n x0~i3k76#n}㬆\0?Mqf8VU+ 3|_ݢۥ W(̋-.Bz&wibm [lӹ$?)\UlS>߰RSƎ8^'!}ICA}A& Hq|r_m j|%^~+G١m ha]I~UkU$_^ĥ:+jÓR_j֬Hd9t\+rCAPJO@t(4YmTS>?7lLJ@`Rp ;P䘧f~a~cz%R{WhRW$Oy-Kb. l8+aއ+h)>vm6O $ M._XWTy &2Ik+Wt# u{D%o"c r o}uյY'8MLcAňmGݕ!p\ÓH >\=|> (_[C=R$&S6!}PΎ sMoI7 L1LP҇LjxgtIa0*s{s&,%=BH[7ДyjIýik}Q]L=:U+^j;~]'&/{.J c.`ۢ[$sY4 -@՛NӜj1tf4i0Kآӭ$Nd{^o]<5ȗr.E&xN%'^QZG+sgjs/τO8&E%j<@3&Rv%Zy,X? lؾJzĻfkol%dRi)k\ No04V4msKC6-g/qx;47pcL;K&~vP簼 ,7zQkԮZիBwqk~HDg0qA}Tx`#-kwy%@#W'@{A|+& 4oL`Ŧeb4{ا>, Ƶ%}}=K FR@L߁b%O c CZ$O61w*t{3v9)D[:@qkHx7Uzfp"z9n+U܍s8PvWWѸf^@y%ՌnyC$7m3a}` E4&Dyp &,NdpkW3Xsn~Ytr?zll=[ʱ`:Vq:=3&o ؛0t-b~4L*GAka/u\4".LIwmg͆9  `֫pm' {`cBHcFJRi8=u߈|!vTU+%,g>kD{: 0)~US9>JEmPq2ߖ?+;k)/nR)ۄʅ^9 Mp.~,}tù4>b@-?cw&Ou :bQЫd?w P_!O'.jK(:b!8F…ZVGϿZaδWvW\ʮ͙Tm\2?(ٖː3*h4'!(mb aS﫰5?kC@]5ʪF{ `%o{_x eƼB 9 F45jq a8}cZ+> x\r\`xdS_RH5%D3h9A{6}=nn3tRS/zz afN!-=ZǻsGðҀ#fzшI p|t'T2Gmg|ᜧel'H\p"o Omʢ|yDz&S}e0|6EDHSDNh2 GAʶdm1f&,%ĻG@ߞ z))iv}SU?@"_{0 ളq s ]l fw_M;~ DxWȆ67xE?ޕOMml !BQU^}jIkY'pj5᠆$WDdǼV?RUb\(M'((6)fbY?Rz&q5Bk k]oķk 4;拙o]hm+Q!@@61Nb&.pn-o!׏"אk1?XGg;V-d>w̹6z1¤ctanwf 2F@N/ )8$`b6^rw('Nw #x w;(a?ʎ>r @pLKt~q<,ϻ֒<^V"u#O]r#?0K*h|dhB(=RXEP,W|{ %׉Fॴl0x7`!猴\AGO]6ç*,&5) 6[M zU|}p%1ރQix!r/Lv$Oj+I8K |j^cA?}0G ӬcF+ƪ=lfy? ɾf0y5(Q\Ӻ`>\'ڠn-=ƞH/I"QRMC1A}x"5G6XFcxuӱ3,{+6:[6NLK޲q(AsQ>`t~-w?ƞCIeU=/Jq]= SbHF14LwUK? i=c;8-t R3V!,lڊRIu fIT&Ʃo)XJy;xӭ2̧hPtHlĺ̨}=̷er 4D ,F4j7M+U_ |ߢ2[UhR1!iK8h~*ٵiTfr]']kl%,y$W*X1l<+s+3s 햢&n'(xM:)h(A<]](cIx? @J[uPIBbbJ{q2 AC^(AVx$)X-򣨊re+U:LJI3 yHҡV[BkQt X$C bfF~r5.U[%~D BQ8=}*t݄ń`q*}"d /22} y 9V7yj^~1Aq.vAN 31lC,PSr)­#9n+fjyH1r1Ȩ6CDwь͌v؂!$V|s#H䂼T7&:}T~v`fWW4!)QPIEtL&N) "Isd腜QjaVgmT5>Ĩ*?Lm,3|(i*HspODm"KZA :( xt< (Ə6kbG;q'~L?0Wh-i>,;Af.pE2 n[m2"3"cu+P{ߌ=㲞/?σXh7AS13E69,qW `.J:iۛqv7nD¤ʧZ.Wp9Eѕ9S%7k!ox_<6j{p7,s$m`3Ǟ 0z}g{J Wp3F)K3 K`zQ)KfY'"@GwVpn>$o#uq.x j,MVc72䕢o.nN1#ߖOW)̣vL**\( hѸxǵ8EZM.}bJ#'2*;Yfޯ.duFfs,<-.p%L.~ѱrfJo0(n'5.|=*@"yFМ Qpzi%ڷWf^s=kˆxw#9T^{bPĺ+O2ŪjpG?t&]%fdn f-*h?N$"%J–YFڑcK8Pn=m^]P(ޔ43g"X93V<rhA6=LjNak9=/2%`kzv 1W}8͗ۃisMq \E5^yI4 @z1r 1G`ki)܀yW/'0/r۪tglxfOD?5J#6}Hr )ɿn][!IIǿYyʇߵ󕀙G~Hq}_4/.Q{YUEzFNܳ,BNDKnWtu Zz+N77YCתN"YG PkS67'H Fjm*65ۭg fzQ =FIg 5\+]Qe %HSL/r忁OOٴnG;Z|'c-ACޑ^lʍ:O0ϻ(fR1 r*{@exAT3<2YNgYߚ.j.K(/5~E:h|kdk,T_g܄<*7TUOdEtxGVzi0"KHLN@ciП׶9*&I[yyQH=B[o ,MC9nmu\QCvj4+]`>?`G)^Hx{ 8@Ʈ rO6 T+#,BmK0:hʩQ*1 *eJuVf=WR+rau`LŌjTdM&;Яd^cYfՎ #a; Jy)Fw0'%b}ZkA+D h^vCʲS_܂B_˹ᒘtᬦt'u:#@#]j1\^[=5dHqwaKvWIl1;Zh",fZz>Loo50B^KMh+ږ},@3%2v\EX݀: g6'z5|+ުr.YyjI"Ò|H&b%Cv"e?@Q?? կ(|FͰhHe$nKr EL 6wwR(&7v= UM΁ ^f[X~¡Xo?FWcrdTwMS"ܟ6Eu ll6HwEaSD!BBۘ$Ya祣#N}+XwqK8]viex>̇H!<; MM3܊qZDEm;u5 Gp0\RfvrmX{#t͊jYYG6'+_bpR}zXp4D#g|K VEǶ ~Δ_̓X02ʖ]˪3Q&SYހ) m57ζy~OtG(-GбXBpj`˦~2ԓՠIYNBo[%,|m ʘnB/-6NӘW,jzܒ଺֑#( _L'5^A*ioHШE"(%ޠ usJUN[R:lP,   NK2}Cѕ++CcRP1Ulp f@YcF}_@گzD\z i0eü0_?;8ɨeJ<6cPG2 riܛYСubU @yDῴy`iRꀛ[ u͕ p_a#+|θzmp$wڨ'Z/AlW y}ڣ2a8+Xшj gdzѼ vUAp;TuhF2ȶo$L`rޛ4B{M$NX5f"$_oMF fRFÜP'2z<)?ZWZ$M ^.YJ^4'^h{̔ NssWDj@@Z;cN'%X _b$ﭣ_/qWzA.p55_j i",wA4*9 d uS~P8I ]`A '.Js88tfj2"kC'HO|a?y_G\p略7/ʂ0CEu D Kp_7"֝Gr&h/1ޘsIʀζJֆ5qoahSWrfBQL̄2Yp_!o3G?)TqMw"edQ'C6qn>t+(0jm{6wՠPrb)/z~(FE:8[xLP_#N!B+yVh%2 8lJPfJe8j^Rk 9FK},[&K<&8t 7RP|b21[SgX _6|ҞOgڬGL|7iurL\yp+ c/=d}xA~wQ=MZS\vqvG$^r\h+sYF|ιR 1ğOLLw`3]F[$hZ}-~ZUČShkZlΕi'Hđay=Nn9  ` cLla+-#ogH4>j1IywaJܶu-b1?ܖ]*2ͅD慇B9VnLJ]~p(%/UoIuF"ޫ5ٯqxI_ WR; I N(ʺ9CO,כAU\2i}.;rSgbD )+2U% = !Lޮ0[K_so4Uwk1-r˗#mM N+h.U8`_nfxsL]65P kGx W]RBmɠNžKjFUX2&)Q/c2d,2(n4d%G7`pf8«POؒ>^& σ֍Oﲨ%_Ds6؜ff!yIl-b'Wp 4ĴΓv|JSދ@P1 _Y)"f?cxT&4؟8KDt@ڲN{F{ tؘ[N295 //K @\;I}&wR;D<Y";0O}|~g2&T&ng$NTǯ洒JxNukչ\=g{>6ހcXThT6G)Kֳ-4WnMޙ&>>JW0L Wcam/QR+#V_2ksa'(w433Sm;_zNhtJDGſ`܄K1&1^ Y 2 "K Φr6a'48v&Cw)K.]qNbɍ+I!GN )\]4_c*kD䪡'p c3LᄜygE#ȩ g{cCvC ۍl"*[4I󕍫P zs738c4A0יF%!ɒRtLiْcCMe5d4t )8f܄]%O  HDq I@?)n E^[s->j4w(7!t}WoT.ŘCj@5$lo?pA]VZJ %Yn9!rGOe3kFC, :Nٗ~[92 7X\hۑƆx W?*la#uF}Ye¯VT)WpG4{|>"[s] / (z ^-5@H gi# i`LoLg-ug R2R yXPUoENGW:^ bo6,/'{*'o-6OsW} U&1vņu DJT=@==T1R8/#$ ȴH6ɝjrq"ǶPM9=UKirh{n&z6ݒ*l[[SaQ~E`x5PB^yK(æG5UXST|yPt?Z'"j+Qǚۛ1E(M2w Ϟ~ziɔ E%E`# bGT_8W#rxI/aM5Hpqa_MLk#};ٲWxh;n /ǔ}OSL-dHPwLH:/AZ*!l<a^#Nz7az)N׿aazojaZM^3x\O~pJ̲IJiXǑ(49k'Z+xER3e.[b=-W2AD0&}9)OϹvd^J[]pUM{pEP8w&|[T@3axlarafXvh')75R+!c9="WcBVr̆ѫ=܍ .$k@ٰsq9vXF(EF266,,6쳎;pS\^_qt[ Cn'[cj.^TH I쩹_1V^&SsG Q6? m vutY.>iX=qw`ye@:p;Cw t]׻i@Hݟ8?^#*Bb٣ 7r ^R^9󶄫+K,wm9vZ`6,jG荏Y[ DhKxJFss˂ƴlḺԿ7̓:Wa#1-;ɹǴCw$NZ1sjzoҘMT3׋b%Aդnk6Ew5I ^#܅$_GY_YBƺ|_M{@a~~ }쿆jqFXlg įP\Vm6K0 5C;5 0ї?-@iuJ`q7\"Ftjꐑao&;+(IWkSsaYj!tMެ49s`>~OCk@c=V5q=X CqP:A S:G i/e.3$į֕Kʱ^#T0IœIGv}]}U$&n_ _`Hxu`g$xD l e2na>14/Tu)i0~*WѲqtqn_2>#Xʉ]DGhp'N_CAl {IOR-4F=x`Xwvaz~ndAHm,)}iەh/ }rXnU$۠Wb5I7_ dAXv11N7/jLO !%ˊ=MU).p}UD2wk Qf!8קڋ{@l4f!P2 >nW/2  {0ץT>9D0v3JD~l^]:CH]^q*bORJc?qs$?GLN=毣gWP-i 0ʋWQ}E^pLpmp۠m\]V8ч^b5oLĿ:+(3} # DluZ 0#dh8kߐ{ABm'Ɓ\pKlu: ks37X;A'g ,oD=i_da豰4@%sp$QfaZٻ0©VY DUGK+k7oTlC֧$VՋp|:K[( ۔m8p~AJ9л~mŒ8Cxʁ'{Gw,uI]g㹧o쾛ֺ%EDrNb7\j}DlYc^U|л+OM݌@!;ujᒎ#Ǜ|1%3_]ժzg'7@>nǵЀh([W :Hҙ9'IGUj1NGNӠ/kP/(I_,s5OB͝Uzj(SS+ ,ST [Da#XHT? C^  b@> YJhS{-½#O H1lꏗAB?Dm夌cGTeIvVڜ$&٧ aI<86hIu>},K\0\Ti1LKj)OREM ]e5NC `(eSpp3r~@k uiHaIG(2AX}P_[N܆dMej)J4"ÊC}xrhY5o<>/ɕS,3kڪUZRo"'6Ԯf2.A7;hi4 L>ixv֭5HCCM|s-$6 ֔nyL+^>lh$K,?2*sD`++ SjBJA0Ⱥ=X==aͫ!xgr܇@ |!X" ֒!9chp, +^? LNK%2#B{kEgK)I4Q[!#7է_QBKoF 6V+[_@0&,hɢhMWV YLaCL2knXHHC#2tTrih|P'IѦZ;FS\l[T)WkB6kӎvpُMb%,F")֘2.s9 (?%^|!zqukc##ׁI]䖯FK8vD G9 "uJ\9 WhU_Qnt'%V͉Zid b榫%äۃwˈj&U!:ùG 'PE, %B|, % *[1gžV|:\yzsSzCeO>`QPYS ̐O\Yc svm_Z/`LP(pJ[ޑ|/(m+pܰt8v}̐p^{|9[1t%qA6&G# WfHL勸"0tcЂiBr(35(GUN$A%VxıV%0#)d[b LX3ϫVI;p X,/C5#yV9!Yqp\^{:ؿt |k|2/nŵ&Q4tlK.~U5-jJkpȻrcPGu_SݲE (*xrqC@>{Jdi6rRUZO1\"_$yiDN>ξ/Oy5>P SؑC` Xp߆B@Ver0-'3VN' zA꬈Ʊ9# 9;cӼ ,{c}?mm'촵$Z>![JwÑ[\AB0$K >\^6!x9Ϭ?҅2rt Hoڣ,;T2AjY+t*%eMJj(]o]9,OTfJwI}tVaNDu/N(| {rJOmN*B0>).}{=J\y3 nvSt]7 .C;߫ۤd~ā .ax췰|%sS>њ BŁ􈄀|'bN0ade-17ڍlG3UVOZ!,Z5g], "OB4J{m ȣASp-I*t?xE[vx"m׉yeڭn>w/|&5̹_$}[7cmSOp͆? `Ulfg$f5Q47^B)ä$f="iP᪱%k|iclTV;SO^i8v[Ll m,eqesDk\+q%+zbx-%dNBb՘ 4i Lkj Ͻ$k N@zj#C!mX(C5g9Ogl2T+KmdwQ2lbu?tGAPa?N:x΍g'1(*w*&F$h2 F7½~ۀU`z vp ~$".=*t2yLk,T[ӒNVWy[G4G ϤF`1?_eNaSmV7}F+mܘG=>_k15nfWRaZZtG2tU@u\`dglP!+Z+o3S'oMinSagU4;lшq1{O%f=LZ9 n1-=.G$vK}f@E3~9 e2ZiVl!W-& D,xTd/>lH[eћZ"&龹L\Ղ2%F2Aij֕ 3'fE,qgY1z_5L[s6~U9螌##}F/Dg-XGX+4b#JU0t|O!-g//{PlZ#p,u׀VUY"*{EtXF$3yQf`rU;*չ}%焮C{11?=+nWY!0W= !];(oi4쑒HE}g1o)[>%>˥=MPyOq.{:!)?&o` LF=Uf :iz sl.7mDӱzk5Y~d}fm+;?Zm(NLm׵pNGyi 'I2Fh;o6WD24 G<@E4>CUyޞODO``aejSjRcT6I=17O@ E3=OЋ*݅gPB&9=YDqd AOX٪#{wb We%\1qt1[ttxyJgH'eBA*-f/A4eAu<e"=`f0Lȫ矡;%:[}2SJ]l~'m ZyɁZe҃zQY<]pƑ2p)A-بĸqc}+a *,@&(kVHTZJ>7`%ߟ&nȞ, 6PiowZ> -7 }?fih )ta*l-?.Qb WDUt,8Xsⱀ ޿~< Z!&~!;|=tuNݩl{5X21رZʬ5p7ڏXF]OipɛF0]tടhj^2Oe̼WG9睡i~ytlS~d9`σ?YWJKa٨c1rP.r.!-2M `S:%ثzJ,#axD ^؛] ѾVIe Fum ~Np4*NQQe4;]ɝ:[8aQՏŚj4bjN&f?P_oM 2 nԛW_tlaZ4U΃06j%<& [|y13DP7J?ٌe:K* Ͻ*^+@Yַ:<{> °+Eafѷ,"yI{5>A'gS``8U(eA55" P>gkp 4ok!ZeͰ )~{3\>o-&C*3ncyG.#?G $$JT20mSjEC 0Dbo(8s<'Ye[6!5Yh`I'țd٠ѝ-w(0gA1p>-Rw:E J09轿VtluN b4)kh|Gr,xGOAQ4yqRi41EQf$W&_ P"*"qqF>jnQ{+u&:t @nN/WOΏ|hு: 5<t>Qo6͟ԲTm18^}N>d}gՌ?Čj:t?y%4sE;Bh(|+iz\ oxbb&ڈ~*C1D*w/3"̣lv> &/Cl_'3ܹr(|g#Na;|)@sݘl$gyL. oh 2#)=[oB|԰N0$W-~ =k׺|qMYFU'mU//8(|13 b ȤEGB6M!T?/i,]J֏Pi]*7 Uq&tluzkŃCd%T']w"ZV=љAzMJ&:LIgՐ3G? e}҅Ш-EuCH?h{Wi' .l0aq$CΜ2!0ŏtd,FDu-F6h)߹RE]^3)\6MN3cS 4\ilFXH9IR[wf^;z#( W2?1P -`/*YK[k{pN+x@4IA-h^僎<|a`j uzIzrDG ^vKxFnUDv$j͒.8@#&չz Yq''ARYW7g(k|lXdn=,OAX=bPC7>@︽?H=i૮v4+eR%OR~_nU\ Թȥ󗤷4P]HFJC&VOʦq ylc:)w,:Kp92%Z(7 S5}G㖫Gw:tNY@سD!Z-!eV 'Ɏ6BLU"ڥL'1PoT@fg)x :yzMhGKLlx<~ Yd# ^J&E )$Rr?O)'T|YJfb[cĚnW&wҢ/b>iPF. _TM | 2@]1"@w a38P@S9[">7n5^]LJ%]ws+%?MqGfÓԛܤbc/yh4Vy w ,-qS+p%ד 35e\IFZ9o lޱN[(=FϚ)\Nph"eH/?(@$~[ P|w"KQ iN7LNhWe@'ȖK9<BC˂ 7^ a-׏iBܕhys1I?E~PqO?&D'+#\8kz(U#mh{餋þzy|1>HRCkfbf顅dJlA"|>,r|LO>fKo:U}n'TΜ >JOzC`#cX6:T\hB$p!s]R!4W)sEˁh XADKѱ?$s:" ZI;sywh/Buxugl}@( q-v67z ݀9S,)`x_t]~[W;~:Cx?Nb}ȃt}NgQ. 1Bi ŅHw|{Nn@~E3WIҊ -n3[y{Dg. baYxܐ3!,G%.LkӀOH$[?&iy]#09@lVWrd =!6zc0\uG/ fڻ,0vWT&NNts$K>5f#3yWHxp SFݓ sF GM; &'F$\WHDy(veQet$8@ixji0-%WLC"|g#f/QHcqWalo_OCeC̋=#lcXXAJC/(GAo$i1ћ>Ey4qM' _2 l?BVOV `NNBmP:5y&"sK.{4 哈gkP=N&ޏiɌyqg-AuN Jhɣ11My?vO8G䤎*J6E4ZbD.-ay s)~_IڵvOQ"*0[<$|=r$? +s&РgЫhN}e~U{ؗ 7ȋ'pDߊ(çV W\4DMCu]?d:Gdh]DX-ҍZCJ';̂iHuxœFVF˫*{ι 2 !ʃ=QJ VM"yELy FyaĆ8'9'BX s!g.ow;?bnF.?|n@ONr["`xd&,ⱞY'x<@ ,xe'}Ick zF_A { )EufX~cmq0_8w)l-]eׄdAtԧct3~Hi .,_׃=ZPf=M;R:Wg 2&9P>HrY4Q}~ Gk~43ƋWBN$-/wx`'#]e|9BOR[b kܧN-6ó%̊^i B'B q _*̷x{~I%ɰs)֮|GLn㡪!l/b+XC}Z /&E#6\zb*u2/>s:fF]iae9}4[z*2ANM6w,9Pڀ<`݌RQ5gA;WM]-iuHG \$0s@;v5_j UsD[G>oMyOZrw)[ !:,,㶖d0PK0VRQ#@E}Q3AɘE Eїnp/i )`e:ї}#-:޸(e2.Biu˵0M|f[>Qfgy,>9iחFЗ'75`e@ {ҼDfnos*krJ=~}q38?a~>YlU7yH p>[:5>o$԰]&Xqߖ-5kuPOdS}W ^ ݭ@Zɖ`i+ҫ-9AƩPwk̎)ѻB6!6cRq/G82Sf.' 5n$jKz6ԺJ0D"`PUB6dٙ}}ݺ=`rw'v,MrV"=?(hL(l\ƣ(m/*Hm@ poϘ9NW",UeI] biC1n &DG3*DK˿e152 E|E|@I;KփR 2`Il+6T[3j)csx1}k:bWgމ5V$BQo?bh~%`cj lgr.?ƕgQ!1?S${#|fCLyU@TcBf~o3LLKUռTA3- WW?G'.W{Y`([yG8^ _0--cDIb%3B4"t^DQF3*ޚK)i{Cpե☠|27~O)2)T"7a]zh\nj ~!x#‰My1 ,9B*@+ ʡ41 $Hf -oX͙ԑ?ETz y'- 8՝'e*hnj6i2)΅!3g{*&87+> (<7q6\ަzx7sc4\5iG]m~EYrr1-m;AϷ'f\~ awb0R(mv0;mRƿV$mxqeZK*]$D I4VɸLE+S"W(fs[n=?8C T!!3>:gm@ުiPH#p)a2aM8):snºW.Y%h춮6ɆNq[޸7 U$*&{?l  )$TnC/x̘ wDxr4iCN]mbcbwvm|g>'78f5n}jG.b~*1_3 8z,PΩ) I.{!2.mK~NGSZ !H"DUTE\!{)H$cVYG2,(Kp͇dq@} 쬁E@InxW?CC2W;Wr\nG7Zxou7^ěZܘo֪Q=nS#|O^w,/pFE}%| JeҖUXjԟ茒ȝ9 Z{{"5Zn RN\l֚-AU0WPFc F0g fS? [r9N#CS >b9]Rsw"]Oam* T$=ٜ|Cf`ʁtdrQI+]kы/ozU );,;FMWJs`UéwϠ9T|@{F RJ,(q4(-i rN}/ί+5 ZW/0G6'׽IRafë@xDOܭg 0fȫqh>8kFN6`sI#y./'ɘ_@?-Zv|"$@P GuU+/"# +mB+E%Ł+lT?ej-8 X68:8ch]4 /k,;k`#|00gHzw2ӑ\iTX88؜`m#=0ȑYais晒ps]]H+ygi2w[khbr?\cg\&lo%E rXBDGФ PdѸ4$QT#./*Ӄנ;P`#gdq}뫂 Z;cSGl (j4@pĥ5W&@2Lcy[3[`={ [@*<(qRzx K,nNtgx6^I;ywLOTHߙ>6K4B5)~jZ?l_av+<34[WpY?е{56-m<ՏZ 5_ 8dG޾OyRY#-uHׇ@O؉Tz-CAWmĮ=Kə' b 3W%18M)˘ 1ȕ{rB;|Eauyj>J3/N?ׇ}b7c<HZwȓ8FQV0':F~Tk'ѥ,,5Xc~{#aOK  YBDQ5ω {Q!]*4`33(PA4Tl FG!WOCt\PyK o_ZXDDnP5pm/k9uedx;moYE缈pR-" h1RzC*+k%:X'TQ[(T9KEw,t]ԁ(i%'kb^ F3V@B::g\Jݲ77iأ^d]yC!x4^wD07"U|p N;Sv#2d` } SqCf3RKtJc: ׳3ڊ=gZ!]N ++̕]BqbJـ7"%d't|㳫EP:cDZ؟̐\׻Ĥvsw2:y=vN7B1b]OuaZpW {aZVP?Qx]NFzQ8ٺL _Hsя!k =,e=s.]|hJ.R†eq[wT Z,?K4Ѯ'ӄ*8WNbPk-ĪvP1a#&"n=(pd-g#4ga 5Lin;fK2x-kO5HG1|-rcrW7p*8m8b_]#dP|hD1ꅻ5m"V XTOBj!=܂z\R?dSQLrbc˳dР(q=<-qm1RK'A>"~e泶wCcg,`KT  ~G kvK/tVCqTZe`0`P0h ɪ¦e=MI3B"ɔr/b#yJ$0)}5zsq]sϻM9u)V N* "^&`d hȎ=Uu4l=f&#-.}J 5P4`R,~eTD yd^{ڱV+C>mβ-]T=4>1.E6Y6/ 9%0J y Kp [RVxƝ2ĎoAj0wNeyaŗYK<&EgV*1Ahl&%}ltX!чN"~2z%EdɗD]dhn\oXW:Y%D,V|d IOK7C+[C.X~ȭs氦Mjyk/,ڪg~e鑄=\63I#8沫ЉtBߨlʮ*jIdf7<50q]Z{* n p^#wtR?nhp׶ tЍ+ !UgT,_RiB ,O@zOܢh}ޝ1VhxMHAIx"SӢ`P8oFg/2R>Ny_ r`>!C›^ZWwa\s })2R`\S؞]= ܦSR9"شl|˛Z&-,90F>ѥJKgh&αt ߞ?_)2@WB5:oϲ{ysd:{Z?oI7`DkO "!yolfdp]r XlݵB=G &-p{rayuBV?vVpO67ɻAC-lriUFDbs0 S( M=˄añ| CD4*:XbjhSpf,{+kщ WKJ{!re`F8Y|c(KsKbWCJkQ5e ˔{n t !s$Qk˜k:K\,z/]okz$9eEmYw$  f%Nyqf GJGC652 )M61v`!xV"ƛ֢$iEgD,ȿ1eBYe+ E*Wb76'6DVq!XlOp槡2w(aXn/=A5z+Vك/MW`+Xej `=3ke=!\iڔ~[ +jx:a~js99@ZZaK]ꦀmijɮH`BO|T yL`x?=G>Y S 0 ' R~.-:r{ nFi/IY@6`.k|)7AK-|~,G(xL9Q'˩|,y%n@!ɒtP^ |t$ Qbh+Hs2Vj$jݳ</ ﰙ=jw`krǼZ{aW lΓ7hJVyE4h.H/L>۞BSpK&MqM 5NC |h)j~,n-_~.-N[zhFǞk5u5>8T$yTlEaK%\bD Lȇ򥂇,dw1կ_zu1ojE=$"63P?-PQFƧmlNJ r+kW/Phӎ7L2PZ\y VʇXMH>(LԤ{ aWH=XtVyD gog=r!P% o΀Ing#M r[ Wj|t Y`wכk.o/r9MGT:/mǪɤ"-vҧiDɂnNP\P>ǛSZBd E*ӠEXFⲲ_)#U7.oݰ֩}Pq[YQ떖*3֚Z%OJV V_X=qMW7ao3>X*'o MnUU)Ip $k]CG]Fc&Őzb(E" hA΃Ct<`R8'F]jxXW3\h F฽K7_.QG  =Ȩ/܌D<>{]cBc"g?g-**ᔟ,j5?K9փ#Pi9$wh%o:&p׶_!>Q- XvumMR)T*z1 'GE5Cg76VIdB[꺈ylA&*CMt0޸nB/(5O[A9#r+^0@QT6pD) xP=Y%v؊80 GʍtIGPuUPV^HiDnT:ZDŽeÏ_B~-p %g^MJq۝uYb6+OBR:h9՘8ɀ_p;dFCx:w—)*9TJp2byu4cd]f94XcQ]ҙ".v} _"L8A?qiΕVډח&hl-t.7/퉨&7N\놗+͢;[39*[FyDuf[)u yZYq\ ԗM4/S_?c f)9~G!,vQ1kTege(Eʾϻύzy ?"'lGLۼnk0&?!褔Fs=˂\f啱 D`@K^ҿf͸XZ0C!z̽x+Fw(Go[zg£H]魵⍋^@r=+fvչe-kGgg)^LRkWLƍ-ov|n8Xu`i6rR`nbd.ȍajI.eS2<'+9ڬt6Jc DI3{LsA]T#lʢlC)@O׾\%kHH! ,¥1:0KWlejzw gܺdMC[:#Uy6^$?m4=%bVLbXMLTr72Woՙ0pF+h@OIR>/#~LZ+cR>mF &P!,zOqo˛M9*Uk {""A~}vGAaU<=Q58Ac-\Yĵ:޿p~>Dn2/ldT"nK w,`PշR6 AN|ZzoMk^c.Ւk)p$c3ޮF>-v'=ovɫatS/㖏;=)1"kާnm!<5nEӔA8yb` zuC- Ow=O-k~rU?G.J+R:UOeXOuQ fDOCΌ6537-=j! |KQ/>G.=&DKjllu%t %,:BՈߙD70tF}PaaxhfnD'߬~I<~~)K#zC;W-r*hPȊ~P˪Q>ǥ^ 3+cEn _f_orG&(]3QNGh3лE&X&nU:wBCĠɽmdfdYj4}Q{^Wp^J|9^A)HIsyC3'W ^>mAZ_S;}*MzRaB:5+OͮbqF@-t&x@椣,TDC'ZeT Ԏ:Zg.V\5{SM$;wc3ݏldrR)֡w87&8`C&.дk#˕s7QHA*+?U>0QWH tBf0{`]on|o(앂12Ԋyt5Z ,!p}fsֱ!s-<[\<9tCnI!!$#7/ޞnPsM&26Sc9/꒫fR!|5pG%[ 59E.h& LJc}L'å@[ZLFV=nF:Ze!j a!<XbE-=,(B 9Sf[knG2OoݛyGr JD#uiOpB4U;Cf7OMxNqXMfԏIi?+X70&hdfd}vSrTKᱍTNu.\VԚ]pڈy3>!㺧~! n~hhߡGSqΌv =\$gO'P$Ŭbhsnv6<3zw5Z`x&Z3JvY$tdHeT.l`c|=:Aцs`AMQiq׎ 4$$OJbX/Cy-ع8IN͇l۹NMP#BZ" :H^H=T,n; 3uɿhl&+jݧ*x4ё1 z5^ UՋ+" aG 3E.,ha9/ ̎ j@V$S>.XcΪ|ԿB*m0ewd`Cu]Y51?HiNp\N^ 2e=a"!qå^uK?f!Z=h#QC|Wª2fwա`!I4:a֗efk=YZy`+hԏ>9WB"ڄ zZB9!lamtk(aP=!( Vlxcm L"RcwOvGؕs;7g-0aNOLIpdCqhҧCхS|8ZLՀ|5FɅz=:Zy.U]&j.^Jlek޴,L;e <'&rX9 nIB\< w$i(L"'oJ1 =]8;f۬МOGI|SA"*>**WEs_fg<9/F&;v>+Fl[HwɲwѺƣ6)jRz[&ȱsҖm[)P  MV}O`^p 3NY{Xd % ʳڤ¸i(x\ƙ`?RhNz+**9)k7Ui /b/WoH&t?j;$B`Pޞ?s]1ST O֢|xgFfZ{}s> /탪)ݑe@""cЁUB#b8\|jI*&H劅m|Մ=4r֡H_nBCR+Cǟ<̀,}VlB03.@}M%)vĤY%`+y|J-19),/8U,֯䪮@ٸ%wzfnkmy%﫶 }xlABՐ’ uH,13kZ$`2ШRLG-.蚪V}7/*Pp,uX!GVWY2auk(`\O.Ma-O?>Rrr<.\Q IA -UO8Nΰ7'S{72$tGP ίz2s7c)>;cĹkwؗ|rCg t%Q)ĵ{ךACll!Ap/r{Vv@wT6DZ*F2rkA7R+륜AY@U a^1Ÿ>-YҴ/}udG eUpS 0}F幜ʯeԙmcֈR?4ʵB39BB i}থW) ~G񻐡^b?B̈Ud0Q ˅+Ab]o<]O, 2H@9+520+'v>=uIQ/Bm%;>G*4E & 3Aօ`&* [bPuFo<[Oo!7jf&-L]d-X! >'f-h ˝\wN)Ais6(-һYGkL^[UJ%|>X 'XLWkbwbRh]|̠N>Fcf ^+ `@Sn!Mth)wѯRN(;2v׎λ"}: .]#mӓ܄_N.7u&V%uh`BuKz|tf}O:ϵ uQ>tM"@WaY+ۡϊK N8BUsB+7XJ'H N>vRHZxԱ|R1y4%]SK,r ;+le>>QiM7<zdY?}ݸ Կf* We;3˸&1w*Թ.|)m_ dB0~aik-;:x;H\ei/ "_xem b(Dj{+n+ +{k[I'zS3(E'\.1HRl fRKd]pny"N}LnBNcTҨԽՎ5WXt]E7'Q} qO 4Aw}fy//5W;P qo6])'S Jy4&VJ+#tSqsU9-M^v[*aKq G,P:_v0+ ({*[)]BT@WiFiGPƍImu(l 1DU<>6׫0/ɘ,C&u!YJ _o˧gy ́ ^ϱ#̚v9&F Rb:[)OڏPp;<Ҩ0toS'pE~ ~gϠq a]-5t Id#zKzKHG3 a{ʤgTݐ'SU@ҫJq^嶚CM6,Pztt$fu=Sq|%nJNVQ+YcW77?.g,'N)ITq[!S&E+B$tX(_ o&l;\b#c*fnKgyL7ISBq`B3b_B:ܗc1< Ʈދ0b Y' UnA$뭬;O֤ˢ%xq,g}6kX=ɩcvi <9ɭFg>v< h6-';:xܝ}vVE  ;B!Ɉan =ps}pΊyqMlMYs ד^AHj[1m3!|zV$~*r+3H]򇢏~*PmvQ1`"Ss*枫]hkVvl Zy8@*7wz.{8h@YN'v?0"]Ƽ=KNSJN@1DȻ< b'b xd7pvK'g~/L>-^k1-da:jg@3uLz;p7u'&Sxg2 Q0S*uxa6x= d:IH4 M 7w3Vl]5@u/RȹMX=oyjKz.* )N0Xi ʩlJ}mtE]Mvf duDj20BbGqfv݈Qn:ַbhL:OdGn6c4 lb#ѐSxk'[̋:zKkFb>VU;/$k9*8]Fp o5-YUNVz70t eb TME 31}ENVWDN\k ^D_h5WoK۠C6rFx&upZC-VH< Fy " =LMds bH4qųٍuT.;\wfs`- @lw=|}$Mn01RsrlnwS;l8cC rETX؋UMF(y;5󤻫Ԧ[X\[NoJ b^;GDrWM .B)FeNWіcFrUqXi~ uT3Cos~ fӊ ={ʋq-j#.^nyW:P `XYqj3~':$~1E/G>L̉bj6}*+tPܽ-c8eK^w}Z#1@uXY<$a7H[CY(pև0v~5IŪJ!({[nC !:LG8o$uW{:a3rQL;}戉Hl#}BsL}z"$k7/M|Ǖ zA a̝cV򅢵:C8dwiZݮ D7d!ͣxT[x7(BQ ӵ3uG6wfho%i ]n Cj&ͭ}8_G[!O &`\H]ci8xLH[*S F]bU#X9kQT|S 1IUPP~8Htd w mDպYY6+e=,iџ;2? ߕgm܆c @\N 4l:bTAo(U-aTڠx5 ;U:,Vʏ v9̃`Ji*._@nߞ*1Prpl7n^]:q4a1~U9x+ '%k8øoCF]b{x4zŔKku+!$Nz ּc&] +/˗ИkM"*bt$Z ^0̦J{: >1]L pb(T#P5c(bF@#˽x(Jܒ$m~yA߮pyUEd v1&jG6h.+IC Br oqQ$5Y8U5t a-xt0X¥Jg'cN)fHBt)S:8b!GZfʟk.z݀g|iAmS$5bWO;t 7h3"^'9KkA̝сR?I/Kh:Ckԋ)l`ݤ`K|GEi/<ɣ[{Bm)^IJ4;ӷ%X՗^#%:`@ @0LtUhn > &nT8hRFEj9S <R{6Ll I\tpR+C4XuLR|DXD~H\K?UkwblCI:;UQx2cU פ73i2Pj(;xW1v~~r6hS +)/ |2RA:̧h۟Y;aCJ%4Tte.q&-5%Ip7"+K UgmrMx:M׭>>yc-B˚=M[V&7߬"j]*QR5Lp),6i3`ҥO|Wްt{Hr=6a2;U $~Mǧ71Y(e>nz>.KJV0|&Am4=(bdEӧ:tddHc1McBe!q(_v ]/}tD I\;m F2 yy1LBK/JjcM始kT_^ פ[3piQJ\Fo~T~zֶXT'u WS⽒ Ĭ@dE?9/sߗbKyG׶nȴxQ׸ feC'J nRavHe% ٩b H[!#cVW,ﰺmQn@>)m#1uWK. eMLZO6Gtm'B6NǬk\Cq}i*[DRVy˸)OIgzD @8J v4J4ks̼2n^ M{R*|HO_QLKwD ˰ ^gnVGag;ue~{uv`AQxHeg*-Dv۠:).+Xڸ+w|'w<m%'/zD.%HFk8b й5kr8KF|1\8~1h"OۧRUIs$Aqw'n `NnW V7X,ߊӕ6br(rYHme:Nj/5B.K6b ]x^)as[mMJA }%փEjyR )Ο$\o8g 3X8ζO&Qaߏ$KnR Gf(r3^2b!dY6Kf٢qɚe@WGYc!Jlj-}J_ )2 ۼ3u[pj~ ݪL e&dPo:|;Ӄ e>] 茤 5n(cMCXF7T[7"NSsP ڤQ}7&~ v˰֧g4 CD9>ۊ{_8ڪY8Iv (l*YEO|@v@aV;5x)Prhpe_Eۥ͎2tn*c@:toԫB`Bg.PqO9TEdcm4>hJq㖯^~u&5Q;b[E2ZJ>B&kJ4QޣcN3F sPa'U%>%:vzO0o{]f<@7$HK?d)Ż}`>ڑ9AoFL1gWkƐC4S ?q#ejO^mV[y*ybҲᕥIn t\$%Թ9hV9]Q7F25McȌ k# JȖe±vx'vk"bMEC .UT%*͝ĎM!ފ@$-ũF%Ѩ̺˳/OMv+ !*mb3n GENv3x*H0ؼ.,5&%? ɳ&ۃ~Wh狃n tLeGv/]iL|e/U7S "6ck#Iv|K9Ӻ*y9^s_- }SV\?S HzIW)YgQ׶} \K:Z,BMEK˺5 >n Ԥ_)E-Vq& 닠o{VR mQY;f|+jbWN-Sg E <݉IfvQך]-(irT0:~YeEkm'9(ӎmdGl`+hs~gD|9 Ԅ2dڡi}%LKst{R&q B #fDOf~Yn` biZ Õ7za  O\p߽P\1|h',;Jd:SB 'xU*,ӉQXT6ՉN=L~ٍĹGD8FVM2ZLvuN ks'M:5n4аvT2|ՠbb F%v&Imo`g 8tu!Dڢ@gٜФh4b0({ݪ*(XB woסDh ɒA̳%:Ve_ 39 $5\*֮NYD[t(>P7^u!uwJȦ Ush鑜`4w8zH<\Sn*}Qߋ1I=?!WNxh]1 q},*1(47ΐ#nohџKU>`-PduTd|X)^Id'uU#ॻ,2s$A~?@Wk` q坄O>|Wr]VZ|rj9|PbsnRec3* ׮o3byI-ʅ6"Z#&Ϥe #iZ> >_Ç/[0 3P2Wb>cճjnu'i&Q~!TR zf`'c(IOVM^voNOPu,TPO|S,׸39ou8g6v 25r.2nҖ*2ޥBnX1ȸZ-K|5֠S8Z.;nc_܃a90]gj0"3X-}}]UBv-˞GR#%:-Υ*w?ܒףJp>:u-w$\ۚNEs6+~6hqO`wIffcG~}*TfCui|En;,g\xQA{oRKbVG@}zYH@+]gtw?BEVc$FS"}@R |Lf2a03fDJ ?M[e Ϳ>iA[埓V~'TQX;9{Kh>sH~cs`=YwVF5^Rh,#{;8 u<㊬|S٢T_q 4.{sC1/-u& +Yw1A=U&9h,/EhCz fus.4X5KoaŜ\"X9>$1R9><";u-}w?.o:,Q)q wN&M%:=\_q:*);ҝ"1 MrfkEgKHVc@x{Q!"_T:rZ=zHA&N0FwFjyP%hm7#& \ p) c*x9:ou݂c0[@̦ߗ +B "QԲDH&֊;Xmxs0_z[m\&9? ti~L:GN餞1uWm^;K Ae3e h׌UpEޒ]k+,Њ}f6:Hi/6 rFMdu8X\oB:`!22Fݶ6n?~X< s=ķ0=\65_T{L%c S+]DvĹ"&Tf3&Gu&0rǝd3[<֗(y6Bop S^Ni]ggő (_?J[, YsƋNI;R:8d>-#P?v_%dㇵ>h>-@$<ӫ:S wТglВV yIUaQcm^:u\ o/{"N֪*SiBIv=֚3&#Ϧ\E``̨`N.,2$@~cj[#JraƔ,|CnS?4>AH"o?\mWH =TqeKoMXFQ|%L5'>9y8FÉ4I*!z#= ՕtX"!WACP""j [T0==j0"^_"CѰ+ ~íO&=@-rʺ^vDTՍzNlejۤDX& 2|8Ϳ{BHWmktxWxw?11 _NwOgHjdb䃇HD$]LH~:\PX ?jZb@q7ȕC0ڟD3 Uj&'L˴dC˹atv;|q)rm ˠ- Mh$%o A+DeQL-(>$9x{_@׌ kfJ$T\N /ϙCUOH*g%\tze,mv8%@ӯ_0֧+nHeHJ7OCTT"VD5((q< apɒ} j&SͭͨX4 к*0)2m~Iayc˱*Gq@;#p)A.Dnb];1I=fb}:rN;,^]?4Bad1L@ 6{O.T%ahxPVat d;yh':!f ĚxfE9}<9>"wg$Z9Me,[?a똫i^E0.#J-Yc0ZbRN }jh&|oC:$a8Ы-M_[m90 -?{Kj{! ]}f p; 3 ҾD< 4,t21}su9M"V5s׼A'gتx^،97vnba]45x)H\HH 26<:i'eis 1 #ChGc̕Cwh >љc-aX}@$O tqfԘ/;t"ʘm nҳndp 5p/+e"_++?ZI&g٧1s::jL? 쨲铙| IG3Y(TEfA}X/їD҆L(d+g+AgWg-Zmst_pD56R#OUK@i0.Nw2R9hGo86b{Y5'\1d3+bhkm֒~U3ڞ> %"x0w*_}$Et9Fre#Gq &$;>(`b'$h WIzM4qz$+1ifal׻} Y\k3g7F3U!2&QI3%^ͪ0r# oT'eL⮱B"NPH"FN"¯=cNwM]+c&ŽC>|xݘeqg9^@6=<~ew O&Z4ާ|ȨEVt-JvL=*f,YG!]Gd% UW >8\ X>~0ўfi}gk1 grL\UD?,!% k_5oT}NQ39 sKLۛzB4oTE6R^8[Zxvv=vm?{s2F_k0b\L րE-'s->j-Y|wGOZ C~;l$'r*ao ,u!+ŀ"H)^oQz*464b&Ȕ1!etcm /uȷp2+֕m)#ד0-+#.woC.ďZ lj]E=i^ 4RZa$"ShCޒM?:zr&N/x߽TP}t78S?漋X N%~_Yɍ΂5Ec5hi;Ti\ FRHH+3-H e+?M;mgarFyy=Th H>-Nt etœ0qQ=gH}}ou2xp\)vb <z !`F< iUSsrh k<3 @0aw_tOXNÚܸ!7>mv!9# XjA %x&"0mlإp@SCx U Y s&G {!Nc4RxW֭ݫCH(+,DKiwWRCgr芟HB R+T^ W`1:b?aIquţiiNa"̉uGd"5.̋ W_3%7 8]]O7'jN$σ!Qta1z*54$&ί.("0S4|۔yw03iPt+"A ^x]!5Cf^e 6#؏Gp5V pߠ} FsI~Nfs_Rۖ~h\”9G9gߞ-ǘAe{F5[#\Zk6Q}UqQ.rxL [^Ƴ*3_ lS[{ǾIʌA`{lXtj>*OڤdM(R[>sw)׫Fڇ݆ؐ<kbl!xdMK+Qis4[QRq[9=ZN Z?nQzr7H6,uefm4#=YMmR鐓GvcaAH0~)lp=X˖Z2\/57hč2>ZǺE5l?i\F)>ͩwE[gt#FNp}2\*яI8Gd \N=`mOjY_g5늁ohJN[+Ev  j=hk+RqGGEge6QDM*Im2L$wN-:5\FvzK ` {m+=n{ STE`PQ#<_22K4ٴCYpo N}F v}}{*%eZ_{H~x _AAG]yH 1|2 ~QY7 &kXf[7W.[36tH~<Ր;&  fƜ4d$\,l)eUv 5/`cu1 ÇTxM9tlDAV>R2܁BNQ;Q~"ɇTU\$F,nO5yUKnǙ{^Θ5[u}c)^=[S@Dh,2 v4RJԓ#va9WMwsˠ\pePXPiwrA oOEBOD!S^\U0&2~MgC3#z$Y˃d.em1^4)RXͤSNlnUmZ/' <|euG :)τY1".')D sS^H#  ;}Slc;.q]QKP6⿜A}bXyH`b^I^/ebʻ=S((q@9˥/> z $YMpĚF"PuKUљ#:?/4#'V%3L#$thZD]%Kh`^*zn7UDȑ"Jř7aE:Zʆ/[Ӱ`,w~ҫ{|GX{${|ms.WX1^!<1\889J>/?oCciLFmLpDdKߣ}Ƽяr1srSlh9& G>0Qn-8XCÍFΧR:'o1'JI n\.?%[-{OYGt-SϞ<7h ,S>6Q*Q]zܛl8A4 sL)n@0Rɘj0>lИd\OȯLj;98nqVhY0lm=l-`|mLB✣f%+w&oee|ۃ߰evMYm DFB)=LǍ͹JM![rAmJI K||,&Wn `ĒZ~׈+37Ő<̞j祺"BqpZ^HVi%Z?U[jJ_^T` K=t$k}=A"GHsO.kf0?#z;zbji}a@&XcP@MX'Y*78]3{8Q:[x@\E/kٵeTFԙO+ .|>t$Gjqy䟗ZDIXr*`f8@>XtNl5r3I1e8dHڷz;tt).)BPKjպs1GAJcG>È|ږd/f-,g1K'QWBLՏ2g^s~jY+ahl~Hmdxj;H%+ C)@):+D w:I_p<rȗk k౳>'kqB ٗos.Cs,z^d"‰:LKo Um!&zݷN SkVo9$E!?[Ye2<b=5S=yTʼ IeZݰEJqQ^#u}yd P l΍񕏔j:$oXIU<t؏*~P5s!9jGo CTbEd/@BEOB}r&IY&jO9&^xV"gs$i12Q%cQ\EgG6K|aG> T㞚v "䇃 mn|Iuv|X[OM- JOT,n R?]͖;)2`S>,j,52 _<ҀQ-tL"hニsbƼ(n(am?C#tXT 坢,YfAUEO*k5p7?remM΅A'ah gRشfhήLԱEyA su1iL.ɗ2b L3\*{6$36!+H Mv320fS51 YbLL a5n;oҰa4(V5@΋.HNbCEnӁXJpEV!k!}J5pW#HIeٞXM1J Ӵ (c17.r8S]e!Jf%1T-[+6Q'~9" ziFC=R֤iwSޥN[a0V08aVƊEneJp=BZ`ӀATiMخ*- Givdx,Ae _gEpk,'GjO6 Ua),V)ъ.l}Լ't{1o2~ʳC_t;щ$y qJyӲ)(F`YeF[qIirLUr ,렇!c,(0dxK= +'K|5@ќ U?QXĸR?f9`r9^(_g= fU(CA z[YEł3DD63joQaX[r.4#CCD&z07%V-AZ@3=y"_`;|/X\-R)DZ,]Ɠs|XEҿ7MERdJVg <Ǿft# M\N_̗-Il` ))nNTJ3>HqJbX{ (.|Plqcܘ}$%BV@DE~/e~5l&ީTohqS]fx>t&yӅNڂ8DmM,Pa:qBXJx;~$Ͻaщ oAh)?_un 3ǡG0ѩʾU0\Cmy_5h`{}ʃW c!XT }ڶymCEy/3g=@c{rXW.&eL2G)5t.=?>kPn?6X(4y>B CgIyuFD92l @]XzibX!L'-xLxwWgLjb%OJtJӢ>Ӹ"waoK/Q3OD/CqĮ5>/ݥOm?}5os^Y$ [^p=UD@#u !pl\'u;\q {ZK޳@G7f6kmrHݴk$G4zcThVxQ5kP=l"[6Gʼ%ի!,NLFJV1_TYmT#P\nlq&ڸ*):E8 ./P.P'LlsԳѬ-n}@؝H6/}2\G]82;pha?kZl/;9 rDqbrADs)?sWNpapAu*քfC{/<ZőDoFµ=f#^۔#/T^N ڻ7T:mM-2rTo:ItŬZ4FүPytpT!E~yƁ/z2at %.]v6ܸrߓ>p0Z_ЃK[$x1Gsc+EՌB>Zg.ӉvT_5u:ff8'<^ G+p)^[$ y5A6A}W gxWrjxcғ> nnFв f6c΃maM:?tzVA4rWG-5+U O4o5݃Xfwʷ[hWDs.<7蒅VZpx40~ i:a4TS^n =l=Z">-_&I_=YE@.B&#1ZeUMS2O!WCS \p1Ӹ\ ڢ˦3QU.Sb}Tޮ;t։ ohtF.g &2M4[;hz AUުpT?;YI$m=Xxܪ4ĭ; ' IaC^0$_{mXg t.*we?e3 ,^SUKLd T1Nޖ LUd>=gϷ62 8ˆ F3e6OZ7it&hb h7*LY/8yva&Xݷa3y7cߺNOp }YB[! "q] !a_h8FϚK~B|j:Q (3Wtjse-RXakAQj|j~^] a͊_EnBqaf6tIr^ ]ΆKFs(L=Χ'A:ފ~7Ҕ~ W3qUu>Oqus?䜷i/ԢxS棄nz^dcs.m'5[Ǒ6wG?M^+D^?. 03`c'2.~,v !n9U]& O* aAAe}eG&1$dRڇla%vTౄ56sx$9ra,TAfl;Qb뾴3CG>}T|{w :/]x^ ptװzE)G^~'jMaY {*{;Nzy03EީD $,poF3jB;1#d\&$XH=GAOoaDpO.zQD̨6G/-N6U\\tvU7~ ~@DiiV@V*p/@„hRp ob^ \ /5W8{f@o' Ȑx1VsQgXr;A l$-{; r$6QV v2=;$[S}=4u~9F/?whrlWYG{N{7c%sղd7x/%̻2v LtYZ(GƤo$34+W" ^1 "zɹD݈ҰON:ҒJbnC%ONĽrvS@]#aa-9гB8";]IQN>X[HRr3]Q? vg zHI F>Wq>Q%ۤBkȧ6+j,jq)Q$!Ƅg2%E(KӻAy7H)ZXP3˙yw:ŻY2{l0+ K5mPգ6 6 AyPXC aF:ԐD#}Y[X(QO2oWk˶mBjP,ʬ !g .y,!7P!?3JT N?HeشEOS;)Dp Et qB3PaLyZn(,C:ɰ:n]ґP;j&X$>1Bnkqh'F1yHO$/;"sJQUa XZsKS3m>9yq^Kӽ]0캦6'J ۰z_ 0(@PQ /;Yd"񟕖LuTUvȫ"J CϷ xOy;6kX)k{6)LjN*\nN;u,59kw6ڬ=tɬ5PY! 5;(hЎMXlBzFJ-Lg*M!Β$_$ݧíL@Թ)3m&OQ8Vu SQi9&1 5n<zvKY;5,$_@_GdO ]cO, v 9 vead>;myiť] 5;WJi/K  +8G+ 9Jha,٫_ h68ej@>"_),,xm[ϣ y)[.ϑzxX|fdE-F_"W ea4yaK>h4?[s&4|eR:zR C_m.5sxCyq<2e D|4pɉ{09j]%SJouwB|;0k+T&ɜ_QFGx1‡ӡOM({uR,d3-,m@v dz2ԁ_>YU6GgsC3TQ۔u o*%p)L"t:"@x3[J ?ąKEm#G6[P][h$X,ۤ>f}?7ݕ%(2sb}ǎUlSUf pNb␇r2; fvDm8[KuOв i`n1,jq=nfAVFNT&/krpArptIϣ8?,:4t?H g`(3K6X~ݛ_V2Fb!-_bȗB=D ۹I?Q3 jl`9HxnG[6P;Ati!9ZGuc/8/>CENnr4Jyz4{e4q4m6/nAe#HbFX 8Lc }N<qN9rݚdӬ&^#m'˄Ha4.`_(w&b!LG>yݛO LbΙ1,,_;2V'ӾG="Pؒbif<-L˃UAVh[NF#aE Jצ:TEWi%;UOg'a._? ob1nCl($&!(Uhi^ 7w3,Ǯ[/f/,Z);T5DF ml NݵKAM5E㳇;Ϫ@` [?i&2$fl@4Ɣ;ĝ1%L=S‰M_;aZ_~g' M ,ȶO%fߩ+$Ƽ%In#Ats<U1f=;P(!tO81qz TS}X&Oe(t21-0'%Ő?+nE6 &y]iMo`=Va3`@"$ ~ɶ j8r͑'?0_FWPxնSm{u Ϳ7)$\LFb}S%?4Ed>뷝i|WskU ߾SezV3#Qo%4@ 5\QQ&дXrb$(f3|ߵ`xyR&lW b@6U:$|Pk=.x4D!gAXNQpɾ5;vn%֦jHwd_UX̝gX;1 V7ϓxEOh74$ |"& 1JEexEH C¼AQ(eоvBU%1Eki*K K`J4 HF˨ 1wE S! XIݡhx%pCxFzaZyO3R+-&W9NCCHL pB!jENb-$M gnݿpisP=w*z"vЄV cò""$>׸lc#8@`ެ.96{T!gy8Fe86_͒38!yA^)ŸvP6(%Sx+@*#X뉍_U3:AB|"n'Nl IUFew? @Y#߿!^oY JҦΥ3[2+ǧGPACDXnV]g8hQ%_AyMH)s M; ELvPo9:/Yyfyco L,~~x9S [R<m$%( dJb+,jwӡbRV %[D-BUq2%mľYjj'+nXd䓙 fnsj%z\NkE5k\c8ؠ_/mnBTh\o1tF6y1-,=};ix$}={ph^[Ż۳Ӑ}_Z53hl`m+Ӏ{@%x;,h0}Y>dauߟ|0D)Awed"S](`8;8c~Qֲt"&w˜KV9axqdiJHLZ DF#eN^> x<&ʊФuPMM\H վZx6+sM"B {i`оoMGX;%.N_?жG<\$We:[?.KՇ?@wtrH-j.%HU3zGC^ >+ 4#g#%~h^ vY4+6Чk-X_l le?GwЄ6Z39 pklЮ[$63F .oxBʟO3U 2E=c:3IdMNm6l++=/,l3HUILķ"I i%"se$au%47!QL@5qXr,ի>4x-}^ʱ#n+^\t@9m)Nz~rS2?kWq2ōcfh=}lo郐7; "rb {ī2#=ho'J4^ʰH6.ibK4(ɯ8OÁdz0ǥ'f$XLD?꿳؇k0@0s+djg#s 寜"ܫCn豠z5]b{-PWF-SWH xj21xшk$*bSQ| 0(P&JXUμB/>ۥMWԁW?#aWS[6{p,ife#Z!\A~cŴJ4%rYAÄRKs'KA.xD. .1js,{e>G珸/ J{d[GJnJl>z_0X1Ԑ\q \ `{ҞC+'L͊ZԭYX5рCMGSn/ȴq\O(%0Y &Y3B@& jtkL5X$W]짱F|i5AQP h},jW2^fSrMD,@<6 1DA2iN61Vm -W sM}i*UleEE'U>ǰh~Qv2xI(i ۹xbŖu_]OBO~:\4 ӄKąD%<+vRScAp C dx0+NܤGK>ϛlI O-MӸ؊OV)2@@ݔX@~gܺ`<ɕ]F"mU2>{׊S~8>J^N N@)(Mm^67Ih% oo9rtV|דH{BemZD.ʲo9 *KD0GE9 M򨫱Ȭ`o^[4뽫N!K8aߓIA Av~S?NSi7P tP?. ڢIpLh@恴_{3LY" uNd'-gG/njD"'tA.,``֤.'Vi_#E|;r[-Kk|3x[ ] i}\#_ѫh?bz%ܤSh VKJh!L"VLAǖ+X-XN#Mθ{2>ۏã#=T&a(͡_'B w)X %Im^-PZ:IJsfPFQ8&`_F2٣JJW_ܸZڻwΪXg枺ol=]ڱ!z*gՈY5-M#DɑayS^5xwp=v2EBOtqhԫ}L; dvs:@*j4+NWX7`@gWRcbX-"E͢\ t^tÉ0bEo*ʨM }wϣ7$~639(jO\`i*"!W](ns3( #hI\f2_q2`Cf +Ycz) `1)\-NKDqa7"E,$VTϜ,bӇP)T3G w.'Zʡ`]iU\߬sl4qȘg-+i 㡍˖Kx xwQ})7ˋV='H6Y`iq=v/qͪ}JdkeeylՇL ="{a{+WsF)$MqlsNcvB+HAi6Vgim~05,ꝩe]'v!Leʹ 3s>(+;S2BOVP[xڃ4o;5ν%>t -vCWaт3L?]G~=Anѻsk nLX(Riz,-~O*ɻZqZ4ҿud#mL(h9F̍r*%1Z@n8htw-xxLiΘR( ~ZT y]Ӡ9{% [*/b4*J #X?nrmznN/yԜpSP֚vځ=nJe9*|8euݘ] B"T*;qgXFx[)K1hJjop` 66 $E-?J0<o$2*D3_V9ˤ̯WLUa4bXT^&۵<3i)r{8oF26g(ˋ` _++k#n2vgiF~DkzW="tڣB][yٹDrt ^zƾ0ɲIa,Vk9dĜ"bnGQrMWrLoB#*QaNmϱ.LHG i?};8siR F/`44 * vY@$aK h6劇/CQb9Wl^4u@ԍSGdy$ڭ='8+et揪TuE9# s'2UP#\y/\<%LQ#2Oj\d@rz:9/ϻ#O6)Բ (~7t̕Yڀ!aIƥF%6ơ<3i5legRQyZ@[ tŔ g?̤0=9}ۥI&GպKC*)<CozL֥A"#I>'LNˈsB3`It筦I\fO7I*ߪ-Yc۠dk  S eBpE+Y@W@qhC<R;HhbIJ_z=UTMR>[ N#j²|VF 5'>\l.ࢡ́輼Kޙ+?}_\<$ JB5`3󕺙{e;+% ԹxUF9CH`1VpDvx0'V .G?R+ d < c]Ozm)}BdV`UZ_T%(\8Gz гOwđC8qeCT;Ft78}=yfjc^2).}7%d'm*$5KŠW!"|;s1?k29f[ &U)^A?y3wߣɁz*iN!ލPPQڈ)E#Ĕ?.]VmOp@&"te5^6J-HB{E4*+To2je0p m- 7wV΅zEA(8FR8.!cÔ1CDTtv5YZ(mh;+~ZtqXFKr|4nN ' h8޹=Q!86iVzm$-z}+z*yMV󭒮[8L^ ?qS:5띢Ɨ9 '0#UVshLb⚔ҹjM|+oppKwB&CWZݒXGrp2e:hD_dnaZDHjxR/ʿ)$T1k !tRl8cO <}'(^ϗy?#K'oGhB[ 85OsPuL--*L^op <=w7K+7cIs$e#%kEI7KcA{c oL7 u >MIV1Vԙ~lMu3 6!O`K zz|`!V|0M) 0*.DGrIzwq$s"ڏ!txM!õaXY?K1k?i32ML)edIgkGFfuiR$N ^ĝ89 :c&8bۋU['3YkO˜԰GzMҨ], \|:X0nM-u}`,: 0hOϞ\ڊԹ}|DR2) "-@ʐBUv0h UXLw9 6BQA o"|F#1xdy^B7QE9R[\XBCU 2Zܺ0 <LJWi(|46 aHj~-@E3:gQi|l'˅ HG9 D<8nY;'EլtvSJG|Q.Q3L@ŜW5**_y@P%8*v ~S(УƊDc _QE ы;cv2MEwMݝ4 $?|C>yeĈ-g9/2XvyZM r- nU[Tq4\EэgsB|`m*lG 3`7;R-2WГmE:BkPB |!5RL ;=tFIq#ًl6\7^-U͏-h` nTKY'R+q~GZ|}-*CelrƋhCc5&._,>=]E1ݨw k{~* hc _=X-xe8Z4/z@j8%e)&>om mKb7t_|&3G]F/Ao 7rfxй{+}O%j+=Y:&1mmohm .-y1(u8+Y^UTU2X d !R4EPO~ďIr9M /R:LrddZ6ad҉ ܾM<= vu5 "ehI- 3ἼD:qﻈ3cԟڀNc>}3oIo+rKU#t$v»Ko w%*3Fg]$;C^D`[` \^ βY}q#Sas)O攈숺旔{_6,пfEWsլmsKRǭiX=Y R(Y5)9XfSW:ܖHk P93Ζ@.<4 $hK5|5~qc̰ |ZH?#7+9?ck)4Ky![{ގ$>ExeZq ȱ롰sa2C1aV sڵ,G|Azb$qc{ٶ_7xJv킌{a*DAޡX{9k\[`Xѓφ3U.O^Y`VilC)ЈFQrI`5aޠA#<ܽS&ϼx +6T$UJ7JZ*#Ph5(+2z6?iuc,CdbL-ɫ1M0bيRUmv.0\ԁt4I: g]c "R6!p*>R\xjT&׃Džhpih$@ˎh9o!;w_z<*M9 1ƧߖJ@ 1}}^Lk6dU?ꕕWiZMf%0`tYS:ߥ˂U&+U@mddXkĨ׳'D쀾ݾU]&f )BaV&/ U~?% "+bg*I'ų瓡dpIt[?p\׎f#~ȅ0 `6FbC ][> ~|3'Pw$o!bߙh/L\0|-JqYOe7R \WD=za,]]t# ^yb9IF/cgԖUj^ۮƉݱXe})1R7V~eҨC+!izyt[+tP`b: WlqS7a_%9DL~;TpmL3:,0U[{ (cNO+ZT97NSd/(3Ff险dE9ډVjzij[(}̂;eb3xdkHS 9> H' ⋁6v]Sg_j?t/ڈC֣'IAiq[/ZLE,F83ɥSB13zkSUΊ@?q ,~wԦMͧC${\B2Sš5yCӆ( * m7.0ۋW2^ {+C 1qV5))KW855.xDD&!T@We ( @ ֨(1QkoM1LtGBݿȔVO{1}IN-Yd7ވOdQrI$gτ;EoҎΐ+5jJլ9~ tM4 q@7c79/j4UWQsS$뀟_HB!$<0<`3KA+Ώ0"I3G'ȳ%GCRՐ'SF=P6wo?Θ=ݾ+pĘ_ Jbxah 5u98(QB3Ypb"lY9)#k ^o{\3Չ2 .9P~MW{u\EqNpG֭IʛQ2^!ڝC^ .!5la](SN?fvsk#m?Ah!P7c2zz&1nD`B-v!XzB*tt.(M)~nbGC0(p(nQP$a HIX!%*^kr GH%a yarv6 Dċ.sk5O Or T ! %*b],0̚ϛw?)!ޥgD?G&< lOo$FUf0Cend kfoEo}# @uyU$|ﳕ)yGP)yHiG[to)69Wؓ'ƗEJ[Oe[V/enlHe/_zs N偔|dN&e+u8d vjVٞ= 1^w͎4?I8~CUR8]|? P@*.ipz+O6xӵ#H0) ]{J˞ J==aEA R{kC^" 3=ꨶYo8%o}X|Wug6,"x6碒u%B~QNԌm.bGms}vT2( b{|nbѧ3Mp.W r)㽵]ljFm^ӜS9hSr&!~`;Im2٤3syWѥ1y_#brCurXBW%]L}h|8zUzLID˅1{UbS-e^)#ޕ8[+ x}!qiKYBd,A |~lGu34H= O}Զ.6hQEzS?['B[Ѩ/f,g*[e' η#%C/Y;}b]`AmYT5Qǿz هYɝs0 G8kM'Ե(WW=U'v5Wp˥͛whcy_g-{tE.N}ƦCĈsV!)7Ҩ*Ncp8VkOzo(GR:&%C~dwwE;jv5Ak  +,8]Ԙ|{aUl3^yK&Z9ځ,$FPqȆS7^s> VUau+I8ǨJdK(. Qޤ}vu1-{sğV͠q_-JO ,Q]ꀈ.l7O x$E=T5G}1 $c\..+}ņȕ{;:Fd ;ĨRrUԢoN;#.^Ӷ@o-z*Ya ;pC@zc*o(Ojuhe_]artnW3D.ӟΦ# цf Dtvfjb<Wx% =o셢Gcx%É?A~ g$ PtBDlL}!3V2_<E &FSxk+D1;Tgq}qxKy#OPwVx!ثDHC  YJ[쏩KIl;S JR l PU)E3W 7E˛@[d@ 3N1cCw8u ڝ}w7#d )u]Il-Sw ~C,'yL>"t;s:XlׄnR,hiN}\:(çhOG{so=쀊uM I_H#& ɞ«@R齕dP>4DiMUFpYk'SݎqmvRpt*!acsQMe af-c_h`@C8k"2)kbaI)YQWD>$!(CωPQL4(pCv>p!S5)H]1 FZ\ mؠ5s%J>e(c[߅#MUA)I{2߫Z38 ܜ6/i9:q6Ob "c?cz뿥j5دWVC53&P;OQz!Eɥ*@Yt&*٭ P_|U6#kYQPQwJY]o# v7{ۈ7 M1}}d&s/J[b=˝rrxcd4HW+!`>?#JV jE}9wPxy&>1aQh϶DU |C%1>@y ENޑ퍵T>G2> _Zn99NNY(ք9t )}mm\.ޞo U̬Ye] . xH%}E#3B6Օrda1jt$744[!q|#ʉw&c{,[@˙B\ajkiʇctg٬g U5cW'UQAЄiDD gp]̷] Yʬ߂HaT"9 EAlS T%{F{S:*hXdGBҊjHBD12 /W{RS]8l[=X|Zx_56R ە6ŬLL M'韞NSȇ` >H]1Cu,P(æ_8&N,5 Vv4 `^qfF:!n41N~溔)!נ Q#-LyYiJ,*D9ע@6U@Tew{;yaYeou}' )a0M rm(;*{~ȱ0S3SSƙv%2i5%(ذB#p"bW$׺V:+!W >8kSt9a~Q%XA= śyB"( ,&^2w:fxH;k 95#f/QɌͩZys&LLkz2 LA7#tݸoC\0d(7D'g2R'7[Z'P| x3k'E" y^L<疎q֦/8Ĉ/„}ඪdsqȜO2 5 LDeFŁ 7ВjBG47|zzH^Έ #FhOӸCOhsBAI)*{A^_{fDm >nMcS/+bx](?%"Iޞ=EO0X[]( MKJ2troD=)Yo[YdQ[r.ָWe0l`_qwy((Vax@y:#jAR薩;p|?0&SEԷrV|l)j_D8ǣ at{L2/= ]g6{#=|dbyrɠ)mIq?:ֽcy}eb:DN1>$?"0#lIziڈc]e r,'i(du3s vSlx"&ÅܫNXL8 /po w҂pP*Ktba/cHiۓYJʻP%9p*A8i-@0dWΔz:jYrkw+}HEf<ǔW:}y_@Y?h=@xs 7TB^å/}_<+=M t&a/B[P!#<[d¥IǃEW9dʸQh؍ ͨ?"Ϙ] dbƑ`8ݳRYOR9W2 <4R6O+s}6s/oC8V 9YwwͦNq|?EtXfm7z}3s(SUx< 0Y/x9.XᯯB\\G{(&,*,QKƟN-_bfy`}biÇUl ,z>E;.B ǥ]F_W]b6DL(Z ze|;RowEYE64A?c緅ko^_K4k+}eDи -b o0E9>/h9߈򵃬N=Q鲝3q+Q'П%FW]^SNVPZ`(cOq`t? KvDI0zu3Dȋ%[1VNE%iD/Ý)E>,Yf "Yxb]e4ɚg;Vr}/РbϳPBVYp 63mDVHbLF\9^IݗG5}@BprQL~ B=p4RD#."gFkX ?8%si AYlFÏϾ6[ꂜˇގ^!*h3;y:q%"9JAsް:XI΂ܰzˏ Xh@|HdDlu90}hGyךeZ6e3^-M:\0ӑ۬DRDЀE+#<Ξkv0_gemG׈kHu+Vf2.ڟ1+{l9OUF\7=U[TS`<#]>ʌ*4=~qQkB5hJe9|#8ty^d~SqF1m׻~RȋYLtZ )R(,x}΀"pk`,U ąj2 @ᘈB_-[H"pr(Ҙ򲾉oӾgdb TpGkx%Q})'nػpJ(f()Qr. S|D:w}dp^N r٧5Q(ET}LKDtCX]%!'nrZ>1TϔDh>C۲f^mvRwb_fy@NSTXCɿ=ylXK :등˗D5渍7МǿX@E*[8Vw" lƭ X@OEDo>`DNdzwBبާ #][ ~ߔ!ӉD)^F`GHsk5T_MO2xե<(N> -P8N=hÝ3=8I/muۉ8iMN &6m!DzYta<*?i a`i"$X'~7* Ƌ=粒zaxH6|,,D)'h8.oPcH;nZŠnJ Kiv{"IxMN)_CGƮ;v<\?UHʦ6 _!GЦG,@LOMLw-&vjuwfǕJX1ps@ooe7 XL8[nS}C|Bڛ@5Q):쟻mX~`y&)D n̶w9-"vLoh`)D&G}NmL{NŀL(yl=QPǩQ=iDYO(a>n3< J3C7+0( \‘k?H0*7VP:6-w^,"r+]d S&76W#ճv'b0^觓RdI: a̟.7tOXȤU2RG]ں.hp 6P&Ge3uYT]ܶ}~&2({GiH"Ԁ7>$,16xþ)kBg0%TUrގ6kͽCqQjt+> =/Dm[M[nXN_ ﺡhر@J~ہT_v&|5;2_.y*|B傩@<58']61"zh寲 WF_>ZeKȉB$Sh ro[,b[>-9"bARBs 5 f"-*8%CQLHEh3Lim7=MwRxqA)xxyV%C 47cۉh2l3d BWmR;cFOޙen2<)B{Kcz8U>çw_qקS{.̇ÁBF4=FMܻ I)|\߹G>zS!Me$hha6F;~ɿ'Oج'7-Z nbIxFcɵ`*4]q8%zX9(._7pVu#ܭ 9@ E_94'30YIYTDs򕔧Է=)1A|H8A>ϋ%azU狶.q^(]682nKF} s#@R6ͣGK!,C*QW 7}ex^`j3wT'hVI 5^̞%ܲ =k6I#/c ,yd#a3 W &t`jWȺП;0W}[rH7hFϬ{yt^ ̀o7P}Np<>{]$PiHeX !]g9Z 3ZS>1YM I*p5,6+3а]5@ýڒ:_e;w/zOhd;;SIĶ5lfU%|CFپ p/IC7C8RGf4x-eve{y")Iߪ* ce-ljȣש.2K4lkQ$VUjbs+9=;k(Prr0P[\)O7MN:%U2Z\#gJra \}/c&!"pRЩC%X,YuIׇ_ b*nrXQ>,h%/xRI^K{(-AWM@|wC7!қ/5dq"LgXMٛvcN2 ?D<Bt9[$KXb S<-Ju}M%LE 6~^&~P1[?E;OUKPxkYcoZgs9x? Ē%NV{^pN|pnhgj%y6k(6˶%: 5VZA!X(_9QxvblM_ w [tFXDIi} ]Zu~mHHGB'|sQFL L~ w2h@|>T9:}؆x@ S_Y%\p͢hOI_-WY:ۗP ǘ e! \mJL}JGK7E۶;^,J@;/<50iϠK}wjCK8ϰ@~l,ͭ<ߵ^߆'/ʽ`m[Rv3ˏUe8E:K 2AW4m'KM;00 ҳS|s@7v4:d}ٰ*Geכ[SWDyV);ݐcrԓj ]HKƓ[ەO$ Z:S )s8@\Nٱ?7Q5tIcEJlݔ\Uj-[jp2} \w1 |F ^ /#e)Wa5P2P=7fZ3brW(gj 'gadU3%T 6Kwe!Z}rߺ\x^Zs/)E-Y aFN!!A 6Z,Q#OaR G.=q'a6eKm*T;˦ڷh~j,HD΀sW v›0嫟!W'{-!_$]+v+y]ПQP=[lxnc\1J (?)l"q0U}]&O2s?CBK_HsjIb$6(P$詞&AwPz QH+웵py ٌ%8b0 D<F R1v Ԑ^A)P(m9%jͬ]@PBΐY!mL{$i䥐^HRt9Ua۵_Ք]O/[F&e%xe03Ğg(/10'i5W чf)x!t/TqW{F`0U\8+)Ⱥ^LAxnѮ }u2$Yz=|sqvb_f1'(jMӵ>s H8 wkhEw S'gʜƴ,6 Y3ƭVZsYiGU$4/|E5cM>=V`9s@XHSm8P8cEJD k*vdS~T5X =$3t!.JL3rN cE[\0ؤ,ILϹ96i<$Z\kEdw R:!ӌ+gOD@kxEfIkTSѹNK2);)H~$_q@[v> Oz&T"065vKG巰]umAfSka{݁Mj%h4uOyr W&RRGY8l7[dV7.?ս_;VM"]CZߙqqϏIڊe%~"wᢃf?cҠU*/Mu(d?A}=X1jSRUj%R}g<.Y?a.F^yIN0B֞1^=K=d`辄v,Z~5:sp`#لPNƄ#RD6p'tD!>V|){*XBEgr؀91nsܐQKdRKy:v@m#(fo`؃v(:n:nҪDi)7LD$pd;$>76J}qFH5V4XPE!iȼpuKyEdj69mG38O%~i+}o#95#V1T 黸5crOUCVkkj)ߛ\oQ}Ґ/}?e 0F0^_Tl. KhMh-kF!;obHe]Hi: [[盄+,d\)X.Oe , VMyow 0-Sኦ#<f9s;7- peb[-Qۥޞ2 __BMmLT'EY `_tydW9:|~DڀxnfCQ:3Nџ͗ALyNxd-p{zVN5l|Fñ1*[O4Fx3~;Dwj/U<&i!݋tO9\Ӌ!TSCn۞ؠy]rA4T \a uխ2u"-L" 67O%E } aj;0pxRA] ^Ua5Bvɺ,<ğpqEZ9;Yp9 Y粩1_2ą_9z>8ᯔy=}W{m@,j*Cw,O$,3|c+]N9( z^^[j]Ƥ" 1 l 3rG7Œg~ 0GZD*78Ţ,!j3 "y4,- :Gg?<~ w;%aI.5х\/,_8e.3VکeT!&__hkDп\0,KV>􇷛T \K`㰱sɹ9sfc8сbV.u+KRVPPǻ}U HF4J Us:c~Doi`:](*jGjܞ tX]^֙}<~|ޱ\D1QF/VõYũPk55.p xxaxڼ|_D9QP:x:oU+?[a1IRw> f> e/ gg"ŏr/|h_ntJ>S%#ѓ7Ad״/p"2H Ȁ£~# ʌa#ڳ$4?'D{ه͐=M@g#oͱ5uO*`#}qdϋ.#l: v8Bkj\uJ8ݠo.9] 1wZzh`@85㎃ )ɐ=ۿI[aPVNɻ4?x:O([,R, ,Hhz.O&ZRyi8PBɪ#yZ Rȍ_Jq1df~\ mrP& |$`ik!MR`F@Æ'%= hF~˖Snh!˴mAYv>gx `3ϣq̌k}L~QƿH ٵ+]\Q֌!rL PHL=8[^*.lbc9vdO"1oH>x :J}EAAo唡@5i`]eg-߁70xI2 } icHNMlo՞%SL,@AXT'ɶRn|ra$$ IykuWlўe0.!a*`hd"|$2mF[A"Zἁq♛M_ }^a_&҃/Hl[Ï4& T*Y2xh8~zЉ .(hb.d 瞌V̂zrg~j%Q4 _;{h*jyg̡۝%? qt9|u?9z~'(b qZ]/N*hfP_r}n{Hcfxc=w{zѱ[ZƠ`37'mV \-m k=H9ERkee!y.+?hC`Vl (qleOԍR]Z߼MC7N}ݯm-dVDHyn616,t qyl:e^ "}_e/r1 C{J~M=-&c:Y^yErIj$X+wQx=}1lW_T{WC贬AQfʝ0"gF 10 m:I*:d,έ]^Iz`rGP U_BQ,"SD p{}ƴZk^‘l7Wm9mE&[H1{8=#_ҼB]*{p/n;w9i//`Z^rs^-y&)]~1z_]4-F̨w|nh[x`"Qa_ 6Mm {_XdyMiO:A"|OYCוy~GԌ`5'ݼW̤%kU@0DI&IFIul ()vurم3 #,91b%oaD9CtC}[n hi#rd,3钲WNSmul4T7 L%o\ U?n/#[pq#n#6#~Wv1XĵSZ/{Y-Nꌴ7tٲ?ZJ!X{>AºK(jG٦WS0tط\@[zguu8C_uL{nE_CRMѱu+5B1JOñ1_n ;"R _4,#u4-?xR~캫zOqo3#2Ɯf_OCUA)nЙ+#7#/=^>u֤9u>Cރý_4We+}"julLN‰ɨip]$χkRIxL@,U֯.RC*d[p{_Y0xb3qI3;vlc*K?=]:X0=܇QBa'U;сgm Bb$HC:]|u1۰Q.Zߋo8~K{H?<@q`r =hS8,9S-4 `=S5?`gXNW,t/:cUկEp;=;&llW_ dx$4 "U:R @5n#Rn̾b'r#1^u]iv5M'nVK2vlXwW:t4Ȫ2p=MEI1ϸM\Y:;dhFƋ1HX  %`#6p!]#r[ZRLP=Tgyka#N3췆`9zP"`lfC˅w= ̪zx-n2!(Z|Mn`yN t 5JŨh@'5W\L}?6:;c 0JoXr!Djʬj۱hڿو3' ϣ3ݺ_0Y yh0KhwrHVtF t03>G"vL_y #gpM' N*e3yI}/r5@h4Qs{u#}fFmχfoޘN62qh@zvVjh2*iH!/Pac RƀGi̔x2nmD>-B~ 6qSy #5cKuJӯհ@ګՂqyc 2C*j ('o'C"ULPR+ 2!mUs*Т'  k$ڠaG5gX|%&?Op+_H#la}C[vͣa131Aȡ]=jH(:?t5TS2ÑK"hV}0i$aCV\~M=;!v 0e(]]]j s}\i#+.sA}LToi.XB\ְϣ0oof F3b GI[G]B3hᓆfä|4,P#r<A7ΑZŏҶ+@W50u ,]-*穩Bk;h"!%aiSHX4s2>I'RAl'/`aѻy myF ;N^c(gN J7 @lknj j"!t-f{mD^?)EI$s ?[ XX˞͢d6G6џQ{63@uz69~:xI!{Ŋ!cl xNʽ39n.4Ahaz`qФfV6OۀfB٫,&%taj+&a˽>zC%QE39I|g":BbECi>,l,1_1@WaUy4"L/}=!GX·@6#/6dG[DʅYŒץsbӰ-!88ؽ)̅<#D` y|? 1dOw EX j@k]Z_p!TP3<~h$"4<ۉeBV_П:iV&a1P~]]WIWjbUV]@5O[H1"ݾW;a̩b|8/Nc_#e5POݦ?-b,Y%֢.~Rg>$_aSl@M2nI9foGq\*C"wλy 1m`u+MG O}C<8/b]nYx'V_A`G&a)Z>f,+[h>7]/AG 'G\猻vyws5'۪ZկuzzwBՖAr #sKxHnl/,K spjZ> kh([;q,58wW0E4(WQNRn<2x X(e2_W$|s!fz=Z]'i~rQVD*Ao)&0Ү˽2. l֎EFh+]ʿlͣV$wi.U->+.!>F3tʸ$ɺ p-4=pbеax >BmU1(+ !8v5q 5\ | m AGX”ڙc:m\ x_'h y@ҿ l<B϶ Ϥ%$NAO5ԐIAxPqi0fxѳQ[?gϯ^dny";f2u E_xXq * LORHMm^jg-5`DxS \ =4;$MjT= vh5p )CpnؿH"n5ki<'\9l + Fp7b*yƩhwHp:ȫ>W16"`88D*U rT|7TJ_ wgP5#aa4/zAS *gSZԚ:cb2x;5A9a0b?` TAjúܗ}]Du}>{˳Ax I҈K̿ڈv;OVۣ7iHp%'sR=tT (R@kQjZzHucDM $ kZaK7ͪDve\SQŗ3cL.Iv׮#YcOkTS1IKK:njh02$.ʃw;(ZkyTN{3zՁCs#SgP(ޝ❪i3O𓃾ӳ[.טmM6?kxbViT]>V7`$8 F (h/Kh>@t3R_$jLCHim1S3llņ|!tM݊aF^CrN.S;Z<{0AVLBQE1MDj0-!1DTyC*2N"y Ϸvhc9;LM>G1o^MZ>lDI;ү>:E@S'ᛘJc"whA80=DzVEY/Hjjl =R;8 I.YK5iH%/MfylA~\*EA"-V.!Ivyw!!TVunlZ*pN &F邿KaXQIa/멕鏴l69HtE_mGGLDRʱ~!ٞ|?)aaǬXǷ$p95@lkE:P~7̽oR`o+$G\mಈ+S5QDL "h6hޚ4h,TmSBpRUezAN sp-T&RYkP˃:葀vf#j^ߝnN^9Z5 Jѝ0kkL@|F%va0JZJ*GHJdTj䜀[_gZߐm;ʓ!png7dbc^q*iI9SffJ';g,^_xɇgRD)C}Sj:g($9=$J-'px}2Td6ΩzͺT9 wUzž)YWӜLȖdKN8"4lC4 Y۴jؠ9KW Xt'coZA;L89DGqU #LlXڧ |N=;C7IJ 4`3'Q6n= (P_Шq c>KYͩ<>,qŗ2ݗ3?/Θ,]kF*BԵmc zY@wE"Ѫa%sj7ĒEf] ߫%,9LxN wgwԗm`.Y8|{!l5F܌^E՟AsZ_[dm6ӧNgH6(s^R %J"YI5uYM؍V4~WS)a Vk:cG* $$ե[)'  30U"`ZsiIygK )"W`{:eF7ן_5,U>A}-p:Std7 `.yuj^hG(<9z('¿.dM~hœ_:ض Pni՗A1@b~a\SӏM.s!OH½ȞiG&rKŭpnNhw\tK `H~2CkWB9* Pk3BiQ f;9}o-  )lC^b \YiB!%3x{Ԙi LqN8]/Kʹʄo?<8KA8xqm/zhh qi}Kc}[!l "j-0φ/8w:~߮//1`%TkN-^Қ:af hunij&o_L6bUAJhmX6%/ArhytDw|pDh9C|{"'KVu|ҢE_8a19GώBFg7hZ8ٚIhkDf[3I*|Ec"#Nlkad"ǯv|1ji91 z\_ !ĸƣ*:uBUstGA-[֤`Ўڸ9Ju0 =GzX/NB/CXJN{H]o0w{)W[Hvw۰znOJ+͞[ZҾKA:$8m0wl̍!Vq=>)TJɚNQ2WV(+mZ!g''(B᳟ԫ]#Нb!D~ږ+9cwwQrGQn.Ȕ6i?Ld@|& JaJנS#92* u5F*O!VI+Y#BJ Ŝ fWad;T2Z g`-:#Z/`̼l j~CdaPDr>5I/u3mfœ PfGEs(9&E~s`p@u)nU68Nj!Ļqx <"+' ED=Xt ~=p<+ @ $nBZ+aiLcf"9Hz4q:fRp!eK>hsԐ-,QU`f=mJ Dh^$$-f [%'):h2 SdIҨtf@c{!,[,tij$P(^4ݧ_}RA5!yoAvɉ5 F( O U0?w I=֍me;Pp›,`"s^O&8AY/:À\V/`':FN#$#&G;ukH"3pw)f])wL4|kS?VC] W :{J Q.{^2\yƶf[#lbhw;+ ktEQ9;FA8aƿ8Zl :}DFG-ϣSKi57)G5shMft5k'&t'LG+ ”Oz7vH/N%n)gyZ}ub$dI沃SJ'c`$Ɖf>ay6`$v]CdL%qeevw,[\DbEFƑ 㫫_%q07he=:tR Ā-ZE6ox@cjH"U rY֡E*̲;Jڄh%nhJT[5&e)e?[ ͕U= ƾb1 ke4& lZ3Eap5W=V#ۑo4 O؈ZUN]pJ;K?SM1wOXHas0oC:R|%,"|Jf 淳3<[JTr5GȜN0H Q%TZ%Aq_5KGrd֌j2}mJI^//b#W|ya1ҥꎰ(MAVCN)ő+ж59ljeZ_{ ˆ坐2DSYLX-Y?Cfc @9P/b70n+gA(p]MF끅KO+2)?.fmp7CKlbz0;9~#y8"K.Nqd|:T/Ϋw``i>A!`+`^i\tBD3XgegE*T~h^;T'5wqLɃ Ӑa@1|=sTN8@0O}df]'8bVכdZ6|~ (FjMxsVnʳmJSL1GsaiX_p"PCW>rz:*=NfىےQ*5jZ&: hqhUhs;z _Jdak14|^}DE O. )c 4oGZ'S5kJ vC}ދsTT6\+~5a$r}./Kprp nR8⎾Kh&8 lt"mdpTL <>ԓDAa;2G+ É֟ޑ}G`@@3BKd7{ sIݮ@yWi7PʑFXeDw`1Q4)f?伵GNffOSI@JZrLnAJRNI5[Nr\sD\Gy&:^SmNGfޜ.UY*h֧tyf>\}hFؽ*@:hku@H{MOTvMB]py`媨 +vr*F!WmL.7uAPvwwL^jf)MÁ$&wY9vC8uE"vX5،lpoj SNe5)(A#tQXs E50RAd~vF \AqU^wr]@ ƅ98Ít"gpKZ'O>',7r}0Z$zpAam).+& ]nf_ktgm FgbfD}֫Nqm"1Ӱ|S&dveEvc#t׮촄\hM"? QkE̢M _XsX>rE|ԄzUnCǛE:[(|%"/ns@F8^~_.B@]mia5UۀE(p'S'T\ ~ksI# 6L:~x[LKm}SBvc-G|ɧWIkNI죌1 fS _ E4 ݴuW-$ECC })2,VS݃"JkF[p ͓8x !<|jG)U&l{/\5"f`&at@ďש69U @#Zvu 6*7FP6zʦOrz1/QMM ùsR H}sL ͝`Df%0'8y@%>]Ss^@ew_OCY>Y̶qӋ `@L dV]RYN O)8\rˤa 3YṾsoîiҵa_/_;gC0PEHp쌭cdVT={?]b ],К)@VF;0d7 T3( 4!bz] T3@ 6"leA}* B8zjGj ͕i3 >ֳ#gzQH˙t XQ䎔J#oC86CzM[r`xy_.y2296aPѣ{C}Aqݮ #tղE^^ݑ B<_g>| Ҩ.Ž"l/Ftamft 4{g\W4yG[cwW"lo;!ljN:a`+/vtMz&g;id6&u%Ez/2؛νV1_i0DAiviBn۞w8LܔTBN@ҝ-3JꏴOР4Dʵo]+Wl&mhۖ|JUh i>}<2OZ 6kFU{牊V0wiqBp+"'U.[6Pf 9mt>xkdZLXt64chҊFT;6xX!52s %y;}"Kh/LOQ>*2Jb!z٘$9T)Rd#B1 d WZy*ʆ$7*|06 FQ`> 5vSEѤa}O3tDvGA`-%ġ??JfIwRLnO'9w3ZAMѶ cZ~&BANcܦ)`ՈbVR^^!q,$lx6&zBB!N@Eo#D4EfC8.[\7Q##ed,s̞vgq`颉N%HB?Gʾ_"q"TG1_8gހe4N}v(lpbԑJ 3$3ҏXvM81MIU73_,|_ ،"mm _WMaEB{2p-c-m޳Q#)<'Jk{Ɏn_~lyXȝ"/E -)h" %qasnR=Q SáG XLdB(JYdھ;P6*sfv,2-ȫo0eAѩ%i6/T E\qNIl&W`E`r]|ѦÒc<_&>R\DVbQ C+J'U3B_^<`6?/-i'q @Pj %11qy5ͩ5 ۪s{gЌЛȐu7n`ZmI=ѫBv(Y!/v=ܡ/؇PF6c5+y,[f9N^CC)q2䮩k1YIRG'37ٸWH GyZ6ҖiNH\]A &  )h=x񽭶64&kzACE.-thG愈q ,MhoF'} 5\zG!#2d_gI_jY:b6O*'%;HZC#w\/qrԹ6uE(ms_Ɩ5s!!ܖfbfw1@q(=bA+` 2R; q̒j8")P Xc80f"i[T0 de%31Y1|;Oq*gW_T%3Y.`IG"{dh?}!BnZp x3Tr/h;?{}Y$K_K60VIOѢ#uzsÒheTp&?6S}%z/=5PegܦNut}Y;I3:/NF%5HubPfI|] RR;2l 2hA$%(2fMrY)bJc%aȭ ٘>9|mxXIM;[m=; 6PEr>H 5&04lAȜs]yqDP8yaN?RvC;|;^(FPjZ my  e·(5B <2C %*"pYψW̳'{+&8t H d(Nv}cзiywg_BZVsae֊ef'pT/+fHq}Vv: ^SS:|h8 lPZi8Q_`"ܕ sH}IwE+LY-v[jaMMU8"=>53]٢Hq<lbrA1ؼZ};-jxYKKğb0dOq&Zmԙ}0+brp#+*N3u= ۧV!j#ZХ%'fpP"\*Paz;L1x3%TB۝Cis#'L[eZ,:]uTG Up_섎W\-lf 1Gf#@wB'NAQ=QBYm5 5MJtkt D }1;{!66G]fh-h::3+vAmR#߽f)nW_;eG%?l?KbSF$X8<O7/WJ347J<'B!X\K?si7-1K09-8iwf# ipLCdD;?c &oǮba^w5nw OxKeQ$)S0k5J1oVyyagNi󭣳>Mk|Jj3mk^C lY13 [ރ.ؖ2>`)MQP18Uk^b1g@uQC7v0 Za n9HM!&$kOd3tUЯ )䣞CRv6/>tC~?˫ LqK7gԅ r1Vh Bd5S3&e6 Y"D]]E7(|#|@t&KS~djĒ:%UcבrLi~ըS|CݩuJԖ.H0R b H[NZ{\5`z@Wx_wllkB˦'  {ҳ;q[*Vm6Qƶ?4C?mFԅepz-lĈiʹ,53?\r)IIl'/Nhjtƌ6:ZMI\]w9KQ =JPdpsdsXnOd I##QepO_S@}#B6̷#iw7Fr^ ZKP9i+IT_{܇ M;߯&x*_p5wdM#dm8&ݑj +}70$%'eXބ-"#X/$>cFہ1g{He@.qzQ:.qqTH\ڪjdJxzWtzYu|@t427 B uD >aa-h컇-N:s=Rb-a0-' E]#*T*NdEGʁy L c 3TH'WIuO[ .LNW"'j`Itw}AD?m% q5K67X"W xOi^|wy؞B'Vp|6~ދeQpV\;N`SXQ*;>;'YV? řO{;`wF(-Ti8]ă k`j5UkK #2:>:K@"qP$BD.4𹝃#;0H5/iGɌc\n͏_)C~;OLMӁHY[S'Qsxlxhm5&p<2lW\.q@idXZ 0&\jԑSB˷˽cX]w5ޙo"˼J)p_~i G'3Ezђ2CT ƣh2jEc"E]'tՄX44XL :L, 1$u'Ý))$oG i?xK48=5:8 M{%blY@XR0C~8 AGJ[L* S)7I3ozݿ2Qh@ՌhKL֕lj~<27FjfU]*i D޴QrcnaY~{_pB+, LBE# qȪuz/)oet]آ@{n4^dl#lѝd $=ng'nBJT=DjE`B̪=( ۢDR fPvxèosJ 묣UU>ޟ;Jp >7>TȜn}?pa\jdeiHjY Q75'~ &@ rEJv٘Q ͰPz.WNi*w~Kuaxg H_=yWvMD n6loS6TEs`r70:tƮ}]Qs@IfnBH0WugǪM }$&tЈ:]6\bJ$gqr[T#ZwhZ&bΠzo~I|wg⥾TN$v1>Fj40_mB [U$dn\ݏ\8L\fҨg#^./?CyG"#$u!D b*s7LoYsq-zH<b\~1G?I3NIegOND@&Bb5h6eTrbn??Szߓ71q'΅ )Q\.o&}I_ƃ9#fb2Ȅ `Z.pJ2B|=B oP›a6&,T4ǂڔwkM3Imp*aV]J n˄?!/j׃'}Xh|<\K~%545[>LhQx1Aw&M?uNJfuQhЩcxE,&${O7C c)n\ ?X~i" XB fk*8|QPhS2[p+U@s Ҳbk3M@;oםQU1=kgq|4S bL,F*M =Q'ì( Bu+ sܝ7\( y^9RlӁ7?3w;e!K zB{㦳i'Dag1O8%* } #AT)?qRpn-%PlzTg .E'yf쇫0Po+>a,U8!_H>b̜at̕;*Rc Y;$Ͷ- Zi;+dNN7d|jf+~ e>.9Gm#)NG=3-:\P^C !]B+]wXMžI K_?~)}`h_(PwRӏ#A_J6&!<}{GK͆7换6Tqg7-L7AE:Ms^bI1*,ċsOL.2/Ȯ-]nۖZ&MNx$e @xozM,oT鼐eS8!po%b ZJ{yHW^r(ғd)#lZC`$hQ_L%jsVzUTtg.E, h]?tb) ٪%45L0kºX!p>boP(AshTTb84(pWʿց  Ί\x7a@a[S=D\[["fR HikvU}a#l*5Ad1N%ҕ6 XMzV&C ;x̅0SS{:iGZ!hBQz:֭ !(ee]!ذ\XkX8*U4Y/g<ٟ"H?AbR^sS<ԳKT=]âb,|baX1fT };{̿ (ǷΠ:Une ]TC0R@CqpOޱKr'0Fq9T5U2QƴDXPr+ %t}0J2@̓IAۏwU#HI4v_ƈ7 czwZgqcctBh#v`Ib}h7Ink4iȝ6wOj `srw> Cj^GR:OS@GkMyN{IezUV::jRDɎ%@<$џHD f}g'd5\%Fg!aZ*;oޣXI>US8%iD<<e\8Y30u@S9Epywxfg#:G+,N%0 8-BlUĞ`15Ue}i{!U{O avwZXj0Y{Sg XPNĈ U&f;9r, lqjqY N:}$U+ҶT4P#/SC+!۬t(^ o;NF;/|o r1Hu@Mup<nl~ zzͼV_ .9>cЖilgwY{eT.e5 *"*OLc Ut̥V]ReǪ5 \NAWB`Bl5.uoMEZ gEėlMČyu&cď HhymaMeL [6qH yſZ@븳=ԱGa-r8f )"5ut )kb9S:K2ݦ% j@\Ux[mB_Ӏn!Kx`J;Rl6xCd>o7T>mpb5|2]hAPk|^-ښl1 ]1**!&L܊j3= l7"pfVM tf=bd[$~ä) vkN SAˢ/cp]Q2* tqV)ۋ3YTUE3Th I,^BV"p˯ )SZ& Ve4|@Cz1G0i>أ0a QBy {'Dٵ,1)Q'L-G&.h{~hPznIW v֘Jk 5X( RœXt8T=^=`a=ss,Mʜ@Z9Z t%T%dNyIVXҟ擆]UP`q2h: ]uPWGl*A؃;(2 / &LQ~#Rxf0R:L|NLjy}牎$."֗9Ta-%q\mSӴ%3Ă,$8"ȁY[*2"nC)>Űe~.P#D~||uY#M#,|APxׄy%QC)ˣkm$}eUҸ[ =o[q6>m$ѐ\@L-x_ᕯ(ZYzR?:K05gTVs _J@0t-ؘLQ&Y޽{ҰbKZ+4*T Rz*oF퀴&8^L\V(_$EһLS:^@>4вm!̻˹N\x:")XIU>=Fzh{ ޕbg/ɢ'׻+kI C4FNFX; r&ǒι IMMK=AJߚ[}C2tFBFub_4Ki乯gF$2 _< $j5wXĤ cBm;%O%gb1.=;m ?wD#w.>sl̶p Zy*| 54%:=GnIaꝁiaT"C"Er`Z--O[,jhI\A yXo8$ZrMJ+)Jx-VD!#D?%%r5M ,8t:eEH\, =ϙCY*C+UB[#Ӧ%*쮩̞ϝK¸K%8Ҿl lNkكw[LE.2wc9>VM"t6V/p9"&Ø~jygH`#Sqs˻ό'Qp3%k1b$2 !fTΔ:M9!D J> XT8Z_0zZ_$WM?C @ʑwIQsf^Z# {Z\yUw[M?8GuuѧS'V kl((F0jI$Dmw׸xe}IUwXrn 8YxЉ+NP,?JY"y@7aP{NztQBIϰ{fG)A DvÍFn꧙7,p!VaPƒ{ !|[Y>*A%xa '1Ca[\3Ɩ/j籦/^GK?"ZglGrT8LʝFQrlW}+*(X8 Ly-6}iY{Q\PΖ*\^b-ޮ{ qR=p}N^ Ш%/bToZU腨zp4fA}_g rl Sޘ,^_؇QCS_jSiytk~fG fL^""r" 3h`>l 8x ٘A u+?*3H[)7;p!i#;EU1'헃}Zf?SyJwle[BH”*P hGVܜ6>sz:ݖ .5=?.C{՝m{2e){5'\n0ɯȁ׬9CO~5Dcw~&$(uJ ۇ$X /6wf3kgNq I.ۊ ex[i]WeSGQ%>[8J |xOά;f(xZ/S7@m*W c+q\VeK4XIXA @FwLxS{{/DHhEJda(8@Z`>XȚs˳[VsKy {9V?myCnb1qG3V/'kYNX%&}z%+% '"ÑKQg>.l/@`yA,ĮRy}P ey/ǺҬ\UP6bwB:0XK뗿OxRx]1;3G/PW+OK$$ذ-tJ%e0p yzj=p-ͷz1u~1EZE5[ƱHlY*{H%/&?Ixj"rUmӜ:gtҒ4EfjZU~%F^{$sy JKgXBp6ZPu0FFGp |`3g)nT9Pbvu뮚w o,2^⥦P1c7csz5܉瞙*uXt*ۚjQ2ylXlNgQe^_L,3EaYiZӡ? $ u1eiPSwk<낹ag>Z^ Fm EZaRQ=sμ?46΍W@`B25f|3僳Hl\R07EW8SCU>D}jSx)b)9&xɡ,WeYf>ubkLO^|N-GJ+qu.B0 ±Rp7hU j'jN>TP, @(RfU4TַԾLaQrlFoT왼`e7 Pm ԘIggftv8ݷن& P^HF|>Fnq'oBu=, EýfUxS+(F4֍g] \I]f{\Y1tvoD>Mx/XTU_doxfD csS'0.Cn{//S69?)ʘ_FvBw`jiQIE˷<}EBarkhBG@iz52QiFxvAQaʜe6J~}$&%ΫOϽRwx¤)6Mȓ[ð#,ę| G1 bU4pj>i+rpNҌƨqd[F%_T2ɒ'p'ccab-n_]))p9o6K D.JCP3FB'\,"\_9h+9T\<K3VgpdhͪPi3CB`O: C'}Ikhm-X斢2Q3zOn} S5Ev ^MV\Z8e=~*z8: Ru 2.ڳZnd a`*;E~AOlQH0Xq(.#ХxIGV' ]" ½TDr}5@]Ϟvpd P :'o:U5`Eʗ^2I6!g$hhxO{G֓oabYǦۘWphe.WaudL|x,'GwIR2e,LdR5 P&=W|B(!" Dž,'ŵ8SRBB+t9QyaZ뺀8r'4 [y~q*=iK|^%񪑪Sa!&qJ GQ{9)ZC}9!סMYʗC{C@x%oӈ09!' :BР%ybDWfm k-n Bb<2"3%T+Ȗ-*wsC/%4<Q!.݃- +5NE~}G@* [llK=%@rǧB\|G b: Y5¨e-B(IDzuP<=&1ZѰ@dn,QGS_1=n0F\K.Su5e@.7" 4\Ioors҅tZ'6.!]L}G_+K[ʊL_B $hm)GhtIP'$Q~1w+Y_3ԇ"\h0NAr{Ʃ`Md\Mu- "h{dC-w-$1GfLI !ťL6yHe܅4zV@o0wB$btʗiߘ6;CXs{)|jlVe;%r9ښJ ڛ-E|by8h հ\A<@[ hm+U81&y*Sg6۫x>}Y"RӓDHpVی xʴ}˱h=4ĸM9'. VwuS݃ |T2Nh8-^L!UP穀6E}Mh @cZC3 [@!qI,sgbR:gCWD/O_l~2g5??o2rSdfDNZfYntۼtE+6|~>WvLjWUCa55˵ `gm|8}"2VM~cMFاI-V`:Eb84Ћ4_dB2 ;uSHXn^-7=e50U}`)1ko:1h xתNK!-D#WH֮_J~ƭ"u20Vf"xV{a\ciY4S)RaA]BzIT 4[R&E]<F}Wl|?!Fݩc%`uQ̫)\䔾E} PlfJ)(7_37>n+L /|ȯ7_}e#Js09#L*'%ރrbsZ.o/2 Op.;w3.e"uRޤnɑ\Y;>oW1*򚎜j0@7͙=2=4>CA]Sjf0}s-p 4&aOhRZxʕ_6ܿ1iٞAjz6A=Pu f/ǀ"v`.C/ȒJ@I]$ưѭN_3׀Y2*ZbGS>un !_ v6-H'p0W0[HҸ$95\zm5Y#z!hhdÍڨwk>#hAR$8Œ57dɖSBeD)"Gԏf0&ʣ|,3Wbأ\J- HdX1 \/*K9bJ׽ |x$D/q k#t^9'8XPy愘֛2RU }ݰi+9G8w2G !QRdgHB<$y'IWSW~"m&q@Tp9$& t,Mb2#P 8Te 2DթUjHCivZ7C}q 6̌ aQl3&>>9ɘ`o`.ڬ~1q@0<;?ghO2@-NNz\JAJBb0CT)GP[- T>f]+sSzp8BMhD*Ů+VJ%< u.yP| @zjxMcA.qszK.J|?*s`"]@rT\ĄO6t%B%keʟiƠ\ʋC >:Bh<ūMg<5k-*IwS(V&ک3ͲLC) `Z! eqwLF*+L'< e\]xRg{T)Tdh6&B辏u(CTKM Kyr9w8j"pݬ >@CH*'_&REJv RwD\[IpgYּ&k?@(k*d~}?ZN sՒO P;Rk;q ig52H|Z1n^0vJ }:T=q!C9 $τ#*0FL -sLStԽ*@ani7\2/NS .gumvPgE8161 #8c)\=q?꧶mz"Z!%]՗/lD/Yu;KGuwjqŢI~::{` dͿ˭]Onl'r 6>!,jvܺQkBEvCfrb"Trr"x(,R3Կ6JLv{IX\v4s9A-$=tc5jh3HSFw0y7 E)w~]b!7WִcN8Kvb ~:%P+p8@Ѯ,F]&39WQ/ :=L|'dRUIJ:c2YUvY rchhgHv.oʆ- m=ΆwgY &:؁- G$`/Y!moe87u'ITp]{D#^}k%`>`K~yݲ̰#3<'bsj@6OZQ׍VBbQBˣsP)\t^ϙxH-]':mFݏvۖ6Zᤃ 3BP,.jPB"O 6E[k@746gmc_ ~ 4JWLˤ,\_|[|/R㘗SL*(#^W䔿4[Y?DXZONtXzVxѵvO`rxf\xcV;[yY͍i,wdy-AV Rzw}b+>گzF3 ^$HI0KDgE/P/ѼYOxԳHsxTUX9dtP1eziP=/tg%3! špgǹ{%b0+C( 8L)l^>uh3h* zhvAD%CU͏~ p"#?=La3,Q&Bo0r!p[m hܝ𽳳yRK~wPl{WjjpKY`[ZYXg u'cOgj('t`1$V~T}8`fv=LFYjuVT,5-ѹ-@xzM.t&!ٗ@J7Gt:Xio(?mݏ'LRF+N3|u{i=4Ư;h q3y1e:uf'wz|7ZqqZ,G1mF a(=̓4х)MyO$" E~鐬xPjUv.&'S5S(mrG(ǠqD T,44RR vzHe1` eq?w\4Қaи̙pk w|y@N3 9iE05I|U)RuKl ZWM< :m~|j벑fTv%*2{ |f Uj܏2FɝO2hmlК2c:X3Xn a#rbֺ.2SĺY< .٠.Ӿk~ \K, A,h`BOr3|CyTp)z޶RvhbX{nDᐂ 6Az]/fj۳'$jIPSw7Y5M?'-$(0)vM{炳^;Rܵ1 dH)JĠ@8LըR@7ՋU~W;75hM`S8eY%l;*(EȽ)8ȝ?Sk]fde g+;nf'.zFA3Ո?bYhN e,G=* ʳ M0^Pڈ;ё,[Œ=xլ' $j]54C>yr[uN]4ʅ%-[$vpdFit01c RܺrZea1~" )8ĖyL 4s'Rne9`x+XoH͸.as 0$>7AE];7Gdc Gg5\s*p7)'[wмo3I/CҌj,v?5DM(oeCJoJAz B;kM]nV 崎5xkgqWVl +7QG N6R6bHSsLN')!buҒ@PB4R3Z͚G"z[#ƔJD.be ('ۑ=6V/7ios4{}~ŶsJkoDa+1-ty; JA|}͖0T`=uTWPH,#p0q޳H%SN=]Xu{047yҊb zI.+UHf0,}%mK5⼞rO 36D(VģBFfobHYBz=Hp񻊺lfap6{l֖Ay"~TbSeIUs%} YQ\ =R4_,;ͦleRjo6A5*nsvA׿?#:|SXZ*mEf/ URĨ*UǑWl2na) Ȱ|VNӄ-0'Z0oÌo9~םJf/*7r)EbmCgl\\jƏtc%+]A A -OMA^DP޶X)ڃ< ê"S TrzͥL39(gXiv j3qҳ7ڣK7opHi3xwh-f+O L=_6Ct?0!@悅uJl9 -A#\"onO7fVYNtr"#"w 3]+0 [֞Gˍgu7}8#|oC YSer- O6Η@*e)פ({;V?_9T"tR40nWטiuK-#&ÝﻸĹ9o#}3a]υ14WਾmYv/=_>B~w<}HZCP@4`dyлߪ)VP^LkǀDV`CBBfgiuikZ@/iW+_/&|Cjtd- m2r]u-K%ef+T=ևfu'!6xOr9d @aU"2gMI;=s.K= `p :7DMTArB~ KxPQTڠxؓ5+#NlRf#ua!G4K 6TՕdLb9yǼt pN5UP#dKpG O0ɻj̬͡lى*.m1JVɔIlEIC8%+oMΘ88?-Ѿ+Oo43(%Pr"%A( Փt?5%uQ{f^"vPQS.fP}&̀ %OlheLBS}iUy6]cpIf4VM7bXVX0E3?WJ$6 *''R(Qxd `f]G4#0(0 6P;x &r^1W?UpHʀc3QU|0x6 4y1lq{?ݦF՗Hu (NY LgIJeHUB"uȯ1z7ģR^`1NOvNߊBX Y;LA +-z-0'LL[L$gl[*쳋7FRkHzh;/r-gy*!sswh`xoC}?LFU ë'<Ġo%!i&ʓnJrcI&4!'{m(1vMghۅ0 .Uެ|0xV+hӣoT5!c+d~i',16]x*D7'OaJr~_87nKŠ&0ڥ'Mw\U 򥁵WpVmSLa1N#h]/îV? t4O6 k i]^IiӤu:AgSRsƙ[C2 enNT]gFreoJy9P=c&HaN)|Kaf7/ըvD)eSR,K0GG~![ߊZbije&aK"Ƙ :1:?"Z_j-Ox<~W%&+ [ /7@IӀf«*b.i@/իՆ2h2䝷Ǧ za DE4!b EL^ E!llh6(Y~{I{f ~=uqcw:ɅCؔ8+8!B,]0pJpX  87Cvɐ޾[:(z+ _.@HN}@Mb%`xnF ˉb/0 ℈)(ڠjO@]Ҥ>p> ]n} _3kğlg .&DSi'|?ǐ:.ROт+KeY'+^_9e ?ls0L $G( ՙ_ɈDus~6@E,/N)rF2şW,;é8a&do4f!qԉPw-0Wi gw'es"7QQ+QBV~K 職[y IE x'ٝei{ !ғjY=>ߵz D+x_G:g5A!ⓣ5[luMf`ik'+!gv$\~'`g d P]&k(HT2*gmt8t[R.,gS-+#$w'%y4xZ-Eu %ܶJ}e狙y.M7!,3A4h9c4s.Uh]-n@~#VpY u&T8~IƵMi 4`@%g6;C DJ%GPy7{er<5pqFW9yڗcQ6C)qOy#*NT~ 5a^@ 3] z[ݠs חX(ȋ]-h)&F7ϙUtEq- 3}jmߏ Ucp%76&:& GͶI; фX"ͳ]1UWNKބJ95RGC$=z25=ԐbQstVJ[{E܇עܹE65oH ]  t2g2 5L"*I]mO*a+\t-i|+@7l8 zQ~G3+4[m'£m(R`XA&#Xi}3,^D(KE2A.sKNXQnY6KMm@Cمn2]R_XD* ~q J-F^R.)V064.!^'qxMLi7`^./b|DPӼjj3j%Kr?mZŷkyy4"L &6<7{'h4}_?(uۑ@ 83˙\DXi ON(K;P%2 Qg 5@q(\"iQ jM$'z(Ymti‚ ۆ!1?e dz Q#ĶRUsdr)O-~n=4A,O 꿿0 ydNtL~)אMH7xEi%w3ra%5^܉ ] ` jUaSO>cwV|j|CB[IRs)兯X{KvgĒn³c~/kĆ0bDa"HDS Q* oǵ#>hS9n 8ZD}/J~?pMbD6ϫpMGlϷ4KDc'жm듟v T23u!_GHގglW VOCx7ZBſBlI7:OȳHaAepȊ\T= 1gC9À4&QAτE"ghץ+EƧy礭IG"x=nt{' DG٪#'A x=1bY~'B5rB_̬ l1$X;- <dF?wjSgxםINb%l38g5UFX"9.AkǿPk>ZB%/"^@dӎE-EB_V%5k.jf4L{ɏ@7Y4/hVR%PKZ$ߪm<@ҎXauH01[`j?nBwٺ]Frhm Yp\!Iϛ  ȹtT>De(y.%EV|#A>U25d?%*gd !7Ll"= "զ2RnN<(7 Y@o ^#:7&N8C@8gxtҚw_4>ϧ^I$]Y|N9 aR7Gnׁqg2bl4 'J "oL (ҟ'W8_=1CSPsCF3;m+ʘ?V-eR3bB2d5φtߧJ &eeբi_{؆'C[(ęx꿓Wdy[dV?Uf5E|+EMa0*)][#Y!ŏ)ƍu/8}`3,*IF&q'Oѣy8%J$U6^^z!O LQpt,Sla%b~@TF0*,m&P3K{v$yΉpbOYGBOɑd8H7B6b':ڹwv]qeLFݹm.w4a4WRK!શ)H:d?mdž"H5\رpā~ + X e*-y\ErAԘ7YR .=UE]S-ܼiC+`HG=s%_$Du4şzrÇ:,9c){PXS^"ieZKn }#jQq<[r'0;Pş4/\W9_׺]l~S#T*"}B7 `Ŧ#֡%䈥B|  ܝVl3-ԟ&rSn|%5 lx)[pC7Jֹ|v<8آz9flDړ2eA}2I @^]PSxۯdOlX+PFêO7q;x~#j kwO%qTje,lƼi~03dT/nI-?YAbk-+o,x1WlCŀA<Ä-.jrj+4 cJ_ Hlx4nْ+3*ː~1#.rpJ>orq6Rm>$(Yv(&>9ptj`k6+fdʗw@Izk)'&,)7BVtE1Da Oڈ bI]PXjLe= AטSO֍=eYv;9;#@`f^1s~b8;_N%Eͤ=RUCQ4y%9u~ OaPUx *׵!hy3btn%ƒ1[VS.9HϫީZ d<Ævphg !?̈LR5^edsm"g-kgīwa4`&ݞ1CFioF&VP@aUu͟ i% KU6 7#j\C"F6Z0&'$'i7-Hz3.dձ|z[WE<`qyxAnk 䱛TsJo5S|/!UO0'`Jv"PRY$/ H'oc@k"lo;^?:L¾>[0 _U CbZ5vG(vɒ2HMC&^տeƒ5[AJI("٘QzHbj׮p@:,vYZVoӵ+u,m%Z_\w`*V 馅\qY.NQ&'ӻVԩ v]r!Us7w(9B_5t!oR. W iu;Xu?z=`Wx:ѽxc[u`PrJreUf< §K8X?ڠI;uo?Tm-@W?`XIA$#ǿ/&E߅o6Ix3k_A,0ވ} y/%j>]IK0I z5q4]U =P!Ytg NȆS5GcX6f%#ɳ=vz7k>h]ES1ALA$Ɲ/Un(:E*[0ꭕ{8qb$[KTձ5ofVd HM>D7w."ejMҪjz6@N+1n,)v^tzu`| d(I?uǝ@f|Q]/:HS,hӓ)'QX] 8lG@`cu!  t>^_y2""BwЬ<֩_ CWO5xE V:[z֚f2Zʄ/E#KO!0!Eܛ_ak+5o$lhQe!h ]oxR5 @hBz`")>]NIc߹XfĘ+Ӻ܃>\;Qkh\0<Ψ fX^Ez۲@gai>ذIlTy/Չ-Ӻ(Rpwyyhcr(.0NO Vf cbs qT+ku H6FE J'bPW{D|9Js=ıT/tkw5o: Faz>݆+q\,>X;b'fV }ǓV. ԹfpwppUBaG%uzMĀf/(@Lz8.Ϡabjn s0%IG4zMI~. J痬rKZ?AZ {1CL6OTh+P5}Uf>vyM}c&MO|,GWu?hON_yXTӄ{lr|>S4m#"A`f;C6t0Wkb>rd0䃢 PmhyuzwkR2R b9[lVs!~ C{/v}J7{ͧLs9&t)+ot&.Ni|0gbx7Uֹ`p\\9Fg^kA㖝] +"e ޹+#g5C纖 __0h#!Mk.-]of3ΤGæedKr7SႧqI7 '% Wޫ}O<F콂*ku wJ GaI`L_vuzvF {| Gi4 :zZ,BjIDяs?.L`%ɵ onwɥCн'ߜG+I\ Q<_ y6 w~ ٛ!+`9zo7zXH(@2Dvɻ}9_,U`l|pg"q ;{5e2,U6ՕQ%/"$rBgcv@96f8" ‰fr8kRKh%cw]Ea]3bЁ! 26#b"N aSI ɷK'>_{oD XrÉx=VqZ^郕V ̶sPLL[<J!Պ94mQe"}Q (ybZOmy)!{N.]%'|OE028T?4 //JҰ\3qm~3 :ʼn( O" г7[,??MR :m6Ud޺|k2#)1)O[[c Žm wd>j?-lG)"y!ReᛤYReig'$zi4>;?t+6[My<'ʹ'7pOPu~c5'r|]Nb M)]oĤWਯQ /V цEX+816 ~ TG@C&;^]LN3[\lۘAOŜf@lJ~ٗ'i '11/Z4{soDE;bYWӶ3#$ħ(HMPtW*- IK q1я1M-Oy&؋J=4 mU4Y [qqma0t4__V%Ƈ[)#}p{jOՍhXbp,ӷ:H`Er)JW[PBKST$Ai Lwc)5Ϫ9z`~| ow0𦊱`&ݟdSa\"+;9Qsٞ$V@Q@ı~P#sd\}Բeј<"E&8*s;p7$gý0!`.c.)OClXo% 9#ˌV]<>(Ϩ_”6[] FcD. /\-!zC"pIm"rakL 7D!"j^Ou x*fe-p+a\z^ p:j|Ucya剋ixskmt(",ɘ./N;Gh5"(~*-Yc#zÒB6;o{uȧSR [T&vB@^1 A/ؒ Pc,"$:~^w tZ-j(U˻(n[ wƧbndbnNnbrU;8m蟇{(+[ V1.?ŌVY Y ~y sX"uW@#bQz ѻ}̖px[_]ΤZ1C!ot/sSSH|^=vϞ[Ȓ߫aB*vԨ}CB镊rLW"w1(\mYhlm|@“&5{\~#J8֛%q i˄EIip$apJ~\٩׉wZHtᜟb$ adxT 50y:`i9 SQ;f'$by^B mlz D#oƐ{}zJ`^pGKg}Wɼ[8Ÿ́š+]!!P_Wx R5c)S\@˙DyyV^&gJ` (8e vX/-B pY O%t[6 5f#m-<'XPkrJq;\ec%c5jPTV3>Ob[}uKiS[KLѰoYsVuY>GKw#Uxo D@nԯd3BF!uJX>dx&Gɗu a9菏c,}:"y_"~^Z 6M}O ]"8C[ztkl鹦/ױtV欧b2\Q!~-(yz"|}@|Cĉ3H;y7tʪ̖܃K )&K06n0(Rfhs&( ޵~>:֠t*RhDk/T =gqϒo}AZZGRሌ]/B2+$+IL5Q]~+@8(͐\DE@D4$y2e4Oenmm&n QYJo*v!8I~K1~'5lO3qH+6e.Qy5ɚfQ;As03]?u{hIuJ, z~z1:%DTu7CF%R1l-'YR}%8P-l|$NekQm#9Z+J垶G^sA|l2j:iSm'9fᲸRV\"1HP:k׸q1W@(][3aO9 J'~xe".gzhJaPSF}uz^H(~a죻t5?yb |'oÑ]*jg)Ae:})Dkɕ(F^Kl1 `N}F;m4A$! $0>-q.dן H){'X0J3Y4$z)2rM/M cґ  (" ?hom3sa9e;XLT*s'uTam6t J4fxT:&.;YG1\`}ǖP5=SFdTɜ2];̏L|< ھ}LXМ?KEmEiz$j3ߏ(ltto= Ie5|] 5NRĜ(o,i.aז1bT8jR<]t+W(eĵh@I)mpm =']H]4%P&:;;2Ӫ=+f3g:s~䘤=-#[-[󜚘X#`ԮH6BqԷ;~ Ӻ+ybYyJi;Z@m)zhq&k>mGrv-}? ;w_rB Bme&DhX ;z^(~l9" .ph5' qv˙>d8eƽB֌$p{2lue8uh &;cأYUrk( V`~):?|& Ig ^:ANWR(獃b0WՖx<.zff9MḻVěm?!0[l&UJm>FGO.A+D+ɔqvf$i=ݖm%*ݮDGC@>Ǹ,MP:իc*I1cDg#֘oГeɉ[~(‘HlR58ϛ_p$`s-VQ;-ILd1K؞'~K*,dZym*NӬ#(k،,P;9J]spq}n6U (uu5< #{KU^#d$WUG o=볽-u=+2K]ЬM况*w7Yg#RDG+\JCq*TSI鳚04j=[رX>k^m| @,/\?%* EfY ϨlPj#F9"rC~FξYG!B~{VL\!`2x@1'19y b 2ԃ`O ]Z3zuzƉiju*"OV%Y>U5 F |P+qPS0@[iT%te eՕvÆ&^{[9FމyGuM=]bsms|Wn`AY溲b)!;:pYxf ,g gGhj'}M?Kc$J kpSВT?J >@Mrs\lwONJ9kFĪ2UUC,5PGڷ+N‚@*9xW^+$7` F7)_r=}a\6L%WZ8z2S&*Q*v 7)2V@g/ ~Š$A(}3 ~2k<;DkhXD tE+>mRo6gͽ35rrSдQށN&=Ʉ A:1/lph=EqjGOn eL?]I&o?H,^&Oɤfϴi y@|EndA*'">K܈(L:ee4.b߭П#sHBׯzǜQDٹDB%7YH5zN>JlrZ|P۝ 0E]r15`K;7mc.LFqzrMW&p =LRE\S*%k^I;$66EK5RNzw85r- 4FebiPg$j C:{Hӻ4|||[)ۙΙ_hal 84!bJP- t01gGj 7GIr#.10RoD453Mcs<1͡KpGylzQA掚87&Λ4O<)-!Wp9יi ٶf̩Ng-L} iQqwߋp]c>'0ЬOG#t:wNmi8k3΍oz42WǁU$rmCvT8R=n(t}g%s-Ӓ[qTqm%\9>HMnW߉~4J/WmlAxwCCxmdİqHAPɌm Cf&y VIix^/댶>MQ8K-~Qqg]EpC9$KX@e :E@pЪZ$ߞ:ћ)e*mU4uLzUt4 Nߠ`YCnޣ b~t HVVv\<%K`-Zm+:HX|a0]g2-eI S NV'[BnM?˻˯֖<{iVEU%h6 S3ڪk,*fm3@;6 |pOE{p9c-z\8$^ހUl{tcld, T]9b2Inu' eVout<x@ˑ1AZ'T&> x8hUu ,0hRʤd>Ff%jL;]~rܮlwS|COSh_N%4:~WQd!ZTa̛/įiC/X& a59T K& l`ܚ +W π0AMS`^5ҙ b̭3i=ݜJ&A?7!D~F[Ղ.lĢ|Xhd^. ᖐh Q`Bb#upЏHNZ|_GEpvK7qgb絼M[)ʬq9"Arx^,"Joi1T")ʢM6\YPrZZenw R"XjrM'PH;ʳa A 0RC%a1x Gў؎SbODL2, ;Xgl]Hd=,T̶`v])a)/aIu 8?.w!eQ|^&X:pG_>^6!>`LoFP[~N ֭$&W,=Ks_HYS+&|s$m&COKl>ǨETLGH-Г@vsPmػ +(3m`KO lo@eJJ.$jvr K>CciSHF盢W6\; #@&.2N1[ rIޭph9XXK!ڨ5Y+&~Aݶ2 ﵪ`H(b [ǟ/6Ը` k7 ;QѨRh?,B# sabN_Fo"'(LNdlbtgA32JuV z4ip$IpE} Kt *÷T%5a|WO% Sꭖl-uE)_ky3z0] 䠦|+6*1`[Li71}᡽9m:<ä^8YDxdopoC~u$ M0/TO NUCL`glJQ7jh1B7f}h^'w 4+i~=Dna! sATw MDk+boq]ܯTX_718"B?n[F{sg$a8ӯ2NLz# =`#.foCV3_. :E##!.hUZC{4,YpCzPQVpi+.?̡cu *a-T6Hu!k3MhJC _ gF:M<4*@Y#2D 030U{ EfQvj=cR8;w%ä&3\rSa<4$P=l  tWzٚ[q ER7MnR6:yCR8Y =|gA¯+G[ ǫ~ E>$[w,XK1Mz+GUohz:DBEry^UL}$xՈ$`LJv2D]**:̢j i2́`媾h!bK L[&"mmI_fkx[$ZL6H DEU]!ƁsF}4JQi8+Xb$}{SO%gBR"ʹłPZ?1@}d~$sn 6LBW~:$+čsf; {&Ej2M?Ykjߍ19^iȟ0'rÚxh+PĜٹƶ7}-y?(ۡm6IWo;_R6ҧML-IUG `ßu]YYd8V.3_$zUAfyۈ&6Q o5[s쯨Qo̭%2_%x7%jMJ P^(S10̵eg5iFS^i/Ȋ.h=gAΥWw^u1VVXR!f$EװZp ZdIN6)>ISgGo!Fev/Pj?/WwT39~uʷPe?GPތ˴0CQm%1.+bI gXD?:U3!/S{kqS^YK .]$rJ%L p.!FF`٘ hQ4cs-K~iOWEԼ7Qo(Q_Ƒb;M9nn!= 5M:gH{sYsxyvQΩ'?v_O1]6Hާ5CzˢVsNdNCp,bR_?ovZ#P2 ? 0ٕqd6Aǐ%-$iRVGӼy( `Pr`<u ZJἿT'ʒl c.`I%v:/s{h~UBU~xAūm(Z>,zXmSZ'-%f߭ziվʪlQ%>'ys]Bzw]=F70ˎ_R }/oO-()J֠~wQj<_7S9g"Ӥ_lw –ŵ,Sx0h Z 0?ӻr(P?ͲKɬ:^dwA};7b"$ȱUV$b&!,{BM56<{x=*N30b} g"\ѥlq͓KgQ~y\6 N֩PF2V"-Sfvþ '\MXFIfisPh:0MF0Hk"#_mI?Kn/Ezuy;`I5bh?wZtAvٌ y+6QfVGq`iD:? |<]p6Tՙxhw$MFp{3։x9r*,DaQxCG;w4R^Fk*aռؐub;4m21AU0|AE+p会 nY~o@GP%MO5K*~! (6((UHAuVܭD)EJE6!rEe3ӡO(M{r~ yئLed]]KdvLml(ߎX+­t%GTfG$*C5ߤVts|ZD"R>鸣 ƈ.].ߑ+q7>_, 7;WEW*chܻ=9tzOJ2@B˯񆑩YeP)$Z&e1"|?F*ҰfQӜ{7[CG6yꏩˍu}A֔醽-9E3Ɂ΃Aw(UU2sr sSCe޹傼 |#VyZbq (ݠ+BX!'=ٿ rCYgu|o5~eb;JWR# c'I32@L Kז"6Yy $F\#Lkf?X1!*U |ĄxPQHj؋a<3H[mf+A,Ͳ/A|f%~ڇmdphI}΃KJ0-(n<݃lF`0ێA¬bQGu&M\ݙ*A/8'b@KTb(s%`d?]@ Xаs^6WbU ,iڦ>{wŢ|"y.%ajv|RtųCŅiRL.V:4{>oW!=[pg&n  =)+_<{/ihjC)jj~%0>n ^dӏ%" w0/ə TWZAMFv/R>?7چem˒uTR`%YM$8 }hL0R͞MX3m(Y*N[` dnt]( {=5 h}Fԟ8 , !Iļ[WZ+;o4sA o39!MU5{\ɹ!Iyzx>>-5zLy3Ř[5b>Pin"KpEQKFKag헹JjpZ7 x$>&O'2 qIŶ ~K[l3k\H:{L91##JŬ Pn"v6Iq#ŹR~iSe}gإ%3ک nC%[ov$z!U_^O-3*mq+G r ꢐ  qq@'nKYX'Ε%0ꏄE@a`JkLδȾ_*  v3̃`4'uMKe4oC+HɩW햬 Nj,#~LJq*hjq``ʂ<Ù1^ZQ/KAH~`(u+Y.'댷6Fn|u,aH8q@~mK"w1τť)c_Ko[YEUEH7zR M 1g ;EVԉ5}Sġ}qRɠ#2iG`v);gDzkPZ,yW3MIk,;@\=o v]MQ5 g佫(46{gvl$ll3mY8 5dXe\@K֍ƯQ&.ZB]XSk7exe'MwzsCExhA/  ]ExU%0YH1=VXCӼduog+B]Bhx{F,ȅN8$&ܚ,)x6-FV_CfxD d5o<lwg /7"yՊ _<M(s%^~szg> (T(ib)TV`L3:2;^na(xR v^?F44UM%uL,ZOHQEmnYϠəK|:oXSbk~$#.XHs.츕 ӿf ' ll^hrӢb&KqȈ8yUU𗛯ݹY7`VVr\ 9"nҺFts3AKtXX˛ri>S2zU6ҝ+[):N@I.kqV7M&}0} e*wbʪ dN֒qTU]K'D؟(or[@_)+ 5$_ D;~A~U :5oQ 5.|;A#gM4܀VĵSZ<ϱm!d %a C-9Ȑ)*J ( j$3ݚhWxr+^^i]`*Nh+U$E¬ؿ$N ً˨ёV&SCv*JMz.e fLX \=""1}QwQȟI#^مngܺaz پ 8gɵpM8C_w䏼+Y}p ՠ%ᎤTJs (VwMm,9n[h`F_+`7o:g7$b;B .1?Fzρ&=aD4XxxHBaM1NR^v +aq rP qIIa(%d-HH}} c駩JXbm@|${T?ݔ2k1q'oVH|Jά F~жt>^U]u9سmWb 9V10Z/쨒IwgT_bYF,ɔ-}xД[)F@hy>y؆FvRz l0,S01F8u:9 ~fҬAŋ+_lYrY;H63f ?yPB0Bu{W~o(No6<=c3԰? 5Ӛ1v@= ,6V!(SxYܖTs_}Uqζ 2]9SA39qW^eej _tG\ ɪ9vWo2D4oJq-H5^lff] YǃnJP75E.\fTX4٧9{2ь%X Udw p1#3-OZ=זT-m<]8GSMe븍V8`x9;yܷlD=¥)=*VjJ`fܱR6:l)jsLkYA;+!K. #6C̠N9Sgb)?%94Re6cZ_!@e/5x:[PR#МC5jQc>^m=u˯'5s&OHV47Dna[IlI|g' pL6g+3n Dd)CIW}n}>2Eycldx|1pM{bcb,_]>qp~RFz5mTS?Z}Z*ڮ!%mNp2ɇr$/ V7r1Ŝ is I/,羔Ai8u16;od]NBdf0 ft)Dz,8j>`6c M<7fCmx2LoJ~Csk?ЦsXz7uHR6B!+_\QpG鬘*o/#M?r>WQX6+-(k"k_E*Zv:,n5Q lh$Ч~R`.K=ߴeˀ <؈:W jm&T!0(ٸ76E'$͸gV9&1EBrj`p[ǹp`ݢ|nGJ_bnOr̽.Ss慫.GCBၑupxt2NJ(ħ]Ah />:A"IT{q,jG#eW{bm,I\|}R-vАUUT>vz}5YtQ=U7pL7džD\I~VPggɰSúA5G2}5#!.6H# sJU'hl,Or e? hmM;I~C`E?@]׋B*QPdz rp/ 5ٮ ^_޷r+ U[AQ&_քٮ=O".h㝻J6$!Bv@`cwk ʥ\#H`ChD_CAejn⨝ =]'xix8 rǜl7-d64Tems6m)1څ5r5J4yބMI!>Нa4=|[GV0SxcH+P{"^%W&}l1<'# [=3Jb- *d9}W3fP .hP}N"ٻ@]+iQijB_P_danZPۅU҇J)w|L]Ȟ1$\@;ʣlpn0'b17Td,τofǘ xJP߸Ξ.|,Цu.s,F ^6H7:K}ϗ-H Z(KKs]V'6B lYptXWמ$5L:*%aq [[@8OӘ4ۓmq| (]/ft"4ˡgX !s1+OLute݋Aܭsl> *ԴVJ1 7R9'~~M@Ua|T{~ ֺl6Njc=O ppSdld);}QD&ڲ"&q̂A5TK$y.s \||R{=> ʱW~e;fwvHh3[TT=*W=g6xf, wQ wcYQDPl@uo#`'3oJ/l> (p;e\HɸpO5|gau2MQagQ# u}0냦[dO˳rFx: UG76&C "=vEqx-'<\!DT> ƕ>YlS4 *T*"gR)p eXLDG`٩>5~V`)ƐT8w#_;ZeXF|s# w?" TZ6y#\,b^c#97bOrlS;D0.3NG gdMg۴`$Nʈ+b,52VC 5ՠmhjUԕ}4<;̮Ka 9 KR7='e"8ύnw C~u'(IN+b7g獍~|`$߼erLu ~;Z8.DAVӀI3l'Gi*#6g&hO{GүCwIŘ/7/0}Ƴ;jdƠwG;V-q< ԗdFZ?"4.#S_0PJ1Ŧ:߬-w`ΞA &jogb.0v[P8J {Ol "g3SH.F;tCR_Ca9Uoݮ Ȼì²Ek]xCK: m#:O]R}3r1Rv?=k )k9ECbdB6 l8Z=51epZ"ڋ y`6O%Z2FLUr |Zcjg,$G4SDB1` cަ1Ӳ[CtkU',qL%9 BI5k7Ųo3?TDnۈ/ c6nէmf)SB"v;Uʀ_%KԨW 0!2ٴ3Zli3o')20ЌzZMlWn Ͱxki=vt]&t*@' }Mqq" \ӁudD':@:ڧ&xCU$k;FgꌉMkM:`!=Q5'AO[WS4Z&N4HmC™~D\ʖѨ؁ZآGI:zc:|>}_'*:DPğ]^]@D ro@g PsZ4 `o(V.B\v3TӠ젤YR 9&i.in`0%/T' ֒teߌ/N߮C)1;* ^0,%>G$Fa ӊAQҹdq]Mc QIyTUGFkxڏ5BWYwjjFCm?gaK{|n: / W9͆TLExB ark农$%"c艋XA%_K*FEhBUr.NnPQwF*R? oW SڧIG7NNv ΊiR3YAIub'|IH3Gx,YBlj((~`e>B{Vj,?\-'OGqӬ%Q/>cB5t߱eZcp4<` ԞU Й}K+ې¬Vh0wPyH27f]Z e"?K[tG#M_Wed1qbDHW"s6 yTu^fEnlS+]L!#} eOb#טD;'Gߚz:F+k]cD  G\[/?AM5U ߌL恤e,͂#RPt^p1>ql8:zV\pob7H;/曷曞y>"qYX/-,A G;Asw"'M$@]t|1ё~lyg?3f2B^e0j+R~%A;i| T#K+P|Mj'oi :W,b^1Gt~'ǚJ w$:A"30:!&d^=I>ϛΆ\8-5na9&'۟y4u 0 j?߇9XkPT9P~ ^s:Yg VJ$cVߙ6U, `vr\s,Qns )oMqFTМTl>-V=q.K$DտZ>B$י*iw30 B I.ag<=FO31Ftj6ySѻ$TߟB*<Аk պ典R( Eۥ\nT:U3y5"n .2Izn RQK#'ѢM*iGAEN<buNf:<yQ5d"InC1tAI6_o)B3HwpYCYdiyf_12S4 i$)2 /Kýg1 Gɘ6aygdtbe9(288}+5N['eCP{z6u,:&m~1QR{I0k\aӢCrtxgVRyz3Sɷ~37|Q6=1DfO^? VIh:3Tt `"}=37JDpksa9ɄX5so(yn5YGc^>hwf-P4 X5*.Bj%ij.3D$xN=DBw/چC 7 #ss)&&% Ij@l9&=1OTRqKj;X,1u>(\%͑\]\8&w -?~d1жRҵN K|zO8|LCc ts^}.՞e0Ll5t`߲Ɠ3.PzydW⽼ ãrɣV&" ΓDIq0rwv>ƗӉ#Sm_ޟtN@ߌ\GyŞ̤; ȼ{طH1H2 \Hln% %my+5N4KmEA,H& $ǭjSig% įcGƴ [hv,W6OLFYڼ74f?hO9SI!9ջܫ5pB)ıN1|:Jّe$V8AЂLQ[5ţVł愍ZY:Ii;HC|AFD 8/nY=nudy).5v1$Umm70w9k$sd>5 d&,K8W/k-27Y*;ٮ_a biKCD9#V8tBZ}Z/-3?0ڡ^ۨV5z&&h^&Ɏ}]^we9u(γQ2PyjJ멡\gQ/`Ui)n_K[fpҶ$ƌaz r^ka"p\O}p삀NI?RbHNd3"j3x[1U?v64w@"뻠T4iӶ$H/#o& "ω qB9]ٕa`֘J38#pxAqnNzdG Ked;XKFljrPGϯG89кi JXj>&64/ __19z ~L6M/+͝ UV ]iT{BԾʸ@NFSҸCIB|P@b;hZm 3--ѴK%=bp5^FU{%1fJ ھ^f6f Pa^=UgvMĝ<+6cj>[MVE},n= l';n`Oρyfrz' `9 Hq  ^i=y)'O|h's)fE\R*%b!y <$0'PIh)Jl$֥]$;]tL*Yn>/~`8Pߜ\.1OIq֌z|wK]2Z0_cHwG5AE1[FQh&IrApgv~ȶ@v1Fߵk㬓NPp]c 1c&J BC6nRVNZB# /q{'o~Y ߶;ļcUF]ٷԷ\vZdD?;,]g)^{M7]P }1oǥA hPg1P˒? (~#{r N64Kewl:dT'pgY0N6dJ:<_ 8Lg`(](%%Աėg&?2Pp›SuTfKJUm,@PrmTg z)٘##q+v9%STqۘ$+ +}#S,~*Ay½Re;׶B".!v9>Kأ95J}-FOot[a jٓƜDU,Zqqzk,ӈT{EmWH&89> _%v[39<Ңz؂+ZdfّX8<_鯢@+As:[/ e۟% vG.1sh?e@a̤ &Ӆ{}" s-ojbܓ=J!43+CCuRx&XyϝuHCƚ,# 6F B*|WH5c?254z [4ȼƒݒj4G$AFD[՘H3G7w L]OFp*IW}\Zi&W(.9ϫi<0;}ɘG@r+id"wQ~')*!l/{q,sz}5WXCd:0T3P$'(>p.qTrJ JkT$<;LpG݇B.5NE[;@k3&*[]aJJ wG?J.㣘/,Ue6GsȢۚXBGZB6o8/i7K 7eMfWpARx UДrA^l&?g*CYV+[af吢3c;&Iaey9_7;0CwU`n͏*ۭ13]z݇]O-5qte?EDH,KNGǽJsS B>_f_d2F$ݵF'kb.K4CMRz)LnSk fѷyIgo&jgv1Ņ&w!Uj̯+8Ze#QtYg+Xe)N;R,^.Ow%D[%>/Z|)"ٸ\k]  ȎVnoPu6]wP藕jx D%#fTtD|bS,d%C uyZN:\ykߚ2e~CVlIn\o;F~waƷ"{AĦ'C_@_z0 )!5TF%5fCJ$^LCBioY6s-:OFq A\[!n b{߂gȟ:bcs&L,ӎ⡧:,P'ay5\nymm _^L'""i$Zք:GyZ U7i*8H>9/,9. H}D;eFtg1v +ƈRF=tW1Z [ŗl˂Ha 9xor|Uj)8c(nuG&7ުQ‡S%@m YVjF;_ѭb9hy**n z /C8 YsSoI$t H!4LzF&o6[KRǀF ж1t?mMP_%(;Fi%;IG>ួbPSGNj_RU*pdF%#n9.chc+ѯUcu[Bp<ԓ[ڝߵ'bڠڸʄ\CYX ٍ 51GiWA/hH!]˞6#ժhτ vE.WR(Ce'y )`!(~jLU_h񚕀lB[A7÷814=f+EZ zoCl B1(')@ڵ薘AlǚlvT< ɄSӉK3+ Ɠܜ-o E]x4> ڨFyP2Ysy98oU?1l=*l_عKO+8gY{-xh԰Y 4kS8*|<G ZW]<_{^Dz (עYA)ay{æ;JTeUYn^|Ђ,AX 0rS`K` ݮ# ^H4آ),bq$.t"/G=cUd<,ޭ?5bLMyFYƚ%4 5ջ} [!nf?HHߦ[PnЧ3^+$<9`kd'Kt8nx`y_8}ԽH^N$GХ {W#YIjhQJRD:/EQIa}V^=|{dӬH6siu#q2R\zN-T͍ Ҋ~*VwZ(U`07'OwHdOw5bŋ@=jɅxags_9fP,ލm }X.((X\[4v.}zJ+;naђ{hcCb]\rz~~ud|dJAH^ <h[hڱYEեBBϪwc ~H`c6`ۃ~9&>D FM|~,E/!eT8zܸ#aG=ܷ3~'eV>Vgskݯ`q)wD7K$zqӔۈ:Ap~{%Yv7Hߥ%H gGcPS,ZSc.uM`s(| K^|0) #wXU}ȺfڳKO),\$*m8c5m bfwCh;u ^Lxj6IB3z(|h(r:' p9nmw6S@V;eo.ZK`OcK!^m}`3eT;ɜa <\>q=e84 Trl+*H.y7@9((ˡ/D~D06-:bk`n.$#A#]?V8YNYuVnV\{zqP sP&*ܻ {=Y)DG:M:`bQq{KzmBa-xJϣ|,;Pwͧu_w}rCF bO`2= A]? i>ͷI_4w(ɂGr[}{+[joѡ.lG&_JTFȆƓa=ýGtݡ[|>/]`xPx6Ň@G>*Pq d= #jt$~StCշHt)k7 ůh?{]knՄ)0"ɒ_䔑Ra7.8]*957:ۻu!ֺ\}1S%jsZПERce[- gIϭ3֥K n-$t;L3a2bA"$O4K %yonDn"1Uku3ujH B l)DYltNY •Ч9jio1*P;NaEM)_o 0:i9?DltҦI*`$DR-YLH EڙMVpu-G\u]U'Ϥ>o'Iz4j5?:Wl`bb{+,r8)ǻ%AUW 0#1+^{0ak{Kd y0OxWsnG-*B&NE-L?#tikE ǒ"Iʁ<ՕC6ֈ QݚPG\Ge'C$k+mށ|&խ’Y-G~8'2cK*j0EClR^ ZwYvF]a:{;L@l]-x~aҕ}|ksҪ`#@lW1j% τǚrI+=g6=A S$i3q!Sf=0dUqˑ9ﺞ  :2, )aI_ q@ e(cJ-J6sͪVGRQ(rY$n-Flب40%PؾYf 6NB 䮱f8tC#I\G:@yu_4Xwws_rem={Wk$D q4!C{QB4S[p^( H}E4dRӔ=Pg~<+iE7ᦈfqx=jqA`U!`DlWi@W/8/B~b"$3-*݈(Ӭ(X8y07Sz_)R1Q'Ʌ;`8aMgĠ/+ܤPOP'MQ$/jeWv ݨQμךy_:0)7,m6|jUoG\-mfu~/J4v(ΨxvJgE6MTH $KpJ$& #rBzznw< mךE\]~bpB,V̨V//d1-~]gzO4Fݸ}MjvB1!Y  00םM 'lcPc1Qcsi scX|*5QLCq,,= Aʚa+/&,]) _E<{gd+4.(iF+| v_}X-t5uߕG;tM~kD܆+,~ 8r5Rk˥p٨2$Q @ޙ T{k9^)3~uoJkx6N'k8%;xQ3Ov71NfTL{>9Ϡq>[bDz\r}>/#=,|E  lnK @T:Bz큖j!c]Wrm[LWeW)%0Dh#Bla2=ԬrɴEKٸ VV%wۣ` Ia@q85\+W |WWa Z *́_ʽow&i^8Lm\>~p+SUzWcu&B~OI ѤM]ՓwUד G$$FM&ٟʅ>3ɲGb=)#[4)k1rui0Z29ۅkdl{9|~0 riz1̈FwdԷyx~3ۺ0ݝ:g3 KpB&GM% 3gh$9^p*P=7f=lG;ytei]me-4/W7TTl1,yŴAaoBҽ\l[WI2v@vպU\tގtjST휸aK9}/9Vw:O欱0v Kq:UӗF :d82mGԚHᚱve˜aE\B采+-mC+hD%:,MMhUgUs yxvkPAî÷Q@<O>Y93kG)%~bX[<`i)L;1K>Ιɪ)D8#֟T@L]0䰸ÛU}_~,<-VsL)\Żbg/pzd\(>WyM`A{q$G'w߅-hjMBbꏂ;qtQ|{oY j :jUPR㘡ZG:bl߹"ɸw' u*)4jZ)݁u'3+n;_+3?1_֙[p%p5{t6܏48"u'^Uz!@?3J̇V6k K@QSJ=0l.>wDPPe3rь0d*"5+uF/m(+n/˨oKwmmGպz_! D9{kbVs,ɿ $WEEi1mh-O 2R>fiQ((l*k/ `ӥ|lo,gA 3&I|[CRH6]{=kC BoM[-;?=4-ܿ s yl^=(3T;? 8 B8 +:=ZcԀw:Sfۖ .и#5=5֢pt%+S X c"ns^ | X8Q̍CKWN>|[' PL7TJb—XO7P.Й2hvhɅLs ĖgT2HS?x%:_.R"4'kthfTgNBXQkt%hDoinIO|%%lkS5n/u?S+7HiOr8Iv}+8#m46pX+Q, yz@S>#֣gNLޥRZ=kn&YSpQzc\h>s] /(ͱ]RHt!$`m'|@68CRF@ïx{OS vOX6"*lY`Ȗ2vy+@oa 2Uz(4E2ZM? ybz=>fް6'Ikb2&6:$/D VӢxR)KU"^c2-+Jǭ`O~712ZQNт," -ї'㢶*}E)Zx@䘐L7U:q; tx9?'e++E[t >lwZ/$yUʹ/ SVd8ɊjɞS]gumSV˄f88CG_EV$Q01+=m7|BArM.kd u0FT9gncwU'SkFofwcri\X D|i;/h$G`Si5+tY,ٙ% Rੱ 3iXm&* "?CO'¯]`,@i@4cXz$?9~4Ɠ7FC/VJϯrq 5|y d> }GB!ԓp襳y]eu?>V)6Yżutեsϧ sSt&C{j|#wE^ 8ZY|G_%Bc7jsT*G [W B\Z%ߑ$SnqZJ|M}u%Axy"qcƥ/,ވ&N>M,+tSeE.d-qc>b#y9‡DՈ9p_}-'hZǹk)>RoH0k8bd&Vֳ9ͱ VCiM$ zҮr K%}DMn6\ŭ;JޒRFJt<={A<jLZTX.6ba/;̻41<>Vm <-[Y~']-^r(1g'+F|9s ?lwX^CAj'ȦE_Sqզ{TX|3 D.Lz5)((u/D^N OM+ػɌfg;lMMl9|ՠIс߶`ĩr ։ϞCDZJ=9ژ]VST)/+FZ"Ζeטl"7[EWТljrw|9>/_QѸF(Ƞw-r}Y'mjbCWPnCOީ̯ZşW'œyQ.E&ɿGV~qD6G!j'6mEVqc=|cHr',\U$nmGQ;͇V2}s*S8Q$;QwO9aOLŞ=4ry?yOYskO!x-tT Լ~7kچkJzHؓdۡY?YфK<j{L#%Yd̾RUOC{,F|wwȟa>nm@?y蒞lu8>_^SPϰj ғcYŊLՇF9Me杍ӭCEˮi/)sއ%>B[0$~g<%U eZl+ݕݳ {qCspFW]Okh;c)MV>c pxP ?=p;_Y+VMi ~bc*iWCB02IMW1oQSZW!̥W¿8Ǯ*Mk<7(!g+IN۝ |Qx>R+˻ŧZ090"ڏ΢6$P6 $[[L-EO9StZȈGHMYPkSyQW `*[+?_ x[:첼)bs1Bh/g g}r-?h&qcb*9&kN:$]|=ԸH RxD gذAzmih-pQdMl b0Lv 'K8\aQeJ*Yq6Xd&p1 ?{{r6MXU8|l I+ȵҳ4HRB]똽ި[#%d~l, 0ݫ2fefLU#I0@@י qr'3 DŢU;Y>$=|ҁkh8׬2K!:kN9BDdbx (_DkIOGP_Hq?9FHی# sJ_!is H&a!QxNl;pt4rkv96ulz \gBOªQPL9`{F Q@Zb"Y@ Vˑ#y8FJNc0ڢEV?*i 7S;PgP>G]ې ;M3t920g\[-{<r^ |TKm wtRYRiǰ6XR/E?}~\՘59hyю&_tk PGBcaEN_e|I7`|#%8T-datM3i./DwPOlI 6hqB5d$=0Srw > sYm z[ F!3\BN{|9c @!tڻ\D}tKoasre'Ck`gK~iݑ2\ړo'j *wEDz.\'E0m^Ҽ rBm]@0٥?x zbxW8e쬧C;:fp*~=e DMSC |?uO7/R{aw)h)o"7l"٘Eb5HVB:/KշiIdl%x ViflUOjzb<4i=r::tƴִH< OC-ouD+/h@-$ F|5vW$XA8LK$ &lhD̂sTd<]̠JQR7\ ۣhҨ$>xY\s,&xMSwuhz" lP RyL4ZBs3H!tC~ 8~ LNI#ѯF5-t[KdAmbRj yE":cҩFZBf4y;m|ӱ"Ҡ2v*}GMgl )e3Lٜ"Q:#-7s[@7Pi /fH@T!FAc+K~0irk;]e<4,w qv+OM?ͫM*ÄY<*ؕ~]3Ŷ_ @tX77]t|v^ihWtsejגeD,0ҳ(yK9jXɴP'-z0tD54G_WY#2-Qvv hk*mw$ڃn^Ut<|^PƭթsG jRuVa]10::̒Pņ VU28rսiOkq҉LGXu]2߼b]O}M$$:'YZZ- 7"DڅCXxI50*FI:z#*/MDj2Osʅf8H5Wp‡4n52Mв;Na!xp~׾i):xDRNWq6bnS8qNs+ 0l.A{)%bCS EKӭB3tZuk񮰌8 XE#Z:dؔbu8!,n9(t mbu0i/&jlnvїw!GurK$w"iQ caWaP?Dž@jW 4Q?ϵػ-Cӑ4I:3)(wӴ/[⮿h䎌8sIs{䲛;hdT_=:w,3ƋY!T=Q;G,y`PQSL!KǎN$ZŃ+qͤ; W b%"Ҿ/2vfvw>%Օ _<O}xQxKhT=#kL|XY;&f(+qN~ЕIT3:FesWBSZT(CbTU~?s^]̄*ml##gȋA)DÆWݰU|7h=-/X`Io/4vxtcZ@&]9`lZ(|)^_O%qpn5 cm˿S5;ƺIRwAW t4Iip1/M.D7xwț?ɤ169czGvl;6u8V@L.kK¡$h:'Y_boc {YtyJ< ܩl%gn߬qXb1aj|iYdX9{)\maV%cJmޕnjS{ϨHGDruz,-܄lй'nZa-}$'l$BA0;+1G|jxL:ym>poU17T1d2ӡ!BFbb_u<5qꣅ6H*1}ӱ2&AEpLUZ69wb*YC~ٿR`0᣼Mx扒hV6:=5 D\DU&W|D5,ȆO<)Be.IC}D0A\v DTgDl?2 P^VWBeya H?;T%?l]Vy.3IjO:@Vy`yJ m3˺> IVP)$rTkNNK8:-%Ft 017'"1mqɲU9 c?[ !z 8uGD q*4zcA .b!Kߺ-`ZieOir '^y;8M7!4d&epXk;*랂S Mۇh-YH_䞈l_*4J;񂞯kt)Wf{@8{:F[>~}d=A^tEH+25 ,I|h8lB}"x{5 pK*BX+ЁԐ-1Jt ,ջ)%s+|j|4\ ab6k!Gߟ1ԽM^[aagH$*Թct{>شw6䆙RސMhpR w^Hȷ2*I,lEK8={%ŪB`C_KJk6xayF˴GR@n}?37B9Lw)E؟BG+Q;7\4R|#QchoXY`s8R[*5k'U>K1X\Mr A;@v~8tl? g'AR/ ZZ6]KJ@1~SV)ܢ?VJԔ(l鰭z~,cK}]\Ny\at żI =tm5$Uܗf/8%9nf7>qWa4[ct[A=^tًü~y>_HkIEvLn`\'阳~WY;9MVam1';u㮣Bc~JRQ83jnCLLY{˰1[T$0b nL2#ο*[Vj, ]-T?`}7"W<>MP8*Gv5-4p;W\ r=+b&o֯PH ,4"3w +-2PB՛I۰U, co=H3 [>۵WWdPr;?}m擃Bݺy Xu%kCOcjvW|>.~M3=?k3MdsCsGǍ1!bFʐ~w}''đF챰5J&U 3N:- yF1f(+) kQm[mI'Y&P[üΙp6|펮ۗ~S|UaMDpxx~تt~0tEEG̽j#ї><[jz5+w//?;(#s#O(mk4}mfF010>ct{˯)9ηc]jfm\MoƦ"-f ت7^i9iuj ]qV^X~r1M{@e7jE-a44 "~C}G_{ZtT VOphQ=1tZ~}tEZR&5jPk<:4>O1110'Hhjz,m &}8gHZ%0񴿺~5U\W$|:n4q+Xm}lIB)6G@ls#|ԛ"fH&`D4 G0+zXpD-XoJDǮ-cpEIw?iܙv^[AG4hc-ؽc6ud y8 gL }E<#Z_ʃ?*NDGlw6|,FEҙ=,f1M /;{'Sp}\Ut @^xh{dq5ɮD+00 nZ`hofzCctպi+#~-aN,V(ܼ}1E|ъTU@RhA_;еJypn^k=s{CHOyϫ`v: 櫈Z7N6ɴĩ"FhRGҘ&{@_c%1.&Q3喑 }Цx3ȾQip[d_LUVpI %7a!*O.(Pb̓n(F0mJ:H4 P%ן'[;V7W[T7Msds9e :Z}ɭQDi ?$B$$Iuc?ҟ6d:mWiRF[Ĭ' 1;9R{ *eӮ Hav, Ka%4ܬyulZ%A%YJ$O|B jbH^h@B 1huK|kJz)vzطk1'P3]`c N8}BzP<g"<.`L`u)yݑǮ'E+ԣkʊ~>{T_0'fdܚi&i!->k=CmdnXv d[< MSpd+n[)JJT`ie)={I\i;WNkw2RN1eZt;RjlKAtNͲrGy&ɯ3)ޙ{tR7ϯ[XfQpnJ5VDxPW@\m@yIT&$.}! *_bظxso_?a(,||3de){0_g^@ J3N7C\^D8(ʹGO%Vi<ZʙF|}3"( jٚ0kEa%6؊ 􂡘xflM,c(8ys=M_ntNmgКx86B FKz&/^%}Om+]NV(z$Wx̾Y^s󯎌sӰ<݅?$}?7B=TWGZ|_}_xHFm@unms;C:?ddiԢ$[#b~|Xk %~?#= [1K&ȹp6tc45XqL٪"]c7j #5ekf6C#P_ ~_i_&EYwgB\d3jRDY*,.@2x; P+Q}@ǡ1ӏTD\%n7o k׈V\0D1~~=O4@W/E'/nDS")iB϶ُ1ކȬh[&;au^z>h3x7]\FTkqM^(_b4JGvfd= D2o?sL2fH۩%NJWud#1G=.%7n5s.tS*ң?* l"J9 9!o y>zi}&yMڋ K!T¬^m2(TLQfh^c\bʖn";/pjRKJ@tܓVL $Ѳ .<Ɨ!|z׬ӂoO2c3}|Ìr?s,xytҽ_  דmU= sJ0v4/N;6i:keHBZ`K֌IC1W5j4qE1xcDןnhAjMZ1n9$P',Ƭ4 4)./_D.wP.ϖTt>s?.6Ҫe$\zx`o-#eP)Lv\Ă9UNπFAK)rֿ;AGzz*o:xo@>3<>oMն:T%+ޡ^NUA1y]'/^qޗj07ÊYHKh tA2$q, 8AY!&WCzE^؄m`5I\bOI}4czP2e uvK@=2}T{\WbA6 ܔt]o#.)IM`N-yW7b[,͍yUXPLS>Vѕ^Tt=xd/)pfܪ9?3}/Myi1`bA < }c, /|6Mb6xu>K5(#H2dX^=Xi_UqDINiUK$(SytEo߽>,Ba<+% q/.tFDRJѵ&x9{Phoæ;WOrD˞xVX踨9 , l5''>oGߏkB5ʞ\N!A/V·$8Vr,fBW%%h'`y~Bm ܅׾!=ԃݎ况VѤq oJḾ GVqazj=R S2C56aGxŊKD_-2"nS).? ipE?W{45ɮ,^@t 0lq%W(I#h8˓j L'|Ad4~Qu̽3՗?U~`jq,z,N1 b1*Kߢ 0, }X62ks_,y4ݲüꦍ{_Z3 9"H WvP`Vtk߾1bӑ['R9 j[ M]yCoK]?B!kM稭2e<<ѱ"2I^%S*/遘^j`0T_\a I׬$EJ Ft\*HH}6By4oPaYu_JA@9DiKYrkGB7nzQ\*W@CDi<G *J 7`,DFtq):BCۿ%P0BG[5*Om`;A:vs?$@ H ȘK"mT*>A@N8ԁ=pG~L2Hf6GlX,Pi_\*an9])GS g]m.)CF+;5"u7dFlsN1^7@b d]-=H4yE\VIu$مyބQ pԀ&贲2t9pOڗ IȯЪlj:XTyBŵ(j܆k M)Zikް[u1*!u/uf^ˑߛzui>טJ`Hbi1TSKE:#;]"&#D WbѶN(b+-,c?VB pMpQIP8T6RَFb[EUO1Ggټ5`bY*$OfYu+&W2ǏZ'ꑊyMGȿS{ϝ[ٍBֆC:؉&<`qV.;_i`г4ALv]u'ǏcSkr*3H$i@7O{U[}|.ʠ D.i[ 8R=ztѥK;̒h̕Fw,:Gh}/9 ;* u{TٱnAiLvOw2@kM4!ƔpGiN[V9d[7K T}ɉڂUyo1}wF,:N΀nbOvET1)VЊm(u^ qx[S4B9k&Ev4z68b9([Ax;N : 2u0[eLh Fχ)&jĹ=̇J#葋Px|eΣݻ6&)ggȮi#8CQWC~e 9[x~lВk {4.(I|0q8a9#6@R Gu[qQ(~v4d7;nO ؟&+gHX o X6#Dhz4SYd;ʿ /TcȀC}t e^}GYr299H}HxπBK}oтFydqKt  hvLLcY1pdC-ĹC;b0â_{`ʭkLJ f 򮋩H-jD+ ++`qK<4mP1+¬^аhE,-vo?k4>牐2ƎX,qw&JG:a(=6L"9<ƳE5%Aj/v~|+E_ŧpFs}O8 \NtQ&(+x2 v̆5m?]}%lNϻtZ.ǹquկ6(NyKr asi`^ 6=̌GI K\sʌTG"=cHaoVQڦZ$) 6w.eʋc=01r-dRMn}Szl\3kDg_Mxh8x W~7zğU) /C9 Av4&;6ZjWdjȴ;: (了@$=vy뇽P.EgyLĐ6F=ZFh1>g[0Zb h-o~CFW*F K!BɛrxK Z 1Vvn"8j&?H Td<I0ew ČI׶mNHM3~]'~gSjo<^Da!PG%jUoX$KC4vLUxZxb5̯ (H?fw+闞_1wδ/穯#=}迹޸͂Jsbke߄+\CM-O(o/wonƲBkIHde(̝P `q$R/HC1ւO0kd ۪q6briX+;X65J20Z2>ۈyW.^2߇ؤynRM-:bes]F1#"s|v"q3c/f;iw' [XBt!*n.ʻ )]|R| 8=t{8R\Fȃ7M@ʺa}Ax/7xc]/V`qqG8kαwϿ%$ي U3:ykO}.^]bJtZ{=qՊw͂U?r$7呉\m "+N`hz&ȹ, :yY;]2Ioa;U+/9.1}j_NxK]X^^e;ǶmIg`Eoam_Qr_ ?A`"-d1\}8 a Ucڻ,)oS+Hs+gFT/<;y8ylrVѷ6識wRUBzsWLcHǓS, Vj&.6R'3}-5H%9k<" D?g+KQU,?ݬ`~^<5DJZ۠#h)׆F ӜXan`gUmbH#Sx4O('Oށ}c. Lbediĺ3< ZZMXGۚPW]Ly=A#gc =;}3`V!{uDtA5: uUmfWaV CU ;ų"of?vDeH8}S2cR`F9Ϻ{ܳ}'; >֌_Ѹ, קl0>H;TrDShT<8yߨQ5EybOIkl”K^)/IH@Is 6W m}Hʏ8d~b4 kKoa:2>Pi`K_L&i_HdH˜ 5?C{3&%=Lsdcj\ eUeY>fYs~.AL{Y{ZXoKMPETRQEhcҸ9Q4V0dNC# Bf-= T#ٷ!?[&-KFm`m~}JO-2.Wmj(|tIԑ5aP>-ȸ%V=Nf)EY]֖ &xsX=A]j,g+ϩT dcp%TQ>{`4 e]usA6cTU.6w[$ 5vc{yo|+Qll}Ʀe=E44פЉiT[rDdO N]GyzscU!t$}]9PЧȌU-޼˄N ڙL &v\oDLWMWu uGh# O !ϿT ue5ՙxmohtX^i3 KI2i+JW_d5=@ӵ bx>1(>ߐX9[L'xĺDjOW< sPW)}Xv~3P4.; ^SfQ%"O66"3wk7_7PU4b,ܤiВ{f2| a0z~=N(J* :4Šk{AW(m^j>V|s4䝾k6Q橕|LCuϔ (hI@nԛUV>k xp/P_6q̎1RYo$L]741G%~{Eʾb. ՘R=QJG]17"EaO'a![eu)Մ- ŠPյm5$>ԠΛ,Kf ?kwG96=0h'qdvU?+i?\ƑQCyg{;,UdCf*r*XQ;؍f܄PWhNcpkGV3l(VJ.S^ʺmIH]eoy)E %;J4.v1e'}]xw (Ŗfgˆ}7CtjPk]n)IZe#@&b2j'r:Gxs`YZ?"oT(5,f6l ;72褄0ہip VSw{~SU U];:B۰IV֍l#~ _Y\^6qS~l0s2qu&L:Lʪi`W,s. N{yM5B׺F/ne׭Mh*Z€#=NוXAv=D]W@T0I8NϡƘ2Ȧϲ=kgWZl8]ų%V/zqG\q6pcCA zUr ʜ1Ekb|*;1J,J.o-8v1mtCݹ?ܿ92Ǟ7sIA:t`R"U7:d})DzQ)橯ĥ/oΙLʜj07Ap[DF iQ/cJ-bvgr 9V֡޺Hh*1گ;z^qƟUMY@@xM I8""d2. t:Lr*)9"_:%WZj#UBkn1jȹD4ReskjF1sF e:(2ƾ> ?@vyhW>CX6ROO]g(""m7[ӴP 1=9z|$i*wMA%d"$ JD<oڳ&{ޔ5+Kn\VX|D*1b̯M7n*fA'ʾ"!VX80m $i& ﷇ&h z; xQm3hy+\>-u:g ̷)xOP;;~7(jcanڷ@Dc|T9;U=%'o# 0+Z5pQtĉӄu&ed%ϷBQH-;dj{F 0 cMBvi!lE7Eŷw}5PYvwZ] 3]d3kd_M6ski (OAX>/$qd;`3b P0'n!ZwV&=h^zHb#}P\ms+,ZPQjYVd][ݖEoP iʩya|E3U,[H8h~𱑿ZN7)Yy؁"r䶙{'VۿAz?3-Zed9vGȄL3Wov~C X_}:UʀAkugN&X:2Dgč6949bDev;& 7k;$eH@_)x0=[Opz^*Lr|dJ(+ M'K I 3q3*e?e`BK 62m0Rb hCޖ>an 8#_ƢRj /#[,7pyֵ=!S=TuPAdy9Vy+ٍea\T~}Knf>JiA0w Ƹu(v#2ᨺD6Ya(l)  F-Ss]?w.EQ5H L#]*zLI lwVy,9Djvmd, QÔSebGgjjFݔ,z6ܢIm$ To($T?eUr~[G sD_n>wD%TY;^m͟ΗI i$pz~t~D Ē,?:_33ނQ:_X}&:og7?ѧ'5w70Q)* fk2T:6ںU%`m{ܛ $ Mu )u$ӈZLoؒnAd,"27'סtIF-'y5>ӯ *Q?! JYɎHoM/i x薢MchѨnU*CH{)/< FB I,f﷜עӁ,VeKF#5-M :bAVqZ,(H*1(1J uoEōq tg{!C,ᩂ0,"o8xԫߓOeU ECntKyl>Ӎ4q`6ktVζQ_V8O|DMCR#;ջŬ#PTzP"T #IP7k :_8^d^I `ՠvߜ~Sc>}Uve%tf>꼢O M3s]Ѩ$EVX>ף94Qھ}K@;ȼ ^L5TPm9)fBaLD8E;Xb[ZP?n<-.>Ҵ[͜鿉}p\htP{& 8 򖥲 j"rT? SK)4 pzES ]岉f >LO.CaN{Zˌcn)t\kKFI7(H"n]`} q%P"VN7.'x8-s_G))Y!M  2 蓜w c:%XITw[ǡ)= [Pl9|*.fpVWGd],qܦ.c,Z]w*j<^UT+?jg?m@LW"I˾>+YOߖ3];=$ 9ıRWNb%DD[_W Wq?T]MP .1B)9=m̴,x oǥ;\au":8j:dJ{K9D⍩pZJ1wwZVFAAF|xj #S,Ow{E˨fLj~܊*B:[tG*^_siWZo!)ǜ}[) nrm9mu&j,[A5>+9Zl{ Um!" 2 ΁.E?Kz&R g볿'I܎[VXE?3i `u]R4UR]u"Rz1}~5KjnUǫy9e1@n$﫸 -N%aDqO\Đah"|^ﴦ>ޏP)csĥ%Q6ӟEFq|MP9nwJiU`}.qUزwTDm>v}7^ qGp[L9bln@,)X F!]E9zHSrL:O`y0*#ۯ_ADD7}:,]Z#-ѷZgD 5fcC&xv׋jqSe0vuJW uHS؋aoزxTB" N+Ȕe-ȻP͸elJcmET"nLb8C$jSS Ȁ9fBC nѝUROasUܸ{瓁e!Q&I/׍"8tC' G=j5Wۑ jr1vP #|ŀ'|KBPnV>g%^{[ͅjoB+ۑ«>/+ٌBfY"mUsq|Q\R#>yӒ^LKA<7*+*5䷌uM9&k?ԇ5N!-_H %` ]ּ>S grܭ3CʦG:Ateml-ܥWpwAy;NQmJq?N43xŲ ={R!ip| qmkôw& -/UU㜃'Wpm?*;[8^qo$D2jirV[V4?i0`q˚|Dk .x*OJK @xd5ДFT.^m%˨ mNtc,TaR2i )LѩLJtO\uS. .qO0_ à'Ԫ[| r-R*-̐s D[x&TM^xeK匦> ufn!([b=ߋ!~z["myXQ| I` Yרyx53fe K[7=ʾ+!,J=?c_;*{RS x> gVLRB@wW u8+CJ0-j"M"GA[G+> U wҒh1hk4֟ޞ?G{p  Io7+2exdx4)4KW)T@ō|ydt9z1,wUJiC R֏2i~KT/8k1W>#`~o[_|öe,)tVÍ7#L>&.^Ȏ.$[p/][;ѿf.OGdm zvPbtq؞)I*O6&%}ĝ"P/U"Z,;tpn CM mm-j|pP:M}2wd҉Uo0 |8"g6`(%'OfdBo,NmŦ׺}V5-#;3VRe%˚OA-SĆ; XWSJJ[2=^э6KM9Ur<%|iqccwK7=C[El܂Gal˙ŹP Ú ?c+!5'ˍ x]+ X}%ESq罀JB iDMkU VDb*krc,D8:dӟjs+GE9En0P,{4!Cs[V?98n_DjY꬝ש&zmm> 1 \„#)CWOh5`uX?PL̆9bfR@gx$ N_|ᗊg m=y#Yeǃ= 4H'ˀI3 j'ݼ$j#ђ66rЖ.b=/v<zw5FOy"aQ"?u F*gmH*'S~{` !n=b܀J/ի:,F5%{/O.o 9&!M<<p^3?吲ށ9Bzo2 zۀ~!9(_G&9q,{Uݐ WZUKpl6S*g *&0) 9s 2I40k{.6KW#݌^1y&&3㌑ľ\-8zܓx*+7 T nƇL, ɔ"p1n(zCJ2'bĺ;uHۢ]mFwT"ͻ}xZops !Jю* =bp(Jz:S9/;= 212"e@T8ǃő)uyN〷nXgL8aYXBM3h5OB PSƂx_@3ځċ"we@ϚACݛ$Ù(izKBESy}tjP~d4֠ J5鸓 ̗y[&%7HNPGjO]sA qRR g^gAz0vV/+]C8 _aA*yKa.ldVF$Xwe~0P]4aʖhӍg@R^n]XtU9jk$!%NT q^Ci`=0>Fr 4 `7 9s 5Y5ͱ?["T#2E|0Jsۺ%dsG,0MdE8`)rˤOT׵g5uƄfq/y! nnHE<62uFW?K!ԢJs-X*:Z@0D`.&#bNy٥A"ԼBbp@Ol_7oFݣ+Sݏ:=F;9HhkB5mMwuܙN|{-M=n7>ya,;Z3Qxހ3x?dXg4iPZ1(h>O  iꎮ0/Y0Bs%c<`|"!1殙4[8 @Rȥ,I#X9BY}}+уXCFA[f{ &]]MICU!h [jQWZ< _CQkLqT!xcv|+;N;X8Lš5-[ɣ'3c@o0P._qZdPB߃>W!Deo"HR/˘>BFst-AC#ktL$RU"pQIWYLKf!ߥy{^Cq2Nm۰'KӤ(g~7T5G;zkob2o l0fpYVYa>Qұ{ .ºbYEi5 Ztzyu=IC#.}0G%^T,zFgy-eLAo7Vk"<ait]<˳sP;r6dPdW>'^Qhd/1:)b`kKuf7Kf9sѮ7: YOfe#O<1KFS3P*B0 <,V& C<د$@' !SQd'*80Qa{-+x\̡kXp>@"j658GhMrW$(C=.91aNq70"ᶵW#qu5\xߢ'=(i0̀~=^jj\(JW%~ڭS)k]FЕFjC#oMf?H~4Y=h'14?D&@ ϔȶM`: =KD7p@Cėd5&?n $u%gI"%&}Y 0#ﭒO[lm{LS '5C'e"174ԗOW`ekU.,v9'?, rB/Y`Q'jǁY.ϕ (iљ9d+nTV/ &;ա%sP{L4uK8t4\;IH.MJ:X7.í[>/w_)и#σ6E r%;}~#, ;`XΑP9Rj`Q"F)_kQzkR>RlmƐ!CS^Cҋ1?hISJV">zwĚM;4yLݤ &cN]ŋj菷Aנ)aat:eGY~f/&DN&Nc$~MyR7fñau 4'?_m^pǭCcEMHLT Ti#~z@m'R^K m"Mr܏EHW=7jrp^vŦ=ÙDfpXoZ`^gSyDlA׉{)aDKk6 3՚dw0=BlQn$0IDDQ/;_:#'뚻4Rtk%1+*rMIYG=,]y2`F<|dS4_X'n~q@:`Kxb91hA̍5qӳ$/Mn*vx[wZV3=澲$fDK^j d/qaJ(FJȺDw\\o,!|j:+UZN4KAvCN=Nno$!f[' p.Zq^DA!>4{NYK68e pn/x}Bq8l>x/#Wk*=9|@;9黠'-O&Ɉ=3TK RIq/9^qr/#gQtǑEmCUC}}4o yy\>QGLÕT~*sgy\(ZG2jS96':»Eb9ժ>Bp*/}x3F]7@yPUIA"aQ,0&QN~C4yyO8ɌC5CڜVXTۭt+RA^pl2sUtnu7 ۸tT> 6Nپ-F HdO }cUid)]%F*gzwUl&q'ta(jh,ʕybk\(+?U{M- _W$ZF=p}%`ΜP:|FK(65*: hF -Kc|gWyʩ kפ8Ҟ(MS\S]: D*O(L✘$t^=1ㅽbV^boIT1&&C`i2/p[]eF<6Q'~E4"Vjwǥyq^/ƜeS䆈CM`i j'5%0+VA8zNa$XYwM22VA(T&A08iK~W1c,ʂ_E'{ Ǿ?|uj>Q*EUVH<{"xb1dz֧/4@/İX3s;p JU|og(RׇYlHگӰ#{!W*7\׌wuyZ{+*N IؖA9EcO3|]#!u#9WڶN7 Z \6 ~Џ.jRŸ`%oC7#ゴjD}N/.%ٖԆ`[}8{b8KVW[cP?+e8娭l7).oF6+U}(YBu bbl`5TdMa@tv~j: &Pre 3Ї:FsOR-L+6U~!ٶ&ʩ _!'.lj-"wrq+Nh;֢lN{8Ӧv¤#iiw? 6DOI'*mO)=$ƏO0Eڑހ7/ x@puЗC_@.!;G* h<Y]ГX1ssz{]6'<%69gG3R&NPlXl4fLa|ʹzB᝚La%kpw$-^=U۽+e􇩚P_C00^6/8+5S:°Ix蕿`03j4&fI=6Z^K.cwθ²fbGնĿC8( Ϋ#kK-[В>ӵE̙sgx {ZO*5{;K};9d܌Uo½V9q/3TX0cbN{Iu[2W3#ɘ. l>kH< "!e z dPJWJJ*ult-jSoI)tݩ\x PZ*Uyu/|mr@8@T4M*'͸"q?8esAF>\ɾyTM6Eqa|Z +2)%eIZ{ܑjr>udt=N͕m橬1IGcBz#b=㡲6o]/Ǻ[;$M78D}r4QCڣ   hyIl*_*uxyҍ*Lmۈ+q%gs[6JMn2DS&皾iY}N& ghy\% d69=]v ⊙^# j[Ev|!DpoaAMP|#.JRPpN ٸء"^]p$>qvǪ9|F~UH/|'6!Kyi}m"i(3)E'z`ߝOmXJcԤ\:|(NXwoV.$S!9؇ !DDE QڦUǷ-ڋ{9ކkDdzYP{DE+d' \4ʍKdM7]DŽgVDG=R_%;q`};YF9OQ"۩Or%45Zɦ1Eyצ7ɢ^ _!6Y &ݤ?#L +_kfD?fA/5yZlNG"_>R|̔p1 !  u6Z䫛 $Uh,}vV[~ȸ];-/e) 04, b_֪$~.*kR>xXl~U;8Ccu_c!#~sYRw2|Y޲2FzcǥyUkIY;G}}X>s9 9(" f_)@IABRuTl0N$oʴ$d'}K6&'>&{toצcu 2oH*L%w~-ᚥ6kOAWu`93mwY:~&01'p%M`XCC#X<=spVH8 J:JT)$ ԍNkY2.j\vɤ}`S|l/s|lQ'w/mC~ ? cmkNECe X7lS1`ș,-^ &dr<r}G)j6;2J}Z v!ObMr~jSw-j/`E?-wA:vMɗxŷu§;"%D+npfv]A"ף8E<&οaxYF2cR_(] QuT# e)tPzq)̕+Veeġ全n7^(',r[aW$4r]!I&+:dEonZIAE*' H>#-7 JS1 tWA e6m\+9u-wՔ6z"'iϧ>ʝ٧  8IPlۓ4^Fݘc`P:xIfXKn k·7c7mԑ߾Z7?NW؀]Alsj3ӭAC݄Qb=6 fTI;&_bU| *; T:u6:bv@WJ@.tū#Q ́-2Iyz\.*ʨcmQ]yS󽤳%.vGq* {wP9f Pi߲Leb_x͗-,q1ByRCDK4ٜML-X8J{KU '8_U}4=Ux:eXEIAƵYHppɮg'MƵV6\2iK֫ޢ-7ֺ&pKK)(YT p5bkDČK'{Oaɖ2cY75`=Ʌ]d* +[8ef7^(} V#}0{S:) 2FcDJ"gՇJqxJs)ml'~:5_QjJwԎ3$xoRt cUkvR9e1^\]Of ccOu폅OʩJ5 BŦ۱Wl!mBWI|c&>?ac(')-P5i1]_Q,"k3< #/F)++XqIG7ka6BS n%L/}ُ>kDzd5a~A'/62y3`9;6fymS59xC_C+gWJ=Y.*Ua,o lgQmX]Y*Q~c"Q]r1Rbllq`jmM%uq]hppn\t_utJM2j e _Wj9cm M;Tۙ9FW:?'AuMl%}OEny$'Cay@C S6dl=?.[m_ $pḻx/{LΦ>!A'AqM`?gV&qQz9FF`w;P) P=wBepG~$="5 <١_yE<5O{\I0~2k,vVHhCvϗ6dʿKL0U|[<&b͟"| FJ-d' s6?[JA;oGF6-=.B[5ӫx, wShY>cUճȐyed@E"jj. >] !Fchư`:Xe҆gX& ~ϗ/E[asЧ oy]]/Nk}qX?wk F1vW:P_EUf*L],])^_g"?@` 847#lOX̍P$90 RAat ioYq6=03sGNbL%|P ?ݓUmAn>Wfĥ aZ1uL=kdg 3Uȧӵ~`D G;E4'Fgg>* -4A,ݸj _[jVX+5v'(}!3gC&^{Aű]aԞM`y.|n/i|~:3tpYhPD#sГUt&f2h {d[2 qXk^D^q<̓16 ycWUΊ npd擔š~uy^Sl ^j\Z7M@( _uUYa޾nśpIwc3ۓwf`ng+D6,UbnQ sݺl@~եʬ6j6 uC3ʑ&BA\2; 6K"`5τX mzБąZmOKAO"" r/Օvfl۽Ҧ]G@&4k`|n€"F+$[d`9a7 L5=qVB ݶ}<^ n/O*TUfuCHȕN2 Gat~ssM&u Z4k t(fpԬDju ^׼\;?p3*tyJAd?_q@$FQ649Z4Z dz})Jjzeehr}0nxdJpо&U1´עQR$&ȟ.:d 0?ӝ-w8/AK\;.ԻofݧɁjg.NGL?O4;uP3ߙ Q`y*âU 7mHX#OM jޛ`K%bmLcΝbBZשL yN棺G2Pxg*fZL`vw,=ˏ?Nͳ@d0GKH &31{& #v\+'դt Y\"v;$kd "veڗDE׫b;T*ʶ`xx$ш%#7x ƪ{a#7)H0oCusi6WٍxS@ߩ&sĺJ!ɅH [B6 QԂA/o9 ~{t1ud4-k CD= >o7sw;ibl݌-SVoǀE}qR=j輓ɨ- .Qst3GޫJm7qV'4,hY\Z${Le\Oy]zx`R}K[<+D7&yCj8cNڷ(e.eOg1['O:օYrc=qVBSyx [͵KU:IEU\*~G AƷ'1?VRn}0"IܐG]͛VG`u01n.TDgOH`§1csA%90Fsy`_eHYvD14SZ_xYm^+%,ґLC0^GNSN,St3 z{Fҭ[JH:  E!qVKK' -(5чdyRCK1-&8/=B^4pN tM5*ۘ:7+PtJZh{mu,~uWWr =7~Z qj҅Pq)S'x }DCA)f *mz1E(C[oD#YzoC>u$+9L%:L$v/]ȸ0A5/'Jw[i,8z; [܊,uKg+,#@λQGHӚxm=ݍ͑7S7 S"P$v rD~]sS5jۭծ6}ajKxw'dj*H|$|IDX`i իOCNgK lm+eN žԚA1<&YT3&; %sJU VN ͬIюEkDO޵3+L^+"†:FlUN#>`n `,=-n Atקּ¢EMhq%*.3Io챗Q~/L>i˟c#ĕ_\]^oYq_K1]8+@4K~d}HM-leur23]ъ 0nV$c`8fii4&Mj`0wS3f9z]Nz~jv'bH~byQ89 Um]%=.r8_aa)S>K&y+,†.Sj$]aLb9䲰k+]oxՌU +]D}yzlgrrj<>|l|c=7,xF#0>\V/w=gDcX3t aӴ$NBAMɹWIk9iWe<e3茲#\=Di&(Huӫ3,Eef5ӆFz;/\iB.IocNPs+ oEG%Zūpx1ďFG-C?6+1C )?7Z7Q.2RWݙ] yF>I gʣM# ^5mKIhsLuVm[xw1D+DbNk"ԜQx)7Tv ̪~>'ò,tUjic'oUU{E{LlE$vD9oҀzz{=i"9wX¨2D?:ɝėكmg4͔?c[rf=d!aS^ſa*`$,+UQa OP=}.@7a̴ebDZ=eNq >+dC8vs8=65ֹ y.L1Yu'*U\ _T/Xsb4a?p;bKR#o¯Ď,C2>^uB P]O;+ -"w2X1@\_|ҋV1^bJ\vkhkQ-|"k$A © pY9yѮ\a( dB=dZEu0o=YD{q+4U>`JJ.̍&rk?틅p{;gj=j_38[RUPҟ,;m#IQ! 'G+&t hLvx5_k5N(pIGw;p";"LS9vG # ;OӄI3b<Tېa쳧Q4;.G T  wg|V.ˍg{чq.z5hDbߪ<͟}J5M^oNYeM9W)ck;QCk"fGA$ynȵ0|WQ֐.ce0)5,LVQ&(9 oL#W;8QBQSy'98}'heK4rM|B /MM<\߶Vḱz˂]e&tF_.@|; Gg1ͣN?I7;r #!`f**kψ ON]9 !pFCmz3W #;w-Zm+` g Kdj *>ਮ+ĀL(a/o~!p4ԏ/SP{Lpapowm!Xͼuud:%&$&12.yt":׹EpԿ -sopl~û:: {n@ϬG `pɉR XKcxbmv8:!Uw7ډ1pzI Kȴ.ݳM]R[ּGW(e' @I@@)Vh$i޷7rπlTa۳9RD/U"7{TXܱ-EDe+p0o#!~LtsOEf;sDUHJ>7a2gEie6dէHxH~o$ՇCK=/0pPBl}&\2II~)߾]t'rWb0t '#: ȞfVG-U'JwۚLO,>ۧ;?Jm@\SRw$$W뼄1уTxqU_' '$W2Ͳp>6[Mcߖ1)p!%%TE]AM^*P~#_-j3۪KҌ{  v;eCriG4y׹dWt=ݩ< S)Dk2ao0GZۙڷC<'L;b(: 'C=)L4Sj mf۩>A@=%y%@k;J 0\4tЮNr$& ^~NP8&a&NFʪ*!U0m,!.>j [m9[KY &< R]kR &uQW7aZ@*ؠ#:i]_ȶ)=,Aӕ #'E4vӮšM^񗅄Č?ZXoG!a`ŰԴ-qB̈=a.}&c j|Չz ȯgbUR;:2-dk? SD`Wc3frY qr@ZB_]48PXjIr0:WZ#Y{klۑIٕ|⇤=*QC`,;Kl~ &st0P=Ll{.C8SgcWdu6=2Kjr.OyE vv V|!vY<%ٷ]ֶ}@F/`o@+M^]ā++imzmpȢ~_cdd#3ӂz3}[f] /}Cveϙro1d;Ϋǭ 1moť7S50gWϔjATJ1,4tSd j;iF?#3sV4}2EW6.lM~K= cDG+ :! $kP5X3>zW̶"V.vn"2 c/M'c&k'`A;cIIb8foax8b@Fu:k璷jGZzY@.g!W]umDAkG%N6T+L,*45J0dx`) ֲ׆^2=yJ34^)OI>Q`(ಠSn lR?횳ijkMSBTkp:[&;wN,U3Zy_gdlAPG"f%1rAF 4BݛSK!2̪2\pOҙl `|o,p?oGQmeWJPBTךd{wg"`ƵaDUfVkMRw2 ݬG rY;ځ+4t_jMl>CVHRB3*d'ЍTd(dV~A}IjHWHdAȾҺsde:ueQ%9iHZ'b[8hJ* /ԻU~f`㷤cArO<3ӴT`=Qk} +L~+ٳ2}'༰!ȼe~FzQ_XP7s豦wfv2B$+*t b(7?XKxUpS[3*?I6WJd(_J7FdImh9ew'[WS)AgXp0|çUZPA:Kc$51,K sgGs y8W&iAp`^{?з7SwASŐdx\P/p OS5'YV4?@ VEˎŤhT p.Z^Qͪ5OJdA;&EfeTn`yFu*aZg4`#2eF8ŕ@>47Qw4qS\oi$OA1XMfb""c?wF~2ߞ-(H [i3rjpkR%;E61;qH Dx9.GrR٨CC)pyaYӓ*cP\]é*b/)wv䛴 pz% {~Tvm v$0e-KVTvGZ"jl },߬1FCz j .=G`tP(4 M4RNޥC"rm~$wh`㭩Jڰk?>H`S$"كKhnށpiOR!N9AE5NhmmL &5AtyQ]x4INfGlDtغI${RhYm5w/aŖ1(ivsaOA3-g$; ǝ š@/pwr=k5R$˭(Ƀc'-'"tGmpX/?&Ql&̲`ެ;9Q bwe8bWOS k}{Ia|~”Zw@G-!Vx3TiWpumgu?Lh d'il.dEҘu5b6ɵI#xѢ2e`z ocs)pË׍yD"7M z/A`(7> :̨JZELīy?8!FW^r|q4FZfj8@5G,ZdH{{y[v<cyǻBƽ7SwBw1y@FE`{P^H*J#O:_pǤ 7EE]nl"$5mٍ38OHI3mX7k&τrj]FkH%:}H&o6|i7)v`utiϘRZ߬'#њ۰<7Q"qVN"D̕\?+#m:o \# cِDRNڛ%%۾3m0pu\mg\Wb&J;E [’T#\A~#-;l4|Lx?};E+ Xcíro Z|No|9{vR4%mܩ."BQ7tkGƱƯ]Ȧb8fN˖B@VtL>YЛ)qvU;#q%̃oQf= |@L3r>2ؑ}n(uӛ@}߃W='@̓,Mgggʈ:Mȸ>,O9ogJŚ66SnaT9X3Ǻex4&PgRt}mHW_-w>S̚sau)@dMzAcgRʍ.ߕkwuּvPYܿqhGyqX)y OaKf>H3o_@M[Cs_nt_'\l̘(`[$ "PmX[VU Petfγt.RqT1!׋Cn4!,"Wr=c!Vy[2CmSCdi 䮩=V4^r3BGu UF1n$_\8#GײhM|cq? #z9 7a&m:27˳Q6mYuD+Ë8sxC`1h@ H<^6ӜP'dnuFZ̏ /}*40veiF-P| 9^ nQ RdDĈC'T 6+7l:^@Ra Ap_xĶGܶR:Ι'88?et#{*bDX{C6bTz@i~gS?-qmdTIdX }҅am/ʞp _%UyIкbz^"o;.H xnh?4ݗ&k җP(i+V.iݏ: \ֈNJހqӼG5CD}V9V]-h<ʅ|a:!{׿it-:o͏P68/ л< 6iJx 6b z_p$R aDi;sE%F&AG|`A[l9"Ik4%i[>"z$!Ծr2z^382R9b'v"náRܩ?Mbkq®NÊ?HAٴ0G;02J(lwO0ʽtQM1h},%Xнk%%RibsG4_$1ө3z|#zKߙ9҅4Q Tt*:T_1GOm7U):@̌L 6dЛ(( 9MbnQE5vt&[&)Y005͆'UpctkCx<Ik*>GM[`%׷&H*55-nkhiFé xTT$qbQ+;sՕ+\FgVtңyRWdcAcׇxqZ|,?Jfp*ǡ;IX2hj+S}{s8;kV^ASQ![6M#F@1*pTjAR7БM-cqZ$wY+JzXQ+9G',ѧ)3IISH^8e,>Ӎ{a[ǞuB!P0 1Ci5> Wj7Z/u(l^AznႡZ%fdj ݷHPLp[wO=h 1_i4.fmeتhʲ]4Md' Ʈ KLxDIu6N-T>BBY By==ZTXgI24oX^$`{ϺZc]BK/PneݝrMܮQϗbE  ȑF 1EYrpg:WYX2 dYRCNUgH\x%@/@$u#7Ġm,QiڍaT_+?g9NHksU#E{Go]y;1Cx%Ԁb Q`7ࣿV]*2/2˕J^}1@~| 0Hsz:gP6Z,n5 *J:E5qN1,YI//1!xmO^϶3N@ $M|-5Q˲ CjFm`.dkP?g,0Ne.S'f?{z=p|YӷKXR ҲG7] c+ېI/jII 6 WZr=mkD:dy ?sXi bH5źiݎӓ_cWhV]U kh9.-;Yvs8Yݾtxq=sK-"ZHء갃r /&I +_E΋[E+JM9*)cɑ6۩r Ot~ YbpxIjquL֌8Ftࢡp*w]lUk]m4 dU2J{sI YnU lua}Jm]n]延:cɜT N{SGY3qVp MOrpZ =E~K>"XRl,.^ <6{ŦIjo WxRK/\w>Ɍ^^zYf`J|ڭ*7:h0 [Gy\P^+QAZSyB"]7S&͹GަI z`~Gmd;(6Jա :QNPU*;!(̜fF?:V8Pj⫀clFJ9'k$eS`_mUsEhS OIӥ_nHؠ0ҽGRC|5%#6CralA-(z9.YFEX8]:$ EOVdKˌ]iw1+[w38Ko]o؞&hwĩ3qWJ/2Ѹxr?[Mf;ø% ״d^F mWY WosUj cV¥-&9?MfGy5 =L+I})<>s!Oe dw/J=l?zu@UX=AI(sa%s䙘ΧaoU:Xh"Bmw@}8FϜSRR} "* *IB'[w~}u)&Lnטz;NETwgcz z̋$mj'XXku30 GS<ڌu.>jyu\0X;kԏyJ ~$&Io5Icq^,Vǥ5j鉬5VPnmɿ^aUn!8\!oh'=rs^(V&s*3&iu0! ^$U,hBA23]䵅ji*s'rk7>Vp!`Us Q7kuO҅4ޚx8҇rd{E|rAl/﷫g6PRJ|T I iM\7-1HXҗJFXC@">j x\oc/6x'Gl :G%W*?Pkc3u1uRkZ2L*#vibg,)3 g(\@QHJݠQoƁ=Bv {O]@K-{7c!Z^u?fea6nqQf6B,WFa{oAF8_%*r\]¡DOXVjcSxOp?f3fIKz7JW~.Q$ J73vu&$\-bu˘׹D e!8o!w+Yf?9l琐; Cw T+8VC?Ku$a CT&Llb>+8+@IlWI6}&_>#"[gKCѥP"g{a+^#}h!{3S* g_㊥>x ? $1Ut793)-UEF3WwP$Ղ>[gK3Qlo7p7lhwCXiZ5$&)n=[GcH}> ؓfl5tGP` a8=O h;{SYT`f '4g qџoIe!"깔g<fTH6W*龩cJ<XdGC~0D5[#Q Z] ?%7541Qc4-Zcb4ݦs˨G ;WJySzr 1{BWS%4!W;>U r3H8څT؄"U@v8(b*^ :OfSELfNcZqF fPUrawk*^`lDۆF64<0i}P*A:b_Z9E;D9#M P0:M4RKuIZ㯨Hnvt:a/ٙ|z2&:Nf)S"a-1j=%<R p#޽x@r3uɇI2|JEF09tfg%BwD$`1DUנ"q4FY'p5e?P~6- ء9}N.SSvLEDAFқZ-ƶUR׮;ʜnՉ_Ŝ [8k>uɿ#Q̵j̛% E'tz7j 2ޟ JI "iȫf9""SrR-ic̿.v:bNJ;Gqp-d[I}kʟP_9+Na1-M89 LӢyU:P!KB>D\+ س9+8p%8Ǯ?U~.YX=zm2oо#{S"6;t9g}17RDXŏխNFU'̌Q2W D& Yg+->$Y7Z҉ĒK#ҟ0AJ';!!jEGƶ*ŢM.x^[ksRr)l/3z[kV1jO,% f@K͜_ͯJ#*d 0 K6Êl-cW(a„PәUs#]7tBt$͋>QUbdA#;+~:Dp"]kHx#8vkN\#nlhA>. Y%Am$ &q{#VFro?x?=Ć6ǵO޹1a^/p /|%JƊqǾ\\2>uQ" 2_aT{6o-iVs2-E/"ziZБ5bT}ɖóHSp12X~ϘX-EyH(nͫӽMB?J+/6yrPed$NG{Tw6@7 K`\!`K0=4T=_>|Ex_x}.-یq"լ !Uefi|&FZdbt:˦'0 Wv@W Fkr\W%Ꝃ%O1.:;ܡHK0I벅 bP#, ==>NGƮDO}z?*2 *BB,dpggunNE^&@JI\bU;qGah3n29W@+Ϸ/_%3q&9z 5wĹ>磳][e[\0s.yx6\)WeoQ]ƅwGyHM E\5Ȩ7l[`mG߮XbjZ=[OnؘqES =Q9ocdQQ~ 'B KG%tx l $bj 5fZ_!"a=pHYSSӰs "s;{=Hs+YJ:5F. Pѩ0b<=- ;lE^.m 51"#8╺C2D-[͟2QLU.M_4ॖmQ3s ڳHn(Ҙ>6 ``X Fc p1`&XE!EjzD#ڢk#uݒ]Nr6%wTU ˫ᠿݡ=inSa@6ɶ#-*@3* t{Itv ilrkqPNBxHSi-}gbv2>\Wyɛ1FWJP8ъj>M |0k_sdhQZ"w44-78_!Cn8Y1U؂KI1=a_~y>6HB=ƛn!Hq1<7K<|"LPujDk4O)\$[ & ʏRup[: j6"Wv/N5'ߡ)^}}*?T B4/xpM)u8k7ԕ'Ae M 3xS5 @,b>fT%YIa~Ȥ>^/P2ZZ(CTKrJ*4U(u;k22Dma\ĸni]+fCO3\ΡO P/5.2H BjUCBLd2qcVZW^Zro [EnG*s61SxJ80]`)opdRFֵ*٤n/mW_A)5O| Qʿ-A|$%LߩE9KX/f&JM1u0nʔ#< Vx|Iz?p| nCpePBzGW) Mr:z@b?\o zLb6mwm" W׹ĉrJ{j\P4+*ihExudxѫa.JJu@0F^H-k~<$u񷢑{zaNaV$mB)E8%'d!.JΏ4k@_8!f<(ztr;X<;sN᜜]Qfv܄H&ErZh-:etM(V=AOvF8Vdb;&!ip:_qLaٞI2n?陃<]?r xMͯ&oU71 >evG;AAoyK#N,gD j mqrmHCט;v>C%D*j 1NO5܊i{ƔIWy\;#-OLXwdW@ Z>/F4K+Y|V?O=hW+MxZe1$:/:=a`0(׎4*;Sj1.=JDg~Fn2ζ3#Y>GǛ4cBBSVZo5Ve+/1YJ_m 2U3P,)&e5}?._eD68uڏOw:߼b {LA^bAɛ9:>ʮaq!pC`z{*9S=GwĪ^fl~G{^k4h]sbyc jPM_71#ZMZZXq=e[a'Jf?rV߻}LO -O]Un*<؍sm L@]+DA?b~ItǞC*$_]<Bb-md#"NxȵatYh4YCvڷh9>DSW'{YaQ)`N0֗?U#]Ӱopͥfw1^+2I1S/?} }[nPY` FlF,>trVoр^~߳<˦ėd0uFx?h,Zj=Mѳ7]^C< Qq$ex )fW*H 3ӚbO^;>.*/|*+<y֢]JԸ!-ku_7J!-EtQ3 ᱝmGf$X8e%NwB@/Xڙ#,Yj>D+ "нUBlH7ëdN#[;uj`[Mʏ$ Y؟\EOwp{xўTw#|ƞ6-WMý E @:gN!Υwjg6,phu\ΰrȽ13 T^ ޳&aXGwC~8ቯ3--]޷rAnͲx 2x'1v?CF\[!Jz n|(1*YdELTQi]&=;\?,ψa7&[!yG ED+ԯ+_1 {E909q,pqq'uUkE>mXC'PGgɎ܉YQ[UU3<#C:j,k"k7zk~i[&SΡB[JB>w qw"hm4ꢨX23dCF4sFlSRNukgd){P{;v]U׵jU݃}ρKƂ=aMP I!{k.0`j'Z3!>"D(  xnlK7Hkvƴת+8&3q)_haFѧl]:#KC?&HbZqq%(e&0`/T:O+vpϢ.*"ƣ$ bF]0Mɘ>ZMb3YU?HaG.q`i0KWuǤ:{J_2-͝4R q\T1;U j'.J}PL`QxP{;ݓRPXmrwɰ$}(b.kJЯn9WXX3ɒ`P`7~ֆ+ evpK>#dϰko(&N'] RΏɬΓ t4b *ݓ@rRuO@WԪR1j:۝l1f1D?PoqzԵ!^=ܳ!ˆf@ҢzWjb%35lX.@z ̦E1t}hՔSV 䤆2uMo|nixgDe`iIЄ6+7#9 5-uڬ_V҅Fp!T\VKR֦@3(;,E6RRtlz.vcjmHsyfU,F)]W2XgƯQ^ nv`ӾsQym]%򟒞EN7teAo#$qPK}}M0&yL. ԰Vhkimq>՝~gHKA涬Ĺ|I p&Qq͒L`I*BY#%W֟D;_X`_Nip>DHϿ )@+VC>g':⾧PU15gwFA2=@ʈ; *öQG+-rPU-|ŏ٭?L)dY0xmw̬w02S(!47~itj#0 .݅PUckݺQf~bpP|!BsR֊J_G2i XznT K{Q5OYv:є^v.D9De^ߘۢjB)Ë(8zI; qc'(Pޜ$搉bu늸Y:Ro\d1LQXS\*j.x?S ߲LօPTb}Vȹɂ ꣟& @%d.}ҏBHVI 9` |Y [!4&5>W @[%۾?eb2@l ƅ'~3{#Љ"tOqI)ñ*ˈK KnQ{&y'4~1Uv _ybvRgX>>^$@ZS`I%w {ZUq?t- }_P.O u: ),(^ 6bj\] uTt:E׭]UzRȭm6yV^xIћ _%6 e_rf?xm1|[!k⑅ 틲ݦtyIK9n[l[iWүl T$7+sl]Ei [U6pN^8)2H݁lvgDZOr6]}5YU lz2M$7:!ӱӅ!<~Kq0ijHE(:33>2 Շ|I}G8)π"bs(8s/ ipO@Ät/SHw"BZpd Q?>^WXTCGkTd?7&`%FS\s$N7; wUlf6#<}@5뼵f3l8k?)iּDh|026"!5`-dJV(},hח>j{oOrT^(ttЈ( 8}[,\l hĬmazBI.E]FkExXϓyB>SQĺIS]="Jf3@E!xfd/%$*oZƻ@e?~pBi .L4tIí zLż-U/%13QF^26zˉ\i1F|,cG@%Bbߔ]paۘS0_m(Wz,\Lޗ'M~e!xe5/MIf6b8'0;f0o|vQqE&,~a'`sT&ˢ'!|)V2@}>[Spv NujAg £O;gY33Q$ &g/Y4>m` %oɭBktN5a;e' Z W?dTO@ G%J|g: .4v,ao)=&n͓#@pe'*y?W lnGEs_W}gg<ø?cwPh *J/s\ٝ޼90\ilXe!"Cb`cc"êԺ&Ϡat:aKDڞ3XU\~~Wݜ E.1 Pxwl]:QyWp6L-lY=gr]<[S P:֖6xX4|lt靤FWs*$0D /7a--=8Xi9~e5QAU:H|X7D?k[鷰gDuNF9[F?/y &YK)U@!vړ1 {T8 H-xN @/ 4c$벯DW? Ae9Ȏ6OMKv8I鄿018 KN2G LwU'_lYϬ1x "'M67t;~ǩ8JL\35.y@Q>9 $DLm<;Qy{G~)\{]kmf?P96OQi`1爛H%@T$]tDe#Sϯ=b/ 3̸eOX,WzCCTZ(u8ZaL+ ۱}`Kk`GTu; sO2r3p``RPS'O`տ[ ъ'z-(u̿j[\: { GR?3'hWSs%?X %`Kfe]?kD.Ӎ݋[v3Kk2N ! 1jAzWPeg]*6o< ALnwHO #m6l%Gz22?Ax>L7PS*&%t4P uAܕ.&2z*×]a,t V;"A %$~kO6t M,o74'w7[n,*/Ef >nGDd/zh }_'nSrlӟ,) ڱ28ȓ%$E?"P;gYRI9 NT+^ʐ6N;` aWmd?AziML)̓k hAΰve1T-3rO?t}5}ly?\ǚap@~M>_+9-5ѾGtlL1"NM ,/"lgbB;Q 0=Y͜4gE* 2]zNAHS h#GQy[v|z /x-!t}+m56">P( sCQ+oD0ߠ£F܋?-20p.sHH5W]YsA$ sY%sIJA\ ;Ȭv0 ?KUE3,*O6ETWS;TpCGFH}m<Lmb_½c ht ςV4)sj%xfA6%d? r~8[*"~NX}Q1i#:ިvGǽikV{0Sov Clx } W#-hQw`Xнo]5,Ò?0lR/e6x\Dӻ$ic: jk>.^hRD(4{'7rRb +6G*hL PrP_zoE.rf7` m] " U]>Q`G' \YͩAC|+>BR2˵ QhNiĆhTViR& ZNv:}#dߓ 3`-';i5h`Ey _.,4OmIfW/4 Nz n7rԁRKi3*Htϵ&knEiS9DНbvob\rE>ʘp8͔sGtcske&iP#S?Eߙg._|sKw#iZR}IokQǺ/bds*7xYZ#T::`,2Rh͉LŠτޕ2V:kM| >BX=870ΰ|PׅM1ioɏ-05gmH* awETgA yIGH.ޔwr-I&BH13N-哊w{{$/%!E&: m6PFhU[|5ksoB|fN Xo}mެ(Y6dWiAxIIzDe/e mxuqs_tDPv# B6`s^N. %x`atqMs"5Ufp} C^#Ү=wbU:doI\8+r?鿵gI3筈R}LJ@RI戣!>w ^ePjɒH7eu% (H ٮ}xo][7 Xd6)Aw4De. ƑAP"$tIyL;ˣFxHZw=8Hn:L"`0ʬG2{fgh!#]@!Xs} C9&}cbgSFV%ͺb﷏!z]./!mQMXd/hSN-LޣLmBϕL9V|Ak㒺yTmkZD﷠{?*yeaAW!}|gpA{"GwQiOda_EUO̊U\ y'Le0@@g]#TǎNU Zyσ{tLHeѩ'{ e%XTfWf\$zjhsX],$CK=kes7Wa9*]"֙ 2C"e|H8\J/i0AKP~*"$=~JǙaH]b/%dTz@(Flh:J?)w֗޹Ό s7K@ZyW;7s:~)$! NTN!M>W B!;am Jb :V#}Yn =\݁|Bk+ϼY n(VZ./eKF/(^v7wlCo9YoS9U]^{-48 gFUBN*v#'!&wmM1*G>3(ћ*)17^X>kQZO(,<⍠/A!*HًXtM ˞R,!JG:,MNf\̕]'DC`@N.G|n|1C}QOUg",ݥuep\\^ Iڤ;9jYc=0zk^xvbhpws9F~lƱ$lӆ@ $ $7TVasr(H2O+)V0.[o;<& uayrwa#hđU. wH޳/ uסE,}~M3̙&mk64u>IVL/ᩓہf=$Z>QAֱ) &QS?6q3+9`iѡ3=eUXdJgaq!$flSG44e݌8Uհͪ,5!Wh7^)IcȀFST1 }3iTֆ㱛T&5My*02,Q-dX;Cy-/ {P$ʌr_}NJV*z@Q+]9f,U\ջY[IE3O^a-88 Q/x}Hy|x;qbaR,4=Y1Ϙk)sJl 'ny4SLb^VN{KCa`WjkrIWly&-I=dG!wj(k|ܗ+(oLBd#tGRk)mđYm1~M5ۄBq7g 7Se .aR|*)l|)yء]fnX;_px4YԵOF3~FZzi]|C`\]Bō y&3E5D4,Gd, PWJ\_#l|pWW@2roxRzޔ^ he @-}#dE-m m6ڢL43[tV:T kh,<ࠫRZ7)2;d2oXQ=yVGB汸14HN=1C=&O+4,fKBM_x(o"_a{Ez ep.'j"c3vQ JE i Ƅ`yX$^}{S&PY$I)~˒hu#V6釐嬭Ba9Fvǝy2jxsbNFe8ڝ-ed 9zEҋzܿ}MTSB\/RQ wEpx uǸLGlA4ھ a^p֠D& kq5:Íh<8mPN=UF+I U0$g/ C0m~H.{Opy6^#dJ/Bz˫~rk9dl]A \'f՗N yyOMf^͌8ztNv= Y79"+9ii E ae"_<Yy!kZ!Vb4cwVUY#Q =-#} huvA"4-iA.@JOa܇|W?VClӥY5)#E8zZTjÇy 4$.Uxz#w楓%887G91s 2߫?}-c%ʹj\}wN$EgD:Dr#DLG$wNsZx `ܸvx@ Z*^Xo>ׄDLA~P+]à3Q~~cs56IݪwȤe%^u!,ht4C4Ak -^YBg1n|R< z0̺pL_8>. 04fGD[Uq&N\4sR#VoTY0JٲU%/& ŢZEFH[V&!ejZz,@a`/s=~OYL3VCWOt0`+_{O|cF7_0x%_wNJIf=iebAݽUBȇNǤgSTvZ߉V9nuWOLws4 c>ݙH( Vy#|xEo+[0=j;Wŗۜ _@ਔ0;Ң}]4̫V3*uZWBLZ[N.?'1{ʥW2Q\-cKma? tGc޳RTI3bfKXE`͉OP[3آ _o KˬZ:tߧ@dna;}[25/(tXIH,@ݣi?| _`(89)9Ǥ%9j\c"r]+`()`HFN1i*}_3{>gHC%'Ys3)Q//[ Q@ϒ:Z>T8q[6#l:4d{=/eęxe %Ksgf}+5e&w.xﲊ˛ƣ8 O1 vy‚am,z% B'PDbiIO4W5:n7=ݧ]RQ+ O˟~1[f_w5NOV |GOei+sNS2ac*D!hρlu MQ;"ߏtϾ2wIӰw^RÒ&*}o3zS;SWam%J(q`KOQ ۠]ö 8@U\M&q3zLja4[Fw$z,f;vH9|VboEIL5".)9J. rGR+3QTA<8!'K=p nY(Uס~]/Gyy0V^ֳ[,~b:.Ը2OtUNf XLz$mɾ%b}Lw_B0t[ѕɹ$>dN `7Om&( …:PH2ܟ9 j&mژ^w}k2A#DG)5JSbdOU_[M݃dB̗r[`9#x&QF/ua@UH+`O0ӧM tdIgۏ!(Pd{앜 hQOtC㲛%,Wn)p4ݵ-hréE&~7E^R?GV4C!fʹ {YۈQ6,%ԫ/Pwg1d:7Kl ՑZ6쨵m6piV?% N?dYLDžeH;upfm]ERFZV:33 _>3b3nNiOBHד-NtL9;sG7VȾ:3fF ~w z'R|0ʮY"=JM1!UlPB|^8[j]@(y ֥G%_9gVkr?-wz ʵwyد(*5hkD`&pVehMAu9Cn̈Иaku=%FuVl+OJfXG è˥P,^2G;FKՑ Df$'?\g0QJ+nBQ&iB%BIg!a%Pi.@val-#uXy17;E'OV5v:{n0W#,|yVFȢb&b]V "GX@7&!yXJDhI #-;c=KI}H%| ϗb 8"_ LlR;w)=‘OD 'G|)1gt< 0ÐhB\KfJSF0"t^OC,Ǻ< eC( r$Z\bU)ITԿ9˖;Jp:3نg'TKިKm_8ܣ~#_:}d]9OS*woݟC]ꋹls/ņ9(٥k$XG` E']66㗜4Br/vrSo_R|̲ m` h7 7֨I3bWɑ[wuYٿ.B 08>G\tAv߄CTQ2_:U})X[v3J1ށ7i@NX@ʾm-qNweDZ5fDZER"&DށE,z 5T_%6r@@]9NN/ieRьui1>'Oi ٯ+FQM~*6n uaۇo`jgZ ƳŲ=sw#m^Hm~WIM0d8O6n'%T!(暲+9"mrIY&K3jOS9<Х0a-zt? ƭt2'WS[%(Q;W)l2⮋UMݺN3~R_17~ uL;bD|ǛPF#\g CB_Ӥ}rM khj95K@CK1 2hz~QX-2)t9[dI~7V' bIC,g-Z|gxjʌ9 ([GTX%l<iX~}7T#` m{?dFlZ_ef ʨ!Sq eYZco\aϖPD_,'XRf΁A_"m]˿վ IJԭei/ ~kSAUoRBzO)ĭ04<Aj8M>yNT31*. ? czmr~?ݥ;nG~kAMjSzGa/'\V%Z;Dz.1u [M};zT)" [" WՊV}JT4 ʐB$[1StZ!+6#AKjTaҖ(`="TxnҾx] izd𯱺s|)F^i] *g7cmNT!&\2..Жjj2>ʨSb+t>iGGB6$tMe#UBp;XWq}Gjo^G8O$-5җ8AN V!>ϕ$}vgiP%8MhrQk<\I5s. Axh/aHq}Sn@w8]Y^)O)T@,µũ!GVԅd@+׃T;ŴOjƟ`ڨ~~'?hH2K;'C]bcFѓ 6*$Ġin>#fYuxTZJ60FݧKi"^ D?Zk~Z8bT´3crO1I{Mؕ_%-PQ] F m gb'Z=aLϙϔ9 lJvo MSHh$+V Hܩ`r_gB:IRi5ty s^XZY̫5qthӎ|z۠<9/j5$z3CBůV1q6iR]<_u 67V\E0J7$0AP=J2=~ H%>y?JN$Uc/#ku;[?~1m R u_`.|.'yej%8(1XpF pAi,xrw-Zw~L,pq021'7w|T1u=v.=!@3qv%*:V<|IOXɖby{vXR) ?`#̨6ɇ?ywS*^ j\ >?@RDz 0*̉2;[wzr-_#z ru4T^(?ㆨ.9Eq]q;sƕ.j.{ ' p#p樔P8c<lysdCQHLh-vdgL}b!(2H;u*x(-XK,`_[ʪs>Ҩr@鰚ޕzCY`VzbO|Ӣ; BMwe _%jH{9٠;-HxopgC.u/y Q'hc0|ԿU[Xؽ (\ P8%3f .lEM!Ko_cj빙EKAvQ;Ĺ6Be&`ŽZS0\ usL.yeiqj +kI*a6ccD8f;D8#4;/^Mfc_STM0daDFPxkbi/QӟAxbGc+=xuʉWB[bNV Au\3y: 5C45d2w 6Ԑ" `aM:کH4?u@g!`Q8,dXRr煯w=Tg 1-brtqxAAg/d^)FvGBZvQQ7>n>Zeע"%%] ;@o?')~;x q5g|j1͡Z-b~E*z D&/1 (8*|a^- ֋ ִ#88 r3iSt͋_ڨzWx]'hkθ !Q4&f}s6jb|d.,|1jͭ r gs^ p$2uo +ߣG;wYT{dVFhSViQ%* F7D sdȫbid6a@π I6]>obڮbJdʮgO ]лyٯV/Ӷ a+24 YYݥHsN7٣d]i}O>>RYʑAҔC1Zw#%sdd 3}2s]N^kǭ'j=gpNǝ9i xw0W>/z ?+])Kp oiIgbwF..DW%kWA8] 6Q"7ׄQfz5[6|>i3V>Au%"RxϦG>ݨS N:#ϸ-e:dej2V3x ~>榺׏*>lmZ4\a *&T6b\'oLȾ8b.&,|g* ?cΈ>YD6 ?aטAƂ|RȘsx6%nvr[PxS\T }5K=n 2qxqُu $]NlGpD'JӀ\9V>ㅱ4i~pSѴ@ DLRr9qF)ss 0Xi{%J ##+>'/O. /]iY5JTx3RXpm*_Ϲ.+ol7[d{{5W,)t*C|3Ȫg=&kKc:P @[|? ;3_yڲF/HbD>:/FvRi>IIFpCsvyY< {b6Kzc+"i]QL(9-U) <tb`푃厤+A-腤7zTY|+swQ~5G 8e6tKb\~ }CE-&7ZH)UN֭F]:er$OjH7 wV0ӷ HJ6vR(}.}. Lw"՝_K\ijn*+ht?ֺz7*zPi钔 ~WP 9*?=?rH#dφsQE # mQO)j!}a'C `[O*2\\.^D'dvHe_N$ 8{FEJDHM.H4*%q ɚ8\y Ip>ۢkLT33H2,L %҅J3.dP3" N3$@Y$EYh&Xnmo*։?<R4g=Mr *3!k$CMnn9d)hwC yw`7GB6^(WB4vbYϻ1*$ t67wum;OBZ ؞w--+.Ly*Q}3,}1ʶ\\9ICЭ.guwη`-&CwԼqc{/](,{(򿕩anwM"Eaz"|]t >K].wL}H^Ờ:GJ;U3V[sޅ;]9ugr(Klg]U9[)~4 N8tH-˭ rM޾% ٲ€=˳Y&*LK>Am0UǕo)c|4\Ux]]*k\Z1O>CO$ql"_z҆mѤ!L"VMNU,KuC ȵD*JJ4Qb Er;H>sïTY7zu ^KK@ >Ξ%4zCe_^]R8/5]߸NrB@2$y2n\iE%TZ^ 燅±_:EYFFY :t?wa4.?>T 8l%{sޅ0+}p ?Vϊ)5&; pJ+0dDYH+./H#PѕO+J 'Q&eIB+\H[lx d⬁*8%ܝ)q]^a)&q,I6]6Sb?߾stIrE~ F=?zA3I$LHy)p3TT};Px1Dy!7dzߣQ<@A/ udAóKxcNGg=nA sIku[)Jq·8奦?LRJZԅt-^ .H %P?cJp;p{q*(,]F{Dnk"ԟ:[e<#)yM'J*ѳ:- zTkḴ{\ }ިQ.Z5~u.uN05k7AF5KsJ O {\IW>M19Stz(JL+QX9-@r4=UxtdT?Cl %(n1p-ŽRHpDU-ww+jտE2A5;ad P\ߡSw)w0Ё^Q5Vznv"qdGl2ވTBͲp+FxdxGx5.:3!d!!>C믻ꝫ^[7"/SP.T?OE~ ;  LB Q'ѣ%/,EIJ6~RBE_W6ci?ٽ+[Rtne͙eCW G֨x;.Ty)*.WBꘟwxпAQ]J۶Cw,Pvv* {\RbyMXmgc('} | ZYv|g~_^ -`+OwIlT H8tvg&(k8iX#jsQ\NUvՆxɑqww0 +B5CNId¤'8/AF63-!cL]'!!He.Vd!xhq\9+_-_PqW˄,rR~B5U`3aF5Ji CITZ .l xZf[0e[R3 Wp'ӎ JعJ"zڣH11}ܰT ~ 5r8,(| nRpI7:Ii(8F15mNJM[oɯБlH ކc{;P( w.j7SF&Q$۽0ٷ{Bi|^3SR! 743G'86zԇbfH1Z\3?c:):W0M)dGI}ocPvyZX+Gk!1iޟ4\Ryo>*W4᫆m4nFmٜ/]w,X1^tJ >q!Ĕ~x!MVaNi>|+2d3BwK*KVI똶t\ExP6PZ liiQ;' !&OL$tze-@ YISwIeU/'=N; d-[U$#@/ZvozVMvstDRZAqt$)|W@9ir0Z_)EQHam%CxjJM^SӾn}l<\%!*حF>h{k˙=\lme:\mj,-K+c<w< ǒZ!_<E)Z֓n|H!u3d<ٹtP!y/Opj*ےm"zʎ5U޸/"jD_Mh/B@7wx:G[ﳚJ}#덙}[s9bISuod>#L~!Fv {bGQV xRc_oކ RI;d5NU{a+_1wYE'/ Zj`y CXoK*/ I5pJ%n$b |'$yF KZޅ[;M_GlIS/Yy`ř2qB ]RlUfq[bdȼS֑zf)j(Xn D;@1wS P9/4Ghu-wJWs \vnX> >W ^aXwh1.W od}8p#X&ppvpS~p()lmp >b26WfK;>bRٰiCsLUJJOH/ DHj '\9@A.fUB1<Ӡ |Iu_Dx.ʿ؛ Kƃnj[ uW_AoaX=-y!"J^٤M%-=ˊZPzOrN p[KDT#l~I vWstqٵ 5cxX7K!u3ÿf3rhOWxkܖ u^X#Fs2HA_c m^&9v"\@y6թMѐ5,܉GOߠZB*xXtf=,D<g b6_Em@D/Ď}S!'AU&l 26鉊]g "Y dlf=bQ3>ɇNʉ6"*hTmtk5cWd"vT_n-b4E&<Ӟ)I-~lc_h㬘(x+7x Աq$3!!c-pe@A'3kݧNB?PuM<~\C܁I7DxzLvi:6h2OxY#d4r'y,و9UՒ *.1sMPvJFlV(+N0/8p/P#0$z5={ݫ¹`fZXO\v4Lq=ý9K e{_ލ-΂){JOORYL g=`ϊx %ОĘb0LC5mwѺ!g_:Cs+ Sk`:I7D*x CCUK,$;MN\.UPU^G9G}iBܣb?=:aoI̓ ꛇ,p,0КL[=lUw&=Jz歪5`'-vvXWISy HvFCMK&ܧ$IN uaxU*:5UViɝoVY6XYtI5  '!5w\bҊ/! }oYosnz[IK]>+=/so43݂KD o~j[}ciy(__a;BYUm\֙4jh8`I4X"ɢlKw3/:I9;61f`y 6t/7FKwMl`L8rۙ5 R cD. `B"'Y9:~Ax]v <)l!;q ; y@EsIoJ2 FH 'nEkWaܰ?T=fI>fH>L"3}jJq0P)\4^`VVݑ ?t_Ծz/{}kZ9{-BVV9Yp¤kP>(TWN/eY+I2ގ1t2YZW?=8 G]{u#g &N.b:NZZGqz9Ϯ@1{o tqa%^}Ϥ፮1mD39Km&'p8L'3Lb UC8[c&ڦ*,-yCbZnۈ>4|\N9)5ᓛo}if:XTM#*yj $iG\V)'9BXV7+h^!kt.%#=l8EpÙ(o2sQW/vXI@=wBao}@yYG z>Z/ )c4Z= \Guu55FDo['>KA:+,%Z/jM_o}w6|1#m09oj?(hc7s7pKv6Kx|&Euґ&iZ<[w:b(G *X:\7pvf$+p X)mCxMmthlg&>#f~ S0 }iքq($a83JPl=x>Z#~!+jyQ =:~0.RӔ:dKjv4_d~F G %\su+y>cNѼ A6bq9|g_ꨭv˔y1p3%աlfLd $v_ :`W<9p>TlRHOe;HI/NsO8M,ņf온Wϗ5OZ`@ C\*%Pxg܍P{?53aNA(t[g9St#jGυEd{N"9_%g+u'LswD|M0m /l(:T 8qh|E=,5!HV($V-:9?#Z9Do%)V+ cC#)R%kiXt2Gj4&Wqh(i $G3i#+C<ܟ k"vEUf;yrҰVDNP&Fd2j^z*TBame(,||"lQ"s-7+O0UeWX{޵CFY  3ٰonwW_Sk"`6UW:ߍT(tlڧrt/XͿp3N1aO F[ld:מ]c {a~iG%\W냭TF]?`ntEG"kFkڄL*9诞 ;-8[&o.OxzRfow^Aam7*N[">údҕ/IO&SL?6`˝_*'ov_\MbY$#7b g(]}s2%@AuZ]bʒ©U;^EC員^ow%^ G}q }>rCAV{a>oEc"O>j:IBUqcsYxx]á%dS, n)tʞR.P(hs/̵̄ 0& ,vRGBffTT7ZÃ4dr]VI=vERěWNU2"e.P&bjٺw܈?1'R~Y٦[o=vs 9WҌ憠_4wR)ֆr#֒!Ĭ a;( \>tm G{eAp+K=)9cD3c%$@/c.0G*"}Zd-z㦁̸c@:˒ð0S ߐ[1Ԓlz >/Wq1[w76Dt];ۈIwvi(=SXwԞ~xZGsޘC= 63}`\%$ Xroƀ]zJ%8ghe?3z 5DX# ֜8$v$0d:m'^\*!x {bSV 9I*\yF\qS%aqʻ >ԧQ&l(.u'`d3'|61ޞٱPPv' g[X^a?m#v@5LN#uCHO~\_ӆVvQ)M|nȵ[8)"sg~E+)-cD'|1e-[Nt8 |IM^G } @nD$ x}J< \\%hʴ#!E@KE~"JW{ތK4ZT+T`]2(Y=0c' `!=ްB:T*z6IZ=IAH|Rm,Id_+x^ALx#WG>ubc'bd}]=fQ)Q0ᡔXel  ?TY ?^؝蚝>DKII?F%"`=P{N,}m.jl̓ωwcjT?QTXz>@?Λ?edp]DTCVeC5o۱#ib,?|#w \tǺP6Ӊ.WUP8s㾳G+ A $;o`sYL췹] @&z\CN EҫՇ;lƜٹsDŀenw!) %W~%cF @)d$T.C312y7S" n@bo*9X UAE~ S*^S@ #BIW4 !ez9N#tet)D(=6/Υ?ѐn# 7.z+z;PY%aV3>\.яcrQR@hoc/49>; Wò.ӫɀv9X*:90N@߬> ZQUoLBDr)OSv]W:ᠼYMNa4Ch=H)$=MU.]+UT&,]!9Y#Qn7&òC m̃Ԋ|SDHub Ð4?s º26Y_؀ÅZ&xSt!sS`cX(C𨻩tˑ?iB7z̅*]qǁ0r.5r~_e;baʨ޳/NhH [g,&o K̖?P×w :I1Fyy}>H葾j F,Ne:{jhI٭lN$W-iD9b:<ڣdQ>k9C$*H* z4\ \a`6_0:ĝ|!;If˹_#nȕ<,ks~D D6t- M]jEk^HBs蟬h,\m %5om5.(QX_pJ$Oo*"!c2$ݲ7\1lJYQ$> 0hr131ɟ1!ȱF≓Jn|ws6|?FXM'{(goU v`r!>eLD`}T鼮UBߧ6lC yIӃ05KL!~2t@]#0 绖og :({<2I~*jT*P%TȌFv~b^OgfRB(%W-̽\j \^Z#u 3 @|l\B _s.sXnJ/t?s)z N\~t}7q c{1WQf^KFJqh] V%Q[Ҋ\W1yPȦ!AZ䍕cݱ +g޺ E^(+ hpJ>So*X N7-r:DY6i >_ewdW8Q F*u] @q|=>O_~-d83myp97+,^rmҀ> }'aI .^dז.p[M*fFpVIWȀT"ݱ*=D6p7\﮷V/_^߄p_+@B/Щ Qm<&b[[kEO՛ $F=+)V )$ʴĿ`-Q&Hw!OE"9ku6bzEjT hډuWA*Rį;T9qmjMX|y&UI`Ph[)Qa/xJ&O#y!vTw5cBЯ[QL^LRm.q)QOMɡ^#I}Vo€~,jE}2ji٬@dFJTVbv(+^QD!(W\*zd=h { nk|q)tv[2lAs3=YOwy22B߃5Lb>9Z|(h ݋]Ju#*!d ]p-0 dGA@+r"DŽ sXeB=Ufb2g=Hצ/^QwB^6^0KUz0`"8C)#r0c;ecPvhw ޡi ҽOz^L&zOOdPcpsV_6$ wǥ.@Ka '/4rt? *o>bmкz1n` oeH5lA$UuF[Q9IZzjwqt<ϫ&&V~弬}G*mr($MZh/Na%gB|EBrlizv(;J;j#~uf`0JF(Ϯfr Uvz m|dV5/x"Kgܣ.ZQwȾkJ(G*mNZ𖷉>J2K:M|1VT|+xQGȶ$塏KCXѸQp6Zd%]IŗW- 6xFUX+.n:Ǵrq3dyƊl9O&18i46\ME$&hEu7\уG j9 )!a=T̥ZG|=^񾈤ԟG튗 ?H2;~6!}{{󯪀Aw)|Ə@zD.V+{8!wf6&9`RtXA9>k:xʤ,'(э8]>1y`8 8q*M@17ӐB"G1iI, '5IKKH0*1}.U-Uo'# i>;d\'L v?UdT핎2GԴTmѦF~$߼"3sxSQ.>u,pjj\J苄veMIa<:""1>/#=FucmN¼ ʹUgP79;q]y=39n =OZwZG}9lRz%#6 P R$©aڝBKMH)M!m2='A#'~& ^S)wWGU^XLEs{u 1hiѹc13-;>> :?Y}IJ7~1Öv`ACkz/ !$YM%KEIvTt6`LD-/p™&;fI Hv(kKD@Mgj{Ql72-|b;]JΓg~١K`mzfo(S>o\BXO)rU.@~ 종7KZ2׳Ʊ[yZ#E%zNHq q!Srnlz o n8SHQB@u]ǎ&f$ge,q伵 ]|N-Te.P$aGhqD?۾'L.Ō|@ Cf2DT]|̞G,A Y3yB@$S0)Yd[yD[Ȝ]fE Fik[S1`Yu! 6KH9!_Јso4/"C y_Q\t2&=cl/ȝcSb$]`& 䇈8^B~7wVsnH0&d9Bp#?|Z1zw_raØ=oL?k4!Y#ǭeuC)[ؐ6LLmGp!8ʑ_̵0^dSK(yH:vsXO^H1-*;Rp¦%y9Rt19]"(hol`c$ z #M-:;pZvEF)77J3g8xcY=XN͘ҏ=5j-bXUHf=C㱊Cyf͐>dRD:]+{\W7*N:EY V,p"x9/bтhE08v.@ F6 0a 꽕fEĊ |UhEJ'{ײk%8rc6HE(2LZUIZt,k_턱il]yq#Z I#O_jG h+ƌOO&@ꕣ3T< [DPTNI.#1${8!WG;[z EǼ^ԯR\[˵0f,ŷB ?+wԧqۊRa~vq+>Jz[(vaKKe{Lf|6$iPnH0HS%E@ўP=la 8zFJ@c?b&p LIYԬ[)nf;Mq:vk=!`vX&isD5ˬUtYƂkǏvDf>k6#qó'j.f)t75ry5S̙oR赺G }:2ұHqppwU1+oRAR8nDB6 NXO.e$$s|;{(fUG_x'Z|>xBa,`ʩ42P4@4G,$ksHMXF`F6g_*v-ìg'/"dw[5uJ8+$h+܏7E)aFK$c&ߓVŘbs_vzrss*xblŲhvyom'~u9!RL6h(I@b߰>*Y"TʈDW^[5Aڟ|ںjoT&MqfP!#Q vAZ%j¼1$76"rn \p(%>Fj.=E 4fj;4hji,?Mˈ,c[si75fw׌+~1T/ekU.JS1 e*<(:*Urshy ,1JNk4M>`d;y(3Y$x&MO1/<w4|O _W?.&ڂ(J9QԢvlڡ)o5+h( ! OU%c^VJ‰&Drk`FeOk"ѾMQ;ҔFZ "֤gqqȃ,z_C`oI452~FLsA/ ͘-,W#r?HJ7S 8<\rŎe* :gu_8&r uWw*7|sV73mNa687:c>xq:Lbpg[gK:.SM5cO0A}HCGo,8v$V~r Q*1.#%xBCtrm!S]j &DG(4AZuz. s(>=54_օO»r"s YA%[·[]v1 [.GNIgЬ5.gзr)yF v<,'F 0 1#ga~3:7[2vVbMG Gˍ\3^y;o 6oAU.;-g4+^574fn&l2& 2|E ]BYP\0(jA[No7-s'_m- Wc(0c d8-w"-o?je2.UMu]Ƴ-k4˒M W zVoOlsGOk`sTi/r)z|MRퟔEAYpf꯵+) Epu6>r"޵r]mfb-Ŏ{̽J= }'yN Kq,ؼYq_おG30* p c]䳄D}퍊 ;UPhk`pR!I7'3 ̝3۫Gݯ_}v`O*ѫw%IR'q]ސڔ,+(Mvc>ze4 i$dIXvHUŐr\.#S AIx_H-b&tV_¿I8͔X#+ {v6yId&ӿӲCAW&Mv{@O)ʑorGR^`@1M. ;&~uTݺ_A 9O D*7!I׉vסܟ}ʥ?b ɇiЕ?xECk 58( NYDJ~Q3Xl.a2>7:֦AYjB|>5Mjshɰ]Bi-+-0z7! #q/fw0=BVU9Yx8@T2- ޮMYXɚYXmXĕ0 p҄,v@z!u5Ƣĩ,=69U2KQDzz\8'v.hL$h$^ZD PzI.YMBdJp|Y<5B#k#%l?M(Q)r2>ӀzH0ZGh0ШSW3w vmP&ho*ijP+1,JoT22D7.6^Pe}6xy ^ I.O3j <Hă @_ @!x̊HY5߽ܼ#5J^$-6mRzpY.q # OY##}1a "9拥M_'۟t?׶X `-9*%堪tϡa*|yxYM}*򹣢%=8@ga}s<uWY\=۲3?8 wR!P 1=F 1O(P~EW>1X Ʒ.>Np2d' `$;[yPDȴ~y>p}CKľ_2`0;a$5bp }̳cu2`o9"^/;c[-L'f8o vMX"g6r?lfּu'$BĘQE.LL#)PNFKAt @E`3_,?ce*Xx"7ygA*zsi|؏(kp{=f&צD/\5Jq\1UiXRхHK_ujeg.sZuHg:<='Vp;'kF}GkiSwyp6zG;t o},~wl1O)uv>ּ_VސYPaO/G1Fm<8Yh-ۘRu~925,岬.+P@Csg`Wa}Mځ1ϝg8uSMiGvu^nd#Gߵq 'W ͭW<#(ﶒbg KE/Eg*+NUs,lI32xPeE@3ͯ-8z&=uq*Ģz;UoQWYZ7,s*tin,NJ9T&$%Ò{8z4 c51%br2ޫ'16uȕk}x $G^ )*s+bC#[aDjr|ZwЮR[sx\x,s4iίUM~Եg?hG=XG|7cx/,!GE?*nl@_ >1˺[ٝ?35k>1#=r)5ҡ}OC@z'MG:;F`$w^-Vba񌤵n:Gr.124͇ec{+EG,-FvNfV&!6۶ΛVOVh8Y誱6(Q+kOf:ZR7)^66O h<™-~vzDpB#Hl< @%' {#iHe)= Wܟ8\@Fx`!v/  ){J޵kLkO'i 痳~3 u|uks\+ZƇΒHGZ^Aʖ]" -eZKBP򐱅 -o2v g޵"lHvp JqY=Bn?E8lh>i[/:﷪gQ͜n(P+yv̳0j=٤$<߀b=i_1@\'~"V6;SKfvTR)}B'hə.X{9ϲfs.MWy& 3 5|,5 :7ѮiZІLw_8t_P.x*[-KKNj xCK0w4lzb:I<S.q=h~n@'_M{-m~j(h'`W7d ' pe'Ywy0Ǣh=g?zX?,su ;MjI&cB:C %+uζ\W:&+xO.yhѪa(C{jyNVŚl4lÊ4I\ak4n==(Q;hQX]3Ә#e]Q m(لEY/foTN'ru#*+otue;#յĊiy[LcsfC@Ep4nʋX&uX>L-kxNpjzŘ@}p:d ${DI58[ґ%H>5.sGgMNOpӃ0[HubCxdy "P7}]tut vg6 (r'qVDk` =<ȥ<4$x&-z!vSTH[@aءDjiؙN7Z "Whmc_>?*z+UY/%T7F(k?}IgvHzP:5%T/|`D):uQe~Sh>&cAձ2wѿ\!gP2Âʆg Xzܞs>9?;!zz l_I$]^{IeZ#j` ESIxWWNZNR.KlBrzdV*L~y%#xl9kI7{h S&^|{cwſ@"1wkvUgPb!- b;#ę]hcDjEcD.w(x3aXU{+ϸb/A?ah!e=0J)sd a '=sgvx;DG<3Oh]Jة$]'EN~>{aH3* Sܑ8UrnJ.,Jm-Ps2N禠%Cc1{wR1>7 'Gr; ]r|!RʃcAgq7B K=%u"EIӾҚ"həeI aT\܊]ϥDsko@XkjK&EW㨈X 7:VT/]D1-ׂ[WXnʄ] Zcܮ7 `*J> h XƵYΉRdhw[ft D MJ>diD'pD& =SH1I7 zۈl{A:[E66-FĦoĺbUļ$OU"ڑF]=~oLR]}" Go Ƕ dqO֦}D?#˭5 P,7!}fA]?Yf_*^j(z'UV*융}񫲛0|MȤI&:w;hw@wEqfjR)L-#3X'hםMVN8Z_(j6/]B"Ylh_ESG^3K༿(O&hboES*.?d2Ջ}nɷɊAMP͜P|4L6CyOYіo3aM5@ɀyw4.F*ߛGbpT4ؿXޝ)Eg Uԣꃗ%U8l8o@0vM>!iԭ{2 { :0ߞ:7e8gL 1[b:}kߚBD `FW)x;miU]BJSn_9]z~<{y*ڰG#{+`ظd VI ϝ,(DM[AS003.G_*$\>Q/"=@SO",~Vzݠ;;{&6J4$ yAےH&gbNaZ2̈o6@E c>~Fݘ IZf?_pO}48U|;} 'G,?Ч ذ>dFQاʟ.fI$dlK{Rꆔj '^+\yi*~Sg8u؄P6\-ax=wALZ;EىjՑQa[$3:N͋Q2q$ϗ:`#5&<徔YjK&̭qYƐ19ű2|6Jow&!aDO@ :iީ|nDܽ{ZdfiC:-Fn=a]"=Mg&'QMsS׋za0`x<W7Цwzec[{'p\Jب[Mȏl ZѴ_} CRMtu u'f"|&!H+E>YT/Frc-:O2Md2xb99̟,$4\s&jo׉GLڕZK"B$$nHG X hhMJ+, A_6B.ew"|HFԑq HDS&$>6IÛv;`VO%8/ Tl}'9[Wr%2=4F?"1pefENt=ϡDgm@NI_[miv|@M,!$fKn2Q'ȨS{dCU_)elh W:bB^hC6eؕRYde3B n+J vŌQPE 5EmmaSEcPM1grͷ|/Pqv~;혦Z3_3 Z8A%g)i&OcdETڳ @JҕO TdD;fK [aRƠ_Da:ix ՜1LE?6=t֪ڶՑ! ޗm6;Ӻ~qT61u~ sZSX.Xcճ@rLMd-Yҷ݀zOYoFk abIqu;ΨM.gQM}Jĭ-G2_<1zNs)j2C]Ogm^jĺH$`Tvŏ|=g:8+7ynVCZI~itsɆkZk&hMХH\u5=򯣻 (# ^9|?`W'I]HsiPvyr7g^0WK}%|ik+wL yf4Ze_B |OxP܈*XSlq)Ep?8zdh 0 (KWH= aBPmzR;t mS.[|ͩ1<./znMW0 տT,CBla>`#2{W}g]B}Coj5/=lNz)~ˑL_0Ӊ* ǭQ-T!"O] )tKm܋W˘e^% {jX~UOHgwIG| &  - bV/6l&C5bôxQYzܕ@)iSa'iC%!s\u~KBN]j vRY|6Y_Mf,nc)1y>t0 X T O63q`[YV0tF&zlA0A''Śz^Β{ȩJGf(4(j$ҶPFy|@4 y)h;Ėk, r-~f 8tY!Ⱥo/:3s-XiRS,s8 LK8Y9X ώ/9=iNspCDD (#x)8ێ^kg}wsߤdSd} q|Yo N%f? 11u9־tSPx8 ad)]ql~.+|ԊZ!<ɲF#on3iHb ([3GYe[3tlGftDE٦nȖ^yiқﴊ9ma_zRM?z6dO6DSU+,j'mvTۺl̨>8R\ ~>ǿ;2,oˮ, UTbڴ-dK.,.|w1f3D%UPkwS80 d|xv뵭xo+Z❪ e[[PH99\o!B\[ UVExC|J4o88m{(E 8,4ǙJ^M̀X8>b $)@tpe3ONg*-XsFWD ȹ}d o  n2A-i';A|ZZN4((#)B*x"63o^K,qJn6'^d*f@Kw WSbY7ՔgPB < wI Š͏Kf D~_5 #`| b xi!!EdUlpUy`kҤ]0ƙH0"9pa;eՁJf\~Յp??9 t ]w1{*p7'1> V&B( 6FaI‛h PL rAgʂ^ "MVZ/w6TQFjJL;;0> P1ޫ딕}nW%Z[?zW<حeF"9ky`^w暵(%E[M1ӋN"@|;Lqh:V*j.x@]a!]v7U2m5Ibe{s:pwxUҢ[1kW;˽u!5'eu'IH`Gz0Y0VAkB0Sϗ Q5)"t_V-^~L0tϸҼGCIã?M#\OmAXYOC20^ދkGfє3B0"!6P]&z#19/uhmb܋]Ղ& Rd a?^L_נh7ސ3_3[rU_Q#J* +ۣ>x" Xk^u|~>3q7oA}c@ޔ>@M#~H} 2l4 ϛ{<ܺ_1anKF\*}NJZ&<aKZO$pCi7Ndz+u /,p5Uq ph]5+^m¬LYVA v4)0oa* z|j%WrKwδ$zWkRhuD?ΰ~"??n|.c4)Xy#ǢcL[BFѼraCHv? }9nٸn'uNt#oڎlhp"zFxW$ mt!rGM@<۶GdϭY48eu?!Ef'%)w< cmC;|~AJܭΦ >OQgM* M_yĬgEK *M #(!@S3/E<3ݓq,3v .ǹyMϻ2'3e=Nj.?b:ҫsNHU'T$rz,ؼoHC(}_}ݥd^XZ;GU8ߊts_/(ZFYrɓ U:}{YX`հ]ݬwA!F,19 ח|<%=ڀ,q,"&I8SkQo&-_#s2(!Tw0bO}H%ŸVBJ|;- ,ðXzu1jzWsi{mog)>ɿ{si@!; ̓U52F"mM?fW^yĢ:vYq HON݋MSR뀘7ΕC@U`_8`a e#0+y # ^'ᗈq:Ax0"B.#~}q1}8&{x ÚoJXr])Fhj͐yRq5d.ו;%QY3G\U#[:AG:  : Dȱ{Hg5CBcq, lQ`: T^x@M `KJvo*nKS^V!o4-ffO7qt^@G++}](! v-KV=eDXCY6ZPx(Uqmfqe i յ GEKvX]+w/uY ,4vX 'AI$ 9b=fcPf-Ľk K?2vgl4ŭ 1j!P9%+9pmCIZS.ZPyHj؉+#sƩSxhAsuSAA^^@cg{];!} |Mq8qtL\3FH.?<)d˼&-qǃqK?Ǥ҉׷KLmNrjCJ"o!*:àΡo?&~cė<⒌>SbHY/W>x8*1\L, w%OHՒU-(Gq"Rƭ?nS@>,~y;P:9x'o&/fcwdb.7󗄦?Ρ3'ʎ^Ԓǜ6z@x)i5̉Qͽoҍe4[Tt2'7%$YJT+컓 &WM,b2qjNu0wIE.oU776 #iM,lXĞŪ_ZwK 'x<|O`*.I;Q @#1:5}WЙ8|`cӢv9^(;]'_@4)xr~=arb@uKgt0RL TCu|\6) -'"!Hޅ~|lt`ok| ҅4 |0<#IZs*T%>^E#\> `$`ի/$$7U;cSgg!6Џ༵M܃~IUmÖ 履Xjo]gƇG@pȾ$'Gm6ܵHYdid9s5 G審}ikZXYϱ6*`)O]x5ZB?ߔ,mjJ 4{N1'Tyo-ǭ"99CIʲ "ڜA_7a" JtQE-em~D{x:?ʋFPmss)X2[C+qU7k+q@*W =L#h2{Z.$iضssA,[r~k]t3Dt@il&i&EchޣV Q+]/71 gqٳ4`v P&W4ڢcYI^6 |?1{6y/V; ,׺Aso3ɜuy& M]-5.ɶh. T%⌂kUw|o*b!M ئۘ0nNS/ȟ­M#;aT'8Q J@gbc'9'V5V苛vu^ņ;9%#=284P>ܴV<Z rv 3oG#Z5|ϑ z][= p=F}=Z,C8p9mPfKjL%n+;$1K2}O +&ӼeR|Jj/.2+-'J,S]6&vl(xC@Q|Dy<>Aa:]DnLNJy-.JP̖@>/oȌ}}d&菸<P^FxݢC 9)Wɻ.^M{g[ _ {Rys 3_ >UϽn/RI?rPGV @tMwuk>f q! 9{ynWC8(j-h9I=OO_\-5_l^x~ln״jvoU14[GxLޙB::i b^KJԇ=H$F\X_qXMDD@M{6=a}/yx׫]߂|{Ey jJd>fU@v Kn,)>sE:0e"ہ4rBfPbaaܒ^ڐ6ŪTX7y!= Mȓ!?݇Q\ SKC'X (h3 V0>x;z& Y,c"'q!RhL[6]C>](ȱთZ+7@4r/f&Tj1pK"~G&lo'.vNQ,.R;}9qvrטQ![ ֵ[˗^CW;TcI_\-C AaB!۬BW(j&LD +Nѫ]po@/Υ$Aq7$ma 8->Ӯ:ԣ'Wp/?v\ ^~]//Vn@̑=6m2!ʹi:P}M\EmB(?)qhI^0$#!)O%Ns"'9gU-9W=yd}MS9LE-Ph7 ~']tUab sd1}EyYBw8x`B#buWFElDس{i ڞ)1`⟉_ CjTp<~]V|>j$"N #DJs=Qӄk&YGĤPm?Vi9a$,M1z[Ysc%42Vb8jTZM5f=L-X<=5ݰzcxl8r1'M%?hx<ɒdi`B ԋ߸|jld-uɷ 8\ Uf)\ _";yM,-ٵ\xO!FE4ww/{ph 8 NS}& pcs_i?TQ@2dq_<ː|;pR;)lbXV.ƷL FD;߽\~#J$)e,m_I@/MycH IX,ܖ2F'9BX=+ƒYjA2Lj%N w[ֵ^Y뱵DJp-l{;FшBe4 9 r8u%|- 2\QU`Ei,I^_Ny(wM7c{ QkFfwmvW~]^)Qu[29 4g:E w:a0!qc-QKM:c(w 5GSa"y8gQ'Mv(CN5/v=P9~)l0+%C7rW`{toIufEtMBW7Ik?<.bd ANY^:OYhMt+#LZCxuD)K/oI\:^!ą@[L7AX,75y;ɽ%¼ ԁ?mת3Urqgǻ[Snğ NCF~pidm5 Kb$ J -140^ݺ''Y>(n&eFHf_b6Z}׌H\WjG91F9pñKj-ǵX!2 5yzo"\P/\(h=5A21/`:M8 gK Fa [zo4]' Rg7!ȹ7z`C!~AmQzYڳXhp'(Z-JwHĮ+ ӦrnA1Ld5I 19\*عަg oC)ocJ̯4b KjFVZH +|>p5Q{\L*<'BP5GyT0S-`cf̓ u<,Mtdc-]֡9FOS㣩c}́1<.A:kaJ먫0RND#fV0n^ FtӚ=G~eAєR7ls=J}x RѷCf Ė.6Pv޸e%y-%1 {FrC5^ j?(o4=o rw1TR],'WM dAFfF˕XM?+ʸX]N/ryY&|?qlf9kGs<_e.;mIvuӑ")h81hA#wϵ>hTC#ddvٕ>pNƸh5a^ދolcGZ> sҁNĂusތ<|js騮yVCܬvpz)42*,x(uvñ˗xZTv%jkǐ-ݪlߪV'$˝a4jPPiKEuE,kc5ႛ?Óq|vbmD>Ě1ndN 0`δ||ߑTbt2,i${ `SUPrAJQ ^oEx5,/A}3KKoy4l/Sv~SI>Nt80GKSTV5ZDQi `'^P`P(v}ᢖa&fx=q*6x&Loڲ]mքUFQBSQʮ LT@u$5Qޕ3 6Rd)'$?(ܨ]3FC- A V>h4hG,'uaѨ !P=ilZ[?p15ut BkT(슡LN^^)z&&B[^ɱQԅfvVZyu-jϪG !vRJ OO7l!aP@_ی x[uzM in@W=KߐvcOHD340j/B?jXcQ`󸳰ƖcB1A)L1Tƍ7 6!~Tp,wGj,(">ٽ.QIXIq<{;G2LLΦFF"EK@}Ɵ᭔vBz,*s.vLhazΟ\c1ЁQM袠NQ\ dQv`,C0Uvgh|s8lP8?f}ՂtZt Q9%!UbwgP@54}|VB68NyS%Ik| оx*zsh#.{ co*‡7~iRG~/5Wa^|CfT.嶿lQC}!y3eqn hG:Nkm&87\5%,;2 =?ᨛ苸!Ĵ|3-NvQqOh2Qs1 B+36چ'i?g#I:`+Q/Ƿdy>q.A`~iP"E7-c}%c⍀5a%W51eKqoc(zt>RT,Ah,R}'C˛jamY"[%VpΐX%O3PIRn#]e?sj$}FuM7!TeM^SL 5RfSt{[Iymz.)@6E.!m Xl,Q-<잋g˥Ȧ@5n~z,Q]kgwڌseƄÝܭ@HڳP ZDN%sɤ첍.G8|Px$Ƀ;:LRy`¬Y|O^1.W/VEP ; 3sa-<6-h)Yi ~nFd"e5]ks(f|1% QMv!-!7d'% FJVȲyCgwC/ϝ舃 PXuC,]8e7?Lc9pY /5#ntAbY(N\br9mˀ) hxalLff?.ːմm)ʯ'C5gUH/"sS%wa xO^ !fjMCrzfW'2zkmII^ɗͺ&Nr3k)\ȉaX\)"T3UZ;EHko/3M538%l.ۜjA"Cd]ɚw\>Z,u/t.|g,9,VDLF6x ߕNcSNƇ!55 FPREg+tx0?^y z%-*Eݳya9[ì?4=`~-c`n׌zqˎOOV {#Չl]+ &~rc;Oc?!mxnfE=^&} ‚^z~aY;{/>*\9i <#wiAWA%:P'0)Up8( ڛؗg>DBؒ]j3*nWOTZu1zBe1+4KSwu]FnjUmL x n~,3eEfu$3ݚf[6BoA62?32iFZKf3jh_g!|j rbV]ݻ;H=Gy(-m2FD"e U^Vi!YG,&Cn@CW0.#l04+!YtB\x; \KCM ÅXKf.@PpnްFD5_[7)  Ūp *M9mQUwOÁ}V[ sh БX \w:]~o8/jyp[3dNe ,F%n[QDf6?|/hl V'#ՎP0A*vX*H o_zfiNN:OTƋ V}kS3Xqp>*2c+r!Q0sB \[}u? (ӻ} u7XJZzt +WmUu}ASP>}M8zMMTUz5_wioBG6O eJSl}7٧NڎT2hG}xQf/tEMyߘ!ݎᠸ>u';]czړ%DrL3g/a4KFF޵-b07)!W>I8D%uְ-0L w3ġ۞t L^M.DnY>]>msDOY wbHheކ\P<ޠmC0_Z@Bj#zx/S~ݚẕzOʱlWt;bta5]Vi0+SRpS;JAEh.ium/kMBmTj+Dn_նFFL#նhf+$.R{]N]\B& XoUbYS eUX!-9 瑅KPnI#JBb"hnX`T n0Uw;+E C0{ XDJjZMQ% bD#|A}|ɷ췢s3幄 /m!rq:v>DMhIE q܉ǿDaF1i4Ӝg;gFJuXQ% ;U# 1w_$Hil*W=o.ƓFju<P~Q})Ky̥LƖ| =mnA&kPOi2p]oOR#K<6\3ʘWEhxaJtL Kt=g?q.(n&N9e t9t%-sn6@EI$=+ 9dˣS6繘ICe$Q y/cJCtM]qɣPfBHŒ~#u٫Lt䉔st/](̃}"! wm콠ʆ\<_VRϳp} Y@}F1-X`s25l><%0.h*%,WjUF2f[a M憯("o|U*`}hp1v}q][v+>/OJ*A+I$.a6P \ MYC+P:uȣ8*e!?)%4aJ|[et{jve`EoSղep&Ɨe1% m9G*'tZys9?o"YR抠wiz|H%EQ|f!FUOWZ {j]2,&Sʷ};%jCHheab($#yْ ŵtǭWj}֛=/,mOz($<1jFo3U09ؑɧg-攍cZʝƫa:_/[=Ur s6աM;KXm ??[M*\yſ_x' 3;Lm[xQ?vz4sB-'4D΀ѫsD̖s9{EβӉCQ;aa<.P&uƮf+(~|M',Q`*)vraFEќ]02A%)g1GD.p4l >5r^w%,49THsLqI ITY.@W'6v9C[dNljV`B~&WK8Vg  b _ /iO&W8l ; -֔GGbT|JTF:mNE"6g%1+lRfogM嶻݇«LU(I-U P18MH?S,Ը_YGs w5|q]/Su023 M7yk4')Nb1ׂ A %d X/2\;nޞ+e;ڡ<Řy#){Y5vya~[nDv2*0!EZAyR9TdzmtBH}EhÙjIq7:9O`- 0swAV䆾:q`sQy`rh1̭Y%G6|~ oERr1q%Œ)dc[0nddFQ^]"!Qhe"L<#o, pFo05 >{ < :Ԕ^شPjcєZYM50MDr8b+dE G|ݸ 2}CW  VgC Hd´c8KNzv+X4AJ&E,D j]SL3&:)}Am9 /7bC^.=s*]״ :)d߬ "& Y I, 5=,Jx# $B&FTIbINA"8 ^v],} >Da'8bӭT7p/ j+om""!FܤKӸKb͙֘g,5]/In0KSY$Z @9vԙ&21̞l#Jq~u9 =VFff/ ZCTd2 יPyNW3 B,3t9(?zY_7k$t=i!JQ}r]Ѽ(̑(?xG>۽D"CMim̠Z<"M犈m>DX/nˆǫJa#$byD倽HTT+.{wZfpK#_p]tLK$/--Ik@i}I*v.#`/JC~PZy5&U,wA]=$ oC~o%,+p/ V0ر1,;G?.YUM;I0KEqE]JK Mr~]wƻyy Q˫` #L ̃%k6C[K3mCN["JLe6a1cTll3ÇU4*ueytvEA=L]|RC q09:*{ Q ^>ոqz&ěab# 6I1/Q* <+<6ǴtE }?(Jqk.J80x>z7$#|;Ϋ'1 B^7X}Si(t\{͕4t/ 9+8dPQ+HL -cA:h98юF̗ sjhNb?WiB({eW+t5k|ؕN1>x?jǓp9jl''-~)b|cx$WdHPV"+zgn?K.7 ÉKGq`4jWxiSն3􋗚𣢎 |G?ٸB=`Aj`۬ ?]osv.YHFt(VʨVRə3=StuV@mzfNsQv<>'(l=üsO L@Cn 2_o^9 %:~W@jZԌvh-F{z@ƈpHJʡV7(⨿|i 6@(Vv&5YJ_2 {L# bI g1J^' $Fu#@:?g( OMv~&0U*UkTe02_3-w(^q D2% Wͭ o"-$\ ayKn׃*j. d[z? |׾PHZ[a==>J_p?:TIE`ZNbbɓST-G".YY!^ u`~MkQ&9Isvr(q$QRBOREI^xrwxުT3MƎ jPB{+h,,hƠ 7TE  J :J~N]@Zxޖ+ư9P}KZߚ] 7R2j#lq3 s|? !mcPDXmX< zo %,q?+NK@dv Uy,y(-L+ k$X6+҅&bL>E3EX)|HpE̖O\-[ sc6-bvPWd(wm02XF*X|zoBm_ eDLFNK죳Yah⬫WZ Yq @ wƭx$"&6:;k9ql}ne ӝf_<<*ڃF7*(d@yz6uF]m|x4$"alh4ݦB|pEhVO8PH捆N8%l3QCs5#.oe+%jG-7xݪl,6IJ>r%P  ;R$7,US_:Iaof[)4yFɗyeQ9>Ӡ#6&^k,$s45yQөFON!uYU }/V 3%xK[Y"Lgf[^= i'Ib1J]k|k]RI-82cqmu>X'd[Җ",ot݇/-p98V[ڋ m@&G0Yú /x&]`) GV#kBm׎l~G޴]˴2Axb~-6Gq#ɾdۘi 7.?Ozp£WJE F&SMv>^5^v!24NIhtάvKE )c:¸6LwڽtšG-F$4I}Ahqx'c_3 +f<]A>!ڤ{4_VTj=p0&&mאz8n}(#Q4+ue?llqL5g-׍y|ݚff*RvK-?o* 4 h0*h[c-dϠf ҷg"ؾ9vZQ:JJ\F1hxg95/ɦ5cqkup Ʌ{_坑xb7;<AZꒉxZz'Sloy3^B*+#  t ^)/Pl#Ҟ e^Bd%׀eIbY; 6%zi}rI%Y]'| r9ƨ#ΎDדGnص2[_9>FYc]y޶NF@AÎS.^xNegɔ @]~$4= ɻy;K} pgտS Li=*O@T҉E )5.kdV#Y.@5c ${oZ Gw&eRltXLE|C7,C8x駌,,Gabx \bUZ\TmO'm޼SeOT2Bf-ŋ&4 ěLzS=֞鴰`j]VO0Mgޜc\un}Am^%꼄N⪣.i~_Wڏ1j qPɬ}(4ZJeӆl먎.QP**@_M1wArw5UMd{p'ZNZ M ԡ7MfBA]Je51uLa v(;4=۽b#Iӊ<)pDH?[Qb!uiTbkBS@@zXͨF&:m dmzZ՗FɎ0su9:U tq<(e-rZUIֹ55>+h7K*:jӨ"sA;e@;> څ[*:3m&Q#(BTvh-QG"/G[~qǧ'qQ^ }(@YGYWF;[/F"Ov#ŷ ͔"/E)oXcC^MpWq$pu{ևU$jo%7-)MŭئVtD,DNLeǷ@5 &Sk2vo&q+ByMSnOu;AE@^IwXzDDO [BCJ-,t&kWSG렷ڋN]<`z4G'_ZK4k\4ڑ5h J:^ojGcU"MEٟ?Ea!+CI8Ls!_}kW|U&Zh jg>]fPT[/ͧ\#B[>;1YKILQ۹=cDDvuIKgtcmN-YNNm6Z.\T?h֋tہ%iEܖ$[|N Pö0Inf@S&p JN ZI}-p^~yѺOAݕ`[BD$`Ϲf3ť|4t!5dr3p -N¡ET OD66m uL$ŷ&S1&'[riB"J'ѝpj#J`50"W6o"#qrd^XHIdd#;t_K9dVׇ$V+X)ȅ^ݵ$څ=âudv ]$7<&(Ķ*s`4Se9 +_ Q]V[L{se3lQ|[L.0OTQPEdy}w^i:ޠ=q&WHG-9V\8cS=NCdb I[Og*yfLs~*C+ RFP 48I*7Ā{  ߻U Dbr%wQK{ {7+B,CD__j@yd ^WӴbkv&tbU4& 7/@v\y4cdj@. ;:|ų6sЉZ^+E+}7n75Zs.q!7bP{R~ja|*m=XDUq0si5v0c5jCù^C[`F|淚s&yL& ]>  ύ`KcL˲mۃǵJb>v5\5rM'-bpzSm˽N;*^'8 #UFj_(vEZR?qb( YP'8."YQFm7.xm_ɤE(1#+vN(nߙy0t 1GnĀ_`4[쨌`?@K E%+%J\OŅ[d GĕS i|NWI)h!ЕW mI^vr S{838=*6璮[ RFNCS,0ڞ%{OMeMƄE"Fezة^0`|Lʏ)j|acR!vR. cd :1ALJЫb?I q*^zDZQ̙l;cDuDtgysr)oV&d7mH!Rc蹗njFa>Ǜ9%!n8AkHZXH*&@}0-w68j q<nx5LNԿkh302h>oUOF^3?|aBN&#$.[W\c;B3,E@Jԝc-u{TXYNբJE{IR.{:o5;"ܘ)~cܕD |rUEz4,bQ[;WBqi\6Vnf䃣0ҵp̦oS\W˰;L*7ѳ=LJZZny!x'bxrj Bl i1*+n3M|sQ`cy Co˕P)4MK;ǏUd)w네XF(3y@z.%w> 3cqd6A 7AH4b X>":SuU H5@$Y&\ThCHLz/PRM*/}7^5H?.q]F`RQR?l[J2RRj# 4TCYo19k#aGͭ' %&K(fb bzL&^F ܎^[IT5c$=*?<03~G>pHJ$z~=N3ᰌH87O*DugNOG`lm +t޺AU >kX{՜ VFJa,L. hqqf#[(L4pwAR*{H1/Hb>تqۚI͋)8BFGs;YYn{K=.fpjܕon˼0cCR05%@x\e4{A=CHD N a/R}^4'N֌^b#4Fu(< Cxjh St-Dd~D&+Ɵ>qU_,SyS- ~_6̆oM >G /v0@B~ ,Do3ц:Z#!P8<.U{cbp:8} \Ը(wqقԗC#aiGo)Kx豎@:W#<] y-MAB#ޤ)JㇱFyzPRx|֑C4_T8\a2:$1gHH9\3%@|aUtRŲ5 sj'$>D>HkcHH+&m,! q}x3bʡ>dGJ*`⮊ % HW^6T_,HaW@ר ## ˪uտ[ %tS4˯1p 5)iIB;N'LZ{9xRҥD|۹oM1+[Nl7A\0:oW$% ʗ xTc"CK:$b排%gEtKEP.t,ҋM.^:7)bL!k<ӈ2 gP{;s/ ]A:cxOɧ’- q㽎jȀ;[XV#2M) QK4{q>h,nd4:q?6c$9j {ġ6nD;t'EYaG3 6Mߴ~iIy|t>жow$'VB1{)Fm_WQvV n΃9Agm~W))ۦG#x3V, >Bw7/a.ʁhDvs4ˇs:D 2V*l|4bНӻ*\ tw4Bvg_[?c.W<}hb"A-}`f%o9ݘyDǥgR" X1 {E=DM:ކ^'9Qجrwwo #B[n^]g˰3%BNx(N6n9z@d\;2Ê~OhAb"S̴,ޒ2WV0b`8(ߑ{m@]C#uy *jj:nՖXٷ>^yW7p_1AƞgwrKA{`OmbW#!"W,)^Niiq=wcбEig |<]F)AWExegM6mnZ)f/En̦n'Od_7It9XHޞJ*T[\&[E)QS2xB}Q14c}uy|M,k7amqڠ2`X;QDŽس |n +E@!N:x~LO}V_qŌCt/<= ΅5A@> nx `1q0_ V\Sݸ.{}lj`O&.u[Sӻz{uj\8'W>6d` e naѭ,yfc:[?!ii'T1JZRy E?da۸ÜkEc)$*{O'ffr/"IH)FKfxorE5P$CeKݻ#<KIƦֶAA]E wguE_i~qX^C :pZ%ObR`M8 Hý(/ |ܥVkФX8EΤn|UR :ϵ6Y4]`@(&;n' 1K'IL.coy.`D-:٪ǥMfIܟl図$h~_#]6c3L=>*~3Z~, =C(o~dɥRٞp˰ ah\=P=PHsnUWNmԚ_o<;sd0wy]1mj@ 8Ł| PZ1VqAN;j=1\^PC2B0Ej_HTJ-"_!kS>KGQB}V2)ӥU^ƌ˂o#ccc uzV`d (XE7xf"SE>,+=Dv]?wWtr}Y6]T&Q|.$?A;>SGa3jNA3C?бi0~bn@q0pӈI_VGam 0nO3ةݺ遑XRQPl^LxĩDhEƹQoj+5fau"a$$-D~CG4107l Gו6!Rb-o,|FE^=UCUdyYSZkުf^<^ ,Dɖ ,e(كʚ8ЄBmG*=l >.X/YN܍U ,=5Jg`[7P^\0[Ks < G) z4 QVQ2= |"ySOa/%#aP%O1n~Xfa7v'&F@+m\s-i- v8!("(.YDAwngH;/@UmpSQX eKaudo󿡸ɭDuĤp (BPMN=@_=VV0M0ޱ7~Ly|T; '.ӈ#&_.ѧk\>ÿ nAW֭?FI{MZ4TahiPjjXu0틷 OqĮ/q[Ep\bZTXET$埕px"P9=Hɤ0WQFOE7sĭ=@K; %'P"QS hoJ^:]O Mo7[Cj3 ,zK)񃭼^O$;uS|2([fP;#&wcĿ+\ȵӪ8\` r!7mԎu 6[{v0 jKMN2)PwYZj2$C 2.VTMaU6然 _G2N1na4:i^˔(?4y&P k; 6v"& #NF)ӦԽlqFcdr g1m-ye %C˿GRajbrh$LcAy8OSYxRdU<;Z ?=\2YÎiEXhA6h75Dda9jهK,AS [t7 /B5x&>8bK(5}&UU_55u+/(ߏ- ?rٕڃ4#Z.!˄SnhG@0k B=̾i:g隈7,\ 6Q M6Jy ?m; i߹G=EaW`{&8|s$+ ћX,l[gPTj~'}lKDzsY,^f"8F0W!JOɄ.n0<:Fb1_/R_|Tf2CxZc⑾ob Z/#D^ kDP, 롁yC3XzDZ1tGb́i³q(͗LshVSqv#.O@@4ڥ& D2-lw/!BS% $6TC8+v:?7lL(AՏmoUrBQmnR) $HBSw` tBf&tx/ N9JaEMԤl;3Ty_X2V<|JFfelYI:@~DM涃5 V/ڀ6%M#ZyIh AFEMNA >w}"Tﻛ^qnROa>% "׀I&PrH>\aފ3gH\_+R$ChDof@Ӣ58ZlI(ঈnݛE5c[H:"6NZba-']0%ˍ9 ys?h8c4ՄK sߺ AԫRe7U$xŘ{VP-<眇O…&U vb#Hw;̇sW \NN5)ZP&Y##rj@Mt'C^ƹDpi 1B.IIE%[bȖȎԘf"5ޮdQk_6bWP0ymIb.n켇V 5I0V.qe$nֲ0MiqdFqHimc@czCDajgK]M*T`)$ 7_[{aclIҏ~E"S_t\ٷ'BE}Z߃tG-VFFю~E,\!USѕw¤h;?DT]MHxiDJZTs%JXw5XӝF3xh-&aTg Nbɿ*QNQ6.eݔE, ]>X(`"o$YaA0 m{}L$dȝ@N^/3P,ٻv\P;)4YUFߞrDMqy=̅ZPvLN2 &>5~M)43NH%ټJsRrN;![g1ogBʔ\⥟?ے)1k*RwqY3?㵅2ҳeՏTyofI4JM2ɶd[႐۪m&&?MD>BD?lk v2/u8O'`t_8o{؞h M(KRR'!Ðx\ s;'!ޛٹl툧|t!mI D5[B)gMLkn+xԕ@_ik,4j071՛`<2#̵0gwo%o4Clޜu"o|{>_e8˟dy'֌Kxl砂pu'#e}-2TѲַTnM|Ll7#AR`>M0rrp7Ա7cs#V:jrgi˾_]36D8 TDΖNcwA.$~mmYQHw&·o o[x&Jޓu+e7B$*a=-9'Ѹ 3.>~>14>%SJ \ԣSmyil]$eNMEcEA2i!cuWkÚ0s+s>"s@A%Gng06eL"LLPN? V&Ӊ~JpDRֵBN]"GZ\p m>~N.`|yηvhu@=atQQ^TI'.$ TDA_SQf% @QNupFħx6\$!hpu/$SnJ R A9s q_=հ5 kžAJZ^B{i"U;b/sEʣJK $w]pt4(>eլ'@-gB]6{Gc+DmmO.p `u,|B1~qZe_Qr`wA* )Rm$- :nOva*x9`6փyy"}mbU>x_w}h[;v$U!ٯqx h!JY>&#q:oFIUzoR3`TPO~HYo}+a,t9WutaZ E ).dT;*JgF\?PxBgt" = Xt:sIئE_.(܇LubD{M }ƓX4B'_-_l`=_UG@z՟ 0 "=ceuhRxKbb(-PxE5; Jzz}n·lGJ;"+:͝Gb0PG|3'tɒb;r_O97)2eI#*k&WV=-ΪEcWH1kj" 'j`/R/(<TEm-O#ޭKk6bG+G& GXŔO v*YMۢn{bK!&<0#&M}Y:pO.mϥ|QcGXS\qXW!ݎ Bfn{IRX/[N{5Fr_L"w>ݎ|T,zqZbF¹EA2r׺(w}맄w5+̍\̓;7p*6j]`W>< )f60 CWXJߕ,[CvCnw_k<(:+ʸiRzFȊT[GRjpj`?3=(ԙwSlon-Yt$,Z:8Cˇ] 'p=$t3[ds,UAXZ~57*P|\Ԓ|:~YzEUg^Gxʸαd~PIoںk.…B8w>~Rfqa~B]%kN>OA(݇.mshugK;{(Y q;`$ʚ Z݅Oq»X,[;{(*#/ce7w g1,)g.etHb1Ҝج Sy1 c55,FJZA䑹DǑnnjݥ+&P# !R-)ruTϣw^;r=C~*g߯^ʈD#H9w//hr$%iWYz;;+Bw(u LP/21lYZTD y1T@B.Xu]_2x.©j`+GG2ab1Ic``<0KJ ٮ+t4|q",LfHTMctuq;Py[7D2k6wMfTe`*qCUvޛP@?aWSe*Aǚ;OΊ;djx _fZ̝Ӏ:J]6vPPѹC(=HJ@.Ϊ ~)آJci'c* JtFQ1^-)Lٞ辏OFZF( FA(KKfva  tgKA[̣ `Шm9EaeHDz C>B5 HiUAn{1ѥT0=6LХ͹rj)L0Qs^!YokP0Ղ)QxHxVmtrYth>pIK dE~:`/T7);cp[SQQRUr6=q+9X EL+j2E.CZ@ŝ 3k*H#/㭨$M*w iY'քJ&~١y{A7͒\~z&Te@+Y(z=IPkډFOCVv}+f'0&O&75;>O$Rf&uLa}Gkd(FɎhjS):)0FrN|@f~LTķv$C !YfmH)l]a'3MٻjQv r-', $] ύH#˙<;$QB\_`.maFޤLghJ1 DC#bXˮ?P%b*>S^QL[+ĥV=%yeW:9L/ *9E#iB^Qf t?!XAӽfs qչO {Â_bPޅiB.5{4XQ ZP ni@Kˉd B2:CpuΊAmXb!LD6]  A*iNbx5s\+|zͻp"78ߩb[to0eB5=Z#1ėƑ~\?86B305~E%ؐ?>!cƩ.L  6ul=h?d24~T;gZ6(l_]EyS~h.(M\!= ~\ac>:jO&/ ?bF gT#3TO?ʲ% Y2TƁ-sqOطǙyIC~@Ron>Z;T8 WDFَ0;jX_s4P(BWNx|` =y@|l&6Oم%lˆD%X@Pj |l2d>Wc!Q㠇2ugj.efZyvOZc'DgLR9dX†i4F'_ xgF<*\3f{EBs$ʞQ M3BC%%w$P;X*O& t?xpEx3$7Ӎw' {-@6fNΫrJ^/SMCEӿBчĨ ѱ#ep8%n1Yȿg4n^>:Cy.ԩAėn`[>%U],<:?.z-,AN?^u0$%4j)w(Eޒ$n2-I9.x$Xg sξ<14r@ΈenkB7%x׆q{ z.`cLj9縬Wt; <ں|^~J{Hnek8h{D'-KER]~x{heaT:槑VۧRaP~1yTI*Sqg ].<>Y0s,Ǣ!RGxΉ@&r#79 ,q8{S /D~Bٞ~Uy㐋iKɄL-a%0/T1L4g160uX{5KE#T505-{n\2>0#ӣ*D!w:@]Ym_ 'x w9+Ly/Ap3ӢOm<- <[T!ZRn?#Z= CH뤿/Ɩ [U^bwXIOOU2u`oC'Ҭrݚ_y}a坺~;YY֏|f#v%7 -cupPH#d:vsX|QQ`H54Ч"SBJ{xȨ2(a?8eDSrL8Y3 p?YH(Po"y߀eIι:NԾ  'b&X^}EX',Ȯk퍟/c]_=+LEṸ8dO#t0,T9^!ޫ'CU,|V!{6 A];4)bڴO@>5*6oȳn鐳zum-≛7So>.4[jҺsBktw #AnIǷ3n">b(k梳[Ջ$&FxhwZ <ڧ xFv%K4Rv-lջMT4N@Eܸ;;ﭮlAd}<3q0c)fΒH36(͜B2a-$o~ƟiA]Pr޺c1.ڂɤhX$p>[kv7'y!-;e犹BרT?0`FPsMPw ]oz6$_D|,Fg݅ԍ1-gh9ȗt$ĖȐgI58Rhsa`qnM)f0ۀxA_7{셪?]@.MvFuϯܡNJ\rrCŦ;{T4Nx|m\N%(gƹiW拯7Éa+!ͬZ 7Aܶ c(-?/ e8q@l4*SqJ!&!Q)e-=ĂYt)*RK1.-SҕklIB %EY(pe@)7c#W^Hh :pʔ62}CeLU d7$+GFa.O c K2QS nN6GgWrO6:Ӛb9j˽!W(~8& jq0.At[6v{QfO hY41<\8N Y9$]U" 'u߰όPso$YܝHJ392tMxodV,e"꼟DuG(s|rF}?&* [zH?k˰<7]i; s0HF)r!B0 >܅*+Lh ύW*N㺣ߕ@ =誟oy|JP6f+Y)f )& [5^bn#c 52/4' Dzbr[|I% DQ[4! QhKM#l=aoAqi_FFy‡-%WfNwQTlZJT5 \?<3!geb? '[t]ʐw{IHJMk PTUY ^'J1K@Ѽ[[X?^1XinDx8Pŀ@<ҷ!qjDTS"?kgk⽕*mrWbjlzg|EN ]h 座jUA ^-w7Η2lNь}r6MWY7* CPLL7?C4[K0Cn2t3^&,gХ`L"6a^xHņeco؏[R1<m=xi3+\I :he(M@$y{Cxn5FH"\^.A_dLXO𭸒KTs6YhbF/Zj>mDSg(aF9t8<~y5[H䷜U}pbm' F9TS"t"*Eſ jr -gn+8mץZUVHʣpuC<>Q&oŷU|qDEd*;H:AXǃ%$Jp!ӊ^>8pHȵӞF2elQ_iY{+w&¢5<?4s Yy%ZK&S;@Jfl6~6 M=,JO ʤ]/kUؚbPA/ؽbJ=ψЅձJ=xPت,1֐%,MRg+r&+sK鳞XZ!1vjdwҲ# d؏:s+\&/m/"QO} *E> V㰝߆ 7~ȵOm i2m *2hPl8d;@ۡ+tϷǞ>ۖ΁xq̨-%@#=tJ1>I"C&H3IxY}ƧLCW W]PyOM$W˝}OC53"ม0P} /.|}_ -uQRi3JEM~5T`jn8o `(yR7{ 8~#Ml$?5$(^Zп.~+[BmŰ1A_MCu I1\A5̓@_b|{mI@{wHy4v['+/\rmO0Ɩr&vXﳯ-ܒVwr|p4ŝnR=FD"4.`+e6$9OaGcLٽAJ?@r7:(+WT W0f-׭]GS,uSO-%5xm1 Aĵl# A"U(V=Y'yYJ:+ɷmUdrdT+[)*t7<7 H9Jiץ zS1ډ_܅!R{uq^j^+JG9YQ55Jq$ډDoV7]} 1840Eȁ1t׽_cXŗrGG\ʀ9`ꋭq\o*(XA-"\n_td01%"إP!ѲChxixtJIb$b?3I~s/h1wr W? ,SIڎIqUp&l7bwo(<[Bѥ>ҾLC(]+w9V$!*ġ 5r(wL5izPlMͺ\HL{!B7چuЮh>COnSMX\}֖>jc}YJnfRbIv2S.ޓPיV N7{Hdr.a忢lM# ޺7)FN.`ivH3Y+izΠ-'tSChڼ#qL.Pg():%/Tj 9An@&-϶0/Kiظw}t~/8.$ :'rT=#lv|%O,L/ ~nar# W5TaDZ$۳a-PT( ȺvS{R3HU4TPeE$HLu&D~^s .QL+XI b}PF%S$ EMu bFi6W7>ʈhYt'x#/ 0~+HuϽK '#^K#cr_d\@ʶ Ri?U91 ; kI*%BZUCY?J EV -BzL#.߮)! {))B}ɟ_:2@` %3!='hGt¶˷tJˬe STgΥZw}ڐT8kZ@(K5u^Xy{-ګAtJe-<۶ɱlƲ8w@8[NʂX$'P„n J#2Ab6 r5sʭ tBwS*orRܒǂڦvCqLtIn yxј}*<@NCU UTܝ @sVd: NY 륧*0]N,k lBҪ󧹪vJGWUGPVʨ nSd!`<]N*#O %pRsD?\d>lk 6J,s` 9 GN!.֐yHV45Kc\Wv69nF"9 _ë'+nvGruз#&NBB cWY?{4^k♺bӮWּ㝕zg)y~>2B`/`Y9W:C4hI`DWYr8eO/ϮC-pQ㒂 Օ??::B1% "e*Ya2Su `98I'Neę nQnq(K&=- y Ĺx@Q\WyV_!!ݼFJM tLtAH3;r*"K^ ids(Uv_5Ti1P fü}51a?nuyxomSě#<:^{&`=%x~WP߃"ӹ CP|xJЭyᣪ%voibڤk.BN'}Űn@(*1hX4I!e8Uf SBL+~SrGYFkRHe"kOXiˆu#AGYaa  pE Y+fN1˧\X[f}}<_hţ$R_KׁlKi/Y$jC[b(Kq]Qʺ?-4 Ommh}/+%eqZadQ@ۼo.GITQAC >Y- y*>{I;J 7JFT[gDyApxb;f|:lX둍Sٱ+[6|FDf:JwLX{}RQcxZS+\>1Cώ:vt8MU9/v;  5k;@c9 9vFlML;N<ޭePo^%J6[!3A{qjk?7=X9fQ,@h3Maրdg.?{7A[`w:W .8x11ȥӓ&X07c~49#hx]/S6Ebw%f mv-{b,7PIؙs^Y5t{ *FLQ!" zM!VƳrv!1fo/Ku "TG)ݶIA.#TgZB I)"C@g$mO04>*\8I9!}J<=4P,x%4zr*2={ǙMNõnlΠ@/)d`qF`bg;71;`e@ ܺUdD)BRBS O9 != d*MAu/6C Z < '´ɚ@k 1EV:~s5 tvKG $J\xu~KYlwobHf4bfr9i | [)"!#䂆P+^](HD܏|L7BD $|ژdsA\HG7qG1-1kNHI}h4YsEʪ&2G5&l1ɋ}D*H{ L>KrV^0{[\}Cio 1-xB4AE .0@8YBWT[H䲛QgA) 8ˢѨ K4=\ϑ 3+L 3Xa5x y|gCN%VhJK$Nr5HJ%H[4Y{h k0r {B#fomt RL{MlyռJsu 6x*77ɧϼԁlLG9\ɾUyݻ2_qȜjY%t҇p?-U_R+l|mtd:78B-Sb ?rMA$QA9U~Groo2$cN%K`C mY *BgcՀk+[w/wIEMHR pi)57HxUU>Gw}CKv2naDR. AoZ}#bě |7aY e-G]aOmwxko0~ٰ†d+40TՀoCw2<7YYZ b`ԠWjӾR_0s(y´ DIQ^ ]h* &7GкvjUP& 0y:pkjY<*KyZm{{e$L`Mv uMVۺM OG-e:Q. t;A.={:'rRnfR"ڑl\bHe-:/Z.7Gp/ +8sPz@0Pu_+DѹJ]ӗS kg̣[f# \<ٺ۾.STf>%-uwR)4).!-~sXg5Tɩ~\l2Pݷ9Ph2Ȇ\cǥ6';-l;w:_?;qnCb-+w3n $B*S-~bO.#QE(q9> )q1kR'% ;\fQ:+DGNMb]RR2tTWVf89jhw3Y1ܽËo;Z[U$<$G[D_ Vh rߎI QAS/j$#(@r|}iu-P$T x*UAr%ƚdho m'} @6nm1~i7q"y|3Jh߹ksO yEnt;(Lͦ"*31ejy -Gɉ Q:gi\o;dW[Hډ3"YbtS3j%z06q} v =gv m򝤠/Af7H}Sq$2va"!_ #M@DplT߹ ݝQ$ԡ梅eܰmVerl .OU)\v]l\K  cpEְ<{2M,;W8p.qvmxM*xC⚂z;&]ا|ۆѫB_[NkAU+5s•f1t*!BϮN@#%) h #R?' .=`{Z8mGF#WYI8>WwKDe»V& +oXXs:rnVR$̃E;>Zc7/rWܡl=) `3l0!J519mB1oaM'Cґ~&9ybƖ1KvgJuGgIfGsN~74 1Ee1٠W); M:1 eΪL]_R&=qɤ-7b' d0mAKdb+J:t*";Ef.D5A}cgz @ R~p&-nA&\t\nlv.Uߺ+6*0,Rvl=ybT/oa2[h.־ٶ0a괡@0^Cֺ4 g60aHvhδrC<мyJ@cڋ n$(MȬ:M<hǾ.@ 8Á2:~53nESn ]KDK]ՏK 87kvF! ZyE WA :"y[W7N|0duSeOK&ڝ=d;2Z,yK`_*~=,ϳuVX(]PoLx#Z#7rᬝ4\'تa4AD\dzHU:D܌N򘸇99=颵ު7c.=f8W}6d?QG)4 "mR1_[tY֋dFa FʮQʽk9w14*9ȬnP_&(O&xe⛳qȃCll!Ab<Ƈ+^nBL\0>d{y$@SOv GXZomIO xnӿ5ݮS܃/|G}ܥ!L]sk"{{)ّwƩD0@0XX e~svUԇ-Bm_x1"S`~!`a[Ϙ_2%QQrJa3H`!o l^\to/DgǏviݨ(_R$@)#&,_#9{UHmDө2)r& 2[ zKy}U_瓐]cGK5狴yȠ,qf(!5AQϓ'4e,= ) }Y~C_w#v=iߝվdzazf<>n^2&;Y|-pq-\XWݳQOgNxk%Nn$Ngt|Q `[5O!VhM~ +545qʹyB8|62АI 8iC$4Lޡ< ϩOwC>P+Y] َ!{q7Y0w\EtV6I0eI|c?#]*{ n.Z-2LY`!I]G»-;ߠ#jSj mot|PqҤMϏ47~|aZ[ : {U4q_MJn!J`-MП5$oMt//d]w%˾] :z!Zd۬#wn//i'z3aD4@"p/Ѽr BlQ"2e UH& }烄5R 1~o }|<NjczN\[:'j;P2f"ƜڎM+%yE}9+&"I]w{G4> $,j{}4k_'!mbC09srJG:ٖk֟"eFb:O_wv흈"S:ҕT&lv5_]W^o4a`cH6EP?0wtjJ GA2L9ή6ll8cHo=(E-p1șLMĸk=;ӳ_<#J|-p"^ ,Aߜ)fd1Tu\3:pU[]@P]@YV6 $0lruPh TbkG%?,byĹR|2K t4(9|0=OaZ[UtiU9~p;[;7xGo[8J'䱹JTG B97u/&*u=@C8=Fаn-Q@m{NM԰̈/Qș;b<#d=l?ci+ *@qD}r}˿x"H t%ma#BYmEYIǦЉ,Es`k"z-ߒ->P}&N+ e2eojnMμ$=8yhI.l5Wp f6/"樖=V\b:v]l-ǐly>b2`ʴj?4Y :O+w TT=M A@ǛoxxlaT1c|#0 7o%0il8tKd}W+RwJNq؎nLfΪ?Mz /\cVr\SC[7LLq/S%4g paf{N %[[9k ^sсGA<-Li~Tɓ \ ^IxWÐ͠7 ?ͩlL#7nCgxpl楐tvFky9;D9'huek3 0~u/-f WʶҲlRPC_X A܄9uf.LX V*]B|?vwtFf;+dKQE֕z'.a0{R ]ێ B|r0\;JfmҊ,7JH﨣`GWvZTêx]b2ۅ[vၨZr3( imfs:S'*{_Bf4)%Ӝo؝goƕC,c&NUqܚQ{2gWCGxɵxf{q+*84T 1bb`IK) f_ZE{"opwQ=f&=+l2ͪY*(Y Sn vHv.ū%Eђ-}_/$V,d&.SSE'[s6e-=nrp譵k 8q_hGsUcSk:& ,^GVXB z)&I>NeZěC }Bwf6< ,#jyJY"SȋY倀TNM +#'ȇpE+tfvef#_~j7=ڵ)+L@NG`˷$ f (›vHڿȤ9Llgïh]E=aŃH~gP} J1E칧)%wm1rii{\XVFe ^oGM.u9TsPUjO[1yVⴝamآexY$ OU-k=Ғ3'ٯ!DrR'-}~LWF8s?#~ fs~D~i.{:w`yϯ"kz4}J ^kNJIڡ-^*_[AÌ%-jC[ 41-xsC+|3k~f1F|ޅZs!?{Q]A(c7ߙ6bgIrN@cGF\1Ke1nL#\DB$=d/5j:qQk »s n<è+ntzbLe]^{s @b.KH(F!:a&ϥGET33+Z_$rQH I:35#٩i[<6 .BϏB3|,YS%K|ƚ[2݅_?= U4y~#nUg!eI7 <@bҧ׊m ʣ^Ƚ#}KђޗfR>$ O^RZ빅{o9붳)Plx,M.s816e[OŊʢE"AI FCM Jq*@Y0mƀ[x@'T͹;Rxĺ%ubfiO6~Pz2hJOj[_n 7eMloN+#)u*3 ̺@#`d A,X{B%aYmnƑZ:ߤ0gQbW_2lʋ;f7P?l U-`ZW\*޴Ȋ$6Wчa Wp<ȚD=ہ|~o;8Kz\y AOoD4\Mo~-ǧo*~){&dK ꁸ?aZU^L[0>[ ?TE=RY|Z)#,DEt˛""U"Z?@Xc̳P򹛠-/K~A_ t;N'>gbl% k(zjw\?z r ُٹ]*=)!o jEhGT7<c.FTh]~kj "nv{"g0Zuz7P,V93R$Ll]g>x:"m;9]\l$Ln r#R¬'4Ě/}ȱmѸ%'CG ' 6/"NHiz-`RȺpágWL4W9pܖ7rdsHQuUpb?ywWPi`,Pf˭a.}K$voVB\@ (VF$av"5Ybr G%raG-8a(rea@ve9,u'7&EΤ>D[NX'_ a/ D$B~e4T3CI [8:.K>P(q!.1wr]3%O 2lSE|-Y:Swq3+05y^2<ir :T&~">h7,)p(Rd2LK({Q *+ma -y+O鋉N/~}>J9iv[I6gw4n9F ӄX.6%jXiHõ$cOW([OɰR lS޴FpZ zRw=g:椢$S8Vc攈GAlSZr.=A1(kCe{QG܋إ4 `dOܿsao-E0gɞ!z.PoW3VlTusZcr4Kp0Ǫ](/cm_8HWGL~F ST=`BD*GyTc/=aROw`MUWL uk ht؂enOdl=pup}l|r, Cأ~PrT*hrŰjUQ^jr&Bp$= x z.rVix~e>+ұ:@v,Fq2$r e^ Lm/0r6JXe "Twz,6Hm]n:Q]m\.}8&i/'@fRnF${ *"xȦwƫPC-O_ 9WyS!"_jMUű,Ҹ:7(V#G|㫐\tΊn O0\G/ۣ ⿵ڎjGo;?7?vd@Oumpt{e'1͞UU6ɺ khX aۜGac&(;v`V I:vrl A<( F)ȉeBႹ/p[/l-9V͜ΑvDGj}Qh)9bvR>IBx'ئ\P^de{%tŨo eKVrm-\/sΛDdOj(kj٭q wёT44w; .7BI@%?(S^h STx2j㊑ɝ&]c u6tϸu"xKh7*s.3ߙEx1"P<iM-3G6%ĉD=NNY 3-PPPm6ނeaIxU r?!~BD]`dLc6,+yIDhl˚rD!~ "iռʄ|c,PԻiMcxDr UIrNY8){B~oT7y.1k ! LxuճHz @pp ,gzSBOfdEocq'DmQ&Q<b+""%xc=/eUD'.30)IuyW޳|4G-+ViYaaZ/ݡlؒo|?2`_vAUj%H+]ca|t`?ۙ@K4+*snV_!z&n0S!o58ʾ[&o>-ؕ1FQ=YYf0 =lB pIo@XTKE`J%7D_ Ec3\H[:5*/X+.oS[S 1yֽ3` GWY +p9-JZ$j_gOE3&f@f w&.*p6ft(p5G0+v+%_`hQ5ݞ}0TjFFcR|)U>zc' 9_|} Ps,-"Tʜ=st,گFnK4<ٲTq뗸ö%|vL{딕L!nI "Ux8o0;an-/+&#^=m0˲:+CK:c#7a:bIz?82˸h(+ MfelWYQh`7i&K^ BU R86շL35(; /R$k [.$hy1@<$ՍTAn*:մ IDSGZf*{DqN0즼B%xC*!  _kх`͑nۘ *yo E_gMt$ /͜? O!_(ٌ ꢼR RtEke49-)Ui۽aB,N D\Z #27Ɗ23:X8G䨰<.Swϼ,d/;V (jd@1 #Tc~ `~c_Z -M.[ ZCF>G=izb?%#jۀ1(?~ܜF._/:T IG_^aF1qfj;T.h(ie^D lYnߩy :]B2ll|_Ļ߀qVaa܀gnALES!5(srwf$* u<{Z6]k[σL8c4bta&G܆oY.GXWxnM}E[&š4ipo*q}N z~ɽ>gM/ BXX %eR3T|NT}_ϡDf>1G?%eXC4[`o&`V+\:c$Sg M/gh'-.h+Y*E8Cpqy{^- _~-U&Y!ΊMw4wc9hfZpi5fX?g2kJq.3sJ@B[8po'NW)jԎ]lSADE?XǶ7JǪR1#]ﺼ^F鶊Jk2Mlc2QOMm3vg(#K{`gw["VoRbA2i,' vERI_Y= kSe1l~w3`}v5;Je4m + ܍6jQtFNW:&x"C, oSAoX8V 69S0F2.)dv%h̖s~&K CZƾH?=ΘYܣZ 8nGglxAAN=AHU/)NOҭQ_$^},}XB -PcPʥ9fvS^zO:sy`G/-j YqfDciK_%DoiiRȤ}Ah+׺+M6/Xk ;O$R5Abm6}T>af6.M]1b1mb\Y̒;ŧܡW"*ч^ HcUr Għ-DZ{`kKl_]H Dc[_ ] D0M{?jt7_b5ڲh ھD.O]o4p]H@i;͇TJ'~>Q1/7?q)s?y=+tt:4]oH~<_(DET %=֢F>3*537 fRI2 zMM)wƏer}Mx-o gg@o~#dJ@A!2$"a WpP 398yH]<$>3 #y-1+U1[]D=$̢8du] :$L!.8I|_}hMC85PNU t>vkpT"ۄEY6\"@DX)Y"!]ƺd/r *mi\g.רG*rnVdXɡXZt3[Y`L8ht3*mXv12/IMs9j@{HCDb<['uBc2{ lfp%)dotej Ra'1 m٣1[+z5^qLEb:\әxI~/, uq} 0\-+6n/(D;&bHuMGP#}@()'w Sr׺\͐J-{%eTW4Ef &-h|b4M=`䉢a eRL^af;A ddwo-qju~WCcUh\ 9 1S~cv=|F5π\H#l7΋4=xbJC,o ZYΔ.^Q&Ũ,Gcrgs<;g5aY_KM qa/Gg$R3F^'pMNeR`.RCi)ʉU#ہPp'ٹq~Bw KoD%(H,T;,!ESP$?H_cM'lia kDù;[r#yUx:as^IzբȈj+g似ox:sSk ڈh^l6 I2_LLhpLh>`i2wxI4:6>*1hiqq$ v WR Xdn5rX6w*Tb1*;M\W\_B1_ 9k"@|$Ϲf 9JPba= Tp;l]v;Ӻ8WBZ舸vBDH.t xT4׈Zf4hj2 :ΊwVI|DXjW~K޶5?DPhdwV P:+BbSPnE235 g->u"Cy]=dִh4T>ӝ NBAL2m!*Q0SUƱl󫱬c9I(mޜ=W#. v $=5tqځ큒"B|~HuUnJTV&!+ r8РL޺W^&ŏVAehX2m5 \^ρ՜$D_Quj5fK_q Sp7Tw7nѨcAsS o>H9 C`vpb5^q)m9u؛>5\ d!]NJy*TJ; :1msz#5~L kEe Lo{}zTot{Tѧq xFv\N#,=?NJ5zʟ2HSX1Nhmuh|_C PaHHK %iMAbJ s+(Ҿ#GBA<W7U_Jy",w UQwȗKkdR:PYkViv7˱XH0gP֌^s"t^F k\Xx0]xWjzCmQ;Vڰn8y-"ϓRZ6.W {nBKLk[ڔOaɺ]Ъ"*oUc0xҨs':͘ M9Zhh{2淩BkI-"NžVvCY% sq΄3_߉1"+@yM+"x> ݩvtr.ytD[Ba;wMG(u6eZ 6o*e<<鵙}/B>+_ u鑾z>WRh|}3a{LDz#܌]y:V:~z<6@(:lrWH:o-BP >1IR1XnRwŝxAQa:jc6^cbCu䳸c{^0 ,.5W_8{V$tǠ]sO1oW4/d1``ujK@zrjnRa*̆9ѣN¾ c*cuc/c#i,CV\y )ߡtKNCv:uHl}}Mۦ/Py*=ǝ$Ԏhۻsq$+p?m mG쏛Cqv7Y.cH si'Zk|94{IGf[x."?yw aJ@ =bw z_} F3l "X L*Q8gnh}PIF! K rsNj@ܝ{YQWP"i#AaP_ \.#OI.\b’NBUtFP$J*:JJ\Z N= {aA !@ } # NSㅵ싾'xnpmDFtQF`,iuЬOЖ&xlqtCM}Wc+qWAE's'0o+g0.ыtc,ObsܦA.v6i@ӱaj5zA wA|@*< ڍ.̘2J#(m`}\'fG3K*Õ[†'gǍQj2+39t=CۧҊ0 9^%mq33=#l_<š6k˦' ]HyPҋ}%.X-OFXMrҬ*b\s0 @TRa"P׌a6҇S-Q @ARߣ6(hse96=TDZ~"f:d)A.ӑb ?߽dq[ՐhtԝI7Bn-ob:%\Ga0pe[I+ip0Y Dg,AatX*$5sY`ިh0U)+c)c uh\cX6~teL?980"&ߜ 7nP{kWYMz6qɞ'I!@K͸̗e3{GNr|})'184{9[2R!%7n{`±vo),=F T=Tf:w +Iۮ0Dg SNuLe,_-o:s6 襦~fTAa.%Ӛ9;O08 2xYNN x<,2#AwLOv8})s&!Hyаemk8挤 懪Sb2,o=L\U/$v[NR e 92 lSB{zP KhRPgej@:@.71f~5P9lἤ~PȽ1,E}3# BF3+ 0ڐj$YEWޞ72"vkI~l׬P8<fWqJ|`}F؉θ iX=;ܵ;nKǿ?>IO#O4#GhwHIy.È;>4É8 ~8{&߶Zܕ[]Wfbgpd6S0_Ė_\i8% Y:ih:? ;]822>Rb M&oF(x &n#/ԯ-%tigSZ>$-XLowP!ͲT 9QzfQAEz>S_!&lo:l?LP`%qb77%3n4%bfX1i[y*\Q-ЭMy}K>/}:s$Y4e[cDC5A +g9_ŶR@ y3ȷ,~]ٙƲGU`Z(~BVa@"A_NOj3/d%t7J]6sD4Xy.I+ֆ 9T،)Ք(s:0T> Y,dRNGPdPYl{=TJk_!U@]$B,DS-DAlZpukuHQW3PĻ]5Z.FmlHU]9i]8Zch f̬S/ӑ'@Hd*s50VV,",+l)̜sWon 3h[m 5iڠ}A6q{lBNg$N7PKWd [=ЭmG \,@iSU\-g%30=~mfHlX>h}yqa2X ,A++n}%DiY -*26T_s7H.pCt3N&,9YBss<񔊎ԭ3[td-mA}U>g)!$IQwC+G׳Go|g 51t}3nL%1 +(A0P DBj=چ[a^$uzBn_U>h޳8aW:xXOe 2zQiVuР(.:c*(XeOK$~sf,u<8eE)64;э6Ae7 ޙbq7F+cDiFn;`x8?:EjŹ Og@6% EIKH{pME]Sc(o~@Az |Mu6$a‰+kve2M'%Y[s8bsM6_WF؁HȢ>2+^[w˛?֜'Y漎+prޖM?zN*bJ#[ۇ/MNJLO[4aR<#x@>U\һwSÐ8"9t)N25)a&_+)u[N^\1{`2NsuE[r)~/0Pl[L try%dJf6r.3XVPx ;y\n{3ܽ{m$EM j&-; NOPI2 |B|BUViH3 ޢrvouC 0Zi׳dw2'ku${ )3ȏ Ocg}9eKa/TwE2)[nA.^%>‰ɿ+Faw# Vlݿq;̯3 Ôpj#w/88S'dJ MtgRu1Dzu_y^K9?*ZǬM wA㪎pKN4<aKi+4vSI]%z] ۔݆,㢂\ i.1!"D+kk#0,~1v}FsdϋR/_=_Z%z!El\=\$Ry_L8ICk B6ZS[U6B8XR@fg Z٣:>F nX1 oOSYzBɄ*\%^үcLmd je0˳?C#`D+Z3.<-h n}^vYAEߡ9rm. $@Ů5 msr^'{$}[ZhS9i$>)/gG,O31 yo?*bO{U ,|z_IH4D4ڀUHte@Ukqݧ0_Mu&)ߠ$ybvd2 QAW| x3ԅu/M\#O`7 +ʔcbG\~+㏔Vpy{' bP\Bwq57 KG%h&t%?s'CIYONSB|sa}c *n5## O;~֪d]܉d@jT"CT*2PXrpCZk;*Ċ ۺ8seqJq_\ F*n cmJ*|̈́DpFˇd Ĥn>bFZsoe-B=Vn׳8;Kf7Oak{m3+(ZW# ٻ쵬_KB{rPi5*sV$?"ӂ?f _΋π64q.ao. "",dPڑJ 3 ,MHW|DHU=q:tT͗Bf?%aL ɯoJx[^2V_qOvsY]2W.e C̛![!7g)!#Pc@eFGHֿgW`j3Xj| OʃՈs DYi%^vF9,\*f?Nɲsjrm0 JXsltC6*.Toz ԯorYOUG`j'n0Bigz>I^4Q,cH猪B9Þ'7q׍3‘_ B|i.HrY[$} (@&Q]ןiNֲ2Gȑ'3CG87|U~%YC3ܵz7/ K+9$>O5FL^ÙEmNڮN&#> xKkJ5tKG ZWb[! z4ҳ :&T4ܕ[n#r Btb<3-4Pb2Y"Kѹ mzu*lW$42)6UGۡ8%L\ʺyTSReҨ_ИԨsvh\N*`gW^YR_5ȖFQą1釠 \(5fWtF&2t$#lTYDbS, wJL7i/잴,7\m.Xi IskΨ!&㲌/֍L}> Di>Bj,4(MZޕ*( &rjTAB2 Zͯ[)sA6iz4\$] NFr҆zHr^ j/xeH0Y? 6PtZix =,-gpq:ѷ3FR._[#B bŴd]x5{ۖJ?x3ɺy[FRUPp]7MCևvqeVdTUpp,2/i9t>OEHCV,\WZ 8]I srd-ĂU.È{qsʌ3:*+U#m޿b45Wb(%fw͏7b)󇳜eY),Nd"2m0i.%zPD1S,@5T ֟mUve!@4y o(NiXe{y̻SH{H|O(/!Y_SL$e*!Qbyi2?y`r,-}_1)ϖb‰!tBwKw\UUgK ʙVz Uv"!CQtb" >'YArIf=Ye]Cف._;+j_ ewpjAm+fmfs:W[8T?ˎ[~dCú])xF1g}XUlgefῡ]QfK@KbѕdW<¤LԉE6,%#Eo*°4Q/UO [}/:|) d+& - t+; [ GSƘBͷfCJ D;pruWhDLE~gu=@=w: K3"0_LM{XHɳ7;c.˹č疬CMR#{l8>_\ԨLlYfU 8ax$D': %"I֞hSц`Kd8PD]R@Yihd}' )t&Gmx*!0s"(} 1 jPX*f?jDp7( * v-_&&Ml/R;!ITo{9̞YHnU$VXMܹ±9ޮY&,tuVq;ج;@ijwKשBu/ % '^*BHK# \ǃ2*Q Um^}ru7X`kX| },o⊇Q KkY*_w-ZQM9 ,SZ VD>t0/w,)A}UX7l!.&VTG?ƶ V{,!^R<TڰqIy 4`D˕{`4AD7IJwtg& )舳̳Be ݲzO?cfֆ,pO*yHsS;}Jgyj4ФwLEyLi06}`L#vk0w]S*ݽFo~3Rm)%{vcF}#Qk2<'PcZa0di=EQq!&G,䔋>{`_&k/сCqK_+bYUu=]y>zԼi$S2nTYchJ췱E[]lPg>|c-jZًag :>MMa3 4Y Sm#]h?+^*9%0,87li7DoO7\饦Z>oc$oK3,9C)\Ht;Sja4QXrp q\F@ j36tW5ҏځ֋^#tIa ʀ_[a?/"mB#Mc7O2*cPHʜdQ}U)Ym/XO)A'ŒFStkT3SZJhlpԼky&-ܟ={MM$UU$sW r:Z ]{9?~0M_=qf$r',DڬO󴎖P;!>ikfV,@l~@JЊpɋR)X=5E9HdN@DOTd6h|.6ׄ?Y\YLeoA=)Ľ:j*TOؿK:sE[z\5΅߻UGhM;* d^R5CYؕ/!S7j[PʹBunhr5wP Uw30R ih}< Fuhh =t4v {\:0jCSsU .hdM/̐R,41'لOGett.c@SAr\\v{xPߏKx"T`TH̔Y9JtC;y|z2UMc ? gacmJjvs,5t41b8HRmQdF'#XŸ%tR{4+zݦ9XLozRUrtd-eYH* j*SWjΞg*©lu/X' p1fe=[F-(KP_r GNc8ASk&PjꅬAoJͣQY wzUH08i ÖJBx!$xSH[$.$l|)u:W}kP )mCU{X7 Xcl a_ulϯ'5AtAvBjOb+ͳ6"ixtXM:x2 WR23NtarE9F r5!  8gn`(BstMFD5/"g(h֙P-B8oc"D&A'se)34|y{u-PڍkQhjAB'(JiD/HS l0#jڥ2}G<P1̙/K&L6h -W[H%/`$uoPs6K(@G&9Ϳ^yc)-5$\FΧŜ67Ku⃫$t&Y@-=)0 jtȀoϾ3Wut*N)~o19b*ЛQ.|篶k<׍%ʄ{9qz{g ?uzʨ[DVTxN褳ۇN/a. `W};QP.d'ĝo1 I{/Id< qaĪ'9ZeCGd6OS~n_4Izdaל*Z-R`QCە&d-ĖBnY6)i9g2o/?Jgk!1 #7U7O҆Y3D^GsID>!UL6ҹSqZBijd)^mP0/Q$ߦq ӜDr=dTF>zDa6)ra'H;˛(&Pn&^q>X]'MKYb , zkP6L]sӎo)0d/9󐧸%a4Y{3I͹ZP䧹0$זac{N*FXְEܶ0r VL^U\PeWs v[J55S.懨#Ό d$^oCVTS>5% %AEkAuo' #J*Tm%Ҕ3,q'VҿZqAugv c:R\brMD:tL2)D[>=1'$ }.[: F|滍}&3u]䓸0I/Fj؟E F='K+%*^e0|i7)7v!3FcSf^dr̝Oܡ*ĝ :YTGGKR{Qw[[VeS)׽VRg8/_65*䄃V9kT]TcI绑pzPSRMlƦQLN&#Xt`ʃ\Y7a!;ag,lszM5 Kf/9c^Dg&'5@` *_gZ^|cٯ"~:|Os:s`pG3=Qu};=|sN E]A >Joe4 ,cC`?k︅,6QD _=wqĺMgbTc1HacQAkiwpxA4^ajej~srwnd_VKfǡ1z|@-ݘ9 E6 )G A+ kU?Z5o cFU7i>CN5>QTnU+NwO=I\CDο[n*I[N,!VyF%GFignFEX `UBce!D"53 R0;<ƋK qPǬr.9{ٞohX]p>mTd_a{j$jd 7yI]ө#uŠI>jEt^M ߽ibB.1kIpݕXRb!i8gi5uzJHͲ%/dKjn'1D'8fGOӲ/!i&w5\G lKsa w sVINnHaџ>&3 tH}BB#byoNn㷲U8L}fh@e@ !/ɎcPQ>x+%1;}ɭbl\ͭ :4<|m)l: 8mVq'gN$9ON{Yĺ'`i99Z/'y_2~ WJ.7-<`}\oo"6Bd^ya-V"!;4+:g55]E$,9 qUh:A$} d%.U$}̳r =ժ;3<ܼ_ISmbFTb_\H8A C\@I!%O >QHKQpZ8~y)m?lMq34Q[Fu.d.OncEi8)Gs\&D,1`z<9;Ko-@_s-c*h*C.YՅ` !MoS˧#ňuoNvF9ULžiFݣgoҘ 0y\;q Y*ʞ>B5)SN)?PIB(8؋k@>`e̴ߠEΝ]ߴuKs8CʾGfZӡX8z` gĬwc:1j:8=U,TxG:kEk'ӊV?|5M4^5Ȥ>edž+ 4u(e{jlWǚ_z}y?8O7HSk*?d=i\;FuaOrh6ː?/`baAxgcR 4@a0ѿ#h1hg\O6`F5=i/7x*.eK[$C_b$"W,;h^yH ̪^b V@/({|s^VdD PjΑ}mf͗x} ͌ZL42u˧~};#L+]08t7A&b|39,?PGi0rU,ߖC0 }  ! 9iPl28[B~ڕ֦ @hfԠcG^)D_pVS?nwR.v"Kh]NH1GxY^7V*${Ey ` .[vO>XNq."ëLþ.gn&D (~V>?^~z Eo:!<!\9gXLo?;~1?n|.ˬF\ GUTf0X2@{8enqI!Ĉ3N$b>wEOvvw&lI|V/ 6kv?KLݎ1dk"݁JR!AL)Ѳ]Zh!r,t^/KWO 9.>*C =`7',ާ*TIdB4YZ4FoEfXDﵰД@b(VzQ=X:9= 8H\|hTx&iHE1GC YOٓU-/.D1!̦DV~ '\,@ⵄ3k954rlIzPomyiC)qQ[W|2JOfUJ(9 WtCIDs%e.KY}IACeGP7O_b++-5ܗ J]SX诂-_WW/#71ښv^6&*C 5 9dV Ƈ }9^4IP %"%FЁ>~ SWA`:Ok#EB_smX$Z &I6js È :HOM2xv+=fd羍2J" JiGB{on3%1DjOP" >9iVD]X;cR*n͟:ji4_0"'&[H\pHQ֭ òwsa^b_O=oc֓8Aԑs . VGxr3۱Vx髢 _SӢL[Q{ehp̾ul/Mc{Q|ۄoM:k 4̷W9O*wgAqT8:{U0[1SiddI9|-hPn8EGEva@^A%(-uwx f T]hCÕu(O`hx|jC3O?‚(L4mO^~<=cC-T"h#0E*e/.0J53Es`3¼E,c+{< rZfȟr?rۋmn(b\0d(<,֫#:A3]孫xTE&09xh\Ndk;L {7ݾ BĊ:==FJό"m;ƾP"188)n$1Ymn~; u]nTeÀI+Po.iWDΉ!$oG.u굍aT @JxC@Vo4ڎYDElFz2P4]Ϯ)8 -IVg4z/I"K?"푔 >ߤS!Q=t^U; ج클zK}_}) ʅpreY6Ԃ߇ֈ2x,L% iiF1z+V Ps'Q3ϟ~=ma +?:%. O!=v{I"kaьVNM{E*=>.j \j{?0mWz8 ll=*Wh' " 9riBOPx:鴽qf>lڝ Wv:1}T!zrY)w"SYUueqj zy`3e˰̕P6&njLJ1e9+KkLyeB-dRh Hn 9<$oBin/)1[(~3k̀k_3C u]`e>TElrT)K#ih{1A:miFhUq-JRBGW,R#9FvI"5 #{#xݱqTV?$S'o҈=`K&̛nDw=ՀM v| ۯtm0LkVLmJvP-OA`CrTU0cǁ<_9x(qdc;>Xf4KGT qCV((4o\' 1n~N/\Cݾ@))ENSJD0<ٛ\{rp\C9fOdW$º%M \Q=(RD[!Ax"-re7GFz& /xF++߫T$Ui}(&-ib,K6H[^=NkǎGCuS }xK0)J`)㵊l5PfxTJw'2L^"B^`ӵ{!d&A0ob pNNS6Xr4Q33 zLU:}?0h"8}.#z A?, 6( yocxl:-匧ޖGOZؓ0*Eig:C҃LyH_nz5LC#b8;˴ L\Вil ?uv)Ҹiy<$ֲ>@pZwIǾGNF6 ddX,߲A L#+p0' sQN!7}el7&u"7r9"wď3WvIaRKKLFţ;R;[MEqwTD:[\73vHMm,&jc1sm/ 2bx'e8jDig":LK5#fИ |,y#ywņ%2Kzӕ_JJBƏx8\<ծPWuu]*.c%qEJ4~f*cmzc^-J )Khϔ%~ʍ/l^i0_AnyÒx.lz6OAxU`A <^/wL:IU|+lA- cEz=%ƺ Uu눞Zb!l*^ r=/|щfYe kKK%9d<^xɱV}tj)EMKo;,dhߤů{9:Zw&+ O-ںEIo-cQ;Slĕ%M/)mg)ԟM}|{aSN9#hA+8%ЩģҙE> ݿ JU{6$F P\cRZޫ~H]gQϝEqZ41i(~c;ୡOQ0Ly7cKw ЂLJPZz$h}KM]v'O%V!+F09~T8'"]}n.nG($i"rwZ}vU+)@x3جn,(F3os_2YJ}C2ee|Lf?h^ -`78|7k࣊ܫWn<"[63+]*~WJ@YR9Zg*EeBsɏ b @ Ef%Vt.Fߔ:)P.uO{s6&RZ:/j#(+pY[6 ]GFi};bB4 T;l4--GmpL!$( y vyZš17)+e<;Ed5޿doc#<%oE:"c`̧-y73JTӤ}r>Z䎜4^6 { lp 9•VZI4pi%<*vEQVWjsMv<ԇGhDPYruL8xێZݖ%A۸–p c'=9 Gta¯!A>]ds|ga 'D2a{L ؿnZvYՏ% ce1u"B{d ^E"^j ֽux&߇ CxU/Ee6(*8aA ~Lrz55&j ~Z,l4IF{қt /vPB\5B&t6b b"S*ٜQ Й\i6hyVny\f>@FC۶t KW,kdwCLSEZ$n|`D/6ԃS֝?{ Ev s*XTSQ Aa\`[RP ^Y6`^>@0؞_&J>-i%D -p;+qfLhq8)uRp> ѭVygԎ Rp,:AGik;X+Y}DU;el2}ߐ>Eе~"Y7 @3 r*Pݾ'ͪ @G{@fʬ{rJ#f1~kfWqf rbObٙ&ӏl^"rbH>XH׌ݐ:^V vap%~1MG)EWP҄C/U&$z5cX-q׷̩?D ҕ3DL:NYu ܍aoAL-K#A򈤤)r֝s /]6]S{Azg&ཪ/3&%AmSuL-k\NvA *sů=A:D!EoPRаDηg!4&ur"Eu[\vϢ_߳JctV\rb#A?CMBvY–ޠ+ʍUeO8[|(%yH,\D;Tk8aADY_!tN,v_Zzj9}~En~Ј0gi[%Q밋tvV0Q$6/. ?1+Cﳛ=b,r@SL K9jޖ|Kq+ R6`wTv ^`eP)ƸcI%V ` t@'cxZ*x-{DZ +pŃ,ʆGQ< (%X=af/\W, 2I \Crpm(\3XY L2,'~AVQD27г'gRJAcn  8It5\Ғlln^rJF\~7hF\0UR40AS9H9N̥n[cw1婢e*KݎcCt0R5\|6$Ј/OC264d&}P֠oxp OԔ`C񬗷w yc b%7 yO~5Q|HE#'l(H僖F W3G\[UwCEþ٤4D;eCFlMe ɐ+E,QXRش+iݿ/CkRlSjlyVզ%n@%۰ޑSO _ZSH'bl62$b%iA}Q4iESWsPØ/@2f? uGb5&WPFCNv[^לyXL @ocԏr 9ctk.uW9*aA}Ds/󼡥)p8sq&t,mJ!bY`$SaR @Q RF_~8 Y~uI˝٩p _襬l8nKJP,]J2?}} s-bBkDz0 ΞvrPm`P1S>]U3p1$VDŽ)ށ| 0vd ԍ\kPd%nt&zn:m8VS Q: ,Xt >go-j(-gnkXvtzz,\8Dz=TAJ6jО8® %NGޕt`MR\ܭ\UD6&ͷI95qG6ably8KM=Bԙٷֵ+u!:h<#=Xg44y[ʕE >@1zXJM𙡶5Bxjdyi] GֈwlDs+jDy{Fo;..c`X}O(Z$T5l+8]'@f+̧ot4XDz]~WxeBьPs2>ΒOEOrPṠ]cnrϾGʀd{@ ʺL)ZIN$SM͒|9>i!1!#?82Ygcd \p:SGkwC[!mVv?0]*lYy#Eӕ5Ĥ $>Ń(TH7Z:B L2Kf>ѱ b(taxu1@)9m)m(B2r)/{{R0Thrpˆ N>vE]Eg<#%ko_xazMgGM,:OHmir|Mrdjds k߻ۂ>LVe+R} :ř}2 a-79.Y+h Jx0߁P IFz kd4?T/6v]w9Q _.Le¬4l*h 7RIMQ?F6wat.8xVSWq c[rf`kiS:n5U& 4Mu*i~#AZaַx]\)C"c)5JHn>-6wS>_f(Bvv- wwΓ kP Q#mc[B-J5͈jx2KcȫYa[-"^/ԋ(:Ӄ]5o6ݰ8yZyeȲiHO }iHjFAQijpB]ْ"IҨ(pUPO!J28DT1e|=6Puu V"x\^Qdpo#Nj?hkărܻ M5e(vq`Md[[l"f[-Z$.q*r*͂r _V 5~B>yrw_N>fjO'Oț$w!&C.q'N{u(5T|[%./Y$ &@/SN礈9 \u\D֒r;[$>KÎbBt@=pdT9٬uWҒ %^ECi9r٠^[hob­K?2EĒ*b=x!7.njҧ)Jp KOcQ]ݶ¾{+>Sa{;σ%)K$XE'ʋB_rhZ.ْ=iRydRʠ $sB[{0pk*9t+>Nne()o`>,;v#GYXنœ9}jtYuֿ'%yMUHv ]Q ;.7Q}~ ylFEk] kIa'].Dˍ. ̚- j]md%d?#\U V3a -ӝF\C0%7`%!%Q) |YgFRY7 2_R)ڞ4]DSy0>!u|L>~g%JwiAo[RF ) ,Lt\꽃eg=b%sKi½k}w6:ϫ 56s~g0&Ύ8à Z]+Ѫl5>i*r74CTĸ?͂FB@TXKDś|x0DsJG5\ս(3MHiC.6݊`QE *mXÑHR̯>9`}X{^k N~w00AK w̬ao]{b\dSꇀ>(ΟU!Us7w'B;Siro BQyثי˴\ 4vߤcE+j5 z.}--(\G+e{1(2!녯1Sl7nCR)*x9lt X~ F@W\e;|޿1Tp}ucpZnerEhtbCR@.4ćDj6rU5ͯ7&h3iFOy^7'"=-}\:|=*.̭ ѱd5Hv^|_vm&$eKZ'b\t6cȂlY 3Ĝ"x!{;(= A SVu$i=;2w{%GɾKPsq"2z߽ɹͿd*@8 <gd,t\e4/a u${2!e0 a ;!}J3 `R7-cxqc"';~똹ȆTVN/(8̏,>cLjJ&NMcʳFqiցFm0@Uu;cޘy'\RCASkǂu2:XD/ cKFn(5;n. X߽2S}΀F$&Í;Ӭ}RR7Gxny ;YOp8 oixY~شGh!-kNrL2aic]+UR'r+*˸KOqq˚ 14?2ߓ_\:9"o2t@ 灀X`uAm.\DRJ䴂heTCј)50Vj^m Jta5oPX? gH,H΁1i'R~p۹W zNc꩐qVi m!Ұhi63APR:`l73ZkӪIg6"ȝ/.G8FҎ1* .Z?r`pKDjZҞb뼀w0~ [d:89To =%ihǏpF^F_TЁY,jMrMePo<{2(ǯ6sY>n|nC i> e*ӹQcTOx|䏨r?0JWgB`یQQi`H8t]Y*LD.{z*74nZ1u{h(1.ʶ~'GFQ2tH*ՈaK87yS^C9I 9(7Ý}˾Qbv?iVHokNci0uR=šty kV vB}[QlYk,֣ pϓ3e[_I9pXXӃNĈɉ} 5`WG=jW^EbW*&M!7bWW˾qy{O-!\kn8@y K:A 0ƤF-(+ϻDYXGM਷"z _ZY;(EC$<# 'hY jl)?́+|@8ۭAmhSlBwځ~< iοTȜ膵wJxz P}A*8j ӌ|Wdw~1 Qߋv\K3ra^yR̴޽r^5MhH{ոܱ>u{}  yOZ]\JIi!p-(sשTo\C!vK9{uH:dx 2eNJ@#&2v`D bҙqoC;i^$ϛv 3fp[o?כ@Q%r-1'/NK M3çqzL]IY@닜M8˯:ƕ0)jjjkSp}%aj{zE9!cBdRӷ>P7#&΄ɕ).ohÝo1_ɟ?jE]:a\ ɳ'%',]!FQХUY> Sh&Rm/GVt?$haI%W1E V/’ev럩Lj0}q u'"#U`n' @,=p3rlKsO`HX؋[YtW,c<-ACg8ja=-'mEk r;ZPok5D(@k%vm0qa _Gzf0MY\#MFә:`gT1\zeH e*5/ m3|4U9~T!X0eI֊Zɞ_hPS^ƛnW|N<@G5Px]"2O}uKƓh[" U2Q5A"K: խ>rT:#VpļWJOS6 fpzOKwGN0h>0ݟ٭@}&wCK|#cY+o7&/L>T6wnjQi薽 kD6s|B٠xVl9ju;X$n(MlB?9 `ݽKK{2B=kq=2X=a'i)SwvL]@K/"EaTUib5, K]nb320Vj+ZR .DѱFVw ӥ ՖKtt6ƨv8?U95ߏF  (( &5rpkU}Rau;+vD@.!4 ͠FI X:x"@(5ID H_{1v7m/EY{Q\"a绲R)nz%ڤb R8[i+-@y׊ ~KzEШiS5Mqp$CGn&:kM6ٰē3wX K&d;D\3:h&n^׭]Vmn,^AEoKZ)Zs[!*B{fsmSk%<Ԓ-&vOV+%p]?OI>?Q3%XOG~R! {ܫZe)7xWzm7BE]yه#~|湽$'SQHL^ք#M0;;9+RS=S:G(*E\G;`$^eBmF)Rw[6f)5iL(wI%*oi% 4TI:Mp,ڙnUGg#}z;EBEg8W8nqUl.Hl$ 7wBgCۍk=~Y:Coj; `7覉,&;ͱ4 !T>]c-Ŀdʝ*$&O&hH]F PTxr`<)ee8q̴|2U"$|*1˿:HHQr``7"t)\[])Bt^|ʱUk5D̝7Ӏe|il s$_-Cכ0~0s Ӣ:Q WKx?T( l_XOE#aFq^qGE}@+[PLa99Vץ( imt,>Vsu;g)Z .Vj sV [jIXx7ThZBISDkݸHqpRkMIU|[5vJnZ" r3dmꑀbAxOeLȿT)j4?Q Mte sB1) ,>Q+{WZY϶$vˠ䏧=OWDoZO~h5qq#H!7nfx\-HѦ񴸴ux6]> EY'܌q8RW7:U㑋猖ޑ'狏=3Rl(U .2!<=xLM~?σ0+"|.nĦ.r:Iϳ8y*b-c\i̠(n>TvGDki|2-1;gÉFOs%i+kCݚ[uu&m!q 'j Ix Զ RHpϯ !slwƋ%LCˇJ= V1فxF#K|.%-Z=vCQaR.9;79s3D=3,X5lDlS_f+6N6Ѕ 9 rǐ \G䲁6+oEwk,8"=&: ]m\i|?eF["гF%^ (E{G*h J^wٲo\Hfm7(v B'Mx3*+5y=Z[|t[ָj&nV,z9EYZ f¦1ǡnh_ 'T}@u|? kBMƸ)foYtݯh53=g@pc> y6Eۀz?)3P4?K]5dO27%.kfO$3ݨ™LExEh8ĕ˒=6zb~PlgRň<{Ax\}^b { ~O;.7n-L#ItO}`dGL؛ZT'I0)|1eEAVh6?.Mt$%/j:T<|B Ln.M9ZIlG紂3|WLfCbPP(2ƸaiBM޶4"T'{E&cEm0'<\fJ3k2{BPZC,o0-G(.y|S֤y$-{n(az9CbbhRbj;ed<;}4@adA0a ^_#;))G{4"3_Ml\r% V'u_I&[DPc9Pr?HQ 5>BrC[ EnWQDKq)*qC•u\z4P*ۮ ""/[< )V=9rl!F1#%W*z\CF{U. Bb!)6G qr50w&aʳRd]Jɶfb9Mlu١p PU'˄{A,Nx9&2X-o)>!$=sxjgKr}"_5T]*YF,~oB9@IEZJ'֟&ĶsGm"*9eJ+i6.=N*e`#,L!)uZF<,fimJگ;%z*c1qg.].`wDTZjN9=!h3Ni "/Zщ{Q3L6S Mi"nOMG:^D@m-<9\"pqV|dsK!U|@'8IQ~VB}/sH. "4^MȁܴvZ7v6e2SYly~fҦ,YM%Bq^WY.#lNbW3fLgtUR @4Wo-Qұ5 bRG.XuY0phąՐ^2O)4'M3ld1כ9s%Xɵ N.P-*PlIYţxA 9|ƅ1l^dk[z+MU^R2JQNz ++071*&uճN5HZqVKp+z8,g,429-!Qr|M_cۺ.T/ [T+S̉/V)X0{plͤ*EZq{p}$ a+{7q"{UHP0_P/&:ް2Պ`ڻD;^Ͷrtԅij4rcDD?RdX6 )tіqU#$$/*s)NsM(ܵ(z$cͽc͕{9Fե'uNnk>(^Zе,Ή?/SX!Tg%^!|Ԫu~.xp[=MYLEs7Fkt3XbA?h"t?>,Vſc^cPZ`RqEpy+R igm2ܠ0ksI ܳ!M8 rBڲ_B!))b?w-rro,Qa25F9b^q- Į-xN|:ļ\ڕW:2E2%'>?~ 0\Ƭ\*7Āa>j&Ktv$oާD\vE'S& Jo7LFAG-6,,buea ^'h!,JDv'@lZ[ 'Fj2ݰ9DZz5]%NkO/).+b)S .YAk= ƒo Vfh^'zǖ|DA/\^J)ىelDYtSprpE|ü_1 |i1s\JEZ߈|sZ)&Sђ/q2/Yg[*li gGl[Ki<ݐ7ۀNoYP^0pThl%cy^z]^#27Sa,(OSM6! ~Q XW}vm~QHUV0$7w"$+Q"7u}p Do!B%M7N!]#0\^*ih1.mTDȬ2K*FV!y ;8֬59?@鴜ӶRǀsͳ>OZߕ;IջuM _]lok8@lp͢n{mǗP#hCwe~j+J{rl)O砷fաiAjqͺ$OjM[WoJa~NXIFST `m :Lh@#`k:>>hg20=x]Ie Xb{7{Fetc@'6w `7%gW"}z:A9ɴ|`7}=$Gid+BD@GS0ETou4ܔ5C5aMt u[`GN%bR17m\rZ}iwfӆt=V`#4eD %Xx>g5tF%D΁H(n?at@ 6)ml G9nAQjW;FOh"3G$dy&#!Yaq_g F8g5x4 ~SNPJ88V1A6^'wO9ѸJEE>ZӭFL)h103Z)f3lWZNMIB85qG<:o^߈\$Ep>*?ډjJ!u8$&7oK.P˥^h%㓪KQ?M1SIZV>IƲS )1u0ozsph!3^-&@S ˵0"hƀ@- tX-W-VhV'ѱ|\τ,r|Nם:TQbH7ۋ9‐ )}oG<9`} lOw@"O3  T 8q&ȚFrؿa!R>>(=ٱatӫ.,O7땕y{$eŒ*jfh2;flQzMPnXARtUEPej6z D A"o*T`ӡqKꦂ|VD?_,gl\'RrD)ڴ5^,)T~?x):er0Xj\r #Heg0L?ޮ䏩IU edݫÞY>I ImNdmf e % .ldDUA`u%99]pWR3X"[+|seTl޿&QQ%ۃ'T~EUyR]*H=V΅k +n% y8Pj"DXwc}f 1uȬ^\wJ~i4>jwre'k}]Be6'x'5 h;6JqMqȳ7&ٞ(v_wŬ쒋II cr\.ogҷxD?om5}w BC )N7&PCòkA,@X_jl2Wwhg1׽Pq31t;D L1[sÏ+5`hq2;_8pyzD_۷4R*C?\bK{HP4~c*.VI^63]6&_u3]9CȘ#}޵2ߗe0.#9C7XL`TIrp^:4L` _i ",_w_m=gÌ-;6#4{O&qdHU!wdE/k3Yad(UaUaTTtagɢO_A!2Eg~ڰJ]/i (l*BңqCQR ."Z{q 7ܛV!';nTs)$4j=nz:MVol_1>?eE=d;!Cǻ ~W7K~ (}i@2igQSizz<X#D<_ ځɦ. L.O!Ա n/uB-YW19HN{k&ᅈM`mL: Rm˳̱^op+Hj203`ˣ(.7OanudJuy$ˠOsP;=m`M+WP%l.LtTߩ%Ij?NTLW 11K Jxt" CFaNx?x }g*|J""зpܐ!qDf)(@<7 QPU lDmF2Ք,}x~}vվ;P0OF}ݡl;%֌َ*&e~b1@4X%q^rw?~z܂ehRmӂ US3{(n^R1]p b猘3EWD# ֥ 8YUO#+$^?|,s$..f/@ƴ CtC"(ι tRSV: 'KN$NO؈ Rtk $q(0C^=-4i>(hϟGuш+ S_ҝ, A_kw͇\SJ0nVJ׆NFMR/7|Bi[NэՅ6@$ *zONRbl _v2 3AǪ鴮jo#Ldw l}Ie6T)<ev)6g,R&nũVp@e._A#5xf?k߿;Z@'~7#kQR?% הWc͎}=5ӌN[>%ʉ}P$v,4 ⋿n=Lx%w"[ˮzHA1pNFl- P:a.zv:_fq2'k|j(By GO5s熪r wk$JB Ǝodax[5j'R'4htM^2IQؖ?Z[*{}khl\s$EY\\S~qm0۞x&vGGwl^qa%L>G!@Yj類Xp *h`#4<OE8wnA\^386^CmhGyIT)ר3AncG[._OwY|hqS.he9cBz ͘sC5T!yWnrÚ }SjyVcSfdzO+RS 1Z6 ?C)K,$ V0rق)]tP&8J6N mfIqT5Q}A8\mqʎޯxn4JJ~:fVk@x-QLpտm`E)$HsBqNɂdt8b~ 0Z)݁νC4^,+xX|%ڝPq$ٖCh3^m) CReiI jo8;+M7"r1'e ÊrQOkF VmRn/hD=$-u[Bt"[ٟ"wߊ9|z>׺A;K+t/X0G>M$م'(~<_\[MI)cE+z'`l&m骚wb0$5%bgf;iϏ2kNƆY8i vt"l`ĉGo*3!zg??#}!J_6.55#s4.9k^kT(L-B?EQOlA4*Av S#{qC#nwHilMewIC4Oe;{@fb#'YlY_#loE1seTFX! sP[{bI#hX%lq/'~!. &EZ#&AV4ܽk=A2+o!mXR;w"0[9)Vm.ग/R6Z 3(~aIn^3y(k֨r,ZYlEab-<<,GJ\xS'W@V7jP!g:1 Z јnޥˇ(sC"s҅Vĝ :6?wb8lG}*t' 8KdߗJe8w>5zVgJ7=*#an2c-{˶ _țdj/'T}7) qzB䥛{!|P5үWp5$Qǁ&q=[$+ܦJ1D DwwG äfT[ w;#ZrleAsx| gT1y_X-]ʍugɦ#M+v٫v S&_ŃYKgŁ*9g? uԚztT[߅ Z d4  ̴C='pz?W5mf)lBec6ƑfU \GCb$bax c"Kx2mPEh.A9xXI-bO5!>,4wjZ9:bu`s\ oԓ$| RxJrڵ_V$;ڎ"U~GXʄ其/g\4kGumN T= ƫ sڌY͡e'hݏaFX k΃I!ׄn~M;ϋr0s/E[R|ESJT$ ov( /Aj:!U4؎;p;d(Lc{y _ۍ%Vp:1 d<+V6ؓ)Ϸ5۬h[Z3Q&G.EG] V(ބN3Hu7w -d*fQӠNjjan|o8 'rYPKgr)"7} g9ܨ`q}?(88#բji&t@ Y-bXMd"r(wǪQ \*4QbrK$qUfjAYx},6xu"] r|fUksR[|7y%Eq˯苣@Y~=Y(mܧ @ ]ΌK~ iL6yplP9'#CO2KTT~6z|ҷX΃Nou$*d1i8T/D>tzYT#n`s$G #V"Ĝ>uc7+Yoۂ5̉&# O0Yyh'[b*U''^~AG56TOTc,@.w5v-YoLS׉k_~bnzLbs4|a*W&6 MrFT}Dz U;0M=IƄ&j fC0sB!*Pekal M*NR>D[^#oӕe?m3+5cx4`V] 滱f]34ٴ4}+{ Z>m| LεcZhg2LThܸwiտ.&*!08[7g7AFE%b>U :Nk v`rvG3q*cgBеxwn ޤaDdnLDB}r:e=8$…2hz o=r*X-,cV NSi%g-cӮP&Vrrzڭ2'DџPϫ DfTO˴s\%,1bN Mөɋ?*rB!K̏ g/jX  6jU,fFDXJ-{dN'P 4INskߏR~Sc@ %l^rZ l%1?D= l0~i[quOтPNk X"{M5YH`l_/ҳPk.i]?+ P9{IKlN,r@}ďT0A=!+ߦvtf?)T;PkPWYb%$3CGqSJK tU|]ZU%Ŭ$xfXI"fĹOcGApS16J>(B{E4H:K{j(MU' ٕ36*ü%|e (`8f%AY#stގ)''m0`>ZFA7 X>mM~" LW?1#Lpy)$6KLCE~mޘ56DT_fo ٪ 1ѐnT 8$LY9o&-)Udy%ew~͌u#ɍ f/wԷ# (P;%*E&Hh hx.I2xߖR\/ghmdytf՚HO(yY:S_H4x贫gL,{aYz!_+իLq {(Hs t堯asZY$ubTך@_*F5H3*/)(c آ 87;Ak'^p-L x[P("L 7)^9VvG2 ۈ`G8˸lpV<"cnI-#i\OOq/~ZV(@ h/ a Tس&t-^#G?yc&tyvwZ;5HBמ0 ;>@*Y@R=/3%&Fi ;5kFM-(_ C,kxR.k-^'kE ST`b. hi7_óJ~Ex K*CFTġpŨ1([xŧT U&aymSZ?~vBH8ǂw J􁙚"*tj;SmOFu4H2M/ (T?cEmwAc38_=a%b3*~X# ^Ev#4wmɬ]1}FPQ?$Ñy7 6^D}hnvkN{&)^oYNŤ}%pmrݪ:8+8.5!(d~+3T6rD 7CnY\ɰP]אZGeJ[q yXQ!/ oxBl/^NX g~wR[v1vV/胷WAi \K ?KXëťr4_p3#')nU}2% d"Tq1],Jx(5_Uy@[u9; ^+Zu"S9xdfzPoM"VRvM" R , Hf/2%-g~?S1J0+*p/SqRwi[Vp|e묯njIg5+WOcp@f#J8-sw꽨K҃G&}6]Q*,ҝbu'%" jWY%G5nP20LN&h,nyg~0ew lPvơ 4fC̮<Új7ĭT/z`;zՉ<"WT2u\=ӗӏ]o.9V U\RFm1B@;,hUtE*%24 7R!,u!Ò-Kc Od -QZkEHs N"㴿ݰxe]oX1:AHl4Ζ }9t\o {UiRSֺL sgCN bm$@>.a΍)Co0 -2#e&h5_,e! c%qN m]Ӿ>*vy$0\6ꅧhZEֹb,Xa-ty:.A~Wg{a^dIxa>RDDbVU?KGr{٪g3lrӢde LZrW ^kyvi&.? #$d5 ZRsu#q5fvfD~`K#BEBi_m%S *C`SD1 ^?E\* d5|yȓc\=bb91vUSz_}5@VRxH 2IDf8Ԥr7z1Zc/нRH5jPQ(z$CYnBE@c&pYYRO)$M 1é&ImcSniˍ$/A ?:?g5ir9^ĿFB !I^Tg{6\It6c˙SSBa,9fA$wH%DL%!6{U_lB #ڃ>hMt RSΤEn@__ ;Aχ}Iciĸ]4\Z쓬:@.oֲ`'S>=c޽iW)޹!9 1l9X7㛘" *E2K玙X:^pA\' QIPֱi:CvaIƕH ΤQPG͹R?F} Ozz;-jvCaKZfI= 0} jerXȪ|r6ux|kmW &ubPZ4z=dUQVg@rRH){bCX0єc󟧂b@i(qI}/Lz G|q5jDd^ue. @v)VǨB2!#f̾4* t/wZhמPE"f -a^o*gTg} 9pDќ? *+S/rWz߲(<kp{ޕ^>+Ö2܀Q"H˞bd3 )P7R͹vthrOs$FCW"rz4]@NbߢSy߷5jy/+6Oߒh2%"s8+P7wLΚu5v辟{p&X%F|g|a#{108N y=wiAb!ͲK6zyo0 E{2(3rBDx9^p}9UGFL_vN[xYڻPw&v̱\  t)ۦ\uX绎0S0JD@^rCBin(OK#n(7-Fzm>Pj";$OH2ΤW5K\G>;p83Е8'=P|9wyGȺ\,vG}+٤SFM(saC[OF:CzE }QNw}\xG$v,Q*mkGN{;H[X)T`{ΔoSX+Ф"4%ek:~;v=B?Py#+ kS$oN@CC{'cve/RgBd70OXxqB/Lf=$Yu&FsxbkKv8&~Jnxz®yg̡e8܂=l-Uz!+~~oQɑͽZ OYygt_ޟyr酛'6w0vg u 8?;+0L$QTqV\I#|ʆڕX;X2؁(г"_-flBH *w'r߳[=&0U?|Kף5OwjrsE}2C&c,b݄IJDŽg@{m)&H2=)8&UJZbr nu,:2hFR*( d2]˨튥.紸AzM~V|tI~vZD$0Y5C?B 6n9 4 ~<`(.Y N0WΌK5h=rĝ8s5 [Qb|pKX9f.NS5Z/!S~CF xa~ iRk_ ͤD%AI`WAؤ{} ~zTNVd ~ROف|7onzT]!n2cQw-gŶN:áp0ZqwG]CbU#ᶯD=g&ҍ13}:=VwǑ7~T!n#*>-%J;SV:n Ӕ,X?'r [E'{,8y}4Pv{A <<xfK&^&`ؑ={y @=L-+3[g&"ixb|H&/%3ŒYR"1^]q׸.g6 *.!mjB98 X+@|㽜ie4BL*Zk ;:/3 v\InDUuAM#w%8e| \;΢%W>У2k`ǤpđeO tu^[?)/;@12ޟ)t|O[]J ؠim:U} A^q\P#_]SDp# ŭl57dTozCND8{~{2CB*k|Guxt.c.fX~CL~RHO.$ <5gRs՗hQHa\jpUfଵ˵K,#.(1Ci<}*e%ܶ*Uy87nHKe]h&f%Эؗ&"b}3̀)mNEu9 G$%> J6'#U,<'Dn\/(# ӿg%~NS+k6̅Pt!*0<$͜pXTÙ^qѿyf#EUmetGy%О=]0JN^Ŝ$:c1\H_ HD27pTƈOE_*^aaVC;:+}دWo&xsL4@ev8T'Ф4Kh|*q yVnEe]m.RgJ[ GSpN DY`w ';t0tot\O/ɔx8d7H)[M/s倐N/ axU4ΒQT&L;N]pn|]J_DvZ Bo̞gp@@C!eyc|L$X:|(u:~ubq@2g1 }Val0ʾmjQ3Jm-!8˂_n;Zђk 1bau8+KF2.X*Iw2` wyFow^]ɳY'`&}.I!eTAXIw_:@zxaIr w1(%c=ߨ/[_O4*qK&s yˊdR*Ə:oc̍t 88cBbAx'ZYD a?JP ΋ <$t*)V1dVК: /\: l污e) Ucd\hX%X/PdIywO")p`2oU2@0([ S|/>ݖb8o8- lY8~r#g]wM r۬ZHy_FRI|Reź|vAi&s@ <؎D*-@Ƽ8i6d4ܪO2Mq+b#HߞE#j#]~A:P`rxm=LNdz'Tq# C1?؉³ܽuߝ]9UD  :CD3IJt-%kEzo%T`Av$It)Jl>N2w[{-M-YqI3x~F 3 7poSQdf.XԽ曠Ј+qV!KN N;1RH#%fqyz[9Ew:(ޙ()5 ԭBS=~Bvrf"rW+05|VG5!ڸ}7 xTX rŇ#0̛2*m99ԼUEWک_4d{\ 7qyrzwY"~~ %5-QVʠ}HtHA7vV?%]<)_ s <({kVy\Md5< ϋzkK✾$Ҁ?r$q:w%\yVqRQcIXTsNSTףpNS/ Y 'zI&Pu-4f#Fm5咩1ܮS/.YV۴ѝ=zH/4 kblfmZ{K2}~z"*ۄ/r:!}C=zL%>q_dVs ϱ'fVp-""]үy@'\ڬ)XæOsx._n@Ŵ2$G_fyjl@yΡNn QqK0,7; ?.|pN/ r,Y8YUgY[jSeӲF_[4u#ÏN@WTo!‘0kmÜ-pU(دULJr)/lE8/=р:qVv1ԧ2@"I<9`'ҢΧz_J2Lv<<Py=14z] 'Cu},8/dR"YimAGRHԯfz7L]3I]p@F)XnUR~n>M\DZֱnmSCd;6s_2'bA =%|$ʄQ ] fv=}̥7FLosk^OvG=yFXn^;gcVg@&ɧ!ZN@I'懑/1{*B#=o.2hŽh#O b=g~=5v# 仍}'Ws<}nK7g-J8'lIb]]-- #%_%lP_E0H VQ7Mx[C\kKLsVcV85̭F< ;~]kxG kFxKw^Qfs)e55m8.F~\Zh*Uw ㍵=a_B2J6;AWx ξw;U͹Ƈ{TV_ A8!s-@M+]wֹ]x^G4hڡjS%CkRuחtq-l3]xTL wsKlp_x4nJ/?F@dsDXU暚 E+TU:r9Ap.qQ<4P+$2 \#]aXsh`{C%(rCRd'~VSZcmRjK׺Sv8ײJHj6]Fu/!as??31yւ[QcT;3vV"ac1l]!&*elt7LXȿ/x`'%xCVO+][p\ u>;?۷oQߛCio:6aK4t\?Mt/̇'yR6}8;Fr5Ǫ4Fk]Nr#G&v`u_;}ӲrLo%9&mVT|R<m5pYYV4fX0[00 ҃Y\0G+ EfY1|`﷡?Z 6{ $"^2GM0TTžY΃Y71P("{H$EGp)7;ڷ$rtϒ2gא61{gq)hVXk}?oHHb*)%IU$ R_Qk*w #߼H$ZڨPէ쬆igHn dUZr,id|EEy&Z|wJtl& q-6٣E(Z]]Jc@o[b#=\П сᬅy bS-Yƨ\kq*;sX 53MgH*٬W)56'.Ϋ2qD_1H O(BX|~)~֏Ϊsr!Qw$p P88P;QrKL O?JvV$F*D=U)-Xar'vO]{\Uڳ&+_J~gAp <cB tnl97֎Bbq.2c[ wS+ӓxkB:DW6p7^H31.WY93OY ez0' X>#,R]\<{ۛr?-{ڎ}f~!0}$(8١5)Fj,^PwkE4}QSCԝ.C>|i%s}+i=.A}JMz"86tvg{yh1a^_Y{vZAlɉK<Ë6iQPs)En?`Hx~ v+um=i:eN'y3* ^;Z.A-!@ kp"AM.EժZ ځv];EZ8x^!S1>)_j%DW"Ip@%@ >ÃJ3^+b@6( 'ѾI%Yƹ/*~flIE5 |/H1G nm.@luAnM^~Cb\w\+S2vGK3s h?G $6@ḁazU1ɤǟVvR^?j Ys@iQ_IyV\2xY-f:%$ n}n(@ajA[2jvnKބT#JƶCyg@D5{$ 8'dݕWjtf0_ةw0DUWO\5] ɩR/eOl.*)#8:%s t4bR"^%S6<$1RM0%l]E [Gd"&md-~ifѱB>dezS/冱ݛ(bv3&ven[0.;S4nJ@@!`g:r0>Iua)1.ѽH956EG ]# zoL= 뻈-eQLJDaXsKQ($t:C"՘W\߽ٲ( K,l>V<mQg #mI/%(Pa:VOF.ѮNtt% JxxȾ݋8iHaQH-'H"^R㦝#2{' ۰Z]5SuF.{P;n83bP徒~҈ZXe?o1LmG:C*_C*DZA`D;7$3dL׵qkj鵏(k0ɍ *,o2^Os;ۡd#y@ȁ7㽛 akcY;{Yvg8aEvidXx;$Iزg2HLJ$6d'ĵNE謵$9?͆2m^:?foP|+/^IM0Iz6~'2^dEjZ1;<':^=b߸>.# Je"4YcKq4qNJ!1d#p}p-a?znYU0]If`pk.q޴[˚)jϯM! ˰B0(=Y47}z1M;hSc)/j7$~O|AZЕEU}OT^FSQ}F_O6y1_gQr*}̘. ?,y 㟥Z*=g;䲩v T rȈ؊[+bj}6(ȃҩ윯={2\'mwTe^BOUmGWv08H3ͮ,+=.eTG~?B\?}!4KKm e*i<:U̙%  C!ez.ا׾M̷ >;<M<P@?neK*6)X"'H}ڌ&02hm0 n fOm>nh/lmdT,@ 2'4Saìݥá} Rs~vg?ϠmZyk*DwyHlp8jhseF2lQGpD10(16CcM"o$:BGEZ (rdFݟMa ri}B\M$/\@0?[DHÕ=' ƫZKۻ_Xxyt*XN >aX?@ >EHպYR;E iipg6ul)XF9~=;&#Ct1o|-)6j򯩳B&O.O1֍] Lq9v BwThU¦UH~3?S EK( GA.J\Bjc[cÎ"֓#8oT%%[yi|Rcۦo/oYR=n|UX̭1C4xA" Z >(G❾c#Wk5懤k^1I.&{gэbBASn*(++R :`4N>%o4̍PQ4}@wu|S١@kuE{<&#hyxMhFm4f h.Oڂ!l%\mV͞ŏ Apv1FVYZ ji湰l/9i%]qH ,GE\<['Y֚(\Cfo5j]L (;(Ə~i#9,Z\ wf%qTO7Uے2#0?n%jy4BUsM~6?Dc6zw#CpţA Prv}򣲦(fu,b;B!u;@1IA}>91qpsKhAJ͇v+;#_NxX\qTe}WO8RXotf6IAq0,V\6̳;M$835ri28ϘU3濲:ŒjYz5 )#w}gzz,=t t~g{{낍8Váw?̼/!`bڰ3 n['jrNdg_i8& -8  XH=Iۇz0h-s2Q{15**6ZCgʯ'' 7]T4gv_}.dx&- 2hqFT}*V`JV(r7{Ãl^LP1d(pIh(|4Ye 5Oa`Eˆy{Ow?;<;kHX`g0a8XIs5$m8c%MS^js:O]I,Qۭ->H lnZI\v#ܬcQ1fA+B%⧤pOē4sRqۅAZa+‡B<̰L+9,hQpHpk8.Iƃf(@,fri)\#uVQjS@_'m .r^ny%phHT bPN7ILA{K>y<չ8$  CaGmw%LoRMD$Vg\x?w*V3጑Eb]vVa$jt 73U!+uu"$NqKJ^BI"J 9EB$OilmH5RGTƶo`V`j/u#Dl!gH'=}-u nxwlC(}rLZ6 $UY)HqLtˑW{o Q~xa+K+= s:@Jl_܉e42‰=#oZ)&W5BoP6CQ˞# ~5{f2Q9:Y+Q/M=vlP2Xj> AYŖnO#RݥqXC2_$ߠ?>\{_ J=+FAFe 5G^ jZܓI8,ǁ Ws~Pme Ss/$CK Osd4z*iKa̷2SPlڰoaI9Y_#e){27ax}`3<F'QRy8G"m)D*ɬno^5Uvc㗧 oV_ÔK$0p/ۅ0e^%i.~UZ5Z%)*Za2BQLwЖkD`#MgW=n!2Ib駹)s{>wΐBamZ5|?i&ь*>*7enŁrrܵy)k!rKArmvY2#2 ~d;qvN5uեUé~8#:V^wQV dNnZ, t D '^q@Ennm~?E!:` d&J?Ki_?yyt4Yw0prG P.41$HZK3=p1ˆzЯY0ִqwsB,qm!nJȀҩo;")oFM;Sӎ q~scѫ4N( pŐKY2oK8武h['"G| \ۑmX Azb8YA=sFnNP#uXŲV`5OH)8Aӱ΃*5bSEMcj2I# 9g~6,{0AAo!Y$D`sKOy\ yu$OdWD1t^#՜Ҧg~5/ኅ_ÕLɌ0v<"faMHзF̶' .e > sYU!( \"u~sq=-#c@'buh`B*,@KVa+O^ɷjlz*~i0kP//rJx5q*9Ec٩G:Py\ z V$J%-%OLN}AXmIwViڕA[XTł-Ņ=r]e3!:XH_xwc)3®YFl R A%@풸|{ vSrpݹ8|)~yȑv>.gHrh!'[Jh!Y%…lM&K.6[S@Btplt8%Pz.3OWHGZ%OgT62"b Ub{N eG( r܅g"(U;6Z{iƯx2msPN0c'C@bN/: 9:'RTYePBTw4}h][~I $-w. lL k Qs-U'ڶϙPgEOmoJ$'}{;Fg)aUR_;ifDy^'cf7Ze gXcjK‹P wH , pI|ɎN% j0Yؑ`M 1B6A1g57TҨpK c6Q՜4T$VCmκX&( MI]12{_`g9a}fB[)Ӕ[2p!Ǟ'Ƃ_Pa!ōLvj3@J@̸_T[0׺^1U|[t^CgTϏ~ pPsF4UStW-jwM7~{*@GscVx9նaXasO _.^*ey5,ORNCDyM[и0/=П5sLZf\u쵼2so$ڻpTjĶVa$k+y; ^E~mbI(wz h/s7,i%~WjK jٴʶa>O>UU/4NLWD+I'λŲP_1zLqӑמ:Lf/LW.n%4y0PyV#uKc|}kt:dkfbl[ ޣ20-,p&5ɖOE0f)&·H@H};伧".` N4 Eh/:0wzlE3L;$'[;G,R1'1hmd?E~}WZ#hШ<6llCk@d[I{ L;n Luo5y&lis} 9mO5 ?(x.ZU~čj&IZ@c{,z٘h)T]ICC _~UGY3(Mr `<9n8G {FZbTې3?ñ,[*#Cb4fX: Kk\*Qc;i5+!} 740A1̍7+C:42,ǝ[v)62wZ@WpWnSDӱ޹*HK̄k^]L`P' )E܃!UǃGD֣'Q,,4I+z;}Vh*QzlD>*A",c%jWѨ _ĨV_ n{S:ʙ!%*#:+$ DMYdJ4ıg?)*Zy9#͝<{Dgkcq2Έo/@$3ɇLvBGLF 4D~Ze2}r$b~{0o a!mN* ܣ͙򛺞 `ɱR~+{فW/pabɕ_8//xX /viT{LGZ)R )ꚑa.g!f7 `fa3dWu;Q8M g>HnfwMf\!7o ?̌'xCk::^M% 塅5@O B"#K1Fdej f'mx%v bK?kM_7)9-sP" )5ASȅKQ=;5ӺSS9G= L|򳊽d MZ&6o+TӾ%TX*Q2tJjmݪTPV-]qxnxH&y&$Tdh&}U|W@XaA*Dp"web_EkV|O"-eX$!ZZy55Z'BT vN+<4N\^G҃ר3g>Q5O0nxX [Sku*q"z}A88#rB:^-e:`* I˽ӧ}T': MdJ w+)dFX$yuԝB"V{!/iL?׾$%bg>`8y-wOg o~B)Ԣ?oO>eXR*]OEDC~j(ɱ2 r)԰Z\fcݳ/L,f)jg&FEmjo8[Y>t5ouo*}ôҘ!_طοmʩ ^m!#s:j>`:~g/n6IdI%n$o^=) |L B洙7J˳6`_Ҿ'g8 H)a@?x03:fU˞%o?x*.Zka$(C05([2hXJK{Y|'; (|@ōV$=tѽe5[ ȃO|YOsZk@d` Qk$\2qHt$M,]8oGBʎNXK !yÕQiLA#6{5_p!lRM6}6t]n٤n`|h&M-Xư?wq률",GdRV}Zv2MXkI[m:qcs{PqDv! E~Т?' rEOTIk+DrLDNqAj:2|,JO& >,hz@!h7]ƖLS3,'l3b)>9=Pf1{q8UZyq~xӌz)Jo?-QU:}ܭ~4~1C%G.z,3Xo)V 5Ѕ'|9]C"43V +oV\U[Qͪ͋i9CUlKs=畘~??&X#d ^p15J!5nEKV;pK6&W[\Px֋2UPS-amĭ,-@fQo5x=2c 0V ^ʦH/'.>wlsũE/R u>6  ڱ$mH\ߘ}\zǪ՟(6bU8s!?up3~e"K?szB}lUtS!8ʖXvߍ xF42Ȣ`'c'~9/[ŦQ~4Ea%LDݙr6!I-ݟqbmXפu?2;,̥nʀsq( p_H.ugڇƏ>|}m} Ұə~Mgo.x/EoD~ uTn1+J\aI Z(Gr66Rܑ VSKiTLv$χ Եk#g}D$頛`n萏g-E dM@b2>Ν(BtQwr#V_^ y]Bh'9تտU59aZkL:kDiƟ&aTe G|rAXg7QO/xyH8&u-vdYpLOrt5횃Z;uwH4Cp/a0ӳWƅSHO{e Ν]DU%2Kh״9ӚAFߐ48̩c 908(ZlK٫LJg|PšԳ<;m mc-ӿZDېt}ڌ %Œ+r+Fܻࠟ4%wEP/W;:(V|v,bިP8j!fϸ|mҮ>mRoL-5Gvme.ckN>%AI@ 'SK6 =1#V:=g邟XxB;}d0gA w,xΖؒP%>y]CAYr |rx(|*Lh燀JvX4s@i~Z'A|Yex6Mm7틡e)iKoS/[T<.%B5A/*>&]sg?ⷳyfClHIC> |5'ӍA7+oUdq1o$ gQ츎hh]\}`%Ɂ*%82ĖH\ZsPe[AA~` bLi,z||C hrIe`5}2:J~Jk.ngVe ~alףioݢ~hkEDatfߊQbxS.,u( ٸULA@`NGB:߳r9Hvե‰3Ac9ǿP8/Z'ŃPott٠UπQJCK^pHF[d_(ABQN`"[uzJ2 LVhOB4(|&lP-UbWrU搤=&i$OK_x0s(zLօOmڼ7go9۰U`iu[\[aˈ< J:Ne/Fb3g?(O#,)Y{&l~f5څ5H 4PA=ZѠUK%t?'u2V3ؓ7:k}~CF[' W%sy2g]3ֶ{di:pƘΒ ԅ졫Iw"YOQJֱHYC sx z~mbjd3شbMa+)+~T0f9%qj} ![j/}r7a(dZ"V3N'+X|"_Q_NiI6, 2r6FXGmvʔJ> [ 9&x-Jm}\6*ݱGʧ69S% E WCpho3|$pM/HVa#7ƴaMee>.a27}P\]9Q E"z&ڶ0{鮰]Zy,1L$FUŪ5#ZSzғ<'F0:Ie0f\.")Ma{ bу%=N~Zl(6/h^&bwHH(\PM\Sht Vpl ?Q< u4oW^Zn+7v̑:c!y"GmiaᲓ"az%x:ڢ]vs e\dJ*#cW!Pкx:`/zEcz9ZP]A95+Ge+ƿ<'SAIt';RU‹JEO|;g+*uΌHK]}}tꗹ6l>ZT`ҍ)/XIڨr;V٦>zOAC iC*)vV؞\Ɗ"S&-Cg')=,i1:ً.}6g;th;T'gW"OUl5Ty  cX*hZ@p.0(&C*wAP^o^|# cuߴ*Oz\1XN{@!%`)[[g~4ڪ[NA=E"_92Yѷt^ٌ E 7f#Idd۠j_H? <0(AvXvq IumrE;:qNլ$[Dԝ{R@&]# Ƕp97!JvL]Uv|n'5[0qLbZİ[o:1.SrphyBeňBTKkq|[0˓xH<ˣ5#7E~ \Wr=`S9L,!awT (ȧ%:qjr Ɩb0nu AS:1%۱n"/>1͟K 4oLE/҅1A_1}\ueX`E F!C@!RuI2RujKm H& }@{&s*x eCʄ'D;.g d_/0#MNOq/3Az]r<16 Krob 6c a["h]sVuErH䱪 'SXgJ>/:>msVeGtA[կ;DՈ>>fa,=ϋ/̓YN LDEG;,]ٟAǩk| Pţw{oC 򵫴eP$#~cF ~aFӥr>V7!Nozqܔ{Q ΐc O'5OzPx= ۚsF2@F@E6w{&ˏDž#AzDF!qƩ.gKhPhn`MfLAWnpУORlk<᎘)j&5!~7ܻ0%R,)`9@IrQ>N̪K%8*Oojʁ`_hzj9~ v-ܿ b&);/z )B+;E[ ף`LW:R (4!uw rih@匤 IgB:K}smj_wrFzeSt>@[ZxA1"pSUV'L}_t?S<}(97Llrp"uxչP`6 sp^_]#u5+?iCq ՅIA UkJqkE {ϢlS8c='Ԇ3jXFkg 5Y/Vi2e2n*_GfΔasƔ)4 { uj|JgNsYd:oP9a^Fj |*\iG=n?˽}qM='ߦ޼OepCBfKKO jIuX'wD=Z8^k19), Zsh @nPܤ|b2· %bPB }rj B')2©3`߉KoHCtNkO'FwΖ*S 9KlQEe0Nj1:->ٕ8;eXCqjhI:_ߝfW8N&/Gvf*i< >0'KfVT[ZG0#x 6Ndڐ͕\ }⺠_xY0HĎóY`Iߌ:TT|e!(x]uy΢ l[FƈQʫYz)kI gq enjI# OЇ@};X*|' 7_éxbž1\OkHcXc Uz+;*bÀxl'dd٬~`_\]|g{JouZBƹˑOf!XQIPMY@|@n*hz'4`:`|\S18i$% Lre۹µ/^Ï4o^旖Cznң,uùm=)AmD?IϬ,AJ)$n3h3_ ea#$k"7Ai? gt;wD/Ag+/B:/ wQs+"I9HI2|FhT3E=!Zs(J8mz@dM␸q%䳀׀'/% TL~)L }0r,;:k[_1gԓ4SUUr芒u@ƻC3 +3oVEVEnz6$4z(k .Z뽾3qprd?E˔$I%Ie)^x4efTY8,Q|%*yC,vYyDOksՈ"L2QC_VTo%9wuroŰ>e !ؕ[X[s_:}hdظs~eMgcKUjrY¤-Zݦ$BG~ڡt&/ſQ:xf0&JTs.#&Uĩ2rrMJ!i t_m͢ _8hYj0ʑ,:&A}ZPZ[ɡz4^ 3vz O kb$ pwbd~Qz =d4p~N1a:{ PN F}9@s[UDf6L1$0ɐB<٦dJ@oD #K x&77 ǣx6;&~4|->=uoXɖ= ZFB6>9*k )j k/AOeP=9N\C5S{-%{SҺ.AU1%؋ľUtAX+8P 5` g % 2|t}x7$ F X5S895)3l}{ 70#iCj+@BݘaP9.`C,2 _WMQң[;ODc &!T7^A%qYbB[٩̛GJ235EìRRAppwM7{kn@A%x.Y0=&jCF֤D>8afHv@?-w4x_q~-ɞ ==hY7 5;TӖd4t(:̎%x. h3j,M5T`OФ៹LdZ/IB@)Q$k]g馪9^knP%elZYO;.!}Kќmѵ?w5hZ8=ɝA_]Y[Ap(ZE?9 >O)ˢ(] q^cm+lgbXrc>݉¬鸕j?ԎO'b\ "_ ^Ja'_U& mmP/K& /vW]Ü rz ogt/aۺG!s(ov|x&)Ožajrk&lH_ӈMlZKiҞшosL)B U$*1`GPwإKv)W]?j:mEqt2c@D#ͥͅ+ ^rSӾ }^{l<)y7c<=p1 '%MTÒЯ NԠI'sR>,fS-Mk=sD1%sPԓ| [l5b=B!&iKҫ{ET)ْx: ұZ7#08_y40|s|ךMob.Rw _s-xB'#o_~d tR| ?Uޱ*8sM9+S40l8cqtG%[fj^4d )4^Qo>]~ъinA ,{=߼8pW M8)߿p6ݯZo%I3:3bX;uWY:=, O2u&Ĥ2.+<\G t2ʺg srLyaꮜǁd3V`|gZE+KL[1]@.ѭ/xnG@oǘExQe;){=i-RCb௞k ڈUVXSq4PkrbdA'Epj7J.ƫ~=~h(g!S%}KPdج*|KsCM#DohL?SxbcT#dqGΞ!IUYXփ,^]*=bɣK_VV5[& ]ަQ;8hoP{RHU$aY@3}U YzَGځdKs4sv//mr\IX]9iU=ċ[[Tԯ2"Py T`sD3@MicwC3c^rceM}!=e^%n]`Z1:W!-:-C'6z] HXREcD0N4dd3N#H]TA( c磛TW%>@ܒj*6Ts FL]g1FJ0oE{v?@HE^i[ 0+Yz|`"L I Lo5oZR~~9]t2EBvbrv{Nx x6j8bxw1`4˜u֗h@=P偺0)1Ύb+oP"l:ճ{$ݎ("a=Faſghj|82Bb=y B u@K“AmB>e-I@SBPWH|<'_}Z%,,(Sjb}~J@[ k `hEAzI ~1#| ۚwl5w6(w#[;r4b{଼ћo.#^ˁ[[jHJBI81I| U 3Df8 iM:OTMۢH-0[)e zÌxPs}3+LF(Yf.\WXLJB sMų5:~ ]0!h6>ckhZ,QkK1ZF="la$1V,2B"6Ah_7Vxi~ YsѠ#K n_q2F,󗿞7ٟ5] rĥc}Omdm9D7'z[ } 2a kg@Uiշ9؁O:/ \Ƃ\+pK>2%Z]ؖ?qC%y[+iζ_iJxR85b<%-@K?;M5٧G Jp +@/bAdjY+<>{lgO /cBkGxֵqۭvs;jYqrn](Pv3+ȗQrU.?gi)OƲ1 .yuoQrRB|Ӌ~8g` ?[U\8l+`-6òС#Y>r+Pc?k/H @ۚVBƋ.߳U~@0&k"vi}b bDA{kUb@[ iRԖS{ ˯/֒m袬 n;P-VWG)λ2o2.tT<3sI txzO8lgjU-$CZE]:>cmVV\ea:%pS!Cwb()2G%YJj.~$҄/ ģ y:z: Yox:iO\v_e%V\;ZxmH{|sIhJa^>a'Ox^D iUl{e~r7e041O ځnY[8oB-D:/M-xod)J7ku2X'ku6?i[nɧ*v}ɣj aJRU7vv}j-nߔaD4NپꡍL1~" P@Fq[W%6v Ffcx_ܲS}Bn(aW$A(gSn!V [AØx%^QGhLg!GfqBe}ٸW!>vqPOe9_kB~eFCdjRS7]'Z!7|I;Gǂi#W'77fYwd!܊;w!^W ]%cLC3 `V:P1/1:<=?>~qPEQ5[<<5sZ8; dGޠ-hnXdD&O`4'̒N  }jw cm*|qɍRdcNUcj#HM`w[-Hx3L>["/2g^$p(%_eɯܻ-!{c'PDSY|S7fUGv1k?BvYC +z!8,描u` ؈:eeu,۪->)BW2$Qɛo 0t_-u) E!fy! n:MC#KѦaaĸHܪyׇwe`^rO@9?>Cp֥4-s Ej9V ;>S‹Wü 98&Ί \&- v)F.Pg)wR;%_snp@j\;hOh8Iϰ5fzsyVX_^_C K0>rZs89QTqvٔndlé`Ň H= Ocr_W# bpt`-ҪG;'.՟4=LY -~o`IC}1ׁP 1)Wg!"~uD}`;%<-^3-<`2pW꿖OGDڰ\!e1[l(Ls ]JCpBn`Zv{4X7L~GBCLKIzʃfr@icl[PSC^|+{CAu!ͼUڀu}yt8:?'l^|{(ۙ37(ƣ%{'q4AtheƟDz hjJQVbHNl`R-i[Xuz墶n1C-q@u|`zew䇄]̹ '+f a:oAs ˞& `)B5Ly.PG6!0L3xqX}s?3T^ Øʽw"*} 41ãdb]WI,Ow0c~G4\R\Sð);h-J*>aeq U.S]rv(o 7dIl8e³?v`ė`>1 Ɏ=C8y&ujY4C7 (46D4;>wPc +Y2Z.~9+.#(&w]W_'sĀ% |=anZM[IJ2) W|d<^U|UPPQu\Te.Ds.ZfR]b8^3(ß˹"NW7kGdv"q`d.Qbct. Eq\;4Spz3g_[!8; Нml-?T8B}U=@). %xCjDгZH|gFAbxf]P)^0-nY}zJ jag;NA[{&By|a}VNTSԮdZ -L [Q|ݕ;|p}X'ʻ*K2fWqsm%*qJwiM4v[CGrĖTކяp1g_8LdFq9kx/S➺6I|O. ԗYcL5W.u=/Sa[!ٵC"=\5ꐭ2(uOJg8+ n3.3q29dC %EDM5b}¨Xka.c*V~~{9Q/T_W 0X\<C'yUT$+:gĩapi:6!HcAqԌ,aZ=$A&:|B5ǟ7qbõut(["*e$5*g{ڜYJVT;E}P 姥gV",bTmVqMLzN9XyN)4{ \Zq㌀aL"۽IP]S+y.,C7r'%PqCZUA8}6v6+(Od|& R(hIN+XBsy}2ŘCXjp!ar&_ŁȘj3MH@:U b dQu8H1Ce1r"ibwXGY{%hE&͍.63|{dWe;t(َ^LMMaffqV|QC2Ա R"qi$9=r.x/46%-p1iGU*^<8/`54\7Y%=q d>@R9I3*KKC_pMB4 eЖmRaCC>I5J5G}S^KۍS0N"nr/BZlv15e@Z$KW00Wk fh%[Bc?!,]Ë;vd7d g*K-X 4 LjR2c;Y8伃H4ʋh bgHU)KL#,b*Nc]t;e|<<(0t-Y](),R;`NWUlc$h>S@CZfY.#;Fy|\gZ==~ɏ0#+A6 EO[rF 6o|S>D<,w1(>႔WR|s]JyľiR~@j `6ا34i]3V\9D-^q6j"לSx)=p/id "`M\B.[^Ђ=r~v+-7x93朓'I3Uv aV:|GAU*\so&dg2'wTΆ]>g|v73 $H$ov׺E;V#c5%Cdu>Nl+JZ?  IYg7uVf:>iq Гb74ݶKb)p X 0esPsј| f?T3qrI\`p(geO30667lzS:B 3m9_:dO+p }h,˨e/6VNFk4º&L pcCMAjaJpj jaHg,^BEZs{ئ0 nN\{ۦj[vR'CN^᱾?k{`11hk6jֻʾb.S{UXs"o @k.";7Ȫѻrڕgn&mWѿYh_kC1e¹#44^o]dL|qG1?kA眨d~X>{M%ҏk(/*H461k%T:Mgȁ|2vM9l%!NL{`Dsၽ%A׼ ;ō1)?c6HJ'Qt/ IziQYw^cW8 y}GBF=Rˀk'pKlϵ]?[*e⪒16OB.{~n2%Ȍ"שSH1DZ=X% 8p[  _W"h}b* J<K>ܲoGIqDR'D fF@pzWpEb$+{D,'g7ID +)W7"ږ>MҴW0(ũZ?s U>v(a ` $nv#J}҂hh9~I+ZAq6!hĥ ^P;__sA0\> @il)zf?2Wur#YɻeG: ut9pL\)RY%ech# 6_~?;(/[`[| 79,h"*5k2V{ p,/ShUtfN?+AWcZ-/ٲ7a*Ftr P[Ժ]\$~ VF*kuG׬Xn7kTdfy17Pԗ$v6peyNá0a9sak2ԥ":֬g})s\Ew}`wkmKOڐa5zby}u,L3lۂCqI6WKFZ jpi46H}C8+2c uzc4to Ы|樹h@,+GYFq@E(EžW/)gX-ǰUY'`yl"f7zפY1'xDj ;)jCs+>L?XqbTXh/aT: L9ZS>ä渋èZR[+'ޚܩI&hYY.s`^bn xܤ㟍 Pe{*l5fLxRa4i6I#j.){)#ao5TBg8٥/3&ʭ>3o >h2_cQ084GQSa@'SNz IH-K1;-Xwe2!F Yiܷ8?'|0#?#=v<^vyn~9ik qa|,M)DAʲ`AkRTd{EfQ[>RE)qrR__vXђLbvǪyv1 = qBfy0ru'#'/;=xεXyhEUIi&eiR{f4# b_Njv|}邀K] i$-⤢*zLw θ[/tFc PecZnᘐ-+=as'7{K{Wj[̬մ)`v6ïד3 OMB?9,ǽ&:uV_dLG"l-"#nJ.9y$e-ܢ{;T- -% K^*b ̯׳B> G4ƭռSR^XUDN9O@ҔT!oW'xZ 3=eܵfi=B(hcbC#a^TCUQX2L,anoC3t v0CLVO>q+@SsfH@H\~me~A2`3vMyz :6ov{>N !%o E݌ > ׽*>up#fdn6՗Im[Zd^(w f !^`BY NZ㤬n9|TOb+ @%xB QWEHmHJdB {.sN̡MNkpJŷK34 IgXR}嗟MHU>3{Enpj*gk9Ƚ :z(b`'gcw c1>(tB=;J[_Dq@%" nnx"`Z]qn2o 8M-FG$[PЉy ۘn=5Ϊ$Tq/aw#PLf4B\_M1Ied|; 5Ɂ.lm`9gQ%ܽb):EVЃ6ؙJn=족}Ԇ>@ :l䍴L ;fu$h+֖~QIQ$m}z_3f TZxG0 U2*Dߨ$/@2<^;L;N0$#̍0u콶7 lb&[=?eH7-jG{mb"T9.Іɿ<g囹!-y|<;V*־BDFjڂofoiLDO^NȾlw>Y.t K*sPh@N/4") TFD M7%8z5dvx&%.v:AW-IR[{!G?VyH\`n^m1#(mLUF+c~_n J߫PABAzyr]*SGrCUb*x5SLc7ml *>Weg0O˷j8g.kX:2Mv|?qV wzrj; !Eө43>=Wڹ|aRi<74QS35UK/v*sg~yj_D$ 1tъ$H Nߢt'4b4?zn_jrĩ^o}(/uYy>ѰYqsԢ^Ҧ( =%M7q٥rK%/t?2npy'x 5TY2ޮXw1i7LEEcނ X=JI/px-,OUdWRXCb$}/#}Yfiֿ_i#_$KLZO)w'9c^WдiIqH6d AAh5t{Kv N݀yBD%efIFoe#ߑUu"I7 M@لAy`nM&hV NZf(xaIpQLt OzfhbilÁ`#kh ߕ~]@~t5JM b,F\SA. P϶% ,qpO%!UӖ3yjH Gg_3auF'|zbFC'2IL5ѝX{9X6 *iqzZCV[?mm¾>5i]&z CXWOc+_OUel..qV@T3Z'  Q#Pa&t1lJk򩜨l&1Hx׵34|?i%/ِ0նAζ%8%qiqs)ujz-aF* eG܈%~#$Rꎉ -rڹyħ&_wOM}tK7 Ml7j5q&X7MLל=Q4jGy-1B*Ơɗ%zƆt18W^$v^0o(䅹uO>_p|e4(EWV0sOn Vy.!}M񼗼xqumuwfصyWQ7*nt)Wsff ja8T\@Ro]8[oq8iM_c\f JS.ESI MщNK=\ UZ&fM:j_LQZ%R]nšކ1li )_DPwŽR0OYa樰1Ciy$Α7_)X;oV 1g'/҆3b ƢXnt4}O LK,&oHB(>ZFyNT4ɋXXϾ֋R?1 Uo>&fg4NKmt y#y ژw4%%~ɬ(N(?6mDsvFL][P zxm[&[?jc}sV!rb8XU{pdMC uZ3Q3n^GJA4!hܸ; v*->(qN|95( FBR$Tג!c ȭ{F.'բ>DzHdQV9l^6^s4zly!* ,V-'Ϙo?&=c/:@iM yt1= aYݔ0t=dfGu° Q}'7Avn|(A O*_8o0FiFot||"BE6ME}\w+|WnOqoi*?OЪZ4 cqmzU| y.OJaUnBb(zD?FPfA_" 2h9ѦIi" *lB_~f49A q^ .N|uܫ2dт!_lv "8e䉦$/>kH |}TY#}Ճ[§/ zdS׋vOqcИM( # Yd~GXuSė3qinA,Wp+۹33[?5XM_Wq/C!#dddRxx.y Cԣu2k t ]55fU-v2dLmދ+8"(10 mm*TĚnOQW ѬO"oѺ[ W7464+G3:ƪp LRorB&%ffV|\ɛXCJ1 Q?9Ի RyWhr|Np_[@(DZѳ\|!EQaٚڛh}yjT+: Iktc;P)Kkp#ݷK8L@"@<,EHoL~VVr"BG; t=6svjF0>r3FMf<#6L|E٢0cc2iJ8G+cq?vlhkjȄ"V5xċ3#A=6/XL;&_ޱ7sM"|0A_oaZ|AÕԎY~_@)eWltte~ jid!M5#>(k} ni1?,HfJ,w 5XEt:νCI5Wy`AH~.J$߭Z爧\D@'AϏ3a/cB 욟n4^Ȼ"0Ϻ[ݒLxfgy9=O[}ʝsvygVywW@)hβ IIp6WL7ؑ짫pcsd܂.Ewem@ubbm$2zdQ;άì(x',Lכb'ߠo516wDIQxט%ĜpJr2cZqlf, ZRܪelqsCGPMg. JT[ )ώg6|mⷧi`˄1Þ,_7D h x\wHuIxz9$DԶڍ͍ {P1qey@s>!`D@8a-d{EYi%]cKgCʼn* + 瑉GXT =4ײ[EyPcbl2l?q.0Ts&k/|l6Nl胫+$*cSa'~NM~߽tF @/vñ-#uű&"PQ /9[U B/"/G/3K D綊5Aw~UiLU/#`NjbєvK `?ju/<ӎp/%n_b1?vPkg4zu,luֶ+xhFd<܆ߩBՀ3MS^ILPFov?5˾t=扝+o} 03rcᘕ1BȶL`'/ߢaj`Hm} *yZtB~|oB LP/{cd(0v W3rϠфsא_ |4}zmvăLSc`FPd cvw+zjdULRH+zD8E|~455Ў#G5'*aR>j* L%r/֓pk4\IJ䧑Y魈#VFzprJwV盨R,^HH ʡ/ [)؏o;D(1$s_"ycVȽZ%YSoj UA^ޞrgrᲥKYƿA6dx=[y@Hx#hEo?NtݲnplGIuLlb2lQؔݒְ0 VPjO" N徠3oXyITS$mΝsEkE) '͗?P1Ako A96J "A.V'f4K-{6[Ozxl9,IQ^Q}:*=3$(tZ8p/DأI@R"&loYlRf[Cڮ|5vF&cT0Mx>r1?وZsT}ųIiV|S-.;YdX)Ol\sgEC1>Mw`dÈA:쯳W5Ƿ2) ghmʗDn,jQI죷N*v #F^CWDFɬ%@"wtmp U GոԥGT8Nx7F*3XxkJѾ fyedg֗AN^S3A['n$#LbddaUzlMxD4 :i ඊkZs5S8xl0 7{&!Ge kS rz71y p8%הuAM*܅ Ƭ,W(Rm2,;{C}mG3y([_/堦slG'Z6PӞo쀵$>iWddKv52q}|WWI#Գԗ#S1uLR0$@08l7v@j{,j0@ Dƿkvqo5;l-,I-3S!زXeP#K·Mmb$jfэ n)TĜ-wk'I{!{o{kNN&krKbodNo 6XW]Kz;4*~GHt5Purö؜_4u`ڗa92,$Ze9\ɂA;9yVZVcpEiS>1ԋ*kV<Zb'Ia~і~-;SwN?yXcboX퇀Y0sÅEFENեJv܁}־{Ө⌯U>3;kc0ef gl.O$.>axq¬`lp-} Hj`KfԻCd1g;I,7^+pϿ Etu !gM^V2 fhPd3k2=1 Z1K׈?ύ ОG|(hg`aq?ɬ6mq6"2lOb9qt 3"0mN@[T_\֢C1V] 8?V jC9*ᵏmٜh1&ƀȍW&( ^AOg2x8+8!1d0 z$:AbAZrARB} lB!{CK{cUT o۞xR ~o,Zq ͼ588 (o1=+g4ݒ)|4Ad]uk2NuCu.6n!ֶA䕒جs΃S/}@pS)8fUxtuF#jȃ.' *ՂZ(bpmBemϋ#(ygd>#xĮ(rUdWR؝V ϒV=r( ք V}l ߚmx6Z@ϰ"N.WI0`K^K[c˓r ]w. #0L#8.؈)񹦛c}'f*JrbgJid%=Niy-#_;5*^וXHkΝl>һ3F*peDHUqc!ê٪j9ecF |=3vϗ#lZf3':P'3p_fyt l9!PK 6QV9uT\Qshuԍmd+zƘw`mP1kz\u P.Qm>E= N:𮪒v"5DJBBs=ז-UrC)Q[+tS`eSZsM4JNdv@Wl@ IXiyI`7hyc9ǡ]W_H$! êں>33;>B^V` ^@K**7x?O]T@;'vʈF<~unІނ2 j渞Rp\0 3[DzP P@j?X ]8*M)s6_U%whmtfte:b/$o0n h|X,+UMB 4Ƌ%R.NUVQ΃r8b3lzN7՚|ZKGqE;1vwЦ5q<$8dp Hd D 6Ɠ _l&W>.-4ߪXgB FD^$Q>}ttiITZ7FS%eHmAɲV#W\hAa9MLҞ/[;nC6d9-XN&v7q%2gG'o2\F"3W2/}Ah>cfN ׯEU߉xUmݷdV?">bv3ڄF^jlP`ҁ4 S'})?o=ytKkBY,9؂+ "ZH+qy\z?y"r;c$0Hs(Ӑ C Íc)pjFr2N]gɵ${L{U_wĩIHHolp]CZ6) *y^w*)3'7 `g݈WiO\ ȹx}:pu̒wfSeNZZGدp]o0ReWH4w1Xf>oI6#jIBz؋3>\d, ӕ4NZM49PnlyJ/uخ({6;>`F7YSN 1c!4t# #T|bWT7؍+el~s6F^/*sbD!h.[.ZQ?+C7dQ57Fbs%ۗXfϏW4GxPr9ac  hC뢀Fη9K;P}Q6 p%pDH[B&6iHԁA얍ckݻ^ܺUS}M[Em IQH#jFذ1S ;M5h^UΑ.O iXt{aYDð/8"LY,`jwAQَ ;6/y zg u1O]@wȦfM*n2L$⩊4q/S1pIvxs/RXrʹ,o>nJjI`n&uޛ}#[6!fݒPsɃq1o+àSU?h0%d~/Ejy_`dd:*κ®c>`0W!yI,GFZ}aOAI'„m@Vy28@U}V1`+"`g"@;ڮ)hhpE&!C^T2Pt|)X"IWP=[YzeYyN^COSOX09M/.iiJ_e)d(!͋m%Y*}͵kW!IUVv&0$q8,;G 蓔# ך|#OO"ƹ*ڥvN6 <!bU!T^~ 13dpٲ&HsS-#@`[WC0+ݣN7,DQeksD;Ws]bx37qkz]iE_EE9J~gn ac䐓 .WẆ,*遲pMFc_^J)Dv&NUaw4`o_V6}eN5J)_?hSb%LT_+ gmps/.-:d{[l*yܼ5e+ p)Y[+mt,:HQ\&3>.wh V'1d\3 pgXi֐ߏgSѻH<7O묳M6SUZh\4U ԋ3,2[^;SAS(X F/Ɏϙ'[8S_3.0P71 bIT Ӵ(?(TZ#S ;yRN⾥ISiM]2N7^%DS68Mҙ@qg߂׍W<``aK2HHn$Կmr?P6,W=Ԅ ilfT+n¾!3lKQd"sZ8OP($/JK wr t+3/<8LVj= 1 Va!hsH&q]; -hW.=bޙp#txVy;x!?uSi,}ڛy#qCo[<>BWbèF q71_y!p|퇦u\!a OR!LϲfVӨ( *#Pވ4@ԍT׈fZwh9ĚlHzfj}(F6W#_7L-Э| tfEZѡc^cP1y%bƷ>S!uN9! ~W_atM rh]_Hڌ NWza_T00j&۳];1֜I]`T1aC iH x"ɯ֐-}Ĵ(ʑx[x_1I{M=zUPP[J*GDa4#RKqU-fT9[T&7VuE{$n‘t(t[19\&!Lq-[a|),h*X _BO3>E!3>#ACί76Gٳϗ>{ì %|nݢy[A=FMs5%Zm׃šD&DuKx&l'C#ǵV$j{j :/Q|ejʨf{t(C^Q~.Lj /E= nWbI~/IH=Jaiogpbeh4:W4=tSVsLd>kdY(aoaFJ}VW.}5,UsWìI chZ P#c<0SKb_8R/bk xS<_cɍ$nΡEJOdll34 8CѻN_޸>\Afi^XdUxsS,8U*Luj3{/A%,qraߜ0@q-ݺpLXtJmA-xΒKvF2+jJսA|2o1sT [6EqIa߃JxdEѠ}"@.,cSI#GbU Ȧ`;r}AL Nӎk;@FaD(~XZwT6wzC;5hG8|'0 ~qP(`5_/>+u#xH%v)7i[u/ Kԅ^2aujA$T_^:K}Y()yᬮ)\Txž$+2s~G)8;pj -cr='hY'tr)hkρFq"/Q7M蠕3xt'7̾BZ߻$t#}5'}&d[7 Z`X#[M$o!=qm 2QEj(?GZ-{aUEAbg@NeFP 1S{UiªF?%;!|7GKN i9AW!ޣ's)_ƀdYΦJC?1Ƣ(lfӜwPcڼi`?y*gsQs=T[޿&LX\ĶdϣVr \p;)~ѧcIpw:vrmW2mN$}߳ɶ/S|y,Z^KC00Q47I+:ʫ,7+ htXhJXU[+2= 倦9;B_S䰾e7T5ſ+uANU|OP.=* );g@wuEj 늅y SdThl-R\Zу"J3k+|Ȇ ̀B,&! f~a2@RqNi8Ϙq4K☕Z2UUwvNesp.s"awI;_ JG {.]irGf!ԟOnz X #$"lLQΚʞyjagGc v*+A:ގX~H98KoN?]j{|\~C$Bgҽ@eC'ݱJesT-3+ƖR)2<` z5TOZŚFy=": ?| $TA[> E^f&'\Gu(. 6ECUJ.TbVqD'\$fgՕ wϤ^=hS]= ]NȊEk<ϠMG z*hd $-#Y?E!xwf>U<܄q>~:(3y= ɕ0@(;Wn p XYL|d0Zp~cq`tę=X\S6eZ( E Co:=jdHZ.h$٭-xu=\Nkr":> JuzrDՊZf !_@zgv>-| HClG3$!lLa*aޜV<+A ўw70/ ًdיe%Z | \)w :|W!]@l#K@x'9_<oUOtWQ@=mN:u P2p2C]M{9QFX"Z&ʂ*x `oV^5n NO2h9̣ﻇtkX8G<[3DP~ Fh[fhYK_V {'M% 숉j<§H{>[b B7}Kr# %+&0Vy6$aߡv]K&l8Zd/ӪVP@@Xpw"b!m 왌Ϟ-_x+?:49$QZhB鱻/ Z}٨/n[[g~٭,$ɰӜ Ȍ>L4;::*sݪBT1LJfCW~mrWmc&;Otч+u)} 4觔DxY d! "s t9H@>,ݞ]dSWуTu+ h/,!IDO%}Aox"O8@+V^ʖb+eլXYcwX.R Dڶ4%4r3`ށqtg8ڊw*|MD zG6d#,N3į~2Yw/mE ï2fq=[-8 QOof>]V5|a(4PK]"H<\TnW6O`T2)xd@y  OՅh6[U[8mJXrQqIXWJ Гiju,)ʾë|Yޮ{.AJ༎GR- A@{__|u Olw:jA}>m/vCt]1fQaJߔ^6HR'S.vm+T;+A&j< ԗ"+R<1Pw-F s_T=S' 3g5H8ݸ]2M@z|\)GqKis>s\՟ ^cOJR?BA8,-]1ՐOdBYjtMfJ0/LA۫ãDvd lݮ>*g'6}@?&7_Fw XHN[M8B *wːk(8̸='U*$:ۅ0 ㊶u{fh80.F<*5ƩՓOX[s9SԿ`|K)L@@{ģ㋫O f'ʷ9‹^$FMMf;a4V"ˎg>2 8eUۆ)ܺv rHF^` =GH89R'O1LD=; 1.9vsF'hCh@``*p_߁5~2~p2yȤAP Y3U51P8'S$t>@|!:ŇvρR} _~/3)/h68 &%" Ί2 * >0TPM, ڐ]KF~&qY?S(XAXnMxU!h}9m{# PiQomHTtXOy>ͽ7Ft|c`^×jܘh`&pdMU@ժkgh8!WeqϘu,\~s@;XM R{$v6Z.:PxlB/xfL'g0W9UbBgoj(@<p5sH2ʮyUjk?Y_VYá&އ}{FSʭ@MYн_Ƚr3F).Ѕs^00TЪafpqWK*3-x)A}푅/6LtGnI:eTw{&dE䱤Yl l-G";qlB (EW(֋ZnghASE Y픱h$jq Tg~uTbr^ P֫Kao0*T26,*_zzGm5<( $l0_lgw04PAJbwB!ԙ7c;ReNެgeֻ?͕/2<7Z((gݦ {ƛ?q(U|t_6rvP8*U OgѧqvNcD^uE÷yL)c?R+_iyXYyG3Mޭ&J~@6M|$C'Y D %4 7K=Bd%f/x,$ີ"^۫#S$#kYLn"%dDϴv|U95HXoōM?\}Է|4e&sOL sE邰s tDr0;֥IY/nclYH!H܎q0SC<#K-aW4|lb {F!n jLu"(>{<ʏWB7q)0F_yN)e&γp uhǒ|KduzCV&}ֱn2,p5E3qexoLBŏ:'QfHd`ȝ#86'ޑt(UX<#A#Ap)mnd]}^MKCU! mK= 7v[ ׄD w9Mجc:80Rʲg (*ݏ;4Q-ubН:~<9a萦@Zԯu[4v;"H~km,V` x`P"o!,^ԘG?r\"dKnU'~u%èSQZlWuwo1?AȈ2f`bvyMq$,K Nw~zzk#27E][DDiXQ^"wLM+(D$m {=d-W* ԗ52`op-&9 p RW9H3?źY"r}xmʬ=l9҈U-4ZL{dش/qE^scߏyxzP2RG$CG6pC6JPZzzULm-eܨ\vBoT6/WoՓ(oSVd`/gw,KCr|Nu_ETZ{ӘȀ\v~LlF#JcED9mr)|x8/+I auJ֝^EVңT.|t?6AxȁYj?o!r -O ШVMURnly/gvzZ4ȔADǹ . aDR&~\AeQkg<^.!q>a=1T Pa,q :I>7}'gg!cG2 X$*c[zСKԮU-TcιB#pk]< 8CK72 /uZdrUtx<,BGJeHҶ %RE? şwoJ\RSݬ q%6`V!p&)xz| .5]j̾jwE5^liӲk-t|) )?X nnbv%hp>cI3Bֱ, wj &-w5P_9x1}"pj6܍{I4n`oD/o_9&*!tQIMCƼ<߃.^w7> ܣ`_ky 8R\3¾SYoy bs[0:!1kH O{3^u=P=g·SSVj3UL4 *׊wA>!ʸ:A "TO iЃǓj#b` !%;A8$w.&Gv^!;Ff ŋMQh|8/p-vHZ9l{"/[?3j<0Ź1;Uרl;s1==| k pS5[u R?e*]C0m\;~HPa&=Nl(N]=:@T꿣-㓸lJT_* 9ǹ=uvs#^Hj0bGhaoK2MWF&'QMwH${m,%}Ď7*8t:}.c_@(W ,%Ng{E09(ZDDKծƣb uw`QpvA@k*8q_ [Ondb-$c6swr8A_P!/7dci,̏ C0z5DԸ8ŀ0n1\.'@iJ/DV> ?C~aػx]o=]|؛4[^,Yi O*WŘo1 Һ0RBP6@KO,}뾽 1O4SrKH(@j;0"xnȖWxqiRSCvPM gpHPH/ݲ<@(q ~0;O.|e[]M$ W38<9SWaºIn;B8Ј9D/2PB &Y3s;93Z##-iy^uD1>T=O^22ّwo&t51 S D]躆)MSO/$4sFK͗֍bT/'UR uC0/)[.4 fEܾ^vi#y\LC^N٠wX]i:<*'  w{҉-Jy_Sj[|-?2PHw% Uv 7f+mFhpm* x7n:|")&Pa.# xkq;b҃u`VF? EK}XV b8饕 WY,қھ,&Mcg4$u +Q8@ MR#Z᪎k 8}Z Ҭmҁ^z)ubKŋ#KѦ?f^'Y3fzm͒$ʙvÕPKH~^_\ ejJHFMo҉X;}pn7P&ze]#kw|t:NQ07>Yv2ݗV&JmA悒 %1k-;*W˝QbR׍j 1="8=]*Aͣob$ZEeIm vnʤ=U(iCKՒvHF#s>bd8$q0gj )&xpҏbur 3ՕXOz;KƤ%|>Y/zBJ@ @£:Kh;4A-ZLe)*`9^u25gmCܰMu,{/ ()Qk\ۃ(T6A|7A:X1wt~*M k3_fO>Ds""?2oX;/}ݾӤжnjPbd́X8: e ĕ,0uʩhwvz{q)]X: =6ٝCO¡co$ K7gOv~ 4鶿 #)&: Vu50t1uLQiEm|Fc[GRd~$ôvmCVN5PH  Y=vC5|{AҒ*S=`OD-~4w}VuUtp$LnYYş|m;^ӢЂog}PB>:JӎZ7SCBNi#Sҟ ]]XY_&G$o ob(f4(5V/{>1W*|rA;qC8ECl1[i/CSY% P~C0$&]l>/>MVI^jo4XwˎV$T!:wef)6(D-/Zh>M Z#+naR.t boDn*ؓaR B/+:+ `=81ZuOF"t-S\L=(u`Gw8D5ϐ7<_/ڡ6ֹݼ (Gu $s ΎR^+Adn덆˄0%x,9;.XY§U_"&#u3}x" QVmԣpd1 W4*ag+<<9IҤÚaIOU{iHj[Yj{eF/哅F-#W#/ūTpA$lq6h_##ILki֫2S8' kwvd q.p/b6^{Nt]q.ܳ<` YXJX %JyF  < >IN!5|􏠏vrj%clv`>BnLdp 8~kyKեhL&q piah_'%g TæV:c`A̼qrJX')}li'fZ%Z{z9Y27 O- '?"%0Jov 5RK \I0Fp',d˅R,0FPpglRTI _ڀQ\6^^S2w{8 ,4Zwa0dui)-UhcBs 0R؀}a :]W>3 M ]/w5v{MxtXE%fT_N~g|\hmN q7p{&m)xgzSC6\ak* M'ATF)ɣh5nNSNYBSh u?ޜt_1 (-,<0ȿ7Ҟ#\lJ|PWI&x.7̣tz[faďBZ4GddUGW=&Lk$o㷥?3@L<1Sqo=U*QEMӆPNᣖ -5gD1=_׵i}էu,ffr,i~4ǥb#6Ż@Y$jHoLAX0ƠmI9&ފM_JL`~aND P ɾB?L)y[ㅇ$>$7\w*b_6['T. $U,-*琉Rw*3[3:g;. hLa%r;#9m&`=KZYpj4v_!|O) Nkp#F/tf)."R^0\rAȇUȠQiO-u1*'N{|D7uO+#z Dn:^)(R&4 LOpxZ,!ٷOiMjy7LJ)!Q\#EdXsHlGmw y6/ajh._jpg](@^ZVUwUrqjg *R[Erra<-Ca؊ M5{GiYϾ<á\)U]A4; Bzw( {rLw#V>7Yi7{Gm ՗s*?N%xէقL I$C3/;KXnc3mG7Vv&k!TxΊNҐ֚_?;GcSn0 &<#2Z8[/n,.ᄇvcIe 7"5hQ]քS1إNa&ц]'ݡ5JavQ7P{0t;i-⟑`n=JxDЬ~--\,Xkhٵq sO'ڍn X.e4# /OK L|eo].=XۙhiZFxO5_>=7,# [(l@A1b:v0:+ihhDץo]X?zה8-GgWqL6z Duԯv٢3V4簽3;pڪ?={qٷ )B^\uSo*&+^Ǽ+ .X F-B}K; 1 1ܻ?^ Zr~^fϬWޞ< g@h+vJ[K{W<TzV1.6Csҫ2Pw-@s6 -+T$ڧc"y󃁔pD؈y,T~ET6AݫxPtfS -f^Q% T$[?6,ɫfa鲖$)Q@|" C` ;ػP3vެ2(jXO"e"I^'Jb"'(L>s) qhnOk{l?> j?pqoЫV{6M Dt$4Z-2ȗ!YSQznw uuy}yKST>7?;=A";F j?)rj(m'9W.T1i ` D/|3tI$5;XVn|@dl: &0UZW#p:3Zÿߥ$dC9}h,#w-^S7O@4&s]`yp- T?9I04Łe%p˼Bس [` f7d66ժ`9wQLxnҠ1Od`iw(ّ̉Er͐ďq@[c4 ~. KXg.&#tC ^kmBbR|fU[Izwh `$EMTb'EA Z<ǦIS*yll4 a$+,EIY񇱎[K>M(ɠP'ݟA((&/|*y).e#J"S[rU:}ORi\I>VMPn!Ee; qӐ0 ێ9?zbĂ/jO=6ʮ&cVW4'kW0AOf?{lI ͞D9~Xq=YSqY-e?} Ry!_ب@U7NqA!E_UZ,_$bJRvp(5EKWvtzȳWxTYeڹ4n}E pAa#!# QF*3 JΧ 0s"N< n!gݮ7X8$Y=ϥHХ$We?:xIk囓.3a,V nYf44?o^d>}I쯌9>y=JFBp 2"1xEB|vyWeaWM>4ŽpD^OIfXk`& iћ FԨFTiez„I O[R@~O"}@w{bOKzq=֭Jۯ"̻u,틖M/1&YNH.bLk:~_d?r?W+ hXYdNn6n`לbg? !E#oA ĥӟYVodj&X%pʎ5&wsGz7R &XeDQ}JAF;ʡZ6=6U.I+`vY+  nD{12@Nꬿį+0)"vWYg[a,njH5xiӱ/:b(FQć^'s)Q:ft ⇔|1%E7 yd/6E/:k{_-Z9˛FO%1̱U5 { mFM#/?')TvoT~:"Re7)vHUQ?/TG  #`VP$Š( IU˱؛J6Ǎ9iX W>Fr(޾Tb $ⱵK3iesΌJX\SAA7<~i ʴ|e8[<T^? E7d2ZkR|/N.6NIH8{WƒG54IveLYaFl*I{NN!)u[PUyS؟E`v"jR""=}=b-365kX">-B'ϛ:_X徇+{|V&j!r]XSK/T[Ӣ\b%hWߡ*\kfA!).!҃KHqnhWM %(CO 4RF{[=5څa6)};syE8(^p'p!ZXXߠmv5*͛Ui"EuώR&+GcwV,RZE\pTQ]fژ>J/cqxk'!ZJ$O;~jx} X+8S#>K0~ᩞ>iwhMuV!1>3ea,Qh,R|E/;\%ưgZۇ':gYW$1<ZRAs]{,{71j>:Jr$p&x}Ua$ݻЁϭPƛ)+D(Aym#a*nuI"K(7t"Xgd.^1M_rEVC5gc`EU項ۂ)K! hlO=Obkf.T:C,ݝkz8yq?H>zQ!Ϛi13:-, <͜{TeX4/.!G˛)/=G@E69[yD2J:NuCt>NlpXK>GI)RTu:1݄Q3zfZiF(PG b$SmD6g0ZДK ,kVx;we{m&dvd8}8K?@ [,%BRՍfuGEG*[ s*P=lֶ]_W'_ma_d`-@%ܭLrJӍZNEIu>D(8O7X5`ӰszasFh랎#xN ]cM Lv(+x/9Ţ4#F>ډkdh4mQl'9mSӅiE!`?vEk:lMm1w07\ :~G])(7) aC67g+@zwPP{8]2ߚ-ZJ~ F ^_.tQGϴ0 d} '!nn*͑nGU%@؄}$B%Q>pM,:W?N5"$En@Whtu* Y"U{4Ru Kr)@LJwrP9`ʅ:2ca! ?|`Xz?ڳ ҮyosyK(D4Zqݓj쥧Ҋ߁8OCTb ⟄"RR ▁nB]E %z^=^4i}jiٵ^z$C.>lFHWr4؟-DƵ6;P5WRк;@=]VmF4߶x _pni"%$X^X|5ӌ\\ΩDXZrtRʩ @4\naI)mX 7MՓZEBZG5kpgˤsc=y]eU,Q da 0LG^wf(̀|F*HE"j̎(aаl|2sUzk'. #ï"ڤS0XXпT.2BaM GI/9fD19q>N OlM|s)J +#ñnZa%)_)OLk3*ˆT OR",c j@ jySB! tX-ih ]ÊDJ Gڅk\46.;gmM(4>.ƺ Lچ`.gםF/Mh-PՙVN Y.Wiw蜆dXF1фnkoQژw+rNffpH>Lr9ԯf}ጵNO R]Agh`əe4.ԭ-4V+<j! i%4̻eCU~uxb' +t Hϯfs ADӭB D$r@Apɖ^V+P_5.`}^"dPK>:mb7diJ>E8b8N-Q T~*kX6Pf ;E-q.F+넴<.c^R)[ױy39Y=촿,1{20 wk C-U53?Ft[oIkt To ?d1K+bx=F2՞V\_'xȻ)GǏs]=;B}mXfFX"9QҼq?%`ذ:Lу _?7ٳ!C #">cfC;^P?^ Zq*#}tOE:LEE[ݩ\%)Ys?!3&?ծSpC{!M:[v+|GF:E$:r_7'j)DZT`D/ >E 0ȣպ6H @jgHt!Ÿ߿o%{W c"(@d6{gmX2_aq T~!:E, :(BZZStqjxRYKiF;-wSkSS zTlԵctDDLlcB&1ںkm}!q8dx_ޞLhSk|rT2Ued汎h5u-WnC{~ӫ%'֧݆Oȭfʺa dnJJ dϞȰ9K3ɬd' C8:0>Q:=n=eYU@gG-AR8RRrYC\]uGrUSCSO)ce֓<>iӽp[G6o9W)fpv 7ymǴH;`%PNK|[͖t o<% ;»j_Do>Y{ޟH{XGQ#n  u ki?Fjr K[Br?o \JA5&xfrZ>;E$u0gkW_|v979RT,Ҽ:(r _#jQ+/>*j,J5ڪ@hR[zw㿒Xcf v,qmD pʥcf vC3RF7Z?nld@&\C9٪$˩YCX-ͷ6aGdqZH^d|('bUBeǴ͡nv#m.XB/66tt+/p=cVZ`e5%Gk_ɪv>,/S<漆r{e,PVF,8/6؛S_Q HAPxffҺB}>>py H6xj#n:S:@C^10l7jq燹,Y DlJǡl+nk/\K&!+x.7Ąa"%ogJSXOcH L\I0+뀞}:n #yWĕ8>KYwV.]~읭1Zkŋf@3 BVf߃2im&)@ ^knJdaW R)&"ًI8@PёׯSl^A fZnL fA(P5\>SتED%Ndf L'*I2_'&M/.􂱍1z}Mr8ָ@j=97HĨőMԷ`Gl&#* bx?E>יYZL>UQ"L!x} )d3N}FW jR$n^<('<'/,P;WnE^~q rlLQVU= UA>+ OS+ /(:#8.<UϬl>1_`ْ.|UQM!vգ}txHI[%=FoUEեƆxKG / Z\bS" `j3Ёp]IlxhFKS,,`L/<毴)ĺ֋\ʹaÁcג^{@ę2Zdp@ߟSQYb+8 -)@ZP `<.H{W :wL2 LAR[+F@;aeXIyvL?'_a}thSu|,ګz<*s@L"04oT. BƛXvV}i[_z:TJS~ Šo -Qx/'R 7 .xd'J^Q^ƀѷ-_b!D.IWӊW8o`0rq_X(,S)P~3(6OiA-0\ ֆF}/ey?"+ 2_̏NfM7GOE[i!!~02Q˺ELB(9 1۲T0ܷ==M)K!JLŁwU-=+x3C@182 I?Q&%l;G5R^*W qK?, AYj rq pPȞ~Z!DKEBgXQ Z`pc$'"qXݪ"O MAYr8t꯸@y6<|qwY޼/~vžoq8^^R= (FK:SPzĕk1( TnnE3\,eD5/ɪW3/r9qI,G, } ={] Y^Ҁ[|L۵Do{8Q'gqL? .QS^icc;Jӡ(fģjX\#(H:i)5z~"ؔd]ϞZiRwR繎,hZ-+/XGk=䥑iW 7w^Q]}hY{$grG8A_ oq9-cز+Ht-!Bbr{Q;:#__JG؇<(.RSmmfgJ%@7Օ+<+{[B <8X't^ExYJה;yz&ÔS8W[=p(Dh|Uj4xf(:ިqVf'X#Z@ elļHXxYgBE3%M'XtrC8Hzml,{G 9|BT;Bfpȟ6*)/2.`fu)j`\8xQ`"Y`z2O/̪"`X3eaL@c3ܧB.SJJ 'kVhK%\OP8gm$#/gRދlMc fM*P"[+')w.9~3O7rXNي6`=MSVo%j%ӁCӔjFԀ:x<-k"z&/5:Bw$ghsy|_)zSjhw<\:nJ'̝"O#1aWak Lc9M_:㋻6oG VFX6! m9-NA*/l% ǸP N..s#*=ꥴl߾mE|N0?8 f}ǭLNGN&4WerZƮU y95)pf(<Ո"Nd^]:48ݐ)r 1<>8e xwSL{(er\"9\jЋ.i؈N"Ch\1ةXk#ͷ̲'/K @RU#q<:"Uu꧝c&mvk^ (}k)}Yʄ GwW7U??4<ؑѳM4Gr%0x{^aPȣ^x,II69Dܼ`@8HOV-rEO uXXц:1jϗ*^N$#paWN=OcIW.EۮpАLNnxF}A00fa,"/tv:%dqX'ʦ[+ 0-Q<;U`΍[0,./taHFs{2Wf~ҒsPh%˟9ױX"3KϨ=$`1@dg;&ǘ׋ @0FS5f@̝\Pwe࠯z _+;XzC/ >\tֈ8y=x"d(XCM(kZQj'wOӝL V<[[2v*>O1+xVK%IH>tԇz{Zr?_ڝ(R`{`1TۆKrv:zv GKg ] -* YGٮҢcDǕ[(h1Z.VCB֧X+:0t0!ץ!1dg~÷θPmkQ6W+%1X[*tMaWkTwUê㳺8ڎvR^Pr}!B:rV3%~%,$o;eHݒ+> @浮,DjaFO\m}M<UB5 + (;Tý6?`^ɹ `p✯jC;)*p1?<؞i7̤nVT}sqPhB2IԻ6;贷D/=s4Sj.5! 9QPnZ<" @`Ϳ8q>]TBPK8PK#[}VՆvEA8s#h}Ž¦ WߴΚ B^Guf,vyrLv?79>Q SCԠyQKAաvԴlF*D跊{nG^]q+װ (x&w6j 8g*޵UĎiPG?&]?LF%Goee]D|s/Q!NV'Tꠞ\R@pGl _ kTcR;_2QLv່7dPZ1lP`7౱|?bO~&n{r3?/kHKHC \zg<\_D2>QU c' (; (U6U'Y Whǖ:R84&qAom")DQ4ZpcDd}H-hז@1FU& ѕg|Vl - 2cY![_V*AM{#&d_AACcykG tڤwNtH\xy`m-p!D^˜A Ù-ʶm2WtR?:Ү3Je$Ec~rUhn'ĸ @_~3Y,ڃMB4ښE;hgޣM2Zk;%/G5z$2:tr2O,IH+8Cuir h&Xӛi =sn[DS\n:ά7nj֯oy \'0tD"vrQx)'+VR'~@i.= a/E"w ,W <%J]qBEvw%Q~ ^.'\q/7VoDxO{|߃+nPZQ|4 3ۆ%;#To[nUg=Yv(#!#k2'| >IMן|.w3E\u4/h*VD$w`X@a5l'D;/-1nBQ &I5bI6|kzT}p%IcbFQZ0 Yr/V%yLdhS90!͍lK!&kȯ}?m5'%)@qR-V.( {rTQ 6iҭb ̴qZo!5Wr-=K n΂D=)gsQ(X#".ws5a;1_*[HшTD_'C>τre!W.O >k}?6,$s]f6 ݞ6/kiaYx6K /ξ -RΝ=Pew2:|&߳ɴlpv^J_gI|IN$Zv+߸v`ڧǞki7'9K6|z,g`.j#κn(A5zјeU 謗76wo} %Kk~ho*Ix_ a+"8g-ƥ*ZruKgu8= ^0)tνlx(qDYcR+Z=ߵtNהzG0:kLf9 L4>c-4TPBj+VDc1!_(H'|6[oe- ke=7n*tԿvKQmx>:!Efρ2@댄z)V9k =R2:\.(n*vEɅPc'-Yn֮~@VA3|r1ߣxf_r1ZN8`3t%Ub3p.YC Jݶ8@0s}pJ擼S A0:/=/]99}\y}ȗ3kFAowZU7K<>b0\ŗYנ 塿8rƼ.=kLuJ p:It2mEGxePzgߛJMFUA*Sp&l"e{"JBD0}UrƩl+h9ܴ<6]=%.&Nu J=_) N]u`Se f`',k7U_V$_VyhϞF{p0@Z|X{8Al75!4ZڲM,5d}#`g\40O!kx@sT#_ jeisp,du OK=Ё|_dpc؟&&)GݽgOgw|*WH3hc ]I6\),K֕˙լ\'+1C@.,υn:4;ZnxRw!J,QAu!j}A#b fo'νXp ¯ځj9yd)A?8ٺ5gj ;n JdXufYRy~bP ߌHۓC!'i[RO8a][_Ys::1p5ګ^=2,=}QHWjal:5  )-RSo+߃)!'YRO( {Y-.'Yo_Ϩ=,~0w ]>d_XNjRFpQo h>ƌ56ɣY?g>wO]J.C$wFFEytto負/ЏnQ~dC'9*_oKM5}SL@]HIܢDsWIJTs`jl 'TQ ׫r:. )z:ͼSffZe^˟Y? 'u0τkdN1ǤBh`Zβ騋E(0 F@bď\D?y^o'H4h B =,@v~HJWx,BEϨR -)D/+>Sq=zdFѰ|;MK,V{^g‡}"az^[/U,,.!~ v* k=5O_m{O4`Bҙ-+IڤNT) Emq9GF.vӞ5|REWɑ'T;T6_Y&Yc3j5Fx4y5@nzԔϣ' Gҳ]zkT9lWX =7l6dZMDt\ ߒe6RnXG~a⹀jʷ`xJN*W=w~JWA]&@G[+r֔~2rov<:^4{#k=bga8:]FЃ /n+[fT8w 6 {uJʘE<@m\kҋΊ"H#65缎@<,B="Wuo2$վ8ΠrDMxW XE6'W`Sh2m=G)IY)[uo39Ub|WΗŃ~vLk$#o35-M2dKD>)IJ&1uct79Odv=_W.(e+RxD6%ESBj!6M6L?[I}[UIS-d͸XGE[ AF;x8@ƶxe|U4 "z4?waO`>AjR;Q^~$9ix%f=&oxO]rы^,.0* HDd1l"Avt⒲X_< pSʩ-n͙n)83eҵ oM6 #y鍎i*ƹB]hn0]Wp"&ZLɮ yOU~q=ZY'mv=1"`hEe>EwQso 0Vٯ$;">A`輤29RQNל/2ScX>RQ/SVKp>[ 5bN"vTl=wŤoI5e$?􃯠p(JaAS^hDڴV 6Z%㾤lUIĥ؛~!;-^zׇ}V2 եX ی>&G+QfUDFcsCX)*R;Or6y=M耴8SWŸvgͣ4G p+"(ʠccAjdוԃ~Z\ @NXR<H]-D*)C 6-CL^^İBȤm+_̽% ~i|DzAuN^{s64=&ãD`\]FI=,_13m m`Dv4}b_|!Q(ڴj&"Ev: ?@< Z2D]q糘}guLgRCNb ʴakfrIZ|Emh`\qߥ3ՍWaBٟHBPBj![݆ݲǟ&ߞ@240U.}_zT+UrQ{sF9I8 !w/\JMje ''Տ %_ npJd wN7dBуQlf~0΄QҔ%a`3 G%Q `+\~dVs=Ml< ˠ^A]C'|x >7p%;M6ڑ/r]_zu(Zf+23}fwE&\R~qгTՈW\'F^؋.fGf8nNPAFʽ&V&fSt}6s~ѦP90zO:lREѤ^~X6b!0(V(g*_ v昏YA<6Oxfvpjॿ9EM+ BiGq^@{5az2{xݎܼNHy}̖/}}"EӵoOt9pֵ {K[VN6&V- k YHt&#/JijCqlZ mvu?/nGzT􅂈 O3\o1cDhLqҡYH 0p/W+ AŬֻ6cǑTeS=)2ɳ~QƷK[q%7j!ʫ;.,ӵ&s] ą` Hajd1!On-'T I*/cJ-w]b]࿏W^bCH4Y]EnBo]#怑&u2'u>A nGo~LlkE}g_Ր ? r۝eEeN|[ۅQK+;EjZB kVa[ցrg5=I&c}}Bӊzl[까PAV !ye`{g ] r兪 W0*|ͭf[ĝK%J;3|q! rJq>s)Hd4OݹB'AȾJIb-:R׋{{WEƀej-j]1Z]<1m[R'uW.X=aZ`+;qc2?81+[RSz0m]]{]QNk^,V+>1Ux"E׵ 6I%, vQ2Iˮc/أ ֳ| [j0w\ݮriM<}8yM A j +6Ij{kq"U;ϪusoR0B5ӐcwkْBBNJ{ߥBCof-pV]zakRm~MY+YgcڴD]B cX1tKE|>P\]Zg.Q:|zQECnCt5l(OqtlRʘʼONp1hҠ[ RzQD@+ŭֵc,a2cZE}p?`@:ʴF=ޠuė҇a6iU-CT_@{AǃV< Cʿ=5w N}?~gV΀5¼,xv#_"Å{Ƚ\= VJk%<^WGOdW\?CY+ qْ'L,FNIT\FwFgڡ-p䆝T^([mfNdMQSM-U3RrKRǜr LAqv"hh-r]0 mr=B;-U"5%~d]xM%0])"uH.a42*5&Ao^dj DA9 U 1f i|z(9$(Q3uX 6 %#}(9Dz4y~]Ū*igsݣb8;NN~ހ<3 ǙQKJ&Y0BUTR>pXx}xg R]rU1z"MafXDd޼#I.a%Zx3y-tۈ܂W!]wΔ47,WikL+tzJ7w,d>-gTmK X42"۠[c_]9~y| q?WHU }8e4ef]IsrELP36";om#x;.D g&Ъ *T[j@'3"u"-*zܣ$6xq l*_J)oe!bt0[XI;|9h F>pt \%ZmI2:> z;9KhY3ŻQ짴ŧ+W,ȆQ_M7;qN,rn}%PS"tqwC丷'&=y_WYD!\-B$`}xI-)np^p?-W":\ D@ úƈ];Pw}&}IoM9 Pf"D}lKuw,-xF2l"D0yڢ=xKa\nG@VWR<`/;xx4CQ5.K#!(TE_Rl 5b1ȯ&4^%}AUƕ?M٣m"ɴ~3N]Ύ( rf* 3/YE8 GY2Չdf_/N-ĄKmdBU&?>U9t#p DLЇSHn͸HR>i6*_1ă"?C5v#qD\٧HϪ4?9H&l!ӪYeHiXyj1: ܿO$*nFO="`~~N?IáQtC$uDPҎ4_kg3'he-To5Pohl[5(iN|}$c|[>\o}kJc赞bX;ɏRz^Ti2G1'3[naO8=& 4H35oj UEߞRev'mCm-wЪe_~FU3507S'΋d"tc#w fAY)O Mͺ˹M1xM|b8~  ׌g@Vb[JW?@oŦ?uzFF5xN8{^ڰRQ' +%:37n쇏m^Ċ:E-[U r5w*~AE5z|"i#<1xc}?e97>[ߚ a/}` NҪ#l0+֡4׊L)uL4%>ybPA\Eh⮡邚 LYO?дg{^L$ݱAkH]-)FHYNp ^Z3 Mmߨ5/58y'Ba"+Z=[gxz?(.iᥭZ?Suy{brV6 G)0.(g/(V;+E5׫_.IW2;] 3cILR<. '"VjU z!!*\!ۣF }M* hlmgz_{ҝ"r+?W::ٲn6A8[1?; @t>S 1JBsҺ;.?k3ݡsxQo'ww:c}ꨩndi ͘b*9/>>ar"_( QAn!qM ʃΖ 4{^9]'ЂxwرG E?'L(')ԭr\"C̦CC5K\P0^ֿh)ɾoιtnIڷQ-3Wy1XD?ɗ!7 Zo/Ǹw-[?}G{T3 |Ө(e~zѹ PtKX~g:>[F7c"@O¿iK=*`5|/-o3z6,h٢į;ǑEsDm?D:_3҇8UԤbkՀW I/c,`<<ҒddUћ.@]7qǠ@^2?8:MwJq*:i3*PY(La]!=x)CT) ,%W4.rlDHkvf |_gt3eaMzʒE5=ϛ@_YT1c]8$,LqKH{lNU]@AƤu4͵­'$$7JU{}Ɯ~%zͤ/]a$W>Sw޼h@K nhirnuYڶ,T$35]'|Nc[B,,rg*\@@- Hyd*m*ʾmLkx86"MǶ;x_,&>8@jon~gc"*f[Ϧv+ᎁg0x,a٣Kb%CuNR5 qj!{wfB+֨,cuS0tX;̒ԧzj{rY$?cR2q lПin=RLCkڑ4%,?ur=F[E p4NϘrΪM"'[p p0#]?P ʨHcB#FGDOEl x)8KF0 `}~A@v? ;5mfFR937L<|-*8OԆdނ3 Q㲤b e.׬uZ[ozULXlIl\Qlwj.5[R"J M?pyNS=N]z'90u!+},FB(*ꊲҁ׸?r.yH =kB7&2Π>J !@ڢ't@3("P\[Ƕ]J؁@s 3<W5j[[_G)>1SR⪔oR"w\2B/<"=iC f-İ2XT,pvh10H'q*ͫ<8&jf/4b8MotLYײ"ֹƟ 5ga =g*~ʝ~?]i! =^=ΐ-5Oӥcj6mB,C_ƹB?a2D*3lՄ1$:V+ɿV|2!'A [S؇6g"0ktZ?1@w+ 9X w;zg&نذ0isQf'Isp4qw^2"%wwנ;lp6AjlZ|IY5Bo  tֽr/!N=ot|ۋzi܏4AV09$5Z.Yk寎䬶cIilkD׽oLC}+m`۟ݽQ DfzYu~XeQ =nYe,.#NlSH?_(P]ѷ]9_T>"xNV@?B>Q13}d|@p0M967H>T櫥hs"O4,+ҿ LM|rwˡ㨢[ćt3^n`^LG)* D홐\Fʭ);Ԑ!Mw&POȅzPg/xr\嵻u/nӇ] G*ݎ mו|0Q vuP/0'`\j<=/nX߷o"nԚ '8_D7A(4^B潨F 7>TdÍ'gqT^*?9OW'k)!:>+̰};ZIVR1lu0wCd#ca ɚ{DFZ?^i)WhZ26nC$D5=%q}1*2 /,؂ OcP#M3姽 } !Dux$;c_l7Q+fQUyx'gW]|wf_`zL[o >6YNNgAq1_!,}CLZO K9}nfyb ^0w[bƱAo'GmPiRZ;&~GJ۲X5X)T<# xY,w;<8&ڒT\=%̱-z0L-&:(^%2IW[Zѷ.#i# TZs05[mZTO?ԫ1GyAՋX0 mCUYU296$5bCiAL"bhe4E8qoIr,-3:7J|j`uc=Q_$D,&avQ3yjyQv%aj-xCmAo$nu?YWXbcSXS$W* ڌ YQ|IwOpXWP (H7*sM.a0J@np`mK̾ve;ӤT_|zao\;XR е@]H?fn)߲o|~ĜCDK KAxAyGCOkX=CgѪȍ9#x1YP*A8ZܗFtQÑDiMa7KPe\5rD]xt +r=}A*~]#Lh\^2$Ag:fcU} iF٧ǫ-+V:b +d[ > f5C#4K'D'w sEn„US &ÛK[L"|{x"`> :KO`n wS|%_^x ]zg痗%F>[赸*C.%TX" Cʟ˷̲ :QAp`;OpH3>G'& N-ɖy18WRϏ ya˝q*٪T$w_3'TDSq䟅RdU^ܥ`}3  +eX8/' n{j 4x'pC@"ݹxj[= I3ڠaVMiۉD|8'QihE/}Y55fN2O mF0Ke>`=R(Gt3[ }8f݄EVq/% " p-ǭO>P`XU,ƺ]Du]IpGqSd{dZQ!r 57GÝ0!22:Ѓ IW#}6!QaWGD JדT HKU[IS^YW5%4a QF!O/ЉJݤܐHB,ϗ]L6ѵf(j_ZDlsƋ) {҇#k܄ c"Kkە.~Iwah42t Y1=AG,ǜTT-ʌB*٭[>D>a()]#N4+YfBt"+kcJ*ƺ9)"pXA<4J"gAKH삸9~E (A=DHrS>h)YZjTQ c>}Bj%oS/60Z@33&CKIHƨ'4sxvJI=*w㥵c Ȃ[怾W2%Xf6 ^UaގBcusPZhxz`cc XDH7?lR-W)7a"ڤ#3u5,Av Q+Uoq49G;߲ pd bĊTj ""mx= rO>q:EH=mS}> L+du'9H_tHRG/a<E??|`9i VT .L-JH-hϞꪦZ%f֓]`;Iq)fDǦ NoKvhCaX = VF$Y5xFSa;\.}IgJwU[SӷkѪS~kӖ{ah4 ~ŶU?r4 SmgMg<<}oe`z#Fv\Z򽆑jkզ^_#GzM@gX0jիSЭ0 ZV` ̷\ൺRNϝf~_ 41MG'&WCA$ & sXɗފ!``gPM }pFer.<Xm) >Z2S 8F1Y*gi4!uī `fZ7y7Flg=ee,@ɔ2@:'0rqa;bp5h魽pQ.tv |غu4:;G1"Ɍq5T"Y)mrk :A|@ZV;ƓC%-Ҙ\_@R⚚Q{sdnJA "؛2Hܫb3(*GРg憚*n²%U0GDà!f1P_*/1t_E1 <Ԗld]2m-Y6\,Tuϒo9#gf|@nlBX Nv0߄;?9p[8quѡOB(39;/(5px֦(x. `L_\7QٖYMy^x4yT#uWF5]dҳSϾ[) ^9N)I5ݝp'Y'MneOpmm4ӂgվt%*4$@ ):evq^H{{A( Cu{0m.͐U/l(Xs;'/]-j5?A8=ONS zByB5c)QhB6S=)f%6 S=$֣c)cZ$/q c)w A#Y B IRCf޷E"13ճ~C?b.*qJTߍzqQ(aTLv@1t.?U߻"XH]hܽW|&36̡&QUtŮZqVY&r"dzMRTZp4 FѵpX WW :enVd*+HtQv%[ti5K]3c@%fpereӲۮ/䴹\ NӄaRy>ɯAsO 7Y.v`H|Ƴn0ANlAMMHʘםjMmL@W ®[ML_O+]7AgtJN_g51.?h,!Tꬕ:L ûrT8IO` [1H&3 hN;񝴐B͒xTBe j*N t\?ӬTVO7v2J69yDQ(5&-[,*Wn?UO\'樋  skM"r7 Q)eB6sः]=|2 |tk߲֡K΃@G}@ޠşpC!r܀]l/l\ V3'P ŒM͔nS_Ax]mLT\Or-cֱdnQ>qcq]=*OI^f*>drb_/*UP;\͛ - Rn<௾T k w,z4ƫ'A:EN٭hkmfTC-E$hs{ǜaƅK9oCddOLYE֡)~cDu]_`w@EU4Sk+Fτ|n W,s/R3.!unFiYWYV̝(crei_CpUfl( qLd[ 6M~bS*kìqé`#cMӻ#gbY/E&@Sh+]y Ϛ|VUۼG! E.uAx0-DG H $Ď*55w|mJNL=^ɅLp_:!'0׬?F5pyA #Ɉ pV d,RĬMRev&JIOEىS |DjAq (z& =snaI= TLGψ[־ɃL/H?Q5JL~,hB\`7賓V26-PH򌃕#pի@&vv6><io.jSA4F]d T}9ڬ Ap5@nZyQݹiLYg`K;tZ7pX>}Ȩ{LOc c{86MUyAe4!2($yډ!}vMI?JeqԇXbV|/YDE.OUx;5pkha2pz=CwrgebrgŌZڲbQ_S65Y.S!xkT0SIH@S|ğA_>6n`7'ü S?#uq1`LOe{Hߕr/o[GL5e8$LN($Ir/ ow'/> Г`K'r#q/fĆqg)k&CCŐr+ۼ@=/hA'QՖy,sj"N^|u*5P %nADu1&+ڕPs??dNS F4"ܘ|\I!ySg daW㮵fW$Ab9dQyz=97@)/O sRK[Or8#nr=bZ~l{K&[zmn ;{Y,; 71ດ[W[ ̷.9t撛QOGXqnΎ­v\ yiw@N;zLedb|RdbEx:niK*|uS+K K2t&=! 2 ,cGWd\xhY^7⬪qgaQJwV,wiՈf1nkCR *.)R~@S҄-SuU }FĊ6F\2{[/&z[j_¢3$+:bayi5t~m\H7W}:% ڀzuYGQ9E2ΣlMa*}E;_%9XXc=BL}Dp{VĐ_Yձ9ͷ9ܟ@ɀh&H96FVT}گ&[,(? Y IfHOΔ}(9vB񨴻TNyb+ߥu %mc.ڢLSI_3 dv"ŏ"}+vբwbu!=Uhzſd>=i͠ogV$JtE8S ܙ^Ⓥ{盾! z} 5J[kmV)U2H3 b9V^ ((٠H^,NO(ς v5qMZdɒDVrgskJcK4Ʀ6^4[0o(8ܱ7hӸ=DZfQE.n/ A Ш_`Z &`@7dgHzNWOjF RmF/8byub"=){ؑk=$(FA se \): &4Uwx !Qdžw js.Ss V b8I]`(#<~IvNӑUd[FGh0 0, գ ѿzt;:@۟lAAPtfSKK\4(n{B WǴ%Jx70l<@P #h(^ED5']#*]CSt]ql|GiUI'4Qx睸jڝދ`ڻnjׅD{o #~a^ON$CX3D}:+| Gח9V7[aZ.!!^(lslj;`ɂAQFO\A]PeP7E+q+_13Y ~g6PhGo2Áa@QٽkFm|< -+7lcDw1ga8JEl*C5ByuH~V"uU_)m(I:2Vf[|@༲ri}fǀD̜x :#CJXؘ/CZs;mEΞT9L΋m ŞO +疵x^͊ VeƝ g#M]6,ksxvSӇEude 6zr<]*~qzg>0D&Q/kc Pے_+&S'&]^ 9,(&<׉6Z(h %bV&K,!vAOjV<0HK DWR-&,s¨``NX߬1rģ*CRB yK%̯S4"Y],+, 9I>,oAZɡm4`ͥFJ8vXvR^4( 32 2,BA!Kd/}lho<0-_~d̒歕iN+'ځ8 Dg+]z%ɕ-0c3 7$FgQ~XdY7=i2Enwm ]ؾo^]{° :;pp!\GPRV|ZǔjM":`a`_l97ӓ~"<&4L=>GxTfmDpJ@^71PH._k_+!!1cXu%4 O|lqq}!dm'kC* /E$u jjʝ4(U;V~i?DĨ0CH 1F]dfŔq5%ô_,<񼖩Q_A+a';Dҍoi<* wQl2XmKGe6EgbR3f eriJuŊAoDgx_mZ%s"^e+01~Il ]o8lA)|Ht5#70P4CyF$T ;x)D5r: \Tz>b7<Ԑi7K~T }_/mǥ?FGNafte .4mHz5(ixqM!X'7͐'ZobU#$2hl kҜ$.+S&}Ul1o7S- [%IvlyĻvƗyɩOAL-!DWaJx(1p+WE BIh]@gFCQW~Ԃ#sXs%x#ԋҤ816eF|@Lf?(92 0_x0ӓ,$Y1J0f Σ:EfwRlM^upzZ9yx@Ko0oQp*Ĩ y*WIJMz>~K8Wi64@ ]kKtR&k!o}6BoUAq}S?u2 NbDAf޺Vjf3Ԛw5r@< (p sY,tu牎ja*>M=]|$?}hPuɬ sʲ`^=$M_Ɠ 2d3_ϡ/߈ʪB Z~M<Qz Am:?w.Mf;br%y-l7UYښ⨂'|r cWd洋1ķTBV&Slt }<;n>7AAwNhOlH)7e4;uR64m2/ 5oVrhLMVMK:DygoQ_-4h6NdEcؔCgٔ Xצę'ظa'_~Y۴3:ڂHsAHV?i|Gqd%rBNt({ !E{qd6L2B_`&Ƣ~v;zxBU F)aޫXU=M,YNpg0Ģ( ZІ>61SƂlvSXʧM'*(ȆRQu}DKKvm99G 2a hn=&FEP**ŗ"]8ZrQ7,ּg5#M](+"ZK(h5=YjpcB/6 3Ԗ68r⿩ #PJp \u6#d3r~^p7C$6]"-@Ir+@i{bDeӣ̛U9";gzzW/L<]9K/) 2fp1.M2o=*N6Vbpv]ԋ;WM금.g\1:ylFhr~nN0pܽUŏz<1FlDY@~@,TZhF26NF.oQ wd蕋H D2!G!c*Fhj2㳢;־^6U4_<8oQKו/}]qqn1E^bܧ#BvU1jOJr9H_MHG&A${M3\@Fl>YTH\mk+_QJ. [C|(s!LN,!YudWs) BL)PF„+[X69!όҊi_I`Fzy:'g&{SRbZ]61_jdfu\-l[.8L{u򃣧L^ 8tk!%l6I48m]7$=}{XE+,ZKw^>vEn(z~v  4KPXm\ɢ‚(b*^eMյ6ƄN3%hzA1>=}U(H^1RUdoO_Xࡥ6t)(-© N@{x,ok&{-Tx -<| aWݳ-;S_*՞ֈ1xg%Y'|h̀r~IWZ7spHқR9|3tO3DczD9jBF] U1yÿrGt\Ge[kb KڟÚw5UԥcE`riDia.-[sLؓ<(s}ef(gcEv7J07'kR5McMa=Zʅ߿hEZCYx+_,ۘyhjMP=ְhٗm%>VжjA˭)msC2Pc(|R *f  Rq2gz.?"f qr?cV DD-ڌ_v ҚY(s;zn|8?gʏ#%U::"0 ꗈՌ80Ӌst8Tz#Oҁ5r.UNN"KGzu`\-n}@#@V} >> ~,_2ǖ6"ǂ;WBD%KXsJ1)r/p?qZd5XSe 5*f%{س'ŀ=__ŧ!s ˎ}OY/T]$%*6F?#|h@^Q=')ɁV dqm-ɀPYXs;vk(U4=KfKN|I0s H-戡Xc|mYn88" L++Cu"^ YET|^K} ]I :. oLcGP\b<F|'f=kv%UYpAtNQ#hr6}Gw^Xjpe;ǎ5Gi.v)^fK7_~<¾(4F^^."*'!~GEE-vdpDacDhxwO,2& U=5hrPk.%&+GBb}ɞ N1Z@Mh=d(lvCo|%"uE;iLVV7>. EIib\i J#`"#-iSAqpǖIƭ+ .0Y\%ەTe:z澜rP\X[qЃI2xHIz3t Chel9/ 1UxR4=y-2LҨWɖs S bAtMLP8ЀcKcUKgZ& 4c> G+Ejg|+cUa!h7p3 3ţp{dtͤ y\wF9+Uu&JpDS]Y~NTHq@27ڻW$:,vaw;Β+Ǔ [E!o`Lldܫŧd%szQO=`V) v!Ӯ8Hrw3`bPFq. 7y3-9Ugv_Q[>15S)&ªl"k]>xb2y"_x FkRYY[/|ÎW0B?<7zh͝I&KڻHY\MQ?4'Mٌ9n +lJx3/ *\ww"d}%fgUP!`)Fo>d8nL8bS\M26ݴ8{f6]oΝNsXǑYBhA.-JA~^TװO6^dNv,`Qظ+xAOrkPyoJ[2'8I19F$RtB?(3}0=W8i_G˫K˩Z4T`'6Z;fBA}gjQn6~VkNzz4+NO˸?{3gq`3$Zy{}#eu1Ue+萕4 yա.Hvf-AGc88%,- ]@CͫBˆ¤R 3NAKZatʬ^ D4BHpfmCf4ʵddR}ĹMo_{@7ՅF |%lZ")}2@QC¯BU}0g&\Vm3jX?5Mm~|=HME2a q^89;]ȿ3m9;xv×G8YTUEOte-qL'1AdB"ىVyv;HI6o@HL3!) WǕ`ڨcR*>@ F0It@b}rxIMРo6c\qOS>w+8^3Cŵevt&>ĸF)Si#a a@q$j8}h۸,p"VЙE-@y7qSxTݻPl-!yvL(=$Z1#eKI<]}x;a^PPRoĩȑ[*,~ֿflH6D[бkYF1+p{|ga#:GDv'JMnN۷,pbQWqlbNq5z ߗDepHޯc1?A**>h FzwJ+c- &칡ƨK{]*7@3Q )?1flU߻xOjܖcN?=h~B$x/ {B+J٭KZDqOpQ &59TL:#3%f(Ih-I{źX>E;3빱d;CęhΉ>eD=R }[dC?.N&4W?w0>cFp7!m֜; %TmX,A{-  Γ*>[r0D &Kٵne[gjGdooz=j⫭Ppd˓M=vJ#{XH*r,gB~xx=3=ICZ1]LV vR /y .ۡW/"{npP| Fˆly;ow'Y')HYW0@L- 黃>pHy׳ Z*Q(_LqBv:Ƭeh_Y4jϐ<64""IYOY95HD`МlD5ocq hk&u^j^2*_ {u fIĉqS{5w?]bɨD~9sY {:yR;1{q t]6y~#|پ\L:԰inB1eItBnWú +:">gvnwma\m='G=QG$Wԝ@STdXM϶jwW{(wkmH av3vd+s: ?/;\;́wri4 u,?PV])ߣ8U wRiOt`_g{F.B l44V U[glwooxe׿&GD0V{zn'V$O՝8| d\P<% *̚Ž ]ޑb ޙHy/ |s`N?bш6dcT.wķ^=494! /Ak/o2!x|g|ٮF<&3nΝKLmHPL4mh/9H ϐ.@1+:|h bk0Vvğ:/)H2Ys IM-,rSpd@;jێZ{KRbh2a}dB|ED.RԹ{ ?)v9@VJ·x%k+錁'USO-W}c _'m{FGp&Gq U0Hf(Y-zIIɰsypw^Xoq"BҚ y×qY=!1)}h\_ "H&lWQ,LH볨ٓq,9RwO9kM;!|Lw/&:!`#/&I{L)BcC(zO4qwz0<A ceh LҨN!t$";PX0`fY-扜f>g׏/{!ɕsQEcYdz ߪ.#u35*] _yVIwOU)܂UiRZO:.Q`⸻v40)aCʩq29h԰J7GN}@MrX+!sEjj3u#z-_MMŦAГׁ "6](A&BUS9!עB/Y}9,WФΰRy\,5μqXr%/z Q n a_*s} rɦV+xH^'e !7XX"m`},F-UN;Wh '7++5p`zӠJF3R8kۄ7Zv%[6 1Iw} Y^%+U+S O5jNSjs y@Dn7!/ڪ!?F9L&A=j S،缄s0;z:E aoػۛ&@0\oЁTxLò{/ ؍NxrHԮ\&L/"?vI߹ im, ;#(Erk-_>q1~ۈ]DT-;qi|hL͏J0V9j?FP֠,4e`SuA`jt_h4q;"|`Q|ε{f*Vn (W%q6*Fb ^aG=l݀_˛g($R5*l%ݵ6ꈷh#O4]ijae7SWmNRp֥%^:IߢOq'fu).FגvKbU4w쓧'=`U ] C3N>-,.=m~Ḓދ[77=48;DṛܫDZaˢP쵊hx<P ~qkLء6"%F8n\ WN~ 9f^ 7EOJQb3Vժ-"EՐ[i.Y/k^hЉvg?| ٢:*ö;"W:\C:EKaSbs#n1p!e0[*hyћ[:?rW. 7#}E/0+1rwy1]/[r۱XoCkTY2 $FNٸWCLXGUM':z梘4q1^2Іi =}g u'UkR>\&韼 G"I͆VC*QTS$\½aѿCA[.oWa/-,N@F5,@s~S=#y{lV#*SD5Qš2U ,,08i? H-e?ḥ/55#9ʍӐ9/o &WQ5ND>Jp?81er{;`uv+)"I?YrѶHt~HIv"AAcv;;жGG>a}%uR5 lBoD||4C6btR$,Ϻ.:ZJj@%}@!qyx^5JYLL9jG Bd giUAFbgf@(-?+M'³a4cD=jk eݏDJ܋BOUmd%;8 ߯`żמE,(s8PxC[b>p_+l3|IL.qaCDXDsĔjxSյv3w%R\ [[̗c!܅jzHٕ.SRF`Fi ./C 0o$cF h+;#-T?eA~KiGb%/R~!A;4wwގrPq3{ DxYymE*1ω5Ī7ޖ{0EzfM&~`YolgןħSv:A8Md%Ɣ)k?!gקV}9޶Z3"ll)*ɒ^ JqwEJF0:ic/(ߎlzCm40OW41j ?.t GtlnuxD*jLaP`{A-ޓ :פ~ 35Lqs'VDY%&,fD~ &{K0 0lZrcSҳw> FSyHS^!xxގƵ=<4sjp7o^y 4Sbpjz8{mJGq8,L}hQSaBNv**|9eN@ kc#*NpFVy)R1 U|'ZAUuv1XJR Xw/uGJ&mSMq_5;Wc_LdQ?*w8[{@ My6ZOFO0~YZ>GHɺ,)y"xb1)=0.%C@.~otI"ϝ*΁<2VqBN>!yڡq5h.'ʉܹ} UL=qv55nb"mJS{Ǯݎ4]^ j6ә6jݷ^Lj˶NxB\cg.xYHa< KS$Hi Ak:AG;ºȬ/S}͋\Qe -"\:MF\Rs* kɤ=-^tZ>u}Que0-G vCjyw\0ȝR΅y|ʥ>zΠ&@ ѓ'eI[5 /nEs&d{\eKz 8=ִ/ 7L!]:O|LtmZFs>-zNlweڛ EmQh\}"~{L{LNzMֺO7QEY`Mi]9Vٜ Ϗ5UY=th4f=B.9菊) +hg ڌSJG!vj90 N.DKAp } .V9H7 g-`Ggh'xVtO&8˯n4a HA/O߷SJ%of*D?pl1oI:ɕ488DK =^|N`sߘ0bR%r3{!= ʆ9 z%N3<ϗ!Ξ5(O gsQgnf7R{YRvGA>)x\5fj})HY{©-{[brZs~eL+L{=Q0'Ӧ):Z-z6Fʾf"p1Nh\T3.1dኡc_]nu9U./rYu=,X5qLxs^6>el̙$1ҕ?y"&4ZaIͦ9i(Vܺ-*9eBjJ"ΕL%$Ɛvw'bkKᠪ Q.솦Y6ߢvzXmډƑ?hZAtvOEa!^I=MG@fX m|sԠh|{+J]߼x)$57( |br|QqQiuT7 ibΠY~*žHAqдMC5jatlr͎$·4y[R>߰" sC&;!''u@F@f T<"YDLGՃn C~f1T?v &t%IyԪ; K hOȩ^F2IfP,Q>:ܕL!Vע^ CcWM@@رΈ́_Ug #$ OJXƤOXi, qwdYe@ѿB 9.떦|Y[r@Cϻ'T@v:n{C 5l'pMľ"ƍ@}X9'*4A >V8V"Z8b00z8{M?262i[*d"̷<ljplB*J y%oR?Ϣ [+˜Jt5r0;؇_6ר &^Oс\2iNfu92)$c^' +B.;"j5e#D#U$ژt>\ (fu71sa hwߠ{},&@(?x}~/nχ',:e)TB ^fk> PC$é֦^퐾y1D͚ V+n9hP?XLfSIjeJj d|7D19Ŕb(;@.x[|߈/FdV$51xpYv^ UNǯph tPˢ%!?Եaɍލ?Q97`(;e:CNsSbt|+@U +iL#uW/23YlzM+YFS |{w!^6E6a Ɛ-`;u\xU%7ZYˍbN6쫗`׵5Nթ l{7NP~=(4Tv׿GI8h|pZ{5S@2 ēx "cVl"e&`Q҆]d;K^fjnZe'n"eFk 1#_9A3j$Z38/Ȟ*Jo 1,S?I#|w¨1€ qbrs/ԂM*:'m,;WiLA&xvۖ{'60RUaӗGO0LCPp2"=*w)>=?7Gh ی 5$YsF<I.d'y{ԩ[X?n>әJbjd}C'nGK N };wyEK&v Upܜc1\ [#1() 'Z:aEtEUcÏ"vض ( T{6AQxwOL71y (+BR|-Ӂ#n& /RVнX#ҢPz d_C=1$S/~bU)JL GCߙ|! vqxҐiBYd8BB?21>s o:fE$*LECtW(1pSc\N5AN9B!cu$elîe0p7ܥ2BR|EiMNѻl)+vXyO9Nen)ݬ H6Ț`yQMO] u!/jNls:kW2_O!SpMls(-dhOIzRѡr(@SJ1{ J9=)ǘ/'P#rpmToK1.Hy K Z.2 /.h}mB5=TWU'Y WKG\B7̕Es3d̩7zG(CL윬~BJ/ ƴtQPv3OF5OpF `^5sl`.;SaGτ=LEQQKם0J7ruhUF#%}B旝 a7&@I =iLVO%'{2X¶ bΚp/a<.qNHn %BR} BocYiWL洈jQ-AbIM6ʫGwNYQm@9*b8̃aSDi<ܒ)\ y=lln^1T(e3Y 9AcҘ/{ƙ ?QcFdgs61mo|3l0Cmc[.|O3M)@<YݿR[t${-}{^.&N|0 @YOpC^Z:SOg8hO|Off.e+iI/7+)6H70"lrz4L2kzPIIde)?d }*2jHM߆{#%gex=ޜ8{LpS95GګHZ[7rㆈZd z*BSU|<.Pot1΂6uW!A9i^gƧv=^^=jq['p yJЍ`QTkqleԘژ}E5UEZ50=?M:JQ0$bT&dO@ށibԶc7m*WU=okMm_iݯiϣH= xfS~WTp"sxc>H8zh-:tNX$Sm`Cv8!lWf C~@e/ih++Cj@ww zaŮ2)t֧)}>cGJwXL[IE{AhOA|uA?5=NbBvufcGD.`@i?zra^oÁaumzl/j~ŗ3$psdW4ݣdGm3=Oi?]ʜeP)R?&%=ΰVA+rolF@d:`p{Q'}yep[j[)"2ISfzY 3OW!|L4#-%bL@%8˻8`}KtOmsK +D%V#3Id3̙L-MU;E71s;q$R>"tylB$tZ-2FDdF2M+Nx|;_2B0 M:$\oe4vr XUe Y{@ԔuzLv6Զ#Ȏ WKmqn>~?5$]~|8" KeL1|"gW(98%鸃h {I;ȐCym+C}3'KJ 4ȥ6usn Sf6` J\],6^-a`ЙkM r.E6:v,C$]qT:F5-pBd0_,=sTK0E+*] ?DWX'x>)@ZL`yǓ\:l[67X osoa[%?= f6T3Tg)KQUA _`:xR~ݎMlH 0A짊V$Ӹ'KاnU@P׭!OT>XΦIHmSQMTaU\C|̥ &韤K"sHR?{"]tYVi}"[jSRT\G84(d|A^/ 񼨷5.IN#}K&(.6:$1zs/fVPUwцï V QF?Ρ ~zbSHpGso3 fIL_{\1 ;/ƅ&MYXN ծLbf2; ZɆYmBNoCߩYXG5O}@ ʏ+4-fZOwEHZB[d|`| gUGjLF*%3H0Zs\-GZ ^VkQgS8N+]1[g06ɴ!܇H8vHX]bnt9ӟ!"BQl]j+koc]%(&ާ;;""/dtd' {pJv9˻= Eu{;Evv66[Ȇn|˚fYvaζ)'M^8e~(dՀæ4Q1g>}~9kY)3kRd 64(y&жcbΎǬ>d f 6}`<.NHm# "vvOߍD޶ 5o0S9TOѨϏc"ƇN콹+XuL [x}ӳ]c,2{eZ\0u?wK9@7xX!0r 츺@ C 'S~'^  P߫9BXyy9#MRWäϡŤp$ m9Y:4HwPV)YhE-fQzg\~+O'q!n :eɮ>KbRQ"I*J^Okibx =`PkKsz3#ȭ8W= <Z,킸UƺͲ4.ߍ1@8Ӈh"1kĪ]vשP'ך4p' UנJ2?VS6MK:b)y:_e<<+<oo73{gVLBg&%`^9&"\7v Fr2M'tޯ;e䷈D=/^-yՁ1/~˒&"gg.“i(?L(3qJ2>H.2cB&+HLPWjVVPh ;XX. pH_w$9 =MA0LB>cF~;V%4z :Z࿵0v7s}q7V ѫK\c}Tm%Wl+Q:̻Gmv WёVfo3^ T._gc4=dviIn%?ِ+$|S{IFI_Il:{EKi4MI[<Ʃ@(1AZgZeRpƪe Z?{ ͝h%h3?ρ9׭{VH|.AjRUD<m !: @kToW#sxbƑy* +L+Imfp_AnSc*$!WS%u|_F0?Iﺇ+DWVH?YAԅ?ѯ_ROS:nⅷ\P;P t/^ WsvG 3±& b.[nJE`y4bUڬ"VlYjϋUL;FJAn{BWPܶ'eW}̵!>L([7Om'@l&<+trksYY+HٓVSкAU9,!aȷ:x9}*y.ž̫_]HE!UGo# Q]2Zt[0od9<'v -ϿK^/jAhnj=ZI*GȨ ȗL[Fn`wF\ϥ3W/KQe(8dAx7!-B-wWX쨍ƶ5`уU2ᘍ|Fj.pzĶυZi/PY!J @oG:)5AY`+9c" qRwΰoQɱA0UQCQO>l׫!Hm4 3AY-Uz )uU5#-:qj| H3<ľ zv87=N'ԾI^軹P9 e%iç|gn~iRYݗ0pD["ZH(6Ï}naM >Ŝ)4-p>B iO[l>/̃33bN?G%%?,_&W?-u h$zZ އ!JcL=[!̀[@ayt\EBs,?K\% WeyL2$9XedțCv^؍fB^Ws`>"a$$1 0sC*pʫ}k dєTX Mx 6Nq!}|9Nb n2EiFފq^k9lfUǡ(٢mГ($.H'^ݺlit5sNݓ 7HES>rC]#Tc<sNeq =_hEߌ0Nh(,ʼ`GX)ľs(ؚ-K $?ti):Be%4|Rqle0W! {bO7Ж ,1Rf$B kdr?U"Ra#1KO"J`3@埊(*_|jp1Ru .R#gqSV(hMd3)/fe4Cc ԁxGCT%X\tiO*Vt _<*H,B*\gOY:R؞׎/F =3=.i8!?$As_X:|e 7݃1Q2HO'mz|RvqmBDfQ>?-5^>ɋ8 92}?cs e X`8ڜ!L#v_@P@-g.e@7η-H{n#&Ԙ' ]| @;sS[çKMzn3un~rF'.bWZyTAI_OAFF(R:{A{ z7l1rITVdO )@x  Ȥ;|^~F)(,jMmWXtaN<.L?~?Mk7G< eyЃ)ՙ_zNRvW>4]:{\oRY_%?yoW)S:s4{VN'ƫj[EQG("YgUݘcMtr``(vI=-VE#02CZ(3IZO0lq[ܠtY/feaց`LaclpK'鲘r4٘ |둹AN1BIڙӳV+Q>,2+!B̶E@RAdwv R@;2:wɾ|5U=f[Nܝ<DbstCs^O dBs_8qGӈCg԰Fe֮9ħVd'eo76JEnH SduaS.[m~G,@+ ρnKWl(b}aW ;~xOTMb&R^~2Vx{Q7oC3.un!nVay{r[Ed:̅824izvGUM^M6@i:ZQ ($> K6@J}?2L(dr={hœuY*씘PWnL׈<y{ N75'wFZL::2OA$"јaZoVȁ0i<k MB JZ6+e=00ܝ YI|1p1N\]o [Y/cY7,墨bgbVtvK(\3lґx@Я{eo>[0b?÷SK١8~;4_MةڸTΆ} (ػߓ:q * =YhT3˖&elH|OؾB&Q4ʷz6&G;_aI5(Q1MYb'kgع,՚Wl1jtWC"NѺY?JnpBrJGavݱ{NOo:C{ XRh2qmi UŌˑg|B,zg %U '; w/9b<+{]j zmP"A{b%i-[h9Cy3i3Ȅb _*R٦/Xs~eHs8C gv*`Mn)I9# "Yfb0ćaM@xU˹9g&JzaQ`+-*;vL.>zE!TjLR鑠wħ}mO4L,[dTx椩>) *!h_(nLz ?BM&Χ Ktp@|=JVc9ʶjWyy#]i}'ryΛqmԄ؇8h@nCcj%=*yWͺO-?h֜ O6+ت N+Y"{ kR1r2*NjWL\IϬzʉBlm`#F;,sӉOÈZI*;ea٣ ,l7ud3^Y]- ۴R,(#ZVNFS;wGlģ5xWG;g vlnNٳ¯YRc+"B,\B|Gb&:P[L!]l0H ztu :QpN9PH^?e׫ђ2˳&u6fx} An# v2rey| #kh~D"TʭfJc`<ٷ3Oi­KPNtL5b{z+i};ؚNq}Gb%ѫ!ZP9IYA*3M[6!MFJ_\bUBaB@SFJ9?t/,I"IaJv9u{qf*LWEhN&i<] &[t*3,s?.nrA'g8Da}"[l p45"E{nX3N|/T{w۸*skg ፦Kz Fhrex>о:Vշtlw/Q9崣#Kp8OÁt"Ig?PzF"*ҋ,kGxmdsiW]Q!,"Ip8$[{0=eb:ıx dՇ{)ݦ9ƅx=EÁxoӫ푭o2"cD[>qdv5Oj bnHO5T<\)&hRr蹐:=6\e\Vƅ͎;^_sX'XrĸEY$ lK䇞q-mqzν`[};jKꕽobBF3#EG7i\P<C-&!CQgNK.%vYT5!XX2V\L=G<>m k2ϓ*jR՝e۫"a Ѥ"V˨q!K9BUm`DuNuߞLcdmy&^1ߑlnh "04nB4I=/#, Hgߞ?M,& ["CkSHu"*oN?!4cNZ2FJϭ;ϰ@KOgzg}{\Y֖CXtJcB:y|Х.uu1Iϩcխ#ǭ&?I|Xuj ҡ|kiP)p3LM!P!+ /[M/2!]#vU++yM1*bƱXU})pnEoաuɚ:4/m]>n|8N - 6}G{pV= ;( .] QX+xeP/#  YZz71zNrWE;:l=QOɨIiϭRPZP6$ﯜwM|͔V?l?eX( آts+m  hzO&P,)̡ݻpTzpȧ0( -2A׸և&;|g`L)e8!qavVdy:sj]eKBI~t8}[섦CUf3ǽ军η҅G `Ӧ+&S@v=,b5ɺ\}|tu;&?dR ́a&i@TI+Zz ʱZIY> ߭5 Bh^ˈ w'uC]) /\s(WҐ o@Ðk!?(!Je@\pv=(x`c?d. ?$j: i,jlNѬn,klaޣ7 iY_BVe,dyĩ<9<yZiЫ8 X-;wRĩ1bqPhb-Щٯh )!@S` <\mZ:괍G PnQ䤺}?z]θlo%ˌ 7*~LփWDH9mqԂ5C UL3Է#T‚0]{I`J:ˠdȚ=s]GBnx72I+ix2\ScLN9Kh"wdfQ{aޘTm^~5ѝvL[.:2^z=M?'a$2c yCh@Ҷ"3FУLcM4@tnj'a+, 1DPH\u:Cs u,ў>Z WiŲ^4D*p52\r]4ãSlxI&!4ӊo1)zYղ1S+RW\jiD°j~ n|D-E4ka::ƄOM[zp耔wx2˟:ܷs2I8ͯI"!EPTdv%aoO6XdX’p,нFhRųيA]t;z:Urɦĭ*& aX EAèÄvEev^&g9󅅘`㖾"SB}"А sz"7fB;4O$2wdM1<@P ;vN줟z7ϱߦM|~R;ͮqRnkl_z;4sp~VCb|Ϣ&Ţ*I?XC10g kxpz} bpӚ'v̙K=n+ð] 7ٵ q3vKE̦z뚑ƜiFDA|Q' sN6Ln_Q2. \{|Voءq{]Ch0߅MKy\VOS #Yae?aĶ`d={u CEDlb]>uQ6J߸D~`&^*EaQ F51zX6f͒V@H4ͱA2dmԲ{ vX4xoly.q&I+ն0ncڍQ~^;FOجIkܹJygEH\mP&`1Np[`EoSbh5w~f@ U'ŀgeC\B M23rQ&'auC<3؊MN~.bgd6yas @(&S9MKWe̩k;QrQ;G{3wg1h$B|(Kv@,+K+>^='cq &Yks틳S0AE6$eLfk6L+y]p0 {.[ApO$My.eWތ6SzALܑܿ.Y/&"m:|"w5``eގ|*nFNm5c'WpoLNkI̐I. ?X'jh1 VediaᣬԪ J6)iҤ^{>8@)Mrξt:kCrhݱ:y`;T%sm4y"\хT~ 8;t->s˰R5Vu[ 6O %4!q'I\iM^= -bD;Ҧce>*Ox*O8j҅mZP$va r-u{3[Q7m`hzآ9:jPLc}$ 4& 2„_G"h81-(gK yS,e 07%u( 8s58]*=li[HwߢOQȪ5zwbtu[ZIR83*OR. . 9KPOs=x>#ٌ0 ;$v+xX|vlm6#$ē=՛V 0͠if51'up@,W;"dx|=EH[+>.iL &Bwj+^׳PK% E{V6)+cIJ[%TGŘ:+X[oF[?j\_`>Ěn"cYm ,bx ˘]B0wqWI06%H|YM4 -Ef%RZF=m˾tq2'6⠖` Do =y,ׁYN  73|kJmLI#0y{:Ggem#3vZ4ȖcA[Td0Z)-6nQ7hd=c҄)T#&ٙ) }څ] }F:h0I*8X/\g"Ҥ`5ْM8yܑ>HR*,(ȵXUm=[MŁ?x@yJHT+4Ҋxaw7#9Ti]0' ]L*QF5lϜmɪ5@ ,u\1PȨPx)`VoUrN1r7_;w QX/XGTkc:íC##N rmɈyV1 _SOa$ssW1t]4?YG@+BZ{'2"Cݻ.n"{K]Dv+,=D£nݛ6;>^_@ʸ3a SkJ6&􃕔jЌ15i<.ѷll6LEۖC,Z(Lwڊ]g̗ IwԤ*!d;}t4%Mc\)+AKB0vQ}Ij8맊 !wu% z%e|Pn*3*9rg1^cvjtU4&t5j.;!fx6~a!2F]ӶKEWVJ^Bm5R""BNQ\UWcBFl2jI i3Ì c>ѹ[ GI)j £\W(gmjpdT[K&Ӣͥju?:Hc1Xv F_ ?'&o;t> y5al0q\0ꌆ^[GOGh>l0f0D>w'4BI/F`WtjJYgt-ƻ 6[V8B$lt?@/RAX~^:~R>"9?%IS=v34S~uy |YԲN|N`@JMPh>d *+*A;_/ptn.g`[ͻgrx=tK lH$b /1L\e=Ic'ߍQEErE~boǃ5 1XWz=V>pdJul/֭{;U8bˌ7d5g:Nd(q i{ǯ<F2Q>ª;NWTEq },t"2Z 'mYNT"0O+' <[W+NyTfYfxYz(UןF j*ZG;+5f{ZAaT%\W\_Mj6.<[a2<&b֮ޯ^J,L*UN ]or4NV6aw>pԛ+Uo6j)S=Lפaom $ &wFkR6Ċ@"0ܣ'=49O7It#' ǥRZ WcPV6%/n*,qN2@و;͌$.j8#A)[x tnooxLԎтb!pDcFDnr`Hi$O}G?p85ߒ 8`[cO;ʮ-#S"HW; XwZ-vWF$3$3b9^z#K8dH4 |SgLDߩvaimNZQL(F:q,ҦK+VroD Ci.<ְiط''l(qf3Fy%6M0SQy%=2׭ ϲ!JkaK㔏sU{j䂻saũ2vG [` Ufש{ WJ/tv fTcA㊮.mm)?r"V׹r3ᤩ0SB@xs({!>F"87y8Tbŗw['pYwƎ+6-{雤U H"|)m2'\lpffܓ<|K/w:)[v,NT}%0~~G/hLgswe7[4bW)>FW&`>Iq9+HMݘ@fy?缦4>;NR'oCb,F^ױLف` 6, a?|q[Ȗ*NTAYT~nBc T=$pt]J_}vqC5sYUcE=. tTxs"/h.X#\z./sz>퉍Rrh I/sA-iq`JY5[I՝Ť$D:y(TX2F|~c-YP;?uL  SYШ,t ?؁0;d0%""4.VH(۪4bLt`n?gTό[+jއp.8lҺ@a*s9ns ~ĥ+bKCUPŪnuHbI$^cCƸ & xjM2MA;$Aºor9q%.Xʻ 7eψJ/TuސpJgoBENbMjD$d)*bvĩ~GsHw if79DdGHDA5EϺ#:U!dB҂p[ϩ$C51d#5ƯPM!Zbz?*)ou]~}w̫@aIm٫#lG:@[cSS_Ԡ^SB/fHu&`)x^߶ED$FU 3D &qs7[/D#\ޝrISP{?KVOR?iLcTmo˘60k,VH6+E3w(JG z|ŰZ~?Er0e7.}S~ ZS0{tMx"[BgR֥o бM S%A2A㪭x8z`oa stZk<%\T6W|vT ?p?y&;K ~߀.*ɻ4PvH_A<\y?17;OźuY<)2:^Ѩ ?7?Ll绺d$3=Q[<۰߭\qPS&P},fmK,~!GwDv- :X/أC)ErZdy;Ni: s(aŢ/G>e߆r.ˆLLTvzJ@3^$0l2hlr޻5unEkK:gc?Rim2 rp 3r 5=|; 2ܭx DTL&ٔ<5:-r㚐n~&V'T.tx*-XH/ewOb3@ZW`: |[{YBouƛ"LM3PS̶3Jc_IPv5 6J4.t-EY!hJvx9`7<TӢ|Ab&RXN9:Vtb3hX뫪4o0Q@ܔqf*4ߨevI =qݦut!PE3H %o`K<|ؤSz4Z|:BÕmd!v S0h,7?zm_d@ca$;›*k+kOpMMk #GwgJ} 즚)xd7;g+~X-RgOX$- 9r.W?utɓo)SHf3 د1hō4$~gj2Urdu&OqAV%xMQA\G:t\,y.ff#:j8[ab;38ŒyYNf"EvVrV Tq?qh `iw ]ucfmjAvQ'Rx.@/L;ִ7b1?{ 9%%5($`izYĥ]2MZ{erI^?yR$I{*gf64+KcS.'ΈłPzr{  19 k:< :F?oɼ7C1׈/]s>{U6n 0%$Qʆ{%gbsoޫNC 8@\L)9mr2p:e[A Z~ 4Zp&,f_CVm(Xĩ%olꑁ^S J{ptC[p k  M?= dd4~tNTgdeq O HIQ7(ҴIyw \&ȄtorEǗUH/7nJK1d< S) l`DXD P&r'FHGe?BgoZY3e !I-,~('|jIXX:0Ae'W3y7b=OR,4DI,\ w|ӀvCBK J<3>+fG`yS0$[ 7H:>n|Ro;Dy@,k Sy.Zi]Y#Id*!M9ʠ+j^LVXP?DEyN knqUXh4^ԀBMB\ВN}S ß>vSN_fN1g:DCu(WcE|$ݮ$zzQo\p*<9 >Ԅ\a &3YtzcbW޵دMo{/|9/]/)8]N h%tR*>ă^&~r<=;_yAfmR3 AnY1DjtF"Oeps6swK{,񄺠$M u&L&kC#<ϙH|Is }wԕ؄Ҋcw(.je/Oҡh-Q!tFwR@ѥ8;w/^7hΒ,Nj4Ȋ2G2'NwJP~ 4͖qyh>@ϣ&K"F`V 3y^[g(nJ}i rDH?,~AY>P_Orɋ@ͦRoM@L$Gf1r#voy<+Uoa(䘫~膢1LCAIj chLL?zw_M|b΍ E4|AͦB@ ChV'ćhB7YrovJP4ju+"1v`EyRV^}-Q.dThQ~.:I\?NE+h)T> .,o[h'f2ZːNG`|ʏWpn2 w駥3}P0λ*WT&0~l"W]S!#eN)UZcFQ:$R/Va[;P.^H2`Z>%2vUQjnQ`9(-NɐᷗGK~ȗRS41a֗٫<"MV JM*@]֫g1Nfi%gFQ S0@5`p[J>-Z,Z2,ݜ\cžvźU7ޥϰZǀR[̸Sڄ}\U\1Xni*/U0*L2jA5:5&趺X3̰w+ͱa"OYu"ZY3֓bB ͡(&):oF<˖:lIKFEs)~6ޠE*gt1i)vXsgBq4<6ư|}`US1Zo&hJs1 bI$.p!j9>/D_| ̝KT C^{oY9BNKz+^i{7Z(mga(xg:N\l4c%ͭ)Rp_jNzw!i2z=Hc£Y:;mƑ_냐=n82TE*EW٣lMD ۨ7 9;5_+*[ͳfwV@ D&[㐯)*ACG7Tfb5 uOpn5 A$3XmL6\xmt MQfO_kdY(ZX=m;VПzLf˚FIЊDv:wtHQ3}3OCr#1hlTMLOF%J09lR^lS:!jzd^& ?i.߽ܲ_kP9U]B|WV}h;?o}upm.S+~doSJ#]3ĖEܓE=Gs 5""f5ߨYlv+V Uб?B~ qqVLk'9 ^H47r_3a dQFm/PZ%܉P)ރb&%MrBf|騥)Lq/>26媯˅ą)mޢoYOCì$ %u6j| wT? oS._ĽQE}q 3™N@}<:uš؂>SVremlp^6&/Qؠ^~سj)E)el'M1Goߡi/Z'f/;Kg(y hyr\D8L?#rk!Yx#Cf<^fyD':j;(88gv$f`C~*_!|p"1iƚ4^޿!e.z#6┿S r}-%vY6H>[σtqӒ!! ^?m]j]>yV>DMlqbI` #\,@ܑ?-}sT{M&x#ZdƻlB/hGPFYv.cx|H")UG yw9T^J*j~2 >;Wrs]{;ݟ޵bIiA)孶 +E#Z.EY0Fkud[CKʯMJ]6 K$PӪ&w7En}&˱V.zG y("K}ݬںdێ(xvbϵq]ERDn7i:c'Co u,#-A ҍ-:'2.#5W߶ЕV܋chHn&pf892.}c7+1Vs<3{P1!FM8 H'h3Whٞ? [1P?"]~F<9oyX&^Ռg xk4Gyɽ- ;h@FXEW41_ #aڕ7󡋥LG7A*"J$@" ߦ0q%ӗދEJs#3s1d؆ШmK藔^ۅpnr– didZxQCYmpeV,T-P$#c=li`Gm`?ƈgpshTbp='6!'}*5QCbf"8}V 4Z^h%,cm^q ɉ_ʴp)gu.;>Խ2˟xg(rc-ܡ?,!ѱR\Lyf.؀͗#hO@V1-;'}?$2}5j`ET$Г?xߒB XH:[A}-$wCvE~[j)?o Ɋ*7f"Y' qQ#@ >yg_}hR%|Mlia^7ḯU'x9V{a r\Ktn ^GgE5Vڕsg PގM3&jK0LױIk_ ӿЌ0|~ PM])҉d/HY>Ayocd鼝q}0k‚Vgăл|0rs:ȉH,]F!z{D,Bj1[B]tck'恛ʭùprd\g<<5zk4+>P~DY 5OBI?qДG/y0֍up}=NGQ,F `-X_}`#yd> OC'-32RSTQw㷚~MTŌ=#f6Je9IPYpM ,J0 t\WaS%B%!e@+UеgMDvU[r/c^۬۬,MScR V=͢L4y|`8q¢AiAtk0my^D8[=m){9;ò(NTf!d {c[$84v66 1kZ^E8:8Cx@ ʗؤꓢ}m fB,1`q5؈ȋ⎿=\c?=rɦ<̦z:yC{բB~t%N꺓RCoyy`0kOZhrӥF{!Yi׽5jXv EgACسYQֱDFq8JP]v3{Is$3#\Wh G(# 9 09Pz=X^Ɔ.W3qfl@[k~u=~bw~tEU,#Er7/<-dړR@F#pֲ? &p X<ԟ47e  Nb/*3#nLyNA9R M_<C튉'Yy"-fAQVHXRmb/I?;GjruX_q\Z~Dx5\\uo%'ıNxHI|!b3}v/38Pe)j|ZDIPﹺEXU\Q;e1p9Ʒhw >9Gc|X2<1Kf0.3V&G'.(O!zi0*6"ABnQ`N}7BEӜeDͦD}2`M @dDonkn!욅KM\&g. vҵDWB\ES(P-kl]\=pWMAA{sF6Ƀs2EȘʢsdQ"A\kƂgc~f$a"iBo6fTEDRN7SQvz< C'01i겾ys'[M Nze\vC d \9ƬO9|T@kgAsogϬ.QD[('2aCEE/s_ͷ 9ҩa"^W֭?1\}>UՇ4 Ob^+7CFty&@S&Xw![\&XjaՎnI|PCFp!qmHIqGV4.kW@—:\ X=dh }qE[P8]}yy Pqf/k(Qtd vnP#o,[,ڙʯc9,HtnOzq~zpۜZHE'w*W}H"ˠQnfL?80㛸kyr:2b.fHNеp)CEЉWWŨlHY}S;q41c:b!<#2v9 ctm]@ǃJifLmÞ߬bnt'?D{.}P/a@/Y'E(mnWSPqԪO  QLP_6nl̍Q~{dX5 ˸m˿_7Ca F瓥*:yVX5jK Xh{Omh΂t洽O;ZM/ybD͜\aqc" YQ."-uĞ ~ZE\^U_I1O\$ZvB!'z`ϢjEM]m A ^2յyl}Db*#3Up`͐nMKdz|tvWF=F1gtBq'?y H6pEt:hAݝ}ƍA# ՏgAx_V2Ue@m,8o0f/L.eVZOͼv "l^qY\uks1B! JxȦ?4vȯiꮫpߨɍL49`/$ܥ@D4xPȥzN-?Cig'K clyԫىhqןА\KsYWևkB;-35C*/$rQmuۈf:uW*oVY!4y+~VK3DMq!i96amtKe3~߭t(m%/ tɬ̅Ztmz Hg9;L'~Tmf ǽ twWG^8S[TPIR.吏qB0CaEy}^<0n2ɡAXӂC&D ђhpK"G;J s DQHFU&"aW)F}EGl$#10|fJ[(.Ĺn`,1ot6|]ٲ*a8OF~Gb8 #U{Oq ]O\sݣE&^"2a[lc+{RAe5묖Uz{h +uա5#֩/]0^Fw\ƨuA[SRR?}M/@l7y ؐXQW@{᰹OVzSCU>*"Vab{e3p.,`ou$x} Vd< h6 [wSqEJ=WDa']!@;!lS;/YoL% a(p"Uyΰ@Tkg#"}WԇrIO Q;<od֣iW^B@D vH[ZdԭV;j^?_z_4qvn7NZox{A-ϻbdc)ro=g_d%}Y[[X\[1t+-Ε7{IʇryDőMӨy+o29lS|]+$4wyKFrͭs&cKsB{V.^VT+&i3I~k{>UCg6m:Swu|m :aodU&=I/#cPaE ݯd?`PA~tRi+u(Spb]TA*9yr!$E_5m44SZ($svNPx΃c=4XQPϢa& n E`aW7\kKޟ1@KXǖot2ーgmf0 KWk=lGjyܲVHHV#@W!!H$ K-^Xl9|O#Sֈ?eB]X&+X(b!qlҽ$*G0nuD`hn=;tT1+SVXxP)wU'.w&ՠA (ˈ1i39l`0bRsf W{ݎ6e. T @lLzs?9ΰ]:H1boR$Iu=%{]E Kof55!{HC\ۑVJ V Ik7՞44u,Z=a, rTDIcH `5i-űC'e)/uSh`c?u!~H4WwHRx~NLӹtM$,uR ٚ *dOxhDM4Y0ӬkC 2E h:2꽬` \L΀3 CNSz$DA0kNC,£90nPUNփ kg$e=WOe(\- j"4hU }|y[]QLt#cnEW]3e9M̨Ga5ԕeXf9m C`Gv|7Kbj,  T8b {DKRnnOUMб`Y/0gl)pL,VՃ'>_ r]G{BgSxF#vSJmR6.s2Shh6P=jODd(3KsEvp@%pdӱk17^&DӟYGU:UJ)l'ݸ0y_4*28;)OKO}K(<.mz V$M81V`lh[d3{Є.$RbtL|.)I=܉:umˁ#]+?"#9 F@顨(gΠwݽi(8*U'$D7(jA~Ȥ+\7N#J7t!x 8dt6$> #uN-hZPKd:H ʰR2 9\w=*@dٳz(*!c?<տZ8ZtHA\.NQ1u͵!Ke^Q}c]f7IhLf:f  :J|'^Yx 3mf])5ԩc)U :-:;fOC\JNmkVI"blUu})qjK9;D<&&è/>N̊㳶ֹ$8#=/jfg0)5Sцf4b<_+QWO}eQ΀y?.nb^Jo!FSA%Er%uuV9,v%bu S416n6LXʮ+|zTݚ;+N{,U?D+˶<\(6{#PI_"CʩKJyfzaqL!ῢͱQ Ts`#((*M;>`]Qw$A &ЋG%v~Nyq%Bj>pꪎAj< `ٍ)6jJ 'hḫK;7 %&`MC .Cr0 9d@"c$ *X(tSUج n3dܔS[o71>4g! q$Bj+^e"O](7:msҪ ?Cum$Icٻ#"qzOs 0üH$r܃}c=i0ߴKrݺZoĕݖKW%';^! +zcz Sm.4@yO\[1rMeG<.mZZ/Xr;R;K2/,456ֱ;~ )@D&;y`"*'t1;\~sLPsV9Ze+_v`@"¼0$!]#Aeixջ,'ٱ $ëEo;z_Y¬|Iz0sͱ$7LMX[T=P: r-l?Ye ASi S$41pˌZ<ʭOwsvjRt *f`лN['5s']m0!4@Y_tL; dRی*Ht.QX=LKx:yB>"jI/v;GPlL"3W VGzUb 9,"Xw ggLY:[fa$)d>YXC /o|ٻC_e/!)s6p(2(?+UP3w` XWa K=vS $9|9% !NI?q+B Č}T.,4選6SQQm-uᳲB9?;*N{*= PsA CR̟u>_G R(%QkCǩw>z4dB%R9f~;VÔmKaٓOYuË|btvV2arC;92=:hGa0V?fB.BBh\P;gA o|9w+.y?<6VRtCקwf{ HS5%Dy&1BD| ovJ)cbA>TV,P 312^.ϼ>29m>L$d[7;Y*VVb\(p0-U>lTTCz9Pr\TU: |`ŵͪgER[E":Jaxz T@}y(J7SiS J֙avZu{opKEd0Tue|䇈0LtBˡ9 l}Q/!uf?{hH\BTCۧ-B#v2:QDAd18PGVbmlL?KPCݙ ϼmpk4x-9!+& D3U8l6ڹ1Q _R eN6rcՌ+r7vV1۾]{ݲFq)?>sȿVܤ|UaiZܿNj&\>>Q$Zm1QwiHn4عHGKZ$)}R@mp؋ ^sy VeXhz8!+dx}ǹ-/oED}e4L"_Z.$sS* y'q &4ݎ/8wYz=>w{݊>\q%O.+ !?+ /! IwG*rO4]O$ >lzTbgZ(Ji5GO昪Kt-*_׷ w;!+ԇs5`TLl'ߧoNgqzbw-X=';l|l+(lZau=D'4O^ ]F&[b9 <ݲ4;c(4`XNixjJPYZAlw5lokSX jB6ZF#Y= 'm"MrS'A0pS'Usx2 v{F׫L?t'%CuSq_0u=Npbi[XдyAn JӬ/I;ūHiHP)Ğh')L2^&djI+#w^WKO%ȇ)uR]6 kє6W'C:+gXDBgY7 _8:#k?3wt vq4ԭ 2x@iGvZ bdכ 0ʛ*8qKd,aWo9a9P+L,gv9OYyX7@XQ;} ^4v:#2]/VMiYԒVw<3 oy iJu-BKO\fpm/3 ^dwL<6_s,k%] JE -mb#V=[D= 1ٌ!*"7T+юd#{Cvʴ0w06_Ƙ闅tugU]^)9*1b#xbin;ὛJ<дã7DCk uH *^PuD2LŠ4LCAmEv'_c.'jMU߀.j%ij/F)8i^9ϭ5їzO~jL?68=TpgIWD{_`x· 1f՗ P_<%W'Ech,?뱅JhOJzawX0ѡ%]'_K=;8 XRLz{ț>P[nD9V =bI15(뭟V^laD!OAE!cH J5pdq̭ek 6O|pFB}lҖb/m_>iV|?ܤhIO%?G؁8ySہ{.!,2qNc94bzҢnS[7~XnԵn3svdfA=-Y :yy)OoX*ɉ,x|N˃Nk T]ߎVýZQ;-Rg(t4 _rEջ- ]Mk0hF\ {ݜ/j#hfH|7ehOJ:e'wwu^;8AT|'YP{':B ;~j:UqG"4+Ji.u=,i F.AΓ@k-$ gv*pۀ}GboԂzɎ)qD)\T Z'b˻wmȇ ?|dAr)_BO+jĦa'ʎQp#6sUѬ+ Q9BL.XCgI T#Y=D$x̮.j_xА-dDj7gyUPyWwք,=6Rc;AK#pK@-4mT&-]6O\y[R2fP5q(pȕIXs7i8H~܃Xd1'mT@ʚc&GǬf{B{QkM ׯ)b{j% 3(A K&3ޘx5WUќ5t|ݘvm5/FJK & v}B4',>''0ޑA+ٟES?EEi@9JguG7rR BlVh/2B:.P![jY0MXu $#nV!hLF1>CH@>yEZ6UzJK- *wx6zjue\ds+3NPt#\ kE?rezH OO+@mb l|?bRӯf8b 򡚍 eqRV#r P>7UbTo]CR0@Sr9Ѕkx:C| Or(Lڨq恒+OiJ)ΔWqN['vVd}.I\+J c5)H pYv#OÄK\Ö8F$=pMESf\W{|MQaS o@}YQ R"^$eJrgsܗfݎ!f-Svq:#2yar3 4R{s^ދ)P1D$D@WՅ9#;DUvi y\Ȫw[pmh*p[qU.m(Ʃ hYI %{|z!ǥ_ AUr&%(&c?0N_?tRrG؝ G1羸ќDأ8N^bu5x Wg *$Z/r\ |tdJV+ 3]Nrq!>:fDag7./I-./;g{!҃5BF }IX#3Pp]Q[M;ȧaH72gO;3αgAz!cxWS B9; !mQ푕$#UV \V_X4g 59Uc+YDNn[V";_1wtOL`X|{@^4^{GJGSN3tѼ;#5 H UH,dRzsffm/5 Qy Lkigvg|g+s4fљGF;j&alP~4#xx[xރ她$g^Q:1_n[9ҖL[&$fLsQ T`CZǙ x8d9B7K,98%/RW8V 2|q n`l45,c0-*99dƯ>7n/?%$s} Gf~fu:JjǦx5X:J  y&(ClQM Cu ? &f/ЈIÏ2\aB3I1l d[6B xb@e)lMrs)Jy ccmPJP̬ZP;=t 4M<W=Xo3\^)M6S@.bvdR#/F/ y]tW)8yk99kaL6xHwc;|u0"z:s.D\) @IW_M|' &Z;@U:Y;ojP:m>ї/ yT V7Of@(1T*Uq䦮]ϨbEfp|ջ.y|W-Z`^4|i-?>lWM~ۮcoGb{ 0~?[s"3 ; h5'bcWp&G׈ۆojyb>Q␨&hqQoi9:L3B%9&1p% %Q`2mUU>ipʞg[ XJv88}\ C`–ۮ2/l>Դ HQ _YFTt*ow?I4LsAE6fǙ3{:4T3ޖ6o0%*azfg$ Q΅6ֳClk^?b!{79`~j$@'K&rH\n7)OOvdh+Sz1cG'۸82"=7ڰLPY$,55fc^&tVW4B0YL $·II@pXlYȵ#7?!y>a>$ 'DmF>aV J] 6Š !vhڇ|Wd\Y;1^N1Q)h`_$R㡇KMC* A$l2a˙7uKso#i-j{2x2™K>f/tc]-!)z6qoͺpGقbTdZ"9bbETZye((2+c#ۺ Gʳ-OyƧX3y }{dB֥}W6~x'ƇnuQ5Gs8حz:wҝlT.M񠯚nc9!@3}&2#C($=T{PVD;e<G3v8a.ps! ~/VWjgo\&u.n2(#Hl ;`;ɥwkp(Xހʹk8f%UM֜2nZ2/]p):WZlR4]z$aRY}s`tvjTpno|pmc: t70s[1nKr^7@ksĪx;:"|۝~ӷ8߆d]ܷkZ)Jd9?/է.Oy[00d.V߉)b tmޒyk/|M{ Ś-W M]Q>|/{,1H.z.r9󫎇Be=gٹJ0k3Mcw2(B_0 fU3j@9̻Q9U&) k2$(h#Xi\g4nrJSTҲ%5*[8{D" ;M:8ToFq1.Юp:QrEei;=nyJ|4q|`HALoQt{IɥiB*{BtEWo&?Pxid窖bgSir>g8!h@zItV3"jL*M6) MAGES-BaܔdOܑOO(mt4aUVoYr?BQwrI?EzpBܡQ^̯,tdžcVEW>oB9V\֣Ԭ8 m(Ej%a/c7!R x#951AM-|Wp=8Ā"K+l4 DAƝLܽ!w} 2Cp0x["nӨYl>si\Lw3aS0!ZLa7KwĜ\f"J aQ\2B$0)WdA{ԽQ@]7|=YiC W&?1m WmRgŞ]gΐa0*:np\Ҡ3}Nvp"igB_,o,GT]O` e: њ=|#\XtTU,7T14,ڎI.v O)\&kcR^습m"BWp'ԃbiQh'a)2~t7LA}`M7fmTVW?8ϷHY'B3o.ƕΐJzQ=dE/Lp8jт$8 xLTLE͖ &[ HkeAt.ÞbH _;mXps!'wcA-Figlkmxj,}~:7΍hm']p-^}; g! '81`yy{BDBM"}= L2DhP5ĺiӌ7j Yڤ Bꃔl6s/T7j7{yV^L P/j[eYȢڥ*9CI.4BJZD*[_beJuڶbHwNgC=m/kw5E'cב|et;MhhkKkr8p))n۪9gb$ N+!̎Ea/ e 0GL<ρG\)eS- kv='`-_NFߞacD  .jhWMbs!p]X U)k'`{G;"/s%OqJ!m֗S>(4]_*jG[O-̐}|:\|N4I¸h"O.)3yP/2䕫T5BӸ A¢PtYEYnYX^JQ2LQ4i/f!1sY:Ah:YvΰGQ[侼vIy(Y24z/2z"GWb\-}ʜ2lHs4X~tqK8hJFZ{}ی;a{;tn m`2juG #trF)U!pw<lc;e]7+o wፎY@C:ѝd(7RP Ќx໰%ci %F,Ek|_KGTR 0%,0l uvbbR|>^bBVTF0+rx>I^\PQ}ähCeF4 6. ʀa93~@L݁vj#Zn<#om]^1{xOa׬"kNNvȻa>MMN)=TW6p6e&e8`0*fB'}q⼪?Xu|?P=3DSHp_G翽ޭ%c|Ȉs'6\зbB^+Cy++j_X9Y-C\VZ4t\ tk{z uxU@SY1ܺ&M`AjN.ྰurӢ˨8f_ w[,ћ&])dp!dnJY|wD>'1tP'PLiv?CS\:m{Y%d1;LL&o\2Ym8 eI3p6D@!IV4Gl+ӊQ_&|3JI||jr=i339MO6C'Cw60 1ٳy `&ܒ>A*Ga̘=Y sħI_!`U+rh<*ȗ՛0p۷ʗ[Dz}:.(7")"pQ [gĀ7=ӟyy>5({f*i5$B8Z9ܒ9.%0vU3x]<&E/amWrCH8o68T)5$|T#F"#Ohgpq!hϒ4M4̦8EQ KѪ1PЯAѐ^<}):O3/Ik'DL"/66R,ZQ֦?{W +JoΗj`MIHT ?O9_dPDw "X,, ;:gDt L#n[7ud?{6KVE81B kۜz'xfΕ$}`QIHaFKCm&XRAo(ڡ38MhF0^-xAM4ܦ@rd( 7o`OGJ壙,Y.i{5i"rhpiN%^6]-Rd1ªq`J,&}*a#dZ2l_;Q/_Vja܈)sGމ>`ۚy(y;I jxx[\edp'%,TӺ 2[8Ou-FTj)C"V*"< $NW@<"r:vqBUd^]Zޥݮˁ+UTďpcCXV deamaJF ǏK)f<+p;oh 3<틇VOn[xYj[ʑj,gQa{v3&u/U_vA2卄ͭ@N AU]3|_uiRSF9םb?q:4]b-Ha:yrxBLo HL&/`;a C7Ƽ&][/H!u@~IW/ҸCXC'c&M pdtbr/B~0;2z ֎*-Qp-5z~lqō+[4A}djȇdv XơF}+Ȼn*] `4;"7S& j <GAa!%:؃U`Gf%v^­Dc`$zj $ijVW^n=m>wڎPMdmJ,DIcSMowPz@D S~`b; !1h-"MCU4Yd)21"JFM}jhQLj#eUTAZSD3fqښ+:in&I%.|7ec}_bjlْVHLU 3P*gt(?ɠp"KIr.Eo뚇 S$- sTʅlrf{r'Iʪl KaMoa&@4@A@YYcR洿DyiH0 NB/L~-Gal$bzfHL"}Q*n>[Z_}Cpn`t8>#{R"E\YA>A^ΝnWg+d+!506,MN|G* X]ӵh^3y@h^[&A/TQ~;(J&EGa@F 3T)녁rKoñJc~Ϫa+Zln$dBfdu ٚ"'tgڗwABi1tc~A4bOWKy='nndptkke2Iv;I` OD:13>fP+.O 7HE9o,7œƎ @4MC!TeC*/rq^1!wAl|ʁbP*D٨E(xs# "8! gӁHT\؄]kY3)@T@NB^{ q/mٛk8×hH?أښV{_7lN3Xf0y^DM,a <{/d+~31Lh?d@ "Y@p c!U*)aO/HK{֮s(n/N5{f^#F[.R+^Ԓ_!tD/KRg"&._]sqk_KG4dw$`L/\7Cё4NIjvj5.fNF|C[h9u 7QAW`js{_lHlSUZF:O?1!1zz?tp/AZ7ɾ6Lcml1`J6+ajoe|Yi|PbL`xxvX/!0⼖!ؕW%|1tmRq dyTF~wK3KDc AG,j6-eWF53,Z}'9;Pl?j9B1q#=4ݚ>b-90vœd^ƛZk:yT }I5Ywkћ>vfv(9oIw}2$8V)${Qڅ>Ȏt~'0r"9ِZ%Ƹ+8iVޕ N ԗIl I-%S\c%N$Mms,s!.)ǒ{ df>(l nxsRO^g׿$G4Emܩӆluta8տB5"J}ew : n䘠-a`Kip jٳZ5hTπL3Jcs[yoȯg]qW=OcT;_`fv),G%R[/6~q.aP0t?jLe]ie*=W*\!%k18 6E:FPϊA6pumӵCBMemx6!C.+]y>OtѮ@iܦ['t^bG#MuyL?nd K"1Ez7!$g/e~wX7f19zD:4c&~:9o4gMXd ;n1139eL:.uO6¸ocCmA`Xxb~晠'Lj9ے+OAد ℋ:?`ѷ)aHO(!YKJ'UU* F;eK!MR!/j鹢q:X AbuF̹W]N ZnT#aZUhv1,U9 3U [ScewbH=E/?;sߍ XEL2%Hyx{{)L֌/^9yT5n,J-(Nٓ9ho$j[}>J0'⬭b_j;xޒm~\j;8B'Mt9m,2%V`sxTI⛉x>ٞX΀,bh"BvU}W/[Cp`#iT)4,^pX[qGTW/.?T_A@fq*̓)eOOj؅&9Y3"'T"~VzZTfZ֠T,h&-ƙtu[&:z3&< Džy%5f.`ª=0OEtyj! k(.Nu x(:{ִL+son :vy & @53`@Km ƏD9OʦJ3ƬT朇$gw(Ra.cDWҊK.PN_~ϸ#M=Ƙ5lЌ+-N}ڋBeS9pcvN'ƯZkz?(3:mT*x[䚦]Sl+d#dHS_ ,Y| M*ZYh:.acы,C }S=V%/ȖNK@ɲC.Ms%U?f1gW.F,MN DJ?bAo86>|Ե=g9ߝ_S4AÝaExvWjztO=?&C|܃S˦lJܯY.(Rָu[;E:So7>y 8#K\V *OًHwnld e@[91S!ЫE)vE6ESVBR0;(ս,~)j*Y2il⇗^Kyڄ7ZKSč'r Ȭ(' $Oz|]U&w)~y|{GQ=P7ֿDz)N (Xa[_Y3ho-a&uVUnkY`읓qjSqh-;khr'5lDžb%"yd#Ve!Rd 3+ç6byᡵO:@n93Dܙ0w\xɖb0RN`Lj -2]V%k!+A2Y+4 L`໕\(N@'rY~-]H:B"$0~-+O_a郛{Z|aUx 8^/PNBf}x.oR=TdmثsҏZKkCڋ2D8ߒAL 㸵\W\h$*KE L2Qf}sẆn1{oV߯cA]JH̃"-qDKq 1挒T?fGJߜ`&kt񍝍k6r.ou*ۗ?-[ V@ QK7' Ѝ(vϥݰƦl|?rQV1^VU7M_IԔߟ."ޣ"jڭ1MƮN<jTa7gLj };`<[MI:(Z7ň/Ϥ<T S 1d1;:)&^jiLl=аkn"+ ARy<-8J&r2Ge^#ɬ/Ku~* H(W rki EF\G֢]d~jI\rxR{Y3`$gMX=D7,%Q/Ueտ AJ/*8bs[Aԗ}Q4nÞ) um{o +v^(`"rztdcUJڣ˝a='q{$>#jCW+tA& g6K!o: 9B% 7^ďEi؞cT|"KrJ(:nW? X̴gAX~h|`.2d <ԧ)X^Dt&U } \`7 \jPC^$>jX k؁sw X.-޲f\ǥ ]_2 4wE0[G mS|=n2;>"钚^9yk׳z=1`p%xFIژew \WٶϾjkUASUzDu}i4)K}=߼,S4!ݍ!jQ\A- } x4b8X::]h%0J \ /w򿐤שgv&MiygHr%:[KEx Fa604d8C 0l2:A,{t;tv_{3#+ai?i3r>;b,MTUod>ʰ5n FlF5N?lٸVz eݫ$Ko֗ d؄J-Sd1YEpjcE;}g*e,X<&j-8SpZ}~sēmH S\|[T`0z^P '~( ނܹdܕd/Ϙ?)0[edޝ܆آFh*/^,.%_3kmvmd&th)͵ h[$"zL|*CTaM(SBϢl IG"wSd5_+d0bm"uCpOi䶌wdŤo5jLX yGn+FD[,b TCB>0. .ɭzb>ʩ˳ZP],5l%H5 im4_Rg G_u7`H0P/mA\GWq>qU^ݑɅGs&3YILx@s0Jރde2VP&a/.`[jLzWg0aژ!v"AnދИlbs% oġd["],:F k2T3ʂvaÜ?{}js`$N xBO{'# qb)RҴ bۼ,\OpwAeL.+:34ucz#9)>F@]NS Tp؅>q٘ܩic#d$nd}xW5jNhYVf;Q: 8!peV0~;w,i/X?j?4_y.$>0kD=GR=/FD⏻7 eǥ֕)C#i괃hf-{֡<ⓑ QC~GŅUzDgݶvk&p=ktn3@cxVTSz(Ĺ>;1xgetK){1DM*KF0 :Z8 ^ץ-o" AaNGV_Ƴ6iيBuߌQt3oz~f*ېj<җܡZ!B;GS⌡ *%筗rߵUF zL&}}Yw/ #k4UGg}(pM4.ymTn%t~$K V\HuV/$̋6&1KѼQ^+ذ{wWߦItiָ_~9V7߾| 9l'=2p%+Y\k)>){GE#JT$eY%GM|EI(k]Bp!9=|9u4=ihH8E\S }b}"H d*K͝Rg.IGŌbGޭxݡܨnm2IĒ Ǖ\%aLç߁k(RRjfZ-d .hƾh Ac.{wQh^ʜߺx+ѣ 9+-jzAر62KVxdN꘡tMmM&ER~U>@KVWv'<ʕDphTⲄJ8ֻC8D{(ޒEd$aܒpNWkVFwJ||fE;#8T WjfLF`tpBo{'NQW>2'DH-ݼ]MogײR˯RnW+r4 &J0ؓ#и @ [@lE#A"T9 Vb;stY,1H86ɩpsAzG L "ԸkٓtJs&x_;Zv AJٺuHns!W`chP+?H[mZ!9͙;Rg 9_0 !7oy>28\{V }XgI~8e4QNUSU1Zau甶>2 -{ՇלՒ7gd@%Rjt,=no:[ [T2DQRA(y}I ZY" ^̪u,Y1Ę#x-|)FH|׾H5K_vLAs_3^s{zI;)@EUfBz@=}r5p T]=vf:F`<EBF n?nMbMie|))֡D{ј"KWLGA^GQ(I ?ċ[ںdݏM+4Ny>?:>TѐaA wXt0"p=iy\";i3ry׭H:h9*FusSؾz9>jW*,;^i❅s4(]3:yX {j>5PR,"fcz~0KHyKpM)=3]rZB%Ȭ .FM¦` ,7Йaٳw@v?2:$YB uGrN%[|۞vԨՈ&5l|+s>fė{]zn9)5lJ_Y2~qs8Wd*ګD (*eYhAӤ#4[F+)o@lɅiq^><[~;K )5u1(֧r 8EԿJz3V/dG09(KCPIZ;UDD.4 {6=l$Fn-07 *"J,vF9^q=#[rѤP_2ۭk@I M%')m%Ι|+D ?K'B g[ȣ(4"0{ԡQP(l3!;t9EnwemdwBLl%a\.;)G7J -~g /i$"ґ.8.OOu1tK`i"*-Iyt0ؔ׹{h?IXtc n=h0+c>jX/}x }¢!;y.ɶ)+/IE)d$Ttbn{"B oIouYXx_U^&NX0B^P"kZ2:m݁sDQY]}5rO`^bб^r(ĨI])Kn B>JJQ)CP{ P*NX{ !ί>Q9) !Oޔ4oԠ`݊K\d~RΦg䷖?@ݧF_PP4je &S@ˉO~E٦-wƧɢ?U XMν먔"q,6õl=OPNg@FaV!n?8xHRB>\t*$)1a[ ȵ^$L:-Y`#XԶO2 &DzʪEDgw?'G!CN,B7a"Gf3?EaǞf_+FFQOԭEs D6[+ '` i^w"I:Su!i2{P_;\SU\H v^ s>YyobQgwsb@I.<9mR=4xQk7)1zu#p h!f2֙v-aTEoos|RRuT҉;QWUlSM\p67JM70G+b?rk)J%{Fޛx^]E[T$ m'KYC5}ORľMwtYqb[r|DaWI- )oe쒯]!l%dS`*⸵n=10;f"Md8 ZxACT`]oGWxwN2KN#`v`VΉ(=;2_h4ş:Ň?=<Țl%# 2}nǺR=i+02&y@yqW(C-gJ[d[o%*dQąw9=_\h {G-[Gv4]Z0_h m|w&si&ΐ+!D6 %"m܎='Il~ЮK3:ѽ w ճw{}UhqGcj:OLy'~ H;K>byP~NJK1|W[7:uKx\$f6~]YrV9n-[3qt,$֬/AJI8Ƣ5QAA;Ȅ 1h; Xȍ Tdξ&WK{.GaMyLBwшb%v ecښ0sgpm 5MB>W'}q{3 J]x+rr_MN6vAl h ⚰Km:jb8q߰k& j85\?Yķ]G-]6=ϖwzoٮVN /j6*bYHǯbAKPص4rV0촔OM/uW%zdt҅b68Tz;~M{U1vSz'vsՄkѸOr b#%"~ ]Lq"}#Uec Zߍ'막QM0y4t5qYr\#Ru9i]D71/`xfcIPTW.8慙J ~TvQ2ioFT0PI=?>WTRy,~Xi VމB*| OU&.䢎D@>J#lgΗN$|9Db8SFGVݜu+?`Dʵǹ^릧KUj"jgT1`z4c:|0 E]i$D^vc5s9GmEb:R1֜^18uWW& '@D:fŸZʟ_yXsmՁ+Γ62 $O"5VHlX1oъ1JINXF[p?" ?:hfI)%bȬ [`Qx[0IJmٞw!7{ykP-cU\ۈ)6H+r"a=>DRXPOmQ7 ]%,fNdqm*"i6`iĨlmtt*0tKDj@LvĠopPq3ytR6QGYw/dXJ=H;KZn墚.9IkD>F ;qU U:BgwZn&yvxhG"Eh E$TUݘ#!'ܾ擬訢c& E7/~QHe9`1ݘ@m9\oXQ! "ƛiQGfJ*ئXủB0K[`ZnyŜ`][{Y;Yې$>ހp[ʔ:[4~luD@0'?Os`^$E Rz!i>@^-#m4GBpZ8gF8,|:RĈh܈ 80vop\q!ɿ@#2H eXYoxB ,}P6>W(s? Y[L\C: ?\` B&ɶt# ft߲v3qf 0 0Btĩ{CR]NozB[23}wwz~5WʥXW TȻ`fbp.kR;^뜸eṸ2%ֱlCJPc ;2^I(h&u0F9>=4vGh ?6Lb2YT'X؋NwL줮4hB#B|Flc$ c\#u,4CTݸ |ЋvZrl$Fs(<;@| ?rEJ+QCDX5jq 7fY8M?@ "?,[CDln,E]jU>+j\@2g"U=?~ FRFEm^VAZE): >XGf8d]i u\H 8F5 (33K'N$RBn׿I{%!^O 'W Aӿq;)*`{ۍ u‘{A9gO(G+I/`΅p8/nmu%x U<7dKeűBwG={r-(J ^f(.]w&Y?XX3Y{Į%֞Y-Hh9KZԧۿ;4=K)~ɂ#m f# /+v+y7Pf&M^ڊnOa!fh\6InۆLDGeNKeK\NjE l~Uh=t@Vyf]uy!0+ NodW wSGMgGDcIʝޯn87҈7C`_y$ V]D LGcsX 0#H  Y1ֱT S H,ҹ"5%ditNYGˌc63'#dF5G[0l!hh=\eϺ*E/NrL2{uvSԇ! fvFtȬ|l˝ _*v8á1IL# Ez7[VG IgcjFG ag_ zИ2 J<@Og3N&uY_:vIY6_L4"Q4mryRFTSvq:V/=؝=t] p΂aӵ^gr>3-[ゼ]ꮪ"8V;۰H+$)oxmd"覆>ZKʋ}W0),Tީ\V7]bMܥ"w*/ $߸w9"p Oaul _'ˀ~PrBa®K$3 Ao{w >fȀ@f9XqߟCNr3cn9,FO*x+h8 W )֓\4fD\ -VEL{2hֳ!rWIu+ӡH{zimlƄ= p@S^o߀ {c{蹷{yFOqaSEAx|A~ `7A498N:;S3V "ګ, EBӕ1'Psh~1F.K^lo"xՃtW@fș%`a&4B+!F(Ț}Ճd"t rC94?FXTp֟']IDNz [o5/&d'0 Fz/dq3[n4HA+GD1|+{\jEesv?5(k Zr隤2Ë!st\< Ԥu*J]N%35r凂i|yiJ|!تn۶)d,O-:h_Vzt@ု4?M1CsLB&YJph۞;+X3r`\(q{q2 *MYOr/r(Thr#kxG)q/N<δV!lC:w$ʹP!9)׬P13b@Bfr:K׫gGf2kSHk8pզj]]+ _f]k6?E/\z@nVX)Y@3x|;i #ra/*RىarMY( f5fX4s90gab{N3&]ƣ fx>K1Qղ,6\t1vZ9hns%ybH %{v~^}u*Q#X VdoDC,z&fر-](qm!vM[Yp6jgxbm 7oxо6+[z.]KSl0( eEߝ >=*k#T ,*;ТU>_0&TBAşԽKټgbL%۾/2V8 xOg'J#s.r{ӳR\--ҺF^S=_"}>BQx괷lE!' %9JvvS[e#ؼ}[ݮ٦۶Kt5 2R5~:Y<r8LN _aH)+G èV AQFh7rF$Aё]V~crc4ϡ;S'\hn]JȢEךIS!!W/i5fZ~H)0\dANuKW Õ5RzEd (RAVNuoCh _qLUi ˧M$]M/g z4O4yi ! G WZߎĮԡzT G$mqJ8G U3CUuL2^myAt30o[ 4zg6/ҙ%2dҚ.>c~\Ռ=j f!y(OkӁKЇV)=' 4UhNzb2]$9N1mxp} +=G޻AEhW9E|P)$Ժi1/oe IH/ӫs1l I]4vEj;Og淁VwuJf{?Y-CYyYzW@gâW:llQBXIfl$F2,۫SWMv7=[dr%a8Q=%&޵59("߸ɽj6 U0Lr l=k`>Gz2vMt|xL|?IrHG!!^qAb p^,gA`zMthA_VXeh+VMoCɬ%aVcq6v8ZX~>8a"`@|rיpaBH4|֖{֖;7a3'KA4H5\UkEC@!Rutk J~r'V0:U#h Y TȬ8v:jZ>s?21sB5xs-{e:/qn剮He.AT|WOɸ*>{$dW p*V }>K5ٜcdH'2ˠPoQ^ PFl/"#I#hF}y we\f` #d4ͼuke3d ZcrԳEdͿA& Һf XݹMo !Wc<*+!Ճ;`^3)}`~5ze"oJuzGYXNf:u>&7p9;Pk|.c>Я}n!4g9Q =˥/`-?hR:Qx| DI4N֘t=oWZA]fБd)&|Z:qZ?(H syw+“\R o7&%S- Z+@㉍&TG8Q"f^4O[쮄\K @;>|wW_E%Df3W 0xWr}^oe߃,g?l/ 1fs|oM5ݮr?,NX]Q72M|/"蛍yi :tj ^7wh/f},$p!n Ǖ`#W+zɡcE$3gF7da%>F[')Ly-- CDs},PDRq6<ӽVt;~[^F޸[n*j. f~Z)UF,yo+"Dzs*~rlNxIRuB w/GlV༺Z2\h5j~$2 `]ֿqe~0f. ƍ0Q]2;<贏j~T0yʯqõ!Hk$EBpeUI;Ia͈ҟQ R5P L?ߣ)N4$ٕ0V 6wL}A0,M QCW>8ܖܞna~Yʯ4Rj}T"&#A\J><9$ JyĝDZ\t5R&Fkc i 1`mxgV"ŀj+%< )x%YkcBkeJ8`ʇ y[41~DTV-O=<e4%U<"|WtJf'9%,ZGyd,l.<.^Gv Ws^:.U(k_N7 _t$X&>i`y%7]vc .r|3-\~>f9FkoLD WE[tǛ24~߷$~0IGr5[?Mfx$Zt,he)oI>fhvCr;\gлtB>L 1aPCPQi$G:x;aQw|7p!;Ն"ռ01x[p*3?e;)`wKHd﫽P׼g^;ɸ<.17b"vA"S~+mBVK[@'c<#vAySw机 ~LTv[:.+AyxNRP[m[3=Otu7KHrUF?Tm0Twч%9;IoGZTAT* g3Ǽۙ4~#jP]^t5jGSPU] 4C|=Wgb#/Q]$.x3v*0R~Fkɇ5`qEn;R@קm‡;x"D{4s79'UJH˱ =} ] i@n6BYQ|eI" OA$X8 26}3q;!qМۦ7KmޓU`ؙ[UV/Iq|'TN4YmNRkP5k?; W/sh$Vp62q-uoŜ%Ζɦl;ќl}tivP8Bt6>$`[\*۳8Vz*6$1B9zzXkäНҍWcb6nɩpTSe&m{ œ-<0i nn ܔ>͎7@n& pٜiKe °6mc,NKK^LJXw;x9:t=¢7>vd)ѻw 鐅Q |LupK&.:n7,`ZՆ<=]@& _!X^!Pi\l^H݉Eo=#3ly#cEK^븃fN޿7Ȋl|ic# Bl1&s{m|fLU@NTAAV.7#,÷&aʈ˝}4ga#븒><&ݡaa y Eë70~OŖRq2Y䉈eio^ݭ"+DdZj> K-Ѻ8d^C 5`3L\o-ʅË;YS+Sj++YêaK:H;3(0/L^(NxuHp}er);-mt*TMnJZh3zA:&C/gQqq}bg|k'JYӟV-DQt8T^7ԍNPMw?/ٌy]65W$J ` }Jٝ/mz4- (hNNz*|3Ϡ_E]ugK= k5Ș5@´Q!UTHyK+UÒo==gvimeKA̹UFόx@\z|xbrw#&坔j00'> 3ua=sIkuZ59")\G p~pz^w.dmFO6Gg*yEȮ$-IڼOp@kh?P'Ĭ8c\׻ߕQ^=>6Vق_Kbm&ʥS1ušEK.C^= ])>;ȁ!D}D>5ͷ14/ti-`m'[#A\xeR*ty _Nd50Hd+dUDr8eOsՃ\\9؅A ̨W -|ԩ{v @:1 B,. T#&fӬ B9vӭևȻ!H]):o"w]1M͉K6H k7%IdAUk8 zbc$YҸpUk^D|#\m&/eҭ`r :dj`ǃ*@bRf(%*1y, 0QP/sҮĞ㲯^Kg{ (ۃֵ{6z5P`rKHգc8 lOԃ 6 o>fa PyeA (8N,a_źN^@pN,3?0u+JԥG]An$Z緩)OAR0\<lD}e8˟?) aI(i #>T=6!mPЧ8DNpg[\q]%tH\dFힻJ<p?5 Rt",-юBuP[Sjg6&j;=j'?,p JLj'* %$!'C2E"tlD)7_- d"QpFJ穢񕘘CBvypuJ͞0Rzr0*+oJ+WM,\Ђx pEx۹2ϛ/7X7\puZ8_ /E5_v=HZ iQֽzwvcYnH@ Vq96I3dLE˝ uo ~l%ղ ͉8jǁ*1/升+r`<_Yt+j ksՅ57/), RvicjK͖M|J*w#qBN ƞ *R;DUDn$c)\".2,1^Txv1SQ!K#[1rn@4[*Ao\l)׈=30~5[=X!;4KӈkVG((4LEnAYT0715wRS'`fO_M"3Ly;FSHɰ0N\A~Pbnǣ.Oo[  956LnFh#[bbEq-c] (Zkkf\׊V;*p_NmB-9| 3=5m6]Y52"ZЁH%;-L&/K]?D>7{ elKk+$y K[Hdp?ba8w(m8 M $]"(,C.ѨWcYJxzdڬQ^7"HZ2 \ŋ(ϫS@FPD'JL ~9oӕc~l jv+6rc}HDR`g߽.Hs1k!h= r}+b撒1nV?cf3f0tҫ2X4ݽբmA98@tu Q :Xբp бG~￯XSsҗ+sN_V1Yib'O?|!zNC\zè̕?.}Zl0ǒjmCc,1(-:j]R$VE ۥ*_aAJm$` =1lLyNoy9X+ˡ|h?Y?!LiW/nZ#b uC|5g`K$5xֹLcmAaV YWa}~ǮAQf#; !G2`g7b:?q-70h*PRUޢ.0R%) ^,foГ[Aé]tW.yYNFfa4ܶaC iEM汹}q9< yI=;X@ QaU"ܢF-ȹsZc&JwR?L^Se(2>2\U4s>%t[D y%zK4ؚz{|!"DʼnPnJFلD $|]TYo {I q7гm~fz[fz= {C,@oo,4&tbA`{&}ϲY*=JJo_gnu {e"Is=8?M:voe*"XdRΉ mX%kTc|<-Q{0 `g)9k6kh/{1k~ o ipY:ݕPV9@tIMBDwh9W*s\)Ba#4Hhl;2{/K茩25F#̍Q)ܕ#Vl0s*P(XpHND:\j?MZ-mSHNU$on\`^fʾʫ{wF]b,pIӔ7˹a@7 <5-ާ+tc?>S$,.Hf6|O[z;$@V'%À:UfKr&:c\gգ^~er|]PΌaĒ;ž%{zxM=V';|8&fPbLv%ƌ8ݎb/T6#4Zx֔-l 7hd!i2<po/%9k CW@nzMf.fmkaUIV_U#0x'A xY.'OoL]&9Ζ7{uF ^K6PjJ^/av7&f~#Qz^35lB5,8dCxIS(!n=ֺ sIOVx n%5 rChKMJɘYt2ׂs?/cxii{}F\>/&>k"R)$XcqENL 4&9ˡ@L>1dW[X_lpm8=ܓ.R5RAe8 H2AiNC4zJ iJ]MK*ÙrV!y%3u{C8%E,$/y 3C4qaLI)5;HTkΖ։Ɣ5x-ƒ9q=,U'Bj^]XNʠtB3ӑ;dS˕d탦c]-M$K56XA.݈!U_Xs54+Zw%aTrA<[鿎{6Y2^{(}@=8mzh܊ h59Ɍc?tF>[:6R|;d( hr xY~ԇ$|I>jEFҹC%pһBmgsJ:6K+W *۾:"HM.桶" a,ɂFe6h /&̥=hQt]͵@h]hrA n)ٸ3Zy~s𪚽>+_uj|s%'mݫ(q_LvZW6R %۲ZPʯ!Xnr}.wf&Ó R/jtߝQHO ރC4+j6Ș&90Z zucUB}/y o)Xe [$ @d5Aqևcp u gS /M52G]4)>i1*F{f'& >phݲb'7"{fZ2/sw)j(6~nN漾ms ?w ٗݫAHhMl2K"8:4^=.Dv߷mIމCtvt\w"f^*ޛ4Hrz O qRy2%P$Gn<0MþnL1쟇gUƽ :{wL^nC uY y+Њ|"ID\iG%s&+@k|]KcȭKRl td"@1#¶̼yQ!"N8,~ڞhă-lëcY y-K֨_ZXcrsYki0)>)!5ѬҒ2ZM>6Uw;Oq[x]E>efsp`[B9~ߗfBXSd4DJ--C*ʲHX+O5 ?&<)?=<ŝd!}gb,%[ d2xe;%B]EUP 5!rWŒSqlqcŦ{!@67g> n9hiIe>Ң՚\ٱ^_ˑhId@ƞ*fE}l0`$dwhf֒Kq^>iՌ 1wvNR_y`;=ȵ5_ ίVd;[WFV9iØkG;R'9%?cu j] E^TL61#:8I|]w\5d\by6ǽIOs=iTB>dU.4l`Ӕwށ"%Z_;g;͞uSBtQD{LN ut9= ZLh0('Rkj bA! %DфUXmh,pH1: (&tz|jp}|-_-iQ!#);4G󥓃~D8pgD7T}A ӛ[ڱk\U6=HՒ^g!Dwl؟? +oGL' 1 wU`NtO*eE6+ oʏi ǒ4k+QYBYF{&sS0iTk~_5UfnF M6XdZZc<=5`4 X/:9s3p$Y=iGٯQh0 3Ļ;Sn'6U9'% L`1ZJlC|`J<3Z@ȵ甲umbfYYf9vrcЗ`ϻwD0N6C`8GGxEPeY*MHvg∾(fhYs@;P%,jݑPTeHZ`/|ܔkrHsOD'?K,˸dwvz9vciF-I5=>YW Ծ:S%'Mٕժ]@gl: ډO3Ie}}f-|2٧.=9w׺xYBUÃx@^4u-+xkPFnrP|1W gbխgNA36=]s0+H6oN~vzW*_K0GCfM!p/6hr?p|^֦b5].n?lQ9Q>ssd)h_]popK?q|͸[+N"T58NbN kS9~_DxC쏀9U5py|IXH y2By1:5}ԐwWujY W ū\Bru5 U LڇXR|Gk@tx7%N~ԟjW Jٛ[n>SǨB^t@N+, PV)Q >Bpq?=|@bztrrԖn!/dDo=ZHzbF-. ovZE1{2RwnÑ9_:$ygPZ:#?ŵӏX$U9M ~:2#d n\;|2 q\9TsE]QһZ+W l/в"H_R[^Gu ~jWZ.V 5G}frޢGftLud"U+:uYuyųuqߵ iCא҉`>n@R#:. CH'c3K\~Τt˨L !11#Z:28SDsKk߬}fe~|^Ń;zoyw+FxQ[p0Jm_KŭmF)s|層5zeEGp묋`i;]0R}P Q<<49 Gy#(?v B.G_54Mm=Dp:LfMq8ɆXOs$=MaC^zk\ӓ$w7$hn>e5 :NGL˻iSk]H8Y mp8HJ{Ix=d~8f||u¥U,G ~{ϛ+P?d.U$8 XTe둨7s;O vv^Z֚MawED)*[0wը>fsM#܂Q D#'=sUZ ./ज़>#+I S~@-2M"W['&H0L- K洦Kr/d1i˾dfE a_'Lֻ쏖qF.c ṟT"%6|XYgeZm_aT&5a'tŶf"l'$PETtz.4d_[Axwɏ %ko7g6386LXpafūk*}C)FuEHr՝fЀe2݇zBƅœ= κ Ik t01pJ͛BaT Nu.ֽKj\P LZurᭆJz agK 7[n&j_̹AoV7ޚs#|Lkw믎omr 2ręK oe۰1mN)߁g͜}8jh T,@ݾHH:Jiki 322ɏbЦB2~6~櫂=2M&vz5@.P 5'p;z{rwHxjptOHI`fAiv'1 K`6UB/nҲ\ί$[ۓo oG`[g->\#[~Dk˂SoSߒ}a  ?3S*mh+@6 !M?4gx5MfܙO6$5{#H>w ;:r[AjEv9NdFSJi!|6􏅤U i6'X{Yf 3Xf侘~Vg%Xa2JD@v*:osmv(R>0p?&y@ p2m#~ QQE\S[}č9 : % l 6VIs}A_p)Pʽx, )WW :nվ"ۖ]De:40CE0S'Q|]cc?V>jGd:k꯳ɕsS='+V /NFIBfCYq_mj;qʠɮ xk+4'e\UEJ]MoM&OQ1hadri<%X€h!\^QU0~XY62^GDYuU`*$(%䡿6 Ãy0Dʰ;JՃ$ 'vfreI|IanE3Xl,/TWE=GlKcБ $(:~'onٔ CW38v@ YjF[E:) lߠ71TцQrMRrTU<DS"єVr#:LuB%tڌ.Q#f2fI+ƥ:L@ڌKpVb-hY%r0/;qM&p@P\d6T|/+Psw^u$\NBYf{{WwަH!@]/oA3ڰ |07Xq`^XY;/ xX@3^Ɨ;&k} K_=V? Ѧ5p?mPyTu-N7(i?TVR%W&>e4 ~⇍{}.Rx3sלKO""eLg 8) ]^ g2-J?up_GrFwE`$˛&_ '4}وX1~l%/@R?&0/c-SC, ;!dKx+(_v!ކ˝@l5AxW6 qseH ?u6QU/H:SX?sRt4uh>0ғ\/)t%߭2=tE3l)I:|_b }?Vuw'nG~ Sg=!;pAA4It;* {S8$ 2$ӞCl-{]ǜ6Mb;ݚU_z_h%)!}yB%3y KT@?/^vV(c8UT!Xū [2xbS&!"aq'r)c e'n7osTOؽ薅3$ݟϯ@c! ?W"Os< '6N̶/1=4.m'46u1O!G/_&S mf"TSۜQ㬆)j=*@дՔ|u7M(kԖ^NZ,Dž$T\aeXyw&(krA)1o%DMLj'Xn!n: w0etnݜ@bx,jBuՏj cM/PS(ee_Y2E2r>y3Kx/sxR1Z$lԘF]s'4a);j\?SH/y;' f :UM%8MӉR|wbY`Tń`7h-E^;Jɚ`]SSB1|y Ĭ&'X"XthxN`ԆGDH&XẂ 6 oRǎ xNEϕOpX8 @b&UZRZp:2o+.ڄ'Bl6Ev"r.[T&6VCuC%D9Sh13Oۢ% 95  i+_Vf],&8lOr`x;=ن3/Vb%]KKJ#?%,Gox.?E@ܫBP5^)cLY3'Ӌ1fo 6ݪb4 f$ 4rQUdP!+K܍xS Ubg'U*{!scIoAo5me(1QB^n:wtt~<Ѫ>(פ'Dv0!to2jZo *4:25`Y{Zń68}1Ϟ$5wڜ4}E5G.7e-_\} f) Y,j0s;#w68du插9չgզ]^L6Ӏ,M6Q`?ƕwS"OOoA"d)ʮaYV'Ȧ/aQ ҶnBՂ\[w6IE)9Ug~Oυ+9ک`56,E,ҙB*Xa4HHA uZB&ԭ܀O5Zʾ;>.&s/Q"lo\ܚT\:yB@!E(УM䚴&|-"oc[9HěD( = D_Zm67" 1zJQ:0P{xFHnՍ1N6 e)Ac3g&>:n/ R'$CF733F3&2Qަ+D巼4`J\W- wn'WS^nL$ &K0b\Eq- ]fhT0@5L0 1mCbÝ'6b F aӽKx2bJw-FUcPPE2L^9Co,b_Avgy Fxczu N&ܵd]cH}^HeU"91檱F>un="gsOV`$*a8DIJYL"ðJ]T).\O@j=["gl QHY>yHc#J{:3dc|G-qgAY*B,}̯P qtxmuyղ &2HZLWݜn?&ryw}uAdJvGRJ ^2)!01Z6k|=rtN7lV sD޳;6j/rbTnWh)^&[VrAm1jڷb*: )R@3B-H>jՅEȼ&`#`i,]XJk:D< 塆Ӆ]TU J-,rnfmIȬ#6\JV=@%kmOޔVt`ljnC޳+gbP*nӗlV l+SáK3 d)2DD_($;X2}oLOrd)unϬTϹ,~C juX5؊%޹wW@'EV fR.KÞ&<q9}BQUՔK+C Ү!lWƀ)z*-k8q\:נƭZ3RNb%u3JA$&9څk'̖c, XZ l{8);|٤+VV1]#keYD&vxO˲Elh Y "QZyb6CBcjF4IZҬP4hPVQ\yQͳ;-cnB;] d%`xho!~="Xxpv'۔ 7j\eHPKSXO)"M }^U`xVq XՊ+:WhPU|O~g~ *Ec5"6(AM#i" 8)$Hi?oi;uje!kÐo*\ GS#A ˮb 4O0:ږtGHX0s?kKD*fUfU&20 g%BW%ٸIaǽ Ϋ)7` 5-06]fOQаg־ʭ ^BG7@nUV"!dgj 9vwiOmFk ﴽx&ކDI@EʶS``T >ӶCS<!H*(P\Gh4 {Qw >D-X aiFH ť^|3 *q?>XB6Auia2z 4]-_elnO^6 "?a/-/J(}o7=ᇍ3;q+6A \!m8Z,Hg`7u5 kl3r@SZ턻ynu .Ԃ uAW,OFώv6Q'?l_@$ i]6X$9F.e4qhmqYj[a+|^a$8aPd[l}r@!)I<\w7"$Md2ht7#Ab HD8հ:u Ҩ>0>d"Dt%ֲ*ǧ0WoF{.bݴv\, =3)dt3외𿞳􍎇oI='Ox"w܃qi5F aBl%Bʠ]rx*nLC)JJVݹB(5*&HTVv1jhdy꾼9;pd}ABzBee YQ ŗ 4ekc ୤{ c|<:;ksX]Qq~vcMIz]B3bnT_@Jq^:#&7 3N̳F!|t%֋jL*h0}pEl*et'C$4h %]3jݬ#Uܳ}h r%gT="1q:5wo]Q+;/4MVWj'fI I&ڈJbcb$/Ķc<˾5oAbIu7|7\^bb_q$}šcݹ(24<@]B SEM *,+{we6 U>7q_ MlaoFJ<ܤGn&byìD똃9v𖘂4ۑo(=@ Tc/>pd @yuJOG*“YG*BtW"k ˊ#'uՐWftNǎxק} eگ@pV} :n E>\y*fH)P*"'lkeb5hVleH\l qN/160'PE>@m}wWJ==^ (a%֐MCf* ~cubRzO: ި_'EA+E buݴ<$Jf|d$7MC+}I 5 ?uK-#5.{UǺ[T9;9Hۺ'՜#}|`9 ̓0Aƶ0)e\IwL >s'Ҙ/l&/=dj"g-Nrt #vCz &Togf&?㝯I2-7ٯQ>qq[z>;8mb,|ߞ,xۅ/5qSGǕk!K9mb㎢; T2JPzOLR'(2n lWK\LJ2OV95)}AA]/tz,r}R< LE\祬dOܺϣ]{[>RY4^vOc{9qhrK6&&f5rn|t|Zwsа^w[S3aЃNkMSIb\snZY`"ɤ>MOy/?h'd=~ lhoЗR?#,9g&&b9z:0.=>6]1bAИA<~a GC=JVcu .y-0Ư7kZe*)4x= 4!Tܙe=1?h?wm|\+[@g[{I~vmSgVm+jq >8{_URʊr2SYJbl 6z` ev\1Gr!eYAOk9[˽,a PtlÍ_Yu0{sȉ#wqjs/C{s`&cFwtQuGTdJ8-N1kB؋X,zs9)B$_5? ;)ƙ#=DORQ`YwM&CE2bs-kax] GIMBpA)H6m[Ef"*xTYe]Lf(.Ҥ [A9=_mflZ(q+ůV7Iw(a/7zw~raֽ}e aR9?a7SyJLp[&VSCMKbdEtoSXJ?$ڔO'IZ殧,O3$j02lyHxDVUw?`8gUs4bJ"/^o|;M'oո 7P}^1M7B;`2wU6ra*̵cP Oh W='VK1x`eXz$&?&c?Ɣ/9wANdxT@@׌v8WmP].Jw3;o#ju~+\Z7ޒJcPoUmqF%j"s܉.Nύ]{Dgg oCJ A҈W(-$PfS;WƈɫoA0,tG)$-?|`OR{og'vc{r)M٢VʝLEW0.hݧ97IFTWyQ> >N&QP웽45~mkqcv N;f-J)E=&~x+WcgHs1>sFl;Y&\ t`׺ odR-7rU\SvCԶVtwd.M%coXdRKtbJr+:ށD{f2"+c#xl/N=f 训V,Dm?a瀎䭯ogs6z!enO=Yjד/iSBg6,+ec؋id-/^LӞBe *P1:WY^JПc@R}㵥bOHYآ+I$W+ai\^W`m&{PRgghan2{N4'+/Zqy 8YV qUۉM'U.US-'[kWAEs)@ [!}d[~7٬33g蝐øn65~ep&}X y5=4~f[E˶#dhYD"U1v[0lɾҏsrnA_0k6_7ӲLn$U6[=X`( twI耜B_o?Qt%v%VOŖhW)\*t >#:8+?7έ\y9:P)8>i炻vK@ ni |f+3AE_ vɽWVU*([HZ|tetsPxI8m|P=q=Ij{`' L%$b+!2B Ǔ%3 rgt-љ-Iap-rnd&L<|h < yA] uY.HG^盞ُ-WF9`,OB0koE A;q "]_-9YN Tx{[Py(,(ހ b"޷E/ui{Ag$EU K;cCTOs;xS<ʻ̧ZQ3?ӥ]C,'Z]A/E%Mb}9k3|xsˊm9dQ?ow nd{/f}h0vGq 1撎tC8JcUM``bf #^{s|OmSJX_68C~zY6mTAՍ[u8SLclt1RA*w.ϼs+keryq]{/~tWcJh2(-F{2js~Tqy64p}zC}rbR-- Sb ډou*! Rس𩓍#ON3='['KmAT>3քbʽ!YI./wSྡྷEKȸP!һFTN5? G>pӪd}4P/kA4I }0/۵1Pz`pּIigp `ߝTkl9q<\W(_4 bpaCWIsL(&R _J8@<=%:Aprߐه&aZt5-fS6HUЂؗp"/,E'# `B ɹ@9YP&;S1T][$\][,|쁠Җm~ ?qtJ]$2#aTFF-h R0*l2c7tG4u;5ِs}*۟LWF8c &:,'\do&Tl^!LL䚂Wm͞X͝B笵$m^D1zS Zqh( ӡZ"/;9^6 Sv˕>"6/ٸ~?>٫d9,4GIc5񌪈P.0 q*Ӛزz ex4'4Tv AKۼ*?qȯ$ *=n5L×x_E)d8uςګ?ջڶ^@_O'mȽ\RR(bV?U "Nn0;J&؊uWJ)X_w[,<ע8a\elzuK+3 u 6Q06lr9\X;:~t<>ۍQ2Mg3aXcㅐ8)^oq0p 8j `DJgoLZC X.ܯO T>qpZOADiUW.-]DŤ}XhSa?_.K"vk89ȣk] vo9xOZU߬۠a gm'zD) {7G0Bkix)הev.|gt ;zʲ(;Rِu6+>B$xAGr& &o<{-Z?98%ӏےeB8総Ns)^EŤ"/8̕ :c,>v@(;!'%e0O7Z+< Rct@C ԧ6B'`~ii"6ņ~~ 8.鴛f8xiN6AT9HyKF󺡦}ך>],K&$cܒ?ytSg}b(j N#1Zhq9*f&.ǘ(̢$btI-=C Ab+d+[Np֡?K3WiaI&Ƞp: _O.*E[` ` 27aEqf"1W6Ufӷ1~=^UχCt ܹe-M6 +㪬퇲V?@h|B1|pכ8玤# o_:<ދ k2P}V껄.W(mPBz861@Ygzs4Of\|C˟2%+W3zb$m?$p}P!UH [M݈GzYZ1pdXJn_Y~kE Nlpuz"^YKxBm֘Ra()9 hjv;#[xg9SB!^B[0U>RN00pca`Vofﱚ95qQh#D'9󧉄,0pEUq],Vp+.?Sa*" _" R`l2=_5[h#F h]|E OGݩ5=e?d|䛈7xo.HLTxҕvIlU=] -K^雾pMf"{Ϧk dQ)x;Sboc!c=Y(D ,jQe/ڷո p2B 1}\)2g/Sc zRW넏@ΡYWcώ -tvr9aaUaxBA+?f;$`u[JņZXQ Me[cX+>*A=8No3֮jݬpF4 n͋Mf TTHjbÍC,2C|L׬d!.Zp Y_׉ $v4&p5vNh2(5EH,I&*ၛXg ͎,ӱG ;r5 QI?2AC˵I9q>|ùzya6<YJ ILLՃrfh^긻NIM>8)A'LNp%JzE&(47~F GQN)tJH^x:9㊊l؎ aYFL z}ݒuRJ^l?=j8wŧW0WC"{x%:6@%:q~Yӆ6BkÏ o {C?filn# -"`#qLN`dd gVx)7ޙz}Bb}fTlop8R,lF4ݜj|]='$1`)^]4m!34JY"sB Nw׵U0lD+Ёo58^5:lkb0Q4l[U7fxs{݋f\w!Y<}Q&dT,0 ɪТ¤A" FipI~_. dگ#S+[1Wsn6!iwE;da^O#8+ƒ2*ϪSDU|~>,H#}3Bm()~9a]odpwX"8]p-ų!{ n6ҰI,Yd$i_Q,"xaG=繐p긷pCG>R2v cf2D- e})kJurgyԘ KbWу8u=H+ ÇFL@[FGVSsSeyee>ubE%:g* ݧY1؊P8cZjɩt/E"u.&zRnWpZԢ5$졑9J`CaEv4;/?Gŷ< =_R" 2 le$";o 0}aXI_;q!ѧrfPkwʎ!}ԫ~y3[a?N*޻q1=:˙ڂ}M1w:*砞ZP;Z]% q"3$iD}_;rgt7j&U4=%CM. &zTbʎ;q%)X@;6LV f*DAsNaF !8TG79C֠ܡ-ٗ7C!lH|,ZJmokϒ(v㘆_{Q5.!Ko炸FD:YP#p3'=Hqc-k~I% g|6"s*Bjlh>R ddW?ZaʆЭf OZ/-}9vdQҗn^7OF[7'A#& D^*> GxqKN4 z5UY& F9U?0/k"58~x~xlЪWVT4'dE{t30#wNUN&m%ҲدoI+rV\Qȕtd"y\GY@uS8Ox`UsZi-%l/q*Th7-`G EU Z,e2RƥMPy5+:^@3"!׀`D]1Űp =]AїSWјK8lB`픵-m:A Şk; Pֹv9)KouTHU>T@p(Nv ;>ӓ[LA1Bm+Qk B,0I! seA!dfR [hbt{{yo*V^+rgO 4$,f\k_"? ˊ7f=lum?"ь]/i\Iu5%pI꫎Hq;n>Yl}2ô4hdIhZӽOyMw}O=P1Au(,gH#{/I yذ}}Fsyo]&ayR^R-4;ةַ5}+̱X9-ҿgvQ_nM -n]^q $N`Kw;R)(V "lKo5`e8dR:AWpeS:HsZ/)zjGk^N,u^& /ƪ8!CI/8FTN외óY`jpYl\຺;#»̜D&ۋ1~~rY,o28%ة9{㈣4C[i ik| c1eY ei0Idt5гfZD!d{\X KJc-هcRds#I6"MS:E矆:6C[@O9<z@:U'on=YXբk=(xCp1`N{ߛG!OdMfлX"DTe?^˫lu%$W4qb&>V1,O܅w;->e( ^eM%!^4u3?a k lj~g[Z~% LfVxyeeړ`9ëК/5j񞕱3 3wZ`W\'EƳ6߲IsDOrW.b(Đ#6CXݣ㱳LRRA !r< $u'IR(x qAZ;#QWd_Nҳz%6;i .lĵe"fM7#-;@RC;kj;ږ7&KkX8opᬐNlz*,W&,_ﰲ[o>av,9~JS=͹ɰKɅL# @}-ݳd($^az^<$5Z|TXc;JOWxC4Z1KNWg|ƂTS:%fő Fe'4fp%) ;mgs^c`WMDw  ?*V~wNq~ߞI&ՙ$;Me-Ui`&[|ɠUE18^oNN`y z T Hb@TS^S"J%rہJ xx ]bӐs(' K{jsWcoͅZ4y96@$U( /IeX}`^b83Qm` Pg7K{ubKY=رZ=/}1^`fMO1_՘7]2Kw..R/#؏K52qO+k^2/ΠUAڤ]"Du.R'MX"5^c ˬ<"UBVc$֜r֦K>ݳ]{O']as#FݟɄ^9X}2E2ȋڷIjjZ[PA} rqʯV`'|,HZV9aBOItAg3~gy\ KT>~6f?r,G~A>8 Ͽe*ȨE `fzKڳ3lyv:ߵǐtń gp=k-{@!HK]VLb/]me+T78ڭӎJ:]+[tǃK׮M8lf|P7;1SY.A#a)h/'.G- YlO;WD2`~\imVJʵwզ"S(%aC$M]хgFi(aEٓ!fguuX{Xi|ilk`1HAjHg;0).xKuO춻+|I/N cpvbkW|-me ٫95(k3N "J;*!rôf7*潉*;~ꪺ]ꆿ-`JWpfv ˧*@Swb{?BΥL99.bXދ b0!>IJq=$|_ K_'3CB;7"&1 "X| _j IZjaV&KsdAC^YcZA{gXK}6ǬNy!q8c0T 'tӠDoX@j]w"ߢ u"R}4*+@Q H4~sL6}v Mx~Rr_Vq[ Xn<m0`:ۋY:+ؿef *# N1WASXLe4ٝϺ0B?>.%q9Rez-leKSzP3GH* pZ=3Αfۑ ׃nLf#adWM2&6zbfp\k\>[O@L(ڲ@hHQgN;_!\h1W_Cқf\\>Wne1NA7H?0jju:96 Xv|YztgB"E1ofLGM0;&\Nkx_^l1o%JXmy7$W$Z+7SAPmVdMl#*Y>>VO E{U&gzm ht}E;0ufPw08n L9ɡ{q@?d[bĝ Lʌ+b=}՞{xۑA Q%2.92|{>.qY45t˘U:c?"z _oLA## R^q&%,y =C-41pqwHμ1Dڒӊhp{\c"5WI ڇ}ɗ2hn1$ߗNÄA,l4UH{o<լH˅=K&P09 Ԧs3WN)&?FmSȽ0s+ҩbFW_ڋrR(בv[<jALIWی(Gxtrjt7=}FXv_J*8vMpLH`pD_=\uKleOşJ[3EO'z*{CNJ8bObӻfMSO 9W+~3C3bCL&3o)py;,>}$i@ueF }fCS4(e< S\@\lA~"n/~"=L3~_ w: &%ch3ҔxMggy/8d!&#cZ5φ hQ|Pl">U>j̫$) .Y/e#`@Tq~x)~?aCZY23?Iٿ s00X0p P<syx+LHEI$`fe8{ihT1=?0x3j0d`D{?,٪3?hY*t<_ ud.!ʓylk(RsX` 4{]9ڧ*@IOyI)~( zrywlI GY;ʉ|jt2p?lX VKоO>OaEXy;y_eᬝOy$q# 2m-iSTCnBBi|}$ ewVN j5-C Xb!9dEDZ)RM1~mOnVfF?Yf6٣q@<0[6OΛ}GYKfS;!J݄ G,F+Sqi:Ktǰ0&n ^J4LmC%SZ-,J&jAya+"+4=,C΄__O*4U73;O-jY%ٌwN U݄u6_ᶺn17dX5T%'hfZԟLz"x!O M0_)Q;"XjFćl27Uw֍/-u%h(xl> v38ҧ}H~@a%78tlڰ~zgEs[3d4|WmnI'![o;m#ouYeA4ǔ>U17F_0) ai&!(8B(cN6?\)+y BJnUe yT#K)9#o[™\j/ XMp2:#wQ]24פ%.ZNڿE% rvè;WR~Kv`:O@dg𞸧U$=*f)Ecgr PMNzVe7,bhzg[1uNԮ_6-vdo71 Wv}b@J$@]r эזdިrrm$wq%,Qrsc`[b< j GJ "x/d7(~*4V۠ٽؗ{w|R;| #4+aɫ!|; =ÈK{U(Z2T\kQ\z=˽Cn7zRÉ%< lxs %K w+6}/q5 1 6_N.ڧ) pzcvbFHz7e-7 b.x .a^g} ܟ%8]]n1;ӪF*w%gmWD^\(EUqNCR,:Z0:$&zZ1P6ޜeϔ l%et_6mHDOc;;JD1B6<9ç*,_dD@al$PDI>\d"m)2O&!v /*/ve;j^Y~0G8)BjAc(v fڑ%x qP͚dGiui`h&: ܋ V ‡jߐ $HU/O?o ^Oؒܤ=,m`t4x,@,d "McxR}‰z_sTA0oUXkWNƸXkPicUw~Tz$dWԪW5+/.ԃR?:Pz̈œ$-x|b܆y(?j(.H'㾨ۛ%B HWB= imd )ھ>:ty݁X%:SBZX>-sgBk|XܸVߨ0D ^c-/Q s7'<x4B}JN(eW9rD33QGjwx.DZwUq*I=8l@c$v~+ S34i۱8sX 9<= ;Ľ puټq/kb?$Ӛ5:z%Y{ c`&{0)џ9o,ȪUEA@1,ߨRgV<)TcȪ55}j5u}q$ vνpRKJ֘.mgW*ɊSRӏ%Ԉrtt]Z! $k!:fW_+ Syc&s[} u"+9ג7n2뿟guUTF S?# VְL Sх[uOVhCt0A{,Nc ӄ?aRv卿 E:>hJ2[ ̺A] Kb%1Bn1|BuÁ+J0ZIR`nn_ b1Q۾cc"cXuS§T[}>D\ǜ1̌UOZ#Zѐg <9T Q~ٛ[yw>H4&kylV4@%Ytɷ e@)A'?̥ 62jG7iz*',]\>Nv7{fC\ÌK骆v,TJ3':)B(@jpGlIl"@ `PB ښpȼFf%qKN~b^}7 N0I/l_rԣJhX8Ui ܚ`e77:[N M:S2a 1ʾELqHtJn7`LK~_ȧu2=AO(Р3/l dHլP=WڌG_??B-BL[H3y2jraotozb0cg/`NvjxQqn(AA0oy痜"7<J古躾[ob@[m+Qsgqc8C.YmyuKǷ|fg{:IV?j\jݚtF0.'T 1f,,!l "v388O'66݈ "D%$r<ĞAӊwW1pT'?ݹ`\ 3'h{^+|Žnxqf{!_:N'K# fWjbU6o-lO܁.Nb){/.D0Ӹo߮sR9F%jM9Bl$uOI'Gqo򟺾ٜzh(A3qCy#4u'q0ݩ ǐ 6z4W -jJs1I.~ qrtދjV/6K5tdur?[!jPxz6X+)Mz!I-Z7/5Z1'z҃hg6oA cm`sӁR^/uKWa@ljB4Mwkre"oO>8|%;^xv? mƊҷ /YN] [4҃9*}x\&RiZdиWq?pJV~jy|[9cr~Q;c.b^Tps{zi-Yh@sBeK~+ ا/$՗Q8>u/RӾeu$~ AF Q%#UO[Yng?Rw-E\ -|dtsU/cr®g\9gdgCB-,Fn?\(RװZ goq]2Y RWXfƥp Xv,6h|!'4q#DVjARtI9M7~$EٰnNLsF$DBڊ)6џ}>YFQΠvWӰeK1-Q!9K5b:Pޡr<7I2^0e?k=`jtO~3UA$2S9uXo( ̏nkʻIX(MViy\Cf; RݞO-  ByTr)A V?}&,l~Tv"D Bٰ ~tSNȞ~!GR]|<8sV:N$MwW\. Qk{2r(ql' s*jϗ `.)}Af瀡NI ޞj9O$\5+}g/ꉞBR:0GhTOz_3,JC*F;qiiHx8\ģ [(ZjdݘfڴغJl'jymOv/h{ŀct崀E} rz;T\q֒O݆&ǙxS ~3^I셿KRV ‡Kw5Yj ;jTOuNr5h5,dЭRk/̀P(\ʿA8'0Yz>+;ͮJap?7v& i-j@eR~DtzK9)75jwwUN +vA?a-GNBN]YhHY$ )?`{}$e3ݮՓX.>K#Tb ,IfB xqaV,5|DsB r5n{՚k_S-5>Dwݚ۲F 4V|O Զ|)i=Ż )h}̼u&'dESE8XFxS|;\d/TN +cX9-Ek7٪W/B$,8 crg#N=4H7FV@QWCSą(VrD!Q8&`ܑ[-LB 8%_ATpdH:"Z3Y׹mvX5\CxB%?mQA8n9u˚7 owˊ\LW~ԗ5f=- ߽%3 ߟkK}1 ΐIzkڎ_d*i$sY!0QRԫr!q?5 M95nOvRk־TTjbJLA RMZ FF^#ȁ}G:͵}*7[ j &:te=ٺvuu~ڜEk`?0j\ d3 -sVegf8o,MW ).A&c2;kCz1#~ Ε(b`t2mGt9],%S>ȑ2lPƣ}p mV:|$9FZoiMp4~xVnOXPuGMg36abh6ԇs-++[v+K/3 ;"B[u'Z^v)C "|PI}ꥳQXhJM5 wdVݰ(b#ahr7%p+ FhQϔYಉ f뺒_C$ QAٛDjnqX~ɷ[;evfGd"ԛ*`Xg }zIz/OUHWR7_.hW/E |&&n\ (ʃ^V:^2G"4C9N G[s&naUcD 5Y=dCXQ6hŻ̈7'|5mKoσ[(VD5U[t˵\idWŒuU-WA<gNA܅rU6T?f0=a?l~QzCoiEn<.,dkn+eN^_ &|gM"'jb$x-՞o]Z3` K|#,1@7c` 3Ỵ 6 hLvv+V>qHEw ӣC\ҵkjUEYK|J>楽/LdC,S$6*z$=EĮ xe3Y.1.V|9-Oxyuϩ6|$hBǣr@1;+@G,1XW;&-Gl68wҸ#.rhƒs T[b#mEFrYÒ eg t#Y(4o _N_7'V{TQiY:+k[g4# c'PDXQ_0qeo^Y~gߓA #ETZ+wN7_oleT5.JB[ /*kxVMG?1j7t "z59ݾjz̹E``p@[zqcis`?P u pkE'8Kra|i8N; d/BxS} ^ϼ,ʂ](ҍ :k+.{gLRXéAW 5ysޑrΘZ ׵Ehć7wER՞-qkUөGY:db[$L#\ĠE䋊 RoV tͷ3:I&@l2 9F* , q<57r4U7lx-v rw#g +ٷUA|i&5ޜJ+ Y칺4}ksV3V|d=ŵmXߺWFjn[u^}.y5׼O̵d.s|qvX% Ff)tH&)<#C.:|\tfP&@ kR~r$RX+'+!Ym>,=Ky"rC huڢs'7%zFW>V,eFcBC,v NoARKh每HIzcU3?7-*n#;]Pzu4y aݪj}QԳt'5}6$WdH/5Oj)ՅyUH B;X3-]iͣ gk `!R3V/ӿڑ9ƻN4В߀:#+~Q@̄lUjۋC)WI~̯ZC#\Z[ո~Ǻj7hY:WnVT2 c~@7K_YENFZNaPXb3 = I6/,5<0)ޡ+CO*=!"Qd@ &oٲLZ]9hYV>}s։?m 3j "[`=fՍɔyc=j}6.u/* #Yk\—ՁRv ?l*yOL ZBHbJyߝ{~o@~a 5wZyꨴ<*OjFT"h,T'=m~P%o=5ǡn P-$Ħi[{szepVFIDtiS+p-д>+G)BvzF9@H%u0{/Gc 6YΦa؁MڶH;G8&$,i3G)74^ *lbqg)Լ/M =`U5$AV,7ǁTLڪeQA^ 4E^@;|KW+r7/ ^d*9 M pLKOmlua=J2(_SxF(Yps|%2{;JK0g^ѵͶHuk ^/H!V@M%θZ)eQwZ6 RbyEòͫ /J(̈(pY?V.툆&M0W E ] "g>#wUYW_3tS&78M"@ yWjQDIU -*eyˍ}NaYi ?:Ɂ\b-Oƣp;v;`T QrOJ %T̊u-Zp;1zјn[?6YsliѢq_\Tu?d9 YMmapueIgI-?Ģ+W;1xHJ^׽Mdy uz) I^dJ~^r|ýLd ӯ7hne+xI+N36 .S*r^:=xd۰KtK_d͟.tb힛pf2 L9 yVU+vuPN&(Cp'Y`ۧYIUK@1Ϲ~BRY߈d)(~4z73'.2 ̅,pSG{Ⱦl䠻ъ?:Hn<+4=b CgBmº~DqxqQ9grCϴK .8+r9K?6=,B渓I34$.Qю'@pRm$/̪#@`p _E(ߔV~}K`8RL:Y(ԝr歫Xdh3MLj:<\O"l~/pqk 7k ?divWO[xk#e"CWq\6Tj׊[ MT~Q"^lmcr<6Z V81"Rr2sj['>@ | K-AБnYW0(OV"Id}R Fby)n^1JxĥOpSqyDNMyDyf-/HEw v@*L;>7$Td \sN_ t>ԯ]?^ҀRnzjsI곟`IjVX*ff)vLewwRweU֊gU#9?:^}aus9*Ӌi);W `:ک'RQ ~.|H3!k[c1l&P`pFGBBkGx[(WeN 4t;IT/94]T1[Rqs $TRޕ߆cSI uZXd[ؑJơjdjN[~W~*΀3HR"Hyc{c)`l1( %ʪ0XvxH~ŒL ipʝp܎W7bjKa"s\{sXf-PH\ f(r"b999;¿HB9JR(ki43){HѼ̻A4y}@!EʟӞo9ɫs u^c;ڦ5UtyB)C`09-btrɽ \k`xޫ3~:f Φ[~[C=##/1f?8Use<:H{q[T'LV>@>K3Amڍ"BH<׺HU7zu@ZɀT |E 'N}>bLelwc׬Ӣ,1(s{gcڨ>׹o+奟L⥭dM lz C/h{ީt0`NAS^$qYgFկHWY4zKE4{#,ARj\t0܇AꇌnKXѪ J5!\oETltVֿG6wk ՜lXeʯ/o2T[?A v FW$#Rppc*RJoBAifI[a3.wK=;k rEX%[DnN@=hYw:/8/XN4Q30׬_sK4r*}@.adLYOTESO'p7ߝk{&[tr3<Ov7{(TĪ{H @ Q Ya3 ӬO9irion N:m(&|- } ~!xKm]C B"C ܣ!@ 裬!9M/ -j&RVV|Q#`5k:hkn/[-䕺t*bd[\$mSyT1yoF̥/>4|Cdh@љs޿~7T6/r_,9Nzn_ni)vzLUYNa *I*O?c^0@00 Qԯd[ť :0$>fyNaé6~5WBɖ߃h|Fn2YI71%哆?gd|C 3"ʲ޵CwHIT8?>`יi_I?^EcMqO>b%q,h̻ւ=aaG8lR;M;S:>B6=oI:9wCJĹrZw19 Ksg/m Qc cnΓ?EzTXYF7#"f[ZAP՞}ؘ=l`*Jvw+#pޚEg-F~q]ԅ`)4y߭P:G? kSVeNhr"Fn(Ty3(pVCSS\RcOA RdNkuX{$„&2J[6픪ƙLQs7ۖ+հ-zFڸ&Xfk)ƿ}8G`#{K@D)A3+ ΝiS\s2*.TΑ|4]D9|T^%m'5u^q NJFPi[֔UPA4~zaqГʼnJK^6ON7;/E토Өr}mu0q ,:4hc XS L-4'CbNf1G jJja;vg]Gϡ̸2? 5xXxwsv)ǙJ o.}EI(ܴUq%OZEQ iCۧGݟо +m;dsp:VJǬ=>['N]>WE#SWs<-5V v c'5b*\ֶ^,) ^RVpH@ 4혆VX{uy' S;X:q>ăO;s "b*#*^׎L9&.f)':հu 81Hru=}12hE5$HV-[y>Y{S JtPbwfJHnu6 lWx]s:TG]Pq T$>sh>}CR> 1SЛvQFݼV:0)Q5(6vZqJ&60 HP`sqL>_Ң&Ԧ_kGV'g8r㙚=-5 ]*>Bd1xu EΉhF^jn&HijDPߊ1m]-ⅎj|;hFRظlbٿ)6 ćvXc&{ey \(,'vDoz8s4!.n`'^QU "~94D3;j“z| ~k`Q|Rf}`8 W4'm@D".?h2 Ǧퟅ) } GQ8;XA ^Zsp V94)LXHɴjv^N=^T]'_`^lvCܳYM *e F)FiO"5M4_ylAZV=< Y,k.>-Y^ .fZԸ %=jk+(!kyDP#I oyMct#ѭ~o;i4\Y$w.%Q92䱔:˘&f *=(SoN B;Awr|txZ#$Za)&V>l#b5/~,sKX̆Zq\刂}d܂S9$ʃwZU9%Q'%}U~pmЂ>s$Fk7YO鵈Z |}(L=G@gV[qfdMP?\vR4ѲCTTrqډJ!B"Cgyp`_5QUD#Q«o4<6B+AXy?9q>X2 ɀ63eH=$rO\ηX{XrQ2/'knP^G5簰W I9"wU )= 0R7b8pޚ 6VE\G^Ϲ,V#NTOwoџ̤?ѾAA*秲mTznoM?e1e N4r̼C\ L\;%&\FQ;¾BݜLNv?iu@+CB.oUzY=("fx0: "q=#u0?. ԫ\N 3ёp'j#{;Չ{tiBD ôd,L9O1;88ޏ z<<'2VJECԬN𭭻ulWZS70yC,/ W!1Tj UhYQGvD2/-X>˝,Zc 2 {Hx?Ic tpѨ" chbA𷲱iOhۑjP)+[AP "]S v ` s)wv~zsr#,H=|'`9#`,I۩StVWf|[=? 5m*ޖ.DYk]૩>nE1'= =%l @7Z4̛CghR RrWji{,w!4'ԛ;#Vˉ/Gz~Hu$t)ӂ.j*)c#_I<:&I'5}gObb*ϫdAڋm="Z?5co%/ʒ zd#j4)9!@_> =H-ޜi|gukw >4CYO7wbnat(SFur-c0 O:^E2nOk NE`]$,wKh_LJ%5Zu ϓC'S NU$KI԰: qw.}mH]Z]..)DUﯯ%X s)Jf:xjh69J˾7;9ؕP?Y;(*O`FժDX!%`冦[&|vs/<[`kQuF֑QILYG؊ | uG"hdS0'".UJҥumMώձȈ$_B/X ݾۗ?P 'Jl"d㢝啕a3WZ,5P"dkd`K,>0J>,~%=ڧ 4JU!‚"1-j{h uB40Uo<Τt"#rIW[x1\LG<2Qٸ_߳'Kz`%$LpE7Mà\O'3P/u4PަgjKl la1O coVYG &TsUCʖPVPM)HI"l GS=DMxk&.)kWY_d$EVZ r; @Lf$8Y6.6/7G#Yq":xz&`ƘgLC 7cb8a 0!R T*u?^{r?zWvX&Z6dOkE8o|/R;1C!$f _OeCEzz4Wj^%}6:  kJX|0#a\g@@PC |@("KQ _ i-Rp[I4*#&{a FJ! D\s홓SGKm ĶOޜx蝓%rJ 'T ~#,5` G$,DGVckœ1s(); \~( zN% >A\u}H#} <0CE)L;8u2%;>{O37(B (uoGVv} G'eo눦] !02BBq˛rD=:S[%`RR mnK=QݷWHAw2wվ7` B]IbN#rqp,1gh9?"ɛg75A&r"$%ua^ kJG`R'Aҙbf,2T[vuűOZMW {Ƹ,O# 6* W 'II9dt_A#Kr(ۥl ?[(m?Ky* NXGEfI=<Zב۳7ݵgyX1!]vUi'9&OMmJRR_%L̴)N=bg3M=1!3/ۓѕm Kjgmz*bbV%n5eH]J-8'Z5U+L÷BE EϺۑ5.8jgIyzW/nP?(ql$'Xu" ͼ996Az:"Ԉ\ߓ'OY8J}_ԍ&&X[d)UȞ'A##"*K'+!&RPVUoEIJР@sIO51|uoe~ H3fpy. @}q]{䭙'z|*LdlWbhpuW\{/[0zk$UmS"Si(WqەƊf%MnZf-Я `77e _G0p=%I3w4cJFkG8a+TΘw_XajVPhuۍBʸwm*7eDH[_)}ƙHH-)qT,so"ff'=1>ٸv"z!ɪz{_PtBiu)EE hp 7†n""Zf[Je%ymMjLn~lQ}-oƂoJ-Ů 8ޟ 75=쵡_/7dm`Fv4!n3|\w؞PT3g+ǡ . +AMШ4 cno WFŊۏVB7MsJۘT3= a!6S~v~YY:wi(#ɲ)~bM wql/rl Spj jsMG/ U%Ѻ!}:Q;7 bddzpVD*QNcZ a8E73hA#ˍ0yX9z{bnzY [_pnJ _zxJu"1 . l:7!|fׂ~Gr`:$;h,*0D*+5#l_6 .~I>Ǽ8v,Gy3<.Fd暈oڙ("ApqHzrküs7.׿~rK'mYq۠&ک',@{>K:(.pC:` ꯆ@=L7cځ$$cr#e_(3m#+Ry^1`|Iw4:㊃־pZq`m< h&i{w9n8@w q+X%#{F B$0ɹjluL=Re,F?Ԉ(W)!W学H)%2К;PSH\Wj'&m|)ʓ ̊_MyGo8tҡ>(Թam 8rJөh o"q EM$MF/Q~/[U, q578th |&_  [<oCZVڜRm;PGFUQn13K#c{qm:8ӺK#{ Ї6o80n%Ȁt4E&Y۪cczx;vHW>Mpv]ߖF+zpV2o&{XZ86D/hO' Cl+7C#Q$%nwi,_\ o+]ކ(*{6͞%&'q@8mZ*18LoGkD0A`䌥TpU1C(qKS?f٫w^Ffwt& A ۉ͑>*MFM(!)K﮺hn=%ĝ_[m\>4aizPƳsw/hެCYZH-ـN }"NW-uՌxxs@aSh),E*gȞߺo:L3Yނ3`[mAw ]_i_vZ- Ʋm0gM@LeB@F62Ė+$;1HqF4嚈)ˆC*!WCA ӲǷEZҩFKN"~PfN\C[Ei`PfQIy_<7?Xk;po\D?"Т16Gr< Eb\vF 6d(xԟWa~;͟}ѥ)-"7 ehA\.iNz@WRS}Tu.{-{9 QUr,yN]r q ti jDNtPt>;cIOSJ4BtQՃ,,݌5.|X'pIyTM3m[*R)${+ Ц4]I:yF Rg3{$rJ|2 @b2Y೽P/cDa"R=Mc^,*xKHG\Vw.٤^lG I@ŪXjB.'!3a= p*#JS8Y. H{ƁUlbKpeuxj%s;k HE'l>x ?( 9Gv̄zKvw8ZO"21l{p<9KR}?G^Y@""_1sΝc -_:xÖjjBx FBs+rV**r 3%k6Ƣ0^kxVF 0z)k6LPUP_ZC3oae&׳+0?F0I2T]4&jAJ{EAl󊤉,P& Dҷi'|A=woaZN˘I.x<ȥ|ry2xY}w=`9,>HJ8Bɇe4jbUwe0 ?X PD#uQ#=/g? O_@xL=!f Fiex h:!Y6К\Ȕӗ!R/GbHenN$^I16\3xOMN_jFX`=!˱ jva4*ƧBC_2IJnG(-ߡ&ޮ VDhOm'zO^awk&4љuRSӅ$[?2%nmv[X >h.b#'sOOg dVC bYp[ix$iHfX{)ri&tYIY̝GݑbleIeX[!4hA˜8UI^hYaXY gW'i l9lb̘ɭ͐}um,1.?(xoPk (F~& =^ЏRZu 1r,U(n2Jn!Z3l ޫ豑%*CrjGp~zh0B׽:Yٷ^Hs_@cpKD"BKhٓRZk{\=X ` +^%K?Ӑ-TVCſriaaZuKen@PxCҙ~y8٩*$=!o5 ;v$ɐ2L 5_wR;c@\Z""e}?n- ]^=3&(;yŦm>`<^Due -A/dR \OL M2)t=s")?V6| D,{fPcVFKm2#}!">7@ \po}#Gw#AB=KkenJ FkhEgXmMBIV|4|s%Zj Vsl  S%ȑ9O^ʾ S ϡ+9/ֵe9P]v#T3lIHVV tw7q%Uh3yծfdߝIAC٬btР<D}vk`XKG-X3:]VZּBWf4.#7XjϘ-)9iόd 6In1BKPj˜#'EƦ0 V }KT?ȼOff%c\*1B^j ٰgpe]ѦYOjbhS  h-&bԔot"c9~D?ux#w$]OuߧD|j_^՟4HPr*r( tgk>Y#fHxruo ºxt\e;$YE{8u`pcjߖ^n-g\jJp0ߘ%kn;lm+qQ%̫RG~4[NLnt%Sxi79LpJx!ĩ!mɑhQZ|"ⵑL[5'o\ƶ)EK \[ VK/5[ =?/f@g [yU)÷3_i:3Rzf*'ُ(sk7jQ@oa &_W~h;/\)NER}4Y;ogג=[aaM2-E;r^1wXZ)Ȑͻr- oZ695i?@9UsNye+Z^D^5i~rNs.{rN߇8*|hU~* xx2HBs"E4<7  = n`C)&|ۅoI f(PnE-LTGE˝pR<2mFGti퇦&W~s6-WUD$T=aWoNzL&x`J-k߰3i [y󕁢6Cci@mޤ Any(99j]\' p{TC+.yI+OEpgJ.'%W^WWI=RNB&3Ɔp5f a`.=U:7gĩ>\~$a]geZn}ԟTejS1S b>G$e1n2/'ƥr.Wf58G)VҎGGJP\`$:SD`3i)$LTB2BM,m :SȢv=ctaXX~HH*\H"s1g^4[~EHQ4/ }]wX y8 ŀ*V\r{mmu؞uv[`_E4aWx#+TÔʀ~LiF*I|{t* MuDAA1ϋď6S8>GhpW:Pp(u n+LFg .~ʘc-"${J]dxqxw\d]85~ V2 , 3UKkP:3˂ť*6b[^XK"$E7:ͺɎ2M5X-^ 0d(=UiC'{ " JO EN}˜a/w:x6} Oes]_FE/b>plIkil[hk[]]l^ta4 _tSbJA(XԱumYBq';^HMY7x?MDzI8{i^0s;8&3y"z#PSo0TYh;Ͻ~*lāz; ?\MUz[RˣgҼgLjU8&Y Zs.xҐd؛(W==GsSs"&1nC 7̾yZڲ텍%mE:j^˰)eyx^5 A"inrO. gI*T虴@ٳA 4UzeOzLȩNx城6G jG:@^"uם*J;ը4_mD\6*|!,&灸݅\V4c9用 H;3| QR}j=Zc;sC ߹l5Z*#`yqZ6zh3ImIpAQ!<Ua?ҷY!+D|,SGߢc Ҧm !Ex/J')0^O~'mX;;`U$wrZjN'"ljj ҍ vV7L `!a$8;fX0S-5-8<^)\>խ.(tJ`0:ءD  wx4ea&_Q^Ohchhmh&ز .U2=ŌknJ,'(;t{,>Й5S/| sگGrzakVȔdJ9DDڝFUa;~d*Z06oOy0t Dt %FOΥy>3yB /0vAP/% yb)C7B\0bb _e_lˇ]gce>Xu,Vk"mxyRQ_,Lrd{|dh$ywt40^̣Fyw )z#x٘4z ՘O򰌴M;eojˆ9a%@Pi5n&-<5pu KBZjlt`]q#PPmJa0-R\3`b1`˪t|#ThMcl_*~|>mC1 h{xOo8Ieu:xB&+Ȣ֦Sӱru=}z;ԒOt @jq\Z)MD([8 gAu*LjK}J.UerRys)5(ò>^s0aAZV "e LȆ*dO,^I,rbUn{(d z qS+o+fE Ħ濿sS57l0JHRJD+\绒֕x^suslRC /)1Ԁ>MSE9GmkB A+F|^윳=Y}N*:|Dq}YsVh΢2f'`LzúF;1K}It/?l >!"ńlȟK1W˥[N9BюGqt&J1a 9To&91N>D/=\OW8v.i8;3E^L;iGc:hi kƩlͧHxܳN '7wa%W_(Z'(QNcbMjIg-,wʩ*M37e~Nlra@:M0'M\֘wOU_$M˜:F`ſ00鼨us6 xrəGg*)#[Q(i5Pz8[@5qI+DF+Co<eGmdвd 6"v,ԐiK1Z_btF&Sp`yqʬixGۦ$a*-M$be ~= u?*S#7g 6l}ADTEʉIi ,%DfNDqkC[kJO:% 3 g&,cC|ces'Qh ޔV˃ Ey&5mԮkb$$FTܣBDK8"enGDҪCy9~gn?_#Mn [~~[Q BnqA(GU nr4Pj9P?]Uik=_ʪYv(80XSsq1ΒBxG*w\S}ͧ}ҏ7CT @xE?3jZz:qk.1oƚg垣Ti'|<^H2ڛy)0a̵d5펟ߏ…I]_&,4j@Ҏ\NV]/s6|BSeɞR^m%f`痽.߸U3~R]aF4PkXXf&gΫP;p +kЙBgQi_|,^?s rJ3ewQG<7̸Xxh6%سL?oauk`wPq<ɭM'tZOUtO0ަlA^Q-FeBey|\s)yDd4F HфV`iڱhsIBʛ4JsFJe޽]"eE.كXv("gD)?U p]ӏ|6.v4ӪEW`+ދ朒@ ݴ9=v4hM=l fAw/P-gl}װyTDU5Pȕ13F1a w79E=^Q7-6 X"hGrmM!pe&YZ,ڬ;Ęf& .@?us%,{ΕY/bAMt bTȀ-u,fGr<'Ko\9f8@vFo 6d.'xXqAK=FઁONrf^wՊMaӡ>Tw=!j[O:F(ilTkMfKpM$-h9 h/w۹ynj{ôE"!cqC|Ѕ$j*q+0aO3ho fnEE"281A|ie3?՞ K:աs~ZBc[6K rm)Ue[iv,7x2A8+9r9 Cup'\;$YL0_a* ʒ[4y˙@2)M9tJ,?5_\t0LP I5,Ҁմ:ѩMA8}QXzμKW*9Ns;=$ Ro҆tjh7^O=kW/L{a,QyJ-o .qDW:,ye5Vr@~~k5lҥEc|Mx ZY!ATJ1J ;c-ғ"&p2.3]Loj~36j6PE_pHpTLGz&?Dذv?G-(E|B?Djb%?H5~1>ZHψsfcw@¼JG ŀ֡X0F|;vU>J^!.|v9ICzlHc2-V>J]r|T=Hwz奣\/149'frH=} WuEr98E?~l aZpIn 1wٖp`FS*o-\5,@U6A Xwfx_2Шq]" u <[oN0~qF\벂dR_gƿ*ISHoA6*E.) n~;iu y7IJ0bLVLaALǝóXSn< ˜E~GJ᳷ѿFG΃FMq+\iY'.mM1fh ft]fm/jNkؠQYݝ fƁf8*Aw= B En\>6 猪tD&n!D)s ^n#bǴ2@k+s®zZq^(y_aY fS%Lt1]= ^mM˴|9Ħ.9`h[e*7W p6J%DhfXC}^J 㞺Kf\CnbRPʟy:F&Ӳ{4 S[pS*i!T2~my%!pFz! N9eSRθjҖ.P0Lā#2ԇuPB㟤iE Xf,ilmܓg7FcY)gQjZ|P,̴ H9#鹀Po_Α]!h~9kz\=t\/:ikm #@R\yPhTsBc_CԆY:QXhW^: 9e *s%l\ k+ h)MBnC[5YFRm3!0F3F)Z4xcBw&AFGtcXE>orC/z®[w#dNX*g 1YKJ*$W X҃FsQ¿*%uL^B/M<2n#@6dc4E0;+5"a}0 hۥgMefi u_hHcFq&5!!T튒OusV{hFub$507B..R!+B!TZz7^?JX.G;;EInj'~V=rAȲFSW2J\LT"ZB _=uCatUhf嬰}[gP6IfMJ8fTJϐ70.QZ1:77l7d/eZ}ȢELxjB b%-K_MH ZpH3F k~/{Ic}E2xs )@l W⹢/H)g s}md\I] ,́Ə+O[(3 r&O,u]h.Tz@4F"[ȲV,!>U۴!Mm`XYA$E::A'.*lr>90f&M`dq(̘l>5`Qekc8X{~2QAGe$V~KcO 1#QHr) $bd?'0٠-̜Ϧ:DF|+)'TnRd?Ĺ!׭Hdq{_}=mubݬ0?'f;j_nbʑٿ_q[-/ʎeaPu%XoYBlqx7(\Ή>xzJ Gl%/K? &`W C`T?#?}xyh}af%$.9mE`m1I=:wj/J :!J}F zS|co/ߝ*ƪ9)XAx,> O }a9B'π(3"2 RGr!yɲ3W?by_ƂFy`*~x0;akxEZO,=`#1#J0. mgwRl~2MD{\M ȸKd jHogPJ@vdm) _p#η7WP;c7h5Lӓ\V\cOZP|&tA,6pʥ9 O!g(;T pD$8E1S5;Gz DMcI~Ve9[QaIx'Tro˜Rad_k_)'1+i'j.?I3\ F3 o]pq'.win)LZ\0/vB}@(¼An<%dFŎ=Vm,M}JZӁU1#UgbjWF^Kk;>qmUg\2 ~Q@2KӻH NLZjќa&@Ѡ̑q5d">}RʄmQE_3-hʂ3es]d7ۈC cl-FKzcr?59*5!hfHVGq SJ| J}6QPRlgWO~#%30EiRLτ@Tf*U39uw̓0&s$s̖ӻara7HOVWQMi8UɷPc΍o+&SOVwa* f75--:ik;Kz5-؝>L:!7}&aɻL!I@GIW/Pi1OsaK38gȨ>ka̎؀t&Q;scU <71L`r".\ sE dO!m5P'L"o#4B/uCE#Y )i֜zI1N7ھң"8##zNjjTS|(˾ic=McC >}]tOH 5@q1.0WA zbJF~D !;㈿f1?`9OVKNcXQfL8 ]~4;ʿRW 2՝ǖF{Ͼ`=2'0[YpRh:;H2|!ަ`:.ˊ+m K^K^^ ZWW(8 ;cB޷ơ:p"ʹgR{@ d鴪MQs` z婺w`/%Ҕz^:c&r6J^i:3 54|o^?_)oC{x:P)? !ut`E+ҿPhK^REf9xש.V[Tkpliv<)* ޵\h e7t^m Ρgu0K|@øak$ m26[lmLj{ⲸѰ_\ߓ?eFƆrdA1fZGx|war8-5T8gmυGXY6A.nܖԫ3:(Dȍ y!A}~ZY[Pz]MAyizh8'HXaæ}m,zZ5xSFM)]0ܜǽG su ̍%yԧ-jϽmݿUvCw:.C}t''XJnR~*06IQI)ݠ!Q}݊룢8g5\Z`>㵅;ڛH|Tk$+ c@7(@&@վ%tEr jcN6:r`Xy -0g[0V֤f2H#ԐMa* f,R2^bk39CׅNkv TY?6_|+TdlZRƅq]|gXl酪{w!ͱ^'jxOH`$8ڲwb/ Z4 ' MϚbo!=4\ylٮ0 _dMHLa  N5>a\l>XQe\qN4BjÝGk^`;fUMdwt-\T$ܴTp89*M S{h@E xa+DsԌs7NMhzi߸d//l>US_.EVd&DW!f!k*¥sG1k$αlJ̡ ыvba3ҡKXT q: TM1ۙ5J>I'z!ȕo k]k-x24=|)x8K:&RtȎ]eLXd|1XXJCn<TfB=Wiu3 K:,d"MUo8>]PMVm☦ ΐ1 5ŔJJ^dnɓUr1}eo6n5Q Нs)g@aK-hAZca+Ny%~Eos?W'e2\v;B.b\˗I ɲCV1r,w.C_czCDu~"v^ &%Q:$5jad\fB$Q|514mBEAU|Z$ToT!`8uKSz(7WF#`DۼrA^R[F\`nFuY!՗2Ofo~PҜ@Kr[BUyCi*5]J]3 Ln뚷DZBsxsT1 ; v_1qq?dqoⱦ&% v. XL`؝2)<4ӷqy fr\$44/_yF#,ƞP;wuMk5I0,C p &VrB?$,m¿5GrYmAb~"ק34A!ϳ! juHSiΛ>. &B<XnF$k$S[V/J9ءhv:Z+'Dpe+NWsR⣨i/D`MV!֟NW:gw~4%BWBR8өy=#}=;Md,*wuH#N1A"PS@]Xc5ċp=Pm=l;π4e6T%䘄&1d:Gkľ]Կ(C7$ik]N,2 < >/tW*qynB8J;"~I经B W$|h I*~ :s_M~$.yܷrxN oXpne;enܴ݈Q5ҷg,Y,m!wuwiNdLPJ:B*xvYzF$ )"N."1)qp>\tPVnS?~@,424H^o w;Mc`Fc:`XAM}u.|#6>ifA 8MCM Nm2$LLPӭ u 9$>9.҃lN G%~bbL2組'q.3O'qS|"\vfCVɫ| ][ Yf\pe8v}MMp.Dd*5걎v(ᬹ&/Ks1x&()'K7ݰA_%q oJta#SLс)Ry]:jX89,G-R7Qʨ?@| R6: 4z?n~]u,uмЭva>uXG#|Kpsn,4U*Ԓlqe.jB%U:E} [ f7\#FyN)Dn!j^5VD/]϶u6s'Ny@:ob>iCh23"ke]%Q^ϯԞbq[#HUn5/[nW ͪT? 5 N-7-Ʋ:9~S萎fsO7)(9'@h(4Lv,.Vz@ QR/m~040Aʠw¬螷jX ={8if+'-ϙ# NsĨF(N&U+Jl(֭}X'/})wt]$Nkj(SANdԃVqKB XD62#*nrm:on!E@UXzhM:r=/ZsfZ>dlGwC9_4퓫9@8 :FT=te;,$ W&N„Rc4YR,܅B Oc8bK=\ ] Kw-+10Zi&-D)r&{Ѝj >Ę~FR0o #?lD]2F+OfyfRDqe`." XBwoϮlvD4F9OW 1 h6= 34sCU94!>*ap=Xl'嚤, J±Ns~#`hT8~RKh~QI2ZĆ!ةl~D퀇2bx_h֦+" ҝRD , "i@ ".Pk|UQ&#^p]pR~}\jY-Za ;H짨 |7'D1~ΪZ|%Kl \|qfc A觑~H95͏: w^]zsto !3 '6"[.tpq&dASsbkKf6_rfCj[1N #5Or5ϦuNekH?tUY۸]yLG)` B0^;&m>, -hަGӸ Yrh5#K cyq_N봺_Z>"fVp^~!|}+/gSͼ4W|#a#*e"Kki RǞ_4 ΞXDK*@9ps6yE~w]P8." iPD6 ]/%6Js^TYJ+ [֞z,9x p\ rmÿV"k09aq}̇h=X|W_sZ&M35xt)Ȱ`=E3Ďۍ?O- ʧpط냟wf+kV )CT V=r&APknsefpϙb6w8`ߠ&sNTY; i~x2L)g6z0]ƘJX=m@>OVDm~Sύ[x^XpВ\~|;;06G|dO:OFWdzjҵ\B̅eRƪ)= hǔ)؅^x<"34̍8sfPѧ\e^Ď׋}Vuh"!TMCkK0x1^}a۫۝ KLqQUDg[gLu׌Gڣ65%rgEOnoL{)A  ut0Hp:{;^fXǥCоCB]9^68 z^`4+{aUfh?w#>*Lؘ[c١;E4A^98~Q0'a%MCakoe=L+Wy`u*2U> 'J5d۾LduJXx8tA5zK_b}$4|W;qJ,RBn1,!VcGS0J 1x`ghw=T{y, 3j[cζOLXT0ˀ*D3R ()j&=i~gk#%{@ח٣"w?"7Ԭko*ƐRj4os.'=POJu#q.Ņ^eYoyU.zr$ּE8aOh2&LHx:{)7A{Jja(詺ZۄVG)NPrUVX>If /Y#x bW$Y+{FXps7TbCj'Σ ٕcoloY~fy55bsv+ѳޅ *r|N KHEƌ&}02q CT"`pdʽ4՘6A脥pؾIH,d3'!fߕ8<5IdAM#-*%o~kAsUɕeG;M qMT(PT8׺gBm7M@i?;BEath! L+w693xxP'c yӕu9fPPq![D@dKqƏȳ5l}Ԛn$ǮuZj(0'Fk7bko 6 ?OX[2aͽWk1 lUNm}Ny-ס&0 =sotBz HLd0IըBt͔Be O駡STCMrڂ$Q܉ _"NS {2?jO8:QJZñ5!&PSY57Kb&{W- ,2œd6p XEܝƴvpKDrq qޭ u8hA߸( S1xԹo*>-jbItB w6(;BgEDZ{C" v>pN,:_T >"=zAqv`,Qqg>}ʔ4ʋhꅵ3z#YLܾh* .k8?M)5k?U _Z ϚқEE7qElr5kxw~*n (ER Gڐw,ϩ̩Ct;"KrȤ{kY4d̉$2M1 c:,*U@tr'ƊB_.^t i-lcEcq);#LzD-joJ[0H\IxYw$,R^YRUS^jX"Sz5»幉U{2$\`Fȋ7M^jAoXLck!uDc-ZC#bdj׆ʋ[YL"0HA*_腰K2Dk`J #i msu{kx3*W"gFo#:-H*UfrdsGakK mPկ5SMSC4sC@Lzr|u'U(c#K0yWPn[s}!Æ?8N/tkzYd:Si\~܉a䯾P%煣J> r# +j\ Ӝga_]8^E TX'+RY\JMvʆi~rxm-07ӎ3W8!MU0[S &cc^1}0qq3ho>T mK7X1}+qܣ2nS{ a$zH,yN` !/ѥ\-1$55DF  ?GcaxN2ة-ƌ^kJȂ%S1kIgq g8Liz4?QAKAqnq#fd62Jy #sYoxiAT͉gc%=eoYŽˁ9e5tݨ&Ɇxt#=y/6H+-U0daWv妨ƈI[T'T0ID{g6סb, DzQl++ )4A5 тkGn?邟|f,Nq1kd`Oz w_-L\Q-D0fxJ~'tuxƕ{}%ccџ2 kL=\^k5og'zgVoe,3H-TEJ:su1`~~?`" PHjIhqͨ0Mtc\+lpXrжw$6̸Q{Gi!?Ōyŧb[&9N_ʋ6(0da. SzR\Nw7B͹2#LQSǠ~AuȚZVA$VG"rn]rF+Ox >N^ݫ6vfCSY: H$8: {Awv.IF V6,T!iV#xLrkMhv;+~ B;=ڪt;ӚwcMY ͛M$Nv#Iory=AMC 2Ո:D5 V !X h,Mm(_}|yD"hVn!7ᐋwZTϖXRg^]2 1&{e]ZǻU>##CQϡa{lv:41\ fKz|$nɷm0>ׂX'*w k5 2y $+11x,ݱ>s:,ScyHH}KV:nNwpҌ58ueN/TK'$kc2:TWrPeuk)8hoiM+ʏU32@(~d)@FMOS<RklI=>ƥ?M@TZR\(V-" [Yk9'&38?c' hm&;4պ XAY4 $:PHl6P+%Pl2V?/sq!95S.Ub[^EbKK߸1Y+ſ0lhacuHnrhMoi3Ö~A+a/)n _|s)'*lJ-/t)9]<㪁]@cD 0-R=f"%.V#=ЀL䟟+CRnwQ˙ Kͩ~*OüI"gc S߀^+w$ʨkqD􍚟6]lIiec 5M!P{<#$T(15â02(e(֋r_Ќ>Gkb(){ 6U/Q[yH&ɵ.;b Ag;qiSYǵ"†}ASlNzPo# Kq "t %OR7 cY[ 1<@Ewp;⭙Pejk~8UZ#dךwfK0]`0{x!_o4eOXk@<[>4YOH9%jDz/ϣ6p\]}rbUD=U]yBe7r[aݥ ى>2rִ[<=p}$DsQʚSii ԦCE\{P }xV.$Xq,[r) ~nzͪF _T*>%+/$v4R/[DjSrm>A\~4"e,yt#qu^_O{~^8bT+|]hNHKd4$ǒ"uٛU;܋,98oфYEїǾ4;8/؍@Y&U!m^'#>%D"^?Q ZgdP T>tfS{̬mxX%i0~@z B/"{NWLF覠xx{O)R ؊ֶ#;uL~IN]AQW6Xh@#IXsWׂU0n@p)L&T`,ߘX}9R%VU\b:z*6$d/6ADRHlaf}[4>o- 3\C4#QqU4fNH31Ht '֮=d,?VYM ͤ`b`#g-mWDhH] v6Qx'i:-ueX2kf1fMXH$#JߜO(zs@QFh+b./#/ aXP@7F: sa%R\;8 si Gت|3> tWׄ8P!'v&>%a%S AtYED&F6!%k@~#owlo 4M!+^}qKN<8bOR}HPH*bQ *Ӯ@`$bBa:Z{ېd`}}1͖VIbAʗVPw`` }X&H%TDE`Yh͸b/+w.7Rq TxDǫjuyW%fg1J%$rcYHgLO ;0Mtc{b_`H:܉cv0W^WXWq[$ [a%8X2OXWb*v ڀO2Pn;NzƼ10Q.RQ'g[]4fwZJBoéJ=ahV+W[ o#y$HAz{Vqx@ m ܒPX^OGFt(lTǀPYGFfj& ZCWo<1L@%cZ]8HHtǟ2X5zbM7d rN_k0Y j3^.~3c,Zp=E$'b#PLO^TIMSO;. ԂyZY#XS״.zR\|,&*mЈg=TfW{s]fge_-f'=`Sy!9^ 1s,g^~@YdSK"ɮ#?~8%.2Ь !\Kn VMcv) Y]'n&Bdeuэu>GIޭT8ZP]+F g.~Ԯc^b%=RD#c@`YOdG1+ϗ!-93hi@ c CE?7>O &۹6<ۡcn$eFS`j`nRM̖KrH]/ $m_#?yث2gra-FZ56c6 RX4x0*.w &󤷆cK?r@IzlϡH/JL\PB Pci$!  Uf.'|x#_=hMLR!n\r8S cvn{4rz-НZ{JKPJ3'?/E6|=S)N_iƛĸA`0.첮^O$P+!tSń\G!.G ?u{ư k;7&|o\|%2Xȿ,oz4N`^9_4FC tJC-dӯԀPyY*5X9J3*_φfEdV(NmFmۙòԈE"-k]XĘOF 6"6)Nf$fi٫aoe=w/*T287N4 ߬{ UTṾ6ߌľ}$5ИԈm$?~n-F2T2Gv 8*ql_ /$c"BAJدvNxT26 nW[CKs吮D߹Xm_17HJupTwRXEu0&#,W{wЛ`sIZJ&by& 2Ücu{y3}y,;'< ڿ`ꗗ>7sCZ" +eS{QI!Gˤp0?*:zh#1m@ yaʺNyqe7*f#SJXn짝Ośnm7rRo`l#E` T=nSVq)H\gh|*5S#]GU}1FgiGϜ#U ?xn w2_L~s"#(c`,&}Y/ 52̵D|a!"Ήu 3}w[EQ`z6fXbdM} C4KP Ѿ/K<>A%YM<ʲcGi~ẞ0Da{89וYtm%φ| mic˾"p暝/gAW7:_SJ^uƐdw4Tۍq)Z@w]NvX25snόbŴH8ź@Jz٠Bta\W˗p+LAMIёĬj.ؕF9nM0HW"&3º-+o1vu 2V(1IB#!zjwS諟58EK j(-*ETS t NRFjxDaw?'7偓RmqR<~nBy(q/Ԫ#q[>JS9Ө4VJeЌݚv9.1bԚs.ozWpsW% y1DD"Eh(b}ΪV*]`._$˕vw#YNUʹp.ۑ|4Y_ߔpRZ5r) Or~C$su6k<\!p c}Q F2X n8Ļvz,xFA]ɯV-|~UY*H1j(DqEw S63&Kvy]+mPH,g6PM,訞Ϭjq&i5 ʹrA1d.I::1KpGSċ v'܍ӵ靷v ReV|RYR+1$ #i؛gQU ĻsR?pD2:S%2$(3t%O.0QE1!='ʳWLjl V1Tz[[ ہ/"LcmNO7ᷴlRJ44:=`2g,sϾ.a 4bDmk۩P=x)eN"O*@N3q) yʐn6Q>_5z\luj;K B_NSPD.9cpպ*@Y!WO߰0#A!7M֫U2j.r,zpOqݺzKF1ŵ >S^KȐ V}}1@ ikhNrPOl>ۥ;\0Ӱ8TnJUwcp]ibVysX`;b8J/Ns^ J\V*n=dqqh'/#=5)S@m!N'FփuFz`E)BE5 jGHigRSseSn1ΰU)Db`BeAzA{hk!Z$#pюÚXM]EĤ|. eҮ2)LA N #;/ ŝrgL"Zyֳ7g%0ɨg9ꏂ/:+2hނi$7N b!K`Vy@X IC~gҷ"fP tSSZʧ$ 9/ ex\U,gtueSGT%s@\d-H3\؛c/&`ee4`OZOTAY5**0ARdҝ'¢*\ ꒈ1B^Αxf'N=~ڎʒ_q6غSx&Vsח'qQתC4CɓyE& )]9׌~-iiYY`hz:k2306@B{2>ԇQgE (p͛%4 u+smV/nOl1DnʨUh !H9+E| R:D\A=*f MU7AkX3((w-+Q6 0=83`ƾ9$`"#ғJ;8Ԋ́n`'*XZfKB`sDCb`{"lcş>< :Y +4f8̑x6Kv5]h>+cC"[0 EaԺ[p {&\;5 Y8R>YWNoWdlRhF0'"g n nog+@~==,ԭEnjЌntt(;&y657; ^@ %!B~wP8ojU侔s}##mц2zw5r3qЩev%S&=o:áTw0%KJ [ZnX(PrXb7s@zϰ436 i\  aL}e䪀xva%^ZS f:Rۭ SORÞgOh=|ѡMUkG߬{x ١7B d uxT:߈+س09RP&n;]SN1|xwWb$J~bɺ4khq1ۈmC|ދhP󥷐H3#sl')ݚW `䪧=~7 ` /RJ.{3͗ȅ8]yric9akr28{4fh̤6Z Vtテ/˙jr~s'jun,i o9RRLL|B0q|IWib2 ܤiU%(3_Eds)w[t0UXUR_Z9 TXɞR=C"xOCiGwې1::3kL|ot/:LK4Utt Rd 9XaߪۍDTJRʄ_Oͬi7F Z!ecl*!,+PfJp|a4G@X? MEQ >Y ',Qy#׸/ebBLw"ظtBI` X x>-q=RxIj\Z\ӟeқ6=}zW6o5NGhMV̡y9>ͻԴ\yzYiZt>(/_zg qm]$qvr˨3,.hXQ-(@0ŷ  @[ -_Cdjg#@+J -}]DooF2PKX X d{ꉌpҁٺ!Y{dl.V$doʇoUN@$ЅGht D &waʟjgcyG.免lFu|o^GÊ %5}xWsh͉`shE %wH QN?Gz) tt枋XY)¸tAm4KF?Ŷf,O}7WkZ~E+cgh׍K$:LdeVɻ8# 5m1n އk–YVOu"{?)+{;,˷8+OKAx@x`BpgJQߺ֍͎)4`prljrF?MP7%/۞!tz'7rd<9I'"_8U PW痻=8If<+By]ILFXnǰ]';EFOI2of5-vdC.e8a Ub|p&fa{%Ö$ħ tJaN *I$u %ݻgo(5{'fZ_2i)lht5IWnDP0(uy\ϺF2~A^k&qG8әr0 L53&h\۠^+[8NnaP.-Sg#faO!ixƅ _P^]6nkw&S83a*^JH!GƉ6t'/IPAm10=Q@ޮv53XZ-It֦Es`aeıUͥOZZUMĉ8^"^u1k4R/e=UJ!Ƭ[1Ŀǫ9N<0Z~5%zM8Yjuc TiƵL&xgq YGR*97P 8n^LJ59ӆwnvRKJY ֏n-#mհBhͪ¶˓oQsFuN[i J]̀+gP笕^rzآ]@ݿּOZu8Ex /5qY|$ŧwTGǻ@&L !v?muJGG11Eaڷ/ۍXn&s$S+ x?4*6e!94ra@3}L*Y~(<+na?܂;nO3O4( Ş% \3OqY]EhSb;p.P7REp XHj>e;s=LGmVN{ O)"4"4γ.1E~VjWnCƍ]#|C9-w!qn3מZN_{IY?Cv#{{96e{q5"38b|ݙ8M&G `w{M[T\I7&Z`_G\t865t0y;%^ErZ+O/"(ˑ6B/)Q6y7&s;E5KmVyfu~NRuKreXXR _=E'bap=}ypG|Q8&J2P4j[!`B.Һc Ys=2P6آ͠n ;DxNIˁeٍsl":h,xFրDzT}gqe~э>aFgZfIϡNPK;ub$ȿ7jލܖ2by.L _:<,\?)F-j*nLlwEQH0+aSoe ֦ndϔSUU&u3rrLgTw)9o$R>yWC̉MݔR:Y]WҲS+_bӫykqV;,}c ?b)\' n:u\2j`RC:Oc u:7{< kBy7 }p ?y.MuWU,,UJ,Э}Avc-7 hAH <`yߌ0ܽs- &^4l!r)#'1_B)IAÅK υkMxU|i-:,|H9/#%zR E*yeFƦ]耪k VZ{ϣΙ.L:O/gr lhNEGr4k2HgDW; /e'8i *Od}*b( h6zDל^a#;^Z桒wj3104ͭt6v}ȘEY א}gJg<E G=檲 PYn$6%QO3Z]6C== mTq#i`J"ݦ&d5@YGμ$4|v~=WL}үD^UMtsv5+GT=qI]k*h3k܉z! <]zj<^v=w3fz$SL=Bm_mMQ3 :@&7gRԅqUGVKm2˽Bp59!`zOF*bf~C/ ;`n? G\=9^8hhcc9{,&(y{@ Ms[.I)8'2v]dwy)Pv(t%Eܻe8=`pe'.7n+,;HʂX|aĮTe&2ه7FɮHH023JLKߊs_.?mkǵQ;*,A Vd \0BKc-mC:>:#>aMEb_˔("'t'x+g,miITc6.?FV~=Z7!?ofXYT7TqB> J=4 ^#e(}k gѿ8p %XX >rT4lkH&m=0޿.yGAyu/wΤXMGㆬV f\Y0)Buʜ%;h@F$!W aO$;&Us(t<U |F4 ]#JIFaJjR^H3~G0_x;Pjѹ5P#LW߮f{zPutHr,`P8GnBMT@g9G p/ J+ m|JI WjO5z# /pJ[o\B6[Vf}v~spLΘV7|E,d/ (dg4jnڝ˓ZxWZ9J4%-tֲdPzaxr@ܾ퀱c(4(GxHLMA'GG Uۿ׏nV [\ߗ82Eڲ/vO'HSjED `_JC1& -˵df 1O `oá) `s}NUںӎ~ /.ɳX2#>禒ˏap6ܠZ1}Y Bc|85ؔ񴧤Sc8gWvpP^ ہl+s8^6^3UP(,Di@8Luo;4Ĉ2i٢. 7SF+h*sGӥ6饌*;~YdGp]vo&نksMx0pow#}$N IwO eb01Q8: ls.֜20֓E\t2:c<-Ph+vIJ ovYo&[nRD>pI]0m ٳ/*`X@n7"&tT 8Hʶi" 4wOF7,ï&/]o nX\ETarQYk TX'xkvO7~ݰ͆Q88u%NU)~s/t (}p 5bawZk?~oKcolZQ|<@ tü|^CPB^D_9&TeQ\x_&Jt"h3z[V"%qhU- )@-~O;"A n5< <-k/$M0ӿ%`_YK#T%|zĢ.1jYj'ZzA\KhpRz,ObVTQVE%y+4Inz„| mQ5f?/=l!`)5PTB`*^ hk! FfBtoZJGCBREzy~RHtǁN7I}x\t`jKݨnW)l<+G(|$#d-2(;¿d 0ؐ@jtc3C~@@AJHV='jKzGDJ``-J<=ܞZaO+]X(I5ɑݒ&9:jv% .?ra,C5rIjn "5\BlekVE7nV:N䢇ĺ>KA+㞽s k\$Pq AKmj@tm;&i8Cǎ.WPqJ瓆%BV LagD~ v.ڗm@3葧|Hb]Ԑ!:L$8RgDOU5}XW~V˂?'?W£\.ӝp y: #^ńY'!2hCl!qQ?;ђPW䙔1N>X֐ F-@˶ Socy, 6j:Ҵ WCbtq_!i VLgmoуY78 j6}lkp+1*ohYZYL/)&|AHNbH(=I3(o.>52gTGX eG_oYd*7қL=R9+we.H\W9< ǫ88 9MX;0$a"A;VXEKa ,G]+ : ?/0G*#Mp_P?KVl;HĩW_qNB02?ansC`R@Έ͟dd:D2eOtC^C*FN\λq7gx@S'ī.nӦIs%7O)>Qiya9BY'n]'$lQ (( c&YȡݑFlV8;7rTt[XG0 jN* nh1CmI3N>,#q%g<`Iv/ 6Cm9^Ƒ^2u+/ G;߅ }hЈO0 j^ջvMX(A,6M vQ? @\/sR^2Mմy uUTlZS KYLkI&O'`G⌶sVl[Y P|֑1f /\_dl5 Z(2ޏݜՠL=qݥȓw v|/'<L.;d!ԓ 1kV!4.С_PA66Hj OΪq hصLQ3l9en1g(-˶Kcj&6Kb}zldL&@pb]<~ongs:;)kr!u.zm:=[joH0L># &qJSN1؜^8"Awp_lRӆ*̧xlq q14cWcҞQ0cL /g2 i'e0< 18Fo%Ax8_9]Ҹf{@2/Da)G"FU( j`hg\CvS]zBm*p>ɥw9;@u;Ex]7B7H9eLZ4蚼V1,P\/Hưs C&XK9ۼ`@gX~Hq QLV_vuwkȒ%/$VUJGbb9f}DLnCr4yQjBT20 Qb)" z9=R \ޘ=~7ej=m͞ O%ii^wmD)3]13M`]_.m;T @%,(*0 ѹ᪪{^;|Hiɷ _X3 DNRHM؆м V^6^ǂW?*+\1=B Aݻ˂By47ZĪݗ$U1hA|'AjuZu' -&iu$Cq|W]bΓ 7H6kA2si2II}ZZFZo^,F9ɇʃ((7d; ๟ @IcKiBO.[y٭vkFq!WK=~>)xo-ޣʁ@fe.8L'&UKwݽʮm4GF,|ŧ<ud.֎^8]EȜ_k[ݾso *Xޭ'=zͪg#q i#[Jө=UN S4WǛ8go^#ʫ' 1sv·b(CsBjr%.+3`F;#{ I:Xyuf9vEB[[)Qh8ؘ,I?g<0`@~ĥ'mW T u(qeD -_¡ 狩m%a{_y9K햩8b>X! I6bpJ %”oCB΍o L E ۗcTB g$jL;:R t-^-!f|oP^+1V!uJP73VS$Rء:9LWZ>Q::}w-Q/&Xܵp\'^xKV7}k#Q/o*/G4z 9JDE "PGle me 4Z`x"W"Y!gr6f*9Y(:74]A/96b_ݔsSSVv0E ?rj*ZIq~|(Ծ6棱Ѝ/rv)6<`5gJ&\8R{G&c8l7[v i"D]F淏`).6ʨ@5W)^m5Pe3G 7h~Y,V:o6 !dE܏*bZ`o4Kq0'=~&n$4*IWOGdj`j >^5~.y,g8(/~3Mr} .C?覿j,5@[ %y'ƣLz^հ6N(ό56JL(>AMU7YSibS#+rY{=iI \3a(-Sk@4[~gU+ᵌ @'86G.*`YvLU^!Cr?0,Fh_eli6)j%Enϖ=1O9x]EϾUȹff*6@u1_ռc-' L."t߈xɪpE>y%Gxr3͠b/4=Y Į63 f2)6/S$yCw~Mr|"r>6 ̡f>Nd0.gŭ79 Ï'%shIFaehnnDp Eb2es{Իv+04CK,psD4:w F'de3 dвQ1q9unPSDQ}F.0^3{)+V4W_H DM颂yݞÈz"@+|(+Ã}5 =Φ\l ;0rւ~mf!anuNbq).T1.%;nj)&utjݷOU̱b e=Z h0+Bތ[q 4=ry +ndһ`GGn^͟ꇔ64Xi+ӝa.޷ MՃZ>6UuZ>`ĪGyx:蚈̔^ϊ8V*Bl½)o{~HD).5hz @@^JFciΫd6*[l[WUQsɎh.лG_%c@wce k.er{}V6 2%L>&e7C'^?N8}:k5*=ڞV$q-m`e`k|Y NF_&9R+GZ+v4=86uwHNFgD~&WDu~|dG'=;%6~5Snw8GRA̝<1[cv)'7}dc&h@02jHC:~<hxNС3Vwei()Qr *aAݴM *H)Ю^r#xP9ThrL?V==OUJ" aO#;vxzDC5v7ONIJ *ꀍ `rHyKx2j]cgx$u0FIUbCI$Uw:8WknDyH7 cS6d}R)? Mn;):# Z8'N0~<{4*Dڇ;IퟋtO !ɸ-Wzx&r G_]NNn$HN1WFn6)Mؤ¥;Pv?Fa"u6tc8(ɭW6 YJGMfсӯ6sP`ͪP\z .Ak͛!G+a`}~hNG-m7(?$0:j[>Zezd(3׼hP\R.s.=_=Hpl^I[s-5cWz ;M383h3> *Ea c˰Wy^|B]Q>92"_ qaJ[$ T_3Md=z] w~w˚'lH\Ự "ų}-`S5&0JGʶigs8FqPt0=r(1aDX6q̀RY]+_oR"$ֱN82>}~#,ȧ"ѦS۵^bq.:y~.7fc*țt_1~_=Uz /].b#|3FH_S HD'<3^жǠ@8 6utXf_FTcTtڅn(s[捫5NXǚ(v'm=p^q1az&[W9VglB^2V's , A0׿B4=¿;]/ȝq.L POBaBij4썭> v] ڦMG:@DSd޸R˪93)‹`Ƭh͍UWd+^DJ4w߬@&Vry:Z2ͱK?ο, i`hiurt>Ua> l1V桐IǺr)rFH(7{vZ3׈Q=7K5ȡO_qF!sIt_)#%*$qȓgG*7 ǥ6BL,S ?ZqHPw׍ݷCPqAmBϧ]Vs?9jUwe`\0vH1 YxjO*^ITg _7e4T!2elb#U$7v|7)v {^ ߓB.iF2]gWS)ڃ?qu)'9aMfzq{} jH} eR=s'73%+NmwI -閄0'tЀ/8(Y8$VhzWc;HQ j|_snmP_A`lKD83vC^r,2Ee_!#<-}Dޜb{"h+?0I薂.I>*0 )W(ɺ˳wH Tbaꦗza#iǹU-(T^VwR4(:7/lGihO4-t4V)y6 "duEzoR/1it[U!30g-İ#/~eu W@jfa[N,yw2u5M}F{\xqKW .J2#c6~h^&}קI|azp늯: !8Ws۴WOk,V11 Нkp&g0@҉kxpG#iIrˇ&+c3qu|1f"Y?j'\M.@jQE? 豦n*;-@#7bpfnWhp C گ/3v8ld9}a8&Ssw,{Ѥs|7kқb4~Fp?kҘ-l>k [rr DMMMmVb_m!M=!(ԥĶD`Yо6=!x(,Hل%J a ;J¹HNp9QyU{L/ 'cqAC6XN)u$ Ѹ1ݥxsb ]__"b,s=Rӣ~H1c /EͦfR0-,ͭȍZQCYn"c7IN>=?rف T*1Aɗ?[ޞ֐Y=K }~F4XٽE΋g4 aCuYNH+ I؈l__fOCĕ/ f@% GES'֎'6R3z@0 fy0.蚁ҺQޛ;*\  n p7 ˇUԏJ{󧞻Rb AJAnF"22_:Xn&I.V! u1;FjI*sAeZ{`>F͍<S{Hm:Bxkm0Eləu@_Otc$7+3 `Oy@pzha*hs.X{H{Y,-EdaP64TT \>)4CW4? I^)+=,asdPa;QWL}p NRrXqM݃Y/=|ֺH62`>Ve뼕cһMʬT3s[.\ea"=dFUmѱY2 IE7}ܯ+GԎF^ft 5oa\l VXpy_Ι)$̹ CNz)yPuKm8|CZS}c vm5J&^$gAgyI&e ؿg ;4 :yt&bT9)\ yށA H9:kq[~\}?䴽;:+ǯћP V73 L6(lu I,i<֡F_2`եY!(Rg^@wgMDz, }>8Tf}p}6Q$Z10%F Aڊ /g*oAeeLE#2ewS/PonC鲢 *sa|~3 =g?}"Khm[[?q MṎO*)s[9 Rsʵ8?A9[eA>nA@c6'h歺3Sj2}(|IH =O2JFa,SXoLYR547o[+J 5 $neyYsϜ/<腒g)W b,ÕjqjbƻX$V#Mu4~he܋Jd}̃Gs .]-3 p/=B̍ B1r7Z:JK1qKl+UwIY'c{=xP#9\WSAEAAyO.zo-UP(o8 \m1noT4Nce]\quP!yI6t ^e$ˤs\ * B{BBI!3ISs{نZ&B>MžS]$B`Í+}g,mp"4- ѭ.|eud_3Ӛ_0¹e#~>;p|N9 A\x}]Gݍ#ISMUMF~% ԉ&{2禡Ĺt$y6&O_nb*! r$b';ԺcOŭ 9w?%PȢYe8L 4h)mn͇ﬤg*#6wlH30rWy\z˼hsڣ뙟Vg7qtz[%˥Isc%J0J誴{L ˆM4Ő٢Vo'BPjQR};@"F|)p1<\kk^җϕ-:x,Gn` 9#ZL"/FkWCM]|sxh- XWji !).pƬɴJhw|lvM,'hfUU”aiw6D+'rw)?;W 0R ==:-Q{-=mcsR0G}Ŕ &4?` ȩ6xDf^oCKvݠtʤк}d"s`үaCyGrj ĆG}3,Ký_{oM'9s'g?X\{::Vt/*G8vRX[fw=p{`1ȳrՄ؁-<3zH' HIksE05=]KØ{ea% vQE6@}ԣ.Y'ίdINoނE{]|JmmF^3/G 'JBWΌk11緿ZW37k&Gg 8d3'zx'5%VP6zf~s]w| [%jNϬu>S2,%t{ѫ>6H@mPpqHDWb@`[ $@NhChk8YWѶ)z$L۪+fdIHk@?6'uZݡ1x0\LKNv!̡W\ZP~,Fz(pZxkSUA(76㇀M/#75@!%zeL/uyg* Y7L$%nL % ;{q)D (s<ԎW8C)8OgG\MzB$ Bjf\ȊUhֆ hў!ͽfsʤ' Fc{tѾEI1?"bKj%|'pHR|) Bk٬/)&JdsgYd:ߦ$PU˭QdǻCJ (|SYR(xXqH"yjH@͏_ )kAH{LnlgRӹn9Śl7z)i-g,`e-2go&1Xѷ9/kCj 9d .}k-6`E,+uuͨmUFbQ'l4EaO,x7g;"Tv[ Ť@՘HIL)IQ&#Ճ # ӶPouee?"q=pvi 7so8k}!ۿ:1D˯AY~hzȱsq{.!'(kGqɖ3^$AlW]4tF#yit͈VZu{շ@05[=(JoGΡt/Phqӕ1{c 8&QK@A=A>NQ݉v|A\yK@'ovỷPE!^KqxA ů}O1pjԝyVu}ckZoST*wCz#_WIpt<}!3nuw)JB i މ5!\Lt&=ɨH0h!yKRFkP*r47Ϫ@Gb3K 8xpm;2;5褚DF!jV7YtlҪ[Uzƃi'nC|~%&ELR\;BF@Xt%Ð%!U-98{G -/s럋t!m4>p4nS-l2?p(VtֶI>l?x?"E}-V @B#9!j6]쩉wKh<˹+ Y%qg9v ф[ [:[հ0S0PhV{sggt8RykCJ!T1NJc@p+thd,j8v?qol5"y.(rI1sZgμXT'Sxkc$Aw'APdƞ R_QƼdSN7S=o x|=!*utgU#H=`g^=eΔ/S W@HqE?Drڹ];6mõH}dҘwt&o9BJMܘfQU;" 60"#O^TN0L HݤϣtcRH eFఠj4W kg*s'_ݛ<vu2΂o0۞2&et<=M*gX>$]2P-2$fNfiW6ܗUMDCz`]ά5|XAL6 ﺽm~-;:T_\i-I8;Qk~op;kUu_e< cr+NJ;a` #rL1;%Kv$iq{xqh"w|$Su~d" )υ\I_ϲW}jܿ9uD3Z(gZHBAQRz!"]7r5-2 &Y86h,xEMv%R4}*b,bVc۲ ]>5eÌނ%0[_5囬0lՖu".34bYF廤Ӗ%z֊#'= ðǩ]2 J;" #1X9N"yelfyR]EBd.R.5쏯xD pdӅx|:JOnx釆 \ B#%:;}]~#"UE$iv1Nv%hawfc_]%mK-* QfvsԊNvB_i˥ y):wZKEyl)``&uR?_Q95R^a |2i*نrꙔp$Q]=o[5}e"5jFw#fī/DL^7>spOsY-6kPЏyYGж)HjD+vH2-I?Wؠ96 "'|Tr!F㺸UimDҚ3_Hhg@׈W#E\=M313ǜ &7&kM‹2 ʼ}J҆բsA 8Z2bXV[yyZh[>4._E] .ۀN zke S)_dg_ڎIшw8ԓH5eÍVNh(hLD6 tܤVAWhѣ)e%sH r" Ϋh %7 ݭoiJ(xXniWB҅6/Þ?Jw -x,*y].R:tksh6rCVxA6˟Տ<{R<4dZ)O* LG%]QVgW#dN\lQg]2 Gq ')]h{/pq ֮ɬ"D.7Mw Œӻ9 [z-a!Ltnгcw>-+3o=pj{0X2 ;>(Hca2@f1[$I{Y;O8^ꊯo2p¯l F k\g~}7a@1jAY>@.7$3}-z-V2A!V`mWS2Fԏ(kGYCq7\z>nv|?.]OU7p 4 ap .v@He-NDߟ'埗~ҬsD'Wj۪I T&կ y[=)NpӴuԈV->*Łى.pPnkOHPNL,.{EZ<"q{&G *Od؜QF=Ւuk^ K_o)?3MB*lfuZfc[=Xb]% QxĚ~X5W4e$#S1&*~W?g+~a&T|{m{`XXkA7 7[^)L/^Ӯ!L~DKůM/f6~5"OXagnoZfy-8T4 i"7P=NC?~Bt٩ 5C,A^cnђ(!(dlUU}Ď\yäPuUNHq;:ɈݷMPJy4Ɯ_j/ }⼪BfR{aiߔJ8XT, |?!`1HʠR w21dy`:ι!N ș|V _ev]tͷz8NxZR 3r,lIT )wfʚ' 94\άT jċ*4^ "3֢ #ՊߍX~6})8l,;RE!jWqdi #$<$# c[J(Q*Y@}Vy>QZ5^ʫ&kbt4&` H'W_~En!`pkt`0&'^no+(ħʔP@^3 JhN&)vM M ?FeԯRx~fMzy*iva,EDͱȶζ)~GY%8DϤ1U48ڈ`sstRauK3'BGȤ$LeDZ9iLyrG\Z3* R/׍ j&4M+VаU$ yZ7Iz w"z:M`Ná\0Lpf(Hܽ:1v ‡4 E`wX!%?^yJHڂz[GgƪQH 5,o&jak39Om `cpD~4T1މ52ODqBs^ƧӜP53ijO}!. Up#(xtv߻~vD6xZ`0 OXu;}ww#sHN"$y J79ed>Y2J#ֆ4M-Fv 1 FCZ[k?6Ub;)p~y"P^4y4t5 ,+D Ud& ,F$ho }KSۋQ$pHԡY&UNy+N`G27Ω%dcD@@_xM<:CgB6(L&Va/=q|Le@g"_>h+6x`u'8Y,݂˅3 IJLp!+'ʽWgXylͼw'dizUa2_d5!0lLf!|l+ 48%/"Dy! @Vv@b+ xJŝh&;Acj8ؼd vbq؃p3TH3 "eJY!`_yOԾ-7҇Nn9$3\q.JFI*.;-R[\okav (ôrĵ|1",>FV6 p<|%|Nj _]&b,O E@#cZ﹛Fia!va^,8x`l|7E|tEnC[^ԡԧ|ӵh|><4ʖsci!Y[>::xw/ޞ@2ԎҝͽM-}Wkr:2ޮۄBDPk̚u}lRHuhQ{}@DP k4dم z=aR#qW ] 0 Sq CMGQ0IiُH7.kBi̇!=( D?Xod*ZGo5£TmxZ#h׎U]Pu Ge,$Yed.[d (rZFW1Z-.O63r?nEeͭ1q]QۗWXԽ wZKxq7a6R;lԸÖPI (Bq%ek?NM_;du| I!GG"˛8X#k.~q-E+cc;Y(t*|3_̍#`"R!P$ c >q”_e8!'<eXgBL7*?ih%wыB 4`@ktl*1錝f%߀q8Z.T )& *yroOCB'IAkh%O;{1YN}hՆjgד&ԇ^f$?2=BA[muK3C%p+ƕhKWqbmG:< -@E>v}^2oIYiZҪJ4xk.)D*R80~V1ho[K߹ x?\2YU!Ay}1&t+Ly9-gݖ!+Q(zZM^ -&~j.|'Nnd;rZ1ᣙvG&$,ћ;h`j\}Pwm5&K$lذwr _LfB8k)5Mtm}|Ƹ aCQ[Hok}/<'="hl_n]]Y`.BQT|nMOG sdy_MZ÷HaywB|űd;1FLUjL UO9T(IՑxT2u#]7D}RWzvk(=p %镆 PTP>%d5\P4iĀۉSe 5m|7}_`?,ud ٦<" 31B,sP耀z4ۯWN 3Y3Yq4X#840ZeӘn1'g^4+ V$Bo{S"-+Vϗ-w s n MCgwyv]pni|I: p`FKˎ!P R$R}x7\WpK.fȥd=3BݖUbIŒa Ӽ Hxܧm-&eBcNM5}^]%`ƝNtZ)iQHygku*ld()jbl/' PHЖ!xƟ:Bx)̱2{RُBF/ d$뉸pZS['Z=kHpNh|2#R?t* ~.I;~?N ǯ.JeVIBL w˾Fef֬1+;2wSf#Iw-'GˑW62>gx #NP@XsxUZdK{p&嶺pEr{Lh?p@{ue?aPE٫!)*/ ,?2V~tp"8r=gVm}~O$F6#4lUN_PekV08wЊVǃzlPogųM#yW7BA3 ]3 ʠ cR,\ {/8 ZgpogQg}FHLڵR0\;DҘCNQ44 QѾE(W`Z4a׈x%,g?M'2+{ ju3 X6%Să41$]1=K*^xs|7GQ2 >T7? :fob@>r[CE%ȼr](2L D:+k[ w_ +dԺnaKqn!iv_IiLE?!k-uk'سd3</\_*U[✣KSk>嫊e\s}W"gH@/He3>O:nلAַJ2qPJYa-DRMN'PWM3SPILn3^vh]{Zq3C *V'adUκ!iXcD!*2 /Pd NN !;NJqlbhEuE#nc-}YI53],͈ J[H2ez\YE{ ZqjM`gy(2TɄ߄;PPXp 2m:G]@t*w>_NxWy$6':~~ټp{)s͂5|ʸf5~S9+/ %AT[4H엠bDpQ7iֹYAc %34qGsGět~ VEFi"Qmm MR8ʄ <-I;6ΠdSXDgAǚrbLڠ@uNZ=ctF 7u.<$gb'ŵt`'WǾD ) 6c .A-*Ǽ[K{ PamJ*?Ƕ:yk82o)ͧ~Ymݘp\o, 7_5$mP!/҅7LB_sXAX4{ѻxQxv_m҅xZpLzPE+B O z>ϛ*:mx📞HI87>4d&-YɎ!7"ߝVJZt6G`ph6 BV!ݩ5ԣ Uȭx J)x\_* K\IT@G MAޣEGXPHfoD? ӊ* e5w2ꤲ9&1I"Ӥݟls0.ҁpsLޞLN(w tPL!x,{bWLUkYx2*h>Uߞ1`Y&FliSe,K>@ڱl*ո6O!a;`NvSPYLQYlxO50Ȓ]@ln9o(>*<\O 9랽A#)eEPhnNw}{>?Գ_DDG^Vh[wG%+N!3 g%>-!cLXC=>Ϥ~@~.-xp;57W pėopD؈4ha86 Z3=?ZLn KNN2<`zWtPY<&gpvMP,M0ejrc-0Z9L{$SFxfR},K0>VYCv᭕^ԩuzQ>Źxj LW@JKy3zlkF 0}Q!(uےWEl~SڼWp}l>}%<˜?FGDtIU"ek[ϟO9Za5Y?9ۿ)eŁΓ-LRx>Q 2 ulڔ+p~A'Da)Du&Ϸ KI:0GYiSùXRU/~b1`/@~luMJe)=LO*·{{htRЄ7: I 5>H><8q.Tv[VX ]ŁUyE뀯(%w3O/}4rr;"C<V'q>]RFG/A?bVN`Af.8Mmֶ RВ'DEύmNe^? Z{<,?Q,&5j}o"@۾}8)?T{șjͫ213Z`H$ys^sZ_k5i5A"Φc# -\qC \Od^"3rjcfAWD_VM{{(B|jLv.YȔRZ8.Mbk2p= O7!y]!-ZxUH4FZ.̰HH6MU 0v9^ 梱нf-c.Fp-ڡܝtbʜLzRk12lR~^}p(m ~ĪqaDa[5.[7ʷ/¶E΃{!i_椵iuʕLe&``TIc\ zviWgHnJLNͷ`v|ţ 垏sopPL *TSԒUȯ~LnZl 4Eyկ*!oK/3t/{/d!6AÖ%mn*+[9]YXE(\c%ϒ+-z8˃\h>OKAU zboԒ'vD- p'IN{g[[6za:ѬCe gU iݓ޸[e~VR>h*"lQX)?(Š-UBS_]6wy_^ {WkjI  5fU"q8B;s*&ހmrkH.O<)<<\26Еm;99I{ cq_* zK%[l:&WSm3mJ.A b/?`"]7߂7"6 ropjSЖ5hѮ#%DY =\HK |}@s$oÃԗ^;'ν9ƉM;EX=bxҕ_&-*_x*pZ/ b ;""7'OԹMDWgAO߹CҝG}3⫇!ap rK]Tʥc%DKR3 S@ČIhWbАfz\qar%c C vDiHN"Nig_3kք%Y@U tĜ.KG_57u j; A U`| ~ i]@;4'w`eTBԓ3.>0v+=&aQGA<]'PeXϝq2bc랸.dVcX~x~wd (AN壞\ϱufHNPv8lWh?JICmezsӰEDcza*92A姢5_.C _zǎ `8V6ͪMca@rPӡJ}_o>C2ܔ(fD_=2IІ /BdYpiY J-_a(K:rzR)aHg-笥o)UcWj`UF$9$ W0`7)gj{U!kojt0nrߨxCuTQHb"y*ǙQ&xQZ|mvvo}%(aqK ?qʁnNuisڿC<ɍ* ңP w06~|7MIvԡy'nx9ͤB]TsOheu|0g >x^cK "g+Pfܾv]7vT<6vqҠ;ՇRݟo{o ƣx19d~է ņˆk٧5E?C5o9z8NZ.'B6)8JǿؘHALgu:ݜ´Fj~A}T ["B1Zߛ:'J``Lo! d&WȊdO/OQ:(l2w1OkٓTGhPȽoA%`s2ȣ[Dn„X@ EEbӚ$(6Xz7eOd"-$Or,xRĂQ[-Ҝ T:tvrFLv?20=kj}5 >pv[i y\ .\LIyvkM1zʣ~Bv}sDx~CeVeGKYgW&2$$Bs.eD]9/ 36^F~1qHfjڸKLYI.Թ&~5wRbf!Lt3ɶm~EsdU;arX\dJV" bZh<;F\Q"`)t.Vl2u:xq㗋k5غFASڎWw;RݏR߷=[y4 , G0aMfh*_n%Z@qZmǤ묄U;l)1T#ۉoBR}ĄٹX Qj"={LS5UcH>XbѪujYD)?ҔE ^%_|ןaͅ,n=ׂMdP-ayk%ܚ1oS\&-^[LiHO|pM/F!Bă=V&Y9zUC@,e@l1}TvQDݰ0 @: : ^2)鲣 KxiNP?4SlQ .It^1VDhtaݻ*&`$VlջMc(%vÃTb(5d2ËiHhZ++Q=,dtcYC ,6O㋾L䎘9U.C9z,:W<6_* /=! 'IBJ B`BCXwi 6X*kh-n;hSu8[xj̄O mlAƻGC۲ܻ&8,lz+i(Q(@_꡴a^i.a/rS./Mq5 )nwncbJo5hXq 9',9;$LNMko)ƽ"P e PTHu8i.pvnG"I2y`G60SxqȤߤwړi%=Y]f6F}mJ«ak^=Oc7PL2ܿ1[7ECjDP%K8W$2`E?^8Zū>x^s-yq< 3[Z&F[ B˱ZJLmOUJaxM LKgG.aӟnJs-:& }LNn ;2ʾHa}qo 6rBJLSC"Fϣȳ֣IgzM:'āuEU8'YGSn#յH<3þRp hA.) GI# 5@pՖCNfBgs r 't yW'j#-mKaFXG `vDZ??wo/-:2YF%{stn *he G&/tR8P]| 20Dj^슦qC u7vKGsIj*(Pd*͠m,iCpƝc.4 '#x`?^dĄp7 AE%#[Z2Oql)oNZU,d7 1v}|AB$-MҿOb~e)<X=uƽ깃cNu7XHNM{Hrri?ACdcp=OF,s 51IT+|VddeD_ۇUB'Jwڑ߿ {a<.nׂi!׼jNdR] ~Zi=Nk@(;qI S켴6V,G8h(fDӰ4w[!clw$ToH`jmwi@jJz3Io$_asypĀY^[^2]eU?rMwZg}ՕLIGu1@~b|Fplʣo2~[ԪVsx~C"*?c-W:rM&<}A}ekd`{“wf=Gb]DAcwUf:Ɗ=5MQoSZWҭKTwBꮪP5yP>uj׍*\!}`lI ,s=MJ/mx7 UQ/^^L:838w?zoȻxGy y\Ai6z =lH2 bqE(8S?2dD ,`)2%5VoąP u)7.1,SԟȮKDžoOq'L¡\3ܓDd,O^xry[A0)7'yK#ƃ(kvBI(Qat\[G Px%JOfH^J`ɯAxJM5ȸDž–Iձk[y8ӕYނcIH&vT4ozPFnE͈e5RyP/WҠJ(]2vt>*{ܧio}BoW"ș4 #RC%o;{Y]nڰߨ_L'6,=Ge"K˓sQ @mu~ĘeTO~wmWm=+ cU‘heɂф EX55iS yUɦ|T' X|onQj"Ɨ:R<*)nb 1Z7%ZLiaMٌݞX{gxdLA j5w;6!Ppsu2g7kq}㨡#sw0 q.7۷Xb!aV`' ѝ@,gY[HYEwH}D+jBħ[$SNX}vYo Z$A-S䄻8XfAVi ;nUH`X=sf?{Z>,&͂d}j3m[(?2S7 I_G* 9LMPܜ]@>E{hnb7(? ꯔ*#^}4'0 W{t&G׋& `꓾* g-n)?Rw٥X3dѮ~NG8r7H KOqq֔h,;o%Hqy0=u<굣'yX#U6pϺ"B#xE̛ьVq@ }r}zƧۢb[DRR}K@J|BGj)CB hgR DENj{Y:h-ka/c ɓqRz,b;[_>/>f@:fo¥]7 DR!8 SW L4LJ}]Mb16pMpGA#rOExeȌ`D׼g5~t'g7TU(v~nI*4\6v#]VDt񾌃Xȹu_hO/@p^QsI-gI[@6|eԪPJ[ C䀅4no8H|f%v1j/͖NbjegEjHSY#-0F22Rͣ,$}$-1KMG9E 3B.YfdeWa 8ъ$rd>ъ)$b:3TJ0GJOv +i#\e6ZP,%{R XC /*tA\QKϕa<p0J;n* ݯ(<^ғ9`_pJI x,P =Eq73^7S*`QPƁP/h-j:3kT\.t\4 3,k`Kޱ:KZwй:P~eէ$WK$Y0pn-r;zO&emY=-2A^DE ^ȭeh+b5L@ `2Ĩ `Xc$ޥ7M#S ΐ°jt?e)S& d:g I0DgBFW|ܬSJitnq&jSd/3iW$4J_! u+wQqY-`-:~i"QRq[g[ǰFm'!gOe6\HXaC橛;0,u4Sz-EaM]ehma>4}Q|>;5MXYT'IN.`iQ^E nF#[|ˆ3%oۛ+!SOx2tͿk W9E)r{0 LaFLQ TJXA8Vr&DS٦Ө낧.@gYCR(2&boƕQ,;QdEa83?|oFrqo#_M|5 AؕaӬ'O8!/OIVcĵ@Fݡ7L`288^I)zrzYàKuҩ'yJAQ4(? Du a讱gO0.cC YF&gAv)l&yͼ b)Q6eNYaCv:، \:倮pql ֛#D 8e)Zx䴳_ Htw(.%YmMQ4S0_\% 'b,Q$W>EU :޷3BчL|Ec!j7F䭤lnLj*qQBT8\VmkHp 2(Lrn'O)U:ю*dl@?d&t:K@0UX٘RzM9[Sh0=jf2|sY^Lڰ<"ԯ'ρ0[s.{Eyg{KZ,*s8蘯s@Ftq\O[72]:Ya B%d,R_Sk`z f(]CIlxcBDH n$h6~ Gb(yq0R@Hs:U{*wM;7[ yʹJ|\ou(`Tj5gQMYfT@O3ȝv`$DAzRgO>Ulͥ[%p% /ǹ;u}*%;?{ A*FbY")8cF}5!D6k**+WB-106C+l$ FE/O#oEͮ?bQZ8уHҽ+^z kBҗ̇OyxU5/4LyDoF':Yt$*˲F̽jK Cں}#ǩ (]-71r|6)( *2ZȭcX+=gJ6C"jiu^*慬Aޠ #Ri*b+w#yɚsb?Ld")Ɲ& ul7O@ e򅇏IƎC; ;`qWPW7^ZO+vޡ'"@BTe=_1d2p^SEO| 6\"X HFA=$'|]?(JAC %%݂NNC a ޳~[Y[GGnpl2Hr[NnbzAHP,ʦ;C;{Z2n0rDl8u2NJլ,?'mI ؜*7d`f9ap}y'])ax5юȇ']op0cRP qN.E[+͝\'`g7Eo{ꫂDܵ^ՍrTyx~GI9bFZ;hRIT1}MǰQ'.z5k![nZ7]l*mavNMff\"'3s>15VBw"M]q8]{7lM%ҧN~OnBciaÞVf.H`$#{:](Ϊ PE]$f~ۣ {GEjnSȅ"h6N^Lg l77KҖP*x[h*.}9U, [I3zma8o?ykaoȀC9sD0`M c9Mm![ ^an4h2)r mYR7( &%rɊr1V#D@\xK whBՠr{B`?O h ڈ띴b*6KM?VowjiJè#<>*Frhr'%aȊkaԶ6JLurt3ϻv4Ϫ%ϕ0iC[ +DB25zbސ֖S5tx#ʓNqN}s05z]&ainnJRUN˓K#e0i YiqdawSkH~)D=/닝Č^Bd?a] ]Db^yPfY^@ כL\-koox^xu% & DSZI10vQ KԵ :c"y?i{+ tOhD]G_g5I+0bI6C%Y*P&73Mm+=_O:Gvǖ EE^7X+S lY?lb'nqcVt\LZ҄gGEF`Ej2DyC q&*2L.y~rV߹UvXIo#wlo=\u95+uoy=Qۓ.(ݯY@dk9/hݽ!%g.U ݻ@: ڄ pcD|D/ 7Ֆ`fYQOs::Ab:X崺n~g`Tw2wӖ:":g}&I*I,?$ .HEh]ˊgp~}Ҭhd\c bDClFTi>&HYڸ(E49C6\}HLh(bڕ؎hV <> ZG]A-uha[K e*D`equ@ٸoAۖcJu5 vDꛨ#-A+vqSG\9;*|}g*Cr(e) c@Z™zx nYR89XMNAL2ɿcsxCYXiC =TO}EB ~_1.Ί3jS۟@yR+<j(s ,`x  2mf|{8}3Yh)PX x(ʮxQɜAFbe~MF*J+Tq1_U{%{cN%HżK P;{382cr:x%㛟 ױ*e\r4ogJ]/Qk&s$zkl+T_ME—èk᭲Y Hϣ#}J&W #yrmRP7/= D?wáVw<+O cw@!G({HG_A K{|[ j`zl*uj|mnNt(#BB&Z3 .]2 8 ~q^-E@`.lYcPE@)[Q>0qL3mՉ pJ}EZNlۛ( Kߕ%D"үYeq4߁ҵgānnȋIM]o S ϙ\*-? -kQ#Zv IX~(m %f"<@51p} ?;ST2Ʈ@ֶZr90Ӽ K 럇qN[[KIUx]Tp),"뺢u1WRBE뢱 y(S<AJdȄK HWhĐ:6 7!crZRQnP/Χ_TftަGx^ $ ;1Kt.JifzEZ*'j#Qsjhʢ![\Ѳ'"W%_fbǽC?m1 2@ɽj2{iQCzˁ Xtijj"\;4Nս]{=LGM}/ߙ)K,rW{IWnv4~*lwwGk  ]`暫xݻT= 'nw{\>xFMC)b4:zIЋ2 =ڽ9቉W)mogfl |Pl0X6 |nۣ 00OJB㟯N^EP-duvW9)%˞l\-XWGO;=-1}Hx^tݥOC,WzMRb+FEH͵jy4%@$8F7lf)̶ԙ_a<\ro0pkS'?rMVpJ7oD0 ]6Z fE 3.f:H+TdO=z b`4ePS@U,y3/)Ԋ@,L4"ʟehGLT}S3ȶM7;}ʪD2ך1y/4 #rCTk\L0Ր5}x`Dcb /ͺ2\nP;f஖W\rAdJ{r[D:[;g1f44$Mhe7-V'\13a%}K"PYNN D _}#ԙ{OzDÌ{H-=</scV$B̜gu<7!=:'\!Nipj]πTwHC2 Zf Ux7X4e͌Vm@2It ]~f jmi]+|Ƣ0L!9_.!>գoG9p^T^㡙y {z\ п<>ξ2FkަGYYcɺ1ˇijʳ{!í9 tByC*6׫ٮjLfh` ?nACh(W&O"VKc*(EyQ6 jސ!XmzSְ$oTf,f*@RPbd mA3!^D22nWuHF.+=C.nXxCXrZ9fnj9i#E"F eٽQ.'DZU 9l-V%6 fH)""W1U$(G= S5`JA"w]$s@(!3[FR 935t?HҤmj"^5rܛBjf!ѕ Q/p1 fW myQ7uRs=8PhCbZwҏ.h*B[r}dPD"LΈ:SEB2dz6:=T/C.V1=b\"$+_гJ k1{OvٴآiUw3@3$4s67,PYɷ,yrbS/)mIB?+Qg2pޘ*Z+B9<qO^K$پf[Tɥ8)ی PNhjnoa!& u@ü fOLQ2R|}䍔uCP9TUAŔ+$fMn'7q6:{!P~튥@l'4j`IaAz{ .A/ NقBgZӐ3821`BDlp<ʝ969zpG%k.% by6'_v TIk]0W#Re-!h2savu-! ]/X+qyJę{g(LL0&w%vOJŀKe)vSرޞax 3JHAI*"8\$s95qҍ}=pn~?1\r`MН씌 *N<gp4DQadL :{}} t:n ]Ccͼqى`ς4dṚX j7#N꜒,_^.Q3r625(_T\^` U> OrJxNQ uTUu +Q 1]hw_R.~rJtF$u5)|ET?e*4R\TK+)rϴO"D7+ ~hcEǶ~&YK $R5X"0*'.h]M2 ,gT&}AX,W롊 ˴pm).NuN6 |M*N[Y [U _@Ө7 q/}~(fBp@rwβؠV WVMy+Raub΂53Rǭ7Q|Ł:7Ƚ|ZoNPe =І:qg*RZxSܭ,rq\c#ȿNoX|∟&VZ  R41IXSvB'Ŏ%4?요NטsA^#”O֏ 猢M4F4q;8 HÑ֛onE`T Ú&Qgoɻ nIC~E6ҮnzUmx.c[ N IՃgĭ]tƴc^Z,IY}{,RYaN}\yVdrTr bm6qy5Ѐ wT tX,4in)aт{;6hLvNMI҃{Դ,@8Utma1X̀_jtwLT DIoV8hr+/v6o%Lq1C0hCXuKT%mVrÿU%n}O%rj+ ٶHKE N5O 'Z[=wVT]M iWi6Mƥ{%ф\qw&F_+8]t<~pBc;gw2zߓ&*LwAl sN#%ӨZ/5ؘS2UFD5%a/?s0GM`S%$fkaTobSݫNԤ6Jođ?4ؔO3I&Pj@,VSw6@Wn-@FjWw%oZwiרOa61<(&Meg2 ~IDR|kvo')ۛ]Q(߂vOeVQKLG< D5U9[("h 0`BrU ]N-almYzjH3$h=F;c @ We -KDC|ޒee1ykXOY2N|HlPfT+uWfbf`Ua%*IWcmS$r#@&~uX,j*B߂ `Kъj9m03+ _?g:' d<t36 `)cZG"/w~bQ~VOyAZ80Xu[g|- ^RPƉ:wxV_| "$[*]9UO<5 8xn MX>? Q#2CkxKZ5,C%82;RapFKܢ "QO=QI 0x;%nX!{jni[ߕw2?T&|3;&#P`*d7H‘AnEH49dTڗ^k(8aڡ}foVN?E'sؚO>.3'2cnκU&rsBں0òqp8kkxX1fqm=E 7,C\,F Tu a38&Dn}(b@p!a;¡op(5}&Svfq(*타3\ںlx6p>1l晚RCw[ t0pKIYoP$$y.oo&3ˍ]ӴgP3ߥ6HL 8(sd{XigB1\bs{ HIj7L{6X웩JI-u\B#A1'of=j@+ п43"GuY&i@}*.39Ǘ 6\2Ȳ"jcJW]o!ĠC2sՔm%d:YH(=`Q_.>SKHWLf1ƭbK=łIJރ Q43]#4@ Fy|w~b9^{ kn,t6%zMNao8[ƧgG-ЧNZ;ltcEiOu~57VjX$_AA?V'+9ⶅGߺH'+^`^T*i4QD9NM&[ss: ] ZP~kY͍"Oqo:inj %6>^`Ne:k.Fn-$EPN"VuzK@&Ld\/R,U+ns<>ARָP/gAKϧ<&XlJKyiE^:}jKVlaibQ G;h|"TVhi߬x~S蜵"Oa!ee">3or=T@f숰[E<\ʁ88Xl龗+'@g#/msXǞ.۬릷ra(pԕ/k$2fpd z/!q)X 4Ms$+/=y0d9m6Y%gkg OK25XpJGVv=Y>eo%ӧųox*aәA$y%}kWҙ&3GF_"[\mo};{iM$y]ښLҎZz)Eh6?>*BǕpALfts[/Or >a\dpdYǏhsI4H03J7v6,eA¿'bVrI_Cl4np1.{y#R%^\m\}Nj_" hA_k{x^zJ;pAu=䖐n؆!~~}̀~3 ]Xnom,ruH4Vs|a+9ڇ5C.xc SZǜm]Rt9g+0\ ?͜"~,//: ݐt9rUG@7[`t(HIhWY5K?Q3鴄adDcՌ[mv`;O8 yhz\N2r ka7RRB}k OȮz;֡=S2$|)0oekѻ 7E|U\~?A֍m;7u~­ȘNml#{ `=7-7}ٰ;DY:ww~|K4m.&z+ԂlcPF״cZXh~LP17n礼"B(V@04T>g}W=//'77e&G3#n]2UJ{IyF<g0pJzΪuZObQ(/ZBJR]/ 9\t.%+8|eB\JM#q6`dTrDYN+t]X!VǓ l˄fH*EC$N;$9-6cH]vqr5>` "qF`WE0aŃ(V @a~<9byԱ3ht0oP;/+2]{uʋd}ez0#DA]usڧF>VX[ Hc>wJA7N5۔W+T bj:՟{C6@l:{qO=`ލGZJā̿?uq%(f݅{/z"`%dS@ӠL 5?)Ed##VF*o3E|d KtvFW[DZϘ EHҼ[@`{7yG<9Neej v`x=YѬ3_.S.+dB^q;UJ$h_/Tf=1Bqe !usx= MRfH)TTƤAcߞ$rRՍ?-dtJĂiGaQ's%[`=7k=j6; ( j)_piڋT<<7A.061ZyJLNiC Y@n\up)K؆|Z|gAt/+@g L;PWm6$5n5`"'"mLu$})8HRj⣞sʙN] Ӆ$^teٹEMd{Ǻm W='d|hK$f~lȧ!ےݚUm7vpE\w/l_كj)4s\p2n9JgÐB#يM>MC'fgqVT kADSo;MxCh~El xn^U |4KuejojO $UPzw˅?9BNi MTO!5/ RB\.sECUK |#R8- ߅n'fg'տ;JM-ϷY5gr_ b3'4( ^"6ԓ8U$; Q ʧ/vóVXm;[aG- ʌDIZC7]e\nibɽ9Ŗnts䎟CV g,*o \үQƏT&%e=sҐ)Qw}twqp'ԏj~Oۋ$-ѐWԹqSp3:Ji{}MXUuq ;@m \xu>o3e&\8eoOP(z*S#& `8uXNxbTgS)2Ad7A)-hi@Xl\Ѣp,Pln`-vK~ L_Tzя(]dq-9\bg=8oDrjn$`3GE颵m*4\n_vy9dSt*2.@ŧŅj*كsmc{72KF1P7b\aMR+iol\nmF-h5@_ R₃[f)l.uEכQ1b)gBqIặu%$e1ϧ snOhKFYuIOzJz1uyjh䒝ϨU)Y@ [A>n⺮)vr9<:M7f"M|Ĝi} yYAwDM[t2ݖe=0 Pr6 E|usMID?XC972 |YK vlۮoע FvSvr}G uFt*2 RYs@'HGX✠`: ,u  l{~'$LX}aW|o0`?1['̆֨Vťn?~.3Q+}$uYX<4A3%x GAIAK!g״. 5vWB i*ayw GÃr VIMm}RQʎSnZ=,-*0T }Qski\-w <EEtSmmjFFͧ&;*,ML}Jĥ &eTfB<pUKoHԈ0T}v'. _prPx[iXcŜD\J-*=];i† < gkNmBav,04@Ւ:`k$y 5f!}ka$W(wN;^a=UNalq,&|!6E)!o{%kfK D`+7&Nh#eNy;v,¶`U.Жo?2Sw`>2FF^[aU_#g?׊\OuT= m{B%ck H@JOj0=ˎm`a+xlG>Q| 6w^8)vXGpDN^2dovh6ω}g=-1h~B ,=rYlDa,tQi=?i< O|~~NpADk+=I9 #3xtP7n.uǺU۷ځ7?q952׶.ZQ,]Z}XdA6bHubٷ0`Rd<s$8^{1ʓmq [č8qk9|Y7~>0H"08ǧճY;ɣy"П.6`,ў^ Rxe7>{Y EITL:oY*@sh*^kNPGtelKְbco5aWW :M$(π|oH kf*`OluYm1$ <Ԙھ_Ggl4e| e8UXUA d02CaRNg͖ɯR' 6UZ0}"OU?'%{Dٚ:KjNbQHx6"!2Mt"S/={"-Lj%2S+͉QAv 6>HE{кStի9b0e"guvg\稊ڕfۆAA1&Rق.B}تev`l'9}ZyҾGR OJJ'rcBŅRF!y` KD q'Sf黭L[bm:+ceRZEY|YjBF1.1}\m֚zޙ&D-`.[ E, ψ =!k|~x:\ҩostjZmj%&QlHt{&O#Q< E~^XzyTs/ ydU_{H6eƫG/Wԯ'LG`?|?Uwd㦓'\R2*RqL HXJj1\I'y?V׹xl$=NPD+O nK}[sv3>r)[4Ĭ>)}1I7ā !&ԍ%:mZŗ:|ծ)DpMkJqP iXMe0(j=H%Oʖ!Nu.5,Y{|{b-0m4ql\@`9ET%Do܆|GhR3=h_#Q1)ɖd8quf^>2;ƆbxP?Y20UXHsO5hvXHL[&!CۉiNrAq5ϥDQlێ0Sj`,{ q n`ZіG\6)j\9Z'p}xD ?]bbaqW*|ZP` ^tPw|Ը2H13-3xYA&>/2N`!Ғ`cVX+Sͻ^p_͐l%>SA:=Ha埊V&_DaI&(_I!pXhr\dpٻp@ ol89(wr'tlBiI8qc~2,P6`(a)sO4i.In0E6)v11y*߸zt@X `qj~tR\:}T@.[ :q5q0QvI3i3D_TMDn^cN`2{N3=6(+QJ ,sy6F`2A (|c*1NUzsr<R2;"s,o19:Tn2)ivO#M60]s=[+TgM;΍2[yIp R; ڹvկLɀϺ=;'3p53 |Ь5AR=4:y ՀC@owv-ov ML#9\J^A )é#^ FDY.']d٨FChp88tQ}@rWzF5n$pnm{k5q_>5zA|0jbٴۣk gJU6XsS8Q+RXQIr~8ϓJx^?~WrD;*&Q0c@ a_KE^:LٟoFԕ*[F|^Uq ;0ҥO J~{1XK{ Tu`h&nˋS~jL;rk!}QH+Mߘ2̘ pЀ#JբO3]m[Ρ}!5%rڑmyG˞9/IVXfLz&/_eɗ,Gp80v(u~2#!QMRgw*t5E*5Fe,SX =Dq Ra,GG&r$dP#urua =g .^ehi B:p XSd^ȇe뒇&]@J 7m^S-?z9ׇDTMX4dRo π_mqWupnY(2F'@m5+ٔ6by ^Ij}4"G&p{4or񹢝k][xvzs^i|Mnj;qGSu\گ;6>lYFc,BVe;Oq4gY{KE ԙV3XP>9O)IT1QW9g_hpǑgLnES^T]<'J; !ہ3ɖŋ쎯rnLVBUEQ %BsNA2EyyrsE}I<1B8fA~2;?oTZ!\:` Z, ]fg:#QƧ%ny$ݨ98 aeϡDW%Ԍ2M]]Ĝr O5@>} \(|֥o'apifJydAl!O홄nd6I݌F; %|_0]feُW.LgP#x9unE%eǧЫY@6ϯzG,<~>#Ms  i*3P#Z*&Ε\*{H5(Gh7kd*Xlׄ4~҆i?Tuw69"7}乄n `|I<~pĻGpOtApGҏjqyT*[4%DWӰ)IlHG[? |#WMFѦ <-ft ?7{5O% &O]\@g6Yrp k.Z̩m8oy{m~{ g<>aTYK`mƖ#QWU&MĎ}֢9aJ5T"7SUhs/&a$3wrO=axbRFy``Ƹ+#R)R2+mbڈmh/D;ax)x RD!ʚn٠[Amb0gef͖ =8pdÅhBZ}ijҠa}|君qlxMwcV NJg"SGpo=oyvm{@QS(W9],XiV^*͊̽ɛ?I54pQ?yd@eM&l}.tɶD[|y6]}9Ɇʓ}UP@wk~!Q@" j9[ B6{RcwT.5R/͠<8nN7-G&;$E<3q!2NA45ǘ)Ƅ,NB7@X%VOY}PYb_ڰroN:O r֊zPf~)H2UǐW"֭8伾'^w[!,|X\j}S"vO*6^Wr:Y/8wZJu:jYX\z @_@װ;FPq,IMlt@B4e9Vp;㔰yq.Qc,.5 Tڲ>t~hM`~ JXjn9QVFU.J;ɅăJ~{8M&,/ w Gv4RQ3/DaC"txfF V;zox[I?TqH:ҙ)u⚥^rQߙbS)_I`aKI@ r-̬Fv_$*޲RCM5:#MbH ۉ)Z˔IoX`[ !t A =9n#L~>[C5c vC>;o9n ԑ@k!Ɯ.,zs5`S_sk8x:w s=2(8[<\;R spYh+Z5gH]a篿ӯBaun!k$߆AN7[0qNXDyK'm1Ee z|7Gu+ Bc;㶊2,N-:ɞኾg*(e"[A!}?k܎i9hMv N*+3Ɵ&pU,F1p([mJ Ԟ'{Yl?KEծZS-V4xeUMqCoC UCP/ u?!\}K"Xٕ3(7W9<_kLFkb#} [B*ᄘ! .MEkݠ@!8׺MS?E 3¸Ȣw_敮rᱻiw&J㒁c礃haϽ}mG;('(y} )\bYGA yL6]7\،_Y$r).?JB. CG?wb(kP*1` mGZKr7wy%'  Qw|m|$ykLgs yHO5ʧ6 %@$ZhRۉpRavTm {\LXM)z寂#-g t8m:Hr.BF]Ev9K4RElcnhax DcK1 &DɲQ ,k ?y(Y+Oek> Q% WȚ%Aus5֌3V1%)ΪR. ۀ*ÆE3lK"-ZcxdƸ]T wBu1JK9 :}JȔU݁~G”X)DGޖ&jLa}ߎEq#mzpK(W5~yϑoPeEi]c mt2h3q)co: jh IU̻^^'/ UǬ ϊFi"0kl)/-lTn29%ZT1RN[ڋFl4c{lŬbO!]N%2=ym)E#G1 ? e*A㻥gOAe?$AGs< |&5{VВQrQWK`Ο.mIP%JÇfd2zU s.!fuOoք{[cG{=#W@ Gl1ThFZg)e{(/̏t^tWo#;pZV;=|uΥWx>&:BU|AGs-.EZy'ۊ,R5[AOi+puE /ЛשTlQn. !»cm6XД,Cl準##{95]uD q3✝JeC47썪سzT.{ 9o{ EXLny)914z_AWY0eHd( KHbmt۩Z놲{2&dqs2u F?H >7Lć@-"˗~\HdJߜ*-ha{TyA/$x˴Y/pF LY0k0m6p+ i |䙎HHt0=ɎQ[궫H+j89(ajx^rZ} Z+Qiq%ZwzngqK4o%T-sYka#XK -E74^5Y}7_CE.(|<OEFwOOtgTGSxfDL)YyaP&If={|,a!:XaF g.r9k5%=ooBto? i3g,xv/JgދyEq<%@[OkLPC rhkZkvr$"r-T*O']d D 49h`oUl xU8wr\_q4e#AaQz$7~c TCtv",Dz6@@IЅRt8l5`CyW>1XX1iEK~dϼWLr{Wqy:AXa~.\kR91=sWY!AS/M!f`ŸMF͹(Wd*K(ʔJx,R4,~6JFNb#wv-A.mDxeqNE0;z1+m!tc쟇ށ[,UVdÓFS!̂gߍ.:gNABkrQa`t!2a19c6BYd8-tfWBF+p|bgJ˗:KSHkH}jK{"8(hoI@u ɥJ6hAn6ZcX!_,^.`5)Pz٠Xflf 4';XʅL!&v7YH>;m1ٚSu±Ud{QBe)/^qRpϸf)"rD/=]V`aou@M ;(H5F{h(U:#OP?$-r ̞lVxi34^Iv/_@vIhŚaṃ^d0")Fv~ajDh\Ke7_LH8s]aF+WFʋNPGgY3m.22k#L\?@ȯT}8iGh;PO%^ ]|,Hmr1bA'Xٚ1x@[\b+3C)〆!5 T@kmp;clNsRQE}+#F$EΈ?!CvxC 6̄ˇ)3.C_V_qRZ9 hD?G%Tz̀<J` \RiiƶW"wh%JGM.XO, zD s"7݊Zf:`=•P/Xެ&v*l^|$g0M֡q÷nZXj^i`)*wW_i]N?8!U3^0N|bJ,G\"5.Fd:';*ٸZۧtLXrмԩIotΆZhĈon M.fR%ZEAӜTf=*)ҁ,3$Ãgd9 žMw`9J|,Fx:La_ȱ~|X۫;Qڎq&M6w/Q<YCB`efOU 飋;%ïgSo;sOňNhM95Jk9WG[ WN82 wW!E2!B.\NWVCw7lf>oc*FZ͚,BJd4J/.Ovc#۩-iQ Zzp7ckP9SrWrR3\xz?3qb9=_T+[6ɯZU oȉN5L01 Bzk0_HSVXďfʻ9YSp5$Ŕۥu9e%SZRcYtGA~H8:NT2g:ڧF0!ŤB/:B=W:]H6Dò>ԷҠ܃ ֵr2t~rϔ&KUՓ݌bF )%d@¬R9tޝPeDYB-9am@6]dx0`¿[[0a`7WZ4δ'ھߨ|*14"Z X2T$:&b<'J t1t yЁKCO?Әn@DT+0vPRg!@1|v\B F*C4<`56i1\aǘ;QcǡsP=C 0ڏ_.kQu_CTXE o[`z-WWS=[ÎOLW CMC;c_w MD"6M׮N+XrJA"['&揊4O˳zQg3$j 4zX(4g)@=1z4q~ZZ(["Š}Ϳ"WЗL1?QŢ<Mou""=Jg5!xzI*IV9->bAvlo2E*Đ%@LJS<ʹ JM^(I^o#r?/rO&k|tڥ Q:xuz;;ӿ[AEgٕx)댨AB0H-\Ev昝y#5uzOÃK VldI YKܹ# 5_,hZ"IdUϿsԚ͝dxN9cZfT+4\SpN4fyl*REr Hꝝ?AU:߫k_}~#(Sw4Q"Sy\4V1`O<e<ˈ-`ƕ?4e.-m1M7!g%=wVln;\y¶/*GIo-8,Vw.y6v>r[?)kC&]#|Ü\VWXF`;"/yeNߤIi?KJ +Lr4б;A]OwWb'A~]F ]oƊ[N{;}V$*@a*:&G=s`3SvQzDGU,RCƋ/iIW9M")aj6(/!̍rsjtW<F2G}6$p"?tfҧK5q8*,:-"AuYCWV*:aՋ,0o9C/=ioX*N)GAXU/|o+aaz|s]ܴ8zg4Ux9a0qT6K|ro̓Wrk]R;L6ɣ *Ť ieUQ^%m>Qy.h- K#;3b;Le+PgOQ\"))ܖb>f)]J{Uш^Ϧ6n烠Y4cpRseĠ,;PX#c\d*w%lEm6t4&6dvإw ډ_Bt`Nߕ}wη0rUb{ b0 jk|% CmyH(|8`x2Q.Ӕι)&^/R<}̎A LtK8[cCȾɌnc,~ U;N[$,|d>[t0rb`D>ʭ럼4!Yb&'QY׌M? O{e&*ȋ,ֵ~yMH/l.og{z JehA` ` # h;ľ{fnFR3C` )$[.wtq`;°)9  _*\MK/^fqդ3u4͠S6%f ȓbzӡX/fJUbmb _|WUU$'ߢIs@] C*Vr%b]w g\Kdƿn $)ޯYkևj/c ơgPxN\@Wo QqBX37CcS 75&:5Yf;ʲFoR<>>OR,ϭXf @(+㦹d(ASr7|XItmvUӚ"abHQc{FBP%P2ǰOY%KPI$P)Ӛw%Ar_W9@0I˨, NQ'AB1A 5*ۥ_Ϥ#3 '*^t+5Dp> nD!bo*a33':఑U!:u!ZQgS=yh& !&.HKzP,E4[@>.;9a&Rҍ s2A6J̘&FiR5>ADWRMHX)fvy5H[Kz[/\V ‰tɛȋ/xEjeg/KԍxxCmcIɳ}BFC-  /o_Zȋ6FC߁KnaJx98Z(T')Q1TP T,-Yx(|U:ٳ3NzDQaAn!| aY(8{xHi &Z<^]${X4u GulDdCNNShQ6f!)S'`Imenz^#y) 8"!%шks2ڱ@៼S :d[?Yҋ̶ M&@j8;&s&֝<6UZmFdlZqXH.w3]pVptYwـ%"6TEF66a"Qz, e-[)@k޿t foh~{`p$F ւ%*pEY:ՂᅞE̓$I[DxF Ȝ8[ѳ_ψe[]g&fUsRaB~*xQZ4/Yޢo.޺x/Hg"S=1 ehAzJf{ h X$O{b& N>j[F؉;YU Шw0!]NhЭ<5;bc+* ԉ ʹa avt֔Ԛ /H2MAf5nEU@nXG y#U*:4}c}m:./HCGsŒ_?7;<`c{bUe "sl|,f^v'NNx.)=.eҢKy WaIS%IEǓEf/(>Dk,1Iw|kt,ǙIx t竜89gZwwF ႌlUL;H_:K@]x>1D"pnE"7A0J5lv(XL[4s}_*=Q;C~m^8ױda)M1F T/}dwKXJTslᱚyx/n3O;5C-ycrO6TvXM̬ZVnHe7MjPr;1G8$(>؋d,=ϧgiAyQ /H.k,ylQN)Gl&2XiϚ3 Wt@ D\Xu' Y^xw3!#RCCj\v_4ZBWe;hh9v\#W)jJ5J/p/ X Oh@Jx|zZ~C$:v^'cp=175~ zUĥ'v-N` t6ꌑB= H"a+Xcq#rtHjzN4FCj!γ%1nf`efcpT nC؛>^>>aYf?'~`IybFOdQOɰ7QmhK.r3U+.VVb67w%-d,qi y౛2XYh?-$lO&;(ffG+9 ï{ dGo2yS?kJj "lj1,)5; W08SչȧT> =+ n^%[[|%T<<@BcA@jWf|م;SPGDTw@nƗvgx9;QWߖO0_1DE`:0zލ',Џ1yC,wQ~BU,?aw>w[kFiTQP.hF,(- +k9oj ˵@ô 6,~p&FqBw?u0HȂwpI&iߓ7'{ea@-lR?ؽ֍Saq\oZn% b9^ZOk? -utg kځWfp./c.nfFnaPD**ژwFя"v4U`%RUMAOԹ;(0]Lvvi*I$$#N3 -[9V)%0]EJfݤɜoi˽XGl@hK*9O rk*dOhu@:R#Fg8}i] Ka3OfnWi#ѻ p:ItU= S-q/"GAS{SGT}:F,|oTW*Hrh,؁=fY5ô^`Fw$ Z֨i+}K˙lfG_up :mܔf#XɟVmJe,2Ms=rӐvS1tvН&Ȭ1@JKGTΆ"8wD0#h<&>lg7稭=23hE Ga~{z0Csxj7fItDP7PB5 R4#3sY#v=:}i@ j*@R3fNE#c#]5\8C.kJ҂&9~}Z|^+V,JxfO=q ?SqOO49"ZJ(QA< Wf R.6Sa: LI%~?HŨ(%zqϥO詓͠ a/e$4qdhנ]h#Leg/*Yļ Mrbe}|!ijo;8,1lFh-=>@yk"c,$gˀ@ Ǜp=GVIR__ȆUɤQaۙg~-:D̛+D 8XLuES̩B8Z ݴ,.v;8jS1(H3τ#0nIYLs|>to«\,a乾 Z~- 4wQ2sBi%sVKBW^{P)uyRs{:=3]e%V+ DH $ߊjw,]ւ{/ f|\y(0+y[Wt-Y%]5VNkR[3؍^Y^.r'M]9WW&0^D+#npB߸ɖ5]s7G~f>*1\'lހwx ܋ v`B]x &9iFVo3U~0( ϋ FΑrf 0E=A7hٸUg!&@f/+Yo2$Us=2NY Ǹs0~dpu=F02H8vB3Ԯ4 ӕvo78G[Y^p8:RmGFT ~k,(y+SE֞/d " 螢O'an˝~^G] ċ -qbnt29$}D 7954]6cic=h!ȴkk8n-'̢栢}B#8f.|/5t5X}ߐB>;Iɵ}x"J+k&cG^H3}fzVxblF_2$zp_nojLԠݷ"w>+*sszNX|Z@[)!UlXllMt%bޏsh+P~YXNLۛuIfҽ` #b&Qο p,NdEb<Lvi/Ÿ;ϒ{G)15 J!Krvb'o<׋hN(G6i,+/Uw $e{9?0x b/i>ꕞWa{ή0T}<\[&Te:-GnnRM owg ED,Зrڏ@Ƈ6HwۀjTm۶ hYXj3#x} ҕ`MĆ*F|>g. Щ.֛+8+xQfT*1Szv*{Ӷ=uHx"^-9nS:#, V2Ga(ne !5{ܔ'h _e%N;:v,m<-φ)l? AeT3r0_S.)`>?3-:RzK;n2H-[ձS:th5n #s,Mk~jQ' 1 ڹzqEeƅx9mg*d', \#ց с1 IMӨs"7oHR7I鯵"Xߴz~cҖA zsR#Ag {)_0J>b_g WvčWgdvq~3V&v)}mCTSq!47S>:g":9ima7j;ΝJCqQ_ϖ(e07}RldZQbV$1,meK:4D ݴp:\ZqLG]jUp+9G[K;2VVpfsǥUJ/\<#/J֮/YFݯS[0=m&+ a"NMٗRaKTb[崌[`2h0/.@ʿMߠOQ{sV;Qʭz[uIçߏ td&HN_Xf׺޵9.P<1 {'pg^K!bbQT_/Եi(QX=(TE_:P?s]~4ZeR\-,$ȰbѴnFFb[HNSOեFN1}Oci귔4InĄФR&c1}&4>=,(KqiJu9G5ʃbRֱInxM2f*My(!Ў7tGtZ K Gߤ`q:$DOrDi ~Kf^"2Zf)s3ǧ&XOsąG*txw+~rtNh dKfz.#R_*3|I s-V,?Q?gō*o\ Zn[Q !!D=[bMv\9Α+nW*jY_AF)C78 r{lK2h<$HۃȉF$r:'V g^Dt~^Cr._/ɎK I,. yS眘Ñr߁n[ԓ c"ȧ;t93ߠT7JS5Z'kd.ED$q+sf"CHT ߩ:NR7&l->$|eA46+WUAIxWa(Z(UHXYebGƩY2hl=JelcQܚR m3$/ɯ_ºk mN-7USc,woYU 「O'>xSYB`fY 3kC:G\ywIIq^,_T"2 n)A| 0W]9r' a6T@ENaa&2Ov#+aEkI]./7L<ՠȻ0tIˌrC{H(1] X'䰪l,0?h"*g}T DX@$Ϫ:jϙ!4b 7=h"z41h;gpf=#!hFp*g!:#Ōu * x#O8z9we=Mu=ezzˌuˋ%c)8)ZROp@^G{Wt^7՝=(;`0`E_ p,ZLT!Zz9Hq|sk 3aӧY}X)w D~0BGmGY«:\rS98T#BA5iQ&-ԼԖiA(T*c Šn9-G3hly ~Pec~Q섆+aR0!$ƘX6 aASK ڂ%%g+_g>tyCw 8i 0D[mĿt`hbJ ?B<ոĽ-ov(cDuPKk*|ηm_+O7[@yyCS3U(|.h)@gVi_z󤒧:\-݀'[<>-gGt9p8u'0fٹY$S=uT#!c#S;< "'RRջ^5]3dVC?npEY`SDʰNXZ#c?k -h4zRo ^&7{ةnUDu7XnF2 >=3orǢ,KWxEE=;ӿr0c0L/T{u .|}4C#@)fZiE|k?d81}ۊ9rDZ%Ռ&b6OLIʘVFȽV hJ0֟RC3 vfT Y,Sb+B8&)84 wZ}KAP~N)ݠٰ oYsëCo?S@vLD,^~#`d(˹Bm@de`:¥^],AHI-nx"((̶ )f3/g$%N5}@Es xI)z3<ˋ4T\ŝ{fЖ}ƹ3yxR#d4:ׄŠl,0$@9~2[|ӅrLWd;J T $HtGc]@?H`& ;}}OaLHn[ZMMR |$W2$mY4XnSn,+ bV u.1fWoQeu &Mfڄ`z pAlRש5-([kbliQC>bGB倅+ͦ,LR/ x \G@`apbaA 0ٵ1K%@\$'^= ]N;R˅/^ q0)o ~ wA׍3bM"mEkgL&1MfX9ړS1*P̺ 2V-oDhIjб|$ٷbOP̄&ܜfP*\$T S^-%^e> B Ek# Q( Ϙpӓ<12E=dL=8_6IMEA*jk&Ghr:}t&\Z|\YF0mȱE ̔/ކ{v#-KHιAJ<9jW}_ZCuh?Ƚ32lGPU՟^&U@4ϳǔ8  `(>XYT,30AF~*//gZ"zLFO4z*6eNu2~z.$sN v;n7٢ ^K5?o6Q3@o7@Wcvm.b̟&aWJ~cEGSR0X]cq ^9wKn`Pvͽw@,cs@T}^j9SL PY+ \w$F7~FP?#m:jSʭ`Ƨ#ngr #V:|z#k ]yҿhnt! p9zOoi?D;- cg+ͻtk[K,hqM=+d X}y\áX |,l6~m$PLw%`8k#fpK)rE&,67U:!B= qB㯒~s_Zlf/߳rt W:؈Nd&;3}sqˈ|~P0,Yڟ"386DgԹu3v_S{%[ Fz(^$0 iCYye>7ʲEA ԨX6\r{ߤ*ɽwsF]VS{8aZ?#a( .1$Mg+6>nZ4L"N#(ضǤEWXMQ L裩@:&F:,㾰Eޝ:>6%uѕrf᳷=#h-^ ๭XK=HUT]ԠYRT"t4~#F%_(X*nL |zQzuM@aP|˯,'U2üe+F0J:c`~j4_m"?+& S TYq0y! # F%ܢ  ɵ\@)3T&gRm1 uAzyFu' s:qnOJ7rZ3̩8Gegxu#;B@b%A<^3hP9ygBIe}[Wdrrh搁bv,B%4.8KY68w~ԁK 8!| '[A)<}WWMu-5L+--\L(, N*wH|\C hSE=6ɴ^Ia"~G V$S8a!pw~ӹ^Q$i0rg7OF+j5wk?p(ega5d: :Y]$KZs3YGT{i,ᝪ+ߦI u3FW9T?rˀcgD<6^ #neЙ3`];DGLk8avkX>; ωX1LY2qFAǤMKiAe^P@I(D|]#u%}S&dC+W%HcQQkszBf0'}4S#ch ]YX*fA5$чpqֺ\$x`?Ϩ1ZC2@<L uO0R)oY=jE.㖴HiZY'My'n27OkO(!>sL:gQ9+iI(YmО D\fVI5RwahGcHwˑ_ 1~7)d4 za5*M#cīvcAQ`g7o6aw<# kCb,k8PgJFj)brG8 A<Ь=uyUηcCJe7`ڪǦ۵ؒӑ\I@@/߭ce`'LKYWDc=שݒ6n{h!NZ pk#& f`8,4:tCN BZ浸O zhrw-K@ovTK2dZg!}RuSf5\ D BK9!"7_ó?єv@10l #0iUGp@>N/3& O ȍ ن)4D# Ҥ/r頬88*] ݀N͘18Y+ߥ>۹yyc c*ItHmMkus )ps%LJ+(!{;2aYvlY2Gs>a81B뽪%[zQiC2 V.loArnBƃ!}f ^P} ax[Bxa<(> u4(ZiV97Pٓ]|nALV.EL'&'nɭ8E)NdPwUSR @RC?N2jܨL67:l@ gPX9kKfIokHVE쟀 ]O78qKץjDG AM.N4C.r]9̎ل*Е "Nm zhKS&x6S*51h6&F<[IK/bOkH.Un%HK>E|G iVNMze_;W0*RfZ k~,e8NupAL Ml\x$q^ג@-V2h/sx \ ~>IZX H&d<cc8/ ŋ.fifFݘ}݊^Aߕf5SkD>R ዯ~U u`xP::Y'h1$8pJ׌}g}r %NcC_N0N6gH_ h~ݳ^$R+(woGEf@,A9_<% H. sy SK5 ;L|O&^bT/ީv0tw{c&ڿƔ䒖ncҡ<Hա"JM.$#`Rl1W3%b. SG4"uq, cҏF]H\_١OLlmP8OʧQ-ܸg@]R"$ AHXkg\麲Aʸ]a.TmTtL!S|y"e5 UU|/ 3Eդy\yĹ" xLaFXc@pETh{Gin&RIǨg)" N@xL? J#zRKеEIS|U+1J ƚJlkT=x;k&d:C,y(TO4ȰjC ] cn82TY4XfIBTMp󐷕 1Wkjɦ@W2щ+Am{P&$p"]xiGGf@Ec";HZu6Mp 6?$Xɫc3|ҾN(f9Z qB9%(m}~K>Y> &,c Fqetޣo`UH~NI`yD5ǁrz݀<}B4jv r~y2zrg,e%ڠTibUGX9D+rp-ݏ4VZ.研cuüdq_Ozf;eM7|7(s[d8ț2<,$@a6XxubͰ*E/ۘ!ބW/o=I(I"A5賍S^ga8?^+rILSzVx)\a(swXJrpjCCi-ߏ!KxܛVRxs2K È@'nNHCAf:/^ޗBUI.7DsWȣ1-:%f# ?,dB8XZg cOme3Tڮ( =Xk+](#%N+y6,=z߀HhQ+9_!tBzdAy~~bkn-f y#Clw=N7eU*&Vw<`SB ~7]&Q :wWjɏRxi3Q1E*;IX¡E^biHyrp&2_3ş9D`:[op%tC"Ih8S=6# FKʃ:| FMf FcS6a xǺ73!"^0y_?;tjY:.ot;F=[`ƹWtvg,.nqJ]Y }Oij̹ލv0ow6#B`n'EX W*Ν_ Ҙb8mhM SʴxmA 8!V+ck$EHĭYX(Fb #sw-Kmvؐ-qJ&x OI0/`X-ѐo*T0hj1O1 H2R6,lneơF.x#. Q7ѝ#*+K+.I#õ"?pAκZJa 1גo`/?C]+4TTgTAQX ѫ:!p ݍ0_f-.cQx8P#j<$max?./|E  ]+ч%Y#єC~D 1Y=iM@F;5OTZ1}3fnPɹ ezЪio\k&nC"\̾>7vm2ڡe:#'!:Qo0)e5Czu&НZv:n,' /&}eI`'b/XSeö e𰶢,C're:f&r ,6$Ic9>OT33YW] qְխ:eGcL_^tC:^u&ND\oбb{7^sVY0 qa? sVH+Ět^Uۙ_N% w# fՉA>q)dlq~9Ua!xi$-ƂNA Eu tНRj {$!frG.Ҽװ0Kjx+Ve-p_(/MBK׾֤k?7YXgc5\_;9*Zؿ~7j օ3rq) @sC3WvBnѶ]J mE4* ?[/\W`nt=&OEFln[]tu0 ?T'@֏[$FןqJhQ/k#%G0unh)aKT\*=TzpM񉐏 s"FY1P(0S]qvЊ$9 a  mE)J!+0 OL|ZB6Ҷ?-~K7nzIJ^`h|.{HWn-DW_U:ܯlɚ~^g%y锽It*&a,"WsBvp5Tk np -9dye: GH©vyr&˜)fP"VpHP?e}M6|;LRS(W=7ڴ[-cs*~gHON\)s u:\7n38"(5,0>p4$JI5F]椪6sNyzpʋQmq8=B;r|jjMwtlN*ٛZKL=ԯ41]OnFT'1 `I_QkPLχR^O9ci-([)G* s 99K5t l|5~862!H wuuxM?w2f3M <)dSWN0EV%ϘSE V%#C;>tNRXK^~1rݔ91v]'^Aچ4(9BрxlY)C=>#"{hzMOD0"H?xQPTGoa4- Ϥ^ ;~U4O$RU"Tв\+45rºa8؉V-EkC\~kcl/٣FL\vUrvzٵe1}8~\"ZFIJ;B?:1UQ08Mlߛ7cn%2 9ǟEyb;H=1p̆EZQ>R{_HL<=gN_9?|/e.~XCHg).ǰhYfAasz L%xL<Z%ع72p@&U]1lnt$agF,Rh[q'd7CQ!\HyRӸ`)S|+=]QJw\vwV3*oI&^nҗ&#2 C9(M*v ȼ&b@9gղaSGmɟY,5v&X~OϠ֕kwog߰FM/tQ:d%_u#qHY#X%Y/5@yΚw |y< m QK. 3UuM4gl⧉yɖʓM7SrAVwOߥ.*B3"6xEPm7zp_\Q /dƒtPֱKh}z7u^Qq#4CqT-g.kg3Pz΀[QA9*'^H-3zccil+x>M6dCQO':'X/#oeœ@7ͻ>*f;7|nJ[魪$)K&Q魷-$$hy@e=xNH)0j8F-Jf$膙VM׶M5Zx}&bmv]Y7v|QStBvgKIFE-Fû^`nv+4AWdQl Z=h-b(-qc!TН=;ي0KZzygpSbra4X@$܏V4o!K+M!~|l?mk(-Nc.eH{qZe~ ? vM9x[rL3̀"/GmKY/xRM6k!ǒ91xc%'w*g%ՠTcb%xX ЇfHC溫&msм^c }9o(<<&Q> 3v0wD>#5Fe"N !j$2C蛬1Ƽu!Fy'K-jǸy^#ef7l@v/QLKC+*˫S?lC w,D]pf>%AWVڐC憵"TUݪJXX"W`J􂰢3w-Ovb < W_͎l+N(WۮsR#]=՗k;QۨUljTR;10DZM@Jͨ%a= B W[fr Hij lFK\ L=cMݨrY#˜%\ *RG@aT|hnra ?ھ}/IWBuF.Iu>|DVrgx fwÌD󵢑/#xX}Vmx"'YaDž8Ғ{ .,{ a؉le9D0^<42XHeǛF󢌨6tP͹#5o/UD o牣àRK> 4f`,&e,s$$气LӤ:A`<;6gR4j3 ݱ_T2Lf[])(h$Tbʺ"aspj;>4%ǘP?k5`h`/W=>`oS3w6 UmjӡX*\gS.z:~j.kH{[EmKmŞ0P{>RrXvJ8~R(]f"kn擤eE9J N@{55vՅS **ZNUL,1ML"UX"`V#NGŲ  m7:Le|MNuįB͡'pyyКUD0(Ul3.CJHg6a{ZOq @QU0-hvMґٳbN1XD "ڨrU{af.$k*EMWmr Jc&X"K;?=% Iyޱo*tvTIQ(3VDȯ#'Er)1_N]tE]V)j)0Emݲ-]9aߗ24XA8 T}®H:k` 26zA\fGM_l9;z?')*PGeY |6_Z!V٦ !aqpQ'~ҬփZ|,$u/go}!=np͊BwwЈe$n),79M\/kPӦ<;y=9&Ʈ ;pe@?!H|`)7) W',[OQp0yc3GPnn 恗džpȳnNx# tcc  @D;y:Qw᳼Y6 ҁy8X7 l L+ԦKD[} xtP-۴Ej> oj % f%VY2k=?vE10^ tFo/SsOڌ!—=*̸1'ї81:~ SVDkp*-``(S8D|NA?`C ;Hnyi, KF ڜN a08)?%("?_,,{r~:0d6TĉQ8墱 熅h\4N»}f"QGtCa4 4y:f#Iz2aB,lLgv!_Ҿ=Z >pdO}І>(@N/N2!])(߸l9%V<"ƮN \$g[?q 1wt}D )B›3]٨PZ3X8V4#a6KIDzH}+vXIB].YҌTN`O0szZKZ˜Q0WPK>y{|[ghOsMеS*D[n Tm:Zzq;a2%L=6`g6v4\ @0+j—=^ (BiNh[j :D_Y}/CgNPoQfS*7>X(wt_ʮ]Pu,}4'؟j-wH? 2wx BF2+1fdycp U@yxN{W%sRXJ gm憋REgP %u.w O}M9WciXᘊCFY)@%)x~\ #`J"[MW³DLX^܌q'{c(DbeE|lÜA Ձ7n%GEWu-'<J4L&1'g\ۍT,Cgvg" y3HZϛjqjyB)E7N.ٖ(dyEDκ$ JRAn!? .liA\ u|==D,!;Aްs^M=10 ػQ/L96ZqQ8 <[|~2.(]ȖAnm$=kF}P-.8je-3_@{$NZV&g:DS<6'C.+Ze۹&+AÞ+ {-Fnsc7 x~x79:f8:H7 Le*Z!嬠ْ)AX->\S-TB3*ex7XZ4wSyY# 4$6ys@%qQ`@UN#}5aZ^|iMɞMW]h2ƕ(JMFzA3iĆlٖ7?/T9 35ۃ̙ee=`u?~q/u%ہDq cP}M!{(d‘^ڔ7ПCEY0J@VxiRw0mdO{t g8P-r09CrbVqiyWnsQڂG#\޻5CۘTJn] ̮=rwyCDJ%{eM3rhBbQ@|4X'+tɰ-Mn4EJr dVkg`H{'#IwW5X'OAhXwVVsV9iѺ+G4꒚7ɢj}{/˘h^mW=s ;=[Гc_xR8ƥFp_"=60` zɻ|ˁGq-0\ \)#WKA,+l܋j$uٺ=$ur=sO Tz>f휆n˳7Qovq]8{wb> ^ov<rn,V|b2?D33 ȓR2PsޗY#:naU`e2!ZLާU,]1xXW'ͩkGHB?Z{4MiU-ޏ qGB_柋㶖V!*[49z/H,E\@\MA.7@l#2FMGԎa mYؿ76?ޙf'˓fT,+ S- mvŗ $#.~.cHF4ϝSwJ5 M1‚L:xh͒j'QqiP 5"݂yYQF~ꦜ!~%HQ+gF 1(A(!H:"/יki0(ωS}%_;ا! C,"YlTxűj5p| YQ)͔etἼqz͎?I̚ +6E5j20Pɝ] _7#:9Ѫ&.C8&`kkHij^FķYA8Օ=(4 s~:~Q"MB`P=9|9}!T!]y(g26E 2'=m4",~ˇ`BvV0lɥmDd#PaNP 22# գ&\Cjg=Uptj> {ΣKykd^ʦo6:OR':tF WԦ0Vo 6{m? SL {VwO=eGΛK_ԚDPsC S cP+ش3EB_t-cyR ST-C`r+)=ꦟ{L ) (> RUGꚝ`l|pfnli/g%}?/$UZcǒú]ūxTH}l PITtx65!68Ȩr.N( 襬轺<_NCʀB51ZҼ!,&y\ߝU#y"ӥZ&)3GcY"Ae"/SfCV1ߢ{neܖ L!^"Rs+ȯ/Wz F_vOhX 9Gx(g*Es4qz9ſi5c_`ƨWSA2ߤ+WE6YHk-L |~j@%.F xخ )|r{8Շnc4 Bpl~V'&(X s)3ÿ çI:r4LT"zt?]rFq~nV5?jUr}^JWQv{q*W#nkǤ3I[b0I|M/}% vߑ~$`mkp!W~m/ejbf i!O^ uo4(yaQ[:#Âk&\ygaǜE^pd+pZ}A _KxOzj,)[{l<I[j~8T 4aiɦ2Y`pOjB9UaCb4Z^iQipA7} !DPyOG|8a) ve [Πp:n.BRznR jDZ.nduKοm +`:uxajā|-y%a;k}'glAWg.[aN]jlD:-pH#i3\C*jZRXиc?+`8vFv:āWt̻ o;ljvo/_rVzDR e,F퍤<"޼2켴>[p[ cB+zɇvm.b b=o[i?hCnrzfn!PHrpH jCHlF$ٺ#/.D{P]).yNoI,G"ssX4s#Cśr7`4 ;8mW!(cMEzҸƞn:PD h%ak\+#kFM`jӬf+: /δ} fX=]:7}ҫ' 7Ԃ|T?I·hrqx¨,Pz!@K"i8$l!iG1 x3obET)>v7WX\>L.2?A6.L`ΜwZ =w %xS# `5Nۘ.N&85b[|SkV?gzh+QX2&78=qSFVf>H< hEMolрN)gu`r rt,P3&q9d?=,>02A-7y*6I,ՎjqM଎?knM x}|0g4~t:&aIZDob@0|m<ע.ϲM>}ziۈ%pfg(n Q~&}Vؚ[?zeFs5V;|>&?R(B\Z28Ҩ\IgXq}}Gzmy&%Jڦ110\ؤBL i/2xunm!hjY'rvEnxMm "*lUЧQp% j5ւLF|'c 5D羭,gZ00O F5e~sqzoP4H|%f%V["_^^ۼټ~~J]'-8$oĶ)$‰ͣL YAo0!&қA}\=1 s#1=?=U #_uXlApx4_@"DRUQ"T?]~g8A l]=D?9*hg 䌠LCF=.e.źjW@[pGܑq1$C\z8F12b$ Ҥ 3)eAT4ђΎG0bIDegp8ʇnjGo P6R3=¸' PӮz!ſkS0*|y!oVF׸*dJB%dP'69߈Wm7IA:3*}uW`Y KnI1q%z#,xޏbʪds炞D!UX m{`bf{2d6l5|m}ut-9PR"bjءE).8NB f|q,cZX.f?M3&'2O-oa|KQK%f?PW<[ayҩKO7l{֊.m|e Qgc?b:<D3ᯡT,t,$ڋR]F*:a{ Uy22S7ވYǕG_'p0F"e.{O.GU9ߟs:rE|;&JCb³UJ!}'C1pA42-73r؎0O<{s@fė9=]A oXV2%lZd\ *&NjTwO;ZQu[ Za풖s`֫jJ5Z2ّr%֏$Ql@y*Jm.1km`;2*[]nYxnX CHS/{CDid bL[F.- k3V)чƃ0 Wln,Z-RHP\xOAG( hPP@ G0z{%u-b)հ?澛EeU;;/_*L~Fe?6(,W}m&{Ҙ 2Jj &_>uh.HuՅ49Ơ΁xr|Y*]]CZ뻋u پr{''ۏ >`Q. !Oh q ՟>lIM/hO0oN/wj!6Q2F$Iӡm*2\U_tw*`W$>sYH"ՋD iՁF,B5zr]6QF 䑥W!+KKET*-~ +TNDKPa?xBL.V`:MScײcӏƜ{1m37c?(^4 =Mc@0?YY^ *NRvZ|22·y_~Ȏy :Ԃ*CXJ?k" 8?0(ZcVj,^25!DrŖ[1FyV69C?^߆@SNb® TwB"Jȹ3:_,)MM1uLCjM h8ˆ&旜q9?0$V25$Cd @rӵ㱥>/zJA=%Q^LHKsy4X @$m/3*п$slIK?[r%mty.u^X.?uD?5}\ iAdp MW7)SɄ@+jgnktA=A4gc&LF[IM$zkzm#dY\mLLi 3@:5LĜ=3k+[R{U>~SyFv{)|JP ".?J{㙙:XȐ'ט],cT3xdU10Y|-IL9 ozt7 iK>YaKJ.xݫ߲=wJ-iV7 x!yOiffzC lf-'0|itג/Z5l -O=|wrKX߽qntLؙ}- f͔]e79 |~I]I>@5!1SGmo>ǒ,Þ+$4)Z$ٽeӼ$ ǝ+D{s.Q+Eˑ\ DAS,[iWYqoaI3 iVi9uWJ,B!kpL#X z |;X~u`yo6Zus%9OXfϢy1ѮZ0U=`O*P&gRfHJUH!&;vd;} xOsm8O\@Udֳ\x +9dA*~ܲVJne\ǘX' # |L}N&~L`kLd~ ! D.]\x~1X9`3rᑺ[)l"Hz}ͪ<=Ї v}| ;ƐsXDtg/?.TH&YMh*2z\̋#3l`W y çZ͟V s}x? jYa.M`N3t 򯻉~$AJ&]r~w) ts(Ņkfת@]1v?9(TLM7$ϣ[~bUkɯ1 gX 1^sj_䞨'ѼTH. (Kl?싟(ė[sGX#hg}N?e9tFF sdZ|)7,[j%/'ꌷxi| BLЪ'B_okA}@v4ˢdNjYcl/RnUqqxE_z2piXeZ}w?ݦc)?t&30_bm'ncuZ7u kV8p3H.edEW 6,8p]/j,1s+kYΙb>՟& ) x^\8hiLJz')¸AKFV1fNH֯M݅W.Zge:.#f!l fdiH|7s!fx#@ko/C߅0إS&[(- z…sH ꚰ0涱%fs~Iz]dWj94rH¬BH0O5"_%7 2aֈ&﫜2gD@jp|ؾIrLE FHPcp+OS't("Vi ` Y4\oe$[:ccZ hM!zt2~ [?_k2ժtnp⟴-{Y邜=_pS7uNR;Eja%ǴmUB2><(_Hм|"K}Ud&)bxãܐr#O/6k'"hQaS̱.1whxx%LE~AqIh8 K6U;Sb1pa%N; NmZpV9EǰIEtދIRH>s`-tdr'5X$ &?xGJ2p&Z.Փ c'):`k rS"ecJS." [;vIlNWKܧLP?Q|/ I;>^nnDM+"!Ipݔ EvnI5c#W+ΐ"yM븑vA]ˀW< F)wө]< mfZ tĐ$B}]E44/,&;QooIe&.`!EpukDA@smfOĨ}tNXj |}o Hͼ`73=) tb5^ ҦSBMo.yCP0EQUa8>=7S0q}2<+<.tnI7ԾwITU y3. ho%rx>7WcQRG 7T@ H.dIWkJjy/,$|33 `oV7CD|rZyICQbz`!:]I)7 _,¡ҦL2"ǻ!GdBE35+ gΚp}?ܱQ{zp΂:1bihW&k5!O۔lPe*_ޥ򄏺&5! l\9|%,)X^8hϚРhIG wC2FH)I(h{|T[0ҵj#Q„m. {x2U2qn XMu1OXYFLD3rs͕lX|ܻ\ݢ{]1֤5AfAdPz_W51n?I~BRrwsIe7K"nl5 cu]~oRbpŗg:DƞTRWʳmbw:WɊTo NHKuҞv`do6MHUOѧp ]_v5;fu+43Cx5e}%^ t2Dk/[`o-ÆĄĖt0dmC6:0G[!( pnO0vԯX^v&*Ӡ'QR<{}5wC22:+$Uns|/<U:OF'A_/Չ R{Fǹ kWAaI8B@^@y7wWY=aͬu T5ɬٙ/c6xN=|cðXZ\Fⵃ 3N4(fhʗY!i~(k6"d!U^Wrz4rO}|T,>/,Xn6zucVɶ2ṗ4O)+[ y~ӛl TܣFk^cp2/*tbL9K|d*x(Icnpg6m@en]1=] ,qޏ~EBe \HV^ډ NmK=:'%Ll:*JnOzuiv4PxDLtqh`(RGRC(hd%KDAE.хX:]č S}Ӂ>]Ф(LPz;qĄاu5-`0Y߹¹j@۪tPmW{i)AJAy*f;+ n&V]?щ;H:\#2$鏏8ZՑ ;R?S}&ջ r8ч}s&s\@pKSDED1}axym,ǐrg%Gp;^2t>,O^n(Q)nȾUNYG;񷜴Ϫnѐ=PĊWmHqϜ^2z ~\QK_\K;#eq9KVg0Oh66R\E B \ ߐ)tlYOOWJ [+5]Am@v&znT8z5C=uf خ=eZVPƣ=s$ Y] M k$IU0o+MWuBu;Aa͢}ne5qVNUfyALD>L4# [:_g-2µ_5+Y<=vi\nmg& FH{?+/lS BK6L]?t8vw{dɨSe'6, CkQ'sAɅP AF\T6 o]A0cwh1N[S\+T *S XX8u2F.aڠH #L&{zU_(jO+ ^E!LwsbamJk=[Sк Hztaa.&Y <@"}DR Gan+~0 @R wQG@"[j4 >]` Ae(vj43h_,P=X)M~{mH$?ICd6Ch3p $j:D: :;>N6BRU:YĊ ;NH- zk#ܩE%n78$~Sn*S{ "?-uO^p(y>\L3j G7;b9sĻi>Ba,_&\Ьp762gnVhWZ"2Okh;` [LR.I iZ$ w}K^gS~(H}ucϽ4hIZ{pIJ'6VJX9@kvnuEph6Jg4m$oN;1ުf~@x&NޯȆufP[sucP%.tQo_{ίɽ-Ml ᣯbOVU(2S0m%wY\od*'4t}BOL[<4奡%=HCRPp z3w9q|T}۽[< ^{Pn,Ә9t#Ea#Wdל7.w?Nx/N3|N݆&ugrV!7IXIr0c$jV"V4Tto*5}cIhWFIE>W}DmD~*%Pꄯf4ڒEylj)gfnaЕ|>}M 4H>hD&Q;67D꓾RZ( E: *~sď2s6Y2ƍk0=xcK.+QʚkFbwSYmq;IVjg :f&7u9;{۱E"&0 7Ýիu&\b0my}I?. {&o]`*o&BCUU(4d}$뉨/t۱rnZwEn7Z^)u=rW֑5oOa2n~鵹4hU2'7õuV2ϻSp4L^{ݷ$KSNOHRk-9D_z]jYbh9~6M6i퍤:R(6T Ч:PfΖ0bww`TMRV*e+ @UhD x&Ydׂb`#9WgEvL5a.aY $y蹝dUB@cD94JQ4-fܠ\[ x}U_>fo , %_ΝG>۝sP)`bS9גs5|dc, EA:=IWm2iw%3 nva4RЊˆeǔ4܅s36,v];S&)_GBX 2D FަURyocawǀ% !,~ ^LG¤P+pAD`RvƎv/xj8g0bwH4 +' d 4 +oJW5Жj%"}V$NYp`Y1)YS>^/ܒVi*rKDFS0Pwm=z7Tpj&J NDN) $I&x"G~ a$o**x ;*hǼk3 { 7>.u&#C*qiKB`+1A$w]:Ih!ZXL'\"%!W YZS39W{ gA~lt9TN}= !XpH2fRZ] )L2R RvB ^T+k7E1M<. s3f+>6Wxfy? FvOH'"`Aav7m覨/T[YPY&H>,pI~Qҕvpv"m0sQ|a='1_!!{>NF2A$&&IpqpnVD4a.¬؋~6WDK(w`85D ԴAi K +|+!X?I%BmjAwُE}WׄX%S*S #H]5Wc۰K@*y'>hj SSd_62j}H|{4TD ~Z^^8b2V"ўP\a`Ŵa2$H;u=4mbef)_RWkMBj ]:<$BNPȸ{2!΢.s t4Q9_0 'd߂LDZg3j,TMZȨ~q0٪cJ, [fYs1U|t5Å2}ryB\`#(.ȋ}S# ^ov d^ٸSXXEXd7) VKF9n?NKghBߞ" w*t ]joR+GLyy\Xk,/ >Gf^2CT#E]:/co?)K]3 I?d^n oyl}82OY'Q ]G *g!C=gIGfΐed$aBr.?bq̤f̋>8{#ىvyNMZBL$.$ͻjͺ3s]kbBnBx%wU!ԏBW1U+sp? ܲ%8*^XPk:^6tvW=DŽV83kqn)bD?S`W :pcX_(v7:ۼWfN6pQR4>A>!$hh9NBtI?,U5,Hlq/q>DgYXԋV}o3sA3(mZK-Px&{Js.Yqh' 7~b{t)jąW]:ǹ7ҳW{ 2ƃvM0k+,t.V6KmAhwRo?;5%T.(;ؔTUu'Z+-¿W(?b=q0H&LYl([c K0pׯz_!!B,zD: S#[j\Q4f3Ea3ļs#鎧%К=eA,kj>SnTmk>䙅*;(~\:?3$im?a a(GcϬ6իk7؞ˏ:$&[RnCMS/鿤_C Fm,mo!KGR 2*l2.PcݗH~f2 ٯU//)^X3dyaV 4Nm 3WUm+[uw>{'AUB+ϋy +0%\0iZWMJ z ;i[7\ؾ@C!M-R!cbv)~Ь3)ӘʵYq%6t˂C cʼ|8У/ ֚vAȲkWe*.|ve'QkGEd-iJs[TEI!20|YxJ_J_ح@"K,RdR2og[K94~.PFNkgñݸ~k^^49{3Dۧ22Y]&13N׷NN'5Ho]hp jzM!Ko\aUڿ׏V4 Z;-'&hsiw ]:םogh} Dism)RmuYӪI$g<[ eYON?n%ȫOܴ#cH~2·5Cup_:onFe ;maKeY}kwf/;h#ԛ F0-[lMWoYvT2 ގ2~2f;Q<Wei$Ts*1@EK- /!wSPF'k%wPMTMdhr;P_j 񭁲 ,yrLzn84sA3yfG`R2AeelTWz'q|y,?Cn.!^>8,qMg9җB&I#?#7s ;†h;<; }IU xeDtfYC2#,:[i aR0F|_Nm@͆6ZBRJIy{.Zs#a`MJ!6 B1يǵ#Ω؞iOIUi[|o.VFAGnpm>/lebe*b ":qhhBtmv+Wn۴']G@fdA$FaYTڊ&+oNC?1K˭B`j Pd!%dIQlΡDg9hDMiKRy+ ÀգRӦq7|op$mEEd=5?P:UKlHgUʺ[Q3is7i86 QjpW 1G}}H3M!tM J$LPo]J2Ms"&B1(4&#_;B~iR?"m^F8LYORcwQ" {2GZ܃!ay)i(<{-CCvʯ:sXaVv~;`{ie=$dd<4\1,o5ܛU^= x@,#-%jwMX3S4 a]9x~&?7Hb7wv$jC' H#+JAv5,f}u}{7n@˯ofDLc ?°_e6? t'i@ L_Ev) ղ6mVg|$Ίp`ǣiJW Mo=;ۢʻŧ$6ܫ#@V(j}oH F1rlC%o_@fF'l;SoT𫪧7+mwdBr9XT%h#ÞQEy)w%6MWT50F/98G_Vn'@;Owy`騣ʁ=B[S]hߎ; mX~T*i!#Pr;5XJK99<~K :^{椗b^0I8hijdq Q" /rrW&eU ./ ƳZbO ' ->X6Fr]YK vL8qCfO ,O`,'k>φ Je ]$%„։*dH>fQ,Eh?r;?ޤvjVͫ&,gžp:u=M#͚64F?Py 9ML_^x5>A\yj G j;biYy٨i, 4X/g3`JZIس8PmgRB`J▬CߡK^@=?=pe]] l%IcuVq]ݹ*7,@ٙUm? 0"n8 _*$[6V;w ̣Oup*W76+. iKΪ*G} Wr[Qb.3Fjⴋ<|޶Sfєcz/S{ɢ 5;%Xt]ZBAoPuy#LN7,$-V򨵼fGynK^!j?}K  ҙ=>SŸ{__%#@xDs*FY9*[ulKs639qf/|{P#;kl ՟6|.vZi٤\{Fējj' z#ܡ p(F|rf y]t|晉`'Vb8j ѬZ Oa5َY4OnYg^ioTsO}xѻ,kɊӷn*Sk sPtD.rf >+\ $+Tk kܜd-UI;ĹY?&&QGש4E`Aՠ/cQr*amW4$&2ӏ`<(X|)vCgjx"<޾\ѻ""NDyR\ X4} tm/|A^˅zsy Rn-2QAKnO4dVmF 91 rEzo w\Y"K6^ei+ ؜meGpm٢'aPHzSM^܊xa  =DpΚ3^(Re|Pf#Gr=:o0יxPծ8\G;Yҋg~o. t./ $<yUY3ny, QU~V /d^8zq-l~ude6 杬Y8/m40Ǎ%ÂqJ!<$!D(PDLOuk,3Ƞ(rӍ /Xv8 ]_+bg$%d˼)y/~zUg:: TAf.,ߞzF "T\4=YOO M 5*\{os72Rމ1 G"Cz0iJOhY@0T)j>vUu[Ȼ*ij4l<h`ʿQl)|j'6FNhjS:HKa4S ,d*1ekիGz* I~v`1Gt!l4of).EX)ՂXkl/<iTֈPkBcufOK˝x\u>Gi8_FJU|2cH LmwB vNQ6ECa.L $ KqOkMhxgw8t] YRJ &VפZVhϓ9k}'h'➾K(wddo IB*x0@jmOw4?iw-N Gf2}a°26en=*U$K_ N_a|\&x{oy|>f/&,+ȼ0=.hg\s`Fխ3_@ʅvmǖt,@|>ye#C!"ptND1IW(~L (8t6~S5N,`;?| u7T ``Vm'[¯),%~]/8_fQd)P_÷z)Hi:h@DwgL-58lAYtCttHl'`օpL4GIOdi\V1kv?NH? lKV,UZFA(jWv]ZȤԱ0)QF ^@GWZOrndBܩ'!+)ޔSU[VKd:R1̇:%۫nlZM%WX(d@v"| wx]ˣn.ԺtXov-g& B v]&pzРByZ?0A;>m/vER6WNGJ jUD9˽3XX'<b[܃:8<'蒐%s42R,I)2'P pW2~nn eh-S+S\vأ9D~dbpSHNvѫ W7`EzČ+<%"uxdHy2NyDW<%QTxekLͼ,n<\z)WK38b \֩mIkClTԜ`gkz2p8O0h<gEʧrGz"*Q;ȟa%d:9gYT;ph/+EkAF7ҿY](Da嵍螐Cu_E1!q58`1!˧>g-E]e6m͍7uӧ6"i ^߲ƣYS_i0sxsGBHȠzպFtw*>kMΚ"Rs~߀ߠog ugTN $[VW-Mv}]@*=Tsnx2ǧnM+>&$>,j6%@#{NVdK?u7-Jcz'K&%߭8k>ceCc)Ҫe+=1}#E -,?*KpXMqA΄+ h 1 gV QLFnjЉ AԚyxw=Fe{tqPԭ m%aNTUcSsnWwk{ lY"$jO 0m<g5i4SqpTL<߬1HX^Oy'gl12 VYȫoH܇ Lg so,ree0y#ו .yT2'#W"ZFS4yuCgrPA#AR<#?K&hL"dyhDtB[Y*Pc%‚aVGP5{BBrs`@e!3w8w鈖#b4y|<)݈OHlQ<:Hn}]1R(a_lOxsSek4X D+! )vcEF?ʅ>6z 'F~?dmYLXb_8F*4A}6Oo!'0 /\yRTlreؼnc$ؕ85H#LyqlT >BX }:H<;е׾k@[$1BweR/Y])v@M/cPQhO<./ŵ)t7 K% ڴJPK1sH@WAb|i[#™mqCUfuo5&0*W=iVά_okJU PN?miui,MZnaP)PtڢND$a`%keY7*n[ %vDⰉ롧WYLI[}mU!4bo-]6/A ,|{k-+G8ȚN8z\LVC17)!cr)\T3KWds[LϒQ#^au,|^fOTMp  !-uVo7aunmQs Vy!t-;'{ 1)D4&P>sTX-).>1{SETY.·CȂD\(G5ope[8,7z31LjywdccC>QaV"[7IH۷=? |jSiǑf%ʩs0A G^s.Ee W%uYˌ@ h6O7q'x-)JrL%kZ#˗]jB0g'p!qH1=!6T%W2M (b)~AhI)&S_0AlTʠ)j1WV6Η9柏ۋ-\iZ£|5)*dwfޏ:a7QDn=Cy5^DWv9RHnBX/G7r‰r`3+Oz4^vRiޖҭ]!_Ա%n%q#f=o#NJz1%l$*)ಫKy}+ˍ4soj0hG~0\>Mg< /;( ž? RcКM4 ͨPxn`ˮ9[ $"[a|Oܑ}C[Va!StX*yB?x^~DJLaIK*O.w*bbIJ^BLI)t AplcJE+2P-Es5Z@}1P$ O#t'uD8`6/ WF7!TqWC쓏aʸhj1|L"Q;l)FQQun]ۇ6|x16Cd{vou`kMbe# w8Yӏ/GTN04gz(RدZJ3Ndw,[zlSACsa1$Y ֝f@9d0$nSW ۸Z9_WR!\l6d bEJ -,Ly߇5Xo.HFHĂ S=3lxrt T)E(8kMÎZvxDZk-[D=6ί k`-~ZwaA_HduH`湰֧&`M,֗ǴMB!nQX44h߫ٞN2 4e1AI%_n/?w<FMo|Ŋa>ރcee$9Ld j0+,JC'mi_2sP)KS%Goc}"> _O{KDԞ~YKJNxlGpWA+6h3MYD0( 6 ^sUuIDL޹ '@vxgGs~dɿ4OC"kv`zADI!66ujE^,+gyKaȜ A?2K\T}\wB YI*ht< #D]O2w ۳t4t9>Q6䐻z/I@pU7&}ڢl8aYZWT;ėqk,T/85ry~w9Ju}j*74VYdmߨV>śZ70msw`1h 7"ʍ by :T3S L#VjeY4bj)axi%>~^a?{0195$ 67smNu F6x?gzg[oWQaO ܖy`u@: <-O wlSxL׎zRj/Q\@tX]V?j>?!aL0r͂Mu*"5S1 & .D @05J[S{Rial: 3/՝x[J>_e>wI C'd^hM6Zrћ M՗cR+lwЉB?a`y.d-BC)ŠL^mLdx(D9|6qxڤzҋ3 hŠ]kKw6Ku>%eU1y{焚/iA('<Ob`kv/d(Cm9t„9!*kVٞt$<)&Hx (vBWYPHz1BN _̩t:`y&08Jmv VBNˆ<^MBgY%D$e~VĊVK~ ѹqP=0OF{0o;w.~*Pi,?E@n !͖E(&FNmQ'IoB؟H7+`pu/ԤfS 7pT 0p"XIA-OL;Ov-66MG5\voHU/dLosGY[vxEAF5(lQӜ/7Dnea{V.4r%/GVA-uhQoq9,UX%X~8(P fO_1"씐`̝Y \MI*G"$QYISlJ {nM؀e:7.H0xkrj=h 1n B$t,#G: S-mR{At[#ψ0UAU7Fk> |KK24psW: "Á.kDA7ϔyu7 s[ {=|]= ]Џoqw{H/(8@euk]R($z}w *h)]`"g|ID:v*?葦Gk:]-"Zex:[ F9t-͞gI`Ǒ= /q~`TR!,D' ]']-C=n1aj%^w+qJ0?mFw%R E*MIDZMo_<؋˂0Bn.4hkzKO@7qҸxcWК Z = O1{hSm@b ~YOVP^ kDAGspEEDO: m,%ZZ0]l+ ^\iЪ('/i{RzwO֧!!W7V^|i1~d݃`1 ۲YHvhJgcUfG/ᚓ%+!ZfΔMڲwݗ B\6>y{S$46 ^ȉxj0qS6Hf+ 48o߰5Ltxt.|ho'(q-簒j Wڙw聋cҴglQM\FGOCHHvJ-^_kQedUv"+mK5Q.kZS}L؁Ia><q:s,8e1rF%_/ojKd[vÃl0?hlxsR÷r/'KOi-}Xq(_)!Ȇ`F0*K, Ѳ!K\*>3 Oi#r ,Uaup*^htVX7&-hŖbGj)>~er.%t4ɼ}K2غ*&p- V[,)GdG5?Oؘf%m6%f;ޏN]UH\haЃ@ŬzäX iƱ sY%V v[.ƢjhRdlJMkn]c55-^d]?`U L/>L4vdUKsZc9_)+:}7,GK&}qC,u$4=9ȵ<7G3H!\{'9gD}J\178oXozx 4,bvfU^aѼxʓKXqLe&y;c-介"&mo Gho =g~a_beyh#}0/&4r,Of~"k ,Ɖ#{ڛo$aG[/EF4KUJcGsS>X䛄h{SYfaR,üe4J}G/ jl#xp/m1됝ykQ)^šȯN`f() bx'4n '³Uti2,q8L/ju%E:AlNۧgnd)hW_۶hɹ99VqY{baϠ!0ܞcͻ6yx㾅_/\z4>'S9S˫ ;eZJ{Ⱦ>%8ϧ}]6X-/E Ԣ@AdE.qT1[mZUwF8yTb2fHyQ;J/l NRƗm}ՠ/T`Tڽ*` qYr[pt<\CL0S_DQ 2J8/O5jԐD^]}ڜ1h%1q1v?F-br6NQ6- `tvKd!/.0Zf mR H飦dGՠ4S:M0 v-tAC2$N @h;_-XLչM;ѐ9K(2GCѨavʢ1Ӡ 'K 14F?o)9T5%C{;97Cv_?pD52&qSjQ]{ Rurg)ڠZSti^Wu!Z0e1iG (@[L*ȷYG?{J 1؆{>@X< d`cIDcJ`kc=g"6Ji+ØlQ^8dVaqpд9:V'<;3;];QJvF0cDY.fPEqY1L-,=QX.^l9#`AFUvϙSΓn]`H&̇2ij\yR"(P+nIQg,'R6TO^CNN tӴmk0pD8}lq©m~ < Лה+tx^4AjPx9łG*Jv_n`GIuZQݾˁ VjUK v́c`AEmk]<鞰ׯ\M,H:~H!A+3h*F(}tc.ɄffpYa>?аh/_<#"~5|, <fՀ<<ҾA#]2)/[6<\Crے?tWX'_5$W<ۍ^lqD!/[0EE5lJ?tnFa8z77 }?{0'{уcNќQ!񐴝І[pxȞhc#q L ,[~`LAz 3ju beC6Os Ӵb׋6pBG )ĔNxcFen{߫,eb_vz&\ }J#9A:D(m@y] Sa;ܮSZ}}ni.ܝH[Rgd;bMS͟Z/+Ƨ *}֟!ϗV٭}Tbem9̜aK$|CqE{w}9f 3>x$;??9S$҆{6OkQy8[˃_; %!bSF@K?ve /T`.soN$2 _ 5V'?b?z$, tkGg{ kV&V?E"l+ӽ"(/'"]))-7<.q8WҠKSh+ϝ?RM>)_12ib_pxy˲Ʉ6YA9biW?`Z+w39{mW֩dUz9|?ͯJh<@}#_vڢO =9% h/+Ĉ^cV+H:x-H. #^pK c+;aJ6a: /4(~q^ҕtLh5ILYeYi#ؼCS2]e1. =NJ8%D_sVVxL( I,t,kc=}[Ptj:-Si0b1]=3U*^H9غ$):"UE){疎}Ī ") :`~ @ig(7P[Ymަ b+|4+k4۠ D^ECy n_MO!=?ó54Hrf7p'.I~ćkeH.nF>:غN.zn [?ICd# $BM}s?MRx2CClpAu)~'**786R&.Wg﬎TJP^VBgS"¿¡Y-Eb`r9[9BTd86M׍0\*N0=Fu\?!az )-׸6 "<=SNAADRvoYQ60^ShDAV2[&Mg0L{)E\Xؾ;sEAPd]z{K# :fN_EX#B>g̓J6:vr I#xzN(uB a^8j80sxۭK^N =E6%:Gϥ`ZU˟ j{ZF>KxV/E曤 ߽6jfȬ骔n}/{*:[ډt$ǏFU\'ob:!oNHv/LۍqW ĝqy=" K_-:g{hű`ߤz{=M職1V/%~HQ0)f6}d8/ 7n|;-&^ɰBpEAؘ*]E_(c'ǁ]zdOխCO֔H "<}@a~p"{9gdx[/DcEh&hK  V×)PO|ˮ[sE~ M8 \" ãpuےh#5a-3c0;3ksS9_Op僮Wu!~xڱ9j;qW_S4:')rni.7KR +Rb% ?*$ *dUcPabpq`]ڗf|q|M'ɣsg[;$!^9ݠ2a졞h#|S!Fo.FT}!]*N.kjGs/l2wBKk1bW11*״[{C}ьP'F!)z~Dk%[ R.GxLf1+Ygq2l =7!g_֫[.#i!3vR~(0޾3mb&HV&[;G 7+dwZ"Q"H7!W}-9uL< 4?/M#bJ-h`OS@ #%k& HK{qr6ᵇ$'_O\\',D463@=vMc/R}i9rt(/HAL;Y 'P?nq ?ӱU?Fv!pOnj$`hoYiX+#rمp)GP(UtNA}K0Ǿ B3Ecd>_Qm"3, >4OGIVw?MA @,tM[V\t^Y\xCr|8\!UFv;CLanYvNXy69rYjی)Ӣ f(kg +GQgtF?J42tUl{ˆ'OyO-a?R4QNx6D1󌺻5{ĸMfd7dsGWvGHJwx૷\-fK<^ h[Yܗٔ4\,צS=5Ѵl7B" tN¬Б+44 N 8Wh<Yd8AŏoFfU> XPeTͻ*C{in3q93`("ԣɃ+(bw9) +\ A îEf,7z4M>|†wR~ĢeR˶hξOx'K؅V\w?SR4: zw<`ǹv5d,DěX}ˋW$4ne|\}YM1F[vTW8>(Y4$G{}^"qY暋-z|yr1cpjFICiޖ*9E3} hrl.Bt rN+E= MVΫ$qA)!? w$.`T0wFE䢬%pY%WM x=dW "!9PFLs[wMVrfsxFQ]mӄYOB.  SwA:* QqnOrZq6_.kt. ջ#1VeCO%4vdoXʟHR]9vvYw'+=x(&kɒ[ ٸy!eDg8..s4Q忾ocB, \ե{ Aч%stv͝iv-inzOUvt&O_myuC&NJ24qCxE8k[wf,'%x1y):iw)#}LsЀJMJX!0;m^5Otp**BїME52U׊HƲ>\URM>< )t<:2]{qQhV֊d&nZc 8bFt , 1ȡ.>PAB5b8j.|r}Sئu l%/ .|^q1"O Pm`ꎉp $(w֦ZSOdUYaˉo\zc$NR+$ОJq5;I\DchLwdc#l5DS,BCi٤ERٳT[3mZ,"(9 #@ ey.uVz Ec;utV[vR `I82M4 "^zvCW A=xV="rp;\dֵ4\J'AEp3j4Pu3}6J0PdDC4DPqLO.szƾUdU 1IUSua*ḓy}0HF\?e侮?!b%)x.8^N IJDj⚙үR~)E o/&%J7C"ͤoPxfAB*}& pz%v*gzFmGŔ뤮jUEMJ̝B q qu"f*&^y@E,T:yj\ʫ+c4t2VTڍAX'At4Uhy=bPIη+~Sc򷏦N<*!BA:N3{fouӓ)c>}<,:rb@',&ma~d5__r32?{R Sipk䞒1Z1~.'ῥd !;D@ى2{NjkF }?p#7X&]V[隯D@+@yf8}@4vwQ JBR*!}v(fޏ?S|kìуSٜTׯʗsnm? _jr!8tVRj b|IUaڅȑ0]:8ShHN9znq>7LPSH&E]8Uw=ڎpDSra}l冚r1G9!i}K>n ?&x)buwdhnb#iH:`L2B_[E#`9X6|2:IkixW"'L@|ӝ(D.:)_ߢxMV9VۡNqAYE%_Br?'Ab_$E%RJ>m|/є@TjC]V^-lh޵Vo~kjW|6 ܪIrp?&BM RTC(S{5 { AL΃LW+hr\„kkDu!>9 Uq1{ 2E:Yݰd.zOWU\#LzU՛*Hf,X0plH]Թ]o|1bg@^fgd daprT.FgT«y"Y35A2YkAڴFR_ +WG7ӹ+FAoyklNR4e_efU9jmAC#w3J"g 9nL c/Z{~Ŀ/hX jT}aIv m%PyhUU"πTi)]z٭:_i{l& ]G! הHvϙY-qS 3-3Up U>@ik>!HkAZρw}ޅ}gO7Q[WAEO4"+K#7yyj LPB aug.םXF+= m]H*JuȵJ4"ҀG!QdcBv8ujM˿}5܄AEPH FoqO[:8^k]x;.SH̯kb?&)brR{g@iCi/ɒMNpl Vq6hu;~$zMLꅍR/B>@7b#M[a{`e('BhDJmZ?v[ V*,^M^'moW^Q$dzWJt*NaX7 jLYb56P 7M CJ=g 1SK7aՁ3lB-6 3>!uq6>R:uOQ C:4HyE ,Vq$\ǬOꃉ|MMHJǷ>Z~I#߸`|]9gs?@Hû2?2ZT ʹ9&'^D,੭L2V:}^ ]'5}>_͌ h*O3J+H:)9ZH\{!J@Q&W6b&{AybeG1N>5vVK `h7j{~5 9 P{mdl⩁oNF!"q|&o8ah>➿zN*fI4 (p&z/| ĤړAL+5(9J=ZC.e:(#ϥk^dQ!Y|dJ#Zʧnz۶֊uP O n[cj⊐])xO|tr´%$iU_N.5#,;Cbj=`+617D(y Lg'_#!a'G\bGrX Vʴ<\)}m/w=ȣÙ[aP-,Md(pYb˭r-X=󠷄3ј< SR&ky,D_1w5>^Vκ'hiDA=-p{NN-K삷.ϗ+t&/ c5$|*$(Fۥo,? M 僈ݸqgCJM\z E;:5=<-Z*:2y\\p`^[3<: 8ٚ+Raҗ|a%=VZ6p6B F"xy+Go7i ?L}AP]ĩ0]WK8Ѓv,g-!Aut4# ~);,XS/^? q2*a7=־ׯ 7&|V Y~WY[Sj;MO*2!oqBˇوbBw8G .κ&]VW<{T|9& %R$h#H>c@GY&MTN4-e]v4 c7 '1ucM,zAq ~9Jϗͼ5D\"& %Yۖ2r Tw mÚ^έ"9Kid^}=kFv'}DB îe4d?7\>ù"C"xSK|L3_>Tϱ fY sZR[]Z]fWͬW;k=V9DzF(qժbnOHj\r=1q́턭]4o;#q󼯕dsXP'RP]No\g+ȝ|$^RȓEG}>+&QeM(Ik=ΣX| \I"*jz`Y6~Z5Ao'O0X"j^,}5(зJĜZo69MKucc'xȎbq N!A&ﰽPfnTQbYnu>AQ=^ZqPSUs N ⢽afcN*y֧pEJşh|9o*2eޠՒW啚?ow>&g\N8F1%s[[P^滭o8QZ\9*WRۈ2wh ˆ}om$!1U=^%܏q+|Scv/CJn-$7E#K U$؁P5E3hIYޘ_w[y(T'^@}FAhIr0 TZ'C<}GX7>Àictǔ"`\L^f|%t;\Tv<.,I\U<9'!wjֺ2ЏEK:g0""Tiu Վ Ȕmm w?Khp+)RW r^<8g^;$FwYCI?|~wKҒ,uXt7"b\N٣q?Ph1º[lQT Bok:T-G&$*Ŧ'5@ƕ񷙿wJ'J!]>gá_l/^a`\COJ}Xy1X!Hãβ)EԫA/ b{"2F7^N7 #eG{rG'vg~}E{rsoߎeǰ2cHȀeb/q3ҰKW ^ c:9*M|}ٸpL@+IBFiɃ%ْ XJ:*]XپӨ|Aew0G3wpuaBx3_0OkXr 4=EK@z|tsMmn{{\&4huZٍALGEL]=xzd3|æj:MN;oP ,j x2/@@Wn)tU6g*M̖(lB#nI-wU A`O=F7AY +R`"N8JTɲISnYeU"r @$}k$:a.2 ^ 1!$Eh`:b؞hNfE_҃.d/ 燱1[%W:}*?LjQ"ܮkP4NB cU4hTVb19 _̶zvy@=hKioKnԩ^fwQd~" ?^fBJsFQC>tF>l~Vj] H^zHp;t6" *%ߛ@S-g6B> +i ~% {?dU;)JuYW&7I?s%V=Ê<#e4ۉ"5vywnv^xgFrP%  Q 8I_Wփ`?P`[-\M2sk4lk/Qs7fpTlL&A3w p^hF:缏rnޘTqk+s\SYgVm3}ѫdw <ǰIse(s` 6lyoZ熬'/TܴLF ,'Qp`֖j :*%bo:ưg.1px4J"(O'#w(XpXZ_ Ϡ_[WK {Чs"TP$f)w*gq&xsY> "rCgtv\) ְBx&Hr A1̉1e2V<`WG7Ȼhs*.ic2?T$ܺ[Ff!bo&'%h0 &х8!.(N8;5 lpocޖVWweO|˶'uy6Qͫ~bX&M(lazXu @Ery_O\4p1ЕGmAػiŮX\ו%M/cݖp2< }ڇ5}6ae'6U;d3:~B=K"ZT'ӛ',pҹ! ?ȔԐ>k) /uMHGnvVʆ>"1&jNSMzLY=aaFdMZa;;l'd92;CLoFX8T+^++eskrU=a7V͉xXwi~*.؉UyrkYU7ۘxT48r-195vBe^ )jvI5bp x{sAf*^U"CO2[fJFd~jCuu[9MMӑ+ޢBoi`0կ3KItaޛ{=XYe7._;قb (>deߤ'| _UIn^ B֐b05&4uT9xԩۖ'Ա&[p;k)!;Z #u8艁YDY4: یlY@*sFlV)jtE‘l* `RؔkxKh'zpm`.~ÀrTQM܊ެ(h͖lʉC\œ@e]X 6Qs3'=*DB]@(%U7"KHVSJRZG\#6@370۷ naȂ[[`{HR*y߅ ]DJaXl xt+)H`'5׹lsS+V32=&..ZR9 )g}RYFjD/-M@4ːai>FPZ A|)KG(AY]By -/~:DۗxĺB:Q?9agZãR"8!bC~_sdضA۩Ip}U +4J4Nfx<;wTo=u.D8:|ocpSsMjI.AU\P461GK<MC3n܏=3 fg A}d@6giJRrJ`d&L<# U,QUkDDB0jb eԭ' q!MMOFAfV쓄NDj_5涾[=Pbq2$Jl>Cofq,^p0L{ [ϫ$}j[\mMY_5d OsnxՍ-{A^קGQl1"1-rsiihqu+kDچv̶':|$bN q47".GSIn_q.aQffPéPH^m`d ,lXR9HN޼AkI+~!5RօnЏk> dHBҔ98 #u;  U1+q Ppaj74h,fހ)0h >D[NkFX{~wm^c"1`jYU0(܌g%"qЧYJztNx0X'9 p :sza,UQU+^ƯoF`8" 4}٘~|! <[-I`V5ۻ5a9U ɽma`C[wJ)x gpz󗞆jZX:C$̴h1@|y7Iz*+ 5ËzR,tkH<,¦6c`/S.]dϓ+qu7^uy%z\A`g2!̟CTЎѼE ip:%G|%av+_q%Sh ]@dB*L\Y5q"j61RI x;ʑEhC|tɲG˼ZqZހqjx(W3);hxmuiiʷ",n CS tߟF.kbq;B镽N` )gCdT_ Ybau8m m|S!kV=h), Sxf)dڷ$u:h3(g}涄"71Hh34ݮͮdw$U&b<lx{Vj%,NzreDe5!w|Q1F.Ёjof?1X 7/M*_8*|G\C*[IpKכh!Dn]tcU,Np.O&R?H=Q_ ӏ4έ\1kNzRE8*+c pՅ2aM%T}SM x \E!ٱ) -"!okʀ,ǜ4 nM*B5ҕ<]q8f1A1%Hiu8\f?hhxH,p /@Hj&!\aսІvEׯ17- >YltUYl3}^22 t/')F?&r&ֻ'w;hrFK,uV(GZVb^r]qmN/j]f=ߜJ6\v\UƌW5&KY"'|q>bu7ً,IKk#(8%S埬(3&PFܫ6^ eR#/RԹ;<DptWFKB7>~baM2Lm&^+;P3z$![O"?x\)>,=za_%XbS{7=T~fWY鿧ywi/ o:LYӬ12`=)%] vF^rA(pJuPZC3ni8OU/?V86.@~ Аf҂uW6Sch }x ni]'3F4o "x`6/^aIŎ19ҹx6n9MM+mF ^-\Gt7t'I6! Ck ]zãcs QDy~mlރ^Z}"8 }b?b}`^|\5)ƻ1e&Ɯvs 5%`@PM1񑗮sc6^רZj?J'κ{M`tO!~qC dnka˱IH;+OaYr.I ZlS<3o+bмűsI'W1] } 1JCd,4 c'q_ yvf2P<+fZl-MUDxu.+mGJKɀ5fck~_t*[*xmh =?jx{V\2up-rzfqa9Wm/[I F=7Cv;0"!|٭=9r$Vl8:M5ߍX`U y?Ւ0<7rUl2M ۣpSjY`еk{C-ãZU?D8U;l>wGL9yF)›9іڣWavkP7 Fʍ4U)`gj X9۽4V9 AatouaG_0[#?I!&2_8*LC\7Ds~EN̬yma8 7_UJôu$Pkw\*QyIs/&0x݈ISF%0,3naP 5lq㻐5 MXj%nQp4s.$X& &vo"Z`Į458B\TީJ^oUp"xhOqw=(:Z%y?Qk}I)ܬpJn .^>{ܛ*[KS(I߉QʁY.8AV0t Fte^q=N C\olۯyxphXuЈ_L e]Zdw73uW!79_# ;9MCF2mP / YߒS\'v;5{ε 3}7[p=l`"uTAizU{Stz)R6hodo+21|'[$+hܿ7K(׀f~\0#瑱m$0_$YhA4䵩 }:Z 23 bd){*]V ZW`MC=Q ~eқk Z呂leI C SΪ'_{'`'TZah!":ìU8FR"6Ă3d:K&ߜSz=IZ|SDVp'a f ](c᧚]Y({7#wWKZ%Ԝ~φSWx(\st*?*,~S{)\m rHRԚg? ѥ `SSp| -=i /T)TEyTåzOf؃P*zUv\;_0tU H=ǰ02ˎK)B<-s1`#yzM8N_JB^RҬ\,3d"Ʊ,P: jgY,ł|Tޥ<FˍVYSn ]>EwЮܴ^ھ @kIVtxUL4-C UA? |UNUM5mgot=+fhy?BwMM?RJ7莕mE4N"DDDDyl7Zs>*fM769fSI^;ΓP_}U_SbPgr d^McViQdh$[BR|xq3+/Zë-su2 *kp:qbzzފDE:La NjWx 7 8R@tAڦ+ޗ4mUƆ9~jsnjUk!Uw[k ]ݒۊ;8QIF5ͲhSW@G:Ocz̈hG")чT*-ʭ<Ѵg\d(#Rk)SEBJ-L`S85LjL^x#nFFjَ%_,A:O&j9;05\, ui1C&DN^j3߿3 Xjˮ 9 Y*{2uZV#+d!AuoFͧ[Iᬬ@u@=\^#liu.*8YGhJH-HHtJi@!S/o̊AUݳrp'ߠÕ 1ǝl3i3Y :GO :a5{ۓw/Itb VeR3 ٻz橖yfvUɅTi}s]뼭$jl P!kԍ%'9IէR(Z>6v}EL_Q&c#q6*fłM FCfb=Pj d;z" g\LJAXwAg^xHId[Qܥ A J=쳦(BkAjo='g+qhU2ŒZ'TsQ[WH^^>hMnPmN0z h;Ǧm9c9xȈʳTWsS*)]*)˩\IlƔ!{ˊRؚ_qPJ/`YN :\&0It D,_"Oa-VCPpe ps%\R'V:13!H\}93˯ ,3S`/]>0d*ʟ\ȏw2 W)xdf1Ipfwy! p;dISV~$qi*lv+=)  pAMO\4yfV>Yitj Z,pM;% yOp & IvpCރj48י)?x@ /&Tc4 yuk-o2幌AQG&gJ\Z"T]Z4,VpȰM'p)~cd|,3J_W,1ԩƊT|yA[#Лj[u*Qi?($kZ)@[C8X{xq0D[[&\R>mO­JuUр r~ {_RpCGVX}+pm|i]|rBC1R(sl8QH,[4ͯhBh/X,c1@݁*nrr}~J58a^?%rTy?9@VDv`‘vPpqtLʜV*0ƈa]hh<⸧icwND/L92!=9sǯ\WH4vY{K+f#ƪ6ňbs5TJaq ^dq~pƒb,8fex&z p!q[y.az.P>6/^9Rϵ${"ן]Փhfx@ {\2aEqI,/xlK׃W) o5XxaM&;-t soJiW=#VMwnb듐XpQ Z>bр0j%}/+R_·}u_Qp/R=x'_z7+(%CѰq3q#aXڮ(xE\` k<(76G/d!iX`IX 7k3}9M?7kkaײ'sAB(,NݖfUA8Jj,&prHWUB~ ,ӷ"Ij@4ΐ[$:nz&$+z kF>iP}Cxx$O<@6}^ޣ7]Yډ@a2e`chI gWdCC1 iۛIZYsn̆h%+P-cM]( 5nvjgH ^r=e+o@1r)#r1b;.驍4?)A,oPƃZK~F(=lv⬠alε$ Ɵ+q9.[/ѢkK / $ۋ!O 2 W[v eŪU ՟UJKx1Ɓ\A WaDl<Ƭl sVگN%M{=xa+VzV10Kiwfř>4qnm8v@ Hu[ގ{]"))iW}Ƒ`LNoeak&"e2( }:gOSkH-޲tMiC;.ap+-*+`z`&9iq0;S;Pvv#v2xuq?_5Zdxԕ vR 8*pE}nDZpK=A jk\N;"pGq![f[ݐP9@5\~I]υ|P^HV%f` 1֏w&hܯGCn+! ~jd 7T|[tSy[>Fτn#7wJ",=FO[36g?aQB *$ S>9{G ;kxHNH]H٫|3UJ/LxvTؘ')3z*Ȭ7>!cܘ G_u'Dfg-/;SmdDr2E5~ n@$ӧվz7%%O5)m #Vx87ºfr櫣azVTg7Hzp+ڣgNő06 D"^0U(܏֭<Zm``h"_$U^tPpt<հIxJ%!7c6@Ccw7'9_¢"θ^i_p] 'Rnaoqђ)p$iA)Cc_v/X;E#9-gCGT܅n#+_j:عqzB ~k#BGtFJ~Z(t|/B"`z+RY2T(;(ıFmb]j{p$RJ%<7$,)'H7vO0wnȞσ˕BnY݋~۸GmO2{ŨDrUP60:'ޙ辻zxlZ<:Hg-ZEgZHGR>6^Y8+Hd-2(KʶZUeJz܍`P1e׺ؓ+8mg` Cb,LڋB쭝n鍔c?@)LZR•Sm3fYK&I("5+GrrpzlIˉݺѺi,/GWFJGYAku:;UW`6ѺGY} \xOqk3p$z 4"T8SpVg80lboSG8[aKۯoO!P&Ӑp^$lǔ0H=SJV ]7I"=#jBŎRes\m@od8GL5bӓ|4T*%Y=͵ 9젱YW.V.sEC{ XrK[/V"phc34,`Gm*'$>>pjS>6n'UrsYW%UW󐥷Pdct@`bAEƜ~Q_ej{ N9',oΜR:QkO g99vP)$D3jy43LŊ5l!WlI^[׺;Td ğc"(xEe~@,t.~nT]* w62.Ϻ޹ 597=j_8ae؎Pilvn4Ic]#%/Z;M%bPfG[)*ef8AϏB.AHzȠm9GBxzF]? Jަs,jzHI_PzF 22* ew/2RϠoJ|mxaYPwKn `=" UR.V~T |kt(|5} `C,gJy\#aIva}kPHrQew_*na>mtg~-9 6"P-:~>#{n<֓\kO}i2(25U*So`Nίѻ6O侕[%5ZcC6EƚR-:՗:i8hä?XrAxߩNv3Ry~ЩdEmxYsvvT4O[OjO5CU\TCzAdͪÍ<>fSG͓R)ղFƅݞ)D\ !D&*<豽a,3\x$,+LDf'bW`A8SCgsxs:2j?P '8d> +cK; +MGj;7Gf%.MA#BSVT^w8Ϣ 6^Hd,F piCE :mU^47#[pnUSF̕y';nJ^ zqN'&Mkat5Jmk)RFp>8 jaGV~G,9(s O@r~' (HVP!,j|K9v60x tIΤ:e "&O<]0ͅ| 6Tz+=A=h)3JJ;̳lIGjQz3#Dʮvo@B)FsK$V'j9;oMZ&7'Mlg"|X\^ "u)iʏ<C{+!j Ǝ-N0׃Y|U6Ҹ5]'4F]m܈ߚ+ \8xt_u*/5=>{%C\Tݧ)M 5db%6۷0Oy2\ri8zЪa!JBŬBjx1cq})ܞŤf@uix}t(u)bp5/ua]V=< q\|0ڒ7q vy3z1q3X?{kd€M vcȹתiwf(d@YѲxu砫'(厹ޘpr~텧1]ٲcMI!W|GCԏ`( +vL"+St.ѮMQjhCbJ꭯ dFJd_=o,V\]]>ɱ"a&nEmle=uW8L]Nk#p_N{b8RB1+C,2pm0[$)8B* ;x%?O%MU< j)}q*R AHR z=FiQ*3PWyX.,_:w 2#, E &ύpNLaMzޕKco:C/<"|uJYw3!Мq9>=4lwzۆ#C" e,Cya-Qѻ474ԋ0C 4ƋaνqE;iⲀ[T?B;/jsgv6 JΙ뭋<a4o1ts\7G&ˍ#1lpoaiXT4n~|uQNꩌ`D.Z!QM|LLX Cqtp6~#}օ!>4d ppGt< 0,'|C dDKS A  'ʎL`RWqJpWs{ӥ[>0 ZnUg,{?Ѫ[HiRP|nrT̞%ɓ>B|mC+dŹ x:ԷF& #}D ɿd 3&CI :',VnVuL*Ew :`[[hWP 1;\k5jYz ڻN6 5 3~juinb*Ӌ(taѝ}|,(**HU'\@:ndRD3qq͘5}zϻ5@6x P:R7nbsvo9:FN!Sl*7T NiLpl6aY3,<{{ GP)Tjw%-Fӎ})"} )7CE`4mqwL1IYVd crs)6o@8? Hp;3SM[egaT{oBۜsj TleJY6C2K:Ϻy/¹F +4?-JUWT0?E4= .o̢Ȥ:ēS|N|[IDDӤBz/3 z"c } ~ auev5GBSM۲7/K3cH:m (*#\Iw*pFߗwO8#<*Jl-UEPG(&>C4tsotWp'{jޮ*O~9OR,x"El/ڲ,?OH qTmMK.^eNn!w'^rYSTs;NU |ٞ\:gaqF3ըO'즮`U1zFk5 Lk"vp ܯvmN"YY)抶rAuVcB2 JX=kGQ 5M Qbob+3<-w?ErbE)ƛGYs>E7< 䭓Cl %Kl6G/ ~Yk^oX'H݌'JPާP2TPcʞf8qBͿ,C69vff״t, wfM:vk>u19_|hs@i>{>fQľ{cD0ӶTB*:Al̺u_0#Ԃ;,/$ N}q`PSNG~cD*>`-¦I:1`Mz(@7B.`a{wȡaU煉zߥ')б\;_PjKELvz&nіf>+JTIڏ_'p^`*_;~ei|k 0फ़v+l'{I,8X%Je ozr_v])~cuZ}ChX YU2.?>ma bR%d0_~zaziM^^!f=, +̳ӄ:X]b5@a(ro[x$f[K G2+IsD"Jܝ ̦Fڧ%p(Hh!*ܣW2bkX6 ntYe)3fPf\&UV;E1FHɥAQJҢlN.C>d.#cITNۤ4Z仅ҨT"*CD0rf֧;Rac9@4K(wKO_c\-&؞;L&I32o 3U u?t$45\rQ xՂ&ӛ5SSv:+<=E6e^{jO)!CxLFM'ġ8͗IU[:"Ue]h^cys3KL d!d/3|ϙDztll=R]Sۗ Ki.{zu 8k燀pqCހKT%gȭk`͜[%hRLo71:s,U (ubkޜHKq;^ˊFrI[EEpƊ҆g1WtV{,%s[P4;Z0u:U"vS2[[|P5l'eVZ#XB%y;WGޤ#xԔ}hHYtNq<Y48=y)0FJP)r쒣M%+jJz^"jĺf+b{VK,fGK]>ƍ4hŗtm 6Mq R6HB.Zum4VX(:yJD՛҈*, kBlei.+eW(y̷9`&Khҙogq94>O{"yFd?i)j+-`xGMgDU]&]N pK;8],`tL-lw"G+xT!cWS&a1f[sq38_\A3V˿~RӍL;8/٬„tՠ^p[<+{PŚ2Fu&wū-E 3fQZ; c9ACɯ yu 9kf,b T(?3$W,W7T':oƛF@Kq[olAWg⁩. ? <N!Nۇ[I$;$LGmaV MKz `c(.Ǘ]ږӵǖΌ ;{[|fCІvd#q~չQ7|2N|ib/Ucl Ӆ"šB ~LS]7ȥL>z6@y4d ۗ>S/?gkK9z"6A孹k؜P Ծ3X* P{!r b1ugI?`Bׂ"M7mpG9|2"6z)jA[hv!)vB m(>QX4jM7JHvb5y4\3Ԑ΅D)~fnNIsrR{PXܸAhvѲ|S' - ):3V&y((-^0- l].o?{USz?cbZ3-p Y7 !l<+Uđ?$ğ=;S/%hSmy31K8P?^ൊPHiDK[v=Z|A/mbLz:!YObPfS&.EuVR&-z.ir˔ɻg!*l@;ѦqZ yW?Jv2xZemL~HHkP4n%60`|Eah~Q1RxKte3.R.t0AU [Ÿ՞N1t6rщkMcRf*M1?Qlݷs4(>\7U>{PjYcj^xIG5X,rj0g= <ӑXCRN`Su;y/9gehDKxqъ`h/_/MVhTQƾӵNS^}Y5Zk;1 űz4pBeüYg0GRM_p?j&z<#n5E<]'< ~GA|I"|2 pJΛc@=y!e^?7qH!y:uTIԁ;,LkcJd䜋I1#$v=!SNX^*>˯8ħ\*yFllAQP䤣0@?/1,y ]w2~1W]DyaDֿSV(k̷l[Q $0&L<(~Q õ~4{i*H }# K?U/JiVTWYSoX1;&Y6{zTT&c58Esdݍyᥚ~1ܛu!O1&?d IceDR=q( 4qsj1LV.Y l_AOI%G23nm7V6QVd& '5~|r"b UL'+,vWv 2Eڞ$ z]5TEP_)wjW" P"ݮ~ہvZh ,u,&.w)Kze=if ̟X4>&X$d XHӤtRjb\2㰖nr&P}hDo&^z=u1~m㈫`VM޳+1|:⇕jGE-N ztGVP~~.n%i%sdی%Cx;MFe~Tx}FV+ofuM9Rj441 K"iJASb"O^4&1' Zf9Vq#-~û=8{1_%Mq}ih(~ ]1']JtbvY&Gv#ÆQ,kl ѻE];>X@sNip> Swt;~ċ2$9tj BAe6*M8 4HU/QbH.(aB,G [lEi|F㹐V_D0;l}ӒgmrI{mr>܎̔$vڋyS͸:!IM}9AצG+YIS$dY뮝~6ܽ-oADVG)=ማ.&pTj (Yհ=UX9^k) ٦/AK l&ہa z/q~hc=޹7ւpi#(>I=}یQ@e'U|{T1puk҄Q ΃_41JbQz=z@W-J%(FY ?` pż?2@Ig\MֲrfYv2c_W22pmy mC2ع$^`sB4ymA!g䌍35DHNK׈IDmBç⯲ecD$"{MvsVd%58X򶵴%>_jӛj5Jۛ 47׫mIj6;g;<_\m O!{n Tߔh>bɬ쳞|dFeDB݆f79jCڇ}DrY5ّ&zX `&6%BS.yu'4^ EWpblxX 9L~ FM1I;N+3N+ A;m$3/[|?|KibR%]wD\HbH/&ag6c̖ҕ T6qA%/CPviU66bnTGjP :k9Ujqdrkpj<Ff HLlNۜxK cywgx*D6!wᣮKS%}S8\R*k;xq= ^nR.Lp8\ =S5xߵ%uSF#f ˾c~?O<%׺#051UGГwi}+YO!y8II{: XUt H.#}KG:nΪ^C,b)pTy~ka?Ys^6 ةF+hC6IfT'r9Ϊm+7kJe‡lO6:8uh ؛z$"<}g.%#5 4ӉGYaQfyb>ArѷK,C-3~Zr[mO2@23c sN-+txJ:_<5) ]AAWsxp:HɂM]K.B|xP*NJ͌LF'$2 yߦ&^e *{ #{SZp <:s'Io}RQ5VLn۷ɸT3*gZ"qX:dq8LsbKLUV rbiAlu|Bbr Q&]?Hg]0cBs0ύ"H.ܜF nA"e3Q##!fǎ8 N*wyYYKpIZ{aǗ=#-2/Ӥ[A%QU$4WKoZGk}GoT] Oh 7B F)WK~AsJ`l^p4 y-#HGX2Mbi/}~}3ϭdYMoTfp[wfzk#?mbxˑi>ْꛞkENj~lsF&KUX#ؖfU#+\"*WP̃ܕޜrZ|A[0iL0;c[h'DI0,pqoMD`CcUjƘ^2Чsgh,< tfafCveOߣ!0 $U=[ߧ˪TP8f5s H+GIT>D]qgjo%Y݅t#YuHs1Ӓ^{{B n~O"Kcۛ; :AW(A䞈䣘H ϶SZC^4zS~ѱAhԖx *JJ%BJfmaU gݖM|b}{y܆5 SD%i ~5E  V\TԭĘK25h PE'Ϟtq腽'ĠV*C SaF65w7ouپPv]ÒH-1)ix8TH FuVL0饬nq %#x!Ru[=s:D2k*"w>PЖtg&:Bb6)`ͬ t*PZ!`%^{ʇ dw MR_WDV[Sv5i&|o"4emZV&1=ܣS;R(oD$&\ ڕh/[ݧ~S﯄4B{;܉g?|6"`n p vGGB hn5N%g9m3LF dLqt[ļa+@ȚQv3veݳ ao9dz"Iv8c=Iқw=?1qtŠG\c!W$<\Tt  ły,:K FT\whI»yYN4Q#hKy["q%CcI?FSmV;\Ei1GK!%P"R`yNG%--%qB{&!}q6iUWc aDRI R5;'貨྿<Н0>weae A~-W0woܻѯG1&VE"c9(K)sye:H)/fPxHj^ltߔ^(OCK4-:O_\\βN<|Ⱦ:8TLmW;ܔCnb^jAjO%*FZ ^jQ+J 1䂨v[C[l*Qd+DBg OvT(,W>𨼵E&@gI+qF1OULRdE{h[XslF چ &hK ȫFuM-OH58bNRt .YRPF*kUPok̕j"wFvRʳ]_WVeQ骨fw`{b?%vhUiwD#GLAUw#+(PP#7O2}mt Xgdw]qJiOgk6:ِKמbe agI^`u?Zt&^"$Rxd>Yn9>Mk|=b,dI2χ?Ttтx|bi~|A*>EoL$gd?CM-/)ANG)+} [NnCx^qJ 6oZ>ÁcnQ' 8=.[WYfJt>:&f&#^|w$ZZ'ĕe\uwo]|"Ö£YKQ oD tR]G{,%L5g0Ha` Fu njyVIm$s#**~ 9eQ@['%FBL, vF~C,t]*H͞~D,|>r^ͬߑuHB~nUGtoa<=V#E_pKr/ n[;|[@Ȉ*2iUZ|+ύ``u }p(#l%3_pWx{H.Tw~o^` 2P'Oev#:1}[H?;(Hf~ ~㢧WvV#4c]KS1= sNj2'oPww{ӕr 76䰊 ^|:z]w/{Ui<Ǒ^5GrwJ!q"s-#Pi1tt "kN^/ !).9ScDݕ1^Xę @gKe/-R0J-#Ae;gȬ(⌺9~cM*&>[jcHk|%]%9<,D)0:OT9pɶme^گf0ixtix WrurƮ#\ؙпM1q-T1خ~ lmdh)j3u:q{gcMP|ZK6^xz=K&Sfv@h ZF=鴽F2NӷNNE݊ FЯò>A&&)ekjR/l"@@L$x16F=Nl?T^%hēT4`sam4Ac#F/xS :9qK$~87Z\t,+^Ur9jn%i=VN(\Nвݫ\x  g?V~-^em=saU͡{ HMMNc`7(sY߉tq)[sIg (1>b`3^ө$c5Da,=UtOP`CQ>r[-Ll[ YNxjrVm BNkֽSil0"p\ 0]Fsps(.پŶ%IVL> #M`?E9؊ &y`*9xtӘnR_%;'7=/H/>![PNvgB/gZ^wݨzz g("ə&W8I%1mx6'd>R]eCOb)YL*s]̺sB/54;=$+'>^7dw^ུnPCqrEQ=u e͆SHLs#)fwؗ#RgA^=>@V!t&XvU>}?ލysmǜw:nqk'N1T3Q7Y9WvJGq~Kt˹*RL' |i1:I/C lh9I26ғąԃݶۘ-פ|p&:bR)V<$z|u\ 8@e#2 fGK?e$uњjXDKCP d-ۃWʦpahC1J-O=HbC"P v?bxg5j9i4YwQ$O46@X,6׽Sg^WVGە^D"o{)Em 3W!02ґ28$ {.X?>g֮jA“ct:6٤W_HXc7m٫l'H1N0蠳bb"A+kԧ<iewZGK[heGDevE9{ҙH o\he$₧/ִ>j;/ԇ_I|$oM47єKPX/LRA[x.G\܍7r\q]֓gN?Fam71{JtI['☓y'ف|߉UjK.K~ԛ3f  , ɯE7e._2oq %x]Sná6MG<nɟZ.MռuE^1.7KhdtP˹(ɑG*r bHSgxZr8(1T̛ndӪh;1ϚΗ8S[PU?rDT hԙl>"ks|+ї'{Xo7>k$'oDS䈀W%w3=&IRԾh_=%ҏZx:%DrGrhs7 NPԃx~TE~-i,xԕϟ}(Ti޿AҕȻw@yXPFCrn(!d|&L.tc-6RKP%;.:T/R!ȖZ`Jjoj܅,Imu/Ez- \dRM'f˽SBʳ p򟞼8W4uܐ}iީk3*vo tq4bQ$QUƪdUzn=juΊjoq6жpslRZ_or>_<#ϓ)m G6 6u^+Z.ħߴz6u7bbf7W$aw}>͹k^PCk7@- &d* VOFs$^Vh[Cӧh`BKSaV81-Ʈ4c-z#Xx})lvQKd ;zOp02;S>g}H شXb̻lRLOXT~u=%m wo xr4Ң ϝ- !6wmL%'<72޵Vcv_*tۃ/O9ń+OlcNX>sM:t$|A=;ъuz.{ε@5ƒmY(ql]i[.6 Q}x42_yő.̈8h I; =tk:e!zyxKdFv.˱TlVԿ(a=<*̱[֣' p&TAwrAzUZŕPopB ۰OR4f)m4;^y (4.zeR*$ CޝF(L9d#(5= ݃H57Al9KO~e}_o-P92#[KULhy}nh;9ɟ QUDsY8Yn$+l6׹j$k EjNo+%pT`Ts?:J I8=[SzHv{(wj+`?y҄K2}Q"%hcXqn,pO?wݠ -I~"~t61usT0 %%-DA;qG {Q7ofg d1%4 kt!`"2$*HB4#=;0Mq-n3˷GZl/Ե֞GYT6r ةm {sa-l` !< m/]iV#U0]h0{zD柵Bkbמf01mVJz8E@fB&`- ^_h ZQIL$ivkckWN_y2R?Df;s>n#9he> ޛ$'&15bI< D6G=*A?Ώ0_[$D5HC6e؆oCNƽzɳ,$iʉ8QP5daǒ-+xh 5OU[iY~2Y /LV>+B0Hb.Q.| D)pOx1Q0_ |͋ZqcoY/@,_ q_Wo+W+*2L>7o[t PxVʛk<{\.bo9Eӆ=ĩ]n] t*Y<?lw`*AhhN{$>Up]#ֲwbq@i4˹^BD|/u^BMT~U^~aJg@6Y/n81ؼ&[6`]r\ҩb%S-N}̓'M]. g|@%.TUaTѕƴ3"p=ץ0V cnVb4x|P^<q.4Nk?D&S3jɖ!qMo.Q"}Zrdc DtzTDtHM4=ުꉅ pkfR>JY+}_.msS_JYf"Eń zpqoj3(jӑk2ZC)"_ӈ`xtq*^Y=6|>/eCF{T%917ݟ_͎,g֔gHT+Q\eҮ\\z8vVY–E,ԓYore;Ի8!vUiڒL\\_92tNACm׹[=c2$8DL4nx5ڨF0R `b3,hϩ77#ǻ۩ECҩiѸeu\t8") y>Ɯm4g5BH BPAnK`b{INY\~ij8-EpYɱc_ʼnʦY)9 i2=NU\<`9tI\!+EşIOf];^닚 ۾AS}Z_µ RE aЧ̼!_aJ^9W)w!tjx!/h_*~@d@)¨S4 $r9Od^A 09!d\Ɓ8@IZxUM"ʟ|YzMuw][bCLz/Z;!jܹ2vO݅3{}gTX`uIguS8%*FӓxWXkYMϥZ<g,bg?iJi9BiYLFLYܦSV@R))9!Y%ٓ%^)T鿲{?0o8@biS eOm> .ݩ2lHpԡh(I?4N&\yJS$$dJn`{nj׿K[3islCu,+oHl}19E"4oq3/xȪCt/% qe;*lĈBn6A@! bӖ?z{Ojk9G}3G$6m'4b*yXMdKt"AbyS0)Кθ)"IxKU6V)i,Cs? 7mZ_V%Y{? [gGC5Fz Ҿl;mExzHf|s:є}|GĎKB1j`k i[`Ľ~L>x}~s\:@*_êKfĚ+A̙=?#L>:2@B}xsO`t^㒷ZW($="( U Rymg() /zeZP_^E mv R69cKF*;HQK~p(hz!.u~,f†"* I A_t/fb^|;[hWXȱ>s's{z -"qfo]_7k䓭8~%5ıR J_Vst+cz 'i195% >e ^ʽP 5k_΁"ŀdרJ K\}^ʍ<+-mu,N_ ߮Q9"XSnA7c=Jy1`bDRM?0S$).5!M]h7ʇ{mje ߉ _]5!ś8 Z%6򏠫`rojjإX,4~l_E4P0tMˤ1]2({UlU_;f)ó=\2 m8FznaH{̪ΨB \|J5ysrkJ юq ?P|Ive|0r^Ng^לfC y!IRYCc.AzAKO0|FL#8DDAJ5CqαUf;ʒ3bj56/!t*i v6U.k/8]&-W1\ݛjm|ZЀ$pB\M dWXL׵dYH!O  ?躶ì7u'IO{% :.4'0[/ 7VxVclQ9U>q. j.\{׍t6~W?w+[p,BwKr7NEM ! X@f_&odEnUxG.K[*I ur k"*!itvd8,#AliMT6i?Zx BvܟJ͚CRAB2Yi :x٨ K Y3_&4FLDLh}ޏ X*tN7 ջ}'!vB$0OS*&t:Ep"% ̦g( ;2si,X=m;B(I2f|L^mT39NM>=6ASLe`InAf Vbn%M/%KwLF3񓑸H4$0ý9Z3̂j[7MowW?ۇoԑS%9vH٭ÁEU5ݚ1}.E_8.;.eRW0h.qkԠXCo)#Z̮%+L׌f~>/(tYg:#4P儲s?R$Ԍ(8>W a^a\I~єUyPisT>hLe*zVarT?a^ }%Z5k߭4,J1eIit;n[,fS,:Tgz}Y"+Vq^J^}$cy^(e4/ms@xz ].7xdW7oާ'7`̘"o!yBA9C'9\z;L!zsEuLt`ܓyg؏?b{?N1p$4.@Q,& ҏ+k)gYR=N0̷:cuࡸ[h34?y̧pZ ϩni GQ 茼tjJj̭6'Dx' ~ l_$(pzT n/J x~7~!G&@i9]FnP~nF"~^.254 1xzzDY&!(1D~OcQޚ\w&iEc'z$u/m rh3Z'9 ,1؞6g u2'4DKoHڀ<ʽ_ߌ8HgKQ} > $v1_ta,=ڤե,$ELș K>KMHPEV3cjOH$;-bӕ0)qei+nNFߜ~T܀*h.Fh\h`0T1KJ&?@yʛW\9,W "(C=? \I1ũD3e&{Wnw4JX+C(跿z!r7>Z-Ts4Ratu~gb`2ꡩw+H jKmܕ&D ;h: ,QJU=~HNbϚ;$$*  } HJYsƺ.Dщ?:'aFsVh.]tsv* +G ;fbq7Vne`ۢD02d^rd9?(jih+zB iPq=*LUA<}Q,EA_x1Gh>R:ڝ DCt:PV'ңvhxvBc6V)h}eDIcBI)#^)'썶1^wB_(P7ڜEWbř"u͚Vq= PK V='Oui?&Dw];qGǿ}emzY"ZwAzM)&J str)셧)O-B h~oòSSDw"2&| gq>1O!\>-vVڿ]'-GV?ˉtKIvdNhq{`lfQ $ٞx_'p)1+HUC*ucTn[d :ۢ1>1wj_.!QS9(PH CDhTaO!Έԍb)90ˌFj4:'?؜ 5)f H*7zU6OdWzʎ۱rnfEw}$K`&@u.Kۮ.LHZ'fD],An`jl^n ]cugރcR*GehBW3d7ν(Lgjw y OlMFǶ ]A#Xd\$ r_Sy,ܭL݄s0+i]y 0j\ۿ$3r=q XwR1hf_bтEJ.'r]b_ Y/{ЌkJ?[R93kVM /6ZՓ`[ېU7&F*`I*&a@tD oiy`%OT$5Bwemm̖mi x p5F1ǐ-ێD|9?ET#s5=0DPC6圁>Bo9&[ۡ8<8jf["KQ Ϳ'/A{i'<ݻkZOޤfjMC~'I }GHߧ|שz -Lu4A>T2rCXRL _O cbC(v5:x pyr$8=疯 XXQ#(QSOwurب+iKJ5I2ÃNzиJKGNK kZ'^],sM3 w)^J'x lc?MYB_r V֣KTG'ſ҇:!QT aSd>b;&Vj"`'ArrI[9iruOGF53j=XR=s i@m8,ZdX@=rD&!H*v:9lyM,p=Hf0R:buGhuI*//Þj0b<^o9qUVwo=KE:(^nw%&WYO>t`93dv!uOBoxzݍߝcwEpZʉ+Ah^8e[8/W&&#,7 +`(wU51XͶFszyK_oNykY[|(7`c A~z"%Cyn9-u1b"r`gm Q40%26=MIdMef+:*ª̣eHeE[N@}< At/)سgG,>,Ԇ<܊܏W'Ȍt:{p}]c%ʔTB߫/va^w_%Z]21O_i@X*'OZ3m=_ZT`DTk:{5fx5<;~c2<_?U[$neD>vR6Cw;)˄ow02#vERPK5E>{TH@qʮ+PU^8L&)2=2|X」jnȡ& –TM[(hL5śD{rPf6G);œ{>A<‹X\~׻#á籒Oƻ)ß?e@%BLw쥜(Fq͐OfZEM8H=v8/R4,ܳM 4(@p l:TRѸYjH@˼R" `{\;'خXۀ lv0۞q +JJ7Eb8. !O1B _Juy2j!]Wek;Ÿ٫8>ˇN)' G kP`H Ee/(T#B'V/; +_XO"PDA>l_"H`:l rG˵s&i(ro5u-Gc/¢调~GlQWVאhրS^ߴٺwDt*z[ 5_r \ )6ݦ P Uzәa炲H\w@˚!X6EL XF>pIPjvUO `.R UavJ8{&C2ɔ5PwESaN_Tac}A|o-I:)l-F&F⃘8dP lUKU# llB$(8c3 oNgQQQj4[ +LV'm~'shu\>yA7-_a+X: Oلsb.<9q,>چV" n[CB]b5ThrbRoQQ}SaCD[q/. -=Bp(@EV}˷ToJ}2+8"i`vc7dy\lL 1I;Wl6}]x-yn(Ù|vZ*9t_x}K7AoDE2叟դ埛2?:Ȗ#Os\z_ZC!u}D:=tߘ܍tfj\ϰ_O!/7xi\Q]lV U5HO9wĂq ='R;1jq>[&8{q>*oCOj6:D0`/U$\B1Ҡ @9NJA7( 3͑D~B8tj^v"~ɸPI]0fAwrbZzkhc9Nz3X^\EۍHXi3 Mlnˉ*H*ț#Nxb%iDtGm;L2Ç:29J`\so|ȓ_Ϥy Z$ &-6LO89QKʸF)t3^>꜁E{& ΧBrdz&<}ސVi'm*\=LR7dþ3ђKBPԯX*Fc[#D;XÛ=, 4Ro)O𖮵 %, eD*:s>u.5;tEYIA'm)]>pwr t1fW`uuGwsZj?*䀿" mVژ7عgqqXrSI:4-^";$YMSi*GO5&-Ǿtrħc8_ݾŽ&lɿL8=E!b0'&rMf-prA#?7+vLHh)!:]0qqyKCJyVM`;AY[A #7QR *;šD/CI 5MDA ށj~17ˊ\b\{V}[3)C~~WB(>vƼ=q/&&rŷoӣ%C& q,MQz00u_όN+j48`'7}1,3MH}s}FI/&]4R?!U5K6KZ >YѰdz8tZ3uhUo=E0xf|{R R.?QO`4,]cŲ2TRYNjAgv5zA@z"8QxܶDg< Q$]2/oKK8_LioO:ـq=wtlڊeC5(\=Sy {֪Օ!B2$F5ρ!F!P-/q6%r6kW|*J< c󆯊=}i2h84nO?b4]hfqZfkL¼OoS)c7פ6ŘG>|ƃJRM%Nhp(<o^=%`y܆9$ws0ӰT]mLL&8 }:iѫ2ۥtO2>7L @@TZ;hW D6~ ty#lZ|-> n[ӤH]dҕ{R/ԄļՉ1ARY``(O mk1 <`7>$R x 3lN*9IҒ˙ڈ2]Tv,{o`RJjxdSÑ4D7🇢,֖S<2敢yIÉvb~jQ𛁼4;kb *u3HVSXƟvT C(CE7F4 *@U$J-͡,23ކ"sKyMXlXzlwe4iwߨ=",HYUAm1^$]d+ M|)yTOEK L:E9p~&n.ViͱfI%IQavvh;ˆ ݞZ7-mxvu<)]a| LFp=+-gBG`I]^!QP} ;sU.x[(ͬp̏\fzve'%H>B g}WLG%?1CAw|L˃OM>X@snEXVS29!sd8 l ,Fܢi\>,$hLc\+ dO?С7K=7'™o8rvU/j8xh{,v[2Tι2%tjzFIHuVT: (,j;< CuII˥[s=}aj3=pwB8xN%@mt9ݷniB"K)}BZL hl3 sK0,,;Ej_ru}KWu+_l Es堐[ھ̦!{?*Ɯ S2'"Y?jI,HM,;#!V7@z(r 9uI̦$꺄ªz.q:X׷ M}mJE3>#VBHؠ\Ԝ5p|kzBMeU򕕢Uŷ Nvb>skL|n%B29=<AR$loC6PP]Aӌlצ8oLr!x^qㅃ}U;(|q*(+Vd+ Y^C1L%q>q@ӈ{Gk{Eq;iyT,H)!KF^6'.vka 1]ZT9碞 ~JK ѳFi1!h{][l{u+9J7Xk}^Le]vŁ7bv8 ccCJA(&$@O8XAƋ.{)- ^| [[VO=F<36Ozbc ǂ$֗ž! /v۟ 3'f:hrTŖ*%6wJ+ːO=M'.{c~@{(>,xfొ CE>j #xEm +wzg覠խ,#,q]B_m3׆pyA>5T`PӸ ՏAlD\RYpHESUm>½Cb&xt:Z[Y It@$T@t 5.41¤&.c,< /*P)[EF!fA-`T[8qE:V .wFr_w0.ʉDfba_kc…QSCo%\j#p>0FVEoIIaךs,j@4ݏ-=Amb(j-ƕhfvv&CyNӶ33o%qJt"%s"0jMXހZG1_ˡu=MF&E`RJ8K6۝yRvɢ5Ln݄nM\Le(9g}&$7p{n@4!בZ@Wns6n9[{Mhc` ]*%x7nG O7xeZz ܣC w>yr:l'#M'Uį̈N_jY1TgG)yOTͤӭTN8?[^PoQT5F#*7cY\tf*/eG r1;_l^{*knrK}~ǀNC4TJ; e+c7v6DPF ՗ Kg*lE]|#\-ksAI6NgT}jv:0na#xX#~F؋s3nvV TV]Zmx?_w›v/GA\{wFQ%FsI}!X5<3mBPv֍ UĽɱ7ZY,H tx Z <!hȯV!bf[MDM矜>6;}"_CϤo;]k$wB@ 4-E OƦK9T凾Ȝ)Ï iZwR,L?me[OSďC!͘}t ŅT?Y( Ĉ I7Xq#ʕ3Dܲgb g…nhĆ '(oarc,,zAy ^>Qs{P.r}P%WrLR2)pw{{Y2W&` ^~-6ϸ s̾%Q4#h. 簗;3ܞz̵޺䗡AF8ʢ]d9Y*t'4ߧIhjwqzSaPdynZ>e[' j<{;d TVb_`!!SSt>ϮJqʇMPp(ٕޤScҌƞ> @`꫖;Ed ;yQG3,#O@X a(0k` Y v &䘥-سfS%;7'X&X@qRN} P,^kw*|:^Q:v8Yqǔ@SvŊ^EtWte >Z-'@\NQȧҍB$؃ DEN:DaZ+Al?CEE=OhF:o$[IC ~ ?}H06>Xd OfMM/ݒeVr3tsT#n`uM"aΙĘ3*7%_91P4&GF3Z¹,+ sZPw}1G}:5:sS7N$d37H%-X4: @g$p9cWa\d 6M/hd %`HM 8jB0V7LlYz;o)'7[i~~Wc7 [GT/xeʕE{iYT,<{GRcr]O7Yx"?4FO, EUA|Sgʜ~;q} J E ƒDNc02juXVXy cOCR)|LL$:ǍOuC1ð00vk-Wki4%=GaQLC @%ZGYA\Kh#:'s_AS\a5RkE|AFȺ]*waRtd@24R硡w5ڰ67XPSѻgK ٧bcҞiETa,[hbg 6c w~%|v>Qg* G8k]Bhaޥ\-9z:V^ e` ݅l43 (w" ]wj͓TC-Bo "zp*[GlNlh]bJ.$xl&e5778f/5!'?=CK>kJFqd2H~ $~rUzn)u_/.f#YE6`Tc@$8N8l5 BȄ w,\ (-сS)C>Yl]PB>eBǪ[2 Yts>ˈ^J7\d?$M]GId}箁?CCD(r 9G˦7kҵ+J^>9GBDP:VܾXll=qF8m~ R)h}LheN@UUy>5׽oXP;>u'E(8F'SRO6הPP{НIv D@$㳃T:Мp)6*y לBC2\Mr3^7GlYܭt;BԻF@؛d+8V@TUαe(\mjiJVRܩ[D櫋 sB$z,z{6([r’0SE):AxI+=;QϭN{94ƥ[ 5Z i-X#Ԇq&z w87_ok4+. @󴺏2ϊ=b䞇AךF>lwL! @22Cs|;L7YYxݮcWu('~~<-Nw"VA;ͼ܁c Dެu/ٍ|®f÷~){Ӥ >~dP?*n&M{Ύ e!\1elLvJ:~+EvY>EFx;vp;7Ǚ6,*.LWH¿?yt-:X\\߂<\\?EI~+9 jI?$pc}^C9[oWt)cBk8AOy0x"86fCGF*ܩ %i^ڥAv R#4z' F=c]=j02o%ޘYeRL*@QsbaZr7 9ҋAnk>DyHWZ[؂&t_7=͙Ci~LK@tup-#jCF׌îl X11  EcUz@ A@cEj_=ܙ"X_"( ADJ0c@eKsCexN*R)Z!%bǖ9lBdj,HkĤ@_hVv\AΪ-4gk`n( <0梛xdgSxYAsB_kLsujNghBT;Xg.>6t4F̶gL3HX#IӠ,&SMA l9BZ9gᤕ\YZت=e !̘\_^>R2f %DjЏ{]nM3# +ž2BE}Ge9]kRs|nJ\D3;r,ІPӶMR :U1nN(#;q>@ƞJ{zչRa'To|%t8/g7x}2Bjw7wf '(+;,Ҥ=Y+ ZW0F|O-j 8* )o|t@/ |I(X|HZ:y-hxqPY7J_2]Tol."E<Y2K&^tⷜGn"=f= >i98@em0OgKɖUQ﹢ n; Pp x?; b&=\-B}kRȯq5mAT7dU qھI?\5t:.[r{x136&NE{׃[CmBK`V^\ֽLzn=(x Q#4IkDO8p,gP \Є+*{[cg5nNo i7q6zZ}Gʚ# Np^I{CX/+P*fqr\rqOm3c)93՜8px|[.|)~)p8k\@.U4`W2hH1Qf6v(igj֖[ݷ+];ϏrgiYeg|ZyNC*Ұ-D!a!X]b߾c?{~ZlG3mJFQc81S^rvf/`5͕2Jq\9)a$H+3`Fq>LtT|5vDp&BqR  sA9!~^Ò? ^/JTf2$[A ~m R<-*Io|* Ѩ> 28ȳ0@HyRGHAd~Fӥ7v_!aG c APopάVoo_ya{}czyS?etH+–;QA'žI(nro7BHDLsyG QQi`wݎ xeLk |$e O\m_شtePGRGtL?n[[TuS'L4|Lbg-tW'̏£BS[#SQsY'JG29 s0 pkqcoz$[׵1 uOZdoby/.HU8] !S+U=1% ATCf{/;*y:hThCM`(7ą8{Yo5|@ f޹֋j5h0}ek= <4Kj=`Й._ .}Qug\Lp.Cbۭ#/T_1ASao|vJGUVc w65mhz\;O( e۵Ǐ}pGȎNEv/ECe4 pblQ/`*ux!Ϧ!5߽޽wE[\ɮU] gٓǬՌS~Q[e~ Fo? eJsg(00ΟX#ym%j7N}bC* J\ʌ$cuA}VhOexlr]e1 }gt~7`2z –3J+(dHK&#ڷ yxWATE9n}cQc!T\?ʤrd4mD1Kl/}yy-Cf9 J#*͕qz01w_6srk_S [BtB)IvarO׈?i,= _?,ժcT7OX=Xiߘr~#Qr:% 9@L8KzNS;}Ƌʧ0)*9ۘ^IE1J7D7̨5]~ӼCȼtoi7y?(_ zE%+L<+JzQ}i3`ݧ;QQwi!#cϵqA~G`0!*Ś[홃̋F(rWs]3#nQ]6qcarE$:Y ɦW** k\쾧:`UhӠ:9 7ɡunH( `_6f'zEpw; AS'Yx%gšj֩ XbǑc* ;Ճx`NFhJ,r*4H͌.]yɵZ)~foY'I%31Dt5c>,Vǘ2rA+ru FL qݾl7jMU 5JL_Lo,?A%IN^tGa0}*Cnm25r-jZ?s.- `O,tUPNd_Kvg#Gn3>UaLRPl?pyS.GYoo9BHTA Z&R -O0y;V*t.9S!$JFr}B:BYsK6]*)>*RF Ejt( g/A]~=Dtm ,?TDD'9F'U&:1ϼZn`Fz߹ʴqzN3n yׅW"2"6Z^yvu/[(C찤]!)/&{fuNAnƛ![0hr`ɜfOk PuvBk,\f3УZ*ϫ$BL )!q7''1}OW@%XZʁ0 e{SV<.e``լm > qUyiK8&ßj^.@wZH~W>>}}RQ{br#r0 ;L?zdXt8(ީ?uB'}CnGRhRY*^ukM zwV!o%0<^>vdv;C_#u }$ph:$ڤ|bbڦg BI7R?`E^)kX׸Iz >_ _͚u8r2)A#&2 UP3k4M]t` fɢ[x|7pD`LdV=L #p-<~KH˰IS`Y `t0=8WHU<8%бvU3SW07r,tCPWU7O ͉X7G>1g0,wS;Ňz yd w@aEAV;ZIG1x𗐤՛#-w%[C5UUky]j@H8_)F27_-vZ'$ ]k^=7,6 -gCa߄Lńɓ}!Fl,ƙ1hyZ%馾4~Fr5key`o!5 Q9#^& N0uUlUl H6P@wNͲ8=OH0tVHN!0{1w<}H'2@~\OXҘ5(Dma\ A-O!m_AuĻ~#G<}E4^O!d}F r,/\?US/+2v(J޶>cg. {P[I>W>% KA(ZhBfBq}\&dWuk7#̺TR tS7Oīb%tЦ6ǽ0,j+BiA fZi_M>Cڹ0`O9x6$x>f!z8q_oz `g79vN]p.D B$ЀOI܉zԽYR |o'_jCm?@o;4}|DɴjV[xO_RD|^4i$JL!w1Nф Aݖ1 (EzAu`z3Y:[=SCuUAKC'; !Aln=E /2L` }=G[+|ftL>k-P1m=!8,<6<8 >ԇ%`aOc~WM`k/8JA.*zX#{D3z:/kݰ+~<74iV=*P'y/k1"[~k힋dS!r ={ĝ66  /Xr"^j]?Yʏ%ʗ[ooK*) 8~Q*geh tBvڂ#|}Hl_Pu>Ic]旙Up7|uL0ߢQ}[: 9y$㎀j}J.%t}ƎƴLܦ\?牝::40ȒZ=gFL4] \gƛ sK%8)t.zne|{E҅||f?6mg E|&F6RgXV'\Ȱj1 )'M!1H*Zg SBrDΉOvJ!=L~bpbͫFjpC(ļG'mI0y]Ldu  Xf nSr-i_MlLl8!  Vۭ6Syd' OPQ*D{2Og@#q@d^OdE]RU|̑ҡ&}I#5LJ)`]Y%GHgڛ!(h/ %Ga=ٯF?!s`:&Ӆb1{mɖyX\mrHÁ.z]9$9*uɶ#$@L Q''\ECL[us|m;ѧcϞ4qs +,Lϫ$r#KZ^[sV 쏗+t󲁡}|^Rx:4 ʔyqE"Yy#vV*BĿ!ў"ɋV/\|q8noЖqpڑj ,yU|bN=mXQq8r )D=؏GCJ%}x k)~K)i@j$'XAcB,JEqx%93S#LPqԜkwJkO.vW-V񼴫 ߏ=\#O{Jˀ_o\۔]xd1@N4gHk1nzQ9 oZ485XSgf an_vȊd cr 37L[`zZդܼyMoKllF]D ^`KxU 7' y'm {xw*I:}nEadɇQ5@܍N>ׯa4};u0GwJUB&}#ȭ\05FVK?77'󻛬c09$=D}qwYZUkH!5ȧ5Q>8 Ti̖V%X_ڜ2֒+-4.qΞT$u GY_̔:{{ǏHp^x׳71%{=g[ucxv h,yu.F@pv ) <2ifl.Ւ/揶We㴂.8q¾zs.NI{"ӨdPN2h'gɝSwq@}M'[&$sFx[C%ft-)jvpcL{J22b,7O[ZqMZy=}umR1ꩠ݂rZ|PN)1C[ 9'uΎXw]۷as]ڶ0Ds+j@糘}B/0$]Մ2eW:!l6,Ղ#K:T0GtVovu|"&n3$/mA5X [œ>J .`֙:ٽbplͨw^.- `}g/&g^*Ne<*.aIcG:\o`$[#$9x>FVtdݤ$JX5omMMA.GzuZl)v7Y4V*ZL?go `w(jXC:tĞ[*)Li2v@-bWW>| RUDF7dnBq5NTibx&?JFg"5>&N),~$Ư d]q~B>?d* ,UgXp H võJfh3gHJ'T-Ds4w9gDL=Z9`{aPr2BYvd?:tBO鬽XQbf7MX$?+p%d Ѱw6 4)Hgn@SщEAXm5~ᩎ1Ql·(,3mˡ0ba[Á "C&*KZ'awzbSr@oބUƐ(E܎E 74Ui@K0IOztTn%L34: -O@elT ` %Nȸ RHEAL]#_x'A{lE1t`le$;3Ɔ] ]7.YBHosA0 +?r~;EizxLq $mH*Gm 09[Y@4M'Lj^G\LRW֋9IܢTh v}%mrJHY@A$D BFBiQ( .Mk*Ly"-nL:'ZW?FISb X,xmUv R$k*Q,@ܵ`Ҕ`}zڵ!wHO3ę@I{cXDL(稡=hnmd>7Q^_ɪƍh?Цr+i[i|%d Q.G,pZr}lcUkJߑoi3;fpT5`UrkX,`<1C@()y<弲grWۧ|e]9=R6eY[Ndo@v waqh`}MՀ,3 Ha`.#*oUQ@F艥:k%Mg@Xa Ja(^%"9H3X;5B,N ;j]qc93+"av@:>TZǰMrJSafT:_ɥ_sk >_7΀lVPFPD >Jm 2~%-9V=M8Ɗi+PGI_cXZ*)~LjHh>::y);1z 5t1E+3qgurrweZ˛6i,VV zʫbuE!Qڠ28{ a7mR[wO6Mw/~W6ގ d;W_T3*@<1=Tl !(ti pP5R I%N_>qwn;,"Cjț͊Q\҂ң Ǽۖc>H-0%)S8^>|;Y:.)m=/nU$6m՟ kdq4ON? | \/2# ReE̢(q|r#ȀIyoޚa۱h=x#*|T8G^2=`?-t+zޘ P_Li{ʃ[ʗ&;b),*!h~EC}ưDc-KŔƫ-gGŚF?\y{ք֢dԈnn&+&'I7݆Λ|8h[}x1+4rCF-*;6v-edr~<{MO^n}%1͇*™iY.99#.UD?U ;zܿk6|o4̑WW(}o};U^uo.VߡMͦaH8-n)_Ϣ\ߤ_oI8-v9>kl]XlL)=YbL AA sW!:ڋScqvw@-/+ 0#5"# QbinR {G!Sb3!gA'ŵs*nqcaKݖөLd IؖJ;,z)w0N|Hv m1'mMknI\{,D:B< k>Av}vHۯŁ\~s-#CgT}%kǨ_ݦWfjc8JlO CK$ݧ3=mDYVO@~7pL풾0/b@oJĺϷEpQ>fQ5"i _k[>,l+N}0EB$ZOF Ld'pQk +{ ހx~^RB'[ޓ#Bhޖ[,z~= 0k^j#Ɍ9Dx/UT. 4)z|{N@#ǐǩ6fi+?=EzPQ$O27Lp. LBςw9(ٳ1jǻsпE20^ 臾e'#i4g=GU//MّD H^`MB1#!`TMg!Z ,'OE Pe2jx-0 BҴp2he cv$Yg5 =uj7)ušpO8}uy<{%dΣy{ҜY~::2qT cdoUK"4Jއ?o#[홡8&d7\֬oT1%*rlxΰGT-ȶFkpW+vxr" Ū .1VDʭS Y%: 3ؽ/V9.W.]E=keݿO [gӎ`+Yva usTK&!8EO"-e]O A>dAe/ؽ5t)rw!Z^4͉H5hEPoO”b2G?[PL4{%A>sU:~F%(uC8br{ìAtNZcci;;-]fOQ4kY엄ٝ]ɠr-Qҟ f\wȉLˍ;Ԡ5HFlf"S˒Mh㣻/=SK`RQaK+nPA!k RXm@k?R.؃ٗY!7#n_^.6\]OSkj7pSS;Od7 K~ֳk7uf$Fp{S`^YEdws>BaVL5^Lld.ќSzH)YO };JG >_4aTXc^+u% #SޕS *ȭ}s>iqe{'[Ɨؚ-nʟ&4SlQ s~m+B I##[cXTBլ/zPu?(aN/0v(_k v@)gOaF"Vg[ix_g(6Aiܟ@ W] Z+Nlcl'4q\E$xq~ Lc?nJFӏ$<~rӧ< 8sn"6y҂(^&lw%I"6OOB# 2{[,PsCv$P׷K'`__*!;SKdOSǛ~:<Ҷ)Ke涾M4I` BfJ\~ylC1\@Lz*^daex^ٗz*Ε nݕ!%Zި'Ffpc/a)@& PO]yG[o[l\4#/լ(gH!%fw]Ut9*@)g:(F'J(RڶzDJA@brIDp!S6{Ί.F`ⲧ*}ۯؼؐt֭_gЌ[_+5+s(%ʉ +ǿ/_:"A lNI`JO} c{D`MyQ ' ; J,@sR9_>C^*w?ɫ۝\_ˏ\.^T\;32L}-E &FmxSnyFms1r;2;[r*,(`Q\3,UCKHkW*߱XH9r u;FcC˹^)\ /B^9.@oAɵcgMjL@1_4Uk݊T#+oz'ՅVit%w B h,WzY[lrY؍1 `l%dYl:䐰2.\0钗"~LE6d<2MHSIYfDxY=⡵ UW]BT:镏;GDA7t~$-8Ƕ-Ǔ1W^9OMe{e~FM5`gvlfP"v@>Hm4R_0+wjGԐh)/l̷t`9'ksB3:W ?I]"V\B ,KPA1[өEO÷@aIvp6vOWₚ/T28 'jӺ{8/(O/:|!\ t|9hg1M0:tV4[-.;\/0eef0aκ0}É>|<,$d9Q$ގWB҈Waݡ{"Jnc􀿆iXCbP 5U؃;f> 6yqF+nꎽ&8ޫKR 9;]R#\ݣ_JK6Q-v .$˛g)L׍TxtՓ́2nw1Fٺs[;fD㩀 _ akpv4r՝՝ISSzBflY;mj } #KͩͦcBVbW$#zG NwB? BiW h)cO,/o.2M QOms^R;Ui)o2[ʀ96Ѭ=/m_KwP#MgPݎrNN7ឞk\OLg¹G c"@#jJ:wjb/g"šh{zLz1mrD_"p[mGy$]KF!.5,I)N=)K>oߐ  ^?RWVvD|光 oss][80CNe&ANw #2-!}E.&jTu.XOEwYxdC,ӷHw?ř{ژNlxa)6$9u7wR",4"r M{┟XuH#@P_}F4 ꖚ]eFW &mfY܆ko]%cxsP -@7SOK(u?A^)W>d|ԹE,ݿ*aa/wX .^WꣀSW"O<oi?35\~83-DmTAnIJTFf# XB^p*۟]{%hLNޏ k EZ!!a<9ȧR |Z_goº#k1?@RLL6_45c閣k@0m]uZ|-\:mgR란S5 u;mOdb-TEe?ZHc?'#7nJEcUlY#v#倥u軮T.| SO,SŽ霯xHhhbe^Gk; DZ+M'5Ŷ;b5hљ_aN"Vw|׌W9YkBw_"dķUd,$\챗zܧJ6weW[5E>ˢbڤRK}-pILȖ }G Op#<8r Zt4ۏ$5gTH^ѰӍ@ncHI8-t}w󯶨hzD7P;ZfT6UI>޴(ZTEh4AԢ(x" PdG2^8*<_`/xg9GZP%̏+::(_<Ƚfu@ZA?z6\7Jlc^pv+dͭryŪx"ZY BV:BaA֡lPҬ_6HnWsX(mU{ˮG(vBxѭ͚Fá*"Ѯ(`hD-nʟżho !NP{/Pޏ=j35!p*O!@PNM9K@ )dtN{lEE!CͯS!g'1jow>-~>(:F7YL ~l=8#< }RYIB  l:jĽF2ݖRڋ; ԤIa1i 㛔҉Nk tYeǁSoڵIihH/q XAypDx+8+(;-B7zoypAV Nl3ZR6TT`%9n@3-ZТK#0c{lmdl @`T^60 WH&{OűP6%(L\57=}'1|O weyev! ߆寀@)AZ 5͑f]Cň0 9^C!XJ_[GE7xTɴZ1QI)SX_vмVF SyiM9+(( >juK%'3o%WRIp"PPcB 8T"' g[@JdZ H1d,k,9 DA?p;b"~[ Ŧ!"yDӃHmwtBfz!2%ʃFnY6N#UWAԣi8;B$WWګGi`R1" ESdrLI-=tp۲4qE9v.{XfUi|/ >y7$O,U3d ZzȟWX|Cl?kbƈ1yX[3"V"cΌ\'\F;ImA wz/.?[FE^+R@Iwɻ%ܖ#mq,zUR_ DgQu9AzUZBGnez 2550}] A=0>y)ɠ_IԏO4oLrj'yaCEND(k>|Bו0O) #oӗ#}U, OƋv#̬ۺ˳8? 2H]cK#qRL*`jSb|'<='1"A{k! md]f [u3s]ō;ަxG8S"٥l†'~a 짙4 2]%vdץ'.7@[x-#$'BMghuQ4v={ۜFT 0~N#ef2_[;bqqUepw_7拐,ԗF@#'[k"Vn"bVYJ)봽aMc0KE .UnBV Z6`m,8i^:2b&vkC]I@\g@;Ext/ Vt})&)MMk|-RKւ^7h' jhy<7"{WAYdS^@PW0R:a!gQfԲV-:a@LJN_#W;N^t0ٍW8(7qpdW{A 2oq3S( rf=i_h-PUJSΛ`΍4nw`>j0Ɂs_ jK ٭ vMz-=$&=um[OJ콪{$XS| ca& j;f +hu'aWX^Pk x<0}za!rK8ET= NPB2ܘuk0@ y%XpVi ɯr1z\$Wavws 8\2і²{`y맑f:ϝ75. -aDSgA\,Ҹe( +F!ςJc-bŪ^!pAm`(E5gycT.¶bl6PR{J0ٖbkηx#O ϼJLp1VXELY ј?E ¬^֍ϲZj2W8pEv Xi/!g#\={]|bbd+r AP*-/-|ٮ@֭l!v;"c1cB GϗGZ1j_lMlb:يf{SMsdxatg~_hJ-W~^ߔwlC/!m٘̀DzEkgsۦm9wʌRoDjFz뇑3=_B#}>Εf4ۣ-E]`*Ϧ,qOM)#ChdkA 6V`QzAˇ ,쐀\ !~f |T-xOӕQm\u[ذ"+Aߕr&zAM_~<'ev]8Wy^">@_k.H>`#Iپ%-ӷ.lVZn\a~l*mY)dm~˴_SGG H[݀KFOTɳKMķ'4d.!2C)ď*ZۉuGRa)7oZr݋c bi򍥼ZafRT3I(rʢclۍx6Z#zDrtчYӱ:*5IAizŶۻԶ:P3E3J}d 2Y³@09ɝX`,.r4ad  V֚53J"p;f_dZ ^2%\VpG={fdGq1PӼ /,?+ կs,.Cu(!C ^oܙc4Y'$Pq~mmԾxhcs"eg~mؤtUZ}S~/ChD ˥9xۨЊ'RPőXQKCٚseh\U^|Vm\FuE{S7JQ7r \=6ݿ)vbd}ӻ;!@-meIt|G47Q9KOU@<\F.ۧq"㭜Iۊ 3yV"Ѷ;Q`[!suf.P-va Byk*F3řsģenjУްy` nG eHM\iJf\Mw֯]@T>mu Jr_83*"^N8Cn=v4m~aGG&.b>(oP_JR*i}qRٯ0=+lI`Cȷ,p/YI1OوkXsO$Ϡlf‘-z5Mq"; PD&{i ϭg'ӾIJLN|ԡ\Y=;[ƫZ2D( 1zM|sލ`lf:@ G0{H YO̤ nOP]6*YDL%pAf\{oR?Li ' gyNffn~8ԑSa7ʍrŤ3Tp35nh6+ \ߩGU9BE,JA qWy9-z{yw Kzrom*ه)JvI$?On'͘,׉xI&mOJT}u$b,W.cP MJA5`y\Bx0䟎 ֛hj4r)gyDb/kK𥘇 YlJC=;oyL0#俬݈!hG#˔{dC$S) % ATKޞeX/ +)x3C Q5 vaH]B%螞U#SJX[4I$@UgA}kbeRQƹ2P0jjsNWlQ1d뙸nZoÙj_n7G҂sU\Ra@m}v,\tX="ϻSew%/1vR5l &0Pl|K^f?@z\%>jYٗ9fBYUx *4 Ă;ZXǺ~5(t$7NRg h OsU&*)t'bXT^1TƳ=ʍ $@!H ]@RUƳ--ƈ0vB~R("EUJb'l" s\B+a~X1]^=Gti@; 0mD`Ql__:Wn~kx@G4s]6hb'_@2"^!K*[Xipϑ@-ʛ'0pWʑokTIQ6)йGY+w\#J.f/h-G7 78T%-\)K?꽲tj_\ab]As?Wdܦ܆Ż麸)7[DN $? !NNiRTlM3L/Ttq(h3uY~8ם:yXP7AIt$WDs:?x2lЄ+Co Hjciڛ 1p5gy:".߳QxyHI~uɈ &UBaCR1Rt:ЅŋCҎYI}RiH_?(ç4hYg Χǵ=8> y-=?`{ؿ(`հ|l:Q{8fؤHZY#58(nMܾcKxnt`kWyV8:~Ai鼑f˓bz iŀXņvQ qFz1" N&6J|Xø ]`/]yBNz/J.;o k)F Mh2/MOOgJ00l:ai;z 5F7t1\Ε57~^t"=pw2 DɅ$"K k3jb93b۴n4P,C<OV*{`ӡZ6wSn#T): dY_v꿢SNEO( HԏEV7vO6͐wSo'wXBet}6E|<4 "Pц _?>Q4Tmc|d1k%S2(f,hl[LĊF"'&"&rq+ u$ځcǏYitNwyg?6癹X-9F F}-m{{74: l9SU&g&L"P✙gPwl.0wN%EuxQx27*CpSb1\_mXV@hZq|1*?į=\DLD|Қy&;i"15ay<Ңq>Vxipn΀\ntӤ w(ُ KF%8̌1FoRRA@s Έf/**02xV Yf,"6<0f^45k~FTԜ/FFZd2*6Zh]gxb ManRqOB^s``*1YU]>3/{Ae`#gwE \KEq'ͳA=ިW~D0܈(rmy;L+a` b˷3x O!AmiYSTGup4N".ڽ -\W|* ~LG_o 1ķ bʲR͙p'U[V2z4:,} t˳PǗ&JJ47KI zIsrrEԓuMPeOpkF8qJUKm绰e-4Ot+j0)ҏ8X=LOqxb(:ax9(\{%2vvzgx?TE)# Y fde;!X[`Y"LĮ?HMV4`<srY YpCӆ7z59dAU M WR=0<.^ ? JE&|ލd[\vNcjK%djwb|S.x.> L2mV2+o2Hキ,;]WՉJRVks侎L(|d`~Z! l_~޻GXpsD?+/|W'c,f9k4B%ޏ9*7|3~pk$+`B\:JPi9J䔲]b=̇/ frࡼ聁FUV6AQV"sm}۾+|C9oisAR#tȫK"glǘtKYo70ZNV׆åX{cZ 7^.D堯$½&fy:· Q~Z"Pnx]v늝sY5?~l:0QP;t786l-'|t)뇶?p*Hl2R_u4"2* 5݆>BzJ0!FlUJ%bM(>bnAGfh 9N>c (-FozZ"d@%)ϕWxϻ'IC u4X9{e1+ D[YeѢJryGDKDOI,<);Tڄ9׈DxH %b<0l9da*EXH0CD#˂ic8϶R۬~vmҌ2ï:`MP0+n=#E=k;6xfY֝mA ŗZ ~,TrX_n0 J~R8`AneV s8R4]ה3 f"ȮN/ViIbl;T"UΛf'sۂl̔ ltS#DNt!4*"@,[#2 LF |0pEeII}NH=,Z[V*?ҐAB_@ |^ 33$ uVY$7 6R0/-NkW t \z7퀂+@FT4Bw?wƖ4ER0;ڝHMoF,xX8 4~OӔr:|xjܬ+sjKh2Pg!eݹοr a ꯤgAcW3um[-lq 'Q(mDg>Ɲhۈ_Vo ܺy6z'UEـ9ˎ;Z `H-XX˓ar; <鐥 $iSS  uD <rZ"}` ۢ1ĸ}D 鋼{\uq0-8Bm@Fp%[H)#J>B*# 6O^PٚxB˧:жlc;r{2_ޞMƞĭq~&uf!u' ~P=S%N^T9HzޭWm5NjyO EkYGAGi2k7E0v6io@hwMJ9b`HGm94"֬̓<[Fc6&z+UWR 5U;~=kۙj( 5b,܉>&D.co/Nba.;W9LĹ3#C7kO m7e7bM0ߎˣڼM?z^ mkQE~iV޽!O(Jj}) Cs~p)q_*8c<$IK,4>ui\mUa)}';V{/j,}|UIzEDe(yԪ}꫼kj#ӟ Bcl^VU*8od9@4ݛXȴ#L5FdF3[{k1DU(1>zş`niU3Lь<"zSn8@IYc_"l #$@K`7b `k' tm# 0)]EXqvp'g՝JU1`yUĆy֬7 5rZH5jiٮyd5d06p)~$Wk[]9 $Ne*J2>h@Pd4nk :DxYYS5H赽nV _~b Cl{~׹g'/hi 5IZӹΒAiJZ&O<aV}§\H%1ܯ㽝`oJпmg=o8%FKwiK5K[+%WanJ2[FBȜy-$k&{UG_׭W#lf "$ɈeG핡OL eL;b<GB#qK.i( }*Hc٩#q#8X}&EOBמrbyލta ;e!߈{h;jRF_a#w_[u '2P.31A<jsf\-#-_Ї`':a22]:}alO4JLRz}`kSԠ[mVVI3EhLaZⶐdu:..m^fvGnT73TgdNӐPدf;%eb2_QшrWI>9!۹g# sp q 'u>SD?.IAλhm^:@'f D*ERNayfqx|MTGWw"mF|`KnR @X.zHF(Kah^^e ZXOOaxrҖ-`"nbl-R,#Rt!ckƓwܴ͛2w꧹[?^73{Ðeq]/AczxYJ|qtɜ2drVa^&g@+4Tv5n{ÜBzJrT`W5ܢZy{?FIg)@L'6N1\$-9Ğ }`Zeq5rA L#YYnj^1&هp-%x w`dtAakkZvXV`Y,!a3}4):)TSm3|< j~]Vd$[ǚT?r3C.I!=)0 -E.Uc_ZA-vYMDV1&z:^cFx)CpԔm7&=xy N*@#CUE彈8ۛef>wm.+ t|L.?CexR;iVpÛ5ڢэJ6Nω*hRsY螬VO@tc`=_ 6=zޓqOkn݋:j4b"Qp#>jō6E q2c 1:`s5`#r˵ҙly; 96;Ge/Dx-i`n(F6,VK7=Kn03/LǂY; 祮P+{:L S)cI,r(& r;}sܿl?8ז&/57؟B9Yh g(rK _ "~4]!1v!O V]@>{J Zo_w}GYu"w j +Pt7e3;,̎;M?.^yfAJש_a[LSօ>@S)G*.HS pQ&>|W>?1x)1Y3'+َCŏ\} =DosSa!Tnܿ MLMmBŪ a(^1NkMo >s!+nB{J4[ zך͌tܪFA~`b +@_P@ՄJa>hCeDqu91XѳÓx>Ncr.||Yq9["Q%ot8phe&jJ Lb84C4p1E74w y<³,_JLU7CHH 5`v̳yl?!lߓJnսk#1dnigM<~:%OKf{r(VzrɠH#QBDVh1ت],[$āau:3cy ӭ _ZA04mt3X'/Ό ؈y<7՞ɿW&}fe?,l 7ʃ&-HapK@*AvR=WNҥL"aKjP|Vt˵30m^G\?< yMa,er"#cС+߹sQ!|,$ pFvN{6/}[oaĊB7s9 l?ҤduPH0)=I= 1u_,S qa wZ-)xLR/Svq.^L଄a]Plߠ;oW[b$_ƽ''M8UhutL cN:Y%q?1O2stm՘/O ަ`s BxR2S dmZmzq汖 |mNkLHMPUP!#I`\yO+ o!{>0dVD⟮(vuCmIMbg;BkPU?S,P.#q.%FOi6CRş9Ő}@#dǶ!qhcIBRD%, ɵHp' sR}_~ywV .|6ո󕄉 C)s DG34&I  p5e=Ym͕̬Ҫp8P.r'?6-eP0.%ideSL7~|Ky7-nB`o:T$z22"B&6r$vc*ÏC  X (=wR&Cxo_ .i3bwivBR'Y|/rm>'%!R(j&~R B,[AT/ݑ)q<Ό{BLsZ![WNJEɌrK2^%lw>s2ao²7(/md<M(׾bѨLFkgó3kVEJqGQ7kl-roj`3ٿZ#Tc*xұ%.&(#ZI5dJ^բvM|Xv ema5wyި̱2{нF6v#9|Jpy&CuE@jC;1Cnrb\~D#ewg1Xv):: 8߹ 4;Σ։o;^Vk;ΑOm 0ڋCrZ [oY* Nj(>&gD3h "fشŘ2Kd>Aګ`3!|C*Ô8Yu:+o` xOc@F,jvX]C,-T{}sT#˵HuG\شtYjB_? /9-U֪ENPauFŜ2A-,ꭼyZ)ri29-0T785@Xld@ ѧ}csM6ְzmp)xF|l_AK 8O S ILxdҕm.tl@W~¯0]^_!b' a~4uSڨ8B 08r? 12Lf`JejTTe+<c'n=or9z}nWLPуΨ$+d~G%= ~c\|ݘՇf,,{|9q4^%cӦzpa+J:W.^2}~^HWSLXJx1zxqMϡF3=me०#-1VhQy 0YJR?JOS ¸9Q2Hi=57<;@_3+0R˸P 1VU PEfTtԟዃ4yhKO fc {A3%jjDt/C9CV4e.OF-W2vQ~';/2*3[_ vJeny\ )pWΥO+\&mW@YxHM$|ZP.~77 A8^H^do(9}P`DUK,8ՂyVfI.~;;R@yGj }mmU7fe{gH|>({lhlK7ɂΖV8PMM&6sڈ \ R&80Y2QJO:7= 6_ygS2&Tm:&_& ki7-Oi\-g`)EZj)&Tw4.rK$c^G"i4y>FD'?|ΥP\HZq9߰q#&ʔof_CLb~-SizYS t"ԕ[8TFIfX@?eɰo4&Kqy#Yji(ЕgQ*X+4Κӭ1 Ys؏=;Lj0.97^)Z‡3enq"GCpθ>5; 0))F+6!e62H*5`8 2k@~uֻ6YN݅4Igڃ$pFDnZ6n.Yݱa*׵}kG^Kz83w#^d6,u7o O'YZ< Cf`"%i6^tR{LOX *0nﻔoS  w A^GZdOpLWnҾt @-AH\GyfW9%O)_c LVS^ȇbX_kRQWKא7~;3/SZ)PS#]XC*"PZL.+s1lSjE/`RHNvTlDύix&=O , tuxYL)gnfj ^.X"m"nIreO?M*;@h?D9Gٗ'Y2 #pǝZ?ިBxW oc~qH$ſH^\w3MW5R…]A97m\ghT)`Ul`aG mWØH;_m;:BV)sEܷQeV vɾ%e"F bΰilCZ>ְ_V$+yXt V}e/6yDY 8[㝞^Yn;h$\,L&- &~EaV *&pk/94(GMm3 r΋ۯsg89jw=غ+ՇWvw8[8&MnILS^CǼ:|%wSRC D}ff(&JV[A_:uo|DsO4"!#E`l+z%L8mehݸ,d$4+<h*3G iD8m3qblƘW o8iβ#X YbrKGC:3zt?QÔG˾xKTem`[m!"{V7bӕq}=*KgVө )[yp 7 n;)|IJ.52;Yr6LˊT2 Ӫ {y\H"zoH8^&-/KĪdG\ʛرݾ$?,7gڝ1:1<6Kڝ`; Bg+J6״oܫdLn+N>j&g · 5ܦ.&>~59UIv Yީ cq6 &2mh M_Z݊Ro zW Vb]Et,eDgۜC;:`rj0' (6d!F]$@&;8v( {uѝpƏlS3:/"zpGøa!T{u΍'7BeBğ|qDe1>-hj81.QnGD3e+Qܢ^Hg7 ŧ',kp~R Nx+pT^z;0ЇFhݘ*~Wُw0|plgCb=|A&cD<&-Ju3s` pR!/ίG`,-).垖C֔DƟ 󊧈a8l폝i}ί^߿1d1u)lyRMY-e 7!a*Yw8IQw__Q ![D{t4m|TymPL&kxf O &xHXF/D>u\j-j덎b lw-Bjn;9S#.#u)dE|AbT!75 EvQ}A *ZlIjmA:6;9V4wuo( v)E}2vb='Bn'&?މ#j{o?؃gɵV}Lf]?C.F>ndPI rG˺@<$.7ɴ>-⎄re)yz7A!K3ЫP6N2 e*BPByUqyI!B)BS}&wUhAs9[&N)H:jԹƹ.Z]CǸ'\vU{(=^b힝n\\r4B.D):ܰrq.S)_H2 }C0^v8)k /@zbu?"s fc~ [x9z9T"آ EO4/ksTڑ 8~zEF-AϳѬ{ծ#]<>x O-!F{务\3"B'P:5$I5ܑ5!54N Iܺ4c@8B0v]54dR1ѤMxͰC%c jSd# kE׈x7 ltP}d`Z5]-e "WOljIn<o֯5@utU @[%_=0Նi.c9"281Rc$.onzn,fexT|i&s?qgZdy{TCI?nL?(:/F}A9v@qSqPI-~fӽL^gWa [` 1"Ll却.twԆ^mғDj|PW^qޟb vk:e%wv !``Y OC-\h2awCi mNo])\orrsTy1q"Ustq,\xuĵXm8NTD0 8KMC, 39cB}ZMA,yRo?y۾^*;.{ vwxO \"}%/L-Ғ+sZ9M$׀*)"V-!LӀz1IĭF\>`mNcHP"A!Gm K%w]cfk%͞!e~s]sBi40Ċ.*;ej&/ #k2S4e (AK}_T$zv4:km0Y>6JCHl4G%2| 粀;, n%7\ G'+7,#mrD ^re/ȿ<xJ0UI1I,YPjalb/c6!PJ&']<5USz\H/򋊊u䗻aj EJjZG_O]sfӧ)>/*zjij 9MAqЏKQA ٦lYt6 \NHD] "|O, GUt+Gq3||I5ݠzurn;L -Ɖ8+  ߓы2qֱjû@d'ހ,!W2rR1MRsfs+x<_>5O4t[).yFBj(5+ .x; UUZ a0ta.U:Dn cբ5tu 7\>sH/]!◨t&.GLUJZZI/ԁޢj=;,ZmfC.z}^Ph<&|(m$;Wd/e}5f5ڰjy܌W]XFU/!6xoi\S74+%_bKvޣ%= k!Qv/6rTVy䎌2XCO;22^c n;yqL(|wO"EvK*Y3j#s*8Ic:PӎP03Zνo#o& zovvo)[gseLr5%&!V$O3'@$e-1ơdv9lZ+!A+c ;z4.EjkIǃԈ^_.EG͋jF޾ \K!qs<IP>[zpr0iHvLLm|%\OE<aW[otNAexWX: P<sx3}?}cYJ&<*9{vn/>@'۞8a]Y/lmCk"1K-xM}NV[7g~3x+ Am1AY{/n|Bf&c9pj3KO0N-garM:*@@Ҝ NW723yÄnM3i.u&4174|8u1\IAsSZ+OPgiFb2C*@$>e7JO/2@x<;:7Lj6xs"!sx_,wшHrS?'7pCҍ6599\8 lZӫ#Po2"xsct ԭmD&Q(ztFV ;Wfetc,-vy RD˔9>R ã2ۨ d*o6('h6PzݛX_Mu"@YO/j ġ#6 W9kd_ ø#){lޠ1|wlMU 6m*!T0 qC,F-W5g=gMWҍա`xE<#uJxA,:>tWl5NAdbTm~8@K䆏~ |+MB/M1PKFv//M ڋY^)R&RȓIl 3 &x`qm׽:#qmPd/Bk]!)8o uo Zv6"A͖:4pNN3IՈizu_SA}VMFI'Mr=zfE{9JX G Mey?[jSt Kzœ 4:wtNix@֤xp!zɀ$moŴkG$;09l/὘E6Tѡ )V x>u)Κ+_s A 502KG,.'8n^.:z+&*L@lǷ9Kل%1;ԯfIOqN=K/FڸbuqV)uG1qi>#{+~wW//֦5MصqNehQjTh&x Y]a Ԍ1W聽ZoJ_QpbHN#FHhA eE~MB#jfA UJ6q};Z=tm6a>qTj?m;}Թ pJD:جPJT(RTB%HP 6l,kPP:kTrFq/C E02Dw.#l`:ĩ7S;-IIOi&H nſzhwxA~ N$+tQ2:5`6e`5tDPmiUޅ> r5NRzecXqT+8ۮ1,̀SqĿrJmatn u`LDǽfӴ@ZV_' }]Mֳ/kL)c dh!jQ[A' q_&ۨOE1",UZ3EgD;cX]ְ˝SI~x0fJPӁy;>:ߍ.& sd8n$3sͥ~{Pe0bmLnX 6feUjZO.uZl-~C:/e?)J5|S1c*?A*bH8\ ]ObQ' c-a,MD[$`5(|`c킔b2F2-N#FN5 P؟G1g͂,|p{x7M*l+CھkgK?+)*$xSA!x׌?$h)Y,E:',/^/UNk (}ĵAWbX8):p&(IvW1Arh5Kܘ VıV?{eWP@JƝMG{\An>y8N?.]O.q=MLKG8<oj8g#^.܁_&K$tknX h^T^ck&g=T*-WyfC[V+-skFR [wT̗Lĕ?քz!a Sj,W ^!wN (cqqj_C/Jl:u qkں2D|q%g ڥ# jf/ w0In<Og5OtT1%N] !hY S_P<MХړ!l4U=G/ɛL[O"=nq#1Q|KduVLy*/"tk;RB)*iw]'1Al_d*a[IcwwӍG(ʁt6Ps8t$7O#2-lh_A vf `+D`LrKϑo!vh>Yl &2cDp2-@<ŧoZՒ j{'?40kHq&<+رk6"98 :JU ކtjN4Oˏ${Hsx& l] ឲ ӊ I#2Mme?C *EH}"arHiF"*:" (ߕ'1}dط)jxEAG>t $7^!B>LSɏr"ESa^2aRRt6 1E} <8RjQG2-3Q[nf 64X5fbLz+TfI;ޓ#Pk/ʯlݑ2rݣ5 ôPJ>k'Fc`]և|nEW-nh rd$(rsO|5'{4Xf`S h眅 W"f.͉ "9QQ4ǃ29^:}<֕ͻfT_1lP嘳dPS$4k$0R5+$={qws(yщ3.m,q?8aneHJEU]{n2km{NW6o:wjA}};MguCyrhe=:s`{z@ YO.N .~َsbT T85p(MBB!5ˏؘ2zWs& ژRmdǍ΁%Ҋ(l|GA86;>!Gc16xxw/6֨>D>>'2G-^%3$B9%'5P_|oY8¬d27NO!DO~ SSD^2AYo1ߏ['Mr L|s /Ft*TqVyWu'͒^O o4Z%gFa/;~i5o]wCxqa/Jt4f:T8%?*f^( <[R/'G~gYq^9{ƒ\P';E& ]x]@ X;,͠vЂ_:V*0Wy"=ʒJ@JSv(lNZ8b'{Yݿ/%Lk کԙwa6qJۙOӞ1B*H56?v8η\wǖo } KTS^ T!@5H)\#M$M0!ydڡEm-p;+D W%ecK}mzR39cuC"Et GdP 82 PPvT @C"H$vELD=Ym G#6*yQnRgOccߖL$G_88 .}`2Vʿk51Ԥ9[&4NR?a34ʐ WGMF)DH.W^ f7hR)(:Tcc(Qy gTնG5]g’M^)"ن ,FIGhA6n)e~wj/s6v8fe~^gLX$cv<{4> 0j`ުeMIDnJݎLxtꒈy&pBS(A9gjo5IRS]sZF9^\j, Oj b[W_踇-ğʨM%G15$Z_dE\zL@dJLD5Ņ+OמQ`6Bӹ5xTl6:!:IeՇ.!,՞ ט\\p Aф>KQ4-?JT䆓> _~T&Ok::jum#.K|?˛Bلd"M18Rd1hK*;fG Q(Il,}w0Hp?5y&.s_ }w%uNLU ]e´k/_N,i r&؄eH:ӍN3oP&0~+eIelPSj"џ'NE:,YTVXC dL{ xCZal: ^U߽.~r;ܷX ww?kGN@'ZIlk$nBr )gunLP93f.-䳘_ |ZyȐ-Qp S-fd]cVrA^ yf<&W+DX !jIie?-װBVSpL_ӅWndq^O!q%@qr3tqaT\*:Z{jWgld&3o,(ʔ7BinT(OhlsB뗶Ǧ]*3kn da8җZkBi' FfYf1'mi=-`1Z K@H'KZr^gNB"NRɤVEMiu ZZ(D#( "?8^r5K0z$@ax&4j Q)-em5T8;xaʻE+l]ha`\=7kfUy[}l*f["؟$ CqR*-q#53tUM<<<F)x3fJ-^: ;kCoh~PKO׎0 !>iEW[WeD(-J|{amҮ$B&dx*lJyz02\ZSuSG' o4, Ts#:1z?haԗșϞxddqEqc5|tr5,Eif ,˱>D FDr/N6XT؊ШTAcfE%tS!^hoV.A[Lgg}[#ܽi։S8TLK;~v,ѦIy}JVр1M H ʕGSÆG3:_e-q;Әo3ɵ(K~\sV."~P^v1H_2v#aot gMFXo胆~P*$qyXڹ? mPU(m mJG~0;6u*H!Q&KaV㵞ͅ~6j(8 6>}Q](,`t y X.z)'mԴpS@eP*-.Ĝ8TrF~P27Íj)Qm_X5%28vkVUg!C)>r.?{qTZ@ -i nˠbaK5i'2 V>d=d?,2myQfYFՏ~?0N9׫tϧZTw*Qc+C+@_45@QI;_66lr)7&JfiI^˦Gɝ(h>Y5Df*ؓsRyKҽSGX*zq-wËpxk5gzeiq Ük2m%\5D;[WXFӊӟey{"QxH.C1ɉC8t4=fГ#S:Pۘ&+$jЗ#KCMtZYW(mN̟+ŁqB8Je#y,px}G6#%:q%9pGgTZot~Iy5ϼ5 TJ1Y~$)C{-2`k C 9EDw+Dѳ%mP1YÍ@!ݻ2mk4_3C SeSk_%aRDZr~upAߘG>#Wf.燤fI!^oA> VuU E 缴倝tp<B&I ,i;ȺL=0yJMs=~xWAp(D]@/4WEΒtksg}8猳#Bʍ+U1Ez.[> fmO0֜d#3.䟖+3LAL$,F$xxE-E(Yf^dO 9n>bsդ!D~f`͡\+!EK}*ufGy,sj=u53W.zEʸDO.r^7VI Qf@:odU aWOXh53a.t8(Vv|ƚ gkX_6>ɯ9n&f*5fe_Zx3Ɠ<t&_o6 nLXwqtufFBD\FØϮCI]CV% cԹn $9!n2E 'tN#^a>H;aQQhFDTu.ԫD~&A7?k+Ǭw0R|"p?d>eyC% ncі(VȘW;/9x{aKG*X˻ߠ^C#*'lN,5^lO ԰,2xv',wwq-^ZíH2&ѝT^AtIc=t` r5MGd FEؠ 9yQ\t!>F+p֙w$D#"Qo~Dzu /ҕI.(bcHtl$F6sJt4P+I /i2FOR}P! :JyJ0g)kaz5gƘgb 4w[u1QFyGTFh,CΤd\ eP˞2ؘ1kj ;ős'O_ūH,Xƻ܍љ̖,d] C4:HL/d6w[D9LJ'O`$#aULxoG0 θ pJqjyx^aǙL>J,t!SQZ߄ j]'+}^Wz4p!ӯB:5yP թ2eHI>.(fB$b+~I= Y}2|.wS@8:@;LԵ7 Q]ч4Jdw=(UtŶ ^=tˮL./xDPs=1x\o li#B+3eɇ4Pye!cm83)Ϻ?Hbw5'HV䧥^ 쎈1h$VA<M"IBR2PY/Viġ?9ŭ> ||"j}lAj="|t7Z3qAOanfukMX$>5h[p5ؚPtئgbkd?iGW[&KZD1GՕM՜xNVrNȮH7M+Rp3O9G=퐎C!x1?B O͓[o <^ Up+z5b QH,ߏj5aK!$䈄ո~f+`ХsUR ĻK͝g~[.!͐l08sW#ʃ|H owd!ɪnxZ3z(Ƅ-Ka!g:Ϥj`-_w{$c1-dC,Jxϳ;+X8lm۞ñTfy. +%3=8_SĖ{ʊ*r#AryJYIi]ֿc 0PݚYeJPD?_-_ȸ1JQns*'E&N~qEAwȞSgOYFCjYْP*TS?0G@ f‘3Z H޲vQKޒ]p:Qy٭g1qsz6Dwٚ.6g(fk"HyImdn&sGMݎdKtlnkJ4w)ꎸ 5d_o&{={9J3-cCȜuތо#`5uw_Śy)pm\sLGܛa(;3m0C_?X1ೖ! 6Mn=p0?->ɱl%POvDZ"eųAA-2`$rJvQ7%ˍ\h{Phj wBh?M rT 0V+K] DkļPaϝ=ɡ=ZNo5.\|Q,ejj|W #֩I!٫&8@ 5 $G,-4U9`+8;?8NJ``;N+b_"\okIoPPt=ޠj<4vPB9QR?9*d\ΘK [tUP+M=k\H[.UϛF_zZnxʋ(P>>3?G L˾[Boşp? P4r}XZFI?Gaw~dkE痚\6jږy4p[fʥ·\9a փ"7^[`<># c]v*Ʒ yvp] -Ъ1NMNmjy%NK4ߣ B'}(KxNVԑBOa뵹56gAU'Ƴ>G?E 6{JP;Kx-{yC?$t@Fc^< cm"o)Kyi+;mZ"D{"A]!Au{am(@0uTЈvΈQkm&N5 "=БHni(6b4­D9^܇;#0iM)i粳[k(A{co x'~; 2 4JYPni\!e: ?hqӣS/$aрUt:,瞸ogsh48Oj 4DžIi3Q3|$#P VdP~n-PJiWG/'q;eyKƀLôzzыB,1[o|6'} %ˢ:+5XQeۖRA)WBNݸ|7grQK}ߙLM,M0@cA/蹵$)7}Nz[ۺp`UyO_*R -7\s>"ybi-Qbf-ReHƧ T֜a[A@_e CP{%`B^dv˚v ϔx"G dS~MM`!JzҊDiU?Hwo8)-VUK'uK+Ð de\E]|f=M-=]Sxԑ;v0ޟLʯX^"6 Ybf4#eaB\ k(LNc^^Vlp[kO6+ 8M=Gi,Ur"\tbަQQ`3ŞײVxqR|Ix>oZ;M /Pצtg[mY-w3kºܕ࿕OS,vvRc+0Yќ#Լ]ʹJ'6hsxSh{/',a?^,-~qՔUR(;s\>I2ז&qy p`@8u!mmGqWJ6'lsp>pdNY+t;L`JZC=IࢪI&67; y>&5F\>rKX%>mo$eC%BHd:  [mi.^A~yLZ- .2@Sf|:b1 eF+<9cb&k7a<\Ypob|ޕl# >=/pF=5k7(ڢ5gS]\MˣKƨe"li/=,/69fIS"ꩯ%XT xN)vR!"faMײ(ԢNCYp*$\8m?yG5_U\nL nN>RAGacFJUX.E֎Stэ®!akvIP߂3 A5rW1Wx9=&,G2iB}gQsYt#/Tr1PNAlڑFBDSso>C A_":8h!"]t#;N{uKoZ0Ťn #֭FwAȫYҠɇ: PکQ_JQ`3ƞ NG̅ם\H8dѹ++$ǂ / B_zV?ύУa-{RP;?H|j) 9x0SJv#jWا̶9j& hxuoɖ>dy11FASLhUBVȼ T.wة`פ8&QguLs/]N3 \fh@ސҞk#+̖%to1VG v9{i7Fel>uSfuYh#ҡ*O Tڡ`R:2l;MH4LSt;;ב 1k~’ؘW{սm pt.2tV&~\>/̺ȯ')v,!-RZJO `* hc`o}"CYOrdD߶9 :) z%1C$h JrY*og{G.HXIp֚߭y 7ܾ~-)pG\2/ؿ?ɹǘC4ґ,*GXnAM8Kq 컉ׂ-^W|';WDz%* nP_膣1(xj֗s.%p돉z2 ̷ W&Xb4HfQٺY\ŷE s&LQS%5iԧZ$J3p"JQ_yQ+6՗WL,H[3Iq~y.bGi.$WMw_>I'= V4@kB|%W?:l( =q]!GJF롊84Đ3ʿ5 (~U휳 {s&o%(^?zAcdd;{+Ž%HZJB{N_twi@. A&H6H&mP_3DرS 9ʫPAEc:y/Y.82`rFax%l JMw Byu=F!+r}Әp[C?Bnv}oe~XE o֑Boյ2EIFk4]?pY0o_&"$V`12j5_ LK8Z *TIlь#$x^dSʼa"T nƺu{B ٞp*v+Bpl%Fl8Ł bhAk~n쏿 wۦj_lDܪi52J 9vm冶KҸOp;0_Ljt2b?wv-?G%Fn'㮐EܥJ㔸8DshWp&~qM|J(|l !~O ~ M'$#)K~i[2(AcCOV|T-Me_ET٨'ܪĬA=$b'c`CDYl>'ͬװUшStq`|sP1 QX=DE.F},Zvy͠w$FX:0Lҿ/jv6_p+ M]H+!]T1X;:B'z3EF`|K`@69 F} ?[}gb+8u?5/C@#M uz\D Q-'cA{ Bly:ղHM )mMyֈhYiRt#£[8mYojHa?=`ۈ ꍠN_kXr."w͎=HUljf7,Mn %e]JO@&xcN!EBbhdW[:W-7i4P&E_iNE`'wAZ07'NA㩣d++M]Y_(!iRUVHGkq{i^RG"vKF}lask@AcơH{72N%vQ)PG߅` rȹ2<* V)B6 C(L[IEA D2Q19%־73wyzT\c>U7N+"`4䢓cb8l卷v13 YuXCɹ7HV`ɎU2teSl:ÊӷZu"Bziq!FԐHҭ#I_*cn7qg@[PqQM åsxV5xV#&)Z<\y̮ޙ#37yۻ )$RD[ pgz3'}o6 lK]c6#YM!iKV(4 DV_JiFLI(Mib^9֘Y^Yz?yn6'ԲGϔ;j-,Oi SaD S+([i1@:x^@R O=QU;YM|Ja#}05!oDBU?g$cE2|6@Uȯts2~ͨNQZO؉/dž Cn)²LUyIגHrSR'rrKF2[xnR鳇m̗pdF"<͘[ rKCAWk&\LM*?(rJP⚥-;2-;RRԧ8čߓ%=T2$Ϲ\[&QUdns%t$`7CXNT~pЖjCymZiHN0'rMef7P-M#YS$ 0ƣ|o93+>(.>v;߻$&L7Y,Vp!F{C=W>?]֧.TàoL2_aA&ʣp翸^<,~ly |݇SjŹ9=~Lj.M2 .Ƴ|Ha5*Q@ҬmqJjY$rM~ة8]Ɋ CqS!&4mU_kS3D 2m딍 W_nτk˯[XI)"$.chZ}a8ai>n#Z0.fl$E5șA؛_]`"yC;nVӚ Q~eJ&2i6 $]5#UT2q#<_xPoRDߴ0C* Xnpԓ{mojo;CiebXml«Mr +j-$sӰTTUH̀?ͱ9=#oƐ62TssJK]We2 _5okGW-8{<01Q',<u{06r-?VG`ɌcBWZ BE:acs)_&L.S5>iCHgx"gy',=Fފuj*,Bd_f ғ߲2ܬ~Pa}p3íu 6KN Զ=SH#R)<5a >x>w5L$5g\}u᎐Ie=YT !bO ̨cˋ찒".VŖß2#~=. "MK2J,.#((3Ǡ$.,:S"]AћJPꤶSy֭$dx4]Rm]>u%dHr6*~Flpb'dx D?E#cj1l<.5/o0T[x aYbT'!EaoV-9>gx7zaW #% V°J\+CXˢCS61Iͳ # ,:JN}cIVӰD-cE 6`A@'s0 A| qL-/Cnġ٭`Ǭ*b-08ͻ}}Tp~. iRbA whiXl mLD.Ziۄ!]} kLVgH§5]Liė܋Sct N,azp޵*}6ˏ]!wR} X;4uR4 ¹]O>%n>BQ8DcFR`Q:u;[7G=6#VE5ŵю} m` l0h6tA֩7z/iB1C$&a!b$T)w( V޵[E0Wp?zY ?T.U,fų2"[AV <VzN /'7JBgػ$v~C^p?tܔ93y@%Rfu=D[ܽf 5\VR!:3>T:e@f>=L,q]|Aah5&AN.mߔs [BstweVA}6ĵO]Ce{XFW#;Գ2\LjRYޜeZ"KRUOpdtF0SciVӕ_NRqbh.Fc+NO!x,#GJώ?֪gLǼї,P?3/wt9e7=9#poi% ?7/DI5O˲-P_;!BFy5T]Έ+2 q \M=n/v\C RƯob~:ݱ;mIxF`.lfE@Owo7^טtq7.4^.m, +3R*O - yC 졮 dvVUDB!@/o#qp`h+}ЙZtqB*84Hy)|T'ilnO`Ǟ9>k3vJȻԧpOfBjۜQKBxVTP{G Bү.r!z/wm$KLb$Yf`eH+Id^c=EaF#MfŔgDԙcJ|j0~LZ \ |H{ ;?&pb/ |vTj:⾧ޘRMabBz͡l6>1]}4fj\TY@dSe*Q&ܻLtY;x$b_~1LP{8+8HP b66¿1l2ƫ{$EanwWW b5hdqkFiSaAL>p(*|͈I8+̐<.=Ʃ5&<lYM(m Ǎ.ҥ48=˻= HyE.Du\sXf'a!`Nn$eB$V>&\Zk7$iam_$BgąjrbߖdPuTcm[ۆxma6miIp7r6klNeMv~Ǣ<{|G:g ݘ/@ GV82W8،be*}Z؜qp0!rB*g;|`<[ * , 2DȈw9M|Ъec3[5ʼnt`ЋxheÎ}3 !ӳ^ִ  Nm#mz(+P먇˒" %vLJ\pf{2ntz7n)A]| Amh(ORCԾdyv_h-sgjWwҨ mVTuOnp{` #ušođY*o8'} `"N.|ra9n;Yns$:Wv4K4<1;ŀ`Yݹ`GtݛOJ1I/xlAZVtB"T0+]auj>/;lc؆;ճLXu%t*a1tEf8oC$Q=49gaKݐGնkãԙp1Xc +(&f I66F%B wCD~]mhD>d%¨L>wkMZ\JD4wD=z";ʄc JqmZ`D*ڪ5;Z;f+3Oأ$%0ni0n:k$W$zLBnY8>1Ap|-DaO3=9W<Ɯ[a[$oh.Xl6\(i kCHّER.cp(dwh xUfZiK $wg>Xk$ n5HJ~khwukύZ\]-}u]LƯ9lePm4m.s Cʝ+m]U3p66nkjjE(@# Fsؕ`4y \l!x?c=TCPoHX*kfqlt^_5⋅! ;ɲʸFjo^~&4b f _kuj@ki}0n¾tOy.p ՝g}݂灤핍--5d?55Fь|04㴝䒭밎T%Ҹ.XN=e@q)@_J Cܵ"Q@=ZRTŪw'!%ipISEqa?jG6Pa49^d8yx$qUfG֚T6LEl*6F'77ֿŝjSٲX1-ʼܔXh~~w?߰@E7Lrm"`ءNH(W[~F9V}|l#LT Yy9t$RZ }qXI\n~߹ǕP<Ȯ$O;1 ^]E=FPbCXW|f_4%FmލV?%d)m5w# f_efLׇxO7̸`]^w\HfTήٗ_兀S7߸8XCi/u炙Kt/l_e+) #أ6T<]0Kh[عߓazkV[%\ ScdCߪnoLO >@CP` pmaSIaQݻVVs3\R&)jfNWEѕѡҰWDuFYl<&9Β|j)b@`N!U'rn_f'D):ˎ(Q%߃bؓUuM7)R"7l;{e$ `꠶vТVeǨY`mv*X#Œ4'gP]GDN `>2dv`1v/J3#VRn_I?IٓUrSy9B*Vy/Hl&l qe`U`GڹS<'7ɕju8f]6(lx>Ft7mE.ھN<Մk"`Aˈ!f3)aH wW^xn&ꖯ)IRާ9{_P359?uV#]u!KJ͈ Gb&ȳ񞇊]4tҚ Li>fa?T 0Un8L'#HT0/fo6QkXYZP[S`:V-4Zѩ p]6YqGGNeQ Ji{z}$RL]$:=J)!?tpSTi ߬='@`뀏B8RUڗTV0p6%m/ %;)pM\GV@*htaYN3ă"/6=G=y/Yhb_L7d>aa17pKc2n 6ۦn9 ™Yd2_p/4ݚ,P{$`w(aVz’hv07ʎtn>z#YNJC;CzSػ]]T Uua cF$LYX-g!hsƤZ `uRCoֆ_Be _fQ+} ECkYyp$4Dx'֮*+E`hwSf%ܥ$7eŬE#1f{oNM-%Bi VMDoN$DY~ۙf;֌`K߆3Uc_L5|Ņ-FhtJ*(sfeC%fnLcUT9NBb0S:}1AVz%jLo;Y%-g9?%vKo*D,יMc|+b}yV#u!$ifR##Z\zV hc5""iY@Yrk5 G]Nǝ(Rsyo)0jR'L߾}K尕д+HՁGf^U3KЉ׶+HrdK/ 3R7Lv'S1 ,sRd1Am+GER.?ԖfӐEOə_0c2 e;ڙ|KNy5! D^5Ǫ:ו xJ۱GbDoP%f֚ڝ"hd#QZďӽ e dyQOQ#@75ID$sd>=jq t_lr`u>vSnu*RiNIj>(K/ٱ\xRB܂Ma; ,vˍm6le숿}E} P5\h 9I WDYb0?O6IC:$Շ]/3վ-DFwUhY&qQX8$ fm`6ᰝK.01P^J*ƟZ{Dӡ&xʰޑP\/iEiuj^IByP+{xgvƛ6b\vG)OT?1d4bHT4PZj<, O%Oiq(7sC}s +.C8QR(Qk?[V%dB`p#E;Ѥlmb2x)*f&fwޖnRamԬp0xW8eC55 `G4k)F2l4p\t{1,vbVf=!IY@"3{b&o#^BA֙n|l#D(Xgoշ--7;[?zM]z?3o!يC ̖n$T#%P#:&@NE1L5uيx#Ӿul3 WӁE( _W~WxCjŽ6&npJfY@zK)2à3[t5~5%au~O NJ@0)|Ba#U+N E\-jbUyN;`9o4PYz[%n/DvKd!3*,JDL1R j-0(+1وpT)8}N Yr>匽PэD9e9Ѿ O/7f'a'C+VJwzyȕ@lm8219 d\Ndpuf4:Shm돒z>)RNt[o d XeH6av1hĿus>%RZÕ`;b}ҸiL:G;iO>qcj\fqPH֙~בZ/h<7n'ʖRf/`h[UʹKP%OHtKd\S|ܙ-PXS;}|4l!&iOC2, g 1Aam\I*vFY Za QY{qF7@fl~3_|~6gW=W9xYm'kfM5%!:<-9{quA4FʘP;:(M^9̑s)(Y2 9M4|HS2gYۘh҅Z&yOď9_ ʵ,}; =_A EXv2G rd\T5TN ~b-[`vƵGuޫxP6P%6ke/s} R*Ź+.LNV)֋^]DmR zQ;,uWڮْuY3̍o0:+Dt%%J G9ZGyv-V_!gZ2L``G-╼xIp@J26fxh /l(Ci D Kb᧹YUK-5"czG~mmlOF=kgI 0 yތ D Y`$ Bz@4 .j)_gN5)0=izT4K0L8 F!bНC CY/ W@;:V v'9_*W؆—$Yf+ [QHb NLi$ 2L80G $vU]:.Q(4ַ$-)jtÔ*v_]ɚ_iR4U4/+O6'&:pd~r}͐m"gϢ[5Q EE/*;%=TR@?GT].,mDV#@o1Ш3e>oD J;曳O~ |e:u7ѴLNf%TN#elfPU&˽Mđ>$j۹iVZ1(pHĢ?^xǽ6d0IaHa7k?L꣊m(.+XNj 0IaMHGyE*+bBVJW3/t`q^V^܄ojGxX9W@Y$lwg@S{p#8,c$WTXSI"7g;(eҵ5[ZGbi Wh~ ږ+M@rd\@l9SK0-/Q>d E ͚~?9"U ,6MTU,)B'D/XLۃD.J9f&$jo/eyy_5#h97y0і*DR%f፺6 F4*]k4eˢƛېcUrLj2,[=1Nɦ F% k`-KD DPaۄbKXrnϙ٥eCZu5y`zDOha"IReP~vk{VS)4wGr[O&iE@/?sܽ7%B?64lolŤRӪpTQ4"BbXňS @>piIl{{}\DG'kdvqGqX6$g8Y=LGNGcWٺkۄ5֡ӭ9o-W["87.T[oM0v.fB@6?!sX(_ٕ]˚QDp '#|_~/! kGa8'WW3I+xd 4S(,T`mO ?2Gmcvm1g I74B4`fs$B_As[uh*W'}:^N*׭dEZK,|'nT|1|0;a~"lZfv gr֋;:*1Kg)`u-e3:cL9H״ƒۂ*<u8RHN{|&!-#Yo?0S +sk.6ƺ.GCgK37 VKV6Nufb`xl8qe7EA0șDe[|<̇LPatd"Q45Ejxڧ:)5spE+z%]~j/=!# *]ͩ/\,m4g1g>͇6鄡\sƞgP<Y7`yFq=MzRuͿT%SC}J[Sw {As&_ɹ|{tPE'0鮄kw2 ~88>e}X[pG%ཤyCl䇭I=eAI%p 8^ $gXv?T9G kCPYAwinj[ E(F4>+Ϫiv,Z8`V<U벤·(TaŰ*ݤ xe~{1$EBBLW.|Cxk/ Hs耿J$j9w M ]pwC0sCYÛ3E`ƅHVn-P&UrrHlEfA_n>AL%:2+NvsBD}!F5";ˀFN˕~ki-jtSf̢QS$sP\? Fbw^/`˩ ujpp2:<}824D3/o6Qdd8'hI6ͅZA#_N((U>굵3]Cg1MQ NN[#¾tyτ_ux #;<,Wv|k Fn2)`U%T?J䇡xԖåfkr<8a:qCO\.#sVq'>q?( e9RyK"2%8݇K1-Md+7 "'eN ;i {Nkx%{0 '4UL~L>g ݃!\d<{׉C~] i2DQ3hvQ1So:4kOd;m09匽P;>ըiJbD')$j]1RTLj.!8uqr+~IqŸyoHV CeMBj_rh&B{IC梒EcP D%z_6tiUhZc1P>TnƤWv vRf.5=>הH5';mE{В 2#fU)- ͎iOPuXO/@٩RRrHʌ*FNlRn'ƉFe[buk t_*\\fɸ<_hqK((;Q`<dq⩩nVs͗P>YO5އg{dm($єwqҔ,agX1b;[W!{R/IimӐzˈfBõh@Q;'sV'NJی`LOC|cT}0 *S}F>#! gV!:[S8_ t٥*Tzl/dmM%z5:x2.$}A?b pTWaśMpGޗ$VR@7Kž41& ~x7"c;S&7+<Ϟ Ƴ#dkebl_&CE55=d%ӡJ_ KQ1GgB'tk;h,*}zXLF. P^mqAobX(^a3DwwY1RmFa=fU z4RxN>}=2A}"csR>vxX=>`Nq.KtRm"a(֗Z$52Scf_rDn]s=}4y1u l5[St VeqvCTSR:x.#d g'-O&tZx.5%EBֿT `h,v=Mҩʎz|{Vof9rs fNR3:0q n.i23x¢UAt>o+0&mW43&7u @\y.A7%QkFg=(O&9iZi{9m3ķXCQ#qPirC߰٠xۅ`LH2M=:+&: *YXgf&}{'WswXqv:+jfq6@:Xt 6;oۣ}#EMrjFh2f[OaAp3hǓ:MP/nwZ?[)50jl,=($| ,jpqU` QGx9')p$!>DŽ7oeVYʥ5rB#/<,mn~ L\Nan8ʀ%(DZ)a@ <|GKqk4D`H"(e`DcH"WXbי-Zx@'j~7:W4IŬM ;ɟx g2O!;2fP0 B \1SB{>Q Ky93OCGȊ_l'pC3E?Po.#8N|&{- "jLX!. 2 0MNlRb')VOVYb7Dy-\ЁxrʐG_c1{׍WSDS)28aZJ@?NE;A.ɒC_k 4{|ۃS.dPP 5V&Sqw)G@i ݇< GeŻłuN5J:W¤:]ڻOr^+Dے| iԖD8J~{NcACM#y n}4(fe"mdy,r>xBG\نZ=@)HPb$=$Nfs`Z an*KQwأ̰ɴEZZ4./J.XEC2H`}eV@֨? cƶR b#"!Tۛ~2o'N|#1d躸ƃ0;Va70"u 齦)"/.ī#9ce@B[`OZcqE>3gprr'O;Y,=_pN™IJ c#ϐZZZ+[#i޽q MڐI.Yѝn3\ ۞kZyZ]! 1>R G#er櫷݊XVUf,e$aHԸ͖=zsnF#1AM ><=$V( }\5[#q&˛٘ؑr c^]wG9!%ŪoNM&eB؈W1E` azvG~e*I(ɴ{~bP$ N> ]pK `T8$K̢T+$oG!ӻ# [-lw/EtIrG8ʡO9[ C35ݢÒ;- 55VRR &fr$Y-?\$d1Ux(VQU%O1jxЮBe16Jl>Tt\qjE!e_@PYbrUΟ"׆bN Ӗn;K%8*R^Dr`#C3zn:nHmyfWխ$JQRļ,<μ` 9vkt?TdQ.K`\=)*JjcV* n0'}1.64IV HWb$Ki CFw-| ׄό9|֩w ,qY$tf7y.ؔ iB{?Ƞ@uڭLY 87 GVlNB3՗*NHpiT'I@0}wi#m | coi=JʗMTMCq4PjPH(^7] o 8̾wPSH4볕k>]^#Lj;cx|djF֮XƮ3Qh'Ki#OM/ti+9SSq`$ׯ;JF6v[+7[;Vv'9YBz憸I:.wO$qoΝZO7ƺ0T):7>b5sx WqWRN!̃62{H@)ރBp)>\ĸ[n!Ϗ[$9 "=gJ195kIkEWxY3hW3-SN#X}2 %M-  Tf Oa_ Qkx|vh Lz5u7t⠇WRe]>Bo}Iɟvt 9{eJS&s+"ƊU02;r U6??8{,`v]˲9Cu&MlMfʟZZGM%yv %lHR,E+%/==Ƣ\\vԔht^ے_$Pa0ďWb??Ξ7pOu%Whs Mպ12-[?#\n82BI,-k=_}s+wum4x=Ѕ !-]ƮؗR^WhoG2]Qv7 3 LW֏5~оC9aa%(I6}MHv$-8<zUoHMȚY:7g5S@ܔNQ*_E)Dv#^aq.l8'";b Ip߬d .piӤ1xB[b8hr.CJЫ'A L/N{ Mfr^LHi mcԁ_/Z:j=gB^֮rr6]jBy@΀SS^#i9R P‘  $% QZ@J8݆/5zߐB^˦Ty 5$dv坱6} unR9HY4E*Q1OM^=!"w7J[A땟d>Wf+qE Ѣ`5>.z+>LL< 1뾛p[ =7`*Ҁ1aW#5#_cM3r9J]P)yU\ќTgsK G#Zm_D;=G1fRw-,ofgYŠkڠt}TmIT\|DΛeOSF=4O`H-҂#ʸ%P.COV@-Ta݀V@JĽ}ߣ#s$}l5hNoqfJbEpζprb#fKϊ9orЪ.M =ٯr)"_f'3},$RX{~7&AIbw#+'B7qP$9ڸ]M.\B9̀!3Ct48Af225U*C,jk/{jt;]tSC|2"Ua!Zv Wp}\-8N=:Fk2F 8 C 8M&N~|hnAZ~1]O۲#]^h Y,W7"J6MBFc/abJm2큨ASJWӴ854ovޘx#"HJi]r b{**ݟ\ 4&KL>k1j}: DWF*ibD A4Ʒq5.8.ZΦ/lIщ`Hj.yo+hA΃w?=da&v$s/εre~1vޛ.[4eZ;IO!|nGgzl'B#!.yoLUQ%e7X2.Z?z٘w[u2?_@!_'ke a^>Hl򈠥ZF5@r1qNRoHΛ@z/ߺd_p!ǺpՍ&`,li?\?$v%Z#jȠ?" O":0̍7)Y\+  Ǿ/LkZdZD HZS=f/4*v1F#pO_Wt>?Ճi7٦M HPFOa,lWm u =/-@ g\ֵ 3FKPmX^Gqzu0Ē ĜLTD!L9A6%{oHO|T9˻Yilڂce× x~ f*^ +Ð#EQBg;z>Eҽ,ޅ{U~ WasNlp5٫SkHn>KPiK(>bȇtkYʁXЂcQGYI( *229.IMңJ$κm#mEնcḺ+'7xEI8=ߦwc\ BqOBhj-mhm1=oKlj^>_!b֋DtϦbwݛ=R#ӛ (G1DvLdy ! v_*K4+JJ!h%^/7bd> ؿu:X"FXI쿄|8K^\B^9!R7-#'1ArLlo3Ьw8ekܺSBu"Ś6w:駶 zi}ohkћ~g ybyoC:D-Q`~tBⶽlB94YaBGUgm_%h}JC\ ? p MUbtN }?.z7!vSzkhjt~ A.=Q$мK@9Ԧ}~.%%>R/%"buv57t>m0LY 7|`161@*rĪQ(GQi40m掬fƔpc@9FCΠ dli![#X#HeYgF|^PMu%pj+S>ݙ<Xy5܍ e{G^M\АZaf]g6>x?pC" 42y:\z9#ˆ ȯT(C")iA3? F f PX[*?~Կn]⎿zv]o4hy•~WyǝNGV;[rUn811ķc=`CȮ5qG!(P a \;c}ZD^y&sϥs'6 2'eh8&_WĠDGHcp`α<2: 2dէ T|QYHԺW iVВ)xr0lv9Wi[-F|YBRWлkwK5\5Ҙ9Vht%7ֶ0()g_*П0=ؤZ Jmp*Uֳ.s^E\?MbbWl2e.auˡ( `q|80?YJd3];HZ9I } Q|Y* Xe>ݹʽX I:mY5jLGIǺͧF$lNef3[}vět˗B|aQVVPfԂx:-kedL>@n>U\'C˩`>뭮o1B||r񫸏/3!D 3Bl*ҢFtJpzUA{﹠ME jn&:Zi &pmTV|ӭ>K(7B~*W-/dܱΠ@N'8o8Zp[UFJړ.ޤW[xfGWٌlaxd'kҕWW|0mrh FDZue[gykFS&{=b)%iLΘr|@` vv +kJ6oXCX7 Oq$łsFxpf3+rWO@ PyV?(xݳLz$c ST0WBP˫k&mo}J5{kJ@w`iOτ@yؼ4Ekcf|ìƑ&']c׬m<\/Lc@}5GOn$N) P7(Pc" 8f}u97M;I1*g Q%F6X 6 Df8kIp0P\zNT<7~P]yFTK׎53԰xǡ ?-8O#J A`[6w2XFR2A+5h>݆"R@1jI.&N ciRvFS`:pJL5.fhLȫ^aK\I?Z[r{x=_Ac9p 8#3*f3`kp?'7\sNPn2RoS.Z ۮ\IJ-.d m^ݑ%m ohܗ #3}߈oDV9H*S?)#F8I]eh MZ]ϕQ,׷6%]C,18~HF\"qRh meCݚ0bɠ *yBUiz ()2@Pf 5:5ͮ_$3 =*?nM [ KCo6u BW{l'.„,8N?\b.V!e*rcS4B̾2HdaEKW&C[g֘있wQ4a_B]zP)(y>G 4ZZYS^6fr-4e`_h8tT_qt\ZZ4m#6UOps|"tHw@ ~z՚cj50@oH>=J;.v@\"=  56N:8v)hΌ:ap?!śhzg_kK~?F}DDw,aE slm .-~j:Я' ۼpO =9x4is&*L_Ѽz'u_F>_F3 e/0ZwxM!TԊ|Rzї Wj31j"N RˠR)+ rM՘wHBWcr4h,L&5(">`8TsIa݈;%ZMfw@߇@GrZBb pÏ}) ։ո홡IʶF[(܈TY}ɟGᆲ-$At!]» 91'Fb"K|aX }rG|UTrsiy h[=.mS@i N0|zr`?UndGm8G#bb. nqć.7M?zt)2x!?Y*6ݣ6%yL !g`MJIYNe<> UG 9MK9y9^to/ON0[4N1S:>9esrvp/$@7: CLAϓCX2ZbfR ;0|n$0OJ(GqL(KNt( wdE@ &- OQY:i Q=j.3q ݦ,nb: J}IpLF,m|u/Kv6>@OTH EmrVh !(^kg)u{=7۞c `1dceEau|2 N'^ӣ1mѱ(+`OS7mz8u$QBbCG /JOHC_AKw s|=]mPwJY U6srM`*ZGf92j~(;,,iTc5u+) s4`{(ZQؽ~?X}_8yanꀧ+s6lN !W@~:YJ kXJzBf&7i8!`qrF39#$>}GGV5v[j*R}Bc|&p@ pHPw#eFhZNs @[i{j3Mo8FN:@dQ1;( -^{Eyq 2?XQ<*YvTxmu%r)RᒫkqCsFNH-4˼7(2hD!5t dy͓Ql ew~'fc>0@vYHy!R_T^QDߴ,GDIk)~)g9N(ڐ$M OhkWDįP8wOndK@|[WԖ=vݱOZԭ|TO "~&a"D|i1xhE~>80ЦIڙ5"5'x;dT=EuZ_ؠgh]P>p򉥵+QdU o\Ab/C X)l.=gAm> Bsq""@LKb0-Ʀ[Jay?Lw#%d4|b"V=&flZVu $Vq݉fiXz HRӧZ1'9K<Va$pێ6znhve=lV[ /M'6)S[nVwccʊ.S_AҦqy%᭼R/mFAdRCgd?]օ:=vPwmI= *Fަj*i[OkψMU3x6dlyؒQ4D_o;SpB%}dZ)͞OV#`GbhpNT]PZ6/l ,eTvnm0m 0y{jҢ5Q-!Wħ'z:w`7 (GQb[}ID"NRc nl b*OgsjG]UQN ^;= vg[4QZ?' lun,xU_G`%6|"ėNhL0pSC{dw3R ˎm'%#d> a-#:'5Uoe S)PJڼ9A@edgGn%_̩XQJ:@Z -3|mFm`lmyΎF ηر.I 5SOlh ث_f~iF Xݨ r#ubL2 LAs3JIv]C}L%%+DsG@p5Up-bmʱ1xKc-Ps65(X]0o}JeZIv]dzgch恍~I؛FWH3M!@Ja\ ]GV@8N"oРv:`HJC"ܲDh->cږBpdWQv?3lka+u]~W~CI#'F}͋M?Q֮ۖ5NU@Jtwi bti5}l׺^_ hEߎA^CzzU ema荕k$M7(&-)T%/XA^cuPB"c;-%G(ɮY*s3R;LIA )Bvecƅl.('&# ;i36Ub{ ~?F9i&9.|$楒]-sd1eg.&(e,l(.4^"9ƃ1&J6F'I> <jhmq%4Ě2o* Դdd#[^PDbNGE?CC55Pw2K̗4a]rzu?]:M ]I$_L'W""mfǢdII0Z^x_-.jUvk5DDW‚EŃ{NRKNT~Uq=o\bȷ%Oj~} a@U`:{aVYf"8z/ Io{n Ɣ}Oٞ8t5 ǻPm/M֭f)# O鲍[D=|ZD!0-8ȁPScS9Y,aߔp,-q=T·vN\3GnAmnvہg%_ɬ"f^%ao$q92+a@$T\7 W)xz4994\9"'E3'ZF48x+ZykGP en!u'\(IT]^ߟK!\zSK5M37օfm7B>ص̓e//^5+01cG.%-u~Yz| '-֛##0FarJEߪΝ|~Pޔi{g}hҢÃ$g1M%\2S0`kM(+{=9L@976oB\\dga L 4ygRh??ڴ5udִ 3t?F"xR#4Jc|홧R檊A%,f=?M`J4YrH6F=4FeAGwp@:1bG.# PH_sHuӰLi eO v 4OһԵ9QяE0S~y6Xbz&%Uh.acX?ϚIÃHyc57VХ7qC(Z}zqMC9q})~z!Y]gK>cIBe|sds~|;ܹZCFX.dΨ$C*%H]Wlv!Ѯr'OE3O^h1Bu/ 7K UIO,qԿH }0rtw F _W[niܒ tCbιX% v?4\E isqr`Y|YF9cL '7o\,쀟FjtAp $[2Vr lUE-"qf}|lg:H vBwعl(>]lqZQpRåH*4t_ˆ/ 6Ǝ/LպܶjxͲc0W ^$=Zs*~^KVf:a.(߯m"E-]¢aӡcVZjH\xKX IG[&j8d[O8+>֝9,5' vՒZ(/@~Iڎ=yM0gc}B}ã_o29mTe\Vm3uCfr53-vd Dx./ <+5%ۖ5hw»*ECyP@[C/zkAuC]NgMF4ojԐ{?)58ۂˆ d,(s.RsG 6G12t]V78{ M܍LzhƲJ.?OKQ='/5Ya-F.\n7_ 2(C] t XRG- fK $0! *ݥȄFŇ")+PCj_y`*=+,oϤz]YH  av!qcj05|#焧Ts|}XPƮopɺk{ gAkό {eJ͡%?Ǣ`6j1K}iN@sJ4|767G]%mF-E\eۻm&_hy-jƐG_a1C>80H *=Pr\yղF^̛q+:ٻ9|îF`4:vQhʶNhnUs_X~)f^` UBxjNI7.{"S >{`.f;:=kVDY=U+t{{Ęj10vB-4Nq(w 2.J"#_,E#%-GYd`y  v^k_a~&pPaD'6գshYoZ } \nM-P1.BLAVgȖjW'26E]_OV/)'7p'`5sStBRd4N~sBYj_#4LoVuos% YMVq:Z Qi\Zưdɧ'wb'Ta@W翖krhSmDKWc T(wJWDEM,s28gEWyC R n%^dnxP g:E\ 775|&ɡgɽ3ϰn:? 8@꼳sљ lR>d^,C2PB< ZϹZOBpX;`js(K@O̴9RitP`aO11}}4Sz$BU(Z³:^l9K#ZS{VtWG^3nQP\!I Q1k+S?!Joةr<( /ܺ* bslГOAdO:CCS8+!q&}vDI} PMͺ>-&BeȐ`4YPΐ%|hᘑϲ,QP^Z0˛^Ѯy)*<䎈JIg18K - 9b8Sf=, fi7TݔP셬RG;oGK(=DfP Ph妛S nF_$RxRq KErF ~*^̀m5^kN6p?;z6E4Į-Y;hʮ=OI1âx"PGBxZvً? aa1F1dB Ps=sJGkkBfgx1AB ی5$#F B:#vd陸B }XZڼ.Js"tw{z.Qu9FDE=;6 ڍ.wr#qy y"p cfeg2ʍK0٩ CW;ǒ M ֭ӐUZP>[l&h=)*8Fo]%XghDHt֎7[c3ob&=j=E!;+.e>2NxVX*4io7LkB'Cɂʔ0r-{'$P z|Ԙ _ NAྊF=$C,Q)[X*}5(\A:Hd][V)䘒h~_J7YP_cx͖Pwؔ?R<}CC&jieZ`n:*#!cfbf`I@@!@|0 χyX^:C;փ rNHkSUPW!$ֵC"ҫNb1NglCj[홄j[((1WGߘ ._f?,Ř0-Z6y㮞LV' 36:"\*E]s9/sN i[ARÂx'M/r˜l=*Kr׌|uxƓP9MĠޯD'J@\Qpڿv7-BZ~xY癍i= WCG; vw#Б(\=N%:}3xE{>v<\oJ~K3Ezl$UX[.4dd@mo촾R4ii3Z6WZ0 J`5Ǐ_S(By|~^^΋[*y Y7YU+N#$1k }:%6 Vw / #ŗ/lwr5'%"pF=*eFo'9 Ko9bi k cfX+ 8K%]0wy~Q8sRHY# ~2zĴ!Ķ%фb&n Db:2UІ Mj) 1oTa,xӊDgK# _cD3V|BP!RdArb,aNXK;->|>s)mliSꍬ_A%Y7ʲԅq);5ºygp|bzn^o:,V78lva-wZ:r@m(GoZgrWX7¾3sKhKݼzM`zWMPy< Ȱm2R1_(F5fo ]"Yku"%U Ua<22b/P[M fԾ\,k<wGxv+.~ENb h9 "^nXXy1{zHJ#OYEz+(H.zvF4&V&M%-{VvMkD~$TmZ$s.Ʀb8m|;b d?Yڅ2vV--% Z@q%L)/ pX8Οz]sG uS>| -"HEsR )o.}lYB",{49g@!yj,4u)_ P^\EO%CECKЌ.ci%>X|^A͑\-RkNnkmvy75vQ[?XE<39Q{s巒 + dW+_Ե}ᄱ?c  tzH?=`ީ3RZ{( c(:gtёJܠKs:dk:58%0#l޴?aѷW1)tFXChA=$R:,od Z"L˕xfAtG',w\i9)O &gYǀܿh6 ' vzA?޷ad ؁5DGy/:Htn]`z]Kl@6`x})* س?՜[]1ɻ=]<S{6?vkZ~d>+bR|+L;)Ҩ8_"#U>RiX!rB@EV^l5vѐD=c ONc+Q Bu1SzeJanɦ#x[L>>73 L*iu|~ZRm!7ivC1-rk_˩(1z ΰDheqjݏupua9^%T[ĎE7Xc /O8b#vvMaS vBeJ%+e؃~l )N"525kv$g=t! -R%WwEUh2n-s5sSzFф\_d=V fn2u4 ]ˉ>: hV1[x_ h F+0B` LJ^ܜ-y`в8.Ĕ=phxm.2 ~LNU鱫 KJ UXlsQoT}q#ԎgyrS wз[K>[j_A#a$~Aʱݭ>n~m OS[c1OEBPx/\CF##6dwg3P?oO|3>#zV&8ULt(dѶĨb?M-e]vWa؃YmCV՟8'g\S# l')0\8Q,Sg'jp ds\ZG:άirщ-?j`$IN4w]w "˩~7hc3Ha '9%%{ˇ54!*!CO )"bae8I68Xu2W,<GɷNi/#K<<!י:6Fwkn)$g+!DA8{>J:cKG-=!z,_Y1+FΜ["&ʌ ˦գk|\E6!&Ǻ A8oʌ E@gQsCLŇ@B4b 4Uq}Lmi&oFHh53ި>[hŋ=dZzH\֝`vkv-BwFֳ>Zt#>I&n=RDE*zC E1\\)( d0`*V,"sc]-@8dTþL5 ){"Y--G-8'ܿllqꈁ՚=U/ct;t+(}8ąH(rWA$#;f,:44Zz<+|s%:j^rHVד P:TWr-YF,m"yNπQ-khkBzW\:]7d^(aw\)yYwK٘bPbRUlKA`|eAwe^ɀ0yQ%9#F2j Rer}oGI02q5khيEPgJddθ2+L;a~COZ֚DLR|X E;ya*+XlަQ̢[T ]얈2U}꟠sX p,Zi{ySelf4]k_JN KcݬB:e~^(1d,PH߰q0O_ʅeAR@9zQ. sHEG O6$e^\MB@I;tx`%! a7-e"cZ "ovZƟo SS23 ڬFzE иݩfnFHoB/:Hp ;i\%9x=ʸDčTϟ$}|U \U~TZ1~d&FnI-M3Fq] 7Ǥ% Hv,]A(c}9ee%Ƚv}W3F,6QR|ka9?U3 F3yEG69 i.IiK{g PXcx1c󠚞/N~z{랛v5Iom_c"@ۯT^O.*&w!+ Q{%{ώ˟d/|4xZ7E4"ٴ+l༡uGArZ'o;Fn\2ԂԳ_Ǻ..Rm,4bzPgYLރr ɻW9 ;BW._+!DpȆ0X>&wU79\)&Oׇ auΗOr"&zs*.Kg!@%z׭3vr۰9*@['rT# VBUt,xY׻S8se$MoBH%m'RVeK y{SKh1D5>-Qj6_-‰L2"/9!͖VY6FBh^iP#yO1_F)"qc]Pwoma~H&|}z %?O3Т lLiK'd!-? S0ۼ|TǐH鴎{N,YӁ,=[ڍVgwyt.!ULea ww!1VFl +m>Q U)}d t 5E~^#=.eUBw ' SNo0.V*./y{G HSRۖHkSDO&jkyKٝbh$<Nh]wQ[ۼzjDۛٵ%:2<{3hǪR B}ᵡ2dp3- OnB?iS*#%Mn"P+RiF淸كAޒIvƺ~ZK%kQV b0XFm.@a%d^  |&t-Wt^z`,pȵiF@90]?6L Q)O£YuvT~f#U5]qYK+> !(NC[Cx95Sxú,wS@kZqX{v܏R]w'TM~}s{qt2q i+kc~E]xuv%_fQvA1 ntkQѰ2bҍa/{G" '4(KZFIY P8!,p<sZ)D*b8Az5n4.h_MQIZIɩG F^QL8O*8_ϝqߤ h_r*AGόT~0vRlq2sڿҮ$ %x(91 _xO;k"RV8zN@HN@ /]m&ߍPAQ P"l&0HܨV*"[|"@ :(Q_#8ȮL3.[y"k4@TL4Ȧu)ļ?B=$գp+wZ.ea?˼1`]. ꬚x~Ҙm፱a}Gd}#G<أl%ŠOr,x1 zgN5S_%mJEWCk%*ߣM̑gflzF-ЂwFdYѴү$N>1eLk*qOtO2XNVl$nuP~- ̧%) (y Xq<ҧu60;4Ԕf~a#Z=?f)ELwCKBfݷZp~]ex]tsmxKGU Ρϳ=;&jhA, 8/@ȧ᷉7\sTipg-؈ص᜻'Š7sY1Fbk0C (a+' X>h5ZQRK!X{?MIwX!o9[T;$J"k UsinXtI B/9+rۙ"<ߟ)'ߖrɣ.~ Wa #43]Dh|3Y{9 @zOt^,]y؆e숪4wjר/~,~:43~ъ6eH:a!ݴ2;^mA4K,O1OCf?^TGW&h#!i)0ie^}9j5:ӈ bv! cFZ`8SnH>0#W[SO}P2C!#1FHб"rkJs?*#CXn *QNɡ}`4]:l;bපL @5D ZV/|#ij'HQAY埱^5\ % Jr>w?J/P(Ҹy0{g6lDϔh[1-k(]^?ipqaٖjiTRz< eWT4;4 LR&s@Tl;TWNPj2:` fm@fL¶BpY1I@ROSr)2 4JYPVYս.^H\_enA}9ʄA/x7S48b41y/R:F-íx5_望;*NFY]ˎ-$T PRZx q޿v/J@q2 z`IKe0׽-'A':t&{P[4\#)t;X_'T9zAH qN)Il;GVekfG7sȕ}3OmW^3E%(%zo wCu~CuYRg[# 6di&'-_R\-TtfjCGV^ݝqYP:m'KQAV2f)dhw{MYqPQ@ѻp\<W08ͤ.#A=r2Z3 Tc+BphԑLS6@8 IqU׺{D QAZBv PW>}8S *ufd-hqH^I߳kr}A<9@Qxuɭ%Ow䑹(G@zmyP{_ђΛ||N+a` *TAetІer6Kj 콈m#{t00|<WLLEҴ%j$E2¼#Ku@=נo/niQtG鐦fV;V3poeW@5@ъrJ$ń`?˨Pԯg1- PtWP|QV`:6"k rA"l%dLjo.tbkxa::xz8!Շ GFeX_6H~%T6*M[S.@`&O$c>nJ .-Q#%ŎӟAnwRkb]X^=D2!INTɎ a>>O6ݩ? TO[a;B7{thrnSDf|*sΆ!eLxRH9Ҳ1ήy:+Ƽib-; qR]#Lc8c d 3n,{@ċ'6<B:w~ǃ1 r9{u7^~CA ? 7R?jȧ'[)\{}.̹ɅmSYl7W>(yve|w SM|hۛLkva[3bTD[f(HR+RJT?N'-Eq0BC\_%vi;x;'GdȁNAscPЗRTgD?5,N2 pư{^J/kK*l,YrWѪ4{W%d~S%xbj֯bfFEm"{^m!<&g/Jվmyϵb2bAԔo*LcF%鏰dV.$I~/Q]h}ip%nK=&Ӷ663bwRqrqS!C̜Az\\H̅+)wZ^I~hf3C Ov&`RX֜?<'*Զm;%wZ(wCG5~9LvC?{ ַhH<<!ڇXzu%{ՑI0w] 8ᵹfѾ*($oƎ[n;ABCkO-{‘rũPnn T?)"s7=8T oG_:i~{*|ALPĎy"vZgD٬xşsd,md+Tp[VP\K5*, tAL@;en "Z"l^DRX v$CGzb֟͋#@26jKK#Ԛ_>R&vBLY\VfObܠ}­p_m33s?9҆|N&Tl&19=|*wW`ʫ{{ֵP0C;.-m4jX;Fv@U$W>Ee0i ">I٢A-n:trY42T z zݲ "`QF_9jݮ=zf'q_M1t n;ҬqAvt{GL)T_ CjeyOe+TM Q]'𛸫w* e<^g`H҈\X?ziz S4uK#Sx2@W2 %#HQs *Pߛjhc]wQ旀HB:~7\g<2vb;54%?~f$aciOOe&j$nE1Hd-Ľ03։q.dZAO1lw$bgAy*O!|љ^Ya|*ADmH0x7*ԦMfMM Znpe''"AlF4hQ9'JNE Y%4p`b? ҹ~R+ss-(e貟X+)e.l}\ 1D-~_Own0rߓx`hҹk3y՝Zk3)i1DՈ8 ރA#;V/BicoQuqFIm3acmFhҚiD싇A/W JB>KW;†Ov 0XC}͡o6mW ~ z6|"TOtF喓#nP(xǜ}j8I׺єaw_U ҅rcـiNʡ|UJ7$`p ;LD'yT0bf(?rƗE݊͐*ɩyc;.T.9*r-a EdȮbo-x9CࢰBSQ"5I!qNRdb@ƙ{iCK|c;̍|K밧)uijZ#V`U=AbA^r!Dwe->3rx0m#;"nX7:o^43Yf5EZ1Qװ7ǣ-zdc0֩1:6W?"{Բt>+Èw,@]G84PMׇ8F3<5:-ep>uBYwW]l+i}.~=8TyXDMfB~i7=e;>,D6Ӿ1CJ2~O3Co9xإ]T܌A FQ5f0IO/QC'6y֘07`yaceYoL`1W7iHj-SWRj B5Ĥ2 fw3 돒F/#?!Tz̔j?w7^6+W㊳@{ZA;`&9P<9,ȹEbF)r5Iԟun17^nRD60l"~ =g [f2Q 44NGK:#~d)AstSQ^Glެp8jh,88z3LZ~25jc|<؁6nWwptCF3qX!#wQOF2#@j E?gx}~5!1\vj 6Zm%~ܰLs<_o1f_QqO⡸P*q ! qI}ve%|ɷ59JjatsGvtlJ(5GԶFdTtpcluaOAh4g6ʣZ~xÀjTp7?cb WqV'(GY7(^ciR[3+yL  qzF^ZTd^Z1g<"1xLڏ(Cbm=a&`W|Qν #-ű˞.MIpD hsBM/p f*0W(S::4S}ń["% PBNR w\0o4vUzFڈ̻%q,)/JBR`Yh1 of87VF_>3 \s3alUKt_κgtgVR3IYFPm@,~`уȹNi&s2_'iPȰ?.MY0ڳƙR>1^mYNftq Tݺz}md4}G=n\]G?ּu3uBG$?ȌQNEjz{sJhhG> Me$&gK dLY\E3mp2n{Q(ouIjQMhjA~$̇Oǐ#CaӜp=$w&9{jI&7L|E#6*$;TE?k|sJj[h=aʏ8Dw:ZrzylT+ɉ+;MG]y%gU_k)F)VGWtS;E &cS''5$ hDj7Pxr}#@=8wʬYwjmRKx.BؿI 5ndA%W(N4TJ w Z u T2@ifJ2B˦:Tjz늙y!QﭝިAf )FV_R:Qaѯo-\P"k1BKf/&ʹRej`S.%Mť q |? 5L#!O<̱۬L>x3,tffeӡ}s`GJ7KSY/ZT;:Og2aFeTJ]kuDD7ex|k '+oMNJ[n2GU7ChC:LWۂ9(j ̷/gx .E $z *.p ,R$ {Ds]ZIX0F"1'T_r%c'r9jt^w "[!o?qc+>N,[2ׂ?n)M=hoAΩ85;L^"c !mN`Q(E~n|=rCԷFlaT *S;U {S$fVtE_m%0J *\;SMsr&Q5$$XfɜX}_fl]-ցp7Ω5UZ1t`6sVmX^qZ,]nw^czmۑ&m(qi^o= yԩ 'qpYf~{ xJsJ +51=taQNPlK&R9\nI| .L&$)>)Rnx!W&xZ=T ,ft'y rT!!@<%3*/g*@}Hn/mgм}& ɧѽۇ7򲜓8~sR\T,-֗mgN+^&ѺthhϓF]P jOz'y -7`G`y$'Dμ 07P޴Jh JTCZ E -pSꋩ Ҝ{#*SIǫ.NsIsްΎԾʍijgGD0Ҙ@@bW&̨B.?>#B?%fÓE8D7z>㞐[V"p)}u BݺEr%ȿہ\"I>¹usntn +CDxZ7N-Ȝ$>);` y3z?n)x$u6׺e )tTJ"`țeP9 zi*6}̣ \ҟvQqXKhOLy<ߌ^eu<ۡV|߶`)Ooo/̞P8H = tG*дAѨցux--IBSMPD!i:âx f8[Fi7NElF`iwKf7Мg yOW:-e̖/cۍ:MjA+''ɺvߧGkd]k>+zRY!?;HHHޡllnj%Gܜ@Hp*v SL/JiV/^:0Gϗ)8vr;ڙL?8ە/K[Z$.RHLjHmCЗ`P6#vD %Ǫz+rE/<F#m:,6!cE4fߘnv'!J-h %m'>=9]Fg"IRzj 6it 8 jr93pbmS!\0KD{5 CPIut 4!3vl[m0FҼӀX/UޚI "  >xD/ƳM JJNv2̝H"*Ptz(Y4;(֮d!d5!YޟO)8sq,B rjqo60ZmgPLKa,&W(䵢d޶ř٘U;o+T-Zĭv9([†IݣZ!:Aò^c8Ty/W C}LĽ@fתD1H(ŕh_5W&YY: fzS5x%%Ckq|FǾ1dńqπorStK_Ѳxxb9I2,8'"s]f?`:MYUOJu%C*:lbķvih&dh ÎQ#\Ք%"|NpIqC`l:|+Vf6Lщ/]&2(p~@/iz56_"F!&"W%vPzԇ6;TV+]d3~ߋy|8ZWYU8宴l֨b]c4MJN70*z=;@(_-WvN^c {q !fW& ]\Rq.eE8 20؀VS0iEe{^u툼{*BOZLbkvhU۫xuK=O9VW=\+RG_6#84z577 滇C;S d{j2񍬜Iuh@ŀ):] z1/7urDzWƛ/z&É'޶WUK)2R0@5|SPlňN& #؀BggBlCLS`[c{~9~ޱ),eV_̀cGYt#0A=[*~h5ߒrl5Ds}n$N7M,Q҄}E!4/H<"-9>4epk Zuy~o+>RƘb{J ؆%ي`r#vR{4hXVږA%%IkmWLoU }әE=NN1Ʉ0`9Gm֬_RuTAWȕ8*ZV?0.1؅.@(@+ q֪ygt#*YO^AQ淝p.zH)礁]iLYa5 OTbyVrRi4p0dk8ܺa0@Ag5N{hi,K$?Q#l1b|@iKc\]WZɓ>O m*&q }YRʞ\[;m_s:0 !H[ ( J`Bdw0Tq۪QTxztcjϧ=Yz P#[36KQNö?c9w~umGsg%)[Je1w|tЄ7^l$s&-h,MB~o%#'v)TGME{ʺR,ֆ:.KkMe_ǼD_dգ6AM>f3ʭhr՜]]]'G9|Bzv|nDͻc.0 ;t=if"dht}&\"g?#D壽Φ@|FoQ"`¦-v.zt#{>wI—4n_ ;kV~J@$J]7TZaCtRYS@9-&>OR 7jglBe.>&Roy^BS0aipa85Y')qx[.2ej;v;PsnY<+;!<ސtϸІ;T~IJxMcEhcQ0{7@|ZL}QX+ڭRE$A @%17g?@}):fv59Z6׃t Ql;jl^W#x̎Ѣ:ze%_g hx{޸J Au1^Ni!*ehY>W!=3PUD]҄x -ĮN# ޶&y}A S'pnv+>#~({pQ58Ad]QTLyܿ@@el%3?o)|WdMB:!1W,+d jt $ 8?%(i:co*Jp\ Y\:jiI͚ ֩(cwN*c (C2Y!Ī8y>lSo-*)]. YrVg l.4{}dMHaI) c 9*G_ 5xJ5QQG{2Ǐd9T5ny:ȖH$b~L1"3i~GGj tXghշ0QEJ?f; [Ԃq6jl)p(eES HBMz(VYGEAۘnҩ68E^{Z0pgZ?k%m cᝍx%Ȝ\Q^=LA@QiUZY?Q%Cauݗ .Sssh`2k|%{&Kxx陟eNV*}cqgA{( V}>z@p0O+ګƦ#}I* KA[Cg9(5YCOyQ/WU빌!+)=|~Êʥd6A?*wA'7g&v&Ҟ7L,_T!@jNA[&~q,I|(R D8=03mJDGVv{"}s[lVR}Gl^`A?b.E9*Wֻ$eȔa/Ϫ@*|5)1H@<~ĝ)~KKec(W:܍=0H|𐢻msG2q. m'-kx#}jMB{+]twEn?sgrJ / %RXKэjr%b-3x3x!+-DA=+%SjN-4Cf*ؠP4ڸ7|4>IjEլWDXTfe d{_~h `7pT^D㉈T7pD.<{nz Z}C&0n&LnR)s/vEwwWDi>½mw H&B<}aI:c'&(%`RJ)bC7g' ~p _(RTe qKt`7+\+Tjp??L|f/p LoyTPi7樠2x8o?hxH?;λjy3rNI8J4Sc鏾iN{kwT:?Ttרvx#)!^7RTFgCcCmEfny%p}w<+||)`Qdָ0$SE8^@ as=x̪ VU^zvkEs}WI1em( dQf]k,m%q,u4nt|H-)m^~ݠAZ=E9+tUj@+dU13 ^s{N`(!l*P_lTQRkM\"WkB *mHh>;ݪwHCky| _|Ho؅KN*5c^;PT|'톱170jVFA%ebT 0[A,_OK/|*h(tz:"حKfT ҄  qh2 +|X|ͤ7m*_< V_id~n9vBV*4 #'^B2;cxzDϔd'EM Ñu:)1 CyeC؜Ez]ְ>Tiǁ/8Faz8SF" "mӿ=3" {تOٗVqGemCnP^0^h :Ii|Q:)iqcy vC9#ɧ2PH#&@$h!?tMCqxah&ȑ$X5K4Uqa]y{Ij{cDrʊoSj߷}ٱbŒPzƁqno=k9D+i$܃i^.zr#rĴp1Nyv^p>~$#^VJ;­XZ1 [Qcӵkm Z+i"~w6YTnu"~@ XC@24^N~]>wkH#/qtuˇ\p|ԗ+@51%96n pFzk1mI؝\OE/=]⥭vGf VΝIZ_ڴ:ch%cB`5TH*+I{弔713U7#Ͱh\8N*W"ײUjD0+BZ)Bon]ALJeȞh[R0!hC/M7 E' 2ۣ~W&P^Sqd@ռAhŁX:2t-tnVt\zH>&df'!.^Vz$&ޮ}Jn>@^~pfi~  .RMF^S+e4;raHYEͩ8 riaCܿV0fU&S73ͱ@ `l<I.&||Dhz2گ7;'W*/4,{n@PWRJu.P+VQ2T.YNh](z*ߕ(t rݥ(|=5$[õv,ԙ 8ʓ58U쌘ޖod!}jy3)NsdˆAH u)0A1.ekA?5~^l JkM3.Y Ń i Yqpy wIv#ElcxG%:eQ;lEKZ:{2>҆N&hBd1ZBx\F]li;0 R 6p2'L*x\Z7Q E.9Y5H̶=x[9Ƈi ;iI7iS]dO]yE4tD_<}kh3έPn!pGXcDY{7*sF&8RrB>/U:yoER,ێ 'qK(.)i$CEC`#SeЪ)8z~8]/ v`JSlh^ 缋7N- :ÒNub+>86Eh8yEQN+9xVv*zT3!1hIzY _ [+ُ iX.s"РCIw-{PLSù<k>ڗ_)[Q:zcIqLP 9*>$R?i1'J2uBОZ d\H[Oުm.6V!Cڕz%筂$ǪHeEQyOc iupcL$wzS(ko*yi^]/viʲ>ZDn+nE0Uɒjο sKl GyRq;lC \)ؔ^'59-AۇJr4͗X:ԺV9Q_gqŝn=Fk ,Gvsbѳ#h> #kfσ,HLB+>Svr_y]IR.L+Q#v9rNXӨR4`o21C:q|icd\z׋/s4sTGҼ"IAdx@3ovzt,"+=[9%m~ד]{kw-lg5FiUmKJ0d@g<$l 폥(GWW]S7PnAF*` q;Un ?\uq|{#|48?r2Yx̼¤^:R|!:cY&|17 6Zm7ށ vH)d.3_ˈc-ۦrg%٫>< OBhsw42bw>>XI%jav7{FrezN%R+1Ac/!oޘns(wim-U+斗wK :αX4Ԕ#YeSQȦ' D}UW=!cS \Ɓ=Vw?TCj.s|=ڬŷ0(v4e޿ʻ5#<߇3~.&)_h?WJby~S{bdkN0{+C=BkXS*C܅2LWkBOQs|]Aog'4#q 7sNmmxwͧ#X[O#Ï2' V}J /dd׭@9{Y׮d 'ۡ*b> yGҘQoS'>`RJ*%>>tk&5 7GP '4Y]!`]ȮKaa.paJST mSŜ`Y(97X{/o̧SGe@M5!ZM?Z M&)v1 4sRS afX,N5r%LpdFC-=Eʭ(ؒh%JE9"UiRІ '<8nn^|UCIcNO!-i}9&L-]V`>wf5!X4Y cەcjiV0ޑ=o;sy߮ ӣhe0-)mnH8P"xr؃ߙ nO~>İQj4?m-9lZZN>!9弱t28;)_}N*w[%S):\4< mm)ca+nMGk8֧h#`xkZ";? (Iy/tѪ$,oD0ݮş-?06} >wϤekt0N̨c*e6Ĝ/ ״c1۪.yOr $kYk)ƹ NQFjzothm<:.ilI1OjL^< vNf!;h-xX6v|CQ֧UT̢F_'Ma4[2Wu:g5t.#>GiZ=cYՓ+b6g}ۅ\y^n.)x_V G+W'=&[z@aAqS.NvI^p1weMcVD^f3oNu FmP~GoΓKJ|`5(VwP5QVф;=E&$Cb2dvF~G!Ba|ߒc]x% =5dBd)i7d#4bveBL `5~b3G^vE:v3K3*)]1h#]1$w5?fZL q{B>5z~22MHHYQ</էB7B:j$$e 88=J(/ USlOmN+;&`+ge;G|z:yq-tD1>~(:mp. gt&Z`;{z+i&Z#9ءcspNq7R"kmP(p>#|k6y}c.+ sXV(!^i; `BY Δo>%=)h+LqO m@_;9s)cMCo7fp&y7W N[MtjxPh7>ym&總0bo.}UeBQ:iALHpOثt|@Oa9ϣ2 |`Ǣ*ͅ `xn;|X Ĕv2b$\դ%GyKEDKic[@T,`ҫ %/ B- z7O9[ʰuז0A~|:^p3!Wۆ RG_JPs aK*I[q ibaM^61 ٲCyJiNlm_OK2_=|nWseMVYKO7?a=\ؑi۱?Q__147ǭ<=5v?-=-`:̥q#Tk#\R1M*;|- 4B10ʗ 'JRTjƉ{OǗkH7g7 QW)h"Tj W%" Dn#KBiqtHηY^+9 K[/k[_zكh5aLIG`kEqX14AE\?*]ćgfbgtD(:x,Fbe>Z ĻyåNFop]$X;I/ NKo>`Qt^/&;D8:lyE4%sAlD8 ĪTES2',,iDxGQ'k#wT<[]P2גf!bYǮ >)-b<u3- }$ȳR2ؕ?@4Je ՟4hYX f;KMH[͎:&Υ5Pd+Rr/;'hbG~uR07ˆVp9mb/ c̎7r3Ux?htPkzD~'2 ځ֛Wk/uCi&Snc.wuz=\$pTĺQ`e/Dg0ƅ''pt6VnĶl%L?۳xec̣CQ(l^X[%d:,`pdh3Q&ib[X' 4d6U1v/=I_wRzwgc?Id|[%xo vZl?VO),V|,}Z+4Q Ԩ 0+-.'?j{UD7c[ozb%_Vd9#jdi7EO q#75OQv_G.ߝyMޭ8FB^6WBR_j,Tyv}zw'&8 )Ԫ+єr#Bx!lԄ i;l_եU!hJEx {DY!I5%Hc*!O4}*cus-YmPXdb] zi ;:>D*˭$bqhsXwJ+Tﯷ?Yk"sMbXC-:?5w5if8@U|)J=Y%\ȶJUY{B \}?" `\u+b/GAĉNv8$X9ոn}KC\2ݠfjW d>=QNvAgR>NMݺ(4敠K>΁?dp}y@$m*bgUG{izcZ!'+R ֪/Oj|*pQH.DA (A0|&ҫz m]d<8T1WMkΞh{=uW#(7Ó7(tpG(R% !YQ8.ʹS&o,W|f~px#)!ׁRzd]ԠBʼEfKH݉?V %Bff:l x7E'AEa#bBY~ioG$MO\Pm`\9Lg~g<.h|VM纨D.? ̈֗"7u߳=RJ-с2T<Nj!u~b(R6dn&!Z9xj,`FL"``{as CBzgϏӊ ymMޗH{c%`p*9qD5 *O;HNj)طCMܦح^#мI|p4 E*MSy?p.IVt@03[Byb_HZ+iD}Ýo`Y@.0S8b[]lE'F*ޣ Wn}Ρb6m?5nc<ţ#JcrR-/㽻jЉl$}ͫ*A󼦴y껲 XҟB!)~\lמIc@3!9FuؠNy]LF<+-I,mxz /5ы6ՋBU+-k=ERF!(ӝOKB}@eRߪ,MKKŻ•'I}"?-7o8Sk[:M u;~m{O0r`P@0W/ekq)ns+G'//,DP=sײp>뚽4z+V$?l&4IO co(a[u$VkٿkPzT  wyv-}hX#^vGɝGݐP~Q_?ڀT0EfI80RLsnUEfmxS[ 4D_ ear0jȶ9&DU?F}I1 )HCkzsQ^{lƥH`j)o{:ē zM H0uZ`Aٳ=PFc~oZc&F-1"\ #ܾ%b8Pv7KoO?HQi/ӓV=9!gY 46n>VwP,ѮZ`r '.:▘W`֍}%D\ a^; eurA}6hN36&חA* PMIjw _&] *3,p qNbqu 62@Ok#F(CX56@C =ڙ<3 kP$? [dM: $&*&+(q2 Jzmm R ¸8 !!,䘂MQvխPU覦[lDPooK"F[IkxGɼD*fTBb+fE3Dl-B[hDk<}ΖD· BY 9?U\U:z|:2sQ09f_Yj!?bG1Õ @[y@[5wG ]z4 ܯqKJ"Zq^C!Am91 .g0j?fu0?btEX?ć@4Wn i${m3 }G!ja5짯jߵ st|n3TQʒ]JlLA_73vUyXqϵ Ϩޮ?(vzK%TcVxAFv5Dj]_7B]3.#t3lRGKFJ#5OB8WIͅP~#i$o:}>,ИvHϢwМ_gw%f\] ?N*K*kX+<+]<"v\ۮ|MJ <*ٮ>odIEB ^(/5`;G+y.)eWq:* !iLn'—p!Vͥ)1 U ([ߟ哻0j՞( w5lx4l0`Mǣ%k&6ƚh }ȫq:x#Tf/t< `ڱ5c D%u4|No[nN~?NB+[dTsЍZʼ,3F5/.Z=![/i.qGM[v،EfVL6L8œ|*Mi[[_XguJ==L>,@T:RhŨ/e37οi zTС?VZѕd6Cvo+"&h\MжtErKu5ljORH _F ,>dY!99_ 7Yhm@;x@g ^GQ# %Pz жͫ\qfƖ9RiMŨrQ[HILdoBǏ:(@h ZK&"A]xgL*KO&x=AH'Oۊ- ,%@f*t:GW6q~A zfPp7Dt:Q`_ڿmE`Zk$+M{o-zjLJt9`atC‚2(}fbǩ5 Ũ)L5$&hd9UsR><#1/q?%"tݟʹ9$e/jM{/9/3]&t {JdEoC?HhE*r(m h9&=DANNb׸ɸa'Gac? gqk\!, :rt[ N>ﷷ_'~፪n6;i+fb0ƙiZ˧qsec ~1h4c̞w=Jɤ[FŏmVq UrlE}Q'@^;hQw|pCeK:$yIz0v`;]u~*kI.чCwoocy3.EM-#EVa¸H;I8>[8N1vT y;54?ƣ6g=LW6\XmЀ*/=£V0>|dx_:4D*T`tP5&ʝ5 k;q6Zc.Ěbw2X=*Huj \xлsUO/mۙJy~%/>i]Ryopmӝ wLl=.#X&zbXy|W;ST TYmdxBA !>s~"pHQ1#o}HQ4"QdEq*#-3"KN*Yģ7O N@]8 jχ|\6DH;ME 'TaW&nFݼ;2WpT||,fpGPީlLxBC<ߤa@镀'-6bghYͼ:5 fk^ œݥ} {?u"k۵ff?O$ +y|;}UX*uIa"a qO25˺^JWچf*y#1op"A&8 __w>I\x%d j {g7%c!hI7.ѓ  4ZMra7Y$ĵ(gRc HDydKHs^uzȒCl{[ ma-DTDJqtY@[gR0AhfNMn(TyT3ڜO`Xz;-rʗJ|} *'/Wk\ $2[lfB˅}>T#+[vD47A,ՅZ#n?Y 8X5JlSTQ]GNPgFgjOXOtcenzG/E2:0SPi(^=xi9*p5VDJYqt*?d>^rq^ۊn EO^S:;VuYZ%ҢHMo C‹̡܏(TCjge뙙;_ -9ou1\5ʑ5mL$&k5$O2 )h=@aB^cK8z,Y~\f-wFh +|./*'j4|1ֳg.9;|CLFo" k3cDtpFGoU7F.}h#i#0.`P׶1_|q3&;T~/<5Qz:GdтL嫎T 0=2-P)~ͽv R(4/5uLIρ8~ԫVUk ;䈃TOU(X, ~RȜUf; {VzoDEdw/a a&δjL0j!.9u*qi#WfE$}xsMBqҫ#X%IEd}ff6yvZZID?Vvɸ8ت[Ŀ=bɺ2MhfP=:ӥ(UπkO~:f 3'7yC\k (aAO0{ +%rf>3<q{F#a, 0xH(A'w9E %2`EV(3kȩO<98ka(ɵH IcE\&o&ٞXox3p ={g_ahaZQ:!06#qG7 ?-3LzޫAlgSK(Ք+`E>vxǮBB7F~qD{GlqU_>hmr̯@+{9=LDi "5*,A5?<2Ƶ nF|xa 󗱈|N`25aT9)^8[TUIٹ_^F5hu .;7yopzC./56Ba ֱK#0GO@zhy0s3-輀z,|x)ya&IɆzcEQCqO{` WJ0Hw61(͂ \x5.ˤ.0,mIYg_%8aE&`($P*`ֹr'Vi;m6un|mO}d0zNԗ%_U!{0B.fP}BD' IoFiB}TX/ PVˊ,.CȮoI1AUBSyMx0|]!$4k\[D?saۧL3[PXapqcnǘ\KA n*WA$'\3mEn(";1D^MB!_eNSQ_p3 K̀d{h87P'Yn5$LADbd,48)9;-M4UF,Mg(D֗d /&]Jcqv:;ȓ3JI`!c3Bjϴ%㩬ԫE%JR# ? c>#?r.M=cix7>ʠ/gd[mJ_801O0,L0rlOf躼 C:VUs!&0\0V *dž0s5ꛛom#96r`=sSZM݆Ez$+vc1>}5 pxH3)P!*C)w@"S% #,h\" -.:-`]ڟ#vJC==/UGm-LC *.Prޯc9go#x_Ũyi=qW(AM ..+|Xxwb}8rTzY$<)ûKj\sjѬ*"syO!&z.!`l|^doQAmRzj(k=@5b0)[L*ÌxT|7K؏spN k_Ќ&p6bq7Fg].g i WR!o*-|w`D hsnL+(Mޤ2aEʄ%K4wwY~9q/[s` ?Zz~ N|Xn4']^ Bl58?l``oom9'".&Y aPag[q3 iWyرUy^~MX)bpo% HJ >aw%5skͱgFlXA1q*˯&w:xI=0<43)9쟰F 0˂ZRnc[ Sm#>ȁLϡ2_Hh.j8„á o([;n-Ym :յ_鎝.XRUa=_,uY \ڟx^ĪK?ր\eIڴւ#${\h ZE5|=+O,zbs,Oܨ&O"GlG O;2ɲy K%WJ>]2D{Y[ Y+;] ʘM>{z -#Yw\"k,6'zsoN["y 4,pe*Nc3UK!m:#OWr-Ua_Q2@_۫p%:tf ]t'WaԵ-]M A6UV}C}Cyo6s1F꧁vDR%ꅖ*5 I&jMPZVp9?Iۦɗ/wوfԸQqYH)?VI9en9=AA-R\.W敭 FUZD:9r5Z<`aA2NJ5P,gPC%J|ôK*wwI_ʣ.6R?PPN-(K,+.b=y M}' :άlр!G1cEr&JYOVl:~k~C05 X;/QR8EC+N_ˣ]f,SbZ? σ,upDV#W[zX ^SyjƴdW~F Ύ-fDdҶKQ;5Päbn˲D<$GTs]A7=nfIE`ӷCERUqvuƋL3Gk Gz5/~\"tDqw`+ԩ˳]M7 kX0ݖWmafJNrVP!߳:&@z}UT͌sQ+iܿ:u@Ν$.7cԅYѕtf2icaKZ;ZTQ'rf(G:I"kШܠμUzkgazoiڀ l2+(C(^cRm2L}Ҹd܄^%^*alAs{\Α:?]GgI^B6UWr5pz\RK ǻH H*YsYSy%~tr61^B55G D Paf<^]맭 f4NhdmIwn ?#^A FS@4.}F=!?.8!uOfM#ql gSk8;+?̍ g{vFۤt*ٻ'{?gB6Q+ϲg$`&ny ;\o ،"y_I_^ kHRHG%.><(6Y)yl!e:⿽`Im3g,O.Z#.&0uZ67YDY[銘k)WhdZP[dK"(Eo`PQgLjOyoSKS? T0]XRt5 nîu`,:>1wT:Ln_H9,B#|N:go*[uհ9,'!}|21_Cä<g{suyo ]Ιݹt^H;W˪L̝J5ӧM .YF{E0݉W)4!ǴBAiZGEDtр'?Jd-Jd RO-hzwdCP|/S˙#H&{< >Eeu؆8*MGH95Eύ/:(&VvkðS1j[ g\8q ?V7*zȦ8vhpȴ3i2POzkcS^YĽnO"taϔ#zvxqv- אSxńKy{KX27f@Jiq^]sd$ɗ0[~gSScs\[8x(Gq0 M1[uq\ !G1OŒ¨x˨wͿ_8&x/-Ytr:hYpb M]cˀa{ū'lp['=3RHrJ4،ϳ2p-fնLagW"0zyѽQr~bAR[k7wQT؊(:)B&<0ey@k53BGPQ|/N;BXT#wڍA}@䌝Bc6V +؀ wY;D+%Ѳ n?(+ ]ojhpUtz0Mg=ɕʢ^7܂P||12Z<|{kq侕d`hNk^'^ax 쯹1!<OM9b@҂a1|>qbfŸk3J&澿kV@z8\%:y*MI_i F϶Y/+`nXYW%8/6b\I Hx~W"U l&|?SyeV1^$k%҇1.搪n(YYr!2ٞp`o0$\4I4K>c-kt6&YL$,p#B.E7e64xP C+^ȓyIae0J.ˣ|U|F5+!ˀZU DASΤ2Gu,VYPFPpCKYJq4AEGQzG 5" Et:MeV 3Cn-"Փ鈦jCZ#ĻR"{&9j3x(ks0^~@Gd^WKE+_4U(3H]v lBV~HLO 󽷽^FĚ!c4i܆׎Yē@ioMS]FI %,lVz uя!pd%U{-Ww^̲zeP~7`%\t>/2~(nT/йăm>v>י'6:|6r{iҠ=M:Uo A2aeIrSڻLǁ<゛scˍ7)5C!s M6dPWh`K PRZ:IYL(zk_nT椌wj:{Z&8g,SJK A,gv挎5)15֨5G#H(ͧ)&4{ք"ˢ"1DzlVUŏMڬzh#]1O ²_(EZ2lQD6h; @꧊$Wu9\<={s:W}ݿǟSyp8%]'%Oz241-:)C*יB7^c͊Cju8 nn<ֈ]kVCJeS1X3/aD:>k6[Bx+hcU,h]Dcx}*hoP0CЧzjzDg i{1kzt1}eYz%2A{Zh\D㺓"e~`J׉9Fɚ;Lz|i4atuQȺXtyJŞ_s8{+ @ 7KU+\J,]L<%-km԰аL2 gƙ2w.4]wѨCok1CcI ɑ,WcpR8hqMv H NKp3)).3"P+p_ 63ɟ/`e&-~4b#.[{^U2  M ,1(Ax74C@ܑQ%]^n+ш`fkp]sjLZ҉AO`To9C.ВYt@Kg%2/"m,zZy*?Dvs"8rZ+PsF? [\yNWGv-?o>4`$nu?8[[#',o?"Hstȵ~鿗=")TRMQֹ\PrOr,QZ\}K=)ZE X6B]Fqk@;ܶ %Z^}sH ; jLRmU&͎9+ RTS4'w"N,U Umj>hMFJ.>)C?7Q ffyh8r־e!r*dBjIH4Wx9[-(Vn &1}G R{ţ.pՐZu%}qųLBށ(RGX!kJXήDPz̔5ˢ0GPu_p'c]U8cwdWx??HޏLyy䧞h!"_ƃ}tjH0cz{Ǖ[n|_0gEQ.\f̅7 LEjcJPtyT 4b.sS9?? *rXl%_)̫Ȥ-gfЁ:f-%lַOϭ+ґ U5FMg Oxz p?ǗbZ $X h0Yj5ý_[՚%ۚyJy\ Uj,NQ\:[\T UOuCBaЦIl-j̊60xiz~ø/ ԇ~prPn#|7fE2&mQ7ZXy'FP9&Et]4>2K/HxO)cxF +,t"L_r_KuP F@$/9=Jt](P[ %ݲACHV~kj0C\2>j$rTnNJJo>ƙ9C2*V )"! I?DU7y$#>٢Ny^XۂnkN' k{ +M&q>G*]}v.)x_B뗷+5!_C"`EIʉ9iar;G_~e%xU/#p &ي]8Yxg^u뫼`|dn^ӟ鯑l_=6>-*6 ew_kNJ@%Zq2 BUaOPX-ʞ,_cIQ09]PQaiM^ͺʳiv5{ny'\G${:7 ^@3929*ԫ~jo}Lz!R|,ųd̦x[5$dh|@N[3[-럯,wa CsH.U%9|8Z.ZUL {9(2]v{ b)*pe2( bS1L璴Aط#7Px=|'6 gAqX@ga|| `T쏲w wXä 0/]ż>jC!6JLDeNWmf ݎK1TݙTehjO j\?8rQg!5UGnC\ ^1sN62E(t26m7(^F/5($]q]97 r;ym7q(Yv,Z/T ākۋ{& z"oiG yKx Vyt rU&œ]g@A35~f}I7p1IAD 8:]w5OܢG^Q:YnzP_C݃\YܗV*"w_[nPMJ+cBaojmZxMO1CfV$ч~(km<΀m>6ƁiZ! e!ܩMVM~cO7k'N,M9)S00>; ~R렱($߉ 8\_L\ htK+vAevʿ7'?ܝ[no5|G fZ[ܲSHR44y.崲Լ) aDbŐ0Ξ&fvkkwڟ?Jnʰu0aA.V/glೢh'ƻʱ ?|2nzHX7bo&G…u'^5wo{uHZ#_HĬkt6o۶wC\DiYH)ESq|$*\ QQHP8gF P`$HUP㊬ܱLtT㩼p z8 ߺ*dQR[ i>]@/g!. 3?[kM6fÕEEQ \x𢶡d9d-fԝ" ݺaE{:(SO$-rl59REg,6Fof8I,|jBW̳Y.HB?#1+jWj`pC9!"JݜƏi4r^/ dO?H]I 䖠 `)A9R2AdW?tEC~5@`7 7:PiD8/2[SzWLbZp{hly(} ܌6yrxDRǪZ74g{󇆴evA/ ôYA% &E_<{cc~zF3+MʑP,Q .y=uIHڦNF}@3cf TJ kLQPD| xB LQ v5zf Rf(T=f!o[w^T ~p:#`FHP sLĒ[oI- [Z2JݍKbҝ9KwZ5j(7EFn7cbn} @ IMn(hS}QsERUޗAI#<$VdCԬگs=߈3yF:98[CCQovo r5;_s>.oe+Ig(M]숿Ն:3Oـ0~O6"nEdRM1~e6;OH؟hNrpu`44ylxOg ,H2Wn#Gj {d:}{! 2.4xsi=^BLJ: ȭ=֔ t9([TnIug$3j8'Tώ/mWHctMsf6Mʨؔ#;kN:?~KM$>yNԡ-tSdct)LWdQT8̴;!!Jv*!ձXNT!ԓa-#ߚh$(:Am@9^5·#l3,!,%Ujj}!15beX|47MGO6%(㄰;` &\]cQI#]A8?O؁!\kyڟ_-JUq{V[+^_P,ζs.@g!̫e~ڝ[l')|vA֑>Z{l҈3^5y˵ ʧ"bݩ )I 0+' '&[):~ʼn=Mҿ~ [X.ߋ/@9΅~ioF모p{rvO~==^l59n#P+þ9>Ε&a % \F4:H j76o:`,}O|ȃ2ǀO9Ӽ:(^vҜ%BbSl ?B` /MB~_ɧ5,lxs|U@*rDRJKLA7F Wu}A@Jbz 2 c pRP~S:uYfI |$m6aP8Sk+kt섳/Q3ւiI`(|/.Môoe{pK<1# zRf ۴7,+2SвT\UW+.|w}p2tEw9Um x`PL>&˟t>٣$G2 .* v~IDD_$P&Uշq ;_kyMD s+`ek.qϲY{VHq'8]^oc 4pS_ aڶ ?\P{6|^5LjNØe$ W}2+%-Tr-xP4v `nIwsb]Ș]0EhgNo?t 9}@:I8B}P\0,6ř6VL9Cxii#K`iwSe{lP¶-U30ͩӍepdDy')^O`G?TYIŢo~ ZNk%?Ư3"ݒLz`RLD!$ƿ7lnL\!Mf#º) X}M# o Z9ؗ)Px/4kWd Ị9ݔ>5CR-bX歌>#{oUnQ'WڰXX2[.'S.pҍQg [0e|Z>芉 o5<(ew-.owܴq_7lsN<+\WI!pG60TSg朝*Ɏ2תU/`WT#Bn$l:g`8*~9uh]E5u{%5m]|"j6 _f\ "E]*|;q.i)9iƊ/PPBR~LMڏ.1փ Ð܈7(»^k,#LM/*ԞnHs*DM BUZF>8TB'f_QyT Oз)D;rŜUB=F'd^|ֿ+H߅ټ*秫gv|{~;%x O FkB8@JwFs]Δ&m9a5G#i]'v^VO5P91imV|7 [yWgA)'̹SAS!ʱT f-RVYXM0f8{(QItɿ I!S HT:s?aWiҮ``MIfa( )BBk {u MyERwHjϔ~0+\s :N2zAJz)OQk敛vFғUhޯ*]! 4RIILe|ƸmyPN+.@|]IuF |0mE&h^Ǵzֈ(ltϨz^2t2k 5Q{T1ʝ>Nu'J[f\b HMJEyyeD8 #9E+\ D>p #kE.hll,DuAHAZm|Y&cDs{ۆ堯Vo3=^"&~X) c{v %VޗEFӟѡ83%hpWeR)CqRjILijo->0U*q| 2B#ǓD%}rvQcd6 k amjSNs][XڵL>!nwZ|! |ў݃f wvهE rAN _"_mv;KY2Eꖡ_g|JPnZuhJzZrXSVUKEC01$wªip7¹s&?CGGyqb}Έ0K,>snlqE @T:8nLS $9bc2 9r!`HiKL۰4ᓴe]sOEǀfv0^fr)ۊ8˵N_~*^a1dN  U% ȓ~l DU4 G5k"UYƢU@C#5߬Xj"9iq&?,ksH` <z`PD`ۓ} 6XшH}z:+Bz1E\}헺 s?8TenAjc'*=+soG! 1r"Et~gֺ _2YjI4_l ZC{m3Uz5-+O Zy0:%NaNUD%}cn"K)>`2K/h!,*p"J#&Ƀh":7o.}>o"Q*9|'M=Zue\IB?y^cZk[`x*^fajփ%H&r=UECJ;5V)3Cm൩w8g|lDlSŮje ݏ%CJpmt_zYe*~r 8cL IU"`XN]7 yaP0ERiOFJ_۩jzP ѯ:-^0)N {EutLA^ѡxq?j:|کyH^Di{[AK1<('IiHTr= >YvE] (*3cp6JD.!-5.P-XF}I/^X+ X&$+ $ +Azac??Hc.IC8ZKl[?y/}XxCL1좸?HxA:bZCm|1fs6]'WVyݳк jMnʴ#۾vvW| ֎m(hGӷ`@(S3!- x jfpEKgӐ}4[w8nLjYtO/:lZXm/pW_:clE,h*fx߀5xdp`,09bk5@@R.!T fbԏ ݇eyV44;u@?#zF_O S,@zc ny=L9 y?|HÛ? 1026**3"OLB)R#`V{b eӀ1Uȧ ^l aVFq>˻w>?*bbU ~5O4V1[j{: " сjnr<` i?|s!ݳr6Bp8 `XJ#o\}eV0ksLVfsO@ݪrDT?:~Nlu_pC~:yn }mo#z 8ؗ0rIsѐH|Õ> U32Xu* +)< 4u*A7.Zvn}@%qx `,0!HRluۉy]aǬ.=T \VnڞP+Hdj zcY0H_ -68iGQ1d0=]57Ъբ?&No,WM4#GÅp?t:ش;{=U'Ol19(܏ ~1Uͦaqa_bvvob›xVڦ!Mq 0 tG6(yݏ.d<ZnN1bhJ9/J!eBq8 S( 6+Y>)fNLX O`EObVQNTn,FfγRLN2Z@ԏ,u h6m/ѱ-=b f 'hLFP)ds{!&CT`%:m׾o rk\SL׈ϽVl8XV|턟~Yd>n ,l='R;;ƎR4o}2d7:/Y_@jՀFpjru%r+ L}" iߵ] [9Zk\M1{V4[(HR=LrFBQmN}FB=R˸Avɻ?BgLLB-z,p CZK $4Kq@$rNe9U4!~}~Oe1:xW9dkyM&PVC †b#M lEY3yJdZo#>3Z@Z:nUKXUj j$0;kyh\6UEm)J:қd/U\VCf "2NrϖsfE[#O7FKEԈQu $ u;_)ّ/xp@c-˵o}; Z9=z\i0Eh|\E9q<_w!*`p"zBf&ݫwiEZ8/WWg?bĵvʭ\+3^?~2t*\ J ~td2Y%Z,1UTXBB=9-^/?^8 s E*6H TE!<,'򑿈8%1 ۿq*r"kRQ{!3[[=DBSVl76CqV$f8(DhDi{ʰR9ej 6$V <3t#4D.–O1:Pr/wa)gG/_?|G=˟vU}(p׈uO@ع<64-݋J@Ipъ2̄q7gL/D2L Oypj#oJ8Z՟HIlQG(kJ!'X5UУ֗U2|ކ<*>nM 'l.0"1NE 0F Bݜ2u6#GSp> Π X/=EAlq/N尻$6DhXL} Fz_MfMs(]3?Jyg W0|r$.Axr-_T 8Pc1@`bYZMօ 84C?8&>71\,bVOEG;ut+q=/r.x\* L5p6 9ܧp쩖%b3k!˂5躟aqҺomE}GOi(J9O#boK9%{*W&~BA|Tmd}e̒mX di_.L^ÿpu]挒ņTqV ’8f& !_OjZ;Up1jeū zFSx>}ٙF,ca?гk7q5[pX6Lv6Əǥƨ}qğ}<]0[Z3"ʃzzu$6Ŕ.VAGsai^.-4痞{5yT MLc$E /0#ɠ .{["֌B_ym5QAt+xSljP)Hn:Fސ5E=GuJ T{iȐB/^jNiiP}OeJ.Ip'A@zpOuͫlHMw9l i~'< xc|moߍ%$-o7){;rrNu_ n#fLNi+{&r.4ݴe sZ3IYQ+ZY{y`1J5.49)v)Oj&6v} wL ,=j;m0@zu ᾛ~h!kZ""Hd3CN6QcŘgafC:E >ǎo:UiϘ^ap 4R^-daR#{':WoL ^XpȠ/2p³v$nsN^GlVt*d`}Z ҭx/e{ObR9leJtVϖE t;T'': ܈Ɩ2)zebsq `MkZx.M%5<6R5G!!d ݤ>ޥ a !sĀ-`^Zn|+%&QW:b;[b^="@.PO˦j[iJOLAqiWM˽~DieMXxx$oyHz5mq@3=ĉS /I9n,BBXKNo `2|0k=d o_(;fذl +Zn_ۢ}db+Bg5u+g>&aIB9<UUKxu<+L{Т-bIxG^EV`3;sp/4>AΓ7nCӪBjrw6Cm Hf;#@ƵZޥtb3&6P ߂c[e N_9[q?{:je0z嘱ӭСH6oTèR /N!rPIb4 UAZ.eWuU[O{I)n3Wڐ/e>onpl;*mIPAú{D߫7J$"&>ـN?dşRWP4u'_]۞A!XC"6Y>nCyl ܭ^EЈ+_A.ҳ8[_*@#Qvj-ʺ8= ;x%3XJZk Z7bKB WѲ ]90f421WuT۱J" 7ĀUYp#`qXb X-"b}"\TWh@ʮ8VLUz}xELCuX6Gp1 v@iҢh&(\ŗLtVNu6<%~~6tB } V_kByä9 RF4)u%?9/6sZ9%n3.Ye·{Gwƣ &=x AG$q]6&%m1 q\Y@= +8r_O` 4tu.܊C"xi?0~Ї4S ۸/ݬH7I-v&s:*h[n3b fqC a%SQ|+1R[ƦlGEt.#1+Tڧy'2 E!g@ t;cY(ίJsq/T%8=‹nɣ[OӇ7 㑃|"]Qw֣w&㱷鵾aoʊw*&g n6:(ՁܖnzFJv3 g!I @ϴ}9Y"1fq@8T?DOޖa7|C&c)Rn@l@yCU :㼰29B֧ 8` X.yٻ,X憘0p-`$)|"0U&зgGtR鹓ddhj^V AD=O~2uwHm"ýĺk~=wo#qz9u^vʆqrk`_Gzx+2vvAxC_-H7Oq~[GF:fAbJQCQ;Z+8)y'$J͕+Sk "SW a_ CBep>8g/eћ=(*0Pq~$۫c\].%P&vgoHTQDZٱ,VBlpQg~$e @^i/d&編z\mM 4lWeyu_r㽲 I Jf &h}2ٹ8?e]bDOqBoCj--}39\&G.0/q'pz@۝Ulz8tMR!v7VeG twQ l[3q.J%!-iΠqh+ôRp6 [DՇ6bRw/T.va}WmeU[nO4fL㠄7 ǟ=!&A_])e'үKF6bj8RvDo=F(."uR0M'pSN޼\xYTK4DO2k+sH1(ǢRF-E/T6>_O&*#ў8 YHPj; C˝WPt'9+ 6F3`4e.ĖMq4UU8GFP҅x1ߜ8&ORW̴zi[4ȗ=R+=| 冲=ovqP{#L5zA_k&Tߘ79|2{dh@)Vl-%̵c Aڋ&]a|ټ#&.T\v ؘtlwz= *s|_$,_P7:L; +鵸3 }K}2WcLH妻`]vWZ[^ZƛՊ+兵 -,piE0M$<{!u2(go ,Ik hRe"5oz"gN}^O0#H%<"r%di@4[/ :XvWZ6%ꓰ{Dσ#+Ij.pVJO), ƚHhO /' %>ꊨ޿`ob8O G%y2 @w_űJ6QBxuR:i d|3) rLELӿ~)Pk]S5 7Y j?܇GNTi.ϠE>}M 2 O.ze =:r,+B4UƐ< ,҈p]ufu.N)&ez{]QoyM} TE Jpkr.CT  t)܋pV`5V~a?AUd:(s V@hdSl$h 8},hP7iWk8AmĶ ,hBEխ( (RҦ'},pq|VR@K` X W؜ n X=`#PӢu: bL+y"ځ#r1*% Xe h[i}kp@tNKpvQ2ʣ%^D}[󥽷=%I YGp Z?z? =z%)$@‘;4{63LTO og}!gucdH/ 늊΅1逥ҁ*}&=F ~([6aᓪt7>KK@>ֲޫ>efhX〘'Nv `\9wY5?HN\|3¡wޅgJoͷSAEIF@ǒP3ѫnС6+/;xc,jrI̖#aqq&c*x羝6ÂJ+wb@NHu v 1PD: `(Q`v(/[cƷ6$& %Z5g" @=x:X̤[H8)k|4V\yGؿ}T`dꋘr4sGܳ[EXm6ᩴ'G.4N6&GKHx5Q`>ذHj#meᐶ;Lu H~ƭ m[f2T}%IsJ\w `\T/ \ b@{:g!_jqM/݃]?ӣĽP1Myԅ4:S}{5w{Ch-I]ISo?~%G # f- n>pEh,.J g҈$-Ցɺ5PѭO(V^(,Iay"WrWƽJkI&[VtVMȈN@J0}6!Mr) jGf ?l=vU3f3?xծx[Y k"D xm6rYȧV#alϠ-.)'[Q w-~#ow g;o RQ3L_ït vN*^N_VYYY%(}׶^,Vmg[ dd@c B=PbHP\vgP$LTKޙ.⿠i}'Y-LŬ~0VVfƔ9dX99__o=z5T{y,7Dl MGwsb{ /L-MpGI >s߮oX8@#Q}pOɖ+h8ޤ7?mƱ6$";)5}&Q&\s%e(Ժw٤vM`V*Ϧy H愘wҾ N' EE@JNG5LF%O1C@k3xAHAڳ@(6Up"}枈µ˯Ao>VG$ӽS;%țE T9'x0Hy{:-H9{zgD:&׶JSN+tI}Б<()4*{ӕF7Yg>,->$ k_|0 Acsތ1N DC} WVD9& -S&#epZdFlX'ɓ TxE7e5".Iz1Ou-DYͩWLlLݹ>rb-}.Y@7ϱxv1iCwAfbz㶱ljZf"c}e&4w*+p 4kA)7)^B'o5KGgߌ !cpi[̈́{:VՔ~97"f EMo.Tԓ]}Mp%dm糍7h*Hͥ7 Տ{^<yX5 |K.qd2Ǿdȋ;;챇ؽbGqB:~`!ke+XlLsgH,VX1uFw\D|ZWԕGש孅;=̮7.ˉԂUC n@RĚo_HYw^H,􏚣_89Qp3XU/سν8PԵxTE%h= N:^ ƛR}CN\smmϿ5^S5Nc1zȄBy 1or^iDN$`E m$2e/=(^Hx9E4LMx4g6sDvN.Ln-SeG%uW6/x?P-hY-d"Uģ"gx$vj[D4 ƣr@x'tGF0hŸbtLOfj j,6%R䳖%y>3Pkⵏ´i_6Cv~T7WxilLA(c Cǩ$mEf8 kobB\VRcL^\/@Q*=j*7AHLfRfB uf*8HY+Ki~#'hiLϿf4$)g4TÉd^e4f?PJ#u 4eVtz[ #/#Z.R 5է.(Bft3f%lȏh˨sfF^C4R/B;YI· ӓ¾+- $n^ĥ4y`Y#ݚM-*C7Fl d>_RZoǘjspuǵmA"1 h^6T(! V9YgMߞ%p~:G>7q=p(G20a.TY}PwLWa^7 d@Fʣy.DCF%.1}+*!_ )7.}_l1R.jfO-G/A>f4xH..5a(]ZI{\s۹_ûx~m_]DZ(ozs[u`kݍ $L$FͲY>#7S(?gCI0_r"-iTU&=-/&4 6[Ԣk# : rp c0o2Km4QbjEH4hbXLz#*lx `!#},\KUOX y8`E(#BFD>X`7[2 k!ĘM~ozM 4]kAnޭҠˀPuwtggL7g[glBDaW o/)nOa8f7Ҡ(AoaoqaGU_(y&.`@tV0PZF¬ U"^qlOvQg>h4k1A܂9K:rUeT[KU=iYt$CFh\Oyad?}{y@| XBՖ!11$H\,߄!~ ;:8ܝ@q#e--W*rE1=hy $| %P=YkL6:EiD5Ȉ~nov(?#W`hVa^_]krԣDy3,!<s~dD-/5XӶ׌= fm*gDJ G)6`d;(hB(8AǤ^IfgTP. kq>To?2ZiV%8%ڳɎ܋xt:ճ!q[GU2W @K+ 3VS ?/HvH$= 6u\z<ҏ9~ .C<a52Dרiʂx~HKLrPԜ`<S:L:a g%}\jnCO-(j/ ]1Ƴ\dH>ngNnYad ߋ ]:ӷPcb&#r+kTYNj8+r15bg 4PG'[ n3&=9DHxo8R9%їZfcV.ȚUCf!ne(~Ъ+5U*8{"bHa"!~A@*)JmrBI_?-)6U9s)+ԫ[ogqUzIulx>6{|q qX{-= UQ*!lmG]I)ܨo$tO_'8X njySXX%.}%NOC˱4{%EoZYw1Zm`u''$Fɥ^ɴu3>hҁDʭLqnh:57 vrNl%c{7T[QN,~X- 'bDV9D]k"CyZ&vku,/3R7*~#+3ڠ$UWOwMi_KA'Egx[Z|Lt(ueΥc//R7eM /ŖM.u'R:*SQWhƎi"ӋsW=""vXG]ڐʢHYj1ox~OoI-"& 3b8W ^v N5M]O3M}ɋwC'՗^H& wݞЫDwm]J =Pit/{K,O|♀HQ̮ǚ(H*uf; @3ukқ ?`:͏sct΁T|@qI{ICɮe5Eh$(@O!4dqnOXQM5O[f&Fǂ~1X6/`qy:Ԟ~p,LX,r|83zRe([cMz|tovJ-“J/-!$EΥ0 .${2 +{ 6RXdUEaKW&-dqozjRNE$9bm>(v"J=k R< )IŔ(q8(krLA){IAM@Uӎ$b;d>*$갈mYGZ'>=?~#V"‚NK4=ۤx7 _A[*kq t-f^cllOqvoK:jѹ}3x)J-x v#"z,#ڜjo)ϻZ/,f"-m2*4!Wa^281Ir$rT|BxaBhd97]6X~Oކ xV;^X[2M=;l7A=kr;3e4+~Jlyǔ+pf,i6m('xS}xGff=X< 35RunٹbО69/)S[ l? xg֨TX>N胳q*[)yCw!X´اghhI`f.Qkcߣof1M$6#FUA2? ϳ/s}y#GO'7A˿A .2Tz 8\ 1gE9.je3ew MB,^gMH@,}%N+1q9YzkX ӺINT״*G}K)Z9xs+oO6-׺zq8R=jMb\Nfr7kP.Wr@*Ҁք 5~Cv)!]֋pC Sp|ITE~ZR\OP)h4mZG.$~F6̍Z~`Fzbt-cmꮩsS$W/e@'#kɽLagV%ʩ>i~a++$f)eI H24+f+ѠUOb˾< ]\NGZ-N0w6uZ2n"0,mM%oQƠ 4@Yn>uAz7֎},`;+rh; P[epW&r^ v(uKm! ך}2`a4^ :=:879-+HZtT'l+(Di(@ vEpG-1kXsNnl/lO=6 \Z@}u´Ur! vm֪w94[V E(_oYB5l_Sݐ;#A9IK  83NL y:񥹖zN98_lh0 r*$Sl ^iplw疫/CvR φ:0se9K?w٦ӞVEMi.ǵ03ܰ{SǪA;kz l*hu ) x+>ˀ_)eVM d .$^.eC"A:16 KUQ4;`:W5Nn8~.H0U2SEEZCpRav'}3?Æ}-_c9fV&؆l]gN"rD ܑP␘J+3LŹv%`ZIӶWաZN)m 1*JܺZ-FԓguyF=Rj o?n #h7eZ&=‡AEn>sdXqu˞ d7yMeT =,@MN0[Ǎe4=oB&2=x@,(z!F~o_/)n^z ZC VW, Q' -ʖoZQϴE쑵< '5]& x/c=[gEbm~ge;tb#KfXAM7ˮw_Dp10*Z\iYXp0ϫ9=hR뗥"ХZ' S8v94_\* tE(o/X4 viޖ P}٢]| A]H֐o g{.U4:^^3㄰հs9EQ#[,h)J黆}ӡ 6/koh5/6&9sQ]11dilIl~|9\BalNj$P+IkuO* UTxQmt!roe qz4&#SzWzjщ+R4w[x zq! 7ʳM?)%-(aVų_)wqnKQ˽!0lM93h ;UY\،,gmU)jT`?l._r*2/BbW1\glᨻ\ntڳyȆ `"hS1RəXnb DY+IQRbb'HC~oX<{_wҠ(Q<^{rWp͎':WgDU\h8R ]UPwKJ$ǓB,` ܑ1#B~AU%gS]礷5 L qgMJ j oaIJ5YT^'h@n ki7ClLj _)% b6.Gì@yx+i ZR1D;~ˋJ]?vg-&",u{ Đ:FB_(@#صZB?ڧWʢA DY-b͵Q;ߡM#1@SgCt!/va&C3$Ib@S%4݌Øe:7G7D{Ai%%5Mu膌,륅d1֔~zV@C8{#'${!zEH`N+zrpi/ \ql li'֓߆c"%Z9=!Q_:9}])Eݶw;jHɎ9[&kVg-$|I$kK_ȼU9(qXYhl?D]/1Y ֐kyQ w(,ؕ֡8|*^?i%, Hp~;zKAM>J875P`Qq)ƎޗN&23>9Tf{.$I6*([#cӯW{fҦL/j {cDǞosPL|?CևCV-c7Akd2DNIqix?#wM ňe8(@iwD2P^>|Z#UbLG7KYbGU8rr7Tަ^Rq.to(59 L֣z.J 0lF 33D i+uAfj*ꢭ^e< K ٿ0?&c0Xdk[R9ؑr{ ҩ#bl 5cS%T*[jWNE;}LkB@\)~G #ƳakrF Pd <\%BOi٬֎ wk]܁/Ƿ9ٴV4Jo2-O|WV5h! J K6'ۡ=\szM!x'j鋕SzK#3ONn@+l$5BÞnatg o/XTgWSJ ɜs(Wǚ5aJ!Jz4^Hqryμ(i zD<ڑJ6$ 3kIumib f/jʐg䌦<6(hPjTA҂;zrJtfh6?l[Gu0wfm⯤ˇb'F0{4e-8nUr6lNk!1G0jcxzejZyJMO߶s)oЩ>´[aK_ےJASMg+TJHIÔe8@.gm{00BcۿE;"ќc$i{F NIBp}$td{5jz{}rwGI98 \D N[ÇⳘմ=ni{āZx'KU^w^0O8/4ȴY%0=_ ?9Q#R&:SyCD<N.~.6f`| Н.Z͍̈e<1n=y޵͍R5ګ^ κԩ,5}c?r&UP-8]V樷l  l* TP,K&з+"]jR8PNR;Qh-"Az"B'{7v]s1pv+ *")QA5; _SB^\R23pRQx>ڧEDST_5mrؗqC"%!>A[Lܩg<+rE+$xQvNS'C+~̪nWI3},7{'1bM@0C]a' !zN>q k( ~N5{2팕xvEQoQ z߬3mn 6zoTDN Z;F#;Ő2#;%Шc0_sia948~Wp>S)iQLoc(75>D .S~DL+ϗev&'4fnEGP9Q/nBʷH`ng-g3YѨՒ9y;H[,K"I3/{Mޕ?t4%)/)‰+g ڞQXM$LPS$'$7z+\qJ EG$&V(udTWȆ:p g(%.=DK&QB^ X6bejs<-#rD5/A3WUP04$iH >]αzχނR%:,ZWJ:|!I0_|8 30| isИ047suuوj1@MZ0B)59!.1qhߑol.īr;A:h{:^N-'xRPՀ}D\S\RAA n-fa!iGT[B8]1CX6ŤMEaq0B(\FW|Hnj*z2 u:m|C|R)Ԟ~ZkMi!JdeNpX`EQeVuHnI0A)u\Z 6eW Gqzg܈-H<v:xky :Zx^Ym7j+1=<Cs}JfXO{DdLI6f9RV wjԏmܣ~() {Z%vz:M/CC%=yD}*n%WQ1)OF|"xU=dSwE.Xc B 8z*l=+vSI؟޴q}CT$̖PnuX)PW#i߼Z%D!=܈yp .O¹|S?WKj5K9R@TSNs0H] :\O1Qike1=nFR㵾y"~K1B]+xV3()C5>9#F YDyk pŷW6ZK &~Hi#pZX^ܦ@jCzǯm4΍4u! Ek(NXRrVT1!Ů4:ۑ1D=FSԻhJO1#3woCG9Mo _5U9!JX^.! .tK;ث?OW L[OI\NO~`)0L$Ɏ>g`!嚓/dw, 1PnRwFgjWoekpi EELZ5oOu7Zd`ܹ#dSĵQnxW4onjg$qSWq$_n 4jJ_^nt~ʑޗ )D6m2di.?yw#JeyHx֕ogH+f: ۣ1(S?j6ķ3v$aRW=8XDmk^-ꔌᅧu-!)=佮A]YbT[WznvI,4XӃ'.#9Uǂ+iGCou:E6]+}pWIk*^C, ._LW_2n3rME`YxwяSCuµɆyl?Tl]+;?V!xY-v`c 󶃫 kh \$UUTTO)eJy,U?s661 ט-y8Jv(\C0ւv 91!lA!8;(a#]K̸޹?!1G]:1jZ`fM>"ȞRB,7i.V/[Iwn&l?W$Mv兠ƈޔ ΃"B)N#\uxE=`C{>78ٮ<5gWuy(F2'?%_ܟ' T:_6<oNY+5a%92U_1ZsN+kƌL}㊡mSB62mF7eZy!5[&cL%)0xA.$ !N :YkZ;xomӱ;X٣0V1 4͊ᦐZ@ceA{db*D;uZD=1k25O~V.*(<aW|?}JmqH;oQ>)V  SI";i!s)H? #uI4?tܳ2al/~yX%:*_c9x-DJC!SۣFL5rOh#opT^ѲMluwCRzD%` ,!Y;q_rN#H~_1AQS\4dPNPF$MʕIލ{kC I뎐U{],O 26GH;%y{/b΢fAj땄|ۇZV\e!-W 4D ̩>jzҭgb.7 Dѣ./wUAkV%㝳j$Lo2 |z$a/t#.wQf_gE6"xi4_d Py-r>E45FTq(K 7o4(>ƭ^u2X2hH3SKoIiB9zOg[ w9OS>> A&ݘ1NS ?ǾHqjz S 4L/ɛǻAfiZox ~FwEXrZoP^g|~tBq"^L&\ơLI܉mYқisJBs5n毻o-+t7l45g'#TL:XyƞdS"fHHշ`꥓$a8ZneLష-PUہr 9PuV2DJ 7SI%Q,&*G:]cJ8fS=R$SQ&B}2ϒ4@vu+ÑD?R(ϿW`Se3Zyb5 u+#{QhD,V]&e vxU|Z4$0 E0x;YdʿC$֓p͈lH4ҰK؜?L; y/XGCn[zR&1Jqpf(2jP|C2z#U ͟]^6H+IF*LUcIX癏EW]{Umso+*rHaʇ2t$hyJԍ),k%N]+KϚA)aM$'6t_Ē]" E<% j{!ֶnI|@pӋέ;3#ʇ vES|ȿz@ [tKxzӺ]2fh/ o+![ت/YјM4&6N05:әcCh27 ὏q#_f`- i]29,ydqie誀-1{N΄}aҩ1vm(é[UᅨC_\#^׋%Dϥe*ZpR5aM&8H޵UMK"V=wlޢfnK%)68urȒzr]u@^cr MIg$A#܅ȷZ z:v)2l F8u[.`XRӁ~x""5BMy]ACҿgGbD וۑa gz>坜]Uİ,+@mZLsܟN;_x{K]&޵?${IT`..^5_*I4lJf#jWxT@ZrM=~X{ל;S=T1&"DA,u.ڳ=5w>E?=w5lH9QӲ࿬_>,9h6]2SeHu9㥷y(B s6]bJ"I9lσZϡ'I9|Ь^QU¯)ow!oEWihNXn0Zcve(wߋ~ԕ.(^]vu̵UI%,L,sGXwyC 786~ʂHHFXI L*9Q: ?䤗YQU㸠$1 &s16 cr PԲ8cg6xL =o3| ƥTyM;k>WA,KY[@JY˶F=bJj :#Vhmp=[X tF>ev~#r)y> Ex: ?K/DZUݤ\'RJ#ahL~ؾx?ؽoI]X-aX 9xy^Ys[o|T3#) Wba0 kp0 oJ33πîhY.=󤝩j2cs` "ރ e]H550r MC}4i5"AoKA(\Cc$btqvU82G3oQrD7DK}Ó*gʙCK)-J/>I{T1KUbtŸ -SrelNÔl&BZ^ ^U))g'] u>(Ӳň ϦBX4 )i썳SPb'ld+O|;bc>rȚhQY/,d0c!!~GFXݨKBOá{ .H8t[R ʼ`G`ŲFNpP )V8FNmVR$٬|+_0lS# mtQ:UꝔg/l8:f1%PQ J'GJv (^ML3Ro)1حP8"he:oĤ [S tI@ǂt u'fOفO:' !=FMɣ$oBkXK?:} \8+y% 7&RoE~q%5bя{Bh/^;P`.9;9i;aػd]>,OSjx.?}9ە,[0ةvY$ߑs+zwVu>]el@3ߤxJhjviaH <7򱲲+wB3si,9o5wI {[A^-(yc*ֽ*]ei$Oa ,v=Hs[KKs߰q^DMF'n4s멧Xh~=\*.u\x |iVXodnR_TJ~~iV=ͦ z#]D:}@4 e I e4k^#{h2$Rr׽%˘mwkX9}̲0ͺÅ)u Y`osHouD\eJGY9Pp o4ҲgXzAr|{eImO<0br"|$8vf. ]0||}Tq\+ov #ܐPR#' 789]VϦ̞GGo` tc9kas7Oɍvhjw_O-5v@i2=t=3*$r-kD/wN\6qn"Ebxji~<#ɧ-o,.Q>,_DֽnMFMnP:Nmn^<1Q Vȶp2C_i bS(ey0_OS].<"t\+w ;avcS/rF ?".@6;kNP9%4˶?M-mTJ^vB@|>Za:@!)Pf|B9 c%mkFU%LLkT'gAQZJ3IMs˦ %]0.%:9>%"v̼PkPk,}D^(]/Eۛ4=TOf"v&之lHcڨ)'t}o5Tڵ㰤zks9@x ;AF(qMt ?jeC.Mr-bY6e[GWGE4ޟ@r}R)XzyivWk:g( .(-&6Ʃ5)F:g à@Kid&Vhۜ__pg;!?͏t&RfSYȬ3V66[~#fI :NKIXiF뀋Z"%sm: aHE ϣzm#׃((0@BNRhu &qjOQQ9.Vgi$x+ :ht=/c[賷S?\V@n+1.&G}*oR6+R=K*x GQ.ksG7 NɐԠ b#!6f茶Rd&~Bkii5ݘIZӈ^ 3 /)kI xo[?mT95$p@Uu8gi+rOo sXmto=nqAn=V9Lf`0Lr.ZKD<9ܼą#Z#iPpbQ!c0BvXJ_c rRsN]t _acd ?30ɦ.R־'PsL 3!fNu=Zmp5bD)g1f3EocKBcWlܿT6Fe {Fp"OEw)7ba)xH4 2g /\?(dz+g9@1N: ##FP,kw0‰ȵ3WOR7Oz|w-yegB]p9~XQ|S[J; ޴}ITxmZ {yXt||NPET᳑3`$TL+3=OW;.: -p-$dX˛됌pyXnjGZK'"jI(erO-t̲7'5sj rJPկ=)@k|Yٍla5M/%)ga͹3ș3O\o`ىJq&[ h~TiD8B3?Ȩ x9SuI,r`7 Wښ:2;3fX$gn< Q9d :<lPQ  AZbޯt?m NV(I+p-0fі^d ^Dݴ3Hkmxs O4[|F(4gxqLOP*;%A}/y] "ẁ<36x"_daAP( 1̞r}D:5`(N¸ >.ψ8A+l4"C cޢ.>-4{3od~ Y5(P  їTyH_:[r_-.hE7~)N r T.) 1[*.bhucߔ;bq Y3!c YPd1,k3`j% C0[M2T88]eʪΝQh}iOgtx(`[$0<85iJջ `{ \^m 7I7pQocoXzŗkˆr&?^:TGd{9OFn yN1R Jz yS`BKqC}PLz_>\Mq,і_ c8ͣLilIp|s3)6A*~1j!HZCWUؒCǜpZ iTmհX\*(!sOq-RU̗Œ F\8j0@a$vખ4#c4TgM; g訲 CL'T7 Mç:HwY Y ~RnW:|n-(7T*&ٰ fptcfjn9x_/D%| r.s'נ5vP] vM>Y@לe`P! %\ƭJ Ŝ' DB[>(:\ɗb+t 檯ZPs4vpК;8Cp:ƒ"oML<%Z2!u$6(mq/_ .]z"ki̬CCkj'-FNM~4w`>@O)]Hq~Ɠ{TTÔĵ2}Xг2Uw.~F /efSD'RTI5 -rUnE* KgkL귧Rzb6+?WHcT0j`zy蚾ƖYN"P FI;9X(^ [^ g:d`j^@,0* 7fB]9L!ߎ,bFp%;nLLBU0}&m겐SԤX+;& =[**_\auon9i=T& uq ^N*` zuVZ|'[t ÷PtH|mCEb!bQRcؕ!5_ [<")P'A?-yT n A`@ ?ù5t(S5YȅzfF9-/u8x }žje/mWE;4kL͈qf*!}==nZ dq6V|X An(8@HwTOFI$"~1m,֝ŬF,#sdmӃ PPl8'W6/n. Vbp12AN'g%U:Sjo@,(/՚Hێ8y!4pDJ)LD9 v9&?#!|qc#7ig~pveU7d\KkO(^ d_~^47XjVf^APuS %6Ɍ7_ 5uxzxk?9Zq~ȃ74{^"l0I-gG+JYbi~ }$Jo1`눣xDW~ʉYaM[WCXOfy^- bd'5u5 *˜⼴2uհ>*;TeIY,lȭɞKuV6dٕz*PadFtPL5qV8"]HΩO[y x) M1FI4hPeHscH2PVFWffW-P>I2#CnȽHyj0؅:-o4dH=x P4kn~d*}JP~2mv .K΄PjQ zƚ}gؗ܉E32QIuƤ 7A?6Lqoq`XAsAgKʁ7CŒOhdGj`OV^6$Jt!scSׅ,cy;> b­{4;s0g5M]35g>~-B_{GVn\d7"D|^gy'2+PNVK|cSgU_ *_NX᮹- 3-.M6k +kH;}x@Q-8 ic;ĸ<~W8Y*bö|kC?h{iKA8yRQGƾ WT.).˭]k lGE$Y_6$\wl'ӐkXK<s;YȊkKp2|Mc?^dTW(C+\q9ӀrL daTu29v+kZ謡vQ(6lJdGIJmno5 cs\$^ jtWe)NC ocrcF9>8[gC؃l"n+-`l:w,N% yS t [Q b!g b#lZx{ffPNnp)(k.0B[oQW,-,L{z9tǢ ?JHzr,04uVN/n2Q^1R#ϲBb8B#k;rKD<.F!j )w7H8z&G+fl <{2dPRHb+1d?g;CNJ-ECr 0wk@ڼf;1t^զjw_kh+>adxvf2V({So?+'[? *PmzQj Ȑ]Di4<u"2FUywJ8\ vmꞎye<<38bjWTƕeU \$#W- Gg碣vX;1DI/* FM7;e%IF[<CPئӸ`~؈ȡ-.^7AʉzA[~9s;cJ6Irkv[ȠP):KG5p7ۯ14AMxG.<Ls;*'[Jw̢Țbx)/Mۑ9>7L);} FtK9K%>2`3j_r} 0CD7 [;/"0ߚ[7LK1O75Uqԕ>I B;SmCsM䦏I=3ʤx>`K7ytƑ,LfuRh{=]/^;8D1//MTqhj=;zA|"N7!Aڃ%2$[N:( Gu"ṙ"5QMiG]>]zvjمAï#7"r6v5D͞ 9bԷk'TątQcJ"^gHD;%KPRZ $ngyGSYk%G I3PanɗSD+/*]WMIﷰd0aY#|Ǝ}5M*HkS&:ۃ QpWJ9y^É5+CXnmTPVyW h6w Rz1(|2<itDO ۢzp~{j`jD&[ݳǦ rYoN[ @@EM<"6.ω^?9 h.EMK$!cUNiR|f5N"~jՀk4Yҕr񯣻KALB{l(-jk$Q"}~t(R9i8t=PўuMbe`oeX]Ov?$-42'5Efg{z^GV;2z x ,p7lsK42rvbJn~A1.ڭn}YM0/k@~)vĕ]xGppY=}0[o$TXTaspZ|J~/?V|q}"*%8LG끚E:8W@T=aOA ۓ`FuE,^D͍='S6x3)Uƿjn\i"f͘Iaے[Gew< mt})޲;5η7 _q w:b2Zmϻ<`#ꂶ?L-;oZv BBv S#-;>FrkŖysѽb5%] 10)OsxHΔ-VFAC]*v OъW̃٪_ʡr L axU@_V^F\Wks<=Vy?xG^R:bHƎ#&߀y>  ;ߵc`.I.IC^G}h!>BdKV: ǽU;&*݃W_9R~J؆)/|fz:֒mT+HC ~LC`YE(6#OT)ŭlw""?x^Uy+xDel6BJhAXQ0Kaco(r~X19ρR+֠_heq BvЅl2DF"9.m^5o@VKܘ`K M4rig_ vM9 +T[B?jB:@7gȗ LΫ\@RTs8k-[-KAf]6ۇ YNOE|X'{V6Vk5}nwګES?=K%[> ʮs>]C\}A{EQ]4/ #4~HŃu/nU4Էw80d7O;5lr݀S`dz8 $vCU㓰Rd@KSM=e]x ъ42Fn ,yQqI*pG ]X`m`"-~B-9ڶpQ aVu|3_}a8wTc7 #t"d UJ 9Kmpg<ʹ&ﰎ~eXUxw[h#*&ͺj[w16 vAw4_Uw5ħ[{м' =5#ɋ{7)rpoV5ycݼ~i Cr-aҬƯ'KX/|/{ƺҒjd:i7T,qo5(K *QF;P49u$3KO\yR>ҧ_IvNK% (vaizs I@b^&S}?+YGu7(},BGg&k_ºW1n ]Ҵ,C 8PC!VARbj[#;^MSI#EwE/ngfB0 UGzJ!/3 :T=%_9#&$>\;k[>٥9oݶHӀ=aVt\i/}{oyڲ1sdv^?1>nA#Dد6|rTT&o~FM)Guoy2gtbޅe(3hu[<'m`Z>8PW&?qW6#=#X2 )F0}De6Cǚ{\KTYy|VscѬ`fԶo^pc?Gm5n;ý[7X3"y;Xn \[ס-2pbF;yn6#&?iURAaDAUF R"f:C̗ F$b o( (m.Vfe$F 0izzGnӇk2*c*!lkA-ă=!vѷ\xlM'Yx҂AmL׊BH2Ehs~39 +>1GА|^XP*\%aH:_)%bn/L|I4\2S0VG4W*R!͈@4Hit_'dQܶ1~i%f^Oɯ 6RV;UH1I4fRx]|\u.'N<6_xN+թ4 lK0 \Vq84YO^*&&~eZ tG"5USr"z|lՌ m[ ń[bٜʎ"!mcJl-z#vT8 & z15!ԇ kb[dOW` waI_{U16!iV]lb멟! FJb$w6(dA *>6>_Fo Z#zxeAy=.L<[Clʁm^H W/27ֲ(l؃ 9]ci }S 9AA#n4+$?^0&'UdoGUG z:,;I_gq+1H o^YrՇJgY^6mMVMjt]+G!oX WפD˳U}Ʉo_A{Msx, K#Yw4n4+DiQ\**̳ZMw lC#S"CdmG?o8q4v^2LLnUf#M~sDE&2LM`j50aEaIۑx|1:XWo]K!Z=*pi}`(9fE2bL'ǚ5hx}q;4D. oF61 `[{dWq3B\I*/Jϱ_βD7ND`1XTvK/ _*buA$& =\=euA"0)J`qysэ_nbυ:/#t]u#[ r;Ҷ4Ozw,Vνh(U QF_ldWN{[j3l4Simd. O>7*i'Vﬧ')[_]Uni*qS؂o~QUN)/5ӟA\: MVӭ/f|4_{ª_> \5Wn #dkI䬐?ZdbEfeJ4zYzM}Ѣ窩X^q|me& cy3}5;ۺ:V  ?O:4HF7'XϢ2ɼ ѦIށS9̌ p* 7J *vC6o81-7@Dtm!F>NRI6sQhb73ۣu8!{m`ׄЏaߠظ|*v@l)ڻٳiCUVKKTs{/ eJ[s3}pDʵ2/L)&L{vomN[@K z5r1`f.wObU*>?~ %MɅuY=5r<$ohй{y7UTPn<2jIM~;*7wao0E1˥l;J>wYԏ6Ҳ }S &}(U<~@EJi[\#hŢhvCXxQ?:%!yh!߁l`Fs7% *ލ lIos3jgL!T~>وABZZ'WL~!X&)@.DxYjɱ8|"Smin9n_jUvcXye$/V+ |}<3ذ p)/b >ջ@p񑵇Jsesc+ml}\}+gMeqQWjXfd~^hKqH2$"a}珒T6ԽߌU2Qȃx}lu/w-A2cZܴ`|zUw|')_jn%cxO۵ceZI)aЉF^6ZSmX"maF*]ڀ{nQAp(h-}_UmjKJ>w-D3w4U8*#:A@&v\oݱvdB-K8" ,7Z3Ŧي8a Cݠgpͳ.i~uX2譒"ErᛈƇ[R\Յ^ vLi |gv"R($= }UG ޼1wAqˇ|g*H: b0T* t;b٥fGf9ٕpU XDMDWU/q5k=̷1v3#C4keLT_7ttJwqg `E)fmᩔ|8ji P~6jsh@hdm밹p1k,.q|Ť")ZHJ׸$1LA?]6_,]idwՖ`%a԰9 da8. )q g*ɢnqc3kh,TY?;h POTul/Nj۟&[ׂܡUªK [6?|C_s Gfk $QnS2kWsUU .|b4܃7)x-[9QǤ$Ek4OLj'CWjy.Іe"m"fjsn 1v#ѹצȏ_V#L~ /<ZR/ȷj<`9m )A{յX. pgɋ&lwf{1W" an8up+ qCoG25%=KnP T⢧GPV&Hƕ1zDoHI5zԨ1/tUE~FU~ZkP!v&XKO(lAbray1 Y(m gq5QCx\qNB -ļBB,.w^oV֣/d#EaMU*Uբ`'c\[ZʕS[L^/} qp{/: c#̆iƑw] 0G S G!Aͱ"8- M"}-݋/=ңa#Z {B]&DFC:YڞЖ ]?Uy=⒄WnL|oa:/0T-wų|4McG00["έ[zr\-PG~7EhO:4A-s]=쵶Dm,֡mELf6\Rn t.ew1<.t%3φ =iRՖɂKP.޻d]x ˜6ˬ[>ѥ3omh?crv)9J- ]jw{&rԭ{gAl<&cZFR;#eV?$FNOLrr<ȕlBDZ,G:05A mW0zU!ɝU$^x[1ƶt CKfxQK>Q|'Rf|NXZ=ō폳Y/L Qf>l! GYųizc\CFס_,4~Ԇz[z9}&=WH]M"ӷ] ٮSJ|E܄4 ߯"􍥬̬-{`DG>4(Ql59z}F(AM^P偑Od\W*bF0b!^p*Μײ*&{b]RvowɂǢt ~KM 3'1M@dUUN"ͰTH|=x$&-V0/$@z*r~ą.Jxh]+`'*qIBpLsy@'x6 t-l2NQTܭču$7ZN՘8+aY6LKfZ>ߚ.M ?sJУ<+[ڂoǷ05"s/L*+<뙻ȃK+HUq\icTaK/aU[rPmĺ L7),.a,"~7Y/MaCbrb7bv+YeçmCsYRn&\ɍj ~?-u/5D/f֑ Y?>V2ulW11gZm8*0Pp8!603.he,g7]fTj_O;W~$ +.g' %s$d-^J ;q6ڲyYHLbC[{Xۿ4hoCiVc4d;kw_HiGe=(S*Q ZcˮɹLOp)3߁:XΦZZ襶Tz%0L3$) T 8 B0'hҰo^HX;d\}|dl²Aw1 ˗G*r񀗸FJ+sIB*rV0.t|aJlS r(Pm5 7ʛ؉XsJ&0a\5.,[4Ւd[+ጅOӋrC>"u">$P4P}X<RO1VkgLP1eì>kQs\By!*E*-Td2C[Zd1cbYSI|TQ;`c"#:8dj^a^s$/\9؄qI~TaԥXǦiUJxn:<_xbqX .M¨/XFm /S7iSSzPAI8YlD]$9wO,NyIWCu_`Bԍx6{B'ڸD C\*NŧXž}L%!r 9dbaRMs2Ch(@#*+^dT~[hNPnFBX2T7jiyX<՗A.2aw-*"Όxܧ#{*!49m\6 q6u T<;8 7}w˥IP1F@$ÛOm(Ugg Y B7Qrb\^ z[Ri¶خb5И#1p ї'jk:vJ@; O;bg&nxٙnqyi<*?5ޙ爴Ĺ:lxKeuFUl#(s0c7C?#ܻ>#rpFqB]j/Ry7:}hr}Wԓ ea4>påᤶnzMս3]PN*vy(,TKrj#XIlMHv*r!ԯ)K;Y$Ot+ZځT$ g궉@סv{`R,kE}Q+ti23A nRt04ΎJ G|ZSZ|!ZLꎫ&0b*d!]-pPAKa$( t YU. ތ/F׮Y-[y~VD$^^]ș}Dnt,Tmx\dꘔV=z0m5:$APohOH;YT8BU%4լݶ'Ȧ | {hi̹F-ݥ J!Hq.!^ Ço!irJw.P5"-7H7%4dm] A(tcj H-}}כm#iWv'B $gd@Sa=oW XAɆHM1+7i/;2ع-cvW "<@.Q9h SP|¸@Ύ(G T._g݉L8 Z|nP*µ?,%:[;i˗N_rg/<91N6Qٜ_~]0>vP/q[38lq4)WHb@G4.LG{bH=E㰠jA vֹ&=MkϦpY,^W;fIOR%'B46']v#JqR428'I RgmOHq(ޱ7R}_=YL7I}}#X[?J֒T.MOB}(bX^";}2XXQSMUE zpo\Xa{0R $ð4sOjgbh]u=]=)O}:[qf[J/it 9a,q~cmg%B-?HĆ);~ԃ<Uc( "adwg&n8+`Oݵ*N_6*8jrcT{ҏCo}{5QNVxJtF* 򐻒/E94mZ0 P5,)LuVD%T<,hPx|N TC%ӏj6Ah__0a 2p.exGap˺wjɖjʱ7IH\Ac;ผxӰÉ~0tQTeR6C=pH^yW†lfQ*j>r3`Ò7=ݳ iuo hzHKFqNijFF(t;t+Ø5,D뙏sV@^ÑTxpm;i[Cܜ֑zIn$p( a=Rv=( =_lSb(mIH~]tEʹſh~ғR>GwoBt&(cIW,mRC1prJ"ί݇r&G=rҜQkS#yhYJA|}z>|/z,X>}[]8lj(& =sAl/|F-L<"c%H!~"#oMȀɰLGQ CqGyylC24a~j`}P2Ku>&;I>aR VWNB/X>VFUpW'xӣP1,SZI(v`۰q;!-T>oa:>~2nhϨi?AU/֑kBod]4r.ꍖ?j$zbiEʋ8B>+*7Lt糘 o2;7z3pyA\#cI(94]T+)-6J6A%[B|4R?ɖh2 щ7?ct;^RE_I|hvÆ{azV5)Z={%|p`}P?^t0t^W~t  y2*x`ꂟZ'8=8 @&0oi9u62v1>22d{ vtM<2[ˍ eC#GU`@F:%vj\uZU^ƀ{R->%%4q+wRe8ub.w ynu..I]R"Y AFY[ C{ԡRkNUOl#x29Ryx(I :ݓwxEo㥙*$( 'dFke'e~`DǶe6qQE{:Y7'smW:ɴg ՝u"F<TP ć-m 9FJYK6ؐ 9gj8  rԳ8k{Vjm_ 91v]+Aum"gm)K~.p!lWĈ9/ M}ՙlAS-pIvüD:* A14= yy?f:y H0ܿ {+DvmUA"E&Y`G`j']W=ԞjR` Ǟ)(N71 GFG9Ƶd=]N5LlPX̖/8h/^٥XEUأ貧d 944+=RQw'! M4`#]u*6SYialk~d$(!𻀊\3-_u ~iNvY W!8اZ.[1"t،ʔe|z#˖:I})3螔R5#]}Kuv 5uvOxiUh?CsCEI1$Px<5l-Htfc&#c2O\' [;:.:Æ]m?u,&6gp&/!sC+Hwq DE<wsIk{pR`Hg5V(5hƺTW :%ϫֻ(?z$jk\{hZcDa>S/6b3Dȕ!֎B?i=[1'Z; F*wy"we"pfih۴];'Vído/mI$95PIrio l0KG@1|ݚ(FaȑBuE<ӷ?s ~4Vr7Km*{_ qMDLX+ F>Z('eç:O:$5(47|Mp7lLǹU%305ӻ)V2%bi 8% lBcY{5-kd{ Ɠ֩ܽ6JPV*D뛧 +İWaMi'1bEcqCj :.KK\<2yzVHP+un`ZY٘F斌 $L+ '^HƎVDJPKIfjdg\,?6K4+5I=j054-6.YAg}M an"FDJr/@Wȍ|ˋu$& H'k:;\$/bK`Y7}Bn̺;3 py'w@}dzM^9s=[ W25̍E޸o KTyf&q>_|%AN?Șf>4̝ x[;Casz&.9";>90X/p e˞6f)hRҏV9Љ-F %0C'rj& =[yzV#fϝ0H/B7|l}N3LMTY/l8fy. q/L/ء.tد똂x ʕpP(:4R">4B`;WjSѰ ^ke(fIt5&b"'nD}׉,%*´cH曊c"4~bsZUK<bJ<&ܪ!BX/8r_BEja}w97g܃OsՍIp鵞>>Yl;|+X/b8;D3樯 b)4Sn> cus+'7^_?+h]fez.}R :p|,.1Jעpʁ0ߵNXZd *ew;;K-[Ȍ+Ndx;#<-]cRe pnJ'_y^9 Wy[lOR<PMat75v8"Zw?/5 w~k.Iy@}6.O=0@k3J$2S8xPXtsvU)gŸ iLrOȖQOBQIB\XNXꜝGkȈpxG;Uxz!/PC*ԇ6w/#'}&Q->X M=,'J= k.oY+Cb+8uL zjBs=N#kHWwCd F"{9$( ]tw696[݈m Abg.Ξ_aj^5[DsXJRm|#LQ )5(p 92zOBQ:븄x:I'm[ݯsE~xI{*ÁuJ'-3LWpҫx~CkpD"F~#.Fܴ#KKѫ2H;BQ'rGҬF0òΕ\ o[u~DIͯ:޻#0yMD,5)<`PStrw,p\a?Vߺs: ~,7Nyy?Urf )g)o8L!pDucpI֩n;8oRnnk+wzW|!''26x2\M=lFY|nWB@ ~~z~obj)̌+ޯ _ `j6gjމlNM*BS8&lbDŵKݾ8(!?.E8-®^Fꎸ rYZ|V]2ӧh~'\8۹!ӚncoZ3Jÿ\n |0v@7v(=?q>yJ?3qPjÏu~B\AC~!S1[9+;2\*R~,uس<.zlG#i}X<~˺ n}@YD|o9i`Xj>933O=xh"'`)NC҇/o# IzkEs܂Gwgϱ˪-[6/ɹГυa"KqB/=3NѤh#A叩Xޙ\J|m=xsz'~-ՈW+ xqԪ~KƂmE\܀ 9lӠ56A+ϒ_L3Ѽ6rv$Y!?ouhۍ:\ /ŏn`i3A)3C]uc =Åc}Gn ~Kdz&' mkp8ݹA07Z׻n x,?TK _ 9b r_Auͱ:7xמfֽWE㣬Ad6G'Ĺ:AfZg*q?ٖb7(-?[-1= gTV O(WJce`ķ%\bɋtx34PJP8ط583*py-2YAD)0k8r$mz1'=Z Lp>,qО{tGk؝\n|p 4A[X.r]qa"]فȅKiXʧ$g-*MXm<(5{(^IZKbsBa 5 .sA&`u:{/%9FMgUϰ~  2.Ig,,v槥AJͫf,M+5D/x Țdt H(󲬬;ɮb'.uX4[nA|d9= DGq ?/O7-J^(i*oQǞtMV!Y QTܳ&E t$bm@ FNJǕW&YSԡ9;MDGby9hsV#[pnjC>mn_(ʖ7MY͚YTu,2"PbpTJ֘k\\RJ7O[oV <@AC@oA?uY{-^.y\8J*yӏ{WsVF%vN$96 z!x2K%X}ܕ?҇x>gW k@#݋N^ĴN!IYݎ+,ݴ}q[3->Bk ϩ#2B̽X' 4ŤkMkdJhʝQ '7{.FvKD"?8EkOeK)ߩ' 4 Kr0\]ЪQ_d@xv&_% A=m*>|ǵ\N^!Q:'M8|Xia% R#S^v8_c~؍E[%Wj<C( Sf /("T!7k7H{nEOAn +x{O`IڮYS>Jkl-32]x$o%|rnkqxG(F;qҵL;+ɉ̿u&_$k)y/'d"D4N:YRt@,@ZwKMst&y`+ U.l|+˺9p{l1T#1C‰@s=b$? qb>3'yAyK,1)(L@j!Z~#gˠp_nfr?Ɇg ОGNpPN?asjEXrq`q S t% pm$bnYKpq GŽ/E7!n|ڞW+ifcoO t*w_}L#yv^pȀ /Q;“čMAĝHA o^b%ל.Mj^Aztu?g$)ŵnե络79# Ve"#vla{qRH1qئ폖XRu:&mBf : (RdTc1Ə3L"d?AժُjIh2c Xgd6`A2 F! a;5G%L_ m..)GqM茑 H_ٜ6_ **i6ַfn[r Rf3IeыPuZ+Cq{ör{Q?{.g};rWM*gN C#cD]0WԀc*<}z3Y'H^7 =Q46E5J T݌{*Nı"r1΁sIlAض73$}~?<.[fCyP !Rhe< h&InC!XMݥ7e21lZ|'?&tspm$Մ.jI" Ì(x{D$Lb:'Š<5qŅ>)k6D/[Ri &rUWa*+Afmw Dh o8>XlJ oP[USg˾B|'eĦw!@V9#+ܩO@\eR0а"EJ(\يa=)Irvqbik(h )6^dPoc yj{yHxMUZC 2@ۿd_|嚠΋8v$,+ޙ1YJ50#C9i YX;z\ p XDo4 Ů젰|RؖpeWBӼRHGI-ē`  Q(BSĖr秊RQ;[OkU/V.‚괈yO9}TͶ>va~3Nc51㉐ HFXG#k3/PgыV K$`"1sﰬrw7m#o2t;pq hIƑo Fu /#Z/VBy5EZT1Oj V_g⠶}/4Ѷrt3=J0~Kx*Qja^TUp422 ybSy!!5WC<:Z|!4+x騀"^4-XUex CGŅMna00[(F|aPQ5s+bH zf[ptˮnO@e5!dLTH竹ȝŰg9hWl o{EK256{1bE0ܿRM痆~PZ!^rҋ̃|3b~RQePUY? q "j#v'{e~|+>l%GDQ Ft ^J̅L9D 1fR;jI 2"Ll( 8ȗ;C)5VxP|[|CWGc+C"^<n?._W_sp0V&C%H+eP4*q̕yk~N8Ό~)s=*C;vv\GE P)mیMY}X(Yp"α ^?a~ģ@ ?RD<%]f/|tq-WA߸fV#Wϙw1l8 e3z-Oe. a"Fz:)36y뿘9 07κO|X oWd`{q-L yN> [sCfYTm:{E|tEUv{3?FoGGHO0ydf0B |Mc=-K[9J,Ҵ4Y&z'ɐ ,_/76'Td%\EBh8A\L<;?)H TKTLb^_\+vmL'VgTnO6`{L6͎21ίJ0K9Cɹ=%2͚lt"%3'1Ԭĕ?S1 ;Uv3y舍3K3)^:m>+Vj|*]zR.`81@Q'^RHh_;0,R-˱ىAZ>1 bm*^j k1{K!. ;g6~ A^p@<'X)\B\P+DIŽ@:1.Jv5/ 2E01OmcN"#tU-G e*>W^wN_ֳ@yIT4m5:vռLT46S]rmzj.gH^j†S?vp yc} L'%:TR/ܫ yIrcw lEVWNI;ح\YyiX{D=ekt4sc>bRqbф6oR%kg|ʷq8T* Z64"s1"oRueB0xMmК+Y5 R g Aa}w6\yMEC0Inz|ħms53e]BYš`z,d2XcZ2/Lf@85: q{tBU.d;$Ձsv%%=%brC|%gnς֥t95?͘|xDѫ/L "!ݹχ}!-sfQal̒)_`qQ7qp\jvWuq2UJSt[Xa0`Lmv96"Ş rps/& yrEx?)46&)c.~ohHqL f|Viؔl |ݙPq;x5ne5)p1MCSxYF#%U{Pm޹֩ܜƬi 2]"kUvȲDAz^7/r/!0 tBy0Ĺ KmnM[ljWPp?B4SsMGVTZ {}q4ٵ-v |&dO4XTrD%*n6!4tDi8]ku)z8L} T̀u)|ysG:?RݘŴ&yH$GDk{o7)3&%2(-RB_˥!F7%;=-dtۺW]+!EhT]FX.$S5[MR3=6N21z |PHW(4+}4Lv^{f,,ifE(B',6*1\rKTRm@x-NNqh׆O3rheN/G;D`>bԥ_A~Qqj .onjy4SLzj 1p ya#n 89Vmҙi[̌_8u E2xyeNp_E8m @y=|arG1$8ڠc?sv q7r)ߟE}WA\H3ϵ!}ɲf@ibd,5|o>HD|[og0~YL Uʝ;/İASM *U _/3КۣOVAs h?sRձdYxC~ɯ/~5Qp.HeIȹ1E蔴4mtd mtvdO5JKN"$rpL9,8_x'hCjE6a\+j68goZ[0h%rnJY?A3-oe^gdæ=OSX9>j@[z7BڒBsz嵶RtX!8]rH^Nߑ1 fvvK}9ל7m;Uזn9˭<}vufҟs?4wҊ0({tYh'Kq ڛLC]^m\b>KMOYqoc 'IfSq$ܽ㤾ǺqE΀}\}7^!FZ@tHMĐDzJ',WK9ٔ#O=Bϱ}4I8qe8[ wLAC#bˤր E/5Gkrry\ c(Z^E; F}bY70ΑB†Yv7-N&KR'NJP6q Nhr^shnFw !6x22J eTS\DEfHqf{.fF+!4O4嗮Cdec0vWcΕb ,l2;+c(x/KG[pژj "d)kxU\xŖ Kg'Zq욠XJ-Cb7`>b eYg'jÛJDtr-X-S O1 t#vn Geq6pA5F䮱ߔ UF`>Z+'rx2'`CqAu.=So7RlKH- ( 5DP6xLn`H I5WgŽw2 XjjcQ:q<# ̟N`lgqV% v݈uV &.!]E4+1wCܰF +hf5Q꺎/mM 6}-r DŒ^O8ku^cz":"S{ LL߁v":ݰ|"F*S!oӳ\〫FKOV^OJ#BIL 4׫ZqĨѦ&.}%-qX"`4xh>̊, Z=1iE;si4 (IU9ҁcFD-<͝)?n l ^wL\֥-o,q |!N䱙ZM w(UN{eP)Zʈn>!#) 9b\:ռLօ"5e! &F(X>fxfP7u[g#AYc0ȌgPH6)Rcj-|]:jX]ri '|FW\|*BW\S7bq)Ueh };R5"XRyI9GF~ xX:*nfT9@&z0~f ?鐾uh@.) 3+F<GEVgvo82;PC=>H;s03v[MWfF nQ3 n+MeQdҽ'=jڛf0+~^6a]%$P_b2(x'H,qL0dZWIi_<^kt}7}vƎ]gH!]M pb<'Ό2eT],$OcR4zAtٛѻvx`"( [ow]9;~:<# (Ҭ7VS(}2U* 4 &0_CKz{ HQhSNR1M3bk(G[#}Q9D:qRkŦ6v:G%iͳv1Chpc soQNDLsv>Gfq2(S>sT[ \[ ЏM]Wt҂(TjM]Af<'HKWSB=<przSݻHe(%~GL$Dѣގ 97[?N-r` eӮX9 64iA,۵,\W>HR[ho;!}"gҽXF4NJiX5^џp"ÍiN$6{Mi/CjlVHD*(Ȑ?yXZ 5M}X]aDK,Odp?ޤQ 20mؽsn'D#FCg| MZU:/p[86" \_fk#؊WG0Yvyz_B=.PDVyѭ;nxӓ}4`FwBtPBcӒPxR-to:nsuqF %&7^+.)0#v q?H^Dc$U|)O'^򘡜s1䚰еA,j&Q!eXT1/LqY ɪ6Wq*W[/gs}/Ud |vdEmUW<~ ^/}eu7'ۀ '1% %b#uJpsl2Ghȵ.{_(tPg? /D|1 G&紤)peD<L=l ۲Q>K]FWa? H~<,$܄!j.㽚y?#PrXh!h(S ^YjZTuXG`/`vyn3$c+^؀p%Ѥm*<)- =_N1o93%_&T4н>#þ[_/p$|^ k/F%Gf.u!<,GzT;4AŅ{ \tQj { u#=.1:V_}uE'DGf= Ğ!䦿,b3ƊkQ.Ŏ#io'BN>!Ik$xbblK9㣲 ~_,Qot3<^e\L!;F& Žr"1*fxu skxW% yל-m??_giC?1K8]o%3 ڙ4;?چ*ݧydT(D-~Fc[ !TN@Jh5򼩮U|bh)!11 Y҄mD\5!8I >s-OS H3t$/6-9Qݰ~z(_DN, d@cYtg˾fHlyYsuX-~TY |'Zm;%ǀы u'EƵ%3aJNH!Z*'T72mwd.6HuP)xcO1;Jh(6\4{nAUn#lCU-ӹ{ ǁ#O"ցdtl{cJG% ]>;Nrͬ /б,&Y{F΄TS#*=BHt&>\naQ~&9 >ཷaEN?bHdFm5zX`+o`IB=^.Go.;fHI9sEl (я(9[y̔ e3iw q%\79:8+ߒCnPչC Hq0:麔tm^%ig١2r?rɊa'aQ 81;wSҖN ަίGݒFzj!ʨbq0l8]cK)$^7WUšjSD2r#J b]e@I4Xhk`pI_,;Jsno`- ⪠59}8e|a.xw6)74栥lVnj(f G~$8ZIP4J2fU7֥'n5C$& h󰡧|wFDbݝ "u25d!:`b(hmpޖf"(:*G/c|fk@n`ZªwݭHua\! &t6`DrHy5SBAr!:'v$-!g/Pb^0⽄N=zV&5JRe1l!^Bj+5uۭetO,#@s<)o=/,v sM6`̀v!E4:nݑX5 u⩍?1r ^˧|o |}2].m?5CECo#&s@"Td;JKd)$/sP5.=s11̜J ވjX4*et"\6:^Uohvx(k?8q꒫,3ZbSɔ>HҮ_jQdt&Cñ',u}yDžLsb}ܤcBY1+Ux1@ 8Ii?|"/ZwWhdP;M 9VːwsӠWIMOY."y`@!ˇs\Zw-,ȆТŨ(S^EEjeteē3SUA+bqݺ=ZSlx">5i|Tb0l^MQC45-׍(6꠆\,1^n'FaNWo/dE2EQh"eq÷ƈiT5H=6bXco2$؋ssh_\d#̋Qa(+26E[LBI"b NSLAm4q˾Մ{~/L=WW yZW&i!4X& ( *N/ ޛlh\ng&(.n 冉pTlTu\)ir슠=pdw̚ΔvӞi4|ފ?|2Y ^EX]6{av <)H&#Y=8*56pOGi~qo0]ݦͳ+6ĿT1+ji l}32Ƃ*_JdviB=OՏO?kK&tILӻ wRLj)"HChnaTD87%gt[cNB)>l{3pz>@+BTeLx@l] ( g! ' I >SU'k(2)!0qB\p``f~L6.J â[z㓺@Y <uc\ 7$?w' ")E

      |rϑ=XϼQE7"K2#'HHqP$F:?+Ӿ.ao-5M"{.N̔ې;uߵRv:p IQ<V伕i)+ִ=N(؞*sEnzlQRLWA ]nMB *-k M%AXC~c̀UvMk|4 j.&N\N38&#HJPq6JNPGLȂضx"8&dp/=4ڸEN2-`r];Jb)E暱I-Lx#ъfS'{ qwjzdk1v-(N B3#"c^/,:S)aj-5+CB@vW P]|ҊA D#G_aqUۚvO2//{2`v/qZ= K$\V$Ҁ 6u{~X2ޤf4Ed*u+iTZ;[.LuJ⁎1f bSDTJc-ii%4,_K3wW:DDu?%e 4T]Zj5lz-f9JZ¡e*<t lVwhQjP3Ȓܢ5a/Asq \1?]Y=ER}SieP ioZݣqdH fm1˥}QAJ7e(c]1q,c% ڄLU2/} G67L=tq,?^#υUw-ag gFSҚ lK EH rEАA1ejOpQ1]^N)WC!aѤ=cLtD od2Zc&M(ykfm8+k+(_Rؤ Y3y)'"wKƆJT ۝/v_VϭiP;CB('?͗r7Kj,9"$4q,])5>}.q=9@.iW]yNϯΛNMɩ,/&MZ0'æ LUEq/gTO+{"0iOy.,0.WKxUNtI,qav[K)E1 M φ\RR!P&"X10SDd1:eNTR3wV2C_.x w|xvb4:Iݹzkn߇Ш⇸u}X~|G }%l1q_}[J ON hAӬ3z[AQU )v|-5zecu /43 i7͟#BG~.!MdnlP{FsWEdcCH~ hJaךj5WrpwnHWs Ո}ot f\P 5~A_Է>;LzXy2(Tl=-ޜywv/>Ww` p1i' 5/SN/iNh^ƙ8+ %YqMͳ9әiX@rҀR(;F: >'Z |Bq.)κ%x壐ġ9!tjG`]k۽z"]C ZzgWO]֓w&y4|Dg˝e[NT6I!z{NC#{UH|$5"|"dS+YG̋Uxk׽٧lʹi*#v6et|"4 @dhQBq0FNź0Ơ5R_\RZ(_ X) n/);v%jR$AZ&/Jr)VAqBfL"f|ɐ_'?[o7 :ex`m#8(ߨd}tbdDhaW!6f*=Ap(!`26|wD-Q\g͢a2~ό.i:soT#G.]Oɽ~t>e1$ߍ5 8j|FLUq6瞡<:1S^In5Haܳ"FF sWس/&i\si[GvC^}Xjc -I$Tl9cD:dzb(:cP;7-m)f% l՜Glj纋ZѺB):wB`;IF9J- u=^~`Uԝ=eg'?Ľg>6ddlg+V\L(9O=;d3O*Рbn'|""1 [eպ8$NY !:٥$ Ч%ѿ$ō[pQevg ^a$p]@m CO[ʼdL>цӠOGZJ&AU07YU쐝ؔ|S%H6/Md VKFًh<z 2t2vqM4 `iέR|8`R-^U9A 3-nZ]r\L@cC)`Iő#b }QoaQy|"7m9feYP<2Eiڻ0ᵯf'3wȒ.S|"ÞuF\!s>?xZ2ZpEڡA誯ƋepEgFŁM!D ܍bK3NUd F|>Ze-MPDpww| d5 @C.@2YC"F {̖H|ABm_v/d{Z-n9O;sU@V_ t@Gw6,{ ͻ)]f[7͊}.A#NҧLy|B[՝ \]`t_ A=lW0 uYEyP)`O%l|%uB߈<`R0eS2'gyT>]`aMc\<qVvrbZRdyM2E68+KVB1/̡e`cT$apo@AtяEBk m~7K&@yv}Ahk9ZNSF 65rlKr<(p Ua!%^vQ"c9U&(Cܖtfau; ƋX.RY H{'z( ZS A–Zu$C2Xme 9VSvSq< p̣>ycVq6sʬo q(,es}\QG$PM.LV`1)j_M 3/N~y7Ri{cWZwJԲH=_yh*F `\+">do~+AG\׵ E_M$ZN!{RU 8ES'aNcye$%Du rJRL鷅㏟ULv&]duʶԾ+eV/ӅѻyIG; @;U")jq{rZji鏛>TۨXF_@lp|ͿwC+'@]zW٭(D@Sij_qEtZ?>{]Y g S<{m/,TWH>x ?Vz{z4PfC8c0pU0߉5q$,P9F@Y_oE$lB79fN]&l- 4V1]WG\wG 慧3it (%K =LdzSљS __thy}KNnp^pVpBY{( 6G#OHmj/xӲ~ ƛM9T.a*>@e2Y+{zMp`]ԾnJFj}f [#qAW/em-t&\6O= ҐF<* 3:eF.P1[uo{>eMUEi'T|Sw-^v[;4b XR™~lbUbg^cǸlT8m~ MWi{QkW]$lƤցor,v EΝ^_*h/85bz:nGNGƑW~I/ܛ]7|*${QS x\/B!4@>|X "Sה^'w:ҕ!ǙJfl8[2w4MqeScf.JPZF ہrS3"zL߉l sI$z,o;w1}(OΌ8۞P֛PtEKëS( cHv *Yb84GOVpσ^9HDz=4-ո(@,8oB–&hPxn\ E/޴d[ZTpqQlU܀sP%Ƌ{'Aou;Xɿ':yoZ.>♁Z4Ipov7Bm ^0f@B ;Ns.$8*|=cɏ3Bt ~+%#g.ޢni R7ut~ ۳V; YlORbN<YT/9:1ytj^Z4cˆtšޏY\,'{r1j" ^S$E>rʗWF׿lye{Z_/3; Nr}IX#d [L:e=#Kl8-je^LE-^WR58%ݻmkƇCB*,T6)@LW^R<] b+B UNaf ZV.'0/Imoi7-`X)gz= rȟ'NH(Gҡ1֜zZV,u%WoE87D]Ճ{1$EA9eu^ `Ƭ):!WK o6hAgщ|>kMv=NZ>K%fJK!]Yxq<."*,﷬G"=D1/VHջ鞅V;tiTS%ÐwI+y%x=uX Oٲ%nQXrd6~Rv tAYP!rk7}}/h,g8*,Jneq"s@Y{{^7AQ}$e-fv̠xvE 1T+4"ѲzW uDeT%4@75eP,RCƱ5 Z.\>А9PK>)&Gy|e<=OF*b9y|񕆟sVJSatdk#iM]#ʮ/N2 fR v,wxT(0=QdvY,+(Š7榯Np.|u6P'Qzs1rЈ&T])؜0g=V)\]1&d:{'k7V]$5(k~\]9J.nKW@/%!]:<YrA$zGkX; NPiHTsswLDarTNܨq^Xx_hhx"^} VL;^D1{#xT)yds1{d_8BS@ #wbYML&36F%\%Sc{*p7ַVo0ο^Xņǖ_F&L)У=ȓ-Edo7ójem~]pYgB;Kh ű\tKnAivhr-ٺ?ul4b,*L Ag4j0wϵ0{'Qe$J;G qP)"u0h#NC/}d7GH;A'-M:J;/%8vΓ3@WS/n독 $MܾTL ӪܢX2z8B@Y>"{^CTBDdDm>=ZpHFx߀ DGpCS}37:|'ԬfU!9p;'n' V-wZmYw3 WTJ47YAe`"x=Yaszg=6<#&"vڛ6QU_f*(+2*ĴOSz \ØBه "x&8J~c~fo5ւs2X3寎S05;{zr{Ob4'Ι*qH{Ac~ ge'e,J2"G^پɅ3zPR3C ݲH,]lGj^_1RZscTcƌ)#/ !DJ[&Qمu 3X`olD  KtSW۝g;A?|\ CZFaZ_wvwВeKmD?<7pUJm3qV30c_q1/g = ԀKY7fmr9SuN +1*WL,5+fRS#E`j>a7ȗ | BSzLLQrw>\q+YyauʋzyqBFև)J9Q[oyaY!skȌoc5fKش(X CкݎU-u}ck =]'!EBkqU> T\'MXei@ A j:k{ zwPnR3!Yk; ϩV(@P^T0/Z`nC @4wWEx_d[j(whhb8I O^ˋ@vي̯&U[921?,sr5/j%=528W'f^?Wr#醼^{.8Eam-F$ɊʙgڱU<@u8m5'mȎM듌Wn  KR.G4o뱣i1^?b;};+0XK-VA>!oȐ[>\ 3h@ˉd,G6|`er (\5ODBj fTvE)<9T'H#_Ѧ 5׍*L~xlDB3j;8܊}hjuPGF r=@8I--brpse36R.=r\HbۓC߬D+eyĥ4hEi6(s^LL1_D#M|6XVϥpIH &fgnIQ FJzR߉2CZFg[zA[ax85AL cs2%fEnz8z nwƋG0\ryiF]Ț b32!0RR }eؑ"1b˔rfɬ4ϱOPLQeKLVvTҥCJV.~iG4} CmΞ#$4S~K=qiA~ QN,d޽ig%Y6(YtmWN/+\R^CAՑKh= nm ^N%F;`_2(^\ܲ]VR;ey^ p03kFvzPZ. G'HœXLĴL€\jX:P\5c":z Dc[m.mUƲCl ``JD1 @1NyeuԲ]Һ啦rA +jQW[͠oyYZhC$~xwtLL E ܹ>7Y&ǹZE7PI(j0H/*oG +~[(n_yu&}>; <pKT{~\]Hf8'"lк(g}ܱy=hd0w s !nlޟ8OBY(n$N [8l$vokl(~ѱ)c~ R-J|  [7T7p$!)qӻECLz^'qxzcTZwGS֎k9P: X3Of{`!ȩKpkkcˆzEdR7p<>x<陧F¡B): t eEcȷ5JD.w)\'wT3Gxy\!uXayXif\B^J]e勣:YpM !NTzҗ :P˧Rp:ǡ]aLQ`ka笛|%[. ~GkngHTe1x=3oeP9ųQ`Xߩ Yv]eMdcʗ>>d$c331fTy 9UxL]"Qm׶p@uqڭ^BYNj*fm\uTh޸aA>U~ L:Kvodˊ6@HA v&*Z= ȃYn*#N3+6PM׵6Uo EW\/̸hzSM!MV#u\W@Ñ*7o%Q%%ԥ lꇂ7h>7_8S&jyY"vA..gvlZ!4!B~y06mPqQ n֊0[)4*2A(?&p/(*9 V:mi` /׹DQ{ .h00kfchO;1? JZ2^jM'؉3)[ a @d3z&hxz>E^u ^"wM.V7M*EZ4OT\ 0 <" f!yY5D8V#C6ͻ*zWk{C#.O ?K:?a9Nh0K쾩7|f1`>ܔV2X@PcޓgKK<2i;~o-:bLjf i j>j'aH;3Ⓠrͫ ZaZ˘X''졡+5\׫jh<2i aTA;hK?=}*؏iַe~cI`(ZmV[Z D ҭYήZ<[:SaB#f 7:P w*HG=y'w5ro TJ3ZrŃ2بL4DƲb ئ}W3jD☨p_ qvt- PS0gX\W-(.'@0ܽ.N}s'ʋCr gewA 2sh F۴Rgvī/2p η6~EIHֿ[Z5_QI aMlzB3 !fϝЖd 9j8 1Ҵjs\~. v7ጩ!KEךx-wg$&-Y$,XrwlzM>prWSG!]rZ\ kj+xPaY@A-lL̔g}P\(+!86z;09$ -s'U,' j&+&A0,xkl5LaӢ ]֯ ?CoJJ8 JjGŲ-u2\aaa >:>/9ޤR`wUrD㰏W?֑YSO߹  ?ǑcAbt"6EJ G ",K8j 54,A̐U TX -c"2|*قHԥp_=&Č6'XVKI r 7݉WC8$3O-2`+YIO41Mh2rrNɇ,"x s*♔.{mf҂_ faNrkXͬצ@K%E;CjSD-khw 0XFڣ^ЌHH,~J\MߠlߣaC;%"HRqcډBğ{ͳRX5Vr~A$-j3J(]訲㽷 KED/TtMg[C'EkL[ +)7sCv/d,) jf79R%q>p8b[gOywA4/ʸBiHOiiA 5c IMɟ{ ǷN` CQs4CиȺR]T7ܛӿ\0{T] w4JiU8:w-{`B{q: N=rO-/wI  itͪH'b$} MԩϚ56qqeܦifx%iSWdjcEq{$OƄw.[b7{_&[BؠZ~ySOJ_L$`Bn P1qr5G݆yFTw\`![JW?F&;N3CaN"C )V "̕-b u;8CaE 盌2= Gk`pzQ &L҃ʛͬӀ?Z74} 0.>Q4+NiұwӋ߁@0+lj5FWZU6}N> AC)J[֚as`yÔɤr^&}R7lU# RB7n{VXejտ= B0]G2l>&)Bl[/'F)i*yyp勅knfKaad\3YTN֝ ]-Ö{LxA ?< O[R$jr(WFW6l< j>UQ* :ٔ4{9*Y_᷊^hlM 7Sq{]UsnWI*O_Z !g04i4yxTY3Qf4KjhsyTa2rngVMP\ž㚩Ya%cv퇼Wmf:koφFjagƸn1!DžՖu-fWnnNPdRB1;o.LM=BJs@(X&JSDn%tԵ|~~9߲:Sv2#h98iNUyg& Fmw6wԟ ἕRݺh|~`c;Gw;Q~pNC0EK J dw#ipe6Q`X =`ʪG=tvGJ>Du*m>J^Y64q1W]u>  -fqHh}ʼÏJSwQS,2Tk.Zrd0VNn82I%V6oZΰ%ݝO5BVw+O zmԩYm > t~bKd\;dzJ {Q&L7R;z8YrtdlZ4ADL.(.tk;Yֵ\8fَFB^sI Cݯ(kȲz2̖n*™4Ŵo݌`^ yV.WYA04GnhRrB' '0xU Ɨm/xnYn*X -*3]FwvUt~J])oiے s2ld _O$dQҰyIVˊpGP~;pMX_e*$ 'K14xΈI^]k[`faE޻~H碲yQoMNq9u__Mym})r(6=|j=eK/5үJq "|y~ [}_{.3bT:`ߵP|Sє7^9ngevzиB2RE-¢ݵ4PKx1z&FnqvC (:)Ve֟*gWEu`tˍ)er68UG l"&?ɾHB{3 1h[QK4xg\-?R%/R{22(9^āD) &ԾNnlk߉D&GS|֕B:ܼuO,vǻ(g|bT#&ta3P=ART|xwv$n6kl[2'XH1T9wM&j Bo8ںAj?:ɨ'C/FoA6=@*3iĝr*cOΛ(2>1QDn9SWƛ7_*x? ׁ981ٮAX' 2*I+|gr|ۛt6h 1,0;inr9to1Rf0 3 V׏/No1X)z!'%T@ut =EIj #Z(P%/$$j wӦJ89)$ۥwHKߪKZ|fe(Mr]/҃ Ux bWX{Y-K$L%8V;!NS<] >M+nv1?\B:7`ztt5 q{ݪ! V Q*JAS.f@H /{@IJ _ӥˢңv,h0xoEI%T'5@u;`t֝MEkhQW.K~K{GLΓźz4\X3Y+)x!Yy_z ('Y[H5zHq7OAk񑴊jwN 7>mWwiwZSh| `jN ]C/ nmQ*K'ck28MZfǖN+ڻ<|r {"gd#xQaKӮ<9%sW/ɉA\z^Y/;˟ͽ\3FBh'$nK%mH%4#1 5 嵰EEгnV:b8T"^C/pӚ?7(7s<(eo,qȴ'#/A\/7V;͗;"N(=qCG@|BrEyPEE=}VhnWf!Izx|Po ɯcPnMj.U_9ں; Y@1b6尐[ sjǡKAYWSL;ٕFde95rilB> 3pZ0,w T;nc9.Ϯ ؙKPQt7F#4%[_ԇ)ZenБjj< [!&U1^x<0$Ia!fF8h{8O;V, lwWa\\u|UFcB;B1ؓeަR?N`s̽DД-- e%'btDTu+vpZ_Zy.+'H!d\Uv{M\yFE31V>ߦs6_{L$1gm{g#U٢4-WD؋‘phQ-p <)sw^/먮΍Jw+MlChRUkW$A;@8-@&2]رfnHCM]EØfJ\'׎)ձ_&-JB2C ^nL"[g0,-'@߇ykoy-Or C8 *Rmy{U` g)ƴQDC}җNZ!S`m◂?^*R6ZGkC:A.v0tE|S!#Wz'86(˂R޹,5i9P[zL_:*EO0 > q 9ϢUo@$E10l4?HSk` ו-uwV˯]uQ1¤?*zdcnk.%ʄ7@.oԭD2vv"\ch?\j0MTWU5JHNkAz1iQK3q$ʌ!0̦➒Pk7_'-X"O)*9ݻỢ|"Cm.@`$_V#4ˆ|=߷aLD5)?ӴԒ+/DgbSW9ugyMӀ 8%L9GwkW>r; u &Fͦݺ4%eRP^IJg:8m]=VG'*6))q aZ0fLp!9i3Ͳddf+5D`08]۬kwHxm#Q%jsn> B Gp^xHT4}n7.ll>>?UO̳}U p;幬$4[4`WAҊQq63!$GO(ȹ`L)x -ي Fiy٢'zAs $8L`N~ȸgmc671`tí[MUpqa'׼8 gIt9h0; B]oa A3F뵫j$QUv_3 m(q狲%&PӖDq9-ge^`֢]u(qwҿ״/> {yoЋۅP& F#MCZ+'TX3ɌXjƐG~K0GnsfK6A3{&V?XNbB}^˾bVe3jq`k_GɛJy@!0\?׶r77:sM?/Z d,/{Ku^hYq{KK[uXW[4=Ƶ**I&w6v]./T23+ί۲OWx`h;mi?Ad*O#2 ڱX7_OOw Թq9iktrOEL4Datb2Ytļj3"6&n%pȞBQi%$B%&KWnvSij;n~F~n<[-'@.tNH'ќd}~u%-2w:VYquBYDŶfRa=+n2HvT9&,%9^*Ƃ&xI.Wտ M n~K^Q}˄_PL=6ƾ{es^\ZL!ޝ t{">B6q$ң͎*<4A4HޒkJqziO?4tpn~i,Y 74D!uH} ~jhJ_kvG>e,M/]!fAC|.0BG58o8,O6L .+e]DpG?&Ou8ͬUZ|I ڗepsĜlatƭ 2eY]埣HpU\VaÔ,;5i$ X eD<{<̈́vl×ۘ8M6xNd.&Wr\ dLaLDoHX4ypiÙ͇U >LT)6nmƋ&EHgF0EHmhvnZUuʐK):p8~l Vh*Hi$`@CW̳0?&Qr,ǐ8=0v}ǑSnƈ0od hgcAg~XɈCÖ;Ь̂"ɍps<ڹznN0R>(jBORvŗW_fR;o)2/C1 w=:I6vf8 L,Btj|cP9+% pk o9:[1&񗋋ywy}9wF8"? +< Q kdGG9:~{GR䓶s/Dw81YQd}*1,@cNIi7^̞G'E45$SΘ\OZ*byA wOCS(x ^-J yz<)!@. (=4ɶh4*hRAψp[ `EOMF4/LFhӐ,D0H`na]:i1)!WS:9=ΐWc&'}1S1@OZ)}sUw8ijgX9Ce.bgdHSȐyvY4GvOJmԊc ]i&YFEǻܳz4X(ܟ3Հqډ$#\WF\oL'iG:1(C/ 8;oRip9ffa ^&nlRm Al5kj*i5IΠ =1vGj* }bx/I[Ll{dJG峟2@~w%_8ݵO\+ƽ,o yq>1>=u꙱E9EΣK6|E L;'O0hU,ncXH`L5PfO!9>7E_Ryzqhh#$`JLŒKDqέh 旊7rN.DD^ hrɮs(y ^; ! ׺5d ~|Ѓyd LuV@'h@g׮`bH8^^edU-d$8.e~O4h qvgvYT˘7cjS zvHltO?B%A2$yw0\^E?v\0wo0"ڬ#9fPSJXc`곬_t3[RPY7Tְ?2;g#.Un~plHjMDxiMda0 mҞ9.^9ht1=B`G$=338_rh} 6c8U4i1qI$! ljaa2LLNF1`3͓4;9 b ܏_uwغW{~an2\d@PZCPPomYKl$t v lVgvٙML"7JwwLeI1QF,b<9wPdԛIb;0$Q cp '^ 7jVli t5AP Pt>ٹmגIӵGKK3j8C H0.\zʉ>{w6: ͐HR 芟[vݼB:.%1~E+?`='%gJC}I>`v[,XG5 wGաxt͆kNzA\i%ph'%uP;}ԕrsL _ů5X_5#roj{m'DakC ^o˴_gT?Hس E o0,HUp-I계h0 L {pۤ=ɘA`0AnIp+d_JWi3VE[ҳ(EN%d!ђm4y͈}kGsltz^(Q~vU^:ƨoIl@frIB`6݋RҼWƌbTӹvV\:KpryFl<◚eƄgA#[:uo +N$<^X%>^ „H_ʼnZC^)]/@]BA$> ~B ^8񩟼;vY2@ n>1rndU./t_6}N7xHP#rV~/Xɀ&4oawBT+3I\ǣe,KbF78?*Qpi4$ &L~ъxǂ[T &aUk0q7NIyAlȈoj^R:c3_v*_R.>L{W0Le+^"*y:J^J'ڣ @Iq/`n9l ^fAG6~C<Z]z:zJ NOLJ;'͜Qdg@9]ӻ,|bHFބ+o\s vI=u{@WѼ9 uHGuZtű/Ϝ&֞FR/U@"n,q`L᯽I5xƾsNMx)}Qi»LӱT\J, hݺvX.HGz~I[حHE F7Zem߂Cz,HP"SR@h=A 2/5i5d?E5:J=Jt ŖֺW5=2""u(y,H'>w=vNG(gxC}F)tEPyMbн&tڅZaWJM\ЦI>ѝխs6Ĭa׉(H@5exb(y2UV 9aZ%J>EB<j]o l5et'^pBP'(!1V^-D,0]%!Oy\(rr4ǖ :E"ffrtit|hWX!>YxN[2PdXuԏוC/ĥ!qE iphjP$a.9ʁ?")"B,@D}N۾C2Utf;cVP{xʭ16O骱N*Arqڽt+nu,tDPSi@–arzZg1eT~qe)SrTmK ]bYo eCobvB\ 2SOqMo |f?8WƲ\?$og3w8tO_0DT%>@v|Aފw{F)+% TgvZ[ SEhdB*&&f Q@SSG.ՀwHcU#3gL"n C`Q{m6"鳰X:Ύvv?$*)%D}:(kqc49"5P?\&Ǩo DȤiVV^3RQ֢٩r&×؄Q~j{L$m7TVqܘm5` hBiECub'@2|S!_ƻ^ 'b wR1Pcͨc1HSLRkRj8;^ Hw/)ZufI"M#mQ=utILƆr/_∁97FoG S]![0])}޹Ρ4~`Wax[}68o`]e"~B3^3ifrf렠vB#-"yRHNf[>DOcgDu3 j2K^M܇;tGŕH[>y"qI2Lhd% 6\eGi7.T5&Q g=S;Y:E!>#u-'((?g\$ڡn[*fn BsasA,ڝgy*HcVd&m}-7|*{j|:[%LAI=gAow(߂JAr|Cze%uDT%+~)FIzӹF+o- GzZ [2y-xD.wƢgBXLx\)?hļau+Z@J(;Vm+'eSWR|ߋX@LCR6POn@{K}\j"8 [|ݨ<7mUk,ϖzÞAἅ.v vV:K!RP;SA=\bd)mix b̓qMbSqlKHVB-ضhf=T]C*A dFxf4C~Y˩0HyKkX +eX͈uҚ&.p[\Z]}nu2D!ꕘ b )0.35^#2,$zݺ"^,AQg旀F(õR$QWSOSg,8ȿ9%ϸ`kyY$Jn~YoD MƵ,;镕*5#,G VJ̈ +H`OECf1f(XNfӃOll}?ie*A{\v:4HJfȫe/ JcvfW"v3ٵᕥ㔶}ɶ1e.1WҟO0qvՏSb5￈,ˋeR!:q3{T盺]Vs;LjnJLdfd; a$+צqTMo?pGR*X4y>,-. Y3F:d+h%o-Tf r-̤l[$G-Gř^]̄҄Xe/Xzt=$+3GP#x>0MG>Key,{#턬$[Lks?ů3d1.4iY>$ >t\zB8Ƕqֳ]> ]^5JKT.꥕H4Ԗi Ym*Wͩ$`" ,i,^i Y^7a܏̏%!U<霷?˱|zg3 D18vþ>Zg\) xmF3:@@lqWv×c IZI2M wsf.Q2e(,T`>l@*MNўIYX~v"xd?}]:!Uq+.!>a٘ɏ9Oedq^qQ%p dg`9~-eT",~Kl M`4DP|+Iʹ[ o`?h{P sBD 9?Цm#ͫi"𽔩TrDsDS} T- {1ZF'h5`A4u,O=wLӛaC%Z\^w:[ȃEN\oMNȞ73r'rqNN_@M8A[V}_ d=Cc_Vzz}x%weƜ^!shʉ*Yaag.]Ip9I\=QdD"6 7& "(Uԫ5LZ2\嘯QQ6PʪZ=ʒA[{׫#TQ5ځs0hqՂMR$LZyTXf7,36%πk'5vvBN3 fuȔje"TfnOZO%(DqOA"1@gdzMDY=HJE{*m3f_<&$PjY;}2%EEoVzgif:) }̓Ӆ(+R tWrb̈́@A^Z^sSvyHJ-0qW/JrmL433&Gf>KbsPUu=`ʃ/+hZM8 wmt2u0:I̾rCT-C ugk̘3*\g^Offs{1?ReujbjbbrNdC"-3-{ng/62Ki=rx`| i|N汶!SK'8Ѕt阰yMĆok9 28bc]["4FD<뇇~ YwojԲ$}@9 ap^5S]%W< Ċ4?W ;wV*lW~ 1ξWRi1c X#֣v~>BO¹dCwD=106mBoQt9>csj ?=J>T6$+3bZ驚)'VrM0X'L{|J gK!vYMx^LfRw4xI-+[h;J( \ǿ.-  V`C quЬ 00y"~9iŻ }Pr( B;> STZKaTD|( p -,tZ.i+9z û?'Eh %F:EgIГULfMu/JFs>6wb߻6_;k{b~3^zqPR8 :& AjNe?X?7g>V];yX.df(+F_x^{q@XF@[k$7`T /m p?)# L75%)_ͅ@%-~fy ћ̴m\BΘoվ(θX ~ap,bEe;;=`a'mz}<>I:'Nwe^ Uҳ8VM,LA=i~߄]?@ Ծ؀S?$|io렱#{ _^U}XE)EQ7"i55mG?AUw2NH9ZP Y§+U]  f! v;quYZ_'R=a.3'h: p"sb%c-^,= K[&zT"ha>)fYzh`5{~ Me:K!,c$ֈC'[*U?h GKNwI&f;RK5id\l8YhbI&^}yoJѩ(!8]:*lY% JZV#u ns?nW8l"{i C-#Kh>p@>7tDsqȐ\zXX[Aœ);uڰ6U[-d髆)<NgָkF&k=ƼԐ#K3dZOz޸:~/ F+gʋ O8:MVA;"ȱ^7(MYpv2s|eh ' JP%jlY#4)K;(={=Eь+Q .swY=HU"/Io?cjKFh;JEϤ"-;GG p|` acE l6R]^x{% ן>$y2pkGxX ET?L}{P]oJ5?y_[-%UC;tXq*773;#y]4Y?&U?)m顏?4 `OUz5";or% "I 0!>TӴ=Z(zܸrgq*Nَ֤{wtsn?Ɏc$~GD$m*Dz\@^2ԟ5X;x'Kab;ς bbR;#aXw/ Q RSG|,5ˌoE J#X{M zwSu^Q#*>E-QޥqܞD_?qOVty< FI#1c/iEry;֑u:4 b o?`V9VsjEj8IvCȸ#FN[']`Z0CIaiܔg,/jθUox5%`Я#dq\39)`%[$gO@edq8a<C-frtX8%Mw-YpȪٍ]_R6)}w.) 0T%OS|`fI!8kU}`<1Of#(r[u>NPg@ʉ<#J4Rjo6WIχ$ jKpq_xP!G_CU[Ę2ϥb^ 7(.ϼ4ia' ?t/J!X^+S2 uD'1:rUD(׿μ̲ݦ)3* )I٘nf?gHlVJ@솫Dr D)}}U6 =fl.JS-nMӰ4ĖM|qp9;JKW/P(!kh#^9 BҶJQ4+@ .1e9}y캥85 l$Dmٔі:S.ی+QKE83sb[ED ZTy9;6{8RB6Sʧ@d:I(Bs@#s@d#1M[W:Hqs'CՁQ7]{ w&nN[ץ{wF% *Z)>H;S.0.@ѡT(3vm ww)ib+ti2VXKCd;Zr䖬6E}`HBXr~WBNdkT8?A%L2Yrf` Og&biP7KБɄ^ g *UsYM{aqWLJ>ݢOi$Q p"E0A g/WȁVfMɦ/UoP\.,5p_ceiLcr\]:܃yc45R' 4, _[>4fX3z`@6 R |>h|q %:އ[Zb$ Z)+-;.P\T*gwa8C AxyvOFu%1-a>Z>DyZ~| i DVmuHbP7?Er'[R )Z\d>^1ZW0 ¿nץ\aQqsyaAǿ<(¶vGǝBAk !\!?FMvrJ=4EkŢP Wp'4Y^cTcKBm'Ff)|9b%xf0VgaXUX 6x0D6SN}ίshxI4ja A@7()2uID䏇#B9 (6}$kBVJ@ zJ8=(ՖSC%d,vCXRQzŵ` Km[5@NYձ}͛ o댒%uM^'bL$"r&!O8%5ʪH/YO :#0LFKUU9~̾m3Տ Z[zIkl=KO4[Q;o@xl`⳯a0/T ]USa"'sO1 ٤N2M kR뽛ݵ(ppEp1z 뺞5 Lѯ>Z&PW2aĜ%~OR:YX*%UESc Ak<:!\]Ȋ@S { d5"|_Ԑ7e]_}E7جWy' 3M@Tݕ.n\(]s:bQJ ܍9Iv:|PK&sHR68kz=AFw{*+¦Vˌcy]U!8U:;ӎÖ6.s /ȗ- ,}, 2ޗ'`n75W?`/O~MCSSܡYxiգ|~|7zWTQJ9⇋)tm\:P}Bs8g+Jty @n͌E]Ϟz_9mnA {Wp-NPjϺ1'!)Sܟb#n̔U?V6T җ`~gikKKvk([!l~Svcmhowp^i؛ĀaUJ!pEfTt.O 19EaG2ݙSAތmh j[aݘnjU2" U/AL|IqUK^4#L ȷ'vk8{[/:NSv )] F'}SCWu|L2h<\(Uk34O ^]70uY=#ߥf4gG$'s2W`T!ąyו.~ۦǍ+^$yK&H>Oϙh~57Wdq1)F99FtҙHv H~ɀ(vn!aGIL2u`ςN@,.Ҍ\D &IG]`U ~ G<ihPY+c 8uGā9huz*܇KNxM,\-eL?@ĪR gdk;± _6ۨڸ娝@R4]DͩfؼfÎ'|ri# @k2ï /[,k=~-bb})u8+a["aE*M%s@z}ki2&vq [}}GzTl_H#o & _ |E^;SmqX^E[,M}TЛ=b/Կ\2FPaRh(a7Ĉـt5 <#[ŷ='' LGׯk@x c 2}f4#Uʌz;qɀ u?Sv*` ihP˟x9@av0WX2>>`#9sYɓjsZ89Qm٨#/`$a㸔=HC+=j'MZUiYǰ,U!C pªd"%n5ƅUf'ueo#WJMG=#+4Ŀ HR8 %H0 ,T[dw}b@ 7+B ,Ź*2N)ڶЛtFFx#MXJG1dT7Y]~&㈗EOL+'GUY}ir=0nU?+{Xψ0aQJgb>Wp?6C,6R` xW./KVGB.VL ㏾gg2 {\ px*83;vՋ!{ٳ[GT%?>mjK]>hS6sS֋JkFӃ, 9\j^7ei#dG F׈gEF=Nzd{&!FĐuv;bCU |T \(۪a߇VE4sF aM N|f62{ g%ju2N_CXRXTsn^wd_D5=iJh"Mc? #c*\Tij:~ cG`x; @]"&̺O#Ȃ紜~%[1d gOV2勻=נAW upF=My y%/ !vWPty,Gq$a_0܏*rL1On\)(E LMe5(s&HlɩBJ 5N GU< r+1V|`>P^P L`/&Q^I/Ʒv<\;r#Dcμ8~N`!2 X?ϦC?ou)& *hgBqF'`j-LaZ,s(ޠdWBsv HT$kHHGfMydx}*Kne҈ ,!1dߎJ+~As'b"ƀtY\Z+k ӒnixώA͖bnQ]měZ~@y}ҍZQ x4K,]LZfl12p|zG3:k޿x*NM#~\#([Ƨd7?zpKb^A4)w'̮ trt9ߪr'݊ͪ1 fѣ~h@%[(GEqX%"mriK !!N肊?hf4: teY8g![$<"L@otq9:Yi:ѷL'r*OhsWpC۸R*?tg-d]@֓߸lMHq7,(__jzG`?~(_Lpf,0QjnTߐfV񒚌&`(sSDQN?(b/ů&B*Zޭz!*]!p]C#pr(nIX&ga/xZ{ /r=x-J%Ɨf21bAahIxslܫg0M {PnBx! %뵰B8~eK=Ƃ0 qn'&>OI5:iiLH@~XK. 2Љ`]kL`#/w@=Sby'7vE4fg 0bȏ}&Fb_,jtH/!{޾^-hpV/iVsi;_<ӪN/zN4{n=OWJ6y*IDo*YelόZRp&0 #X`2PfF@}Nq)~sio(x'#5|tSi;.*B%N}h9쁛9\zUuzPBK2VxS#Wح!ǮQ>(s&5d7b ag} XKٙ)saT<'zm/Pٮr`:OLM? lƶH Ŋ!Ǝ8P_GblHٰ-B۟[ʭ Dy9B hj y?T/tqL}E8ҨN =@1eY{DU+a#9-C 2LdA,*&ؿxTS"tUBT#ai`"4Ķk1]"+LhrC^h7\26p"_va%5j[7@$8m+Ya|M?3OR¤R/$=#Et_F+2 =kaA{Kg4T!Xc_Á:@@!G,pX 5?ukyRG.uMciJ[8^IQ~an7%XS$e\?_@Ry}&n!3TqP_y 5x;2!k *DlMFN*"'ǒ̗E6֏=6b8y>q<78wшfw=ϴK|i"ce ]+~*F⤢.|!7!jM- u;*3`'C|&EwR)8^ɓa FimjȟF7 /@Z42t~ 9L_T<>r2&o:f |ǟ>M#j&L8}Ž 3<0;͏mG!Qyld}OEȶ|\>Y8ȧ+[{g#({گ7T"d(-e\ۖvbD<C#Bтe/RBMGPO̒~ڟ]zmEy)}9]PԓWx٣Bb*l_:e@ٽV Y࿗Z![`7ӫѱ\Q 5LV÷)"Y1+wNȖ--sE MB /(Z@` 3Ǥ Z K=nq.zKFq%kK։_5EP e0\9sloK{G18mZg%K:Z/B. 3cהz:s}oR39Dʻ L'fT !H 촋@^G8/ԑ- m+V3vUuӰ3xz%fY |) 2ڋS4.ݞN?ihINzj3r!CУxO + &ާCjJ@#<'=Cv 6^{ Sz1:gp'Z^ט!nne3(ZvwhoUQ_?E6;[jkW1߆{s|J>SDLuevuX/:T_D6yczp3+JܴRi2~Q yC9[s,@#xB$5nݚ؄=-0u7,[rJxADyZGBgCM[v)2'4f?v2F#ݩƱf/壟!M Ghɞd̿}>n"WN >_xkgxi@(c+^U.}X3>:\K燏[(;K | Kl0ߛ+49{l{M"jךhy9ʐfrVNΗ~ԼZ(m-}%Os$'({]nCF $vIwS]Zj&\M04BUIs}RE;5g"߫˜tZ*@ɼ^s&Z;rg)Kpd6Dد_j\A]kXD"p5u|e+@~x_G v)Vs0!% iYw-R'ƂdDHmB/,°MOmd}).v=;}kD|1o⼡H˻S*VKkF֖|zOQyL*&?ƉK qXXMK] .ܨJwm5S'%b˴ͤPoT?گ}sl2 ^F p#[?^oGB0RXQ1D^ͱXć&CU C3H<݄*]k XBv:Ă}4It7+U.:XM$ mJ}R.os [ZC)pʉeF֕jq^>&lZސe#jwVhB? EѬp VY!Ƌ#)ZM"^p6tt6ws`c.6+ݕ@Ő1p@{y QV:nLI=%;1A1M=@`֏1U"a!8_i⾪5=654 .^ q3r- ^dG?} x&S4X3]AgJM@iNāXECLZXژFWu[@0#h"(gjp ۪@Jφ 4P{$k<;ed[kRM_ь%S&0fHK4K@Mo#vڰ n YJ().bL1'm(,QN0 ]P_.iAh{ g};Z'X"M- zʾy?Ǜ% vʢ+}p(Ms˦M&z2:S;/ tLm*z|7-hvt׆)# ZefuzDc>Ours-Z?{JTdG'洃ԯKd6,16!Ld<|4aUv]3HkgbQF^ް]eF QÏU˭[Vn_m0 L30=h~/lJkذM8OY0)J/6br J[yG&MESX06=&A+ 4[bim hj=.߫:QY!-3%L=kdqۈ(DFٛN rcX'! .uC*K059."Lcq'],A #Knj: Jl&N^B&;:7_)"a(LA9X1dV&8R B#3Ž<Y`{cʁw`& 4Cc#*#v~sGJg^ЇٍZ=!a'X?ڿFȋœw!KH쬗prّ̊ǥ5_ĭOjj:Z5eWG*é钆s⋽6{'n'l尙(2t3o"]vW~lv׽ e1n`PE08&)iicCyʋA=o!;R܁s#Xhv76gqjZ)7m2e8ɫCxyx#3݈w]J ݢxwqyc5!?;60"g(D?XoM*:z(̛TX7}v+i_DBSp$&y< ^dKx?#2ۮ8ČN3 dv9ԯR@mo툷 E$A@EN?uxbfI=B7q?N<+ۈgg68< J方X&0]ؠ[Iglpk]:Xp㚭Ӿʹ#\`m -zH [aA~w9cp-T ΧC{/͕1&srwiO*nZ:n[Nߺ&q$61-"=S\b@ҷsNį;Ϊ%$6%˹1#nj"/xf̒C! }A22N{H{/]C=@{.?^N_$q@YuSL  k0l”xIL"bj׸> uP/r:43M(CI_Drq[S=4fiOy^@v5)8IV ڳ kͳPH7 Թ{w:~5+44?M1%j4c Oe;S"7Ԯ")^y595ksz${†u8_X<8;q lY7.'5rG72&9g, nVD|u;kWF$'uW[ B@#K))GimDo6T"WY6֮۽^,v @0ȁnѺ3@뇓_oBߪ izɲ z=GB5V KP^b sT`6:CSDJ7d>Ysa͵FCu>kRd`%o"X^zdzpsqlf=٣Tؾ??n׾b FoUyꇄ(ĵ=&5ʳ1Ѵ@o3 w}G|9.\x6 j4`~82@% #yku5WG'6Ow9uZʺ!?\_7o: YӘt#*M:}X.bÊi{m5bi1j36D쩖 Pf9lЃ;+ϖ+#3/HXR<:V(o|/wK =Xܕ%jd_HNk>Hi]Nؗ m7I{ɝrH'&?4ON[;K+)ij[cvy\K(  }=򑝻v= <|'_K|)`V';k"=9Q|vlWR۶|)%mPE#,C _erVE8j>@'ia'/=ZΆ78&SA\݀0M?= ΅>X\ۭb;OT3 g\ʐU]<itSvj?j)h"[C.踶{uXRwXcy61H剀*[z7%d6ؤ$ ۓRfoΕZWZ 67\ee͌>PB[wz?׏/<.9Z}z!m m;&wn6vTi?[(``!iwZýq.OhPXCoX$=Ň>̹DGc$8g f69T3t$5{plq꘥r<.&l#!eNH0~nbF9#J/p> v _$rMzÓΑ13]cFٝ.U5^O(Qb(=`_)Qɑ+r.EKceFUYjlVBHyh."MLYH!Ɔ#]VG:D:A_0v ЄG'JW6ȡkV ynuPٱP㧒qQ-z'$koSBOxCmÕwu'hxϾk$ÅW{ނmCVQf=5W%Ln !&n+jq`V`ͼR卩v7ab[eyC3l%/ 'yB|=Qj5K9f8 ۟7.U$ (}z:e4K4}Y<8ڎ*T+6d;Qfk|99f BgEeB7>0L& A#fU):n/SVFf Y]ImlfW;zΟi|Kh|F3LX_]2'xʯsX}? WhBxfp,;䄇7C#I-p{mYEn๓Y!z[#B-/!d?3Vgy>"[ 7" LоB U:YZ,V9SV6r9 uebljfN\6C_4w͵_iM|j$|4hg⠥ |Vbs }L$6~Ⅹ :lE0$wb!E]_Kd\je,U8Oǯ\OP Ï: MrЋpsIpcqzWn/eT A?~wqP~=b̻1!T3 {e~ G9&VgP3P" R6할y2_gVjsXOSa%XY4ջ6]i뢏giсl' "D%̿o0{8ީUm'6۹fMFnTT'A&iJT2co9x1(a (Ბ`!)}fxhskղ3KۯN64X:fJ Ӡ<|+XjQkcZT= KW?t ڟcܐ,L0wTP ixE P0}並9{xJٯ!rl泰\mV.Y1`~Fg)]ʃ3>h5+(GN齓]Qsp3İ9/<sۄ[L6-%D HwHRwq# Xg,EF0P_ tP e9!OGnЁUH-U=hCSԲ,wmTTTB&or4ڻy6d &iƻ3s֫b} rz)4W9x^hK5n.JZfrUC̒GOiQ\A5'Kƃ{pn*dJ F4A)A:H]w>6xH+SPL|?nxRԢ!=S1<@ZG&򿈑xH}YQgNy;mҜ <(dY !=pmctq`t:ܞMj $㝢I"$7sm/촙4H"Q4 >t_2]habt!%{Rm"6YIq*qEaeϻ/S_sԿ(`@t$ԓM0ԜkEHxy2QUmS))VrrȨ6H{UB_f֮?kbo!چV4ֲgVp-fcR怘EJEPv_9}M$gב1 ܚ_ij!RWy;S!kP:-u3".g8y.e`',' $SǕʣm0{z#c..iZʵ-]=@ځ%0K, d ;|ѱ$LP쟶@˯bR7DdR8%/ŭbV: LT; 9[ܶCSkXj$pXiqUƫ],[v\}VgZ_B)N>` ]Ԕ''ӗR}Y;s:hhǥ02]CŰ˸lm>Ul~Z+C'*ΫGPzS.A] "5͓CSZMoO4ʷ>NQ &Yt;P?2E$if5v3ޗqMe~o$8./efJn4b_Z@T'!KQ+Kz(~/C'j]pa?Vk<< aƞATj\+ܓ*T:sLY*G&ͷ<*o1JiWG@v܂!,@..EL.j7o\A5yo"໥! h|)ʎQqQx_H8+bSI7Az0]rwTC+۵0'zfg!5ĈW J zΰ6 383# +lp@NOv%5N~ I* S:>0qkzoorض렦P%7t?;zM d®Glxx5*pjOw#0W!/Tƨˆߏ8tTp+pd+bB:$>h3mCo<]<=N/TFM'j9w6|>Q_j I)F˟ !؆@V(9ȦT5scgbnاSE<O";YDSL "pU`ԋ 9k9ɣyC}xY:k߉ȝtZ|tW? (~Jqǡd"K*ې_2Nm\2!vy~@ncT!mnjF7(Jr^ OYC;:i)ѡWzknl`~*93N=#yu'MmNR|! 6/_1ZPoltD֯`[O}:.΅O>d-^C+n§{ģ.xJJQ$2Gn)O>eLqXR^o]W&C*ߚSq H EwBCUAY{ŮPpy\{h }lB^`>NāfT7(69qVmT}-7?`[YRDVH1Acim`q??8GiO<i<eˤ86}*?Ƹ}'G?mPꇃJV"+tuw2X+i +jP 0U!ǿQ\t$)ZJsoEfdMJ?ΡjSϚ2flj;rw5K-Tl:7)G& KPq#X܍}n/_izs'87qc.lj'3,0- vR!nћFX4! Kgd/J=G&xQe^Fx^)RwRw-eG{-6}TxY@fYF|5L)uekse}øyH^ow}o%_iaQ$'}Dc!a03|52VF}0_Q< U3*'s(3n{*8 TR!5ڎjPJ审T\t%$0J0X+]\@7tc="epRxHa\=pG~=YqZWhaI3iSwc6 VpMp.0s[<cz1N &7hq59۱fY5? Տ{E9@$d[sQ؞`9wӹB'77s͚Z^6A7:( cԛ+!G\o g%64͒TSmm  -gD>kWȎQmɺL[4{:Us*тm1j 4YLf q MIq_&CW4N՗ *s1.tDH|ރT U]Rm>o}?@(wҠkn]K؅r[|iWD1Jsٱ,y/mp"69/#hl #j12=߮m0x^|.Qe "C@W5/ӈ̪/-j&nDtr  jT&z"O^'hٛhXt;!-5R!1ԘZOBW'lP,5n&IvdS<ɩ8p{͎.<(ldF %e!pաN"čM&#|#~0;c^Dk'N\iK(ʜiO~?4Gg/ Ԧ) r87r+SŖj2Lַn(a޺['^}1㆞K rw;Sti"i-vN-hUV^79>Bi/Ɣ[?b~9U_Rٯtpft*Y-WzMȃ`iND{]7?Z}FzF e@ceyF>OD @`zfW9ڔ~+W(3W|uo>9}۴OLh^3KGA㸺7#؝Jz:g 9Ώ<_iuQL?H˦oI+\Ϋj"#X6RN^0&ᇰ%#nF" eϬY}D ׺UxYp5$xP&Kޏ=a#mKFwy@=;5.P߭S5e :&iGet^/:Ykndǹ[N4,y=תn.PdAyG0T>\ r'Fig_  #.@: ztKdAhbRyE٧۽JzbɪQ:k%ZIK9{ ؆Cc$IDC8W*a ',kF[{υ4Ztoτ }k|tqB kʐ<|d ,=IE`/4PlV;;43S朋= "TwH^\Aa@c_E&۞;hf G 2ط8/@Gy.0OM}]uՉ;J4. hky`K^`T-14JY|>'0 FZNESG4|%3 C*>u72¸C9tP2'dS{!O|^p0  uuUރ8*[$YqMoTS8Rgkv t.WS F ~3<%;YzcD/;WP[:L؋KT"n)wg to+ ,!)ƪn?b߲jDX$A;Oגa% @0D\zpm75ҟ g$'5c$u i.~ tGgZFtLa~d|tp_ĭ*@n~)ZI=@FS"-iW qv;[Nн1]y%wEi/ /1+\e?ϓ`i  náZ5|66Tl[ /WU mLV0W:/stE,4h j?Ztl\ .=_t!HIG]4{7)}.FW*}>R^C ˸#{_>5-<ΗxlD$pȹ: ~y휧MB,Fmd2', ]@\Y Ckt">۩䯕n&?}A/&/FC6 >MASl8pyo9 Y&65IWĩ܅;̰^ 3 gBg(():k܄ZV{/;@UYI!nipsEA7";M߫9X2e2` wR22+yǑq=k 7svX#ٓL#@yt4.h? [,8['ȶ=«9N 5Txŵ]]4ƈ͂[NqNx|@VT/ _̥l$ eZ.@[ s!+(D[?`B]VJ ! -]Ve CsQy+4.|Sqbwk^ާhcnU 1ӹDڨ&=z0QMY(^fdC~'Afl@VF&8{NҮ4jqK#SNZ$xGi-M7Үy) y ]ƒ Rso)=|dO'9X r2m.VE5"h5RDe3=R[u DFXze62IYQR˴"\Lǁk ݺamw`/Ķ*zC*/s9,Y?j'Űy ZrL:Bq joU@Fݞ $Z5񸜠m]D;p_NҢ+6=j}]7xw|RȘ#'Қ\Ѕs%ϊ؞A"6iGiƑbn5Bk WP^;I ˦'ϡlk>a /@%0"v'Wg=jO@1[:ea؂h XhoͻYFa*E^;|: HMbgsf.J-ݷTH%l!+%âsq\>q-3N0=.(隒Xt2mՑh xX0|l-L0/VkqK 鯼s')CLWC,fOV?Z$(b ){. j/c i<& YmLKȺa(=: Mw{4GU֚;>^06ڝ6K"EL}AiG59A}`nxm9*4ugE$/{sId(8Pr- s ﹾqn*Iܚj\a_qV(xr ʙԍNUTAY{<O%h4+F?X>p,N'Y %'MX ~CCYfxsm9nek˂ ʚ^,CQ,ݤbRL{ЋoS~ dO6ŮMJv%av^81-$䐃! !J$sJm6~d$bjZQPw#W2 rUTWY,av vCn,FGG *2}NF+1ӝBH-U>u.%gK^5mlslIk#ۑGͺ5{`-i^)6Hǜ| 9HsDYay1 "8ܼzKTbqi< EN^]QwEI)+R]¨;:#(V $l2%xVoπ) sS/ aA{U l%8g=flg5F?\?#cfq1%ܼB߿L׌ڋEPns냭0>+!"?SJ]]W2`M)7z+@5bsp)tNbqCҟ叭{M'>b-a=z!1[0f̳21L>]A3&LB0XU ۲e:_卪 |BA|OIrJBE4b }c{տ~tZ.>*I6w2P) i =2^QhZTX$=EbSRLutt%p:YOP5$f_5i(К8SBrU̓>]}D(눚JNM3or~OmsN4$g>{ "y▟#"f?| zJ֜>Y5\Ēe8oY.ѹL>M }O8mUpĘ8)oT ?gʧ"u@J ʌP5*8OR]͓Կl~.EBD:Eޓ|O g`>6c .Psm[8\WF&:5HAR'eM \JE e/"ӵͧJC,WHnʶHu=x"p`^REApCxqAsIgRD4&;':b|gb~8`ÿ'/Kv=f]USaLrswnNjerd1*WԶR~<'F?R[Ț17FX:eT\숪3[??3:ST!_GB*rT>ERmxf߀ȏ G:բc+>iYqKOh[1 ,bucg ϱ,n(PPd"3a_O$d@*~#L2-Y"JCk:ds ⃌Dj-٦]Ysv|];Z;I ^$iڻC2?@R{ &:0<a\Ϫ1ݍOE`}X^k,S4UwrXx qNZؔ/OO% k6>?W1qӶn%ꫀkq(6OX&[ =0rz]\1&Lf C!:MɣW6qAӚ#]o*V X}^YIىG,Ļ&bxϔb;'mͨ"2wڇEAACk|sUI-9+vIB$©/w7rR4dOOkdA\T.9}šZ5$3.e77P^Z3Ċ 8_ ^-pNGH&qm Ϣ+4Z]bힱ "AƙU V-<ᨨI7Pq~DQ‹(ӽ\xM58]Rװ '4lnX<>~YN :Ap35I=\h. 8bPEt*v@ k`vTp1R?/I݇% Yy=k/a"Be27q"ͼg! Z.A^n!:z| 8' F%Sϟ6?vޜk ,6TjJllLP~\&񜖶x F], T!.>Οw Z[<0K4˝;68*2/\Qd܃uV,"3z+婾^PKj\Sr5/!߆7EOG2D@ꈨ*xU:`":&(k!.឴=yHD?’_5#v@6&bG&ز1hL^:X^<$W6"+#c~n$&OQU >I 6s8T[hF0A;Iޞjnh?Ki[mWCX_# #Rgb/'q]k;t79 4 ѧVae4ek-0r9Ҙb|\KPնߑ$sM,Ěܥ?X RĊ6LI:U_$+7T,g[{")eN֧;s`܉M!(8FZl3؟ިŪ?X 4>{.ޖV_ DY+;Ik 'a8>ܕ *@iYޡ'5&1~$EF}GJ%()OΝ>E<.II*q\PSV5c͘NI(K&I0Hڊf/lc3H>M4tU#>U?|t"kM`a Q/MSK14K 6Ep-5܏&6Vֽ'b#7+ԇ`\J ƈT mYx sM?Q{$s) 8{(/ *u7Ufdr媝u MF+L/UtCT;dB}mB`vLrîGi&QvsuP,/b>+UB/|sOP0 !Cbg:|˱ 4f.PsV鱅φ./Yod!I T9:Mm 5~s"ޅ vIE6*/o0~z S}'%/!2+v{#倇=lhɯyB/ƠI^E&6H}i+i:{d|ŋ5eWK⑤ 4Ғ(`vd>]j+yH$1I]<%⚝M?cWl׍M@5q594+X"BX}>ıG@Ť+m=%=2[Y%MGm5OX"<,jt*)Ф4^(nDbԅ7,Wo#iH1Xdg:*TX cJccCWa0*\?Hl@E,=y=vn-Mi5šwW )7jd'u=U!h)oăPEq[[e7":} W'u"v311&hH}RIXi=D}8۲DZ"B ujf5/r(G-u.5(I9[lIWxY1Q3ըĚ\^G hʓVu:(S:J+~qaM W;b+$+!~14dt+Ų?0W>p)qQ^椘  VX⒌$ɏE7n?0zoJw 9+{ Hcy60y!u 4^1&0(ٔSgū|?w[ЋCX,gO?\N|m A._W9ͥ8j:{+|Iz\4d k38F@CPx}y3^ONM'~7-a1 ǥKY7@{⻽YvteF&p,*d'[1l0M1E6qWMAx;pҔh H'3_, b2z#KȻK 3d dBiV4H4x xl6;k&*4FDLf+ڊe ]`ՙ=u#KUL?ޟ4 uonɘC*PfBF\+u)y ѿu_+R|B2}#|4Xc't#@:?n{Щ8K6(/*#U tUJB,#LFj|.Id>KeX5[VkL> ZEgW$\6|Z}f%B&ʰgt ԆvÍ߷A/XPpL P)EHgm>V!ԫSXI0C²Zf4MiU,CwJۛ3BZaDyWD)4L,M}R[k 78EHEda:=|I/߃H8mJּ9[$,{ eI3ǟqFI&6L[1t;ƪ/̀;_6 &ZQ59y(ݬC@̥>4V-mܢ/M5h@WiPgHZDn&05En~Sb(4sQg8 C=fYQoVl]Z#C.bF ]os4tճ@#>QO7jЅ۵!=[6+Jo"b89/Yu5#jOiQ ʐ@9Vqj.Ƀn4l8If+a܆=]$ ߪK>1_~ Krѫ`({=ti<=鐆3:|Q>p+s1֙$mFˈӸQwޭmLـ$\ݧK%gt*mг>Kv'Դ(]-􉭘/fKC*Lߔ ϯKOm`ԤnnΞK;i4; (%߾Q+CR,ﮝ$x-AhCr{C4n; d@vPɛbm.0~DaFi7I2  dq[C짩׋;D =S@qXd.q#K_K)%׆25 Ko=&סm<Ī\5z8/6W5K;7Ѹ!RZVwj -^bKU>5>?M=4K d[4Ñl?^Ea4ry@ 0pDŽk+_.YjmEjLz/ffӀW5QIP_ظܶJufE_Ll  @a_PE sk"u=#O-HY鸵 j.|kG{Qn?"v&Ft87ÁH@>DnHNg@c%,7ŕO,:uf~;RBȲaZHN: !Cr$d䋦|\d}PI*W@gá(ln3@M\LcB ?߬2œ.erL6@1}Jé-Q&XFb= e>-fnӲ%RSd1m;R.^3(wL!|@g+d~{`=gT8?: C fѸ.,QZ(Z~ʼn#  \c);|o]nՂw+\~9bY5r2|T:"-o&;ٹY@.J/=ֻܘ̚ ǡgJrkU5=RFjt  Xޤdtn%Vt/]7lw45YR:0.&|nABnfAzҸQbdj{"L5,#şf/o(1N]ҽNs8z; Kz6 E${'`z <5?Pp@ezOgz@ V&MhJuILOI fb2Dp⋰%y)t(:t ڸVx1;nA[&<ə R K5[Eja;$bb;3P,r?bK6l .IO,;=vuF//2XMm uOdUyYm\G~}p"N]ΊYlߧ$$rgM|/r7a ,sfx C¡ Tf˼ FH@]E奔MtM,~2&waz|!0|'7,W_v9;,inOYr :']ֆٜF,Oe"yy\f6-AEO7t<-z<**mЗGhA= 2Ƽp.CzD?e`Xo\PQQYk"Ûח^۽hx2AS$V Yv~Ԏ!dh#Ů1]iuf^ 03q뎵(-侭0P_i.A$tWbC۬Z0[A!(LAtڔJqa&*=GĴ@Uv$9{r4RcsT"' R@EIp 3۵"b4sXO0ݱ5VK RӸaMpkRw<I(޹|uBBNGg|hXn/pL8-v4fI B kkjhm5.hl8\ۄL-6(o'v7Y#fmnv<Ѵ~yY#<;3J0( s(ˁŪ{;<ˑ/șn2`e '`(խqk)ۨrE~EChW by/n"XV?oTUB4پ>;C' rv[yMuz*A8J{a;W3↗D;sLDsIS3TXLȝ k eBc}68m?Ŗx5})J'`n8I5H<8f#,aM>Ma{0>z:ψG7}˙sTj>uJz8G[1;eBa{4O: WVV-bTw4 ryyxDjn1`5@1\[#twYrEͯ( Bi[ymFwzKG7Woah9JO+V j8i~RGRQuױJsCcKб4S!3q3CLm<вNiz)*Hd y0XJ ];1)4C"EXp@|Jh| Wn>i^p /ك<˵LTb CPTٙ)5`j|ayze$d5BE댻?̱|0չO(UVUeer^o&!}.' WB>$#^1;"jQJyPP[α]bERL{EoMW'!BA(E*Yp-?:+D6{!ÑAc[ᒓInTuy$w+Vm5xۮV(YT4W0]ڻ d.n_ST~h`VYr@k>zU[/R^&q>ԼA|l<ލ~QvL5"۞H6?:CI̜a^-X͠wiH^tT`#m2LsXP,j:e9J|[9Jz4N|Bw]d+(CTPXvpµ%\㥄I$IjcԆePclrovӓ (l:(CS{zr<*Kna ZJORXʵ=$]Eh@. #x*)w.'Dž̀Q=B <@_}p qY3|c 98I? f7’ڒ!fqeOKW/8x8ykD1-,~Oo^Ꜿ%( U(0m>)@Jx唥Mך J 67ǜ Xo$uD؎!qvLDeu*\vGӾx9|h"R) q2YF76/ H+P)ѽ6GHG~1mÜ"̅M֬XR?WZl^F\_e$U>泻[i֢tM'D.X;QAy'J qyT.}p{ot׃^6.cXf=pg)@Hoڥ].0l9Ufm%!^iN?Nn_Ձ5H>bF:| x )xE,tTPVPfK>G[:lxr,?11<Ӽƻ5>0q=!E8CIB?Y9 ; d[Lzf"l%V/i"@N!f2A\NRQYf!ҧrXHڣIlHy]+u_[G}Z^6 LcVVR)Qn/OabkT2tퟛa<`Qg%h,mUT&}-p/FXz2ӫ\, űf(\hXt4E$@&^ϕz~2֯|`jzkyO{tӐ([p6'43~Ж7SBsܲwsUa$MLǼn> ?$JUB! Kq`+Ѻ+;EP\h:Mh9 # z9&:ACds\"<|d㽴w!u5,z}B8H)ͲLAX@М]ܲf9Y#!7%#egpNn\IWW,bJVԏ]-- 8gXll)솮`{N$$‡eG<=(/iWisH=<4A)Vr o~_cOD:l] =gb!"&]n  ݊EPTy#IY0U"/L1'M&@)SQZ@`1,R'DԆޑTNf =ڱl{ɕh+ R됣a!#<-rz  ,I<}M#KUMme^oCOr8P*4/?o8-&gpƁ:'O8=w|/%?@E{] Q톤E$%Ӊ֮m´edV"_] t5;{Zx"n zt=oU l!fc37Y횵0?j!ϫa' u,T_FW"*qݢa M'goT*}Έ=I$8߻s83c}]8= H$4sɔA S5>Z.`rRث1oW޸}`?|+dL" [jUCOi8_%V$s1޾- ľcH-\h&̃ܺzx)2>8} '3<CĞ/sɊHP Ooo KUW9YA %a(lX^Ak.i:>]E[ 5ΥFe-t hs 2Q+kp"3>mWPX Kl+*A<ڼȦiU;K`*-h̉J ,m2؅G4p |sG`,p"+vu^0b۬ Ux.Y.gQr2BK4etH", VA\oR7]{3L`{Qzlz(3iYڣ-oX;^CyWXzKu<_ia"㚽zIy|v+^UCW^wDzBnJO{􄴄m8ȭr UBBPW =!~Yo]#Q,v܌7 x %1ʖ[\O$^~'X{rkjuQ ]=)%œJ_៝5^Le HB'@p_PbÿmrTuZ&*7 -m\v/-T23_5T^t5M YMQ82ͿypNZ tŘDg6pv)X"gื[ab tol~׿Mg4+쨲f&9ɉy.V+Ԏk \R+fgH?J4{}wR0ě)Tox'a?cc̭+E8äAogV]b|ؖK^(%5E]< Wgx2@&!5reۂsڦSVw)pibh:na8jzʋ1חZ9|Ŗf:VP}YvS9i8odvG.G/TFhd4L£ߝTx<\Jqb.(aݷmMCRx,a"jk%4G+5lh~)=S g̙Hи$> 2v:/Y1V6Z ''}$j58vKF:rL V@X&}-ls b3q3Na;j&?<W'Z5០9!&7 FG) vho74hXLSSo4X|*[WR}ԡ>2&-ZVG^: |(&_LZ -1y!]LK5mAuj\[,K.B3"ՠPHPsXS`{y.`4:Th *#[$yhY.zR=! }ߵmA>,,;Y,R4?5U`ڝ- 'HH5QA`B}e`Wշe(&tfxp[R$G-Z>@2;@k6CYx"2n+$F(ΐ[<05V3iL(R1޲I@w gwm,F$f 4CСy0K %lL~rQn_J(`6H(+6[2ڃւ*H`SؒO?̓@*.! Y[Zv$b4΅')dppJ#0APk@Vz&g5{Ixl2 Nl<](lL P RE@ܳYH.ʥO94!r#K uXǎ߉UzzSC5+hۏ7Y+5)=,D~m{SݖlI[cw5nEV`΋7Jc=/VLĈP8]JN]Z|rx5t0e{<9lgϮkA=E]a M"p -qD{&P(i" |G354i[jO_%0J2FL<[uhvB=SheL"b^WJ5'lðoι8"~8`ǟҔz< Yp FXK`uQ:Bߣ苫y@Z#RE&hO|.W72$ =I26bk5/}y1tN=ps%èAaY4O'7`TѲ*'Z$iV' Z?q  w*v ~!mOTGIR3yڇQlu'=V/ J0+_m@{a?(EzQ;N C vc}K$JPIՐ8c E\j^ϪRJ?N .k5¢Ps jnȋ䥜 "Bz3j rA4ROw'j0B}E0B苿/Or E[p x{ T8qXW Oa$zh8Ȁ%{:ؖٿ&ߛھ A [!+`t}p7TQ-i(ܛg/$ElHHfȩ) :Ԗg@*1ByZ?^aBQifGRdBd㧎`/ =/#U*ߗC~ÎgQ:4_ ?/U0O' d 5F:䡉NuQW o2-"gh)?sI]QD,ftIH@ +>E)TM"?g' ܽh- S ̊tW; p&g1˺r29}NZC֚]̞d-n_\shuQ(~R4կ\K݊;雜"m߯i'_Au 7T+ #ojGLZbL [~WN}zɅS(%GA&b 4Sop x_>!=JqJDm͌YXߒ5#–P\1ŕQZgRBk撗!G)1}Lb'K@(t-]b<\o&@ƥβ4\ZE(hA!&1R]r9HC#cAvz:A$}T~up눔:>UE崡=vn(j 돱{HװBOu QtohqfV43zhsq9\B(;GT>?oKoxJE,ߛ|5`s6/(Kޖ ie `D-W=xist t^$%'kE= 3TIf&*WK(`\+QUpĭ9,Y93=?/;%IR[_k~hؖ-%:-a]:SQ˄AG8d8E\p)b&Q1@RNRȚa+ G˹#9ʪqe/CfV3Zg$)6QDs# 6/_Cx۝ ( 'zj͹¦eiFP_lw *ׄA[oGyvlMeL4A 4E-ba| V̩نV/` aNh-rv3l9I|f̙;1 #{/eVE{1z% .)n }|)uKJ}?f6?Q ٖYjWy>,+yN-LŌrcu:&\ g9="z+.G v_g e~|*('NjlqVEFt״4eOaDi1TNM?E|xs;jP, 9lcO,. k)ݝQ{"7cBR];^LƦ% 9ѷ |{+R^27S' qV1J#o&yZ}-GOu\0g `ϖ׫g3 /h޼Y~@ (/wsVe~!YeQ`gr v2ѧe+KZB5& }\f>3N!϶Nx"USZT=c-D^N#B6b3%l{Ym0KC0piO2n:!N4$s6Cݰ댣/>T ܵpziO55?EN?I1[lЈnFAW.IV613r$o¹')ejqت>63:o q'Y 6@Qɤf_B#uR&->Lޠ7Q_;ڨ/jOnyϽnY\/gxR2&~L=1d:qΐƂg/."95&f^>hjeN^]I?杸 VS{:G5CIGVG#8IG*`N QkiRvmvK@UH!+6 xU\'.7śm .=8.WIgQC1Fh6&h Tc(Kz4I9ʕ_΂ O'TʄVtuz[bkd߃TJlԋHYOX W *^M}dTSw N'u4I۪YzUidq;3|Re2Z'k+Ja_ b+#;ÿXK$9兰5`E }6l^>kN_c#,uq= Eq:zN022GI=,JeerxPB?zm/837:!e)'e$>t>b*pc\ yB-~eʭ9.\=d'cQðHk_;a6Ok./f$$XwdYӔ !W9̡7 WQv 8nks"Z]eoTS"Jw67"wPqnœvV'fum\tDW!ВQy٧&ՓpTu$ â %]*|Y q, o!U 6rtaM/v(^4k~ Ch)KGu6 Jo^䟢~͢Iٙ@ټ R5-66:`z1;>ZCO 6> u(M0N)Č^(!ݯ|7bt 7Ao94wn_R<ʌ}ز]N` N [^Vɾ*?`PDi3'~է7NfmDӦQ&]&} ꚷ*+(/EK.i5t^M|y ?Ə7r9U߀oA-/<~>LygIX[/GtzG(dGo*6{KH?W6=L!xYWNΥgRhb|0O%\@1GF6Sy&OH'W];Lveq89͞6?}yIe"MbPţ$՟߭+ߘ.餒/bVzGc+uum{CRP7WE7&!!)wt${hPO핕h]E(? Y]~NZݠZ/f#"QV` ^<}[(̏'brQBaYnF0bA 8߳)`g18IaU!y]GSN5b٧ٙZfr:?p O2#>Ԑ^SXJ"xp+6߫Rug:F4x~5b V'bAS1;.cw0@{IPөNV0Q>>)e?6vpE ?"ȳgR!¸P_fu\oEυoR#fW=+Q~\J:}[k<~ n~8S;K ee;3 P=t=U͍ZnwT05WM8`*'V#1G=g%3]V+&7P㸑K@Eߜg>/qӢkk;8N\}9ZFA\#C B  ~YwoxtR{N kn03V[ӈbG7cejt,ݸH@|)IWãZd X0t})H[$t,*q]%Ev~?^U/,uG`Dj1HzQO@H| Z] SbE833ȡmHRxjm ?vm Sn~˳Դϴ,=rnd ھWf~P H*QvKüo(6yY8h6S+kELu\p@>X9l ][plGsRa^su7$)y\Ҽ/rUE-z*{!}yG ^PJ/: ɇcZCP\4z0穔!K%@H\g2c&¤zoJ|l7WCC%bȴ[fry \6eFю+טs7Wp^rN}qƯ)pP74áQT9^9uY8btʾf c|pQòaqWcY9Y'nS~rd3qG*\N~p c3(Dgl''r>k"åJU67FC 7hkz/ B& Á=?^Ÿ W.:BiQtۤ[ u)# [bwVt1߷b' qA hI|11B8Fa%\x0`ՊZ_CB?X\&[s- ۊz;2dg+p4l Th5nyW3?;DZH~[b| bAdceƎ~B)+V3R->xA0)_F 4ce\?W5fOJy_F vwd@߈ 8T&E cdե]$ /w7=p~5!, Ř=kyKf37\>@!Y3ֹD pǂ.)w@=kS,LH.jjY} ; b=I Qa9b!BQd:;6^ "LU)(ʄEo>91א?-jl;S*Td8CkO5vÈwdRfXHc.p4ɗ#0Y='nlj$q`u;{XƦ視;V41&mݥ qv2}29(,c BB22ĵLije9^yc@`6&VQ+:礯_ǫV7P%ֶH:ꥍ p6[iKݕ0{E:1 rUMfLB}9kΈOQ,ECӭn6&89-vHA%_^$;Vuk}Hbڨ-J _P^G3r Is ^)m2rMYֲ 7&F0דm&<"vH0)JB9XGytgOixvywb :6݆_7AyTҮטYJ O\W*|&bsMhS&^ "KC@*('tCǝF7ȿ nA22^n7CV'nj+sH547W3ͣuGOeR_qm^.˅J;qrѽM ^.] 5r)[߅D$bxi8!d \3"<c&uܸIc'fky=ai Iv| ^:"nr!r){V]n'Z!qX:B\eJAڸJ$1JXT\mBCAЛ@Q'PށN˛ r R$Hk]@ $,p_0rS ۾qiöfq1ز kW ąRyuvi@ԵEEgUW  dw75?SWYbG25aODwY@BѥVS pWN>bwiHK81R6FbDGo@¯aYp5 J{R Jq*ӣIgi%w k(ؖIF\$Id/#RR,6u.i ܕI7Ȳ ,HDQyYɰuUxJbe^Ò|B/_8,-Փiz`[>]޷ 6K`Wҷ\dW} itA۴_Y"F.L×\zhx]bn{Nnty;Ex)TT܊Wƌ$iTG.qyo)`E:Rq`kjr,{NrRzzSJME"Y Z\B| k Zк@%UOxogEbO͍4i[.f?hbei;.1NwۚNG ă C=-P|3 =@8o%p6wP#T:5yXbcɉ6}܇hԢiM`yD\ c'w n #%lp'bgK#\G!UòߣǮ38/z-MFE#"&C4Qj$*tLٍؔ0L2O5AO"Nfjgyw5:*NWþG"ڠv("wt3z'Fu@ 6qF1n ң8Ai6;Qϻh)E`U@dGA=4{QFe[Y%uN.֞ =?xzйnBƴGs*0Ni:XVO_ֳ"k͕k >;PຓuYOuLydāQ~*Tbc4ǓIZ'69b'K9[ lk\ʏm$ h8yakFrIg]]ـ?촂ᜟfu@}{Y .j_z-M867-__r4k r?-(:Hh)0b764U}7Y@IK ,O$ۼNWߨ8|:y;ZC"gz 2ZtpwڨM۠Λq7$~=Wވk?`bϨ7ɅEs@;U;&Svm]A S[2%W|_8rj  GL'^ԽtWAe=1wU!-} .dW}xZ42', =+oʛ$^q6YtэD4 L@*l] mAfV~wl4Ӕ=!V7q{߸9?.7f/m:R\ nMMʂ@*1G`IdtntGǙExcHFA?2`J]jRlIEYF#w4ܔI5pjyܞJ|VSїǼYyUgx).XHT$;2LRm-4Kab]8>pf$VTl#ރtRqlcg@"; b FtC][[XF0`y qg\zeP/ >"WH3y,N<Uson"8c$cI8zۥ&*eIxN }W ^ȫI@._E䮧jz(5Cj#Q$i͜ 8gLUUQ כ)@COŵ%vݒ I6'G;-&!Txb.K{d=Oi$.IaglD|dhl1u_m:#pyJ>xɰ٭/Uq@pngIA10H;H&aX$F"m+*JO&Bzpc>j/Mu+tX Hd{Ȩ.'9 I#(4-ce,|l'O'݄yآ E*P6.,vLԂZ§  O<5n5P%xZ1SsaG9:`uUt1MU{/F0O@:ETw֜\R`gD!6x'h- 1ѳ`8 PrMQ'CT~e+_e1~Zd~a,^]KZ5Ǿ%ݢ^mmFoH;Cr[ 9'ʿDbX*W]%j4o 2! HDoãCd\5tqPl3YA.aPJƂ!ǢOx~-?ZÔKsUz<5;wZLɸol .yROa(4@}%ePΓ d^JWa-DO5G,1yQuc@vs"zf#:xcx6a5̙KC @R&0̗m֏b !90.ɔ&N!AdruŠ^Q .̹/  /HXJCf.\U1D;~!bg_Cp/NmJ-v˛! 3-q(S'^ZK Og p\>>UJNF ]P0\D ⒴Sc69rNx4>R;2@W %6#EkLQlq* afeCq֟OgYT͹QyIzzV_h1R,ʒܽidXRUASӌ oŵ"|aouo+hȬ 6fvMu@VA8UɡkԌƑ.HJ5aI-[|˕P]?&Jl^p+-Oΰ4_lvxָY'6lmo|o]`X[^՟vHHʬ[@k/RuoͪemeHx'O|>^Ɗ=zR\ͩJ+*}"Cyñ%3!ic3.p]jHHTGux 0DPN]ZB7#R~TQۨa\۱CG8!Z1FEM~ms6uY{. G`V3+M ,E_s =ͮ< X{`"ȖMdth-Vhr%.]#JbjTV[7ŗ~<;);%f3Xux]cj֊we3JwhLFfא}\vw/slč2.ʔTaoR"z9#@ IV S #h.V(S`y-i j tjN^/VsT2e[@C{=Pn;Fs3pI_Fz}!\ ~@O[#4:AFVt LM.wh'r@}38ŋ8E;;՗}9b-4;]G`0 ?$ZWd?Y)χ59KF̥Avo[N>NlEoe> 6fvf*|P>=nyadmyNG͌}W/_  r~rKN1TmI5R-Z4' V;3M[N1X]>N,9|\EBv[1$v+ ]trbW7it5w'B̲Qso"Tj.JsB-\m>2p,[q6r %sY:դkxǎ >[;5W!,lq5[ JA⪻v@P9  R<9fXb 'ccţDŪ&2J* jM(nH. -H0 }h/iݞ6 X XFoNOUIQqU Kw^vÁ%в9ޔ& Lf |p#[p#C" "7͂]a^'\V4SXǯ}%d$C] '7hXVtNܡr*e;V6Hyh[=unDBMAU+[:`xƋNm5Z-љnahV*gq1ms3, 9Ezp Hb4{L¶b y*'Y1Zrb3? 'B8[rw p~:;k1󂂺vnx 'q9F3pĔejjG"rd)|(E+WDPIqq^]҈O mW; Q·z5pJ@ ۽Rh /l=x]WX-sG:8̯(徱} |I|"Š~7O s~(!S rq2p7N7☗|csո2T,/-r,OLbI,̙d)5GD;Yi%t6h _2;d(} .l^2 >S/(;G?w=+{溴ȥP5$$ӏ!F oz^:xsS,Σ/<Q7=Ǔ~t:2X2a+1Z˔*S%qwfB˨{EL0 \`]jjȢO:@;DMOD |<;$6>PVIzߺ{397Jt>//p;,t\6*KP,=+PPRia*$GL )54n&}g~փɣYwn R&I'dndy>g1%"D^DNgd}qڬ"΃J"#^p<&.˵q'4&]z,Nd"nrBWXFnE1n2*([l[hWAx uqIɡM_Z9V=[mNxKϸ~}avK(tdݱʀ痄L!TF4tu-j Lª;M c8Gqd#!u+KqLJ Ǚ%4Q=T4 A vs?rD:4 4PG7(0O/"ɾr\}=a_aņ|C80",aݣ' uVh%73O.~ 3#?qe0L/EtiG胣TKmZ(}D(`[r~*OȰp\w9:^- sM4ϪahCvYG'0r5vHb.R%D1a-<ȩFm< "ZJ:+,kw%}NDiJH%x$'.H[sza0[aBPۑ"}AQb_"ve<9":7/s8&WAN8uG]t]P{0D $ol6kx3~cзuگ8U Pqm]9ݖF wDN"ղߢ7VXvÏɑ~mL7`,, LJԈCC ÓcTzErcޚ9&ORi]'|4cI01ojtYg\qb.MUQ0aLj4E>ZE+_N|j[:\yGȓ2`;j>EA#dv02Пg7:ezg8PAL/44<1c洫l$pG:(6^ D2NG,~^r7bmKМ`e9G[DUҕIvKj%eCߵ=R+ލ|(TdL``tg˥^bsbhYDrPH#&hѥM?"_CKΡT&܅:b\U,?(Zk}?kd+WvÿV.=yǻ\]93oI: KQxy3Me@?[d0s!~*ӓ+<- +w[5D~{VMmRJjaۧ g[7lJiDf.<g~U9yHЛSFjT)\`1.eɗR9mbndc$c牂GSyBRT]?8c=}4؞{&!0@%Z$4+Pqg9Tr!ԯ  9k8EBrW$LU Ѷ3 [AdV[~A-K_B֎2Ҁ!18u:w;Q=/N֚fCG182BZE]=Nk"ʝ [N4s m\&x* E'AOmU+ūDN&Xi6qw&]0P-72١"?#r2{'@ICIPGn%k|_'j(xcwS%ֲ29>^3CUD]tiݘEưmn*[|`$brUc_w4&;-k!/+%ebzXpp&m$nz o9:Q.5gӖH$*b^ ޒpe[㋪ν8#Q+1 G'W3K7d[](>L5Z-a$PEjfdDM wO*R`nyd.y6Jy [XDe1잋NXܸ^dtob=p`۹MӦZaJDn&5g^n1.:GMy;kD]u*iƫSוGBa8I t6}cὸ3v!idj¿!\WQx>&gęǚKm7oR X~5hVOY0];L -֐Km qƝdzSj szFT%Z_ Rv~()Xzi>o(\QR=C6kwѷ86OyBZk}``w<c:L!52.zsVFk/@K#[XC&$ 3n$B?RC:ߞ2wt:ܱ{%zA)5V3u'Qd  dF N:_Hbd=K^5쫟m&:N޻>F$-j LE#|eߏ(; ( HECdP>~_ 4|u:q 78CK84eaLnCqEJ&Fn"wt MW{f"f;^c n+ۼTE* KLױȕ0w`y3hɷj܃|nOekR3A3%h+Z/[LŒ<\+<8V&+jш)u]:YcRgx G;o7,lz$|.e&@(kTqMvW:rШ-B P047\U&NSEB(:Ued_FהđD\3:ZDۯQ nS*qρ;sq&WE ]J r~cΗTR7:"'}TyOƪL:Vrbۦ,.c\EkScM3CmD+VAeW_s]0X[We`1t=x5z_NNS(gwDl\C0T[]vɶQՊ`z#/۩* [63^Movj"wj6|G{V\w&h ɼabaq H'?5bz/Dh WU2$WS{4 Tϻkzp*U"ABSt%j9N~#$8$*/i4@$;Io&gݦpm݋y7ggS1xM_坍`:(\$i ϼ% ٵ(N\.E{ bezp iM-:·|66K##0Zqo?jD=20@M~'`>e"2Ge!`tu"aoAwf@O e8O. VWk|a<4ם]IU%FB~1ҧ9108I% z[dd;vʖ@sV=ըصR /ozȪk̰xw8E75){1ͻը!9U 41): r)V3$/hRc@;G`>4N |T.b̤ж6A +է&^AJ̅g͠txmL \1((= GJ\ƫ6WN}*S\ݑ:ޙ*?Ab^*r; [l]*h[ɲ: w}.OTvΜbD 9qB6ҶBrjl O PnQ Df^r;%UNz{495XOgu9@0SG"ݒ}?tLU0$D.^oϞx9:ts24BQvNv&U ?*nN5^hzP#NK<@NCluG?FGeu)ElP-Y͢w-]C(EQZ{Oq vq!a`tzp7F{׀~QƞFt"f D0ZW33< mg.l1C+v$-Y'B=-M mKgZ|Ehc'fѾm>2q^,'2cgAҲL"zF#UZb8)Ċ t[5Ęc`>L'aGRrܞ#m)5soWߦX zbM'JAӓzòz98KU.QR}1\StC˵>U',!eس"&O.v+4!Լܝ znYɿǫ.hF`i liEL CU"-Nz]xn8t~2}VP4_gs~4%s +5.F /\ቡ<'Cۡ/GJsŬ^F-Gʒ_)' JuqMLh(\n? c*D[̿5k:a9eL'iA?`hXj?;0tY $/%{ZM 쪩M:(UtdZ)d[95 <'xr>!MEg~hh'+solLo[Y#n7$}݇) |P; s8s@<,QuC1+rfuc#d2IJPR-WS5֝Í}^IG`Er G1()X #{ʸͼ:l[")lZx\02u44 ?*ǷeJy4s2ά`t%h]\-cW;*3~$A/[ڱun2GĦe]KUdla *o 90x L)CEY< uK\=0?*cP*o(CwFOB^}WצL8,ǡapD&4up\I"kHLk іn&.akw.awjULy!S`K5qJ ٯ?[}0Z0Z lb~&DZrbh5e_QLG7P#`dh֘mCx}tO?m_dʢwtj&t7h72TImCť՛n Hm ηܐ4$LLe5`c͚W}.8{PjW͞l'WֶtN{߂LF2qJWlx . *5ܶ"0>l@d7{BlK]Bû ؚ&)7[GC0լCWlnNM?"WjՋNvedDЛGlї>T$6FTp} !؋LΚ.dxf$tꠂhO / 4Kb(zfp./ uyx :hwĪ=Qmpc=|7n՚& R4񊺉 |OxȄ ”%6CX]7+GzQ, oY{nAQT=6Y85~_,]{aܦq9a]Y$p1 @nmtז}rĢ,^.6>6$D'L۾B.%T_HtR~7hC)S+OA1N3tX%y|2$rĖ.e|Ȃ)S9z| I.SW֒]7dn]*{*~\^|qN?i9&\35R%d %2IFnP0yJ9~eA{nTTe'$\c(nX?- z mIѩ>=N_*jӊ<C!|Ϊ= pnj[=ti,p>36@HE(x⊭>|m2"gPCAjF+.kIf K,Y7nTU;~ %N%DZyu5VQh]ݏՁ4Yyi ;p (a-,Cu-GK5GA~gn5s7V)W:{OYe>_>$\DQ^2XX@nfksJc%\Ia=Qʇ.n (I>lt{?^muJ#qM XcM޵3Bwۉ,׷,rNS? n>9.mKH\ͷ*! /Y}jHzb a'ԗ`0Z ;,[xH:O;  .;"jR=ekO㡖n!91{偋Kƕ.ֲjmjBJp }+1.,x#fTLρ$b]xXgVݑ4bQ ԝ7AdpO@` '\r Bb'w |`(wެ%Zi |5wPq<J64MQ٭->.k '|0G\OŮe5ݩ1 M0 مw( sT4!IʧD4-kܕCQ^\5P|85TEHN0922Puf_HS~Sَط' K ǧw¶!ψn"cf ]FYu kĺ|i7 7igfpZmkVr7t̀ m ") KCyA4t325-Sj}$bEi;|:Us`P >_؋-nr ,\a+@j$S&B,eۊ6OmIb4c2`w\80|ڽ,ϑ2q_+Uc3pczyh%K*<]p A"LnU*^䑌O*ũmH" ƥA I^/߾Ƨ |$PJDZl(*l9݌nO3q _Sșw&:Fi V$gxTiN(ٍaKhS[['Gp* nt})7~*d*}ޘJ%_ސ $a ~?i˱<F[{D:T?-ǏV} XM On?'0@IҖQ F$4j(NA x}OLeyO5-j+}ק(%ì\wc,6:q%|HvGBR"ꐐbuyuXvه.XZ{O2zخ|z <C0ր~_ e }S6ճ_-"sDrr{=w3zIS JX8tՇJrWske$5x>)Uy۬T'v%\";_kKFA1@(C(QDæ3Ő=] A𑙩jM?3/ 3Cd+}`D$BҘNC'3d]o߱[23ӎOAڢ$J `m?HZ(P ^ Bur?fq;: A;@}=zUr>I]MEH, DžV'(rM=XN鵂3]!]$3/?-iyF060x=lr9D[ЩCfq,4yU/P6"=BH))8u^'AJUt/jFrY$H}76tHS9ef[9^U4BzEK7 H&QWN3c=U -s)%] H fXLY0ؓy(evd}Bb܌|ԙ4"yYohKr<=̘X_вNL]Bndm91if;<?A)Yܪ _}-xB} j]@uozz 6f\1>s';foGa\J!nƕ|.aTHy:,%:6u=Rgmi<7 Z"{ Aoj"p=L!j/фYhHj7) |Fu8WܱDAqyuTs4TxUU^>޹g>7vw͘#^ X~9}o>:;fz,). ڎԂ<Ƅegp٭9uKqhQ3MDPFiNq܉OhKxsK6X~Ö K7w; ~tzCmLuaЩƪikm8pPOU5ӂ1q4G;!, !Wf!M 4CM];Y!W0d&[B Z zJvpTn²!Ekuw C4{/ld^)IMb|X $;j g?ãmȪ?d "#cskoLħ}rbc3IQ.@cy/bKPr\~zELnq=iP}z؋y$%fpZ vDND=cRvV9s8`zV!_+dR 8gN$V>p!'V / ߹n6?՝*7 {͙h{#-)4a__)h'ܰ9s ;MQks ?B(t |\o7\˭wND:5SoYA,..Чt!8w`!3a;v4*x3<0HsؿHi MJ֬@՞`tjh1d~TzWa ^+ 4D nf'^A#rR† 'KIq3ɑٹI KYRXm '6jGBLB9&me;q iD^B> ZΖ ;IB,~6A ' Ȍ +_}KbĴ׭IFl B5G3q}=+,|N*Q46ܞl/X@*(} ^"E&u H龠4^ТkY_B69jaYy~4[v4NjymX^66^ۣovфrBM;&|mYA}27áq$и [G[JO'41~x1Ζ0.? [@L9L;8B1I@j<XYqBP > J^QOoy#W8'a/&i(|`F>RPDհY/s  gc2i[gtPoVg/)`)/dl֙'0] ?zgA!ILkk}ymޔJ[ij@$c KZN>^}>|Qfz|}t#0V9p5^T4vC,ؐï\}6ࠄUk;2s>QI d=@aQ-bDu/6~,$AA(:z}ljjCGNrVH# 豩cpً@Z!Dw{xSM(NQ|gZ)j$ΒMJcRS"dJRcp}VZoϜ~K烑J$1'㗏798RCx&k&5Zz:e6ebM:ɢnl %^m~6bfF (. d,*+9q5kXkpQ_=xd9`u%\7(3˹Too:L$xi#.c65J5D15xgtjGX)ݦU>aǞ&4=|q:AS xpeABLu7_05Cr&0}\@Q[196nrVr[dtk,v!ƫ fɦb]=Oأ+nY$_Z6Oiv1`4SAA4e ØT>П;Q5nHa[}Jm5SB3my^c ʏ{ƶW@ on?vz px<>9V_aV4mHrJQYT]e].ua"79 ,: wichcn59<[sLeh oM$/Z* 0`vogcb)fG!@A?:%XGjȎh^w#ˬ:1g97E|{m[_4kǿPt|7`;#Mi,qn~ #S^hx| gFYV=$.ItZAV/974wE[@ PBQJ($B|":vbf$~rU>v@1ˎpee+w=4U*U,Էg*^,fp NXwjP>2#pDoB؝/ h) -;£Ϙ  l s5ĻE! x$ןǝv/U.pKe'ͲBxUvJyRnXY_dtQ +dB*Iazo:3A ~}ZN:a`y-[K {C9*wo2bDtYN1TwDh_Ox`KjBsC"Hu"is@YɛkYr6w{Y&Jߋl&{Ϳ 2ymB##>'+W_U}ni>NXkf=!凷 Fxb]T hrj^MK9"uoLl0`ᴪ#BWDZ2mMhMRh?10ws6B7ط{lA8S1)LBr42= -~Dbkj7~xj0cQw*_5!7gPg̰ä ";P> B Y?)Oj(Qo ŤD?%MJu]AzuޔRX_=cCR͵M!0.&jbQz,L0bbh It6"Tq.&PhMC[ihNghWƄRYB.\NUjNs$BfE@ Gk& C^PTn }ʳ5ff*!9@H4&x'a^:nx19~(bfSU|{hvb1iyyj:*?+>0ĥ\X`|3:ȮQ[yx~3_7PN0bt7+ᮒۍkr|Cl'L7L%Fk .c*Ĕ j]`ba1*1eVl%2;֜Vٮ*, 4Ne`0"&8X\Jj`qBet蔀DHrН%V+_̢ֆ2>c 9]L. [.Irb(XjgDs( 1pqJlgOMPw*D}ܝ 3)CN|*\~-2?}m)$@w&Lծ kn_H-lun,di`|ixbM|kq;?guLM0u?xՋ!^D4p+mEפ|AJs%3*k ? ƧHX4&8hfAvK~ i*`~g"CzUxϒ@MҷD>2qؽ.f "D\7 ;/em\ƥ$M/ɊΧUYeKO"?ؙLV$g"̍ӱ.?x];U@c{y+$Dx z*eyE/vs Rq _g n%'<6x[3>H{\ngA,FPvlPӬY<z<Y)|cv%r».5? }Ʈ=WBL7hACMco59}}qA) wD.2%!sj*`LZk5m}(&A-ifk"%E&Zˡe2,} Lj7ˌ:-p&W*ֆ[j2zeH(Ǝa!:pr'jJ椧8WE 4Y{35lw%Cn} *C7o`uAA8 hYmg@ڹ)-tǁ.|OgG3E vYd\,bC|ã.Xʁ*!q;9?H󄓤U( d -Jg 6Ԟs߶|o>EG٨1qZHOL/(Y@GXRwJ{>Q*CbM9rC]J~^9GS+d$2]]&_ܽrujz>pnqiOdKYD>fOj^CRg'hRx̕{2l!n`Ł7s3:Kq5 O;X$۞P(v)zp}d%ه&8T&nB+MyfƤSˤJoF,|2n:˭$li#ͭͻƗdҰ\i/FfKb+7[[_(2t%rmX+U :wE=0sZilP&0,jp<:{!Ud9[rt 0'D8gְ"M]cOLiロz:svpb .`^YMøݴy%S'0O>#o{wau͊X#Gx#AD50>1|b"EF]wYch㫥F Ch҄,X]v鉱B2[m,\%e;"&dV"f=9 =GlFg/%=,kQk^~חN%{zqAo72"LwRyu ,̌^nQ8U+\$^uBQ{Wilq al &~r ]AG v6L2ulU}2ú*86Ev!·冮bHHQ'9LmNv4 4=a<'lg3'-Z56OZPmκ9&L^|wt"F={w:\%&&哛#i1Łs#Wp7|<#XO `N(iiG1.(3thAh{| v,__Yt~xc' %α{d7>%B\Ke#ǨnWbؔp2fw)ygX>do +!E /F'[/tСV1vYU" wFXB0NHBڀ7Dɠawoұ_b :Yt(g *JۯG@^LVOSܡΆ!SQbZB4e,d.I!F?~8/q2g?goQ~5$"P!*sY4̰Ξ)!3p Jw*2 (vz}{E цqjB>S 2ZgwY$^sD'pm86K앝eeϲJU Ƈ! Ck(. (~buZ1ǴEݴeyIgTK~jhɿ%\^(J,qpOtփb\(m-dqDX?hOu Ikr%;-?mͳV*0}<@j7b G5S^h @5l!қ 蛅|VYO+p!`Ω0;Wc0>%5s-ՎSյgZa = >{qc)xardwC D)MxJشtL{$'q( HSLg&oL&HOuR/OiEKҺ/ ьչtK ["4]l3Gp"~WNXL'_b+/ i4}>})4#L-uo奂5uNCxU]Ea}Pm{hZ1_& Γ8{#eS [KY0ߚ|)u$tݲHi쵃K?|h.u.(9}&hgSijyE.9$wcdDEJS\}ǃ/& ܙ0zu;.7iXfp_wIUfhw`i*.݄ZBzOG@7,!EۊY s5m#. HM'C+G =^e'SQu>3&kٳ<@f|>s..xptDc+Ck3ǷL] >=jZ& PtF=O}5~9vJ M3 MTċF<8k7ٔz:(:*ZٓۇF5QN2EYjd0M.\S{9Yȑ^m Y: BrS5_ʬo;v*/艦fݎXn4yJ#ln(6C{K~אqi:(hc[ste4.7cHnQ*R|5Bkb @hġ/ MGi %KMu;,#ƍgcmWIh.݉Ft,&M IaBN@poA~y o-ثD%E~ث}Aɑp@C~bBwdm#7ٿC] Mϟ]+HyPDϑم5~!M[t քo_8{*޼lb~J?Vb]TyU$C4=֛?OF8p`?td_5u Ctǯ(vA.iK'1Vd⬥GYi ~b ts2@qG-Rt +Q&@Ez0^'򹋻1tM~|-mh@n=z/fcsJ|FԚNɦ;JUG9(Ti 5&Szg^Ƃ^ g 7+8S_>OPǃXƍs|`1զW>?~Ѻ>fo qB#Վ7LC0C WՆ|-8 Jk?M:sxLkηEsqg"!B+ik>,D#:E1v-h~NlP7nE " 5bUPd_5H ܮTke%ZER K.mظ3mBH/U rW_|fL$X\]&g`_F51]ӄioks1UN/IABM/TfD>kTVE|@_](]l 0ߜO ۾ ɠ~zcW_0,s!1oFkqɶ:]q@M"T -sC>A}CBRöC9ODL[e+\I0 #]@Ekjw"d.Bi*hxa#x~ 7W#XFW9B8:@bMUM>=&'[f=m~9G>dKVCTFd"]+nT$uz,=\TΙCD3  |B "~Oyy@H U<^;t-cBQM |r%ԗi@B?~_z|ޥ_Ԭi` J/j, #B9'~Ko&-&]t! "W8?J<2m W•P'\ٿl<'ElJǧdɮa,'3||9w V<&gd.~sdo n_,)'pU##RpK"t(}x"L߭qn|ƴr~{'{}Dkpx<^}A51USCpNqOH'|Ko'{E.K)4^tP`C~SG2t偦<2e-&ln HwE҈㏍M%!P;&:ND{%Q (!㏥D#.Jb}S$tN6<L|_8;A~pL8(X1׳}Mѭ6MO N|,o8~we$g˭UtGciXOQ9[Qeav|wZ1q(4Uh"0J4"GFЦ +&!X5v㦢9_ [zQ^7Sg] zyLKF 4l5%Q-pcO{цQ'BpW+,T/ة8L;lY,D40 /-Z>F:U#7q8}2Ȧ yTK, L PKQ!y}p&08hzה՚.;ehst@۽>-r!'(n8 3>`}HW[±.@,mܯ-4 PA}ŀRT!@7Esay>FϲI~FHN**ŊD ; %/dty=AǼϗ " T}C%h49')iHU^f'7? ]6wkV w#G ѦH]&}#sߡiL8x!*QFЍ46|r"ͻ13~?;xtn\ʧf!e4a 6ZlÈf~cwrg鷖284ű*$J\ܭnHշkT9[(ck0⌫_ ߼+ 8ֿt_ù3X vbsu t ӲhQe$hLb{==(jޙj@_ Z:(*N41ᥠ&0;ӰO2GOL@nHYf*(\\V{( F"6`|U/~+5E2q S g'ul5<5]+{A`Q4 I%H K$P[   4ijωDzxJ"j/X0by܉Hm%Jlbz㭲u0*.-2I:^/Ǥ~̴Dm7D3/06}rtkGiKa[;>>fa_?iѕЭ09;XDRюb 65 _8j7m+}(0r}'kj7HQifZFڗ¾G$N5x콝$U"a[ʣefs7 d@g[(O׬$:FkkYgo֐ tIہ\ZiQ"={7\Щܒ8i4R*%#Kh Q{+1 ',Lʯl<CI)_LX1T=kt#ymϓqwMp^%<6 vU~3.-**I# !5ʵ$qGDcc25__nD;y%EpPqC7yzGnrBt|~V`0k>ZcFwݜ8&zck!SY {a>a6^a۫#Cv;[JU|nD2Wb@E4CZ-= E| fUVaߘj~8cS0g`3`v5G lfU r(0_]E54}{W aIksEVmlt,yҳ`Yk&QC Gϲ¦5-p'6K &Y.c]_?VF-.CYA1> ;]0"ַ0\:C0KZGAIHF51%?^xV()%KAC(-sV ̅t|P5q1(Ϊf5'F^>!pC1+ dc圢o UuoSA2:/P GR&c4gWDYr}XPA+*`~ |NOْ=-banHE~z 3xR2uȉ'Fyt,QI򕐾 TY!#.p;}=H:6݈k; dOˀ:fu٘H к[njCoXa]tՙ?{))%AmXn|-G5&41q .;ǰ8h#SaEUN#:~d.?*3&b;e؄QOgHW:iE~r</`)]SOUXM Bly.)kZ Mޭov_ԡ gpB7RKyE05cþґVJGk`d`NJY p:y+fp7U.px.rs}ѫ1tYZ?鎯ةNV#(qos|m0='n?׽9dFT N7b4UG:E*QOqt6AJJ'TcXYȟ#,Axk9Jn-8c^NB5!l\IR k Ɯ6!0PͿ{"f<&m 8zV/!bɥ8O;,.JfTܪ2 GYq% ~LtRcD*|.u0#ў!vlΜMrOYu0ιdcWLf?P}Fx3uo31M#BQ6l$4՟vXP%~}k-Z׋2&9T^EI5!HIn`@)IkSu67+c91LBR8WPVJM!dIeF2}$,Lb YwàrD‚zdEa-_E׼/%V)-q:(?r ;8q+z T5)~sAyGkcSWMFH8Gsj"U8P~?ǤWYR.r+>GglCc9[ <*GvH j E5ܴP)Buëo ɗ:Ct?p~+;3sF~&ͧpԵ(IqHO'C#~7>NΏ/;H0/ox?&g;PtnTw߹b FG3B@zyO РaD?+.Ϲ Dl j u;y_%g~#!Tm${^2+Er;̛[6uG XOZn̋-9ef2wh!hI(EX>K#YJ'=XgoSn ȒqiٴRZc5d3dcy1 Cc"#NGPX$/6]K@]Z RijL&>UhMT~@:I,֫JO!`cChMPMҺKcq,ayDi5e= =iוam}!>6IJ]ܻWmJ䇶 К'it-iݥP;C)!Vuhv'8-īRE*vo"wdqP5 2(^Z=iִ)^"}wVG;E0(LI|3n0|H^$mS x90 Y=djS|u_BO]q3YaBц@ߑf1Yd#wgڶ?ER4UqeR DTS>D_Ф̦0HGH&ntFݍ=`~(kwvNC9&{HLo4.7:rK%b[%QΕN1,;V.@47M؆LJbTCDŴ,JҲ7$Ez̘p:7ͻ0@a02m!gC:F`xͬ:b 4/1P b]M8ρQ>CRϽ v ')߹CŢoAHa^>_w,I9'Qq'}4dV6 n ep'b&6gGO 1r2?kWN"~mZȣf-[ eh:Frf*{pV4#Ӛt}pI.Ӈ/@X^p:c M6G%.> z"]>)\\5'7;W*4 orUt G@`ȻbotOF &ꚪyXr'k|(Ax\׮}2NkZKW"癎!H+MEδW(&1O9۰߇ݝSQqW=}`9Vf Ei%eEJZ G% US8dɘ/Ρ%p3\Fgf{֮1c6t&'wQJh?Iϔ%Wd1'/a ^GOX^WYQЯfiXEgx?0 1M%bH_^KM.sJ;^3-<EZo!>!Ҟ2qd>4XcULu^ۦ@hGܻS:"cd5 7?x9? $4iDR߅81Y!˩ *Q|c7lM3ȥ =mΒyTڜڂu P6L}_KpON԰$v#ϴŗFK=Lc3{a_p~_]T= Jy av#\!OuoR35AvΨO [V7Bݾ[1F _gqML>dhQбjjĘ;xEOeiwyDLfIYB*d(|o 0UϿ\\Epnuq;"5cƾ]1y9=}l9+jȖ9ˆQk\Sԥg9%&!ފA:u΄\T; FP h0@\M87_hl~VZ L0=0V~i?6`)Q5V*?lJD?œR ((GC|@Ҫdhar޶EgB\5Z^:=6{PLCU,K0?͙>D(xgZA#Y)RMn͙@d/˲ſ[śO2>l)W~w氆-hrvWR.]EP|@սioEߚֽ$P (e4fҹC*/3DT^7㏍f'`ՠcky5 (ߪjܰ+ h2%_-mnvyb}t*aFB̚ Ja}ɘ_eY_Rl+>涃 إhk^x( ъӆUź] r*N"p :GH]+&K.ȇ!/$eyuduM-n+0?{2DHffɓX0Z~ %p2L;5JP#P϶^8 藴ǦP,CZOW+--haz8`)e'aCR {*Cr!}wMT*Q v|1Sx:?eTN"G}s*:1,d=}iT-F Vh\^~u@Ԡ"6 ~ EѧTn_+=>dRx(2.Y潰 7\!/nM͓=WLF '4xpz(~vPȲ*ٛ.S#]OHɘkU9xfcDXZP%hObv=xRƷf٦ڻ}kl\N}ʶZ.Vo%.Tv3BwU!/^k!N#7[ٖɲL}wnnv K=u k/EGPd nxkЩҽ}rq HX\ ']?>AbY7ҿdS|+#O%͙W PjJo4:/uc> Q4:lp>y׍^<[t=yQnS FB}KNùCDD(+\R}{XSN'O‹.\0$34;zhmcY4W(<Ρc聙dnb\J@7IhMΞFH]⁅45YWf>0ۍKJMJ=Vzv#) ,aq1CX$TC.lYG/ /H髭W̽YwUT[@ϪڎbYr|; Hޣ5*w0צ?pݸY S$*^C▌bNmg>q^̵M 4BMKj47}V B[,A/r6ei"x@!DeδDGټPJAׇ\@#/:zM[/I_ <'G ug[AFC5O/) ˇqb,:P׿9E^U#1"<ۙS5w?G;q0$ZKc{v5$K4NK,Ú坳j\G%a19uK*=H$yaN5:#)tpf*(hpYaIfr nB`C¨mp k]YkN9w! O'd=؛^tOx)∁n9jn^b#%mx9{M^*~ofPf$uΕy=pdFSznMo]?ΚIҽm7Ý 7hnq@MdV BS[qtܐ',Wm7BaM$! _Xؔ[D+l-ӷa@#5p!9R[ou:e}|81T'X@M}wJ M̡ж`u&]4M)x6~Dh wyX,PzX/A0b{i҅"U%Syu$1SH$]UzMU2&>3,+À~E"2.XV_}Zb#TWeDmVЈ/3 tiQ5@* f>s-V.͕>Og~o,..{HUTc)e;QsW#p($Is\o?? ꂿfFf5^껴:lKu˻Pzc7d< tx!(}4LhKL#5 I}#zXA^5B]"P?~srGl%'Tr'L\gW[`}N!0O96ut!m*Jp vζJ߸K|ZR3O# W[׈6fZ^axodTI\.Ƥ1F;5L kX&eb]2|Eb@ocKbo_ݡ^"L^4E]3t&Rq\d P\|4;mzeC)vm #^p/qC$AwMlyw]8@;מh^W3&Y S`T M˹{G4'R|sic\ sy.%y5m`M:j ֭jCS=M}dS4>#+Km8w;{N+%Bʵ14Yϣ- w3`ߪDKY=Ta! dFi0D(g)oy`,5(!.~TGg58>><4N]``c*wn< /+ţeON0Zfcj< h6M3 Hd@veg70/k2#JE=3nIbTJRDf#{r`/h͕:tOkB??Uh\I55t'%doIyRe]$s8-MKA|gC 'iž5H|mbwfU@6'3L9\|pOy+& ʲ~e oO*\*-73< xȦ攤g.1ӖJ&aU2Wƈ~si捺e^E,rz+i:]^%4[J:̋0yA͞KcI._e±J(},3 ,t>8ѱg.G-Ϝ4y{9ŀ% 31𿋥mK`pHG>sQ^粢"rxw/=ڙ>r321=+YG0M"Y^ aGgAԝ^<~3 9Wic1^ߩM 3k6lG$f0_NZ`%]Yt~M0~mW&/?u|G \CBRgG1;"X*0"6~0,ddyZq\8t9m8Lq@f#?ə+Z#RF)aAgGߎQ$_w|oWA?ẻplWڽ$DWcQKtd҂HoxT$ڥ8;ky i^“W ~=uAw8f>شxe^%+y/E N/3OiŗO 澱|7rN h*yu5HixAN] #:iLs7)cmHL!Z1URg"'a-̫ʱchk$"6a,5lRs;"D8, 6zpC?UuِP)w[b`̲țEޝ@TÃ%G+pLjĬtF*s ƙ~׿SWwALZnf _EdX V_cohV2:& ~-ZXԊK'Ep}}o@y b(,d@d~=syi?úk=V168?Z&b,`_Wb/XQ;&+ 8"6^tp:/U@l:)O60xvfu"zL0=EX1 mjǕGAs.Py 6mi%oMqاKeB\6WiM,,wptQ}YLt!O7K]x,5P??ɬ'vZ Y`\k?-vKJ JB)kf;(xA=MSXI)#.qy AlT3d;[^U::8ӯ5D6v6ON Gri.%n)*bAlӯX&s[ a'[ޖ?F )-O?^b)HCPv6bYZ\*;C.ZwdVXr?t'Z2H >C6CK j*–@[L5V5[MoH&Μ8/T':bz!2uP;h6͞(@=÷%-m] H/h3{qmJV &>HfEc.զ!qM%QCFrZ-p 865ķyNJl$Y` נ1Mm&FPu6mtw#>,/;ᢞ˜t y%&¨A B>I, $\?.bIQ*Oa\I GpL2̡A }!n:dL;{K_J-xL l N՛zD7[ t)  7e1Lq/1<63Tf<uewEDRׁnn%OhIoHAx`4C)]2Y,ؒ`UG##XLAaVi]}4<- 1LF 0CV#  OpgԏtVXO$0@Aiܗ%6D\I4$LN1t/'_D'td#; 8>gs+y@LMYTGn"6Gh\&`'!:I4aI}ФCcK8J!3iI歓R'p@W2p >lagbMrb3f$P}R8ݻ>ӨO%Vn g֧nTi5<7zd_kЬ9oƔa 9>f5`0`y7F\wuұ\i.c-NQ|6hHX/?Rq:2UJ22Ok+FFJmگ:ͯ+y/RS;tX59V4Av񔖩ȸ[z\(啤Le`J-uZG{pxu93suQ;zRԙ0 ?/ iI "-1LW>%mOJY7decI.16`xBK,]SFOviuM/[pDL;x~Eu(gy~^J¦hRb,D`x)z_ @^O1אhZHD@~o)j{;j]c)Tխ}k^4hɻMpfI oaIp%SńV^ !֓h}1'tǛb8.ShAc 0MMUUt]CĮWg%Q.+MyM.f@xhp0f!(U-Թ+@.Ԥd,V |zQsBJҨ )evW=h`6%:DѧIc8(0UuM!&ж@H5˚|xOM7STvc>2(/݉\Do$.A%z0arm2"oT/\To %ϺX))*0͇PpŚ& 3,!qᒬj' F}g 7NVͰKŋUJl_iw1Cc[`ItzfaT"0ZR/||KT?j@XU~Ny-w(=wR: N%A,^P;hCT= os; n `ז2.Jiӌ|+l<>v)|xі0 CH969<-#%0 0{Pב-¶md9ge?{N?ywnO 4iPܼM{.Ap\ORl5"J:4xKs/@1椉>83@7e)݀ҎJORj-众::Et u-,śOT3ʔ gM*ھclĕceX7:yU~j5WF[rJO{B EE2r2tz׃=ϟ?aٰu1iֹ?E(g(ޜϽnQmVC*e'D{of1G *q)Ň_" ئ3& /M#$ M|u 3tX tوi 9%}ºG:u߁ 5ޖwZM;S:\M1S4>=p\mD\wꛙ 0Ge)h/UxE4p{=k ~`IW/q0w% Qr'ߩ{*1>zk NX-u>xZSty!_gJ58I<̗j僨[m%VHcuH\H *I& _yA:d.Up}~GIW~GĢҌ?v^hZ":AP(Oܝ2W/! %[<= 7=GbI}>D+).[88:1G=QwfyDġG?g-T0N+_#||im׳hd[+c_=*er' ڏM/BOt\$O@F" ·\"fLzT 8:/57˪9b2>=` ݙ &wvm%/¾v}p麂Չ5 Z*> Uf!koMh~s9Vl%u@2hyo\bg4M @g2 ͳԦ'J^ ꄍkO J3WA QH; wk߅ǧRXHT#N5n*HԆ2Lf ZɎ5ep3$sM SAH-vHvC LLĿ쌼!UX_`JiB\;Qt "mHR{ĭD.Gz2ģl"|6L~Gmsxn!$¹VT*t*o/0y|5醧''͔ӓva@\OXϷ!}]&gk]ydp.Ђzkbۊ4cA۝RSrs.̍ilj&t5Mz>?Q5q(MxP,?FUwCl y"p~MJ#{r5i:DD+x:9K0fߩp\uae M&QsWgqu bMMAZcFml'V,Q-6Exe=vVo)8ƭ3=/ͦ3s-E?! c6 w$JR:ar++5% T(șN|)uHܣ&10a%)І_CMIAKaJt!!{olpm3eT87+w|4FrH | 't_xD)ea@ vFĢO䜠I*dKgC7j-A_oIjD!$6q#B4oo܋Ԁ"yTd  1x`,tۅvIy `TE޽j=+GgzSly.Oi8գ+Fz.w5b*2} ]v>7^^>?Qr7S/ޓ]?Lv,ASmpM Ιy$nM?p)8[fK zK:| [nG}uv=zϚY!ze5`ԛ*)Ni^q58 \Qe,BB6vK#Eβ $ *[>(m7)f!b3;n*e rP2DN8 v:,jy_6jQNP6a'4]G& oN5 V$&0+!cC݇PtKQ9r*R0A1DT_(LR_ rW{˝U,;ĎBEDJs[ P=@ f.Op%4"X,+[wBg܏'ړ  t'NVBfozσ _"ou:Wf&=pQx9tYJ%iyqp;?3TrzPӴ" >,; p'"RvS$br9rn:iVdwl#Rϑ$GbOp(*v [rnR跁;}IìZ2zJԥ?N% ~k8gOF0Et},j:nBxgx/Y`b+Ag)0ڗu#s"`> 9f ccq k.2{:"^)pdJ$!V-vl={hCgRyn1Qݹ5B,z՞؊w b7[*#)?Ec|iPQu JBVL,)](4 m`zbvPP=F& pB!MkJwv6C*DZ ~Dɏwۑc6>%> guV;.lv5Vgco0_N RWeyT#\RV @*9-Q`T{7'-hPHG 9ԔU ږ8킩x`_~Q_i-Ft( 3h+"D SkŖDԜ\un@,GX#]xVDFB>i M0 Fdٔ 'l!\'߂_Ww'ݞ\H%ce6KYЧpWq\$YGEo/N-1ZS;S$KEzADUJ0aIO ɱlo yerHTR,KwO=LpVY V.ڇ9t R. _QGb',t hA[Po;) dzaJRJ3^=ٰ@< W5<%ʸ(Hk2e{x#uDw ֔ u= h} xJb܇Dk?@Q~j$3T":֨c槧-۠jSԁ7ҤP%P`n): کU6zoOt B1dqT]ꫛ/` 1I rQHK O` ݯOxŒq 9t:(֙?r_&ś#]'7*ms`M5({.$[Xfy|~UmQAAIoL ]bGݷfx0H1PKYWڑ\# tᷞ&0N3Ad _x(qi/ })c)\vXDcOoօEWj=Ҙ>?퍃vcY)%%i[!=`0 O@wYlhathTa6~X۾D2{ H4"{0uH~xp 7r't#*8=3=#: ˟DΝm}k)ɝ)o3jF"l9D8n- '(NAcrrcr0 M4,I¨I{ GL\$MM#A@Db 3c)[;/0dʠҰ3iɹ)+p꺴6P!1N 纳Ew xJ'#FQX w5: t(hde}/LV'vk3l&9w;N RWa+:9IouRsN.+Aj2x]LD~n߾LD(u/u殝ИX%ǼOɋ$#ߝjNb|*p 3*"Aڒ7S,On5C҉p6x\,@Ι+=3P1x,S.D' .>Yt}9UB5ELl$#1hCg*TAD=f8[Tpc:~R㹃U#VAتξZյ2Qo-*^ntU>RY*K+< {qBLҎz V ʋB꾅156H!28\=vRj^\SlK UG>geF`Au?\ԗC4|8JĐs ]"pL";]eP4$&daL"UY,PNbƄ,o9LlPHŴZVǠ[p"ԆeJB %u8?DH䦀, ^vB䢚R$'AF{:v̓NZ1'7,NAzVW~3+̂G5v^Xio1偼$aDCI-|Ļ&r~TN6olҕIf*^U6\r.gYfv ۗ2EH' Y?Abk aUK+Pu~Zt5O&y}m&>uZgJ4#)8$3`lXOarJK!=iZQ ]<綊d -@\y?z~!j wkEC=ޙ\;zl6V mA4F[@&&j{4?W?E5p,p9{LML訊;dKRA@@`[Z襣X({#@^;o5B!"F8Swwa>qSLnUvVMN~c>F[~㔝@4 _u%?U@ᇆS%m`T͝Y[@ؕˑI3O MNF7o4+//K}yiRHwzu3?_/ /\fRb F!gTX ",=|rq/h z- ۰!U,\V{ 1Ij& m;-㸭X\𱭯'{WrA {.]8. \(xA9 'C&i8ۃCTd:D^r 5HN+kf-2ڎh=gVQKYް? gd4u[LM7PJ' 77+ iN*vk}|2/V1gֳ,H=T7AԳIUdyD2LemRa6rS8U+Z6њ~5ù{ՔP4;'Ex*b\!~qVJ>t1CV_Xg?ŦX7Ȇ%PLOd Hȿ?S6yޣ5-`tӺ" qJۄ,fic]̧N\;WgdytW!+rL6`Qh-rE1 27h44P wtT)K#mbP5գj'q\qt1mK'PS޾6tcf#yIyTkJnmĄM V< }1@:jwO9λ buR柳` ɍdSkCB .ᰞy k#'AIM(`"H{omamc\Եe'Ae 9*N44|y!n'& g䞣vka2WF*HoQP{P:Zl\^hސzSRf+SW9X1^i8]a6}>@P{9nK\*Y|&Pg[l\@|*J@ٶT;~r&xT)4'S B*_bW|zNF|Tj<>%DDDXPMA9-fcbGZ'C \ѳLr 1g>ßXPXnHíOǒJ^ Ԩru}jhokT[URfd|xڒ\$'ۋdܪ/1AޮY1szkMsHZ0Qb u9Ȗ_?+F ѻ ]aYKpܕ(/jF> _ %$"썝ы^g{Z~{AWg,y !r6/7 \ڀ%s_8pv2\N|4dm{'㲉F2c_E_ğ_mQUrۂ33$"e돎vLiP6w1{Ю.<ꈨܦpXx۾;W 3a ⺘pT2TQ#koavd=Ѭ3*th!nWL"Ƚ0>xіR%&)| N2J0^xC̳d sL20frW ä'scr*箈j:_FXDZeӃ2uzD9~Ge1dY$g9M3`S#x6dn `痐|ro~ο. R#c92[yp!ʑJ:gy,q,?1|3`/F្4YBE>˅y$]N?մy*b;/b)$v=Er܍>(,+Y;s@}HW|H@:$n٠$$G|O f~P ><[CT: ;*s ;s, ~7o% N3Z +Y I,0 `S=4fOQEZbkDm% Q<\vv8B"M7DŒhR'v4&E$bi;U4AFUޘfa;bVO[In5 kl_XMѓ71.\F;)4pߚdvu*,n2dUH?拁_n JR{LYJ7~<=mf?ћ~+'`ݵ[Aq?\pNht µx͆lgaυLJ 2"mR$AЛ5t7E?m|AL"\k;lטb5kܾt I8 d\'}&G>=&DD^gܔ׭VB_ 7Sy(g& %G!P7^܄AՎPܣ+#VhVT%r2) Ϛ.˾-Ҋ3z{ζJ"2)Ȟ=,.nk1yBW+kN>EVC[ҷc͆p'Ε586Ƥd!T; ebpŤ^9bEU"v+T3Ϝ`IlsSlݣ%x??H\cX K8@\Tm0Qm8?aO,U='S8!hxk@  Z[9Ҧ,~3s/C]LF6 w-ة?ׂC#a{LT["F;*eSPNRd7KMP] >>-sU瓏FW32\1!+@U:-IXt)?d|A7]=*ɷ >%,I-߂}X^;tA%rLʯ@5Q8I /֯g+]Urk\s Ѽҩ8Y ݉*}C ų,G;]ܸiǓm64ش^_H?-("G_hyoOCfn&^$#SaS3yhF0=1LŸd"h픓ۨrj2M]) (9%E 8J+J{kv;cfzP%̇Ćn)ܸOJPMIf]W3\+eQ~LfP%yʹ.`pY8^kpgM]evC!@N-a` +G$h9 *) ʧN,΁mW@iu7F*.רw1I`g!H*K/=KR_{4<]&U@IbKcAQ9hI50)eBij YaREs0} {+ߡmTztUL{zb:H %ɰ,7B{nLޤ,JOC6eВc㤨xz4  tsge[qFtk=\)c|hxs>j7v0_)Bg$MH(\ŖS3(l  /x#9S5=4ewr CvX/s a!>&I[L{?Wᩗ'wݐt"9?(}:L1\\W #`D`ՉuZ"hxbՑ+9/) nu hյь"vK~=w =B,XIj@Xy95ȈOK]`3'%$R @A^2L~/H >Fp@[*\=髟ێOBcZQ !{lq}>0 u!}Cꕒ. !ߛc⎣́&Rd6N唩nI['0̲w3 T4:7JK$H˅maQfj(:m L!9i0)'.%,tʊAjNg2E<2`p|vf+)p冱87-˃u zvO"3/ jmGrVa`s;͇DR:aqءyhח4ԁg4NX2|ZutD4^?-4<f7Ad[Ql.-ƀal @\ixYJlyR1pO $rXψP~CwV; \"Y~.}8DI(gP`Y7I3l<_HU<  ]$|Y?gv1AHʇm&r8L]3 P"Ui-qCwxESױyNi2C=){V8c0^ITTztg%yuYUPH>fȌ,`%k|^_ơkA 14 !Pe wtjtƕTuCBoR}n<\:aGځr^w0eroyXyOIni/6\<̛yC=-#i,I: f,k/72E:rEy_2xoUs[ ̓5#]%L S#s%YvEa){m f2zyyw̠yq'(Ȗ؊ex?C|? *(v9&xubK 6ס*ݣM+.8,a~v.eGtk,iNSKSnH\<\ߓJh(3Y[$2@HuC rbN~.I]LJ(70K.8;&g(f5DԦ@gBJlK8C,ëw{oXa3@sƷ+`MTat JyNA7V8M? ;%o9|Jo/kVnk<㻪 H ynekpU(qG`qHyKGB`b`=T?~:kLdԹ"bhޏڧ0A15^H~J $ M _/d)Vq)b둽}D)GP"=xA+pLִ\ J"G&~*Bg8r n\xi0,3p (-nybƲlRv.BΟ)E#h+F:KiCq*eAp-isڔT&X|:_f̾PXZL8k?76 R{Q~5J6?g xB ~غc$xy1V?z+ϯ[OSRF|ueE C;/,3̭>xX%>+B*nf~ZQaHK\ex:Oz*K\uTZI9TꮙDS|UKM,&?kN,Xsle%~fń7ɰվ8O~l4CsG/GWpv>(1͜`3|UedGhR5R&RfEX%4WXGBp L>9OL_Dp9<֧sLhiϨK2x"3vb5%3A{n,fY?h\p>34(>< ďBW{wp']!k$_UL$ tG4,][#ӕ[~ꫵK .s65C# vޚݛ#2sTxAjъRѣ{gf "GtCȝߠk NjbRb\E\Zuk>EP@8jMFvܐtrr;nZwaׄoVWݷWcL?az]*[V.3[>ŕ9^"gaR2Nif러* +J"$3;7agjcJ]5È s;0^x )ð%>r}D/t̏VHyяI[Ӣ@tjShVWJff|8H>H=$\Y' *@m%i-!*Jk;zOP˒_!JUhAbnh&亩(f#i ;5x,Շ,u w&B9tc3kfI_ӹ,M(?~zݢky." V1zگ ӯÍaL߿UGQzx%P;^6rrĖҽDu/[ œ;~!*'KVMt+;bvYvyk6tl~-h,k"Yp֣Dž)'հwhyDw),tYjoM%;, d}0jM"0ۙš^2 R/J]8%6+/qpѭACcΌ?fj/`4qA/h#\Jf5ӒqA|;z c1vC jU[C+<}=6fĜX0ﺊ]u$^̬tm)5b3?iGgjNr-ʍVX X0( |dF$GRb<ʠ3lPCh ]%F9;!~88 )#B͕nUP;V^ݱ |ƻD:Є blm 9 ]dWͲF`$#g/t0@JTT%+Q$RkduŇJVNgѹO64n&gi*X<?FCITeϯđPl Ւ W_!6\Ps|MXH {Gx39n|&?fy)/PVT\vxG67)_>5ԂgDB4{*>pRt騔OHĢARzhQK?i{& &!094gxs:aj_jGV͔SwcUt0 !c:quHl9uTh'P=a?D(z "ɑRTtDž@4H=2Ƭ ^w5v6p _[o| 57JCdk< (x@T$6069[=/X˭v\w>-K eJ`ADb8/.~x4Q|WÕ:=, eզ*K?AVI2#rv-:'}Fm1gr*>J8uOȓD~O Ц?xu`'@'`Cee|t9Z~ո?Y w:4B}Ї[BͫEP'Yphhk8\WDI14:+JZpWtH'?ut\5Òl?U.&Y1(֭A vd{*XyyN+)/#О?ҵ'I iĬWΊ0:۸f'JeZw̹~3_eZ5vϟlH̲(rʜPZ# ,1S2X=ny?^Hg 'V`3vbGSIq#E)ߤK}o`rP}ɗyP{1(3]P8២Vwx``_-+\U&/`{Uߞ NSQd݉Ҳ`ɡd|vمM@ aZqh:V"bQlkPA^[mS]"E ʏ1 AYYmxΡN9qX9ew{9gcu~K[rыC0ݎ.wB@(CQGtR)A, ?@̌D}rYX]-M йMM~OԇO80㚄͐mboN`54= IϥXc}eїCrmkVzyD!ܗOp-x vʸ8G-:ӓwת>"oCu|)lmXQ6_$L'"2k`ZmIV I@k:OFlHk~$^OD;͋WuߠOu!bQ|x,=O *{d*G eV:-L0 Ɓ '!LdCb'%&s'*-: pY\c#1dz!qe-N]݊(qު''ᡇ mX>*BM8\~C+geiI[ݲ%5 |\ =|)cBg"EPݽiVH}6Vo FN8e%c댃+{zr!#T@z6MmE'`hq$)/ "n 2?[cAoˊ{] ^їAtIA}^O!ĕ{B3яU$Rg7;>@Ty ߇~" SQUKj3sR@|PT~.W '\XZ> Q*Ifnioirpr !m‡V2\x3{&hUa9]hnr*!Ծ$_$d#{G-`v!%Y<}Xجt<~*+[5KbAvœ Ha(>,>G%r$[$m^?OzV0RWf-u#m&:c+ymm0ww{u혱A8`iXC].V>Љ/gQ29\ xPԯHׁʁsY:(B$rĴ=+)̓2>CnonܷqRC9,q9 u!\9 "u߇mOO'YZB]'Ĵcӟ^-@y:pM:9MgX&Y?UD(.-*YJ'tȱz6ETc[0uQ'ـQ53/-(Pd'p/cdΈڴ{ L䙒62Uv G|hsQ8ٷ#6˜6Jb>SRBk)C:^$rD)w<,21E+?q>ԥ-eB")A3݂N@ t,|L 7c=4ũrNeV! j0ꗧ '^` Һ#AJ[k~\#y{")>В_8 0>0Ir s3MϾë;%~iŸA?ԝ(dnP䟢6@7C k0?VPhuڞ&3BAf}?@- 7M0=0%o`Tg9!UijSG9)Jm9X qF1ʾMETYx˴c-X=D(@Jo@ϑK>,9ћj>${@F֕$8m:*-2eG?!b/hB%醤6>PYVKX?SSf]FN݀BDJSiD8u"_,\ۋ1MJvtpf}W`Hjk:Ut5st_ݡ.@o[̰ '`J0?aZ+WJ,c`G+^x 9`%+$',q kKZ1NoYod&';H>z*f=O惞f c5wop!筧@Fӷ =;7dͪ/A@r!7FڼЈ(;泰,|-vY~چ˸ALi5HT{9bs-mӤ*M{]ɡe-g$/S7W!5YAe0_SW 5f.gr,+pƳA syS>TͺSvᬄ2bVxM0\֖n}x(j?PNa\ܞ"|Pf' `V` ݢQ^s4ntVTߡt<;A'2)r=2[6H߃z5׾ S} `Hά[(DӴj)ZGty,ؽaEfΓ&͛zpzkPRL"5*+<ҹ2rDȺE+}~~Fe%)(3PU:270/ et>d0?.4anH2o5nR豭Wd_iyCI"v“7إSikFnp^P45ԵEvLq!Nhhnbd;x .,: G;Jx_5hcUʩydp4,.ntEjl qEc>8$5:NC.+W kQpO%cqVr۾kxwBy:`(>4ڇ^$)`*Ǥg랕UE-4h~kH=r$ŋ^BXGNȘ I^-&a쇬O_괵}>#S_3T7RAGӖb(Λk Te|nt*,NŖ9WoJL}MT\"Ñ Q*|Zicтc X;$aHK) Yyo{ ޥ6u tv _ G}Yiq̵BӏΉ74~2''ƅeS~&ygoG^Vtgeel=/3(n~Ȍ%j* M~SxИ[q$ιluz!E9TJ.}s~`ԳT+ !0(X'hp5{6D].* . 9"TZۥssrau(xbYD jQҮ""WJߔ=`9BAr@K?@HQ\L&rӘͷgF**S5Nl#Dp6(IAH3B:0мK_K.(Lo|$6|y $3!Bj{ԅ,QPۮiZOP +Pr!vUP,^2dK ĩ?PM{) ,ӻᎁGB3 sƌ; shއ rtҙtceKՋCWCkp~N7cp#1'?C1;9 ^zp%x2[mj5tqP7i%}Ť ߻3 Zi<ƃ *51&KN_R=Je7]<^4rY+3|[kh5sYP(I=dX93{k55xYanIw40e#?DwBT>)qr`l7>tif1pxd;rjsk־#em/ Sc\((3cD4b'GUKLcG/%=G9ʕᩄ@ȥ+sSWﳘ]2elMp875n+kf!)6r3yJ$]OR'9Sdf)TY.M69䫸v_YxǙ%s[-fąGChuTذgG:Eh^.tu_9FUyIӉ*3ºV3ua vb YǛqf8HhSzG y 4">D8D&@VJ4I>ht2ٜO"Gga᫮:xvq-S=`[/hRpB L?#,0 R ·kß-=I_=Tg;14TZk6?{ h%D a'C'.:Z@i6&b7γƶ"en 'Aw/0pMDB9_Y bENln$Q-⭄iqO*\'<"q?gڹk"k o/#pPP)psK1lT܈[d W,8{CPՙ\mZmn6%Tai@#Yf%)=/T XRh#\vAm%ьDUuCwk) T 5D7*/MӖ1WS&/=%oҺ$U4 ܘTFNxnC^h b״Z1ؑ.&[cfRԅw1hbY\ 7C[o3nAGgk3x|6-ነ5GoX9a9tQS8­Oa!Eߡ10˜ Eț ?X"5%nxvbEfxזEhg4%C:INjw+g3 |!/P6]+Ob䅃)jh1܋m'V:y>"z\9HI!L2&-y90$0s`忈< XCM=֜AZgs,#R4}FgLhrىr7 14#_b O ԥ-BEu{vПu*L;&RgӔU/dtc7|x nкX+5}`ƯG7e+;~Mt)(Vo ȣzK%Il 22~~:8ه_*3\q&eYi؟*EHK~ZTJd#rӽ[:z((ȏΆF&@9c(\E; (vl~[=Y 3/lVݞ ArfdbҢ Zpn,4>܈TS5 g,ԼΤ~͐8m[˨Iq(UVTQ eq'maQVPewgJe:W)4m9Ƭ쎟ǼL`dWl ]z#dkmΝ~>TRǑ$-#Rp5q@RkZJ 7YrO{k?i>(ї xv <|qO&ۭ׾V~fܛ/!8!GB+\YnySvo{uy3%ask;DъTcvFmtz@P3;o=p0b|#ȉMes#G)v1DU t: ?SDb#Ts:5 R[0ڠp^\M(%+V.儶5h_i,jnȣAz9xkC3Ǹ ETth jV*3׋/nX^ _@1CwON.sN ,ỎRe#g4ZҞH4{b(N}Qa] .쌝հ1~'L\ZQL{@b[A 7 >9:ej6b+jbWr~ʮCrw or*->i)`"hE~pHygubZn 熺BY?2$>4FNӊku$hPa[ơٶf`ӽkdC,8e_X#( X_ao}\׽!I(bt< XrFlLԉdݖ 2@L7"A$D?-!sp-h1Yy{z-Wunen9TsD:d_wyOJe! mYLR@XU?D2oͼu2Rng޹!tԱ|Ǽ)>S?zqVސ=n5ݭ4G HtK6*@&9+իV"eb~)+! ֌qD" H2%ը9 qb8\*}`3>`,Y2Xs,2=%y3|O_5GeK񶟺5HC٫fw<_k]W.ݪ 5 ԡNl*]/4 N- vv97-cSsVs^Q]cKu.^bc-EV}4rz F( %7-D5a.>h::~eQ6a.x* 8-?8NhK+Km楝[#Vi@`Ot%nZOhEr ~%t;rQ$rS`Ca#?SW)'4*;3;A-zA 0D:ɏ:8]hWy=>Ԏ,=8 >.y 7@)8jI&yŴfŠd4s?M/߉C "Q/5E.*-6t] 3:*c)`R8nٞkR-W&ϗ Q 0s~`~|@!Ή[9~ gKC5rOVq=[d]I>>+a>Xf>qf^A`06-~2@w,~61*XI?ԑBr!E$RKT3M#GEsN\!\b G+7 u-`:>+bOJ/b^Ne{`xӪ )Os\ q>g,)=H[$b 0B +#=̜ǩb5ߐ6l*=ngq0AT縖DtlBT*HDJ&wUsG RIs͑sP =Q\,4t@!1*<}͘fօFG?X?g)9 ]"UEJ~FmV-VO4BZbNS‚un `EA|-P-6#!zlw"$} aM >!~a!U !Տl:m c=N@<v'BpBtYX>YHQuQkۨ':R%u`bO@ W(}KV#-s-((*UUfZaRVA)c1!QnXN8+r~l r[/\7([icOƓlckj'N8WR;_29(P3A1V`J+zbr8;6oRˀ ; rxGibG!: ' 6ϳ' !;*9#0HFy4Y.wiԢ6|Te>*x3ڨnݵX̞fDU߮ADF/ls+uףE-̷7<7")8tO|MsHlxMSyh q4yDѾ"(e)r %i;8ɛ2i6|Ř*y'.^tY k {NTRTs  mrcE,FdK>)OڰԓA8L8(5QW ~ FN"7| Mڗ޽p_T*;U D Dx@p`!q!>ABGG.EAپæ}9+5F z`' Rgq0m3Ne1vQu[}5զnVM n햮b$ Q'Jr]gJ`xr]cydP@`/W^@!x6bf=z]j)$<Fؐq,-%[ *|/լy昬(HR irgLAjQQ3eXfW#J!+k+i7̎LYA5:$W9 hH-ty$+{&ͼ=x@, 6c6"s+ 8[񯙟  'e7={w 6aVk/;*Z ZQL[90P푆nmg=a|0mƶS3Л=(L3kpA+>'C%V鈗l|\eGzϺ%s3^!})>>dθn;5D`^:yTqn|ƍn8C 9SnZpw05z@>M0Z ׯS?A2jd :Cɮ- ӒlmKREوBe+ (`6 ̋Y̢-#tM)m"A{8rG<uPYҍ54ü$d?@e֑ww'@_н[Jihwه&O]*L7BR.·L36jn-bqҿXh U_yn%*KkHuzP}t3E`?L4=ZSMm)$A~HckCe2s*¨0=[oUaE1#,\syҍji ? jar1|#Kӌ3#dKR^pD5 &Az>m "bgk0=8k Wwmqy8]c)p֑) DMHȀ{Q`sf =:L-gf`΄5"ݰDz㸪߮Ǽ@W.mX?ޯ`V?.D(P|(?3roRWm?x#N{%^\N6Nj0g-e[bnu}R WT {Ә jW&K`lp%ȀG6i?WXA_ ?9L%^t d\E"Vˏ6]Q0k9LNwws®JOPKKF zSrrLt_c L:_c̰ D@(\aokvL6).y̏[VoN޴)H~PA~-X1 F\3D18/bĿԾRcKѵ cF:W$(wTp(2z*&,#Jr/Qq`Ꞷ}ΙS@V* o`])LYDCK$On ֪%#XM1Q<`ASFaWs 9na?1@U4P՜ B3Ad‘7؝ґcԫ5AX?jv"{*S~ke#pLGtG;lsRiL1\x`ז)3(mrjӫ *".E+6J fgFa91 +[5 "!7aPNM)H[|Mb)No)g m죇 eQj RO?tG̸@P.Qz:ځ)+HB? _RÈ22Wsݒ'?dWloHMM(SX:5yж qsKlp:|MIrpC[iߏ0pï"=[ѻ[W=MЊر W)Ze"6A=TkM٢簆P|'Lu䓙җ4Oj>C-FPz< 5P : p^-#**sLv.  v`ϰA)GP(fR&MT-4c:^ 0qboq!,N<)@sh7Ja!f9ӥ)e* !Ɯ?Zal,,4f Fkc`y!mNn#*ϽOOk6N0>g9us "l& D@$ɌVr(;:)ըO);,N߷TI6^E+G(bTu|grȢ_6$bܴ=*oI 6:A|u5P!Q92j˵ #ZH1DPJ.=tF\^|R> %PF_~۪i!WNdkÁfag;_Ӳ*a /Z 0vX3#X>q7PGW##Ē8q Xwq9kw{-'8(Gݐ&I

      -Ք?[J`}GhCY2u3f';pi#R9SX^Q͊(UgR`1Tu<z#W$F*irbWI )# U,b!؃03kҔF^:gױ\pdF99 zs^(c 8\D P|@Jشz&/\dh˫V&Tթ`ď(U,겇\gJ7ܳKit^^<ކ:poqyt-hqN0>MҀ4T},@Bо*H0#ϰ2INivI3i6TUڌ ^p6_X˼ I:A&7LI6i_R+m15 5?s4wOA$a^eqn !F EeEkZfH'1꘵8|<4?\sWx: /D٠ʕ9>7K"ǃp{E~iVNjg>g1g)<;QUPFHp?2bZ3H:N.1-Mkޮh$n WmtrB)Gmh5S!]/AwT%T*-7PB9JU0y`{{1p祐(z_yݞ=ߗ-&>r#Hmu`X/ICnfp 5cgisbC^O3uEHY)@v ֳ ÿ,AJDEeSXTS $ ۺ,t\w破8bn{\Sr㒃?<pR^ MM|p`S z2mirx:)j-!' !'Vɐ2׫pV]njՉpDq ?_K]m(&zU Sjv% iO%-H2KpHOt\UEPV9?VQ?}/h&y gvԛ_*PrVLK1Cj „r{wKaE>/U!""j@FHV\983?gZ'l~0/r᪷=&P="Tz`G%wl(uw:/[Ѿ4o`8ACyMJ8r|7\YT~xR9"3swe/;AlP7idkV;|Sd\(8rpu1Fu߳&044d5H~)n-#teWLW*Ͷ0&MA3x!lZ_ST4JC^0o 5`i윕&Š,u-lGʑ|}'gXs\@#+^]蛆 `rs~MM;e~h8<XjpT^~#] n*iی;Q#'W6W/F"Tߒ^#,-ʐhxK Ҟa%TjEѐ]&ƆeSxiv!50a20 zLpgTIz|(_sqMvr A8@0HoK8MgORno m螞,'+;}fT|DE$<,^dHuŕ7LP]SzJ 59<We!\W]ÿǧwA$V^)#KksZGD߆jO i^f ?ԒF%κk=Q2yFo<+|ߏzQ,+\\sH#q!p!g`:JF^`6R-x@byW3o^}u;S}~iп+IL"$4tOv<9Y͊ Ł]QIyw)CϤswc 42)`Vl׈B1㈙L.IzM5cecB9O;h l~54Ea2֋ XQn3g 2hga]vBuY˪}aFu_)Ǔ_gEofND%$K|%r0Ἤbx{Hm&^3o HF볳݌-\zH@BauV~3T˾_rE[}lFp;~,l]f"D:!lu=Ϛf[$ "ĸsxk r2koMC ??;5W6CaT- lRpAtDUy"Pָy=bAI㑹@çJB^ϖΕh :?JvݐODccV3ZuŁl.뻚[.FO^qĖ|7#"o&д7z󂸁Ur< Ƕg2vCޯ^[L MS.Wsc^YQGiIj}ϗwv"+bVQzzUAѯt6;K< u-D]8ddIulf}XЩ v/81=Op䓢Oy-czנ.@5}8clT_D3>ھӫo,.v 6c ԯ~R.Pv:r~>՚4*{tGש% ea^fqyDěGkxKb-"9 ˷ E}W1Y,[\Qp 9LOzZ(-aظVTO߂{w$=Մg%G+M7 6zuD鴐&":2~v`Ӕ]sF׊vבh\R7j ˩VXQHiجgacb4qXQQ.;&տ;3$w"ø #.ND|zda` |"C%넼FҜȾ#H###g+fy7~Xۑ W~)rnBA3/y.e7Ԃ]0Rq"Jby3a{n{++%E9W[w\5TD Ux=F9瘼`B?hqbwJFd."ȥmjHQVwS٥N%BuVbNg~xv3eG׾)aceC sLŮLkJ)r`!%9oK\Iz;5!ÄNh/ l-mZ&.R0#_N AۍO'A&f=_k8z>0+]E7 C¼ Knah' ڈeї8B.4K5c1}bޓ xϢ3<FgaS%[9$8؀>adD~L;Ҿtax>&ڊӰ=RF^Dú&spn *QtkzhiLN=fPP(\Z&]4OoR!c=cʧumL# e6+J>+`hBsuIblMO_!~!O9%Xw: uʘ̓,1Oɓi.w4^W ߼sl :RA%='trl-Hw75%.BO5|4mr8z@Y34+iŘV%ϐ_S3lɨF' cRM~w-jr,UG6,ewk<]I{AVcӝњR|HcbD|བྷZa{Y:,]{gT .wnOШG;szT$1ѷ~t7=GLu7<5*KX0v9zǍ\\ZEAi1G>ѐZD&^zk^ksHq_M3n=TXO S a6Vy[2?‘%e+ KL ^v/E`벥?GV  PmC:#Br"UuU%ʸGhQ:`6l਎2k;`RMC]‘ˑ]K̻ LL(fxq pK{~iK\ٽͺ]TNO#rI4 ͛GَB8x#k\vjc X-5ƬZ6ryčNR5]iUoZ?s"V{R(8!BT":5:vd"/~t ✼݉n1:\'EW`-Ia!3fq;`:%ƨ~.)0<EFolX} ŵ m?l@RftG{–`7.ӌig֕nc,QSP{LC#"a; gLS # 2֗9:5a`3S~Ȝ D'8gjH5z6.-jCWmt3to l#{IeT]4Q>&)ʂ'n ̸nȡX`Y,21 >_ҭm[=E?}ӽhkL3tymVBANUGOU܃4w,&BA|K)o_ , qpÍ6?# X~& ԨÇij@t[IIRt$ =NC&/= @#8唨Ӷjs}ltd"}.YǰS*+'94);]7kX$3S6`XQf*`>GñGB[jKURйaGYc"0ݺY:OkNn/n'x~;g[S ُ P}ۛu#ѥe%#9gM_XLFq7#x|AEY\y~}[7#WQBR%0x͘i&|ۼQ]$4ir֔BwVH# ~ .jX]Dߏqm-o4K&ӖGc=ͩ M?_דIDV63۸mc!hؒ/Q^zC(&eݪ15&"(@B pjS/F&!= 4H9}礪e$;;1*gq%|>,xbߤS>@SjҔFd0w'09rO$ް$!m>A'wb| ztbdnEcݼ+nM4^h(bƇP CՆapz⨫i'f('YJ\4km4ɮ8ϦZG^H]ӗ khFc41Oĝpַ|DSBxfo w eF8e{\+3$ѷm Eu66}vמ+2aPdvH#*'wf(UU縷mȷڤśuMvgGy`km Egfޗ{E A9lva[z\H=chDIZ4=O!W2* ,BFTuRTb9w.݄gRwZAe8ҵxA_|3[d;]gf">yg/x=7PznQK9#{U9X:VNcFB:b c1P7. d4`> ;0&*FlAJDFe9uCZ4'OHJSF-L//@j_/([dqJw4K=1֕w&W89v? b6x>pvƗ |͊ml飚{.,7*hhƅDl$qKVb3)32LQɼd 10?e2q' 2 / G] }:C0sW.v*e*+c*o=2(UA'zB\)@R0ݯwD{ ,_ݦlofLJ :\3}G#(Όf< 罡t09Sn S/.Q`F̙e%Йީ'#LTƶctv#K@>m+ p2\x wgyJ&*U}^ &~KGDŇA 9S4 `PY~:6D4dׯxe[ȅcdF M3j>Q[a>.WI-TJfu\B[!AL{ ѻrco7 @'-S`.-d pyb3sG\4]RVx6bqeg0812.粨ЪG q4P?~s(>QI(L1;Luh?R<)$g1CNBWB⍯oŴO$ 0mWEET $ :g/^qByn@u1),,ú&ŗL/f0z?Zى BL!#qg@;"t:cVhPYuIK(PE]LJ!>d˵U\6J|nifN|bXtWe-F)]ii4SnSt%&wB- T)l\n3Wi|2DBMy~hD ̤[j!EywXwč-eq?;bq0 '/&g8gX ǿ-+ {ua^ =g AWuB^r20|E`jR #TbȞmzBk:KQMx\ڡ)TD'|9fn[BT_0~C{\xTLT5_wFogl{H*HK` < Gк,*P_ilԒ|j n 'ezG;fz ש=Ω*Cn{H']c a'_e]6H@w#kV`,pݒ">p[dH# iO2qdi\%&Izm^;5ew2X}%B·-z?WtlG.@ @lЛd"jB3x92I2,we1R_ NNMeԠmZN *xapղ-@9ב(A _ }GّaǪVmTaBK6']$N91d*eCš"?ٽi/FUFVYz`r Pc岎%|%{F+rEP򜼙gY{Eeau *;6vB._)_׺|@?՘ P9&ҿYZ(>nIա,ZJ{TjJcCIx/TmuSl֞z_h,pA忡_ ?>[md+o 3gK3rNO5ӢJC!=EszG i!ҝe,ٷʎ3hhfVPNavd1yA)HHuWDp>WHh%& Е"wb=3wr VMlՙ 1?\bH&py~v3i|Q,+b8 @ 9шRHbA§1ݞeKCjpX0kXF8N9k6Ҹ\A8I=Xj>I }Y"7_AH.hV]ȣ![=C5U'o ~BpCm1jiQ)ibKD&]W&̼|F?@瀂Mc8 KmUy*NTXN)u3m; ! q[C4#èё"Tn*$ASw>V&-%/ԇ,:ڃt*97v> 7RRݡJQ\ɖݖw'.dI!Sz>lT~5&8"!sFոAG|N2)91?7@>ɪRoft/͌= LM.R7HpoWl#ؗ#m{t`% "&O:HTxD4Vwqa+ G 5h&Iٓ Iӷ", #%v]%ͰoW(:% n]}e-cD[W%T:ctRPre`FN(z˺.6dRIA T~jCÍHd֏\ zmݎ Pb# p1XjL&Օl;Ahx!d<P[fW^{'!Eؿnܼ u{Ȏ^L𾂗}:4e%<6xP7z(JWA5.Z 7'uU9ffCTY.5"m]]LFFf o"0Ƶ^c"$ LSn ̈#>lHڸ ?=Iq՘5tW2Va=J5_8PP?4"1nW;aJvj4a%c,B<vuOK,.M^bF >`-~T@&Ŕ,_ E?g9T-t|6(CC6r؟Ue82)ZgAW ݺ))װ2UFW@,T)in.6.<38:9.,r8K9}"V ZCbb5Jge3M 7_E )[؆ 'z& Iu5Kaf K>m` znxu2Fn{MaNzxAu[<=5YosgX;MƳrfEEo 4s6Q8P60^-Ժz[mrC4p:i^c:؟}Q6qr"l yj-)Mk;OE}f[,DoeB@=Lp;ռYԼ3v>:=bt(vq/)Sv3rjCZq\!K<@a@e| k1cUa*:;XOUf{=F*۠[x YvӇHF<aPxCFpj\d^)vwt'!k{LvR1Dz# di%0`/H(lO2scZךGV>ܣS2g 0!vqe"RO^8l*7HfQ'ꈡ*HEޖ"'EuЏmL>p¤9[r ]|ZTٰH9'Pl-pKo"@v[> TB w%*$&.uDt+ PZhSҘ3uwk%3maNtCTÆzDya(NS>>]kNܳ1/[Z܏'S( kj(]g_ͮS?=Y c'aFa8˭]qe`d͕3c#b3֝S7q")]KB>3(>_1&]c婳pYnbaSCcz(bRod5饰 x=F86엑>`Rm,B x(; ~bTP(LpC`(Od0=ӛAx\H^(:trJ:qJ^$à|,$Tp!oB&vsah4>֘(U_Np#șMCPoL]j-b/VE(l;KbCN(Tll6 w|Y~]}Rd>*%3ᘀopwq)¸{m;֘(tV/7hIK}j!RSawԋ "J%bIxqpL1~'_S#Y^w2,cxZ{:r{X{=[oR4wL ^z&}!t :bc;֧L@H޳ӈfbL5DhbSG/3< θ~O1?t+%]wi^Vy!"$vGhZ nta8 m\m7Ǔe%#GF$]ӢTYt ^3i:Jlv[ش.6K6 ViCz ؀߾e,eQ#Y&/gbk2_1(#F@tv]B"2 ;j{XyRh@Ie1}a( w:8Z  q;9"wmsxDX+-t;Fd3^ڑ;3-KUİZiD[|Mj;܇b=Lk=MoLr =bZ2ְOԲWUuoo;K?r;yS}#zI'2,c0UPaqyΗ ZHp mbPJkCA`:(S(UFB"e84-Qj w"[V$BޅNN = fSEWD[d֒#KM< ƺ͒IoȢ@ 3Bc22ek۩ s6)4>U,O'2?< XE솪Jiᝦ 9kWЎ߀w?2;5plwSu) X" /Wş) "En(ӲZAO#OILO~FLkC9薦MU@^^jX ֺvhP6}z";Ad|L+z/|Xc ;ԘG 3աF2'F>~Yss!.IqL'Jmo:;7Qa)Mi0D?Ua)"&O@Ko CȲLVY~i&6H$ v|y5@918SωO-d4C=]4 $fHbKC Sx\Ìe0RS.|LyX)sKq(+duAXv.%텷jN4EwzǠPi~#{w_z` %<;O&[k=|GNS%7br4ue¸t$MA 73XT  ""_ ;)sޅxj.Nw" {%r㢳oJYt_? Ij)+u0pH~܁wo.PץJsЦ,0m_T;;lUySP̿h|JBy":׷#;^d/Ȼ xbIU+Pi K;]|]U!BrެM"V碼C/?B-fls:76:RB?\0$>1T3b[rȕ 2G 8߬NMX3h}j&Sx~1=3DAV υhg .F9+~'\[_4XLl]P^-΄_'f( J) uwAR@Obm1 ںnE6y~|>"p }93qRҨ>*"; ڇuvS;_ǖ8ps94URH&ӁPky; MZbQZQ 3rziǢʎg'rFo]FyFocάѫ}:Mr{:JhyX]XzoZ6 GQˆ8`5~PNrPOߨd9u“R42kf -1gYޙfqTa47=l6 USM\_W3CD{+ZT:iCp=7]7<iz=XgG̰FyAnJC$uG\9+="!rr{2Bv*Tٲ"!G@FȖJonkkD ϧ7>YW9a@v80U65ymhDY]Z4ynmc`Wb\<}Iِutw hLYiN+G:51S*^D6WjPVKX"ӡܲtv'Xg:-6ml[EDiy9x%uc͟~ Z-}MaNYO(k; f!3o„JnYǚ̓ƨRɰ?ʊf&_Cܗ󧝉|.l~\P"0 HI ê$bRtS"A M'M OlѲR~>U%RMdH ]pƜ5BiN.k>Qvr*#GyC܅W3@Uzhaxl?ԣ$؋Dm^mH2H֥3nRtHyů\1vZ2cx {Ɗ/O}A:0͐j{ڽBf-D qWR-N Y4SqxaaZY$73t .{l(2y4XboKzj=:vHpVb7mĤke D݀UF[jP&Φwh!>6%wV66~]-ڎ.`bݮ@= 5 j)(88~ؠҠK~iK__ >;v "0|FyV :G3lW?M~%b5@?q ?R16KdӠ_f݅DvYx0!SzͮzxWw.@YE>B`%%hd@k='Z@rw}o: _[V$\0ellj~'/ǦJX3 &,+V& ˰\tgyJAn;N/빎ͲV}2)bx~x9Ȇi*V]; &9Cy'Ua}flƃ2#CgqWJ=YĠHI/WE1H`UNm4&uP)6ĩ8zQxPf .-0`(xK>&ȈE*s«~mO[C;0mڳ/;Ǖ^rxiPmbp/xZyn&ꔨC{8)MЕU58_1oeX/v&E>R^]UY#6enjwbUi:(i5ho6\2j947&I! ']tӦ"&B`mǙgm 9ZW⋭ 88%rA&≉))Q#[\ejT%HgVif*"X9ʕF:pt*d.G {RY,\ ѯ*u17D8Rwg?Ɓ#]ÖR\tSߗΠ#} l$bL1MXԁGA|32"a;JVtnSd* Ya3Oڑ!Y0|—@iJ$FɲȈ}@`Z?DufiW/s~Kdwif+'8+f8Pe A_#Y#!؃kCڜ Y*؁x:Jyq+Yr3%鬸MH'i q oE6 MԄGp^8mzBgx 3 /LXȵ W%]]:0R>1 v,52 {!4YȯZ 4Eoi偩ȸt)xo\(bA!Nκ ]%ҟݞ3b,{={mpf^e;,D1&$$aaM/Eyˈ4v|I0&XiP䑵(~E f}h={G>[c5*|i_e/t֣"]6v]HMP oUhDjKM\+}%2 ϚܿCnm**d¤{$4o$υ:spduQe+vЉ>&.. ۂ2n*ߘuX7UjȱS](M.FiO|~uYV)ML/EΕP8|Ea2t#JiRi'P{.i 0P/_gA"iĽN)w҅ȌmZҊTo8 / I\RuZܵ ayfNj4vjB?>=bةgƘmnl&ݞҼ(l$Jנӿu_;b-+eQEn0kXRŒ9*>_&.dbphtqm!>_1#;wgS5|_EQ&|ٔC T|[UnГ-xmF"Ԡda&z>o 2>!~5`t-xۮ.u:֕#=-u%o8rQ,Fdr /1/R9 QI{0i:XIhxe[W|TF*vp#՘ DߌRJVM[ew9hԷx|G~⋜W&&o ʤ5^9 ^VMxӊNִ;AcG5t.']0\  Ёiv'ig8{0}}~n x70% #^t iYœ2Tb Yٲ%*5z}dpXtnaؗ:J}ZQ(ă {f>=χD R^GancmV0vylE+Q ?MkWvt=*(n_b-h w)0APFU U|g5'iqֳ`VQ ?Wys,Gi ̪l4$j;KasfGAB@ݗwްt\7jBQ0uF,F\XJ ǜVCA] K:'m`tpJ\}&Hm KlH}+OaV>)C 2nk-x dޓ[0K g њ8sե$S hЯTtrsj{.I;KR1wB&rc!eymYeE@U}NvngNLT4L_Sp4ԼAWSf/LdAӅmlZ͌hKP+*}v= Gqښf@Q0kdA o^ ;*FAe (`1 E1g1|ҁ3uvBLTC  b&{Q2b-]NQĦS]%53Ox :/30D:J0qG2%)'3ƽRSgmlN}w؏y8ASKP&ՠ^1HA"ḗj@F\I7ǡ%(~KOsKY!pAXU'))|q+/_EXnP%J[JT[aqnXtFrqv9M2pp|ҩlPÏ"PR="U$驄%%HhVڈFoRY {Fi RC Ys LjΊK6yB(LZFœ26bPoPLmGZ׌sE[C߫jL-|Z7dƺ_y5^Rxʥ= a{'<}S9:ù/H-yquy= Pvp< G ;(od$lKvfq9 QV d/*Vo܊JR An̛ao^Nd,N\'3-DqjfR* t?:)GP8Byh&=nHEb= \m$Lee0Y;oty1q?s.H̳! 1a;&mFl(1N3//n[E`cJm^&i̽NMzh> MZJuth橭 H0F 0Jٿ<{1iTvgU"wb?Th[ iě(|/Տ;{ۂW)=gj\|d;g'lI~OFzW{"+Ш#|Yq(R \ښ+ǵBzu_ Ds27c` i| j_y⿏j:$GUFK]mN`)soCx%_~{DRm KUDobi|t1[9TVOܖAXYmܵ?w_ VYhxe7ZvAul[,hB/Y$[䳝]E? G+Qr,r}=ɉ7#5c? ^az@ bwrI D<*F ^YV)h(nG}_{0=4q)w1$Iz&b;aX2mҊHa)8\!6a~ x8(X'ksPnJCirRzfT~?+_[)4/PX+gFy2k]gwfc ,wڼg-}%G+7{]LV/uyyy^gTJmpW&9+Y<'qp -: _;#q<4,S Ii)BEiӰO5nZv"FF]2=+a@ڒxSx) 9ˆ&3_l}.zl꼱cs78/WϑiTA-.%0j/7T=c|0V T6+2\4 W&(rLn1Tz( 9J2ηVh7*S33ƫ r~Rj^ V ݝ&"#Dѭ[1rXE&lB1:Ʊ_N Ot4pa[._7_' z9S.EH~(@35ڂ)j5a#$~ b^M#_:FY~CI>Jp_Z$% i.6ɔ;R7+#fHL Ovmm&rh~y0Y Nށk&8 A)d?a>P5pzҒ/9(/#|/!%Kk-RxkdO.2dD(l{0vhy+W[FpGz6G^ڂ0wky4Fecgq/0=gݸ ͯaߣa{AűU%;D~v{.YS8bթ؅zؒيjܖ ŸܟX_s737C>[bLQCOĐà[|'1A4sWJ\#vtE?f P#OTr|AF@q.|R~7LTbP3I5MJ9.{xs/w PhxX;*՞!]5ujLD@v?ח%('l/Ӣylr"*3gh_UGsG. mȍz0$B(/zCRgPT޹rjLgIDb-$X';%@e[ hxY(M3M5 xFzQEt[ޓz9 9kjUZgIxw0*zOXOAUoWZB{ȸ@(MSEEy^ tLΨtXEʝ @R]&ENQso˅y$Lw=}7*Z-Sk) 4XEc+vd#=OPW'܅ *XH3֢d3%i^ QDIˢmukh {ϵ*A!R^<!crg ՉG5?p){K8F4Gmhn-ܖ6:,lis1Wۏ,'w[ 8IC5hѫehD( n:JXr ÆQAqjl-l2܀Z%FbqU<QI6ܣhcYMxkKt}B q~Lvdy|7\ C]jCed<eM͗+lj;z ix6^L1H(wm2qzn2 T-І5dJ^-CS85I+c߸ཏx"ucU 6Քp<*JF;mcwpw+L|͙-ߴT{/7^ Ӑ_ ͋Ҧ>ih9]k6wW]OunwVՃAV>.=9ihS 2&z;hx@NBMDZIytpbVs̋&:DZ $M6|оh@ۑAA×{$|2Ɛ8lBil@7*֊޸"Ysǩ?ûĘkG<P< Eγ&ltQ ט Fc;E13 SLz)~$T 5c%ЀЕ?W*@"+e͠j2t|Wc/B8BK{m7 GܣXQr -v F0|Al|o]X]<%6NdC7N{${StSX46"t:D867UO%u[9:cK"4I ٹҸ[+˾xa QGHUxI\ȐrAoNvʻp2\0 Tk=b>6<Y ~ifJk6-%cL/J27T_\R +j qS, (2ayvPHWf>}8ӭhe2鋓fodbf 7+Cz _5ue :RϋY۲o8̮qn8Bu#5)0P`8ˌ. +,a+ma~i g7jZlB,_(%g'Cg} H殺V ;.#ݍ:p!8{L=sBGH]cЀhl#;yY+@;~4oiI>P>ȓIjt^)r*Eј)Hu``17g8Ql˩ڠbeK*8>}7GX=Ǣ_j%:)ߦzHU]IalHVw+&s}X92cGa:NŤz_joNWvȏeH"ppK2t\@UX*คz*F' ͇rjOTUw[%U2N,0$73ڍcqu\?!E ۿj?~ph'vhjE(1{p7ls&P(&[|&b(|]XAK_Qsm\wR84cQ2ʣ|e\ @cCa+9U[[w-#Pzt}ʲM0OzuِO*gG052cr\$5AU]c%+,Ҵlu#`ɵbU?;~pB*JA\ǘ5uzj/|Dx_lD~O XgjOFȩPP: N `vQ+Xt2Ԗ]ehMx'es݂AHT(FɛZT]kswTLz{0 Q 2NEXp%$y t9x N~*8W|*h]+X*8UA|])RsP8e (಩&rTX(.ess@bm4υ4؂8#IMHv\7=J/9U}\Z6yĕQ1rt e-*>}tO1Jl0WQ*\N2{8a*pQ}Ԝ?\l𻌆٧~.TNL%u1|wS=)J܍zKmsiqGx(DO~ۥ 7؄7аTr S`NH )WWLN8rVfzq̞EisUn/ P ;`4cs$}CYW."){&FGO:}l@]{ Snݲ -VÅbz:VeV-i>硵Zki9nʿ9CqsOد:!*rM^Nҹ ih=up'p2 5vl'_IHc(n҅@Ȫj)_,f!';8 /زLDfufMt*zA y>0X:$*2zH#$Ŗ@'d/?3"KԊMr(޿T;F\ԣл"ySzL0; eyUbKU]B~.(Ґ%|yŦ5~ئHCI֬<=Pa=OQNjWk0G{gKJn>9qQL-û?CWj8":IOzd]Imt^E܃._Ǡ0bYj0YnچfU:u.Toe?~T?0" k,CU`f-ʫ:R6 y-\ U0.)3G9E{i)>T|?/-h*:4¨$_*+5klƅTL_NgH;BV4居oX4u& lERvMv_OqEm,sg欔z RruP$?B{&`:9>sgfG{ >,EъVs7~4 f؆Sώ4Qp?OU*dD=] f!x&iphŵw&OH${yb\^mp%5Hn>o;mSWSȫΊ^T۾$?BcbNSoT$eJX8xRx |nqt+p!1Nצd`V" c! _*Ƿ'xn7eBc`._/\Cg4ٚi!d QgIL$8w 1pza-Z7 ._[nrIYGRЀO$3o*ӚCi򈭩FI,x+';T[r!+[=5NFhz"ޘ&y}~iL^~,_WWf#(.*4[;ix.Nj*$=kkq<<(-o!JSfߓ:9I4*MRNj8jBr!iCO"7<АՕenŢByc"'Jj.`6 )`.Up##VZ\ *pqI;XVဃ 73j`[ZxIBZ!Dj;iLJd#VCI[+f)Blo76U]97wEwfI{&RukElCD wYfҁI!R^B} BƬXwNQ$J "т6%*x<\gwT_pŏj< 8ljY2> q_߳h#ȱ{!ɽUtۢ&_ -C9,&hɟ 3Gn~t?˔pIlnC=dȪҍh7 WXjHm_J+lI't0 ꯇ[эzʏ2,=y-ɚJc<)Z|u ۓg&Pf>I_cxM:s:GY |LelvJ㊶%b~G&x^sfLR\$PC50cS'NxN% 1FʿO1"MH6rGd-=o AD8xJT;E#o -7P_2M— 4Pl^˞Co Psٔ`1ޙdwb"/~G! ɾ8&guR,>ھ5l_RvL$z{d vxӠ 9 xvM0!UUK⵭0.V<*J"ɟ5Yb!fùֆ՝8σL[֩zFPM]&iZ(799"0ycv} 8.B׏8а;o]GªeBq-P^T*ٷh UB|WLgFV3^ϝD%< X@}'Q5A|~ݜwIp"|Smct p03+)!ΉCۈk\Cᄻ ӌXF@'HU}7ĸ6%uiS?c2#RrHanY^ܿmMh ߇sR0)zU6ݛ(M3RaL.!:;x{8sߐ죅y/rJf؊/ݘ5jϼ1\q])G7)WsZNl9cW+%:y]8&R!jfҸX|23#!_jbC{0 DifZ 0QwvLy -{7^AY?m]#5f)qtmR]~081p(Kc5m5A26Js!w5Gv9A@uZ9Zk#&c; 8͘0aA(uHgF`|RW>k~r\b+R4D &|y2$o>J3 ;;TWcQ#{¯)d/<@ugJiQ: 8…t}&͹W@ػ=rTؙ̀/:=&,vۖg/Њ7q'7B%{@9mn_AbܜCt@zpKHBVEpt铏sy͔ZDNlt`2c g9mZ+f&>5Y3eu6K' 1xPKJxy K|VII~&UǏ?&D8Fon~,ɭGsӈ:®hL. Xcis_ެ"8 4DŽ^^>N'19d$h.1B\$t4~%1vr 9fQ8hq?\2Fq SKYL j_<[o[CU$rU@wj{"\TjSEw^1sXɝe&05[-nY?'nO%mC4 ]Y5ʀ1/FD&g nW/'%ѝ۩0;CL<b ׻k;~qI\7]N߫W-x| PͲyHtd< `!_}y6KC`#iEZ{qN3~&`:"6}ՖeniˀjB<@fb* EVpwNu=sw;SPr7d H1.O%xC&%&`!HE|OO_?|iS Ŕ!NpmMxz ۄQ /PK-Cj~s)E]tsQGt%P:$pKxO'G`V)ͪUmeDoEFɾDMC|fО{y.p 'SgUt0$V C~ y6rwEd (LlN }[򺄢4M![~(^ˬC)nn" s2x"`uMA>KselOFdjJE!='5(>ҍiV5J |, Pҏ6DeGX|2 ([q׾aT!َȡTx8{;U<qcMk0є6lE N1ҷE'}Ti桃.[3ٰ G@EZ/$ !1CեMz.ů5RS7Tx`4ˀ9 u@o30t"oNMկP׼\p w=gUXlI.m3_֥0㵶TZlxK@'O}DŽ.ruwr3!i Jy (:{6{5d_I] _"H#bNՎ2Z4&H5_ɞ c1d+G}5p6nuY֪˄ GT} } O[Թl?Gx=^ցUgV֊0\=BHKtmyG_9Ys4 x}mJvcl̖7NNyqܲb"8akq!mQj- sVH*QSDOuD'vj@~}i:[[3G~ CIvT@W,u82"_0 cnIYO3Zf2V] u~]ƵWr<3;-B_[7?q`-<%HԂLu@$l^5cNjG!I(Tr[ߴbnA,1k>tc0Vۛ[!k (g$z,K**1qzz.w̥jua Blho%YTvhY%?xo`4ꅀH~Rr[*o`:9ZTVKW^NĻ'F/} h^zȕV\hXq(wIs-6C2؜>Bvr=BdG[LI"Bx}]d3Ǥx QeYn!QXm[5zy#xA߁C˅9L1JWndxǤ{̼KN2&hݧ|A8I!_Jx/>/Z>E{H<#SԴ'w~ms (JmjKqs$} Xkqgh]% qu;Zw0\eGd? T/k(3j ۈ!P믄,8Ar?XaLG9)8NCٟM@&'T. ~.CMќ]8h9]Xv<w Ùzwef5PxJ\x^Ձtss= Jna UƘڜnӀhƌL9zKd.6T`E`Y07Y];jd'!93-P$|Tte:m}L/ R &kAEI:.ްl;CRohEBf/$8[&l-Y®9Mka d@4_?)~-xˀS 113gX]<`gI] *MAAy&b_UEF,CPԱأ575/ 5Ԡ!Y[py+y l8x:8sy䧿c%V[}HI3@;7L>u>on{3>cԨ.x4:E=f1RʧSFYtJed.e"GKgE_bL̨Э$ufS!]R3aXFa3^DtdK P%)gw|E{wPbEn}w\ Pc.|'ϘD*$o!w3p{޳`DAyZ)-AIŴN5cՂlh lco0WH*>MvDtۖza L~bR(A@Jod=Bx `Qc礳5A$WR BϘє/7sj9GgBZc8b%B aGC*T:˝J?ASjil+' 1T po"R܂h ^70r!"rz0w1/ᡑXg\lBJh4yQ*UK+>]-,&ǘ48Ep&a(mblUSш҃v ˢX*_+@gϹ,s)HEb_+[H?n۬NmpA-Ye3|EWq * ✮b,P}=8Jw!VWʰUdNGSr|аkϑ ];?Gw{*C|7* il u4ۿt@*p ONӾR6^{fxdK.+|Eӡ{R$e[}u0zϴ$$:.RW3d[E!6z=CMBΆ4;a_*>ErBظ#4fa/z#YUE@%X:U=~shQ n9N:N_co%g9mvDUhKL;J+ KC2ʰXJuY<4?kP[v$WvL;Zj>/~6)kd?@zb+340"AXjJ`m>/^[ o|[fYx?'DEv2#idDkfL+08;hw@Ӳ4J!^"ӡ{omzx=LJCslD @En%atEwPzq\#xdB, qrE6 c &RIl%syPlȎ-Z%@ŶGЛE/GZƜ >Ѧ69ͻq.KWeQWn`KW&/L`-7#Q_ _mpX r&А_?>6_n'̠m`]*/[CUoz 涫i4VaQTs[=So{,M%z9祹Kǽ_U/$D(l!Qn/Z/L:_TM.8q>T8qܡC|)?9֣1 Qù3+ShխR~>xZ@[FUԻ A* !ٰBB l&1V?Zz| - ^>Ș8*/@$_<١x `ú:.-jںP$l9#+ +^s!~+ڄ˅cR8Ա6hT6FuTqb?+-j,O1~"|^4 &m$Y%VTKpw\rꔂAɿ),;[7} ygGc81i<:%$Qr)_!nȕ.>a!mK<"VI8T#p]^-i>)eieYrҤe--8HQ@bCSGIV>j1\X7'-œb@L2fMRXܧ*u4M'am[LZ`6 юi֤DWQyeWhnNvſj()F3i5F͆܆wwy:z5-]ita9m:ooBߧ(KٰPoC /sG81&N ?, .x<P>X'V8(f9+Ƒm<@W] [Jj>ح= |f~-XP|ءİ *VseoA< u(CAyQu;-"2x@.Re~3pV^7"FDOpe\KwٟYD晴AgӛY2jWuA8>F؄]xjha (Z$Jj)T~ߏH=_L s Ķ߂\]@خTK;P!֑%8 [G6jY >\QZ zSXj a+8\*R&c${r18 f+uy}Dٿl닣H)s]~ (/hOf]0H vu [ w)(VB=}YcZi^kyc*V_OjA+A6EC*ʙ 7s,!F`-+# :uR:!f^[HZc^lk*,LAIe&'D:bրao 1=iil4]ONK<-@{0 !OU`Rʄ!d>!)`çpOsGCmOO^6sG{|&ݡ WFY: XN}i$$zwE;Rx:Z6 5oqT~TMXJN -&eͩKL@ tcCc @|ʭUQɆ`nMXQg?`ָڇ&r8Pt姞ٱԺM_qƱ8&>pu~-jDMz/5]Y; Ik؞(ߩ= W#&{?_Q(Of)ؤk#jBc-^7rW椿CxyjaݬS+S5*&%iޒkh/%:l)) et :A/6x9frt`c0e f^-߿C+' [~[GBv Fj\R-Ovo[Bbf+6u ! G,,K̓O}t/&dݾ͹ T-xsN˰U˩@UQ)E/?6F_HoJAvݯPٹP),DfLtKu9DO8`egUkPx{Ik0/WE MWU@2NhiݳPdM1 H&wHitBe$bƧD$eDහs.|ʋxuyQW\l&r? -R&edЄHan' ] FZS`- DqYEԡ ؘA:lD{d3ICZdy4Ff}oH?;6yyB yf72 qoЮq؈(bv` DΔ@Y`{Sp ^(gI<ʄA/U.Meu)q Y{;#[va/Z>/ޑjƖI^`n-X ]I2g;"![91&,AO2G`@#{#+*$E#-,^}loQ"u36&(}7qT"PiB7I༖ר`͞Kp)^P(pe#_\Bt>ѪHȬ=-L3B#RQ>&=?Ố(Ėb9@OwL'RO/}?9Ǚ 4Z1T>LDp%d; z-loz^e+1} ҦfկDmiF4c@f Z)gF 䀆j9cL<ņ׫,v]8*z}߇!r(3#(XFHdpԌV @-Ϯ~bB&vSY!ṃalbX]2zC=yn=fqP˟`r.uq[I1 z1m!on&{Essah&I8ujOӉ,lIu߳4@"B. `ؑ'8$,XZvy$uw3C7bx'0ajamB>;|= T~ZD^.K5?(8jwHcV t_!r"d<3^"ˀNc~{/#uYlF4N=>ڛyG1)2H-B.䃺u4~Hz2(iS"ix?m\4bNz-7dWb;ު̖6\Uw)>QKJ֋CJ@R@tC6 uVڛ- 3QiRs=M{,%u ٴ] 9xo$(}*HbzsFIcYN]zF[Hgu nMshc_ k9uKڳC3u fgFGIgnEr(e#d= 5YOJ$G?"ZqNXEIvS`K[z6з&~nxPzG'B6Ox#, HFQk)#A|ɈHTș@,!E~*\,t}a!訡7J=m_RoTT=I jl {ek(𣖶J[_Vt\XQw,9}{5;*!Tv`.j5>68F3(P)W]9tT|3p3E ]rna=VCr ח<>.7BƠ^bۻKۄD T38=,L/7n)݃z+׎CTp5^\l 3jHC6%TmةLK,,-%Gj Q20&o@4)= < 22ב؅]Ŗ-Uu&%bًp[0[ t]x ;>m%EO/:>Z(WwdMҤ3Axex#*{L`X'C '&S}O5no48t̳oz)y2yLHh=iLJRtw]]KF44&d7S*`5T&ށzH c ҃5=`8e h}]BXsn}I( qi P[Mx&~89m' tuD]׀n!*E-wWIʖTt?\E gjٞ!2)<~m1 sOrոxNʼL&O5lk?bSVͪ֊+>g.d[0hBX6_9/}#/D&=aZJX9C_|vLr*І/P9sfc^.,SDWFUiJvq]?3XcF+O=O<۽ $j}Oݎ:c{\V>E^ݔa?b6 _@sZ!A^}]9HbLa#dEJVϙ9nIMoũBn@?nFm,ė3n|C"zyݸפr腈a'5 +X$6_J*yx䎺e Yt]*̄ka,F!Ei%*9Aw| Ԏ5nI^_?0hq? GmrGhT,o*r]rf_Cd7cqY?Xv6NKgz Jc.7'<3+#k^cy"?ոwÜ,y(فwd=|@^vĆWc1z˵!Rz|񝲛$܉1`IKCi/>N6^`̬n$P66dݻYL5K여wBwg{4WbM;=%S' E$JmiX lќ"v4)c]έ.}q\=,pXЭ?w)ˡ|KEk~V|޹s75\iȖl4 I3Nƕf!Vy2{W bMJa H ۞víkPXqԃ{aN&gdg(K7x4b%vVr2f6/@E R:iGi.܈{(V`E*@!GEUTA@ָ_Dr#@fNJ[62_qɩљeAmM,B'OWEMPd@j,b+#>HJ@&gVs+}-]U2J,EPpc t*CT-yL9mu*jm6b{"1w9Ga|PMZ+@nMk>op[7#.-%۳k@ǧ#1vH4]B#,8P? ֺFmS9]EVB)c֩}x(z&ۃyc9i"h< xOmk-k@]?5Tp pFGRfgy3"c Ϩp, y(ֱއx &W37- 3QdÒLǯi"y2}.@ Et3QsnU\;ȤZtiCQez5Gm2JnCRNq<̲ }| ud o}N!1;|AeZ*6K jYwJ/P|?5*%^?% \_]֢vxgKE2_p=,vUM}-غE;=?/qLVɚH䘺4v3jz`S i^RBiW|ubsr6IH6)?>`$={sϩ]m,J߹fnf'Y[BCOb'j۱>ASp.+6^ $"g?-R90iz*@UskBmcIáDOO2M D0|-gt 4L W?;|}(2Ty;{Ih z_d ]3[ (m0?s3AಉcVZZ/ƔjD3&v pƍë;_Bj1:߼V"];͔Եt1522uQ^6/Ũ -P􌄕8'JB=npܙYMy[.‹:JQlFa]Nz{9Tǟ-y3ʥ>:z5Lf(%f:aEa)MGsDF!@HaXsYFJPvB\<%ؐ=v*p *Fd}hiDȋQR bӼ:j hft ZB5T73m^(Ck r ً͇7u(?؝ϋg6%|Ҟ˔6]m*) F*rMaPGFɃ/-6 U/B12CrGڰ2fpwk\VL& ;8 Q _vElKK uq ]Y}#o탏wfxIۡyv5H2JuMw=10xx(?89h^->qu>6boI@\HqJ~pN{<꨹VL'%2%y[*7x.$;C5#Bt.PF 6LLRnq0ͮUK2[`ȑ 瞩ѓvj/mPyfQ]M#[ /8}CK b}/]l_%BB>K ġ.GNJ]-Q^߲>}n-uT?1g؀0v+ 2L^`<|2AJt 3x}*lb|.$ 9mQȸgxE90ЀO7BnFl@|*LxA¹і $)6oq2g0hc7IF.[ȃ'x k=cձoo?Gd7LHe+oxw*.?6/oIh!v%JkF,cBmp+A5;߉Pk2<{r}Kbc4F&ˆSoXN%bJvs(˝jFPa\b *a,W-A;ul*Fռ.ZA:̓?CrN":Ч uVLJVGM82oMqjXVU'R?=S&Z{(½ xO`P>f (|>仏Ca]ZaZ'VP!~= Y`@w8nЃ}L%/Z2Њ 穄A}QrG hBEA}oh(Pד3b,Z KRv=n1@ 9]Mv^HM4 ܉ADV\5Si~%+(pr2Z=0Qh"p  aۉ2鴒&$SR^4gHQPI~#WZ#Q9SDOZ8ړuׁטvuV5OG BW~t(e,s*vث=@mPmF; x/T7?]^ w,TM} bI}bȍ7" ( ۃO1/P70ig1;m۳ψHauO6r?=mJU2ܵ $5W 5feW$xw`jV@VF IH$/R0Qщg#LAEY&[F (evQHeYU&fL*fp:(ُQ~ip]V V%Y(o-N?>*ٸbQ2b"R\OGymtМ+ֻ@MJy3[JȰu7 ڭ/VX +FnHqz 5zo|3ڶ(f[Rܾ#]Yi2;{.Gv̻V&ʡ^>&FEEgYdLNv G!ƨs7bZ3Cul!'l@Ͱ "4kJ9Ļ; fzNKxܯ"ѸZ$:WKC [\Q ` A/#c’w¾D_ dBtB%LĈo5VhRIf ZӀr/aՄh\Xu>"Q7 Nܪl炢j Ftq-Tކ,zB=4 ZT+Se- dT !T{._"du+c9?@ʴczON1  @k<w{ic uV8( 7snП) b:Jcͽ &-rF,^?u u=JBxݠH y_?U~ny? ݜ~9nvO WC7ym:# "4l2Yߍm.soAxSwSYjnlqJȀaQ- ~==ו8A}gfryikћNѦVɒ ˂YVi-NJs E-`,u_+WoBĹ #1& T+ɣv$<}7oS 3YV,hEmM# 1>2QCB#(Y4-#Ɲ*:eB[l%1&ׁ;{[{c.XIp s[bgQ$M 5z`+A#sf oĤ`dgJO ә!n!3fJnomtZf8LSrvZJ @lnuCE3YF5B-w:-;W8B2`{ko "Û; IMoo&F 3"4ƻ@+i)@cuI|C*~l7pn<@˭%&;1wm&Ԋ*kG ÷n0iZ~]:fRYW7!7^-Nn7gR=0R>8DPѨY <_$~\z`)<xJr@ DV?>E8!FSAGix|^QǻT,\'ȕ'X劸N PwN  S25c FŻrQnIފ&~K 5zqf9_9I93耹GZz:A);Cv: #iNs:qz"śN:sɹKjv*\N5N\XUT|PUW۸$;kgAxPC_B׳+h(n4ˇow^f ڠ% ƂZfQfլV_Z`+nۚۄ a)o(a}H G70p~s59TÝS3ٲz= nմiz30C\Y9M5dtND()7!n׺,*rJ 酟;^GڌV3&PF\fA6v/x?,;?$Qf&56ayǀH74cL7Í]Ka[)֠zd"S>Q a#T9R#@<1 lqlHn6SP$ *OΙN}}9B$u-ɪst(#:uBݸ{yIh39o#y,8֠m;B;=LbP_-Wa`> č޳1>W:7KDtQXUlkS7ݲI14(`/*? ;ҧ/@/K%_Z¥&7ۍOv E `CJYݸN\ '|- Ő"7u0HV\`>մ=.s<ߟ#`g;ǛрYG-!E #'N٘?I L?13ɧV6@ʼnfaF6J[bSasw'cڼ1lI3tLfY4¾ȓEcBҿhL&z\ 1]?a{_Lv*>z9xYP.:Dv)0qOpA1k޻G|Fqd(h_uq,]ΝY{]CDH@~&1҈N#\֊3.Le͠xa'^,B\15ͼ7? YDŽ2x؋ :VO2F#TVmn;u' MʮG(CF>+ɿF:L.SDd(m)3?HXʹjmⓋo #Zbx> +87Sz~wl%dBUu !LEJyzψU(s|6Xm3Eqx2E߃x|Fboc?x1v?1NnѼ/Yi2w.!d8N䂿87qJHG!#i~o5Pg4t \.q!WK 'D,-Cdt3K!K`E[! ljI9ẽf9}|2i&Zu9C rn\0XPO_Yo ) FR;}ͦM#)`8ȫqY.b:aWlQ9V &fiJLE9Da%ju7 XSjQޭN9FobH]/Ltפ|2e>|'ˣPJF0mGm!r.` V&ŝ$d*^~=G@Q8F#=5$ER^ʇ4ɉ( 2d?ٞS^vo\?%<.RhQyP.pjRޔ/:kݰ<JZPjw .:f7L HqÉSMԚ/=\ŕ֬2ݔ2f>۫NJnLQB?S8|83>|2L=10naٷ3jyFޗ2DrA[X'8+i.3vyѬ3V`3T,vaAzF? h0//8Ѭ$ژI&Y\8xWu)vp8L4C " jhT'puYT(ᖗRhsHmecJcmĥtfq< ufB\h~"JDcˁmk'P kY'Me)q&P"Gp#/4\^9C|-ixhK.F6iF*[V ,\YC.DVp=lmמvֹHMb= i(PUK}Ʃks{Qi]T~% [̅Ab12.7- [2\%|`$bz&=(I599%;I)-2h!GqT^#? Y@:y(A9񏁤z NȧXZGz#>_&q3<UPb=ҖhUl,Y187\=/)W"y5 x 4.CvOT;m{0YPg(}.jsc[5/6}:iq@xx8d)ni d)xe7prճ9,swCv6txjUCkP Ћ]C =Z?'6?$Ԭ׫B6Y8 pӋh΁<Ԣi'fKˤSxF3NoeDs{@Irgo~T\.K_Ş'7(<ͼՐ)s)ePmH*W#LBt5J2A0tҝ -ڟ՛ P\$-@*K&t$6pDdCҝT4@quuG'I9w.slLd}0-Zu6 ~\m|?`~#Ez@-vsػ[WnNڙdRt0\HJg5̓=Y<n1ͪ'`)Z2PxIg{>bW-6!E>F aX#(1=NKQTqvNۤI` k3Zq3{ԜD^reԞ[aN>Q쵑ȋsS!fd #v_| .6/O fth@K?@FܞεVY6y耹>5Wa6h##rBLש,ED9QVVIjK3\np[91(t-m&Lle.5-,k$n\G$s8YP )@˝e݆i?_UjyaP J;M\Xgɣ.mDњPܒϘNGB (SP2b¯ ?xQk%dʵGҙF4F3|%wi bQ=tk D8<:?=hCj܈%Rf=q'+/Uð酩Ox$@=Q,Sl;2)=ma=SVm* <>q5N ݯ䋤'-*eP)yVLa*P;fNbNYv}` mIUbUCKOHD,@n=h8" ϻ}- ЦGSI4pil6ẢC%],ګ\J<4_+AjOA2DnZEl0-ڷcSzWʤ2[Eˠ`آlؚѤ@*Nj 3_BɤOqr8Rrv V΍bCe%^o$l.ӺGF^ЉCwu*į0&Y9EjR="RRv2xU3fvUH2}OxL*#^1f^wz Ud'w-%kJrTd:鏡9z˔A٦aMuz #R\T3m0'?tgP 35q =k̂ sh G8n59cn@?T$!A#TU6l1yvƞ*KdƄMZIJ+3@`IޗC)}h =,$YI-]Y2Wt'㏛<-{$eqU:1$hJӣBH[Hƴj]2A,خ+{蠊 {?C  sm~V > ݚLal~3dF$KD[K+˫xË|[3/J(S *t4۩/ws>/Sl-[eGΏG`is0jj&{'BF.0y#Bu<.31Ը5 Tf5]yae@0&N)Oڎ2^P'{s I)ED'23Q9҂j<:v,~){U\k,7E W4a'E!ܡ/z@=ػb QL9.Р='sjrW*{OLo'{{'75۹2vݪlow‰~ _NJ*ww[=,:X)ˤ5͔6H=S*z:{$"x_ T dE O_(+h HydOU'UޑSMSnJd؍+TqV`U#0ZLi0kHSťP4:-anhN+,3-%>*ч ȊpX^PlK=UuL7oa *ohCPZw+\>,,yȫ?c yAWQ0Nc \H::µH wx;3G<]0$PP K܇x۽EX CF(:@kRvuZ Np:H|7PPLf#1%Hay̷"ƣ+0寀WZ :[Ya UTXޛ[[ߥwMipj%R{quv`l@ 9H(QbO{>:uקּ9J( ͠Fs n4}bEsS"Z, m…H0g=|n9 ᘓbqJ.QaO}YÉEFOTCٝB3(R H%J缛]N?g B!k , M=4L-"Ė}auy|5w/ѡ]4f0]e؆%k9-TЁ_bQq᝼/0p*bR/ao]~tv&C Dg÷-mf1P4a@ ]hds0v+A EgH3h'=EjaisM§ |AUqgR)PQҎ۪h2vbh<ʻ |6$yF-_:;U;2l lXXW6N"Y 8ei#\Fp\q(J1ewY@*YNdm3sWXưّ 5{B/j.^6$j}&dpE 7sN~QF]H15G]]a)\fHBr :l֠&(#DN(*tlbTco(Me|K]:z 5{\ M*gv[t;.YԼxxsArWJpC.XHU(p |w7#tcU֘z'crj|wʄ4TZ 9PˤV}D)uѮ++ؽ\'k䙵ܥǠͷj;\'2ɌrK5sݶ\nDahuX ߹6679\˽N;- $Q*Kf5 a-8uv jwΆzb{64ОS{cX>H4 z1MVNZ!mߟ`!51FZ1g_)J8\R$YҜtZ0±}JoH{[0JGE="8$RVC9n;|]6JN09)k0 =m f*H@)_B_|G8~;.Z Wf@7" 7@z0DXBEMo2%#2KhR]9&닅+_D77yضTGlQEV(k(r,:mg\:L/;iaBJ]bL)_ {@*sބ=G$Tf 0'tVȘ޲,&#Z@ۥKo0toا&C8FlbP . A񘹠M3+8_О֕}E!φL}m>{lW]Pdv.f} !<4VS,^y=x_Aol!g][Z^!߲z'œe2-b!fa$5jS\Ihg]ͩˡ ! +VR o(F2k]ȵ,!!M/MDMJj0a۳˽(_LD9zX\V4g_fPiCL=XYpk.&8kPy`ME06~dDQ! IgBMg$e?ȟ0_0Ƹ7c Jf)g}Sd;Ǘ(*lК/52^,FyaQqh\+!gS9 0.ZQM6^WIi0s,F񞈮4݆}^Y$;}[ J$-<7=OB\o.%)rBCD]O0%kqpGg5Pw^7O3%)@_YN)&2Zz^m!6ܺ whxA_ XFRXY0mCon-yzc/Nb҄n$zI$5' ĭT,{1A}p"g(:{lPLt@򆔎{O-?f?fUn-d5K`/~u&ؤ0{Uč j2̦g79QO@6yO@]^*݄poO5`vbBr N-v<̮+B,?vԋ%0M>av(:K*7 N|.h <:oVl0}R ~BJ4FB9k06փ*Y"$7CЁ>=]gv/cwܿrXg^)P#P>(q[ ;Q0f/iX Ng?:xl6^9INg)#A6RRk|9[ 0џBӨO51>Eo@={{qXp(]O Gfa +K3!)-@TY$= 9'm q$F Q^A fiz-7 ^IBڇHo2 l'zKʓ\%'0)B$Ug/7V%; TX8qFJ5E90d<~F]BY$Z j@rڸOJk H1%& 4FgrvhV?8/߉7]4-X3m ǎ\I~e J Tgk;rT Oʘ$?Am%P@ 5oFJbXf6"_^ܥWaK¤U%&#a72#,ֲ yH^혭^o ,㗳˂J*w6}x^"FsHXo7χ@$Af"4Y?l:S)fۣc0p從zQWH:;7XIXcU!vV!$#,T^^P7v|u7%O9.L?G ^3FZ@oTr'3]7aL)*[ֳv6.s.!HzQzDnxGSU\2)1y"ڀ%EM'ÔJӯ0L>0~_+-IW?A&fvhi/ {Z GG;8=<޷r{@'1xdՖב9ȧ3#1RM  UnɎC[Nx?4zaJ);[ĸr+?4V$ ;veスR EpilLruA!pVdËbA dEY⟛1_r =:AMkbK< h]V,b}:lig rPU҉adV|Dz]+6/uoօ^[k)Za?t>M8;cC|p!3C)pT$|3[K麒3fR5ujC,y7$}$eiLa% Ųl9,B31 ˢIiN%hc ,i3r㧺O' Z֐B =B!K2R&l֏#Ԡ&@V'X.1[.s-/":`qR*Ү|U v*K荍#(]_1F1Y 0|r8<~9f$5A 1f4^NH,*W@)I{% _ş"Q/zfk,ԻHPd$N i`aV3(K ~$ߕ/S0̃L R`lp~r R}h317*_e# m0$DEN O?OP̋4ㆹ̧H|}-384$b(.n(u7Kʘ_,1EƗ:OM1x#)q"Q7)p^p@l=}.ѥQYizDlRn9xO O:7f`Ǫb3uA+TmD^+o+^/"=<-W@tۍ5Z]o3#ϪldRd.ݫ"w2XN3 +y~D`Ge iA 31ĬBb N$v1WnXчIJ_ 1^4e[' *ɞ[ Zwhxd2ܦ+&,rAw:uDN"䈂3XZSPa**݆]gW -\5&xC:Le=`Z :?BtND {Z՟7RrW<"8ޡw\oNms ߅R5˱!rPw'-8akcxX K&d*wߠO]7{^@mw~l~"J5JL\JoB?'Hq]Aݠū_N3FoBQrҢ_Pv99GS_`dP T o 2f‹yɏVd*H\b&?E`RЙ6ȽmX$גc rm 0(,gl̷Pn2-h?qn;Ū)*8\%`䕷+b>w5ٝӡCfE L| Cf xD tź`EAn# YdIHz3l,}?4f Ne3½ی./u-ޚ>gsRX(%;dz6Le  НV͒䕮gW;ޕi,$ZJYfu: 5Ҽryɜ9ꠜfHpayrS%ƭy@IM zRϼnT붿081애M 'ov\5FBB@*.jv1L~GCz9>P)DpTVͰGD jyUT߶~+maWIؽO:0ߖYTyRڠ19$ЁQY] n:_ߐ 9irUd^/YʹiUԞ9 ]#ڢ*߃epw.^GwA *w&O5K>A';u`>+gQ0q`L$t7Tk]R44h8] `D[+7v.r"EA 5Ty)PߺwTjV.)}k~qS 찙rorԘ IƮX4xi&3X+!1D#ܫypp+]B,-m?q@sFI1"RUz|^4)7W<(rTB+`s 9җ.S2S`srXb)6{AT =ɖ&Q:1_`8nc%D^+ir]V͉O7@2s}4VNoϳYMPAhJy% +9J,Y[̛ߛQxUS u tH*[XTs}I|/ a"Y%,18 1I#ӊDj^)brqGx}c-A ą"j1]g5mM?&KjEYuCo y&k KW svq <(J9s8Y}^UG"(9 1䐈_"YĆ''[9uifwj“q"̻Ԛ+`!΁ 6t[idMhÿT"ݕ}C8U$,o :|&trD])vH>Eڌwfddq\4AL3V¢Y-53 K|!ê`1BHݡK4n{ߛ)w 1UzyQ2e3Hk Q2|z= ,Vyxv"\ @ƛYEK>Zo\-oC&85DE̐mh&iuB/|p6)~ăuMGGL-|Ji sΒ <y T$+!.h8R,%4}-Y7H h ?ɄytzͲRڿ)zbTU8@Tu;2SK?0S=4 0$e=,aՀ-u@Adr330-Ϧg\8>zo#'Vq?z}h7 ܾ ]I'hٶ_z%A">~)G m=Nap{a1hh~ۉ2B)Bۤ2D?IJudURVsR%}Ek$QI TC|W%3)9A\Pw /*(Q6QSE*"9z hrNj^ ?Y/9QlEQ /RB!osuv uT/t=tşXWJ/;d>|F(_ /1֖J|]O²f+REkLGbPVȮp L}ͅQKx * {E)LJ\[Ys[F.[?Tw%VΓ9S$!K"1{SC+l%3rrp&Yo@@-3[|F *zV)cޘxh[yumK4OE{TQxJhLqws1Z2iذ=àMD“yD)" *B8V'Ffv g2bo))棹zO}z`/%Cd2SflV|7|v`MVe$LY'lNE5_YԩΆlY5 txϧN AZ*iGʂ:-嚌 8m"EItcoy. $4Of׸DJ*9ᒖFtg{XsX 6SLOoN!&%b3zҮVڐ[-Ǡ4տ;?+E:H>jk7E7vq-x8WVi Tph]xň$Phr|p|\d*n(Q:OntW{w"}zU @Z;2ӳnRw<=^j tcmirE ƶ<2DpLwJ%zwܖ "g'>o3S樃}I@]H"4Akgf EVh-C0HmB|A$?=v[s܅aLH%bA(<\mX? Ү,B'vؖ>E#EL̢elC8I$lwa[`Sؑ99nUp&fŌkR)AC[E~Be׮__27^Oj_]djhbقqA jq@Qɂ:8fAU;MmK׽"%izK9j빼챷DDu؁!ΝE&v!N'1`Z7p o,Q|]$-^ MFk*_X-x( >7* 8,|XU F({T^ʓDn3\1MEJK|2/3?ۜSj3Sj[)3''oLr/IHlD\sR[F! ӣ7Zi+ NO8 Zޡ|3u/}fi4ff :nxCn 'm>zo!s79WY2jѶ8ˤAu1 Ӻױ c@t1rCK?صыoӱo3 꺒ǹ1qrЬgtX\ ﷍/&lKf:uEMa͝q8u=ʱWPsFvojmEcGƃ+mMs 4}g_oOb {y@\M!tr SB 7S)Sc@^fOv+Ed^AeZ!ZG]և_.( .yl;@IzĔZ!vDPL@T{*j>z#Bb=-0e{cRE,JJ#A Z>0\n gpm5dpD*0/,PMH}<Ť橚^JI:FhN򥓢 V"Xss_MY̮eJ(Ǩ|oD3 m]:KCⷫP_;Ƚ?ԧ~dp>zY\UWҫ8h3g" g ,*p9Pv+9Ž~d=g2΃@=[6=ԯVn##-|0SjHpue45 XXEdoThBYNUp#D\} \2l1m:{\H_%w墠X1&4JhdngR?GNVĮM-VouHɽD>q_SicIarZ\W-[0 OE^}!fVhmL Iq3[ԍ]BYVI޷3=X C<yDx)Tywkw(Fk?NDQyZ+ȍ 0Vv3 zG/cpPU c;N$Ȯew"arbs]6.StK'Civ>HFh6P/o,Y&3Jטu]DZt;*vc_{bl)[3̦䛠#[@;MO tK/9”7 >?вTT6{[j>`1,)Zf.FP!d $6Fg)WwH-rxAkj{8Y1MGai֞5p@!Gt phL'2:>SƔSŞ `g \d=)^ 򫹊Fls2;pk('dgh~&^L,kc;f[H}pZmDvgW,BN\`r#ٴID @Ul,G[y sbk:/ -Z^gÌ YAr'F ?m1|;uΘTs{>cI'xvptgU\{6CF5UMP$ֹKgyHOic&-YrL6#8?'paW!8W{c1t[UOLv #E t\ėڽcМLϖe_ <{i!@[F'n^ .Lh1F݅~_G-t_\xILO5|sG/nLϐl ճBǛʂuF6QX_RӘ,z4Y58mQmZZ$Q=89 5W'5!xml9ģBW-V%3reM:H U_k0fsPK!s( 8*hSWSfF9mjޱxi\[}7wkZqt8 G9JK xv}|I;2H lʌ&LuW H}}DW{0rn uyrR?74#A0?J@Z=@$\0Q]qgN|4<7oN xow99El^38i{)ahwNߊJ3i wRgmYtTd/x˞O+~)~[ģe: nmc*05PoD甲uiȧMt^"Eˌ9f%  VI[A`WOy fo mX*&wE  ;&@bDNJ)yJ+333<;c,HḳHUaPRz7뇗<9PBu/\{f!Qz{cȠcx\ %͋W [YĚ{00ƙĻc.9|@y[ 6\2,vLR0Oia&'̥j@M$%4Hsa?jC -}w/"ZlwBHQ\tJH4ol'I%X2C-E [=;8`]\5ՕeswXj5R_do}p@nVbE+W<;+W*y M Zٷ ɅӜxjźR,`|hX'kP|o)i&,泆f17/nuwxN~,Cԇ$6 ~[R7H㐪, M9" biHͻ6AI@ #&&uE(g1&1#+xRVu6嗟:z L02礳B:ۆv?6Vr=yj:ٖ|MB}pmWhط135nzVB%p6PgX N ة2]@&ތDjq\⍀ 9jj5H~Lfn.95;3Ҟŗ tapGJ'pQ"R>=9n47;EݸV~t14Mp~)u!| 9F=]l?|Ut>h*g[~  ֺ O^Kj,J@gČ R^\Ps8Es](f$6Fda\w:]$Y' r8Y0Y?/Iv<0[-QO#t0n3"!Sj!ꡉ1jk1[A GtqM]2CccKB9ё9S++R 2.? }{X\^09,a.Ѧ{qư l0i&(c`:rR}xwŏy~o2r9Z0|eieCIt=@£XS!CWtd@ dIdžJf(ouv8 \*ƿZ 2Ben or{l'rC<;LLfoC'$kRJ(Y˙䥕;/ңqnZByJDDۈuv!h*·2bk<!%"Yɇ Z>yoߪz) 5@ 5bDU@)Ͱ$2)=c-WѢ|-vt=c ȓm |;;w*%F;SJ;V~^-[@Qo=ȒY$-scpՈ@HgD; aAV1$yzTĊ~C$p~`Ѓjep4}!Dd$QJ~Q7|KX*,vװNs|JGAp>*MeR^3A;=$h[k 쬒]п6?T %Q珂˿v0PW6+3=NjH%e4+{g;Ujm`,|ѿbiң`cHARzk.%pKt9]=8XnajY+yCFBDtsIު@u1zMxx7؄'W)pFZQ wX M[VsŞբb&Ajmꀔtם1+JҎwZw!' Hq -].Y*٩s2!)t^(MoBVሊutRSƅT2Ӊ=΂Rt%h4e+Ab%`w0NdF/-)&&[+g,D4Z+~~ۯQm@n#BX#='Pj&^}ʾ$a([B7H*tzT.2掲« Ne**G>x*G`sSե.I5'`AMJϩ;#N!SyDƔd?_#,O(;/Ψ=8_Ke.VM\VqGm0Ã;UuՈIi)9xؕ !6 Y uw4;kd17ǷS=Z"?kU8Xvu0jH0*@oh6~>0Vp`ǪnɒxL)dɝCJ4QKJV@du݄\xfU|<ک]lNH6.y("~?јk>i$OĞp!mq̠c)Jf t$8>hRzn*^φDž)F{,"w5fDKR/NZa+MVR?e=^$?QpPav+5Ʊ!Q|)֑G-J& \*XePj لsV".ZT{#\ bMgnS ~,򑼣TU0RGqzJl#38` zpB. H2 UlK,#eȉD^MuQQ Vr-'t|R12VE!> 8]vr4^^O}Ӕ[TzU oq;=ʤʰk%_ v ]_j)* L򥲝;IrRQ8/*80gU/Z'l }lLڥnO{UnnñyuҼW>Y:}b ;ms sq>AC1S1N^z+>rֱP NWߓ5/0}?qzII}DNi13ET&N/}W$FÄe7O-%p7ta_h`qfmNY!-:ؕL2QjݠJi& kmsʝId>SjOO. ]JaK%gN 쑭 V{V#W?F!W$ /KTfkH\Ϝrp|* r;S5=IJD}=W9N, ~|$go>D1bohkr=J/Ī|zΆ&VnYIVQ ֋!>3r Y%_<@ԁN$ W18\O~J_'`d Z?];"ͱU54"lǤT`23Lc~[`;5sK~`< ?9H ,3ELh<kF@^ugT>/lP"lnMMKP ѥ΁9u f\v+Ү$vLBm;[W4)pđ(e~7&d > !LAi#=8]Fjw\R3{$p`g-/mwnhD /]v7 mEƥ QmyuK칿%T-*+rpXn24rٵ!Q""x6}3ȷbzS'*^:dãj3+<) 3>+m7^cQ"oI F\VGlcUFhŌ@L+:]uT~=n;nd$w z!-&]+<;_;2#RfwI (B=i+h=0MM L nSYt``^l~6뮜-X0xOg*;1o{Cbj* P>RhLL ite8H}XmS^= t:v/ ѧva-QcW܁Sb$^@Z,17G7xKL}lu? ]ߕ_!BH*.`/ E^ea޵јՍ Nv|= JALJVXa}O*5{.f5:=;ḊW9\lN@U:*J%ϊ{ xCqULmi ״˿~yO5\Z%\ҴqXԴQzAj5,r * :\|L#<#\(m3=ũ<_O{{Gs,SSF"oG?,4}zϔIy_ef_ z?̤jk>ըy[EdK;.nom\[70 K҆B:"L}2t)Qq+rn5{įa{3Ę` qW)8ˍagK~*lC@*_u~UqјWGʩVVL-CpxK wJt)RCfđilƥDPeȓC }a--ubFYl]O?]#q< yn`uŊ$dZ -D&1v l"lגy϶ƣS]R"uJX!>6H})Y|C2!&)o {_S2Kl!sb^Z/ґ*bazhQa| oEg*` f货ϓ:W =Ac47pC(^2=!A{껌5̊i6Xn'I.ɐ@OlU~P{`R*@z[~\NJFQKϯ> .w&Ĝ-F_Rھc^tD{_LҞPFYHR$cNafG&)eqKʑGL N5$66@=oewǘ2$`^~yEF{pܵwIfAj 5O{Sjn#CRO+6*2++-4;~D`{LazٻZ#p*C?/<"9[ߡw2{a~ЩKkd0(:o7lكf+/ӈ\'p"3brWiO4 Ym/hkͤBMʵ!_ rBqM.ՌUBpdxUnPT.ȳ`DwQt2%^ <;}N(=D\?y)ó30zvtL !Қ*oTcpR|#F[ A} eg tY($#g ߱4mg޳5*8R $TN ˒Jt}-ak䂔#n]M>@ZhkIlxzxV~Ԃ|nT/3gmDF;^}rKiAuL1<`35j+aIQ dKK#`)~EP(2̺dݪ!>B 6=|2ڦzԡW,k5;!Droup}9bTMR YIqsH &H Xa})?%ky>"um":Yn(zRqʵLeC i2FGٔqtRD-ڎ.XLh [%'bMy;-E!r}=М]R#3Kr&$a:Tɪ j>ǻ'0E},ǒ9[EVr6cDVye(7{x"acWIx~R 67v}$MYD],W@,˺?Q+ <77hr2wt}Svd2s;lDn0Ug{-ʥru\Ӑ](&>b&eq:[BC@2],*V\1I5+- A:ױEjQhA}z$Gb?)At]v]Ѱuxt?y [,u^Ld8e%n7mGѲЩ:zUFXpBljM 3k!Lq(-$3D}#',\ge[<ٶ4" iEȝ=4 ^CNǸ].<Ȅ?VE_gl̹6OŸq$ThnֳYyrlU:,5 *8\AKCG#(e|J`gtNۧPVs}zJB<FnUtyRe }N|YΜ5lzǍض A*Wk*](xb.jM[;y9u0x}WpN8 ۾mt+P&(xH>&1`d֙KCf^l4G` k2/["Vm}P*k?|%[*G,?z/_FDbI9HA蜑5}%Ab<]̧b3he*BA9YPP}ֳ1OG$qt/a.3ë6 RS~C?/Y1/MYAgjoܽ'Yr1CIZ[Uh&]xqZ}qz5X-X`yJ㤤TzR]VJwB{߇&$x{X9JRyx٨\8~ 3^vcF,%unh kF,my:AtϜ D;HR`$akq]`;E1NNr0G Gw6!LwX@Zݳ5_!1|fslW1DVZ|`WMIʽgQ0}9$#>b lȩ9(8g]LHC;K%[Ҵ ATu#7 \3U`8^k3SJEN"GhdK1HZ0s%=ZBz[HyG63սmTugM GOtۮ>d; x>ϤŔɰ4%91;̬NC._eP+t.|OWf*p3`dTFؔ/-ﱥʂkRp5bR~p4Q!K 0qTD7 ~=H++lz,:ͱYH&F$$SB+a}ߒ !i(f rVxSK>`dFp5zfqea4ӫ(,d?TECQ3v-_*75$ 9:"P JMt(Ț-b/?7s!HMy!ą92AL9b+$,k׈\>@c2:sr>Pe_<8&jUKcN U :9o?0tV4]+!ZgqhHaL0s2l}c@,P1]8 E|aiSl jtp'}7$,Lu+WL_8}7V4@QD~E9zȻ[ۦ=~<4&i$ ߣD\26.Һ35:j] T[ \Y1uS)R-M.Z710 l? @\5·ulzy tQʇnpxFȽjaHN@;OXcC "C讻 N/x9q"*ַ;P&KjA 3GN " 5j nlY׿lw#0j1[+쓖"/ixz"U] U8'r/TġV{T^oĹPt@)7wULܿo&A g= Mr="D4)]ˡD ]roV%95?uzy_G!B$G'Px;;PۥIj LcL*֛ON~(<_73qUi0{o".wYj#Z{.<(W c#OavecrOZhE}uĴWG66DnyxOՁiVΡ$P>#XJ(ɑrLe°jvc%UaC}ś`(1χr[ 1ft1rTCLdi 6k=Z>NJ*jkgKl:q2jMɛ#u'OtMd2tW}q9ߨBţTU9٨ն* hWFQp\ e$:F#l-$g7`| t5)RbmF(y/;e6lK~ss >4B7҅.ZͲٟi X9X19xz[P\Z}3KRxQM'*w<T 4)ag!\f NRVW)ּm3E!,Sqx>x&ZJ^+[%X/~VZQUUl$&.@"MȣY+4Ec,WqJ&]s$h.2lCJZ+M뗏nyn@^SRJ"rJL[3yuh0ܐR\TlZ&'Ý~My*M)#ˠrj*THFwNMHr@@aimzOT/S5W3Qs Se G~ AH4UB{z Ό2E7Gـ{UD%4*Q|ntNZ:tFS_{DP }}]2Ȏ. :pyhEu{YL GÏlRRyGBO7 7Np)ώs|͍ -];@段Ln Jd>}l8~;f>x4ós|>64p1Бb\$(´ڟoin?&Ώ԰:⻋rY#;, _X^ 7tlWn=\`k_$iآ?+"4:3%j{f:#+z0V5 pe4bw;Ҫy$A[y0#!PhA)JpЀ Ѐ?f򧈊fm5#n8DQSEׄW -@fAя̇\_Zw\ԛCg|&5iiL"C;ձW-o^U؇SQ5@.ΫC}[hkmЊ(I x`ZsWى(5IA7w[+g)?FDb * ԃ(P ݩKSK>$/B3'KI7tY;'q+cyw͝^UuBLkM;!zAPFUÂi-"Kڞ:\z$NHbRG g{ Ƃ2hKZ)X):Q"Є$ݩA/׹4<;,q#B3O"89oA\nb)D@Q+Ѭ0xBl/rM 0ŵZ#7f㲴e 0M-Q^@g@<3 W0uOx(][Qn%W`{N*I >csI0 ENS%a5mG~-f) G [830.;V`vkL&W ,r. 2zSP3@&v'J}:qupMe`UK c*]. ys:)eH2)U#ܟa˃}vb('TWB':ŖCC Rb;,Ey/a3D.  \Œ{V%vlx!3*;|EgKE3(@CjH3z5)i3ET +)ԣw_ٱs(bxs{Nݣr~8"w'l FTWp%#=sF8,1N*dG0E'!hb0/C1JĄ#;;!4oXH}GKΣ-쯆ycnOB*8g\X Oظ3_tN"U$e'iȒ7Y߲d4S1"qU`eߓzN~W'0> {iKS#3 Qe Mu#W[xϱhupV9+ BI[$d.(5OӖrtqBv3iČP.<,v8|ШY^xim5@պ̏Rb<<_%Xt#uDMdٳbJb(Y}KO^Jɢ\^ܕ#5 WvqyLK\k(ؑr~,r, bƚ%tD %p zwP!Ӻ鸒AA)sgʣCG ~ba?po7c9qO^Ggu>n"j"T1/'m'o̐H)St5>-q R'BKKyG:SH d"܄}H򄝊7|jtf:퓺~:V%۝.P⯟7 *?ޒj\5u?@uݡxOaNBҾW EtՇD3W &jK83M{fA;XIsΕ {R sG_iO9>lϤxʴj ?4:]+_zP$2OO|iS~4IEu̐d>;4U-fnyL>-lET-zӁpP`IC@o )_(B+W: ;}e9-Lv2j}$jfD2-ι#oEj%u|7̾;n>;q&/2z毂M}‹W\vbi.n"aaU?(Nm} j ևNh=UNy\=% :#S*l캔zC9@87psаRq:>d8TrI™Aw-F0A9p#LGz$h=ʽQUI|B(%So".}fmgOa-Т`<~Hp*QY?$tV=6?ƥ8^!q1? ~I1G&Sߋ+ۤW ?=Yg k lWdzs&!0Vz5uUR ,`e-Ay3*5jY\~[͞N |QU+`h53Rj}&Ƞ"w-I]*H-L*f;<4x̎iZz#'pozŠ+sMb)}|ypM >{Ypٱ4w e)\D$͋[ebw[~O;s5V,rvHaH|ˀ)<~&b3mu9gu0T];-Ni/8SꛨM oŃ&Q+HFhs9ŀ!n ژ/12#فj3OU pwO*>[\pRo#R0el,o^s+; _N@?)z -HUP!4:X+?Mh ڂD\9Db*oK,vh]""St]X"چjZcy[_OI g1sT+3[lS E0XrõXIH L}/J#rb^H}ޛKevh~PU8⁛8Ó1f1G@,g`T +bK.WיE 0$xʧ[Y%f˜;HuSThˆOuxR<z絙-O^hD\P<5iZ: aeހ]j'iYz'c?g &{X/p~wm7nו٘b{ ]Q/{aSY4B ;TK`#gP=%!u{Ȫ;W!WykG'բ0Y bEQcvU!c+e<#WzV'C\@ZwE ea60;jb'f{F׮PE~EtQD ekig+k@tD!A .ez(Au>yP%ehVHx5h78층zsО_K#v ,,d Ҏq/無"V&-l-Vx%Z)h~:2Ab4ضHoUN OT(/jNwN樷I ߴ8--@$Y{b$DΟg6$# G*=ƌD Dʡ+ir$SU :m%N ][]Kd 9@V$U!v{h!ޠ|:A-k2 ;rluq)W磶L%XYr&cHi !'lZk#rG["E,Q$]@Up0jL1 mHDJh+]w$3xn|a5^wxÁVϭ)$@_艖!Ɇ[n~]9HAhYEnk@O[- BjvI5Ee"w^^PSOO q֧0TOeq*N% N[hX{)R 'mvU]Vbbqր88L,m&jW0]DզBG<$x;-f49| rl/TOGƯ.gMh.է[HyD2St>uZDk K}mwC# =RxS#%,iwF?ʔ0wTpu'}r$⑞*tmH9FCHuǼ_VQJ1̺kܙ$g[N_TNo/6= d:~ΝƌIM̧lYj?\3HnJU Gjfjӛߣm!O< F~.v &T,3js j,pvU*<x6S= rC]R}ku-Jُ0H_ WF|a,h'#wD@bBDT]ЭN8ۊufWN\L-yƘqHH;⟄OrBagumm*ՐeCp<洢Tpg-$f1GM#BF(B͖|Hx zǯ*R1%W٩?!RK?N x|T䆿p "Ig[-\u.A; =-69lti}5ZSMzh3;% T`KZJ(͛҇1꿇%ĈG--lAp p:i ٻͩ$Aj<H׭T^'$lSP=n(dtD*kLnqJ,=?5C2we2L.y0/K4f∬)=MNPO";p"$z Hg'Pj䠴`/WT'Y.@4e+pN ?DY,!$͝8㸻HpM֮P8+_rKȵTD!\u"ۀ/(Ɍ8ܸfM|KMr#exQ~uӻ30s)IKխ%3Q浰FufDhG]"| \Y>5cA@ B=0sS^&`حfKV@|u3V1t/;6mU#ml$g0on El ӿva1|eK!l;|O֦][#P@0Jq7;\O=d!VJȒn9Aq$?6_uC;vo˪c6qJ{XUp\gwB-y'.PuWk \""B/Qk t"2<@rPLL>mͰ2˭+|fD:dtڧoEX;f$ʧpJT=n0a 0i&bF9!$ύqN~Ƶ5Y>-z_TYCT JnJgt r՛͑T 0T"^}|nF_;6깸B H p ;fhk~sFeBy="Z2pB+E??5GߍJfDR0 Q.~ is"&1w^~B !,i\>YqZ_*{ɿoa-~ ҐM: 6C fsp 9I ]ޞpG4%&v_> k*'%\6Ow9Ÿ0gUQALe򾼈c<< x(( .z/Ynjq?cH,مp?V=hPQ~Cc?do..Lٗf u }DMA"ʂ4/|6v@dq`=. N*Xth!-C="SP}vtV2.J\Z(OT!:>]DwCƌt`>ai~+Jx6" i܂l-ߧt@Xl^N.sCn;ceP+ؿ)PEtגQ T]k,d|[U]3ϽA1Giߣd5 l-ey sޚC="ٌ7fZv]fLYAE՝{bث.0hX$H3$|,c =< $ߝ+T?̅`Fbrcv%;d|V vc~>$A BHR`Hi&*nmq1h ?:~]\L]+!O,y2 7ՆI`ҍD_., x>F˽OvJy:z[q\f4"Dý?*͇4%B; q&ٓ94^@)|WWdmH(sx+Mo_r:T WyϷ?W͝T*w'SoI*fRrC1H oK5'<9`V|ؠE Or׾븕t#^;Z["zҊ%xב,Vqt+ :mٰ  P:}I`0}=8Jt$;r $s2>*3mNcB{uMrXH)"AndZ 5P"Uzf:B>|pgrKDWo#)Pz礮+R4󟆗o=',E ^׶NEW QernT$V6M!F:dzکq 9 b8ܱ8odq|}JJltӜsS(dt/41`k^+0QZ]#^:<F}g18*ZB#2 dh:0;EINzIMLW<.rxxpTSOFA}D ;US9ANRUQ\5e) J/mJbћt7%UFMLKg!uugVf?߁uCڎcs ͬڄ_zbGh5^mxWs @z췊 u'Ztζ]"3G,5|]wDƮ"rEXmJXV,4JH ̌w+{:D%`p5 ljXGIq!c g1>N<woIc?ߵ1^S#Nb.K7qM-%޺ˏjwX3ex:c G6G<@=sNËzBEet{By}’|و@]CO3\y6 =eUn.Qqj:Le)JNa7u '8z(+A`c;~ >7/j TMO Ob=tXp~j]#Oo>I&K0_pb͗\ɔ.$]PmЈ5] 4Q & Y(tmX;ƀAn;״Gf LfN__HQ`y<9 #&hn,f%O:(ϽTU,/q*#>ĝpW^O$i u XY& (x{ɝ85NSen҄hCeAq{az"!P̉Ɉp!^h^Q"9#ǜ9`Q|0s2-v\ǂ`(9N, oMЌ!Z.Ig& FV;D9OR+B辴gV ?uyqcfg%Zqq0=黌n+iy_4'*R vw9K_َq2]*R↱G4E*Hݪx4aD 1OZ6OՂ;Ԍ+ tQ&yje">?e!*)vcA1MvwgX D8zXJ(3;/Qalָ˵ B8^zxI/u2ZkT<fנ$Od`&T3ղK>̴9.>Ub.愋F!{62otA.Vc[FZxېM"љ^r=+Y.KuF&g!Ħ ./ W]dD6I#d5Q\|e0sBe.j; |iJBI]KlMզ{vijSw$kZlѫ 1y-oT3*OZڜ2ﯭճl#6 D(sư;C1ֻ:pXe+̎Ǯ|Eu]i-hڀȁ dl A,$++կV duߋ @{BPj /[GeO>ώZ7$4Ϻ]tU<Mk(@WrW}sKmG %M"aU ^Fnh,j$\0>"߬Zѹu'V?o1%zzYJW|%0\#(]jܵCC-odNMQwRb  pvQ>BI\: F=1y`{~G8F_[Mb+io㶤+WE0\í?؎ tĴHiP(}{7j=уa#MlƢt'̩SږRs)X$?}yO$ O%]cg?gmzD?t!I*kSWg:\"}I`r"FU'?RyM5Q ZyEܨ_}x AklqK"t !AH5rD?GM5QVv:siapeNx(%Cܠjo=dL<-X}|>{b4 "9K6\.~:`,φT$.}H~/xZ(5ͷD-!{; 7\ID^1`fE EtBf[ B'ݯ dJ SpsMLqBE݇QZYe>λ=U$n/)KPa]v3PV$03::^܊<>~_ {Avɦ<{1hGqg85H .ucUL.J9 * U%\:&vBw}gꠇ;$ANQ\7@?|5XHY767ֱӊιx o*+"I)|[L(F %>vT⟐GY|C v uIV0H<=bl6FA@> HZ{[z|h}O*bchR,Kl/Zqf#X}%f->) L̔*Td:t߁31)*2gwBz)P`!b1]^Y}^6kk( jG]3a+nsP^ɟ-NWzIӭ|{LՅV?$vJ.OV ^5nbbw5+C/fi 9;:js)=`M&R6>|twr0עy[]0Cwt"x,Qy/+tC4AHq`S5u- _X' }..|IK+ԩ{oRP&GEY\kSv0I? PJ Ss HYxKdi)%BA[ZØ'$j[NKӁl$aS-=>Ie%pe&^E Uדy+ 3T2ʮ%0Mkh9 ՝,! KcnMQ@[d:#lBGZ~d=)OuS2Rʘ^:u Jϫ. Lb Ya/UHyA(5KIV`-]|?"VAѫr?[uGqRwE N2Ҹ~^.;K{5ƙu̲5ozb%& O7ʥeR\&<7b֚*u?^4βAl[k,8\eYdM+ᗎ#ɠ6v#6Wڸߋu.ɩ8/&o> 8oLl٫ FK?Mz&~n|Fo9rY5X6*__4jC}y2x\{Z(gר[B2ЈVpACx͈ I ٭"cH-_XI4<6ԱN j6u(w,HwĖilq_}'gc$"n6d+ +WM`P ǐ[AUqۡYŌcl:i:yj 0%>)t[3f?;As!{a&lK-U_¥tH68R8 zqNq`4U$ø[.H7$>@ZXz=dF7z ԣu%Uuɑ~(0͓Z5."/p'$> ̙_I6"R!QUʥ1vt+{1BBqk#;߹xG!h$7oHlV:B͎& 25{%n_˲мh[)PL!]2~Q046&_HejD(ԧݰ%nєW% w?KcfNDBfOiDY) $Q{q?l ޹G3%VJ(To}%;OC׈3ljڰY!9_9 Lv_@=`5JW%8(]>! ɶ"LV' h|À'gG/UٮzvDIE&7WQ7MW*-ylܽa_ή+=qleְl-(s`.d3%w)jjFto,`ktJ4eqJFNJ7 ɻٔmwV iHKy:~DT1gƂĽ$H-Z=ec}A"d|v-˰UQ0+`H^iLa+9˜݈!0(hfR)%O0-wӘ|FXY0_4@p<#s&\e(j ׁ, ?[*}E@64vA< 0͠ 㠽w2fH.ZUxsLpm]A}isa81%7AXw9lb2}Au1B>@a~8 =l V9r(NvFߍnbJSg[krBЫ s\,׶ܴ j]ZG;0\,b^mZ~ ck z_%Ҏ<2j K)WAwy]e_*, /ԻI 5+ j Wbsv6J\.i1ϒj.XG!GJa 3,km w >,.rEݚ#Ҩ \fofg?/Z.DP.jFu=p2ёY÷Ob(a0w9 8iH).K`omD*Z70mYl˂kAD+Q@ӊW=3_P9ꁊ6?0vJWv0d?N.ݠf)2۴xc[* HXށ8|␿a^wB6-:bg9k |Lx񢁄\&M:H"N٠\>>ߵ.{42~yd6E H64Pw{HY%n4$d! q:a(SWޠ &It{WXT<@C*O A^-n=+"Mx|ExJʈ&"HNbEޔ& ըgUCÊ"YpU"d(ma@%pAd]uXMTpJL[N]4 .:Ҹtzmǯ'sowN`#0͝=Ao9޲8VvV$Cz ϩ'KZĢd\I7dڍY܅W*IƭP܏$q?Kc?zƹ{udXsz( px*qG4x2P5&e7y~j`*xv:|n#7%Mho'ʄf!k\NJc Z nϳؒm-u*SNŦ߬(IZϹ x}Lk8-zS."8ǩ8U0dͲW5:*~qKZX'1{ œf?'pPFeOfϝ ե;c'\/Ӳ0< e[fe M)ڏvy)[lmE(&fa9rBD:>` a,7' >Qd-Ӽ_T|]Qק&n/q $*7I+sZz#`{Ϻu>%OV'`HtdĆkbB3$PC污Q(| VFar;SkpUHLP%<"3/< "تz z-:%ifsz3+64U~Gb2UaMyljWLm؉f\ǝL@۝`2s@p{E=٬|`j'RD=0~P!C GҡC' BNwńQ\N]Rۋ>9d] MS{Q<ё nb#YTZfda:-{oOGWCIe(s7R-wup բtݖ;yS iU\;PDm<D=7پW'qp:ړelq +-2="iWWdg@WA^xGPwLn|teOar-dgu;dԌ„5#9UYb\KdmԴ?햕, o8^ﱑLsߜ%'I 8:Fbʲ8SnڮGl)d!33sVǿ7 B[Rzn֬Az "˳$QX_T/^Qu͇`wV2c9zfӐ͍˔[ BCJQP@`Z*7 Ppx3J@'\p4Ap77n}˸?&=1ڠ S/t.I{{}9XNr nAC"&Umn%T}P{ 3mFyjp~7ZJ,s ӎM:ٰlNsbVAT {"EnxD՝7wb<QP\%jlkAbGB&Lq29Vny>)qu"g@_̜\Ƅ2BY VCwJ,{XoThlݘgȋ o:ya}Hzkz_M/ P %X"&Ul:5ϤJvf e7<]?DOYd9SʺȆU%h$VňpەOnD5L.@ (nD 1-nl{[]諸L+G:> {B_:^Q5ܼ!Orw\ky`. n }M+CB{A}cAĿd~p_aL'VurP!yY1_:m- ;iG$?O8jFI&<1pBƄLE&5h3@iu)8/+z٤]bK}g'9lKɊ7d>ErxbtiT{rGbVC}O:qmD! 'z:;IQΙSnon$PEJSu?ʽ[] a5\hr_;?j%hDx Y6]Kߺl;tw{͵'i>zDzUx-L_7Fȡ)} i[+q9ϸYt/V6+qewt}-ëC/ӐC.nDsѣn20Kfgap"'7Cs>wvM3~6u?{BP*?mfG-"jB.( mn @wj=&3~KИXk瓏Sa \\^/:]'%-ޥ_ n7iU#!\fRP]xkamؔ@_^ky,L mzB|O KR v7sdG!ˮ5:p즘m"yB࿂-tɃsUs&4F%Div &/BGp3ox*Б-$g p,m+G!}C-jg!ٰt!}Aw`}yԷgÙ"\tồWjh{GLp^BeY`lϘDtc#U5xOEncP`#6? aZGWc*ޛ - 6.۽A?~6 Ȟ"j:{;3}%T.!S/A8|f8ǭM:nLJ~?6Yz:$?C36gT0kԂb`.?)jG6bÁy},QIc}sZ.{퐉5UD { Hō@IUo]b:~x{s3ZA d]9:,ӉMm(@5e (7HV% H'0q7/0Xt8h h>H&Q|$Us>)9 N Ră(aLkU <8rax'Xwh\vc2sUC+/\&ghP#;T>A"k *MKt_Vƪ sB)ɫ=6^R8uYRy1gH_ˆMV,/M&Bv~ڍ5Ej-C;,4ojJ?@NXR4k /bpDDſic/搌s!'k&'0o vON1Xj(;D!,eUu6-9slM1x_x4\g֙)$Zr<7B T Ѫk zV?n> *]#~}|g-*ER^"=3I8*5o$ >q~hssvYo"W)V{em֕vuel3]\Jc"eG*T!KOp`XiI$Ӗy#6}؜ȈiRK, x7XJw .6EezWqj% ȶ/Dw}8ӽ3* %kTE^)EaWX X|Kr ?bݘ(4q*="Ts%e7gShB0D>PPxHyE =vaXY'߭HCfx?8PzJxr? ͛KbNob^g*>$(A(QJ*BEL8\Z_T\[cI4s!ٶ⿔cxTmEa(~Ȉu0K(t-ǍohSb֡.W] ,/kd:R: MA)>0Fz1%k`陳]wЎI_ 0!\5tFrQ֦6$?_ ϗ*Es[aӝ,(_0+31oȪ6'4_IJü>@D J_ ɥO @_ m*Sʯ:t_[h]+/- G,<_J mɓJ9د`w4b0ar (Vr+GʃSliH8=_w1RD $/1FN djU{LrO8EKPvln]53m0Oi.t t5T`*2;Qm:h`}rZ u{hd|GVi`(UсM(/ƬiXyNx3 R3I&u?WܓǖORE [X!_58^DQ5X4gX`*mxLo':k<_pDH>=8ҳ;Vg.aVVE7+Q(>s4$mQ X.e+݂ gQlˏ#QEN4hE6 S_jV7 ,‘|E̝P^5C-'&| i8hQP \fgaTn٪~j˜痃}f:Hޜ.*me? /x^+weQVȗ䅪q5oo4v0&|GN[ :o"*3F^srf1 ¸0`]ݬ3I;PcTvq0qg6%f"€3y^2&;̸ f;<Erd6 E87ؗKmP}a1r趛l`VyJi)8aOd·p-v)q Ex81b_8{E{﬌y" DGex9[1\u ,RaxH`;@99Qns 3N82_׷8GTH8i uhVm+#2xӐjx_gD" )PM21LI; IGXnA5r^Vo9XxH Tsu|037i.'*{OKBACGhLpzs ȸB6CuJOdލ1!PL-{=3=,)X͜|8%>AE+Zj΅Zu'9za/V= Iͱp6r}\?9򻬴eqa31>uqU~WWs#`wl;S씴;EN%i*$+S'O!ژIehڽ?>ܼvӎ8Rd)VcPX8 1u[[ iOmY9blo4ְ >9U/njk}YcH|Hl-\Iѝd-PT9nOTZms7〒U :z8t ᾤ*+{CFQ:aQvE\dQ`+V1DC  H>irڂW*M w@ w6?Q&a؈'z'[-XWcsCLpLj# Fc* 6zvdkrv2ByS O6J[+Zy'Po7Goi i ܮ˓vDZ'w؀(_`{K'_!Y)] S*cū[K'Fh1xKĺa])PQ' *0\Jd7Z{K:lcJL71v Qo6Я.Ӂ_aSU{yf3؆.ʂ̳% ʠ918LVy)8Q%1FDAJPdS,@U,gHEnC ۘmszxwQMNs*\;<(|AAY{vwa-bpsK; BoOIPLwP}q^H#ȥC!Pfp*o22'fF>"-#LمMoD5~"jsJ#]/LK1к(ڣ,SJgȈ֏W HXT–a> ӳD`#5-_dݣƍB᎒vמ}T*y.ۯ--X6xǞ9,UL,3V/(u<-n*W+T(g<]_COy7b GR1^x@/D@ ԦBĻo D gžF1A?QskV$C:zJ /&y4REU"fc4.Y+i:{__Pvia&^|qⰬ 5)0g@Oں0d8 sHёC gX+7wT6%Z~e(;ggṷR;uj/ AMH!͑${!`הz]${ۗ^^'&co$"({go)E-/@z>WnMٔ+OQRdBM`IvZ%$VMIe)qMų q<űF%`^ڕB -m<3p3,!yB,UVQXg  8sy}E׌|8/^Z_*s{cM8?IL|싱X=l:NcqFk-",wس-Ӣ.m7 '%jZXG{c4y[lZ)H<p pjN9řCJ^HXfUIaAZ5|jelI CRê%U@dHUٟ¢qC tM|@酑kTpmODs~0s_I{s1) ŖBj5IX"S0]hKpX>D*җUr `ZH ;GW W]TBwm<- BS Z3gA^ęu}cZ7T hʅPuHg5?U~Y!]K4[(zdk 'o^kIYe@hN̚'`O%zJUuJ%VѨ ЌTvJyêhq݁S5gGYYcORkMdf]* {W1i=N65Bu*Uj|Ď%}̤Q p^l(8|„sA䊒mTG74+Цl,<Wgu?5FaMS!.ZGܖF[;O%]bmbYBޣm;fV|B 9'wB,V`'Z6&2O jF5N)7\!y ű߮H n {C##w7Y!(XuL{Gc}'QŬ'"ש:tn1:5$1U~K%bf߸]L\-9 }ʏH&N/7ʼuc4#S[Im^wvޡY7U ) Ӑ4Ng2`/Jx?1ߍC1^i)Ԛ+)d٘4&@U 5Q ceeѤ,Dyy> C3Ϧ^ -[tW$ζH5ޜ`@5rW{Lծ-/Ah e}Qj-M!\h#[B1<ܡ`w'M O |#ϘLϲt0YKNg^8/!AǑs4K+4З^c*7Tǭ ~)k pr1=o~N5rJ^A$dJ+\yd- ,'%ڲs*3[4m{1 <_D1뀈$' b%"?lLGu+) .Dzb,r oݘ&f: H7; Ǟ{M݄/ZNo:-1l29H¯9!b$M*v̇Bn0w<3Dk)F]BQi[U$Mwx;r_s_)اX^ ~cÊQgoJG5PIf\WH[8|YSD^XmJ0np[w'Tax X 3c~*4bjv KM0qAlCA^ze9 ɡ ]*:ĹX(p&e>SȴoniO$Cc''fj d.ȍ#l->@M̓Te'k'Wܬ I¢i2q~[IQw¨ګ% #kVIQ%G8f>̫i-'O сdˠsFwT{t9KnSf&ǠrėSoWg 4&xcͮ2d~eGVp龦sO<2,Ra0ReoG 9dtxWx^ù !VX~C>m \῟{HlӒiIN (.FUvcX<۰;-'~trJ:d,A$L\_ WXE3 5eg;P zE|޹KE9e_L|Q͒thg ƒҸCAbwA[~]Ą1^gT,GF_㒱͕Us1BvA&7]Ȃ`IIas? 5A4 dxQ!u{@=Θ>@MPӃ=Dzݙ۾/j;}50%*ȴ*uz^l6n $n_ZVr%mIXߠ%mg:&:0SY8h&U?ݒG9+WRJ44O+dH8ہCFGseM=!NB;M*…c ԕJ,iO^b6+ن?D 1D@gΩ"KpQ{^yhԳ.WPMz x"§:zWX\v5X.q MMyJ@1QsgwnJZ*EUާݯ*#2g;,OJ&F= _xq*piP9,oc8MO?7NmԳ% Ᏸ(AfQɒ'5vW"b=) f'Si` q]ZbB\zu:3Tn+.q+=V+G E  FՂ~T5M֚:YZ/od-EA9r_"nV qmgp 㫙cyJ '_yxhc,n[Pf vW:D3Q @#2Z+S)S I;@zRu?[^Tn|g^{̅޵*OLG$}ɓӔJD$REPmfr*PTY1mcDgb`!P991 =_4C[as l#q`t#_薸:蒻a g^^9/7A@R"V"?X YŁ6^D *Μo8ϼk!BP JaGt'4>N;b٩5kiU}pG2S<(k `P5nMqѼ^ E-KeSÇ' beτ²dPȒ4@wB=JikL<2ΙBh|B|»4_ dXo0"C K !Yt}1DS`1n0XP4mLsy)ZG߻`e+KM Ow"q׵\N:bb75teEyWk]ee% c 0ez:cČ^'l!/H&B,5ۈg(8]~4S@ S;kT_xw? *Jÿ<. u۲M`sF;!&E9j)tZ,#b/QA4纘JdUo{c"WU#ٞ$ T[& -kCT^/=QnW2E5/͖l\xe@a3,<1ʈcd68zZb73p)[U0v/j)=v6g:L(4ۙPJ %&%}O:MJܻxPzֈFTZ'\یUe)6CspLI_{&wdMuLs84LXV{lLcAs< 3ʺ u3C c}?i9.1po7U ]0SX/n%ǶHW!n9|  3[w0'o>kT :\;L@T- ,=$%8uFcR+IB^bOlzJhRj Vww7/ m=;Bâw+i_XHÞv<~Pd%?<l1-Mœ ԑxD?~,ӤQuy;J Яв 2w}=1/Hr!."^@97֯#S3#K+d@(k`_<>z9ReRt\UOO Dx?`&6B]keU`0Kc~Y`H>|MZ?C+>D>ڿṊ'OF6b)[iR ,Bѭ\ʏ%ϡϜ+`t mmXZS׽A!amMqXn|;k|¼94v4gyJr8pogזK>[>ʲE:P쐢seb<l0H|3/3Ɗݯ2AGd]+vMbggQyc3*xK,#[f&(%ohXCvrҕXdqTVą. "Zn X% $#n4oR2wfꢐ_Բ?( IW 'n˘u9ԻavDʼC}Ib@ܫРYynwi_{{u< R =mX/ @fe7('JU>ʹpİ{DSֻn#ݫt[](PM:~cx&z%)]ƚ J%v@~l>MU1o\e܇A_Pa>4S Cv7YQKdqW/(/xCc{@E #HF {F1sU` 'H;ŗ?K3rՎר-?% "Py9B/<*Mć ѭ`AaQ;R Ыb[p޶}fPQ;1/TFA͗^͑|:9BLe q {*̣O.]3 K G@W{Ô.O^-&(|c^:wXH{Y2Ԙ߱).V,/=T>!#Y9_9 Mt>5 0i F @c~_9D5ܛtD!պN%Z ZK˜ZBgS2M:z^OCHYőِ=.3ו͛}y[ q{+0ے COCV8(1bu_qAj=xnE[VbVOY6V&w[&Da ѱY{`_[g\ݻ841z~o|mcە颬}&)F˴tK%*.*I{fZ gK[6eJ˯uskfF,&^ǂBPG"a+ $v&И"E݌U5N=Oz7D6MЍJPAj?WUA3H0ՂB(*f\̝f^ES^H령omʖhA ~hB?} ZH@"Sk!TyTbBC ipd4i6Ï3&-݄aq769J/!_AhXvDŴc>><s$ ib]@o,̮E b3 vI"5[ >L]2zX B$>Lֽ\qb݂\̊yN9/3*aZX,2"$>@rG.maymWDHO<$%{čS[|I%qfE С0@9ɤ+b bZ0p[((N*zDPZ:*DXsV9SRn:ePϭQnpG=q|S ;n#?>iQ+gm;:2)GA_ ˙ 901i휫?~"5V U %ZX%ɨnU}UyȺUj3q6dKI?2|aeֈKC(b`hSk*mdK,}<٬xrOfvMq^Rz*7 \vG/.D~WނV^jXG.w$a9O^eq49n^{'D^·%C/~ gTuwtVrż5 )0i-yuŭ>L^s3Q[w1^͵^I0Yn;t;R{u4ogę3zW;чvA>yE侠6DRB݋x.!~&?{J\'٢#-aoC77` A6 ڱ?+d\޷"qLwa 4Vtjk !S^|½ܚ~? JzQu\As}|aXrHs/ !opmU&3ѭ8r* 6,n پ_ש?a/n&,Ts8}3D^@_q>7gYMC!;M*Mm~Ni 0NfRlE='ҿy-PN,VF$Z3- =Z~gL˞jnDCDȝBl-8H塮-8eWfm떝d'kZo{exwB3H$7ix;>Հz3C?.n^K?-<2|ڨozȡ@hyRa Ez>lG g; {it NݢYnZ9I^UI뉂JpĞpԨ|GHZQAMkm[ lv+xRG}RޛuF<%|T1;l헟TTtIn yn6r(ܝƛGbj1UcUnhJw_wz0C޽DwA c[`ʊ(y _yTZQe7EhХ9r/'4]風{[G.Ozt)oЛUv=חR_'HC m6K!S+-HNT֩GcQQ5[LL߱ B捙vPk!& ta#AZ.Do^+'|pdQga\)eƭR b\&_Eid*=K$y~ }!"DPX|dOM |$lҒd+ؾ]| -Kx0)ιZl]MN]uzE܊խ[U̜[rT"\y.,ƢQwa=bP Ȫ}u;IBU.{CԬsi# $,z:(땿y}D%Vb#e.|_–`hEp1CXZ仍4'l ;( j E.ezX[@ ɕ\ Y/@IΠ;*"l^3gjJ(T貣t̙gN#I*ۯu~˜*Nz)BIb 9kpۚ&$ဋensA8re|E t/\ ³v ߁F¾ȉLvqR V)ɿƤlkى)Zh9pZkW+CGJg 7CƦ-^E~,afGoGKxK˨:?kRi( %ST+BD.ov)j{v~YD؎$CF>MBSoɯ _}n^\]qS>Ğ'0N4ufA?ȥg#2 U⼂ugWb+t-_~j*_4Ĕn#o*gYM9d )SCm_zKȓ)9$Œ5\XV4o1\hXU&5vn-)&V8;G! 7r#κ[Ew D4j`2/;}Ub[R/ KGj[=a݈,P JN쿹 6,<*v3W>`d nm{YuQWwtq@E0-͍[w|GZ.'e:H|WTJ0=܌D aOj~!3ڰ=rJH<CSq}U֥k'F#2 x!|ȕہWtɰ kOpJ۷~-kWYLi|YaUc.q^>,HepNG5[jSz/DžPiG1*OʄWfT/CӃ܇j^w\ `q]epZ~} 6nxnSDsfG>WP%=ڹf)йCT%P-m?o>_GUs-]roq35 jGBgJM\2Ssr(R+F{"cgʃmfp .c).뜁[荣 cnj p60쎕|QgfY;5|0ZX3\~@v^T}E6H*uJ_9"+Y]-<7=AʲENtvN(B;Xfm:aP(fsGW!J_8f[=TDV{dy{OK ,jra~9"0i"mBK;hSJ]eM[b ϼC6}OÓ8&TA['wOx60ܮkL?, m*oh1h8Pk5 ɭ{wks̨ǟ%MI?Ґ̧5"֝}n-lz>Y%?V7q|Fr1_)x#c*xP5Ww^;]qGxo{V~ E'Ɨnu} '9"Lh'ZcWMM{? 2[L=7J6J*Jv:ꉼeAtU¾N[xd0F:tތ1la*؁bB,pAϛ=0#&QIT. RȓKyyF\Yip9lad}`kC?]{')~Y;DɍA(_;ORV! ݄|}nBJJx|%(j/UW1"#vwcXiB#))|ãA5X2CxB<טPiyuX]:q6b͓.5W0#e4h%PW&fF&Pj@]2X 7q$]54VKmPM'Nd9u/)RoEwN6J]rAb`Jp*YDۜ$E 9c0βsVޟY@D`|r՚4<;륯82L"(R wJNI3*vX'bVI%EJImI\ahwƮ6&.wNv[[-ѪuMEQj ^2ZNFbt̡bەMht1n|?mxfX g ҕogV&ney2Im<;/xo^[ AL(hnu620:B Dv O b61z#-H"E hǂY~cK;$QS7`Ft?j Hs[4CH0yV錸(Nd#`%Lj&I^(CUK>?2:^4BV$a*pvLߩ\7F_Fzh gԾzjI;R\Nt̺*;tJh44MR܄+?8oF)fЙ^".H_K,h80KծXjObJyYhpe%A-p,I~5.i͍s*֌2k@1Ckr2R'Ŝ v?X{x88ީS0M7T8쬼89m९K B[F|)nGj"ݭ$7(g?ю 9?I cwܫu'Ӑ CEn>NT?:ESM&y Axg1POT'w_ IЎGfe?ߕ YC}+}WD_4˞Z=ЇsSCu{}'.s_ /R)l5˜M\3P} w3Tu.ɺ#Shy[HbO`̷5=xՓWtJ mDlʬRw()dS<蚂^ fWy3ec ȟ;y0wɀM⬃]ak"&2<jHF-lűOqCwk^QS@3m?a#U6 vN!qyPRrJԩ +z\g%%S|Hj=_{e#JtsjSJI̩Gpf3 sVMA9KRt`PzόRFůfg4 -NFh m>O\&H+30Vztk7~;ezq3daiļ xްᵲZ$87^cͭ bL &y4{Jb B&E N,5q֢fVUR{ֺCKfmգ!\^tLv4ȷڼHr`{ pP ]=%B0Y"9yӾ"6QksitGw Vۉb4`&m" s4Iy#5Y"?F[1 |M]OaϛFY~zT EoM)MBu&")ESBp-bs# E.]N,כF` y0ر/9r4n*|;8_f/85;q2/{}n8SN^.2h4ēƙl)(ZqTїpx'f,#ŢKo( 0h؆X'}-[8׽,#?OA%6<]WD*& pmv-J ;Z|Ru*,|t:2؉ŷJ`_PWEǛQbOҍ0'y ;\ԏy+Al;gnR)pzu8Br's [m!lv(zSX f^@6⭟/UߖæX0w o'DjY4xH`,kOX(D'V12ƗiaEwEbPTiBZX٣bPy ʢM}׍iG*=t-E:iI_`+Skhc̉{)jGFk etsѲ,o4xX֤X;#Sv ߼ڻ㘏fd8ΰK1*B" ]gsVs&1C7!e; 6䒲"þwO 0_0T9RyL0+ӌaLfbDxzsIషhǙL*b\0. jhiM'łV˸VztpCnjDEONLrbHNl)-: ᇧ&yGerW] ɓ ߏ[߃5Db7]9wnZ6P(809_m.渼:ANu 16=`is3 D)yMwQ𞽲* UOl`{qIPK6@ &AmjahnIΚA5@f ٘Z_]5?`ѿS #&B .d&X늼`/׋R! f 5D#'̹%~ZIwxbW2 Igy\qK1;Xɽ>vu% [KN4 !a@geV =V6`P t?L3(iUyg?J{$ЗE Qm}Z̅!F"; 2)SQ[y ɾd-?2Mn5aN6 E=Z~eB9r@PbcR!Nvm]ԝX}S6ZAUS'f/$l#bBx5۳Z^bXzz$E)4OmspRfϥ ..b 3qUVpVҏ~<"w̐FPW֯k3AP)@54'iA999:#T(eUʍpdr0MЊd #9U8<ϲ?~l88Y2-ҙSI }'s39@fn)KXcBW9 'wʡ-M_Om#9xHv|S+js3\*]M$ӹ ᓜs--z]9[&]}cILC-E֭W (F*jJ9丛UiTAG}GkZCKړY\Yd%<4,2ym8 q0>c HH*eFf~J~ZcLL H:Lrp譔$GsTN8nR<8 &j)lhDeT)Y|ET4F^, f;û5 &M%DHb8^EGp-Yr ^wB·ARc{{\k ıWGycM9u mCHV${oD1e1 Bobjk"@gyNno7KT`'hkbn*vFW3;Ns tNaNub!OޥF*񓻏 mϴ[:lΆasz~RSliCuÎ`KC\\;;7`xfEþ@7B9OoYIc (U/̹Q4ٖ#NAUѭ AZ), j+FN|e4*vK}uW1gfoW`EbX*T6r3(8gP0g.<;[O+l?帀g%FnlSj`aב#jHgzƩ&l*ٳ5 s˪˻? {w!Eռ\Pk~gvxc!sQ%fCijOoU"t0pbrpn{g9oݞCϔ& iJn Ec>[ߑFnOXJvLw\&{_f,=`Fum]L3Aiُ;4y̶y|Iסxg}B}Ч0A|1F/{?E?tj׉+bo9ՕNUODZfs/y1@3E"f!1Ø.FHEfu%d?*w\SW8YtmnGSD^vAxm!eͲqm:jxs .:Qhu<)rP2,:G-xc$~jް/b^z![ˌFFcZ焯S3y8hX_>vuަ 1 ȶe\+3Mu+{ʢf9M3çbS/Z Q1POs>1)ݷ?Ei߬T8oޢ!ܚLCy+Hŀ*ȑeɜK%x{jT w5췐 d"6iŽZd&0kM} H&S!@a.EGЯslw%iTl^ Öy =;OoX Ŝ)st1%E P)M B^K;~łO- Ԋ~#j5^C[$9t!9&.PLgMf@[]bCWI?aF7;֪K\1N|&#""8څ ͭ\UH\{4ppDyAvt;d_e#:I1FA(P @ *7!6A^3E"DY/ns'җskz0&4Ln/ UHf3H%h*:U-0n4Q.n]5I}K[0Y Wgv;bc0f F&~*A0Pe MΜ:@pn^ǾF6'*z#q'k{˗?fMDZtZdV\I_a7}Fd%o>$;j Ay\_}%=23P`$[n$;eEtl~T_Իct\&+M8FD<ajR RNRd~Ʃ>舓m8I@x@HE!+A0},|{'cS"TL^ܝ +oI..͈'E*D l,}3gƙYD wXaAQ|#فqU"qk},ѯ?xKOKgW@NXno0`n/,.j2135劸Z1o}AϿ4 S"lאjzAd0o![H!*ଲ5Z'|VӉnW~Nw/ah*)zLWirh%zr RO(1j{JW@^*'qۦ.UKP^:MN `"?PZXUWs*[V1ݼ{]A"g]t)?:ܓR4| GvE!'G'Mnb4oʮC*q9OfD3T94,ltPZ⾟3J1 j_hXwdQVoXm/ENd[u&0Vqd&jG6Kk#`,EP!4/';gpχ;= 3~7*yqѾbTX"%QtV"HJ6MqR~Gh`Bjg#[1aU9k@Mp-\]M"ɿQr-~(ZMְIa10 j+bf[e>]':mvRt![:/ҵjہT5:T)PИ1d:3!R =uy6hG! qh>=lEg uT~Z͂Æ3aٙoP:?ݫ&=8BgI J0!]RY;̰"u-gĝ*˫".7HFK=2yM* sfuֹ0zWJjL1\ˀQ9`YY@*v@ppb Z67y fM¥C3)d+P2=Ʉ-cyEY ׂ_Pa0}MYn~WO ꗨ(wb쇇5ADd i+]y/NÇbh  } fUlgB*xm%33Bᕑ1O#ৡ֫p+$<Ne^t*L"1HMWJ(T.l5DS7^"\\:qEGKs۽w_/.7%A~Q@#9""S_79|Ct/^LuɡtY"H#6ޕoZ{Z֖pF[EޕǼ.'6xNyXA_ miy  v =w,0#,3͠53:cF|dҢuOvK6Q5iHoŇHEM塇\PvX89" ͥeI) .u#ͳJ!NJeH {΋G[M n4Ӧ&O-Qq["ؗmiUbLaGTm[|uȁz\؛,cx˩Wn ,Xf-dС3k㼶`jD_3V'giП;> Y)XR%JFvHH NyuSg&jT'pvEY#Ac„p3M^8Ya)ZE oPF*\` |pWșqP!ŧVİ~6N޴,Eʬ)Ikfj8ki6^n> v[qNI [:ԦYk&Q[Qv\`?dhfP&muI̪!L ΄$P Jg!>Z?4";(4q=3+M evt5Jƅ ?љCe0X~҅$t mN-*kA;ilH&KK3c2tLT4P(ÃQ 2wF~۳ϔ|}tYZ$$+OnA HXH.`A|e ؓj#-b.}Nv)ӱzݠ(yI !d'ؖ;qlꐢٵ;H'JJra赦\~_w[XhZJIl=,:6\uS[+ȳ͙ph_! Tvmoi@i_)6[2X_+ί`艹?Iw4D }4n,"d -u" =40B:+}MwW%~eh:wQv Tsj65|6Uσ6}צb->a\iɡZD[D-(Z!#>bNȐ>_syWsvω>xZ'>};lʣyY~7UskYSvjOMql.e[Ab0.1ck_D'mxYR\Rc l a\O7zd[ZO0WxԤxPQȤg#sno;X\eL.0AHܕʿ%*B܅#Mct6jŝ⡡kx`ņ" S6nU*|;6dȂoဎUv@wյ܎aHJR!?mQɏ<~(e rҞFxtee[Ӥkww 蘵r J)0șyhѻ-;G}xnWUPȗuKK&MI'8e4`="?u5ϟ{73|; pc ^%BUP2LroZ WmVvSJif5!Xş2[<Cmh ~y׺UƳzи#-vSN<#oc'2+B[?MRV5ߜmt?WhɢZI0Y?fė;ѾTr#^nhE0Ӽd4ݠU{"7c9J P^]Ko ljF ń `cD߁m*OlYK7 H̼~ܤD_MЖ V)=Sp1[B *%Tyn`(e[ŧsRub&f -@~&G^@pY AVZ!Ó25?_>})je[ˋ^U<̲VC?֡2yz,ʯ>g ',ݽ"dc4lBm ˙Ot] }zΘ1PG1qJA5*,\8 pG+ C?RdMJ¿b WSHN? 3Ѳ0 DJ秱H. b!j0(?:pcxTƖʾCwx{U];jkyO=Ur?}CP $2,|ٍWHҁ䥬g.>3N~ 훳=S~\opMl\R4H=ad"tw0Xc 晕|Q5MIf |彡͒!rq+}o虽fg]55fbnBVfkY^<9m%x7Dk%^o@F' 5 0lɲ^iY *F1n9xӻViw w p(ax6YJp+Ps61<ʽ~dqmtgMxxtnOm;03 5#)fe\U59ME|ß4smL&񶾛oE!XArucus泏O5mȺ"ҭE5,H{Ѣ!co,;ŵΊ7L٩ka/EvI B%Z)[i-?P?9"b ?~T@8#9?C&V"z}P\|-W;| j:(WmԘ;e_hdU{R6+ě=1SNM =h{f )հn>ca1btGwvOC?#˲WmKP4U:eXS/`T:G mQh2unxLϻ,wj9~r*j8,-!xP?F6pvo+{X]-AqfIFJj6䯯t0[Oʻ7QEմxx u;Q1ƣu7^Pu7@,!UX?6LWЪ,;e2h*LA xp,[dN1 `s?Ϡ1>AqtVV_4s5 Lȯ.I\*3ld>1ȗΊNR3hyr xSuɌ{(TYm6 s Bb)Һ(Xf}Ւ8Ÿo2nLTH)~rߢ%BO/$pA1vt&JlDG׿[@HeRP; ҺSV ` ;:هL*0#-I/PhӺ~hOi(:k .VF5^}`Oˬ5ok4\ao(MҎiM$vw9AjgռAOq_ڋ2aEj?9P苿ZRڛ)3(VvqYe7 +C~%vdObNz#_Os 4ɉ)yffȁTLا2L41UBw}>p&wSs:~AXV:_8gE:KܩT 2hU--YkZ}9ߒER~+۫Oڗ]"A-V ޵Mw_ [7gݱܲJ,HZ$zaQ#ivڃ w}yʞrT&[L~Js}Ո t\~ R%Ы"_mܽ:y5Xq4k1)p%my88is6|ZϹBskJ}s Yo1%œgAF9D1}9/SywÐLyT?:)Nv3:z½jG檚SOItG}^m)*/sׅeci4y(9"mflbpfuU0) $6RF۠{O&]!bx; ~kρl1+HHzği'M8'}|N',Pcg}(cU֪y{ C>dJמsC`l>Q(;;5WWYm&ӯE]8uԩqȯsk#\j?)-=hYyˮ2}ʜKNt@^HDnhq^u|tj ޮlZ>a{g ?~Bzwc2.& /),~&6D '7|Dn~uYnj XT-#i3._| b}[]لr`V;<)'a^G7ɀLfMLa;s5)sˣ@{69"/%XdHSjZY<>-02L_;1:zʱE.\*1rL&j^u \\; śukx2e3;n@ -`ԥ#D5K;Հ^Fܿba, \݄6S5x쑦=Y}rf\͡| Jb|3L΅ɠvGF(oHK ݢ MGt[m/G-?Im6JGpV~$ʡm} D u{#@9DZ쐶2HW3G!/ONо& X#os9ʸW=sR/QzE =Ȗt#f(, ν2cToy,։#P&4@뫜 ZR~TPn '`Şԍ+:1R%,RwΘwF KXLf 2k{/9F8&9vB+lS/1D^^ꇧ;NW Θ=To0O%P,/RD{;/o+篗l;٬I{/W"ҨnF& \t(p2N&}or%SHUL'p.&('.MMo* 1?U̠؜a⌒f!teRhϞAx/^ƉqfqqF<抺Rw?~rû}i{rke(zc]ylioǗ6Bbt6bJEv WBM?$Zlʯ`DJ  ΅5 ojSqYa Kթ"ؐDc? sz]B (&k`c/*#3e* w xu/(d(  28YŐsbm?l1jsFmҩ#nE_G9^4auCd.[w&T#U^Z)b6< 4Bda*V  OJ+D'5Vy䞶Q[/[%n䐒;U57YU+1QJnj4Gkk/4]Q)f)4=%xs7% y*Lf֖&.UlzNf{3;M90zOe|aHX.(H CkM$pzܙ8ӌkJ⤸i]a) d;=s%`1X.{,JZf+ S3KIi6]B L..bR3gy]8 X B9jp90 e ŀQ+[RlyARB}wŤrjd;nG"ʡ FԿ~(ۻi9dxeZK4;0]+c7sov^0IrN11KW=2#$.Ayf  =jƉ96~ۮh} :0q#"GRkډ8/n!֦->H_1j鉳 /WLJ+eNLe=1wId38u&b?&^<{ōZz7, V72 Th@ 6!>rzNB- cԵovwY1^^h8K^{e{oP+(n,a"D/y \M 26*^6(Iv"vh]tĹ|_OX75 ݫb> +0JWnv]H<`CJ*ţhpD?Z]ʖhW€GәbWCMRIfXUNگO_rdk7) xQ֖w) t gxr~@NAx hx&zsG` Xld6~Tӿ2u#~(ˠCMϳ^0t66D/mXw'R+lSP3/BQU06Dpj;ju*%N ̀n${<yP 4gP@úߜ-AAmt1)\NyL;Y$29At|kn[d_ёmď b;9Ǎ5.#ߨ^U߰#QSy/VsAHhHzuwӴ<DPpq9S b$5T <Ɇ ˧t;KsIo ˞UMȕ\*2d| U?*eB_Rs%wk0A`&vg #+_zE^|<|fl3DVXƦx >˩J&Yg6 T0W4˨$Hp66^{;$iȬ7 ^߽y){טF xE:6ӍA v;S[rܟrb5I+J>`d;yA% e)O0cڜ(򣉀ZNCMi|"ׄbOĤK7KW zfD }g cJ|嫒׫E^yD Q*Fiw׈6昢ly^wc>!ceB,]~K[PϠ6׋d;̑Xgh gZ8#\~1=7U?>DxMx{{BQk>t8[8? L'V;M򜀎Df*/Q%EŌwP ZWvn鈘,^Fď`s;t sN4q|GZ/ہ>f%{aJթcFBq wS8m|fq%>:땐\ 3.ouV# +HNr#)yk Pc?=]nU=&>ĄXeh> >6M0sє KEGXI2n v544 Kww]Oa\EgD3S{TSg[0KxIaB|L;ݦ(krJY F!-yՐ3}@ Ln'AU~Ly6Օ 3v⣐ Lʷ1߉zWaqwBzoqr *]jnI@- 9m3&6QNH0ѿDvBALl2Tύ /+CO{B؄jMPksxRPFhH+="E Y޾ExVɼ,i<|NlB4q|+<^Z*qN 1IrT,6J-4n^=0*wa|&D+XyZ+{p4< yUğ;'8)^q5s &j`[QUœm6vCpD#roɨߕ)~13ROY_AlV(~d$1?8 \:# / 78 xa[HKZu9/)t:~ D.Vj7qb Mh` EBզT>N̮UۗFVi%ϗ,Shdt$\k+.4BdNwxz?C 3_Kp6[T*oe z]| W:}}khħ1̬"l>u>G&㏚nl>We c?@r>H\w{803*y|7lhg $S'IVҰވZ x>뙸k@#t,q" F,hō!|nI@6J驥LNޮE.LE7GdY*_STLs"4_-K`ŢFA^@/hKo%O'2Bni >w۳"1A&>UNad aS4>'ÌLw^20Gl-Dmߺ[%_7OiRT5&e ӝ'5\d^uc; 7|**ϲԖ^#!CI=[E4H,1pN5nDHzn$|oe;Yw@n{H`+,4"99!W*q"r &Qz?8jRea (%3Z0YX 7)o>)O}IN?$xvZV`WScEf&9^`Y}^zioPݭeyS=t\]cH6㿼z3ӌzmrsO!'UrhoE+ &^oٶ M!GRU062DOn)RLOCu0pER󰦵vaMG"t=i>i}&0xQQ(IM6//59aY~YNC J{k\n*YN;H8X'lVmGהZ"~`S;Z39?vo. kN{SMe1Yɭy0$LE.v7WQڊ nFD2  DUj12K_bSX.XGg%_$?"<  KeΒTx,=)P1yJ߶y0vCŐ̾dCHwE5 siHF%?V_j\8;r8}tȠUӐߘ?Q@j ]e\brd\i g'j Q3p%ZӆV_rS%ju#zF]+7ƤIt_%U$V/QDZ拭Sd7-[m4_W+Hpb8G}{zAo A;~t?-RI+oW_°͈#b=[/4aRCx'c_;+ҹ6XQc0U@{W$g#Cz+ W. 2qYW5=b?( f@fpm`lQngn> OG"BҖrt 1u>]BsNH/I bb c5Xwdfb FRDQOgG,r|;Â-&8{U d$IC}@']aݦ΅1o/i[#7PJ _Ё? _ʀA hެ_Ku c "?B_hcfNI8IJg7!b0[^3ӎsP#_mtjuj!Eڅ$1xu ):I_X{ 8;g}T"'6:YL5Qd]}aN45eZ+I`{U,7,{HYcd='gGYk9[L7{"KV)>>𬗯imŮeTp1DO.Zr>=B!TΎD f`x K aRCOyV=9&2۩M"R[ҌSfnhAo65 #(!봺E7lP\ȃ-|!!&um?C#^tBXy3Ubof!x30 Eu#GxH~ 8RH<"nYڭ 04\+/C͹KB -&mz .3MX75Z'z j4.@AREՄfMLg;Dэ|ղݖܚqUm 2aY5Aʹbv ~3m*~0Nn* A#$ׁF|g>zCNwM;@ 쪹pH]''AxWRIϼ:FhCV9t+3N[YK^=vBQf$҆95Y֙,xXP٬I/lq X(}+q-0Oa_\'C(})qw-h^[Y\Ci ;kW0N,&x ~c{&O [GLG+27vf kjp@Ra^DJYaAHcVQ %"(u6aCojE C Z"@"B)9; - ܀s(R=~&VTp k;C͗0*`/c9MuwG$0{hbB"(3b!C8%4Jʩ ,7y ,f3RR 咩TPL,BM8tB4-?bGd,#/w1;)xxcb !Z`Pt.ρ&栃~,SSq)#WDw N^j4̬VO=s>6cpnjSy>sP6ygxBwʋ| r"VV̨2-! x#;w@b!p:/9ztҤp$~d8DjPl59#yJ!> 2 lj^ūUaNaK29Q>6~T3^0[_.'[ǀ9^4ǒVp}=C)Rz~} $T=+tK;9di-Q-i$1k(Ty>QA `jT1|esMȃ$<R2J ˆk4&U3!ZLJT$}v̊NU@^FU\rBI2Z< $ߠO>>ͨ$}Sy5rE5x^\&ov氫j{7ZmUU #,:qUfMک6{]e[mDmj["1F/YۣdZ@*Ir N(6W1* 纠-w Sm񡴦Kv$q]Pȁ4CMs G46[=N7V`Q@o׭_ d:u5ż F6SF{ FDTs%_*7Btܜr80ók6"p10uC8쇿~D$(CP_{Kҟ#@N}o h' h5TW,\21;@h=2Y0XE²Ag{X xD^6HeXE J++z30"F1Fܤ`煬?mk>š604IL1 `]-s݀gȬCP)rS%~*FH~csu2"=y Kq~e% #77c{{8ʹ'+a,pq($ ^kR7уO*3g(oӛ"M0gRw4ٰ \?u@a!$ۓ(oQ,Kl[UMO7"*̐Rc80-)ѿ{(C!68eQ?M, z>s˕rzK IaUHl{V0٢q 9ʈuQr5L]CGDcm E)ļY+϶KwΜ/%/fڱ% yn cX ,>F'=_Zs# qYz{Rꌤ)|lgmgc<1#vB Rz  zs}*Q&ml߸KP*&9 L^BX+.l0bg5i/alֆmH- G }'9@žbɒ (_5⢩)m?a:%9/k5 6jKa''C`٫ 6{DSdf7sG$!]CWGEײfT/J1ByO"9K&zZ3:V Gc<$߳HU̻,]oPNFUsšԩ3UYPk Hr0 ֎ W+lţv0=3T}_!` e]\H Ve.e.WDGU֩$f$d0'-a)x=':(Y9H^?VjxZ`H4ZEĪ5>P&{{4R<$b ;h`_ ߴ G{fu bZBJ{|]֪49zꞆSiȨQ"L6+Mq+(/p /i'k0S|5hrbr zdWSPU,?T=83_SwPպ|BKD{I<WLA `ͺ<^"jd*/`-Sk-/8C1J*)Oh$9h^Uz1.e2~&!@նfl{hPR8{>ܞ;\ ܄=4ng8E'GKѨ!񐎃E3J4ArFC%ӗ>-q8r#~&ÞF)|>1_=#ƒFw.u-N( *jk& |<7ä_@;n] _jzՈ6nCDrז?aHpCy}uO"W|~ђ"p[ U|".RBD]kd$$wuidzԮ`0$XK70e_$Ǭi0I=+zƓ`_ئ[4J50N `$$a \&=;_ n‒F[?wȮ^hj6 0ٚi}ClF!;pV|vӌBej+sj\m{IR=ʿnDDuA䰴`YU>g\O2ڝvہgGG ԩb&a E2:0}ET貈 eYq⷇ uaej-7+;) UBZQA6dךucq0q$>6ڼCsb͐IJ{nGZϕ;3P>k+tAd$S $]%F8IX)7`dža.W+]:|Y%Nn-HVh q u-m~<}t`FA9ƳB]}`,3"V9^zC"eܶ{DtNC3ͫ ߏٓ U9Zyp^F %Λ7N]zQpȔ&2ߑ !h zH {m^M21ʫkP7S[l2a`]QHkA4t$`%QJgX4 C&nF]rIQͼ#_*EY n(LixJ0 bCQ_I J!|͌-C]٨AHOGi,B xXr} }/ Fw(9Zjl݌LN'{-с[?{FÇͳ}M-`Hcړ4qv.uB=kS˧#xIFP^ &A_*Cq;:03b3m4GlFMGp1XC}6!eK}(cr蛱*Xnkxda:5un{-ey@xϨiɄgVu}Y S΄]yS?Z&h_yBůhZ43t8;a$(Zyo%a)q#hE{z5ٳ]`\Q@ :,.rIP!o뼷g.@?#H%pV?Ms颒)BѾJG72aU)@+*:Hm|M>ơ™WI"+$Y%%N1 q9b/mW 7%ޠRfaea+%C҈M2#[SOr'u1}ϱ0B;gqF74m-ܣo -3I|l@CG/  VyZ72 )9/FadӺ\󭵰c,/@ڻTrVZS`w%ldKfZhж髯U}Fbo詾x&荫/I&X.L|cܮaU})I@1YD,MIcXΓ?At9^;i3dD^f(vO&_SA fg(.m-piZ2]A9&rB{QI<6PijR;M2"{8(SJmQ BU?#D'%XZ+hSy0(Sڄf9@ &/j&]ڒ n!3Ϙ/64s92I7SܝњWTo/pVˮF_@gRB#WCdpBff id&ƃMx"_~uty L٠$2ڽe$]4x,=+%r[Nǎ vGxzyC(0W T4s`-s.0BK AYڼt +) |Xr?7N4ł̋`23`4@wT]Htlf 1ԕw=pX7k7{k ]rqml\yjWKb9e' CZ| r4a, }{Nq:Y6L)%3Л¡OY|qZk$!)mfkRŤ} P4e6FYcnLK0ὓyCgˎߪjIУ*jʐM*&q4$ɜѠs%P)tcnDSC|ToؤOju~e7, A$->!4Bt0oVDsN.'iSKH$ΝNn j9ka ;Gr@<^UHVw|\z(h^NWֲLhm$NT'~Y.&B gwS^sljD_-7_Yq>lӣ|ƴr q\ձS6wiG[>߲m_vEfT`ۿ:0;O;MYJҒ뉉D<]-Mbſ$MZ+IKm%™tS]uǢ~]:);;N7.aԌ*2IșG]ȳ=~Y!LW:VJ _Wo9!%mz~#x_]ٸPPKPrvޒ=a_Ѷě#\oЂ' !j,a.}mrUރ'X.M@zZGw@{F0uo~BlWۮyp2 2qZjD#ZAF[aCO<.=fTKzb␍0+$%y"#vYq1TkCŒϠՃyu 60y^ thZ(dDgnPda`Ixh{/ۄvvTA6sйbeQ0x?'TRVN;:,ZE%AlL ZCzV62>A#o Dd/P<^?-'+gX"vK`TaSs_Щ6bhSavAD,g Ssr=Gשs7Du`kMu[&l5+碼7_(/köK_ּI8~*qQt3)DgbEIMi\Ң9{ OFnR1>~LZ *Q@qeͽ>-0yTJ:P:ekr7'{5jWPG8AktAuj(Ddށs\SB0_EnכpLa5>UJ^' bQY\ .I^%6ڕmQ5.\UgJ U 6ףrf\/@GF 곺!`x \O:Tl4 W%bQ7CCZa>&;{ϊ%[Y =jU - * Lě8|į].8c}0bZq6C RT?2Lo*ESlb!bg]R4SYP d+}d|.(%)<0B | ^d9k{t[E D5MZ-@KrTr0KoT vOv%fNdlL~ Rf0kdDC_r5"T_R8 %"o\ʬ< 26pHCаv;_uM3أ$zn="7}L^Ss# ^׮#z=cO̹&z'OT@yfϱ G2Z@אOms9Z ,GHUBB^ @5Ln1r:ikP5|*^2$?A̹3y]ٷk95x3BcR8UUR>V3B-K_@/0KH& ǵ)/lc=xuY"Զe /lA 6aMկ&@lkQ|թP KLrv4'{  S>V 122l'd"WRnTEVNq@<{ٲBQ QC@fu2OmUFɠlGOŖogzY%=^Gq{7I;ùtIp[}94?ڛ9Yu\BGg|1QVGa'ju*aިy;YLd~~'"WШO$w.Ԙw8"gVz64>cn,t1 6l2lc-dLMț5zRKs&g5>t>Vԭt|\շ1ZX N6dD{MNDHxF\eK𔑭㏦9<%9i{Ϣf_bzڂ'Ґ8~*avg )%ǎɝD(pc"L*O9F)j(^XVZwxɳ˨ \?!e ^*kcq?6Ys}/j\֏+]' 䴩Bcmp(`5Dje|P;yLݞ>7wZpwi`ؠxE@8kDi~3`5&w[lbwӟC@vOBEHqKⱶj G7~.-8cw}[Ye;o̖YYM  5[.{28ÆfX5y⧥6lr EGsŨ?˭9[Xփ@-P|C:lӒmKQMKz ("$2-; H\NVPtoˮB-^{K0 s:nP' @3]s[6sE#ǝ273W *bH9F[FbsCY;92qVBBOӒK-E 줢^yk&A"p~ސ^J\QNXS8HdA ʺ1VtEM"dr(U;03e-Ax(n9WeTt?B+"YHonCG;UP!emWj,5g:߆Eq|aE y6p.)ցy 1?&j䐹mkn勄aF뎧$A#fgRN &8+Bw>g-왲Uxy,Ib,Ž@16KzqM\g(#ŚcUv Qs#[)2NU;lC#lJ%FW49g ?*Ą]D5"HCYZ$P̟W*,eL ܍?T;x1¥U .ZyImZ7 Hٲ| aҶv+0"YYĽl;[(v xVl*yEn;r }W-1'?6Oc1ޤ,5M= V$z Ԇa K=IԆ[u5roFױϧ+f Z3|1?TN~F^P`s7dWGk)\mzĶM_Q,lٔ}h{ip/CϞsy&n&s1&:G鯛2VƬrS(D$dlZؖۦYAPq-*vp|KG|1ˋ1,"8|:#3ʉ.U`b?*WJ Gջ0PBN&XU 0䰐.q{@ Y.aCf+Tk7Z8r c1 '(.7TQˎ&m.DP]PbY쳬UV~(//cmʛDB /! q.LN2& ċ%0ޓ=q6QiɬPLC<5UTD%=:@yuFUB,VI5yYt)luSm̆Wv9?}K.`c`á8@~d6]e.-u|;u֥{!!0#SXfd^Fw)OkJ_zhD~̝(E^2v"CoKh Z|eA2*@&yXsT/}2Zsb. p#:ҲfIR?iI{zm06c 2g<+vVqqt\aiWe7#Ac;app_:g&!Ⱦ1+z2A0>i`fhBd=y:OZj}EN| SnIȇ a//}בj[L~m?ת.UZ,-kjDas%rI{VRПܩ ,rcESۼNC& Po&))]q aBPFO}уX( w]uןHӿiySP@#5ј׏#T撹Fj}05JNp TVl#A#zܽ >:kj GZB v/Ӈ"41uA`^|,hnA9P3q,zkqRCyި S收S6QgS٘Q!3&x;dp`V`%]z]n^391d|3~%HHbP+!sOʈ9rڰqL\P=KaJeXd8W ^>mO~$ݍ-6_+RSvJn3(bIXowz(R6 nT>1uz8A3bPF=8ef潂-%Kn0(b8/C:*%aӚj+Aߗ]<$9Sqk:c;>]ǿi`<)z|= ( d2a)TT0f撕wh }ɿ0~h}f6V6{Z9Ȍzv%7P!CaHLjfV B&RDxPG)5Ӧ|Z] ew4f4/f&rv㨔T]NW0l$!KhP 8}h o\ƥ%7SbN^Fy9jz0?lI}x $,LB7z^vf46_F*V@ Ã#ƻ͛7b0t qԺLVH@ޤ>:( ~YmB݇$&zy=^\0?nCaOG2.3QrUxDVnG6y~q"El7|%sO;aj~˂ ɢQQJ |,Y5ic/8NL6>ky\&Z.*BOr^IEJ&Pd,tCPu u3 u7jɫoڐ ?VmLkN^ŗ)BntnǞ5*@Up[(:L64kiH.PBe9$}t`3yMsj  a/W]3Z; 츉d! Gq!`$0b|J=uCч9Ftv,*ɩy#=hnN 6Qt@g/'cZ<;4Eۇ1ںcA::>VƁiډ%'ˎbHgL^e /Gb]+bbZ>GgL)_L?f ^<, EWsЗ/|)YPaeQ}5hU is?dGRZ/ {DXI6r>u8j?, v;F4H쫑އへpH#%.;o/g EB.™q?{% 1m13%ip MW1J{FlZ(lF^9>yzMW~c l< bF+R7EcÓ`Oԯ$·=Mwp~7Q6VrPaԳ s4,,^A'"4$^kSzIM |e1Gl}!4Ji(*)ixGf2\L_u޾b^@ W8x85&*'{ZNUfHt\%L,OԼcp]퍘~/kzZHy\ ~r>Z}M&ҥ&*ї)HEU1=”?f經FՆF\ WL1tx(*]v'jg~FC`|q4gǻRZz9Sҝ -}{Y؍"E уM0p y45>h 'TzgJNMU${8£-Y)ZRq0t ))̋{lzz ^q.#F'.,C7#EB>I]Vwsj4EgPCU0cy.=/Qak\Q`#)X/AN4]Ra<_,1aW+ \˃|C RR="s'\[CNд4A8qQf*lcMe"^g !My-Z,@e^-˽p_ ]/^" Ľ \fVrl@DdhcZX:& wEl3_܆LL{E@C)e+^4ۢoh1}% +P?|MO_؝VƟI{kr] ܆BINd(F~rᣂUNP7N䵫dqD֜6Rܺ;TylmZzM+7ns< rd᳷/~˅QN.ͳ~q+^?y&Jzy4Mos׷xL/Dc9~W:}mfU{/yN)vf}r[:ŢFUELMqZ ?.Qha8xi"[s\ Nc ?w31IXhq}`=6n#!yLT7MR'n(E׮f%@>Ѳ˶{;/ Q[ꩫ .#6:dJo[zt;d6 L5gtq,NEo,\>Ls97QdA$3R~s"Xm^~m 1D;Xm֖rL)7' G-* |&㑒=Ȇ9$k 2np?{ԛXdu/SK4Ʒ7wΖ-6q\+"9g[muD=_aGgC%(C^tf p g[n Lc`lU)e;RLڬg}|<n褵 ,)BWm (K9a :}LQ`dJ:T0w8RĖ!p"yV/'Ks;x; 5oQ_롧dm!Mk`2*:בd.4Ktv;W]}CV,я<óU5?;ϰ1BdY dnM[b^J'A Eϯd`<$[ KP7 O_SE&@ dM- O!MZ3*HQǫ fpu琰J4K=~\^oE+JP&׹ySoqOXo ʌxbOO+X3@,[pھYm<Ϟġޤ2VOM\eIlC1i,&SL" cJȒv{stH;6:bVo96 #Wj585Y# vEϞkBӎTEH;N$guɭ g#q)(2bvA*4:&VEֳf?]KFx;+5 ZC3l9)?''h<8_Gc^[N]D#=X"Yѳ@JSf.*UΉ5yaҒۜK?akR}BO>E:ʸGk H?T6ŮW¾~UVG~Hd9Uq @T~^RFkO #vaŋI֋`Pw?J3ިwxψ~ c ʥX(*MB$y ?v5 -J@jIx꺵aPNKPrk^" ye,3º,ؘ/R_u4`5[9ԋtj;7@i}DKj,x*~FK!e>HO@.=0`_ \ ӆQ}6.:rqU k9x ܢ jɄI$XfЄi 9( wb۳ȭ ] [F yn5Z \FJ.YDk=8[o `3ŠAGj4~ Πwcokͣ{ g|sN\8QXr(T 1):@ߜ5Ņ Hұo0"d ex}7)A!Z\F e*LqY-mŞ wg,돭SQ6C6ij~Lk0^׾٠{}vzyC2U-3 k1^gr&q27NcD-u;_`c?U!&\0{AcdS}{6B8+@`/&/9k8_HsvzG)D`b@/ $,:+'F$8L;~pOvsү"3|%aT+#x:O9+&Sj2|BL~<101rl D H/)(\6cAq >E=JGdk$I8zVS6x{bfR-5&`ѐ@$%/9xH?zD&-/8H=cSV1B!sS`Oc1PZԬ&պ).~SW=zTR:U>^Zj 8"љZb!s #1?R8:INEFޚhY8<6JH)㐑ۇ5SrCՉ驀qZ 6xeKD^,|Zq\╾O@|ua,G֒JBEz%饮X&x*чdQ )QzZ8gjHl<:۩U g+KL#yb sEh +C9W2aA{Lx3Er&ME4?ӘC{\`.D>W 6 ];;ayš%lR5 ggLRj=(E?wyofA0!ФF{D؀ؔYMZJTc HU!-pe ܕ@lZ*KA'XFKLTO? WvR̍ڷ+ũs+p=l @``&$O&LO!/ikznaIF|ހGA2oI/mKF> /'%T*~ej6NɱOBY8 ʦѪïNZSy@NOme{h&pb+l4Ϣ .aO$] A؋ocp<5xgXltd أKJUd+<{O/U7G;P{}A$^o.: ˿qtiH\SZ] ⲕ0 a'e?Lm^c"Zbzbr!)}Ye$u 2D;}+ $aȞNxSk^p /}O)A Sſ+u.?jwRn\1Y&|@0Ԅs}B7 K(~_75;S{v0B/vkg,}žL+{S'*S8JSj/BeUq%M-E`^3Hv!Ӛ-buçL,>nmgҺp%4sy7\>@-yf_ O]#|͏S9(;Ewz͛I.yB@QzΕiH}\񡰬ޯ hϋh.n]y!Lzk|!6'a;Zf&Ki42T|;xPhGLsX}UC'lyMmt rQ Z4/b(^Lf+2ĺŅ躥۾Vq1yz[|(K`_Zo;? H؍{#FS70bd{ uմBB}0/}o`{AN@I{󢲨qwP()j&;IXFoWpߊX$6%Iq6:UpS[2/Jb'1+;d jǗG.0@'''HGͼ{E)8EqԊ}$CwP!9mfg5,7Av׭㣯۵E@Rsqޝ)U#A [eE?EV pxJ<|bcz"w_$=c`Fa1;Tz0~VJ݁cu3Qv<<~(P9ܭ޻lMGzS=C UF)k0B =lHF(x7[2?#\" K8tĻnequ:ex,/US!`KuȮH&ƲYiU_'5{D\ \7fqΡH_ԧqdK,l;   cǺGPxH]2}eSr?t7XqDX:z4KȚ7^dJ?eM0ira.:}J7"1䫞Q!-.Jbi@h -6NR >c{L/ 눢ck04'9W/d$a¿7aeP4 9[qK,c[[` d:AGo)Q{3fq PٕT&tʝ!8m1t9 nN57Ֆ!!pj;~E|~Mc q aA.3]BZ%x>[e4*,͝ر ?K\hpk=;Aj)?!%bE 'J4}d~tj6/4c֑.3O>e/-LvF?qKuy0lK~7)ԧ O+Lr F[lW @WH#1wRo&FֿTU8x(;]RE_(>|IH^VӣIXy%"Pؕ|XNkMk@[  'x 71Ao4 i3؃/J˘ Ifʞ|c b rΝ3_tYS)W7 c{sPV-tпG}:7G.u^]@3s^+RL~ThGz0J1* iaG\_cA_NC |"ǨKƧ65p&!c=0oHzF'=>>gbM1krt_ŁL9ғZ/>o|gs.reX.qlDVh8w{1v]٫Ip(*xsgIKi, kv|yoS2Ys$e)a$l҇+ԼpG1ɸTdW[G{uy; 3x`(΄nf8M i x;bYV-0XYu=bOvzŎ ~ff$"S E`,Yq?@wo#tZ*Β+𖟳8oX|o 9D//cW)lgīV5(L?xC "|4OJQCJE>/T&)64`dF(?bJ5ApTx{Q1hOz`$_"ҕ@NkG.P&Pb' 9gF65cf:䭥_j0 {^y B%gQЌLؖLʩDV,e^{i$ن;q)Zm' ߭!¡λkc_qʡSvEdVތ5ƿgsk? XoaSI`[e<p⦟uʹYhݓHQdH73Tb9޴|wwo)EDžrDe j(/h:p9y+WM% /a? LNZ땄yUp{8dbR`h{?;N5_"A7Pٛ,Gq& /t|ݣyZ!bY^LMNeυĈ;̱6hIIohaRuՋ>sj+E4:Ω~\eih(a`Ik},sӎ WE̅H6F+BхTQ;Z~OH?ۿbה2VfI _мզdծ:EդrVAK;/`;eEbP5w/Err-lYFPRV%cm3o_sCD^T.h5)a~8!gd~4QÎ?Q/~:7TVy^& "q|$uh" ^mbk,#m.ԯOOxE$9tix LZC9ЌK[]'i3iP#ғSߎ#_"I*2 -~NUTTُ_p\ ?N{X5R|v۰Ơ-q`Iђ'PɍbH$ !Zx4L"Wp6 Y4&B7Cvٍz,o4^Vv@c(LKkl?qߧba.*1Uݫ8'Js5; /$M #m.e]' AXeHe"U/f:;)6H.cH?Zpq807ߜ%yJ#9ڬWg)m86F=&(l6 {G0bkB wx `Zs`)/6n CI4Kiu9/k8SS-W*i`$Oc#ڣmMרU(Iưefc&Xj[a>c?!̦`xJ4+Sx5N&R wzUҘԵĤby6CK+"%$:Mi%[pB;-C(sd& &EJZSy[iK6 ZcMOdikVb+9"Q{^+V 0Cko4 ݠC^&6̤rC2fmCRI@V<~6/`BpC?15+ '#(1-ҟ6ֳ\rr@O\t92_y%I#N'Qn=CND a;p鬵܋يaȒp:;DTϰOQأqy@"TZJ f#)+ 2y=qˎ J`Bh]190ӂ5Lm0H/eLʺyԵgk3q} :*z#SmU|P"|c-beZSU&.^wlI˸Xc.=oɘ:* :`UxF3hvNT'I~ ^{WL*iAeE9]"Qi7QG\#^[Ka\ʏekjG,/G#̀tF(9m qd +[jm(r+Ȭ~$/awePRaEmQ-sJ ~-:NrY-Ѩk$B*l|sOI )8!y J_B ݋ L֖ϣ#%P8f=l͒*7$iC;SkUg1OH'5H9̗3TK5̲֝=ϻ̸ft~oE ߊKym&~ޭZ&ղ׿Ёuii?_ 8bӾ ovf9eER22|[!IIZ&+܁d&q_0qHx[^09^M%S:q-_i3Yp+,4- kGn7QQbt0ތw@BOtyJ]Pk+ovW%Ɩ:R@q6 #Mf@߁MڜfFW $5#μ#qN$;%gWɱ\ 7c WiS1r00920/`.BI_Xeu9S]nMgP*P&˻pN*L.:tǷt,[JZߺمd`/*폤z 񶹢1kPhhc..(V.h;Ex̼t ܀hQ_Kg`0#j-UH%tJ&*/ n  _<|o[0S|јX9a4}ÍΘq`0,YHdeX/'Q9iaOX6H.gd+o'JnŚTt[OV@]iJk9yv*BvLŢscJi HyA8џ,c0.@gvVӴ(1Et;s .yXIǂ"EZ$:*PlG?O{ o/sDF"Ubi\a J>Z*+kMjLq?l#ܠ)y033EecqB5J~"QmvkxH03n$IXʪ:>]!NSE[cf ff ks,u,R@u`䴣oRhKDŎNVylv=[,|fcS〫#W(ȧ|]Ö+|4pڭg$ +rg#C5X\ƢdBQﻸ1p,l}X6;gXԛUxxl0Zq&bNb۴ 9{Wd֜MZ,(g?\d1ȍrsdlIJF{ѓ1,`8CόO_jL7:Iˌc9H/mnu\8IN=wks$ AX8=~f(d 9+?m% @Bˋ*#Dj0{$?W{6AWOM% w(U_A 'S zr 14CO=J^֥L!^h!$h#h55rGr`e p8k[H;^ ԑ^盒|MTPWhqk缔/# R'p*\}qŽXυFG.Zs:љe`C9Uw :в&Ftrg~VEyxwzyFw 2=u8if9Lt,=Klu7Ĺ\SJXcb+RatTjw\*4WJBu7sx.hY!5JjHB<03ZWWΩy:*i9 ǞNsVx$t'iP1\0/6]NyAh]1W(^w>ë8oJw"Z۹/ܹoOiϞ mTˁ\,|9,k6ļDӇ<ֺ ϺAZnp^V_w(q~wFfLã]q}^E-j]iDaܠ.]%JMu;Talwɛ[Jz\EzWy٢kF#"piuoYD*%-xTm<%47-F0 23Ԝ*(:b ÖڼP:m3RH2QL ]/_QEW˭bᆩ=L'bT:xaER^g&ӛb;lkL,]g)׌^#J+E{Hf61@8~u ?O-E};#D?GB#CBxzfu#1T,w0K0glA-'G}YG{yX4ץI3BWto" O`~rDX2GLxdɂ`lo+_LmlOY?3&u]iعa@{8d 0a#LjZjd뢸]5c- -S={&ɚ}}|$cK$t>!HorZN-?gbla8m {W, DӜB9217tC%nmlp"K~F2"\Tf@wOO@X{Bf͜_:=+ U&|'ҢK3勬V.x#6@쐐^;+LJt}2S|C@n&N43Hu@BۑB@ w95Kb%IfK2X%`c9e7еM蕣o&Px]|1oXmT|XL3uI݇ &p4x~QLhTYa;@>FQGP yB.NZ&($h n"N!cF5r=fiq@vZ#Yl"Vs=;@ϛK|ZK#&uDE"|h2 *`JGsxFeFT)KDs6 , |.|;s2R(C&\;V-{c]C-eELՀ]nYu?nɼv/(ߡ o=.a3a^"B԰*8xI"s\b-L1?)iۛL[*h95(3=? s3ǃ쾱;.Mn&^H,)h?V*U"Si}qDdfjIm(`fg=Z{ ^L薲_ vuv%)ucrm,@@ѷ1$M-ZӐ,qPku)>3I띌զ6xPҍULSFyBflL@2C "4#ӨRW+}w)lp^tE|f$G.eY2`-_h]to]1mmr 3EwU}{ sa;Q#bȿgH#`Fo*2)ΨM:d0?<w3-ڃ u.zS8`i5 rfE{K+M$:K| R26m[( +ҎWq=͸q6.}rLQp9ٖ@\h 3,c*s./I쇋J`; `b\ʒAiEns:/"@IC29ZGix'=8;뼕rc-? A59|%m8} TbyGb+DFA]/{L忸d`M?0+&CӖ19#z,/MbOƐLꡣ`"b|B-5YJt{zE_Gm\ϩ ,>5ra#-g/:%Ou)#*yɜ# >g囮ˆb*ϸ\_[71?ɟ"?1J2|kRJ7*΂8hw $&zЋɁHpˡyI%+?]3][t9|)3Fv#6^O*vPAT;ro!xD<8EU1S"rJ$W9UOZAT[Bze5n/{p?C.92$}'舝Vg} zWCG_ xgW=Ru:$gaõC Aؿ(]y-9R/aZf 3{U)J0 ws<U^ 3 }PrS0CO @ ] {*);'K&ۄL7? Aؔih% ,hdP(и9(&2FI+ŅM KdA|x gRC`ءmyFa͆(Wěk 4Ca!<19tj{wKz4e47+;+:q5 v~${vp0աHi<(j/!ӫ#1K\PCC SȬ`eHet:-"=62M2 >RO ]Qh9VJl5tl"Y-$CqUw fIf}5b6V`lo4_Ї SD Xi։KGG+3!C뺮뚉h~x )u+M` %'3\+T.RBDS`+sK"6]L Gx'+"eG}*1(R'.C5Ԅ<%jlΡ#ORg+WJBtr*,ځ䶹`t]쎎P~?,Z&WH_y9T<uPnּxm.'S:ķ1$z@&" t˝K%泰]Dˏ|D K6XҶdʭdAPm2<(qkgwPB[Z)6U(W txQ@ӆ}s}e^0&Bp*VyDcT(TAԠʵg,1JUГMDmÞ[, AdL@+seqmf@: 0^ H\+_FDƊ ˆq;M0dVoG[Utbhxúd's^g8n.0KF+ZUۜ5;B\=k' #Zd_/WύHGg;5rnWš %i+{Lo(U<&QzXz}m_jBUNGs"6(U8(Yzq'yD(%܆!#') } ޜnAP?a(^r|0؅Pz(AgK23e= Ȅsk{mZ0IXB8B%3>|8œg;lq\W><ݩu(BhmIPyӲQͩkyQ 7l'iyea>,V^3-ѭ: [^O&T]6Eb>cJf2_G9gKAψg %:mgeUX׭IBB_ -C2|$o'bq -ӁkƴC*`lLmk!Jx>#ԻL5FY7BܘXu|&!>%3Ṕ]X\O-yb~gYiFm83$:%7hei=wEDR%/Nut]o{|K?Z}.B<$6|C P&V?kOGc[ߥcmK'!ʑm9m}OL-5Q(c1o@Aln *!cn ȲHF#wWkVu%eҭКeYvB,1 gB%gH j{C 7^NcyJ3ЩrVk|E_4WPɗcpCAS4ViQھղ_h27}f# /Ϧ8d;Vq"* pQDo/S ""R=_~}&]AO;>Bn>~ )"70QI=[ hI;D˰2{yOӝdQgχ}ͻG1- SQ_j'DlkDlhr;wi8Q>\g)g`GHڜɉZ퓐[r<%2r^&KD@%&b pO{h: v-lB4kIJv28+C#yy:Vp+\Dd6M Ӭ:9 O<{p -xbd?)* v'Bٽ]Do2@k;FIv[x*mdD7D&,b{ŅzCum}C];hq 6;AP]{YN?&A[ =Qh$V.)NʜUUc|kJ5\sʇS"$ܙE:>0޼~]/jծ'iQ 2g0Uq% ;vG*lsce eQJC'O7ոr(ckcSNFIWX}V.(1彄i&訆P0B Ku`qBE>|#m4KD ݡre#M6BwidW9nY0 !uDs߳' Qj4CU~hq$@^[ׯ}su\8T0Y!"<K.|k? C[ $37ЄpL_-P0? .E̫LTHUGT {ݔI$<3ړDҴ\7K $@VI0&<\P9_Uw 'K #wFw$bt#T,~ͫ(>cK0"jAL4 oa8UtD rD([oE4./ ਸ਼BCh*` ?Ť 4X5a8z[.\>[X//O&MT̡n(dee`Nm#W12󂁲Hp}!Qhܭ c JR} 4Ni~ 5̂CrDjEAq`|y.8}8;ܐA#,5s{NDy/#+}Y8e#]އCXUV*øR#a& g(FEς8W/ZZX|B\p$g`:ޝ̳.ԝn^ifqm$Hnϗ˅ڔTG4U} X*%LuН"N EuTy횡n&b{ZZo@ޕ^V=c.1? wvп+*2׆v#UW\ueߠM9 bLJLM{=ˉ7K2Y 9j杩@ebe/|ik$3XEj1{n]Jy;Y9zX4^](C1~ME wL ~~3i4T SKDOC&ߕ> <}T!n~5l/|I沮+ nFXS2o휶ڈj jҼGfDQ18 :x&c,ofÓFf*[1}̰#DիsA.*ּ9yo!j 0ÓھKFz]u4)/-DȟRC&D]wЫbޔ6'>{'{63{ƊE|pζobm3Z7ώbv~&`5nÉ ehCٞ.:?!U,o'+xb ZwՋ1|AR AL)Qg{TijQ.%!">^hLK$̈)eD7}LSs'hq >&b$U;1:Ua/Kf]1Ra5MC4C: v^A{;+qlsuHk>ӳF% .`eZ3ȇ(y.)F@PGx1O>طdD]` T` "yVsWHB,b X4v1ҋ/z2#Z,^ 805^,-D'};BhYDѱ>~Ʈ7}'/6Rxo,jl4_AB]&_P%?sP*g<@tpSwjQP8/KُTGcZNk{~r,69ަ(#\A!Ax^^Ƿq~_N:GDxhDMhQ2i}Xh^JRޓ}죧UHHH2&P"q`_Eo=Ek\Sǿ rAaNDZ b&rh8hF3Z5 mj8&w!q8OIhJx bkUwQh'ѝU~T*6sVu ' wP̠I,PٱT]yJ ! q6˯c^^Baz8@Gvoi%]+rUKKM͌%TQQgQ+x_qHDƆ46+]L='(?!eN ?1.( #5ЉmKm[fxGs8?r-{EnXBĦE[(&-ҷb&67h<)bŪSKYM1|H$e'X@8oQ8K<1Czᱟy?HK3qVX=sƖ0fnM%XJJwQJO,;wu*IM:2SHM~^l H0s[T Ba.eIKO"FwݸJi +O! .3uheRznhY.Ec-ygR&i 5Nĕ/2p #4DT'3_!eRgGG*MHpnFQ4᷶(v!Bw"P\wMi۾Fկ&ḝrEZeShh :DkDⰚn'UxWJRZq'jmIk];4%yytU6bvqϓv]Noc, ɒhŽ?ZRc-X[I@˚f*q[yv^4{k`df}װP,ai4ZM([9{J|SFoU|43:3dRC5'R$ܟ >߈A qO(.Wĩu/] :y= Q,Gj4Ahfdұ:||W({ !㏋X0BAZe\4,KН̣σ&6ӈ>bu}Y߇l$d<}ǕG;G52O{1S6jԪfCťwʓ>q|+7\n3[76a˯"ckO\X@K;1ԵnQ]G@NtP"MgS C<}bD! d!h$ $%cT3O+63+r2n2ub: uKC;N>:jg?8}R8 ..UC _Z$V+8[+blE*/Y}'8$.:{25e-m~L;l6qa9դGS[k@d3ZLw|<~WBaTJ."cj5߮-d8Li1f"`Qjhxu~.Dkwυ(J1B$䢥/[m<ˑ 4CZQC0Ō+TmʺY8-k`l kنs츊 Z=xyUi~J_H+bTqPl"1~B\TFL.Pm@(ğE{qI - Lf6e譳(;!մ2+@ZjJKP/XG}S9]ZP@b4ڞOpA7Hq< YfJxsɳ8fflA"(u~nzm?5ȫjwyw]tڭXD dg|)n,@[oIZM=ӃLs/X5o=buM)MSAƟ W:q7t?\gȶRNs8`H\-Oٔ@^c/}lԢ+MRN!]TWSH1}>>@5;b %xsz|O3N (чZ1<:$|ΖٓOag2 ѰHCE3`ޤ, fQsQM*v*)7^$.>R-@,{|FR]󹂞{||-f3Vh'Iތsb)=SfZ0w7:}T~zNaD 3~ !zSD]%l!Fġf|F5>az$κ@ߌTf) )hfsN$ 2grƆjʗGZLWL =4Po裡5ƒٲޢO^ޞ3lD$e87Ϥɹs誚jXyw~W;j)UGaid.p-;-0W,BEQES^ &+#ll 'GކO-Ŋ[}Ή|O70 LK- $_ŘWD^8+F ?pU O۶TWx3uGLmt}7f]=#rX] pn i߭(BȽ6LrZµgc֝~ؗo#&1] gs`./?I׬6(c_m^gӻ$%ϬY=WC/:A>L]i$lK)\2F\)HT+I>P FD,Q 5X6c*H><Ԣa2- CӺv˰zMA(fwDZT$)H^kR`fvhsԂz.ȟ 2J6(zY'!ba2k`psuy&2PxZ[G,!Ml˻c<0"wʸ&&;~wj͵Fy2h􄣋~kS(HU1NjC>s%BkoNZl `c=#̟"_iBM f:OT_A5&W hCa p1n%Fb:>dzaM%s5(D+$yKSHlo(ľ 6B2xb)eO_bOoU VrPI^%.9$r wnAVʢɾsfRVήRZo4;?`a"'頀%\"mɻطo-"&j2^P@P.ڙmC(EɏP>?ڹvvߺ)] #C :U:BӃ7F28ɻg9nKKMt<:! ʥq%(ɔ?>P~(Azcc"OsU={$$+WGDO>8uG`LR'ցQSڣÈ;tzA a}"&ԗ@k.gMΥ]om 4y&@4vA):oNQ!Axҝ@ێ|xer '}>h8A| JpXTsLc\sF moNp_#sU}R@j6 FD uvزY#IXD! L.I񗸻rLfֶH?I938w)CFwAp,!A>,M\;ǁآ[G2O>kRmI>7Hog:2߂[mqC*3DI)v/JX+gP՜"|wƌ`iRw,hʎ.IF1Z?0>l }yG$ƕBڙz. !'}-efKf~Ah-"Az'P){б |dKT,aA@@q DžjEzg6aԓxݱ91`"EgY^G +a-7ʓ6WNX̾={_ 9Yy>0ځHc߂ }ny`qowTsM4>J';uS)M.3GfxtunBPSejIz})f:hTmQA;[PV v#'zC#R?T/[ǁWhn5[5|ewYZX+7C/eR& i'%M@m*R#,_2+yg7 !:URɗJG9á1Tff,!#W9wL~ d` +` cz|DӎRǙ7pg r -kLODD-&wk>jFgI:n/foUB<^X!6cbeI+" 4b3CJqDXS6?34(ըh4BŞ ;XxSɹZp^c=JC\7W f$+??9c[1z2br;CPڎ!cVONc"$`iǍ#`{i(v#`u58ݠ&\ushB'Ajrr:6ЦAfQ9&CÂ_J4SPOq۠{lAjڧ/qMV螬ݲeyFԑ>ܞ[Pv!bJU@ɯnFV70.8lk߳~-jx^|fUv_ À}G":d !ʗG`感qĂSVᔀ,WDD?ZV%bT6X1 Yz]^q{ 5s*x.ҟS ldQ1>P9(4 G+eAe]=! 7b}78,veQWaA?"G$Hl/OWnO4˭:ZoWRFRmOܞe>ŕ;Y)?Kpx3`ܰ>>%W&0}UR?ZpbZ2#c@PE7hQۊ!o~p*O=1~p;,6 OL\b}p^˴԰A`ݡ\Yo/CLƖ"hOK)Jdti~eƃNHn,o*T(8׭p#@~zpfheR7ԓS5x޼$\XU(.;ejzƩzE%Í߮ʮsjFҘ%x f"6d>c[i"Z`WaH}QOS#|IGᬂ(s u3%\TVmeY>md(2llFЮL5z0$:a̞-vrui~x %uH}T1 c"ޔZ;-vdXG b{Lnn/'#>~t5ION/A2Flm$ 2F4 gqOn9/UN=8|dk*Y0Ӻ3ZJ́yknu5 2JH^jGjr K* <ڪPX͚-:{JV$(W>0i:-qHڄ ?=bBOn N=vt;'SүAu%il44KbpZ7gr4nǸ_jDGVDD-[Y w;KM6&XX=>="y7K *h"-r*̋ Vԇ[F[r&?LSǕhcx!'+KI ,= ܬ=gyzťVm!ӌ 2%iγNS 9 B&EiPx;&MRKw[iA8lMR!PypBNOGp0W- !~༏(\eGXE%" B|\#2IT+f21p֯!]Kԅ@n\E- ,CV7lÑ0jE GZA+D%,@bs`s 4칺:5Nc1*$ǽQB. ^rv}|]򑗙^c8ZesSOX̋Y 1q,}אLT?%Jn'Fsv: FŚFY^:@IUv8xn`% o)5ҋs~qC֥3>z~VrBI!V%[֓zZk}5lC^G <^;vڝZtw"+v1oM;,YVj+ xb 9IUhk\.:!e=x2}L"8of洃z[4t}6;! 4=E1.T|l~`b)H)w?]`ahX"lj[dEAOuJB#=\ppb^09/^euOMdU)}ZRј/^-U)ۢ7޸Swu-Z*(2Rd[zEGٙPsˡK}w_ ENl!G%C׻#nS!#1+-W>X lS&DmQ?9lZ6 o X)_W!L`Z@/uOʱ$(B:=xz$gߛH5;){P"nzBaBW*_gX%Q?(ޯo/%'o/Cv,[l,L!%9D<\wجPg2ښp,/O D|Bla#|7/ɬwEU߱DWVM19W}7fLdN`Jšfg8 Av;2Q@wΣ 5rMjP-J8jJU;=:A#"E|LxXlznnKVMk/dB:Хzz.ێWK>ٖAeMYǜ'8N 07l! GJ1B>t(fWGE;.6ynM:PIς} :1'lxHei[! 0P%يROwp&c3i-Lx>v_1˫&wgW:OG ]̇&xi>|2:rHjؑ3![ ph^rLf3(d*}g0O0cjD_=9J ?B/Ai@g2~=أtX~ +h qr`΢}un> )}"LW0!U$k+ qnՏ!a?a4~,+P@# >Hd@eO

      "^@GY LV*G഍nʙ1zm<U*,ZD"30E.^fQqwX O2x׉^ĝtDd4+KE>Z:`XC~+B&AOبLCClKPGϨ,uhk]v_*+C{{m(с&"[}WND_Cs0o{q߭:iE1Mԝ T> Wh:~k['GIf`kǂh5] uIC",_֙H{ uلAi*BpQZt[c ט~2VHjSn u=0hZJ|%Bo#7MD}1g<>Ze\x ecB2dU?mN.@ 4OнHNt֍'s}0xb!t g̀p_=nQݲ"jDb2\U>Y 敌T_@zV`#59|\w _%uy#iMJo)e+]`5E%,{9oyb+,:Ҋ* /_OGAl3$V>aiPp 0 ڟkڲSRǸǙ$޶z2ǰU=[)SV JDM!Od˒IZ]ӏ3VsiQg(c *zOIȺWȣMϷK1{>&jV_̶zC{Mu Nݾ""yU$Jɾ \%ȦDEqu&~t߻:[ɏ^F7%~Oy<őrf>]%d2YS0;֦AfehW&.RpCF}Y\(jB+"x$r}[Xs)o3Wc:l1/qaP4uQ Q,%vUsPu1H'@M ?3DUW1M9M+]LUle=̆W3"Z'j:cG~ ن;{_H;Būj톧f0:H5Z$O\u \-Rk+O3ioYMz?ZXNE:~BXGX\Lچ a ߠU4 'lŴ>$+M&C>ls#3$WgL ivI!Vv$3=I`0,i@1]1~mSD %n,0\ Y(_H}Rq"& F 6Zv?«D i_xrf[Uo Ci'i")F_(!, idSqďq_wӺ:/x]Q~Z#ŻTp%M_DژXa6Rx>WOhA/_qq`v8X[ `;717RysI ױՊc1D `nhI;t.ZpM_np{a"K~Vɪiۀ;?U YlOzi.X57A)HKwEBw:X<)*EC{KmVղlm5մ"GA/K|2f5HF̡ڪoU[ 7!t jiu9_Ju$OQrN$U*U@%| cPL2sFuHNЬEuu}`+c &WMFåU•Bk+æ˂L4 m60KX onb/- g p&ReZ l]? n؛\D-qϬzN %X!jeVMc͹@C1})AK5Ks 5бCb=Ʉ8}[y:_&ҩ~Pg%s#'?"\UғiA!*Ш_w|XΈHz̟;%Ѧ(Ծx.'r%`s@g4z0Tsڝ}E[ a =Zҵq<:!F*0*ik~\ްџjtR*okzspyX#*Yӧ[ƂnvÆx@\ͥĹE+s 0ƺ`kxbrl!d ;-ּcӘqkY)vt:sۋzħ!Oa2*0(3$`wW] }-:@RQgWLOؗyW#7MTL=D-GK ~Eg OILba˂ֽ|ɟ1ZX^#F$qj n3;VeFmbǎC|\!4η j/850=KJsCzupRIZJ1L]WS?:h+dUkv #K;d oAC1NY(ޖ[CVSɄ_T6 9=^^}1 _gbyr맞fj''K>SY[(;k3dZ4̎ǕJIMudx#-Ғ䂋'| !V"{8y]{ךaK,1ɾƦ+ؔI{Y20D=wޜ ޠ.j– S#Zm(NJG} !^U6|FAHENUD}ôx$z~80= yEzpRهcJxvZt~w{:Ij)*J.uRo}C˴+~"X9RA"0v{RX=ut.5ŷ^aD! Ϝ1#3{Q2L)m|6ui3F=NY{*}6K 8f[ym2-51=Ӷ&jU216mُmK l-ImJHkQyel<4zZSHMKx SEu6/M:x@]7"&v>H+p7Z54|e" o{2BDjZa?޽(AQAFow ![r@q(qN LNwӲ+ې s8WLr+xq˟'}|^~tI-u;l]P̗,R 0!FvO"?7QO<`@ZT;c b3-:e}>oagC y˔hpBE瘁_f eOFM nW2`<Ǐ-T{wI@ MWiWG^G_b$-[U>+h%r^bgO8#cOVJd۱a/}7_%l҆ٚ $aaXhH|~ cZkbm8U+/cc:Ʊ[f½_;>P҇sP._ 61hۮɽ1m,XtU/ eT9Y\ɑӉXvKo@VC@?ʆјt~ alھ>+ʎi=Y2 K\Vptq Zrږ[2WxQ &[%\Íj/7Îiu+&v&o ] xx-oÕZ :ր?L_ng aUxB)W?o*]{t.?Ffcw6TM \wf,vj(oQ%bϼtO[F?ٿeynRf)YX0S$Ituv54o;U13M  3\5. ]׿ZlGYvjH5ƥ_p.l;m5Y6ɦDpSMvj?e H<_.F6D;rC$c&p }HA}%]SLv~e$x=z' +]V!Di8oc5:ײVNݩ#euoi_ ZЧgGlZ㬩k ~bEzXU hS; ꫈_!gzT"ѣGHoh95#K78b*O"#WQa=[\}Ҵ>dzVy wxCY [u;B Iu?EԴ F I찿 ye\O5f2Pᦓ]o5(*i ۏ3c@5N}Ε1xM䢱ñ5]Ie~0$Qț5i9 b#PsA1 Նŏo>&jyF,qmQ;ގgIq#?_OGkJP ÛT|S1(ХO^Dߑ6۾u8j8Mj×ZZF_iW/_Q1"O*9*0Bh7rU|}oz6%Dѿ NۛBŎ -4U$ ]ՎCiǸ7ь4'( $Nҿ_;ֳARKhSTR^Y ;"gթqij t+kd1S>&:'jLz4ٺtղH>Y<-ߗ%.hPX x[Oc.M)Qh=.7om'"4ی{Q$Q,G9|SW\Y/ԉRzjܣk[{/ 7YxNH] G/닧- W ŗAc6:Kg$6Rġ<#Zcijlc|*5Ts%H <؄-YVHu*K^mM@?Uh9se|s4d7QF7?kYlkToI"%=K;xOA)??r!Y#{_)#9D.'*I%dv 5F׸ ZMEV訦a=B`Ò`GQ˗ƤVLgSk24[-u;եOXq7VWvZ "ۘ˒5~fo\1#6cfHKZז#vtl5<X$z9[HBYT~ Ǒ(}~nl參,1KIG"?NJzU|xz7N&sUQmNZqld[REW`+&KdoJ7BLlU(EI5uVvl"$<]Mx#Nk<"#P#Z! BQPڝ9,XNz_C7&V@܈IJs\$e]$.+NS~cs MZ~oZPX0rIMlqL](QMx6%/>"k[<5ofbΡ)PwنwEgxOxna ˖`-X]o7*7]&V asf}yW&kpBHw#+" ls赿GZ6eY߉X$ƂBua(Pg<: ht6d;s ~[hY%8BE+/Vql/=`vqȡ~Spx9/;rqTjx oBfIq. cdU_Q@?)}R]=_ ig^7 ^,o52B1D$)ot@S}z$Q1:Tذ~Nv#P݆O >KbAW#ZQF&1G EkeL f4Mox,1_HA+D-N㣱#]uL[ّ2&8BUSg%B(r.)ZZ/ygMoIJi' iUxk\ݬ pbBS\x1MMז=R`vxGG8@8lOʿMJh u6')% z똖 zҦu- -/La:ayGcC5xaG{p(."μ,GXJsDqnIRUN 52J.龯zV?=$[Um@* G^t@qIj<#8g".I~xD,MM{YRe Dzvz_9[j1SpMrFu3UL>?tJaF ef틜Ĥ)O\IwM>L|  5@ܔx5=]4;|Q΋*3PӺ[gWQ1 z*vɉe\AC˙D(Mԓa&t SIWS>vRiR&= #бAna~rK<1qΒkROǺcռ H o~\_ UQif+ \D!h뙟U>Rcw [6n)/1 Ci֡'/h粓[0?벦|RJc?×ʥm֥oDRTfNC ڞ/ʹ-RT*~\*NIi b 1H51XnC9Ǐ25@8dKUCёX@7oV3Ā`tsľNéf2MQ} [H*q N5!Tk6*eO݀%ݘ'd@n%sزkĢ8Cfܷ ]qC:^]:bK8]fz~@e2\;l>s垯l'E !TC'KR %`[! XPd&rEш>\DAdmޝ|@^צ$gbF [$^`BO,BĎOd#_^A@:W_C&mfxCSaaV g|Hf i$u: vi$mZ^VRsZQ1%Az;Q@Bϟo^!)bc)[}Bzy5~? >N(yͿ+z@(6!W>b|nꨲ o t*2Z%A%$w=N*૟**(nw1[rX!*QPZX0D.V;6"H!FN' (4XCĿ(\f|0a+EzQYjvv R2h/CḡtK Fbj֥(u>9μx=7esF3anloԍr'V,/SW0OdB:< 6k\p3h( İE=X2( 1̉$%Zw5\e= !&PNbTEVdW 4c5/`v*800y{ H$Ü n+͖~s޷I=8VzI ^s?=Geٜ?|8INz,Ii>Z[ޮVl<˪+PEt,q q gӏK5Dˁ` …$x,ֿgI<]pGEFTz>~A\4s)?^kUD V"FKI - =m)M5fYOK>,},?Vur3 %-тgw'@~0TX:7}'XNؠȃIh䥁DZ *6IۊaCtu8R•|m{b\klUk /BGm8%Ldct6rTX^b F*1P1ʛ!1pVY_6+aԞהvӦBSw|O+#X.yG1:m|(, ]Y>p*P0 Dz.C<.ݿ$s&v$ui_QaϾd,{ ɠ8>WaU[@z7Xmfj _! EXX 1ʿ\V6Q@ѱ/ ˾`=w@Hsr;CJEpDie}8hĻn%P"CߋXz7T쮔 ShnJK>b:A:T!+E#ۆl|H*^ AQ`lcOPYNnfL'9 ]',em/I}Ɂϭt,u0>| A̡1㽒߇ӓG e+zR8>/ɭ`u :OS) @:qr#/ HPr}ceǾ0*A:ld"T[-iRps8fx'BOe(|UNHhGEc/*Z%Q۵>rX! A_|,uIi4 f^!orBݽsz=: eb]vbLu@F֏`M̋q(f(*^X ԏ 8qwh2s\j(O@orC~G ct<4BbB[9VW7>KFV^B&EsW&YJw{l*D~P3 %W8 '{wjW-"՟"C WS?vm=? Hנ8*.D նCB6rx|{ !ؘJ[~Oy i̿ 9j 8w[B;q1+%xJ,"`pIpU>qSo֘4F;j6{5TG#AW46d+y_eNؙ79h%R:6,#ƓLŬ֣U{۾ u4uL8~$"{M``hvtFN8|ᓕy#Cd)bPs RDy065" a3MLtl*qi>r8UkkјmZ z\\cߖDjZMj(e ٲӖ&G+5S"9%uY/5[W GCԯ|pII)<^;!aԨyn-ѝUO*s+eu;"{ݾo=:{VqJZFqWXaq|;>Umkbl,BM6]/\'~#E_q 7YR oI,+0j^IEjQAJD!W)Yng=?.=ѵ{3ĿQz=]S`qP󴴤=@yc&hyZ_pى G};+bȺk! N\cg-=Ցa,Ϝ9ȫϠQzwIz[.{G v}9j%ahӅۄ>{SZ`?<3cGH6Ťɢ)" s 9S)B /j#&U2J6'jRg-Rqnر^mOBƥeWB=ʚ$hioX=];޺ٟhۯ)f+ä+\΀JPLs8>]rt $R=fnuh\$r|`fCF6hAދC,T7v"C_@]*Ԝ79'*#YB@X綠v=f6V;[ 3SI3xk^gRTkˋa1]SY6KMd2m dTGŗ"[wtI )C iF3|vD7Sgևѹۿ{"Τ-wC5*Jt,4r/qVkNut|%']7mN#75J4J$.0SCi J<1 mmʇY/~-VÀ;pg0٧A`$m\5>^&#^&F)vĜo~Ihq"ʸRW2VT ùZGSvssަͰ8l} 4s ݂y! տȡX=tE]~RuE O72]E]DgK7J=~9 aBj̐5!7SQ,jSF:P:ڬƐtY}e%39buњb#|N!)7<PWMUvV~ Ƹ^]-bN|>&KN0aş"vS Ƃd[,{Qum;=%1&'QkPٚ )_Tk`JzʵX"5d^yBX}Ų; Ŋj+Ҩ(ߞo{r1l$Bƣ5B]ɺܳeJ2|k͔.vrsNlw8'4<&ig[nHa 36keҪs=uݥ/?8ͤbUH;U dxB  Ǒ[Q!BT) -[2?O/ i#qr&bPQB3N&蚰}mnA7{m仙XJH"{(HP0ROgro;ۊthW]v._ޭ=OD Psޚ ~1@97|ȸ_ NX뀧`ޓCFLBLnգ*jkHWl{YeB@bLЉ €=*|?Z<*0GrTre6y5t<&Nةl |J1Jz=6\t){E᭵%>4^'i[ny'>GY3\vB#2H/֘1+XaAIӊ5M ՂX1Y8Bh~z7KA$r <߃D2<6YoA<)Tc2Xħ?HyJK/_L3:o P(7_,LBYKkSص:Ӡi;r9*lYWUi6'{"m|:gĸEm:昤[ZFlupF~_&TɁwwRFg%e\kȷ%M}81W'ϰd/Ki*5#owOi>oH^z7ǵ3`T)7f$@k*.pvX !A'}5کKͤ|QDe<1ĿPPZu#Xbj ҧE8CMRz B Hk-{}A!$x=1RyM`rhg.EoEpcV{*41Y"0(stLJ%#@iϪ){?L qyK= 5}7Nfہ0|Gx#"µWJ~}kD; wNz1Hߓ)1&02)WaȊ jH##& ѿ 41aCj}bዝ|ݨˡLT^d/6b4fBZ nxK; TM1`f6"Hay-LzN{\S=*'Jm9yD._Ogw~dgL3q )Ӧ_>[~Y˱^~ sctw%g !?wV) F}Hlaf?тH"M`_כ&M0[g"Vrq bE`'uНxKct?`:6fخ2ZIxhˮrm,?թPnmȸF2W@KQ\UEKmmPR)褜+DssARKY9Ko*)E4!&SU)[Mn@'7&j 8#N7F9ְ`IB/Ctg=R$ r=rT`^N!AD vm񜡱~}ɞ _PX̿W1RaD.;r(IjDh"r0UbLrיT"6W$ۚ8 > o)ѬH6%-J TP#'H,$5RYBec֮o)T(pQg)Ig`vC;5S&9XCL])fI2P'wm?1NM;ܤ,EꉊyxhGRƞ=g^OzkAw"/B ($(i;F6/ՙ}>,*_,oF{E!֖3UfCXwQdJ?u'PVז/{1aBXQRfwvl^w7ۋUԎΞTR5Dwh j^uB`Ne$FWogbdbGN(yܥy9H4dYPd=fk6ո =3ɢ wHd \^oϗF{Pdrhk$WӕwZsR^Drf9gg[NA[^G/Nۄ-f*#g 9sG?g'r+5%E5YoaB ~{l.h{0r~yV<:B*f\}bV>qydz9MIڂ!dRnܽPB?o\hG^{SF[#C3(C㲿^ I tW_*NγՉ9, "[u- O˛\K>tDD:^$ڭQqeCsA崛Pw>;+쌫ڔDq5#Db;G_%)C)Ueҋ5YvKYB/.QUD,@͋Enj?ƁA{R ʓH,tۈɺm00lx ku2N{W7z<- N|WK5럏0l9lqQ+A:Wge4'ţTuqIo@yrJLW`V?9)Me-/*I= 8ݹ>)j=>> c @ { Np ,0lg:cA$/6{=IS(Dm 9M0$rQuTDצ"I&wUY~s | 6WowVoJ7 P' F¥u!QİԎI.D6TfIi3r.P#x&M!UU/p-haޞ=&j?!ءwBcB>mo-GΥ^ek)QB2{)bQ s:p)jׄ to$m5Ї~݀9$.L5\mIBW`n{l[wBDP s=K1gRW J >N6nͫX%aܱL>} M*☵2HjmͬlVFF7J,~PkO;B8ҝHỤuثK۱j75|DrEe`qk+Nl#EMB_ rr t7j nFb-:fY-H˴eldz<4`ؐQL8ǾZۼ*0BF艍~+CielIalúÒ؁EBCPdӑo,vQ(r-61NBrJ4\:1JZy4~C5Tl1@HEb S/7|+|˅G᪜c7oCv! %UĹv0nev@AS>:ʞyc>d.W褒t 7n}0d"4}J*6, I2E:]!fm8K]A̟ag)wkYo-y<zA auk 56Ģ: m*3^ԟ9f1 ji1Ktͣ1 0,wأ9X/cj OяXaHiA!my_jװG;"jc]-'n>y_NyZ kXwXҔ>6$=0}ǙUkgQ, þXN>}X[Iv( %R%ZFG-ըBKVݑ:IG&g}&* eR8&Kz n{q&?Wʔ!1Yo/Kopf"~o6ccW})MwI&QRn\̒W!/iR.e rC8b KL>l}%A{k inHʯ=ۯ/vS<oj*P1ˣul+OJ 5$QCJiz25(R+/?}QMUA֦ÈK:*]i1,ù0K\q}E(R> z7C#jioΨ0Y*'ݾE,,&Sm h")9t>C)dl$d<_[?zU~$Hw[q gȓ4hڣmY_zb80 nJ*sσt|WΊ!.חMQS|7vW{>LҠղүy\}td /{Og- 郐LC\r 7Y9Mj[bfh3$g$@+lrk֥`^is)h W8!* N.a(R-Eˊ+f ^=DPWš}]Bd+BHܗdUC &/ N )ʕ}p+QM+_c,O}7?ݖ[ jwZ~@9@js 2'YZ|膥@V[.FT d]WXTu:Tbsp -fਔ/ǝd=?2pD ]9DR.#*a䜈6 1٨;cQ>ܝHlDz~rE|&?zQsTvI9Dn!yk=˃P޹u;S^W nO$6ىhp<@!ZTCijWe[dW$GߢDby_Ǝ*Q塰M|ks={}l|_tm b|v0Wf'(5c7(x#LoH ^z@Eg0Q ,`oe QXM̧LeW 񵢼uFvԜq&Ev%'KFYYYi'8gMNZė}Nvo`nwJ9AE+W<@ P4il[׮~DW[UtPA'`œ:/҃S"r&*n/桶׾d>F&VL9:)ٺ]Ɉ9$Pi*`JIGCFPYiDl6%}Cw,`q->JLGQ6] u#(iߞ&./VdZȮ F<3>#2IqHP;TB3S$9XX0ޒa Ӣe73#".ɱa9Wu!>=g̪]L%L6K`-]&"Р/MJdwF%=|, h{I9-IH\(>Sbm7S"K 8w$\9 Lq͏Ζ#C¶v׫d 5zh/Uo3,RV5O/&F7aIsf@5w@th&I,cǁMa qn)ƾ=6OQ{6 -g 6O~PWT*0tjb]}]׉O!T!ꏛ~XQuმFy90Kvdp~7Y١JY M`lwmfoStocY/|cؖAJN&V&EGYl5 >mpupOּ n=ɃuMUxwKDKs!D X芶>xU('U9/1$ߑ6Ρ>L:X 1 wX̳W;<ʬc|h7Ftn9R6 [CJQ[̷ Cp*`s+ g""8?ڰͨEsCŔ jR*Q[鵒5 3<*D4|~bwSr$<+Gp]@|ZɻP$oeU+$/c+.vd%Ko<!!OT Ļ|[.[hR٬?"ˀ@U'N1^~@ɝĄK@:q1}F)c' OپRf԰į LW Jv< ƕÂړ(Tͻ4(kxy3~kӬ#ޅ_&4֪F~TM:+$;| +K#sQsݺsg)8)*{7$Fݟ^|EX*8%PV>TCl䠒Xge0"\'gzkCŹE4+T-āfF\xyv@#ۛb 'pׁY*=qi1}c텤L/}804|'T+! P$D:SEzxJ|R=9a>faSH/Sns U/Θ|Mӧrl?Ӑ$ -vU^Dwk| ChuG4ֿ|yB {g*m8$-B>1Y-&p0YUgi٘L O8p3nuV{+8 ho@!hejF^IgsDQjm?K7RVɞWlʼn':ӌM:7&\\fg>Id tGtZ|*Ëٕۘg2w*XZ+_vwAC oR+ ȩ#೥M?qU/OL<"+*Xow?P}8X͛+q֛LEET;tbС-Rff{~O'FnBhx39^,]7n&Q̓@BԮ'161gm7f;9; V&\ ~?9i9x7 _l<u^ Ȝ.'Qgl>ʴa9xJm d3|uX m%ɯ8$7kqXQYxUw'a *q H2փϝQS }*sOޠ]=r}TL^ǍE32#¤{ZjAx|6F@, M$*HeVSec)1闔4\C`k\ԃ%OJ֝TvԦIkܔ)z=\(,z 2 #DpG}}q | ǭb#pVbaXZGP+^QMh!2 L"ף+6h@O4>dr\nQfi8"*uuڥ$0؁dmlm(fv51cm`1'[n_ݲ8 D?ah [\H q4>9]ṼqwWjK2 !eW( 5f'%=BJO=$ J] B1+(T'A}׎c l sIΖ<MWJCrf\ *3,8H^ya"nx۰u NiE0A1F{Futp@¡I>9B$Y O0g/];OP4¹q[|K$;Vq-;AZ r-2VJ)e8[7Ϯ#jnEa4mK?U1s^#DT1@ :w]ד쿐.v!MӼT#  $cDXZw4+"q0juM ڻjmg(^Zoy% |l_-"0IjM=_NLs.ϐshGs wB?ncbq.ع֊LrMjlBib`7LM H5 ."3' ',AJBYtaᝩ* }t`F1'ߥ9CyU T=+f#0\Q(8x"d`7rD*]`X3R0eW5\7\W8|&`0BՍcd21*FkK{}OPo)V|eʳiJIP2<6jQD'*t͕RəCVXl'lz}?[ l`Ḍ88Ѩ4Ǜ5Uq ?Wh> VϏǻ3\^ۼD<nLc+mya<\d̼ dU'K՝Ј4mK-㽺 W/A.$'&Tvl&)R@Qo%K{\.HCiIiHb}0E!}ѸS*AK,\k#ݪ_%Q.ІnMfnΒ^fit>t Z4wG0{\Qh>IO+M8=sމ^a౪Mcd7sYǶ(h "QyHR?5r+Bp6/L$7`hOGg2m Lx \sH0$ߒsEz)#]Vd#Ī NSi-+V^GUӜ`tʽPRWVK%ܼS]04`Gg)na=CO{}|t̝;eKn}fl7'dŕr88iLi׵j֝V+SȊVLij){]VtG{'AtdK"}ں]BQ`d.{~27ZւJb &{Xsi3N"nm8ǭԾu2cf1|iZՍNDuc/ob:4c+c[L~!nticŽr2FȲq*{=+&03IjϣEm O}oɆ->5hHU tXb|@iܚTW>PN86?x6:U`pW$ ۝Qzr$kTlLk!;eDL ] z(BOYVmEO=6 {[uby\a_>6qDI} jeG^{m$ƾ넇oCD0?Z~>LfZgp'9umϭJ;/ F>;S!,%U"rHDz;S펣]Ţ{8n峮\Et(8}wtzw[6!m0<{=BRx)r# /g$Fה9„FoE><O!<ER܋TW c"M}fYػ2S%?7:ZX,a:xoT1q42p=m_Fvq) rɇ~E@Y8.?臈<j^}lr@?LvaKېK >zHʠΒl9'f*j)mz4CV:ǍTF7>#ma8$h]aa|u-8sy$h!GaT]=gs~`2w ^Z)OVw0$2RamZ]!`sV@\w@`D H ͺ` sBψ/}4c#64XGA%IJSs`Bk FUJ n$!hSG˛rqFFrp|{&޻C(2R5_(b ?0zl< fݰ|&?]4uVLSRۂ`)Z+4FߊO=@BSV7J(T^Jw:xT &d FtZ(~tkk$"ycPNi`=8 ='Hz'ca%ӆfpN7Mlr^pױ7h\lbaIG_>?fcK~5JCvgcdfOD]nnx}}t dZ苠kxȫoyXx-m>J+e˲<ػ  Sti΢d!_g <%=_>rDy_y@Ec+;F1ח;t4J~J*%R勞 YPNhjLgv2ZV-*ݣs:ԥyy*4S8^XݱtxsE_ |9EFs\I\9MUEm&F2D$u4l"MYuVl53tzn XwNC&mkahpXT#bQmyѴq*K==D,!:R KW1kF/C@VAlE1X4`v~f Cw|4 ~a<z~ՠSF&nN!idq\c| A}ߜ!*^sgRJxMCLC^ T,7JX $cVuюKdRg}~⠝N42D'ǞOS"bFɞRyKp`V9:捃H5_\SۀyzޤOG!&o)xmO mӇ,Pfn!U0Z^soqW@^c{WᲇgЇ>ZZ6T̃WkC]CiEHrt-r<$1fZtcHD$ "DM3!wJZ4a,gu6Ğ\grx+7"b?#$)5|.JA67vx>}1?. Le hf(hfo!Ӈh:y< ?-ZP5ss4um*_6a7='swBA}yB1F23%Vmϧ0(23Q4 .Q6h=cI1ٞˊ2pܒfa7pnÎ'|*w>}rif< .IH~C08b1%}[jUq*I,Z n x}3*ZOcSf~dM 4TE98#n d!?QQڧtx˶% Uc%7O,tyGC@f(#ؒb*@JKo*}_ ͌iF7"]O'Rr}!A?+6J s05ݵƉM Xg5>+)JAk>Tɜ^({K}mR}f0 {i'w[2=]m~̫y:f%+H.iI WIH{d'UFq]aN76n]F}~Y5DtP}@sp; B.?2MU:WMO*19rf~%uR%:O_uri4&̡^}/-"=pr!R4 gi} F G#7)~Yq)t8.$Z}!p>o,b=f?/bZ.O(;Y~Ƥ]5;C|ITs ߒ 'ʱO#$_TF {-'f90+ԆA9q#cN!ŝSUF&W Ƃ2I7y pJP/WNO96oVQϵ'r]ګQeki {L<ػ.p|G'R =A5U ^r,m䭙ƒCҴI– HOgf4tͪZ:.q/)81Xhzc9a) ܐ&jB~;DUPE3ܞm\FЁ~>iy@cHK~\=T'#Ƶ,ɍ#) ʠO0O)sH)OO߽0([FigO%{Ym ]SCtYmboKTa7t/a E$@.*nˢZs^0&VrU1U-,`$vƒP@t`*Λo4 h)QP sq1h``Q |j,Ӏ[D29'.&"B'VzP@6$.*;+ⰠuEz,?i&G-o\@]~BǛ1LR1c;C\ _^j1WVDzΣwYoĢ.L?5]6糩)<.2+/paWdCۅ.-LP mUo2՟3gx!uh{X/,Et%̧<9#/oG:Ցl_Xuc3 rM^S >R:m:=ԋHKO ,g;m/o5R#mh0PVBت+ PFr.%•_".v&UGu` zw;}D!}0SbAeCg' CgfBUө݋(TLvb-5݄hєCW6uKqnKfÅ' `˫ŰHfw=060;`9ew'3U )_h+p?(ޖ/# tED$ r?+S6AM"hR"N' %R:J c9uo.GK͗yB@a 8ơڷ*xXl@uK lpFe # ,gM0gOu`cr&:  {}C Tc.&Pt/$܄jF%~]v(\;Я8(tTrccaj$miCI9s[Ǝ+JGUQqЯe>Fr>\cg4hEyg5V(Peb]d kbUiXJiΞɸfˮ54b%Je3y/vT;?נ4j çr Ju!1?lz 3=z˺Mg?ʟM"8%dy!uXR-VQt$|S%(]-s1eW6>,Zb—. B=sZrK!9eM;*$!Ýs/;eX7_P4S7za[UZiMyH{(2&^ -O(cm2 ~>K\({b:pn36{11tѫ\47@3 %YzؙΘRB#g-=@ oWG!]]y~5K#STnqNN_q'5-"+3o+,_HcmaE1gZH~->fH ҐlL3ݶrO]y̎l`.g%=6ϥ8MI3hG5dוi,=9Av[',TL礮^  `nPQ~nNlFhm B E HyiWD2T 7AiUK:G9"㏖ᳱ;0?"GKu8h_5ٶ[T@C06?:afϊй<?xj EB!bBy &t>x ] x?vњ'IxwLޠ8}~aq/r[rV*?mB 3*c'|Y .[H k|Һtך b9D +f `c'WZQ :VC& t_ kPc06&9V![ܳpr0+^r{k= 7fy︇ )b< =~''-sxHɒLCiVwsI$qQ lsJ_Y8V1rѨZc< 9m-:utM2I!w2oYVNjg:I-ImZ'h+<~ PAC@|E;0mJqB6k"i=$H?łRp JDMWIB;I. 愴0yi I>jy<63&*Jiܫ7w1cR'=uItEW>Xc x#h.F,G=юbUX 2! o@#'qȻDEE4qrxY%Z3TasyM7H7"GMRco(Ĕ7:NA7i"YZ9A i@2<'DKҬQ w ((D轂^JB:\ѷ^FU^oysA|@ B\ʿQ+ޓ |p!D0'4LO$C7xu[r[*NY8 UoXu9WF;7C/v#ɍFVIV POkoo/W\3IXN9-<'A WoFE-T)tF}UhͯOjQ&׋gX?N̐.Bm854CYeg(뽟hr-ގC<>(&PGJwZ{*|fQTb4*0qAN% ͩ1;=oc» $=Nw{dTc{18YK|<)̥8_.M\j&xpi$ݯEn%&yFf~v-ރ\y ;J& :97F!Dn˳(7+vca5$-!_p*]X ! .FĭEg2ݘΚ#ݱqLy$7]D+lNGHʬIm[~OݽáV >;!Vܭ@e Gpt)Hk=q 7"#lwb׫ye>OTlkÝzwҐPCx&\2cDU9R40>z- {cЉFN@6~v:P_%[N}lg }@9gWي=US$95]%:!!4ݐbQ)<&;UUYz%vG=p: o@AnD,Yej:gbMQ8}{/]{ I)oXfʔ1IzG4(q`,Ruˈ!(-%V`&;Pɾ𺌘 y,+Mtf `Υ[(/mgj dڄ[DޖOJyо^AZڹZWwJxQҰM-W!K{xTlˋʨTUwpjaö :ek'(WbܹjJŧd"p޹*VXIbwnGBs blenIw\|)88>Z^"fu=]5B]L6AE0ɔJ2J=JU~dF;U3{0tq:eG~|٢L l <̿ݥ!8*ҊQm2@I٫+iSBtjʓiF^!xժ;P~ҸhƔ轴EZ5v;Fb 燱|fnMs4799kjna)]F>* ku>. tڶB`S Ρ5A Gj4}Y_aK%h,'VRy~wxZ$JK&spcrO8lR.f*TXI 'aƔH=՜2J&2x~۴w>8 | N)`ovǫԷ"/oIQAڌk?Va6ZU? @p&KP}ov.2b,f&Pv?juv&#0ٮsVf PcU56L+RچRkDNc>0?dй;EP*&ͤSeBQXVg={i@jm jcGqh-6`i%/ݖ Jȸ;[8Lץ~@F̜O󅯐< _3*Iي6iR븡 ܹd+kkynJ(˫bƦ8kˣ\iʅH!CZ:JE9?&`xq&4lelPXoB0em|ҩ}W g?6R5OoԜ>X;rm=0vw=_{Q[`Gb\9U z[VǗY XPWF^ycSiE"R($Ds!]jQ BB ֶ{,o~?24?*~#"u^TE܁F>좲zcXlV^h3bb Beaat.l81a^8U~h7o`)RHY=ؒUu7LHYu%&iRcHk+c5PE|cĎdI>[UJw?քב/s\t5UcAF syw-*6Nh?sM` t`ƞQ9>JW]I)Zԛ]NsBj(*ҡe?+bpZC4"i  Sx$^Lu>yP+JM>^3 JQL\!2-F:'и R ْ~lux$8mkRD0wqBMy)"w"J3l;΁n@stDW~esjh-bIoZ,qdHDvc7h*etl6 u >goluhW`]OcR$x9}و=W;9e9| ?8Z#h3 |RybEP$퐁zʴYeZYIJځs u嵢&2^aY UzUItH v](x8sO(ץ&ҌbEY\#ֹ<\.\FGcg>dIDF;5u괞btE,QQ{^Ɋ2טA G%Y.L@ʏE@;&5^{@4˚A8}u"2j?0u< %CđQ,͗a&k<6rr6DQ,Rbkan_U+B}%I1fxDVy/]34.W)V8ؤ j(Ik,_N ZWyQ {nԢLC ZX{2 oPq(33%;3&ug;dlCݛP:U\PyJ(7GvQ%M0lr5}E /cVH eR>kINlfc%USpI|cuHf}x&by# [t6UyOgF~ʣ;UY< >? ~BdDX%'CإfF۬J3?xNs,O]q$p9])dq5 0rvdwe~=hL>PJt@A=3KwM2w޺GּAe$!?lm-{xeVânD,xLKo\ez ٴ[.,vZKuaA DN[">EO_5:HL!CW;ӷ3'_?K'!eĢ-Wxr)I% ŧ{t:Ǡ8QB |2Qo[hI`j)P{-1%;(Ǫ0"d4J='-;qC쒽Zx-5 b]zhF CoĨ~' KYu ^4V]Dr@,s;e-bFf 76(Sڄ b)̝ H{0q$7uC+o]+o{c=҅\R_8hT)>?lـ^-4dӿBǯg P6pҌcMvy5Rќ|R *WM7`4D3M!:_D`fo'z_Wdw8q<%5͌o4|02VG|L]_睓1y%ߜmRVdr7?};n?˂6ըͯ8^"V=Qo>@4\}"C&EOci>hqC !d-R蝾z:3xr=~HXg2+KtKǵfĎ7= p"5aN{١S\T"ojUrZq\NVas^v{cU 5^|[>M|kLfUc-H &89"{?ȭRzmw+APXCGs>y5*ivp+_ jaYT*$O CF\Ç/\+&si0@1?oZ$cg*,gz2UE1 5p}A SU*`y  P8ȏ =}cH>Kn?ZO|# 讖`_4 cj` ]HWׯ(<(?V#p Î&(X|[X?AU%.EqZ4έJ #tRUJⵈ%XQbMotQ6 qeC8". ]sϭ-^r7d8+9a^nʨw\f| eIwsTTW bVRՍAiD^F7feX7x2m_2[(ex]} ʹ۞pӃbDWw7#cܸ]x0 rh"3zsBK4t䔤6hhX/kERljW%VI.x>Wp- c4RWӱoxC$e⎧8a߅el"J,-ߠEO +9zIuWzn;qnQ$>f)%95'\Hh.^\2X I‹!F+t9~&fo;}` bٹ;0(vr ?GwI/>"wc075,m&/P~58 qDz,'Dge|j]#ke9ɔ EL5`aQMbD} Ɍh%bL|ƬkW6Xo(RltiӴf*JK[(M4\L?L2H0pLB̖ nf i[8Цؽp.Er{IpC^ ˑ5xb[8$L`Fplb#1_;s. n {F3i1h#LR!#y|6џDjQGuX+ "1+ 8`gɠ Hz9R)RL.tEO2$5qD Хΰŏ(*PU*jz;fP%XKIaCs"B5n_~{oG פ\Qd\O-%ZIȈ =S@rBf >/Ъ2yE"^4+] Jns"HUnpqRƙC(: PQ xm /u7W1Y"T=d,6|=DM^*!M;<>Eyf^E~z?e,{c%O]ѯ  utV*;.9aT| FՃN]8㖘5*]\|ky6ͺ>NօybCbhz|.7/ 1:<{ jtzl%$J:>~|v1RG&ɉ #$]BaFJ =mNwUN-~]%ufgoN=漂~|x`&\L|m+LvOO`o+8 )mWq fu@[b*t`:Bf`^xť,6Zp6X't2R]y;.~kv1x7(O[X+qb$1|}=~Z饈tڊ,^'w7"t{nW|!Ed-P*CN KrSct]'-Xv;JR1]毫7)a`.BMCdKddBbZSY!ڛ}orVeaQ^ulZ Af+,p)L1D2)d_zu $ڑ6AF<E Cߨm%/y2}j>ҴiX?0H jԋNš=kC&ӳ}cKsD$j U35wL5rM'm􌊩F.lӇ"j 7]!Vc( />yV-AuLw◡B?zRIp =K B6ux$ɬLEkYϤJ|@UjIuf4M C˽_ 7{qxOe+Kau ɥ'@c&A2NGSZQr{Cs2*1 S3 ߯_ϯiB.yڶXH /& اհt®Wn=h0ԑG\3nqRyw1qNqfY8Xd?O1C`U?rZiVAاBPUŃsbǘqx\唴ϰ^^8eb gt+.4?ٵIcy)< ˻b$h=.铬2]qZY.PگIA^ٖmH}v gpV*SC̒ !J)'[a5_g`]YC;'cYl}U qCXmܗ]pxW쉙'G, Mdz9?64ȣRO1m=%?'7MØ7u2J+ōKA"?xC1镲ʶ6,{@/9r]pyZ$UE^!jm> /ިb݆FwX";ȵVX?3>q~&_׀&m=WZwB-ջ "k ̬+AWZl3*sX+kjlOAYU2*w؂8CzJ% .S2]/.d5󇰽 KT2Gm%4/i5&aDARB [ b{ف;o>uSWB![\V3. l4 H&Hc5*](7JHR]$Q;&S J$}Hi_sƺNP1k|Dr"d@E)lJH[@¿@eJm\A5OLH6s?݃Y kHw+9AG5T!)bѼ~j<..S53>/8ݩbJt  DסsAzW'|*uO1 ?rśs8(Wܠ0H}k3aVgz`򮧈QpSՎ04ٱ #ayڗJ16BȺy?qKm:mzRYې[ܧb/e&k8xK˟G?ay6%4$<{D#b0WuW7|,.:ΞeZM+Q|u6[җ"m,F^pDH:*Ѵ-s>9gN _Ey93'+M5"d^.|@B3h*?pn\傊1pڐmW4 \!J8BX\NTI|*~[l(a4LHjJEfO:+-#/s-~?9 Ѐ{DD17n%p+ʆŘX@șnl jG+V,0;yY- :A`fe"l$ п V8|3*b%\ ?cg@PWv̨Nfb)d Q/nրI;9O!FzpZOa&z<l7DRjw;x.s5/R+zm3dzHW硁J 0l)IơR֨L5EsOCSwPgli>c)MV[?J,X_v7#ңKVdbA)%*6c$6OG ݱ2 6/WDqߤ*f#`Bo UbJ8ER("i-]}ԥlCp9(Lto&- X$rE ;M vM-iU-v q׳LO{$-[P[ۄC,+\+PJ).̷bGL}H/d}Z Zf @d& 7hPc/EPJ5ɻHQ2 u-f~Ucߩ h~#4sb`~`Ew;D"pG=:@eq;[۬DSxfE+^U!#II+@a } jF RU96Xh zu΢ZlO4kިVg,N`#Eh]D4uGenH, pM6h )Yy3`1bƒ8N1X} ;usRCrcΞ3%m6Bcb`|{Nb-[Kf(+['gBN\),ieHnk!}H!UH26jܘQȔ/+ڷ yl|vOsbG8zޏF݄aMJ쌰C XAWEw 񑔱؉b>U{I!)}xoa izăN(i X,'62vc 3@Xd#C ^^9ecyz_]Mq_d֬N]1U蘉':@hQk^Aç;HXlf\dE G`aUc[`cK{s4jrFylv5 Uس%d$#[- 1[$̏v7dcx]0ĵ8՝2rc/;:OXXePJfu_0myQFCBe~L{N:-3pxuM;XV r]6TE:l(p|,ޙb]Al\~Ǩ_ؿkZh`>fF>[6b9ﴻsO@r0ֽ6aX_F_b2N&G\[F†K΃ f_{t_`D pt=x!c];Kg ]o?1"i_5J ̕P&]8 iPr(B`O C7p &OKcX6W3&S'xTR*o8+zAh.&t$KJpȁ Ld*<<Ǔ'Ý>~ztc6հX 蓛IlͳTp1-[HAͭy-Q .|azo5kb8}9(L B@5ax製ZDT*tT0Z /9bMi&8΢58k{xgsrV> a~ѽ&_Yr[ѾzM=ܕw#y4Pհio2L ,bVif+8'eHgX;ҍ. zYF`)UK(|󊍏I"7f؛9ݒym>^3=< T׫H 9~˯~Bvx3oZ@M#b&cCd,n5z kbY)HΦ{At+ MDr_A9`qBu$wbtU۽%qI|p-ұZ'"@k=l-+`f|qk7? G!ON΂4;!A:S/nDZfhW>6䥀TuT u8_/rnol/@KsWMth}E"/㤉1=$1OO#KAv+ݧI0IlLNl<4)Gʅ^\%55h7D&ڞȠ0Ux+6'JאB$kn.vg[Rk u#mT8ݲ׺vZ Ro6@0T7yNYZI$20,z#IJaMсǗ\`h=Lut 荼+1Tw}ѐߙA-8봭 u v=n@r`NĎ yLc٪lY:Y&faR䬸&MC  ]׮0AJW폋C3Yu й 쾎)7i=< t_8#, bn]-bDuCp;|a rsyUf`E>:IAR0:ĦzrKX!`1?<$%t喷He85,1қ)&%fPic"6NUί&D0(V $Qxei 7NxGtcQ/hu8!qS[ɢVtX?7IKT} \EheZ7jlWlӑK美.`b$;qO!DS$E1W-l9$ju;³@C_`'UߤDʮ!6%3cN"6yZ 1>|*mu4ׇj--E!ev︟ "JRM.q*yX ^z(U ݟLӋP ;Ძd4zKUF2D^F{axɍܯִ) '}`xT~4'TECOK93ʊ[> !:^lYz)dL-ǁ~ S{f=~IJ@3qJ aۚ0Dĥ%nA餎zi/$Ud_my(,h|laϑcTٌnquּLVOKh:z YF09r#i^Uabh!m1JЊB ثCl/GaQS"QY]L 6LζH#;1^q5>Bdf/|jU+E1" T @|jf~d'Ր{嫱Cg:,b%UynZE4OPo[pnQ5F)r·Z'uw R4RyfU;^jEr\v}u%Ua}#`5ևK`ʦmfc{$-8 Ⱥ+U('3G DFR5(|%z> '2q^_@ߏ`ٳ\})k#6\# 2I l~I( P{tAa)EY.{DJYՂT-zXmF1"#f", Ϋ揊g)e9 D:4MJ=H4c4L3O$GwAM墘YLZ ~x.MwB2jŖ|bUZ6![/娇Y7<)6̺)_N>+͙qQVc`;>~"Q*``@?Hu=@:dw`u,36@*=.KT*/"(\+Ai i ^U@V6ӛQ1(`ߦ;WS:"ZGܰYrwqf.m౗@dqd`ÉQ SH}i! ^siK`NX0[ѝg25I0\_BT(>kUFאqHyi4\q6\ W=b=&fފSߧFnjNֲ.WSM8 {bvw6'J04$gj4$gKb<:jTO8yLEHgH}8.^AC>f8 Ч9ق w9 pA[a)- Y:)YiܙНEzxm`oZ.fԩ]D< 5WxKnvF5hm?(\}CXtP ȑEV`Q-awZWr/55GBI-Ǡ.!a=20-;,#xA3N>?,t{>Ax_ɁG*3q @^ؼͺ$0~(5/$LE% {DN7dy]ӛeDq2ϩQfrɁ _ ~ `X=h7+egdW@6A!}22vI$-- Ċ AxR籇݆bthsXQaOkTB!AA@Lը^O/AC]WqbM{OQ wH=EXg~BgaҎTƍڜwhU'2ur LJy.O\6aϒ58VY4?JFZ k+t2 Թgs"TWvy:j'҇q "rp>lq[,tP} w~u9S^:w$8j4P0L@~=YC՘ӺK6ً";ՉֻÇh\$kFi\FkqXìp%]k|װvxqJ/ v{4C 9mӚ^-$ +1+ t*xwddˏ|GJsWy: %c"U]؊OB瞓}^02iw4":" ij7ieVS l,Y8k/>7֝ju;p`.ESMozwkJ>l!Ba&]K.iq ,;A˨YvHϱňLò /,-t>ߗei.Yk|6$lX"AYQ@k6XJ g,o,r-Y"e:30D?Obpl[JkbrIB@$\  Eid+9,ڂ3B}#Lz$^s5&C{ OucwawgDF&ƭ/ [os#61[=v깓>60CC@\F^$RgH|^,[Kg=E!|꺥Q2 c DU E<_c *$э'}@Rs[[{X Ͱ`J _w޶č<4--tN!ZA8ì5 ǸXuR-kBme C$s[a91 'c+9\Gؗ%eMt)eP=qE@vJD^qaKȕ9Sii\! {ChI!obÅnjkp(u {L'J/Ύ撰ACKS<Z)HeK+(վ2]lR$EVٗ<)$mQa93)Z TNTnt_@!0*I-%GX_d IHs32\j7/k;"X̀tFǫ),6)H߃M282w׸2pD/P[wL-^i,mGm` v c}h ic:]>/T{dxtGk%Ekq oimAbJ|`O'%f<&AHJas8NU GCC8jry;Ȗ= ~y͢&vIұ/-]<$ (qvWr9(WjWMSvbiZ"ZJOғjF'ډ杘N0s^S(UbDcs]ʜ\WJ`\\> Nm༠mDŽ㉄^sтDCtqSP>dL ;IP2)&Wv]SÏdt⁀;y|J"?_bH ^]Rbre*fwܘwpƵ,l[ zZؓX%G*( rOcSBkBn@ [sɅHWn_Ŀ>st(7d4+#m8ZD C w{kOpfO_xνF`RDM-m>H9mGD Jxr-N9XX_yG//i#l!nv[O\r+9#U5@/ba%߭X tt=?;zӥ v;'#Xu\*S.&5P"p1vZ߇VMXKmF-*^h,Y;KеmEPٱRx:V7(0RpjpOBFOs<6 khEβOꊅѓ,-2j]E6a|>uKGH8=(xF؜)52: |aQB'Hժx eE0Q3SSy[<[Tr h$p} 4 d Hʢ&>[|soe!;T_vn*uaNT!¨'_%i.D5I&d;l=t`O9a .#M*Q W2qzx@i`|m!@!FBfCR8QG$p>F>\֨q3g47f*ғ`)[î U2'8>3D$Pv,kM(ö&Ee,W_D?*8k4kݼ8^pӧCQ0 <ĭfb5w H1bk[v#z0.ij ]4i &:RHyS_kWF+)xSWI13-!uǒAEqȔM5cT^F!{2M)LMa `dFwz;`0r+g؀ ).dAuviB'e Z11uh pV@]$I{N,<9^ ' #<[F0~]T'kR}0V.8dܐ 3a"^ir>>RLbj"Խ7d(7ms /Q6:>"nOXp[qjU}ֺhbԗJΚ&e/\ -t;R&ȌD X\w'lJr&0.z`+Wj:N&ʳRx CDr= @0֟b[5Œ鰢+~9SEV2Epd][xDUk.>H#Tt 9Uf8D4p"mb" ZhFAB EsA mZ8'rym9@*ʥxUմO}É/NE&`+4ۗL@979R~Dgg%h!r~q ̙"ƿ+Z/AOV?G4DӚ!m`4"/9I{{YfE-qD^shWI竻Q5ԔG;ڍr4rapv?F<8 ܛ0ۤv ^i6pbr%5|4/ ,RJJ]9D j*PY?Vu@kHM4x D7J؜Jfh F"~} z27[b4b/pٛFiBO]bKuMQ^2p_ΕζW9M$=6+>AOᗬsV(=4ߣWBD~cy@OIF3?/@0B>5]E>ohBeyҾ˽9jr |/(DSM~^ocC2+M7 GkI*omKDE | eH0nKvj46BIh **弔936Ђ#o\:KA.q:Lx~`h/ݏqP>}kH'5ٛkPkCR;SxDdH pn B!؜SwK?c\2Q@9{J#QS)}:#C@֮5v`$`_$'q! V^rբvix&#c5z,Lwc 1I0y"±Wo]AVEȇ|ذ=`<`UkFd"=&VX54ϡ0.qIkA7@хd62#'f!= ]XJ]N)mCHJb@@Lc/bi*iDxQE"#R3bZFӱyN0TyKi ,Fk6(]. @cېuam9x0ZHsMs FLVqJ_()Ivqk٠gT.WfM*c o'bX|i2@qsqI+g&K*KtMl]Y5U2E`;/F^\ '*y=KU9ϰ´nrz?6PF /B<~,v@[f<ꓐY뗰fnd,FEMM !7:@P_:c?a٢h-~v?m(tQ`Ʊ!|-!p \bHw4f8~6`}08r&YYAH \WM_=rVM8U &h~暴t7K#;yz=`PcߞP6C G(f*'%r dIţj9;.}RC5#-=1uh?0{)gewE @T[S.̿Q8yUCu׎a,>WJHFnK%*Y! #bV T4 E6hX b! nPe!SFtACP෕lޓ9BìT7mOO͞ G` Ǵ4 ;JOxx)Nct2ZE;_zՌڊ+ByMVUֱi`Ĥq쉹h\9C;JKx09{|oQw;!/O]CP ,KuglGÞ"[Vůg*? OW/hƛe t)> srNC`HJFź:-̺Lvt&m^M@cqs-epd ]>y$w;hy*woT %(ɲiHTHѼ܇f#92 9 G~v$El~$\TBbzQDy|n}m%yH.qR%)W  ΊꤸYKf4kH(/`K_XvD03j{I2npZH'8 _t c=̿@bN !+ (x!wN\.octotۋfY34X𨧻 gyyN5AByRn]D ʙȕLiO)Rcoewꇿ2*ooCfC# 0z8;(NȺE_&|>Dn(Nz~_7hO_\v(hild]KC]/ 9ċ>܂׵X4YsƿvŅ/5ɐK4B|o4aIdM{|]y/?QG~w+36r,R?gڪW^e}; .˜MUS.#["y雜H;)LN\Gf %)M~YS>%9 ^#D\TS:9D?cBЊ*2 7`ѳH Ro<'3=,U|,|u$7ɕ6ZU]n]95ުa/+z4hTC?9\v!"y${':"+52zsہ^Q]ey4[?5yC2}&ozH 6]n 2ҊM&\Y7.\I ̍ΜJ<V(H[PLdVuQmzW[}NSr#߸8Dkq|ZCOVD)h[(*G!f˙c P_;ixzz[ C-)7v*=bP{mwbr4Oe2vgPHc81rT/ ,"]JfI<(|=z!A+Nߤ->ľink'{Q&{D>f܃\G%Cc~b6텫vCR'IEzfn*ugt=9D)xwjw;CSJLs6`{4BKuDPD"NXMB#0"v"F#@]mB7BZң*)x^77,%%\L/NΜliۆYo&X+_}o au,\j"jҘf=IEB U>>?wP]`/-+Gt/vN{@bnL${ -,;9r}9t tLi;%$G9 Q@xfoD4뀧uL?8s-\%'xk_!A_3<=3mj !9mZI:L>ޜ\<$ =.L#wӶ[.f0I+eނ\g8&rlfot?B<,4.:%R#k^4*U}8%f}CaSD'4BٽҜPʉv3E(Dұc,)7ʷ)"DoRU*و21M~ ~<3aw@J|?h{pL Rt F:4TXxdk vc]Ps܎W}DK.vu9Yޮ9D,IG ^FlB⮝Re 5%c[*uxo5< {V0z|)`EQNhiq(|e;{$Ig2_OA %Ćg왞pj> 2!xE֒D523eݴkڵUf wP6ed52_vEf1d5E4*,bUKy#RuDi1VVgŠ @now6z ؁ r>pI>V4^9|GwP'0;KQ: b%OO/L07q&W2zgs(J̊̄i&=r96x aPnOy88`J";{:eA!@dwށK@]$Yk]Gv;n#Tئ#zgM9ZugS^NѾ.ZE1c&j#n|OƝϵpq# v7Í0qI'Yƛ'W ֫-heTZwli["fzOṱ8$ffU b`B`O5Fh:WJ0ا*WSK;3q.9$$AрѦ !+_R0`c#gk |A[FO_U>FG~My5"΅d'$)j8蠃+} Qʌ)Nv>q5UYJJ»Sm 6{2]po`?v& 8*7;nb*b3.SΏvV؇M WN3:׍Y%2q!鯺w3ѳN_0 ~͋ڌ/&On$M jܖpyKGyT '-vCH]ױE <1r 7PG[Cs9q`b79eW9_;ױ:< E945Rz$G^ Q칛,9"mSQ$꼸/m"I?$G,^n>=QC>v%S"{,h~bE\Vξj; >_K dsP>@I3N+=Z-mpnNY(C<g]']pﳽ,|/TaxͭTIPB(w* Yl&KOFY-`/%pw /DZІDkow℅b օ: e/Oxqhvlb\e(Xt%\AR\ѭ[¾. c§U[2r1aq^r M8hevE%LRI5wj\Q6Տ0W{L#qݚT_q܊+:zmPXB| Zg*e}3Ex$qv2#Y)8"4}WGBʱLW"&=3rTbƽ&yi&B-}T ėb%Fr0M;N!dX< Uu/zj PX{pڜ1 =s,Lz|yd|/׆ȟ ccw HĦCcaƤA؊i鞬" CS4% LK7qCFza vQ}$DR 鱍 ըuyxnqu`*z2!%L_U$*D*Xlv dc#ƺvy!e"mH c q/r;>D5f:l4mR,E!GK0"KsX lxU|vE#^P=:7ziw?| F{U=[Үʃ5t_fư.| a¯OOk-5@SZKyX.5HM #^vѢ2eotC䐆y_p=Ո337I~v׊+ďz0hhYK";=d d"dZ%6aZZƻ~[ԟo*1l] ͭJHs;{ڱ'ib$vY廏xƝ;oT/9X&,/:,y>݉z][ʱg^;%M4q*S!ld8tU llm9|MK=;u^. nP!{+BZmݶ/ҋ#(ɭ[st8D/؅zt֪ ȓ3R?5>rwz[yNp,`F7&$~Yn Ҡɵz|`a5@/yYyc8wzd䤊ScoIL*5n…V1mK9~ҔXEN5]|l\߳"M r6¿mRUO;g%m {4GgJYO)V(, ښ&A^|6m"$. z_ҷ9X1"K^F('K6 84^4ir`6+Iۯos7>Ų Q1eHCd,dצ1z:8qFXT~#˻P L_qs)(^jxO? 3| cn W;߹f, ##^|SnFD ZwE  |r/Q:ݰ&Dur{ApO BkR~.; R//zo) +{r[)s\>6m9b@VHu0lq@v ycJGY{7G=tғOUnL@%XYwߢ-EJ] =%id'h1Ie).$ޕna\#m %r8v88w{ rI)!J3S?G6~uױg^d[k4EzEԻ#lGPPgxAnY]B%nAn=1*#EA*{?veB~^#}4%윢>Nԥhr+ϯ1z {Bn).-`._ * 0AxB|4Ē&!#A)̧ɺc^1wQw@DvjoSNl[-2(IfsWEmk-\j-\~FL:ܩ}b"@!):+?!:O\AWdq,ono`yv~r k#"o>Hw I"ε{425D8OX<_$s\b$S[Ki}ť> GA%01q44x,}2ɭ@z!"@S;hA8onvV|02h}He>s|}.ro€PPzDU ݜ9i*0||N"ThZ4f,lƠ +/ E"0 pAQ"ѡ5KZw1L/ӏvF5^Wli\TkL)yjلs5O.C>~*:WŏLT-X;8\ad> d būpK xDzx͕]t{7736:́]p.ռSp[QZ,.~OTlk(@u O!‚23 H-/W3A:^ %s*WVM՟#ѽUDDVdnYoŷ@Z΢Ҝ캄,_GtXщGf 咾FE=yi]vjYds0?o]2Њ=χ%lzKmlj:q}~eEO')Z<6pO0ԅ5 -,ݧ;/Iq""ھ+Fs9(KO[_gmA K G]їKYMW"@e5UO!PznGz1ޙ 4ه?W'HM#Q%7ʖx5Un2V2wg"Sӡ9\.:6j˪ pUKޠ Ӂ64H_T|p/dkPIX v^bv3*;UU940$s\6jY*BekKC 8~xJ[9LU #;6 3k|RXQ$c bD`1^0SJQ:Wrr_gΎ2wM  ;#@v>YV-XLsy=OL]ʕɿ' :C%ń/Eң;CDUJHAh`Ȱq&THP_ 3N$`6 ӳxAW"W4Ȼx(?AN&vk -(f鸣q`d;BqU z{PS=s?i jaw1/E;e[RwNv;K6^^xǴ^$t$bLjp_i:R dc]X6t4=C}2:Yf^ ËT9onxx6!QƟx`sRE^:x;)Oqo8ڃ czyʖ# 4:vPxC<)i8!\nf_s#6@w6$ G;4ןT/0z@^2Vo7oLrحzbC# F}im6̴^ }Q3^%64D {DL|:r0Kba>5eW%PڀTR)'skAL02O2΂7`Ԩi؄H!/K48Cg T 67-vE˨McL7 |GY.'@&V8eXfrx-ASI2K1644RQqmUydD6~٫ ) C *c N@ͣU(}0돡bkcBhxG WQ>>4II;LG?3t_V{ӣDc6p4w UA;zڝŭJQK'qv l&ȳxm-^ᠲG47z Oso0(@:8= wkVX0?=@-94ѽ 0ǻ $vmaON'4ĵ[T(ir/! ؿ*WЙQP9G 穋:Uȩ6,( +1w.g)RY1W/O3Fǚ0\*Y`4Vp*b=`9|HȱdQg@ 6CH6Ѻ)o<d+ٯ>u-̘e6"H ؅& ޼gL@5i3ƕD䥌+']st@lQ3_Y}Qz(k[Ry?-N^A†Vy}jΛEPMՌr^1=y .T$VD}̮ƻܟ9kOc:жS˻4 'Hczu>=Sh'T!7K@P`dx ĩEշzLh);f%U}ԓ'^x4 f~##6zjv!RUo?KT^B9R8*. 'އKeVYmV }8 hm5%(;#\ZNWy0En_v_>ds$c~uѵbj~[ m*> :)bIPUّzȣCʗDx!Ѥ%hNf&3H4}K]/e7ȐWE]6ղ̀U%hmwn+C'`{Ksi(A DNDa9pT=[y[f4-c=m :C}U9yqɔtd 1. >{vK,V(.ŋ:z=w W-0;뎤 KD|qb8ޜ"7fS OLaXh6u <X):zFF$jw)xy2ȸF`0_9yXHueD2(^E=ڐ!]9:yWS`I{1A*f #|G</F9) 7b]3u(Q:4†STy|ÊzՄ$T@;U7]f6̝BM-\j-R6 CQ%A4w/ǒ^֌ULӠfyD>x)Jd3N:b5I߿*V+ Ix >9%5;dd?L03yƴ Ǿ̱Djp +)`SjL[讣~A1aojc7ަ]s]z~jb0?-Ik]xL$K*yJ;rosusKEmn6ׅtZ~#^92 KN zZ+0~ ͌3`@;"9Rx{g6s7'1+ Y2֣&ܦ"J*vT{bWƚ'\"PRLW5<uEv#I8F>Lq(wU ~"1w '@n$w;Rݐx,)37"7-N(Xp$3oÅ<٘J_6):%a(c#|53s3xDVVOQd MOx/oBr1[.ib}-=vmtޘWU# gy9#Dxgp9]h \b%w!@c R7aIwNw~Df$}ʉ~5 WTQjwv.YUe95L s@X.}G҈A(\rUajg{SH};C S#uzfHSsP27U4Ev`xe58rԃzjVF?s_ 9H-f(M@E:}HSV7%a /MNXK"C1i*ypLeJm~w{ ׮@6 e4=劽NDyUMOZvm׊s.ЦΠ$^Z3ԕ>-6i\e]qL$0gq'^&Rޡ-U\3%\D,GGS+8o,Od~=+RtBs@(`]R]kd#,۪,q*a.Y!;ɦZH+'e/ηǭ1 yg`|v3#gq!\aO7Ų(5|ǽP'@eBI@^%ȰPÑ֗T`u_Aj[04v8Fnp$[¥[ޣ&NUgjj.mXS.7z"^;%M.wl_ sD%=4Mr;S$X$ة> p ,FW';KoғV=r2JLnյR@f#u A4M3D9LE2ƴsZىok[+C:|R*}^dB˂)੫.†n^ۦK>Z2}{ 5zjiiZgy3; me6i ܱDNMjɌiONlϣ| Ux&6cO=sE#֜tO Y kt9dwW4zc:H`+bKct(.i@xyO~m=0=j귄g頬x>,T\/04{]ƚHYiKR4`d|l8߳xh<6ׇ5mџv %ܯ_՛-nwUouT\`̌ӐqJYTWGp4)3 mMYpFݒ8f!ZTen4Y .vC6is)ܼ6T5-\=aAc<0AM0);鳩~z.T-R[+6 FNs/WHEYDU:*2 ^Uj4p%#ѺtB~qfK&Br˓.Ä(_CF>:ﮎS̜gvb2fs?=s¾i-`zu#[4B x;DZ~ ?.!vj8/q̷B͌ sSuV(G ד9܅e\{J-|yБFLuY>3 ectaB9uc~M+DSˊn§P6Br]d&$yWF[ҿAQ(~^,A˳c2y= HBG{L}fүE9"w#nsY̆ M=5#H/SC^Ba,YpG Zaǧ6CorRnv,ydH-ߖ$ϟ9гiY5W/aʅP^.KZ[,Rjy7WzCz1W RFaKE}l̸ ӵ1A2ރ@yFǾ ׿'7n)Ped\l=M0rt=A*A0cNPf93sIsFczS|b:qgFcdd-۸Hvs{ICғXNB&Y["P욌SK*cUWZSSMՉ1rXv(J"z˦V{=2Y!2؊,[3Mu,6RqR [DOQ>Q NoJ 6"70VD<'%mj:ܖLO*@Q'DdlZJ$EJ%IZB^e7%mi4=}u*` +R[w1 aŧU*cWŒv mq4ǡsi%i&寰|~tN6I^"')ܢؕ$O"PS"=ޗg#;ѥd=7PddyUW2/np9$ H&77GWSY<<OJ Y!Q-$dXi6©&LCٶZ}Q% o;L8tGw{qmJ:?˱&췯$(1;{v/ٟܛ\5¤pd> 6n;=/atYVyT2爫אV-Eń9$;b<]1u*z߼v* `f,?skΚK}r0-,2&Ǚu9mPw)YsȺ]ĦFih[x(GWB`wP+'D$AU ׸be GR{&Vx~JUOxf:yWgFf;`bTvh*Rdb;mY?e t 4%/N5cJMx,*L`CY9PHLDO_)1XBUX+y3!r״v4dEͼ`\3K?jx%cLBFWf88,D'{&& H$`Ĵ%HUIt)bD OjsKs-``34~OIwKnխqjoOa]bq%upa ϟu;(1lk7 )p9ǵw1O"7a(c~LǶeϚE~`kT}"21 6`P53N=sѰY*.v֩L L:" op(HBξ"^H&1sXz+ uk.sȻs$N ۺ GS|G9<r*Z8(JXzv3vвcp /pn NJ]sD#a3)v);=Zz؊c]<+ͫգ+_Blf)}6)~.u?^L:n^pVf0* q &4咆PbiiT(XO4Qwm*gv 2U l ԄuKuI}/򘦞Ci:ʫ*wpVԹT-p4^Rd v_DŽ\p{J TGvqBX <9 G!,;_FzONoeIA #|UV;M.A}>k Ȟ@3w4x#׬"XKZ@.3 )ˣˠC2 `/Sе\*VLvqZ:t~"#$}ZEd.!ˎj08 _02 "EK"{v{<2ܻ+AYqY GW=mԿʔ8M"{B {N/ r֝S@ 4^_M5[=]ˤf}"SRvAD_Qjҏ9bx־f3s]DݰLGMg8/Qh15(AT/p>Sʄ?u$]Cc㠅t!q:{lcaFk&$inT5lj2/9U4lk"UyܽIAKr4PӓcR->l1{Yl{fc.Bȑ"$(:*?]}I5GrFlLw[nࡠ #pQJQe\O^esa\!݊4O /)͈]Um}M[)u7!Tj0 OAg-a@xfvԂ׼5ݺSO ;at`] sW7iz~:;)fNXO8Is*8'X-,գJu4ЎXHv{ 2"O $o;,MXDU>ps[>܅o*XxWVY|0R^fSL-*?Fz]X6WoBH^≄w%b x(e= dhYzˠyOr&(3X#u2W=4$W@ӣb~ᴏASeO6}]Ƣne ,ϥI0j0³uRtk̏|WR)O/wA ]=R1Wxs+hK ī@\5Q0b?gxTvõr1EE/FE/:62],)UPtA;+6<W:,uRr[f\AQFO[h5GRW9'P1{%wOxzc]Cd:]^e6i1~_g&:c{5hw œ)<~tu6RR9͔2YuHia\>C`^8F]!&MXvf8D5:/gϴO p2ڎ[C}<ɏ=')/I=4YKdN%'RZ 0n y4}HĊ&L[Dz]0(6$!;"[P Cap"U\Ԏ"_hHRrV,"T/7h~n{B%[1a˒bN?(F7hi| \Ӗf'L)ؒ?i7 0 CS0=^x{D|ON!)GzǏ5y+лZX${Nk%ْP3Zw}הT NeNWWr\:hdz?nē#LM#}=NMjiІrc]';dY^ٞrX9&Bq*[BAwU;(<2!m]ۥ+Y%v<cf2\킎NeUP.B <{~  5,\^n(& YڙK?\tl af3z/<ƖAG0 C;4ɽ\PsZx!t3m&y"TI#Xh@?v_L^q{yRڎvN뵊.("z <]Pd{`V=(Ԗ4UB8 _H;?uxNJ )B-5ՙ̜e8EP\ %՛J ͚}B㞛E]ڊLю,Gpܣ` !C:|]WeGM̺%`{q@@H[vk LRAW\/m=D,\  ?{j\mܩuE&{--oQwNwšYXO0Z{Hb˗0*׷[b3VwV >w[Xk=ynu?chBAcO{Sk,s~=odbmQsU!՛բȓ }$z`b }`jy?U0~f{^Q,Zqm[K}uwwM[ȒCImHT~, ?Xz)_'Z[=Mkg*ah&iE1w-}Ca)-ufclcW@3fCʧ~X 9Y!}.MFQ91Qz_4>ʙO 4 kY%7w4k}dĺBPpGlMdQę\pԓ,E]\4А@*h~EDދw{sa`}I"p f%G-7vTgؕ@=>48 6/ nU>4}]}@#m P~fDi"xln(U'C }T6J#o̷:y C+fOB+.fu0%ĬNfT6D}fMFi4lv#HqT wfFmGvzXfqݮ8|Ƕ:Xzn6J7t LF `L'Q6'*AE7ˎnHUx=p?n!P㝃͸ϦX#!5m[*@ |6?1ùa·Zbvt_ߓ>yĺ[sH )KVrx[K{[Ax,iɃX֍ZsNшZ+[fA^?P453r''vȭ6`Ə:`ҋ$pS۳$ ]GNU6/gw'\e3!MxQ; |pT^ y au2(9JZN2B+eYs^5ڡGQT*1`e>6`l&:MJ>?KhZqGhYWTWwD_ C+G#_ަ '~B!5 Yh3֎5l룧1*a'dJ^H]I^~R;"<[􍁿lꃝ$crsgeQLlkz+b?}ff+8\D;<ئ)e 0;?ʏz`^ }i$Lcl$*~eM9E(^Нw>"~j:bxQZGSAHXYg0_rv.#1)v+}<VzBSLf\#w!/5]@rh:MK|1$J? f 9w?nBFx5.O?/ѯ#3Ǯ,y'"Z[7 p *g2O*?CS©TYMTwz}}!9 3mE:]=pLtY8+W;?3D84S5I͎ʅH8ddVJLЈyE/~F&o%Urʩ` fpxVOcNIyԤͤ:eosCn-5>˂3ffd8`YkB]h;}M}yˠhӞէ `UƼα_`@L:VXKuסJ~Z'_K.VeXC~D-B3gZDkT 5 7_Y6FL gXG/Ѐ\pWp41U+pL;B ^?l%MvBZ+#0zX7Gg0ֻ:Lr:$W NaeyKIzLwne?X@8i0@Z`IWZI;k98>ac^`l:mY^h՟T}=w Zڏ#աx@ܤPDFzP@TP3~^g-0;>u7Czì@d!SV]OB;'JW VU!7{LLf6i{9cfS2+|ϣF<20LzG#Mf-rB5]3rRgԵ;xّw}Ƕbm@Ο{Ҳ!)n8I*H݈(ğ]"KDӈVuA3) fsq4I U(ׯ  .ëL-DxI6oΔ}2N)Aզ5FpPNtq  %[mEnmdQ2C%:WXJ89Oo5K+RKv-GѷA kL@f8ǘh`xh&0XSb{#ԜbdЈX{=%8C?gIdʷ9|*֖R|wH.,=<%6!w%YP0yqGI6D&MۻH]mR,ih">#7zQŸs;#FĞB8#;xϊp>K(9Q\>` >8 * *Bq Ɣ, 2Šs!Ko(:/j =]F\3r Bݝ \ e. EMfEOh]Vncfså^Z-IQv^ewj1& |/]f]wy*bxm8ϋr!'⹕sSr$iQ|m‚*øs <j(qy&q_Wbnc\=fb3yhcLr5BkH#jIoz&^`q"6ՂrC PdоC[,YK 9A]d Jo7 _S>+e}5ge*%z._g VW{G]YuM& o=^]K# 'VJ/+KץPm4WqьՇqJA,ۈN;EFCoߥT/`N' M)Thf4 +$Y~tkU6s L\Z6Scg+8BvZ =T\M?'͓KӤeq~:`+mXrz6*Viug wТzmq,Ӳ\_W۵.VkMΣ7Qj%.Q_˂ayP^l-'&{L e=rxv W9_80_ Jd]g ,?"z4'"fM n8 ʣ~!zCnEٙ'CݺZG3|T)q>wFzd$h2 PfxfFL2x,yz=rqi# "g*+|| >;ORl_*U+ʪ [L/>6+~9< Qz5 CݸU:uP< Ɛm"3DX! Si@ZMm#هɾQkg(7TU E?&A-z AJ ^Jg2j*v[)qW I5y6T۱YUeZAD_w=+F<Z+l7pRTjsK[A+^xn,3=SRMX| t;HF͑$o2]j.xU%M|1j pbrmCn(LZ#07a-> #spү{{Nw`t^9/J 0a_-P)U[`)6o:viScůܷҟŊ QuS:,ҙ7/֭x\ |MkYa(e ] %Lt~`>HIOdج4UPovoIMmF񙥎9[IG%1*0ƿi&TeLsPں+)dBAEeE1fӰ,2\aXR7T!V^x|w!=}e^z+ݧq!܂E|쇋/{2]ٲO3UB@}@9paAgD3R$)vWkL+RkٺVbN?Վ׽K.ж*NĺW߄%̆>Q:XdE򩶔eE'eo#?,Kwf;_w!mqC}1pKBFD(= :t `m  u}#&c`LafJ|ӥ^a|`aqyj9n 3-/n,؆z̧ӂ]"ujY͍5~'zx5$Cu^B<_яN=晈(>Y%ZG ֆheDePp_djqxQjY=U9a-2EҒ ڶBCvؓC|W8DQz(rD<8mNuf~na\U>(UhѨ^X5U2Cdދ D"yn4>6/!A d0'{4z. o[2OcU0dרFu\ߔ%t1cz|{D )p*ȭ 9gw)>y8CjɔTáWM?wA'*>m+IO# arT}G\y8N'TVaIHf򍖂Ғ܍ [t?j5Ar l]{A_4Tt{ڕq7V̪Gwb.u~{m3"r!JYUA~!M4?ѣLgj9ȷ"eԡ^ wp헄rcB]KR˖StxI=p9쓓u2|(؟A6F_[ kx HVb CצN` 99eB(~0Jwcj9zLS`P D#I;ZxM<a!_̠2pF'0b]gvza;o=;U(KP9~BWS"i0ϟ,Uc[Mupzܻ@+ew]qV(k j 7lpQ7ڸj9a5_+/KL!r7l ȋrɕYP'q]o`0I zZ~Mp13Q,mfj1mCW3&,2xyI1(9I!jJwm@Ή4mҰkRs)P[]7Ef%Qc]چl5U,εp߫ve>b% />Y@,ƨXǏBDdxxV%@\EM'KEV 穊8_*͑toVlRZ8Z3K4X3ȺR6Q4r2;kʿZ/C\ JVdQ=*r>?Y+N]M Է<#ޡoό$ ;j_ M>/xR}1{v3?'#P$I:bk\jkTLV mL B_ {E@ jr 6ąiG1FzmQ/(zkn7JTX+E_gj"_P27nkO\8x۔%ރ;|w(Qm0;zz5>}pJBe_p ‚lQVe6Vj>9y3a!8+ Ǯ?ΘڞGahuEǴ\G?r5 {zEu鏑QR&15R-&hJNG w%\a (_6Z KvS셉{ ^8z0f%Ui$pGַ&ܧ\A^D-sSTn~)*ɺ*'Tu~ݳP6!1#Wz$bBl<Kk 8@&ŭx&-ٵY픯"G:xCaᆟD1O|_т_V,hUNDDF%Poم'xTVW{M6nPu \ GGy]n3n!FE?, 0AB]rr )jކw*S Q)ooK.0BF=WԐDc[񭐼/\?&:֔Irw%JmR##$߭қɆ:?c-.1mJ6p+%JTH3x2sPgA@.͠D8tB?\ fOO}-6Q:h5ހ 7g ^sXkT W뱐\z_6H"=Z@Яlio0jSp| +M7+_#9Ly涊|ꢚr3:b&h&{S~(/OZ+=U=8@3hf5$H4$^c:A$'c|4k#=ŸU@@g hVٿ%Lh\RWB۬G?9&4Y#x`cTdluI4У~`y:1i.q1]W[NM^G?& zb\^ص7~uq2`|@1t?y]uͻYJ.~p?]>Ů'$ #IW6;*3!OW].'qnKc[|>m0at\J\ ejCEdIqnMitOE :->aJ; #@ A$HE=m_s%˻(tЪ\uM:_8 Pi 7}Mn†ʞd@16}Fl/r$s=-NHA=P| B i8Q";zO=_xB'<;%Tc7*AX'C.܎µ+-=-9 4vڜZ ?\<=7AE*BAn L/м"4iσ\M~"F̧𦳜7cG9I@cV7cd>O rlq6 Ÿ<6XTЋ -v n gltVep[UC[SAG쟦1-4p~TwimSЊ Y Rdy {{_O 9>WCjh^M1)%[_38qG_x%El}e^Oey1Ni ˃%GbS3:`2-T `!tl&d'h;n0%.L/*3ɸF^2- mvIv][E%.-|wH_)r}R\ pm&ZI+{T"rs0U&]OV#;H4C bϜ"!SJ$ѥҶ,GO*|}ڪߴHC&>Wl,ĚL7HkpS{a zÃFQY3Q@pe]H(S}Y#eM{P*`[rXԭ ԡ=lvSWZzOhSaI>31Vď ꅫPv8+cc*Ҙ\]rc2'M%&@%L4FM SzűyIѭ$81! áôFXnj/+!߂a/$"MήxktfI({A#e xPf&"fOFY(gkeojpcxօC-!Bl!G<@!Ak^o[xW3쿹 gߺf08p j"<:ֈŊNSGJzz v#U3mg!6ɿQWbiƒ I3!d@ iS[8^M/PtYIB`J&xo&U:@~Ft(\SEz\[-}l쎣ƌRPBW;d!ٙ muVQLevBl"h\ :TLzdI|܈p}!c i־bgD*8,Q:l>#;S 2 ܁L#E3Be@jLG $*TIզ&.˳$I NbԦϱ瀦{X&52)ϴo^/ZȴNLٙH";~C239ATYyk% >S| `o,(vwX\0f\ !۹n"7оwPi>S:ʁn*?FB,fQ]Ǩ׎) D$ D(gWRdYSgL /Z1Z 8ڭεDΙʝF]MQ"\D}ourj.Ub$ғqWu'1|Û~\[_D1gytxl"(rG>R>ѵz"adj Uw-a;A$0Ďf; FaiN8KtHȘ 6{ P. ExD!l8@tBxr3K2B)LֶJ0y=NW&.[ v9Ļry"$P&X/pSW^GJFP` k;oV"LE譓 K+GB??M$I/tkC@nOiv+>\{ECA4y!C@oCŋ~a_dTZP0$MpWm[gx<ϏPR:-8It3tâ\ǟN D1胁1UPy%Oѧv"BC; =#ۗmܦ,afX4nhn<1Ӗ NL^ "$po+6|ti3*I.rĹˤxfWxh];'=yM"ۢH"_+f?P=\Ã]Coٴ)[ O4RgCMK{O5s{ fErU,?*&^)UA7@G«ig{H2v7p 4@4ޤoc㘗-b/hS+R#UqY3&Uz<׵`$Ko}-v-+EfVv~.*h9,{ yO 4.-KGw[0М8pn#sFˆjՔK8įC8] kISPubեY)29-ĉ0re G-pjk_Ћe* 'zK L8kZq'L݁I_e45U].s(j8:٪eHCBLpD.Qյ ߵ- m~e`e-712<^-$Y-uنgYO#_a`J_zCIacMk`:HA+t3C6S>Y9.&3 zK*q`#x= w&1πz3yڐE R9X"u㞔JF1MUNH3jSshbaC !h!vȀz'^Ȍl'I9|:ޡ&NyP9H4-Ig`{[V #K .MD'_ey#b&5wB \*xA͏1a-QNzl^VT0ݧj}62<'QRETz`m !l)M-=!tz|]9 .~X.`pޞd #T?;ǺI 'e9QRVjgzZSerR|z1N_&̦M8/MެR,@7ΟWkU|> !{)N[rZ=MxS> (=?7x2(&g/yIx˨W _NIFwp^me,y48Z: ?.M&R$>C~y K@ߨ\LMnӣ%ݍN)p w!K>x VeU}ĽP2 I3Cg;y=YiN ;9 u䆏ԜDcLlf:8zΥv he@/0\c!h/rjK~/+ol,E6 >+hswWFZq}肺'4-ܒNZ-N7I3G&lҝݫCƛD6"(?<16Ԃ涯o V^/@jGݢh;; CR>G__\HW%$g)OjrI8ZarEgZz FszF4 ~EKdNNf4(A_Qb.Cح o}mh7|=HYِ Q8L X#mɰφ[5RRUu(*kC'֨Xس%9/QN`xn}W8>YfLNu&L@ȹ |_cP.t3wq'yh0!_9tӄG12:ލwTi(JX8cj:z)a)~wpl; 'C<%bdCi ?#$r:@ NYxROE>-0ݨOz8AJQU*\pY;I@FϢApP}&5j[˽ЭB R66; f\~&HQR;SCd% O'qrNhb]XI|9%(b@C4Z8KϞB-~c^.˲z`1ۑ=sm9`p.ENyUrYa;s:%rC|+&"ZD*zKZTa32?j靁ĀQoZ$سްh=Xu5Ud-T?'bK fıLL^^3YNmնȊ{;{/s(.5ڨbbaV%BD}\ 3ma&G0-DWkRez]IOj QwfִS3,A[},՚mU~%JӢ]ȸإn3/pQ6!;Y=c]ʑb.շE82sܳ8{\u:kRgG>+ֆ=~)y{(]^Lb,s5taj1yՖ)߈J;݅F:I떊;>evwȝRQ9aIg7^OyБs 884D0%Ye}ϥ4/cxx$A`[ۺg 904"C;f< ~' ߂H. T22&5/J9iUL8Fvq> eFfLx$ϴQ&Nq$nv`g#2*ry|<a \&dyeGtB]˗)*uԌ}CyMi8~Md2[$"9% NB+ٴZa@-';klT̔SI%p?&Cєz^(3{\"|1 xZ/HbvA"lIg^Vk3){űV:<ϪR-:J9.m파p"S|~V}sD#Q#UI#'W$]?T8[J1V2]ZZ6tv LAɤneeC~4]\ r.oF\Fqf+, q|;hزڊ8@8"yޡq9xlXAftPsS KEmt9%e[,Yy]C!]Qc&ǻqg5#zTjL:lN{ݎ&`޾{Vv3oFA*>Ԩm#z)57(ݻ|((Oz3b؎%SuʜW{Ωj_, &%:`7Nq LrT+k!U`^42ܟW#G2E. tV{&*̜ʕ*R-)9 Z,; eQ(PXJ5>7i*Tݔ,ב"w]hE^ÏRR辍יo-,{Fa O[@Vp~@7FƴRVO6LWƿl$P/59ޯmWTMʜ's{ +%b hh ud"a*\Ҋ.xVXQBk b!н=JEYIQ,_^D;G79[ڤƽK^]8HkRÈ/!v }(@D AWwr2j]cwMmZ(s_ۮ+Sso o2]ZGdǶjcA.`ރ #:H`$b& o߇I9гP= 6s2h;> O_>&F+1 X)־;TlY)?\˽S̎~^$J C UU?h՝!2iW_Ҵ ae%*#Y*_K-7ȶc9gz َfǒ ŀJ= >\j vݗU07@e|<:xb_R2QnAݤJ_ F ` Τ% R0! DYZW9OkoV4K@ŷޓ3dsyi믢mUV01#Ta-IOr=%9t(&qBY2׍DFLNdZ}@5}hsBҊo2j8oБrKR\ r1gahC,e)l4&]s@5tXFē^llֳ _vg>@`ZvHM\&Ĕ37כ`XWgBf?}IO5%)"Ei72wy6H _N `˧~_Hp&1.{9oo,-6uaoI2A맂גDoȶ7fuL!Mp䦜E?ÖkY221▋O2Ƨ"G4//3&s$mKTfjEj_&|Q`"z2`e!@'kyOccbOL0 nxWC20I4 r`L䘘O'@Is=q>2jmXy0T֓V-P` 4׷ȸԛo0"Uq5W[ ֗hq]fkp %I4YM,趱]9W*v#H]oJrzw'8aS%5<7+>!/{f{QYzoFs9+!#;>3oȣ[x& 'H\Q"%l 24p2]}2uCRʣ63 kn6Vl7i"f_k:mxO$yA$M KF}Gb*qUzEȹ$$sMT_*֙ Us6IN;s=0KV~n)՘A \lo*`@u氥$:iܚ+4!lc_$]O)P;V&!<ϏFS6g"̵Hy5u|GXzaPdf[N׃rv JQGz zDfH!}$ 3ϵݠ$% (9Vin9Fpy%_ukПrk9!xB˗i) o6wP>t ']84O(Z \rD+sKM\M9XP޸FCӥC:]p?EmG)15M;j$ޮl⛏oOX%v)'ɹzp=:`d$rD|G!D9|צ""Rj'¬ ꥄJn9cN:4)6Pl C3j NVCHHOɢ[, {P*T5)[WNy oJܒ@1KMaZm77Oi`kxŀ{=+8ݓ^!q $_*;:PnE>Sv"OR5d!- BBnpfҾPNjHVS yF(l2|ޜy:5[ςSCTd. x)m}D"(=1p H=y'ó/W;d%\@NI(Mo^U(Z!m3 U )0bɠUhZmHgP ;$9H\$Z>s򤀯3W8$<# B9NT N'%2Q2P`^VqwUt r SjI63ȝ׈ AWW/ $4%B!wG9ʉIB1}{=7U^Ŕ&# ](OƷfwRHM@ 08v[x(`|IO%?PDJ@vFMxX(%3y o8 e cpgj'i 00(*~Sc>J 9T8+sfl8H*N-CMKcȵ\9#:oF?$-7:)BDfA-kkJZz +*/&90oajMҵP*j;)-gzF}ĽrƎ5d:7ʡ)Zvα/0@'" 8Atn lV+<IJyqF B$c9qo]\["?:[85|hr 9$oǏ/ZPz Sص.lXzBϞ7TMZQ) F1 ᫆5{-~һln~rά&ԜFm0dO@Lt`mraSsnG%7SV]B&S^>ywa 4<F=#~ֲWׅ! *wr+SovLP^"0`1I2/n7C̻Z嶢d::.˦${\ m:z zE1R}7@@?R4os VǙQFnL0(n 7LMer3[0mb?EsPDwNaz,;} IŲ*۹UOIrw͆4o1{" lM;_ vZ d_N^nYtQ.Aׂ^!96D=n|ۜ]A7 =,T^>6xMzWunTwBM#Pݮ/ŭ1 x2+At*2:(m(Tc N&5(/`QEs|xy.Ҏj G?lC@L7/Ƙxd#Q2ughWRVDHj@Ί5ф̖Ts[So5CF됏X>j-gЫ'"hwSZwsU]} v*IȚ7Q~ve_%ǎ5ِ}dQ?3Ubmzq: QC"Kef~q`b>p]1ERh&~8F|%;ݛYػ/r2y8%U= zJ_✩2Znm ӗck[äʿHP܀R71n9%;7#67+1adZoW៾Ni VT\w 55mm]j)xck7=/vn(X0nC~o1V?R{[t; DZSfh۞OpTy[ŵfsz}%F^UU]?<ϜF`oZgE,H6j@V?x}uEU7yo6^U4KiuaT ++ F($<}?-XZ<U|mq>бD} Ÿ(*x.t khq2:Ov e%2ЦV]:cG]q/ʳuΘұI?j6~ G(*&toYQ8mdK|yn^ͯ7wgnsؠ! Kz1 XCEl lXx,?Út;T\Z`CU-][\17z1-5ibuJOqt6Bu7{kto[l/nᬗh7RTW2:24sgypr; q]erg3RmӉfrDKEVI4]Tɍ[1CV/Bf܎4vDw4-ǭ)٠;;r⼷5tiq."cH%)#//3D LEn8 Ɠ`ZxzZ-]۰FdʒkQxT۳F(Z Ax.r3Mz2R/121v׬({pf~j$jX -?7݅x\,MKb!5j:X=5;Ҋ=\.1π"WuA U &M#Y/"`:@]?k4klHv#y[@Ԧ]R&]pzS%K17K,$s|:bǽvecES{AB-"QryoE1*õpMsU5ep Q Q2h╚zL612ߡlާmSf WOK& NMb6 0ꤨGYY4ei%=<ΐKia2={]>pDu"uÀ/ճҨY 9sRj<\EٶE]w}ౢ!;0жj(ɝb>O7IzŷK 92jLLpW:-rSIkBfæ 96y@,L~o&FaF_2"MRBR( I։ĆGs0]WƈJl| Z!}֡ދhz*w-Ow7!pފkgxdCL  #ی@~W},]vMd  s7Vָ@\O.\=Y@{41Bnt@y}^^]xd:%eɦiSC[kiOIvOKQ6[cbx(C 5T[}shH!_fLtKثDl CCx9&ȫ^/tkwe$"!qfSyFHCu՜Cvx;LJ,ȔK_5i>kTPvk'6iQ#~<=V7+:{6 V]ޮJi B'ʔ]r N(]q ';±Lsׂ~iF$-.E!]Nx[ho8;_E{_*ku2~7̧xN ~BC:+_`,lU+gwp!| zJζm#AdЯcP/ĩHH@@f-F9|+RܞytrNJ0{+[W@پ2qz0©rxV'&*cZ0:{`y-fhf6Fd_5:v9ĈTN`xIK9lynz_apIqvYޑCόEg{Jzgn䨊#'b9$s+X0\૮ -VL4جS뉍F>'v82t$NmJaj7!VjQqi;|\B"rO}iN5O+E& `ćt{gH8Qn.g K@΢\(E;Ǿj q83-NfSWe#a*>vuO\nG0sq$G)c7[#ĵL |߄?^kz,v>o*fI ^6ne {%,JXnH@ֶ8xAhXdPYP9&.F[EzRCZ^~Q.>T:@ uXlciY´]ݠ/f*[P@^\BizRi, "=|" 2]`)0M+bXfGf%b3qhJ#u"lhYv}|Xm:ͿޕN~"`RrZ$Xw՟x)+k oI<Z6x }";(ƠOD ~P`ktOxʮQ7 :mТO6mŽ#eOI;8 ~7CAn]^D&5Tf=ތĭϢEЇr˖{Ȁ~΅v􆓯}zʼn uKw mDiϽMb*^{Q4H+ղkl Md\/(@7JQ|PEve;?bJ[PR3 eoqjUyܢ+xSbW=>IAɬ 9fi*q.o=_(_r: 3T$LXmX;DCר^`-ezBW]Șჿԡ,=/gBU8-6qΚЮ]{[rC!C@zKNVi"4I {fU@=dbtR #$?~b86RȘϙl 8ARBIGoXʳAUOePZY$s@ߙh7I)$ ]m'z )ڗKCdIm l#V}E<eJhğxnтL#,цjʛt9!ijYQd[)xZ,Y|rk{^=r15 Ȟ_b)o@!dօC'^r҂t'*O+/uBF]+*ϰmb&.z0~.C!a'E6hif k| s- w}FKEƬ^KB*Ff5x@ԧcoK+{[e dY)E]?xTHÀZaOxeb+uev3л玩Smts}81W0CQa+umY`2xWʉuh֥/+wڳقmk\ ٻ5%ԽJfhC,s#:G\em-o~] d0~m-Jbt{xO'[aqZ.b%ou;oHuAҌCƘFY00k.VpBxh\mG4g\pBhQ5'%԰QɣXo3@hˋ%Dް23 ~"_kGF1PXx .`C )OA(lVuK'b̚ r^AڨsX<p}#|J}r)9ݧG8<}xB8øAo\] #Wicra1:ny?逫;p̱DݸVnP&I0?ހgԠM!Ln3} KYl>{Њ޾yFs5{po_\y_;^RF1O?GatZOIQZr#h2 ysֹA#G6g ݳ>=DžgYn?/mSALOeu(V@S7$V77/E_k9٘o닫LõUEQߟhkx9%23L!dF\8x5ɯi=`s2],AWoR@1+'UWr_IW-mM~+Ԅ!nuaG(ʛQڠ=-l0w?)&{R?,ipٳ)zܭrQ'[ D)қ'kG:3{Bz$gTv2޷[ ^ēۏ5f1& EZּUEAi2uX v%6מ[e櫑(”~ý[5p rĩ4 2Eyw%U.τ P?zG,g yD Ұ;L+b:б}0Ǩ_8-& N}򲘟iT|+ԟ f7F6@~ԘO w{(Yqʵ[g=v&ðt.TT~s&_ǐ~9r&-E [X>9R:7˺A%@{ M=߯ nx=TXS E6U$ px.lk[!Gҥ[$ /,8=7o=ATmX*[z/THm;]=.EGх^Fѻ<12[pLy"&TAk`0wVJ;[ny{ruY9þ($TF9Cog@EZ@VavB*vB 8䭰Lm|ͫv-2^Xlt[[t-cٶW\65rOyG?k*hK^)qDn# E_Gj2 MHbBrW dUEqrCད ,;_΢N0s،'8.#*5):W5lFsWpZv O%47tSaѥaeHZl=x,c. PJ-OyF 61K[Xm'Hx*2QziZ&%Z@ #¬tCު_ˑ[y}cdg)[O*CY.BqO*m_t{C']_WMXS,u9 p<MI^COssvGa*8 Q@U)͓_F[Iim P4B  K ܬIF(-W2T;%ԤW. t1[ ӄ'm2Sh7xo`rճ(Uk 714dd2<v"U[dh@!4s# Đmd־_. 1Wz͠TTRrPڐ0&ۢ+x-ߡX%ӵ c^o|4@dӑEgؙX4nXg0H&l4$;9f zۼս9& yhS߼ AXN gxZ yKg& tŏdgSə q05U5| "'A_V83!!F[4^u٬nKKC|q\$h֨vf3|od+[<4bAÏa9`hhOg纞Yfu0!?{V&I;|O%kGMmfZ k+ n-#@˖9[ jM Krinj ~mrC$sO7d(okcI[dƌ%{ I6H;  $.foguSx}f%M mMpBNgi$H(~+~bÝÿ;F,vD!g\*|\ڽuptz%bԑ)eeؗIY-y;ptE̦ F%wr)&P71cVkՑ8S58\$[nQTL;Atnxʶ~lNO{}i͘G ݿoӳ‘C:Rf!TPMqN[V 3I rR}_K@C:vNI&Vi"-;:#Hݦ;S"c%ӹ Cn%1S$xJZ5<#YAhIZ2(C ^mH(!z ]Nc%yJ4( Z>!YF>9"G!uBeV4^oQgxyސc`MbKt!IFAԫ+(!DMʖ/$)nPDy,7b0!>Q|Z[a{&PIW#Sx^C~ i}k=ms$~LQxu-@N@x3`kCi@FFҝ`B^ =7lVqHG+9qۭu?{B#! /}0xAB9\D`;:vׂ֩xK3_b!mj9[|YMUlԙhyD^>EeWw{G;iGVEnef-.8(U^jiJ,GM,Z(Nʢ~]aJ  7RsU+`XZux%HԖQaa˅j%xj+*s,q?goHqxkW^ȱw=i[lG(ˆtDP#%{5S︦Ts$}AvDnԠSvo:vqh"6(<%g~ 7<د7#3x5\[ vK: .Mzk7Vjyl.>qI'Th!8;cu>* F(ZsbIwȾԨD݈ke<tN7 " 8fs7n,Ʀk"+DC/)>7:ppv@C_jD<ڄg[hxKXnJfs|6n<3yf V0VK45sE2r.rpW3">MAFͷ4:Y{BO eDpر_~KFgs\̞9z8@ES^BD9cwvyeE}-eGպ U^ftfId0T 㢯}7SeΊUecH ~ FcP[+`b]%;+s˭r! d/0"Q6~3y|hbg-Qߓg#TҀdV&~1҂PPXRɫ@1>"E=^ԈHqi6ѠXCą(.薊X(v$. 5@XLwuH`of<VH5.="?wVSb _+[L+$ODoIC6XKvQdjz@<9T=rkԻGµ \ҏ8 '/TbV@?YV;BQ})_A(S`povh} 9=(C>S(kOHsbiVo,D+,k Tt<"X#ͩ1 }_孈TT{4:@b_H]IcllMKI*̩W2CKoK&՟b [9G|roTj rT9xDFY΃< t(v Ksu:n q@F| |=bQr9ɱV>>"Lf;W)W"-Nsi 1ɳSB~ksCB_ӻ[67( lڐ m};auVX,pN;y+{++_&4 BGEm+4,ڱ(r ۩ / ̖> ?c |v[\E'6Znyp' i0i[1T6P?9F>6Ȧ2|> m%eCE"XnQPuHisIZM.!^?~7GAl/UBuԼ-f?穎 :U*ͮ/4L TqJe<z"lXLA2*?'F6;+tЃ-N@QXgJ u7O$xeسv)o #$竧MYtȃ6V\m&ENwa00OymqVtۖ.+'M$Lу+3u1"Xw;M}c™^Ҹ_Ul7qVd()JgRy7?h24?I< .ќOG>>=yV sImTQ|6I\Pf梁9 M~^K2Yv!~2֣7eL dѨ'tЪ1>:JT a5'ú$HHQf6M=6ܡ?ziѐ_D`AXsq f>6}q>__!ZY-:)Z,ަ9((dym$!.+˗`*jkj௥݆O'j aVp3=f n[L/gI 0~t`OA7 gۂ:{SkvzM]sYg5~ΨR$9Ʊ\}:套 o2alĚ@ue~VP&Cmx"FgU1VK*&ۣZ$p\ome04gspNne}&ZH EI'@qm+AZo=VC#8?qǿ(#Gb!%1쿫O/=$ֽC18"Ⱥhjc=!22y&hd'new]TH~d X`ѡXeS A#fV _0XQ@E$˪1fe6w-ܼ> p6 wYr@dAZV ?C&#n^vB{7Fw_L`!D> ef{jԃ?1C\ng[-(W!feSBL[ToߑZWJgC9'x-n7&C|=.ɓqi,: +^C#_Dc^\aEx C|\bfzzNRUf5" 'gi }nWq#} YJ;;i&?eG_2`qӘ%o]9!s0}+Cq=x\ ]FH2j8r[ֺA·Mحl+Hg3BXq֞p,Q~3:/UX̻p9t~Ag~SBP7>z~*[IђFem0I.EƁ@t?Y}9Fx^)[Эf#a# } t!vx=*uQBǏ͟o>] /xe DQ@}V)a䠣݅bڭ4E.ehx JCqW9SF'!h5!wW^[ʪ?T nAPwTz^`An_.y Klm2g&~P~Q/E%q͕.GuRrcD 3ϧiA]nBd 'O bXпS< D:tyg1 ]s'GU/Hv<Ƈ{"R50yo@=3ɇz y4GQbg-oC^9#8ŗ٢W| g ;ZO)F1i1tWg+C}@u;C>gvuCzd6%eC\^M3o`[-~.?ȇoLx4haJmc_xq<`:!X*ģ lO9FioZ8ñmcy;Iz?&Piq i/M;O~n"5\gxY`?<`sPXl-NY J.n.{QC8x.h;K*$:?s08ԒUTo%R))'#rr{M0 ~:c>:?lsFF?L%TyC##)vG3$'d=i%+sz}!SI.kIc(D|C\u,$Q]j ?ed6*5n'Mub&'HU|xy]vrNH~g>>s\ܕ }7e6-m:'.}057).wA˩d N%I i`R7_y_c\W _|zS,DNq-&AawS)|Q# pDɦ*= Nvk#A}f0CRwqYBYhɒo<ZX$8&g~3{oJ,ކ(8.$mӎ{9m`ș%|urr5B0ٚG4,lI~81.oxGZFjjW2ȑ"2.u@mu-qVsUW`d~˛ "h˻G*8?(FD7Su8צ%VXLmnQ|ʓ恂{Tڭuv\r %ف& Nb^ ͩƓH5O=].n'Nmo 1BttvwW̒7{ bw͇>Y"3rlĘ$4'8F);9)n(ܸElRԤxvE`LEIVK!O4[gkugD$f$;^D1!n9wR`KAB(8AtqX}sY C3^Ĭf''paC25apx3Q "Ӯ]c[I7o)ͱR f9m_~;IٙKkReN]IAyq`oOve%{ [ȭ\3o.6٥?=t,v@YAw-R,CjgZVS(G^B=mjnPmc?@lVE",FU+.⺩G~ͬ4 L3%Ai|`h,&d0,l50jbJF!"!f)y+P,)L74%aH͑1zVeuۙҍ ^ns|x?n`cYn+˹KuwOq "T\NO 0 k {Zmfd Eu ŝ q9tiJLF x)wXɨ6}aW0%>x݉g+ i`wDACAOByd:JB>FwrH$Ѐ4QŠu%" 2cq4ka'5z ڨz*o,Gk_&L}L*jTɡִ^f>+퐼Xj 4ةd&ԧy!C_np Y4ϏrI#F1}TN:4K;N?F66A4ם#%gO=8Jd"b]+62٧Ҙ)u 𷿿U+¯,[ov/m۵זK!M36]n.攉u+*Csݓjãv溯VʞeUVK$ ܮQxs~;?AvgHnZ*P~ڿjf"h-\XuUDK ,$G-Ŕ3T*R׃\?TT`'^_,y+Ҿk^P18<3:LElک~믓b&ߋ=F1!lԟ@^RsOSJ8A̬h{&MuʸB vp٩7K~kКI 4A)Lצ Y5v"vbmz5Zhܻ}E{J7(x+6iRٱq fۥd@T&@M65;>M*wf?/ mA*vˣF.Pw3R=%5GG=TcRaQV>\}1#ed8" rDJ^|hpѴ+@'zJF rAg26~h*lǃIi ݊8dQbz[b/2̕T >T vz*2 c0Pou /d$o> d(rQ3}v 0G+3 9{ykv~3k" 8=Evv&INsN̿ȐN\mAp'J]=1уrյFpLKǙT=w|24F2qpf6eyRKzL  b g;~Vʿkl^ی8ΩkBӟZ- ?- :goT1m<#*˛f].XcB8o&44.kK tdF쨑lR/̚Zze,gt!(P: ٝk3m#੨?)NaW&3~@8!(a3V1u>rBhܫNZhv-W\X'W2RF/ wgFh}/Zh>/0:fwEvlKݦ2,h0?D)xta|qˈbШ`<:ب`y}5˾u}ڕ-M

      Kb.**[A[ћ5c;gŕ/,"Nz/WjFGU?=Jm{XhQD3rL=9frtYq&}0=ba?fV) zkU9ržHՎnl  Z.q6H?]ۊK63 B5:!~"^mb.FȉAzs }% w}kRv ]2ǡm慊Xb<%=(B-TnSKJuaןLܳ3AA}Ϳ:ۜ_ U[]Q?K&O6MDWyX{Vx;*JU4b۫ЃP/$~ueߚ.W1X팚N=0~45?14ngTDcUYotY, lin3Fw;,s)6{ge?8sVCųe둊k d|mmgJ(ID}^K-r'NNpn|k+:i ҳ)Q+GE3nt):"%@vMc8ΝJT9QAیZ1@G+B~6B1n{g`7JZʼ!w|b IRS<хxR i֓@6w{uofFT7a8(moccӼ}fB"*L0e9H=1˨}twᗌgM!@E )ZgIT##b&C-09֌ќ`Q$Mu1F9Qֱ%8>T-q5 ҴV +YX{2wAM銍-9In!,μ[s(-h+j_Ivu{\oFJ?Cv}tHnx\mzߨLIOc%.U+Xͺ(z ]je5*[쇆iGިe',e~"9yA@dA$t^3־HcfAQe*lC&٥Ӣ$|5uP:_A3Tlb:o^z_i{qe@W:p3[S.v{KHM#p$fz9Mt=_]|1M)mT]F2QFQzu:#swS%*.q@(&.^($+cPqo[胿-}WO{1 7u7ҵW$'RzS\.u0YbQ2NrdFGCza_˯o*Pd=H]Xksj`x79ibhq=Cx1=XG& W߇tɜ~whʠ8/~&1[*U8ţxxGn6.pϑw r[-n}W?#Z>QʿiۺfVdoö 6L2DmQb R: 9eh t=(]Qi6ء!f{%%%ی.5:zG8hx>'3HI84{a~^B3SM6:!o!#԰p?ĥ"Z7o ֺ.O W){v& ;>ԥ~( cd Kj(lp F9Y* &cZ]4 !`hTV*"<}Չ-SQl@s$I$ -ꀡQmgQ [fI־c~c pB9 |.ϏC% 2y&!݆v* ٢D}JhcCFvʤd*n4Ƿ_ *b-{ dt~ݜؑT9ۥ! [-7cp!B̀d7$!6Z؂ȹxR`&Cfx\4D΄K\Wۦ箩+g窃&zrgg8f aG\@s]}Kwd\59K/\XA;9=?/rr^^% cH T0#^te(R/YގIJ^]"7iqw`>F(n Ev*>Q-yia4EZyܴJR$:9nVOq B,=G#t̓( "''Riڼ%宮p;U3ɨãCJY;_>},+nJ׾Ռ[. 9G:tLdg Lw`:+(,!RbB-8J{DnǑ;py,ob#1EBY6FĎo9R 7)*că-~ ;{zz> `dVSaҳ&Ł㼪Rs2<\k31C5B2A½s|t@@;{YmCW]M%]WY]zh̍?Gf2&3')=q(ܛ. z|ɹ b,G;k yDJqoƚU {"& )=!@}9wPīhAha]PVt~*V8,O 6UKeclnX Ǚ(|u6p}s_@'ꃏal끉J)&}1ov,nbC9|8SH׌#%rĜ6PJ8/TЉ[G@B.asK#>[g.8%Cz|{w0f;Mzu`W@ I%%~ MN hmZ%(=Y`+ߴ½F&A٘dse A.l!j<1tN^C].\n3AihG:dw.U. gu:pU MWyc;MklPLEX<#JoL~F^]Dpu +U<'{*3,]UPɍl_#]uh4H2~c0B Ho>:*9[iU*:p_z?IyFl`o2rPW3S[*ڠvѕ%ٷ[eAuS)r{@qSzm(\ Gq'{l:Wv\^-O y$cLj5NO+ tZƸ~*CI,& >z%=}Oc+N{5["[R2a6S`T x~IYs#u(#E A$:J0’R8? =u6 CZ 8J;H'h䁦v#Ojݝ^c*K˹x Y(hL;yk&hF^=HLvHiź! hnW1lJ_W.lM-,rNdzF֫y(rX^MeK>kO6`"*jWZ7*|'Ԕ*:o|UOlѥt} *<"h2~^Pә`Wz/{(7tYMh//x%l(A\X\"!{8@.$R3IOhֱEArdwLyh$%$ chkgN$`C+ F;ZMxzmZ^nCR/]ocBe 2^{wT91#&$ѱ!R5sYbioYzw}\X>x7\*.n!bi RAڗ[4$Y 69ׅQ#<Ř}P*5sbLAfuUw?vHDc}n}m&͊XAAC*@W;~k(TwNAH Wݕ7 U lсVoglwK5@s`.e=#(г#@J IH,"MRO87ΰ!ANɅ<.T쪧7f'R#G4=tdj<{sY*8еVVuUϿ{$Ta6 IoKFoPe1nnoQ=wDT+uӦ>m˔."=ABhY+ _A8.j-[Gf sywad :BcPc٧œczRZi.~ڸt54ns %/`~:z\/E^U=@ ,(J7˾)ӆO2/,znރMR'H)6%} }"':E:K^][!SH_v;{gw '|d J'~%VVR,[ȰXPjBcIU kz|ZKV1gg`6ӑ BsGdž)VO~(Us#K/N;J_\1Eru :B* :{z9x{J윇_).qXs A2n;ŕW`!^} ltβvؾ13,6ӉTy9!1pz˘Ï|RhQ1Kx@(ù4cgwظaVMh:c:\؝j߲>7~3=ȇ ]ҧ4ε^D٬|ʏ-Puco6lEs|ۃU;M,xH#?7@pqht}?7QlFyiy`6Ф`EW)/ 5Ldf8a * 2)@P!j!G@+皐Y~XF]RH?(", @6EQ_%?'' z "Aˍ (2{JlX Mq(ue-$" b듓fUb#RD{D# 51=q47Al0^kiX-*\nz6*UCd,8~/iS@ +yi}( e#@~>5[e BM(Y~ z~ .48ccqz?J;07D!` NQlKsD~-К]I˪l`@9jj iV eRKY6,*l=ZYO R[}SRHk(}rR̀?[uasv$p1(M3er|Ubx?x*oٺ*sp6x͞ $ YG3%NtY_DB(.Q.8)|TP` ?@ }u86ȃhyuy/;KY*qM0(a~3lȊ~0q~X'qJݱ8+oٸϋUe{2R&~\WYa5*:!V.5[<` \*>XfDXgfr|֔M2>4NPFT+9m4OI1"k}ą<\5$V2|)OӴ'QVfd8It _-rJ=Ӝhgr&h*RPȡidx0 "ZiIUNo}x' ~1E=~ZJ]Lyw9L]50un-Ç>.uniIs>9L*{+dp$yy/L0u_?s׿ p " EĹwuDw頂QʺDL)3wXMmCJln:2G=XD"s$t4 UI, / |F>^W|VOE;P'Zpj;)b-O(zX\v<*L?JOMѾ8GZ*ZGKCL2N=֊5_!j=]G}?Wuk?ӱ}M#aŝ .-TLU; 7")#Xڑ ܩ+ .L0ô^it%[ܱ8^mt9" Bt]"6S9apwMzΖ&vHYGA9UY&o~ 6}"@Gi?؎BCىh2#N ? 'Sz P>M ӖWXg g>o_/d6@5=4o-y$g V3A2A9aZS 9U)7g٨97nnZOg<&0 K(;uJaʢZt׆y2gf$ 1V?09ltmD )=+@K]/U^W[m5L o!.}Übg(,هҟ[(aط_C_ Z!XBsOaˈڡd%[r6G#XUq~,v_III\T7(s~An)%e޹A[NJz|C ^#p{9wYr_15u-,)p#聢hS4~@Wt$c<_1zt'_nt%e;z@ ds|l덮xq%}rkt^7+B22Q.o5-)nbM?|/J̍ח2>O;t=X'܂~̏9 ;Zyytim:PFI7)(SO"vNhjBS[lvNDꃹ̘ Cm.6Ovm0bN}a IlvvztRŅ/Lm{ [7BYXx]RQ2I5ba0l쑘AƦ%GL=j|ԡ$tGkx:y_}Te"lY7!#ZF۲:uw9&¯:A"!ہL] ~F(,J<ݱC$;+.8کų@@̑7pS7!aCݠJ%Vl/%gr0؈w}R)t8G= HFa>D]^;zP> u5-?T܄&O_svȂ|2n 7p?|^zGIyڠ5D5 Z)1nep]]KVTNկn=.p!&gn4"Qdy7J*aleTLt3$Rze}Ȩ;cDk3l ތhaLCxWזvbUްq=+\%쿜3ƨP]F.TP<ҟOgY2<&9n|ul{| 6q2nlδ,sEKZPXUw鹀,'.uB'Ueil %_,n/ܚ ncudҬmIȷń:@Bg!t EX/8 qtn{&DԸ9{ ["aƐ[0M~C/`9'U8(*JE"(mzح'6A!@|p0HVh"i^}9VtBA~=?8GQ+m^|G DP-S(B Bs@ T(Uo8z̰m@ӴâS/Պ[}cq޺j'Q 5,g$Vwu_iq;3_dlx,rEN\'p `J=~Pf829)o ETsWZ &Y`B`Qr.=}]iQ/XBVɣ~WV,FaK}}8#䥮{ϒ9+CXJEa/(9ULɷ*mZ~YbkqʖĤHʟj N;$e$2.&D?TZ r҅c?HC3$oVHpT(04biPjj-J  ͂yI[[b;EC[#sB4OJ8jS/%ʔOwd`Dm/ϳ^1/{kd$yVA`n5XL>ctvMVchpbκyoZFxS1XXh}SΥ[ˍ*JRdv ŧfM {R2'KWDu+>%D;* /Nhpn;K*}Q |UeEp7z#fDTjJRCS)ۈ93uiz/Eϱ8 J_L7btM3>rh['E"AbrXwWõjt# GtvJŃYCXwxU|'Cc] sH}| Cp{Tu<;} !\PUg4g+N~(_TָKϜڹp l4yQJ<4!v^+ T_C/>U7qmq۫@8LR&ʉ)v.z@I Z`5s>kYFC:RF%06B_UA7Cw vyAO'iDR' 8'vLGR`Sf`?de>S9gDހLѤ#H煖/ ɒ41#QGQ@)dN{޶i N)07s(V '߮~Yx@T-|vo#-8~h2jR2xFP"z}V݋ܯsRtmg,{p|Ns]l]4h7t*}cD0"37N,ÂiUNw7.Bʝv {;^G@:KP&݇L mL2"ܿu;a\- EXΩ1jXo8- B&Jyp2:b: q*fX$#uZ{ACd c#$r#jUWrTρ &}ɗ=JmӢ8!206TqW=i#t{څzu02 X(RnH]BKp+S]H}9BO8d3^Kzo  2AK{(LPZc\>ŋ_%ųI1 әHD > 㒳zH6UcVo-%* =1B2֞xImݬV,IR)Ε2zޫD@F'qz{eMhyZք:y#o.N)qgy 4]gѲ.~GƏ9ݦĝlޤ4nG4u eITs[AAH~`A. S'̩Uz,v R2N'Bp۪ y`}H6>z1Mjk㷢_$ﲓܳ|1KLKph ڏ`=5eIF\zl\]&H?ix)C(ZfO9Xxp/r&?Quyod2F.Vo3ɣ,;ڷcjh^oi9C­ F eZsifhQ_r:EFL]7nmDNipQD)|N 9A`<Tj,0/O|PrhS.ҦHc,4ũ*L 0t?FvNG ?Dd;fVY}%J% 0y:[g)tUK#KܿP.>T]K4>$NUD ~E,68+4_˫D6x8U?`gl>j06hy4@[K?ޟSS3eՌnMehVc1cnİF 6I;Mz>lCs@#}Ryat&Gkq{?AOpehF^KNr/(~^r0=x"z*xxt`2 bRz[^=Oᕾqe%;oNI[ 9 sibGM6;W1?M~FU-?U7ô!j)Yhɴ?v(&XCW|gr羭Ӽ2 W'sE^LNe-q2VP~ = ȧi@1G.AZ8&LsI*e^kӃW_0*n}Zq:0^KRž\(< !+kve:/5C eP0Ii7{O] bo;6Z+R7[6v2VuGk(eČErD߁3߶4UA1X^mGGׄ@|Qk9Z^YpKS~s[A-,W0=lВ*6lw)YP̜Ge(ogem ^&!(î>^gsU!KG%<<xBjB8H$GmD3n'Anؐ_`^JEq}QM$lax`DȝG*=/5۰ wKi)F琻y9en$D%r|4O4X4)r7ڷL$BJ .Ws$v1Fp(QuZ*G{$bUU%i(3-N ] orKOThBnRr'קH@4[:TkQ ѝLevTZ\i(4ѠH,-[&0REpG*!ܭ?r?~قu6a^Q&AzHr0CuaqHNe<ăЫXtuym4q זx[.RW"~71X,f ƥi {$>;sʍ.[w m^& yƻrҀ0'I-iaҙJFiJl!/6Y" vfiiX ʿ0y~0F"f|.3z]={oY+E/n&c% &>cpKݨw>s]?GP)ZU.3t*I8,m?"Ɲ{/w'ICBҲ w 4bcp`jSs&}>oh? }pK xGKKVm,H$9NV[0uLEu3Xk\7Z;(7mY"'zeo]cP,0=Ԝx{JC9γGtd41߳ ԏQy.]QϹab$]49X'\ո%C-ڕe?`JeWec_WiX/tP6t͏{ֻ>304ҽӷʢm#7.:ڌnQ(Tc/#e|KK ^Fx۴l;OUiXL''D,.ү@WT*gj2s-%:L0naXaUOi^XKњ-Y^գ*'i`%<*&O&WgXsތ:~]ojwK,r4^i'+fY-(;6.jGBB޿g@6M瑞ܝղCWqɻY#S˳uW1ӕQ;1lp8dM Ny}EPjV <AqKWUq/=IGxށߩ{hEVZ/,=Og Z@b26Y6#E,P?a9GP~{_a'}NDݥˑ{} b/g#ԵqR+uߌ߾Yp.; D+LS ᄚrE0tz{B$ 5 ܸe>e䪷wF*}0{8ʴiaZh;FM Ω@W@S(PQ&43=^L؜1qckj@=߭jkxRil7R /iD?(K$B3O6REe`ܠ/%*"KF%hd unќ0Uqfe0hv?t$P=4NQCt6?~-Wnǁyp҆zT/WFyqIdXD`qf5pV{XZ>Z.AhU0~K!;_CYa1ڇPzOxzMկ5e iՒlEƳwf"V <ҐLe!v.+ݡeHӣ.w!!AxH5mPq^3]C6Z}gԽ¬CVӖ9Aʰ,@u!Ez@y:#hiN AuU[J%z!CD/2]56tv(Y {aPKǷPf8; E!Nݖn^6OPp3vHtv"EYV'k^zrjiZPS0:~*/ ,aR/m/'K1-߲3$ĿytI-*`vBm'Aq*=mh%ayBloq䉩dNOh{Q{;&.OdPiϜPQ'Eoi*E[nϕG^&1xHFjx܇a(l -fc?3RHkIۈx§n( 1۪$R] 5/K󧽒LՊ{6^L[s[oc4σD|K6^l1JllJ2 |]KU5gu+Qd#˞d4<pD ;G^Ǎp WW8HDrOaAj)^*"O8(di Wϖ huM1Xgz|, 1!Ѥ,>8ilG\C%̹etQQ=2[񠍸M5?f-E}7PWH+ΘUI>ޥbF+ 4;J+Y~Krf]E70Jes|!{z 3C= %jت; B0sUsJ9 w{Ʀ~h;4!ة:$hSxp°@6x$[U^F(j_e\$'r]BC6,BCf :@NA2@܅GN58W9{ZwCc+џ1lXELF\f=A~ ?@(ޏ|ЙzVhq ڥ[ྏFtH<`r!$hp@!Wm8Bkd1ˆ}nPj1?^D,`9/,^7K!g %"YY$ZG2.Hq r-&jS7 ɽh~ݿj BniBK8A4 պC]bRAp@ d9$b^8!`c|+pN3B hX/kl$ r‚,< !'̔+\l\v3*^Z 6mW$S#ScЬ'5^(([g02ц__A^+e*'L*HĿP⟃y%Hit=:}G_mǃvc0RN @[27G ƍcۄ}~,!G q4JuqUe6hS[rWs>$)ei4%j'W,P]$(,"8}V2[8 2jkCLB8klNŭm(W#<Rh_3"Ñ8qG# ?w4<Xb,^ƻV+$ R,K꺌:W dSJI%p%rXXR9qj;~i F^WFvB']5)G΂4=W'fҭI](嶬5xYlBo EƜѴXE~N?F~M%"AF?z{yP?@OmK ” BDz7N-8EXhvd ڝvdX)\妋-m1񡾍V'V.n3a9Hu\~U糚52);,@Ε<(OV9 g. #aĮU"|cSOBOR֑j9j݋kVL WJ_pPu/ڏR8c_W#+ItV'Lɤ:ȸ]u)CqW’T(/RQu^}d%$^G;őZ |bwo;i{IeRn$[lM+Ls(ly >U< :d,V./qBx$;#昕g&BT -N#gܟQ4UۧþS7bW:Bv M~lBP&OYygS< #=Η4:A!qorɩ fX§k_jIex?Ǒ;]RX/^V=/_ѵxޗ$Ƀ R͊ʽN pU k!zi,>=X){cQV`2l˂m9~${/o-Hfn?}={)NY,R nuab< ߗݮy!SvZy@|Ш>4-N@*~m M f4m &RX1qХ2F(-m(5f@!j!1W;]>evzlv=K4]B\??nG`u q7D4l {e6aؠR!t׵Se^bȈ_j\zq+7 W:U7L-!8s6v,?{XDl)ʭ9֎-xZl~-Wx+7z$lƆrԁ-AD}kIX3KkݚV]NN){n>5!m Zq.;,LyFݰBxszs1X]2;PUW[!fYJvD HcDTTjt,|XOA 8h5A.SrAqN2pE$m}x*c΋DKp4ȅktK,3PH*,S6؃nrvN1R|c-Ńt<#kE لSJ2} [# 4/ pGp4z ]jJ;J oΜրQ5ޟ߸l~8'CFz5Tq\IgqЫuf{H /` b={}o:geN5CkMzY:$tdxQ2tH /S/w(?3=#IX XUu@xl!N[Ky;tvqao恹<盩vjى""U7{ SASn=Ao'87$g wp4>QGue_JbM"IH_K+z{Eb) S;7G!#Q~D^?`VR݄kj.?,|X}[5{TIe9;s$$7aU%wZq~܃+ -j5O>Q`ЯmLܵ`YUƧ/Hs OV?r=ސk[y (ftD֬=ߪ-π%uY'۫#8Ōc#^9ݧ_d{'Fls֡n50x%@|>KS/#hjqs3wi4bӀ NZEH8|}aY%H渪j9n9$k)Mle!TqlP~- M`W=c5ΚL6 EGJrC11iS$]S$Hk5]kR۰3g+bttWLXhԲ"hjZ~nBiʹͭ6/H!0väΪ_Р4b|ODpS];hSv73ahՙy=cfF,e3L8ǩd6S] q'a5%C!PΞ1h90D o琧3pDy[rSoym3b }>w䓻)ֲn4 )ːR6_$M㍎Ў`k!khz SgO!`[?Vk'e#aQORKq@n:Ʒ4奛]I Bp.qdN/@ v̷ļcKٓkaXOteD $5o߁Y {R@w!9cD𿁴+C'Zݲ)&Atg~sk%+YCvFgT%Wo:#iAu$Qfx`? 7[B@v] qn@ >*:Ow!IXzT,p3 I%INp>~:UM?ey&lĈvJf, V-c)~)D]O\뛏C\y4b:C0?DcGݧ:'xJe')R8gZhVh)L/lLt;@_؃\j33Ulhԗ4EQ%B &aFKhURq/4V}Ub \ VК,u}X=$ NB}3a\X8]- C t2Sӧ MR\AуB ږ$Ȫ<Rǫkj `[YM~~keiČVuG%*\UMֺN󧭷0.r }%Lxz)ehlL?." MD+,GL!/EW.l٦g3~b ܚ&V6yf?sڰ Ubf+hQ R ͽ}4AK) z?Rj*+Sy c_g[lyjS$F6@`YI{+m=lvZyp[4\-G6 ?5M3FC e_ (y&l"ôIvrXԊ$!NP;/#ƕD+T-G" 2< OJ"J;jVdrKj/ƵT V*LVJi~h/(wtdCoYc8WL8nZQvN9] tWM;M/!5(ܘ}(R;s-զGYxSu0SݮΑI9\-~#;ZpV^X'pudV srXӅo}ca-Z1#\RDD\:_ b"LLfv9!9X&3?ACu6_=qGZDC>7ٱ{K'b?UJ)/\Zx1nٞaG>7, jOȘr~r/)cГn{\d8ۄt_"5*CO*ԔjN&ڰeѽwGִ pY.V`a2L<ս53lRd .1S:B;q4ֈJ;L}ͬרuf.v1 )8v-Խ}h)v8D|Sq2j^BRSTI`FY+'!yO.kCPjdH?U{}"$_5G-tv%69%(j Vp-g3NƯ_~:㼣|:a9W)XmqZ^3̎dwڰEp*3/ L5ly,ZU]ƗŒVT \VNAotӋ7^ٕOUۯD+L̂RfV(Xm0S[K3Ǭb-`D13re(fӮ)=s#iojrKif5z Isu_2j&* *&[=óK=8CPF0σ(G*}ܦnV ]o/89 4 4hUTSm4Kjt^x߸;Rx)5]GX b>z>S o)DXPpax/\Ý+<kF$nF6!a! "%i5PvOE99eBU`㔴=XCU7^ۂ`WL֬Œ9AHvw5,|yB ԜZw-zPCwvJJkgG>ʸBqل9ǩΎh0wLZ@9ƁЁ2X^uo|BۀE?;d_fN{?eI2U/J#]Z\Ņ>*羠lL;[P{cg1s{Jeƹ9#Hޮ!rܚ}ԨRC6qQ}sI^0oPwA-hBU? *x3k 7Z7?.[E$h̍c;\cpLѪ,^epR`ZN(_a$މ};'@ܲ |ǂ}d:5ׅS^.Qc A>#dn^7!/bŁDI~!:ph譱?MQGN:bGs~psR I07zyUi 9S aJ%8 ."d"U=!\KVa0KO(<<*.L윚`ȧSjAf>+pE$ }Ϯ7rzzvT#D#hAzbDr 0s O*^Lbcv [Oo\렃&Y}Nɲ]{/wK@̆Oi7CPn"i r?/x_'~C%rXe?z7WT.1 Rj}՞FuZP`lpڥ=|c?\ JKf}l. x\=b%'8MD!tf SDTjԉ\cض&]-(~R|:qopGZN\O6ٓe[aqwO$ R0Z !-l[ΣMzb%˃LnoRb{{GC'Q=)ChpA q`zuL<oV e΂5tD AÐ!E6sV-4K?=2xAGS2;?o h >+L~~A1(H b(V}ѤWz"# Ĩ$Ep!q ءiHNa+rV^4:]68“b֍YjIP2 DEe'PVX%Ǝ!WdZc~ˊ3_v:J@!Țe{g+?hRb7h9[RY"BkC,vk_D 3r[JkHi8װIO21S,\c%zgz.=>ٮR5y[vQ7lT_0%@lR1QSOTMz>Š./w GaYa<:\UNEv7LV+х"l~7Urdgx!\vRRBHE幌1Y C)[{!gv0D }Me3"M>rN([< 8F\s) J~b]JW)ûJi|N[s&M(rXR[,vnD^1#YOvWSw)_?"01nZ>Po ED48k`v,H{'"s_5'z)pp3aOT3\7|Ekܥ$z(`4aO&ii{*uWlӑ4YEu3Jd `3* OIH`i1C5hm z5ϻٙ|4v#8s9kUP\r<$7wQr(y3 Iq7gp=iO^kBvSN/;ݧ)OP0Yכr^ax ,-31V^Zr,Ρ mH%a~|\8 ;V1c2=22t#XέʊYa;샮bG>xI]!t4Pګ6Ebr+,UmvSбmzKZ:|]{t,[IGy\ %Tr Z[QF&B,?5ZЇ`cgQXC\{/8l84o4c(])bFvk2j &wDWV+V*zWIEu DRS75[iartr TA]+n-Ig _l:Yetq3$1m<oVo*ߕ͟~tZ;rk#\pI&@鿛Gu6- Uл+:PYfuH6#7%X-h͐}PCn|B<$ ƂC *}#o,J%E~/H0yqC*iRgnJ^@Iv!Ia?V@Q-:Z| (nN}}0rBMm`.;ӹ%@tFb<྽a#ˑXO `͹0 "#5o\W4f7K.,hVUoЯoؓ ~Z3hZdF88roU=ᥑ$˺Q?m {CYz]ݵ~t^h*8&"5i5 $Jox`yV6#6<_Pc~mt6 ^u:nv&N9 w!W"1ko8k#y2>ϻG5?fNFg'SlNpTP-:m9Bμ&"9ؿ`EKD\G>Sxhn-"?gczvWzOђ/L&xJGu a|0_¯3XϛW1+* .HEk>8:U-$݊fP nsCw`{>|db,5CXojp鯐>)א)5S_Sb|fmv3+ޛ0ۥR&^c'ͭ kI'J9Z;ƈ7MNޖ9J9p +DJ;%O^B {9~:x7TY\ ;2{I$e;-NyueiaKY9a*9ZH{ ΑrL*b7$1IEh rp|T=ttWVW[#$z6OXbl~? }VSykqeA.Grx27iBYWs3'MRo~p9g襉BdYu}ﭒttUeUU!$xn3zm JzsFqe_1=9e6eRΡ+СAr0UonoW0_yz_t8iyyx94YwG=P\C FU=zX̻Nz A]Km蕔MrCJq&%w`f_ R}8ZpZ0G͎Ltp{4wc=^-[aZy Dp^ NY[??M麸-Nx(aO/毶!О@y=?P&G5ڈ{^&Bi)AʃAm_0&9iIηBd>x=DQf*VZYf3|=3z|~jp3D9{^zO~Nq-zIpJ'v:",UT FX ZJr:( GdGGf|Z=բz(pr}g1l;SlBE?z{#|2`h@ %[y-jv~RBIEYMЧxL!M^j2@ʼ@GMg˙ 5ѤeBIKn%#̗ +LhI_na\z[,;&ȯ\]9k+74 J܁Jq{҉xIn GZ֧;Z;;O!|]">ݣ_ciOX솺خHɅGx$Ȯ8Yk;c!Q}qh_#RI[:$f9Oz;40*sO}s9%Pnv]vIJ uUT.ϋk2?Y:&wMvb}''N%#DOn/%| 9k4A% MYlM.$KZQ;jUl$ˎ3KN!J00 M%  lbhLXaiF (GAթFL ݵ9Ìu\Q!BY["[ I&|g.ڡߔfqk`eft~?x/\ ;˔zA5 |YDe惗vjn?c*?R6.#g~,Cx  3ד{Bs5K BJwV{[,ȄL"Skq٤Uk⋛G@\^{\mQ {\*ٗny쮕cDp%JTnK M.maN̤ |ͻ*`qw0{ @բe[S" M%Yf ݠ]~1?t˘ڧ"gv$H:++9q$ꄷP KO Ki_Ky3lC#:`(itT^'pEU'Ռh貛)ʣnɾAK0D赳ݟX8Ǔמ6d(nqnL0~tvp#^q3/G!,BYGPRPqv.'wԜzt|1?FAĹ!X?o֔L<0"զ IK)H)(ig7C`/F쀊( %s/mҽ6fVbA!- иb?bAcA>*rXØ}#ȮqA9B]R8ڴMcQۄxn}B  ("վWij8s PAЙ"b{V)rٕ86ZExC8,abu)s3fXZVCX|­Ʉ}pzȤ9C8h{h=#F*$OEM-3h˽0xf|hoyudi^f=*AnjnLn15V5},L/S@uϐ{R5,E)Խ":ETh" )O# Huy=KߤŸ=$ WMPAmCs7"9 >A=ZtTz+gB8SzB~287~C'ӽ45qRlFH SaWG]R_ |cQbcVs"n (O hVЋSgkRB"9#2eieݵQ࡬3Z_?dsFVmɪ?M.:t3Q΀t/eYftA|; (]W@X&h4@k~el"< USec,F`QaA8ˡm`qTEQn!jf7%ً q Z&癸 YFwz2ޣ@T4 \mݠHs\ ^<n*˾ +˼PmQNX#J[Qmj->hsLMCm { mM?&+f҅ 3b7|Ny@y|x__d7lsT5̥}L+Q|>EOڕ“SjMav5 CQ8Cp~A:)~51ixґ+b()P|7 aGvK$4ZJ?WBaiyA)Ʋ o%2~oBJ᪴i#L=SUɈA=l#-/mhԞ}x-{Gz ZvbsF66KJ5hԲCw]v!-y*DPo>E/y&FcޏlƧ(Lc ֑i>8)! ơ -S.S\zS5Xy8F 5srHX=Li5tH J34:Ti?I*ҽ{4P[Z;лh,/dtOy#Vش#qpF-ק,t)ۻVp]q)cFiO6kXūZo:^]eM4},D|1/^帬Ejl9=8ĬZt-Rwb9b̋',b^`ڐJe2? lb 4Mb_p s8S'ycQH{j;(pñ~"R8G"1B1&O,/vǒ'hs?ahz;Cep> \O@ܥxNZR`şBfƦB 4,& ł5Z.Mm}(IјS:{n=|0~8D\bnΘ(%cr -Ѷ]u旯/v\촨:qD A[k:B"Z&lKT:9i)ELo>b,2auSەr/-m{ tζٮ"PdgQ[<&K J"b5jp4a LsFy$ GzǣufDGAXF(/"%U{T_e2f[>J'ί+#&biq,)>SH@;T'?tNI,V蚸X{V/cBTdB1ᾍmyF֫kWQr)-KBFYk+;E sʫHV){+;WT.Tf[LCwE{XQ8\{ Dd*N1{\'"X0lI QgR,80{Ɇy6_uҎV7vVVst/9O.٬(:9-\g=Kf26WWC6^Ř&#^*,KYK?̰/lMA>^ש׹l:>=DEujٟA2g&l8- |m9avS-NJ}[$roӐ=/wN[0JGA>=#qy[Um60f^u1a>o^n/gF﹮uKoDQr[՛э8n(FNO#a$bx7x@t?Njdu^2+ȼQޛ{)z7SYI ߆26͌N ߏϓK]gK|'tt%EAg2bb0k tHo$1.ΰA.9iqmItA8FJPc||AWN$QAHѺjOv1Us{{8MY&YGy }.,OuJ1l-fȞ}݋SBՆU}"#CF(F%p/~Qws_ 7vH:n7G?sqtv\t'ls6φټ)˓f+m=6W K s5gC]p:+|3ְ?yD@eb(B%'z.x^H DyCu q`۸r`Rumֲ7@ yefAff{sV}Ez֮emQ']zbߋKẘ$;yX[웵٧īHR3l~f/ym5fQB꧓}_hyRjaFϖ! auL2``LA:Ɔg؏Of~sA'zq=PV[0pUW%q_m' 0}|W5CM;kVAs*ԺǿgaK~zW-0r*I 𖞗3[;ع۪~en!;wWdXfԀ9]!IV]7Vsޓq(]8O(lo4b6Zysט,dpKٻحE7HIu.rT$v2Ay(poחwO(ءyP#ym"v0҂Lp߯--&W4 &:ya6PRuñtrM%F6GG`ߵa5P]쳅L-)`[bzW ;[qD*|X+4DNs.rEѿ}~6y9" Іsib$T'Vh6`T}$sFh>UˑYب>+門eI#ٓn㸃b! A\a@j\($X1yfuWЇG}MDud #m<]&=Zvu,-ٯ2GV} lV(6YN~5|r#Z4([8jP/ =cWODw`BX{[G/J "C򗽣HT"HV;0DѸ524WDZ %|ެ+$ wZ}QʩDZ+4~W:LYn>ŧDpX\@-q. 8EVnģߏ:\2#r׃:7pS8=9. 0bV?`(cHm޸6^TW 5u"r!VWyB~hmQʺQz7]rѹ|Kd6 7Fj%5i~i7z(ɏ1%yopQa˹[(Gyw;DR]2AntizH'rZ_ٓe׳g\{̧sE"=kcmϊUpLX_0O F"rFSXF|KO#S̶$gUk&pҐxуR[ѽL w TUdLjJY-ΩR,M!ug$L?8Ι߬G`%\<+iŲdpo~El y_X>r/N<Z'ٖ_u!]10x/!8ݮ2-Rz+1DWbo3Z)r;#]L\$$p,bv$Z1j e3xᮧV3:[:V(F__-߻HgscdHC -@D =^EY@FEii~$Y %Y#I8INa1IE-Fė F/"~'IqVe*._2^{QPa`\4; jLX$W9$hg悋LG}f|ﹺs6/7M/; @dR깴)%|@&vEڎ`5:bz<O C:Endrmix{x_WZi恁q@1j| zB~oĎVKZd;.k20-:PT!ſ2}_{R?AI)InHL ^=Ԉ<سb0cg+ߣB{kE$8N…p8ݝ:&lRߑRݧc շ\> cZ5a~";BjdI9^zܾPvΉl(j-Zwn:pB>qE#_خ./$aQB`kUX DiF0$KqץdP n[M$ΚAͣ۶N?6J]x `đFFF **L cN?'tӺ+VapbA?2_YEeP=.w61*_,"!Qa$).qtJaX%Z_bp}#Vo/6sP=.T(qtJ8j#v*9Wj|PAd#p7--+j{'V=_y4!` ܆cF6C57PC _߀(@C\I^hzԢc`|~0# |EnQtHD5۸FtAJŏNIF>n:B 1aVzbNW+<[ '}.Ʀ1Y Nba&hBAR;yw6 [mZ_A\'%}.WQHsS!K0q㟑|i68pD}DԽVF%3>^CtrSRJ\' 1gzF"XSΔ(V:ڬt:7]vl9&++3ht?; <ch%(1 ґy{뭾J46#2pxKF~ѽipRz5"DlJI*)zQJ͗Q:IYKe0ծ>L[tW~Ww %hpQ ֈ:>d͋ I& ۇk%=;hʬsu?Ӻ`0*ndqLϸ8\HZJwp jzۢPƊ$C̞gMP?.'M3S^h6茘el|.:F\z*Jv n$amp拀z48ԩ[n~!ڜPW!txjg+c2mIܣI[uA@*Pno]̛e0K̀8֣-J4uR2y2E\ > R0h̲-ZU!\{oZt:01t!;1TCXcB 1Eȳܣ3} o0бKL|sanf$4zʝS܉xR\t;>,hwɸXJ :b!$:S;m/%V>V1mX Skjޞ@H-gƕM1x6J  L6j*@!9x'+Q$Oy2(TƔ*/wyVUڃD#`w*y›ȩF忁E`*9:u38`\%p9w-x*ɻHP]0܊5}T L2%6r$bY0E@> nl)2m#fhDlr(8:FYL2v("ΰI7a%T3;s ^ hlލ|=d{vٓ;Zm2ѫ;vZ tcaGh6?#zJ`a'9-|drgk`alrom,(~ ]+J 9"—tԦMx0_[JUeN΢0kh_8@{d>͸. 6,p&\XJ̞ʩm _ʈ wqFl9+ NhBhU_oUz/hWB:> !tK䪴:vjuXTOȿw;jf{ `/Drе[Gl+Uϒ+Ex[XL:I- E\+.+Ʋk'̓X,݋5G0U.'UPldj:ǵkC>j K2L*_,_٢7uVWp|(-\u{ĦHyCblf+ Pr6JˬD S3hLS^$2ŋsB<[MmT~z צÿO-CFe4^A\EDi ~YNbNweooİ1' udJ%|)ijeWkǴx-2qY8( Pm x?A趞 hIrzOjC;:B+hԠcDPƺ^{3M!%E~8T!<Q4 j&:a2Jت޺{`=gf+w|ʵ'.s ,Y4 |bf|13I`! ٢/9.4\8g_ы67PU@š_Ц+@mYtegnZ6?g/)eAAOiK +yTYc~cz t̘>><?ޘc~3T@*8T q=k uՕ . |7wWqzj. =Š? w\h]foo4^QF|aOi3>D&gϏ=PjFXi^,<߆l%9(}u;ӚA!T1;PSwU~Q~b4}kϬ =;P+m~wLگ/./s,"]/U`WoTOYU9dZ -ev{+I,c#QеN~psrV`%D'Q2Cs] qz pZ5-qz !Mfș Eqo6C(/5.ך~vaAoڔR@Զy^OfK dDf߇‹kڜ롿[,q~P^I:ՕEnJ(*;k87N]u6FuYe̼;u w0g=gr$[NMqS-`P}~9ߕ";)ү\;UaH) bUwMO{ Z_Wԥ'#֕S en^gW/X9/|6Znw uCatWBj)Of*K:&*ew:X2ssk!0IC[`?oǘ2Fz,WGêPtA!);On[ϱmqfҕП/AˮfV (|SᆩF#](-]=3K[.A0h*(J,/hvęS}K=G-qᾱ3 ;hGɈ(Cn A@%Ųl c#|H86$ R@"q0W q@/F>SL^Q$)fɦo"'zt@G(= a bQ>e)C6+7~tPz,o`D8O~aPt~5ۻ~0NE'8~m@C$wNof'Ĝx1Υ߲٘FZaEV jN~::E =?-9Jy!~h8A# PtD8gT`ׂi=;5sH앩E"@nFvS+b 4B߯_ RD#>gWlFy+sҋ#{cf/J)*MxT7'S[:qK")—O:}>ݤ 9*~^h*KWsd8bĄq懲2DܰG_Ł3J5d&i_ Oz 29Ӹ O O{%"Ӫp1ͤEjM~I?.B $+DnY`JZpz)pK yrǁ!INCxsnkhOUL!oL;>gi< @ˏ wutNG~D-I{- Pf(y9 g,MiUx3cw&,aJ6Ee-y\ED;_+fRDZ NTjt>:jSfb}?E$Vb[,ys1dxnsg\!u!8d'w@Vwm.@/D8`Ĭ Ip(9[Ff5UDIo9})LO5@fcJ+b я+ͬ-nӚ - -|EOfuN|M=Gܼ]>B)+3(b@<Rr7 ƫ5]dۭA.oJ^"(!ҫz ^<~$sƤE%n/ňmVW}>5P`ڒFN,5 C%W|cx8FRt7 Y tN'۰rjf5}T]!x>Gm [ՙVi:kdPYIu֍RTe[?8ּk鶖x_G ²A,waŲݲ; "PljTudy"њJޗfg #@XAo_Kh -3hL$5Vxi?ć3&N9xpL7MlaF kr7uV=Z ?2/ ~+rwEy5NYWV<4"aH"MHԯcF7 k|v!k}2vvU'/GXaFuېrclX: ;<0rj{xSmѣ|aDH"DlvIhha+T Pv6oNG4@xY곈5/hj8ݷ97G._Գ[2CO~js*t⎉tJ+x%8_hL-TJwcPc*Mp|FqgX)h;^{0,#); =6CP cg Or6mk~3Ȏ:Z{ѥf{+Xcsk]lhS 7ؙ F#ި`G #YQ16I|څϒ /{Ph'et}$fZh!N%iK.s 2 0s,[)+۽ cbf )+ U ͌\&$ I%Lkyoך{5hfVjN{%*y nˆ*,6RvZg"q^LSV )X/'=t`Ϻg6\Cw^d_ݬ#y\*1#EhG0|#_E5'[0|*۽6&'^zQC%cܷ* rV@DG }zj3YG0gZiAґW7 l?vVJN03^H\;z&LtFW\c ybsZ5lH*7y/tR!yDkJtظհio䍍x'3 !LBκÂxc#κدrx "\ RaɄԉ\/ɺ0Q_d<*h Mc1nneufs@J_DEnsh0+xnDLhzPaA'\U'#iE lō$l}!έ:QofɽG[Y.(b[A({c7a 83+*\PlmpJ>E5Jܓ[C 4'B”m λsNZ fe ]ab~gпOa)ZF@ZxuDVikhU;J}FL.Y*WꑴA; ӓQPWuBQ3)Wg,'#uƑ-)Ǧ֢q\^,REVHBm(Yw6ftCbuXh{z+ϖ;H0ƻ9p bȑ,F^O؜k-?K.Qn;7JbE;OyqոXd]ngx]u<88obWaSJ#ࢰ-͇F2_ԋ1FP*')§>ƍ +G܌џ{y%]h Tnbtv1AJ\_6E6TDQkkJ&}en$0͏Ϧ%[ڡYϙ4ndn}kͩT\k rd~10 NUzEF*p%L 5m-Iv;s!"ublaOJ' X+3Ix5W(’fo͔+pHxz0;QE81媂v^ȖXP *./?aeUJX1چqf,~l`u, t?D+emlF! bq"v:+;W#dKRif_23xhk޶|-Hqm!#6jdժJ>p* ӣ مt4p>7ĪS@xm:WZS:E;T ,R W"bL6J_IO#1G/V L@# ^? CB~:2QH,_b nǂ57/k@a#k@E׷Se5džN>#1MH#5X%ra^'Ʊ*'3:U bQYR&R~28 eu`g SA7zqvfz]ڝQڣX*b/T @& @A> 3.Ddso4 8)69225r D1uFڄo Ny;II;|9sB?F/)T8D}(S}:ru3[M\"uuHR\U̬8 qϛN<Ӗ(`Le -LF7 ^af+'T+7 4 Ŕe=]!}[lhX",P<8PO^/5ΟaeN}\y7-EWb+89{ZlBջAu!KIcQ=DȆO& Z,}( 1@:oZ(,n>c$ ˌ ё`QHYTE%u8-"k0}q=RcA8Kp66WR Ȏgh9  Z55LO!Y&9BO24gϻT?&%1o/aV) hclz-U|}|U*ɋNW5Uϋ_7+kwdNIj+J41X_,+m`uuQXLa2Ki#w8qo~F7uuY8&A1ܶ_lVV [bC4Zil=8ˆ(E{ @2Jw&BXqi״rݧ+MK>Y%!:[  J#OfI1vqF)g]'˜d`7?FJ ,a"L&$ "/<:DD _̙V5j{2F 1.HDyTVʫ)82CҒ)}j(QmJ&e8[rRhB^RHqQ/єu` rŴA.|@7a ZIvu|hW+SAU*L,QXjje)`i 2hQ=%aqdl8~SDFzaR 䝠ɗVL}xN-Yw Sju!TCOmU2@ gmW2ha7BcG-ꅉ8cARMJxTo)Ke]j2JnM-Uk뷉+38+8 zwU̅wrRk1ۆF^O"<=yj{+U5?Gq|v SZJZdP2ݭG4zs?lH)۶جR$;2M; &mO: tĩqK6+`5+y-O[;Ąݨ;rمD^:'M0+'/XF/!Xv'bYs4³f3 M;j62<*XZFc[#@( wŒur$so_n !9 }`%N؟Z@֮}_1D#3*~y10uD *1>'6I/P }\? kȼ5وlJ\)Zrt9BGu *x;7vV0Kv4O<r0?+Aï9HqO^ʃĆ"yj}3-WyU>5i>·X{ƯL Ṝi{q?Er8- 3l}q~%; t)GV)BwbkѥNxr.WQCDuU Bo3l8]F&sJ7d]'ءCx%~16ưXD#~Y =sj}xrSBƓo.`#nb?ޟ&U:#}~sa/ǘUiME ɐEjt"T}RQ L0'bx783-H -Y3ʐołR_ Y%QmX 1Z{br雳;ç :ib"aLw1ߘnXUz&Ėh*)G. B8mt)Q~W0mL77)'HbE~4cdɍC 1RZX3W0_es3nb+@1[tGܜ 3 {@V jC*\1@e.˪ Zx$biD4C_>Z-µq*ei4\2U k*\?#m toc-M2G9Ɂ63%y*dfhp}UŜTsNF ] t2h4*(!E4lx :%xS&1ʎ 3koh7WSxݖאT8H(V\}|h@O;ڌ ^crAz4澈ړX3u_MB#:+SWUEpÁv$*rW;$@ȾFkf vТ-9]yN xZ >P,hX.ŽG W13(* ?$ { ;\蟋-ೳZ'O_B>J\X2Uˠ\n~*(yL.b!%IQ#!!0ucq˄_Ss>HGʴ荭W*ܲ`鹙}ҝÚ]fhuV2A#zw?]_$0G )KL9x@?G>\&ϭbX6P5] >D foL. ]9ׯW={lGa[]*оD[9CL{߀K4XmW-o);Y-e:KOb45yדJqZڋT8]D pXǷ%ٔ6v .r~qjIj12wa~Z 4m.51v0 [#r^hHtJb_>kZgdҫ=1s:Dq]A_92ʥP5LQ&?..rnP-Iǒpbw5dB: De1c^p~5=Dc:^U.i7zE"jdBԤ`[ q@pb0+ZLJvӝi!R( щ>|V} 46;ZWz \!#B!(yw64TNf{,Ll~gL,Rм{6`qdAJ#IRѨBo9X=? 7e]5,eD-E;QiS|PFQ)?20nQ'dUPFq>n5 YbILqܜ2ݾ mJEךOH.1\i~"</F/÷ik.R-h3uDode~URvX[nV̺eJ luRZ?ƈ_=7`\fbcWn.2GD`4o ID;?P{,|Q9h`MtDpX `@OT<{}9,%؏a6m=aTJ|m*+:̨@b;uZA(5Uuo kk ~/)4TB~-9?"~.RNS`Z[墌oexUKj-*1*YAjxu:?'v';ݕkڍ?f~B>7]iRm"R& 3m;PYl%49']!UH,/UȪk9n E6zOi G|O 8 &цRMKx^]"\Dž/{ Tli7;Brw|KC ׁlͱDUb{*)N&)ꛣ~~|U;u&X6*ql=M}uM|}bq1Ŗ:#^!3F-bQ)P`1S7Qz%jgZ/I۫;Ct%'QaG]MIiYZ;VpE(.M=>}.3gj{1i 2M1lt ԩ!.@Y:EӃO?9{^ø`NJil (i )pqrwz=")9{%cWkA~s!#!꜋nu`n'3ihj MכNv1=.EvhS-&xqj2+~JpDŽVqfV0h;(5(*)Ѧ?#3qGݥs|Rϝ ۢ%= -V bhyyx*_QoB>W#Sjm{X2{d͇.HvS3U?r^8ҔŽѐ!yzAlqepdݵ / :)Cc*,A^MUh$DOAbXTDl;YPxs'eeVF9Ȧ$wȆXoKhcV%=cxt,15Š[]!'dXC/-ЃGҼRȅT$8f1t.85W]@i`&$s޵z? T"^ ^'%$!?Dȩ_!,to`O|!b)(ץ-XՐrG_V\[lk1 1CњYzu3C.ۃ$mWae)Xבh xKo<5^+s PKØd;3/>v;ݽ >>"֚9I8Pdn;z^Bzb9*ղ+hL{]<B5IUhD?!gf0{#Uh K1/ǩi`+FM_} : Ԯb&",, CzmXv3fyWH?'Y#Tf50Xo[ZEXjqoeo򭷬z T{Z, BgIP8#wD#^x"lYJgt`"&2X˳TRRA^7Sч {[p84R ԥ]y- `Ҙ#P/r(H0ՕDFkFw#H7=KQϤj!3Đ.1p]!FHININ<1%#RI*s.șe'@|JNdmnLoMf Ūwo}Ӳ{1.lB80rho"s5\>kc'B{T09(SGwjdM#R,|CV]+88^){~Ne4|yHHl5pLqW,i?ݼ'HNs6իяF4\&F܂FcDzp@)~t76s#g5퀲Ql-yC۵Hg\pj cov%_ܑ=V.5Qsι'< k_4N 6wӥ`v ~FdlAkZűzo;\tDҀ;D3'|•KJ\w=}C|ޤ<]}2[O+2$״׉PHOihKDܬk8VZi"ώբ22E&J*6̎{Ա(9P4+Ygʀ8Z ;i[_@#ѥ 5b.1)!.<‚ڲz;Si f3R;㐧 ̥ +eo!Ar*Ԯ&#SE"lkx1vvitQ*R(u#D2$.U.A2oɿL&ʞ,Њ9.< 'qA BCl6'Efwg{0X건F0] ߞ+ڋW{n4l-#FJX#0*bSW3Qnff?,}@z5HPt|dhʧ-,^ЉΝ{,Q00EC #PpдB~]ڽ QQ-<ޜ~J bY[ C)Wu&5ǖKǪ!^PVҢŒ&`E1r2 qӬ!ߝ{乭^[ulНe^R:w6S{nhp a)뢹rrQ*dl{OW$7O4mKTYv<EEQPYAG<4(w%qVuf¼{vwR`6켈)"̊T3;ZLzfV犻bNcA|Dm5.Mc럽a#rX 0ߪԑ0!rl..x6*(X[16C,T [l[kg %`reg RYU InMW15G<)R8=.Ma(H6%L ֤sD`>Ao2߶z[Yl;(Q}9`'K-/Jex)jbAnO|pY.wvY4/ɀ|k'X^3؏Cp!rT2- /4, c0]JhW#IwmNԘ {zwʘ[}dHjvwsdXX]!1) rOq2I ͩn>UpX,i)H(qo-$zm9kɱu@iXȢu f0 RٙG9c8@XF]н# CnhqybQB%*L1JݳJS*B2H]:"O9b9A&WY[%P5wd5xn}̍z,F"2&s 8EfCm^*l 7\LE(b2ss'? `p;3 Zo hzUQ5il##zb\TkjC,Gfg+`.pGbKsnl6A";O(o*)[QDp筢xn"fϕ_}lE]a{P˴QfLb-4䁗)1H ح|^#@!.Hh =kR.W F2-f^RdI&ʤBAI-:m_,wFJc~q^e|<د6F,TX߭RG7 o:YtCLi'u 7ْ>)eh雫d8DቡF:Dj6VSJ&WL[,S)%]H VvwpI=㒥_<?-.2qɘs*R m~۟Fa71x\: 9[^rhv /:$Jc1tY^WvgѣՄ mdSCM/>y!^{&29R IIEHÎYL3:<+}sr8Fi|'mI3l+S$cجo,..|-W,#nV,:} r[0:L? ͌?-F%`۷-1sL00ZXe?h},[Bk;h[5[~kK̜ŷ'9>a"*kh矆:fjrL~_Z]"]$(4^CY"i-KV⺌2xf6ơBƁ"#Zwmu @='7AĠjvwXq_XUe`bG:!pYn-jwko 'f$:J4asM u%yU&Nn1faq>k,9s%xÉꮰ*5qh>T~'9ċd?(oleQDfs;8}8#XMn v9d8ewy H:ޑlc`L^tNE#62o: "s#bY4  -u\jvڅ>`! kKqυfzqW](r E#n𳆶_-ja4*뇃g=uFoZhh軘>(R}jT!_|<}l><^\A$*@JRK%Q<&ę5.vyiڸuJv@>5xnލ?a'o7ȳd\QP$I?yC?W{H 〩mflk?3>< 7Xx;y59DMvձc`oB_*\+b"|)105I M濣uқ4Yf>%צҺyU_z~1N9Ҫ`;En]3ߥ]AM=i,fΦbn:qxη24^46xeaxQe{F!-P|oݧ 0+Uk<+j%%O*YKHrlY ܮ]`*ȏa bG_W܍?#DW,U6߮NUò@f_|*6Q,4Ѷ @$dA,h/l;ʨZO_w/s^1BwKxWɫG"K}&Yi6Ej0(}u=sK4\\*[b\<TFZhSݞW//w^:]7YWBxmf\]dMiƼ:Z;Wz1<XqQ|b`2D*Zr#~XZkp!)PsnܡG"i*vj/3||Le?M\=O}IqݥUg6`lhSBvPtIB0 ?nPQ=PM,(ƍ+({Vl |m`yB 3`4|IxvـZ-5o_.]+z~(zg 6eZi w(:#3ˊl v\´//L|9ʹZ;ͻw;ԨT3_` uD#"OCmś9?GORa#Wm@2\%rI+綬z  EZcST +UAGL@ɢ0 Q2>ޫm49 Nj2JFNQ8w-kk_Y crgs~<"ĻxʐU 7,0K s҆71l)B̸+t* 'Z0R =I`@YT~B@;{OzHO(^cE ¨ٚ@QJĝK-/YDח‰I3M3[$7gylH֧rV{b1)vzP;=H]ul2L` 1:l+NTyژᢛ;x o~`?`B3\,-\6/$E9g.^RLO;pKah7P2-;aD(]p,/c: z d`꣪~bX&̬g߼6x?La0`p}-a* |Wж0Qc'מS`4Gʃu z7a `՘NbK~Sa2hmA;l?ωR C%i0BL_TIJyO?s]{$ʗVL/,`7P?̹Q{~4#i=t`ڐ./ 擓DO@rmg=DնX[QCV튂PQ _ӺNNzj6fpq&Asg.#,2S#V "M&GsQNpx i2ekD4R_=b|?xey242=a iGT[Φ ~i*/Q[N;+6$ X_g"}#vԤ>:C e5#’hILFuYT)4%"YoLrA0ˢ9- =DZ* )IOzye<6kz)P|!n6{asUW}AtZOv]--w f0{|4y&{t*7-PsH#6ǎFjkFrF!Xm[Uﰈ3}pE=]<,zhse2~%t .ݒY CS1#c@EW}Tcg}CMr#Vpnܽ~ۅA3qE=o'v`?qOE\HaFٮ7)Ro]k~&;_z%lY2gLCWi=+"^ Xk;!)Bh38NvV*xR:c Ԅ}<֓^Z[@H}0> -Fwk&%.Z> *[C1_bt󪨐a=`!WAvڤ#*~Rn[/NLՆw4;-8n_r:"a6zq Wfn$'}y\p6c:ME?;x~^Ɉ 19XyvE2duLSڎ-u\?8]a89,N=l [soIT 6akJݛ# \/}v*zS@y~ IHp*ͮ`X }ش~rٔw)3bΘj_iSBG%3@7ڠzL5BeGߨ4_q,!_3O5=QʴLܖ&/ZTP-Bb&'?]bqB#REKPs`P÷Sc᭚5? g8VD L@4Vh[;Ҋ[`[['R|W 7:Z? [VHFyI>q51Y;L-1*9>%JSujIikУ$"X!Dfnd93wM :b? tNm|8 nYLIq5~A G| +ߔ"עIp//5 ykoqQn0韬i߃K߉\M~$t9kV>d~Qv!8/3Zh-&dArpL -wݸih hax c:;KTmT =g`L_kZ?DVȸRфLrdT* %M^8^؟t\(@a7xs@ZS6cRu+8/7| x*5cK^4Ćd4Z]/}p0?tqC~7)/Yi9%SJXt BQ&>r2 wE@j>b9\DG Va`mb.S^;kJk3HW%ZpdB04L@ϻ0r>\hBn m(Bٰ:QkJ__gv(\.Sf=YLf@S;ě_\*粕F6׊`)ˆ`ݠ Z$x_Ks1MA'XBsJ߄GgCVvJ |22э&)?3sY@|BmOe5*87DY@`r E,$R-ѷL\"FnrLҝ.vS[}IV^ǭycS;> :xqŁYS:#Z۵+!+ '>ީ[H0[T2.FVxY6]o%){woF|Η}*Ը oa~ ǔQm}:'w_a DRw8鍙Xo}f&WzU;VLGwc`YzL3F"SDTK4S@Va-Z9c/#, )[wL ֽZ 4iE?_?5u4.ZX.ZRJEit? j;0E*R|3̔w"xZjh>vUm9~P RⲘdިFDůR?pH@޽h Zq s&솇/; WG%Y*̈؟>= 0g;w}hjb'|Vot~NυD:Zv|E}.XAj/1*T:I'f-ɁSd܋28(nfa<8bO^Նz))vsL&!j/&*8" ~!w.w-[Qk#֪yd峔-#6H s㖂_?L}?VnWW` kHJ1rzr or\/K-skzɾ~fC4UXHTl]Srx~u3ji"F14M)2L/14w_㳢q"dk:g$I2w(ЩҿU<0~` j3'Yӝ NTod|OppS=l2;eHNG9%/MTt557V@̉ WO:k"6! ǚFz3qs;ec KZ] !9[rq pPpf 7%>?gԀF]φSHu T~sq|GJDTW1=?(~ ~\(xjoCYC:t!~f`7$&f:"JX0Bg0=Ef*p:&R; I=&{`*_q1b2?> po5^MI>ªPIirb >܇pkH8ʙ [ր]1U9iwltSD;Ͳ 9&X[8CoNN_z.~¢ 6xuV!B7QJTz yIcjr{>3- zKBwhT{`PH8.-ڞ`V|C 41?i#$L/@ٵk=<$ yOJ96p5}CVǷVJݯyٗ7#Y-\-z_t4ilũ^1<6P>"A̟CJ72ph;$הOQbn^<}2$!dǤkMpׂ>lcs^Kl\~$uD \E3DC{HCqz4y;{j3fWt16qtZ"w@|:>lIVBn#)ihqOI4E\-"[geKB~Q& AZuj]\kHb揓O7Sh_@mUɽ+6 ڞ5¤ f[¹XhKwv1_8Ɵ"G s~1E$ds`y̢, -D ^w +V޺MQu*jrޡZo~0đ'QxܶزK+̞{DP[TZ*8HuUF1 ZO]4KCu"[s>5?c0.3'waDmG5!?ף ^t}.ŋ~4A00(pQ=7Q$pqŘ$ewʥ{A=c;Is ?IOT带>T˺\m5-)E7#CPVk#z' HN\ ٯ!OjbR%0p4k]Km҇+^}/*ic7PR{ (7AW HOEvmZ~`Ͳzd8'GJ`~`s#ܢU o@:r4^VDWg>PJDH ІYU\$5Osa? WCn7cB""B<߯`S$]Ldp#vXP-s:84ĈgyY@{D)Kl,S]9NQ^wy É 9W`fs[;!uŘ@j8I2EpIaYZ%{$xFPb5+'lwpr+}E9NpյxuQ[: Y.qiS{J5eՏ)N&?/?hݻu]āLzc< h׌JY.LV\|i'`uKp!í@2jͧ#Lnv_XZY wonq1}\uDBnG! m4^!q7-Gz"I0g1pHq4 P\PJkO2s̻lk+ lį0cNN+\nңY~ʸc",H2нy,YA[$dԊ<ʄp- {iOd2C뷸)QPZ3iަpY•:&`q\&/3*v au?kQz6#(y:P\>y[<⠆,kũ$؅+3f/Z,DJrkيpR]cVc")h e uhp$EkD(iL׻6yҬ7B"s'Muy}_RmYE^l&p ʂ6@X bZd'^ȜgR@chE7C4/gkM(iasF@Z8h,gFAۘ5n )y8V3klb9.qk?e ݸW5+Naq*vgآY'jnY*3}A+VOOdT8Z2떐c)z_w[/(V s_9l)Tu2-gFfWbϭ^|ShaFG'UĄmD1g5\߮ut2-U|:~Q: JXq'0+:(}VN PFg1eZQ.72Pbۉ]z,k?V%͝PX1" $8t r$gwF|TMUCe̟8kw4;88ړʌR{ՍBժ-p0kӅMHZS3Z&1c9=' .I9G_V?5QR6>I vwF95FX*OG֡ԧּra#6(=٪`7b-b@Uh 0L&daq p).jKj p^{g0ϻ0S?]R!+t ˳ɳcL1`Xs9I[rv'n~بlO})b^2+<.$;a86|u( TxWP螥$;T |aiQ0@DӁEf\Af; ~,L1+#gv o:Ϲe\̩F)׏ټ E ~Q*w#-jbo?t)gTY_'"gؘ匡vLw d-'E"F*X vBQ2%u1̌,3O #vt/?x:.VvaRMVV} ].nMUxa0EgCa-7m]D>7,#jO@LjB~B9oTJDi!yMEWKFHvoKIy禒oڊ2$fȸG#vZt֥5|C>/Ab4͢J6 0$SWhIJLiqa9slosҧ'mX#"Õ#!L[Xf}ݥ`gNnbu p-s?NHg)QP` 5~?ؤTPԢR+i 4:S螂,=qF)\uj)gM-ښC(U!(jVCF2/ݜ 4Ez n5=Sڨ!w18^# :2 dWbՍ >} ~$R!g Ơ=ž5"2D۬lF,y UӗpZ#/`Ι/ch fFWp'R||2f[=TĮm$wf@8??UI49yjg{bQgVxЅ&8]mA]i$o9_;ns|˔׬A}^ΤcûSfOr h@15Ez-##'y ; Ս1|SvWՄIdSΈ RU$X;A˂(,Y>BhyHS#$jo7Sz:wDb-MFdC#慯cQBSrTeDc6fT+&SFAWoݶxLhJ[9[a!?_0T&Ri~nAK>6:3QQ ݑ}%D@E# ' kr|"Юflζ6xdS̄?t\LM &/|2B[/8 aO&lN$&D5TcjQ*A䲪zD7y\?֬,cI=%ybY-љ+9t x6x<:8չ=w$ /BJ{:;S3՟M&Q2重Qohq0X̕&-1BQO Byf7 KU.M&+v'r?n˩ @ƒ92G2~C jޔHR/g"w꬈եm䌓^Gne-/ϩ_dJopȝO6H3!BkGŇdu]]cV,;sD3Ts֤RGFaKM]4GVkf<0J*g ?+]nJ7TCF(P4PE@lT5LE9ˠ֩qo2 W1 jy5~ 'ingIؑVZ/7?SxjHy">/ہ ]ڟ78/\kk)$^fkKz [g){riaFLkR} ?6zLݟD',ݪ`zpjKS- ꐇbp –MbP<ѭP*6/9šggv! ӸDuP3B& @YEMx^CCFy*}U&[r{Ov2<;:K UzƗׁ= pn pS.W[GKb|3l}>>I\XRn7[j!Mz"-?SbLk5FVV/EY0.Py qϝnhqi!Lu_eOObvW|Jv@|Ғvr m/[YIA+ ۦ6B >:?ct4ϼT cXqHYr@7ʪok)/h雰kj v8 gusaMj903Qa GrA=8Fv50{sj|dh{h2L\]9Ɨqoi&')Z\~H)ob י,Y hk؎,A\ pt3,:HJP{y%+bptgq6v}Yq*!:Ֆ2:-;JI-(_"\xL K7R .{PoZbqA`&D(=0ACԣ˻ O/<ߦOnMݜq}|MƐACxn~4ư$*9!{ 6fY[it*9b ^5(tNS%U҈j}eU4/Yf5pq9Yt[sc  :V:=r+Z/ԘO^&>c"\@BLDQ ~wK* rTPR0KΨ{ByQ C˽Hs;"2x26ޔ}?u+)J]9W`L~JkE{S49ݟj<~M%T㲮ЕZ/y gsRza$<;W@ ToC[ώXa/= KIa*Z yU *S0+k}GM$7A7I u1i9(%|Lʼn1y lMjfٷ\"՚9~xg$&T©RLQ V ,\j4u0{$& J6i;hwd! Ь x=ONȈ\r[ol: o"&$? O 8oLѧA,]:ɰ48Sn[(ƔOaod0WVA?%>j/^vJĐ8-ulӔiؑ"v`hŹaDBYefG Yݞqd%=h/Sey$0=JKv'1Mӷ[%0S| 5tXA@뾩qU6r]Z:zdmMe{f[NqH/7lGŮ5W78!˭r>Eٗ-@z̠+"rÊTH>X-V`;GU,DFOYH5eD_TjyK e7i;g2 n_YuI.Eb_wS 3WìsgiԆ r02K/_cP؁Jr[ʓCo$匦Cnρi#3#@NcV 52 ath{$t#،qL1N1)")]k]3 ,Dąe+cz6I.՗^4lC t!$"|Te6ر0F[2ktl7,"zLl)0fD|jl6X+)vtxh }-PId痧<u}4Nȋ4!d9k;fCSbw<+sAjd8GZ4gdL 4Rʀ /W B&HĮSv:KfP\k2[+Gd5&&Z|!p Ml̪]i:zbmLRDr2k=+#r)NC)1R'nZb\Hq޷5px'Ҵ>-qw/v"Ja2Jm!wWc/t]}VXSuiu~11[z6K%Q$%=@/wUz$$09+ $D̜-;&6qsnJYAAh7:Fwtd}(>i/8 Lx9TS2`XAܺKZ>u|%0e[K5-oBNs{Wn8?u{Q:5kn$TuPry񄁰C9ES= Е`;YdwK{SQFfIѷ[a|ϡ:geIleoդ~WQN`p.e1_vb+SyFK|,)Цծ1_bu.{%eT 37<0mkHO3j!O6d!_eGd>ێvkC Һ) ;J3:kHG1{D^k-ݖSo4 pC=t>-Ym dzH1|3s["@kB%4y&K?e8^a^G[t2Yu ظ|wybT_Q:`t5@4G _Q>i֏FA':A*۽A"jQQ_Ƌ([FmOJ``gVfm=:UW c3]UE; ВhNu@vA@HoRvLp R_ۓsB,vgB,1vY&k]Hv/3a\ p8 dqD\__ғgGiu̒ɞ#20T'@EG,`0la1HeYs .@ƊuIX+Ѫդeȯ)p]r&gz>޾_ٯl9s9\fDV=b;Ce&{O0,KZ"@x\*lC!8 I*Mj'# ([i]Υ M{"91dIJ դ~BY,oԟs#B~U$C=[o-7>DVEu(ȔK28%WZϢDʛw@h+П6\o Wy/.yDD*Ik݄6AM"M6x-D['}dK=$~HN/[&c :>qw: [ZV@^kcjrDŽ5ccH -_@שg[гjф[}h 1+3ZL D+lqɼg C5ZkW' 47;^kefp.SvPx$.FoXNWP:_ ᏍܫK73T∵VhjoL; X)ec,f6Kao mU:CH,yM9oGEXO)_MK{8?f9v)!ך c3^򼷍wBER֫SVDӵ/LfBCAe Eԧ>cq+fIq,rTӛ @[+;u}<~T9ou4yBV%j2K%#1V:K63[OI°юKwM1AK}?bdG5 =9%`gڕ-E;/ brGcDҳE5_J gcMȑU9໋ǔW88JtKD}SMa gy=kvl$!/{TV/IS"POF蟁f*$ B5hRw&O{~adbv[bV<,CY:+E^:/z=Vן7!*G/ gR)黆彛Ǥ0p2Y1I3k&8XД6ZY@I[W<"׍W׈8uUtI~J%!5 >[uU$p"G[q7x8X*!`P:0QT t 4'yƅV:Rxr:"}q_=ae+OF _ =)qIOI:^l6)4X8NFz̵f_w"B)g&O. G1Ub3q%"]4ثz焾?*Z-՝#_`KI:zY# NJƇ[a^ձfEǵؑR^_=%{YDŽ(W~ E͐a)y3>{wU()=}&vTjlhwjAd''wP &%3)>P.?tB٠uòF_fuAyi!+w$l[B'_X^mNNx=G2EQvRb 3==@92hj->7U€9}AE]Q ^e_cDC d؁[7E"·l3: wMxA8y^=OJ~*jlG[8"kyXBXsz JxU, &3^<m ULGO9EWn_W҇MxK}WV/F bWxu'5' 7CC)>fPUl&upQ+`xrqwO4nv_9W%E%S%1u7;\` id$C4= R%Qa! 򽐋HOwkwFA1+6mYoib.C/1u~&7&K65Md MJ'H!5 XjZ':Gfb'J'7)o߱Z qW WѬ-@qu~ {4" h+'Lks8}pm#/G~vYKa} g\p^ #jw*/Ø_hԕg)-zrndEj)S~pIH658.C{|Vj4Ƨ5DՄcŵzNXTEłѡXG|9A,[]< ˌ㥗rom|&Fŏ^Et,:HrgH(AY')%E_40%?l֯G Ox̿>򶚩c/qSrH- ~VI ˕6WbV[WPd0 |aˇ'$,׋HV}DMGr+͝[~)q J`em'nCZ5uLYLDz*cj8x{v1ˇo(* 7m?;쟏|UMʫ[B($I(jOJ =9;FR[iL'tL_[E묌ZYȭc7( NKr/\>JDbޜ]mս}"5sKRi#{^q{Xt0sC Y J2xF R܎[(?6hWTg?2P#MKgz颺ס" tk6ɰ{bM1Hmy|~͝"Q { ( DOڟFg !;כ(i(OͮSռ(K<\u{@ԗ^'V߀:9%.9]lϊu)qٮglyhM88\^#N>=a@j>VlqJXq54@:_u&qްH!n}.߁|w>a@T,?1<445XFA`̀vA IT/|ړ O\A 4(t$*?E@- >w$O WcEy#g }7o.e jqP=2c}#`i#ɱaҀQKݑ蹎~v#[iSq148S =k}x{Vkub¢ylnkPQ%BwZ:2i"3wy ݟFTA`Q+n̉rfS#'n%c)Y*MmN"*V_a3O:G:UOͷ\ke"9ZAjh(QVQbM1ߪkΙVz3B'=Lxťxcd8ln1my<%GЙ4jEfF.*%:€1DXv|V Qqؙ~Rè鐹(\P q.I4h@(4TjQS=N+9c:UOQBE"bM&qL@~JdV>ӀolCcZ}݋Koh;ꢸFÀNoBFXǗE4P'Xm(u{V;˵, >C74z7!?Rܵ n1a0<@ǿƫBTi K#aIfz#˯^*We sbiBF\Z.%Z$rd5hά* m̒z6k{pϚ;BKAP+amh''j|'\X$NʢdlғPpܜ>6[ɛgq89v8X EmJ_QKh7LyV >z ˲w(׋rm0Q_xTp2 $*lºd8N{yч+ /X}A K+ #utT"8;] W{t_~""42gliB\nᬄQ`Aq4} ҐpgIXE~Od|%np%DC3UzkO!L+ zx`#c 1{!;9fAG7rb^?@Uo"Vx2T#1- F,N ͳjڔ^wwt- PO/LvڠjGkNQ`Q9-+barYpէ@?;)uD\EPR3,۫q1uJ˻?u%Md}Ϧ~yf =}-T6#tTFP6 v 35r+(G@u~O\6?{~I>PNdPIC켬A]Heх$`в574t.,3w;)- EYga_yxl4q8,VcaOOJЪŶ0~A3S6nz!D'.D,;g+16jkyٚ4>kaT2{] +v\5?ǀ70;$V[^J @=*%@smÙX) (1JRYqքįД'[N],*U;*j%WGno%$v#zC"U !k żRK&\ sQ\,tժA$Q9gqh(2-ؔ ]u=P;2P(DgK{#,$z$s=KJjப~2&cH uVQ-1 ~> kP<tw֔f1~El@^/)sMGpoJs@EΕI ht2г!|_3hҐ.NItO,* kǤpLdN am"u=I 榀!ة#j9~ms+_L!ʃ}t잻R$\ν5ؼ/#v|~ؐ*ӟXd f]rayeoN^.4p3ِ>} (CRG*`6W=&(N1uG{iz.kjɵJJ]YرJ:H8N'"? ?J>?]h= Z*_cXgm]`$Nd>/j*5'[͹E-/wI,u  9FX!e`2UF-~Jk86-K~=FP\*`nY}%xf{T$UO *&i*?OxT#@\UM (s9t$NT_a *V0.0Tj0 \&?4>VI:Sfֿ¦~ɛ!٤K ?n fI_FsXx(t|;Z~Znu%FPߚLȥTΑpC ])>0|οF #u÷,-c @]} 7AHb`.@$8䃨nεC@B?GL΃@HnE/e!Q^Z 272|O5|m,FW7SˣQq\,ݰkLÜm>&+1]6ʝ:Si] m au-+ aFK_ j]:Cyo{jƩ2\pyHQ%RnXCk6N21P1ijj\7qO]IU(.O{3)A=`'(8ϴK>gCc+h7z ю'SD4&l%!04фf,5Ƥ!ډ C4g]ۉm8 1>M5^wX"t_=TYdP̖Τ>$ё:܈HCⅉЈx/Fۂf8ECIHJO"}[lG9sqD>ZSekHE&}6k:$k mQrM\XB1'y͹ '%IE֡ng\R,ğA/<%AWfݨ$; 0+T)7 ;9~A6GhтGț)[PsG-SM y w-yNpQBl &̽iGt=&ZjXIPjiqs^< Pa֭Vo5i2AީsV WL,~"G#k ][ōF༤@E=ڋ3i>y`eyw)P<@(T`D vNpnV<6^N^Խ~w^@j-8Nͥ!J$P:-SB`.n KOߝ`(qTH΋Vݲ05IJVѭ8DV_kB[6E}Ӱ2lvOO<5?5̃gr<6*,$\ˏ01%`@8)Zuх*!mDCs-zC]OD%Iq.d$cpY62|z Xz٢ɟG*-Bf#2[_S! 4ewA-BՕu ߹KJF/ޱu'#nTNe|툾*Ng!6<7!B>FՄۖӽl.rRL|U߁z;\)y⇴M:4_r 5gf];%ڎwΙm]nOfV 9ZTd;׭(O PL/Ԟb$jG\%^:V7#BNL;?GQKÝZ:7'a䯹,'Zb6] mLO݁Lb܂y[%>%ʴZ3 @s|T*etd$㔯69yU\im_v+,r?z (TQ*$Ȱ/i3Al.S\ZJ,i#DG̚ʙ =}Z75+,!3[ɠa OO ^x~.r¶_ѵ_RX\Mm߁1˺ڣi,wrBkғQ z̧7.T3.''riU?iq1@W#i; reٴRZ t a3I^Lټb ;>\D7X>սEFG2oc"_SK럦$nLsQ rDy&pgdmOn1jMbﴋo^zlͳv.x5zc24,6fZQ. y}?yk-d.|TD\l:WK4jJTR"&aNY/WcЇ8.ީ1ܦ1|ꮫ|6 ͼƪ!T亶brA6t5 7ß;Sv4k;4G%4VfˡB/j78{P-9|7ib#HFnBr 77EVhhfIlM4ञiU`opmAAvFq/b9r{O&A?zi`lS%r#oP԰w tcO6jfU%E4}rÉN`xZT՜}DnNiґʡs!<(+ ŸZEҼB3VϮTYcmgOԏ(z0@yFl0I|8{3<$(QKB[& HoVt\ ՜牤nL,I=Gy͞`c'%dI9Zٰǎ|dmœ:&2D $ftB`[X=Oş)_IHnU(o_$e9t .R4=%e#{{1# r>Wpg<`%S%1> ܴTZ[5>bldKІo׽2N R4vRSHߦR9<{'Idi{breQSoNkTa0&ИƩ$!,QBe/2R@c5uҬ߬v[/S+1QpUǶC',pjfi@] cHY܈sԨoj}7fQ %T+z>Ыt(L7*KXʛ"k NC ז6zM{&" <-w;n׈[0CM ?p:\eȋ(3S2=B"y^x+v}gu&?s"L)@4[6yg*qL̪EWP3za<[pl> UqUf\XjOXdtĤ^쇓z]0ϙ0Ԁɜ箛dg)rʃrS`G\h ACu"VFxda򋡘5U-oIc)0cV!粼dې6ӂF#ABWup,|Zq~ra59mut]o]~7C)<~0 ;Ketu?'W$yfnVS1G=C;bv)njPGL*iny&W4V a Y+kPs$u0AF /V՝I:2 ԩ#9l4MiQI i?]'6[y\I`=j~nb4 I ,,P>,ds30vMl8&:@MUAީpPwܕpSP76AzA[P$0Tx]xx{` Ȉ `9@?L@Y}E5_Xf洡KR+ŋ&S%:ˮ ̻U-p 3-<2uY_Z/y}$ۘݟN{^ ';.($1oZNcԺDq6Q{H_fްd?ofP(NTl7|G6ʔ%R$Fi^q0^ݯ.')`$?ųz&ɝi=LPARX}X{3WƦہFcN)WKd1n;m1kIx j6[l:u胉8ج^(Pm9IhD'cpDJk5hD zOڧUr ڷ 21{c[r5KرhQEYrrFYLR{s2\v_)F kJa)uv]&<~cZ+I>Y0D`om,󺇪o@fX,ҫB\Ÿj2at)ݡ_~s. f8F6dvb#_hmr~Y>BnG{{I+huVt !۳u܎uh $frMN O:br`({c?JYѫICEi` ΝSvd AJUGDobS܈#TlRRxWQ3$fKmreհP'kg#3d·V"/l6-E5Ƀ/Z>tpkKARtKb0nYtfҋ &'pWaIPd6usJĝAcR) mD4=d p}FTz&U}\TNrY5~~mwׇ3qD,JME eIv鹚c4>`\L}q2ĨkKrDÝ9Lܡdl͑6j"sZ2 ܐB&+GWBV tc} J0jf8 q [#}K³ѸiF{{?{uoYsr4/ ,J\Y+$ ܝ4]煏rII?Jѕ9itYC~<׳ >ŜOr|zqA_uߏdYC`{Eִ37Mǡ9ŝ>/ Q:OPs"t8ExE,r3`iͪ0~uT,\@A5=E-\?"s`oJ@cODAfE=? Pg{qKjOYyW ̒Cج1S'PU߻0G n qjRꇃzu) xã{b>?@.H`An~&]26q|'2*>C(NYm<[hU2R"g=n$ a3`@(;ydF}Cܭ]܆3j{ye~1. m:Eдؑ%wf20~{ZbJAR*s/?VL%<:?&HzYTRy`=\0JbqnܢDzON=q3O 8R+2|l=db^gQ* pZ#xw JhMgT5{sǚbQkuho >J$>kڷkd+ Va  tĥ~~)fv R ]hԩgѤˀ *rD-%.Z:B/*vX%^bs1*|@w#pu܎)qopm"2A)@A%.FR [a TR@iB!MF`RIAZqkE& kޥ+dzta bvNϦq0O"/QHC*F`SfV8@ $s g|FtKi7%G6uNJT;|>wӏwj<Bϭ0P{*<pΜWP}'B&Zr~eò2d0F6nY# }㽘\*R+읪s[; ub .a]kU n\y 8$FiP:0^d91J x[̏~;|/>RR6ҩTB+".KL/8TB A"v W- 1 T=Gb`=PVS\I{/)O0\':\_% leŖe`t. 4&)5ҽ0WPBozk.†5LB- ۴Ȋ1cgn/V`d537v=bڭNҫ*yfʛʲDь }Ϸbzk~y@+Cs gu]\ݰT뼱ZZ#7Xŧ9E20>\ЌD"ؖu:κ>Arg`a^{zq9 # 1%LU}!V4^y>R(M'on)JJ@@NP414ՀGIe~H/ Wak@|㻺]>%&W+khCOԏ$+KP%HlLSCiL*:Н)SF30(n 'Ze9[E1D]QOU TrL;o;ϧ>,zG,6N|)zm2N]]x~ *ΛEkeM|Y0׆DhS$z<щx|@S{XRi"%БY||Yq}bɅԌ% )Ω1޴-^v_7 Q_6X+@8$Iz*=[f͔D;1o,L_HAez {6'Y]͉c[6ut,~:ƶVQZ5LrOUxQ]FZP .P iÙ} sy?E,sk,&.נgd_4]s\wtai<$okԢ֊Qi] B3K r3Ci/<5w &kz'aXϧ1\T$њs% pb?FilKȲWq0n8gk_ KN?|NdeޮZ'w&9~Y49>wa@$J?i,uG8%OC^_;JVV=HDZ>W)L- ?xmi,^uE 5TqSYX؋cQA%N.( F#U _Y Lg?pΙYO8vrY4Dx%=3d^7u^NX8SwטXkIQkw QSV٬zi/gW\01K arx24*(Rw9iv!4/6"Zf.xRLEv!#Ɇa?y|Z][M}w&6:{!|U'QU=HKh3;dߪXfjjޜTPi5CB8䘼0KhU 4'b]sX˝[MCildR]gr:4<ӛ;S~n]twrOD^ ( R}L ě %%%:Ϝ1^_AN 1F8 Fn#'Y7stp9`}=Bxcؔ& ?O=0ia!? pFBѪOo#d]Gl%;qu^N=9$gȗ=5 F >>0ϐ6wz*Ӕʡݻ'&y|,{{X1wRϯgA:wQe-ӽU(G1B`Jd B? EdnԁOC:'',o0}BnSj֡VvNS X5ʛJ?:8< nsPTl )cU!] &e[~ n.1oO\8abC22$[l'G&#!ɀ2DGl}eUmU4C+{֯)I20:8Sa??sW#c*&,Ɂ矴b!?P B8P˲ٴ a̭׹ΉT֪bwp2ԁ6ľr+qy$*~GK;oZӎ4/gO)XsC? b7,պVgZNZpv8?ɢ0h܈ﳞOmR'Xa ݍ+r١YPsts%ӰxCϳf䆶9Gow]1?>~p&3l>XHy*H}pA\EP' )hthܵF6C\%x^Y`-[|@Řl\Y|E t@5tSbY7^F̋|v1\m?ݒQf[RJŀBh~dM\T TJmq|z9yiX~UXj;}fF)u]?rV%Zp`DS{m%H ݥpEI&L {eH66;vZcoҶg3 8sq׽8/f{{-ז#%Gv8uP[?aᐌBg6aَEXCĽZS,2 ,o \뗍jxN,M{G_wKLZm9#gS`j"?C-|!k(@=3xH@o,^ͽOD[-p4\SBS(1!(CWE; 9.]`K5FL~:jGDWXO8)vwSRoBf{ %N,Ab1NsMN>Q[?NnYlMİ~x2ur8<3艛S;vȽfJ YVR;@rpseW&3$릵=bAvXwx/&y5Ykc/C~җ4ٙٓ!Lطx|']vXq@霝yB&ρ-Q[deSDLS4 ޠF_g{9*1z}Kp|Pz&qYщ/Jy vU;V!v{r=BV1&Pgd9a{vdOJ(|)G\4E@/[=[lItݐ@+CD' LjȊzk=~oȓ, d ̢ `Od4caN 綅L*lDiisl$24[ɒeP8;5cS>eQpKK-K2 ;ap,)#e4/ .Kw`)1,I_oq)Y?(USo TluRfRk-]b 1\}7k4ѕZQ&mZ'8v o+F3Ki1!z=!Q'p?뼟88QB6;錵 ;JJіZsZ|U-{XχfF;?-Lp -9Y\ iv;ԣ~jB|jʍ~c{[oߋ߽=3D#1Ef K!xNقX9JeT'pv _J1cѬ2@1v~ykݠ!Q2{+AlHN&&KmMGk h'-HYLg+dtrC]OZE0"͍%S%K+](F6 4_CYI_(QSDۡUm 6A Si. E'-8D5?&%Ҫ;ZrlAO +>“l[B$_th͇BJ́s%c#c RkqU;C<{ou+W%:o򷷕(ܭ˛N4ɕ`E,'^& WaGFR:-K¦Tdsu1ʕ|L-C,Ne,V92,'OPMK~IUyԌSF1s^GAZm(y Y:N˩6(>Hrs7ȧU]ZFM=En OKoSH2*zp!wc$}ۘU3 }"> ܳ~jXJY,]<0-j$:D~9Xܤj0>0!6^! dn)#1n} M6#Ws2@.! T),݋HF~4% @9F B͛`\d虦=z|ehـyѷ8GRjWg`9Y7oF!~?\{o0v2둃 *d@RvPXEa%LS[Ӑ0϶Rz DBaEX[7ZGekX8"^YDF-",~?fW\vuoȫ21G ᜟkj+!9`NVO_k,Q !"i ^?K8{tYIU'Ы0"WIɫaH}}D6p;Ը7q0 HfDm C3E*+4Ԏ/n܊P<ĪlSAf: |Z.=zF"x5͌nI$W w,F_cc|E[B_,Ӏx/O*@sJhZGӪhy`߬*?1}\1ی^KQUbDvZb,n{';,HK"b:681l35S$TRsRRP_B ](DaFԔtdkE_s265n5h A׸;ʃM*e# W&t5^Lzڱ7u | ,+}X zoǂ'6Q]@CAXf㼧=J> g77WL*e rEgHsH񀏢W<[fT@ ELl:-%\c_ZrZə2H0"_sVyE13n_&K zu{1_C՟ Ca!T2b:Cކ]G%?D)[Y LӞzz˂ XD=0L]n 7T1kqv_ 4J TcG-1&?[*U+XӸˁ,Ru\߈8n2;ukݺt*Ubo'NjI C%ݠRY1Q@ò÷dҕ9I:3R7!ݩeowkH6O'Vm5s3uHXQY~EL9Zc^&oc.ifQG#_%Vm+zܲ綀72z )仝@ !- ߤG:qMGQt. bG'<Uj8베)uR[Vy~?so^%iiw 0-'OMaqjvFZTk, $(DsP8¾$}UNћ21X|[.GX,]3IB@e4[Rj~T5} -op:V*‹n953YpP]]/"EDGlٜID.1dեHY?gu h(mv֑ O]Z0XZJO7.f˰zPe8vj*jι5Gֈ#hV|+^RU2 #xiͭ>]Nc eOUDTKA`Bz]+&|MaK;Ŭݾr}a4X+LS-֞wG(ط 8Ov^BA>g:)RwQz.08+1f=~HV͖=K\|?.qxC3tx7mu2jR5W\ބY]1iOW`Q_u1 #>/>#=30Eg?1V#.xW`q ^`gGWf GKx1Y 5}Ldi'7SiG"96&d5,0.]/& cLsQSps)L&~t8"`]8W@>\K?J05XXV®86ku.kr,10TU/e 8 vcpy}a~pt8&,۾4r y"m=E"`~E*Y!Z ˨L;Ws&lz *hofqڏiWI :|œI e-l/5P UYL9^BE?WLfͮ\{JN/aMND|Y["[mWq[T7ek0N_T jHFX3%FsiGO ]@afaQ:vIF< 씳pYɛ4ܭU@;OwOrVFvJEmXG0lOs+e zu)YdMZO L9jq's3[&VXzL6}*TDq4Y5I Nwq|*Q doF),_5@WUr_Ir +ihQar|. n74Y1#'qÃ'Jca7/ds#b=e˺4TC8fzZ+^pI'Gk4}R4d17~&oܒ&|^B*@3$O_4U &d\JVgM|41E`Dr ?'ڛs%%%V8#?TV@} S]x lTx j^%0:ņ^ZW~'-/ҡ::7 a~Cņ}q>؀6pSThlX=]l} @?;b ' b`8y Y^>a)@7łT|+~N8y^IX@m{~ݨ/y5$Xf&±Pj 4F6h[Y-v(EnkN~yDa$)`{4-TʐoƯ-%+.Pm+Y:.|EA8xLq^;\s}c5cB { g[],fQ2q 3M 6jU$eȡd` we ?x|4رWed C# Ξ$R>58" uۢx¬~va`d Vmb9K]RmQ'w$(bf% J\U w玂Qw* Yz4/=W]@T:G3^iW؂Teɵ,U̧"mI 86=Q]J3A~ seb=aIGm'70eJRԼ3QYFc itN 2_KK̫*\pٖeհQp sGؽvzEZDy0ꊷ$lH+^FF4zBeDg.<}9i:޾2V<:o[ m8I9R&<"S@AphɌ\&cp=9ㅹ|Q>?6n<|D2'/No<qOJ6/$o-I CbK ]ɓAHwRW?)WoHza'e9EXv'~&$5MԔHw@5Z6eDt,Q)@ܧc6fH(o=da2"{"UcL ͇?6r\z^ڥV5 u,ri{| ÄX(F䶹lN| kTUMFġlJ54 J3nsK3 P( 0ډ$xy$g))؝vV Ƴ#*pWi*ܲQq=%(⭻hsex8HWAKLJ#6EL:4譜[IIRG%My)@.u/yEBB%ܾ9aĮgJ 3iB΍ӏ!a%%H q:ʵ`W-4M+V]ۚ ce$Ԥ;ylRᷥfߥ{_L4%7jcTK"^ G<``ו-o V?3ەl*'oʊ*=.[vZI] גe;aa ToY:~A5y;wQ30?wKfwilFOG 3BU/l D-wz?NI :ܝ`d/p!&fr M\nU@#(fD4u?L6GǪSb6)をYf+-,l Oܤ&#?3?M9;NTRk+J#gW_'٤#xX>B 3Ǿ$?=?X7QjFjj-* 9!,p*)E_CjQp79p4UpsαrB 8:1soDGHvgL o7I#A[m*׭38^Xܼt&t9cTaHÙӇ"P|?c̓S M#$jۆwJCGPs<)w( gT0)/}ΏD3"{kA{>vɥΔ }wlRscT}4l?}/.F\Xd/~1=cNoZBcCCDjC۟ tu;w( roCb%"zg{ p4dx o,)2?K\>ZVHCC퉡>)WAO6  ~TCOJkjahio3L="9׃mB`1)]I&ނ- LW&_RQ>Դ;M.uXƜJb /.tW%+T` *łꐁ$ ~ġqg=+ÿk0Lk+vQ ; H[g,udyG<6΋hQ10 ɾ" Jx. [C<>qs|ᨔRw@x-@cȤ1܉P*Gil-%+rե/SKP |ޖo܍-|sL03|7,.10=dT8QV|rJXlz"f2[< Ƈ NhCN7_JZ^Vw_ۗQyZ;J I +$GL` bL)ޔ(J:%f֕ Vj{?WXln0x-far+ [4MP[O<O>_mL^3/zžuSL|az "錝ڐ';9܎HӭHVʌa^$ekՒ:Ehv%"IΌ?C+i=K Jܪї̢<0e#UV1r%_&D&8hU/g%6tqҢnz$}߀A1l:MfWquL߁ Jy)Ȝ(8ޝuNN(gO-_tYbB%dz*7 e&̀V0A>:J<գ4-wP( ]zE9"ݾ`?וeX\GK D|Gq\ "WX$̖&%/V¾U+(D8ɁYŌ3mUvRs{~6q\yGJ&('{JPuNA-;^vVZ[ j2AO݆ܛȪ@/!%ب_| h'"Vw<  sL /%+}cA5:f~@5y[ˈ1alN+c{X'MjoY"V@Dp,k`^?zZrXW93&2KGX\0JA R"+PXht [a 9"(?߳ڪX(?f *HaG@6W NB9|'Kׂ͕[3NC|!y[#,7 @3Zn"J'ԩ+9oee5Ҡ[Xp O&-NB=!E__ıR]uiM?r~zquKTED>`],kwJ Ae#9:_@;%/@"]`!]Kp"?VeP渝g; SA2.D46iˠ.W_))Ws0uX:pn/٭}hfF}#ΰ*;QUTH 4\ Nh ō&s,EN>*&#S !>a!јjF}s&7g#--p>dt 9q~l|4¡e"I,hv(XBxՆ}p)ov)S[)᫨C+H7aOa([RzQߨ8r!&1pG1,?E LYn< 5YѕhIWgp5+[;L65X( N[VwUK+g4 }#a8|B&nA8[ү)Ёn14vr#SG*gV3z < *dZjVBF| \D&cL?8V>e ΞSљ̪ז4jhK*q@u7MIkDY$CfsURis+I/>ֱ©WjT4viR: ᵄ}z9}d*oYЂ5!ҤdSuNm% ~ifyUS2,L>2{O/>s?) %Cӯr491T WcC9b &E`:@T#YI7΃X+ƛ`yG82Ic}^A;3ILΐׯx&O饟FD\N[0pvo HϊѺ K)oؓz7Wyq\g<2uX(Z鿰FhXM>VU-I)Ȓ`kk=VV(oU}׈ ˸M0rWcbnv;+|EWL vnZ\?6y&f&pdMZbM G0l12+N+E8@:h4 #'+1P ]Ą 1nL/q;ڕ# l4¾iQ~ !ʅ\/`Bve]>Ҳ~87g5--2u>#v"֕s&!f٢ )6k}O}0 kc1F!c#'1'O%$6!h)/_2 YhQvd*`b1>w ߲IWO71M38Wu?qqoltb Pp|[Rrϲ9vfJb&Vf F99~GE)J+0"VLNדS]3ޏ"d9V)#?ř%N(DDY+'7'7W ]rƠo$W8bi2Upo`"|xvl>>,Һѕf$0w `%(n9'̓ȈBX M0BI Q:L&"KE"MIMܑZ@-nނxU"X${KəX:;y.?:jlvx#.,$JMxImRg0W Cio2e|%ϣT.g$GØQG%y #8:jM$eܪ(iZ9?ֶ ~^_몣sVQ{9f|_0pڶK1һ:RY% ݁ X>wg5j)hͼWwG[]/=C*tl*-t=8:6HN_ER,1aVhS]v"@t=~?*-lgۿ⛗29DmgE-IL UIlń>To|׊p2-h60Rd;x[)}]#7|/^E3J"P] If/XFX~X7%!wfkEg7/z( ㏗&-E!j\aGEbk?K9ilRX+1%f P2ae یSLPK=&ٚp]XnB(Gj [m~#VM[d6|x iRβ?ʶ~B5[y.J_#B\=LZm7pVSMahg]A9vi<1t x+{B:{ nďV3P ,y n8B~V㎜ᕦgEN2D4[t4^4MDCM.T+\mPZx rq,ފ[*W4V2;m2̰ZI0h$:/,[@_38$DTwb̝=Azl,ieR2wb2hIv˲=qLԂq|";+-m<&VK(~~oj[I9'ᄌ:eּZO0d 8g] ~#r,`zLsx\c 碁{JHݚX`+hs+QƞPqZr Ǎ4ӂ+9Q4Gr &|2P;\h>] w.9i^?#կKM~VQq@-i>1-n EAOP ՆwiuV|xlK&QYf'ڇ(׏wrK5-H[q ٲj(E8t3NxA,]4+͜2_fj] ##oiv6TZI{kϞ1~Rl ד:ZENS!|rVp]zF*J'}#* e8 }I;͢{ڕ牅s"m'X|%+Չ'0:Jx!.n*Ʃc*W2b?vo{r8`#. TĪz=L3Axk6yw?dI(iC8?r>ªB" YJJt_\zW뛤ub 0d5};Yj#Dz9&;XpIۃ0gFvB1`t&ԾEd2E@AaS(¦ zW)F>Ml%<}Z'YCG(H<~_TcȤB S`Lg([g皕z0-ZŌV\H edMYr+{@)~)ŵv7 4SWǜp<^a-X,>_0Tn9 .CĂїwۯ~XV8Uo^6d;:T_uzᱛ z$qn,oM}-1ٔ'EXn$&/u>^`--QM2>xlm;6C#Z#o!a*hcY7uq"&f *5A"]`:筻kmlx`6=(kqTr2)A-Տ/hK8>O*((N,&3Nv\f'bG:fU%ytюyͼ)?ɴӀTEwKFN=ȍ6BPnWX ,mh" 1h^Rͯ= FD 5.:_0N4.zr| $ܒVNUяvoB[Zw(8R ^uGSTQn.7j"66q x/~>/1ZxfB]e0D,)yI\)aqzU?ÙNeP0±(mpWtIhS!V?'$?&Yfg1[/V?zPymn.W cy#I2t'nt3ۻ1s[F{-( 70ۖB_xT] ,mzv:IE=,::sȗ,ø}I$ p+P(_5%^05LW%E˵5t&Vx 5ȢKy=r);C_44J rH1UqxSFy}H0r"]ژ^ Iu X ]}x%Gwҵ$a׮>omaHMB8k-N}뻇tN;s𓾍NCxigٛ89_م+,u,O߹y./qLۻVOwYuk9v)xR\Hx5*a6#@@GAu2nǺahٴ˞ثs[5ǝeyuOm#jclCVS $coαS}$&uJmwiwj v];D!vp $;Qo AO7Q!E:e9h+H*Y/,Z_WMĿpObK3>k|hWU}}ŶSX $?9;Չfy彡\G-fݔ2{~D2_`(bj6$ApB Q=F20K-4+4søZt YBiM h#Svgv>qƙgƇoq^:cw2yD="4*IdeB FԂkɃa|!%9d-HC4U ,So+h*xVިcWA Pn< uJVŲ5aE] z'.rf4Lܿ1 Eo@!iʜ)@Դ[h֏bM4ySeT~If$V_VY)Pl G*'}7/,00Γ8 x}\]}a ?j0 m]i8()8eTK;WRMf=ue{w

      ձҷU%9z$V6BBL{ZR6EZ;ШgFXBH񏨔:S薥 w祫arfx@^yKtטFG.m*Dj0`p [ C-Sj#X`k)y}ǂbw{t)GǾwj#P=0,H$,=T yrM ߰d)cؚ$5fB_B];t{;)i%CsoޟOཏ !L"lB=lVyO1 Z'b!Z*B̕#w vXl9m0ɀؔ@r)(RbW&i$aR5PP2̻1βK戓OEI` 1r^cTb\nؖ>5ݹ$k"5vJ(oxq=uA"'S.#M>m_NR𙳄fL_T5%֞=ӿzMW)PbӞTVM==lpWP$"W g*g` KӦU YUүzu?R!6 oRQgoK(nTBM|p4.Slٔu~[txx2pynL_H IRaD%Z߹`},RI7YƮ(`R' `}~@QPEy{.Gi <0e _@gpctt"*c1ԌBWsw.>J23(] *P ?_n6U#?^FQi|F#mk]~~UmZevU Y2/=H(QZ$-м4 nQ`o.ęTNYrՖHi^I)\_O7'fЗv b )lqPIE ulk*Ti7_: &Icw㗛&*Kd )o͖6=٤N-L"7[Ƕ1e/*z<[LdFzdDϸqš2Z[*jU 'XωYY:/!c&~)24m)#gQC>7k/5^Eu ŀvwoG RFԐlŞ5X@T<$,rq4xkĂ1$*qD/\ld'~&-15wؓ"C848ӎ}|rvQ)RD=rWPh%(%.i;mZ4.X¤W0s#wr˸ٜᙍNjdw3BtP@K$ۘ$=]م84y2II}Ej.u?1õu`D-p㐑)>Fˈsn`f.)|' 5$0k[d?5ƐOA _%I]Ŭ1ƇVY,dmjUMt9Ue,p229#]MP?ܛ:1˃ŔRh-X2S!Ӵ HuO|'r1m-uoahElD~qo7 Z?nJНԾQBO/hHSlM+T-hNݏ{w_CM*0] Ґ!6G6kIOOw$>NU*02J;Cd{=Q>c_"5iWqnѠqL`}'kvbɋ_JFs˵IjXE"7t7 7`s&;rTxЦq+l9xQTGd+g2:E[2:rJ{{EI*ɢDPGtaU FPA0]D~TֿJsE( :HK#r h/ۋnoo^@`tM`S&;鴉lVN^>r"hmF}OZӸQ{!멆udC'&H MEKٙvBZ׺;+@hnFo0?g% X瓓 Mv<ٞ?,Xv9eIAn4&tpPLKr uDeo-~ʑ)xt?&q%b4?M+zD{20S< 3ps1* a7) .X؝-X﵋J4b$_o エ!+] z,k+[KI 54f/?=$ ]uLPE޾a_g3)^ǚ|'JAĹH7=H k)C,V)wL4r{*σOf=H6MҺɞ'-3':rc",+(b:hWf5xgy']"oYse7L&CQ\܇T;'%MP`p/X1=pi,k#ߧeHRUpwȠP!ɱ/ j;OS⬞ZdD԰ t(2EEdk)J9rxȔWQ`8nvf}`f5vPhys*HVޭ7 z$j-uR?@>K6!2`X#'BxQSuX5D xYe%˧xEig@#d c!e/_UB(uMÂoAwUDr7V1eOx:Sg8C ($NTK!ik=pIbz Eh /ހ;"X&P{^7wpOQ<$$p h(ӛ@Ny LYo.;s&E_MPPsqDXʝ7j+yx+yV (*bZ֓\ՙm_.1ck\`JS6,ǣoY9*/+e}w9x+ahy K0Æ~LPyϐFVU XD(o-$~'yRudtAA Tt;F)g+$x ۙR@Dbm~߆ğ|u18(oeM( ^rӕ+ŝ蚣:Ck_K>]Sixqr5kagҔΫX$ A,qbr)զD0i~YPA;JXUڞm9NN*Q*o>dfljD!4bҽ&*Wo5 TFa2a|Sl,9&N uN+8Vh +MaE" Hş>hEPHGuG@ՌLm $};ŲG }S,E'̿824FJtΈHGNnc||Wܼ +XSHq@& _~7"J3\_`DTDhNDP>2Sk/IrS垱BX' q}?IzdI6ދVk.lI3HŪU̦ղXz<7c&?^֮w$n렻%)M39E2iU훎"%5a4)(;F+៎[{Q21IK710b1gv^5| [I!-+da\r (IfI'RkXv"9)C7!HV[Zo.ce.dP1/ˮأ5=iҥG^:[B ˫Tĕ;u,\u 0}Ia|7weKSOs<~ ?Na-4̛W-~-3s ɩ;K'20O$N^gZL}dw[lu(j u#2(IW~xz]|ceћt+ vb; d.,@>L|фHoɁ|l]ꠘ3>TNj<$Iɳ9•b8`]S~')}63'%)wl):M%7_.(}5*er{%:z<թ$;m0.1NST"d&/P=&Ghjx3įk C(<6b`?sg& ]R44U4\@ВϬN&k ~Mp!v 7<>+cz[a/u/w'٘OAd!]*&Xd1[ _<+Ls :~lѩfU--+6ftWu:ZRl9Q-ՠB$E7@6]F+j|e-EJԚR(Ϧ_\6lBP)vx 9\m"4UK@SlCL㵓2R_eۯs5*SJHb vB9$ mV1왗 8*ic0 n¡I+_zlnI2Ձ3us,Ew͚ߪT% ٥gbl&W+Y +ijqm+$P?8glS{S(@R c;||3­["]웆l3poRڟmH7#sAWluc̫Yhǒ$Ιprѡv;,zlH,lR?2Xi|bϝĐj2ra nBfEduaF=%Bwg8E"~ 5U!1SwWW"6h4׊x9#20#5IbJȃ gReo0^Z?ȉ–j=Jrky c>-Ěo%6r7޲kYh Q>k(=YuYZ%ZAv U}4:ot8\UVҴ1ćBg"96ĺ{{͠$MoIo,cR8mסwjuNเ:"%%4ot^{afuzF8Ww1+=uE5_\gąT摢Кe)w))) tOӀ} HtNTB/'28 ۴츤B<#\<3/ٙi]M7Ά!P+qgf;j[B0+>sƾsv1qb1%W2fKMy3PFA2MoB6߿< 7d;! OSc&l5Q06 N٬QGo&mxY{?dדsNL{ISbw˥,)d,G{_3gQ/sҔvYiEu[F{\S iVl^Hofg`AtgAQn>Z1LדJcIC -h`n+d8I|I;!u:![-Wڥi~?G5ÆSC=L`htz~F1Hb.a&Ѷ3j\'t*a-0W8Lp0qr!v풎Rd^Ltl8Xd\`3&WfUZhmb,SKXI` aimG0cVPE=5@_L0GO e{Q _& 0U;1zrK -Qx9YH1X.B꽼-YpL]AVbpQ&qc)ѵaI1ٺn{iP0F7Ͳ(dY\[v9: *+_.@7G+][s͊[?%DS* ߼\M?,Ҙ8%}R(u}ܣARP5҅ !SfO7k>4…13 Dݠ>+Vt^M6e(ezVmPXcPq^й W${yf;aU|a3zKKOѿe##H"l.Վ)ىr/_`$ק|s}dlV4r]+r/2Y5 οl\Q j({ ċk#pEřⶹBӝF#U4̱rue >?1 28n̺5aCWB|~Q3zT|\z|SKQp%L8HQqLwڕj ^JTQ }BUU2B-0Tv*Q.M9.wi$®;beh2qLhKlNv"FckC̵U 8<ӭ'T5toVG[ǎU$ :z|F3WkWg-WG MJmi5IFF c.|nKBn)`ӺU |ހ,ƣ4Oc]@4[!)98I%<lV0 A`Z؟(9#o-5᪌F+k_,iz9G&^B>&絙ov䝻OsAVsew|sCyV?$MٙԅӒ$5V;9$‹myY4l}yf+bZjҜ* qОmB v|BIk ;Q ۑz2s5#5f-,|.r.O̐JXȧPATR<,ʬG5\cѽ8i_P#%g]N2^.8KL&c 奲2 eo@%Y 8_rw2Wd:?ObE0\Bѻ_g91?$}C=fk;ħ``Dΐ^ b"rxƟ壟ܭ<x6.tv'|>!Nw^3uy~+_PPЕG/c 3B?bRG]|,Odp ɁPVBR`h0ef+}2&L4v{'|'n=TPbu فMIrt&Z+WXOx TOmq}na3CkZd>N!LCj+N* 9((=Ch,ua+༨>1c9(Hlwg[i3"M';lQLN-ЦGmqhTTߦ6>ڛ5|-;Fne9mw嫢v?ACJO~sFɾ˕49\;Ss%HT6ۯڙH68IJQ9o߻_uS^bJnh@LհCPTvK[N (0[p[˧BY3~94mǾj-/ǐ?F"|IŨ6%p˳[Vt^q[R8 *'N]>8i, 4 j\"Ŀ~6 pw4hɐ&Nمj B!WصbP[XAm(0;tj+P3`´z Re^q1vP˔bM@B |vzf_quȕӃ: @q#Һ1;*r.GNa[FXG:dy BVD@ZENVĠF#f~p_цwM!Gq(O,%$34K^6*sm5D#";H`hku5y঑;0'j:+ Mӫú_̬KL|~ }XSi?Yk!tǩSwHv_=lU.U q>NHY2!YJSG"#\! OlGmvKs#jYqat,8\t>Mh6 u?M*{msê\2f|ץs!!ǾPW^3*<Gn ueZ&r.-F|t[{r{8KkgKnvڸΓ1>Ő٬}q6&ɡ;Ui=ʻ(](;BgkAt]LQ%P8%tp Z{>&q2#|zM{v^?XK<M4NHߥsgW޵>lzDQșA|m)VX-lߔvW~G$Smʐ{ؔD_$Ձh\,8AQt su-h(Bh@dD:QN_c vuM%AKRvNw3xy#4;5>U2MC̿i2}n5 ?2/w6Usg@[n~FN4鐵&ϢeK.}6,7O.hg[b Wl

      Mˣ\ՎȮY35` B?{O A-> b%IɃ@|F=[Dr>«fǶ[2)[w&XQMkK#FF.("ז'9 ȁS?8X!$[2hH~*;I'HY&5AF.& ,sDt\zVi|GozEXmENW^ȷ(*\5G{'a"M&V8K+ 7${^0\^ )MEK?H=-ŻHQpCEqV)=R+oc!!v N!_$f3>Op ~EM;gu'9y-8߉[KrDQތ{\w!D6<?T\3y!ҰHrf^HIE̶CN3ӣbVAJi%avco9bG+olU|qKI@ ]U?ĕRWxݒE40̗SGjbE}6MUR tɚcd\-vlU^[.s6eސi\*Kv+ 1o[TBL~>wVN{`TvwJ  y=ǵz?Phe벢Qs:Vq# nLx?`o)ݷfJnK#VdrAOeBR4wH8DЉ3sJiJ|Ô 3o }C״KװY-l裱x5~D jr*V= ]ެN9Id}{{21ܜ޺e] Mg-C3mm6qf}2Nif)|Pe3:G2z/Lǩ40`ZT-}=o -F<0:۟M;{1׻%v~hg̻X D.8 Z`#uImXLTer=A%i ePl)-BQd@u"Qz5I뚬.K]#T,, kka뽻b-($(YdeW?E1Ÿzq{P<"z<9GF`48#j;)Z MYfFdԄxΰ2ٝTNGZ L[BDC,) = l8vAŀrfᄇ^$1EaXx4.$\o junWő^w=ԭ:zf l,:S_O`$FAA29gCry@N1\hC/XP}*inP޺\.rZ\3l%]JBu:LlO"s -$6q(6MeB#&U$8s-^⤞ ǐKO8AL*׸aUϡZADQ]oW>W_`V3ͅ1Ed{شwE5'j-%w:0W9 tnW.(ք[Uk梑as6H"?a7raz龭G ?NIPhAćeJHbV(h!P{(>dm%u.\$FY`еUl~+/_9ߑ@t6l(Q1̬BU cSL"ˮNUx|e\hXqkhv h=54Ry(-xN.bW!AI+k8zy]n|M |ѫW`.*&Q3XO.39bWkNbvcQƳzw*x% FpTYo׼As )c#+S+aʏdTtn|XbTrq@/JWV._oZMA4w]/bc* Av`؈r W<9ΓH p?@穏"neqEڙK6`F,ᯔcilL.*Z絘 KEK0f-'YEstT"(ۘgܼOqJH%X3c`۱,nBX神 W3? <Xj ט%ĝs#d+)FmԐ'DpɃ#ؠP?0f-&:@`X<@sxw"CdxKE笠@PCnFlA=[Tx1< =6]]T[źXrkcn鷭#x+G#, b>McVy2Hkfo 3kCD!2eL1d*RUN}Poca3FE'^FАk`B s01La^}2hLҏdk gC?4K=O㲊"NFzzWfL<`"N=ȑ#%T!Zqmh^ұ?ñThoJ@J?jFZwPvi) Y3l Y 4cB0o`"i&vsjH/Loy=M!X0 ǖǚJLQqi/HJ9YfQV(W6eOQ>: Zm̎%.۳9VIf@JÑ Oy'r49Lu*HY =焝{[(1ۋ bgf`OZQTYVSOvWJR&/|yiJn>pÖU"xtIgtfJ6"yP =s ֥m}2cGifC}yiOZ!huh1XMiI}; ;rK6^=&TÅ`m TV G&3AxIYx2iDBh%N3,!疱S-xEtB^W^Qj,tᰉHUTM]]A_sFxΝuʷz3vvqi*;dK<\!usIKt?*(H;sD#uҵjP󳂄 .VlC(k pP$V,M}i8t-WBκw7Dʘ22؈tN d Ը28B\dĦNU(ݎ^:}[j 4GA,n=#,pNnv Bˢ] Zdt73H'O۲MCC"(JkEtQ)4YؑE X4d{*G2E(h=],Ҁ,Df6| ;-v(  qfKQ_ =4RW$`sfveLjvAU}ӴVx|`߫ &̟t.i7{#j*/{u Xt3NzexD7+*ʋ; [\ 0 jJ}BXX\%m Lf^4WF5e8AI3QKț8}t=9hPֶmBy;cJ)C·yjvTsIE暂=`a a`7Rf6nS- 1j'P{UgVngXuSzE;|&# RL.#ёZ L1T/RlD eK2}/MYc(.SB#&Td6U.5XsJk~ioOLJYY;4qdLA1obRK>Q gF[ip]& Unl!vN$6'Nj)7h,=p]O*" C=˕U9.#&QQQU'j)s :Բ[p qBԼ^vRPAL0m2466>9 R&oCMdoCo & [~-^ֿ}oPr NVsQ)Ih+fYԨ3'&v]J%"t*,W9IRg1eq'dA~9k\$p'LYPͷNm%G6>1e9szONKq^[eUv8H Xeu/dFl^vNA,S%CP$jKw^8Pw  t z0* ;o2 u}%\e>4f $w%w7vˉqbae\tχ }  z6Gw\=1YkJ;Jpϸh5lrDzfUaw*Moxy&W;h_^5ܲdyC}VVت(rFu "ɍŶ߹Έ_pIgWi`E3Vwo &*Rdt̠x0n\H}B @I{/\tiښ3yv"&#nb)`nTEJj)fт8#'r3|,z5pG$hQr7˩{ /SM,X Ƥ`jZlTn# 9Hg7W-ʙ j{Fs-POʮ"'kђ Kّamޛ!8z+s]Ym&`~7:㯑~HaVuQ[ gG׼{TF /(D;W{:0I X.G>^GTAgT |_21SeڐNsyQQy1_n.]g^ {akѸs85peC?S@vV̢@<:a:nf K 0/ʙ|L#R\Al<{ x?!waB1Ws.z;rFdos.Oglj'#t7ˋTs( *m%֝z/9jW ܋yeY5+ ]:N}7p\Nu2"QƊޫN Huvlq=ŋK<2^J;h.ڬf*ia0G. \ceX1=M{Sk;TQK+νF157;x;:q13&0*#q`֍E[ZqCp+MIHS" VJ^!{J|>9%/ W*$b`2EȃRYN vmWn` }h_KaVA56n !7U.@oɈ1Iun-W{1#Zπ} ȣ14 Cn|= {usD@+pud]CHIu)F=]=}k$=mi 9o3}Z&K̳(?i}zćQ3i- O3*xͩrC4V'hx`@鄇oZt[Qc'RZWm1ÔO7BTl }+&p`cL54') ʞYV/XJeR{Y9XnT& >ٶA;ޅHipiW> pU8\NPdyt:Nv{DJT{k5q> h<.a f*R񄍱r-D,#rIZ5$?v1<Π\ ?;<(:ճQQ' @] A$ǎp/lڙq) ֭"&-Om^*@ AXˇ/J7]yk/c#!/-&` TID1aP(LU:WLک1؏Vە|L5!y3MlbVte嘀4L-I5;}-|RqX]jzQU/D_QM vnM~IH]on4S6!d#*#Is3~eMSk;~k')LyLSB-Q Rr˪rN m8| SMS$.&`ߌcxMrC [Dج7c;r 55 ]%R8XB ikLXJi/+&P"0,(a0ėUႿ!%Fp4&JG2R@:W^`䜘7sgL7_(gd^*e>'*44,3V1CaelvYCe !GPx쫚{WhVOVB=7+C߃QTL#ѷij!_sG#nt$!F;Nwc~n#G%A.~Ɵ0rj; 873i&GGf΀zeiDֽ3 XIY4.g! Jg/t҆g3bj%=6GE]eOd4\%+'i`5Iv{ZD^ka͵<]3496<&pN`}inF"/5c-~i`AA2 c虈 L/BWiUZmʄ) S}md,lg mfD-$AqB]: X$z}x_dCquGkv?[?'}Ù]5 s; ifBηAG>4y|r.'GA'$m O'Ѡ#)fpPG>ÁHL[GQ(lKe!#1p.g7x8jT靎t6;]e` %Uc=AA>'ͷm^Q& sk'7tS0NɎ0?>;5G!Xt`:.ŵL2Law,Te&D3-εd*\?ܾzE/Wz%z+ [wN7b5wI!%}]Bpw`*Gy?MIkϮ AXI 䓒͹5a&80ᱣ6z|6WČwDR~Yܒ2^ۉS$}Z pny8nHڞCU/7}>z lsʲJЖ5\uE|#)/ U=ߘl= n4?JV'<heeխI9U3V"Wտx#PUV'uޖ"uE z.-_?ap~>5Z8rkf~2oXGz |f[F~iII2!,rwTg뀍+Q5n?r}2&ܗT Vá\Q\ʙN~1A=o44dMŔY6z2V.Ye3&M&˄kb, 26!L PBFxn|-$Mk‚U) U;@Ia~vW:hMO8s5o͏yz!@&jtbqk?M 6\ D8 qjQEc6Qtbg"8(_@yJ>Zx"ƷE>4"P@8 ylk%)uPo`, cz r jэ8J)#s<'t#f "||c[~nsg7K==2GkҦ{FR5IH|MŦ\u NԻ&a ;|n:%%9,R`FI9tZO9 JոWAkv*c\o,+n<=(/ =hX jhhaހ{IUԹ~&3.G*Kn| %4G6Q"_ͫ,?`dc1'U߱|<:L|p' U7-=,(#nٵzxʦ+7ǜ7%,&^SzBjC{39@ !,F!Ȼb&#c2h,o!E @8eϔ1u}ŔfH)OɟVWsà3 dF16wFuSݩ$V}=Q˜Se_D3˝;,ŭFε}Nb3=4ӈ@odnW] )PENꎹ*rƜ&c1Ms9Gs=6F] H刻:A O}72Hstp0 MCGOHȮ?iE13́×8嶄л$Xam5G~\F tcHꯗ+J2J_.i*H <&)%7`9fJ<QsG7Shn=JL ]'Nd8+LmGy+-'6y-Ъ-%{_ETר`lF ’SXI̮Uc}еMlU$OJQl` XoDүO&E s,B<spKj*;D8QΥHK2 wTu/ҡ>J^<` @PwqɫS)SмKf;E '+9ƭ_lB4;JPew%'ǟ&wD!Gv`*'g (l`v8݂Mj8u4 F|@IzDgZN4-17:xz Д~27:5-|CčKPr2.qOi2 IiZx+D9&> ,H*4uBjf ` juU`<-ko KVGy#+vBG?+MZuͨjeuWܢyxՑ`"r1À>3Ec>^jI󀞈$npVmJWVirY>xhSí%!2. < Ú%"Z#jY'ycrQ7!P SeQOZAB\!*#>Ki.vsHRtK&"pN+!s?iFw )l!W,^!h3kG_wmUѬ%ߕ"3l78xܞ 'Wd zǨ:;C>. [LxKWMYL 8rjip7l\P$>"x(%΋$ ab 6$ܙY!ϕGgMN򝣮!ݐPxna-fi O,vULVBR 7 |3/r@1\Å 2&VaDaKo'4ہ>EnܕMWĹЏ+"̄R2!(4csS -Wgw-􄏛sMU0;;6ٞ6u<1_#\ : tVJ8|,c³lVY7hj*.݆'0q7+IY^)c42|U-qcnU|5%9p\0II#ju'Im-}ݧݰ%o7 L08V{2 1ntW'tY8[l<%Bۆ =]1Q=i-pҧRsh,퀱#IcEOKu7>?8Av tp'`Շ7Q#~0&vHMo ib`5co_b94z\nEs;r[>\.P Yr[GO}?;Jy#3-j20ߐ!tՎZހ`''yerYn!lo$4|Z \ev12Nχ!|mش}`6'(?`")Pl[Eݻo=Snцhַٳ8E`}\_8f9άWk{{$a %wN]s/fCt4]la RXerR,):D$ųk~BPg–xZgG+.nnfiC$0i,y;0"W6Ѱvn!_W(I5΂O aۆbR,Oz5C8Ĉy I-k ˥{%)oxN)ւ̴:@R{]ڶZ ށKmBʳa1hF,2avcn"KsWwta#:]dfQ伇<-7 P+M~A.`|EuaHu&pq6~!0 8Vkv4,qge?}83YgES8 47]e,omzٚGr j&|nZ"$lyZclѶJRW8WN[ <15̑?[- A&,-=e^$kFx$"I7-?wR\/]&a9# I?,ynx^d{%;:Uu?o!ع |qhퟰ mQE2jr ϡPcoM H.XFdR rU)s?^h#lv4 vu#g/*X\CCUEYyqo.)FP L($ө.D-sL$HefgŷdhӀ@ٖSx?T$-Y{m.>sCWڅy{(^g _N d0cƥ~BSgU!F(mR~TFc+&6kurv$tc S'#v3qE' rN}VM"'Dq3d XDIGcGuX"U dܚ4P YnLQmaG*[wH-d{ 0۰ܯÌjiGs,Gvư*?w$;uxjǺ.3z=ـplо_XS6ß2"= qׄXR;,|Yk6W %bA#%iW}b-|Ӆ<|*8ԴJ0aQәm+yadFlj^ e>uqrTImRsq hK:e^#xuCdCpg@wd+1gC~+'0#}?O]b JpOIp {xlkꩄ4HI Rhʋ~׋_0 dBj]! e}c'V[G j@J4)(tg ڣɠU|aE */Y{ԟ6  8j4) TC˨O5$Xfb,OBNxx 'B1;>dc3Qoo?\ q5;x+xN#EM7bzĖU7H{$kqw4k!48Po]d6=,j\r <݀>~#LlIWl~ l-^m17==DZ=߀>vfl_AGv#ectUzDOűs\wt,  n'_)W7NwAp:װl=`U0 t#+TQqlÇ>2]KCIRGh' QD!B"*T0H}xPShjĶSx-6n` tn և؈oBkԳ6oOb5PX19.b1&սqRnQ߂ 0|:<αϭ>&tXh%; 2L 'v쐜_tg HG7]ä**8ın ,]cSapRBu yK`^eo@81#ܤ+ ӫ ^!Ք34%DUqc6g#ps /N:_߿ryjJFE=$a)1Uw"L~V}PtiWyg.M2t̨XԍZkҋcئyaIwM)@x%AZMC]@{U31.b `㯠~Vf~m7dg `pawgCS0;xɅL7q[fRsyjJ'5UaƁoqZ|ޘdHl -t>ȻZxF1qװOy/T\̙ilY F^w;Ʃ܇8v)6Qo9+MIƜZ;!rJ@~l1PDF JB7޿Z^}!칱S@ mWmЄT+-@1gBm,˳"`'-T"(QnՃ!Wh #uJP'>!^i%5O-F6NhSt@'bHXY8oE"nQdibLFuዙ]IDo׫ΘLȖKĺi6."FLC )HEO@ zhqؼA`wnPL&L so4C㟨 @Ō)pe]-ңˤՁ{_'|TRk4Ђq# C ٗo~;&uۜJFꄤwi"-e"WZ`AOP+5j$;$Wn w~(%t|hVޛz aV]@I>-G#(p*HMУC٦}xJÉJqE)+~I|u ܃Z>YҪ),[塶-^=%y$̺kDӊ[nd6DLff:hga%d8I9wY"r45x=ΊURUtd3vR!idd2MQ]WC3?5Paa_IWWpxDnl%tm#x/@5WEX@r _ڏ&)%"0^'N%BC nG 2qflǢ=DS*ѹmAdfcmyyzM{Zу 0hIܒߢԚ.b7.'0)"!< N %+NQ[x;ecٲ9nAW%oj69x-R^nAs#bװ:OKp 'f—e.oѿtb>`(t?aEհnRV3ȏ e)|`~mC1 8?p-aΑ&=h)??-(<֓0=cv|ƈvU؃q@hl4 ЁVzϞ+`B/GZ_R 6/( =O]\|=,Kg(oᙰLVv{bh.Y2C_o?WRXLDYWRmwUg8c]uwc(aMکnt],6Qvg9K>M< SYd =g߉T9 hqp3S#!X!iew6t'\*_?aί^6`͠0C9ك(OXs9G]=>yz6&+jKFBo媙,CyО"%d4d-@_ ϜTċuHZu~.j֜Z<OY<9zNV>‡M4E3w|60Kr\d$hTNR/ls.p) RƢzA%-TR\blD/Rϵv[{p@ֽ% 3qk4){֨}~ׅ.̿F<5#`k"C"Z`쾉ᠰ"ҝ$il%ILGC (Hj@׀^an7c/V oTԎ;B(Zx*]QJ93 _)q dԬcwTlĴ-$$ECY%uSi7Ɯg*?Hs`= P($ :g#cX^"_Ɇpv`n5k]zcɷ VjS1z?f5S2I w3̌f5|{xOH707uW#!2b`uYּמH&M(M"6Mi!Օ{v!JdYi߇%ͱXF"-&!:860t@ pNI272+z;j~D,d htt[v+:C-d65ŠcdNa0Atg* W:H^97K[B 1vI18jS)ɉ+zz6o#U OwPWm VEE+5q}nV5Y]ι\2}a` oI~*;o'h9 Sřp&reHMFDz#pT o۲ c穒*5$M'M{w<42М]nWjb]Z3PE6 r{tK_rӧ\WTL[YUOʜV#2#>>[YW\O0߈"d]*UTS#8I=_ϭO\C.vQN _CUPsF`aA8 0KݛY.MS:DO>Pl 'u>Ħb !?J*jXjpnTK &AXvU4XcpxaGUhS&gJگ଎O'M4?~O,P ]9@t2+F;E0߽n3zpD5T!4"26:*ө#ދ{~ x 5 <@c#eX-4‡7,KYnGQm8xY~Qb ^ozwq}lwP6)7UNl^ 2gI+J:qV`L A8ai֌'̧ $K|McP7oqfMdESMA 4? x:9pJoJl#5KUC}N0(GoOOI[yK|LZgF-&M=viVTߗ2llm 4z%BPDRP«/ /40AB$35ߏvŒջ,Yv5_RaO!E#h gj+S\- x!*v=T sp(ηp7ؽXmmVկ!6CgrdQGV tJ=deNM6qBF[ ZL+C\闛hȾ.H*9fUe]Y*pY"l?P19Yɝٌ3e u:t&r\Lc">JKpYQI&]G =\K1U_eq{sﭵ$Xg-m| E@#,pjR=գء~~iKID,I9H$tup3Ɔ{,Լ >P+@c" J4-+Ôa1}=b=/ Min_YY^=Y)D EBNxơzoc%?2Qr{Ok3a2aj^)AJ́47pp+ tl^2Yj.$rbĬ>r4nnD ݮp Q[]Dy$CD^<[ZxO iSCXI 1׶؏R^4z3ŶfRׯmcZG bc䇜 U)>i>c,)~ot5^,9yd 0j |K۠sFd q<{!MOWhxM)^ e%CÓw*=.Fepרmvy\1톏2zHcv@sFy\o< 鼼xk۳]/BvL߯p3=rƚ=^9V{'CKЅ Uv)bChS5h rm2[ڶD*]8_eLGGqn f49T'Xwbqwă`YK\GA{UTZ/kئ] rz|$`~U|Nk˫e/n|w nIHL=<.g=M{w Q$){#Q@R2,Z)cV+,^0Cxs&L@~!4iJe)m?{! GFDiع Rhҹ)Far^(I2nz9oh[j~<%Ӡ{64ۀ8E\_13e+\lb4@f\uV*;-B:4%c^1TIq;=?^\SWr gX\ )i'Xy%av@Iѹ3oY(߯|ZAn7}!}jk[jTڦہ*T]kc&d7(ޞ{4_&++7]@xή߶s'2iX2a#Jj w1`'T4yG.^ s4{Gh%#Pc./bI7w6SR{u~3rKvg>5^yg}DC6nI1-4+GqӁŘr^m-Ru#Dtiqv6bZ;^_9R# 򚠲u|Eq!l 5&q/OnxSǰP@UN8_K]s04ܗػ=^UǶN06(7֗*2[˖Ҵ` ;҃ OמfWdw ^> `9{5ړ,eßsx[S*+6W' A-Z3?a$k6רTʲ -p;eqc Np.ܾ@Ag4ri'ܲ=H[Fu0fi%eQ LJGp [\(sY- =oDl';n Pٖ=U.[ 7JA˶vA 9wM -  gF!H|pyNҴfs\y IUHjr"J-1im UsSSFEB0^:V ߍ +;ZAHأ׸#hU9Wt!}k'Vm ~U,\vM6YOMp7n5@v9I3q-?Q+A Q65S{v,c̟M_|'B!߁! X}ܓdPi C@%m|Hr& ^ _V3euX"W.QrA#YpsSeHZ pƕ)0(*gS`A8u1ƒlHX 2:bZ?*dɦǣFWR肮gpZ׆sQ;CݢH97rH %u鋎|L$'j3?rZ_JnX1Vx: 2έ/2٨ǀ8H/L|?I1@0ui^ZBrUfѸ_`;cQJdnlΰ#T*;TTMa["yvo|Eo ZY2T8і_֙Y Yȯ 8' ~>Y3t0p@tV*_FVjK3F[`d^t7ѳ&[XLi;|$ϕ:BTK"1k j{f#-D5T$&8ƲV5p%~rW]}Z4êx-AK5WlfM0򟓊(-tZK=W6ЪrBLQi⩨aЕeMfWS%7?mt:=ۯǸ/ ZCXCW'h&\Y9(ꞦHf1ѳqxp/8(7{WJl^<}`HP3 `Ge@!r ԇ,O}`Z|ѭV0US62A3ZZRW '>@<`O쒇?)&WZ 0'V½zxK:xXG,,u&utH&tr*ԅ̴kv8dbSIu.nckD`1ʓzݶaNⒼǺ15 4Y%@ ̢l@?RBW qsɦ3_ 함 6(=]/}P"!Ĺaf1+EC֨rՌt.3o|gu`UFTӥŬ{?==~22Kr_{uL̋?k(krnQ^hKur (\\h]{Z㔛f;+giO6K$)-dնafԛ) d|/?GTHIO~C Z^ɏ=2ω?~Hh]8r yb>1 B|B: 1*O6ҒDސ[ӯ|ZWon6clK"<'s2bu'h4eMV,9 0#6 nv wmi)5V1հ2OW}DaXY5ӂ*2*Cm^ s(WԼDSksbhlO}!!gLܷnTU'\Mۍ̷zz"_ɏd{q\>2CUE&J ?=]w -.aH%Ԩ+wi`r)knZ̗G4O |-b6R~p{Ngg*Id `(za J;xXilHFet,O<\ G&Wؼ!] uC;zz]jY/$M;kgB<>Y"{&\ 9La%Ua.`h7F@(Uxу t}?uiB_hZB8rRXCaVcXbU:)r< we+ut2Yԝxx uy3{ҳ0;e$ڧ')Ex!f4o*MVq܏׎,@4Hv zb=sOE[w3e@t@%^obq8•ߊEv"U &{GdGZ=',L"[|TyoKAfym6U^ Nhfe ն0" o׀ye^G*$-Hwzfii%)ĴRSgy Ux;8<\5`pnF{-6fNF}d73Zx2qKՅ6}Weh4+0<enjf sROAkt[s I/+Љrw,1D~4UմTR5E0¯y;Sʘ=,1@`qj5;;IB(+;lvH][]gLka碤JlRm'hJYJܨ?%C,,4z1謨(Maٸk+L\@G%!&9?1x "IV:}v)U|L.< Zo8bJrS|k*_e_8v8U|WRUw |a34AOOqQ:!uj ZePm@s!&'l*CIz= ȰrySd홖oy6YO0[`ݐLerk4ZaOhSG;"y}me2NK6h3] q1i,+\i rϧœhX\N0iq{N>T@?F( } b넶P՘Іfۍ8O*ưfQI6/=Y9D1 }ys b[OKI 'К#3ԗFT8lx&Cz=RZWw N%Op>>W4W\*qOd_)fusho_tvb' {yFpoXr~"OyAɻ.#Ab"K}_kzit'pUd͒b8h9ݍ/X) qcOw֍b^8b @j f~@ē 9 NL3zb/aKegrЅ:P}NS0Ί[Cv}i+")ѷa臭\ \D%i\0̀WH@q 7hwWÞgQAХj @Gk f0d\7v;Dvjp;JV^LTLb(5U }J00gr Y:VB3Z &-MZfAɥ6bw/iƁ svzN 8#F՘11C$R8`|h7vIfu3NT~nb`I Վ?l)*F5NTTf-E|TabU#+Q'tem:ve4Sy.qJ'BX0Þ<قW—c>OH,Ci_c(oi6žաWhmt>DPUc"b⭘YxUUc^;`p X֯p(J8k&.x~|-/%sB 4poD> ݖ[ v`6y/ۑm?#)V.˄3u>[|"cX1ή pPBH\\Hʬj'TQgӀj۰N$TeCmYULZ}!UQ .F)dA̼4'[\vTΨ]9 H刦\ οO,۔KEnI]BT^ǃz61`{)-De_V+J!կy ZaCG!gmLie O42~ AX{Cw}"!0@ e:фVb3;Y%qesBe|]ђׂGcժK%4z[͚~)=1e}8C^-*DdIPGZJ 3lnwkn;'FVw9ոJBv0M y^PTqLP4t[=\"XI&Hxre~ۯ|XNrP`R(/T^zfS߷HBuE//$Rd[D\D h3~'`Sΐt K^?&U- ˗Ag_lh&a=ٜK1e8ⲽ >ڬz͉ |yjap ' "`܀;SxA, .-C- ]W~іVv(}&B؇r,G$\Zitx+C.[tÕ_7Cp |<-\"%!S5e*0@%CO!69ڷM8v[ vp^DVS8Q'@;U`z[}:2.BoaJ!An(%{a5 d8uʯcKaKSF'' ^D;tcXAJ3-FER;=ў G}}}!dUtumY"$G 3P}x {԰I$ZD#:7A¯S,lz T)ijCFQbQ|pݵJx 2,F0Ɛ ۞1=Vٴ;E@ zw 44LgrqTsXC _2x~T}z{O_KL,nib|`TZAJ=2(1XwA 4M)P)F08rok${weJ^[:M1Y&%+Umj [y6t7xS aM.dnfU+Z ǘ+KqC?*Ѐ8صl(kTD4 ʚA `{"ۭ- 0\8zbwZ $4// I!q~'XHOm>wSb8[5,m,D=v0卼-؆)7p_@++;pnN$+ KYAb;FܮJ(Q}e'zʣmu4[ңGZ˩0Tf\;ĝk2zǮFqLuVp %' tH[.˚`%=7u`I*'l3㫯7[I3=fwe5XƩ\hbI e.U=$fZ^$1ro\~+>x_t؀j)(^®tWG)Hڿ`B'`SIC4^7Z P5'u^-lωդ3E=)CrMmkYL4qxSvCP'׻H O 2(b_s4pV g Dp[|x.CނnO!'"pL)tQ"GuF7<_R4oJoT6wk(K<\ NDD# W=˓Вbl'Xt\}ozҫh)KdOmƬ\d.kV> ͨZ䠾fzy ,@D3ĵNyЈt& Tz8@֠A),@Hv!5)"砻 VJ-s,R{.bC8) =Zn)t܏oBp-ݐvqBo!1-9V.U\֕cW'6^^O fl?Q64PlN+XY8Cnj(lY`9LWmPJ_},Ù"9|/'yM7Okf&+BMUXF= L߸7aPś\\ft6,nnijKsخf90ZѡxtEʩ ;JW²gN(ԟq2^o[(ᵌ.w6m6rE@XeMXf|YNh/1;ݱ8-VMPCsxpJiv |:) 5%ThA^kF-Bn08L Q56[oLfΘ2Rv^gB#g9 {ok[8,6I>C/٥4yAc?f 3͠u ,6Na? #`g\3Ӷ|^"=# `DC^52s'A1L3OEKlF(bS46+U1_w'%sMpvv*G`P:K~ )8 }f8/sI-Af_Aq SI9>J~% `t@XމRROyN s`zm K~kح78RWEe&6~ q-ut 9Aɭ/ o2}Wo!%"[  4eDjOCmn2;WQsHdRp0ՙ@6EDy=|$HGL T75qeChS W: #SJ۝Ķ y~G=n?+oU)ZDK B= Hl?!ki}FnYtQ#|ՄtYH)[5!|吅T)4 Z̈7qAʄkj-.s $NN˭VN=Ju 0>wAmpo0Mg6ޭ,yf3 w HiJiB$j7\sh7ar@YT亂_Xfi?&V(U'Bi-'Djת71ϒDbώ.aPM OdRly]zSqt^G˟B?z(z.54;)u2QVw38FKu( ‚1M,?Ʌec*q!l ;rbO[J;*:Wxo Pdd ïUQ SM$ e~]z2MZ,$! ͷd"~X@y,vPM {AK@ϡIHi$ԕl& jҐ뿥Uu>\}#)p]y%wW"XЪ=}noH]SBf`FD^Z 4!wŵ M5p "[׺,mSsQ pNl=+XGw/< 綗y aq7OGuD\/I{FU5B(gѣjV+K(]RԖ_o.4ZKϊ( 1Tb8SW -10zO[U:*𦟎·c2;2ʟ=Zyl)\zU?fiߚaS y!bsY=_ *l#±L> y r;Hfڴz!P-v^ky-BD_wۦs yO%]+1|䐁G&H[ Wz^)hpcаM3~e_eqE} pz;O^<$/vrnH"86\lXmSF.([/h[O`uO0nF˒>ҋaN2qV8(M7l#թȟoMMi!_U,I!%z`R` J_!JF1tn(℅C <3ת8~FZ[^Æ70gSSisx9@f*ǂ>8lR6>*>iV#[.=8B1dBYe]s&nA]*,'a%\\7J`>{QXdǿXuIaS}8m}Gv8S?8UR`Un 偔*ӟHtW$ݩ5n2濾xh3n Y;o*ba/J7>@nE'  D'_6"IB玛,fo>enK}* A[3^uzqk]`d=6xinVs,g#ۈ6Gue>0qQQ=52 N3vڛNҒMCǶIPv;_zVB#f'nدF(eK!]_iXnÎ3+yʯ\3 ٙ*G~[:&xxZL$edAQh_TL~@/'OƱcׅW^h??O43ѽ0Rͮ ?FJSmW{a+2evΠPkYu|=q3A쪨yd\"d4MFxMhpDstElP4a6= 6Lp@Ȥqb 7w1HmBgݧ2 8|Qa15I]5uٿ+zT k]ʜ=Iu /Lu{$z/tYR3e,s5s]IhN>ҽWIUnZ5kKdv_C Tƴ[pnbbtU5soF{wE+OQvޑm3yt UfkF:R4fpc90`̐i O0Ic`Ļ,HqEvVh2#qD弭1]X H5O9uSU%JSj7cđ%O ^* 冏F ڱļ4U۷}ʽ\(FHA1PHrz>5mnz1Ej;m.,#Brcc!(n|re'"R{Op*Kh/E__xhY>:Z-0 N9u5QTY4$-F "$a3bߏ.:,G@;THs:^Sm@`xkME/$iF9r&4õqJ;2ާC6DmxLL& '\ @zF(Z~(Cqq!L{JC,2EB~5PyxsjKFf~E&bP!.eW dGdv4 |5iط[6NnqpSJVR4'y &VIz`Bne+1c|#|O*{‹\kA0?9^Z$S5(7$UfXf>6Gt֬J5td |k]]v^OlHVR~ &Uqջ9S[`vʟxmģHzO󁙎dOZ=Rɝ8nHA5\{z> p~rtl&N*&e W~ZO( ʹmDdLbW,Q0j3fʀ6 Bry0Z* J5х Y܂}¬1[;WUs`y]Yl _40&eHS @Q>}ڣ﹌mv,~#B$iwU_#$'p Qy?ds2/6%'냖'y ?Ut T(a~̐ WUn;XD}_l])l`}3ذ"A8Bi%g3H?p}rP:M6zÃXݻ0|8;.L 5l B}AA2˴ߡ%>m>N LPBi.|cD)*OƩk "(4Tnr^e^"sګ8!r}#Ä}҇,o 2[K%vMl4FY}ez!GeuCjeKJ@*B#$C&q<:!bxD~;]+,9E&LhP4Jsm͗BvCk͑P5 (31YǂG]mca`32f?@β ;__Q~B!0pj'(ފpv#H%jq;\w݌/"{7cv(X>TWQ%*[k6^blld=S3t 2"6/ݺp,x {ԍw-n2F(C8pd(}{ObҼYS\\9jոȮkE(3[Csf7`N {NZb&:O^Ң4}3!.--ZlZz%JT <7.]⃩:aCO,$9_8!]z t\)hƽ=!:mdS_4Y1f4dP}Pkfc`@VPP? lp3@@j^e̙CVe +ZP|G)rB\7 Ȱĕ4`nቋo[8ʈVtx/UZeV6]*cZa>&8?6Ul-*>( lmIϖE5._ 1=Z{64؁cdnEL~NJf m$Rt&4~BKjn9_V\@2KhP7Vk6Bk>RV&yp軲a+Ȅ ~l`ة"9XȈ_+h&cL4K8Tn3%UO.;L6)|hMzepGEk%lҎVԂl#P1K;aSuG]O+.LӺG5Lۤ-f.v/y2^[R)[*5LE`(Bf( wZQDωLbx3䖅掅LwBZn~Ƴs<"Fh]ĉ&|nw,Lx̑i ٙ:n:U=X;LgGgqx-BuXPnhDgh^S^ daџ !EEM$:dS 25 B\~S&DSFDգX0cj>8|J{ eqfG[\̛ŞV&?ZLzpXoey lOws`Q`'ׯ9!XJZGV 4RS`AXm.+HÒFx"[ҊUIaKÁɔS Lbݰ1piQêYej|:H.RV^ ġҋ!; j&NfmyR/<1I˔6=k 씢[b$~B4&1 @PJS]8k$xYm΅XU} ẊjD@=u5̧l9]y 9Sv嵹aT MӶ>=?+gۆgy-awJijl./ԠQnO ;'9d%Y] QC0"Ff!bn ֡iOYNWVo272|P=&`fJwDIyh3ueF.jua\4m<\gD~Cfy҄u9L@7`+iڇ I!̺K1_mݭ}y x߈3 #~.f7sJ.fÑ&DCbXN@U)`IZk+Y[ =upPM-3QG;?wj3.qbZATnG8DI"XTi}kZ:@O2)@:<Ƶ:[g|/= e3Njyln\wӒ<l ۚO.+ZQjLJHB,&\<Կ3K+L[FvE tyC١7k\1sFk15P)X~~Hxt ԙ3v,n-*hT|FG})4,w} ȷ"-ڭNTI⠰)R 4]t3}犨MCrPZz&gu_ʹ,3QDၿ6L^7_$W;^bx9.ZCTi'aMvgHH^5x/!DO+\v`AOh'CBBa?|д;j-8?c綉8!S*Ru=kiyL4Huxw[9Ay)ιU6exs޻J;<.9-SI󚎺jIJ Q BgMiB&l#\^UM?p(:ET8nX謏 C){;IeaC-QQ"N3r>lK^L_\3rOy'}1ZAR#ŠB+aDŽ-к*'=/m[댡9|7'q}1¡VeGHz N wFs}8cvu4Th]X} Ğ8֘x:7<-؜ 6q~z?Di7-g(P]LCa$N"2: (A$1ՠ;p.&. b_fM##*YlI_' vs(i RQJb9vca*ŧ`\mߢӦrc&V=LSa9zߩ߃iH$A0 a])|75snUW} ĴND)ܦ$m=gQyR O J"2@q%)^eL9`oC^ ,58̎,J9M F؞JG!Yx.q&$g̘Q_.⵪P\\g &f)Ԝċ Ȅ~d~A\ !̫*V&Kj~!Lmϭ%̏mD;FtN?uR 3q́Y.ʽ Fk|xĈubazkKA=Vfcp}{<|Pפ ]`fc l¹z0ugBeu|sQixG ti‘QU^Z{*Nk;TJc,I1EL w\VK%Riяآ*O?PwV.fTg 61MN2,߬YkghxtK!#6itV9|.n&M>| f܏B>_Wۙ;YPx QjL JbACK~\|eEel+J:6bwXByc;B}%t9>y0:`YڞI8-lgLޱD9t3S^6z@ԸQZRΣmP$],i6NJ;F}eҴn츻>{?!;zS6ߚNe̥oN6!m9Ƈ{+!yxmrm@+>Wk H؆9]m#?`A(~Hv:~$V1i`!J5.ڰ0<`p,#D5`?V cR"P_fCR^jF2GMAPS- ,(d30^d Q1p{kyvĪ\ 5vU$3HLHL?XOȡ Q |rR?k7ٲm{űA9Upk3gT ~H d3^;iwڦ9L!R=e&.%IQ{x{@Wq1a@S)4o,CH4 .L"bx0̏Yt3Y)KEdFd3${W%2Fη cGjpqª5DoZKx+0*hzjMf&!GAیr*gʉA-`D?c>mcx@Dg}3"ܿeiT GS_N˷}i<#}@G._qX˵_{ #G/4Ck z6bq6.4VCqwr/ Bie'?=ꃟiBߘi0СZ{↶,L(O0&65 ZcSJ8VY;&ZTwQʘ'uwk] 0Cs˖1MB2*UEˋиEl> .u MhK`Gy忈|eR~~1ٮbݹWwînF%ӎ 0pVU@HhtP_2/ LI7=`\՛\LC_Rǔ`rjLXOuS=#mEϢqCZ~A;]& -eс A-%X"{%JRzۨ;sYvftc;m_?\Q^|b3N%Q|(nNhl?[Mbnw*|Nlg:.yF{@gz ^_B%e8噪xYb1u4؃Rd}|kBysIIVƎU!&{Kke0\Ty{4/CktM*qmu>[/Ro >*rQQ4\vS^ՐRt 4[Z1(%A;beSUG1'"yeB5TȒ.O1 i/2>Ou`H{e˗BN.b}v*&#0dMuȠKDls_w[/.)P;^Y%`2ud1UI3JBPH!T=RBq!8:Ӆ,Ճ_0w!_P{Zj'ON}<$A}%BkKSI^ ʚŇ8v;7}J1[*rа6dNBc,cgU[/1/Te_ 4EHA}˸)^;>Ub%0BB0U{ (u"U<3qYˤTC%aH3D;l[n%d>Ƌ{l;y v?ΊBR֐5O D:[@OUewts)D0)"'#K|Hpg˕ A w,<5?.CԎ8`"Km4>I6bq&bzžĝ}o׏0`'se?f5|z>0 kI'!eOi<>|KD2 ?D6jLijx02DLLime06'1!nّ$GaZHl^cO"*d҄B٬>mҘ > ~b!$B;ˉLÇOٝfNC8Va\ 𷽩 f7\~|]!꾺;.#XVjw~[  9Ru.?zMf[]@zA1"My4aa%GZ:ONk Ɏ(JҢM;vv3WQ7UTo>z5X~ʼC8SVd9y7O\"1ef8g}2"Z2OdLx2̖kq*5y=1Hޯ܁ ! `$N'𡓑ANfG6c8" *c^@4+ǾmOq-xMpч,Meлً?+v^i7+b߇3I,7Zt.0E&f䑚;$ %{7t:%17O <.G|C\olK/&HE8 Nԟ 4sx^us9GLq2a W5]rcTNSӉH,f ~zv:BlFm`/ha8 t¤8">aZ2 2-XY# 7!LڀsN=' u_HC-BCPhM#}2 V^L"@OYGUTeUIڽn&Fw@uDbXe[Ԫ:[}UkFVlIĿrf0K8B&/9jݠ61" ;J^y/ c*r'PEݘ`&Zd Ao|޽IdY%a`RqRIl1!m!#iUedgo-m7v=XI`W/CHn`|Q钨Bg+N{y]K 1ڛ0vhU0`$@. i|ٜ 'ަ[ E\ZjFN s,lJﭑo`t-pml Qiv9[UX%e*p2\#إpx)#fȏn{^PgۢeQbwMɅ Qh~4s̷I~MtE'|(*D Za} #QfS nq)ވ@NҥV5},QV)-}s'l]ɶs&GuGޠΡyaV|b+y-])azaفzޕDM,o"SU)`o(ݒ ._;)@lUxV+Y?f0F1bdWJJF6FAGxNJ؁O *5#cϚI$ _=$0R(G)4mĭ,C6bId}…)zbAwrWY,<.' \QK9W"(.vIhWa҉Ĝz:n+xM|_lyTnàjƉ*S9ވLXp?P 8"sq\YJT*4<–K]c;߻[bABP ~]|$v gXW;G}$GbXX\^q hE[TOȏէQgPؙTUM<bRZ-Ô#S_H*0>YV~yږUH$~?e"_!. Q)|M I/N"g !oq @& Z ۬2s0O>GXi-8&2-f^*r`4yjk=_,kPB$|'q7 FGjʬ_GN|Z"~bTo>Ԥ@9U~{/CB ?R%)3qħwQb^iNYrL0)F"lS34+>B<^⪮`BaVN ; ȓ%ޖl֮[xn؃Aj UQ@GvG! zQs zCۍHza~Aa(>@^YZD ߇/Aa6bς1z9;,?+jtk!%h<<~y_ Os73ET4p䂌0_7 #@P!î.ɿkK奄_}0ң~B-Y ye1z6ņA}q%GQDe7·Ȓi=Pyk6LmdeC1V~ݵk6ܱ֌ʋt "| ׆ym+Z&2mͱQ;u4\&vsWY/GV _]wτ ?>`5t؁<ȇb%qF.z h_fc\ у>*xÿbzpj RKwmˬX0էTxc/4tBCKb$!5aHȶ6x3JA6ӪDAz~>\Wf 1RZ?c_8(B* v)7t`jtdse_  5aޚy*-N]gYl$.ih+/To(Έ!T'kXlCV8e蛰W{'NVY{d[{]é̯ htܪ& )t%xa8+[DS&gS<, wp}Nce3Cxsa$8DA)2͛ĐEB#B1 ^\ӑԳ`""ps+Sx&PeWKMk(Gd{8÷',mC3$paW >҅)SZco0BZM&* MB Ckawhl@픈hVJ5qτ[ RjşrH-=QͲ ;U8yEEȼj+)/-#e"x^ OG?qդ-.a^eq|RwR+.7"Bu 5v!nHglx(/ƚSsE|᎓>HcCV OJ_ed՝xIx_3ʧ_+t׾W{J=X5=8: V䘺Ϝ׽`p#k+զ?Hw4B~5qIgІtY<~VĶy^fW|UcRfynp34F#t#Z`i 3EZq$<* :Y,[`f˗Wp^h0/=dsHge9w! ' v}7 4Fi1}$vu/hv051@GW@P5oQg#DivRס+V9Ye77!H'tL {qwQiHe~q\i*΀ 4rǥ\L j=>~ AQ|-.@[ީMsT |J%U/yEnj_0Ք}cAew6J 6s._JKʓ)a0>@Y/}͹T|X9v+Nx0ѶNS.wuM7! C00 L*D TQwylU5JgU@Bn)ݪBN|H'A &71uERga[63\ˉ3xZO @{+p$Qր CnxcOyC R/QR`z*fe%$59|5G_K߬^:F߽/RChVX鑮 W0GO-&@^3|lX>&ˇN V,,rø$mSWұ#"3X2Sm`X;x,.LzHDP DMkq!օvgzuNSZ*E pZN@)R[8Agҗ9LOGxIXI9 tnG٠D-#~i8k &c|m/V}5`oIm̩xgTC6*gځj5lx3\qnz"2zׁ 6Gv P<{ON詺я2p~֋^ئ e;H߸}cAE޽s"-]9܉ə.Z>`1`'愊JDf ,+0L>1͵$˳ǽVSW炃 Amqkޠ !\ Sz-M0?9:8'mﻺN6OaÝvZͥ4S;%e=4qH1ywӊ"Cb82@]c2y` 7mOVknLsAUxRN fXl~MҳuS5`xp+G+Dzg韴X%fc:M A̚ξp..p_/ө9FD[421[v"wY}\c/Ȁ$q>nieeh^evs hJ+hrnsVO];7x0/ʱ+o C1 TH`w%d>n.Zk(&̻OؕkȠ pXf70 UHP<#3<с=)%aӔCY` 3*H (ZwXj߳FRfE1lHP\E[/8.T-!_5 ae}Vh򥫗_U@h='@:{/r:)h"t{0^=6 95iv=KLx9}0? 8cc))xGJgemvX,IL6({{tS !yk_b!_ip\t <1pvA;^+]T-0 ʉO> g?Po[zcXP!ZJ5+i4#4hET'X蕥cn»ٶ3ty )0F x4~}v@1$# {1I154ŌZ9#Qz,q xHQ)v5 8ǖUlLQs+}ߒdˮ/m0m\6lש IZ߂:kOOD(9t4fQ̮ ̠2;_[vYjwaU-E QGJa[oͦ칷 nolJ^b H"_+]VxG"flX)0R#&kbhj<|(&4>*2k԰C}>LdU£~}zވeIZL qG͔`)t,_y=t)tḒ"2 y2`񢳇TU~e,sF̈g0sjrNfՆB0Vcg(Q{ .x$7K4y' 1R^iD%08U1(t%9)/3QdPwlM'ǿHY<N 'KB kz~Ⱦk$ uǜ Hzs6` cƂ]^Ū6,nƗ(G4 p&";Wb&^!P=P"3%Àl)vg)rF[˻?] &V ym#$kBJ ,uTᲑQ]9gT&8] X40 Cqp@Y;TTr^Md*[FMn麷/Atρ4 [S2!}uwŷvG#x -O^Xw#'1S)!gETޥPV,̊HuHyx]mV2qJX~T765pm/7Df>d2<:Χk$ vBe P˦ԑ/N/P*A󳍅b Ľ9۴ѓLP/Yv-RmD.-k$ىܝ5Hlk.w}!,".lahT('6ɨ`a'Xo66hb SRС g#ZJOu9C+5PQb\2^5PI/&wTt"nc?xNxpʲj~⦫yYY|{) .Upt|\V֟e]zvnKmSպ}L7Ml|<3mZΛԬwJ)FMDo9vϒTI sbVscBtê[8/rY(Κf&~Ѕ?#fqltKD2-W>|o]T^6ȵ@M}M΃TTUdFVK#`8Wzl\lE.yB˞NT6#bʹ6jԘT'%X_ݏB'a_S~f7:ms6>vNZ~P* u\w /(7m~Wf2no{Qў]=hnȺ5 E2vBBۅaW%T@ɂBC"ݩ4WeAndͯTJM/.ζX|]5blQoiTXA 3nm`܆$ ~~żSGX 4Lъ7BjLOؾYDK9wE )q}k-ϋjnL2v( z m#Eܳ}0~Sa..9 (GO@Ysj@Gyꐘ@\;?>o%Kb#*Cc1>T{Iazp br..܊1l˖@\][UaFۯݰl2 ؤXȿ!͗Ŭ1mtcl#WQSM% cԣbɌʔH31"j%0 `4S*FD5B b:ӟF<=Fߐͭ3v&0qEO'qVdGp}Żc# + U,yۑ_ךT5Z$.9mWE8ݹŽDZA͔Vl[Q~#Sl)hv>g\.kJTIKg3YP$N 6+V@?8?',2-W-bb\yI_m*'`yb L=6l u`vYź/Ʀ9r#Of: /QJ:ML>drV/rZrU |=a&mTcԀ$p%JZHSp`Mc]TM.cq}I{]tvZމi,u8Auu'Sr}D3 RvEڃThޑWW듇> KM{z'q3}Fj jډ"2u`y5[ yQB~عny ` imwjij)1|* Kd6Kk 9G-NVȠ"HmY`Y3YsWx#pYHƚR}x{4.df@2ymF/3Hwp eeKҧ'@|J(oǧϒv/mǯGD(P bcy J)JG;- |‰cPanM0aoITrwTEvY A1))eF=xy^]iɽGdN# -'N DFt(޻()noʲ1Ajqcam"=`ڍ4mqP͚ޮmjr>'#5M4EE=k5:8`v2!Q f-  Xsc$M9NX4 s \j A[L'qf7ǽ/T #Ur氁l X hl1YA0(!ɚߪ!K+ d$%II.&?wCue=oa|o~| M`$5k,bn~@7F >Ń@Pi6.,\w C1>2É5ݎ45dh0|:?пAi0Bjj跏_!ޣ;(/ȡs{p Fp#xûI9pR{&IRD4wG:>F3|c4!g3nHl|hRաV%zqis1UyNc^) KhAm؏ =|2J@[eu[95C2a+ |܈=irs8N%þDk Ao q2bf/[0B5vƇBYXD$F@ߡO%u\%#+(`stX2و \N2MS֮G,(p~{}SoMkS1&6L`ӤOѨ2׼טu̦{eې:P<]Tɨq-Gj L6jႆ20xK2`ᯅ`Q@&_`58;a`Z#M8_6J 3U"!EgIj;3 *kuF& AZ7^PnWNNLڇ [~Ul y+s#vg4VUuLW„-2WTWUf GM1ٽ|ˏQ%QeW"Z E>hU*+B&$zO'=!סyA.9sv3<̋G⡚AMUUaXie3%w⦆1+ QkM۱05Y!$~e>s!t{^7ɰvd26:7`H8A$U;@&vԿqOhE΀.)-_b?o|Iˊ*BƜF}X[!dHTNOftdzoWt qT-.5h߃3bhS-+nz s#3.0EΚ*ԠL?U -fnݛ,zX@ŬF/'=e sI njZxw٥ݳ kh˱!P`+g FKcpep,iy˃xUE.xo؟@q|P~1."vgqIJkx#9}>cMm1ʍ1(3a`MVe2C$ 3FצsMHFL[1u׺FA ?C?+#aiU7}sÑABGcZ } RaacQ1мKRǍfJM6 PXx/F jnHt/ș^E|o:o~׎OS-sLM <{W+5^$ҌuT z(8F<x]oVl'?\%mc/^2=ɅBgG&wV%qp.П&:iEDz^٦9i6/W|EޠH}jZ"^~x$J{MT7NaַLTg@6mą{*Sx5BEE2 7'1/i$$#yEԇ@ 6㓞df(@*ac5.'K _t)W!?AtySR"0p+)/uU=\yȮ >vUF$!aQ:.:onGXV["1UxVdG UiN޶peMYT ^վ.fhC/ sh©LVtAr166 yѠk" `bF"Y7fopotAg&@S)t H|w/g]k \nEc_'aہ[jOF?'IWA sXbAaWXQ7+{Y?ZY!:dfw᯲׿R&}sٚ_c:H]j j4#(FUR*_! BMasd?Ѵ>(4{73*ՙX_d\;~QU{H٧Qҁ֣/@܎% ͵]/ [}~xZptWZӗoC+%<\/<)T$<kʥrqeѼ@]%+¿pLcԧ0>Zm'QzW2@ ]sBNyJy?pxLaIe 2߽ŶR?zBAxhY>h1 1sdK 82gaeɃetTDM'ӆ# w\,)_`\@fİe.~\L+c`K+lnD,[cl[9b^:-oeb8/ Sխ(HC[P#NY-yT/~5 {jjiDL%44ՒfyPmpqz%*'Ꙫ f-/&\9,54ې Wdq2^y/&UY%NLWYp),?k̅oWױ #}S@88Uֶ^cwk $(bx?[FQ.6uMdFWijt3z,n[ ;tHGaWb6%hO') K͇vvjՇY83umԜ,5|f=L3[}`7!I"usLSů$%RID)[{T jFYg>8ڳa~/5/fXx]kk}Ofը$ґQJX筹GkjSa܁A`80U{{f" aD>_eΓ!9wo%fҤ ?y0yr J=*|,$3J!5 p2 { ߌ_1mG35i{vQI灊A KQG4|E[h rApcHC"@ DR"&{h(:bB%A2Z]4;[ED-VyB0u}@Kw"kM;њP2mN˻eTdZlVͥzR+slCZ%y8&EUv~?4M'Tp|E2JNeʙ!CfO0idn9} 9l6PrgVۢgMaXRh8 B|x,x-`Hw&ljy|w+Rwsm> C&#j!w/ y \Eo,cf:rȫ!aWP2[R@OdV"b_mtR_=,5}q4Uߓfղ]ӖX`*ʰ:jYɃoaY+앲@IgHg54 L$F9fxRGplkoN R.6_xPΡ 3)v2 wxagTՈVS[M2|\L^82M(2x]a1Y@yMKx R_JRA ?U쩭=#A:ʻ\č|4܉&q"}"9N6a1^0Pi4^?l|^ͶcdqyUbZvbP DΒ^q 3{dWR%X L1y@uϚ;TZQ`'e94ŀ \P|Vn*'sf D  /-O"4zbDPsPpR =7R) j8 VK˦8q8VCm+;f_lv Ń$.clSNc!2@O6MXv2?KMz4g^IL8Y)BԢ[Mιq{k4SWo';GG 4Ա& ke$p{]ڻ۴t~B0zDic5G\/z>f+EcvTgh8ssr6%q{bc,AO?k@ B}E3\2A::XMѳh_~Ua6ѿq~lfc{M&= nJF D龕+": O= f5Y>@+zJbxmWtJH dFN+"]9TQ pN0f7GkH)}4m.ƚU(xA+6iHlB:3F5ְ5'۲̟AzNO۩ݤF"}" ȊyQd_e7>!B2"ieHm3->ocgt:ëzzM`fz/9v:BB+Ly09ϞFR O.l?-tB'n%Sd`M$y*Q8;jO&}Gf]; /,D_;zn>Dhc.^rI K a3GG`绽G&\P2D4{H%أjy}ҘS#s;C_?[nhMsfP?fɚ)D76'h!f4n aa 'ZӀciTT.OJ3i tQo+BwiBpA[ _r ;SC [;i[lHUXjE^"Q$ 99v>'j.i;?pib^[4*v=Ʉ'7Y4Hl&5a"w4h^2svzaQIAiMD삻Ff"{zM1}u=/[=M'-6S*uZ|>`l*4یVʅ_Sxۅ0X[ Ŀjw4rB |X3bjطJxҀݷQ,lA}C Hcl_0L&Eiİ&nVk};:"^GG>A.}M ;?\L)z}g/+u,}rsHX[l曥.MU4nT>sKBhGjDuM #Ҫv& 4dW<w5J@i˹?]Q`=#Y8E c2i!5~D:Sf}Mx/7KoK_62W]o agCh%F-S!J\_K`Tk5$_jD3i$}5 CI}m+94EZ+X,I7|-ǧ>m<&kʴݔ~$p͟߀v̕ Z4O)3v)AM5D aZ }`(%ǿ/8/|=~=A.WSWj$ȱZvF/|wKoWOWST/D ]3#Tǥgs.#spSmR( !s>2NX/B h X3˂pH"ix6Y^Ќz>0]uSyCwS;2Yψ Q 7+b/!FRd(s9Qbx} V"w8uD@53ϊa9Nڋp(&&MH w!C;d_@2;*5E  ØfbR>`=@n4WLf\ y+:a/ZkiՃPrY7RuR_>j0DtgN &d̿CUH7'Rfvwu?*ZQ?R2&jp~"TXeu/m:Otp}jSF_Uϛ|SdP]SW ,D˻vLjoq'16\B9'G_{I~cOw=dV<)3;OKhh#g}$Wkᣈn?{tZ5}ubS9aV=6iP٨<˗%3Tj8Qkv\YeD_^pBY`(g֨ȐJ?@⛰8Ù0v{rٵTݧЅ~dXL_uf|BDB\6?׃!XA4?'5Pm̉aj@f҈s7 CXb0|pb v}6,d9C c B'[,ycm t0>~ȊNڔgn+dw/Xh@'ۉ+G (k qmҸS0 duA P{^N)Q#Ő6ڃԖXBWY;ͧKgUE߳.]sB5"f gb^yۊIx:ɏ3$|G9ӻg'2/#隱&-6iˮfUmM;ͶPQֻ8M{#N̗nv7yxVz퀕AQiaei1鑏}pkjM{(r@{ lD2]dK*$yKAMߞ(`r }] JY4+`&jgෆߊA,;̮I"͘U~y*ɼf2u/6g#7EtKӤ60;MRɮrcꨆ(=Y{"%&lhϰ7X`|?o.3?8%FX4W*\o/0IsYȒ3N"} w_:j,A6BkZPJcC뮷i]ɠ#M[>e~ ˷F&S [_ra/)cm[*iSNi]͒H]qluk4.@=ɧl>f-rXdxoY^ҋ\D[`=Qݞ ?KE0ˈ邋E)>zA˭n ,EN/A,9yV*EFn@]E ɑJL6c@we3o҈4O$b]͕Ky8AcvBNC2dbA?]3I ]}4k-c';5рWZM>,}o_k5'^=BVek6X DK|a*4NxA~†<ɣE΁G9m7rHj2sc 2`c%cUCej!7‡,qyzqUOh8ߓ9IU~FقH.G] *f)Ј9`ڮ.-"A`V\p^|ʏWt`?kgy }/Cif%=zQ"m PQ OA7M FfOWIO.Ek:CߍlQfY$#+X*toBLCly# 8S/E{;e4$/ Pĭ-Ȧţ Dv3;8qr{nw\/SdgP4|X*K3CBV"8M毁aщr1X\mWHuMbN%3THDS5z Mudv3H=s]W3^(6I2N>GoY>b,c54k1ԙҩ%6/4"ߠ*FZ `"$jSE:7kpkQkx z_^U&7T XJzp Aή@B/1,݇N _i#ϑ;&a¡_iS/֍]umIZN;g 6:ώe#V'w|Y8dD4_QU Ǣ˱j/f|yr9$DZ2aMa0pHA'nHUI0uٓ9#0Ia^b;bA(7]^YafPM7Nh3Zʌ PN7|v`H|#}b&ԃY)؆ H }Ècrd>e\|};/TX3p*E変[U? '=4"vstٴԙQvY[5!6bw Qѣ#EX.|+W6o %LJ +Q#1+iԉ"u {`8%urv\#Tł+&<^c7 >t)q=F 04!6_`M[wW`:=jRHiLg4?ez'yCkYn1#_i:ӜZ㎜^K` Yy\kȟqSŀ&n'ːyd:e"z˞G" =@>:M!RW~rdus?daࢎ4c0_/j/eE"e@"1rA$w)1nބ`O pߛGPi*C77MΆ/kGE/N+3#A̝cr K4Ty v]{Qf)jO]Da_7Y3ˑ]AN%mg=ԧů%uP@% ȭ8(zߤ|N?ɜ@QbQz :'DE-$w ܴVim)1fנv2)6Jk4sHЇOL$oKR iF#a =[,M'ע]O7)0mJ-j$*Q;z[*ISywidE r™w=JJ9o=JbWܴoG^خtH ?S얎+S8or?EkQFQ%PvE]|[tINz˒C%E8`Ηdoo"alua߭ͥ.+_qr_,Y J`$@"2Yz2!"wh٤HJ@C< 8;(_bzJuh/@2*#%R/anΩq9od(3{7\u` p` [m)lCa_n,^,TFU .YC"IYuc亦dDEf[f<u>STGyS/=*g# EI ʺԂ?q=\KΚ4m̄)ޣ+HWa%>٠5 rɷ2dFF#pN0IM.'7Wt鿨 ysh@>R^q(ÐSث|$2Ǯ 5mN0Ffisw4JX6Oa^w2څm3 a7+8̨ QvǂD[NB9v 5;%2CYD-b 078S"+)7,Fa.F 衮]?tBH'i3n~5RAIJ`hTѫ" 3@8~~jG }^tKJr_{TXȼ<(ʼ%3[!B@S "c^m_:POE \߁Tmu/R iTW0uX'޹S|/&Qw=0/A&=0twH5^<¤, 5&(WNz{F wʸ0Frl0|o/rèZ6R_6iR-;˼uv٥}5'Zv| .q?jJMqu `> ,LrY̬KFJH43[|#]ZJR!|W-iäp s9OaIL,ܜMɜs$Qmcؙ_Z:-k̿;{Mv6F GX%[im&SȈߟa#nt3+Qai^(?1Œ.*WX8j%QظCb`?`u{tv&X4!69@mv"Aö-߇(7g$G99xf')W_c{6vG~cwGq(0yև J6GVԍ6R=6"Aq([}Cڬj e0.W$PF0ZENWvWeE1 drBeQwke>0\)YG|Q=vs0܆(Sߎzqb($<.Έ<.EZnҧHf!/cQ{> 3}2t@ ٴTɡ`T,\gD6Vt 7"9MǕ4;&vihj>ԗkˢ!sasB Zm&'ΌZKh1AR\a%/!Ż˭>30V,8bPwJ_d-9cקj@0 &s<\D11ݯ3U+N+D}o&`m"hi&(oq|0zSUP=RJx rXi~@>w@@' V\i13 "G^Y+4[?5n U֛?@ф6#⬋e*reݠ&Wk:Ґ-6KE`UjP 8\TW99!cu9c? wc\xzd{xTxzhu.MjL#*+aX&K}4pRq'xm r JI_5"y%Rg>QNw "pLo>Yp-DWp-B.!EnƷVcfUqSN-<:u!к %9-17Wl%Tʐf7]2Eܣ,)+> <.iG;|nԵLGIO3j+YG|,t"V*nw?~Ģ" ϷǼs`Ӎ#>9QyL|*W'nG?[$nS?N&jHMf&Բᶲpܰ2+WDz51EdoihF|3h3},~MZ'v`s 7pqupv̀zszY.P:Sa[ *$y1b:FĹ&vZdyOSxnr +`<¿8omcX%ʅ*ueGDZ#EILV+Xɖv)1 Z(o2T#Y&)0׋S^,^izgꦞh^:i", ;09HUpNGqxf.ZoE*PęO[[p㣿'ZDWӆC64So3i .WgA!C%W^[?w-f5K+M WЎ%V3r=0'3]{ZX!яUg=K6༳MW${"s,p ̀7#̝7CD`wmD|tmU;9WLU~|G#ƒ}+^AX ` Ӣ~V4%c(8&Uc CqwqZKTB-AePc]K.Ȁ5pwKJ^TUWC0v*kXJi<g{o0)%HO-Mr(x‰\XF^}I/A}W}&4n<(",I?lfexl:sHY5/&DѮ+xUӔhg:#E@Qbİ L8 T?q Q[ 6U l3BpǽUӻk@`w^ݞqQc&f\iG9Vp&_>{&&Uf߿VDc6)@SG *0mˑkzxq.ME1M}׿^q.=7p Pe 7TA|M֑WpCoNM9Waėe'gn—wf;Q3Ġ/OCxmrlijM J z.zᓤ}TjAk.FR@CB[(x)ה8gЇљQ.l=՚Q _E?qT y|iFᑭە.qOX .ZCGXGXDgʮ;9u17p>(;8 ۋM=SS+rƴڷǒjft_'Tue7]+uifAL>ӂCJ;E]ۋKa/,t1%BZ#'4K$/\ HɘKo&VjmN%$C8|~!Uw0SӉ]*4ct~PRgt]w6k ̏+P 掄f"`vcW8=Xfk Y{լ?9y{0/#˰i{8'$M0,JkyPmvWXEͿUOn:kP8-(ʙr,Jth2(mȶR D/PINP=#K?EgI4𵤑an갺TIҧz Ԍ*_cl ?s!{+X%?˭BOVa)\~Ai%*Jswu ۰Dwz pcI /wBv[e_ZI;):X!,ßx7&4oEW2FC+]ԌqS:h["nwY\Q j%3)*did631+n%w)(vyRqIjlsAǮPsȄ 3cB\ߵ`6g6`~a]"^in|E1ՄP7Eb L8PH /϶%,e 2 "Ͽtwa67)7hj˓V%//B̑ǫwOO!oW%Յ>6m{S,„#{IŶ˄< Ll \*6w=Wla^C'D[T)b!eo[; ,bgd`a&A Thǐ7P%gD%ԎQ 8cNSaqTt %ƥ`G`2zy\2)@~ L?YM8WN]ȴSi2WTQVJ $(X'Z^%cmK s. /*MƬ]T&tq)[Wh8m$x?ֵF py\;}I1#?S)-UO3aG0_/$I@8pjV2A}S[5T%O .u?СP0Dh@\bqVcy0 d6 NZ"rOt.&3% l/նJ,g-~7^1(CBەORYѶK1aS Y'0_K ׾2(ۗ(|0tN3-Tjў̣r_X΁BuL[gk6dJN10׳U+$@ ѹ:Bʄ b]UBȡlHd&/Иx?%2C>o^T+Qܙ+Y N8b*hOo%W\WKEqnxO9 zcgJ'!Py툏(9Rl1>%U~p^aNo!SuXFuZFߗ0/vtt!{@ c_2#S,Wԭ8 xma 3\.e?A+茀ˍnA*=XE&,-ր]kP.[Jc ;SQ`V2 _n϶`VsEzb$wa2C#(yўKX?@ >yJ,4ɠ;x[!@ p01 jDn%5[W(^ZWɮA,[|NuBkSޑׯ`,^W/++~JJ]ƴ=@@GCN}Kd-37?~dNa<"[I|Qe`wUkBi\:|\B(d$|h /[ۡ9 _9?<[-,{Sߣ*)>!-ޗ/?m/S{;Z.+Pr?be>E}q hډ LgN3K/Z|x&Q|˶`2-E b گ$'>!ٙLd%Wl'4 z9B׿_:B+nTN]ePn_ "; AtF~iY0Q>kf 3Gfo>^;in%x_S<{$a/al"/J-t ":%}ޅ[;t:em|h ,dMfM'ke3- s8#h | PVv')GEMlF! FsDUd$Sɶ2Ha)N8 V?ȌpR:BT<DQMԶ_rwE 3|r_EX)Z̛+@a2~tv/ $r8J^ãVm +_ Y#P0 _Ps {.v7IlHӲ|/O% :؆KڗAQnQEdze#ߦi}gN ӵ1be<>>c`#M5 QSN9)^Dzc, ^&3Kj 599%X}K9}'!W3m[>$ɋ^ 'ljw h98ll;*2Lbk.: i>R,Q G(I( dCzLqYO&q|hjjٞ>yLti%AfDe| J_夕Kߒd|ݶk v%5t⢀ӭv uROCeQ#[6 AShl//_R,O;πqH^ d3*V/)=mU_ΈqݛΗ69i}PM=̉*vQFw~™WC #1 3='i8 ]:y! y܊&[z2Z|lkR~h\Iqn!(:&0f9{@S2?nN^ u:?_tF񰱤QS?KF&iyeh5I^Tr<e7_   5\ۥ N>u> XngUM)_#w ͷ&;l}t_'+ &~v _^&|R:Ͻ୐fq]e96:jSt `8ċk̮4Bs/ŵn7g-QbG@諟q5,\">ѐ/ou:TahVJז=w L߳+úc$GBMn"B"VM;ܘFi=ɃjW3in]D.hLUdڥooɆE֠fӕ&Ŝ|Dp6tY8$2YLj%6q=fB*402u袣l]G8Yzgx?'jթ3hg%GMQl輊ͮtdo@0i}齼h0~V`dϕ_J_tΟ?ARskAf)Y)*]\ײͻyjFt/<>2V{$|?{YE|kn3"'K~7ېnRuƈ`Evs`iq?hGԠΒ6AȐ]2ٻSXU5j 9Ԯ|F⽟5)˻nA%۱ :(uEre#MKƣƅ ρB6ϕӪO>=6|{+NIrV'GZkaCEr˔~JӮm_KX\w.e8ؖԟscBrD年>Nbq{_2 ȼ{r."~WB_B@Ud`]x@;!Lň~h&rM{!|rqN/|jddggCxj7>= 1/21M(FS5 +; jE=fK}fUxW w)n;FC{*T݆+yU>q1 @2EmL5;~ T7ecC I znHd}.NP*pօeڊQ)-fwP8a-K@rZm-NI $zgQ-j@m@SVȦ`o1 m<':~/8A#`4_Hn%H=]*d9?l;L$6Xpu8.V'pMrGZD\z-C/_vXp~3j'2XyEG0posPu\!{vFx.p+K ϔ1S5}OWP4N*/F I//X=5\]j7}-swqJb~NCiHMj[cQsi7$>>,J2NB)%qh3B?'gqwԎnų|z~Ad-Q"dU JEsPENx[TٳY2XrsxƠYئ$$0sZ=VS$ h9.($1gѲU/pVECwTkQ2vi2:fV$*B8a`~BY?w0oBGԖl’,+4g=Lpua#lIMO9B[ȢRYR3luQUi!F,3{x2fsb3G~ʷ /8ZxԛǹɂAwT3[_[ m0bUdx.yhHĤ ApY?㮿nEI8WM#ypő $D~Vȹ8 )pnˎ^جC3 XIj }9I| r^QC~TSĺANNBs5LtgT7g`W/h$̐ E]{ NvB |0Z&T԰!I6 \j]4S<OS՞uU2oӃGvua̴wsK7?C)"!$ݼ9 [jq-Z$U#4z4Qe@={ ZY@<<_cŖfA6@seGz6.#wѾW 5AX_2qp#R"ÿ@*NګA_G`0r_Il̔Y,LbXfٵʥl@aq_ )}(}c#\p.5 'v h].ٜa[D]`T M6Jf0(`^&TƗI.Yv|%gEMmt#ӝH7 3 <%W 2_(ݓRYXoӴË| 12"kƠu3 p+%W*X@gCC=qj Y$knho١hR)8׭ߖمӯ= Oa\jN3F$9IXN0S]H u7HAAmݖ}ISa]=W]S8Bá?ȑGtndޙK|ێ~z>ܗ v/@-"G"=icDj;Yƽ_Wb0(%.$vlZ@@fs3n@!`՜`;c` ~+ SnR'Un*pBr@u?X nd8 3 Nv] (UebZjۮd:ГL1gqڱW2%,%!o] }u2t ptKyi9<[$\( )X7V)qPeM9)HqP|;=Gc QPur; 2N2UaXsNp"ܽ&XX6Bx' 5P c.<Π2^3#U9ݙ{E5;9Xh&v>)OdM`wF\~<ﰚ:.g{X=ߧt\q-GW v9o3]qBRP|#:R4)]IEUqk[X_͢`Vk%{ a(GiYtՇ+RR4V5{6~j:%h#B?{4fy ?6ݞsLͿ87SvqF'ֺEJ3>V4$"fbu~5L%jX0 Ӳ u_J\FӬl_1B&’DI3JcMQۃE_/MJғ[5W1K0=,ASB"syﻩ'5+ԨGjx q(+ rT;&I~y?2QN(auR⩮Rf.zOZOwDk?D^yk죶[j!k1k|mKI!312yCK7MPූ[ܣ` 1Cc6ó}tiyI /3|sȵ䈍R[d Р B@,y /J@LH/Oğf0̽T308TI5E٠I{lqhB!Iqʖ^l B"'6Io%`>/CAbsb\蔶Tan F{!â._v\Cmhҿ(lJͿkgQ7}u\b1pi72XE xA6 mq4^2/#.搥i= SsuS$-`]Ќ3o-oVBnw+Di\9=[ ‘:ٚxN|r XlK>"$s,LwR*׻fHoR*Dz-QY?]61qwſ"`#wV|fc*ЁXBV.r%;3>#W T4RyN~<ܡC[XUr6bJ/s&a}wrGq@8Bn}i*ZmϦgr,P*6p׼-gq|'Qk|O-?1 mz"eeR* c>~l<G`:;aUu]ryQ2>ԭa?p'6!V~p{ ̚IL[6#SJgqAbRO1@zaܗ~+srwtwZژO.E~gF<3mp51D#^(LjTH 5zw {~_^)7`DH~[qP˲}z%?hR(xY&kF'T+Y.UY\_F!Tw3/)~t\ܪ`'2$\$jOE}(1G&(\e^y`{ )4GLjiaZ|rmƠ&> 6dP4qiPBL8V??.!&S@5Ǟ`)2bxWRPO[X,2?᏿2LY;Lo_1H˩WqاM*.KO 4KFj䡊J.̓9.КYs]8 MGEh%@lc))sVu )G%JH(gh` iAtD/c!r0!KT]w9u{/(w(хXWR/h׆i/̰Zu+ bz-K--6ĎW-? 圿y[FL3mi 4 跑:ݍ'sեh6BU=Bڗ)ԛQM] bqQXGàJ~g>g+%JJattypKx\-IbӂХ悡AU8%xAPL7@ɜ6kK6_ AĀNʢFgg3mߜI! S A <#yJe ji0:s+%PKZ'nQA*݋SG9`#|0+GX&yF[6!krtihht24f*3fF7\Vg5%1:qуqfo/]NY| RZL@xe5C"/gc2ĽVByU.ͩ &K=ÆH6IK7Qݚ Pg9s#Ct =j*}d:mV9wn 5EGU`|BBp|fzM\7g?mGي2us"+5dtQ[b7`V B KD3uRÿr$a/ ؽ: 芟 GQ#("Qxh v[7vQ=9}} VvWHnpMTęc?0Cp18D?'YĞ9$@cx>!9[BL@j"Ugލk{uKQ91RG3{*-z;KUEe`v>H+)-+IH߂97{R_a2.fݕ$(CDwi@4L7Z6On]u Ky[#VhrJW:@yCn~3s]0(E7 {u]2Ort>2X 1 t;L{s=(]]\5V[j8*|)m|Rvto.DiGHBe;g6^DOM{+;c04 1di/*/*bHTAsRbp:EFI8?MRNq2 čSxtIv.Lj1y2ȏ \Qi]"˰+xK*]7 }#8k9;1%bShNE#Hø-A@QEaV'GYPf80߬[}̈́)LIKԃcD-~!Cf$K 2 љ P>UCNCh‘I" ~Yٳv]8o $VNo-)_[)^E=!g]@IOLmu`Tf:Hsޔ5Gv0!:"h{7^C1iڊz9B;ᛢM@]0(4bR_jLs[ w V¬HV~c1)y_DQ nӃQ o>?-Ξ?+@Qb+ܕ7|2ޖ}/hfI?u#oZb V_ ى(*͓ <WӶڛJ@׬ N@Ym]Aڳh07Մ<3#+ @GTr0t-hJ/ BMeHe(@ƻt-v_F7T )]Ϙz 6-H3>,s=qF_nWИ%*1e D V{!L=?J0]B+5dmmWkf:"N-] DbPm6%H`=Y̋mc{p͇Y.9|+uMX7\ H|PoTy)G2Fx6Ƴm7 AV퐝 < 9Mc> 7{ۨ~- .8؏chz$.`Y6m}3땁g%`f֬;01و,MaffT f)+Υ]Fj^YajiU 6|+73d { @*F\:k6rK~Qcq>Nj >K+2xp!L[Lo|S`( mM)ztq佰̪R`iG2|vGX"e,|:v/ FF~rgKAzyaD;%׍k d F0 q6Bn\I|JXUfMNi;WE6%֑dAEaVXyGR(,N&vEQ M`V>KewLWvkS [j V/ ;C'&|ɊeJ 7Z(2ֽQ:g%b{je'+)U?u?q)-nBvؔ @BSOT蚻TpEW(  š890\-GeX(.ө ^|'4IcTvƃqJ~.l ,d9'Ei*0IZ53 =uwURY=60#鬯aN!Va" 1>}[UX\fV-vݻcRť^ yAuHdOxJdܲ K]0ؕHb =t`M$jp23fs+DŽ8ͮpH8MG,Ĕ.Xwרw{.|d2l5iO3cSޣZoJaQ5VtqJ,IX^Biw2?9EifAٽgΞzkFG%8_qU8ذLxOxS9cuܒDJxHQ[F0Bi?i0;-bEh j`z.B+;|D ϧy*! /Y'Q3@ O1lQ=B*'*U(&`QrsġwuC;+?DŽnhM2r|Hlu?ABJ)xy;{%`}k0֧?@;7g[a҃"+9d$G2bΕ /m2 Z0=tHTntQZ"L‰͎4αliBC i{4V ʚm+'JH2˅˂j|֪ "4(гC7n\{!P5Q] n2cڑ~T m{42_2㓼 92),x^1y_ȀoN˲k,{\ {wԳ]HAaN *˜˯-=C=w8]>3H#ׄwX1\ " ƫ5p @B ,R">O\P}Hbj q䨛$ 6`Wgu^=j #m'LE~1"@@GI[:p`<ӬۻtSn (.n^6Vf6",7bR0ѳ0W}p]]GK`:vi_Y蹅. 2Y@=`ļ7vPo׎Qs7\E\AUh,L3!?0SPMEZt`6udG֓N%t8i{,X96n-Bxs+0<9q|E*s4`=s|G4UOh [ C*.Zh.芖̒>ɼszmGK[| &Β"m\뾀B7 #V: dӭp?pP)Y?ҠU[ohq+I&@1PAl4ϊ&se+uRno >Blb˽L`H5򕇻T^zn$"R:X(^'%vTt x#r{7e;tЂZ<"h@г=4vFGf}2oVN@EP(`WyZ6{ef8EFXY/xݛ-}&./Yp#-uaL˵[(ƚ/lDdG~#-h#yt~znxٟX@HEmKqp_j!$8fW;9[Z׊1ȇ?W>H!tLyەp245hא7mgg/V *:F}\a{ ArL4'fz'1B8p$Z81`m .j1o$ wboHqjv>ضr=pA9 XXT Cb>p\W+9,7}Qyn^&ӁOϗzٓc$\q6=viڐ}`FN ˀ:&11cW(@5yqY$PEǁs͋fIc 2T9jW]O;oЅFu㳴A4xYmF*&O@!;;Lxûjt% `{UWvSR{[=p&یt?0 C(vQ@Դ6FWfȌT=7ke)?PIc"SU-|+RV#KwU5(a[ ulԛѼRUwS"Kte[\<;g~J <8#fzJN}kDKVzdie sEn,^ dӪa'iNY|f:QqA31^*qhN ?E⇽Hhvlj2; 2f|:'q P f&5%3WE<+@87sږY>g4(LfhlW YqQ]cȼQޣ6(lp -n d}; 2ɫ ꁿYg`nrMi-O~JATWo`k,dp]G4͘7ա*5ؚ1T L:ۡ?X}& X8y鑱H+ [V>EZ*}!GH!pNL]%q.v G$#;{|N #^:X 2~VA=4ڣ&s@d=B"]:яZ'Cև׿S=`Y8-q6Ef=ѽ& iB`B$хl9}z@PzG$KF7Ò ;"udW۟,}%JŔ1GDcx;1%Jh:ˊ́c]ne)pl%ǭ&T"2smSK}_/*řܛn}|NށPh>%/Ag"JlA EI`ո7 ?+Q5 og9ؙIմ-;>R"-U|Iԉ}7j]fԷ-Dx3fXOܹQQMB'IF!U khSeM$A9=ܹg/+Ui{$JZ"_oc]?$c%˔cɡ;x#r>C>qn6VI.C~&Y:D n~^_eqb0&.XLLzWyi+u{>X?P^4S;Qm.ǀf. 4Dw%2NގdC@XXRXp=p2o1Mu 0oe|zb0L#ڂUw2KX*(qȇ_P\y}F&׽~#|ő6ǁ (=YǞY,l6rM<~ <vUӃ#D)$b҂',]t쏅OSAc*ltҦw)D6F9Qka IɿF%b)x2DVfx0V~_?);=^=czcqi~|-uB\.&K7'6\ J;QxxzF8dKQ3FqDW)$Ƀ|F "Mhn K Wpucl&[DVđ(`*&Y.qA"W7a:8i_]k(lCZ?7V2+:܀DxL\>E VD!ԏḠ6!n}\a[N}J]_MKsaw->qD~g]TT;h-+_*moʤkSq;Dp0:.,*/l3(?$rYe~ y⠋)u5mgq9|'},d*I|T+?cE vo7J,8?O1a|knb~bgކE Q%@\g~GrQ(c_av!xY *-~|`02Tx?1"N˿LRGmŷaQi1,vmrNjVH1 @փgwޔJ[O\#mC]zHˁ йń=l$“պbZ;&-M 'q`=9yu/dbd(#ú6sUgr[&ʱHUT^s?5^t$?hҘ ʎ4˞UQ2<1ZΣ1ZY8s~dj}Y lѧK0Ip6Β"[i}5* Zn% (|: z]┒`ϲQ wثt3%02hǓTׁgҵ)K,Ʈʂ,OMnD$H&:J'P əavSengyheS*ft[0U%:{v\h_C"cAf wwN/ʧI>R~p A.2e}9©zmxM7VU[Spx.aP'qe&52:T:kYpVrn(V-;|9(WⒻtGo57_Vأw WIйy!l9>6a55* UhU^t[/]>B K&XT!X /z%20mЈ% v]Kxh/s%@BcemL?UUF.`|j`dDct $qGBE2=v|1/[jGdMShh0QxbnW5i6m1[rg"azq+cXx^C0 Ϥ[P+a1|SN%G9$˅0떜y+ 6UF a2~("s6 D^Z"X`k}2o;WTiTjN;ex3@$s?_HNCW >̔&(춧 <(b-F(a.Y"߾ɿI4eiVS- ?LLQ4:5RL䩋}6DUS}ZK7(ܰzyt$!T ֘}^+Y̖=KI<@ڿC"7 W35 QD y|)N2s968ȴp(۸5"r+ %qDdn;yǶ_0_m؃DqJSB4JRbedjhǛh}#to (1 G. f )MK߼jJ}"qA5I꟪s}jAWqk*J@'λʽ5IMd2R<=X4[||0qpLRwBO6-I40$=X_bC$|5EHqriqh?UB,oD˗`m)W/1N~P6j.A9d8[&jGEVvjKwd8XL$W[<^;mjQn1z?b,zyP2py%bKݸ?Uoplƃ,9ѳVH?a/KDd%ׄ^)5b|>Tg,!EՔ}fPa K޴azx>Pij$ޗǴ`Cj*CYg}ЬKv9ĜU{Q@*֒V[=hO6DA}NLnʤd2RՎZzs `nCaFF2ݽD,ʈFUGLxK^'YJq$9wY~p2u// '?'7WScQ=א)㗱EĞxԴz`_KvvE]CDcS/gW*ו:^3j|rN残il[jeOi5UuERѭ>xQEZdOe«_,UqQ+ ,:_ƬD0*&A'ZO\؀K]6Un[-!,g0W!ls۴ vshioSC#8wrxʥmLL/yF_1&}dlRt<:͎#A81&vPs Z]$vލ>eEDRTfNmSC15GyE&ZG$>: qLpWd$\`6}V10})Zc {y:2ߙ$ C 6 ITZQpN* +.~6WE0m8^& yP[z`;0yey^mROl7$p1 û[,9UiLX/C)~<iԦ [_M\79\^n>cH C+\%`(81}N^H$&`A} B/8y/Vc:g_\K( |rץJ=Cdmq"PVt柳>B6|u@p=i2+-N5'<XJm#YOpiGxVsR]˂ t3>=Sմo _>Êj?_PN: >7_?C t!3kҏOVY 2Fk(wғr EZe4EdJCaprR=6m E~gL۔)eG׿g,2m&IAO@J8#bN 26J%{h/.hr7Jʜl!_͚ĞoTfδGTo!"A(i N.*XrNGoכ&eԭ#ClNp&89 >}ʼR\--B*'wЭ)Qul'$T`=vֈ!=%lA (2y;H ;X4Gˢt"q(T \>dT2x~總d_#X?Y^X* 9 xU@QD|eKPĞt";8x!Z 'dNI]o@B-%w4ysMe<| tCk =qyS{~Hנˏ0eRnF#sFD[1˚ƊB{|Cayΰ]j,^wtrQh{1y%RZ|,0j'pPH4RR6l}޸XqSG3T{bx(#iJEaX,1.|Sp)61 ь~ZȚ3GN+.(}4X,8dx|현T|فՠrs jK$z" EkUm3T'ĀA:jڨ{_cDKEe0\i>{Ok46SwDŽm2BQ](E"]XƯycfm٩Mmf&rM-۱#YnTe27; Cf Չ+vYl6>9X;Ńe&`l$7<)Qi+_Ҏ(0"ooKՁF%J/``(/2H7$lh|s'%/1Ig$2{uc8Cj)ZԖc+,J$]绵8+jb\%PI ]vӍ kRV@x`;gR=XAg1Hq%䣇7NXf3jx.(?!$Mu{2 )i+RqY敧"JF~"0pSm8MBTVE)DuQ7eMt239)ҤU0wL2+N uwwOUfb7"S\XG5Qܢ-x>E%"!lNB}daufcS>ܾ} Ddwd+Iscyv8i"Gf@FKw#_1_%Ď?nFu, .W*o<m(ˢ$ ^^N<;VLS t7 {=okјA@!Uf F];sEW"9Dl&KaI ^ Y`} E1cm I8fYJTv;"Q~vW2)"3tjy_q05Vd̛:CGkrIwnWxb^WD~OD1R0m6%!)0hBuM4t*v|]<ѵ'aowȎWv2@ӹ6t t:Va=;sGkg^p7M>j)߹ǔTI))4-E] vMed #&~^wQ ]8Ʀ5;wV{{ ^]@Lz#$ 6-~xkn({Ҽ! 0 #2Yr#Z]# <\ӕ4R 8!y1~lx#Z'F'coV@)3 ]ԿA -?ߋl7VM&ktu@9Yv ""E%E(@K}C2!;R|0qhKc/?R uyJ犼QaY8͙4lٕ?IRdJS. թo%{ ZyRf+P 6DȺyDNİ'\(rwojK=WFS[e0{!&.[!*V*UD,tگOlv0w)ϘQ5ZIf[Ò6Ojާ3@Fu{*Dy5'WHJ0!ʦn@i fBy6"+y[@DOσ;  *4EXtg޺%5$w:#VQhaqi3a kZEN}~Ya#K:p{Zazam :. Ɉdzd#L^Tjy2/&#Vs%e)ł̕ ?1CЩd$DСc ōEh 5Xʾ>%it!QŠMT[.INa'k/x!sč逥FԵ06Mʂ6% eO"L\B3<. C)782dP~r r*!W=ä@R\VUN^]eӌ t^iA4sUڈ8.{F w!(FMKN<N8,B7:cECd`wM[74x欁&\jJӇ2m261΁N̡$ϝ<&GIvt6֤Ipx+$Bh&yzKXo[D4=T-iпR,ĻxA~7,$`BViKe[œL`>O"ֹ0r P> )Qqo}ob#='&RL;Zxס`Oӗ f>x>uC6uL\-{\)g2ŕ' I:)a FtiRYoﺞ"N`bbK Yj|M12+a5-ӔO+3iK1O`T5Pɳ\Z+ ^t&QpbL 1ʕ|;hb eg"7ј oXI>`9g΄UOb 4JRd)q+֨k^ :ܡ1r%& `ˋud3JgrC;0[ cMX OJ^! N5|a--D ɣHja8]hЋa%w)r1M9`=6{o>)4ĪE΅vy\&4$Uə0w0+h4 p6i1;wYXg,)LRsPs)DiqvBqA7 S,.T&ic"bq^6jU%N̞ǥ[-5'C_lKW?]y}hqC='O .QfWWc( MdUػ^haAڜjz$\otWw<'grsΝW&b/s'=oDM:+ F%W8]vX/ke(0vlpR/%*:9x7?B,&lNBJ@.:4? 0r |ݡ@]Nտ!܅$VpC#a#ڋ5c<;>n2>D~аŚcE,1z@xr,+EWD!ˢ=Bxi8k} Z>O atm R]1*iԖ0J7sP_j)-",/q͌NKر?I4FjɌ3 c%ȍFaFvL|£v<4N ZBfs߿D9ZH_v4M\Q3EfԦ=Oހc,0=={qV`[ w8//*wVP.xAcCzlC X\~Kok½7ruwIuo| Tmh;+N0VH#p 헫}px`D\$dMPU]]ń_$vxc:xE>Am ~Sء CɞDuYKТ樌63?Xdf8۽Ef|k&@w*Jf)cuWYFB--xeNx)R]ޏwC!i~BoӋE\ϢIWњEmJ*[o-2Aq{֧3C X8{6$ ?y)yDn9x&hP_z,OއBv5Tli?S{݉";qc4c!́'6fwrB j0."y%5P_E-$ŰN~ҭ_"S/ŋCzdTS5~Y|aw0D_b^Xi.XJ^qM..;T6x]CgtțZMJ?ʄetJl`kԜTl YXsDe.`:gC=syS Hk H!L8LU۸xIPAY\. jXd]Hi]LM՞ݓ*&RWo4Pwt$b3Fy]? a,zwKM ЇT5,_gfwlMiRa8GrD;UW]X8_텲Yl>8gdtg4HG Fs v5;!7A`( `4Z/ d| lDйZ}/!Z\-kQ;͚ -}*+7Z@*xG_Z򝻄I/#}:3(RYp;7Da[o~Iڮ]qfi`9ĞШ)ۥT wK|P&BT4:c3KH°1{a=piBĝd>/d˓FP_"NbgN)gxdqVG~e~\MA9ٚ/R¤EOQ y-O K}KeWz:x :;U 1v*a" fBjȯb eVn<~I;=}X~t>Dљ>Gh;$+\R ͂hzA3N`’RkгcKz| ]: P&$޻Y92o֥;HNWMN1fAU2nqU.'ЦeKgZ.رF.<FN-(4zo+*'!߲(g~wO <{\+!:\Sh4#a6E.I+r䐠QY> M嗜1C<2)ԯMGW<5JSuwP!L$`9o!oӌAMP*ٌa$jxpɂfb; ڪi{tArh-MTڸ,Ąk>S/':Bf\ `_ma#X~PN? T&8Vj!52P}JIu?1K&2⒉-B%JvξUVY3!67T!=7K^BF69GzݤgQ?RغGh:chL1֓Ro7s6.M{ѼXU3܌#pZv yGB‘՝R,%fu>c!?Lcjwa! 0CN(D6$;kȊR0mG[ʚZ?y؈Uw<ĵ|*{o|鸂ZJ= btycr۹C '?9vb.2?vl=;n]z #!ZZifޯ_u;AVY.s޶DѮdhOj-!QWmERcR Z9qԶ2㊰#@0.4vznK]-Z@Y Sjaf+A1WS6E zhYc VnOVI YԚe4~fQ?pNHYqݤE\CTibǡA4z%6z^Y<ՊVP~.ƚEKXw^*Xcׯ-thrګa""oUq!"@6liL:d6V9H+d5$M d5YKW|ܥȦqgX2joT~5G<1bFݴ:j}y΁Je<%!KBG {ۊķ~.<ݱvOs?`CJ#z .{(2Sq,ˊwSpH\qP^&|p9թ<$ncq)M yvt;5Af 5֮vI =mv%?v^P:KQԆE?z"Lk}:z"c /q3. C ǧipSdA&vur=YɎ%fMhMnz8K?)kZ$,5cz J#+'Ng㏫0)ık/Xr=1dOX~_Fz ֖0'Ga4i+CV<5{!MEP]*Ỽwl>g(;mWUv7FglC3v.SFr^XoL@܃ N5hf`Y{1 γO6;,TS,x "6!lIt5) 4I}\Ҕ2^s c; !KiÁpqb3Crfm*Yt0]Z"Fy\&T g`0u]35lm)e}{&c':suMB,TbE N@jS8B?V'I6*ogu4MwCM9k`%8ھKG~3{ƒ^׳ɏxT@ Ċ dMtzur"!ӺR+D0 r,1N/pA- ֛K3E2f?p1S a7 S. d,6= #9s͌L[<3 Bֳ1,˖Z.Z嗦pf<^>K%+q8 N>)8tܩzjTz(cnk|riO -W%mxA3PFPi8"qU_vzQWgwa_|¾JDPg8x#t:J`arb,Z<>O֒ }:aXi`O IM3vQ贋A)*Nw?^"4RZS6Ÿ~!ߴOfݦs9YQ -- [L?GM`[$ ._i ȾP"lzhJg@6gApK㫧KpN]zrTO^*_ P4_dsvtlq>YH~3l89+XOudS݂7H ʋ{]%\S)mWwkR7&L6$GANb L@.$*ȫNj)AnV ڈ29-ÄIn)n3#u {$~lywj>`)y+ *olotvS3N*%d2)W)?HꅚطQ+qr߅pdA8Iqp5VGlw.٬+aY%F҄N &omo.IV|"w)O.lO^K;<ˬ)Us|&.XG ?8rA ܐ>^~bVVnVIl31RDNygLdD_d='l+]9Z\lI'o=$`a:Zb3B | "9VZBqɱE̯XD ޡ9(L/xD"x|ǀ)OnI\s ,ƌXIue0_|܋^ ΰ.;lvZQnڝ\o{CUCF8ڑ?QYǟ{I dhM`t`_9[=45G SM#RAu\(|Ald؏'Ĥl@h9P = eV4+nWޛ~gȈ@Lؖ.W mg?F\Z_B1Eu j.jNqr눷"Z  SOIbɖ#d,R_ [aI`wq٬^hլ6 p'>L~y2>'F(B}WBV]=V\J\_9Bo^ҔD-kU}A$4JlQl <OY7!%DϪ[xd?U=Z%sIax3ұ0.E!A'/9=O T2¨% ;fL[h4>\ؐZ1{]B[\.B6W* ̕T>p^ CS xFx8qA|+!m"yh(a!ϞCn޾X"`jƄpKr ZXS%(FL3GtpqZ93 Pc66л PivٳM%w2֨w%cܺP}u@Ӌ#!(Kd[CpN!ߵѧ3=FD ,ِƛwtT>+N֥gp(إED~݉Ⱦ'| ӧwAk-{>jd*ힰxYsC -X@ȒgrWmFƼ> )rxr_՝u#6dsp5n!Y V>x/Js,D՚CnW.HF/U^ ,t\f2Ԛw"ˈC1@EÁ`e'^6^dUIh:9߯c-v ź1 Q9:b"ৃO@?) tvD'O'ߙ+D Rr!K EZ[WTo8KyteK-K&xcoz@J5!ѝ zeݩ'ǣ$E|E鄺҈kS Әz@_GﶚG*P+@Ux{ڌsW( bO1 _0A=  KSaֹ>2I 1exHv}b^o?[d[pmb vrY O3b 2qEFwDy Wra5)ͥa=Зin}RdxV:7}IdA1ssh݇I7# 1ҸJ_mnJ +Ҵcoᖩ D~H`&;JvlguEXb> * T5@$VY~v^7pTB}9VH,W<\1[̤!Q,tPE{ 06fڪזk T]8] ׇ~k{bۺtz(݇؎K]蜬!\=Q{!t찼٠؊J۽pTzKA)= pYw"o0ҴlĭtEJ.ةXrֶjShbVͪtCtiP"KPLˮ!%cL 6"QfUg$?cp_q( 6mJ?{&>Ac%vݸK,;&4<^u7*__Zn9j^1ZM`0 |KN Ghc`f\T٧;هa"ݪc! 2w$: Q.\824}4'0ҽʴt膜  պE OWq"nnҼU6>@(Xa8k6´ܜb~P<`}^~jr2s 43dPR3t_Q GҥML!(XUҜ(̒ۑaiǹS2X KEqX<{Hȟ(9 #]ReRFSr'.j6imh(.*ZP )bX2idi L"34B8X (ACơ F(_$a%Vc*so{fڮ&B }TjGfU}fD~n73=7ݢ^R 9N ᧔r\yEVFm)͜PyaAYϑ BH9z/%ST߿MB0XWaa>d+4k vL/ 龿[H}O7B[S11 ?c2QA_eWb:%udR݃fm;v @dyBJE4̖{}-q+}{4:,Kp.0܄?F"sFiƃFx0Y>xGeInR"4̞ن )HWG|/*4INrèo 5mpа"ez6^ANm2f8v䎦z9uF`Id\+;%e?L[eZêا4<(_e +mqo"G%%yB¾&x=Ni<Iqȶ>ivWku7@}Ou:;mVRn[a#),sFGϕ/vzWsYx:!c>le1+djYjm~!Q =M͹Pǫ<WT2J(SEJu_& N\ci^@ƀH/]q `511u/RP RU;&-#47 8[|4Fm~ukHɇ%w(6-su`2TdP*j[:܅C-%y鬱8\:SWw*["2@6Y+ BuL;6[$VW:uY薎}4ѕ[#|xWs.OǫlhM}tzV!*Hlmݍg9M05ָwnOk W-L^/1AK` j54H1&ofGMsaa6+W1IkwI#iu<.F=[:$&޶CjEr~V>2 M 42\y8# 8}q btj[#kPL/ Lލ}+ܗ+76ߙ2!nS::\h\c3Qa?(oM% ;S+9‹p !x%-[zqK=6nħYk"5w{,!RhP0-ػ[`)%]t9fSE!an&Lq]w%d'ix__Z"]p{U e6=vxBvSj"yg;"e$X\  .3f{["v0OA]:ʄ_a#4oyC%!=`S:s8i<4+}A`(M7g1h&YvoG}3 ƙ?e%g7@EDRqd>UԳ'- oyԎ7*rHL|9hbRC`d}Yԯh}p4:E*7&a9N272&MCP{4Jij>^vL@K;n2Bl$l ,ph9zB1Tؕx =A)lPVҢ> [W]S7xL8#Bd 6*X?ԙUxxmG 宴XgvnhDm}E4VWq9M3 .uD9D~7ĂX?Y`e|YquX%j[9.T &$M 'ϡi 4>)"qX1~?`N-tth)'XqF. 9W%zSJknn ul/g }H JY5&>mS0~ѕSdBjۺڊ^}PXObi_~8GquyͳORĤp.r,Hd0ZN ` ]ߨ F2rk%[2.glMj.nYDJ~ !"a5G=kAԋOAzxMɘ$ey{vɓdAo!# W@:& #AY4}dqA~ #0 tw-͟ӊ)q<=k4U%R.'i.}a%Tᒚr3Rj"`5'6%(d?rMGf$5)idO /A*"}蘧a܆(e݉vrYupø/ oTy24bM #ڡ]_=o=T~!D ZTkOt5pH&!Lq&9nk$Rt(%+K `ww"wHG/k?fjvmʂ%*Ǩmxf .ދ#(')K+DrtgfȷBſ{V"Œ;!=@>~-}&70$gR1g/h"GwB ldڷRz::Sm f>2}ӥ Ry9.3Prm5gbq|:Ϊ'<:Bt(`B0V,S SzµeiU~l4I>I15cm]{ƽgvʿsŤ ݭ|7rX0F.@dk&%=¶fG3n%{ iʥB֍}r11i, mxXB{N =I32!.׏*GdxX;aHX$Zwu5*kЅvFǸts^!AΦˋi!Ese@cz .gtc}-}+QrKLe[B tJkӰo<˽ +(~O6B tSK &Tb.5N1z&+cQ0)J'4^l?|P0 &)ePm0sdSQ5 ,IF:_ƾ8[WK`[+vq-Ys:/p p(/Sz/z2ծ|t8q OXnُ)QRX~ .Ol0K^/Ⱥ_yB:-Y+XۇbbDXʛM%ws[s%ſMрdv>Yi-a+x 2OEQrB&h9溔 +W'ǹz|EBޢڭ4i*X9qlSJx܎=P4Su;yݫB=‰Cpt5 4p=  k~\3VNăKb>޻e?t; |o8a Iz?^ȣ߶!]D#Xhˉz) |_ 3&Fko!=vbe{NHxH,24pkyՓ.sT~>-(%'f?jl.8nd+H<#rlq\В.YԓެAn]uob}o!48BOwn`AqFC@`!P6Ѕk L}JWCDhSӾKME<ٯW/=ͨ/XELگk+n+ƸaBv!J=S"|wj.l#|8!JvV;yJ:%2#a192ruj*)r&H67Q&pǎ3q@YGQ ,~{2uYEQ Y72"G`%@d` vwdKZXZ1̰FQwA+JܑPP`eO߰3!dߊA7cOHy{!գxѬ;*QiP:9]*Z&xh ~&qH@jDYDs(!vȃC!lϘ@B“!uqoOi,~J]^;Q0:0+/zʍ}Z !xCL#&ֲCk.( 1`s.we"afi?[ޫQ|6K#||}}W;pn^e:j!rɲ{b=<1+*1\^'-iX{A,F١vһ$%yC 2_ >{$p.sz[MfWR{e:-FECWoPV.KwkS%" $Ə"WBTMBn %,\"NAwiwt-9e;4<չɤCzk9C{W^?J{3v1y8H#oJ ٶ?\ :h)[3.F8 ]ݷga^K#!v`mDUHFti^]+dbhn ƽ)JWx/F77D'Q~]I Nz*^jCm)Nd pu>9YJTГM#.A6.SԴ_۹j[a${7WfY!-v@n+l:S8rJ /!F r\e|J ]Q.jj80ޖp1Nwm܃1wfBفeG2%)$و}ǒcM͓mPZ)yq1(" 49 Û0V(ʰ1۝wLkD70kmFagAւDv&ɬ&/ YW1;DNˑؗvޙf@tۚ$U&B葭&mTSS <҆> 9VP&F7'LףbQ4,U#"T sIǂ_+K>f$"p%m펜hEl=!jPㄖn=/GlwhL%hC.6I.S$ivm6_hvƑ&X"j[{q[~ WܮtR|ܦ!jAmT(z{o~YfN֦r7O>n(Z4uQ̑ZW1/NjƐы}f}zyϲ|PgqF適 Pٺ1TwPG'/8kscK$ 񺁎G֥(욵1w*kxj[EA<TRKn̛vH|(LsՉxkd=)'<`(cⷽ7Ȋts =gKueiSn p]uy)62xU'^aE~d`c|> -[@>x e23}o nNbt(C(iGjO…B^!WK"4+x,WTa3_EtOh/ڭl-lBT3C;U`+2Z Y9S *"@>T3|u<{>qD}V#ac /-1?򃄴@kc?:OjPCt+!5+4+ 2lmv7,dj]s0/&Ͱ &^1-OVa^=d[ݔ0[ݸ%B.oE~pΌE(Nx3iML(ɍ~_Z~_b%.ƒ_R|%ՃMdK>Zqy e+ Jr=MJ1( Dlmq?:UЩɖŝw >JvJ{{ɹ+U`9gx"$xFjs8&(X s@~t/%ޫj5u=GPjn #"ȹ8 -?Q>|hyCϨ 3u[dP-OOF_]24s(bۏcՍ"ܕ϶gYnG 0mFmxd G::)s濖 % մ@Đ^{r?>6ӱK)nJ(q"eVC蠡F}EDż頷W±/2y6k,lALc Cm2ǒ%_6$Wi˝U6Y'SpV^1 ߫Øͻ{ev16cCNmI]^VčE>AgN3mcfu4@",dl *GD/5.KÑp}=z֘h^}$7JPyQ:8Fg'͚/_`y7|b}~39ե n>h2 pOȓGDOf`H!]9$mQ'v>x}Xy8 2cF |C@/0;HH>kR]$ik!Hlz&uAި2;6qTnVj` dnhoTGauV٠i¶漈A/P\s<Ұ/:0Y^>N3ao44cMi/k#=; A}yX{`CiF[&MtG|}}gڅT{r+ǝSz3S]HN 5ŠiHRvQޣ; 4 iFp4/ND1rr4nG@ [Pu2ACݚ5xزYOxfLn\< 0V6wܣCZ1mIbDZY_ g] :,//v;Ih (DSw[qO Mjr n4EX*[F{<VG奥뛇&_޺V3IOS_S;&2K.'JC8["m{9:XБRlIlj1G o#&D-ټOvYsR bϖ=Wjz ʳc- 6= lVK`OiOF1 )QE Ueh*4jHZZX_KȶY+9كxo~ôMa%tF kbkA3Rr! i\,LHBeqR.G-!]Abū0Ffk]@G!$EQaU rhn5)feqb[%/rNU4Zo 0Ltn,|s~:n$ 6Z_ XÅEK_L*l2LXӔ% Va4ѻ8/[_!v0rÌ/|`TI~|ǥ#^uzY_,„ďEZ Uz]#yQ6DXIi3u`z]yv *H1 %oM6Wߞm|=}TyoLY9ĩ_ KbRt׀COɱ/ ޝ3Yx7|Ǣ#9/0oxAQ/վ%XVj1,ǵZX[keNcVCDŽ}r` ,sMvj2̫O*2>P=>_J^+ߖr^`\!W֡ҋq$'}sm,Y&-1uuv$nZ{^%D@hMa +'кy3}W+4#*|>R4Ɗdȑ/tp\w/FtMUⳔ-u>SYww܈5`lXJAT q,[! /{pGX)Lkհȭ~I,ܞHĀ^ۻ,5.R?\\BmT ItN5r=iޒ֍*Pْy~a{ -hxR.V:|@[m~š;]~ nd>?aVw7 o>Ӑ'Bz]/J֑_Ԡ@Py8hPԪrk $6@-~䒷/Yw,Ni: Tf_)9 pk>L@ufL!Mṿ~Ң'z+skjo%Sj$R^Њ `xi˝%4+)';Zi|cX}PsQW-4#ufkm5Qe2l+!yN[{Pl~~:/e3KRa3F{6,Ѯ1s*/O $/@haCI0y:p8S­)t*Nz)p[P2F玘ۦ, yRqwE?ɮy$XԠ T xOy[ߦFr,,>u2x[d'OèQ [SMf:i(վU;ڎCU說'ݟKuvl[^O__>BK"[ܙqM/~RKH5\iLaM}]1v@ٸexGKOlgR~Pڴ~\^ \p_iS;vJ0vOnULL#<[3)Ss3'qz>'WE@)5<2&+H?13ؓ嫦L?$җM:{xy `bQ{lN[ܥi\ cZ$Q1ɖ,+\c!\bgMgGm)"e%[;" ZQ5/Efڅ|S'J`n>療 KRO\&~PO牢#[;Bfb8G!q)~h2$M޵o19IWڰZ|#)m[ӣkMvJ;| jWM<׎z*w6rPТ)0&7eR{x'ģW o/PTQ/9Θ7s9W@"oۄ)tR26i4a3{;yTbÁ!;[$E.{LʧzW>+p0v"+ 7B>7?l|0y%IbNi]o0ܟ$B 46޿yVuiNAv84`)Cӂȿi5-鰫=~L™DټCT5 rԎN#"FI YQ7IxQd^ YI8;#jUmH`4)@'OqWʷ  't+셀mwG&ݵ(H&|hƝ0? vuNHxy{ qQjZԗ%\ЊUE.{["oie>{j.$~3 ${LhG,Vş;V-?J;M]j gSt b,ebU&T38ݪy":שZ=œD eZS<,gty$b1VKW.{߿S%J2c ;V=IL * pEXVjAI|]ǂhKLZ 3SZ]xyfdJOoZOz`Vn"^:fH~*Qz~b&0 Ŕt¥q\Y2b[ݶ7%v5RTz|fMi} A JO pŨOUyB'nt3j7M{rGfwTZ;\0 ȝhj7؉fK'rlڸod\C(Do:~&h2fL-?u#k;|+L62=?8juKJS2ihN8=k-+7|{ kz˔$x?MVG/8ɍ9w[ba'(-` ?u #s4Di%(A .A;_eX%ʏ-6!VXmB}ÉI-`}F:RjTW-bNXU)5i'M6Ɩn-@aeJWʏlJb`E8 Q9k?;bj\;b4 YkEsa(X@T{ڎt/⫢iًV uOtHC'c}Ӥ@3B+0&fGh[–D&"┷қfjE C|~3u.j hEML 7T٥7` 1fWϱDj 7<˺wtԮu~MJ\Z_&p+'=tN(fnTաIUT. SQ\uWxd(X wTX.jysUPk=x8+ TFf.P{̹sG~Xd.z8c, m=NaͬgwtW퍱L(2`usoA ¼:I `IJ$f 5F̾T?p"H-y#XEGX_7ȷ齌u~ȍyNj>L%8)I(Da X/!n! ȀSKoFFUX4pmʛ 3 9Hh]jOFN4*`|b\5H\^6涋jKSelg/Q9< 'Ԣ,]ڸBCm=nwdVho-*Y\O,,TPRzQ)ټr TpTtE'3.ŸŒĎX\U| 4'n'h:`"ii)!u?prґ*ceRk0ze+(igs,6OJ$PgpZt=`;vqMHt6aK$Iw_ t.lcD g""g8?j<2z#\&9.8Dʮ女q,~R(1Àq5IG͹ \92d'8v xt4 O%# ?Ĵ݌D\<)&z_.@yOPjW0GKN+[2^MCc@cAwdUX4f݌p^NGzi9$l.uan0Hu{Ηu^P9b "sŠC̨U&=zݼ)r+9MzIO9ZҎr AĈ.UƴK|=)t֚GQ0nvtJׁw'J Xbgaz*:yeoZ>4&$>12\XeBMT+u9}p Kq P!r{3 (+ʉ3c",jk1\9kab)iRo)oJ$PJW(aJч4=m_Wׄ+tb%ow]Jbi4"dmV%SaVB.CΜ@+ݵCᥢLgvX֙i^>1(%: hc$ DEJ24UOREvJ, 欷lӊYu)5= w\w |:} LKaJ8f%Kxlk;u?c[˂Mepv 6#$a!},;)A NB0"JE@^rRwSD4éQA?{݉4LLIK|=QYijv$_%Q; :b{S'q?Ww~PyԼK7b<|#$$٨tC}R_k+<>kJ^j0ns\p(adwQSu@IVm{6ŕX$/ ,d+&'Yt|,1oTM;Dt콯DK!)\W^~BA۞Յ8#Ѕbn|\Q-!9ZOZQ2Jsa:)2A[CVzG+i;L;^E|;0%oUpMUGXߞal9gQj: 2.ršPGAAD@XGX!(A#_D8yKjB>^ "{J/u^h.bw˽uңۦ&0NH1G#c,.6u%tq'}&;m<~uL:J^q,✁J,3:ꎎsh@И=Q-ﴵOkL|L>$/t5eqiYTLKWTM)2 $~k(kBU8#}ZѦ\ |3„p@|4?LǝgX%VpD`EiȽY+B| =3*S\"4}q:Gq;jU3pxOh}p)92iydžpٟ5 ]gEyD$_/΀Ϻ_p4A nA4aEiR#'ه9H=_o1_ T)7oL8 *DLdn yU6wo$ʲm¤*b4np'adbrEnES,FuSNu彰~vz)Kz~MHj(b ~6чBUݿNb5/h?ISw1W$/bTj.o0VͺW36QIyv ] 8`A11P|"ZKubfe^rf.1Pƶd6] NUN1>V ( 6mΪ%Q& _/,~Vk'pĂAtaGiG*jG~Z9^:$|w$,x ׵ɇM2nD 鳢Q |$c<ײŬVB Ը{=]ʥus$\uHb,2`ؖ8}Rtu3LrtYqEC{AC0"8ѫԅm+WTm Ґ<\T_Zvqot/=4P/Jjzf=QO`j\EʼnN6cGiTQͨ?l=6fь\9Wz5}(ƸHrxN[ܝEFZ~>]4PՈ ΢Gi759?VI]BkT~S(zP[u?gx;@iO<`Snԏ|XMÿILYcd .> BǪ䖸"t"b|=fDZaEŌd/J/E}C }>i;ojA됯p u rϦ9bWUDB9G@_c~d4">߆+hnωXg!hdd6 &Jo2Pw}CfUߺ=/yFMBL2;NCMH7{~J_QiU-4Gjc1Q,e"0JHUyl\"~4-e+bWr>ÃHeU) չ?NૻQC:BR-X71" ;.vB (-]_Phպ7%v5vUyJ1sMVejvEiD5[5PKܞB9]>_鷰[(5@?pMÂ*>B3$G#H~..5軻PU>rf=\X/NQcҳv'Zp I9#( zS֠~f5קQ*}h-eoo14 l#4r:@HF[{ë&kS- pY5S%뀳?/70B+}1 iSQ~T%V W{z O\yFT®4BO%2QlR?q3Vo (sO¥aH-4,s`OJ{BiZɭereSl67ET},O8Ĩ̅[.&sY/Lvn&رwfI*G?5z4"Q6.!̈́B0 pf}L9{R$bL%g50Qj߂$3\JX](mup&exF! d ۹UVJaJƁg4b&C0f~3.n(0:Biu{儗ׯia$KVoltS#2Yoӡ4 _yNْC~ͽ؟4OoYS`^\BcG^K*\UUWKhUJmc˲y*2#2)-3 $]:nO$Q`‘}G%J(մ}˟jAI0fvJSo4, [OEٻ"K|hXB't,Ωx*I([/v4s`C4z1aD-xD-'ߵ2qv.}n-aW+qs}VLG}BHdoPmQZCZ۹!S1VJ5'!li>%n|B/ɒ5\F*|**ލ|g%0tɿ?"G=MiIωwZAgт)?>o1/j\4\B SJo5Z毠)+T̢r=u4Y"&p%hل\"D;fEU08B0 ҖʓB S̙=ue[xD+t-?yA jبӵ4? 8P$ 3Ƶxp= T$Dp\$t Wc?h,i_Y yRz֪@3;[Jg3[l ۴U ee8A_}8K'¯VxEC1b5&,'z[%i+,-QW/_b,~PRJ~TcR:e<R%_]~ū hoS;&zV*UشMM̶InZɘkOϼђW@ZQ3 hESeTWƬt$Oq*SX!XSbA!{J_b3ulͭv7f#xfM<>}')`˷ۼ7Z3X\+aƥOF)? F5DeT3PL*3e)NeܧF"Ÿ0_p.s {l+{*Zżb$ު jqO t/a7L% vpH$)#y3{; 5o.7F5Gr,a5L +p_]cc_2ެs{QY|~8̔ט5UBWaK4׻ܜ͜cNb/ YKF9 'E1uS) h(1"afO+&7%-KXbP9uBZdJk$<[K6{1fBy`*z8EN.~WaY>6昣@#$~1@scfJ: o/݁KMZ៍ICl(Q;DaF3Ozn WؗC_7nM C8Qfq_\Ɣ ';̪#OQmEQpL5oYBe#C |Y?-R?tP[h kR" j0Ix eK:X N&Y4XEѵq>D¨~o ^Ft yfm1P6k: l Wdl{i*Pf<Һ]IxF6JZ~($&6>Dmk+$qʛUI4H꘭Ap6\ӝ[T/ ?.;'J+hBNo _JjQLiO+&GQ}+^@9) 2-S-=;dX%H#`Ld%,*B dڽK:co:Po9m祢s\!voҹTϛ\Q3wT|1B"8~Ky:33y _u;ɓ7C1Ph*.` Sj%a&X[ Ay GdD>U6& ) mv0XZzv9Gz/>l$MR;҇Wz,ģX1ȚWz]%2|51<[<'VWQRZ0f1MA@ ,[(5PKcMiu%jV/Gj[(ٞɍh)l3_[XxkuTlۥv?Ʃ%$O[#aƵy{.cC;lotJEMGX,R`T:zω@K3"<Ϯ8u-/uUblk.s|Z]ulތ&HmbNg~"Ok㹥iK 5#GZt%7"LEU`svB_ #Fg"Ϋ37WOe]z5p0.Qr E*Vr-,uJ5$2Ho]dn8dZWH9#}֟iMorH͛wAm{+_TDT#FL*gQrR:,%||3+ǁLV^GwpC k8&䄭qaXxʓAL:VXk##ᱏm=v𯾉qzTP*,]L_x+vq&DO5HkF[Z k z1roFK n&(u@ q`PG~#$O6] 3G:bDtks!K6MB;у!Knrg?MDx>i)1ljziGʴ$%`ݼ??`YIS~4ETPyʶnSf |KXǠ%=/ .>+9K"iJka$ɝ޴emkٳm֞lio6!ϊcbNJdߑ0!̎D*ytvnEQ 㜰nrCxbpba;lL(5 #9xEorY%tG+\D - >Dtԥ-Y]Vv#fPQ'F NAtm0uriWYގV*n)H;ԋPT.VU,od@wV2 Gƅ%>VVg.G3GaБ5}p=-*}dP*4/:WIh)gζȎa]:ޠ"GV1݄=` f5p$#(90.x ~H̪"DHrGʹFiˮo2Veftl^~}k nBJuY_Tʏ+j߭o8ej}ɲf#䦶1gaK$'񽩡oJ3"9AZZ)S(k+ h܍A㵑1O$,1J8!y]-Kp}O*1Z쬠7h9v3cEz4:3#,&9٥dˬٻ}eP!V6 hڐD&Nzc.aI"_6j5Fnч}#SO$DGD\'?113]

      J͓2/tdΙ. ;JZz( ګ8ԻJIn ^p1{d 3dcݍe˂{ZsKѝ2z~IYxsro51[)[&quRX[+,or«}˾ ^] !PॺNϾ_R7MLK3ĘAAa<hD<=mY9bPH2'er~PK 'Mi-X==h[-3 %1}VΈ%@ sz6af-׌ %}~_22sjҠblyΑ͉U7gyo{JmLfv[A|?Hw śE^đ aBX>.GЍJSݎys)qƮ`#P\f7[G@د#ԀB)KOGF X^*ռ]3mWU. ,o`N6!3$ҽҳ-S[I*zoYtU`a*꨺<* T+VeΒ@& $ٳ?;Թ gDpDQOjRA.H̉jUL_ПІP`p۠:iqW1!{.ﶳ]Nu_Oj{3hPQ5*RQ=wm vɼgÓT KGXuBtRTfN{+`bTP 6I|% 0^ofeo=us]؈'3  Kb^p{/,7,/Wm>;'w);l~ Dܧlz G3Qmn"{+SE䶆 ɴxJoILϣyTuGN}S4 sC@O+cP]0,ۘ5LzZ7do-ψ&`Md)aE=BuNmv|땪Uz+r<] vrď@B0EB Mr9= $ s4OrAdտ0(dm* Fdv$M}иK9A4ݢPoֈzG|0ۙ5xHa2h<1g pO|FD(R,/J Fխ V)b!Ғ Œ!'_Z [pGl4UNfM lf yy#5nr#GE+./1X>\"1b=IR{ M߀1|cؾD?UI<ˑ 㠗1cHv4`d̿~ڄFETꘃrgvr2lb"$ jEIsz7{ɉj<EA|ǖ w.V_#aP2g.~#U(K V,/ZB^8(ż p9y,\'-sx[ioQK"v7t HTe Z]%TIwD=ƄWr < ]zg1o" -:_mWkmNOOpy7p'r6=AVVǹ~Eաs#K]è7qcn0Q'Xnָ BDm,H* F؈Am!)>.~?jJ"ٵVгN˂k=,WUUWtd9xkE@Tn ;ib?Ų5cifA~c1v$ɗ^[~:1X*= LJ8@ 3ilEn`{9\u.!Xęp %b7)zrlxLj/Aאg ( iB1*W#O퐓0/WȩŎpfÜYM'`lvoxX5o韜(/&geNlܡcAqZYE(IVMMI]vB,! /Ej؊?jsJjwǩ$~KT ~ _HpeޒfFP'NVݧ Rkn@;lEjq=xsNeU|*gd2{[-j:0/kip8fNਙ?3Gax[Nﲕ99䨓0@ Y?:gr&|kZ Ũ,?xJ,ɥlpiL./}Z wK'鞴.R)6X?:S]%c<;$ Zallk!P.;UL~sOsXEm"G'҉$˼$EO[ZN#_,&TRFo?}Sȭ,^nUw0Zm}fmumQ֠a,'߈u4?s"mᩘbDŽn_8)|B(<Je6 NDsW#/RTfՑ2^"a8߇AlzRËx{nuj z}GdFv0a֜ >-At̽WNaڧAXd00ߒʜ'þRQdFmߒvNg0kt ߴP-*z oP<^I#:IWPON./UlpSvnE%$xohTR&&n3@X'~hAh%!wͷ}f- ?d'6Vp˜ݯ'^swzh+rR\pi.O1P7#OG62=L4u@EB3HpפQuO:^%"%)Iu8ҟ| @kq KIc ~(ʫzdU5XV4To> 0j^Kʀ*&&Q|&6Bvfb#eEF1$筵F}U܍:d6yw*tqqÚV:]*9VF_vU|z)C>" ćh=H ҜpKȄjs\n Ԓ}k7ٯ_CH.ƚNA=ް&7I;Q0[3p )UUX*a~ CA>HxܖD@m?kF\0Q%]HS֫F|! zoCO;ŧޣ\qDOA/R&߻H&Nr%8)rsxEU%WiŅZ&ё>?u m+l^j3|9O+ GҠ&۰s?n 8سΙ;)6dź5-R ^ _Oa.NM@QǝQU. ط<ϓFGe  (() EWo똧AYe K<:f*@H \nV~|wk ([/d^3dF$}=rmx׆.geZ5[HѪh9&-k)YoÇ bin)[塛+`SΡmIa ^ }\(}yFI]LHAFa*:k86+2;ʄ ,-L0]&IUL_1',A4&J'@GW>"K zN=}0y^Bn~ ǟ Xvfzb{j-Kr?)yo f֡-'4"C&~;Li|ҎRKތ rbDXT:ܤ *%b'pE$$rUM' li 4Q /v>:4 ! G2ʣ)Ϸy=JQmؖ٨dgEHDpZV[,X{Nb-{I3{Tr3#S-{6 g ]rwc3^ / K,K/$]=K:qU-@7RxcmbT,b]ڛeڦ~%[6Wm1r-l  eK^< j΅uMkb}Te4~m7I|OwAmn#ZF5H[8gv`rnPqYfIc}Au2f)P Z"B曚} ̐|ܲ/Bj"YП)tK.@ÔwnuDWʀ63-r@K{UN,KQnoҸna#]3=.^}]Nڸ;wE'p @Ht]O;6@sG|5KP%q{[PmM\uP|P0c_.epis{Ȅh͒tT2_qlkD1u]^yɖ{ #Hݼ~X)b™P-D6lL߆Obs٫6Rt4<Ѽ"qF~n4!eo͞kjMz1F3Έ}^@̷7xt.#w3dD ۪7m ^ k:6fdUأQuDڠxlԆwB6 %k=̅B%9ly|{%k%BokOJ[Aw3|JǸ {{H͸c2aVK;S47˪ %m^.bkmRo|p[9n9 DD_ѵ1#҄V]Zę~ƒ{zZ*_nƾ]QQy\[yL_'k;w4ONPa`]@i(}M[WAF_xW>l"%s\VEֶ+2Yl MXVi ,PAnym~6"UP)슻5|;:TmW1olg)eqܷ5I]9պxs Iؙ0EЇUlȩ ȽH:gӹ9aS僦򳌿h cFEEQp^ҍe>{'6ǡP椛_;dBH 1\[q+ζ. oJ{4# ZoE[1f/nЂyn C9*r B`Z>h뭲(C/ύJh:E+>7,zt*ý0eˮڽ4,}#]4D߱ $ē]-N|g4:f)i6= v8raGetzk^V?/dT֡,bw;MC T款J\pYe8IgfpIYԁ*SǼ$|̘t씠P4",舗f4 TCu+ N_Ny,<):\6h&y M/+Y:_?7۸J0!$Ndٓ,/$M[3v0!WC::Rdtؾ POܸr)] )Z̋85N%,tpg1oyõy_ekfE[2)  jzj8zy*YZFqwp*ʇ: }Ę4óU )>8ǯ gL(U ~Bh D vMRG"oR}3 &_+W9gg]"U*)q3IWnCtR[i::~z|֚"r&^ZH ۽`N4Mі4hc >At" 9.\.e,-ɹ ٕHY4=i>s# !$/lH-Kϑ R|?&ݪY/0hl8̵֭R2 {#ade:??g\ wǃF?,n~:0mNQate1ӈCM-Bsy]!m&yAίsnfi NXoBI^e)֊دX zZ7i qt=9*"ZxV 72E]`p4A64I{{&4 7M?i!R9-{'\(p'b!2x-  rj*=L!^b;ʆa)sW'\n.AU 6b Q@GU I*;xOmޤUpr*@ƻghsV1H"8`҉o%VKlZNE}J-)KhOԡRɠJ`t a+jw:3iw. .&:ml) XBsw߄z%i!H2D}JXeFAТ┳BX|W'y4Fima5,#SD8Eш(h[;}lv #6輯OV+ nm bQdޙ[v E2ܩe:9;\K5)G3.|rI{`Lpο8gWE+׺.lU*Ȉ.!QY/G7S5 fLq"!/__=9kO_ tZ!|G:c=ғ-@t˓ҿIpddb))ֹQ38CFg`2!aY :9#^:̡;[>__ ]kscp O?aE2ˮN,yl BO'zzFWGZyH$Ե|<۴5i_ qlCZ6qwU̥Ͽqn銲u/&5 nEWpçd)Myw/#w"u2.?0 e| 8݋}I7&LHJLe>ϕ0'0'%RR E$"d c҃j8y?_˥O)>B#D(ؾ1 ݷx j2:ϖe1@1' _R?Bn>NaLޅEK[FjA)dLw,Y)q%y"RD™\i, Zoypǒ `k c3ԏ@b|.͸Y~!ufڞbӁ'R2LIDg=0tfmbU-2V]{)S Qe]+.1kf}YKH2C8@L xzB̗3Cv9.?oOQ@Jxg1,Db [0\)!Z(£ Xٯ7Rӳj:&iC8ᛄF|7)OlBXstwӜr31Hx3רβǏu.H%]v߈_5W7J 7%ӆ@s.]8[JrHOlm ^ٞQ+>)LËaiQj|HzIq#" $[z_1XlMAmɪ8bC@!73t]i;n&!!sE_I|#c6pmLw2g8,yՇϏxz/ɷlOA &κ nP74Swf,)G "R "̠WPc}S 7{kP@I ^w䵃\k]|mW<v'%*OqU)ýC՚WxB`̬9zm<=vV}򥼥ӠF f>3`~>VxPdm?d:yi]rj*謿Պ]u2ָdr/\lht$\ŧ^(Qcn ,+BAKݟ(KhQy%HY5Ydo?mt{BWv85Bl[Y6Wdhr]!ZnC*l+e'eZPvŁs,Қ #;&RR|>%Y7YMkSHg(|`);8Z6!(mP/tۄ/qĞI) s$!êdiG46 %q) p { <:U [bRe&]Mm7@B8l9Q`ibpSQ}q2h`P>R. `1zwCːM&g ɲPu+5 4ㆱĂ wIM*֯߼UP>YS,D瞉J܆ LyUMD˹7xg!kfr6VvP0#2Lu9 샕M*kp|jF?S .4q7hJ-m6J^+Od8XIs_?Do0l1ax^6qoŊYZdӕxK@ #IL?Tl!D7KO3>\2܎%Qf%y5N 0X s(-&TkD2}n"ޝ$.`#:,AF&إ;816eT ߯ok ߅8ʵ?X}pT>(v0YWXJK|+/O=j-v9Nlī lXCD%s=I96OӊtlCJ{Q?ⓘte qvnBn~]KK ϸrF@ .˷ c10|އy )[3d(npA:S}`z+R; yH$[M:l!{!lϱ;yخZtbK,P:z sX.9{b^٫YD{&hCm'ʕԄ 6$09ּVD".IP كPSYā /Z < xWMD#r!tnZ9!>9Jr+%] )y \HI&Itw<'{W6EKRR ܪ,烯}Ԯ^C|B垂Eep?a?鹩g^]LL.1vS5Mn$dP~P[T|JW֊F"i!q\O-lWMC %k8=맧qg\z o/D A6b l>.3sʟ 7Mٽ7lJεRPJa1r3m^MNDMY`AU\ILZo[ ӡwH&/` ;֘"ݪ64EU, !iW_[%yo|3,-_$$]JMA2jh#t/*.tn+BW40Ya]P@5]|^4^nW֥y0i|D"7t1p gAfA蟔_/KTY zf/Ŧ7Fˉԩȣ#HO mujH̜lp rLϛH"$qj@131C'=,1MnjN 8Ӓ]!1U&'!MjK=60 'p*(iR 5}H#ƙzGȾx +ƃ[<-ed,kPStX) N5[ \|!҇ m8u#`+0GrI{[ܦba|Q%FPFE?@.+pQ:ѶGHoJ-H.Bl!`Fɱ!R Bef\`0!qv'ՕGM ⱀ ý:{#C|jXŤ1J;Z_fe?P}X't=AabI XsfgB\(-{}m3Ժ? aZeP;'sѬZljkh\諵OC? ~gEG+ԭ)Zg+1jdTh?=W\Tnq0YdtHwH,"+,Z>?axxn5gbwQ>tZ^sK(sI=-v5ӡm\GC[";!|~D&9"'lQ\?"qȩ&,oN'gCVgX'Kޒ@q; W\ˎRJ z`Ҙi`o D,ZHcJ'[}AF'wߵ>(fѬ< y ,儌`Xy2P͹ v06/2i$}3aj.Z b6kV9p v6xy6)GtFÉփƺVJ-}R+䕃p}jPɭSXYH:*,dP2Tߡ+Ea [fs6d+tI?+nmX켜!/}hژݽ78^LFXfN;h:~@%ts_>Ew/iʹ^I ֶ9t~dTTOVx_IS/RG-Kn4 ͑B.ȅ0E%dB\fZKB\aڨ#ʳqZ"wnkXqݲgJ}v,N)V5H\\3r %X߂! 0wܤys@^^쓋93x;{qɲSyưR/ϛ^x$/âIv"]n'p*B*MFp|Z_X&3⋰m/gꚨ<A<2/l {A bMVBG޷JfI<>'jp)g5 : Q c/-n3vlDG5-e؅KP핲^vO7* {d,m@f&: " @8M& s{qaRL1ߴRl~G3j[$=gm[F 1l'MЉkd-\85f=2aDsZP'9IjqǴmA: ($lE|M9ִwgOEXkBzj!L{_%=N^‰vcw#4|nD#SRQGT2k4 p=1]/f9}R&YeKg ۈmNxg"]{kEn&@]\($/WuګcB)_p SNW$s ctΧG~-o%)bsN-bL:oPܳ7$ fuKl_D "r ͧhP){Bo FM^iN]2$dɮ^ 4I6>ZCOO+ԪО{xN#2w7EڝNv6Ӿd GƨǙmrfA"Xg,.(M06aCw+k,7J镔c}E&#=tX a%}(f,}"1?Jb5ybt^.q<"_gn#uWw4vOY׾$}U}|y&KLC'arp";꣠ /zyd ~qhd9p{rJ ^Ջ.&:k/@\= 9Tx@-%\۽_>6=$.ݟ\n&524f#^o9RʪOЃlc%9 QЄJp-歠UyXb LJ.*T|I߂Pk ȴ9^&ss){x@U'Rڻd2{<8y^1yN^ͱ_+X1H޵&㜴0D)8sj^B<^m< WԖ>tJe).Wk GZUKY ADDȰ!zu1 7pepuT;*Ӕ n'B!|~f=ֶe1 21Ee'EVST.PioEeھCTκֲn8>j#Ac%[L4\(O?, y,F5Yx;ouT ͳ @{NZ3";H2o0]eV+ڹd XR1C `@TZ ; 4}طI\ :ȜEa|G'LgU 1 l_'eFS!f fѤ71=7*8` (VGpBf,):H(I궴gZJyu)WV]-&¹5Y諽6y$OAmVVDD/=Qv ed,J_vZ<.Q_;zO99TT8~)lFArGMS(hz(E{n`Wq\' n<|Z7 .#T%b*}nkf|Thq0//Q%# `n8[@8K9a]U:/t%.$\<:Ǻ$s ɽ;DVݺ+DC-HsdΙ7=hQlȓ~1G9>Gx9yҨF?Op&X͡orh}B% P#7_$ !YhڈSqE<'U&&Pm@Yବ rx n#/vi!xMV=sgS R ̘煆{^22 V e%2ڳHF[;W{y3 GT5Kp+iYb9+~U"<Ѷ-QC%K,H^'Qig('9#t' G۪DjGɩc "Z|O?Y ܶ|OGGб&*pJ;s/1YD3;ofN0cnfy !1L!.Rc9[oNx5vu zG_\!WkKq gy]VSB`lRE|z fL/`9 ,mSKq"T yL> ~NW͘s K69F*'C9;e`Q:;ƹ[}4H5լY9lMC }MDK*BCߘ=">g@ @Cxw8yE?vOCKșS@O"-CZ|ٙ$\9AE⧄!6lDpzY@zpJ!+P]5'Kɧ?Ϳ1,t8#ZQw0aۍS5SzA>zEzh)%ug(ҁDV ̖4Xk{{v&;n{N]P>2m^ķ/&4➂@lLK.9$_nȷvL -&魇h[;>؂ufLJ'4R%i&eu0t1iG4D `;'|iy,FKW +$>̃Xszyg(^Zٕ`zg;7k;&;%yF4 ݚ s"uO(x}Ukxqzm?ctPfXAV;'"KsgM1Rnm|gj)_nK}.An@\²goaR0i*~13nݐS)`o3 W68u,BQ "s?Q =;ܟAL"o&0,j2)θ&+Fϰi Z%^w;_㌮GVts蒾aǼ[DG_cr)\JEQUP7WrK[]jByheE|$}-7T6:E 2_4ͤ~6ڐCJy6VzQ=";~G4٫j¯m9yܪbK4*'-#~ --c> i%_`~&U,'aK>8&?սԠA֩+z#3dg<OI5)#EQS$x͜ ?)ogp}i? s8ZY(_%,a>JS Y\m>9GdW-8v~kFo_C#vңBf( c7Ľ_3>{ɑǡhǂJڈ *Gjh_DkCFv?w-w0Zv%J;zl$qyioR$:r'ji7|$ZS8I2{czƐ_ԱͶ~$a9x5n?avK)GDMA;LVMYpa!xE,deb#Ѵp(" j05߶:a21VG)9e v"09ỏJQiBGX(^?QGM; 4;V3~]|o@-iN?$]pt':HKIqىQzcrd!5X`/X8& ^&9克{_qw+H}c' Z5Kx,č^RR8'JGhkN}B;bb;[S*.H}Apsp';jXz0> _):f͟FԿkojՌ ANìY!<u}€@ByX}&AgoqkDNI;H]CDzәpUM~e?):$ԉdHf߽mjJp=0J*@&HsYZU;[ZOow9Zϥ >"R^ۣ32;G:V)ҢvHjV-Yhއʍ7l,_g NSZ4ƴ22ͿxSCз;P;XV4 l+ 㵵?I.fɼ3?OF`?Lؐ+\+a.n7.!^;_/&ܤ?"{_x^V۫$^ BP.ݩ-@.&IO)F/gOa}f0B^/zs-C|%G&+!W«#x!e,+hESbWBl[d4Q-)LxQ9׽5XhH!D5 kϱDQNn$Q͉pRP9~?҅q=ߢPIkf{ C(5w8~Țy^Ș&mnVt5Z0"VoW7vh}R-ɰ)dVۻweԚkGs-tOt4F ;gE~(URf4. ,cm{fr5T}0}IYZ^OXp}B弶[G xQS/+""}Re3>BY4<k,zq& u\s-\S]jV~!Rvb38k93A&BPfu:3/-߲ƀ$qɓn-eZ*.A@n`kmBl$IǿZ]d^>Q [$ZNn-?etj.O)ݴܧd2#zW#Ӫ\Ym1AnbY}<]=:фAJ u M`󭵂`\a|k)d9Y_i8o"4TVI&R ¢n'x9;-# do~"2pΩCFIݵM+&JPAAxE?W[~RewXa#.X}IwG/רDKVC0e%BN5Gjo! %E|ҥ&{UsM{s YWS vZ!FPUܓa[.ػlTdl10`;3ܴ(;*ݳOudO oG>;bd w[KcLˊ5~5K-oLUd@RZeGt9ƆƚJj8#5/C[tMFFBsK$. +pyueQ'1a^ 6`c9Y H GXSiՠ CUmTY0.e?ho 5 dGhҷn{U'NM]u<~B4ΥYBδ+,g$5x6"pŘTos 5qJ䜢:ŸŇ GNF./L٠?β%*(209-Yu.%ǍR[j]{RE8Ob̺I%:J} CBVY*q_g%.rRn+<;t \EUx@ذ@ivn8xO9E\KPpEW2n[]4zx2-O_oQ̯Êg]Ƨ(BP8Qǭ䵛#!u_n%h +Ti:Uo' 0KSѝ&G O^V40ϻOfF8V |ELg+"HM~WLfLˮd Q] &rɷ'뢨 47i^bc?byd V ){a;0\m4tfrUX(q7 IHyY%k52b=>* Co;"o>9;Q7 ";=,1m5qJHxy8Du a(b lcƙʡQ>Ok<)8Y&)C>_p/b4# .q(6\O;#)]rSFJae*%*vg&2[Hm'6 ݖ! K& T؄ _gX7&+]MCcH\}MYr٪F~f;2bwbMWh_Ckl3*آr 1tñ$ b+ib= FPw}k:L1a'7X&o뚪 )\U4]sGcA jhTJI_`1ukв[8H m*Mx.uK|Z|~.#5p73w@̌uM,m9=Ă'R:J\G{NRpJSAiΌ47O x.HVKдz Zf=>MxQE`c,qnvaA4;Xf<J9Mmc0ߌ6~Ш2))+&(Qԍ TW3h[zi·tkRu[*hxȱVZuJҶDDzv4pcº`S )MFD5=:Q6>lt,A~ LvKt\y)}R#u7`[Xl-E1z}J΀ȔeQW`)'ƚJ|>}`fLwe-PdsD['n(x2<bX:Ozj9N,ۈ?a֮<} J#+:zO~ \N>SZ]6G TtQ0aȎuVxi o7As@P]Oos\܆i_?ϝ^pAjS~Hz9hS4lDr\s]v(J%ﻱ <[OW-.Ʊ3c_#}\l?D:wcͼ(x 3O60ڤ~7PLW˗vb<Ѥk vcjS;6B;rºYy:xR`Ԅ $o_8[PkަAWl;_Z.uбo0d bSgP˵kj{#JKIJ9U|[iǰݰ4G4PЎ8f[aN'& ;n=A7Uvwu濥֟=I?XδV@'ExS ? }x7#Elcv0,źtP`H1%;9QyYL[B p.vrwz @(gbewp~v?AxV+wA!>J7[9VL% Ls{z&%,H5b#L۹7Xqsw^Wx\*-j&v߸wLU/S,=&{L<@[>(zPxڎ ĠyxIE/{{W&|{6. pCZӛhwe 2ϩ{'PȫM  2?}!lnD{U}wuڮ o r]$ ǣ,aB2:^fZC!\9$)Q ѢA?mA2qY;%d[]_ُ.e#sc:PZ2\Y%=\r9tR1/|dri]\3bW2#_#Cbw9ӿYwo`Y} Ȧ0fPN^BIk1C B/9r@LC4 (kEhvI\#R9H8``SעEGrz@yZ; e׋ !+ ZGy%j;S ꩾ60,Z|3U(Mͥ-^*@:MwMM͖n+'5QGzFͷgmqKFej"0܆ߕ*k`g7Ba|`&I82?NR[2o'ɂ8,]-y6(M +pc7&jk[M>30SbX*wc(mSe`mR3v+4t9Թ! dxެvٶآt,c( K^Y$; Sz"$7 y*4WV7~.Gu㾯#>-QqѼc _Sudf߼* XofM.\T]rl?fKp{l`9p~̪_;M}ߛ w(h4ot Yu lFv\LS˥q, OP y?-,6X+EdGt {/ HV l9̌eǿC.f" zL*a%XR-vO%oJعօ0[#]|BꦣU,^lV-~Oͺ#a5i} )^''5V倵ʙ^r#7b.St:gG됋ə3;ln"Zo'uVW @63./9#~uЂ`t>sVz`E}׀Y`6>σv4Z{@[޼nSWJę h'&GMӵ0-Dwe&&%O"jU(O[ɂ,NCx .M4vxGemNH/ !Id\ 5`= d|Hj\O\ wɦg"W2qp.Z=!qKkWi{=TkpԺ!qgz9I{N)kfP^k1p{^oE|*uGM̼2E۫ωp4{nu'<> |<#IՂd6"Jຌ6-c֕+aumtr;,fm4kBp7I SC1Pk{͞`,MgD8Eo13IʺĴUnk"DfFЕÄq͔9 o1=}V̴%Wi\v6fQ/KnyLM6 $<AyXVWSf$CB&l35RbwE! +BJDz_c\iH+&9@؏qκ0HmdQ ׬aLJ+,AeS q'J@_|5)Aݙ tV' DA~9.z a3pJ)O ǂls2c[>G,HIǹGBgKE5hjj9 ؈*L|aDOS_xo*[xa2U(6ѭ]s+[uAb[0((M!`rM)-26sF{ݔ$o}g=D؆X+3k~F% rӝ1T_BqXtPG&͸7qCuC[M갠-Ē׺s~*#%s_R# w㥋rLicf%p-/_V k=7cBQO vNq.?c?S(gaӜIPlN3qF̋0m]1i +T@{?xM8 :b9, ?-*s,P%'SQ[)##gH P{.ߛ7vb'BT'ڌ>,&Ww:)zxFl^W~w S3GL -Ylux3O}|tW,1" )v7Aȉ Q̦Gy݅,S-⫭ )ƩWBҙrWnǂ2R~*1b,c4Fr⯁0SgSؐp_x_e); oXEZn^.F@-o9_ċ1 i71;M 8T F=7[Z5_MYv]z~5-ЛA+2h/Ȳz3i.BM ߣ,ylܰU`4ixRs; pDViߐ!ԕL_5^ R5K0.}(f1`4ϖ+HP;aB{If:Zq٬u bǏ }.TNk 3𙛹myH0OH1L &`@^ *(N P.# eh{|QnE*p{/N?$> S^0_ 3.%ZFCα64zJ刪7s/Kh5XBH֞2j=vE^$"j,OxE[9Ewsp^v s?q&hP:2X?sY3!|[Q!=&UtW"4qOLŞZƅ<Иm5T(<͉Ky)88m)ZSHH&P%9NH&5KÉgAU>l$+L*4u%I- (wcj̵]N5.BY)nzKP7ȺٴӜ/%I*1ѨI_(t 4 V֨Wasw@j0dhACumdKlC_SU6s#bm xFƪ\Dʋ<F2gNM$tq?5*/٫Upw굸K!2@֍D^9[:`~ =] pCY?ͤ=4:%W l- V󃷣wa7/9`ܓYGeQ j*i$+)PY%*kNj;,}qZSMVVbMh◭ybX/ݔ1LX?4?/9 t1|Q5e.sbRF 2.,#*[4,h$fEөH+WRΗ4B8q>0&o7;zs/L!,A7'&R]c^RNDeC^'H;ʦDњ%X/T.MP]%$4/,f %g\V)pY $ ՠإы$Bg~Bl yZ57?\BżM*9x؁ʼ4Ug$V7mBI>,朜VSIP`ؒ ?F:ZHFXW1r5? Xc>lmC9i:~ML>7eȱxA9ŵg"aHz=;\ͣo{zwĘMɶP_mBɟx0_;@W^uu{. &t3ĥlιpdrex!;gؚݕϘ~Z4Иs1t񆫝\iǡ @P2Z" pY2Xr H>Һ ޖ ΙHbEp] NTޗ0SY(H#h^NjB;9sK з|BYRM~UWʢ|vS3Y _@DD1pݞha =o%gG L.ƽN.N:3Hx32"r3)Z(:aBgvk- ۺ <K|E*vOAGK_5,n Pa3`qQhOϋjMen:pt쭿cuM2#*R H-0"ɾEijt%yQgzuQw7^?J  D|p~;:Նsaw$|vj%R!ڗU6g]̏*;^3ӧv$IfD,b/M쟛rL%luzQ,# CTro$Qq! G׾9y:CnG>nɻ2EJ\.'BitmR10Ax(<]a*OUrLQ`}HW1Q>YCxGuSw*QJ ͘F'w f;#Na@/N׫wU#:;Tn{WiZT&<78,.E<$fP&^ tt]]CF ?J/>A4Ȫ1TrLimuCHp lD!Q*sȯB BT#jtqnk&Get 2T4 mvѪ&l,PC[9iU#Hʊ? |jV-mmWhO]M$5D)^x:#K$1kˁنePky`M@"ar%NtC#6t^o/9X+-1^ -w bZ*!^!a[;`\S2IDbߜh祋E灓8TT%S$a^XBy]xɿ^" a1d]gϡЬ'c$%ʤбIOzmcM9,m9KK8D&SUD~ycvԠ_f.ݱŔkkwnz v6*1*B&K)%\YqX[^9qv8)B Qj+Ot֒ ־LVboH B(y0$9DN,GLhr!趕ibXrI3,ᙴYtwoV%8|N`u0Yv*)3E6JD;FJJQ֎{3>J޹HjPjeVs4kFoR)6%{xgܺp9 i5]P<$Ïtns>UY3Lg)EgCjA+Z# 3}"{`t:iwETaO q;}:1jˆLK8Xw.{ K Mϐqܓ{#ĀC9Fb<q#b4mdWU+[muѦQ*{m[*ajnޚLa-">Յ1ʷI6QR:*#z \?8үi:(y.L_Cg>N NU<6-wWpt\lA-R^Lwx@pQ'TRX#^O~N0AQ[/FB{>IUbQ&mb@R'I3(4xȤΘbsaPOF~>R0`e,x_2(Rb(8B 7'B#YlKH 81/:[aMbQ[eWPkP} }/Z%f4 QbĊ4}R)9$lDZj( @cr@^uo;)Ё? Emt ^35Inءi=ĽWe+ h{rlg1̆25"mзԶU!‘]mŤҝ@QŬjSVo zkrW&r.\}3ga[ ܏-u^]v>M#_G X{qѻF(]$ 8Tx1-DYw`1^w |,ni## -0NϬ i?m25'M57@zkԊ%f.UuxhVTywr鼏Q.6;A;eNNw ?l&cJ_Ըڸϸm`u/M=Q9ts]`Wj6tgkCHXd8mmVȏ JЬTރZ{ (twF^6֢Ɠ4f`Je%[CJL:g"I*G"AM](g@z"8ZC eFF+7# \(Ʒ˔nR Z ;A R(.yfšO{|OZôDDάnL ;7ƍc!e7^@Uf*|)k,@-02ӘJ5^"M 돂B޷rEk4nR'(fO^֎?Cpk~lJ!}Tym_yߤĔcS[|7/RsG]f7F]N?!YNЎviŲ/} fαpZjMX<1H?7B,C[bŀ~8aw C".7-ҚB^%=Ǔ$㶔KRPxmGaMs,>`xWYN(p!.ޘsI5\ShSBJ+{ vVC+h XJJ yJlJ Z2Ȉ#Mƻ WVNL4#X響'V8D5vۀvH.'3_$)iHXD':Uŋ\AI5ńHrs :aݦ26];nyA*&viPU 13>b̯O'W{m^@ t6o)1sY݅;:Fg3ܑŵʷXۓX&zNu`SR(զ&Xe5}cg!UonBYsPSnou j,+щA=_Y(OUg^9 Apt>:.|6L2v%)u +[ȷeekY.̞!tOKv%'G6n44ZailHo>$3y*X?y/$j&:u`sȶ^*@?4g.o^g/rH*@E[S76&] "̗%` ˤ{0N:u?lYY}c쎑pS(}\`Njkq侣zvW#Mdp;b4LSreDs&R ͩןҲl/V%qFh/TBElvhП b3klʒ@/]9VfdF^ *&t )s#Uē lzu)g^j&p5;|F'~]06 8B[mUKߖ4&gܐBh'Lu\F񁎤b!u]K R+o }iww$CK ~b1/ʴzyMZ#\V-QT(>hYJyl2ճBއC+JJBӯ*ex6XfK̃_ ƌQ`g~#iT`^v65 /2J -Odpب눧lK:45j8)`jp(PLDv_l8]dd'ֽ:`Ƌ@Bwͅٳmȁ9eCK ʀ0^%l@1lf: (E/D()Mw^BfUnjo H'iC<|L(7Gb'G2daga9B?z;y1@ar CsJ|Z-U_e̡F?%$GF8 Qʹ{SwtICjK%`{/k/}{a/={π؁Z #v#qM+ys0i[C,Wy_A(xhZBz{,τW{ϯr`(IdX8gՌҩ2H?T#[fD3r &,rcVeQc^цT2أK,"2pnFq#n,u=<_<[zKjaB;DSHC>C,2Î0!–#(.^ۄH8o 2OhI3M 8znfyJ䭶TfIR',yZP?W;l]>:E߉'P3L˵x> 6u_QzȳRmRb2kuh%$Z 9QY[]b⯝0~m BM &0f%qO)SUnOނs2qNX䐈>gXx~:fqoLKA׻|rn#h eTqTE8Eؓ& L Z3̴!c(JW"Ԙ"zѕ-S._G /ı[Tt 9H{ gg7OqoȪ4 ~ JvHfʩY#jls<ތY _""0rGvKpx˲Z) ,{F)}}{d~ [mBMF3\eCo3~jr x0-M# ;ьR*M%dyyF{QMc:@7_; θH2/귉r׌L.lW:nRuS=(x} :g2uSB@H?@=hkJE )0D*TnFJ"P,[t ieDp"?WbNdgoq&\Z@IJN2=RKb;{hCG9k,V0)yY4e<޳F5'1 ppbLcv'ߧHդ}Yj xHU?inn '2PF1܈58e.pV}qaUx\SKЂkcfcmPq˭Qug}!<t~*nuQ ߀z2AiWF TaE޷ ?E]qRߕ$Z6ƪS=.Y>s]_-xCیU4sc4)R8jɆ‹?](K̆  XQD)O}lOqSX ky=B3:ܫt\{+. ˋ5+Gg6ӌg:صڝL Il4&gQEI-`5yĨPv?>ҝ}-SO/Е@<h{g*cz:\~zu|kfB(B4Pzsw1a5R1R}R}Oh

      !q\Q3z-XdlpAPvО*Q(a ˙v4Kؑ6E6Ds")'Ѽ]}gZԍe(p8ɁxG ]hrN;QO scAӴy-p2LжRIy+d˰\Z7PRgnv2U#cvoh~ٕsG*bzF+qquH7LH,HUjCT_!z;"Pi= Нd ;y %-Ӹ`05'G` t݆ ʳWvĆj^b5nK5OeGP]Gp~jwݿR,Z|I<萯Ⱦau!,0nQ $^UoM6WANrusJ%TD]q,UnHk#D*P쥑!x3-z*d[&[aKj87Obb73&ӃK$')u]Σ +v*Ѝ{jBϣx`gV9[?3]rS Bqh~piSXu'{TOAСn%X?rRfKJ["iDN5e×w?^tl2ȢK]Ӹ8ZVN+G3H|3R9?q Nd+K촢Cg`JզG?ʮt0 Nw{3k3Lq![ٗx/J!Po^GkV!#]* crjNvdItN) U<~Y*8;h=C8LVPeA4R2LypNp[OON> X%./ lb >.6O-pSRʭK .G~c+Ȁ]≨URͣk"BsxLYa@B\fh'ͺwbAul` sby#l-a 1nm@^ ]&v9V-l5o&gcN)|Yl >ښY_ :N|L|X3 < F]vpS2<7"- |O*JgZdOʟE7w)@r]bVk8&j T؜y&.%@R!tFMG{oJM46'Qha2遻"^A=M,{6b$  jD_BKfvG VbldTN$8t"5i)fvUF-ۋHMIREL|"mқy{@TK8&ά+ӥ\ W!KYlya4zJC'E3ȆCA,!̎D:ck&1 8P,sţW{]Ш02Y:sj#O!MѯJ} %Wq0F=v~ ֱKϭ.[L}DI"/]k}7k7n@5[$'XG|-a,/\H-to܂5r㣁{MAEAp`xGN *8tDG7vQ0֔ D]%ru:{vt舥_*$im;WDh%}FL@l'&F>1b m_&IEp/݉yd`4 YJEsվ9iPMW9J"c G #o""Oe9 o#}"6/(붆a5_Zm/񰗝C&*X0ن}3%T1!+YH2yX}e=aNi#P&`)}QN;JJZCm)cɿDXOu6$8bɡOl4Gk x lh5{5xvIۇ E$Ƅ>#†:[ؔPí[{$:L OVdR۝`W nu3dՐ/_ɔX/\ӑ<,v;P  w=ӡlB}~DH CHo wXt,^xKD!W*t$F?N3ptiUǓ[@SndM=ж%1yMV pf׭Ow|x 蠵!xXMqB 84bP5Mᓊ$sϕ|q d.g)\v5dzAw Sb*+&X3uq>Χv-_n R-7YjU=FUDGl}j=b_^鵗݉,g" [E DJp{&5y]ƺkBqd'$YlabzP DW8[!w+(M~V*,g2}2txr4\-pᷢJP\{_V?B7*` 1LK*:b(|\])EVC {i/f5BD8U5RB<`=[5 ~.}gXц(A,N`>̍tiyQN nn ::g4Aw$Ik7NC5 j?h'/D2#$Nz} ezHKzɟ9J9hf2)wZ+U :Ń4Q/>n^$ Ms)O`)hhqJ.𾵈 oZKIAИ,k+i{?]eЎ@ua{kusE-:t?`p`"ૈ|QhgKE[+ΜI(sIwbm^%(:UơϽh}) x[˦Y}CtQ]ǡ"NUHզhLʅƽgi*쬩[k?)Фk~]DbqԷTrvL4ʔn55i|\'hB7͙S X~xVeB*;*kg qQxH8MDxX`ҳe&e9BMw;HFEV\$U"yƂ q9 YE6 ߰݌l;R@ov;jPAj~)cT:ܵFb(e@+mW~'/ATYv_#(Elf҃Ј@ee%6K3ԧS({UazXKj83)DӟXǯ pϴrbZ?QNc0vKy-("T٤aq̩Q7숬]4 [ףN<62gt*v/^"@g:SPӪ7t:~be8 Dz&'f-%3ĝ^4\e0ef8u@ wE28  V l.[&CY[@twhA#'އb5rg;ȉɈyT.KLQ\TXF| N BVL?)(45qp ׌o^'\uVK/}TD .~}Y4vtK<ڶ<_]}q'=mM_}0f*n\a<%A/회٠zO+FpNۋdǒ8?\Q4>K_. l`Ѭ̡i0:rܐSR#-Q2V^FQӕpo5Wܲ ݁ ufЦ$ֿqR?')z1r;h[PA9Lؽa*(ʯp/4~8n|F"8xs$el1Vs_oZhA0q к7#ua:i²ƽb';,;?d*Eyo^]3^+֙^ن# 0JiBݢo 75%XԘV*aQQ۩xv3p*צ%m!'#^ Ur֢a[3Tr.;y1eZK'$Bgվ{0}/ɌPzA N͊4|y֧ OD%:<, Wï$j1W82v$ABs3*UFs}O5K(Y+A_Z%dX89ah&mOڳGt85:yaR 0,!v|9+Ƿ?PlVu\#'.삃}7/%V9{H>v"U9)FA>+/i$k )A52`Y2mr^ ˧IS2v0F'nQo7Va.JߴlRYqM])a\Ӱ_g,8)Nq{aȸgVFQXţEb ԮF{{]FpĘиy1O=K; Qkq"r}t6S:!x:IXlkEu26ILS5[O&8"lT$%-.N=6b}C5eߩ彭mQG\R7.fvXX݂|o]C]héd+lVfvš-N$碝Z  I_نbzA&^> +2$|?.q_ymh Y QtyBmI7E=֘}W0>G/t"zc#kA,]dRF ٱ6B$(SbD@%).,0įW]nɌrJBJtAYI0of=;OsM!^~4 <H8d0913 ģ^zsA" Š4;`fϟ:f)xFL\R@D m"Woxղ,d Q``i戀b),lQJDʍ\YcI1.WĀ oȇ.f=.}9ñ7PLߎqSɭG|_vt}3R x;xe-ojPTڞ;HbK΁tO)e7Q%ʢCb?,VZj(1>YG5?w.q6I Fu( !'0`6(eH#LjT Z]H$z*yHu`#9f  =q* r=X7%{މ tz;:胼+SA' ]E˻`|T?kݤJ \?+ SGϡ$ ė?ȡiwzhM\ow!%nLxJFuA{y0BCV';^h%+R 1)4I`vr l9i]Lѯݨ {R4ڷq.S„E8p=G'ĺD,J =?5U_|F=._Lc۽Lt X\yJ (?1e+ C]WۭmXB[pk%Jz; "i^PHhN.:E!;Vl˘yW S9GzTbl N[ |H6K\Rн2OY_ v3Ԥ.$L}[x$vE\9[bԣ?z"-,v z$v( \ L}&5u=0#.?"!3%$|Sк7=|-璃uBrKL!5/xqQ46%]қ~>/o;S]ـmAjo jiރ쎅X:`X#kI<@.6uّnCKߋz|fXէgX8,3n46H~hnZ3ݩ@8gi0<a"`aFY QB/|ڝ )4뗣a %r1N!%r*n+/H7tk%3Pu|K8xacۼ̹v>Q !kH++{H"6)02& r3uH,zhke,Y>Hw[CB>*+SrZRlYn3+:"}NYi;fi6 S*M& *Ld?hjo6|_ŵ@աvxg0pLb;zpr صȰOayO)k O0ro n?pY 785kQnLp Jmop0nY 3^)ǩVC6_q7N/ٓjH16MѾ?Ӹ\)B{Z# 53.`Y rrH~>d1o09rMe_zs2 >㉫ Qe"te_mQch#Y<^H9;Hj95>;!~SMfy(ele4,i. 8랦 a*jBK̬Q]QrjMo͑LN d*M=B1tf`,\ny) a2ʃU6PD+*2rQ~ hVOjnŭj4cҠrhZ٪Cԓރ|؝Y(,?GQ GqO\*ڋwv+gX? lDrKv JGhpN\RϭZ-ٯqa_Z^c})q0AO6]>^{|lb1 -''k f4mNj:kht]wVX"=t5jy0,䍣IiAh~m`Uka6fW,ϡ\;Z ԉm:?CAeB@ͭ_h@d'>eN|7T\9~QF'7//}T!J-E!s ODW񯉽Ux-9#sj EDROPDN*bJ+P%nĿ=LDDE7q}K9m1-#}%{< 7{dH`o&qho(/È&4WXծFzMEE&zg8JgJ 7/ vd=~HV0wr{g t7(-59})2s~;eUh]ER=0԰0;V73\xዕRc{ .K o^MXN ,"U>g2#&/\-LN zvRz RސN3zڅh cȚFP:0bocān5Ei{zҒ=}^nva w#@2Qqm< 1pFH%2pZBr,cFMGg-ҕY ] $WpqNv]c\"~čyq(֗c!Bh5I,ItvUj0IOJ=K=[#aVKN8bB})j={Avo,*$wvj"[6874ÝYl֙kѡmTRǂ1Y{x&ZH6_B?]2ݞ6|*cG~k{s3rfW')6#Z΄ ۱lfQ I2T/T`KX`r`I&gs5[xiqI:Lv61I#6h+MWmd Nĸ0d saF]V7% 6\4q|{dϾئxH٧} bԉ`2\ZW"4>}f,_]V< T2>cL̈́@4oz7X L[Su*S)u\gbsjzBt@"FZ'=Qߕ:P&=F)ī'*bj Y43Kl9./)KŅm^\to*G`‘(&aSozn W*& e$<+urV[}׹ahm+Ӭ2K@ 4O OH7&b#pHWVgfu*[lu JP?{=?ʩ)&рxFC?:4ˣL4c]л5ٍq, 9r485}[NA(t &#(8/XF{_l'9 tvw=_tA9Xs7BJF{-Ӊۍn>LWA+ %G|_D if㱬Fd&}1 &1ln5g3^ug,w#}!FjNt?7bЧ| c7vER{U87|A_C1xmm/ hK2 8$zh^ VcyZ)Sl=$<SB4t6NZ9gC$XHrm4 ŏn;be%\Aw6__w^XƊ}?E%QYIڕڗagӍ.#.J{]MTE\uh:ge5)R'dDjbd0ٝ 3,V=Hq4'~"zMɱhS SÔ ,BpZ[e+}oEg[<((n /7,ŜFUQU6aAvVy-K|٠)ٰE_VrA͇"WFù%W% 7*?"T%}3Uo:6:~:C? 5+fp,:%û#:K oxָ1MjbGb3U7lx]G]ujE2b_w£()^lH ^uT O6)o̽3+߻qԢcP& 5|1F,~Rcą^C6Cbe<A'_6pJehB% ;zQRf;.'H,t};(jg3(4B_Gp^Pքeqݨ~̏|h999pVY}pŒ{9[/O-  32]apBԌ P: إ3m _7vP,=Fg +[Juz> /]~Om]僝 : # -އsj@;Éq)8}-?E#{$ !A:p H6;me],opo0E0s߆2eu(B;G<{ao*[2 AF({e SSi%gη&X٥wrgaDs_\ꓵp0HNP'Nƺx7N=}1궵fg9C?uh7p^!I(F xw C]"Ú5tyo%]#5n#ڏ7m?elP*e{U^ q2uH9OPT?=}7z-Ov_F.@,ά&M1Lr` m,!6./B\:U;NzO @veiOr8~LԭL8JŇY*HP|_=9k#b#I87Ԁo3D)gR|`99-oy'9peʡr =ԊA  .a7u"% ШT﫛H@}cYH$²K7]RU-{ /NqL{e ڌf\3ӴtǜF6 *.ETIYln̿vAS⋕_XiV Z|t3q j>CFe6 #s`zM/;T$nfhkVIҥcڴH?|ALY75JVFq"d6{- QpQwخ-bFS=_`lݻC&iK3{Mt4Fo ߯G)aTf cz:2܃ǀ fmfjqhߒi1ӦaJ!n/Iz^{l Zr_UyRG%J0rN32)fn:0eo,$ʼn(l^vl!0DU͵vC\iK] YfdԜJgxQ|O(}U1W {oAp o \bpp uh,B xu.BnFxmեJ?DC˭&S#}$]Yl&愴 & kPCpOTxD'rKW ]`N)lzd/K1[S@aPzya6f !7p1wBᙗ}>@COP*(O0[VKysDCG4~W\Vp|&R `JԐcv:l4vCFǏ ";GPv~Sve ݋^卆L_zwH<,e'_[%R[bhk xlջhOhJ|%B)LD-sH [;aǙBD5T9)X.;;VC nxʭOH'BOF]jف =L|-Q+]@ t7I_uծHy[ښ9NJ:O\` "s.hq$EʰV5+5>p" JDCcrc"ǭJWUӖEULpFg?[6;l=w/c(ClB20m޽P!=f^xݱ :6+9;PJqÁc,1ٲrPrPh (W +hŽϰꮋ/d(k xGRWe3; @]v['ĀcxTB/(: ˺ 9q6b[dMDL(H=;Xv-a= c#7IZs{q(pϘ+ҟ0|X<P۟ȁՠZ\,ʏ' p^j]1z*X B(+|| zȡ뵾v fxg+sbfRq0꽶IL"o (ϊ|f%5Ȭa_u D (})c~fJUD0D-UZI뉎0cћV#3Oh7! HqTʢ*3ah? 65]ie wx^ޏ۸^`"/1^# W'ӕCkJ(R~O#%jNu%:x|ּwlt(aMB[oc (bqv\V N倱dWNbK@.XHxj銬zKkOH 6\%&OP7"-jd;r>fժ-l zrh7Ei@?#`k!iq}wQxws9"oT6M[HWNed 7_6s^l+uZ:#v.6鎻=^B ]V%:ރ/SMe+= ȑzT6VGA't<%;$с1:\.R[5pxmV(CʶrFtkw#`DZVeOUn_5PhI}`R'ܕ"t]@ pu 8_0xR?SFE5`.}4:hӶzoAk9.{Y(Έīr(=4!M*mbIY4%WݱFIXjK@jN,}6Z ./ZQNP:%oRK6mdwZ&:ڇ^pbڢ$\&AW kZ6\VM:qibpM[@Y*u@l5 ȲQj%|ɭ`2G;r2"oO?_Ͳ myb] =Q1=ܫfض_`Ur`4R(Sp+oH//0x59wJ-]rWɈ`a7P"^hԄu[DƐ 2}RRt!J PsYk_}Lo`ʕ 6 } 3nTCףDR&\?Og/.^9UEԫ%!`}qvEZIù:j{ٌ聤3Uapퟮ y1OTmyCcį"廖46^ELᇨpc7&aqpoRQR)r|bacS\)&1ڢz6J2Dg 4ڪn Eڪ(x:^'d+3ӚG?8%ѩ^MÐdoC_Fļy| NSe{X N`Z\o),%/GxЊqѢfdiiph5?EȽM1([ T=a8F) KMr)Xf7#'זˆ {yF5204t_UJ38!WOl:"&0ͺ:Bn5|hNjct qxvKFh!9QV1 }ҝIMN៺K6e5`(œy4,#;% t~sg4+?8-k+?j;1Xw6P8[_bm$SE}U.rԚuzx^ zޞaZh=\84(SHKNd"msܲW*^BY+!o˩QɧluM&gmϻ*+x0H/A63Mh;ZjMmwL q#@|i,d$g4 `uy罳|uC%فw;3QQl[3QV?PLVX7+,v?t#0eqa_ 7 C;üV:瞍!*wӀ"(۪P%K'|]oUyKҎ?zΞ⧔'KÝ,f77t"֒9&nB_a P)"Z[$<`qM/lPyCq&LjύLq|QN߲bڡ3rRի9_iat.`~3ſkzˬC#N~CjNJ_ΜJ Z;%n x=~1y@iH*w>FbSl| Ɔ"f`k]nڬṣ<.jxo+"fu|.EQ˸Xĕx&n07voF(qR7}-ĠffM~S(9[)'%Xp{$#yX ϲ>37チ' 3`v [4s*_HBc\e(R1 J-A䦇ܻuKK\Tgds7qe)T38tL} {b$]?[דԪ]ThxRGCj. YhJ%QލMЂ(*O"O7E>cM%:F1a! 닐p60a BޅB$yNC8D9]r[Dӎ6|gQ ޒ<(_oMY\f@ .$ܝZ)Z/ &Ӌlc`̑KD c 21  2gr (QbdİG_Yr*PNy}GcC2cʑAƝץSD1 48takr|h{\939)+fqSneW^jv3U;/(}!\A`O6,*opM4»{zp:-Df/OX $<4<1X[snYs2ShV΄0ٜō??(sQ]ɱ?gKL!vG ReAT)o>LKYt(imq[DYC]gy/d^~wZ8Ʈ$ɬKXbmὴlOAƷ%T=HRD{uD՘AR+a rwXp QĂHbV8T5։5ߗt I.+IgFnǭJ>>o?/j'jf {}Z4 CgcGCB`*z6)l9K*NK}*uF*B‰>'"cr_֭J zt=Ʀ Q$]`¦>ݱ5a$N$^9f[\%u&$>r+MWlGҞRa5Wܔ / M6-I- 2po̺ԱI _'JZ{.f M9K }`dҖ( MGɒJh-! bo<1Y!ҜYaca(ӖS cN!]O+C IUEjXhξG5.0ڪS=O{E6!pCcX^?RO>;>𳎇J-2gc*\bwɡ!f[+W?AZ%̡pQ:;7 Z~kP(TK9 I̝>Dkj>%OFU^) `<=+qSoՀKU'.y2~0z2bMrYf9y Ԓ!\1I*(/k>֝ۋ H,: "cKvqV \9=}ܨ$d6MMWQlJM#E]]Dz]TwiGdstMP~1b5=jǟEU%ۑf[)=+`# SWʷxaW=egU\L 8k}~5 UL1~+t ƉG^pSvjKlrkZ?r8/1N0&(A=U+3͗H6tMgFGRypJ aHyF+ʹūsbxwH z$ֹ)n}Y#x \rtLYY g&O 4ß htO `ӫ<2<9OJ>464?8È1i=)!JUo87PbIvv1< `A7<گC}xUq"iT[j[ڬ 38/ R/O/d $ r;$e߉+\9RP Z+uԴE8x;RZҦW(E9d[IXp:+rA,Qj%4^v ':AcHy$Yƈ*eS92 joڇu%H,; <=ɕ4/88}x|%'ש`&NrmUj_ԈK=~bSVvt`)"sx&]םN A.qzA Z[b Ԇ@>z,qv3S)6 yE0pUۘ$c!5;.yD Y4V?h( [j-s'H3@Dž6a^I_Kj,n~hsBOm χ;&%6Uø(GtQY-iIyz1@v((mΆg̈da=͇'n` "}EAkyTԞb90EX6 ysIsڂ]Uk>&܌^~9*]$TINm<*V`M)4#a #r*D|\-SL~1/BqK٢p^_k4E3&@U^z_&CF:\!EJُ\ؘUq;]ˌ"ǒ|پDY}~L;ZB$c2 $dy ) 7i^<"qՃzX$l]&2hkGbY/w߶]__r7ZY1iF@)hc^/iqq0D3CІl8i3l+#e]7^ycPploN`}OFUs"`B5!a 6%]#cb`NQTi0;+X].haڋk+/4rB@ ew G$~;]-,#SuDf1ܐmDoN%@RCD\%Kw_>,V nYEw(D(Ziw q a*/o1bdtVoȞshqN\): !;G=˺꠵ ,+CƵ`V lt:Spg\3>PO̹ߤunޖW"}XT{g;br-ܥMQ90)A=eHR14%ލКl'!VE7:az*$p_JQ3E Ki=2 5plc[C-KTU(#Duمi5fӪR ]3]3qcrh]* SJk?YʆE 30MgEGRU&#&UB0x_T2KtEw0GȹX1QN!J@TX+^Xf&tk9O0UʲX[{A/fo|o$,%,t{ >cR1yf# 6AQ)ѧюiɗ:)}!{PrC` ~j5-Q7IqskFfLq\(v.r[+L ׸Xݥ8?=*GH|8{G!ҬBlar~b=As'O2΃+2Ea *i-<߽>ĠgZDTrb `fk&` #LyqaՃ}\ˤn7yb*wgom?4)fz= !=OSlRGW) f9}$ChQt!l8cA+A&?j޼p0PZq #NY=<%r+%[X~yCKW3!!Z-:][\6;K7sͤ ʛ`P{ ^rrvVN2̔?+>)F2  gبșxoopߓ*ŇhvgF жOnJF7qJ]|Y3d;'a{8;*R͞xJ B_E L2c2yˀqF[Ea]{e4\zfoI. 3u?I} ?k(U{0n9#2;󕹠A2_ߩv 8PZ-ynI#bZ/p#ocm#4;+&0lc'K}C66`*rL" ǯ~mW(ޗVɌFUO\uA52T,\U/?8\kҤ+~;x% G~DHcљxVM;6iQxB^7q7lfј NBu/Ah"]ڗY-Z93kLb~c!&AIްk4lS xΓ^hbS:{ 9!wLsgǵ)' dϷ:$i">Rޥ\s0Ή5StA]籽Kn>62 ŋ-nȤkPD[R<@;i^>z l&' dʙWD#< 46 -$U0$~?n{VM%omRO `)G-˪?d bȕLv ccG=Io@r~{- H2%{0v% Ȳr4Z!.. =FV SSu&S!Z⹔bIP7YlԂWn$YW;Mk, 7w:UCyldxvP𽎏C.ϓwm/Or3CRDjڝ=dڃ&?nDfaفWI]6kǓ@t*#Ɗz1ك|di2疉t $,Ꮝ!pV2"LMP'E; z$J0L/)YZdݺ*7y4i>k5YU+rd QmE-D9QMy-[94ڵ+( 6& Q1f dlI\/15#o9쎤{2h5}O3lm􄒕 dS,mk(^:b.|?. bp\a ·KWVs9sHǖba25z1P!L=1A"0Eya~44[#řyA$/c13]%ѵ2Bao?=V_DVR7ޑJռ(1aqæ aT CL? gO>}7mZrlOeQ=t-4%FC"eȭ__LKݞP[M3J snnlc6m$3M $D#89ZvJ"vVAzIpcz/gLT=5ۏ{\WlAx@ZPmI9=?S?} ,TfnžK_0!ڎ\;!uEa&Pa}\-޷/Μ'9v>#XO4yBÔ85 gh|`)T7!X<_^̎W ݽRnj#0i yҸz Z<"SY{Rvځ0EMP2f~aI`{ *, &ؿكB-g_n/(>^=,Ʈ.#=Os-t |4W,sBaG>SWXk񤔋pqwyZ1DjM]#JicXpҧO\Pe& L_öL,k.nTOd5;y~Y\Vy?x@q2EK*:2F(|GG{^l 8WD:"#vBwv` zNKj|:IjP+<_a$M#xTkbɠZ=4*GisE*c#!0׸(6<Y?0Fu֞%$/} txN2%( nwYx]#ЦWcgIA4lViϫ6NBft/c*ѹl̃YˆnXlc`Tzk+uH7\+I'ia4ܦXO ;B~ÚBxcy:<ѐ fQ 3bpsu 1h=UAnHP [A V]ri:; }z@uSIk_Ϝgm8y\ cC80[22_7I䴯 a*mFbiCd%x^u}]<}m^sC=_4PXӚ6>-\N"Yś]C9Ҵn]b"t<4 ǻ|^V;3AabbЃM훊G{ -e( 9ٛ0O&! uh^ +^h]3^ݿ>S^SHS.{B ;_7sy'@5Wk朅 \ݸ9T6(!h81VJv[Huٱ2]c[UQ!a #o;^8Ѡ~&zg;],Kr}G:sˆ1m/V-r]lwF{JC/KLLbaFtT޻9>4nJt5NEY\iJX۪a9>%oX@rYnƭ|N"xAS#j6^e)Ƕ;^t$C - mcR3CpJ]LX#8^pt¹A)ڀWT;*ifIؽ<#6=gҨuWI/QLQ$;-R.̊8JоPJ3Щ-Iž#BP [6@지(].I옴i㚣 w5{j&z>볤7T5Xpd:hc~ylN. Ę+R%񲳲Y@%I>q_RX-24+vpza(wY4CW[k͈0@<k5-dzr4̌v^I)㯐eDYU%2UJAG"&w+%_UWa;zc(Jָc(gP) 9h Haۊ05C{WȄ^L=P84=f>15bޗ嚆orX7xƪEnm-%#/,I*fπ`U{R~G?J˧<1,[gg5ٲ?ei9n1v`2Bm7]Cj>23̭8RjsFlEjrïZ̐@twO3ȣ6(OhKV-H[8 ]С7f8ti|l3s= `:Vj{%7B b[`ռ2\훺VےN䅪-egkl"b>V]Et$w0r%T 黢,Z$M18i>kbs~6Fq>l  XIC1@.|ĻvD[k{/gDg,7(tfVGR(aN+*ȋ4ȗY,tzP~<ѣ;3_{|~[LѬȉ'_ z%TInB|D:Jv;g |PAQǷ-kD؎;J4W"SfhyM@u,VQ{K`Lbv HM(!`Z"Aavcl"ϛ #-p̈́f6 ލ"oг3Op3[~.dD~þ>qf.x* AzhW y؋5\tP-/X;7I1Wd朼?eXkEOI 5;uz\j`[_]&mz P|:'߉Y0@I\QqpGeZ/& ;ٜN G֠G0Z[ANyz&b%5Q3 <+oi".]yoNۼ5)V˯2U^1{`9!4dwꗋ9yo{;ԜTA+Je)1AQc#C_c~} 6:F$y+6;K44G읱]B ڮʨ^u zG;s> M?5C'$e3LZ7طf%aRPFJ*[l_t+nFmKofj82A.B"j'CuD ɫGD_2MAܐ`(]Y@2L]sBEݍ"MqYerNWŜ6 ħ6K9̷h-g9 ?gV \+։ K`sCR ?RF1}<ݩtlSOz(ZSIÌ=j"{)\(|x]KΙ~M (\\b`V!{8{ н s{`q nF݈]lz-c Jm8ca[  N!zSiqdoQZg|cNr﫬pʡCWגShgw1'ҷf㉧q'y{mhD&pN_fFF'~=Lw<肫y&5#ݎ_di6t 8׺LqEx /h`"!TtH>&\W*7 vgiN?ud)A{q캚Cδ&tx*MţbZ "Sp YFMtW$lbz(+TT}z%-A6Q0RVc@2 fBۿW"-bH4xN_F֍L +qiJi#._2&!L| WS ͵˱ D,T yK8ݻ#&6!jǤb]{c+"5q#"-D{ PvғDŚ+[DQ| {6RPx 2I_ L\ 5"YPXͧrKʳ\2$S=/&D,*w#{~B |rymNZ}M7&,eID0qCzbJ8kz!BI. I0Jom-ZsQըso D5Vg+{)t 6hŒ70N- ΫBn "w-: yFJ1լAšOlʔlpi걃%wxsV<Α.EKt)x}iBz+-T>7-p嵥|et:҄o \ gp!#1J\g~stؙE+*yدai3^ԭQƇO{p_%h 76\ /lZ 圪taiRmY 1j!˔+ s\eĸ\"1bͯ %X ѐZe\@:/cI0̝*3=e>rU&P8'>hyCgLuG_=ǼVNȅF-X#@h0vKh -ZUr"R; +@xW~ Ȟ+fN6al5QIKX5Ƿ[kecY/%1βi/Ww=;j4vl}4W |:Cd^h✾9֪FUTf6,rZ?nz%BYnVYxǡ\18{p 4ASxĻ/V%9kwSƫ\DzHuȡrbz 6wKugMN0/1֕q^c3BTcR`Y>N50M J'4+ ma{?=nȝ*CpX!5B4C<#s)Ҍ4oD)u'i_jM+صNck|5&#&H7W%KU,9)2a'0muK)ӛ`]șfC $Dk4DTvSƽQm#ySUk}7`z܆T{Q-q.L>cxBFxE#c'=~6%-.`t(yq2 )ګwB %,k8E$7,ʦgȴ2D*釄 ) 4/7 k'5)c+FZfk.EA &hW{5֛gtmKX@5H7E畲:]XS~2Ee )"^3hI5{vZLB#ʱ6g2˂KtvKڳo@t]xǃ-[%IU6Aq2)rc9A|NE8"hK"|UR~~*P/1d Xr+ej,ILrD8>ǩDwM_*f=$$KztON#/F!j$`.F^j%4}+QAŽ`YlعmOk^X "i#g"RHlƔqQ> ꫂr CK +gVZ8K~"ΤMz5MDDޭ8M6SmZ 6:ÞESȐbH>#y<ߺ-'b!i2ʧRprHcvk̲%rtc"[ɛ{TSgx ث)h}(fCc29bږra`N3ckڱCr\s[$\#{s1r0j [<בfy W4찜3J ˶ }'3,qfƢV6~SEU Dӑ}T:Aܣq Pbd']t5ڙ=;PNu%'^+8y\$V w0$J9qG]sDro\ pi'0>Ksw}+{HI_V ڜN2ETKωu|qEv>)RD;h"JCwh$5-{x/@t<-':yb1\dmmkjQ Yk^}asԐ@mDy-z/^4I Q fCc *>OykrlN˖S]$#whoHnoypUvBIKy#VM; e\]y4L:-ACB *c w _{ʹj]£ dm. K|`:N`e]Rmүb8a-331!p݈VpxI-pVn֋-Q0ZT5"U T>$/ګ@3[QGO@ޝ ] ,4esL'J!JF'Lr8p `=b f:Ng}!x̳͢(xK^V %cn5yIEkӁ(qޒmmRVnаk94߀!c/*uk0ͽn$2ƨ>;)A cT^XתqXLSmRk 1降Nj!9 qr}Sd]as(4IF{2'#MFNMGQ ۏJɊC}iĕ2;Q/B]yo٤۬笙^.9X^lK.KV̽f&] s 2fA-`W؁7S̨ D85ܢЬnR:55Aƴ>tiňd_q)ʅ5x=>lv>ラIHԧq`(OZmɍho I&J05O&<z2 bCDkщJCB.4Xy]XYEZjb][ Ts uC@|0r; GǭUO=%n S 䈀?{%Ed"&x2qH٣2zɞCMdRB].#z7כ/ C)&wcޥ_EXsf~uQ}("Ċwˈ0Rr#&밻ToBF0^)&RbƧ^|ƑIg7*tL1W IFQh:%L `Y Roz8' k=hn%?NxbE謟MW6Eb\/N%p+#sԺL m]OF®&chAS~42p~hkk jk^X\+ sqoQ~,aM׾5)ߢWH}1*GM:<"p/D1M IHfuuI$4gzoyWF,d0`V5EEȎgۍDǧw0GtD/~;mޙN5$һh˶2뻐b&|Oa*`oCqcF4* ,8"s,0d9Sk?sw;[|܃{DPȗ*‹#Z%Ӗ0WAS 7jnݺrF3g6 %E'z85kbZ o7)}ez~ n=`BIy ?ѣLO0rȗVU_rBlH͒`iTN"5LUp-釙N[hարi_f6 B /o~FNaͽ۰*ce5ȸ;=Q֗RRM\꜔e*,  'i}q|)%r=r}߽8Io(s Q~|}.Y_[QúVbюTV_<9*Ծ7 ck \|>8m:"~N%BBfZN91eṴ0Ͱ{ꕴ]<ѽkmI+rv*m~tb5{+r`d9LyQNa^B{2UM#N0c0,GBrD8Ѣu],v'OzQ`z ڂڏHs]pZ=lO_ O|̲ؠ>ЩPNgλNľZg}Yxe2voNG,|:SyeD\ZfD .7YO2T^}FD(}}})PCU7>D W]2G]6Xx9W_B+}FǏ%1n;HϜ=7_5"$fJetrHAA U-Jn \"fyT^{;ugcr^.`p ۤ!B.\hS]dQ2iGQ]`X(8t;~2dW/*02Hƽ xѳ)UV~2?(P9]v"E|1~ƌc0/@U"ÝNCk{M27N5|,kǒ!.5* G+x!Uv -}]!oU W>'ă^IeŞ6 iri:Qr(I_O*! ,u0ld <\-hB<^ l{N^yËޫATg;u[8F۩$Jg׎/7Kd}<5\tx؟U/(Փ00opWedlln6Q&@sPҋzzN aoY u/H z}H’zWY`eGۘ|Ρ qd(Rݝ^ʫ9ʘǡ!!*A*3f-52c}h7sYJ׋tlN _ASU7e5D\/ǡa Q[xiZ s3RaX~?Q8v!gq --Q{LBN(S}IR %S}ԋFBXb1!h#XPPI7Hfq,NfIY UE;/y?@O2Ml^'brs.O€dwx^k,]vQ%oLtP|!h$ZZ 7)Pc ۛ.;5⠟q1 ?K5΍1B &KRX94xEAr fbqq;D sS*4!iv,yjL`t|`jp>ݕ(s[1e2sW^t/jRwf9jH/$Uzw[a^!cu. K/ٵ,,ʻ_I kn>=J `) SQ#^'A&65iP[Du iZTwk :/ċVn@U<,(c/NWF8 uhq˔حI~sz;&nԋ}.Wx֟ W%k{`x餈@}&Y|Cs4_&}ǜ.3nvJ$6ĉzLJ $s%>,L!0gnpu"F+|Әkz =liy_͆@w'N`7>EGܺ'Ƚ.A-sT37m"o$VflPq\p O41C  rp쒞ƞ˝$vj1z=n{^ށO1K@Nl?-%{Vjmt;c01ΖP94>Y6,=U fӨjNqӯCyfZy;rwA`;qЃ)BX-EW 6XOz}.Ġ:M; tA̯禜_dU)kru<[19PuQ'Bp4+s_M / {92L+:$/%@Zfŵ1qay~"gVj  u,j`zyJ`>) q" &/hFN颪?z׀~T΂wh^l_Ј^DpR@UR1 (S\M IBd?jPC .e[lj5b~*" , EϠ7pJJY #lZ_dz9l7;Sl)zܾ~TvU9DqkσW tDd]DM`o[:QpZ+ .рA͘de}Q+a}*JMuf;ʮR"ڀ-6`(AHԫ&Bl3Ls4\ML?տ* UŽO}OWtq{[o%~z b]]̙WdcZيL78D#\N_*EhrCLԙS*_?qi7 Ѩh &^)_ԣ8+ynyGg !!=:{4=p@,ʔ ELCӱ{'"Q&ͯ`Io6fY !0F-}d&G85 X85*gkΒA no\Wo1>77`o4˕I=bq5"<Pz)ɱ;/iK8#iiy0H勡9niV.̜$/=n%_4hWmD6@vz*7$ IÏklql_]Ӎ$-d7(;/ >g[x4P|dxtGLБ$!Ezg_.p2N3=T$1Ƽ..!YlnoAAj!r2W-)biB+3ٱPqYwEJγsD[k5yYNF1U4Q."W ǮkL>h}+W-ndK1Lag o8~ѕ~C"LN99+R$N\3uMhe9%|L<1C;q1a q ;st a^oAn6t-^+Y"wԱydn4|4&QKE#i,א0/7PJ|عd*EB$ё@Пf+Y?+"~$3@S"*|Hұ kܪthG Z/ fYÚxw }S`hE wGuqS@)~6;#W̪M?@^B bYnZ&vV,pRsO-vBt,sZSY/3V| ,RFy ^Z w]0k m(Ctjw1KAK5uڬؚ&[8gT*`o b~_\#c%9y ~,[?E+-D} 6X7`P|6v(ղi-(^[ቶ󀣧s5y*BL3[%ƓK^֔z hEGQpmt]=`r+!}ѬXE~@LJ7򠢙 #%R;5!L2ʣJJo x7ǒrVSָPDEöl\lH 2}ϧ{dO օG|-}j7-*սK/?|ą^:`&ʕ(Bd/G(&5tSN`=7~Ek~8c`'_:Q(CA5OkT%} ۫Y^Iߜ{9ݛ&EvR&Z&#|彦v!ۭLs8W"iM(i6/"p ,!) ,G lYˊzNts)GiD0z8=?kp]~Z/*,ૼjDfy x]l|) w"z[RI-nտ\Kў2Y}_]]{~xz}íMUG04Fƴh(Cu*l%7oeO?주 !0xV.K@~$vP.6MrI)|˕gal+RJ]r[PqLy8}cv!5ȩpJG  򜠘CU{Oy"Ds%.^uk@fiK`Sʶl<YoB}0L8S1!Z]dq6InYۜۑ)}VƳ9#PǕ;.Ris muE(I xn.NB (9a+"#!;zj^񎯧gm5J ^sETB P͐G+mHI&ՙb< ʤrJ-!Ia.qmCqʵ! 댦}O| Þ7^檢vvi]8\xa{VDR)Ļ''EW b,F@`&ˊڏݰsg Sگ`9^WnaNN& <-U#j{*uLϭWlg U!kϺV\|ѳī| $cJ$$BK+Z4[qKSo`Z&x~$LΠ-Q4?iliD\30vebzfvI\19YJd>CiUb&hX Dw"r ٛx!m;w1 m UҟwEy)x~ Ȑh+,S2.[0594)g6xO=-R\aJ2 -/(nE}x+9) ~S&T!^熌R`2{?pˏ q:~ˈǹ/\6M4[>@ahAXaҊcF|؆[rGCd9BN0SMe:fbG,=}V(2MƻI v^x P} _:T{MEq㗰)霴S@ӌBf@tq PpG[)e.y[b&􁘲 [ ]^N흟PCnED@IZFfF# ʩnZf ezy)CӚR":˷a*[i kB阬n#;I WUOo|t -H m = {^"1wKX\ڌ݀D6[մ`<n a9y'Cw?Ls_}c-<0Sf+>-`7,/W^],qX(p)R;n9>0YQOyP>AQuj/J&.v `}"GĐХة;_Ǹ5=;!W`5_\-\H^hy,E2юU -8qX/p3vѥ:|գ,.u]<5)Gu5N-:uUpP\t2hU?ĂirD-@tܺ?yJz,{ z6;P/.eG6^΁+opv=^^  t-4 .dy7Ӡ mH΍?QT(N#Kv,ПRӡ+PDmp׫[jTo-/ې?>e 2vd|0$ZIMn-rq#M$x埤^6Uc*BzAvNUcz7\xe+R)N q Sߜz$hN i<Q>2ki؃8ygMK[fwYlzƚPtmB?=tHJN t#27H.cFٳ>s=-r@bZ[c0q9̥M@ђBf_S7|5 ^roC<'mH_7ѷaTulj'gJnk{5;͙5,;d3FË :I;?9 |t<ޜdLK-ۿVFҞIьț V@sBr&Tᇻ9u^=^@q,y)P6( 5{EsX{DΔxܶdʃaeKה"E=c BFT8 EnwQkO2Q} ޴NoY6[G>Pb)RɆ$poņ.]Kq ihz=F~ /u{zUhʉCT0)<pm"ĂyKbGqkr :E"QmܨL!똴z:>uW|2-ґB_҅&E ndE|B7[$_ IjNkOsx\o4z]Q75h% .sXD3b|2.dzr*D(oTQN'գd_Y1܋y<5=a$ 6tP٤4СFޖh7( Z:;G,N~-}N 1BZEfq40FuB(6ᬲA5"HmCo,.=.RL(Q$S;n0qsdU1.~6wC ~UgqRm.f8hKJ a>lsytcܦB{{Cnei%6<+hĻ= (MD$ ÒB15rkX3Šy#L\Ic)J>;',cr_` c`ME*TZ pΌ& &5H&0۽Ġ{T~vlo. mIaB0,+Nׯ/3*92 N.obY.$md8 4I~T"@*:#67B"/ӻELxdss leZ4 /N+:,ݝZֈK*r6!9GzVTOUeQ[Zl"2.Syu{2/niHmxс,Ջp3~"Np>ln6z $-RP;k+@;PNkDB]U mm @S Lx&%hNY1i“;IhZ>^ZR*f ``v5g` ˖vh]pi"|z;|,vôqAM! h+am[.T<KDSNhb[(01?u6Z0aӈcibXеaI@d|Z:>j Qqp]y~CK |$6)|.y鈷 Vp)">RfAb^r^9ŐT~vGM"M:NS:>@F%S T_%BN9PLۓ+\ #KnmƸyk+<6Eg&= - ھ4HPcǧԔkgOݒ7΃V]AZ@~<ɒ]V!f&@VLl̕$"(9v".K1͸:Ǡ 96)?SPn"T }7=d R]Engl? ':=3xbiYbqHKKQ#QعQ)`11Ac _0284qŚ6m$gw^DQ;*Ws7⮂W8= YoAة߶xӛoMUצn؛'4 uOYǖ2Jϐ*aH2w2Ntmd?'(\ f*ĩU1Ґ-G^&v~N{EX{OZ=],#ף ;@|[(=&Q,|V2nz $QyYߜOM 'ss nB 6bS"8i,gI>Q4pNȷ@kpn(adN-&,SwbmwVv߮t6L+*PRh4oYKK٬:63G(`aߊ%@v}8Zھ?؃ Ehb$]dU4ucKm1w5WPj_hfHIw.FW[ =x.Bpp}>aV~ 4uWA|$9DŽ:d.!!_j'~ +/ 2Gqf :w_nNn-e@h/L@kgVC6t㶒n e.𼚑|3҅aa|_xD= C}SsFo4? +OՑ]Be:=[XUa?/G0e1$n%oKq/c ]b?=iMG7? zRrQǤ^V%`$C TSDPGۿ$RI>8SF,=HZx՞(W)ԃTcA.vG O.H$I6ө 1jk鷿 ߦ 92 5Z(=7ܼSt^B R8.fn;H65QJ/lj6Y&pciK6my_ʽa)`$" b)*\q;C,],S޾䲧恿XOLEި8@kxe'5[pPҗRH]ѕ-}Q[(f:!y3[cЍH$*֠ 7 ":MyT2P"@])ҳӏ=8*aeVGJo78j! z+M敥V6rQ"9 $ftf$@Y55?>[}!žԁ?ѿNM4im69p$V-6Yl]1n8{N[R $pP 6,L2z>]Mpf冑<1|%P{\ŴWŶߞX>QCyoY킷 @Jn&AN8h`0\S1jN*;ٲzڴO'dD Y-l$v/lr_ܥ i*ظK;oˎ涷5[@JC3i峵/,Uz^6{mB% bzh!_ŋph3vA.n.*:6Jlb D>W:Nf;ֶb^[Ixlk q=Y2+nfJ࣏͒_8-U#wm* 2R.@C(N΍lj@sWϱ;A4CyZ1W=@Żouǿjƀdi3J0,'Y Ҿ, հ8 Bސ_OWߝ2@wZ ~\)jQ+E>4F#ʆ1DjJ?j/)hA# K_[o6x7&Ays;fN'Sg(>9JI@5cwd׾]~LVNđm&`xBGkvKDZ. J0WmBκ} Q'jpsI# Qpy>!^Vn^|6w,pjE|V]q TQ`<[R[w3 Rۗj}1,.DMr6h4ao WM7BW{c[:/G[ ˓G}Ri&l]U3n 9.2pj/?LC 3neB?Iכ[Hq$R'ߔ n'%7-)MI_+ q^dbꅝP&) tv2hV=L 1.d8%MWKE;|)drXۛ0ptUw*@j]fL >k"h j-9#5k&j kOGX0|H<DƶG+ ˖ۑaծ89ޯ*.fj؃?Tk"Y|/5#2čTGl㔢}"K Nw zGq> bZFv #xgbD*k42A7ӹ@†!։F%Co /#F,~.Ek(+@m%_fVyX%OƂDJ35OSV\ßJivq10HAX$y!kZ\s'GPrv΁ (1/u \~w DPGQ׬[;6t M5vQ7d˄c v\MI|ٳ[״wZ͝}M,[F*)t{WMK" ,pr,0f6mo޴a`QϴLOI ǂԇ b&nT:^dՊΉVr_GRKIE;x|Fi$P\[հ1^YK*}qUTB}YU>&u)DA|u `lW1iI4VC5U\*mqUNGA ri%>ps:StT֚>Rer^%SQsY՗8^ޚnԀQAR_Ap"1'ߐ?=>ۋb3bt(&;F`BzdrͰ.1^:]d@[-_ˤhgJXw@xd4~MS1a6h>Wm#.I^"$`7펍N |{3La46c=$] /Τ9B)k|4:cː:-UrINay+%Xԥm;(Sp8FARmDcc/gZ (W $AIٰGd)6~ ^*J B".ϴ*gIXpwe&Q\Qe^Hʜ 2~n( `@8jvr[8[P"V4 1Σ"Ȇ\JMg EQC!O~n;ScH{` E昿u_mLF[Ujh`RD~cjI/ښ;wpeFTtX"7h ijIS\rqNW}?mɟB, J\dg5jUL37%#vfjSԸajҶy+cЋ}j02$pʧx|frk>0B(4BRW_ON YI9':XTz>hxy-3kb* xu^ţBlld$;ak #`:vJ3Jg Z`ßFFPăau`Yw<ƈǑjEU2Qz-h9bxi_ԛvWNb)z!`w<-΁gbo{-ԓq>dؚ q3ha&oQy 8OyfHA/>"d-b)T*ͻL` Ē7&ҟXWsmʈ&%; yyg$GespPY:@\R'm`<.w%DzJ~t9CVT{SJW.ah*fVhcw[BSZ;Qo< 8L1!E ,}YBG%Jup@P Qg+M/ >9A iVK ϑbZCG`s*4Y,au~SmSj|b?";qFԂOt>9/ˎT 8 ?a|ʩhDf VMs?mUwjX46q?B. &m+AF5x!&/*EQX! D ~{onO0@3s̾pUQXJg z\uţ k$¾ J^.~EKo_ ̐PYHGPoSjS;$sMԄx()pP i(eGp~VN'5ϹA!>_;l)mGX$]GH1 H?mE@\t TѱV]c_afLöWΏtG}5qgZԧ<3sTJbqfņ Z('ȸZ!:*Ǐu]J_*X0LC5ie `m^ ?Zl2 -`F2u̦ d62pe؁nRc7 У9j ) uhTnt}Cx}5A ` ؋AT`e d~Xj:ur-EmWAE~$S7.%wa g!aRKULExVqxY cZNgh:/v|'sE'Ϊ{(tA%fBY0yaP Lk` LJ؊@;&urXq3}Y@ֺ.gsP`]Pc<{`PWz!m_kmnzTm̏Q?dHCy#D>jzPv'8%n D1H9˱:+7uiτsOO{i+,#:SMdsV3Eա6@t*V2۬'f< Y}:]!;T" <0Vl`= ȓ Ib1o{%ϩpSPJ(1YXb;[(eӄz1YJWkhO_"fzT٘/?`rW+"zuX=S:O_@pNrxF{e.p0eu'v(2~60u."GmWlDؐ`nui,slVMf"DD6rk=ޛ2(=ɣf-$O^d\ ?5d -S'.)KN(YE7>F;x%ȃWn [QuHd?]3BtnIZPDxpj&:JJЊ=Q'Bs}Θz_δݝEi#-MAك{|W!Q}5v=D?ɢM]BV"XHf)ҶmQ:YB-~3!G~@T //0FGCHSdi" -T}] oҖz x#K"|=8xK'r\MhKbh.72(T6&#HAsI 8alwY 0rk.>jP3!' ]E~eZ.O !9eul{jGD@B夨ś2Rψ!˺~Ǐ+jDe$H"IOwew)qM?z<'"Oib -={_ DN80k/eRyJ3ٟy*ofAT܍ F.C=X7@\)CjeP B\Cˠ4m 2Anwnj| W@;m}2#iy(_Tj[p0+25˵xM\ʧWN-z3yvtd ގM,hsYYј ej(삡 j>4G]g4B8:0e8;rBaw^˅NW ?顩N=9Wnl<81>-auwJ<߰v v-`K}i=i :Y8 @6>ڋ y8xB7cD\VۍB_8u q T2B#%6ơ-/3>r2Z"颮9,=QwH'GUĵэ>2`fFx3Հ=x=U87]算ʁH91A$ 57#'<(==qF.PP!QY\#9*[Zb75ed!ݦ|L9M }h&N!>Cʠcp  I1n\KNܱXMҁtA_W\!:W@;W-8ց*ұ^ߋ'UB >!$񺜈mM*?(v)r}y6 `jFtBEn4i=aI-S-<ه{Q1Z $5pH8bۀ et_ĺ?in9#b0s$H1J*z~* B"#h5|iCӹ>'ڤih5]!^ c,%;Y܏2h8URR ꩫr&׫C&`Mđ NRx@ N(2ߪ;c}cwSK7Wlx1hJYE,T9$Qd?thzۻbcBnTy3бD*+hlr^HǹZq߰C'%X?9 AwݦNr㋍%ax7$EQtK+ozq)t}.W;ft.)Pgg>6@E`&@aW{\c KǪZK8,λNO3sn`:vY_>Ni8{g[܉kb~U֎fCg3YG :\Hd`_?#̹|N*s6׽'18_w/ٶ&"3k5o4.kt,=1]|m誒hm|PDCac,DKnHOje? >n.[6:cPXx}8VofVCgvha0 W:'/hLNvXjBF?ܒ|+fEj59G%,'1 +qV,/S&]?oRQ1TXZC8FoA݆s٤6DŽk%pZI[;5ˎA=Yb?;5򯿙mw#H/w-kk[xXҗ3-4;:3@*$͔s| 7JN/?NSq4 &*pNP;1F6>l/x;%d))'lpr:w j|Xn(n'Эc,] ڜ *̲dN+5vߚep3_sքOl>b%drCzq# 6CQ”#|(f5ivԬE,./Y#8\kV n&DÀoO:'-.==\~@U9 a\E.y}`?8}pM9n `NOYD9W\tkVC`W\R>cRFF 9ku?5i.s%XCmJO>i#B&;4f&&跤HhDQ]!d j CkVzqaVxS7XvM'pM>($NƳ8vq{&X m~w!XI{M4xG߄wEˏUu2I_G𪻆5'XfQ^3Tp$ |zKP ѝxOg?DTH2L7ؽk5vv+KY3"Z.Q,65RX =Z?N R;9^B"e *k9Y@t[*RodN%q'R!{܊)҈!X:Npyƒ'X咸XߨYMeuړMr^uüm9O[\YH vʺsgvq#GL$'oxd//<$u=徣$u ?gsTY./ʙ=b8d ɓlߔ0}!S;ӥ{r؋ڝb!Zl?@XӚg3he&LA14]i 8V2-AUZ+gqPp4:)Cu~#Ƨ&_V+f8Ī J,:?7NSg4N2j,siNA4r:9T ! &p:$/! ]bNpµ \ )J&En+C28`an OcPH/ͳ<2_ND H/ \1`'@C{E,CH*Ln Y[zptztLQ.elL7t`G[*(}Ϭg(9CLM]sfgO:9Z|](+>Jc&@V'1HNΚd B'Kpr$FmvV9XHp:6ӳKv3߭o5Y\ټ>1XQlgg9 1&N7CYW* V9xs^eM/E寀He*E;qI/`:L]Lj-X.Ll z3Bf{?:tJ&R7BB zsՇ5x\"ҭNKXOsY@>XL,ćIR;#%G J;5GGˆJ.x~O t!.k|k;CK˕4q} 5GUZ> %ܰ ɰwt!5L/x͚qBT3MWN =-ƨW2l0=&[\2z(6qְnG% g'̚;A/XNYθw@}0룯8aSy]/bUМ1^Z^ `ZWj#zA`"h}+S@V&~3Lߥ0skUՐ]ٷ),3'Hik9GȂA#~:J?x$<>yn./2o43G].yJ2kG]. vXo4_#fe`,(ҶwYD#~x9tlBA&L,C䕳rFƋۃ-oeem1>/9[UL嗮rYͶ}`OFzL7#ӃװQ-Aˈ-o+ lHkmfDF)u"S9⡐)LO&AݾmwLj ]!'xZ f4k34Ci{! &v+H6k2vѓ)W_B|s3{zU~sH[C[ALjl< DVtܧIQ8(DWHi!] Kv=PAV&g*RZZRt`Z`dǷm(1/B:Qq(i!d-\AO߄-ɬe. ^LpKt0Ȯȟ|OCrxb-Hh/;%kC˧gn S^e96wehrukWB 89WҺZ׷4e,Pv lQ{3br 0>jZbr<-˗uRz?"IL'F.R-yQfa{؈ز'DuEss)D} xݒH9DBCiuips^N+Bw8q+ϵ[q4HE JvX^g>ic\˶t*qfdM?? ';u}=sJ}]oAƲ7Y8> j2;Ù\%ݠܶW)Q"ϼM50!"3*xKU.EP};D n)ܳ }ђ'3 8e-)sē"p: ߧㄭʫG)c92d՛)ݚJZrߚCWXbUStPMR=} m,Iz9?nRUd+#b83n2)/!-zx|?.w1\Z.gVo3Hj5}nk'B8&8OlB7k)Y/aͬ+O4akct wT+Wog<XxOGqjPdh|+]u: A 2YJ;3wd+iWeRʭ8HB(a3mwtFi $N Mbx@ "4|f( =g^#fu G( &X'[Zq/e*%ool ves@5/꧌^"Cv;hEc,,]4 6d7QjCm8[ė6ҕzӢyR_̝MXe!"0G^!.?uc+WĠUg U.8ku0fky(jh=MNI<Ӌhݷ{7#3Wehщb=3;o0{e†P9@EaEy19%Xn?4RU6'f(:Eah[gLa(eȸ0[&u),a"lEP fɌ^ ]6pjQ5ʰ=R*&-^]a1da_FMd Fpfyq gl|<10H(ߘgrBAȯ_#>{! u'.LcFP- CNWVuQ`$/냖k;EDVi^})5Æ,?|¤ߏٔ ܺYAΤ}Cߏc1eQsҳd{1 o@m +U{Ҩ] 3nHÑ)$ QE첡tw{YJk59N&' Ǯ.$==="aPy^^f7h bH$`*NU`ŗxj#PV͠8gaxe1[=5]持Щwh(`mX5JHNl>:W1I;ͭg/ #١SI5zQ4`ȑ'B2r8!.KF"9lᮂ2X }WǜRL"cY؊fL0= ܪ e2C|JnMSt~ aWdAr UA$YC{2NKwqVfHB.W#&qZK 6e*n$ ¶ _2[~RsPX?a9 ȸ}J\&m w]` 8r[9]Cr^Yn j\S:λpՒ W,̓wXa)>E2r~`tF- =Bg;P vQCnQ1tҽjv(&w2u߁D4 A`i遟2Tu"qлŗ"8 Rm!XyΟ;•_ZA J_-@pI 9':*k"%­M3?({"5/ $maہh`F{]񞳚, E8R(dwzך,3A"EULf@B"Ǔ0 ꪂQt9RxEtYu.Eء2BdMr+!vjS]:PK>\gZ ;rz(%^S* 7j럤6Pe\w_A\TI*_SIFΡ8IfslMjᇯuS3EnA$1â AاBO9,qtԍ e2)gR3$k/0UuRICSCN*=+kV>QaZDws):5B۾yHFb +4K>[T {[6R G>%˭敇؆I$wsY9{@^;mhYH'1Bv`Oa0ijhp[#(<`_uO|Aϫihc={*]ӓ#/#ĮW{I_u0y?\Dz)7@KdݭUwGq9LeZZ]Kܩx&$yB͒s^ *m[|DF0O,>6>oLA>Ƽ5?.ʓK1XapjI|>:mn{tP1KXfe=5[[FSsI% G꠶W|"plN1|ꪔ;pcz%ɨ@/%jà ՗=hi:RL|ľw^`V*>{eRXe~\;O1-5:sґ6D$+*:-D`h*hpyR2Ŕ`:;kq*GUq! XZBK`gSU )Wjm?#k8TI2c=Hp<@qKT1Rr546܌5jchS =DztWezC.tvŀ>{ٟ>15&~PJ#$S`{yb Ãc]m@&u2Jl_] F/wc?\R(, hrE6s O'3 sp (+ۃ8^ ǻ+UQ;s\e0iP؆X 4EcbmU2ھͻ폔 qpsC/s*:MBXݜs;V79fkb9X0PI67J{ mnj114 w݁tlL7 BfHm.>ºO`H^r7Un ;!P*)㨕 v26{3M/`zB›F s.a /CC4$dO}K[⫚i %3P(9Yjy-i‚Yc_Rve [r.4WUmef g781u`[K0I~{|o%Dk)F0};?y/x9Ghzybݮ sYtp4+Kvsot|Y4B& ؠ{5E"֍N!4%\J*8enaٵ~K)-ꀜ9ܢ*f>q<ӡ0rf\̮9F6"D!^2]!8PZԔZ #.[c̊Ų(V$Ewǫsˉ=Tzޥ°֪hJֻQ W' uyIf&B%G]+IaZ z Ѓ< *dSv"{l.y[ߔ>oh_rLS.GҼjPHArdC+RdSu_ Q(3ٺ%N:wFZ 'ufa7ǭ#/)wt+TdUt*I >'v< k"幹.U23$Hi"$F=G$=)؅o0c"y}?}yںjk(S\ZG٩OzB16(>"@81I,eno6+q0!o/eְp-m+L[Hޡd磟̓"*+Ē`$O^a^p7&M"`z<\=.4MӰIdC )Y$$Bl_P4گ X@~ϵjdgk5f8c򦻍TH6\mz[9\ 1Աظ~>KY!:xE.LQl3iN6$>ь;9O݀XWGH\H|}/1Nng/b*ӌeHV܀ȣnBprK]fX07~ڂ A(GӊHsƱ !b/fA|fWy!ʃ)n6m >u9AOIPaf~)G p~@`,p2SgKAxž :8[ !9ekQҚž`B-D[V^QM6Yorߏm.9)4sߩB<=5/]*D ׅyLLą?у/4$ hJ{5yb)Wab8չ%Dtb~ﶀ\:߅ھ} l̆3 ܗ-^ޮ Ò;^G6&Ns&O7Sd>KuW+-$-@q?}KXy+jˌEt2Mok<! _$xIB6܆ C23YaR4pEh,%E-vXA} ɲtB@C?S.u#;Aù#Mt#v*zPeY'(^l]BTSounXynm(?N|_ mN `F~i&<^p XU zK_|2Z z'IBc0S `3iV:>CBHZWNA72ӷH[XS +V]ˌ?Pvŏ1^CzYp낓 -7պ"V(x{}dx6ti2WiRlb-&lxSku;x$B.7P`KAujy̡1aQ[IKdAJC͹4ުD.DiXaaCSoDnڨi&`fWˈ*רUDq-}yr_n|bx32zt0- xG 6ݞz>}&TBc jWx Dԩ(-`eg?e8_MOrVxHc^KTpM2) six7Zg^Tv-qK֕_o\2GP`e": F!ek{<9l"{}ž`NpH1}sV=ْYX~Xͩɚnml\jHbEݗro wRR% ߀#c/dщcD)4.1[͈MVzn*Cw|l>ܵQD:+@8UIlKDeUh[C9R<3V'cȡ9U04L:mm>ٞOXA; 9L$ȸ~-^=ZL;2XѬB;6c5|[ ~Iwmƹ t"+_$eq4<$V ydWl*XE$^=nz]W#US iCswZMĭ>֐rAD%\፳z2$7-K,l7^K٨7rbp -BqrFSS:d]i,(7 }CDFTKͽQW8FVfJ p$0.3Ԫ'wAqrB:e9}WɄO~{*3>KQ-TFXu\iJ^q"n\lTdP쾯E}=\)-䏏B@5cRI.A'WӤ?{c5W8sge>?+a4e"<~#yuen0ĝ/ @e[ _ ,dj~/:#4_ ي/ AX->Sn8-Od;=tU4$!{cQ~-凌@ 3KloI X}61]K7!,qֽ9ƹ/gQLD "R`FѫЛ =M߲lF,(71Vq U1ySp-|wrIM|C"Vib 'ҔWΑ!wc"[`¿mӳM57;]GM@dP:La]KOLr$\C誇O/"ДAf# /z{ā89NNp@/ Il'qɗ7c [w>F[- ieco\emO_w[X{2u9n^;NV;Rx )zoV/j$w2ʆp쥾m[_] "3{r{A- [\VAQHԮJ ը4ׂRN)"%V`zBzeHqZ0ozNp&>=@11˱77PQܪQ!2ʶ਍.+-+=J'T>VwmdhX;F\3~/,E$*_ O0ᔺ7UcO`sdӂN\ȩJY< wTPIkx}1T.:S- D 4)N=,ӲWYgfb#֞!]h6xP.U@ *!c'kA2 ^X|i'r?$,g1m{e?Dì+CйA6ƻ;{.zA k|w#3ykGNb&_ˢ(maʯ{t`}¾S-乨[ I5],ƖN :ن\ WM# X{Jt>ЌF_#FNԡ^" :KAЙ#%F'l t+|yɰɛӬdJ,M&@-MOV=ϕV{lLE~wn&|Jf'ĸwl{4?d;.?9>2Q 6=̾۫$q:5Lx'90geYVI e}XE}WH~ۭPlS[˒ *(m{z I|p?[qoa;|5)gL=e`0"$;]j2?JOQ_\k]}IV ߟ2`*L GkN0ĬP`eV,X㞸cjr]t. "}5'(ٴ xR:|ŗJd"Y+vwVs]a:b﫳(qф/s*ѧ@)wVjڹi΢Upe)$CT5dԷnq޵އ3Ybʢ'Ѣ$Xq83o GiLXbqcȼ<4Qw-;- 6ۈ:R<4CE}.'"ͦgb\($:yM3rKš&8I^384om?~YhSE4U Yo۪vC1M 8 9 «C 6Z!$gN/G3$ S'w^A*bG;Mq^JwLhkb u4x@ָZ3ytփ4V_˔| 1DL4=IËL,@cD=Y2ۀseJtA/~Hsa3ƚ `{[N<4s|[8Dț xCɽג6&oQ@x?'@.r\\fԐ@C\ǚȺ 7ƅч/\KS&Y!N 6EDo)nG#7Tc:(̊C2ohïYelhc-8,h PZNrـ% Z.j2V:z'-Y'-**}Z?~Ht9Gs$x&bRwkd"J9[i?6:vhJC(HoѰ&F|`ԿX6>CPwyDJL`0&:ZE[MNF oahQqVkyLtVsui J.r ]R" \QM.8О!E(KB"h~<^K4k` c7f9_n3ugQ7P`! #[$vDp{^$ESN岧fi!߾&UW_Rw,-Yy1Бr{.РYUf݄xss| ul.tbsLeCXq(dt,U4]:=}%켣J\~7ˆv gYYj6>4e%'K3p|&-qoXiٵu ۪ =Bf;-we5_w\m+OZ0 $m$*wxm8BIs ݵËreCMM_CK;rs\Y2dix#L=)Y9uCTѶ!n(5Pf iј~ap-X3+:\due!~f5W3RL–cfWX/[ t&9' I:7 /@[iQuK^9TbaxqI{˦—77z\tUO, Og4ħ؈iZS]-zfVpˮ$<(0Ay5']{jB3!%/ln+hD :ϾQ1@EN:uNA+n^>x*1/rmhv5쟈 >JچdJ>s^"iJyV@iP'KO:@3zLLPdZ $ ]S˃4j dqr\o5%wMBxe1E5ץ:c\HF0*)a—C0V1{j`9$Msz8^\T78$ok HFKIp/H}%I97dMOMǓqT ,Kp/Wp}h@Mk1O ,x"N$|T C#!ź1L E ą3ޖ񍻸m=F⏷A^]i4HXC/U,K#@E.Ąw$V.-L0 Fh'&R [k(V5Nx0%ڈ5@>hJ}b^L*ߗ˺%]Xdn8x( zб?;;`M@+)[@J*Cg\#>AIJK5[2"=6k@RH6V=i֍3[ GONq- bj^AyBM e!_r*zfn!s둰 *=[ZbdgmJ$A#^s}51ūnjV'Btݩ.N\ݴ!#g9C"e+$ 0z[JkXK:d% TgtFn ^tk3MP[3.{\H֔- A6H8yF!'9 r5YT@Щ41+"A1AS:NY`72 Gb:MG|yCLU,s6l`ߑ,INB$(kPS'TR!U O_kr$P0h^LiN,NRqE0lL(Dx6AG=kFhhELತT1) t. X^䌋eYA*8p9_7쉨$4 $\(G]zv5ڽs/:Ǔ 9> Bcۧ:'=m!NuY=6$7(|̓0 wIe=~Es8%}JUe[/y-St|{iJܖo,nXR'.g|fbKw2^j>fS:=>[W$g}Yl.1,)}rGv&MBZ NTi ZO!h/pEE M-\R3Y&SD*XBHVD! j}×NH*R݀i8JMs-e #Xz5Mmt͉FGJ= d!\^ɕxX(pNA<| q51>? 4UTjG`W óA4y]D kbՑVwWʔ1~wcVؽRk5*[yoV %j釫1yeCok K:TYێ[ ;dyheIW}F#ivԾC6:DK>P|՗+͖ϚF.Rr0nѻb67 6s$@aU6y *8V^DU OXa!f)Ǚ\1֋-89phCor$hI[c1^pe'%P"i`Y6^0tm\aLLiΥla.p9Չ$]'Cz=) P(ۜЌZA8f=8}ވ! "b;ň7ӡƳj6N X& -8f!q4Iyp& wdzvn*r)fgÍMCpZHlU ;I YȨz{8̏L`ܻD笀4[3g1e}YPa_,ӂʴi~@Gܦ^,q-~yUnr>>gdaaaۅo4Uw*1&k\'z S;sʾy~,Enm-P kf*$e[l S5DgS^V>$ST} c]i[>qYqXW:ǒENFMR7E#D:\>ݐezӈ%=J InêeթA9ߨyuGZ(>uf`J<ɭiF0nk ,CEdl O | rPrTS}DrXN.Iߑ [q0;Η;V}imFjOF r28N7G ovu|Y:cGYMqL?,3 @W*=6ah`iO]zp| )KOku3vh8 p]g0l\VjI8"5Gq(mkG{q A&Md: #FsuB`,{SBY*_r'/Gg4˯S5LJ$0-S Ia{DQX2ȑV+ x c^g㧏dhf 2шiB 蔌V u`~vq)l% VZvLrs7|ͬHn Q򩚸p1*u|~y^!(`y5F)Ϝ]ڶ4&N6aUr+ S)!s-uKP䲬r>5tzF|~$y# z~G1·J:}e#Úa#+6JɳZb*x02,T<M?y$ޟ5è‘'kGt.ES`XӾefaDɆ,DMg+vnW-'THfUzfl#D@n oF8,a\ѡ ?x3$"Gӭ`/PYnf %8eQʙd7^pM(?`VZPse2ZГf 80 1k5I^APXp99NnވcvATM%Q^Ye„wkuO;/R.ǀ]Ϭ.m_0=p]2tz |̼^e_@$5p1r]-qވB0›l%Њ-晼>Be)mXJ!J!gʎϮArҗ5n=sSQE棬:e1 2 ,YD%M}PTv_ B𼓱klX0i "=[31^-G4TzԑPVW'[U :f>D\ Eq%<"h_qR@bsj[^erL[eX{[oc,7+=QȺ:r" U `hFCqNUS ڈWg Nll/Q, O c*G~|88500%[{+g}t=`dSP0. 7=`Zd@aЈ5ޢ=U'E?8c('܁#gfh|65Z>`IJWm7_iW9Epz#tIðxY= GtO¸֭3:NqA9\Ja2`(=ɫW;SHJjgrWeY3'_g+'mU~6ϰt7tdKChG8!h ьDs>_9]sh?u8S?ug 3(CkWV[{8F}Rֹ]ϊ7[9#$@4"rK{'p~yzY壻ؿ>P[*?'X~?μ*YU9|#~Ltϧr%o j@bmKdzA~{Ӟ}z3Iz>tŘYILe9uPz TY%wwPOuѬnMPvD"h)XA6 z4"![[l5S: ߑ]mbuoaq$nks.=ZuD !Me3ǟ ]YiaW 9vf>$)>n"1FHvk11ώA܇F)'krEnl>bN RJ}sɽ*lzL"b?UhoJΊ5>bSI_HuB<($ qynYKc+'\F3ܰx?/R$@a`7ZebQ[5hRB`sl') =ХsdGyB6v'q$KΨvߡ~Os4#OT(}3r+VW0 YPL.*̶QkU٘s冏.5+ 9z5/y F#iut=ƒ/ ;a]:ׯ*jȥ*H/'5f:uVhM;((8> )U0Ə 4t6O:Y3 lLgtƵ0^TRbI73p%˰}X;ڼ9,I,h5fK:lb;RcUdh9 11{T%0. C+cԣ%b.l A,bcWl6B+$ZJLD&w9S_yK53 o0wGG\-Pj|׈ Tz` bM <W1y9 A^𶺑<s+6xR1\Ьk(@DK qT-lS`߿bfS`ͬٽ 鄳XPP7lBV8ҷv᭣?x\sXc7a!8S6qQ#ny;ʽaSCyas/do܁E1YF1 H d!}5#3GbDƾ ?v=3<B4]Yv9KMK?vX#E[~½G>#!.+Ba¬+{*DVs^."6y-?O؍ 83uvkp(d-~p95D UhVb_PrO40\Շ7'JrZosN+5j9 |к/u@t7G֩^ga({:O WЅ]$@AB%F=\|G#sF`I/F;;;GQ2إ,ɣ˖SZTSqb$VKZ6gd`YloT=oR4ܪkl6/AE0gaR1kР/gXTSN)g~)ZO)HQyl3tD>F #=J(wJ聾 TNMt9/Se.U骲ɴ/\6 >GqƾV\Fo7lHf:&ֲ'4?#@&wf>`3jʍRYEF~l]C[љ xJs76N7~B~HA0ZeL:~ Vlԣad[JXF h9k`ߵ^mD]cd14`b(7wg/}ZsE07̜J&jkE(1/rg]  0{@ǽ4Py<>>7 'RqZ IEe-Pl۱}o ؎?Ñ h G$">E WhS_ {k7pn1p%wȳ!"xਃ3a?P&g^‰ZO 56m뺔?|7D~q2Ok&g @h4W"̓(|QuUnEjq> j}&5sID:%ictƈ~exH1@/N w[U^ SM/6;Jv>h2fh~lw7gyh=Yɿg$& i(s0@nՕ?Ÿv Ľ$JIS@-kF٘Bxj(U4R9ZaU.{S3Îb7g,g!V9 (ZLbomgXhڏW0 Pj#b}qj&<*t^ǚM:C7Jݳ79ϧ1NA>ElҴts-B וх*S#BE4LE@T݊ 6Z}W1S޻%ɦ]VvAPvʦgSyh{PF>FUb ~/il`WMQ(=ƁonyaRKv|{}|]~{DZm4+;y:)-?/h^%3$@LaadF[[V)O+Y:ey=ظe6  ,f'AeA9CɱHi OɃ0H˝uIW"B^'' {f2T.V+蕗[V;IU/\~!w4{7C4 ly8L]7:Ʊ)y\$Do}JBTї ncYɥ˯R|{ʋ ~"u~9xcz eH\EA㊼QȲhgzh|s Q3sА Cb:jr}Q#Y~ Ix?*ZS'@=6QZ+=,#5cO>. "tyX:޵eӛ\H#Ls$i1Mo%TB֞pYAx`C62`g]`%Evs"积m`\)M?C ub1pTMxvwnZQV]2y9ǭo ѻk"c; 4F:Y{V! UB4Syj@++82 [oU}ZD8~utL'2&(}NQz0dAc_y¬\̌D:8Bs8YJi#Krw-)0odnCz 8m c5Jmt:w[ 9S rn4l\(x'ѷ(gťYUy[g> _` <)hǯb* a S:^Y}70띣hD]|#IץBNp{Q}Q b)(B4oT"Q蠡 dP-'N~R|aG5}z ݜI~\7}MN3/RF[=F~Fr?;Tp]R&|@cܠ!=6Zc{jHH@?r5aP V>Э+#-T1j& (nU$4Y&f9nȻ>wE/IV%xJ< 9Uvq2nf'mt{ ,餄=NR @M8uH;P֔`\hSӳYf!t2(iM ٸzy]S'Dw7f]a Hn QK/\%; D4,LC.WL *|!y.I^ ܛ&pEG7}( k¨0ָ zS1~^Zabk?SIR uk<.<Ja+bUdHeSƐZFh Vu~٪DNP69:z6-,(~)S;=guX&<λˆesuܧ}ț$PEkSEZޣtS|(%BgIC"̻BCA Jy5UfhDjrg4 9yR'#sY9Ymqh΄`Zv)K0,4㺂 +Vf1%v 2*z˜敉ؚ+mƭ7oohVV^Vq 4h}=EXDX J+7 'Z;SR-ِO%yekud"㰞gX`llQm8SZՆtJEysqDMlE rRP{)|(m b!o#|wp?X# XF{{jjA.HtifԱ$ڱwHlje)O{Z@#7nщ|>o>:-x'Ο'Ĵs'fȆ=#mI/ p0Y<eP|oj?w=Gg|zF~;Rgr|60"Md_[1?~pW$"e}CQ xrn0u#P|z?g!RwG[Yx9^Qz$qdocܻ9'?U}b(#H`ģ/eKEA/'aŅ!kXqjTϵ,/)3rc= ?`ߖPZ&g\"yN?]`ȍC|4CL^ Mߟz^Y!;nŠ? fܭQd6_"!7i;1ළǻiԞ^-/yq9Uyp!{Q 룴9ñ02D8O#ovu3cH >L%>ό'hTc ltw2w8hY q돜_y#C.)H#YD˟(Rt) `xQw+޶ ~) Py;%2ͅp]\tØɕpS߽R!r rՑٿ"Vht/z(nT .5x,E6iT[ ol2CB& c9n.5I'm'>g4^II%t8?_OeK1TTEUX#2q)|6?(@|;A~F8VJQʕ})L+3>X&RK^qd%b}{qOb Q޸z27c!#xdo 8:״B!y}u!'սPT㿷L@-ͰًNt [ eq)MP=|Uc\-1 [ׇAY=m;3stZf;vC ;(Jai?M@=Xk򑹕Ƒ:[Rԫ]NB1˽~ޑʹx5K/ {daA p14z+l™a8|pDB':nv[b{K Xd'ưaA~Q Wr)LV] ~:*\҂{aIjׯci34:6q Z]򗟏n#+x-!(fHF}}C^ViOe#ݒS̓KY;a7}"8sVxɕbz㑧Sv?|1fa itNV_D '+AVvρ:wӏpJޡ 榲m$5*jݾDƀ>܃)!1 3%sRKOi䋨NcᦆpSȣb9*.Ɖ;l@Rg2!̳֫ y\%h#)rj'e޵EI*iwA83M|S AӺ?ԳV3M9}WS#suΘV[(Bhɿ*ҦB$b=9p3s,W ]r#E#ĪJ/vߐ#W66 ^9oF]ZÒ_U8]6FlϳФ|({Z2௵4vMo)KLGJ"N|Wg}pUI{5h.ܳh5I1[- Yı)"njټֹ63U678;"!_K.]}EXG`:VX:%DcAnF -_[C m>5dobAK2 y*t׽dIPoUk8uNx!,5# (x/qWcɌ#`_fjY- PD32ܽ 4Nr|{xVW.NU̝MQ,d8Dғ.+*#O%RbIVޛ5 =?JxИ^VCC|97\-R2IF 6SGhw/"saƲI)Ȧݑ f(KE{K@O,( q CBk&2_=~ȯO~nhPgyn<|h^v>oRek{vKa]wځK;'Ygb \Y.%Y%#cB t J3 Cu!{P8\-fgVd00 5I<b;s iUZ{RX->jwSQ}Fgj>boӴZAu3-'Jo(XT@k%}Zc^2j#WTos *ľROZ|Aߑn E_n|G"Z8ETg%I,Ѱ"0?.S h( & ]4`=TGFlT15xl sfn6(W2ct'QQ: z0 |-r >@U,`r2hM/G(I9bg{ydNhN'C{*QMa0(z3em;k&GڪILz˺f ;%E=SFU&U,U˹'iYt3qFJRU&ڿi2*t F3_ z?AhQa,1$g[6X[@U\Cf j:3KpN`q|~WJ5ZK:_e\䛬_דmm[$HI'G{E&:,:.DٍI.v$Wt9e &zZl nSjtPU">mQ-e}r?6{w/Q dd/r]x*}xG[.` ̞/@|z+Et2 kR0 be6M}:E%؀E{ ųvΰ_da5HK2Y֍_T2J6;FiIZ[ԑyG=K[ult{E(B7:S\ m?sFrHLfSpP |=caə>"J6j dtH֒l3!ZeIϗZ8gi.5TH^!?0L@=1}1XYJG& T n?my}QaEm/) ^U|w So5H}52 e̿U2cmǛp8z%-ǠʮSiCJaZgTCfD)QI@@[}1$JC>$Ű,xot3 *TS_Aoݮ)y\"m {7=rydR#@6&\dH~jd]+a)Z.3>#]]h(d&`&#絫fY~Q+r#XMyK }b?*?_am 7xGin3J1IѕU{ G6.@ r:)W$YFK)\HH{m.Pl#-*+n`N]xSK^ARVU4V}찕g| šF)۝Eu%Pר]N/^Œgi6<(][^p_;$]?oȪ5ס"+;d[s otaJ(q%üH5F:Bx‘!}b* 7;}J$8X&Nܙ2U@;l&$Ή7MIniLK~5\#Wrkx|/˹}M`_8@X^ebzZß'K{f2XnT7 0)ٶYZdWp("cE"G ߁.:@a9JRnj>%=-kٙEgrk#`ѓ:ݯ*6W˴)(S;3t3?d)Ye=YӀԉk&Qm;vrM,Lz7XSB&vM@72EAVĕh`v= x⃩GcCc0]Ǽ:^1Gd8 i[/?tG7I,jwc1Y:ၩ)ڦ=NmsgBϘՎb[fd056jvR@S!v(S$nfQ'FǣȼɤS1?_ ęt $7zz-H@"er{\@g;*{35'Y0X6, G놇\1]{`oIV.CMߟKHl~;ZQt @ 2>ű W@e{֛%Ɂ R}{MdXt\#0`$*e} s͇6v?^+jL]i謝c&i"טLJUӺkѿEw]HeUKAw%[qQ~16M*߮yrIt3 @@zvJE*8i#%B,"NRl ˾ JCke4euwG紩RP1 ԯUqqKET=\bi6hɇY_optk/Eƞ ems:~[֕C9~!.va#M.dD/9>~]*D3lWyw:zzBC(SpKx7]ZZ!x3c=G̰V_K=_4aqid~ԵLR9T8!^yPF{K?F7\'3uin@^Dd GVxu8֖ ϲFWEy`5XbkSGUXV*3ajVk1nKU z`~"|xv[A ):]Y"n?iWفpwIpe.cwq"t!B߫ܗBXd: ik0m'9}t1a |Hs+}+bb'Z`{ bƔ޾hof`\J16.#_y' !nkCuhX/Jamj }t|i ,D07Uffe9i~f~ɋ/Bg(yF>#UmӼBQy.ٞobn7i@kMڴGL$e;.c즶Ld_c> ʿAd !}}f=D+bFPcؔH2OQ|.knn |< `ь|igF1}#=Tt;KJ;)ʫp[6": 'mVU*TL[bVS|i}a-~vMx8m'?B7YH]Tie^v+= "Q-Ir)'*#JLlIr(|M&k,|B[J.weդv%/cMʽOq8Y&HbI93e"Ay~KKXBŎc-nב8sHHz#JX6IIz+UY='-"-!8%P3C gis'SkҳMkĶ/̼7ZCeVQ0p|^.5L^8I3g#~ۃfJc rH`ݚhuqZk(Pi޸墏Z<զV0wpW.< Èh1`@̇'@f\'%e@!-;uVir25mHH )9Aۄ_!H 'kϹ=-هWU{,T&6 cU',}( 7= |-=v@F mmo*!,4ޚC, CqKJj gLEU68#E֣5&=|Y'J Pvj)lk*#v,~QL,_|ln`rBOw S نKz$9MPwչk :zn„B_Q$n,Ƥ\p4*||aBaaE+cd4* a4`~ƨpQU%4>eP}@Fm){GEĐͷyY˹/TW& .|dQW\8[iw@#5Է[wrᴪiWH@G/xT?*'Ș+-$s /e GZ6,wyn) S(w}R!'}XFZ:eYJM;9K?Lg⿫f%/UUƃSJS6|x"1TcYPab\{C]u+#3M_߫ ,Y>= "'?/`U FPƂ&ٰ1 x !kV ،lUoNOi@Ls:WyOZ>IuD(c-<~n61R@4'*17 =Sl6V:G詾N䀥 ({ ~mwd!?J;4OVf,+zMF%Iahg '5Q,H;t061YW($+nOP>͑ HxS$w`S|`o'b̧r+mjmJḙpoMz{ )? kIt*މ0ɳ48?ˁus{mJx zfb<k~kFٶ1؇/$_%̥/0Yw(~ڌ E#8s:C3̓x)v߰Hxe}ϒF}-mv&-tu+nHpaq~|BNZq8<bޟa{,JDu qVN`X9FϧNB62PcjiqKP7ޜ K3D&ýfHb)ۿTKtimEARv j @qN'oCo-3?vGJ/lf$wLX ȝ=n?-Bv@hSA1_e&1S3WMRw߈U&%&g pT@L^SRi!"W')8Ӹ,k~!j/;ZJ3:gjOۇShdeTɘ GMwSI+,~x@B4.)+$4Me`eMM휰^3/f6ߵiBĮXG&:1Qh` Pi7lDoC< n/nEvyo(n6LA :QXy[|w)c%=9wMn`-,dŅpvͩ)mЌuiڤ G}%T|hj[O\<)Z>B]?@YSޥZR㌆q?n "kLEe㫪}mܺM ]ʛt8)AHcE%ZXv-0   Y«t@v9!~r9niW81ʏF;k%\G6T,Lʠ=2VcJip AD(Ah키IF́174Gn{)孖K4g3JG'\j@P~@='L)YuE_| U#uw:r^}E;kXaS mPPi|iێ4|DFǨQ|Ex\Ce0 \ D/*ؐsCQ.-'PJyХѻGl[qϼGNiF?+cP2^k2 4.Y a+Oqep[K (I[ُ|kS_f=̑!~BY^g5M c)yrj\+r4̭oh¡dP.O|TA~<)VxquQ^~Zow灬\iҍk14K#VU1?݆_b*^C(#UL4YkOGAK G3xAs٩6u YQKAcOj?&G{boxA|87W AMTjGۑ|m`mOڌns$YstMfpWBN~|<'Vv֗b+!Mt<<co}oqI(g`&cc|I{ډ 9nAU^j(eXVD/)>s=pQ1>ܩϮ6@ N2z~{cvuTp|侨zRdUHf5c3@m. wU2}͸_ʫMC l1L"!NOxW3GFvi >eaB)0P~&{4fhÔ39A/*Fq;˺PEHQG˙>r};I@Vܭok-7\nkB%ܛ -d=!KHwq%W7dvЬ@rjh:(8j!]6~B%/"\1sZ<nXƢ%{Z`Uj]NTP~]]!DX<WMawf 6KO z46SI;Kp(ҋp=F7n6/;F?i sv%q"B`kf[H*I\hDtyYxݴD:۶hu RTYՐdx-B. }4k"bu9!X#MPr$.?%fҬ?jNh Q4ZEҶm,vpp 拉!.YE`xEWmH^P=6"37p k^ +X_(,y)xL]jto Lž} /dɌ)=pBrIU%hq})T܆Hba{c4\)b+C DO^=89.zq`QDVy~6W2˰v\ *G$vZNʘuO5OOuY2 D <>B?ƣ͉ d4nnu5לBޗE;Ӄkid&.Ά)E~ FS}H`nbx0${Y$ f cq#i2-)G']Qcv)s䣍}~UKCD-$ PhĢ;Rt_"N4HمΙ7i}٫/_b+N9Im1X ^21Z>CKd$ \]!" .$E_dZ)tV=42\sgQYڕX#_ UPTyEGTܙG N;?IiDpKQ"sP+4:,;嶻J-W&Dd+9E?4/WgXd=-ЈqYBM J5,S*KHc.X{vyCIpX,K5Bm8zEneHVJ6] (=v`Sso䨼Gc{ %<|[]α+~L RnI `-뻛̝a11ry1{XU"Wնl`^SRU Rc:<'qHY=nzXgI)F 弤)*ϫׯg7P1h2|ǁ^+T JuxX{wdtK;oB z4șQqYZ] 2kFX*t1{Za@c Zd i2DGiy qs W UM*TGw+LFW6i nm"nyK8:F5.!IP %\D Q5n0i^210)bश.}]]a8 DF=JO0˘ )VMZ|hIߠ (#2r\#[cl:(FU l=Vw\uiu@¤P=ޥd9X:FJ`Q WƊ5fJqjc zf;|{yp^f~ABEOt"S~YěW$7v;u.er43~2[jn,0gST30mEhK0JOINX$}4"_R3-lw:H" j̩8"V")-43rlYXe.ӣ}PkK4$!Z`=O[AG/\:aEaX]5<|¥ /Ŗ%EwLtkr/{Jtyety8^>U V54uTEDī  rRB&vB>ZӪ&|ZW ""1OM/@LEP4`rcS%P|t S:2.Ǵ %xy?gy^8!O\,gRI,$xrع~#%; ?P 4jcS= U2N7νˡ,.zeymUir#·?,;.׾ݍƑi8Yksg!f:N%r#NvlP+R*譳@[)QnR:x 3r\fG'O+ 0+n JO ޗ;m9U Zsg7!`,Ezќ^ #]Yg`:`pnd-豹H|au0 ={? L0n+b= :l $g_^Z/JiAeНBx^;cJL1iSj/@$p}/Gցy+:BJ! ET6KOJ\(׶[ӌ@as,n"Y[ṡ7#ltR]-L)yEm? < &gRPHۄ~TJH{Pzj f?4I4޴D 9Yq3`*o&Y"KghgK6+@Sܑ\!:ޞx[k/p!:iFr$ԇaϬ7Y9ȕ|ZZm4Q&0t2Wϗ]ljl[IiEnE%>WȒM?!HaGەJn*Rß! QCnf\-?f[ZnBrڵgi#O 9U=N>-%7TGB#`_OgfNCquRWBLQO~KRv?\ƃiۯg5]9kS$?fK ɧpI2GQy) xd!dgaR+3成ςc[ɭΦgk貱ٝsSޗ(zݙSI۳ӝg<ܨ&xHq1(;of_8=,BPiɅ]wF]Ê'iφ\~mzVo!CiS"lzɸQOK0|ưz 4W5A4E!=*b$Em<kIm-_-Ja,=<:j1ش%'_mr*%ID9(L*Oig,KmwN>ԛ8ZNcGθd:I7ʃȩ4J6) jޢqDF̹/0Sv;:|W34iG,䲵,Zh6s%4:+LB 怪KGKroCA ;w3vPX-*Ǽ( /R RL-9Ee$Y ) J=.lԔFUQÛEs}Vb]Qh ^Ђ>@ QXbbF4W +}.L*FNGyu}aLO7F>kGU//fŲS4[LE>칀lO nh9O:'Im̹m<7- 6v;GhmLeXO//`a j֕dP^^4UA1+Mf]3\Vu  x󍙯WASlMXxe[xW(A~J7g2K\o.4f˜H5Ve3%hfp3pקXU*Y^ ? k{'g֜w᧔ӏxi#J۩?=i'ZV;cCx>}la}|N2~p 4[VɠJ ۊj׷P, M5dAG2fBHR:)bI6v8:KV|I(ޯ)iS5Ə_7&lw|ٳT5РEPkiDu_ԧ5ynA&ȌtN",?@l\wV $Y1RG/l v~-;NU/C6 C/Sd} %wMHRW/#:_MBFSmIV8Kk e9 n]HKwɗn1'ِy[o6@iM~l*<=?%+@LPebnXWאTÿE `FhW-Nab\(WWdw"V:ZtuLhK6? g沟'ڿ!C&0)mb)hB獾>9i׉?& \ԷZ% C¾NWu#Ot1qeX=J;%**,# 8;iyq߄0p6a-bVZ{r;^/~ G#:jzƎ*+lb?#j ǣ$xM?Hk[*%Τ <{sX#ro=/mƺYP*]XSR٢hwQh@ !g}cD5$e$X8&攟msjdQu(grVoٕ_*K#NO"?hЙr%%DyY~Ŷn0tTn87AT.hUzZ+O4ݥ zxEuMJb-Y_'a$k琒W2O-l~K9uE-[ CaTj88StpA_cu佸:(lӏF z6fμ OTLb.iúcVˇm%1\s߻a #8nv<rOwk@뛄4ahu+i[7~Id^8"el8o(X*o@w`nL̝u|A`')i8!=&'s8'l!I':ӂDJ.ߚ7v p^7Д('Z<.P ۙ ?1@EѼwx S'o1!8-M`m6E'd%تRN~r4Vt} @0Cnْí$ ƏPް{i#r39~qvHrS7]X3Z@=%L o5 0Ư$oB% R<6v}fb-xXk.,D'_{sɳ)HPyg(<yq 1TKzYbHüύP{;vI^O7/gqvosCV-H`Ľru9Q6"04/ g˔dGr=qFBlh`&;[Lxu  ^ȨnLUJ62 9~̗IIH+%a!mu_I*߭ie >o!Ze'm;sd1hFF#HbwDt]'ڞ )ʼn z!`ݹ|`galdS^ӷvH8NM3/"7^N6nVnJL,MsIrB/RT(6#Q SC@w*wl*8fS,8$`CK3a@<  @~ ݡx‚rZ*<17,PXbi cmf gj${_?'B{ϓ%勗X՟wFx` ;ʛG-ngev1l ckOɐ^sV{زϫyE<'QY/<AC㝌NZp( ?gd5oBalZfՂTAg&V!fqf83vcC$^˭ۥG]t.vfY'SkFw-+'V-Nм% | "^~=O݈ɡSz_K>KyF p}'TANرOGt}[W%9SHL/B:o0U5`y,j.=$JdZ:Nū? x7X JzF3q{@m5hzI H$S A$N2'el!ڵ8[8lg, 'L!: n| AX{-lBgnf^k0Ai$j:8OH l>wCIXN(+ܵ[s^F3R# ˈ4d±>ǠE@cEO8wƭiJ dsGN\S "Q0zlG)73 `+s%!P'vv!fA]Ԩil|͞_ڧħ%$:L QrТaڇ{tmC_&Pţż,$QBd6,jm @\Zm'vt6)t.Vkh! Dh6A@ϟ!_w~<:yd`pq!8[0@R Csij9Mw^Y('WZT&g1*e g[k8riեB)^NY`cE|ERRX1zQ)[$$JBo}|lvGoZ&ܷʚ/Ajhzħ878N {HbvfO9hQB9:-;nqU:@2S%Vǭye|ւ4?K B&0%*+/ݟFci.uW8HP.t銯 lB#(q5VfgHx`e4{"ٵ~7RBU fc0YksaDg|ăN3qyLEP+?Nӡ)jE{".&r=P BTo8A-y&Kߤ04xr +/DDgeVIT3I\NqY9U܁>e$drlF〄:nvG㽙_BיTiUj2N+GA%SMH~S3Mg<K헋Y/ Gw|S?&!-ǑbPNZY(/KS |" XfP`"R4y^_/~ |\`Zr 9 D&.NMd]; u]i#|˰}5owMΟ*Z &XW2!@wp(yf+e1jgo"88<pq?g@ Y^۽倃5"}0+MmzT]Iߌ1 }2P6ˈ(J tFwCʚkrd+ca+Z+})`Ȏ9}Ҡ H;}M!qB~l9Kt@=^ömlGEx\@dabEϔ}RN*TzrJRxe q( T1{E*"}'PV;vYϛ#tL 4qGyՅ0>]%+xyUk*479MORռ`tx)K~̤SeF]V+4`Ə|b~ )}Qv<5qڢ(XL>-$]?s&`p| nfbe5qZI-?6V'jVӢ(RsdR>OO:""=7{cTxrډޖ'T\3@d{NSjWt^B{yЃVE+ur#ۧ F7ɛ>wh /;5qDhuܛF}*aRxb ;gF.O{hE3~{7tBJWGm(MzgQjMeQzg.Sm=R3?SUBArJd1RV9]Y"A4 !^fZsZ :TsXlb k˙^> rd`rT?,6&O]4+j V}PO]r @DaR6I<iU匓9F,NHK͎"G6Fp|œZXˣ14]1N)g6qe4#َ+RbzQgKYMy $({Eɖ(=*B"Lq*Ki9ָu.fyXw:n_~9ŧwu"Z^HqZ'%ᙠ-͂T&%敧[#OlI _\\(kϗoJ TsJÐ #x֡%m$љ.Ix:L~|:B 3FzÒ4=6}u6Q*S!KQUOB5<탂AN Xu\ѣ.ɮ)GE+Wgzާq 9XyVov s-ZjS0i97hgQ E~tĠu"4 ېy$I_!h̗G*昅&)y @&@08N;bzqIٛ-T{_SmyAAu=4NRs#r谲3k&fHl\)gm+—+8oNQ5k YOn0#'U79S)z-Y(-}B\ɕ5Z{y۲S+Rc&MR#99>t{\p:kU ))h7"HVb K;]ҁ雙)!}b]c͐cӦ~叾␃\emgxeJ#4w5Pt֯8W$<dWW"ԻzOT 463+sLo/۟+iȟ"e^5$b"ESsm{GLrZLU.8u!MuNg -BͲI2HXNz‘&' }c"CGe3PNG}]`wxA*5>Xh3چO֌KYw .C*8[YۄPm0!PtB,l¦:7g=J7Ͼ2h"QQX(&\ MS)w$r U>ՉFH"L~+KJ@HTpJ0C s{\o$bQR@$Ljc얶0AOI~cw,l:/ȴ '2|3RyS8vDw1 IU|Q!ve[:c$nŒxɿP*|ȷ1$V `q]4\'//@zz=/4].Gv:kn~Ae^ \8>tXf@LnЅWz` VՔ:nHwƴt\*m%RJK=f} *c޼$bX/t7gАk83 7I83AOP>LЅ+!Y*nrXj(yQM PBI.V6 LzY=w?Aj2''JΔ_9<#&lc :Ը06.i?֥xr@Ԫ}[-N<ļ1Biݫܔ=|=b*z.OBggwIsoͧ#F]ok_pכ/XԵ *+G_88=nVS 2yJMۏp)[C4otB2`T̈́e N2~oEP-\(_\Ngo4 y3u퇏#&乜PKPrmZ*zZ'ۦV_ಇ ؂_ϬeHjki&?6%yf 8)x'=T5@# =|,Y{b8R}7;ޟ//p(H}̠;'1)|/0ﲴhXHKK'їƕM5~ e?.(zYvӉFh.x<8$ > DOg^(Gpp(Љv$#J)JDԹ:^%^S?i)D\ z_&t866jn b aBהdowN.<Ǫ# B~͊Й'7hJ!͆ 7+i*tKb<ebeROX JN2gnߠcmӣ$2_} bD|X*:2ǐ[C$Ֆg{4eb҇+(A&&ӿs66K+U*K{;8~:w22.sxo_[TM3A_ծg*:s pR+Aʊ2SR=IR!u"GAhY>چ[Sϳo]6ͦf*>xGs01u:Vrtvw#6 N졀G|RiF.eݤf Jd$&΋89\=9i\_дVÔ܀[ ⲇ /oKQn21> 1Ǥ>-N*&sg]-ہ7LIOUL>R>FhYx9 EMW:k%bZ[*;D AT `ԇ>͇F~nCTҜ`lqvJl@ r8CWKbV! YsP&j3`kh\(Ӎ.&3u9v<27hwLdKs=vNL",t1i݂[4YmQ \۫h{<&:Ul~ G休WrS(:.و;Jۓmb\0t3Zd3T7!m#"k_ QQ%yVAƭGZ h~=s+2ۡWL`F+Z3DRfi:Up~Ǐ!JnR,|rZI+ P Oĭգ9VMZd.l ƶ'ɇ,gqlk|<3&y?oyf2icg\[y,D`YW՝f$pa'Q.-7Zǰnb4 a:N&G8L!AdB&lɼRQe2M9=1|s},^k#\,{9KZ*狦R$&%!Hj> Khf[zч ažG8NV[4]t,hy㧚(m,WZ+as ͮ-ܴZ &'>͹fP_ ftL[W[zpV>ɖ))c`͒$҈nI~!j#Ce|.LB~?.}eTk7y V<~hUD;uW+wd2%̤jX}1ʇ>Qjϕqkww'zT#wDC0iW8_MY?s82 P<=Doj ppP<eӁ|r}`JMxPu)jkmjiMph v {InZ.?)|%zv)`F8Cjt|TwHi}^WLK5._2jA2<%,+c1UtKrKԣȤ$K̭PuO>^7 1.OK݄:_bCwj$F=J5#81 $ n+gږo `y=]9X#P!!B|X+!^SZ,w= C R'ė!KM^X,BqD>>Z@VO~(l~w?58c*.s7D4›3 ]Wk e=??,\`N7 hn7LdHޭk#,9ZHГxc -ķ_&3>'[4Тz{7>C6&СUDmBoK[+ TT<'溭Iw,#`eY;ރQq!;G_u4Pi[E~azL]o]=(16vf)UQ G  o;=!˦(2$yKKC/$cW} 5RpVׁKZ&a!\]N_7*4JG0yQw`ZU?:=G{űx>y{W&[bc^f[e8{zʶvݞwKTҶM2fʩ (CM'2G.llk԰$ vypvԾtYɪEZ!2b94Pݵu.8 8dFoN"Lsx"d0ɴ(O(C[Wsl u xm'ISpw2D&~=PںA \tm_p`l{nZ[b#Dp<(xրX-aV\ZU80 sG D_.~>w#[7h4 B+``4#Cw8AVLkEMMn,[Az M{U"C@o8 =vˍCwRxn,/$;ZYRlU-DX%,$[K_߰Af@ yNq\%D0,TSy* /iѾ!_L3lbC-;?%2^ǀ_Yq3_4S=OCǨw:D2~0܈u6 S-+Lec PlM/jbѴG:dT%eb~ZV12'Zvb)m q*3lb`oHv% l ySuH@+^^X%&0eĺEt#i QbI@"w tueGLe)ȉΐ'=ے Ƕ~ kԲO|'?+7 }3Gvdzis~Zv'k`7q[ V d>#iСv(/ #CLtU 4qASv-Th> 4l<;h>Pg}zL/$̇:'|UlIOرvZ3}㨰 zG><'Up҄Juf }oZ}2>_AAmG[Z.C='})@]8}FVRCvPgLi0=ܓL J~BYVi?~+1`کj?{˘r j;K]?#ߝm`hߣ?;Gy:ȏ9hdI 8h7 j؇ #(yb., Q"` &[u,mB%a(KtK̩9`zhAHi Ot f!Tz4_Χ^a^&iw|+䧘 =<-/l(( vXՖ ,G[m4n- f>m懊f6>XK_3޴ؔiK0BKH("}eoWoKYR%d4G0mn!巁S  h>?o,k,i~( )##a[6y.ఝ~Ʈ5wV>oIAHzMܨ۹ vB(}ewX~0ndwnu26h6*60e7gl D ԫt& &'vvF2MF zZQ?!H 2BNO"8 83PI6V /Jl%Kts3CDXҫa/#G=P=wXD.|v@h_,Tlos\\J[CG!e~ځԳV߅~;8pCƿ,!&Mۻw`FrVDZ&4[ qsC+JePcoa_נ'Ųzqq"#`k//a\#{8R]!b 1pقV/ 9"Zi!) Z}"MrP}LX/ <b3P$J(2p*2x)zH&nz׺Z_锜D&)&5NO>W"={GE2 QmߝzO*:1 f}7av,;Y3Noi&,ZʦT ,>wOmn\[$ASJ[z7 O̱Z_;%07:ǚV}<. N Y;,tC 5 !S}˗-WXD+?śb (@-s dJDpJr:+ I`&)oAQH,NeKvtlIU:72tQD,C@> dP+.l3%ԩP쀹fE\X=hZ7i#ʴ+(6d(8a7/-- 3Hㄧ-wKoy>n@ES%?g26U1lq]`K=V* BC8VE|F n}f)"8kT\5KI~/ {ۣS3A1kz|`gyWx|\z>T'+d>\^SX8wފ]+RAd]L:W %:+z2GƬYj5/T|)F-1iLsGh :!V±x(#(dHo? CwhïyΝ+>v]Os˴ׁZyHHW|qLyPoC[#Z0[4fD>4fy%pŹ-X"A|6Yj`׃+,X &ɖl;fB-b^:Bz,V2xC+Ő-' z%sN(EJ<jd袷]ǿavUj4-2:hB\a9Lpe/L|ΰ=O*UQr9wz} S5vE~8ɍXi:c|Yˆz6&QȂl+QsKlԈ >YUвRyp5[5@m`^@IQ9D9#*tY*5au-->ɊŵZE8ͦ`8g̷u[&$P&n;Wܘ?`dS.%I/ 6\~~X95;fZcmlW>wzeB=cˉ(3B(0ljVً<Glٺ" ̄5 f'ػߺ@٬_X v=eX;:(i3.M gVY{hg}?ޞoSe)2} gCf$!Qhf]vLg%7WT*&{%ޔYG:Omf^F.wR2f%{c*g(e )E).*^lbы@SHImEz{L'wtlhB 3 rk(x izJ^Rzޅ10t88qܜ5z ?DIZ>Z=RqmA= 6-%}.7˖Q;E18zxkyd=gYZP׎^:2gc n苀_f>JDZIwvL4TAp1RdL"d^z&?Až,ͺ&Ll8Lxϛ(2(;y!kԋWHF޽Z=$[Dƚ ' sU txC=\ \QJtPU'/} a+rߤ Mxڌ園M'|s\dMPBڜ#h$aXHNy, zGv]{~j?mql[!fGF}+  :W-hv./Z6i=]|O=CRQk (Ŧm5]*$3ͨ} %0'FGӣcz2a^EqQPj)Jb'Naջ%т!C A?ANͯNZ1+3*8(WO+Y*E':N[88 \gԑ=Uu k1&:u*'V$4Bƍ0^cGW.! b(d rUEY9S$6i避m:򏩮O֝ӡK6N*\eHjq7AGQ8J9DJ+*5Zn<{pD Яϒ-a/yFY;Z{ ᭵h5mY@y8D"8,=\}\Pw ,]FuutxVHAJkW,/M!YN5|Kj:w= l#ED>tGb5d6M3"c)g%EF,2V:2:I9v]j@"~]!T:w`zq(_&0tV=Ծ#XZ$_de*SX!]Ѐ Qa%kwH/SUyW\~iוq /p i\L>tM0<\;} ~31rf}]Qu~(gjam֞sݬ)`HtdMX[l€+hxPђ'-,hrr,ے$-=G (ovwZ2T"_`8NtsL @9V˫e5%t2#yN޳g8\Iý&uǶNħUT_; g\,2ȱKNoPT7:7Mj}em6.(W {/Ù$. PnXBj"+sc=_:-Gx> .7E@Xƃ%h2VƐ\_G=@n*~ӱ6i3۶6(z0E;B<kвRѷT5΀ 78D^R3~}R_Bm_ұ7CX,By?xf CuN[%c @MZpEBX4)lK |"WDjiU{o1 ~uSØuH;z5&dvΥ> ]2TFH,2]mELR!1l6lXV4cc^}o ;E̍)dfAhTe2G5ZMN-YKQDh`ȅ'n;z]^ T/q5ӥ6<-ᾠV?`0gfO(VN}˘6>/AX%K܇PBfГMXR?F`=6D3m4X <րfsGIM/QVF57l`ϖ/0g_Q,&MInn&î݁F__^9,L ګbI  |i|Ā\o`ARijHNCs4 !MO=aۄG` z8b]̂?[9NzH;Qb%&þ6ƚ/QMՖJ۬&SLpvB|Z8WףO5`="ʨFt|#x%V@er26&(I^: q%T4dcM cw{ M= nkҚy@2K6=߭i!Zh>9,+=.CVZdmBeƼ8^Ӱ5~OS₲8ӖQSeMuJ݁<ڌm8L8wQg\H3$YhA>ggFn`1Ye Ql8qPcf\yD CE9\_*uk(H遲5wB t&ܧMc H$j+LZ}☜ ޔ2Ll)D1 ~g؍\}GZS7ViI j&?R(ߩ~B;޳;fM5< omؑԏdBy$f s,csrV^iةQ:0^^$,2ƅ I+SSz0p/=h d˰ O\TN[MFxеKlfSJBAU kҶAX~YE!JF(gpF!'=Έ2gzUC1EqQV@^o§6/)Z/\ZgЙ5ߦ30N2J_i&jXg[EWShexM%m=s9?~ F٧V/c%$ yث+ 1Z #Du> @uq#͋4Ԍ6tK @JPU8@Z0Uq]Ct#)ip/Z_Ӭv'hL,8F{XIhɜ 1jGI/<!V?gE*`BtS Ӡ%V \CVIø)@s ho'cS:_wV+q]^Ŗ@ FAR)I%gs+0[?3/"uQgSo-<5s3L>ɽ^m86^ƒG+lYN*5aݵ;2|ĹZLZM_Zq%T$AK9E".cF >xک^-D#GR[^6PmE 5kPN@U$R7_Neʿ׻OFovcD\W>jr<ә;6(>(#{4]V?P?9MebDw秮YQz$+|I^pbeqa"ȑ싿⟬x,!fK7)tvOϙ$>^ a^|Ġkq|)+kWJ^IK^VV Q˭"B>;6D8ͲcvL^}jD̡:>N{ԨC*el`44(V#'v!UveyŪmP N+bEJŮ-窙5쾺'hR[2_F]y|F|Rt0e3s(i"l`Yu7MaxT×#F02"+DtK@%!Uz^9\xO0ş6bɲgGSI2 +f kwX_ ˽|h+}ڝ/Ѧf⤂$+& w`cn4k[L,yIj@_ቢ!hЊ KɧRϩ?/:_}F|lR:lmh \kG< 8vy ZheCz}pxr64cYL`` gĺXcly wR}Pϕvt;Q+֥VmR6u[vWu%CNX@Q'b5[2aN[t4&p2$~~MwX:cI3LZYlqcix6NEMû׳ONvxJ.\A ym+?fVrrkO#)AV:G JP4 7sqjUI^3' rhlAd *q^l:KK*.`H09i ΎǸ&"a1UUSFܤr97r9C"jE) 'CJ!v'ҼSź@iZ\3e4Ӗ% dA,(bbDL0䐱 W9q{&"_(jXܛ@GJĝs E:@2*\ #~e]-*f'J`> ںWXd!^G*QdfC=2kc/oi{֋W9AE)bS(аFa&kUJɲw;\&?d;xdN\swIq|Nq tOQ3t#/X#A3~uUh=1Y=. >"v9cT0mѝdؤnӃ/bՁt^Jrx.EOo!ᄶ=ٟhretht^irő͔vA\&%]?^NYH(oqF߯մKt,{vqh]I.|Xx\!zkU]m ~ّi+H3/4BMm&ՍԝOaJEY_Vp@[`- ^>8ys%-c92:+B( ]~ӐNJ2}F4Ã㕆{/ku=nU> Zfp[ IG~GP!^d}4E lsG j&D w: @Y\a6:>IMB.3IPf=Ӷ=S{BmƲ<=Ҧ(0븥 \8o; f8pQ8og._՜ ka3 tz͋%8{&xќ_7 k5:]Sخ05^ %T Ilq8DZtmG0I052@ r'z̍0"-b]T1: _]"F4] klS,r}MvJc΂Qb{ 8cjEtU9pɤD˰qDڥPD32+ƃjEzM;90IC;ϵ$_)4Q5Æ>G)&~ֶI䷱VH4D/~J+Va[L/+X3;y::a.Œ{mT&w/x@B$PK$U P8v'F-I98)xSNUo2>[s{/aG rD4_By1L=LK|+QYX}6L1:+($3ÒY֋*7jqs7TDbAۤ%l"JF=߄NOg|iY4)nBe{Ki /\uI /d +q>v;\ Kl0-Toq"Īf;Rmݓ? !M ě `RBnA}mr+VnL6Z>eT.)S޿ˣ, h+?N@MtT0I ieJ,GoFʸ,65Mp!Puz$ʒkYL:?X:lrJ46G/Q8+:K*)+Z(dz*"q~WrX"Q d}mj!u/HSI$'IQFp;JyʟT~itxl6@ %: yyZXK 7U҈(Ғc5ib~n!eSx5_5 9§ֲ :;u(ZB){ S9+끉Sq!R65~9^C[7UoؕLDviIxu'4FwoE]k-nuF;qo` UP0~8+[\ ,BUla;dy`L- {Ԏ洦Uywy9>!zC%V˓m6*JE2Av"~EU_k>pC){`(K' \?' %QOp`j׌n.)K4s!1Az;a|\JUK]F7^ZDglWH!5s5{ "݊bcr%+v%C\v#z4+p *R3\A9Tu淢JLTS.{iyJZq'X}phL|Bc I '}n"-wJ[} WP[-=GS~JXxLenwJdsj;H2B?e5BBR{#htDzH!Y(L~&=;׀$s؍M8_+BY(ȇ*qy[{>  9z s< ЦWU F7]Ρܩ׸)5)Â^t{0F ܆y^KR4cIvx$(2߫V )0yi@.AN{!w1'{rblg j\ E縥@&“=@ac yAA>!v.o2S6­lb?yysz}mUw=.ΒҥIw׶ۈNW]^~ᘘ\ѧQ忿7yEp{9w~bٍ"&`}=^ҽl1\m A(tg Ki`$gӹOBu=X|4ݏK̤[J7v8)r,8n \V:O`/ڒBsv~LCYw tT8;/W<=Ǵ^!MQ[{6@OS7\_D87V8BqZ8-V>&MX{:xjDWSXJ'vy60M?͉v l&" b K>  ^|3ad=SZnOwk#ˉw.VOIa'N?Q4RW'+{\jJlgpc VcWG*l1)9&CmA+"Wׄb`;xΪ `W RCv#+: ibJN ff~ǪOw &VB*1әVb9ʣd>":X izJz5)O梀݈}\qӭpfY)Q}ʠԋ[߾UyXI_&J[iỳؽ~}4GdAFGKzEϵϗn =R"?ic`d՘Фa-]Me;TX;<9[`DtgeRin>.OكptbL%|{D4w!R(ބ|($?@|'znYKxL3y7WŶA}qyY5HM AvKn[BzP@vO+U^bD $]y7i 7 T6`4¦+tl5»7)Xc,ңebϤB๞^:SM̈́&Uf1+Ms"| |,")ָ=-U{}24F})mIMqf~b-}{UIWIFq15I5P;2V'$13Ɋ1# BbIRbZ Q|..=NdٕWy^%UIu%vjG˦ lEU.@_ ×?pPߋNpށЭE@<%y+aLJKy_A@8WZMȖFOT4_:m5PJ|G@X٠cö.8.%6vkT$rf/(KIb@5⊊V/%R(&Xέԝ!K4E+Z&Yt` MfBJE Z է]$ Z\צIQ몄I̼Q:P·O'&mXCԳW pF>%GoF}$-zJhX` 8|B:@γ`+4X[|w-ɡfkC1%4Y=bd=<-jV}7ԔC&{u㱔.RHo(kDyf7"獊E2$@9QvH,`=<:ᥲ;3jqs*|^Z5E_be<'}t#$Ɛgzg*bgƇ춸c ;0̄%< |E1 <}'u d׉L@L^Od*Y˞b7K}Aɮ"fyVM+ Pv)@g" חy`j;SF'CJ^Im6]`8k;nW<\"pC۠Y pq.HQ1A{w9=H}" *dRV*ÕB-"~wk8sQ%BbZ >r)߽9Gڷ,*<~شĆ M5@,נ>S3%7{a9 LU¨N#-I)htn6w>|3{#6EG6ٲЧNwS8zOVŀtspJȟU2?> tY?%&]AL>eѸcOXS*=J*ZS g4I@3J.0vC{|!Π"E+L ݛNc.VI ]׃iR{{q DV./9bCWf"FU<ܯZ ̪wWE>>yUCU'lK 4 f9 ̄-c)6+ m(矊̘ߥvB3IcK[ @Ctj3ue#䴱2O!5< q8x׶b)Д`eqM%7L9A $#ABJÂ9rw 5Yc ۺFlfazڧG1@b??ߵ*̕ *-pq7حrzɺIcB# OՁt={Қ {~cȒ=ߟ rUU_J?4Oް#=)^!*CMw37wiuCW  5AG҃ G):~um!߆Y|-E EJnՆ"Џ?HOk NJtջn6ͪ#OXTPDi cݤ;o 1XVP_Z%v j _j;8KL;IOey_bu ')`#d!! x~[b/(@&EV }uvkA{5J*O:tx$jJ6ZNV>1:a'L}`cƯ΄;0pɖTSKfS [٢u1JsI09mWB7%1C}i0ylq{@@oB"}rn7>V&TM-Iq;uۅ{o#ɀ]=zrSP^E1XmkkxYqr 49vc[\+΄_11e=zy@(ژa0}>ZE%/~HIuKzұ!q70h(hhЉUIrrk$J-XLjp74ebx޷kZO /v&-ncKeZ^xTm3'^^|%{4,ÔA0Hy0I~ !=:<) HԹ͘y;ZzԏDV4@ţڙ0IiTW1N.UN{v*{{B擙^X4<]8puG >j=O ۔'a)eī~w)Q\/ҙ8 rmҡN.Ԉs#^X)^ ?6E!M6 ,6!"mPgo/@7Z9ZG toZ;(rJYqۆEuM81.RkH#읦iCR-'/Mfd| RZNXtzJ j@Wgc\&.9w=QB"eר 0$n !Km⚿nK(xr,E.-GR&4HFy<Yܦl ?K n @;l#CGQrxAqϚ!OV !HV?I'8nv1DdT"tM%07Y$c,!- 0I}z~vR#=lŀ'`6e{ g>d_1$b3سͦfw!BNAhB#(%S8sr(bP{t7`N=UIA1B쨞QL/`{*8RXA ^LƼ7DԗK 8J'@S MY묱B YwfWU]![$;?؋ǘS<ó(zeYqRo۳]pV^d 9Euщk=v$hB^{\잷>Y^i>逄=h!RՊ|erRRsWlC=`޴Ɍq`+ y<KOf 3L|sV1MgkQB.V8x?SQl63XBLL\\_6 {y[xT@.G AXM 1o3Qفf\4^gt^&Vl.epy]''nzZG!Ŝ` Op#ߐETތ-THgH~w8ƟI5"k4YL]{}.sJ- a$շu3FSpo+_c5JT|V:vrF;q=ٱ|PTA3?&'4r5[G OP[պQI`ZE]Vj{H1 (B!2bSkNk[qy*ojmGܪjEzMH\ܨT$k?rPf>W#Z\,+)ꢝ8*6UR$_s=ag,XB XC\tq@_)<` mX8mt]0 Hiw. 4lZj/ YqMllC sc>]4g.OzI](Iǻ:G׬gh'Ia5FYd ]ۧS^T=v[ WKOkuO1xitm¥ۗfd K|0q$OHߌZqq]dg & @E/oqBF<\$1I / :0"dE70lA`^mOzy̐}%!׎NM1OG[QMen|Q A'|CM9AK%81prLWXQ( -a/+Tħ!^M>qYq aZ7-& |!zՉCI[I ֫85U]+^rDvr:\C5Jdʡ`#g4"?OQYS% N~`/PUtq`ͩ`;n9еfi_AڻSG= $/S[$qf9p>Ҍƨ2[5E^|;~ϯpTYyv*^bZ|˂7鱼AĘ&[lJu7/C<V3CrLpIH5x[aCBZ]B^:A.ͦѨ1wcEc[խO[BӉSv#3,|Ci_&O TfI'x1jpω]qƍ>+[ב!B4|꼽Ǫ \Ҿ0E1gfci4n)OZOriTQ֧i0/~O/JɆ/rTFHAtSP$¤0ּ.v2 \1NTt? ׿ѫJ l6 4R,eT͇KdǏJ 5ډ:8à GcwT.`k,(٧Ia,8j]%^= N'i24hrt{…?u} H4usoV\z뢷sFȵj`A>'ZRM3lߨKKTĒHŷ-@8Wp~-*?+ [:.gUTgi;zhVfvͳِ^\A֣P$t°cGq,sRiIٱSaljqTF/=6,88̡}nDɔu0KW6` 9V5Oo>$EWjpIZبߒfNłžLnظs(F ?Fn+*M1PA߷1y XNq A.`PǢ0um%l}Ϗ;]d3P,oc]S]}s֋'ACˬN-([v>$7$<#Tt)̊d EO3̉[3T_l6E&8E֑I a>zާE6q bx=Wi3N%Hx},:2=P8n&V&ݔ[cvx`*+)=x-m ĜP)l#ɐ%{w=y|$8@0^wYxK~\egrugibp +h~\[.3B]l/ P/FShNcgA M۰GW|[hHAf-rY%`8[CQYOVN) #2Y#m<،f! Bg/`Ҽtm2sMTR vѸ5g]FS0`ר ͚2!a4DeT͌?f+=Tv7_(K|bb¢1;Z} Nba2./5-F[[=O-1P#_0тVM<ѥDUW\F3Mny J;i< E38?1f۽$Ego[\ 0Ƭ4yz}$PU>]5Aɇb;TF#֘hF((*O \V ^2[$Ѫ`)SsSJ/4ʯrU9$ݗJU,M&^i]1eahB.>feQ [ĝQK'Y][ӥKP--",a$c'G ,m:UzY79pjZ5%Bpgp %T%/;UqGy-VE)ǀI-1Q=A#D(Sx`I_ lx_;٠ h)?#\f២`'.k:^W_y஌m`9ImYf4Öd}MFoghl r2x|=;-˂ȍu;@l]Med UcSrD:ɳeUp}U[9Lܲ=Z]BӅ'''66՚a5lǻ DrU"/r*a{}W0RK3p-R/ndZΘȲ 45V(DEq"UӨqm"C!{-KȄ4PK!jTtF=`h*ڪӽY-tN5! v, r C(RK<6'̒t66/"EC'.>Ӝ?6|ڡ6ً,Y>A;:l4r'kzL_={15zӍ5Q\I^'ף%w<6YiqFRblj,FxͶ7]J`<@Wc j& 2981`=uz%ko G>\v%EON0rg2G[5!rlP5Pj*QCj@=24u\IX0;n{!)9"f0yKG aᴘG-=,cčHˉ5Ʃ]@s9GU9c _ BI#ީ*83`!r~[f/'w$b8&~[@uE]:%C ^)lbrsx7%I7Ǎ(DGY %&А'i[T_J@eڀc/`s gaem{$fu"b>7r# NqdIgTE~!?|%Oa?VU`K]^8>[Yզ DapU=xn5 CfUMȵ/Fau Yƅ֎,gR.m]Y+]~e>ɋs"1njWM jF C|\؞|p@-9Z X!K>wź8Bz\ VA $@a%Dt6D7=Hz$XhM"^sE7uKE n۵ r#.D36ȇ]0ڐxgO [ KK]2\OԬ O y I bL FeN 0Wj[uB,j2h(AZCo8Ԣ&hJq S9C;;eXY(h]2#m%\>7&WiqTyZOճU0#U GgW0^|t l7?՝i?-$~H^&FnphH9$.oLe;Swl AMl^9n]#7'̿)MQ {q'(׊`m k#k/RH#7،˵ b:SQxIUWj}Z\Nukl9Kꤔ͓A?m3-#)ٰ@tL}Σni?êw5InМn\KA󙖝 + Ήaq{ˁϞ9jgA9_$Qd#sWŜ6I}7I5Jpm/%iQR@G~gA q{in[ 9b+C#zS[A#KP L}uU|J`XTJ#zS|*C %5{@H;ǟ=> iBZۈBW6$]/<z`qa\jr' ,7) J˙BxKBM)<'5xʀcڤ';2uCB} !sU?74j8gsvba:&dplR ZD}7 |׹NuuG`Ixk~c(~ˍ%;_ 836FbF}/%#h_e,It%bV{8RhUssL4J=ԔN 60>̺k Qb%ɍ=W(eZDAK#HE$_xc7뒠xRr5 S^#dSuܱ>C&} gU4ҷx ןnR 1^AUDm : J~(7JJ1'{hlx}&Y"1U9f%)6L?7; !K:H@.~_)t]~_` DŽQ. 'MlO0+4:jo|4yWe R5I>ǏVWEkXV1q*d7y%$/Eהp #L^Ǐrsi\gUx(FѺa9ZOPÍl OJj)$47 +CPpszO}L-;Cq6#ڞE+9-r1ȟ<:=5@~Tz2!;o\O_CǪƀֿ@fӦHJžҿx5Ƹ#e-K+U))>1PCnCST?)r@ _Ee+#QK(I˭W5wfH!Y'(; `y?.?WLmk+5!--DÌPZ.ɼ%:`|ekb/}^ ؁&ߞ6lW>tߜQmﶆv2.R|FRFN~(0oÝN_X=RMܶن0)Dd->'Wȳ[2މbsEJq98E ~+^^PlJn[ 5_0w5?e/;yGwH|mLo?$ZV5ܛ0{j [ܛ-ʿy:TPGWbє %r-RIPs*1Rpq6dWiXFc.  ;x^\gQy߲b|1bUVG-e߄8,ۆ&1 R%V]hvuod ;B ǢϫCUR 8WFs<8 S1K;v1Ԩ}{+Q<~f[Ed ɧ2k GLbsXH+]otWWlU%a<@QPC5stQԴwoD^Ri26*"6h ;e.'tGw:qXT^Nl5 6ЏztB\ q7X6lgo.oAphn4h4.zj?8^[n2" mG?9G"=PD_+˟2̍R\r}Z#Y)bG<S |1OM0B^P!Ӥjr첤H5FubjWʸC ~:1 0vfM̤}Uk.ڰoUA-b/0kᩯtXE  Y ՛3-h|- <ަz$x\,U>ZYY! \T3=q9e6߱󟧼# mAԒh V5_ a.qYMz-9ޫC%,8S W{"IlZ?*M(#>?Iݤjs$Œ p:/|R{@X\y=ΤlWԎݎ ,/+nI;Z24[3XlvgN<ۖu+Veu38<ޮy4 o"!=DP<=,34t01ϜTqU"{=E5B([F@.hl1mx&>pfXQIW.E+.B & '\F14zTezWU Z-x3k/C/?)-^Z#Z5qnޣ60eNKC|+W)LStB\^0:{BuߏwufW%TZR/B `C:f 6?}iF^QJmPxș$.Tى-h/U2H/AL0JH6;"οU\TYdchaVX6~xn#;Vh#LK$VJW /{CXFFJ^K66rIlMUq9=5B1=.Xt._`T u)4e]vm $jIpTi^(AX.}HSG~"'Bpg69|oLj2feV]?oⴽϵֈ)ɶm[/3ziyĢdߍlgWwclnwkC>G <&`8'JW'9hYvej2[Gkon"ԭ,n;;VW~,@Pm3gH{"|J0A.RmPw9~rhɄ1<ӇL K1TXQ Hu"ou17=ٕܕɯ){yzl|qp3>5.qZ=P"履9J9*#%gzb}!:u!BVb] Z QˋO=3i~|NN vo\rkZُox㔜ti[[:TbLPh ^A|qhpT l_.M64om-۾% yS0c]h5̚C}G*`3koiB,ȣ.]dhD(}9ֆo#z%*9܂TK=NNT0=i~T+}~Bf;h2FmX uՙcc= 3OF`)CpD9^޴E oq/yPUq2#y̙!=COk+ ڸfuTt˩pd7ed$,tZ4}c\, hfċc BiQhMM75ZR΅f_FPkje"uoͱ*Rp%o ٱy'e]W%Yb*sN|ߑT[0 :S'0KtIy}G3b|x*YHvInebsm\>ci"4AEW_5)޴ުZΚo\>*bU`d3%4O/s_>e(lz<Kahfs¹ ٗHb zp]I< t{ ͽN9@g=-̈F@'VPPʟZ| i4r ]AUjT5yArӞɂ7PO i 6!혍p+9^繨=w2*ZYb`Ǯ:{E iC wfĦ{ߘ.KMrh4t{S`*n6MȄRwֽ8oQ6' &EO~]A6̹q4Mgfl}!㞪-ȵMNҡ.TXh?n玑.2Zɐ>_goܝp']] Z2Vdg\/Mz&eehk-ﲈ}D5oN 1tѱiT̰/{ݏ`5UkCJM2!Jn|8EP٩g wTAe׏d| I툰4=Q[v#mCl*68(5yd!SMX/4FF̢\J&ºVk6Uu)iи_x"[~C5T]e>ʢ;3bů@mWgYF\a6d$ /*L֐'q̹#MuX g{(xM&iVs#yL: <f)cygnE^4jy{yG֯D$,W] laҧp慾+ZD8:rT'N,#j`Y}0 TdcRF،*gcAb8H{D>N9 .,^]uV&!uvW2z/΋YJG:Ĉps''i>>o&؀|,DT:BmFI3/}4 n]9pਫ!9Z&6pa/j'OVB.(_ǥ\YV~XGǘ-fmh-,F57.]a X$&Li8UT'7>z\T e9mٶA ̛!#kxՌxv ] vcpgn? bF&\}d_Y @= Þ4.63yh1c`~6rg '|DM JU 8Q=fӪ1Є~V,fnd2ai1VfT\nŸ|'ؿw7 ֵ♕_+ҙu)r\-X,qR/rC6I\ %4dSmc|Xu_$FsIr"(Kie܃d$L9"3NTHe[`k Kno#3I'=31RY&RatBV+TTJbZ:XBv{cc`;| r&e2R]CY!3;`FC&_j⢨%3||DNpM`"0QX CZ%4CnPW21 RjWVYi:D@JnKlJ_/o__MQsGSr2;CyOpPm4S2Q/_fnL"Suy+ΈeZ뛎iZvP yyv%-~YŖa u@{=Qo6- J+Ӝ05' ?6^]._P}4Ҫq&)|V:MTt:HL<ֿ!!_2.wˆ>C.*P@tSLU.5>[\Hp'sH$IN];EϵJwE*d钻?X%ӴXrhnӤcaTV |aJVcz՟b߁0v+3+I]3n]=^1E.b<.901(ٮ]|<ֻ`P! Ct9g8"M|E7=򇷖ArBp`%v06ҏSʿ2<@;IۡiiV3LΥ|mEL^t@L!Q2DHk*lRK4[Lni5WɜJ`f36dʒ$<,&x`KHuѡ2p_NC `r6$K}Q`з>~xl i.Mg `hjgn`lWc##WDfтrδ 'QDkh[mF!ѭa߮w~A1B`mEDC) Fe~2kl-ð򆆰\ z}JTO1S14|ޅ)>0-⤩| 6iO]dѵRuGVz]gr\g4\xp{@Ώ>R[6Uܺ]@AO;[c`aŃ l.cQ?W\\gVxr6t󾘤rjwk1nڨ? +`7t|y;yl1ѷejU 5H:ɍùB3DᩲN1+ Ka0T6N璕Qni pr|7S2JlˢD^&I2`&s1Ԅъu9̍4Z 䱄IlG@ЇG$q#֑G}er> ' N BMLpT-Չs &J*֥#׏}nI8.&,V՞BEGݬmHPFtIhq^!vo,pEjt??9Ɲn7p/x$&@^fϛ׋ejDh.6嘾QYQ؆b>y@+NٵJIEH/H}fu`O- S]_=KqjLYĚm?I"QCDZ@&:zPDPH˴imƞA(Pb^.w;zhh0A`;8Eőģ?#M>jsE@WgB-M {G9zWnе5E!7gV,ڼ$m߲ <̗6nްm 6! %pn+$\c7P6D.pa` އJh:bf4lՇv?5`hՖ1^~1Z.JWu$ .! lcl3ͷu6Sp4k?IXMS`ҷC#[='kh7qHgrAhJ|٩!+^/ȜZg"ƊzE4cʌ& mw?(#BO󆀮{yz@98 rdFμ|$=c& +Mü;bV@g靦2*2< TCQ.t!u7N*mxp0';x=>$鵪9e̥Wg0$ʂye_- 0Wj,WJ15ェ5/JM鑤uOA/C\Q i.YK:ؘ*~Us089hR)u5Xw+@Os'||V/^Y2R"zX\ti3GV?mvIФ|8<?4s-k)F l>[y 2Ib20JyKP |'ĕ[c TF"`@7Q}Sg$rPL~P.n$FA(wyv~kpzGv2 ?we@244[RSA~%sP`T\ªyh>xNx%_L>Ly0&^{Q -v3!Zc-Z K1 *Xy;1+x/95 5}ڬg'ʝjoKd5CmsVNvI$,e&7'ؙTL x9( vzRH~ Bb_Q >-PlչA*Njl1l`Dl쎕K5!"bx1,n's/S>5Pj\tR.;_A[vj69tcg5+8pyʀ#>'1~3)4J}GE Md@j޵Ӂ\*ymn @|OC_t|r>M<`8e/uwBa[~HwtSNF?L;yD"fR6fE(Q!+;RnFI3Wp:^!QUۖPRdĉ@׽Vݙ| >[DiCi֕b=b{pVCl~#'g3LCZtfݷVGbb*skbMw.n@r=Jꝝ" ^tO 띆U*RFyk1C(4@-.4+9)(S-HB u'R+C[[C~6>H'Bɀ sð3W< [>B'?^.-.{FJ;]1ĭIkZT!G߽*LIq%E !0!MSclgu@&i 6BbOg@#prV{Q |l<6x\yRm!ҝAjLdwgܼqsi(Gv3hdF k\32a{ɒN*BMZUI1eJ+ToVx[=EE1ቐbƬ ǧ 𣏕Jn̪p 7 `z+3|"c%z+g"EOh~hs?逗 :-mk9x0b}_iR O+ia[ى HYq-w5O٢_uD$E]7c^\A{+.`%'0O JHZH=o5Y:^`I(4-IoS) \Ջ{6Tr}Uo˅$/͠Kĥ*xǓ~ߙʼn1͛+m #j 6PV# }',y'0h-͹ʘ:b Q-%}MȬYLοlhïÖIdr&'\kS5Y%݇RB;.1Ey<#ks," 5Bv%lGj^_unbg%p4 2,ׅh3"gsogN%]gݥ:"i"c(~o3JүdFekf9;oO,::\&"s^.x#=H_6Gap$!";HQ8]AFdWKICYg`:`v*N gn{SZ"yՇOCz56'|·SĽovu``rXO ZNwV$r''|=ğ]RH{]"?\ɮK;fcqTsKqLiTz̵!Ɨ釂%r@hHCҞ z,dRXg`3/ÁRgSE#aWܾ? “_t4nK_I!`?dGQUxW!m޼~L4,Jw&`9Dv#DFdԬio nWvU 0Gå>O/MP|^WpSO2|6WnRw=8K{ctePb-5Fͤ6K*G`` &cjS؎+ĵD)xk[h2SxaI~;L32 P~Bzrb/8^ze2 f;FaU)?bڐ nY#6Lqq[{&Hy܄G\IPub# Vw|jBx:B4E 泤5T ^qS>g88[#P:V$[<{69-=ײj.f1NvR/ X0W|`0ATœl۹WEBd!>r!Czo)r?5]P0u7mZԂܨԏʄN捕)n8$>XlxP*:bpyo,YJw5( h/Kυg[&5!I*-@VD_c _W*ŧS(b։$C_'qޓYX 1$EMЩ)[g]-5xg8VDC]qBESfYc>ۜ{a*0SE1ccab+/r<&'^tI`c(Q*p]ǜ[ 嚾fCoZ nBaѾZ<%Qs 2vϸ3Iz6F|'`^t_8<98NFcA)p)?MCV'[ |4WvA=K\P'ċ;8'*9QK76C)%81ϔB#Q%!u(M2pf_⫾heXЯ)ۡ, _joS',nw֦+mLi2TVYRki_R؞?*"fJÁ7Bm zT(F{q$8nl ~&m/TĉV|bɒ})n;^Qa$8acyV:ךE# c%tr 9 Ѯ,P'#*+[?t"yF<@p\k0N X(q >h)}&=V5/p^¯k@_ekd'M5 u*MO]/F&-80J2=A "-d-OU[daoW5nנ*Imiƃi&Qr$oI[Zmy=0Qж {1i!ZTY*t {O.SUI4sHmĕ*ztKz.G97Mww1ԃS_>l Y9=zm$ DiBEȎ /PJs1_GuQY2wرIfs_[)~CθP &&v> Ih梗%'g~}߬Tq²?x_+K@ ΦByI1ߞVA~1/̦nMZl}!^0ܳdb=} Bg"׷ >{|H[%"J EmJȧچu<g_ESi-Ky7?v6#ݦiD0R>P88L1NB[!?5xmf!*0.<4\"عIԺ4.oRDۼM<2i]bplKv7ITdg#bRl%D_#7/U5|1uZOL\6h| ǡys3\/RS (3\꟠Gu2RXgJ}Gy>Sΐ3>(Bf h`yQ\EhIUGS7vsnMl^jڀM Dt)/)O\Oбȸ^m "FOkHnfy@yzVeo 1]x[4[XJ[ \6Ui0N̜G_ZDu7ᅅcࢵvEK!7}K-Sz-K{Vw4Yw S`:NIj"ulB^K>,dU9BOɄvÝjvD:M`k+?c}(4y|g'h# .1?wQdl;* 8P};Jb%38Uc*dV"N9(T:1 !*U;sK9TN[ ;m3 "ªڱ{5a6,T`&jILz).mꋄf ͑hRƄ]^g bP#Dy6Zο:+kmJ*T isӒ @uz\͞6t1urB ۤ}DMdjrmxM6W -kOc,{6{:| \Xu/,Jo}"\N =Y#%޵p:pdRnp1_D;VrhL[k/ϟ}u7 _4g[/7/G%=$ sAߌ5+a(7/EٽxPWXӯ_]ܸRG~4Cy3uA cOJdd{^Y}U)W {]Naa<M}*WYd?Y%eK[B^Pv|zn?C cɺ#-t~($ZzG- ̄J mJ2zݚr^&Np^_7 hܦ2#C "i"X)SP>?\- #&.:܁%| dtZE$hݭ`m:;7ײSįP: "ZwS Dm`>R_Z[8 UVK%HgꊗtX"\*<,60o|g {(~XgIb#||@ ?%: 1GPx0"H') ݩ!.;.o9R(ŸhZe/gݣ-OX[|= h'欄.-k(1H )j,u*x8gư)fE!]_i@R3Bz=/Թ7yuJ>[Y~.ylVC@ "iAUVہous_=)`B(vr[uoRy?jQP,JRB筺8s-QRQ$ȃGׂH1~ ~$ԇ ,( D`ykk4G 8YLZdI)EF1` {ũ!flcYMZoqKסP,HulT[ 8'wY_C-pa|:Aza/ ]$ ?L*` %Ew͖AtB?0$g)N] k}0XF7X$. lw6ƙ!T؉zOb 햻bXZr3  =]ˆka4}-j1ťU?ž* %%#m([ uG"B+9#08cpQ/<6ZiI5Qw5Dj"·G6ߛ'7/A Mkb;{_׻P4 7T]I΂ &%x_^֕>iո]r)6$݀g^fm◭9[I9z=\ݨdž~%ل_[ulTKJg/m1#Hh٪WQcyWIHy2;syݖfa(2Y8<{8ǿ$3ی2nhUR޹Bҽik懮嶾O[>"1k/BbjWcϷ/֓S 24lbrkn ƿRqS}gj(XUrz~8}ȶ&.B1M`D%Ol)n mA)b\ђ:9aܦ (!WRv1,'A| \! f[^7O^QVֈ$D{!:X.nVȩY-H=k8s!uO|D, FR"v[|Xb:I]B屈9{lCJc)=A H\h nmRrf=;t=:A/^7Mp^av)۲>rRz$ݸWt@9X8(1LцxqK$QY]sÈ@>rQk4(u5ǩU9,c#|һp>N9j.0 ذd?ʹ-tk(b! ל-GzqN!#bךgCytO[(ׅ=X-_qbt{ܴG|AB_]褝m~*づ;pcaZAV 5:Wko.2 P?rVEl,3@| n ϹzzGb)6XXjڪ>[1~ayco'%1oF$Լ9h$iwuH;;SoҺ-~S u ˖xKh֘ë8349F}Jo₨q'¶BByqiqG*WtGaz#eݘbC\̏xޙYL^‰XAua Ե0BUgV`s*anOh[ꪇ:ר+ v($}AY= @zHyd9!,pEwTGዺIf7=ScnVt)diaSԓxZԈWLƿA(M --WhNnsB]C 5Ě4_P'#.\r|j I;m%2Oo|*M׌ Wϼj `p~ Cqp )]f&r&!Ykkx/ xh`kdg(߸T]`O!Hv4* }hng|a[P-꼽T>}nxݯ>2{'3dP_@v@^} /@P*7HW+~yDgHhQE;ٳwۀAIZŒE܈SninZt2fvJ|t5W0 5ⷖM6 ~SVD/=67y4c[>ffT!9hX ؀؟?U_N"ìSUUSS/-l ;kn&(̥ʘؼ$!`a~psU^H+ e̛ ݐגP 'dݯ΢EXHdEepш[Tɴ:|xk-`9ɀۉ\Nfvخ!"vա]4Dzd<C:j x3+gHa:WO3D/28Cn <^Gt_B8TP"cJtdR",WȄ:(G $ x2&xo{Gl_'Μ5#e. JQa ;)> d./X>Xv\Ѱr`wi.ʉmmP7Q M,tK -f𷀼iTpݰ2|Ć+{(.Vn_7&pBh([ai\hnǭx2,St|Lk֞{, J7r{?biG~,2;!WB?.%ZBWyZҦt[Bqڙ%D*)D{9-&v  LsFʞM5}Rq]`b¼XJosG`,7_kiޝN=[.n2럔dv \0\Io,̲i.)S4VzwzdA/=}y ʑ(ƦD Em.,MyIײ2iVEb]ڢsC7nUBT=έ9 $ʷV/iAR1>8؅|@O]bxGKuEF^t-'J*VdqO@'p慷/?=8"7uFDTDb}g¨֯Di= aCpuut:)j,-M8<r2ϡ'vп>ns6x{neLhsxUC$@gX'C\QE򮬷h1gy6 -RC^\^e&M$]y?޼w>ႩE@ƸiU:-6 FErࢠ!4@CHn}0l] K4k΅rO_5y^B҆] Xa2\˞R{Ц?Na'rNvEFm)F$4%v و֞GgݞnstD2ҕ.+B+XT_0 ƗzrK_݄ٗT=D;f[9 Eph>m9'Œ 1š?hs͔SvO0w_x<آCxb.9e%hfwn:|I_heg.{S,LރSE^Jgɇ7qa;~˶SnIQ1ABWhIZd`Vsy2$; W=)hxTh0|ۂ8xh{,05yuQ|H̻PydeuzJߴ<^g{!BL?ŒM LEs|t$ \zBI$~zV x nd`fn[Z3K 쯃'":JsE3-*S=" \kSG Ēbu+I:*GۓPFN?+;wZMcQXIey3D ]/2re]t)#IJ0gL\H;$O1 Rt_yԯ*y264z,:ϾmϷ4h8~ޫ`;ϖ+.Ǜ 8H|AV g;•tMc˒Hp-+_?z&1g>٩8RZ_\w"K[@8ttQUFu qzo~_ia~D~)xQm[mȡлFC:5SXnkGc|P^O7pLUʛt‚gdPПt/Sk{ }رɏR NTuoi e ZnCNwG)q""UyX{,#iS=Hw-C'ۆ3#LbtŒ&%le i=ڮ9pg{tՓPRݗpO=HJ#P]'O[~rjOձI+*u *pP22cM rR$&+vK}asN8BW007?(k!IO$SS}%S`gWFUjg`Fid6\7*@$%YHf<* =ӭޞ@ tb_VY@yqjX6FluKWފ3iV5bcSz][jԣuEs躐Ҭ$#Et <-)Q}m/ix~O YJNn RC3>v"]?S*\Xex7j *w|bErq! 1؀ò(0CNg8_/@j;]Bu-&FDLa NJf$9GkY݉K;q\`2j FӱbL%c.)|s0IGѸ. =64c,s%1 ;,#CW`M4m8Q/LS@'1T]X$=UۇgJ896 H/vY`U\^v7^‹w:+EhG6^6#!_߷m7jA0g %9 :f[> w.̔Ʈ=ꄴ1G \KWC예&Y+'K0meA[hҜUEKw*IÝ8Ϭ0'i;̏K")F&_8yEOBG+GB2f2q/d#f,ixSgg_ -^ ɻ1icE}z /$B} Ȭ٪ѲB.F:+D \0~X̛}Soשe;<-]FoP8+LeIcW }{I24J Eb@(dQty-X߶`)6n$i c$ T,삙.#]ϹtgSZC"pgƯuo Z'qZ80uIjmZRNXڎ;>Ĵw2cgfB'4³.@f}Ƽ.J#  dmzO h; Eo DFPN)pņL8jTJnhQ ˘;DC "v""S[yIA_01 HHpK=8N2W͆sSh09f a1f7h.)ۼWm'׮Of)ZM^-EJ.B \Il^*᥹l]~ЙKb/AՇ@Ck,6ldrK~.n9(eF?a~U;wU} H$aPsT`ɿRIdnB \ hC{FV==ĵ =ӌ@|j@Q&޾UDJH_=.'?gb/.`!灹l+5m.؏ .8(C.Sw"P!HrpD,Rr7d4mO#Խ}-WݶehV7I-;/^F`Vm JZvW۶_hZe=Ƚ(fۏ++q퀱 &x^u(᝟X/P„Q]}=z)\FQ#g_z7pc˹m@Ǣ=]x4H9xf]Vf_`.:-,G1T)vͳ|%aT0|tD&^/*|wmd@S@gʄl^_'oZÓ",<7h8|`Z ^]\lFlǿ# f'FEjmV;ibT=aRmB7%| yW[{YJ:( {8̬ wS/.~qBn$C Iw01<:iB\i\zPmq]Ӂ꫿A$k{랜M;=7> GQn&q'$KFڭ?κ"! 3%=8o'?G+5lطdyD9U׮%FN$CO ׼wҶ?" 5-< 71xW*vT`-`)̞8-sf^[na~|I2Q-ΆY"`^Xsʥ||06t;q qݮ"o֩j6r]3ץ9t"XEu 5 q A=D6EwIӚ`2I =d/Z-Q)SAjM3[&#.8 " dž=HU#0Wj8a"ze6RM UjS: ]!RA 0;NgV# n |+%{.ah6 |°Gþ$(תfJC3BGgz'apg}lV%&w#+'`/n8-7/̳ KE,ՐLe@Ģd@"8WQAsjw˵SDX<͝D_D3y$4UQJ&*`3<V=w \0S?ERX~TlY: ,_WRe!Ů2SQ^U1vאn) { =y`z@Y67i\h&5] ]֋Z/GaH&)T`~9/qπ{#jjP54eT0A5@SBO7{NU4䖺n,GW2 =cy֞slo=q<JIO[!mmzԲ*]?1B=e7֦x荀U*i|Ŕo-`JG0Y~8z=Rڶ*,Ms9 fד&> g?'VAp ah: lJI:*4'8zN*܉SRa˅_9yz8$/J ;~?Ŗc(Z1 m7^%Nzrke@_GAXͱsTSTS5CёS f| i4Uwcظ4nXCt{Ū/2LzV!D4&&1`FOB5 O?ːZgck͟,=CU,?0{~e -R=ewipxOg$+ tSx=ב΁ENi@p22898Q/)&e"k.PL^Byq # hld:<"ÛeAy~Er4[~v.d <7M^ :@8+:L_uc12 7zEj/R%s:.`g@'o-guB[Q5'um+{[<}#wЌ8IyNAwOjEQʻi!pvz kɫ f@dd ɺHx͜t##Z?ȥW#z(}>T͆$;ԅ׌ʳL@䢃7^T`@=PK\l5;`5>p2g?vϖ|f`KPoƙ :@skE!I*Y# Õ_A@g˞9-+=f?vwpbgZ,_ɋސe[#ncR ZpArUs>+]ۙFHԳ~؀Tg1(PEk0&4NLojt/b\PsY`,5I1HSbB{'0騭xŒEe8n4!GqvɌyirVK%ԞlE/Pz(&f5/: OR/mS| Wz%Da %/bA {T䩖yX/E$e1?d>w NbYErXb86z'3jSu~Mvh!_G1Lru09t:B?ǖ egþ? "\/X$u$0@a7-NT`H R8sd75Ηmv4&,|WOOl>rQek䳺@{rgZTR@R{!wE8ȝcJDwew!3.n{+~lk@\h}DNk!`r򋪂6S~rP4tHFP=pӿE(J$~͡VH/Zx0ZxB9*Wh\소0#'=􇷰1o,1Jn qmxE)3~ho1Hٹ%o!d"0_VgmϓT0,>d> [}VC,!?.|QBJr<n L,lƖmbJNU|jڗdV~~(xo/+pF(f9#a&P5q32$^XJѻ6~a(Yrޞ,МCz qLu&XRfdQ<{?.jXqiP Յ8K?-΂)n-B nTfX#͉<'mq{,rojn̾Iؿa qp>]%,G4u㜏v-mfξRufRX*cu>tM,p۸af`;؄- PPAed&l "5eg(q_L~ o"u6Nm;1Ro.*o ? ?z86~@ l7ȟȝ]ɥY&xK@'T2ˢSJW[/3fq]He/(8|R ),mԧP庌7]W8t-.NgC L8?;z/gi'bZR&0=& G?ٌ5{˂+8M, 2 5}YܞV6Ơ}NbL-;-=zLF&[M:҂^Wv*l:NJ">֗iLŮw|5Ԋs ޙTHW c(=G llOhGyR@37Cb.gB9rN[vtf€Pd)w@ $e8eG!uη .=fxJ:56m)Z%s7d.ouvA9\+ $%a ](-A?gѠA|6bA,0e;0iMuvcH-\O6 xM}?%+lc(GR<` E I`-K3g[-q .k%gX,=W@ݑ]X2kD)Y̙sK .Sd顚ۘ<(D: vlÏvSNR}xpTtY" IٯzԹ]ĜQT~bҾF`c/L5^@U!3;ޛJj{%XiW'Mxvft8*MojM5?LN4Ei#J 1 |ړE+V4wq4˫ϨnUAmK-i;l@mbR=T2>_.pt#rå22-Y,YCsP?7V}>>5)Lkl2=$s']u!oBx 0b >׉mlM }vd.wP-((>L//Ռ1 NSEZzVןhd*GecFuѷl]ܴæz/VKϣQS.z;c/?|- k r WTAo'ȁH*SuOycV+951 `!׃Z;A򓡬!//Z$`>-LQˈT|7tu*>}G^S.$Ta#T BUI&O0cIAR5&=O.⋥̵CB{ezf[i1܇gP fX?$ #3P@TiEbjp{1hgM}Sm%-ky޹=rXb B 'g_tvBjB o.b1(Cʍ/galNp_QGN uaNYޗ0;:/i#°h\q26wTsd?ǘLrzp&͟LZ/<ꁊyF荹Ahp}:g:MJmEkj`X:ԏ _|µ>[@Y_u*zZHwqvp[)kDR4`&ݝ.UVO[D_ "Lv9όA6`:Dyl3w%KODт[p|M#~5 |Lʁ=}.E} pֺC22NpoNu=GH䵟Z]xG sZMI[ZˣLlew@gPS2 xFŽoV"66xQ^*f=( Ld*_x1Vi-54یX1‰e۩eeI9%qA%$Gir `<GS+\ V91qezל tDumX5i!-> lVwwI@frnV"0SSD`|۾PU)k^\m5U$e?!zqzwV@CZnۆ1BA Y`FK ǩ7,c(./|㩓d;fuۀ6D'sLHQ DRW~C=p msطXυ 4NH|f%`^UdQ *!)pq$pc8e2ǿ{^#Izk]ZQѯ潖*$ b^!,F2`CPwVZY3ZOolap[< yyDZ&G?Cp J~ǬGNu7EUoyW1*6^6ݴ7|,"8Pщ=?gy3.8a2/ZPq4{B yij4Wp;O-~3"Ty}_<q<6C6q1-D,>`t+~AvZW@_B3jΦjtspԡz5;EFn ie0 Κ43-@x_Ϛ<*&E6IG7\2)UTedH<2&:RbU`<YN- VI;`4+z9wZK"{卵-@@4$Ag~P-\Ql9ހɖ ֌[^ [JM ԟ?D{|=p{{d+(r }]؟ؿef֨#wv]RW z9p~4dN̅OϜZE6ddeLН6Ѹŧ$?|6d@Aj2ԟ`1WKpsSw7S0WaK;\ x@OuWX#<`v6z7hJԟгEMZ0tWy'[ŧH9/Ygu5}Ẅd)х]]o.B/R3S"ֿ  )ȩ<S3u>C.wCgMzB7N{vRW6{ CF*=Ϧ7\w"gGK|`4iV?t8;uʹ  sQԞ]@eORk:x.k,3{0A%]B]!(Am ynӻ0:A晓@dTDlY&+P1(Lt e}sf s!O,>>qA/|6|=.A{AT> ՗ymX7Y_#1+b'+e)tuBN϶hV/rhěYg(ϜO6N/_L࿉Vbh0}VȔVf9hz/.H5MY 1*6_}v-%&>~ӊ ̤]>d9q*q$=+*\bzv)@9M5YKaTMx,%o%Ͽ7!T4#rQF*L?sTehE!q;fd@+䆬Y``LjKOw*Z8kX*o5+th]Y|fp;QRkGpCc(Ѥ;{~f'吊^ǒ5׸tleVG@N]B8$\Ro4Ns}سRJT=PF]"ۅrAS4w+aIi>x cKZ%KkU;]o0wg~ĉpm_ |<^BF(燹g>%q*>n wzÂRG6P^_0?7Γ y\BRdJ-&\n#<ü[ q}Ooe/=6r 1'gD>Tլ.hlJyE3)F2[D O*l:mJϗěl]IC"5$6=Xisz$D[8x bɩPc|O_%vQI\:JԻ݄􌰃p)fcۿyt:@ӏx :#TM8 3 < JH_V^[עw;5$Q!> _IhTO/.Th/?{;Qdi߲p'j`z.hs:2fƦbd .?ҮGA&Phl nZ? y(ujьDvnʬQ3Wqo+lwGpdu) DD^V]#gj2v,gl@MΞ+;Nl71I/3h59=VQEd+nwgy:% LWZ`5}6hlblI5<qҲ*DC=rSgR,>\Z&BG~"7Vdu]XdFWաJLq+D*N+JX[Lέ%}H{8lzYm?MJ9]^ɾ^_x!N 1 tⓐ5n^J;yA\&qFbe0j<_4%:C-WǏ]rD2pLonϣFm'=:kY|/D3<<9C_Dt~-ߙI-Y*VbQk#nhGLP040 ?2#Q0pE38R?\eMd߭`ŵAuC\|<vqS8%˷ }4qgWzĸ9O'%Waَq۶MfJL9rMяq7 fˌCBtG6z}y B2޿Us1>vv!x$H^kRlɶH?Ʒ_9%DNޥJ<}j5WP{ ?mӇ" MI.,ٴ1XN,_8k9G֪mu; =[;8h1jv0`dd*}!AQT魭%ږ Ϊuۛ/G 3b?Xn% ;HmVmsS@h m47Dؓ 2},h8fk}c mJ q*ݶ& <9 !5hnJj<8KX?I2a4qX#א2w n]9b R۷4Ͳlﻶ΃  ^^A掅2VmXYMF[&o`RУP@1!/Z2v2N[11N,j<5LU#m\]BqջՉ؄N(dˍ#/ff z"Hֺlo 3ߒO:q@n}~^X^T[Fo1(N%e2F|>Ni-r.`Ҫ(|\BpDqO)]׶ZrW@"իi[p=cmU}_R cG&\x[MV΅CaDSSOuZZT FrSL~|lݝ 4`w>JdnKv}cn䭸C2K:i5j b]*5r]u$̯G$ gj8/of;XZʓ|cCRUƽI +2D\ı_Un&<Z\geMpcikݸo}* b[ǎi`lĢ8Ǖ+Z/JI,]T*2v;xk>Sihi'RţC {yvl  ΢/݄#cC]S6uϙN! . Է̀\/P{2U%NLp{>/Q' .m!'TLZLpFqMb-\7<:hpe#(4!SJc:8Օ@I/# zl<|%)t\gaWtxnMȠN MmZ;ԏSMwQye>ףNYhVY BAZBֺ7NueÀQ=?f?i s}ŖzLpIe%l>E7*VP͚X} Vֺͮ$)[(O5h9j^ǧ3|00ilI*ȲyFn 02:7a5YϠ/,>73Ljh4CQ`{jm[4'ıÅ0ɞZtR~cm!ֈV>1u^ʏr5NX;~k}{*pX!ύ蛒Lm΋/7psB,r/s0 ǀe_{';?Q1P_ù_mǗBH1hhl2U~"MG`YrԧT\_xMu(u1ChCSX`/GfJC_BΪv>E~ڡMQ4E 1;f~$!dz:cv|W1wϰp7.ݜ7(غiX| N] E)mfg E`EFqVVj / J{͗tx +<6@ i2 % 𫂽nhey[_ \3]ª2 KqSW`TKIUg㩏()49-g#ʚdUA8?`Y ɉk& sfs%nʬgԐi+#8Yatt%R()c([QGJj&h')U&~Ȑl>M.'LXl/z[9Xv72˄`-=9kEo)U0uAXf_,o}У%oUV/Zz4[1LԖV.cDm|.~C6GU> kQL"jɔ.JG\~&yZbmrtӣCe60wDlP@]y\o&z}8ݽtrEV4\ȣZvCA'2.4 7@>mG]|*ҪvȊ["^l!֫@=RV!p`8?|l4/9m,0 j9Ħ9'SA`&ZN.<6d7psu kSҨOF*Hhw\]=UFVxŞU{c3Vqb]^~VW`Bcw6d^2PY1?/"խAi@O\~Aq?NydWE\!o,=EG[=5z)Rm&X{;KMEq!v _=B^ kn8xUe)w)++c7WU+,\cw [/2Bn˟cYϵ.*=B=ƽ(̷{Q 匱% Pi,NsGLŬ~5us%T,ϱcB(%M&.9af!3]f! 6Xu+'ē{-վⱙ\ |EOmcikRdHLm$c$cw!7OkG.! b= yb[}i* gh*ϽeoI e4x>tw1AM8 >(d;Tvf+q'P.bG+p ;EnX ] \Z~: kf‹0ކ~%fQx?w PaL|K4UL*@Q(I{|o oȄֆ1cPIL HUL&j8:$R,_,zz4jcNt=obx)]C u,fӭ`lh9dPp(]* .%oKP9qgCzSV|/A:].I%”ɁŘ[:' <1uMM`GL@Rs΁1m~<( `."GűuL!ik1_Iڽ&$; kU#z`$|1qa\jE?l;rLY2J|Η- 2>$߭oTD!RB_hwP׌hĶb# X j34eZ 1輿VU">[E,CvJ_΅,Qq>,Stq̶ɯ`aacb: TSD$k #1Dx?[Zj_"$!Ҍr9fdUl>9rlO˗Ws\_)(~Sa~;byblʒJMp{-=ȍj<<HhHK#a -`ls+oPUπLtqQܪ_~BNyqNʊ\;aVn=w#)U)IV煨IBhʻHuW/r%w`K?82] m9/TU}:>ggfQ.tcV#P@sji-c z^kıB Vmwm (-;j0xQga 3f C5q^FQ-A]b$͈sz3"^=Ut4kwe%{#rPO2?aCX!ɗihyQ̭[Vs: y>g"yD>uG=[U p."˱sRV J>sm*ɑ3-mVAxO, Νo*Uػa"H M_.nO2IBٹ0|8!I|>D;BOJõy.#>u D/:GX qp{@Ϥ&H%U:IHxIl(?%II~MO!7Eya~(\K͔PV2NKljj-Bhr'ꮹrV߱!5b%k>,LBG{AO^ Zuq\\uԶV*HH`謢LعwmE<]DY@b̵}(p`O`˅.𫶢o+V䠲>5d oeD:Cvo8瞕5zqx<Z IAT. m2~|foWY;HCܺ5W18 DY5t@g: 7/!Gv%;;R`$ F "6NAOp6^;+-+Q͘cD : ܦ5=g"a uϰ/.fbR^)a*A+B^_q{4c"U ampj!阼M rD2ŦShċWgtᦄ3\2 Xឬ֙[ OF:) j\!C$ 'D?Lv I:+S]?&?E d4={8_u_bk.S 9Z[Ip6>̚w~k=z0i'TMpHOTQU\gaecg8r`OWKrfY59>h.ŻdE |fx 'P7;~95GZհϠy 1xJjsGQcX/.f +^Ղp'Ap LF0/ Z>d*MAϒs @rq~ <PH j5~&ꜘob9ܞA.VSdW@Pe]:\U~yxw?Dkރ f=e7C-(E$8sx+=5[N3ɖat @ \hR:*ڍ! "PZW `Wp۟ߵ m{|Dki*b٘}YLF+Ϙu)džZYG%Ve`1w^.4s73+ Y+)Ե*7KDTVEh`ҨRABၛ_0) Y!oD-@_ ŧ #)\N#IE'Th+A MdtIkwx1Xf-?۫5a/x8篅9w PH_U/WT.ռDAÙMǢ?>-Xwˋ{tX)ݧ<^1S^oAr\˚y"CKhۜma1vi["&%Vo̱+ֶAGew5gBr1UdO8fB0LNRIGi+ ,OD'8(xp†&!ԏk[):vPp丂Hr郕б@^Nx(+OԳKD`A%g/VXⴖy}o'G ^ҮX Y\9՞!xM2ftWh1#`Pލa V)f\τǥ W%m8?sP$PXF*}ͮ`щ z7jT{O3M2 L2% ]>C\dY%338o/Iz_8# ex듹nV G 5źW$+J Yx C^*pz}\DC>wXaN0?s*>AuTk[K#R/ 8P]0NИo Ezf~EWbvyiul ;EӛЖpd"8*j;cp:m-W432O%1=|K?|KJ!k+SN;1\){rD4_ ve48n%kAEXL&TTΡa &;>=$YQR1&/W7:U nQӻT&5`ԉbk /&B=N~mCķ Uq>Ǯx)^k2Yv-91k%Q &${oOzT|x^b)ƕR91կӪ'IHXaNdK4QW\zk)ex)nKEȗ)87EhX)9lѨJ7/I28%>FyKD3'yca! H=?/QX1~ : 7{ȷbT>ti<(p|iKMkZRU$BT.SW'@Fֻ1CryCۊ=J{b7,o0:f2;j򞅔kȀ cK Ȓ_Qz7<}($&xR.>L*nםrx"v ~>J,Dzx'|5|(!npB1tM0_qwL2yܑQ`H T=ab<1NI\ dԐ&yem.J*J^HӺ"bukiȦʺMjWi|+;ny'{5ţӕc2}ʞG].8E>`&d}[qs%~sSkvA5ΰkE4Kw 0&N*Q N }(b>Z ۹,o$xl=WD1ٹi$ا.&훶/|DʞYBÍ{$Jegk̝<dl0ԅdĉY8:o<-SЅxRON +L7ckTSBo\(ۆi+&l0UCƮsD51ܫ*̷tSL&RtJU -&OAp`qۘXn4O5b.[F7$\V92*M#)땖q׻'3>=7g[ˎ=[PҋӀ`^D͆"( t Fn)* _g!$ xA?-;oÎS~ V*="U)t&zɱH*1'bqq)f"-fwqgSTuF?P bUy ZSY'YW]57co?Ur 9ƂvGh)U.T'ωnfKT +{/O_s=_o#yX۹Ϧ436E)IuE1G}}IWHW+3-n~2%Ea 腲AU }U9W$n#2qPTC/p8uL _p ~?*p eHHGb;3G5ѽ,ouX 6CYz|^B )K& Y*vjhΏ-;ٷ+"`"|*N,Et7 tمÜnw"ǔG6}K?\Tէ`nD&l.'njz\ 02`މq%`˂(KG.t,)jːm?H)G6QL=h4>h< DríZDhPQ5kAJ B9ᤑpoUe3T60HϪ3d_:"@N+Z %L/pA#92p}Ł]7/o1]!W GNQ Ns Fې[u' Wzrׇw,itiFו8R h`dVT͵If{C՟>ߙX]1v/*L?.`n-@]k=i yE|ۋgpn;d)O>ukJl3Zx vbNF$9.(0W+M  4Dœ 4-|CD yhIҦG+ {ׂg@KX𖫊#V^nxH6ãpVH8dhb"?tp.Bqy" AE%jh ?`20n:)F+;>e"$% /98Įd{#O"`5u5]~J$rdH"Hߠc/=^3R- t\ja-)=s_t5?~snQ&+iaͨVٲ7itZƜf|2W*cI2K 렑Bfج% p['O=ywGqN7'=H3dΝ"N Q½Xh]+:P '>Rþs>VZ1 o ܁bu9b0i7(d ˠpHn~h`J1?1T.}O9Le5 @#mISl_n=, ɜ] 9fygz"R̿rkfolaO/ҔEoMD_L)UEZO.bOd7=(WjݽzXes>dVVN e7Im)Sms:f+&&iH1 J,=ֳiJ~z[X6hȸ g2s[;(? Ԯ[RȄgd^ w(eZa3GF枚̪AjNw@r B `g8E<1. =v8[,gNL'V_!9i[:uEBG&JFhgx$u8/>L H]:ނU԰]Ӯ.YCHG𲝹dii54t ʶ%.&ʸ1;? $pb9F:G;wDp߈D|C^MP(y4~C0o ֣`4ю,+C!S^@2t'8nw?;^cŒ{|(T*I`EwH0[Zy#^-DJܕ" cv\CrknV -ۇ)ڥOgaˌ_2[=Ix251Mz 9@1S,@befAPV7Wa`yo$YC'!~-D\RDbsZO9}E Q,kaSoZ96~g밧 +-?’-Щ|Uՙ,NqFjbCgÚ肬Dx-\n2$ QۯrKXPhaV2NuE['K rK{&n|2I jUhi/.sa `~@ڛZ+YbΧ/5'u)ibׁiKWa;Iډ.0~3Ww0+' ^ hWM"wcB{䴌A/-N*.{> @}|!+iNfpMMalH8_]#~~]tQ~sۍm+$.jL 7jl7l7eGߋjXdh^W Ŭbe'#[a̪ۯꨝs-f UӬ\A_<@?TIԏ>5YXa_?:ɾTFDu\ᨚ#`&I?k[pu岅8-VGw轗aSTD‘ ol|B?(^u"Jx=J D򘳁c2T5JGLt I ^c;o1î ŦÙURs߽EwfQHnPzqb@k. ]G~݄`xW8ȣ XcXtίh"5{gʵpR^ryI*'&<фZ{n͑" >t 喢*%OC8p̀x.[=P/xjb`V0$N,w׃Zb ǟ{B|Wޅ4kc(S/z0q1ux/nH0{5gA]y{9&F$tޜXhTԟN㳶s_=\חUXáL_ZA<`gu%NPP! f2eW0?l65O=IFI)9kSMRN |r \뫟{sJKH jT/IperJ+ Pmh*P Ht2QiȚD{B#ׯvP 屖JZҐ ) 6019s+M(X{q^8"+Ĵ%{wݰzQF>*&~:^{̷[_ -5Q>a/xk<ב5β. M " Y"㑿HGW⎖ui*{a(NVz1J]Msmg=/7&?ܘ:*ksGxo~]g^6=l'R O԰E{_R{ 10y2FM>;I'&*wpJP}s]wٰ%M1^jjj\݀x!34G@xT ujUۄ Gý*$R{&).?c(!Y_hDH !"/^pQyKEm& xNIĝ>2qlqdk1r JOo*+$Ϲ#3G 9͖=;wGBVu+4iM^^MYUl6e0L@9e&Azc3eE.pBZI|hB-¨ px|,RHlc8sإNy]|~x y[c6`YZ0oGf;gtH5/B+1т—>y.F^ܵE>3$0_=/ٯD}&?g*=`ˁ{IZb{ Y1)ɅvЩӇ ]ddMw>j.CNV gAK.3 o0 `#kuz?jON } 8B&` K:Ke.y"WTtǜW|nlNXq͗i s%Qw tiY%s\Ꝡ~^/1}G :ī[BC0^yeźوחPY%kYU7Uv"_j*g˚ċer+dWDJG7\/@j F4OQ +]'2EFY)ooQتa>"2M?Q4~F1LN`BoU~3IIi='Mm^/Lu7f]',9_‚["NG\bF`-(PgTp..O*7d:,ɁG  ܏ W.5/ƸC:r+~SCL|%ݓ X (BʂuN?z@'9ghO}132<\=bjamSzk˭aܑd9dg8,ӁuY \0Rf;^IǬLp)${TƼͩ} %jq(v,K+rFaod#XP̘[e{v${"!2,$d]4&wAȉzv*+b"TF:[FӸHC“iȓgsCs2Cb1*5TGgQUw%Ҳ#QhzXeڅϻ[F># 4mWOw Sf&.t9 ǫtcV)2;>0JkŔP}jb^F/Osڞ8f R-l'h紕@RѵTݬtV23pIS,3þR-'Űki~T[Zg;S(iݩvǑbG?2ͪ3҆AbQ~i`AR\[z$]S'#l]Uv#O'. ylq³t,>$;vjH?f^DV>tV3 ~ed ZNUh]Kd#~~\I%[&yݭ]Ͷ =-$Ȁ{Sމ(s Թ2eƒ%"Uj~^ +U۞ϿB/ŧi*IGrX;U;4Ԓ|ఝ[ }ky%~ M1-ȅՎ=JCE!rÎC3[Мb鄫fMH#bi{bVSz89w5Q%vp+#1%{CN4a)OxIxGdoE$"ufoϑOCuP3(%x+ Vʄ{NJ([{ N8u[,(z@ȨsVKy+0` ]єܶM,x1GGڏ> ԍuUoo\1=}}!%(D|v5f֕mh<:|;vT!Jx{ zRY0宯>#AOn Jk]W_RE5VmNie],h7cPخ{wt|w wwJ4 QHPvo6/+0}rPFvǏUTg*Ǐ\qDd:b^`q~/u!&1{ I .y%()YѐpioM>-&3Ek=<~'n#0ٌEw2YEyB1țp` >*gZ>VP,5*_ɑ`e#]}]x yt SЙ-_e|UL E.7)܋y7LZgWj7~cm:ON"Vl>(%l?+(T'ӤwNGD>tpkBBGm.0Bjk/B.3teNdIJu[¦ȪaM=QPfϷ(-~!h8˂Ȑ2pKDRttTsb2of4Q!羇8ǍQ^<${&4~6 R!؛ #Vj9D@H0ؕHO -!-gY@emX%}4.ċφGq1D'&:ܠ9= j]M!# F1$`>pHo VUܙU's\V-^$a^VX5iwh|6 tԀV80Y-I>i`߉wJTc46݆*(z9ض}~hAbxK3Ox6v5&ܹ/J?.+IߠRW5* |{k^,ub!@ɀtщ|ln/8\շ뮙I21~ ķ(Ƈ6.K"MnaF0AG_j89w^C'Tʇ&t+,vӰ}M_wfzI3)Ub[r^*8)~q tD鰵"JkDS%yf`x/:Ph 'b3gZ*uqgy 1/F&w楽o⋓yJ9U+$y}@wcQg&JG=2bpˢ ;99󛝨U,eY=ж zEQ4pV l='?w`V3VsPvWÝwZOrNk`qzú 1PɊR .NXl}nZbvF4 \ApUQFr,@pJ?Y@FJ68@g'8.檥*c&cQ\QHqr +GU>:d̖?}D ``3~^_\$^!cj@Z:td 1V&kL)0\3^ DOfܩV'H%jUXz 'RӪg?$n^q8N+!iDT\-RP pz%"oX}X;Itm1zk.&x ٢>Je#PG;Rp*>-0+LV";n&3:R2b/Z9ڸ-4iMzw/GYo#=L n=CH=^P)&Dg81BjSq&85F;Q7\^(|ls!WB~3Rġv'$aƷlta/>n4i 6}wC >$ӬmVL.D{ti\?\Y,'/($TaܺɎmk%,Kۯ![=e80yޯ"Ki.](G{ک| KsPyzqޱT,bT*\&֥돭BTtr>i'W3N|}r9 7z8=l.(%>jao,O{''ȕ"Ũb{d ׭2dk1 )J#CW2c$a@I`^І;4C1\bʔ fhr <r@6o:>kiqa*hq.q =E+@)?R 1Wj/uO''ҽg@بl"o/M{]E1/NJ `q>yxϝvObSN̉Ah߸0v]?A645ae(5L#;MqZ-\:-3$KM;ު͜^M6B.ZNe$ꆞ!T"^9rSg " d)n43t廚)(rJ+ *bA60ڊG!84PSd5eiNtאD {`UAA1܋%ZMHdr(Z/ā3݄q'wu *Is@ulQzHGfɪ~ PD` x92ۼҴɲtܨ%ؾFڍcwAohkJIMZt$h9քQ1"]<6R&d,rleIW;-1Vq_yf%Q'{~B!vFZknNV]ELcGlPE0;_ .]3 rkp2FҨJxBy=IҜ= fT{lr)$?4mҩnukz]|:0f0&ZE*DqU}: ܏:ZV*O氆}܅F,L^z\uٿE((FJ89 $Lffb9|?M{NrY4X( I2AP : 3ƒ-# Nvυ^k2GY]-}]PS')\%Qe6Q\;1AΪ>g\ul4$M5c1`NoD6D'H-4yYycLlͮVS{9U,qLdJOc[˅1M[5 ,hUA?Ow[1uR% ^G-{JӍwG+ՏtX*JX_(NOIFœaаXL*W` 8tk\Vn!1sAZGލ7v"#{@Q+fArg|-َ5>>69_7OT&؍Mo@r ԅ 7vԠ(`vd)Ps,9 *d#ޗXuwTNFPMK-bҴvi 7' :Oj+Bc{a*FF]wG>|d\WQFC'\/  [mqkr'T'yAa!ږgHO1*d"^:RLz6{Bʯ+,=3;AT%Z:Qm3/V';(Ҩ_l#gd@=uNv|+ oph Xn"%J&f%j ^7`APm; 3 -ݥ&fl sU8L&L\)wvNd6B@ORe՜]v^06Z$$Q2Y2ǏR,k|ϩ1^GSSΰ&S,j672}-ɇ#f<ejݪ-z͝IX"Z~4P%%vO@gD٬v ^1ll =]igs'ii4@ۡ\9^$x5"RA:9:v4&ޣ $\rx4 ݀V$7Flw3f%!J#^d= q &!UqT*^b'ngFEW/`ڱ( эGgJ SjOOpU"fjxu8}ΣCb߹/-$x <ⵝVTt kŸ&=v`_@wVK݀֕\ŵcvi56oMPŜ˛Ut#10^@Pb@IL>HI%sc}FV:0^4e..#l1x@|JL eEr5 y )e| #ZB"knu7Zi&i/5|̨v`_ XodlhqAq gz@L gdHEn [kٮ>ue+:X9rD=_Oŷ#Է/$c*Ꙁ8x_V2pkA,ʴǼBD-oI %o1Oʖ YŔ|CAL;C&5&֊1d# KKVLW`@GpA44Q'H޼A?T:x.E3Yż88oʧ7R Q^m JvP_2ڤIvHG!Z6/%PKWuGyAWgR؏78TNi]_c"%E"̍55.7n8p9G:, XkXIgVs0@VÑ4l?- NYfD60j8mwxƪ3,-#7VwYZ+Nf &zͅhOpѳa#GwK;gm+_(xzyUG]}yPaz#vjAs7Bʽm[%7&q(hw]ݜҝĆr\4?Ta2(vDfZqdktۍA;|*^nP".q`ʉ2t"UF8ր,.%[$TI* Ց {}*9]AZnnMpǂJfermxeDPB,ؐ_"os^D/ z02TIfW\hYH@g*Tq"ʽg^;2^uӄw>J'E*[}vmVzZ$OXr[Hi`6؛E9f_0)㘗0}T<44Q ?Lm!u9˗Lk":ea4<íilM S' CT,}o_2 >'o> !vxvc6,\,֖NPa]Q })"g;;HINkW q$'+pz!x>}6*hm;D M`%ЩnhnZErK1tUz:sr`Ja,k>i|g?酪|k>ԧ*9b-am򤫔E>gj:i^tF;]|Ցk$NE"gHbH?HL qO'Jp2 ucƅ >N͌;NL$Jֱ(VEPMuA)7 s`g&&DSDC[ xD{xjE|νfdI>+Pgp gjNj1('?DŻÉMU}W;K xv r-]Rhk&=~X,jĘ QXP>`A|EyߙJ&:jDLPlË+`oPɠڣq96;S-n2b`4 bPKEFM7hnd[Y$^ڌzfp\ Zs bVh+o=I]UϫjAW>SmU J ֚n*qmW_$ū?̥k-}=4~pODf@ެ 썁a;fN鎤n03VD昤]6L;޴0q !0ov{̠ sCC[m҂F~K#jW _~aUvFD;:6Ҧ,!όOn3 H3˜ =W!gؾhS Cjmv{qc͌dg}H.C_9BI]< ~U 4_dn,`dwjw_\R}rքzt 5{ڀOI(@fr)"y8`HN9,, HsU w8[mUZ~8'vjEUYҥaR>㛄϶:;eJ/lh_ޣd AS>:OUNX9=a<1h~pI_ i#`WPg+=^G%?CbEU^2gvΩ UjEsԕp" ]Z/e_&>T ]2SxwmM5B ո:6w/Udh .P iUFߛ^ )Rk!%#^~b&(=AR)|ep#vC lnKI͋PM+b6 YhSOv.l)b;8:ėJ:UOd! -;IPiSZ\tg@tٻAdpԚf6T>QNvjZO,4[\z+VӒKxt]3bgκK ],hYk'h8j.T-,.qZ8 `Z;p=_'s!th:Jk&C0l.  k\m] k7 7Cah˫9Ę {*`@oPTBAr| 굓P鐎i8ͅFJ-;\ dO?ė%!v'ٲ_W7&}W<(WO>i s`U iiHឈt@|qUGAĨzJL( R  .Ŷ5̍hIC:-Y:*9ь.3{5[ՄfqHCXdmhA_Rɽ T+ν]1Neа|)T/Ϻ Dϲum8=H _&_O;vyf$cZ F>'P)UA Mt|޹:fϘ>?m'92x[nXG'0 %^S8k=Lį0˥,_(Y1rDp}*@t c]~W6!+T iuN?2;5M]K0WnaM}=s&+0KFbPQ 0kG}=ܳKϔ\21.v)sS-VZ!)qz^ QC.U DV8/p}zU6fjpvi1*X'sq%k'gCy]D0ĈGr ||ns{'/XqE@_j0pϕ?WͿ*5h!;E쾦TUlr/XR!K9!ߵقttD4ǹo@m4 (e 6Gj#>֎ 6qLљp}UmtPۇ-52ڗ߱U=܈sUkZgXAqu pDh'曬Kq_H]Zs\icn@.r盘EAA7!sP"D~X{slrT w刞PgؠF׭1|'\gZch[ 9u]r\IdGZؼO:aFEl'LNȴk\na"J;?"U2Q$#z%W ]݈Q˵qsT MPH=z2$ot]%TPvaig7t{~Mp:KHDK=QOc<3PaoDdj@s:SΛf9rnFU}"ͽn8ȡ)Q3Ě 4K> 2]bs"$S )vbG5+z~ݨ3`oi y)w` >OYJf]=1(@f ]ZzoG_2|vj!W>C` j\Fҹx**eu:E*g"d1riUT{>?\u2Ϲ*VMJJnNB 9}}Ws1F's㡌3x%` (3 ڀKsixB^5Tn`zUL:mDGW~ܵzG]*<6i P^{L#.!dl }D]xa$ /]ñ@?]n5ۭAs"~([kN L&OĎ& Z:b,/JwBq`vx>5 ?Ҳ)[`$J`e# TjK\cbwf~dbPmv Ecb3Z^@>Que*:V: zBT.SKMnK$R_#CG֞ &>n77yS&ip Dɲm*J dP=P uLϪP]<;ED)@K>dX-+[-L%W̾v8%^&aą}Ǎ7<'zyji`FvbA|>#87`*#*+Z׀Ɓ+ne"W٪46rSɑy[AP#0 @W1@84W{h ^K}8qgojL4 ϟm}RN=K@,虄 2(6ĄAA%oeB֊^M)Oa1e8!MK}PxC"^Rǽ FgkaA;e'؊ۢmupoDDpQQܶ>bbB׃w1Vhj $C03^lr{,,ӏ^6I@Ox }Q8A@YԲ5ϗsFʏQL6n_ϽxKgAuC5oNnrrՂH$Hjv\58Rr)FI1-=5C`$ʣ$S՚ib x[bq"(C'kN9|z8k6;hu?rRq% pЮtUǬ@VQeZ{WCf^}[҆fHjh,7z ,"h1z}Mp9p< f]/vzhB>hR7*r7e<'G,\?at/d%zjx=荾@kcg-^C4 5c`byԕY}rج~Aygl." BP`tL-G*\ƝFD#6%W~.GZs:5o98oy$Ug#I͇_8nێOhVܧ5> 㱁Lm*8Vkb2:SS2M_$-@_Wj5􉬌=Q`#yu`;џv|x0zWE5g#FKZImx'춴=DV+̚T  Y! pNeH߽3ډ?̇.oA RpҕoѤ,Il~SU b4n Y!Ǚj!Tܦ`^pw!{[XA.\?Lհ H&L_iCݐm@)!K?XxN?,duWڿ _"ކef+;rfGZE*1pP/תHn䣠2"ėI + '%_‰+) ܅  "Aqz+ |ǿOT2z`SaBMj[C/ւyD5gܷ5ҁbLi}?-*brZ0AׄT4wVkw!Vr5mYm kSp@c1434$c '`sJꂴ~8 W6q-ȶaALLz~@ZsadtöIP73S?oghɢ$xwfXJ~M GP񛩠> JxMڽJFYƨqyA$'ScM}PlCAre]G|7脥]onM9LI<$}d{n;Mfܘ&P[Yx>Lہ(,*ށ[^C..QmvϷ L<Y 0a[g+lya3/xOCLt*[i޺y @=~qyz!hNT 9 4ݚ ;yJBTGs(YhP|h`bfڽv5b;(%tL,`LVdYG۝ܢ ep晘7A*617Gad^>Z%OƜR _`toWPZrFY_w\$;g„%!i7rA.8ӆ \fxt6ռ0խVh>^Jկ)G[.F+Ƃ;v.!Po{ڞ0Gk(SQ hPrbk^\ }])u+8.C[<8_e$j7߽haxnCh)2Bɸ4D` y%˰2rʩoXFv4)vbOoX$uDlS;HXIIBJƈΠ{F; YR7 餮ڐ!ޫ2LSRKJD̾/h?ۼ4iWL]hSxctn`уٙ$[ ຂEǚA?,?au{>um/>7s֑Wm6b5ugssE,26Q**\NBp}thC0eQ]4⛩fn*U6nPE7y"<;u3C3"%=Z(B*.y- uƫ#S +N5%-Tt>[2o4CS; *40/PV̼̅|ŹA'ȝ{M^me~^U[PɅg1ۮQ ߛ;<+y#'3䖰x5C# Sȹ =\zv7[5UU|_ү'ٖBE3CWo=`xQZ' e)Ld:Wk'b@'xxɎSc4̶/ZS, O6.Uϒ 3\5B57cx{̭~ WAek<@@ج]IZ 'BV*"/=?oO M̓u[j *C%&wUhE5X6upڴy0P9&jže2,W=1*[߷eZ\omP|?D&R)PC G!tvCΓA':G.5+Pv>-R/RgQe1  vk ,//\[d`5!3ޮSI,w}$DapXu"rXD*T+2Jj, dTZ) 19FxNq^B~K%>w9-5]m%c`KHn#\r Ik,݈|`T!.YX-RIYoz?JvyD؊/$25[%CEWΫ@k[Ł.0UfM3#j#"*Ϫ-cϢ cmk^}zy9v@7^@½o%7+mH`Y?&A䨙ׄZq~j: #w\9CnRα5Zζ܂f)h5LzQc={fN?+⌊\ mX"UH^(ӌrȓfoqAExͺ]Ll(Ğ a ^veLkث[Hw݈1{p2% "YdF//1 )T{G%@Z4bݰBG|6 A62@Qd 7RTƓx*o,l2Ivsh3Sn%/f=N\A?~YeFtԀ m.n;9n8ر P}J͡AvsM Ga0}2"A"+pp( ?_.w%Pӕխk+)G_MȪRh3=Id(P9"P&~7|y7&9*QM# } ~PP%&g jx%k&µEN[צ17/k

      J4pq렯}5TFnCukݾ&^+vcblQV Pc\H~kE t"+>yӽʭ- 83_mC9[dt 5Y"LXi|kڡ> K )Hۼ*GX\ӿM`21&9<b2@C{yhY,UQ@E]f|I4qʌދd!̰D g 2Э3܄a|N@gb:c@bk kj.dLtvXQE܅Ɣwu@sKm4I)FNBbxm@9m׼{7B[3cNMn[Y1jIPSjx`d/DĞa(5]&ֆekԏUc2ߊ7 y<`~1An6qf$a;?g@6^2pL}^BBr:IhiUBniS5w9K v|%/{hn"ٕT-䁕a>XN_Fx[GgF;&`􋐪TŎ!5c@P:G&=rw ňȸuisXxˠ 辸{^c, =%*O%n/so;%< 0;11/rB7 2|=0@V9Z 81bD*k9̽^aa:;6 EZ@$fV5O z/ƃy^?j櫧FUG 7tl j=%= \hnU*U_"++4M'(hIJ\eg܁S"Bi؜8vla F֪?R9|}$rXtWr~g'Kğ-~sқĞuÏlh3Q3,$hkio!:(HoǠ$5J >0{t쑐QpR2 7¤ǗZЪN(eQ/6P#ʱ\nxZ{]}&‡ʆZ\ YS!ETH33Hs<͢F+`jZJ:>#=< R=jIl,F|gP#fVWw+FE@1*9 (@٤sޑ.z`2tNue ]͜ l3 sщn.h,B<(ٰ*SuMUWDN&ދtIҫdԳHs3ަ1Š/ "\FOz=iTVB@}/`;\E7/A^6,KރCWa=r["eH.Dmh*Yɻެ : Mwv:2HtOW)'z|RNl#`=+i`d'6$]|~#П EQ{PE]h7n S$Kg9KFfChLpkdeg <{ " r))םYi],D'HlM+$0CS;8"/WluSѩ2Nc016pK)y@mz/ۺr.DIEe:p+Lj=RlTR6 [Fj'GZ]67TBr.܆\ a, 1 `H8zh^x{)l@3653mڹ>Y7PsEi['080@ ~Z Pe4m:::Hr:jmwJhSn\~XTJ0YDPwv30q0]B3:CsN{r%(m;rPJ~m3Dg6\N)D9hNBL˞!VMa^dd#l\ZvX mIp o]]J@[i߃Bžu}Ke<~igܷwHv#V*ú.3A/E~lmxNс6nKg 1Ttb,:JnEA zK9qQHlԤχ_Wr✳)J?=:X33 'rz]` XŜꑶh1izfXEAcǃB-</a[mzYg}q~M_t'ʒ?@.2A&mH`ͪ?/ânfՃFƛE~<GnJW<8T CErΖ; +ى 0?5vz62j$ ՄasڢS4:x)KM/ix6 "gD@ʢoftuM n$-'ߕѱfr#\3NYuaS:S>(0bJ)if9o ?yS5Wry$۟,?+K[q@H_Hd\ĶNƹ` ?LV+!vEyu^t)lrnXsԱ7 %R 7n{Ss{X.*`&OL>TǑBȵ 'pAlOA ҨASAAO; xԕ¬fdUZ'Ao[B* PD㏎ T\ ܠ^ A-[Lto]QvlMp][3fTO%G\Κi9P(.rL/qõQ#עA,2U⿕6R&XMۂ0qMђ5_:{ U+Jj}atX4.=lPí,,-0 b ^KL ܬ9/i߱8m psLOSLeJo7N[o_otk1QoS . FhFln]NHySltY^ ciE!c熚wy z|vCҡU@y)n!,"7QΖPUk0PZTxtChbмG[IK^-4 #TmFYj({Cxlli+ ! !5>Ԃ'L=1o=kPw*Be?YS'[ZBdta}2\p\!q'00&SdDzw`@\YQ1/fKxVy5eMD82l0R?'N zȯfHceGArk[4+R9#7,BhP^L% ɿ ô^ 氜*j̺`xϼ->:xd%m(kbi;Yꆁ{Lov8,~Ϥ{D_/S8iKwFUpC`C9Dge ^xBOD7HZ] chqJW姓Bs Nb]1r+lvvr'wx LC?ٕ“JY*!l6Ǣ7j|onw/r b A,p8 >Sk%-E)qjO#}경վCT.XxBg v%=bpc P{Sl%WʷSemUЗ$3QR_9^>Qgma nPL7r"6)ƔRAu>Gq׉xgR5JD,& V9>#ܝo9FB+@h#A;Zd5JAVݡZI+gla$\ J~0)9PT ZzkiΊ G2 (+*9]fN~ڃ9+Bƈ&Y"C(C2&- Bw.ME9/Oomm7at?7@d_ ~-P@1Ds߆6ykrJ-fjAm.N6IcPv#xE TyĮvj:75=Tkب*MU)[8K /G]GNcfn`C(ʟ -4b,Eu^H&P.hRKE:9@q l$^džt stq¯$ ͥVU`ghV r#oͦG '$za|=""WӲ̢x4RoRbRP(掆\  ΨrwU6vsC<"'^>C}{y!%]և |+S%p1r#FNJ0k[bZS TMc/@z\ʌ5m7> d 'L +_4I=@xR?R$IS@# ^ZΘ|w+}H|CU,xi,2{#%g)K 98&jpŮ!}%?b ˽y]vkI?6rBwR{'Hģ/ZAJӱ}IaRv.D < 1*er?2R彧(~SdȄ&EQĄXZ$ɏfأW -|ZSzTdE"Or`DNY!$o 9 G!ŷ1K̏2v\b7'ڥY -cF˱*ShTI!mD(;F5hi^ܟ_y$/tyJes3H|o\6 WD!)cV)N]%iqrBy$zjHW] оU(Rȅ˦LL0rYWb!)s6k%Xj=@WU~:I:>ϣ䍑d8&2J98 :LY zp\G0 ' `JȸYq:GC`kPcɁ"xʠ؆6р%P oY~'Bm^7udO+R>ۃn8Ny1Iskɑ_ޜS*|*]zo##B \'[^Fܣ/܎pt2%yjT'iRj{RSʧx(OU =_4aD,=wA7$'x{MEk,MfJɗ=3Q't_Y,|{x7-}` u]>-/ Omg֧ nD?{È9wQtNd) >[)! %D=r"';pH A`"] zP{9h"?du\A5zbwQk"$=uP ;*l\zt[a\w]Y'o5`xN~\In\W[uz1R3Y+ AtDm6 bsdN56ώ<ߧc0Cf&H8)5[Y%k[RHi4r$<O+u<-.3_AYyh>hix6in N26@EM>__x5d@rt2MiKrQ'{bY-.U rn.$qd/#r2Bb4LԹJi:;Y{Y<>VSjUU  >t2NpO{^ZqtKr g:*&s kl|VTT$ -Wdrdc}D$ϊiGm Fyu$W(X#'9p銱h8ksiKݷR3 E,ز'f!1&^4"2)&$rQ:" [0 h83_ZQYїsE;[*3F$rTg\(ezrie+dptiϧ6fϓ./G(̗w[a}xmu8F{y8Ĥ.dTWd]:[B9dFŏ$!|̼iI43w:P/ !CFf~lӳ'ʠ_F r.`l5$$†Y"Lg45s h8[oљ4rz@"%&wƱONW#)7lr {ҮR?Mr6! iKyU ja@m(%ףB:]wbĬDm[ 5N#d\$jAOD?KBBT9;c`Mm:wRHfz:n4^c!(T6տBڟtp/P~zL}`^'Qoo9j`-]c &V3 @_B|x ZUxC swp`t1Ɇgs!?3P-Wµ[fe%BkDo6@KDB.~ucGs5ڃ$'-p3nJ3e5%\aa>Ĺ>OE Z_ݥiƪwǃO-:q}Ӯ/E()|b10:AtCfhd];1J}W@8-d2ӆZб穎-QL0ԯaa) dWI"8ξϵ? )TW[bV evR9='$dHđ؈]iRe u)A,?-L!H[Zt@"JQiJ^m]^M֧ڄ&zh"Yc*܉@ZI&򻠹ۭF-$EBH̸^IX ) P8 9~@/}@ϫ'f' h{ ;/[m;!u9|7= {Lh}t+>ϣ)ԆCO[[ cH{I-Cz9s2ƙA\r;'EPR  ~UUl:_C\}Bt .]@A}jPw 'jSf2^kWxy+~`)GimnO5̯Ggpf5g\߮$N e+$YԘf܆:|h&5 擰dCԤqtY$z42W!"ɮyT>,H ?'RV48i&mtRZ ݃q6vF"L-"襞 %$h$AFZkQ'jHf,|,H|peL]:ēr4A֮qSQ}HC\c ' y&ɒkDzs"`F%郇G].#kܚCU_=OS'ލAr) Ab@M@+MDF쪰%[Mh/cjl޶kE}ҽ`ayv3OH*>mȶsAEUyB߰r/ &T( ˊku'[0ѾQL 24Ыy_B.ki/tZid~MחJKLµx.`GQ }i|T})ˑ+jIpkQI=5I{2. 4Uyyshaلklہ\3#rK0 Z(G^1#k'ј26j#Vڣu n CpI@d%S d=@%|vK_,QOX-Eo@$7=Ԁ꠸M(>50G#?@o/a;7+z[fg?[kLBg#Oy79 (\Z  T;r4 yN9aڃ<V|aJ6\)WJ~PVdk=!);!%ð*E0F6a{VHv$}qU6]wYeT*Pi}!u_8}$?f.ƊIcIPMnK1wDz6|FJ;͜"U;ړ!}\vNU%i~(ByRneq/ڠ mr2?0hj1mƣtׁ<3H4G ;EkBXpn+K *cÀ$`G:==m RWH yAX ϔlN5yy@}2yQ"մѢ<:/U$%A$fL/< DWW08=H^rʇ#% Y =Kk=$?m",4 G&2e>TR:JӘ 4HO Ee!_͚|rEfޓ?'pEѴh]5LT6ZOk)RVx,j*h쬩FOa]XtL;*2v>~v4y#hfP& ޶dفps9B@LwHɁ\t*Q ]J?^H.fɇfO uA/n+s"64e| I\{s s:m:nCGǂِ?+Ŧ{P1)E!6qa,AV 7)5>(y$cy(|sr xb[[#;:tr\BlQ7 LY$Y4"l⼯[@w3sE#yQ#/V65 ӍíerS^=[n)p7piUG\|!.Wb^v8 CO(f6ug!`I8t _}Hre4ӟn֪-WN0xz:\滼0))1&-jwdǬ@Pr]Fƥ yTjƚ\L# .KTLtXKO1["fJMP}+Fc5A !aK =ц.3e !|>`5ō\TC&"x};-r*]9^-^:E\ޚ ILUg8&fReFk`k;QsX=`r/_|cTѽ텂Qy˶Y_QP U![~F4/6oζg[.uUŽ޷F>39L+ANM?. Wȇk[Oz!5/r]6{Br˂AAtGGiąqP Uϗ`.̙>Y_5UY~%,XCib#sKXafT`J? _IR&82i\kp] Xn<3c8)G`ؿv  |d&%CFeifP*P6}vd b4u8۝rz,[r- cXlv9?d 7v oj\x+Y0JڥLƳ:iEP C|zU!_lQZ(|IcT+.O&[Jz@tsm>V\b*l%j}9@6 lI3( t@!.vbOP;0%5*th_>d81KI5ex(lpP d `Opɷ#(de4ިrƥΥcڏEq1h 5N_{ҊrICk`ARP0Z>Ru"D Alٌ\P=gʠWȐt;O4#ʟI [Z;hZRw0!a_`2'Fnqeά7/sݔ$DB+b ԇKKgT>Hhm;gE69ngGr>fvz5QS&CHaK1uA"N rcxs)4MB??dIy9'TD4 7inSA/   V%ߨHm>CGN U4dfzGбuJ嵃 [xKG;Dc@.[0"̥1:.V ã3q֍zSᎥ\mMK[R/_Pkg >4t[^_v[ .}\s$VeǔK˄P'H쿋*ʇ}oc'e/X fD~fm/E"DS6')jaC×si>J]~1t^uvhm)D!w9UV*Tg)̼Rffu:fsPG`.Y}WxɅ<:/ xq-.@%u:7#N)ڗr1__ŭxb _p#>Qe~Hyiaŀ5Z\ EQ%oPFgH#| w_%G| XP ),%GU?Ѱ-\DuS} iUagݴÜ? #!Jo pO{Ը.ؐO{]֣uŽwC,,rPud2Q!'b=9yR.cX!m$|KeW:XgHUKub!L$`e 0K#[/ Izt=~aR&@ i-=!+I-Xu~ &MN8r'lo<}Ç`W\5@䙘8xȾ=y[Q͒@y5_]4}:~믭zS,~w|D$~6RbN' 8vؒx( 051 yAsbnFMч(ޱ>h0ՆS֟?RZg|`L&?-Nse:LY}kQ@{;Rkwp9<[>L#V~>Oo1& ҍTi'TXQ^pšBo 50`G&c2{.d2Y3'7L&] MM1N/yau` UyJ6g?L%r祡Y}%Q$1)rrۧ71Ttwto<6s 8BԅPgo95Cba1DmyntNy<%9dc:|;P#[蕸}j\NY[E\47Mg }#&+F,%`JVABN:,nb-F`s-"|OOq/S]HV&T_/0g9I$,=ХWCv8fC; t/ؒ~ne$UXwGbrWx.î6I@Nl:?막[1>j56qPk0ӠKV.& m#BE YRXY RmpjCBN_@)ymA{mZ{pe>PzF2+Y\K:۴myE\?O90TKPSۙPqƂ9{ /.N˱s=Ϙ(;/Ϫ w&^\z[^d9e X(ٰp?6|;pZY.1Ҳ iK>,$TWvQ4/L䏮͢܃㭖x;!]v}te`<"p.?W;J KUN**cGJ|j=4yD>/!m1ycU^*=O71BV0G ҉Fц4$su2LTޙ.JT#\ K2? DI(XcX[:A{.rbH[ʵi\cўQz;mXFxY;*9oЏ1Nk AvqH14|MIaדOk;5*p}9vgB`B. ] ;p[ۤ)Kv< ӁETk 7*9sGhPPI 7JJqҐCX lJ1tUMM'^}xB;u>ENZWf+LWb_~.ul(2& nj`SvU#k)BĻʃ/fG6>^<4m;)־Q[>?á\U;k񑤃C=:uLr3++i۲w8NYG܊KwLƣEj[]>!?Pw=:G1e7J;MQW k&Q众yHT·"O8W0hlX6j0_# wg>[T}VK)4Ṃشi}֙NW(pXZI~`7Mto:gSĝzIުg9[XvqX)r8Ձd}Sa. '+q+Yޠj x1XV\\pmt KDT ܨ{lv:FhK{ľmw4/hޝžʀauB2voP?Ƕ%?@ lr0p۪'P!;9nl{d몋]y@h= q /65ᲦQ.2ikBjusT0ěi#JZjhm!rr06P@q:ҵ=raErƍpVIYO(ƫљ)C"{& H`Y[jzh){!|g7q"gF&~ȲZ/EU4/bym]qq=pDn`NYT{ںnL<+2 lbm]w&6m 0ti^k~+}|axu2a_l e\MO"[,i[lm [ #ָa҇Z-hPނ)Vsb]qC1S4Y6ЛLQ"IZ REMZ@ֶTBgI;g/$hnZX6P:&u "7ʕq+7%K/jˑ2N-ɿwL.d63?g f49 se]xX{4RXf瓾b:*źR*$bbmG@3wo–t.މFIڇ4=@ BpFZll4(V?l4d4xW݌H؀@k% 9fjbAmpsTSPˈ5R=.@]S}l(Xḿ&~.dSIWcF0Kr=vJK24H㮒 S8膁/SF$ <b=%` .n\Ys68`%ir&dZ-fp[9RX*_.KҜzbfh\Hx}1:{$ֲ۟ MUM;ldC?a{0@j0-ߺ,?jUu<5PqA"[4C|}_ '`uj*|]1m#%4"[UASG-{cufOg ˯kw)(*RIrMzcENxO_WT Jvfh^:/rL*'goQB+r]qN88#-&lQ1 mF{E/b0 &.1/cG12:v^Q*Jct)u w0łY]`AU9>牃gaRhc7Bgrfd<(Kz(I0 _ՒM_ |P]sršەU*XmGEc$;wr*C"ER"3<?\jo.yhۿ:s6fSbWU>x.Zܰ@aS-s@چIث)+1$w; S=?-NtSo}~.Uvh@?G }3L}~'"}LJS p}xM\oKƴh?T/PdR;RO+ e ԥ'*2KJͧ^ؓvʁ"$}1q~]^/?Gٜ*ghF35VPXӀY< ˔)P!:;ܪ&;l'O,OTv}SqSn1=-Y{n3dZY[@7a!jV3j <ﺕy\UXIn5,ʶ B/y^v΋*x@q1,ڗHB4C"md‚ZW M߰͒߼FrVK)LOd D Yξ(d-G/Vv5M;a؟Gk)[FV 'N]+ʹ]A@aV}'gU|@LrcUy&(ZjRx.Bjyiixk>GGr\bȵ{y./d&O 'j-zB?cY7 0"oy˛|_Mkyݬyo ?*[kIS DP($)n}MLuDR|f; JbkƊ 6HIR&D#]H\vHʂXr4Y.Q :#14S/|* H3]" = W`_sI'҃{Nhj$1߸$8i򾃧Z#HmFa}FZ?*Gv-E\CaӡK6A.g8ϵ7xf!P+8dfu[ay}0 MI8;t6_#ay@^ })Qj #VX1eğPa#=D6PA|-=_~:-MUJ&8٢c^_J}9Rtiq.߰ݨ:X5asarJ;HwS?utds 8ZEdP/f!cXEˍeO>׆&܈*6[**:v7MmMA8$o()%)-5VuW/WmFIn@ &m XjR u4Z>\R1XT$M c?lZ,-òn.l底Vu10>N_Erj-F\.`؊o[qii đQ<7rIMfls{G"! 섻yP|uZfQTE8,q.@,t]nE2(l9>%0l:Wџ`Ì[.Kn:ac0Iw)oҘŰ,&[v[y{vblf>3n'nRf 7ZW>PyOá9[MmN݅F>,S =f:-WȕV6GCe¦zղB{1[ǮCG[%:2TM7iGG͞&ƹv)Gǫ.?qޓ8h08 eM9ׯ:>:^ R3< Qql.KQ-Ϗ<~W[fmOerhF`z"YBfz| j@ j ]\h,t:/]g@d)Hvk@OkKÌ]Pﯾ3!?KDOՀ AI纔]݃}-\b f*f^u]%&+^K2eSdQc>k摇ySX`6JcWiypr Cou/gZWD%"VD  ٳ\'(7ߔo wZXK,(!)9~au!lZ/we%I+s| {Fȩ0S‰ &8mLdk:cNf׎ n8zai!rwIxD 82WyN*.E94+MI$#50 KX8#HYnT/!uknĮj xx9r`,Coꁜ̽'wVmTo|F1kİfg 'ێnRL2nZVi ۆdHzN{׊x(S-T!_G:Q05/Stȵm$XjL+Iy3uUo55?gÂԩtpkR̟~BMJH)֤]x}P EbQrR2팪ZRWsf XQ Yd09Ȯ~d"$Bym c*IaacA{tAY1J :WRD>wZe¿P._!;|zGu8ӥrxׄ;޾wA?wQ28p#Q~T7{FۗWH s/(asCN悶S~aܷ wSRf 7ZpX=. ^C`JZ82㊅"fp&<E_߿} lPtZƵO P[-}?~}Ke8_[<4?{t a2֔5gIJg;zYtlޕq 5{;vվVu߃\j7`o^ {9N&F PbR/| $xNr z5bv9k)BնI˭Pm$j<%$R0pH+`O= c|x˝| 3S7~Du02N˷Goqt;aV-#xlww_J ]R]݌'ߙ(^I, [] 139G}gDMGs:TD)5qS$Xe`TC2ݤ6 5U/7ϙx\NGnM-KDNR) ݸCŐh{ޑ"3^^~S:D3bü}0g#F /yPT!TֿggamHVA-K?m}L x`oaje͟o ݹ {=)6n]f_F(XݵD{QiC.`rv]8˞ɛ]<6pǵ'\%]K 9dYInyZe (y%X.Um { z+)( &h&Vη8˗wkkv{=o#.ضIUT\G̲246y:7&?U8X)_|$%8d:)rˇqE.,41j$ Kn_&AB:V[Azhk2jQK"\4YT(æO*SkHtlyZS 1fr#nq"p8xB<2u6 u@6yBWC6ʰ 痥"${Y@#X9gC@AU"ks=Fgw2O/2{ ԭ#bHWH".zV| vϐcN_`!nj?85_L5;Gy9Ne'CGA72J`5RL {;:_޵wk2$t'7Ȫۛ&~\jW7;0~kuCekBLs IHi`4&Jp YK9FnI GYw[LGV+B4,x@owTq f IN Q(ʆ"Z&{ȈΤy^5ۂ>5Mb7Qnۯ·ML{ PG~F o<:Øy LoQ,Ov׍h$pR쮖KQXС Pcl .Pѷu oAh7xH9tfR_58dY9oo|3HySa湙2+sogtTsQeԿ L!w`o3E]/llaob}J(BRgߪȃ8sRMaR_ctәV Qƨ[MgowH/+2Sqe- -Z ṟ+˃kK6v`[+b g E:Y .h:/dT(EmG!AxW@*ʒ;᧦2C֭JEzZw_k|jUwO4UE!v*S9Mrd\7uy q*ɋTG#MyJ\Ff3\%k?krB;v'޴.:`>lapdiUMZTxߟ}%V>Sq/҆U" CF )4X&l4}MEYl ,SZ]~~yHV>}M`zFdʽ^m SBGD;.gn %amQ %~x(ذӛS;Ɉ5`)V-lhjYGߊR3GtBm'-O! JucڈH_*FSԾ*{vx03nEہ~ܤi!.KW=K B "Ղ w T'pl~-U.%M<@6C $_hYh5${O]հ5ɫ(}!IXNl8qW.aN:5A(M:i\~#+&PdjI|\#=fI_ThL?KUNt܃M>%gXavJHm'ru"kBO\~ ; F9l!xRCe.#|ot0S.x/A&prat4ꞈ$o[:U]z/pw&W0ᒙ=f+m g#窵b鹎5 g \>5(Zw\FqovH*O _)ik;,U;!]F?v[,g+ET|a!$0wcęl|bWpؔZg/ŀ!CM9s CnLH+).QWNmc6$+N$A6!5] ij ИW(ʵ0ɟ0;p_6!'䔋ghtoHpnw䰸2֚?ՊZOϿo sZ,٨x "t2?}ecآAUO0=Yc I˽[!mVA8z_COLĤP/ au(2#/3:_⡩HfSl]c ~i~nT(z9zŴ/JnEm UV.(*2+F žŋiY;{G#ՈgG ><ܱ Zvq3 "'SR{M ķ q(W¨L8Ǿ'3=Wr#9ވ!#S/,8(0 A-wK˩T?Ͼ'S=* ։4.J!biώQLFW{s7\\b,UY7L\qa@@usP2Q/OAcV:p{is7_]tTe 0^JqG[j$#<.߅4&T<$҅|@T0sq'1蛉X]~t^! RJ<* a1Q"H0CnaaspnLV&GᇰbCx.t- 'šXX;1WeI)g8r1+F]qa<X/&)ҳڤēϨ8OBp2Sy orn#=f&h$]PTdzbf*B[7luuA_ΦZcgURtGB0-v> ~"gYuCÈ5d+ >|=jA@:TD/n ǓO=Yu);Gf>S30ѐx쁊g,WA 2\!^TQ،B?b\Sp;l 8"!M W ]lqѴJ| ׶ g%*O9lq2 %B b6s,%ύ,YZtnVg#)kKyibT$[,;ItXz~u)w*$OY@@0 b&0jFcZڷ '5+@O2d$=H3߯D8jfy7 HR G`/@o8g*̠\Mb0o[t¢6P x>U/hkQ=I6'%Vw17/(oK8i'!LER[7[ UepR{I#5 BN7f$%tO^6!Y,|ZN}`[bd!ua6>( Q\ 3/g{6tl8DR4`4ْˋ}.u[zF QY63 6߉ZqU]lZh4SN`4uꪕG薷ǚyUz}p22&jY)5|s47o's~s ceGSsE׃G\ϸgbq)@DȯJ^mw鐊̾{'d+u>lrWsWq+xL1C4Z֖Z!VkѐSr9 7>=EsOcD r euCҦ2jq6}O7Jĭ_S{+gbDSCЙE(ӊauo?㣇c]p [ z¿nҰ$9xZU":¤ tj3 Wv}HǩGO&$jō@:w̶#QRX"ԋ{*Ֆ u^V<Աy\\QOCLʞo|.ڴ Â!9~/VӳF 8s,)%^|`R5ƛb* -'ml2%g̪/.k,P:hOșlw9NCv8>{1LJz Hz6# [˴Cd| A(`/*$P7f \v'u`+4Ӓ{<_drH3AuХۊbo-1ǭ?a"Xk T%Řq'%~Z'YQ䓮~}Wn9MۯPPR?Zb,z̎P٭(h@FЬyN( u}**̟͢7f):V ӅJAՂs/鐡\!R(_r-vĊgek̘-z[<x])eT92&sb|aJL4cYmRL ;UL l`?`2#I@G;y'U&[#%  #e>qvt3gv Klo\޾qUnC]N3ZFjfuy 1*q'C,*w#Vu ,ǵ֐N1k*khתbciK( 9Ģ3vq_ugTF6+ՀgN꯵9 X4e{:v9>WM. jex]yU yo!9v'9Qg KB,[ o0c>͞mwo%ڹB5Xy6>24GޏUFjcp$§TBSeNU ` 3aB/-CT@SW즘-ݪL6_.ʪz;ŵܟU&yexOojz hϲZ&=FR  tX"zgS3Gx/gj11Ѷr=)k6rs$AO(%o.íC{4k۾wv7׿O~ :)@ Oe/;/H,sog%B ^ >g|WPK>QJVΑUTqVm^^".`wB !l+grRȞ׎RmM̷A?@N.]jJwNm Z-SA] ]+>;΁t`Y!?ROE #LC)z˞ `wFlnD,l}`*(S֮aًh2s߈+HBP0态l3PC[j!=yLvPO,DiN闊^ʶBy=*)^b O=(B{N$\9 :=o 5.ѺCX< f Fã.e՝{u]!]пY(gchc\9(꿂;]؋V%ƀ݀Q(fCbp~bD@ַ+G츑ՑJ>>ECc+:msլha  c 60eۊN+PC$ ?D E~ S%eyTE4ވH5=ҖLz ?`46庤 r]DI $ #<6 9m.hwYqS%̬e*@nߦk~mc'E`L= \ ܍TbҷNJN9^-my 6U9 #x:ag4~I͓ G?(~W8. CD9F5Gw Gx)*us^&:$y}7E4`b"!_R_LQo)N` $;ihG)nd=N'g,+|KHZ ;K151XAjvݮlHq`= lO7KmQy QRdsUb6W=(oB(>]OCVSsp[h*@y,v?5cy?GfEM;@/~]U ة&1[7DHlMZGד:wRkiec*eIGZgH{+f>^]%)#oR~vlgU`4[l~` 94)Ь#ŋU~V'@9ўO.CT8NG_RQ87M7֎f_oFOEtJD~2Ņmgۼdm6f&Fc7 5 WPri,Z5hSݰ<.7!XQ@Vq/r {]D{ OALg ȖYa%kȫv_.^3X穱 pmHҲ~LA&OU蓠Ҧ+.Gs=Q-=0xZtlп:dXǹB)6|M*O 4FA}uu^igzK#"A| 2!pC cN.xOqϾ 7~(=9i!o>|AW/3׬jG9^R4^8+ֳkr/5܁imX%EQҼ-Yd6rBGo) g{r PHXd.]N bui̓+S]ǗﺤŻ@K &a #E ҈@ꕗILQfB%+sIZy8Q!Qgk ,|}9)I5,.*Z>;nfc|l/\\d/6&A"p_I(븡7P@C, T7"lhvڧɌ --tU rD׶*i)'e'G -/o#>ujUUej:bf I`R`SR>{\%Hruʚ?S `KwTN}\HyRTu,-Q7"h1(Ns6 ޱAĤS^lXxW5UsׄlYfDfZ+H[d«YELD#/֩ KzT}2'=ఉ14ʯFWr8VP!'n'%t#yʽD&o BjF5W)&Q'ԞF"aWc *-E)A 2J9D5& _yÌN'*}1| zu|F^N iG59HX0@Bt7<ŬɠMOG5m-ê; r-kxu3|.M Rm+AfgI5{`Z7R?@%|XgjJԫwQHA{;s4 QF,sB>kj 45D4rDI͉SvJT}'~,v21cTs^gRdW.p!E<~bresvnwi=(- zxrc䕻ZЇ!XU=ƠU.l&ydУssOI^+Óq@Ҝ4gR9ROhE8?*K0\{a2 h=ς8ֽsU}B7RO ;WBD gXgpث(\Kn~Sf @ dj1P2H,yk!@LKtD#R Iu |@E|rA&( ŎPTHDQQ~gj [W~ ;wX{᫹jr(Oo-QH=F:3چcDgr!26ۅ\Ri֩%*HEc ' U i,r/kd;7 K&J詫$5gHC'ήhUZ^Xoh$ʽv|T\ȡ] Zq)@aP!=UTIwR<}7X_"jǑC<7X^ |."0:򉡐t3;\*%VֽjGy}yMrDjweona0< ~vxo HL38ZL$[W1_$l1'?'3_47WAG=e #PCB!Ҏ #[_Nm !m~ij'őB7YR2:7e8r("O9_eSf>ȡ++?!;~^q?0A9;XQ/M"ߗ/lNo>-j2*`z!L.>D͓è$ygfN*k?.+%.Vἐ}!צ%ܻ{,emԛgi 6PvIe5pu:LV x95=qwq|y⤳Wǯ/鬢s9(%<.oy򇿫~.ci_nԙe'HC'[DaAvBR-8E6}zΰ >ލ* $4Bs[R;f>[33]-3>KZNN1|S)1\szz"`3XFFRMGhDW1 V. 0Wڣ:̽ue&1Tj3,7WU.j["z!ecq1ap'EO?XEvc9#iSMedOPȝ {5hkWGWo%Yk|lq7U=!lTY\ xxr!(*,A` (iW՜- Z*WA{7ڒ)wʤة'yPy 4Pќw(Մ,`4V@wb>*n5PG .j@܍3}nQb 6 y2H)3(4d;v|Y<"*v2'Zyw*l3?ֲ'9zw -C1w+R1]-01Ici9X'f)`w|[2Jx=E g#긎jOw.qi LETZ~blOTy6kV {C4tQ#?0GV|s95{;Uc/%xAaM$<RuYZQAplԎX0ZOnN(E%Vx~L6 Ϝo@e!/dוXl#ң05]]ZJƮ频$vozZYb% 37Qc&n8C9AMtenzÚTI(Rn@hDiY/d/0 ݭ DTѓ|< ʾRh㚾23K$*Wa1v f.nv!W5@Y-Js7I`Q}%F(2 J#hYb4F5]?vߏo-9PN!uяgSBXV<(6p -:~e3Nc+1;=nڑ_o{~=6z?1{$ؽ~} gF;_O\;a$ʱWeYЯ .j3 B#Go4c\^&*q;6okԤ2L8T|72 !Dxw`Fdz/B;52Gς;|T[#$P}S K2Kc-K*+]}կ/pY7Y~cJOT& 0Ls܌ e✑?SgQ) 󹜾|.G<{;(JqdaL/5`z5F|dr6H"C:Is% OkSP6ͼyZ!sZqV*zkr?4}ZK5 brc|n`7+c,/ZT6:.I[D^8lr:9 phmWLci @ 1EMx>FvbM,}a A* 4EȌ3> ~dX)IJGGx~t|`nQs3ȴ>e!7U 8!n:>OyꨜOYhu5OGJ 'Q qi6X8 |~mVmuQ@}%"~1AJF@3v`BGjOc\ܷ,WR#fL=y'-.orJtQT!]GU8WBݨ3>^07rZL* 4ZeN@h%irĭ+J%RLZ0.mŝՇ y呸$-$vŠUa ]m.1u-#<*\+gpPV$l(/c !x7Y<-lSRRb=V;⡧ePϤp}U"g; 1[0gsٮ`o,[]!Z*)Ljh&hFhacVcZXJ@3#فa`O;w#ԚVƥ>wl{CP Gus0.<~ZCp(ghC܋`y@v1^q@@;'3b\p6t̯JZuu7C\\YM4=/c O;:;A/ʎ %RҞ(uo?`eCw*Zf +#٘(.H}( %ԥX=C?/1sꋁP 't +U7NSxwH>vRxNu` z" hɌ^kgnt>;z9k;%z-9L7 P!Q [Xl3RJ;'sAJq:ZMؗF*ac"⤋ Xڎq9 zBW2gryW@#Q@wh5hqui؃[k2̪ sRIHؾ֞OLZo }M"`{/rIV< V?Zw$ߐ̘h#REܩӏ?.Itw<.)c0o} Of1 4..g-* ɪiG D@Vr[ /9D}|f~w tI_=E;/ /U2qۇQCx"ebz$y%rX,3ZuN3\%;-Vp_wсۉ>KꦓB\ʍ*C:^`=W{0) ^ݚUx?>3Z+wNF,΄2'CkC& RC+{+D6U.Rp)z;;wT PqM6!'$hmRuS$H<ԁG/ie4vz!]^4f9:,eʜ6 ZJ|dm iaX,cf9ձa~؁a} #'Т)xojMC&< ژ]c|݄R); ]^|k)wU?j 񾠢ۜ1_槮og [dq Jk!n62hBB̋(K9Zv)ԺW~QA2;B:A 4urlkoZ ^2(1 c/uYz"9.MpCCSrEY@^  4J՜tea$l5s&S˿_Guiywmw B&?aE¥ K] Bevx.SQR^8,V潠 /5R1ڕdL[0 |3Mx}j-­y)Cb"@Z@ex >})nf:*բ! PgZj5v12Rn 5p_hH=iWO0Ϋ$_fDKmMxwa9/JR^r˛L:+ 0(A>±71 $sԊgH˛ <)wW3 5{(na;Jkutgz#wS讖qQ8v8ߩ췝":@`(%q"W,"8t*Ⱦ|­E9ݸ>Дf<F>ӱOʸOqW=qDd 2pMU x  ]oZ^ ޚ+6a2S'#G^/6ik n}} ژD*Kh)?q\?Ѐ?yAix8  ߳Y 캨nX8Zi3bKoM;gΈu}^+CJ8!!>rs¿v3n-Fs^_Ì6UҴ%d8ez.I ;^ps|W8v}S7#9*H Pb⨣+{2<hV1HG$8Y,p=_Z=/ vuAܤӚ [pa&~2ļR&vRҴ$>09NMȟD-I\-`/sذtDveu,fAP : /q OUG-_Om?\aJNRɈh>}WjJ2SʰPwf$&. ZnLF61qb>f]Q6LnO[ 38!Y=\*`/rY;4-GcKkOHyaLjɚrċ`v),̬?ET1w?vzl\{Q6&dمt2;j< cI* pyrik$Z^ ga?:[6䮈vY,J m';O?Вd|[ZSs>wM0;J62K%QrŎJ_m AZΣYkeXO`$lR5ΐUTnLGÅmUH/gfE0[hog6/MV~)s(JC߄QMIHΕ˔$U"*-E|`I=.i^U1k MhWז-Qm#iBazKRTF-Ƿ5zN3ŵA<:nq|BtCҶGѳ턝l*饪4ែ:~"PR٥#ގ$cS.Y_r9U槮!S/#^ϝz .Ve2ZA&bn,cU9rz-#mm ݵ g ~R2̕$\M&G^+˓Y1">|R{_׼iVq^/v~, +P9)TNQn!g*J{/fgͩ{s8Ծh5?L4CA`b0͜@Lf°汆j5uz _aQ-G4 ` =DD̆gr *9gXwW!3 c~t +A4mZb:+.qNIG)Rۓ uiC_B6Ej|HHm˯5CPR+z`íDh^p UC$ίu]7R' p4$LvړceMw+lglT! c4m D:+t{'6,NR0ϤvhX` Uԍ[Ԉ3)Ⱥ(@hI5룲U CBdʹݮr/A1SZJ;=̊E0C4^YhԚfW̵nB[+1[+yFxZCQ^_yE9 ^Vq*jeňwXedM] #>@ЯLaB2ħ@g.jʹBV#NN'(DwIͪATiŋg>獫h1b &?i$,~q@֙1vrkɦ1bJݓ| |nk˳; r#PphNJ428] ǔC}lT&i&sj{O98dH4䲄#YRW6X*o1FatA/*5}*9UYqinи3~>uY}8"XY+V8%udsHdqC~ЬI?UpGh\ڟ'VX˅,@ujB" 9նc~ʉXΑb;\ !rb ʼn[gWtFȮj/JQ$ӝ7ɫ!m[g- 3qZqGVܩ9#e$zߒQgP`D@Z6G,%9Mpra[EÝl-VףZjS<\LNLI $>}yA 0!Dh`K?GWL*R(k^}UfTSj\K` 9 u@<xYY(#\Я<4dn:<<~Lc fFC/r7-,!AI9f\#[ZLteAg] ؂\(h8 -'4X$;\YcMninIn" CyI(bQb5R`%4U%I #t l@̝8PԱXnBki11;><۪) _=!(;^oK7tƟ@,ƄUb:u+z_\1I|1ف\{,:Lsn23 ?**3??1kL}ng$3t783*;;[- 2tF7Yw #NdXqsdI sHlb a^xHɦ)Tq+^g3MrJ2uP .vk GU74[bmP],D>bZ Um*JB[i5ݾD6ssk=˹li1$f]e \#RC va-n5{-(㶷hoɸ?GQ6W|iڃR>(+?VRn> F9ys5fh]8DE2o!޴.ՎmocXLཹ5[{HVut4!fO:̏xztH̤_T@2'7XF? a ?58 a#wwi}]߻,n5eqHlJJԄfiN5 2|I 歂*W~9kiRN,nv̫RFn8RB^y/xՂƫٌ%FH9!8Ώ_-Pjt vmi5%$=B;N%ysCΩjiBw)c4G5_5uS.Eyw*7fӔp)pmSu;K |ԛ7V>~//"ʹO!<9L&9FA Nry'@BW7o*.m= Cf<>aU&hoi\ {\ێg]ӜqY-tݸ 134G(EmԚC~_[ѤeTl =܄i:.'s>GBKP&$1ewC46ZTO̱ȰJoy(͹[f}x\ޤ\CZt0Mze;[hsq~N %/Yengmp/bR(%( .<"%ٵO OܩnN2nnW;Qw6|.@e 6V8x~^_ ˆ TCΰ9ȣDfi:4)('pN xW) EOEkNΙp=0ԑIjV=1&h< =Y]WQ a9# 竗fQH1(50B0(KR*y7nx~Fbxش]#Mؔg\g?ݝ7})#}nH)o_7=Zᝑ(!!oyt8k)(1 gcq8Z PFnѢ5O]evɟM܍0ErWTKTo`aoMC)|)_I9QR1 \3ڛWT3 (\E;۟v!~7tF ܕY XCC x^HMqMwC9Zxq6ovs37S0e19sbN@Ʌ^lav/D3. ƄEJU]mS$ _)W=DaA!KC]|AfWѬ D'B| Pn`Zod6Xh?Cf/"`>z:!ھde_ ۪r-r7i 6-~E_3ߑNÂ`'1+鸳6H'pFnZ#0͖pʼn9ic6/DZDwn-*(χϮ?XxP"J0 H@Y|= u0A9Um_s=»CeL ϒyX5i{F!Ӓ*D EB̆XZ?ʟ$zB$Rȸ>eȊ.P=8ͲbY順DPj)M?_CRV$UxxAČ>ciG*5"p葄 bQ Iz $kNԅ!A203g \ܹ w* m=i1cl1ܪ&D`:p3aKZef$@:B.X(X$^"[O;Fo,lY{aFѡ<Y8§՘{hX3jp\xunLcI_EǮy)V >45x-];uNB6z_̥ZW5SI SELdd5kRpng?M(vZe b-Y+=82| o?&`yG]np\x(#("p/D>vM`; WgA/J@ O m 7\fJt-&@%H@{Agׇ)-R*Ƥҭ1%[L'ˎ#]}ULpM]"3 I/)1[GCRX<2;6J|BArJW~Lo F͵VDa͇1Ar$]ةrMC(ƕb뀑TD\` Iq~2;& >[YA0Rۦys;Ю ф=_-oTvO%FU}MWN9i5U56FNQ& Yr ca?MV+X4;m#|L\k@HKIL$8n T,8jm[tQ5r~tat RԻݸ h!ز6KeC?Z˽wJ雲:#ՍdMgB*g! \ 5mqHI~$-~4$o4i ϔOG6Rڝ(C `Ď^oaYGa $lg4s)x\_Y\jLcK }Hg~?8lYndj6&u;TY2KK[/Pc!w;+:4@ӯ:]]ew% Gnkjh&: Յ:[,lﺪ 7TEXOX\%)f{%N `=>*$ ,*ӧn9KqDq=شtNa8JBFjDr@^Y[srUjFȒe{8tjFzU0ia"t1ZoRkXA*þ(R~]Yec"kC To\"l'@:K `GF4)Hͬv&#BE )ሧyKvu+/ yc q(ƔQ-ϋ7d}`-D9%;&[0ho~ʇS6,(Tc(vCtDzR}/a3rvS5{uoQ ?g8ǘ.@ u]+ؓ|a쵳 |&Uҁh: H]l;n1w' `v< q~AS{:o"'nĤ>\Z8CϛDRחH2evp֛ݠľ*gV&Rať#c{hw.L48*^S2jp'm[,N5>pPi[wxr!#$"<@VlQ,/7A8TN<=X#5g;1s{ߟ}UDjB$^OFnKķkWs_T@ksDê+jN Nz@\CmuP*lz@pooFG o Q ?ӑڊ]ZMRR=-9pgsD@(,/mE].$U^0N}=.Ka̫+]ΐ#G nC%Bᘺ^:N:-+%HkN15d"*&W88E9\c-B) g%*;;+zY;=nq ؜'sUmˣ ^Ҙ i }g ϕ g5Xy_yߩaA5fWj]Q{:YfGFX.'B11%|' X; A{G o :MLZa*2cU\S;7󃅯~w<ތI! |5{7/oak“s*ⴽg"H}M}Ds C ]vuJk`zM-*-=c7KΉ~ig:Y%S ]h)cYG svRvbgu%Nm/{Y 0Uҵ~4>*iP3=qTl| <LBwV[B-m:uhn=, EɸLM<$$ Z;Fm|AdӾ Ua5){S q bB4Ù[o3(@_-Tӯ ^ܧx.^S'СS7&W&,KZl#:%7tqGwL҉9Wܷ;jt D.FO$gelagYJf5+_B.fUE+ZؖcR߯UZhF\eLjś&BvNIOIt T ;0ȼ=+H hm v'cGO^Ǎ"Q25,_ EHDi pK],͈QgŌ~ K.?i9irgWpa[0(pdEFevx2wzNWI)ӌ1\mFտן4?ti\V)Ϟ94W?5F[/$iVHkȹ>cf>0j`j)Yl67ݙukՁ]͔GrƄ%[d$$xRbr7^﹗\2"½?Rqtۘ C[֛Bf[OMfpAZ }<O3Mc#K}9^H-cp*׃2hP]%3sy)m-a9} CSGaAUOCOL$YȪgo/R'Up%,ymVjIFIxϋ;џYx^gڎ5y1!-@׵!U݈RzR27 #E DfRD5FꉓƁ 7KIz}s"تEdS'Kc̜A9"0<@u҅7Uey.22m/_EE%ɻZ:8'N;(oħ5dZ,ГZf(53[knJKl'@Pqr.eVHp|tft'Z Yƚ|}K Y61U ѝLoAxJ w1J|]" &ݱ?| M#&eɗ@] :, ??dq L> QȀt>m3 cl8xj#*Ppoe`LPT.筳}uB3>/%~@[D搂7EP5|PI[K-sűTeW}/ial\Gq)3+`@gie5Gjа$[-5/=Q$pc0A@'&Х|a 8lgo!߳DvzӒنW:  ]A 9?9ثhN+$ur ֧L0&\1GfUbz11W<ؒvkCUGWX8&jޜlDs^IXpkK% #4g/ȅ^ᑧvW~F™~iHeUzo4&:mK6c$Dr;5N_(Y%Wߙ!k8&KGO$ДV^}&]JtNLS\3QmShߓo2Y$  #IȪEtAZ'*ND-lxy5$B2̝>2&X3Fgب2V0A*n|Q'Y7{ԩ܈Q),)NXoRiHv&ooѥV<4CYRf s9tWXQuS&)fJVּ$),B@tN'H *^&TyFX1譶MSaq.6ysBJ4mJP^L_<2NskVv֐z9-.32I8̧~M>(N^>;VF ᨬ{KԿJ~:zN^tv,^I  ')r^ś+˒ԣDxĊ̪tzU 8_f@K)j3| 0nrΙL>1JŸbau]Lյy UM)fTfO)N<XA 0(gTTB;' v|AƱd 8'ú?@ 5g8.Vp)Kxu)U; * B9=HG*AEUC2IuxD} ?'s˦g1Q$Eóøͥ:,U6aJ&.lXvj}9+Ci.hwUT^MTlm0TݺCȹ⩨ JEhKӚkS5;0BX:s qK Gmu4NI(zXS^Ӧ/VVFp!J#."P{߄#,j0j{/nqj/C]^lwwa7܇vS4 86Tto|#dQ0 sHncXJ.G I}jv`qz"asOJД ovfDp?Cٲ-H Xi=0r=_*\7<ZW?ȞMǩ0釓!pelbi`?՝` SֈK@plTU}$AY:k@2a&|B!ӿQ?c#o>GY8`d!6Kb ~3VΛ?f>>=2 h< xa⬖~ٸ m)L;s+/'jkoJU/9hǓR)fD3*LXEBY.x6D̏{'dW^!>Scg:rJߍQn0: {?썛mm_!*%4aL.x׾ށ7\ {D1؛Ӧ>|`M) ,,hUӴB'ƶrz变HY&R _g7 l _H`"% ghQay%\P3`FCA%]Y@@KɀuĀ>㵿儬 ߨE>~vpk8şX$@${xWZ>2PĨ}gl!lPDbvj/f(+]Ac]U{6 [`Mdְ?J8Cn`1e  F⃞j [kq4.fnַN3Kc)p4""8(ABVU[H)4)Hf/lk4Lu҂H9L_)`ķg:anDG?h0iu pEtRx~ZzG铷cKԂ2bH!iU>66znF.i{E-W*e\N 1yy7^{CV]3M %v])Y&7CǸVlҗ(ONL ?]G&b_YAeIr~P*qgM3<$] \wbl͜<խ9*7Fe PF _bFxWWKfKmx6L * Op\8~>TsCNTg }-yc>!8%Hxxc Y]SqBUvR)_;O's̨X< >)6M<0YW Z>+e˿IxLӆخ35iNmjVA xĈ7OVf75}zcͯ0Ьzgf_K!ԅ&I hG, %FC\*=M9֦ C\4 פhR :ptUF"ܘ@ߨU1Ӫ)VH b u9)2Zw : jG]^QpSRtnv&<0[iwMgPFryC aHl'SaR49Tͺ3P$&؄\PeN#z8r)mEILobQU͆J37ӌ{tN{$,Bk:GAj o'\㎻0mW~UohOUn=c:&xLgg?QtG?jq:r5G*S"MOw. ;[fotM*w!u8P:!>syz /' eQ\Y1n7wW~/8_UB_0''mjY$hGg4/-eGeWtP#eٵcSƿ["eZӰU_ viv.5ۊ,;~T1ƕ~^d(f5:k%L /gk{NZS!?^GnK'bʤ38#Ƃ+G`D$6 ^s ,ҡŹڌRjN#iaP;]/wӏLyS] O4*nRkC|pw)+x+Yqɫsmzn ecR?Ofͯ.J7k/Va~zj \d@ G09ZW6.(tvd'G%"|Fx50,I.m!6m!yb}WM'8y7GfyEQ)S>t2^~5Q,&yHs&ś1M:DzxuY!BcQփ!`>FZo'W ( 'Ϧ>6L%1{>aDDbE9:K=Ǟ1tZx xCkr0`dA# PGaڧ҄iTI[ xQX>h1O Q օjA4 єKxK1*[1Vw@j|9]!@<)1SI3?yY _UfeԔE_WU`Fxo Q> j >9JO8RT*-l]wxsp-^bC$jq㌦u6w"y%^>YNLY*\MהZ$mTizL}̩wte0Ʊ# '&^}( SrSa 8<"8ݯQo6*׈/؊2m\&K1ʯfSu5TGõ ڢ(>icE=S> <$vTZFքcJЅ1 ڐ2S}~Z1 p`tS>* WVeY@ r#S ȩAaaEBJFc-^f.z?q0nPPZB2"q3IUx<}49fk*jקq빰7yg<>*pEFbwMzdnbPsfk(%C%Q΃Z&r\]ѱ\ >["RϞyڲI3\1$!W?+O;3+O;|x "HHZrot;侺j5)h|A1kQOq3@R4Id WaiTjeΒ\w}%R+U kGg2c_! 3S颀/0/%( SLɼibeI!_qJ ƚALϚL{VnŇ_`Ί|X$K&L:Л`g$o*#}6J(1!6eAن ea_O4S>KmCX6$f_C6Z ^^m] ҭFQXl-{:'UI ^թ-ȘOAÓ)=|q"]V] tSlrb2 ?#*Pyىb(ڀ_<8,Rav ʓ3V5 y7d˧Qr^TnnaH1c$8G?ؕouO)Ɖ6 ;ΞRt ^JOg'ڜ퓡W.AJ8(w`楤+ eD+bg3و) -NαELp8G07R+>m=!R?%!0!ߔ]V _Zɝ;^xfiȻ_v. Cwj]\Yo੾֙>2J0}~9+ njUf9dN -]$PRƣ休ހȽYL3qVHH=ąBI; X5?լ v:H DϽ_544{عݔ34Ȃgi%;vBLg^,¡&DFƨ/ڤ$z q2ھFT " ˳gCr5jmR8C\;58_P'2.iM.6Q.wsB.n85T聬\"pqn &=l ^X%͑k9XƢ ^QڑI_JV P Yl 3 )uڋ7Py%A5CЕZ i1KEW/薴b`m4?Bwc u(id{jCZcaHoNp%({9O 'şZ'WV[ycL;j&rJci 98Kf#ZIN>0׬;#Yg\V)>7(AV!̀J~Nk6"L jœC~:24]]W,Q~\jmo Pi:\3\X|Y9W*/$'Go^_+~XZy=uj-gb^$Sq16ne2;b^]1z_< uH Bg>v ~пR`E =4qO$Aѻi 큤7I'1Gj<1ίȯ"RԔ:ICMYX\!ߵBkN|'deV:W9V]|K B=%޸jQ/z+3Qiøjܸ/]q$Q- ZSHwg(åS\*iLj,RZih)IgtJeiJ7I0ӣD8⟍ZE^qȦyK ߕ {R[ u|@1$\sP-V5E#.ώ-Xz o̻˥ $oܻyn,HJ#@?Yl$$.&3t@TZCg>ie+a=μ۵bh:8k%Awy0VȻc[Bc&F{41*-6/`Ŝ%Mܕ~tU8bauQ@6t(d%qoHʝ~ps&c ~SZ(x6͗ آDaKe{e~>3i:|܏JpOz;٘ǒ穜H3^ ;quxDO|ɯc|'bTleA=?_w~g2 0O|ؚVkWYߥ_^s5jynTZi-vVGLixDj`úp}\g6&t˸*AߺB("¯LXhL~~Z>7m'.Jεs-6 /`&&/}"bnZx[!;ԋt3&à:(t :PT ]־{>MQF˵_rOS qtT LroJGrC zL0!{> BK}g=[x :%~Gf &ʡ3k A8RB@قe -0ȡ;v i90}0Zo [JbTtܺDءAD =-.~'WFKE@`E[K}vaoȂmUi\cؗ'I`OK BukENN(.!ڏȉ#&YsBꏐdt|ْϼĝ,;,#/Iq}ڙz_,£+U C L%Q>;Gohyʚ z=q=2=63;3oػZ4weŠ< ҫB߳X~ zOc% \+,ty^:b U uf'nq6l?0z;56^'V\1SAA`ZC`N@\AqDڥ 9)oCV#t5PKa%Ŷl+3&~ O_+gG ^8=Z|4)GzjVQct9/}ZUBP3(TudrNm]1? w@B*;6yqMn|:Kaa=qDe8&F `a ! y e/:*P2VꜮY4rcYസ[Z%he[JcP7.IDHm0Y>h^挙x %3nZw A0epį"z^b ]Q{ąQ{8 %#I$/;ME|B j~ 66[F qpuPʑgCYF:60qL9xя(M LS#ݭy$k|a7Nty &NM[N _lVn1H7EZQU0lEpP2zS3{ȜMOMO{q>ݖ2W)=K;lBQ-i`2w2w$%_!y t#k]p[J [Qk)SpR|a@5/@CSIbP{:Cʒ:e2I2 ʔb/ovvKzpHQYDCȌ̀9@8-ar w\^oh6~L(5s=*x&P ep̡4$)SC! | 3Fɐ=KcLО0w1QAU?ԔD!i/#vWxD;a}mG>\PxdyޤFS6AWWж#We\l U7V7Wiڭ8\E 4]t2?bJQX!~ڄE]7wW&TȂj_`&:3a& ғfEUSj87Xuy/PlwAſsqgMW+˞#@QX vElANpA(rt5P?!!Kk h٨@rgQ&@"Fb{-PRw4`^ CW0OM~3<`0gdUZĂl@@҈ou`l%n =5݃2N⺐q<$((e??p7k]|[[QhS*};7o+jI8璢>dR3n1x6_qִ{; )꒾0<ӫ5mLcL7>I9, deX }&*i}l6A{wM΅IhRruo՞",wlѺ3<Cb^5$I\;5"2g ["4:ҕfLB!3 i y*CBc{?U ,#^-LXσl&LSwn:7ӹ[n5+:EJU6:R8a.Ϋ^߂[l-NU#Jx^d--R!&gâܔؑԙZ=lB1܀""48*|I 9U!-y;]+W$ea7 Pf$c4:eyR#x0PϦ'/zf@uKvS/| iz>jNʆl2ߣmj>*<[S)3 Fm+ o6Rz@ H=9 = s~dH p09(ӕh]:VnU+_ڰu0\O#?0Lf % M= %嵘$98{ߌK]{Rh+gf[r 0Y5><ŭ|A)Hk9IQB=N I၀( .)$$j4z2G 8UZ07PNy>sa(g4ܒG`JnZEPL>Ydkj2 Zzd7;XԟтP=.SNhs/gjL%y%FV7%+=~(nN"ǽ^Ln =c9 }K#k֟Ok{7 ;28)Z{xA@=k7 vBUtrFȓW%ȹƠNh>;2T8",p% KF3_bM鑞bB0V-帕ޥyV!v\ۊ[͉_Zhp[E5JZKB^(k6JdT]WeYJ/ #|FHDfܵZ4gR>%+Rێ$u3GQ乑q@˱9ܓ`(#.W;/ &( Zl7ب *ǐ'8դzY'p-i(hՀr^W %~z!hVwu*4sDaƔw ڕI"c. G!;E.r1`&5y)nhdfG B7{M|Mc2-˔U)>R,.aU<'Q2ݦ#~vjGO1~NYA%&ֲe͂gO"j+[DY"J1uyRcכ{2&'3=?5ûݖ g^Y&?nrTuv"[=t{u=3DUɌ(?o䜚HWɱA55!s+Yp "nX[Zmꈓ%Qvtr߇uܙj TsΫrlxKv걡:t:X&SJNTCBzw<|]bF^Z}"W#Pm^c؀X"ƪG=H3>w׌o({ߧ78{W.hP+7,U;[g/YWO|ͅ^#B ,^.o^jiLtk\ar%nN 'mǘrь0Pī5tULЪ]ӜC\6FW8o҂:*CZ;6\DXm=H^?x7oH:p$^T7*똋'.0s!bMNK>yⷅ:pe`<=XgH}ԅAo#&Kj6yʹ =尦10gK զ%Tvd xQBc􈿪rpZ=! ~Zـr$ DD2_=8UoR栖$:Y2M\&S>*j*"."c/2,]4_%e#$Z?gj5D <} SQ ׂ\7P`/|7CfMG,M煟5^ҢG&,dQ,]0ie񅌘fKE\($$U.m4% P)w~>~tC$0O{1ifVn%աjSþSA8)StV×nH32oGmq,̽2ݢPf;q.A-%hX[mAMBw.'d4".:M! z}]^k/ j*P, 8| K_p?c'sEOS;GY]9PTH2+4V}Ǚj-jU:ux.sj,B_#qp;@"_f[hUW6jn]/f%C\ ms=1`,eXt[v卯mI[z@XY"j !7wV:#{o$-Fy]1ڱyP̛9Ž i"Z 5k:3]1j>AF.v&{JM2#N`r|rsZXpw92t}nh'd_1V)F5Ϳ?ձSD5e_m[98Y/1 ?3Ѣ |n;d+ɽ͓⎵e p `%u] ZEدF:̧kP(}wVMg=p"m턤$ѳg38k1ȔqLr:@ją"Xe EifnE xf}h`X2Ct6 uS&Pcf7ۘ0|̣^,d716SSnz ܝ&cN5<9ٟY\}LjnSIB`|5]܍3OiSL͎AH \rJbms6bY@;(銶Lɛeg]aUGvfvov9ɚoU|Ps-؅@ [Kxn`I3u!Odr iz褜D3Gd`OQw'))9GY=+ܦ1 H@IA _@z%t>8"D(ػ&['Mwia+Lu:exWc%>G` a=:g~Ǡ@94^@C#fcZҳI&,%է5Ra~;_0&S}l zه"МڝsQmd)}~ e/uYP>,~.Q_ pMKݫCUaAp-rcrg 9EIW$_KGDƖz/9韫LpMh9g'ZuЏ%.b^bÀJwCV>PGLᄏ \XzϵWU֩)9@B}U-v+ ҈W BAHF )ɹ3tiPRc gA P8t 'b>L|'Lvϓ0= h>&v]oO"bgQ$4eksZJ6.z ֒68SR@9Qb3k$5,x3Fbw!JrZOT逧5G52zTMz LT/}/J Z+BMGiVs_;i>N咮}a؃ ^#1L)uJ} F4z({4p^ְB[ON;u.ze^dǸd}* IiX!ݓV[víi-ۮGu&F,Iq,1Xkixt(۵Qj~rdF, - 8XK8ss5ܶOS!짌/ gtGo)~MROH`Z ~Hmi[BDM%^G!σ{A49Jz :z]}'-^k5+4;UE>XXA) <IK'7;s t\f]jD׆Jzm5=2T7si=έ# 摛OC <fqόnCխkD{I1j,CkȲEE1_Ҵ'6M^X> &Pyq`9Z;/5NkA*@YD<2ѓpTK;f)A@!/5`1qkKP)g#FOĜ5' *{cd& J65N)A؉Mܨԇkh)M v%rQwapAyL_=T%u9|+=1`]BCBݔѕIwRe"ode1xne}'Us` 4YmpT6оS#j0CȄ4LfJex{djKEpa䩡\^t$x؊f`ų?Q + H '$[2ثlO晴P1$Ց46*suN8'&Z!0r{&.6Bru&x}I@ucXhEGopw+aa_6N$)muwY4shƛIze̍]H+!~#/X82s)D3%k;GEc|'I~ABXqǞqAEg}>_jK\a ~E@$>Hԋ ZK-Ѝh* ׮ۜ#[@N1\' oC fiwN ćյ@Zٜ 9W-lpj٧tH㵩I2U=oz6$uGэ u&S4){? hfg*®{5î.Uu#K4hN\ =TG-OΠf0֯za!4'h2 !lU֔/^i$384x]3YښǛi,ϛ|w9]Z)S\+cCU$H`D,['"Yi?XO҂c`kBeyu Ŭ|;l4|p< 6-o1կL 3~?A *iZ,W/EcMHt_hPX+j@FBOƧmC<@ /XyGo7G3jKG[>qV2Y#Cwx@ԛkw~cТ l2FSK1WM(V׷Bf8~%!H=*J>m[:+C|2 u',oS1<[|* ,2NJ~ٳ\(`&>CZ[nٯuҦ˴~^ȯZ ]+HxmLc]/ū񵈱}%raLiܖpB$)mD3@. ۜ]޺+Sh:0ky6hbC3[鄗kW$!W ZGhL^86${7F\6Jئ 5auN]LJozзf._*0:W$f?v"/ Q #ݐ"'n]G&CRu#!+sDՋ.WGyR|Ϸ@^j!vL;@艿vAKV@Iby51^X3VK$B:=}˷_@0OKJj7|\:4'ǽj2p;spB(׶C$`<`FZL>g)mZQ|o;-W8XOO+*Olmr@dqcԢWlߎ/ ~&}w+5 zpbi65+ZtX>eLf㎈޽bkr, "}arJ:R}{LIzLԘ!u8AذŮ8}yf{_& .C2]g2zc+| 5DYq* H䠵16&T[Pg3qBkuN;7Q#=-CqH#>txWBTker?|BJz/ #gW*~ vA%U`yYo,&z G>eլ(bN+k*7QOm{0CK8'MQ!>VSp_QW_?O_t@dBmg~)M90,X}Ro%m 5XY{y"BapAqױaU M:VU;~>7Oa^U>M;PMDs@UP|с*>QC8.K.2ǿc="f}yQ2ʭ#vq|Z?P!n 8?zlS{WbV+7Ox~uWZ}dg̍G FU;=tqm.]:- `B=JZL`gXݖ`iF/Trm8DiZ!ҿ=[q--CGhBm(^zB L7<{S-Cjwm>r )5Dx-ZP!b#>h<Ț 5|י}hJ)'aOfim a`2 cM/Ґ`}wxYHF^72~^vՔPp6({ΛyfLJhqmmY@^T.T@G@S@0z^i͜R4DN,M262luDPd-qR` -nKPc*n8pzvM`n9LiT۩3*ykxc}}#Y%/Ԋ+CNat;?tx}SX"\\X*]ݕZc}T}ߨ4U}#<+ '$KZU8n8: $_΋ oۆs^+a*$%CZS+/2O'\; >#%/6s:<7 ƮTu}><22nTn)8㨔]J՗wYn]DqL4^1Ҍ%e_h41wyʊ)b UM 3cMl~0޻bpDEGaT.^̧MOhv|cb?}$+l\eFƣc큱 İ{H,Pײ',E|R6#xִs 曪3$~Z߃ɚ֪hlBl̹vȄ-zwJ5Ak i g3Ή2 [ ahlBd4 'z=E}/3gf;-At3"ZYۘzqM$")ʁ4!ŜOԸ1B&6"9M+ $aĊ_!~ {8uniw2-1!'cZP|ݟH uv)[L! qw$I9dg)ԅh% +(FA|I?I4W=Oa [E)rE~|%v̭ʤSuLvV98WPD!&dwEZ΁ JΩ%f Njo+zY{d_p*+J!ǚ|VS*gI gFo*6_ 5woPCV}Xͧ"çxi|B*vMJy\~r @ l4z)}̨PiSJiMC(<>/%Y;o*]`v_& *wn!n}@2G_QP߱92AOt#VU{DCXR,[t|][ϨRO>%<p'.1R%.3>\j#Q$u[:⸬REYpqm( j Oqt+9cJUr-FH 'Œ&oAMbn{Qw[xWE\UuZ ,#k5cD49uahʆكְ<++ENc5v^`)Q:>;=%Sw`]3#J%6~)7#]ڵ`Մk-EQ @`(Io>w-F}?Qo'}:Q:Tǃ_=#J&3+Tc b::c}Aɚ~3(1q'4e񶝬(0+g/8dm/隸iZ\W.^HhWGl#&Zv&yV?eANO.9Ff5cǗ?9* PSբTٟǿP{ ѹ[Lg!;rGHTO%9QEiM͂mj>/з4n]\33iwH(:sV+lk:'Gl&.3 FVqȒ,#4.0;P$)ziBΒ2$\ȴyy{wްp'gL ?TwEÕihSc{Е{+H @m.Lla&ec8p=⢁df"Od >kf;@) vOu*n:Qދɟ Rz:/sW&̕7Ll;0ɺc>Uan"=%#p7e SI03ԁB]2_ؑP6c=ᢝ gEL@L1VF?5ևb 2iwN܄i&ZA1=ԉzxzh)a«JE`8bnmJ[A\s>[~Q3RN=~cwx: +Wehs*zH=|{y_kvaZPT2"-IVM:wB=>[Ta{Oz̕0e>K\4+r *W3pG+E!7xmȩ,$]U:X6@cqC+Ji^&0fy)E6[[#vaQoxDz qhqkdE <%E/AVsoW݁Z[ F,jOIQf:l  iL\)qIabԡP!}>g9ؘVRC2j89)dER/+.00ĺ)!5PuZWdw}ޕ#pl>+OXߛǑ? ړ<ŏ z^6 Jl-rs#|CeD~/^q]Fv.쓕ZR>%73Wtj_/QLU"`p%uI5J txy08RE_ڟ(F PP댧9XDǢtt "۵n>eBK"Œ2o[9{KwÄj xZh IwDszQ f(2[)*cO_C^qœ[n,d&vZqUF0Ѻ??J(AbOvS i'dϋ6;oO֋p WAEu ] +  jo5HR+f2ۘ@3(f0/`MpEK/熭?T9Z',4XĀerX3rӫʤhx~v1p\$W # GB~,cjJE:iftF .=F[U'HY}&Bʗo+O).vtxو{tY'%LEFDP,<OB_7rYs͵0qј2v]O:GN A:n1e.AXdAWl y8ɳ9D0).IQtj=5:“Zs=ѩʈ~洷waNKr' }7ߛCS-Ƿ;H+XuE _Oǜ̓\ #qQ0S5o&;;Œ~4TWP=ډcT !(onM!ѫOGEPߠ-M(7Ç?^yD6vb>^T0ʹck;ڥfmo*J`:)Fi8tz<uMt:>L"P6Pp\"֝QG:}q]RtxnJBbH=Zo \EǞA<cMͺ(^ZewuU~l,&tR&^A6HtadPa#SUW.?:(1XJI ;VC-,1.p}5SMF;8Vf:ǍO k3īV3F&H,MjJ3_^6^O/F񺇲fDC CgmnrQVJˋ6$N8LH>CC2TL6Ѯ=ӑv@1*+!4NT^z^^Y`4qZY\u=.*2nVLcR@SEV3̫,\?p"3Mk$Ypk˓o4Z}ou=k:6Ck{zL  N0Zd)È?z\/dISQ# Ό_-j(TʟsNkfu{#A"@"q@D ɇugmًW=-<^q -L8 ˴.)(*[J"lŽh) pא8qEu\ •r:%rm} rҴt6r䒚4{CCAһ23"} 4wS,;B`A`9&(MJ=K 7 ARcafGT$T"ΊX?N͡A-W8rY*&|~ـ HBj;3xGIiqҷ_B=7{y@Djv'6)1(񤘞F?@,F^{h̎  ތBb+ PٲY? 6 .se#l=AWzϽ(S6l,UL8/# Ybm=Ђex`Vu}i"@ kbN fmlHA$bS6TJ&"3Q@/}C<2FwHܔ-_XH4a&?zgz@ !&g>n3[~S\HMYYwj:Gg)ӭ!U8Û`b.߀FerŬh>ѽz1yOܭgW #o'm*Nj ^\ⴤiu0(3҃~?4 EtU{puJU6 WUPFn3B"_.jʺ;$ުq(&mOcjy]n6]#{ j)PQ~LLJPSSaGF%YqhsTNt9cmVed!6V"N ]m"Q Be~+Q]EMZM%=*ƚf3%b6yݱƛ%v%]q{6?9Ϋ7*Ԉkh]Uz&1@ɲ RaɈ آ4 *ǓҐʚ~2I%OnWe.T :(,`QPEiQZcf IU: L+  G[ 4p'# OobGw$W+qg奓6 g{fHijˊ7K|ï[ȽDzG2̆NA&7BD[_L'XΞiH_u} &hwOs ^8jl.iUf&"=jqiqFoɂ 3=|(K/4r31+ua@%+ 1\1ۡ|ʹu?(IC<\sqfPUɾ\Po"(Z) "["#7SqmꇸΩIpߤ"ҭ sIѺX6ׅ@SZpڑ\494[Y#R:5!*=3[_ߛT7!N_˗^x&oBOiY5 fXhyK? )u}F&Do{6yՌ_K^|$PM_VM$>g·!FF}QBI=ǾȬќm7<@b"`1|6.Ic1~;WnpT\yYսtљpj5BU)~~Ջ4R"QSp"OOpL z>p~ԯ*) "DǁdC:|Ԕ:47t2&qJV>lظxR7~&B=#mI4|濌Y@U/;w✽DF_iF̨B)nP$y֢׬E/i@-QihMPxSfG/N~'zRR=ky1bKC8@6mjuW W&JDX8 LEZ(N)`e3")>>j? 3ewǛ4Tf^0x*&tYol*Yc̏h̉_!vKYO5g0⶯XNm57PeoC˚йNZS6ˆQ3V#^g3Lc㍗ɳ/u1_If 5azu.A.)awc쯈E4epߦdMOf*Gr렂|uL}VpV ڋώutқy*٠H&)7wuIb v6 @@H|8ֶ̢{(V[*"w4Hi?fنRCVZ#_b "RrzFFC!㙠7;CYj^Kqr}a]nftHbȠU#N_8L)'& j- {"ؔD r |g CI)ta6^%SC1ʟU04\rU& $4u*$a؍1ݯφP/ԙ}#\.:=?. ҌwQJ_ E.iB,5 [Q[qn2CPKqxhGwՄ=@RQ7nAb͝BFYKAzx{` 2NЖeimusRv^Ky.i.<"})[@"m]bĘIS#['3?%\wP~ԥʦ2PXfNc* ssEaE%!`rżlFtſx犜+n#bn$hS?iS((؟ɏAr~8R#k4i,X}qbOݤ.[;.x xZ%\B3_CLK|xQTc։d"G@4tH{^f {[diIjc.}M 3&ٗ p|!#ͪ'bR L3@eF_}<smu]YGл 8Dݽ^] wէQ H ia#GǟSDgWfw5c]:/z&j"ڋfO? ] YAmd, ;>^mpl'Qn}$^AJ; 컰ؙ: "rh{+rm[Y5$ K z5d%yf}%dd (QyU8&g(XAdg|KQ4QkE2f.ye%aWZn>"vi{P]A.9$47 (i;C f jE $j`<'4*Zs7hџdIM؝! GIJr0{@4̵p>˂2()H_^ VSPQ@ד!aЉ'\Qybiz|[gP7,}i\<*B I)?ܢ.ܐOrUhiMdkkquiS ZJ8G.~u 0=&x5곸˶T0Hhb İ' jR?8:~Uew2 7jKe, P%fFF pVg7znw3BJ3lnCbW^x4@" HЧwt H|'^?ApX'Ԥ _G5zvj}]BZdBw{$0 Ӗp" ~";Iq= z0D6{b?L%dPW&$<]mɂ[c2J;R<+tl2]}/L 6p6 2{} @0o,s7ɶ=U0u}y'ĉWnf0Q?=䎭ixFO_e5YlkFe`ڂ; ʚLcwLsz*eU^Jrz+[AD4Sjн~ ~9#׽Rl@/y=*ϰ8hpퟴyG 51bOZcR=Ga.U8nh nU}J9Q|'#{5ka8jr+wR,Ma ݯ! ֡qHaeM62z4 fڳ^$-=,mo&h؆YG62x?c@ǧƝpșuvٰxGcߦ;F8vjfq '/}tMj%ԽC}IeWn'Xx(Ԡ4(Du [QJCbƖU6$Y~juzV,}AtNp,XjÚ6/֕ܟdNt֠ ibwm*]@rhle>?v+:)#[/ˆ΅oQA.*3fob0; V}>NE[OD')R"5/4!?M e4{Sjaȩ]%6\߈D0f+v~MіOYN*x2Xw"] ?̱mX}PwoS(Uw,2kvfto,w7Lhk띓>㠁Ǻv tjip2hγ9D|OTCnK _W?^覆O~Kk2 Fjܢ%{se;8),=9_E|DV QZwP |GZm50fL1}pZĠ{BKGР}oīa)9 ˢbRk>~O&fL'bJDr^v'֤d=U?J՗O;üDCzz9R'X2Z8to{ܤ`8P#.m'ywHM:?mU"OINe`QqMwk64uj@u$)2cs&<ܘ| 3Se@WBRk[D># eF>k `lI_,Y,} >0YQR7l,U܋>⋋G^Nd.)$ǓcLqvxŷ`Ξ+گ "N%\s%aWkXL[M~sCC\N+|-O.R6"{4'X1QML5Lj6,U6vĕ3M佯ٌ|JANM[)vy0pύWQXl:JHw-=n]mp߆ Wf@!@D)BR$=Ƿ̵ 2y}xY&D.QFsgh" 4aa[pL2J>]vAjdW94GB$P4EK޸ECrӵ:3dUQʚP1f&x+r^Eyb85hb^_.$F5%-xĎΕyQ΅ͩʳFDVŇgW[#eZZ$ {'ORSxbcI^'XZ5<ܪ&廝X*rC(s@Z`a͑j-W_ÈL4b)ov=V]*y̱g1K+ɱ}!7o;;8 dXdbz{+r]j`|Ž+l(}ucg towdl8cњa06Vf|tsYUF͘7Aa)N>"£g{- |@ jPd%A28azC0hgVr<73h׆-V!Ȁ΅f~)мnK4y|9+\R)\+5|0b$q)gsTIب y1?_fԮ9/-u+2dN<c aY)g qC~$<7>5%ص7x_nB8ov$L/u}i$S[K(se5WyOuN)~zC# {9%093`aTyWȐGB`!'ed}>H]$o~gԷ47rf`v%?'=Jhnе52D(e㦡ݺ ~|9lQ0>ʹ >VyJw`YAoIuLZ2FtCh+W+N5À{ǹ"S/J]n#;d'Lq7j$ v;Q#F#aCPE9: =՘)1?і6BJVq ,h 6~_ qpG7eW$eβm15$c+YFZ>飘pDu2>Oy 0Lr58=4WDTO*-n3zlDѣOܚ؛nKp =c'o]\(DmnysTBGBI'# pSLh^gA/0@aLg*E6!4sK_?.8 LJZ~)|('mdEj~tR>#R#mGQTFǞ߯ʇP^ctpsӣfDas3(P4ae#Ĺ`P6D9.-;"^X# R 0` s 7 [HJMu`є(TEpoCăoXYU۹r= q xrܠT\'5&k@\ARD~pӖ|: k[!8!v~c`d&/Bxhvf|M}i aL2n?'[ oMyqۥrx#'/AǵON=H?cJџw^fySU4>iSL(۹+s]' "_*e)?Y}\UQ(m30uKO^ګIc|m6wwR6Ӝ{\L֬ULʯA8V:4>E*;:$xKBIJB?VP}= E22ӕ%L{@G$LK(޾Um+*P%nH:$oƉxؐu2h"̧]䝽]w|S7lbv-ur)2LQRQ^X,>#/urSA8BhSqeEDiLHq4zVPdߟm 3v_Lې/(vrLeVS5_v0o%kwae-s@:l,^F~5ѻJ1[w ՗D! XcphPőCVWB~sv,|v⵱: %#TΛwN]3 ]Yޠrh8񎶞2oPXSf"epCWUUT9"_X>!` 8o>j *^'[i$4]+jraIq;LgTˋ{ E[` {JT=tԷǂ!@;(dWmu3j?MYz@*$ er`ө2Õ5uX &xiPEpGlǵKqݸCW`Վv=fW{Umr gxpȺpI5GSt,D.IŽob~jP~7JFVwK|`Ů׃(D3XXmf0H<3!׍+J XWAbf@X uسqC$x/'||(yG#t'J(c'md_ȋ^R%Z҅.s?}#zҔ@wf+ђqu S!CYmFc=e>h;OlX>vs| ?eB޴2i;O42ָkAt<i=!W aYVX W nbt,~c'yxiʗ Rs5+] =CBwc;e ! d ey?km7DbXhzBț\a[1# מMZ%yVWeϘHYJjx֜vfOmM4gw|v1V T< FC+YeCwe727C`LÄ!6=)p^ pP],>rIaro{i]un }1!4Nw ZlwArk7ral`%zbVisoor݆h`7T#s9RdXO(B3ɷwP;:< rt`(GryEg9Sޓ/Z*6,z}|\pF̨'i nW@W!2O VM&d:?>DF )iK̺ab΃D J;4O;:}^buzcSӻT gST'L'@,0UaQ̈Vϻրrap>+Z*7,dI^~ fDfrHv>LQu  ԃ7^ku܊3_iPxle%m͏v*ळ-,;35aCF>wC|mpt+59PBH`T6h8`ka6Dx (zҩ, ˦~2)v"ym3jtxTF w}^ <}LXJ>b"cuqV P;'PQG:y#uLZ~{i#I_-ڼ/E YOak[#wԢULrob5Vc%WC(CX|*EI+"I6fƫn1}!xuV%[FPQ' Āi%4!k= 1 44|hpyoXv׍{PBPr)r8 `R5S w}| 7P2v|Ό!-5 f-mh5Zhs4uXvܟ[K{o]ۖûho.>JTm7(ߺ$CC7k*-l$ G%vЋ׀f<1|c ^ r3sg=&F]a+i5"D H]SW<=ؓ8^k#dZRQ`F/#id<@5F~MJPM3y{ /ՃZ[ $U4 Yr^|مS( PnM&++EW}np<#5wuY:];Kͪ& u$7F;~[zNB9}1;WrB$yD5VwN̙-ȥ{1jpX)0F|ŴU:2و}{q%NByeG*g96R{R+hΎGNN7* P `KTR{u@3&gl3s;*x<+Uw1VBdF Cg.^.rC9<#+crwmM.OjF91I34r Neݨppwob 6I|ץ\c[Yc~Rc/RݟӀ6I-E-GϋcA7}a-w`}zDb5,Jpd_Tu !.z@RN!d,Ȳt6k 32~V[nHÎ0@-Ɇݡ͉t^DwiGr-Ohl3\Vߒaq2N[EjRH5{us+ C0"TQEL p<zhs) pIFp*]!DON<_qkLG*`0C"'h$*_g/2❹ 4]2>҆0r}*of<= vQ!R"'d;R AêR/=koa$&(jh$ȩ]jpS l)}yUyݏ&d)zvC+ J. zЧ;fMČI%ptƸNPѢEc6|ΰA\J@[$$(QJ3s?6ii lW>mlZHc>nOug/yFBdZ}?` ekj&pG\Z[:^c{ t.Gj "]x8VrVrҍI"=~ {zr5F"ر!*aQi|Bjot1i~[-㲮jim ᕪNRj@5~x ݧiG_{]PĒr[:$'ldƅ ɴ4Ke=/K3֒{-_`N3bO+̺KcFӢCd]oZA˻ց49=`6Ų⚭ 4pV$a~Mo.CRHC5>8nTu: bwEe`Z S])(=Ԑ jA9Vlύo>=M$A2h8ݴUf6?gٽxS%Fh9GQz;b=Mv7U>ӏ΁o 2I^}7;.Ax:9YfSb]::q 2i]? #'pTG.eHG`܉ͱO*="YcCrwLPߟ0hwN0frY 6q/cc(TT1P6, SyZznZd3ԝ{_/i#cY[Fu<岁@; uybX bf|j [ ;iua,ZٓO;&Ô۬iflt}=qT!"[}u΅lG,;M|UW.Tɹ֑,f5(rŜ^tp"6 S0T+; [~$ʃ$y+Z1M>c`kMjs&;/..t{"=˘O~"#)E(T/:umyO\|k [Λ$6%]XT5XFgT[\ɊD+FC)5]ecKAN¾V=|&Mٙ0|#| ҿU"4. ^y6Zĕgĉ"WA#a[Qv~T?֠jFޢO8a&j9(_ -F5AܺMSIc5~e/",J9r|I׮؊*~HVm"yIAL[hcD > \ Qr?iV Bfo $5uRH;x\v(4.#cnj4^2=ە bs߳@\tKqzjjp:5RT`i*o٢XML2gdes& كzhܻc1󮐕)fa;B錪𖧑hhm/ 7*8%7vGZg zB@hkƑ{vmӯI \.;Ff Gܷ<ʛ #ԬOy2A՟nh}NK*%Z `'ӄ MJ¿BT?sw曉R+3GX̼őBG(T>0`ؑn E* )q? io3L_ǜ6O 43<9ԡ_TpHd9nSO6SёZ.<=;s>Yrl^ ]oj@fŮAxl%/2 .Gya9?~)]Q" .\q`l4+K(Yޙ2 ]\[,C505XhDoӈX ֔e[jצ`d̅RZ %CzPB)?sJ.u';$HK=eAD<7hD߶ɫIL*|SMLђP|Ԡ*v*?/LLSG]Z~v_8jA9h#uƼ@"=315L+4w {''ycƨ@,PĐt#6ݣU[(qy9 *cjl4:e:-Q5֫IބeVIUڝg(XsCHI&,;BQ;w-_E omLݟ⪱zB`kޮVd2縼 UЗcd@p~q]-+n7G"yҊ8XȲFoz(>f][o')вn =._[R>nda)N*N~i'qň˩EђCYvA2yvvOy'#W4ERx? S?#i,y2P ]`VƜ^i3Y߽zHH(Lڭ5k_ΎӬOdw2@N܌.UM/">P{M,iq&A +86rxby9^vQA;O$X V?#E蘿y7Kܮ=&s$n YʾEm:T H9$|N܄2!J3pEr~"=Uj;V aq¡!E3,7S_ ̻EfLRvT M )$?K8] " f7cMm@*^ +؇9$9"1uɿ*jCIzN zBgR!^ [F<Í~v-!􁴄9sRb`ZڵF#TAzo[E*Xgm9dbE:Z )!LyӈFFB$-nl12]5Ą5N1!g >TE bfR][!BTquy=]00Kd+ gKh;fn\% 9&uxbTf18LZ.J-g`4~ϕ]}4بY wG{dz +ʩ  ,H|ɳ^ ELCKNh*#`}ZNLRBLJ ~Le3j@ ddD36^l]O<}%{"A m5e$K4.Sp"a>ۀP" *h5}^3~= (VYmz]A 0QwW񡍑S V[_7U0H$W* 5/ꔔOѶkdi(7U"cB`!~"`RkxS{_ #@"6)u5L?1pխqVUj3lC/=e$V-,>J߿#)A5ѾbOfCц/8- SA<VϺ?AFk3]>wcq/oV1$CuDeE_1chU˦TA\RKўgOZBZa{g9K/6kjfzF  #9w֢Z\+QI%"{{BKy>9׵^1{_Ы^.ZGh++wQuGԩy ~v j} ϗ^FQ ƬyYi>CpJy٠tHv\y%bgVv~>*2oXTǽA(?@_Ez_"E0ẘ )$ "'7p!yB>S--B3x./XxtT8Ru(:I7 )M(0:)5(E3y35nPb=䱆dҬ՝_KxH% %#ު̀g&Bv.)4joxrl.1Iwmڇ6 -p"b|Q-SyY2"J2,>J#"n8?&@ddK%`ժ%<wAceYPv{S‘"zT}-N;upaֻML&cz JZ1 ÷IoY\7Dwn;\tÜҌ4hs?[,G %Z3%gիҳyIeL?!gnUJhmeCx%=׉m׶Ui5K[եV):L$ }pY8U{h3[=z L%8Ow!chU|ՏkhF4Syk7$vi'o7eQSu'CtQ(1sxc-"OOھG! lBΜ-/v䍠4io&PSwT5R0ܲOMaWFlU9Uu@GHBc ݛ*b%,Ѵ[Fi-P^uȂt!'Qxh!W2%`.sSm9 J}\jU+}2}gDk#ƃھpeT7:΀w] N?:e!Bλܑh?p>pRn(MY n*;M8SKw(De]Ou`,AӮj}3[V:~A8ݱ}EѝB hB y`lJb_T%=q֯Lq<({m{]l`*r.<瀢 m{_J#֣pwC1zF<++簹*bd2 ,I4-ˇ?!GR2[ JƴfOCSFbzptA05m;q穩m ɟ-e+/s#u P`[@Mlu8V6Ye) ӎmﭵeĪcJR'n~8~e7e]H[6}Z ݓIʗdN:xzQDbK=@ǀÊAa׃P(Q͗@ԑ#Yk" G9w^ivY|SI,mC(Fzw%%wx̠5j #Nբji*aWu+YM(L7Z)G)dH2xCnq@Mmg'I[ 1 09툡31DERp*X*Qq(e&_`z~za68</ؿ>1"+&"t E==(k*Bq&8d=Z*/F4p=b2bf\=;Ƞ2Y`΢K $[ZLʌXZQqZ?9N. r3Q[;G>G/VyS6P窏b> g',cRؿlnJ?ZUjaP@ `Bl=7~6edtTaj!;c%, .>TS8 +'k%y/ "`9lm,]:oAG7)+RQ~W";Bl*OϚ0&xQݙT]K˿.t0dE |~Mx{ riWqEg>l+O9 /`ɩ MUR_U Uw<+b4%s8P rWf>` ^nW+4`"Rk״R/M0Ašyh9Ŝ*㺐-ϥ/74Mr5dؕy@ثr*vDSVP:+]5۞.^,#UJrfdp< b:eI_ZJa6_X7P%z 2-p=h2 ӆz3%Rk"4w04B@xu5iZhX8$25đsS n{fh&"635 5ke<R޵ vS  "WBK6QQo,ۦ'~u$Qdo(ٵ}֞ъOկ)qJMnZTBoT86qd^KyJ>0qk;ZY3j{ hȧ]meb|0>zrbs^.O0MT%^V)Ӷ &D6k6k&ab5n Ffe]E~]lq{f.~L=OLŻO@zZR-U)D7- >GqPn39'Ow!}tAzOAj$XX3n|p.(@FW@4]:I~nR X,agQs nch[gQ-bDTq+Id]D r+Նw Msrmf}`d]Bfg/G|ٌS1+t˴vb<{Nj39zgY&#*$+be->7K J&k`*eAqDŘVX z6j:ehB_B?B %< 3Y1>m i"/y }|ޏ`]} ttH`+QGp9RJ׮ՈM*3ǀ"Ԉ<4O4#}wMQsw\D#ko5F'{UYGkJ# ;F "ZH0]kcaS(~ gX. 5&-йz*}R*V49"-V`3wVzbJu'ʏ4/5jwSy}9֜@CIqx2 F{摀H Ĝ(HpLN v,|)NJwۉagpKׁsjƀ;w_У+Tr:LN%ГB&K\XLfd uwR<`߹L"hw)֤g F!^ &CW}$6&pip3qm.@@QoK(7vȼt0~F_@c[8WUQ6d#x )ČzrqP߭S4V ʟDlUq[vޯ1B`!a/;{ꗸD95˂>! :l†~IL]"_J5uhE`V™P#w9' e/l@@? ~ItW Zt%a#EB8{?^"6{1n3T8h&\U1iT8)F8ZĶ8Oҫcߛm @Ls^cF(`}? 6ȏ.d_.Tx>9TG3ˣ7-k1T?<6$~s΅U#Ggqft*ɸf!܅9.p:rr>)moNڋY"Mez/uIkYbEՊTﻪ8BE`uo_K7Af#-ýnKo]7Ò#;|QF kLWqscQʤWtqM]abg. x!S*ei  CJ[T\WT|3iRbo?7Tz̢ )Fc9ߍZ=ys,!的YB3;-M(aݠ覢HK4=' 35f-a܍mJ'HíP}*Z+U Ǖf/{f> BE$|>bI//3+%_f85Oiz^;ot۶Ik?w/ Y 5I/ִ~‰|נF(E*GH^vϦiƼr1v]H`^d^-kA7 z}&n'bd<9 yNI.Ga,9Tiιm!;dh)ľ~B@zTIxV 0_}mnttnߵ) P>.GjnԱ9 XS1g|g+7cc?~ U>}_6Op^uxZ,ZDXW ^QKA:QWRZy[)/(Dq#`-,`J%G"1fg,T"D+^Ú>;pK!/f :Ll9/=J7X)P/h&x/|kڧnp=~Ci8qX}& 2hVR6!DLΙ }1LVῳ<ӿ{mTUFf|R[rvK,)nD}#fWiW7кZ˱l5cCꌸ7cy$w,'Z\+k9FD9ՙ=ldR!Bym*Q_q0.ڳyxj6}|x@'"]wm[d` ' LK2BwvDy>REvtH^!,BTѱk 61sHUbLҗc+ wO%N Ө4$i"i 5 |=k _IX#OFdi'N Hv8=E \E.Qru3=qe$Zu2)&6I|h _ ?dѤ r7 qzݕ>s&^(L =ta s; E|0Ea Ϫ&%V?>: \yˋԕeswŻ+6vUD"xHq?!W8 |YǂXY9)ZD"VTq+T3!_禣m7mCu.@%c%5Pիq R< RX $F6DR|=YP/Ն=yG4oICCưаVQNQ1@67ʊ*T؂h-etbm 6dFL А43uj1ֶ+Q ͸vĽ@E>E\&`6VTnȄ?85R,'UU3Øt=/!BMҦ[r2r&/vS^WEף9k%h*2ۘsy 6z:gVE6ơaKP2:dOzpkkNGU6"mQ8$d+ F }8*"CZEEIo6z {^ھ$)caKv) ecSeݎۇjyK܄=4 ~X/_@ˁ4P=S̡;L"K)CI5 w);mXɌ|M*cgEsaVr^SJ8A-K{]F0hL {r~p@(HM\Qnv;j N,vO<Җ ǻ9 [x+/E*Ņ!p.Ca0o?jZ;]-+  1n|)d/L^# Ucr ynq#}`Iaᙢğq5|~]@fڣ8 jGfU5c(bCfܫ|*#1('QR^zǜQG,8 kEoYO= jٗ K'^Mܽ7DxxbE27f!y4%..koa8WП&?lwƋ^R"| -#cZ@u$$ںe}kAA/JQv!D+Ey7B:X^ 1Za0XYs raȶ6Jz>}̰._{Vx|[?⧘v8RǐS6iֿ'{_cOZ]heSDMo9"n~NXq;/ Ov`6c8@ٖP.U,+bhj6pQ84v}&Xjܟ,Ed$5Bl-0{ P8e>Jĕ״u#Q?Ԟo \Ds{8yGTTJz yT2!QFiXR܀Ysp]ñ~ ]wGg >&*9( \UgffRS|?Exoy0p[&$6.B Nf3e,mho Ҿr tJ3yxl7Tf jn,oBra)_ .Hb&rpb 9}lB'7ZwmOM43=xޤG{lCߧ,Xt=AHy\QB=6-E;fo,SOtk9 x ߽Zn`'^P2 ePn.m'p>/+**JG*9Ml]b-4/~{1I *J:NQs;kCPd O!T[Yl0s )t |^>@wDc%N?dMK ׷S֋rs z1`9m! >H,Yb\~:K[nI+S0+"0P()}"S+cv2 m1= }F|0P 1(B60IHe۠sˋ, g~Un3wM`R9>i5ʊe:-Sm7RHuC#Q BMP?u4ؔk/($ݘ?`'OZrHDT-O bN؀S!Wh1rw@2˅3{vBH\xcTE'+t:վx fvF-fFٞ謔Oⴙf[Q`t ^> :"J)Nd&N}Ԥ% Jm^' %/Ԇ6 KД`=sh,`UM( J:.լL>#}0wWxRjW*&_u,w lBYK jѷMbXUЊaefݑ5!y`8]C%S[ugĘ U| JƇ9E0 ^aۇ@7Ŕ3(:l_j.iTC9V5q33ֽ4lh\/v uq+C,g}ņEWn O)q0'Fmh3YF! BvRLM=?[k֪\nK; hwCnnd=lfϞǓ'ʛCIpݘ 92 fH? -1GSɢ1Q)T,YO}l{$aƁ^ w7 v?U47yswfEi>9rmIN1Ws8$3DNR٫ 5Z!IE8?Z({нآ+- 7^)kd Z8_[ʼq< bĺf9? tw9aG/ґ;xQ`5Ug&ꇖtf m2@.1he6sN}"dxPdѬpSRwQ=' W&!{F"z0Kqřɾ01}ZdfvW|E!Lt4;YB Fwvu@s6Q:U'`_rUp::{E,@gH%VW*CKBY ޗIAwonGa!,>10!%zb.+Z}\]wWk,\b ܔ ?/O`a[hTn\(@!Ei.8Š5sTwG&!3O/7vUpUxR=?!l`8:B)2+ߪ\̸.b)%âd葎9ǻCM}Č4C'SGˢ%VS Wj^o1rlǞlWGXl%i#O?ZJKrHy,?%6;m*A}D^|Q{w:w{]hyu <3eQ|<ךUOq.H'6e ާREH*qTs |-PWDu^^S`ݼNcRm]ru9x}^ZĠy+ fA )ax8RocYxIuMHvfFـ;5(2`DG5:'wwқCٯ0GԆ/X$$ saɿ=D!@D&H12tq&^^y2x0u*"Rqr_w%>+Ry7짉FnjjB:9nblUdלǻ8T|C"7h12>J$˻:DNJrO@kKND~M }+0]M|y A9!`,%|",s*@כ måiҝ)K!^/ޒ$ D|ϮpPi7)bQ}҄ۛhBNsŠΑn~xs!(%NDɡi*R!c CeQ9,r[z9aUQڦb1no5 (%xں.j@Ox6h77@UH~^ĞB@l:o\ה]e} */#d;BPj2 r(WFCh~q;lo\ q=olmwB~7՞[_WVQZۑṌ_sAO߬e@2d:E\j;38buT C< 1VHaTC}_X;sf.Vf٣ uCE7|7GSšK AH1c+gI3}wDonkD&X$`#q7yny!E4 J$%`Z%|5Pvp8ړ[?W_:( XICJu߄ _B y`Fm h֤}sϗTKmɏt {SZ]mI@VO5EU8WV5;>c0jP PX]ja8Ewte!,C)HɱAckn}`2`DƉfIbs@n5 sȁ$4 H"Ux< )v GF2dt0no͜%],PN@zp}-d]I.MY}뱄p4ya8FR/csɺE(kJzfn翶z V`ӝJܑF}SQATJLBpJ⟫c79*k20/Qٸ%ó ~0\(ɕ;[\~]Elˆ+k O^&smM2p()L|NQ@>,3goqRCs96 [vY>PHδTWɎ[9Da`oEEbayŇu*`upsv*!,Cz׏NeQjc%>e9/Q 1Iy]= ʾv|6ߛ` H>Ԟ$ <2 Q PwnEmpsP̻,!aʞc5$5ȇu/tl#ߡb M)&uU, -=n9ܤflḀ%ٿkx- ia^09egJl,胗[e3X#q/YfCYAՆڟCy<4qK-/sCBNXFP% qK&mv+: ?lzf!;o؄}:8wp.y7g`#>V̲,"S[Ĵ1⚡ꦸo\. Zhթ€c7Y<>RE`PAV+nݣ RDfdHLR )TŽ:?1.]?NE:)錿H}5nT(۾ˍh==;?UD^]Y։HK ~AYy#4@1"TuKa(#'Ũlb2ݴTLM*tۄ-G;P kȨ! gX**R(i,L);ѸCYDDmFg8c+$^{`h@Mwn5\L,ST%iD.|%|`$MյEzSxjݾ_+DgI+M< FNQ_R~j`9ˉ3<=s lFQŬs9 B(VoaCEtkП#ҊHN"UB#7cxN\r'~n6̦ly--?%\}Ttˡ8c]IAx-VR>T/=tAcJd=7^Dv,/F`E BgleNk*j^&*jWI&{ u]4HU[mU3ߖA[=2nnqX=>&ItD\8ĝd]Qϛ%Ȣ }~MGLnE 'A^HF4/H4ڰyy?ԓ^ TTgL&=߹H:?|8,u0D'7r}3 &W$?/t7;B&І*򋓶 ˜֌Fj:K=Mi Cۑ|v\K4Q!u?_]ߺ 1,hbIT _^4>FdSPk`?)x̞_MJ{M?ZE͖-׷պmT!PaSo|߅|"^{::Yk)dbWW<yA4U2Pz8-,)/J<.Dj8-qߞkEl ܬ\>Yi;SGli]  n/mEF|sūTGXéW B >O'cET O L!#z'3]4J~uDc(` ag[FIU8ꄰrʡ, ^?e ZmŕZfVaU;JbJm>2Wܼ cpG7$qn;PDCn潗{N^W9nMDٍ8{hUIcn;(bwT5;k:,v$q 驷WLtSa^"p]ewwLAzZ?ۿZItz}vf[,[QYq n,3yoZ6ѬVJNi&ehL #Moٟ kUU9kn\72UrɁիZc LJf^8ōRZZ qՄm˖B L W @|K`5}O˩3%V#3{~gzNse3د7.^~%DaPp35Qq["KSe'#NV')g(ࢮrT9֒v4Rr>Sͤΰ?9<Ε?@}[a^!^F.r+Uc|Q޼~~yDd4~Oq6R'q٬Xb&s¨3f 3-'gC(iA:qG?a hwsl”:+3/+{ߺlgeoiWeJ:֩ܧy/h4$fVŕ[ծIldtyosdz) 5hv(GTm ߄S,[_, /w4"6b@i=k~MHe:Bƪ2AIN„pH'UnO?oS29Dp;42فЈ,qL6G C>MmWT[+DVaHvwƮz>L$+ a|?7bkuX~to5 %^[L+6[=>0&ﵪZF\5܌0N# -KnM:rB?dÌD>\yYj!ck]ʎCߕʌ$- ZׯmC0:Uui?xw\?ǨD5k?H헙&ŞMI;b0f_6^s9,e!7<U wc\|]ۮe4f0cܴpAX[Hu3{;snT0{*jpΧ_ʇe;CNo;9Q$?V1 ;$e`^Ԙ mQXt_O v8ZÀCJ\eJ-V4+P (Iױ܎mҖ0XF4,Be|O;K?+x)@nFOwĐ .MHl|Pe޴9?G9D٪A "%RK/P*M4z*1k;pUYTPIίIu7FZ/#2$d%a9 nnV߹nšt%=>\!02Y ‰4ݳ) L5AVt }>ՎpmaQDk6u-jR{]zt'">-;&]4JQE4Ltc(R7#7d3 ҧxtGVmsl$<7^wʄ9B9pW v }f>*`2'(6rs dǮ1*ii!'*Fl L6ypc5 p_NSf[ug14< jV14j&/5 eSE lpw\ 4>f''&>--F$)=dxgM[1f!n"PV yR8g IA@SQs6ϗ5=tYr_`..!Qꍌc( L&(?4!1!\;L9??ZlH1G=Tg}VMڋB4lg5I@;:u:”b#oŮTkev"w>kP]vv# ipT59G Q0!`)ҪB^Bv"txq7 TGрREfe zSV'S;ʘ$:xVIlyU]׆ݪuF=qO1"tw# 3rPOm&qO+":]icO?One)ø}]V'܄Ȗ>+4fP}B6'OzB[`Ru-y/V(tc|-vMr<*Xt"?gM6SUQXY˲ _Ôad5$(gI[GyYXșN7+'>£~DO׳V erv_8G?0K굤ew6#_ց0: QO3ijĴˀ6jP~ORP@ۭ}CH20X>2ko^sXq7zssK֚7YDM*`61\;]No>;(s>9>2$Q[1ӧPܕ.QL;GqN}%`$BGM ;klPHŴcA N?SUn؊a1 s[CR$y؀t[n\eE,~E[͕2 N[{bZ,y'2H0)ZGfso Q#% r"9TmO܈0PSBNtp_?=1U|*Fs=|9|OՃ*/ᩌݺwroУ:=bgp+&^7nnCn)xLImU`(NnI%u~ߖb)Ӈw8ww=}oJqzB-8dCd͝XbEs"ޝg{͑&+uD9RUaRWc,pi"7bԗ?F@.oJ'mږOq;[%N$e gt=z2Pȡ ^V⬍%]S3gJyF (it { [JC2鈦Ek"CZҖի ҬЧc v\H5}{j 2ph? gCP+ _9;ɗ96(7v }[z`:|DAPk'.}utwgk%zțV=oEV2=GnSߚ=f}S>lzc0I@G#F4ot]sʣm2OV SQRkt@^{3.g#sq2e2EU*xH)Sa䩞I ;*Txsf%*ǥ- ;)VCĸ(,(œTy/m*N ,>t=$fNk =KB@#ʥ9H|́-!'| AZ[}6AfC~ $+" oSbeTFjb #ςɾƃڎ/7^ݗ++z{!գ3QnZA4p r n >ᗠK9W'(`6Ckd0[vDxdpWKjpLUUhd|.w?K-8CtmQ}#JNJD5+ .!&f Esr [4 [d"Bmp4̸DԻ'r֛Tqza)ިY,/4?.E~qnF|@fԾh{1> YXL[L %o&QЉ&$>Gs\sV,!Vs Q"t%F[{wП NӦ2LX&Oa6ۚadqM1?V J_FPlol-S7!ݳ vR%p%Wք{EUy9~4{CL"-͒\8Xᕻ Y'.*o`Fw|M9"dTyTe#q:r Dވgˇ N=%-`0OY #_y.FN$?7O9NrrxɰJ߬UKi>j4Jg,6X$<0Y[Rj20 SF bḁTYj:B'%@Oٝ+nikZiq[s;HIIdn,18lیW-ZJxR3RV/Ē tB).ڈcn/Qb PΡbʷޓ9P`i|2lRΟ:p44QԇV~\}+U DS0?<-Q:o7Nup9/x? :t8_ꅺ-O߹ &:THT̆xXJ/Qg r~ݒw7Ǿ`U}PֲSL]P2(Z4wekg^+ԮpoQ`tc,h''.7klc2xW(A !VW֏\l?-wϜ4oEXR̷d-ϬG=i Yi J .t֕!uNT =#KeI31z[2j-WKsSk5bO){ ڶgNÖ>VM"L^pd;_NCV^[A}_~.Gxoҗb} ܃ T|Ͷ !0iCe]F,;,0GV[+! ROu$}kB=2B3wKoǎ[OpY hI K5A"X5Y!Ą<2cvWq8?'^iڬi|3o[IUMj܃lVr&76 K6Aۡh+{0Ϭks `ݺ2YD8yaiphc /qiYE,J#=/+JY6#VQ9Pֳ,K[RlT|F Bw Yw>+%tQ{1[VnhvvS39;Z&jln><%;>:ނ>IvN1vd:|o>+4 [ %UsYj*GvɸI `A쫭dwwSCu;MlSENOH3Ɋ䎻JovZ#*T* QC}L7jnj3W8+׎\XWF5j"vuɌg !bj\|\#DwkT52/iU=18uYܵUQّo۳Y_],)FAՋEwCEFat(ΎpF>zqPS\ )m&1_\o`_aOxشXI%Dφv:^UjԗYm9B]^B4cwRu^ fl5ƅ6df6|? Ufw0F>Ƞ~I|k6mB3~C*ڟ {i R2gAW-a'|P*!$4Y|Zd]=Q!DX=!Mx 5cW.W()O"M~ͣ+T>C/A6dYqf=tv6kǭ1}M0#,7_:q{Svú6"?UVOW&?ѱuyW=#6+37lO[,"'<35vL-/D`SkaO1/%dDh>^H177 -d3m^0Qs@" 46-)V%p_[6|;PJS͋ 0Ky6PMi{6BM,&3fd"RbGۖnmV W sUk;_WGa8q[Cb{ݽ0X;N"> 5nÌG=ǖB}f>Mpe [Tu]'=% \lׁO;}ЮkS,i -'oH ]b@օw5X] D"i$\F C^%,L|8\`#=ŝsVfj{+FP,|.=;δ2;?]+OSO`C$dm,^]|¼ \| R?*ÔB kk{sӶʐq8] ؤQw΋\MQ3a3Lg/DQ@hgqmǬ+ eǢuP!Zsmgvߕn).}|}, [ T^-NH4~D8+2b~GovܰX7IW'.@5v/*[DKqrbve!!t,jMFI`ԔZ3PWMEJp㦯>!(YEY{Y1ؑsi<-?{.h `yn-ge+ƨuEёԧη2*,u  278D0[!l;7+Qmt]ƩTxB{{k Z)n(.'SC91h%t^@(/q3qv^ 5$ђu~^$g})ם=u7=%\F(s,#mޗ{~kX#Uu.Y5ɛr9蜷YLx/0mv)Sa>t*bV!T=j)&q.Fng;pua_Kԕ@r{xS[L얥.`v| jB6>z oL˛ GC8յ^2jU:U@{:&R9nP)62_qmi;:S\5EP>{pR.0?BT1"]4z<@`$dVY.IG/M1Jo7nnNH: #Wdi,~TT+3/a\rS߁?hD˚Lpw(ɤ~k8;+jx^_7 CXR+&%q,ϼX$}juUd[SH!R[Opg;)S9hO -'C@Mkl< ܳD b&&Ų%kb˅?5FҤd뢔L3`-ЕHhN$7Gi}e!nhfSQiGO});K^#/F.@S6w˟Ь2ZȢ' *7m B K3Fj{]#!EKi%sސ/qex+p8,fᄌbz,|CńPj^t] P'Be%q^HJQfv-8hdԺ }@vF@#jmuB!r{B491壮Jo+ݙm}!H]!J0"D5ƒW&̧$i*YNdR#;8B% K% ݵPPwZLX+^3vMԋ@YJYw[+i q b z9E:QM}MRXe/T U=&e ` ׸F@Mbe|ڡԉBC4ߋq iMuSy;-֮6XPt^zjǏud*0n8!  *NOAoE1 ;-߿kB8_R!25ؐ+8AaEApLp6 'L=H*ǞTༀ&yXVȎJ)" t)w*AҗCpu*kY0!){ÀPw$*<+Y(GL*[rV(83kR3˭^!YD?Uɐl:HZ χbdLik ~ɮƜ!V,ԲHM]_+ f@9ColZ7=U_vmBG A1CAE8q$A'@RzڊCA-Myp*٤h UB;#V^ZJ yvlǝo0YfoqJ'Stښ=i9#Gx6l`F6(ʷPNs莘㾁g]/k< +7)`L4ap U*| W7@ MΡGDb'40TkP؍{ w06lSou/LNPSϪe$Ȉ*&_^ x;,߮qAg ,6yuY uYrO(n ѧ354Sa|$ H7uc'͈WTcGu?}p w8ڠ-mu(t#pB"Xh;ԣr j(2Ik&1#uy-æZ8)a 8S)OT?2Rz*k|Zt5rJ"DRWUk"k~`}# y ifպҖ͘Hc=>7rnE`vۮ])MH[K."Pƥ0)LBX\96-Ky{,h%(r4{#PO2]۫? uLu1gbzD|b[{.'=*# rĔK!t1s H^CY- 9G{ 1<-xI;ɑF% W]?|84j/tP>RqE$γ'l\Z0Ȁq5󪄟QqDKw' Y%;0;xQgcc ۆثQs WVh\rh|ΪKL$HrPէ_t)pHІY3Gk 1z-x?I!>"͔D("ɶVg&mW 2:_0o]'fޤg2C 'U߅3l}*I>WvfJ?S48ʩ 鄰kǒ]1/p8\{fF`)=""0+j#~RB01}"FT q*GI{Roҫ}, YfYqrdtOP=M [smTzgQ gunXA;\Lap+6R:/oZ,%(#n0oJItoL^|# {.6>ws`l5k2{j_iJ ILGӵv<3EcWk73ձzE^c6F{fS_ oX ȩ`ͰaNQ5<hMyN&^(7q T(9u=mHymVL[̍ Bs/Ci&IqVlI"o} `חMTbuђ^5vǐ&;dT-0{06!˩9Fe#9MZTؕ`68w\0Fm4_ɟ[eoIcjYYTde^m2H'^TDϯm/HcT%3&Ku.M fX]<@G!=e4ؗ#|=BnSKQ¯\i^XY0` >bJSz z,p*BOc ʺe ntR;q*)kyYjAI 64Y˵0cMʓݏKö*FK@loZ[Lpv"4i[v~ݱLxxLZ WW2KsZ?0l.zَ綒5@p̡,"<~ۙTn0EH ]oH0;+`N#F]ʆ+, 0omYP@f!9Aq>;)OcDoxBR{P c+$4Cy0ER;nEK^| D?$Yi;NǪ5"/,q/@,b=O@j*rnf q`)vi}0'}!4}HK 4[͎&iMX^K惕`HIC)7*lTwJ =byJͩ}7Ls=Q?]G#dW k&Y8}gؿ.{=^?keQFI+9IXŶD~LZz@ N}@rֿ#gǝϟ]8hqIopMX&T%+pL&pr%&bڻD qGi4DVd—Hz Y5jig3>\kA?XD+Pu>iY߆جL=&iAԳz5ݗkD%/Cx?: wSN-<UGczi)֭V{/QjEވl5$xG^5gcJ,hcT#@c1gWu!\N +s;.Q4V%Vlׄ#|k*QH3DRU6uVXz=l52}[׻x5' =67:;<-Lb~<}鱘@]`,:Q7LU"ZN:+lIp3|vj\BdWTFaW^^)|Ur}1yMi7g! LzELW`޿_ Ogg7afA!@gl oewyT/뀤΋Tp>̵n;VaϪ/⋌d\9aO!2Q޳=aM ɝ枽W/Gu6V߷K j$DIwgDfs{3x4ݞ]9(鉘.:[]%B5x83 cyq5]i֟B_vԡE`a E;䌡?pEDro!,[D|];/ v67dNr*'ƈ#BF-D [IF8ս3bo3>QV&gqIr#cϰte60DʦUUޚV\V יAlvC MLLKsy`8/y)L9M5fbh"5xsXdי_7ߌi$/藡o7XK6vUgIX(B,}U3%YbQfW'$MaV$4K v79/r;Ofs0]E:BrF߆}uepC]Kk0fQZbx'u]xt:}+-q\PąOCkmNB2{{E[طy6ېh v= BYZObmB<6#us=6R-CX-IFHW&HŝY6ؙV<:eoņKTMش] y_wE,Hc9n?z9>[w $ir_Q0mPm$ME&-R"DqI"O~Q$EWDaBJpsjɶ }G!3j°-U+5VC"ݮVM7ibEdD+fJٳΙtpF|  IsMҽkhq7%N.{Aࣗ^XZNT\A){v/804Npǧl#sQ<Xޞ4c-e¼ gDRu7ݣl@`ѲQ^m&$$_+$ž*'lk^8en+ } EK>7R/Fn-qNs8}/5 J$Y#BnҌ)ʢ!zNFrEsZ{:0YrX+N@ 0w*SsqovŒTBx}SjV  6]!p^2/FW7htgř cA n'f~qY]{>`-ʼ-cE/ 8Xtd 0":[P~fdh%E_|- pRiNxR/Ō>=>c8]OtYUTZY?j[u [O.'Wbg3+WZnjÕ/ݶ^LtOA z"pF['`cQ]RIomj Ec#ߣ ,ӦLD̷簔̭nAkyW׶]?o&x8y _k/P >b'WTdtP'}?2q} iRԆ'd@([@i-2EgPl4]隥f!fd-ho n>O{̽i)zwD*QbSeyB; tIʣwbm 22q vFYͤ|7qGl7gP\?L ( *^hP'CT,%= :nW5O ʶ9W 4IRf<,9Q T6H25ZhvW|nleﮉ_>VaY4Rw+:+ &= `6ufWөl5a?MR u٨pq}"Eb4ӬޏZ @C0EO.k5AGU! pM;MUycX'AL0tJE'[jFb5 +euݻ3Q:\`hFQ[k1G8=yk(QT+e̘F]*?hF9tn-LZM*̌iGhz'!&Eȝ,-B3k`}̕GH2e퉋MK;3Rȥ? "nStXڽtE*Z8 %ޚa I`zcfCI.4f3z{ĥfHX;!t1>pW'TUXmlj ȫ;]-1ɫ@G8+M[1D8{>_7f6{V0*-dPߪS'+8>vW$7-V$Z윾q\a9 ;q1'3td"^H1Cmaڔe?VHs,wOIw\HY(ڭP _^͒ Pִjx5jWb/Y438 Íq+|*Hfu'W S߮" Sϋ>;a0@] G nK ݟt~A*U@tuezD8-n͘ip耲Tj恸弞Wc7t䛅HR#6^*=jݤp3|=*KhۯGOB cOkݕl `IGVgңmCе U Ô~Q*kGSD~ {N/I|heүj542-2Lz+SH׋pu;ic\E 5* r:\ߍ=gHg'?GIo U~Q&B2TgR+"gɇ[Ť4c"'D/U&xիL3 sqqB]yKFi\dl!̱L/EW7Dָd#1O_O +V^PadsrF>hH?%nZ+:W/\2BQ^Y 0?F1JСJ(?yf]pMxۊs4 (yю(Kq1È!z=pS (S6Ugn GwG\M#jv)22_NC,Y[Ҫ0!%U/[0 Ƽ+HY/v3nRB(j>JH7bzDQĆHQŽ%U.n F-!*CTC8W*-0?9z'IcWdRj"pTw-¨œ2hUX(Czdzf b<syg%rڪ>ioIqǨ*C}#uAɡvi 籤\_:)h8>2ϼa-7`9T]NKs)?TT!\}=fLpsk.5h~eMKqNM"D7討0hO}a:Ά|{]Mw)˓c_䤱C:ZyQ-+È}Dj7)Jx?_h(ۈ6bLpQxbpRRIÅqi[fML#մn"*Q1[X?սWَN$Me=J \H|}H3'#OIGa~xxr? M#o*]&I_ 4/eK> ί 71P أ/$udя9d2W^MCu~ .jKOPއ.yVsFd4S}fޟN;JD1c@?.;r-3+Q *8su)H>=b?Ѓ\Ʊ3g,=-}Uܠpų H$:GxJ^7YFgroG<J"v7> ˉxښ$1ڸb!mo<,SZAb,eb<@АL:%"C\J_XXrTvO/EBI#_>=Mfl W4A6'F1F?=45ŘF_nƼ0UWʿY]0*ӹ;0Lv _~(1&y:4a qDlc&eXN_:OJ\cx*z˧ ؕt)"85!"dݶ՝y!ͭ*q-A7W0ZɵV FٿKCt[F.5.% ml·]r{cp`C6YV/^RaԖYv" [dtP+b}Omݔ m)цYp-ϐ]D ,Df92:L  1\|18+n DϤuy[9}?9511i.;3nQZxp;6Dae!W(yvͿIv)p!|J;B_eΑOHG3zENrP[`6l7@l?"; hbm^zX(h4z*q_aDg;#0x:2nxjߝ.(Vd>[vDqƒOH4kSaJuX"+>j<]AF&՜ٙT`3o4 >Un&AZ)W;n?<Iկ@m0y*9cD{1)LaiH==LAmW;b&7D&"@š#^F`ԨiR0Z~+d3Iڅ㯮%&Jr";Bc1.h97f.1Q;kK+Bm?ٻjQ(LFܷrǥF0h[c1b42ѓZ)YP+9_:*\]@z頵ǎ m@7k|43#x4l3IuCVosoaʷEեm £zcoh(.t$$1M$A6XUoFy pHO+ԺHUfafW`̎#wz 0n-LE / 5WS#Z/89LɱFK^Tr&0z\Jn EJnZe 3x! m.Vgg.l 㭘L]oW/#kHe*kpɄ/<ѝm$ hiu} fq 3/3Fyi|z_WZ1NO1*Q;Y:kX5`ǹc VD/>\>`ƈE~ZWHx L\SKNgZ+*P XN&]Fh@۴*HΠ_&!uPUz%֥9K58e8갈3RPԊ39>h͑!4{Ř5.|L?gԔ`Ne"6mHc`jcMQqPSR*t V';M jYİt;Ɲh\4d"ȝfg$Bh̊mFOGBqFgx]yDbPJK$ ڪ)rWmɻ{_SS$w/Zֲ/Ts$ڇ1a8 Fіh r&\Zز ;^̀8Z鵐 i**c߄c[lMpD{Ah0G?ܵWhWN=x1x ݚTFжUI 8l&VWy'lCRY􋬳9I%I kLPA[С]pkZjKy7{=P|"Ng^L8! Q&ȰaZBí2n ZF[}j jF\b>a/}OO5"6O1kKC܆4<>YJY<>,? u]M߆`(@j9{+Z/OjIdT>=6}JF]`t:OUI6*5F"]ԇC`L$6/R<4O6q?%߾ÉNO[Enq!-J:򵛸].˱%J x#SUZ)}@zϸop٩iWέLR{}J,;'}8sʈ7~FSg=ExΌ),tdO湳+9zkη G ?_Nj sN]?2vjJ _sX^s})~`InWK4ȧ^ꑆw6FM]XOVM|͟^D 69aqbJܹd0vU}Y?0Y2 /(! 5 @L?u"ʖ]adX$'C 3U'4J)|5w=Id[c^ " 9#t~ `K4ė1]~^\<&}/9^R9sŏ5竈*;aJ%cr:kG^M/ss/(}D!|irq{}J1g]{'N|`̗ `;-=]BfF"_iPvwl%z W!fBOҺ890%MLFw X)Q=Nr٨maʋV U`RU9'-=pAY>n|eQyi X Y. qy{sQў*+g֣0zrhs؞,Sau9_7&[T313 ;X|}94Gگ7B/uedqFحsB$W&ԴLXwĂ:?`k59L"MwDyh 2,D7>-Wbnti"]]+|I=~#vQ8f}|WD@J-0ɘ}X$τ=-ҭsvMwJ!=tz3*ky_R#[~UqFc&2W̳ ::@ܴLM !s=r\լܛyI@EXԝ4ܹ= wpQ=XӝKN8!- ms.{"lopRbe^TU@W"jjo -ԛi3֜CXR8IZ^Eݰ%; X pnz_&ۉl{gxAkR;K ̹O& ٷ!k 8?~kz9$w_GH@#Q oP2"@fu[I0%;#eyx;)p|Qgw5 o$n:ydϴz2!QjZ hJȴ>{N "˒k|ZC'WGQ.߻}kS{fGJzfJPsRwo/\wŌ"Qm[#-*=%6鱸9 .ƫ"A *=M49U@ 呲w þLPV0(/c13$0Brԓk%Ȑ6dh`_A蔃R鍒C2l~0ށzZ3e<[K/%%Щ0ȼ0CYo+^õ/(d't\Ŧ,I0D9=9wx뽏PFH3h%u%#žV(@BF܉vt .m(ǤM 3ɚJnH)t!jhJѾ[}E@t{v:W"Be9щD#V,thΫ@0j 'KV0deFASE.Q.#jIF-¨ ]nl[:-s:T|m ɓG_> &죈—DO٧agzՐNRLZ}p2m18"%$c#U,ʡ(Ī.r]: X1O *#@58pa+OW(9ywTq+|7?„:#}ř}@fE6 ('{jUvEBh &]*$~V'1]؊ CLS@ %[gZuD2m[᧑O/-J[DC-'$d'tMfs@*{bK5hKeQS)|'.v[ jIEF䑿ۇ(5$,68>[ 0^aF- b^EggV?g-(Ȕq{\ŕ\)44A-?:Y'MApЬ"ڌUWƎ6^K\#_|Y )^,,|(5_ޯaf 9?ƉbQ狀`腢Nw`rVZg;)TXfA۹%C,fsE'pKXRr| Lbx̬)w/^P8NE|$Oe,m8FMɃ ~o Oe;-9sYXT;dUQɴq@͍9s`U-Tqq ?n.40 (JS;v#O߫Pk4D?nRY07[e4U fGlw᧼׏롁)JKbʸƤBP!>>Fg5xuN%S%`@FKtx0~Lϻ}lY>N[[*ZYYގGHs`dsq<襈p#FV\+HDvHjN2B¨+ؑcEv?6AvVS?ÀdQ<}tD;D IN>F9'v.Lᩀb?9[ 9 8;[SJC޸6T?YcZ1&}^uRMX<&`ahBNx[r2D̨lvXCx8{/D`O.IGCԾ]d(95Zκ,CYȑy#MC5n1w਎XⳳKӓ%=,M!rJP64&>HlOrS e4@m1W6D b)I7del`o39vYK= pβ s:<d$ N Yhzvs.TAv}pu }[a$@i};sfhí8<\[+'20W?P|s ˍ^[@.~&P!i;f@%=kj3w+p-#/W=Mch69Et ^m q#[KHJp ȸoZ֜-K- WM}%uniC:~}{{v:SXhV~x*6)tn:4tg+V*@%pJԥvc'qElcؖ?qbĠGd N$1: [2/1*/ґBG R|9YDG5̓۰hL䭅ĠH^Yuey1e?AEQ9 ŌӶ7-,QE Lv=3`޽],3[,5)NFp5h=2߅#t1|@i]]LdA(_66\(P@"#I"=esϋY8tWD:9zJ.vI3P?rc WHߴ@'+xޥEnEldR9̧>a BkQٯ B!)ZNl !-8|*pi}I^aDcv֨ҧY ` Y~jqT"3_lg8>chW<+?|3_9 I4x]XT(3[5[Wcv!ǯG$ȃ0_-331UaBl87|YYrD%miti*Ȭm/HsNZo8_iojS1$|r0PVTap1o<p7_Sh_o媞7f})a^ D|~ {Y.23azٱ:ZnUawu>xSAgӕШذT#T+2uLI?p夵?L*g=K낆7yR0Ju׫ddh{gvq aX? 3E%McbgdgXT6"sڟycfdTD`x8(27@D`\&.K&K9S#a&:HA+:6FѪa*a1Ϛ:MW+v5ˠ޿+h0.'Iw`Q:,'7CJ$N3KNxcM-VJZHNA&Q,À.F&oz?;y\^Z 6r1:,Bg `S0z (0c71Z7n]SdDW);=Ib Zz# >m`ىش=XL!C!=ĢW>}?@̭V t3]h{-o½ {Quw1䶵8>B 2`4}Ւ#EuZmmp\0rX|:Ua>B6 r7 vzvj1\ςQڷ(.{ەi%<*7 :ʐ x'`/}$2oH@$Jb i͢~ûu`2Pc3)/& a4VTU kQ@^*sْy9E~`_O߷~xM&5Wi;`tM^(Zڡs .+ ɿvKE^5[ r6+H{BT?7\ʑtwYY[:_?X\dKͮYEV3٢XݰGSyׇD3,mziT@īFט *0-Z* qiS4*P |N_1W|r/EEz$M/nF*qD_5GqѲdϩ=F9B6I0jHej>Zs[R=u/SSe&-7–=mxdJQ O*9ҋ^mHj00/;۸2[6stX-XcRK`蒥!;B^")@zy_RPV\8yiq`9)[+gYnJ!G2Ll 7?+i!vjktj@+o%| GR ^9{gOo[7Kwr*\F7}r+81e.敖b&إO/^ jRӚcc,ӈ@Z.ɶqv55`B cqveHNxkr&iI-ĥF{JhcSrPNl-/z w>, (%/[*o\e;*ĈݼR$6pO҂r|¤㥉ݖIuFk8?McՖ BC37O_A-T#vRz+4-ţgǵpYdү/pE;'?ƍDrft(\koF4QsaTH^g|b^`?PXReLlYd =VM#gjW]*URj⨙dECO|z>DP,WC@Qz[<܀|ħcίkF.q ZfMK|e&rWhLv Kݩ\=:RCm )!JKmG&ĝ/UA/τHмF⫖ǟLX~|WYPXP'0nh`{2H F[;ެHIw.BqtYIRVak[ź  W3`?)$Gl !NiBPP=[0(>b<&D^yr::`N9Ba ==;{kN(*YxEF1z\WIH8\֝qjTIY>B&n"g!aw?:kkp }8t3-%*t$%',4[sYAo% zl]=lh@HМW>̳ی1%R*Gjj @?=oZ< ^V?D"A%G i2'mZ20}F$ i;)>(xm:]qʞۄ-5TMSa5=*tB,JP k V,>Pu[pmdUEy e;],@PWAavܬIٖxjk8N?j܄55:c$rP8(>۪~-cH45D WP8>)qFz#ۈn#< nk>NQRtgÌƐztw,0}E|I|3D"&!qR/rݴ`TrT]){NfdK`žQ=&u5 oYC{sQ"+!{e[6 [E]xg"](xop鱪Q~ey~Mh@S&1j$agpۙ7n0nS @KwPI* ~ GyX]ewŶ|oT,CVdrq8kC)$70`̉ҫCTqY6FR4rFhO& FiB 5![VruW4'&Ј-)ڲ I)?bONs1qmq܌3rfy)tWEJr⇞Y 4uXҦFtKLQkjݨ+v(Orv3gdSF ȧM EH$DG[P)MY\76۸J9]m,uj)PJ{"t|ZsbyVvc(.@-!^'ےAfY'/&6 Q76A:M1*b.ng&JӄnurB16TA+jF s-Zt*I 0!b+|Y,6ԏW1{-b(*.2>؛ QL+Cj@M:TW GTt䌐i.&]2$mvJjs(J{џ߾N3$Z3 2CS#5 !Od,injBV ʘ5,KWp@Cj}3v3{}>ϭ:I<#0e/#ޯd XdԲ\Exi? z#PjvqFe dEo&mhl7G̴0^qK,Tk6pI}Y' >B~Y|;یx7dd5,bWmoT\f_`3 ;2dkܫ Ν6r0!7MX5;:t~5ڧ@5 K90F;x0ԛ+Jymc蛰K8 [T큈SxyH KA΃I#p▇ ֒< >azDO~\oP?3gey9lB\Çz]/t|TUʻ g6{yCb7VjpޭF$;qVQ;&4ީ&?]y,ɧy39e/0q,7k~+U/FopuLB|js{i:|4#˕s?0N4AhM$8棌[x"C-T#؟͸16jpK\={ߛJԻs$7tD&sW xѻz }% 8hFF1۲My~ĭb\CW$gG"\dueglwǶ^cN,b@GcYcJhDQ/WǴ[{7P2=X/Cc(b(#bpIMK"uxdTos.ݴq q [ez1ָ_&歳DYH.:s8+[@?6Cql3riR+E"5%xQ+Pr`4jF |,_ 6CެH$2< jiGh5X`SO;Xtq˿-Jt"ele@lbXsFz!\*fS8ȶ[\䳪]tYݯ؊-ƴ6g<=JEP> p7oE+(LR56;ڃ>{۞D¸Dz.*BdYτ<5Rye=0ppXضu;Ij` pB #$N2,YeCh0NEje(q6}6͠MMB@|zъk`_Eg_۷t}%f6 a`mK]xS{.&^;˺1K\>:~Y|$" aۣ~qt]ĺPF(\,>r6J|e扡4oL{I~^>RzqFKޥ\*Nr/K OqUDKcnq _i+K}rJ)S Ouאu7tכfpfˋ3Q~9Iۜ63av?9$2q'T;\>U6n5)F_ikȽF^a 9Խj$_!g'pBa& Y BУ2ߵQ̆|u:(-_[g+"$*}#.~1ĵc?VsI0 ymxcƺj커Aw>AhlJ7i8h^$9ݓOiA_F->4. d,5u*@U;4Z. Y3('^T\UѝNAa9c5`WB6r.[LPЍ㧮Z<)=W}&O!>@G> zo|z0q'01a6v=*z2i@Y_17D$Fށ͙P@-` 6aQ0EB T)P6w䋑$B ~!i`9ƣ"V[|߼(NH &h# 5Z-͡:5IBo.6$UgJr7ZI .xnn)@biӃv:h{EhO S|{4@΃^x'tje5{m5o,\i Ug/E'*i"9a|Ԁu\~T䎅 g62iۧ(Xggp\lhm'}%s_ g҆"q*]g‡9~>Glr"D_`H[HX"ljrjlKa1A'nVNg{:[vo ~ȅbZ?靉KS>n$Ur`!4E,HK=1cƠ I:g3VC jt!7x?nV]4ϺHI)o(Mmi~s{ГR>g6 ςxo ڄ9l cU-+ͨ\ ;@ABJUUe@^Px=hsfo[#q`-<ԣyO[|GJ{ {@VOęQ5&2د9|7̂RXej<'r}ܘtB ]AEk V"lm&[ 5Y:h>5dGn%\ 96πgw7'I? PXAEBg~ښO5fs');i~,h{5ƾAg^$iq<(n`(u})μIIa`թG})#&`݈BS:\nRXlD_?*=xd,U酻"Zey8q褷nbKL*M9j};>@$hbMRXY|Y4Iza.J΍R}Vw>Q,Q}/lz\XT#(R[V!\dl3aĵT)@;n4%YBd4期I/|'ԃBV~ye?(W+GYPbl8 E:O0;\*sW2/m&orm%>_{[!f] J-aҚKm[I0oן,`tplHW3h[&?1?Rgϡn!`W}ɚ|M!'漑5j JJ DxJb :i?8Փ擉9 Pl"f#&i <9 \~OKXK;4RGkoKkP^99 BGJ<)T~ dw;8uΣ|r"D8zN\E.H%CCRm)tR{V) .Rۣ2B f940`mkd虲,@ ~|z,$ !)AĬ;IĺQa`&(P̌nEÄv*6>'gǂ˴ 5Ekdz&Q P/W"z QpfbHθ%seDtSZˊFT <Ê;^!D'l{Ma:,tkD{pb Cq+GpZt%#[y>`HBEzn$2p0A[jYQwl6M)źR~zS&WNF1CVFx -$Nth~p('qԑlv>E%9e_`-,:> `KYVˍC*f%d>] rY~Lh YKiIb-=OS0JAHy<)j,/6%p[C}UT,1 5%`Jr&TKېH(wenrf4Љ!Iͤ;B IGm?r"1R-}/`]ߊsؑ(41 +h"G&pJ<]蛐rԌVOrh0 \jr@Ʀ9h@4HA`4>)xcuŅz]$$xxm/ܜN/^0%,T)L\ }û ^MƜy`eڒvv@cRBr>>e ZS*|v&o \(Mi k,{K_d}lxR`#mo<ۑ#g)@<* EAR2qJ|u;GB}B'Z?D!Q2ⰽv is1:{guhϐ&6M e_>@w8V x`t]ǺF9.V0撣3xu1& )yiǞ[O`g!=GY;iR£XY!, *\/+3  FKA"n ޫIDے6G# {+Bc\c&#EƊ'iH F{HdsQqvٵuFM i2_@< C6و9^9WVDZ?r%H=I,8'*գ=k{>q u/*zMY ?e@Cn"k\ FюӺL޾qlu=1ma*T$.gj 5:Hf p+9E ]()(HgM4s^y <yA2Jc~"$ E[PekČV~+@ 4sޒf sjeH\}Xw cPɔ0o3m؇D<Xp缾]\$pE2~RS:Avic8nFfv3>Ӥe>F xkgG Dk]5W(,yM,PHlfיO/\2o8vg> !*_ϲ쬃$͉~)} 8/ޠAC| ^6~n=t aAscHl |Q{[ǐϺ0#qKg tAdY!!tɰ8xi@*^+Q FiO !fimxȩ=e@Hp <&NnZW(;+L՞!VP+h˲i,t ߷rw]U3C|hR#{t*캖y.#xvDEr/( BBu|anݚa-+h:preµ-'Ğ{e|R\6hDG+.$ m.-l :z1ʍ]" |q&LOL2{:h,1e ʑ~+(JñG9SE0ia~"/~V'#P=1A]jva4gb8VF h݆~I7+Kt$xy kv4D}nOencQrNQ3N?;€ô= ?*JHYqBe>p a Tq5:F*Y#"2:{v5c7RA1$foj&Ƞp/p]GEۆ>>O}ZޤFsHuHou䖐~+1٠ƈƫmC,A]ZSbʆF) !~Be_b$? f#GtǙܚ R(>I}g!c->1#$-RWˍ;g~ۏN+ܪzH.%{18 +n ~By~sUs[&ny1@]iȷrϔw cGLNp?"K:[rWy6CqCK>έjf۷#9]9 %hT1/'+Oof ocK t~"ZqAǠ[EyZ ?=ƫ:. B3o-Sbvk]B#} < <|.'U"uo湯<8nK}\&j.dǃ 6Ti$ D9zh$ r!/Ǎ?67vzֺۚ-Vwael7@R2V˱[0,l1Չi<-ǜL1~Jמ .DekUE&5-6͜-wf,j KDC 'U%JBM )XHuct-탷@ 5lEZ?(mҠ?uKV !,+l^_2X}F)6*Q#͋>G7=um2bTbFhb5$Jcջ=Dqn@LdV&{hr= 'L,'K u 6}Dh];~x7XHqK1Hֵ۬w0MǾە) ǡq~xW Zԍ31W0C5Ez}J@l-+ E\Q4ٖ01mj~0A34ǯ~_80\~J]<٥)^F#PuYx` a5  ry֠unDYP<1pED:dDaHǩ8*MxaBKؘ}l-o939Tt?;M\ ;rm"(xd4?-be$^S,eۋ@F73p#\FӤMU4 `dOd+!@I-; Ngx7*@2J8[aΓp0ǑeQb?/+oZցC9ka"xreLw@?^Pj R?6[,0,œЖ'@!+pۗ9& z BX=ĵM;k46A4=- ֳwSD\[%$>~Ս9_^]Î פqg}T\ybΗ;!d ĺ|s5YEwiMȐDh#Q3ڗ_bZť|XX-6"\iXoxw }ܦVF[zD/],>| kT&=/B-SY woY7V*-)`.+>m ]=Q(@Ha118M0\OqKj~VJ`ٓ%Nl gwP Eo RO ]SNkcˊ!p)4h Z|"TKc_ Y3̅J%h&U4vԈug?2XU {3.s͐&zCt& s@#Plvv$9i̇{*dHGQ*_XtdpcF,Cs.SH W\b/߾Υ~x7V$EY,VA H_ά )%L:{@?Ǒ8ipB9o!qG3EdU#+O(ґ𢩐>SKS 2Tc]ct3UXӪ+auSTP}%$`U8Q,VPI.[ &k6Z N9i[*4Fûz>hA}gԯrz93q̩*]6X4BSEA vԨk 1Y #"*IFx]L#?] -_oŒr4uXup >:o vc$f%grj]VDx,Gk>C*߉FilZOYybiO[ǘyKHOgVŏE[4}oqX|̫XT`/##OӊE"o=^@\I|vPM$U%viB__'f+1c-eQ'$C,H"ҫ3H3J~M-_d?uʲzEzj>}y8p4̜@(^87d9 yߋ-\%MaKaEPy"/0fJO&NfPl ]#FRx7B3u~LfPHn5wpBj#t%JDQ_{zsAa)J~ռU`O_qmM ϭ{e.zn$~hQl0Dz SbԓIDߧJ5iNMD_V}]WJveY{ėX|\+'W_C'9hCf&51)FCn↗CkpK:#҅rE:1G~ܴ lQcBc~@}Tvp?(fZWyANE&;w'\XBN '}j0ɲ-E>GNy[w+sXL*!Op3?}SwþQؘ; [AȚ1W _;TB`(n<{س ͹ yɘv:r;`!|/6sZ%zm>Vc8qI9fP-i?(hKέg/upI>kUތ21j,aUا#i_Dwi'}R.zGѼR SI _=2, aF} iL%E:TE<—`2>r0d٘;NozW̉hv޾ )3$gK6dx~K9, V. H?CX.9tf3ge5ٔD]4t\eÀ.yKO.Vf3x?4-^+t{AV8!$h\ֹ'%X7bRH]'ΉwMQy!T5pQ0ML7I>m%\>>CzV?州Eď*m1SFv bPHԯR1S4o<6 ;Dh+P-Dn (+ D#'n?7| ʝ 7XU nFlI02#XuY 9.<ʣ# Gy٠]WLmxu9EZ|0?t$1?Dc`ug1`E~aO_hif}ψٗsEPD RdDY,i=P O/YT^Q͝p5dEY(^yLt`TO8'@^n. {pdaPzp&F'SPq.N\Rp~emD?-E `]*W3gkmm{u3KSyR? [@.Α(H9rlx[&ǒt[P{Ey(x\Z2+t ΚT|qs?_,KYilȤXi+`Z2 !F';́Z*Վ3T{m4ϓ> fjp {Ffb躐6l O佹Оf͵,x0W"ES `P݌QΎHV" H b;bLAL; ߃XbR5_ZhԶ23`%[`"9};!u ESdϷ:^p; YӦUx|~ΞU2KD pnDBmᯰ"f75Ǎ%]ESOHڪ2'|?j6$CwV6CjN#fCC_`g#0A\{{ۚ)Zv:vd]L"'hbӹ\5$yئ*k.}?800k 0l5azwC&+0J h#xﶴ EÒ_4!c$"B^1kCpn5 幐ۃATUW1y^h9c!7Vc{ƚN TWꞴjK`N sXXQ4$ق-FlM6ص溺~MLX_7gpDcVf6 l3գ'J' }OujMR*I $ )z99?:1xۨSV};ZBgNw|?{t$fcDUݖB24OuӪ`.Y5UL[dַYT[/e7Czz+2ԟjesoՃGw[XPh@@#ݩE+J۰wJz}$4*~Ƅej,G罃Ni5C`|/xƝP߽oYMT3mLBuoL-^zGR (3d )金R.;$W8 (F#YB"x+og|#S5]k(i,ڕ%dN?Lnzfp׽DD8Zfxq^ IW~2\[.m{*…Gm8,F.hEYP`.͈GB4>GCm[ĄPZ$lj )}W6 +?0.hR;'rPCI"?*29 WD_l 8 ,e S{#qB$t7'$z,㰏'}pXMwa,v k>c|w=xlXi%Iʫe`%%W|CCG^BgDgur(~I_ށ\?~ᡁ[5jF'n9+V2)'g k| B'-pOg `]AlWi]Zo8MXWlO~aN 8)h6 1m:D.L߬[/l//OaH/?W+N$m6l %p[m4 OWݾSXUl8-!^`Mչ-q}rN}y}hkx[%@<7wsgC3i! sh F 59kܒ +R^l %hBUQ֮VCO<#Cf]\D&RG)(2I76)֝O/ !*6o\+Hu)_^$@q /Y)zlE_Pxd+݋NkIjN',բ?dFL''o:{%|8-rwT62jWL}F.{e nܒ=NySo"S"71_bŨ {IGKqh78Y%vAS_oN&],J>J0Spy:cgT]ThԄ&?'akS22}QhX {1}VW۴s:~ ϣ§<9[;⺐k<`u)]%i>aH@[|p+_lCAЪ,`A]' zx4)n)7|?^V xX_LjXc7᳹`URUt6 tt@ncZ#E/ H?V=$AKϡl !FÄ_a<_QDlz`.l9Y'8mO\~Q<񖙭Lʿ#S+5++{"b-րȲ Y6r^!71O$; p׻K:xw19?Q0:l1)ja#Wg޴'P*mФ{^zxukHHJn&Ӹk|T*ȺzBpT} sjGOMY0NBV|4ƀ/w.'S6 OS;[Ro{.0&or(f?vM $LX.xx|BxF̜4^]{]`Tt>*:LD3X5>8(&ca[VU5lj(QTx'bcw4ztqAK^HȜIOVI~3`{o:\^d2E:{Xϙ{ךe]LQ/|]se$9ճ:Mr(ÀE׍Bݰ8C)W|L]Q]bQbH<%B8'T]f:>x38lP"a{(j;ZqpgChmfkECTtY1+U5l<7ܥr2Q4뤩l(}y7zbӿ+C mKF^*+b]yÓ'XE NGUp~V^|ao=0גAhYi:F5MsӃf`s** k6S7Jsm  G מB&sz978 ="FNQpȯ[rލhtr)5?Ð3<ǜ}&B{}#ij)zo@Д;R/@ Gm1pRIRTRv>>G+iKO6gv0] ]֪'IlؙE OޑeM^!T Hʿ1nqd-`zO9:d`9{j9}2f?iy4(wH DTgɇmp2J^LɽqL7yq8aӈ%~q렅־yWۓR-^0 Gi!-;u\~QF*:$ϽKA*%]6+$nқl͊YkjlZИL^:^ Ԩ>N4*U~mBh9Zݻč-Rvo8)^ B;868ʾq3moY柺945N"euaC}pD`8MF:Wj2qu4mWpk~ڨz.jYzrN$ʑp$yxj{lpG|k Ѷce@/lSeHnn)s_17}LP}%bW̻^ebtnLVt35/\h:7@INNհ]8 Aɺ 巋mZC[=Ė0 u;'k.o^KTDDeyiY,}"& AS;cɬdbkafKw;"j/M{9 .e/M;jZj~m.Z%שE }!p׬܃OnAZqz?L`)QI,P| BeyIIvU90mBn&33lO/8+!zǣ`=34QY*):-?^XW4BI?SGiH`U.G̩i$<tޫ:{ҟpw7YPcٔigjA(VUrӶX)[:=mGTxPRR4dI\ܗk Ο~ncv hH9=r`\B72p2[x oe;Q0 ~jo;֏n |>ߥQ 90-u Vؽ\/9g@F5̞ AdA8)7<Ӗbdz=m7ʻx<r%[ r;)=GE6`>igtqÍFQn3m0GyțdbzO 0{)ڻ~1{aB vV+}HCĵA]^k$YR4sXM[r_’Q*B &Bk!NOfnXSԋ*Hy¤u$&2KҋYnQ h@llRx 'e)%ذc7.Ӿ`&pQongW}ߐZ?5ލo4V#/^V$?Z|&Z?ed=m%$ _H'/U^F&:j<.;(NZ.ۛSQWR;1LbsmIl ]HBE -EHjYz)mfXhł2YjL(&K!o_i=E8 < t]PU,LJ^(؏ĉXTqmeJ؉~cWF~_?;$44p/3f9Qq~\֙>Alv.J] "}~!W'=Z0%-QFz %@9m hG+Q5ExbWS0r>,Τ"y*H6Vpdsϟ+LXB3ďiRtD,p u HL>rx$[$fdڽ=T$Fp;x#U[+lkWb:;SlnkoU#mpS\>7DTAXKc|Nw!rQOqČ/iR7ے` 9Awo56µ} qXݧ '#veћ GJT)^A\뤮's_D^=mX(Jlj{۪~<ƍ_ -'" 3@.{5̀f=whP*On͎t0{1yzRbёѹڄB 5"ɤbiq39V0Tޛcϼ`*9o5ĺ/ /|Wg$\}@dP ( )*ˆR c _ΉN*L:B/J+~P@>5djoE2cX6&f^ +^y^¥mhYV5<{Evk*?6u"iEy۷X]G$%k @+&~|.89yZtdklzT=z5ۭJw1o31=ݎn`إwX1k<>AdyΫ2(NAgj4Hr.%$Xp6Cg> I@#(J FUP@+p4!2hhsWXK<:.7‚;-y ;࣬B-=%^܀5HEEbb^9uSi$ܨ҈חx8LVu'f:Qq,g~׃M6G>b&,KL~v֮=Hl_ML!n 2$ыؿ8>Y2G~.|(i-uL%:&ӳLRew.Rt,r 0I~kuQx5Z?ٶo5Sie"]hU{P*%i ?rHX G%FdИm",my-jw_o 4 y҉aGРj$@/qf 68~GvMO2BF*XϥZckc8|pj`rr^kr8 og8MBt*ՍӧiB~RDtm; /o.2m,ƞ7yhfN3n.jzLt,-]EY$l#Ei詘e.4Z2/.[TGDwP-p6ybj9Ǻ2=WwnCQLjZRWNij7<.x-v&lJF2Qy) oޡ{Tⷔf%C3l8qN'uvbd$%F_߿2 \O=ɴ:r.㼼7&7TێP6[PU{eSF8T>UVD(l9I:R⹽4+HH.Fy h\L&I ä<%HzW/ \$k>(eKfջ/U\2AeH,/۩M wTY3}KUOEA,]:7K2R"o$2Ə'{Q^?謦9QO.rJ 3Kց6՝T֥S̵ "v1VW4)$;p ARAFdoY*?hssW=O>$r R~GG e,torz \apMx4s2u֜#˺Wwbc3?ORRLg#oA(!0<&Qҝ!tˍ^6G* J5'b1F:8.iSXxDs%EBhpz% :Cטl)3bKsff o5R naZ{kǎh& |ӥ m S [Aq$ x=T-r}GK6릯фʋFG2b.%W \o\@ݪ>np;$H'q,!E@q#LX AAiV3t89]¨ 3DmkÀIxf+IО\9K%aP=hQoHgFQMLNYB[II%KGA}u5b0$NYD/W @pi 3KUOQ|2Nv^s5rѻĔ`5tC֚$<^ ]qb )N\(i$f=qGt$x8@ teɊ e9ܼ 8|<sTjTk:h2^sWr=HgFV9*#xBiAr+D7;nfR4m"vҨB?1RW\BHEm Cru0js4 VFةM_&Bc*B84Y:$2(֒tڷ(9]0CL0ö3:kIcuءL)k=vm,'D%W%ދ@=^OC-}^WAR^gܑO3ذjl R!+"m}!>d " Z-ITYr<rfWQ {7qHi+ZW2DQ ZNۛeߛCJ(ua3Scˏ.+2$ g콠p ױz_jXuJY2{9ʞyӜd&_`C>\:߾WGI!n٘soc\Mf(ɘ3yJ>T02 \8",èGB%u׾٧rոh ANg?\̣0Rj>B׉Khb5A,rL^ s{<+ H#FV7]ZtF2pwt6 A:\ě|9/h XEtCփìH~Pqv(o:GmͷeL~j~d)8Qr/k=Օ#\a>* y>%1Q*U6SFRbrL,L]%FSa;4֟ yk;Kt|#h݃mtG#OGQЈM6ɢ$OYx*aBYY:PJoI1µ7!!}8F nHB֐0OmryLc/)ѧjdگr Fof df=#7bR񰪜iQ٬ӖӗPj*T+e?*y#71A$ !p %cSar0Et:' jfKrj.Au{O T8 =Q®hаL O% ~g3Q۩i.4dr\>+_S RѪ tU`5wb2PbZ*4!0ØtV\ %5>׮ ddY2ioKYH(n .\w_õ~jwP"&1^shU6| V!AuȤ+IG`SA{ ._{KSw"CWy>5=_`BMBn2WHO;/~mv p4IVkð&bBQ*LW]5-qsSs~_8Y IM)l>g\zxgbC o +Ʉf[_~lTjQ#]ysnk@^ײv7khg[=7',櫳QRye6Gm<-Rt3dqg95nXk>cVf߬/ي Zoо)"ġI|15gR49 ÍS/-N ‹9]m2=tv r?YKm']~5 iKe,S.W5I6rツ4N8J&y 3j.})4BIgL %'+LsnK8;Gfށ%BBRReݟg$+|UXL `\R5,ovd67 Aeg{ %vK4+7KtQ|nfj'$3V̪.A+&}+LP<#i3v޳A ePex;"b"g2ZG$5a^厯?;ldo=k?CkkbReHp9I|o# :r,k2 {܃|I50*[ \S^5'Do [T4zszZg.Na(dcD)&I;]$F/b# Ϭv C3CZ#ӕ36䅱 8ێwA mڛj(:H8 [g ua>GkA)f͊i|Pɳ=UBQcu<@cT.`]Dvb^w5:tDAs+-5v@ePx<(ܤcTz( "Luav6,yތXé$bmSW;v7BPtZOUTM11-F ;q=Mlgkfܞb[v& 9kWG@yT!f' *78F.q>l/Y 1 5 صn0|?eT4)!(*&-aHhs%ZYHӝ,3Ǒ은N:dT=rF^n{J@|JY"V̬/c|E=$M5&Z ljJB^JEkgm~HsR[ǖS T1`!4:WݼzZ/4ii߹Z\G=º2sfNNIc1bpP=gh=>߲Ήt:}U}h\aK5WP2w7)uHY,BќЈ]{Hs%`o#nKʛxQ :i#fF ~-y0[5O1.v2, "OGptmX毈E۽ZArB@a7rؕ / DzOtWk4;HP+H'&o;k鿳f4Y (&P ;HS A~KM?'͸҈|+4[Z}x0T>VkHr!7hWC0NsxYtPrӒLd8XaxG#Ͱ\9RWЊ?q}#5>#y6EVb.f.~:kEDcE\y*.!2JFѾgTRҵhV5QtKJ6%-Qj@Y[$bO9.'! m0Hk >1c2-!?x.= eMxE4M:d5!fI:O-֐hVɼHw6^}@:)K,yDncz8=F]FsZ X>tD[gۆoh P= ~qěRĘhכּɛ3f E$'0ڼ5E=V\BhOI߈s) b8)o.w.qӭ,G=U5քDsԫy6?{jM<F<3d,PEzƔ/cWi}Ql\l!XPGZqF BhbK㬼W*gQv*3a.`=q 1fNA!|vOKIM'ԁ$ډ:0:Y,4'ɥ%@B%-?BB]q'XOXNzk-4 []#dXI y>np[Ѕ$qW&ď~byfz-u ]ʄ,ހrdmQY<; \oCKB7Sk&EZJ-]ƠXŝkBWap:b'MII,"hiv+CTznlTPS˘y Y8A,vZfmNnYYS.U ԖNv>YzG֬ɜŀ{(z1\rw)nr{8d\x_ܝz; z'UL 4ȺvډV S ?c57\Q1zB=z8>A)t+fv˥I(hN#۳7>5@"Zf[Ë(=j6-UԂ:ĭb8Rim[MJ;?X_V/L,CFI"&Չ5d`3 4-^\^zN`#* 5ӥ 3 (ԁ*%i,RGi˟e5τyb IaBaYw`%4SY,v|ӑ9Tc44JD|c5䆤KA_.Y0alK$DX0ܲR|10Ǣ:y1LީhL׃B-aeMjA`jg0[#+]gcpRT2Kh6vaUd3>1ȂɄ7^aJ3dbZPHD~T=TWAvu( ywU?! nKy $:f,ApՊ9DGZ6/p$oJy0%D L@ *hrh.&!Lk%Ky0.I/ |& lk^y{",͞`*YI"y VJM6|=䪺4)*ߴ Ln sXjJ"JN)=Pؐ#[rTH(Ym=/43uǭ/8U>տ&@1#J7IBg>%u$ M~iiJ|R8!#46y4`N Vw*nO[Q&'5B` bRp)lu ktMnڿZc朊C!;Qv?Y<:^xmײ*"Bmw{Z=*7]k9tEOʩFJaE_kU8J85p)>'GBt7'$sN&ϼ/JM- B'8 QƾԹCRM\x;}/}C4(7v `n cgK;@=GkZŏ {U\. ;6l SFe1\ƊKu#+GSc G|\3 G,U%,{& ХߌeE=8cJ3+?c';go|#9i-;(PpW&wZa9H-fV6UyEm` v^ۡ{f2>F:yw*O}܈S>0fUn?0k渚?=g8@gJiG̏zz |yӄ8G^TQ|%ZhM)k 4OuE!Lߛ4WoDB?oH`pcH튧ۋv$_B 4(6-5Ȭ!q@HHZ6LtJx s[ѐI?vF1|s-wci0q3\;sD.'wJ*5 x(7Wfjx+ tדbݠZ"N[pǮƸ .."F[,nu\J_q jSA}YV}?L8[ס+q\h\;`6fY+44vՉ_Ӂ!^adeB9} Td+ukQEZFZE{(]DTcb v+gMa'm6b%n7t4;M~cں@Mk?*NJpe$by =VHn[ߜ5g ] e~~z==V;ͬ$a^lu)YqYm*n}G|nz^Y0(Ұ;qO L w +WOH2xkNXUFj-}; eNmmn{T}}Uaיhivρ7r=;Bõ s&_n#y-!o~\q(Xkh倯fJ_)lzzDMl]$tv}n+hPB)`0k"8t~B۰ 3⩕}1nw`? JbD\ 'jnQo)o>lU!a_ ja;1i/+lGoF_$r'%e> NUr>b|QE,Pk1Sr$7WY@(LQIexT%B!́-]C].>𹵹8XK#ܨBfR<)!>P=(йυ$p3s*HDfW`gcUƐ6t9; i~ rZ{Wz5 $ }Ҧ!4eҀ#՗H-LyK5zD^j\LaH3 KJq! H⬵Gj sfU7̪*e]!!r>{_.^dչ7BM[A"hsY/>7~TZ)0O.{fn)tW*V p|e TjJNު2KMP3~U1qʔά_Qqy"@Ef]AnYC.S2R@',_es DӨ@͐h)avm.}`rD N5ם*sqz4G &ig1 m )Nuըo*64>^/ RC;ۢN+rȮb9 {2aTrl +wUZ&]V نAnG9~P<94,+ĭK Y7JlS[?Mrp;3_J5v\b5X rZ; @"8ĕye_1񄂱<~R&;ɀފ9o6Sf4vxGyUqдV)\ZU@_nbrZ !zToP=!6a;}ᶱ,7t03aNwTe^6lv)Ltn ܰ{-zJnv500Գ2%pcw :"2+j0Xu#q?p!Y]BݟM$an:|Gpvן#)+9N񒨱 ʠ7eim xh* C*_A}q-A}_Eqn,eMkFEk,=RN.C}Ȫ'EM^. _Bg?,``>l} qH_q/:~dh-7*1@SLtN 9?-5cIa>C4x!ߠplh+55.?ksA9phsQweL-fK"rz0m!S*)pC|buG$#n?Wc.QsOc2N,[?!AMqPXЭq/XY-HOK,05}dOY+ǘj>dAziRSכ?n{ߤLH$O!Cyt'y໵WݶMԔÖ^GEmQRI0;F-zc*|}AξzHC֋A/c Y'E\裤Qrߴ :nLVc]n^H#GEKʣ*~m0x̘!gzQʷ@'gA%F}jH_(䨒;rgO M70)!>"#ȑ"A,1:d)Ad`t <"׃Fy{KF07Ȃ`I)x=ZKH#}avs->QݞǸpVټ &Mޢ\1_@5S;eMLsk,^xbZA8J%'Wғ:UjloJRqYHͨo~!MCхd= q뤮FzMa' V* ,"MEpZ4K!OQЬ'X\J4m ׳!sq$7E}&b]f) +oX+9SiY:&@w ʧ4(ԎJq37 :E[LE]me'9ʳ"Vb z̕P#0}69=,xg 2_$ ^377ɓ昁{6| o?:-eDW@B/_<|9]2$jS|d<,=L%wPv y}t$NPX~[\~9ص}yu(aQNF)!YfHgHqژ٫- idQ99}mHK^lAVTe9Skpf q=Ng9~ր*)j>'_q$6[l5ϱg8]:LZv4Ƽ01l*ꚸymbG*KI U)Êgm@aYE< ( 割0 1W{|;!* v1h.XǦ4}} [v ;Ojy`bI?w' lS5EXJ5z%(b'N_Cj_-BGucg+,&k/6c)yCX|K](hIf-h3#BĿ*8!({n9.DNJ t^>h{ o !y&1xNs1 1s6s7G:[_F~8:m;+o[&%{@6!/P/,jdf (85ȸebHdKFgbpX j.;yQܯfm"2J?U&F d~[ ! *>1PK(9~@H$w()Ԟ'uZygMk p/b8)o[rZ6WdV?p3JF3Gݬb]Wt筲uw?)k}qWj;Cbgpi#h뎵an0sr__M(qady3%FT|(b5irrq?pP#ve ؉N76W}Qf ˠ|n,lxwo 4K79DAOhYlP1b؅WRN/I@6ۆƚyjȘ ,sҪRGz':'Ng!o_ds8-h.R\r sc#K4c+eWzs=?4/KpRUmTߛE|7\a) kΖƊ}0F6ŝ/.}*" r\*j=$_e 9A4mӎ;\_ÜmiL㎯nlj$_T hd ^lvo:QN !_Yka'y~wt U~bޜ֗4~+}Ex`8rdJew棭 x3y6r_˟ 8c*SA ga lӲy!;ד30YAsls"*or  k8,G0[5__6K&_f3zzSdK)ӌHz/XgiNބ"}_]BS8o{<)ҚeHȾH [M(= a-qvP,+tP!zyf KRDˈ뾙ӌPK \UX&'l:0,w`}L7eV>]=Q[^,WY;|9~' ;SQ#AbvO +VO^nm:9TliۃkUC Y´-ѽ% 6ŖMǭeyl, yeX7br$p}b`ߺxC[ )xk9p\&I4VK?U5ni}&ߪЍyb*+Ab}$4ix&B4-=0$}ߛwZ-4﨏W+b[/jҌ gS;qL!qq1G֦3o<)X>I\Ѹ't/6xQe(5@B/1%*$+X7#Nf#> 0lsjzg֡tu͵)&LF-XBAI=af2f}mZuW_ Zz%cYܴj:Z; ڙ|dryT;7!2_q|Yp ӣbN/8T앦Prd"s%XzF=E|93$ 0p*ck<FVn yKJ78$WSi14$FFeX`~&)Gft쒼J8Ҝȉkd'Ujcl048:`Ne'3)5ҷ7H#bÚy>Nv%i̬m8ZGKk~:~/,U5^!3?8$ y+!]iӜ.E_Dx(LuA'qf{8#1x02x0*LjX3YqӴ?{T١ ůxoRd\msCF#3^dKP)4${T\9 tkQ 5u0ְt0Wי)ma wJ٬+(yN [)kY,z,*#c'Y/݋)zDu-NiC2H~T q.Q l6?\#ݥanĩbaCϯfoUFFM`i˄bdLJ"@,pޱ{"$Rg-DOJx4(^Uūuas~mp6WpUjVmb Z‹vP+8L$&`MaUeEGp/]JLwTH&pQTrÞQۂ@DUx5=Ѣ3Eң&bu |pCw`l iILJu1x*'O~&uWpvPVkM&5uZ4)b=^ݚCxm)֩0#}A1xn)52@t3lwtleޅB_A,s`rVП\AeXE!K_yvBý6^BHo'O/ccF@1&yϲ[No;jtL/wg\Rׅ`Wx O^UߝӭV΍YjKL ᣍE3w0p3O/,L$hX`WTbvѐ,]پƧE |)r;X,pbsɼހB{NL7dMt(d׷iy8-]/CɃ4ڕRROΥ8-xC$_&\ 7 /G%i,3Eq#Fo-?q׵ HdNQzNK b\ &[f"2ʢJvע^ǢW#^KL`exRsۯpKMNMMn4~K c>g-QN(ZIB L%j9@ԯ6px8qagamY炚W ':YZ,RU,1\T,E3w.o_eK`ƼzUI'ZZT-1) !NA{@ܘJTi_M;XWUς|wK(M' +ԯg\"BUO0ŻE.o毿eyj[۳fnN1 JCGj Mg~A ۡ\xPBYbwuC-]v+&ޜ:jM%=M!o\s (dبw%gԍ+ % 5ߝ~iYZ>IV#`;&kST sA(UiI CRV.}< _r(PeR6G+z0;#| lSx%X8‹`q5kw~M!BM&vt?;-#0QƉ|Jw\0*d (&k_Zo[]qܜaGؓUe @s3|{*շ@OJL̹:^PXC4Es_vZō g~V<Fdkػ״ w#vp2z baB~Jtojr4,5n\epJLǻ&)/҇4f1ۡsfKciC6]Tם`'GNyB+&p.:48pc_Պ .T=|aGR[W 55&n*B1ϪreDx˥-$| q2Nq'ik7a1tڹl cRf_?ݖTEX R.Pu+W"m}}EvuCS6dzp@NHnu_oim zj:'X*Ƒڻ$ F <70z4\guFeR&a!y}]w9/QI4Qym}H넛l74 <%6']j,sWOdo͋lXffܡǚM1< d) ;jA7~P]!E$F}&'д $zw$f|t"Vt4K!$l] s%=` np4MF֑?MN{[ZҴogN4WMr?E@OA%t̯7oe$@֕| <F$^RZV왗 ]!p_-*_<S 3^0Mċf|c#Rj^0kUcDc{WsҟgYΰC#LQ7&vϠ|.ݬr?P6L@d8.`zH}*ldKFjFR}ZhL'C<#R[3ڣ ֲ=1fBq,u,Wh:/f翍Yϻ䧒ʀOHk(6>Ze4#3r3pN˱Aj_sQ*:^(m 8IdA6/>~/!*X(c<[8!0"ʌ@{=|w?|]8GF # p{vvDQ]QɌM ]sr&m= $47SZ7 \e@xY6Jϔ}f'x J _YEhQZ.J~'aϷM>u@Eɑ JXMʱYG^sfDޗ:nKV,g\*V*-@ڲ#~#=h\+sfV9B!E{&ݣ&!?ѺzKF\N!hDF4^bV&/Io;fuV"A.S_ˏAE)n0f\_J8"g2vRN֝wa'8g\c!/ϬO| xOܣYYju</ &ysK̢+*-rc~\G;bB8zʪG~u pZu~BF) h]Z kJ?p_5v  `4'!]08?2p<~tz#_CV<^ĀZ\\ed ιj+T,ǒՇ?8N7ݒ{ h,Yckd~l.p d) ?Ji؍ZÉW$c OmlCŧ1r׽\;C^ &~TV:v\m7ϱ BLAhCc2fs\)6AoL@Mᤒlm{戙?ySq{wCd6Fwf"o4s,}1AwȻOzs<.n "̻t,Ygڿ?Һi, 8|``"jb3)t~4<}MG¯ `0#wUP/K/%;*+9,̾ܶ~$Tv*yT3y,Ryv+VV s0&),\%t .lH>D+0 A\wb8fbbLy#0^l8dvYޒ9Y5\5՛s9*֢+? *k_oIyo $&t+/\GŸ\oK_ u'NWب ,9jh}QQ;eB q#.ƯTӳw Ҍ0 ^D95H"in7zo7)œYd"DS5H`/KRozIf/5urr!Uo'I|߱D-(GoN$`®$͕(TbǯT .8F :63Te|ZCon6)6!\i躼`s0\j"非'6=S ?$ q IZ\|+c\ZdI퀬b ^OGwnNzjd_bl^k\?h~AbAQ0CQ.op,I=dXh`rԶgؠxkJ7|=Cpag]A)e+B|1{)ro_*B¡?P<ח Vؚ Qb U7bl+׻!mW`C?ݸceM=Zh"vWk5ܫ(c/*˨7/Q-v)._*?>ۥE<퀒eLіKKo \~ܦqSN6MM=c+~EƼ3lNAʖG*uj`}J˶۽hKwDSZ ^`p}yKz -"DP0f(=ȦJz jW#w(AN'ZMBbk5u⯖{n{"2 F|8 5҃UUj"w_-U_Æ~>>NN㬜E('$D!+.bk- w`ê^s4`XĪ-^}ؕwX^(m:`e-Ly k2펎ێBA+Ge452剣Q]8><e u U+'u U,m=穭fɨTA_^}v&ib=O3+ r+'˽҄zT1īRe<"BG nYř|wAPE5Y$&2$ 5%P3 F́Xh9"e|V2†q^]j s;Cq(t9*n94?k޴KCփЀ 0t, d^:ElNu<Я)GHw{m+(+v߰R,x26虘ZH `ϕ0S\Z$^Y,}ܢ[*b=돐?IR zݿmznwOLL$Y7%2ʽ qD3p,KdlJ٧.=L*Q-& U+ Nk2.G()𴎂; ]1O%Y=;ʆ!Bͻ3\R9 =SCBTw*Sp>]M<ց"#%=Ճ#I]U %hPt!e bFD;#2 Q\49x(Z-e.!.")Hl?ML+V*•8vy])֝Kc[=Hvש(&at4HA.8W_P. #G8?Ej 5b~ HKO \3_<5w> _OkWT ! PR&a^g͔ZYE۩.5ܲd5(P`I@Q3nhn2ԿnE')\7I*-e3%fplKtb>'zrj.ő<[ﳽgkU%f\Nt.Jdْjbzb°oinF#Q>it #x,WRn+f" y B i߈ 3u 28phy^ r ڥqp;WhF%q7IW{B"f}>R{MLw$ bf i^B;ؾD4{-|*e-k17@Wr75d<sxr;g%[=E4=FK+~$ ̨[7ќ/iG劁z~v?mnt9woԞ[a;S4[+!$+=4R6"1B޿K0g_zytфsVH1'_uy{h s-C@ ~5\ {-G_JDؗ%hL{1H Ug?=EdJ^x е,T .v9.{%`>nXF$߲0 ޸s"WG]&T.u9k,$J6|+thF=#3|Kro` *@JGW$eU櫂/@BRp!av#'ܲW?0j)'AD~;UPZ:>m0i{Bbay(ӷ? !rr`BCFꊣu:8'bg%Yf=y#E Z=;y#BO$*/O0x(bY;@kf$-OĹ'X:5tSO\BQz;{&:h[z7{;|h\N+@de_Q,%_cC] v9 B'a߸rh.&Q]+=`\HZpXǾPWl8ȸ/yђ,5SYo@۩UZcu>QAb&ɘ5pP38gʌ?1H(\bQ})$SGQwڏJt3[{6aAU 6|" CGbI t؁PaW͟dԴQBZ5  0\+,uY:¬pt jea6J>njq@AjWWե@)45 |Ga(Aڝe/)NDOB<`|)dh|7+nY*ewC`_?;-c@AӒY~=|Bǀ9Qm ۟i O_Z CP+:4ӴFb΂PFǔczc-|ĀPtB6)JDcjuD#)Ez`Ko}E ['A)w5{ ncK\T:& ]-:}'gR@e}c/joCN[cQ'8Jf*f]Z+k:n\Z\WR_*,Af7r&e&[(.vVM \Ej4+˥ 5wi͞=;܈gm҈\*ԩ؃۰k7!26 an*m)oۡ"=-DIP¢Z/θ#|zmWu8X)3J$O ĖnP+a13c7Avy.^ :Vhf_2ӤF=&u;O +?rJw\h\pأ1oHqvJrCܹEM'2I/Uua Wdm(C]c Ata5?zNL5ö/X˜ CPxSWlz щ-"Mgܢ}}PF{E'jrN_rzY>"?1= Z'ED+,hE'BߓzCjߜgs$5yn~LD1_6U7`QmT Z<޿IKU \>Vdk5(_MEj"w- Ny%$4|F!I8-QV UvsƊ=`jJaQ{$Ckv_OX6`[kV*H Gn:*LV YfPtdђj ;i|߇#Y)f,!ԟūq9tAmu1TI<|?rK*(˘|Vj1Vtx_Lf{ kE+0A㮅eCKOA_ !i0"]5E$ KeaiN=~KˏϯVCh,%1t{x^e | ^'wQI: kM)>!'&,1zGRYaOc('憾cJ,-}LﭖcJD>Ɯso 9ߺ,jI\UeOq{3!e1~( ~%cD9y~ߦ~3?$ ?b)cPu02ZVPg3ʽ<0"`aijTPXՙAڑ;; G V%U2@5 r>c6_hɝRNԵIJ 0c/>-Yr5LtuQo|55zPrlV6g/Yl]p0U6#oq~xd"SknW4b_YtS\t);@(&v CດmKBj AO ЎJPRy0J#cC=8*l R'>gQтhN)<8l`~O '_tMG'bC6 nl\2? /!d\AsRڟV}PFSͥ=iϔҴJZC`u#7at[ȱ60V3 r˗Bc 2Vk0M%wR(O|B R97{سaݶo# gAY dƜV6vY#-o]=_qsyʅuy@ {^ߴf␾vQAS(pr΅ƞٯ /$0,Ziyh rs}5<ep..4;វ١yd†ْ,>Rbh*!0S{=rnYFYZ. k{83LAoU6lGß;уLLN7/|ׂC ”3m\}^ nw,B疮[@#v=TiW-E͠Q˕0Y $>yRH8 oPJm5d·wqYڲqcV\1!c<#s[>+ *4iSJ {$vHyub]NNO5JsW HEv2Կ^A6:WE/RsZi '0#ZRDZ\DA u= zo_,g`dXXj0" A'p<,1b55wUdǴP“ՔH w0xj19]Ytf:Xı1c%flݟt|O;uw?WdWe&GN7S&ZXRk4QA>yI>0Dj J+a昻Xτ9`]Iӝ]s-dMAR%]c0̯FT0AѧK?6FO9'YFĠf50.H)s҅UkdžaXDHcW4 Գs%&$Z."\xvEhraQ#!t[J*1Ii26J-hj,%N] 8DIH:Oš=Su*UsYoRxlMC]V>W I~Y:֪ǯ@GkXLc,gqQ?Zަ{$+i&N#p ;Ze0Í5/bqƄ5Vi3ÚG)+Y6W^mVGh9Jʅ{FW3Y0C-(U\nR0wz_ :BVQjHf^>{,4dхdlkS2x,UZ YunqE=7}j2?/- so ^࠰CDf[-&$5L{?o{ #s`A\)`#̉H@H.&- &Hp k` `c>8#@gkQp)[֗{ `+eƵ:O~|i:m:bޅڭPLv=zCf y^DEAO>Z>1@<[U *I\!v6e 2iaP! * [XDN6Am<;m@3ѡ ^Cjav腰.~XGSe kXexHT8T-%҆1Wj|W\@ W?ҎroDn.r{}߯ ! L<RkLn ̸\fg. yyɾxn6)Ԟv'x۟ 9Sk^XMf_)hv4-h2ǜ}rVW[屯BB=w:g<-NQSa$5Hӽ,R[ؽdN.i]"=F xvsQ˾2*aᔑ&A?qkU&)uh|k~;q'鈎p3VQ)3}#F}j51ӒOKώgS4n*i%ͤ~lJk`ى蚓unpCDi}!$)agKߘ?abW ,9lst(Lۀg?Y;1j*U%0֦L0+nuW, x#dcflY>֓m .Y߀ 5Z7e|Ff8|Ƌ]) ~`z [bS'1W]h5('//Ҙ?VUL1(t=*qRR|Ґ?Z؁`-f e-RU ǧPa=v37q?mF~[3//7v*@De@R y{g}Ƒ!fK!9=k|cqfhYBWYql4Ei j gÁPܮaF5]?9[?s%2E$f2\kP% /XwWm S;2! u+ ^ĥ݉OBz%:F$JJ{:$y\AqC {"iKaOBwz\'ynz\O_󈵲Ol~Kۯ; ZטMՏڀ{0Ut6D8i9 jt?wzJ%E/`o_IpSڗV+叒\5LokIy--):E90UP;B/w,N*;w**z'V̘oVI=v0"O7q]_Cm9UgŤGZB3x'm㕪mhxkj[29TbPg OMue&0qڝ!@2V~N-Saܴ&vݩǘACԳ*>f[ O?IJBV%2ƶ*bZK$/Q́)2kLe\$0ti\O,L"<FWNl7&6IoXlt AArf t"c.g8藏`\N_bvW ʘ86n GR/BQ@U%ԗX`| Af5fґL=-J]B_->:֑`! %%pJS(N .`ToP(c ^NHjL=: _p{l{P1y(Ls3)w>@k'P2Zo&ʎ Rhes~ ʑ*j7Ra~#d 킶S#sj0hd/G!OփO(НiK쫳|Ls6e=i Su5&[}=fVG-..àmZ-A4q,]G }F>ܧXOK+lQP#p N47,!l20O% lyvb$N6߀1-fDg6;&? l:\^^fWFEUmR]$7nO6 jZͳ&\)4fd.K_<])^'ړ9ܜ\ ml^'ע)iT㈏RㆪjeǑ܁jLde> )+27ph 059J}u ~b5{@T`pPlG\?kX( bռ%6xlRZļ*l)<ɦx*~*rDѳ 3FSVQU.n\_y}f=`r2y*A˪"Ьr<S\A1K5v{Uߋ1[ka.5KFܐ(򠃧Ud!n %,e:&_J*Pĕ`]nS-4O0ћ%̷Dn \pUӎ+w7PTKI3kidl\RstXeg&.dH6IP)5%RϢ`}[e;vuBW2Ph,G{͕+C?⒱7m?#r#4GF]HWg{-%Ŕb8Ƃl:?ʻ+@8p;G#ޮrO\lz#+,H&D򙕹u5@}DZI0gMu0W q{ n0!KcTĹLF|sA4nl*<8: .l~=jƌGƍ4oJz RXxm4dZ| b&#-iBY7E}awi'(PMK_hK-þL$f;Ŝ2g*"X-m{uja=̵g"D׾qKiCƻH̟u|d UcNPW6 Nok8V/>2 !zjۡ5ڧZL^)G&'V Hr>_o"?UNmٜ)'+xAsFJ1}.%0% a2|'sMs8iO1rS@U/;S QLlxo}"|{Hp0*$0m%JT ZCZXN.Pdc|i|X:Qf֊t>ūɚmtđ2 6$S2D=rkWc63Cuu8'u}eR-/y'+\7;AI.xbt`sLd6o tK-"VxCM-&1㍢;rl"JX_o2Iʍz<^ZR5Yyc`p} ="xV?@ɐB2GIƆK}<ؿ3:s|<y$kܯ٬kc˷pgQteЍwv^(h@dQ&ɤ>eu%V`;j,wESn2Q6íR?$ܷ$o5jz ݉YW_,%(x;!z*1D3|siw =!x_&n?wL|D;OTY˂f1M"?7nwTesEo & Oi#@qAmizEM>nTC+b4?bY6bJ'`" ͨ@%,/g7'T^0q#vT!aQ/ϫh{aE!mpMD.N xOg`&&E FA{Q6 4V:˂9oC╚-UsdjV{9G{*`/ߖ^9(6x]JujRp+((÷x|PX[ `QpORCN.Z+9ſэ }G֋ƕ'@'-e%LKYΘZs.j)"?95Y;Ydځ,;d'٢ěpj!! |1C6A}5Z2]^m /\7և$ƨ[wg8hY말[4Tg@,U7NG~#p+jvh9*RpDEj|W)̽MQυ[pN jH#~`צrÉE-{uܬ܄A!+/O1 ЛLbù:iM{J1o\~ZMN8Sz%Q""E=t3j5gTPay#cSe18j~^,~WWZK'vF}*7|fn5>FY `EfK.օ'-,KgF35ގko9)` WDغiugX3P!ʰ4>4uАT_aY8U9qg]Py*m E0os>TW8rU:G] æqO?s eiFј&V9Z/i(v~b+/DjX@:JI; Y#T:cTi0I^SR\@Ac׀5F̪uƚ("gy|0Q䉒ݼqrx؃3h8N&!-( >aX~2}&6h)睮z0`vDM /4U ?thtnyK$qط\jKQS.=%fgG,H l tuT:$FX3e~-|ZP8ZR6B*#bH29 ) et mM^U!hyŰYsU$ ؁)}~*b[9zN>6Y~h$86AꯗVV? G9mr/F1Y loH1 pIO!Q+ڛBdco/yi%/7L9k%QTe%.^+(efiVb(o2aAZ AŽ%-MW -2ojJ$~J.<:P0YP-@SQ,4ۑ@ -+,©clMt"7PhN锷D=UjbZ{mˬ|6E]ǤWsybYRlbiHQ'_Kvd' g[S#_8 al.{3e`QE*ĞIFt#d 2sUXC?Զ%O4%>6+ۣy~&72502ͬۺ`L_ \uLWK>o")9Zmyw'vZC#p IEi!`9E+DpU{maDK?I?g3sSD^oheGXs)LaK>PEf@IS?m{@F/!-?|{PNT0\T/k:lK1l?7!i|žV0\F8p|Mk>?}Scxt1τ၎HKl3-9Z)7M/r/N҃<@o })8`. 6)'߳t``ABjY-TB3VsTEb\b=ExUwI5' 1 y,.A3vuc_=߽IʚN$tlEHyßvJ;G-ssh'Wf~I'_S!×]m+;Ƀ(*P"xqֈL)V=br`X8[԰gRU -?z˥x{H+i>P| ӿ ld%BZ-qt*h HzhzP1~@Ǿ'bkؠ#& 7$>tiJgb&d~ Wb<" )rPNKC!#l(( ہ`E=!ȢKnf':Bf8/'NB[WB G̸{d!|A; Qt?$D)=ccu1+}9MWu)o+ !uҽB կ##cksaKAțwm:9ײ}!wK{hM `<`ɴ).#Tp%68"pXvJ/[a=TnZ Z?Kno۩رح :/`-!w`hRN ?2Q*XZjd$]\8L<4m'4U(7nsdLL0dB }:- Ye=y )awbC@ #7z5q"`b_LWO7ßo/=m_wImVV`+Wn]̎@Ҷt]Yai=zZ IkӔ)!)BU:z /V{RKϟ*afMB{ a2{=A]D\f&ۀ;Tտ)^,NV1Uѯh[BbLF b 0}w|K3  i3 |a i5=̐ǼTQd2@x>[oPOcfP]a:Ŭf#E?o ]1 #%vӘ#rˡI*^#->Wv-Yw&Yqwf]߅XA`5I=EdMPa2%im\nl֡jZv-GSUtcyh[jۙ<`&890n]VJ+$K"\nYkAP)_@MՒI{zA%@m ,'rz^L~vaDOg=IzBmDZZ==eTֿ6D댆t-a[vJm܂=lt0a࿧9& HWw[b<%@ =[xδlg{iZ#9z5 |7sDvTQNqqkqbZ{e:Z5Z?lVdQ(X`ijkd887%r?*0R oVGT>V@U-nH#80*ū`#9\w[@7kBf$jĕ&첷ػ~`Q*/R(ޠ+\R h ..N!S 8L2KXHFK yEc`Hۥ n`P0 x  m1(h_KBXcG5EM5Lr_>yXXc&dn<.YXT&+} r2f5kR'ƀ)j>@9R&& oAS_T"*O  -o%zk {<}̓I?csQmǍFbP d䲦~NAΗ#n_&WYxC?6hs.^uNw9D wbD OSABW$Dž'i~oTި9_RH~^fcU$8 AoG!A,ڭ-!030pȹ91@Au'rǿ0’Me!2[M9Rb 'F!OdhyQCɴ+z QģҊzu7}ѾrCb6Fv&zT^saPWw3)>1~D:O[:'*U Uf"@|&56 Ӳ?59.=$bA)^_4̖)lo4݉̿nyAbUk:||'AMEqKFXѵ{CEq̈8%_r%JD+B\a\O(R&ǣ{F# */8v9B/K0z7m$Ez̀?M%ٻLpXK 1-|=(zcEB=)uefmG!W dn_{P͖cݭu`@7zuK!]k)YRacq4h>"EK`>1\%%wIVIWL&=SS!VʍlTUf^q&[ژ6 ,C4L-!HDQuZ$X-@m a/{.cz`$vTׇ`pg2<j<{߃K3DXNGJk $,(@ƵpJ Ix<j$xa 7u90T(b[vԸ+<9,~~h!W0d),t4%W,_,m-+*-;u9T mֽ&v^i}q/Vy.ѕ@hApM$LPn)t p|@Ϩ0m 1+_{p2k`y 㿿%rlW.aY2׃\1M|5P/~u [#G+. ֽ.TB)<&׷p Z9a(x -l3 d iv d`v3%hV&p=i y>ipGI6&y/ԎLo~|֫N#?: L]Ic&b ==)r/TIlZ|ӮT7ACucl]kEkOup_hb;X' _]ϭj2!΄*68;E1ؤ M:O>-Y<"+(pU8o^Bܗ!?>3f0 gWwZɇA(;!%+1u @q0'yp^q>9zE()ZgvRSUݶ$|?ի؎b\L#J&.z#W=t֩ FqMW`; 5uR=#Xu‡a}#,R R/gP|}zAU] [;Po͹ە"#[LJZE|,uxU~gR&/[ř-ln(%&\2^}xIkCA/{i2}-)kiR5 olc {``Ӈ,d7OU9w~;. 'YQqit] %y{/i*9t2gįڤ@CWb|\d2p8}~ŕy _SZ5}EԇCO[=NjXb7iYkM1/K(ټ_]f9Һ*Mْ|;Xqev2_zwxB3ぱWQWalJP mf)~|t@Kj2!6.AJ],7 %hkP&7,YE4aWӟ)l9Jcf$7:ϣH\ /i[Vy'\G`S􆧩X/:> maɢVN)|Q)0$> NM?_2wĵwdXiIkjb}.N'1zgp?!W> |T Yy W~l$]AwӟMK8 U[0ڊǪ ?W58]o+FdAOVbcqE8({(}(Z6#r=#G:w4AMJPzAkad6㢄sCđw_N (  AZץJp6 ^'Cx&W]c7:@3Z.)<}ug>qu9gt)d+DqU,ETSr9CғE#ިŚ}&חHnׯLvDaނLT8#+O P9 ?e5_t)uR`RL_1uņm Rs|̦eJo=P$bC桯މXgk< t'w;^&5r cYlwyfu^)sVmB xʯh0s,PBE}A6!`zcU ƚ 3LWU PD*7gfoHѹ H$@;K,YY]:7.H䉴IhB. xIETy2Cp`km\d8ҹ.){Yu~ ,+j!C O5/xbSk/,3.dM(gx3 AXˁ>gTŽO昭]i*-Z>%*H|O ٙ‰EUƘ#6?%7`$qD>,e6M9 vqwdwC+N~k>m Ϳ$p)h1uMXmo~LQxmKIMX7@8@6TW^oG4z%Z Sah"Dvd֭ 1D{"W8dUA@3ax*0={Bw'k|rM@?Gz&(3[ߢ'`?_;^Qs4&l:Sπ%ݼqRr-96mXdh$X~C@PJb4 U˜%ѱ}a w~LM<V@"Ωr2 p koyd&mU_Ƕ۹D8Hٝu!cXu+]8{ɘBoGj2l \)HMz ="E$YnˆZ؋u](.5yմꉹBumƯnftgX"T1\5}4Oof~)jh 7Mʸ뮁zoCc'6+HxG',i7)c/oЕZx2oW2o^9RV^ms3Y+rJb03Db# &#BJҙCݼ/)oz` 7aU޽-ʬ;tl2):5CqMY7eycSJ%і4i$mub֝Ԕ@W8#57x#VIe0Z7T Z SR{H*ldU*؞p:cp kwDI_K:I,{'wBHM4<>ŻiGG\a;e61'eP]\=+ [ŅX%?"YJJBfO7usz慓s{o L<Ǩa2'lS•UМSh [Wr[9TyhIp3`x^:$궳*:ٳ]׻Vg?3#IiE4fPWOӑnL*"(g`DwJ!;{ܮIУӻx:X37l/>,_Ćv!n8)Wz"W%%HV]e4li' UD?63tw=t_Ċ.B͉ďQrYmζ] &ErwT8Qw$؄;> ,|YsTmQ03ޭH<r0vb٬ʀeb1:}F́E@K r|!>V-CKbߚy^G;PfT`s.[nWCw"Z<pTc\Z6wK}oѰ-*=,2 @|06bz\ߘ8(mn1k{b V0H̙7 1Adc_siyr?gSxjц:ΑY 5F J?GjWvx7%y#@ "=5g3i񟜀bOЧSVX$Y+\ GzU|Is 6IFH*!NoO$NŽ"ZN;yKO6C'/l-%",3319.9vj?k[Ujc ,s9X '/̑y8tC",V=YD-Zo-Tf<홉2kw%Y7|ϚgjHO^{VuڐBK|+w;cOW6N"37p iDĄP&VU 3+7L4 y^d lF' kٗ(\Dz B/5Cu[y gxZf*\y4 V—hȢ@DOiEq*0Lj pʚ[em lf@;z:5f;Htڿ-n6Sxc9􊟉e ~KlB݊)v5D] )jOFgNUJ@#eνSӰ].А =䪮 *,=ȦQ/r4ϧ6A_+%it&RxG@BUi?u>V%;d o̦Lӄa挥[׳M=mUD1]WseBu@_^Og릤?">.DsgwW{2K;+óT }(.&`| !5%h4= \}2*qzUiir՚[|^m7LZUOF_a1Ce<QJys" 0y9n$!mU$:f&4@w2;5Zۃ(mRh2USۗv #n8wOY{垛n wcîNP—Șp"\dO8D{݌2>măIu'v\r]l*dRGvti&)nj}*֡-̨0`$qF,w+9"M9;k:&m+acJ7#oaVQ0Zb RCW!C/@6qJMe>^E,EBͻYEIv%DZRR<#A34 KzP\꣨B!D[iǫ/ߚ@+F*]O۟ > Š%8x%E6_Al| n&Bi)qlf$ΉLyg,m/#q:cp}Qif_Ϲ ylw&9CWٔ\6XuA#T'[';!7jꓙZW&b"t"-"g;e<:.>;:1p(mf˚9X4l//޽Dap|H)A3wuES}="'k#&%*/lU7 ΋dmfƺ%'~?GXpEoP< ;d5F0QմQ]$f2Yx#I?@n@s<>%$sOx T7ȺZG5υiRɶIfyr#^ֿnCM]vg;ȏ65eiJ(z.b Z, >#5]<=(8mi!Eؠ=]ѝ))a$DzbNIo2 j#NA.雓L.̒4}0 u+VVEgVyz:Y#BUhN`7H#p rg\`x &)7q|Haie J5L+O|?ƞJW֜O\∉wkjTq vLL2IT ̕⩮OrΪgZ]d:`ǧ:+ҴSr2Kb_L<12řPƘ.g#7۔qLUWR΄e9A2 d/<,+XWI?=gݳoʨԩoϽ[ VD5H gVLYmMI9Ѡ?ZfWEh%4C0[v^M᜺¬W(k8̚r~@u/ D`$2(׍+D%d0g!cjh"]T?5ڂzu3`:;јB;GO˷{")yTuV%])-eҟkTW|;Kϻ87SseQ]:Vohkz0!Hc \k-HmRF=mrr8Nl_3uwntCl+b3 VW(ԎivM 9=bR٬BQJ M^jfْҬB8&Ao1sMg M=Kp>u3~1By&H[HԮzrә.SH2[c!gceO%κe8^\‡%Ba49&+9 S1y/4`㌕\ŭa{[<ߨ uV-mLu(;3u%poO;^,3^. >ص0oxvtsI{v y8({hZȞl`lz^'zmNѭˏqN僮4/\FI率rzʇ݂[ݸ7,ьUF"ќLݲJx kE.dfIJ.B誎˵,}|˼;ƭB/u$`$ B"YMD\%nRj/"W]oA!z:odt9be&l=֖ #c?X@uR|%@"FƵ!*~N±h{u,?x&L| ڕ@60w,/NumRŁk~_D5Z'U ~b$$Zޠpq-Dž]N,/B҆W`Ի5 t#cP9kHB常P~,`H+l/h̔iw-p;KFEketwz1'N`lh% A)cBA?'ǁOInE _GTV z 6E-(5t P,5NMrft1-#îklTtdAj%`7ZތgF+|YkGoe,+>݀GG%҅!.((9:Ǻ.:gvd 5^=-`}}$h"+h Y$xe`+^n7yn _H+Ѹ8Zd5Yz̠d*7YZ.9IZJ͒N2 uBwۧ$Pon'i8j2[0ȨX׌op 7'M BNw []:3=&)ޔ3j|=IHT@sJDe(gLx Vy o+>SVߞ_j0pKŎ4pΑB^b-_Z̪*^k{kCP-i ZNhQ(>ʦ]C)u(`+| nd6^n7_o_8u~j[ \2(?ﴭ#,3pì+ՠg%O|7_ K~u@Vݖ$Y,/@``xsr^hcC[\agiq7JjrQSW:_jI'e1a\lұLmxF\ypoXwzbmXe!;hѧVY|( ߚ@y ʍǖ^㹧:Dfχ K-{f꣍Ta{Mx'$.2-^l1Q+YMDX r2D,'}h35U/=ź<&G]|22f,kW$g|p}@]$s]6lBICs%TXdU櫉}* In̖;flv#bw.,"[M`k!ftR|dksߎ H@\9VtĶ#muKiWn"G{?~Bz '`<Ö]"[c1Lbr)Z6toͧLƒ(LutbίoJ. u?ŞzxcݨaKh^,#}+XgGY V|~9a]MW@} 3몹\6kS^Y9֫hE@Uh9=+86| hj2 y yD ^^Χ WS*f/6 3#`x12t{[~_Ts殫DԾT G)j.߃OnBNe̚Vg "x*7 i2ˡr.)edKmZ @&O֛=NJڗҬmBE.-,JC6gB \]:n.5 >g'9ʈRKjtClG?Fk.1 &2hb^U(5*;a9 M^ 艘t(\ )3By %^N!8E<v-'6) AtѽLgPaU)eTGaϜ5d;ho 9Lf"5P/m<;fծ3Jg d>yM?䰘"=w[qٜ~n'c8qɴL6 f-?V #5n/=YegA ܶ7WHa$A˾-5t ^Tگ{B# ¨$Ml/&Q|nK #J3M3ådp +yA!O"xlFpF_ TwGZՒ?W-'+|c?w=-BiK8Lc֡ X;ԲNH[ܞafk<VS㘽F\lBӼrmj>ȝn[!Fp1c/_~0_"PZ YSg@ B+K}3>'41o3 =\vK 0x{@km&f۰L[ħBY{ B@aun% r%8? 6mlUr`JvN\'%DlvSP;7\#!I? ]w5D/kE>VؾST mHe+|V̉Dﶹ8bqǸR;B(uwXq>:i V{Z쉪NfkU~ud~weR* sV9l B_Jgȋ#B6kvNvwl XQ(C WIu@}R/1(i(K~ DHt2HX΃_;Hd0e+|Mvom20+$C0_=5lAY0QM7e~;Wߒ S`,sOhٵ}fj;WWR<X #`F˯~IC QWlP}/*{ve(0V ypÍtװҟT7ѽ;OC\MMoe8'zh<栛C?КPMHĹtEͼ^z>0uyVN&Co{2EF=$Pݜ|N^\?W ]Xa:Ʋ~/4Wi.8r`=ajXnPϓ`~2OR2B?/RL(P}pN ;8 =jsZop# e2:MU[Ze?1zEP(,{X,NpF2>o3(uA.]`LA7PZQ} Lp'!=툣s8C0+#:jֹ%:gKQ;8x\ |gYZQ.<~EzU7p%e[g*8uR!AyL*Ql yh->dFW~.z1[)j2gВ/ }J"9R)aJ[٩T A;79/9Xscjodu> _ov ӳ]y7F"caƟ9ըvMBu,=IV;(HP\N ^&v='B-LHʬϚx72%:h330 innNvèU 0O6YT헭<]us|W{n86_ZttŌ\=/aC(̑5'@V"{f\gǕ+Uہ&$La):{Ͳ~;=A>]fh8K}x|rye>O$$` 碿Shkee!xZ 35$b蠻[ف-m%n{j7\`'n46-]͏+EUu9rPa> 9g=MaH*`tC/؍ Ktio|G\0wڶ;:)f1TL\C/|u#+_wC ?wW+xJ-\3t20SFp#J.lY9$^ K`:_LAUJ^;#352rVj[e\Bn9Ԁ~D4;8iVk6PĈ'7 EmRvnYbwZN@Zζ '.!XmG](8A6L,ubyRQ+xnD&SUإ:bYχ_;CXen N֑!3qނ%2_E>}:w kûDq/9?z$!b"+jRRY]m$Y5܌1d|ӵxu.o^ NO2>Uw~yrL dɔο5iVPYg0HC(xҌZxLr YfH6.Hf#uXc)c0C%dW-./u b^$qre7 LY@!"W!hy*RKKUuD4wQ6ݶԢĈE h՘ ‰wg`!˽5v:;w4FTꡤ2},D{ #_ +z3؃b{6֔IJ ֽaH;nOwp娣\W)ЌU~V$ |Gp ۪e_;C%n`ˤ!ř¢qv4rlͭuMBNW!'ENj$}`:5C8g.jf0Z=xkROOW VK[B HYѬx:>ߦ}', Dcd|hj5MYvP3ҳ2(INJ@ \t) 9*͒r\L@7 UR.G"m5Qp2 0 fvwMTzB9S0{@rxgz=~}C`SrVpf1z91)ąJּsyTm^\`,3Y^sr̂. tVlF;a_47"H q}e7%1D|dwBԢ>) l5r?ֳ [͔*WF?*Da9KZ|/ &IPd` k'B+8 8иx:v:<ܬlkDObm:MH(UˍRGfpgDkE}.}JԾq ')xqvHu)V֙hj!.JMn8>Bxmk-ফ\FlSMM5 " y'l0ƙԱY]qzb&*yDR:4 ::kF l (N'eJZY=%R/*H*LJV` H5u0q[+.*8-hyE=flrt*$K!XG!cE̿'`nzb C@3=Fnú.Jgim^aa_5=Ofzׄ]x +]^wEQnwhS6uugeaٟkD aCWvMc*Jϲ5}+:8dt8QY{'d$s: ~Qܧ')d\&)@e5 DB߄<4@/S ZM qV̤ҿy:Թ&Kv@/iL ک-;@z)8ʼ/6 _vc+CDÍCĠ cwQڴ'ϢD{{ bƬ'L@NQBJЃEеǮ̈́@1羯O)ǔ@8ǿGJ4>Ki,b\ bn1=mn#ڸ}?@@e" 15}X8n_ wEG!zQ"e`"/8}e Y6ۓSG b9luXJH7?' i}DgŹ6Vt,@1Ff 2+m!ű3N)!t҈ߙv;DJy\2rwSE8 3}ޠaYϏ}o4Q2ARR ڴ8h\dcp ]P47EAVyH2Ҙ> .|=Q3a*9>YRhIM7^D;|x9b$7&2AhU x- :L{ FX(:M73tliۙ2|Rġ V!:b S;3vDMIe[uw䲊y)D$O|_pjZl2X⣉i^9F}/@5MI4VA x, !K_VV'&iJ.8T+ -TvMx_u:j,'\-\FRZ_V{#ƿZ1W0F>[+)l~h3ȁro|L2w` 4vFHEy6kJ}kBhqc'ee91ϴ|-CXr=S+p'űWI,S5:^MNe;6̣Fj\Tt K[B&@~qd6BO,[;eb%J ckf3;jޯ~TƝ&Dv މ,# {G==6bXd:ޥVM{]ƣ&/%9j (3O.LfۏX߭5L S0o([o;cc/#ޙԣ' `jJ\U+ql2}GA\DuVuS D:OqEeLmM:7j%BٛLs>性2sSrC*#O<^|.t u[%}$/OuSpŁ͂paG26אx1 Q-I)w >[8wbe$T1Eu&N8fG'm Eo )+;|Ggg?|<I>3ER-q\~4֓"SS6us/6, 9c6D:qXn/Ja(\`n).-UêKG2bɑ =A ([MA<^w VailekmWBQ:f7I}fh XqDs?;aۈ8N4/cT$a`G〄]^9ލKQg_>L^:6:f2}xwʹ{W%P6aeZ-Gds, cZ @,%ضq;jL{zÉYji%VJS( F<EŌӺ;W֤3KxߪP37+^tvAD )wu?" <<|vf#{E~*.LNb 0wS-(Ik-Hӓ^ sl33?qnvT'zK3d\Tq.X#Peb!]AW,3y[bK!뒴vXGꩢ95@ Yg/HOfSxeVҌ&lzl*bR0Rqwj/M'nWk)L?L0{|'T}Ë8~;3h+S oa{PUծ\J.B\I>3yN֏ӎwB@7>ޢv؁F~RJ Ėmu%NJw ,JJ$imUB%7%o7+7H}A.ȭ_F jVN&x*p7OuKÒ"Mw -o9A4!&trE?ZzhEgS24jC)nxܺ4[y:J qO= p= !N؄Z罿gN; Q.V0)ưc'YA !PHsCohI,W^0лC d٦|8&x P৫X,%~ L ~Fv:5BSrSكiW,X]JΖ[A]#[XI ʗC(+ Lʸu g0T__=0֑.X8f;j?9W vSJХI >DVYf5(Tb?- ^"2H[P/Ju{{oFp5wP Kc6Fg㮹>dC6읣N2NuWrtf=aG*0Cfc> ڬ3H+\ٮT靟 ̮dZlSaEXZnebJ\{ gL$*|}#6"t#< 75TP(U( Ele+ KEлi"KZ|b$^ TJئ@8o\<%Row ="vxȫn4@IYضf8O%ʡzBZZO,ƒ*}P&-4=XYSV %# -yDj B(A4銪Eg%{4h Ҩ!ggveѕ`B`skT)MĆ%(z,fa-Lxh)x/CZ ˄\B)h!QLz8AsqilZs?ࡣwgAS5dV两Mj0T M99b<1 K=~W ̵i9kus[W $=b l?|Xy9#Lblj9aj)KS'ĪՐ]3x0Ve,l|nY5ϽpE&` 8rHcܸ匇Y $g@CdseM.ad*?>&v9(*TPȓ3}Vz&_{qJ,\rE/oc[Me1Yr:wڏd‰,2]uX@]׊$~k"/DboQҲ**#] < ܸ Bi*Xr.5p8f@ȥ=J c;ڥ+h=[4z2MSƐ@\_I`Kx!@0RRώErK=xGI~ӯ#rbZ~O\߱˷Uaޏ~'4ˍx$,o&qh~*D+; g607fi(8,JqqEr|FĒ#C<\\h<" d%Yk"@F?_ [~,dB?Ky+ G|}flOAv;nϢyw 28Ip(a‚BL g3BS er]6vBM Jlp 4sD}1xĸؠF)ؒ/v2b gq&5mNqRѨU;K.7;2r"=mĕ=)Y3]>^5UcnSZGQR~$Ò8p+u񍩰~ DWf'_3)ܺ}^I+jyBR pvR&<;~NC2z<>+ї`"-J?0:SqQ $:ҰVET2utL:u e \Zkw]+/'gjZi.MQzaޒ.oi!\%Y:BkL:w&E4./gDDag8WRD/ ԕf3Y +߲{ZqhlSvƪQ Ԣ/ea R9y;G ;>T~a"up!>;,`jPYַ1N4"ko'i^V,F]?' K<:M.N; O(AB)%TO/. |lƚqB0yf%uOz ^R&@Z4E& 8y͌h{!Y:Y!w%z/[Z9B!ϭŰHpOkCT+4T ' aV @\>MЩ8+q2C89mv' zֵB.z[=BzFnmW߶g 5P]K(G1#ڠjp,fj9*=Z4Y*@as"UQ툼0 Cq`kc UI8q 1gf@ a),j?7ky',׵`ҷhm*o?-s!L gNѭa:BapelefJuS3Azo~P4mɩ>C(vYq,M$ނ2zjXk^ɏhP$ im*/!c֕Nlx?6@ }ƭ=5{:ho&,.2LAE1dZ5o[Z!''Ӱs,ʺO O7EйR@74TIdJe8$sfGUB+ jb)nYvE%Θ~>)8(aWC3 }PO>]%EvO| qnd!`0iܸ| bl󵸴o>)w(Ha[F@Dؘ{r^#,*r0xFf<#%~4?:i""Ih`FrXHDKڈlwUYVu MC Bx833ЏU( ,vWJ_:~yV 0B Hi*fL<<K3ZJ+2j8*u[QͫXNg0@ا0K[> v[E y̠ZC1};j s(ty Ϟ/ L4"\Oz@lJ3t>{7{gfoM?HWWdCE>봥&"9 g!r V2>ߙK0a8IM3[2TA4r A\F c:3sgLГ{JA1zy!R-m'ξu-@ŇE{a떒}!Ktk wW;:HԘc63ME=DҬxxmZh *rdf90b=A2|0IĴȯ#0R1Ƞ3Eda{,Jk5!]J& aj,UJ0 nq0 VIZ_Up.Q'> >YpMBݢ$7Ge3<Ăde4o߷3J\rk\W5rO"Q:oyK:)U^X§ ӥjp^>< ]џa$lˊ-?2^E~- 4gQ'' DUDR+(F PqФ<k cOG}Q/5WO/^,ԕ ,h;nw`{hJ79%>NU$&W]JxOedk H q Kaϖ@R.Vx  M$ 0'1 ǫkMt]%Lc۬_A97>Ad;6M,aܘܨ"VR 8d9uz@Lp2̼%$&԰seH9 sИ`tu^ar*& /q*WnRJQ4_POu ɵTLp Ɣ‰r,}4DvmI܀=`L2,I"M vBQr pU߅/=W[|YMPk C B.e=dRє%itd3ϸ7dBm ]vJr1-wzX-a)k/|jq'VAAz|{#I|vbStR+*HQL3woS] Jp/줴 M}7/"?[\0I~SD5D9 m=%]x=T* wIyOatX)s9Kʀr/|i*Œ2{LLSѝ_]* デ8H~m@vUMO\ =7%}'.aņ܎fCԞB3W'䨂l(m3otQ(h9iBۓ]X|Y~}t ߆HcC‘"QwL#Rε|u~5됽@Y=xK;7su>V}RM+zA(،N rjr2!;]!myCOc>ؾ5ZbaMO4yV}΁ Iu"Zx/mN𫍔DVc@f؞U&BΑqybB ldnT)NŪtKGFBHJ)kZ4rP*y^NsL[d6(D7e^ /UM/ِYyC!U87kt+حV G}PysT)}O['Ռ| ){\>%SfŲw()K܆;hKcߺכEeuTF6dx.R@!'kl\oMO>Ϳ}(1vM)bC~uɖ/kvKA]!{b\Ƕq2Fў l6h7҃ eد ]El ̜#%qؚ́2:_1h.Y7{.K+͓tRp)dOp7̽ i6y䁉ҝN#5J yc>6%(yL%wJVSptg*NRO?#ľBL49QU)y`l$/ĵQI P|_+j)ٵI7Qz5ԂݭF oN)ao}W߿bbX mgTg$„uF吻"3?DGlYf  BaAqH uB9eQ+QVa+_Wkc-Z>V|tLUꞤ;u+sc$?@EѮdW>q(j0IB[.!][*'̞iر7K*%lZ$ ..{w[^&TJ O?c.>-^:NaH60RԈ-Piк^BN* &U#Y;^/`?CقU0Tdz-}JB-H)/4}bY6бʧy*>ެV7p D*ǫWKU ||ǃsf^.D·kޝvtqDwE`i}A94w 좇N?8bD[ζ3j!䕜2d^=|J|BXۓ1pc BpvT囤? o^AE!ĭrJx-Yfs+ۘ32RŠhlstxna4Ï 8in e(Utɝ{e_z1FHŃ޺xk\e,s 6@n6E@ m2*Y}t[!4̶_! TWo>8njtv o$MryWWN)\S!%~ K)ڿ_[a~"_^E*%~b?i@3k5R܎(3 . ]܆fֽ-7Ncs߱ϓNNvs2Gv9A_{n2:GM=5q8SPa78*eھ n^^K 7 N<jŒfhI7<^mw5+d/ݏYAXp$BPu5PB.1 RP;޻Kbe~0׎].ݺAS~ Ђ6E-m<4"H.i6M*&6:z/dl_U0 "C]($heT\h39X~[ +Aɘ]Xw'9)ͳ|l@qnwkCJ *gqėⲩ}Iiu6 @HMk.ͪVOX ]xz;LEBf9T Pd3=HDV`Ь&D뺧F<bq[{P](er2ež*[(Ipnp+^)\n' | mvPr dU~CuzDZlybŪ4_J*MZrM_%c 4 6\[O|"x6!9J*6*>=fW3T&?dd^$ltl 35hY YbKJpyl5╧ '~h#*G\v]k (c͛Ky%v"l֫"# 7z \jd`t35LP<8f=-սasA7 X&׳RdM(5#ӛ+jo 'V>cu1AdL8iOQn(+#EḌS||UOvku--G$(UU?n: bz0tm `fGuzb% , D 0/m^oLX D+䈗8᧲_ SQ[>:Cq)ŲSmCWaHFӆ_!&♹ԖjNZlʧՂ# csʙIl5uPhj v?909OoW:Iub-cq?x6 JwR/f ԣ5{)"UgVݩ쨱,p8fU H#'&ĦU Zd5 +;{G2eK'j<=N3ª);һ{đO.u#Dwm ^ˏX! +skTsq)>jS+C'\rߖ^2I{7F*=ea{fNGeֵWo5rs4yU"@/Ñ# !^OӢ !\`o_'v8G?yi{zwb[6,ʑ}*tkc$r:z2PAYd.2EG\a_,!0qec?lF]/e?B?W5n@Yvn=؂bhʟL1=kf---tQ>2ha-ؚYmJwT 5a=={"癹VYS$fmF3B xҚ /T'ܡ4F@~\!83.BxtGӕ[I}`wU)_!~o}< f9̵GT>q'_͆{|ebЬbT7iBH^0m4΀0ʔ:!*~Hm}:W>yQڐdLE!Fą?ħ.=JXf ˆI7lɰA1bfDzy YQ -O?#Y/nJOX-5Z fIüF $cѐ-]pb@ľA1e9=נØ34koZRV<@EbJuC*6X"soT\U"ujp5zi\tq@ۡ%T,X-i>!m3šzhlF`QQԺ=35!.9Ba%?C2HX"h 1]{~g"* 1,h:ڊZiWVE{6盨$؊= u'~_-x?׈&Ux _I{TEАcT#u"-?KE!NdGA) P &CYLgy9m*jZwwFcώ_YƤ`ū\\ sVeY>JK -:BSo:7m:Q%RQ6|]$C'xzT4ؾAI> _-GXhmTtt;[wUm4 4;1 lL) tgxbDeE  Uy+I>ˎ-*v-3?d>Vk`ϫxF 7S{[x[1Zj]@,a}),3~5 JTkξBHd@Z eE4ia;!*+b&?@nGj:w r^֖;F'N;(#s'J:|m~B"3n+[D2l}bP|nTZx/ـEYڑn6ӰCd)5o e8m\OD?fr ;[폎Q(}OvŅtX +d#=[fg45d2pvX=O9"+A8DjGrL :QuB}{^9i褣ě ­fNAW*uv!þiOm)j|@egdtc`رE}(usd\ Šwm6KeGV_{] ȥ*m4[ӔNe4|M,Z%t: ͖m$QM/!p6 *8i>3.EsQʦ:O7ɽӏ$'eZ +%ƪVz0}} 3T?J]`;]t t8ZEs8'` uz$!-/($V^1 +eq WY2l)t?IM10Őuhwlk A8p=:tT<=@  èw6wiL6[KeZscVbJS[~)"8K5e)^YN?ۓUC\NX4/'ԬRkhhvJJUA&5>3kz/ 5xTۜxt\"rmx{}XX9;H:Ih'L(i"c>`t,ќ0'p64fK.EY8,pǂgYyM#7Wy3k}P?zeb '֜C` gta''gZN¡ft (a9Z$\W\n:YI趌Ucn&߮{'L܊2n Te$Sf{N@B@CL%w[J!L ^M=!ܜ6jSy' d 8p6K$6vi` ~6P棱ĩG{!wq)n+ꀧ'$4)n]s0aʱO.F-pu0IdѴZ;JpoӸC(/13[Gg5]؀nBtB^5zMړS>LǛa(F $aʊit핦p#s(K{dKY\Ёɰb[$0|؜C +. UDTe-ZX 3b D`J#b֔R2V5l܃KcBֶ9/69NK0ѳi+t пZ&V5Au*eMoabw-Ik[t[bj 06CK+hR37꽖Xy# }pE(ְ)%#ſu4&_[7zd><k~gس6OCAmU!ɚA~l-_K&WŦJK{%KOXBR>2u@C$93ZCokG4EQN><T3$|9;l9} 7qs9ȰE߳mA+oVJYv-?<X6ZBEbwiB [ܟ/Mp0&eHln3x K!YBkKdHCW|LCx Vw*䔩Eul J\8uWBo-[ J[?i1)2h BxAŽFk*9(SzcѢKQh%Y]9: |n9C`V eOzYD{*3W("7t1Ų}(%}s%x;>4 Lyn'm{Cd7sXjJYPl(C²rB3uͣ/Wۑ 5BEypw(}5pB`LYQ*WhxRe`x6tAߧ^Lh*X*YBD9^SH1RSkB1~MUg[jEؼé῞7 1Q=cD{ Jm ֑2Șm1=8kC ̥+^W[k v\-]nZ0dKݛtEfj\Vg*E^ɯm!"k$жI|WR@R5hGsȅΌuLDHW#/̢kg<֥MQ2EL`,/֐$X;_Vk^(ky Etc:Mн+6/h=ZI/II_Lt:6 Wxȉ%?)ϟ앶^mgu=N蓂@.]br2&2z,~з?0sW,10G8McZ[$X%^(h3zr0>Ddd`tτ6\b(]qJj1J ݇7]꼎>O4qiT 3w\&XVYP .(r}lWVWz.6M`g,eyε`Sѝ5|R7r/̋gxvf Xy3d܊R$y'V>yu\w y#Z]`]\@l\ڦʟY-74Cltpe!2ͧ;n[."O@Ye U9 F~Tma`#l%q.@JeW9 + Q+ԪPUYEH˜Lɱ0r{mU\EKФzC̙NlFAAEE'wnmB`V丛24@n^܋ &9B;|^4Z6u`JrUJeڳ9ީM{Oj%7h\sYA%ЌӀ' ypF.끽CƲP!PRŸr# 麓nkJ`{zЧ$}yj|e_s$W3za8eI#? 56x*Ma \kShBD7,>ٍsݍa`'".IvӷXYh ㌉ެ6n'ԀpjlvGiknp ~`^C#~7 MWw[c[թw(@@9+kz_񠬅Gw&idؘ:gw/_d+YI1YWZ8'C)_`N·rr lsTp*6U $\qI=B*E)Azdt|re!JDրJ JpR4"R[9\W} *JB tsΡ{S`J!c4eN[uG&?اku8,A صvꋡ}y[,NI)D/gkA YX?՟G`ͿJ`Ŕs #iq$Pq8nH60jStoy2p ;-y.ޣRƁ;NQHґ`}Tí'g!KqAK'ޚ{@-cI/S |1GRtpJ;iRլCrn^'b'HM9Qf5 y-4{duvqs^I\LEœƨAX߅6><&iI0Fby賹u5>P|2BḟtJj@. 8Keo5ʟoy7}i{ e;qsmu;]+nf`+VlB4XjXs="uppϾ;.;b+٢`3.վs#_W1XE#M:|.E>2nq47}z.@30p/u ven} 큂dAב;63y5nhnl#2˜d;y3#;<\"ZтPrŽB:5E3q%AETjǘYm%^hҬ݅|뿂Yr:-z2gr~gFݥŐ'a!қ5V3#aKeQN *Yޫd8]ɼ%RAxŶHF?'YHpyDj!^ i@FdN=ݜ'qxbbh֍ EH\}u=`WG0zD$cH 4u.7P2uvOYӪԋ(o- RTH^0Q`e{fnk' c՛/s[!EB)rLc vÃ?M>趠6B}7D,C1wT}<}AZ '&N d˥1XD nRbBF 5j8WnN6 e-q`A#bóӪf S5ĶT+ :`# Iɐ?D:GIUsGi9Lq)$'-u wt9*OohDNJ,7xق$f y1k-FLGtC)Xt'r.+їF!?1 yw[< ;KaLԬ~ Fu -qL9N:m5?u&3Jh[*O(4wшNy!ϥ* BP fѼ&/p{v,3bC2lL`=3FnS̥+SrJ\~r\>jaߙɧs_sr}ҹٻ !b^%pd!4{JmWqltI:wѪɔI"/W7eMPT7/Xi\dB"lO{9 oh~\LՉMoķ3-ţjӻ'};&; fp?@p E2 :N8:_1'X29s_B;SVn7/}: b}fVl8iE]W35#ltG Keݺk/C JPڽT+6_2Far!Y2#;bݡ e9]?.tu "zWδV}팭uؐ[-ن]"ys%#Pl6]J__A㺿@WifnL977 99./CHdq9ݽ~H5M G]E{wvc[ְc4&zP?E2gGD7>CbFE2`UDIBvGGCuyI AcJe2įt;EbmPOb 1qK^v\wp5I˺/xN K-8>EIªB|p9BښOF};{ѵ@:Կ顰rJ?lb~!Npmah$\;zcK(C)l }k6{MCC2 fA`1⒱;QvጛO/{2P9ɢ;A77~6%f琀Y@hjU1 H%<ɸޚ@{.4i' ϖ9B ^tT'px@  :il`kdlgQŗ#㢜/n%{DgvE*Tf< Ri~ZA2@)P*Kv^b/ `l8{@3ŹI1eaua MluvGWm-L}>;9mhy$cj-b Rth\{!ڎMH I~d¦1exi=9݀>'1?8K7<YkA B $.@6?&MFęcVP1 OLqNO{%*Ck6K)طt9}IHr W{ѵB[}ޭcM:SM=J `1bE#'G5z>ׯU&$DN{OLYc8cX3K }f6AW-|Sڑ,GT]XW+3 owF.S^hnZ DmyfrfZ4SY.%ڒk䄿0X)MrԼ7g6cL?a@ʀ0BuƒF2e$n$<ye>ԅ_~/㨹`}&ԑ/ HjZhn: 2{7Rb`Y ws.P=eWrOI`hTY7x)۔$UN+W b.DjؿĐYG̩][9U2 Yл 1u !531n,ʮWN)RMmM l@ 2贴m2.~m '].XeANtJtU@U1c0BmA7S0|QoO#BB}`gMk\}i|`]8jRU/z-)Ez~~jHVT>rUx} y&['+70.'*t,1qki{q 21H7g_e_J3_6Bx{*Էh;1_|Օ>|.,CD6ˬHZlG JӂVK-\wq C&1lzM3N<'ǜ)2_j+X铁cNEqƤm{!/ FHvj9|o @ŔKPSgXTzmuTF__i&7r.0ۚXuP@5U rպDU35|m+xphuC~CϠkgzvAP:jG`+ rEkm 7D}N'0vJ8pO[~ ]>2p|WO#;<9CջT7&ЪxY _aUF337^T@úd$%c㢴v6$t:6nix$Ge71X$E (WSCE$s92a9/U54Y qQ6 KYervE !@S֜e4j& R3[sU,g6F=z< 4%^IfO?P?.<EaVYJϒpE3pUԆ|"^O%̀M ߶vwj9H&/jfyP@tS R bJGEVT\<>X<}PuZ` 2*U(ϻpc[ٺw«^'*^F7*fRp.s|BFgZkdH}g[=Zj!đ*7BWnDٟf3!qjy W5:k ,E>zSڡp 91 c{^TդQ|$с[KÚGl/);G20 5bqՙU5t.77c@{@]7፱1opGSm%OI] TrK[ycVT%S|Nky[u֝|/5Ou*9߱H o*wct!ޡ`NMV !-0;7~T,SG͡kH*K=vB7P&ūANRWk]pvgqk(H9"_c„G?ѽp @7CAe7ɹ `QC!nĴUU_k(Th~h=F׭uĞCjIjK=x.Fmb0VfXDZ vs:C߳ RjlmܦI-d勬a}{.ױ*ڂl)OoLi^ NNjְtPIWĤ!ϕ|(HR,,.:k&iF`fvKF=Q,I5VʆGAAK]צpetևل +)~A:-wjF8m)kI#XfTҮa drh"V 뽬~sk ab4qv/sN'7+ڢ &[nS,21j3Q`۫{vp7 1/l,׫(;>,*a `M:΢)b=֎},Pv%䊹 heAQ~2HL U@X2fA:!;!  `qB= LfAU%*LY#~Y9Hd{}{&.?{'3DaUbIkXSR3Vnt0 4 AV_i\v>|RߛTo| N9 M% t L|s^c2]tzLjTVDju堶=@-A]P4ťů(Z S C^fWpI%AuvIƏ F ݜ~ ׭7 8ݡWx4^rVyU+g_]'/gv㟘ԥ-drEUqNq$n`1075iXG!$(KSʘ j' h5hvN CLk ʣY=mIh^kF 襩 ע $U ,Wp=YSc"#,1QSFs)4 nln,U^U&1ɐүtBQ) YYdK9C}Ű[m3V9(mǵ!cD 9&VMXdQ!{A2'yV=6i>ҡڃPߑOHA6jXbњW׸Gnc\74d=\Ab'-"Ưpq!?Tg C^8*T|9 |.'OnM0 =Ən%r&k/' F &bV £8)EWy8z͙Uܽ *V~я݅+FnK*vc5#1 lDtfP[5 R|C!K!³D(@<3Q}.{2ycc(iqņj6_i@gڨ=5T輺?yBA܇)@x *cʆ FNB;!\!odD | Ou><=\ )vqM?Ƕ|.a.v_iw!-Vn~U/s#J},{E5Qe񴕉y=@Ml|ai) ]eP _r昝U٣ K^Xم2IǶT/\TJ}lrӘ&`p2FYy:cjhm]l\ZY:A1F,[Ue,'{^ j9但*cbvR'G65w@ͳ}鑍[rV.,$&; W>llKD.@2֔]Ikb"O8B|sFrLCtTlX/k]j} !kt: ףYtR~G>^O=U6(~0p0H#9>Ūq$2ƍd8C7)2Qv5[H!߉W9pO.KTN1(mdMwJffu&T^Ջ=7GɃ(gBZN.vRY¿Uq s A:~YF}(\=[T z GiLr|nj> j_ň>Ma]a>#$J-Q!nnd]ORrVU2wh4]BXs6B؀6U`JY,uB6Ey7`᫪_z.PWЦL;ͱAHUsmOmyW]_wG\ w*spQֳK5g\pvrI>GVe+?3 UzbMkU>N+Օ-R.emɮBŒ6Ηn$̙ A,^։t-l,n2n契.Z`qd]jZ욬yVqp w __^eT 0PPm9FH)TT s;wjM{e"\xד[ ?CKPr>; F{i InV$PN e͡zZg__F~ݪ|jEJ#^.lcmb.A ڴ|kgǹ+{-A1gF`Ќs!nH2-Bkn"aenb@>\y"<. 'GHbw]zWaU2!aW*F=>w<*Z=}3Ɋف_T{q'G;C^AD34mMWTdS4zP'ūא#ZBێx+ݘI.od%蜀qUŀYLGBR >#AdkFw8U[)*Z yYn mJDle.ZmKf;ֱTj޲7oA~8t2ZNOͷ(b~,#'~KcZ4kCv#JW9[ 0Ďnd̀AozRlF*`_&nEMz!͞~,_IG}oՐN7gAS-I-ȼ.ܥWzk/Y[EJ'˾4sBz&pT=h*iAgw=w̍2꿂^uRBz1QY:Ph!;ެ%Hb4Ms2="dQW=\0KԼ @áXj)t07㻄QU M-*!UuѸtg*T:M7 _LtBXN^Zc'_+56HP"Jmn^#ş&W`JEڴ[˹N,&c!_as-ܷ>(Q.ͽy:!-E =!٩jOJl,ܱqvcQZc8}aD.,89u@y:صp~R-`_dXۉĩS2Ǭ Jy6Uf?c]$D#f( .xҙ(_* Py0 \'5ZJo=EgUq}1 r[m-\˫ nTb}QrPz3dQ,r{<LOv "V @wW ſ<9BPH(Lv]VTAȈ\ At:`ޘawu扼o2${@&}=h*fVD6_`bg \p#=,^vn R?GRZoi WXWWd;$[O"7=7wm$րv2Q h Ც%NMϕ"I$њn% Lp{gK<ɾ,y4I!VR$*¯T(Z@w L[K؝zRG^$r9Iq.s* ꄱ)e짌]qj?RIV  @W[IIq+ȇ%NtO_}{rH#vxoc<e.N.L*Ҧ }EDg'dûrv>[xU .0 Vчұw8v]#8u LjzY{x#xo_Ju/(n{CTx2s.4Ta{L'G|yfhtV)D80+ U.w=6qtЃOs{3*cyhJKB Ӷ&-ݏld œ"nG'I嵓F⫊J4 {+[S6|ؔ)_\6N>$hjf Uԉ~#-Aw'^B8,BrGuAE}9? ctEluY $y(-߮7MA˜U(zeJ &%We=,jLm.s2\y\ +i5m+ }7Ibԋn Ǟ}P0MR.8%u[R@l$xl׻c,r3s``'36 tk7O0=[>k^ %ѥSKe2]qfIChͩJƞT/ dUQx+#䶬&ؠi˝xCqr!j2eT<\ݝ,Rö'ygTS.AT8\V:AM5Pg̓"P /pn1e` * jSBxT(KpHkbfy Ee.==Y70s+fuiV0,_O8q]7Ӧ &MRMގjJŪRNfMcӒݦ;Ks^3uN߿wr+w>M,uA42I71Iyf-83~Ո;QdV4eiH&cNE(Tl" ㌴rCfi:0?NñoFl ,wRMKFML$HGj!ToVjC` Y^SVs; 4҆;<( ڽ D39Jo.S vRC*YsY c4"6fXbh0HCSc A';;LXa$jv5"eP{Fq_ [%x9 ~a-Om FSC1iL*)rki t:pؘf[Qp q;(CT hSD鉗M!ɏFdO*ryBmZ c2N}&yȪށқH4џ/ĪhcqR ˌƗx29=FFzEX740_Ib㘰oyO$=I$kl`㴦.c"r6P4M]28߲ҖF-GteuJ{Fv' ls'YlK-{`(voE;p!jVuA{`luty*tV ʒS#;`?Ui{5>,jmBQ,"6ÐwyOCdEO\S40@Pq#mzy;4i';Nϣ;uݑ)?"?[`#C8ǷWpi 'xy.!k>f.VH(:T9#cQf%Jaw_ 옶ȇ1LtUfK}u&ʐ8ʨ"tЍB,-+7GfBɅÇzM"ٰ>Z|HHX-,&았Eqh{rj>\zJ~XNũ0ZͩJ>> ^qd TzA"NfI^zC8`J^hϑyJ̌SYƈ{N9 Yj};NsCQGE3KϿSmy cNfXyd4Fk{XƪS@ o$jcI7+Ub #ۣkSO25Xx>kOxxgrB< Ȥ`t3ҧ9LK+X\<0{vz̞rT:jئF}"uO$;({%v A@ZӬ{t*TZ5gP} w8*zp 55 Ekej@Jg3J IMfNژN u,|Zx OcX͹8+93?J|t(20{mΩȓɒuHwOr{䑧ktD6L^^QU}lÝۈ]B ՏdŪAދGE9]ލ\3_*Qj/Me]:Bi|+K[bKKjX0z<`Yޅ]P'biY~Og+.Dn%mCS_ Ygt)*оn gWZ};ϵȘpdaE`av?d}C(SGkz>v+3@7Np>^ 7+)%ba}D⛂jTY$KGP!Iɵg+=HɖK?+2`=O]8.cz]y67"K<-}7ьue$3B~A\4P'3`tFfb 8+JujCԮ8Od(ˤ퇷uAAl/d?{g 'E2?6d`B{t3/ln"xCU[wb d]8nG܀|^qRZ`6֫suģrY܍jJj1_9&/'Jَr).j fΐ\a6j(Z41 >Ah$!IϬdƣXI J}\mkg~(\A1?%ײ7@ѡ[j9h^[ 'gG% ړMЉu3tG_)Z]_cڥhZH~w1ʥVV!⭔Ǥv=٥y\lŕȓTjzj*Gc5J( g! eG@uKz ~e @zGb\# UAJdp(fuL~(Qfnd!оc*f=kkmdط],= 8F[Xq׆z 0SP'ϕpomޓMC01 rQjWNF5ٵo<XjdO a IM =HOu~CUKچ.uN6Erb1;ؖ#XNÎ{Ppؔh"MUI \uZcRhMۦ@e}s;H,PKe8B90-TJUHqLZ~WPjz~$p&sR3 SH7£L(:sl`3Ѥi\/8uj)C$Fw\y %;+BF Q 39#.]<#?ٕ)(C̄2ڿm;4A LR_Wگ*ӏw#LQ;F/Lt ;yt2)Nt|1\t bnoPSdD- ]i"/eṂqU^1?.?1˒'U: :A2JX!;X"ۨ q`%I z{lWpK-. QQMj-Ti[]aܲ٩JDu6qFvrvmcAL\(Q?-bТ78HԊbDgZC}"}aܩ ,H5 6!t5wcS2#j_NS6CBRe0A5kH*rFw]3b\N&Fjqkd۬8\n@87;4ZA}]fM=1_D3ɲ8^vt]lye[kpѧrnޝ%ó[V+ \U8APe>!d@c)g| %WȺ`Lk!"1 xy$jEdiQGIo? KxEQ估x=73SYy?PvA+UO`q0HbZӮGF,!|nŃ"9DH?Kݽ}OgѸ[n@X̮-ZDF޹kH.NxE8A3y*oۨ K|ec n.߁UA;y#a%%IG*"q(I𡊈 .sI 8PrG@nHJBe4Bk|zRCmzEr##XFk\*C*¾4d?&'eme('U㥌7FҖWhRbJ ϫSqm7[rv3aG &j|weAXUWջåT<ҸaQvʨ'I~!CiV+z+m!!!"V_XT~%W\

      NV hN%RC0I\#p?߱F/ Bwxϼ՚9zsC7Iߋ}3}ވ֊ev2&'tQ05(qnq^aEP)ƙuoέpBe:ϰw9^G/}A ]c`>kJ!ԉiFCazl,e (9 94:ZM'K[:(yN@ID!}cEF; NtJG1E*Zy) q9<ʖQ2Ga@ cO=6Tc8V˕K&$#n H-?/Wrn(!Wf l4`ycf?B1K×~lJ iz3Z/^ ͭ#4r'JiJdzj*TT>,b7[+c}@'XظtS'eh7NJ9oRVܦ2]`F!$mf{+_'5_Sɍ98osa9>8G qmz2M} $OpL+y\JZ"b&>ٳS U?p92*$L! `./f2pd`m:SaN$XN䳗w 8CN/75{+dpnmpNtR)7"WDJ"ms$ Xd}GJץqwbE<^<#]S<=#}/71muu<}я8ֹJ֘m{f4pqjMo*Aj@+qu쐠6‚㫅9mAO`*apS%u{81D,&r)XAـc𧐐éZ|uɁ[bz8֨sI4-.TR>ҎX"?`sp^",IHWr '~Q? RHxERJolN?lxH4MW14,w.SYŠ䰽@oa lvZ,2dw@d<70{KJe%H-q 2-A[}^8~FX $2RJ~6> ϙ\V2l V]z큈w)'&_)Ģƿ#HMB6E k*i`U),e_[iarohP (P}q3Rܒ> ]쾱mFM^PSGEJXY?.^KEXVJ* 𰰉B~Gwt$i74:F3rZi-Tl,< NX4<@{V&jh@d X:~/<{Q~6@L+ DKWI#⡍ kc/%7RR&E>czcǑ*dH%{s,̰XR}-Cc#78'n&ª!i/ U`󒸬1 }]s_K[R[@ =q)HO|AؿJi#-X0̀JFZ׽AfDy;l\_F%zzʻd#j<dI'3ހ<6 U}yTJtrD䖎M<+ﱯjD1d%<"XCΐxڈX0Q9u\HJ88Tg,~MRW-D, ڮjNU5V׼ 4!99\"m"b7]hCk|{E:6Fڶ9oG:(W&}0g%X-#k?.^Ε7G\ Rn"?$):YDJ =#E#)bBE}ad) &svRKuQ,Iob `OEr"*gի K.8<&0+{ZN; WXSl,лTb߇M0;\*!; Ǝ# h=,WrkG1_>ɧ'E2'Et`uЖC cađ ^n[JH@xIw""هwMxoa@NўW7cW){VvH^hڂ C1z0)i i>tΩbH*~=TQa^\bN'T{.zU z.Qa/6g^g5aq>nN/o@{l"\I^9r`[y92R)5G|rIPF-R>Hp/Ҙ.!NI벌0YtYޕ95Y͔u9hق"Q>selؗѳՙ]EئOnLݟISnjBo3䛶1ҵ;%۾!:lѾضSu/_]^pPtl\1E^> ˲q"զ`U` dj2[~]/(r{Gɟ;[/4_hbU@uppB'j8\ΦpodV2~zM$ Y9!6 6'i꯳*N~ ?d zbm(OPjvo+[rl;#4 |ַVV{TggDA"Ɍt̊gLxPi:+ĞaQ$Yi;MRݸ\X!n/Kּ*phm6E#۾[':^&R45d#[x8A~|ȡTyZ>ҫ 8 d\4_L *mJ~;&;'\wsu; -塅R(`G'0V&kϓejl W F$Ԣ<7z-21yxB:*8ɺL9 ={NfFO`b-4Fo~ƔvFJ 3K듓@}ZڠXĞVX<E{@&̰ob./̺J!fmtGk+Ā)xb>lKH\C2rm5%NkAe3 ۫3`6g3ʏ7}kⓈRz-D.ؿ9VZ@Crh%zH heTk/UmK;z H(לh6*TyFQgv/w2DTxVIO=3##ǘ{gLBK.ܬcNޕʮҝFQ+T6mh%# ɶ=l_v5Վ 1X䎎>0(j0,WPZcMiwL$Y߮ԧE -mK+Cy5{VvvJϮi'諑]KOIQ@Ƕzh:]e$Vx\@NYX~6m(~|<琚čǥc *&BnIEAlH2fB3670 O)1P~"[LwtDBfe $8n.Aa`L0r=dZ](G~,G2K9gRnrZ{,Yt7h :وmcF\ b/c}$iԵX3K]fFM"Nq#V Gg,nҐ'ݧ1N\M53k2~:,opRo}#e@%KSYyX]b.vhUrKk1ȿk&}s_2H Ȃފ|.5Mϧ6:x k= ?CH)k*搈2􀦦e:?(pAs?/'g< +s7މܙQ{9exIYcqGt}':ݏ͖^=嵐RNA 9_ VWzoHmxpakQUf7#;y [;\TЈ7cF3*0-$梆 QFJ;^>l^doU@*VQ>w.nX:OuF adcY2:JwИl*"hǴ3k)Kf}2K[#o61ZZ3F,q70 @L=T+L)Y믝&^M⭄Pz6Bhw(zv+ѣS8*v(hci60+.~WmjUn. JI#HNbmncC r{/Cl׻hr->W 9IHmS(^_%V23m#g% $%_LTA>)k2W I> J29gu4.%ミcϸ\0NFsDwH &l:Ցa`g߼P$Hml~֡7< fOPM0*`x\54N!Zj2 Ҫy7m@iw^߷A^o WCjOP uOMYO 7")u!c?l>68ʛ$_ rbSX4!ōO gH*'̋͊x4%e#n=djLI[{QO̖5 ʂ[^B f r͚%4|SJO(`P9o l9z7@@MߌvSs^kHj&n4߹Ng$3;5ݺE$dy/UNUjʏi5PU}9p\^PLb""KyOƈϛScR*+q@A} h9\ɬ(HLZh9~'}"7] VFUg L:}jHac ȩ=0R _ѳ@d@^6pڋκMtx ~m90d (޴mϔԨS`T\)DS<{-mb;RynJ*s?WYB`|Blքkl$HY[3еzQg!9PQ[ChV@aStL1dJPgGȚ <'WC`tEUhײr1{56;bHř-"W㍹rD1-\(:T 40v" ,Opm~ֹA0y:r mj pup +ps8rGY%bn;ɇVuf៦&}ai>=>h]oVdiuMBD5-] r0wĂX묫*$!i{1Y(OC<{ _3:xA^+T ˜}JrRMiNǢv/1G?'L G w*c͞>RM*d_+d$-)!c#הpZf\E`XG[0X>L{1)]p+ab2Q$%mwla/STcU7`{jމu*78qbb '}m6IE D'(ld4Xo4v(1;S& ̋aMIC3պf y:A[3FmMD- &:lv@=c&:]2^8HNsYe wn%xHb}i*v3S&V +s~4`~n *dhCo{f#/)O";]tŚ_Wb3q:^@*j@џ4+(  ZW $Ow+؞5[w)v2a֛)~D̆UԹ303J9JSC 1ھsqA==p"bdrV^7`Gf-8TRYC23LV}Ǘˊ>!"5- Cw!#̹ϱ;@:D8d,@-(9rIv9rDRCγEC s6I79I>%N/J.+K UkS5sTșà %9k]O2ϕ822/\[2F+KQuoW?3ͯ%@>܎0ďG#~iS:j.JeL [n,,KXR6m~e[@E^Nz-0q l&!k.$T&]h>M4TӒ Mzò@_:vmBաѳ,7 N%j*cIXVA(!ӎ&kTj #4'eb)H: x_,9YݔRXY: ,#v:U3#hP,sʅ-d^rݑ#ۉ'TzYY,ևʟ]lnlXYZC]#(R8 b\=ȵ+3t&u[DmHL&wyR5DC{a9syvB| F]Ucm <5sL *@p].Xt _hZ I!3]6n?6ms2ߠ_|+i-X8ID2\ KWL36ϓX{WT%^eX9 _нr?-@z ~C J@s-jz >{l>fr€N\iF5֎tiȽ^qA%/߆\,ML U&dwAn1P(>Urc38I rd^Yܽ.r\kO͢L u+PXR .<;9ݢ.{=^ yQTxx,QLnA8iH㌵ a(*SF,Όל^昱NpxuN `<|OҦuݼpkHNwKasjRʹ-FbQg_w1_6iؿBOg$5w c:ilh MІR^3ij-vN{Z(ZeaLti 0~Y|;NjzW0C3k~;dmsB7 Q^`kŧG;!!,v?v//dh R?0:Z2(8eXQklzp,*?8CUټo ˋa?}[3 p:Lfe'cs w1z`nLSXUP@v\3 )oJ#ET3[agB|DAJFl#"5 ,vel=(H`PhEŌL'P>RtW)7\5ek@Ϻ{pc&̇72&%B(>`Y`K':QNpV?1@# u4/r(VChh/e Ŏ4ӚmF`t (v1DvU$ڳ zŵaS3P(aAwB`ߚ|t~iخL?NB?t)[\@c?-uݲ&th%gYTn{!5M]`¢eb KT Tq3A7+c(o- GX6 a]̘KTSeR_p׫Z~VD6}TV5񝪨 \M2QSy0BIRgP LSo>Krav9/!Y !=7KdUYf;m҉V~ [M!_/ Se6Æ$ʰ/j|֩ҕ`&%G|Xg6PbPpԜ3]2[iLL]ņ^@Qt|x9s6SP۝g> Vb?X7|oď# ~=x'̼ɣYT6A=H k3VN/bB gQzkb]75{gI^s'(ǝՑW:l.dmIl,a%b1~5PN%1+Ŝ{`/rt=0^7Ŏ|PEL<OQ}XB0PvaY;qHxk({jyIH3,eiC!zτﱵ$[Hp"w`5'&wO I-weۣs8$;j%*Znou9I*OA ޅIOm#9 ܡK'r@Ǣ)YF ģ>țޱ(V6DHĤPyݦՖ J aXf>Nۨ3KKf1@L Ft-~"==(h0H~4!÷MrA᝙s^zpM-5:.Vb췥.R\ q#R }nR6|ԥԸ"׾\=2Ԡ4u tPHIޛ>K0Ҭ @ u?! :AjQ.aS+lg"Q%|7k4Ft]g3CV, 5_]8B m #(O_$Ev󤖵u(eWr\3!Lp?C3'~w4'1y3[3浠ޑ&|3KEhrxi@9w7[kqN]H4V_ưA{9A!ND2A.ʟ ??uNu8,4,[o{Q` xw`5OC7v9=o: RHbp[~>^A褦tGҙg8m-OL/ ol0}_4(٤YqN^=_܁>4`!qZ(~aGFا@$J9i5vEdڊQC(mʕH[\uK>4=Y4U:޳>P8{oK/ɐhX#v~j7 j-*-B1;SuxT/4ུT:3NO%,ثǐ2Cq凰7SϷg)Hcy-^GE=A8)D$8[y0zёSjF]}$ȺqIʧU6މ 6;AUW;߀m5媪RJʂ/`#!`%Htġ,!!rkU;%xўE#"GyۼtCiz坮+#b AFމCߢ(+53.=0=/0騁0OMbyΚo`\rAKzE.DѢt) ~nO+aJucuKVDx 5ApNz=Gc@1" ׹9h% Wmͤp2^$xW4َR{*Sz&%U9GaEunb0כ%޽9ꗐj%ځh_q̓ vt8{ilR㝷L56IV> BoIT(3]re>C^Af9D$πg`㤵Y-2~A=T^fZ38=Q!8kNfɧDضYF23oa).K\>9l@ XWBGAT' KChq&x[}}hZ[Qzp|#U4`daކ4R.'MOdUoAK?h-l(Q'D{W(D]CuDsNR/wHF{4op4`/꺗w,iŝcl`'R. s@VX6A6y"Fb4x4Otp)X!T|FV&ibWRR: soumRl5FY`Lh$HDP}2d'czΗ1"P"2sh&Ήw\=gosdݴ|Z傕Z֭|eZ '[s>q8HpLރV4[\8"l{ΜxJj!\cz8Pd߿r"n vg3:ފG|3WZ3z(1 ?˜W%\Dӓze%H0?r N =,8u<ԋsSuݾ"b&jbY+ݱ[_ˋ'Ql:z|UYTgN;B[a%&qd w[cf5uG-L³$u^JAT!ui#Qʅd=s7oZkz,"]4{sU A&W۴ V ڣ1!ф5sMZyɻ iڭ!lc YU6ǝ] TaәlB2fn;:½(JU36f!1e857˰p)XC"oI&ԅ֩Cp0$֩~wTGo냑8@$(,1WiGuk2|E#g^6@!F փgS$Sg5n4\e ʷF+RBX?8lWV4JR@nTU.t+?tGD?|FVz 2rYh]\'ƏC,Ћ)9 OHiZ UG73 -SQ(}tC69t3y_-y=?8P^n#W0٧b-ˠ"k ,4!T,YI5W S)I',~m!%FܪSwWEL 3`/\9ҝwGv6 av[cCUp-AnE1UaA++\ٹJc\~3 56_,,0c.e6r\ffG>^>r@Kf_ {tY^:P^2}xR2X A]sl&]x&F=>bE߱큻l+gA;HKdVdV{o; [Wd/O A~!Wj72ۇ ,m*7)ѩ=F\aBmL v9l=0Rc[!eBk7@oTC&9f"&qnMVͬ(ئh1h-NꀤQ6Up=tKe@]*䎚O{+iK*VZ;]9ڤǻeIl;MZ f'qm]&FmZ6,U#|$i1uǹߗS4&2nPӜU~֬īI=W Kz3]N,m8NXƛ^toJEQW`(G Ww0pam(c"()UD1:y$ƒa[} Ʀt<97Md39U8[>R;SUnSX%Kؽ cRtx^鱂=7=t1dsjzuy: saCDyvYʞo ןW54"QݾOQB4+r+Y^)Ēn@fP\2 .;m ӯMX+eK@ߎ[Wo:v -'ß|I@|'Oݟo:_hfR9ESe$Lb@$Ef:@΃)"P#j08 >"~bŎ ov5;Ox֡~7 l<" 89uޘɾU1˼Xx~s6k YcyG+}(-< sT@f.~`Љ'NG(׸J5+d{ L7:%Pm65HJ%8DTY7gK?F7w|KfufI+R[e%#Sa T]%< r`3DmW\:y'ƭIꈳWԋܟ漒n?k)L">ݥ5nEF{}Jo=4AXIw6f'_/ -…S]iƨY s|kmںryʰ0Rj IU,m'8bo8L>IN!}Bz,;̈́?fLPSj8,@+4y8g^ K{:}]Gss AnV aTˆ`RҎ!1Y6+,TԒfNNw(|SV'lD, g޳DG  ZLd׹yYV-=8o\LkqPi6,LNrBq`Jd> |+Qht}H;3VB*:_BWϘu5<#]֌CH' РxI~O7Eq6Uk/Hwm,'Vhy_{OMa+Y;x3jz wetF'̗RXtrk)֛[ʸVL me4f#N"+jxCAy}}I\f;ՠ\XV9)c |m5H,3"5#DDw>qz +Xgr6e:O??)ԌpAۼ(s. )mnTU7蒉eodebQ]|r$ixvس$vfHQ"Pn`>rziˆּ.}fGuO #4%$H}s{ȜbCayב,u¿ %qT)m>FBC͕QY gr,;BJ JMdοNSox+,~]=+*-68L 㒦ꮊ?KoݯVT=rgRmb,|(=$*hpUz|)m1~ p~= +_6PUC5%@ E(`v6 *G Wbi4nܷ&]r6 ryG*"NjǖUg~-9"ӎCg~4X_dRZO-qif|6RblVpQX^r?P.nWӭjF,zR^'%Fg_}Wo;qpE]>NU:hiUNɍS n[4hὒGS»Hwgokks5"K"]6ORxPnf Wӳ=33j@ø-L gR'5fsHNؾbfW6Gw:)rtWϬvʏ`trhϪQt/uW$+I>)u,ܢA?9o4bxn,`XoY3<:p[*>n30{(oFXG˱j5M1+f0=WCGCxdR&vPȓ)0';G2G3Ӣ4zүΖ|]u-/ch 1P ͬGd8)(JtYC/tm_Ո"r5w֓C>3_=+MT/2j:[r;B2pZ,I 柘4c!º. n5zjْ0M-NJ1٭QۓONvx$sW]OO2@*CB%D.zP}.9mr0!t,sqKlLvsȃLwPE-BCT&:Cx5OӑMm TJlCo͒Lm͗p>%0lE n)n%c{l ~7_0rW&)!qЭ v/wrP^Z7} J kYCӺslRqmkYH,Xl@8$߶-;_񆖆yyQCiQL~$ׂ0k-|**V@X_l ,ۅ ݬ'Sri;ki7TJcO G@[+'!Juc"Bo$>.@H)*G^&3Pq< [ƫ5b 쥺;8 .2^C )c&L~Ihi acphuZ.JG j]It0t Mm ͗ oÔ $aAi9<`,/RBp/Q&D|tZ*Q|?F ĕv77 ;GƳ@wfQ5?cJႡ Oʽ 2J?ģNM)<&IWkT낭漃cm;i!`LW@Cb"nnTa`,CV&|V5-*B) y&sgLG#@vUWj^{GK<3JF~5 \Ս#x9G>t]臂y *m&RTJُ(4$!@?yt4pG\QҎm<ֵ%)'5оN%lt4›v~58*Xџ݄`d,7lK+S>+)on+ uoB2EՇ\G%<9B;W Ve[2&̵"<v (NXG*-joAaZq "8C*No Z"|<ӗ`Yܲ9ka[ٌM0BՈ-\^Y(m>6q"z|+yl+LU,v}i;_U^Ii7.6,z!u`n+s6QM[u@uڝ88;}zG&-QğJg4eWPUa!IkgAv.R~H|lE!dxJmE_l^YW?ZUpt1Y$g~yO Hj/U/qj6ې!O^u8ЦhtXDwqEquŻe)&Ƽnlj}-?ٛ"~rWv5NS(C] vl%G/W>ʌM!ڢjK'>#U +Byߥӌ%\鞖mdN/ɉd(;nz6LժvOHt=>*("Y]D,!-AGMßx#{*dac7r8C[?6X2%pYLxґ56|]%_*H{:NzhJrp㺭̝7<$#EDُ^)9u6cNɥ#3_7_3[O66Ke;acoyI&r6I7}egh @5OCBq5=$Ag .((h|9.-I8OTGO0j8MB㇦:YK~Php3i7;ۻaj+u&؉FoVIe!4(UP\KDNju59o("*oA˘I(,J|@U{Csb$;$ 2<$n8X=!%#"[.k >SU֕!2;AO+< ˯ t/y+ht(| xL4j\sR^$nAsmh?||>ߊ1b]jXiM0|8g۠\W}ZX ؑ4ɫNՓܧ5g^s*aAQnah=%*h'po༧ ֓9wþ(Q9HFR6jvB= ջXX!_y˫ ~~ _'Ó,Xvv ƙ /${m@gLJQ:(pKڗ`_r)fP+  >*x< 6=mzkL:[oNPHdv$<⋛@EB-:pa-cjmV|ubx %w|Tv[P znǘ9@'PQ.rn]O3dCUj p83B,8)^[y81ۑ'nrN#h! RV1ʳ=XdŠBǚ gX%"AەCW\UEd*ȭP0nDYq6z~RIODטÓE#rkHn ց4to +lTS1oPS_=F6wwr?aʏ|H֩,e ,@Rln|sI;uDI6Es1Sa,__›]o3a̱f+ׅ(5'僁U}_n(cH( J׉ ;a$B'%,0?J`i+Ͳ?x~)R/x!HHH{xM36q>/D-GY꛴-nB-@1AD' r4 Ўp ʔ's<ꝰ1B-;0OGgԞZ߂?|ڙ,e!WBnC2MSiw5{Rkp;R uXE{2qqxYhcɹ QRkQ033%f9Ȼ4S2IWb8їU>(x̢IbO`n9ߧnfJ5Ipr@iJ\ithȩwE>ٜT iRbUM })KW6|)eP#AU#]бGI{ESM"ã)w=ZD.9/ ?!6[WdFj͓}, -W4u̎)C!+_\" Tj w=%` \ύIgDiݏX`yP"#]MlND^v5kUr31*>jsS((Ua18sffެGol4[=^#tmc7}4?Px7Aa \ELDxgTLh/jPIzrP@kӏ' \K^fevz`p!ݼ1(,@aqp HL|&J].Q=G!6qT̉r IO}Z T(.:!ֻnU+d-ݨf. qRBˎ"xcs)OĥZoDpYct9ݍYqmA&{L(DC@qϘW)?haA'5#5I:Ha9h᣷"r;5r< 8=k|# j; }(~٬(P?LD5#0ZV?v1ʒg{ zh)O18A<\*tIM`&Kz 4Hoy4 BgC*U4B t̖_< F:-#x[ms<4482d4%'ؗ/Iѣik g^Ź%\{Ճ.w&i0! feټ(P{GFyLq4}Á?qx.:[C xL։̪wS>VR>psiH$70,f( 8m~ھ4j:πBI=(msOIMIQyH!6۟jA8r LD-;lAX.DFp҆x aK.Z8I 6!Ո kxO-?97I"9d."le lؒxcEU 5%U@. ^{)G~:>oO _c@ԣXMsS9Q^:fZIdpTE$YZnfњfykbc?=2ܼ~_̎KLHI^Τ 5cF?(}?dU| 8 IŅl`XofC rA"1C vdya$V4 D$+uFm8/=M%4hO?I ?B+s#!ob'ښ-lփ^e078O.i.rv& 佼m B jyh{l¦[l}0 M,# gV\~^1Ok޸ȪnmmxܟF7!z6!N~< *ovlI'L@X42qTZ<&?[eݒZ%qطkU@i }f$?a !bfs񟲊&}C72 DByQRaAe0A<~W|yQϢs$n{qD$8gd9\t®1M5gvòGpB'̲2?ڬ(d S9 DФE%ZC~Y̢#$ 4'(+iԪfkafXK%+"[DwXSR0LJ?da_k2a-M?'ჴ*ܚ%weg*G>&ھA(Gu 3 :qd㑏@l'/xv5Ҟ1?u6 %"^ʌ*/l@:_WJaBhfV82O\)8 9sԮYUEH_BPWoџH?ew "7=UECX:i, j,)={;:HX\cIgIP~(&t/CǑX1%M Y) ߊM; bw4@BIh72HE+=ǹ90\xp >1G]?w7ܥO3E^Pe% 21QqP;%潰8~0qN.AI ^9@ o9u8 8}頨F/dnY>j"XDnӏt `rk}+41}fHԓ䉮.]FA wj$V-sqTbkj$FDzzyq]>ܦ6_1ˡNtp6(d ^5QRC\=t '(c1JY`;~j.;2cvgkgLv8RV]І1u$h g4%mBW2S`Ehm(13,;&jPf>YrEj:DSl\WqϬ}|71d;k׌w5xBVjjgIߛPNVÓCHX\ &P5}Mi!EաPB6IVأB)R]e\k ulr]X6#+rpr} &広c>OMMO>h~NXX2K uIzQ3< a\<9`#P>}IHjdGDBKX)~:E*$Lp5T@.&e]_N-9a'6!|:Ki2Ϣo"R{&0 зZ?A?x5>fDshIFCUe+oaM 963@{@n;34b YP苝{MXnFJY˕;s1h' Y';"y79ItHj:%-*жb\i΢iJDa[  (s0M3_戇[VhD.VP~vҬr.,*rzN޽6܀ j"㿻և`78$DfKAݻ@bC_!ݴt iJJ!UlVR Z f _pGU̷8GXv?XzBIjF_]ءWTɍ aPoRA C/\1utf e1%&rlZa `Aȩp-}rGD\$ylbC) rz s̜{zh?!r~8v?0(=AzDK~ۅtiįz89~vcg, Q!3@01["j@ R1X0.C& 0 rظ<Bw b ׯ3,U42B! 'l)o0ˍj%6Rb.N+E}[ٱA38_D(hM7i O6k$N'U[7fK+Yݑu+$ 2ӇYLeD$Z/f၈,o8&ЃO{e[Q""b? HfӠ8P^ |H[/6$QU8Ķ *OZqw@N)ZʑsN7*;s,=L 9QW8vt_Ι6P/\uo}[Bb &}UmfI)Ǚ,:YP5(=I[7`DPm]A ݆dNJ >ob3 UyegA蹘 X?ȹzꚱ|E#;$ߨYA^q]9z pz䣹M٨ som8Oճbߥ.7D`דTEe,-Аs`[F ,߻ܠIn7d6Zj;CycJ}CŘELOK\僿,>,|M7ĎƓqHg\ Ж%b1̢F\*/+`,`S uO S."y fHnq3A)܁[YFBMΞO,wo VzfϿ̿&OMNR| AKsXJ`9iWz14h5Grw'|/~TpG"t4ߵBTOP"r\t)_ГB N\4}346+msUjIeGPAdS Q9!HfBakg"d.W^ʣ5k|L].Y ;BT7d% ޼Bsrq_?dx}%'-DPdN) Hlrbj_=gel,O3<-cv_ nΩ[:`ibD{X·^klHw ʹJrQBNEC\)  f豞'"?qeFա$ &d~3$ $YX {4}KkOT0f;IrM]c|Kچf@mQ04$WrǢ1 9h‚C>j(^c] @4aSB\zFph΀}^MZW 6^!sʑ* xB8)p@ne`HsŘ.x(&u[~5ex܆9=e+ścKa0e¼WL,1EcæP :wmnc|2Ƃ͕g簢F&'4rd)ٓw./4h9@w1= *=$=paLj3q6>ڣA&/`7=SЌY0@O),f@V̔qp2nlF'}g;%plRƹ@-v2v{-@w ўsHY{9 6 \4̮vfxbۡ+PCM$HԎb4 _]Qsk3MLX>;A;TA"I&duԧ{CɍwVЊ20ׇBE" V8bڟL%ڵ/Ԛn,IPBc|5ndpKj80m`jd%] Õo"gf,Z,ܵ|,&Eh,uOˊzoQ <alY &KIiQ6$3*T4zF Hu(bZb5x?c.P1-%bHpgf7xv<067[PPx0K8u-'t گP3^e;K >7;=hpSDw6m܃MA4EzIp[KW#rSld8omoA)s2lc%r%Ѱ] AskU[Wz24=N'Xa\3d"e:JNSGw,̅o`Fhp<|{R|JVh> !=~=_<]j [$瘉rxbjQՂ:qx gvҊ`ErXC@` *;H:~<(=G}/ڃ vU"N38˖LsDUkѾD*@N;vb Rss8hr)t,K1NkQQYo.JaIQ4asJضOQQpp3pY:Lys?,I!=Kdim07mۗNjqm)b'珀 #<(~n@jwe1OV-a1 XFܞ/%s s+rȱ^k{#Z7ETvz3D zתxzydéʱ6鷟 1ؘʓI&HF`>uOJ@[ϖJe䊌 V8:Y^{e9/Ϲ yFqhht7Xu6+g,h=58iFh1r,fzO2\# 6gDllY!usʕ|mo ػUTCNcQ^*9Xm"0r"pŢU6mV W%pY?<`Ӝ*PGʻV*3[rZ}V1FV0}CtVə BY ä:4Xm芥+B2 N͓2KrxwI>Ds碼:NDB2R e9pfNGq|&3A#peA#*NP~J_~`t8-ߨ:W#KŗdWSB-L 7N|,I81^+vמA:@YtOcm~#Yj#Vف1\YpkrWaH-D_E}m\soկi^t@֦_ً\aKxUm}D{YzΧM Z+&NXyALY[+ꐫm+ xwcJE*]!- Qu*ڃxp7WM.r dak6M 7n䒪'Q\.l۾ū8 !H)TGFS(kl&Te 呟:-vw+#ſ2z<^w0Si'eHG|ߩ$=b,7yp ihcfcv]qit&SתbJB~KpU\hA1/iQ{JNð|U[_{DEw .Bo[y]VV'rfO,+bNw%a=Aȵ笩'|j'?gB_ѵSQ{1sRPV&{Rn'\W}V&HV{54Y+* բk@hL/2]>*69,?h1S?p{\3ha_ joUO{o_q =}Ùl/Bȁ1'0l*pzeKHrE)A+܅8!f 'tTw18X4=`Cs>k -^B&u)=\gL.m{~m:r֫M(u\~%Oy`_L#ӡ.%Ce4$ҁU" ɕptAW9tlJLb*7LԬ2Oi)iL{ȊqÞ[SnD65۟0x+du*zT񴓊J#64ERCN8Ai@Ŋ5K?>3x1 n$ @Tf;f)YxudQVRApU'A-%OqqȬmevwa9'|sa5#Ŀo,K+oBKf>9UrwԚXs&X`~5~#UeKM5jw'2w> #q Qzj\OMg#AXAʴaCG|C:6 %{93Ma& 7bN )X&!hBo-p8%Cݤej/ܷ+Ɩdo5^u Ȑ=$,+ eDL `uН3#N%uc3SLW.~SgLj \t~Fg< QfZ%Kxw.jb zT <$@QvFIXx6iDdcsg FPdßF+FOٵ}@oǠ U>\g6rVZBllN;j-(tKǨ7uEvaմ~sR.== HyERVeHc>/{d橸OzLx Oz +òt0B< R2BQխa(׷bؽ{4('F$ǼLPY*k S_B1Q_jt4fskLsŽdX,os-Wf F;a~t$33_F{F֖ XEYzvcǭan<ܰxWTo i9V )@ Y #eߙ*TA!@qqF֌T$ 7Ѩ;'6BC~+V`&Rmސ7܍z^Q܇B^]6ӊf!Cq™qHu-瘝&?C0G'4w.`z;bZk?bNgٱ{;z}6ӗ;W>Uk6Fԣg oq$YS)K֩.~w7_ {vDEw0.B1h?YÆ)XR?:@e1MK/@@@"[ IHTD6Lz<@w& 5㸵k{+ KT'/ K)C:~[C7ċsx:yy7>GE i3҄-:rxr-E7tZg7~0SuK9,)f8/gt[/v|cX^T)c˞?ObGvmCtXZvn9: !Z2*VO?${K/@LPyBoVQ0@ݺ /+Wf{o #G^,RSa.@cs0箒hV 6gЗ3g8 ~y+/9w! {Ժj˓0rI溞"iIEf!J 䊘ϴBH䄡V0j-AeVSum1omҕVo1|Hɩ'7B-.!nZ@ ;z@2)v;9/ w#y;[kNL|$P?Iuq1l<\-n͇ d߃k>C3PVa?W{2]U7keGIKBAjJ=Jpgs 6 |7\ nx4( =v6mR> }`{+ex!d-vyײU=Q %i՗ Lts7gXhדAϝVm|~@:hmq sjbƶE} u%_ uC)~] H8qlT5ebqY- .vyߔy&g~.]sy <wj;Gf*$-M86JB&TSd/\ߔ_y~I|_] S 5e0>U. 5g_7NNma9_Ȳ̙m]~ cts[)iXR[FEZ==ɖ80R+CNƛŘ_#OmUSd/` ƯH'NmzT(~3eP# j۞˚w_foafŶ5 jIrnQ"hlhM#Qe,ǃQpLmMp${ q_Nt'i@lJ,m΢!OJ8 w!  }C1ۓbe<[7DBPhժ8BN8 XƘS.~>]dus6O3M/V=H ]#QvE {Ro7KۼosW.;^IN|P!3*s7N= \zޔb-Bˆt櫖q {r("Zў@q+">SMKZ=Oi+4V>rȿ_ lJ!G[R+Gշa'"I_3I-Nt<&;'9k;JUS(Aj2?2<J$:ʶG?xSRpr/a>R4b?uᘥTxvA[NƓ3.tA3J9i@_dr[ꍑ*d|sИiዢ:muSs&]8Sڧg]FߍX\[#JKuzҙ~Fö'nꔒ)~YĎ/=Wb i+}[VjDL{ 8hHd$4L-:uH7"Y7N;k*~L+E/%be $- 6xi~7QbվT Rqh޿ 1m=0T{PG4-:r>#YqS=MzesJ'UH1s3~:1H&R쓓H\.a…TTy!̝*C%WTci)eױFU(wh{b}$-C'e@3K󤦷7k; mUNghw& .̾:DZ;Fwr4T8KtnpaGW #oZ׈K.T1/}m*Ň?IwiE᳔]Y`줴XnB*ą*e{E!QRPݘ8R JP^0ZVNaf8rIR0.f6齶˗ -ΦP?Mni߾ cEn|ΒM&mwΝF)%:_ãR׹lk"( ktS[ya0XtJ*a_tuje{H^ah&7e7A+0p!HqgBLyu 5%V(v/G]9H>)Eof΂ԣ+WԂ:D;p\佮ȇ?S?ԟOK0X { 5AASV4I@,|94pe a®ߥxUbB ǧ2·d۩J6*L腪Kϩ̘ qĎ!Q5Ft8&rH> #m!Da:kZPmX5ԎLܬ$؍jv-qD"- U}8p.B\W/AP~b丕fӼ S>kr:Qd B{e顿L h4tb' nc|"ݾҩ.׸p@l%<`AYR0NX@*m}\Ս&8XhX?G70e/rYd}LoOm." ˴:/Pf]dGdpb7j#|k)6|ˊpRp5%j4O-e5YZRڭ_5M}rtY`̒z0fh]) 0^=[BPO7K{]8| pflj<ݮ+|]RD235UT]גzi5N3[~Ԫ7 |᡻$Og~~ОU:t_$D-|"3@ Ia|`go 1ڛB2#6 ƔfBex˜K.ڜ1F"lnǀGva0- V@!l_M$9@Z"6'XwZzP&5Fҭ]|_f+,ifkȧoR8Y`>! ՚!:KHP@h4q?)!K 18Kr$lcYf=n^i* ( "t#2r"<Jǎ@įTOHo3g D[2~k@[~;zlx=O\<߳׮uio'Ι"QXǻtP5s~gS5^.; /q1Xc}c?U 4Kbka{O؟$50}mK tA_Q{"pu64Β[OdKϛ"j<*q?,/^sK톢GC! FxĨf퍋9 D gi)Vաq yg*^5?- )2'b9CƁv#G;+U7\+w hR`{1aNHϦCM3V lUru4MJ}m?YoBHmK(m2L~Bai?/mt^O380xMO"|(сG\VGz@rr%[k@vﰦ 5$A mtTS {:Z'ĝO_q[V.eqAl^ CNcjzn RffهB,GR}*yk@!a!X=6λf b L*?hmԶd[OUw !Pmu,rL"Ƭ:^ E qrpD4Bgݤsf75I6}/ sЕ>$\>T5f&,v@38;]ڶ" %<#*9Pb;s^=3xGdIR˂ /,tlYtE뗼a>Ӳ~ZQ-YrKOoORbGtTcVqmEW᥈nC&JVf_ByѩF6 U3S1[ ˇ-=jrORqbM+iej6fiNyҖY~;'4v\=# },o&Qy2ε&fH> B߱WRSFnyTfb8N7/r QSt.=?HG2 ƍd$Јcuk% V>g7H}z"3(J29x1u%0]xf&@XHS8Gy =٥&[%Ư*#ϵg-9"4ڜ4kdt%re=jPә\b3#f)nZk,c.'39w{5-EԍI3H,O.RW+r{6σݶw&kD #)w_AG\V<&SyB'ϠA9#@BFJ`*d[|:HqIAVd<" 5r4o໑"ecG(Q'iQ9'K<~\tmo*1hSFk ,R=v ?`VJěnFqJ[|:Q'} S?MI4gWZ'*!إ6 _<ʶuGA]۝KÏi"g% &Οb@MA ĥSdl a<=&EI fT\w顨ߠ#t˸E%||֦5+(Wh* ՟)9a⿵ {ll/䋰}gqoZ+u26FK#$o૏ d[ps&| wbꝬp(TlB/}02 sFE5sƒeE؇8?lѭ?)Ky,]3?8O"x dS]q?#(F詊G,jEI~R ݐ].pv`S;6:nz;cBxFRԶ-tS;%%F@?ScSyAap]pb H XJCAGCh,SW=x? mZm> `%I&#G(e,?T%C!B+?ڽꄣD;ƺJFQY@Pr>A>: B+QCXyPfM)v S҉]B:<`j VjWSQ0).3SE".\e'&dҝ߳hƘNϛ# q~yRbdEp፸M{ַ%Q2x+ie?jHGs aSe3SBmzV' G6 X.,cPtIsgjo"CC%ϸΌ au[aO##D,:p(?Თ~BY D OU_DON/M%CZR  u :La|lg4\bk;M̪"{1Pۻ fLr'`E\Ay9Q-=@jl< Lm&p*n]FfESt`ٷa=%AIBZc5pG6(ZUs<+̜ y32!" P%ǜ澱A 7Rf8I/7QcR k5)6Sc,ro$0(,ػ$݂*dĘ;T|љ5fSnOn~=M7L4#^`@f F,sf7>i;K> rޑ6, nFhi_$MMt<|r٘x9Bc?:֯q'ܩ̃  +JUl޿s$4 rzhBlfP@6J;6oy~k}~#W_܅I<[üXdǯ>Py_ Ž6Hɞ%>^Qn$#WrTN !u ZzEՉ (eЏ7[4YLygăgK3 =ma=VfT jsZGJH| 2[A vXA;nZ .:-,RZw]9_5)$g`},^TS%ǯ4b*G$8lF7)|~iO\LҽtJr8n)ą k]S^D8g!)#pdd_WzU`nUu`=Y ݊VoP@ΰGX%&J{R: kzYAl̑-ozl{8F9*6JLv=1.ĀC[4%ۥQ '$CIFYь[Z^g ":_zc0]B0SNE$mƽF 17a8o"Op5ꖰ9,J8,TX6usM+fZ4 (ᕳrOJ q!FG s`Q(2DnՉN}8;D*=ߣȄN Yo.fq>"b$Ytyy(A:/ +J\MVf X)GV\&{QOeYe4uBu.ܜfS&mO3_uKk= 9}~*R_Δʡo^NojqK "P^HB,Is+{ d&++5ђ'r3 dGzO7famƪ/JD3dp!uc;c5tFzMRHAvYu dى,X 9,L4Bga?yLL=FnH %!eB o45tOTqXa{A߿S6سVW]4 e@i =^:e.l"60$YN;38|;Gً4"D*z8L(|`/٘¸$ 9NKth8'YFt^j.e֤?ꏘPQąC@;^k٬ j%}=lU> l\$/dPtFj!v<&Kp=(O~}Ѽgjߑ }ʃBoS{T)Ü⍧opVZgbGBH0e+aDC/GW+wQY?])Nj`qqN]hX:jc6P(r$x2FL—"-{+g;&4`-&VBLjT{Z9%+:k{Ȫ֞lr=u̮d=Ǝ.4]rN^@sz;bӶA5|0wizN x]{ %5Xֽ}S֏(lx8JеkijXBg/$˭# ~"P2mh%R4Ճ,fT ;-;8vBtMǷaMhU _I-a|ɹ5Oj؍fn7N伸gDt)\)YRj@JWY%8JAhѵ*:E-0XՋ&%DGt:MTCnIȮ\&g`@ަܶ ͂XIml \oT)\[@ `@]c"]靀aMy N!y="-~cr{N1̘ ːC^qhȲ0Llb%ГUEPaB^2+'BCMGAZ Q˩Ђ@GuhG7K.Q:==ywdH,;:C O4/ A1O-Yճ>z1s5(0\C' QdX C"]jXuȮB*UQn&/zeBZg*ojb6FK|C ^iG{W$2@"cи$;h m^^Z<]gd%A+oޝᑽ1C75iMB݃MB6ЌVj$֖?ryS$ ^Io"d gOT 9n>&JK[z7wyn! 9\36?jon[u鯮_n[2G=8o|6lQ Z(-6D>gFEg=c8#UhLv킚$$T K5VPMhq|1mmfٙ?-j{6iwjbU jߍg)3*cN쾌)k"'x;zʾrYhh̫(ک_[3ϙ;S몕̓B (?XiV73kE ،K6i_~JLׅz5f.ɝ~5%R+ҏi028֗Dw-y$lF- w4'x.[IwpT"K0◖Oi^.y"5XL5g cL̋c}oyyI:AQ\JU>דmKbw0FQiIRpa kh|gtmau R8™b&UߘIs8s/bp)fIOXhzl̍⤘0` CVM 3eGǰ@=?T@- D✠!탇gR%[|MK{mEJb?Rxˮ&MψAZw \F'[К3ҕS(]ba&r&6k$TFnWLfH'Zm9M&y:wړ4[##M9+?2PbU֜J8̤s]u3l +2QIA1QIBq5M$2XScL!\Sd ĥԮB<lf br)XZd|Q胊eMJ/$$>Xk''ᶮ*4w ܈)S.%Pnaoю3hΗ Rm=K[Y\Bk=IFL'2A|R+Tb[O]8,"+yxGa&J0 "u-% V+fNkuk_ ;r <ԒiDc)u2e.1{v"Sߥ+V:x0CZ.|+[rmB-D.nMrE4(ecи?fni 9=\dV .`q&(w}PlWHA8.;CxPf`w s1]?_JBOOE$+V[vKNnq QV@V.LCHL0N&RD{ Wpn'8 G^L@*#ἝNE'+ѕ 0(:Iマb_%bʟЃů&fak7GcU0(DHׄs*5j6g_G"%P1},?(7 >}^5~Owx0Q ~OZrF%Ʒ4\}űB`2E%)rr%R{dr]>`.>06@Z/KtUO7g.;HZ4'60щOGv?(]([D}+Du&hɯ4@ GIKafS@5ńHPQY%=j$na%p?-zB_649=t"J<#)&r~! ֲ<# D~Fa]-3an |G7,G;036aաfRaNGK&QrŷLvIJ11v_r\R ;jrm㼉vR#:0x=*L:"='gd̳N];"I/=.˨a9#Ov/2~IҾg5yT]3Ey3Z]>8 Қ] <'6OJJgÿ4'4;g1VԀ)[tUWV..*ב9?@v5d%U s"K j]1rJ :@!?6.pN!<飂zcRȠuB8K"m~i1'2wJc|,FaT.NzF:\`CZYasWD⿇u"nV,jH_ Klq=EvGvtTKۍwAKY~[2huԜ5P Tvལ9lU/xFhQ. O__"?L&ּf{*5WxqPC=HfzNU KTJphp(|nҹ8EqvJkH.tcO'N $t)n[&dR*Ra\8rKp {&?^Q[T h[tx ߼O\?Px}yM1%<'=2O|x3 DOf։K/dAky[{eJ;~/!*hBö aVSz ~tڪޭ~"vv{D:E,ABl~-^󜇹=TQG9B|̙n QFNq09ܦgpЧ1$ dhB(}I ۼ. tc_Hӗ bKa+d\,reWWU7ww1vAZ].q%gp.J5[w,7r{ϯ(ʟS6.F}F=*s֭~]BowFk^J0͌=|ڳp.s88~*7چEE/ˌAmJȭ!X8ٴI^SyIEIcS>/J6w㼐5`#ziH1a;, 5+?>Nt{j[Us[ʰHo~Mbн9y4Vo{ Ԍѻtױ]Ix, &|&M`(„k3"dAGɑPyR*S LivF`(,[2[|.돇},LuDNW6G㱼Mt\@̿ؖfɱ7BM rX evF4/\f u!(7u"Qw5SBܩc#zAyQ:}Tbqj7͝iJi3?/,N@zj{W?NUq:x~WP%Ĝ׺s‡b0A'~?< 73\jn*]*ϐe5ƻ92 V4\Z~ao9 ۷ɷY5.61vxO^!K~94}DL>Hu?|Ιo{ĨݕiؒD`g,ȥc~A!C-CmST[/3?hS[86|m$Rịr;u ˖N0 },ID6c" eiNj_uoBh6hc?c ~iHrL1M@Pzo_eW]3[ƴdu,jטGF_Y]mD$ ;@3yJۄ#ăi@HRPJn~>ŧҡwLa6kƥ;qQies I.z#^Oa-Nqyf3)ߨ 59}%dovPd8Duv >|W|̸zfZ"_^YtcvJc[,xñ{[E"QSp dqZ D(lLSGIUh4IS8&kI`H:ޠSA{zTߧXD!Ziluk|Etf`nTCFlf8&vFkbPœrqn\ɼt*H7.^O;v>05ώl ~ZO+ 48}`_˝oR@+7/S+^T՜C$RL?ngܵ)fէWb]:jYه!qǶ{fƞ#>wܗ̩݌#7T1ݡ:з&C@‘)1J; iAB:E}`poYN 1#v>gph"W[VbU2|X 2N5@1O;g{r[{Mk~ֳ IlSEz!`Nz1zr:}KJgNf"d봮M & hzlQIzL~Tۚ0v9# 1(!{'\Tߤ1`'5kw0*9ܧ38uyV QaǶZ˰Bgi yH1O0P+lV2Okj FUU.w R@I%ղ}OUmVO clZh@R?h05ǩi=_pnIm7zR<<}݄6R,>8!=+%FY'0L&_SrOƨW]p)8ņpgz-g#r59lT(j/zbO.v*dHxMoh>y[țb62@ҨkTY@1nֵ4W5w5.,PJ4N](aۺu5 7 Ft>D8#ْ/!O2 g/ TăyJ4-Uf&@gTmϰǘu1xeSFB_'T+z&0+k!dȁ5r@ޖ1G蘗D@?@!oX oȇWh34"m{~4 QQ+"PcAKd ґ`NX} 0^BNIpΆ-IO=D_ ykߘ*Il^8ͺy礪ٶ&ח]<0|ya?nt1,_N`'ݩdY5GZ.jHv槮8HLr[gNҳ( jMNZYxamơ;=A5%Csa1J7MIn!u9G$C$˂8> g㺍‹[XLe;q ΂G!@KWVջxAVini 3G Z$H߽BcXہ j3[jIb.]-/c,>oπ['PZv@oۅimn8F/>zf,eAu/OwF dXdPƍ5(v IjBHxn 0[3!| n+ؑ~/ C 7BW^ݩ)[ ?4@Ӊ6@iPwScҕ|)3Wu՛ڞχր?-~V _k\p+oO^8܊ό?J׷%q<.ST7U$pT5[LB ('f=5Z4!8E^IS!ϝ RWa*iUK,yЙiQ8$:Rsk,A427uė|%. E4Ѿ:Ő9sv#ʈ*ZյWK'\e.Cw9bOw0׎o7G6Z A_ `^K.IM{9_I-Tz>'>4]/3+BgoX&y7Fiyr$yK'uH^ ܺ} =^z<=>^#vtB1g_LmNX'O%4&V0H ^> uϴSNr C$IYT9p9a2?^R'26](q9z0 O8897b1Җ p|lz>8jU6H;3 `P1>G >y iU%j {Gs઩@q j jB"\8 tNdXg^gm'% ';֧@`4{٥UVӚ1RSb/poh=$'>$L݆锩 Cvw)8_7hS<clu q&Ib%>A;_<^oq~*QUZcS~i&j'/P3ֽF?Tw>9@RُNi9SK*hxܿ`i&B ׉P} PUQϾ\6ŧyC$PN/%g_Bn#}Tʂ& ct gRT\5?j(&A"J  OEFDeJJLkU\#U .1)!HV XŅ"BΥG,[ۺ^#vQqk3?r',D" Ke7b$$@NhA<|Y21D{S;GH|mMoϤ*3P|P{۸%<ì  ^[DUXthXf LGI&Om5p]eFӥb{T6_&P0oO&qeH^p3馒IOC 8sʕK?yiZf:F,d)/1r,{kt?[LDf\{,GWB3<X@6'xF`\e㝽N$VUfv.2N63<%hg1TGEE;XV22_x$Los Zo&Jv)YOk,+GI<{޷j3T3p-u6S#aH  Ov1ʒU?pĬ>kCmov>#s <}1D /KW]l^F;,_=2oj*UTm`&.toaplGLơ#SA&M'}|T|B|&ϴȣ5,[WPWLkIUQ{Anci% [_a5:tWsbV $q2jG/ N/D1|UIChX]T ِ)cؕ*Ga'RXxibmZY ?^dƮ,9aum6<k< ؍B‡t?UJr>i 6V-#b 08>YRz33 R-MjLGm.9qG$և9ox杸h=!GTXL%%ftEҾPw=:A9hҕn oa p@;*o,'aw Z-PNM$V3{b5CV-W,pc#iE,LYf$E޸=֟lbq!<_gg DOpDL%*FwQL9+}So .F,' P,xҸ)t1D,ȶE#Tw-+l*򳎗zaT@Tڲ@dTv8ZPj لxnQI`ˑwi˄ ,56;{]6d+ ~.BA%>ex$1W pAgiokI(tHrɼB5 zG ddТ?{|Q]M"$7L-4 Q $gbZ% }pd#ql`B%m{xM0<=0'2ԋmC FU o@m{ Yώ? 0gP؁x E`:tvU>LxʇTk{ v Xw[q aI3-}fP#KGO@;X .Ӳʄni0mkț-8VDaD:]&>O8.vkԍQp}`ơ>N_EG|hrCCDArV֛#EbGCNpZ.O*Ӵmx!O# :>x؝V'{ #P!I9rԮѓmRQrY9Ũ2Y~+\GY `\i~+g)A/FQww%{F6SǜU uIc/w=cID~u_!YA#I1[l)NpR{ZB6EapBxԡ~ \7:kj6w^d^-H]>J1$ T-vYKHFh\H8¥ [Φw7.a_>ƴOcuI\6F+@l"7V%{V!X;[*SyYDQh SĶf6,%dʜכkL 9|Wś0&]mARe&=P 'RJ0G)6$on;0mt2'[W> {ß,{ `Ibc+МkFƒGkOB]R518/o_9|0~@tfee&< ^q3DvYg[E!B( PT}0؁ $`nͿ="wS6PrsPi5=$ez]O$+Ws$( ÊBG"𷩩cu Ƽ^<Y?=$*`= s6OQsQz'˸.*H IV%GBcX!dŎ֬&o$HzΆdwx:m'ǡe*م4Yj5#CNm A/GTBnl }ӇABOpSK)Vdž ~2ɩR9EtmkS;X6,]W Kȶx~90}?AJg{xUW|,o xh/Dq46SW!9Wb<"RI/>fyCx +d1GH6nAS~z1~P@y%s$RuF@ Oe1fN~CɭLHe5Ҋ ?)AX>q4z\+L~Bk9B$Nl v'1pBeC Q8ϫ4+@Nǣi>?h^`Oqd D _w^p$E)$#u_൫EJD89lm+9 6qyɍé' ayoC:DhQ-t˖-𬸒jZؤbf51cVsݹך¢NdRIϑ,}^b;{0VUX=qva^7&/ / wUV+'ǹ?#6<.a%~oX;רtE{),9@|MNe[ͅzziɸEmTkj)d 1cQ|#gf=dlY_K# $G σζ-rsjoLm `0bz'-j}@} !%bnbRyJA3[ia=N%q'1ڣIrt"h㮼ӥ<;*S%iv{2?˦K4Ogg)O:o\t2=i.}Fx3}ya> @ B;/-M˳Jme ϛzs[xkLCAfy¬Rh4r[$B-IV0ڑ@%6E Mچb ]'>$ 3m8˟;)f+B r#}GIeJ/ۭ gW""!L39@z(8_bb JDYbp"2TH~6cf=U!*#"<mDbD 1RY2CD- $ (/c=֗Lǂn"јic֤.1yBq~I׃jQoM]1@6?^)yևD_Jr\Rˁ[ 9_-@ɽ92Tq ӓ6-')8kf{dY8K<Ⱦ Ua~} m@BCs{)q)KdKM 1h㢩,s­U]50`੟o$Ohy I_&Gfo4"cr~@^aF?Ot@>>. M][Qek-n wfa!VK6iOF^ w$ 1Ms_l+:8Ѩb'GQ%؆UkF+fʠw$WjkJ[ rI@s~jW~8g}!0Hy?qO7})n ~2d~?0 rA?BjD V%ɼŪK.0sR;î5Cz? <[aib|,sۮ|zttt鵹.٥_>RՐ*v 'c~L׾,:- |Ƅ2C݂pC;)=q ڵPfC _ONbAS-MF[W6H<-zmbTVKYkMލy23È7='syn"!2UBӱlAL0dsKsq8 K6Px}[x{_1PH娍Wk.(7_{]NxcA*i|?{.{e?$-rʪ3"GtV&'PN Op_Fl^n S%9Gb[l69m馷#b/dMODjhBS1O4TKD8 Hf*!yb'4:@ߦ?J+5ϯ *26nO՘mo??fz)R7~N{R@l e^xMζO0TyN | 6;E,gB>ۣʳWvXKRly / _5 WSL:4 T.g~m?wY.$~냳NףL7[[G]E$Ux+]aHdg>ĺcAD#AT E?k#$)\[^; XT?4/Kbf;roP:j7V?jVƘ f\ѯ Z~q+M]@h=Fe\SU('H .$SyT]N:ϮX+twsIg hEO׵h=w&pX*{/E%6%uT@b"̖S.'"Me=DaIZ2^k@S%2hQa_:wFx_{վh/T& gp͂63ۗ;A}GeC~@J~'qL|Iȴ>~c֟ V/?7"`ߙv,PtaG|*5|rC@}^Z]dN|i$t*ڙ#]Z}Ϳ5q—^ʇ_ezp>2Q5gUIJm0I~֣t!0-]i25|[ 77/jtU)3UwqeLyNoB[1*^A9.#E gkp;{vL\x|7]Źkqrnx2(Pn:+~v%4Iyh@m8]iOK Ox<a0GߵrMƮU:{\B„zbBL^b1MeQ2fj`[ș܆B ^"榝n.VE?v(#V0% ͣy5|ʹi|Gf,HDdڼ 06w+nzP'(voX"7 1&< :{ /f8,;?!Q _e{Kz2<֏)?T`F ?!Vl%O,VF^e/aR)K{f0%ՁԑhW`,s3LUm=p1֠/"-;08BxM :6ȈQtztԄ{mi1\q@ Z ]Zh9?5zkEx=Sjb3fm|E#B$uibaZ`3u =•Zpzst^Zԅ ڻf5:inp{ :jo_WH-ɱ>ޒt^ByDCWϚǏ?WO) i$rG(1aUx<+v=VٛJ0LMgО-wL~o`l+WlqQ k/Ht5cYGZ5s\6;7L=3j6[rJ9'\ek-**蕵gR{6;+K~y Coy|Fnu-hw6VX0;%c6,Bk%TׄGI?TZ|Rdny[Q*>E\,6wIۥOudOȴq)a[de; u@fmn*?)>e7ԼNz!qtM4LeJVݖL@J~f9TnB~#atrJ W-E!3z{oE\ Rrk\-&$4L7*".f1G0-ּIHGfB.49G)R'S~*FUǎ1S -!:X՞! Xy69ʷ2AHǮj"3R%b[q"#+LDق &܅3v!~^z6n#Q訯od 89l</l t8O_35N9B+ܱ(Cs]V/&1@-t7.W.̤(pK<%d95oǾB);Rag`BOGG0"<t@^_cMGO ^:r1q)!`k:W[«0Cm]QnNMpw(rb͍Q F3U: QE!r"Dj4qh5vzhTm7w5v1 p jiU4}y^-31ÓUMb;9$/rM"xCϷ:9 W4S`/e$M&w.Y&=qy'D+^7d68uqԲ9u ݛER&gWB?(,J8)f `i!blI@ tyל >߹[bV|̜fL_ަ:?E?'e{Xsg|) E{Pv=!ݏ!\y<2]tMEoNqv Qb^,OM#쾎n/59WH&HT%C\@v,s@_j2E/\|\2?VފrTM[ukіkَV4 K85FS;&PSJОW fWHм᳂%Wy=s7|Zk<_D;%6ZiuH(Ν7y ޲.*=Dt\CԞltUq-` my٭`1"2r~ۀᚹ^.|LC|P{wIOd $xG MY8,ע "reF_]O"n3:BƜn` ʬdt?h0iw!<( Tm6!7T6jx̮\ӊQ D/ L le)6DJ*_fw#at=W>lӛCJٿzw!4A?ZWD=-DTtU88 -Z?)~%mD"[*H<ı_1LU *gL}g@#'kĮD!mzm(/L캯0uin4h ˻W],w+/ l*]bX2Q|nKP8sDY#VNoׄM,) ¿*݈^R)fJ7ƞܭsN|Ina[1S9%_ATWDE RX9g*% lwv*6XjkcFYӘ`XgɱfVZc5N3A5<PEA#\X|i'ju)m3zR ΜFrcKFe[BrC+y 2 S F¤4hL5(2 ?KE+#e%6*v(2Va,2YszЧvEE`e*OJ|PA!Xnq_7(r`@i4A?,0+{!t_nikah]J"x"≚ xeܕYi‹Vk@j[̥AN cٸYq6zR(a@(yk,O%hCN(&"Jz&"!poT5h{ Z{VW{3?AkLl#lMJD/t^}czsȻ?A%ܙצx E < A9-dnc*Ȁ`e8c;ˏgeaK/bdui򸫻\~/rj ȆYOz/beK z.͌Q?ajX)D{jfTP}$%Xe6i/;Z ( :oY1sBg}P$Msl.KGTC^4@`H+[LM{jA(qe\ GByYȩ)06@W0= za 8uGrM#FP8ed(!xI,xd6IU#ېR_:MFi@/O 0g&77xQ9o@QuM(8^ɋg 9kx|3iouw<ߚ(ICS4AHx7ٛf16 zFS `;,oglI*lV$1ST0Ӳ~۔`4K=6裔4"^Ōa~Vg=tf-.dMGQ3Byl˙Z.Ir$8?oIJPC22eoי.4ȃ}JX7XЇ;Fu˄W#_LW؎῁?fp;ǩTiksgצoxY9J5nbtے86J9(ϴ)j7 tv}sWL4:TUjfe$ 0 V۪Pƣ[YЁԒ31r#E >Z5@, ( Pս*7@w6+hXɣM x4K[[pN[4;Kllk[>12Z~j3:DH9M뇄v ͪ E.q$=m5R+s[`Y> *,X/ߵ'5ZC0 iGTC <^,K[*/my 8+9|띣Sikd/B3}!L%s9r+<̺Az&?0-p7#')&d ({/I*|Z;%8 ^WΗrdzN-1,%6L6t~Dډcp (]LSԪ7kv$ KKHiA ]J*F'tDqiJ}$S8%!,,ƱWVѩcVF"ĥJ:Pm>*3 peRx* b*TUySyal@GP5)Exfѓтcpy.e0mix4p`SHF4bfS "*De;^Q$&\Sd-pkX0n/ Us7jp#*j;!wZߐzO)P}xVuc=HȮ8SfwK!|}kj<~qEMv~Y vB񤊸5c>9!RnyJh1YO_HO$܄v*P~'WlnO64/?@ElR_GSt)eU+Jg58O|~q؄SinX.dx#oë8=4aM҃i:RڢjKw”ū_'3&^]\9 +P?23/ kf+u8V)jds,u.a^&=$Ҙ04 SH̼؀,`^ǥ5o 1ЏDbjgsB:z.,DhQh" 6eb-iV_DRŰ&eJxamǍ>^h&! su͈I=bUԚh.6W]Ij%_+1~uc'CU߼b+UC;DHACeG}Ga/VjO ?UR/͎9v8gړ!+Skvnk@z64K`vH9|ƃM-R gڜ T|?gu]^Μc`wD3${V.~I}sƔxQ̮ay6b2Z뮤>wǘQFYXrNX7>\ ,_4U&Q¦6nSplcYEP ^qoτQ2:ڿ=ϒ%q+<7M : [YanDDĮ7ó'|B>7U(7#tq{$2Yf_9hkmwRMotr*/COmݨ ly'&LێG`Ú/y"stiLc:g|//\ܵ{H=?fJqq55f£߾∁iGBV M,`_uQǡ z'1ұzr+; 8pI}!hռצy{B Zeإ7+Xkg||8_-+Y^~xcLD|`J7'f(dlh5K9sNEI6]A`,x/pĖOF5Z^BE[-[^^OU:m{Y=<ZYK0d\mB?/ޱdi@ñ,a@{~h\Y+k <{=OFݸ+A]X߶l$RTX/wŮK`]m4_0 rͱ)^ɑlpSpt.DIĢN4+o.ΟI/y,Ƿ1;# L% }}Vc.*d,Sm )lDF.<24 /ig"G7%"I(A44qExp O44,n`0Q^jߣ YڊM_g2b@8 aݛZ7 V5^6 0@TlcD:c&Y|9 P,cH'@"Џ0(nѡ{R;B1:K5r>RZ*'ry3.b]<ys`)rUVcz7OwVoJp bl)7ϟ p)Ĉ?y ҂␵FAP5zB}Sb]įf:_n@|`(o0P 4/|u#" H5Ӌg?^߸n.Ew`*V 2lh:@y@3)[?s}_MGLTE]l6i[ &q?nLk M()6"RW2 Y yFr'6 TM6_:)sAN7ersdʗ`/jh{ 1JVKB;[^J+hH}[ @%f9wۊ=?g]!PŲ6xelG/zF!cYr_2lO H6/زWDMHSPL:o Fu MH)w=oRlN TuW;jtrcv?ͥOo~4;KE8kS2i֧AՑl_kkpׅwKEfW /I_0]jt7viNR]ESc-bH{m6(Dx61!d\aG^-J A5blm7=(ʹ H!}Z#YD_6Ҟq @%`֊Wi5yJ+$0&:Һ:yED3~zl uJCO p & N3pf) uLy߅(VhW[V>8ܨ F\kԮYUI|{\)<< A9\88)8@`~XaF%){2Qȝ^WA_ JvR#5s()f$[ )c$(B}W1 2n2xŧo_V5.*}BYlc^[Xu/Rͼ1UȪJpֺ5̽3${@8 [3" i)+>]&qh2 /L+csJ9zH'!!1bQ,J[ҩk9\ k8:D)_?*+7DNDN\=~z}m{% ױ Z8dˀ!eT}VEyTq~s@|w|wÍ\KGʮT' @9mP<ئjMz)5Ɏ8f6@A,6m :Ryt?UOM,$̂ZvD@x*ܯT-ȎSڲ?Y7a @UrCO'^3N8";AF#5툽d̉^!y`|96N4rz/1ẁ,DEN21P#`xEQ(1pczyZP Kx\n~m{u7*Q'<3a;Uar8=fBwp<7YHjGLXx$P++aA*׊U1Ë>r 4WWْr=?&Q>H0S|?0I EX+Kr)?3VfAfjzA7إyYpByĖ_ (w!=2 ߴw; -hkl8iX@`Di6qd#M YtA)~@F 9;*#* 5,'P-߇T癛%ЍLK]D=0ꯃ)aa5`V|?4MD1H8b,Tn4C cByɞHV)w[]Պ{,2n:"Iy7} Z(e@`iG;?_ZJ 3X$hYJ~]{yѕ,PN⦰4Jo^xnq4)߿(`H*d9\>:XA׎f0L NYдT%bPUsn :v C.TA»O1H>RDgҵxMLJOStA/"x̻oAXy>7>癤-ucEL]<`y,FwZhۅd8QV/'/R,3z'?ݿɷ"!"V<6"[fĒ1vNmvХkuO"6ۏ8+N#`E2VwEeGyu^=, [%KְÇeh 2OIB $l^ygogj=dtK cZG~Kb[^B:Xkf}Xl"\nIcd"# b[BRΏ&N}c䂻iִ; 0굃-CU'4TH/ImB/XQ&ݎ48NPn, 34e7kiI(̅3J5 P/pϗԴnS1p \`+~bC ھBFԝNmhoj&·huTo-__.HD@5TbL싞Q&^C?5ݲ{rYd]&qY\HT=$<;f82n8H{HY򰉖{d̕ΆKV$&K2j10T91ɍb>YfԇTӬv ol4@>IcΒXbe$WGB.II!lݛ[MIX%o 1|L) 3x+:AK:^npd댽Y_hj՝ˮAtqTVC3p{a[ìV NQy@@X 8xR UoXdrzxe1ҫx `0ԄFUdsA.43Fn]km)*A/'gp[kҋR@xǷpG`Co6`J A ֧Ѧp gd93l 269R(o:M<|(}^5.D;JUtCEwEÔf8"ݩqtqRKj9.Ι2a!$^#"˹|3!o~5JnݰW+>t.#̚W13r؛.\ka=xJ#[ƭE,x CE !><[{¢B@ ^mw2 ֺ=,r◳ qwrE_ 9c .Qլ(C8,^CN6J3.xNL7)cb{'d[~\( u;?KI̔Z.AFsM D:irZ̳\{JLvc.AT C5s kA=hVf ~5 8F"C[kՑArOo=9Ίw  y]>zP N 0cEM~u4=C_/nF-G'_W{ LGXhwx|R JH|QG#{ֶ*uyh'6;c_fmaKg~GPEr:i e=wԊ1 $Rd4,Qvrkq cO2POI!%?;d4 MUy+XGCm:=ъ -43٪yM^5"C}a5,V+_ܕ9\ݬB6&i1L4ᰦ LJ&E{ +Ԑֶ/\.0"p.,*vlM,>iO^}k_E<)6UQKQ^r板a~Ў!c^ /)>5}3NU+ &b.z"lfE&$~fVBˑVƋ JdnpYV:Xˠ_MkS -MacIkZc^ϥL;m ku?C"x7zh;s3bW5U <4HpU dU2#1MSX [vO#r &Ҍ@Zrײ-A i :8*'k #n$OaK>VPӂK15Pk78pI:WX?'%qEDdB"yOpⲫ)Ah@헽eV+{ daJAЍfP1d0Ye#]?)JcANǶDm6|tbNEw!J{&D[6/-z'"%p}&b+*" BghqflD!C^'H:5c*G^䍭H8Si'kΚ.^ >n]1!vA&s~}pfp?xԀqfQ&v?4Ð*/y, Yd6. ŌGyګDÀ9\Ế^(___8rmZ^FWO:Ի>Ly8ܳH^+] W&:,:2$bS^s4a.vE;a6Z4Mdr1Wgӡ9jҖÌ/*E8URWپ`%-ag/TbM0+Sawlp_OeGSv60Uu3: QW6Xodqb#U$7ܢ! p\ FRdk;Fif6c֒u#",$툟dJs bM"'ʭ[' ")Sb=Ƀ|{^(;Rл&;};mb|D@$5[B4]x,~IЯx8ӡogd2ɔXNbT.ݩUɐliϗ9iRgqXߢnCQO;:'٤L0QQqWI"Ri)U/aC%&oAC#EҎwB KV(PkU..H6:Ae5g Kq=Xҋ^@7D/QE/"W$" Fu ])% `tMM~~h?+u)Fi7'ݩXxxՊB_UrM))/a{}e~3Z7/v?B8zUźҩ<@uN=wVϓzE@4 sq79B9kXAP(1Τ*%F1 NN`F kф;@819HoÇuC>-]h=,?}0JpU튜xցNE{CD2 ;Q6:xdENߤJa~hq?L 5W*5J8v&HE_S Įi\hUeO+/d/oq{|@PLHҘIXbɓj_:ǂ̣tWh5߮$*L7"%wItNoPpi2r U C;`4X#ku''f WñdM.'[Tcf8w8I.~l2u*o)5XH0̫ɍ .ƍX'uك"ܱuji4V B(~ 2hI-X.Vy.Z]zbeN[ҟONqFijƩSÍQgqPyr9 |l*P;i[&"LvީeH4ϫG@{邊& []玛=#/&ʫɠOx- Yaˢjol񸆰݀. 3Oo - gTn%+i7r&L,,ZggV y xb#U bp P:-(6hL)̎w_x"(0u˱7@3㜈k8wN}]HqVSX2blHsjgH=_ DHUMXp*zRd 6+Uj rBXڀK[j:8}x!ًL*͜lPoqu6+4nn$oϙX'HO{4p!>hdhisM\ig zʰrT Rzĭ@MGh!vE}\hp:IUmMi&nuk Xȑڧ}INPHEEON5g  G6t|G/8%XVщboH<9{c$1+w`@f$P7:ay\u%X mKϹaa7PsFjm_QO06Ł};uk6L$q8fzcW:l6]l^Rl/pQ2+IQuVdh6˲(N* fϼMԞp/_ 8%xĔ?$-phkJbñ& nদ,qŰRvq%0p0HW}o75"H*5oCdŠW2H=&yaN\1!wI5E@,g['沧3V>Ago߲]4`Y`rsr ȀnCOH$C'o[Oɋ $d;a '.'H>G A"ml̮'Jb\=-=cƣ:[1,Gi$$yMŕauiRƎkFd-)\|@TL&(g] l (ϚI!ukzzYzw#ZcT9M?4K@)HGjeƭ>y).NJ8q,N>(S !o)kC߆TD`xtHqdӉ L0kG#Z(Y*)x16ېAy|nMI< &YmTtȳst1l6'*H!! w=Tm$4Y%:$FE\sg *HRQ3d3yqa<.^a&4#J vN#p<7>u_FLX s.g$G}f,![z怏 [/f'IMvA*HP,f9ueV⥨`Z3lYuTތK'ACNh;1RtS4?;MsEUR,!,vT{Iv4/".`ɺtP~%B`.3E|R*rEK/7~uF?@hxiݒHRSݻޥ'8dgt>5ts{ӱ@l˔WTbHLbc=ZYl6 IF㸗--V,TiJdda M\i}t` ."j9_*9T/"ǨZlVSһ`+H(6I@ tWm$>Gn 6(X[8Ϩ5l)CGeQn\R1Y Dꑕ]?WgӝN[ThDX_S`'1I2wL-UˬC>Jxt1 @wK8N\u"/㴩}tzYuP̛߃3=z&9`aܓ xRQ#88Z!T~v"N!1p1in @XDխF .30o#EY5"fP*~naH |sA`ߏ6&.s]אܜ9tg"O T9;Iɛzw1͑" K_Sc5a:+IRV0bZlMRrAOUm&̮1aTr3ؔɁJ[R"-k^,fyy6uy؂֬Ut6rՈDM4xSވ֘ji(܏:m9ߎ=yaGڄ7;zs/:㑪>.nߑgAF5Qzl[YSFک,_V\KIʂ*eD' wrA|^+ϵ1l~ؑJy6k&=) xQ5jx^s>fKH/pW< "&"0kEPI0xZ d iMϥC_Bv^V^O:;:Vl4~i xzMp"&:'WLPAMd!@4=#q)Y7wLa/S +*׉̗eT @kKįgmߴ0S&L^w bgbi8[K8Ze L%MٱDSQ2-P}nҕzBEwnl.B7'/M"'1_V~^]lx5(?izJ_4aabmtew~L+w94.1zItZkլtIYKT,؟d%xXwZ3&B *{1z zZ5%P1 z8CZD2PcVwtQ/a "L_ԵA+d"xICLčvė3|YeJgs n anTyR(6 p7 rqګzIbqkI^=f-Մ5ظ "nFzt^U9%$p<2yV5 ;rb[:mt :1mt c4$!J_X4>JI(!v|LsqҶ8G<&H,laեy*H]Z4 9ռ1;I"Np=Rs]~m0ES1G&z;Xh}Zz. (W*JدʉкByY y7&2 !_:,Gj7޾ǡj:?K% / } /ݧ^XŔ6#V'zV|j0sN?U^sœ&7yR~+XewԂL센$UVrH4F^6C@[pT|^gނzp: t-cI({LaXS9b%HaQsPe6kE2y,b υAQ)l0`4j2~N뤤wXP4^كzSu휾 Wu?wBŷu7[e:ēM9mv֨}$'W-yÇ;YۻJ`J5u\?/q6t h^t:7?a VgR*gV;}aaӹ$bvf0^qTAT0Ą-ن5=@Є欲,Set&dX=Vsٯ;C@k]KcA"pn(tnݑ'p s"='&Am? `~+8kMʖn|2*UkT3:p0BWξ ;jt S\ oh::E/"q~lZj!itK#)_ByxȈ^V1D? NꅓsV^;&JRx"d/3{ ,’a94BMx oJKʀL6E$r<{Ȋ-:N㏲^@}C4Z# -Ԍd:ڔi͞v2Pњ$-`V?+#n4ԏpy2%ap ?:¹v;]6{)NU봘Hph[ʣׅ{v4WTmwr,'j)_k`KP*AB1C_Hcy7hx#\k{IQmdJ":vmR}NKNڈQ%OjǾ4Ze8ZòPݙD-x⡕@(THoprF#|me# Э,@$7Myܟ0o,\;El!07oR#MM 0UA-) gz}ى=&jɇTL͊EG W^g baN6W;εXRuɯd< 6%8N;6SE˼Xt&5,"nTz AE830Ҕ"«פVwbyG/)SE+@Qgmz讖7h࠮fzGd&܊p6d&T\Q.ǵ8C_4Ẹg@wqO"%sZk"Ovma^ L1^#2EJϤGȥ xVQAB!%*Pzz~Y`Bu #A |0sϟ`\3H8d7'$*~28o~LӊÞ CT &YӾG+Y,*M-^!t:~՜Cf ЃAwe<\@^^zg<~,mmR$ `@^;0To#ٮZ9x1H1t2shAiތ1ZWj0zfqҧBkՕ—<{֊=O8T/C .M)CGIxGrHeY wc!C{5<܆;S+iة聆40hoSazrR7O|F m=mI0S1Jskm"y㌳FɊ w$](~!OP6y7ӏv_֪KʱR1vܧKgoS| pҬn w(X=28'^%v6-g*b#|C }g T@eWZWB1wµ:&ނܾ N`S+%P^/-5=#kDRtWG 6* 䧿3zI*guE4ÚE'~ꉒX ^vss&#i>>z 6 B$nqpuXK@ ;kXa2*WJ{aD!ZoSF%45t$jrp7*&5H5󼰯1ob'ڴz]%'L#t(H}ӾM?^D@ C{pM: <)F"Ak܀|dO#"ظ(*uچљEy0ckƃ|O7 ^V;*Xt}jn"؉_ )Zx1)%Ջu:$e tz:6  S\ӯ{T_z7$ش֒ u;KU='|Ɵ.M$z%@nƱڍ' j]Qp]F bx^t\Qr=~s5:Yaۦ/}k]R@6W8>Ã_A<҂eD1xœXKqs$x1x=& gDy%/eCpŪivO;2z Af,!]d*%O1A"; e2;UkEwpo}UҗuF:8DeJJQh&t[4&lVH&{3 ;hWĿIhsOQM$Ik̳.mDP;{~Y_A'FBEt[z2vBerw=GL-+LOtyЬyh&Wλ[0zY"_r&8%$F`0FR iDRތ5`ŞTU+K\\stbHW'6( wH9mDy. ‡1ґnPE+Θ=uǘXS#۔xEɥjeEnSpe=}Y@Y)pF=窄vZ R;7-r~yC6޾"} Rpvs}&ޥ C@GdHBeRL[o>AY:`]BQ\NhY&1/CeN{| ,o~!ocR^` ==zދy "%YtQ&/D'@~&x]Id ?%iP41lgX\wr[zQ{M)+DzJtE4;VjVpžͅ(Hk~]3HVDA#${IW 5LkgyղJ8-%8{֭8H|,1p里 |XB(h6 ~f:1]SpP 0UotJld|l砐I@ cy4aF6#<6)Ϸ츞QGE32x>>]&[xt/rA-3udaJ^+\9Il(6 faT=|,6nl"'~.Gbpz]eнK*݇v8Gm 2,aBX8\P^2EWkXn{7K_aw"a7'dL"O{$q뼗Ue+GQy.xO2~p {K+G0+ Gl <\Ȝ̘lЋ qL+c0Rl{i\R,~6ɶ##؍!"`,QKЋ,}q Y-yxP3v-U,!IR9ҙKhj)5t5U,u.b7 ;&E^gI; Si"G|%Laߥ&t=0IlΊbx&~"lGLl$eS{1J_'[H-9w}9sD<* 0/sZxEBטE'ʡjk#' P,EgFM1`"' FJuLQ؎:6aɅ&*+AM-ٟw3ElߐI҈q$IҐ<ւuP~=vY$RNQk7K@Wj#ɔ,<lԙdϫ EvLtXpZVʳ3i>*/:hAnSqbŰb♩Ot>cf5.lS``cpQdwP:Z /h*%G EI!|UL}Gi`i|| t|2E\@/,rN([jݡzE"ZP] 1i6s-+4Py,,2ӈziih3ޔ)6\Ktq~Lj&@x<-+!Ip6'^r/*#qr喪^BAY[lN>_ɧX~?+D{7'pyӺDFV؏C ZDW N~U?aU)*6sJXM3^.LvWE;腓p>%NMpwߺ!Z0&)(ԥr1 |0 u (FBvo4X_׃n #:p\_.0,>D>X42;,E4F L'+iT7ǯsgO=>9򙈫Ea(X]pO>%7dm9d}cXn_4GX7 .Z돧 [XQk"i{TCl*vN, ^*՚Zf 3Yc0'йfJsuLE.&46 ,m=-/#/$M L%pQ 9W􀕜/•rQsv: [,PW[#ae;B8m)4!ȥ.AGi:7=avh1$Q1PU n;)0W%Dq\s=WZ )Ϳ*(`PaI377/ϓ;P~14mݘݩq!Դ`a'ǫ@$@"R$`'"?-9`$:Gy˾K\F}a={AEKوMuӲ;c*ME:IPק*'V][SCA_-yKhxA՛^c<%:a#lC+HJ9$fR!*)[5zT\MDj6~ pITh5(Tӊeyq:}e [mY?oܵij/FB 'H۩OJ4Kv U[lK#0˝ĭ: 22̳.;-ɬ#F$wI=I!|;G}GνWXm s u/.r [LN72Tҹ~[e>2j[G8,Co x4 ۴ ZKVYv:B%$?K.)3gf  ?g{fL\`#a!o415.$Yc=ܜaIEvPߟ/,hEFɬu/xo}GgLG( qz,j9V&<<!y",O$kh5e V}ǦBx\{})3%!A/@JOG2>-BcS"oHr- 6UqՕ]$řJ;1l}8߿dh,\h7Pā YK J1#u\o/;^X{y9ED$VβnϑR,Sا6)ǡpm >V+]/~`3Wrr #NLVAIlc(]d{q2U71RJ t[P&,g ?W(+rqb,p8 bKrx1i >n3̖ K,ֱcq">:xä 3ճM;N'jUNqgc;&_P]B73n^)&%#N+rE QW rg-b4+=(XYqɘ[ XǏS 6"=YH7v4IT|,+)G " ‹l$-ښMKmTHd[o~˰SE(_@ձSNɰ_IBl?,$(I"60LZ]M=k}aUy9V3 HLNltUF%9yI$XJQ ]Pޜ9T9r—;!I> ]%Lh*;կVg Cω2e ݲbKansB m=jM%8Ƭ;ߊ.Oz%aAItO/ʹ{uu%P\m=%ina٢}vvMP#>9hX@7E/HD[U09$DsF!"(KHNLfm`0yxƊb*}lR5=nyҫTͤQhxLMYޣ)ONH')U C9󅤍CrڌQf@(F?!cMZCXGC@ SƦҦçm[udPU_ͺ'5uwޯ/G' !qơX{p~rC d~Q{*Vj%pǥS"&92X|.4.\!P1CK $L^Մ;k!/FuSC 8Oh˒ߜ F4o(oKPn/^P|=ZeGV\bRq*mu^t=U~i*qHΤrR %&k8zثP<79E+Oj54<#Iy=ihgY*q:{}Kf]rR]Ӳ _mh\U ݊$5=NVjn;{F!=iVФbFG]C)}~̿tȰ|o- [0)ڪ<`=^&,)4ҁ,R4pPX?2M] mrnb\AnNEHXYY%KmͰEK., 3'c]/4Z@5`.vZ(?u(7I꥟˪PڏJAho?tM)ʡ'#$*=;B∞ Yb33w͖+&]t#}<,hWh04w4\z)g'#^븽+;Tqt'_xiM)V>{n)3"L])uE0\d(o ] Aᱸl `.9A_{j VP~~u@ȍe,/1[v36x&NgVw{~s\ӘYlx(\& -nU-9*48'.V6*ZЁ:يhIc>+$衼]:bejP@yyf~ٕ||y7p Hb"J/`񞭰ckHL|<*`dXgDŽcbV{f٠'$j.U$!owltS 9bHezT@*Ded<>lg}S>stY9mTm{ٓGtfk G_0,N1'ۺE8瀃WWO܁il]a j΁q5dfZ65 }J\ʋ>#=rR[@ {RZ՗ꗬOEr 9y}Rl]ЧuZfeN$@J'FĂL~.SB06IƁ gMq/C 0'#/*t+A7CT@ k3u!%>#  !kR.AMW4NՆF-\Ťé[-& rh 8I fsyl-fsLlA$MZ"d-BXHAӦ5zsװ,w&}V#A\NjSe9@iNi6[ Ő奔@Ԯ ̶h$o xHkg^Jh`Q$Ύ-/=lYY4sЇ1yj1{dVzmf7\HF%/:w0Bpe9Hw>TeSֵDx 2(r/~*auxb+q ʳ gԟ{KԺ8J6dFZȏE1DXXzK*65X_ t+!AyOl^"hY3M+qq4^[ZG5)ǖ.HO׾x#QnnJ>~J1%uRJ36krhF81ūk_`>H$7 bMWDv9ق .uӭ5ʭaqv`sr)_(I!3q8r} +S]܋I`ѓ({@U0ikaaqBfg#>fdaIe+D2yM*pAg¢}et-HO9hX?4NnO^@yQw8s#MCT7bH>֎CRˢd*>܁ :ESɲB鋫 c4\ t"&k,mR*>/VL2xmwa;*~a+_OTYO)GEZ]Ϡ<ڊӝ\@;)& y_'e!$Aj'_ |nXs,b{{|z1O/gWOӢ[pm_񀱂MݏQ#UC*C93:.GB\6jGV^t&-2 ݽhxIK/PfSBaP%y'y 0YJLmpCIImeж#8dٓ‡#lSUvsoԌ1ZSVwr+U'h2a%N!ϻ{V9D@xhiu.mu>} S7}ӗ=l.Mjs)̋aX',Ba?uA>-¥lT܅>UPn l}8G~]m> j_*/$69q5%#m-i6όdJ,owCjrZ:v?IHnx`";#a\ne' /vkzJ9fQ]4QTak2„.K'høT[? mS?j+(^ܿR\+#zdo*uPYB:0Jѵtju{/ho`֩$B?w0@P7'AU@X+,}JDni-*cobDr9;Iө] a?BcQ[t(79/q-X'͊t3gpXwfYJ򠔚O)@J<$T;7 k0޷͞7/|QӜĀYRpYJֹW2CgTFD' zQ sD{]WQlŲzo`ȫ>[P\E-'YCꢰ&IBw/qh[c|2[x;xgJRpYqB_TG{Ǡ1,&NnfG^7Y/ﳚ2{iaV:jW )Wieß9@7LEDς~VnT7r.A.* S->Sξ}+fJ1uң.޻caQHt"rO;( TuQSv֏q=悼ݝ3ј_Ew[ذ\X@d,sI0 +)HRŻ*%Q5Z:?a&;6Ӿ3m]Z`V*աffWPc߂ M 8$Jǀ@#8|tDWl6d%]㏺ꎑोfĢ>ʹMW}ڡQ3kPEG)*uPa԰(THy&eD,]WQݼtU]k8 n\H[x0ca$gOnq|1[2~ś;:k'b/ycFEZfeK4f y_~#yV1IM0IJk\eIO8}Yۡ?% #~,8WX5FxA(d^Vނ m;sI;WYv>fL &kcV_( Lj s _t[bIgT0p[EcDd9[~œ)- TC.4)GIk?3O z fq(٬Dz?\& 0lգW]k hCG7Pj E/֨WIdVL7ɾBaxPJc$;OB\TH)K|\,I9+L9!G(1Ǹ.ZPgB0㎊ .'mIg53g0/kaJv#oT/@+_hZyU)EpwѼۦp֌%Df{$'a!]"i9{eƙaڌQQ!j?K8Ǧb\g q=顣89G+Z\.~"6~$!=&WQa/dͨ=B4 MlhֱUуۉr &'p toͷ'eիWC61m<BÌn `nA='o< :_&6&uXg#G[ 3Ȳ LkX(lAB( K,:'_0H0!(X,F*3a<_n9R-KW~Ro_6 ey%VHqk˪Ls/&gc>qwie Օi F䓆42%.{v&݂·c$ʈv;K /d:x3% SbPf 빞6pn,{ƒ`XFh5Y 8KmW`p?&GC4(>gdWI㠬A0A~-' r60 );U珈bu%.{~0<39 ƒ䕴yG g=) +RI Մ!'筫o ?/C }TUH edvl 1'h T[Ƞ!Vp8GWn-WUi7@:FQAw]Fы_QzBt Vy_g,әRAbE*BlSߜ|sDT]ܘ_g hܽ.<1PV&:G On]AF[P&O )\ _*ADާ#!=YtvM08fU4^R\ZMfvzY70.eC}(9*A&.b:!db=;nȃ[hBa\Od"PxR2^*Oh0WC(.z\Pp_-p()^:#ˏP$Y=Hjj1;IiMRc8}Û҈dT|MNoT;Zn"+G^YfAE9:і/GxqV2ėg!9!Hh;!h=\NC0E:}2<և⢘d\Y`c%4:4%b6 cl>\ ubmG/d|GP%^;$7 9nΑMp0!aj8Ȫt௓:iacw2ERQC=GA0^| l` ޽h'1RٛnEGC`@:Y u|ٌ*GgÀ_ -ilM %6~4B#Llǯ58i ÏPi_HlYh':u8܀;֗&/7'kmr"VnZ&_v3]I8tDP'Ai,+(P4X3JOI4[8h3껞ʧ%BHVbEZm$ZTۤW 4Y!1v%cv3qCn]5DU)MVk+'@K̏HHTYA)5O~&YBfk`5? 4h$S1ߩ` ĩ˺@E[kH!MQ j.뚙 VJOZ`PY*89%Gvͨ`BtR0st4:-+ƹXB/'Iݳ> gb*˥Bj`6/UViijh@J۱0Ɯ<*歝'Y:1ʲ)yOZ$Dd(F]x7= ^);Ѩ<|O0:?8WfQƘv+l,?tr}!8ol?2Y/aه*a(u Qfи۾J*76.EIib.h˃Tjv1_k'䛟1B]C&lXp`;i`΍pJ$$T%Ih/fQ3RFsmh6\6i sMᒫҫG}̔[]l t:|OIg9}Ef1vT'HN( xQY!JXU]xMex{eK&*4ڷ,Ez(9pT'> Oݜ(:UO5@ vKa9D Gٳ?@B]Q ~[0ȶpvВ)dM_-HuqΎL􈕓 Vm:hiS)"{)p%)F*>Nu~ ՚79N}L$FBXzijr+̇D|I!|w)U/Z+Yѹ/2#wT':l rTP/osaEb "[n؁u@%$&vIO]nG/_tpɳ1O?xG[TePٶ7Ndшl[0LEKEjHg.ԑC(wˤšӻ-Oi/B ۘ4I{!HҀ.G@d+}@:Lb%暿U:gK/`ϾvSO*>Jfř89WJ!MݥE/9p=*Q|U돕2E$U) ckm>A+33BBBNkH/_@NtV1lv ϸ>]$6 x)m Eܧ6`<}s)u=>_Kt 9XEݖI?{IS]Є}r)K݂QK+HbN5>KS&4{)7łU14'ӪWʈc8H'1-IK"Ac:c^WTL *$DJ#b? Kɞt7CQosdD5`fiS /ny]_M9CfY!ͤ~eRL+ΥPTkut "wVkz~SȧhuSt6O|RTuW(sO L|isQplv2K l:O KfָhE{sªCue '``gVvu:`\C.#硛[oc':@kmJx뜋/:as3F08$pGJR5y攛՚xmۢ?*'hMg8*6i5#iT(@>s.OLËc\Zw9?H#a3w _GJ3eYKwB4?}l6Z_.EɐRNѕ D}`0*L#Ȍf03znqZHSG f:x@QnC*VYDŽfIrum:Dٓ@!ZGp;?ŅB5ҫZFiG|$ NFY嫞7|AΥ#9jZ bo1}[{[@}A ,Ys5'ϟ qi']B-uƪ6(yA0abEa8*ծ=>'4!6֗z =O t&!eԩvN " $ѭ_, }N$bin *(g4M$epG_Ɓۣ&eJڕFrJtwtQ_"TC~Jzρn/7e ThNYBO5@(g&S1n~#.u3Ȕ)Rn獮zL!/O%ޠ+8f#ZҚkZK|q#1,<Idmkk ^vyUНz'Ryl2T7ف8~J%+^ܥ1!f_]NSDA,} R=" eU>Lc:R Ql9D_Tog/j)}dkWߑEQ MIYpd5^3 kRwL0:~%01ܝg*"(ȕN40RW uO6Ub1/ly.˸4BhdAw$Gm W$I NBb^cؔk4i1󟝨z(_Vn"ZИF\팸&{44Jȡ,]2GY{ZjDQ}"}(A'ZΜs@W𘧕HNUVo:RљޮdZ"wix{)!kݝ<$ {'"6}Ғ=Rn]ҷta$bSFfd$qW -J*5$ E /T;ժ?PcR=7nY]MYfZ +)z(rVs)Mo R? 2e~gHQ#_>8RI'fm x룅>%D]xS_Rn&d%.j&}5:I IWŭEip5"Hƞ524ÿur䰍9<扻x7krBªyk~lWQT,x/)| vHB;?pIA~G)K؝+yHM%3PYsdCĖSt$Ghf$C]*ZӒG"@$7 ǹ8|$k/o-SZ\+.h ޖhL/Y.vh2JQ)^f8Av}R%p7D. HOP{O$M!,뫅r?6yFdv@zI]uZ&}8OEb"6ZCC8.q(>< >fT7.aڀRٵ⸾htqsnoM͢Byw@f.8b9x%*R_)[3[^0ZM .C *`(<7`$H5;֝ C1^_Mv-75WSJ?V"q#nq|]6Mت&y!Nsde*8iBNF1>ZK9h>'R pZo6oBO_fEas[De|mUrB1]칁o>`Ч0MZEȲPL쎨6cEyAFWYT] ܸ=ewQ9 -ڨ2HD1P2U$:]KEOgRyG+8+LҭD-`Qn=_,|wQ 9dm~ Õwףc-9IzQC{,d~lXRa.D舸У_r#5͗VEo`ʥ)sJ %D?Y]BuC)%Cvi+DV:1 q6FtMgzmS/sh=_pK':W/09O=ꐅfTĬ˾+}8e'':pM+bjC *\A!?5:7ϙA`Dv [|`8H;^Tte/̲'(%s} GQ,Re%=&G^$ȬOD3`gӧ#9ȚdD`T BFLC\qڛx#̒K$H38p*p~\2$",PK#'}@9j2*53zP*RP b#¢VCBcP'zRFyB1Vg@;:IzlC,~t<غ aNp>&C|fpge`{R.gZw-gq kDtu%PLBnWƖV2ird+&x1yf &ҵ}%\,E.vO;$ f g 糑b,^ |JVڨYS J,3ZZPz)>#u5)M5||`uF϶El0\lܪ h~@a;IM*܂9X,#?yހ*}KV}'ȓ{$,j@kbؔW!+ߞk6zF8-M;c. L%B*Z >MkG.`GF?#zMK`P?3is $'G`2~oO?VmND_~˽9:7:-*@|E'.[?&ԴL8.j9w 7#ɃZV~5:w@P]tjK|KՖ{!!iQP0p[&'٬i4aJw+\[bL3t  bհU[<<zDա^]m!DȃqR>`js) aj삳p3O{ Nc}=\Zn8 L&626 îr_[Niuuqn$ 3vVw޲L*S<{DzX;:tߑs6;`88m$q).t|͒=]zP5. wa>A U{Y,ء鶂==Bo6X#z9zUG_ FGoKO\,aYSN/h*5™Vd",ޠީ-B g퀙bR " DFd`.w6eElS}7x7H&;u[m00_/*iy6*Т(gg 䭷U!)we¥NS|H]Ʉz#ajMlX+=׸kx8 htLg x^BAEd֩_{D#g4iLR84Qs#UUl*-;GBk ,k@~KX~82yږGXG`P:NQ]TXg"ܞ?M7p7Zd\~\'hҟ ʹ`y,ܓo3L1}f#>{BNڝaB bZΧ*Im>!c͢3Z=RY Jy-HVAjA?,P, ȏ=٫#!`n x"1}WݴpȯqDqP$.-~?XG1nވ ̾h(EǑ(.j1LD 7aO6K(ſw`#q"0ptER@S '8HwF3Uh}>gsvI^suhsfC67mb\Z!`Gӫ&Ŗp FQ5q|-dqW rxhSzgH eX2JiR@@$ 2ͽfK$@D6-h"hhFm^tb{y-Šri}B_Ęѕ¶NBWYB J=XӻRje#99d|o:Mzݾɴ3 p_,phnh2? )cU#oJvt,ۚZYx}[ E8z5,bB*a@=3Jd5PL$!;2&iZynKKyp˝ db?9(4HУORέ!jK" {$u?1" b! S| {%TytFe9>ny}Z]w%z ebh,?<6`SBGTE)'oXv6@/Gn6*(-{k&uۓ-4{J8LMqC&qBpj~&r=(W{rcOOD̩[/Ϯ :^kǾo65Ͽw*lxdX7$3cP%0->/i$k!%-xjƫR/邔F^eR)*MwbjSm4zEi3t *i Wc 73ޜ'YO읿^JS.)_ _jhU XYS{^V82o ^/Mo o4v;P|*יKĽM6?-PR;-ŹO/Vl*UFz$.Uj(e$6䑘=0q#G]}P-/,3YtɶUw?kY;|G8uZ 1Y^iMTbql?X3wl-϶wJ2k9QB + xN<_dz]x9Q즿8u˙lA8©@)YNJaA+l0<)=s"-=u @ݎVWC2K:I}Y("8Nj.ʿ_s6;jSǹJ;&ޟu AXF[\KS삙e+(PPfTXYN0ǻAu6%bTmin| yzZ9|8WpTAr4p1|{Fdhq3Sf-@q>H .9`_Gr&lz@N+fhaLݓEr NZ$@scnYʉr--E&\RAǴLk'>eT]1rI;0eߺU0?MFNӞM+zȢ#0 0p7 *pdU~.JC:Ŷ);/V,!R /#8n-dMwFsDG5 t9]HFx=)BH'B;FF{eG4a_oEIJͨ.El`Cn yVPUgsgӽOӱዕsj?GMxy q{?QAq g`AҭE-T^A^"+[)B*U0"mhfg6Y \=UD ͑Q)\n55ZOB!(+mC8v~-a;4k ?dK8zZqawy־Lg{xşBpshzPZ?N"S,Բ͓`l|PBq[bKB^-(vpCs3Ts\o#/ rnUKmb!{55,E^K&?yc |x_LDhx-8˸zcFyRS}gmΞsZyRV`$k}*TLYyےlur64lא0k>'%`w}sC$&NJ6k?sPӠ'l^U3ЋTULb_\LjTkN?ätmx1ː4'VAo _ݠF^cJm#9ŖU ^,:+f*#qtU bk))"NOߡЫyag =ҚIJ%jGzAؽ88Cڶt$Ю-l . ݼR`<z8zZW7#J<{M4#)^Pc32m9yS:I ɡC,*|,$ژw98  8D N~Ȏ3!|߶s5֛HMEBg#8x/6U9*AA$dW ̅3jdDCRbsa `,D Cqurp̰PҞr~@`I =7 Iz -{,l~xɭLߝGp)-qٽ]y[Y'ιGV3/יkt' Le(yXoēfHR R 搞%֝Ԥ,]/+},iK QljW~QVP`lCk4ڷ~-j66dqEt[[vWh#eBsG(6GNI i! Ҟ/-;9᷄M7xRKخ L` "]`clJ_Dc''Rl^ &x;6~l|:HuZjƊ .OQo*R㝁mm9mEAfspf xC\ 5Top8885U(36稄LxNBO2,P/+yI')A6(3>>uM̩U huu6Oc3d+Q#,sf;(̇$~q:Z& ܩ lX(l'K;C@-$,c4sjAs`Kfg!Co.Cغ:nT55ո:Csl*I%Yn=UÞoLcv\\4HMXq5aƮdLÛ}d9v:{-bin2^%֜q $%EL]3?@GBV;䈱_)g8A V0ÊvGeo.Jָ8UNG_֡ȐG&]v~hu)ϝ < }7nil$k?F.QHBuH_+|SC^R̓Jt7a8;:vuRg{1X0nD!~9rYʾ[Me:*f.^,*&G5xV9riA —ťmfH鮅EyAKd.sBD }G3R)q/sk[rO ͓-8}ȡ/@X+"+M ϗM(*.ð f疳HMYv<͂,(am:_8^g%볇N P׶1oG̟7|-*:mr~tR3!mߴǩ=9rJ-EɖZ0 )5m\D6+2}އF c/^3-=Jxy\m6 "¤|I@Gx"BdٌN?[_޵C룆-̺RNɅŦz!|7(G>h`1_"`ɏw}NB/_ *@-5t8_{=?v?2tWS8ǭǍ*%wל/׊܁ݪ,uJxǟ86rYPmd/(ʙޙB~7t֣`yCXb[Lɭr zR.[IK5鮇opy:rWI>ϥcu=w-iJ>N\ύy=@cNB8MŖenK`2VP.ftHoϓ j21p_2R,f(l=y|?2VᝩE ڛF^ Z:."mn %R9ȅ2cP=͓ SDdk+BFg[ZIjUȏ ،DjkXHh(\F?R )MR{Pb~rlY«RaĤ̎IH ^8 > k{2~ v~AcyS]G~~z‚Y%9K$ BʓY#4!5y+I= Ǥ j ͙r9˱o.]׽!Rf &'(Smh, 5<7.ňY֯*_&y*xw#M1č nLvF]qokh+dǦHBĄ6KvNT|-$+PJ UxV^$/Fcf:Gv˄(sY.{A ^'nw讥aN$LC{Q>4H8xq}Oic n6(Ey'aMϨI6n_CE0[{!6%?Ї|t/}C81U> CTKȯ BK]/b{QF3ɘAͷ,Hl=O+["Z`zh ~lKݠorlz @(d!?&KKz~nu0EUKhQ-/= ۔bˠEhr"uwrv ElgZ^b0<In^i6EiDh\R,c2@vxU2m8F?~/g})t8 RMH +XӭX,CCwZ$o : 5Daya0Xs))Oedžѣx|^3g`XQ";Tgo9j$V% M NvoAꋌ `]o)7P9lQ+Gπ( jAyWN>9SmWD=?ES/Ӵ"{o."}8]N}ZQSjSvփZDɛ[mUI[`ͯQ]G@G:u/.`/~YCvG{W2EctF0[̲uH>r>虨PL'">k3S_kpqJ@jS.E"ݴ= A!/c;gLΩtV!ĉP㢄Qz~)H= |r nk+_@ɼA|f(cK^|f ^Xlz0*ǘb2ڞRM?6Z( $G!N 5+;rp),ގ#4Z}I/F"IkAoÿpx`$fE$PjdKX@)_ !s"bO+J0h6= :B8LU^]+t*_*PAS=SOygq][={%ݿS1ctBFN׉qu%yn#/];zt L+wbq;"Td L߆z\״ùܾzObg04 <5VKC긘8h'i%#:R[*k_^6tm7D_1\ݵږ~~+\]dnl up-5FkS='{(/6{:pptK̃uy!b>EEbJl,誟 TI}8Dٱ ivXN5u\(BUŵcESz{!y4[֊Gr޶mAM7T/ B\KMK{3E0^%Gl s"RUt74#:ߺcכ(%q5?2 ֩nŅUuuLGpmh8ܸ?p_'Uo[>$%2nwG K?0huSVA8Tae=/p+X _oo]:dg6:P$r^_z0* DaUyjEtW΂wjW6J$CĤ.bT>֝u" ,f[\'#EmSG_ٔ &Z+H­FjbZ*4XUYYR5ư$y,ֹW}bKMP# ɮ}" 8z\s?Ŵpõ嬕 98I8#7YyCUVX¾I.QhEJ *PoXKS"od9Ʒegp:!xpHcj`;|4=DQRIOu 1!I3PF^%A Ǣ \!*:Gk)k, -"uɶD\Y4Xm=1)ߴ5bd-m\$k"Āl ?%G?=C֯2YrS{P8>Z5xl24ϐ PD d˕2bfʘʷWKqOaYvK *Wy@?@_f w4Fw"BLlkbp*oaBLrT;Tt0&[!i;S #"Ui[*JE`HǠr0$ĩsa+k/vFNmg} Y^*T3C pRLz/RwfQ;zAbKurrs qc s==,-%#i< u1Q[F Hvs0gF˘Л ZJ5~Ye8jvg|K({x StMX ^H)CC7"GLX_"U]5ݲGLϒ.kT 5 gJ]ZMh'7ѯ9)SJ4T ̬XX1l4e﹛s^~2;w5d8m&aiHW<dzs݊)w= L(|`KI0,8dۦ\f%/-v-EZ96k:(hIy1{d"d4VP OS@T-S[;0u~F]{τ3uvbsWHKw;$AtaJx̘#-6XN7ć@W 3sWxͷ "^VO##^W{"6q4pf8og.$d lĖ˕ DĆzig"mg1>;Oİ^ÐU /}z!)K5'J՟[m䐴קD3K8B|SnSc> w{?ץZsK( ъt.ڈ- -V(hW~uy 8TҠ;*G1>79u:}$cƫaqyθ @M R7 H}\[SNy|_ou@oGDgo12wzr#2:?ncv=?.KIPf G6&Vžd7,#5'R]C9vYen37jI!!-EA:Y++ ~iUgti1eO9mS=:1kmh Chɻr|:/i`z+c!<]^Ϥb׉ `ʫ RƷnOhY!M=#mB,x b{Va<9P.zb1pcDF֭~:?6%@&sF'1ǰi>,-&dKțP 㨀դD_Љ>W}Ԗc%#O?{Cwa2 .ߕ4= Ǘ~.x R,79!l~O#Dȿ|!80\N}2k Wҩ='YC{P'٦ɥז0⼈Ɇze5HNV@6Ic@Wpz4YzH0ȧSӘRn}?+;E4+J#2`uKPiZZ7x*] _?B}JN%zw0уe7Yg׸34Pі gx )͆Ncز= E$Me;mB'BߨL^0Dpla@xe'zU6+] qg]5ʮ?O$J^5inu@M[dUPCx%X@pJve7h&2ȯc HxW88'oh?vxI,X_Qg+EP>ء>@E3Or6\?Vĺpq)"6[aF,uBK%l[N#IJ2-wѤ^̬D*h}Ņ호)ޣXz| wV_w#ՄuARڣ{ul4FtZE;а`'"%o눟{..]JuFRs1?/X+ ,.2! \XK\\f4rC G\Ont@;KA#h @J?_ vx`)Q-[IPeP^,OⱧt[qTj6z}\qy&WH ãѫg.\o"}[kb}WwOtUGr/K?b:$E6΃*? `r_ۋ#+Ñސpq"C#a`/c(:NӔ{#]w}VXiw~ͷAQiHyPr!-q73#U7Yd{aN-s(Kb/`z^o p#!!ԋ'C Ï -aTeYqeSDl@u'#ߕVm 77sCD+eW̙}\^q$(Ɇ xyLNa>F HF'MT"_U~o"$*r@6:/5 V (cnּi D+ye@d^Q /i.8&زf{,1E "ˢ}56Zt5<|f@ ;sabZkID!SF\-Y~vZo, *X:jC>)Sf@q ;&\NC~ 'R+"i (|xdbЂ8Q;1=7ý3d =D{)r?hĠ\骦6ez$Hd +ݴ`1,Y:#Uqh/<;g!5bZ(q㺿ya"0j!}^jg*8 %dg?V#JS=\6yw*BA]Hj:l5ͨ(lrL޿[58B2ָ*R]~&=1c =2z ^hZZzu `X{#?|4Z.!>Wp5h5rw0X ]z;Q$ ($KmGtZ3% `n;;FνB AEKzsup6lOu3f/;Զ!GF.Z閛(˪4KfXb }U܎|qp}8#θ5)>4AJiSK dppL{^:j;dqTHC%3TĸВLaI J[pm_Fj2ƹ41 ?"|O8Rzv᭍9LjJE-emPݖrRAs :jNCM=@e :?|b^7  ѯ7˱a=ˉxHd9#!DY헞˦=HL6\[C l9RؕiBV4 6g"T?VޡÙwXGOcc韕[^ t֧(YOP;?*jdAR 3f~MvLN>(V\ ̼T0wj4"ꕚ$yQrװqZO Uy=1ӈcښ.`E5tEGISTS>+y,3iYt76wE~)9F?|ߙԎ6w|{W c-`4mVݛ'ܼc8Wn!x+r^9]i O#|dEu'HXJ bq7t ;D!+zy1ZI"$7t!TP6 4bQZS#g6ԋ'z5R!jB>.kF}?a8:7s۵!=,E+ݍ kql*?u,50e'2=@ $2R#b[5Xg&QWC*|BGpNCh 8es a@u:>!N(alܠ玍Mǀ`Wm$!.N*^uIxRѨJhˡ30[驻j|LR\:jc!j>Z+@_אXWGE Ljai5uJd~ m~hގ_Gi%Gbh>A2e $bA\V$_z~TS,,rA\xgTdxM$ u@-W^&ZW+H+S, o↓v'c2DYh#grM7FCf"A- lMɊtk<{1ۓ6kSF`t􋫓ԓ _820 jdz FQdàcb4\R {S<~M{^5',L%5,_w7*S8L 7+nQtr8p~YwB[Yjm!+S } K{ 4%7vN=McNrIǼlcO[ta #>A&n#cנM(gBv)f A|xp+ortQЅO#w Y:y! (, )5;H]uXϴ}i;ȴw N&>2,gp"3획YkBVgjvgQ#h[ `M3:N KF˼ndcU#1L;r=vO}Д5=xPYr덻Np#$qUY(yRsx@X6DNL=0[i$/r6X-K~/x5k4pU:/XȚ2CGT% E ۪=ypcx*2,0o @!&O1xhG'j< NnlWM8T<= ׫̟Ph/jj=M$;2J7͓ƝFl#)`$DU&hcK$@qH"g|G/"I v!>)%cO1BM[bF@њ@6C;΅ ?uJ+?#`P"$"`-2 L%5F3<)OAw|q]ꓣ^vŦ7o>を3 4:s=b^2s]xd`sETt:"Pez^/PB@Q`>[1 KhU?\#g˻>sW)0Pr K 4{; q#;d>Cِ}RN o+`B#^A$aCxt3ȴ- E;( fao =riT͙uS%K,kV&o-ʓ^dhꜝZRT09sy$'MC ָ ^]FAOA׷=b{4dy: oR=Fpy 43H"ݦWV:5w NoH:eg½T7[RBD"`#xSe]g*rlnuYX:nm [駊 B# ȁcg63}X˝쪌רxYFa0~B0aǞ_RM &X1zi$Hj*!>#D9o s TDm)62WZ;h1>};zRlFiZqsɒp0XBqvn Bi[:QNeƟ-yf)6QwEDiխ 5"neI#!bćx1*By35 Su+z0Wռϼ{XyK[@dhCbo \ҷˈdkk|"R&=^ xР>(Lv}8\b ZYG,R2vͿb6V%Yݖ=Sh)JV# DmQeƩ{MqEȟ59Sv6}jzc#BWQbe"Uo*/aR d!2?唋g;6?`99m:N]Ǥ=hlv;W3.zސGaE+m(zߝnڃJiG3~^LkW#k2I}Mu' ]i||4qow%wÀ@(#:bŤ:I`ȥe•{ 2?Q^tL_үYܭZk`G]ش4>n 3\ĵ(34f^&وf9=@Ytn kPx]#&&s?C\ko=s=FTRLaKl69Ď$x9&PlNq-UWu3Vx9/hS@kXeE F1E2XGgvX[ئaM鰳*Ls@BJd{uN jk˼~-,C$3E!<Tr{40?7ӏv,Q {p@6ͨl@P%6ӫkF̋ db:MKڎzNy=.ƆÎ %'` hLI}oZ&K?a+>@YYQ>I!$*^V,Q⁇[,Z EԲ\صKDlބ?`eR-ן$n=]d0RP󀑁 dCnIX|ZQ>`J7cѩ5 lY/G1w],~YZ)A7o+,A`Lg:; %s3:|a}`GRIeGH>ɐ|.s_nd [1_G6p^So< ߵ[Ӳm:ٗF 2 ^185ϬEѢɬOHƇ2?Daӊ\Ж(K \]/8h'y̠VPteSTR[ 2K@FUUMEH&*beyRw"pt'fͪ{|o v+Lw/ ^u RyNY4V}"VZ͵spgtG2TTB%?\#d!@Mõ85!58~͓8W,lvV/S k$TxE[?l,6O)SJLCMtH7k6~fz Qu > 7<;Ua5QF%%;.6 ]۰rsھEa}|ÚV I1PsrOH)6fG$ /g&I=ժG6xGfQp B$=.JͭӫɎ RED0Y!ƣ .f n'T,.G>ets%O6~ʂ|z|1ŗ>utnL-8#{,z~Q`H&|sI8TX/ϑ_Pi*Qľ5U.ޙu/Huyĭ/ X?: bJ8I#EԶ~mlE=UyEoeU zL/g|[zYsʉ~Wtp No,AU8:/ǎ C F%ӝr>YMU2@q P^ {.s7ih;1ǒ )66:~'kMX7hs8yi7dc YM춘wBuW|V<j.dͅKEkL[̄ ꏣF {3sB(1?Ɔz3wFMAy (Lnh^[ʼnN-MO }unf'Ӆ ᏜqY`4# E؉3.5q^o#"b`Թ"ZZMk-~C7?wh0e; 1093KR(dx06 uؒn TO~8+ҷ> -1 >?,3kFRB$g؜j-wٜAʢ|upv⏜v,*GZCT2Ѕͪl/dLP˵XM/ce)lƎz&ɔxoAq'9 J6v^ HjFЁ{_gPb{`0ݲzxǎ϶LdQԉv$^S]F86(J/%vcL]e j1pp2( v/F Jҳ@$|#f1clufc ]x)}Ke {-ePנ?%AbJr肮]ijRA4 Nbұ1YY*01s$iSJ1f3 o/rz,<urPLL)DX6vGzmF8 0÷@1(8?p<ідrT',:^M-D1, \ļ(DE$yPR}οʚ\&‹#DUeJ`('Rh˜[Dʻ`rxsq{ǿXiy#a%(Yzw;vYx'ށtՔ)yt)k*PqZm课ؐjirZW#DANI9fDŽwϯE04YgK:NH2J},˿.=:*BU7S%Y<+Q=%3`yk3,mcǝo~B: 3Kx̬rc/jUb΂i kPp7|>FS2τRbY+) 0@x}yY;fz/G9lۛYYCtLZo|9>3;," X4iTvӱȘ_Y?'4 d6ʖMI3' /Mb90ie@\Pmo-ԇrܑ!S ˾j1E +͆P#n9X|mDVJXvy !؋ (l'M˸3HZȝ3 1];P{P8H7CWB y񈱦{8Sh:;0['<'(k&qG4>MPpz78S+OAG׮؈+_ְ M-}xLN „@'). D%9bA2[8)kRt}7Xע.1!'zTMq*IIn8fW  z1eɀIŻDZn]IB֬϶Cqi9 UCІCd(k鱠ߘ&H4htWG:S @pQŹ\ ݬCϔѡA7Xw>[ D io"h&[7hhg%־"oE8}9S3/X+H5#ontJ" 87kҟY*)AJ?A[B1ޢxwB\= :'%z\;ϥrDLM|΂-yuv g_?7.;t`Lʥle( N1\; "]ыMzGp(S- ͿTcBNSXMyl\靁Ycdu{1v PޢD:ΜTa !W ='Cv٘3ɇȷm.e6̫6YD着\٢S++ ;&s VIwl X!zRjKvtCo=5&f gfWF <փ?k0BޙMޢ0þև f3IVT|D*1rwϡ)o*#U+[nK_;دN A!k&r{HǨ4]'7+X^j,s΂} e׍ݾ]w{I8rtn/8iebʎpQ"9Y`-6LK<.;9ܤ0 D][ٿYgނҜ?,C*/~_~4PKZkYeHC`n?e9dt8K\*0B + qݽO$7<, IQwpy"3?gdZzfLQ Ѥk@Ҭ~^뾗0%0J0hg#Dy$AiFzwxp#],=hyIj9ؐqˁ~T[S}ϝ݆\pG? 3P CS8E|U79a?6pyNF/qSV,$rǙ7\,ƠلUɁOzE8wHs/ 309kG'Gt8Jy0t? 2.#(gݤKN ڽ 4c(dOcP [u!l53M=_ I WC].%<\fFyR' Cn2J=a:[7X=;Rx[wꭄޭ='#ZBń$;QʝyBOD6|`%A8̲X RpWdЃZτ6Y=}qh  >VN<UtBܬ ]ɨe[(q?boǢ,Q 0T Aq@4}qg!=vF?L7$B Բs^RP-TAA7uT:WBf2gGҽ@fީ*/~ ;!zO>5+ENA|&̊ 6y(8G(S*$8j6 V4lPд~d *_ CL9 i& TT7qe=&ѣs S:K-4^_\/op ܭz3O@Akk{|jj rXBU]YX@WV) }7AoL|l7Ӟt|v;G7*t$eqn 蕟[]+@fXOn<N${[\dҏtJdxF ߎD}Tf NviPJ#oʼnx\OܭY0Sq! \ą_y`R()~T{Q( {A9Gz!~^=ZWxt`!|e9fgPu$|_zK" r@Hg13N᛭cx'9fVN"\Z8նme9H[e<,wL^v v!ڔKcx[eI=mM{d#b6^<9-%4vGnȾ' 5X:nϮw縭 (FӐ?o$g'[ wYSR>@cҨ`(+ӵ;?@Ì}pUZ,xM\|7vM%M̎ HAB6}9N5lvlE $d G>& ׉߉yrg_iLk )g/Ψ8Lmi4Qjt6g#F%0QlBxF(y4u5n~WI oIe]o }b$™nTfy, w-jV,H,*_Cx6?Jو^OLFnA磿lKoc^^9Y\ߧR8eT42_(U<<$j&5Li`i9$WDKYxgo5ӫ٪.q*\  K>kN'T\vQ?aES({AW %rh YBrMڷn5B"&;SY6ˊφԉeb]H e 3D& e3Eɴq1Y ̩[z +$6i^A R9梋h̰ZO,&{5 nh$#8s_m$m* SC>S^>%Sm-@ AhH${fH7"OٿaC`ZV-9#a1YaQt۶ʚh(ݎZ[AҀ9:y\A]pTD34>US tUwA6;YL e\*}dL8d;&IULZm B4ORq`G2 a|W(`=W[ic{ط_Q5'ǤfyZ8vվ+@/Nԁ1Qcl&U~)GH2QsWs%u6 utlҼ1Y ԭE܂m[N '̂Ty9r;& tut#9zdw?z->z#+qvKΨq {<ڕ UkZK,UBH{r6sVq>k ֈ$^;HN5GMtAKtuOCXpI`L-?fI2\,Ev=[24 V+sVkr T){f>N销NF !₇2pVp'o8Zaڀ<`W ,7uvf-IՀ!N(`*բ0BhOC8K +X~*yսaoNas($H@gry[dC^NKIfk|,~?<g&l`|IFC=?i#B0~SfLD5t9Jջ4YĚ ݨѢmOrAzLLgs;â gU56!BeͫL,/"r1H5`Y80<ݝc7Ovb΅h_uդxi[NJfÇe_|Ջ :o Gd'::O y6NW̟wI,TDM l|\:c>m5;mp RStJ[ 5+H<8{0x}NgXH3z.J*}v 5ձMLh4Dz=vMPy^Ębk}(:v}ԦUEn/߀2إ0H=E.Q]dE2-aMOjl7r, |kt<d; D@~&_CSJ -fKv,€Ң^Zc*9?ls V "-|T]M:n ?XUYl px&Yl. SX)4ͪ).3:LwjJb8gZrUN^[H#OEkSsr.h\ltayMcDȭ;.WvVOVAEįT}Xh'5#WYb+[/46fT5TLӊ5X:ob@~]k'zˌ`UǓ. `f!\ʛnvW{#,42=QH2QU'ى3\.s: F>lm _Chi (@} {4heuc9 UVۺT9'$W~{Ш;_Gytq€םw؊]CPz߰<3gϵ? >0SqkkHNhdAߥlZ"\Hs<6Nq; |FXbs+Rm9if 1 =z7^2/jlE7 `ـJ g ܬ;ʽ ӌ= zwxt>@H'JLkUȊZ颤pdpl,2(>@}VܦUBDG_q4[nԹVӭfcHVucvr$Csxbĵ+ưq{1p<&K0ܖ9TzޕQ UjтY:84)2-VUn"b9E(޲ּFx7ιYhE")q#]yqVt2>T/S^{Z.$K 9L@#ԴvIAZD5|qdx=0wlYUG0Uw]}w4.2wsh3Lj >>2G;YEwY44^d9TxW)uq,#@H/լ[>QT!wYŸK ŸE@-$H~\{vKCB\@iVu83#HmZ?;; "{W&H.+D́S1xMODE>gWTPC䩋C0[JUJi6['pi%jS=c}0!~nvIY%,!x&bP$ǣٕxkJRp=$ټwUt-.p?ò^Bd|E <]KϖB횛L1&1+Iv}B1/ZцQ8ï]o>v:F!$^8qg9¹O`[K7jj/r`i)q&_B0!)!lWq+OJa0n,*EMNP}WW$LfMѮY_i4tZv@7"lvIaYemĝ mE!8uinpK}2R11'=%lCI`&8%WW==C6S(ǀb;i]'}?9btSꍗ^` Eс_^.̯9VXWJ0UtO ,5;M\: =e,EI> s>c!d V#BE}dIHPa-4E0/OcPϔ W˖báyEy {b~ז 컀ji" !~Tk{mS7NZaͪgv3)Ʋ~0n>Np&"3xjem0  [d} Wl h&i{c~K_8Ew8 {5Bgl"bsp,zh/AlHjTȸH]M/Z ʑu5 i5$75hXY#>5la$"d25¹Grȩ^ұNYxFJ$C@6DbވI 7%,ow!'GJ!b_^ >.p<9'bOم}!j1eܕyP |yr?:aZ []mv*,M4'>O~q/3<*'W+N$m:"MP9A{CcDt|$8Ǧ~iSAXY:H&؟ʈU/R?s1 N44Bv"kQ#Tf*˜ke^* #L!hn}Eʺ?4Nޞ@T Cfiјl1\/_>\ji|0\;IGvR²5smQ C`gJQP\,\@ OKs@ BkZg2bMmQpk!}b㟠!J[w=i)a3E(RV?KXz#Ւ_PǸ\:zH́fڮßqxbp"SbfÓ{o |ŕSLr7\.Gط$GhTHf p2[0W>B?:tS!Kܠ#W G)!o+]~ml0W5 E&-9({wck5b%4mXB4)fw":{uaHjݝm_~sMҢNj28,0Nm$Bl)Kl goED65 K糈]KWLé ΍me5)v4envQ~հ+:(DAQ׻_`,lܘ!ZXˠs¨Ss ]7zEےGzLRcZ߅D$_9{L)XNrgA#yU >AJ sހrJ(MԞ5U?9$5ƲS+#. =j2AxmAŲ瞳wj<$JðD m^v^db8Nt U&jZH~lA5i iI\ԣ$nޱ"լUZ:4y#eʢh|xSP.Z+y\V1]: d/-D-ņ2`Y/9_i[E<./Z,S||0E:xvF6ZEά -!.jcjSFr*SCnwe`J[Qh_l>^yxQ&9M4Bdxh_WK%B0DT  w/ʷOv"{$HI,l-̫Z3gG;o(+&C`t}wR8UZN\ a9xT76זOH4eOY?R޵IsiK< ,:X1#'`'mSqRN␀fַ&p`NǍQtX)C|3c y0."B'H^e=^KX,KeD,5 MB.J雎;u%4!ʋ$QT; JIC\TwST;Cj|M;,= rJhfa#6i'-p#nzbSw'_@&RWKg(c TS.E@Ϋ9Lvm3?F.P.jNB"=7P mrj iOfaѶ_vn1=CH$W 5C9L,89 +̐C{X8UdܿD"h] >2Y l%ޯ_-`sKyoW2ދ [*% T]r[.vpPCTD.K}e-%0B, rTtytйK@-$O.F yH#]# v9@p]<`o/{=V]m;cwV 2ns>FDsDH`v;Y{zaeDAʆ)hS;i>J !IfO"0fp$3? kW _hI&AʡPf^:dCT",}85X>3:\۬p4n.|/`1qz]hFIpǒX՛;dy.a 6[h.T _jlJTLJ'iu8` 1+KOec{3V0ÆrR֯hKJBmܱ/7$E ¶6m>55>i+"L@A_4:~)ҥ#qU^!3ng\lD\rDYjpZđKkmsNO'P1Y͘2J89f[c²rR]>L^ I֩6̩.ӬF95 x"@v9CFDftdH+\ DlZU,k0v+Wr{\O?z(t?-=L U2` )sؔ㌉uaQבēj9Ƥ"*t$;BQϼ b%÷~ϠرDN^bZrv@]vvE 9#L6mH۟ӭ`1NNJW1=57DM4/roTRt_bpb .BIۺTȶvS޷|,Rb'jt+BOS󙜣EЕic󳢂_M *8ܜB-fOoL+oh% xe,L^yREIp ﳡ>Evmہ`<\|G:,ޠSi4isv ЛG(_\Z( ?AC殡U>͗ߛ_ky7ٰ@`%c;O+`.Dj.9i=l6.A3>op.;S<)$L6%" iۙ 3KY'L'Ĺ `2k\' }xJM/aN.ڧu(MHu|š><"6(7Pys&𞲌>KT 7v=cu+4lɹL= y쾉)j@<|Sz[8G(j HՀN%#gJoY#-mgLzŬcꋯRqiP}OB+f"A@ 뒈tVry"Zi]mPo5dS!+Қ e$sگ3]m|]С8-@s@U Cr(N0lgi( (3SUp}kGe&`-OlY?z[#iԛQlcWiEU;o` {pfCuS?QM*joܹ89z@r(M))^<>R@XSuc.8WTC*0YX:߿`]va` z:@zFeZaq2P iL:J0cf-{z& qډtn L QMB70>L\D!ܚ+!1u/qW4C26yPёn =,k“CF cf"#Yi~ys1DԊЍ_-Ӹ7sʳ"]dMih0RwSuZ_#[L5P}Y̌ETA˧RBhNǶ{3_DY̐ƸȲE;[0^ lG=(ʱX L,a[`VL7 »T"R,wVϷ[/>oi̩d3˓D9mHc-pQBE?⎻v%HTxJhЂS:OHj7.,TIx/K jMѾi~I |)2V A ?x]WS(m74O}1Z D'V-  A/C 6@$+Wbݎ0\'ӖX\fZ[3+$PB0TjCxqOJU=P\/\4W_]rĽxO(YurYgMwTkJ""18A !7F9M HʟcD%5Q,i Y2ED ~۰\ NH@aW@Reٓh7fMTlKl}ԡ*}ebAmUBBUը#3K6ʆ,d,~u"NFc1|C Ejdh)@W%x-nM3ӛ_,\mGdCsD`lWxj[6ۊW\|Ohإ=&ʕ6IT#E7o)2U5E;H%*Pl*7S3\(I?-: |&^}ZE FJ{BFФj-xfH ~^)Bj-e?.7S2 F?wսp`B{Obk OIwTM}eq15}|Y1dקWҜ ޷IxϼʹH]ILڊhgǫsUsC>.LnQQGd7$iaFD:9maRbO5\%`k$utxm@>>״#U 9 !Gܷdf>&MRNN{feҁ2B?&}*sp̀V K5@Z9hJ~KyJYjPGe\ Hvt#+@ukpgk~+cp׉{COvq8;v3[9o\w57w'\v ]!X`d.e>TO+>˃ d™@k[ ]r..YGBNJGP<)b/kڶ ش:Pr)]ĥr"&2S)}AV+ROZ'$̘QK+6ae27a 0_ $y3sV=vNH[j^&˷y}U%M'|+DPp_W;gʠƀc\h>T{LS+ln+"kPε1~`5.z|U-rK W9+2-P|G'a/n+ QN렔zlbp6(j#:{OGӵi` IY*T2%iX_ 孭;spfeR΁ݴo& ]͌ԭXb-o  !M8 $(2R[}ABe"тπ'1\Ж|s1P1J.Tm'M/^0]DͲ-K 60l:2lYM^ */ [u/!Iq gJ #v|ڷR68;C!r\~Kۻ(h/vվ,}na?; %)];!$7";.-J/b[!Bv^;@ngLnq()X0%.: TRIYɱw#FV[ߺD$h'Es+g{I XھJ(\ Q1<#FAh:j,PY'Mx;S >XS42Tw4cpC; @6~`ŏw77sUj˶tЬx}wKD#zkK=ڤC|J땡KX,Z|~lRkSȡ!++X潔k,s:|kaAY LK(tB.ZNx¢:":[ ,a}dQ )5AG20-?K:an 7\l۞"l.1a:#7l"b OB+q|BQ6|f+Բ̣ܬ+ Lj\zqE{nWVrZ6p͜偩e|b @`]+F'DN 6>I/m'7 2 {l9\[;OV4,6I%vsٷ報tүF9SP"7e'l9KȿAq, ty#aVBZ Z>;aoĴ SrEr:^a.ߑ> k9ɟ^݀4ǻ{m1tةQl~L~C"u C/C0twpajC c/4ɸf5Ի$V-D: V`XQڑ8q\}yk=+)Z ?F rBޮ)Eb[dQ颞鴻8]W‚?D `ϏC&GrYlb5Ka܈bw|Zj J?LÉ1`.>'+;Y FK>yy9 zgni7Rwc+60ꛖ퀜ymtVOGQ?N~n{>SjF⮽u˜ Bg)M_MaLi[d:quAߕ"Acz1OWőMS;ȟK/3z#+KpZ8#]mhIxDohYߋ 3F7\WGws͙ c-uai [m8X9`h[#6ܾ>GjE"#.j-rbWa63[zB`fQ P>`q0 8ČSS/oz(X+^8LKuՌK:_4Qt[KML5'<0p;Og\ha'go¬:#Tx[(ĩV4׸V3{ژڸX,6r|_4`YO$q}Y|; }W跷8N{^|eKe/pb݆A]F[ T܅ V UG kc;oL>`Z]Z+h nn/X#ȸf(O]?<|ɓpԫGeìp'N;8-D-9K1˜&lpyI8Aˇ]%cGW !ȕY7dmYa<%eDxC,фPn%[}qc3c"_Bצ:N):a퇜q@eZoн8b}XxIar2JՐ >oݾ%RO{-k}}z2t7j7C#bܾP V[{.rDjzz/E+ 44#ɩzԍ Xj8 nSkPsjȔ6W=#HuGOc4ijeWOS.S ^oy)j򘱩Yst4?cS~sCܩŚ&g!\^AI>ډI|wGg!8 9=2$FOX:h3>@TaZj c :m;q nƗ!; 2a]Y]WfԿE*-2#v Bwf1l掛:V9ƝJ̞Կ w{SG..OSOrdsr5L3Fz6MkgTּqU)=9`ϖڊ R нڔxb:%9?Yϭ[҈8p!Jė^4  b*ruTig.u"yjn:k{C|5+=̢k&"bSSFސ43D脭-? _nH *|,!q.iBޠwkBZ 9M;؂0A1_*A>Yy2 mƄ۱婝 a}i[Fn/5-LV=Z,{lrM mۖ]y`Ĝ^au{H>G2Ōi& Yt4ՑP5e 'uC3OJuVעg:faav>@C9M`E2I{ ~>siCMM@q5貱IhAKrV:cEה%3kΟE5*B1u_ {q&1S= c}Q u= y6滐&yYl QE |*ڰ54}n#G%Djz!qa60wآdZX;ŜMq32Ps^RKl-C4&no)hTfL=88"TEq, lt tF|Vj6EY*cTM$ YpQS*jo(lFv Ү,ԣjFPA賐̌{=N`P>_;4Ŀ%MiQ6_ek؇M/=qHȞN<(#AC NU rMA[$ǭOZ.JP8ʫ4D/8芗X-!W|wG (YS3EϢnw BADB褚b}UL]oJi**B?Z*(#4N};a6WR. L$oYܥ! F\۫iUzdbN֯z!6u(5~+|ZUQS5$3DnV'4!:ca!Ȏ]GR|(EM@;),F#Y|1[3ޝqF:X*7WInY F216h±dَ3&Z@[q@:}pt2pAh6hȎ\J%Cj.d\ʸKoTbK_6E[ӲpRZ3s^ID} o/,[(]V/ud{-s=NPn,53ASsB$Żs]G_0r.FebOr <nR ]GDۘ2\`3:܊6N,bqrf*V[pߛ MdVڶCϥXL~;AmZɤBi@~V֑Bb4Ԯ2CIU /=<խbőN:>b68+?k"^}x+TO\:R֩T>K3_džV'~2.B(iD%T :_{gk9w>{l:*a&wHմ>QƥCByZُع&:ڰEH 9Wxf,UՈp!e,>gČ|C,C`mb6]|XćERbcCO݅,k.#a 5 +IR^=0Бۄwypk#W D ذEm\(xĔKqMp{ mDq0LJJǰ &m8F7q ?7[2|~?»4մ wY٫BkX"J^ݽ͵- 덛oFd^f>I]]!_|q;m4)!PRZ o~s"p%z*T_}}6M)>7͌ @* D5!{df%"ˑ!E+m*4M$z6^DsX#dFLsթ?|UZ^˥ j{{F,W f)XU~~qލDCqՍun;*Zxf]̆y*_!aFhq'ZLdzb>4or;+i}E7?N0ν:"?QeX/X@Sm&seCyXL^݋p>Ĝ1XͳiȰ8>スiAx&hB[9Gx#ςaOރ^[JQ&ւZ)PTX944nX߆3+O<]|gfZB:KmpxSllSNREWMiQapͮ#F0mŴ#Nn68Hn8j H;e&frO"A!*cbjn U(!wƽ\' éԄ0J`K/R2ą"HQ9_KfЩ1 rBڰV?[-i3QP#4.l"2u.V39mKHOj]hFej3<Ӻ #찕G#%bE#m %UP 92XDP:j"=gdthY#du D:5'X>hT艀6Jdtta.H_HgmYiؕT%7(oKߨ=aM20ֵU/8I TdQ?N]3UEn6ö-f(: Rn҂3CT6-GAcİY檾hAw$l^\Pn9UX Ůu)!,HܡJNX/3B9?18`V~1"e-pf8 =1f3z):,G-FL5`*ɘl,`/k#ّmnN0ؾGmy;Vo=+>v#D:ZU3 !qIӯ k wp|1* ZU^'A14:~#P3U?a@a@w;~\]SjZM#?u,5T#B@:, voZDu `¦^)`Ian3![l4^wmouKbiC_vW$Nx|fZs憖[I>m)?$)\oRXqeIǴm^W-K)E6w dFږ}WlTB,B]y ~0#ei> 2woT>w lyXz8^YU_We Bu߃oߚeB لa Ct\ S㼿v/'@=o'סtCǛ'joඤ!"g2i s| kފmBv_SnAM.F< L:RaƏ_&ʌŘj7fni5" 99&! BG]*nb,`Av1GP,Az(=j%Pa:ˎQGfz%U~ƝX?nKzV}GaٙH5LwHJ@Szwf}XIs~vٵCN3hx8W @6Xǔ(;CUٌqG D]~ٰ#Onxy0UW=V)-bwuP>wg;:R^ւ's(([78z.-b9F^B\Ͷ*u丵Ml|g\$|ȢCCmGU:HR\8Q2|2G`F]Œ8Ɵ<&o[̾B޽emCݛݺǎθRI+gj﬘Ɨr5^*FYC0/$]MrMϜ$(]^a;.#Z]#6ܖWAAi \v7{WGT&ڽJ/=[ v MnW"|_.WGbkebK9Z}IkO5oێi~Cxýcu1&_AXs+H1-@uGg譋oV[TžDMU-=w0KͼԹxzv5m$3aՏԎޖV_Dn:b3SM> :!f6D N)DWd'Z[{t`بK:8eͶNŲu-01c1+=],_GN<3E /X6| @@t"7+ԄMІfY[ս^`Kơtp75B YnW) rlTU> yf"c|8;`2&&_K),Vm^{iHboxUQm|$5:B|U, l'8۲h Ryʺ(^#+_lP18%ğxe6s_F?I5;)ăh  =jHgWt I#7\ K?_?WE֨0AdCpiZ\X4ev&ȨP04\.$))G}vs6@ < AJj"ǭ|2]rJXQeBֳJZm+B[ ?ݞ_qjJ1|sy34LIVPPʚ>}.gS $LT/wboR's>kXfƒ#(dhw\tb` k/`jt3>g,.}6U:>PVZ`(x:lR&OZE[)jy(Ȋ fȦg9ߺK*ɏ+$#| <٣ؔ溚'xfHJmFfa,p* (DX AF'bNbM@yJ$?#Q`{顔[8R|ǃ-'؎ VLy1 V8Wi+z ǾY\AjQїLl҆jK,u@U@,0Y@hzj+e ?<" [n | -s:ح'yfgڋR}K3{JS*HCЄ[ysv(AJѽY`a;eO5E5Pc_.PٴQD0R<SxסZ5ks ˰ػݪDEi*SPLkT+B lj9`)GDTLogki}󏛘jǖߦ'5—߼I3D |g{ɯA p,u~@(d6s_CBțz,3_<`KǮCtavA`>Xĝ滀;J=w*vOиl&`Q}ɥyz~pUvTp5lo'2I~ Y5o!l='n.^Go{{ZCwֳ:!1x^BY檿ÓCG 2f"u.w Ӆ<|DPq8 !G48HX  4-ꘃzR cU& R KPт$FP+{Xo@wyK\F!.[A >Ǘ~3eo.(ZVufP{KUH+/RfN$sơfAP{6r[q򊡗cg߇)Up}8ONS-˥%%^ί>p L*S@$g1b6>- ȑ,'Ԡgdu$~%U⊦Lwc)(6R0[UX.lX /$m b3IBlY~p 7\hO'6$mi 5:UE+e)=J\l %b?5a hDY ?-TYd.k{z=D2,e!44|&<\%.>q: yeA6Or=|+?cU")M]Кo;hs0Hu<=Ӭ4D^XPۓYw̎(ٍi68]y^l3w!~^+tO]݂Bڊ~W/'l6]%.)Y¨ZB "5 \+h),HAk tٹYrkK`֮ s(1/\#A[:$ʝ,+ll< 黄H(BN;l?d7xګְ*bbQiuq?- N&E8fW]YcxaͱYhNB o Ud,ܨ/F֗ &G~?B&Z^{*T9n3 - _lн"|膔h%:ء\*VI9ATNG|.i mшѦUdF"߁QL [l+BOV`bPNu{j9M1LlZaW*ӱ0A ݓ7ALʴΜDogJעnx8r!d~K9Lg>6LmG<^ؖm$T s}ȌP7pdl)CPًOLrFt),¼['Vooyj0%! 74+~?Y۲f}c N:^ymtn<رWRLLט,X|lB$A~dS0Nk=U(mksRY2G24pݦF0PCLPkgyd M9s$ ۜ#pʶh7VU".zqvI'F=ávYWq]%QFt  BmEv"5aCZg ќTYXxD{0Zر&|-h. )1;S j?]h$`]~ד`DQϙ>̅Ym ۔H is'/#”^|Bǵm&ih7 &RNJ itZhiS94\/SK5YVN7/tjz)9W?h@%\Ds,,_ӗI4 4%Im9=wra=B.x]kQ-J:/Iycq/E~dA>?kig kğAlx2 xo[=P,g\ JҲ 䛿v"a}iZu? S/L'0ZnV;Mow|N4>hYvN7z#KB4Xoq.7W*堹vs|&` o.N}L*z_)*A NĚdT+൅LbMN[95Ϛ8]\mSFg/ȯ%m2es[5FT55$ 8!9jܔ?>u ӄ~)"DfvùLCUh@ `ifnkʭ}\[Ր%L4k^3q NĻyҖ P'F c,R^bl*:oӐ~S;OhtWF^NZ&f,(?)?¿o8mq5{EzțHY'W;1R6N 8QFr߲=#a" I p#%,12Pq|<.lY͇廼o ILC[Tacġ='g).OAQ%]֢g(b.XtD9K2L-ʥCg~m^h%zePrH1m)P/?LX bwRIdp ɰ?(GozH'%AΔIک/#s,ll*'D'Ʊrpu.+p[7 de \4DLS^nZl (:ߘajwJD:Y8F3D$ZJ5IEe`sơ @2z;Q nEDh6q+#јv#ֲHf*[eN{Hlw߱+'+҅GŹ UW.` 873:%2. oRҀL\xڧYj1fAYpcڙL7j Am蛡Txdʱ\oy[S<ƞy:&y J|E.tMV&smҶʊTG^d;jQaq$ ֞LV pxC klvUkfe~_\Ao1V>Hv,;>0XɨQb_CAFRFthzd58 zO4}`16*ٽL;цH8@^X(I6Nh_ ~S2uY +Vcg@ N~,,ij󴧇_0Ӛ\!2?N/Nwåqot^ QZ)xy\D0Qt6yah2I |ӐȲ|?C?$]2Z$6wGi,5Uj6*"quHLazxYїŐNVj#ܶCj6byIZ"9xo][8FϮ?tڒ<+AܱCⱖQ^lVoiA`pmME13Cr" jq^J2 ^1m|m]'R}6j$: C3 1&3es a,).~u6ەImrL9ZMa Kx L\/ fσXp`E \eXjk=!PX.7[*xWv"Ves߰?eZDNh]F|K#TIIw̩r-uDL ֎H-3R6 ?`+)` tQ\bGKj 9RE2(d] Z#h Z<}HWi7zSq!qc˟>d;vQ<#V̮!xcb9qih5ؒ@"}lDl-=fȝG"v=hH+MUj&ʐ/F9~S9簸dR:SԦ6Kݪ*{_?V]D6Q>v>a!m>v R]G>L85:lZ`s k'gDؗ/ ^˕iUny1OW!rJ@qUW"1R7NMʉMfu? 0hƠ~[@oWlts /-GpdWqN`SX}V'<@~}^=)WӸd5VIM`F ŀ:!>UiWc\t{뙎:!ëF[g%cwÎ8#W/nQ;v>Պpxv\$ǻJ /x= ܹ)aT7]n˩B0&-wr>uT"Ւ>^ev_n?ʗ(7Cm~,w鹯6 O HD9< F'X;% =dӐRB* NMmXoy~- z^{EZΪtLp TJ5p.ؘ&<@N|?@q鼴.ۈ -Bv:[ǿо 8*h_jNiB!{ P2E}T47#1{k@IRD۩IMYh#.QNĞ6_csCX2N^B5zvR|0$sHhYWv֬M.|'5ު mS hb #p}77 a=Х?! 0e=W1i} #<6 pS! ?.a>@8X%/uHȃ9NmT;r L~r 343S6..|wf}$]-ӛ - &$X 4mhWZ%{!aDXAs]hB~Yx$OS=`'9j[0_pھ.Vd̀{6QA 0fS+!²OĴQkCSZLeF 5r 8͆c6K{cDԲ[%j<knD-y;4fOԐJ}7EMskF`!en\NՉ]W[@iCr hI] 'gyk3yŮlg4ͳnX@R\aVu@ӬQ:D:Piea1UM/F/3!|B0(@.R}Fs"f< Lh "N/J LGMCrUm2{xٵI CbǍ5x錳>Vr> {,fZPL]Իٽ>ͺ2[Sx%Y\rdmYGXպX m^q¯$ S HWXy"Afn$}PJ-rLGRWFa!a(Quz,<+ۭ7 e*ؤ 0IX c:hK `@j]SAqF{9rsu5Ͷ"Їz8+mI;TtaO+xPXMon^H:A])[.X)! !0B+Wx2Zw|g# bݓÓHCw}MԻս[R/{1Ffmј,KƜn6+XN(woeIfA\qwMD "ubDMŰh#V)fB6gfUJw '2?(?7ɘI69T X oEلi`>+l3+?&aBtu&$t?:giUKn::A۹.c毸A&$^R/xH?'FϽ]nw'qqGbԦӳrd^7`n'ư-"bc#vY6LIdܙhoZ?\2)b]QhNz` ` 3cusbTq*cY]}BE e{AY. c!}9  t5d|]7.@*מSgY!s }.mfuse9Dv00o,0ē7>\KC},ұ`o#QGmp6UKN0j-,^UodѐL9M{wkMGFI76eh M 2qCgΠhOa⊴jvFY`0z5WVǍ64;SdƫwM~D#Va5˵Sؗflf0i-uBVHt/0Iɇ.ˣE92RXXiDfH 7Xܶhsi1KSD0y;*dGGnAAT̈́xQU?$m-8n/ g\D Ӕf:nwv vĄGQ9g蓧={1Lj yA$dbGiV:fEuEmB81'Ohz\a$yqCfɫkTEH>G҃̕H?yZ|%Bk&`7/< CP#sTDJOtV[.gdX4WÇ,6$1HgWI\bGu}([ *M'<u_1Av<:mAiA2.fnWh2bBspÃepCEIVf{\ 7loaD?F$DuI[6GnueQCD]reU~d'LUGEy3d~վU㞩ZJB*&:Z .n[u~mC}{N P;9H$\JsՕj>} (`m4za32r'M iح)`7 _i*퐿_,A\1ؚyJրǞSfet9l"Q($)X(tn!h,'*]56ywE@b)U‰X64~A7th8;0 D5Ƽ&ꋎN;fLpL<%ۀv]_B)=ଋ>e6ښxa3 @7Y*sadm+*Z #p)EʜuG8wJ!CQ" Ixlp^֪L@041(FZlִAV gS(ܰyX\Pܷ=1I>| ae3Aۦc@r{>x}k-o@5 j#@){O6J&G(ҹ6b2|j^.zp #5ƫWK6s 'ѭzL氶,& .t.ʲ0۝f{*W; ַ~wSO@9N>ba߲P)ؙNSvmhjv>^:=:[`~[e/>I~Q8ZɨuJ"mg|"je `o&?bj\%[Cu\cԄz3 6d,URn(S!I{\[I]3p> i6 'sfjg/"1g{c6@C h8+/ ʋ>>۟z7 }1xXߠ4[v$sj# `o*#^d6JS[O;J~B˄|)+;$Sg?=Ƚoir]pS|U/Œbې,k1Tq+ |)షLoҖ 6T$t%GQGQe!_E7Y=%kt޾1J%N^f*dBxD&p̍jdW W:Eӯa4$+1fU}qG̮ȏNx: j@<0{b4/yzɑ9[~r Ј)>\/0ُe1m|}AH&#Z.5/^09Cz\|&DGɲuCAkPF7 :]gTP~i AwQS$'5Q< ˓QE.zF N?42U6QU⮏}sw+[A ui 5@i/{ȵ3}]m|F}s<(n")>!=*Wm )|q'CPyڸEԦF((Fw*C$x4]-u9hk.{:ݍ°7/oT1ڨOtY6b(/~7h (rӹc5{f՘X%jxY3oRC=Fq9~+Y3ȥZX4J 곿k]Ev/4;*;y:)0v֍NBR=bVVj f]E~cƁuCcnru+)``Hzm21 j{sj-;nXU+!T+̔"h\93躵dYb=HN>%$}^AHi^|V$b$L+.gn@ ~J3Eo<k# J4$)jz;#0C;.WB4>pK]'Bu` URI}0bFQ|OćraADF͘mdqxI E=Q6j`uAhTu3GͿٶK-Zl5C/㣉A}s!d~Cw&G`ŌRQ*G=2yZ*{†ʙ{kT/ R= 3Er4p-~hS: )!;|A7cU<С1L.Uu6e6fb6yr*Dur^d6iEp}*4,H01ˑSL%Ĩ~x#d֫G6ݜ)b7113^zQ{G9 `:k6I5k(:67r5hݷg$T4KgdVKLG)OA0Kq[vu- 3pQG" |#Lr#h[Jo.pDL+U/kBW6;X2* }LNt1Wh9ah(恱D=x&f´U"z4t}azU`k6>k7ǣ٥HBo% !FgJ'[%w`u'*L\ S f0 d,FYeϒNjS2ht+[Q,\uarG9IEQj4|$w>#>剳M\61ڎGҀtuhyw/IϦ<0ǽP $u+#\/\"x-Ī24쀾H)Vp;{LίTp)g+G:`bWK:l>}}\ _h^)ú1RJRz AJ&zsph:Dņ"g-76걌BSdB yRTW؝U&!i#[*+sfyg酦frLZX[jZBxVt!hcJNNDlW'J P6OM, >8k\JxE} 7u]z&z-.K yUkgjċ]|GЇv?ޭ ĆW\9RnD*prȝNpNX(n p!RObrnn{N˳TB3PIjRalk\`B(kHH[ Qzx'.q6<ɇ2P>4W㡷u6i5~t P)G𸣓:#ڿdl|^!e}|`;lFM-y4 q23xkJؕ~ G=O?gpA M֕u#Q y1soê]ps3' 첇\*顈:7䲛}][@t 3y) z ^dz|\'1mC|oՃRXܪo;F!êk`v;O+9Eu@[N)q9ןa<ǘ0dh,8h G|YW6`j@8CѬu`q6P oI9Y<ĹҤ4=zh5GEo27Gn/nr^ڷdAna`\_7}F"a9<|PYD -DmD.+*aY :ɖѱ{Lr {0^X\C lr~.CIXy.]ܐ\XTh 0H1$Q.oFt/KnrMDE%V! 'KfNωuՂ 'LDbkq:oT5NTvc3Yj:s=HW1k!:7 4qۋS]KLဂVdZӚgzl,%DߖZ&)=|H(GM N*! +Ux'>wYTO\7 3qPho)!уV%u#%!;ɄoO+֛2HB}n(]2RD#r3HS#qcvEX0,z(d HNwvezkiy|  Ld8z 7@f|[tI&T5zNh_~`KQ8W@̐!s%ԓiMWp:.]j_DTŋ'kA@ _+G!)Hy *[E]Ïl nCa@y'U'ɞ/Cs"(NZe9u"YL0'HpJnڼkf95_F±r_x@~i ܵQk@gfLފR O;2dH,lӌjS|v _BH;nx ZZEJfXk3Ϛ8| Jc IipI€%qdE5 `e#z@;sALDVKtD(pzG]{C L%,[yp:Ե> f谡_YFPyڑrפֿpEB7xyM܊^El8&HΕBWx'oGòxsIil:H%[`)`h؉ picyjcQgѢƉΚZT|w72L\+k QE ʘʎ3݀=rۀ6̙r@X%}3P&045&7z Чz݀αi\i.%[K5ݿWնa39|1frrD.e)qft *ơO.inO圣]r:I-|l 4-wLXP>nF@![7 `,67zN:M$ 4)>`Ga MeڌZH`gzYaC I.Rm<6-w>Z7l\d&!fc 5,ZlEbΟU{jƫuC,I5j{W,:k0 Znn-3`;'Les.p>JhR&+ 'ϰk) Z8YTߎЧiz|_ΎY5>[HEi-ʙQTB14){#lstЍ`a4jJ]hɡ}oWTIK g@26򈅵t@J'kUԇ1xcg{9+> BIn`<зH\aڝߙ`̈`_/Mv0~,tgT=/6k4&_9ޡ ]"/1v`NZ A#u^Ci.vChN/Xn>aƎR$G8nx\7uPtI&Ee]BqB"J\.kvDK\?fZz#Sm{Va5_xr:B8EJ\m )mcPzJ_FQeh]skN1MyElwbSH̪"?Ke (۫=׽ ^_ pPݧFVp^elmۋKQ: _4!N#pxR*mT>h:ՉD؞- ]D,}~Ej0"g5/|PN郚73{ک OnW[NЫCܵW_"φ[eԙb f`EFս2/(> zϊIDOoP\ ~<*&LsPɑYQNnoiL#)N"*|W64z*-%l9uNwwA^PP)q Rؐu7'=*dp7!U˔XWvƥ%SPf( yw-{y$s2= s{b_'f# *9\/%dҏSafZ悞/"9OS20cYj>Z^9)m'epN]3jWTe5zq0vtdԴ|Yy|SWx(21%<& Fgw ]}(rOyX'_rY,hIOGwۗlP>'!x-*/gz_*hLɰEn8))т"JԱƺ t* L20m,Ss./!w~фZCv{zF~lM nI3ml7Ϧ2WTҥeet1ovfI}״Y*i:g+ZX~\ A|OqZiȧDy1rWA! 7X*n%MkxoPM]p^ܜ6*\E6慫$΅܌-XrAqS1)*X\~K\a;ZtmV"n›z_i|o:(Ǽ^L[^aGDFN&"W?S%g}8;ع) 7'D?:%};ɪ ӷuzS ~T]luwUEOGɴb$@ȵS߯ TFP x)v_кyid঳HϢSY|58XtDrxy@`.t>0Wd00d1hW8/eaJgYGۜj87WSf6qk F#IMHrdCc!VN5F/h{\v۱xB7#9Fڹ=@z,zȊ=Hhm'p-[ FSnƨ 9ވ،c.,olqZVeK(Ldmr!e'FRx2vMy]_N"q3a;Dl`/ {Vb N Q猝>Iy$g|6"+fF)+v 1>gP83 fK KYNCiiTofB7]*< sP7dqyGAo@˫< .dq'V٤9`O'se,ިSMe0b)=g|'[g"m<2!D&t tgQ7ʃ ] u8ܱ<ѵ*NF:!9spRt7 ~@S։gZSsH~::ĿQ;4_K}s&aC,$ib/m_vjR!zD@m83VE X)7dLb]' y R|N~ $V[ے"lxR_b]p*'̫hZ5Tu;髚ͱE u`x鹭/H{`uDRyр 2C58\{WCLx`پyVoɼ}bծ2V~ðC_Bo' 2f?6=xDݦUc`}j$ȼa^8`BfٱD%y9RilVvVW0l2kDb6 j*KLNd4%yAI ڗ0eEwX VFH!MUޚ Z8kL=33?DW"i Ued{M dsJvo.a O["8szT4&4k+JSU)?¬Es?0cV`_iٜ6>z]3{^OY|)S "V_ 6L_D&\BQl]ٞD <ۯMʜ@D u{1I[ϫmMn+e"&#@y^4ePUF(7:> 6|=@>X}N2!Bfx".X.k tL"rqX ``E;k: BjiHGRpb4p=A*mJ8[56)_{em ?LgޚƬZDU8XqbTjEM02#O0TZoT~SJGP9h.{1b5ԞafyA99x?| i}N?P>dgVfw|]Rfɨx& YYO\?VuTso2`sNJjh#nAwe,A7pٮ`0cT4M܌!rWzBp[ߡۺKDǨl8Tm^mJHc5;Qծ:)[k&B *}oƒrzx% F/{:mzoG0L;KSZ_=ul[;ӫ:Vu[w>ɕvȉ5$7IOP tcrd# -uri xHcV}M=vCjTgT X$hq.ЋJg[T4hJ|ye6Pv̂l`?+Bw!+]/ RQBNAǐ'rZ~jzv9<בLK{l-y)='"\v'gWV x}P>R=VT%W|o"iUa^ |C3/+Ǧww`,[\ _5WnG; l̚2~qXkA!V[49 jU*٥Y*o:rD] ğ}>Trcm؀^!mbrtv 53NM˳9"^7uߎȅ_iȶ51>Ķd]eg/aYXo_ͼ d W`cSDcl=UG7}HDUjLHjEҸ^ϔ Ak  ːh-= RJ;y9l*9nWnۜ\J ugl1i rdXW,"~u'U+p&w D0gvI{Cl o$-bЅ#V?8| nCIWsF*D^y^쯯Ёa-2[K 2㍮VBNV((ùb?D|x;9]\ [_[$лh&F˿?np 22;'A"eo+.1t4J}eC d1}"<~Db 8T"=:j%xKG,pakR96hAվ 巺mh1;Sy2ð-[bȝ*+Z0NiQDBCY@6DQ{Tu]b~7B&whI vX&$G"s3O#jLda+PV Rfs"L^ \ʍ4dR|:}oU̳{v],au k$fx 7V8(TwOts :k@* Ť$pi`JoLYmɩ-Pl^VΖ`YU 8a6va|6p7wxnV]]]Rdӣt`vBYIe8 JH2yٶ sS@ݬEzO S DQXz )2HO#3 OR9-`67%KyQg(/vʋ鰲i #s,?)1u+Upmyc U|p!$X$&D֞e%]Ŧ7';^@D'D7bmxhMr9 {JcGrq3-?uX#OYfu2DC]y/larehFPkBZ2@Y15=5O$`J^u&Jo-yi,$>o\*d4o*=Ao,XE3%I!J*|rB1=rB<9QЁZAf,©ZU2 \#.Xs g&9.&cʻ$5K9$d:ijªxzvZmp kE-GS y5ϧ5]L2D#$h%v6cq%1i|Ry*_SU52x=bT<ٕA %yiLy0 V#Nkh{=3Z[ژ\5Y*K@F=.bCyrռ_ɜ+,*x!CҖ!oa/=hϑ/uAJAԽFsLR &:ƞ?Vp=Ӛ5rzrB8 XX 881a kjbBߕCj=Z%ubmCa#XNh;p2i2k\XS<܆d\ϊwX MS~ή_-,.?f?LP kpdS0wd)uLfFud>)ilw*YBx{0iYeW1hN 6&.\\_|:))&l$Qa%24!oT(4=С<"DpkZZ4I_Tl- r陠z n=9w~_}?uPu~-JKTU gaTr4/sH٥{u!QtƱh@ZaPj,: L-|p ka٨ rn8bE{,;~n%soXM;3Yl| m;$X@N<RRTr3V+ 1heٳf &)I,3kr=aE||IgoQcvwRxk;ҽ*ZֶZkH:d5ʗbW~*(L~ʮ,-r7-*5#9WPs@o+-XUL@#c›X*(Fr&=ҷuA$8rн-e  @`_GZ RYNu̮`ӄX .b{9ZSF {\c9WPK&\BK%A8NZg,~0l&iۨL >au=yn$=-#f(b I{L@&G~W&-MpoV5 y]k]8%wB@ӉЉ!}ʀLeV͎CN!CGmYxOSjEY$V=;L:6CƆO փ!pR'r:}(JkOݛc[ZNwIUdd75m=qEg/|X5m]:S%^ 5CSnmx1Ұ[} *_<.[zQ_zl7b)s43!ɘh9BW>ȦV]݌6dbԨA 5r34%u rfaf'3FTI]5|? :FGDu2PC$L6IQ7R_xBOT @ɽD <зWdDyqk5*Iu؉. M5 XIFؾ=xQ.'}HA eW|۪"aSX@(wz#ڵi(Պ&h'Aɪ SzK@ˌqIy&h&,ڙHm`*mJЇޗF0ru+H[+ VՒt@HXpЭ2x.\Cwdrwb<.mjqDw':} ﺧb٫!]bHb?G4d),Y'iS;! BD%I>ˍH,HyL֭Io2@Jq$덒ɸ!G=HI|.܀MQF`ЃCKZ,U$ .2!H˚eKΔ 9&3u&h+U7r&-7?XX~m&/^F:O `Lh,j rBΈ"d +5=jr:6ĩ}Μ)nU 7VRʨ]35u>l#:mW]w^P]vc\4\!,r=mjGlw/>bIr%%_cD'9׈|@Ɇ)My{כy1SokB]r}KLڧ,4Rן: Yc}Y-FBˏ/ $&w5 71ShUr īP}[sisM'R*^ui `40P;]v6eg<KE2TG'{҉N"װjZ}ڔ)~_|gC53ilx;CP?d{qC9lDTK͹S-ީY_S}jȚyoݛCd8O!ƨeȂ~+ 5lQs ʬ iA=GKqd|R_-6WqnmSpX`s;>pZ8 yfPY !PJ}pwE?Pa(~[)e!J^TBv(w4 8c 8fv:?4k(9c@CPBe8Wg]C WBJ P5QDBvG"$!Yۗq;_0.aUNS(IF5{=_[┝y/)1nTTۡ84&8uVi#A<ƍ^:q*g0)jvYu/W'w0PtW_d#mG(5eCpmFۈd jkoaR 㲚ksH9*#tB޵RSB XR@;,4B>vKJ[<%>}0:7 d7ec5MD{-*M]sP ɓkXPkg19ɨ "ܦȚ:_ʟ+$;/MV ~y[1@ AsFixʫ"W))8arNq?,f[uH*x@(iN$A!9G;e#Avă“xaDV`w]TCm~e<} 0ʩ$SY'Aug +sw[iFS){Y2Z^=פfxvgHD餥(ed$ڄ'`،b.Ҩ3󽄭Fkxq͝ʡ;L_N/ 3J\d" ʩ x tHA˴;b<Hle]ި1w>irE AX_$͠ݓ(? Bӄ7kM%;@T5ٙXaY ]+;z2.d0w>[TOAP@HbxUU)-bbAt@IrVMc}b(Zm>x MF#aT(@pXtnj 2yT/?uSWp~+4z<`L 8. :JI,~ЎVRNa{]~~3bv /b6(p;25h j6鑞"xcʰ@D#uZntUrugب}'ơ*8w]E3:& 6g E^g.uX"x&#}|A"Qi [%5uz'uqo4-C#͸]{gll}*3U|Qi˴\gp+\ڶa.FC=dS+ljإ^Xa"XIQ0nFܬbi,ԿMK?2O6;1fo'U|t̀Q ˯ r܉rvqD|܀R΍]&`"~# f)V7;?Y^x3=M:W7^I[Z@(P(EK˴y>+J,I嫫v%q'[4 Wğ GBVi txU|>mQ?]2i…T]/-ݫg[R-CLrtɯ> W[\c2wL`@6UZD:e^Vhq؏n|Yέ ˑ'`hYFߤooqҴ9g֊F_`8aO_~vuAZc&SψyG\e]T̏z}d)]ƈ3R+iKn<Í ]EL̵>37 ^uL4Rx Q/4Хp5'zck/+ê;;ڐ ѓ•G&|h^™ߪŲ8\U*/Zmг<.&(B\+\/ӴbZ~Úc us?cψ,j*?w0UR(V9r+Ew-А0g;reQV WE7# l:}a`{`Q ε1.7a #]˨6fD;a=]WYKYObubI '3nܹVu(ᏩcThebV 2y%bZ"0DgyבkKoեakPC4I'I? oٺ ˒pjF+CT Xz3ggk;ȓ\_NŞ薬SgĴS y0;j#xqxʂ%#ƌBMfϹ]B8 5֍(xƆKuPQ=@jtǙ_Q4YnT؃F~y2OW9SO@Ud9㓨|:h77IMt>E@jSϵyfT.NwW$?gRz6!D΄hI0ǿ[D{<:ZH-,f˚YsRéfΥ`5ӟ-G&`raQsT u?0^@HG*I o}#<}Z3%_@$B\0בR"Ru˧ru"Qnda懞{dlQh)gtg|ERa&RTF K~Sn!+xKvP'L$!Hm:ֈJqZp!FmE 0I \^Zg'()@EK+XgkF.V{-~)e\]f~2N?"6xG R"O}Js"5tt猯Y+R_8_Q 8N4(HT <8G2tvqbNCKBvo + m0X W7όHl#Gr~MBO +A()HeIֶi<^Nn+_H_l1IeqK4Rσ6,.|!ڹ2?g;=90\+ &UXuEgu ǫNRn1٢<1P64O!|kю=hebÄUP|_Tiiӵ} ;(t8HĨ\>VL?-0@(dv4:}7[u )9Ik;!JS&Zvԙ"`m&B#ylݑa2B?_x.Ӝ 볓>yM/]/ϡ2 3U+|:fo|(Y~dqQu߾N8hv2U_߳Vupԝ#maX9^[9j!^2W Es B(JW/T}[Uߤ1EjVB79) IHuqo?[ bJɁt[5<Pr:jR&*u 9}^$Ĕx?\D8iLǫo JfDۼ-8lRZ8_'5L![ŸA[9% 4"N~[y"o<ʳ'yҸ 6M|NJa7. ٲ~kgyښ8rfl\=Dx^dû ]7gVCS?!g ¸$H:WYD%='}F~11c;ސ%RE 1Hc"jHd1z)Y-ZYDD 1~֗veRn;~1ٚP7b9&Y+6 *>$|knLf<o j?*'+ڊ #mv׳\nIia3+48>Sgq30sFTcpٝGѲG8~ᅧCb7T {œe5_ ͟o%o5J= ~Iit˨6:+rÎD"::w@,Vs[`G=A,\_ݙQg':S)'ܪS&!4WmX@ELX[&ayQႛ/n,fTF-}8qַHOnxޞ tYڠ:^*[5y[}–ü>9 fv.'ݭwYyNtEg1sK!Vlh rɤco#ph+Pxa, n<|2 Hr?ǡ%3 xLU=ĝU㮓B u?J=#Ah{ \ ./ q bxwXb &31_ 7OنJj\_W]ׅ:0(i:)[g-5Ot"mM]h&^`EkaIHD; Ùf2;Y; p.3؞EԌ<^xLk,12cm.Kv9,5!z-[O5_=XwDqqY]@G$%]ޱhǶZngxXZy-ёyo]@Ĩ X8 {͢Nz|$[co%DTIY~ ,űk~ze*Dץx?CG[ZG-҃֬N(vM @41[e t{'TǞQү`u9Ek23Y]ݷ]z 7`vf_FM)O'j P_dOb9okZ~"[,VvJ1W!>ƛ-jv`Sb۩Яq,Am<˝3\bMHg*#5LmolV|V5ÓjX~tїs@A!#:%&`.4|BVdvԡE3'Ѯ)q2GЍ~*`O" M2c,H`0nj# e4/)S@l"u )sA% ժ{bapX,$ pNpnhz *ʀ*XEuDQ(3J #܁_᎘c~>:;U dܶu+Mxa$w2 Y &B7S6 2Qw3lS)ƇlZ^y;E :DyЇda>\~|TT0,D-*&I*htyZU:HxppzP Iҹp=5eFs9]{J2 8 @/9Cf cg4g(4>\&2@♫@÷ lC2;~;o"m!9mpf[U la`WEzbZjy@18VeZh2ϩ/BdrYDt23.YT YZ:cﭠÔ=<P[n>jGfd?lj_zOѱHi벚2*4j<#](u8-F^kbd<=+m7H-R쑡hqRX a,ٟvv?hѬYɮ!$<6v:Sx#Zn5ֶ;*uf,TuBMqr%X Sqa# )5?w}jXe,C6 Jkj8ĜLkuZrfbâC۵t{~uNǭ)_ 5Ubs0bz(I\:rHm_PT?HDWLxissZmM}P{ ojc`%:F,mh&%b8Ά `QO/m"JVϿƐ vH p@;'4[FO=zscp ""3jd1|4Vx&sAH虘-\ܥK L{3>퉞k,s2mlB3$*:N]=[B'O{8# p݉GP6M78&?]wunjdK9bdhxBNAf dVhxHKzē't9, <"^kp*N-cJ+9u?Eq "26bCtd*ůrbd+׵[cҸ=ɤg("28[T7mCFݭM % lK$x+4y| G EsǟA]0g wH}&TrfBM~d+| )EG2?2-dઝҚOAývopzXzB }DۡBRPHkQnmea)$!p=Pݺvqap97jGvvPYdPAt6laJ)TT\Os-o6%ItyۇplrͬZİV;b}.)$ *MUCZ]v[^bgLׂT6݁MVZ-WhfXQr\Ф:)YWSS31 ڝ!KQ, ږJ ̯oF]unoUc7*8?ٱlVKTp9kƛ #tWrCܮrNqDepW#qxB`5N9E|\NlWܢ}xٳ2fґ+Cp9'sq#^ ӀA*j{GR ÒFҙ~ЊWj<N;z1lC@ed5Vg_Jr {p!_Cjç]"Co[ddZ iryURThJG-W.]=bk)hzg.KL_|`˿my^FpnJ(S-m֦\#Im< %/4 6]}%:FPlP,lM CAQ*?5iasH]|ȸ{ua֣jhTh/rK"BIZyO* 皠$U^A~ކ0QH͸4i:8T0D*Ɨ\ O9 OAy!irVI.j1)b- BLX5O/]Rz%WvCjFʏ$b!C,tIk1?\|#YzW 4CX!m,2ď <(PK.ujl.߁E/XJ j0(&b5˜X2rܮfg,L0nqSQsƫM**QÛ3jP9ޛDl˲\"=.WTU;Y 35(Yܔ {[.miavz*H ]hu t ]:+slxjp*sc5#^-SkA[^w>1aܨ\Fg%MAh:=10ySnv8`?"8 آޒ;WۗsPb' Do329^˔?~ŃC0l( n,CP5vB/w+~b ,j7 9A^j_3s Ab!˅RvwUm |u( ax~Ÿ5FIa:cs^f[hL(r+1E&*0}2j2{k.Z=y"w;k6n=[L&C߹ɤm PZacxoOݦ z' qg@ΰJ7.QP@K؋]3 VNKK[v]K#aShHCP/8rDdd^Am2:k[Yב˓f5UϲLNP}GUDs6i"ޗի6nt!4~Y)ZLw[,$~7{N#ci/ϦOѵUӵim1aGR`yEލRٶ,ªՑ;1seR6CKcR|Hm^d[6u 1t-X0G0$J a ΃ܡ:RDK R;c8)b#m%p>ZPuQh;ynN8 9kMr֐ *˝o}E伂KmbBUA%6V LlM]Sw|UPl,BD-*إ0"JVEaJuvMh7cO9 |X^eX4TyB2&K-i- 7V ŝkmBoOg:7f ](^,_>Cdo}"\!f@3_|ͼUR][@&ܯəƌ{ ^}RE 2ꭈsMT7p1FTJzL0D\Vcuqu3x'"yZCu⇱q{.2yOdҭ|DuS7Nm3?=uMXi#{ǎc^` a4am4v#@y'0 ahp73l{l1\H/rԺ眷p[˓`eX#gbi:$Ot?XٵXףM:?v 5r)Lb=fIliI1@K ( 5D>o`K5# #+ ?æ2,FKE  a=HXj0Gy\L aaVzC~g_/zHmCx|'6(K`ެf:T|f6VpYC`ڀ|93=;C^XU8N <p@ f⺠Җ.&Ke 7ߝ>;5$l&9CyX+hU71Z1l]8eS~ُc x<_-ܿdhdOi&LSQ\OhǼ/N%E-V,,!6^F$kUȒ `AT߈20;y/xرg!h'DI'_ 7x46sa 3g{C",}T=2PЁB]STTgkrI;~ٛ"FWP#micȝmy {i~/m9 B1Lj_ sj|1Qfq|2E^:u4)qM={ԅI)UУp"cE1 g͝T~wžJwPW`B8lciU콳*lL׵elN<*/C!n+1N>3$juӄj&~>%cR3D^$d?>XiFZhu$YF M:L2*5 42cB~]jr̵ԙO-BvV̸Z'%]>r8)7UԚޚ1Vঊ1>Da+w`_7yT:#ti8n[9+4S^,U?@1Rp(Dt/Ai$~3e-%:2l}Q*m+@!x{ { W;|XVW{&vq_([bSD@dP~+fɁarKovR WH1N@(a}CΩtF}KW{5%bu!djX!=GԔ~+/Ď[&X}rr =S9Yl}MPVС0?SW;X~=,4(& 0dކ^ }~Uh=@/|QAoUPC#","w7 Z @ulZu_L2*Fv;*$]aqW8hA{? !#{͗N@ ck۪s-]պ]lY%%{{.TwRX|3)eEC([7iyK+/`A z#oHoP.\"|g3B5UtM7qؘ;`@|ln!L+s#Is'wEB%\Z:RyiػыpxCRrȥȪC`Z=nrUq@Ըn{0˧nѶP\;嬮!0yr?3 "н/MW *`:t D(V* W I"019QjsX;h?x ScP;m4HѪqM5?p}0/JIVG)ssL,c}bUU`\a4:Ib9?{`14c,0ˊ >JYAx l5bXۺ~b* //^s0D%7f#e/mD%WkСX%p { k%qY) k@S8{rBGmS 0Y".sS/maO(K:n)P6_Zd{(;dU%g ?iYg9ѶPa_Y?.Iű3NOxH8ʓv4OzjclOj<h#Y+2)Gz&&$+7|rUl>B6;t !RVCowF?ǙzbT<ڏ er>0Gq*g%hg!] N)5c?9RnykF ]$PhbW${=E7)KVX@/$@G;hǼ^DKKo[Z7DSJ@M1>T ̈<^/Yկ13L;%kړϼ$y}̂ˬ쨂%cϧNA?QՆ[2 B&xz?);x+@0_N&^ ($S]ͫtUS`(NaH"܉6ub y.= 7P&T7*mMyPMUWgkk^CvxRrh*ЬׇȘS%{&  w3ַ Qͤ[l`"fU򻙦M]>M(ZV|Z懲D2B-ߺpSxW^^K8|_? BiP \\s$eЛ]4Sf<.3hY ;^p~+NIĻW:L+EgG]E` 0V:F1Sd;,`OCp?? \ 9{͖4VUM#Ij6;h'ESmpfpJM|B¸SYtj9ɏ2U՞GýnTmClqwzg)њj5ߥ4x>v!" 6چY8I$Ǧޅ ,|pw$=߽)}KNe8Gz{SO|s/d)>ۖ` øR.R괔 $̮ M7nX})1ڴi9;q,fP'% ǖȳU^#˛Q=b"ǎ fc]!F )CI:ai//ϓ՞+J5rEQkcM7Ua\feBt2[ qﴪA}?і TQrQtĕ_'n0ܙ數@0a6z_V,suB(l#66yf1` TֆxloWen2R0$+z~aExc-UKCZ*ͺyHoG+4׼=("ҴY2q 'ƽYwz=ʊυ$51$̓ kH~t⬎2x+'w̦t[:LI vW{R OIG5o]oͤKL0/kQȄcXDQgi9mm.Bkώϭn{b I\Ò{A5[O:Q:B֧stq 2jQ6Wט%0"%a=>~#l>[ۗ5T⃱3N̔?_^gIWЁ=#;O;+pS|otz&i=n0x}T^H6s)ET_wK:{e;;="Zuz̔U|)m03d #lh5(bxÄ g^#m5~ O~ ,OjCޕ*j ê`1p]Z8bVek*܁iҳ ߅Ln;a))@8G{CT; 5q Hm!T s  ZxWrp-Y 7&)u!G 0Mgl7޸,Z(~bz%h,[zJ pE"3>>CWdEFv33#VTGƿ$v6rX&4p}BCj]NO5]hPֹ<nx!waZJ?rnbEN7D}ޔ23u5ŤCЧ] e$_1= Lff9 ȭh"?_x[SDYp( N1"Y`VL?`}HxjISB2zKԺ(:K^+h= R7EFH2F@·1 A۩1i&aA1I 9% aQQ`l= 9 I2&ڈ@&c.>C;$E ez@Ja[zP8g >PA" ]=ddؕꍂIԱ膟=\d>cݽ浊s!jSaVa#O@-3Te2ZbTE_5^g"h* Ƨl8" ;("fāpM^Jb,mㄛd8(BRV1J:~ OSRK~f <0dRo;,Ƿ M`?Pr``P|렄0mhֈM!M\)kϜ+Oc_8G,ha4<ۑegr[!AO W6Tƭ,_EI7yl5ѡ}*Íc}WP2>%Va‫oaM ~ܔGJ(#ޅ @5|^Ld}!2Nj(3UEax -:ٖm:K$[S= C%0P?*i{f׋brspH:E:ׂݨz[ w( KeNsRtC0F 5:)ldm&pLDP>@)L֒Nwn(}M3fmES WZIk&sA"0&ž;T%Y ==ˁC1vp8~"*-W܂5qYTnN:S,3^/Y_c&ض:ؑ0cGR)pI 8)69Mp/%_ +qRes< B=}t4N #0>w{w3o͈ȭ34{ $~T]n5ַ7v-;t!]oT1QI@bvV%uTw(7 Qw?D]aYd}y$/?UhNmc騼~e.Q%^jeZDЍZ3XmN f~vcE Fx9AMNM*7r"S̫~zwhLpD̐.[q6?=Ȼ\5J؟eݸh:V S"RQ 1G^?g`Y>d,VJf} j}Uk 9m4U8z_`<wmv=2 i/]EAX2i{sE쓾W^x+ J5Fx?Z,~ʷ4/b.>̀ k08U_v<( Yz. ýL's4vY(8["cey ^/i1ھ{rpvTíHFjݞ]=-Z5~xlero7s H"m]Nwll5!,pꊬl݀, ;0e|Kj|#ӥ_$~&[>( X}7r& &׉K E> aUH˾-ŵar26+LY Oӎ#bî@K˝-6$`8cޤ\ eo0nnz4:ϫ$Җ0toз SN]Tv9 9|Z%) ;E?TM h+ZSLW>S&˒ N<żw~@6in ~pCDGZWDǡ~˭bqc(@B^+n#lm&{oo~88WNp\髁 (kNxI"XN?] <&"8NLTQk)(yc 8'd5D2X{N sm!wo~XޙAT%0 "- y%d&3#ۯ Rq!|2$߫R0YR@fNB/ ׿1$i}_w5ߞm ~7)US2NAyg-z `+PL\'iQ=6ƿr~u~.e+2 _?€Jd"q={knE߯T~-7$RJʛGlu^{io,K6-%\PBݡf<q `f͠P"n5Xn6{ Hl(|HMӨyW8(r(o #QUQrj4#߭j'Q9Orsd̐Dn,ŐQ<+_]nl3B5RUqݘ'd2;FQVHh-V3u=Qyel\Q|شҿcF¾)BVJ?oI|3:,ڪδd6<[qNO4!'ǂ|gٜj q{[N\qe#.L xPo>xFnZQt82RW)A<ȫF\/̴g<E5vf85I&tIv4ͨ]Ѿ0߾n`;{XKJ*St G]﫳%F=t=U[@궱JҘ֪O=i^V&fAcH@  ??0 G}Ja@xɐu⑸魦3ʌ!T|o`a xRV5k,n"+}َ*t{[ƅTh}p!ߤ{plTw3v^qx1sU>lo Z3ok~Q*|S7߽ڑ)BIL d3?Zce{g#$,nm#dS xo煱<,ց<ԒF]Sኰ°]ׁx: $}b KN]n~ؑo$S+jW[LQzE0( ܨZ|Lu1Nixm66hF; ]!.ՓIgd0E'l|ߌCr-A.Ɏ׾u)ȥLjƺ7 1qqMs,i~Y=mW!fzR>V&ýPoZsTkeͫBb,D RbvkF zʳ%7J)^)Q@>d~#"Gמg)q2yb.z4;%];e5(YK,qfb"Tξ߆ź)&fNΓc@\g)$G[°hi~a8b҉$mݎ]zbϰ.Rt BixՉ`޵դ{k86bwj=+.*f3umY>_F}b/AoB{8zgwK0. mnǩzҜKjO^g31=-.,B [+ Ym{uX$Aܽ.+Q#/B7oYs3C'Nqgdnd" ĽK۱@V~YQ3wĀkKl?Tg t&;bf7E1@/mסF{b ~*i2`(B z2AUj$hmGDEBM\})} |6 v݃ Ǫ` ]K1L(cO&jfaO-#>ek EkXo 2͍N_Ҧ\i\KNM->D( \vr`jldssy,(D),CEB=3m缜/R0 /RNdQv[uZ5me'tHe:NZ..rxM+-Ptx&V* 1ujwvJ;^RDCYٮMK6[y)x(UMcR,L^6$;D,XB hR%2'#/TL-gכΩJ4sO)A^}9_*ک눰j;FpFAN{v70>bu]ޞ#9c{C# ʢeȍM%ۙ P.Od} 1tOn- 5!QrJ[剋t&&7¾%ɳܐ&KxAy1lLӬ Tnwm5)`YlagWi}cD22 3Hu5PҐB: WHBX+Kܡȥ+9`QH5\B?޺f$mjNlӫ]B:쫥ڕ(fr}W@Ξ̳;,S=h8~]wX2V7Ւ MO/$UvG~HgC J0g@eSt+ƿ0 Ey)vl>.g^@l{ryN#02.s<[OoVL9J‹fSE&Pr6K2yKAZp!QL">kU{ōHL⟅>/10FJ㗾.|]ɚ_P6b!usPQhIx ovPAl6q%; PF7'sf~k۬¯P5e߼O#r|_7~fRQL1O7a^YsT`umKzA hgC=ہ8<%jm1qpD k^DK@F7t*G0%ڣtB%`hʼk(ֺ'hRݦ^V%ȊhK!I^#/;|JsHP\F4YؐYBa4c^ >w Mu8tʹf;%^T-4 xS=&9:PJ@ s4ښs,^)3,vS}%R Fk eu?Շ`S뺁m+t2wvT-o5Ilm:eGZ\sѹ6Ob!wվ0wP,OO -vnZcgnnGk74 b"ڜ|jY2MNv1_M7"zkN-D=ˡĊ(E$Gi^asŴ6BoWFb1,=adz(EQtuߠ6a&;CmIp*+)( .mKZZ"Yv?jYX(Zn ~Rɛ'>^LME+>6>WL3S'rKTBV߄z}@=^TM4(.:s#m &ZTNp4Nςڙ(G1Z5_ .QhuQ2;8k"ӲRc;drnK'toėz6,O,?|&6d 9Q@n-eb_p24{}$"E?cƐܺApp_!GTFҤw)~񇜠4=qUF~@aBnbڣ@ho"{ ?K<tri8jFf=YÊ9|ںfQfPʖ&RJֶ7HXڳX)N\O7Oi x%܎ݖXC{v̘E|-S~E3$+G02ik xcNi2% UL#ݚ~8^0#A^?|8:tJɖZ_W2Ja4tr#1vpAb B#<ބ$QJxm9ZV2a)BDښiVvWE[Y|g a8roxx Ƌ=ra}K{'#K\%A{NCp,wǀj Ѷd'w@+ |e[ZwsylDes4*kAPV1T)%QfM~O$$lF@0|yАAxkF{y4J[L,~Oې8" FBMC:v6wټdضZHUnIS;yT|P3eSP8Z 2SoS^7 !Μ([%5 gB8aܔ\` 3Ʃ$34LqcXw;NI%7/P&A.vԙ^z "=?$g; ZAlW <]Cr:do *3#k,ᾟ`LWeW3L SE9ؖʸ@Jma.,3K)8ȶ&>  BW\o_}Ȭ%ի~v :Վ\=<~X'@$ZYM>G`}@Cy л>Ud ݂Fn]lvɲZiht[W-7m790.-Ά)Emپ>y1b'*Pʱ̧Ł +J3+Ҵ({H6-zS*,(/W|k]ZM:+!jм< K#)m- ÀO" ƗA vot zLCUzkY mI|odHo U.ba\mt\ H ^EքFp)OUKcD.e͡xhhnY!2*+ b$<*০N1鹾 cj=9kܧY;aۄIAqLɩ;K@3lW63Һޙzc\ -] o! Y^nL!ohXJ81%ٟL1m|EHlz=Ŝp .޹kN#k\)(JjuyeP\Na[Iyܮ? OAї)(e\Ÿ}@T<ՖLQPeϤJ ՋpM,b)RHe "ף"iA % _t]; * +Kw %庅 A[ƀw+{eAߴl @)ZrD+O}]Ɛ:K ^ =@/]9νB/vaK;ɍCŭC8hd;Y?s1sf%&m49(6=AGoZ0k ZVB PKeLۘ ku,(=#ȿ` ,8ꞂY aOt vyITlRE bDy. ˰6 p1m8,>X01@IH1(2&`a c~6$#̰ w\3J;f#臧Mݤ$jqfU=#{{\7l$8鬥R2c/:o`|rt'hs৳$~T壭ϡH<՟|Q1!/4g \)q_HR^2Qpv'Y.),NX6ç]U^%**A; ꡬд|`4&2"P^7"|l^:ˑ?4L3dmFЄ32r/գ=+B};ε/Jwhu'*g`OpX cXŒw!h8!VZxE#jϷki sG3ORA 2'@ jJg֤2 juAtiB4  7w%u;lA函ф~ 2#r`€)J7 $;ѱrMJ$qN!!Sj.9^V`y[q Vʰ>SYGL6u/U_(E4R49I,3eUєdހy)+ߣn`.Z JsPRqjh/Lyq*shkN7TuThAs f {M [a9~绾F?=r?F "]T1SԼjP뎜1KfKEDnnFb[FK$/rׯEѨ*zs<[|f|TJR9Lo Ý!OGn]]NB7 ~(GS"PNVJT#C?xHw䵨(~.\m?(³/$kmYeZ9{%"]LS_ "qvn`*J kN5~DSg@}zm 9mNw*![g^,<}i 8 .?V(?b{lJ􁦔7m?Mcȅڬ20~˧:D$7{{"C3)vKZ9Я/GFE6>Ӹ3bfr@tſ=]ckgM'H'5ތʼn+~Id=:3 TmGLx; w~-^>TGIWJ?(yNϔĎm n!0rY/(_ʍVW$8rwt9LIly2\89V]:gu3o:D(K@Dp>?bTfg>%? r yPf1_ R%Ń:Fe*QMnGv}08P)][i*cՇj;$ t=}V>:#/R*ً~PřM I673r3%k4Z)L%o{QP:il)u6ŒS_Vg/4yԕߪ#^E>~ڟH@țu;kf)=y272iM{nUw0iZ@U1As$}gA,}G\0K)ePmW9$#,p Tm}ˠ[ ~Isʪ0r]h{%)fGKjں-J/T~'C-,&ǡ Q 1q 6TxQs.ܺY^c(^, EuPPNIDyT2ܸOzOk!_k}dSѬ$Ш0MםZe-F\ g',]؝0}>~B-?[%*eϒdͪ^Pw99mA}v9DFֹX\]day\؍$k~hWJL (jy.J0/FU%#Vp:~ @d_VeO=|*P)EMnq\e6n {[ߡUbɧvOx3m@<}P-7hx'N0?1ql@ f\ U5"[nN7iSoaX&?{Q>KXmm=pRcCD0?v7 @D̓e _i҅_r&S _jxDŽdYh5G[eԂUQiM]ķ$3ϵI'K? U LR%3KlEa0uuAB1 جE/?$j]J- xܱeއ ~"Z$tŻvIDu"n1/*&XyI{aߵeAEa,kE6)(ܞ*K}}-^s.Ε2Y7[VjgwrU"3CT{@cJO]Z#$e4W;>Z0x\|ޖU$'= :5 g,YK͠P j,f>NjV 4@\zf/9k$TʳXAƃ`_臅2A{-g屸[XkM/@Bɿ,R{C".VEJzR%^I2ʳݿ8k:+4q0~?uz-aF8w@"ԎcnĨܦfh*P)9*r4~$\f݀9dxZE뢓'קkUVg~Ѽ`g$O#J>B f;[m5&(HM!~8x= i`< @3P{nA`MTq&ofI䖀vxW-8s4PKjXwu\ Ç2KuږW~l}q" wF43rʿg ?keZ3M0i=1R[eIA ٶ m;gBy[ɭg5aog{l4=B&tۨ~O{&ޑOT:~5T;ÖHO9E9/j5A6i~1X)rO],X?sZ;I|`Z()@~ q )B%?ȬW̆@(wR4M@r]'H8Z)!Z+(3!ĢhdCjan#!wz!*q֟rmuOۅ@/g;!?1u>Q|<-+lD:Xdk0N!WҢZQX`&Kr[{ˆPi8Z`.qaY`)sa`^svn{ /Ij<7ҮskDcl}o`^RO=O*R7KBF4Za@zts\tȅ'^L_ M2u|45e⛜rܐy3LWx(7?ԣM~b/RPB*z$Dp"i"|e-jur@51fjk4R΋p7\cDS)Hv:L`ޘ(J*A!8ŝDri"b>ņo7&{L?6fQ%O•!y'4> 3eуOؗ=efZLԍ,=+k<,c[h2<\#=<1 T@ ;HPsflv%9ت:9|J|NK KʫID"?JO7ɠ>$ڸ*h/_z=ہ~}nmI=})ʼo O<e|ʰrPu5˘ `y!( >7&?ki{ BImks < h/\ 5N|cGog} Lz4KCEDRkڊB m q ߻>D(TW0oVbڐ־Տn$oKcs WCݬ%uoVPSd@ZǝfkMrXg+4Ë ϣm~-S٤݊U.hW.>xx'2c(+am g\XsJQ,.Pۢh P7ߣ9d $/6ST\Xs_k@k}ΌǛ`=K*䌶Z9.FZORQo07`P[3!fv5ٗln)_bU~OԦ"VCXQiIE(F_(mGQX!)Fo5۹2 w^.YbpoQH*gjf«A~^IL)_r~iTw `{ ;Doy0f}sn`j"F JZ>*ZӬCN?+ˬUeClCQIZ F+<3 cqRni\i+ٔ"urxs9&56OFšxy͜VzY7bPϫgЌB=Lsl" xvĎ*܎eqF5 =kCB& j*Uӷf5`KI]H΅1ݮW3R|Ӭ{~݊5KAjS0*!&^JD^K :lqʋ9}n"[)!QG4ZiFE%_SU[g,Fߕn|0\1g~oLQ '½c ķ{cmSBx3PXcg:MWSv㖽Hܻ)ԕXA&.V4b`m_aKw #S?Rm?U ڈL]!,h;:fu*HjЦ@x-j/87-%Ib89}ue:$G5/ .űK?Y D ;d+~uo;5~ i) U46B7os>Ef+CP=;ӭɘ\_іG!ssH=*coJhN#YfʐІ70d.;zꆄ۱dogϞ^̚u(^ U 'b9gM9ȣhi| F8X7aSfwDfg\ΥgGU>JNE\*S,' )1rVdeN,` !YhU2κtE=*K RH;P:<`}ʋ᦬}~PZB6~iȂ(6'sJ"q(p3wW+JzԑRyc -{Fdit+Dldr/ϜL rVKn6aL:?ddj ny=Ybl_7/(=7YauE׺i-z{]6e?՛s$/F4ZLێ݅|rX8̝0AMg([;-8n vMyDZO7QX!:BfDP pP*S :M!$sK_9TT~k24u)'ơurG>':ڈQ\]so3D8|mVDžE .x4EkN<`7%~""p,PfAF`)u|ƁzڒrܷP4Wr[wYG5 Ra+׽$|(G jQXT$|@UX, aÔɱq)4fݫؚRm5-_( K/tӸ4ZYv5fO5PbtT޴y ܻ,VBz iwp[0_kqX,K Zְ䈉](kΤ,02S#s@t6(ɡZ|E=>pdX/=2ύ[r2JNuFQ^՚MU8Ĩ{Cϋhn5ת0qq>Kfs6=1E,MO09f͗:tq<C|j]0M@:ո/@*%f޾o!-Vmy h5Imd%~ T(dKBV:](T7'f7xYf(0#&/w{0*3rG>=n;OG^F4o[ss&/DK8W VU5`:\;{q0:C{7hYj.QTO20qUJ&0-*B&X}VWW?lDpX:kZ +A^ DC jWF:=5$ioY \c}ϱ*jK8rr䮝wᵩ:?QW'-l8`Ewԧv Y"m3p9> !hw VF%1%k>m0aj!&Xɞ 8acS-r|=a^dwy[QּL]B=:'%#YrWޑ#GK_H!.qT@rdci"ʈ CT_.9ܨBKvDF;-%S$2cnKS52NjF Yo 'Us]6jkh,VȆ-6:$t@aXnTakDž,M4 ̺u Dq0K5(RZY,C<4tK=?l^]͋+hAt- ϡ/4ՠ9eP/ETЕzr4؆7@ ;s18hw+s篰Dh'Ygt-K߻FXjbx)ք-Ě [Q G}yd\rA5Dor8uWHm96!sLgU :=a@x>ِ*fY,ՕG^EDCQktV>`||J֯H\a'[Kyhј;k9`h)Gdb3L'M&vTi)~TX *u`z]mW+jꕗcE#P PXτQ9: @} H'2!µ~^Z9q&+ߞE6[u"-19e`[i,r%-{Ycxd0<cѝZT%x~W&hG|hLkSlGw,e2dBC=xLOLVMd> j!aeFIr ?LØ>a1/}VU(,۲}ۥL40-=k^Meճ_./{׵eYe9jia&0MQmΓS qysPkW J"BRC;g\h.T]gzoT -9l:=o/kr,u0MȌ٧|g˶@6hyO +]l''SJ֦DvZ>^{9 |JìgDEm| %deI`M[+n/ZKHNrȡMe}j;ԈN eϢH}ߵp)UXc?ݩ6pC#)UTTm Na:YF{&vzexS٫D9 [Ȳ$ x%s3Q ׳~C8赐z'9tW 5`l@Ol2=R{dɽ4Qrh*WgVd${XAARL6/Ow oBEY쳐++/-cͥK6<.U ݐryEL]}Tw[W:Xy͢ j9r(w sB{)hvwOa x ;&TrløEx[6jz\Bl~m0Mv 7EYy Ju8jK0!qi(J]@G)+GĎgnrˡR7h/?* y* b7kesW` .L<AZ"H#%8%tT)9Y%K*B&WgPANa e (1ÎPHro#tCׂU݂GЩ`ဵ %LZW* {\M0 o$t`U0d)?\&;"tb(2{,]x$Wi@I7op7!M6,wyPXu"mC)/O{d͌@K#8?t־sL_K+U$ ϒܲ5#,73J6ZQFyX"m !$UAq{sJJru1}1`Z,U|\ŋۏGlL $Aޑ!Aݵ8 ͕`{T*'`y>ӇbIFϴ7bZǟN$W{iz>ywO1E:%qE)2I4QϢٲƎ I#m/> 2|̄OUäY >7?!~k-KX,b+ C Q*wܙX45]O fFE$ҋfeW̝%6 `ݮJ7̈́ugOޅoxL peK'Q>:!.6+M쿦5gą?0Ɇ# 'ǶE?O‚`ŻN C@0ĨxtT"Eisjo!qNB^)Q˦'͵ukV魽M:73p݁qrdL:KT1ۅ5W9>4^dws>J"2f[V9賿qM 'eRoޫqMdqStc#W/&QP1sMDXu1V{8Y?|Ѹŏ.og&i$:+/nߊ-bl));:V[MsޓbKE\6&/ ]8 %où-Hd[0|h]K\*[Ym&sؘ`Sڬd{k: Mzϱ%clg sVɂ^^ã.7WFs6uW#p{Uڢ\w?Pt@;K)} ]%0i50J1l޶0>Ɓ6xG&5kZ]~|Τ|-di87z@C񵳯BEL5sI Ntޝ;ƿy%Xԥ(gXrBPp.f)`Of&{ P-J5DC-%.hz̚ g^ 1Fyd#:yc=?+Sy' 5 6b7b A0~?>34z³.W>A7^EݛPv0WPD4B=s5<Aȥ;hh _A'~S`$BL)Jth]n?chlH)&$@jx՝"ōr prOH* 1ӛ#j2\oMCzg/R<+ Rc#"Ӝ~CO+%m=)9:kSvePg$fI:' J_r0gC{Im> n}n:7~'8v_<]:Y7Vbc)Π{m^/>Rz Kt9 Ÿ&8 d H撷HBd[6Le`Zy]ӱxL@hs.F=G6>-^rJ~ƅ{Ljw׍ga@[0>X"RIHΛ\KaauY\N =)}`ElzDQ1 Njmu^ Ѯ4܀׷/}cWHޮkвa1 P/ _~B`I{Hڭrk4НBKx.- dXP%!(j egCg8{IF"Zń\ ۘSeg2EG^LuʝNоn(1Vt[*P3Ed+o8FFҚn? oؾbHhuСn[e62" YPr4*v^.^}k0qqOs'FXJ#a)%Rkge=C4wĸ?Rf_! PX<gEt][_$Y$h-_J`~* pCXf~/,w gf5BY<[b|e>BNen3ʩa}!o'ZDBQ7h{ȥ 2 7{Db%8Ve$ӹ h:'23!gC۽$ E=dž3G 6F~;9%{-~ﰺwB;wnXgDDž3:in{1jXI@Yt ?T( :l6.t41}O f2r׳7溞\8\q029iX#]*)!rd{&Dp*c:𩟲ÏR8l͎ H4]ZoV;I/^=8q{3_ϩFӠ,jp CM@qӚ{z ?K|ڻ E$O٭>Lguh(]7V`({:uO\ K+/׆TqXٍArp(pl {Ȭ5\O~VvS(6.,wT ?i~9?!@,bKIXqlP|z=.溾81PCT{o"2 Eϋ@vf͸]ɛK+bp mu#kthRNjb X7ʰPUn1>JOP)9b+$,\WEiW/U&G)ZA;GH 8%N^mkZ @a<.=4!^$&g.JWu#̯%hM[sB[>S&gI)7瑨b%_z j .&$gVyjt2g{ CEY]aO:)b 2-wژ3{R{Ft!;$:'m4qD9i"Ҡs@@ipr693 `|Vm:Ry떦wn]v7S.LB=I 6\{t˟6h|{nw%S KվGv%M[JK$j%1KwH?2 = tO&+g,S*zvrGEu 8&1¢ohc$3̻/! A!ݱ7?[v'[k~|`]i|qkCS,̖4ʲ:<Qd>/Y_!~lK87xo<=Lp<1#I]lpСuQ!I,z%3㰦]%+I`<ȌG];ش*ՋYstPWp󸖌oOՑ4XJyP7]I6`䧢_SsZ^4`ĤkW:20I͈$T)R GRHVϏ7` "Woʿq٫1N]Q'rmm]P(W*">T'( MM!Q혹MLQ Y׵8';86;IKg,z2xQWѭa٫~]b&3N>E7\"ܑ,S+mEqW %vk~ 1>o$ vd_3;nh'޴9&ve~X9nIE:uŵW&fI>8lI=1Ľ jen .lWP NoX2>KXi?.읡,&}1Q bƭ+Z|w >ݖ RJQI ֑Z[hN#0wSG,va+;xdjU$>;?w&nckq(AneJq|MYDŽ3r+3MBh8i(:O3DfED>@3{:Ϗi(ZNw iCoԉ + F^^yѯMSu}E'FC F35x=~ރKvKF(=gKU2(!ŀi˫Y{tz¶B,=?$B=DqT  .f~WG% U +})cMGt!q Ϙ^b[9s鴢5odѶ%[Z:0K~eẄq#E~33!(K;4%(9 q]_荗CAA{igpB\#Z].cܷ J \ &j`UuǚFO8\BfƖS>xdY[W2Hþ(Yԙyk h W9FvުL \y..VnIR:豸HW r| AilGcoUyA;֌u^`Xth>CT8pZG.w=J4O#&~~|2]֯ͤWrփm+}K}-TCQRZL 4V{`:W#qE lld9PkOܧdqD1L5-v p0O~T:6J*9U ڽX|ã^~kiOAZ q9f'$TX̚XCO5oP^ #1_eHfhcO deQј-ro~t>fo}fv1x[yyR3wZ:k;Vj;{C`|y|^a㹣Cy3aj1۬LS%.ٹ_}"M̎|K\ nӷ3AE/htXW]#1l-wXvx:-URC shO"[rA#qpX"$dcs=GY=!^2fQ챻zhJN_M]8UtOc_'Ti&؋f';3:Az326On*Ռ1 TG13CIn:c i[ZLp{똣pDp}OCr:Oki )&GAq9&Gikeg3}Mw) HUUB[M(ƁP n{Āt b}MEanlu/NJrHcgv~>=+N+MÅnojNR"ޚoI T?-,QJq0Y WBG+h"I>r'~[F޸KyqՌSӪS\`!JYw؅>zd#1/XFNE%itHygHzeUA7:/awL2p^2MҟXNJX(wwN쨥`HaVn]P&5=V'%]t2|"0F[ԻNZN3M$ !x}iCQZH;V-$M ہaXy7MSlh" w;Om"o2^j0D9 UQfKL@ s(0~Rc⊩;m(6+R$hyv}*iÍmG]kT=]P?t#F&7{hpJME'toBy6N a_g24nNӹCSdrCB'/e57H\>EO+ E 8l L1vh r> ;` ZRCKW۠`(CvXՖݗ? #pΞX`nx5^_\*EH;RN`pր\'zmRm H>rħoj|f%}/pȎ>V1Ӏ E/%pW/1cg[tks>!_6?qplQ z80u-r'gO;'c7:ތ::d߀;ֵh"ƚn _fJ|;$Ŗ H-S>Am`| |)qBw.C'Q'ksMh~_\Cp0A= ,\RPXJYd Դ:U' =2gOpDd|g?tM%>"ZOƮ՛*'ʦc]iW9zWe)sN1Aָ״|>r2I Ƀ31@k9wq/GVPmB%U44 _)PTMGd2\Ő. -ɹAKI=B-ǂsfL7ͳh#a0=1reBk$Wuߦ _֋6yz!x Jn]N'2p*m`únG[_O!1Eb01HEs_ S^7N%ĦvغZ-k&1=dm?=E-Dq jT+蔊'vbAʇNx*s,Yo }3h%^y/_TIڶTK8TmLWUKU* ׄTtMގbQ?ij?7fvOqa&7S/ ~+gb|6q>Q\g}HzF'SB\2t*b?r[ ^tm( }ٟ *'Wt]g.)"eȏLduRO Fc֖V 1>DPȇp%_i67{SCa>1:6]ԕЗx-1׫2iăoBmdv0"9qLX(aS 鐇sU ֹ~ ~'%K`^njШ>(c)4>B‹GDJ 5j*Yg#-,X1~xXՃV旃yr{25|'(' T`?Ev\ AbT;Sk,1lo1*y 3 '%oƿD_bě ^,.4j^Z[G {>@kq0NB&lEYIOxބB>6@8J^Gps{we4^ !kДvFBL^^>khQ?rABhԆ d}-(f꠮y99tTĐImO2&-*3qB@O\\ŘĴmw𻲱F:EJJ6\`^ZtI~xXwSG'-5R4Uq(2#NJ=:f^JjrmYi\rH:adjxakXKsE=z*<÷:2}+pn(0ؖ*Wsf8 +D)M|{P1z72 ohCFy"}Hln>C bԾѩ{W1 ATˈ1 rMe{6HLV}kɛ}Gh5*=1G'CZ^d_5+?PD *n8AyaMlL5ҙx.9Dq+ՅUD8 Io)1"D>M"ZN+V`kJAjR o,DFϬIWvDQvm7Ze4;ihq4# ogZ;qژ;#l px,io-SK${ +L:o9T~hSg̹}:w+瑀ˏҶh;H| BGq_$FOQFr|;eG6r֮.<MGM6Ff+HHsĿ__%pHoOyj!FOOzt{#V$4ݱ~< 2^Ԍ u9/$'r}'Y ).AO;-C]FZkI[ZIѺibQXZ;R*SD&6b/,x0vz#^=YxJ^3'փ6ҊAFRStKٖJ棬MV"͠fCl|% -%Z/\Kuٽn;y+ W!qvⵞ눞@[wg9(!C|$MN[ vT38< Ơ7eepA_k3-X;Jd(8jk!?;KFbiہ"_f2~g%r=/+tS͖Cgx5ґow|'{\fNۨ(Z}abÓhO0ԯ^6fbZB'#m{gDZ[6K_w+7cXƐS766ba/+>A0}-HF%!wspj+*x@ 8t3*);G$X\T {Em9cSv%g6%A[uک=&Q81ǩB;r}<= T#n ?Yʢ4 A,FwXYUvEc@R( x @ Uϓ Eia\lMb#/ Zv6Qf}߫ xMu{c"="P58n{hҩ%u%*"U6݈%l&gfj! F vn;>_7`]&,"`&%#PF!Ssŋ:R͢[ ]2}ץG2Ų1BE`sLFz`1? v "5ɺn. SFwQܵdRK|k|eJH~*{YK I8M/lm~9^z!`V Ja!Fo;=6t|WsY(NM̥H w A m B'88̪D2!P˅hߪ}F #l- zQ/ţ .ۧn\ q^ lV%J6N^+qBr{Y-@D&7JDgneGf>A#GEe[Mxq"#h9/}N@',|C, xw4'US+s91|Nę:ab[ 5P'"˙a= g,mY`$˄Ih*b"H~_`6B4dFm8gj] ;I6s 'iIh=C"4D`KJvlLŝOpgvkhbӁ -Rt#aIOZk)Kc@|z۩ba/u1Epm_ #rrZ?qT5!vPa[c)TU#[c}2rdݡ_5I@:!^WpDA6ҕ픤LiBո-`=!\cw T_TrF /ſ2/L^wп0=t%:E XVu8,Wh `?+To#:v:& Ѻ >[],\DiR:'y@ 7/9',wԒ,Ƙaԫy}fK5 2"Ov`8,U V੢@>IwJLUC^zaܭay*~7MCP*RZ/П4X# >2ǂIt9Sp,ϻCw|/m@O s|u\*`яKwG )B5֨A濯TQ>ȫ]&W V:U3 DV?p(ךARMϋV Qp+h6F3+m#B4}AUK}9pa¡MÉʹ~?‰v姷|Uг{c'Si/ܩDBS!/Oko{)byͬ<a8a}wTXq2 tw*S mMj[S[з2\S+gonP|'8Hs C B'{{sO<-Hδh4rKi΋*^b;:*➦W 4M%ԌYz;>v' _Vx*=DJtSܣnG <PSݴl.gqgu\b@~qZf. <'juWC>:\|ί2|:/F"1( cu`Thmn(HT,HN +a;[g6=Zc[͹1RrɢLXL{E=9at`!2V`?,ðѤTδ+q3|̰§r-Bk\".Zb^4橥(uU{s%4sdlcitintWMMR]m=N;#(lK?r4UpuY"MPC$i}[Y蛃$z'}A=)T\1"7܁H=ؖF!~4dY 1<d@3Yph0y+D \\[9tM3!Ŕ@(3|MXHV2^ERG {H׶rz=SgY cL%*q)4` e (Xx0vI t\3SV+2w k$1 :9{Y$Mጧ%. n g|7;j[ҩObjW TU8f $lLOXVa {8:K}XS!/ܝz ۵Ϧ )¦Ȝ?9`y8~Z4 ~"^!{ѠsEno-Df+!sGD.~.vIȦ|>HMyZ)y]H($ݛ9y(1ۃ)n±x4פw7T>>Y, #r&>@611diRZZOl\|+@*874@Q2q]֩WԮUGjǽk|5{'XOJ`r!!Rnw!~tRtIOH8"u]$u™{ѕ5'2]njL;aA{/H,:}(dk:w-Γ=YXzd,z$?&OjW=˜q%9-s`rӈL- 9z+:V?S)@BI":oaU2Ą2gpbjkrЊiTR̥] u9]iGHhNA=*ΊoY2Tr*<#ǩv1=\Soa <Qcv硕(ũC,kt3eOs%k-vB̒B({B|.x0F/ScJ"gnLu=OYHh)eTlJp@k̝ n@Ob8 &GKE }9@^r͕n_{Y(/ n-dz|"OۡQI3&8t%uC;9֍ƜE/ .mViLÇ]#[&@u;8h}jε!.kțB{ЙNv-Ny3>.}UU~ PudctaRdQ|oBŧfzndxw՘|H#8zoUH@Lf$e8,dy6H؟a4ld }@?"iOY ZvwfVM[cSkCSUɲ-DN5idҗ~q{rtDn==+͡:A|/k"a==IPlYpHb@LNtZBNk鲜,mh;FC~b{ }4gB`y+8371X4/0G;|)vCuhFaĺ]ēM0.6 #OfGGf#mMx6Lmi k:禭N&T!Pps R5ܴW9q}s5 w(~Z >n#)%}w]Z"\nTߛYh bṇj:: $;vG6> 9<$2[P$1ݓ6+rGZMR?AM6͘59 ߑTݵrIuWz6&J)2pe37ᇲv#G3KaTu5|z~ZnMWi~ٮid@˶X\ayqݦ`e^> d ")}D ITS4$xwSc|u_ث&ؠC@Bnj@_aEB=+z_ UrD-@+xrd*65N_w0[Ox ؙ(&F΋xϤly hn-X0_ '{{ڨ;|# mN~jrq ۽1ۜBk}\r9&fT5딲y1 DLIĽa.Lg ?v;Ef#2(ܻ\$': vZX*C6˜8G'[1} /MT7'ވwnpOm/2L%ab1PYXQ6Nr2ry;{s~Fه 6SRôwzC閊 8y/Э0:?vOt Jƃr?{XO?B$uD '0Zf?@c#;tAɧDIp _mqxYU_p+p +A1Lqv"kw'LbGtj1 XdWa; \6ގn_L(%<,RnV bOTS'z낊g676i.YMAP. An1R o7(4Xv$"K:qUZJp>FWNJrꤷs2$|3iɍǁ(Z86m]2 Y$V=>H#/WAo[jL#2+XQn܄ʀN?]j4l2@i({,Lir.ȿ r9N!JnoxvZ%^<։.auÊ)q CbxɆ6kfIP'":Eyy) 14jRL}h8SM>`w[p"JfS:;M,;zz}vҊ$@-Fm~,'eRvq$.4.("98V%V|?@d5:n(dSx9{>sS;4x׷TZ,}O׊j ~ۇ?fhI|ElZcӱz yHc8z[lOevL8KVF (g%9osJhE^OCYuoоwq>qb/_һ>Ea ݸ !\$m e7-%d{ৌ; M']| A6-`|^3j'Hњ[!}& 5- ,]re-@ ,JV:51v^"ݢdZdRԻPkwI "Hx"/.!㴽+l ]#[W_+dK ίKHi6գKr t6N}UzѲU݄MB͓#qMVobJgum-0\ eO,{6:IyF,{1 rg mol﫨Ϻ"gS>[üŦEvګ1Y%޳F/͉hl~SCNNkp4 }216#p8 7p ģ%RRjY<\p=t6s򐟧(!3vU|+h7pva%$SqU֣6&KSj8h\jcljQ;B@ɧe0_tIeTx9=.9jy 6$?%V%}1:aXOf336y:.-+@anl~rp6^:nTo?Z;砮ȩE[gT @$QqkWe)J5z@MW'bGyBYlPviz)&ЧMІ,9Sϸ uIҬIѪ&w'U*;a^2\G bmh8Df VA6h@ 2Nڬƫ؉B`eMMaAoBq"XBrMS]MOΞRV]W&H6LUZ`6_ڑɎ| _HLI'U~BʉP DPXD *'c\waQ{#ss1kYDH|ȇip 7NlY>=̎qe aјFmb}4c"7á*>6F9C~l$POBw1j 14N3YJ=!GV:Pz %z}Gˣ̮L՜BW^;h5وy&=k/#DVpt-\[X&xڣuSٌ ١AwZ\b1`(af):pƴTA, mힻ٥ >o`ׁnYjQ' L\N@(@'[JIRr;Eܝ?cuf.pR;odNSߑgyOx>?ER+bB3DW3v|lS8̽;U'Vɺ]zFu[$[XVi욫l25mr$g |ز YRm!qc_CW"JOCXK寉k0~S:-M(iw'bȪ NKLbj[NЁOހ_s\_sٶݣR礉;35WX"+ _Il/\"qƞajf}."< ;2.[bIjOC ?*{,4V2OܑC QIE(Jc VJJ*A=E1Ycnщ:X+ӗU7hqLsUv-vdͺ49:iD[;1N!W(sYF&2S#@!PdA^%0_y6AHqCΛ({~{DJ-}mOBʠ&tV~4%o].=ǬLQPThs^`%aۇdSKb STJ{B0S–xqV|$)p v_sc1֯f)]Fk{|uXqfR ?E)5R`t⑁mkjseB*]{Az UI & &ht)8^t!&I9%+k_iw GS8y-'0Eun7c.L"Z;[ ss I}m 0N):Edx|}Zt ?ކ2PODXK, 6<-|7Z{-f:x #5{gdVБDldJ2\pX6dP>d(,rka6^P!k{-SOB<;ya}եdw;P/.Wb$%S8A86R +n=Rq1'*pڅeCYbJTg6ecdơ s1Nomz+Z貣9F/:`V(L%4!K)8L+gZpg6 IN~̦ل9/Ms$1DJAJ,*x} j6Ӗ^ɇBP./}y}0"`0B0KdjZn{7E@_X})G1!Դh18r_~W!=K'߄M|5Hok CMjɰ ߐ.ՔH̫&WAM.Xrk_V ӳ9 ʡk]}g;,*PL$ smP:$6g-Xy9P#{#~f|{E:?pt[/f"uge1;z;)J(XyGn|m`A(> 8ɨ8DhPWXdG2sbSBs$;/!L!F(%\ ^l h¨v^>I? L9biwU3J, %S[I41mb&tf@9qRǎ;e<N. l-zVQ&XASߩQcjBVBXq+&QND7_FbS4/uj-jzOTP{sH !F1M(2'+…_ 450:̺ o-+sdf#d$ ?kR2܏?=]t3K>*_TS $\sc;:DR}&g͂ýN9ɀIgTH;Ubcq̒wa*j1fm#DQr<UAOU7YMfd9dhS |ƹqv0˨/}NhlTY8:s#Vw]x$m!#l͏ !KXXY2`gXcvBb5^;[p`Eѡ97ycEѭx1WAѾ*+i_:vF+d<[G0y#h/;*)\5y!׼j-FvkFY$]b,˷jVϯ̶8ԯPhZCrKq IP6d$s]G0"%3'XpIrAx8]m|a!o[=3\1$6ѿvW%Wi+N }Pz >&' ''v'6]1]&'UGe1™ }NuA[2~8@Pv~(\<#5@\IgM3 6Nt V  CݧRS Xop˯-H&VMWxi*`tV\<*nNĪ$x,р=Y~úkl y7Oʮ.ifq,سő-q>#T)**{~)HMk0cEh\"[4|Vq1ˍI OūSvAoEaX4K4pHꢚcG>de0 5b#aa)k ;i-㮊`uD!KdFn^\t6PӚ%N.6T0z")С& v~$,o*p,twN== S6b nAMw^Xix.*Ff$8*{̹݀H`UWqnAWKRc z~:ͦȆiH%ŧ)dl^`*h).2s#h/d Qg5okϊố55'}ҥ637 5jszyf\/`\\m?4TNa[2-Y%5&fq GgI{YUmjNԖޛQ'¶tCUt>4NaTzv }8os\3xX/[xJn 잂DZYލ G IlpZ}9(V0N/ylGtfB=UtvK:)q_%,:<(TOO0!d(~X)ykuiVr n;: QP1^1;x/yT=S> n@3Y!k3,O"%Df̌vїpYW2^oU AsdqŽ[>1BiCs хzWD"tmؽGlj(с^E{4I~ u kCkaw HZߋho kI΄MqLd{3kok鬎z6EKvke }PIˎOE7b{57'GgmWYeN ;kX;#"_*ХPM7Shh72|^X_Oܻb?? P^n1n| 9Cm6w~y TC!eߢG@RS(v# ݻݤ>JfmmG-J',FűY>&ߣA5?2 [ MhE/ #˞l;ʖȭLDᮆMSjB~ëUv V{QࢮOMk\!ZZ[\ vjx5 uqljp^0lCV#)G.T=28GA#U!n"b@:~yĿdxI\+1XV9Ԏ?W[˄֝M?jӝzRa&5% b*/]kDeG7]ro\T[6[)E;ؕdnJGk"itܤ簕<ժwhd{)@a?JW@Ъ CtE G.۾g(fE]jI NA]੭纐#Ziֲ ,gc:DU/aH)1G?Y)[yFldGs-hGŏA priQR^MUprrLuںv6-\(&;&PϪK|z(ni⨳Ilynj!Hg#3?R D`YH@>V7@ĭǪH[1h=Ը: '֧4\z#G… FrS{`؈p%*f'MHiFͲQ0G YONY99 gE { A86"EaTjc5)< ѩ omGfCW zzJW[m÷Y,ݺt5~-)1+^T@y:`J*zD{Z3q^8udYF/!r(=RRtIjrTVaJNNN\z*r$ bL>*4Q>APv !13j3r-r?2 ܐ/$BEQ86^:VTڨtBJY0TY5y\푳SJƶ@lPO2$ihmϣ.w9MJ4f%m"#ޑ\w" &9IlJ>xuՠ7!}d2i!wzW5֤6U;gXzʑ50Jd>^Q,|AԸIpPazR xi]:n80r'@}^·]فukwQ4Yp:!x}YBXtp{i@9KjH)AW[O%T!tpwЉ\ΒKEiw0s|Fw1k5zg~ a"^+f ܩV^xޏ{qHFǼdFl<8 ˂v&W)X&@Zh;eF'PD"(2'`DUDW7Q- $W7~B=ZaŢ)sm.3`N[nW\TPL_}K9&cyGXXPGdχpCk!98ƗAhF׋ >il \&Y=d;\|L(Wӂ,`AEs/Y)V4G\MCB[zx*XMX_ Tڨ=mًN3HH;uؕ.yof|=X2LWZ@iu5DKQiU?z`AgG+ELTX;֤+Q~ANP^yMzbɀp1XC)FHtym(J Qt][Jj)akI&S=h{$zf5ԖGG^N1*QGA ŸGjBGALY^$wq*N*g6, lP[$hKfO@kFBF|m9i~,RQqk`UʭP_L~ZJ{XɊ!^|l;$JԌy3Vct^6,!p$2`e1XV)jb'9Enͼ[4iT!G3a%YT0*!-:࡜ t%xDao?)GcN( ,|h̜PxsؘT]=D-8dfZ?q]i$9PWaNxH1u.7Ф֓bCcP(ւvӈM~M&U_ol,μ MHtPMո;d0]so68!иm,.Ũcp~_7PԘ5@xעƕ]mJނeecN/$\&C&rT̋]`m#hD}f Q8H Y"1Bj/ u/Š=-vVmQNE8:p[0hTa+ ?,P҇.@hژX{!>?qr-?ڄ U~H0vd" NLRԁJвuI8 R8df .\0}LBGM\2 %i2]eZo@M[o3NЮ ѭ!HC# Q*{R#bdUFk7Dn~bɴOVqz#Gzw|m"!kCE T@Nv\jGIC[4C ד'K[<7  u"ZAzЭq,qpP Y^|~Qc6/v0?=> `{Mp+l7X% 8irgX=%:*Ҋv#@ t4ד]E{q T@<1n.~DuJO:FFH$ZEʧNnDJ6j%K@X" mSsqdAeb82KPy 7PA͗+X;v0l8[O'~tjhrgJmK.<O9AUyNBЁ@;/? vQ,Nohz 7RFNODi1)tGC RvZd%ξ?0 "RH$ŢՊ4ōK8V_i7`||prU k~WV ]γcweYXK 񪍆i}-C8yNDMBBi9_VizE²[0}3B)oULNDw@6 _O_Gܔ9Ž-}\U` iߎy1Ȩ#7w*_&ҍ?D1O6u7ki{dW^.=eHis !N"<6*-"W̿>},2-g) @zzʚKOyJTgٚw.ԑu_^QG# f>Ixv'6>mÔq{@SbvFh6ֽTQݟA2ssySfXlN?&iI`tV1sG ޥq A=TB% b.LOʥ;9+!Z!hXEB=eo]\ARAX;bqLMd+Ʋ)QlߛZlYTOyA0b#vu4%*kN 7S/)yhS>*}\tKּ5.Ax{YMd$-]AQI.̈HatZt[MKBMAWZpf`5B4Z4Dʔ(? [>?վۇR\Q;D}C+Zfa|Nx Z0Wq-2QL%D5&p >ySՑt=^9R6iz^6i!U_kTWDCX|UrFjخF\~flics LYv2ST%ɑDbx1v~L{u`QV*VvB5y TBo ։Z@yVn؆ 9Q-qv;|^}`27riUyo#zGsu"<eԳGו}w@3?p[IWfd-,&Һ 4Į jø!Bn ݮ_qTPEFO[DLB$O HS|>f4f/@30r\l(3B_)kjqy_s'wDn)<\* mWr|Rl ~qYYw|V'BZnv3$gj<}9aIt^4W}I*#!7c;m-:28y@@&q rH"o&1Zt-؈X0蒺zR2C9c v<[=8k.rN[p$t;ɥ1bDgI[E3C Hͬ@1w@ruR/Y+S8gOSEj@RW)ҟ mgUt!y'4`A'JS.njbiBiC/WK8r9`ە!JlFZ@%6 mk`@9hS.0O`/7 /A]\m[ h$p˹]fN*]Zhh81z\#FAɇQ졸v1mG g I3c?G/(ds0:DxpKB <7N';s1Q q.t9_"Bbg0IN<;zIF9Tr]?2Nb 62l}5]EMkVEʉbq`" Iܢ7瑤;yJBMȭU|PgCdvo~W{ ܿHuD9xx$uM*9jnBe!~lΐ2AJ!<\zq(Tql![Q*eI()ifZ5-+O ]Hŧ%3 "c Nc}< 0,5s1l8ӆAP'+cnv:[/ECcn޴_}+.iH7T>%n6 ҏi3Ǚ/Vf'!PxSP鑫;#|g);NOvue^IU_KOb9iͷI$bHǥj 4}MwLp!0{5◘"2KmnXlEg1,H/,έN}l|Pa^\SIJaN`cnV&oi2:"K$x^oPfk]u 77z4F-Adܮߓ =$q~۝* ! C5^`[[[nu쌪KrD9rgҼC_ ╩?h|Iv:&#\reINK= DV(; p{*o[&C$)~ ?vo!79X| #XA5D41j-jFsWLga4?L;?:i {.fNtLk"=݅,.Xc&8Y.stݞp<E'TȐauL - }wVnol38B#t *0a̢*|!$oƊY?h<=X Z:OTN$HR ntGCOTK5TUoe ]&[&N#8I5! > R4:T4$2:LmS &2I"bv~ڎq9Fcr.M&_^c2A)Bl$v[)<{ńreq61L˱pVC&s=[XdU mI C ?d%&ė5k*eL\sÖ(^Y(0/ NW9.\+o5[ X !]SSHpS0W""h1> v^twP8vkQVS$) rs4 |dL(m@}1.W~](fvӿ:`/-f;$z'(V:qf@"-\)P*$njq45X3A#Bn&ͫoޥ:5+q6L?է4:N?* + N KPO:IjdxTMuciǰA@ha7. 4k6v;9GC AMM#{eu_epEOSRIv0+,<|r;+ /UŢ 9Uawقk%)(?2VE# pb[s[8̭/t:.0>Q^MČ06s4 TBگJw{)t"rÒ( +č-wV?6H/Np ÎH!Mx5 :WHG~GL\/tQ[KXu;13_Utfqwz4+;k!hTxʲm~^:Xoْ༼幏S=,}l>ʆM(Q6=mLnI\bkB={chl`I׈' K.a$QP;Q/UiVu/aMUq`qg\8'}({= dhAy+*\ϭk?6RZ]F3)*T{u665]hl"!B1ޑ6`6 (&HKJq{z`IwѰ08!R`*<ꅈyx$ F:hڞrvX7fST o  _dP+Ha-o:ѭpb"}mIN'*xTTڙ>ݓZ"j"-O>M>0vɡ=]*%*BNOYjN9T%:=)h JV̥g VIDuY!Ƞ{ . вovvb6e &ZSSM'C{dB}(Ȳӗ,< %ӝlwSҜ!`D궂d,;/mRQ2Mw 1h UǤG,2{!,]ۥXyFYDA,n"_HB_e!!S:]+T"V!{w[ԥc3t4K_9K~&bd~gt-dMCLzoa ihY9wOz8Eg&v0Z׉%Ԇ5kĵ+kvwǸ SBΓx$6wBG}I922*5i#IN+'8aZ<.zl$lwPb;?hO.Gԭx:f hC5tO(n? TǗ%'Eꓒ)-pG -X &W.d<|Æٖ؏:/$ԷxSNӆgH |Uo*2)H qYN7 w'm*+Ցl`g 邬#*UK6jз,ztIj#|g6ÙS(xHX0)9~A ga"O"qP5Gm@-y.>s1fp , _c pP>9ʍ6|c*Q/Oc\gh;@Ywe?LίSkr9 x>@ކ< kSyxp lN_xe[rM'wlhysw>,y +CוrP'@F\uI֎ʴGQ;%{k_=*f,"<ˢNHpݴ-$3gSyʥ&Z?N2`mS臠B %FD C+vw\A Rrv[{`E> Ǿ,cpw$eP-ј"3Z:ƶJ?8Gwө@-Usj 8펥tH#-$ȵ W7bO$|tB,L2a?KձD-٪i-IY,a3z7Zl2ML x@-{Nq\gpXs GK/ܤSV7oR?R~#E*B.1}\vQ CDIN(9-WN胬NG\11@c?/[ZhE$;,]='zR+/+|o <պ{nY91[PlqG4/OoJz>'a!XVu ŀ(0ZGHMH+IaVrun~td( FQ nm6vS"bG]. 7QzrTV6]V0&S+oHeDΐ} ᖥʑ@g ^l=#9 g3I_&!;aT ~Ru4"OK:م9? CpF\u9j=}/IGUG2z苣͋TՆvR!=bFUU vxjP2ME*n;Հ\siݴ3F Skr#0EFSMyACa1xx~-6I5N"<(8/6 \3'ĚܤKRuWv$-GI=/40#":=atzxJǘApukdھi)!1usYsԐ3]nraGEh{+nMf#F}b-00m:OŗKA@T8,װqF '9Ux>'ߥ~m=nc{:iǖE 8TwҥS`%k9 _{@Q^ZN29(BVC.@s4|fmK΃q|!UhBzzB>" IK'H\Ic{fh- g a)d*|E-A;bG6蟦L3@݀r5ċ 7IB dPE^E0+ҀTbߑGc9D'2VyIEhٿtJr-5В_U3^z%PeI%2~8ž^kz_hʈW|:1&£ǝ͟x%  >,G(~nbY !~3<FGDHz1)P@kuEbj:|J +s%r9=-1W'?3r>I) 1O;[̄@7Α uX'/ŔZCe,ih[Ⴂaٖ/:\*ISOY-w?w{E/|Vь^_n54Npx&}kL\a<@ ᰽"EϏq)YLBL`_l" Cʟ$ynFӉLm6.;3I[y?Q-7'7BY m!RȧnɊbv4jft, e{RؙE"b Re|DH[A Սh\T;qOHpg*X+B o/*c~$k#CQ X ?fX{П,%l7"麪OR/³ioLB5S}.l B^k5 A$Z"ܛo0zsw0?n_5s,ik#Dbg4 ]=,ss1/?m?o.=}D8]u꣧e{A~JŪqEZksev6ɦ*<,__%ZA,fIAgyX8F 2z}Rcvܩ;?׬R3!Wٵe!6h(It@]L')^1VW7ΛO! >:?k9~ QnE6TX[K!=,S-&c~~c%aѮ6mc$?17&"bǷaas͡I( ow2=a.GK.9Їp'-5N* E%zʷ/nT|2S~D j Bm^ N\޻D~֋rS)4Z/K}ͅ$s>o*UaHLVN%<*ZcLpQ;HU(bL*^ @WK`n#W&: Hf6Uی= 1ȈQiZv0| 3pO$w"bJ\<&y3`i6 e#LbvhQȩ«Sx0q?\gEqΗmF^4qVZzR;gĄ2)w琇 .XzB=osJS1ZO3ϩD'wi(rh$f<+1Kda Jt~= iZKBumur;sǫ{5p=ɋtQ,Pse9҃/{jlywi%X?f_ N}N(3+YcI:Y$Z`cs8Qze|*|?o{;Gk@[BJM?Σ~=2ц^Py+@E=) 68gI^fI#7$dh){tpxTWB5ޏ~]vYd*.õ+2O ߼jݨ :d7Y?uNhD:.ݬ˥?]<iuzkj-Afwsa*2\9aw>\ ?Bݶ9ӾɆcP9g=vb#5rGX x۹z,slf˧yjٔs8bFsBDhZ-2)Wꆭ(ȈO+qReNL} *"|=:t;RRwwogET1oWxp%2(ԝ '1 [S :ȩ-0Ӿp]&ٽDC/#I( w57̥FT2;ax'@FvCeeä;.l6WpLw3 %7nf$?C=K Sj~WaeGU Y&)ނbOhkā*R"a at ;-joQkk߲aSӉD/wW+A5HLD]Xn.ZĆb "dƨvUxmLlSց 1h'L.?Z_Be^)b{{z%2Rk=TEOD͜d٬XM&$᭸5ɘ:FKU \5 띠՚$^5Zþ٪ YYL&jCg{z38=F, 3""mǵ(At:jv%wh7z}o(#vYKVVBY$kj4IP3GDP+ .O[-e;tΙ7Q[gf6D]!~ Ŷo$L -D"7LCA{IjOъtOiBƻpIZmq҈Z/ZZS\7lS\o=:"2fnbٖ80Ojy)Tf孧Zәj<4M?u;LڳhzFB\5m^g~ )Zap&>vc)9>  y75ߓjd,GMxrB,BVoqb8˼="ف,h[y)cVWwrF  \e-9O-V*^Kq2&y5=r>ߠA3|p1d K3Qн bd f9 P/kesc %鹘]:uWcs.P8-{AEU.4r[K? $@}6fl$i8bqrȂD [ +Zjrz#F,B)*,K^l%bM4pX} 29=Rzu,q as^cU癤 ޴6kTPvxRoyȚԨ1 6D^`0xOw`XM}v_~Y~U[V%^M(Q 8FX k[,m);rN/>.5:(]RӦ6~Jiż<^cwJscN P&MsLcI^0m1)tZ#9l7de]!eYE{#զ(bb h%!e'WO"^!*=UR°>OIW#@Jű&5YWw_/ 2!E`U Qxj|w2:mTH'+aBg_514!j8Qt2|l FW#-B,CHUuU襪|YFm<^E ˹:ydj˨yfW,ńj^s^"?;}ZXdU3U6[ Դzܥ]XR]UۛU oFLںEkvdpz ˟H ^SMuO F `41D@L wi6`g+RG] e-i[ DPRH)~DSCl`Y#:=+q ZfSBޜ~[YzWyf*bwbbϛ|`FGl0J"T m;#8@î jJ+ìqŴwL;}١N ?<ɨ?9OX)#h[Ћ4<32IFN#qփ&|3xo\F&WhwԘLbd3^>vs9Llp2C5yұ|U >iis-Kߪ^$&b8_)A~{H:#[2e3KPaQXSr i5%EPJxqj\.AՑys2}6=mJ5sēju5CgJ :1GJ 7܉E6T)]{ۧro?cbU1ۅ:i|D44ZpxN ĮY푽ypL-DSh褞5g&jF#aDU " 8q`)qiEkIeXd'vau7`?O,.oJN" Pc'6jR E!gMVp}P+Qvhn߰g&)C<|7o>HaK'J߱ڄf; :%[ jUm.cɽ_n96o}*Ȫ=2ubJ _+_1gkՉ[ϸHԠ?9Q( -=X3(܆.w *'wqV4jE$,Ol0W8mGm-='!R͎`8Z"u _"YPJ8ā}e]YȜ yfzEͧjMc}#i 1;l67@Ev&]S~3+F8R鰿,S|GB^ O"s?[Zc4jqXmm&4 ˮ&ص֋& yJ(XםU]Tc[9%\smt?t*MY5˄ʎ3W-p[3s&@Ѡ*6^vfk4mUbnҎ{nPWԔA5Oz}{'z[Cjƽ6vܥ wԔw{]T߇1#PF$$Btz dquE2#s Y@> O]QjdSBiJ&˽5cWLkijd"?V,95Xqڨ73kWΠ(r/ٶLQ|I{NYJmJ`a/^(ռ}ˡ^G9tF2u'5ϜEMi{3vLT50Xcaޏfn=jfc׊fH:=2ČD"s9VN]W%krx%UxDޢNm,gal =n Qӵbt4s[fj\{Qjf "g,ow?:FN,4^ (MYK-b} nuPwkI~O :X.e!P1B("SΧ+m+b8 ŋIuT^t,cRrV=3F`^ja^>C3Suv {@P LASHdEf,UA@¡ F)!j@¹2[cECay`Z0{Jh5_mlX C/)5rSf,棲Qb LԜ_S3z!V)ؖ|QOȄ-/HS,-K@ \ZW䷱$-"b#{ک:}-ʛ ~OUIVb[@^"CM1|a}Tss0FFo}Y޴lj1؀}t/#׳:oh[Zˊ{D Eyȁ ?p@"u~]0pҀwM.ˑRw!E/K)zvuagL5, SwqWu˛C41🩚UQ)3bV'EY 9 Xn #5X8zm| 2[y@vdo:|ZpDĻr#U|d&'G 3i`-CPR?-F?l2'Jɟ8-cV>T`2K".G^xM9Lxam \Oyb+vULcbJXל~ˤex^Ba PpM&ww}9o,ǒE%Kpaxd_DXO8+x pAA\aFV'x^ 2&&Rx&3s0\#Q'=X@cnr ^Z~ S ( V(0h ɡ: TxQ J!?_%>Z1X9 zk=e!fr+g3  llGYn)s{a*9f]$_72UزQ.8v{RtT]f@x9GK3.u}`YC?TR:?zػ(oGآU h2 A]3B`1R*8GX^W>MMl^N7';;AxǚZd:1nF('R̢$c*xǯ@n Әr$l>Έ.R8TOoyS/_B|o4kCU81O#[E4,G(*d pȁS@i)Q\򖥅o! H]M<ew2x*qR Bk~~{ۃ'+lfۜԋ~q\*mx 7\LU_5Ifs;^Ҩt|ыŞ .Dړ!AXz=mhJn)(%Ҽ>P@jܱ5g| NGW6=ZB[ɜ0#0{ҥW%G@!ߢ& Bۦ RCfY59TUf`Pye@$ZbyxPQ#볲jo13~ l{Z*ԸyzJaP3L\y!G~ G+. /U}bWwIҞ)av0CC=`P6p3;EKje&?S->y!L/ոӈP0 EbAnMkE!@.6%f˺ TITadOzzv!&#n^?VX/,FdyXiw(vvos]tW܈uz"4C1n(_L%J0}=iEFnb[_]"{'[%&(9η齓Ιt&"ȾTPiFh4gJ'TPR2Ktb%4>l Nҩhln8F)ٹqIlwiaAsi!Tx?,Cm؀0k t8X#7T"~K/,8ʬ.#Y A侦NZ*wMBe.2zO_ex$(<5jߓvD14- mKymsev&o  奤ۼPq{L]VO^ |jGI(\4ٗ-v322RQE1KT=KS+$KEpmdݘDA@t4'N (rz !Y7? TDI@H_eɇ녕ch4e#@ QJ {;H.YY/>;RМSj˄$;XHW~KmRc01 (;Y`_Elٺ1 ı8oʆ+m7G }MjfFOaQ -N:oމ *sԞRkn2co[tU?МEFsKv'lk,wbyp8.ob[-w17UdT%l]kҏ} Bے.e/3e 9ͨ۷c Rv&r|V d * 3u3϶yoC}wEP|W-HG(:kp]0s GmOLq5WePłyJ\BL 7XFm?+T,rr(&tȯH[AX^q!?di:;IOtQXLHȖyJ\B˶vhlG\%ủi7E%s1g3%XF5Ah^ ~ho.'iªVsԥ %^`œsU5qj^48d\mNo]94snLn n~]$D뱋 -R%&ypwSn-)˞?sp7_tVTn.sak(}b Gi=a&Ye&SRϬ3]Gu6]=1:G1*w|{lofHҎQ}&)4;{pR2a*A1OSsHoD+nT׉n~*Z![#o_@|z1ȉHy 0R\\4 YUkUUǎn$Ʈ(a(ܔqD <C!¿Hoϧ22`.Nn0u }yIit\[h5u+k)P'3JȰ_KudqnΡkTtGfT/{q~T)'uB}=1Z'U *G4/W6Y2=82GU7ׇX'#3[Ҁ+(5_9纄?Qn׮KmC (W +u#ޑajs ˅ .o\y":k=jX߃-zXiY욻ժ l#C ![u ђ2T.Ыl*aG*gcNJnO 1%5*u>q^\O%-7BZDV`X;\~ܞ>D7}UWN lUP:~o*7p+$՜iY~M GH,v0p[F? d@@YM*u~H $2 ki{h3"'5*L_og&れaN {욚Am0F/xx b[6T4Jg܁OXt w$l9n*c؅: a!ib'{6 (m΄za?ſ}WLA 8HBA`W_An4F0y:!RS`MByg @}tU[Az^xojֻ3^55X{Dv%7F4s%adǦT sIGbPp؍@VXIȧc׽ܫ=8c:$zY-]ҷL\B 5䒺Ec /;IpW^Y ":7xnB__w5-ݴgHy| x0 1b|6tiCx|KKZ˛.]ED'HvR1{:y 4[u1˝0h8\d=ux( +QcpSE}|^WN? yXR{;U™rACvDe%[KYx<%8lt)en^_*UmrPne5OGk30*-y(|)؞L=ñIBeEcefp5"㤠aP&-]N6<:cBw%6z9ie #&Vr09{ΘgÉ}ļJ(قt#ieP$Y6k.QȄ i0ޔkgz6xlKb:9Hd0~6\ClA hCF^[I)9\9s3eZilJ9%0%=Fڴ茺a :if/ڔOw:b>nUpٰNߎA=UE֣NҀ X B*{+Esט?Z&=PK'U1lQifR?yxZɭch/%(X`.00 җ,S&tel״y~|WvʶvobDܟgٛ!2lvOjViWk4Ԟ̳-XĄO ꔱV`}!} |ϗPa=v+b)OͥW%vn˂sٍ5 (g.`ߒUu>pOz`, 0 "u!5:pɟN݈#s֞h>ۀ &ڟ< ҠׅMq:;M {紣i׽J.z5^NGfFoVf %jD~O S?U[m/'nc!8X=!"EF3V~+(GH{,ĞD$ЦBOrldž&ơag=7}\* B(K2B ~MVMI9ʘ;\>or1wondb6I w`ivE ym!Őj}R$3[+r,>DvFmz`g!QQAE_8E˧-7& ^#JfzbH (7s|~TCpI \wm( bt\`:Կ17c1KH:"W  X,TJNȤ(&jQ Bſ1bPE_o !n4:ZF{DG'ȦQGHZxq[ZKq@A(Iu{9QuAPMdX/^h"8)n0hd{I45^V1dJԀF$y+DERJp 2vAr;2#LJC[ Ր#q4z^ WY` A=xPz#]I1By430K%5@GY*1|#Y,'$癯r %B`5/-Kp]3ezx[cцdܺ nW}>B? | ǖ:Zks`f' W2}ZFtF\N(#ð=,D=sn 8AV睽8ӂDbe*L a6"0?3 :WtSKaTuy!aE>,X_h*rJ.[ΰ,|{gلvX>y|Sו*c>*/kXܠlB9꓾%6Hx[}(ԻhwӀT ۚ3ڗYJG|G;4[na>} $@>GKBzwEŐ10ے(E2 CAT$+kqjaL-X^թ()O\"8Q^\w(҄vHNZiiYZ0 &rO+TɻY0DWJ__d}8B٧`jFi2 3 ַ'!;4yҐqg9RdYR\a_{]ՊK&BBd^ "&w,靺>TpR Ȣcbz'>ryyĥO[B2b[}R p# P`$@IVl\,Q|4YD+mֲ!\Ɂw$9N}Z)j&J9c$̓JZ(_^&-0m{Az&yY,{ӘH$mȢG pO3, ['GVN;T']6{۷uvYv<|EmZ.T1|Geܿc*ԔbLq g5q7 lq{ca¸]K[ Ӹ Jx5R @ҰJ Xn8<$ԏ+s6 3.ۂE9|m8uabO>5ggT`,%ysFҼ,U&ܒz=T8S\l {Qt,C [Fbr /2^F^aWpgVX3$@IXG'Z^L1p^+T*^yG͛ @XGdHCD}QAzZdVGp0GQQ cTyt2u˶:EN)fc/'S08-$%O(#F)8 &P/8S OK:o%9٦(P,;ڈne!"ZÃ47LM$7U' R8|SQS.7t16* dFW:͠2' /ᶄ!NB,spĤH}v-[i`b sVsuaߐ*F9P[wyTSuDeAc- y%%ay/ɷ5f=P= GէQb.!3"J.B<-IT5SiJo R`K*qs`%KRrnvWB-Ɂ'x xUJmF]?/"6}mR*gEHϠ5X a[ ~\E]14dk, dB=7E<Ѧn H]gh8!2~Vdnk|~8 QM& ӊp%`DyW<^}C?7k!RS樗|PR^gY1Fmn9mJ%X]Ta׸Eэ*gSvS7bDЙ:fsGX?ޑ1̝@.|?P`q?}tiڜi g`3WK zjBvr3dgUetx5asJ&嗵%IopE-oƇeR*ɪE8 2.3 w 7q4!1.,Ѹ禔p8&# ⧍OzgoA_vE$+l%Z8`=s ,֡%ZrgzOKQ?3 ->'@jSB]mk2R3@"b˩Sln E}78ŎC/CQC3*栵Ls.S77 G gV}M[z+ݴ1NAheX". ܎7Zz 5GeS6('4!!aV̢|,E t +.9dQ4Ƀ)&' gh?:4][h-HJr8 'fP%3`|Wzt*x G?f9k^f+(u)*!s \NurSeӍj{` yԹ KZLaRi3cE?eՀF{&6G<- %"GWN E`S^^eIW*a"c0n.wX`eL/Z# k.L¤_/ v؜iMzIWwyE ~;0d\':i^ (*A3DDsho\qԲ*͢RE|!)Y0EDoyG 0e'rr;?f;{ E-FlU7ϼwAQX -E"sC|ׯFP<$8Lg%T6X1eB'rBHM=w0Е;,t9:4,uJLИk|:+X( m, OZEQS>j* rPr. ^@'(}:7a?Zq\ܿst`ͱ R*H1xj.&i:TA5!>^FY`BeQd]´%'͙ q{uղ%ZAXlRiIn7|˚fH zˣPʀ\3Quk4QEús +*YW\h;gz gf;z %qPN{/XD<^%46إ YNںzFZG_B2ԋS1$b:g5э 9* 8 ࣟY#{ȍy0bun.E8dۢVJ_]TOIr6GME7<>zNP`M 2ThOz=,6UGw/ E3?%vff(+OFȮ,_-Lrh)F?L'Hi޷k̪c4{CGDk$rᤙ\}ҺĸH((V;C&;W%,i &ۨ썫Sٯr= Gw Mf+=8iukkAdA8lWG@dB.bPmO1nMG=~:&싃s,&haeµ>x7kx!SqVkdׄDW3k)z=$;:jc`1 hZV`%P ]ešX_1VdQ?WB3P9QxǏ %/^⹁:p,by"揺W"¾+Ĕ!yν4-s/PxXrI*4`Ӓ>}byc 8UpYˁ(\8X(ﶞtj@/]ZA(?Xs w6U@J}W" B%'("uG<\EGBO *ۉQb`;BှHtpn:KICzҥ!TtX(%۳9##AVj' SM w.3;v_L .[ꈷU{חrdjų?Tl^et/FUѥ3l"o}3iG߸ g7dG;>&VhJ/ d6Y#)yR.,yĜodvzGT6kGkdvЅ0a"@^-bO:Ȉ3n6L0q,FvQ@ԪmlqBJPn-Bcj'p} R 7Q!5L_!:nt[+͑"f.q*I/z$ ZٱKgǏ^% gk-GQ9Ėb 7{ 󬋘ϺnD'&T/M^h`ʅ]#k.&|_BM@n6n_kG7Ȳz]Y 1#V2K:?Qp8Iq!'jBO'1H[wIZ Jz/&QuHtn#baAqs1cۏ.KN۵["Yܐf+!|@~1D?8ycĥr1+8PW:ǁj4OM;<\lGM`q[G=ٌ=[D`tƦ-ŨZj?G:Wj4 a$#CLQh#ahq&D:Z F]-~YJ44ʼ擊^lЅlrqBH q"gWS`eqǾ-{MA^2pM 䂱;R6Ʒ9PeJTo&Kp8'r 3a L|34= 562VoGm¢sЂtD& -V@=ڻrP1;J8Nyوw_3VjlGܖFDVdzlz=Wm*2O} .`A&  {6MK/S- c$ gbJ EPVOPa_E,.& a9H=Qf9:W Ƙ(nطMV ahKZ l Z6)#| -xeP%QpZ!gA)W?=EA(dރ8pUfdҌَe[&%\n7GIKI3E~g$5UJ7*קP`H~v{G 2yq2u41F:A=N5:#ʐk| ?uFΒL{I)sy]JW.>'>Ag(b%Mp#j|M>qgSimc,(ʂ ~[:t5bHs\k ZO-^<TM%ECE̖ucrUz@` _u)r9TϮ3#3?v$ t#~ ^Cx;)H?i'3DS${Pt{6jpE m?)eRVCD1ܼZ0Ӄ`L$c1-sPdKWw9H ] δ6k0/N:A{p?Jc4sE}9#G:! vf)=$0BW +=wT@SƅY݌V{,s^12 _VMSۮND3+q\u]l# Gٳ鋯1 uLV(߽nKjŃEmw 2/Sugs|R9πAMJj2?6 vi ڠRnK )|G4͵ 36A Yz1z}T4D(]+<eX):e_:J`AA&l7d1aY&-6J2szK0cb &XR.+7i܍""]8G!.@H_v? &0xױP2)3Q:A] #},'IlXj|Һ-'5j]O4) :ue;ɞHIZ;YV&6bXxyV胳X:N'DS I+ɺEZ/A a8) 98l'Xp4"aa-L5n.clbT;| :؍6 _M,i 1'uY4 f7bu[8#mtZ>S}RTH$2IlO* _h|<2>i@}фI.cCb)"eTq.yduBMi Ȼ4h K~xOJ˽Dhw>l "^ogՋ[mN_0 …GZ(xX"%ݶlM#vA+x kǨ3\5ivd[{}?يHƺ4 c()8q]+*O^+`cWE h>GDګܳb筠$ؼx l")8>u!t0]SS#jjEI\ ؆l.Nl7!ti Abp{%}l_lkW&11V31-\wm4Ѯc˦:0ңpf4W|#vԃu/ 2HXDmTd-,2JE}s.+1oL"ux"Gp-y? nnA> TOCY9;39ɃǖYRGzPSH;j@ʂy3WYVD`h??V*GΫJs>$ }bMuxҪȜA/y\WcPI-+$(m CR_fjfb)iut9q#[xH0%Zny9a4Y06ӎUew,sy]by % S-. ,x/3 R窴Ld̃[  h .(wBEE>Lտ%qS]7era~"%^T iV*+,3JG,p~N_h#&_z%q9;nTGuArO6w*|G`b9\ iF-?v"˯O>)!>NwW Wn}+8/7* Mo<5icWx5lC)D l!@KxΨ @(lg㘍8&s@dpe9xH,7d bwke=J]2p}cK5? 4;*2r}/|@Tz;T8O-7XO]N#/> ZmGeTЅ 'aT:Bh v7{PƃBX!Jڻ֋F%ޗtd!x#o7Zn`mSS_Vov["״@U##c'~]ĴgEw`)Z'WgAb=әHP̩z"٬-5SқH*W[<`!9⤦룎'm)}/RAfoލjՀ49ԟql7s>9"<%ZM[{og:?!K}tLm /$jCH*ΏG}vIlPi%2iފҬtJAkc`Ś7Zj ͂wr&oxlO$ m۶iJ&_n_Kףci"Uj%|M|k?DVl/4`ƤI;kOSRM+Q=y`XfC?hWj)(trOUT-[*rPR!L/`-P.Yp *1bVo-^ g8nolzN-LL}ҭ+-5?G~K@*K$WH1yۖ!΍=p̀8dÃP 2ȖlP j fV3 b;.Aݷm]߀N 3:׍-%)vfGvL*NH"v~~)]{#XYz꺄!ROC+-uL ϱ4/+,\lOXKYKb8n qmb]sL(c |p5VXxqh)CHE9Ïͧ k|#`jrXO;2xKۊLEy @_'LV.VNq0; ;?QI t-w5LJRIKN=֛g[O-my0Q[RC]x hc E }PyGy#ُ=<(a[]-u3*B1|/mvq2k5Yl&!U~`ϛr>i{tgυP10a8BMi-Kġ |y|\+] G Npwr.I(K4%sIݤ/ԉ@$>mI5ˁ(3:}<#+B*TI(jfѫ-q틱'SkL%D ,pQTxT~'1p dņAc,j-оHxt䞚WVjF_zڨSvYuKI%J% R>WoKH%"vὢ7ƽ!u۷וcgsdY+>ϏȦijiL _F]58r2CWVjܖ[}+^[X`{̚gk0s(zKl?@SNlMKMA W_9r+Ҷ܏}k+g%enb쐋xa8@rW (ɚ Tk{!sEZoW롷u6!ީ2}4J+.eKx/FZ#WNJq~&"y{\4/ף_qءSTR@Ӧ NYҬɞ*\zBg-nKB@xɇSk!(,UP!==(2*_`G0bEbTT%d\= lԕa<9*C;lj ~0K/!ܬae^R{hݬ)߶ޅ Zm[IGݚS= LiX$,@1o:x.l]/Hz`ËeR P?Iv4~*JuRN9"5dđT՟M7%r ѶK,$GZaXo&J "~nw  eags6Ԅ n7C*[| ,bQp*ȱ/˙KtrnnjB* _=Zk߇apꤢ&px1W B.ath,]6,nF.q^H$!P k䱽NK,U>)BI~T"n){F<*bܜjslpω|_H8d.)v%E>}UݳC9 7}ߧ6ch{EYRa#]B0i) te^ vxOɫiwxmxT/{ 'z=big.Ek1J.%lq|'`1(h~=^Y)RPS9ӶIpLT&G4u DRPf 7^rWKRh^];n_|j׭+*>AX4HJ}}B5Mo#&z7jk;بF&\jݯG,ks~B$->?(`-uTY;0|rp2xŢu1ը:ަq%Tua^ޥ'Yzr%"Dgʪ:e đ2Lk "K怆abO%ފFG Z ﯣRn40>|42wA1 "xoS&kҥ>0$!gm4Hf;Ξ]/t8tGpJWȦp' Q#>єfY>Ѵuzw|khϴ 3'CG0Xɛ y:;XLJ;8X%$@:Qf 4ZI'{'էB#4w[H6c=ݙ]|Պ-4Í&׌o!ȟk-o ³6 'τqlwZ|8x%ˍCE%bPjʤTpq)k mj7a W/roE R ob8U+pLwV̼dyt?1{Ai4?Hdp<31C8E"+&qLDlDME!$"yv|8b"p+K3~y:VDBjDx^:׶Fk +1#߆fHNg(53 45HO?=û bFr.MMH4CN%w%_\ĖC0dv Sw\ y6P1{ŷk+ X >.~Ģ uf)5E0 ~cB A}  jKY+ \DxTtE(艫ŀ!/  Zї2jsǒP_[3gfQVE@!lC1:0*HL@H{JSc[9liO{0Y& r@m?i#758ehny*n Ã\8]lqR3o= y,q*(`j\hꚽP 4vp@=#>ߡnSF(!3jS_:=2[dvPҫe 1&leI)h Qd2|mKf8Z9BX- Ύ%p[=bo=! q(Eh=;Y]-h2q5HHef盿UW>Q*lRf4ˣp1 ߠ(fEҦb$9^ Ǒ𚖪|ЦBdI,gagu Ƣ]^UgUv^BTeQp3znh>QZrę)Z>X[l ?~pvmwJ |cTMV@p8Ѯ%c[&8pi;*,sL{]9_WUQ=ֽU{y3a"~Oҗf[pS^6v⑦j|Nl'wVNN`рsJʹ:Sq:Ad_)_\ wD;:kSс *)M´} x\G0d 6ȓWWVQR #5[Vy fMJ bHz`ֆ`~MwJڑ8:?M<șDCC%Űh!i-.սmv9OcɄX#`wp%|\qTb|r)&Q>?(ƳtnZR9~ߌxNkXl9=n*+$f^]&Hn*4jl׫E&W/D`8~"MY8/:%˲7@pA/`ef>ZQ>膀扏z4βHsz?ʄOS\rhVp!h`Xl TO99_2GJpV)mihCY|zeDY~$¹v-%"$͓.3ޞOD:'ݖP]%IK`q-\}?°yqΟ]">Yp)M}'eaEq%}EK &O"+]Y LRA'4gGR-_S.=.kkb]alFƶ?ny[2ڴ#t Ii>x9RR6Yo#m aQ_K֣]3u3/Q NFe( s 26B7xW;O{2$e"X0 rTغUH !ZƘT!Ւem>Fȍ*NCqxX`Ĝ?y'3Qj'hBaK7 CDYE+>Ko|+ ԣTp` ץ~4M4JB# ,g* K4 u:;QP" NAɯ$L?ޱˆj:%ߩߙm䴒۟^r->z6}r ncخ`p#nm;?Smwf~P۠e Yv#Q 'P ڀUx]odrƋcSK@~N^<:/Ҹj16 8W8]:Y~X\)6 $W~Rsqn)M']#BPe!\CW/,nRdzvIBMw0(zƱ^MhWd/kXԓhDu BBIUϴ_ Lѫv%O\ 3xM|Yы~ = V'䶈_Q{bl#;$^v4ƵQ5Zx>N}M ^vs]IFȊ6-Lb9o2; 0(ٕK-g&)!0jFL߰|Ǎ]+U PyW;vnR?T=?+zt\ 3)Œ~ߨHPܾ!CA&z31y||VR> m8JDh9E oRD, IWO$I)*MO+؈leJ(lTPF E&Y ԫ%̓vEj[i_('g`!%ڜD W68qMnH*{{w V֝`JXܯ=Qv6CnChH}Ѿ{sqCh">e~9ֵڪE9 tEkvPe}Lw8̕^(d |zYSi%d<+Uu Y4d5K5T>C$+:|Xg9\9Nh,8݊,6{r`0! i@n#Ps~L SvX"wۊjGvT[V3$O]W]$Mu=A - ;kG[t z҃S0/WnrO: 5j+ͱ3y!;殕N@/IK"ՀDMprVG{ h8vCݱL{D}- ΢-g'*Ԕ8/]u<'׃]g@P;]:OU:oXwyK[뾢KVDl]g!xZ;F* Sk=D,MaA/fkCţn*[HIC0h%x`D#J4)ؼk3s+.N hy:4jCd&QrN%j{݌SOMX/Mf=/[ҾIWhfȉpvlm^x['<,Js"[nnhE҃L ,8v;d?<U>+;Wy)> $,-_TVrXE5}E-&ޞ38W`Ȟ~KLOpk̅3dDH`Z %xz/ʓۜ%_fN{!%̙ q?sQ3&~~WMU:@M`d`6a!b}q|LSB>k4X9=_Hx6,TLSiMʱ( Y ݉]{XkTiKesz,H"N@U S\nΉV wP9Qzx*4lO.5ھ&Aoc%oGK[ *&7G^em*~$W{*ݮ[D,~Lp7:.F'$^ N)цQB4H*qELŤrWi9v4US+jէƹzc?&~6ɜ!Vq}z-o8LJ?#쇿GpҦ;Rx* l{uTFKd>/[(u-d|-݋sj?Daą+pX栮e[ss>x( K~2,\Sѥz 98;86g3/~|ݟ+H+n;Eh2qP ,^LdoKGjHa8P`EG\xU$.QU7eM| $|r[3>F-M+u'bF^6pz։zs*et*:C4BYSx PEA>,/ZSQ KY.f6I hX$`M!U z5Ud>(- N7hC)6I `%W]GJc!. D6zGzˬA)RBdUb S#=H/'ɝe? XgrK`ttJojEO;rY=,[_#`\/ip&9Bׯo4F\Kie26=4%3^{YLxJjZxx(Ls\vRwL6Kx'ggd*}=D΄LŔQI8Վ)T,"LQ>>lȆDEK@}؂ h8hX ZˆOO+Hq 5#m,6CYx 2Xf{@E.7e5v`+?Ri/5rA[0瓾 G[iOkmuv}_5FtQ֨<Ϻ,!GeIˇ*F?퀕X$d1; Q5VQ{_ I{ /,Blq@Gb!-O|=7{[~dN+#+_oWqid|:X8Fqe2'τ2C9gӶ2;J_x.\d.弁ԋgK:6P; DliZW,B]W_tkmvF|LE. .-3m)12 wd6B@iogE=Y1ݺ4z~=Hsh={`Y73-7:CViƍ!`~L7Za8xNabiE]%$֋"(qXw\9g&MkL鋄Z)?b?bz{YMTRCnXq=P+ŧUo,wT)up5vnx!kyA:l./sgI5Σ P圫W'-4oZFXVOU2yyDcFuas>td݇^:Tj|;~s}*".37T2h<F#ajjqi*j&rLG1*W7p`" U@jw6 l'Oko`WX/2Qii ؛{Ã&p?( ~$bRKTrSewf(OX7L˜">eoy6 aЖKEL F8\W\l{ 棥ѮC}%s9".Ec3L0`3xL|EDlB{wGsT H 0#Xz&o2ۼ$7צw/t!zPd[b*:HZ!&ָ|BO; Ag1:YG!|J6W9txse@ {'2dbΓeAsq=$nPi/l֫nH 1G>`Gάf1r" %稘c*e=oqa:y*ʡCB;ZrN qTUG`!b/9I9Ԁ$zءTu)e7#Wu>k)KыR5 3c8my)z~e)ŎEשŃS)<_R£uO{!@u>b>8Bonz5/`gx..Koel16?މ1 Η];,~ .N *J:z 3g0'V:`õa|\ ( Ȕed/;fg7([v#zV=*3Qv(욣&c>jՄ1/Vdbzd܀NE*hsr&-W3{hap8QLAr/‚7HV{yX0Dbw61whDSڗYS# uF&M-n5Ө8I>Z?HAtx|m>= |UO>^}ae(|j5R5`2JKؠw_bsQlق\@Eԏd;PzU}K]=D<޺z(E <7BٙB@& tO[ix6uk߇Jg3z|S6ntI,>7`tm[&V70.fC?8It!9 䂢DKOhH"o(|=᫝9iJdo3gE9]ƟE4$lE~li叨VC ޓJ%N`>ޏNqHmܙ?B;|ϒͤ w*12Tf LyO L+N˭ÚLBӦU27lMQRlĶܯ}m.&lvЌ)RʗeMSGksؒ0㞛+'Ad[FHDUd[iXgoSm#I'2+Ђfpu3AS;2a;iB> OҗTX_4Z'_AK&|p]M0̒o,O!B"(?CY ~#ʂ7JLnP!)җD8`9n>Z]|z@fP3ayCv)/FGCRwб _}\幷q[;'*wu, =ƿ6@z#wt5Q8"Qjo(R/&ހ~2s! JZA/6JM@96I  ц>tNR (e#MA֘x@`]a*;,%Qܛr^!\UZ+`Vqǃ&9̈2_o4$U kR(Ic] fH~ejiBY{fКDgʘ@zr+mg#:` k<|AlG9'(-1OEߩT2ӭ7] T8!"++g;co#5c>ǑGߥ킸ʇrf‡ˍ]KԾ"zjeP*ڭxŰ6^X##(f TО).\[w'~&'[4MO\\#ۜ1&L`A02/)?>>%VP.BcnzM t zs{{v׶xvgS V 5]Ջ4&-o"f}Za/\ Ƕ^5ZAغcw9^f2;O ^{Xc[XNS6`%$?wFA]>^%5-ܜو1S_P!e soWXlQaɠN%#-fCf;E>yVe"8WI?rRĩR7:j¿>n#"V+Pn|?:pC4'h`7m=-AuF᫏'̝n9J›vvˎ) 8c,܍T.?S*;IآzчP5br T ?AvhqKИ_R[oa~Y0l\ҝS췈S0~͐*69SJ#<  S%tKTYcaRJ1;lE/a>%Ť+ND*tIHμ댐hNcV. (~ iG=IBt,N27M?f@f vM+ֈcIn(pj{PYܹغffO,]G ,SFS\FTK63еwtj TȺB ʳ7}x6Y ᖵ7B/cμ$`9ױ.I_@c_,'h v# I}K9kD[B\onD-i'v)쎩9`:vXlBF*wnOm gC0f }S.zB'!/>y;j+zϣqivN4"QF.eo8 Gd7H&vc ΍=Ts܋\Ce%0mw5|L-ZJ\|'cԼALV»jCΆscbѴ> & /S /is|~s[kyqqYUG B:tq\*r/_j /օww,˞PP㦑֦Ps :g\j~>iK ԖÊCv56ߝ xq5-0Գ[S"#`K$t^?nx8 W?dHǏ2eWJO8/}vR'p3tgK.m Tz{"}6}ȞFGMxbdN-rkkgcYŀ*n ~3 -OĖɊhmlGx}7Dmk1ǐuY~G*ȕ?7>GgeXEt4==MrhyFL!ǁy=^}]Y#աl WPF|Kzc}߾(5bHk e.) 4ِYz-C:X{ǝpRېqh:H$S*1J0 5Ce޹ʨ^[wƐD[ >r%0J .;jϊˋRłnFoZjdl4N+ai$ʒ X'N/?5Aֽ2 'h*:H hbX) :[3~tgsaC1h;q9v1zqrJ, ߙt}PP5Y[g\oOE 5Ǿ\q /IR`'p&~vp*d* _tѦ-HsF=J4܏h5Aj=?Or&7~`,Q ,h:eH&%l}f{qwԪ~3vmQ4Ο FE~,y@e6f@w䎠vv;cT eę+@,+}KΫer7bo)d`bL(ex&ުpi+LOE&ph޵P&ŌFHA<7Q4NSSkNv b3f'R+ K1zÍrEvk{ <7sOcH[⿔Ov"9ƞ7[2 v{ރiS'i8 dO$}=H ܩ(OTKt[-Ɗclf?$>q[g- (\+߈Z!eH2@ъ%<^pa(Yԭgm+1ё )|: ׭|Mv#:OW#*h[!`xoz荊л^Q^}A ϙxfnI~eAKޘJU-'>?}<<} +yC=7H<+X)hfA c$ ~] 66١ CE R`,s^98]n =_%(;4Fm7jb0؟,\eF$8|ST !?o0)&1uo2VT6+4Fe`c$!dj8 F]s}q!|Yѿ(^pM W2:9Њ5Q3TN m9 yjo:[[EBSZƒAƳ6`'xWn1_ԝ6y^B`:I5 ;PW^ Zc#S )9I`1Eoujvע7h}0,V b0[Wsɍ K @JQ0?̇&e7^:W)mԁ.L̒d3<$n0^Ep|]Hocxjh&^0s,2lXAƎg [~Cam2ޗlL֋c1ӀG\gxP Ieʦ6&% <<^ j\R}!ş^[2/j,0)S2FA |BE1Y4Ξn9\XIYAxɍ=FneֳeEtZ[k@EWW|zDIJI>fnsZ/!6MI/TD0J Ki|/F8|я"7~|dtH5(+Gphސ|FjpPah Xy(8r R':syI &y}r߸fkDN_1,`\ˠcvbE'2d2ei( *B~1`bP$:5KW赦u!"aDUkBeujNmol> /Cvl/yrΩOŵ" =+c,#i8}nP@~-o{XhkqU`^NSAH5w* Ky&(^>}dۑ=rN$a%QGjS2T̍ivY:4,=@7M+ X~e'Z%6bZ/$)$*]cԐEsSDŽ{Cؒuunu* VXMSU3D_93 ;]bat8)unm7O.kV@¨nOB-7U6;Cç-@~З{gaTBu}rnj''..'?}>q29d"MgExʸT*2.!?*b0Cc8k\ }D0|ȈfY\S\~ƚtґIk m? ,Ft@<;\WY wЉf`kjn` 6V~ykn6Π)K<*hpRq3Y"g)@gɰYP&7v*'m!e*AaKU+ @k-J3ǡ `KC95Rh<÷?B8hA⇑)BBnMwt >+r2WߛGp"V8"ͥ }ƼӉؘ P~~rudDۺfuO!B8Tbj˥rwEk[g@UGi*+mLׂp CyX:1Jsa+eo7Ou7r(e0I*ELKnPÏXILۆ )7A˵CWfpmuIz_/at8_AGU)ѯ_al__(B|°m_щz{٨]taC=;EMr1 ^ \ȪA^Je+b$q9 .nq .N$'nP3ds?MaUvލD T#5Ⱙxػjɠ?dbx 4 (d@@pҺ}O|o:WFɋUu7PV]/N$ʖF}f;d/Ḥ9m;% ^r{n;&$xfcDbh<[4UYX(.X'Ձ8-2}% EQD&V8$a=52ߧǡ<@4A;[b%I'a sÖ,%H6ov™ kwDaiȗ#FA%vh.!i' x$: .w|OcS~$!-OildSQ`xIQXm?ĪWs!v?d/Jܑڊ ~njәaw T'JN7wۘ8_'+Xu?CF?߰#{z{ вXjPSV}pʨOJTꕝZvԋs&Ο+NBsA+&COՙy|#loϳ(z~4:E*@ѡt:D?޷Ng!͕W5ex.wD*XȊUsL] f2'a$h8( r[эcD}jKwb`6x&vY5NOyKZ@Ɲ +Iyn'w @.1So@FFO+\PL߀S곥3յ~,=\*l|(*HhprCx.coV!>}9|)b_ƹR '|S^EOp,Sez$C BAia{w̠8lDEDziӪ0xI1S4W/Sߥ;`JWl_<;Y+ }1JJ&W?1EK;GWfW7Fjs3R/xC+f3bl1:'P[0JY;D@]m[0A|NV0$ gHsȕk90Exsudj Kw:<&P|n΁a]  eU@CE#ie3k>ۦνXR~ 4 nĞI RW}=juا3܂A~f,l$'ҢvLfW͉gT&Nmʺjj07Xw@]Tӝ焟Ob%֕14c3|V3}l\cߕe_B́9۪(p=$O 9֭]D`rRbPueP|j I:*Hsa-kud^)ߖMNȊ-a6{. th蹆j#wǩ>& UL W3;("l@5íp݌k8:u Bt%KHwl_%y玼NgK2ʘHߎ8A?rB؉ xW >S}ʇwqA6*)v2o13y&?^1S~uxZuA& \5N;R"eֽ=tpW-#F% JMBM?+wG~gt2Oإm.?)k+a_j_Wq_sgLy~- xr u JTT;TS1p<5GKGa/ peyIa8h9]}8PL.WL#CAq44-I]<v#(ɐo)'̄ /wl5ݭMn;:hlc,Ĉsm_σc]1!eMG7LNZTܤt _:Ygb +5L<rc_Yw.mSnP҆ʹy@\WkA囑-__Dm!j5L*pB7 *uq;[FMR1P,%: eLINŜܟ}uB[J335pMtŔWZv2%L?iPv>φ¸9hjՇ@W 3k/VLi|su: {* DwrPwgY)`_)8CQ٘SQAmd ]( ֯co| ?;ǶR B_DMeZ Ub1FVOSʥiKB 7InWQ7 {,  lB@&;%z7ه.ɋO[wtʉMA|Emj?Lv-$܍fzɚ C>FXq*ONIĥ!=6ŸA?4gfF(Aϸ|&Fr ?1jk ZgN (pϨ60|d9j)I Cq(ܱreE|[6;MqaoRه`RiYw[\0]mIW~Ҙ{r_T8n^pjjU]]Mv=knrˊB ƴWɎ̹mCdQ V|?W+ArnDo;i۷'ڷʦVem&a37dX)m{EAuxS^ ؠ?BǏ;Bmvz:WK`|"=W7lې~t;)H3fTFCľ)#1yU]ed1Y#j)iDl{>JO4xK)0x. @:\ O#xOXScTy3mJW{ս nRQ})VSICvS9*"{bKa 0bMDD pXBjMCS'?.: ~fq\yCMh"9`R'ɉb![iQN4W-\dEeH-3jhԼ >S|믿+kť@qTԴD#oׁJX]=I F$wlp,baWyhC^g3A׿)~/I-<HkhDVuy9psI3ã*pNQEtEXw&ll$hT%l _n)B ;/;Ige)Y_7h׉}R{b44$qC UKrr6"F/uztcɈjEAw'~\Øn2zrw*G̋Wlrm^)! .AԚ ɲbT2algHZDMw98ܺkET37g`XXH<\2y DZ0/D-4 v}:iHls/<_"m~nN^5Jm6 <;NZ1H/j/,R3+Dᨫ0‹ (a̮[gcc40 \í~Uڣ~RB78GY76I LgQyD̕.=,LaAfuLg!xxBʇ(0-;1b"ug!r}_B<E*4tEq @Sx6jaK>$r`vX[oIg+ ,LBj2D#Bݺr 9NF-4Ϯq8<>c5 B؞iN yF P].-BʾϨ\mL|.kүC~&Euj>ʱɋ\ "m,H_">]Hxs]7/@)`=6.-K NwGSE,|Y@Q|I~˟y'•~sz,[-%YneԞן{6'S-us@OXqtez 4LƮ݈,sD`䌦Cc6oB10Ce.^/)"@fVj>WB Z Z!63kML6ƽ7~É%ʮ~uC (+Hj IeYCGT_J2X+}I-c͝~.2[\aKw7=zI62Fg> sAfySvv߂g|k;#شɀEP;|;rQ:Qӌ΋ŭN*ūpL8m]y{R~cD4yA˥p,R$v9 PcNݻ9 2z E0[@[d9\zZmcNJ~_6BT=ut=M [ŠЭ?hmd:ViëEo ( B iL@y\d~2 GP#=bSk3Nv1PDHEw bW̌o C$0&8 #Zx5+>[6s%~CDE)DwAqc[F Gl{o'F.ⵘɶ'5Y]G)}>뤗I>3Rd{뜭UVQЗL yOhTIܵ{-c ЌCSU.`$ 큀1'ڥjS*fm3hOmqUe>ZN>o&SGpRcV79 %on_ uGR! ^$$i`ևVKFsExzOU/`02BK9*\܄G3?SƔbizbмjʖC-"%;7V%xD&}$h&w(QKspZwk7j<'x~/!O`ׁ G?D tžL`, 8' C-Fp CCy蔚 ?Π <o|GvL%/ŕNᚓMncbbL.xFi7z;^VZ#8!|1ˑP"M~ fB7Yc=~t4gs dӨ$ӌaVj)^5iZ`=!A%MӢ:'%͊fbf/ 5ud_S)q,cI=,c%P-, ^.щՄ)8R7~omlF~Trpf^4|%EqG*,oXYEw}@{fGW`j}G1^#t'lF,dj-)HjlZ ZX@ԙ>t?˪opD~Y, xIZ]V1,c >H3e*شn"WV@2fco23C훭ِ4,׼O@'H%,ՁtV>Mѱ.y<ޙINOԗ_bABIBֆvJܠۯ[6_ +?ݜ*sBb׿;=}Hye$C2uU"Y_}5UJdMc28S}qJ=O(#*n]؉4A 6=KBUpU?-#y{aUG(I!+ C +cI/8UzZ=>pjf'/6VypwWǯ 1 B@5N@m]w 1:* M92W-bG6bѶr~d6D7ۏ_)K4:DHj=Zd)γPaCn.AB}6ܡ?Ct7^o `d5M6SC.pѾېX=n ?y,7Ty_l7y҇~l(Xdx*,T# 'P+فïJ4x,~gx}(Tc\jeĝ'vwGV3Nl`tw cdY@QC_kX|~G5gqhgȣEO.%DfうK?HrNzQˆQԚ.]\ bf̾)Dc M$_?(.Vj&P|M-bɷ?4&ni)~ދdgês2@b/Tb"~n{'xf?$N.0OGW@r]]lb7&d]7Eȏ76#bHh(>^ $:++:{%-F9۪ɍZJ89!MZkõ2Mp&,٩(ٙB2l'^$*2 a8c)vikgLwrcB@zӝ>y$j4 &r DDH.{UۯM/T ֯i?tHs(^E4e >U+af&:w*aSȻ䔺 ^؞>jcf9NX t)H$ 6R3j}dɥWc{nM6S3$j+WSUdMG8u M' %fm±} +E&tNe;bGv*}` Z}b&~4 i6@ia.#l|SY5@1쟬LflBG&Z>̑Xne!"q<{GeAy^n%yޏfU@22ޢ~P XrPg^n+ZiZ@A oPl9>LdUeՎmԥ˻C(DHKIYns*:r\2^ jI=dʩm{N%74U=rށ4Sѱlˌ/9a1mа=SbѕVaT?2?ZI@u'lSZ q-# ˾9E_ݼOu6ʍ x. }?> F_Ry@0lBKf])ۅ؇ךeڇ 1Cg6YULěJ=%TCрH qXvͺ/b1fhLa^?[,Ꞿ$ꊷ D?aIˋrp¡%5z]VAxa]4H|A] T/vyml hZj"r'Ny> s22m3/C6s LYBGp\c%/Iی1Sp&Źsق{jVlcFABOia#BF| Q݊H3j-$v_"l{W vC޻|GԱ'm)aɰJ@7[{A3wyf͍ᷩƘb':tG CG EUڎRfΕz2 M2݀4fC^yK ^/޻Z.0Og`.4Uc:|wE$هlס VcM'q~ F9}lܟAg|kN̕b1K!#0l*dyG{xw7Jugv\2j.R\ڝ8e)L#?o ٥&Psj˟*YgY8CWi, i2$]a`c&N|D<N-ټ._GsGF9~6(a~|+,d*J8AUc%d(K/{a] .0ha^ <6?47'S{;AXʘ;Pfo)X 3*]&a+sq- #E'ON/N_xف( Ln]PJ amccsRG$c 擐޷nqA2W{S'k-@#/oB>a+t7Er ^#p1TD~*ĎU\,@A{ӗ~ aPuQ5vt92`r[mgן2{Vtyyꄍp#Ud\%{kWp6+7!5|epl\6 h]-N#t"=V4BUFy $C/B #y@T̄L ~frI"M@8o B.GoGjk\ѪLoL<dQtd]]tor cbRMwn o2fyN$@v`lDѐ6hBNj%2c񯂫VPEfo( >٤}XBe4dx16AYqDm O{ $ "s0Ж6`;Rzp٨N{Ih?b=jm0g *'ģ Dc@ԧ"i殣m@-qZ;KqGW"Z"' Α~4j*1?5r k0; ?&i#|AU}=+NG-"|ٵeffx'XuWt\˟AKcIwdߚ6x O9ʅe#x39=UHN5-%l+ ݶY_P M[ƇC[7'׹)N<`vt`5zL(xwS/ xfq!JoEV~sLvJװ0e8\,MXWK?#o1 Iֻ2(pcލa[Oh0ecpxz cG&뺸 ! A̛kP8ދ#JbR*Ɖ:D@אX&XuP0bQҽL1hCS#]Ꚕƫ/Um|XS.~1z3zZj #sgq:ng*$p|TB At)Uja-2jn@b{bōh9Z*?v|ZrJF[a{ܚ8+§LHO,p% U* 1أ˕[(trZϮx,jCSRD+4Szנ#bGdeᘿoܯ9QQԂk/ X>qp^*grDYAˇELkU߆km-es5ǘ+lbb]__eĈ،pwdW#O٧Ai}9YGr}ZWLOp@tY7Ȁ q\>1Cu2maM&> ɭE*Zyih1wD1*fYr쨦O|ɽ),F*a(Tʓ>]TBx1~6-jtRv"TMs p򞜞uYo#Ftћ[:oߐEfƯ5%ø,=ks HC5KNƧYKV$ЀbE`pXS|YىڏXE^xA2^$6 $V?7݁oP)jq9呗e!lB51pXk ԯL5crOqF%Ėj~z!jvطQxFLGl8d3o*i[P wNS[y;o#on-("R,Xql^97bȦWKț!Ҝ|UQ tbouzuJC.N]^t R>JVjm̠V9Rvi2{6Os#!u܈ m7s uf coq6oL-B5j (0%g2d*!0dzK60sڋ^]*hrf^H[wr˦K2r.AOD h؏ ++NbRng/I!Z WQp>nEgE)()bsXSAsVrz{2ޭ}0{"hY1 (aSR(CEYMr1Cנ.5_-KDk2N}m >.*蓜jysKWC4|4tR'6"$ eNj>3Y|Ҧ乓ǐN*ި-k`̈́`cnSKL _ؿln{5*tv<K|D斉M=Mw{a JbCn_)/?!A`fOOݡ @" +S^BmE:YJSzi"e9ȋ|VRʍCɾu1^'=}6֮@q*3 $y2mNcN"ɱ"} 1Ք? sX~#3VmI:3P 3` l,v cdB0t45T USU:2< &߉(CJ̳nm%4t}l#ן;ʼ.-T&DEjvDӋd3`گakQP#?tjE5̾۱*Jܠ-,*ivEOt'gGC{#jZC|굄6-+f={-,PP&$4|OrtuF|5(/`C^V-sN3s+fTP2MG|jBd}jwۆG|pFVE^> #y@Z~^ D.5, =ܺY6Sdʲs*ZG8-!HbL{6|n`uG/ds-AtKE=aF?UwP>)*P "5dRQTiܒے,odhk7[X)[S@7[sW*Rr NPl |@]z2 sGDչC.辻PDu9TWOxN6i2*Ka%ZvVcAVbqUJd>c6~&@(XhP8K}H<+ V|2{v&v{D"hNkA`* ,lՇ i؂[] ۻrH;^ozuˊU$`ڞ8zI#>=U%^j\c5")\*Ҧm ;wTHjxlJGMBCDև%%-]o>QMȜKGe0MeW9ɪ>Ud+ L1BVr\-Eގ('uHHKUN g,Lr|w-J-ؤPD9ZSH;O~ 2npjƈ: >"oF߻=;(o֦}1ɳ?"!!C ӣ:Lh)>37Erm=HyՑ 5_Wk`]g ᐅWuCIQܔoŨ @j=KUoMp;ϧe8PlSS0#((}_Xj)Gvw%[6v4| XXITs'f8 7 Qhv4< OĊF-6c#c3E\igrk>alQO㨾SLd@i?F-HsC!PʖjLJ}3Ÿ*T }_81A?AN5E>"?~r53O(IzΡ=Ʊ"Gsژ^mv! uEtm-*HB(Vt.V/w1=$D6]` Atcל[M$'n@-b[&Q6@=F2RVWhb8D iB.QG?(.CZ1 U˒Oeҋ;sVE~Oذ6+AҪMwW價ЎH4tJ%ZB^h_>SVQQo2TrXzZSԠ 2R`HJT2ՊF(ܼȄGw湽m[;E_7/E iTaZf>}tEV c[l {~E>P:&ka]Jz魔ȓHU +ja$>?slH2`nn;%6#1^ׇmw%0 3J`Shr%jSK[*sQ!=Kd]kg؆]unvOR' /Crm$G*M`>W~yQtQڌp=N" 25 &崴t&vᤤ߉r~+ԡ3x"Wh?AH-rFV>3[L?LE:ru= YD }WZ3a-,ۺ+u5I[Gr zp,ݖJo?t['h`'(X7ʲD:4VVng"S~@wn|Gqy:+Zvvl'#QELM|( ^g(&3>w'uu7Dbzv FGG0֡> 4O,Hv$S^$j*;YK!RDКÈrs!Ӛsĩu6Tm7bFqz._Ѻм c._1>N d_Õ\ۿP= wl/S6Tg$/,n*I4o]" b̦s:+T0Ra6eRƩRcJsLRO0BA{2, b3 $>5|HzT/Lgz]z}w| +.=$pS !R=N,uT~ķC(yBq'[Uku߄p-N&[cVh;Fwm[YU'ptXK%7đfƌ(FP||J bš8bz)VUBZPWv=~*Zݧ ;xŊ7\(Ty& as+6[A8!l.q.Z'gUw~%S'$ܘNRY,z^{~͹:j=x''a;r-[]QLXe_h*'*bEZgҼ@,(a Wf3Y"Omb7G *I%(š:[" AH!i rȟ:N G<諧`mĺkUh'㎈V r| v|ߧ֥- ^XorY+'/1O /$A8=Lbd?\WKos wpi2"YqƗn o]Hñ*::S":ҧf*4s^PT@\RQRdG Aa:8tgS1.X;QtVOhT0|L/+47'j޿Ґ*ņq@mgD oq_Uſ]v:)R鶯Wc4̝gx}:73VYcӸX{Naqr߀[^-Oz! ɥb`*PotE_KUkwӭ⦑E da6 O`zD<+!ʁܒx>oi4 6/Mv8_N"#z9>׌ߞS S@g|f"!BdWL {dCbU E(,5d ܭ}#IC{N7G W~^e蟺M}^zJ$kOlS$Z)W T=JkS$UlJQxǟysmogڥNWtTs^}M#DM3sKgX= 8xQSU&Uhkڔ"zXR^Y6䰄9AF]~F$K;+0OK]N[EDaa%^K5dHpʴVlтFGD"p䤻ZK戅`}}A_ vk Y1g*SoGKiQonޞ}HegΝ۽` /MRdfalh'<;lCeի{޲R`7GJiޥ,b8|ʌb8I2 F07eMS:&[2G^ _'-YQ\aӧ "VǼʑX}IهaΖy˜ә]i܅}4`0$E3pڃ jisJW9dn!LLQ̽ysFS7?qa$s-2, oѳӪŒm  `.:JnIDIStsosn> 2)DfsqЭؐͅNA(zB|c7 DtI+0=Eeu_0ͿIm\E3(=] H#vLL;HZU @g{VaW)o9GK##-\kRWZGiS[Z&GJ"'(wbiKwJm>gT-/є4VKF:eFۀ}`Sm6t[*pEG VϏ%qKŃ(vy>Ri~l=T{w)ŗ]XJiin7!?ɔk.ygQ2\ ~u*T=DuU |\x1/'6yvf{w# yTlKdq.zcp=jWUjɤ Z:n\.(EmhqYcYڦv?2f0O,!x@0TY˲]]*-IRO"a?.&dIf %_@[ti G,97A1іnKl5=u@b[d3twi~W ݧTm#1/g}1i+Rs U& jݽ m|}q)06Y ?=mSe!*i@3kZ|D~&QRkq#0fsPvנ#xaε/L `FU[go' "v++)r- t]E\`9%,Xce5'GJ&b`:W2o\^4t1_i>OY' (1rE3Uz+8H656#C=} 7O˖=JC'snN+U_a4i ]C+%Ү-]V̡rH --ltc T5""Sɲi~g{#ƺJ\YV-LJLQHG J@]@T7=$X sp9bgXl+npS.Eՙ-QKBZj+j42/~S XY"J-v-o:&I(f+;F@S*3 '_2M46EL ) +K+&sڇ iC(R39C6Mkzܪ=SDf5Oq#I1,^ZS [mt|J qQ봯j^5^.)ւd22%xH3mI*H wY̼ؽ6rqޙ/ܭmhBal#M&I5c!vMȖe6h*&:-vc ̃@;2gfaM~NN忽yjjYȗOЮ} q6@r" 8]qVN>K'5=ZVaUhι8J|ӂAH*#<9B*AJq4LK\Mrc&4+em&G?ARSD9qozoBea|.)lb a^܇Lb.hlRJĵGB5{S3*?r6S7 eٽ}j] R|vWiC[G2G85#Jo_u*}߻f\ z#~$ BM/*,;\HdRvosf3:fs0. @҂v-Uz4`СDvN qA*;)|ʇ#/j}?^yC5Y$ś9u WU5]׏ UpdH̠@)}kʱu]a, JFҗcM雚ƱX )C4~&n0'*kk;w eO) l#ђip1.icUCE & 9p(\7nx;̕4,Ton[6k/G sZ1/wz4n*H"Dˑ䵁":fym U{\"hee,]MvŠbg`u7x ,}oӵLiČ\]VAΒ|Ͳͻ!RQBG&Kqۚ #D[4Fǚڦ 3Цde#Wd$8Y _y_ZfD>}j"8m`zUn =(צ'Q,b=/̬OEB 5x\XlP?dQ^O@$G ~À8$: 1%BH;$ja@W3>U}zvL>H|A`]a%{v9K#&xc}zM-Wxu#'z#꣒f1%0X-F>!JW.2Y˴r29P5MX4zHX\oU~ @8nl׺s,c5y9Ϥ(Bz/_2O@3hБv3&Q+87&j6O$£6єdWcbVIULbjƸa.8tfZ} cn&\^'wy .`)U_܄'Ft+v.Jдp GdFS~WRcL}AeB%ud fΠ f;<EdϊAZ=],JhaX}E,$I[=hQtz,VIa^;* "3MBM3-WU6>,}QhaTi3J#Uһ1Û#w ܗ!qLik)Aښ ьw\F 4.j/nY_ *fo|I0?ixydZ^9OPJu_yJ]ͻ^U_lIk(@oʹbimpΈeXC;‡!ߍd$  ĕDgs_OwA_ru;\aL8)12\-+Rp,3'/^ѼRht_-qa[niUmJtޞ-vT J'$v}tkfe-*(SB1:%NkȑqGl$ܜ2x}r+=V0db 8^a桶_91A #Q qBI DBߋNj G2 "Y[3jXZ2ASH06eh;o(e/{Aޔ\ c<T(G+w0(b\i8yӎ:y77閞Bs&juYM8mu Akjn[ّX@۝endgs1]vQbѮitm?Fe^вr~8} Tv`Bc\u'wˊw@<,L*(N:ts2x+sN{.{#~ƎtP&FAޘC^^~CƷ,dT_n +=>LLtZCd+8ǫ:reɵ5)TI$İ<+n`,F,z5cn*=6nOmeƐB|1ΰEu)C,&TT$J\ArD".͠UchLP:]dp^ʺLCfx$b%*Acl>i?EYMPMj2w#84P׷|BVkEslS( %C rQ_]uF/p9hMq8~փgxKK$%wS&4yndTEKu!$eTU'@"_%eKGc9?`c">hw$*Vb9,DqÆB9<.`RiIrgԔ??Z2xQS8 0\,56|ד!خx1g!__!ga"3+blȔ^AuRa2HF:q/zM i.V49~#`9 ~>N 4pgib?e[_rv@Yj7*uiU$7~åIu%\6'GD#&v) ׇ׹1ykV "<`x6p$Yd>tZ͉Qg7`~HF${\-4v@ ).<}~hR+JB^!̻>-nuh R3yzu|o[ڽ>`2%>J컢{-dZ> F<}p]b!_X6 ~foxJ@6ie0sdx.qg+,j]2}~N,8jGiSf'ъh$;m @!_dcK'ED5;]^A6ٹ19$ ŕd`*uca-JЅ%~/t+r)2✦.|I&vtjuf{䋡:gf/~+C@īEԤe#Kw3D UY\oTPc!76Bi5p6B5;ۭ6|z)FtTWLIAjLSkʹ!3DNM: zmiآmCf=Ɔ}:Kt:{ї$پH&zz^:&*mmk;-+ē֟B4AwN+9L=&! vFZ@N +):&KJw)C~Ie^ؾKG+N3Ww$|Ȏ[&h!g!Ȩ^sNYjH3BVC>*YlIWbaSIWC.}PHjO*ݢɘNb~o(GcGx vddԋʈZyn?%}DDF]\2!Qc44lă@"cXLі1Mi֑ӢÅ[-f+\"XūA&QÍHc51&age2ӄ %kOI_;jPŊOKE1oh^1LtG)T $t T$(BlH l ]?x.$Zxrp#9K|^`j_rG1qZ^hͮ_tS@y.z+R7m${d9F=otpVRK9ỲceU?#fd4A>{%-b%ĢE=@"Q?Uad- r,n&ynS#OS')0 Ywo0㱘 si=t2`UNZB#}@aWD7mu4Aדkc?xH~%j☣1xWFQk\ssk]PљNL&ݖ,Cm?8Oċ 'D+7}RjɠQt>9 oj}? nqTC!<,C\}gDq=iߺҷs`5G-w栋Oҹ>Hd: )x$$e{}jA)&Wqѡò̿[8mD'&~4 bVn%WxJ!0XGbwԸ 0X0 1P<@q[ SHKѐ+W0A,:P$Qao0}3W(2b `?z2#O s(!j|a|T/5-t$K\^Wl X猩DM!=(Üi~^\ B#7"wx:ǾBwޚa[L1#{کʵbX۔<Wux}Eߪ,>;ɍE-GɯÛ%=~LBl تMioY]_<4BR~v^)! ׆f,ii0S/rޡ9K *dž̜Quc:?<20 7w!s4@ߠ+d J'nc {!4HaC\ASaL%G:Z;}aM $,!i++awRxO`F H͚/GXS2P:m@B+ 7)E'+x55{5"iA :+m)FwRbT~~@NgE&-3m/ucS|#QUof:̬\ۡ/qsW z3 Tݥ1|BUZx7k2vj*]2i+恼#}1.SྟrSp&,4eN ǧFֈ.?*Οta$cPH1iS⏊Ys2$\uuj~IUuog_R P,KjyZ\jf^fOK\!RvoW'91gP`G{@G/%at'y9w4LflZX\;j)ܤ^l^ͫaC%TXMǟQ7e$҆SWhd ~lOHI.n̙z4F'}ESamo@G8Zjmfk 6y@Xk'=@9>"٧s[]*'8{Ii?} P߭'~CF Ҋar/\q ֞$9gy߳_,X?~eAasPUuwfz{IƥRifA 4g_Yx'dq)a-]vj>4Ӷ4FzD=8踥]G*u7T)x1P MT4+ EҢ)'̆ |JAݡnf=|jV4a}W s 9@뚙wLJfNyɡ"D|}=$Ijw?_ SkĽf>b4द_.p~*B{ֲSœtRVRXL:Y>|ȩnXI1/\%CI.dmb(=0c O5s#jWS"*]̆|U,Dbk80Fi L$ iKh;!'W!7?@mDA ;O4/p őI/{oAx =<)㑟@F(o̧i;/ ro+,LHuTO}1yCh8*w!n&x̼? TX^ɋ0ɺHR#G) ˉavM '3'<@ tmנ_lj #uX0{kO38% >[z}EXi9UtN864aZQ0JїݮeUQ4,|-p>NW<2 n-c"J~6jm,$:Pi^.eĦ{C{No't%u.Y!o-oJ7-G۹CmQSfSroԭOA͑^fRKIay n+g,UKg2PnseDTdQ&z;Q[ ) HC~*Cs>qCVj&N*M=(|8pJqRnPA,w|Єky|=eHH^tb??gv=Ud Gq7:,n˾7PǜXCZU1\R {O$偢5~'SϺ"(mycdo&uNxE'tfm/4 }*U)1F+o^1qut2WFGf0Ⰻ!2Ex|,pٸK)PoGռ{A?ZqSJ2ݻ'P" $񛘂haW@D!F7bXvZ9>3ѱ;rk;91M{w ىuVB l9@c"ƼKFG(%|!p9+PM,(ANjɵJѰH# |暟_Ro\Áy[:`ڬ+B7E'as!5R:1CӴbq_-,36ȷsSkVnt6?3cVLC0{\Q(|(hRC0A'$+SquIqþƵˣ xdi%+J+ zݬQQ]2(1ϓ/9G?3ӅM<}ivH5JmAT|2^nORoҊvhO"}mѮ'`Ĭ/a*U֬(- t`2kRX^Ґ臻حPy?osD!qvZnp+~<ƍc~E3߳NHV>Cr>s4}D=>u^WņIeO|xi <>;EJK"_e'{siࠂ֚Š2 AB0Mb }@/oK:J ɲH1NѦa'Ur~^6RT%gsC*P bAȵS/UU, Gn-2 yFG~\`;h)(O;ALܬ @ fP+/ &*}Z FMNr)zZ튻>[>U̿nzqVK%>4vHPm2gH]Ķ*󽳊S2R?d( ۊM;n֟?rszlP®bzw6hy_pHwkO0tJTv3 ,KvO+S@9*/✙ /+.͗ܽqooT4y"YV dh! \VZ`Ag#eJr_-CFpuS)/EÓCL}4 2oɯ1{M=Ui&s|,AVXYMat%䃸e [-A6R@].RH_ *"v\|%"‚, _ ։999d%вISY7CUy @߆7oG=+z,s4RC>t 51KyB6gOlB2ٿZ,VÎ$&)mLE F7('*XzKx4`7$4#Oy򥕽 =^ڵ2 %V砿{Ϝrmn& 8mKFzV`(gX;Hx碀 F8Ub_3p¥dI[.lEM,PhZf QikU2pXkNG| &$,rk zA!UP] _31Ǹܭ?"Cc뵨ȫNI$!c=;Gof_w&3PET-yZS\ :,'sbsÚ;1كo&o^UշI}yǬĕ0NF /ĝPޒ%<iؙ=c2m2}&_CU!E(@F%yA7ԥZcQ5A))cr_dmٝʼj'q 87 &D,R7?{3K|rnQNB\؝v(xxԚrҥ&Ş,}7F& @Է,HO @ eopijTONҋuUH$/^f$&p'qZ (/`*F^Ltߨ^g8dcПO^02zf ${cpWL-vj $]/$Jeo8wh.X>}j1T5f?䵈<,PV}Kp`{APShIIc63*sp^ػlf3C9j 9`eC9(D bog1"nP~#Fs)gb-!~zTRVT5t6Ͼz{q}]tP$7CUO/Fs{2 %("絿Gv(yDu1Tx鑎B>lH>tX\yp1ԻÎ 4M&xY,6`GړtP8=ݪ42~ V)8)WX2޾86*M0K%`j\8LNV[J}2Hx ƚ~>< b3hA'^W,XRMPciC2j,<$FYs`$F3'AB]EEant'n-[oֻs%*$iEJ6@(yMh c.'S!U,oc4sQ~r;&QLGZ5U$NnaO T !+&W8t-`O aXYuO~H(d4'eN4N.0Jyjdk:~"z8nÙ)G@Nh80eFTf+tWvEk٠e iFpEwo6ٚ2 N'X%_~@ħ\P H>q_4o}ĶҴ3oTlH?݊2 hT5m1?xu8Z=&uPa0"oИ -5d.TmeKKj)t(l2 <WӵoO#Q8HLe-I>Wbӗְ)ҵx-T#n )g`[%vFt֪QZ+tCyzX۝U4%4-KsE:5x'g߭ [U^nʲ@-dx!0ɓ%V؂v0rqb5GMy989&{^h2̿`|l|CSl]}r%_SݫD] kaY3W&O~A̅Dˬ)Wa:šXky٤\4*+= VF]wcVI{ђd8QL(`+t'&&a!TԟX{.v!_r6;Qކd^[^;̗5b1鞗@]" %~LOqI(#)]Ey\4^~mۛ=MY$ag!Nz@h~@G?̝C1R;>'=O(+>hλ+ixPDH?~#uUf-z7-[(~#3#1 4uA.M/A(cAֳgCA}jPOɲ*SI\jtUBn yyF6I`U{yUa0c! D*dA-w&A/~XB*@N5c4 MRU .0w` }5m@Πgtݩ#dOo Ixe3X =~yV /p"gZL^HlRxT#Kf-=uE0qԑ5;Լ7MPL SjDNI5LW!ҏLM5+2$AfiZe%@s^{߁aQRџjG"K]N :I#ս2`XXIeK[hhuhL9s69F_*_˸nH1 ȇ8{BsZb#m5igu6N7e?Mgz]H"LdDPN[b#)uL~7bCluCL2I&ՔItʛ jЋ!Q dC씨LΡ G .VZ۟'; 7twSBL!VSQ$9e, e)Bi"P{")jVQ5S!q%F9յHu;d?,05r'zJj)1cR|ݏfneKE"HXAfJB(4ro2|*B}.z.C !'j9d.Ws(@39γSFJ~gmQBJ(H Z- ʄzqCZڪхOĦa@yAaLj _M^mF""'`X's kMk'ZX }h;-Jƨienkd cCJٖLե32 -Er2Tk'2{WiܷZ.%n^h.rwEaKɮ/(ͅ]xΒTeF'+;O#QqAbLQƲz>Ny@74z}$D?ҿ 6L^Q[ߧWNS*r0"iNCŲYXu| \jHKw8c6Ϙ/ :N(M-tM/gJ,aǟ[g'EfǒCķnFKpW5#.vw@ JTkoP1 kGn0ωTDŴ˞4=R50e"ȴ:In&uK53#(CrX"OiVӮ/-\U3Zj*/W;aG1y)>)hA@$tw=mW!1+kڭ04Ln9o -V~:7*̙_+ { n,v<\=Y?Y7Lw_tu]-k;Ͳ^Ki)?hht5e3֣SY6D1ju"`9{Dw@}rI>EWY%ױR*n w4̓ڗ-ՈٔcLp̖vYTnfyM.. FE-93Ti=ǟ[h4ȊPIi4}n^/YJygf`\hrI!%9b5aSr/mq CtD ~ FP"1wXW H*̺1Ob]vxC]Wb̵d t,Ӂ]GIbcC ]K,u ^^} FLƄİvP{m#¿v3b}ľ41]x~B qCg==9S"E(jFԅA uؓ6*DS)pS&r`|cs8E74=7k5PZs0ڹS/ +2lXtufQ$oɴeϰ1h4Jˏ"{WG~zև&)kD)$L)mgb d\0dA*兽$D#Q} *i U֡mlJ 2RiBc[9IY}lGZb | &k pOfnzR7s:عg+.|HG)Ku-n05yJqv-.&+,l2-@3{@8@YOY3$2 %>5!b*7/;e50U9B;a,pLC". { Oz%(;zELC<'u'MhANnOER?&wii !bO ofւ HG-;4 y,xT_/QNA=q˚H]c D U`L#a-WuE,@*grHqtq،f2TĂ. ӎO8σk͜e4vK;[mqjP >UgC%*C5PBG\L8~. Y} PW>Aj[*:OQ A_ ZcݧYܟ7`u9s*"lX&^.\21/- ]Gmhjgwyͱͦ=Jrw0ހzqa=(.)x]O(>E[yE&3^{cŚSip,gyQ3`R;ͭ )MB' }dJ\y3/[[>y3eD:(إ f:V >|PBjejqY% mܰ\[`Ih+}%|3ߤqfYѺu4po0rﳖRWMN݌no ѫ k-&Vힸ)/z~ y*!< x \ʷ0 q -=H 4H~u#%a=G@2T'NgcLW9 =v(-FhƟUHsYû+p' !d6n|t<!AZ#5j'SM(l5&qԊ_rΒųszb9^+ !|4Qw |͎;F9۲~3NNjKV&hhyα`^|-mH,,.V]*;%R߭Q:ԥݿ {5n-#9?zO2]Dm6e#̬[JEkכh?SzKoKW*#vT }R;X(hA8 Tr$&ofO iOgt^]Hku~)¹/hu}qϡ/IWWuUY'U/#iw(ϱqiv=2 )).2 XzUq>XLL-v7/()cz7 yPVtHiSM Ļ_P h{sP{v'f~ A&θ\?t#H!DN5^NB{x(hIػj ed- ׂi|b3"-1$z Ik'04kXlݜ& Τ(w^8f{Lnz Xό+H qs_Gjg i\+@*I[ B{prAqeOo4y9|%9VwJub/C.kfJReҘ-߅eA[䲆9!췘ήG_IW1/-Bo)S?;M{N[{#D怬3gGJ3qn_{H)?Hξ0 eDDvfeT/2^C%g6y0e ėӃ5i) Gp sms]ZYo]cZB^MhNK'II{X#Hc-V-G%zuS~AىVzp̿]VwZ`Kc#=Up(k0TK< %A}R8EE"*F @*=q{P^&L4U8;7kwm+V0S,C*ՏlXvw9w;ՅfRj9ۣJ[b-i~ғ`vEa/9)?cǑpϢH#@zϟ.Q߸%39@ncTPcnwD[28b}jѐk$_<qY RoQel!8r-X{YXYcƉ~8"jǘT[_R󺤞On4;Qd0HPb:[cq%o@m1chl6Imt%t.ZlPe4nB *"B:aC/>6ڊM*,&mO~1YsF=WetoF x2=<ŀk`ǝnLǘ@a--A^LFY{tv뢀9Hh0se2]K FBXm\vfSWR)K3b e+ ޡoU޴ZHU dv/"$ AnT68B w"Ydj}ʒl'(w5_p+ ~ATPNSxJGe)و?(|YaO둞,èL&sG2Bw ŋj#|y0{C7nHzMDma_Y#9A:,罨KXhq]rťhunU9ub(gVReLu A r d`s8!/Pe` 4r ӒNAhCZĺ]r!>h緑ۛLnjK-gEAo$DL8m hw~xcfW~FN k7E%Z *úkw[ͪ|mXhf,Pf~5/M$؀s&Q㙢C 'QߢH&GWrzVEl7mEx7hA)d+eGq 굄4=lʴ:\80A~Wu8_TؐނSLY7͘^$d[ c;RTg^ζ//&ɈtF:WT0-H_dknJ]<׸> Aީ ΰx>yoUc,[W1ylka-27Uڞo$ΙtȺ4BNrkM_u(U `MOnT/z39wխ/\'ןY &5$'}oZO!f 1ĦM B! Jadˈqvߦc}]ml 썣-lipЛ8$XkV\ UG'^_WlHw^a`qGXug!Ey>D3Dcd8)Vq9 nwJ>lIA0ŢB Ԅ0c$G(굔!nEO%z % Fxff5Ye(@._CDDVsnt؋(s1gbފP'$hQ#, y ,\]L;]iuάO@ F" ~=ѬYbt-!Y5T^B4aV;Er1huuC\Fͼu4֤KIZmHL@+"l 6Aӟg- khV*"mlЊ{Jc,{㔀c^!C?q>prJclˌsxf11sXD9K%2Aé j=\^ÖK(ʟU(fJ]&յm%BעXYoxle$' +3pojm3WVЛpx{#u.bsl*ANמDmYZK$I%iO\~I!#x\+ҭ0y͆/ƺhl8 P)^v|ITbAzc|3>dILky6D>iѡPd;eJ(avcLk?׹[֦(0؛"[ ͔WqVb~ ^ u{a@NDw 8Ht@@2kv`!8 2, r"/ )vOoo!fjEF0Ti7$*3n.ngD,6CNhfYՖe @X^v}90|U70gk9K { .l߮B<m u⛵9}tmR\++#BƋе+"wsP'YkȴtmLN޺N2o,eE V~6B>dnDQd+U"*܉‹ryȒͶ ݈Vd7V <#]+i~ȝw?ڔ봯Q͔8V)۞mN"0\ pi@>~U#s:ru(VG(&]a'i/ 64SK;וJIb5?ǖ4Q+(?wy "<2ce,I0 –0$fNb'@"Z%*̜=Wxb0YF ƈ(zF2( eNjHfݲxFcEx٥ٞ;:s! ȼy TAPSHV0W‚)"ݣ9Q 4=# /,Jƃr" [KB ralLn%262HIq,4A0!Iކ2~ʮh\"y .ۢw kEq-~yQ¥漜"WE[RŻ!-)~U9/4/G BMdT44Q}dce0T?*DžBQXx '||&X'q(+?uq=~)nR]wYWg*ۮXaIVw{!7ok/heV2ZrgT=ۢC!z5 *$`yr#LAO zn3ApP*'u8h%&p{zj+Wư825Um^zWD AL+h=TAD\XwyОj4hr,45&|T ^*l2;uk DJ2w`0?ֵa,0;"==>zװB>/34]EVEEZ:& r&@~oƬ8_軑𒧨/>KM"&A TG8IWb 5l29(:6Gwc3ҵ_NR^'9IJ, Yi~; "Pp 틔pQb$ƖBH !(؁&yts-m|ctu`>RQ NG=r CEG}όT&l 2rLޟu4k`-P%|^}?>eϵJ߸Vv[QL8 F/ϠYqk֜Bf#D|.lhJ&@JE$mJ/8K*ۊ|xԢ <؏5s/UfQG$hWV(vqWԀDD*} )ՔkŰϷ@sfRe3"5=mZWѲ~R~ kNb+޷07>nuS4}u(mn+Q0W;}̐@ZkvԯʶXGKIhVqTn5Q[b8D8XyRzxīc^GčnrPo] AEjzJ1B!}lEW _*\TRF`R_b罢\\ OY| F#TL?j6DfnUCSqEi[4`6E8|#&fS$G5Y 'l¶z^%+qG< V#VY{7nq7gF(Ȇ=#ǢtZ6u;Vn@Wғ(Rsnj"ki*,}ApZ !P@쓡k_6ij]t 8g-VLRf,(/ܗoz XB ^j> /v8r;GjoVdLw{^oO_馞wuNaS".أ aŽ{cM\'?!8f55Z֬, }4fh,{h0S 僀P.,4D46>KGX yz2 dv[2Xz06 CJ>wW,o1T Q)?$) +P֚tKyث5hڿ̠)MY,;ݛ*SZ9r08\]A vJch+w0]fJsr20!*ւ4sNum W -c1/Z$HK2 Le^dxM]_Eu/u)8hK9XdB L;J%dLdG'zUfza l "d=h;kSdP^ƨRij ,QjmB^&jxeVG;'i<5 | ~͵/AuK $ED$Xiؿu>nv tcwmA2pُqg%Tdם:2ߵv|q N,rIW>D˪|gLbioPmuMkF"vCpZ,dΚA5v O Uk乚J;b)sm +dn7\qWW8&'[?uj@Oo[ PKk@ڕim /T!*7`\2F|'N`3?/Tl"7y*pJc6 QAԍQU*yD໇$alCi4y6󃫸eJ/gM2 7QϬGbye}NױMsӝ-IV*;6.5lq`V?Yq#У&%P +ZFd`'t?Z$^WJhICR2 ފP#A3a{RCjI 驴@&:,0ެ-H[8䝷t6TɊ'eCPӡ Y*AGTڿ=OX!citXFFC"8D.XS -px^ )?Ptʝyq^:kd#L ~ǡJ~# *3亍!zfq  (unZeB\Â) cC4-5bPR qI o۵2AS Β"KEVB";,Xb._w0O,{:~9W?wucPdc;&8[e} (Syk (Y!mUY `6O=Kts̿Z֭aiIb>7܈OBg'񥁨PLՒόģTϷ#O.S}J%EJt{QKZ‡Z5d 19S;pX8DsnY6T!֋ҵ6olH rnwt"y{A+U}eGx~' -Kb=Ϟ->*9 -g],QsK6W&WUh R8odU:곀;EU޺h qɱ:4VѕֈlT I>;4mc?[H,0cmQQ j/nm&%3Uρ4;:˜imی|ԇTgs)?i܎s my{rhd>;*}(8HFG~g9-UOn,<}ZP'DFPd#9QhPXbzwg,eƍ>y>'v:9$ U|$R̴g [};fSN{j <[/|I()qJF]gT 6=EI<"@(P2pk L5[hlZrGFa!)*l[zV$ގ;U?):dAYfGPS`?iXnJYLfKoO<[ڵS-y9 љ?N+|*d]"ΤF˅~xOZXI[>y9Dz hW쭞 E@+}ә]VD)[A!7/bKټ6EiP+w~&(e,pʝl=8Ms'6K&L ō' cr>{^b,%@ C륁uc '+I0IGZZh鲯.B sVݴ6?])1@ R*Pç׉Y~;hGY)?u(k*I :`#f/-3џx(īx#~|$}R-^٤lP&˒Ncor J`xL^zfԉU\*vL s)l,8ZL+gn3G > iw>O%3)Ǽ\1 E)AuW Q"sFtbRӤ*=S]W_%sNj @d^g$RӔ ~nҩ]I#Blc?/]/6) tR&nI1›+wTe6NKHiR0+QfD/;rr8hkNȈ#L|QwUtm=Ή-Ϸeš)GBn M_` @oE:DmwTuR@1V&sݖ] AOm5MH Jsu@brEc"@lNlu`~דcC-ȮpqVB ɺo.*|qU[ n/a, A>w;;ǿ.g_"C8׳KR[4S$n ;obnAat0CK>65˭bA34 ~H3G,iLu>DKY M1@|Dh]{d7B<']A7{R;ɫOp5N)elQ| ߰`IFҧOoeJeb_E!TEmS vz]e4-J jhD",҂E"0sɓz"N(0>;/<bEV9h/@ոv+[M)/+-"ψy[DCn ׭Z5dÃVT;_I/DmLZ&~@ &ÕlD63SmV(wOd ƟC:{SĒj,~Av;D?Yͣ h?rNI$1(ve>/PRoӕ0>|\SbՋn@@. 1B 6r3.^ܑu"ϼFu?`DwLKđ <5o03 &vtc^C'ːiRSD9/JJV\|^UH{[Xj"f]gd)-DdYgB P&v WڠR.B\:HgNax_~[L3T,nIZz-<:w. 2Q9W6p9E~y 3<[9Hǥط%aTf ʗܮʳalȫ ;o2Am|@/{?g='z"Y,ba ~AݴA$Y꽵x+|&\}ۄFtpAHb}YMHRdP|Ciw_2ٰW 7,&/=O Z\Y8/GV|5!ge$| ]Ǫy t6V<fώTCq=+e*CAl,nf$ܪX?x*HjҐ?[O+_S?o n6 v2M8w}L^]ĹO噔?/gʁWT;ϡ%3B9ޯpD°8?ʊ֟ithx*VU?Nכ;<0ֱ6a{Zz4 a\?ak|n  ²^d N(4?o"o鬙G(B.p[{QGPFRR`M ?z#JCa X;-Z)W#=vn|j{_!Bܙ}xtrӯG!FRpdvE+;M S^sd"u?IoA ruf3aTZDn?bmdn"` Zʼn-;2{ێ*S,i9R 6Ry>5 s,TP3k0J@X[쩰$@p~VR2F}F־j∗pNc o EB"%N [î5 !ղJAe VX>: R(RL@%S֪xbO?-%Ӧ-؎B]f~1cT}l=kߗI (,<a٦k fDˢw(_? tHr{0IVoRt~ ~xl۽d$@U#Xv,{cG6|Vi#Qԅ<*Os !yB p#䯳'Ǘ­w11Q~5=.evIJ^LggFk>En1g7gَ+w$LS IQ"6Fpe `$ZԸ9V:ȥb#LY afpn!l8>I*2lB =㤷i2x推SF|Gc]ڠփf?^*Gk%~GHL%}Bi>RO8}^&&[M^Qixc?"uDt:o^]r Ț+-dIHNY٨É*o}h/;>6ŧBUt衯Q n|U֑)RiG~Bx^֢!(;{Oƈqk8$vNXR27Ct[쓼e{ػ%+GGésUMôdr#$5s"kWAzӴV#YX_cyEs N$&+_Mיx؛?O0 D ;#"Knɜ>9]{ʆH|96G\޸E03 vĄdC.촣|;qJՕ *g@[kRb=Zm;Ȅk౓yڑ`~,[R\3ebǽEFLpS[dM!;fa3SY퐆a-673!V:L3+㖩Ƚ:N(}8yFǿF.kkm wϝHy'WY!Cy"P|01G,8 UQc "*n,ٺ6 >S'%EASw)bZxZuxn޸Zv)u!vI.4 e ȡ֎Fk+4Hy 4ytʊ@z XdϾH 6..kym^kW"n}WoU)f 9fZDa ukv5u2ʡ1O˒ÐBF#q\% <"A]^{xkjVaV"m;N"4\YV/BU3 loǯV4B+A$6d^xv{_}Uld: m԰3-ZCZu YQQv:iOˎ]xwh`ʥkk *$h/5w@ w 6*eE!PzJϢC3Ț>2@CmU*uPZ򫪯,,"jW Wg֖ 3eQA[njPN@c}"C>M JhPQB5R5C}ײMnA)' qAmax:@K3l2&Tq"@QhHoᙳ)iP>Gk? apL3U*Ya;ϖ7ZL5.=j,+|,,< эys'\jDS"x+ 2o2 wXPGQ$!q2"Ū\=x4ޯM?g3ey&aa`kaAXW6[4dUH$ɁvP iv%UIu!גuuA¹ږJ0T.1)KZq/~7ic0ѓZ:(@`Sdf6ο9M(}}rƒ ]@lXU)f9s JfbQ02 X}7z,T]Vn.wzT3n [b꾈6i{+r U=7H 0쩫Y(קM긍`BhYV+yA6ȾL?y¸M 3< }/5;B+ I'ɓ6eH2Ee&IAWZU^`ӤLP 2SijOkNV|4_Xs\lXݍ@{'D5{jl7iUӣ{V@1$ّKEϞ, p|Dą|am嘋rZ{Zz/Fz㎦Uw8T.Z|\Q&hR$Aޗˮnlȿ\MZTƙ(esun]ё vS5lu(6#:04)yO`wkգrZV^R`o<͆l> {^x}x=2.1<#[­VCkǘdn_ $; @H(d{NWFy j笁902P_p4972ߤv NP GҘev:xZ5{7t,\7tvlASh{g :tVİ.,1JKC:Xmҋ\ 1!Xfުa_^65Aק4R*Ю ҅ 1\qӊ< Ìܨ,+ Iʲ]N%WWRggJk|s HodpNB_JrrHSG J~fu 1(;Rh$íe$T҈b:ϳ 9%;ip=̙)p0`v;_J1C čHmgebYps˻ʺO'82wa1{4>s4KͦzGDC`H4ז3/OsM;ja)7BnO'ǐ1 |o$evc?/"jyVYo`ckH)La^i+/;i+咯Crj6cdSđ:0|PՍ8F}#"pjӫkVtאgk#P)tcɖ8dÁE*z"#s~/W' hvQTDJ)U9MI #<cZ^*$JnlY"A4ZZRiX3^U&Ŵw2+ q"ۉ N&%OuzN >_,x.HC\|;\w KKujedbFJ=})?nr0hKBhXɭRD\YXi ^&THBD?wcnH7ff9Y~OI<ӌ;*,ʇIRYz%Zv\Mjc#VT#z÷ZLW?k3T {n:tzgJG`t-bk5E劮;mSs8b}bKsۗ}:{HkJSFc-GlAOP4(,ٜ[ ]{"Z,Lp"EYCNLޤR{lXxM~FKNUޔ)aRqs@12I)!% V*7C F:T&)~ڢu1kd]Z/}<2ƙjj7nqp-~"YR>^!Z(I`+%ц|Ny>Pǻ;ژт:7I aehK"Mqk4' Z\u9ٌ<Ǜrkޗ {&.IE̴'pHE^ZGks;|Wj |=P?[E߇!~ #Z},]+$]^ ]DFKs3?[LȲ@U&yJAHc'XowlGKieb FFrQ:mw鮏y/ijulIe"9_.3L=0E|(x =!5qll?~z8dRH<&1zp%ܡ^[o kZ'yfJEU*l$Ez.w|l z+I7Huc%IS]p KhCϣp#YG.yˋjG[ yE(n8@]Yol,>QH ޾Kir7?S!WaN. W@noGzh j~$#1X+ ߽Gqם4'$y~>lp@f V#:# 6?A*=J +)龣BshVI81 ^?׵J$,&角&͔ν)Nt'Q:Y$[IeeSv:rrfQĝ={zBߡѴo/]i |ߺa*Ka*&Ukm YT+;IёNF՝ xPaj;uzU-Ć\̅ݼF(; 'mħJj 28;|oX~ZRީ~}M*c ]R a/. dqYH7؉ 9W!!q[1"DV.ۧD,!Pݖ=hsb7u Tđ#˚J*  )9Zb?9иmh{Zw59<3luJ$ PI1RSC ʟ팱\T~x0XvHz5z?`҂taZ>p:"\;d)Щysym$d! \PM [_2Vз/}őiCƨ9GޮB֔9EPb61 _qMθ n9h`s{8[:X܏iE&q.-&dhz:Gp?=Fv8_c-]@{߸[~rYF^t\u:zDܹDbƨR}DP4r)E>n`O\6 s5UO?>\WőC޺z-`QҚ [x^EyzRųȖ:l(iskwBo m5P'4/ȽhLP2p Dwy&#}oAr5f\~nJTl dX1-"N.} 8vMFP* 0{xr'R95^N E nGӌ3F%uhh$,pI.?'$;a%J&j\̐ j߫^DM&hR~ )h/E`1B` ʿ ^_Z<]i _+?*Z41\EqRqIŠ{oxH.?͈?ʘ"vjv|EA| vŮ@_rN}FOV᪚N'#z(}TtY/l 0o<^+YճPTV/5gY&[!^tsՆZK"@%s[',b @zb%Թv FJAgݵ"_ o\n5&ܮc2N@RY ~$=a6w&{B J,4` Xc`(5Ę&/Rjë~Ro <<Ռd5G ք^ցfGRM5s&O5C[|O4C -^,_pGC N Ae9@KslXC׎j-R[j@qZ_E029#g7VĐ,UMbsP >3AHr6AwerLx6o҃+ZX(8MrsSTTؑ+$B P~zw܅C?EX=Ҳ6Π2H`^\ٛ%#}p|ݴO'PaӢ*WŀLb^]9_߂W0 : Ph dQhXi+NrM`rs5 jԣkUP iD.DzcZMW43jhO$:kLkS3{} K@sJa4PtnP8$ތ3o)tq$y_B\6fR s<3:wew.@ì~OeKҽ]bM{@ ~S*'ɾ6 !}ӷȟwpa۸hV֨Y< $XC+: FUdSľ, y)qq?Ob8Y JC* |}~X Pi|? EyePHặ%ߨ݇XD 7x\ |l]dQI4qp֖Q#-xܒ+Iu6P +k6EKP\Aws2ܢ>Ql:]cǚ DMdKGQ=plWg~u8!#!lsqhy- k5ϖ4.LA ⬭lpFS.-D>(Í|2e'Eſ}FVUmx3JmViѱGD=biz=#cs!Zɗ&~$DctcoY. F:F~Op3q щfi``ZJ0[;̊SfTV睷*ZA6~u齱|AˣYVsj;fҙV]i S-sS⼆/Z\[d+ Q ~fD<9.NR KOww,g&C{"<9Lz!'ǣ'X$ [*BP9_:{0{8/!Q [ PqVD($8SSyL^DC d@"|X `'3SsL@7{r4UtbXYeiT֭=mp22 Qa[EO Kec ID. Cj+(SsuL`(@s%- |ٗ7'kQhzx ;q~+ viX\ڌe YvRWWS,pkxڗAЇ@0.!F0SBQ%AYKHP}&5h*Z`@kpTj=w\Kd'%1? ^RBL*h?4;f(F8u*+7<{\Ы& .1 r/>dD.VӪJgҾ`Aer.ëu;8I@&b`Ԗ|,xE_Ip+ǘ B>y?+-zn~xz$LX۠.߇^Mv"J8$ۉ !z]Ɔ NAl޴;?Y ]k$ng͉W~M4)\Osͮpqٷd m*ed\#ݙIXUF-P_ QbC> U sf'J R}Ԃ=61Kg.c-@ DRX&lCbWJ&] +>PUD'y2r\V_agBgo`([1h(G&CR(,%wIJL;kzz r($iLY(6o!e!0 t19/s; ؎8~N<"쎶PQY!>x3vaZ79$z5E%@L 1KxXU)u7i!S7on[R:!#$l"QSZI73߁HAyuϐ/x\Z: 1(9Dܞp/,:i "k%JǬ94"\KFz ȕ)cz ~P8ycz?Wj\MFg0nV31*5^,>YCٙټ4οE{Qqۂ-''ׇQlY§Goe$>x o/ؓ43$M#kT]=e{ Zի{}SJ\AYր (m * ht>:sptk /c6tUve\kT{Q"Y+뜤aHA`b <..Aq$ S,+Q?c]E@_d{~{U2nX !{\,dx JT$"{;W/cN|׬v랜7͎13@!8w+eQY0 saqO]4tiB7mx @rp҆rTM!jːzuݷi1"E?9{[(~SC)]V"iܜR*(B=5d6JYq-46˗,eIr9u=eU̞#~NTFp=v7EقILۥTkvr5[hH&10B= U8E9޲|ܯ}͌1Lb-V4v7̽N#g^Ȍw" ʞ!&43FjT H\4ڑw w9CI0pKCn>Fj $piI*zž[2^ Nc ЩdV2!X"M:'c 4V3>_kp !U>,DAst=[24w0Q?Ve$yzDnA#, gjwrLu#{5xa;W?Y H4cO1j b 5j5R@bHQ9l-Cspղ߶#.2G/ˤfE8)6&iNogx! dt^*'gJck||5W3U<ȯΫ;S}9h 8ά6˅8#7 I■aC {=";lre4}L3랉;K5LY(̖Tskc4K*+Es޷=}0(S\f&8+,gp^3[hJ"9Ve$Za?j9 'Ɖ p>df[-lG e3]k[ş!F1Wo7YbAX1j'ͤ%ע}\&AgUQ \w T$s =wGdHtff@'"'hH7NIWk1x|+yb;CuYVAe>^p-m~69n3f lz&apH!ͷ)Edo% Q~ΝU=݌Xktm8g봇r$-6lH)J4Xm{ZK'[ɚhMZ”d_,q*Asi]RQ%]׼fmtlCBGoVʉ(,i,h1˵PLCg:Wa (jATy-?ȥ᝴=.'@t c ")ubiqt!"YY_; ߕZ6?窠ꦚD^'qʚnzr59HaR ' c"%j\VYfגaMAݖ1J0drO9YrA=@[w_dAHzv3A1r]#bxpJ'Υ4r. |X}E֮E1`ʄsNs!(DR2 &_3_d8=3Bz EP @FlBU޽S˲hkh5oR94YCCG!%>:~++s`\"/1m*=f23_;0 |+I7~CpF:'Y 'XNeJm@@Zg^ ''؆h+2"hR[SC[KMR@L3С0W7̰gGRKgBE%8;][c/ƼOЉ`(VꌙpHP!$X+XD^FY b }4o`n*>f#s @KJo(AG[Up$—sJ952@ 7mٔ؉q_P-9|_%iM?w~|s2Rİ#9h8j&JMs!Lʲi*V%L8L Q1UYnm ]}hxm+OFd ?SI2#Ԕj wE%D/9xzV5%ˏ`xf$F»26h/#Q^r(ϲ ޛoJHu-Κ\qFy|3f+,d &_>x@:yK!Og梤v2 _QLi2QC82V`bޫ&߰B'3gNG^5 ikTJ/3E{6五-" Qdk~zت̂ huP7RCi`/ U<7:?#z $ᘨN,ڈKT~kyN0̬/!H'?J2&YI~TګM>Ujweڰ%.pq.y 7 H!xBpp #4vN'p[e/O ޒbHF+(е5 |4͔dyecI` eqM3䅞W]=u);RVd>r0$-A YyԮYL e| O%v/I AYBB Ě+ &SOBmvv/^o_RnbPMQ_4HBtfXl/ KTk#Myn^2SǁMW\m.Z+o!Auj OJ T1!PL9clDTFJK2"ٞ29+B{|S 5yB{}i}++J'`Etbv7v,RNJ@^@xfPI W !:IpEDz0)y.VpވHPiRqj rU a8#\ ;~p+*,'mLzm,؃|`Ɲ%`MD@ ML ?t 7Xql-O>XZ@Y]\:"ٚ<1C 3by+mp!W1MhwlW*4_On؞*He!,1J,`!ީ|]QHuW0"3B.1Y1 VH]k\+T=L?o'-V!pK|C2AqbB)–wnu;` fti ݾɏrvU+9[F7H{Sr31JP/nv'T4.^'x>R_Vnq3gECΖlZBGt c_*c6.fU Z~slNbPN;il__/S…6@:E"|aD\]ԣȩc xǔ܁YĞB #nG¬ w@@S9N+yø#8Tm45e# ͒#YؑmRp-$qw5A|E>e. ,eYQ{73 zޏVӆ"RX坑h*M&IJ a0td|<75mS׊vE]5qն E^1$2Vy磇 PT&а%T=F߳Ex0>kӋuս[DH{DŽ͵]05j^Q7^W)! :LAwt Ƙ+Z5na<`LE1~uM3qi+aĂ$mn{xρx"CM^2Is(bI-ŲH!L)pHx[oc i7}wÑ?+N#Jy "(j3M3tb {xeQ>tEeKȕ25 .WO)RQhNLE(5WV tL c![Edi9QqwK98s1|6ґ`J#5*j[z|*;.hR"bt=DIxf\-qd'~BWDAV%ǯ]Wd%OLM a8TxK뺟>C֜wzY)L^2妉1?1$ߌM쥥Mn~U&k(BM^os2άQ@Aʜ') ]E0L I&}U3rl\;4Zp"kFF#DcfCwZLkY K (2Zܫ8&d_6 mO(Nܣz! L1ۆ%xG>$Srs;L7zkN&E9K`qgط+t:{:6Z;@jBUMbJWKnkq\g}4 ?;o0ı5 w:6*/'>l0I]]}<5d6m7W[hxpL!V(Zg]qx˭~(t 5?CNir8zd^eUhYʃdoc/W Pס S$ߥO&=\YM_Yggyѥ\lBD:D]rۙ$m55UBC~m8#z|tl>H=o-TS֔YQit `‘AɤLP`FM`p;~ mf#άI,; ܿmE^ HLWx'M1w"aӴw2MoR+\-3N}ݛ6+w6BwH/پәm ")9{L9=aDР#)Athr5PDV3N5>^Iz$w_(>[q/Áx&}x_dS$u+2r+_d8߁j'>ΐz:jLdk"]$s]3>%ĘKכۡTD>"|kà+9? ףRTР'Oװuވs'${lr 0R轱$>jm_ < dKg @aST9+ΝJ!${8VP2(Mx"csnX#B~l1;>PKbupGj M6w4(TgWj =؃9gv[sO+ < oA3ϔe 8ƥQ^=c2k6v:23]̚ć7aH],38DwP=XvKx - %l0E~X 6gcc9ԕc&XW,BCdCfP ח_-pb VxfmxyE >$v8ϾzQ[OٿצpwKozZys2a~w8\r;:~FG|]X0>>v7^cqGrcnKN5[=w' $B s4Ȯ90o䦓)!27]G-z7Tu G><upn"uS/'OE{U\-ǐwDz@•tJ?UѪ&RqFC>C3UAɿw@ N)Uk/Y-]F0 >ksM:籼bzKja^XKw- S┚ɷJlN&XzՏ dd [ Sv \PG~vϖc4 ;2NPY#tT߹\ C<5ߍ O;utC+t2? ^b-T*OAGMv7E ֢-&YtE RO2z+Э`nPJ[$¢_Á{+7uJOv1%\8_P0tZ!I"VMRBA{0(ιZ')Ӳg1ΐTdz :ѥfΝzlNɣc)N'D(h܀A!"7altx]?JqQN)ݶM̙4SMm:FjǩOb 8CE퀲lր̶ %<#:[] ,/%C$N"Da@^daBpRqFv4t}azrqD!rWNj]FǞꦇer_5v1:lzt `Tz=c5Q-h۞,) DKd)·69,-`Km}pizB؄-/,R twOYABsΊWc螴 $-I4ԑ >$芬Tͼb|3".8Jn9}YtII[p<#Yxrza/\0yjӿl2!k1#DoRAK]@( FTahO0KY-ç8$CĢ#XN{rDž茶\ Q Gm0;ȕ=uaJHFʿeyиfZq4 ^mpNSÏ/y7mߦ֗AmY'7ȿtp*y2>Dr"Zً߬,r/)xCPn,6u[3XWT|WYhd{"\2R cdь8b-$ {&I v^CK}Y{)?FJ <|3Pq㫃͊RŞb`awHi 7edZ,Nŧf$h"Eu7-_KJĘ]c|PoѹD=pywg{J [&&:YOBRaao#O4Е_jh\[Ժ` zInzh1ē}. )SK"OUTpEL7A%ЈwZ$j#"nK#YT*3uJNV oÉXq^F X\e"Q4aVz>S6dzF>myxaEeG^CCej U킹/jPvɋR4B߃$4x^ǘm6z:5< bb1y3 W0[F*eB'Fd|P$Hk0xA *GD~ h`R3w¹ XB^JeEKcq(DZ Lgآxԉ7{ $AXK SN_4dD}5^&,2]$J q 3u @8v_av cdْ[&}L,m{}۬ ӶUY\=Q]_9 YЎv&\V8^0f % ,k)>>;-q,:8+s?}8/ǣ5T L)εRcCYH%$VcxDS!*fb X]_LPdQrP3m].>#*Qzps7++DmF8Nwv>ftVM9˖)Lu0nAU9A6CeS Ldf{@%;k _NRUp]oz!:u!;LpNC'Hb#ϣ͙Ζzh~rGE\ i)4K?E~ZYJKoec'S-ݺ7|8L, #wGvW~(EДUBqeR X}5ڃqC@}0P¾DŏL)B얅ͽmZ,fyph\w 548~U't+щCm\r#=g,\4в ԉ';‹ <<<x]I,>]jrƋ݅ Cb-em(G3i@h 72_xͪ W;MoGǛSjZn~z%MZG/m1*&/P.qW`w6OFcmB1gj~}٧7+\Yn [`RıxF'A}1.f$q`)SNdW11Uu7Z{oM脛 KE= C&%Ɔ2_#(&oRCH)jd _IU?X7&?.ocS43~Y#A:ʼ#&#iG/!eKBw͗'>~5OJPGCuY*xTıJ蕆 .k7K8ȈʸZ\!9ꌖMo Nsutq_~xɲo}tۗVGMyWűap7XT_)kÙ¿'Ia< } f.g@G݅Rn-Pzoi.U zPZ(2msx-/41L:=t^UdPnx9#5F'G:k)fl)|I2/b]~r5 [{3f\"{GCd"ɰF\M[JZ‡Y"=9֭85.fMȨԏy|xONU޾ꌼQf<CNV1{[b\ߢ!o'hg@=5>'v%M' }4/*:rNHb$;R|9+ Ss3ȡgĹ5j׵ص8iHK[vc/\ZET}Q2s$ЌyD/iG_ifc;w5s$C!^^ef[}t$EIE\ISDIS1gnB%톧NT"*gEMx3#x[Ή7o'=-Yׯ|C4{2|]b䏱ȩOJHYHLO>3TynF}x_5 A=1U<{L/cH3 6yjiq:*ӥA0q]`%:S-X|ܞ1ک$8%J`۠lEX+.߭2Ym:Ӥil؊X'Ty>5]ܟ-˧vK rzĄ8-V>:uJ @tJ;y9ZSh5 g\`5#\O3ߑޔ!&S>3t0aZbX jfI;cwWk |7pDzq+G8wg!i5rOWqZk_!w/`EEG$A_VNObSw|">\3r+!NfKO' @ĕ͗ӜЄC8pd4\n:@)R*#涽ue6ah=<ތ?ߜLPht#1HǴ{qħ'K`r2{ΉƁ*\ەu9̈HpLe3 7`noʯWrʖ}cv !FŘ u6F@:}|CUkhL֮$.t+E<$Af1yECY̼{e I *ۮSWipe.U>Af[C)v 8ma#l7wpD\jkMRWDjJ-+j*@A4Vor!/Й4gG@Mg LDoF!Q^1gYN@8 I-5~F86L,՝zԠS)I &A:%08\u7။mY^SruiK\Lp^\j 0mp|Իpsr#cz'I{"{h<bS㔀\lco,J14pޡה@ljbfƪvw؄[jkd`@zo 8~O!l1];K4-:VSw}8:p|ٿE'p0?G,:G%A*f0ѾP3zfw"Jx :=%ӀD]%28ƈa.Hz^mN]}ƽ[F9/N5&+;15z_gSԙ5+ybRmѫ{"ksM|d׊a 2GUtP.bc9X`͟O #ݡ@=]i$7E`5, DZq6L eJ:I$q^=j[kke-t>z"wTJ.Ѯ#cRZ 1zWRw9t DBvҮpQ7ePU[ #,;\މ S*{ЕcK΢tb;3݌d7քN$T]͌iv l{ec$B_q}ZҤ 0$n;k1| ;[PD}oway{Ȳi)W-ݨ6>4N/ ̶ZX+83mD}p$\#"!||8[WEM_OAuIB=C^7=V>a!$Q9JzA f&A#V;(|LB=gWJ<.MTE5MOa۰ac  Թ)@keأɟZ#|aqh)dbsίAK[ΪӠX +ԝ%[``|7Kހl&q/ w["ue/~-lD ۇ0 /tو3bї(Q0Cuҧm}n]m U\e]'n{km :M!IT{bRL0Ziy]@3 K]ݪ DSB+sAQQlXq/'8@ئ_g?3S&'O* p3-{(A|:"k9 xXaĞYlQ+puv9̃61i8YŒ' b"Ϥb0m0Js0"DŽ| }dXi^Q(ԿJ9w\.P^fV>QCcK CΨ,EB%~V1s)I<~udׁ-VW[66>$a5Sh QO̞ P`-Nr+5Ӎ*aܽ@\φsfHbMϱɠ!4C-Uϋ ;6P9쫑GE4>ӕ}=҇:@aXΓī6͓E0q#[cDc~.^{+qO`<-Á/`{1p:,_lUS3^94%2f JKMe7޺#.pgmZb)XjisbόԍyUzx~hso"R'U RB ,f)r|d'~ WDvҡQ("<#"y+7TAt%ɽM9×f̽ԟ HLj瘓8 ݈?ot.c3-=\re Tyh@7~N0 QVӞs&cT2rP,H=s9J}.']Htz!oY99'9_6<ݺ9a샿cM[Km$.z/OʕcU0rׁ G-v7ֹ"~pe)QBD&2z>9<߭J7Pw.wکuZF:㘉V3o+edT Rk?IpUhefԹ@ o\3-OYlmy1mg}QCw |/ T6'4J#Tn }cCZy,K- ֭,EY*{wNxX,_o^[:$: dh$!тk+˂o`@PO%!}Zeb^H㨥Wo2zLf%r\*:bՔڎS@>،Z+4q}FZ7 6J [oQ`+eWš\w~ S7C\'7Q2n8UGᒪS }yT݊J4'}TZ>8PV){ ocU& gUISXyH->HzELa x V-C7 Z|8YS]!n"`]j[?EuE o@:/uOJʔffrPOA*@!#}802@_q. H|/{k&tk{w `ʻfLU#`JH :tR@q' DG.K i$bxxC6}:N:*,E־S "e< 1ijuq/}9t Atʱi37]amn]sh.TB:$P5̮DH!NZv඾e  5gW>h4M pn<} @vRPSD,Np` t ~CcpŌƒ 09Q;Fh6]nAfiT;k>U܇8Ͻ)h֐Lu~̓ߪ^ Rȼ̋n.65݋;<[E?3Z~oEhgpxY%!U|^!M|H>9*xL$^dZ?RsK~'#>SرkRp*' cˈ~[( .AM^эkBQdt5cZ-^]nQ[R4d Nנ1Fp߹[r`F4q-l#7y9:WNk 1i"bQQS\GQݭO٠sf1H$5 ޢ$*T8ɸ(kI6 (PL@0>5u3yP(F|yqoN[f j?k,*bg((*5t_v%[b{&~sWP֖%1kj Jͧ^gR*3>j0Efn!aA˾a}86ipU;X\֪s]W ܌L47ф2..t3uq2i%`}`IϑV'&%\[ &XNxg$N\ѭ2ѡO7DzBAX/D%rKj%JUHZ:KoM'FxmjAcIƔ#j!-6Ώgz]Y,㨽hI ("'D14ZZx-* ,OV"zIhG% 6lMuvm 5xJCnq粶\oKJ}M!UQR$0\F^6ܬ-s" #0 9XgB;i+qy~91|Ы~JқWOcGU90&qB27+y  ~7fLDvijTFPMxŠqἔRT{gon?oi:4АľB PWMA"rOWN7YBYjO4|[EX~A `+o1ael[yٳe7OP!Ww_L%``ˀl#!oR`+ۜ/MTdaq|=j5@^GU$Ѡ(O KE2$rG࣋AEOGif5d;WST]8i&aW/rEJnʑCXMFL&1b5?b".yr<4V6;ta`$*N]}j`x'}y qqWkqLUcE0%8| o^{8 s"l0fe?cQÔ7sXX{S\RN>z*@fG1WSО/2@_ڧ =44~Bi26:S[#7vč -cc=)kDwx(GJzU?{bٰrv^bp] H%p/vG d}y `,ɣPD߅% \BRz<ÎX_TY>pFu~::5͏o[eÚF\}UИeIUysʟL ΜC9twS[6`q+6j. ϟxʺfR*+/ .N~F 8dߍHk|YbXI|LKD7-mEk @^"&!\35eBÛura' 5%)h S-f*F=Ұ?\F!&h/]3c|RHDt[${tv^VW`rFn=_'KT%WkÍ8= }`%(-!99򏑝l%Wh&Iԇ4\L3l/סV#Zm g9搂2/[_4 \a7G_5[4C- I3ZhWE^d|+d[et_| }c3qDq^v.^^ =;L@$wroGlJ__&8Hi-Ul[ ^y**^Kelj JBhTFC45Ο(>#iT%NlWvKȷgj4JS8d[9mYLL3rI0kgYFGX[|G~jH(hk`,{Y <)rwBdCPYp`~Hy-7kŗviPLt&M_I}A tg c$wT%H6NeLCfR#b&s-Ho. >|[V_ǝlt2PۭD-V /4xУ sYU(@ \cMPUu#8*fWh{Plt&^ ڵygy_7S,cj@:Mi"DIvG]~b:^k|4wӥto Bs-lA qsX4M*帝ӔD08|,C~ᢔo/DZ7[-M5huͧw[p!3r6]u}=Btgwtxn2lPADa!qĈ\$g{';7eh/0DZUmam5א}ҩh u79_1$ M|@Zk??> 1J 06M]?>w,jv]RHkǾ@z@% 7^L=?wUB[H!7Ya۵9?ڰ% +#v"&ƌzH?hAE~gǥQsfwo) C?j6)BI VzwPj* wnTl~;BxvzO +Um)y4j py3bVAE.PX" kKc({$-}Eu\ )-(A+䜭's=GjKl ML]^=ru]Uw #]Ʃ pd%i)Jek) =EKJNhhȍh$Buw/Whpb<$eߡ4Z2A.p3M/ !(̻D588AkCgij>8hF ٽhkt 3R nqiskzQk ײVP16I:Gr /~iB ھVgr*ɴKK`>l8*ֳ8Yni鑓2V".[WA2Ca;v[X6+L V@|ʘ걺6j®ا49Gi@Hr#k&1i\ mY}R3%~ˋB?9^$ v,E D1AURrV!{ 8YQDZu &61/0|нcؓ[p$ť&Ha?5< uBzB$,& $]z.x=k_LϨBŸ?O.}75dKDEh[iT{=WP\#X0KaG3)K4 %&:#I 3̶4+WS پ"-uRN1)v$o566ąL~c,ZiŠ2<Գ'󮌦T##Į拽Ji,6 /uRC@=̅ ~D<'m4[PjDd!9(?GeN>Ӧ4 \s[\ .zP&ܕ2%$qf3yE)n)/0 {6մw 155'#|c{:;2㑯cq[ڮ<.ߍkKnXV*_zmp6g_(;f8zmSMBc㵹(Nl7Z!gzi7~to% >Ɗ{!bp`I*ڸ^k /& "Zݴ@7/]z#׃.zBaky&A:[1@\3<yLq3vVJi**3u2X6_bBϫ}Ee2)~;`sdAjUy|.:pt653#T)_A9}<_d3k5XfP}aWIxm+~]B4tq iTXB;zQ{vK5jV,/ by6$\}yZ7,2 Q*7W;fyY=^~i>3S\˚ ܐ E߄~4l[џH=& v'VkK5Ʉ|Uf+ 8\es.L]jyQOZp&EFa[." ΠQM}jw>lpxc”1.N'!2{oɕ,;ko7 yӽE_ Cq"2SY YT ߭&@VSgL#\F ~2 1AK> -}gBd3Phcr;:n+z8բ@IbQrۃ 7B1,Ǣmqx]ZxSN:Ўw7WyɈK 5R"ZыB^Ŏ 1S\2P\އQ"w HwE)A 3ipTWU\@ 鿬Gټ{Rʫt`mNoظڏ"}fN,1Mh x5/S(soa Јϸ"j'S4b.E5,+6&Bـh3AazǺvZA)(LyI>",h/Gp-uD[oeIumx ]xy,Veɚz\lwTnuF09WbV~.4M|9W8Hb7B4 _81d}~`6+XɲtVuBdAk>zBxГh1\YT<Eяb5gr>Gc2ɺ(>͓]T6j$HٰAsbƼ`Wb/9" 2o6W!YGv|j_[-|qb!x^E@r wi9CxD:urhz77e\vzzW[Lb72 riTa{K!;"2*±*nʝ\`՞,'e$_uT?Xд&*.mrk .媗Wpb\h6s@=y'|a;Zک-0 [^ Xs5t$ D'LNTY"xa,G T?8@J !ȸʁis~w.~VNKahwY_o@0D"v; ȅ*BF"9*"OVqE͊Lw;ؓg=,|:*b #)(Tݬeqwi }r>YH۷.H+_&Fy 2Hc-Ni_&%qO!ICsOm˕~`(If7)Nһyc&J6wJUBvC 6L?EQnqIG[ -*6^P6㫅C ŴӺrJJ?z65\@ݯVUK  +ho_H'8 _B,2["!<&pMھb^闫UPM̌:@/C57(9޲{1[}H^e Bp Rw|[?󑒭o8ĈԌ]}e.m ,PSXN*ÐO$-#=zZࢀzuj3Ɉ !XX*D=N&I˓L yh@=芽,d4Xa,ZO]0ouCvFrDɸQߒ->k*ieYʽ =hÄx) #FC/\(Ga=2>4XLɉ|Øy-iNf?Alt)n{ )DhWIf Țc}!rVYΞ5gtk&kz;\Da/0#CM?0y,Pch7Eرç^wLiq|EZZ8r?+$bAxFndHUK =$8Vko:Ǵ͜0Tc4,2fd1sH61SS}$k@))Hzs`Pq:AzW$ G[T6/D83G@DY2סu1Guy'lf<xAs]<+LܽT}.]U-cbsds`jje?ϖgl(|-Fm6oIĒm%a,WaZf͍Ӎ>yժʍG%{SDBMww7QcE~swpuw^;+)ȢxP8~Xhێv<Ɯ}ꭋǠ$UVlȷ )1%2ߎɅ=J/u >@f6K|bP.-aK$dc@){2M7bhUn]M#P-ZyGF")mby<PxL8[?A`.z߷V!”a::QMѧԷAp CP,WYV;HvcΕ%T@ҲKT2;g$V@"])h wt>̲!1/"l֜)Y)a#mՑ`5:ih;T(7!XOH5h<$t;L#ڰx+/рg~"V7lŜɾzb/_)F?ju SDǍ8Idh&SBvB`ۢAc{&lx?.r5)u=2+OʰtrWX #jz_jHRNő*iþd}"Fʍ/ZUPm|e"c|0mpELa- m$(UlKsͨa4"O1n ({F QɉX"@ܗEy*{w jCZ4YQJ#-K;gG{($BLe/).Ɲ"<^h/{}ZmB  h#P 7nౣ\yKm!oJXWď0iVy*ǵj,~tPu  Bz%JɌI^pZR/ ϸYY)?-@pŘts4B"i82wSdG0ro%Z7xtUl./ (v1*ɿ}p׾lԼ C?ttL=K)J'^VEw.X38Kv14q]Kz#yzK/j_o#TVoX} 7Qɩm*NQΐ1l CN.-"pAƒ6@hs=ţ[j4b ʒ ye]ª/tIMm?r[PFG؂Apn`7"mKv#H׋RkL}JAh˹'7 $0%wD":+㩍Ԗ@Ih wNƻ1 zPKmya4{H!:GykJD(GƯcpqIpF7ZCU;^VG}^13u!Dޫ;I?ܾ)c=ELZ׬ˍޯXZ!M Dg]IXkJy dWc 6;Zl:OCcxxak0Y,rsIz0Τi :V?A7$R2{P3Tх]D8lE!jVB꥘^&/KKܬyI jͽx(q"FJNLܳ788'6X}>$:=&ѓBtTQޛ9Zrx <~ jI oOz(=ܫ@.g .O?\سv:.marxl?.T$ͼ]K u."_jv$- ̀rخ{ GNG #CI715y_;2[-=z=,kǭD aA+vQ!!wA7VD`ɰoCz`-VI A>;̎V"|JsR6 h羇陬= @DH?#qN8ӌ.:쥷 "TPՔ:,>x5}XiB"ZH}Ȣݢ ğ{ޱ>To?^?Þ}˸~ hP#?U2 +/սS˭/יE"_oHr-ݞ5%q@0'o0D5K8~Gz9ťҫ].`I7Rțtf'GHr˖ -ߗdV)~oH2u=}2l1O Y 4tA]tOp (/ s>``>U#AN1љ]tK4dD%R|ic9o_s1χ`UͰJX_0끾Bq<>7gxr[/gtIDzvZoao){ӏs6'uɉ<ܗ8C "7f_$Ķ"QBX[_&3G0ZGǁqx ,õW[%'A!=2wsmњ0,D7cHٗuwsHDB03RSrז ;uH]FNu H#.'JK`u0iE}}! SMRnMOwhSexWuӣB2 vGQӄFy!j{,^Uf=g =qLiۯ M _ O24Gy*  ҽy/Uɂg1 w*.XV޷)H%DC% K$sY[Ӥt=|gӕf^#*:渚 tSÓdH55LH=aJ.0tgqvə!yO!Q>\sV\=C+`.ccAF熠TcSNbvBH#}ƽWvHVл جp9`k5J‡{CC.;6nUѤia3ʡ[g Qd%e+]gug ;/q7k% ?,<&wӜ8vGZmhDc2#C]d8K\SR^e (a.(s$HL.T{2-"53g}HfLC8!Fjt" JDDb^'o4إҀŶTMyk^oPm V$aK2a2^3%F7jF ¢ֶmrify>@434!^ŧ69=MCӎIv!CrX/,"{&4&,!c,}R?ZV]C٨, nxn,$1*>ٹRIiꍇ7a-6J{80~ZB~:q't_KƌY7 KB_(@HYT8Sh`?@TZ~;{!|<&u=FkoiB9lH x>~w BxqSP}#H; g%#란( xZt2;Cne[Ƕi}(rD'k8YlY%-+gJ]&<b;Zib_ҒDWǂgL#N3nFUgqJ7Ju.E`O(BȐ%nS7cMn{ة[`P_|[gfhKD\]"m?oy>Hw?{~Ky ,24`P m2Xt&e:NfxJJ3@p.◊T*:;E6N}z' w0- 뿉MMgaoUjP5יD|AW_9y&!)3px==R46#7<5tfLjN$%**cqp/nTwZZȚ@11?[*21e/恵 hݤlɇ `, IZMM]8e@rC0V yC K,Cല{pS\U&e}@ȩuOC!ޏr !rh¾H$tPhP?rruUP;u诇0puA 1XpJ5;ƚ%;hʋ%j߰7ĿgKj0^ZhV\ MbJ5{ܿt_`|*]_ 7/][.>٦qY"iXjX1"u2w7_ ,^25Oǻnثw$,lG| |5UWF16<7븢QG +Id 4(AПeh[RA n(54yfSU,Pp!U@US,G6@C Cj%{m!@M9q߈#%J1O DžL mcԵ/K(읹.H\(\^R iyrfڌשZMʶ.=O?L#Tj9h,Y4W# `p-}V!7o)n C*ooR Z8V(JO((Xk7ϟ-t C-uP.mqM6zg tԓFbH6H{ uFq g6 UZ&N^=D 4;p~.I 2?EbFLr!^RkrR>mʗYbEh~j #2m$ݴ"K%f>(_2Km ٹE \X6!p޴Ĝ-[7}J$'LųڷQ U6T( cC<Ӧ?u;P+g*Tn$/֊oO&Cbrć&!e+='.;ir(yʼ3>V_@J'N#ȁ ̲ q%6od<6ѮzZ"]PZx&5CXb(BMJ`ꨒ>.-,Z#HM~P ?N-nPVL.K%6(qK4z+Ui}Ebڞ_T 0_Q2@ zc@eM6^Y0򗑾9=wι#-As4uGF҈X')gnp?f>a`Y2b~3R(1c]haH}y-ePD bBGtw,Gm U໴.M҆b/+HvIgמȣdpCM. >(>A fT Ns,xaTtVv熔4Qi(>krl.]ǦKlDu k[i󧢱fucs6v'aXe=vq2~`.g}H&ˆ;K6MF YlٲoZ e4m{.d)JzV@-W:G{(O8fDѬ<~Gon8{,uʞ:q>h9j3}daI;ga^=|Ξz/&1krP8- 酾*)CQIa4AR){ROZIG}rC2XK:T{(O#]CUt|:X.[- iesr'߁K YHxPLdr@U4@ȃ_*rcs`Cq5 >x9׿[OY\.a)Hhiw, aq>j߿.'>HN6lf&NF\t 6{?-Y4vKu)N%mXY z|Bd[iZKO!0%gvJp99r 1l+EeػAh39%)Pv Bdc^[_b04Q9,^@ =/Ӭ 7Ӆ/ ;BRcՒ&r8ݤR(0d~ $`lwH&9Z?>}%Rԓ멷 =m A]nԗ2 oajgy.qrQ'HjҜS]w#V 7PMh $aEwLe xKo5"[U&hhtN2uqf/mPSø2S%r=G}w )ÿUq`]Qy] n+:\.s̋!U &[ gLgiԁ*k[zzӮr<>4pv1p !o]߸@Jȣr θ.0$XjIpjc`| 2X2"˻gwaW%~bF`dl sra0Y0ȴh #J<{,^v[P.ZD.Ů!fлlmFA aK?Lf%|?oKwGVj"4 w8g 1Q+93>?aNG[ۉUoFW85n?7QaBI\N ipCCt5Iq= `0[ʡ7JN1rjudUxS##_h5e:]}\/."=#\,)ݕ9#%~KY/^$~4Iܣ:[me&)w,V">Q([ f m3e֣uc&ݩcSg~^/ܯ> ]JgґS3XbDm._{8nXڅuj.PᲅeKEf;?:uH+ǟYbmlO^,a:UF@Kl89k(/*x䂸!{%<7T=VfwbxnT7iթ])FWF`~-7^G4XG0@]2h騘&[!<.g+;5jNggC?JH29s'jUVK`xԋ!NjgP(Bmc@+(긐Z泦V_Ͼ 院m; *tپJcXmO+~^Yiwhݛ6Ge/=_~ !PSW-}Ȁ$Ty\7IV HB\ f)54#>9 /a ^Pt҂WjƊ'ٲ#( ɔZW#T 6 UX\lIQ3C(aćEa@+ahH H!Z)^P~7,wB: 2y :^l7~w{Q>NDlCYOÁ띇{J)o4J0⥋^u¤ǏD_?.Gs%T:'~> dV}]HzJx*Z|uf7*g~KN;=mVX(4bHQqnE${s"-px⻊"< %#ΛVܺWr<R`pUD}[C> d_&!x:4bןx_$Is|䥟 s>8]aѪ~s35'5k0dk(v/ȴHnwq*9s,bhSN*!Lgrj=4hm|Nv8rS$xy-ƦVgh8 `@uu;@̓"'r&0z(t|(~ _TB҂N lЮ)A@<@QB#}Ǧ.@W"=k꼗;-;#:{>qcݻjVHkR)VjҾ\O4΂**aAֲ+*Zд;H\7fuzm"1#!R8I$7#긘4q6 WPM\."5(G>r\I]VN&`t$Bhj&h 9WxgQƋ+h}; ^`ܷ֙@ixC,-)͍|i ^[$hl_ B؈ /TKA0[qbDIULbegZcq%4Nw>oUiߎQY 8(8A̦)s}~L2BGrthWIZ~n0V\HmY"}]$e/y@jO6]Gn:%45h>FOTψ5Œ,[EdiGE<cy"7i(H{q` 8頿#Qorݎr"^LPYc<.)])MhMLzHQHxo'mh q)4oj }uމ! +Oˢb矫 xS 8< 8a#q!|~.НFQ9LbqwJ xri \_RsFzhJ9|gcCU'R P3/$GS5_ d؅fÐoe ~Wꘆ~ Y=k!"NVíK猰*|(P5b&kQqX` bnGv#U~=ǝ4zy .@qAc~M`ɡGyf7"9-+le}. 5I/ ?e'bʻυU?[5Q0>|; 욅*B@Ԑk,oc~$EA^DLbmwWġ.pĺov'-YG}4nH湐OG J En|<1(>+pQSadϰ:^ґV/B"s +]#X@誝A7S?ljeJ<Hy#Q]ɸ_E1 5Ldǝ~8`q)[=KB9׈yZ{^KV̒MW9lh:P1^ {Ĵ:'׆-= O(4Ij5\ ץ1$)0x;C0ZOTWT"SoSՖUߥ Y;*o9ioʤ,r?@$<rhӆؤ<-4 1m7Nf[: d A@ZW7oJTS7 }MߡASYXb% ]9YAXرQwQh:\1 O8Zby 7@<+THRamI8]g3J3\ڊv1|hHlh4߉O/4qQSN[N˃#>&ȎJP=X^ @fʜ@*צ`} 8a-DK_0m8 XB G29xŷ䇨 $3N5wBGN\D"#%t3|Oi䨭h I{ұ[c9 ~Te *e7EWOͧdDU|퉡ϡfT@CI913<"Z#wΪ(/Kg %~o=܋4mmlz^~bnBF8Xhfʦ=17HkA `yofeO;{c5qΦ徱n]H-7][E&LP F%}yv&+邐뛫p.?TeL s.Tr( .T`ZwFwa1Ҝ $X8ĸpH&n,![X޴gKmx&|8>&@ͺ-FsӌgǪ L,(^0* 5Vv=:6dluj |%0X/q{}Mz:^5ϒa\kz& %芡-_fq p.:/s\e䋥x}};!~d]3 5^8RV))zLߟZ|?/*a~d6jU!FmڠAQbQrzn!Ci!trIe- ֓r`[Rkd,Y]a U§_@*8#G0Y-v[||qnwØV@GF6qS]|҅֩0/ـ QW;.iG:@+X;N }5('pq6lĴoK/{ww?M\&T$A dz_rrq{Ϻ)%,6lRئL*Q3"}ҁ׀t-'secl 7?V.7ȯ8i냳Tw@anP7'I"gs@dYI=ý V hu/ϳjwAMnj}~&I(vIa3 9*E}lFj5h*;%_Adn' &bak %kVEztR-K<Ͼ/_ qs{V|`OحXrT )n39:ӫܰ"O8R~TӳxZ\ R­}w;Ku8rU뒃SuZ~8*ڡ m jzuIM}Q&'M 39<PZ@;qMKT9DkS\f,HW*qXYJIlPIZ 7Q $7.`L\VTno*_Ց\7`9&GyP٭֗• bۢ OnVN`$`Lَ^@"6r,"NKP|`1Obv!Q.FA W}/$*~ u*U [Y95 gsX^ /-^ He#>mc1<$3SGń7-|$LꄏK\&a{obD"a{s2yt!ƇBcciBmaiBc#8b(\CZxnPB8"v-.-sd%AvO<I ;W"tƳL6w'^9.6JM",Ά?Fb3++^"t[ 1AypŴmrxn?J# NVg8eHFzC=5wfٶz-ƌe>4NY^7]:^fu[HDŮalɭ^3FUIj-)qچf-j4EMO?uRyB!@ 7.xŽbCeoag˜WHV pXR .B2+[-IQp2d:tʽclk r`,)( [KTF"dD!#D L\pn ˾ qa٥ڲ_w`TpAnuR~a[oL! lPĦ#ECy1ecځ$#4`̿GN0K«ۯgL@€tƨublk"2Xs=Bu ij+zsq`wiwM) z''F) ڇy<Xhhv2'hvu=+/1e<ճwlj{sr<1WZ&`~R}`b_ fD3s6oy!NMwzXP:u5S0ܘ c >!0_FNxiWtw{ QN̄iUVf"݌%>@Hr9Ɣx=M(*OvksůщCSݺI$viNy~zfn=d,u /u 7^D !d*WorY8ư &3v9͙JqXr#oN p6TߍzZLs>J2捜koL׈w3I͚& Poը[|:/hgӓo9s>ާ$/ tTX4<5 jyטl? &hHZ{bY>gJ 1Nԇ54,hWy^ "UK#㺿F#j]/BO!]sW <݃'Ɇ6zIv[T'NzgaBڼ3'5ZG@X6Xs#_9/QH&n5DJvh%D,{xrǨ~pE .^UiE$5+pPEB J-+9l c&C`0v_~iZ.s5ď2SMf_'$YfsK7RyTecH8=B <˄0ĩ%K+l;aG-M`z+?-M#rT[*]6NueZYgz%ID!rvPJSחeZvSt2L;u<}lF;ٗYtauCMoMsdkQGc_3O(Y>PsFHe|ƀ7ńB &s͏&de9}RFq+9FaLPfY\iG ylBVEuN\{J@U! rzFƃc?ֿ(yD2x/ .Nn†/Od&-PJk~ž`nzbv.\GM,9>l%j#7et가l 97RVr{K$o2ǓKE66lwL 2() }zR+uw^"4VtV'VErGQw8Hmx#d'x;]"h ꯿çr0c>eCY;O`A-y:cQRk@yV"!ۻ;~ TгAꄑ8 o-5=216g$Y$)A(:1<…rl h*kP!"ibU>"KSk9 6YJ]fPpKXY0PIx{P  [ i)CLsrt'36xac6* EllifP3ΝgsDSɺg@iE_nM<<0 h()"3DIc+2pHeiJOwY#K ̚)N-Y2hP3TL9>Xe}piC *1>+ԕ&pk`taӄHcjjG cBZgƹH"d]|8 9ZF;Ȼ"#ʿ5Γ.E%[iA=Ѝ/$PS_a\seŷx[yӾrfTA_Z S֌ml~ܖȅ+γV]cf·CA)ɉ@TfFp?G(tay5.’4'Ω)Z+\ +Q]<'6trjQ_`aDiXiZ~Y/*#]>1|mW㭥+$ΤK\]oUZμlƴLhrʊ5\P] TќN:I<6ʊ^T~' p:ȼ?^M5@xŅy5òd# Cpn"E[+&4SC8ʼn; ssJf  r1Cā<#|@7Js /h&Bypm&RbgduT>k1YiS$lki_0Zɱ˪#$r2HB ZMޝֿbz"j g$_ X`;b),wfNY;~ِf\_gBAò(4^:qmcccm1kpxdSw;Ge>'܍Dõ $qDd/u߱[ s ~]v~ЦU# EFkNV}Hx6k ,R:?.U=%qu`8];ocAe-8wAף۽{}/LS3ݯy5D/­XW0G; wuѕꯟ/f ݽ})+mk>pY".csߣ7&:s@Lvo,hæ)7do(R4 ~쿳d{ y"s?{B"u5A;ڹo‰ysP=姩rvSݑCo6'\^.>}.9d7@R'ER<ѝ~HE kM"%{Wwc.>:K{}2m-tHܰʢVycq^N̶9NoYR`^o{φhod0[ ] 7|YF-0HD/ҥ' @y,7#XYbˢ7<#]4:5dTs,(lP~QkyEL7^&_"¹DslR xz(eX^>ݝx}1m9G繋nBelAe ۣԬR#c-zR4:bKº4V c$Ox&I3YtӍY]~)Ok Өqy$F'6q^~mU CX*^Y0DbOpbfgD W팪-FMY"WTP 8 WPڽTh$,O,Lq)!kAS _N6O*-ԭ9zryYgHr+ dP`FKl,/L[T є<_r)oSެA32O.'8qewp;MR̴Tx;keD+5=8r[(T&V e1xChZUU,WCOO/qPI / (y-Hpdhv/YS?m ^S= dWTqsXWM:F*kkm &FO`9û4)w㵗& 8y }x bB#iSpZش(TgF]P7 )5Y(,I׿co7_@0Nw)Brr 8APdDvWڡSEw%&TI1SC>e_6/tL6v7bDQvv!G⃊t2چCH,9u5UTp. ؉KuGsvj[jo toW'Ch~xt"0lɢdb6# -F 51 iav[q~G -vj]}kUx3,U;4"MrN`WJ2IP`n W k΅?&Ȇ$$H'NmSZ6EW\O_A+˵xl&u 7ݟWÓ.>o[cBG$Ñ'G˶ 9.V !&Y~2Zd@GZHоmƬX&X1U btPT2sv&sRL@PBe62k"S{Tss HHbVSC >9pH U>u -ber詸l8炢2[ȋ ȭvM#R޼b6PߜŗjhQ|iCZ+Ȩ?ݪǔ$j2uQ;k: Fϛ"ʓ_Isyaw$LK&xA-2`JWl$Z&݋L ՅMJU`[#9Ox;hQЮ`1U__ePsw Lĥۄ8` |qm6u Y$_ dzܪK;b5LS#zUO KKjaajvNʥt;(`..ݝ{â3d*^+Y^Ka_. R.aA3rjٔ,.g¸ӷ DKTE^+⇑SE{oYd.v|]]U P ).^Tܷ FfEH PLX~Dm*;ht-T)]@ ș{)Nbn;^ ,Rn :G~ gR}hZbr'۾KFGk LdKcBlѮ]69a-gwG0F(֘4c햜KwB5$3ô^SĿ,.qzzI1L$n12AZa3 }NH-Pq2כ4+nyL8١̯2bvb*i..o[ْ/7[T!~~tf!;9aDs F0^ddJ"yyMt_;B8:\Fi˒,;ؠk&D{4Vew̶ ]D]4fAmGѺ䗣E {dk]*1΍o5鴜DPOSbd\nWpmQNC V.@VwwNS\\OauZ5> _2QV̶wG:>.dOwzc,hE2*JB D>αa @Dȁv4[E2 q/fK\.GQ[R+׾^bY16!!;봦8 {+6{^"2A ̺@p}`rDS0Q=*NѿKI^BLr=xdDQ֫%_f ;aҡ)$Ro9I^xfޮ;%z-Ϲ-馩.oSOENl6uk`ǣ[͆hk= {f,l%>˱e8l2Öᝩܴh@H=\@pi^cԀ2Nm׋$%[*[0_^Ks8d qRaE1jȨox GT̗ j:G[/M#A&8}؝pOS[}7~ ] dPۨr&5-".:uJ[lg-y1b$%Fش&!\2J(F#juj}lܩya[ru4ͧwlƥˠMnvkr8A'Թ@ ~?z@F|A:i8C^^BVo*| (6p 0_E<&Ǎv&dW{ǯw S]0uسu#vdFҬ &),@Ns9RݹWl^(+D@ N_V`vzf:91Խ-zXK$Q[a-;%J#)wIȲǿ0~7S  Wq͛im#_yr@=I[,bޙËVBO $IP#~x(=ߺWѭ \e+I4Qx|G(k#%ŔvP Ie4&.s4>m5[Ѓ:Le <9n$XV<?֌9m蛵]W1l e9H.mp_+A+ @v+F P\en/qʟs[?Օ5zq*{zJ띶qeEެ24ٰ)071~I`ݲb֖Gi7ptCc(\aUGtކ쀴3,w.vR6MrGGu0{6*w}@V]MvE@Lj8O ؽAk?DuKxRsFD1I a7KX352N2`p}Ju)c+ !;!؈Tyڏ Aq;*fY!ZiOv>%yAV>5'<. eُw^f^w%ICz-7}$6Yl#NPn^vnU.wY.g GW0YZ>.Q"{ lr"B^5oܣ'&ޜmژ%C<옼[[ӝs]>&$f-+{W&Wm9 +Ͻ BPx #"`w:kbwԔKҡU5ov3L cp\ɉ3.7#QVcHwc`&+dԔ20݂ͻ9h!iEuZypej5p~ʯŏZb%SZ~r7 sٿ2V{bTҬq/ ?uH988jvwoE?/ D ,O?G{  :*{)$:@Gt^KѤ9 #`q"`.]}Dd#[TtOMgY"0r² ya7%W)IP#ԫghU] ;Q1'H8}?ari;uǓ^_Kp8 *!v3>2$gAuu\8~b^> q w=)[Z(:c`MvC]!\o*~:RVY,Y#r_|QI:B^S|WڇV.]۬[VytTT̢<Zpj0^êeEhvխWp:=Js(W(I%U‹*MWl"t\_}r'N^ŏg Ƶ.Iޭ 6k2og L!$ɍڊvc凣n5- PvY}6 421幌☺0Osa] nh+FŁ+y2%_?kWW3/ӊ2hiQ(BP*wVfc?VY(7p AXI|hp qOVY˷]ʂYXM6E^QTM%CbmN.r&JBAlC} E, @@s ףu,iNAK{j\zėb?E5B}u5 u} ,Fr5Ox^$wt&rb2]׵_ sAIN7Q"QXaW "#MQ |NL3ԑRsHnV}0G ]z+ B$ÎgP!I:fNC8MdK?#% 9߃:\һj6_SFa+.z֟ũb'~в Rn wGg(d\( s@)&`UV|SOzv9- ADw{ ],*HZbrn9LB iwa'(7d5s ꖉܔ 4pXڅWa;(HT }fΗg"GGCU(@ g]tE^$֎ce9&կτ0DZ.M&H'30 Hf6E3| bs7 .,"q;4`E\ ؊j ;e*0Qy+r?\A`:ϢGV8O5$-j"`,Ja߃w>&R脐向G{ Rz7|w#$ϮOæDWfr̗D(}QSЦf?npL`ٮm Ck߬*e7wYo|PGoƫpmg{S6;'#X 3&h<,fD8E_'`}mz6"ɊXO@u!#vp$rؿirD1H6tϤ<vnB8o>ĩPsiHI)5`XV̕ 4@8$a8>Ű(@~1~͸ 0ŷ; S''T=.v-t1%$Y>G;yvsiϋs:yLU_eATm} ar@"O"1B\jy ^O;q;L1 +W+ˈ5j+V(S ]k Pk0h]g,I&/4efj { =?ɜUDr=tΩO(|@A:E)e@6RRj. ݱbLJ1t} O~ vvGJS+]I% y//IF277Fӝ͊F[>szTG Nc3Bpͬ+ROi+MlNUU">M*&,>afvF%⮗~k.QFaA9N"0Ym}CGiX5UĴs tvUt(K`TNEFigSWV}݃<۞08_qA‰Q7:RڢnFPEfAWG-Y&YťTjCXBzM#~ vA"֒g^t>>pjj^cnԨ%O7Ԍ ҡJz =|9C;"mof֐?r0C.{ uzAш묅'Fc4.X#6-{AANm.f_"3 (OZ⻗aVOjn>&]4Sǿػ*tìlz_UG k2"aƷgmeƛY[Y˺D“RKcM)d4_D2ׅ"3 rΟC .(/1S7+Q0[4bwh =:ՖrTI> wiv°egÃi(KRyt U+-A=3j+wqD+e=y7kc뙮BE:BY R>'4D rQ`a*Q]anwww2*̙B-!tJ[T '-|ʥQ Wlui^Qsv BB7 r@Yp- #,°%iS\&W`UeN4crw>^x~*ϕyBoڲZ7"<04 <vP*iq26^&J3iلg) $ Ur͎ʽc0!B^5MD"W9W IsD+m1~\Myފ,3uy|A0/ q!Q+!ԝQy-?L|2c;P$IFu{pAPP((j rI7eU@gSӿ0*alŀdДyк)UUۣ;h.^ J G,yZ!Yk5[8ETՔa6STk/턣JX/+7 ,Je7Dy_`4bߊC +߱oQ9^QӏZ>}>rUVzDlj[y[$&u X8lw8NaևA#?bȩcPIzûǭ`.+`U[|dÓur¹~R{y,f6_w'b_~$17#Rivc7l Qq6|`7jiIN v'HnfO ^SWW%s=ąZ0u-BRV@/t--(X 'w;SoE4\㹹ԉMA0S3Rk6N4]F]Y+$74W{"tڿ@[4;)1ũ`ztEi{sv뉁 GmR1POscDпE Mc2Z4Mf`6C0 9AѫA/BVěpVqӚvpCބ_.? 鳩Y!!Nou!a]MK:5Ng~Ft/`^ʛ[z9j#*r.nAo#la3Df/ ~RV%_XXxy( "Uccґ&kg*Ű}?(7ڃ`׬} 0xXmQ:l$ǹaϨ< cYf>ÒO-..1- Tq򦃝' z:< PEϿ0#ma7sUCZM(ZTw7v/[/4,@ow6T$Fϑ+#'=]sC۰n><0I$>2z3wQ ٠iX>pPRla:2sv $ j*Ƒ1èU6H*Pz9%kz[D102,,DH7vr##6$}D+}nk|GwH9DUT%PV0XsXxZ@rJJh}X=K׈YRԬSڔ߾RϏ zޞYj:B*yqlnu݅E d욙le6`|\].?kxz5q]ۣ/~ /+wt0:ZGKk:%Nfw孫aE-'X {Z!?4K| LƄ Bf"mU7㩸AjA .Iͦ[(AWF UɌ,?| q &R})+CF8=u}.޶b%!Jw/[ 8~?k/%}6$eyÆuewBrKfǾuVh2_EqrVl/5NzPZr `>Чؚ s5^>RȾ/yY+چh4 R|h ·~tz`N.䑙c4l)6Aw>hJo9zE¯xX!Mhu 6$=iq*!׏w 6|#P{/ڝi4i0612bSu2ӗ]\ ]{5b2[MJ$>99GM_E\6 N moi X iXsSlՅ"Gϳ  FiJKMi&[vϖl_5Y]~ybY0Yxなww"ӳsvr܅fҳH!ώT赂C-OJ ]}NFA&]ceqd=KH?RXs_jLz* !Vd6X0DXmlV^ng`Qml+ (ijEGya Ϸ7EB$F%=ZG39lL#bȖ.K25+= F z(FP` PE,Cr+t V-PݎEN+R!eRW;!j_A׳S^/dZD &=lJi/8_hJn7=:Z%-Ы*WƩA i*yCϡ Ѯ0[7:9 ܏YP,5EѭJ#DNw IuW>s"\χ+"jHٲHFA˗52 6TAfTw[)pk4nH0M7OyrrI nHxqaP|ͰC-sp8SNRI,(e,aKB`jX&TmY%^  UexN &t$J0G4\#pQnmQU|{jа$^ax닃}\:.TClFZA. [&G"I)x~N|3`Go!,pg;2qDtq< icK*B3xBUҵbk4 \N(>K;¾Oa{Q§$Q<ׯczAC <Hn r]ĵ-jBF&ۥ#01~yhm~}y e]({N^F9漟p{ -?umtUґ8? ^J$Mjq;nR̼*UeNK=2gJw*{V$iDr !wx ~E@뿗xT8b k-n|}FwD/%ZF@&gbe`/*С]=qDoԳ:,S1L̢j)W DFGpex9g|}5qn(\]XY*w:^G+qaɺajmM( }23NEs?3-s+B6Bb^\{TRQM%<ؘ9>:Wt)cjCN ~4xciEk "dҮ?\HS s.gN!م6"W4 c|D/t(~7& NZ>m4-nkʠʳV9ҦU!(X057f"6b`_ {F ݩ|fy!UJfɞ/|"l[9`9WNCAȆ4,{Wq\j7{tʩ=Cm/.W vt r2rً;aڀnbK>ogt>C5'{)b%{ݠЪ u$py $?<0''|4[R$H버i2ݧ|+:Ockp(a%R[VT{\gnLZsOYD踪%T8H&R~^Ӛir\3C- =M jD2A}Hu2Bl{ζ˦o}N~m[S/Xq"%y,:sJW h]#^doklќ *ؕȚ8VJիkC@(4Ѹ+2,;ؐxbR 3HǬt)un HԖٽ̿$qL%?Pb,+E3{CObKO[ >]uPOd!/\6˕ڔ- X @Gln5w_:c( 6<r=YfY`Ow( =!ѽ{w'#Ώ$53RSB ߼Q:.;>BĜ :sgx7ˇ7DAn8}&KrW-U*#jO+ČIKь*y.df~ I&VL rg; E-{:R82|2N0H_0߸JuѼ/[c#] 86À | 'OJ. T#L ;f߷ )Ă^˛W}{dop._ n~.%l53^ѝ01a| wlPQ8WcwB$bJ@+9aɰ9u]WR*Zzg) ~w隳T8:^awr "2" .f q)fĔ ׇf^kʎx#x |_2oL zv7u2`JV.':1<@ӽ/Ԩ+}5rp;T$_p=IP0sꡑ@\bÄanDd!K} m-`e-~B -_ Ms=7{s!m"id%aa_:z 刕{헶% fcqWRD Y9邙D$,KaR&oN'*{g o{  'G;qckd#؏9-.n:ưw +w6.ӡ5/PYx_4"cJ°PLW0>0r1r/`nB[$mCfarAJ.ⶁpr4;!MI{}8 IE/1gjhhqk`aJo8=]ҠjU]XyPTNfhf^=L(I^DB_#&MJs,nHj yMgA!fX.# 9~ӧ"%U_EkJ ԇխ)|#0?cPYp eO׉O>ƎܦfN.]weG}@"]QDB(3(]Www4q s.lťVCf?݉4_-ۄꝧ{]D?9҆EBVQ0nZ˕M,^M ,ՐJ %pUh:'0P D bGD81y!jUO푂݆N8`w27+d-R^VOQUH>S8즔ir:7٠9&D, }ij@THCKXe>irm'wE%'_OWFR}Zܷ#wê΢5.;!fRKÂ$ؼi F7af;b.װa)%[]0~nu ēMqOnP W7*ml t 0jޫUڠtNj9;n}oūV o~ WZ=2s`egw0—-8-svce~|RS|Yp*10O 뿎EK-}!鍉yH:ם%`o]{/8)j*˴KyrGwi߳ K5- [@ 7=L]/ϒ֠^Y:'='U"L7$>=tmi=E@9%]ywTI MIFɃ$Zhʮ4:VY/Ǥ-Vj~W~T$w6.YÞ:^?inn{ѫNt-} x+Q'2C0Z-س  Nܙy꽤/ r0r Cwzܴm=fZL6A6qOI n0^3?g,^,)3 bqyxd=# lIeDuk>Ь_o~ߪ#,z,%޼&Wb(DG#xŃ͂7i:Y(ןx܁LlnEMzNETeIBHf^> $Z]aG^NN[K0PH$b^(5ŜH_OrJW $:⿉jfB3J3'D#nAlp$[i2Z  $ehfbv|A0c76f 7uz e*DFL GG+ g/^r VNgo2l֑ P"ebϓФF& vBLo7b1Q! o;bd=LC78ztpJi0. ms-8pLܥԃNe~>AȔǐWAVy[|q { 8{up_Gގќ xCKcN7zOVk᳧:;+uÂW T/paLBtUoEWM@ŒS1"'I!!kxm<߁l}t#Ҵi thGګPmʠZ ' -]_~ "{ RqΚIR̐'4r;d 䍂yBKoR TbcNLoK>e+95}6}82eۭ Իm:?A X~gt*1O\\'p+-8ZAnp@f\`W< P /cQgJh+؁נ6Z!u-B*Eu:$m3`YwRgt +z!/ OmL@7~^kz{5{E$dEο8o"2u︤hy팼@W4]i~g%^g@œ^"m1+d. CנvR@Hs]T-R"m_ksVMTQ\V!`L'r/˜Y0B%ϸa)}I=^UqD1Tw_HXڍd'(Qݏ X 4^_,UZͰ^ogCu[a> FlZO0` 49b!hD-ZAu*;$ L2 K#{%Nx{(̀0%5Cs'n>CO=Hy49Z7q͚TX8d3B&T$ $A/ w`['-(\y=ܬX3唒Q,믂mq7wqR{ͮt=r0,|&Ś|;> ȵK)tw^ &j Y=7i@e Tvb@,JE'tTAI7&Yq}*9A]'/j =̙ռ<S44]=69wWU)7xqKYݼhJswD#0O7ۨŪps8͐UtVgi׳w∫kj@Q Q^P _s1S$`\JP-I AIt+ubk'S78VZї]1gK?Hz\-Acı E=QjPn^0^L}xvUpkz-, es/6ui,1ec%n6&0_EB&+Sd+Y؟D٢2,}.Va%IomK&2@QdZ2zWVOGB=jM:HB[Ѯ*Тgw4\sUBu|l-LN%~oQӫp@SMx@hV40ze4]͙R`_~@@,٦FE?Pp˹okߜHody8\0338E1nnc8Qx܋,rnh,へV˳4beg1:-=]>|y_xوԵK,YzfAE|5̼x 1p0Ȩ0pXlS1m|$X%ZQs}*k:pET ll6 Ox ~[s'٦ MK{rP:}yJU{4kE0a2@*\Qb4GTCeѧ WZDc}qjIu |*C?:`Ƽ_O[_PIre.x2ẕs~$YR3KIYܰlRbgd-{벬W >7t3V?>lOCx}~oBBȱie0%UO61^Q@ s#.{ɴ3M'"bR S߫i5e3;v-ն}<lmEg!)1X2%ʧBjϖQW L)nO3s]+zwC4b3u]0xXe -J/s8rh㈽Y:JLoH빃,L'=`U2E)-v%~w#qق[x˝JK݆xČ5Yg0~(aݵU Gqo]0=ZV-G u&>\zt~`OH)7@B_n*"I0(|^=:'_}Jw xe8x j"Kc^tlBY18@9k$3;AEl(n֨co:[xv"a5ױfTdPf W%7k[!(ZT8 Aw0H-3[J=vt170.?Z>X6kkwsݭ"1tHbo ٥S7 {>{pFd8~>[IsM'oR4&(G]l'K 6nYEM~ss[!xf~5I4q=:Ll{7RYx;Lۄ5GI NhaS'UZT8s#s+T)FqLSö_+a){dJz֓#sZ^{(Oщ Q Z6YRRKc@Ksy<5 TmJj؊= .ɤ~'lIzj=+4a֨±q|މUaP!ѝNt%OeI'6 +uz>W @ `v?gɸ$+AqPVZ!&`>߫z0$XRܷo˧D,h1dpзE: 8ˆsلHNWtpn ca'e '"vԦ_s/})$>RV[ʙ6'fUߕn r:ZJ]g`L} p޻P  /*a\f 1G S/unKMɄ5S?&?6'TGܘK?>LRKڄaΥ dbUn*LT_mlk#s!>鋽%F>n 牿(#Ge_G8EIf:Rr]C>Izv6/]nNYșd_̴fiC̝s8,!KVVr2E{І=)pQm/>$j2d$\azZACO_nъ;,+ad0W_PzO>z>啈mObdnځMIc:nfnj0ۨmvOyv$abG7{QWf>۠I7Rp ͅ K*`IϤJҝz5R7̉meK(M {ҿ>d\M7ãtnHldi4 ɜHIK+8{*of qYSEp~)K2 &#PT(?{:g𨠇xP}MV :nƳ?3b%"lK 6Lh6"Ql ZX$OZܰtnNj2j1oi8m A:QmwU-j~&,'=Jo,ڿx0eޔ`=rY;]5&aaEeOOm'!1p< ?ϵ2=X7 ;twd獺D@E`Ytcd$IݭV _} 3  ֣Vw5΂"êo$/ԛ})*Rݦ* ,`>dgRr6U-ᇕmҠvnݡPrj[sM0/R1BɎ%J/MζFAzL R:3ؘ1w-}R#m B<ƫ4#_—3 JRgK Xd#@Gtb^]CN-TlX !civs}:(&VN_BqYIlb7_g~n'%wKC1S"[iAM/tJ2 3-_F{wүpKٓ[~|jmְ]T^)=ЪzŬޘoVTs`u@zk6)) b ήȜVgz.#1liKCCzJT!FԧrjK=+a\ 83s@׫_R~a@ԃ1rr^zO`y+&NQb'l#΅ zR;|L@n& b#'fء늁$J58Օ(w%Ls `œZ{XJE[U F< Č𳃰z55AB÷ $A2Zygc9ޝ&rm QY|p?u/Kmv(~"zY~J>OtzW6BV?Rͣ+?ȼz(ZAGT]>2ja%,,>* őH+‡zծвƴ䂱s͒ÿr00#  jj芺xKFhR8{VAm* LZŧm:Of'T*i@2'pY30wb|L$AmB0TCTET[ۥtnC~*iየ icGU^|d!BkULTڏ?sJb'ѓ=6u'5y,aHm}ƊN%O5ׂK?jrgBYVJ};ÉQ/8pe&b7#FᏆB/v5ʞ`@q:l7V1`lWI ]^Dzk!@2R=!6Vv5& 'fWkkեRu./) p]8)5՝f3پd&a#z>ɂ?7_*Y Lo.b.~U9Ф1GR!|kca4C@]8e "1uW~ѡ$mSl8UԙϳK2:U=džH޸;T+%k C/FʡҺK`/ D嶿zl+ P?g;[ eTq^: }I-)*_VH(SWDQ$PQ#G6TQZ)Y4=p;X3;bȨqJ(Y*I,UI //'YJ- ОooCRm G8dW]YsG9Xw~[0;{l ~Ͱ(fcQwm"K"edUvP+̅ kp,_Ä-?$K'ja6%%!$SϻCJV0ДRiVT=Ηa]ޠ2;wڀg@[Oiz5R_ '[o$eރtFt(ҹQ.]t/%8ޔb&:{GOwy^#Tj6O#8XX9 Uѵ %0ff 81+ fj %oU\FlS&mڜO45as;~zrh˒$xnec%֓gALmGqto Z8 ܹi7cvI%@ͼ}%Km4X?}Q2\е.$Ϝbǧ͚B#RㄾNkhhΰQVo᫫ڛ~Wa/v>OݟQjm}mhLB8l0BqYFY44iɄk@zgu~ɛp+b瀃Q\Of?GmGC1_ .,өX(ϗɧJ>=S;lNh[(0.[+_&YE=i lwG N}6OI/^eTd<:Q.ʂϤji)@enp<~:5M20/rCN; YqKHABҘj~#[@2PAi=L2dN'~>N&%f6n|Wb(bBqVB!y0YKz]τwhm~BJ˖HK dXEߟSt"]oř7cMWrn,m LFu) >^j'R6sO+ȬCvbYX4k50 Ȗ'd{*R3#dh3$$яdgqm8/wŁE .b9 nPhyA 97T+E6%KpA Rr"%1h`~IbTR*؋[K ٘" q~dwݒ[\ ޑcCE[ο$kp;lTiЩ({;JKk.Yi&MM 6}}fEQ+EY.2Wە㹏ϑվ_艖#i~; YZ

      vI'629&SerA_oݙu_P8rReJX‹d6 8Y{ Nj-UY '̖h:T-q@VIy q~|wg I߰LU3zh!A Txq&̛aKXރ:+r$'FC5pra tJ|jeLyp "@ f ok5 @-Vq0C,4j:ޜ1{,5̸3 Uggdb N!:=eE xY@w[j=CŠ ̩@4K3U"MQY&i/IZ]d)l&<gz5q-UWI]`Np.J7! J'F:*PQF TR&!7M [g278;6[r9;7\>kK0m}*7DdV~!c;PVԎkXdoι#%ͲsI|t_~*D/:i|#=^$Ė]γVu@NN6ptkqa]1?hT_!Xr~?Lc ,W g#W#.L˶w Y5Isi_4MN gFŽP^{ OhP"C@мHco)/g|km=#_"_ 67L1?ju]j"OjҧUvc)MZ{+\DBe| >-$q<d2.ױ\n*xuI! .e)q%N, =Vjuc/H&-~@[truTn0*DAu^I- F޺yE'{Ci/2e[LvAq;9bW~2FZB@#}܈FgvJǽ]"`@3_yRa+^?{3i'`FεvW*g_1(5Vg{ vg]rxl`PėnЍ~^1cAj~&/ ؆Y9AUE\Fቜ93+;˗Gsy5`e&Dq@S5 ޹wѩKw"SѨX :>o.%0#)׸ O!q;v%Z<_ |J,*K*g1E>cA^ߋ%'cZ^ТAlԱPszk /?fs:`+݂$eW ߷<Z@5paBHK0;Kvm G55*pbwtoR9ܪ QJR˟!8Yd' s(9ʨAU{PB1o|؂Z0A+';_/ri EPB,ˁdaõzd"脱Yubm4t4 xZlu,oکT4؅GBqlUXQ*7D{M8ѽaVgs~$Ř$yl3K3A0#i1Zkv,.,7/\:)r4OZX# =ҳq1+1\o?2i#өó) I8QHx}BNE&veauOc,aW[>߄`Xj֠rhd>xMf-_ػ'Fes`]HpaC֎K%6к,],l?]R1s:9e.1hBmiG@;RU07*dɖc<܉Rmsʕ<Ҟy2;wuŷKX⟈apüN~琲[55: zD*`aRlLq߿8tDaa#TNQL 9dW+G=|nZmɴ0=5ȉi}hjB.d9~ܝY6[Q\C>$h}kq.CYb[l†rf-{9;|ق~Vs<ʏ`}{oNBgQ4K[^{ ѻ,b*[q:qP⊒H'$eY:D+~@ >|bfDZ|F ͋1mj|t -sx5 .Lu'?Č?fwL'X2TYQlŌ ?-v GlIy2zE8YƞJ$m"LjȧfZi >17Y @FNaX $lVT l׀jL{vL Ԏ@@>sNO,:bnrh3{hxҏ&Yӱ oM.368s~bKޯ`_8ܩ/j"wױ=7ȵ[,ڢƠ yV27>aDd/-Ld޲uCAXUBr0*Օ556b_3u0DBW=mǻkZ'L[{T>ꛛ_:G~ &ǕXyq|˞dbs !YzF(P<邨Ŷn{TVgN2=xw&=;,VJjlQt죏){n q_\q6Wu1A,"YyE70%4z1ػv:2˟Ċ>cZ`љ*J8T7 `vCpW5NI$4҈gdrd3{Pxo%lmPh穘4 [Lc%C7NgQ4:R M{XJD&M2,ET%9$[v(~ui/~Zq?@߿U#WҀ`0QzsY| ,(Tz}@K9:C܏ReR1 ǴLK*,(@Pd_fc.Ų/<^CoH٦C},x=K[p61$G4Ӥ:jw;GI{Ok`l[*܄N0M~K,FcEC\3k d#ߵەٞ3wZAnZ#?EyYt`zm=bROi&MPdxQW5c_+{N h׳Ñ5}+ņcLۈ?O3,S5oQx| $D4$+T 9cdE-ٓf^l9Z4g&odFdT@Sg&!O5m#l~E@|[Y~ p~Nm;fR VLxK<#2˫#k4-!\"!ps`[n2TՊ17Е饻[.K)h$diI9b·H*5hzb.INmzV8- 7{u]pn"p_u\$ 8RB,m.cyԐ?`PNH0sb0 o z .>Qx"5 a)pwN}({{~DgB1Cmf~]}sAy@ȅBp;QpƏf7tπ~,iZ^rlss`bBIsӭP(xFiXe \L;5ed-IzC/lcC mum< QܵoGxn_T!<08nSW'cFHRH=ʆ=eAUkLu}Mz)`x>Aš#i_{ Cd%y|HmxB n b^P*j?2KFM3^n|d;))r"R?;ê{l)n$5 <~ ڻϳtIMrKH(3P =5y/kUzHnݓd?Lռ6I3;I$2>}î{=S|2oF)nzZFEw$Ra :V|-6lاX:sK|Lzv Rd~ !nFX[OD3ڬ 퐘p:Ό"K蜪]u& KlF]uUe 1lA0I>ŬtN'*Fb}p`tISGcVPQbV< mdzY$(\ "D)ɓ4dQqZ(_h-U5$Ŏ7M(y,/p&?>!-QzSu:յZ} ̞٤8G> :n[ҸE x Eˍ9A,n%o‘E<|Wt^aY\Ldz~MGyC'%-^+>ɠ< svcs&,r4ܔՆL'؃ t qx]ydΚGhւ]-0 {-}u)I߇~ 2~u[X/@ϊA~^q?.zcy]W<0U-qDP50Hϱ `aď:G1m0|\q^K^qONC?K`"R@B[g_r0bIصQ8E暈gِ j? =oNBSٚHX+oȡ]El(li.n+2_U$Le*=9QL(? i' M5ZfJt,܀6_0Gʄ@r*lŖBJ[!"tqwF2WS}p™Me.mە ?Úw&~3Mڷ wڶL]Pul{jy +^9/PV5(:Z,ZtHs:$:[ /"PtUB LH5JE')]j1ojÅhzO/& *P)0SWnCH)sⴸV86lIZ.~C@`lb[BzF4,uLf`$BgQEB/MH TNDwA.YK(Pc=z_/فҮa茼6=1ȌH3Ilv_.= xH})g@ך/C3 $ٔdPΏזk:pXS,űy<_J{ɹC2P89#&UH@^Eu +S{r! 2k(w ( ?.֩M@۬/iOO $# AБctd ھr4*scOv 5TcgN+ȵ(zHoД]`/,tvD +vcESo#DAG&𾐿O)WHenW㇧ 9O%ve%%1܅tQM*/M Q{|ۨ_d(*K*f?yp޺H+oE Q/\6=Y?ugrBj`$1X<[',jS.OʠQd^2Rw 1Úk#~-ݞ"3/.ńNkWhO.Z'1!W?炑|ߪjrOfGT|bSc_:h&5];Y!b89ljJQ[oWR.ʈ?qzckcvM˘" uvz/vCڔ?fmqdݔH8Ջ`9Q,VS`%&fMn{@3tB+] O.d_ ThZ#F  @q94XFBH~e|_Rm<+rsΞ߭ l(2\G0!AAAUp_rz1NJQ|X7c N6$ONrk\hF/`/<z&7'( +/8uZ,yiw&_boѭ%c;) ;11|n]ia\:ְ]7@U?_J@3pXo_IϞp<7O TCƑK|F`0䳣z-c/mphnPB}xBS,Js Z,GŃMkQ0>v3\EC sqbUbE@ycF}bAa8n5<-r. 7`܉<ܹw~ _6Ģ᠞,X=r+  On/jXpUtW FG+Q5~U=R'm]O_o!A@հix=d-5"wW"_ӕX9׋e Û0%CxLIe8hw"_ 8Mg&[)U8d]]ؙײ,D"Mf[-"JD-]hswxR#ZksɹrD[.rIg,^?7?-x5QCA] ӓxKB~{ּpr$ T NFd u ++# <6@F>un.@Wum`ڰ76-j`/ߩ¼̊s!6w- I~'LFrJ#X_qW'IJ@Y^Xw|W)~@O NB#qІOqa,j.Fw/eK0/ !9}r(YskmAe?űWEҾ\~m,؎E֤-9 0j_?jf8b۹ %N')=4bJ]8fo+Y'[hx7x6Gc YѤ>w\5PG7yZFt;6c[")&JN_ᲀ;zlS$\2%AiQtSb_r㍄ZnT[ʦ ˥K~\71 2-@.w:ua6Y[( l$Oed%Ƅ"7_y!& F*xd2!mJbt%E`{~9OؾU2aG/2:2,Z[$rC\ZJ]Q/La61f iL &3tϗI 6%-)C|{N\aBSSAb z!!UtF|T-_P3R6pPJSIDŽ@v7 C ؆;~m%1LRߒiCDp[Տ+?k"Ŵ=120į?y+rf`~Ar,Ϙ(Zd=Qܼ`q;&J'2jI l$_n+(15bH8KD4>Nd\6yb,x*[ad Ӫ>k R~4@1x4`PEwYlޜfr*q 1w\{rF~-S1KhL> )@ "8}ۿ;eqdeZrj$u !عOw|[Ɛ3w40Y3'R*zvXZގT>5J%/Kd[\fp3h?Q@K*$ HllH|aM`}ˤYJ2>қBe&V6LɁ|9Dw}(lRQ8<h+Ud۰[^x͉^ogjd @b_S7`ߥɇ/,$-}%lXRqHHÁz};`˪܎v#M/P6 &_01[_\SK,K, K0Y8&@'p/;8TK p5XF3[{ڹL|2雬xM"tG FA5E';q{(ҒBZlmd4?wyk3Uuo&j{֛U,1]쿃'@ =9mw%dmRB-4󆁢zWm %|0§_A`?/0sDr,L ;J|NJXTkO^ESxƪ0[1'15gAaƐݑPWZ{AJK!2 *4H"p VC"|y׈! B[w|tAM+{'e7/f,MpG+U%O~3;Y~=}QF # !מsp dQwv~}NK_yťtoh݄8Sh/o͗v@- j4fbpCwVx"C_R:2 15|Ό9S^FaI\W-)#Aq' P>6-w\7F Fc"!d}Mz,)⥀dmWk ,k'1;ǎ( 5I{C̻m;}\-c߭fyQ %`K $iRMo&TOۀ R@dV]uĚv?Q~4L)6f qEeU)T+&9־yw$XYke:6GJC2ӍpH9.MVja[~"&htְ|@Y"l)Ԏ#lbTXt*w#_g7CeBc8 Gr;!&$.WuW4d'3K[ſS{K"a6HZ .,&_MH>֛yY!#|Omh  y0H?XWHv_:?[cD=T0V8 p O;2?N w1z= {Agۭ۪R̕,~}jZ0u9Dt@?st'F PH_;0>1"e ~)Q_?1yNb (_7X0T_+b 6\*{rC=U?h *ZCHXثB*bτrU+{IS]G~+UitdSC$X[Y6oZ9rI 43IU1ς5%%=XO""dɝ vֳ`.EN#-ѷcvI3\7Ob$hGf:E3*ɰ\):WLՈ۱W9 '6j.q9Ěp֨V!4|itMo'V'\ts\1y8p%2KrR><7y6Կ?wvnH3@MVy˺og)ٻ7P"1xhd"oXf[W$,Ϲ}[;eiȰyeDx|Q褎WV up$ųSgiQ7.[~:f&axr{sn#BLF58>rapI3N5SO=n{<߯[8n=JP}ޘ0\oL֫.l HeyIm"%ZݥgJqςLA/Kl H1"s2 o]pءA8ןj0 QY֜0Bߐlե$wIsYĴQVOWlMʢr>>v/O cAB h_:` 8NW}6cqwf'=Z^!&I>3+ǍC+s@BbC-()T.qYkc-z]3Hjl04dS9zOGfU lDxT%J~+ }GH|0\1H+\Q }[EPC;^ີ {kCg6' /{BQ$XC}db%)#QƸ:hߒ<)(vIx=|=rЧdKq-Q45'C<)drv}9^{NHs`/;>@!uoo!ɆƙCm ;=Jf%xb62Ε=)\Q wk(&G!Ko'[/(2¥s,(y pߌ_\Qt>)zGNg3 !t|D8ypǁlzpFZsWzm | `LZ֑4?$1?pp̎t@?ҐXRI+ku,G 57\c){ɺzi{]ShP`/҇1IRj\͎3"#) OM; >SJ,2Mf>ÿ\vb]kO5Gأ v?:N Ų'/UG R;=3[ˋPq&eЁ9Lz3gM5|gECxS}nv;tI&kp< ~8_yso)d,9n+f_ՙ\Zl{WMۚ ϾR:jz,l')jKtbCM?138' R0Sa|i( I+ɄG!rX?DGa6?ohNԹ=@rF>5#6r 2趺:궬4A'OR;jit/Tص3ek٥01DMo3ȓ[ πYz-XbHpط}N73 qm 3R&VWsXiX[kWx4>v3kҝŁ+gu}g.*VHsJF0Z{WXsv4kDY< !}J`&}X E!YӤ-$:"pdž 6:huB_Cz !8_2 6վJ9hs\+Lv `2QemH*kH`!:K4hF3Fͻ{o3ǝC6ѝE}l;Hv>xDixR:M|Jxt$&q ԓ힓=66#~ "ζ%3(j X˻L܋gdF@%=/M0HWiGn-Ά-eUX:D'{p "[*`bq+pe0n9Wh\_\ #"|g U^٣xZ ]o[\>1;oJ/GIЌr}aK*E>'!AsIa͈ƚ78ͣO"^2ܻ=]'lHrޔAGާx[tEM䐷[%/TTxvOB7'exY–&i|;6np9f!rF^ry=4ڷ ;h~וt 뚲'lJ'9#>rH$@3>F#Oc3_BHI .{3 ?ӪZo|N5M2.fe1g<8g/G0E.+ʚhlF)nR$6+")ө\'*HUQٱs96,Ҫ.>PQZz:v Tr{# G9!EXȿxl"CƮ8pܨX5ʼnp($*!U܋U3h&FH@O.$tN=T }oykVXҌJɞB1oS8ޠ]ѠT6QR8pVyqo:ScV!LiwzxtBv) RۈDhFiyW?v\̜pP'8k!|2gǘhX( ~rF&O^:~zdY J$rJ= p MrQ?&N6W" /;c?D ȥ%cb坻ljJbHNNf+@c .s }>{WFY9^-lZcy-E;m[ #_hXbгv9M4qyo:Q Zryx"--n4xjį:Ըb2ׁ\Bǭc)7,|cIjEx5z\g^^`i1H]=شw_UE{'#?dXj/(+8NLEIϣN ,\jNc="+M"L`M|e8G׋&'4vcJ F'YA2g/{ GὍ`Z.|oitCY2[{1DϺ$$|IvpNUswf['T>eϬꑷ~1c>Y<>Lz^$]y[٦;m7x>uei~\ Zr0J+iZ{EP*/F*VL=Ay;)E811d)dYI)ZIt*1Bc WErPfD}(ѼvBu҃\WҠW(XG> $ Pe7TPzOir-f2(,2>D2XYXA(dx%v`6q.T Zm--y۔}?ddS׶qwG|A8kܟs=~جV>*ၚyveᾴ2*ɴ&0ҏǖ]ͬt@au!)}"7DsTtܮxrTlzOa|&)HV0}$4`t  ḬQ w gOJ?AC }d:]r 9kmyV2Vb \sJPIMH.fsϝUk2(W<)&oJg۵7i8ś!ڬPǡ( 0c`F\-0m RIwcGS$6k>G Z2Thg]ćO+,vXC65I:ĥ@38iglEYn>]쨇hw l7OkZ=t;j+/:!\iG`+$@0T߫PȵL2a\8όe*:/PJ7 tf8meWq`jྚ!$hjBs <$seP:LX  Dok98X>k~%ox8pkA]^uamW79wK8~fV (o,} 4'IF8ϳY2-0DC$!OtOS 2jET|-^D>.K$O ⣼#;kǤȕ99pC/P ae%%υJv{, JGrZ>ӛ0W(>Q'6?3&s0@R~*MzO W5ceU="糪@t|2AR hƐ`e:*J*4Ǔ`,UwQĚ,#f#0sl ޮՙu{dǯQ~ɗ :%q|!ǿQp;j'VHwjC.HL9lw2ݤW-{P{X,ġ-g(SӉ^TOQS秡&K'@lS_&ۄ9)fUC܋ v*bxջeI3fug5$5H)1`+jckÚRp[8)5X2[OaّDRc8CSi&HK]wz2r 0"TX!G6QvXMs瞖  l#Ϻ u+ (_mĬ1ȇ-:M<)̊N bEUד@%d$^9(IEת)hD2&ױo.,NNok!:L4L]3B:6N&sh$iQ~ )"l5.6[" kj,{AHBޢ<[/1T>te."aϬjk+~o@)iLgG圤ZKAee:jHguu| MT ͆ŗъQx[lj6"q,"3)s% 2yf;QWb1w3-옿c@X`CiiU˛%lް%O^YϠU&͉( //26G <#L΀l#}JmˮWxWV}Xʆ#Ub& N %lh"C޷fWiJk oT$ژ1%~`ƚsLu>3n*[BR~Hz\Np/Be.@½V?r5%idUugx_H8|By\=Sr'jR kѤ$_r/_0JgRYK? w"Xo4eݺcb S1hiLԇv/HW^Νe4_y|[H"R-;!*gG1uITGTՇoz涀jkRL;J]i+'XoO=2^O?xN8diSuJ; ʪOMlmp ш.9e*ś žf6vh`vKOZ1}'G:ӒIq>;4]*ulz$$u;gTג= b]E4"jFuT7#9I9t9@f}y  `cC>g+K:(@X$Pe'VIfBa w}8 kh1C7Nkpi[3Ykypg7'Yw@L<%>~pSz-ٮnRJ7Tџ-'A`4*Fe80Ƨ;Ge񊫮|H<9}iSGR夒ê Dn"|!  a ,\r?׆ֱf.'()E .؞ZGB 搵`~!l~ۣ_2+1cz%4dAPh SC>1iV(aZA11r raԒ(Z_n>SwA)`UWox4tu1F+,sZLFV-6DmS*@0_ Oa8Ja^:I1.FlvjL._ /hKRR8VfxE`!\@m\ָ喏ErmEaMFS nU.slp*j*3ח56. J58q" vGfJk-¿dxǵi]kiђ*#ş8}*ɜZ#4;Nc.=35+1D=GZX1Fxlt*kh)D.U@|fkU B0iWBⵂ+,1\"HC7zMd5[BrOjY ea;6Ɍ(3б 7qSW2a@80=vWl`4hMul/Iۏ @4ǎ['E-a?L\c[Z8U|T8]'FuO>dLm,,7:}up _V6-$Яá r@.]tz0կkl/ڡkdR3A%{{/%\ڇyʂGʪؔ` #pb[$hѢؕ>hkT}">? 8ފ_OeY^G"Qb,Je,y}n>guфvvc*?~OclCt;^3Ǚ@L- #EFMp O}Hqk W|c]oh"ۊ/%%GDhfI=&@?4>:,{jkPQr2 )j>H a&2BnDlͺR) 5`Od[&%\q kS?_X-9!$a.LXfR0?e bܷ$ƘnNW[ |BƆrG=vWU5_+(MH\q|*1μ氍)>WU6RRvRNC&PqXo9R=f&`06}1$4xoTŰŝ:zϽrDO[3,;w&,j 8Yb$ΡiFrrٷ[|6>mq\VCvD /w)r? /'6QO]+݌`t-Ŷyc˶P_Z2cR{D+Mᙲ?1<vMbaϸbCyKϦ9# ) j!kn47d*eZ2CuE{ޯ F\!ws}oնm_9xM:yĚE͔.Ӄ3ąսsɕt!EHYh̨!r>v,92ҹ9O~[n[V%T;/"j/HΜWBb-hu61n2)-M~_ Ot P*1Ie6TXښS\J{kn<~Þח ۦu*taI\ DUZS iߣ baz63#FCi9Q`9/<׽w<{uwletDweؗY~z-c=' yJQ 2gҾrReT|PJܦsgTF ꙼nw ׷n yJ=6-7Pᗥ1Ϡ[ni>Qa !Tڹ(=Wmmzҍ~}$#߁߉ b`${6 2ٛ4%6v߯{1ػ,'Ga39Su&l9IllP;mV懎t!҂3]J,r~fGa͆*jk%SBw(l>-^'jrrICg)$<;MwI \rE3Sa;I*ȿqbpލ4<^V4thoQ)>[Fu`<,0R0/4(n`3?(iՄ?bq^H w(T[.xQ$펤~//:_N%L2Qƒ5b޻Iz5֛Oy QuHcqДPL̇T{fБ٢zwp L"%aͳP|S4Ĉ4߃G1P£~bN+&X0Ą. 2?y35u K`xtFB4玩%}>6F \Y衴DQ6x\:xY\d!ٍi A+[?/Q:TWW߃qrAU iBD뢒7JPY~`6fTi 2gX1n\k@ΛUJ:r"%]й,? {BvuI݇*r+lYgLRcFGBi.[h)m-=&rZ  Ai-{\YtmbL^6|+g]8SyQY#ѻ#w@9>t5yaWN 1ǀKWt,-OWe>[;A;a6:DjdfJ'YCRuҵ`mc}LggN1|h5_%+s/#_"* z6%i wPSB&h9b`/帚=W\q]J1mnje%ڦ}USj(Q)3ǹi2n{D1Mk1lg-hwn7vs)K+ibG3Sٚɀ'kbk$zu@{}sM#s(Aaq%)ݬɕ7>7))GF=(_$زdHlsjJR8~f[/H% ܨT)TړX?TњSjC?--jL9 &E( ܕ*AMTKa9Li\$âgiإ,ao]uK߅dށGh( =o&zWӎlLo/ p-Glo` ȌXN}gn Ű^gYu JNcj"> D ]# sFWcA."8fƿj 7}_Ǚgxq_F.5dcU}ڲ'7 Ƣ iK pB;kG2Y``)9?wNBycڛ.WQg l ܕ5nfʞ])j-So!J -ݑ0fX r&y,uZ'@̵3˪ͦ`Aҝ:n"7#cV=&ȹ%9.YQ!ur2|}^Ӥ>\QG˫QAb^E8m@|"l )J<)-v.vVVIfRˇNѶdbiIŤy4>r*;P s<|њ6ALn_ ySD$e™i(lz !]'a AwjОg,L{#nj>HsOΜ܆~u[p!_byI\:|fpo%00R4ࣛ,͚/R?si ni%?lI@ ~{lEii {G \8|ɋd$go?z7TGcx<^%t$!l9o9ee nmq]jCRƖٍYBxИyP^#Ќ2/chvKA 8ı i鼽\wġy߲H[n) 쒶]s:/ P^ew=K\T`I} Xأ]U=mO]9j.T~*qqP:KZwlއ^v3UU94 WLL[trhGk `rMm`!!*(|`*ol1_){& 8&Nq=ki "Z_hIʣgq߷n6_W{h0_%P' T鄬鿸jc!ϳ=4bG D{Nyר[|Q ^.65(~IQƛ2/ZЛ^@Ht e=9Rh'籄.LW7w#)_]!@ (.cI#|$V0XsR4vP+8< yعqP|Ǝ 3Bj,tw#:Zye^nGE^r\nS% u6p}Λ*)Z6#c@.7;c4`-" /:N'@~[*}+!msk'3¡D$nGI{pO,Pt@ReJoe-e"vekj}HKōh`N'«*)X2I. yCYtk8V=j+gj̮CΖw&$~QXfk˟c+y qzԂ?CLw/ Zv \+#ɺo4:qi);a}>lA MG_8D[Yy$ SRI޶vܫl3KS\yvª~VV A*oB)%Y"zA~~$0fՄ~ĺE|QJAm|1J& I u 6y "cH7".LR!Wuc&}\q*P$QY jQܓg, "u"'Lɜबz7k8˗pC&BwdxE@Daɍa+ @̡# {34Q0^B.{wR !G][&pu<;ՇߤT}!À}4>h|pIds$iĦ>3mcN@1HyM^E_xȮЈu2qqQq.93Q(wvv:UJ.O tSB;R@IbD_Csj%'fgg.Sc\[7}T-j>i8$`_muk0f:{H ĦUﻑ{Գzc]J5M#Y(2LR#?\Y\GN}?H8 Z5 kJZ;c'|ss0?=#/q2?y#+G+uTI/G\VMhVl̈́ K}E(ˉKmwժLTY]Wj."?=:(]U]eQGazS.'9@w."yr F䖁ۂh#c%CA (İʠ3܈_Z|#XKi2-g^m\.a{X=|b8GMk_7 TD4en7Ku.!4(0 ANઁEJmuo"۫FӢÜ%n/y3RnolH9[&pUgR4KDHH ԣ0xS[;i:h)8d"u+@X=Ga\6n+>sNYxΨ @`'[#`nS K UFyseeULM׺s0RY%{Ɍm%J{Vk0:TE)nO3wm/>H#o[[UCR3h#ع~\=72{ǚ  DEZ%5& 3qJMtpH ⳍ8hj}%$ԛtv=󱟆'N"qg_ZMz쳴d]CSL -bHM7Y|ߏQyU0KzB`=;8`rda#dSħvN<-.⭧ȼ6%z_oh@leLWS;ϗ#g%NK< nL+2Ioɞ_[;MHN'ES'e5$e|w`UaG>>D8 0DA_\'DQȄSflx؆La\Phsތ|[Lk40\A&nCQ@%Z!V1qL;@{@>Hx*8J</Y28FKMeh"HdLY5')h WUzƞ孠5EM lpլds&GJF}-I{ P6I[POd^=v^1FLa]`ufrX5o>z51>䯂P}C:=ݠmIAxmL4y ȆeK~TP)ץگ焆vg g `jա3#zwߜj+M`#h^t 6*E#MbaAfKF-:K(K^|rH7tGF!f0S"RIX9?K2%Dd8C+h,Ÿg{a W 3e/%92R:c/0TUG0gʺ̈́r@w""[|8gǗ{ػߨf#(Gʂ੟$W*;\ ۶~Ϗ؉<<9w`O,wWdpq;jPſjy4 СH#9j;{Rp|_yx,yk^Ric0[ӟIƘ^(4 etʲ) 37|:jЎd%Z؝4ΰ g3:li445Dހ(C#Q_ZSFǵW$nvbGiΟU?.`Uޒ0 `O*|<:9לcYaOq#bRB?_2aZbLCypGʾv&9뒺iK1szA<bQ/ح&8y$77y[8i#Ꮞ}R ! -F^ :mhNUBqy맭`/M$D#ʯ}Mǰݣ?U)Yފi$jܑc/:!2cZ l֢V+Jr] 9gZg1֖RpsUIi\ J8(U'~IԆ$0wS;#܊RA cб$Pk+wlj >q5T?Zwx Ʀ:uYΛGDן9G. &Yqa3J!XKi'/Ye~ЙР_M߫bKg)q8uF L{Kb:JVp̀9Ր܍!}`+)m34% 3_ N#4PHӂ{35/ U o7mRmW$`ak*\y%^MWQsŁL5SRsMipT<Ð]Q͖ P*{ WWn8@9WNp% QEb5ᒗ~Ii:s[g >fR\*N?X}^ڂ"۱[n]EQ^$q;o4"q-wH߯}m-d"^@J3i01d¡01d fv= dKס_'qS0.өrfRMK< f &E§rv$&,Kp! DkOn~L'!aj| N|=׋z~25o㷻хʶf8xz7ǂR<,1Q@g3|Sd$]CЇda)M 5:\7qP/~Qi6ޞxA0P|Q"`)Irk)H+_R_ @F8>{!Ǔ$\AǓSMjq?-"eŭ"wǰjABƻ1qs{{4 Cs "4D؊@9F2 ;Q{l;쪝zx&"Ͳ7 &Dqb4C%^y/01K,N&?"*850s(F̢&$ʄn; yPWKћq uy11o^7 q~cziU?>d8Shaĭ^ 8k*v۪OYQ{7ET}-SMԌI{l+jѐ0,tMi4.*E Ƚ*2Ͱ_fDCw&+V.-~¿$̔@WW }swHd*޼SEJM,ǘ8|Z^Qs>Ye=A KmcoafRǺ¿o.T>l6:L k9ŧS0.? Bh$bDF-ĥbS 5(W<7E_u`p6)Ȼyua )#Ha6Yz*Wv{-UWi6e\s`C4{o zcw iA]y??By~2 EW oySPSnC'QC~26)-ݽ~ϙU2W+hfz"E0Y?j3tdD'tRe7_-s)k{iז5V|*&Nw4D;`qxrat\eq@aԶ#m:YM4\k%(h/'28͸̥c\tkm V9* ) Y|3Hڃ9S6NA K@bVbc֒b ;*$sq@FIlOL9F~$›ߩM{^ɷϳRuU(,r}ʸ5H=S56, k`;Qܾv^&Ak˙ #ZZ@cd_4jZcgbxR}v%gUa<ҫFpN#T]p/GG|P̄$8LfƼ/bAK*voT omSC%d2)X(Lk,.;~<3Y7|kLzR|F&dپrH繍 @]+Kme5# S 8»+)Յhp ӛ0C*.KQ?ܠ MYx\[:73H&q(UQW#ckW1,+OtH5Y39¹mkKa4㲜.$wS]JV/w`8LN7zWfCz|V)_v 2sfUB_=#fx-AyIӑ ae-ޗB\: l (%+-/n5M NB~ŻXLQc(/_6P &DùRLE7Dlu}avLH8,9D>}geP2~p4j>k?r $P7xrY5>2YaߘnCF$M_D_mgչo`jlκehi,K% _& ap^Fv^EeFFSP|,f(-R{Tũed Q3XT0x j-^Mcㇵfm_($`T 9ƨH8o.Fx_: Mp R "Afeaq*%ڇ#L/چ$6+ ā nWsqxLE2C20b})rw_.&B;;݀\+H,fkj_ʼn0 g6}!klf+&ŗkѪs:{!;GeXm|LYߕ^2YxVOeeoG]mb4)ymz\fi@c=:X cq~oc^u #i7@9$0ĢMxˍլnn1t.`ީ8ںvPg[uySL(5DI烳EUQՎ%U.h.:@A5^-p}RնkK\&$6EG} * 5dfMS.K8ІU=2B{ j,0\LjgQ!g9-iX5<Sٝ>@yAt1ĐPgTNh<<6IC wW| <=׷G XwO\W@<":C DʖA=V#uɳcz9P X63%sA`yX1̟-iϣn$ҷ3'S(NBQG/cyN1&mdMؒIF {&sy5t4ƄqI#m$ekל:uy]V;&\]b]D%n|t؅/ R 0~q^RJ.x 7֜峰X4yo@,~o^> l{};cdIu.k=ǚ}aj\ CpB5lGI0vl4pժ.Z gɖҗa)bٕH2 THסQ%7)f><.Pf>%LsjE#6`|k(o(,(æ>ܗ^N9ŭ H(%=_Etki1`prA 1S.jNC#~f9vp?"+ȓ1uKU`Ì2$^&tVK"[Y5(fSVGc #|Y7>_rӢ#J~Q%ojfژ4²LD$5D{GQq 3Zҍ3*[ ]VŜz`uJ0Q$N8+,McŽ2 6z nX;*+zKsc;7-i BL#b ɱEo@o m0_@be1bPH p]2DޘX Jn-2 2^6YO:i!8C'ZSc!Z@K;{w0'{VL\zM^7*qml@ϩ-iu5P 04hzk wS-4yd?!| AYUJ0Hd"J4d^-g)um;#w}5-G87_W(7FnG`>fiy,e|"Nd{W7Z 2}Wg}=8뒲Dlg RY,DaztDb?pTo2q#Vo{NeoʵirJS\g8u:Db 2[bR-Ԏ>6KVv?,+ |s5,J< (u`Fd _7 2 MUWZJ\֍N5sTxK鱸gݷ;ܝ t]]ZmQz=*GQZҙ+pG(-]KW.=ɧ܋ݣ5K,?R8f3xpg^E3Ӭ>HO<|1ɴy'+X&{\ڭmJiDRhP=3MGH&& " kVLp9gG9~6b#bG"}ԑ#2|[8a̫ZrzlM[ң0G&"+ j 2'n0Hyجd!/{,{Ԝ䶃T2uoK+܋K2nWNwB1G o=ً=rwë~[Jx8=E=_JìT3az$$p!x@+(,BYf~ǂI˒n@ 鸻MpK&仉@r qt.ִ>CF 62.LG]+]Rf)m3}ck+ d"`x d_LzwRN 0,cŤ( >f}R@6ե60xȏ9E벟~\hGqa:6Uv 筹2b@H M\OoyY1> ^JK-ϬASr톒N AuW1Z$AML=~_hҘYcVb&@g(6-o6´<Y8X¬9KCRjg \dr#/t6KK1GDoW$':̫`UC*mSS*6\L]RlW컏.HI⽂4✝Vv)I>r5ͧM|9tZ%k*jC_'ZB 3ހ|du` dO{]qamC/޴B>Bޖ) ڡ2,ϪO w*t^ C4.4BfL+0uvΚ(RezQdrzBk M߷yp-qWeϔ Xي/*=˓9xK|iʷ?%`ܟNoIKB 7$lc ` 0jjZnhLM=|ArڟʄwwichcDC]S5Ⱦ8 oE)7] bt./ ϵBH51llYuõ[KJs(v㶬6f4m_fСNCbR̺SB:A~4 V,+]O-ۈ9#yyf7L5՗XɭJ5ўL/<s=NǴ1=7A+ydOc(!qsLpD/$#S73'b܁ bjn kԻ*y)ƻNM捂_es&}j~KCK{,H|N鮑aDݟgWi;^><3=Ê;zBĄ8!i*6ؖo(އaj3źA `41;%YRO"^)GUH 9R7ĭ:9z2S!_utEf"ŊNy'6j QYE]Wf{wX{'0QFBCu{8vpG]hl樜۟R σ?|6yz\ %Rr:^ `m,urZ{ IX؁el:v/U~Ku{8Vؑ~_3y,#. Rt8,/F?(\^=KSM)ыtm8D#LrїdqS}T潑7:jDZj?VTv\0web=s-3h͵u@b}[hfx/[F @ H͠K`Fvz׏h`֟ϥ5Hd/Y=68|u%Ś:OAՒL#=u,?qUk_F\>=o=IZ 0YQ& Ib?rFn NG- v}}qO+-ǂE-u3|QAgN9jgKB} gPU^7}Vykl֦@h3{`.J $ef*ÆюEWh"yCX|ОRǛ2J]dfMVP70E6}sD%Pջy>lķH9שEqf&6VCK\W Kq~LBMۘ6X"kDұ78a?L C_ qܽg[ъ+_ ӽS1` LD+P!:{yyma0YќC_}`.,̓ (V˦J>޼ģ0tVLχeӥN;kqϽ!Rh$Yjɴd][&o?k3 FJ[6V`:^Go*hU*<yahf_o'_KET|tL8xйU_5B4uhփi݂';P:|[1UvA,gOӾ0_ZueoSW FivɆ039@$Hv*b&]@0 ඒ`=j+CM[t˹F&8`a,7b,@~c|)|UR'2%dC"̔?S rrNaIXڞʧ:1wkՙt^0pnӪw)P Z?kGbSrc)j&ɲ!X{;C-j!yqKO<6 pEݟ=r\>8>*#pT] B|MQ_< ]H;m`PۋE2ș"p}CHdso` ^*Rg/n@[e`l37yE?P8M `J |#t9^5`$iׇ}o (dmCAi+JX\y3FA_Xvܖ& :j@R XZ;={#L%Ү^phicTo>ij&a..nF=:/JR>Ɠ|+iޏBЇ_f-rɳ g۶2:PYEڬQ\r_ύISrL=ft°r"2Dx-XX bcPvAG  e߃S 9; ]FE5{ ca8֡"`1_//5:ɮGE+CIA^Yd\/,f2@H. 01F6GxGb`ƽe!ڗ.J*W/8LE|>WSPA:r01|By1mY7;`N ܗP(ÅvLs5;.eO18LPvI0~-$/2tjj_D 2b4=bEj D)%B n*}27|xF4~ņVXqƯ:ɗE'k]zǫhhcC$& yl WR{s!2!,~ QU.Ybwkl4 P. }㍯KЅ_ c2P_wg1>19} {ba4F9@ 4|ąo y,K<))-G`;"Bӏ͂6/GZ[rN^jg)$ _ v|jmy)8&&Lr nC"g$!8t>'&<ݸ*$nZv1E̘ܪ<CiZ \fkC`Cq8)V#uL{k/Nff%e)G ٤A {M YA mѽ8rxϗX g$~h)|cL9$"9Gs[%S* |1V_guւ|lD\!͛Ѐ8ת-݋U؟ f18[X Əi(N>W9 oŨ*`">-U;I`X q`'"9RvoP)"h@`[:gD_ٖZp&4Q3Եݹ2GLE=˯+ v_WEEw4tR5J|Hor 1ᘲ2P㩒CΆf[{BN1cZbGu;x)1wwF֑{m#Б.2L$LI7'iW8z?У̼"mVKlܬV!2ru>6]MZD5/YڴŶm -ޥSY;%ߗf\ᑟ@<No ZD4m3² ]&v* $eB6XV3:)L!9{YuR6!`UK_ ,݅7rqt1j}ǙfbR;G]\>L 掤@ 6ꝢXwb9.U?#rcP)Ȱſ닏\b;lo8P+iŽ>~YYÈm^ xdB[vw5'` xpW1mW /h/ 0Hl Xsm?9{mՑ@HOdؐa*K9\>~o3?.1NGUz} }5LD`gԁmDc7T)[eP" ރh? d:I9<Ջ|'u lX&M<αȖRNM6)\$)|IhYDC͢o]=\;=YXAUŊ̸TWjS38 b;,[DʼӸ=+6Y8(=Z 21zݫ$-Ywhxa֌j1RF#̹.9wi$Y%ҒcIMTA10/2:%BtCHCJ 5Gj]lru{& lmnI}6 z5xcszcMa&X|YT 붎;8I[׳Z#l{xL|P o]ȵcyu#=fH ,WET `ځyHבx$HPaX6&ij2~KPViurU^k .gysʠw`U3EetQvn s9 y7I(l.ҺxuM4!0E>02 >M 1xKv1E$-w0 I6GAG̖C] <3`:fGRFP^ q[K!|!&ē1iQ,͋G"&ʖEXeLy+9ȷj1IH=  FК Rap=*gI&3˸j _ٛRɟ## IvlgʊpLqXđXojPv0]ttR_Oot7lOs5T޵ƴoa7$ īrGJ|LX_[0(k&N0)ׂc2gt*p zZcPh30E?wIV4=pY_զGQ3g2$YBϡ͟^{)<.;JZQDrmڡµ&'@ A,"s~|ᜉUgiڭ0씿p#Mdo JMݜܒ2ָ<:$4[@XzÉ3ܦk58]8J;z ŏ `alHq-X5Ftj Vghs"Iԋ;lw.`'9#T HECloh<ׅ$me;c7S)IU@HG[ć Q%` ]_QeO E4Qb>^MLG-c5ww QO?"?m y: kJ0KO CNP< @ꦠqg(gLw奼e&XxaO*HG-jdZobs%}CхI#[k YCsR&Sk>ANJP}9%/1Hi?G8q,_y2~z@ ZS$ͽ[UHP.RXc‘g*3h  1-ĔnTFQUQ7 +ЀFS 'ΝՋ+(DVbJJ7"|"~6W9No# pߊ S !H{ Lu 7+D-owtyrӆW0Qs X䐋YZ^H7sQ"Q`aNPJ~-8*! ڝŸ܊0SaF&8$߰Eu] IJyrn4h*qq13@ko:u&2W"XWE']VXP4*l𫃨Pˠ;+n&-f\^ mF )VǨ*Tϟ|2*U』 >\5Y/knM ADD&٢:k3IPaTsSf6<̈b 0P,@Ǧ%Ңd!rm ݐkVRv]ſx#[M79DHYhVQkxTY!bBLX[⾂u 3(Vcx`]'*QCwR]|.Wg V' _r][/}\ vTO5z^ !%@]))ٍ@Zw]j,>]ǡPRnpNa@ &T SjbԲޠ P ~ތRLG>[մ noVPytJdiYZҕgXeǶTZ1`0g=DW;`q{֣%&φvf ^|7-WɳL)rp|J-АJF)K(akY~LZ{!eǯRGm"TNw7ГWAoF竲e~ DwK!AJvvW.Di iJ#o#DXo!/~ =`O}NOE,:cwX5<&O؎qztM"+۪iݪA6OBs7 +Ngg^R\Y{‹vQـCsyM5Ǻ +6U(GY%[OhcH`^8(&^z[eTPF‘+N9dݺ'CURjnZbޅA)/ aц ^}"|vbTV~SϠT16.ׇ5MT*=Wd O't4!Gw,0} 6z&r6o pQPXC29GeaxPA4h/+h#LuDj,^1ׇ+9|H|Dc#T9r.\YlF.З 8PXYȍ5GMy@oSB.;3vSQ)\!*3|mD~*SJ%T1e~=Up@`>a^kh5 LTokRt":ELxRʱݮFݷ% v[s̮bF os ޛY&]8gqL/a ONy/'I6\3ԞA{6HEVզA]aKwBWAyQr$GT$KD7=@XU _8َŽaz}>Kl]?WɆ;$kJZc& V'=sD,Etb˫dԢm)8xdcYh13tH\(Kʶ:˅I3"՘UJ"!пD- DY.k%~c~[Zu\= ݰJi 8.w|TVͦwÁVpjLs[^P&|Q ]2UtRh+ip[HYyT2%𕺵^R Sy:->7:=alAyo(CN8:&r.O-mԡʾ<7oY.4i{cHΜY=oC)rŮUI#GŒ 94B&FT?oc%͐zcq~X fL:C_-ߖ<:KN>%~\"=}>H߹ `x:T")њq/_@#}Q| 1 DWmI* cchëvMR# Y3 ǁS-UNgP&w8:љsEᖩꌯ[RS|sxWrUe; sK&4#_"*kc2O:jojwjxq*s2U$^D nv|cf\-wWm8,MvZ4:5 E~%őCK8A9i>)1e>fguzgt{u"0ixJ',i\{Oif}@S?p`L )kRR׭{I1磨~LZ@/O@iJd2=3Enzm_3qc )U_ s߰Zt7I;Av65=δ1c6ˇycR]4 qTERd=6T)1 LG#oi-IL0baQs3rgY( #[6ٶ/VwO>WnԗP+b|bKĺ:[dr$Rܡw[7Fbhe0cO$pgMsbX I<ڹ}s[񭞲~\kkƋ~ Zh@?(MzB|)ތWhܒ\yuKu6!1Κood/B{Ca(1NZBmEk]yXϔGN/+'Y:y+*=H~O4 !`&vEd<"?Mp[QU򁥩OYԅlli)UAw/ jc1,ΠD*~k1|_}uƽҐ$D ݊;<&?xUT/cmFE0Fmtk#W>?w 4lFʴgV|a ,Hw%UUվ &T&E< tyU LK&#mLI4h2lX)4ssx1 @Pni6|'}YQ[Mo}AȴW#~p!;B?X{o; Ho(호C18)=@1~0Y aS`])O6Mν6}Dccy"!-/n<{[bYN6P0g]9+-$→ɞ+S/s␥,g,9;(vk=#$S 5{phA" av09 Y{.?N%}ֳ5l #8 _ u(Af\Z]E;&}I}w x'1b1dtR5rs/๳fW*!YcLvc+BHjkcNz_ 4_|"dQ5%ұ ߠ,awAYic֙32î5SO$>\j v,ewkP+* D*Yo(eCj1Pn)sy5󆛿K.˾4ECoP-N@vUhmg 8QÊtyʸlH9djM߲MV:`#o}cm6{k&m*%cze eW!@ʨl{Z^ a!_H_m dPڨԋYUQO{Z{)|P+g" @gv4!ևLB;Ru/8XTG/)MR:Ԉb ٌp:E0hFeޯf!4 cs.h'#P; T9z]u5c k\ 䅰lАe5g1q}?iUCM)pBU"\Qq.,`1.x퍺59O޴^#)ԚqTF0-^eu6h߸y?|y+.q/6G8,,CGGͣ 4tvR@0 ecg^]-,pq^1z(blܣ@xoV +C7bGI.c%@f\,ڂ'ypmnyֻ]erMUͿ8'H(,Dŕ*3 r&É ݏv .Ys8&I*U0'nR>9:%(F1f& 3ʞ%J eDБlj Q)vP5y! ؂)0.[E_6-O8(h(:/}$gC3F"^D.w?u2Qö oyrjA? t$?!yҜ9Q?$r۴kB%Z%!P;*"AӤz~@_b#|KQ6nly~ `xvdG)7A wOxTXX #`\EP FܬOXPӹ,siQ0+7+1g7yى`s \O&dSLVb\Gs^;0g+/BSU aTp Bb Bu!u*z\ JSK`gX<ǹƠtlbT=pr^2"˚R\ Ŧ 4w "OknzYVc,#9V3,ZŹ&2bD֎,'-s롫fu235/ҲK;cf}?@9c;O팥Do (×IpJI3Y (솊4d{d4%Έ ְU6îlҷj㋞ɥs*,C +wcW_B=Eܱ&n8 4<H7pUY^ZJQj _ulTq/FEvTj@rcqtG :6#:ѷN8lpFzzuzŭW!" X6N_ΒYk jSV2Һ_|bxg\*MW qWc1%SeJ[C.['A44a& us*kKJ\u5-q)R:W Y3::f{ӾbX)1@Te^!^d%n oO5"5Өȵ~v>Q}QGe}N68&ȩp 7#4mFd9p  )GG] v﯎P繖k@QH-&g$~\#)u"9ܵItlz3qb1*pVB LHsNo? ?Z„).X7py_Z9mjl Djr9qL0sbgnW wE?)ޏҰ]iACVYGθV\[@ŷtdlYt%_BT|8װuvZaiD˅yهBs pKF %pG6?X\qbݹSZ%$r" :5y{B=׬!z>[L~#"LԆ覸!87XUXIt > ]C\&hզuVdBOsmY?Ѳ?j74G^)&7X𰺳r\۪fz `#/L تEc,xC3]<\1'>}ΐ\ N Yl^W,BRDOc+jߺ >w;*ڜmp*X7铽)j,P<}DTvzG/klH\NJ}.8BZlQ3ۿ-w{͗ȣm68{)mE'-vޛ5֙x֩Vc<͈*ؾ2e'\89hx=)c̺%ّ49a%CU9J d\(t _!fťdyv]K|AAXUx! C7;&"?AUZԨiS%^u Avhbǔ hID{\)|A]:I#V*B-: s;!~UKY=80.4|ⓃgP)a*OY؄J`lCUWۢ25+L%%QiǟL,,\ ~!Gs Hgl Ly+VW\ F &,'s[~ZZ6y Uj ӮquhV̈ozg4ږ+B{qY@>Z7BJ `0 x槎dc5e7y/KGm"2*{[6 DʬIb?=_YۺPdh>#E="==;ᡛvQñVΥ5"4YfL i-ZG/d-}?>L5Ni:|h͝;+lOûRwb9FxYLotC#zLy;]5IK[&GEMDL33ez4bEweǩqeӫ$R?oRS!wU2&]H3!sH--Sha\ (?[ r[vjYrZ-ϳ1uoa/B=dz:د)Qyn`nska2uEsz.qߣST ` +encJ 7.hD9ΰP' ݞP2:\=7[ wX Ŵ1[rl֟ONLb81С?eDM8bh3В+2lhh5-NJyaкd. ߰5׼_:@I۵=n3M(F'$L#AB^eKFcb/,TnVUrȐhnXk%k=+~rTZv5V'PQGB6;Jzꫪ7woi'l4}UWR:f3kf9?mJ5ƌ ?˳|DBFm' "uHD=kP>go#/s..ͧj/"\ӷע2jqB7X@-RRavbhP o~#S;wmMCTB:oaneN1|׉hU4k)*I/ȏ@J Q\kNFt1/Ze[7 "zyDga2E<*2A*xoT4{1~%{mwr8*1y4CS EAO^5r'E pL!;p*]q*F5f:?%>#QA67h/R?w\_&,%WL5>" UnK35T=È[mc):;p97 &uK3Sx"^S;x3,1<YV-rO`"U}9[8V.P+yj-~oߖcH;OE5amQw՘@SrK%AVX$ٙ;1fy nHEw(=UT4J(D̩݀cQ@ͦtBK+U xAn;+RB.9:70ej"m2Jfhmf;E07WW; a6WS&g*s"@PڜLA%ʠi7ܟ]>o+[7f<|g$m􈡫wY6S΁!\t\Ɣp Z6+JL~E/L  +Ϻ H,I,C>ؚܺ|(9Y|~>,3yZ3h\[t13(PZ3$GN)zzܡY6F >cq4Kwceө>E̩bONQEl1q(-cg,%_ZJ|)ɣ3h^㓒4 c2=uy*(֝SR-XϴSmuۀ'J-ւ  XJˎֱ(hbƢ_Q&oC˺;Y-,8<]ZISV7Sm-L̳_~k)Uſhs=$n BUWfAfdrqآ: FztnYTTK,}23:< #Ѵ; ;A/]43ߌh(6Su\Ӛ}y]pZTтGçx>/nr]?P\BhK&jT=ʁ@`6ж)j&Ned[ '(edP,2iAdFsbȎU5+"ʆZ7I4@f3]WK聫ZZ v+n8+yfņ}vP'W^3l̝iZޖ[d愍0 ٨@&- iQy:ЫXFkF-ZqZ᲎kSpΕ~,jX,;ӱ,iK쨩v 1^AX?1s&8LLImung 6roЃEtyTxQ'ETbGS,tO˷+MQܕ屣W Lj/^?v/xRgu*uu\p8y@Rm;@)$Ήx'VoHUZj<?~Po”XKO%Hra@?y Pyt!T,>짐;QxF0DRŃ{%/?\ZHK{Y\PKH}%A#j䏬` xw~JR7VYy1_z`GEE־ N6nOyآm15jr>;D}^hJbS!'6Fp%*n5;ij [U *#(B*~{,Q<泬 H XYeEi tfVXVd4`qm6LQkex߲\ѥnsG|~ioeyˮÚi bѭu%$m<\FW"[I?Py.a%0G#aww QTd9u!j<NbgC y2-kB'tt/ֺ_*\A<&Mb{~SBFo$eW T(׹41*5x@r u zD'Cz_jy`0zއh;@JNmX#߯Z 6"$= {˴x"]ܪ3;EW`e Ǎ`@nDcu=۱+iɓUn$RƛP'CLL\a PWIhך\~c-ovZ5 Zcd _GS2D`iqmycW}NdsL(8 H-DkJ||w [Fw |X~ޑ/s? TDU43e$:J5geA0~G)vʇ}Y RZs -{fVLJEN/8rCD6P8Uc0669 CYBpGDSO?Bt)ҕOfz~z[ފbT-uu(^ Gj9.1V@N= \Gn"oP+ wSZzo۞.>KtzsQ*%aK tl3ka척P^ T]C2b|lqtrYa~HU FpCdThtԆ~^#Tu`WeFvAf;TǨ%Κݱ`l;%f(CϬxKM-XQ8Ͱ˨zU[r)CέPx,LR}H~I%ϴ;,X)wx@Ɔ{)KzbrGAI 5yr |GZKHzgEnzDcլTeȖlmfw8~:w;+fae`h evW;-L92g,M޿D ~I$~F5 La̤yN`1*Jeֺ/hslՌ 9P)|%%ۺgtjzvI2zȝ-O|g0ǢSm($`1 wyBQ.y@L8 ~I#JE5jwԅhLf # 8eo$dZ;ɚBplv%"bR =H`Bd^QUz #Wc7je&g'Ihѥ ~ k{L g)x.2Sbr"Ϯ+Jc?5M5i1?D-/tcBBkRN{f'ZesW]k E$3;fU{ %`9 o9CQ?bO6g7/cP7L I.hT @1KV v1QvԏN<txW;B!DoӮD+2PqzqUPRw쟱]`KlL8 -XwR=k[*|x";Ϸe)d)\aQLdTgK,,\#MtPg.h!VکM ߄Dp#F/bK/>(C]X M2$=xN (.E:7,tpknS8!0ș?ްy0zdJJ'Ғ!5pC^EAց t,զ1 z?k b`B>yVZqɲ6[|x}L9O:M{u5OR?j~PdY+jw6E Le^-ķ-6r>s*\q>KDŽbLb쀌 PqU19,QwFT I=~t4" *_0 rjrBKQd+R;M #cMFt)CvMm'AŰMddW|NN,la[8ۓˆ5 {vfj-z&;ƲCv]cV[W'q *|(TD ,3ɵDKQwvy ~ҹ N&d2Py\ gΗO`Ts&6vOu۔==+h[{tW,W̨$,|lDk%"8#QױdEVq3n;UN>YiK|33w"8 ՈVNnml;hnJb(M fG/<W{Ǚ$B hU%Ete{be]20@<d%3KHa e7Q夑7zLxQtR % \ ^T{x =j߾@`G$(V6m\ T >Ft fUoI򻅗S4ęك;_um B=dPՃ;‘PS>r6>%as;S۸zD"dT V,mCoJ#;u$ӴbZc/_q9y(Ke28ŧewx|tFCb9|{<~mS+6д] }:l0YO~}IꠕYάV~$ƏN4cϐu(BX!]uV 3qb眇3 L#G3+q~#ٖ%E'ڡF/v3 yQI5S3$&8M^{id%j~ye u4CdۆU( lNn+:JYߗ*E6A;)ȵd)#8p_bOgF5nZ~Hu5M-w<=M|5}<0bi/Q$US 4.ŵX4wųZY TUMQ/iXOȩj*&wBkb`zP9\7l9HW0@tͻ`, q!8cN ̘-j(;L }Y0А 0Ϊ%HxEBa/*ިZ{WQ_ ]MGpWyl̬)Fp Odwx=/b{lOx-MBUvy1z#2>^|Cyvr]2N@n)1b<[I<);1z`"*9lB,g(DxFB>W'yт e'2i;L_ۍP@(O`)_0&e.=Ud' b;aӀs,GcvFcAĥ^/\#BH2>ɜ4!+ZBC_iMԻ g9/K+4 k ?q]L7W({<ǬoR5ś]$NŎhKF :`2'}olPp9Ι˶Ƒ96 \OZAXd~Kg?\;6ՠ9"ɥ<T#.3iɃL2|fz #QW=Ezp0x\WCKd t1T R{؞< bgEţl9zԑvPO9̺w']x&6"۠,XV\[&ݹIB&J riiGɆK,vӏ͐,諴Ævݿ3I 鲪QZraӫAATs.ńPդ4AegT F{PA經 u#zM9bP%%&FD N1U ;|AV@FmsuRN'at 3T%9vǨaAˣTl8Wv LB.EũÈhHC^ӫ"A0&Aqr޸C&5_.G `dvIbxr߮Q 풫ihɥς)f+?p6W7 X?̚>JfEg.wlVj! G. G/ qڢ}{@wa+'k̖=w1SoFW1j\|)ӨDk\} aſ+uP4 #XH(oBdHW}Z z j J\(|,̘E~XLe p5>A='\ϛB!sVN/w fx}ndV1#!By(YTLQ(,+@TU&|55Z .y엄y @Y=6Y w:y-s|zSrs^%+0g0TB艃1]\Ov˗H0yq%ZouEȓa}3YʯsBZ$M^Вn>gp[tBhK3̕*QU ђL=MwQ8mlc8E E[ĆGSjf}*a)=õ TrUߺ`KY.S4"+wcUGYY@ɵ&`~;SIKtډ畉kTgG%IpʗlL4²GwxAL1{|h2}5wQ} ' Y-~-fJG.yTD898N?觀B tJ蕷\G+|:iX1svCJ'yT{ͻ8{Oms 0+KX2 36|K{h.w܃"J[Wy0{c5=CpC9%_{סq Uݘ26Bf6|+g_Zm1N΍K 1ءoHw>l"erY}FFo&eVk b jdYH?lq\ڥth>lSS&qaqrMuՓVm꒯>opg:Dϧ;<1T,">TK]Yl" (<MjPcIDL elE) 'dlyVyikf8q/g|z͸˻Nl@Uv]~0y7GE> xjF|e!E^V58x<`QsaDȞZ yN_-0lo 7BR j$U~i\IJUmW2Nr4FF:X i+\*dS Gylf_y5HL5P0kdUAWIj;'{aۄ0[@+r# ,~L>AsNQU xr# {EK,/MAd6cRN.nl2$&jUsbϓ&JZOڵL_,(ڄ#dW},f\-)v]ڋl>+ry7V>BZuXLu"ʛ,cp1Q_X[0ಗV{)Pg^]ق-V>+Vty7[1@gNb>HV(MFJ؀|LsQ鋶Lfv[ PWl\.2m6/yN!tjAk#+ @()sRm 妇]N8'丈ъæ&'yNU)"M{"P;AE Nt{~^eEl/H0us}[!"~Y@A?s=+jӳJUZmdhKLҪ%_6ӌp7T5c;%ꧮ?ك=bW̸ѦTbKv9+FiF9}4?…QٹQ$Vfr٬TI{#.M^ױ5ኩxg6H#ڥUn1_4YyL5`9XmL~q>ΙfX?TNButΩ5*Dkg'!kpӫXreSz\%TP‘bKB9+ק}l?^iYO bU\~Rˈ:<$W͈;䗠C.Yj[; 1-(;d#U)۴mۥc^*>Yp()IyWtY̺:'MM r3у;͵8YƗV5nۚp\>HFa8dgKßrċeWU!l;sAG0|džߛ6rNbTn6 eQB #h*̖(q8G'}&ȳZ!-hϿCH<#"Le+ia@j\#0S't~F ?ƗEḱ", SE(KݸPZl^4wni|73QE*qXBW\4'Qniwpg[Y WHߋ4 6xp Wq&Tpu8|z]7sw%Ǹǫ!r$34.7ñ#UşY"Jvv^Qfڂ6/27*),$Kp$\W&tfPgsHl;"bn}l4PgvYs(}uKk5nr'¦kJ0 F0s?'P-ǑDF/ϼZ"5RPWz[l`7ڞjgÝ$HӗdZb)Q@^4cRz5GgQ[%ȷPO'!qFb|rmҾc9"բ!?+$p8o{FQ'@#妶7}-Eih/sQGV"7%d|[\|/%vK/^Eaӕt1:A:TS;&wRq+&PAZpMT(ƬA2!y.,pQql۵bz3^b%OO~r9oJ,Wg*3$?ԡL:fW>x){2VÇsݒ,0?h#)(VtCw~CrA2{wzǥ:Zj n0`Jq wW3M}[y0<aZ 8ߐ}O 13ڰ=;w VMOeS|XB)v^~JaaV-PJs/C A.E5)́ 9|r1B`7BI]GgPٯ>3%J~IJ bI$SB߼2 jij.=Hñȸę™6z.!.g{norUnÀNi+ TtǍQg}:#VAۿE'" g8\Cj7h??J.䰱adBU R\KOR [/9̃۹d=~-zXh4:yDtG#dڌ:S! 4͋edu]-4M8ksgH@Io}D`4,PdE%t[]yhCxIѰ0"- y[#y~Uy+4w͋֌EY pjcNHsԚ;_Ƹ +i-M~ԇϔ_Xs!tľ#l(|Xs'h󚖶58Ք/$H_lf"Cɿ6zم >gk=*4&k {Jes\]bXj@$˳WY+*qGR+Y.mYT[ѿ?V۔4PuPoXv/9tcIκ2y([v@7--*pm~DI¯s!qt]?〴k/οgd0;<{pȨ%/ޙxa|caFU9ܢvQzz2]@/W ̡idK7"ʹ/rʠw x Mz\5$.&pUܻ*}1t8m&A?5N@Gr5ί7 TiX'F"% 9n{?H>Yt9DNwUXf6aS,yC7]NpGDJrcwC.{Z.I6II*t?A'@@@R$[{Zx`Fs#ؓ80XEm <"›<}V0 h * dk}?P/4FW\v|V߿H<=__YK?R1քs6ZaPd-Hoy>$SBfmZ,[) I]=S7.Ù*VX#.&)ǩc%;8)`s?uVPQqT0Ya W!cXbwkTeƒ{6,Jcc$K4ԭ\WUX(/yMafXF&%Dqb//T==`WFsfhI".ϋa纔2p@w>zwW:"16W2..Q8 BtCyK:Aeq.[v.g X3d_Ye'7}CW8B16\9߲瘛\j%1hQ\5o/3m2$cf4^<ڑLn9DɯQ*%-@Gu&Bm{1:jsK0^&e_C"?~aKoHZ${GgL_IR(#Q |Lڞl|֫S}]ypY.kPmo18x>}2t06sY!(9:ݘq)cjX\fG?u>U,tsI(dhN`/il_Ѷo6Pj\+aƧmḷ?ťdV3+YBWu<eWXzѨ >?෧T]G?!͝ F.q9K #_x|Շ]abh%ب$.GLRK9E vNl#X}*oe,hd9`*(-t؟h+6S -J~lzkȾkZJǤzf̽zG^Z o Dؗ1"Oul ɷE 3j{ZbmXî,ЫaI^x۩nPkVfYxgV,Qv#Zi'X 9NCd] Y١٧iս'r1N=V߮3~EfL4p/Y78[ k?AYep!kolՈAVI{E /[r/nwvi8NCٴQV1Os2k`9t['s> GW0 R+ꓯtɥYW%nY2I߇~CB2r(ĦvZˋ28ْC'jOmO@hQJ$#ƙ}Xe9^S:m,\LEfnǀ%A-hO,C|-fPbl lVt芻+㳮AT=tA TmpT6@E>ENi&Zd?9<{-&Vz?,rW6s ˾GX lY~At.#O fƧR#%~INp޺U[RRFG`.\z'&:3._9V}NzZD7%2=Yz']L?˄G? +r>- \`le.XX2ɐq-d.tuig؍w]&M9ޗ=#]JmҬJ ̹nW{ Tx0pq?" $p1.a{ԕ> 'T6i%jbBpk}QHR==nd?{/#klr{:ob s'2r>0+0 $3Pؾ$T-z<>P|3&04&0Q_jdTdc+jC!!W!0^ 8;k2kٟtqhm}X{}ڊ9[^6?H n|kڽT$#mPO}wsN'o~RjAONE?Ga'J2n`+>]!' ϸ4֓}u`vjS8M`ᱲFJ\+Z%V>ph>w?1"`ڊVFrTbwn&$xê=-ǴaBIB=u5k,(<@'D>xfB-qUAF`isi*#-K&7{_z/̥lu/" oIWsb{n!X{ؤL SN#dAI=cb8uhJ[1~m _mw6+x:i( E6žw=ۥ :f%4n.MH%ęCZά3I`FT8.|^ JkӴ~y9~]_- '՛VSd5GDP!P<*]]{Ev 'TFN 2:nYs BhrWS쟵9Z8Dob5+;:y߼o #h1}CՀ_S50uX^&t )s\@)cZȟsVt?_Jzf>SP$4߃#'u-K ?.oTYKSS\,-F31ϏUv. icqGydvt8lP|Ve9350aZDG.t{^H?d ~2IoA*⽧fu2^{ELXe}cƗXk]V~bnmL3R8\TcBOn?֗ɠIa6s'Q1ovAWS"^ds,Pk3wD4F0⍡0Y?ߗ-L~.h d U~Ι>7,Ԁ]p,~;s]$?Ă)nxznmGC4303)ށH "1S9YIʴ;4`-Gڛ G=\tLb>jIi<- ]'h<0$)$Hl<2x@\Ёy:&>"sDksl8;(/I{OtEw^F< TuKG Ƣ`g?ݡƫKYr- %mKwخdmA-aS~KX.e/ּ5J|]@;{BWr7S#p<'p+t)vMXtފ6!^wJy[HqMzkfxblޭ~h3'B,PE%0ˈ"EY'L'.ˉk(U׬=҉릒.#Hx%po, K ZI/e.Fa^ 6FQnN_~m`,H TpM#S̟4PE+"a}n7]&6gTv|Vn>jPvf9/TbbD%JuI jQuK='{ڋ/.5}j`0<|Ou{d>IiI+u dݳiۯSg0;4sРš9ЖxbG_ϗC_"țC'%flCQʏ(#0䞌YWIJeyęTA{v yɁDV=B - :"55q2LLP2DEBi3_n@IyoW͠W#Ey?|6'*L;_;ԩ+؍OEhUco!N=jo-FY.~EWACFX@[$YpI!WV;lr̋ `OZ6n-pk4,AH]h*r,* qߓ352Dqf*($Ͱm' lZ9@5) Y6Ħ3F;4ʶJ--i}Mr.dE^r.zp^RB4c.$&f,ݨMy-h ?ayj~|6b7^-sA'ҌYpg礴wE%r,iߢҾݯ\<c ޛ.G}LT=ێB_x΍yxvک1ggf_R+U*VC*G{!sKǜ[L42o F#Uo&CbvΨak'kGH&K" "UhSkD0IrgVovVU3JT_qpW@o$;bRU2;{lH<۽7gFQ@'5 vzяL *]Er7Fki)!Z lV3aޠo-^lnh\{Rt I(3lG2+6[(4P8\i~HXslhqPwic EJ9r~c.tJ޴:$mcYoL w&aC 85d +šSq %AHx&ّ(X]Okmdz8*MS4KZό.J#* ӎ&SqTj ěBGK>q5N$VbLk9˖ILz ԛλxz %A 6eڐ0XT ]q8u]F/Qk {7^#j'>+:v0^|Y %"6&K!Z.1NqǛKN껼7V4Zr?_yWвĂ(G"4 PpDnfiSTUYh)ӏ ֮\):pˊdQN)1ܫ1iHy>nwi|Kp+sT *${#'|X:GAI)&+1* jV*a׬{)0렊yj3's{?y|e&`f%񫮡 VCB0>Ǡz.bSCħ3 7_^gf7F~4 XTUZV[.#uOfS} ަקo|q=IV@+{^uBP6\2onIAg*)m,Y$f4'kj7)vdQޜvT8GAQ{&׬NC豚^ɮF\{}{I3E=/@#׊5S]b G-l.USȰį~d?A2Z6qQDqY|M8tB3SI'Y؁mSW".cन "WK(v1Bi?Ļ<T48Nzhg]LqjHYf1yU3$1 v-% p$Y1՗>rM t &kl0{XPS3hl*01 +GR fPZ6=S F\EB Toޚ&敺fqUDrGDB؆roݼL,oÝoU"D~D=aw#w"|lq=ڕa@w`MAZlWPq=i:j|Q,UЙ! >rg,ʲC2M.P[|:;SEl * Ə:PrDeaך68rmZONfܫzc+Py3(6X1ෞv,v5(2Ꟙ^JZFP`@zfzS?<83yCYCG l*d'٢]IS Q"PTL\ ES7|6V@API8Qʧ[O]"m!G-q{ s4;>@[ўAhNR8) |jfK(Aʅb-$D![>y;o \\y3|o:}@ipBtsԾͤ %:5 j~*kHzydKQ3ڽVb`4SI\1ћc4tO ֔ 9pܺއvH.3PmǑV \&CSEe NQy0f[\[.j̥;8TCҮg1o[0H@ 1aI<.T.ЪBQZtU,[D122}CG<.`PDwVhzr cl 0w9Mؘ+gDQev6M]j- _^Kpb9IPA_cszX&aezQM-+2V`WT R̗^xHϥ yKQo~>dha$Ffye!`dK#K|PeH=++Ib]{mVDyV'^sEK9 t2a6PEGW@28 霑#tѰ2 1\\9B1@pk!JZK߷>ÛuҔLJٺr4% HPR@ K+W T*^Ì_[EvAv0g frܩYc?XL=F>`-ј2,܄:Lk' ` p.Z˚DB(zi3htߜm!3whQƕ`ԶR`H@T?Ob`TbhJu+P:f$m ^0{\o&ZLbm!"\hnz /ڰ(sF6i\jg$wіt[g,&!ٚ;v<*Zhq?_O gG ?͕4N$ZkCEfWcٔ[N$xY kcvSsyv?D >T툚fG>tcxsܠ[J1q.P,hS+(-00|е|Z.]*8/N,p'Ci*pr`EOrdS~ dṷx[߱մ!8@[~C>"Z҅43E@%# +GfR:o 1+&.yfGa656U:{vk(( [GU-~|!WB81L uڶXduop"]O4̠ߑ'3ge`UlII(ZfSl' ׀+42}QZmo)`AW~qƞۏ!{ # ]nn *11 fKSp/ݯxj%}2:wAq`B,6ƒP4_~pNI:{ B5~<F$x8sQZ Q\o!o_ bLj-@'k+gn.H[;+1H!o/(*Wiskx9)X~-oC`sïWѲv%ˎ& "%Fc>-DwnwS/asjPO0{G-w T]{XF?O6ep;(/5w#*6րD9n)Ҝ%X!Yulfʙ:َRƪ,s6w4fo][#ήK GBMoǻ1MI~#I>F?1s/N,^5cn4;$ 7pJ! K%BQe2.H2TrjEf 'ן-Spgaժk .Nhk>:G@|LW`r=Ye)d0~P<,GhWg(Aߚ+k>qYsZeZ P D Z-eJ:pQk8)NLgMi@EۏݫRaXٞYuJfV"Cb̨W\pMWz7Gr11h{NcORKȆa2>|awHW>{n4iʁ3 Q0?74%'uD"ڌkPEY@ƥ[Z 2، O9/dSc 4 ߾Ёhw` V2XKNxy?r{˝v.P|NКɔ 跼*5N|C$Czh9E(_$Y.7!O7.a3Nok񈎖 =(H0c"Cua,KӪJz0Ո㑴4~Xo/{Br5/X/`s0竁 B뺇 1H? %Kv?[ܩ3dV1R$z0 *jlamʭIB᳋Ⱥ"l!E3"]HD.RD2UE<xDr>ExdEJYf3:m(Olz ~n# /8>=Oi &!Cp&rJur4TR7b1T?dž\DΥA|LFAKjrͰ3jri:Y{Yҍ fmr7S;`y%$BLHǮqre1?\q#F[$Mg`M_U厦MkΝ9)\S7)q{d ^N?S މheݞLnʩ;>Bw0 \foV˦u>AF>b]2yN T#d+h|@v;}.x [N kDK^vl;8YnUMך r%}7HE5zhB@q=`>+CPȜF/R}mZBW~X3vkUZ"@o4< /}+bAK28AȌ7r{CLJBBbޞ2 ]_/ * J+_MK!$SȞ6-hqo+:r(QȦ(FkK Ѫ :2Z_5=2ٷQEVL ' $]v5W{iPνվseN gCp?ޤ1A}㏧BT9Rډ>n#aΎ^ʷѦ (J}yX/KffzZ}?w#("m>o"o؟J٢UNi38jԟgk@GYgzao$|8>s7/%N6V2@о`>wE<)v#OӶ, 590$GQ F cL͌./iWn UƏb`pwjso э`k$rmwW6&1F|)1?L{h؋|,-9$;. !Ha%DZ &cDp?@Gn ”AV3t*M.x*Y i քcq.:C\k#sZ1O:I'40v㭤1I/n.Jѕ R!#[nsʝ8mTj2vܭb4X߇Vaז总ĩWN&BS Qks@or bʐcOs"i'遃~Je՝^F,,jdzr}ʶ2雸:\TK(l#{vN2 O\BAh:L\' y ~B͂;Ho<1I@ZhALʢxjubs8/@c}#$l%)\JR$h۝9>[;uqT P}@E$| Y URKOX a(|"̬u# -ޔ߼'DoZ=L3- ýs]l4*^qе]8uOnjx bGy 35"YQ -vF#|R/kiɦ`JTZRdx[M<%Z:@ `D,t:42,%siqwO%bsAD[]hO[ꬠ];dƮ8FC}`j3x&6*o)Gm)MAV\4\V(^Ul2| qAUQҞljt'HBv:RGC}f(=C͏Q[,적APQA3*drDRϑ&c <%E]+"NJjS`c p>+wd9DX2j%Wݻ 3& g~Gf$P-~|B;t#X# pXLe޾l8 fzY=^S{dZc2871O2P!(O,ҳ)#2<w\2R_^N؃7ӫS8%DC/.ةGj'Gh>l}[e$EQ7JwxvbV09+(.af#jneqmyRI5ϭg .N67|m:4J?5 YR_K>N~3AM@#վ:[hu ;;"2.XqmJ$×ߊODTELۘ6o3\3L}~=ob[ AK{e3o}$,\`w!Dh'r#Xvďs ţ܊sFAU~2)g@hI^OlU_Y;֟^lM~$d[^zV>L{ʍu~W rʇ6w jY5; ࢷX c8#o z܄ݒ5-12b!$Fl6~8WQErtRuE vsZ3HW#$85kKs3R!ìbZd | -ȷM¦߾ţjWK QqJ~?'Q<oqƒI7рNS*X98FQErYx[= ͸hsU|$M{ S_D.bہ e ?9d-5}󇐚c"K甔ʫ^w7dh0Vt]_j{s&wKсI].R{UBnP ź^5rKQF&V4G ؔoZ֒˭Q :n[3@y?V<I2CJ)m3XWωho_cu5dZ j8q y'Y$ѷ#m}܃Aylr&Gs)0S𫓦(_^y=^% ']?ӹf@7DK >.Q#$fL Ў:oͬnEi.Az' "3}"'&2D> =zK V h77YLǥT==@\Cչd|^ !縅g :,Wyd:'LQzSӾh_iʼnX$^<'1)R:ShwV\ku_Q +A[p 2.l"8歁є; H _hW fp>ώ[_-eI{^&eab!@evXR1@{PyM늄CnC0Q hH!FkJgI;kK%͐ Pn/U?ؒ⚔j%N`W.MQ0mjiW?>8v{os|b;zKvOѣya!P*TOQt+PbY,A}5Xx9pbǰYqj6qma*ՆѼ[H 2m%Уmʟ>-߭bW%x|36-gP2"0z`2Dɡ 60DL 'mcLYRnOHz[ -ft3?wk(YEhY%2 "Iw®XׂP ?/5 2Y@aQ.`KVnW XFKIO_ Qm~.f.еoXTqmwE .9~Z6OƾE]Z]Y3v]Nc,mI_o19$pE `Ȣ7V-M:!*ᴋPdKcvqrR =&>(_@{,z?~8в6KOP k}p 9ڗ3yEsjWxU{L\Q -ڥh v>EmYTyDF~PDA:}߀(rCh! +{J ix8^Z]CP]+KԭD"^`34py%I>L (MHW(ߋX_1oe RTObJ1s{fOJH+72K`9?4 H @;3}{Jǂ&ͰJ&SaJþ฻@C@cuV&u*kiR&Ĕ4c-C0͸fUDQkjE!Nմx/(wZZNW>N$rnx"{dB]]&Gk&U=g|٭G|/B  k/V=i2f箈4{`qF,A'DeY9l(O=UPy# ^E+j3v'$TY3@9j+Pʏ$7z/zkj–T;6G%ⲻ#p #S|qInf+E@Q6 4\]|& qu|ETeȿe& n55Ga¶A>0mj9Nt3]kFNtSN-LDD8p_꿊J1OHnoP C/E`'}'uW$¬,P}_բd YF,Y{k()%P.^! L:MqRgءowIn&tVLƗz$fߤVf}f{R磋oJ613*~ x!+y,Q!GhsxܰWi˚%7z^7d݀`C\5/QlrVmUg{jO kro' ʍAR6CIՀMYjFC,׸HddwsSzdF%̙S(K)O UcD #";/Ѻ"Y`Rщo}]G*Xߘ=Zd4Tay| fT Ln gIwafS>D2cgR"*Pnm1))6igT*?!O])QB^K}d8D_4܉p&#͇:V CB~?tZ'yы]%>Y x%R7XDM6=Wow'aMOTZi|d(Gۅ6@j#N*/؍S-9~ͅf[ie3-6wWH0s-BbiIQbS )Hj"()8BE "8)q윻g>Lٛ~H.d,g`~ԅr Hy:[8a>v ɟG D0cnt8$ gc(ǧJ%ab tM)RJ|AG5 y$hj8DU2ދ`bZ[#yB)J*ŊnW=zc&״frQcz3P/#-mJ,]vi7}:!6oŋCl{YL s7Q}Lsf[fK 1qSGjIXƙ< ?сͻ"|JLvw1⟆RӦtSRF1F/x/;̩H[ΚT1  G^p;C uY}pEGvC,]IcVg`\䙠9O 'M5l&vyK#謆z͐%=He5옆XnKrãYGG/h)(UQCȃחS}`$MDh6?_ҝ59XvmyĉeSDOQj?偝/n=YRģa /&>+lo w,+ ~236Ħ J.tPUX-#ңBM!'r5#L5ݵH0$΂!ܡe԰&W^xD9ǃuOV[ti^|Ҏty=jlm~vei`5Ԟ5- s.&YT{gZ8WБvMGꠏi66Nj%u5)urYVD>b!9NPr+&My3ؖ ~s֔wTJgg)%zF7`,-QmJϗWB̤p;a`-z ?录yi fdw80}f[6W)]9{5^ɐܸ[#HUŦ q"{?Ó*Es:AZҡ%jQvU1Ѥ؍ijRrLb5hU RFCmxIZ},V::(AKquglŲk)ċi{x$ r]ڣ quvoeNBBU)[ CYtqQ!Ib-^ګXuY)Y.,w8& Mz< d֕a?)^;Z\W$Aظfe0T#De[КT06,tVjn>g[Z01XaNvc`_ ?%anH?- ;؝&#J" eTw$[pI 㪬ޒe1˜E6nc薁<0 JRC }xS$I9Sc9vXѾBŸgHB|re{&W'#pg+ 4ZNJ'|I𐢺@^סV;Ç8GN0O-}!DYIvQq.KN\̝FAݓQj7DwtYBuF`^q#֐4GCV.IzE(ػyVH&O,s;>("񨎋z"!5} LpX|dIA7rP@1$Xb$ZƄKȉz#l;fhd;5ߺYq6@_Ż"]K A^9THMW5L VYr4kc+dQ%J >'mpHFƦP}G;Cb pqm9 ~ILo6N7at$^Z~O͊rN\84+e>' -F3b@`Hչ\:W}}q=H?u3lwU}댻qtl`b@V.G\ɘv5qP <쨜 /¥6|4|.ɜ6 `9ܬL _e-w\7{ORy}2Ҕ6g~#s=ˠWdᑆn@!D^ SpDG sٜXBlyljיK7v4湩e\yɍ 5Iv@IQ\G"b=2ͯG](EB,&YVe:tC % eV= q7xe4DK3]κ#';V5n1lorƀ I$5G?4Q!HJ2g %{g[nOrX!4$[6YdY`+S4EBGiPhr1iS*shXv0R_AQ_. ǥom\}vTGԏ\DU \_Uf> RG[nV/dTTF69©RAiֱTNnwZPZHRFy!ަNqsމu~|'PeOfafA- :7yu!] gWܘk`4u8J*^ODo념wҶNVuU7U~fՑz`Fx4yˌn>:@4r"FByα6 GFc?ST8b9;Զ5H|lh@F?e<ɀt ԖSNݗ?"~SResH z#_iؔbT8^$5'L丢6c͈_pOw\|+ uOXOj0<WV@¡uc'$N-.4$:^vV7oK664lCiz> Q7t͒eFN?u/+\e4bHɚbu]kDYbΜor m/V| uNSd˩z-[x9$8r4F)ׇoɏ?qL sJc0 ʀ̖I&r}#z+&PR= _zXt"7 PA 5BD\6sl$s|qzzu8ISQ>H=-zi5[+K8 S/tc5:象u `4>$>mXWiZJ;F|h ,IBoµv:ŸpfrtIǠȩ֛O*mYuNA5#\қج\t@hʹ Wy2`PYe亝=FCO #vq)Bx\ }[e<6Ч!{hFEnRV`#&DeIXJ{)n=߭=v_BF㓷ÿۨt[¬B 9{F3te-yhW`<`mtbӐJ/3~U@LDϧ}>+DUBz ~ohPL +c:jRYigct-ȟ&^Ǐ )DǞu%EqPXe!kq/xҲ0I`0?) fc_Ȅ2!N>e}iwg ʽd}(U Y#)u+;sE;cSfYxZ4|r KMnh&j 4BUKȗkWai],iv@+_{Wuz^NҾdB4ň gVȩ2"8@t(69%;)Z@8}.ֈ|7w$cu?gCg5ΩϽll) VptY6?uX8 We< +`ps\(Y"-g4aRe$="rDGc8ƳAZ {,vhDKۛD]{''#0)j"&p1V|-3wI%@ҤVBI-"D\W.C}^pj7%.}dwVumi| =<6ֲr)!(%̝] 0tȤ*IhqWmp?K4kܐpi_C[\+b^69!Kʉ]sdH!CrN'F1! /faK6i aY٫B1[DxDgX2*5玻peLKS:FñPN ]-sl_:2adpz%SiAA8J`X\N3rj/C[J*m̬k-{M]K`C*iA˽h—Kn9  1;aG%I&.}GVR] C# /^D{8."[mJouvjpZi%w(LW xٴLC{RMҰDdLQ]' `!/6zz/8˾'stRXG{ >ll{0J$gM4})d }>Y%'m;bI\Y(se|$.ϩ\Xt#~ىX)Y#swKZOӓTk/"=sm6RmhKQpER8)>vKNXH}9=O/t4G+فW9u 0#,vvNϞ>yHT n@.6mC)\5&`/;B ֋E^T, RV;áhVaBGcz[*P8鉓cBg)|9]xfY6jF7{;M+[lMٿu1#3uZGFVA4Gr07n&/WH. $Z9St٣<Ltx@U{`oEjgϙjU_Q{XڦU-avgt(mTk"}dsm: :MsӑDCu'޵0܃GRL4ō: _5#Q~A4YȮ2}aPqLџ ëꤣ(ޓ$F@Ēr$5 TC,[တF6. 1*NDl |g$Qk4T"~1'ZlfH؀)@.xF [Ķj::3>_|ow/MüJu69fB;`>A_3 W+żAn%PP38zIa9) )R7YPIq?ݿp2I*C/!I`j/ꜫt'ˉ5d@?r+lE >\=rsg}b9&W L~QgN4v9]v`mdV?}pEn jAjGsOQ67aD^2SCd^Vlt5`B*J*,'*{8枙.|PS1ՏMƎElE\CЭܭαoc@2${Q+yx! IF]RSo xE&&wq-25ƚpͣt{ ;d_> FG}LSϱ\8 )zWPX[1sxv0qϰ$-bf.s$O߰'z, On-z0R b")|0%q06 }}F,o4Sgھ4άpJ(P:}QH7]ru>DVl7ҕSԲp0Gg6VX'ɑ12=|> \R%?Y]InRZ&2^ f}}Ц1)7JPD#+`Elb1# ݙ?jfLdm (/)aPmVx2_!i!Z>-i4HI8l6cPAKrU+SiL-啇8tT>Kc5}@*53DTK|y4yO*͐_>GuKQe$!ޜr}&&y| 5<Ԗn\ZD[TznzB邵v, ?!S6 g8Nt'18nu@ݕ^2iDA@ٞVEޒ4*;C+oXTE"%zZpgj[i0L`</zUK·LKl??칐K7ޗNk^K%/Vn$ҏr{I(M'gH^ʄ)`}e\f&*F-ޞig ɒ2Yί(#f*g(^:.#a.N9x4;"}~|dem8Wj[b>[uGYBV3BC. 91hc?hp4mcI)5Y3n."Y »Ata?Ռ$VZ( len>ʊRYao#W_vDRe2u #?D^^`=~vy_ qyN;T U1Ωc [j-Vl!FuR^4u6JcYG YAP]u-vQ?&Q} {Ϡ(ⴊ%w=㯉޵m`^~nB2h'QVg:[dЭW&h?=-8d6(v  \(*hm@"4m1@ZXw3 D1!O-%Ke6 pv>9o>25 >VrB]q{qqA=EH\LݮcbK ڢӰ3mfq6$eq{vVxsoxFrdG&ljU5Q4_`!Wi#p!&!L^i)CuМ?Eux7z~{x0«m-xOٕli~ن%j2OrT`{r*#"DOA%prk:LZSi&sV}D\W+,xh>ei_+syyԝ2Ԡn#={v8:L6#7w !ޚC$!yy/*f*$Bg}ojyVA՗s!#8\(=_~HAjak=cS^)]F:Z=G0W_)nڢE (A8ms{Xns[gH d3ۄHĆ7YhE- xl-sQw64ϫ$}W$D-A\ZxR'`~ҚxYc?1roQqUIqHuJh+$tE$90 jeBWTm4=O=fdOS _A?!璱2hg20w%=ڙ6k.ثΞ$'JC{e\DKdn#U'ƐdS˓^L@)F(Vy*4O`ӾH |یAG(^x*D1.'rqR1DNb.wyMJrJ}W`& U=޺ 7R#)F *-&u̎>({K iR?$qedCCѐ5ڤ.64`,Joڵfzn ,!VgL7ZK8%3Dc+~2'Uϴ(3W7:X/ʢj>)nW*ǜB0A=dJYp@42k cLkӊSF?{ 2__]K`"+!!;}.IFMndZlI5F͠H1ũ[E+ldɖZ@mra#,X+=  Ёm'ת(re q9c4%r =h힍AhA4⨂ |DTPߎF/cM{& kpPA4$0$'MJBd!Zm{k< yV4y/iuBd"yoW*0j˓7!Vy9Jy-z=*HQocKDO/,:wQ۬tN.r5ء^cq\p }n@G|旰w9SRŊBGۺ tbyk͈R4O*S8ծ6KF9uӘV 0qSԇ*Ch޲G|* 5p{9)/šbyS{,Q֟}*796d-ǠslgaXG6s!۠YHdVF=ޱ惬Du7KHݕ+h؜ BRҊ8]@ %^Pыky:_koQ2<=ﮣB/%A ])gL]ӵɾ,h=J¹67Ip̷ښbVj_)Yj$ ։d0_^G<{7o@/p{X~{}WǞGK..5aIͮOy!S`.w|\:}vUS2Ɉ6Ʒ*(K |DCyRARA!ioԒ<Ӝz;E*F =8%z5sR(%'N3)'h͟A:7[*b*`_8@Ea'CmYLnߚ -?ml__ر`YPs?,"k@&* "@t6*g*;bл ?bk%^cJ5ƧخxmG"jl.zt^E5.Bb<%4ddѰ^U+_MJE.2 ssD@PTf( KI$!*ܼdk 3Ԟ k2ǿ#'̈zRqc*"ZZBWP ե} ]^u$p%55D1 WpL=0ON_p ٨ U Z-VK3 6Q:?nVYʄ &> mKt[Iχ%vPHāH\wHLZc> pwߒ0P|?p(A vUSb–LcL6:dnނ4V7=FW 3f0&4;el#C)~[2[1HR1IS']M4q?"Lq8e!DLu2SG2{@r (nvkxgGykrPIGgG!,}驩+S2,(Ʌ݃3ChT _}sRVȡ&5_I8\Qtf {8G45b #kZ[;ScupryZ؟G)Wo=Y0S줷Y5<$VQ厥J8گ~%p%ɱ IebS8l@0p~03/7=6dtF gfJo_;q ӑeQo:(O+I'X.VN5Bb4Vh㕩 p[q@u1 YUqhvTcMqlqۜ+Q:JS Ѐf*ͬ ~S+H?ʚhUzc8[ |gCA@ϤDp)C>z9%e鰫)gĊˤCqmlc3Jh썶禷3~U̵smP/Y%I PvaE(o{|NeGQѻ f8qYE+5(cJw9&\ Þ`˨KF?>KK1%麌UFg$*20/Cb vY? IQFMvU<2(cL;ȋݸ;{oKr),גgCFlCT|EqXi6b{Iy/q2Y0'Pü lQnev9rRZ^=aF6T$w^E(nWhz nVJ0Q+ Ss1.'52 JUxw=N[5Psf'ӝ֭`!ɰ,gviq\ (F#H~mKD4O6Y ߀N б 7"JCoMc{$2 \c~8m /btjЊ ~ J>II Tq-]A&5Vݰl]E7߬K&A'p8˔?z0+uJMl^`'1G…9-X彯)\3vU04W6xѣL0ƒQ%KBޣw땖`l-u#(s%>\4(T-+0BJF,w#d}0:E.K$T8-Wy3f!6Ad m4zUˌ)Fv) =R@[Ԟ~J&f`㒶.PC;!sYf]/{ʹ`jspMq;׳@A#Y{ygix7.fhTbӃ'#rv dVHHe@wJs?&jr ]hfzDĄ`,'a-}O7*ZJ5uԃ&'@4YqWgsϼP#y'Sfk#=F&mνD]:Jˈ qfIfPV$n(el`Pg=:Z2v#^>kDpTҨ9Ϙƶ#RjԹ+ш`le=LuҵΖ&Wo:9&|Iۜ8@0V7t%8\O&ݫHNj 6G26rE [sp]t)G6lzNޜ>q*x)D"KZiK(dG_3'@]mmUհWWʟp& Xt\0iaZBa6ebP \`\r(8zBG{&B: i`BS IYG9}M]\=0I4Ɣ; +4||ft8qRBú uqĺeV2ɠóNJw%zvl/kmE>@JBvnj]z,}rF17@+ydukcqҫv"NKKFn_8DcYqXaV7mnmS mu_7Zкr`nMzÆC_.w-bNƁW^ܲdM0*խ;S GFL@2êٛ˺J_+j)dg-Ш!D+<Ɋ} iX43Im_lʽs1#0g1<=L[@kZH|YjASS]zf`uQI/3&Qk==Ćg/:d;8zh]a8'hHy)C(tYч>- 2ŮV,KM` y;X祾M޸RzB1 I7o!ɪKiCε^cS5mD,rF'?aO?NQ TuʃeQ_?D#mNPX)q̖}* w ~/W.,dXXD~- &?ZhHBdeSXEt^XW^ۘǼO9ZԑVج,π `,P Ѝ !U1x/R1 ,2 32!mOTuRͩzaZcEIBCc,l )FF[mY0,0WȏSqb}g.iځlWt."ZC^S{L4>vwO0Nð*@{ 2?N]ۧ)Sw@MrIɂm*HŌ/>mqH ST=keB\ Я@xS/i>5&:$aۋp̀)ן6ZSҏI Z߷_^ {B*7fejPB%i{8KK۵SvۣF-QU#C`U:g,wN&a8)oƅg^sBƘq̨dQ:DveJdP@* ɂkd3ZwM $OGzX^DWQg74u꣈tcĎ(Mxb&x ~Di:S/b`+Mu\'% DuCʍYI^/mWhQQ  ]n2R۸>4epwpR0Hf 974(IԲ>8&P価M0˞&q$<[,ShqbV[2mPw*oTC4~-/Wi{wk X}`ys/F_/u*Ԇb$9c nӺ] iNvMH {Puu*[H#`zcm5qyv)kQ}`#wX?ìA,/F%ső41l9">/7_I=hЀr&WvR>Dڔm`%jMG4o AE6WVxj? 7 :TX2WIlWfG] 3g$,szCMKJ j`sY<b_$΢XEgo]tm>eL*X͉,YQ`3kk?N/@̇L|Fs|`-`L菓6 6F=U"Q֦hVJ"ܥ`E?.@q*왠od i<::-$%´R]SPi!C_RItqH`^绪X:%Of88mް*"yXRw,JP(} 4r9F?e&N"o賦3X4Q;xGZu2IKF5(kϥ R#2@Ё^l?#'6KȦkr871Т+*kYO74Ү 2y \S mK,'` 3Z!sڴ,Չ+ӕ\jX/o9Ab=$:-K)=ҝQ?uI @,VyJNP/<13م3EgCrDa`h{程j ⲵ-RZZMw+zAk ?tz;s]|ȐE1 H)BkO{q酰uШf.*Ŭ@3['Y$X$)W%,t@`Z9!_ur })Bk5c)`]<OD"-IBh?47m&?').9=ʣ!6i=o~?/yxpL׬ɨ}טT~j4T)VITtsLI_yoCetZt9"SRGޚP:UǹZG7;&KrH0Ŋ&ΨYNްVDֹ!4;jSȂ֣ݰ3COd%: L@wĥ_b&sPmD6umqkpd!E~m1V횥Cs& = {6"Eu%ʐJW^+ݽ-ESF_UE(zMZu{ZYaُʄǚKQ'ߟ%3r2ygI{jGmЫ<#ɹ} 7-BHBreWֱpW5CLQdSo;'$f/u)`x" O A/e='9pECnĝG|i%7h~8Jp.޴a+FJm]VB-G_&%5~;#] :9RI2M9+ [FghJ>?Q#:%v)q40-P86M?+VJҽאƥHm:9G*`y|G,n;jd yls35U_#SbT/tD C-/7q 2ZK˲x#9 [r>/Xޘ_tt4(m84N\y$1[8@qj'FzlzJ'VyaU'݊Qy+5*!\bz}IbF7ah~JIŖ#h~~W{L^OfiR7#RxJsJ5ZQ~:F@G[8펡&)P4Z@3 4> !ѥSʷso&[q9Y>49hH*zlrK? $Ze9+@E/Ղe^J|R_h~2omU߳bJS{J7o^T׻\\  1--0Nf"skPn4w]FD>g$(W]zMΐqCy[f0-8*ۿ [H5uXzʯyH.E"(6lÁQƤ>w&I #,04`(1 )Wsl={-*gAc]+apMf+,Bm5D C]ΗL_ X/\Iy=Dȋ\sH_VnOU7oGB; B?di՗|[o-;|P^*0{t/B{0iy]J,-ma1m; >=ܨ(n{Ob' 'tL!r ЄY !AČϰ/zA֔nV?yJ|-zzxf MߘcB4H-\k n k=HtW9~Fpz[n|SA%gyPJ/C(pESɕg;gtߕ(v,/>'Lz 8 ԧuO4jrf 7^I?83XDU9Nd-Z7^~2^:WO}1eɘH5k^gNRWׇw֝[tYb߆FIqmX>>wxŕz$meN\&0BAPajEJ BNՊFN6 g{`) P]>7A 11J$(xϕ'nGOaG0{@Jd5Xꖉ>)ƔSu8on3_b$ ZYDm@QS8Op̲?Ie@hwj\srCFvj΅[MM3w{C,a`{HK'UFS| W'&@{ o4W9RtDz=ԝ}*T*7sl!f֩71Fj'.xxXk?,v%ě xpGE;<gn{*|@y#"][)jմ  DfCx)|{ώ.ߎ0˶lIyלCh) h> 2z{N?.i}ۓoV$i~cmMϥin u(x$O@.~ՄXRrCm3rn\cǣ{{bn-Fb/am\qM甞ّ.W.ƗOmoX&ieZf-\OrA6~(&C:,/)rUGF".F{zTsRCy,HױILTĔ|~; gj".9Csc\Ah|u·0Jv h$*6ǵ+CraDuă`,WY5.|}#$eSB+YNxu `RIyDҡ2--JHlK( @X߲y oT x4]X^t(OAWRయ9en捝lL@'7Hx TrN)vzETMrâWf ֥^r "gI:W[-u0t a1V E;a#u}^( dn+*ɍJ/TχpPsaٓߓ؏^mWߘSʶo i v_rSvgR1k~lpo3dQq[+a( PgQͲ2x_ݢ+o9EoGikjs:b/"ᇎN4 58A@L ? VoKi;Qp^!88>dB樘N*,;G0UAߒG?5쫷iYSH5 QZDWQ=t$''.!{;;r$ 2J"S򻲭[ Ra%~Em$ Ta'w] L] 3w%^FEC:gU>a&y{x|[ bs&G*Φz5Xr+zBRrt3xfBx_xPy'q8'GPNKg(ץe죳QT2﷈YOLJ47^=C M'a9e]z0/_4`>h.b$-!XNMȋ أ `}hG"aN$-+ sZE\rP@}uMChOa+MrcJ]X AO/-, uuˍ"?Ba2jYI De}5Jp8.X+͜lCrnxkQc.M=,G-4yg-遇)$) 8o49o^*a]0g;/e^G3%,CsOOk=4'RUL",9H~޼ *Rctorj?aVAB8롩J^d2F?B>mYCL=FTTg<9 SF1$:F"/2 CGs1_Y^Ci+wбUVvg,TîGk+u3R A@lpmzO 0|E>mʇu einrG!_*wT|I6 jp6 <*'MHKݍ1c2 Gy9_+ kX4*kH(t{:{˽9$PTR/VvD#6t#ٔVa bU@(Vx 6DOyR =fpu^]ʟtAd*$_L2M}K-,fGE:{X8)Y~ ewofgT~=œ-Wu&[x'TR)u"WRIN  D24C4{RLe44KF9P7Hd |c%Mwoh[U-*c=eװrEnFg$ +'/& @1\xrGѓ6]/0 ;Z)Vmn]Ħk߀D> ΊtCЕW!* BvlGqz>P[P !Cr/u/AuCX% M_ V cÓO/ZXOY3AϮޙݢ4m[[%dF6{2pBCe(J/d=Wz<>EIY7g>ѐ{`얳D4g(9P%ܱᖸA*ޟQ$;9_Jl0@$,I6nLە9=Ր{xq7(1Ėi?h_\ʸR EIGX\\?wEnщqLj A jl .fj8(­PSqAvJ=y--wǞp(½/;p2gݠmpG'ZaȋR!7xvSPTMw=?llɃ씜EN[Ϗ/%Etd?XpY nfHK1F<=gsGť/+p~ fV⸼8,̒ 'В=tQ(FϘ=JwJ#YvY0-(^YpxYv:1hyF ,_޽3'_3@A#Dro=e/+`ң֟(lٱFwͷS^dFܒjOKRe=\3KK pF ΅=o_*ϙD4򢎊nX+ͣ#&r ' O&ZyG>, w>ԖUIӽQzt^{<ֱrޢrgcv <,2Zu?9VtQVn%{8ȟ/,1LYVV`B74x'iQY 1IñΏj!MDxp;QClS1@JR;mǯ~|a{>^m[y~Ž^& ' 1o>i~hly/rzA*%npEu L-6sNBTоh{ ;Ҹ O* M3 NKOԳ. ܷI׫N,XF'Pa [th!ov1~e Pu>55Sko_ɽ6jQŽA[<G>Oc6(mu2!cCw}I K8mJ?6Op`/] <ž넦P┤V!-U$E`|5tjd?,0ZvН8X˹'qF`ne5]uʀt_ b؝S?*GBdjOެ^3a6MFXn i }JИ+ml>.ۮ|) 9ih<(Qҽ 9*lv^~Z|:C.h,wP 8$ɣ3G{]բxFZF ^"ΗNW4b#saw C*3!D4\?6b4`>y97 IuV9*kBPC cO ?eN!)JҊ#ϛi0yRIeoq E$ "%_$qVii*?z/\r/҃q7 ;H9*hge 0P]g'FCT;[Uܣsn t/!/}5Ѫh+5ohsf7:#RNE!G9p: 8 -̵ΣHEw)J\bQ$d`e鰴 XbΆx=ȓ]<WudT}[ =#&冁$R:s 3SRO-rf%R]̼;H#H@ywZx㑱nxkү(5RF.N_qDr&R'gO{]4:cj (fEj_]t mx3XiZIE+MGum?Y{J 89=IW8,/\Qm< GSbPUrѽ@@-SLjPp>)ƷuN|Q5(Z^bǥJ'VbY@!m~#^OSN ֖F5PxR˕CH?dT.`%a_$7a蓅[P b!D(X_,\)ų 6fcQh gh)v#YbPd1(ᬄv*o#8UG^6aଌFŗ3Wg B>݆I]"?q aZF_ڽjW),cGʊhWg%> t k+wW_LjCV0!vϭe`Y>pt9&f΅5 o9&:e(G1;\riCDN&4MnuwRɇvOhuҾƫ CԳ~!<5}SÉ,lɟ6PMuH(R(W/\^m&]]o ވrʙ<8QUONg겕&m:qCv E346h'-bG,%˦P9f2ouXA!rCA(qkxu+JYV/$&~`sʭZs3JaL>?P(4ŭ&'N[c%}SǼ lrܨF޿c-ur4 (sT◩Ym;#q+5]w[אcau]$\<56 &T.u7Y(/[]_0w#mHlk>D˩(v~i J)Aʌa Pnـc/YJ2fc*|4Z`:R)GkAgæ'!\Ɯb9^&VJ^,Tߔ5~p|XmmsVXٌ2pL\kʢD3M= T @"1JJ|3r˿5A({MW]E[U_kov~Q?,7Kч8Lr`Dk\܀Ӊg4s41$d {<"(f2ì@\*$ j>,{.`3":%="G@SȀFԯ<ޭ0$'Mh:Yfr1RDO;ŴQ197iLw?qT/q!?.qgģJT B(ʠ].ISV(}(\he+@MN~TC`RH>y~A//Lm'6zFJÿs)mcƶ˰1fqq(,T؋k&i$wC/1rnpq=T>]! m1j_ͻR \v6aԢKXw$޺,zYP]s>ġ(1w^._p\ل x3裚^gX &7Dt;Pf|zߙGZ%HY)to+ԍ(@^([ѫmtVd_Q~z9.kZ+dmIh/:fb=?bRi=%Ia_pLti X<_oHaΙFD3[l}~vY[ Qpt~N2K7ngtVWZ VV%`tjD^9#~ľf -Fm|hŚi8DZ,wäg$$G*qcyF+IPTcΖYZqv4aUi [-.U`n[gsozV?fwxɄ[^NȣEr".pt[`Vɼ(DË{}CH[AOҳ x2֜YPa 7_ȟ@z!|޶~ "> %]|b`ª>FÂ2KD-z3+&V^G@{z/C'Witw|v,bϜxfF}~)%&۩OPU9"ڒB>S ZIvq6Q[sg0O=X(0F>$vN/UM`Q?TzN(4G& 'dE v_Ri5sBe pɅq>:F!ENOs(F^9Ce |]PY7~IpאnՆVAmr QjMY#+(h t-o푷Uwjs]щWJgP}!zۏ7ХVSb`ʧt4SG7پ(q:U3T$3Ektuu*8vcQC͠\2C]BŁh] IY Ϧ:7,#]|MaEd~a%6 5P-a:`A]Ŭז?u>?&|Y;˔0F&]1~jT;`RtnWBe Cw^ZY ?3sػk5\<8I8qA_^=>W 8#K,v_a_Po_iBE"6ܡzq/EM_AvcW<$ /{ZB2َשm@DنH)[,|(儲})m:&!ZmhH۪/h6`l}jBH{@bZ6ړ:K׋)L-' *n P3S<].ܹğ2寯 ; hB 37:h"PqV7p G'-АU%n!! €'!DRIpх#1,zjhNMw!vtU&r&r0NH*KĈ.pޭttJ|RUD/nmj<J”a핷ʳ%` KZ'ZͯyjOs(`:Y:m *{.`UD[:ж~c! QvAqõ7YIdӃU #Fxlp8ԽD}s`ip֣4K@FJa-Χvt` hy~Q:uCK]LcAgk.9_85lj5O&, D]{@ 8 :! 1k Nc5 GU&6(g%? 1ԝ-sȁ~k,l1k Q^/,lmǚ(L- lr~|g OǀyvՀKu^|hԂiYNMkgb?qcÈHWN醼:rfjX*E;}ϴtzHW%z)uEcDk6VMnpaP2IhO16Mekt@$Fy|J'seyƵ99^*Γ #䤓."׮|Xbg#x7! }8:թJYs& s.(];(h2O:̖sxͺ=~/ϒ1v{9wSzUo\"qR#" ?@ uvcNɧ'gtvt3 X"iU޴#\ e a9f]Lu]L¹?juzro´V TF/HBGU[%@EA*i=}J4$^|7\iq޼6qgU~Wȳ8Wgu(*ĉpwʾx0C9>ݡ++7:#TM Fy>pˉgGaV+ ˙ÂtRб%sߞ|2Ш{iB]? ̍,P}c0C@ 3|}gB-DnL[h79lx{e*ByWCD|<O[41|%·}: '*<22q=V[k x/KZ/dZM\M$}Zbhռ4\Q(\*ۤq0{q(J:HU ?i'IhW&!S^YM12@P@MCnCعT1گ>ΐBuC=52{M m@R:I|\-s:-6ȆNj8zI,/;-w}_X3 0xڃ *PAB L'ncLSBb8u8\#+ЀZĽQkfn1C.qHTP?q0 h;]tϔj67}y^k,fHL3-ck")|;Tavll!{ 'aDRa/9L( h+IN^abZcu٩>CE),Uu(]jA {`/MG@k -+eOd@hBH}fTyoN&xS_"y܎f2.5+_G D=-&@hw^$ݦx276#.n)‡ r Ȱ,?-^z- 9lQosv"s~2$f }wz}O-CbD 0@ע I`j!ع&$cuЗ[G4HmR:2\7G67_biEr`[_M2pϕ10Oz!Fs4Hy/(JW:).-5Y6@ 8?$;hC['_ď]ӂ&x!$ `IwڋKg&h:Y3Oƿځ{XQr5o3cA yƆŒg#gK>,Gcҵ}k'դ/mP7l{FY*":r%쿪?[o3"Z/:ϣߧ]+FQV=0TvoUՔy:KB4uř*UQ[ AZmq I~?u&A;xQCӀnSsނԧeI`Z-;lVG2ZXҶUEHׅh_+S6c9`,Bֺ-}KK xDŸçŹfD7<|߉\?&;O W߱kY9AE47 - l?}jwZ ʒ<^xQ~Āۓ3*W/7](\h F{;c]{о//(2}p@0MO1—?eu`XflT.p0v "8]Rە*%XW9t&`=^vcNT1Xj[m.!)B"em2~Y_HypcZ7\z*΃L/^)'J'`!Ne!U ?ͫ/=`[,u_}}7Ԛ_;wd?Wv<׈D zPC2AORN& A 3jY'էp*#͡אlg/ˮjU y+Q^o ( b%V\O,}@Oy= ^r%ȓz ak6NĚO{+hނ;BZkXA&U5x/ԁl35ӽvCz*ϫԍnȌ+83Y?Q'cZSi[4|%+\ieF*n ; *aj&fuҢ *%a4t\zr O91ŧu"`AH²!׌|b#[ 5f\B rƓ].kZǺ$Q_ߺ1b2!+:w3>1+9:":A8O.z m=#W FjA#LsN,bW |% cA{YiS9.]](X#Ts?1AD}>& }U[C<2;8F;q"/ٹ/#6NhV)ٻY¦oyANz1VS+FH Z˛FJ/zo3wl c v/[Q.-l)`[ϹaJZ8 GOngMAE+]g轮it gl~(FsFqn9X7a^z+k;ӊWm iADaB[Y 5# *-t_R~b-+eph?ES%f`ֿ#Q㠉r.IqG 6rP}%`]Svnf$ a!\Zxm~y?̎uMr<u[~sYL;z=>$%QB8T+(e*) we |AqR"Cx υ##ظ^xxXx%0N6o1 @daVo~5yW2g#4=k҈o LQtd "d~Kة9F5 %QX+:\P,uH ڍX; sӡP /ePb&X]Yx=fb z P`ʐPNٴ;7/2B{=@ |w/LTU`YIKFcjgF#-Ki7' i+Z7H-wnqi xځQ0rMW.J.fr[L\u5 /lk*_8Ą2]/S| (ZhTD3[.6t:>l$5 XMSD&F0NH:LJUp aOA!l$)P "2." #[X)A|V +O˺ 5m^$3ƛea@DV ]Rl\0e(^N7Ag1~䀍*1>s¯w>.<|R E=@Ⱦt<'7WUBDM%?9^|ψ(&$ IGk>JI5ͺ.Y [2G|mȗ@M9G:@;5 ] b],98d$z@t"U@fl@wXdhָKW:@fAW$MV8sX s\e0x42iHUyB E:IN;\®/\D-)aUAǺ[!%+.Ԑꇊǔ&..|Ś$|+c<~pG?ኮms]9l̈\toVdm=R}qp1SЯƟ&t"^I4Vnocc֒ӀL3rt+-D3nmNI/)C}lDKuȴyыXjs7TC.+aOes6b49 %ړxH"q8]{C!^ 5x+}_Nl1ViY#(QqD֔h7fY'!>̒7 M@;Xm;+X n#wWZݶ\/0ڮ7I޽9uUR fR b˿ߗ0I&{$r.A7<:1vԉ<_DU;>p5z_+ K~|GKF+X"4Zm4U⧐4 )`0e"XQp|졛q],w+H̹>4/66)[:ox a_3.-ԀXpş2ېHnAHk')h| ) +9HN4ϗt=٧Uw hTS2dZptڴ9M 2fեu=Փޤ=XҴvBҾYyZ`s#r|k92bkB+-6}B4,[r0d9فa5ϣʉlIyl 5(MØp6H= ?LƇ]S'H4[m4hj!ڢ'.t X_\~qѻΉ9^[I#_]W(lFB;=a$Hn\ G<EÎ!.|dI^,J%rZt1۴X+M}Ⱦd /vBC d/5kĆH#EYY LK!T"H3KŇeۆs02AQkbٿO* JQaNWIḿ #:PXx2JT'8 v%iu Fd,KۼT{q" oÍ_pf@Y-H.v2SBgErB0`7 = 1ކ5WAA/bFw&Ҕp/U$>^ɓKI18cJLSbaB0O^p;az "gu& Lѵjz;\.31K¼[FO#%dE`w|[Z'=:׃ϽN:D Gk%,D#]AwC4<MUC2𷘱hJB8>CgZTY4RLSWyM#'FHQ@pwL o# !C]6ry Lvs΁F D$3\r X 9r+muzzJ'x2X+eT,Ҿ] N zPSs[s-Y;4Oϲ_Ki.Ng txqp''t'cjE2$i$m ;=l:~6T6kbeV֌%e\O5Sxf:PY'ڀnc9a]1hqbrqJW7Ck\d}.M'pLE#'|1j+*\rnF>nqSX~5:L$csWN$b!0, ^+$GxV>?g?c%+8@) Yv芭GA.U:MUH 6ˉ?H1Ŷ IL NqLlI>*]u :Ld #NW$Y `7>cUd @PlFF>9:~M |-Os4uK?/ ~NiN^'.$iod6c.:TndaɰF_R43CKE3֒u%J|RRfO,q\Ha 26 ^a?3FЦxҸᾅF$\bb>[%!ܮ䆡-c:U7d=8a@_E]zawJ6 n5du>-gztT{Y~5VS2Yw]%ІO1[#,ÿj -90oԈHr׻/Hn|K,뇐w}.oMTq׈4I|{l嵵ˆ|+¸f>IqnZ0Sqo=6)f̓MҹBf9()Vګ$z_^8=UR, >Z|(ècd~Y?j :yr6EF?4^e *~KVDMW|z r: [vc*0 0 UC2wujdaJ9"!x&.|S((0u+qa,:8؅Pm$0iunGwyfO;S̹G?L8@brAu6"ue9O6v+ˍrQ{^>f쌆Yw}o)dh+ Ѫ?bp?/F% CêjD16?J:#3IXOҬlz`Zl v+Ś5 I=4_;my/VzFan\7X8 ݒFlF/ Taҙ>ol%RvOF@֦'_G6c}ƍDmޯBܿ7e[EE/P^?璅[鐐`N͙*? K9blC6s#"46džOA 3 jWkP]ȠC %Ф!-2&O Qtح5/L\b>pͲV F:&B$BT^d9n"o>1K8<9@N=`wk ۱7~: n~% /# >t^~iFL޹F%LG#IiS5[ݟR\&ghY.ѫc-#x#-sh)C̝֤ɒM@{R O(T3J {4$eҥk-RK h9 Amt+ xkwhLHU J‘zfe^+'7ЋF&JBhxZ@HoF@K#S GTE|Cg:9[\88yBMCVGO7eB؃#Df[ *e%:Į jsd=t$aMlCNvQ- ~*HYzۇrw/#6]bD,#F 7zGfZb aQ\`yn`Al=2ukYcJ* .*ױéQB˻0,:wS0<϶KpcjFUQmPsCkI2Z 4g@Kso݈hjEUhfWlf [ )Sh-"vS`R{h^;*LjV"4@Ibj( sLD$ qiVC&_,+0`,ql?aƉ=I 0[XoF,pÂ'i&J*gۂhNH"z%^K { erTXPje-Dtwy%(AlW9!%oH7Ӭ #"`G] JNoe:_&Hz!i*H#cvOFDc+< j UTJ?#U$ܞ.}G Zǣ3M/UUѫ+zBgnzomq ko"|b~P.66L,{q;rxXK5vլx3!drw=(mKo3Ime84 J ۉ#8-^#k{ɦ盯MTX뷑T7zZs?H1χ)^#{stEj\sJc~\)ajXB X6л?Z . SzMZ G(uCh?+)/}tBVzY\hWGu9fS"Ñ= Cg裷aq:m3mNOSSK={GO*4*Э[=A׿@Gݰ Aٵ;EVW @n.莱 )&p&"w6OJ$gdOؤ񧧁ؾگ5hhd-Va_H:`>VD:SgGC2W˼jIV&ol2a;!4e+_IuyL}C;JRdz*aD)MbQEҐLyry g,C*#@,x±2sPM]͊-{1&Y,g9#Ɇ }QQjN)"wv#;pf9&ɇі])6 j]ЮV)q'״c_T`o* WI2r:Gźۈlz-+yI%ݬ8>o;"}Y5fHU_G,.rs%lfkiffܧ?łYo*dh_2QI+J'٨<* 8ʔ 6#?d'`FT;FȥБp9+{2 c" Ψf(0UYTwP0qhxYЗrM_V<&$˃oFY 6']B0nᣟ9 /~` V.hک]?(ǟPCdCܮYZ+*36p')fHT)7|iT)k(bnLoM7(R5z$yA!׸J \Vg?C s+p ' xƑ5߇mdUswZLm.]F[& 5}y;z8\,}y[|cxz9ۢ(g^=|; ⷏+*M{: X* e/:&sokcf0ϳ e[փrVd) .QQH^ܾ|⼜gt!甌nd<%%ג+jHKr,j2ʉ[c*=W~'^EU}K_~XDkG湽淝I!a 䓿:xOBQz586KefY%$dezFjc.OLp D}o+[m1">T>1oĤVҗ\Es+[Ijj y#$<~Hr-ܩpjI+ ,Y(T\]:>~IsS+[(8YŷD`1ר$ Ӷ,PUuʑ2'`zzۢD9T쥉y-Icn,m+ [AD1 b7Yr+gCnM{esnBVֶTH[aU*^to 4^/zQJ ]>TJ i v:38.86_Ed!TbxFa"-%p E hD]|z`49TRT, LX`ģ!X2Qz`Lițm䇝,܇anigл7ebQn7پ2u' ) lU5zOPb9$FۆqŸ&?Im4?] \GDC9lὓ3j| o` TpC!C fuJj(wVmpZ_r,"2:}T,rCv/P6f89:eCԀ>?T{=|^*}Jw> }R)OܖD~b}ziRrD6a@k36eLL:c@i=twW9GPPTRY]/GU$vG85tfB2&6y%kp+#!UD$W @f7 >ۛE0W)֯`GIs`|ѭT*+*$iW[lE=n#}_YmӔ^]0ݯ`>˪W|}t;TQWqWX˛TrԊHb+g9d|Us'r78]aA*7{9_ePY'Fp!PPn_-D#C jK)iً@ aV%tG}qDO0t!G|j67rQiX o*aGV&gR+1Z%0L5aQrK¦CNO==6A7+FT" dXomL6\]-1-NBf:*V-zx7Y}xm4)@5F?+, Φ;$oõ=a,`*/RZ&-bdbqQei ȧE<-:fEJ)cn:%PGC C9b$ "m/uMSưe6l3RD* `ẁa J;iyiF[- <乷ܯeJR`M8 <;R Υc:7@@p4&$O J&2Fd~ Ėg `N/b̻=~z{iYJRԤ-wG[y%!ݳ,ȇ8_cV)R;< 7kΈ,6\J^Gqx=z`~ޏ >u)ӌ~aØ .n*Y3پ5C2acST.(pd| E^Y q%g_/ۜΌڏcɊ-Kv \WxC]jX^?t;+ڿؔPฃi3@bKOu C5%wվ-ݩJ#M=wc/$r/Gf?# hKمooO j٘op?9rؗ;ɩݧjDq ͵c.y꾏 ;X [%*AvᕬEODO?B> VaIj~ y=݁9Pl-)t"(K .Gffs%W׆1;N8"ewȖSψZ1Tog2)*9 B$|EqN"x޻+""I?b:$Tg /mhsqbPͼL("EN88F2RsW *chJ0Ʋqu H2T!aJFrrzCt?z3FZ<X De'?Y~ 1I"ލ& <0HlItˏ?ؔ˔D~ hJ79pdp)?dy^:I8TP\H !wqb d۾:+QC>>%;O1C\\?! h F E蹜2u PopN6k,z5~HZVD(D9$9Q"8(5 .S5.k>he|y;i5A].m:(PD;xHs9:y?͙_?iPMZN.ʧz&t6 ҆R]$#u|c,u:QsZ̃CA)􆠩^o (WwIB\Ob *9߁nPL3DPEme})sE$֥_K PU'잽5u`W{vkЕlhSf 8'V]IDHy3J#c7{;-˪^|(CgR;XVٰMF uE Hosh '}#$xcHq%W!v9{,B}a.\@S;Dڞ;p[V)#Eqš| BVf&LQol*}tp}5FpF*O}w-kHUGG;AZT7exlǟ؉P}^?[Eo*hK8^?V8\Jx);PUg0&f#@Ê]-\ԬcG没X(| p$7'`xi_HN4uϲrE.`icUH8ŬN.^(5^+^Z[v Z9&ŧ ݺvұ#[e;sj'ts 2U,|7AZ,ݔPRQ#A8~}hz*Gnf*2)8+=ڌЍ]m1q"4zC Y[DnIURϾFgfs23i V=̒Q0}ٍ?^M6ŭvTo8/0 OU!W@":i"T`(aVWW~9a޼*z'~/IzU<ZnZٻ^s#6|Bd6< 쉼"}fQxǵ%T.G6RL^?n-0B628dI)bN:e+րf71;Bo߆ݗF})hl{FohKD{#$ + tpOEp<@m?VV7z 2^~٨l=(?s{N@#؀Ԭa=C;s!s40 I>ZB3l9 3_l#}$v5DucE_Y2(Pگc$QQ<+/@y]3uPugf0):n57 6&kĈxY%a̽( eq *BVޯ W$ BT?YpsvAp Xܘ5bb&o tr7K if&ͽ@6Ş^~ɨ݅Z=J|XjInGL*L>fW=JZ5f>0&Qɓ]d] bt1@Df0CQ:C>i)ӲkͺԺ(e@|PbI v#\c>B679 3]Y@:$!ә6#7󡙅ÀѵS*I}b|LiT2MaEAY몂Cj&DVenp ?[D \T٬šw'o\ [l H(KXl$i4KJp,6@} nv?Pl_r!|}]8p##M90koB>ndm)(^,J&5ԡj\A;S~2ũ@P E}ڙ&`iRkrq?v,.hxt\^G8t:P|s1mdIjetW͊_ qo&%O@ t'rBsD !_+mG(\!eB@Thl{h2<p&!DH)Gz(hBVI~1® I FbxB6jNHS?P"s7ȴYt"fPD"fql\J)MfȜIٳFB'>hWϥ!bmeS&9]А-BHzpKz 780ɮw0] T[V5sj 6)1OL`禵qL^ZW+xyT}5l{ U$,P 0BÐO°oXh5>;Q0}xΰiv0-fQuER`| x;^B.yH\X2K5VO r9-zD `MZi`?0Ϙj+;}ODJs\[tW :&\M#%(0ZvH" ~dೊhɣ!GH1dma_W,%<[#q;ZU$).Oa٦+-GùS۞N6hE嶥qX~NZI^,2܉[$M8iN`·wM-\R>ЄQr bǩ.cDҎ`D~x[t9!į'0l5$? \4L]X~qI6ˮE8UFHkS,JY1i#.!r~  #gR)0_@4ȍ|v5"\1i, Cǿ$nZQכg+4)e@WFkPǃgk1Q&@#%@&><<CQyBB̬>H dzݙ8<*gp/TiU}>uqQ>JB0(1P[J{y*fHXgq 0G'_\V[fz4' ܷ NKQJ.܇jX6WKB:C-7˛h 8 c1}!=xzVy3 7,Lrmi/Z/i*P!k: L5()r 6YDg]IXwU qX~-p~=Mf罄Hǎ\K{+CLbT{hB1"/FܺysS' !({!#xJXKj-:]j!m.8%kǼ]A6=2}"r%8JWvS` +Ŭ3?(gjZa*"p Lq#c+3PDg;}1M^ \{&w46w]e$Dcȴ#Q'_םUbzjsa})mLar5CcK Mo{(dCs{m;}۷qEѲ5: k+z"'; @ZV5͔uV=6 ^FԿ1qc?i~G$J뼌rʒ-~w,K NˬHyPuyS85[Z8k`_8[*[(Nkc][ λ}<|I#\5f-0ۆB2hꈣDwDM7n/;Sg 0.WODմii0 [UHʛr%[gdl,cqD "<@RXv/ Sf[mǤaY=@5 gp- J$"Ki$V ؇'p)i]x+Y5.UDqW54`^)WLc@͙{aRZ [~`^ؽbF|7.wx ?e(9q@ȟ֜DKv0gyA[C ɰhpc!ͤh8k>$ -%$K35OVT [Ngcssw-wQ ;3v?=Fv&\4R2}_GiHVu˲8rvK(OL46BI*Al;o nޒyn͚E=Ѐrq05*tpZ"/|~QuP&gv V(wG5V5 PRm֊ iZțKۆ o*h׌̢DeVC~]D%fl ˎcUJ*3%x ,6_%m;f&ibCݾ*wh?Vq2%D";1uMɉ3ŕe$2v:a P]T~8N32&s@wH:ʣŏ$r%,K1e]Peu4!Ê'2N|c5f>K`!pR6. lL:Bkφِ:([hN)\؛TE4igu Ät2.ybۑX<^P:{۩uCA4u #tunB>mA1SYmw#`ox?_yztֶ(f["~ |6S7(ؘ[dC!AܝU7,QtD\?7+ ϕk-NKLF_h"6؟Wl[~'%\lvo<6I8NzX@%Ty}c FzX89U<ߣj#h$`I- &G1DOOµQe$pǵX'ǸX`KQl 4 汫{AMDzGo*uWM>ԛ|:3jb#uv:%s/<-Ϸ؝/! kVi6n0d.}ZIK!G+'>t˿ ua>[cO`PM ( s[%WII||v4F@NMQYglGȊ5Bjȳ(G!?:H?zRAzVEXt?BMc9ɡZ};έ_.uHq)i ZoP|M|V.Dr87So`3/ @>Ho%ݠ}=:JLunTqbyI߻B4z&QXH>;G0 F͗z,w Cd>":Ri::{~mˬN61]g5 M8wK@q~N6IR*uTt륩6\h,Vߺ_S |N=m؂VD3|gz R~eQ46 t_1|(Mϔct8(Gux8/nK>tC6N"7BAs^Qnm6!AwvZ ]q,#ת^jv͎ Q3mGg2ʵ[f!ܱqIdӲP+ yBQΙ `puG~~PWT҇u2Eʟ)16@2 )v륾G9s`-5 %TF,i3lr <6P\vۛ_^ sG` 3 &'*]rQC],jȻ_Z,ꗻEn䋤 .ß檴"2h׳0IOtBh\A؏j3u ޢ}gx=s)8'QzDQ5Z~* `?ɳBݠ6Cc&VLg꣑E2E_zYVdcz (ij\e[B.,6dZ:.nvM@\ #ouK[}X ]*2]QG0[/fN]^cy~޹pa,ݩgMTI&0Wx?nѮWV i'ˣd颋 t`^w(a%덠 [T.jr e `[ Qؔ Vt1+'*?CZ[[WyıRf“:g-9Q5og|Ǥ^n,8 3GMmi(Q:B2;b]kYEV=FI][l r+z@?r>Y Ko=(̛2'҅>%h[5vIHețJ}Q9Ngw'B;bz|Pj4sW:v񄧤~O쫉,LDw=M\+$ [ iz{ +j|n[f"x s+ r+͒.$Rr;ė@r ;{(Gk'Q7#)Þ 20{) ,[n\!eKB́zeE{VmL({ gU捼;S;|v, 9! / eVZjGv5l6 K_GjaTգ/m~>C:Lf1#]$Ʋԯ|[K .EQofl|m^^l^8C>!3c&: P-z+A9Dփv8[՛Bỳ} =R4ûm6!R66~ds> p WM^n\|hv-rV)4iA4xo|^R!^t%@XDE88kF] ]c.*fwJb9_ Iߴ ABF^W`(2[Qt056#y ke+qx 2RUDvFD%-*&4vA@f\Wп3P-3s ?ӊ .3M*=\u. :yj=7oP 4ji-wV־7T3C~t_>WE]z` "mȣx>%<(w3&EE20S^ dDz{$'`3~ *[ŻQq~&?}E*$QTpMfU 34ϝzhdeuΤvLG R8]uzd3*}of#)-Nl1|Gho PUkƀcAg.[BJZ;U>Dؿ9xFbE:w>r9j& K-Xƕ"'d}.JS1CRH sL= tLI]Cd͘H_BTTkB+o֦۵efwjI@s^(2lywQZi#726mՑ"-a D~r1 &8? :'D=h[{v.) ]:%oZw=\|G,%GBv`8K|jw0ɬBW~ɨ\S,TP^b ]-FʣQBX`=" 5j WlqLMFZPO./ j$mpcSm;mנ v,!,.TD}%:WLS٬bn>=A١Kk)iH0%-%NR.jzŰk 3`oSvgs 2=8"w.Eޒ/AK@4G"B.YmB_hi~W% N0jjo1DHoqcrYý4F?>kmлv D1s=T~MXGA;Nn0hiv=vS 9MY\hh+Yܐ NG_Og,͡7t ҷOE:D/,-ic2̠aw"lk4v-{Og-"P% @ce5zQ,Cd ߙ|q O Tp7v[0#"L fxRrDjגH0In.ܚ,/RY`*I>$Waq~1@7\ $dּ/c=`֪|`{6lX+s f=*|4$niUQǀe9vrkާ2o'?,4[xxX97:+7P'\ JI//4׬IPb<*J_˾//Dgg'z^1_Sy} 0P3uҍ0m_Oy\eq`;'&I犡JʕFTX6@/=h&ά=.<)x~p> %?Z+3lk6L`i$(2SUrb>8ϑ!G7`]}MDGc̵Pklr'Ɨ&a#0-HhJE 0ӻ -j*8dEs}'1ȕMv}ۂ]ޟŋmg[9QÒ{F !D`Nތ0I1 *B&}_|BYCrTfK,T˲;v{CR'F̓s ^1{@;qj9w0:hY/g9#<ȬҦ $KEG{7 iݦ%leh!GDƼOv7J =ڮ) XΫ1L"Uo)wBvԐ远cDԮB͏\^_4 jkWҪe%7!F,Oƺbal ;g;Q?fތaP-r#\yc&NHN³qzF!unY"T1U-39&{KlmIІsl;-\.GԊn8wdސmS0g3BE@G.l휜Ӝua_W(oCWZ#|S,;nnF_Wh# WYq x|vu ߰QQB;{Sy$m 3Fb6 +;>ya ̵FCXI[v 4V".l}c r騸 -scN4k]Kd!`&$-I_",&XԀAY1kJaE`{5΋[ꚇiv@ّ±1}iT l_ɗd_1tRPK"|yAc Jy,+Y  NTh-DG,!n|ldG+<.S91sUɛ&½\q kn)%raO_`.<⑀r0n+!>0Lմ ,٢Tsh8q[ TM#Q.`|w~I/KC:8S.>=_N*1#e%L)йkԲD|מ܃)0d"aq[]c^nar@{beO6S446hI5ъL-!<4_%E;IxK\l'lv:;L:Y`q.$ЙSMêfJ<0EPj|~r_>@u7)wW.i:`:o\2N:Gb۷LԊZkƠ3_+ӓD $d54>:m3`wH%p2l+; g-x W G U4K+,^Y o${9~ЉPynhH@h.!lx ]F ]4x=8:́zi#x`\7|3{ x-M`b2no7|oOad?rˉs=}ty If6G4:{ ysyUKB |p!RJ3MWژvzJrGS8k}p.Y@ `L!!ѽh80a{yBC5OFbZ(xE@lRX21퇥+L'Π@x{Wd֕ս8 }>ilK,6<3fAӋ8 K S"*L9wRؤ>/ϗy{^IY Z= 㧔HLXf#6!Bo՗q`zlUjՀFK OLWX k=4,*cw?Z<{sZGt W8ܮMLGaFdscy*Hս `|o[k8tC.)broh^a<ˏcK>޸ a5#zH:v-&t#6'jz_a30·OO8ЖtNx< #`Ѭ[}FtwlhTQ~^ج+-b.P`b}-{=ES;vriVPFǚCOV58K3 S/>mXDJ\mܫA%#_A= _Hb4>JrmQ@߯*'il?^uz`*Deck#pj/MI׉dT _#f{VJq sK($FȎWRR9Q8!˙JpNԯ+Ȭ*˟ts0{RΡmx&E$ Vxmeno\z Zw9SISi;Gme-ɀ14GR;>)eaQ<7^k\fRT=8H/_yt 0h7DsSO7jPXBR&q?g%b iDCGuXMqʵq,rvSdMkf6K3ho.oO}XRd [ˮ 5d UI& N8]2㞸nc`K7h]nCjpt3%ThN$ܯ^DG2ⅷ脲(aUc|:7rCتD-x:TMgg sqɁ̦KH㌛cu_iO#qN>|7Ar⫦]gY~9 GUKF +_Ss5@ΒYe@YP!ؗP =je#3Sbݜ%1Z-^_ɑ]:—ln6yvfh$4 c4gem%XyVMLnf֝^g (w+ Qxl5 _Pr qZa0q2{Pgdo)ՆWfO$h+a SCKۿa&(i/I&8f^ *:eMP9A]&󣁑'dhj3pB?ot4صŸG=ya= P`(,r!u/2.Bgr!C/#Jj"UXMa 1X@v)?1$zhNĖ;jg7C~FjGnC1b~zЄA,q[~|! u1BGW7@B).[QAC]V>6moUm0qu̹z9Zn~qwVl)o HW$ ӗ)jx+Z₅Pi(c_?J&q/4y)u[^B5Ehf$&9-/X[3٘iY=볨bgO;A5)ɿ>:Un.ƠX NONy4@V|8=n9?8zvYʛ:ӡX\uj1LT7M{tQKtK Cݺ`r%>^2SFRS.+@D6e_1i(у+t EB#B__ SJ7=8t[Ra+$sU18TWRAOMބ%;6+7(<` 1W.GU (?`ɑ^bF|q9/==Mђ_$n)YR9W:xg/!aJ}d'ƹ./й.@%R/͘E2ěx˲AnУ?FFn E^cV?9'(\R%do[ ^k G𪵚qAmZ b)> 0`E GDqL^%t<]X}`; Ĝ#d+REnu]cA j̡o;^'v(80m;]~Uc 3xFIUA&l\CHZՍ9:J9E4Nǃ-({0m$UcV5FT:Uq F]p(lSĺ*bǢ5hR7JMmU1H*u>gGy>J%~U{IHMŭ8*^,(PYu8Ù=[g"Fzg=l?tp:m r1`dj&m4jG,nϲeI3qܨu`&Fuu\X\. aFUtjӝLP*yGΌ,Wd4(75!t(Og[Xu1A_OuQH(<>Y+q_az%BetjrЦ&L9U\$p},a $\"cpJ~ %YMMlk)uQZ"zSF;݆ ASxŸ錙,z,8Ƙ|{K W+!Wӓ9l7p롊XgO>I 1u5%b!<.خ }D྽EXʲTۇi5c9<|*tjc:m/$U &U(gKR@=tvZZM53 [t8 )R>ѣ!JJ9!ǰ깤|u-5d:#)ܼQs.}A\GnS+Tohfm]ȸEbX]A6ej=2W_zNcҸO254X'yPn zz[-K=1=_Cd.:iX\r>[. b>1PW/Jks$Sf5ۆ@.fp\MD/k2׆nJ?w=|؞l .oz ]Le)t:.㜫Fv{)6XIcrV[\j=;ZR-ͽÍ7PB ARG 9g37hɅK ꧐U%A#nWq]|u5NK fV`ECYOF4BBKdNrgiW*hb yIx\wmOA>>j8S4psx(GC-K  R<$#|OH&#_W':fcG/# h}J#!&D!\tJ;ͯa-` DIb=¿)C3ŻvvWCəU?@#wn^a$j}!Mb# sHxγ@aG)*Û4E@! l˴;z ; S?.Ԝzm{4EȊao@oU,.KfST7r#C7:N&on6ptʗܛ܍'L23lbȧDpGI*YT 󗶗2K]mh m\ŪqM3XI1UN|J\C̤<0 <_}46H" =~;Hj1 7,s)lEƟݶٳ92R?)~/?qӲ&ZNEqp'/M@1)u3>~?|~=>*#IT!=4z`0%S 3(>8r`\2 ?6 {{)lVeE,X زZti~_"/[@OCW~}b3S eRWx/[5 gІBc)c6xxC%;|8UjGjl#\zJIanϮ |h.B2e,}HDBLeCm{ S o_\4ࢻ ġIhr`1"?9 r5{:*AS=B-Thhviy(lI(̸Ÿ Ӳ.. Ӌ6+n5/.ϊpzuRZ&#!js+,[D5@瓐~ALK.jb)^'EuΝľ-|Ǐݕ81/"YWU7嵋wb)W(.Hh  fNӣp.^5|U &*8~FܦB]+MVpv*lT nޘj؃?!PG{#E[{'`PͮӲ>FлOkI:tf.Ũ#T {r!́_opFuxlI:<Г`LsyKt.ҥgWSh1i? D1˴uϛ.9%zwBS5b%f#S= sADZ<*68dcֳ?I)+БU\gQvX%Ƈd>FbVAF (~tu5ׇ+T/mkRڇ!eٕ`݁"1,4d͕ӊiG|fn]aΎ*: k/ %ň;^wdqK,Ȑs{z΂f> ӐQ3ȇgAڙ4,I9u>!A^J)0qz\9]bZ6[hYycbޮ y+=o^_6rw R~Tfv]3s'<;Ą=p?meE*y躑a)g}uTa@qdj|ו0]kU$Ei7(rzuD3@s(,vjQF:ѭzk{W;9jssQTpwuߕ~"NӹG]\~kfI %* RJe bu5%dF\E(db0{(>GxCFES)"u1XtMQSl8 kV nJc.Y*oBynӾWQjl>;lE BDOl(o%c}_x;OMY:.kZUVXMH(\nĖzdH'W xf@9 J˔MNb]@)o=O/zش|S U%'Ft*I>JY]Iغ(ϦnB/Jֶ'Fr< >x2Q&u'}A|cu԰ʼnO#* 2/ѷPҗ0ޠ+6OJ#KbBHɧMxՇ5-Q}q)@wkDlj&\}{8uas޵TEqʍQ;"˛22bP~ 8ᘣi_#@íYɚ]$@=-d1ϱ4Hb,|45L[[mO\Gtc⢔]/*J8tϒGkgXm@v\vdBÄce3x6?D. cEҰ]ޝAn& &e齮,PIB&nle '8L^IӬcvZE}V٥gЕ;̋U5]B7qW #<<.P8)3N>b@iwz؜I(01mi_+ޘl$!<(o"5~[/<;cR[X^Ɗ8o"c]W[5<(Y)KIJ ~ J'Oqe~Xv^=+5)*eʭ[{z9S4?3&ʮ5k,"-] M+60m$pS#8 p.R9}0zT[ONmeĆ8 TЧ<n'ΕZ !Q|sSO3K(fڒklBG 2k`§Z`-gsVNj]؉0~Ri7s+'gxS&y{B)l7ڄ]f|_V`cV?%vPxVa#Oŵ^/ˌj=)0b,<`:U+ieARmw`"uyr+aPuZv̆,fwKL*tFb6R37U,)#d vrD*OBdK.+ֿQ̌^A*@;wf1H P6`w0)t3o"ؘՊ#m pcyɏ9*T?M_8CԮ=;;6`k;pCvxAwGcջKŃ(0Cwf1v_Ԉ r]CBZ-΂󯑍HNAKՐIBvw{yРCC=A(rUd';E!P#px}q^tAd*<%bf C"eatlc)|37]Mi sa=(EK=hH`K͢(/w[q@ÈcD08iOl|:Dk 9)rJI(uYߡ;+I#'mf[j'W;yyyO)K cHH)]6=r[m G~kN߅ %0uO艀?˨\H#s)(,ɃqJwqpRV"(]n|sUB쀸.a 6D$r2iAŹE%}wŰ~X\  ꬹ=♎)+.oG_z=66ƅ4ɮ4w(u:4+Bӌ3DCR;L|*.DTs0 +}̈́'3]sFF?]x`d~ܖaIfe"<dnԨa৶Ӯh{balZyH-x.f^ BR@Ro*@{nNJiUwLc fLx ǰW/ ڑ8bces(B nxa/5霦gZd< xH0;+e36]r 7>* ]BpM*HJzpSBr`yRTqcD)7@^ml[^Nέ1sXYxe\0%^k6gsLpO'/6ј-QX 6#g8=+O%,"[{qG%s`xo(ԟc<}Ӂpr 4G,CJ(Pª+Rnu`|\JG+.q6hkKsgOs5fVfgL~pC0C0Z'' ?n6F'H!}W|ܟV,{4G~WI‹"khQTto.l;@VfU=J^!*q #b 1 lD/ad\Aҽ͕cJ | ,9wl,@!' ug ҫuMǧRw9Z>+ug0{%  `{7O;unM+T4|;RK':ކm$&>e!+o8%I*સdBSQKBR"izT ;د祋>*Wt=v}6ߚ+{^Ji svjJ#8_-PKjL@ -ڟ[anXcr?ҥvFh#EHzwn!MDd$-r}*cLjOB׎T̿!=g]&(:އb aOnuТBCȟ< 欗Z;V٫: ة M*8Z#s͑ʰo.H)%0+iwK"&fZ(sk̜FLZ ^sjl UvsEȸb0UygQ.A2q3e=dB,>_ouxsF9GVYp;JGaG\D81X eu=IJJ,a)AQXid 5`P Y;>7K\%d dSjJC0Fb0j^~niS/ޝؘGr=^~Mj}ww!T9H⇍q-BȆa 1Dmvâ?#A@WE_f73J 廆)\%=hri+>~H2Ǯƪnq#Kbmi }xYop,?skv(RPe1g /5~->oCZ4Rp6;C=ol߶##Ⰼ8 fu* c?B0\?;: ixTg2:>n!,-e|pb^ZW\㯶LJ,tz] U[U ru>6bmd1[Dp7#=_?|KEƮi4Iw76=t4y:3`mod]^|:j?N^VחAG#A)]5tUuWvabYaz !SU8ೠy?k$[&LR>L ;:/|= h,5s3-V%ߤ/v*F=ZcQYߏEr05i[j,O 21--+h_RO,߿Vgd&W ]6~Tߏrp{CG$]ȌPCdZ'%!Uzє m*P2#?^vPyQLnk>7cW`$gIĞ̨ FUM{4h @NQCj599KË{͵ډ6HM\Uye*7y[0pmOxsib=۵ ^*p pk;3ހQε|oi? M,=hYRyhYP-E4`eUTrQA,f\2Š8==}~F]s<30n2⠁;i.=pepQ&_fm]I#yw,~w2<+>PX!cx+ױ ckd D  w8V  JD۹5̙XĈۚao|NMa(LNd@!.uww/GsݎV#%t8ݬVhbxA}PWmd^=FSU{~oph6N&f~9Yh1 4)m_X a4o;\衘Kq% ZZ<ץֳO#М2Y 儴8pLw K]zH>ؕ(עf51fGkֺSVcg^޷}-`{S ] "?]KE6oҷd'N@ZS+I10gµdd@ZE@?Sf7gc,wr$kעCsBuhFCDQ~XI2ok;:PkUEbQKNR3TRPb K3ޟ10偮i,_ ~4|a۔YI:m~pI4]%Xђoo?u@eH{Q3xҹ}xd].4rJt21XBNGBi s>  T:/&;}Q/1ENAl=b#ncZf]7ņ%v` }0nLD?[qƶ'Ԕ$(}f@T:)mV"Qڌ=%$(۰ ?9V1J,h"V/J|=trTb+0+^^=d؞#Ap~l$2~WҹpZ;d+d/w_s8t7z)&G TT袺"4AXʬЀVicଭVX\QlQ!^>}_'[KhLt(  ʱصª%A"UC0js܌$I}/C/7:o@pY'l ~Oab"{ n?u BNc$"?^PgqE0gNA>( 9]빨$dϾ7Tft_`lqقҒ9mF4BFӌ9;%$x _.X}骯}H| /![&bV#񿢜6<{y ȯJkge4-)j aG}R=&8}5OPS~c"gD)Z]_ ypa.UO f\"H&-ͷMua&tdiCbDH).g Xѓ*(J~7 I>ddQ[p!cY8_ERYӐ()04DKh}=bt81T%.OP2책-4qQM [~nۉ>"Pɥэk2:O0F{1&Ⱦf%5^ә.Rī. >4ID]2t2o643s͚9Hw`;#Y.7/>5pƩjqڝp-|=68p:)mfb%K4}MתZD$U߀Ҳ]<>]I:$&"|KRD=z`:5 [V;TB=۲  %zdo9nQq,OURo̞U:ƣ],\(Lw2~}_  x=Lqǐ%ݎ1!Btl7)5j6=g[,՚z+e{& Af`o[~^^{-f@ C XtK0ݡr4|C9 E4}"E 2tw@y#I5 ]{xyG41` T,&O h@!.nSE 3|}rX;hjyu:?;gob(`L:;`NAZmr_-,t`ݵI|sH%{'U)"oT,en($^N_ZN!"ߎmԏ\{^] ʆ/P72 AŕZ2l]ۯ CqңkK<3޶(J$^x&]JAMv|3~=G91yلb+[XZ]4ްӣBTeKnm1Fm}Y͍辍-=0*Hr}0_2!C8i6^kIwyJޞAzS0GxVCeޱq OQ}Oz@wuF6Owdr~#YQz/H:[9}&ֵM5BT6D2k,62O,>RWH DEW Nw2ۑ{~eK4^cj>J"b-Bs:TpHu ވ< d^%c{G!N7$'uOu0+9,GK4v5+y2rOT;Ð9[TD}Flyu6L0}w$$9v$ u5;1iw6{ YfgNP;AhOJU1R4LK-'Z; v 6cn6]8tyˆ>(Ȱۜ)'h2~Q!}k0~Xc/u_6?ݿp;oʯC \Ga4˫o삀}O![2dn.%01 U6"2,:2@Rw^I-;u]7e_UL PܼPMx+D)Ӗy̬$8;Smy-3Ä(7ɅV?8 W籒ǺGQTT!HS(w܁dal݄㲬gFK1{uEC-͠)ƴ8XMA7\ey7K`aܨގ{ʪ%5pi9&`b͂ǭV|}yxrK`D1XsV (Dj: wAth1iCm..Y<5TЪ^Un&26NdvRJ~ɾLmܽM8qz 8'&lEJRvTkپC># 0'2nb(TI(XvKw^ ^OGoBroト klaYtٿS 5!8zT;>;sWJXy,(؃`U| pLx. !1S+Q!*5`?7h$M[&C9" W [,6.W=nj3yl:˄n"G& Zt=4P۝ΫѳEw!fz a&|=,O*Qpc4^_%]G6DCaHH-H(;w"U_Rc A1,\>Ee;Yݔ{Bhyqcg];fKd;Ζu}Vܯmx|.Z;E tХwuPAy̜)H;JB+knw aYT[O1`jq"VJ(jS *e:\Cа/mXe2T)ƉeH@$ 7rIc0\մA^< dȢvvHT.nQ H]Yθλnz[nۼI>'&9gu# "Sm˖)"!Z)?mJPa A6rQe7>R ep~ْ~ _9؞R%bbh7v/ϧs۸3k5O wnMfN<;zŀn0`dAeoS2omnGӉO(P'2qs oIBAmNasg* eZ ϯjDPkݚF\. TJVU*kR,aiؠdK+Z!WC򉅮%vwAqȾ;j] 3;juHX3בg7,zpUA.j%p況1 Y$][PɖĖ#BARwukQd%984=?ͺۅ'WQG*VrkE=\go!!+YF5$fuN7=ˊoYq SDU< ˥ʮEtFFj(%~d&@9%D}:jUwnyRouE˪]{Yq8^M> tϾQ2&6a|J5YYFoloŪ%H6sQ%V^}/e}ˏEoE&5릹BOPG~; vm 6Gmj*ɘ$DehW(>yW*^8@KЌq6(K7UbJ'B=pȝU0ı:B* :@ }z^Z|7yYO? UcBseI:%-׍7y_)P'Tܐp&S|?O')lxZrQqbH>/lI81QY!2_0C@hR͍zaz <q9cC漊]sDb%]W8~w"SG+PGI ٤pe~# =.`c^@$:U3" Vbi! hH+vgY7&?aDi(q*H^9H̨5')SCXe c)}8QvAlyja㧒ɣYX? PcSsVb QVx59@UyYjl7U’r/?-؟ [*cV6y;,ͤˇX{Ԛ.jJ_hc0/S0HN,T3~|1*R4D H1w aeW<[ڼH0LfI4$YFG?Kh;Q Zx^sd C;GqA9|ʩ_;H ~qMS8#+yenf!ِwrj-:&dʼg-(- 2Oݜ)r˱)sRj]$ g>6>11w*k'!p0J~9'>3/8^#Ķ:܁q_<* ̚]-y_9..JǼЪ@Ugv8*V$5)_GG\ 5 9;P%7F4nsȈ® i&0wv`>׼)x&Iǰh9qR.@g?&{F#KirjErSۄQN[KjL>>"JܧWd!-_o%mtKiPӯ'z].>l]j&5G2ⰔW*KM90ܯɾ ta+qzb:_:me.즫nc:#+414,"kuc1~ʛFˋڟOwt'ӆo֬Pn]3 ^(U} SEL~vvwbj_˻>R|U~o_|ߎxZT. Vϣ ll֠1w?,@]N!%.bݪ1=Ŭ{_k6 ? P1k6oK.VRun1~9Ѳ%hhz2~^6&0HiyPFKBAᰆsL29LrMy'thrLxc&L,{RkU2?ce9yV[AnDp1FJK4>+ ;؉-iqKa1 \Qui#+ujǙΐЪC=kpbS|O0cKӦXj 1N+ztVg&te)BDݓ4XcHY'Wra%YzpDw-r- ov~wa Xrrg7;O+O"}߆V゚,k} 0[AC-*a;ĖQ]c<b`xCojIن펞 2`4cpΩ#pIi=Bi r{SB%p2jƽD+'Akdj`gd!F R* 5^/O}CV4;'A# @ 1V;B.ȸltݒ5 m_vH!k*@ݬ\ ,Pn+Jh5I?"v;pl,DU)d T!4RT覡u(z̜}\X.4jk2P(ax}e ZG<{, A^)$sֳ S'".-[Ti3sPR)?m@>V,e1&Q[1&0y Y[>Ϳ{yʳw"eMTQݨEE7u3+Q?K1Htz; Aw*n~ BO}C[u\\nM״j/ZPnur3i{F63G![W 2ib!ۆ}&*[v]R=(R!>ٵk\}8(bN_w4wG!EdWҋ5P.HjX9R7r 5ZDҬ¦ݸקyle E+N̿=1t+#k}fdv -xM}]ׅڨǕp6*ViaަX{Gb)Wl\i+K>;Cp;cE,r-jnJ`Qݖ2C#anx~435E<+ ),X7mԄ/^¾l)eW ?J (ZTY6A9Nj⟫y!*YXĈkye@*$@00V@am4jDjs/m'G)C)]_st^dƉC[uz*(7NewG<-![sdt R2q*kF1pew^;1NfdY^'x{?|DqAdx 4 YIpØmOӀ~*nfH$~˸B1mA$Ԕ;~>NC†H7Fupv O"T]YgW .;ky]ѥi˾q U6]iH`TؓggF;"F~7v~j޴ҨINw"VO"ԝO `0da=(E\󇱁J h̑gფ3<}w[༂e`ֲ*@VLdֱF:lW,݉C՝Ѣ+0T_>^p͂HI;!M(s:цj.*C/cm8\2zeοcu6iz郕I8' ~`F~;)lqB [rYa!ij!a8,䣥"+Ԛ؂W'ҖQ͢Q{_C<4舲eu|'|N`YI.NtPrQ]"N0VE0vtnLe3h3!wB𦬁f3r6CWYSCXL-o|BҺZϩ,SʲLt揕*d,Ƈ604e:qڐD?]Dh́rẄ́޶qagK fb3OL Wx҂IGu$JmKD،/U⁉v~eP q;oS1dY [s/ș JYQw:΍v3Y`:W$p!^@dO\WS칏߳.Q2ۢ`qi2rm*{Áp8X$~~l P) /poO~>3[ٮ2nndKuI)2\BG_97S_H7D\9nx>V XD"=F:aF.ge=%˰JQmS܆r^i ݳXƩtT6L2aeF D.&n,sR,(4ΐB (x=zR7>'lVw  4⡺'7h  9mH:&,#6y^~Ioᾒv9 ?Sxb"uc?n,j W1g+,vA=^a\2Eq~HYЯoF ]K1?:=6oɝ|=z$ûytymLh1?l^ FsO`MViB!&*#2`vpxݰ=JG"vF30Y'J9G3R =(0:O:*0mkiP ْlB߱&,Aq7_jjSӆ%K26i-ݣm J]Q4"Y4_–@v7~Cv^ԦV:E0]+QX?(_LȒ_hZ%HOBؗ2g1LYfG,9.tmN!ﯛ[@X䓎$;ԩ́K00y463@؃ X|ɴCNj3:7[aݨ?U(շrq 뜎!~g-؅вj4$a袢{{+ )=Ep:|lpheKߐ$1wVOWa6ĤK玦` 0__8EU}L N30^z,H_g>|[Ѷ, ʧA;D-F)o 9@9t7;+p#l6]@D3"}1lA"fL_bo#s떶.9Du=VJH+ %nO`5:nQwvW_+HVT(mmj$/KU-qyt%Meb^3:,Z]u$Ⱦ6`u xVEJxO'7d2fXˤlnV@=z'tLb5JPߌcttD4?Hsg>2V rlN$w)v/VNXs &?/v]AJTWre&b@i Q5l#wX?~EYed'#/^|F^U~i˭R/mv.4ꖭ:O!V͕9BvM8iYWRp\%0 z~q6.`6gȅ7> $bQ\pq >pa0Z06 t%*.A۲ |p5\׍C['^ e6kp36:u mRq@CؐE_d㹇NO :>d!g_Fc#"K.2 W05K_>YOnu 󢕱7Ά~yFxװjp{@a~I,Jqf?N}*8Y+)4m זY[\8=n xµ}@|epMSotPB-JY9{Zd6:|ydXR~qTy::lHTi`G#zj;-M+%8[*7.ٕqhV_/]DA!1+ㆼH7׎w=46g}: MZlV9|ѻQ""铰U$ֱ?&/t>WFDM%2#Y Zc1tPxQnDcU7~Xo>^<-9`B$xGY|6˚)YJscNbdej gqM b?w<Z ~GNhwJ3r]U35O3Ud^<*z<.31V˖lGcʚ:{s.0aH6Sz^?~s᭜א$֌^>lB `h7ueϽ2T ~$vrF坣m! Tac*qAx2o9k%D0[jC[| H4.ٛ-!ː'{`sDqLErAV6*g2B-E7"כvK8`MC ֪;׶QhLU +]N_K_lŴ,'GnHJ&kR;|K"x*GP[^&cc~byD@x.$)LަhZ%8FǙbd)=?lȒ_-}(Ӛ-?toNiV3N/<T"Vk_\hy +5ZZ+{SHXUg$n3_`P''Nu׮:.M%=nk~nAN8cTWb%XF]rNƇxU҇2y3!dpgg[R!J Ai&em1Fc=^V4ވ"[LZ. 2mVugxqe ZPC ~5\= K~&!7ڼ4̛0[)%,W't6Sqbɐvi̷l*:' Heƫ|TM.v;&E\2 ̋0/>d pe*cw$t]*L8Ez@zYleZhg{vZc 8d 8K8ƍW:i_pd0,ϯ V惜tW`ӻe˨+\{_ݥ50ee}Eɹ{emm̕'SAA4l#JhlpPY=Σ|stFG@wyzDF  V= N{~BUy NF͍Tf.$z"KpN3-\x\>u8A٘_qi*]ɒcҍF-k'S@Vklm_#KY{}YDz~20dm5j34B?&E\ܮQM z[>+ӋXt6NJcDIcʦ+cd}F>ww:5 u% 6z sGk?çcxLρ[J"K @)Ycd:子 ɰa_GM|(2c"0|1> ORa}&[m|X80c"`[vWH&ʸyo968h~D9%QdzJYLm s3 2t?v/%Gp^üq!uńkZp2ZkABGzx'P!K?|v\¯.?{ L z+R.c[$,*BHڰz 'U>b3IDnm\1L'B^U%hf'd8%kMmF%pI3CmMTPg-F6u)twp*Xf_,M򨚶yN.bifd;/+LՆk\}L qm.: F((Ȱ1s9ywM*vTrWbgǹ{wG(E~m/9AX֪@7>5fjޙXPkqꖇS39\ʼn!M #yKCv\6~47]bCjl}v`T2F$BlF_XLq{dtwԓ 7 |/i/7b*_i'.:h;_ɛre`&OIX6ul+o}îqfƱV,#1}^!3W #<|y}ؾYkN?6.M#1\^f| '֍ Y:fd'ZH9n@T? ,KR|-pIѠ?uk2u^5 NSge׋TAY5oKߑjXv_tVՔn)=s'%7(.ҩqQE/MbVfK ց=Rs)gmn5bfX%{O+xeɵ27xDtH"ص4!{DBVHF>D n-_*af hqSBqr6wX뛗>Z匡f(Fa.^ۻM4~Jr[QAY[ƯKkBcE^?92rxD͋KD7s@k6ϰhK,gBNv>֍I.r*`q6ő1zPRg"T spBEgRT|_= v|0]&^HsDSN R'W$vℛt̓m4k? fҬݥ"p@yKPQ#O<)1!}x~YdCa1CF'_SN2=2X:X ~AjE(y-+4h&%& c{#>{4 DE+}zʍgnLlTأe!X|%m WLYk31ZKL\C_uZ;p1-RĴ:x]GC+A\ |*B$fS ع;h-M}Еj*bc1IhP0z-VY}{OzjVkK7JW Sm1ië8Y#rEEG|8ws,y\RuʚS6mUˇj~?g3zNV)81}*87ua݃s)p ;rZ xԌ-(ӌtɳv#q3n,PR<#b~۟[̳9kɸE_ (- _~7.Rnf=vJ݆Ё/˺6<.T:׀-2pQT]Еi~.`%S7"Vn3ΞE! K`FNQ2hQ{u+Ys:32;!q cJRSnHRvr탾Ql"V9pr "N+-fݹ[#mt6~g4ҺO.[SoTe?Vَ;o_N"WaN]B` vUH<􆌛e7ςaU*oHY#9 Mx(]ȥB%K~ѶAL+'cS8 ]EGyEρҕ?VS^kl8k5?@ޖ@cyO՜idW$vfhZhv0{Wo ~xU~mjtN`8oůQ+{#U~.[Ts Uc'OvE9ש3 V^r*$"Wdݎ="ubS}.D7w|Bv%#WBFX Px{G#D~ٚ,ӿdhhHPQ tIbըQ`A<1ɫgDf~.HEK561C[;Ap.,uq;ŤfzJ4Ztwԫt` E\Eφ?!5|{l8Rȭ<.f&A"ɦ.U" 7$G(OkS|]4NMo۩/嶺oK/8%O؂y?d|<ߟD]`OSٺio+z @>s|ewY0?)Y{hj]A5 ?Um%Qj&<OLA2enQH+Nnlwok{iQ> FsZ7ޜn`xB2 hU[10 Adf%_FfLBF< 'H&HSX{7Ob/ S ^yA[ĨfZ!ؔc w( $upBgX@¦) I[Bt.C06::I#&48wq7 l8 ՊvA*iKB"pwI,d~pyO Q1 LO,9b\R2p (f9f:_#!4!5A2f7g'a mo|OU=Io[UB_%4wMܛ3#߯\Ui0W۴kA*46vDSꘘZ}i%7ጔ$|};0!9[rpsTcꀀt%x$Gv1քy 5Ŏ[m(lT+cJDI>K k"tRe} 0C^c>UEkS5~ͻ?0 Fg}g=l99K3xB$Yp>El8 $lu_ҡbD'QrLL7HN_o  Nr-*^w +Irkt %&}\<\{p̎7C#!($QedvYpԁʜ/?_ZW+^|_>Q1U}?;V y5AGp}m"Y[j.rBͩy$/ykWC CC¬ZYF7lXbD(=FM 5H2/^y2mnV՝V<;YeF>K)kO!CRT2n`*U)p^i ,r{ CB*vXkKeMWKjIDU\XٔȘO'F<)U$uyit!vjn# ⊂Ao[#%8Xp7w:@.|6hIƠ|F\gXg{9*1~ O~ʖl) V0^Xp[Wy~¿mFC1H! ` 1l&~Ɩ.7\myVHi!0[SN׎(y{Rc7u?˒/# 9}kAxr2a 4fn#z!۠_X#p3Q0@֫<#)RgE]fH|C8"ʹt,ߔi:/n(~=;QVQD)®,‚ Q_mn{qp=bK ϷsfXuq u=obv~Ъ T ؎QȮ}Pu:wbX|I*Y譲<~:St`fE!l/d\m&SmgXֽBdx{z&yQ.m>g67v\͋h񡇀&bt?鯱l LzΖpe~8-Y[CPDs72ö}Pj1aǪ("u St@LNva~IHjMooIzG־ 7~K:06W*&c鉵@j̗Y0.xL8sL [\B)4ŨO$FUj"mh.uV$2BN#l#F]`Oz*~qm]b|*͗w/hv;ӱ>c(:{Wt\RQ_%K~X&Py t=^PPhLD'U{Bt9V8:0'WlC@p FNE,W"K)Zl H&a*EDxNܕEWx DCw׮Q,Cr9LDXXϞ>8Tc %꣞ Oŧ] C)y/ ?`".X@b=H ICÎ$~/AIuV| Nx`zE4P _ԥЈq V_=")7g}!.h ܖu@Bbێ5T\BM-N 3d'ڞP sY&J)h˰OGT>i<麗Է*mo4 O@ m6n9> E6˝,J3aT9W&/[S;@`b henI}۵waKRkر ڄ!6txsJcEl68?թIu9e5x/zqjw+7nu{^/\Iz¦lEZ#ZFeSSVkuX$WRXaZ@< /M3 ,?Dnm0Sڄ<{Rpشꔔ< &PQy \L) 2qk#P)#WȖ=&|hR`[ $X55eu)'bcC?>.]{B`[tOid=~IGl#d I)ur&pmg[nBX7m;p Јǝhjo9@BzH850`IGvy?A9D=7*ԨP>ƪ\Ý?NހmWCa*2.M)~b+Bpeك񍗛T/]S3vŸQyhl4X @cKӇS<3#T?>A?ih~ӦO0Xӌ%1E]4'xͶ W ;)Q+j-F֗R;9g"iܖIWS*SsVX|#X uB}Cz0_8O*TH=a%){#'My{nNY&vI0-M?w1?*l nHEvƑq~bg^j\yv8]o(eBAk}<|iE߬L۲rp1AY>@->x*T42 L M+zkxjjO!C6샃@DGDgޛb=LX$G1l^9ӡsJjq 1tv 9_%lo,Gd'{>{ܙ1 UhBۺ3. [H FGR+= -eDu$16j{*W61h*#/[!6_oֆA$TlÉ=!/SZtmiyV4l \ )ϛp;/16fd8֠u{W z~tiZ(m. ÃE lS2OF)[DZT'KcKHMc)J o?.М"%X|A wA@x![]=kݝJ@ hetnz8sz,OKsl:nvVyh:-=eS ӲL =A'ܧV?iwǓ]_[V#lBoo(+FyMOY$՛qVЅ&(&jpv%z}ļ a1q2h,@NORgx.]JڀjG*|򸁼MCXX$]WQ\I3%+H*gsW5- wwbC?#'=O\ijb]VR. Q43nכi`rlYyYw:N0PxE"S"p; o;8B=7GGl4Mo[ xPr]hHN7#DLdyYhWȈ9/|*DŲ$P,@w'Gl"OGK8zџfaŻV;M{]vՁ5N rCםE_)(wϟdRI&DsHp'%|jPw"4s=ha#I}[fi]?r7"~dk(< arF8:ڞ1t1]W@!@6X$5Z"lT'Eͷȣ_}25kJ@fKfvEٷj#U9L#KouAbx\巰}]Hu%ج].GLkR&9]ǼkFd4,N +UeK^K(;3#*(\>V($aDcF$e0Mͺ o@/c9oa6D}gWBaƩ9Wy ?aEl/uf`A 2(]=ӆNGtOG`>=Ac:~+7)?F)26_y h4xz[̥`JnsyTX-zd2 .85 &~%5chRcٔN+̴ZL+{eY,ĚߝYb=zeܭ.gZKW$ZN'F$fukYJ(@im\R:~`ɚIts@v63!靴xq=@+FAfHYlYe4EՅ!Sk8Ԇ#ruǿYCN"hp!1 ) +X-Ә8CŔc\fOuqZI1 ; Xf7e/d;l5̰( ڗ&r(L,.HzvpBڦO ;UkYyU i+]̛ +,FM:%kQeZ()>&6CTg$un}B,;9@4֧o.ڋ cBz DsW8b{%j n崆C,gN_j/Ha^06̓F )Ik?jM"ִ$xB 4c#|eh39^@|w$T*sK/,m*᝱3Z(:MKd:; LQN t#6]B "ת\Vu">f{u` ]887_ph?tOfgKfQ ,$2XrSRD2'4T H; G,Yr,D-a<0EmFZY@&j^.Mw ^gѵX a4b% XZ+(R,pzVS8Ǔ+<ǁg0ﱙz`ՊƯ0sk0S:6'琇1gl)ʹM(ۘGl0ժRe$J}N8_+QL7Xu2RB,&yTd3A $XMP `bsf%EF^R oSAv)9-)e&W5qb 4N"xRܜ͉Q ?(kPp\uZ=Pںv,{", _l<&g_/_vFClGѳR0զŤhV:hJk^}ϱ?)f.c4F (P8-*Uc@\XةvRdF BoBה(*6&1"&0PmlޛDp)4kMi.RӯT>355ً䮯5Rڿ\C .tP"Hۛ/YH>|E.;wl+ڵ'e \ 8*x([M̗Y Q|]&M;l3=\DTL{ #\4N mào$4qDVls 1.ɼZsg,[ jiz)ckraI"v Y!GMD|C?S}χrs8!ȆgVBRluqI$2}`" )fW:-iBolveqqt-C']&Э-)EAzbLaÐ|wMRXXV_:{**z#[Bx>pv $oۅUR %EXR,~x겠* r[ɐOT|]Ez-bٵ%_`9s,Z! .{Zڦ:z[FG ] Ȋqgm>|N[%0=9 0 USCٖN :Cj)n|3;m(zF\ =V,Ch4 F܀кَ0R;%Fql(Z:+)a+HA4n_Q~Η;eJѹ}}*xó΄ :IVPNK5bZbP1&Q ꇶ&boY њi_p M!$uv;MFE;0F M]ek(c t{#q fAtD3V9J1 i'iWх[V>-&B nY<,>> "aI3foy Ǐ?!&Eq!TƗ đݘS\|⼹>J$o;5)6ܾ(Bzb]%4#@HJiYbdMΕHBxWFgZa^R> ?ap(Yag'=6uPa1n,H4;b:0lQo-K kj,Z* (]8UlqߑOJFǦ43BC<_mX8Ϭ,EqNPGS<0A)N̉$Ӵe}wcWǁ&\q]Z ={fiJ&8-𼇩sfHa<˒GCtcU[pj)?@{4_HX:EH'4R3&>9R=~cO<.{8΀ ,Y [tXWk< ]s!o , ﲔ,䞉qUS;!2?E1P  r6[j~n3o t:_ VSQu!$7 |f+'΅<Ȭf<"o$21+WNAM-tftE)L'%ǷhL )Li+? :8&ZBm@hZ΃4V)B $3 X cpfY5~9e\ ޽[AL;&_{]&5$)jE HY1 HFU.}(5aO!Zktč% RF>k}%ſ4Uf=PuÒEB*Ӝ$VMވI4f@n v3ێ pPyC^@ι+,%kB8$|{s;6q74; 4i%-4ա1v1x>rthaX ـC o%C_F"ʱIjUc[US/28"L<A[\% (j~XPĢ|MYyOGotQMR}XuDr2.9v/:EFqىQ#k vZ%2C!KBtNOFUjLo~ K_qAֺ *oU8M;1s9""=7x(KbBP& .ᡕ)cJZ1@Kg==ssT'`\. ꔨTT&xm\,LB&ʮz{y'nA]VLo4͈"rjZH7D --_C9>zwi){wC^]][+c8);7FX$}y%٬ 6d;E~/lkwa2 |)clrY#~TSMn~qgD'&4񆋷I/%4Og"bxUQ CHO3>&haΏsIM[нcK|j""O+e̒:1 S%|e:玁~~# c-K/%זM+fGPgfX/GHK1 "8Y;(i;F]_\)gk š\B.Bv,+J= o7ԾƼSȘ. }#4'.?S ^_鏗_Hj#?%Nj')N\s@a,{M_ 3FdE")>t퍖q.Ժ| ,v>!:9ϒF꤃>@Rʥ,OQbgv T36dBrΨcoXp9o Jmʼn٭-6O}vXRڰ/p~l&c}`7{wAN"Ӄ%Z {bEjeVokqXTF*,#{#W~Z@nL8.,%XvD4Ue$BvOjWuK""E:,nbk@>TL,yRMimch/ s.zTxSŋc\f6Q)0s/B,̿,AMUQI\c~4F6O`.8q$up8^G[9 =r; Ζum\Lqxez'$^r#*@2~f}ʝ@>)[l!K߫%P ոsH+_X[մ(B? ],&vO14rp۩> syJﯙ5~bP%N'kS$\=N(@]&e(HЪ|?UKP_pR@rcl= Pm(JLiuUpsqAY"1@?y7 !%huTQnE1avyM(~1Eg?f+GcnV<[bj]]:S&:V]l,t5rYz̦;c\J FcT&L;Mg1oM Af?b,P -E>=+B O;5)cl /yinUDY8:CYk IȎ HJ U}"1CN?j. +7ًqإT #Xx/mǡ!{OcĻ#pg-hZl: #Z]NgQxgKW^v3<&sԷ  ::⾪U ]" Pdt %hC *U-13`fÕ f<$*17Ny5(_>U>[?-JyKBOvbI 6ہS08M@* ,]lE螟M9w!(mog,N]?|G,Pb{y+eת[`>\:;-g`e`?0 fIMrz K`$~k%Q(8-=} 8 V#!UOuL>]a܅'o6a{ h]M$^bnKK.>X7j zF2 nu |bkO=kL/ѕ=yNH txLd n&GRJ}绍븷Kv*lR{ иD7ҝ(Sfq{-KNF|g,ŭjhWh+5pb:;<` aՈ^X`e^[\&9B~T;SQIٷ|3Zu#Flfv3 n0GAMW,.]p)ZP ?>>}J?-찎ЖOzaF hȀy7!(:fA9S'ټ$]sT }OOxX /,-uujT#V"zϾşdÝ ؎8+ '%(㑄u@mi*?Zlu>{ޱʘ S V;C BU8AMN5GOކi#;z6D6ebb%NQI+SvM[67kA/ݣfa0FP94?݅j L=4ʑ;6XR„]j,O"wg rDb!ꗨ1阽`t~L%\n֦Q#w>5UяJĜ]CѠ xjh=]WM]jw$kP"=Qʀ?eYe^|Jy^,l[HJUvv$0? i㫙ܢ'haŞǷ.v`)[zH魁aBQ+*.iN3̵B ׸Z4pkmd1ctnGFYb#\ zhg.Uh\lf/,Vjc|1mF-!τSi^B d ڻ_s R:OR _A>QbZY=t 8^H62 )GET:dLD̤ht='di*&ƴb/=.[$tN8yyED]fͱ2m)qˇy@S?GWe[ np%]U7_풷O}o+G h3(@;RCxE3˵58 8 zyM:FBNYCd%HƸ5GfpӧX[oxSRl|Yq+𱒐cd`01Ax x/ş Y+Q_wˤui4s6x>BFv % p}Zo*+.xi 'C8#U`1P$N.X:JlʼDR2t4p{E 8#sچSp(ؠYCكR.QWt֦xZmk%"ٳS rgC^?Y;򧱉8ѱmf5z?? s͢ /:k:PgӅsv ;3@SJމy[ 8 d0.i2':͹>!!WN]!fw:j5x?,^S䙥(q;Ǽ(؆+Jpj}7v86>'-o@ρ|ROSRjW?yֱ490~Tr:6Vms[a#xC2& “Q} w&}6LZ(hEA=HM;G>n1*<˴8è$>HG&QHc &y[mePVt N~sWZ3W N4cz|*Ax҆LJ?<,NSٚz #B`YHx,NX1"J2%9.킀i[/砅03WKLx2`]XP>qED@$06,DBn耛327#Weq'9Q{"?ůG)c.oe\b(C$) ̰Fuġ4<$I/Ig} 8rٙ阌gq "ڈf*ϾV?v[B'b%k,A:p'zWELFeo5q; i`Jqs'M)R׽zXv؍S`Cjd5aSq7)ƃ@ߐ{Q)%g90rx~2A@A U#Kq`=:!˴LI@{A֣f\Ge5j|n&dYK.&3^ϋrw냀%/%[|JQ4K ΃]q/|I;m_0rh4?SCxl"<ZdPc8~)ʣ# 4E@DDJ"3 w8AȃRPB>quIޑuh*7ʙ 6.h:ږ63u}膞KuHخUG>g믽A>3(z߂Cn^ݽto*^.OfXʑ9Sr̈́jXQ̦FdKc9`š Nۊ`i/I%rYLôy\j0Ba% &|mȒ{(~D+ 5,F@Z[-YhT 1ӟ , ]-!0Έmߏ5fɆh`W8zWb_ڸ g@ࣹzoP#p+CqL(ú#zվ9TcDv3Q _<qwҁǁ^/eܭ`'Bt>Yq&%*B&h.UJ ]ɢӘ+~rגg9.<1cMAЬ*nf1G} $z@a:DSHOVG G0LRIL՗Nm #twt[[餔ڤ&$s#Bz\GHem u%vzzXwIRz1^0o*Vc-SgLd"Ȭ>B'7B @"+Êau6Rs誼i)PȒs#6oD?_-؄*Zq5\ 0ՠVHB*z_{&kDE#zZpB't*5F&$YSQ=+eM6*Y׽|hMdA;h9f5W>' M%Y$@G#US:rFPT;JkēcҺjE|Mr!8QYj6dn mE<"UWym{WVmq $Gͺ޲pa6+l@c\!y Bm'8}&i:,%ե:87kܒ뤔ӆ7seOe:D hfNT-!e5['0,VUWÌEC 3\G9zZ{i٣8KNX$B巪cHidSVq/p_;腯sשV>żR8+.IN|LgAnmd%+U#jE?NZL"aD)D{3Rf npIQ@ɵ"@nYm')#d\i]\ó:PW8|YnxȜ^^nhBlS F-iygAkѱ]j쓷S'Lh.KsUU1rPU<;ZsXA%+ͅlRxpr$c*VTYiS;Q_uPK50k&R'zṾh>ahTό|^/)%v =xL4dj|,Ah _D^Uz,XGͥsRxvfXÒSq}ĭ*"ԳHv3rT-oGOz S8q[GRfg*5(z:#TqP}AX&߽&?'٩B0H:"_3L,35q$ tӬxןu+Ľ@v ?Z=&7=Jm'6Y_$µ2_1RX<׻. Wь:mЄGqٟo  o^H C)xWs 4o]xdTnqntzր?#{tn@BB ի{̰&%GB[A~KO,[,o;8mL&lJ;k9 }4۶eA+ ί-Jw+~A+BHw5~T0K/< r0a! 4A~ӱGg2G Dg'v 1m[~#$DRVIP/rRLcT{yR<ɂ$- JɑÚCXpϼ-@OkzCݛ4GT哣SIR OM@~Z0թݘ|GƢi]I) *! kj_Q>oA)݇gbt%S`tQ/{0J43@pL3蝯=MTR L='2!j !ҸSYX{YNYה1<S¥GY^4-WnهD@|Ғ,[]uu oDہD, ;]R=y:^,0]I]mJ&Sd=)(!J9bZxE²gՒq& 1Psr yYR.xX,hRȦdžg~]`m-C"QU uGdicGӑc4Yx佋Zؖ'\S\66^7~I lbE~ݷ6f{k`&0KXf Q$ fQ,shbw 3K\TÉoU? V4},}]2I9&Pag=>8{=Je(²vICvOb02#[p%2昤T|AB-1̷|OenUJ֟q^Tg6o܌anIɔr%qW7Z΅bW"l#r.[ylywz ʮSX~gl΂1רiE"mӺq'޾ugķxF>_\WUd2( ؀ӗBk%-1mS9Tϼ4 P"Q R8 .hLW097ݒ˃|.Lenoajt&G,1ɘ>gaUbhE37D !7*'w~HOv)5Eb^mTw m&jZЁs>Pi  PT;LՉsCz dZ?>ivQVEEDaful4'*ʤ@MIwoD˼!=6nQ60u+UlZE¤$pv!Ҫ{=ԂL8]|SطX;ʾR2"~R:!c`I )w SоPâ,#KI&jߑO%CHfKe{"??9{}b}t3;P9ʹX̎+bojյ1h;-FzQHIv+nfXKu;V& wz`= =Ԁ)Z9 6Y1N>͐=/wBKWD( D@J ԍ Y&`귷&Jf35{g|]wܾaʬ1$BmGY:[?N~|c| CQ;Ai??07p󮠍CEr j_yD u,D ?p@nndJٜyW kkA|vS`9lnUG=С $e<83GPJ'ИHW r;5{{G:{UJ䨯%Ҟh:`cM5~@לR SzaK{9|tw.壵ߤژ3D,,x .QQK;E* N.]ڤ[+gm~Vgx#1ZI}>lAU?glۤ fON$oXh%5E$ӦPDtER8.{clt2wq$ʘгO>~ |9c[\߉1 awlP.)8IR98xkg3JaY |C]4V8wmI/G6O>^4~b|mh jõ0 e5CYk )8o`X}U\ "m<(Չ˜':<%wE(PPX,>U{iqPϩc.-3Gb>њsit\V_q!jo#(Z:t(̤Uq5;JRoR:n Ct$"2qQҔ%$djkJ ᩯkk0 FQKME{}sy"7LJ-(c q{|nҨwP6[‰QLEY sFD#5 ʽz58z9`:Cmy=rpwK{f8*=FeD u;mǟ E(*RxϠ:&BU3)һ jMi*_,%p- K,RlͨƙdjN{PߓJZ'Aː5!odLͨOz 2zbh "\g+?=U~ZظWUuwhJ>?3 )?92!^ $i"^w:;9(*(5ɃT F!V-rC!<9-7ôgq($HÄ1 NxOqmʗ'i$P e#f\gynXw5"ZDKD8[A+jPpktk! ũ]#40`)KU|T-n,_FwPV8S:3Pe乀vzA߁ݱǘV[?v?^ ^VV缛yw&4ҳzҵ] &5'2s[ K}U^>|/x:fs6t(o8M8ڙܺ0.\ԳDCET/Ζ~=$7uYW}?l6WB}O'Vgh/h+"þ^Ʈp-Xtt@\PMD*|%;%W5H])p[5,+pM&NZb5=DFYfdI dU/w0v*;$B$v+76XNݸNH -4ԃJN'.Ni$tH*pS%Y\GÍՉ*N%E8bW oO^;1$=P}i!'u<5f)wNka(dYβ/#O/Gxp0!T*EՊy%aSiI>TG(}*v  D'O .= 'JyllF -07쩍 -1a厚q4' ن}BvdBvz% )Ƚ'BiyYa[CY*kthMj4F_3Ry 0yzvo'l#BMhRi\$5OڦBO7kSG9)ku gx&Q-ߧ;ηu/+BmCǹՏ"J/Q{:xEA[pw|{hPOMPk$nG!>EtpC\ @/FIE4*y>@v% ྲྀwB%0p.g{_iQ!IˊQ Fqib<&qGRĊ!̶6k wyhV"n8q1ziU2#R'a僒 I7ۡotl8Cq~" 6H M_8Wٌci'Wk;缳z@SQVrȿ=mM_ľo.Uj [hϚBT8ё!JDD\Ti:Pi`7DZG(l'wGEC}#):j1}h}kUug3?[Y=YW$|;P>/Lw MlX)%a|`á ~|jq6E >u%zo%<FtXs˙Z[<2 N\cZi]k(J L־楄6{f-DB_-$kҀThi̭IE-ewju’"̜jpGr@'Q4HYZ12 ͂EX#E[se W<"> F:PH[a(U 1 +|찘v+X}R0WclRKs~QiT3D_yaʘ7MQ4 .a}CLFw*Dd+k];WYf=ͦP1#q^ .:NթRqd&rXh>2{%>^O8 6_lT_s_4c2ۉ<6oM+jM6`3/Õ=畬!ڻ^>qr`&HVdk"]SOŇE>e d3Yszk#.xo7;Q٥N'v7 Irdc%n2Ͳ\=%[Qۻ< X&ENt"p$tIhqD 1#Ahؔb[s5R6׿ aXn2ƙ%|e9~4N6x)C[sb`ŘfPӀ[P$8*YR&w$U4/Y; .$L7%C* \kg&cmTuBJ̖WV`8X YB[tx@GTngU8MP`M}"0pJ22iuʆ?vbN᠕jx6qCv zw֏ rOy䆬VJS/1E vk%[ݙPlI@ɥδcע$ǧh2PRCDvhE)U- ƒ@9u:uu1-U-i+=A0cŻr1 ǵ6#7]6@˒ x7GB](=ng𙶾TGi}G*԰2;}׋#WEy N4jǘޫf5\+;  (*)R60.@7MhP >p /v;} T[vVUGm&|trBԘ8l0S.xzb¨j"}[R}7PH-AI ͪ5ͺYqv InZPRv>[4*_Zb\FG4>r$5\Ef?naH~PWX0BI>Nh2l4Rg2[PIʾ?3^[xi"e^FS<_(jD R3H4AshK1@U,]7R , 6m_?)Y.Gn'Ǫg,k^춘zU⍽50Ԣ5}VLK\l? n"L6* AY/?tQ h]-R&W{OJe{:Yxa,&Æ}h;x;a+e3\1$^K>3ҁ5*`Hy>gbaSj㐣 S NfrnpP \̀&;S4zIΘl]tuO}mG[@Ag]>)1Z .R97'/i0L,p9 *5p[\;1H,ߩ#V_!Dma93FdDm45=쇔3 jEbdIG-:u21T.D2>@@6gP[ DUe^Î&M(dS/U(t0 O@wΝنH )~6oZ|I<9V([lG|o;b:30K*! 5 Cۊ,Fj_QWwKaZZSBKPHڷ17HS3&Yfw|W"<ʏ^FGX6r[Jw"3e4|[ut(8G2Ǎ2ڢ`{Bze+!JYLA~^Ff|.Fo>zfl9I{b XH\?Rv-P|wuM{ WbY\x3>U)w> Rs4*-#ZP/KEMCII*[#ps5O{m}mZԜc\ ?Ջ*h̒q@і50 ;1hCUʿ;pvTA$mzdP0O>(;M 9h AšҒ?3\¢i9*,8D.M( PU;mt ж,+JC 9C-kVhpwdeU4 x@78qk*N{vΌ].ȯS\9j yXrΟ fq.Z-`Xx|U;4" 6U+QTuz$HȞI߆;uJPǤ"LLP|88b)X&O!զI :+B'Dߔy };ưI(. V0lTa/2 1o/޺G}0Zygq:&-H;q[*԰W|~w՛h@Y+H'.Vc0^0oMp}cl<qVugYJ,|˜@*̓ "U)/bT-:Υ?m68 *=XtMDiM7W}h25,[X˻Q{d ;IP+Ezo:_L7rE1H观sgKL$41EZGGq2p.)U_2OppO^0V̀}pd-D2h/-Wݺ~iw6Z#abnݟߖw4dweѡStŘ;0RگgOL2۠-1N%ҝK N [Q'?=0JGS+rGƽE|;^!Zj0Ot+DhSfu*WQhuћ4CwI\CuFe' -uBpW-7Lۤ'Dt+QWV%+}BP_G<0[MVFԍlguAC}[ "8aky{r؈c*tW Mp¯[j}6J4 -P=JvAz5^S'FKOH`Ҫq<.'8t._*)Tx\h;۝|G*GfhM1` lg4"67D;$@qX*#Mr9eJYXEBYY?Vn˰8݁f#Ͷl,h O9RQ\-#'JA]3>j0^ALZ~H0J3/JUDn$ϔW҅49Uv_@ԉ';2b&e=Qjq*YFziZ_@1&[bN!!nK:uPrjG'y|f2vx_6p~:M;Grgf?y 6tRr#XaګjlUxmHY{E\h=옞0`h}@!PU`FH{1?`S#L|AP4ނƦ5@ FQ1DF*289ub2J}[^. 86c\}[&T=/ `UJ^dc>2HLF[JYq+BVre7?(ݘr\xN(@P<1ɶ.&S N-veKsb'{vt}D)Nҧ>L5ڳxgbV?qDTZeE<{k+KZJX|?#k݉$w|v \Y*)HWPdWm* ϫB(xеѪ՛ۍl"@y@usXv(4٦E;}#]N9ao2$^^Ɯ"~DNZjt9͂*eV)sf#psq |LgrtI_*`-{ߥ`'_&l<'WOCJm@dwq r.Ά|0MU`BsVd9l&V?_*/щK}R@؁DM APhxj-; 2jTE3ѽqW1 !ί6 6{5zABЯU&;`?B(: n#?P(=@z5J{{qx`>~mŠle[Wk&uf"Q-RcD'\2U:sc; g)jd_j?.;J FF7tuh({),"<;-O>SG-nlS'nbq)vስssч-YyKBD&tXԆࡖm&czz)A- _/;`l?){6q?!9h;KQU[ -@컩c7\r Wע+:cQ3v1_cWS. 8r?]z_Gѝn%ƾJ;($DҎsVr|A[O~:m_Rz#Qi\C6!BK–a(͕_ί( m9TuԷ]x9ٝ R :L[:I=PtЋDo-ij78j`q?kE!ĝECuTqFmT j, zT[INα5T.ZK'q|R-Jg/?zϦ%/d=(t,fŻqi@Ao0ٵB?'[ZzaF2:g%1+0_P$Z0-*x5H]Q=pvMLH:D3D hM Y|!1o{!rcv:"xpcJ5J;W&(px@՝M~2-WLl%+[^ANG{56jz;nƶG4y8S&]!A6Gd ( :ds=h5_a7pܲ`21GtsK0ze6N4̷:Ye^Y/mɜ)5A{Y⃊>qlgjw<;˅M:$ Cx@x]S~RR0a,v5ih2LHel}/<*Mho+I#Ec G( :+]ٗP V͖[-`gc)RPMM*9e^ az( YiKU?RzJixCca#SGO%%ɱA)\$y}DJX|d{JgXBYJ$MLYB{I1fXqyHG|EI|PqDE>cG2Wz ^r喦J?BXD_gm2Zÿ;ٺ7/^,AL(g**[ ̗Q~Y"?0T^cc!9@TYޜ31igqNS Ӟ2{SM/uS(ѽ:SqxR<z3P9Z.dPo!rdHlY5D.PI̗tO AUְ9Bμ82Mx ob/ <0^_ 49l3"B_M4orG;lՙ1x)cM+0d؅0!eFP$'HϛZ&2%)'ۑw^bO7"fS6…2C%f,Z3SB斷?Ɣ>}ZR}jP{ °C .L&,͡GHnn9n`u*_0xQ4vM&h+ԉ궚S&HJ'!΍<&tbvͅ@խ5'kƫ)k6'&[p ;`T /3+#fŭ&a3Ѝ#s2k6ӆ$֕[++Rqv)grV'm  3z}Mnrur{Uw3]#ܱ$m"o1Ќ=k`hS>JhNVBV C՛L-9#?9ٕ'rWnRz &zeQ8w?dFX$d&߽9a:2oo?{A΂nj`X8i5 6ĺqX֘iCRTL `G/ck"hEJCJRM)43圹8C{] |]`pa Rxդ~QcZ !*Det_B `w`@J NfXJ?4DjW_A}XdYKL jq-%SCǨkVYnC-/T T#J6m8c BPWT=%q`#>4c$W :x41?YQ0+)J6>UM@ܨ_TIomK(3J?ro|-/28(J9Н{Cr 9ʷ*tHScg0BUV>E7TH WYQ޸W!a7s즮-xHȹȫJcdAO[rZFU]zF)U}!܄jYAE /e)b).P /`+ @TҳE#'5 ʒK޼?C+C|\]Pt}gN+ .V}J۵ xLV9JVɈsmh?vCmսT8wis+5u];#- "} muiUQ YC*^PX/tR^Zݓg5K5FwB@%R. (.a;![ݍE%$^9eɻ7q"e9k(gwSU"3J|`uʁ0!ݵV]޸-#ƍ!c<0l97ofx9͜\ugI޿ ]] =h9:T6x9x8Jpp*u?J{{(Z[7<-R3%W)8 RS ${*)K7M6~OwESk׉cE0Ի~?da=Sϓa7VWoL_>19!eRr|17N`Lt._ @o ⪏#xԜGLP߆E6b9͝ yUFF`]}91)w4S2XaN$ &F0/3H4L[6bk.7$U_Dp;]8ׅfQp989Ϩ!xg׈9ڜ|cwZ萗yMffe8d>ХC)bҊ\"JG{[(){lŬհL ghx2 YRJ%`a")HY%DNح/@EAc&&( WH!OST$IIk4X;K;7 =0E41Uh.W-wG9: UFM䳴[~5,zOT1bj*۫0)[D4Xu"bp 5hWKNI&oɽ, I k}K+?=}]V*è(+"fZx01;-R:) KR}8?sjn\R !?^$73|%PD]ZZ&2kDFrv-oۻ ң 3ef~%0C,ۯBZ+dsA!Js:oatV9QF(X60ղކz(+y RpNXYv.'SXhQ3ǜ @}mb+27}a3OwCEOG2wXODJnW۟A+Uu^M[lhi= /\<."Riս?b'[3w-':n=Wme=;6ḻѳO2Y4ʤnm[~~GmzƗ;& +GK*c/D8 {'gMO%SVȚgJvm>dU3ZXSVf 6g/w?FMT_ݖfMLB3mw+Ŵ'9Pkm];?Qv^gucz$!N%e Z'ŕri5oSC9ӯr>@+mָ̐V&ΩBCm3_tzm!,+c0Y@ RPE0۱Nbh3Kˇr +/y9ncVV)/l1DItV>vǷmJ>z!2 SN^f,W e?RB tR3M5 _#M>au# wuƱz"UD>FtxOgc=-Т6< ~oqظ{B{kH hf5džp^ѐDM;ͱL'z׺AuK 26Q ĉdC?g &s)4 1TZlvnN}3Jo;)CZE.F yLzPHfca&5&w-hu?+qS,E^όH"08yʞF@;|w[0@PV.xW~~fAmWnus(P+" ~~}>@m(ZsEmK2='#DA/%Ne@*yv}&1 =IUiN/@韮 ]$(^b@RaVk,$Z Yv+@Ǵ>h/<x {VJbw\g8v/; d ]r]&Ψb݈6u" 0cAHp]ZK%5Fi톴R\v3+J]1/v,@4@@I8i.67w)x#H4p}Z^Z×yE<#?(&YTp ] YÔxÒLt惆 74q+r/uIsSBZ(2 YL)}ǀ4@`)jG]`ƕ\w'S | ?t8lԃDj@jse}t:5ʩB0fOTv0{)@D={찑ٖtA7s׬N^ 6)I).{oCVKW9=t^K!uROhU]J0xA 6u X-P0pNdž )rR>Cw<;&*H]8ØW3PSf T=ޅadX/)&\-Ƹ^?(8{*YzgSXI(4 1XS}]6k=o^h갛OK{i."-PXd &"l9dd8ўz2Fv(R6feLhp'7xq;1Sg4݅W,ExI2bAh;MW^#3˳/yH[S,8+b쎅pW]- iiy u%275\G=Xȳ("(. =5uRȤM>GyroBn+J uWOYh!YtA057ĝ0޴I.QgeRP N-5% }N|҄P8Щ :;I0vRti~"U`8@@~5$0.V юiʷ撤sgInVFZkcfR;5Uƻ ́~?HUdԱl"Ղ-ӰNs fŠ [YKePi,vClR#i\z0mmPNaFfMt픎ybNH>Idd(h1!_[ɬ dic&࿣^B+d^1:ة'DK5hm}svhwdcw77_ab/\ܜSjf:zR|/E.m{w.sdΧjJEN5u8=̹c:n߈UjlF.@UZ\g嗐NFU-MYsVr@_@]R$dH&wXA=s#Re.M(غ2NvyBN q!ZWi MS!Ѱ><@1T*^_K㠬 Ћ~>j:*+vT7—~!S5u23Fı~>}X!QYr|%=,U_o;_sPcEP[#S 7$1LRnn~ۆ^7~TW1y~:si-ҴzUylі}O.V+.Ot>17Ҍ!ь65Rp۵{^wJxH;Yd5VcGBbE Ȁ/:s<.˧4Gܫ*g8u8BuY q;P& P59EpYM'I)"pbRδ㘑 57߆ʧRMmN7f? [#RݿwF_.n: HȚlZ> +#Z8U'E]UX ؠ۫*.0]2H'zѕbY*/^OmK +#8'額Bx܇zZq0K*6˰G\bKL/((7 $֕DܔI=w)mrGȌ /a rxIA W;>`o:Y۞O(IEt.R.tNٽ ܐ]lor^ߪ̖^>c)C݁@8Qv@ \ҕB`RYeVC~qSrI˰ ہ(i"`R+OߨIQL{}=e0 5Dg[P.p62'О=4M+ ?,SHe$g(2A$27Tay wڪЍq)~׉ ȪB`+{#v1#vQm@'ja#bK8Sɠև-vC 0aV&guD<(`q)F@{Gu;="aS5i!,h%BR_iO!̖[#g""@n*bF$Ywg`͚[U=LHsn-¸;uƇ's:Xέ ĔwTz Z>G̳IwKAnO8Sh|^Ҏ)ӎ ,O,z\nN#iKE_ۧP"WB  ѷz5X0_%C,0H=4thcoeQB1|ݮ6N~ϧ:osmlҤ3/@}x*0tb!A.|%SLA,ssA˿*R uqB?\hHM$1VC-p[RyCZKJ6YNM{12j˓&Tf|wI+ ,l'Fϫ+@"\\!Mq* Ha:vb8Byv#C̩废RK0,)ww0 idESBP0J.Ȩ/ɪ $C#ߢ!'R9' 'dwtw.f-] sj}|&cƂesX7r!]JH&:IO,ʷ Qf1Tb* D#񸽾X]p{3 -:'dw z8 b4N]eLrjtz  o_b뉈 ibMe0ܻbKZ;^:"X4bNT9 ig]]#O:R]^ $ln/J>oV#)txkSz}zl^tj'*')_g|!@@OW]h*ufXޠ>@ ƟMbZLN6:n_s0iH WbtO8=_`vL +sNLHzjzAc|cb]gZߛZ"L=EYaO5(rbh+rW=oQüޑ9i"B@GԊuy'p\H[!ɺtߊh3R:B`$˓w QY `Ox#ߞ# tǜ!lezݡwߝ)!D5'#lf52SYGs[kxb1G$Nd ׀t={Ō*F+x& 'v>@9/4 >c jC[&~OV9[~vnN;]c>pfm]Vq̙OlVsa"pfJ-:a9U/5|H;! ^eiҝ(F8 R֞-cID_uXgTZ_u/Z\LTv2`g6tLX{'4䓅{#2wMjT>cKYt+D-!WEF+1ZRd|Y&…F I\dkkk.*''¤1ݣ[<v .V q!U6}"<&v_g Zzs#"N)a$Bg~,vzyot(L ccn,Bm( 1hJq#M䅆 E+)r "KEawA^GgG-un%q&Y+ka`/ }lR1 i9D/|חQZc5':8ÚσdE9Dwջf=xU#s@PE /栖Łg?w{z,ۻc 96L ts{*$[5x\-H)8~btǾ=_{b*QNKI$:1CB,]]ω3FfRұ +B4aD $`aڔӸ}ݿ{v@lJJnY;yF̓IjnFm#&i1/2`sV*b4cK.n[b@8l<따S*w0ps-[|xyHc)Psٰghs@?Fo``BAyp+&)s?oeP72E&=?Hs_r"fkL#θC%iakbyBG^܊9~ ]۩\P]2hw\oh^П@G'NjQ]]tsџ#wąP;)Rsf,a'߶*[m&+uïl^<ʤFsBcE*譬G$g^I)>k@uo/7[aTlN2qƩjr)I6QD# 5W}4@F&Tr?R>f:aĥ`"}㨰_a$!bӌ1K[-hBxɑ ;דީ/[Bb*jUk`An|>.k ӆ-r}7y dƦ6ʸE7,bO?gY;DTZK{n]bTO.O=&x)P1rsyčR, 8af';Sl4ϋ(7Rrh=:,C 7i!}EeɆu<ۖ6J9}/7% 3>%ƦXa5coAnQi{dCn !nQic} sazuua`'o+9K Ψ;y*Լpn߉w8q؝ה՗RE2%tzI1ee1;)TC=::%%?k; 猖@`\'&g+.4aIR%gOP jU}!.%grctt2[ ;%>NB)JK,aLl(ރSM)#(*yKh'm鿽g+g#oc6G7kܤA2-/;VQ"|8%3ʫk~PU^{kh^Q O1^a躮SlSlSkw!x<9$z] v "jq g]H&0"siF,6>gVzs}%WR)8l 0K? ụ'C@nU!6AnZj [!1.eoSjS2L)"2$[˟τL ;x 4)m%.B@ U#tc1?;1$&P_ƍ(9īmYrO4;JVk&a賀g88W`DB?k8CE^/H(ւZtNnN BEFvpA4kro% _n#7[bQg8-*_zO"BlC3[2ꟍCDز2[<'2Mu%Fٙb\p'V D$ԽQ4@Q+xXe!nWb W,IrCjZ }j|tVwEe[G4pS]TWxk0eL;U׃[>T=Onq=G1fI/(e⒒WGsdN,LPj1_VA%A:k,Bxoף̀NWrU16n0/5fK7<κnӣ&ڠFHvw=I(K,EDu1a,;'H7c0(Ƴk4St$9yJhUUنeyxƵAd='^|hc| ~[ O#ɋfYmȑeՖ*)Fx?/LIB Uit< TB{FȥdhVʻ2 I̕Dmo'/P'zh$º`B|}ma+@c p-`i6hNv0.?.Ba=DL87ܔ`eS?qI3¢h5~"A|{%E&;(: te.RGuJPXݱ@jdE3#CXi(L, ~Vۆ8h" CR?Mj Ui# ` JIڶ;vYt,DAh0E f_IVJh&A2\{? 1qQ0)ˢ!ri0%cJxwguo`0H,N~ѣ87޹F y֝vո.DZ-At\&{rh\z T*S ܴxOy*1x!ԻԟP.֬RJ2Ä0>6BpIgzh^ !GʭRWk֫heR>w6gTNGNć=!jk*l(qT)g^z%?Jrn?RS75vŐr?ފ߁r*s`MI[Iq x`}Hjfa8ɳJ~<6ώCINRƭZvS ݉21nҨK5-oVn/ =h7ư]ߌ3ij=d}qkޮH!ƊQsT3 |@\ I ڵGCY+ ypr X  r;`fu9(|n&[_j ,Ǜ,kOtnH&>J (teNeTT1Dm7"ʰ`hPc6Hb1/J+۽n-F$r-;ei q`IVbIy &0nT򒣜S7HfdXBbB`? HnŰm8yۚhQ97qaR{1rKʋl6G$~ :|E|9R$ S J\5櫼5A$QV RK5$hl&Gˉ N#q;EElZt͹^k>~)LeDg$0R:e&rǧ *sY2Y6E6,1)TG@g `0 ~|d~u*`S *Of!c6o{;54][UI:\gx|兟ܶkI',4U > ט> k8'eO-:Ae8hi6Q<^('K*G$$-fIlтΐh Y'1/me6!mYMkZArkm rl\kD )b\T DZBpJQ^^3!(^.\MHo*6o P65aTz 㘳{ۏ87<#lfܥ?w"nCtܩn3wveflZ\䗡ԉ;5=>=@.  @,LOgw`x*h ֚h_ۄF~ՈzClN;IGr)`IAkJSLّ3pA2EKdWSSP+9EJ/fo3'mT)?~6rNZ;&&-DŞ!>3Zk/oKÕ(^ 鿗4a|j$xɮ0f7h0sXtBob#]԰C' vImWFIF%v[" Kն%W;Ľļb<-!y[U4hʻYؑQGhwI\[JaoPT;jiЭ>ZhBV?{mx_TX`Iű*SbϣXf(Ta*TMd3 V,ِ)_)"Y VхJA!΋ \P;ވ℅mxJ}Pm~ӌ994XT#XCU - `:#Y`̎|Fws+Y:}Ͳјӱwফ^S//×T,  ݉w7 N2V,X_|4odӳs.wOh7d,՝s۾,q5 qB=2'ЅTp".5R(A](]I?wnb>u/zv0):,^*ujq8Si|?g5*½0bT-!)7p5p8slfh8<響7/NQ$P,"q}ŗ?❻Ϟ .e'6\GF`hZETA{!: UGWbu%y5 1=̀/F&#S!*Dn;GJXN@:S^)vMC ĶP Q 04 4)#5@r :nbcZep果^W;K ҇Kߌ]"K|9HI&;9T~dDH&:j“^dU%{ķl,\w@:ijO̵Ew]zOiʾl$rۊ+t7V5i l ~ FK0T`<T?OxO_h4v1#Px6=a!Ln&DI#/Yi"\:j6LXGqT+Cu-~7Q ڥ ܳP/$А`V q諦$yb&ՙ+ I}95<y蠪/WH#0Wݿ :_~RϜ%wJRQЋ~do<=X/ZF;B ˾D'Xɐ4{Њ[An{*LƮ7gKZ(8kh.n7oHqZjO}gM"+; Ctj(w[UI M띵,JFyrwqIO߈1q%ưIS1k#4~lRBi+8LyVά{='EfaDi>m~{ALW ~HS/b; E'_<~AEvZu~TYxpݵ4"SkKh^ P!{dL]6ŭu1/#I$Y4r'( cu} ??H5xkCa)m)B'V-g0W ՏB1ެU#ShI܂lϻ=nT!-V`I2Srwi.\; + bwFSçIP`ݐA|`¨h9LvP2s.T!RꡥU-l"B;;zUX˪)#(8g= +'o[@pƪ{,7|Xۣ,$Y El]qz"DV-9s2U4KK7h -Ny5(ǸP4pcsh^DԒ !mػCo\7a8ӸBYJ72 լu>j21K؆qY30WV{xi] d_+t? m4IeBҜ CL?8Bg~ ?Q`kZOی{T(7u` <= b |pN\,9WsP94Dl dKL6ڦ0GK++W_5ՇxA2<NθcTX\F(H9>b2M.\z7%KO&;9ta%p, z7Y P(K>ɈcLȐ>e/!tF7h^}QEaNF ;]g㈟EJ%H}fڅ ]Z3\ZFL*XEzr}pcWUlG,H;#G4?1lGRvJs$̭$9ҠJ4oNԵ3 JKxQoz/6(GGY Nlg{X)ҩV.P)*VO SWAb#7rU\V 6MUm(f* ȸnV"&_2}-}^O#E 7@I -ѓda.W\ dX#)̊mq.j?;e8mU~=RNb>42tj3t fXtun ܢ Jk0 x|GBD"SDu/NyJv[5nƭ@nY-kjm$X-ÿL&T=MN۵sgT]T9tl˳Ս+^œD/){!&_\2;  |JɯYp_mµ2_%6A|WQ};*YX()]+nHu\ak*~mj A+U-zs9Ɠ`5'v|X3@tQPZvRu]2aߊE+yNp@Ĝ[j|\ouAK9 F.K#f5b=eWݣo6+e ,#WQ=9~((ވ=[)s6\ %j ~i`o*/~?Rc\=[VM8 .2XIe!bQܙlw("P ]E"F4NTMwAN|zޏ54(u2rw @αp=Հ;S33"5cۚU9V4-q 0R/~#p~0ox o4#k }lp5@|Q755Z KZnS"TIp.N4i6+z!z̎~!V|Ê'_ S(Rq~4n f#ո}hR"{1*(N:8yODо7\F+i,qօA~e'.Ã7W!PZs#34 ]3EĿ+UhÍ23`?:1) Tl?xnۻQ1vb8Ƚ'n.}TE3@؀?pK̘p˗SM2d|{NLu&Vao5)+\\B߈[;_8PڀQ3XC5c":6wg#_kAP띛e"\sqgRk*& (.c4Eie,,>2G$wN`RK;B@ ({_j\UwʮGlSDBRQV[>I7nGhYr2\Cs򦒬&qs%@a?As%qnuVpNDA0N9t<aOf[Lۣ XKUeJ $0],ȚC#IbH6Sì ٟ)[ݒf ÷H ~ p~x+tLӇDuӯ"a_n˃O/|\ҁXRn\H@%|T~sBXa#,oa>Eݟ Tr癰zX 5=Nw&8ߋaOG`2ZbvWq:ub Y; |;.?_8ic-{^@1umKʭ5ôHMQYdW`pF|5k6դV#2^+=4z:C3Lo]*3!> 3)1?C`/=}Rɭ(NNwRd鱒Caoi&]5kv=SŰ #[;ZKϠ#Bp]A.n9$ TDu  0 hqoBG/}lKK Wu 6c*bw]@Z11ЫPCݙx!&X(*Td*+3=zG_KJteNSskOּ?H*ilQvU3 OS,*0&OyH`aX(/o"ʋ _ӹ1LvX\^q7RGC0!mtJ\#Mϣkz-殾p[*'#j8~Z ЖqbEsA 1#:3hӞߧu Ũ߰BXr]  24}}m]] jE߲I5u~W]*i԰T|k`-0}T*@?/oj#Խ"˫1(f~(DlA߂ib, 9)_n&zрiy!j7o&H8mJXNZ]]x"Va0SֲnԒ4iH6' (GN2C ;{@{X;֐4JxDh@=[ϊXb>6DufFBRGO?ٺwk/T=p? SO5*LQ,1ь˹]lwae ~JNZxT9!jvԵxx)4?~^veJUvL^#R3WI>n͏o;0) NrT;CQej_ یWĖm >CCK$msecd B'W)Ҩm:7z,0dFo-?Q!*Ϣ(zHLqtbz ;2F݃2G@% #YoצD+r۝nCz8\g|Rl -^FF %Ow)*jR/>)ϞH샽:9pz!3).ɀk&:WC:˹<t"B眷=zd^#01fX6FdEw u* 4qE?=6[_o' fCI *+ ӎ2[m.&y+a@r?( 5 :]t{crsJ Heu$q䅆};AOYy=-ꫮyH2'Z=Z7.\~D4Z.zMQ A m1e7Ǵpu`Gx"mr Jŭ1CXvG:c((ZCR"rkh 1]^\X\[@XF"0K/`*- V%N3Ul>z5tKXʷNxuϼ- $} rο]$Gʽ7tIEp~*ex13ì%`p%maیBRHbVHr~P`_=l[.k1% Nv^"yKg{R=g+/NjG܏|ZEV5{/soqc*JR]vLY#:ֳipb3N]CG4;-N6qkl4گCtfݑc]$9WqscK }qǕ*]{;<|Nj}wwݸxbaR\ڿ(^7/7oU~%\@ <6:vgh/>w8! g=$Jr3(nfJ]iVr$xk:QnpM^T:U!PjA3;ިb;́V'oY zMsy= 3 lD/ :hزX[& =NiTbńx0l1us)C- anR-6h tQ Mn9vP&%/nI \NQE9P{LCjU`,qđF5}mglǙEDŝgTsg<2?q@aY|ѻd5Pg|] W|5#Slr8F ?l)F~[n3Z'!z,+5N߼.~)I~IS3ɷw/'泩 ?(wStyblkVFV=q.\fJyraWehG{D(<s+b+{")6*hͧ 5 T2' TL6וΡd ;}hBХwꛃ7Ld Ud}ʙEZ/ o⮾@5Gkԕ27{*,Tt" X?,y2'6_}8J"2Q4~t X/{Rgtƭ кlsGBKMYUlS )s$'G.iqc6,ËrGs8ijdJE4< z9ZN+?PZE[JY^$'q~"?.n--J E)}]Dqv(* I#‘!3 wV-J8e%:rаw꜋ Wf{y=-A1Wzn*%x"/,$&еVvNUmrY}H;-wӼcˀEQuKrr)F˩IqSFXʜ% Lj]E:#𜽼J2ьR$_$uq9?+9vErB̂I'6%F\d4RfTp,XMv(*6%6W)`|%s$OD39Q<7M/PkKp1m-j6S pD.?zt0ORw&~ANr1AD$zT(ZKkېS{ RISwYHZό<2o MZX,\sLڅcw WZ[Se?YAt6"_Sp}s%2pa;<x)_;žNQ) .綏XAcbFn%{aO%u'c_ҥȣ?S yj3o&B_ BoNRö&SK>5v$=W.ũv*P6kwcYhs'L2DW5iJ0BԌZ]ZR[6#ٙ葅AzsgbniÈx0.J#ra ϯe8DAuOwZ3u$y-;` .|f!3QUy_fL!O߇"ǷUQ8+UG\e YMqV3itSǶ,32<_Q1%X ̐W~ِf߬n%?xr>8dWmh@ Ta?DB[ɱd?11&^zdMϋ<j4?i;tmHz?j`H8E?$&FL=7t=O%a۷FL-^Bm3Z^!,؟&;`_lv `84whR(! a߉GDGϲJq<@!j]g팽?&!ka$ق>= qĽCA6]w8I3OoZKam`~I1ua{^g*nR9_o~#c h`9aeP?S2BQ*\"ZM3ur8ʶ7k4|WM8R⺎DxWk]xUS-F;d18H_d_ai zuj0;r(M}9ܥUCHG22ERDދa%2 7]^ف8:ګ&h?>Fpc`rSFþ~;w$5سOp2CQO+*rLWd0jRSr>YZPřwX-'< d禔0CXQ:iкHq^WXIl^ 1v'YdMIq*Cwm_; *7磊oYxJ^mm.ͤM+ @Fx9Pg!KҥWgk:~|ӞM([|ޒ{f8QvA:ݵn-! f6s<>5kA.U_Okͮbx.}4E)"oiZc~@]Z5MA;n_/-{h e f6u;21pÈ!Ctk*3^Hzlܸ 4z` T,hVa'ӾA5$S6xUS1v"d [|S C|V+E}\/wC?=G}X* tSvO\ e0f6Qx}\#|y|Nճ[DIl 8B">7)BkN==(;^8 [u4yn$nvk %xۚK d a2Te6SáX ߱*s՛gIUto'A ZߢeO˥! o#IםmFm]4<syCsG$޷ѻ!%zɠRGz}TV+ UpU'9& &Кӽ]آ•:#,fu-hn+jذ$8,󼽩²KY+5G>wGdQ,[2W hs`i7tlJ,](m,~:KHIx ڊ3]! CGFJ!:RI5b+WlR/qaUߣW#/dboǩE;=Slu;1#^EWiwr̓녽ta! vJ^XjYh<6LkjtRou.@R!y^u` BRVcd7tj-M.N?17MObAAdoٗ1 g }ʣ]vy@ k/A۟i@K⩥T,ƃDtAY6 16L3"Ti E"0v1HL!]'D6A>qbK-j!Get`@o ZPthL*wuS{Uhy߬5F^6Åg|HHRMN6A3\꡸=JՑvoga-y% ŦZ}NNƣwȷ tav )GRh~4׍3\Zl:7< Cm:> J?vV6 h~R]p."HcQBp$T1yTk醳j_Ъĥƻ)F5Şўxvv2D|fvr|lԜn~ҍ4/qtߵǬ,a #DB26c8^_fG3Rdq=r5eEcOudb{Yt$ tMb~qxHiTK}aeq{J{L80=x3 ·ՒW;{`+HZ1_d͏rhΐ҂#fQBziG)f.OZ.Cfs/c@+,/~zDyd %r$LjKn2piքʤ^ t6n5򶺟~2u ͌Zx@7 sɔMe a[;ӟ·NU`F}8r&|r5poFnT"O28+X /Ƭ!/qc%_˘y{6 )SgxН\ $&% /UYVE$4* ~c͗j[ٱ&8RUYW)Ss,׋kJ,:3 cB:4Y]=Yv(@MKtb۩h(onF'1InA?N]VWbF2ep 9J'Q['G0c&kaLN5uhq'Ino[z3h,/.FOjW9ە c~Uϲl鰮h:AT H?=* 2ܨ}Ґʲp 'DfqSIԟE" ,ӯb<%ns2: e)KwЧRw$vs'XVvb!9> j :Uz& p=U,#LDD̻mD$ WY'v]6a^<7ZLpBOY][ҥ;gns M!]K[\]z4z0*KJm),v+MeU520$7\?)!U(gj-GivI!` eSs$#+ L`Ykz}6rˁ>q?ryal*~?6AlR妋ߒiA%CR}LbK HN?<3jWUgdx'3h;@@˻ݵ6"cWBk fH5()q0d\#aWqngue@v&~~,ErʤD t(0Ǎ*WT gݢSv'?ZJ|(Ht ~0,RQ*喾u71U @ᦔ|Z=Zk'< ȣ,Odlic, GD@ :\kGhDG[='l~߫:-TuPP A^ҧ[ V`X0ҏP c_'B[2n`&*ёEllt?QlC>wPy1f<(l>U73eYdiP;B1gq?)R İr9&ӿ|+WʝT,wbOLf֟D' ژtq??M89M+NZБhHqPAoGDn6Lw= ;rT}PAG‘T>{V(M2XOVn 7zMX!i>X^ɇ7KpFWtm25s!] p* 71}g 7WB+7(a?ݔ@.wy;7b ME^0{gARy2#`7fxs[b`1O f8X^sWZ.\!/zM e0 h`x YhKȡ;Sze$nSVGDi0eez<̕5WLCcM9xשY"Ir,ͼ|E?N"ҕˤ7>Kuk+t#]/޾z4Ӯ; Xmosn:Lmd&(c0җrۈe]XI\!omA^ xlJ?̢76$[^ K2VRrh@+&J1xDs{Ņ`7I՛_C-8$kgu|[f]v Վk'=Ob%A֓iftݼU&RL-NsiN ePIвT jE2jpQ0Q=%槅Tϕm`A/bCG]<NmwK>vP@+@D -R E8%XmuS--:'#wb9|$"'_bgYI?WbG}4CƏ э֨)E&Х_Ň !YTϑdsMhX#Ym%uJzfJݺۈ*A1pGx~|F$G@'ݵ9 Ѩ2( dmEX`i NW#NnfH0Oygc*MmXj}ހ\ؾ^4 >lo HL3JɱFιOv!^dW4O+dtc|m5 ]}eڈl-7'sz"1[ҡ݆r!T;E2?[ DKW+!ۛΜ׺k9O 1&=0,vO@|ad_@@Un&؛$X >37bK(9M@m80+{DL#U$M <KsPZ6f":WŇ}+& 6Tx3g ӌas|[P\0ǦA06\>HO^5@?mCo k-R+F/QOy Z3kAg3U[(,GS7Pk#42?¸;`r]̠q3c% O${ou[{q%HuA͘J ctҢcP#7ueNK ‡̫McU_╛Aa\voڄH` ]IOywr(.6V ''Tcd˓'u9z@0~6qu^Bb{)c| 9~!HPnУE2ybBJDsP`DYr>*Vޑվx; \?%nӅԑdܯ/5@A {0HM|c꿚%g}Ҏ](7#I>$4cR6lSk&O ^diIFX8I4uv3ᓫvF,* Dj̛]\Yh4}8B9ed,ۼM'B-e(ϋBBF #Vt}a(R]N 1ȣ_\|)K ~1xT.kv͔@_Z{# E-p\T1i-'ɍ4T/X"u^-;s&v2%Ν 8dЋml,kԢ KѼSQ%KjXnQ=\LضT,wG^7# ֦7NkDs :´2F%p2=a(+w@q2|့bݱNp`rWHґ|OtF]{k)':*2¯bm4>lRRt5[">`sd(J+%zs 6}Kծ0 Ӏ%:if_r- ` "ދ$e*3pMOׁ/hӻ&RcvlhL p1=p\xRƟ^fr1`9)GZ2K KHRz!#D/ͰC&Z2=XiB>yhm7zl|G0娷f JsP'x:jwk$?&z'lc6ܤ\z'mV͋L\/+)8Xp]'תɣY;@(VMtn $Vvf?᤯6PȹCW0][]pc rߵA Zs@3W"z1&ɍվboP{*Xg"!g V̏`ߏ'U&w:dXڟ.RMÍ6%/ n g  ds Q4Hx,gA"{F'pzh2kw AVYlIeɳA7WfzsFsN1n"> twXkIn:+-21KBYGDRVH+UG:9*35 8rq WxX_EjM"wTjv"x'3I)H`k|SnAppcɄ\sX)BeI>F&/1lc=[%R VH7$΃}8?w'1k[6 OOlI)ɠQ66.LyxbMn9i~ NXP IY+ex^#k\_܅x߆c C5EP~+FQf" ='m< ->xpsd׮ ?,v`X5׬j@\D$V";ِZO&߉XQB Si)6?--QA^XCv@HdQK耒&s3tNzr6W0f lg@{a.~V#|4}/q|~QGe@%3ڥ7*w<&@_u-k:t"yqrk3EvK?TZڢU^UtrX AQ ps7;`1FQ#" -$߀ t93p Y{z3bFRw-n}uw ~C%GRSMûqrWtw/g\W7^m )ا/N_Z0EY d 97(rHciOT&duXEQ6;~&**p ;%򕵗V@AC JDAx[ECupyI@NކzDQcZU26HO$؄GQXT&ו/$ 0ݢ3 tw;娟t~0c9Cv)s_O cUϕu_pHPsK`0ڀDuN?PU`÷.\KY0^&,c]޶z7:&Wau8*T A~jZYp$/y~[32vȁ΀3C̠Z`yORvY8}g<#=Fme@pTS}5FA%Wmz >G^|N*s#4br2Nᮼ>ᾛj2Ԙ} >zNw)Uf?%wW/4O*֛$%NsBΩ:jɒߨ A"S;Z}J߷WEcs=>*4ްB}ĴT%y2ՉSyAP?29ȥa6aA&!D&<٭FǪL֛E"wܢn~g'v~ڪ\ODbdT:Y/xL, >DM-nX_[\zC,G&E L{ܩ겵xS+ }3mЌ c '`~icKT}Ť+c IgQTdj"2&[A/ 4 $kۻJx =_~e<@x j6_Gr sk/+nvUb H+2޿ޞf@sOY=OmNf4A4Lw|Faȥh!y{;}WuVŵvJsrT4 J qHtfًCQk'g0,qb2iu;xw$^4%)s!p:Q 4!sϡ`r]0TBTޡK應_gy6IXE쩘tReY?eܓ :R؋޳\cyMJ˟68>k3ؐ{]0?HKI=Hw9?]ƁrA-ia7SI5m߽պRؿugbqVR--{AAtMn+| e)$|xyBHat8EEKET#N{_3/^7*Ej%Kk M<+7&vEIJkzR(!;,ɤ|^g0+.z~7DFlK=^V3QND_L2or 8jaOInC4,yDsߛ!L݇I 9Lyysjٜ}=Lp8D;dZ< IzNa*'S3wGi8EvކB☗5BQmfd0阢FRL:4s2JRֆV $t? 2o8vσVzb9hX1v`./{>]1N/u428;N[Y=8h)ІKܖ-hVF6v}-4jOQ20!fZѴ=@Ψ9N"G4A¬D^LS?=-eңh62šqwҼ/gz3Ф`٬|ڸk88KA&ys+_) JJԧel_]"*j RWQɇ*#@Ld-aNx0 t?@-kQi@3&Ru@:ZT>XҼ7.]U'rwtK Vž }S;5sl^(=Gbo#{`Y @>Y+dkKEAӊQNmcj1 0Sņ݄W?OV QO]lÐEjo"Vb-{K#r9 K6^:?BX"Tb\1{'UmfWTu]n*qm>ͦ h/Qd0%.'e1br:X_):566^")z&6ζǷi4pa?o<W_P qX85!fI8[_Ӟo(g>D.a+K|۴N( >W2B~H1(xdS-AKآE-^ǿ ?-۳kB[G(`^"K:wsʨ>N#qaI{ VմWIDaC+AWn#އXD߇fU#C {ZI-,2%pu5ahXTV;BYf#/W TW4}K%K{lJxo4k܆i?0:-YF(g?KyXA<#WioH-#VC)4᛻=* eh@7a휕tǡ=ԧy"B-*WXxdZt#vW_ OTٌۗU)Q}d3~1']<88=e: 'buLےI쳝Lgxay8GVQWy%Ȉ ʖA"$%* U}F]VZEkvT2ZhWRC͈TlE9: pT&-G8k`خ}3(?AZ׹ʭ'oG9iEq^Jx1p1wC>x:AH{T==Dx6 7zU+ʗYfj`j>QNFjxj$zUY/xe/k,9? H(DUlS枸 @pi^%r [Uaq9~ nۡP#Z1.R85w^u! lV"z+̋*998S}[xP>~1иG%t)@y<w\vp;mXGT8VD#4.16GN'>y : I.ՋN"asdB.pj u+KokkZPڨXmm&o$ :4X\ml1ԭМ5W _Pђ.YyVPj}_cIvZagT8etou'k6d#iT5?8@tP&cO(&LӍ)sFmUC;]6RT)vs\ ϑu$9 _lk\?D0KB9z+*&A*uOHrr+&7i TLS`랴KY4j iI.8_.:/w#Kc0p`,Oi~MMڹA2rg'X9A*ϱAy}}qw:2)}zGA<6.si`Ч>A@Bnf2{yM.. P>H"8U,B\[٥Fr"4n߯{a }\=)ҚbHU8l?v'(OHgDɘ-Zh =iTT+`ĪVf!Ȼ!nBG7 @*Tl,%08uș គL_$qaRyP|EWI]3з+#|>\NH`Em TۿvHon,ߩ՛?}_<|3Xc'8:L0;wx6`'9 ֎9!8^$o˙kw9lvTs{ҸLku#$\ҰПxX54[#ȃ5LBB?9 ܿ42im j(!VWrmc}ٲ5ܶ):sC IȿH\[mgkUς [GcaH\-BWŤ 4&jn>U ik6)Z%2+Yq\ԛB, RV#(5m)P4QT(IM @ m/[#],aExyЁR]g%wc((sO#L9}Q~!j{WN\mE}O F_h xHZɀQni94WtQ҇ulrx2:W4fqT W\Pw=5jOECkv+t+8[-][Ͱ悗jG0ڶhvMO-%wT%񱳸KٹҰ7Ɛ_O0kTND)@  gU`R;=@L>O\TO3Cs"D:haC^ԟQXK1H&v[3g.Rft=9J98 *V\*IUBg]OB9 Rv d/ .'? &EIkL|?^;vv3mϖ譫Ir&gH;mXp{5h}(+p] G,f>AڿX]:chB5,mCD$8ߺKx"9; mbX-$x6 Ec L&x{Ũ{x`//"Jx0բ.$B{I{9DNc݁W[sn`%ĄH6pX8Or 9RovpL-\T< 3,pKȯwz-$4{QP_)L[d'#@A!dUqed4tdbJ+?Ӧ@[0K#T#--X&<ˬ>MYXE,_l#ׯ⶙ T-a%n|NW <5qei'^M_1E:?Rar`oͬhrg$rn]Io76I);'LoqPQK2%#ԻU:=Wdu9/a*]G@Y:".+mIc RaSo#x @>J'gO&hA~wޤzɋYR)2X%⼵ 1" Sx2] +,G':gg{w69.$'oNŸȥ7l-`ۄEڭux eV4}jgP~]_ =p e&*3k5Gx${PfM<@#x(khHdc__UBޫeEq`= ~8#%Z"pQd0Md2;Cw;LRJř?X{P5J^Kkdz4b<$3{l] wjӉ`AI67V %.af_Y /0[he}Px~HO%|xAlsXCBʔ=ŞTGmUWpO{N^xR6̝EXMQ҆:pNTWX<< 6IW{wdN6PD|1gsN  S F6 KZ8yG0!y&2N}}ԵqOޠ`K719[mCfo F]:(^\Vi)g'udOO*`IB%*CP^?~d4 H?/ԵA?96}޾>/ZrۯxJ/q_uj2urWƪKK}s,!u#).$o wSDVfaQJ"ߖ@~gaEu!=-0uK]-u Vb)/t&OOW(1t@??*R@%w4 ݀s9n_9s EVZ i_T}Ѣ})jFW05%΀/Bz%eHw20fq q" R3'pqH?L ePbY+h-,f.PpvVZx(1X ^ƺ,Nr2c)2B=vX$XH}e"iBtg¸JkVBH^">lg]`_6 wli)*>CRa09۱Y(4n:~A_}yIh" ,y($P&闌TIA|-@.,a/|## r JL0ِ%^cqߎ]]:H4p!{{4*Uyy6e`YK@P6 ![6!e<anH&a߿&0Fomtdo ;I") j5̆<`o{W ]0޲O!e]g˰jc]r|l m(2.1L*e K`!Ly2`R09/.A0;QЏfU.įe,[($L XC53#qo)Sö9pPy/r(HAJ[J ÒgG#"-Qԛ'W~%=+ $ dy& A:(Wm[#e{vH7Ti:Dr8"5[}q) $^.x\ Z쬛xg!/A9s%W~8.lB esWF3F!+'ǿŪ*!J+\LƟSf={nj꾠xy ttm #XU2p?쐂;?Ál͌+4x>p-b7v$ӽ8s'-^se<@w85z^QegO'X0`{(Xe9j 2/Qť÷\`򶸸g\Mj{-}^bt@H 26R %%&:7#UwhϏ(pMEvо&Fip3~]uB?>N FaޒhJ4ghGY dK:{V#ZqG\n-Je@wUE H>ygN37OE%TtVLȫJvxQcFMR6$PrE J &1miEi'zq(؟4#fV+8}X&WP>{J3O96eDADE"͆|ttUGT \SOE>QZuD7?׃^2\Qӛs`"9րέ;Z fB@Y)Af)&pGCJ{6bEy:XInr$6B@]k|1hl9Δθ`N h R7(Zgr]vQq#N^knEm pN)qmPg]y.$!ig)% BTpK`Q=q/tXrcBt!K%c$!'ܼ,I*7`m늖Pɕ+j݄(6LMݪ_.Oh$y8B d? :qeFw20{jleLŭ=da$Q]MaOk PI7JZVX3,-H*fÂR}~*O߲%6kP%:8l*KEg+{ :L@xuُ%DPQ'KmQ{.:8U٧WOOmH  b1I-vۖrf3B0JRIUسp!ϧ…;_$Ys1-N+Ehu|3nH+b6FU,vƣTcjVw2ܜ ` 3iƦSaLX=k 5iGqg fzxo+r"E9+홞BGFTK^vn*V$d(SRX1 EA\݉dyj7Y+Em36>A8܊5k0#Tf]|^C0^:ZEzW47g)P=,<|1o qB7Pن:D 6>.iݲ[}/A Ǫ3%t;! :`TMJ5sĂ!wpKY~dR @+Ԡɋ|_ ͋kjYE#I&Xl^hKoSL$A(TQr[3ԙrvTMfLUmK稪,բuOBZAk *$GpkV!/}li8_+L䀗] ;n5zDKtaoG uEsV`"u]TݔE+w$: EbP@F7Sk_B.|$EPԎVj˘qJT;VgeO QA61;$ UB;#D1)r\SE{L6k5'nسSoJ8΢.`lm,udq}lNhWΎ!v>`#mv.#nU~LRԎd/f᐀Q7Vb t_ô;Ϛխʺw}Lzї]aj92szҶ]CR *̠֬$ MC͋imj 7e ,t'(3(L]%`k^즨֖dOfla+S@[G_ (0 cv9!ݏ.Z}56a'S)pO% }.EN47r.# +;]NbU;S qIH]eDgO;u:,m^2tEt( ƝgV Ͱ0#7%6;(5m*OCJ+_T%D¸<@H/N)%@i]){4ΫKhRƼ@mpm==UYilY h`w`bi\d"pV1vm\$7H,1Fû>lvN/\t&᭭-#]VƔwI.Wv̐bPf`%18jvS [x8}vqhI]::dEŴiǝKh/(kvBzk~u5qUHT[]?,9vSidPn ȝqj,8wL9B{fN#Cb{go08xKxFz/g$NTw ly.fmT$pR2&ŒpIww {]ϰD 8#M;r`q9.*1RĜ5U]z~]Rj: mb%R\G%ݓّVق콍vlUC a0mR0!CǥNdIN(YG# > ESW)Vhq@T_[2s3"GzD[-0K؊+ r,GgeZqiK g,@#忿2\U^#r^(b|8h[d4+vEO@$BQFNT?"N^@ Zl>WB㽶Mֱsq'D]|S}.ek?R=$w6eYWB2#z,S c0M/h.5`9NE.?EVV[N(U`vc48݂XGGZ1Fm+\T#LYT:j&5`PHmS;P0[Ok>ՓR/YWMǮJxcF:bfTVc ?Wpgrw;+66l. USg_{s$Hd*",xc|q벟hTbɰ9|qk[p WQ4#Ye~M֓Ҭ*C>v0!Z5:Vɪbs:D=;%Q+ 'S3."9:їH|-.yKnL*ƙsqAY,:[v4`Cuķ^n77b+k/&>-ݸK)ylgx ) jAmÄ ~'46; >? z9ii1c.!3y=Cjǂwdw<`D}~}|7|; oiޤ .sPʂIIp @RGI~ ,zԳ4^fW/Sڑ5S(,w>{Z̴*a_΢@ 覚quaXnI6Ԁ^g*օt}}QW#$WrRߨG1[\ 9. `wKW~sqEDrHsd<6qTOMHy9\_0`4Q~>krCxzͲꂭGoh_l؁4uI+%#_7?aHD{V: +_Ǜa$.Q>yjI:K()f!3|j/GCS7x#!'et m;XY $ x`MH~wdS{8 Gv`MmASN6t/rҁޑ-e"5շ>@½.@^qS"WO9.ǧ-h^bfi+e*pcٺXKzk{U=ziH95˴JKrC{ai/UgL 3tr(0h1VcI]!okcf/Jw= umIF H2o5JsWap zD>UnmeJp>xkL4)쓊`_Q`iU]6l._WzɐG'YλV7mrL-wZ!FX @ݓPo)M DAIA0d/ۄ cH,[P@^Qxxr3e)tw~$9m/~kNxG8ね(*dzgOjC{ghUUaeAfئ~^. =MF~Uݨ}TF~)C"Ij8^^v E9`i'JM4qWq{ELɾE SĘm ]%T?(AAH BaIҞ\O"[XpAߝIUBv ޻ [OL.WQ'ҜѦy +&#Dnp}|hXN$fjKVl1 %ij%&|J䍎*p,$r"EdVzDH#0r5)E#k2rw?:^נ*^: lʮLKo{w@y8W"vv'‰:-P^4KLvr?esXPVX1NԷ#-%s0Mٜ# ";fHw#B~bbT9^hCb?gqLx\:M79!E+\Ȋ̵J#̢T#K[~nKY;(&P"s$\>ɥ>ơAvߗl̔pBނ.N D$+ެAs[znKC Գkna*)=8ң.OvaQn;N5#3LJ 7hJМx!+4aAǃq8q"\Jҥ45 L&Zu?x#p$^$n'Ȟ~ԓ2Cro$K칝Ջi ktʏ ׀^_?iCTZ9+I*wK0: m tOsC|nЌ%\i:hԀ#mj%][¯Bw_>Uf_g4rsi*^fQۨnW`d@@Ngw\TKѣMm( 1n}8u?W<¥G\DFf^}ct`b֏pv);u[u7(^o$' 1^&N ӭI 8^ŽU)ECGӠu4~k]hWm` ̜iο;йZ ϲ' @ 3||w aL0Uv[k]]n QaH|Goeb\AB3yQG`q/Yn91ma#FY GX vaKh*Z*G\fcAJv!G$2K]SxxvE/ UdO\LRMK96@ Rg ۤpvQT[.[["?RZa ιi9?d6NGSܯQf?w:BN=cf0"bđa9xuc;:{իlCO1umu%R.}n1ӹQ%ϙC]KQ?(E+'/ [m%ܑz'lCW<5Fg-nl.RfB$6(~of䅖2A&#jUA|'?<`1o!24o@W:=ټЉ]tao衺s lqxhe7iui}uى;2轓C8s|f;;*d8il/ur)DxZfP3&zm1LR5~O}EYԟ|"&o=\bH<.o`b{ qZ @{C; /fЕNY7?&;xڔyk^s@41 tc*  N 2q\J8h(6*Bf]hAtN*&l^7g5uHKUF8XD>_pR)UN .bU)·b¸v9!͘lL!ͱ;mqDt!8%z %pp_m6nZ{J7y#@'ˑp^׻k5I'e!La]Epr[@\aX۪B!}Z{('󔨮\Տp w@QRU.􇔅{ R<>5{wGJdcOL>oQIزM % &FKT~$b%6.m5 ~хsڐ]{%u4APʼni:<6)QI#(h7ow -_ pӠu9аNH eX&Ԣ>fڍ'=(ZaCxt *!I׍fGZ_E" HCS(DL!HD7t[c|X-^=jhkư>F_n(P6EKg=-g^ R')Yׁ T9%C-}X9LX"b7kĶ1]^VpBi SŔG 拆ahPiݷh<%kV}.`l(Z_ꝖokB&1Om֩YiB{~`GxH_v3YG Zm4ŷ:DX^~.hC W|I p`ý[ z&5㶁u[(Eߩ>k8O|a7̶yL>i'/ ^r- 0Y[g;=UԲb5djA5k4&U@iuȵ1j]]w7mLeRlgktjd'R(6a2 FajMqzۮW݋NS,#$6&SK| {šXzP vP ϭ=X2|Y6R%-RIw RHI@Y FQ QGPy_D`"؂+6d-nKA2i#@}=fsmu/4j昷=Rx&.On*Ec{LܫdoAveVl)gah*T" m`Қ8 xِI,>Ԑ~X(0),dR:QU=jFjᧄ;7B9y0)P ;EHW+.*0A?F9Ǔ>5 uD%:_]ּ|7X- DbKfmcR |aBF& c{EYQ{O{h~,0BNnjTXk[d`0Sݒ-UQ2x: 3k`e@68Ft23?Ƀ Gf?XqWޘl#ӇǦ Q۩dshm^SS)} +@[bZMV6;poSRM!N@\JJ}^yC5-%U. 8@3k?od$s~_ Ǡ RoZWѤ2QfinL;{`3MLvaP Ѵl.bꅮ0ʪwx}"R'qr_GАyyS~kfhݢ"50[BJ.l}t%~CJ0j9371͝أjR@;yn8yqTH2ؐRVnxЖCxVhh>6\Q]㈽'6_0XUjSּݘD|>HgUb[$vΌi > jZ_Eo~>F?Ns *YتWp9)K#Iv蹉AxXhm2%s~2ǜ=PioPm@X3Bn* ҟ9U{#uoC] :yn]YHat$2 R#Ygne?v}LZK$݄D``0̳y }h>dp"(sԨ‚>ƌmΊВ=PA eGAuFS>/j4W'Gc9PyfZ*[N=ԹnN )cJ(5c{b: (!Dpf/">c;9;9nAdZ,p}~rmxj?K"BWybBߛ۱D `0ꑩ9]!bX6PxhBTs0?cY˅F$H &ʳkiјOUr]2{CT.l(KjGaHV"%&N&JuR%WbFBY t/C@@{Iժ ~2^e~F>j|D>/丫R##rFJ,%]W|+l;| ];>JW)%l&;$%Scػ@^&OQi !!CT~{G}OMC$G2NOG "N&u?g7.|o`~:Z R{p9[]E% (#ب a[19Pr' UܛR˩J]qT>)64ES2$e|K1H[~E$|8/&.σ ::0glT .UPUJP;]Ru]F"`jț @Xܹɐ{T~2W}Vڈ9C)};$wW'\io|Ujͼc7M `:g>$\9BDy[GʂT04Aɬqt, scґswb*n*md\p}LfQU!8k$?&cVַc4%7%M{1+$wg[HgaE~{ݘC5qPb9?LLƛ]ԛzF#C}]P|e}BĨT$WR^_Ѣ6)^PŠ WqwkM:bfخIBB{rj@A9xZWL""AH<,tS,&#W)S pv# Wbd~7,-Z lLTlrA3tRhspf.0>9,iwSziI_ɏ+qx3~@Ӂ0G_q0hGaS&` E v+vYߗ7D A]m AhSJB'޼.}uҠwXd>P> G p09$86{.Wq^O1#l~tDBY')qA1D޿}xP0+*fYR9WE>B(?3. 6eEk H8,:icC-oɡ]1@$Alg1Q–Glo䰩ᙜuǗR77V&>MH托8 y}vdZ_ _K:5WK3X#:*i8N]f^r As1uvYguAbY9|l-<{ >hL`3q@wBS\{uBώ8z& aa>e`BXu6L3b6=98v8k:G"cNo;ʑ!Rوj FcTlm !ON9^SVc &{sXҞEѼ&tnUGxz&;My5"6zK'_\i|،`QWX!CRNXp"uCXtCn%!{FAkGg5`33}vdfR=S,7*`>q EΕw 1Ij2̈́\ӿt%3,VY6u6M.*NH찃j]3?I QB7kakEӗDD%'bf;뿄 G}k[4&jQ8B 4λN|ӑa=|2{eMYNx.U LxI" > `\(*p rX d]Mn]s-Uz!!8aā)v().Cw)iJ{YX*Ä! fW bݧmZ+Y?9aNKkJrJ. \C4oԸ+.6 EtYjX6עΥ4rCsM9xTW -% u *N+3A5ԓ}Okh z.rb[ʱh+bҟA>9fTG /Jw7* Ɠntɧ0꿗oe50 w`8/N<'_ BqVgCڼtAmcmZe2=B%UxCfƥBU5P0 B *[Ci͙kVO-pDN:ϐ~|]H XYWx{#ތoˌ_9'.55;i>ٯ=h66R,HqatE$6_(:p|5 @4zY䶛SfZan_plnPLz߱A6mѲ(A!J}r"QBѺ몆ɥ%]H'?Raf!t,+~Bpno /4YшmoS##v>O~-p2o6. /o,D 6ݕi+q$|]EY 6 Aȸj\q>l2Wy󮏾>L041튷OQjua ` O/y^?Қ ê#L4WYH]fvvW'zO= d[Gwnbį e ek=/,\ h M -\xmpHғ/Ȯ a@MSsM'Q&KI`V8ćǴdKnQGx&YS6[WL0m#g<ͭ!-ãkaG@NQ #êgOH:fgPq|roN^*UD'~5[a%:#댈vl&B6,y& +H.`^FQm]oBIW*Z]\CS 8ۿCqȋ>VkU*V1mNꮏ!WN,TG8nGC1mL[%9>CEyJ̾7 YA&2" f e8N%ʺ\|0Cc`7oG6]nQN?X7ܚf/-o)ney)tE^Kdh?aj\&4$Gv#fvO㣊ȑF e}@cL7}WeH*iR)Ċ%-ֳy"^Uy[L 7rݱ2 Iwr6+S,b%EiC`eߗXP(q6|x>6HEJvx)Hnu#%ζ9Df5{Rn!{ʑ=^eם&JGf;_#FU;8ng`4(hq8K{⽖[+ wm?Ns>:ӗ$fq]TD SsX n&,zPcL5lP=Iro-(z$h˅s_>[|nhO^N>, Ou{F;;'lbpuAAvĴu?0&Xv7-bbmE ovtgx Zbe,R6I`il'q2μ3*;H뉼#3`[ W\Zi]7Nc$ڠ/@%$P=*] Q e2,(@5J뼁/e77B`5/vH"n^I#f.}mu-[ƶ>۔ obuۚ1q쨭oqTog-{z y; p d!Jw cSqP$C~,M蓽RdvSWWqrcdafI)<mWaAanKxz[C.a<-e|u*k$w,ƦE4$Q~LpfrnnӉ>n聙C%~lBU]],voucW.N{?wAV*vkҦ;%PnpMCu8aV&L/zȹ F|Q Q^$pxCQ]r2M&{xf!W'Z'be7S0[ 9=xCN781š Xp'/C=:Pf62 ڻџ!$s #Q<~Wo Ny -ӱƺ+UD`5sǂžv=Wl +̂xz {3j? .M"L>whoK;Hڍ.8V4lXvg a C]RnRƷ>׆}eAtUhb|V*bAp,pNޯ`Lg!zixr0)}=} *:쮙\נB5a$*B-Q!,;Bb10eJu*?\Y!&%S@&8F 1շ8q`!:â XOw5?wH\8R:H3sF$s:4ah3vдRhX]VBW چ{>}s$_Klѭ#C2]wOۄ!x|.OayԱ_"a*FC.SCJ/ۡ{/e#@ʉp bRu-n8ƾ}R~ލVT upAť^3 s 2' B! O8vRnKh^&e;=J3JJdKI"VͳK2i_Ib8uo_kǯYasy){i2qAJ㼔{jRL\:7%%9ՇZsn`n-gЖVe^5\'S!3;} ,^ ;KrJ@:ͷ콼,/Ԇxݕqz j؀#1W3!sT-G02Pg6QV? ne" ~0T"$%?9,V?# Y' -JrlhVqw#4<4ݓ>g3 hA D]nkdhJD m7Ar9K(Χ"GEPNL2YG^a i4Zf~XB#{Zot>4鄆JnƆsV-]4ʬ*S83lfVϾ{53OJ8EXxstKi˪gi5,XCכ,n"cP2mM/0=qK&p'oatϝ|e_e&J轷R'^h C~*!=!O3=4`QЌ"G!HW^K'yl<ć|} *Se&uL4=p T@"MLm؞TV&y^:owD >cl#_[eC<~B6WX=Evp,ܼ+<=x#Fj1pg:s' q\S dzCT/HybG{Ҥ|CLR`hZY?_- 'P6d\\(GHЅ*;- ĢREF9uMFU墚JдҮЍ| 7m! /r= S߲6t0"ri=MnZ2+|!.%uRz$l1.",k64{]5L` ~s > `Ufj{9EY0D hjؠs2G~EM!JD17{nzW 2pt@t?< ~d%x2lv<_Rբ(TurX7Ҝ H.do&zLmԂѦ]h%h gP. &QF]%f—U{k]&OI褲U)H4 l~S/wce;-%l!(t&TSAa[>=̦_mF_qZNag)fW2P$t3yaDp LWKDh\JӮ~*rah- S?-4d; Y־qfֱ2R^| 1(bW^H,f gH{؍3nW.c`iLFKbɄ'9+j9we=gqC@"CowÚ3`xf$n?>nƑ/Ũ6js2@ųd#CjR::VE CR$<OH. = `碹)QZ3ybЉbZcz,jipXW،́|^ѕ56Vq XQ[|~{ы#կ2Ε=d\Ȇ肘 B02}Ua (}1$n9÷>}3.w!a!<fduJ*LEZ#H8! A%&+=B20 %~rJc>^eJ}1:B'P ,jmEY5(vRe)Xv=&9Bupf;̔/ɵ^W2Lm oqRTMoסݷ(lsmުaT!P0L!$l ?~?`WY_#sì" b~\\p1 1|v \_鯣NP/z p}o Eq8c֐L[0Z\I1`C=lD |I.żi/t'6c8_>ALq8<`# o 8nJ] '2V\V8sa^tA#mFWy=jYni0!3c>]qt־/FlkfoQ#O+pfpcd-EA/@M{e|X^Qw7͔ܫai2E5\&mjv2Cה` 8 &^']1f|tS,sWrbniP!),->2f z-ξw:uLpj=a2E(cx,R!t*W`[u|u}U8vYY4~CTƨi bmy ߚ\EP,]ĩYWN/x U_{^1px4a$1AG򊸾o*B<$bAVΨaӳgHk8hN .f ;f쑱NP%:²sgnn:xuRiѝ2MN`WM e!(MP/-) JPv NS"ȆkO)Hz n\B) F8n=Nm8,GŘ*|>n܉W͇ t4l.!DA(r# օ 4 &ҵ~N;!@ w 3٬ky鏱iGA/WsҚ( 6δk=;;;)9'=O®lh@J͸5F}QYTMJ}[:MNoI#l'aN-]|! ~wgy5i<7ARx\BFJ۽7Id'yž900Z³?i 0?OjQó۾P=y#ǐwA`T Vⳍ(ҲB=|4ܴ5MˠW@DB A~UaQWe7aDNE0%J&uXNT+??'K/ aJ6a&S^ S-}/C.jF ͭDT_Wr hMPSUcptOsVh]HfB% ⊧UPT\Qv~.Zs_# ll_HD$CL6d/So {y܇65ůkrn_3% *\ o~sྃ,ό!c:~wɑ`w[= ZˌşԲ[;ēRO؜:ZZz>W<qFq#.b5FqjŃ s1SwCE;= Ӌ(dCaT#4<ej dR|l5}#N.n EOԖ.@bn9`.폴F`wȓ"LèS2%2wsXٛDżfqJc.h@D]wc#Wee-}ANO:OzW AN++ᤥ[Y*d1 / 1v߫ų_&f節x߀Q>:@J^8'Ih&?(G>g z!NwJ(^x ZmPV!~!wPBv+ر`ކJ(5_ފM~ h ]SyiH heHǪ YxIB eZrL?8p!ih}^\ddvP1@ z3q闾BC޹u"рM Ւg@i׼_猴zrȋsz[aUT( P8yJ=^Zt\o4SIVf[CdpHտ0) by2;i@p;Ҋ=" Z8pY-AC|&6Ty%[{ҵR2XV=J2%iqTJ*y(㮑?k'Ca`=#v9`{9—n<EV'MhG/ְR&co`L:AXz _sbG!:g/Ԏ8~#~[h |JM;8:of85n 3QbCԟE1;4u!&!d,SɖH~9} VĊ\,`i t+W4 QR#T#]N\Ū|cOO.RZkgm>dU^ R7]k"ao,KU$W7AE ƾHǜbzX@o…)9omkȆkc#R@΋z go0xp95<4ؕHa2*"oW4 TGuH(y{9*Tܾ UQ<;jAkUw! BJR拲0jqLurrkwtUxl*;zauJ` Z+;U @&-zzXqY@U<&"qq2uXlU~q΋]LpP F G5=SirǻPBb[. )@#ƚpP_stwvG .eJRC!]g:Tf]~Séw]ϯG223r:.}4U;3f<<^m]9F`#[n()THIHX@ִ:V kDtْ%z窉^Lejپ>Xu=*t=zr 3$~v`<7yU>iL5*|# }g3iɫ\<!{@p)@gVX㉺.3Leh"μo2M,^6N#`,RQXJV`;{Vs^HKib@VF%Kc2j~T=I8ts|Jy/P 7tZH$d?>/BPwr1P)FjJ:8xt8 Ӳ1=fOi(Rɬ^josJ.b?Zm p6Կ_7]|0iνzNX6cw%o\\' cCeƀw$ qvh1,^_Q`#I,ofTNLG-J+Z0mTq.u9mq~I J M^'wqUeHW0˫ē{3K1ӝtL}[Ӵ~CC[<gCfPƍ}anۉ LrIX#K$ c䃆NrW'+YL2G|φGDAug%Mȯ.ոȜs#fSP[2x`G>=eP8Xmc"l2<`\"5 VVC!VǮ{#\_v3@4BA*Vz$4q톒?BH޻Dz&cq*`%mЗ(jyhk:NKhq4I qm_&A*f n~Ari94 :>ϓ6G¤bAiEib:Cvsj@Yᓇo q*4}΍Z'DK7V/b6HD9o|NuUno CJ8TSѨnQg1\U=07dӸPp`, :Mowʤ\Qr͒ű>!k< o8a^}Jxz$kY菢^ҵ[Pc#MEN둍ZXq 2Xe us+QK?O5z>H$ZYWN\hWp vkoxXp'$fP3awJoӼ3 J4@0M~E:{Zrhݲ??x*7Tq/prt\hJh;꣄*.nSy4fqzLш˦v34> 8ފ%zg*X"[̛ynrhɩQUf1~1R$ak!Xz?=@9)iwÑI? ;0Zt٨;&Q4lϗi2ᣪ/ M5kҴdЯSrWúxX\$Q|jix!F<ڴ|D'i9YC1ds!i4E07l +#0KH*? ?I NdO.ێ&kxu3df0HՇeeXI(h$B:2&Q"WZThH"4;PL Ɨxg^#r0j:)kZg$|9x0 |HD&B#[",dwGSqR+\IXa*OV|ܝ؆u|GQ[B 3^isG6r6+w4湦klX_biMf8RK9hkTH-y ~#ρgUAN%ں-w7pI2:U`ہz` AԶ45Bl,I8%Xd_@ M3, :#( ;MyJl2eAjHՎOD[VaxOnPhvB1mKv@yz__"i{֬^wzPܖWUÉ&U slFrjEs?9p='-ԁ4jĞ%8Ɗp\_H7-l4IwH^i~YؗǷV>eɳN^tYuLT-9c3BK\̿.b&x!IJg؊6ViOw܌lw$#wK'.L9=["IUdsJ1vJ#aD'&&0H?Z10F2nM=f01b}\ 螣0)G.n¤Ѣv Xl+ u 8 j4%|~Ǯ:iZ9qhYEɂά)|>.HK1LEHQ^}T.1AK{--h0).\o-QPhgw5Rt] ySy"lp:Y{p?]lSk +϶t1WN`{un&BئI-5=0g$,( 5@H10N\Ӟ:~QqsPט%!5Y++"0DX޳?9jbEIGPi^LW8%WJZu25,nЁwOE̡PZ1ݜ|U$$Zu$pECIG倠 hB45nkF&fn,>dKc/;TxWؙ) *BE0:+"f32Fg, Y[ aMPza-}`8VfJ[=!jnxVv75E]զvFHw n$ÑQЩkPph/ƙ{thXdE+ f);v e({?NUtUyA&ڙȽ,v叟U(k=֥ m)FS";]iPcϧaoxVU"S3?Loڦvt݉IMT䡚gQ= mc/@$-cvԼy_#N %QǸZbu wPo IcL@(;5%ZX-Ȁ@q NeiX Ԝ0'{\Fn[V!`c Ytmd^{Ť{VN8=QoV[qȌ=&ǖL5W(nXWד?GA!)>" [ k_rg&ᓷ/V~e#VCOKBQ? naPtDI-?y|TO> [JoRO6pg-go|b wRn|g앙o7=SA\+Uߠfe@ܿYH&MZajdkBÎ6U8"'R&ke)U|zsl ܡ;7, v1 "G4>Muʅn&з@$Sވ܆Բim* l6l'k[,Cz%Ƭ?{|OurHvyYEh~+AYsW߇Ɍv̆.}A5#[7t/,Y ?>' t_EfmB_4 J+ɒX>;ȳe,6ã \2W@<0.u.np|Cg(YqW6 Z$; ].kXSsҚJ[A9 !yF>V$ ٞHC'e[F>qJ1/D]ԱӏW%L uNzIDbr}ʢ\{C>vV >9kDcGuR'ޗ\~_ A&GQ[ەE]LRu3$YByӡa(]s7{a+x/mS`T wwc}cDvk+%⛚]G"않=].Z\wY B IY0 x;h3NfC]2"*᪣Ŀie1,u͝:/Β6*=1agP$&2wJghW<'čg\Z80i^:}Puk K}c:fH8̌{>*V-z&]etpSԂFhhwx^H2_ZRj ABO },Ǭ@@*gJv@f /&? 2nSC KjSf,POѳ@N?+ZG"ZL"ܖ ڰZЁmpOQYŌⰍfK lL%#z =oeOr}/⡳=H)iy~S&O7\ݮb߀P Z b?7(7Gٖ9f`PЋ%菚,ЦasR%@}AB`z#hTeGO:Wܮu6X⚗'sOB1x"z-,@-K>A- 2ܣyЂe͚ImqQxc2,0,*Ƚ )q5xha+mTXg20 yhƻћ껂׾JU &︥eUGmbut*zʕmc@xi,؅y9HfxVa/XD37Lu/'@5Μ`̎;H{r љ͢m߷Ipz< P}2ч+]3 kSbvH|"RKq[,IW$B<:B5<\U?lTU?'Q@4aؔ.GH T Po 7rW~MT;5T)É;TנNKj$.>-MVMeD;ߡ'F3x4E y1h;#%JQb6JD'~ UW`\5$fh``g =/ZT=Ҁ4j.2^+<ӡNĘBKﴏ#<D Q֨vOi%eYVxT.EM|qYYA ,WKdzzyx  w}-;:`n] .eC.UR6#j҉< ttbLg],@;&ݠB%x"#?$v9 6=UQǯaVC^0}8}S٭F ohck|KC1E`T_1!-rchݭcvp;Jd(n5^̰XIG/v*ɽ+}6ۘU9XV+'с=|8f;ȻqxTcmUt %@и7%{#{(C:7nF%x ӾFuO>u{~,\%8m܌o7؉MR*d>ǒ1C 6feeFMϼ M3}wT e"4j4'SMx`D&p)ceuG.M.!R7|cabeDT]`Wm 50B 4FԎ?W N(Yn%or^ޏ?I"Ц&A%$6غ'/#q둲!V{5ql Yl&!nlw!#8/%ȡVZSAo%*ON;F8g5oU `hi8{(+D aTQ_ Agz馡=~B2 }{#vsHer*xI$_lkf>N#n)"\Uʩcht ]3]wyʼiSIlHC'pD~@hڣ4PT'=rPq^\]5bl"QlT^dK[xPTEHLzܫQV4A]ڟ$m,s2~סvd|9{:4 d*#誩w6Z-V0MwDD +KzT NX >E^؞mUfw3c)Y54dzr){[Jy˷ %\bA] 4W&Cc-aYxoE)4`=owh^ m;N;M;U?<<JuDp:U9oV|KZ<>τ9E85}R^(=QF^ӰL K^]f~4VkQ }[d\޵XSPʵW=5@#é&y/9ăqH8?!a-QbR: Zash:AC/*ׇ:8DA [UO.C0Wj]wge \nc0L R0u ciV7.IǻG6/Ō[f/.G%2>*R;R}j#n:X GYZ W{wm#KaJm<9d*E:*":x?[Y,9WWdˍ<ɮQ >*wegA?El$\`6{XDl4K[-uoFn~ \XbY )q+(ݑ5kv#0H'TDǃ&a=ހ ,$-OH ?7~l~[F_G⊊Y>y\xubj/n@05-O[~ 5zOCه[*ml`Q/8mj0:ō; ]ŒIgsӶ06&:s;-PS>BGw'PQñY5WĞm5cؒb!+TrqU O+s׹ߍEH o,@jt!vǧKM[s!CM/ 3SMi8id"R]Y;Џ@1gxZ{nz*_<3BUk!^@H˚C붸9(* >p^}gbAvF46AkD@抇;\ I0fWs=4=C ;eO5:bVQ8 t xsTk߭hO&]$ݸg3VYĻJ?mU{~QS\>R{jBT9reɭ_1QB#XFWw2+3pb7ac+¤qkVi|;XbfΏi"Cz8ku_qh4-4됏|e}fFL WX䏑{T^ư& tL xcD.k!oV7U >ƎʎriY|W/!/tCw(UdN꺰H>?.olЩ[q]݂N8 ?`KO TΨYw47>סr-JCM~N(,;14u3$J[.bn-m$8uըw-O2noz h5&j>!$cҧl)Z uKx }b%YΨٹo[Lx Pڥ\wӲTYgaV Ip^F?EyGDTiQg'1P%Ə!DA!\зu>{z,:o'UE_"}W>.ddUV_qI*|N1ԮcLu{Awl$j~( ;JK,j>We WCjA fY8N|#< 8ΎY!"jCf+Dw͓|RO)OV5Ydt]ǀɝ}m%z9y{f;!I6;ݫx/0X1eM_q29Ϛ@7֔VXFؓ̐Jpz1W {6e۟e\Ad8H5و_AQs;Y)۶o6Ov=c&Kn~"˺?.37+xG Byb&˞9 bư`0jbf8e$}|Н-ظM)#&<5Ef:rR SphcؠF%#<&i&[ Sw)(jg'9<Ԇ7,ۅ5+nvKu=  ~9 CwzEHӁ4r~ ZhB'vls뉥`:AfFRpmYQQ%;n v L+Mn|hr?Ed@ZbUPw6/!8Y.|e2$*C㵋ƭ>#zim nFN~ -v df[/pv7\%&B?q %WHNc\x~M\GJz$dCu)4SZVL Q6tj(@ߛ]c¥U#?&([bEv/b){ ; zV aozE4'*dŕ1a^#MQw! Z0p`e)vmn4{u,΅}O7\&w 7e~b9%h "31 +nhrZaX S{Ď~0I-VaV6b#Nj4̭eOQ6iQDW1^1l#Gجwt%Z%`&&oM1د?@^P,cWvSGY31 `_IHRw8r--XՁ:T5?He$:EzoLĬ;HP=ƵJ' 4 zCi]V4iZVٸʧvhT6YV+|X1YqHrԳ|6/Mw0 q9&?AuqQhZ&k23䘺l\[HL'W6!_[%u7؇ip+CT.}64f)T:ՙGbF.oFYtOBv* R&$:XaVlƌǩF]ujɳQhJf}a6HZK] W1YX'!*?N qcr R {Np% AEH}(*FAZp4-9\{U6ȵ|PݼEowp p7cE:~]mjsE֍91JD9Z= o~ ״qRB9<ĆD# Nly㵍%){wW}"?\HuKӫ/:C)10+P`wf{VAs+7l1?UF_z@XHAtm\uCmmȹ ݌>RۃP֞ς[BCR [> W.o Y Z;k 6GPڴ]`$n&(  ?G}.BŰl5I,~ݑ.3 p%?KN4S1Fģ {c!8/7o܆G/h (#2!^TL)Z+ d{Ͽ/W6CSny ˆ5o6JW&+T4DwHRS( @=hfƒnEƦ>&0눻wZDnUX&7:\N0VpG\p'\. m܎ $P([Ui vktYfu aK+.QLRrF{Χ=Ϟ ،XMO)Y&f∅{E#^c6ZV6}_BTe FCнm@\i)VgFԤqZMp,{M E,Cm[tWۗ/j FY(Ƥ<n L ęvU1 >at7^FܸZ#$T;s"MvQf%$TI2b0)f|CgE:4=9'=B}RaR.d OLtO s7($j+\Wv4 |&\3_k}&^@c*|2Y=Jr0YƓP1C&;~$vTM#t[NGaEƐՁ!H{ 802hR>Uuz #Aa?2b3 8 dq0p6K*٤ Q<ߨ~|l^uB1Rox׸硵K)G椻1;C#s Sg& il+\$5 ^̾,.|eIT,kzGEm ^m.}Z~Ne+'y<A׾}b x&tn4ו-_]Q.$Co/okda<\y]ʳ >V7̴Hj$=2}f "b jgYo}槐q fkO/SOS3﷣\$70rR6_sˠG~=HHP׾ eAO(A{['}EZP{ՎeeYFh^PDcTbO591h*͔RuSa&T <eZ+![M5I}6$Kb6R14YiC=]j1kputxŦ+ LRXD-1 *3',)OfJ_t~rd\r v!l<4M^H5n*0<'֖yLUR}$>-VAIh[F2>Fۡ^R0Y/X>6ց^EM"&&)$ ,Gԋ~De&H-=<х]&@<o]h ѺӤJx=# {I?wS8 EadMD\PeKgnwTwBdE8bڑ!e׭ZwX xw0ɦbI` mqs #B0G>,;d͸GZ`mPq}ʜ4 {3.VXV d5."ءT6` nK{-U٫xcɢc,Ya g'r/7R*a~|^P_QsDWcC؞;@,1ѩZe0bžLb?߸ ]hBE sőWiKrVx7CN{/AM㤶Qjqg}-CzMK^-#"KȄ,|3X[d6.5'2(+b;P 4+widwYx͍C1:&BL8 PYNg򑕞fMtU1]LIUKrFKy޳pi)Ra쓎>#XOH.;7E`A1fk_@7F96qcHă 5냆SWvI.9`.]-Ƒ}x|PIuJZ]` wqc@V$Ux2xn>Dܵ$Fy:BjINrq] Ե?zGL|"8ئ6-э[UH9PSt"[`Qy% 'x @G^Wj?TD膎H[ -05NG N#Һ?ܱʉyXty>0;OAGdYU8&'pk0JY<,3Ozjѱ8ϕhH!$쿻#\v?^&B&kl*6g%ձEE" 1D! ڰ|цܨc Aa\,DN"ά/nLP'f\|wPzy時v͟JTzvE)eɮ-V"A+,S"Z?9aѮsGQ։F8/ lSfUʣpȦG#!j1#=qP$_. <:V\c9 +%';Iu$ICo87ttVӜb+OdE-u/Շ^wo6Mۤ x$?E)[0wL$A3]K}PQ2]/ գP7-7Di=FC=BHVڢqRo-> żRY22q3*ɷo} ɰX9ճF-4Έ$_]T9.ͭN`QvzG(2_tq4By&~Fx6jQWV=2eV&+f%. NR1876tb8c1`v|˾Jn]ȣY.siH6p#wX~L۩Xsu0 K.F7z]ΚC&`aD9(t`sLEŦ|cD1*PpfZp2"[4E]v"Ma{>,!U2RiemxF{0WD\5Z]Ȳ7>O{1*\*Bk/aۄ_OH.4YU>KK6(P]%(e3* #vyU@Z zlp)Gg s dz)a֝_lXpAl҅$>Tv1xuBČ7W]sʒP@! `۷gUgvv'0AX)pc}t?G_K@<NiplWW'N+m{*"EH+T:Sj) u3$kz=oXDAuLx v4B`[gӷG|`$Dja%^i-4T$K?Mym\x)'o6]vƋjT Tict\(}_1rJ)/c[ԝ,Ǣ7mϜ Xtf,o0ȓEE]vrju<ڇ*%iq0eLK.4>Ip]mǽ+/@@?rӟ@ACV ,Ӈ-ynJtI=˧\6U-͢Z%~Zf$DOk QZ V&y8~ ?9Q 5" Oއ#qEdăOufmtE5vi s!!̓2'Lfhlt+/:pA4P-dH;Y:|C#O]?wЗS߇&-zH֛4gAvi(yWGh'{b w &>u+:f=V|1}+/Vd\(Wu-Vu)jbIh**J.&ߢ]Qy +H|csb^=9_|ƕ;kWvS׆,4@!aH:ApF?3P p^{Z-m?|CXs> pE4 L X+XN ^| %Y+sJ };kX$c wF`v>k+~L $aƺ)hzٟYXTTجK롣K3Zlή~ ʤ*fu`sb˱ޔƒ\F655QFeB[2e[&ڹ|r޲! 8'.EfPtIYz"k 'wmlkjqw6HRDwɠyր2 q&U0[ 5VB̳`;L/u,d܎qH3CD'H ԛ~} Bg{U3xEJq'16HR;c oL0o[(kۋqpdɾVb(5=U0mʙ  }(sBnA ; O;*hLdNut^Ou_?%SJ'˟kEf]!gO³ڑEEdv(kiA1yG.1޾(;P ,:[)U'h \]LU?T z_P*Y/wZ"SvlIa Y'ZE=;BQQ{ex/(k2j|ު n+3|ix6F\KZP Q2Y#cdD .2 bz{wt\:O}:^Ipa{6'LueXMs7?C\]{졝-r.s̛KDWr7-v%<-MD&[[2VP22QXZCpeb*Enh Oi5~%T!e,&86=rBN_A JAa%=:iE"]ܖ*H,$ #83m}ɬ絰(=3 UPfU#aߺ(<.Mh 'kw2s.^x-(4"Mt&Lƕ8JC(Aw"l 0\k Uez9Kwpg޻3){2vr-oc{MA{ٙ`9vL֚w7 O[ԔnVޭv0G]TX$p$Ԉز eBw꿃``B!J!R6fǏe!mM3v?(T]2AhQT~sV-߃19Xn^'g^ʋ1fI^:\ xti x%4|]᷻Ow?QM0c+N'8 Z7 N2Y!WLXLh99wÏ!%^y:>UMمS+ ȁXi|Sn[% VT;!}ru͸mB~4Y&S7+CζU 3hvZCG߲ʼ O"['TM6ynJذ獅 6Wm@V}#R+H5<8[`3G P AzsK,]ZȢ/X&tU)VL#l@IMB6b/S絆d%ZzM bQ=6esS0A*jxE"Uy<.@.R/GV:<^^kz^g(=4g{WLU%ߋKҪ<ېH.CT!?O}- ʳ+duh @?~֞n[Zn-h!ޞeSM-Wȓ|HxF,([1Y rؤ̍5LoU!y$5P(YҐFmFz+nTP#v朗ptIf,ۉFKՍ O>/Z 2g>_PjbVě36c7p"i<9NcrVh²iB W:(x-499FKA]v *1"1;KmTk&Kn"5`$S+;B=WTM6`1uLC".frXe#P-9=c2juzZ[KzXЋхa'rGm)Y~itt\Z.c_6DP(EsIsmȮo)7_F,ɛ# `C+Jh+5Etyߟ8 nu4,삺l9XҴRޯ,޹0Xq@Egߞ?TyioӬRC%c9e\B)JȌ4_9Um"60.lGeԔ|dro#ŏW`խp ,2&tK+md*o_!0V5ZKg@ YU@›~aq}Q9N'"h2ьm>>Y*'pSSIaDa%}Qtɀy6{vT3ǽɜNvT'*T-(AxN㲪z:EЫi uP_%vfAM=Li12mQV%i::-:]?#شؚDOrߌAD7p@DψA*Y @0 OXKT!K[A ot@^-~]:Ge{=Y2|xBd\xFaclqO=9X^$`a@1 ȿ/>T5ꮃE-zQ $>:< v'0=(:9in)/I)r"݋ƍ0S嵍 ^L|py섭Ѩc@,]|x)U( s w9'I&3$ʕeGu _B߯+<@g/ Ǡ)dݜ#:>I@ExFv1#k{,0Ymߋd RjM~Ut0Wfr5T*̤m LkwʁY&%stߓ=pm| E)7D9 ׊1D+;˪a81VIƸo՝4 \83l?Y(ڞ Σp=#8q&в1#u12܂HyL?5ZByP?~l+pW*'ƺrU-"=4xya!TB?.qzbGi%j#WaMh{XTxa>*27xCD 7L5!ڛ9Nmxf; \i6 J׷qz,d(ޣ+d{Ȣ00.ޠ%Qp)utX Kc(gz.@k8:# lĻ%tc͂eEJrh@}V >JJrpV^#:sȺ4' 1華䀿+Zō;VAJH'wrЩ yl#{7;a)LxBjN8." sn4z|Sǜ Ў6<Bc%eD 2~(tywԦb8iB[) Byֱ<-vDzu% uXFf i[mSs4R7>)zj&4gJ^&^AFty>4'[ߢw! |%˅\Lw ?;QM Ҁ4stL#qD廖vPz/c6Wuhkk[Rw WxP5#)MI<2~~9}?z\ʷE2%z#q]/g= 2Ik>H~34gTt!h*7(!>;@Q񀩡@0XXhVT]p')t^|բ_bѧYjd^)JH ȷn/TK\U*!4kYP "'S!H7 ~xdEۦWT;}*տG .v|wU$tcxa2TX$# r֌n!9I4!=ˇ*CaQeWbC`* Za`WS\ ?[؏qz0a9:>_dQ0f5 DU^%ylsnN>>l6^h?dSOն'ˬށAK'*A1Wɓ"L*#ޤ׭<FdFfcqiF3hW7j;\7#?"[ 'ǻ Rxp!8BN4|kq;/I=%HTqhmJy ^<\'AЗtlȺ-[4!gNuL=VPAxZj oraK1ΐ*,̲&lz?\ XRy 5%ߓB }{@1.W}m.![:GYpx]LڬR@/kJxJ۴brfiYx^܃&ߝV{ >I40P3>dؠWNZ*bU;Dq M<32״jw^23˸/?Oqoh>շ\^Mzt<%la@74aB$+c>1/N6JK]*̭לۏ(n+#e++n!јP=W Cg=aBj\mlgYlGue1ҟ\"6F`e|PhTS2R}S;ɯnJ厉&EC)9vF}#h.$ czeݱG!eB \3MCi϶4،> 37R%7m#?^ (!NL/Pc?(86ׯ[^D*@\x?21'ى,i"ً1Z.\ x "U{%rcDw$c!c):6<8A= 죞/yؐ,1R7`@vprՒȬ+ww/ /};=K^o6B6_\syVA*9E3 `X8,amKz5l8ӼX\06eR~LR'-DyiW'$]Ϻ ZL^$=&-k2)F8'-&(_ b_|>d0/R rj I];e?_H_5J\k!P3L1 .s(qS垷;p?~=mbswS*JS-^͠ŶF{FDK[+t\'nN,LD6)UueNEX)߭0@D&aUX)?夁g[>` G,b.a>5A{,M,RC'] SM *:('k1$ - 6d] |Y'ĦN`ӛ\/#<< 4I;\ḧ́}{|Qe6 qV`ͦQ('ѴR ĉԚ (wGLt+-|PClЊ9 :˿v}᥃IhQWpjOgQvjFV?ut[X% 90ق$&BC!GE,+|-a4s"B֏ Gl'FM@k2%w 6_!Ip &i*R"N93b~ē nU+ib-W$OrXi9V-@ԯj/6qSUku!m{2fF2',}OnX||7ݾv ǮY^(r]4[) g(nCNieInO$;!,Ii6ZJa͓*2sYRi%|\je`B}|YXɚ$$R/GT C -'s]΋ML%Xƾgr̵*m6ò_mPUjK%pJ VP~jsb[ %8;BqW72BffW"7rINV+yI~:෥x,5~dLJVlZz{O[_G>- {.,By:/V#A絮Bnwhȝ$<.AN[[tJD^lOsGb8Z]} v\%` 5=#ma>ŗ/B쟍'Q~똏hHG Tbl%RgsYS/Erhw\3S7\ \) %N.qGϰ(;#.W!i@%٭[/:Mx-Qs)0km n;Cb0xM ͞%078W^8]pfƓQ (RxCq;-"tMWhUvũ8 Mi&ਞIpE0D6 4-Bxb(> p7 3䮞r2,Lߪ>84IQ.3$МwTR \,nnOx|=]@g[[ͻߘFLj60N--دn6oq S ˜n͕{6 tNlӥg3h-s?*\vtw[TW0%Mm @U- w oW"^ x,k69Dq>â[M\,Gv8 ק ֲ"(ijcWuC"1 j>Bn@*|h m\lvXhb7fx eDo:AnPa <,e{صU&kBۿ,9&g[%b^%t3c ҥC-PXwJA;8}+lAH6l}FD{ Gx@cS+r3pPԯH([IFޒ+pGBYYL:U\*0jG"p8H6dÏ/E<5%5C!}?ڧ>S4CS'_z^?t:6 桿PCݠ*>ݨzd~\}et- .ƙ׋wQԡ> H<-5):WO6-v~l!wUmIE @xA0HlJxsdzIk_Ho ߳}:t5J4w Y͢moIi̘9Y͘q wMcfⰕp6L~z^.ң 99ަWى2xйgQuojSfr O2[A'sKJ3@?k&̫}_1kp+&:T;] !N7~O1/.Lv׫cFٟxTLQGLoS->BijvwnT{?F`o2c9kaBi0"렦oy0|{}O8 Ŏ!5TO&'?OXhs @q‚Ao/pةXV^}N(nv*]bx`Tbixusq-k=mtE}Q51.qh0N<7B\EW~b1n!D6pFv9~A˨o%rV4h/.Z>Gvl`*ןO+]ȳS4%qZ̔Q6'>w J}f%^ث }Ti_UY16%1Ѐ 3/0mE!8Dkz:ѡ[!-Af@#!xA:W[B,. *18JDOaT4Sb܌p',-7_fY>̬A$Eڪ; GZǫO -olIH?$K=U!_e[G$5%CJz] kz E̤l4Te!|iW&wS⴯)6BˣVoMJo9sG.aw1Gh@h2'3ſO)qqaՄ̇F ^*B[aՖ+ كWAI N?AM.%o) #+Y&\9h,PF *j:g13Fdl[}>K*^H4`qprgұ7;khe/r}JłRS,"@ȫC( "$# $h;@@^2ו4p\cv#{QĔgfrE >m~ǪenWY쳒I9]L)qB *f[[K_cS]џH?jMhop:kTicsZ'u ;0*`k̓ǣ|Aw $ZB:ӓB.ө_#iq*H_vfre4\#Rt"ޢdhWׅr&rlb#=][X 1[yDSEcDx`?BFUR̳+ 9$w@x2 W64_|˟R7\Ee.A #pf.hEi]1KWq&0ǑQjnEqGjYKc?\KV @=;w?r0#\:訑Mݾ[!nMEe$]3󬤹w.'jI~q_pӬ9ά3*@֍y&04ETqx;t&_e>Fm%)6;4~Ȕ8bMm̆KqῇY9!B0F`aiKI E ԭi2^˽(nHPHS {ble-shw&gGqoG)ҩG(,Қ]AdcErr +.N㠍Ӂ/W|øǣLd 0zǼ~'GK/UÌLeq y7 WL耡:cw jG U(EB)="e?/1J 4Br9@/w7sEs FA$т)^z c̓za{E0RZx3:\+<824G؝:\zx M/ߎz't@r[A~(f,B-)͹+7Kzv8@+ѫ^?ē)Fe~ţ@5E3y|}a.F=9B6EJ˽WmY⍹8:))QDSͤ-hO3K\LC#-LcrH%^@,SH~f+q3%:^T,([* 婾BV C/\u%RdUtX6~"3X8Q1?s3[I2^*0i \mq'N[\VG fO`g.@fET\7 ;-2xJmqUkzX>ى턀$ts(0,v:VS<2)kT~Ȯ<uAa%yGaoiq9k,2ߛ& 3”iQFM۳Ca 0ES8:m֕tk&*]&Hen iïDe~Irӵ"LZsޚvŘ#ߟ'}#_m|"':fJ<>w7N4mR["f}n$-YϿ8pr֎|wц7NvDž tj|+!_t}t*, z5g7ШN^w @n/ϫa 2䘨#9A|^Umz,C<۱yc+tA@cqRZ+;&Z!UuNn#ؐ+Nj\#LإȇvN=lY:{oNmkϙQ;ˣp@I l[eڀڴ{,,XP1QV>P/$a 2=NjhXڋ9άNbMG[tEkucL_Z?*  _zLJKŽpՉG9d. i q{_auTdjcP6+*Fu$Xn#p }u)e9kb۝A +&[:KDYfU>!4hʹ!$rm. a^*dErޅ]ݝ9>%#z`Kf?V B{L%V}!)Z.v9/35ڥ㬭pڿlj۶KhT P<>FzQyW5!h}I!uBwPI^S *Hi+lݭD +"-+O+ʙqo0eG{uxeㇺcMw&*P?-}$H;%8!E 9{64Εwg>.>[;ymvvջ.h4U4RJe+;6ѥןOW1|44A^n>oo Zdu'Ÿ\cTo~:Mr?aJy  tsHVL2bzYsW?#Юs7tDZBXvgRWErahLkRAײul#ͺSeE|$J`lhZT#) s8->c/nd놕M-] ?`o&o][HBV;b,3t5Az\>9^k6`gXJg$u9Td4?}5x8%0NHW93E#nܹv6@TYB ҵk+jtP,Hz**O%q :5J0DS?쟗cw պ!i ̱m)7= T$% M:deL>,C 8 AM~*a` Bof K?PD-JQa ZyItj>oxEu+2_+ڛg [R|R'f k7=Iށ"|/H_ [ZP VGs5J[syVuZz)/ $RPA />;ƵyC듨mC}Ĵߞ7UHǔE^4J[gJM'gLԦFXO$a8YzG4:ۻ osf:w4C*ueR..ޏ[Bzi_Lz6`O3HjeoΞ2'xfz [򐯎bevm{ i*,=:1FgV}ഩWǫx`Yv عљ܊ ^ v}LE#O!86wYOn˙tD˳S%]ˁn## @=gj#O@ τhrVX7}9kL-ζZ_=/ _Z^8Kz=ϱ{8U?-WLV{d;vN3tL&א0Ă>0,h,6R/ تTx2锚-qՑ[S - 3~NJۂd<S W];6[3~<żo˦رai[סǏ'7==a['ʡ}U`cuܴ<~exĺoS궨rT4?0hLcoɔo'j, `@eɚ.д XsVIͭVFUZJ>G^[$ڰA:V+Yfr[>g(dt:x?3CDnF'[kfao4@U{*+0J0]&L TTG Kt2{Q~UsrYp@'xƦuM-Y{W=-/.Bz_c{t9*zmFѵ q,D&v-0t F jMLCT4FW)R$1X.o(z/ V; 碛*ruC֌~5p3>jlIu ¬NR6 g {.ry4NN)]ڌꕉBRT8nF6Ũ?Wo3>].tIw|2Fv_@13r+a;7YQrwpDjkѢVZ}KYx t?<  zR@^0"uZOٍݦkx.=kA̦CREkl TCօpQ <h]ۤ(0-Psi[nb7dSZ} ǞwˎQ"4;DKC]Y߲x֗OvP֏_& KD!AՅ/@] ljS%Aӕ'o+8C򎍪N}UZl(Qa56fhr[6;*\5}oDWj0FK e۷S3 _7U:`JT Oө H: s,sס-sJAĦ(p+^:ǾX nhDx\e %epb{&ZMM!-.C-%ٚCʥzynۇ^ j.MԪ0'\ Uq3ʼn\c6-}%ېMV%>&lO@b^YURޢn\H_|0^5]DMh"4jct+gQ%6FQQ uT&J;ok,ic~èzrx5r Lpg0?!mA\qU^yrq%ޓz>+8evUңUԾۖ~LjG{Gڕ-NhBsS=蓓JRܻ#W$mo4=ovo/B*/(Q},6J,|3J6G|eY('G S`cķRЈ=)JS@/T%E=/ [br TyV#8˜ x0G;Vsf]?F_' YK u?#3,};ʪ  Ҩ:b4DLO,}|;GÞ0|P?~갶<' iS2aؽȟ mλqXJP|K< ؔ:7d ;&K-'Ւ[=:Y1WP3UE̜CZ9&k-n%EC)տ{:>4/oc#[qߘ<+Sief(@2 QGبLX:E^Hq-%&>m/iyc)DN<@+=2hw7q;qǿ}_AJt?{R_npR3|EbWrA# |]m@ioѐWR}ެCmӯ]uhtFj y;Q=xaq9%Ȝ~dϨ`B eR6sR{(5oJ>'{OV:Ew_̐/T茷Hub]>Mhf{C!g_D}@|X(/:/Ha½1J?UUcNFeƹ:`"1?ou0F{팖Ӻ/c4]pƦXJheQ7?փbTy5ɠXNz f;@7Z&fS\1F-h ~-vs:æ`g#2Txal癨3||)Z)Z CE6L!UŘb^V`{4S\R<6jkwpK@%͑5G$,k/ʾ^/;$_87Ҵt"BM՘NfixAPu+,# ҬCu9vpm&?︙PY2}(Q ̩K?:izcV9MŚ]<&kǃ PR5!sD.AiBF$˅ƓB1QL*T-.5G !wduUfȺ?@} !i8+G̷oAULX+F&q<:Ŕ(t`T FO$ϳSdFUW|O-Q%BtѢiU>Ll4Q}'E>PCH!ѼlUMߌ@P"G:9LsapV?/D'kWP9{l.70{v8Q!X]V z) ѨIglr]v]uY}\]B]dD YKfBP ?Rv#iKΈ{| d<%wa~؅Y4׀쵵@tѺ{Vj^hcG8MSD/l$߷J.U]?sgʶoVb/D\ 4]IDTɽhyOLP萢3l0IE6JZAze]z}84`Ժ-Lj.lrJ_nP?yW(Է|s(*39-1'˱z6!sH8_W;#mX#z@ *-IHGmem2[1gp1o,z-}}(C`:bσ2&>ꑭ2D(נr .kIh&0\+ctTZ1D7H]\]5IW"D;T 9|0E#]!.jkqRI3?S7~!V*R{cͶ\u.P*DvQ/ٓAĶO(7Oux =XNT[ٳTҾp8IEC g|җElIBy^ S3nʪ]48 ߚgE}l |vR`hn#T%l%b:a}tF$` q(=O5{si]*QLB Y$3  8ٵ0nw\Z@xٹpXx^+?,d%vیgذWW)x}ZHPi,cg^'b#\c(r|NKХH~N SuW74CZWn=Ί1je[PS3o:C0ȕ| 8Lsp(Y<-FH"_*](θpk :6wN1HcV1~`IBZ.|,JTjMoiF>,A>\5+d2{JU$)hZ?JalW~ۅ+hD:M $]RšsA  2TE0E❱n"rl94~Q$|=#1 cɥ]OFd+y{2+ 4ˤEͿXԷ{Ѵmg!߮2gsׅO|ɍ8.w]Ȃ^J<309e$EC{8| B065^b?o{vʡŭ6/{- "#o~)0ڽ K9 d=kX4I`0S6MqӺC{Fꡌ=V%O[/v&~Vi(UHg{%a؞enAzZC*DGQj/ ҝ([ybU.M OW!TBm3P,p/Dn8_e'U* w5(HVŜjJ\:곸.,G8=ѭqv!~os H"' xuJHXh ״cgX~G ҩԢ' [Z (p_?a]*4tjf1œe3H/e%{vŴƋƆj.YC>_U&iOLeɑf["OOi|5NixJT`a&LD<&6IIQɱ%Eޔͧ1_HE{N?hDpL#S<^{JXLM siUnK_'.9oh'%5 zH~nfY6MD*۲jBe ^X0qA* =o\>dپ֧vJXJҬmKtӭ `i9Nv'>RΟHuZ@⠪|rb|ZMt).3+2`yEq |ut; /xvE_[ϸBp(ZD+Im=i}(Zi&ٮ K&ҍKPRA6h3Uת*+++:D쫢3[Ǻ+_:Pj7Z&5fQPrst7vDŽ\ OmdUљ';я>Ald bv5E6h%9\j_j+ 7c[cd!'|볫dcĒ98qlD7l!wW.UvqtU"4 jYJ{YY#v :pWA DJidhE1nx*xY/FAe91lUu)rl$DŽtO5yAgd="IPƣTP<:XK|q.(Y6H/|ytѓ~<'4/XxvcZG:Tg3ߣ F5,iT_nZ3#s*d[GꙬ ;#-v7#?_4TXwH`Lp:K NYql?urE7Ѯ]sIx/^p81WYpO90yg鸋]8^,>ztE_Cu=e!y1B]!,b pR'e_3{~1gn`r&>/-ǂ?Pc;/BԶu6dR!Ѳ} 4";: Ұ{5"9l))o?A`?bVz2x&}C _J 7R +!3P4j`&",:{} \"y*$~(u@֦;\ƿmUPψ"h[eBT0fI^U.7\U[2p`E~/:x>P*JxyO :D )þ)5d1Ae3?fF;х%*幇IҼUl8i]RKrTQ7(>ɺrTx#~L4d'Tw, ^0\A/mQszab"h&#]Z$OeM#hpmKq9E%?R..fQs\S"+zcNPMM(-tRuWu^e`Pɛ@ǐQ(u`o,56F2a\6DdG{Hٕl;, T_V8iC+)" _thMXSHU4{ee_@;R gpGVD]>i8P!PqSu[ KBW$kֆ+͝ ?ӺK&} FlkLIQE\gx%2TQ6sqCV)xM41OkZyU~d~ӑ _kLMnO9X/i\d"B]AA `&paR{l'ɂyBa.uwvJKr] [-(_AOT!c? G]Ai>ÎLRZ< ܓ GV?dpX`58 Iɇ@ay?)L10[<}>8֦NK ObÈD0nig5yO Ҙq|3+tІMCPW'8Pi6Y[لJY]y&gbfpYxj+_"~^ << H8b)0L`Lz,*˗ "P>$@LOCc(+쯓_`ۚ-&7c]@-))Dًe9qds@MxgmwTYÌG5rӵhY*]xf Li2 ,[,Ov+Sd\2Ԑ=)% ͔7!숗Zy>=Xt"Exޅ0DD RE Gd%b\ 6J\ ƟbgiEؽmq&|} pTn)$w?렫…xpeeB󓹬#4Qُqh*\x%t$OpUN+I%+Z̈g*8k Z'(PgwdM,m$3V1呞҃*Y8pI:J~jiqiA[[ٔ>rH bܽ㷆 R ڎ FnoI/}uH7=9/`ŀk1O]i_pþ{~ JC"I76mMm[98uYnlV„<9YoQ=y=qj oo7l(׵?o׏{NCȘDrQ.T`VG&dIN&e`VNBՙ7ȨPoBVN![ۢ9fhQ|77l:fs]U{;a-ye#Ug_z D(nT0Rm?s{=h`g>bwF\%DB-Fc,6R;|sb1/% cJǫچR6" $tCn{2²&j;b^U?osy"zU7B '|԰W jbᬮⅽ!"w-HD'kRW`K}t sm]h!jB<6Z;ct%;͔$O6%D.vd iRk!yPWѼqyG"_'"jњwpSn2:Xk52D;OznJ>~Vj? Oo$a#fYf)@r/?ݓ\Q{#{U^ Ҭ9N7}> F,7oX\ŒR}Wlq+|OB'܊(NCqc#rnIFdaH#ϵZ\$@qoA2DPr ?"e57ayVAM /<ݙAcޘkd|c_T e'ezSDp xY cqa0*ڒqĝ.mmtY_} H ?% :8+'}0R; 7kKU]%b;s 0}OjY'?i{I֣UZ?59H0UOqX&neOlT "r}"1vg= :hzY>NvMx08y?:abԫ/FZ?XYO*qivqyv XL7EȽCϝcCx ?ŃTEv@MWDPDS:Mfs`< @k~sL>WySQ!.1hJ˦PzyCJ 6K@wWS@]~zG#.w/& *s}/kّ~6/LRQF'+`)( 9o`n|eLڂ95mOw*IO#}PΩI@-hWJܰ0'DX|vM @6ق٬U |y u= mC%^s[",WOv[FiǾo!-A7ZG<.3%"?A7j^Pw5d*=wOalkS_JR`GNVhֆwLW.z㌓rK}95']޿@w{5cX[\l.zgƨRie&H˦nݏ 5q "X^gϭ si-H2 F,@r>eϴ;~  WO\_{醣08mhK1NlcI߸f2v]2rE1oDJ͜>+~rk΢@fυ$*; `WN4zD]Fi=,dx5ĺyw?]e8}hFLbݯ֦.KWm ^dFw? ǤpH!DY. uM/evڑ#Ԏ=_o Qs3QGg9 ncAH|=!+#G^>VJ ;jA3B@jwr+tLeMwuIx$%+._[ jrP|"&Mf"1Oiɚr Ҥ\Mgٶ?:[6`]={fǻ*LIH岊RK' SL2)VF4{\70:"`jl rM0}6>e}.v}C<׫}mM w;A4ܼsLhh>1ԭo\r q| |3l$ue`Qt A% m F1ˬC\D72*ӡ){ާi# 6륲9I34gw%Mځ=9Vd%IPE3Z>ٖ.J!˷WDeXliǩ*7%#00`y -j7 4X(ƌkْ'}Mo0,fjf=nN!Zzj_]V@L0㪵DAUР]^9֦Y4X$^ƾG^QKgYrB* U /DjlMJ^4 xzxt~ 2%{]d͑,(ԗv7q1Li.n**8qE[pWLx6ŀ w3e*O~6'n[B[=EmX*Ckn NU>i\໻X%c̬166قOD`ICNfe}SxҜ^f . ~DS8faDEM\y1a'_chuo t#iΜ׮B/2| Xhtp|j E5!"%6z$㙔hU5>KVgCpx J l2G`dHbѷj7ٌ E_| -m;Sq㮶]0#߉V 6 é&CC?˲}"L.@Di A4NN-XՑG#iwzN95#tpdm{+oQ͈~EZ^u؞nFbfc&`&+>\'1sXL79Qn?ojYR5׿2h{^D= Qf ~hޢ[mP p$i/#SPVw 76#闹}I0#ݍ`5D\+lL *h T\ѹRI7ɍ5u,p{EhE_Q%Y„5k#X}X֤ nС2X`+ VL n_uDj Hs0^1ϰ=3Y$/bJ_>˴]'_PNᲇdLPf%}|f2KTvީiA~6*ښ) `7PFò,Vnf\q0*3+t5 K 搱,pdH94}> 32p3&d6ZOr/B>-^ |h!U@_&ϵ)؟M_AW/w6|}hMv; .DRL%'P-{߲:pE {w5ׁd.4l iM8>X؍~p 27d,0y"vЭ\a ǀrA8T9 7#pPϼ/55 /25Q˦),dr꽻}+RȆ03ӟ e ןg*}k}Hml-W&48 \-3pL %'O@(G`]Mr!Ӂb/Dr 4,2.nmc[[󸒈_cЃ=lk[La4U-_AJ8cyt:/NS^{i8-k߀In~/ =A!ǰXRki/~p =0PX9@-V)"qM?$NB't,i5FO7WQ)v*S>2M<(oLզHNj"SZIRqY$ wU$k؆!xQ܋%/&uctJ)-D>EЉL4]8,vNCl_O8 Nq:f[fl8ْ1O"(!|R@_=oOUdF[o%|ILm:ZH`3DiAm>8x&ݗ\mtUZۈpܨ;o3w_7[)cDX J߷<)4Ő'e7 OZ{Χ8- Zލ3-3#,h`~K\`R%(.\}\PeОp|Oa#'ΞNewA86_ݑRNv$}P--Y(hweO Ox!3C].[QRo&Qd5(L+G) J[4FP ոh?]GͶyP0߇|/m6C 9рEbLcn+Zv9Mw+ڂ'箚Yk=qRF!>5 /,%d׉'!Y${#ji];\ehp<`T$̶38 Hͮyw?~aCXcnL 4)s%SC$܋ݿбe6nV>> " ebXJԳSa"F4ƇQM rlRq@+ܮ5Co 9!w&72H\!__u3L^._^*ͤw@8Pg_Ɛ(,'q{sDs7B?hPZ6r3Vakw̺DK/.RRenu~*t 5Iܸkp.tLv거lܽ 8aHM1v(T5HUYc)82@t7AunzՂZKźK67VjYymZr$._{Y[39|jC5u#5>S7wX Q+8nJNnjmGQ~<`a5jçӑ6˪]|E%kC$x[D u\,õd, /`c亭٘6},Xz# غ>#n7źќº&}ʀuf3rϵ\K͸d Uɭ]՗QnaCk1Kzf$QnlU0K ruOJ>WBEG]5"15z2;pQC|cG Ŏ:Ъ*ZALT&sLF,@7ZtT=" en"K"\8YSjrzʰԫ&0R `pSF=P;]mڨ bxZ˭=]b=>uMdis=^ \v(| N:Ep59v]ɇS2ǰ2KB;#|cRlDBkҲ{UFF͜mA"+< V?=MEnh:1iQVCP]E8凵j&AИ|v{AC~o%w3f_-_caum)씃1qE.1uHͦK t8RnަۉRmlڢg. Ѳa'Sˁ?0aiMqtCSp1m?>.n"}݊xeY>%CsحWeǻevL5lRΪس4~^x!Ex8ܵZX2Uzdu9!$y`YqMG*Y@oNoRgm WL3g- P[A}I rhɀ5 `-$N *#X9 | p)'633>xiԽ/eeC`NKM_?֎rc/2Tx-N]8j*pf;8nVs^|G˸8zF<P dr㴡6 jXY8]n.ICOl?OʋDt-ad0.iS>R xSQ~\&*3\SeX‡ptӸ\IQZvYw8PvA^l;έӺҒpQznbM|%EȑWHGx[M(N . 濪Ix{NRCwz<8N9 Z!B}o^sG7H\)"f/l<0akS*:ER& Dž嫋`/|C]v]o6w5cZT}Zlo)q_кhMP;?FT}ICI.t*XK'ϰe6_b+2?0䳣Zr|JnZSiiQx%#|fU CDj^juAjJEz~hX'{ K`g.̝w,Fovmn [Dϙ vA3 Vvv0].% _D ~`pWgQ;)uѦ /h*ښxiv28dfR,Z#V{A=;r6+:@mSEiԷ4FR ώ{ѵ|(K5MS+/X+520{΅u2_TƮ޳Ʌ/[a}rxdob@FQdQB+ ?zDYh0" kDN/N L~;w0R``%%=RLLs)@LfZ Hޑָ5%@9ߙdE%0*/vK63^v] f/ k)漫W'BOճ:kZ$ 'HA_~UqoV'L?+q37_f꠱~~۔OۘIv\7OӞ-nHsKw°̈́OwC說A`Y4ivp!qƘ,X)rzɕ/Zo176?7 gA%m8vYCeĔ?_©BcYؕ(/J)>!6CXńiL'slه'P-hN\Kq%BAC&.fmJ"WuGA::B#AEP(B'iAi/rȶ=xH3:ABb-Hlׂ ^;Aؖ.2<7K )uVU17T5Y^ƶ"‹Gۂcq&P3Gfl AR' uT̐:0-ǭ-i.w zwkK35[ u֦<4]/A'Yv%-x%6,l4{e eʲkjʰa{4a~p |6 #qiT4j'c5C;U( n{ ܓi[Pb*a8H|/Ѝ .5C}BN)@ %?M5ڥwحn|E:ZԟFS$˒t},8e}g:,֓6ҿya!%d_-G T|̭Tf6 آI-H-6(\;l%ʷt_? ##ߎ2V5PIYb]o2|ʴ.l9̨NayY󊟼^~[3+"8nlsF؟|<9}Z \J*A%T=%;)6  "t&[+ Uk0<2IJU"Ry., , Pi= QJ *ܑpd4\;x9,?Esȷknb0 $'"2 $3{1ԃxxH8{l!Z92ݬ=6e]FTt0v?zcRƒs4  \z6(= vMVf[Qn}Χ>Ww쾑Eų mS>`u +XȎ(&)eM4 Dub̸5pr4ǖ襢OpeK6 7QvslwFβ>F-8Ո>;Z` dR]UkzN?}4ۼ+=M%lT `~s=N:s"4\>ش%$]SIuB >zT7-hK1 \B֥jhJT1 uov 2o&_ J}4Q}:zA>E;͈BB@J;z*qy W%??<˯<{tƪSbjiP \% 'ۥ\c% f/;bjaX襁;/IA7UDjU=J Lj`x8Lg\tJ CPټֻ j @Gog&zGpk f\aD]׀"r:>뚰-r|_%4Y z9Uknkt$b|k+N Ӡ0SޑҾ5!Fģ)`TB7+zE)얅Z `+Pv!Y,k#kAiZ;^q3g"1 Q`K 7捄驪XЋܴlӿӈp /Ox6ǘO!^$>ur5 )^x f03fYMLǽ<:g emVT;n0# w q5`UJ5-!G2}ngNQ||Lw@e_bӀuUAF-Tx|un=H:qo}ST}F֐1NMwbVwؓ1^ql(lk b h F @9|QۈU8}aB*Ϯ|@'CbrGM,e".Hv>iSX&^uFt.Q{U>1I_/vq^eCJ() s(/YcG^f)5y1/GS8BˈۍL0}ѪV|)kDq5(qUFgTh(YAm38jjgZe}9-1cQ2=+%꣯=.)_BsD_ h|W]s[>TPߜ.ǜ 3Qm~v!^ :5,1x]!2ipF'M4vq@!3EB݉`YjJ\ +Ȉ$*Kn:F T"eJZlv((e[Z$Q`@W_~fo/M@_JP1Sc^C%7Ƨ2EK빼z #I# &ѵiȃ\8Je}(8L>.6O>فSSD}am,9#zȸX)#e=@vgFk qn[(I;:x@ú;>ҟ|!쮜ط&tNt 7MA%D\ $S7V5a->cwPAɤQ/ +A쿢H x`6SEh/ړ)"h; MpB9 Aiƚa.e 4cu+* Sn㐯Q}U(1sxAyLiLpLZ1z/Ik5E#瞮IRtvQVocgﰝZ2 V KI Gh?3:4m"üYszqW~t37_frt"&R劻ٵR۞߷v'fdrl&Gϥ_]IqrlR$"V~u7ûFN\GF6wថC] j;?4W#s)C*7D/A~Z#u2kV')sbA助v@ǹzUX n>cصTPj딙0m; 2=wH65ǓהpU'b>vX )L^~Ҷ)u{ FY Zݮ>^ۘwiǶ+vg MtGsq.ۂa VPH"ulrnԫZWsgkm,CyT3d]yuGYy]ejSJCFRjmgX/AmqV(ܽ"Sֆ3ʿ|EpW=sӗiFg<1s>F,W:|; QaD؆ҾjECAq:2UxKI.E6ܻ@,ňPH=0J ,:siyܨ)"x>}ղzƭbzE֎ku[6hdS@ew[ nvF 7ISE7;C)[EM6{eԜz ?æTl[L'PVa)?SX.._f$ƙfrɆ .4mʼn $ Ğ )9?͢@)X=?+tȨ%PPRsۣg?q1JviK?m71͔{D{8B+@j{Qt*vg%WI8ffן1j=a*[Dž^+tq=- R}eY iIe\SWOzJtüDA.Q%h޶qtt4Ox^IV(7EX"r[-9QQSu`[o5oQܣo^8j f"$]{.&@5%BU(cL܂k&H 툇ĦPt32o"419@/fc5iT;lV$eQaj5Ty^MK0p߽SR=aIAMU +\%%. nӽ=3hgE}_E,6H$pE(Ǖ ZZ%^%;,@Hg|'ڐ5?<Gthȧ:dž3 аLMW!1o&?hAKh (9g e?Cӻn"o i2AYSDT+$+h~=?2w}]zƠrXet_}K!fuI׉l:OvJ wFoGbÎƿY`/+M6\G !W.I[Wi3φ}~7!PJ0ctޟ.ckh!`T.ٵJ 9t E✭`}/#h59X+rqPmPr%7 a'r@,jׄ(,&C4$y/L N!M*piOi>ᡓϕsU g~R5i-e>rdb jTm-"W94EbU>qP-4j'n6ͤs P(x:aj/v{SsAg*c,hf51 2Mgfv#%gdIr4U4Gưݾ98fYXr+8Rvw6?5Zx娪04WnI,̶zaV @n8SR1s , Lku}$p,xS*tz@1.;oBGO>{I`, ;1t!"* )joo _RLwqEJj;@lp3uC* 0FlNֺX+{O=LKH*0V̿#dDRd£Z/ Kt_3tK!W j-m̌bȶHȍ]?B1hq;0H͍V Ԡ{mx窑U$|Z~a|쾕+ j=ruDV Bj@o'n 't*/^E3r;Hvq)֛G(>$˺c2QqDQyZ2(. ?`IC)@=&Աol_A\wn%֍燾wNHBP%kC=R/c-Ac5S=?,HԷ&_ImIN`0bI>Z(ϾD7l OKːbh[oL,8(wgZU? 㜼Ou.E-WxQuZ٪7)gKOau' Lpf.ݾ):t!h!lAa%Ka" aTZ>┘/@B8·2*?};_\5XM\ `;/PCN~O 5히O=c/$lm-xaBs W V|LKK:Yb.<)(Sk1@z{eTmUR- MLzF(bKg# ];Yc 2~w) %՛xc0|Eh/-e*=O&T+=;_dPNjЮysا 1oY׻ј%|-7W&g}vvV;jLZw{W惖اBhuRiyS +6,* 3jyxryPw6f1LW'vi+p.=U Z xOӪbCWu;8MaE\7jd "Af#X8r'" _mƜS].n5%CV xjpe^*G:%7ݥKk/ ; C<%4b<^un7A1f'ul%%e(uS0Á}>QiOS(ʣNp}M8&603A*|=zWjw$Gsw򽂚au k~X`1x$2b!'iREfqA쉢ozz˚iZ>079FncYyC&B~[wВbs 5nPs9@d k;?=9ֹ`;zUOs۾!iMo%7Oٰ|eG@%T>c֚jt|AW# e%/ж|JNE]O':8W~ &Y JBV}v .xUt䋰sjyn_KMdAL#- MK"Y !Y9sP'{OqRC^ 1i+?7ǜ1`1k}LEe2H?Du ~y9?4<aD#P."RѶ=zd+xiwDp1zr!!ۊ<|δPQ< !j$V,9('b@F~{ Ro኉P7ǂIWx^Z8ݓ:722klBBU&0'YHRgL2?o@\KK!mUNy8O&! T32ԫ/nEerܲmQR73e/<^)'!Ysp4 h!rzK12lBMZki&jXxvƧOS֤44U&~?bJ*)/,{x l+ HY r 2FjC?9ZX4f/W; J~-DdȪ5]w6,>rl{FNyt56l{w ~!7VVghA /33d׻FrK=9u эF'` =f-m"\|jQGمABe J})O Rm;CFKL-3O۰"އN,d[r|f(j7#۫uM̌IaybBҡFcol 877f`J(_Rj| 7fBzU?ʹx 15t>>4l\6֧XUl(;OhMAW⑰x܊$zy:;ضoG=WpsF̓v[/O@*13e2cr=DetӱM5Ԙ膸%yt>XPt %L7 1!i# lW+IWs`A.'}Mb9 :aUA%&<.4;^8zIL ;-;x7MǸxqt}'פSJ@ƚ4'~\f?عGygESPg6*X-)s4Ɨ_ŘjyۇK,W^cK?iRf{Ҏ>_C_cj )o`%o߿vW4sRIi#}KyΒ}U WBP΃ H#G|@8/#"%n|&hUkFk$YI'yԟȎ}ÐXP/=J͠b'>Qی1 @:4ed9RQn@f Ƶ1F9f&TUm/JZ'_Qsbaͯ/$N_(j6q}嬂,Zu"5^KI[XdNȚk$B cq[T ;w]fTƙ-&sG8Ez<4RsU(?RmL:O`6Bo|S@zv+.'bҲ4 #ُiT;z} В30|}iR]g ڹՃoX "K*vAPة쩲 nofZ5i"E9#Yz@zztqw}O5.K ( ƐD)D3"!:Z.k|T{@7NYOqZP̺յ4Ah V76GgOqwZr@D\8Ni$#/+n"k~5bp~/Jq-Ʒ_rA,5& " CF&2-{;4r9|6mzɽ&GǛ'=̀Ƅ_drbanNP,\[qsAD*mplPsI]r =auڌ0`47\e+~ZڸiinBUʘg2N=f?\bF:!@,F cH|L}-_i5UǓ?\Q0n턖-]h%ы?.kͭp=$tW퐌1nw>ZM0Hkzav)6GRф/W?!(&Ǩsf\Lɞu~pq)? 8M_ Hr9rbm"KpSq9w@6iQӝ rMQ B&iJ2Be3&bl3@񄶭ۛx0GpUfqleII)! ZrEgNylcxeeu:)j%"lkˬբ3'&f./O=X!J'Lt JAk~`,~G%{$k%ר]j[@s30*Wӳ;.⾩ ̖Ѭdp~ew U >D]!YqWDKY:K ~1+^L8FLO0_I%,$l>tƳH g :D7zI˄7`DwY:vJ$oQEu*t,^8VZ*koBRhԶV0PK1Ń؄ͱ_pHdkb[badcA*c/H?!7NߚD?%lad:H߾ޢZ:&0X-33v*\Y %{0.*-ufIa&lzMBLU!rom>5Hp'$]E!dX*mUea5[=#J d ;%Hy- OO*w^O fOB&D MV9A!g.nw+i n_)#ĝxUp#H-ww3aNN?3٥IY.G@6Uﭭ$o>RR59ϜG_'5<գ/)820Lf;Vh\M [+h%ٳbRfMQ^4J>yoQ"u\+ãu`&zvn!cP%PXlD{$w=YPMWU8-:Y>+ܒ(kQJv0\c(JMJ&_Cǔ19|3sH:xtDV׮tH3^\4%ӺZt.vͭLS`*#Tj I> GA==dtO]QHJBx/ $,nY pDɬt51gC5u(e\ev{ U>j"F`K=^5CM߄ͺ㣃.udb`bvcv 8 t@Bᶓnflk+ ݅Ǭ/pȭ %- pZxr+ 2+6Gةh?o!|c5G=dv?k 橿 _]Qx+ʝɜ֭|O3bFM$!уD.aƘ#;Gyc,d'uRh|zg82`]Yz>N`DV6α馥$]u;f5igR`6z5h.S|$l50]l"7@ckgIuwdMGsH.PsUPBYjϣ C=BD,rS[ >TbV6Wm+M/3E]!sre2ۥh+X'K7Y_XNquŘ7mGY/M^˱x W^r=V Xl94cki)ݩ%13c dT4?L7Ԥ2tPq]`/7 ^TI3!Vɵ=NKOw% דƵ'FYqE/{@_C}Fon<)ss87WəGOn( P.X2r/ !j$92Pk- ՞)Pp#D$zLIOIj"AjgXR~$ȆM|1ch$͈s#cDc7ĉaW5hs|S';xoUĬpe;D*鑽,А۲-6 Om+Us%"BM.&\B˩à;w(_xfmSo'ڢĦlBʝU_ R)U*JiȈx⭳YQ!HGXfx}ٱ'/l#xh7 S`y0Tf wm?T*UL/a銣Tk^2ړAlw657x72آNUO۷9յej)ԀSp:uGpnXoÅD M(iyݘ[Vd~CZ# t.}oQDSk hLb3( _>*daWS (4#uwXrF]K!Q4O⑦RFˋ^ @AK"o7 Aφb.R!zn/]91(iOҳzw[s3inO<}+ΊNK% #CQe6^9%0&Q+;JFsHa]L4^uT׿RF߇6ycz#qġ,eh$D1L6^GJ|Zʂrki%)}~R^5@;O`1ц"s\Њ*inҖ%JY:SQjUݲÕ cM?W<#MF[Y/ 6ӈ<ӫq h=}ՅM=9S>< |i͆/gXHBX_EuI$EyH0-~y RN-hp,JCӒdZ2C} %~*o+ nSGz|r]G *`ڌBfDH&}S]wr4>X :gH5*^×0>$:O]KKcsIypΆ;rcm"wH)a,rEs1]w+~%&v=~haOHtfX8Ѭf'MD?V",|b#h8Ё$P1V@m @{4nsܵev4Ll4IMcj;iC&(x7EFh9c&ҺJ@Z*lY6bYM{ .9(ST=fvQV%5*rv&(bуȆ|B"ao_4h"qPZ"FYiD 톁 D~(|PqХG[9S8Y:Ll殼Svz!zdOs" *gc{ߋ7LҗzJW#xr9`:PP qMdH?3Ҫ%! ˉ8FrtyR;*g{\Be_ ޳u^̗>*BG˦V Ҷ8T̉i^m,3owfǞR9q$3$黬AbX PZ@GyƤ8cF #>P݋*ߩDHy0r-a:8)lj0PXu}ĺfOZU1MU^6Kq>m`3d(O5 qS&x{cuy6%7T edWӁf8rw{WVƼ=1.X|av0m`3&CԐby#\  )OB' s~0"VeM:gXmPw-(^Y+ܗZ(vQ[舽 EzE1A^>Yz,^cf X3oK1X_&kce)-[^uU6/])OysХގXI2'ڥrh};KvK /ie jt_t=bWIvf N9di3i OeOQBTn`+4+V%Tm| #'L#xC.$h634v52xd LAk9 yfo?.F&`JM8ۢ$UPһ?)tDn]!v+:ׄ%b$J68+ǎ0IƕNPd8_Ì&Q]!gH>Sr]睩mINPlqKYP 'LubyJ>Qwuwa~ipTx"٠XFkm Id]5|\-lm^2d[ :tFG^EcHxn&MR"cZy@\4aM\\N) rd6\w )eeEVo@QypA4胄RWV%9^a7=LK40S'0f!ז&b(t'C};QH8Śo;f^6Jy Rnkߏ㳰Syi̘6͛)M\fg0KBv&ap=i7$/X-29&Ruw|1W!Nݝؐey3uȤ*.$[1ֳJ(V'keR/Ecy]KE.itZ#}TZ9}X&|Ϛ Bĉb vuyvGk>PEJGzu;هwتxHyR@'wFtD/ 9GP3v| ıIG<~31L6 j<2wҎ3c_ 6(3AV0ؙYȗ/f^ޢq 9/2~̉Ee9/E%lj?cI67xZ-RK8G~pͽA~!*BSDelo?4k˒$CKi ?>0я#`Ms)-=>.;C`!z~ W(- lDEU o=8\WVշҜ kgv !Mu`Ii$K'N1;<[Ylu3S{*ԓJ!|̀ğlױC3am!|]ZJlإe4;W׎% ՒZiDCWi(-.3v0 ncWH'/8SNhC8d\/5LRј ARfp` 8H rLȤItL#xJJf(8F*RSF)I:IWPzhrǒaO6t ޼4X J7JO)QQoEϓJ"MΛSNƧl\Gmda LtxzdmX(3:򿱔w9ZF ًϘLL6:8_$O&1dPbZMĕĩFU>ާcystP@pdhi5ӈ<%^%a1_n۷nnmJT!L0Cy@t\$ˋPmAă,FԉTEˊ `ji W^6ċJsH}t<_*D,`>m՘O Gὲp]CyP*,Bo}&(:feS$!_/(ez[Dk{vXvaN{-$^ef[bnCS)wH>C6?= (#蝪2NT}:Ha? =T5`)7眈p E.vSeQ#;?-X^osPr% 顨]o<=l?}?O\e:N@! ̤gCȸ53)9?6{vyvӧ kp Re!Zx[Ŏ'tuLTQ12z':*)Vd [SD٩'-Mv XK*61GC㹟 F=wc[2#W/qTEVܤGnQSS (0_#%&F⩆v1|gOWJ;x QmUda{]抈dMg&%Q9P#|x]X|n.=]GzaBԉOa A9T݂Q הCS8A%zJ&~v;fHA|OǛm_MW;`XD|C̷BљHgE#m,nkPW5WiDD B׷\q#=YG-c;/䤂!g9gTBEh"3xKia9{{ڷ#u_j@?jM:AzLe)\9.)O J,F=_ -VTtSeAƚ9Aн\S^ P6j3y=<h_n0ֽ11*L?sJ43ooB*^*g Zyx 'c/dQ9^mp|/^ͻ)3$b7| ";nYH;}v$ 8[CQ7]=D$J:Y~.m8x=vA-R@~I_ 0 վNZ^r(^J֠3py\X9f~عe B͒DN 7 +7$25Ե"8`dw+x7\z,`yLxYl?/=`5; }~^9VGuܤwxA9܄9gȊGv#[ki*vDFLA9Zs4fp1t!<( {tGa ިr~+_2}PIqƹXw X qr>͹aU§j&L8Bt?rˡՀxJ(dCjQ٥?Rt[R c5AR8pؼ0&¡€R>*lECX%2 'bK0+?* :XbX~P8AF4cda ) uuC,_˳8ev ᕻNw{b{8umPC2Y+e0v;5MNI0R(vP*t"KEÃ+=69dX1ze,NBGU[_l|p`a h4}z! )^Rl]k [I u,A 0"/<~%(>ʂ: n"?W  '~&4PY^vadMl⊞,yjdr֡r$O1VYbWN0원ηݵ⍱d#Qx1ߴM$be^Ϻ .CKHWg ٜ@3,m*ЁFJEϱƟv6p: zEZ @2wY^IQN(V˜q #xi*O̖-;Y-VO K))=mhE}:<ԯ Ht"f ~0'hܲb8ϱ>OAe&W(5)L3\/Fn 2e"*)Axᑷ{ʄ iQp`Pz,bςE1(?O&+>;4[Ё-r9>O2e,:L;i-IsIpXJ2J-G'o7q]jMSjw0DQ>4Γ+jDO~4OB<_E.sã]Uhvu( \ȶfp;w4E5ؗnV,,UO 3wggH%l׃m>Bc/> '@ ˀ}ӗ{_ FE=2<&FtF deR|E | -T4E2a6 +ȿ$]0 rs( Emrf=?2S~6TμBM^uhBG(w*Y~Td$ no7~W+>ᘑ&wȫWLO|K )~I "Hܚ9Ȧ"o}7#Iڿe`YrWI lU'+62z"B'yN mD(#Aj()/ KԔ< L]ha5s.0N&Z- Phly262R:}T~'h{D1=}XS|(,|/(lY8hW%ْd:}w[DoDp7b;h=5뷏ڟYD|] =Vaڢ:zCzW ) x@bGZD]KsF dD*.B yqx[UBWFL4c5*ueT<,R2U3 ; x wEuWC͜ p-r$fդPO1NY 0ٙ徂' EEyԨR?9?a9ҡ $9?ǹd ܋-ka+g?!p_=7 VAeVf} KLW}J~ oiUS?"<y;9q-֏ # I,%%;-؂A%QcDLוTX(K:@0X9P(_Zms׹.` < Ē/jj+8w~qL,b OucB_ۨ.0i߆3i >*0α>w޸Ԅw7CXSԫ(GUy$ު>`JgE5!^}erܫ`O{jM@DŽ.4V46݃6'Q@e>>[YҴ7%֏\|]1\R.u }TA"E.Z.K#&U&2L 8Z+hmz4y)5w:F$VmL[493vFc~hb[4}0V7W'U0r[V gj=I+M !QrqO"ش .{hdE_V _G0 H}!OW8)g9>((^ V2. .Y/rtfUX2ӹ s3˔FHZ~Oxrcieq_&a2A#Uuɣ[d8E'^$*Q5\][T;~ j΃h70q}rfMI !ae\̤{{|ϰtHىYqt8*T[ԣiT;Yg ܙ/^{zqx#U,[EJA5Pxˋ2|C, w~՚F=*X/mF!f?锡2q@U7饨iZJTM@&oN `:T1Mv~vg*WՒ qh+׿ 6:v_nj|#mms>M v+ 7q aQM QN:q1Ha9|&+WޟwЏ"z8ف:.*ϰ: '9 2m/j$=R|c*{ #KF҉Vs =A/NT'G/h]7\$(}hC.} ,Jҍ'V ds`F2mI:7j9p#*n#as4p9B#o&mο):XW˽O <.[N\|oWO0:"5M-ojvŊȰg:m?# 嶅t7dz:nI3݃T)H߈9܎SyNJ@c:kLeX1ú; +ԕCw9ZYO,u?_4Ad Q@R whԮճxrC 9)#_Pq? bX*Y!8+g"+ٿ%0COFa轹,G6nfLX`cwAJ$MmHsϽSf_;y`~)(_8=rexwvM+C ;Ğ1kҮ-RiD}0> CmfR)*T&!{Ưr#N}mNn_a*qH F1K{ĥUtIa-F| ?5Ŏ 44M#&%4Hlk")5q,s\ LZ U֓%0J=uKEG||_RY#䑌_un_ܬ *֖NZGZu\8 ۬DC=Ĉپb|#l.aXV$(ThٌĆ\N}c_tDeAOܤ'!WJp~PQ@E~s\a,l]F **l"Ww 49Pc/k.NؙM\j1DgbDvT`$"sIN =("qrYgu roAe 9w T{ǶPW*1H}UTHv} !uglږpd`5*^zfGCH.@"XC O{ެai  ==:h-p+a`>ᧅB?!Q'N8xbmC? F2I `e9uV5Ů)b-̡ Y*1t~Em!0`(3쑲c4-ha7jl!e%)ކ;H%'Z#`2OhsKUOe 絢C:v]%QHb^^'dS%gj-_HByMD\0$t}=\_p[d2 pɖdрʔSF{(Hii@œi{sƁ, I :Z/ϯoc<5y:+?VuX!υIy}`1Iz%ⰇOrj^F^Vg_;&(|4m9vylIsĿM;exO#ARd^j;Qb<fjXƺg3 t G;SZ, 10IQDշYz?WQ<,qI6+JH@bFs?L+uJMקRxr^@5^e[Y蹷a_3R\D0#aufh""P̳c߰YznC9lL"wPQKDڀœS 69PU{"-p%uC2o[)Rf,0*(kn""wqτ;LL0)L;Q"O#m8IB^0#bM5Y[#k4#װo1AL*Hiu[i23 R cJe*׀f#htb lGd|v&$"g-'ŊK9%qkn >^*|1جM/WG2pQ< "1u4f=悌n{gb8S@ WnA] \zkɷCT+HN}=Z!zDA*2>ҝ^a(2J2sgOc0)5E!o*'V J/ cq;ס?J氖ڐe+&~wltH/YA-uY|dpj% $f37R/NS KQg:9HO)[l5d*D51pi3 w= S|bIz"Thׁs"~'@RS {\ mx yM z&lbE+HGLċPp/ene !9< ͣ!.SX0:;c6Hޥ\4+z$/ fᇤ73.p MIf! Fy`2Us||AG!I9F#ڟA SDrHɜϓQ AɔtVC=HD&变:̅8N 9lJԦB;ZEE"S4c#dPEkdBA1ҳliYW@)}\~ ؠ +k >.} 31]5=Q~zH0{j!$(+&LPFfe y3sJXm(1R" 7Ӿnk|e 17501SA(-%c5.nزo ,tGd~wXC$L}B{XhQO{@MrЕ'&f_1 .zg~e"f; 5kXOP&퉷qRxFp5 5[;@Lz\MF)^qW7R1򐺜'*BMUx\N==.-wR 3ݘq }P26樮bz1b=~e9&8[l2> Pe.LP Fp g zeZ),{Dإmt|BW˔r…|ΣH {Xm_3!%Jka:cD^#cθG4Of|)Y\.ӨU>񯸪, |Rjl3X{!aXRp ]`tXOlFY4`cZG |GoxemwQZNpڒ%z_J%cO/RrB BXyX7<;M >;Z \ "Nlgm0ǻrfvx/Gkb:: ZUTˁ*Ry)W/Q^L(p^9FiDMEvKg60vrMPunq&1,[k_/iŴ$񭭿\@Ⱦ;"zcCpW9coHO5β~}FٵrNʶԂd iqsU@nҤEcLK뗩А8G.tL]>~ɇu+ol® ?Bl#>WlhNo6[)Kܠd^8SIB9=^'0ߓF?32y_\M / >ce k/dcw`  "ag܆}uT [LԂcOɉxЈ|Ak/3SlSjDFxqT.PS˶ףH ĸU\0?2 \MP ̎tW*"F EG~1fI&t1~>5cI5.WNZ Xv jf/#+܉)ka ZC.'KP_4Sjy k>s|^u )V *0Zm Xz>YJP3bݫ)ex1ܿG\0d:ֵ*Ǖ_+r/PDŽ7Ѭ_:&ZW@m -87] aFduyڶZNr ce#`&\ %g?t)22v#i9;F41&z0Ϳ-@rxu6f(X,e&jm-(nlp'YQᱺā7Dd6uIgU|2wL oDX7Zjhb4KϋgimZgPP<@?x[qwtՂD's _3LoG[kUkk҈$JRmL]~f_mfݶ.FuPri+ܯU̎р|,W 8?{a`TNxWqo)=")~7e9mPCXho ݮ"v7!Ѵ`fYXҖPyܶj~M,Et'?;+t==xoP aZuAɺt@G_mUwoE9*Óy[BWv uLhm:"ﮄs__R̄urVs#W5ՇhBšM"un `I>̹E/ !ⲔcRV>~KofȁVf,P9AxQ`LE59BB/R0:ܽ+E|~+@ݒHo!]?c(6Y}sB&b14??!gPe2`];'7&ۻȎ:NJ+p  ap3\̡WbM@lc%~c+Y*٦@!bHCݧوzi/Cۺ<nt#2qn_Zg<3&6t"&#B!GhfQ b<k7%PV 5cUH >c!71"Rr{t̚>@0(+&4?b.L|P)JAdt p$(h& HV@n¬QPfQVy i"%`=z֦`5YQԲȅ.bk?^ޝƻxMUӔ}kŽǍ-/:zљ0,4owVA-৤f}៼7!/hy twsPKl 59&AS+ du`V#DvÀrɎ 7zD!<}89P#>,]KR|x`=p\Ԧeez9p5\ O(g ?w -۟-:)[ICd lweW]? [slv[i8NЬV8;ܶ%iZ,`}xC=Ӗ[pV{d/P2CSf=dy^W_InQv\Ɍ0҃30H 7eS#_; vZkkSLuk!DRQf9AzHL|kET4I%mȹz חR8'f ΕT[]pa |j?GYIcށV,'Y]u)ڸQY4SD|լRxopؽ\X^k/Okpufk^&H`f9 N vKfu5a[ס٢#bsW&ѝ^MTl82E@wij{f?e3ЏF25lToą*כS6~(|TuhS^6bj}T%dp-?xm{dG*V(š' gJoQql 7DC.fI6UiXu匪jQzOĉ-c̐WS,i (,l\B2?Yv5^WӺ RJ eWI ,T 5dt/ 2Pm ,ĝ<duvNnmQd4oYÎh~13'TiMޚ/YWϻQwnWԼu?^|&J }逊5ҋQ5 E!2@~ ȱrmiI3ﳃ9)U8`ޠKRq|ߎ\w[Bt;Ig%t1bg R=]/,l`dNo1 Y2<*+F)ιr'+@9b I|:f@$JOC.>L\P)2g>X-WH3S̡sW1-;@*dK<|h;) ^Q}m9HO/@V yߞß rr4yd B kH 3Vr :q\o/#>,{q= /*ҩVLc".9&.h Fox1a ̞'J1DW6F8IvCRZٜG"=}yuhz¸# 'i$5o9Q8@5~(6 T/'6]}|bSnWG٘Y0ͼ*)՗f64]N@ZuqMJ"8A(5菦#BbuMo%ݭyƁ ,%* >cY5r9&fq$1[r_*=42hЧ!눵̀Shu↔s Qf{ML Z=ENEh d[p^`?IwޘKRȦ6$$5=X_pv鯷i͡65ec[Zd>~ӀQT$yY5%){r](퉟[>:Xe߿o<2F wSX1qʁ”DȮ[b¥ے*[1zMÃFv%ԛ' Wka ڼ҃܀  nTkB5ԺRh7ğl ej|tҳ{~!V#*TYpAj#&H, &c6iv<'R$fʃ&8Gᤸ't GB3ShY^+4ug[-2; j5|מUҴmjh Ɩ+b3{ݭKv_Cpk%E=-F-J!?L[>q?)O&YL3ْ 8WJ%?(jN5@㇃?i?͋Qa!l?B('F|#)0`)^GْX=} (:'eth{+Yj)A 7r x!,b LD"Iؽf**z۴rľ'Mب,@tyJa%,P+پ02NtP qNXebW\> ,ewKe1Sd<).N?N|lnaPX Ȁ2Gr?5`W2A٫:Wi[d pZĎ -#,+E!*z62a "6~V qTXV!qhS}pZh4./{TWesq;Jm&;pݝ>^2ODŽT@isYK{]d51[l%Kj;Y}RQ מ#2]$|rZ<͉Qx`d0ptHtzbQC"L҄h{;>7\|;(VA2"zI>̌uֱfiG6ZeK:&WHΔI-= /Kq]l0irHsT̉7A;x->.׹|=HCrzZdy`c5W Qsʳd٬e,CCtƸ"0qVr$mBʱ 7sͣS>%`3^@)cn%Jk\Q+Y%y"#s'w]**݉Qx|ffca^@4Ȃ{n{BGAmR8 f8Ow{MAP.Q=؁zX? iL-"4ÝT! ] [I8D{Xvn7ل5fم^pKF)D֏xKYo7/7yBkBY3}OW y6 3!T L@V1 {  Pp)K;fW`)n)*܊EOn7B72:? 6^'| Q>E&ag0rlF71CR7VLHEd* M0(/ʾo_j9m yǐZ7^ѽ΋\;Լ۬I`PHb~C !ʣb9uj h|)gɜ%$oo;+dZz0%z#GT/]MS AVA?k!Qt1L;T7k̼'`[Gk7%Vڙ[Bls[e@}a)MJwT_,G|2}~BB(]"ɻugz'zI~8" ]vdؼx$)rDz01S3%f=VwځO4.EjºxYըϗ,µp Z!k(+32]@#HEI]jM>;z:8Td7n+4s,SgRTW{/A98HQ xѼ *ܗ}6 ,Y09C[dkEVcuO[Bgr}]7G8%׸{JO+[Gr4qʾ}YTcjKzH܆"y U8{~#&rv[˭'. }aבg` WeUL} RƱF&KDpӠi}xW2 BHSy;cY?0M=yZ9>VQ0" ^=U)Z( 8 8/;ۅlIUKYѣ#*dWqp6}#oRYp- 8Ιޏ}"F$6,FȽ &^n, /mR=j;ի=Mi;Ɠu_Qe؟JYrE>^ cQ4]f5lpfR{43,iT;hu)70זK^4.?GuwZpݗx{YҼ t_"V$fVk^e58f%q<,Ij\X4Ft{O(FNz}Ff>;VJi@iEmҙ+U*cКH{5|`=aa6/&j]ÙvaQ,X&g{`J2)wP.(Q\3=?_X+9EQ(uP,)a\jh$ c4h(DC  ^5ʹ=q:T[F^<|zc !\A0{|LSΉ:3!jJF.M#mdI@hņa!#gvWX o#8_ZhiG?m.fZafѩM;-ސnE.ez\}zOYI`7ErB$\BB3繁si M 0c!>A0x!8zx{Ti+ ꝅD|&f+:ߩi)L^X0܊1ݞfOPuSX4>og2<gF ֝=ͻ7x3"@wICbmnmϭ5 sOcYp3f^ؤ wF^ԕ}egwpO&CGkH mۈG9*4pX`xWLM̤ۨTCweh4Gk!Sw%VIy*JabtMPȚp S9qdL"~Oت:AJv-he?^ d2X)u'vmЕretL"9MXޖBG+xh +THa.p+t)v'pzwl^e#b8v. DbSDުCy|!7 Jvؑ,G~s(G͐6j&Y:gU1Ò0) zUvYɓ}7g۩rSya$Ń ^&Fk&[zp5"'y)f@la|)9+x6zZQU4 2(atgrBrG bg[7 vFȢ0~a&:WNJ׈ɲSx׾QqN9(\[pZ ?di ⵍM1Jjz7[ OnX1Ќh; AZ8[Dw|~?ZwʰAZ'015Ȥnt*VG u ߈DS"bX JoQ-6Fߚ11k`;oEqay'Ac &%L8 Bun ,J'8 \`SމʪQ6Mz|Ni,@b⮭?Ou\)ypWH>Ld:r^bm*f0HrR7]ኆӀ̔RA#$~FKhEwgj @Gm+ = VWacytBTbpJm'闖fI)qߦ$|k7Ag6uv9K ȈI|gAǨRR%Z 5'pb 3Th9!ApW߭E.Ǫڸ#% i֦R`6YmqI;&iY?'pK:S !HL!,Ve0anaT&gd@4k3xSFTwNpN3Ri>@AH 4}ׄPq 4ʾ r}[݁CQ1u=WS,w(EXK3V0$gsH WKƬ>m}dg-9,\]Z3VaBklDGvc@Yky{Qt`׫+h7Zgaˢ|cìE_Rq7 "յ^@OYsjc4Ĥp̦F{%RCx4ȪeW>yގ|^;w궫'q+ ]u:($2 X"&iEJWY\Lwts>Zj6'C¶D~u;{[~&p"tC ni U܈3>R0!E3a78~n#7TPgGĈ%lI\9t)C0ؼq.XL'c%,>m:obV?l@tVO͆e˔Q(wwjsUk:}>7~c~p3NM)\YdIfȖ&wArnqG1Hw(ׁ |z64\ cfv/xyαj+1zz gNi ))'UzPBY ${Gȋ ޢmtx?oi<֙3#-ʷ4J_ڝìMx? kbM?F+0JFjyJeQyD6yF1VVK 43p0혙_a t~x‹Q4]\OvE(8[VWԾ\IKuMG?dGq {3zyo lkV:UX|DU2 /6JGf"92'i82q8 jl[*U1WbxFǃG뗊&OW K0+v|PC^5eF24Yz([Է**igDt\v Kc f yp oֳͿ)[0mF0M Xh珅~JWb|"-R "016|UC`g#)a)_a$!kwJ7Kќ%Mx]H(U~>.uh?N$Ч<~0!eT&7Wa_8 |DuX7DC@U$-9 ;a6B+ׁL 3xQX<*; ] B.r xj@0#kP Z8 B+BMB2/EV@=YU&y|Rj!YkvQnoc>+nTɳmMw1MF^0>6vS6U]9WƜHt}Zf8.s42LswX+赁!჎,L.'xj`Gos0ro5[ mwlL/.™uлYuF q a׀-s%Wv1tWeQ*㳨(l G<| ԤC:Sû+) ˸s1"akN!X5g9Ѝ;a75\J=" 7q,j>d3*gQ.F9(Bs~O? ^Ťc6Oi^F5 ceSy0%Y¶ }x:'*Sv`G; UdLWh_V[NsAx]? Ֆ z{4:P ^bh!YIi.&^.>hޙ 4(q? +"lQr(?Qdw{.|yMrA =ޡԣhW*͈;:KAzG^<.0kd-κTP9lnD`/.zȫń oB$iiϑq(dٷ"K!su-D(( =YTY.z$"Z0_? A>ZR~n##@ƨP|N# &wveE3opHk!&oYj9]DH:>2ARGpӆb[ҳ.F\#Z$5p1V3^8<~zfvo:ͥH[RNm e+(VY y L 1v2Ut%&p Σ3~ve3YYq Jv3_Hwer57e~,*n@ L6AEA)58z#0`j1c22'1nP ڳqNVg᎓%Vp&t&v$J4^ _u h #2'/لӭ\b@E9w\EC@: " '7#y3BpE:X K>(@ r:`mia X:kH^4"DůW'L{%d߅GgrOS&9fgü>%:$]&D0m*;9R1XdX议Ķ6 nc.>zeu."1Bi^ 5aYz2ʬ0]ыoX9>ogpKHl:N.S}]Jz,( {al}ĝZ7%`]COE7HngiOMzӯoȖY8n)*G&U'2TVZPT^w]~늰z^38}>h=niެwMn4|Εp\?ŏѥte  !y;= <OWxXPbx ')S fRb,UA)kC;$xO!jV-C| Di6Sㄳ G%Ð,SX:Uhc!BSz h:rL9tf}P7U=}^(%폣@'ŧZ p-i:CwRq7d*ɂl.3J<} /ۊww00q$|$Ff*_l4\Οv$Ң3`-e|(* Wj zQf$({9caZ:¤~vie` s` {O뼋1#/o(FxNy܅-нDC0&^־mVZ2G;6[X]YroS>4G}}i&. An&Iop7!L\u{o e[h!fE>ϫ4^`#B/m% a-hu%RMz6imvbo20|zϢ~4|k^PHNۼ!δj3c=-hZX|l^HKDb~{ ?; ryi-#kYyeUE1 i m fImKeWG[lAn!WU=?D`^ ,GF).l8(I/kH F4FƯn'N;o͐'X&Hpc`\@P(q\%Va%p[9~P[YW=(-j=̋ :J-"{wv)KJP=أf|Aj1GV񞺹U"^KHƔ+yn+.Cpl4%Ǐ~VK~ j'0R5m/i{/"ZyO٧o*'Q’Ek5"gm߽*$tӡ1ADlnEUmiw dc=<9C捎׀B["eݻ[9~+LSlk $+}3.6U3enHY[BsNpLEX܄VZ6|{ xڤp¨mëRYU- ;U-{$Z;kv55+bEhButI@L |w1t/1_@9MĄ>L!_\R bty_w3d<ݍZP9\wm;͊>X@-EVۂ ' j{x2(U&.T^-Xo9+Ly*Z /PrqcĊiw,+1:җd$=wA8\P lz591,WPjfRJDWŞqMf=c~ ͓wb{pnÌozbp-hpETHشX[YiV7H̑sEg~akٓk`L8'Pؽ66dlS(ŻdlS=VN|vzL*^,ߕ_'/[]0f˚UĈ8G.ʩ-gE%:t{5C5;7c3psz% KY6d<{Rȼ@bAG$D#yrU ASt0[o}'zXf,ggw#̞'lr`+UifbźD Őt@U9fAl:3(b%VZ cow̜J-CC4/Um} ]T&. .wȤ{(?ܫDmP[O{(d\П]I)a(ۄ>c0~g2=tI+)icng-ѱ Q麼Ly`5Wi.tu{=3Zi>k|%#w-]^RB ƺrk,I3O%UKee<I:I,ѩ$-M:qiώ)Z àJ̑!i(RKf\uJmF'X\1X%fcܾ}Ɗ9'R(T+Nb:O:--uOU oÈ ;s/\~Eq4:,-ڊ^hW&?Kƍ!h6@9o.}`dBgfm v&?EFsw@n_]EntWVsI^-rorG_-L}ǣ;78%x= eF޲d5 |\;3M{4ox~v a1۶@+r%պt|$#`Yf寏EBoVlKisbbE%ŕII8%Ua?1|}Ywr1mW u5D;oaa:}qLw:@+j 蜪BvYZWd`$?VDG1CR&S5ً8c5|0X?@ ^cmsy ȯԏ;Io(, n>%]-iΒŠEa0VQcd$m)DCLӴ|gk1gU>ilTa=??+nPi On{_x.ȧJPkSA(xnb*v"/,L|fŻ7&lѸgm#M)ڻ[Nq7{з sԼ#8BCŸȱI`۸#s :Wq{[3oVFFFN=,W~c0v6#4qZGh]\B@&|dgs csDbTԮ6*f%[ZRת IfpοW>D:e:d&u!+?\ˈ-?X´%睘}n|ܰ lGcT h"ߙ> n =!vcJR!lH硠$)+x ׺$1]5D`;]M}X.~QԉG_n' NUzzjD"C]tDJ;z˅ \mNx/h=뀒Sq˓x5wH'YK}7Ӷ*hm6b+yo:"Gpiq0دаRC/ Y{!%OnpFkH8|YI=VUhR"fBqW`KeB;!m[[Rl!Tl(ՍvRٕAu^N跬 I>&t;P%9bs &pt^$9s? ?e[zYeGsx*S^V" bςm$ 5X E~eh"@oEw{T`)H,еd, Sg c'/Y'g`LZ%PSJo^dp0KI!xO i_|(Mr=/1Gǖ)@w?tȩf*HsejC/bkvXjdHq3SRuRbuWVAM151peɧ.>9<5y_~.QU\+$u~)bŁ9A2fwwdFGUez&&A9Wn!]D_Pa Q,{wLЬ#ieJq84uN\q I=rK,,|{~%8%7u:eϬth\>C8 OȢVILSrxzjJУ BJAJ=7ܿ"3qCVOu2ӲEͧ(! "3S=I3|yGIpؙ}2vf =0r6 ;[K!NW<=<~E6Նᆙx^r}zA[$,eV0/oBL,v@ XY[v s+8faQ@p-Nif.X,uH tN7qu|g$D\`Jem*/ջ!*!x7w,8'պuG-SÇah6`)Plml7 K]L'={󒲟 867FYVWٮ4c+Zk\Z>E|Ho>X^Ry (`ΏZM] 9ħ=%5c##1SP`fmzqK]Fb<4/>d:.y}(Z@rMd/53޴z*dzѻ[,6IG`F".ʓ2 *~aEd;$QXj1ˊE_ʍeCc9*mfZ]Ƕh?;.'>"^e$˻3+kDo75O!rg0f Bf FNCuÂ, _I>'Bu`Adt=T6frb"̓ rYxۿff=Y\xK\*d=֊^%iN({:cuc{5It[];o)XM\MVdmz+ n:He3Tcmo[0 5`f )iLh_*un6H!(ViD{%̉9l/%WJ\>REm?t/xx8f 'ӪLt& 9_H) o_= !pIbMwpA[P2Xc` v<+c-"f 6TJ%Af?T9i?ae/G*.d *Oytu#u}.YsъOUhjG+ DE]_,Fg\-\Jݲ*SG#ZYe\x}.p l2Uc~rhqf[(a,pGH=Dbڼ͆' eʦ=4A~N`9"⍶C{3'[թSv 8O"]DAQVKNǫ~+Th\=OI" r2F1` SmJ`ݘ\g maaX}]bn.L`\BL8ۃ㳯շn2 ;&#+ɱrw'6nzaVc9@M.G5N')dZ1x{V z0r^ҟUba햖 \`G)3#fˌ[ũNބ-R|nDR7uq`YTk (nC-'qhlmF,Mw&>DQ RFSuDfn?G9JYOQ$V3WLuT $Qv~gސ''waCgUlgt؇>83%PXucؾ^q X_:\ g^Y~-ꚤQ:\ܚ |ŠWFM (-j&tC:C\@S[-"{&耟@3;ĸ[u :ZM^0BY7 HE8|  MVOP ujΔ](Ȇ+l^ƿ&㽓\4m>UGb Cu,cUt+L!Y"tެ p8e|Ozu_κFU)|ZUN9ZeBMb xɑ}ܜcxe˝f'Y.}YnqR*Z[ a8>>,anULF\sBxGt$&ͱh %-3 Lj,;>aIU;x|6mqБ8wM:79ZuX4w]X8"sCj]J0݊rrZQAx$e)L)DVnacJ+Cpt$iR7g]SbH봼Ni`G2"Xed. Ʊԏn¦r:4F?zox@*dL $c͎p3R|9ʐ*E=P–,o:,Y7u"/]x0q zmg%QE)aAqwdM#CϾ͉o S| t,hxaۯ- c:z#?)D[kqtS<&9 t (m1Kjw7PG"E!P[D+¥$3oP߄ӌG3PpʼnF17%ʶExI$K5G&;6hZO  oqeV0 j\AʤtAvC+ƻx`$MI-t᳾eWMe<4Ij{})Q_h՗T1WMc-'jmR_y'fB}iPN9yu}>hLy4-%2>GBoL.={ aT{"diq>/$':+֗M$ؘȚ,S,N݆.3ɪˡkXBJjYDnCRez-mޔZ]Ll888 ->s_4`.T?oeSv6aN# Tb9Cz V eu}DP:0GzhB? Ãt)b &x9?Ud(ewMK6f¡ow bÔ`8$/ tY~&vOX ,W?²rݡMø!f)pԯ U|8!";'ս<_ZP՗/i~vw(z]\ڐHy}@?5UX3Ono>A w]0s?Iޒ ,WS0!!XV2q*LCW4P'RiNU\aw^P=Bx)J/EAP:u=exXrmAsnlF猸 Pq2biZXXSkHoA PP ޻2pP1'kogϣ-e7uʪd{\E>p/u ROP€^4Fz ;&SEdHs8a?³8r_ LS{'n9#Iz"gͺD~‡Ѣ9 <1d'*ج0ΟuB7 ^η0rq{:w69}ńN2%hIP#*l[s>ˆu*Gtbef16spߩ]?s5`Iڱ % 9lw !A ]9(nܽV!9(gF|N$r'nl70B2 !SvیizL?C U'YK9!dŢP.%?~IpE~ffx3o/L+8V֘ YP|#O[yt@of.O]߹ܱfLL]%ċ*NNaO&/Iwd2~o 3&-WLWA-iv ^꾊$=W+Gh1 (L$E&vMwJ:(} V nf͵~h9[U$.{`1h%)E:r"&˭GL"ȤG~)C_qA.dM@7fB5wʙ9 d\.mmDtVz3@3s,j7Ct%UZnՌ(MǦ|ሱt3UQ4|{O}(3ԥTY~CȡӲHB'Ya|IgTI|`_]mK_i!BdND[!*w5RI94W!^1`tUK)˴2ʎrƶ9{M/%ؿ\`vM@qCe_ w5thyf;S$vLO4V/g3_a8ɂzl#H Ϋ_21] #'\HHC88cgc6s}rX9QRƲoAi./PGZDw_i' ulR9+O@ \j1%͓wӔ샸:! 5"|!l&@ZQ.@އ%C*/yiyyK*(wTrW l;FrO!/ކw Pִ{~8pG::26#3_mRr6V'): {K̑A7 bUYC)pl>Awd+^vxV'8c!Z vpQ4Ү:gVt{c*B0s4J ApAIᷞkA2 񵍾7g0QiM-*V{]vM0fjzSq0#E:ݸ=JRi_ cל C.+)s[>ȯVx ?٧':谚$|Mj[<5ʿE(@^lAk9,h{4Қ .`pmvVrTrRL Blq6Xttrawe=}MV]~f'Vi_ng} gHl6md}O"cZB(ld 5LoMJ Tvd*swcJa%rĒ$~F5K SʱaX@21M>BG4=Ԏp3$q'UYD)=U*Bx֐MuffI̚ 2^浢j ,(/N1"WhS"Q>HaS߆R@1rX fNCaB.<3U(+.G$چF\cOu\UkM(f6F"E}c4P`Yfr0Ik˜ \ f-p>-.f#ZG^Da|Іw! U*ASPhfCfRv+ d{sB7+_*kJT"ux*(UOPGY섦& YǡP(DJ w}l8NN"٩Lv[NQeIV* Z? '_}`sQo\XjKWe*`YV~h`2' NEU2_UiukduQcO^ymnRyN^p-VfZ̚/ǜ]~xwLXѸ&XSFQK~[r6\3\bx"OjE\:25nWv[ML>>qX=Q͌ dz۱ɧq?mivufÉJDŽY;)> _<7\|v2sW>gE;;6^]!~q?%!q=Xi\Yߑԅ|^FW yUQx5IݷU}vYjQAQx&3%qV<)fN|7Ĝ? 8LLGu4֒X!EeB'ϸ㕴$*zn s_Is(1c2 BGŦ*Ă Y#hR*TWp5UxCE5UV3|EXUr8/ZLey:񐥀)jRS%n<#m!WfvDtł0-EٍJhDd2@jשsM$-͟ljA0`ÆԄWKѓL-7#SL׃IzJ:8HD?ظQ <>2B\ ~cQ-yʪtJ_%ِfyOE/>fG9㑧z``ny2yo ӪW-AnpŁ(/";,8r2P87TGdKvP#aΚV@_))4"8p=,?WA j;/FD-R0' ݹ#Z d>;ۂ>>/ۉ>u\ F-Bԭg Ultv|AI) w!P)R+DŚSެ1= S0[xCE oV8%`@Vb9dzDxѫj/1w. opiFNGI|w"RH<˵cO8@8x''#TdQt:to5t_ nEJu 99?mleZ>[c-OxZses-.Dyk#@ѤtGLӂfPCDOO6[^I .ou\Z'JBG)a0%q*NiD+p. يp:v粷2CgcO姬O65? oH?cV91yp. U QbeK&8ܠjpA5@(\oUWw (JKyvx"| ?&ޛ0% d;P6JHE^PµprCi5 ѻl`(Ȁ[؟$0-|?`F'G'kBtZ59?hCRo28^;SG(9. = R;%n9zHYpO?P$#t4_Aa݉W7wBo_vh U.2zD ȝdz 7Cww]ocW`p[C@|.ji!\Ywf5sih:zǂm~/4 aVsDB_ #Jb" &VD3C4)fDhK\ ?PWͤ-IyC{$Rqx m {lըٱ6)aGf4s_ 42jq [9JiS/xpn3Rhlgz3P(2v h}Cw?՞cR؜zˣU{%~_F'眜r9}g(Q^r[>60Y`xgC."[AM"MF;V{$WʸLa٠ަ$t< =<_,1.BUDtѹsV{ Ù42˜!r|^b f[Ae~lFv1[Pv^DAr﮲8<4猡,dgQ 1HPс5TYsCC4>?ƙne_|Zň6Tav[T$~I)~CL-U>TgV,$z/ LL2$!@HrIn49$v2rV̮kMe0G`Ns$Be+ɫxSPLhFZ#= 2FYA,eOxPRCeoidYD#Á2:pOv bߥIS' r @h] f ; k}mbNOk4] R@Жu[^ ~tfZRGL z(5La[XXZ<1OL9}uo9nE6ا !<|J:P9Se.+ M)(>-Z\nfA< O݃:R0s~o,לč6|.]T argoiOG6uEaCcK1R?4Ӯ)Rv7@ ;#v$6mЭ\i ÞD}oU2! 54~A`} A"4˿\$+@0$)C)Z tNRsD@]AQ Oް琿l~$67s&Jr(l vojc DǎlQMWkxЭP^ M`rUAڑxU@.78ҪORE̲b鴌~61q%FTpLio(@W7(?+PɓF9[}D;$Ѣ`{`~]c>p/ )h`:yQ04 `jh1䧁H_"2pQI]xsU/H΋ 8Rx:U|GK߿MTD#O-2E@ݬ: /yWTAW3V 6܋"}k>{M{O6푀*M5  P'ۥ Cb5MYxXhI QB&,Dm)Lcty,)cci^Da?ϫx}fb9OZ{%V!l0b#}6jhp)d Jz9_wBZsX)i`]bN7ϱ) PV&|svT#dω eưH='>eɋI)oC`WIv_yk "ЏR.yJ1PIl+]޻!9ыf8C9ĿJ0D *@h)36o=gFLq\rM;_؍ܑ,R/* :C?֝a+̿apZVR4p:%X3+lIǦ֭wF|7ݏlcX/+֑#_7Eۊkƾ귡 ~/6΍[OD1Ȩ\6YAq,\Ejԃg8VTö'reݚxVaui% ~:0,4sVh<*0FC|ƾ?%WvŪ\7ɴʥͼ^] Xx3Xu86}cWS4D̚M!JLH3)ۨdlGMO+[!Cñ9>>3!e==q#;vN^W 6p]FȦw핋 4@ •LIݺaUFf>양ik2?G+|菁$k(G0d7!2#̀}}1_uR<L@(0-b'$퇲DM8q_,H6rixƿ QF@}aމG4Lm\5A'֘FYCD1=9Kj6܉ėˀL5MNT:H6`&>'[ +^F rS+/.A4ؙ͙<tJR{Hv՚SqJ-#z!.X{q2[5ݥAݛ-vxV 2]]vub´e@g^)?mzIA'DN4Ec!`ЪD2v1}t[Q)jLwd]9Vgv <^LL*cKΖtt q12b,@IJg'k8(^SSM (2>cʋU,A\ Eoy8u558yՏ$Ȅe ~D.h:n YD5O!6R7_}^~?":̬}lYx M55BuQ=;%c>~V el;Z[[:x/W&vo_UX`8 >AYMfaϲiQ-Kvr=mDڙMɍc=QtMNmi6ɄY5KS(z0l6&[a F0p^>,47^Pc*o TW _7$ د9ą\mU e kEe.~Qv58Rarki1[^0Zd8y-9Z/)5O#c8*; e줰_Ȧjy ~$&bMjɴv][8_Yl1z{ uӺp)T,0vn+_AJu8h ^@0=kma3Ԡ"`05?g f]!X-G7+~;"§&!chH}:8m0o4gE5aڇh>#踍߫tf|@vʼn4η`Y7;iGIM"[nlǪn) VWGF6tRoΥ`Njx %N[$^4n4ShbI+zvX(}1OJc@SWYv$foI@~qKc3(DC1޶~f}$DȷHUT@VoZ[0qt73a? _ |M 8^KBI).ԯדI|>+ j-zW,xC클:QiuKˡ A0?`ZޤF?aqYq#g[r MT|`Gʅ4+/DǤ+uA/]a(tk4*\9E{uۿVC{K$t_b9k uʜ?y?S7&>`W|=Ew>(⤊g=`hZ0q˟&3oaY3AH]9G+6n%ͷ&5,ZO)Qp%@6 @07DvaIpocχCEmVۥ|.+]Y_^BԐK-q^7]*R%s=(thȵU(w{V,8l:D!9&#$x(q=2<) k}ZFz >͏FIRhI~H_xaƣ9!/ # epg/RTzTW7/>.[t}>0ܹs۫:6aj~3BS)?dW\fj6 ӶORz[m,heTNE"[dV/]֋+!" ga~ANZYm5Xep9X4*K1b^[[x9qp,lko$ *gRʪJ̑T"ƒ,NfLcNҽpM>yI+);Ms"˶XfTlU;#dXD(LCD+7.Yr? 6T- r[.Ҟkt /<; vs-ηb)enTP.}/Zힾn˜i]eMT:QyQU\\I²-Er2Ha˪nI5Զ aN'(鏩ΝC*:V ΂䌦 GrHWD cgޏ_{b<pYDdϫeˆPegyp}_Q~ ks僋*aea2Jw0-:/*AOhυ2~eE\AhS䮳yZOw+0?.W#<{bbrmZ5g5 f$.aNoJԼM M]G-- ဃ)JG#טhqVZ$7"q)xrrR]b1 X4lԟfc˘;5?Sr[.=2'Z lƘ[7-~T0q)7Rv1aqzR| 5 *:%ߘ1|FhwǟD8"WD_1n=@d;!Ra䜼$?@9XؐٸbݴEjmVZ5NОQ׭ uiv}ZCy_˺&3/VL%P-׶7.maEˆB N2rMe+M^'w;4fbm51皝JF;Q DA O0?VVH6G\~> WE!|v|՚H@R2&Qu[Qqc;pē@R:jϪ^ޙ2L%K}M8 Qk f|"E&`S2uAWX! e*SSxLCs6 tGgF^%m5.#±:Q%0T_%+z8lD1Nku|ޏac9?ëT\)Ũ: >r<ܟ lG_^qtb Aj{_DKk&Qa`E(Y0g-Oq+ns.;xv,n&G,\<@$CN2E1 `|;9j7,N|acFRELt#)OqxD %Bv8|ht|l^ƋoZ7Od)/YLКg~ח6z(YUPJf |]Mt_&Ga[.ylD,bT|!^gJ3s"u6biDr}עΐǛp;04AfߍF XW](6+XgK|<5mSy ~>OOC8ݻ ZROaVhm6CD?k*ApoK:gG!ٱ=?`wIrY*6@,:lMx콘SX%-^pf&8{Yh)x ѴtWgo$ӯf=(WpC\d WaP8O Tfc:ϐC/"F9J Po@φê"9PJ.?ss@[zOۢ0~@EM_KwL/Х{_ʊ;8I,b߰jOKbN]Yo.*(hZCW('37އpCk5 lʍYO+-vAWʏLv T1U&Ja{oK{LjW ˛ C)*R "\9ėT~u+#[;oVʡQƸd|n̖6r>Qj$oJ,A#b㰄f ?AԑrUV0āVi In0H%{(*j4)FkElDAT1<{sJ SKcSe} =TE͙unqM͋lq:n01,n0{i" F!\ސnG+Zɝeq nKBR:ev2|>ȃSJ{:-k-IQd[tVK"KnaJ+՘a2c'Ib+j+*8ȑ?=$;+8%_?Y(rU90?޳ O`T*ܲ3 eɃ+:hҶ8O1<Ξ#ˎ`!'3Wiyf\FW$֮gZ_ VG^o{xh7p6ǍksT 3*qbLKw* :KEՊy'{n}k4Ao)P_5ɘ{jj(MMg]$T8t+~&5".C\"vɑw]8!?2>mlm..GU TPnFaH/Y{^_@Ll}g7i\:J}κ):pYȸPz͘Wd=pHdz>u߸)Jb9P ndg3ulV-Зkiw$n2*CLDK^Nur&:/Q -^Y+%?F2%ߝaK];5Ng\%m@yltA%`6lCzLHG⇡ 4Aڻ0Ckp,f6w.*ߘdo]9OɁёl'4i]~g\Y0U=V7G+qCў:Y14!$f>Ć󄨁A+!uwݧ{6J-r^ @mK|L I^KLQo:tiY3 j&kcy/<L^H[bL;vKH%%LcblYȠ}b9Č&7<;c#C2$`#'}RuB]+;X#iVT%#ϔy oHk9CdҸT67_Ȧ/Z>mO0ʲJ] @Dd堻Wjο׿h%8us^-`SR 'lfvFX>zQ٭u)Ŗ^ =*Zy#`a-LEDe@yJ\ٵ'x$(p-f,+^ ՟|JAj)G"rˣ|Z-O#]E5:=fIS h5.C 5E7u]ϼm*KUs%! M 6h)VAfԛj2|#lh6D!A,܆TE9~Pjsh}ZG8V}۾V$dueɲӞٵȯ\ӥ$ SKwO_m<5 I 雦Cb&z=gGn5Z_Tg A*a"՘Y)e]iﵞ;c u4o@ZQ%m/ZhhRWJ~tR"Z $9WYP]zՆn ~<$Xߏnt0xEqUzi;=#eW@R^ho$adj `5_fkOQ2]@x=7>0Z{蔕14bl ߹{0qVdHM6C铪Oz:zq/4 ''C U PuFɼYYN}XOP1]dfMN3)ǀт:ϔ?n$MYgp:f5P~e bs~+궚;h!HT`\^ji1 XdXbV #a4Q_+x&9;x,w)a/(bFt@K)D@Ȳ9ˆBC0h_1H[?'U7,U}9 ﻰCr~qAjAvqK(nhƏ8-սSxpۆd5XK?InR 88` Q{]ʏV)6R_kumLKX䤻A2yGGd^ᗏ{MXԗEn5;^6 n].yT 跓5ٻ#yYpip pWO,cۧ 0@OEZ;wDBѼw 5k  ߟj5]̦m^}Fh0KA(:Vu4tZ\$D"|#n[I[ 7ƓpmX~ k2* k=(sH㖟ė_\vNw[j~/m럮US2]}{M~bʹ ''N^ĀbRt'YRVQuWHEAEE 9A87FXsڼ8{^6s ,o^XBRzmjdtj80v*je>Mx R 3}mMw#d \x5*OU CnW χ' j֒VQ~xr MdT@>[P8x`(,Ѡ̽$[#=r3N̓$~}?HM" TBoQ$6":mgxW=Yj79jKhO3АbϣJ~gez/P:ToE&`׆ǜA| */Li__GC RԪ^p{Y( ͜:t!;0cn\qu,S8p/؅bޥ%ܱ(u};lYF1{@7g"J\E6Qb+-m9K#Bl7f{J%ϯ%S $3ÍctiЧyZ3E@nSְ]XՌQU{M)SH߉nq*R3w8 $ŇPN9IkD8B8ܢ%ouO. ͟xlUEE蓸3O! &eGM0Kq1}s,yJ_ȞUc΋3)*bãCAiu5v1MD `e/]\Ҵ{9UNE"nl7,1)st kt5<p.xAzFE5E_%J|Za@cjojL~-"vC^XD*Sy 37>I΃8S'~:?UL^5bTRvg`3UKѻz%8A.c5{/hg4,M)v7q5<ܐ#7_v&; JXRx.qv)D b$:X|oyv0ߤ4eNJ ;`WH梏0:0~0޳SxNٝx! rs֗0T(>Cf:P|"x>pJ% |Wp:wO'XZ`\ϵ- "GkڅVEOFl!< `ahbwQI.38fe4̙TªiԐb0:epxnd뼁~5s )l֠J mF!1ڨ{ןqPWkMn]|p^[c*ָdC$)R~$}9CNDIW1uVG=B {]I8p5g}fK`|;H@ 57C-i˽rAc4(OPEzXF5:wO5MCj m2,o/f9AL76W 2!=2fY8a+b/RD" "O+fJN0*g%FG&9??#CR$xEO֖ȋEBk'`>Ae.> 8UњҚA{b*zJ2u䮙hJQ1\T>ˎ"&8\?vTUMU3SYѵjOϖ{Α=<;8ϲADzVU[cU!J&UE^04kB2I_lW~"-򾅖Ʀ*M9vyims(lΫ}YO1ư1L%r!ϧ%ꂘ;;cY#-ћZs~e&4N:_ӕk?^<ƽr,ZbЗixڬ7ǡOϕA(!zKbЃ+{tj,P0e*0~VULnp/z:3%86/)|cGQC]!yvrm)':G8'YٍB\"JL+*F_-Or0 YLadP#D38E03 4BYitn(acg6ğ%rxeܫ)瞰&t!g[̖u]DLW8(-3^{Z%ˆ -!rU,pQlΐ63 LD;+ف@l^u@mKD/B`iPOAG>|@!Bp#>:R̽4<}S"Qsc+n*R43W"~{snEԈg@B0qWZ~jc CfPn -ffwEٞХ@18hl?(!+[z-gpu? M_*_4CۣcizQt8@UQ)x5m~_Yk>y Bם 1+,pE?6q/x]1` UEE%&mcO{l|))OW6C{>ױr+Jr/ǡrnG$I?`~_QaK_J!/N$af#o1{97;-ڃ0)n5l'o5gV_TbJQCxDڔ7 ":omyq ;,'nG%j)\#DFhC2Q| $KzX bD>UQ Zq1+\/&j{V"ѽ1D+4&ex+YB"+BsߌgQ]P+sz/3w ZqŮK[OjMo5nzҕnA%O3洏SP!9Lq_cl9_fc|@΁O!xU8ivlXPL>j~Z <lf8OiwKɾS}pʆW}{^R- bmd OQ谉OW9WVddI]Z?tVd`Q#WM{Bu~!EbR{`VjT3Z;x?se^|&n mx1}A6!3滐y$UM&?Q%R91gr&+O5 _q EPH >>x ۊ]z>wp_.SUFNG8c1QNV +i*-Ŗ@Ԧ"pk " 1z|^RGUdV8czG8ۥz@խAvG_82į|-*'x!Hّ濟PE+OS:{b Nmy{T'%`jUl=ɖjo00(3scKyqr s>(Me1mkB}B#Ti} mvLĎ;N@AscS- ntغCxKݴNy^u`2m7٭&F+e330]L)ϏD|Si-(<~ ظCCH8x@$3hAwJ,w}2}9k+x)A}/?_f'5?POstTmTxb$Gx$>>]r(a/oj7|H^mj7@=~Lv[TO!EHkLSۅ|b^K}JLHM\"YFbX*xĬ.1`sQ="mw?wWIx9bFkfZt=|5,d8x PP+ JZΥŞM_ ^Ui7 S3s nT& G]q3e1OO>BiA|<f*´r"bO0= s}c/9*UQw CX(#@>E,Sw8&bkPnƲ/ gwb.2q4+ jf7}=L@њ"JP'w@s>uQH[ԫblwIbƑE8z*=byd4JH&m<sơeJdOh^oȩuFS Uk6i!1"U^֛a=")2SI#ߚQtCpQmƍE ns YޕܻrܗS5N/M TUꖭT8)ހɍ)o"aW jv.D4\s5yQUqCot̝&-hKStg8`l C^dsMrM:n5Y PrgTN;NʕmE"i.PZ7`?@,$"* a0s+w*[ʼ>b1<}$b:)֧fH_z (%*̱wy,c'@K*Uoǁ }"{_R{rs 95+Ԕ>^ULBWKukLvT RL*>k(^瓾]t$,[J_v7`ɕu9epCvgKc̓)'T5) (XjQAITVl%t&Yo@EQ+ {2":(55laǑ={̷ͅۏѲgӕU~[= W5&j*^EjM(K NwzQQ1 GQf/#1FC%αY$W/ wXSc:e)w[>B+n ~60UC*i($>'3'PqѦ|7(\x<ʐXfx2·-I ʩ>q4 / JC4fPڹ>C/pq3c 7~=sԶ2Ɇh<"!5 7V(VkV6?jv?R{>Լ[RGn8D@EZPEfO<kEg5&R/l{Ml>cfR0 ӵ5RS |sMb*l#)V|:t 8KT1׹QF }<1V5'R_bt ZxU^eA,0\W^-,~{FY&CE : "8G rb vsxs.4(f7*ii'ܦ8CBPmLE`\>op#|7,9K{Yϡ:"gK 2R>Np Gґٓ2xl39n7~S\idȆ,Z 76$ay. !wU~tBn>DRfy[7r3WyQ{քCW% so;&c; ;:s %YOaPf w7^esRIeR%+Fe/$mRX B`n&?>2zӃDq Xi')'P>1B2x8brE=0c\O]fݟec969Bqn$vqe,žrƵ-XSeC Yخ~{M5ZYw-*`yq?3_vir0ze,I }r; Εz2fx?7h% H`.H|]ԥUʯJF@; ,%œJ~ RML $}@;j5VN9jylviTTc ̳sK\3 {l uV0=W_;P{(1qlBU_/UoT^d<[sXga~ B aC>n_!fRǧAN"&pLx'NLvEѮ(l/ͨy(?s{v?iƻ'U}IY.']z阶w$71_qtv.VlK9 O$'=R@ $غ|֐*W^=0VLIJpՖr/ݗ`"EmZ#GsH]. \m&|B ~Ub9)cG7N'8ڏ|g0vЋo @JPW#(?S+ 8ceRu*Uڣ`z4O? 2ml=]:Q5oOv7VC6L!x1>}9o4.|>T̞2o(ؖ2Z,N|YG⽥,T2(ciʬ;:M/ 8}Z–h,?:f` =Yh5?e~/&H, S3d%r[-N.DN\_*5`!,ح3&SHc3-㳪P GF>o{S}5}y΃=0y:l,PM8~q.Rcɳi}&'n x&^<`;ZD1~ WxI7,~H3Q+r6 S8pjqGD ]fnxB&5)^ ;RUM0XYD#Q8ZŖ Vz'@9ٰf0xF:]Ygt(5Ug&1^C.7@ߦͲg}?= 7O[[g~1X!@w1M/),YSբjml4Nc&lH6wfyJ-ڔW"drqӇOEThzR- yH/vCcߺ#(Rf a2 jJk<ǓEQ+Lo #;L8=zȡ_BlYp֢;&Vt"tCOE;Q2c{UϬ11'|Tm6'm+_\>$Pd lt6{kDJ: N߳5«-U mYOzoWB[`ҩj-<2MeN7eO a_'Np>^@]/cujo9V.Q3'ΙJY1SBvRDw )ؾXOJAer M/@b3Pٔ.a̙EgW &B +1= ֽf ) ˍqu{ E.[9LSuA hz#=oH;]eiIhj5[ߛs)q;(tlkJ!- +7cYH;,C7^3g*[bc!`1$m~h O%v)y3GӒK$.sL)u߭Sd_WաYc+R"䇃1 NKt@*nKfzǙۊcmV.g/lՉBY}BN@yE[{zIHA(k&O*?_5jM?<ňTCt-rjHȰ ~%IxLָzi Uk ma@@@hH6V~Q<0[`ˍWsH.#w<LGJ! bt$';UV7yf ͯ[Y(嵨Pb~E(g•OxTB4{ݎPYH㫨>Ps{;bJި:s-|hk<؍qgr$-/!^o9u/tj -tH$aF؀$RRCY9o4_uWcS ;JDyV'ؒUey˴Gƀ+b `vAKv6<2s_!&8YFZKуvU?Nדͦڎ(yN\Q:sJv$9b2@XM域'J_^Ƌi8oGoj/X}R2l߸B^5]Ks"?Boka1{+]W_Ep`ʜL?nςuj~J;Eem4eCq5=y$~6c+tJB{RKls/C"#yZw]{. pgq8CoPٻUG:CqJ{oT^{="޽<"hetAhOi%i&W>xF, .'Wښi-.P[jNvPN+t[rKI| \#@}:>rkY_]\aj2 ETxȟÅ/7B~aeF];dY׿K5P=COgl1Ld 4c[o TbVlktNN*rck\$oۻ~>Jخ];9J$JM.ZO2V_!>DfF1.`{%Ǿw-X wK-}Ch/0R4[rMOzal…v!j4 yYY>pQ^8#rj {lYA{9+ 2^ovR;3(>}!_21e'H2gՠ<~c}H ,0~ϖmvUrw: AKTdF1㝞G5Cڃ팖o|2|}*B D3D$r31CABfWCJcL Ѣ*v|ѾVa.|%x`+8]q"kq:/Wz@9DR L7_+*,vckHjfPiъ֒vM>q7S]w X *LU ieZ5t5{kZ'{8 ʽVCgh1vDP H*!?~@B%?!֝,OgCwd NIs3NXTJV:;a'zeE˹2׌Yo֮.i^fp\W0\8ַnJ մ55zM$2֕U e۷W#ZO0Eob?> {v)@@cAxYzŃ#v 4Rmpp+itTkʐ**uG" 8l%K*JcF4?AgB](Ɨ6~%]V wO -I1Mi6H>]Y+ $_Ԣ֐&Pv2xl\% P"d)jF^1a`R'jgF/>e %X}0;/o5,lS)~xa+OЂz荀mFBۻb@1/TINl7dFA>綝Ƕ 8!gLSǃx¡Lk5 ck4r*%ŋ]kcIbR$V\Si} ~uHGW. ;==([ aϠM $>:95rcwCj@:8T6B6a>|G6*V26[׃Gyf')Nzծ~4|jL̓ Ö}L'>!F~ zB}UnS `=d|wȧg>VwP,t'V{v:6Z@l-k_ٲ|/➌Bh.n&LBW[UFnl#% ڪ}} KuVx,Ro`&_Ba부ΚZ]<>hg`=J5YrawOV0OMI  /Ry(O;[P)`n+i09ccGjhNJkKK%eZKd+hl(ϘMx @WcP?]+f KHG|{/d 9L>Gܳ䓳ت+ ,ucx!#*N-zN5_@1*׬tKw-!Y8`F!r`h:$ȨAޑWY9/Im0y\q*nFƳ  Dev".Aey?'y2{ [TySB 2^֦]H!~1Pz-Nzfh{L&?wYvSda{ѤW "+^R:E|~9.;X\I7ZAR|&۬8Z~M%f07ÁDA,gx}mw޲KG7%.7ɕZWeA 9C 9Z#%8YԊȭO|miï(xll>A6gZe6(X0oWDXKU.clU>{, U#Qqws7uOmw"F7m/yt,F%R;F뇦khrWaӉb Wٵw*GA F.^?3.`x`/J ᘥ7'Ͻ= L%L{##6 ْxzw N2$2L @%>KLO!gJ)KCQ2)<|@ؤ fu{|uI9BA톸Eda!r!\="j0R+rɤ?YpkӝH2jyd,BZ;=]Oט0 ^HYXk=/NǬH _͍ڛ e.RBly^RqKS؉wUK3tOcAk5j0g7 7fxZkhtmm%z357V\!ʠ9L]c2):fUFLUbcC(1 oO嶄 {:UP$ }.T,-w\l6yBq[ ,#ųi<ьDYXJˣ&U &"شZ:w;&Y~$2wsSeT%M9ȁö7xA"\VUxڵ8fsii^!%vbd.BVވ?Va:Ί3=,MΚOս fIB1-A&!tj>EE5= QN~Q[Š8ñAm:E-.p'oLɳpxh->8z3ygM)#r! E ayFS?rE&Ӹ+cCcnZFiW.p=^9A1^c 6< 2O71'e:=5Z;"nym<[]͙ ¸6VdFalڑ^1ailJh72hu9sZix&ctޕJºc(IL>n@t3oFS vMP4X^.r.Ύ}'woyzg7:r3ZzTG&? %eEj{^`yKzD#e],j-D"1B)(k0 ՗IltNOɟLBj_ PdEeӟoCWb@gg}1%LC|]LL;Yj'Iѻzy͝ɐn ;^} Az=KlguvzBSszlVm/LC {:L>ټUsHJ zEJ͸;ͦ4h*W/EVrly7ì V(\־ptl.|Xq-5#dȌYk5՜tIFՀiHnLT0xG ܏kH#ay *wYC}AW~NMy]U}DYfk@)(]Σ A.*)ܼ 5!XqXGrTyj2.] ͂ݪ$;n %Php":H|V؂*T[8艤ۈHn}@l2Jv*])y%E(bh8ZZ.DEd>;C>ž!hsVu;ÁNτ2Z.J꠹cs-a~G`Ivq]Ar2V4^YuŒH€wk%@H,kg;y(8skNܦ"Իea,"+;#qЗKDblVsbptUF, coXhK#Dp2 ށ)yyPԯe#RGMK~(iHxnm5@,{ p:qf68#6$u+XP:4C"jqaך04=pv #*u֎gfܴʏTd ÂbF6["G/5VQ U+9 z{%9>qY:6iU׸haI6`IU?1t1?"y>j.P~ؐ9v5(i@"GӳpѪJCN%<#v(TѰT~6JmP7$%t!̔e\,ʐgAǨV:{ ~7LdEe08"VI^?k&(lblA+)sz;ov6yEM ^nw==A5t䫏j'P1 l+?׾d뺚qG A@K(X˩yK"8+9}-0GXxaE+^-dU1bHS2lNyf%dJyS0+=|= ·<|@86" pA:r}8A ('F=c?~"!ұɼ;f7.I.`gzmPx٣Ќs/\WJx32ɒZ xI7QE/Z0acm9 z J>)?ȡyscl_mKN&OA}?YKE3cG Y`zNt CJđ1p–Pzǜr&kٮKzt[FTakawmse۸l,QNO^h́ 0ԃjVr( sn㳆Hʦqk+^; E:p8Z]83 Ԁ%3L0g>)񑳵pUܠYYRR{ަP7=\2ҙV_ꄚ+Z{\^L1k*cJ5L+k( @ŞC,YhqJZuFSI[;BzMxre j?" Q 15̩֬:.߄AË-u>rYWSE . 9DO\оlwQL15̛VZl+Z~yܸF3Y5P`ܛҮ$ޅNׂ.1pV<1n NldMEa5؟t%Ygޯ_#axəkmhshzϩ:bsOSCEiax =HWRFgEf7W*\zw˦QG~aRsusGoALy ISõZiS= im5BGir %ބH+H,Ub?Gv~N?N*-P]&a`T$CY4P%;rʑDQbG9gƭidH^Q)X~R೷QvNv<9< ]Y9$t{|-d pE *|is60?X*+l#$ \n_74Ĕ-&hJ#DFaA ̸:9`@&c+ՓhH͌x69 |0` ՛È%OD<"x*{z-0,A",]x N}rmE7$G1kE' XA$a~YYR-@ >!^d:돯8HP*J zOxAfVIlJʙr}C#[̝IGA|kz7IM&UJ4QEj P#aD74~eCa&WtHO8)b94{SFW +&R_ILŭ쵦 1tpW7`/m9 ,K8v}pg4ٲx 6IKN[IYYMD0sV*)[Q2gԗ1Lp]{izbS'V15Z!R S IU8AmUeYT t7%{)قҡeR]@َ-%z,;~*EDpɨZ 6Ⱥ} C/@C{av?5\yJhiS/Y`.PyP̥\?}F$ ` %P@tw@uzt'hyyIc03$_5rzt(?dqn&1a[טa \$} =Wvkĕc>%!B+BpP<'!H[#.D: F-dsISjb+m/RԩP?hݭ( ;&]*@H{*ڣR4ɍa̲iu_gIZg]i wEY # 1lU Ry(i&iZusgEvS%snWzW|pI|H$?¦TrœTe͌\Gg° %]J80{nrT} r1HjUu_NFȺ*$8:YgÖm-1WB3@exT4?<~@xmNMbeuxU3BDK2'Bm0ۄ||$CYE/X.܈B b3]R'7ujt۽7`|>Z+c\\MUp=IbMS(SiDN6 '/J$ B%5=b+ϽZѹZ.cɣ #]ctڞYr7b.Ɖ<r5^c!;4vmqF7bɱ0i\6+ܺHLF:Qߣv pOuyEF+1wcc$ ؒo|+Ap0yVY^Dx,M}Z-}KX: !~$s=p HZ˜;Cؒ W4-6D?O>D1%[Ctzu-ȇGZGd6B2gС}Akt#+Ï1~ BUě j*cc zF:'4aTt@7*s-yk uJ1~9Kaأ}&Ms>:Vxsg#2?~hzy 3J R_'7m!1& :ǬzZi%d1CFl,;4IXr'v`\۱es"衛gSt r\r ý׵' (FcT#()0Cg,tKH?~m^W6]tsc_1W0Z"\H2xp32X_l#rBu2^JGQ?; 7 ͟LR#ą B(WQJ:CY"guć$4BIxF0LEŮ@oImh&x[pC@?*Y"$x6@}- GØUn ;\D}^яyL`O}vvVn)󤇩;JqG_Y bDk45/8iy~{ *2/iD0,{V#@0ɷ"X5mw,_]w=|x{W܏1R,!oǙs[Gp>\_*znYM?]Wp9? $rpN 9 Ôs?7Fȉ/\+@"Y :IP9HY752/[̬3 Z:F= 5Z-Ii/?d)[t'|JqV ZЏ|v}<3B=D-I7TSܓilvs[\7 #ň?, $jӹOlz؛CQ>rMku-b3P!5K)KӹqO7RwY8qE;D?<ϥvC_2MqPB"5YPyĎƄO©j9p@]/ xH%mJ;58ݥцWx"P9&vUBNs.JTTEoyЩ!TL⋙#顗'&!D dA[8TEc~M:ǿ;;:Ufr xF eD DBPnJi[ $ F-S[",W@I1tR֣U@~Q2;rvx j1*zZ:UUtɍ s0RL8"]*+1}8d ^GjiJ3"<0\KXn\Gh" N/K-:i4Z&r9x6e(_쟒j NHal˅=,*#ygBf"Tb'EfH+s\nNb7ì>jiu8>"V%7s(%,QF$_/)֒L䰲Sͅu XFXĊṕ̖ؐjzS K/ 'q1YhX,Y cLkX;[s";vEwEp~c ҇/3jSAu#IBCp^"gvߛp ۯ;s n ?TEB^B1K!2^Z0-$5umivut2$6WXWuiU+ U#b:s)38GAM [|v[ea! [3:Jo bv k)\b2~wdYfY@=h)΢A?D9F/`u{03YUU@/*Jl?+z 09OE wO%@JAwP}}=m߸xj^cKD*?ޮRD`&Q;,V *pX.$QUD8tjڒDRU|=y -)RLQj|Oh%X%=y+#cO;U~U;_v#[\.&n ܳΤ{fR0,]+bHW +V;vQ%\=Հ&h+EzZd?c,Lh4Rӵ(yY v  Mh_|Kh_̈́穬y {U%_yY(RɤYkEx{lvسo/ۧeD3oSzPkUr#aI<ŚR{Ch)2uX#b!m#:pװׂ{!W6}?菊{>L"sׁI'@(!t0x:S84P&_*9 o܁rsjw!X2+VqIlζE~2ofYF.jK}`̊# zSO7GU2HsZ;aw^g}@q1R:|sa>wT{ ݺ<ɑ[wq,ЍZ *l1 vM%?6Z>,*ߴc]d{~̐QbC! /l.H[C |vWtW$ aA c9i_z%SK<9c˧p&GgME%ix w#'t&KTX)Q8Mb=C  &qCNgixkAM]n|]uMuvP*beHQOTZO=C" w@vh2ت]KyJhMn OLεD"FCvr=vX5gNӒb6h6Оd}MջЫ ▕RLNeWg֬8A͏ȭX/Hnp$ -YyE߷fkZ (u.a-lHeKKazrR)rL@ Ԇ)ԓDJo b'öbC0[Ǡ9Jr~4C@&m7oVcdz{Vak*pig/$+M!E"T!itzJ/4t܀55P~W)ϸ ^alP{϶1{$kn=zĺ7íz mw,!S~-" dKofkOsSnI?}Cp^x\8KL_sj,8ܙ$lʗG0:G"d!εE={ulY M֑*HNrJ>/\0Q6z~gŒ8“b_oIkc}E4h8o[8˅j~λXb?ob_tZ0TTiL?jrFn+14t1veknɍ2GzbYœA㷑# 7 ;Z V^MU:pdŧP `M qo'$)CHXQH#a3@j1Hfm:oXү1[=Uij*/ -e}sfKjQjNkyWo%aH[pxv OYߨHX|0dXDїE>ԯ^*{kޠUb]6:,#'0chW; Es`bhmDr83xPB9aQB" ݷ35h!nBO.#G}ˏF:?O}"N.MԼ5lu󌃒[*܂"o*xvwAɤov|PZgxu2t5&?شXw<$ .4O)PZCrׂ}l(䕝3΄?"O&%~|:y\R6 Wrzu"JTlp֗Ω)QwHA 7uOs08CoF.dA4 ==R|Erj3Oi3E `2WL8(2 ЬH۩Box0*+S鳫f6HlU"3 "*Q^KirtW;=U P7V:= ŋ *$:voZr('sB22LA[{4jP8m[kR_$}*ǽX2Wll~! bPd:#@Bcd߷AD&RD$%RpF,tcYyo9hs[~ݘpY|u r.+U(lMfCɳcڏ<)]>!,uB5&a+R?7{GA7~p9|~p;G;z𥯪 mDl'QyzRG @ۄRl3a"b@(e-8'M Y1HKcTSs ̀=Ý;}HT$z5Wi!iCƸâӟ]lwP'88Rػk)*rKE>L ,kfc+;JE''K:AbS`Gr5·7"W\8m3Ж¯59?w~ƇTk!OЏOTd}@EEJjN!,c{dVK~9S;OgJ@ P+V 'ZHT!i-\I,1Ge=їʎoUy6n_vt-817탸4i@څ+vE30R~Dij{'% :RN!/ô:G t1SĸΒڜ=v7 !n<{̊a qe,2:sCdoګuzA[T&7 6i<Ev( ؐ$ Z,ɣi!-%&:Zy.7ՑB9k v/yDM%ڧsq-G ,Ll:50n)`]a *%KI|;EdT`ܫ$u6>/;h89?XT4!4 vsrZ@l:$ϥ_ ˩Et6{[҉:{OThgEhw'kFc5S>oCv1|bO^g4Lr˃"+_5)+W`x:EWd_ 8RK6 eilC#-v&N7Y9W9q*r[:mZ=%Hē.AOum&LI'XOC"&);va=UI fkq!.'a=ʹ\ȵ D:unI(^WdsHUzDwQ,{ԟ!}NtNMٳ?Ns}p\(|Gr 'uWV 9 `8K&X-ϙ09YwݝBٙK/$Gg`F?C)LVP._95|5B?(NﵽI,kJpS(a{ w{,,Nv{_o溠.V2: J cf"b1s|gK[0n}Y[jPaן KZjL|QG&4fv^jp満Ox jgđ5q3J ](S]+Q#@.}_A8!rTf6'1Lxo߹sfbym?! p~^@sGG|E2ܵh:c@<+W)E+=keUx^? Goqk] AuM-x/2$MAf.J޶/ߐ8`7P<\3<A账xV+U6L~(JrtԪ뵝--5i윳*9:v'c!b=(a0om|btugVsfGEr \/_A6P{Ѧ+dR&>/SkFaT $aoefsEj6pMkqsdCMRz H$XߖB]Eo0W!XG,{ege2Qyr:ǯ%T'&F Pp{!!KɁH:We'RZքjULߵ/V N$H8ȴ[17ݲ Œ[Ĭt"\+6F~@> q$Hmڼm{V;F~h/ʩ wlתT$,춦E]7z-ٳfx>ۥ͕E/B)x#k,9 [4Qj4~LӞ'XUXTyO* _ =ttCRN6:=\\ S`G'uqRޥap/wgK1 l)]^;0f Who;/}[,ۇݓvFzN9{$a%Pj>vYv9!.w`m pl^䐄T~7~+Z Y*WesfЅuRE)@=P&g.AbOjbv$,qCOs=w穷b﹒;:=@^n3*DDD ٱ WZxč@-cֲ~/A̺SH@)Pz3u:=Kfb 8$0߶߭qԈrOPvL$Zpw9د&%dT;9,jYP%R@Xwc팣,aRKB1|eWK2Mn*@'"u)iQՀ$[";yB'n2ڔ晷UUKIHz66[K^b~:߷@l:P,sN "*Obր{iHI 膶ᬐG8 sР +@c[W^sfW؊Sоɼvb@jqTwpy~g 6⦾৽ef!p]~qo]ҘonufD[ (| 5OàW@D%9X =lxsCLtͯm[*. Ko.CgfcF==4R!Ƶ:H !ol-v}; uH©䣾;๵4y\l B76njl&ԌkFy:Qs*!r8k饰!%P1c i`/K#FA{ (}hzݏ+9WK̯RGeYxùbm4a9_9ĺP³42IR夫2imXiF$0A^Č?MR0w+~Yd*EjiWX)]i]L{R[sVMK*u2*bug RF4i,0/,-[B-(zR0BBx9ePVIp0븁e.7{atnmtcj'0b_X5 OֈDžEEOr@zPP'Da2WK10Y4vj5‡)M|?Ü5ʯJt0mXɥ LU/VBi߼W&+eFvAL&%d.m7Hc6}p4[MGgeXTugY_`7ݷkD0j3h 2wV\nsI:5㞵Rk^"BKW ZzY;aWD-'C ~M :VBtL|7OO2$D^R0dSB6%-Y_ڊTNN"K3Ţ9Kmgl0^PN.Vqο}đ%[$W jna ːe8Y,<%,k"捹 C &=@ʠpOIxdz^?HTHr%XOGy#^߮(00y8Wo$SYAi+Pr,+%3JLi-XCnB d;B=&r n57t1qT]G!N$/Q4MhWO&2j8?_C ߭a حVFEtlpN0szF]O[3#NwU~`SN8Ft:w'T[۲*N-N3G5tqlk~Ellh$j8灷 QQ rlp4cs^n όqdP *i =xߙoBt=2ݦ)<)/3jfKQ;>ZKr]+hCO vgqYu8ʳ!(rHt-FaCإ>Szg NЗx:#4n w<~6_UD/!GBGk.K gwU3N,+Ms[5Xz*%]lq]ÃE384Yb 0ӽzW TVbY\8C@/"e wk̲%R8/Z9Ӊ!WY7iϦa%'=ejbdf#5< Ot w8q?*믒xmUwP]HuJD/ ɐ"}-dfKAjS/-[(n⼎4", QF' wS. r?ӌ#@ʆR*-PVH*"꼎D4b[)`̪4n N} Y?Kc2HVX4eW!0׍HjPD3!귭v Tkǝ> 窗"@# .R[P2b<HovtwNw*qttiײA3"j6Wo)TaL6~,3OOBvh{{s?V|Pz6{-Hg.9ni*_1Y^ZYOr" `twXਐv0JDBe|y0k&TMV^)6<o_%\sYݕv@mBB3c9㻌5 ۯ8J)JVMƷ K7V z9kqhY2jq td\hms73Lw篴 OtN(\6rUB]PRhez?@3_-G%^{2\M9NtAGu0G(iKqXVso#&-㳚QDVҸXo",F[qȻqy~ /vTCZʞ9SGV; TS< %gyR?rv&S"!۽KZ8ͮWDҡtH~vC7Q{g'ÙNEuMik&[γ1̌\z(_oq$ØS/l8^mwfhZt&+uH0X ZYaVj[㼯PJy4w6ϾMuW2oHAa`KL]y;_) Ԣf1a! ЍSU^!iT}%^Gj0R8j*2*ېQ`Rmf{O+E2ZVl6Ec,Z?>Ҟӄh O @eB۽'ȃ}lHȿMx]*v8eW @xʍ1E]@]dp&Z! tT9f Gċ HOt&=j4&1Id.pKXքƌ!$6#) I P#v=D[ˎF:pQRu{WjahZP02pG?V]-VG &#Odnxbj]kmQz>ܧ=I.'|m.ݎsHO֔_tT%Aכc9 B_Jo$N^5A{Ld{B2aF7 ^Nteyݵ_~nkq@j抟C>\MQ j7*xHar"BEf#\E@q%+Ŵl[xȋy\m~\pXJGv*#Q0|_k_ S?@wZ]Mnw-HEqڱt*g}h뿉ϸnh*?N[-3kSK5!L_ B5,IKӐc6 St^kE2ʸo lae)$ױ7Çh)}tZ3U(GhgQwRT_bmU ;;b$fϮmaS]-13[=XBɓXRU \{714ZA9k痣 ~թqo+Ȣ:D"XDl)EW ~y=ߦT γ;=YaT |Mꦈz$pu.<v+5y.ɨ& 368oߙÉ$n|b3)xTLb133*Ԋ/韶cXOԙpijAÖQd;]Z'f qM{$l}^M7=B9swE[Dq|ZmG9#V+-la#KFw"N7$6ISF쁞UNz62ܔ|LmPYqFh X 5"ݤ7A|,,83/B&J,%$5KV(;dD-\țƶ@ug5c@Pz2wGX(Vsr< ` ))”*,!aDMȇ"Frm[Y 椤`i0ehըL墂o'c8W#'O?PKu'v_b_@LB@w 5З)sV)+>hЯyv $;b$Zۆ%VH|61QìU+c*@Iֺ;܂O"fzͯO ~he!unZ( ƇKOd!"Dᒂ %3-cjd!ޝa̎e8*Umg<OݳnlKMR _/b4vPrG[`[C8.⧰I98HĶҶ'=~UIXk岮X> J0~w3P3S:K= Hb[!v>|V (<8LRNHm4c;S:h|BttdIjzHِ|Z"/][KdY!w1Tplb9X8 E\N3ש<4&i_HwƄ"xj-,H9Ҳ)hTg%'Q5eBܔ Ym4t# ZX F<<D%9熔NXaC m𦔥&_ j~N/"1TLxNΛk3 ՜D *@LtD֦1f|~h;ގ~bL#qf ~|' =5yB[H+܍E򏷰Pm lA \KhlcʼVWSIoi%h5UJjeɑ(3!-Lxk5F \YZѣJ$04z4'v=F}[_18 9t-*޸SZ 5b:"U m qI^lbyQ2.-n95sL$nʕԚti/~bPƈEG!+-A@[C1Ikly ib|SsD L =xMT%5Z.!aXsUYH8WeEAGG\Hq~g8Ji| qO᎟@pͅpP[R3"f8g$wx!&x Oe& E,a\fQ\l}oғ3 |Vzd-=j&?GA\AƳ$\^"&\^ h(#O+q`IZ#[t4)3m"{E{?b"D t\iWo蟆oHNsUYs?kNN}cHꜽS$v^/=˟,k;ℏ'pȹJ~?D*%+6C՞6KhG,t>LYa)e^l0}'Xf|ΎfM W撲 _^f36j&Wa酱?;9:d(t\*t_0$ڿuƯøђG%& G,y>>ϵ&.4nEiɡ@yx)3 j=b7PdGd7-B~Mf  ll:Qn `j=KWe戯D R|{Os'P*ʀ %xnz*RQ=Rwf[lUX M,oea=IIyb.#G)5oC gdl:[c+x ZVoI`R E_r?X5[OTm#xJBqq; ZgJhr]KL ܪgve}I9͖+!hdZ[THm 6 ;3+h0./wBNxtqu.Ց~؊WUESaðjcYl bBH˦-'& H(7=2:`25:p' su<ɰ-sBkelo 5:Nwki]k8,> T}+_ %jlX3ǸɝJu._{f5BzN_; z Z״:|RĨN؏_%qh٨3WƈN$ZY!]"K˫ms‰m5.Zq$gוPTZF;^WI4pnZ5*ak"gZ[G^ q} ]"Ś2CZg.pnE7-5mc2lhPjzq|{C?HqG["h}|8KH1JKa*ũb_c]X%'gcx[ ׯ|z CȎȰI˄yB3MNSxEC Pޅ8$Вvq$]g׬O@8nlU飫)P&뫪2ZGp-1C7R%)ZRdCvXBLٓD;( vS?}5{3ewL?0r+=CxL9Jgo18]zS)|4A?>Bt'n!ؖZsho4Ajԏwܴ}+`;z }c =̶'I7K?. 8b3&(ܾwCZ!0Use- *l=l?eafmt#+$MwEqb݄Hwc(v1S i ՗:k^Wv.8 )~ΥqkD0L" ّ9_,g9'fUuCFR~?)6jWI^4yă%&޵hfRd&v̧Ұʜܢƞ)rfhMԼjE~2 k~ Ǹ!>G4"^'!rqpk3/d3_DQ.,վi~2xQ#̐s3(֢n{kT\o>N=-ؾ\ PI``2‚Q3[ɓw=—ߕ,0"Xž؄wĺ H%ؒ8OTsҞ=Lm+$x 'qM4^gĴB|/…p%szߵ):֨۹f֜r'±ͫ|N#KfSU EtS_&'D3 @i;nb>ĕal-5,kώ:U/$!X{@j5Hz|DMέy:Mk%XP(b=?EU,3Ʌm;=yIz%z9;_.rڽu|}fFx2j pĂV9p r$ؽ8AXIg0FƍI2pC2%&]blg»{&hF74DRxufx@HPW;Կ#"Mu݋ nWЋu؂k:I14⑅Jճ<<8| {Y8:.W CcȵY):"3i9&#hcma=m`?t_,MX#^W` f}u=E{r]WY^5³.3K >{is\ܱpptp|wNeUeK4F,=UErmA: L '#,;_… +GaP-?? .t8+ YJ< ~޿G ]؁NQAǢOJVhiubHSMpS/2\ݰ/GŃ.xh]?[ѷsµ2̋{g^r'"몡'5ETrwk1Sob9 EpU/ʶr֋Vݒ*NJ߫%@Wш(7?B^JԦmRݼ) oKϞALoĉglX9JGOh3S>4Ncq"?~ 5+] .FyS oGJatG|L$Xbq}wwu5WQ;k}? 21u/R>Jhw< j 8W3 -*6Rh;qFv3k ş IOO5dü2훜JV_/@n*(>( UkpTeF1N* n9YaF.*?U N`k&T;Ip4qY}l6gߊY>m+.PA凞Ḍi͇vCOL俉o]D(IsʡAAF'V%^-QU>dH)4E#- TO^$4lJ+n9ڵY)5,>Ƶ-%C/BiM.PpF v"Ǚ ̴:[i'U'CLOݞ R!;F?SUwK/*}> pE\=2ٺNŒjG梏8+9^3mRL-ʀI.*Ƌ[a1 Bxi4iN֌!\ۚ6MmS>_W vFJ B#>rR1P`c~D^ [U|vFQɄ?:D%ގ#mG|eC]ki֮E}?Ҁ1u/z+gTȢ1Iou=qo UԽqo)1TM2֊m L271q5^DݠG;bc@$2=7#/?G?,{%OP5$.E}ߞ#To7sㆠ,ju뾪 OIʹ`6c*sDC{B j+X:2>Iulfn?|@;aҽbKA#g[_2k\Tk󐀶A-Z@|%u֧{蚐nH5xC1'k&Bo0;>w ;80PNR˛C;Ѵ_ FKmH.LafȊk,[2k]:~1::ˮL].Li$wiOYc]ai!e3K{/"%48`%w'BSn YkoRWw5^Oi~iCڔ*<螟%+YQ>9ۖkl>u 4(s .@h@>% kuk3CSY5qM*k1lEkC@O 5Mo\lk~8Y{@ KȧhpM$}+# - Of4SE޾i\\p!]Ɗ_tZ#F~_4ioA12 R (1}Y~2ȡ=7`;䬲U; ;d őGH+!`- Zsw4Ќ2h%~at<b‘ 8dvynUuZ/4VػGD6G;R:D-#fDVLKgL]&P Zov#t@ȑ}"edHRF4I=m}9n>!P;nh7/ȲZIVGI_2kM.W>x~\[*st5LA6tUKg,iNE"5R /W![ ph5bk=yeE{5mu;|V7tdMQ9%n0ܦ{]GLOi)Xɸ_* `zGlNeDn7dOt4q,E Z#8nnl\x-n=9%ܦtrB#5Zi SjN3B%dT !MkGFuosgjeY,h+)LT,O Sr<ӦRpYrg͂)8}9(žȴu G:O%>Ĩ;BgO~1 ړ]$@:ܴHCO,$AkM4; d3UX8݈&;ʫ<+\h1AT #àx?fe X[YIfCfgS>"v^pXXw Br(Bʊ1j%JGaU0"S#/EutȭɇWKSNAҀ;;EX* tS>I"w[^iFL8w!FZG!3OO졿yA?DӀc?m=޾1 @W$+?ꕹ(=hYkl9ߎ6"iF-#z/2)RMoGՠ\L-/}i`| mo$I@B@C1B+#b};9Mh&pB[PT H_뵵Jd+ 4 Ů o3fUsp@т󫴻& ESva!^E2Bwpzegk>bxV; Zcw@n(w\ćh>fOLY{͘p͖f]Tza'p͖uH+2١v2N (L_N,` Wܵãg'JNJК X8FC8S{4&PW׆lCi QsʼnÇv\+GC5%"ǰ+bs7\0W0RK<=&yu Ÿ]Qrt|=Ѩ#:7;Ξ?Kne swgg&)7z@%m#^If.icZ%1!6fCzHؠԣ"ߵT 4/u $4[g.il4/"(H$pЭx*_ FSwՆx:A+{#uT=4lP&gYxW6ٓfeswa*X&2@ϰK3iOJ@^hoՉ{{pTI4H\&yv(?&8+mC%*ee#IM0=o㪉xAs$gN*NT#s[<U 4Sb,%\ f~XF u@p3J)#wFiYˣa0ܐ0: qF#=8RA]ב"5P b]Zz ^G~2jմ<L'/رDs:(2JёfY3l:gAhDGZ,TYVai8KB|ERа3F)kTCDȌh޸ ](-g|E&I"T6 hA,: ,09xx,T'n"&2^Ca`[| ^rxVG=>Cf ho% PB*ky`q)4劅GGfb  Mtf|×ҦlmӐX>gAc08VWzFa)N+|綻WӽnRFb:;G1m @Z046PtKA6i56(?8},}S?GbѷԌ@غ` Li-w~dž"Cs͌)9;~Cr b[LVx´eLwܵ{o2lM6]xg|җW æT,MPՆNcv'`.13 "_t́)׏mMs|]#bWaHQQ|rj53Y9P[쇰om#c#E~Tm-7A*1[v?v7/NR|nV!Zh\(CE5f(ra֬Ŧqsz6UW!*k8~n4#!ڠoJQ볪Rt5|$Ώm 4)2W<4['ߥ-D,ԫ6R =s)Aܒ鼈Îtj{PGK z\CZ̈ċ[}y/N׎VAh%i7[DhVEqw X"3#r͝E/+9ǀڔԄ4?Fu:I))-i󽴊BG!JBEs‡.g'K S9n?vΦUa :y3Qd{@nCoљEg)pT k-5zfdZ%huRgP9C3HŝAOKkNOܻRozwZVÏ(.N2oGl̀yHQJ$E81m\"c pUhyxFZ|D_+tuKs-tTMU12ؿvI{RT4f3¸g, 2l k),PV -Dj֐|1t!z˻ .7pզ}8 v7 8{ϩhǼ-4쮂qHf܍f 3݆`Ӎ/<14+&GxJqX:ǔ4"V>?Wk-QDyʟ[:;o?p sN=V"_j#JtZǣ_AI1lJԌL 8lĐ@ Lh.L}FvM0OƙwcNzd+VU>Z \y>.98ϾfQnDcaC[̠*e5(g]Lv l*ۂ/jdbfs:v]CB{nmxg37:7ش!aoמ>2:ybm?9'P:Oj +c:(472W}~Vi )'6ѡ:d' B1o" \_OaQ5\Oz:ޓ%3\Sp^Xc>Xj&MLOb% ɑD !)cSM$|XKS"v|g0YP, I-*b_ࡹR@m{?bGQ\;JB3;ļr"JG)fIpV O!p|/h{yĂ5A[M{V;Y:>g<6?Hӧ 14e0c"4iTiGoޝ{FM##94 g ߪ"πwBL0uosRǒ1n4*ȯ߉(JUtNo[\=G~RPhAjHTˎjъqhrj(w ^w9V R,6WA }<,r'D JjK¨H(_hFܗ934UV. Mq PAø#g׬M3xw%Pv$5xLpY+M?`o J}՞fR.^w|GHQ}?#6ϋP'XD>Ÿ?TݾJm&WRѹkC4тVvWQ ^nǕH/2z 2eNq)t?)':λԟ>؊@u`+ٰcw-SWK*rE`H/axYƳ ~/n(ekԣ02lK܅Cbnk))ɎƔǾU߻jm|cd;ɜ A^ F[@tk|U=#uCK&$=.Y@Fmrk[mz72tp^ 5#j>v%FzsXh 0{sʄ1M:=VH@E(݆H'E{'7 >] 'Mdngݸ{'_ѣЈBY8e65.NCo-'T:VF]H8]Q[m4.)KrʪqU!MD; PbPU@)<hwIj)N(#.0Vn/$t2 &s<.t!%>a|Nԁ2 3䳛m]%QF,nBi|4-5ʛ:Ԭ~ wu)|dZ9!uXwXvw V'Z8Gh7J!GZTb> (ups<}5z)Ӽu/ *D6\1ҕ #Tw]ch" Ue 'LMhzʔxOU_F6+?ݙ*Mqݚ^r@ㆋ'h\9eLVzALu%Cmz8\eWiacHAotI9@'S |3ifSIK; KMn^lE0O巒qdzn?k|bOq;#:_"];Sƌ mQeIo6B-#Ӻ~sB%B;@ؓ<Au/A:B2߾ #q}yIm76P.{qHpbh2XʯdA_xfOX]WH\eըzao̻{b݀XVҿ[ͦ ћ_H@Na%L$/zh#ICZ8 Yq%5G*_.&/VV7IAwQX6DI:*"%˔%`q`."ud33S`$V%U ;ʛ;9[}lE;M,ģ|;qeY/:,.H\qɫr ̳(4PdJ ~#:7"b59ҝ_-:nF'/0t7+B4r"^~\dސ+YM5$%ɼ_=}G+k}88˰S֡2xC/1ڏKHkOA^$P7+.Ϙ5<8?? +}"Zlbr)@W]è[•`ue@:ZJ럢4>񲣿*`A`ZMm«I }>` $,UhL@0@m}%b #ih?]E'GqHCd6?I$1jpqk%H>R亅'(~$~J!R;:5dܸlH%JyF$RnaEάþFqZ1JBqlRCΜ38 7_CY{zTjAjhkIкBAٯS%6Δ"<X q5Hx_~=>ft<5[eY#h-|y+lϬu0~ޙXP8gbL=bX 2a.d6< ՌvSӕMo bfpO0 jr!³{ kU_ jv^2_nO<A } T`.=s/0$>u'Cq;;j2XUCX I[0Z}ҔJ[O!'#]Qů2y陾 ˘yR5'ߠԗMďF48zP`f~k UuZOCbC~]^BgqWg_Jl,l>5[(GWjxc*c<7 μ5dMZ*q1^%BgS$/N(fr8?C=Ks?=AXbe_dĶg:~c&/*– hA |MqͲv"p3R5 +b Lc'Pf-6}_BadXg%xik bCKaCrq ^1\SsⳀL)Y.C;zq!zK&ը,YPX%Ob[hK;4VGVƉ re RCͅ/<f S Wc?㯻#B?ێwsY8X)Z$KAOaT\aE!u3cK8՘V+%q,=QoPڝPdk ojr_IA"&0)R wG-M~ctɍ 1Z4JC6M#+qdJBQ<10m8G3ZLeKpu7y32=w 亭m<.R609[&!'ۋ/Qőu Yp1˟P]X4nhi`KM;5j.M"/|̔A2 7ikx HŃOS]~G ~zU8 拰)mAb|xTp͸4g/%17* x.jHra*qkM']Bt\7Mrt,JykrGa^uHQ;2¤UH⽧V1+)q>twlc2]!} E\)&BqnhٕwJXg6 0qcE8 8LkVje+~-C tY]q OYQrV-ݎP8,^- 5 }nxSVt @MsXN8ȃp`wespK(Ժzҹ:/Ov.cx>UC$0u/8>qBObjsO9[Cq*I,tr"y2#IiS7N\ZX1.A8-ͰUż{^n=mΉEӽݍs֪:9!v2o1e+f+7.C&S&؁|'~$ ߤR;uC .|$[0n&U0c= *%!IZ7|H/XK>csjZFz߅keM6ELpDI/֬)( 0D+TNȃv#W&[ .$@d|,_ ؏Oҫdqc4QZ ͇p[>W6 CE70ag$qɳzgEړ%^cVZstՈ <ǬNlt6GoZ_FZsmLIh-3eP{50iUԾG{8^3wqG4FP}I0.(b'-mSM*lJAb#B' |_vT%n19c#$w_q;J -hPo5gR.j0VmvUە4b2dsh)l+,ѕ0H.bS4ч&jO,4,oM+j1$ےluA'҆ {B>] |OJ-[XWFEkOֵœǞy 1>18\=6@bR#.L!87(y:qwUw&J}Wύ2|^.g%e޻fait_%)In/? kST[)s֧]v;+tSƙ73)N?C4Gݺ)vЯ{"~ g<*w]yP-N=a& 83fZeeq(9LwALw̆#j\4-8;D0{3UV! /<V7Ir)߀;f]2 = :֞:e_xuZɞkӍSyD 6G6AN)@LJH\:5Jud;.jǬ=,J7g޵o2v['x'>(M'4!?%;[9LzEe#/x`|EJx˒:lߤl9l̒uoQq;" BD2p$8qFMLq&8 # >d⺾IHfj$bn3-Q{i8=D"x@a{C C|XXt`oD_Uv⥷w/x{ 'v뤈fUX$w Rґ8/[?u ͯC+*pC&6- kk _dGtw$WQC9V؃F9TyԜfe8dϧ"-k%S"-1/C_˜ɪIw5X1;%W]C 216Bz3THH2(mXdZGw%*PSQǍC}^'tΥ%4en8̸ S A晽MzI`MR-̾wp^TGH^C-ip\Xiv/-AB-x7`RFABӂ;䛤a?v9 4pVK-%'Iwl'cd@tKëx6zO(Ʀo%\ #PAb|J?ll|Y\4 UWbf9Ӻ^%!_ 9QsɥKg4O|ESƟ2GHlw6](NPyX9a&}ݼT<&{X3)-mdt2 /1(\ gReNVuvA'JFBK~`e;*mRBI#~IJwN?Ã~*dL yyAVإ=y~:kf ]|'o>Fea'Չ:J%vEDTjUl7ׯm-b6ܙɴwGFs൵3Qx,ISv*py66=E) RAAx@ usFd׊|ͪhL'jX&EV>X'3LR Kߞ`S1Ro v8"At A9aEq #_=^@U:bypQ&7(Iv*%ۇ9kJB v7]00U"/sm#e; #fʎ'hb1mt3.*c֓VT*rq'cXNs&Kg㚹SO$^_/ra\dQ [ic(q_lx""w4gCSN2?R5Lɚr9tqԄ(qIsHs2LJ%;A1bEGk$rPѦNX9(Úgc9]]!ы TiYA=_#3y2Z;ҵS) ==Gֵ<; KxIƢy>'Y.". sdXAQeA{ ɪPrK$ڔ1Cw- M Fr8Ҭ[:G&ޝd]d@)f-C0}۹ywB.+^%o:>(:U 6P ]j짮|n7Fi"cZgX؍*5 \3a8g+f'$Ƿx57E[a$tUP 9nqØ,rQ 8F]X.'_^F"7 FD >UvwԚnewM9=^64"Vs/a^#'˛9')VuD&^v@UQ@ -ƷQ1D'C?HVu9d={s5tj$(2MmĨB& C'S蹃|5x?'&c5j"g#D=(@Iz__i \K$6iKև5c{3ao.avn}qip_p1jzhE^N.6DH\y۪ 0w#p8mY&ŠZEГ"=ƦDPm Jn/#+4}"UόWo٣`襣+9oto}n1v7Z*]ow6(K\I.DWVJmƾԠ*qB@3}YBdWFy07r.yapĶ" Ց. h=-5kE NUA q# DBj16ӦOnCMvTF}> 8-+'VLpݯ/~^K։],@6o,D Ɂq_ns&Y.K0l !!E^zLju ]WB*Ts8!d#e#AuS(oaw#ېz:8< }_GQZ?V9>c <G\5w!;%0 FCOHMXD rThfAf ڿ#L'ؖzSs=P:e+N$gȴv-cؠ.b) $_}$G.( Ybo-L 0VuvXZ+KP_X@iN8uz ֌QR ,HtuvQ`"Fg`:&kn17rτ$s7լ4#.>4Ihs*H&~Vz,᭩ʙ+Y2>qm~Cu۰4d9ptv%3(;p*Zrv1$PKJua>ޕtk[3=1,Jv0LIZ n  3 @>IWx.L*yr2q)I5t;&4о-mhAupCzxs=mmiQ <7n8{oc%U}B\)ߋ!:þC mK6Y?5H5W e2>HA ʲŎas]KTءy,"7+T34f\VMHLOZѬ% ;֜Ctd6@ #:c42O3U[~n  2)#k`aLRB4nհ1)KEfʀYŨX`0 ;!ߨZ]yLf: EQ}&R:+=%w3{vwZ3ľJ@R @=q^,!͂nW9sg דlF/Lq-/ !a_u=t uq9;[)±;D#`pFi'w1n}=ÑTrwHHB$6g~&58٫m"a=:bl3zEjYkV>1Zhp-=*|՜2[=4!2+̐;N%]O/9Cr}̝:#DdhC8Iy cMSDlSyM 7nQQ{Cw'm)~/QA_*y;"৺#5TWٻGo},ld*RU;} (!sq@fdwyL~)Wm1fI.%k0MDIk~\U|z c*8,j<_ ǵlG&|Bǧ)h*&B8;kIu',cD& HHW6ݡX0׆; 'qlN}Hm=qzEpج\3aՔXLFxS!K*ّ F])lEOW\+!1 w{!D^[OFOJ=[(\xzve霥y?9g:r?,wϒY\!7QUKwn.cD'J* >u g QW eE"kx##LEbW 4uit9-RYAZZ<3"EBV%'ʐ.a55 Q{<wݹ?:k -N 43mLBwN)2/ɨ$љ#U-- ]r&+&mI%- ՒN:A9(LL~y.qᔧm=.J?o h 묙vhdqLYI'7V {j:.C _ɼ[%øb d"9wRxY$q]Rg q0ZHs CRY r*j "j7D]PY|Bulq |r0dr$$.Ry/+3쯡*qhF6*{-u^B." =PA..n$;Or&/|j7 CGaĕb~hb}8B[?5g-4uaa}Ei/U?F#1"pCBEM2ӆzoAx9lࢩ /gBabkS , xZkfŢEZ锰[kpy o@C!+q٠izrlAǜ n U(JZ`/n-jG.2@cxowC_!0Mdg`C1*:ݺ7nrޏcz,:س*>+ժYЧڋ|H2y)gCx^: 2mId(=Ǯcy7EEO|>O#H(|:ݐ":kNSh6 HPƫv= ; ʟhx!VK_"3̟ΰ9Zwu=ҿ@(xKƠ°@b5_uJ?|DШEWƙ?QCR1gڣX }41FҭB Aq < wNמˊKz*#}7gҙr.<j? 9Yc?ru/iӚ2 ѧ>>m.Em{5#Ѕwqwy~/R(e'*9IkzL)(/ x?UwZ4``HeKYVðٰ5 wb,b|[ɀ^Q.NƷ;33{1Qd3AC-չIZ7ת1@۳ It̀ƟK <Ѡ/6fJdW 5<9tTY0L |.1}AG-B)?*P=+';\߬]4  mD4V%S*kCۡUS -aX>݋J3J@ ߙ|@H_G%ёw5j\&VKb n Q(xIlx]Bx?Nfq~QlP:|i ްXA> g-Ux | Ęh귊p@yDlƗۮ-0`НXD6IYz?ZTģZ[C1y?"%%Z@@DEhar>i: (s#ߑ:n(p8sZҗ[:ݗr|,$^MrW&1l*-jREĵa-fR]i(v,;Rb)[Ԁ*eF[8ݬ>͘yMO]|p5I/Glo!N鈑*Aq'k] w?P:!N&QuӁ8 KG' 0@h8B7m|8^ vW&B0t´;CZ<7}* B6VpW2i6Q,g "uAKڅ? Kژ~2UopcY؇271KO(sdX3}U1y *^$w}.Ip#"=0P\ecr(C8fuD=j0vݿ9bl噱8?'fTRL?4;]h77n*rCUg!v:bˌLR[Fz,P%ލxA7 1D i93w PZ$閤lƭn)>ZQٽn;,\o;@>eQUҡ+F@AaZ0B cVÀ;i'7us㴋D|R[$20t^:}B *h*p돉ܫRD řEHT6݈#pf?$MX}yME#8hd[f`gN*P#Ir e&!:J42ƨWqg89T09{2h7~`:ŁBeř 2DՖ *QfxTfFa:Atp|欷ʚvX.,"*!E¼h'iV`( DvWkLzMU./|2zX/eW͎wU3ٛVLjE789Ùڒ̈i({/1'&_{0ۈAs oGQ|CQbf~0Y =j_O3A{ rsCv@6mu"$I9ZaӍfeuuIϢ ]xVeH*'P,hT&V.uRmutrGEo|Ăq3_pa_ٰ;y nY)k8g?`VKAVp|N,Hv G5 =NjTtB$KqoDq HVw$ y,p~RO}7RZsfBʜu"VT!7@3ʬ%ѸYe:pHn, :U3cd̵_˙نdJR&v\܍yѹ49ho#2xCA"WfGSưIO5{0K~M"$n% nd S,%IpEkB6Iа1i>x ]no6oI"Z:y5lTRVp}|dWb߼f|; 48 y:םm^A።KF ̀e$^A&{!Qt/)J59+xwAj;JQSg:?%އmjN&je W*:vyrX d~wja @F&$L|6y]UsC[Ai~J8 NL0)GJz{T\;yƢQodaQlԭt[x1F{=G_*W l%"[%s[:*.3'|4[ v;!tlSÑ0Kk|Llł)q(1ʺp".Xq)=rroϜ.TC3oh2J!ͮۢ %r!Y% ES&!jܨˌA79A)EiiUD\jLlz9w~ek"sۍTN==o>赸o],RBpMϴ4yxfzBtg(xlW< 0At^c2UN>}ky!Ӹ*&mLBb08.T=]̎k{nzc?.b>aKͫ,$wrb-WRM2i霒VĐ ](*syS&!oݻiMXM|,W}`W(zoj.\LtlJtQssaFHܤa)]}DS"0/~!/pҺgp9:#?!6v<(jkBP4kxz̍z4F; +*L[\v4cQdѨ\[^I-(vScjSc'\G *ѣ3}U,rI'i%*Ikra<8lg!/lVGlH ۝3378(f&&|Jo-#80:kEJⵆ6.l[דE.gLv0D!eZ a*W*!3h;G|${IO2FNcM&?;lw 䝓kV*sѐzV r|dw!y{.酀>A" <7eoDq p%\{ciCzęSSSg'8Fwfr[Hr٧=z$+x} 3,w+(@+7,9:_ey}M;YЂ9EYGqٔc'D/z'IF_%kO^U#Bk\xۀð2 AQoUTBmea31co(Uo8m:؀.`)t^)bkj /m=%>a]bvT/ 掁̽6#CE.wȐ$ĎG"%KAwPk"zЎ@^v9x~5E]@Zު?iTgI=}(O⡅qjbհeN7jTP톕 W[ܝmܰ-`cΏ|%NHአIcdSQʿ-߹byˑ?(W$:7]_o+Rsb :zFmhe/̣:J7i>A?F+- nC_B,c7s Qխ]?׮x&='K=;2?#^5Z죳Fz#[J$Uc8.X)4щ< &}vc[0QG8NטI&OY&PF'a36a{=4eD-ľ pXB\c@^#OY~(877Z:xp4Rk.plyٴ# *<¸U #ծ}2}Vh$wV# u SۑΕ< D\ϚMۖr^]X@?1%.\%Nͩw/1Uo>w0S^m\]vٛ~~KockNZnZ9cJaRV\df&X-`Y/OM]{ ΍cưLǷ=usnN!<=3]y^~Aig4b[-U6Pwe<r>jZM}9V Q:C䬩g,Q60)8ͬFqw,&Ik#~~6K$i/ߖ}EnEȏ$^"x &x!uOp@ݗ1D,jFZcs{8 @7Dq^z]U/7AԲ73^r$Wmm /r$a`yvPm[M=sXg=*ZkHPyr k*Ş;+c Gd!"b 8Y0)!]/zvݷ ) _e{iNҠҙR׆xFz6M oc&)+s]JxS]!rkUpo;sMCgpx4'mmj}~ -7[vq^tt# 㥢(E}l} s]6_]# fwG;<[%=O_M#tQ8ئ$kWљ'Vi m%|X7m抨T1,]K<@ B_ )2:œ E&.6< jnuZgȥsJ3E3:ziO:J]p7b6egScdY52pn䵼VEWp.,&S0f<p6vIjLi, F&5̑NZFN2n*g68x~fq4~4+uYu/`b;ltl!*'Ā|2&4ڮӊPY)*EA^\ݺQ["? pz~0k{d`铽^3,~Qf1<[T(S0xx?v U<-*ܟ.#M$N^j~٨7[eamH PS!}N `oT﹵mۻ.si& \RJ&#Yǝޘ!n%RXg'mh\ɳb 2@maKJʬ~dvXsΉ7us?=ZJfLJHz`mN<9*eAgʬ4 F~FW:8iǯ5:7^ Ӄ* ~U% ʗV$SΤY|u%40PVi!meNsh{DN&̘л!j'HM5 k؉h~Zm+!mT;S[ܦQ2a472F $^$8MR7du(S'?!땻<RO]1/dr%ԞyܘS{nSi?* ]oSF4Rd(!zo7?) [|1y!DGP,=}9i~{jP 7,B8_îO[F:HYPW G1@yҿ 1}]H`q}S^3)]+NB_{ChQ?$W@vڳD3!\k:V~Mmv=lT(vZ^];@'aAn/ٮT{,Β,fXZ$R{|b8ָT|rwkiv@á"Ej#QZ4z a]`e| 噢^Y?XR"u7A #S0 #s^<ۖ9@u8W hC i3BffyOļ.ڕ,օ>GAR,Ê)gqrpd$7qKHsH;'YQ_FtRexs-^b<41 H[@g̡WLvZ!?{Rk֤>MRk1T8|qcشwN-BM[q%,Ry))/>GA MčXE6{~XNc >,?*a=nr3pueMuG,H@ÿU00mF*ˮg:*GQ- /@hב\x)Y'5~M$8ppf.F%fCZ3{AB <:j;/GPFSHMfu5$MWrcw',sȈR'*\?nV#rF4-W/8l2SJ=3mQ:`Ke|`3řCoεW F.G5mc5)<&v~G3Lx'C%ě ǻy4d wW,#ro95y8~׷-K/V/hš$+"1B8@"2%n܊23z;K2 %Xvk(*ݳjXoсQA6BQ -\OꤹZ Yl_]tdUUXȟg#L7]M@yw02ٳA"'[ r&K6+ma\_gNKbGi3u L!X+ae%k+U 7Ȕ;{X5bWs#>E^y+ iB&fk<52`S?c\Z hA `-+B麧/:VLY ۍN[YkDnL%׹5SKSXB.Ig L]KߝބN{2ڍNwJu t@mm'K*A@gt[G7מ_Rkl0U{9}qY &hGJ_; 9"TpX$T-Fs[ğ3($ŠT_[q8p<ȿΈh7 }9~'_PTJp9K`#Py.Coym~ Z7ZK*q!s7E:lXF=h9"}@}}[~Ô|>>`>zf]t|m֬UG&bLgPI #Dum=p$oH!_+蕷KR Osx @2 =NyY^ʾv֑VԡpfLBX#uBG\"BEɒI`Ɋڈ)-Ϋ] Ǽ`S(Xj.>O),|+lichzT-NnfP.ZN1P9DP#T,²BRnM66A؁1䨦.! df)9oؔEB hmIӰ jPeemz+i&UY\)ATxx~*{+eVOu2["+ ?YԘT zUkQ\ה< qáa­J?DBHq@(C^OaJkMa{CQ8Z[r껥M>>cl_jZem-ajoCFY쪧ԕծ%+jdjL T7Qx~O^ =Һ2zh C=] |yJ!a׵(+S,KB.mɂʆ=}f _8d 8 b) & 'v[QtI+#96/S #>XOjusD-3-'9Uf5ŽSOD!F〵}> }g`63a&aM>fޟU >VJo+k7Y֭C֦t|G2PMU.LBK:7b=3RB e7Fk>_)v>l1k%0q`1$AtYPޏjjGL~X/FbH#KY/N"$XG9Cb"R\` ]BPdHO9yH%Vʣ⾵ B|- X$!IE:p}]. v~VwB|c`*HnvRƆ`\)0z 9~o IG}GtRTA toӾ8C+α{'3Smo2;hCb4i$A؅_Mŗٖ<*y}D6i2i߈uOB Ӆ qb#^֐PC=:x[}!)ǟ_fжbw++E2YLyB$KCE#@kS+17!"_x ܁ƠVA&wntf\S\^´Ҙ3j$ v?x8w?fywfw%Лro ]h}kJ`?Ꝯ40"x[痀< J5O+{9\zq..E4fv{ڑ`X ?%IG.B%#>p,8TTPJLRZ"~f0/ $UoLlA(Nת}c#|3\0cB#ȂuH&Շx POVhKQ3[q26i]`?!nY&Ev"j 0x9xrwaz]߿BFxneaŎЄU?,a04wQՓ+ URv,xcw9l(2ϝ+G :`C1@kôVIӏꍧsqdFV 9ۙu֏V z(XZɉK()is:kJʏKZ+yT(jőuô8*jpf| ?"Dr$}uv2EޗvoE'fjLm)VkvR,A*?zآ2E HeftgF/dSUf|7#W,;u٘CkЄ_X1FeST3M!BD>؟;SQ5+'b%3JT'% J7uǢ17(ˑߢw/%%^eA<!rs3͟ǒWi?,hMRnPz>pܓ=!]^O|pxvq zf*jΐ%4'"vHQwSH*[E@UaUcxh~BǾjF#Fҏew\amU͙MڇgcQAJ?8N[f4:`J/6`gxIa!{[ 4O u]A6wk8GS JuaLv؜яn$n+4YrZ"X|W4UZJHօ(CkF Jok8މm~[Ve`ƾށR-+sb W03čf\{zB0r rwRoṠuԋZ՚ 3r'ˈӨbikf/Qk~ɎHfn76ən0Q_M83ՉxDu, }{a8D{4ֻ^fݗ.PWn>G} t#"+ӏ-WpnQ t tPð'Rɳpu >`zDg&etə'\dF~n bS:cYh忈8vJKn\:dCT[ ᝒkmwG22.: QNs81Ƙ5y1N+ ob+eA gb97\\C+cem̙e,|@“Gam5c U`caD7aD+k)$дd?MWrS=Cx Z^ ُ>3OWAT4fYSM|)},0rDy` ,绞;!PR_n LZ"7Ci[{e:߃Ie|fAYf.vO@ʷBqH"K)k_wת[DlamWL[ A|B$xCU$t4y^Q߷^TIK|8ǭ&iH?[9'WPG]U+Vρ2F#ي:b,#[o~RCGq^'$ݚDx=Q9ҷvuP9?!,1*w&,aĹhXCI()PBvhMsZgI:xZ1ۘS ۃ?CqP$vSuF%tO`}gȅ Rǿ;fb־}La:j,[šM!@bV"e/ xL n=HТV ׹ AdOz,ؗ:nmsM# ^r/?1We|d/ks9m& [A qŹUeޚ:܂ڼX]9^ -˪˕H{s+ m2N"jQwȗm6A[oX0xÓڴɎP|T+T< vy)N6I'5J]iњVڢP7+#ӛS ݥ qrݺ5V1Qik*Ə'Eж3:٤tx@Gr*LWϯ)5]F=P~BNobkN2c3GP e`+C|hQSc¦׶J+NP#d+zrMQFI?LYI}7(@b|2=M3KNY5ي rb"Ke9y@M4%+s@(W+ǫNtwHskAu2)UKRV iL0 6a$^m*iF}sTX6)@+i+-: &߂{@}9M #f) [BԍGϬO@ػѹ V==Y^\#c uDlI =QAO~Dj3 pܲVhΟˮ6zeIDc^tf K 9́K%k]PL;Խsx[፳L|,yB.']f%}6+pUneGuج3}%;a;(/f}C"Aj>$Cfߍ wvR쌄&ʹ7H>07+![蹷;>r[Z}u 9SxY@ʅ5Z^zg.ߴk{8AM g#mhY+M(kDSe7G푟g\%WKʄZkewz L͚7[c%hL)ЦV飜ypŚ_H&t ^ e>4*pfc0pxyD3ӕY MtR/Eh`ȳi)дOǩiyN 2bX=b3Gћ vyK=p=31nD|S_xRd;v\mKv- uKīymx: 7wo4M< x٦98(JHZk`Vy$vM,P|ȆI]4}<4WhP䴏ypru'ZQY2K{QP;!۝Bm$XzTfHC3 cԶ" U<&0'(|_g•XD}Ytu[h8չ"B?Izo[K{uu6UN^;ݜS.֙ەCY:3u978Pk9yK-H,(>HC#(Y. (4=+MNL'^r&NHI> w?noKdP.B5rږ?~y5+i@5bڵE>jmae.P&u,*btO` $QOsxthͬoJ9XZFZyIF;,w܏w'p|ʲMICG= DO:~L 0,SDH)rilP|pp57ЯС3 8:UE]."kk7uJ8<:ʅ@XG;Ze~ĥ[_)]T74γ'Pn6 jJd(33Rf'PYU"^f6Rk3),Ē0'rkIMɐDs}p2"kUng F#=dGI 1Rπ*t'Ij"*~FIKdFelԪi2"4GJy$  %'}d֓7(w$VGm#=YTZ* t~7Ո_brmPCJ1`:;K~ɓŪjV-ޗr<)@jhӪ}Cq0Q_L|Qج_۷<zx'vfM\W*6P?t>%Ķ2}(9/fheۙ+J!jI5Ǜt(?W;F0La(QY{t IRT h, SA<6L* TޘOlvӝ1`_ _\b8Cɯ, ɣ6( v@V|sҧ~܏N|oFQ"u 'mrECC[)7I>b2AgYIb.zfnBY:_Os+/|[(LN]\Kfo$m̵FNtl ϋI9/̵w>QDݥ$?ZWH>[3<ۢ+Y*H8k5D!|&C2iBAH;ls&>. +C*[)NyCs"mhocOg^t{u;'59'01JX vdqZq<c*sqa'Ji}|a~;^hJuC5&T T"fPO,Ys4FUj;bNo _:&y9^ z%3_m>j3wQFj.o; !7.7u dV܎`R"{PۆxB\^B/ "9(nbh:T q lrе"ݐۂ \ĸ.bϾֳzO_Kz/ a" A+K!ߕ 4} U3I}0)%IxXuQulB~nD)INH~I5j IX 2U(\fL<020o38^^J)+g\A1x9O,_*D$_Έ"K_oF<^#ٸLHudݗx@뒚cY:bxE*,Vz}w~ [?`LDt8MGA[b57Śu|&#kBZmzw/ ݽk_T:S7MiLO%mg>wɚ9`@_L'ǂ 4\p)7_IPN7Va=[=bWk+?U9KlC-nYDSRnqP]6%9(Uo0~my _.4QayT67ڪateP8s ' ϟ R#Ekn9ɴ4ο^MU}kG҆f<2R%!'2X"hu?3gWTt F8A.BF7WϝwN\-¬]åmCDwm+<C%6Ge ^?ðf5##h؁50S#'gK\f=D;t+-p(o4ԗrpw|W:XsQM~G8_F7d%rE|*o9 UƳvP*i>ff$c`E48$u>;S M[(A,ؒWiA0 nSY`l[X yR8qx=iOuE8zu0"'X/SH$>y%P|7d:.G'? NT6 lPǗE#5|y)u ro\CYuQ+9 YCWD-~JG:n\ aJDRBKU$عڭk|B*u?7I/*!&D,+]3%a.b?^``$#6* ]D.=*T PXpREo:CYM{@SN}P ;E4`64g$n& ϭTwCyŀ7DCIT M\3h7=ۯ̱#\;S9Ž`:OLO'V_pD0:4ٮ}ʏ<pO4v v3N+riC2y3(DGNJ{rNʥjU2GkB M5 _@P)4.B#k&>lɍ G?Y,q@bZ?Y1A_|Y/\X"Mԃ`/ag4 8m-nbm8G u ophlou{$"t3UR5Z6j_~Cm'9gԷGI kW(-cٝؐB1qgIHhOںkpu0-"B-W%Es QªJYp!B~W˂MAyVbZX% `)Ph]}6j_ͷmŖ%ɶ 2!Z5A 8q\$7qרg M:ŧJimݚJ1XP1 0(n{R瀢f-ţT>;H\珤mdsT&5;FV,F,M-EۨR5I(2тGć)z@dcZK|K!|!7<4yľ(2L(dq7F9ևJݰ&S.,D  7$AL4=l a>Q-H~)bM<߇ĠM3ӏuve2$"EPQR {\'0K5olg5{fnbq`b©o,ГaӔ3`A;E0tZnnT<,ML3A3 B*#gc{'|GX5fyBY]A?7J5 ! _\zs~6\O20-}$܎hEGtЅ 8Ed&xB~\g#3tJ0Uv='%m#@ղEZˈ XV Gb7jV|6r+y=PlwX]H~ژfz0_?ⴂ#:1t''s($xX>Jpe-v5w7! 9ytQR%țzxfƬFp.]_Cq跃]T3<&NK-74 $GdҌm׆hﰭ 8r3s|qsI!M|VߡuKx8'W*ˣk; Ǥ,qi7({[JoH͝Tk>/ot'F\r+JN;"Y_Ցw $!5sMiUoCP\TM>\h{Xo3P%H߈Ao•Cv_f{;C?Ƴ|a2-`KJ@e!P+.vĕ19 K;>7?̧bT+Ӏh1TQB eؼbH̃>=ޘM>MdBEiOuЕ{; Ӿq]U` 6hvp]g*wbW'[?-HS^rK1w̓diEb֕E܏ެ9 %#C3N;F*c}L+CЌgIr2c98þa {<#C[ jN }93d0n}+:eV]gl$o#d_)Ѐ(j9'nڟU7J(T)ZQ:vG`gpFgtǀ/j},f~ 9k/[ڏPa' Zkʎ.]nMN*96Cifp1-u.2_3/V=|҇yұHkő!WъO(3s2{ro>9-:iQ | Yh9NO3Ȗ7YFf{ˣ { ^/0䌶۶ e 6O۩+F|uFA,4] S} 7~zʝk buk:?!KoMC~@>!Ь#[b|xN^^ 7 6ewTZKfkmeuct4-ԵN+@PIgJz] nl1w;V!狲Cž1VҗoxJTЯ6 ~th=gѮu) p4!y2N K$totM5i8K&YoAx5W%kNWEu9 => 01a2ĵv\FDp9E'0 :Ҳ=KAW.l"΂ x<ԴE4T r[@=UmO 9j{] GJ߾6)!$6֯_)`X1rĢD͓ Rzri6еi\.ШzS Fqev18Ғgg4SJ:.*DTU(ZS֚/PAgMq)PJ?&CkS)ZKs(G+={Ԗ|@c]ocU / pDr݈sZS0G'@=灢,s0ž1u[HaBdЧ7}e$+-ı=P+yN&|uVh:#ߡ{tbC"INu۵\]-ُ4TCˣz;e%l!EM-=ݪjՋSuiݸo"i4{޵-|:֫P#iI-Fkʗ}@9/kzlgAuQ";>XQs͌_]w,VQw= kD-1Dϭ i"|LbMxBOUk#*Ţtx123.dkeO>G>Qϝj=ǀ+ζkW=g}ۗ!]6);9sIUN- _ }AvksKKXo ad`k4R\Ȋ٤.VEl5籌.;ksS/59*ҦW+ 6,u&tX$Qb] B.O\zqU)\ʈ@#jtX|*Z~g2*8P% |:n,G.vRX?)%mǣzDin)gfE ʙ@*Y;FfxS9v+,jEV2 f!VpaZ40ČRLoMI}8cjA$XcGp1k}@47jCs\Қ7Xv,Y "XN-x+>+( OӛGխAL%DJ't:8P,'pbhO|iB8SRtpжVǐ;ɪv 4:f- MȻ=Oc]W>*^` >1=~нtDP(93ėQ@W\q*`J鎒gB4pkC4DoIWr~IpwҠv2}`!SA%KʀFF.~t}+/P 57-^9)h/ȴ_ued+Uvhf,-cͬ:K{B|UUyOV _S~JOo4_HI|܍m[yGKLRB-!K\?MTBGEd. Áei#4Gv=Da0op,(}lk6alOE7ky晊LO.HnwD9ccsͪ O^rl;\dnwAk1Y<.n*m~jيTGh 0B ô ' J%.w,U!AZ'ߠK5̟PlKw#]Q0t֣fy̟0ɉuzZά PǖwR=~+|<+*f :%SfTs|ܕn8 QTd6b12#W2|]6eAB+CTfF!3˷Et+7atoԶɉл (@lWI0vLjqwS]͟qԜL´[ ; A8n@]#:Sh3W[@hy[Xם3B1xuebZ`A^BŜѡ<*ULޮEv_C^+n&~v]vTF̴~tu bu nG{s'q^*a\A0b o;{Z3iq{%Z Y>eI)಩k)DPmB(5, U5 G6p7o|uʞ J/fvyO 왂{}>ӯ&DD.iFƋ',&]"1l-JG-gF7);'TyϝQ+x83$e'Fm@2bJѣYF/L(T",4 ƅA5~BE"Ik$t i%0*g S 8£EIJޫ5V#cڸv*ƥ~N7YV>sB fs<{ž95nɿiSwv↍ycת٩y+)Q[cN]3ԩMřsϨ:ȶEoz3_D&t䶡I*y=G*!pi!]\" OFޱ~bMU ƾ.&(RdzQ{_AOS|T>eƬE,4(,&Rm3fY ε)jPp| ;<S!Gh>2ql{9HW"Lbǀx|9^Q{v HKlf(1,#4Fg}l˜ޘIgVRXPgc޾n VJzKe£8xuHO2,U羡8:okwg+9tsV9gTH^zǏ:U͒-fѵ"mDҥvʏYmЫ*ȫM[qk'yv$?6Ձ|0ҪR^^{\IoV). Q%߫G]% w5uq-y4뱂md\\i_ &)04:N4J-趄{AiaB0@}5-w&ysxb[y$ƷŀMm7w@][?!23އdov_lDɬRҳpJA5z_ϝ?Oʼ3t +I'nŢ")AEP0[t/u+qp  3wC9.=vEcr+ssoI<Ȫf{X/+811h]9\{>l1׻.WuSƸn2$jizi/nl}%W-N]p^R<—C/Jԗ沐UW*5emB"z!S^t+8NW16V%7!'Jn\N0Qjz,HKSB`)Bp[|bU)C5vP`LItD_&ř Bf}桀>flij0KONнVVWe5)_$.st!Iسn9Fe?XwJ4_Slpq86Vs51 ,M^M$Xy' : &S̺\|'~ba xh9T3$S兯~Y'ĠD6mul-)8|h7"&6UL9c\J[" 7R5`l cVSȭ8) ,2/Z/sKL_}1zQ y T=|xZm3#C 4% Z [(:I5QGUgQH%aK 07ɣuC/bU#_k vݘ%6q<#㹜!ؚ}1Qz1m$hӈb!8#CθᩝyE}.i1hj'UA:}"-1F ,Ɲ[CkLW0;춁#If~ ;x@r^oIi%8@ݤ;6uעU@n #[=3"ClO8Jbn[]oKs2/*@ԦHrwCWq$ ew~/W )A]Ї̱T(ڽqiNR3N䨩!JLos$ꔟlhO u ir4.1L*Il /j!.v30$Qzp4+m֫ 55ܬs8fl_\Y͐hN:c2ʎ2\G2i?Soe eE#E84?he;`= u pBFSjm|4ZRˎh9D$ƄE[DrTg\5Q "JI{]-l\ kL[ѡgAQ@MEE@uv=̬~|3cUzZ"cP"~-4+ޙ0#fL g?멷 N'XbcIH]2(hu;k>D )5zS~ۑuxZx= J),BS|Xuj`LC.$J<otb53Zɰ*gQP Fo RZ ,"9YZhVF'zgH)~7ih! .(xc{fbN])-ݜ >8-&~k8WQx@C6xbZ"5*u0ѕ7`@vvA 2,n+bҜEn\P^oA `γ3 A-.D>H  iPA4`ۑXOT/%_/ $`WzE"s"MpE&If s\ T,? sCB"6a^o?-ߵYNKmKH' bo-t[:a3nc%[3?)^$uɌyqܮdؼ4R)B9^{ݸ_ʼg-xvPyZ=Bo\f]oْ ];r] TBMd>tKW@JHlH`JjDa33W,Շُ^!M}ҮVND_\בjmԡFNz-\,P[g$SݍORXŔ>Zܩ%4~j&._|xƍ욙ѨA`3`/-hNkGYw{嶡 T%{ZfY1QD. o裏yjz qnW΁^İPk S)>72Tf%oe<_`Lk"@FW$`FObE맺~ECLd?џptIgEKK]H@p~- nPXk&[.RejD?C<%Ss){oE-Ɨí!̨sv{%W!|~3wj l KW\ w5߹ِt buHH]mZ<##<~w" ~&f9+*Hg`.na7$;lRIt/ul["aj;%RLdQL0@0I b)#@z\e\ 6/A"қt3\F NP&F+NJ.Pun 4W)r:7UjB[h-&ĦV[Z`_QM*Es_0FˍR< kN>x ͎rY++8M:.mJG8=3pqkR"Tgː΀ͦY'˞9µ%GwjiDh5yΡf4,w\;unE>71PV:>Cjb@VXF"G d'?ݻvL1p8`8<~/)/.'}OC.=j 8.9%%E;8е2bT%&$rE_Eg97@m(w>)@sxm{ZPҀl[F*.Vf9*Eʛ}iΓ)p;M"<~9FpEhQ3d:31b}evZg9(hGɡY)khShnȯ'5QIMdyeC|I9ds 3 VǧDq+SgxqQ aq_ ,#:?C$Q&)ܚ=u-;ː ڦiL\gt6aFX86h[SwFiA ҎWK63.VzĩǺg@l9KZ^sӣuM[R{fU1=@NM.-$EAx\R:=\([^zu;ݬK+'k 3]8.{fF\A:(n/ 7u/MC~c#EiL`_WPG3iު"AJKqn6awkmn?Wt5TCw{{r-wbڶ6 hl2PJ!&͠a|.phq UIw Oi[-y qͳM`na,P鎓P cW#lM$B0}YihU{_fOqd@y5 ] ?Pp%RRZ[?޷hQP˄m,N+*#֬O8-GΕiy7P"jCV%tx'<$GUE}:F]+/D+yyGs$L,I*q6{- h ~)uq~@F^K|S,rΩQM:ɋ4Dr^jB]V2UפEGRJ^k#gG?kiIriQnxpI 9%K;~e2 Ci3QKhlaM`voԬyMsKi:%)m)(@\j6eg$) m19˔&/ص_]M-^{[yґ,q *v!ةKW9/g~rײ JZ,K%!q}$Ym]E,2r y|ԝӧpss[\UI h(Lo.GZ#ɏC2hroZx\وi [FV%EGzbͿ*,j$eLHbG%d1G׿t3]2nK?< v0 a{j(IV5GzD{>U!Ziϵ~ޘA~L?j`<2L d5"|S.g-ق3#CvZXwB!YG(mE=r6O ߳\R( + DKغZ>F'5==' k Q8_&^]#նoh.д b'g>c2LlvT&TqĞ@0g}$*f2ZBEzGo :YF.؄ufР4ݺRfE;὆ ZfeFZcF=xM~Zt pl-uP *^j݁?_/iR{oL~|6h =eҮ/P_Ỡj3Ih%Ja:103$Y:hMf/ ;HY&糉U'=;̌xNI7pi٢g MqAy&Tf$.5%3l4BZ U,Z ԁ(K&AyH9R$;6+@B:˽Ny~>P3xȽWyE u+=QݖzfHĥR PbРW9 aW8ā| `Rivh{- zdG5Ù)+G(Fpìv!p}_kAO~z%V{X>Et~s4K(;p2q4٧ }<=?횪ev FRcİ.Mb˜$ǚ#'J=_I"æؼhȠAldӞHb$tH)|ϫ9cL`Zc??!;(ȴB}Vrmr\>Am"Qּ]&wQO*:@Sm+Mw^,2:5*zE>ۊz(TOvRs _po"ZREl٪*bhl?y(QMS3'я1UO.V`,xAhSuVSͭ˿ƦCzSjz4폤`lZ؋ Ŕr  P:148DSrɝZ2.<㵥lmjZm:5HS4=̆3vp4a(=- l. G^eWnrsڳqV|7mv/-?lrq-.*,DsF$%Ά9q%D.qQI&wzwBDiUE|ޤcXQkL^ hD}I;l:jLʓA#O6x6&hrTG=\Vey>eCڞ0?@ÉѬGcQ=p q`Y GĜTJT״ΫOXwk?Dy5c8X8-(?6e^ƊO .ߖ9? =i¬8D- Fˑ/ O'Nw^[deW4 `)lL]Bb\B ڸ0rL7ӹMN#ھB#ĜᡢYdX{ck$0M_(]~4 +ރLrU"םUw,!`71 LbX>lKlb1~DQNg6 RGrJbrߵ]*nQ?ڂ5#fyTI: 6+ oѳb"և?Q r5XHk,ZIфA߿)5Nf =զ@L _Ҥ=l>X 7m)߷/13( j!^x,hF8R=]huD WG͑*ݝP/(z]@=*Fl^1.6h1V 9PF8ʒ`,5 rI^ E)[k~eX6˧.sZ@djSbsW}-o!z6&lG" g(6x: ;)g!w$ANHMcue*!aG7tgܠo#(^TN- _F~&,XE?F8\G`=Ma8.|iGN4<'5FAT9,Cde^Zë!ž[F[FvQ&gwڷ =5wb D;>)1q`P[9BF$c""h$wN6\S|­a Fˬ_bFLEzdkKHPr}w0/;* ;K@`vF^UAo}~?x7==D '2ٽ=Ԡgys"f_<ǻ{F1.܋P%%bV2eeo, '2hM)i0ǍCS0+d K`ۺ]:.Yg9Ygwc GLBuȁYf)$R #M6@E7kKuДSr4C90cdόpH|$Hb:ۼWPQTOM\P[GrKS84ugއ#*y /04gOb-A8~\Ϛlئ?5Tu7ײ~ѳ_&>>[M!< YsJO .eKL'N|0iȨo(m @MtGVuxHx`RYfPPN268( ?IԈLV(MZvdD4A_gN)siH+p#R .O. Y6+nH?g@Ȼ-8ң-6ute'X>'Tx&~=6 JZ!`ʜ_/\mHNhaLѝC:Rk6ه6p|_Q/."9a9cq"MxX$d=EMCbacO>b]'"SGv~#5H0b}+0?Cgz7.F]Xܕ+M[Xt|cK͟\0(3zQVi`W(x?C(ry80baVAU%1dHɂ$&e~8dbHr=E0K4 $ 5n9 4jKjO;dFmOG@N.<þ+( $Drw}k^P{=OltͩC}ĻT BIi8psoCjot")8nzx pVUfu˳kK)qu.vj~p=R{| ,tMH#c,34@tw/2wFwA%rQƉ2ƌbcb5f%Yv(D(ɍB|j.{dȗ5Z9ǨQ)Z?gGkhKۈ| 8L6CDF e~t(JΊ2B$"c=BeE-ӟKcij }lo/sNLK"qd{e|$4^u v"1;/I1uI?'ȡ8ކjҷJ|Ji+$+ GNJ"Qd~a  $KtJl,+5-o&J|aBVvVQ׼x]dg-}Ӡ`Gv}i^yح[=CrC)v^YPYtƓ8Z"N:7!18BGX\5 YN̜e0#'hGAK1A3PWOaz_iFC } &+l%mc%z`dVe:9+oLzZU?V z~všN%eK\J:zEY72? WֺjE 2UԼ+a}V Oi;Q9`d|rhA1.'?W]nV-.HM,;nzZ1>$i=5Sr e~s-I(mQ@g"aT3T;? p Kg~WX&eAvIA-!cƗD^{\J9~D螔uIDŽ@ h?s OжdyBL# ӮIzq\F\jY܊*1&[R 6 Y<8_1gŽ|:%a ռR =?̟(IX@+rx٪FM֊eEY mK 6G7UOMjpGm ˵!>K{ >:&)%$h֙K7ѤkBh apAѾcm*sZEåE}}Cg˺]c&(vuW{$Vxbbqxʠy:[S(75M4lJ9E] '2uAYEr BΈtq88r;SgDb kb/=G4/(hk]\b#1ko6^ ?ǛԩaqR2b}5]s~%Vbc:nT*vf(: 'F6;@ }ԭPD?_%NidG-X߲p+Τg[ ᄒME}ja]_Q8&@ лEڹDGn:Dt!GM2~萸dZ 8ՐLOgȵ >4=ݲ]ۯ+;Ԓ=},c!xGqY RkG]6ׂhw8]w:['pJyىK 잽&mz3~an_}||jtb/iJNb̜NUfw`!0%|4i1-*\ >4T |n޶Wf| Q]`iN! e9+ʃ$Zd*DXnK"ʪH~h/{Q(Ryq 9x֍wj`(\z;+  @:ϻG OP٠-:2 2sR#8:_Um'<'g ehu(T_U;iv:Exl/ϙ %d yA>i Vj;cJ)X1znd*.Z.kH‘{imyy_(|+m(>K{i.P:+|Lf33=oql9ƞkop/g~ uy西\nwN;FV38%ߒ B[ZH&mZ|o۾]٪xȲ(oC]o6q YaIӘ.]ǧG")zj?"1n;80(we?uQ K'J+N_m7|)aW&ٸxp,kߙ"tWQK\2M`5TUk6፳Ī#cWh&h%*'s4lXB*RS݁ue.%$ M|W)@9Υv xfty/| `aœ)z3gBfGb/VM ޡy1D=~͆#19Mle.*V|IO\iC)_C(nVWmm@?*0|gt],"I tL+mIU bIޤFƫ]El5a"o00| #Sf'Xíur.iz<\銬l +lCb?x*g-U#Ӟ*B- mR-8fg~ݨ%sXbCqZB[< LpQU(ga<(cZ;ӚlDHKQ"9CakO"gaCs:~5p/}mva&W&)9%W_oo-ՎRGL(3LZfhGR1 J ?-Qx"ymxw}p˙&n~eiL"m?cl-}_l#0jSAZ50cS51Y|c{5ڭ?޶ !d D I@ݺqQǐ7WҜ0TrDrPD&jumQqD`fDaM`=JIs6z?s3;MsziTCE]Új ]bV/0 BBW:[` ;y & Chytp:%^(H10 !ʛw8#yٵadOu춟b#-wԔy9ASNuF,=2 ~'ܡߧq&ſqղBԀ:ڤ_\6Ϡ"aӎ :Kn QEk4P0^[D_$Tb)ނDD Ӵm#|4xtD M+q3x:Pc,qO7L\Em *̮L9o ;')k"GI&>Kvއ,kC3O'r+^y tj&=^XJXҌ̫}|ʉ&3{ۋ'ؽenm1;SAWb!ʠ!|:5)م$@Ɖ "wn])3^ BӲ>@Bd=; Фc^vCơT*")C-z?9Ɩ ?yߗZn&Xjn3l7M J$J#|f'B3j#^U@_|&PıӔJb&*uH4MV׫T8cAl0O% nDAPևuAL;ӾJ8*7|cI365o@ } p%#ᑗ>6PX3aפ-WOoGSrOjW#do;Kب2O(B>!|D(^bl`}1$A'6T-cL[~]dEG A"Y3B (l%1wrhLNآXJy9&KѠxh)Di@֑1h!~sODBo]JzKصIs/ZʳgeB:Adzià՟F#EmVY_;03n&D;6pѓ0Lbj wj''3 # l FK6Rލ2Q, 8Dm62dYƑ) Há{MEb#帮C ǖPγ1^ph˶#.e|HѷISh/BPN)~Py2_Dפ j$LtY'+aºˀM_( xA{QkWL_(zxɨ6)QN=/:r} q_;ɁܝʉQA{DhEs*KR5os.{LjYfU83fN!+Q둓7YD%uvxV8*b['I[Q| Hyn!sx DsX^PSx&mNLM֯ ş]׳;nhh ˌSbų!ab~>ÝL4x*ڻwQ*^&z" =01ɰL*xhfךy=DthGϣ7>`:AdgXF 09G1uJ;ZZQ4z!׎Ϳ=&O@{O$Ҩ’)8tcVlkūYM-T nM{64N+=ivcs+6kҤț(FAA@AYQsw?.*\2αu%W6k`>k1:"j'AȉeEfC]u 9[T!0W Yc p>/LH>%T3M jɑ+ԞY;~gsQ5}vXV#v̆ՆŎPd{ߒrn "]/^c(6IsAB,5kZ'@HCը/\]6[40N>f"&abpuMa|?'2swXg1?ͣA0Rm: @l%nŽR|aDO[Ch>ŸuA7N&'4HN0ˢ1k䍞JȜ=} ֫1 `+J"kxM85oa#G퐭>I]ofzwHx;(oi] ?{"c& 'IHM绎M9) A~k޹< OjRλJ8asłM 2AomyuauXc`RWkB V9ݙҠ V.6Oo%dNyI5Q7mzYlS5s};w9Y;:Y7ힸ(FZyKl&* %*J}3GNTFׅjjӨX7f}8N{#LTj†[vz>o{1I'#N^r{qnq aCR?'汧؟qAi|zGA"5ee2FlX8] ?#2K4!t|/7eω[E6jտEIR,"KŎVNt-H*0+겺NWx|cұQl=AD7č=[_,$:΁gSW^ʾ-Y>J?@trd$rplWԇ͈+AI*2tBN=,t|]Eey(Y~l,z6#H:A6Id. j[BBc gY:C9Xɣ<hO=?2PK`FyDO3Vt7Uwmϭa3H,?v od*$.opTRH\7ꍣt^J bZgvX'"y;t#&5λrLO9AJ{U [fwk/2.sSHks{屳BF{ɲ RRi5k]1%Ԃ: Z~y[Pff!Mfl4 \Ngg32kGVN{wFs('ŮܥD-ӥ@A~i :r,<%?$yB{Ș&Juz0lXYsox,h#y_avhMQraV{}( ?=U}W@6 [iRm.vHm\j {^οݩ %:/;JDy24eߜSVYGVemT֮9N*_?U  ^_ =},rHBTHpkBiD"6M8|Jm YMb6B>T9Ǖ>B5*Vp"Ͼ[ӭ@\JRRKc.TCAuFu5[q_MrN]{v:4VAwP\*q-YQC2䷳5#wn&F oX-}X&w*x͂%MBeLiodhNe_u`n9O`t޶22^rA>A*[q88Uo5i{e1#CՕ7">1gN!"NMGn`kZ1-LdMW2vMܔvo*!;ܼyy`δ>3kO(Ֆ>g$&Jp6 TzZlSGj3dTydc;21oǻo ;ZTnϘwbvM:12!3A|(][w* fƲհ hoR3kwO# -%C ]#d@jdW*mkg>m\iR( $<:VWd3QxAfX4Y()EE~J oLq'Oct±ފ=<'Qah}hQѡ,AOcWl{^6Y1 U ;ܕfO4.qz"mۄDb0M#Q(⦺ȍP(\'qse#\†;&iX}y9~`CgryV>QQPC93yxL8_a1:T >J  % (0gL?D(s<ʝ-bw!%cR.߹2cN_%^0?C*zp9YexnB}{@Zie#u"a+Z@|b|Ff_#FFJfLR,# To߶2,,xl@19 d٫m5hH3z /PQM{`yвO $ɰnw(:~aYͣ'>*dÈW=൷BJWHKΊ9uoHQ ﷯Zf1VJACo$+I 0.8$,SdbeQ2u<>j8=?9^- Ɗ)ӆUݽ.k-gyKxEBYžċ4I>=΅7R"٥.O,iKC)}ȑz앧fTB.QexOUnDNH 7=T+<ӝX8S4fM*K=O L^ߜ8 zg7(2ylO7J)A%H0bc.؍ Jg&0x > u!FZt sQw5p,4֪NٝoH)W`4J=M7- ͿiN_™IIn 3df(0wTe… `Jy0"o6, θ S[81 AAG.hbd\U u-}FnKTbɡ~~5BZW8`I!i.4x#ϸTp]\ u/UcqP*Fd&;rKˁ =}`Gؐ(ExaG3EަAīvEtDT)$q{}H[&*"=+()^&mȈWW+f[j,qDҊ|ZC~v`C[z%lCWkQk5PD\ViG= va^MhW"PvSn]6Iax|`[E7YDe*wF@.:/x.;׆G9vޕ`\sP#:xMORy@v(l ^Ӧc9 ^*fPivs&_ԏ_@V\[rVQl3G"X^n.ߡ+ fpl,ї(`rl ڒd Lgz$h<@歞r2M::`+)ľ[.?uj:ao rRAioJ\o2Yïߋ7hg^ˢÙ5ߺe8M򪷊ddOt.4 Y}|kHT፹1R1"ռK21 cС7̴ntBBz6z7/feGT!tBKGz7r1qoyRFC XDN{-{ntBi 0VLI\I!)2R QygS!Se|QCjd aT yp *)I\RhWt#XK4u1^`7Z [AI=dc?ljzѭŊB݀S)>IKPh}OcB#W t,]01oB!+!R\Df%-nj#.!a8+oG@%ӗbrF^@aL[-$7\ o*h:P#:b Ґ]})5`!4#EԮ%8m]tCVkahdohj2%a̼-Hge5%? [pu/@$ƳSB5b=Ko(]H>TyrG?_=j6$Or R͠ -z&W*Z/u0nuaȢ{N$C]iT9Z#(ѻMVY1a3ڿZ^ze_z}:|zwAmAH %}{2oyl\r8A33f{M +E(:?WA0wmpH tW<,Oc}_OYT#Dk/zPA-98HVPҸEGD+Ҥ{ c!2%蕁+*:oB+.nB dxZ˲L/l-w̯9VWF:5%+e MbyؤM/MAֽkxȑX +͠gy6^ $lp't9 \t7,iCL'2( F['F3(Ⱥn 0=%TKB$J;c\H*nq`;pSP6|E`Z %pvt:ǴDքN@M1 v@|SC0)c#27%04b&tpnuʙphuH!VX`vCt>0,G66(ȲÂnl4[,yϝj֒ch)g,]U/ g&+4s>M"DzK#9JXסP-c'ʴq(@n ͋4f?1YrQo^6ufYڪo\yGUgAgמk,g rJ2K9&'rBǍ)ۚ>̞`]Wr){Va꣓+Lq7 *ƾ3~MxMkNUW$zlD4EP: R':(JGK 诩! oM^\vJhޥ? J:PףV7{rmL!….J}TKB{ Vw8) \-+mnV{[`2Qpi3)0Wg\z_sJB1Qllb-5;>kl/j5>xrg]+]b劫{ %ܘ ݏˊƅ8iCC3UNq9pR+];,OWO00S+IUz*إ_D-Ǟe 쑺YSJEO#+)vH g—nnDu ŋ_(r1nwO[phBMUg旬X%VhIS<̣c8 01.hDW_I^~tOR%;=o9٨Z]O 4UYjzwaЪ~?W{!obpjJ "O[?}fCEL#~!0]d* 0ϬVbFMkC)uAXٔqIō{BKad=Qm$(Jd0mWYT('B6Ԇ@w+Wm|HhRizIR!Jߤ?[D_0Bѓ~D;eqBBGTJ<&/ !)H@eړ+nPjNUjq' ^$51v[脼zw_96 UxD9E lj' ¢#D~2cyf m^cN=N1CCN$nq?<Dǘ )*D?1N1*[89k%euj a\XD cMeFpOnV? L;ȇ#ay-h'[&8\Pjr T0屼?j.}U#;{Km~XCP N2\PS}o^:fQiS^U/=}-89|9cLst0zV40% _{x40)% *a/[#"E}9GA!5Ȃǂbr33bTykDgXZM{BZP",W&$'aV)ڿQң`kfwӿ1^|q V$Z2];6?(x NxNmlXRw5a{ (}Q ȂS]KS*7lpfIXk'UӢ2[}xTw:֚DjBJ)˰ 9KX`jz̃ـi}b VZ5 +9,@Ȕ%1Zp#rvޢ2Q!0ׇ: q"#IFV/ơޣfKP &"m 2)KPFA*ibiwa=6ԣy=cO<߫MGοIm.mMy.wd}h/ 0s1 u/ۧ}!%`-S]L9c{t R,'{yoSB λ,l܀~)e{6OfgM5BB ,uڕU!+3 D7kCS\~Ўgt1X.LcK|ּjA'SNateա)qĠ.uPQJy̾xGcWIo$╲uCDY ^+5|f1m>go]dGpDZv !z*TK|pjC a\W!K2뵀Ү%ɷ8`3]p#y%#c zP!5'2v4ܼ/rI/ѩ69 8xhGk1jᚙR}l۰AaJL{ç/rqPgnm gWqraWX0~uNRB5<50 h3!9EeL}jCpopu.BȞ7=qql~28C=m֋Y2$hKW ndB٭d<#GsDՋ‹2pDͯɅ} QS0ٜSA:VCt5]gKtlw™xvu~v,/m ?ۙ%q4M(Q'in&dJ-nF7 銠YՃ3A4 ،𲘒DqZr1{|a wď} ^lG4;cĿZJ8u+~S>Y1 \W͊XJ;_jhHy*l]/ H=as] xSn? S _}岂 Cw rչΦM{pc|+$!]ձ"YGj֖>(\ԓ},9jWnNA/PS]*bUrJ ڜ^ pގiM8,/`B*bf}lHvߛ4y {p>=aB`֔7whz3θUnXtOG@_d_uukCq"}݃zܫޞm5Kܘx@s MԦQLvse4d3: k7tU A]5p%7B0v!Čmm0MSfV0o* FYivCliix,d+I,m0}0՛hS_7\U-_Lk @[4^/ @.Ҧf;ȸhsL ' WNm.Ev62TO*{6L#^R\858"<͹|b|UI>q2kvJkz7&ZVbϺT9}!C Qadv%{XDL(Jgz_Hf*D䢔Q*:UBhq VV5_e$+M*p wհ7KWQke5Qg-*eg(eU.OkG_ia16 TqVOވ G٢+ɹ Q]T;i +sΠ%9b<%n)9Ug]! 0?O(_ .;:Ja:X#ͳ)L6r =k8iar%oT(UQK EMU2aICvy@kqN:K6<Г} %#?@hgbZ^k-8~ $ t&1/c&3УMP"lx<48~DMq1*~P6ɫ_y LpoL%CM/@\r8zy{G)QZzڹxν;F4­׼@րndYeBWեt107C>H}wiS3N-Fv CXh0ϾgmM,KZU \uᜭMt ˥겿@Wxg>)Xi}1; $HZK)x/%^ "U9N2jBiA٣ٕa*8'3FRk1!Q8KJ$`DTLduJxLM4Ạ] ~ڝad&QB•zCd6"a|i ꘢)J>3 ުz7ߡ&C4?"wݸ+e6"wWRwaQZH``TD]ol!9t-l*Dv ~O >E\z]kz۞"7ړGLAYƒZy"U-4YOSVŒZZ̶,p*,KGpt'SyR{7 zOqg pdPVƏU 1O姣A۽S$9 24w*K|)"!-LI0,<áJ> PRn$[#D2M^o4je9S5&(ԓ\.9ƲR{}~i 8DBtILj;* ^pCCi]Š*ʉ-Ȅ:ZyLe =\{ḊK?Cdfw^f'POWjb'XcyI=[#'9xM7L`KyOH"/JۈJFnK(C&Qnn:T`BתF*v3 r.@y^snfk/VJ$u[_|$ĺPPG? ݤ븭 Φ'Y u :HDbK9_gV7Y{8ՔAvHyETlCcɳmP5Ludti݅8ó46l%3AH]]lkwsD r>rk K{4}Ոk/J2ݷR*jc~MhGFj_9wΌ0!gsU֌=*\z/d# % )ijk/=z} V6vH8o(sV56ekkV@QD Q┷Sr5Kmnv}HQoZ-Qіs\51l T =brAo()CI9TdGO*LoyCǘ ^Uo/~>頁a{KqE| >%4''L<p&/h)x`7/̀ QE!:~=>ح59#1愨k/ԵOoẂ1x `pJ[" *cq618~txPW3~='2OxaWzei!6cǾ)7  SVG.JX̷ G7Y+\وsq.ef셚nqQ<'dmE[g$ꮩ㟔ue^X'Ef_ $^^L|ۋ \PiW#ѣUT!`m-U0=|ő%g> y^w1v[3L.6;eZMM<'7R"d =F4rpy(v$"V* >^R*v@ Ƽou6*97~t^7OxJuYe$?ހm\Y>$VעZ0ˣ V[HBO)C -&us{ y s3 Ԁ5pWd9h.|kIV>Rl4|VxW6K%*Tpvcp{!0:iF Pi)2 mQdFq&R/ \sW{Kh)P5 ,a4:(:vh֘Ѡ̓98k9i@͸.@3<0i(X-UVwpniE )2wS\ԗk@/LٍM_ܧ6d?c Lf"P>}^o&^0mC*4R%HR-ٯҍC𡓛(n3jhЁYޝ"̮JDm٘w65(v՚qh#m\rbZęٺwPsDl#bǂt+Hpbd\9=@]uyсM&æq|GnADS͇VJ؁swg\sP'x*c@z]mQRU-h `M9b䧛\$(.f]7L>}}qP;b9C6Xn.(O5VzvJM1{;7P_7zF 7Sbl3@)8FaE\4+"8apJPpT]G~ӫ3s,$JK!Ղ_8U 3b>%>9 76w |&b'9]k!Ӓ,FF_keY<5:7jM珎p+|GǕu9FqrNySO{vHh* cݢ=CO8t9S|Qߚ d2ܧIm¸iC84xֈDxZ'C/FZ~o>m'TՃh%Xk]kg׫̣" D$ia+i~ sT]ۓY#-՚9r 3bx\HI_ E_D +0̷^? bG|C$\KqK2@Sn$=oCUm ڏ%9:yp/)2v}^$(,eG,֛Z-)*$u YqnAJY-Sq @h6hVz%LDh1fg6 Z<Ɉߥԙs3#a Ӷ< [֎IF(¨Ga dH.5#C>RΠ+h I˟Svhcwa_#@)-)l85s@Ԩᗜ"w ށW @kFhŇ~1l1R%Y*''* M qPLOO?,?m99EEkQz5x̰l邪.B?[::g(rG?JFļ{p ˫8Mvloy> }cm@G[) wBehAޑESSx6ôd]c(/B )$V%7Jv4Ga?ծl{v.)sNEasμ-Կ`^-7tE"Is}Ѱ m9 *k9DmCsHM+@q@͈6YǽR( WF6\wBJ3w BOPS5q+Qї T`̦F{_ijRuAFJO,ز#i{Ю;^C UMc%/ |<sTKlnh+;epy']\I^+dt:<^r Be<t7_d%$ɍPe! lt\ۇѺ C+cI\9ED9Igl, J̝ݼ!%vZT4W j|p6!VCY*‘(9$\+l\WD?/p9 ~E*mJ)7dϟyJVsxO֢zrgUhX+SX%41^p VZ a6M [Pn5V5W<5b)No4f xLkVrCae(ѡ|x@ ('2Otx$"`-)ޭn"9'Pa`gs&U_`:՗Lz, * XK5ӎ4¯us`Pk:޴j?0z`JU٠hTU(O>fz"}YOix `țNHGg:$;Y}!G!1_ƋK#8.6\|5T{H 9twӭdT*hNقzbkYoN-/+a2XOLBFYf`0>e /MStX|$8O6YVG"8R)E1M1MxӫH1¾Mܬ.|}jнB j l+h<_{"U Me}ucXZDYZ1% XuVE…#8 w4urM_ԦTY}yΤ@y9l};62?yEJ}G]LW%5K5DA+eDL1s c(HhX ;,?{ uu=8+3!hffWZMRuL@~ڈت:-eCms B@\0=fוլSR5Y{;,wK:SM_"U¡; ż(~@'8)b"Q]4 r1ϭ5缫0o:9U1@o'8;O?lob  VX} v܏ߋ@՟ 8BX73mqW3^ mاS\hsΕͲ=1uc<ʢn4Co{*E7DRˌ35j)x굱IDxI)cyY#@ (v' [ih/j(,pj;F^<΁F \Ц !C qk_Lr%,7v4 .hv ʞ h $JӭGf yFpZrS: p(1Jq+*.3=~:޺f%W9l>37C O6bj]P3F4ǽ;Ի.[SZt ͭp3W(5C`?KY疬n0Lk)S-,hDȚ^?`iimP k\plBVK;&x.dLzV'ɋa-OdҟP匆GaSȗ'ݫ7U&4l6;8)^V|m.?,S*oxWTGڈli> iV#]L闽",p>;o>$/u}K=**7 "AN{-+F\ q:L8Ħ(^Jмΰ<&?=l˯fy YeKamSGRtFl 1fL%l !R(G_ڌV&$?Ѣ^x]$O6e76ĵxp 9A+7$FWa;l9  炤 '3f͸ʑ緅_x;FHa}PYo3$N73Eol0Zz6in4ѩ<k7r\˰8 EŅb_Ռ1XbN"bD޴#."}휄#3<`K4r0]stD7B+x۴.`48y1@n3ďNX/Co!|>&֥g׉%\WD#=T*{"X{"# Z>]e} [NQYO[|'#+3!22]~ad+# 2s!]{xD` FDťd og-HoSu?6-R*j(Z2DQ}wyЎSih&JK]V=c4PJdRJ%7ZO$~$_nS(A$5Ec{3Y HRkwOI=}+ &_EQB!QPArn;#>5adۛ[DdNpx_Jp iXp =@?2{,}?} ns?(C׭4o39@07g~x'y4cۂ6Z8I/Z#d{5aX>'c^p>\ YmrTFѭ~7$US<U/d jrq x\/WǢj 'Vr5 5x,@'h%kѝÝwJ(T&ISV"${wד)'K@ +X( sm_IvN&J6ΊF&!%x"(fas4eF i\ꟾ3'*JULR/PELXZ-bl:hL}[9TߒZ@T.)kZ6~uqG&Ph:F_d^!wSĻ'u;S^GњP2&O}=#@ r4̲ʧ %|$zL5 ^ ǂ1 L}$aS@ :t(_s.3t$@XUv_c 2!v:8v MIF&7)ȃ^3T0sRHbwaKrOGv +u `+qeÌQ$S ŰZG9X,??Y_nmPƷ,mjÜ*'"b>xL)flC1YK@ p( #jVL323bHpPk %CІYediѬi\@'.(d4]/潿C=?{=Ex[$׊{ڧ6"E V<7Ձ.+O)Vb#AtKvmg18\&wlՕm2)$ok D ]0s~,8M_P#'ͼLg:yw/23Bc#?{$߁Q#V$`07ı7;O33FEOx4\FKkG{At򮧇i߷(}ǀx!v4u ^Ǭ L>{dS|7Cdϣ#iQYbDf{.7_ F&;(t?7AehoeS.ۊFbv#)m(4$2tHB40|WWv0nnpLiXh%mm>A\ibLyB=V˘t?!zzmg]j6ݦQ4 L3/vj4]SoOtPw.Uu|2ҕWoZ'yeY$85%X@7 Fcq7Aq^c9jW3??bdJXg9HH4n_2P,,uG?L(W={Kڵn.4"~ Q&ôf"Bj~,}$bJϚ\@nvYt ŢU7"=j(ɌRazy ?16k l{u7ӮPP{#LM4z 0- N&~Ty=&.ZؕF *%bݍ}1sg!cbN&Ј V"JV 4| (bucC(ѶH Nj07i7ŽE1ӠK3`buݻ5ay.j,ҞPWj{.-e0"MH) CvJy~!/@3jEu grޔ8Ɨ3Z}%J?yai/6XL&r#0f!d43ӧЕ+9R;]Ef[ϔrKhթs_QUzaS{5*2)0h_q=z$ GXc7'2or*Uhoz<@ _`=sQ7}a|6n[b#GG'hA#aęջW7*3gּhL5[NZS]kg ݢЌmCAJU>z iJy4ET"Ti-Y״:C,<%yGKE/H"v6\Idf8gf8k=A:7{0x=rCH""5pFm9rk0*y1ɞ`)tPz3+>1ˈg?Xî9?+n_H#iV)E> CBr`t^6gR82ZGEw| iweH,z5)ʕ2sgǛagkk2VjƵ2qxgKo\"rHقL$_m@*3 e͝ t 柅DLEDPQ(ۃC`:̪ضDNyAJ> p~^ٍ}c,t$t5 t1aoub Yjp=Ux̊0C z(Σt\5,,Q s\|.'?3I~L繯m!,WpwoJΌWlꪃ'p ~p)wIUuJڒAn|>3$@]F[ޢ.Q\Lg GJ梴AmHXjB7PѷcØHB R)L>##phLT{.jHMMTxWPy>BW9zO4TרX0*_V叚*Ɛ\$1@*X+vH79˹@2D\3C3Ec套EF@_3wc3O&}kK_yqՓܛo]*~ 2D2n#~g ^0 <%cx NF!cbX^ !@G շlCTHPLZgK }?;庭9)NgG'‘|҈jQPT3\ ӂst.)f5HO=|%`qZbQ1`{>s9e_uCG c!߼y?g㠸9yH<q-g;V*\QNqq,_N $@S{n>Dr(z$>74GL~Z FZo|Ĩ4z*eЕM2jML;N.cm|4=G @4.|)π@˯V@a AQ*ܩPif}Z?# j1 p׳~{Ix*CR@o:%`;(_ڋ֓a~aq3MM;&"knM4a"SkKXN:v=AS|0yqtgڥ!Lީ_xrMD^ <:Px,sD\>KzMա$m@mA.̦l!([B~ ms>/( lUET=`}/cG lѩ$vg<ε9^˖.4uDupOTlj9#~QCּmctkבO {Pr-[9GtFWtNV6DXWrbg(N~m5:nM 7,\ e{+آ/Y yY%fTY]38(ŅdV rKowbzMVґsT.ps5ߒp$ gf OgX,s-XQ2VL8e@PoNspn.2;> Ϭ(0+\E}# mIޘ_[n/c~h"~,/k$d߶YJ+ 'K¯o)+W)Ȇ_a@[bC_&(d)椥9=)y]BlkK8-̾aUZڟ].%sq:\vi!|QB,NSCyF#wPV*DdU댽|+Hy(C˴Q% ,$knbW#kB\*Qo2l aȸ<N[0$%Lc}T+ Z)_ɳzRwyO S7K,F/ט.GÃ=0bH5ahPv;~}T-6$Zhg,Yi+k:CYWPjKt0,pE9a83 km*iۿx ,:I$vxSe3~NZNh~ʸǯ7vfD/DˆHgF`I,i%k㨰yhj\ÐoMSvuR z AN?_zO'h|'|N(N=#XR̦$"?cINg<hhb7=\! vaKQJ;߻iׁQOoɸ?PlwOz$^XXCV;jՃ}_5.w`XBXk#`ѕOKV9y+rP`$j1ɵ! µ:V? L/򤞦uS/Z|h>j| 7PyMK|ː9V}Qs,K{FiLC$f`q30KG:ٸ1 ]{6q0ގn#w{Cp5ĂX$MꄟfQ 2v'JJ1`Lubք3դELIaq(r%@ ;ʿgEnzh5"9PX PQbF{񑳊"->;pWﯤ49pFOVWsbIgsB㱮ʖ1Q)gj|T&ZC4t:ԍVCiAEE<,e|B @FwX < VPѶ~;r_˕5]ϒDX CR %؀iF#/U&|j*/ᇤgyvWhf#؂sFHG;/Ǐ(Y'i3#I_" =JYkAYWr^ <~Hm|!Av~ݥ yZLR*k5q88I\Y5/߿Cَ孊-p]GMob%v[MN Ki^7 >בk=xx] "bKSsOJra(fΐܡ*MXӼ4)w+Ltss .)cAQCY _iU45i N%<0۝ !v2_֕(HV Uv+ij1#1EphgI&RF\N *hpDi^ZLLCgozؒm㺁*o_^j쯌q0y6d0Azbp񹊽LшE1& $Hz  -d(g@Ej{e6;`.$(弓q5lK &\Cպ>f͖3oƛ}H S1߶Wν81-GeH%b*qa QC_UPи8EWD<l ?A0= cPJ}D2qD0FoY.߲zo2ը:~,2})}QI[Q1J4o4g"Brr*THN4hP~!Z1V`ʹq)ݖm; ? (kr uϥFiؼَak5I$vR$"4܎` e3jzV`0XTD18ФNhCG95BƢbua`吿ʃ_/=\a"пǔw}/X6AīÛ`gQEA`a.2/5%layn7v8p_bEd#luA~vKo:e_cW?=ݸ]FwL}NkB$oZj+ב6 /e}Fw:Z.$n NS)q7^ 9d8[/+,oR(2߈A\s+1G1/]rԕ404E r@7T+'vlKǘc \LSvYr^+ ok5 78aPq?-;O/E'XUUjR ԞF56Jsh&RZ*M;YFm?(<Z,4 3@ Z5y%v saPI,C?jvG/ˆIX 3x7maɆLl=^U $P YSFW԰S|pX*XDփ޽ㅎaQj`{fFصRD/vqx丑 f *I)^J3\#C1܄!ɫym`?Raܡ8"QA@]P?T ڿ]&fe¼& ,"5٘ETJ'Km#S*W)bGW4>׫DD)gA^J'q&7y%vtsVх] ƗQOț$Hq^^S1ZPa#ޚ]: `ƪ= & օ{k̥[|%woZQ^h+9Yv13P/bC9AK| BPcʫpYU'LSVEGCcasjYXjbU͐jQoI}S <tWz7ɛ&\tFպJ3+U1^2SXPH5gL2nb)L憊=G!KLpUwF2,'Mäqxv-v4|*!b7UU脗Ksogc>ݍʀ–^+Ռ:) E;(c5(ߙg*{8f`.S?++q,?ZoKXY#Q` O Wb1@bfsy@,Sl-J \ɅZxCҒM{ꅇ㔿榟XqXJ8i?|} $;s~E:rԈH.F1Z旆'hbG\!%w Ci^ҿM fK+s)ao~iA{) .{Rs8 @ѻCOު?"H?6KNHZx.{5CIII PQ SyY>&u_uԈe} ͞ BD,Dg|9nLH^韤f6\m\r(`RuCpy=̊gEy@A#j)4zvmh`Qq,0B+y8L ,YM|[X(u78'0]H*&@d\c"-OɒJ(GZp.E|P2|cXVф-<' 5YM'LDD dWҁA0-6Iiv0w{Qx:;yZQRCFk*n5˽,[1E#(tHpG57/- fSԅ';j4G-'!I̶-r r'ytGVopT&!3l|[7ɍDKܸLKzn0E˛U^$ϋ:?{dG9:yw y[b>6\Hu&/M~m"mz^ᱥdp C$O#|SN`r3RiPis5]! X]XtJL #?ԾFvM<9\v](њ!4!vfzQm`Fz"fH«hMt>uK YպN&Oqi $V, ^ݬ&&gL1{^-bh4Q  łϖ3}GQV0GT^i㟈3A _Mb ~ǬDZag2ίv@c']p|-d շ4v [jBc?՚plk﫽xLĵw*O@1 u6?xU5x4Q|)DNV=b%`!Qau2s]M|ZDxLոD|[p=4u_by`D?ܐq^O}/'->`n n NhN#tQ0p3s,L.~2A`Y_B=Ob%G^o<:$ -1벝ҡBTΌJ9i tS'*ܣ!鞏a.6Ԇڟa<yV|z u*upE21 ɐfG(H۩3$BlRDS05ǜ6$d M1jv)B^^uEp9QT,AB:pxP3tUQ7,!%ػ|31@؈*OE")hu 9`GSh2!X)G+ 4`*YG U:DEK>^_Яϫ8do(oAR{\vЋ=nAFO}U4[Qd/@H'7{1`O&p~ 9CUe}`SE^y[ *|G֠gJQÆ=ΨߞG``+?",Wok4⦰S_"A@yTHAn':Y %0lf$Rg9 C?eyx1:27"@xXa'$'ۦa_z(y֘b O! Rn6N&򏛩َ̧ AJPrG3:TIy".GasPt^# Ġ WAw#jpRD]}jк[q,n}ā`N12l nvtȓ'}(u؍"_r|BgoN{NO붳M6&ע(PA^!|lBj#5`l1_saƥm22(WFY/K_D6LDhaS2IP Jeѭz|q>{͇pU+#j9csMW'CwU_t[rb&R0ZIGX=U*w{X*8UYZT{՛z6EcBd5 ś[K{@v*~65jDng X_8>W%1+̛:t1Ϩ /=C*1c @^Ж8%kAQT21RWaUYהXC_[hĶZufot*x+.3/@Q]Ћ!$`1X%izx0ݽ؛la8G_8ll7wrYo׋@P-Z6^W/ o&@Wi([nAzZsS|y-~d| @%s&uEFP'b6)ZSxJdvGiEY6*ڋOL(6U='ror6U xd tۿZ*.*%%O%%rC~I);s2Rf&>$s: y[}%J*#w} 'h矷IHEt|eሃMW\7bHEgឩa]v?`w7L@ׇBR#:cFGoIܾG=~9UnƵ3ozDpB1wvikq9vH/72FfD_x S,g~,b'㥫ɞ#'TɑI0@zH)a(>P1eGL 7bl>:GC3tGjQR`5Ύ:P^zth@)-}'z[oUӤ+ E ^܈xwiXP"'4C&1,QehA3 mBvU4%@O9jJ@-j|nJawF3 cA{Gݘ;u>'/%ք-(3I9u=oqVK!qClUL[[}Br@CJf ݠB18Z_Ktef6P*4-YAワb UMmb'> xqp35Ŝ*~ަ.6XGXBiVפZL1# vKh~bn+| ^Cⶮ( [VwdIٷFJ^rQ]$ nvSg1U#YAWc50< f.&t(PS*VF?\9!{LmkPQw+ 3<ۤDvfy>Nr'TwVk MԤX.3d`iU(`$x)S6VܻH9 ZiP<'\KPVK'8FVy"rSZ U9x`)V7| V9hpd~MĞ:\Au WvZv9C1җt՞fc|F[8aS;2avwa*1㋅HƲFm[PtD XtrQ =x*H[fHA.+dG9)[Ix-i@K1oXoD&Vw"~^f}>nM?[?#A%~(6JeHOih':0Ѳ6h*^BN M\7?UG#2EOfq{ӌE}  H|e)Tm iP%"(*;,n `eT.u5xU#$srȭyJG7 >"vm RK_%91|Jl:VE8n8x;Vo$ǒ7 s uE.nrywmà`zcB@?ZaXLxRߧ~gD>+s u,- {D_u&BYEzSߔ+Dһ=B2Q^/~R+3,S34JwiͬN~>OS]PV(ӥ6c^yZgPe]e7$͇`4/ ?YFaL@VNDŽ ?H6-7'bxNnx`s+D4hO9BxhYw_H;θ͕V?qTU(ME[T1rJQBe_ ʌh] q^I1Mzjf`e aQizKUMq ׁ}rzk9= ?R_7.ܸ* VC,7$0}lG|a<0~KP,QW˵sUm6` ʼ~fbp)_#_ Մ|J0End(䤴ST6frQ,Vοa Uh"| ˉ|ƺӵ)˓ :x@aRg\oeɴtмAωiAk%czgK#nM %OdyssU7LD&b|\ao:ݻ N3?rގb ˥Q M;}::F!L]gzɳ[dٺi3sZ99­wVA>ԺI8;P ܏]u&|hQ%,ԨF{ҝUYpgUȫv"P魖W\ L:^m]{EqF>pOcM dm |}bKYB t4 0sUhKTIp*S"EXmoڊ;m)R+U*{5<}eSwc[fH/yoocA76T~fdgOʫϔC_ S7:.kZ%FlywRqSNN* Q-)jř"Y#`^#^\wSf1Ĩ ti4m-&̤c G(h?jBE}"!N=8Y$(2k+,T|WnіudHwJp:ȹ-}549Pa;mʿZ>"%CsoR7?dg$*\ln.]`z[ 8k#ZS-ha '"P/gyʞZ]~?MIO1a|FmN3G9de+ی1c9I8\_,d]EBWG8NE}y'l\`6?| lj,C(la/O#WE2g"|ޫs^1k.>6B nc̓.IE-Q{3@[(HM2]So_ ꡻2fl(e\SB@Ol`@ڒhR#y:w(Sq`X"л03"9-e!QW1eՁ6];HqJ>v%4D$PLYAq;W)˺lۘknLH]Y<ϝy&EvgOWUMV贰4?J8k|y) asq|_4ֽW%0U>إGĆ.Qh1bJ*:̕ $*//P!rx}q{L,{Y7j>6t?p2Ǿ^%fif]P8>qR ~HFuVX*QbuQ?xPC+/!UlߎcS^Ñd O&Cqň.01L' }T%[<M~ʢm'qzi?gvg1$a_ǖrVI$d?5UuXQeސsy&QFك{J "^zpÚzİ1wlFb=vYS=OYy[ԯO[=:_➞?ȋ`a4z)oÍqr5KvUuF}Iщ5 sׯHY?5Fs?{eDMq\٩5!1QEUC^kuWub-f3BljeMV|"}#m$ =ifLiz~5^ f[!>9mڴ;9"ƴ^_v4abM+B_2>MUΈm`YQۺRVW܆B%v^\gM6-+*2;oeuY̥9 38犠~A@aj9OJNu8Nw;d4t ĤWX'R[5}n(B Cn=d֧w0U(O޿+{&~|I`,*"e:%"JCKF3?ReE7s/v5 pwGjxrX4 NT WB V4jd#~\BtG˔qI(+zl]ŦVYY6vj/_IY2UAf˔Ա=Au ;DڠZQ%uxy\Q>q,NppPOunK*bFl ?8HH-oW=XiĴ ɪ LaU!o D'Fu?T0U='cĺ͐ѷgjb5oܗm6TZYTC!(^؊8` &ݿ69E ~ P" +k'-[jэ-R_U2Зhs*N\.3\hBLd.\dDf "|:lgk-(vbU&V j|(r\2; J@!sSpV_@S*urLeZ̵;H͔"\*noI .`z QtW1rP sYtBb V%o#Z Aİ…X SQ^ +a"KhqICPwrm0ܹJoim,սnt\! ~M#'))V.Q_5u\v&)tOpC %stGSuiڿ h]'sf}uhsV@o!q5ujp Y}JC;"7nsۋ13HV\`/#UroN29#IIs/y;eto$܂V <gExkV{uN# T)Uo* d.]xЙZL_-Q4ZY)"FtarۓqAuG}z-rڑ55.{dc*xFaN'N2%yd )ڰ"@FMmiZ3yE.׋ J/,;B j#05H'AaWyxIIw(=Daa/z]APȱI*kMRcgY2rm{MY|K2iJ P]aAjy-@!q +uqV3t䏵kb>g8$0A$*s M 7kM*[\.rwlq;|~Xkbk ÇJ&넴ra'~7 .L69I'$f ԚM|_ҿ|?CݳAhF-UV4h;P%9q]XDSkM2# |AL/`%T/u铋fSč8CϟRiQ:#&|?1Z /~ cAiayR8m0U:A:$HQ/{ROLL!KǮJ4* {<3bnٵgg$xF틔m1E G+ vŸ2╘i .:e*"0SAc S n PS2B:5OB(:~7ǀ^s=)Y,}CDˇrJsFt8[<L-X@.fqNR`NV 0+N%@Z* Q q*R-@0{p6:tTZy1u$hG xb7PZCJ*ܞ~1)._9&00beo. t43@J%큦 /HY(o,|*~,{6Ն$gШMѐn V"啕מ'FqkrQ, # 'R,A\d-"aSƦ >}!jP&껏iШ)USr_S%O@Z\e5`y#JSe8~7c3>pfzb<]jCAĿU߆s[a3F!sC*35@ߡ HnsWnht4z%xr- ^ _Z}l&{5vdk]yZ,E$5 La0 ,'? P--`σ, 2SO>̄DZ!IqӌiJ7,[ug<ӷx7dhn/E#MXjgWyih2|}Ra2LJiݢMmc} 'Z<'9,y#~0UZ64 *o!01}>bZ!o1]Pwb˨eK2Mi,MW=v 371-YyZN ?YY׉\OxZaV]!F)p=QHIB8CeS`jߋ1Ioad< Cl6D*㺍(ّNXnumDqz5FdCwgk~M9Ep?JarHjf2*m dc,P:ʏLύrEk od drc;zq3:e9o<l LplA^ E |Oĺ6y"=@6N$usb*ɨE,vZWhiGc]O҂ö7#ئ.DUxkgyA ?e@U˒:ÿ}u'#9JVՑ3C4MBC$A9M8x,]~E` e@cHܢ/Z\|Y I`p ,a$ȅa&=h.u^.5E9mBP+N I*/i!9sMT_.<G2]1ճ[A(ZdXUN )WqYL>Mvai8J%L|>^ux^0eLf,(0!o֪`Ň.<;;YhxG $R/CX!O1^|Afp"΅b<F}Ftpzsw{Tc_d־ l~Dw]IKBA@{$?FH9BksE7w[_߶s0%nBز:a?Fu.~@ 8q%,rsK]WB 1xʠ^s$uJ@C41XK̍ݶ]thoqIgvKŦgɣI fgmU恓fY,¤ Y|Lk9-37Sw:lk=mM 7"[;kphA- XjZڭ jZqBqL}.w͖"<Y:[ .F0rqSPݹdR]^ "UI3覒u&Pj, ˯θ csS& <cIGH(c2jk™6|6b!mrNdfkG)4@f˔x$vK &b ;`  nti^d/FlI$j݉-.L`B9}SDҰ*>c^a>x૨z ͆BrV`1_3X#"-0F*]!D ,@Qts<201׀B_x4s\z(jlbi֋ӊZUJi.:Akޙ/F hsHMMד?I3B%p ||pfoT~T2 %{IpWP jb;75o ltpFU~!199֛`d@hUY TNW\Ҩ/#f=3X"f^͂#H ^̀pO^)wgH?bV`=h>&S p&AFrooFsyE EƊ1WC9&;{wM(jm !gpb!;Eqw*U ˇ87{r0 Ps_TZcj"Cu5om U^{,X Bi 67]Kzp@!ޡΤ=L9䐣ګ j*u@.W}NFJZgZ0q$UZe!ooΉ*4L+q0Z չ,.`S{(rB:Oi;.=4-Ԃl oʵ4W  •ZX!Mcdb:K&Q.>5XQi OxFR"wUE[;1Ix+:Cԛ1 #6Iay%лC#XymH؛#Lc* 1*ۀ<(RAkځ`qp| ;F wY 80I݁4 0M 5a}0XrTD܉ LY1=:|3J]@亲{ԥ'I`/&0)'92iE(醺 S@(F^jPb  *UﯲŅw&L iےtK/X.kNcVˌfcX7dќ=aVTN'>YyqА80䨜LdYtgG ucW&akxUJcQK?{04hN( %bl, )jctpʹE=:k2eE>jg܅$} 'TuBCPI(F@C=ǂ T| $b=5?.yݝ,)I>RHRWLz` Kw_Ƃb_tyzcj ՄBYiiW:Mvs{oڅ;@=_GtUduRCO1rB\T{Mf <ѫG>AIb-`'Lc9Y1o.NP(m5@k\MJ-Em5Ła಼hk'"ͅ}5JbGN!ԡٷݕQ#&5sDZqK v@ l3]ELNp@BznEe{D_ r]ȁ}@b`1ȗ1 MLA3M#Q qs)[h x$b> xћ|<+ \µ'ZEܐHwcp.a/̟ZVe.s׻Jg(pW( !^;Njw2t0vm0h|'<>`z̆U.w#_U2a5c`:Sڔ> gz;En\|6uCbtVDOYBsrJ9!›?TosND314կfkqZ!٭?#jҤǾ~xlx2&3m(~unbpynhS*'I>w'(eם]Wt l`rTl7kGlbJ_G;6KtDS9@4}zi3-BAa\~0~uX^7Sdqkد] ,D]! .Tk+#ՀoN s3A& vvGH>O=)u큟S3Dёm6_ ly•V,UF౪mHN| yz[YNiQZ0LU c㍭ֈf;\z'gɘk;7İ.Tje.mQ{۫ȗ&-ψ/90ErrM؍tR_ʂN;dZAYn}Z]8d"(5e]%m]CXfP/:B{Y@L2ZZE&;(]'Ywhս v:_# u Af G[dL5~Drp b~%p4 z>#MxivY~}ibS6D͡>I]) /Y%\Z*ǐE2} WUx"o7FP,-[ãe:b&Pˆ-Z)#y$e.N:iI`=,^ޣkTrAZo?JA5LZQ*wWwU;_3T-h'zs,>xD04 qcwDZ@/W.=.s.aDO`.Cbs]R􄵘;3 607* nw/nMXDO@IC#bE[8E꫋#Ŀ{}pƘh? cwXHz|S$Jf9!QT6>U$ؼ%5Y-Y,C 'dq6u8]T UJzЍ+1^Fld<{'+Am߱xmNElẅ;z0F{j0སgȮ($JѨ{Ņ2܁RiNv\Ud $>Yn10Zj*Y^W` YZdG>Ig,īaxA*`G^,C_vC\ٖv]dvZY3u-~WHe(I d:g.ف793RqDO<֫nf z7w@>*bݨ (jF'ވW[_ k^;  JD)c ],]E?H!ܢER?'|za~l?`;"ݫ j}Fyd&(Vc6I&H pm{,i+A(F&G/hq3bOoV NOm>2rnY0W /\D>~[%0xhtʚX!H637!N? cC1 *5VO8csuxSxC{_<5sPK9pܕqҔ~z$+V\GNqS>:J4v XoipKy0k'Q)9[G0Y-R2:BLj  QGLaۮ[eG C}rT֡YMH{N$E8mqVQ]AR&x:~Ra? Gyr&IWNI#}z8HHCRia!iT78f#yjX{L%>ڌR:̿+B@%wUm )ᜯC3ޜmGaWP\tpz``?Τ ] Q If! r^ ĭ_fBZniY!SS-EƦI,I_@7ֿwmQ.@5 P9i$/n?_UblҳS^~_m[bBD5sw @c#N׀ !rcsALh3BD+:`#OVZ15RD- !y<1@XىY6w OoykMNzOS6r"2Qx BNAt>/Q!;څ+ZUHxi51M~V_8z2&VNr-_ϔLqSw ZB&^M0N5ڹxN|uQuQb23Tss=;/iK-Y$.DO|73b^O:j|2-0Ppz42g7A0"W='B(@wFz>? N)SV(xXb=A䟜 Q}&-ۃ w?ԙ 手ؾo!+5ʰ*U8I+_~3UarF8k?"oW Xm|f'w-4⑆$.!T<><d,qk^'_,7n-wFFk]kYǮer. cs$ہ{]L={l0Z`=JqoR :"c9n`,cŶ?t2`B~a"ΜRx: s3Ԟˁf 0<R%p]\Y(h#BJɡ̹Jj1I5/qs?.,pLKg5mnƎ&>4bF5TDہ(q!Ԇ8vR/>AdjFUPwBߡn:Σjg+H_x$߅, }a(Tf5¥P(qT\{No3Fzs%e2Y>S&Z>ߪ%,1vԓIbcc2'-@vl߆VYVkti'+N.NCc;&,E=mHBGߘPEȖHߜJ,k0L ҲB&$an7cz% 8͡ \xΖkQ0?:],*NM1C( n,|l&>=e8Q`? !x3SdM9DJKg"F[&VTÑ{ v`:W)`ȉ?wO4 l}FTno(j*EF{fZ`z62?@X/۱S[hfӻ%f]eU1-vF{hm:FQSif \Hj2ߟ4R/hI;E]@t̘ j =ED*k+!?1_]9<+6SaZB=N;dj8 ;nmX=iKZ1ڠ-@`~|ਉb: w|~%ˀ/-ZJ{atYKhPpqe/* kӎjSxT6ipj,jN)w*oD'oHWN>=E[y%Y2%7qI3j|΁1(UރB*dOee 7b`݈bE-?]U7H苬ge+^KI?#מG ztC5 wUAxz&4siw"fA!H6UVA1p;jV>F¥.(2*ԎB nޕDlU/BûєG\GjN'}jZ W|sxH vTJ"&K5H~q)EƠŻrH\1\Sy}D vy\#`+_1l"Lc# ]W쐉eWKTIt Ars9CU V,!LM}2Bh`59 oCw/fxc>|;{[ڇii08g Mzu-xUw;>T2sm厜Kp >:֮s#-3=jc9M.)o0[]QLYHl9P@BأIr" w/8 紋χu"JƁ @RL".*9{Eɨ $ɨwn &?]h2 iKVw=o )|$))yVxB l"j&giŒ1wXH*NM̕h3 CQ'-OϊuD6H ÷vZڻy)d{f+rv6@((@B>Y4@s3Ued_[(en%kxc9ȒΑr ]d3fx3XV?ע2h ^H\΁qHM?O-yA]O9H"C?LO7w,,/X] U-i:.bʦ|Q ;K0XٞIޅI\Q a̽oTk>&wJa 2,j~TR+jo] #q eq(10JU.9h¦xnQw? 4ѫcPYS5 [8FI%  H<cY+q CTio6ogѓ>ܤYZ*6__Uc=Ys*04OTZtl$dS[ N[!u  <~̉՜Nh'tɑCJ %hEfUf'/XQo>o _7SO/q4eĜlMw z-͙wwU "P BG([ɭ8o>Hm1\9ېs/7v̫Z3{Z׷>QScs_TeIυ^H1)w@Jk,5#~òS ]6P-\xMˣߢ]׻ڹ+7qzYq2J!]KJAsE 20~8ۮEAySod*hK}Hꏗ<#듨H.h- ! 66¥*xꠦQXKNPԾpݞ2 nwi#LEH=WĤ`?VjM]} "-E~iAy!v+~7vt*W?Ȥґ~=]CX~4f_HoW֞J?*!&wBt9|\+#ᠾÌۆIl׽:+7)BbJHuDk(fmyݫYcd-$%d\ZHݎr0A*L ơ04!v/N*Td>E6{ળ!0ָ)n!QHy0xxrh@Ma`Q2i&]]*ΙؖZrC*θ- M|d@_4ք%X svw4?6ܘjsA9u>7o3SEjqHԊz>?#==+ s};c#80ܪmݫ iqBF.P! @kl.D{B0헡_>F=y))zo[e l$}ɟW'E B(OhmX8l:A0ѥD!|Ĺ^9CaS1s1TɈ_I=)0V˟6v%r淪FyqӍ (4E9af*  +fY MNPA!R?&cR*nj˷]ߚ>3D$';v&̛jR1oPIKGF Ld:fA_cL䈈= ~bDzr@Hío_t_O,yQ:{XCxD/+{)3!L,K%CޝiqSw5+L_PJK Wor*^Z0(k qTUbZNպc$oo]fۀժţ_ M3P+ Up.TY>w~9o/J xerhc^XBSUEa xf)d230a|4 o,UÊO@ eþTז߹jG?}դ3 4h&M{bāpn 4m1DoU*~]caF-?7TA S >Yx H簭=AxIHHafO0 * /V{ouc_xdD1$ȺPƿ+ ~ٜߙIß׺β=/'!48!RxbP0DJ8 N;[`I٘JAz!nV,BMVubo$Kɇ`K5na;'x^Wr7Eo)Xk- s+,UN1qw+C avvMIB}BVƿCZ/D`ӟrмh`ʆw$]mwQҧq Dъec}rNfq]Q'rc bQv]7˽S\V:FBO rOI~KIڌB8MMZC!atތS< JB͉rmHShÎm[ Hm9 Ӆ4vICTm~S,8bb)uBLzx߿W$6!#*8?9l/=G%wg K3b^QɗZ`6yѿNv ߜD#fB 5Ǘd[w<y5.!izocY,%kTv`FDZjo~޶'~, ٕhrO˝cxt5fξֻ^^ )]ξD(ԫI [7/嗓˚̭dռ^Dm4dm7B;Na[m7Kg@/`>V3 4aoh, 6V9dT< tF~˜RX.f*έpj{Vӷ|'q;s5(n > dRRkڬ^]TN{Z1\Bբ>( gDiS##>!jfBnS b38%lTsk#Vw"/c;PQ6b_M%-Ev.r UWp3j0s?ZU(F 'M^M"k3"zv=6v3۷[sk(p+e5Ru<uu+7)W _?bn7HpRddc’)d` U]܏LXcEݛ*"i8.sf7 c}9ٗ$':"I ("3A}=tHB`s<67.]4?DFqhJ 宀btMʷ0xc.IMc*V?G2 wi&4*7yzr# ]hf]LDOTCLM?Ö{?(|ةPP]_W!Ӯ8#[eߴ~/Kg4Ҵ*=.4GnB~~hL9:$4}ϤmZjp=#g>)xK?iݕߎrQ7t[3YTH,7vuΗ7e?EȒؕBz^0;&3cv9q+=bYݬi<.UkԂAc*\"lRFlEc!bB[} Xʹݎ&0֜,3  F)TtiX^8jU2`W7ÂsǽT򀫝@>1>&Kv< yÊ yUp0u]eHa7{bt=E8Q6L|\v 0 s>p\qqCoƅq;E)&^*(4h7qΰn*| &LK$췗xM=N_C!¾-`! 7aT_fH䑿2aOZ ȾZ[iM Mŝխ7L63U\k @y*rAo__$IU ).޼]_>QJ=h5 :Z:y +:Dxw8|#kk|g5; Yx8"ߝa1[>R @|U> R- ]~S$.%/@n:*(;ˎAKA`p'ꟑM/<$8|w-7KЇ*fWtAk -P L6*#0 Ěq+q2.,`ӧ$1bH 0kK .ˣ;ZF Q2 t?v7cKɼ~5$NVRarEqāu,ޤCWBu6v *P`f $"j}Tȃ w&k_lqc ?^0УuhN7K@ڞK ef ݿT`WkX^J y@2IN`dBTdk;R<Wn(IXfc!pˈ^8>7 $m喾;:'d l_aQ3F3ݻsk!c0ΥN`r97iC- >) 1$62_3v=c_rx0ܺ!uP~^˭{0jp]AJTaэĬ6 Y>.ưlwei(|T2gƻS}\ 뎷Vuۆ(D"ИB u0/mg܀"!4C8@sxʆ ekt\ \ҥVA 81nU}aIZwhjC4^ %'#S'H ƱkNgqވ¾փ]?g1{p(+x<>U5vL#~"ԔW|4GCul/\]9]+Ej@ZL17wg'5ܗ>pxU bTh 8Qܼbm TF!)sg=%tN<0U>I4P{~7Jɪ`Suk:H;e@xRN*:`I\_D 6 ?eVZ/_I**2\h(Q9WvHJײd~EcJ$cζJkS-dM:l+%Awݵek[\(ڒxXX~ztwiPոj?T#*?ZS?dV@v5rJ sjDPi u%jC <áIA $R߸u߀UL&r}^֘Bng{ygvej_z>ZkJ5ȵЛd*J7C4wЁ]δo2>|j6CNxFs: sX 34rC{٪0bMy ]rаnlt3^Kӵyi u`}7%F"I6o*aZ1 4My +þF7VPJ*Λ{!ʗAz9KllH(Nqra:/ !.]k+'/ ]@oGy#摉,?|Ns'Ӊu p RQ:jD U5\Φ[ThrUDuW3 M ]fUat!E=7UN2vezR1dwNcc\Rv#U$.]ݐiV?]W-u2Y|{=UoVpHmW-cѻ2{}d]͓`Y%r#O9 ٟ$',J=Sm)FwHy.AqN<ܡ';X6B7xZ+sy9_}m'lJo~C PśOKR@w[:ǠRV7j-R9= 1jҟ>o!rbQ6y"e,y dw~6FԺB%Ec10@`B芋]PʄbJD~\3aW]VY\n܂}C>b%Ko5?_j9JFip}GmUyuaNƲgȻ2F*9ІJm9:rzj;\԰8&fp};gI]!l\/@*FQ}gv/k>U>{Lәބd,%*2 i&LSǕc`:Lb>PPۅ~u8EuNΤ^9\D:50-I I=/`l {wu\O~3?P9W?f(`&Zf1\7g`|*?a}oMoCCce2[AP}u\| !oŠ m?")y|A]'}=D^`SN' a=䅽ȊkTZPSW֢ Ó>&>.e,?i`EIXX?O[xBmQM!뼺t;K˱.(U!MZ+מtTnk &&kA ,[ZL~tsE J~'G4(ǭ9Y=7,e.#{:3{rMMhuy)_C7S擕IJt1 ϊ>ـ;JEőL%.6)BW}O(̣et0i;=xkw{;z2+YYW !x^lɝa ={'MT :FD#PI-)/a~AnOd$52oͪn-< yollY?ȍrETWΨ/LqC5ehopO#m|2wCnOnܠ6oBu;|Ǐ4ȡ!B)5rL%AF+*$y;I1Ei\X@F>>uf(HXrH6D/謜#=z3C=zq(ɘ <߶lsB;rBQ"k!Z&HY{pinl:I(8&D^첲U'i0wLzyBיYd}I@n5MUO͒|@R0 9eo!8rzF̌I-xԁ w_n:aQ%K]sм;s@!dБH{`Yd}h>9ts?p>knJsV(;T궛:׫^] I7~/:SM6 eu!9ԯA(}!cFF՚v"t0p> ~[%]H&ʔ"$5qﴒvqieeg75hX#S^@9N*QlC6OH7Dۈ}@%9sq"#ū/DҟwVnfE$}B'Y c̝h^b(*H2*jl!U  oPWb%^J4b7"qVc dVEVRc8gq!F5#iM'w&κiM[Y}t-m|1V]s:Lǧ 89D֫`Yuit-R_!ӘMs ?w~P.eЂZxhĶ!v6P/:4ϥ,ɳzqX;Lc6c\>֕Dvxߘk jk:U,Vs?iUllM5Hvbǽyzhb0cgjG/zx$bޟ# 6b :>%=Q|_(>p1M}t}HuF>5R‰~7#SҲ_x?{oߙd0+"4 Eɉw'Z~Cb*[Ms`sC&\"gK ISla Wzj9@xV nQa,0cj}8Qg | yu=Wcc`LP(_zcZΌNwS^~ks>IA`.f_F3/E]H`N9X2*P?ʸH3Yzb]J&}ZR-ɨq)tB ŒYh{pMըS:iyOYQjљ`3΃gt }$0e;=5FܧPTN03ʄu 1J Zrc.@Ln , E^**v]v4͵O4m-)2vCR#+]`q3ǒF>9/ =>0؜lGxStur):,Ayd[u t+@Y*s"T#>y#$˶~ rѺF~(3Ln@~?HM([D\5_?۷" CuW"&;?^=ľ=uG dig(p(dk$ո\VVU¦y43yXn YQrBAGE6 U> k{hvSZb} vW!e7QZJr&؃t3漶 /n"cd/b-8蟦az)F ֌7Y˼9W^W7W4ρ }fzNov`4EDJ <~Sa|zJP-8BhbLm] :t~2؍I)|\/ UœYS)Fiz[CNܷcL 6,bk궆v<̞8صOܡU~]Q]T_M]12҃SiL-?PggI hݭq|w tVQ&lB4>J=x<2:ƪ:AŃ M«&=y|VA4NfŁݫ/ Ѱ4>@ՙ-9쫶x FX!_y0mE{X;iPNbǪ0+l}85_҅r>BX> SUu"8rO2zHh$@QŽb"XO^̰S5,.\ T B\N31`&aER9{䑯4빊-!Yl1ѫܗ 5R3)Sy8K>i 3JB7,$!{2HzXJ ":-Gmܿ˛Y?yTiEK}S[µ3k AH(YdM^ݙ\)7xA-]3ZHZb7RrbAETV!30fpPR$}Qt@Y5(/P52˞k^Ӊj+NjnD6ց+$+"$Q2O9+Tn7>\yMZ#:%]/YJ\bױ[,WuqLR rᆴjљ:f+W ř -=sf3q^Hq|T7OlsxD= T+";ଳ܆02 *3=ߨo Zh'q&^9Pr*gyI5iRȟ<5n+V!$Zsād@hwj2b`P$SNqJjO13!޴FKb':7W$'9HTB9-;@6zLX9^re&6FOCrDZ_:>4V/YAćx4G YveyNO@c7b<I0d'K(&u.%qv-"lwoaEjHxOZ*Q`T;P39lQI{е R+}vb-j>W^{J<rRe2.XB\ш㴵gG`gٱ'~ ^ bمPշq͆˵[j7#A$_<@9}.P:M(oMw }EH'ӓNjFߺHVKc*ND+&%]s@$?FGKVh>I7x@~ %zJ#yBWAJνKyo1H HNG([|[&쨹M3UbہΒ%?A 2s|U!0]Z3hpC[)ɖn67>j7vQdz%#ٓ[Ъ[ne2_J'f+r<@ZAPth7;ک# wUJ{r5ڈ|gUYE:G)ҭg&xr y̎[3s_{{ A9׍5(URب?lMz`[/}5+ofT֟MS%D%- DU ,Dvl -7K:gC-j.N͓_\tpJgf?ڛn棞cSfEvG?>l'dsA&i|WT୸jӦ|,S !)EMo D:M!]D Ḻ6&𺛆`u0O}ux)d(U '}a 2ZpAOFdSre8Qj e/BWf^/LXR1:O̱,}2^Կ&X ڢJQݔNt\99xm猒U} Xn[ˤ%#w0´\G(f01!FITJʚ-Qa^(>BZw~iP>eƝdckyDc\fCҎ=) <:Hķ5ME3 iQ՛Fjo?3JUHIM_Pzq@SOxfLk\l$MfQֿڷkm2ߠ&9{a#Anj6)Bh{=j/@B]١ҧ@ܢECla$Pt[&f߮}v,nW_bB˸N5C;FM𸷞'VreU,ق艂 j˞J$&G)Ju)(}9.:~f@'WE|q@MXߌh<-eg/tV}Չ`H<rґo u<|L 3YiŬ٣/DcD5>.G|?0r჈s̷zAZj'+:VaOɰԅLԨ'_g? VwLA"êCL9Ϛi-6m?FkvonLb6؉SB^LWʰ#'9X -'cWofm,R6#p|HdG ڛZ>t5UiȈQ+zV_#*JsKZk>s1Ko_`r}>]϶L 6m|/ԚR| )ȥm}Nh*W6~C gȴx#ͣ'CỲ+~;VT+GYCZvh(s1ݸ||mK8aMvdw @`'e/C&z/Re)#s*'; rAVē"M`8wbG[MyCX^mET ig't{&u~%Z7|bHs编)5fbo{oYl/Jr1GgyӰQ"OY[aYVyRUie> J, LJg&6` vһlzgNu> ÙaqhM諐k!yRV#Y7s\i1i|(klfLZ}MM(cxp (t2ZaB{p ʶYУF !o;]~MɧŅB Xw+K5\Gu@X_lC@4z `&U'' z%gPa]R7`'ݻhIag K$SgbZyT Yw/WbGwʢj:N6JJ1I}y@F˿0;)X6q-Z!.уWLn xTFr8umwS]y&Y! WEQ56?CY Hm"p4um7icdd6!L SWb(Y deI< //Ugkp..k͇|d3~ƍe=o3ILw/ev% t?R mDQ}?]4WPL1f9]6-Y*?_'KfޓPxl=jj#-2T&mDݯ59&dGISDJy!! qgA<_QnX.<= XTBcu[{cnI)P ONOWy=ȰE{BJȺQyLr^Ɖsʮg%) v m4g:ucqCyDΩ!!;{QIˉ,&]}YB'q sLu=os&?3.1XgdqN QGeZɋ5$ Y2#:pD;!g<Z[5ܞŤɑ[F?Y$(}]45GdW{4^\`l49(!w+ w,|^hJ͏#^DD oO𧊊UXj\ p2buh@1 7++\Bp(s >ם}h]vtȢ@su>qF2?.=_{$PK\tRΥW a<49]<ؗ$r9f;OV462_Lhj~Ibu2z@4CQҪcB$-?Ε'YцbkE!]^sDK ns5,[`HVuZ^ӔF?&i/CٟGӺ\e毮:f~͉JGA{-16HzH X2:%'m UY98Ӱl]!|$&[ӝ-bAa$smP_,}U~̾ Y(oJinT(r;*;Y=pDN.Ί~ ^"24bz&kbf IG}~JWy !_Mc_N6l~HY`$1.*CNdW8gQ_ w6ȫ*Fu׾U`4/O BgՈ\!PFy 41Z5uCF94< {kA(5m-SqOKY2E?SVoބU{ 4hbW 釹J`?^1UfO&^Fid(lzeW_.mp$t1(@:`0ۛ,IkuB}8~;mvLEJ'hI<\7wr9Xܑ|*0)"Xjf0 &ϕ(>6* A,3|_IӶޘ F7PjIm_0j}li$hNv&n(sv wP`,{- y|zM5kQKTTߑ6pξuz$Aѫ{)c{o2koS_{P6XKY3o?jCZ6J<1kX uԈC~ Z׵rhq〱!{郎+0S{:e\krĒd8sɮT Bϩgbw@W u#u b$2 En*:Kh,P=|P@̊7.f-q}2cyO8g>g֪ٲCo>H_(nï^`j:r{:} ։8@S)t1ap:N/(* u PBdBˠ(@`2d!T ]*Dz|I0HLth ײ2EcmIy%LIL XSt+Ӧ?CP$Jo:]t{ID^z ȅ dvЗ-dNkցh Ed*SVwIBJW@޺,ivi?|"쓷ߛ>s| &v@qT@&bgG59cgw~k'.b(?`lGВ[/ltk'w!'$ :7 O;؉ѓZB5*t'F`XZ@ *R#x1~pmk3ƗζTЬ]'hً4^7K2V1jG9R4J 5 uʀѯtI$->a<]>]ʱ]`ӎ@[m؄-gU-w?1LiQj4u,.R3:~+N3Z@ d܄:t`k+Kz#ڮ*DHƊ$A bҕT^"vR:PnKvT?o]U̱vBGCi@ α|gG(GV3v?#by(='<c'' ;~6OX] ܷ)؍@\MZ E8~u l JBQ˾`;WhkE%+h9Sz ">=/|0z!5`cmd.ЗUJ{wҔ V#k[(O-2oIXgQ3T2$7֝5}c ޑ~j:C0t"@sD}zYxΈZ]i]xOEyKoJ?Va,7,hXsWM6 m[U\9 Īw]oz`m8>[] Yt}^_ԦAzٰ L kX7lC!IPߑsI_ERJHjQӞFd܊/4E&2| O,hc"DXb$"%TT؊R9lP&Bh*H?=LtcZ*@]2Yos-D>7Lsc&C/kj_ZyGO돮.6A+оWMieɗ_-k5mX%R4e{*,XlW 6t0{HxfƀdIK77G, mU|\\ܢ8!ͦܚh dYI/F(29vQxH ֢< q(*jMI0Yx8tU #bp1%pjH<xM}|i'j_9j铨Wڵw1`y[8)="O}!L֒G5}_kS83V缴7jsR^NiX ? OG,5k]kBQ4+F HIX ѼXשÍgʈT_#G2˟˺"@N!at64cMgENJeW1ŭMWkq,Hi)h{1ܟ\t;U0St"&l1C}\_uK/6 Zk(M9pZLFy&K8Oּ}ʦ.DĽ0ݪxϕPR5Fg>${걗;ZUM#gd\BB!I1:;aY 4@pqU9$Nv ,L{[+GXbLiM`w #e yyz~]\mx Evz/a8S4uT(^DFZupo rƩL=!me Ne2&g#/DEwC'rڋ/B_i0lcPoDV7^=]_< @D33Z'SIF:Kq ~|O#˧@5I9s:w ySnZЛ~<q!AZiVd_َ i U?lUi߸kĪԪ<ݦH(O).h*l[Y@}pf R~yM [ŠєZ5DX#훖ȓ{5Ӧu8Τ֑J]aNGJ0GY﵈La=}5 O~~o\%gΦ6-7U<DD1}%X3dj>ޜϖpXϨ!*D u-m^z6%cL~kz!,6>vMU;[T>U&I~KiO$kYu@fbv"&س+*@ֵteWXgӈ;0R!B/C!Iq-ˋ?W=Q (+m:ױvn~ D YuqӶwZߏ8;%eٸa_5h}E)L2T'|> %3 NQ3aQuw]ER*;26iܚ}nksT G(t8lR"_;tcdWʍdßO+E(E&L2{3T˝bеdB)e*fj,j.V14 Y9s +E +F",I)-ҹ|_.1O[Y f(mX?2x|cf(U G>GWCָJ93P~0̥KnB,@ /u.e$ Vc#=LiǬ͢s_̵!۬S4!c egkV`] wˌNx4ڥәfv{ΫA#y f~09=E/x_f Tz(Ye.Ag*.$;M=,#9GPKǕ18FM^h<O#*cî]cV Rz%]%k=܊ssk(]/m3)L2 9Iܦ#U?!a}y'L*8JF'=P,ayF.ď}[e<gJ@Bn%4mfI=ߌz6 C~8{0#Hq֙ѭ1NQuVzׁIy̱2r,+PԆ ܨzV8F#?ɺ8VRsi@c:Lle UʰYߏWs*#f{;,;%CW)[F2LGgÂҽ!v9]`4lF"og0RLˏJ|MՄ>"ƾ&gAxT2:[hn` vz Ia5ˡ緑L89t1PZ3Au:teD6d/.TO9ak`+J,vqa1M+u:27.6yLHWJ|yGOUf H 3 Nv?-`]+=؍K[4Ua:ΑQ|$Z"ȉvɋX]CDFŁ:T?42g5F4g;!Mkdc֭Y`$ڐ@aM<72F2bGvb?(}}lH3v8lJ?5XY}(8kJςA, =-J*$~|k_5 |ApLԞRgvp0N(NegZ:?ա>;dR^19]ZMA6r CSRRrQ805Tg cu͠٤/^uDsJUۼI ;c{Ȗ!d{"_]>.䁯1> =vcy)pl\{M'q )^f)uה,5Y:\'Onm sO>Nӛw%oa ]* apcP/g]" I O5Gd9Vhk30u9t9[1rCTDJ% `J{b:=Q[ ;eKwjj$]V)͹!,(:nYgJnbz, `L>_zp2/B_.&-CDfj6k_bđݐ^7AP/:s{?l^A?9#t-Rdp|hDNCƠSNh5c4-%Jb8Jq~=Wy+P.X (|g!tT_{mX@":_%Y;ѕe:yJ3GEpl˸XV = `@N>]ʄYUpA(V8ц8Kqg-S;jIRߥ$Z'U8"#p;PU:}4?]xVo`-ן' ގܖݜhCd;~cgJ~f]{t?#۶Fb/F(Dbk8} L7 Xf4 $_i$_ eݐf̵Ldυ <)+ I#`̯Mk/^_IjxJ lcD~NyE ˬᴘx"S(DI^&&DN4;7:ӗx>ծx-[1y^yh= Es{x}Y`s_O֕<C}rXI5td:>֞0ꆽ>Vb ǙYdZ9NΊ !(U8=Q)9:xh>s.Ub!`l#U!|c4~K1Z2BH)u=ó {bL@0myA{ð:=QJw;<*QJ\V?(u1:\gpr+D{,SV-lf?t$rRx67݇-a@t.sb.y6F~ؤϯv62ᦟH]'2(dCRSOaa0?U큙̓ Zלy)P@\gͪPt5XPJFf^k 1-Kw7]]4j[PjU;&pDiӼ\a&waɊpӃ$A%7R{u5t&PKNJĔ<\z,%7r<}@8lеQe둋uAYdA%2fT)GSQl.ˊ!% @H0 6T`̿t*[}tMǡ9IbDwSg$ޠ~YEF%$|3nCMѵ6׈ԠS;j;jʂ/AF@{ۂ.aWQ˼,5 |3 %CR>Ԧ 'fByޔڂC?{bEGhŸh؋Է#Tb"ufBN{=ז$Q]_vGffù7B7,2 $vN*xT/94XQ6D'χŒNhohYɸQeN`>+0:CZ͢: pet2B~7U kM#D0W: Eq2cۅaӦb{nhISOϷP\I4 ;vrv-RgR"OfXc 3HSp #=rk'}#,V!ZK_*[;:f1L'ɥ Y@ُU+LvUlqHQ@G.ϯz0 Xҡ~krKcueW;7=doǏvޅX6[83[G_lqYe:߄^jdpԖH&]SM!vLj큪v8̟nQ h E| p]-R 1ѡX+q:rwlDjճs`nR׀!E;jIz ;qG):\YFљb)*']E-;\5>#6FN)O7p]`٣7{QԘԸȴ*$Z$A&3i#%s1rԳV /1nd\qtQŭY6XqD`([,[740k۸یQ d}oR gx l ɐV9洿u1FWNj>HPG]ٟbL=u9!tOF`Uzv^.0 UOӛ^lDtieqZa:D/H Jߗ\vY[1|擶ng~a }.Uߢ弑'q~ WӸ2YŔěB9w٪;戨iK(SV|s"um`iZbMEh5Z0N0^}p&e[#bT?NEpG T-+eҀ(ѷ[k)ELYmMAkrtJ6fl1KN0B-86 ˝ov[yMrbRKXq;Q<N&uS9VA0?a9Ul¾M ȥꅴacYX}-'lxx哓}Ԧ+ϕ.uaEV|1nIp8(h拖m/5uǠps9LK:>Z@i_ yi)fәU/7#x[OZ8ּIak%e/}a)?<1gâguUBcq`\N]U3kdS hhLθh(CIŨȳX>22`n,GOFIGٹ6ez(c4~]׏'ra50TN]Hrpkea}SYI}GמV.Lgf-n.ކӠ!؄]k^L=QC?@S)E&]Jo +G7*So`xm>CޞyRjVj"R+p !-~ܵ?Sr_`DJǩWXu~{8}-kN SX9vL4eM71J|/?bU@sͼ))P=\v)֙H\zxZe(5zv[ڗ%7IqG T>4a؎5qtbxƔR}oO3ê!;avo@X틘$ӛt-``.P Pt~\s.*)8+Xya+;s\GQhnS8/Ǒ2LfPd㮼ִ+.SallN>}h|+Խ'Hr* kτE*9@vr7̟;;=Q11P;E`UyipC_)nP0[r"ZZp;Yiߪ]]CrwB%T#V÷p^Jư>`GԦrH LCSb& V,]I쳷9!}e}aW}z(x$>@@gFLEϾgLOGҋq瓽Za+koӘĤeF\|a\m-IuB_no Zr!VQ Ȥi >x]=WΨ k\Q˵e?֤t-ԇ ~8Oɋ;0QƴR7d |n>  ӯ@Efd= 8*'fM 5EM8Jfn -%@VL!fFbHI "n6yc; <;79o 4b Zjz}(UIUUjyg?Fx0*pZI8`Y,CgV8۫~fa=c‚:4J_!M-%>Ϗ]pّ"G!Ϧ0rMa! 2!`\*67>lH'4L^'rGY2,d)PAmV㐝ֿ9a4N.8vG_C9'Tq0woPFHe; !` Wd ?12iU ,Ġ:xOiq :j[Ȳ#4cEp& Y9,FT&%Dgz]mѡL#n[a^y.igk]ʕ8 2^g3 M4FJBKp2ZX$ݒ:hjJkD2b#m;RHdl ~R{mOvYG4tVmp#`@k 0r}㈝gCvY6>\-Sâ)r#{Ye7z joLz QZBxdL5ˇMͯNHX :;zQ]˰1K`oO!:MYBl>"%Eb_yڅ^+=|]Vr:B7D*7D27<,c ?{i@hPOv 5]Fy2-WȵfL)"W/<,sEX56!/y.՜dx[҆cJD~T)TP ,m4kG$Y,][J[-+Vw?ܽ15g"܏ .z5/&!yMzZ/d7(PUSos-)8͗7"Kcvrotzy>>OH\'SԬƺ1eWKB '1iGݷh#tgby0kG^b ígނZqq,8 ]\Q4l  ([c ?\ VK6 nlzl"4/KWF PF@>߇`_$?DEP: 4欧~5W'хRZ>*~F )~U*("l`W(߼>:,S- YPdE>nbٸɶk|ZpatGny'HxEpIq0G~@M2QR+ A&7Įc?.mk_P `lXݷO !ݣz"(L"v.=FeQz NյQ, &>t]U__q8Rp5BH"K7gvd*:-IWOc*mCZsf=`I;8O>7 z,@ N b=B\9痳UXq@Sվ*U gZ!>@Vp#ev  ]vMسe <8kv>/m]ו>gCrZK# spb䠲C^A7;,pN~4sqUkN4,Q%[1_&QB'u,|tiXk{,t:wFksFmlUEк^WJ )鋩U0)p{[r23?A>7S˛׫&PwA x_ nECn~PR1tI 0 ۲#A%3}٣d7wy>VʎJ<%!q_;p1n C3d.q0 vo=Le˧]c((̄#fEwR[XX+43i΁O$JN]7 x=y68Wa#<=_** RpNS \Ӿ H/(݃!" **GO@Of'Csfɤ NY'Nz_jM] 7H9_^}OfOp6cEp|^?_?. *QjO,L1L@xnYyӔ' "LXg;( cmQi`ټPo*#k;(NvaA 2|R&|2l7<_ UX:'g/9d1Jl,h5ʫSnQ U_ "V?+:\9elɤ.)+ ?egX=BmOak}S*.DĆWǞjw)Wb2|O|pG]^AXfUswLJ,QHJԜmc2Dgk26>,2SkaEOcq`v ߑdOܑ 2Kndd<oQf&BZTm N"\gU{/?ե[ s\x|Zcil|kuMqRe2Hi/\hRSg>`͍N-8CJg@l4eKUn^lfA{YGoSKy?\Lmx2ﰬ6q(x탫UMN,$w:nT*pan\`w4hLef$dh01EvhTmڨGV8X˒l"WkkOOI0*iSr5JR[WqXc`),c=PjZ|68fʞ1drD¼EWb5u6c Dm#vGؐTzY?bv_K yp"9%bq4*Rmow/]ro:L㱶,XRK#`zRh$n#X^\qJ"[XѠp-}tD;H1GppSLzi;*L2S%U/qs …S lD/_\#Ia{|D[,%8a$w(v ԧn`bզ OwtO،Qu(? 5*,NIDGI=FCՎn5AY߂lp*xʓ.ti@f&tV{]_ _br_w >t<9שz9z°݄avh[PAwZ4ID;[tnmzN> w%kҊ(.%jièɇZޞ'a$i.zNlCk5HRB@}p"ɖLp\LX@tBm >\#T}{+=[Z#kx=0@7YLC SWDP"N&\bJG~h7.73A\gW)[ { ZM6_DK) wxyψ# IK<ۈ;+m팆Dj2kye\:l~~]#[}`FaB;w_N&B3`/X &LTc5Pmz){"0p;SgJ g݉ a2k+/FgctQWsέ$JavE\,l$hWΏ,.v>ߚxPCafRvap4w,-ml`I;2nERr%a sY`?X2_0'`cܲ%rSFįuu$GxHWq1j2Q@1e\qH{3R0XS9D QC[mez#b%%qѨxm Dld u-Dy`1FǘZ4Kw9L?0S%lt-}+(Mkyɵ o}ckV+ pܡ8'h}槱PIc)~ -rj1z r-9E5^/ѣ汣6Yl2OzK Khut U5m(=A6 8rSi$Bl@e ","‰1.֋E,yO2)ZsL!| *Qnj3'྽0_BҩF-|i~[a`!ع>: Hm-%%(wu=dҜ|i~&. Q*Ay 14?)&E^]7%XNS,s=}uJ (W'z>p%j;DŽ!:q9 }ڒ##m#y H`S'pcpoz!kUp8 e|m:<,Q]ocnOgϨiHƳ.V})9 \GeJr;]\.~.=*' Q >< =ȖɆ d&!59'TMWI*XN-FﳮP\l"QC;"(\UJ`rDa;b}8ʼM? `5E)ֽw+ڞ7Si$PJҜ(Mu c3٪#7ZiYmGu q<Bdž3s7R#5GQ|R+G^3,~#6gklbpB!WW]q0hkr<5GwTR#0ݸa MSjR~nc\}Gc QLi]IK{ AO!\szy!kr+$-Nh;й8ِ6m(~Y8T]jP2 q}3$p+o7=Qչa,[[t*o4t ,=F!HG^)9紒c#}8P"r& E4tu5%l+}{HLryˡfrfc+:TOll)@?w{xN(n ~(x ֠(:شd4,c a1-/^XaSؤNZ&MmI)Ӆ* 9$BG*`wjO^֘0;!D[6+&mWT;"VO0̹Z r&'wDIX_r= TI ZdŐߟJLW^0ȡT/L2k Zk?-֦ 8@.,T0I H^`3\5p'>X%AC`;bY*D9;bN7a dɛv}|/RѰ@]iy ۝T.ⵂ/Ѡ"IvaUʰ?Kȗ;/ASb>:0 C= EdAh֚ |308܍ cL7%I2tww?*˙^fSҺRuzJhk>dYݠ}lGٍ'k-"@GpHI)Oc{SUB*ܝ}IրYby@=jH^r[Ʌ3]Xr[XPEm3:փs ͜_B~yn$Owqv\q4`ϭ]oD]$ސ ^s<:SeO} P.ɂFXz8;  3ϵHS)/H} o&) 36RiITFcI|[}^p\6aK@$|AUCBSNRshc8sҝr'U29̫s6NUCKx&8MU!FU뀛h!g"MjZK~BrK!NjjQ PISiXreWSM%FdI8Ij\-$p(X`ݐ3ț${$r9allR=A電7ޯ&;8_Z -n-rM Gqz>T*~(v:cEp4Ww=$o5^D ԼxY8o g_8(OYs, )4 62Qv1C޺(7Z39%kj$ nMUDM`j5Ea<(Du*9Wi`ꇸ*k=ZZVYE.D;p|)3S IIkb' _EU^}bHAZ3xITD,e,fSdѺ%g--.{j!ռ n_E-9}4Eo9JG%g ?{4L)oAT`/'_&Ͽ 4ic5 v77g >]|ӵ-&vݞB.^t5{-޷X:ЉCF4Ȓg?ܧ҆,SBEp2uK6y 3w zFjY[syhW9xv /{>^V8{M?d8Ap3~8+}@^}m4dm#IfmٜʒH矯8ǜQߊxKd2)W֥ [m *J?gTDO> QANW cPs yyHHKdXK sD)T[nTo87 +9O՞;Pruhw3I? nʔYRoa7}#yPͶJ{N"!ӻ?iT! !#FRM€R} {ա'쯷W~ztI6R~vux82S<8aβ&Xp:˱nYVwKʓҹ! n< =l .ex@%Y9=7lYӳh)BU.BM¤j XCY{"횮ϛ86+Cfm 6xi.)~d:lhy C٢]&UW=<lŅLx̪QvnB5a<|$wՙ1"d?X%lFLY4v6#.(-16&XΔv+su \ 4/ /,am}ܨ}ua$wf*vc fBlHۤhƳ^ؑg|+s+ x,ҳVٺxV3&l'Hbc!pF=w4eq̀+cr1 z 6-sO5@o 'bElX55?ԌAuHdXzPCQwWq^òBNp1  };;m4"\ ث{u3zPNW5q$_N22Ai yS3Pdf۸Ƕ~ž/0M! KA.Յ:%3ז>3A65m$55ZFEO[+~ L .hbZ&ke{GdlVI'4j17z;P%lAbAz'zrKS{joK-xteRT!Lj~4OZ*M2I2( O\]nN\#&Ds|-(Yo`<;+6 `ӧ[|9:PY[hDVۗ.]DnY-O4w~(*Uh%Z,֪^2z RMwg u?_h⾍2O(ycQg&Yf˟uj*9VYM̕>l?T'[^:d.b7 _y¡XN5icbMiMb-}ٮ ׵MA*|[}$U[?` ZQ) taB ئ|E{2 tdV-AmbCX̢I 3RtQA>D;$٦ǽ-v 9m0Aj@jQ 5(*;rck\ oGJc7ڳAx Ay/FeFKaEn;/]s]=jk4Q*8j9N1!1Fg~)uN Z>Oy5(ߪ@X>u lͣP[Isfz#qeĔ-O4.[63/6qťtFa4DɔtCDT%oP7xCydtw7Ƌsr-de)Î A#&JRpV5eT ^*4zɁm"D+|Nc!KYsʋUb Q "ĺXh ?IBcg` + ]- S[al@H$CfR{p"Vîֲ~60~>?K`5 \/wmj'Rx%5==U叛 Nz[X@^Ðռg8-t6W~s:DعoIvVMnߍTt,Iwֶmv1C7 ф:_M}3<9ŏ0V"I'b'm3^WQmqG |{o z$bULp E zim"ݣs|Jԓ3&j{ ,[F,Od?"hpecl,ڪ~8")nOiM#|[Bw/?-\O& .hG˨CQ,rRtG8|beaŝ%ՙMѢ*5$woȴ(4g;KCW?Mީ_6"IwۚTփv\v{Ua%>l.K(KVj6kϤ~cIddpoGL{\7‰yz<'yy*w lp=;>8}[YW^eV}JhzYҘ'3;~ΚvFl36TefHG Z}e|)VՙA_M%32HDBh~ @a>yos82S =,6lBvN;+M!Hy2jz(r6}CTKVålU~h h$Ԇ3%_ÒҀ[H?%)pJ=ۀbH GW= U-ծFL[1 7BLܟxOSxֻa{ MZAztU2߷:T-:d/:IK49>+T pߧ/c9I@h%(@}xٷsJbܧ!jr޴g0ߣ(jBS8:ZN-!lzq}z=)A7AmSCaj[Si pŪC$PR F0DJRǎHmvgI}-mUf'^( .x4RMP%۰<:,i,0v6wG("h)O4& zSWGo[ Edp\8Ygc^QQ%72)ó|̤ɑ]bf/Ж^kOvP=T,+aNX\EP[3W0_SD^t5:VR t QYdp%;(u4'.I&fEu+ՂN o.Ӽ6 cIUEC\e2>=f}]9;D"X),KvM&ݯ. ~TF?mhYkZxoFs}z,,#ZoZv!\I!YzJczɄla@ntƦ6Cź!#VC`X <EKˁbUKw5Lܗ/io3NZw .-d0uo34tJl>} hhm|+6 $t T]'- L&&t?_hP,]17DVpubo%2g!}` {}f/sfv|n0G0)dܭW'T2lNGEx}}|=D @꡺LqY?r=a"̮zs&baE,Ig]ZR~EcB'zۇ—}/>K6qZ3Ms f>"?=qK_]{9*56O!͆,h&2q@b8j~{D4W-"nC1"R0dHq+\-A6pEѵ_SSjhpםD jw3@ $ߌIb0yfT_/9<2V  /oF6/o:Q =[x  =>b RB‘Nf3] .mUF%n/ΪjdǻV)RKg嵛*x@/_ [x㇭1Ib\wBb2Vs}~G:>}$v-s)5d?2::{ T=5k:z]-(8_燠Rx/'6ٷwzXua"b.C,7[uu ~u!Ge8QH4u&)>=gR.DUeZ5@KAO1p-*p.M8 ӆPnym?5بw ]4UIQXS2AXG gk ˃8a]g XHԐ9˨:l&yD Φ/274v (i S5 ?SPFUḍ-lR, 5"%xgU<2mowSR)IМaobqOKZZw[$ օ[1pǒ --A8I'/H7r+F*5IfoùC:@~<aLf4"L@\}Yjy,]Tz }2OĿ %VY $"KP 0?p+tuT'Jիg #ށy|<$Gǃy~BV;7 Q_)bD."p?*ֶ "K\=D\5]͡} lJUE>Ű~vGכ-e7q}q%(-8kT9k41Bk dj;g{/̍w2[Ugf[xImۉ}܏ bI֪_#. wFd&FԫfNv5.}ް|}iF9% uI2w0<20*g1КZyX 2KM8Ћ꧷XNCi me>^AVEm@vg彤fkR9=ULk5jZ}gYȁk]q@"+s**oQ_J3*hit 4+~\z;f&/*?'/HF+@1 tS6wwD 1.k&ka#|G ]ME4^; M|zX/MD}5Ćn>6Dxtl%Wr`ȈZt îp0cϊz` >v[TQ( fU{ZPa GJpLwʖCYg| *P,sʥ}/:vyh[Vԕa :{+{';cga[TsvXkHԅqkeMS;yK E?KGy|Ϙ:K>:Ǣif}`jr;i ?֚pgjpHӴ_5)#٤wfetٿm5^jh뷹cs1~B21ȧf W1ŤvQpZt˾G<q^΄]hDnh 'ѽ1v 9o!v"7cn+`%$_*[4Q?6=ZgXHrs"Q58?J& -0Sm 0iӺ.<Qv/GXԊ؍|XƭV|sLJ\C*]rzprPdDEÑ" Ϥx'nbz(K`翾cJ=?lqGRbe':.v |b}d֬,5Vcy'̼~Q4`9o? ocw!҈u/Fd۵ٞNSП.*>\nǵ}ePo+-wi57zFk'"WX$< iͯ[i e0k9V v V\~YzW?)pW@nfE"ZC/M^x" X(ӓ)f-c{(u MT`Ջc&ؕX">G~|{bչ)'Y1P MzsP=9~1e)ܪeoaESHbEibһXr ݞd%ʱpTf~'̰٩=WA-P"dgF\f뺞;/ۛqq\^8ߧ3jMc%ňj]6~i{sLfka']]31`69twOfOhzf0lt*%)LsOq?7方8!7O3"m/ ohdܾM* Bm{{E3'\X9"|849O=(•oy{mp~`s7!1m;3VzESX'dy0{.~kX]Ȣu$F@c@(Q W"5_5'a\]U?="b-AVs|MTi57S/x6Q{W]B3Q!2y\$j:5>}$,)#)zO}oj(קKFyj# 7M<1*uO0{spQߎ5i-C*wieKzR,pG =O] POA_ rYO>O &ǔ駼!t=<=Qhy<O3tqxzdw"tҀ{ۙcއOd:yzW 2.zX/yHLp޸ٗ.P&Ŕ+Lvw\y7Yᱲ)*,4+Sb5ī2ZadN<;pbbr x_jO1?wĬ %5{*5;=_22I#9l- !&^vRIiQ[QnO'3r2Q2nzܻІԬƩpܯ+sR зb P_1Wxʃo rgBq[޳1pvD5@cu:A!ȹ?|Lj `1̅bNx8;SOeqWk%pzg28#jmҦJ퓟 %/[6mT <oڥC ^' #sA^^L& n;X4}/\w(f0ՔLJU P+͡|}|i ho%Ш]x?߰$e{Rg4m6I㤝η_rїDjw*v=l܋~ݟҽq 2aK TPtULto %98?"Q5T扗= %;,RG*"%ug'T.?549RG>~q7M@@g`_GDuXkGNn28ֳ WjB/&m&$=uAΔ&|v 64Lm sbw[fy3re#%dU`gZU{ŔȂ֮֜ ؅i`"(P]3d{؀):M+ߟvS7vu͢~xFe9/E]o왌RRqߓkK|EeI2 YzƶD;eS5&"(FS@KZh:֏ݨv$slbv.㺃IiaVCYŝπ6yb@2+I9҆,؝Az"w|r`I9J,xnQ=Z7f0H Fy졯8\wF\=y; b/~ ؅# A2 {%,ꨃrL fXghaiۅEG[ &["葞~f9'@7IюB" \hp,ɮk$VG+'!iPF^*/|m,5B^{ԠIH;w ?S?(Jl2aVgMQϠ`{꫸7IR@:i ?YۀLcMCYricp(;ѸΫ|dΪ#%?x9p8ݟ2S6 GM.F$EfN)9UStvrsppߔ;;?l(z&7.㓷ɥtm iߏAN$|yMC%833^F BޏR'VcwC.],j[fy$ޅL:s nc2HXr;5EW~?d)>,'=)^DjkB u䱔LoθZmS~ApŒl-saRF!̳",eV_kZKGa[\A*}'[8eQ,oJݚt9o; Kr(o ?ѽK>޽mtICnH/[ xS;9>sG>W<">e"tm%؅P1"LRXQ\| ;B":y Ζ5K`cW[:W2[sќp&GG~6Oe G; {J/S05y jLk5HR&kyvKHx8 9}ˑ{̦\_G.92MmmpNV?-:|$M@ ;nb׮[n)@+|  "tu]X qT~'C>R(cO_pWVо ܲ/4zV5.V^]|mQYyX`L\F]d9PHXO|X<ӵx/P dQx(/TɊ1\Fk`U- ~eoXJ+ $[ޥRq_C9)ϟDgVZ6#= oKQ )$ )2N &Maۘ_|ǛʿeǶFQotFFp?iR#O )+媛2'kE\чQ0 kNCdA%_^Lǟ`nj3f%l'|@{1䮃mnS}C7QV#fu##pwx2}:EcIpY`IOKfԳȝ9|";[L2'Kc|Vhx5VU^ܓħ WEɄB rcd (lu.ADs}:wW@MT 89xrX*xMe>${ a8˪g~IJ;]Gۣ1ꌈm/u*u]IO*N: > P )T9K.} ev_09Ń)nq4i-9_#uBWNNq&i&Ȳ~ER.>4XgyXIw_ tRIs83ΏA2GTwIП7o}m]XtY$& O&UGg-#7em!o=&Aǂ.@ MX=&bJ !(%0!kF{ &pA²P+"bq1ӆ &AKtk ua;ip(pkե$P u=\ W ;*o?A(Jƥ#[.r^;:ΊF8Jc%?GI(ߏE7*zM2{V`|ikf0EpَQWL,W'6(=rÚKP;mO',53es&JK,FcL#CK5]t;{":SqYu,HWhޛUs{F >⃕ *2/,=Udw'D$2NLwNp #2xPo3ͨ h)BчfqwA]'Bt[Zǟ -aƛz(SpsӢǿ#9A艻Y,hxf %1\BgHN '7R!aw!Vy)G T(;5(LI\mɵ׼ı>o}jo> 9}i'S* |\ 6拙Rٯ3@kfp xHA ̷[X܊ֿ\q?.bMUn=نV3QCT3zח*/1YG>賵rb_f䣕G!#h>x{"4Jp|2諗*( E]^4GӺ<@#}upO=auC2u슃G/|_wR1"89  2j IE޲(|Zk4r-;uל@2&)LTFº߉ScI`vF zW{@dQxQ&m\0z_$zGITIfK/ o]DDWCŽ8.e.0r%o\Kp(gʾe.d9-<`l1܉UA M=stoti3q2"[LCu ks!P9<+鲰@(ABw]U+'Bg*!~9QaF[S -6,(~e 6QPȒ"qi6k]xF og?E"r`>Sځ*FV*pl9']p\{q]d6KA0j`ҵn{QQle-*{E]f I>ŝB`$iyBe`zFB[#(0yN1X,>?C'qFEڬCN'8͛z$@>X+;Z21ī%|ל˨LH*SKrqw/g179*e#a?E:v#xC$3 bET>x{wY'&Tn3ěxD3\vqP=sjc:cSC>!@WUnJZASuyˈn Q&AKV%'ű@FkS:޺f@_HM(a M˖^Q:%~3 3|-VT>*'[)L+23.umJùQ9(eڙ "csLE- /̇X%oGidj cZ?TطTYO[ "Ѯ7A/_RnWY"{m~s8o.㺿ld!j;MV xRC_`Jjqkw4gu$5q >˭ϟRU+-it;;o8\Mnm^x {Eԍe ݽmaXZ89-GHc , "ILuG =̉;| ,=bM} cuxdy4:$N˾&9L#Pκ̀RGkQN{p"R3.{@Ps΅Ɣ}gL1KYkc_Y t 姎k/_īj<& E-iN(*U9ii= 7v?*OGM鼌 }oSr] V֕ŏK9a :vcZZ͈2cBQ/**ђ|6Pˌqt%,b!^-v!:e4 HJ:Is%̓ovE T4a6E&?|EE[xLf}iB۠Q3qh A^X-X|Zz1O{Rn=%3SE2 Yj#gFPq܀:zi \Yū8̃]O]I~%wڛl/_'ԵHkiH;vwq"3no Ӄ\%l6 ăxx>O\=+{}yD"GֿuネG6,s ;fK𠄕;L3Nu$*r =KP4G<~ㄱ όp,Ȁ9)e̕ws6߆]u 3) xZ2T8.ϕXuNWu+,⒛`W/ S05όKF E_J4]Qgt3XW6B| =*A~bNm*Vڃ pc5>j,* ")t Q`l8t_ZY̨;BY4x/,T38b[BʉQ{hTr3Ϧgw)$A)+TAA I|03`]X' BZGפtmcKby1>VZ͒僔5P7HԳ!uk7@hO)VnG6Nt]xtyZyETMaZKϋܒ%SFa2 1m[sϱ#Ty0Ġ̞G 7 ᫀFD`:gh"o㖢19Wh!c}ѥ_dEk6Cr셏aO:-"hgۓ3]{;݆Ƶ z\3W 8 T !.opR#4!JBVhD-?6ĉ"ŗHXOkEV->ź(uKԗX ,B.n?=3daBiG*,!԰lv_ݽÿflqI,2ܦt~AaTX{~f }征DNL+Qt< k9_HkOF`ء87(sD+!J_R+ǤX^ϒr& ".dq0pDN=)V4 g!CnAp,P4@"ёgqO`CKFٙ!6A {WJyHQ/lP≀9M᪸Af(GM1R/r: Ć|%I B09/̳ P04 UA&YV<K\ T&{-O-o XX 8bϨ4|u VY6HNl"4'^@S|Ϟˡ?|Gb+te^yi9_~aBn7zߏ3 `%AY 'z~ksAc8HaJ4)gNd֕K{ݻFLZ1{'$G1LHh|wA׈]!X& #Kl^pENoZTS:L9'KW(챕B 0hܻJ,P^ɸKۄ}ni4 J75F>^ j[gċue&f^~Ncj!%Qxs^)4_7n&Oc8䞛 ^ XyA>Lfv$A%J8~)`K:zfeF%X̗@bnC)BrP1!h& *I; >p:lTB vru.ta[Y8': 9qmCk+lmTf$v!@zW뮠 `NxMvѐڑ9Nz?C&`.r0ӽ=m~[h ¿@d=hTۀ =ssm8s.` M;!8snz c1 eңAi<{=##<,zUB9?e1E"KVx !慪DQWYNrvpGdzhɾ.ߒT`U)>bPo$8Eg.S\H &TIKCpTdVGBlYP3$N ׁ= *d_*p˴޵-q]Yz䊖p5:{{d1n9 ~3Q|D:nY|nXf\ِk̜JX:&tRaS_A'z {zy2~'5#? kL`.SOkՕ5wI,?}1RhKYӵVf]HLȇڢƊ9*jI!S{€9mel8 QDwMĿ~ntUŇ4|y܁z m#N%)ʵK3PsF(2DhbofD}S=%+BZXb/aOqS6+H&j԰?^a00vf^PNN&v /I \:IoKv=\"o99eOei]XND6 m|i G@tRA͏peUGI{XO`[dm2<ۄ'{V$J[cNzz# !Ƈע B׉~ra#x&\ܕ)}ݣQJD^ޜcIڊ_~YM 4UD`ݲ`v"_b [KPY4_qlۿy;HҨ! |z%Ӄ |-|"MCR򨠄0Ny$T3`)' с CP#$W$`@7IM*KkK0Ncun1:)\J1w;@noBq{6tgh>\wİ8xm |9XJd!1V@ꫢKoܬne̓-Ȗ#3ICpOdiQ.N !i{af"O֜_w VlZ{q'c Ǥse~lPR#ҵO 𦏲Z'@Ƹ Nw yD*Pt:b%>VjaroO+gS+o唐S;_ֱXgNa+ţ M|&DV$; 鑕gwZF2St^!!82 Ok7NAmk"YUIAO|E亥6eNjr=$`7FH&\z[go c DΜ3:J]%AgO Wy'^JEODc#M{`c[Gdxl PNcT6dgtNi:#DgO̲(UhߩBڐ6)>v9?$7 xu O BW ĶjۻTnӎ[sLM2 Adۀ@0: '?CkNR3H5#ocB'o.:Բbv4X%8Q >u'l¶uOYpm9sOA(3ZdB~@Iٽ@"D'<ș}yU+⩼.ֳe3dHnwPa[&Tci:4_xLT߆tPCa9!&Uޛ2[ &dZ[Tᡞ} +!JZ2}1c73<-]f4n`[_ZpX{I"!,S}FWx-"7\мA`66v6hT0쀃zCVgos4o3,R4 f WE΋) 4 9IDݶ4ݞc^B=!@D{b0'$&~Ajl[O!dl 2K_/]]({E)v_J.DۼqA4ķ?h,(=mSɩla#Ze@,xE>AL oA"FzY83q!#8+}"ԪĺHێ˘T=3PibQ#p hbeoGd/kM\ѣnϬɗ U)4;r.W9EķL`w!$Ⴐi9-ͺm k5Z9@ Zd%D)X.(ԌXەӔ[נ ʖy= N:'{8fP{SKvWVlB{FJM=J@Noy㿻t+ncؠ:^HpKVO܍%qkD'&yAg||zi׼[grjxC#)׈S6v59[;cJ=qSH=])"Λq?@m7t%^ hD`OHEɉJi`uJS5HŖ]+M.`fK#"d ĖtcJve7R*R/T#{-f_Y?ya6Nx[8=xRpaZ/傹%-.BXr`=wGNUTĐ qmI{ږ=0Q ~1-C/DZ6G1}i6x)_% vKv շA=݋WLii s-3.*RixЇVhH& 7kvs* sYgZ%-cm'+?ѣ?߭U%|"i2nR NF{;ֶ,UIsY6*| &Dw_)zn!BuUa:uf%Dhzq%Yrẵ]–׾W'C<:$υkjMNWΡ{`M 4!!2E*qJ@bJHG]E06 @c?+W$P%>ȝmISbىʄKZ6=)#UN ζ=n1^"-Sǫ2?+EDf~<> 5K:Ȟy;vU%tKî=U ,Xljoޙ(M*|svlF_ҥlT]$ B4a7'|H~ %V#}-vUU /ư;r4įlLVG_ +V5d9E BtR0H =fA4#QzY !2|pA5CZ!tp Y @L ]\ h:ʠ-l&iC3Juڱ݅q'vA+8Pn)An>.9E[klZA+t I2Hb$1:Br!NdRZ_zc3l( lۮꯓbdCbz܅7],Fj^a (š9Ya|>}l GzA1~Iֈʹ;3ưN퀄T*QӋrP7$C;_9_unJdŨIqTKeA.#/:۠i,(f*]bN#{T)M҅) KF(9/$ʋ*S/?H;>Y 'ksʶ!2V|x_8K+ç?4?d + 'ҷK nTh\?sNGښAz>ˡxEd$aKH厇@~?В_"]kLw[zu[-KrejR)| 5,;,4g5NppZ)k;y5LpHK72XH%; ;Թ{QܟƷcYv30zxvö){l?Ml~=YITzaoNEA[luDijMKⵗD#ɨA,ᙂH'(C6Ǜ7CXkfrz4)Fo"(+?`pco9eZPEƞs_9-գjGtf)t29$` ; vOEFQ^ش6dXih\ 6!%gl;4<>ÍK='/Od6&sSv&ySE,kHhq%%_uY눽R3$"?œw+l‰8X%!/؜0*V0~ӷ>/:kzeb-6 = q1bv(6Sm(g g4r3\Ή%0Ka}M ĘlTL <%CgiA T.ډ^lr9?ĝk|ps.^ЪW@ ߮_$@Ff6f/|.{g&J!dŗ#܋cE(%z>6y|Y08cjD,>1i6f7Qߗ b_FfaWW86O~#j[jyTf@+OP̷b<9%o%#yKaRؠ9ڎj̇ c;-|m~,3=rV\vyn K^EF +. $y)8mt{?٦ g],G'BdM3 ̞5V61$ BŒhʅʱCDo2-$_Z¹}uD\=S >>\qP Ctf7/rg*lR׽ &*oep$ZFJzJ!4~#AbL SB@Ill<\}B?b/e&uN@ɩ]PBwdp NYt2ɧ[,Dž9g07b@5L  s:zbyl0 P[]?M 7|eK 5l̈sf*: à&8Cz;4̏bӱ蚩穉O8FPo?xvD@ ɬJ.oFB˭sAqcxWglY`z|᤻jR-CD5_?^%"=q\,Ɂŀ!c#[*3]JzO:QA %BQ"OLJ K( ͘u')Mr(zMgbIW{#YxtqN4X+6, *o4v&ܪLMjP 1MN3\Ed :lxX= 2ee'T\7a,-ɅEFFXMQJo)crDS&O4 )3@uToWdXk0< Y9 qKBP,YM"hH2F9Ջ3.6/1 m )|mD'm- 1j`Vk$gve (4(gR.jK=<븦ebO"v*^Dzc 1-B&|VJEĸd%MMqęSWWa ײe+BQ[җB5+$ hʲgEWm%A0+9LP'R-p-J^Q?}4Fu_BwbN{I)'!ɀT Զ{P>ۥ\~ %7_cV?lA׃]ɍNRUb1#T ݛ4uӱKaio}{14veH}xQxTi$6:չ5WkA~:ݞy˔AvR:8gh} "R>^@7Xv> NӞ~\L +i*+m"DM&[X:SUv <`D#2Z0 p>l=n۬%}l% Xt!DIĒsY. ~"r`|x`S/o9^_@862K;VΤ[ j629"Z2G=Lpitud(O nB”&,4QWSnU*uv y8kOo*/uCk rbԝAЦUMNuYBU6jIs>I2¦*Q+?K5czw j 3jM`E%]hW8AW* W~P2smi8kVmnƔ3/ k87} EyY ߤe8qAsu ^>s%SDȶlPһ3R1XPůWe)y12 #0ҷ-r& Vp⡝emR@]Ba\_C?xSm#J#['MZj}1ՄW™Q&Yr40X>I\.\uAknr;~a,.%@v @q: jJԽaz(k]rsȟiGFů8Ѥ?9?N+Sǐ9䖇.7] UWz&QX}I'h ~*q[nv@>e<Ҹ>D֮%Uf0~$It]?oja?_PpRY}/_ m+~S'n6g|n\txtJ݋ 2ߥQs4W<d^(nN +.eO!@ֈt'QR<10':K99Fm֠2.kɔ6OHU<2;ОЙ?vPXiwm}q4| 4fuwr@Co2.E=™+Be_gvfH ni޴ 6L*fu??H)G{eF~}? ٬6\j^@c''wdԆDdQݜ"g;vGZ/BB* x~ՍY,2N.vw1etV÷>W+iࣕUc885 %1݂~8 {Y=xX*Ǐ-_ T$peq~Hw}(<5y{%͟@nWY1ٌd9MnQg:' T0#1qEj'LLi=-N~EV;~Y._ '_IeP3[ p)HKT34C^Zsnٟ!=iJmO{XQ77͖p>X̊мswm 恑5hhuE!g|KRb+;TZ@N٤$!Q`kչ#2r3O+ϼǖuڑGbLY;D<05Z % pF'X31lиMOrz' pOb~yIQ?(Yx>q>s'hQ@F +,*tcU /Z533xI&̾#=A"維R+Mt}bA J.&O↿*^Yk55f+DmX7JbLj9 L lR(#_\4\&N_ϭ|t8[Gt+w.y86SY-+LdV[`5]uLȮtGO?IdL?ِRz<#{(Օ ^)`@262&%𠳊 ^GsG"n(UhFuiȹ &e|ts-v[vp),ZDL;JBl/Eǭhp8`D`1߸DQk2s9`0Hnt?Vl[~ؾeM3ۡYCz`I):|WC^`_5c&׾'¹?$Y `B3_I5!kxy G`IMhv~~ŗ-4CF="Op!Ww_ՓvDlDِ[݊ƛ֥ҫ #0^3qѣ.d?c9sDMr-V3n!\ȸ,PUu"~uMtl|a:R5/ZO>oG>KBy`d W=[/1G'u|fǒgw{̥h+]:FJJ eG1p@Yrۉq33lpo,,G sPKk BAOLի*V.}1R"lX3x겮Ah҃ijN{K"O'"\VA'KNm;%ԧ]Hg?a~^}ڈ08' .i~htܲߋa"cf4Bwcj~zz'gR?Fթ&KG/GcUb %tB׸ ?!FY/'jiS`]}A #8ln.T X Kgg) MEV *z<1[*-*ת`1[=|Č @Lȿ\穮N9G:?)P,QXOwe8Զ׉EJ3Ea]aXrImBԟ-ꂽz*M &);͕m˴! (>,fCnliP3wY|TS6 )4(\H1QşW=-i:ߦy= ,|'t0!Hczߧ6W)uɿ )Qzv1ϩO])lBڤA?q4{+)hU2 ade;LZ c;3Q( _MLS8XLx#Yox-]ks$LCp?k p[4 y2>(5Oewc1QO94 )B 3w!Os.5/B)z|d%X|pr^z4|]A%iRf6VŹ8ANV@#_NVz$'@w~ gn틱[q=%gc?,aFܮ4 d{{B+z8cݛhx҉)MAe律-]>P >ZO`zyV,Qi~*_!:N3U#}5Z75f\"EK?{ Ss\ kuKWOsgE&ʉ5rW4}PNҭyz{I?ݭmغeюn:RӿƊ!znUrǝv6oinm!9. ?<ܫ}.%&֨Ǘ)8GKK@NNxQyRl;^%Dž}ګfИܑ$~UN[io7p0ſMWU41+Ǝ~}};NRb4M,cDέTW[+LXeSOiw1gcƜ.lƤD^$*ˤ3AzQ2!#h64l=I{|fx&?ظBGS=Sɟ-Iť!e6;ëuIRI^xG%´ە[%Rur kҭQ""ð\Ikj4||q.̀֏Z}rB ٳ_iճIӸ`MD0q.=$"f뱵 "}gHh$xEw+?/,}4[#^E !;l,l%$7ѤV𕍇4VqV`͗vrdo8H\|e1=GU>lg\W"fNOyo~CÕHaOwcavOîsi7/U}e^5;V7Yo?V) )lI|UNWőŌvHWzrC3E)e:+Uz/_xU:ͤ* [88Լ>P#J-hU2MKӌ(7Rj[>|Sn@qM^I-rշ C Ѷ`tti-_1tt1.Ok \pྌQ9v 4AXSԺ\nI'{)!pp3ὡ(YV3x e&0^~}+"eK5DUnjv$N/8dPw+COxRLZ@9Ds@s^_Gg.΂#;`Sr#ݗ+Ci'#OPa8ˁ=(Gr҆ӃEX`b8Y*2n`ǜG>jU',UuGittZ( Ѡ۬2d5B9Fz@ᵉGHO1feGz2X{Ngs 89@L=41iKuz].jVWs[&W(t*IdZ͆kE _#bOz.3˔ ~Xp mt5lj05w,vYE`kQhi?%`R@nY2!nT| V6: KlڽhG^-?0&k["QηXw68f]z"֟7q~|@lmp]N)ͯYCND4%fm~?Z֝0vs^ò`F$ԭ;1B)pe5}d ̹*<>0B=:[yef|B-SU5rݿ(t?6Jj| CL`b&i`"UⳫ.x _^Ku۶]KhrZ (U:0m%"޾CΰB nwǶc4Ay\@|I 61Q%rT~Ah|ckj>//V'j$9;yڍrTP3H. =;4Sy HӁj9šdi߆%l ;HPOruj0̈́O*+Eѻ&-bfap=taC<,-^x/R#h ش=KQ=H F1p@z,FǟBqa !V+Cd%R%}Ϳ5 ʇ=!jf|.\v&뽢XB#mȥd+9B^.Tn Zv^z(!Sؔ?;yV!k%Q >)ݧVjv Ğź*C(%6Un}XF ;߻01@oBD'Ԁ /m).?룘U`8GAb,}EsX:uy{3цRCa&E?aMPz|0&Rϑ=KV"Hտm)n "BӶ@#OA8Ǽ7%;z5 ef-_ё3W[npg¨-yA$_LV78 {qj@>¶bݦ-Z;FK[l;׫ʀQ8G΁\[&MeÊ+L  KR}!ģJFV?1&hUf\jCtYPo[g|kSZ|>ԫ|"9'/5 VL*0H+_@3PWŝc҅ ;EuS(+{ GTU~Wh/*ςL[/cTg}buX%*ߦP|ԭv}[ M &, 3nwļup] &p>Õ.P}"َcX4-525]}">dYpҚ6tX9\hk\|a,1}j|0: 0(Pm.7,){!xWJ=Cgs_>p`Er{%A9]ԋ> frHgzG*ƳX-hnGp2%u{4ʆ)m[Zf(ٝʱn9I/U KܚSFl4.VfHW ]cKTBxM_'Xy1.bJʾrA%3Xmƾ^o4 )q5l#(! E|gH*}H15%W|BN4]Vâ30mψD5 sLpC_+5BYqC&5t_sVDz{.ϼp> GHNVbzv&`mC?,N("ȧsn(AL=ŽhSk(_AK쏾H&i'UJOw&sKT}]RxL%K[>4ZqR P/,^\V?U\}}~f vٍfYP5x Hƣ'VK2bmI|١FlV|g5#D`øn!OQv}u $EV`,\tdkɷ!EmذUy.A4`wk>r (~N P[.F)CL!I)f6Rf |]oW[M;:8Nb'X-ٞwTuG ,E䟢][}݂IW4}4[ck(ɒULɦwtm{0X(y֬̓뎒ޭς2k PE)}Wħc]dhyÍm҃0։x*ޚv!}3Sݯ|:Ǜl5$ EjKKŇB&˳FF;U^kwD-C! :wXKj*mh^qs6;AY営ڈB"~>u%^{t2]"yذ ?B-+f2l |,BP[ 054B-!NO (9 7UГώܡΟ/|Y_V $2$ ?@unF;VBbD yιdMBel-BV%M(}PoO *WiW#bN%R SKhZոVKu0e9ZW$0}:SX0rб/%{巍֋CZ/ϒc袗\~QliSCg={j; .LF}xZFB=zYg)zK_a?_䢈(| y_QzHY+ \/]ڂ@-ջR&ncI۰) 2Inqڭ,"U_T+ӭ:[\؄Iܳː=4ѿ>b:09 v }vGh''"Є ko޻{'ʲ1wFq:79êӳyU׵%@knw7Eѯ9H^ x ,ӓ&6zN۵bV4)f瑤ئ~IBh'Ԅ%ί? )3kb{%2[/P7Z*凓UWq. 'KrÌ |*_,&DsH,?wRJ,)irf=txi3g$'zmIR2̧ʯӸiS"Mxc4.3ә& /^奼LUȉRW(d7O_Vsps3FzFU CH#A'S)i ˄X!W23;#06`C [UQlc0>ȟ#9lO_6nSI$ަ0}Љ*"^/k=a-;q@N):(e0m (yrH=-woiagU,z14:R׾(*i@P{ $SZr9F@(&NX;CֲƺY3mLj\p4@/}$ps^}$Dk.k.÷iNɹFB6 'ohJ|*rx<ФS||Hw?fj['aQ_iL{2Z cVN~[v AS N2fBDPQŰ|,U[gYiٙ{ːy8@orsj278b 2-Af<-1mȊDԻ_pP7:Q^͑Uژ:^&hՇžAB Z/k^CalM T$-HٟN4ޭ}zTq*qʇ@{^\l/f|* ZF47;[rT:S 8.;98wA ;Lr\!)?}R"z=ȳ6idRR`2Y:0׻ QcNm\|^Wy'R;r6W2;ɘHMFĢʁ2P ֖$Rg@" <I(RA&Q'`U+q3EIb%PF#ld@4gܠm5G;.7BQY5Ralם$cԕ_6aF4 lQVϰPBLoFN3"xLKĦbԴ9 J\<@]{l(Ĺ_n+'0-`;~,,tHiwQ bێ/OϑIW֢00y(c'eQ2j%v]ک} Y:3dM+[-M&Q8X#4- C0P؟mRi A?)rHɮ @Kh9. t@ 2iI~ųھO`uˆ6Tg컦j`nܴ%voN97LஈK+-疑[S&!TdƬ}i掙wZ'F>1)N,g.Ef-7*?4Dx XVoNye'skq\q 5C߀_55vmqȓv9 "qZTfe?N(Y͓ KTGk )0rê֯UqWmղ`>O_o4bnBG7YRFr,fPt he<)yߋ0"]ӑC{ 5[muxPCi(Hc'9p?qq*$!rn#jr֢W#܏P<]"6P% 0&in0,22ܣcM )q-uL nN0^$H؂`JJOѶk+@Į7_G⮹RQ} T<5LhNOWUCq<\n5$ .+ot-<5igt&K;Ri@Gk0I9KT`LLAJUkel) j`a(|5z.{J2w w:Myn٬ x˖~yǪƾ.0 rH9xڠsF“`bm)oalv)$I:`C %3f-70R 獌25ZJ7H= °+/Q,u$s?|3ax bc6KmY;ZHxKdk$ßX2-|fAĘg$G6@Շa^Q4F 2ipP7$4,n4Cn_0 8'54ů3Vq q^YȣjC)kHŵ H x G=KxLsH"< ^tNcs'O%NT3akʱ֑8Vn/P$&xbgVv}w bo3@*ælM"BcA?hZyYwr_@9^Et˿ǝ?q vVY~$yaNB⹕WS׮5r`W;mMr%k%^ K*Uj^|Wf76'FXrlN`;i'){yZ6^^Ur1C/['R(Pl j)M{2[^$8Ğ/@ζu=NA&eJ|H@`Rwje$@2sEL~ (ϣ^xS%Pԇٰ aaG(/=PoGï2/ik.)K k&r?qbƽګR(5C3o'*& @1= QFd%*Y{I۟U>-C/yrTj|s`RT_b q -+h7Q;uoP.4V8l |WwAɮ3-% 5|zi癄@18r%Ym$lW/ȉ0EiL|=.;2 !1NfRl4@ug.[sZDw.;\PuN'rI4BEOUgKh)= ioƏu<<[#Ep8i!v=JMWXv-U@saiJ1@(ws[/ [Ç3pQ`V tDROLd'юx!x aw*?JZ}@+ΏEE!ΈXzU~Ⱦ7s1,N41WJ8c6%p9=?Mca]e"N3+2|(svVC9lLw/ F?*z|(rovnڽ< ?rHT0RJ_* QW%*4 3(8;ɿgm m,.j窒/c4NĆh,'kVR*~0 IÞ22Fqv%`G5㽀_(Ry| TPo^+ EL;MDr.v,!~N5 &i Ξɉ9uy ]<"Uzeۀx:C"/{L$x]o F.2phE/3\,'}l+WW " tne(;'I~tyˠ8H^1MS8`c{"=]ǝ nPr -FKdE͵ *pMRE#(}t^Ь&剗:[0r.1,j]ȷYȈ r8c##bgv&lXgm&~chck!&ndv>sCJioW 0#̸#*-$ x$|*VAh\X"zEd3'T<+q4Nyq#$6xr姱zO'@(/Ay g);jY`(Uq j]D &8:̝ùu lx<īmؽw,2@֗*sk-#inaTf@L Q'-?6֗N7 r+t?6L&)n\e";Iw|<$NC2/С]Z#wR'])NI;8WvŅC>1UXKK,Д+0(; ] 8UP"&Ϛ)kWR XynHa^)˜4D[i`ck#~S.shA %e?l9'-YJz+'=jz# v'e~tM8p> .$8 .` NQ+.ՅT ():D݆1iU {RS%gAմ'hFܡeHɸ+:p J%!R9,/+׉'RgB^1<@Po!V2}?> m@֜i@>N#df<(ץ*ƃ_[1[hq\v JbsCݿM;H3 Z:#fc,{Iy%$5vIJikWIQ_wyX MC!x@GMo=.}P[|p17Zq|'R洟LJN}B 0 Ⱦ+_z흳)@n.vE4VP>s |Csסy6›AvPtbks:ec@:ѐI&OI!]]Ov}M󗕈pc=c" f&3-\S7۪]_=r8թȇ)nr>3&6zݪClg@l>@}wse^18W/CW ,cL4H1P5JSbɵF P35A]d|V>Y{Ec?]wμS'QLlś 1BZ7VZe/ 3ZL .6fѝ.K3!F8`ƫRm+Nx#}śIHI8d3ffr URi¾ }w|CBbru0t0Bӯ"7J{X8.?Y5A ;t<2Dk¾n{r@?hLm31PiJCr!%fkڦ|Q5}`Aܙׂ/ l$~agҬ`w)؅+9j >0^?]43L/M^&CA:Z;bxx۽ ޺n.w kYՏň<"ՉPՓ6'`knJݜ!'4±u$1M[^XIEtm̔ 5DBy>$"ֹ-'*Un\gi E o)hF ˋS%Ow ΦF@Ȟ1_V'gpfoNzJ3:݄u]c4r5Dy;}d i %BD>NPο䞽&C|aG~3F?1x90ɵtČzN [.Wi|,~=B=!Mq`|.6bb@,v&XlQJ;fB6"5#DDw\*ޑW:`<)fc7La9osx1a Ͻޡnj݈a}Z>R]Ҙy`bk.SlDVS(L#Dh2 29+kqؔExo龖LB j,zZk-P.:uf2i×~{eShf6Β~)>&DKLG<:YV.ԹŅ BΚ"+:-_MXD-C7qb5:>4)Tuŏ2_PR ȞK$c.llH7.V`[x63-iFZrc_yC.zPy[Nf#I-u8z1-+ǐÑaCjvy:glPh_$HK4Ό٧ !} 謞g F@S{ yK;8][GXBnhGn+p8T_^f4R{tqPw{9\sn⢍ ͍VҋiCdr< !z ;󒄸ǫ<H?r#Z@*h՘U|LTm~ٻKV+4ڎ}U2FN \BOaAL>qv Z&`e&0 JewTL X$m86F${=a6+b0SVf @äV5,RWK9[Uy'z@Bc&qsiE?jx>DiQ@gOޕ"zpڭ>՝/ƴTk9 ש$;GXA}/ɺ3'zm^(IO.\{δH#g5XJm2\"cz+XgRt9@7&}I*~9$7Ty$zdS3oA$HS2\ )9A. ~ k.zZZcd(1MjeSM u>sH Ʊ~yO&f3^Odqp=E#kHs2S S)uuqBJ>@k`J 1\f1!"(u~Ȝ PuS)Ę_(>Q_[41OYNWe1K;Tu)@~RHkTì+pސYmZ IZ[D/B-|ŭ~_T;KckÁ]5iMڨlG lt@JV48`fmh4q(Yq{ -i߹$yGtǙ1rYm1uA-u&Xv"7eфг%951ˊÊ"-ndan'E0ǎ抨%@UGd ^w` }>l07"[Ga"|FSbW:2$fBۭ2G=AL:myaZ3/4".v=}oB-u:E'U8#(*9m):xF0Hf`P9esO g(kQc4燈EzP,ב&#!W$E tJU+}ov4퉁CuN@+ C6+bN\31/9'#P|? D;L2!rxoawԥp4a[Dd/>#uj--v2.dsԧ?l Qj:_u.+`Uw6--C4:Rr.j7@o`fF _ %Y^#UwgbYIЀq(`h ˵L۰=)&Ao v[27u(K yjqqu}-NThUXGk t/0~w:eǏ|WF6ڜ}0uj3E+ ÀPB:r˭O0%X˧ $ALCZ e("C[R Hq/ChNDG TtL<;KI9Ι8%cy5.ǧ>DC)6gQA#| r+ R^C CZGpyz,黇Qh |2Ȑ'̾xKe#8Ċ3NP')*P4kACeQKɛ2Vnw782?;HDPWfL eze1T3Pʲj^,6z:U/W3})ό"aG+{&R.sS%$X*CvnQhH`2KG&O%f|e>x Cx/5W.ƈ|2=xyCC'Ș+JgnXWc:Zo4%eg!jW~iLҾ7ڵooFCϳuwCbrJǽSh#K8H[V-&cUWT@<'Mد>2ŏ9qTQ֧.5Clѭ127]J˄2B >wmUwqDb)`li{ڰI`i~1/U_%TAD峤p ߐ-I ,H3g Itr'fLiN3`un]/J {?^k6\bȘc@|ai֥iM :JP9ߧ֟!1 q'8_ ⌜:au!e+x 4b13ZWRYSƁ ^F0j-k@r^)WVFcGOHfkt6$9b6Ȑ)YR$q bmudY [atT8Lߡ 8 >{eb&ih/ D Ir;=U<.uG{XN4aSduM&H y{3D["_]U/MҴ›6m&OI"A<0vҗd{L}3H. } Pf+' x2 WMx~5m7f ].,A0zyCYQA SҔ-]'Frc@ @"$qJjZt~th2"ER!H(x-{;!8ģ6f#1Cj6㄁\3&*:ǏmzojTX, RR:#§- Z |$2)fvLS SvENrmK]ЙP0&S]nZN=im" Eoe3y`@5sElک}J7#&`j0oyLKxIxApgʨ;Yv].L*_@P,cys%*V,v.n*%݁}ڣǹǠTuXl[kF͌t8X8 /88V3 EI1D5ΕwdحM@ 25'BH^H3EeCot^B@ETNz.-w{t+OP$)?afyYF!ݒs)5MH%{ Rd2ZZFrivG-W֞fDvG(ʶX[-X8ߣBU`sJꬒvo3IY MOȳ\8vTRe~3!Q65_74$^ُ0]l?Gp|uR2ffhOV :63d.]8ŠAzR.a" 3i8޼p^a¡h\\|p$|y?Ҏ1WF~/fmQmTqPK Fh1gmDXbqXD^savzRܹR|JM\{(Tt!F;ʴNniӁ 7g;E]S15fCLނ߷??쓵d-}vlDzмI_^*>JlTKA@X ? pk߾1VE 6gF+/W"ڪ.E=?X* O'th߸%\^[^↗~d]~VsBp23R*R nn#?ɑ2q#uIEMTB rnA -!bJ^KiA3tB8\Oaz=W !ZWKizI01w҆.$ %uаې 栞M` 6sy~xNKFh䒔ϟ(M`>ڔz^W3 I}HeOEGgm13sh2+~5^#9%wBHq4<] |AivSտg8,Bx_x)T|'wf(jslTVG^D zMje>5lޢ#D7OidwY߀ (~FȲY6}-G<~SNɲBcd _u3JKrgZ wI=wDRW*S&l۪ YBN֑c<Xb7bَ=͟FkXP?BgDAQgeBZXbP[~CSUޏfc$gi{9ᴑL 3XN?*9a*jn"t7Ņ{$87_#2=5Jerc o)ps۱W>.vn>21OnIGdMQuЙ[;P[ON Bb4ܕiM!{spCaUOm w 7W'2qIA7XXDbQTsVe[}_5N J{@8 l˒cAGD>Fɔ6)Ru73oEcG,14(D'356d>:KڂUk|jyN[=ɜaTIlVh!ro=x>3GFD]e]4ݒ'kE<3st;T,㪲xY|y D|5NQNlp0l9r41e*be*gцoYRxrRL[rVOW9gF,t&Y6;&:a]np\N=Cr`G}XL=Gc.05dYо{E|*0R!#hپf3NG*e!q-Ue&\T\b7%Y,]mP ̈8pR^:LNA y8lNS1<r[,v&6UPi^rv ĢXR3t>> ˚Jִ8-%SV>4zG`dw)"Vegʱi,b[#D̎PHɹ3\Ref5Ġ x%oj:HU(wgHsr# 09;vC,K=u??I"r<95AxYv8̪z a]\BpRV7ڴ/4 [\|T9x ZΕ^u _]S!e(ة̅~>kӢFo!x>=PRRwh`Y`NdPxz{v'[ )Fgzgs D"Tsj֗8?:w=ΐy3 XϾdȧuḥz]܋4$`MR_{W5<'M$?Ӕ}^ )6!KRVP"۵wEe4Lt!hzWk*^oLj{~>Sn%0 tE2mD{Ase$QO.h&g|Q/M'(wD[=IP^h? 3E`9n[^p W 凯&!8~Uo2cŗ%u0o7Kl(NRVL4V&15q/f%kJF0#dT+JaK~Hm~%$IS, {@ )7_4$+p1{KqLD&+S5bST8p_]p&o L%/kl~eaҷGڌA1dcܼb2·eO jGjeK6I/va92j>(02us j0/. a3, <@{n^{~9[2]ೢg!e2cvp-GW r(b5/->XF&* |] h9j>Ϟ}CpycL͵scm&B-2ergH*cvєE,tQO3u}C`sd@( :euO#"]892BY ";x#4< ~%Է6`jzt- mS5HGlܜ{E D!RhEēU7aB,ET~v``nd=vXxmG%h}‰ M`kX;Ig%Me1%%$ztrz2녓/*̈;-j16Y 3;'x;j ;MRDbqdmv ZEɛlC@H&82 =-a} qrd踻#ߖ1Y5Rd}(({`;rKkSJE<` e  l?0HlzLw LH:Bj,5ŋ= Am RU2j f=Z:fG`"@qjUx0;']v EJ>O5%#{a'f|bJ>Kr;G .\bw}1y-#dMy zzM~Z۳FXE fa3q´RgZ~c+buȻ8aZM2E)5rXħ'wim߯fsڴ1bH#a(yp'OXGp'?8[9M'N$7?nXh(n +g ;owL\\֗+ 닸)e =@S-*YUhHuvE}45aյ ^zܧ>dvb&?yQXNᒞ0xPh\7WCl+K L~NzюR[\`5@ S+aR0 tN? rP/||kىwa)0Dz]t|WUrIhսO@jiJƬMe3Ap+W7#6_ZUU]dvϵf2)ѓ.H^з_%|fωZ^uI]>H*0^L0x]JB +R7.89(J(1eq#[gU#N/~(vrϡ ?@惐#C88b'4 ow#)ɧx;ݠ-4p5n o& #~;]I-83tggQb#{ͯEI8?pe9--T]7w-/>'N'j^abNQD³9mQI)yn QXiܜRl=vf*@B_DiZK[ C+'phw:Mr wW[6SDZ1Y8`2j_F#o>2lA\4X_AzP"jm0͉4-*J8hWM>{\ &e¾D۔{p?t0ƷdUxN1r40R>rl?=$-bJEOv~u|Z [&%\mgCXuI's~ T2zO_ a ش>ZVҴ7]anH"O?ė1o~&Q0)}ww|ӼΪ0J̽3fr+kXa_K:́ ˬK`@ÇǶb=AbGFgA-EL'oQt?mGwJ_9:8m{"ŚS h`d34%qp6]tb[|j[FPUa]eDb'+j+o 2zGKlkf@U892磖h] 2EAs3m^Rne4*dOo]zltO BɭpC(V% R= KW#or|3 ҲH@6@@҂*_^Y掾Ro \bY8@ f[ ',$]̏2Z|BTEK\hzĀ˗,+řHhi9P_8q DoY,Ѣ r&kc$b=4@y^[V>+JireFU')\+PJT+gp^@Dn=:[WD'MD!}(&{77E-[$ } :8? #N/iB =縊  'lPw$M7Z'B\a5w%45ʢ#g}jܶS?60} 8w{֢GN 5 W_#r4 S"o)-PQvQ=1))m4k3X.Nh?RP|/r2ݑzO%FŊ.c@?<:`F^\V+WUQ>qO-$^%5:8;s}?%rNuoUˍF 0b{Gl3`]MJcbop~G$Ȳdf&'hD-=ѨO{?[tywO윌lKi,p'Wgt#qJە* uu,*2;CJ+k ?rk&KS(dKz!M$t) kwtN A7Ryd-~3]X)hhk-U}]uْ_fd~7D6b'իA,؆샆C/ak#F$1B0M˜_c' _=Kx9+CEΟiUχŧ:8:J13} K2&On@kc s:wԮ_a m鳑<\ۏ>>x.m pl?2}Oi5A\kwuAO= ur$I_Eco>ܬӸXogPE?w̲֖gsg"|csjIu#*L,Dĺ1!608wUDuy{`v 7)DBqM晴^U!=xXʱF04 f[012N,lʊs=؁5}gH &voq3'dɬ+<'jDC*hׇMNR%G?ĤJ 2%?ä/VcBgL%|=|9,*=^D"%ghdc:K7"`yVɃEѰELQax蠟EDѻΏ T\XDp56pIyxSvz/*scHɿ$~.h3b{UtU_Z+6(c(Лgq>TiR8 +"W.&dTQ;ҹ_cșjX w k(6B>OK^aQq?cX*3VO\mԓl)G%E8 i'#`6 [is1fhNlR?e da#78>SꎁaPJD3 e_Ċo>ZBeg۝=3XEՉݏzf|a2~EuqWoOaB)4ÃmE :w3`_O@_g;>ZZ̯dա1o^0;]qbjͶHZ\1Dtq‘-*/AMva-ôՅy ?v;2q^6rLiT8M){hkb!Hzh.p5ד9( MiWC MLE_7AD$Ĺ>vX-Q?pR\!b30y#k^܁xi +O6ÊSp&G/q ,)My"t&ku&j@yO}{ZKmdwCVn_bXm;dsޥ3ew۟U < ;H5N7RW?{D҆ mp --.i)ٛNm:tWUwB7۸Zvv~zo*Io'Ŝގ 7xe~c`=<  Nuw_SxT'C*t0Cn`;ҷ;3ŏ F@P6 n 1x2TI&pE=()##Sbj  Bnieߛj7hg 3}.rr@Ru[Vb@-vZXu4ːTI2ga`'-tC+{IoGDVoR ا[ ݥ&Oc~7 RvyZq=1QF%\kAT[ũr'=LWJRug?խJu-k\Jԯ=<ŝRUʱ3{FIMWQ~+H3G0M4kp%r P'X oGR2%:ds1w<Y1y? gz%BR)T KE·1 $.6Ak~CXXĈ}1MWjXL*֌jG؅6ե*2q=q)onŇÄ+&;%M Em@zȴ𲍜igI_=]] fSB&Do.?+z K'\ua <$^72ܚQ!#6|czB0Xglyn<~+jYP!0k+8]*,!.f펙N`ϳ: bJ:4lu(FO_imlH|L˙ԶZD$֣\h]}P|۬Tw "P?- eVHF-g>zS?EU2`nzZO({*o錭@!{FP rp9`s!_aA!- Y]< J!HZWh^MM]%:" n rǗQeN!Q.2/} +Ɠ>= 2q.4 [ H.4^6 (eQ&9v`YtX(!i)$ϸySd`:i4]ǓV<ˑjxťE- D#$E`H\7!:~r/31D&#qw?/ClP,("pt DA㍘O5s{:F|\$" A 5| C.A/c}`skr`*Y**+r{U@KQ/*}#g ( ۃ?L\ 0%+}7X!ȼnXC05#)7}Wl7`0V誕G]x8JYndKd 9J{~:7ӿ$B*fiO^C"Ofd^dzEx.”F80R,pGrTy`]Ey A+y6@n7ָ0k5zC,łC((IIAK >Y>GB9Lބ8̂^4?jDj>8sѡr̳f؇iS}:>ZOմȾIOa蹂g;㈺U&9B;r5?QOn Vbƍv: yi\^@ߊj퀇νwD_H9fY Fsc*a!帉i*=2-LzYF['c.H1sy{?EN3U9lʣotԬzn+4sA0Iz+9R_a^OFP~["H3elŋ>z5+!Ylwjm@a(HAB &stk]pWs96?1gX٢ Df$V+ۄY"5jbi7 p],u`Aq;'Vx5xhЯ?96bYon&9^t'_iLjrKsIjƫ wLᠳ(v0iZû*.BQ7`jp"aqHUg0C.vB[Ik5jR[JfХK؁qWl{9izh 23ZhpRwt8 <O;$1`x¥%xcxt cūu"dCjܬ~M!O6n'\/#sn@33GBfOiL5-IW;XY.|_PKirK;X4Dv$`@ /b;%)FdaxP]b2A&?J{\50k,yĘ2IZ < `i9B$w(|iQ~o!3H6&{ƭr[X&3r%lnߕJ1ctVCwH9:mK959eEd~uo -y4>J\l'|l=p8́vG=YOIUUWZe/RnOBUYr#$fWK@G3ۖ];TzyXX1(YdCQVDA` sI@!R}9K8x)oTЃ?8I %Epޕ1"ШXkwۙwrEU>(\?M^]\O` N%vXF 'tPp^4JEUek+7]Qdjr Lvg.׍$GWu7x#xF]9⦿A`._sfQ|Rf\YXk7ۆ- ȗCK0t[Y(~6!.'Ѥ 7KU{b`gsQ0P]2ա$W -xZua~jIE'JhhZpݲ{BX!G/)00*r}UKHz'sZ7/YP (iueߔؑqB 3D rJp9aU 0xLX=QDtƧߕYG=Y8zT@b81nI&GS v4H^!$#CFWW L=`6 <\mI/~ge{.uRyL ERbĉ -`> z@m-B-j~hR1ˎfp["VۤlEKZn&ϭ8krdpTX#bP/N5BhJ̈́VT`-~&UoiλDh{Ш|W8,_#=J)ƠZK١oosƬSTM)W`x2V8 5tA.FhJ},A:t(uu0yL(LFa;NgVN#U$ ˃ϛovZZ̪rgFS vF`u:XAE C/J1h"?j.%#+ ł\;]ӄ[!p3%(e02AWn=HDJy&8)G=v1-" zq.; tZg2>l;v+܍)B&RGu]_NȌ V"k>X +{㉧IAa#~Daǁ =@'yf~ kЧȹ/qBzo&cy AJ<>|yBQ=h܎~&adJS!mGiut-oaddѯs`BߥAPXA:?%9aZTǀ CR8eDr+`}$rRV|>`HD}ҙc1~s'x%;GĖa1ۜ"Q\Z!\ijG2̩utYv_!C&GMLzQxNϘ76W [Ҫ.H &5k ϳ^"eF.C^Moڻ\tOhV@+M ?O6+ C7KS5a!elnM]1Tr1q_[J-]X9&44u/6G_b煪2ޮL%?'PۥH"^)rڡ5Ch%} }j2pcQ3I0űNP37L(iUN ͑ss,Dq*x쪍y"`aψS5kgPH߬&>s`s3% &B*  ޞk݁':r ۀ )^#_r´fGx=1Y3'Q[鴻 PS{m)G\, E?OX'02qBZ6ASUmYEHsjL.vпs~鯿sS a珐_RBB&k]WwSlȑDP_w3)x_wwOۭJZԅ#^ w +%:ɏςz6.IזPN'顝ɧlb]ʥMklo̽21 p&'MaݒGGKTES;^i]韝{[~>xf݊|t;u%p @KjCb}А2Dͪo]q22(pW;V۪2+hr$eݲ*eή8}جmN$Ѷ[CS.*yÎT[~ɱ*@sX- QlS3G;_zl7(AtCh:.; Z@`,<u=l^妠d߃v$UCaU8s-׷K2L1I}!epF]{Yj19(B9UxJ//r/ۀRxDO~VyW3v]mYv ٍnj ,`?>+ȕєtԡvru OO0g!{+ ذzK[?Eu̥Ja6`yQS PW3҉FM X#qT}M 3p#[n])EOo9ߕB_߳d+-Le j٦Ypu-X+?M5%lM2AD[JAAZ=9y݃YN)Z; >ײ>"sB(Hp>y򋜻KeA;ZX` yz0Ó~=XbCL.5$J97mx҅!%XdEv͕۱U=E(֣}aՎU(jr3k+/}Ć@n) '3p{}7tS趁젝̉@NCN4Kq ~syrOp»vι 𳱙롞Oyw瓷g)H K%.?UxlY%&"i ZKv[kD@VF9)W*jFJ|>ˋqՌҡCS "t=M0nna]pXb"hD9AirZ *T+m),;A-N2BؖZ9 E&x^6Nr#9-vE?ã2o XX]f oHlZVRsSq&Xh^T%BO6iM GkgڟuG8_Q|t,4^a`On /ntURLSdQ⍃a;E𕓤Id.^O, j41jqn}d/m>m\LQ-UY<OIKbi,t|j ;zQR5\LhB1'Xh2-HBq-<2#N5M½:$QH%'Z ~4oQ/aV>dB:Rk$[6ԓŐ0)v{azP~~j.S-;!͘&Dw1׍GxKr/iuŅ`y!50/łH4/QqtS3Q½&nHH\ELW"umkCo{CP(l'k%v%Kk_ PyqV,˒juc5ۮ!- h&51JCu#ڋtÏ u{9EJu%V&[ŠGuMN\oGk~VϚTMO;pUf(m\io2"0vDlI^ټhNasf\rђ[/KUTG6,JI{Y5rhϒTƺGcQ=N oHz2GG&!';oB;y}|ZgW8)J.TW;23"5DR&w^|fF o\BjX>qǓߣL@=S#v_aJ@/F;j|Y؉"jaDhP*BJVlQ4T(йn2yKDz0;7zr۩s7E}L" [i$,??!-y㢦(*[hN):>^$ }Yw:i*NG qQEܭ[^ nBZKsqnJ6'j&% ~CC~L7vHæd;xz.mEa7!V^.޵{'z0}빺Y>[)atZRr0vչqJA|b|^Z0<; 0[Y-2!5R4'})x/Pܹ. @Nϖ]iz=:$G1=%L*5vJzg>*t6,Ri ^빅Wa;߯h=5.5c;~)lYbghvk^KqocA]lkB\,Cˀ *`Ka^P`B[Ma>t,cT"XnvT]B.J;s)Ax`v\Jƛ=d^Qaft-_zu53A䰗%pl8B#!U4vwUGO[$CL U9ghc@u3Ցr,HࡓFq@3Ƴ5"PIFplNy4I=&'+Ep'Vl;m/X 5(T|)C3MϞS'P#q#w=r(J 8Pɘ٦>t} a4NE5LR'gzNIp;:jR[eiaR42'n}3`G 4~sߙOWSYZ'M?lym=ɧB|2;P̋R\@flw_4H1yo5Mu)%j$DcEOPIN5 0ֵ9WE ?LzU+=7=eiUm=jSa+Ӊױʳ[8wMzWi2D!Q1'4Ųf5K^>ks2Ez[VPwj/k0G}dIM)G("CEd ke"׹/BHO_ߒ/f Gid]-fd(q G1hjL#.G̲ %(B+kFdpCO(z#@eԊܹ8X!H. 4V@ UqMᄺ.Nrv g%زP i 0{vi̶Kn;xЊ*s 6nm3\^˵ "Nub߯h)_Rg|]ȕzu]a.s黨l.sMɲ8W::K&H0I6/L(ٽO9xy>i[.esO;hvym Y"Fԇ|kԃ/\Q,%[wKH. A#Ԛ8m қU0B)L Z\iJDE4*8ef2?xfW>2ŚfD`Z 9#Ji8;g;h%"~+t^w |f Yjk ..s\rь|/]H8"''磗ndOKuC%/cNs$pU2Dꔑ%u:ϋ\Ӧ~ޯxxk.IG'ԾS )ܑ~j2䗵T43#! @‘>6Q aȫ}goٛN$7o;+m^"}sC0sg7ès-tr*TMF ADݼو ތGŨG֙ lQ uFJCPb;є̑1Q)2t.tupn,Š%s0֗|hg iYkdT3\}}$k6NrKHueٳ. sQ6B/#E-;iX-Dк귧9 *l\='c-4X|!Nc%iꔞ-- Ϥ\{dN2-ηKOg7:E>m%|ʒ?CbE,Q6yNW$ 2("LC$v3aU'"@; ^,MvVZ`E3F"@&^ww$fS96-!=Zi0A̎FQ?,S5{zU Z4mτ[0( c̬0;r K/dJse8^aş7X.A蟓T@mlFRB!Ww<&(A/(4!P * io?UZMKb?O $_vmPFzW x{37L\XgM:ѸOR `Eiߛ2b{J}8Rţ6uT򧞜Њ "K )2dCl:\ )v_RQl_+f+"#!UZYmʗ(h,8߸0t#bϢT9nb&M?A)!N {E&שKA^Y(N #tL<%jWsCX; w lU6`#ʯec831s1:~pɔ:}IQ8CK;v"%5Z4Um";|,2rRϻ"SCdF A˄G<1"~<ꄂRm!S;Obq[$r(߁*iaAWSsMҪܞW@C?PWѧmȊle"^W !RTdIAJp^oٝJQ++glj=i㲣iZ hY hi[b%mc+ d6@ge_C7}l{4o<.9ԞZUM>I8А/7$oh">[vf-#݂>dO 41UE\" ؉w^yBhd\`PK cuP31a'h&_f`wr+Zx* +Lp z 2/J@t '3*H?輂vsAP ]*ZO_5ɋŭEKnjI*)NJ☜v*ð騀QB.o! 4(a9"a)nD\InD k_"Xm E} ==Օ !#ZhAFZ5`Asq`r?5}qq,s/ӌ8zR=gi-(1\ҳB;?"}38tXLŬ4 3Py쭩#2xzS[|7蝮Ev{f?RQs` o/! MxE E%#4>20Kg=CnMㄼ˹=9_L#ݑ|ExB7J0cIIc н E.z?L`0|JE4ߥ&rdPC5~l?zO/+b0Uϧ32b">\C+]m^F# 0YmdAp:5y-DXm-A^vwqUB~Ə1+gӋA zx纷!X&fاH9W:z9E_=^W!}XK>OYK98`렄& y~c<0/*uίAIWmYK2oKuv6%39L{^|ȣ6 f Tp]a4΄kQy8*S\q< E"GIp׊R\hr뻴pZqv&}GYv:k@>?9ӭ죿..|5JF?Fb)?yd!&>^ڬ , #%`%2!@|BL yfz^ JS+ *gD6L1Bg$^D B,Ԗ3xȮy wE>.{aAo}ޜAWvxnQ-y,f}Kq(&vlKm&VGt*{ǨU]j&yah@`ahSi\+^~T;52̈́mnHx ygz,)z|@an68$x%F uѐ*pTt~> MUpO\ÝMDdKp?Ct7BVS&}f8SLul9sEϚ+kB>>16:: c1/KʠeoaF}]jB3󶩈b*!$K).4%#NU,BK0a *@lXMJd&TO)Ι][:UB6q`Fi\Pt")Qz9@G [=տ"ؑҽπ8?NrJ2dr![*5ahKzlXˏpdN粏;3wq[)O+#,Qzs}z":sq)仨gޕLK8X1`-N5*QkTWn6Z͖q~F|X9t \yF>KqkW_|&$zO4?Ƣd[l]CՔ4T8JgzqVbBE`&r[x?a-<mdNSy0|QqkI%%j #5X9C-7B2Tߺ tHI9B瓨MwTM´K}lS²:Jaj`:xIػeCzt-YZ:}MEJj .=~c,"-uN[gt!}q21k9>\!%V5JQsOc],os0LЕz;/2vdl{a Ge`r/RbGIX:ֈo,O!o}gb!k.) 猙(ECiάBrGlĭ:c\ZV,aLem ":a IwcYi}nI{ {_>[i,$8vZ@uxMIV!Ϟ 8z/SZیz@BmtBѥK;gϘ:0 =Ps}bM*XGrA$,4ȼiZ  Ett7Qd4|sk#]i+PMR7wt̙4v#mRnJ/[i_/+{"s=,=ܒgҝ Vq^Xbc-lOD QP1y ڊĐ.) 1\m@#gaL:OVd,s6[V,6?3AVil[HJUzij5R ޖhR3ܓnɹQ3F@Hš%tyZ:ǥõ_pEX2]q wf7sʝ!pAz-T7I@pCZn\LW-04(v1+׬2x0.CK(P ;/yRQ _b¿TpР;mf`^a1WʎRv/(ق$ ȞʆC\t{uBk!/4{C$\'GS2s)jKEmaN6scwDMVU20eOoB-rH8@̩mj" iRC-d.(_Ϗ8{B1D!o%zDŽxwW*~ 7qy #⢲ +!_Y#3;%=z]DO'tHMǚfo/ ^rYXD۴ Hy|^K/CV()0{*fL>Jo^ %>}xS]@ڔ}"#g^< Vl҈IT©# N@]2m?bFY+c7cÞ;#=9D\iNr>-Bfp p>S?nBxhS|5O  X+% iM2Y>'%ŌO;朑uY|j[vXܽHц)j2,Ũ @Yn 4n@-jmOu>?5Js_|VPПz.R⾠ JdfZ"k~U,#mGdS1OdyLAtYYG"KV=.уPn ɲB6ðԛXdyQlHIw44q1q|vć@1wio>vmqϘ=N+,xֻ 7be.W6' ;99*_:Tlg.Mpahn+dӬr Y=V`P3 ~aOPE=RgXPeS|+U^☋jҏg Pu66_H@; 'Rl+:'}ɡbhMybrMoLZ3ͺff¥&Q,&-wLj懷5u$. cgkÿ_1ߕC=+̜\A#Q~EEY!dkdp%5S7,2&$UA%0Yb{W2q)ϴә]IM=,"$g([{G#x $+8W$RҚ ۺB,N'a+6P*I/t^ fS 4aٗYDS WTOI_mQ/.JfFh!}d)Fz㈹]w> %ˁl^PԳ,k1ּ>*=\V@ ڥKκWKp/)?$W\0mz VVD}*i]d.p gj❆j-#=hҴ-1<(\΋X{Kg~yj5D)( h5|#-MXdeH-C9(0:$ʁP+[BeUmoJ'"UyDh,"&谥|ލsq,]4{5;lVm%;'8nwy^䉪V&I6;$mQ%>rSLYL'gNe"mThXUg (8թBO}ZolB,s7ʏHszOfJ_;y^'w௧#& 6lIq)FHvpk c.mGEZ4K6pTsDOW (&k' 4o!f.fx^}ACZV-4Aדp~h :+8kPjych {U젛~'@qo]kRнMB e}5#N3%{9TZb[#RzyB@33 _t 8- *<^$y@jjljˤ~±쀺D={'?ڤFp/$^ÓOLWOE5HX$mQ(cIԱң}j#/}  H1;H H{AK3d,{ vYM<)(tjc U; Aܻ%"ɧQ_ULL%![./WQ5u Zqn?E|}i_f. o%!\EpD|/uIEzH:kE{&2whLVbM]A:_Ѓjz"_-f0Iò\{@6kJ8:V`}n^ 3g} du]Hojh R0gFߪ7J `Q VO4~0[Sm#T?)b5D5k9l{OĆ0vN!ф;qyLVvxRAoL"ۉc)N>$7,t,"~5g&jN r )V)ZJB/QzK-=Ǝ. _N#&UoPCKEF[pmY v-`(fˁL#X"~"ԸNQBͿGΙ]b||iW/&-w*%R฻Mp(VR<̓)'BL3 8bak366 3 ,eJG9Cyy;;xQ)'{ xKq q-r0a6fhR=Gٖ!Ē+{RiSU]d;87ybpgR"@] H ҭ;|0uIKN*Gtp:s#i\痡SaÌe׳ u1_ݡK))wXt; xdnW.v\/2!_8?SG͒o7ܙ-HϜfuD ߳9N =,_QyF: 5jh4"맞nv Pe%" -hE{Ѻ1C~o$r*7@MVT6 ]P<~7" 54)M̱ec0 Hb4\K=L;TQ N ^얽u\JѫzX€W}S,(+>.Hb76ڭMy3λ=YLEa6]|#LWGirU)d76<~_Du8!pˣ Q_#ƌS=k9)Z}vKEw=:b{N1wtteuӶDZ%PwmmO;ٳrq.W@Ve/F0}/|w@1y)ʤѿb#D(c_${xi(QH^fBs;[iO{vzy ӇҎwZv֋ѰOhBI?-OT%`ݜ= 6 =n%֯<̯hNB0ՁGئL?.|DwjRHI{Fl_%D놮n.b^1ʲt t#?\b+g @=EzgQ4ƛ8+uJ ޠ?x{\ɾ'^׮ͫ#6ߝ;bJ/W\Z# - #L8O.X7z,kӍW"qdMa<+_N7];?ЁVbJb AxLK mu-(/LLNj465J:[7?SrNY 7킨 /[|I%y͢s`6RK@y)z$Q(hHgq<7{27?oP*+cN^c;4^mщj?FnMϖZKœX҇ ]c‹툪17ԍDt}RŨlG»T~)z(9g|kEMΘcZ>Ugsj" ^ e_OV>50cCxEn}U<#67TԒz\9UC>cf&zH <,/D6఻1ТdpM՚Pg09r 4HF/c0]Р\Ѧ+ AR |.3n={TDP`T]edsŴx+ȫL.669ͻ3 1=H +AfT!/q .y ǚr9d(jĆ@$~}aԶE3/cڳW1y`u"Ţ/E.F~jQod%Ez(3&%IS"E\DWCo뒴SڌCQS8vpr"z̹SF*%6574/7?JKvc_%;2ECֳVrd34.DdKȒaBt[84N*W"}Vk\iJi+V͗ y[Ћa:"Mj~-Ơ wnjVɲrx*|͢\~ź5=SڠE[Ϗ(,i;.z1 EՏk$ɋ.NAlYQym&QFQ]4rd2g>Ls1ybb<>(?1h;B+8PK+W<\] 2^-SxGE6 uUx֕-K{J'LX [%Qq!{ nj4[-FfUP(#Y׋'w?5mU 7l'p-Y[۸T5z'y8|YRnKS|ݩ&r+lw.,\1mR {wbzʊ\F Ŷ{!'TxIPqK1U31P#zlN~ʆ452˘ S_R2*)jaoؒ)^׿xU1n0tK+>F>D5>eH.ц|3R)9]ZO_x*SbQL ҟ }ЇxUE,l4nyVes Ό_@vZ 4ж2XF*G_ f&k~O'A~  Wf(4{vdp^yYlM4PL_9t`NPy:N/(L)|[ӔYf )9[b? oMv@F3,,([3IJ[\LS,l>gD-lRk0P)g@^'alr%wLR!/DW蕙"Lj\"N SkqS=AhEږ0J{Odmܪj}R_F$2iN1p{uӳ Pݮu,шzEs=Wbʞve3ڋz`z%%6!4Xm:+D9?w|QY2wzJrp e x)w_K7"%@u^46Xo ul#[23ND^ lS+"xnnc?9~s,D}[M4=4?S¸"g!٢+.vũ2N}+5EZDe5# Q RMHc LrŒZXksH׭~zcgSu;U3-ͥR &)yІb&IJFrP^z%>b) E!clDl*(S.zvz`k_GOʒQϦ Sp9VfH`')DJ4N\<,"IlslQ;$ջ|MJvAV%ҧQLZ-u5 !D7K-(cc4 ћ*a" MZp\I:8 <.253bLJh3 QL"ĥl0T4˔dE5g,٦NX'^Oa D:F`[)gleZ+Q~C6f)Hؙw*9]IalܗJZC HZ\bޚՎV|]ӫ74!R>.FXw$P,)_W]Z[~iVh޸/C]2"R9"4 o__V,{Ab胥RrCχ}czh^vM=t8U]L U`z#.o./0c.j=(kdX?ki&_gv@N\,Kѩ!+_xDIFQ";02GR=]fĝbwvZa@-N )(꩷ke +{ܛ:x .w\PQ;a&=/V|&`~v*g0CP=̲JUϥTn٤ k[Oz[; ^ȃtL$̚V&.8SǚfmvkV̯G"l\B=N;w@{.)1.J6Qy|cQ?4V#a `"Qz%:p.抢|]O9f%TMބz҉'ljH wd}T,y)˽I~zܺ8OZ-F+lK"LFE|R^ W5"%طݢ碹Wz;{'C6啀TAAJpW%J R ݮ额XbYQJb0Vݴ@X*@L@0 6e)< {QJW.' t[:8Y >3s;#U@)8K搂9[(!i=nRë5}8 g[L6{QEc[:Onh F2A&$diIlըM)ʋEM1yirk"|@ TM_u3O(UqO;$%ĞNs./Z+@dkB>HJJdX[:*s JL1gŇ>L* δw!\;l+7n j+v|VA>ݫ#Νz62d ?i }QEߙ%G@ZI&;t+ :e$&@d0ZN㷦nFO*ܫ(sEڡMqĖ]pAuVsm>o'Η&9 <T;ӥ4Y{viqi}All#oV  W?ιw٠U/Sۍ")#Jr9ڴmC$3hDÑ.3&ΰTͭ(Wi,a)bO `;hSb%-RG+\ce5& 9>/vsAwK ޝ^rQC2Lƒzy[8j ފT1o(L`UQe7V>*pC\jDb"6AkI:*ݵ9G8_zAO1i%|{5,+!8\#R&@`+)uokj`rjXVR0CUs<.~`JG 7# }~H{CmO=$;]fP,M=r I+! 69~ހ4h%(vLBEDTY B#Hz)Y9Z6Dè56vOe'd({f|o674#fgX 3Hj896m)M:MqZ)Rǐj06ڇE2 0N >6?CX?໦nEY-,o٨ad>Qa[ ߣ/L%7 cLwp XsW6GFYq}?se)e26}Q6ֽo[Ϝ_w,v53YַW=~vϔ܁;npfLTv]jR#:욘W[FqZb&t:Gˆ#<2kg^ Sw6tbP_.jφP i a*!wG@"xYg{N}ܖ? */vrw,OWM 4/tYbg#!T;'5K5|DNlTFp7$ؼ 1\1K- m*mq;.]mVz!Pl #.JKIW EtS.)㷂/&'m||WQ,+`hH1EDkn]~Qqm tg i؞v8IL}i:ez뿐Oy~3`4pܲE-˽ :w+sm}6>5X4՜EP D |edR-@gSsC4s5,=sOf/,BݷMȇa8v'cpѨc-|MaPK`*J1~4291~c <Ǔ:g+MgץjcEG\oEP+e׀ wgD=]TUTn@roSy׋;F. (Y^J>+CiuZw1IoJZw\ȟqG;e#T)s ?S&_[ 7%`{ *'.yMҩ<?Be*+nGV&\+?3I%u@ eQﭠhrpm =ljt[W|I90+U1V+W!gL7a_.7QoLX%S- 59mX*7D}pz}#w>u׊<#)fAUqY(?W;J>kC"ٸ3Cf^U[3v[$g?_^*ott<ąc6E4<̊Ac7<-DJ`׽ `w "q"Ȓ,qCRG/p? pblbc&~_‹ÒShNP6bSכvu%ƪ q.tDD pM6e]0ݱ 2@U`鶼Kɍ; jTZPEj9wr? ^ SJƈ]$F5F2עn_/l•.PmG~& }HqEC"wPj&W9ʡ tj^xֻ4RE·Bunӿ&QZV2w~'cnoo1uR‚CU1Q՞x<$q(Q1g5LEhR;>;Wg`J|-d !kj2 X)2CO`4<d)u/4 fxw(z3 yZR՘`*1Ґ귗\r:1OT&`Eɾ&}7ɨ1mp2(,43p[hkΰQfx<# U"Ok%YR.>gfۮkcr}svt\.:c[Fʄ8#? DzIUM7e:}=ٖQQcW:BDϘ-™\$sx@DZu*hB6%'\44YmCG!׶l}ܨ\ TO}}TU$4\+Fu.H (ziO>/vbV{9 ִ`kpE٪|ҹM6>=^7ljV*9vNkEA32l6{`5u$C5+5:<Gd29whn^Rn2[3kU.u$ u%b%:XAD́x\;/fbNS1^c1ɜ-moQ2(iCwn/)6d@=R_gZUs`RG+ΆvXv_9띿uM' Cbmgjy鯂 E'TC`E Ke0&Y'!zo~ͲoיC%)nO@8yް}Jp'U.LcdK,bC蠹j-Y!nZfhdveUõ m$|GH7$FmAٹC#,'bk< ͧ͘U-HZG%U,P>RQskn1rZ$&F^ xD# ׋=; 2$ՃKV<#^yDuV ..ǽdXoIJ: ?ytÌZ:zC3&,ńA2q2LUqCt\ıKub_([#R8j$`ǬަAk2^g&ma?TM@SdNחzo _vJ@Ҧ=Y &"V fz AѠEDOfZ LSPq„J_;&MG̓3ER3+#d1HayIARDj"FqOCPḂTlߎפRgy/K͓Q7#dDOo[m:I|pɎ3-ej7DIp%È (Zeo+ix,>ԡCTf9'/e… xjY%ǹt|)3dzc&(gXWhg 2Iu'8{22ryK%ot Do>hs2m;oT$R !]!*LUMJjfnv.._!K(ZQIǮS,'۠UOA4lAD 4V˜Eʚ9gl$B%A1-q}RI8ce䩥`7X7Z~D(6^j;=l8 Eu+ޘ[^rCb[YR #FY0'DIQB,Rȋ"AMpI~Y"`GuH]\*mݵϲR U_۞l<.~K@ߵToj`Q3 {ji}lq]Ų]2gw#\kXaG^Vbcs#LmusI.ιsMW0rW !L QqGbO0Ҡ_YX}: !+fl6D #\c` hU57"d‰z5yid8gR#l\ͻ(*(9LuUv #L|g@\*gqϪQtФ`קS@9㎭+v%Qs7kda"X'1biq+:žiX ҷ)MF VXg*=ib-O+ݯB$/47HS'wR>@X= ̚A7`̝k!&"5a}nOڟ4: i?ȯpbF$nߏN,$T ޱ Vc}۫`fR:[}gDL>6b+:O_ـntq PUMpGu|^.;55̀Ա2NBb\5+g8)ݝ~@IM4- cx_a-ԾxEee3_ \lj71kh3u[/钯-kvV^N1-&.~$5A|uU͋b)nd=(uERPL=Es树x:ƉmM[:`yܽ>{~]UƑ 3ܗ ُٰxfjno&;v/]d(Yޭw>%+9/$ˤI![ ~XqMP5WHKR.:u,ՖDiw3*zY( O73ƿ^z]y27sC=نہL٘}S2HkR=;3/th]W)wxͲ?l|aŷ22Q^ҡ"J/P i LE]Yb#lJ0_*+6;}$Ya1ˋl]GI.GP ßfݵHh`<$RZ\!u_cM6n 0]m6J˴6(ާ_!B`vޤSIXyV_Eӿyo=]=9fnY: ڵQd1=fX U|w!ᡜNϿ O)bjoPqOᦗ ?!(3s7SmwC<)N6Q|*iBJMVXyg| P"='fnU h3yQR{Gw̭Wň)zkGĹ";'}g"u]3rj9knSc!L:ԕ>|RY@ y$d94(6 _rfn}Р$nt]rU%Y#LN&K"^4'D6 ~wg5G*$FHFb P-OKޮna-(gfRVp k(:VfoWW{bkBV܏ RHj]8WHİ xJžxE@*HnE9!UW):AlHm=FC!d|t,9ʊF;eMP/iE^88f/=;ڄ8C!2hDkxeס#E 4O-Ѕ(yBU//ͩ$1h&J&@q鴓DqXhTwG(BLL{r(^_zA^81KSj||vOt<ݸDc<-XLpHKwX1V-W%MܙHUL @m .bpz?y!ϓAh@^@Ish(K~ntc@3zN,Du-bi<n4^<   kuN߄S_+_]E"?h 2ꀭAc:\q> 0`WT2*_o/pZvqUy1Ri-a8f:8|t p8F58m3h@vَT*C o ]eH ;9+пőף@oQQBjLW-`bn;lǙ>qzbSC'_*[s1DCSc H/ZKBO2G_J$O& #:"Rô39 bPHfi~4YEQ&Ljou3ʜ|H;rvƈFϥ#95YdT(/}{ ;o X;뜃*P/yF=c;o\ScUP@H_͚Ļ tjT cxA]s4N5XTyGn|uP9^[탐)YG;n,-i󥓏701NH9B+s83٢sC6☀qE¯ xe􏏂Ƌ$e˙=^tQ~x3d=C*LM+c)jBn2?W֝iyi6T0nR}-(n9'wϏa4*WM!pxe@~5Nr J&{0+ֽnc@L l1@s=YL쿃muT}Kt uWGuI;;@7HA~&a!OtZ$¦G\H#Ta?+%N2#yVi M f_ăX?G IPklc!6"(- m30P ^-+=d*S.9aTlAwStGjU!؅iQ(".iQӃ 0;܉PyR 3!zt֏B#9ܿYة:*[M1S<&8&06!0s {Z"B5dJ_cuhş,Y¡LA Մ,m+2J%|0Ffabn/5IFm#AZAyĹUHELɤf;.BK6r30.!ٿ*SF "eq9sv|C>.WB ?{=B1,wy#WךxrD}Lq?NPbH;OzHöLx|T \~ޒ %L7ak>rm  Hd⑉|5vkwQer˒oz&]V? N*e3T]* Y*ިUxf#VCjL6]ޒ'$,%Ok*n) m݁e}nr_ߝ->XHc=3]HE66>crP;K`G墍Gߞ5VF0ȳ3oJЭpH~!caxKI,s]w4+cZtʆ(K[LY@8o]QVll&;*怄Y&qd,j+$&oIϻzfG*r^d-1WKDeK/< i.Ѹ;h =3F jwplChg.3)^vqub}vg;V:(W3G|۟~Vxu捴s=~C ¼>{Awsz)3̭ +RDC>mQ2N;@ (.2\3s7 G SXݺÃEVywШ4"DN,‘05lHLtraN7C+mR!?*^"w:R)"/^AH9flL=!Xr,(o3[.Z_]]bdC2GSiC#^ Ux.\C49>W(4Ӱ+d)`^=,H{YMc{2 c+/M*9?=7>-TF^kmE>wk8̬/vL)nV&Z6Ǔ}Ʌ. 6]QN=[ * $Q#6Y5/,̿GDw/M߃Z L.Xڳ+!dJV#F4'FvF8_7I;kM(68:@.|ש3*/Z9@Z=ϐ= $5+ޡFj&7*zgTRGqXX 'CgUg{v0Yo;d]U/E’ QB$g\S^S󰮋PalJtYZyA,fgAҬ _q?5;qF?eҖF\ŔMT2MHdU I#h5'`*x~֙M`aLZVj/X#sD4_{JO.|tzJ*dtb 7u1,]=nt壮 M0 r)(\a@1phedx w(X-. GVRzf;`4$Td|m"pY@%-O{7@'>|$v*y#gI9+r?6/j%m\\A<=2P?8ayLT TMڢ`%Ԡ1űI_~Egr'W`~L8EԟJ{PtK v݌q..Ж]j01[XW, 8 <~*,CE(s.@v] ]ҹܤ)o !,Z!'pRKfb\uTnR>_aO{4O"ֆvзӻ8ӡ⼛:5moǕ $>hg2S&P-ptG}/8MDL[t :s:gϚs30g%?WΔEM C3S1L`B ]y ̴ óEb 篾uB?1(%jσdr;8tfu쏍s^My8q,'~faHq }M8EI6VOJѝ ۰Wڪ"(DC C>%KK`ìnT.2 gxѫ(sw' hƅ7tGgрD?mRTvN-sYfxwlkTDI̔ps芷@DW\`< Fnu1G#@cpU-=VnT:Jzka1}$M@kHԺMt|%܊ ^!۵젼MP!y7æޱ9&KG@4Ej4 ~.* X(L.nBX1 z~W{/N8_Ύj&ە¦pSSL9|ԆwPN\'Kgj#QwKq<;yJƔʶzE3B &-!YuD`JN5=!c"5?> 糶 *kcc h!!-_*׸ʻȯ5T1A bʰ67b:cx uf"cm@'BK)R&,rMk"G){?/z{^K(`sD.=]܀Che6DUθ"(L>"DLㄢiCnā3JSD֠Z[hXwA 6N+)ߊ&LBa!xg>)d٭aS ƪn4dt)A֤΢и4ۈ8sWx+K_9iY)r-b]+E%aH^"{`TN vdR@vP?LS9}pJzŖ9v4VS >4]O 6%C2!2伿 tZ&;÷۠zy w[r+q.j 1]b{)0 䫡HaLX8.o4#_4װK9xH͞Uҡiʝ+&c>G,8~G>eF oF}`.h~BMn5W2ETk‡ہHn^S+$*ϑ̽jl$2TGBw]?4JI`Sc vSo M.C*"z栬Ym*}Gw)r0S:V-~H'@A6{o&+aA)S>uq_LtyI`tr"M&F8zD%k:p,;Gc|Vڋ7\ajY#$_]qfC`qSsC\'_;R^I>]|/"puBR_% FzM<fU}B\sө"l(G$[t@Ue7n'Ra l{ljW z nr7iNhWĆ&T`9tS's]m:W:`9x @'>4H5W?5@̝QR%lU 0vh$KuWAfd~inbJ/ʨeɻsTkW_\OtCqzRɍ{;܄ڲ;iT-dVBixW0s]Nj yPݓ<#S8 =V豆O/x]+ ;}بŢ`%{&Q ܼg|;9hס}w-.!ZZp;|ɰYׁ3=߇5 j72H9k<;E\ȩ@QC28gF H8H@%DD|l0I-&(TBz1 PtŘ maa}]Is*l ]C6{FqaAVƒejkXvukhDwTb 7ԾLM/+(&-쀙I TŔ=Ѡj5h>[v@T"!:n) 4Wy&IV2*]$.NpAdҌPq]+5m˘ J> yסv b_1.ӽެ ݍ0{b{jEDldy0tezC<*e‘F pXH, Ү4w" J>$tkc鏂Կ[]}qXFq!ݮoVs<]QttXw Wݸ[B-t)Yf֤4Lm< #)֘I`B*~=!ǾvbvJn0a Cav#e5WwCN7nMk0k:6.xAr7g@Y}tԱ?'r~"+1}OuquNˍ:L,v׷|"%6%ީQ):7cua9 ꈚ6a;$ ] ~{gФ3pRx6S {oUA EZ3C9U-ߵ5z|J*} Xe7S uh?ckֳqJrx WU2a/OM9"sAY;黻'&!1{373SU_%NSQDI6„C^,|sֻ7ΧBle[Zix7 8r@ҡ4)GXG`wpEpM2}Nu-(;=>QCA_`ORJ-US&\>"[?ҏ.&IKn59@8lW*h A3̎@azn#\oh3厖R&Dy0v>*<墲qԜaܫ*AYM2GgO Ud8yt;:л|i\O( XZB[]5RH&ݮ Œ6[!e-,[@`IԛL.˳E<'od0&){рY ( :fzM85hע x-k, kjJnVE }o{Xrt2eNIHseWZbU(('fe-4Ie/++I$=HN#[F Hߕ@s^{h4cE3< q$t\9;e#k˸o-Z#v~#fz 4 },vsiݕ>8w0sDΡ1HsfWӬ+H۸.$zY^ l̦FI* 544:d〙CcdD6xL\Aъ4PMH۩Hٮ3ȸ؎⟟Zt% [ RclE312ՆO]P A+i784accH8PWPҽUR)UpvpX,Fb):5B^X@>gLC-o: :X{Ne,;ő@p ּ5Qœh*X<.%uvS6&ޝsHmh'YNPıDL>GZj‘pA~^W HSܸ1?H E *?lhV;\Y!~ezq w&F7Ha10NBS.?8]$>TVe^`q.Q`<@*JS[ힱed"{Կ ۸!Y>*OKy{bas\,r;dqEmsMs&dtt7o l#m飍zP7z^M8C}L?mOq~S.`AoK*ƿd~uo|A8]F5'9土-}3ѿ.Pڹ^Fʻ <ۢЅ~?Sc󺟱Բ6UcT2w(:Y~lпZ&`n-:7:cEV(rRk} 8|eD$IwP= 43\+}2xj"PZnG;vߑ(h'X¬fR8Y%^.,bM(S6p+}LɄMKـ7ϗh.ȑ=*-/?hRL˛,: }tFC0L⿍M-+Jm*p2ưi+eΚ;!EAWfn@N:`x0NO\DNhPQf |$h*@Xxq9LP\7qAx*KXy$d=^v+w=r@}reZH Z[wzm]| M^ C ?!d,ul9̜g Z&eFz S񃹘5!gW]&SKԾJd _6F'feܮL4|XT:l}ev;/32OObvpYU͇;>ݸ: ӡGhHLNn0c.nJuLq:` 1md h=*nw6IeKjd{pJkޗ@FN-}GIl`1٨N;hG}ó4b%aֿ-9u6Sΰ. EDI/IF=@Ρxw!`xWUpw*\܂`o:=V*iTVIVIbQ?B`uõ [GT/he)b^qcUz{is*@+^f?V!D?abw@-CL6RWnJ} 0, ؅ni躭F/Z-Ƕ\"R^Pk~;L vp[O-NZ> fi7vaTVUJqշ I[QL N:(Iv2D.t7OO`(KhraN#&o*x\]| 4p#*{T_C{:|l }Lh3 4|^*Vln4?S`cLqU \4p"- $&ndO[3||X[WV0D>.0V*GNs`ゕ*λ XcM9Őb21˪HϨok*d,;6*K $A m mB{h.+FeD%ՆCx4t&-/MP)<!Q6o'I_\E`,)۟/퐸 Q1q W :HiwiP>cܙ-o=p-hX&" hdݳQ;;&0ׇ+\ZʇɉU u:9Y>6NAAڼΐ%~ 'z;ޑ\x{|/ 4NЖŭ#6V1AAN 7Z1%(ϡwG477:xQ_]VshR5FѮG\}D|DWǐpcv@Y dH֏ JQ/8՟kwj7'hC-Mhɫ܌lfܻauNAn7 eoᒺ$)%·gge?d6&*O'TVa[qR{[j҃@ Dž>̖W?Dt`30mL/wIZܼpCG LȬqsaiUYow&Y"(Oh vG;>OK>qn]kxf]Pw;Fp/}GKMH-6J7` .f(O^#O\YxCdB5,Uy@6V w{F#?h+-Y_ w*J1&\y`o~tt'56`_̿8?! 44y(j^^yڧt$? c:l׮ޕ-pIIB>zAqƥG Q|˸Qqt ZdTy?DU&;>W1*m^@kAk$:zG$" ݗ+y.z84rvč9&!ٗd/+=ω^3 anH.t]ԛbHĨ&\:Q3]sR@hj-F320X!}I%>ԥRCmMӨH2vS=Kz;CkrqXAԘs|kiv9+tXo b71q?ȅ`ÙlWb!o'\0/RF46eҽT}\{T2L2g1'ζo2-HaYm)@TKd3kH ⭄||I "na_s>aꥌN L*v. UETq w? }Zp%fPϳ[ $dEP/@e: W*UϜBr>,Ď`>xN^EFNyL-º̺zYp*1>xv>o#k塐tHtwUeQx 3˷4$ %Z¥ss*E噌 SY?"&Π8"j2˘ϹvK;gA_R(w֜@e d$θbՍ:`ʛ56~.-m-[MLSl7<- PhNoRˏSڄn~q?:?@_rs}c[GzL9Lƹ#RЇq=+6qleqd!wdn,OKXԙU%"'YPTI )SI{=ɸu:K6mh{\{ K`CcN0~\ *6^N&/(6ԷP=$$冟i]d6"N Uѣ%R͔ݓnEO%4z1լ_ S9V6Ez'Dz/_ CWL !9oUh v%A{VOZcԲ-TLjQaԼpc-kT0 ~hjJbbBj)?ne&?2W0fF)NJ!#Ko%v25/ =ِaeN$G֦oOQf7n3J*})gvG&.ic\@=T4Uo oWtJhX x2tN6RX" 9N3xćDy?ę!Qt%2/r<'}\n3 ViI;F^kE +t GUbϬ|Vȩ[cTH)+>$^ ':ٱi3cM԰:(5$~*M^+ƙ8c'Pw 0۱5iq^a@jJ:픓mk-.NTɧr.|[ #y6x>H(qT= tz#Uz@i:PܦR NlEP}-y+up14PqA"pv=)7ɜY!@tNeD0PWy z6syNU2ƶ;We~߹ѐqמwLΪ LL8%x'e LLi%-Gj؀ 9|1 &`4ګa1HI.CRG%+ߊopb^kgWgH{;7E fVswx $˛ g1VRoЅqQx7ea%FIjxYb[f`vjJ^菢2Qb)kMC䎵==>L!n3{{Ṧ '@f5= y4H`{̩$3/mҲKOB}Y`TO4 # k 5vb)aߚ'5M5=ɫF.8\v2-o<|F޵뀞UOoi6|}Q=w_*c`7)z)W>=r+0G %(̈Y`HK10B#n \,UigLV˭m'8bIE/>Y?wf1Vt/K ))jbJ&Qψax.;&[V Ɍvq+ QN0g4i @Əu*"T|/p7}Kk4̀tf]kG=FĕA\>?5O0d`j7fbғxJܓ/ӝM<%Eٜy 5[KEj ?JNsnĞ[cʎc.):^g'tE|&݃eU/kCN7sOy0$RA3χsZ8u7ԩa4sN ETv^~䰏uO~P[[݌+ԫ `B8>az~pz810'Ei݉Ǫ&{PB4d8TP]3E$^[Ýu)L-L:k+>uk8Z}NʓvIxnmkf\NcᆽqKiiWåpLOv^Y$"%(bZN0%0s*y8 L]Ϸ%zPKB4&#VЬ@tdT=4y?(pRxWX]'þ ASi| Q%B|mr2|N paLRzg r{]_Y;@=qsTW}fL"njQ[ݭXx'bALFk_|@Uؙ$ƒ,,Y`X-; as%~KM.PQeU=BeX 蘚h _@:Q\FےpEI%-=ѧc`l2hNܧOi_3ri g^?IoSȧrr6ukOoPur9tvCgG8"nw_JKzʷE•bق\R V%Gтy)vJGL!u3ϫak{C Wfj;-=PRk-W3cmN7sˎ,nrN9EŻٟ(?Ը?si%kJBV(s hdZQsizs숺gf[n_u`n ]YTa*r]c\ xJqTf5+Km#b4e &(]TGDs_XV{ޒ}QwqTd?Y" \ uAYC$s*W 4 J5b[& 6^j<d͑)*,'yaY\=Z7a6n#N^i]eizʺWj/n3}n[gKNTzVn`kRMDc1|Y#M733-qozKw".Ệ8SRjY.NaaV쨝JLv~Q3 ߱RitᰳjmOje0qcYGz<]~ن&N퉠s8T(O(_Ϙo. w}7O4[WձҘ!}d>N_|xiG R|F!eIh w شYe ]LVv|73yM;C<)sAt##8(`BWgQe 謁 @ևώPwTG9BNZ7beG&L*NVfB }GYMdM?:!WEB8p v6 GkO9=>b? s`Kr`EuІxأq2 ݶ%3HfcZG㧮ƫ.;0hx qI}ô1n enk4hˎMy,Q? c+@[yK@ذ!l$n ,5Xg^/訲f@MH:Mʍ=`ƹYW*>Nq7蛓,6w46$aZJ?flܤ;+`S8x;M4,JbAWb<^xqO',F_l>vtfC7?% .޲ :mYz& )IٮϊȒYШgk1njo;,JOfzN}ɼME ry乶 yjRq,7]}ڜ"cme5cYrNѯ*\@>]PO_Xտr\:80[ F,[kD>ґ&oR*1^Qȉ.nhʡ -`^II'iPUZ66qDc`P%f D8n:=*K2]bE|r)\?g혶\-Ã43Í=ߚA+8R@872[iǥ?j)qMyĘxQF:B+3bqa xwTN؀9~. y)aZpv,wMyRڌư`a?'g`mQU աDv򯚇'~ʓbn11 \Y8HT˯ҨX&w r+w'!3:k$=Џ,_w+% 5[(oM*n~ |yv#cI0đy/_rOL;7]Ⱟu%F^itČ4Ɗ궣*o║:Fotˢ\/ߤ9}CBt/Kkw6fXId.em3FSl~%V`1L= t3g]IT-tĖٜra G%3xWb2ƥb3,xkHuLy sŸ:~ܘD.0*߆^~.lH}3F cLfwjDĭ爷[,7>)-XHgIE")6q s)3Ζ(P9LC%4j 9J5X$ivl 6ަW&㾀PDJuhiLޠ`? ir.D,r.k o;B3=EnU벺I@)w=oŋQ"/˝PCigWܣWA✋" :-Z`zv֢:i<(vj~onNm}|miݿZdF™(cUxKǂӍn#uFCGүEAz^-^~Sd'P3 N&7(;rnj-L-)/7ΐZ7^$"rCSV_o&~l>dL;gboղf#Q>yf{@Tr~_`>} fzFZ{;nY[?\$[aK4CvƵ9R:")L0:q% ȑ-2|?X/ڌb5`Pپ?{r||EޏxOQ}Kt8VE%*T%@sFm\O{~DENI'Q ,B$ jheJZ(6s\jZM+o\23[[lG"=((r53 i 8S|[zG㈞Hڃ%]^Wp5J@-C| -98A7X@BJÊ&#!BќiA%ig W?ܱA͜=J@+dϾapvZ֓Vb3< ;'jJBo+ܻ0Z64.UM 3^crQc'2m\Ex(ΉT8Hh87pl$!A]g_ȔK}J`{TRN#yQMJ%! ON2־g'=4SJrs0:A^D|H}%?0j1-'Ā꬝ Wi,/u 1h8#낉hީ;ա}I.̀XFGJ<_T)Cif^|ؼ4 _j}NEx5gBX+||"cAP8Rڷr_QjH >ڼÇ,o^Xt-As| AmvO8%P#<؁qJAl>1R(R2Ģ) >y1?WU[KցYޛWw;Df̵Ga)_{2Jfly1t)xGeK$4q4yOJI1(݃у9܌eO /ngA֔Xc~Gv]fC #Ґbε"o' Q%"NFvPws. 5̡N)FZGJ4i/3"ռռyrX۹Y.Uݤg;y iYIYИ7Iz/gJk|IZ,Q@QSjG23FAےZ㗋UuR 0JE^rjѣ%8rY <5"ʡX,q {,R֕yxS1'EMsPm~/#zݙs ]gɽ^h3iK+3 }|L)G\F0P8>A)vRfw^"mզ>ʣ H4E6_kՖ&r`#9a FOۨ lʨ”>lѩpBŴ5ŠVTp"3~(`:;أ丸.3œAQfяNwðCEɫϭeꞑb J_kjM!SMP{6[(Q`nXkY :o0`P[X^ЦוR)'Y3 "i]( 9B,ZP{pBXE>Thmo]'K )lqxKvz4Q7dGP**ի̞L0 1ϮPqrd?Iz/Gnc1oNV2C%DSyeZ`?V*66\4F/$l'Tv^w^LGa*pjܦ207yâtFe?K褑d%NzD  + FG&"*WRԥd|ؾME$ yOg迗K>CguM'!cqmά%hH2CGY[;},-A{࠱l`&)!Rɓ QGHPVt+ %Ԩ89j p v`KX}R7XxTz)F^HZujq6-9u: -#gKmWe2 oIJ(&! #̱4i{hE@\#48J62ud{-ĭsHKv0kI j 댋x iAǘr}Gx|d0CМUM3ʌk FUsDtNz]!= o/ANjG?o_?*ͫ9RFuTp{U-!tAɇ,yA4OJzNWL]|x@N4O+wS (}u Gg7j 6$[gBrUl. R,';^HE]OJJDH5_$؍Ouڪd 25p  ]#őR 9I.f GAg825E VsZ|;{tp8QE18yB&Bha03=$+?wFS.G퉫I)v>w#WdA,l${ tڸQH22Gx>p)Rl/OU,!9_3[SkS+agHhD!앬۠0)Hdܷ y D4ZBHr2}X1hqJ[/q:apȞ]*uĂ$x@ $2dGS"0/au`vO\>v07#B>qa+an 6`,j Ae vՄx8\@% fJ0K\wue;ԔԨcQ^;uWJ7ty݁^ ߈mȍB]6|要ui,:m0HΌ-f(zܸcPebw򕌭Vw˝BX5~/c5>S$}X(z; ah81(e ҔMҫlG# dv:.5~Z`ͯHc s=c蔅2li{2Vˊ--]*W [Lp[t_.I{O4Eu .:#Wz ĺǓ`]Z䠬89Hit)|CS7c\m763fMCSce1[۫VA/J+_=@AkkսQ K̷qO J~1/  Y8$=c6c`P sȚ2˜ګP!VDӧX^G$xa\Ϭ+iKG|[π4y D=BQ/˼ Xk-8nA#aۆ}h _uP]b )YyN-?29?DP{|:\gȗ*s{R%v/q kT3Q0~Fp_skd(x\ GɡsmpTk$*\kN$$< fgg13F8 GW ӰfbeT*W34W40T'er߶,blN @&;bN.a>xy],@I9+wo +hCۂɱ:`S7mvPFIJQH>᳦<O'}#xg-S Eq gJq~F q$-P[q:/G?p"kՠ4'?}P;[ o&tξ qGŹ|U xE 0\A J^#nN#([p*aP]G+I')G]F-;3E8gI5'{'309z?dx&4֘U4g,9ݰs2/˨$b@FXx@$*)'yND2 ?|3hT$}DqA<>,4 B~atLCz-[E_(٬iN^zw S8q3^᭚q7YX۝MehHfҝ'6jYAZ*JCP7T1ܭA,CzyJ/̂}RiZlg$ r"W9R 'zE)o:7G&l @?-D+ s helάAYx? ZLW_vSȷ;Ł˞#,ި 'ğ&%2rYLv* G'd15.5F=%'VXa?2GZMio"G\[ID!x_;̘睊 ʱʙi{*NvJ-%^7㉄`c"&gpj& c}դY4rRG=5}4_O }^$Qr&#-W6fmxI,.TWM#n1' {Ql$B"SzEV)A=dY> WO` z߳[R[Q蓃0E[뵯z m؎V EحPlc)ܜh;\c}:w/[jʝ Ҏv&řh| Wf{*XL@]-!:w^WZl R%"l]ʽi` KxܥX6|Y ?iVc7M*,xښ.b;10FHL:pث/'@f0"θF++p~ZNE'Kw @}D$tƴ8uu7<ن#NBA,%{}Ɓj qe )CMCoG0mGuZF7kF e<(3K$B*4<*\MA$RkiH0>R'e~Ix P%ԻŔ. XOF~/E;JusM"U0EGbTҨ͒w, ~/nb]Wғ.v+ \.ee !ρ.G!OO^.0i+$ Ma\ oODS1 A`\B*g$0W^^d0 PRDtv|"gf^r Ҩr}Nk͑$u|H۝ÃnN t' ]Gjwf NKW M\|$W+"ܻ _A_vraą~Ŏ_k"AMgPqS27EZ%5}Y$I4a~LEBFvK]Ͱ*Dea-&&Zv򟮦t?6@OR—~D/tab5?Siø|ipnAtٙlDY-> Z =Bm c$4ߊi6S4Q>xaxQW,H?r1>IPWOE'(Zw8o HdzQ߾[, A];vs( ї 3K-,绷{NOݤ4p^jrڔS{U -I^j-WgLN1Q+{p4G:wRpOeseEsS*GZVV0@H۫͹R`ǡSxt;ufU@-r]O`} BWN, 6.׺ 09pyh 2DkEˮGR.R3@iS..݊;\*kté.Y`J*JxnOl+ +r5 cSR>ДAs|&غ. :;j Jڏq-_܈ =:Ly !yŜV3бZQ ]$_I9j,#3'9(oGƣ3 O{.=R#\4%Kl]7/ZY8td:(1"M6I¸i ut\|eNNf|eG|vѶ4X9Kgx! }k[bDv) BmaY82ݾ=2g<rg]-騒mp?AdX0Ww)`X5FK䉂*N0vu:~+Hh ,Eˆw{cBpe&S"edHFga(ӟ) w2fӧ軉简(+lU:?\ueW+ZΞ\wo+ )Ȱ;\Mwiq+j,P,6DG ^Ѫ "6bj-'B408=tfv.:7Hֽ灡nO-D"n&RNKfR 0upYrB)K$~< ΌEwm]/H-5LpzZ2o&%ku]woh zÃR-ٔ^LZ8kdE%aN;gAb-A+@^,:K1Wm-gwH?x|%Om ~ vQ>EsJOp~u$qU`Œ\U!%a!y2!4ﵞ˛Gϸ\( NLPN7:)W*=Ma-dp%>b%^#o:ǎ5K`yxS_!^7(1s,pݵ$ʬC -q8RI@Ц (.4v'5 ^l +)&ԛ-0*S]DU E>BQw Qc ['k6#8z*MG[y ɟu = &OGx @e)<=FV b5誸B5 aRn4Ĝ[_۞VXSRBtiM#no.6[zzp#dm*\03VY8ב 킂d9ŀdv@ :Z!܋_TY9'MGFk$CkFN3f9f uu_D8~ rK 6@WU=E$qHt)$Pxj^$dB_ntJ<g0˺ޝLi1OX|&h{tJ6oa.U@iHk(r:׭{ؿ 1ɕ|G\4Gͼ> {uFUf3Q;/(:a1x$#_Uw!x[q/8ܻ3̖Hx$t퇮)h|pcB&+푽n`OyhS \$AK n@ +[Ћ(6$8өG5F' S39X貶2G?,$eASmտjHԴ^b?i1H_"W\! Qp 'fNJ^Ɲ@'_.bVM aO٨J>(;3g[&`lgL< 4FY8hk9MŰ҂&`&l{&LֻT,:v¸]ָ%0$܈8+oh{~f@|X.*ӯũeS&V/俁F 3-[ܨmjOݧ4rxĠqHf@9T ?w `ľ<ݎUÇgqrPjyz(k2G g)g()Ia'qr]]yo08GwZo5-M[{vhMQّ&F_2kՕ3gAظA6o~X8S_вDwjRw_h}9FKCZbPYH`ţ Ҝ $>=Vf23_ PiJ %> . a:i" =aw[:ϣTW8/] ۷D?Bw=W-YkxFpf6g M u-$L ˌ}$4U@BؘXqgNg!%ea@4yǒ6#bƵ'6ܔ[޲Q2 ,t[DZxLTz?G-Q8)DƢB,]H {OVvCq_ IJx֫mQ:֒o4]2 kJ5w=Y:o]xP!z9TR~(³SۥfN&kM4xmQ# EU$~ŲrR5ލLl7Len[5E~/ =KQ7ΛtU\ۧIO\x~5kmq(c&/:,HJ9[qPN|uaMˌ@pG%Q+[ZR5rAVjj.68n7d dQ]3cA8\@)Iy?=C,ʉ|ESHv}Lnwwnv(K Je8e_%*7?)!IoAלp`7F~SU>Tس Qn2boq+G}{n6AHVO_kkHp-# +x>V ZH@@_CMĈv!$ ։ x;Got܃bͤ& Qo: >A X$ņ\O.hŹn.9j1qFqBStsIN&8"oD1,Йu(rc]E(Qjx_5@>ߔ?^/Ovǥq9$ p _[ºiW>a,䞌S}9va7TlTF5&M̄prėDT 韂^HSeO^v|o0tq᥌ũsZb4qgD7o\8<T_SRoWhl=ӷebQd35j y켪s7 QD)hc@eι^+O<L  iƉB8Spcv"`x[Cm̺JBe G&N[БѶjUÃYo0a~>/=Ao41k1+ܯ/j? TZA']Cibe-Y#'"vQY꬞n<IxJ^69Su|Beok߸!r`ur ϣ^ 4ʬ)Yftwv[M;5$s ;Jf zqX&+^Hp:oH"^,%JKR;_1t@Wss Grٙ62"6}̓P6ս"y䷵YhOg/`S)dC@)L_lVQN)HsIg{b'WTݕy*LL9.l>90']jLT%3YG]`qb#DAVYboS}(I=;`ev煤lSA,prHv(~U0ټFQ*]3ݺg.' |0`ʤeH5NTJq.PjAAI44L7aJ Icz_'I{HOT,2K{=Sቖd8p{JQ4;k0&;U"i]N5\0཮ZSo88ɿ4+R. NU fRzbi9Vxi{6$&_nHK׋>uky(DǨM-DB)=uYL.m^z{ߛ"d}t$s\o#W+Vz2{h0g&ؤ;~ ʒ$s\;/K{Sm x!ЄEVB pGzxTkL+όCev{ϻ!rI-%0tohڭכtvN`8}oP|ƍs-շ -hC"w|჋8T2'wA[4ik}Xj'ݡ-7]!+JS[VQ}_ DZcx[܎υ)Q@]B6jfɭKZif 'AXV ) ?˕MedSf-'7e(!z<(q?ޚ# moQ2r(m{՞D !i\As#n|9?JO'z-bY)') aamhw-/j倩i3VqrZ`hnT jn|T8"U&or133kdG~?e9^8&'ĄU Sex?nIGRClr}{nQ}sv'㴹5ԢC0I=c7SLS>^d[ő3Jo<ݍ]2!/ԣn9Psu fL!H^ϕMwײD .:oOyE]~VT(_L?>:1 &g/Y_q%Ͳl{Y(gk~(ǒY Uv%;-kk͜*%.ˎeB:f Ӽ>!e:u)vi>@U2#ƐEd#Ÿ>,2ߊwgx'P 8Ƈ| Blc5h$h+ C*>X4I1.`/xc"$@7EkZ{q+BCee>L3%=n<5AI."=tݰ8NNm!5r eG> W1DVZqM3}Oo )- qUr.H/D5Fu(K Bh~q /<[V̚.x!?WqBjȑ F#z}lKL׆)/Esj, uƩ fI9^)>VڭPlngpkdo_aCq|^+lsQ+tgLOA.>kSn:+;{9tzY!݂fKBԿ萵Sz4}_ =wV^ 5dvri[b(=={@u9DYH]Xr)&#Jɂtע+ Ô]4e1H7=IYxhgeA2kXi X%'7u(h ~X ,a`j.ҤۺrDم݅yftkpT%(Li첳_wP'?0L6ʾ| JTl߯T<ѭ)`D?X8?f);ssF ?oT!AuvIa%;EJ]fjVo tąHRJr³N` jNs.db'9-]0r]?Y&akBw_Sl!'l/iۃy,gJ^-0΃iG`om3ufu =|r88MJbof4@i7pĸ 묦#*\FK:Rpm-U. P̓*~޿$]kC Q78/G 6}dL 09s6;XUB^$yE[}.h>S^>|HkYǟr}#Z]ґѿE[Nb[nMGftP,j\2fcfL.?ǀu(u i0M-cA// Dtgj?~\˪Ϗ8A#"*i:IoxK*QհfNT]LnTLdMTWHᖎu]ydZ$J+W2сl}a!W65ln6Og/ AG\\[0eUڹiQI3>%48{gky-峧>*[YH_IG3V;ߠ"{`=hl:e2I7ZՄks _= ߐRa?$px:^@$0ʤ2xW:3YfCiH41T69<_vULBIwotdO 0|IACTAot%ܺ׳*w ![0VD?-Kg*d!THy OdMO\6Of?r,kNj8A. O H/Fh=T~شkop7 X%\;^$}/krtw~[)}ĸoX)mlmٓہ|r DAIAisҙZL[heJ/b:0Za6Yw \#W~VĈ H`Frxt0;5<{]ptwzݰ'fg_h'M]t<@7f{K6 fa5@b5O%^.V5$b2EdfBiLvXHaL=G'텩!~ .bXAW!w_wP {bc^ԙx5ޓgubntofR>,3F^'l|n C!{ĵ'S<ɉH7ΉXv?J+|@KL^7Z[H'9CIju}C0bz uu^ aإn|"]E^o.P ? $J/`"Ai CO5UW4PGE^a偈 Eʲ*<)^~XID-Lr>dULKvhjZV~\cs5I#1eZpTaᇠZ$.OXq"=5umyWܻr$p&Mg[ᬙϳ4I]|;cG"& 2}&Z$-` $RNMCxfeAݲuK-yeD T Ȩ9[Yu5[`>P.TZZ'ڙ76N}FNbq74ާ@V}cG-՜f^ldQм4cɠ(_Az"Ά ۤw %ЀĀԠ 3[#ĀPb$N~}38krí/A`UC;HXV7h|j7m?O0Pyvr_VY)g.-Kq<ȉYqOh;e,Gkj?ں_;48 QJgz4z! \ ȈK>dTNu"Ke~شQNd|3Ԭ4R&C՘ SJo2Tƈg+. jJu=rKVȃ.b"NqK, \2%Ia_-sWwCi3kM9؉LG{MV3WG^!lvbOa㮢^9s?e1ɩ؈MݒϨ1>NI@.;QcRetMv|Hz s'ʼnii.K$Z7rlRfژ U#eefa_zA8]#F G[F`>uBCp>^jNW{5 ZxSǐ)rb|"2Is:n:b{ٛ;srҫ,P k|Yf(8B1&5w4;{rFbjG o6|ؚp@G?xA羕UnT5VǛL6Z.Tj yAEv%F! ק^+^a!'ķV8Eu\zJ}o`sV^sy ^JԌl!K|`W+sT>=au BBQ[3bWC@K>J{]Ā ,)^|tldJBęBUڅ-`tJ vFֻ'Pz^9juhSN/3?ӊƏʔ-9~|g.񳲶;?S(Uq;g V5X@IJȏǛ&yY)"y㎶\DLsW!$fhh»>\1 1xyf9LB]y z0+[zAn*?Ӄs#}^Iu̺uZe_„H6>n>cn K l]pԕϴӃ =J K1TIz۝jK~xaOX LEcʇO2 \crRw-{7!or7.p$$VrLQo^uKTR l6l y}^Mh㵜;.[J=G姻c2؊ koOV}=H8HPUw[cikV;'95mpec xϑ҃i dh4ԭw%͸0wR}/Esą>P,֋VV/ꩀAFr8CYs%taopB#0]`{l첶+nh}#B{m4%)ff+r_:+Ύ UtЕO^[7mU=IA _P8Ch ~PY OEUIk Ȳ6AFZW~F‹YђkAX5C*g rǖC9J͑e=ZdOeNW\_n&zI?L\U u(̟Gw)9DZ6e{g9FJB 1gxs\ySo \+ ;D#{;Q7U"h sJʅ f:3k~UM4ٯUK2&t\TR'$3_Дu5(AMωiwHģ'i M[l7jf}!w E/1Iщ]ȖO>KΫ!&/[8S#E7oo]|IWHQ]zޡRCK0O o5@JQE Qyw ~QrM?H&vt36iݑ[2kK|O9W 9B%Q/>oDI)u2kDOCn]?w<'s'(lGa5A_]"uH)X T=T ou-tPe!VW(40cۋƼ~7  wRE+'gw1n JjS_UPh{ڼӽ:-KW # \:ByaU7;pNJ%aYC" / %8VlsV&H,> [q:G5cR(2 /Mv]h[dJɯ4 cSt}34 hSyn+7̢ " Zt[4 V?hikhQٝeVGw.0kt"cmuܨ}m4}*~ό9SE';_u6i܆3c Zٽ.IIsQyO2Eʠ~mkSk [ [GP&?FΑ{&4UPwC32٘Z-Z:G(m#v%P;C,zvQGjD%iZ+ruOSrWk}>nZu~~hr g{W;J}Ak&oi]3Hjw#RH4wy'Q[6G5bzI"\se\y`9`O{rKd7n[.6rETùIĻj[tK#r̙x1Gk]ҷ2J_\Sb5&z:9T"k HOCi D4UbQ\4~93zW&jZdgasPl ^gPӌzlA?-ok8Z =t{\'u+Sߨ} O2I2xS?W-w|\_Թ& N\Xdtiw/pQrhtfҔ 4 ?-MݸQz03I]m]lID"NkO:Y.zE2 784NRaӃ8Q@[!!U@@3Tp@)b7!-T=4q_Ӗyмu-mmꠍ}d&4pRLP=n:p.u8hFNRZI+Ǻ4,R^NĿb/G@xFcU"iB06O?ءĻ'FQpzwJo?+jpW n J{әI]Yے-!BOD 9x8ܣQ22muM(e &p8eUCN{yB;z0Ҫ#(DTfVlx>8|&&c#{bUd/7|I$c{5S2^E7F\d[n 6=Zl3f+DÑ]̣ek`Wv6k:̫v$۹Niu7N>yC` H'^:Y@x^sWv1ӆFzy5D:mYm:0CٺsU)yR ʈ2$h?ICn92Cߓg] T;SeŌ&n&wv;̽dZOgW0]ηy#fF_̺<GǦ#R-6 h] XlsO^Y^<'滕GRAkÕ@QED\%4x :hzՅ ">asPnia|a>%d5Ў𩍄kc1]0XWDil<ÿ4@Gk ҭflۂ^XoT)@6~ڛ1|d(WSv/_øP:SwWZvGARdb%mYCƇ D ӶSNnR"IϝTt~@]W#M2z(O e!dw1#APP6-]TǛqUarxU)WUn{Z!H }5L;V Ǐ`ƒw(R;0W3Kd9Gޥ3雱N΋aUlI=h5keL'̧`}бHz}6Ӯ6[ pq$jѬDglY}4ʼn-!(*JP:-'MKc_/&ו9:o&ʒRݼi"V43sOYP.ƴ.vESXzl,eJhx%\pm98vt*x3gndcݱa,"l8[Je';U 7ۉ8E_$?۷SÝc>%)y'O\g7챵J~VWpc eMZN%ыZ-cV !DX $)aCJMג$ob oWl+Տ 74"/(H<?6Urm]0 d0OQC90+r/*[%a;jK v[GsJNv߈<qV&fg9?GR&L`ks&%mE"I1aLNbCVv\?-j;K"O#sf%k&q&1/WjP' v0QJYTRCV[VA- @SQ..n5 +3+l"taa:rm 8(54bDZtG0~)g%-ty| =m!UeISC~L#~W?^Cx_97x=!e!P 4]`~#IWZ0yn+e=J8Y8{Á f3Yސ's%ΖA qP!Dפ5=-;剨g-DwD^ S2%FAG 6/$8eEJ/d@ߙE &W#J^ΏJPH/JL`3TI=-jǏܶ/`-a/?Q+?p+EҢz$#x= ?`5&8Um| Z+벫M'WD|##˨0R=!tK[N.>>GdRnjcZU9$7zcPviw9ZCP NC$bHxn{~CW;KR#XL}m}h. x+7X}aByMq7d9y0Iͧ; nm7v Ut^נ\0N$c^̐/xk)J(4KrDuɭj5};@}0rV &ȐP_&P["~pfW#I~ǣ~~8Qׅoիͭ"Tr9Y򌝋YRĢgqn˞A[P )g:l,^qh)]X5"G鱦,5PˁBm0t <&?4Yi^# ͮQ( eѵ4g66]((Un,%d$ո7gA+B;CD zO5e,8;s-y?9̈-`K)3R;;9gMZm-TL_Ӱpj{/0mHl{ef9_,{P@[lQο4T߉|]mC ö-75,@۩ j SGg8vmdч_(=jEن:f7AQ,7S{Ka,w ڕ}죶<RN+!l. 444?1\[Ptk^k_*׈t|QkLG6J#fA]`z!2!í |*:)_M$S*1yeh C@oaKa'&]9q*>H =PE[djU9$amf?63FǨD=e|&jÀŠR9 9M*,]aN975SXq͡irgU`,k@m4R*Vw+34h^{OƁwB$( hxv#C^rxx @_45nh1mDK|?W:>]1`3a dTJDJ, e.4mSZA\͋!;S@{9x18Em=KziTLo^Y;<}qQBlY44}$;- N- `v_6}˪;w)_ipkoES|N$WՉ z=DVFf{+಄CόOCm\zpY'#0gL'`/R꼤M0%Y丐8.Dץ!]nRr2gnYc0 >p+1cToW5zܞ W[w_`Iח%-^k~CNf:scS-zfqG_^$FnFE4(P|'%6q_LabFiB%"zzmW_[XXZ 48Klb VP!GR2j9܍3Y}+ Ыmm.ĈB=+흱ixٴm-)IZ+kd$W/Jf01ݬ9& oQӪz:gj)$!%5̦dAɭ.H h:|$"g@ F?}\zs6 LJThr.D00vZl&ZKxt=w h!啚 W==="gq OnFz6v׭vd: SO%yZ9/ut9iեOͮGȂz}x<zLJ8v3|ϹBƭ(31ӟ[f6G>zJ\Ctp-4Ϧ(xȓ66+O$RF(J3~ 5Z t\ިޛﲽE@ \KYBcGT-RU2#."L]n#b"QBA.xТuc VmF7)7BֵAx  ݇9Ym*U1OKs Z|bRpEb+)Z A+ru:7.p4Q$ʛ#~qrV V넾QBL"<1B6x.1Ff8}Il5cU~[fPyMrvȒQ:>W' Z?©b3xxGxbu!mT k$7VJ:VH`Ncݠ}V ^B%+-rXlR̙ՙsldWg)l> hb},Sܝ=6VH,AvM $h!CIzu C?Ğ jyk4%a& *^5Z]KҢxt _K~q jסHhtx)&Ic ji9Kb,{s;BA.j[ ޔ=S FI@S 㨽;u?X;l*;,aν\ѳ.FܾrkY'^.d9)3X0^< Z"wL~ #x;!lhsoo]­hP|V]0xQslt2:Xt`J1LƷ> ħxJH;J6RY.v*pțҬ˩u݊˙z !#{ͣU=ǀy7t >̵FnލǾ|!UȟbNsc JʌyK_M뢿NJRVv儥+( zB(F<`\'ǔ}d7UewÃi,]w \_U:js6Q#)V:(o4 SNQ-sZK2ײN6C{<2߯fK/e܏35Ɔ%M&bq#8ljf־.-q%7|Q~!No8'jJzٖٓH}&C~x1C~Zj q:-A+U_ǗiZ=ez]'px^re< 1hsGפ!.Gx̗SyE!Cлm& R$?1Od7y<ӏl~/_*ĩ4[>5 e&~{~;rXf)GhB<#Bo9/"0N?&A YNd ,`R'ua3'fgBW͐:#DO acel ^G}[Y3{SgA+t*hX7kGA1b1,8.md|;Z{1~(.ThBs16uW ߡ}qx!jډOOg'wO6akЌXݻ[¹OB֩h#f@b}+%srCoI!{<,eAF* )eM|6Tc9@WP_1e&,F]w~PǮg4b aT$$2ڹWm&orq,Z%?yx0'AӀe+al%BRv^ڗo1sGC㌩ (F6q}:n5?MXӺtb"wl""paR+Z);W?Eq];P;_EC,oL B3%xc1@3R?KWvam2p\9.7v=a\7_2=>>ЅDFFakLxH(3{/s:#gFyD]kyN;M!_W׸دW]`9pRkMP8L?]͹y0w?}Y+|DX>5-ݷ88tkǬ", vґCi_[Dp3m4A83 G7Ȣ`(.%2y 5{5'},?g,ΐ&}wE6 |*!V(DnOI[ g~'R(+Vɋc+把0hxrdx2@tح5f)%aU)RfAȻ&N3[88z<%HVZ\w+Ϛ)y.fЬ0"{}s(rq `7}C15QivjdY@nt oFm7,%d@+Xq؆Oq|)4l~ rGċ#B8~(Wc'Iד7 sB]RЋg70bpE_XQ% R6(HW",'vF)GfCؤ x6%,Kbr}&vzZLm AAfLfJa壻L;䧻uάl&bjMwǾA/О(7/`ExCn g?L* ؈ɬ"OSA/gJj?]| W+H? ;% _MH<%2,y+Sig4D{;jps# %uz4:&e6bF ^.^܂@.Ku=}L܎30n3&81gP3~@Z>x%0`\F!ۊ xbt1dB_O쒝z> pӵY]<^ Aol|h#Ka n]Gk1p{u;lQ 0|YGSV_,ui=4ӏuӗsogOo1/Jk(sRp8Ŕ21>|w%0x8=Xs^؋ҪqQ)Cobw-ߍ6nyAw;zΎģ#4< ZbX~g&-\aFhҶM`0 y5*)j ։S>u_ͯx-mn0O. 9&E.{,PRnY~ ̢ ^o]$vW!Y**s8^i}y&P{ cGaZ5?OZƫ I׮.]pnt:َ'blG [a?|&ee6JBb"#wqhTۏʄ:frd/C>?RF/~::|i S'l smi ;J0\ɂ-14'C yY[d3ȌAHlI`Y71e <bgO0 %ȞygĹ2FޅL Q&B["\x6F3B7ˋ}yq/nbQTҲj$+V `O GYPEyr3J!kSd'EPGYʢ>Gif|z%07QYoX' .s_L]⭑2\snʭKiqVgP6v%d ,4[3ޏ&Hҁj7j/b99/g]Sۧ0l5" /ZS9=Z)VmѰID55I+B$bTf C%_\"jhIk_xOٝMJk1{=譧30u "z}60,k?z 1#ҡ ĶiP5_0k4j\Ӳ#u'r{|dlY2M[ܔ+PF=Z[^a6w]23wo&WJwk?+`ڹIx$]B9l,;"{7Oz5LHM2u2IYX:“3I1A*Xw t[^|u(!b }TQN!X@e>Ouu wAk~kAPZTI%vDOyHoQc]J{fo{DVOgsmbh*29& 3@ _3B>- 5XoYffגOPvz`줜iIYKCQA2/ Dz=;oZu/dQTNN6bYS_xeF0+ۣ[n":d:0RL'=WZ@Sm_N&PLPYۀw<?S@;7 rV}b_I9{f}d,ֶG-?u# ^9uF"pi*k hDWRɬ-Tٙr&?T+--t:IwE;RK 7c?xk DS->ٍ2^1)\Rt (. M0]@qdǽ2o LtN0a۾1}!Mޓl+(Jocp{ER&:P[+ /u[6-2J,?nܨ֦ąwf*b$2eNvxvܣ,@LֱBg}D<XrljFz%GrPaz9I> S@:XJ _͌%c!si.y!:q<F-GGEvKPS}8ICM/bY =ZWX)|tl!?k }6 k\qP,$]\?> 7_~nM k57ˢu%Q6FäsuF)s(],6d*>4 Dl:A8Zw=vmR!L;p%LF '<#F4uJV٬C" AsU) jYk_HJ^E3"9.]o)9ksL{lg<a#98lK[ r,HfgBy0E퉽,R|E#X\F'~Gޫ6u ۧ^Vl$Wv$})],adt>$j`¨9c AsGbj*>1:amȿi.=-KKXrѦ Xm]/"#dDU(y)*C2ckLJP+i_QOm+ܺDYVIW(c:3#qx=jE(A=ؙ#P%؅Cs*o1ׇc < ~:ΉF{VC4FOrd}M/bȈ1ǧE܇Xp]_Id9D #M5a_?M)5\ѣ΄}YOmh!omg 2`!lSs6HՖ_ E /6De xSn\:&VZ%,Ʋ6$8)?.Uʪ0!lkā4;%ЙSٺ.p_KfocK㫩2+jL-x1BwUc{_i?M/9F`&=/{V&D=kgV[#6v4= gRyylU'VU۲v^mMe.| `$ݨv21fmQ<2B ?m[D! c5@?Iuy i\L5l׹pTג7lhvk&V >B1SEM= )5P?ydM\Q1]h(Le%@\8\W*)}\7u ֽ9;q(`zylkal I1.d˟fj@U֘n~QćXiDw DON+= (p[9fJ?jEdd4C h,J\]?ohh5c=04IQtMPw&Rc]! `Q WNI,B@WYHR(gNy4^V!Öi&-܂DzXòx}=w7nc 7GB2O{L apׯ {e.)LDھx´Fi.o+!?IL)7 dz>*بlq64բ3CVnjx|Cwso`Y.ϸ"P{nܜ6mC΁ەָp!)c $@ya=lHݶ8z\!59 1cn(Lf8zDe2MmvA5={_[aUӼ\nzPso0/fkĊ Hd%t YQ.wev́i Gۥ rαnϡ|JqB-c-]Y,M; ML7;%k_tMo3UCg cȓJCME6+uYvY"YSK(;9fgTskc6l2"M߆섩 Y`è)Uע`ZG^5;↓Ub{_$\68:x`y_矏_YT-x5e󘹶[\7w%,Q9=PO`p WLpr ZSoz}+ 2zY:ˣ=>{ChJ0v)m_6FOc%'h8`ܧ|?+!``l^\p? nq?\ A9(V$haeD AB@f喸={#F]/gD/lBKLy-=U,_b˔ <K^G~;׺ҥMwo-N* ;N{P.@.E"5'VC.u >K*Qxo(]~Giʏ4u29*1H"P%Aqz`#xo?fxRov£H}^}8õL_U6q A A[6D@B G9#-ތSRG*V*Xhg96`OL=ԥzh_pSb%qD6Ӥt~v̈́U{gS<| &3 ť ctحK!GLN[QJti-F.G"L^1t+{y:eiqpbʽXkd` LE=bp@O% 38?Li!ˣD?ɒ/eJT\#ēm?OugѤvQ1oE׬`!6X3b [I!KٯX 7}rQ\’rwv~pfH o`.3șMk>3~dzƝķb 6{5` lc:JieɂyW}3փH1.jTϴ;ݪ~gKQI&e ]f{mIv\[ϨPa%zԗX*Y#e\:2/WnB (\y~6QU ǽl6@G_;B8&!Qv6X*PjI_vl띶43̨\Q͈< hS=.+qFۇqM+$-A /VulU FNSQ1͒*볪V(Mb; ߡ\d$xH_3nFmjoBu7%Rys^q. A%nc>wQܽG|(qլ; hEs̈́˟_s~A`RZ[*j2-MDZ[d5oQ9ky  7޴B QoWO;+Rd4_t1cq>vȈثDo[<DǑ!hL sIp[7)!:4U{ (0)I HjjDlEMڙ 2E"hѝ; kFPꀺty(΅*У17ҹpn@P+J*$lHPrnkHOzM'!jY_#C6qs |YgknRNPz ٓ%13qEs2ǂں-ڹ̨H_5I=4q8ĉZٙqE٤n,|4*ȨwhRHf@hNI\o$}ҏ(9߾ӾGŒ 9~;dwI zUw%(q$NGW$Dؼ*;]GTQS7:$2 [L7 <| *Κ f綰%9ƨił 9nu|xy߄϶ǽ{;fPZw=CVZ$ kyv4DxF2/N@C3xgT>f")CV5S;-fQi s|M!C?AÂ-D0} Qg+{}_j['I&Y8L fJ|j~^Pxd{t DΔuҽF`\C7XM)صEM{1꼠m1k?(yЌ&ʤ-R]gX#elG6=Qqw5nit@e[ac;]1NrڳA;J&>>(p@ 9 ՗W*j,Pzt^Hj`Sw2Nsr;)B ]ýid!!M+n%@`q*_<@?j ݚw1N>x(Jŷ~>/m@A |g*7u?@![R$&[ۑP k2> S n&8ڌn8^8 K2~tQ^`/Es1W^4IU*DA++\|k~8cbzʖN z#3~-gp-N#m!wT낻9Ӆ)gŐ 鑞=sf0O{ PzRY]>iA(fo[_Uήޡx]B?X zfqւfZ<{g6-#w{8OQiGHt%m/ ӌVkf!ZEGKգQrJS+3릵nnTs|9(jx됾tI+(|?&*8UhW6QvS |{6NETug+IKO O"O+bnPIΐ<|+u({a&$^EB|7Fmd,p.sPO>KUnk-aUp-sٲ8;-77_d.G"(j*e@_o|!%Dlaͧ4h\mXu[_}9:=&?v@]?=fOeR?.Jz|q]0]?Ѝ;5 ?U8בmVM6D&['V2et))MK6bO&zMiAQWco֋3$$# em|h0hZ3Fkړ-(2ZXÔDX 19/]qNJ˙V睨 {zG+Ma(}"ԑqz6R*rʳpִ#8P6`ϑ5~M-0L_AS}V/?y~s49vW*S nT1I9-A/|TRp, q0^ݥZo'Ѐ( :Elqw\'IEio ckɟtcBPJ\f>?,kR$Z^>@@V!})-T702`;bPȍKvEZ! H(.lќ$۔o[6l*X &2NF^pp0e2Y E2]'6Vē˨{vY~' j(V393N%c[Hu3|oY X8ya8]R.Y)Op ,5Ne Q86ߩ´XkTzS.̢5C 6 $#X򸞣m LJG)bL+ryfa#XnS7^@BLU}>jgUWޫ&ֻ綆 ޮ */N)'4~ZGˊlJ\yKY+]]~. l,ߥ@P28!LFuHpp&Xp>2t:$h./]#%Aj.X?L/m"uV`}5p([٪d˨1B1m茹7Roֵ4l7ZɖJ&ږrϓFb0p sUːmgcw:+~6T:F} lĬӐ%;odarx!W%-b[BD~UA @BD]ZUK]Ri  !8*?2Y7yEX68;֠ūhk84$헲 1%iVQ{> ݭƬ:n#frz-]z WI~L&;| aR6J!$rq@VՎ򺋉xKUV&* C~ )I@4Y߿s&J=0 /dFHD-B0U^ +LJ$ |εM(C4uՓfY>cl]\s^w3;{ }8VI@zt6s$^'iRj6ݔPUb?3Ǯ~jgO,2xfȗ5cKxUi%k=_`f%{nF~fhuTb5;XL+ih>mRU 6&<6K_ 2U֙)Uqd(a ]F/:2 ?EV4V#{[85eo~qDPŒ,VV#y$cmAnm-IY7 &IDǘfW$#og+Mj^x"Ӱ4[nq3?eQ_&FZ~=U_wk *pF᲎骐lc{pWiȜEU{#_5hUt~Ρ݅ "GP05lTt)s`Xc89e؊Jw3H2!`E \=ng0PۿT<1P$81zok9!A啥\piU߯?*j|7$~ ?Wc&07+/?oSN<};{SK5rbMk4Lb .awq bBѲ5Oprʾm=̑ ^v9p`dB_&Q1~dN+:rjN nG@UD>gtЏ:ރ˝IN 2̬6Xs떾\>;o?pwƑ_R p]h xI4v@i m4 >:KǙko*lv<KHFe睄xpf'T~_9  9=6d&z⮊ q #s8ssQRi"1qOev9Cg̀[Ǹ,ۮoaJf*,rިXJkǼ@SrHt>u1ܘ#$֮0&U L1&\oSX+ hRn+S o'CP#A6Fg8ӎTf=Mܺy܆~c5ٵv |׊Зlb!utb Rb5ų=f([IQi=;I3D <Z;=siK~x4o؇qgf*0t'a>4HhOJ>(s};[1HBA`"խp.vh;j]kQ! L71#TXP,1o )R n)SƏl0MO|a|KZ"(1|JA+Al@lb~&dz&wdZt3p"  柿" ~ZW lgN[GL3_XARz)gm99&zvlz+̋f/C(o]EU`ghaݶ:/[j6Y35"7buv@ Wp`sR`yBlvK-Cx$L,0h?+h(ċ{RN:̶ w%.QDk֚j.1P-QR&1HK27uޏHQjҿ~lDYt]6p"^HNN|\1a6 tqq֤%#JrxŐA{VQ W=Ǧ{ ]wk%)dT_?0\D:ij…F>鮂|J?I=?M=`5$n - g ao݁.+n-MTGkK R{Hr?hkӾYl,5f^:E EʇNbgGM=yua24,H~hN-3,{g4b*!merWCi8L:R* $froef*)Aulʰ %oJfFH#`(%b)#|k@E䫱q/w?/#кouUv_FN'"P3 ?.8|W2ei'O{-42|m&TzEU ѹ ֞iiva3C4<$805CQLʗR@' nxۗƔp plkl"(KWQT`Z{-k?Wzg [YKvSWdN!I[:/͚t;Z7=۲Fe'% zȿj]//NW<㊐;ݳk\|qkWh >Od "5XEdKl*\n^,h '1y{ͺ^bRǞs5H*-\1} g׍k/u]Ϩ=_[ a9w `̐B]^a6t@i%޲ʮj$sJԨtNFN81 HHJ1w8kWY E; =h%\+m04*ē _{(ZBS۲i#/^H*>'s-6|]|!K /=هqaۺ'ͮ\\J{JvJ䚾<" *`  o`h4 n%MOd)4wK#gWB q'% sџsQ$Tf=9AĻY dC]˟tfydRB7y*;CͺQrmd-%7-S?h&~bт',"3SH#^'Hj_7#_7r 756`qGkp&K'yl$#5QSI$TyβsX-yؘ`A3+9En8ly?sǔwca6eZAآCBtKvz:"r<;v>~9kOҨc`HU@3 8`T^[!CnfoZ/?v $T=]C`TOQ N*H֕5:a ~2\P-R-`?kJ|xvSjfߴPlznL?ࣄLpjozǙYߴC|!`vtϣL_{ABb2u$vf$*QOd$9Զ9-*[?W*!L.wCxz8>mߚ"䣴`ƺc(V@j!Hw$tGE# 4ZT'D uJ»^&Y_*8>QY I/ZE^vOo*Ց/rZ `zRZfmpxOʸ]n,u %/-NTu#$R BX|_{ʝ ]%aC~2- g:Rh (;׮mb xXOn<-Ar^KpyG w'?ț`fЊ8 JuS*11 OmH6*ASS?ʁʓܵdDKhSb*#H^gC v?`DK (pJţbV>L7%m>=BŊl_<(DR9yRs%ERhg*O%EuQ' oObZ/CS!{:_N@4#NbO|rgʐe;})*Q{R.li_Zv8;Ykka#n> ZE?bjfsn#OJu4Cnͽ$<9{)0h4qJ) S]*uPz/sCz'[>xYCa#-++) ?No}|CGXur.cuy^ ~ l.NR!VL,u>?3Sqm)j۲aܜ[cJ7f;OpPcCʖQXx -L^r}  ڢWnxСeehGHIP,Ug)1]/+#}Lɏܞ  MSpYd+lv + -]%u")U:4~jbJSXӋ'+ĺ/o^L"RšFo-ȗ9-2PQЀ8t@2zm=&`硗n=k.QWq핞OG O۷r-8Azؗ:y""(%GɒɜBx}x>:x#CȬ<ǭ7׋582'ߝHʂ#<Ʉax 6Ŭ='Fk\gtny @Dֹz2zwjjsڅOT?>9;j4Q,#TuPsrKiY?U8$}8tabFF `h"xVmu4F}܄CF7>gx',yzgc&D[<<҇ae Eۜ+n2#aM>pE%ǐV~y $_/aX2A܊kL:*YiTB>WOCgN*XmDhXȝ7hIV`)C,MWΌ=z)b>/V?\T o'&@e5SR'Sjav(2E^@{vN65\`z>2שƙ[](i#tJڋZ"zLrzĮ vhجO}2ǂOl{F|7HIgYb)H? qXOx%Jv.>@%b6bj^yW}uϘP ܦ/]Gߌ-'Qxr}oV鞬? O}U9LY%Y]nY #wԝS^7J.A'9xjeH6yVf>oe(At,s:: Q x~:$~O![3U^uo͐bS2"| $@@ݔ:iPy}$j\\hc+q03'1z\5(EDߢ`E 0ŽOSӶĦiO, ψLSᭈ\3J, ?GN_<&6f-;(&?{a2 "(' nKkHgm s+,7ԬXGpUELExHqVb 6; Lza zR)X3 mE ʌTA_taWm棫NYݳ 1U<1]V~T,xȆ0jsXS8*S{t =ڹ+Cog0̎uh g#kW$y KA\ O-#3֜WV; _Ƒ<o16hKWUjd&'eB;(H{KQ NկnJW_uArfD1htYqt(|AY\գ֎@Bo#{4Z@$[R=%275Iq3jȰl[/:]CɳG=Q'#gy> {оM{ SM]̭uįflcƑQoXu-/=5m;n_~g ^wX*M‡u_b(I?Mq9a1XŚyXQljrs`V^'0ڽ`@L uݲsn"op:$۳||^55Ys+)-})tݧs4E'o,M+aCkq:{8 , LϖB ϠŨAhzY:x!qw2h Jc|ٳ.%($e1Ң$M_/.h}=FeՈ}~ǖ0_fthDqm)Y.'^ e8+E牣: .ؖ::,S\T0S%=}q#6YhEGD^ O;ߏzbC-0͆_#ݵER-V<7Ph^!I++'ͫo-6#9hlrDj_kkUzxdjn/]If׊[EQG-p\I ı`8:&Y"zPLͨu F+y IQȢjxhpQ 1h"-8|;>C?̖!ȷ ͮ4sj"١&t z/4V&}-苑o@~3>gC~ϙ))L>L+܉3O5֌_`Twr(U9$ $: $eӅL37M=RYjAyK=slӭ>x[Z~9!c߷,õgwEM-M+ߟ} m>Kmqd4/rn <5ø+n*o"f*/p  1Rs&u d<#Ѹ;J\BI"0k8 )6=[De}w/l% kPq693F:OVM&κ~^H#_kkyGi%WFL{Р-Y?%B?؅:*K;gӢQkX5HNUQ9%8+ ?+f 5ܛ_!U9Ni m5JEcD=r[kP#\?V `u9"[-Tx<$u*\S3޹]=H;^G5Ի#f+*+^=ms<䜿+Et ;ӭ!%+ |~ԑ:/lgϷNKNfaxWޕߙoHTǡ`5-J2M?ec}M5l>%ޞ,2Iփlc%̯~ 3L3UQҬ,Dk S7xyi}юY]Odnx5`^Qz8q-FxJzm1 oFg`LD7;t|oh (`:p.x5lhP\u .utg|kS^s`5-{Be! 6/uw4@Zj!C}jR"T?x9^nx[Y&zkإI.3#zDoew-㩓o~7PCCwourrc󴿻{2X.6noS) )%0ԔdLo=R8v"3<|6`8 uI?2SUO 㳶KӕGiSNAMj=s/v?Um9ВwX0`.'tR@o~tB^DcOSx[GN3nbJ3խj1* i= 7e5Ke0ʠy¹Bڨbz5rMW,mYe !q~kpq5U@GHg[el$aNؔ't` (~w];͜ϟ<~E 4. 6]53{XJ+J [e$}xwZt}1 ~Xg #m sϑ fVd"bam 'nYZC>+8$e_<%ƆxK%`G.7gv vZ.Y[<i~oY^}[fQwV ᱂ XRÆ[97`#jdp]t JZC#ywTFbM58CWL:DVHϗJmp'4|ǩ"*(8doJdw`i)d!`@| X1#!kZ *Zݜ@Ǎ02k6ܕ"$0V-k(ZX\pҨ:p\ \ Hq-8 A[S/y$K/js68; x( $$ Q.2D?CQ8k  Sq%FWqAow붃>lulȠCqxi  >_[G0 NJl,!tͻ"k}D|_Ǿ {{ƮIȠ*$b\x}сx&eec L\=yFLDRW{,y8ު=e@D>j ggω\€eq46HiWO*(:c>""%p#eȴW%EwLM1T՗&Xr %ZM^oa-$Zu{k_XtvtJ.ՓCtݾ :Rd@?םvB@5K/9l:ZV3RAq@E)Ho?5iG!bbǩ8ͣFQk@!L𢓩f:y8Ԍ!v/z( d V94<¾{l=?{1&+9نVӴ5X~eڤtC7?\HYi{֓_ˡg}ƛY٨J !#,Gct# B:d0~NC0Ř8~~w] Q?p<^_ s㾍m]?r8xo@W{ Mp{{Y@훴Y%@EޒI>*;GT_!t8QxRV ͌viCxшz0=S5aT[K@0?х;x}pBFӖZHS|)#{DzC2ЖoHDl3[4w"]ݣTkRXQQ.X,XVS#u ԹS᩟1P@)چkyyYPs[sNR/t^)K H+}ϰ H?' +_b^c`4x@~&&*Iq=5Ѡty>XdW/0[IS7NwR`T[?4T71>\,snFZQkı#},53]4W@NWzxI~^ @(/(PV<BJ'艻Ђ朒S@ϩcAܮpTE({8/^@ֿedJ<Ζ!!W>7=3R\iSӴtCׄ|R'Zg`SmD*Yga3SD&$gJ CML7T #RjEVvN@16N'-TkPqo}зaڽ4ZB}! \;H=H^6㳦i$K\ڈa-1، k`G?̅'ʡ]! ub/(+qA4w"__m7BV%l9fUX'*^B͌,{NXVۃg\6q5iod;_q骵kmHR WԞÁdVnH(g_lmwTQ/zNiv%F8q4 bM2n p&$xӻwix0ĸ*fJe۾ځOS RVBkbB <6 c!e^wNJ:ȧgh_r:3SrhπneZ%4p0~@VE9v&NEmeae|)KiGc $Ͽ!Y˛&=4nዩ^KD8e|"N:;'zʰagkaq'٬jg,cg(%.s 66MD̪y_$2$=3Ifr>Cio&JM$ބG+BGB]9ܬ`,ضdAڥ^ 4SC~EaaEgv5"{֑BVSW!򐥉:>`mC\CX`9p˔p ے7y i4jC{=pf[ 4UbB8;`^ʳ|4?a@ͱ2c*Q JIy"7eCq`03- :׮_{28k=)ѳ@mmP [r[u Ŀ{g[^w@ZؗYa#]7Բls)ʔW뉐7́ݱ>A'.`Y< tC E)M޳Vg4M$*P^kT;\MߖL^b@O%l1 *W^CD؊XiL$͙;Z6~U*;%XrC73ͳqz 4~¬L)t9Q`k0a/_ui=]|߂%}(nn|l|2IG9[ۑ7: xhouS7gna撧lR+6_PTvZY2P0$s鿡YΉY$ FnHԼReu>#ංYbfgKWՈ'IJT^E:' +?\ `PTP Ղ V\0dL$yy8»Y/ꪟ:uDn@K͆ я@EmCmJCk%٫# {y.F~oNo'rjv64Z~؋@Ģ!5u*0AhZ=<M!j槬eҌ޾lf𸲿:2vdb!~@^ Q3+I.bUf5SwEX4mi A`hzoQFnsS"bn /ͺѝ"(LAkc_&ƔwUaU{sc SWə"\\V )%lr݃?JJ}0jcRZ{M896`'j@M/d n-]#u3n"$յ0-1IBG8\9L@~IيN)Bw:L>Nf9`.83{WKŏ45vچMT1jA@mD#` ԒZ̮~GZgg)H* fł2 d=snǠAV}v9;8[/EsEtǂ~HX b{b t_˷,%ÖhP*mXo=}}]&K<{X! ^ell{aF{e^9>WK4&0E[ykj,$;5ٙaTs1/ g$} B &R'e.֫bP}Se haC  _p%-yD5vUӂ6<}P:oypzUp}m.74ʯ vGMY/SbPِnÌBhj{0l +6}{GjCsK3Be=qNߴ >coaȘ]N|L"7J5iBNPpԓJ_x)jjN_GeCNN/O`HAOsssˠ%e0t4q#{f N< 3^G*Jj|pבPPE:T\wɔ'')3Cw0c%$"%CQЋOԩ'DEҤ LX}׆M ːmТnb݇G}Rik P(3AR|W[aלto}OIF ?w39{9s1v^㇞ %kd 'z4sGBrѥ.U^\pSdDY[WI2PAw8`|uGBv'w,h_!&wY{`I2$l llIt%.m*3.B{4Mh<=%U9ac]?&B0zӴyHp'Ϝ)zjJb JëߐUj$|~m]`IF$?Uo痪8NȧݥXo&9@k|&J&v$i܇xf[$ _`/Wz7w ~)g=q$ Xjy>2,c((J 7lF'8DpH|SURA{.C"'YG*O[>fْ|Š2L#"F߽dNz;y8<qDY-w>i Nnb$9L6$RDnsAYRm1:$ZLWhJl""{#:rH>ၼ N`~N]nǧ6 He_ #eT`Xl];}' ]F2+bFd$&!3v4zBR .h'UZi8%rM~+:EyAs4Ub:tί [ v%Ga^ loHYfii{H─9):O?\=ZH'lC7#J(j"6i{q€0 + YEl"y$NRAP2CzIuCAy2d5@@IQMVU vosm;6F x9&[1T%ws9U +(3˝a3ëڠRu8Yg*|o/jh+Tf@ŗ]"~G7 s7v̷M2)2q=L=%U&{yG]$t--.-N:z>;3Df!z]Lb0^'a'lʽ[Ȇ7fݬǍK; Ռ{=kW< t%el9(9V q@IӬ恺?hipeX1y+l=QkU_J\xY@-t 0A.3G$WUWE6Ǐ#-=T, CDs~=KpSr TSBmk3uG=rM=-[f= -wLqєC+ɐ:FCxqC>tT!\Bg[.@. @4\e)N_r*1n *J naG#eGU* r2UƶӏE9Њ m`|1vDAOJ-m`N2r k2v=` 9l<;Nw\Jf#1AN893aLSQG)9@8K,䂋Јњ4/IMn8Y'Ɂh[$ߎ*`Z1 [rY~)R= L0D x`&.$zrJkWRI# KC w)zġXL Kc׶oc$Q=| zoޟn?/L'ަMDz\y e6$%^FɾBC)Q[ib#EZH77lZB֋:Uc3EͽƟawA̸̅D{ˊ#EѩpP1 *33FwbFLUjSnA;ra' +|WܤW,͔ :8@؉LzIBh޻tY:*bCk"eآ :VUρ[bp^ nV`s,veO͌ heMC'dE!^E;ya.#ū6uU nTy |aW#i] =X5w_6r&ɝ5b0MOY?ubǺzȉ3q!^tO"?0WND^wLQ .88QpoCo1A"J_xsqF4wo-U8U\hWv]U`ȦwQ%<Nz k_Qr,"aC{sS VtcpQn*:|V%*ڕbr[ӍwЂYǰ @ÔWK{Ur'XRs:y)v01q y.N"LJUƎY,ZHsŮl?\AdwM1b4zIId ne] 6zbTues-%*5&,tbi3i}5)IzƏΛo;9s6ğަ"#QA}W(5EPB%}΅~F#Amm? 8=A>Uri0M`3 ݲ&}R/x-{8C ksX,xL˪4٤Iv™> ٠כYoRҽ^  {U F]Ֆ ~0kHXnH=LڴwyMX $iު`+lq>][DI3kEȢj7V>-|BUg냝//ٴܱp f0)gm=iQNi\p{XgwY|59)/ԯ)fCk;ӆ;)icϥlי!ss A>B 9u=9dRSJp'^1%XAa+҄oCсcGuTLzʶt#1ԓh0MK}Q<>j<~]&KjgR]f_#Ns o}c:-BPr=^ 5XVgmT~I7 ֋l:D]El91ϳ\2ckwܬZ]HwfԼI#=š[+cwcQ|CvɃs)QK &r\5[U$H 1F+L5گx10*Hō16-hHrjɵ5L1ap9{調4Kr@,m1Ow&4#o Yǘp"⧉& . :uR I*U dy֞%5r͙qHѕG}g)шQ7Ltܭ{%tڦ6'У傟B],A_3O+Ԩ8j,Yrr!}3: oG]RwU1FSLxz0by34/`[_;؋jmk>x"؂[QluH;=4~ʉ(@1@iK4n!އÁR' Vfw,uCY},l_sk=nP~ u%6#.X&Bde y&DAGSb4^zG`1`_n"0ViT,MFlńY@cMeVH*4E-!%]x_T&L;viq_ȗr|j_. ϶A/Y3,%u;zEiD 4aGCGRЪ`'TBQ8{ɸ=EQ3<>ĦCjgUckc@oK 5kH \tl_YR:彨gHP zOJiHՑ77'h um";Q =H\GMF浌D dp.qE "6'ޓ3є,i^s8EP:PnJV_ [{Ch>;Š"T~d)VATӮT0 Uk ~/X6v+'\]Qw5>dW%+)}1ö́/ @Crζ 9>1>o0=KG.E9:=?)J[p#{6>':$p87j3,c#s`Y.4|gcҙ&tA$z7񭹙+q)}4<9~0}\IE`e:c$x4p@R#"TNމ3S!// Q,w\I^ < d+TnPX>q!S;Jㅡ$޽2s;ZXX>O +B̅Q]9SKBcj[^Tx Κ2ZJ `1$xjn vdn&9q.j:LI8e?Y@_۬5AXh@e%KpdJqs䖦k`RP)Ejz͖eҗU#jly#]:-)ɨ!Ud [ό r":gDI֏HV! o5/06*i(ͥ$=ȃOS{ɳWk}/& fZm% 4A$T2Zy}GAD$Y1dɇ)q1]ϩo9:չL רHЏNuFLC^\bΦNR)һlJ@u*S1' Y|A 1}NXSMK!*EtGZ3Řs!S^ ӈ)DL˙э3~~)?GJQݸ"E]Jo]^E>|k86^摍Q̥hhnCUZCF{c+(M$N&[18?|W^mfKNj -OVUQャr#2{U\B>/c#vk̠)^8&eAДj?%|$>8u$;VQA?) g!cMG %%(sYC~VH1Y R',jO9<+FJUxwDqbbd1*=b'O@ٛFTc)fT/YNգzKۛdCHj1u1FJ`B\@2tHE_k_XQ&xz]C.H-+qϷUEb`1fŊ)'`l.c#8uHT! " ZrG4߈ls^v'SČ~t79=h8mϠúK磳\Ys2;ZN׆A\% ݉!6,6$,,cul[#iiXۣi6^ 7A-11*N>]T*j 8{ .!;Dm\A@c+G" v9>XMG7R336|lgw݃{V*~8vR8J w( Va0ScD)_p'kC7$1\ipܣW34hZoaQ~^,^hO!- z XuP,pLtqghF{Sf  pLu҉pЬ#t)wHBPQɠJ ","dǫ(3]<)NFLBHIj 2(N ߧ.Š:ڣ !e|G׮U&m5`zl*Au<xfBO+}z|o"GWk/K9b ”Rv狽Ok0J!9z[6D֚B#bG)]z _;aL6gs^ H-;uDϓ$'J0TA--*>PC3J"l+k?uU;mN ۛ ?J m)M-58,Kn^/]g?+sG] 4;f女C@vA)Ajf4}')57t!cp)/uhCh:Q&&32)7!am;o13x3 =} 2zDBgUj{H 1O'z{yR7ye>zM2pJ!{ {6v vRV6:ޫe!?^,,A*L,nEy [?7/#gonLHQ=Brj]ȺNvZeXpUXR kC(5,~>ZlU"J$1$_q 'سFdc* 2pr 4c/#7^t*FNN捅Zfj 4=*M,qb$.{sN5G{9eF2Y]vwbC=g|[ tJ}m[ v;D@9ExU7ζXr`ty5(ĝ}Ӝ{n𲆄J>`_=jEނr~x Ubɶ2AH3Rc-v 36vٟϨu9:,{(`MBNOL?/aN<$-jQxe0mY;ѯRCobԪQT8QMD谙Bsg<;+ ]/GZEŠgۨZ ݂%?D iR{)]gKJc7:J[f{LtW_qaAھ5 n>z3ZDBq̎gtjsMi5R;B}?/+Pw4ÞvTe+L@ mE?TF y-_rN×\)JJUGq^Ul=9P5[6^\ &dtC\zgx_$B2{!ݡdl+K?Sk\~06ɉR  v4  v2"YUrzRd3 Gfp*9 F}GDgȩ!Z9Ѧ,vv^uԨ_i?L0ev2;b3e>pr #^pGz̙8 ]+]~ 8+. 9cv[?NdܫAi_ڠX+ Y;ATQ`uY]v()H1f wt@zGx&rS9f5՝ג'!!,wQOJ5F>6 69:lOJǁԲP"}0Z5 RW9ׄt5?hW6)1g$JkN#az9ۖ`+Nwba{ 6F %]*>)UJ:8uv"e!Z !3TfwSHdtFm=O3k~(IIWsږAYeUlj.ւ3wK1Iڝv󡖒13їvZWvDc;a%)8J _PĻ/nԄ\~.$%:xu\NqT],ס`h Gs){U߼It*C# YdMrHh <6}9٧^qɚ!zFr+VârcD,'VJ8FfJ u/_'x!R#LB}vR(+qr إ堇ꪄ^u Uu#E {1^6tz\YpcxOZud<>}O;5,2oz_}Kp"){ l{Lwk0;wV{B҃cK7.g>9/%ik\ +=EQ_s8TsYx7v}08p:Ɣx^8c v0>qU1z5'}1Q6%,ߚ_\HAdRS;<@E<8z1~G` {x*wU/q/2!jPc׈MUb^g-c$\/`uA0mSH@͢ _; L[Q||3j.1!L)1o$R$g/حqe3%[jɳZ.)Z~p wNt!D *>^OR6Y ~O$)Ǐ[y7TF7hX%ݶτz2r:(m/_r|}f[F<3f. q(zl>չ\O{,W] T8w.Ҁ#>1̴ Jw@ڦff$or ڟ1jR}eA hO_nVU٩͋jɂ2E"o\C4X냯36M}q} ( \6 *%CV3zW"P<Gu)+4u&/4HHa5H',WPM}{׽<-_߯XПR?/Ɋ3^(o^mU0#Xף>96,ToXiAv{Ha1{tt2htkz#uӪP!%ˋ9<:RňjpQm%^˲Lɼe|,Ge6qܺ٘pO(MJuNG^D ޶I{ 3L{<QZ: țVr1}ZRV@} lĜB<=W"HWP9IN\_Oڂ3HwmsrEb[AN|~oLq,Yv%J+p(Z6C_|[B:aLC|' P@L,ijZOHʢ;FID6'*04I.mjLe<&ZD% 9Ibk8KbbǮ,_E{||& Q:'q?<"09izGkfUmebn33邅́O>>rWvڻUNR6^w&l6Y䘲pa~I$ѣ.Ѐ3U\D! Xt@[iߙ'ދ-N%-ee\EĶ+O߷-#udJP ,L1J 4뾦9%*Q^!EƜ 8| :L,MznP~^2[ e@ZEP|}9'k]RA>;`vZ?"xۘ"i@`sD >b9ZzB' /a|͙oHrRw0 9 }C=\H~Y}Axp𹣮{`&s<Z:{V:B'g8JbjWnN-|\~G@83(d,:\}Zp?`gY2H7^Q$xGyR;hX-\h_簕QwԎkR)bq'zN=7Hr _uT7xj {x9R[i\q5&U@\bIV̼?',|zVS0sؗKBd?sn|#gSn7a(Ɣ MHfj񄃦9Hdg2@XR3mK9d#Y#V j(/HQ5Ӝ +:Nj,Kōjw$ <]:R9ltG Nrm.~CQ3 >Ͼ?o2@p 0:W"ܩ֐'!U lk,$jDݤTͿS[xS$K 8OilQyJЋ鼪W$.>g''=b `o䪪;p+c~ JM*&|!Ne`5y@MgVB<(9leE`/]=4O-IO }jɉ"W8RB/]OlOm?"2H9xàց Д2E2> "l47]X&ӥ}=9}*On p$ v !A&|K\ЍZcB}G\Aw#[@LnђUk$qώ#*!9ŠYs/Oypp|2ow%^ օA_jH3{js:h){!'I<0.kMj~LEDƞ^W驗Y'hxu=1yIuh;vMҙu-"=K4Ny^FMzUjJ(ᰴ;V%q`%=Syw)vX&l%>T^$8KF%7vsnBUqśLkN6 )xqCd5'nf`YNr_^^dEc_y{,h5q_3|[ь12pE]t tX!l3!͆X;-1Q,ϱT_|=nQ&.._vuh@#`GZy>> gt3*DTRu=4-C␗ 3l#W>COג>5>&ߖW>0>kg& X+0"\u?W?.g~>*EӵǕ]:;bz_ 嗞a←윝c%jqB gX0UJKǯ9^5:Ldj'ZS47*NOFjQ55M)[T)fG`U6yx9{@f Q=At7Dd]>M/F%ͺ e@v>A9j !( UZ!d!0[_`=AEDQ&:7ѵzeDAd c5Zq M4.N;heΊətf^U-j H)39`3U WU^C6)GNW+<ׯ#:pfcR:2R;ou3d|7@b&OrYYozTO|9`-ڐKV/XSv̌6CyKG'\Ⱦ;SE?boj୎H>R_ 𦢫z̷VnOZc#pݛ+_*1H"ȅ OX;@yi݃5D/; 0#DiNfA+^GW #y=ЃUV-5R1/kaz78l{?`!?pI /iX%n/|Q3t"&h%S~(?y;'5hः?߾|9i}Z;XX`9%pW·3|H*6rj1UUvcardkMs,M2'pJ dnŪ];A뼔L|+3=0 7(HFA=g<`KϨuO_@e~>/xNN|vG= g ωne@=nd@"6/#AK}s$gח)& 6<ק%S;.]CPdΫlA[/ B@cF-ZNaz6ra&zۖY p-=8]\\SA wKDN"gتEj:a@W~@m&kS7(@+9䟶X\%hQpȠ2pP>|fyKBhuP>}]8v d9?%|؍/3XkvE3*ةam9,g]؛A8.0+=*.jХ̎KTxR SJSA>^kz VLn qҁ?v/dDoB_%5V-{.OW_0vƯ2}iw ՞T_%,ƕڄ\,9OTH䢨2rq03HcjkoJj9 DK[c#g!+*uuW`5i9e(Y Ki(y}l^t 5r}J`tHWp}!}:>6q>]qs`7eɘRVV&fi"_B<{.KEb` |cz 4dwƸ! jحNgz971 0-1{-QqPFgw']0GYIYsZ'@Z=ZT#Sѥo6gm}}ܾ_ISқHRapD'V8[*`ZI𔚱O,ˮQp).j8Cɝu2)D9#/EJ3[l|~΁Rԇ`,uݠ׺*qeXBQMDWw<nrINuThKDthoxA; ez_Ⱞjd7VB_76Gߞ`ۦ qfOc7#9@<| v) @0c;QӨX邍f=='߹Ӭ-ڏ.Ei',8u%uvImg6ݵD8ҽޅ U~yZ4C@eL=#$v)h{hIP~_MvUD/ٵQI*t*a*N1#gmx=KdCN&B"_h^ݪ̅>9xA,v<>VYu%g)ٜ< O8ls?XH̻%CVUR&(œ?J|ְꁘUOp5@ǭֽR!נ77gfDTWH\םYi( ap 1|Ѡad 10"ht{ZiBEoHM,xq-(=A7bqaN(!Ն{QWn6 &Kua,/5ܐKfG;)_*߇ΘMԄR`c ]#Poa !^mK5YYZϞ@o t/-FYٟL ޙVmiG_El}7Gy1o gIFq2(]x~TjKwS|<]5l1'!a|Z`kkBiNlGe{qFEYwh V2 FVR5Spڡx@:O8!i/`#9 n-g,}.3 ꕸG- CTDQr(ҩ(+J^IMn`Tޅ3[FyA^g Ic h7>*4`\& f=-_937XDDB#yCL]|G=?Ղi12WR;NZ`i}tCsxk31NU2Esʒ̼kRk bFOXK(3~y9C!ۇ-GQ}^2(Dm =8+hV\""Gz֫{gJ.1sܙK6qZ MS%J-YI'|nu$4LpA w)NfcX!w)w jkuxF~4$q| bWZoUP!}FȰ_ $'\Îu9 '7UeYQ*eǚV?G8Xkwi6| ԼHX9[{EaR3.lܚs:^\}Q$MNO{W 3IEǶ{ˣB/|L|֊0;ae-=}HRtOyx2oMfJ:4Xl] \b?c*ZYf$aBHlӅƊlHL^D@NTkw\'T5 3_E*_Wތ+0Ui40n~R@vy|P5~_/0sIlBgթgȨL,+D Y0nNV)ifgmHn/,6Dw/n4 {&zCԮ6'q#9.X< S:Lm\@  !:YƛPgW8Do6W91LڸTom5! )0n}vp8\f9?.̼߀7K&NhbԑMHͨt}nZ v]h/0D}!WQC ?aqfu $WAz+6V%I t]D,DSZXsG ǿSCU\NXF(UĹ+jH.bs) 9,$*iɯ9{[eQ}*AҘScs=W̭D&A$"O>[~De57覩 F,nQeRRX@Wx4 hF.LMh|? w7Js,?[NEls O&$ tG5!?ok#T\3!?+1mp#Otml@i odA@*PdE5Y &t@^HK(5{QU%[o<[RaobFQT{+YN}vLv4>nmW70FԈd_>,z~UK"|Fdfjlx&?%+B?ֆT++}5/z tb9dqUz륟-eJmgdxy0$Qnَ3z`ߴ&X5T{UN=7rsػj A:V_Aw7)="jཤĀ[8B\'^OoTTPܾj>S:8/d2/˱ha匰8x<6 VaNaɥ]&9tQy (3&M8{B对0(ɓjÜ FdMD._ f?߬_Vzߙ^-Mqő&Ze.^]-I pCcvj}Cp`4c J/QZ^@cH:~+I]|#.l3;B@lIh ;7%\Щ@@(f0>8 6]=3_q޵rʇy&C/,J_XN}By !Pz/7ʓrcI.u`,Mx@ߑp{"ei }Ewu@A9YV++l(=GGOtȫѹ8L kC]`ގwgni!0%  iX|Md֊"z4yv]qB {ՀW^F;#G7Ɨ+-ɠf"oL  ˧U>tLlDA>G ֍D[u#;@`L}0Jk|]uA͹ޞE1>!#545LzB9 6+qA ?Ys겯ojԫToo6Hqt6W ϟ]%qzm1q{?lpCaA+Ll#zJFaZaečk,h@j@!?k 5]Cdz9ue.Y' U7Xz6}-.w\6xz(ӫq8׎|ӲdȌL2wl)T+e^CG:΃l8yl(ysR ;ҪWH_kR 3Vy emnB*_(}> &M4SA& Ehy1;g)4=Ʃe6sEiZ9G.xUUnϢ1Ym&OWzAGpZpWz:7OZ8OIN_QYm @:b/GYf!t.zgQ6T>{'?N+ v9:ța'v6?Arfg_Y=3st#B c[bil{M/o6ORF(EתMd, ]ÚqBUx()d!N/0*,PKJn_ 1Tc~X?8x*9Np7$]_qIJKԅ\}!ʬ鄧Vf۳_#ۂy6ꋮMD eX%Ws#J-0'Kn \`e{TI{Q*Jl7ҟc"~?AGN Cce-RrKjJ&^(V?CzߎY2A]NgJR;YZ5L< .6vPz 2?oȵO;#LݵasVҸ7Y1ZO૘jauP~V'$Nxm>66z&0$n7_Ug*vER'hZ<;엧ao~ bq]מfsE ,ߐK fk=T`M\Zm"TAkL[]Vgި} J.F!8@Afz*9il! #TpRM+_T ܷ7WTovRltc03 Tơ6^+R];B5I g iY;sѤ0; KsWd.PZmqV ced̩^og $mCW .mB|lha@B߄vKdS8%:M嵲 \ E E?V{'b)eH{x9T>SW< eHQ- GTaYzD0N*XZYl [L3t>|q *H{ .Jtw6v2t֩ =8q(-ul%GHf 6Oig'7H?O>n>{+R~l'r{dUrIȯGuRJ?o_A>X,; ހOg! w;<"'7ޏK3CoA'I3&^#-nN-P݇hJiJͥ0¦b e/ lDYTކ9l(1hSemIuqnu΍g&w-'NG!5N;5X?;7_7}I5n~@O@6K!Wr$VMsD\d pγSqކri^x[pk!%9d B1A}:&+ܕlzzwtbkV/kt.+`EZ?oƾlAF6" >$xDkl9$"ҩgFs&ot88n+Sw:C{1jLSWX󺡚^AMT>~4خ2K@K5ZF7㧀 1OУj)C_"xI+c&@^"O%xlpXIEhHO]"Q&bhYpr-H,JWy18?Ǒf7&JFu'(v,? )|黀Z 0Ucds[f]QN<+e';4G L&)RuSF#j=h+<$kyu ֜38^Ԟ齓ҽ\FE#=Wrr %)NkK'fm{s΢&O]#!0 %a&`qHZQH:r!ƶϛ}ܾ{v 1)bsMھdfyZ\v ͑k= vGW$ O q/p|sl^fek"v\j;,4\l*QgUVP]x͍P|[B0}{jq) 5gZzN2IwUxh`"<$Y7]=b|LNwՒ+F]" JٛZEY}( ;ϐ|JӣAhΏ쥷#4Iktv߱Zudzt܉8kq,tа}~MHMЦ(@p>B&S_(! Q8(xk%SlT!! n)t`5d]"cAh 8@|Xpu|ad7c=Fx#jC=]㪠nOEy!< #W v_d&z6⹗zA[2EuRcjRDw˷ 22|j8^ol ̨L,C?NnP~& *!4!} Q(sJ׊n50ed)!҉a"-)cmRwql_ 8{uɟ 4@ 7Y.F}e5h^(bگN;|Wa6'.*2NA`1rA\nܝp|-=7V>ף۴,ݑUG*LpN`6DJlYZV;8S{bMkKuyCSvEC4Ljg/z!D3@yԿ7}#}怩>3i_, SI.HY 8-$saG{jFЖSN Q0Gd&PL<1J%S-gXvt)aцƿ_PqUIl ]cz:p!2TEn\K &: g^%;.B'v,b.>Owv 7Xc=܋dt/tIp-Ҳ6I: Dڛ׉r bҚIи! T<&0yՑ[p\&|d5  ^K Ա]2N)P޿۴|*"F}{#- bؙ+ T 0R. zItdwޭ@Ab?+߂[;@@]+ t#}%L W}Ii!c jj=3RT N>ꥒxdmDnŌ"2|NN*>|'B&XM9 ]LauE!G{| f7W|*i͠F%>Hcܶ7FjE'5͖ T׼**(^i?IW"hΧx \{%"^niMY=AJڙγD2rDzPtJnAQYD ׸-;==f{ _̈%@o:Y{kjڍ41t-T1#70@O(]i# Q.}{ăz⪊wN7ѐVIEW8)>QlW?+sMk&v!48+7Wۥ#>YXSnbn3P+svV@ˈk3<4o-e)܏{i|ڈ22tOIE)S%>n6k'LZؙ|E̓u˘xasE*ݲy:y 44ݕIZXަ17o!) ~4oecH-qgĦwNJܞla2"J [Ya1QxvmUyt'n2-ʑ)w%oskGTN 5骦}T'DW)WSxaAn7WҘHZza\#y<"&l0}1-FkN…֓Q!8T!?TvuG,'"%Jx-Ÿ IKg9K)&UEeV+8[Zwr[Rj2 Hz W=KzD;WOH,Q@[Yb+q M;^_Yz6f+9c6=)Cek>UNغ,N]ke΂,, ƂΎB(7l:擉{@DbjG-> (/>aC,DVGtU>T Zi_6ːw/!ʞfPlD29gњ/po5!Bxl .P6}_V̛p(D;TrqI,@X&ctٱ0ߔ@%hb TMH-#q+zGtdb{;?HJG~qO"/êUaSV^@ z/'1;KXL>)S1L VN; :kFLk^pChυj۟VT*O#B{spdo[.T?Hj4KZ/#gd-,:`7ⳖΝ̟U̡VbE# T܅G"e3xcPHVE{mpct/h$cvL][Ɗ}Q~8^"6n3.sUB(J7 JћkH|]<^*SvYB(ӌcUhvUsZeBWuK7Ը넝y+ _:ӳt G`lR"o 6e4f1^9a `RR/N}TΚeB0+B7]AË;Z,$9&14I:LneDv n؍Lvź͋%" xlAh}9D[J7?5o?J0RzQPI6y6N'|<,-6B 7;,Kպz>׌b܎I#^W5ѶI\:7鼫o6L˴ܗݕ ۚFJ%go.V(o4l:9?"2'VܚRf3 klS(ǻ *(=F%fR;5q.!l)CVHRlbIn{j`ɖ, F"`}_<8?Ssx_4,䩡 /Ed\Mi&{Xi2y0ju!etEBrU0#T@w^ď(;C(){<.o#힆?Ï.:ŕ[~/Y^Y\KgK~>I0@D֢/˿M4WlXQ1Rņ⾗J2Nkbx?|$uG}z`4rJT)S'RG )UPj0*u/xEAKST'V$G8i>~?Dw܂DSX1̘I+(TNe4+% zDºR[QMN7C3eBCܥkf@y|Q`HZ΢eH: lJC"˗P ,,pU}imqBvW{yJ_zW& Mx ' Ƕ@WXej_@ '\ɓ:/$k=Qcd,h=q癳k"`s3[""*KW^ے n2]ě_bO=R\# s$pPfk |M}b n3=3z\r[:Z؆A th@ dr.}&{Q<('MJ?1c՛?Eڪob!u O|of]22)m^INa= ^SO̳y.F +y m=]XRL$aˍzހeMn1`B^3%_37ͯB Q((ݎ!32>9 f v&?$n4sᨣ!13i MpamAU~G@K7 .5ہyHԞPqbbr o.#>8 qVۈAGtږDOU.8unU3lXՁp@b)Ŏ0mǛ`244dj:Z <>@'#D5]qZxD"E*.FSKe6Qޗ4!JqU"$G2g򣌵V\F01@PPBE9!c bPgvε 5$4d.io9%'#~iYmTUAJ`ѝY&Xa #tivzl{SIp 9h?,dU݆f|sw T_dm@ z=5_g41Wt R!.7b_cቤ:XTEpʘ _,Q t RS||]ɺWʴv=I7' {^}=y)s MhG %E!.o(R^o kntLqVwETE@w2$NQ*]nЛ OGF/PodRWTb@x-'r#k+{G83**J[/Ƃr7XC ;FJr >%usMUs;IbE`&3_*)ͮkbK=^,YF7fҌa@.gܺY38"Ǭo:.6/:MD3.aD5̏dF8Vg'Ý*)l2{[6=uuF=\sR͸zGS@Ej3w]te.`P "JQkl2b~BH :uoik~`@eت.eȇ0{pz*JB:nU%mO4h:-1iҒ1$ ܷ^J:. MnUlݹ`(2A00e%=saoZŒ|)%Lr#3級84IgcۜiHԦ MƌO%8SJXOb#D%WXXQ5π}wd2͠kݫhc pS^1&:FܶWOK:޷MMx~/B Iq;dh a:Kl7 K,1-؜m_I}n?r)8 它\s˙zƜc˿3"wv,Q<"\+g/MC%oR>c3ͫ˘e8UyNO-zetY:P^zO#yʀ\=v= VtOc{-q,"khG}B\Lz%@2򖪆S[ȩ`񎑿 u<=DN ?+cgb)Q])e}*z]mPajN{]-z2[d:፤BQIr;RvC>gI#* 9k3t4gZ]ӳ ]L(H~qd'z3= k4#WR 1pCk26}}(A Ὃ4QQ;20âv'_h gXƕ-vQٙpl@Tu,?"xb-|pg:J"YJcw _@`9b$BpU( =Y_,V&u3sHXlLN^T= m*}C̶Zfa C4I8/Xxy2jWB Lv'΍LUgi3"I-XI_{3vNR//#K 8v\Z:>'USx3ڱ,(bbG K\hIKj׬\IQZ8,q.;$( 0^t{?02㛐ŮvIm^)h l"bnA;6Jf,ýAV :CQ"e6} P?Ob%&?[)ia:P|^kpCzMOL!1R!Feԥ *7~Ӑ%Y>Yo<wdv~}"\k"zwD jko;MɵIBXht^I.+cG+vHt7"9pc_.oq(7 476;hĩ]6t"(VQϭzʵȴq0R"ycB衙>owdPcI)XAF"BN+@I_k"b;س\Îz_J)FBGHG3*o}eSU.<{ } $٩NV棹!^W*gE9$֣|/诟 o~w/ c!㏾c\mą{ /@!-P b܆|}ҁ4Kn BR>5PF`c&m x s*,+Ep\Dx3Y>hP}h* gCXS -W$5+Z%̮΀xj?j_EF#%C5RvCi,8`-sM%{VE  HZ`zaCu*3O ݭ@It, }|SM0揷n"&Iy5h~.`A\/fKWP }T>K։.mzo\ҟk`d’f:Kqw<҅r(҂N 4ɠ,IR98?1VpDx(<YaTȮ.(p_aଉSOäVDSC{f=A҇y^.@I*5~g2R*G}MMz6aՊaRѓ8Kz8B"T11H:6xg8C?̨ſRNy zV EJƣ ty]1:2{ͫh =k,|lϑc$X }W' ޔ"%Gsk`ʒ/a 7@,a3CXh RG y-57@oU+~stnamOr e xNmgBv56RL&\L.o<  \DE"ws[D:/'Xl6/RXS:ʺ¢ti2<1 q=[^RC%s`ѓҖbZDFyRb\gpiE PH3ƬH#("vyllg{)EVRyX)Szu?#|i"[-y8nЏ/6qJ&B6xDە䝵ڲ?%Ǥwud.&Űvkꋎ$31'E2b(_ &nj":ߕ9r6IM9ٻ@IRdev$ GQ|糣|U h s 0L_ 5 %OY5A wLGAJ #ݫL Ž[iqY?M/Όb,)sw߫F |T5.`5Ь1`2TB%Gߥ+VO ͌pgi{[w: l!x!%C4o s"9baXvX0ö419yP*q3R\(mB}Է"ZL {K異x85l$嘧2?y;{Sx* &gX ܢ#9d 4LvbMF1n^GKXM`w,K|}!j9|eyR!%냢Gf>䎸洡hNE/e 9J䥺,?*GZ)ݢh%fLrXq#fj:qУ`+'7eQcMh*!Ϛ6bF'.H>vX}P]cuVI[;Ոm Ϯ~RcD Dk@T*%]ٷo ۭInxB5$3LWyidfTElaCba t=46 R=36 ` >Ι[@rMG{?]j+T[:$ C1;JUib;DiIl^PM,g{PZsE>=ns s\wۤ4}xߞ;j#)b)xaӵ[h/ιvMy" W_FYf <b! [b^˫Ԅۅ_4/?ǣ G`:Ucg䯒~XZ1dƺAmCh=9<كS斯 IzB츟du)"сƞ5|+"{G/Y oq,*F)O>6ƎYɁ!*p.`*g?.Yx8ܑn nhn2 ]6)z%Vot l>1/ko+24$ee Bh-HРv/V΅[W%ᑅuPيjK[m]O2ntP,,3o~?+y,*,wZR^1TBeIcl 冮ȷd;Ac_ S?HG ǒH9>G3*1=OvC\ ʄ*Ǝ%t[;+P,>]tO1 2uny$Cixu3/|X|M?ϱJ!o$l MTNZ;7#:a^D\neBA\\Nfw=Hor\qpihX G '`G_t H;i\VVv~g' lܦ{i_*/ӆcu㻳OԆxaA1r"3D||4P{xx`U?>2oX-?t|'`'&s {#~)Uq. 6K:-1:~j#W cl6g[7;?UwdxC x4??+XkyHa.į)870mԫ!j`w sIZCIugP).;@v݌[ьPv|.1(kQ$Pk9b,ceR$ e~vR=f Pu2؛`HGէGH8TÎYc;lP5JDҞfLNa|1/):@yDh[w/E1&me%J C!S~u8v/QCLGa_|MN8bC! 1mB& Ռse܈5湡̞Ir+<`Pme\t3qu |HC@FY-.^( `yYYA(.adث 2XNNVއB焓^(T T<7=9O7U6}f5KTIv4>zuc5=Nq1js)Jc<GE4\E,]Ē9I7]mf&MaXe) m_!TRRAL}jPJsxWȄU99]k< =as 2u{uUnQ[KMH?]'чB !v{4`U{~B}aA$F(;C{l>e^ ʮ,07&Wԭ0H~; 2b݂)oLxn0'1WvW$#gB-Yr`D`JΏ*=6&v]XvdQup7S) ȓMl{'p[ŎZgǭBI0i!J3;ܷ)=o/[.ˬ@R5NXG?ggT;alkCgG6~s0<6jW`Az%xtGop.Hg=bBkědm|~@pVzxHy}$])K=KSMn,J1>J-9-V[r LBpZ8]nUN zEn"mӳBFC"@H2nB~*h&cq~RX"b9D~Zڐ;q. jds!qund#gХe;R-dz#kdUK m믌i^ᓳiKv(iyP"&yfeUtH ۉRʫWxɑf2/vµi+*Ʒ> ;Pn0%T ɵyS&~bRKJX5.Y5سE6L#4lM84ԉa?7Ⱥ /5Sʺ TqlL꣜jwC׈^P<LD30?UhɵKw7Sx1pnMF?"Y~ ~70=}_ "q32< / IZh0s=VruJY=W!]~eAvSGPB |QDZy˰ I RQα(:_kgXqBh ~E> IQr}e,hctN>B0'ׂ~SK"IJ`"D[.LȱP)K(HU"L SE,/fwi]?sنPg"'@({%8# 8;y< <+n6:՘LlJ~J3lB,et5tP(Y9Sgco)[/.qՊS|,'{tϦo RO&FfLh c;1ut,;䞦yb$[&໼{v;Ilԁ :d@މWKVuF|I~ ʦ (\h{(PWէMBZ Xtv5qW$"tӻk3"{0(nơI8EpWTw q#v꼺-bKOF%5MDg\8Hw8|̲.nfKfva `a JON&ieؖ@Te1pQ-$)} jЌgl|srmvZV- cj*C=g/yGAbHL|(iǡ:E淵x![Qb;A'Z#F8+!U%- *օ4H^E @K(P%S߮j+x@< qN4^<%_D \אѿ%fR2glP*}T'#yV}]r~y^v MGicʼB! C+By ˹%1l3D۳rh|s;_ ![q(qeg:.exžRF9 R|;Xgq$($9~0ÛKHjSM6nlSr1¥ڀfcO8g'vM1 +Fͯ~P(XŹp/yTUUuAjXD)rF\}*); 3qAxwW * zD"y"vwka@\U! 4hKZksJ=kyٔ:z9\RS QPC|k0XJ>H(%υRSA6jOfMnl+kjfŴeSvTfX@0WuP[r6 rp%Q8{*<P`vQhoC@z|֕R[n#M!ߙd}_* $)P4p/Xw^{ DTW 9MA5bcS5,m95E W>P>41 d9Qe;EK+ ¨H=0!Ah9S<48cj&7RB16A | )È;bUۉ M1EPPաV SNSй#h|-~#yt| 幑V3y8EuIA;Lkd}B l=IM!0㐠ֲCR JXy&_=K1s05XEOޣb_TT&D 2vz:.Ih}9kȄ">TRhecMѝڜ0D&á CexM:*+PX˚n\M.-4[ڕ"93"qe>gj/?IEOHW[K`zB[uĽ'ݯG_/ [] W=0QN\^@:An.oH Br*붩l\cT,V:[ E-.jx#W{]6Ғ;9Ǜ; 雑LP`qv/0i{>Cc=2Vtm%bdX! 7<'IidWҰF օSi÷| ,3#7!Y4%N?jg]#FHjIKL%1pdOq_]1fQcHUcX+@ 5nUm+v7==ȓ1W)nv'iv0w{x uJc5宇} чuAYgӸ]D]9O52MKpu=y?S9LIF7vJˁsY]KxxD}#{6:ސɎnV^?c l= j^I+#tj}L!}b8YJ6*cy-y9P%j *Z%SA!Ąst+xfOeY3IV#bfaoD?F1B~?T{-8jfA٤!_"hh*uҟ܀;=S{7^ ^ Px!f ܟՈ 6 ~w ()[q/pG1i6 z.,ݦ 1ϸ,~ZW. 呟̸)0A"[`ZXVmok<'9#B@F}аa-;8fsbBܩHptGC;&k->@/#1Ѭ$y?]9 i\:iMÄJG7b!Rǝu:*x-Nh}701uG5 5\ξ?e>6;ȃ. m?.gMFVskr}oc71zJ Q7F!̐]\[il]~e *dB \_Fv׉l|ryB}jBbaC{*4똂}w wu)e_~O&-Wn_zhQ<4j- gbD٫[awmw܊# Gx,9E"iӢk<=E:3o_]Uz]ր9+у2,Tv6e.wU@FSI6M9"-kAqG\O /hVbY:V8`2!(GPQۊi)<#_+¤Q1k4q^b7FcW >䄅oː=.4{:CBųar?l;-Tg#pڦN/ugRb`K\y. 5`ؘn;:AB`Y&wgBYS/%F}VV( ZBG{g:U13u PBKjA)d Q^ 7)-(NX-τkuG A`<=2;]Hy4(%X{꽂LPЧVtdY  ma) kkd(<Byx"O >Ty)4מ0Pj'-}ޭd-ınO?7_Ѻp'PkeۓFQwޒss~x 7Dn.7'=_Ό"*`{7ֳE_I :륓`SO\mm_wPK0-+rzx<xfOu#. Fa" ``Gi= k&q[Hu!-8-uɘS|i;TWo+ h%57BhU܅Aw o>#ٴTd_iEO`%~G9@̠jEexrj..# `xA:2D~H\2wyBŪ\|VtJVE0OOBMU,9jW׈=ܡ 5O -ԏ0t\ަA@KYRΦ'l{I[Dy 18`/RΨhUᏆ9#]z}iRk(x^OT+3Vwd|Nט?0x,.p5 BPޝAswC|b+Y,V*o<͖mY7kt(a44*?!ێvJ9y!彡5_KQb~ӵĄ5GHb1l9*M~y<Wlγ5otW9=SRU3îŞsI(ì6xgTD1ipFK}(3oCzU9˺zRUؐ9Ka4>/F!0" :|w4d' DH(rISXL9R;NJ!ȃ,*keV/B}-~+<+jb8[ lqU?w5ZOҚge wWS9Ή]>[OD龥Mh.Him|Z7 5zQ [zJ*ٞI0hFCXXx -f ,v^*|>$ .э3QB7PwohAkOtqF{Qt5Em09f9=V"oa;}V\3[_$< JtE@hr+%}adj2(+Bo̳&6Yh)4k:(B {DS4BWqn3,2ԿD(I?ʠHS }yc@IC%.VneJjEږupo}͋_4B"d.G{P+qcFmiLk2-FEN܍|{}EU~[47T+! Z7u8[JSSdAӶDzntI^v}nk<8%Qo2Ů6T}RX:.2A]Ih27,M]FYT:5ܨחg Grq g:I?y{bySh μM.>ZP$:MR`9x5$3EKيZg4nLkr7gQ[&0۰,; R.Z;`P#LXOu!OyWz$\Om`}</(`7)736%6=4n.fd~ ҂ Ceڐ`&|sEEEjxʎN#3-< T=X \!Yq#Iw/:9)aoPgڦ#3=LV]vzh䜾YX7)ǭehVț kw= vWmwG KhNo04˾ ?{ FN97#N Qv<?Vէ ]2u\_ch삵&‰x+~DAg(b98\kT,:ZGZXK6jfqt *7sU-'R^ m.^ڰsj]F%w>*:uq/"$Y',"Zc]j:>oSf WS Wz<7xJw*JrU7!52cDuNx+ H%?vi(м> J߰6E2F~L/,^9en#kԃ0fz /.%>p*p w$ؽWkN8#rTC!l@I%!G(bj\>Ru13t5q)Y}̢J\B+X=ò=ͮRo/|=Ub[ȩ:zk-zӁ :ҳT/Af:%=!1.]6.9jhWWŪ~0 [ evA}IYg*P:K0|稻%?(l1KdOjڒ:qȁ(gbVB^ԆSlqĐHiEb Gl17w?{ xk`ȅoǦ$͡;@1 5t#6W+5@Γ_x޲;2rd!9WVS~F+C!zedj$0GbIVGɻnyM}cGɧtAG G:?Mhu49yFWad4Nj,RQfQe⵶ Z%Kˤ]|2ȸZN@}_qV_nEFy;ր x7H=@pTŨFkAF0'XAdA *xr ky09dᎰ}o֧Pgw 5 yeW#XJzBX25|p*!FLJG\?*+(FkI&0pz>0nˁ$ U.&҄xqGcZP|&O'5ݺb 93߻ACgB;CB9S ۨˍ1g_ۏk@N(PŒj2 5hTXZ c!B_5 W A> ta]ez㩐.=]W5xpWw eHɷu6=ʂ*Աh 4^i[*w%hp$/p(ɞjyZ-D_{Őv?nJ<@~Zj_L. 6r9g9vǤ[Wu,e2uepڀS-oZt2ݱ@tC&vK.SJW\&yI@FNўƂgkF\Lא*IN/a|U/g5_W"J'R]LACv0݉wu>$3+MYåG Y{=n°H4v1)YbMn+(k?8BXJGZ1j@QP 9nfR;B ҆ĉ\XR=VKxx둯(+kRKdB2GG~)zV9q! (G NJ5ZAy7+-ņ[ ͽP/È\\`l>+w o (MB,eD|L4iCh̷otb{f0\p89 V*-I:}dj(5QZZe=ZzL8Qy(\~{|@sMDq @MEON@t 'ְW3 \pއi9|Le*_RQ !h5aZUhQg2PʷPk5M.D詫.i#:ܦ)S-מ-swэ#r{$\+fF6c32Fwԩ;Zߟy_oYR3L ε ݬaL@K)mrNxvBXċO^\TRgms]$w'B7>_Ji ¸7#.p5j@N5,iN0ʼnw MeH5j9jt%5؁<^|j<&y7n1Ȏ`Bw`NwM Y֏'[cOBU.хs9A2 nj0 2vqU"eM->=pXHDs6 VRܔ=rb|ߪѿQA8o`1|SHA*Hn%u e:: *QPC@^:S0oM!_=BI{YP-34xLI͠Sa{`mp\Sfkb˹Kٍܗ7S>GbB+O Pv"V%L7 \ށ MRÈ5N#E(vKZ,q+=tCVc5ֳ.+L˂ͷ󌥟w/Pia&י&#jCg,BX_,NQ{+<:0mT}k̅7ZzF&wߙJi^[1VSlrAn/%ʀYf1y2T ?uK$Ds&~ГLu;̴+E0[% [E枰{ܫT4,,I+.&.۫D)bܯ1*{hֶv@+MWw7?ѓvЫ@%_|͘:WRΜK [HdI2jF%=la)Y|D> ;;,BR nW oQʾ|ʓ͗[g s 0,L'@|&bLB[,͎l+3w wx0 @oYÑ _$kݫ@69kP$L?6( DNn(㦺wt$J)ttzc!-q]/*j2v}{08 Um/s#:YRHߴ{Y!#@HHP*[,CGj7SWz^=@0 d)A/ScITyܨ:"7KOX-,yKUB`̠6_o1i:N?vFaϕXZKw78녓:6 j$MPht8\IԭGo@]A19E]O-#h1FL(0dN]*N b',dixgbcCrCt`h{}¿D\XMmMS|YPhj졸`ʺߍk'ق-;H[]vi{.Se~qcfgC_>^UF |+~83SƂ@M|Um27wJ Lu?ި#3fCpY~b MաQ %\I;0*L+@avpBIKOۃ%^2 ېP') AQ7 x 1y8{+^kL\eVKW~t t`kT\-+M]jAZ̶^83ӓͩX[:P_| H[*v$Su{;3Kz(gf~d91ψ7hscd Q f-Ur_*1l2&u9\8o48%),jRZ7/hSBRSo' /?6w1y5>}T4CT c"[)BDZdVd?RIHZɡKCci]Tes橀OY:sw&J Cދ[V'O6= J 5TOG, gP8s<{a~V{A!ZHq$`9ӘQ7+XU WCfJ-54 6&aqERBx@Użߠ>]]H ? 2=suCn%f|HW? ?e ?U۔Q-gd_n ѱb3/-TB֢B2哚O&F()OEω< vo]X(/B Nm:bCx+a_H%[)@i05 'Q@8&ٞ SD>ZPĕ] xbha/[tP8l h6hUkb?=ףY-&$y%S.WDI㝡Hk*#eXBCWv-v\E^^bCX!vi0* FXΜ&U+./[ pb.ή+!&6K9]=_m"5uپ\~g%\N5I ]K%BoR= tM9AsZ3H)sD48*8Kh gE:'cbO[~v|̒qY-6%ێY\[fZ cgy6~yӟLߘoU@S@C~贕)U$lǤptQo4Rm!d{N:@'IEV1 gS'5lړ?54$UG?ba[8yJ^Ǟix hJKSP)-C&$2EڮzE:"K8nvViDg5`K}|\R b<˕eWmkDJZ(-FF|[l{ 1뢤s͈"6K }4߮f?/%i4=Y`-;- Q*`WBhQԯf 1k%Ex$A3h^ )[4"Ac c <:P7aȝ xg!y}).gYYxP0 YGRZ!@'r/5RhIMIj'}AzC؍5֕XvQ'(`]51v-# ~4 )8uS}K蔨0HvQBtQ$.W|:$=yvzi.Β:[k{+Mx^f\sU6@R 0@QzX`Ԥv, hsH]}W0_ p7W5ɉ)4Ђi0$$w Dv1Csܬ#r|Ҥ:R=eE#P-\ކudzw@Y.ě(Ak8|9$ ]r6&&ц&!rlt/PHyz]܉+c٢FJT}.Qt.,[5"u\3ԥiaB%FN_o<}Ag%-jƴ- vp S.=Pǖe1LJ'W}7w*ǟ~))4?STNW/{'84zatgz{\z5=6@u Ah^i_I@ju _N2/,(YǽR&Ь@PlTbT,߱*"YZʻGyO<BDžfA䡿s Giۻ\*Ux2/K:1yƚR,NHz77R0qXIف ngMIn%8Ҳr%}a>Mh8-oU=ٓ&1Zm'Sfa*IbDTy+?zTp9sgzZr> ~~DMFgr{pq]z[s.W(0R hr *ͽoXǤ1 W`צ‹\"I7M⫫PI]#8tUb!;bb#M0gzܰ.]WA]e0$E~bRS~3(tϰQK>'~H7!&LG?WzP>Z퐨. r7w$N:zqݧGnң/D._pu^Q_y3ϡI P45ezy" (D],w&{5gp.ް &*.\LI[SU[Ndy|]o-Crp[ۃ$4N{i6G7DKAvǓvӏ[Am]T_KJ>jb(X~R5\=xA DLpm6 5T-2yl]J:k0HK >m,wWƼFᬤ!#!)[V, &vc=,dF_T"5ʍ 1CNM.zh0aa~Giynx8C 3Mv[Ңb\).?T(Ԟ}ZZ40ќ:->W$QrޱuBwQO5ׇP?]~1ử?5eg1+lYεJg +JFlS7BIM'4\dyo a\rMӏś8/>m_f s痚.?-Xrrl>ce]὚.K9aJ@ͻϺY8.lhN K~20`qj`b+&Dxxb'=<#l:2`]T(Dt 6"*㾎v!_-lbC%\b[)Nlj!pFl|G L=ap5zpQ֟.EmmF|(b:jPx%ԡuZ[2:cqt$)Q/ ^cT:E(3ZZxQ?[&EkIF3@PrG۰kNt _#~,N]]T`[PA5`\h<<>2򴹜R8[ۄn?㔭,2&b297A!hf{/BPNSU633C聈&81)~NbNB]?bԢ9ۣ(}X]ӝ pHպ0ui+̐^gmo&$2]K{e72JqN2&䜘N6W7 x_ 30,L PLйg6n!#Nl`o!ZۖYPNF^4eOc={X1QuZ1Mڽ[hӜ7OI/!]׬I+,T5N@Op.ls~]f7f{jcNFg7&EB [TJV:,% 0bpBis84H0G[YD~F @;v/`o jMo(]is.)\z&*Nw\MhXMP?UZoĚ9kF>jɓd&=,p#C$tdSsGh!$36ɩi?Rk,=2rGFZ[]@VuQ?ZE3vfU&w<;XpFP3+PXʵ}IoTǹe yM>jPsQ<{V8e UvϚmHO6 t2nYw-¯.fc~!˦zctQƿcX\r1\caa"^C'@Zi0lٞrmZy /1" HVf*Lz*Ty?ŵgY5VMY'-]9n^%I*#w+>GfHe@O ¿i__@sd.:Zԙ3;&{7ĺkGqX #4Ko.Ÿ)݃?!R$G'B8&_M =cPD#<KmxDBm2JHSn0TUp 3^?M`>`&s d}x"/'y'R}xO.987B$$Ų1 M^.l]]V`'/AISfQ="JH|!X`زy(ib0FQ_hk.j~9S;v:1A;n߂kxVcTÃJg<cPkC0YKbf$@)4aLY)ӛpvƾfZYGS"nIج\C~~oyG[?m.eabOT#UT;ذl벸 mmA"?P4*2b QӮၦk_Y8yPW;S-~M $ ]=&8wj;ɾ CNF!⽵xpVP(E̡Rl?}9:"HP1sy'Ф[aɒye.ݷ񳆭'@p"%!g`im5n)~xb ϯjݘy*BuY+Pjw{ok T̍벀P`-5 ښ2PYUKq"{22&^C ]? oXi^Ȟ6'ĵ=ir:.> D4I-I"0PAu ԕrV_R☽dgvqIpr0[6 &~ZM'GMis 1,` c75=2`u/:X,8r<.]iH>IP~ڣHhZN!e n{ff*yZ^З/4޷*FaBZU9& [p`u^1PH Z؊Hy%8sXcX#iXoߘQek'sWeD%B9Ôu$h9HΕ% BjUR RTq 'm7@R}1-]ۮg ?`_ӹJj^Eg},siLsb3m!\SMbӄ]p!H&NMlƊ-(Gc893 tԚڪg쾺ς_(vJNMȮfa09 2/z v)lU 9M;#6]BV߸Ja qg態q1$LEz wf{|ˋ`uK3o(?'i_IN@'YPpaMVW|/M?Uې+R.R}&gf/ f!En._rz*Kh'} 7=#˧c ^=yk6e>iOTRSdm )Ƅ jںR՛Q8=. mg=l(mjgLe g%Y?+I~2v%qIam#U"_N{J~U茋 i %m D+T%'ƎuFK|B dw+J ‚Dkd 0;w䮰U+( _:"(64.W훵o}pA|XA0ƞU~S[7qniDܰZ7Чxh1\o fo' (9FUf2 >,m.w6<$h-eeheY@m9yۘ52X1fTd'ydK^Қ{7pu-l!Q7|hCwN)-$TTRv~mklbHAp5sBg\ЯA\Hl?1uďJKll'}5Qm YcXMEH}w;!-ƈXOI _@~fTr("x92 ~T Z:VE+ql`1,jѝLMx]$=bNl+#.9L ~$AƼEC~j߻RP){hjE&s h` kVPKUݑFa*Ol /kh?aiG,˴# T.,s=U3\#<5i^+ R@b࢒т>Ϟ}6W^?輖_6Eb ;ɑz4gEDN ª#;8^>9:R 3:xPJvP֑dV\T:LS'H}G|>V/[Ճ"eOl7K¯S]sxй>oʡ 3z#[h{51jih= @RKƮ5qxQ$rPdrYafɣ8l{?L 5 qZ߯Hdzeuiw0$~.yïRr`‹MAKہ?@ r.ɢu #V[MO#&@}?4.aQQ1BEd[E#!< LXj~sX+kuBu˄y Z\Q$ϼK}Bqj8q/Aj73lb#u`20 y 3f.AK QqcrFk0x|KSJNcEP/\ɰ#+ ک~zk^Rv.,"Po6Wf!rIؖyYRtۡ$&JKex-#s~}&Mpp*K,/~^ &=uz΁f3/ڨs*^ #5XT평1zMWdT( Yt5ê?_'XԻ]# [{M_O7ܗs"Cz iL]` |(֤0U\(oulf̶:W|&<7%^rF7-|_uLjz׸t_)&nϬ/cWTyDWL\sOzly[ Wt0Y'5adԕ1is Ozj !7S3;b*S+֜d,Q?:4dF~ $'co H<]wKN.z$WL5Ɍ8я=椕*| EhbL!aJ)X ,@i1 ]UR2/Žө46U&܈Z).7 AgCrIKS`A{%lzsVY+TiZͅ ̎Eh&S7aJ>,y`@X!X|__xt'C &=$mp1fgk䙘љK\΁Q|=,e2=򸅉;\,# QZCe7KџNg8qSZ ls4'sf\+P!~ xtVP$)<1農Q?- 3T!#Fu:5d<~fT^혎9YAaYH}gvb(, n p;k!^.j*BXSc5 Rf4[$96(fƢ=$ya/ý{BH^&7>O aIh#ffqG(,G 1,h2>uleL ^CZ|@ܺN>-" (+n*#(8iL_Tpۣt'(x.$JV tfAޓ1 +FNXmd?j56yzCJNS׵!.:F)ߥv1K5$~#SN\\@/2H^Vyo!9ȎN4IHGf9Y"iW.rX3"ğ.!L]Q89g*!52c&E'!Z雴5D!.330~ǥ(M`X҄H [N CX*=GxWxc钛?To!ߎ(:Qާvyf޼҂xC>S.kvOjS-p+ݍPfjfj`] H8@[x=yj$%ږT:՛Ӻ+{o,!GA#yX\F^K̬4R'x́vY0nT'c[sk&~SX.lGnJ1(8RzGÝrPBvNeF01@M󋹙$aPעl]:3"h Gl8'P+FR0N+$lA oY1A퇃1D- raM:L|UQ\\ځ_4]ˠ6NC9 =zuLѮ{! C%qA%q`"qI9 3m'F](Cuꏵ<46 BѲ>ٴ/iC /JoZɜL 5RQMN>4);k?9ke-ϣ`ǁҾ!tC[N%^_dX$ y={T>/cƩ%~}i>ʛc;NSx :#|L0^mb 6G@2=Eeu9pbFkƒ >_ypO~fP!DSJaFV\}4DA8pE?mw~܉Z$`ǷS]Xc߹bM2tJl\tGQPI+3)k+"HEf85T50LI(D^ST]c"<7ةg4$R܂W -[MGꧪ]stx*IYpS"OQ-iM?&H oNŲ[oewN:hU-y PָH`L8;VXe]w_燅8qιk<ؗ970keQOR0HN\:IP?fxH%<:Y:( 3Ul.zw}G Bw+hv)Kiÿ< J? t⍟;e4gڰQYA;r e۶{ITF;'Ԫ{`sBP+qѪŬ?z]81xvXf}hkjA0/·lfJIGaU#) K%>EB1 'I%wIS̎YBT1=DX=⪀i0U{'Ҷ”4(.E@66-+14N-0  g ^Gx@Iv^N ʖ&znu[ɯtJеdt+P %g_vo/ 'r<H'Xύ$Ok!DJBce i\SӚ $Cę4DP{I'LOgx=ϧ. 6% 8^=s[h/(Rx#7#o*~ I' >x67go$awIDM2y%7({I;pqGlx5E!ڡ!ڔBڎpa^C BiQ:JT$ X8i,DPcL9끠c#v)ZHK1Ȋkᴭ~vc<jwG2 ]X҃-pSi00C xn5"ZL`=H 9/!D߀Zq~Z!?!XB7r v$=|]7,YgL^ӮJ9 !Ix 's8+s7bLkeXCɃM>!$LMzM~HPd F\L-*4NN.i@B9\H;uyRNC6;1 :B훬̀x9r8#MGaXx)mm7E",{MŖ( tM9t{cll#2g12Ý[TCق ^`s14Zv. >+ q0-o0Q莁4\.!Y/NUO?\N$r\Xn,o-Ξ[p9|^PMz>ϵ3O3]Z'/c dn!ﱳ9c-/iGw;w͝"mG48K;887&_WBɓv;^Ҋ (upRhn?{̋ho!Ay^ncjXx!; :[WHHBۺ35xp4Cdh_w 5q3Yh ~e_n?,p©GeԪqsDՎ6}q&=t `Zyߓ6Į}Lƞ5#:0]0{5ʹضjZ]\ aJɋ,nu^jppᥞr;;8FJ JMU*ȇ1{Qכh,aI.e|uB)^1A+3;fIe1V熉n Z,c7a[.Q(:ZZ"!:6goF#DE{ JԮƣ;1JIzG6> o' , SL k qrxwB.RPe:Sd/+Kا^?_+1SO={P[̳uE㵧0&tɗ? '7W}CR鋅prNЪMs@` %W-^wuXoZ((^>|0_zK tN07Y3ړzY UOZ$m}{IO+I*ֆ_[kB%!ؕr^ҿ͛G.Ngu>DRYl[l}]6TFNE*Qj)̛ڸ>Yי2FZYcC0&a~HVA-2eR>L_aۉcAJ^[MH+ɒhtF JuE0-jT{4Mc & &wVamT?X8u}vZjGF+DO#M ɨߴj${iDKh|ӽ5n~4Ӯ-pWdntO$;]j\vcfL4),B'CC$&\DpTCkM^7Hw$H6xy}CFJ$^ ,IEUτi{r8$\7L>8Y3l-E"[UG&$lCD:j[qDdzBIoֈ}$as5=3Ϋ!<)-@TB?21"0 עqF$xWnYv겚bX9 #eOXU!]ütľ4~Ύ!+ρg" %# gZ9Λѫ7/Mr9O6ż*d>KgZɵD}kD~yKKsl\oB밉; R).rgw/Dhs`k/j7 1y<$sN)ZV2B蹜9fmBT9w*79Y 779_/LR滍:Ƀ9]"Z/Xm`gmO1?z(ErzD-gWy9sk4vobwګu9BY\X V.ʏNThbEI2Ii>9jǬߺG;o$IQ䌞ODc;z s`*.^6s:lX.,ZqZΔ,~7\\TAT/Wh*49RhY,4"|rb>נ)pwRIdz-w_q[nBt95`qSlKwçr1k k'Q5hMu؛s@O˜%لS`J=A"*@HrbN<3.<2/j(ydVF Ꙭ]‚ICNp(V]ǀ?S d%ϼ qmQ],8I26Hc@񴌌|r\R, `0i.cq rc8t8ZAU]?C($3L䶣)WzFcBfvA눧6N:PNv3jਞ}UеܵWk&i!H+k[k[lm_DY,D"3ߜ؅d  H'W7ڐ*Q+HL6m HfLW'@lk%kN=lQAh]#PG܍B/5|U0bL<ӱKt!Y[_fs ˹趾 V~cJ­ڽheV ցعydXP q .zKj^\4w2R/˭Z?aʕ4ONQR/>zP=IG:?4?\1 5XrmZ?)QZ.6 S0(ɨr3qS? h ۆIs<0Uow L=BR?``2RA$Xm/lsD K% 'D7#[gM0 ;%r!*JuUVJsXRgkp _1VE`$n煮01z/i^2::2pgQwDPD1=:`.`ulAJز ]zRLp| !#{cFg_4Jf`u4lóّ 㿠bR- cݕ=#vd:*"t^3xjE@3>"yv%f-U#hj)PxqMg4"`#?K[1#$t4_5NhPhz{֛}+CeKsQ✆P.cM9b5l[ Ć )hs9F 1PKwڀՆE. ܜnm&EF]@)T@~s+ ĿR,Pj<\BOQ\eHtzpGQdCk_BK}m ` n󼭥7ONNB#4\@'y#V&%yqBщNp|X׳k@eb㨰z%12`TZ넺 a,FyW(=q !q%E-w!6$ht⛦|U záW]U&j[FlA.f$BDɮ߳XV~1Ao)Zw'QlB2 ңL%k捦&OU~60B#k5M?plъfD]%ًU"`0JG&x>ĥ tQ+RgBPFaVSP-YObTuegQB 9_BA-,v׍JεsZ;ɱ^!7g!KȝL!!u hT>|j3*o*]n350]E^ޫ/al8|l8^V<0ղI8BuӱRB:m% zAf{XjWŢ]m5;[Iy1)+jU&.%IqaC ~gnmhRܕ+rHlOB=Hs^#uEj_aTvb%\db_YvJ+|z}ђwF3jdvu"oaRi=8Q š.Gȸfti0ڃ$LK~iU3P)K@+P.+PD ۼIG}rc |dz + WR(ºv'+y'`B^[54>Fշ.N0h7#xTQQ_uMt̵ޒ?U#}BڪbwGCT>Y' I$p'>tE/fkkep˦)tm`TVV §6[- %m%t}M/1wFb7v&qD#[i-fX3kPƌfY8oA;(&1D\-->YU߇nqi$$6i|!j[:ȣҲjN,xRSwiv;n\1GbECʯeeQS|, BA/]o/}C~ە&3ۖa 7^1[`EYf!?{cKJm-L?NeNHV ќFמf&Eu]-آ0qQdޏ:e/Y?g^rvcqgaĒĢ+~+;[|eX+`Yؓ1Di祏5V>#m19N UXbդs@Nٓ`%# !3ۥ` ń,RNXr $y^q iPޤ%Xq;o-LApK$@_} ALn҈|{.9znpmҴt|݄nQ|pxE:e3x,?ij"JJϢT][ͪjc(m.HߐB\t}P-{-L\ZOZ9Qָ)jDZ[D*56+fo1u s1|#&8#Q %s0g`aa}dww8)T"BsV2>;fĤ~Ҭ_|eSb͉sY7L9ʤfrj 7( Iq`Vt$._ hDkv`E UȂT-ZTE2M.f@H' iCE$@z$vLĜP7P9'Y2CJfXu,%t`2*YJ7M'frp3{D6y/C+Vp*z"F4fgϜ-E=}.0&a# lgMb]# Um&0@2ØnJ_\ueWҙexXa׳^7Yq\6]gQP!A&/st 3i.!:^LHf5BsT !Zڠl+tFslq>w+i~bYzn[bp)&FLQ׍ԨGv g%@\RxO? #~a/0fRq =dE]"g!"ut+PU ,p= Qp,j[.U=F "(rN#p~LJӮMc\:ѥB`B*G;&4oT-i5f\,@@ZuZZDFbZ0N#=)^Kv`MV+d]Oe @aOco̞^5Q!O/Kv8} ﵏&DIj\L85cU>R]I=wykzXFכe|#?h {c~B+U MU"]?g+*rYbru̎@V:!wvg9ޢ-=Pjh,`RGyUDHq!M=pǺA -W*9 c9Oo' fSPCjg~Aևns˦ >YXArj9A)0φ6:Ү{?H-6ri zM*8oɆr$fM [pqy0".V+~%>Ld"Gmng^ E=gS*סV_`#SZ1wtxVڔK~|ul/56H&?l uٮorx5JӳYsZ1ߵY΁qo򉯷PB󢇷'io8Z#8g{0*T!kwS?ѹ~yq:J?< wOBTK9kZ,kUb梒딉U#'%HkR9/X/|ŗ- t ^d^ ۯ$.X梈@j_$0zRqj 3 Vr~KIuFeCz8#b{dxs'K%b7LU^WF:2WT& e7Ft.?raxn Ki)mxhfl9X:xٗnsC?sAC^Trs!mQp"A%~!&])3: 7yQsOaX;pN݀8&O +< _ ]&P^.9 o[R}U%6H8vD#{. .᭧yFә KGU,g(n/ \ NjFpwE \QI1_)y6 OcYwdzKP0aWݳ?6FmI4_Ĥ{T D`OEu\|# K ~$[b1DZi ];e"MaQB f7QMcko)C g?`*1X/ԥXs,^S-eZ_9VwqQ?<4T}[nft^ZFr$rsSn@0V'$ inWL5@"q Y]^YV pVKQUK< y_t7O϶ު%x@B8?]$>2v*z뛖Akq'O1ϴͽO936v4.ʁn>$ҮWj{f0~-j*{_1]K6 c_Ǝ;2CObXȻ#ly݅g7}.(i"d9m] d&j H\Rpi#1s4c']P7Q\H{^:6>I.fGY{錅d+-or%F!|^йBY⾄U0f؞/tO }j̣OIpI*lOafć($3ތM-8+zKmsw눥[i7tə~1#VV-H/ч֟=UN@JA>P \Ґ97"q``q@rFM3# 2#h@1J%I\_7 %S<{'f&D~dNM%݄F:&<.<2ٟ~ut v[!0c0iŷMt6gL .'i|y^P6_ D'7*7\ٷ}9GdS??a a}aMDV9JZMplPE( \$.޽3k2WF$`fUߞEk'Ab."M#qByөK2J EZҘ&@@A:D w3~(21y?l  3ӄ_s !?`$7lcb7Me*5v&?YJve|#ַKh;[k6Sh >{/&we0cj"m]j4iVVj1&cĝk]hEnV←%? ej`Vrbyp3QuSK'bTq)2L[n*zo]8m}jkvmBd*^z+e3|38]BxJAs'uIx{(9vZY$a/k3(őfߓIOSr'SV$im#LebiESF=RCI^΍Yг 1 n}v*U>-0ZYr9:El%^m! @ptMǁ f[ & k4?o`o5 G#Rq aZSbos#(κY?YCaEÉ2H99;c? Ic1-n?!0M~rR琥饂ttMP:.;,*o)95RȔ_owB.e3cx'+X{<M}GBXxLB46߻"D5M>fr[= ?G0UUа_0>dsR1BWs~jð+犤#&r[MNa]JNRCW_5[ l rU1]1""2sYP햨EnUoYSo:V42|aG AK.ZF5dA$ÿc4bԆԨo]7:!nۋFږ5<_u,+pKFosgESMm <./WM@wDb0/dT;QS: 36ަ3(3CVl@%5AT˽X^f 36F*( PBD0PDǒ_mK=C˭ qJ2)9x RXd_9I XF!ZԵ֔70gMZUFj>iksL*{æ#<r|}wڙԙ,:v:)F]ً<],2 E"+$-p1O;$9c7qŬH1uxg㧗=C@4)\- A~M*C~9@{͋i]ԗۧ+l!>_!(EԈy]^z$(&}29ɜeݜ]Lxb+_z=幯J9҉h_Y(~SşSnAXjCG#L_ RC eጎ}f]Ќg'9iL)0ϪʯIx`tbCcn^HiT6ln"8J OԏAV5Coߔym \VJܐ߬J@^LLn%2W3|&#zr![6M[ *ąک_7wq܊+fXk94e,k֍A 9]PQ8x+RDy8#*rJkv<MibwI$қ'3T"~wsT_tUմB+N>㷪"L\ZڇO f6KqR@`";d8%#x4ΥҒLFٲ°k!%LU.aϭQXou'nx6/S5Ύ:l%AA吾g9w\qnဋ_PVwp7% qLͫYP,Qr w8#7K9+{S<(S2=1y[pE(-[N 3yjdfQqy+bh8Z+RQl<>WcD֛,ix~8w ٦~E Q09O#|ODLKAOpCFoDA#6`7m ՙK E`F${D歯EGݳ`\;l74YL._hoٿpdJ0K/> CClKTn(, ZSX'df-`ی|1Wם,JZDPz+VTr`lMCK\, PAt>#2o;Fʉ2v; Onl]mZz?$7.zdHp7\aX(;3ij_\+xR~ H5cH2ˮQd `Jg Pq.J@U^YҜ8>hyA6нa?:OT)tEх/=1 geg !Uٻ6aCC^-<8ˈyܾs -ftů!I Vէv/ztYC(`0fT/e/+dMFADi[Ibh_@˩ɡˌbM(a*"9g [l{h"˙Xy%4/Gu= j%i2m;y~C,(kE?vI.nrۡ.L) p鋖;sfqp$Ô28r3t~sVz^6DOÃTs~r7e$^~sŜRtG´7&~>FI#igwsH9hYPpJf3P-ҙBpT*V{s\{ޭ Gw@FVx26.te] "Qk}pPY9i f'yF̩*II$NNȼ;VgǙ{5&%xGX:K{zP)"]sF   #pphEn>7LS-߅J7Ş9WZz"'\ IBJ +܉ 6gDTN#rmnqٓgkcG[0J)crY}Fn N~ʺ. {<z[6*FE?`oY J#gqf>ʹI45Z֙D/D|†ŭ V篔!,9? nUѷ[6 BSRMݝ{)c/y>.6͇ lV>m`:ZO r.n1sNzJ܏:"$t`OVn-)W9f~~ G' HD-KbmQH7hմKv"3&;ASd)eu4`a}Z"س,c} ك1Ҁ:~wg~t|R/r(,G@\T+qjpXa̸ jvM*fa[P{ ZEv Z][3n*)|i8syu/9~?}Ol'ά(J* Y !7ybcW03fXCb38tF]Cl.s@Ot Z7j̈́1V= HT>h:m!*弆b=(GqU/HF#TCi:z -gs(^O2rE3@kTyK$boE).5!YcEF5|i#9`b@?ok'X¹4"<څδFeNq9}dde}B+}~*x=-zZ)ċWd)u%p&,W0rX9LmA$;0xWoTZFB2Oh1A x0}O]ePё_QV䏧/`B %"I3aVAI)w9Z_ xMFivpܶu3dccU3MLh-J[K}b DEU+a5}L:UcQk'` boa iVI& szȶM*a+!' DHaMS4Ԣ/#}C& zŠQ" ^IGIlğڦ Vv.4 6=Χȋ+ﶫv `PۡgG<:̰/roԙ"b fJvܾOas3J9Tfj6iK/a\?0rpФ̌'vpZs8.WD`aDNB^5!X[s_|zWP٪Z͐QO?D~~Du.-]e ǎQ^/m{# 'Y8q'n49hAO#v9#h<,h`*5ynlnU'ۚƈ~:+?c͗9Fyˀ=tȫ\nYLVޙ1KQw;w÷Vc:Ίz3W.S+P!6*a;+.]Hvzx3 Y9l7!xVN7%UQt>E=gUx ~u5a4zƇRH\1 aa}2wX\p^q@{'.?C>yҙ[DN{A F=LLm6%KĴ@\"&D;*|cS_">]Y|Ϣ$d9(NwiKdΓOF|%JViw)cEem2'IubX^YԗX5e7D8GT/`YEԇ|f׮\6,0MY64يÓ48},FS=De\Dͥ4+t.d+1s:irZK{_TGɼܛQY[8.̞@NW?▎ Mnx Ż[r?}pT+&DEZ?NMk_J+^EpEuajqjӿxfOT-C ,2jhb95>RxƎ7Ȯ*>_o2w0jtÕ@Pgw')[6G[A}BK8C:u>_(C#ef|`X.wT7Ӝ7%+"&]?0KOe'γ7bK·7\$4 S2W&غ`U:oPv כ7'Y! kC}pa8EI.6\aͣ[ln:5#ϿmQæ%C,ʈ.ȹUdshf祩P͏H+ o we޶HsZ#%/e؏e{Xc2zNl Z|ƷHie6Bkּo<[ՎU'՟y1@:Fk>MĔPʁ#@9Աhz_ b0;`): RM5ͤ?sp PAD@" 98[_?,Og0ża>޳ԓOpcw{'_']E\B wpBϴ =4lX7ucw'j~<(VwS}׉["6uW&eȜ"(S". n$w9^ *o4 v_0O7Mj`%7~DQ*Y##@HxbM-LI;0#GQb6ʏXlf %†rEf*EJ avxO["#_/SVw|ȴLwW@0qe평Mh'9I +HbQњ~~a# υvǦҪPхWޛUnrQϴn vÁIjݥ?\BLt ˮmQDVf*Y}qŶ!6*N} Y.Y2X74Wl(bŃv-j +`x6 R1v 䒎؆ќ*u?3 @VS{Q!Sk x>U bàQ =0dzp)i.V[nqGlzب1ń`?wuG⊠r{нEHj:Z.G>c[{}b{DIӯMBLC&z!4ђ $? nh>s*/9.*>*UI{7i9n":_CѺyTX(1a:$L>HL2xO;9r845P|Q Z\Ds`8{ U EJ5)1}'ښXĠs>E {=$@*ur2HH,PEI?K5^/ U,kuZXʘ;re^mhܷ/ z_JN]$H{8np]J~X;G~X3>g?VN:,v+{|zLw6;Wfn FHDNNr%C-x3 '|phao|T3L§ =Ok|< siO T6B@VX=AC!X߃]I!+vjBt=O!Ydj^^(YjSDo RFJP{l@l0>yI]c\R9Σ>r dWs}&m׫Ùc-2_#jdZC(_x(b Xeώ҉vl?6FUSԫrCcZhӻt9UX xw*جFtEy+rz\Ve$yC* r\ 5@VW](Da6ktN,J@_iNRɱ >5uZ\i1i0'CnN=èf N&1o @]tC5>E^W8_.@ljY.;%AHf\' MesW^K3ܐ%сzUyn.**JP0ۗ3uQ2ް Sbb^mI<,GPr~^+s]Q_ D _H3Y0_?Y|#t=oήsþPt M ؽؓ/ 7{ym5p?lWAD15Q >V-lE:V vk (y Y9ci<ҁcsRɦ@\I,x.Z+=1TUիAD%C5byj9]:v/bmpF=kdd{#R%WQxY^ Pڑ6e=&Z֏kS@D/m"x44}nt7i;W2m<^1'C~]t>N ]?!!HZ|wOנ^ӎP̑]~jͽBR!eyw2B']V wvlZʦmZVۤUxd]0 08MBd*-} pWvHUmkc f^Hx}hRY]DLCS@?YKO߁Oa[)G w.L"22(e[B%dw *S;O#qDEU<מh#.(4 Ap,RJ]e6͇m8y\OQ&R6Ȉ`>MׅmE=Rf"MX-9Hp@kuV~JuR i͉Tl%s`((2D[$^vΘ-Cy;5n{ҖA퀧 a9>4k@{Ud $/%/ q4lHV},[zTZ$0dѬO Y\hnKJJ:T&IY?n7&B_c{zzOEm_z'U7V Ef`d0Pq}ݬzY, 6B6 )E^L%kF %prRp,_C!RMcGqF-]H{j~aŪ)?uJ}۠&Ny`+ՒSkxu"q!?}sEoMX~FL v)l<^S1 pm) *09ޫ{KQY鰦AZZJg<Wqss#YhgU i5H{sNM9o|7&qn\l]A^{^Bt:/_&zz[c]Mƃ[gmUYmh 4 jTO;䚙hË jDb՗(y9c%I& ꛨNkԔjh$w`?TTF3@EHߟ̠uVTr#$f eAh,j'N3g^AmͰ5pr.9\ZFc7rpi R 'faʹ/_tdh']3! ٪MY||K3Fe kFQS/Ej5ZQs;-8jh'8YϐzBhyIh?λbc_i;~|wOQÆ- HMd|s.EdĒŒ4^L׃ ӡu1ӟcHlS"qQ6[ grRc8n֖*V-Y^L;ю- {v1Ub2ٞ= X<WhpJū'l%f[[UܩP},.~&f&$?IkAeRz_Ue?fUw9'-wb1iBQLR)R&iBch[A_>}\]w z8)P ! b9~PŁ&jѾ)[7Us.U$*/\É- C Y09`f:$$B-p旸D3BଌL܋6%(*t`7^ݶ`:rUo EgFT őGY*B1ꜟTM^V|B'~ouf9s*̸`C9#|]ЏZ%p5of+\flW 0m v[{Ja.`|1_H{J &$l£= (hҌIUܮ:ViSeC)-QcƵۈ kM7OdZL? ט頨 hV+Iek[G{ J]k*d]#P0Cf9(sgQ@s@o$LN7<MMfx;+deTlk~;ǙHbaEr%LX;F/)+k@&=X.9e)Wz )in=baIDtO%3Wad$/ W/ףDB }eBN]v#<2wWSi0 r QPt 'R# w6E|CL.aT!%8)Y_\_x|UDJm! dK Y;\CV-[Ѕn ,l8U%j[!ď 49|*x&1LZ*(회xOhɣZ&\D̥ʧz aĔZɹwA".nFNUyĜo6:Y us&FH}&;F\tQ&J:F_/S8nr~S+1TDžyyhbcn蛭AӜ *^̱xCH%/= 2 QԨSd!wH/ЗjyHX`F{_Iwg?P%gOUao=Ah ̡Ś.EDw aҖǠJ!!U;_yϞx~min&v՜Uj6K